All functions:
  Elements:
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fwrite
      Src: /src/gpac/applications/testapps/mp4mux/main.c:19,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - cbk
    - data
    - block_size
    - cbk_data
    - cbk_magic
    argTypes:
    - void*
    - u8*
    - u32
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 16
    functionDepth: 1
    functionLinenumber: 16
    functionLinenumberEnd: 21
    functionName: _on_data
    functionSourceFile: /src/gpac/applications/testapps/mp4mux/main.c
    functionUses: 0
    functionsReached:
    - gf_fwrite
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err _on_data(void *cbk, u8 *data, u32 block_size, void *cbk_data,
      u32 cbk_magic)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_ftell
      Src: /src/gpac/applications/testapps/mp4mux/main.c:25,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/testapps/mp4mux/main.c:26,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/testapps/mp4mux/main.c:27,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/testapps/mp4mux/main.c:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - cbk
    - block
    - block_size
    - block_offset
    - is_insert
    argTypes:
    - void*
    - u8*
    - u32
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 22
    functionDepth: 1
    functionLinenumber: 22
    functionLinenumberEnd: 30
    functionName: _on_data_patch
    functionSourceFile: /src/gpac/applications/testapps/mp4mux/main.c
    functionUses: 0
    functionsReached:
    - gf_fwrite
    - gf_fseek
    - gf_ftell
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err _on_data_patch(void *cbk, u8 *block, u32 block_size, u64 block_offset,
      Bool is_insert)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/mp4mux/main.c:36,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/testapps/mp4mux/main.c:38,1
    - Dst: gf_isom_set_storage_mode
      Src: /src/gpac/applications/testapps/mp4mux/main.c:42,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/mp4mux/main.c:43,1
    - Dst: gf_isom_set_write_callback
      Src: /src/gpac/applications/testapps/mp4mux/main.c:46,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/mp4mux/main.c:47,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/applications/testapps/mp4mux/main.c:50,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/mp4mux/main.c:51,1
    - Dst: gf_isom_set_timescale
      Src: /src/gpac/applications/testapps/mp4mux/main.c:52,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/mp4mux/main.c:53,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/applications/testapps/mp4mux/main.c:54,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/mp4mux/main.c:55,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/applications/testapps/mp4mux/main.c:56,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/mp4mux/main.c:57,1
    - Dst: gf_isom_new_stxt_description
      Src: /src/gpac/applications/testapps/mp4mux/main.c:59,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/mp4mux/main.c:60,1
    - Dst: gf_isom_setup_track_fragment
      Src: /src/gpac/applications/testapps/mp4mux/main.c:64,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/mp4mux/main.c:65,1
    - Dst: gf_isom_finalize_for_fragment
      Src: /src/gpac/applications/testapps/mp4mux/main.c:67,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/mp4mux/main.c:68,1
    - Dst: gf_isom_close_segment
      Src: /src/gpac/applications/testapps/mp4mux/main.c:81,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/mp4mux/main.c:82,1
    - Dst: gf_isom_start_segment
      Src: /src/gpac/applications/testapps/mp4mux/main.c:85,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/mp4mux/main.c:86,1
    - Dst: gf_isom_start_fragment
      Src: /src/gpac/applications/testapps/mp4mux/main.c:92,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/mp4mux/main.c:93,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/mp4mux/main.c:96,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/mp4mux/main.c:97,1
    - Dst: strlen
      Src: /src/gpac/applications/testapps/mp4mux/main.c:98,1
    - Dst: gf_isom_fragment_add_sample
      Src: /src/gpac/applications/testapps/mp4mux/main.c:103,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/applications/testapps/mp4mux/main.c:105,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/mp4mux/main.c:107,1
    - Dst: gf_isom_close_segment
      Src: /src/gpac/applications/testapps/mp4mux/main.c:112,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/mp4mux/main.c:113,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/testapps/mp4mux/main.c:117,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/mp4mux/main.c:118,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/mp4mux/main.c:119,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 57
    argCount: 3
    argNames:
    - frag_type
    - moov_first
    - fileName
    argTypes:
    - u32
    - Bool
    - char*
    assertStmts:
    - condition: (!e)
      pos:
        line_end: 67
        line_start: 67
        source_file: /src/gpac/applications/testapps/mp4mux/main.c
    - condition: (!e)
      pos:
        line_end: 92
        line_start: 92
        source_file: /src/gpac/applications/testapps/mp4mux/main.c
    - condition: (track_id)
      pos:
        line_end: 54
        line_start: 54
        source_file: /src/gpac/applications/testapps/mp4mux/main.c
    - condition: (!e)
      pos:
        line_end: 81
        line_start: 81
        source_file: /src/gpac/applications/testapps/mp4mux/main.c
    - condition: (!e)
      pos:
        line_end: 85
        line_start: 85
        source_file: /src/gpac/applications/testapps/mp4mux/main.c
    - condition: (!e)
      pos:
        line_end: 112
        line_start: 112
        source_file: /src/gpac/applications/testapps/mp4mux/main.c
    - condition: (!e)
      pos:
        line_end: 50
        line_start: 50
        source_file: /src/gpac/applications/testapps/mp4mux/main.c
    - condition: (!e)
      pos:
        line_end: 56
        line_start: 56
        source_file: /src/gpac/applications/testapps/mp4mux/main.c
    - condition: (!e)
      pos:
        line_end: 42
        line_start: 42
        source_file: /src/gpac/applications/testapps/mp4mux/main.c
    - condition: (!e)
      pos:
        line_end: 46
        line_start: 46
        source_file: /src/gpac/applications/testapps/mp4mux/main.c
    - condition: (!e)
      pos:
        line_end: 52
        line_start: 52
        source_file: /src/gpac/applications/testapps/mp4mux/main.c
    - condition: (!e)
      pos:
        line_end: 64
        line_start: 64
        source_file: /src/gpac/applications/testapps/mp4mux/main.c
    - condition: (!e)
      pos:
        line_end: 59
        line_start: 59
        source_file: /src/gpac/applications/testapps/mp4mux/main.c
    - condition: (!e)
      pos:
        line_end: 106
        line_start: 106
        source_file: /src/gpac/applications/testapps/mp4mux/main.c
    - condition: (!e)
      pos:
        line_end: 117
        line_start: 117
        source_file: /src/gpac/applications/testapps/mp4mux/main.c
    constantsTouched: []
    func_position:
      end: 120
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 120
    functionName: mp4mux_api_test
    functionSourceFile: /src/gpac/applications/testapps/mp4mux/main.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_isom_add_sample
    - gf_fopen
    - gf_isom_set_timescale
    - gf_isom_set_brand_info
    - gf_isom_fragment_add_sample
    - gf_isom_setup_track_fragment
    - gf_isom_finalize_for_fragment
    - gf_isom_new_stxt_description
    - gf_isom_set_write_callback
    - gf_isom_start_fragment
    - sprintf
    - gf_isom_close_segment
    - gf_isom_set_track_enabled
    - gf_isom_close
    - gf_isom_start_segment
    - assert
    - gf_isom_new_track
    - strlen
    - gf_isom_set_storage_mode
    - gf_fclose
    - gf_isom_open
    linkageType: ''
    returnType: void
    signature: void mp4mux_api_test(u32 frag_type, Bool moov_first, const char *fileName)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_init
      Src: /src/gpac/applications/testapps/mp4mux/main.c:125,1
    - Dst: mp4mux_api_test
      Src: /src/gpac/applications/testapps/mp4mux/main.c:128,1
    - Dst: mp4mux_api_test
      Src: /src/gpac/applications/testapps/mp4mux/main.c:130,1
    - Dst: mp4mux_api_test
      Src: /src/gpac/applications/testapps/mp4mux/main.c:132,1
    - Dst: mp4mux_api_test
      Src: /src/gpac/applications/testapps/mp4mux/main.c:134,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/testapps/mp4mux/main.c:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 122
    functionDepth: 2
    functionLinenumber: 122
    functionLinenumberEnd: 137
    functionName: main
    functionSourceFile: /src/gpac/applications/testapps/mp4mux/main.c
    functionUses: 0
    functionsReached:
    - gf_sys_close
    - mp4mux_api_test
    - gf_sys_init
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/dmbrs/main.c:29,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/testapps/dmbrs/main.c:30,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/dmbrs/main.c:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - filename
    - data
    argTypes:
    - char*
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 32
    functionName: save_ts
    functionSourceFile: /src/gpac/applications/testapps/dmbrs/main.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_fopen
    - gf_fwrite
    linkageType: ''
    returnType: void
    signature: void save_ts(char *filename, unsigned char *data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/dmbrs/main.c:35,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/testapps/dmbrs/main.c:36,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/dmbrs/main.c:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - filename
    - data
    argTypes:
    - char*
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 38
    functionName: save_rs_0
    functionSourceFile: /src/gpac/applications/testapps/dmbrs/main.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_fopen
    - gf_fwrite
    linkageType: ''
    returnType: void
    signature: void save_rs_0(char *filename, unsigned char *data)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:50,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:52,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:54,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:56,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:58,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:60,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:62,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:64,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:66,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:68,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:70,1
    - Dst: gf_bs_available
      Src: /src/gpac/applications/testapps/dmbrs/main.c:74,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/applications/testapps/dmbrs/main.c:77,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:79,1
    - Dst: gf_bs_available
      Src: /src/gpac/applications/testapps/dmbrs/main.c:83,1
    - Dst: printf
      Src: /src/gpac/applications/testapps/dmbrs/main.c:89,1
    - Dst: printf
      Src: /src/gpac/applications/testapps/dmbrs/main.c:105,1
    - Dst: save_rs_0
      Src: /src/gpac/applications/testapps/dmbrs/main.c:107,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 69
    argCount: 2
    argNames:
    - bs
    - out_name
    argTypes:
    - GF_BitStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 124
    functionName: RS_Interleaver
    functionSourceFile: /src/gpac/applications/testapps/dmbrs/main.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - save_rs_0
    - printf
    - memset
    - gf_bs_available
    linkageType: ''
    returnType: void
    signature: void RS_Interleaver(GF_BitStream *bs, char *out_name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:136,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:137,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:138,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:139,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:140,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:141,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:142,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:143,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:144,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:145,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:146,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/dmbrs/main.c:147,1
    - Dst: gf_bs_available
      Src: /src/gpac/applications/testapps/dmbrs/main.c:149,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/applications/testapps/dmbrs/main.c:155,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/applications/testapps/dmbrs/main.c:156,1
    - Dst: gf_bs_available
      Src: /src/gpac/applications/testapps/dmbrs/main.c:157,1
    - Dst: printf
      Src: /src/gpac/applications/testapps/dmbrs/main.c:160,1
    - Dst: gf_bs_seek
      Src: /src/gpac/applications/testapps/dmbrs/main.c:163,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/applications/testapps/dmbrs/main.c:164,1
    - Dst: gf_bs_available
      Src: /src/gpac/applications/testapps/dmbrs/main.c:165,1
    - Dst: printf
      Src: /src/gpac/applications/testapps/dmbrs/main.c:184,1
    - Dst: save_ts
      Src: /src/gpac/applications/testapps/dmbrs/main.c:186,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 61
    argCount: 2
    argNames:
    - bs
    - out_name
    argTypes:
    - GF_BitStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 126
    functionDepth: 2
    functionLinenumber: 126
    functionLinenumberEnd: 203
    functionName: RS_Deinterleaver
    functionSourceFile: /src/gpac/applications/testapps/dmbrs/main.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - printf
    - gf_bs_seek
    - save_ts
    - gf_bs_get_position
    - memset
    - gf_bs_available
    linkageType: ''
    returnType: void
    signature: void RS_Deinterleaver(GF_BitStream *bs, char *out_name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/dmbrs/main.c:240,1
    - Dst: printf
      Src: /src/gpac/applications/testapps/dmbrs/main.c:241,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/applications/testapps/dmbrs/main.c:244,1
    - Dst: RS_Deinterleaver
      Src: /src/gpac/applications/testapps/dmbrs/main.c:247,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/dmbrs/main.c:248,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/testapps/dmbrs/main.c:249,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 205
    functionDepth: 3
    functionLinenumber: 205
    functionLinenumberEnd: 251
    functionName: main
    functionSourceFile: /src/gpac/applications/testapps/dmbrs/main.c
    functionUses: 0
    functionsReached:
    - RS_Deinterleaver
    - gf_fclose
    - printf
    - gf_bs_del
    - gf_fopen
    - gf_bs_from_file
    linkageType: ''
    returnType: void
    signature: void main(int argc, char **argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:70,1
    - Dst: gf_sg_new
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:71,1
    - Dst: gf_sm_new
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:72,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:75,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:77,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:79,1
    - Dst: gf_sm_load_run
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:81,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:83,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:85,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:88,1
    - Dst: gf_sm_del
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:90,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:91,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 3
    argNames:
    - lc
    - mp4
    - loadtime
    argTypes:
    - GF_LoadCompare*
    - GF_ISOFile*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 94
    functionName: load_mp4
    functionSourceFile: /src/gpac/applications/testapps/loadcompare/loadcompare.c
    functionUses: 0
    functionsReached:
    - gf_sg_new
    - gf_sm_load_init
    - memset
    - gf_sm_del
    - gf_sm_load_done
    - gf_sm_new
    - gf_sm_load_run
    - gf_sg_del
    - gf_sys_clock
    - fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err load_mp4(GF_LoadCompare *lc, GF_ISOFile *mp4, u32 *loadtime)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - cbk
    - done
    - total
    argTypes:
    - void*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: load_progress
    functionSourceFile: /src/gpac/applications/testapps/loadcompare/loadcompare.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void load_progress(void *cbk, u32 done, u32 total)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:114,1
    - Dst: gf_sg_new
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:115,1
    - Dst: gf_sm_new
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:116,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:120,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:122,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:124,1
    - Dst: gf_sm_load_run
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:126,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:128,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:130,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:133,1
    - Dst: gf_sm_del
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:135,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:136,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 3
    argNames:
    - lc
    - item_path
    - loadtime
    argTypes:
    - GF_LoadCompare*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 139
    functionName: gpacctx_load_file
    functionSourceFile: /src/gpac/applications/testapps/loadcompare/loadcompare.c
    functionUses: 0
    functionsReached:
    - gf_sg_new
    - gf_sm_load_init
    - memset
    - gf_sm_del
    - gf_sm_load_done
    - gf_sm_new
    - gf_sm_load_run
    - gf_sg_del
    - gf_sys_clock
    - fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gpacctx_load_file(GF_LoadCompare *lc, char *item_path, u32 *loadtime)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:148,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:149,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:150,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:151,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:153,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - mp4
    - size
    argTypes:
    - GF_ISOFile*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 156
    functionName: get_laser_track_size
    functionSourceFile: /src/gpac/applications/testapps/loadcompare/loadcompare.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_del
    - gf_isom_get_sample_count
    - gf_isom_get_track_id
    - gf_isom_get_sample_info
    - gf_isom_get_track_by_id
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err get_laser_track_size(GF_ISOFile *mp4, u32 *size)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:166,1
    - Dst: gf_sg_new
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:167,1
    - Dst: gf_sm_new
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:168,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:172,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:174,1
    - Dst: gf_sm_load_run
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:176,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:178,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:181,1
    - Dst: gf_sm_stats_new
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:182,1
    - Dst: gf_sm_stats_for_scene
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:183,1
    - Dst: gf_sm_stats_get
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:185,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:187,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:190,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:194,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:196,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:198,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:201,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:204,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:207,1
    - Dst: gf_sm_stats_del
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:210,1
    - Dst: gf_sm_encode_to_file
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:213,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:215,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:217,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:218,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:221,1
    - Dst: gf_sm_del
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:224,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:225,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 68
    argCount: 4
    argNames:
    - lc
    - item_path
    - mp4
    - opts
    argTypes:
    - GF_LoadCompare*
    - char*
    - GF_ISOFile*
    - GF_SMEncodeOptions*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 228
    functionName: encode_laser
    functionSourceFile: /src/gpac/applications/testapps/loadcompare/loadcompare.c
    functionUses: 0
    functionsReached:
    - gf_sg_new
    - gf_sg_del
    - gf_sm_load_init
    - gf_isom_modify_alternate_brand
    - gf_sm_stats_for_scene
    - gf_sm_encode_to_file
    - memset
    - gf_sm_stats_new
    - gf_sm_stats_get
    - gf_sm_stats_del
    - gf_sm_new
    - gf_sm_load_run
    - gf_sm_load_done
    - gf_sm_del
    - gf_isom_set_brand_info
    - fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err encode_laser(GF_LoadCompare *lc, char *item_path, GF_ISOFile
      *mp4, GF_SMEncodeOptions *opts)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:238,1
    - Dst: strrchr
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:239,1
    - Dst: strcpy
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:240,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:241,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:243,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:247,1
    - Dst: encode_laser
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:250,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:252,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:253,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:255,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:257,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:259,1
    - Dst: get_laser_track_size
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:262,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:264,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:266,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 37
    argCount: 4
    argNames:
    - lc
    - item_name
    - item_path
    - size
    argTypes:
    - GF_LoadCompare*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 230
    functionDepth: 2
    functionLinenumber: 230
    functionLinenumberEnd: 271
    functionName: create_laser_mp4
    functionSourceFile: /src/gpac/applications/testapps/loadcompare/loadcompare.c
    functionUses: 0
    functionsReached:
    - strrchr
    - gf_isom_delete
    - encode_laser
    - strcpy
    - get_laser_track_size
    - gf_isom_open
    - memset
    - fprintf
    - gf_isom_close
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err create_laser_mp4(GF_LoadCompare *lc, char *item_name, char *item_path,
      u32 *size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:282,1
    - Dst: strrchr
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:283,1
    - Dst: strcpy
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:284,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:285,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:287,1
    - Dst: load_mp4
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:290,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:292,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:295,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 4
    argNames:
    - lc
    - item_name
    - item_path
    - loadtime
    argTypes:
    - GF_LoadCompare*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 274
    functionDepth: 2
    functionLinenumber: 274
    functionLinenumberEnd: 297
    functionName: get_mp4_loadtime
    functionSourceFile: /src/gpac/applications/testapps/loadcompare/loadcompare.c
    functionUses: 0
    functionsReached:
    - strrchr
    - strcpy
    - load_mp4
    - gf_isom_open
    - fprintf
    - gf_isom_close
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err get_mp4_loadtime(GF_LoadCompare *lc, char *item_name, char *item_path,
      u32 *loadtime)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:308,1
    - Dst: strrchr
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:309,1
    - Dst: strcpy
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:310,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:311,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:313,1
    - Dst: gf_sg_new
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:317,1
    - Dst: gf_sm_new
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:318,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:319,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:322,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:324,1
    - Dst: gf_sm_load_run
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:326,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:328,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:330,1
    - Dst: strrchr
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:332,1
    - Dst: gf_sm_dump
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:334,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:336,1
    - Dst: gf_sm_del
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:340,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:341,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:342,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 37
    argCount: 4
    argNames:
    - lc
    - item_name
    - item_path
    - svg_out_path
    argTypes:
    - GF_LoadCompare*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 299
    functionDepth: 1
    functionLinenumber: 299
    functionLinenumberEnd: 345
    functionName: decode_svg
    functionSourceFile: /src/gpac/applications/testapps/loadcompare/loadcompare.c
    functionUses: 0
    functionsReached:
    - gf_sg_new
    - strrchr
    - strcpy
    - gf_sm_load_init
    - gf_isom_open
    - memset
    - gf_sm_dump
    - gf_sm_del
    - gf_sm_load_done
    - gf_sm_new
    - gf_sm_load_run
    - gf_sg_del
    - fprintf
    - gf_isom_close
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err decode_svg(GF_LoadCompare *lc, char *item_name, char *item_path,
      char *svg_out_path)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_new
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:361,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:363,1
    - Dst: DANAE_NewSVGParser
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:365,1
    - Dst: DANAE_SVGParser_Parse
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:366,1
    - Dst: DANAE_SVGParser_Terminate
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:367,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:369,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:370,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:373,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 3
    argNames:
    - lc
    - item_path
    - loadtime
    argTypes:
    - GF_LoadCompare*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 347
    functionDepth: 1
    functionLinenumber: 347
    functionLinenumberEnd: 376
    functionName: libxml_load_svg
    functionSourceFile: /src/gpac/applications/testapps/loadcompare/loadcompare.c
    functionUses: 0
    functionsReached:
    - gf_sg_new
    - gf_sg_del
    - DANAE_SVGParser_Parse
    - DANAE_NewSVGParser
    - gf_sys_clock
    - fprintf
    - DANAE_SVGParser_Terminate
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err libxml_load_svg(GF_LoadCompare *lc, char *item_path, u32 *loadtime)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:385,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:387,1
    - Dst: fseek
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:390,1
    - Dst: ftell
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:391,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:392,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:394,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 4
    argNames:
    - lc
    - item_name
    - item_path
    - size
    argTypes:
    - GF_LoadCompare*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 378
    functionDepth: 1
    functionLinenumber: 378
    functionLinenumberEnd: 399
    functionName: get_size
    functionSourceFile: /src/gpac/applications/testapps/loadcompare/loadcompare.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - ftell
    - gf_fopen
    - fprintf
    - fseek
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err get_size(GF_LoadCompare *lc, char *item_name, char *item_path,
      u32 *size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:407,1
    - Dst: strrchr
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:408,1
    - Dst: strcpy
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:409,1
    - Dst: decode_svg
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:414,1
    - Dst: get_size
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:416,1
    - Dst: gpacctx_load_file
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:420,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 5
    argNames:
    - lc
    - item_name
    - item_path
    - loadtime
    - size
    argTypes:
    - GF_LoadCompare*
    - char*
    - char*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 401
    functionDepth: 2
    functionLinenumber: 401
    functionLinenumberEnd: 423
    functionName: get_decoded_svg_loadtime_and_size
    functionSourceFile: /src/gpac/applications/testapps/loadcompare/loadcompare.c
    functionUses: 0
    functionsReached:
    - strrchr
    - strcpy
    - get_size
    - decode_svg
    - gpacctx_load_file
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err get_decoded_svg_loadtime_and_size(GF_LoadCompare *lc, char *item_name,
      char *item_path, u32 *loadtime, u32 *size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:435,1
    - Dst: strcat
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:436,1
    - Dst: gzopen
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:437,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:438,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:441,1
    - Dst: fread
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:445,1
    - Dst: gzwrite
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:445,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:446,1
    - Dst: gzclose
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:447,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:448,1
    - Dst: fseek
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:449,1
    - Dst: ftell
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:450,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:451,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:453,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 4
    argNames:
    - lc
    - item_name
    - item_path
    - size
    argTypes:
    - GF_LoadCompare*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 425
    functionDepth: 1
    functionLinenumber: 425
    functionLinenumberEnd: 458
    functionName: create_gz_file
    functionSourceFile: /src/gpac/applications/testapps/loadcompare/loadcompare.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_fclose
    - fseek
    - ftell
    - strcpy
    - gzwrite
    - gzclose
    - gzopen
    - gf_fopen
    - fread
    - fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err create_gz_file(GF_LoadCompare *lc, char *item_name, char *item_path,
      u32 *size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:466,1
    - Dst: strcat
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:467,1
    - Dst: libxml_load_svg
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:470,1
    - Dst: gpacctx_load_file
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:472,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 5
    argNames:
    - lc
    - item_name
    - item_path
    - loadtime
    - useLibXML
    argTypes:
    - GF_LoadCompare*
    - char*
    - char*
    - u32*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 460
    functionDepth: 2
    functionLinenumber: 460
    functionLinenumberEnd: 475
    functionName: get_gz_loadtime
    functionSourceFile: /src/gpac/applications/testapps/loadcompare/loadcompare.c
    functionUses: 0
    functionsReached:
    - strcat
    - strcpy
    - gpacctx_load_file
    - libxml_load_svg
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err get_gz_loadtime(GF_LoadCompare *lc, char *item_name, char *item_path,
      u32 *loadtime, Bool useLibXML)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:479,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:480,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:482,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:483,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:485,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:486,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:488,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:489,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:491,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:492,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:494,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:495,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:497,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:498,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:500,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:501,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:503,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:504,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:506,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:507,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:509,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:510,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:512,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:513,1
    - Dst: fflush
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:514,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 38
    argCount: 2
    argNames:
    - lc
    - ld
    argTypes:
    - GF_LoadCompare*
    - LoadData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 477
    functionDepth: 0
    functionLinenumber: 477
    functionLinenumberEnd: 515
    functionName: print_load_data
    functionSourceFile: /src/gpac/applications/testapps/loadcompare/loadcompare.c
    functionUses: 0
    functionsReached:
    - fflush
    - fprintf
    linkageType: ''
    returnType: void
    signature: void print_load_data(GF_LoadCompare *lc, LoadData *ld)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:525,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:526,1
    - Dst: strcpy
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:527,1
    - Dst: get_size
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:529,1
    - Dst: create_gz_file
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:532,1
    - Dst: create_laser_mp4
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:535,1
    - Dst: gf_list_enum
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:542,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:543,1
    - Dst: gpacctx_load_file
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:554,1
    - Dst: get_gz_loadtime
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:558,1
    - Dst: libxml_load_svg
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:563,1
    - Dst: get_gz_loadtime
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:567,1
    - Dst: get_mp4_loadtime
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:572,1
    - Dst: gpacctx_load_file
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:581,1
    - Dst: print_load_data
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:587,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:588,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 58
    argCount: 4
    argNames:
    - cbck
    - item_name
    - item_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 591
      start: 517
    functionDepth: 3
    functionLinenumber: 517
    functionLinenumberEnd: 591
    functionName: loadcompare_one
    functionSourceFile: /src/gpac/applications/testapps/loadcompare/loadcompare.c
    functionUses: 0
    functionsReached:
    - gf_free
    - create_laser_mp4
    - GF_SAFEALLOC
    - strcpy
    - get_size
    - get_mp4_loadtime
    - libxml_load_svg
    - strcmp
    - gf_list_add
    - get_gz_loadtime
    - print_load_data
    - gf_list_enum
    - gpacctx_load_file
    - create_gz_file
    linkageType: ''
    returnType: Bool
    signature: Bool loadcompare_one(void *cbck, char *item_name, char *item_path,
      GF_FileEnumInfo *file_info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:595,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:596,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:597,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 593
    functionDepth: 0
    functionLinenumber: 593
    functionLinenumberEnd: 598
    functionName: usage
    functionSourceFile: /src/gpac/applications/testapps/loadcompare/loadcompare.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void usage()
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:608,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:610,1
    - Dst: stricmp
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:616,1
    - Dst: stricmp
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:619,1
    - Dst: strcpy
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:621,1
    - Dst: stricmp
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:623,1
    - Dst: strcpy
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:624,1
    - Dst: stricmp
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:626,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:627,1
    - Dst: stricmp
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:629,1
    - Dst: stricmp
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:631,1
    - Dst: stricmp
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:633,1
    - Dst: stricmp
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:635,1
    - Dst: stricmp
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:637,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:638,1
    - Dst: usage
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:641,1
    - Dst: gf_sys_init
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:646,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:647,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:649,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:654,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:656,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:659,1
    - Dst: strrchr
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:663,1
    - Dst: loadcompare_one
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:664,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:665,1
    - Dst: print_load_data
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:666,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:667,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:671,1
    - Dst: gf_enum_directory
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:673,1
    - Dst: gf_enum_directory
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:675,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:678,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:679,1
    - Dst: print_load_data
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:680,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:681,1
    - Dst: gf_enum_directory
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:685,1
    - Dst: gf_enum_directory
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:687,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:691,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:693,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/testapps/loadcompare/loadcompare.c:694,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 92
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 600
    functionDepth: 4
    functionLinenumber: 600
    functionLinenumberEnd: 696
    functionName: main
    functionSourceFile: /src/gpac/applications/testapps/loadcompare/loadcompare.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_enum_directory
    - usage
    - strcpy
    - gf_list_count
    - memset
    - gf_fopen
    - atoi
    - gf_sys_close
    - fprintf
    - gf_list_new
    - gf_list_get
    - strrchr
    - stricmp
    - loadcompare_one
    - print_load_data
    - gf_list_del
    - gf_fclose
    - gf_sys_init
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:39,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:41,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:45,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:50,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:52,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:56,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:58,1
    - Dst: gf_isom_get_missing_bytes
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:60,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:61,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:62,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 3
    argNames:
    - movie
    - track_id
    - sample_index
    argTypes:
    - GF_ISOFile*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 66
    functionName: process_samples_from_track
    functionSourceFile: /src/gpac/applications/testapps/segmp4demux/main.c
    functionUses: 0
    functionsReached:
    - gf_isom_last_error
    - gf_isom_sample_del
    - gf_isom_get_sample_count
    - gf_sleep
    - gf_isom_get_missing_bytes
    - gf_isom_get_track_by_id
    - fprintf
    - gf_isom_get_sample
    linkageType: ''
    returnType: void
    signature: void process_samples_from_track(GF_ISOFile *movie, u32 track_id, u32
      *sample_index)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:87,1
    - Dst: gf_sys_init
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:93,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:94,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:95,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:99,1
    - Dst: gf_isom_open_progressive
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:100,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:102,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:102,1
    - Dst: process_samples_from_track
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:105,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:110,1
    - Dst: gf_isom_open_segment
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:113,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:115,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:115,1
    - Dst: process_samples_from_track
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:121,1
    - Dst: gf_isom_release_segment
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:124,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:130,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:130,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:130,1
    - Dst: gf_isom_release_segment
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:131,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:132,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/testapps/segmp4demux/main.c:135,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 68
    functionDepth: 2
    functionLinenumber: 68
    functionLinenumberEnd: 139
    functionName: main
    functionSourceFile: /src/gpac/applications/testapps/segmp4demux/main.c
    functionUses: 0
    functionsReached:
    - process_samples_from_track
    - gf_isom_release_segment
    - gf_isom_get_sample_count
    - gf_sys_init
    - gf_isom_open_segment
    - gf_error_to_string
    - gf_isom_get_track_by_id
    - gf_log_set_tool_level
    - gf_sys_close
    - fprintf
    - gf_isom_open_progressive
    - gf_isom_close
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - cbk
    - header
    argTypes:
    - void*
    - GF_RTPHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17
      start: 14
    functionDepth: 0
    functionLinenumber: 14
    functionLinenumberEnd: 17
    functionName: OnNewPacket
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OnNewPacket(void *cbk, GF_RTPHeader *header)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c:22,1
    - Dst: PNC_SendRTP
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c:23,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - cbk
    - header
    argTypes:
    - void*
    - GF_RTPHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 19
    functionDepth: 1
    functionLinenumber: 19
    functionLinenumberEnd: 25
    functionName: OnPacketDone
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c
    functionUses: 0
    functionsReached:
    - PNC_SendRTP
    - dprintf
    linkageType: ''
    returnType: void
    signature: void OnPacketDone(void *cbk, GF_RTPHeader *header)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - cbk
    - data
    - data_size
    - is_head
    argTypes:
    - void*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: OnData
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: void
    signature: void OnData(void *cbk, char *data, u32 data_size, Bool is_head)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c:37,1
    - Dst: gf_rtp_builder_new
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c:43,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c:52,1
    - Dst: gf_rtp_builder_init
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c:58,1
    - Dst: gf_rtp_builder_format_sdp
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c:59,1
    - Dst: rand
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c:61,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 3
    argNames:
    - data
    - sdp_fmt
    - mtu_size
    argTypes:
    - PNC_CallbackData*
    - char*
    - unsigned short
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 66
    functionName: PNC_InitPacketiser
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c
    functionUses: 0
    functionsReached:
    - rand
    - gf_rtp_builder_init
    - memset
    - gf_rtp_builder_new
    - gf_rtp_builder_format_sdp
    - gf_malloc
    - fprintf
    linkageType: ''
    returnType: void
    signature: void PNC_InitPacketiser(PNC_CallbackData * data, char *sdp_fmt, unsigned
      short mtu_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c:70,1
    - Dst: gf_rtp_builder_del
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - PNC_CallbackData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionName: PNC_ClosePacketizer
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_rtp_builder_del
    linkageType: ''
    returnType: void
    signature: void PNC_ClosePacketizer(PNC_CallbackData *data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c:76,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c:77,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c:79,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c:80,1
    - Dst: gf_rtp_builder_process
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 4
    argNames:
    - data
    - au
    - size
    - ts
    argTypes:
    - PNC_CallbackData*
    - char*
    - u32
    - u64
    assertStmts:
    - condition: ( data )
      pos:
        line_end: 75
        line_start: 75
        source_file: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c
    - condition: ( au )
      pos:
        line_end: 76
        line_start: 76
        source_file: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c
    constantsTouched: []
    func_position:
      end: 92
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 92
    functionName: PNC_ProcessData
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/RTP_serv_packetizer.c
    functionUses: 0
    functionsReached:
    - gf_rtp_builder_process
    - assert
    - gf_sys_clock
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PNC_ProcessData(PNC_CallbackData * data, char *au, u32 size,
      u64 ts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PNC_ProcessData
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:13,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - calling_object
    - ESID
    - au
    - size
    - ts
    argTypes:
    - void*
    - u16
    - char*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15
      start: 9
    functionDepth: 2
    functionLinenumber: 9
    functionLinenumberEnd: 15
    functionName: SampleCallBack
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    functionUses: 0
    functionsReached:
    - PNC_ProcessData
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SampleCallBack(void *calling_object, u16 ESID, char *au, u32
      size, u64 ts)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:23,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:28,1
    - Dst: gf_seng_init
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:31,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:33,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:34,1
    - Dst: gf_sk_new
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:42,1
    - Dst: gf_sk_bind
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:43,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:45,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:45,1
    - Dst: gf_sk_listen
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:46,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:48,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:48,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:49,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:51,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:51,1
    - Dst: gf_sk_server_mode
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:52,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:54,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:54,1
    - Dst: gf_sk_new
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:56,1
    - Dst: gf_sk_bind
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:57,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:69,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:69,1
    - Dst: gf_sk_del
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:71,1
    - Dst: gf_sk_del
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:73,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:74,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:77,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 46
    argCount: 6
    argNames:
    - p_chan
    - p_hdr
    - default_scene
    - socketType
    - socketPort
    - debug
    argTypes:
    - GF_RTPChannel*
    - GF_RTPHeader*
    - char*
    - u32
    - u16
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 19
    functionDepth: 1
    functionLinenumber: 19
    functionLinenumberEnd: 82
    functionName: PNC_Init_SceneGenerator
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sk_bind
    - gf_sk_new
    - gf_sk_server_mode
    - gf_sk_del
    - gf_sk_listen
    - memset
    - gf_sk_set_block_mode
    - gf_seng_init
    - gf_error_to_string
    - gf_malloc
    - fprintf
    linkageType: ''
    returnType: PNC_CallbackData
    signature: "PNC_CallbackData *PNC_Init_SceneGenerator(GF_RTPChannel *p_chan, GF_RTPHeader
      *p_hdr, char *default_scene,\n        u32 socketType, u16 socketPort, int debug)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_seng_encode_context
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - data
    argTypes:
    - PNC_CallbackData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 89
    functionName: PNC_SendInitScene
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    functionUses: 0
    functionsReached:
    - gf_seng_encode_context
    linkageType: ''
    returnType: void
    signature: void PNC_SendInitScene(PNC_CallbackData * data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:93,1
    - Dst: gf_seng_terminate
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:94,1
    - Dst: gf_rtp_del
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:95,1
    - Dst: PNC_ClosePacketizer
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:96,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - data
    argTypes:
    - PNC_CallbackData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 91
    functionDepth: 2
    functionLinenumber: 91
    functionLinenumberEnd: 98
    functionName: PNC_Close_SceneGenerator
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_seng_terminate
    - gf_rtp_del
    - PNC_ClosePacketizer
    linkageType: ''
    returnType: void
    signature: void PNC_Close_SceneGenerator(PNC_CallbackData * data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:107,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:108,1
    - Dst: strstr
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:115,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - buffer
    - searchFrom
    argTypes:
    - char*
    - int
    assertStmts:
    - condition: ( buffer )
      pos:
        line_end: 106
        line_start: 106
        source_file: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    - condition: ( searchFrom >= 0)
      pos:
        line_end: 107
        line_start: 107
        source_file: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    constantsTouched: []
    func_position:
      end: 120
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 120
    functionName: findCommand
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    functionUses: 0
    functionsReached:
    - assert
    - strstr
    linkageType: ''
    returnType: int
    signature: int findCommand(const char * buffer, int searchFrom)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:125,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:126,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:127,1
    - Dst: dprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:128,1
    - Dst: gf_mx_p
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:129,1
    - Dst: gf_seng_encode_from_string
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:130,1
    - Dst: gf_mx_v
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:131,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - data
    - bsBuffer
    argTypes:
    - PNC_CallbackData*
    - char*
    assertStmts:
    - condition: ( data )
      pos:
        line_end: 124
        line_start: 124
        source_file: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    - condition: ( bsBuffer )
      pos:
        line_end: 125
        line_start: 125
        source_file: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    - condition: ( data->codec )
      pos:
        line_end: 126
        line_start: 126
        source_file: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    constantsTouched: []
    func_position:
      end: 134
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 134
    functionName: processSend
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - dprintf
    - gf_seng_encode_from_string
    - assert
    - gf_mx_v
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err processSend(PNC_CallbackData * data, char * bsBuffer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:139,1
    - Dst: gf_mx_p
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:140,1
    - Dst: gf_seng_aggregate_context
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:144,1
    - Dst: gf_seng_encode_context
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:146,1
    - Dst: gf_mx_v
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:147,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:148,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - data
    - bsBuffer
    argTypes:
    - PNC_CallbackData*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 150
    functionName: processRapReset
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_seng_encode_context
    - dprintf
    - gf_mx_v
    - gf_seng_aggregate_context
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err processRapReset(PNC_CallbackData * data, char * bsBuffer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:155,1
    - Dst: gf_mx_p
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:156,1
    - Dst: gf_seng_aggregate_context
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:160,1
    - Dst: gf_seng_encode_context
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:162,1
    - Dst: gf_mx_v
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:163,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:164,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - data
    - bsBuffer
    argTypes:
    - PNC_CallbackData*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 166
    functionName: processRap
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_seng_encode_context
    - dprintf
    - gf_mx_v
    - gf_seng_aggregate_context
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err processRap(PNC_CallbackData * data, char * bsBuffer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:171,1
    - Dst: gf_mx_p
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:172,1
    - Dst: gf_seng_encode_from_string
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:174,1
    - Dst: gf_mx_v
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:175,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - data
    - bsBuffer
    argTypes:
    - PNC_CallbackData*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 178
    functionName: processSendCritical
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - dprintf
    - gf_seng_encode_from_string
    - gf_mx_v
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err processSendCritical(PNC_CallbackData * data, char * bsBuffer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:189,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:190,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:191,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:192,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:193,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:198,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:199,1
    - Dst: memcpy
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:200,1
    - Dst: memcpy
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:201,1
    - Dst: dprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 4
    argNames:
    - data
    - newStart
    - upToPosition
    - dataFullSize
    argTypes:
    - char*
    - int
    - int
    - int
    assertStmts:
    - condition: (data)
      pos:
        line_end: 188
        line_start: 188
        source_file: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    - condition: (dataFullSize > 0)
      pos:
        line_end: 191
        line_start: 191
        source_file: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    - condition: (newStart >= 0)
      pos:
        line_end: 189
        line_start: 189
        source_file: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    - condition: (upToPosition >= 0)
      pos:
        line_end: 190
        line_start: 190
        source_file: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    - condition: (newStart < upToPosition)
      pos:
        line_end: 192
        line_start: 192
        source_file: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    - condition: (dataFullSize >= upToPosition-newStart+2)
      pos:
        line_end: 197
        line_start: 197
        source_file: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    constantsTouched: []
    func_position:
      end: 205
      start: 184
    functionDepth: 1
    functionLinenumber: 184
    functionLinenumberEnd: 205
    functionName: eat_buffer_to_bs
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    functionUses: 0
    functionsReached:
    - memcpy
    - assert
    - gf_malloc
    - dprintf
    linkageType: ''
    returnType: char
    signature: char * eat_buffer_to_bs(char * data, int newStart, int upToPosition,
      int dataFullSize)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:210,1
    - Dst: gf_sk_accept
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:220,1
    - Dst: free
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:222,1
    - Dst: dprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:225,1
    - Dst: gf_sk_receive
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:233,1
    - Dst: dprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:240,1
    - Dst: memcpy
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:242,1
    - Dst: findCommand
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:244,1
    - Dst: strncmp
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:248,1
    - Dst: eat_buffer_to_bs
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:250,1
    - Dst: processSendCritical
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:252,1
    - Dst: strncmp
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:254,1
    - Dst: eat_buffer_to_bs
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:255,1
    - Dst: processSend
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:257,1
    - Dst: strncmp
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:259,1
    - Dst: eat_buffer_to_bs
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:260,1
    - Dst: processRap
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:262,1
    - Dst: strncmp
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:264,1
    - Dst: eat_buffer_to_bs
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:265,1
    - Dst: processRapReset
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:267,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:276,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:276,1
    - Dst: gf_sk_del
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c:278,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 61
    argCount: 1
    argNames:
    - data
    argTypes:
    - PNC_CallbackData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 207
    functionDepth: 2
    functionLinenumber: 207
    functionLinenumberEnd: 287
    functionName: PNC_processBIFSGenerator
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/RTP_serv_generator.c
    functionUses: 0
    functionsReached:
    - gf_sk_accept
    - processRapReset
    - processSendCritical
    - gf_sk_receive
    - dprintf
    - malloc
    - memcpy
    - fprintf
    - eat_buffer_to_bs
    - gf_sk_del
    - strncmp
    - processSend
    - gf_error_to_string
    - findCommand
    - free
    - processRap
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PNC_processBIFSGenerator(PNC_CallbackData * data)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - mode
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10
      start: 7
    functionDepth: 0
    functionLinenumber: 7
    functionLinenumberEnd: 10
    functionName: setDebugMode
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/debug.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setDebugMode(int mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15
      start: 12
    functionDepth: 0
    functionLinenumber: 12
    functionLinenumberEnd: 15
    functionName: getDebugMode
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/debug.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int getDebugMode()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/gpac/applications/testapps/broadcaster/debug.c:20,1
    - Dst: vfprintf
      Src: /src/gpac/applications/testapps/broadcaster/debug.c:22,1
    - Dst: va_end
      Src: /src/gpac/applications/testapps/broadcaster/debug.c:23,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - debug
    - msg
    argTypes:
    - debugMode
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 24
    functionName: dprintf
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/debug.c
    functionUses: 7
    functionsReached:
    - va_start
    - vfprintf
    - va_end
    linkageType: ''
    returnType: void
    signature: void dprintf(debugMode debug, const char *msg, ...)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_get_local_info
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:16,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:18,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:20,1
    - Dst: exit
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:21,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:24,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:25,1
    - Dst: gf_net_is_ipv6
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:25,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:26,1
    - Dst: strlen
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:26,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:28,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:30,1
    - Dst: gf_net_is_ipv6
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:30,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:31,1
    - Dst: strlen
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:31,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:33,1
    - Dst: gf_odf_desc_write
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:40,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:41,1
    - Dst: gf_base64_encode
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:43,1
    - Dst: free
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:45,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:47,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:48,1
    - Dst: strlen
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:48,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:51,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:52,1
    - Dst: strlen
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:52,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:54,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:57,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:58,1
    - Dst: strlen
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:58,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:61,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:62,1
    - Dst: strlen
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:62,1
    - Dst: fflush
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:63,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:64,1
    - Dst: dprintf
      Src: /src/gpac/applications/testapps/broadcaster/sdp_generator.c:65,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 39
    argCount: 3
    argNames:
    - data
    - ip_dest
    - sdp_fmt
    argTypes:
    - PNC_CallbackData*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 4
    functionDepth: 1
    functionLinenumber: 4
    functionLinenumberEnd: 67
    functionName: sdp_generator
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/sdp_generator.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_write
    - gf_list_get
    - gf_fclose
    - dprintf
    - sprintf
    - gf_fwrite
    - gf_base64_encode
    - gf_fopen
    - exit
    - gf_sk_get_local_info
    - gf_net_is_ipv6
    - free
    - fflush
    - strlen
    - fprintf
    linkageType: ''
    returnType: int
    signature: int sdp_generator(PNC_CallbackData *data, char *ip_dest, char *sdp_fmt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_new
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:12,1
    - Dst: gf_rtp_set_ports
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:13,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:15,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:15,1
    - Dst: gf_rtp_del
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:16,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:21,1
    - Dst: rand
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:26,1
    - Dst: gf_rtp_setup_transport
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:39,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:41,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:41,1
    - Dst: gf_rtp_del
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:42,1
    - Dst: gf_rtp_initialize
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:46,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:48,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:48,1
    - Dst: gf_rtp_del
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:49,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 38
    argCount: 4
    argNames:
    - chan
    - dest
    - port
    - mtu_size
    argTypes:
    - GF_RTPChannel**
    - char*
    - int
    - unsigned short
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 7
    functionDepth: 1
    functionLinenumber: 7
    functionLinenumberEnd: 53
    functionName: PNC_InitRTP
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c
    functionUses: 0
    functionsReached:
    - gf_rtp_set_ports
    - rand
    - gf_rtp_del
    - gf_rtp_initialize
    - gf_sk_is_multicast_address
    - gf_error_to_string
    - gf_rtp_setup_transport
    - gf_rtp_new
    - fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PNC_InitRTP(GF_RTPChannel **chan, char *dest, int port, unsigned
      short mtu_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_send_packet
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:66,1
    - Dst: dprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:67,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:71,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:72,1
    - Dst: gf_sk_send
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:73,1
    - Dst: strlen
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:73,1
    - Dst: dprintf
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - data
    - payload
    - payloadSize
    argTypes:
    - PNC_CallbackData*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 77
    functionName: PNC_SendRTP
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c
    functionUses: 1
    functionsReached:
    - gf_sk_send
    - dprintf
    - sprintf
    - memset
    - strlen
    - gf_rtp_send_packet
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PNC_SendRTP(PNC_CallbackData *data, char *payload, int payloadSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_del
      Src: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - chan
    argTypes:
    - GF_RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 83
    functionName: PNC_CloseRTP
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/RTP_serv_sender.c
    functionUses: 0
    functionsReached:
    - gf_rtp_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PNC_CloseRTP(GF_RTPChannel *chan)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:6,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7
      start: 4
    functionDepth: 0
    functionLinenumber: 4
    functionLinenumberEnd: 7
    functionName: printIncompatibleOptions
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/broadcaster.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void printIncompatibleOptions()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:20,1
    - Dst: strtoul
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:23,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:25,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - port_to_parse
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 14
    functionDepth: 0
    functionLinenumber: 14
    functionLinenumberEnd: 29
    functionName: port_from_string
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/broadcaster.c
    functionUses: 0
    functionsReached:
    - strtoul
    - fprintf
    linkageType: ''
    returnType: unsigned short
    signature: unsigned short port_from_string(const char * port_to_parse)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:37,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:44,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:44,1
    - Dst: printIncompatibleOptions
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:48,1
    - Dst: port_from_string
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:51,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:54,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:54,1
    - Dst: printIncompatibleOptions
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:57,1
    - Dst: strcpy
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:60,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:63,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:63,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:66,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:70,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:70,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:72,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:74,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:74,1
    - Dst: stricmp
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:76,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:80,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:86,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 45
    argCount: 8
    argNames:
    - argc
    - argv
    - tcp_port
    - config_file
    - config_flag
    - mtu_size
    - debug
    - socketType_for_updates
    argTypes:
    - int
    - char**
    - unsigned short*
    - char*
    - int*
    - unsigned short*
    - int*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 91
    functionName: command_line_parsing
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/broadcaster.c
    functionUses: 0
    functionsReached:
    - stricmp
    - strcpy
    - port_from_string
    - strcmp
    - atoi
    - printIncompatibleOptions
    - fprintf
    linkageType: ''
    returnType: int
    signature: "int command_line_parsing(int argc, const char** argv, unsigned short
      * tcp_port,\n                                char *config_file, int *config_flag,
      unsigned short * mtu_size,\n                                int * debug, u32
      * socketType_for_updates)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:95,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:96,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:97,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:98,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:99,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 101
    functionName: print_usage
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/broadcaster.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void print_usage(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:111,1
    - Dst: dprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:115,1
    - Dst: gf_seng_aggregate_context
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:117,1
    - Dst: gf_seng_encode_context
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:118,1
    - Dst: gf_mx_v
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:120,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - par
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 125
    functionName: RAP_send
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/broadcaster.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_seng_encode_context
    - dprintf
    - gf_sleep
    - gf_mx_v
    - gf_seng_aggregate_context
    linkageType: ''
    returnType: u32
    signature: u32 RAP_send(void *par)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:129,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:131,1
    - Dst: dprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:134,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:137,1
    - Dst: dprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:139,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:141,1
    - Dst: dprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:143,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:145,1
    - Dst: dprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:148,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:150,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:153,1
    - Dst: dprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:156,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:158,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:160,1
    - Dst: dprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:162,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 3
    argNames:
    - gf_config_file
    - conf
    - debug
    argTypes:
    - GF_Config*
    - CONF_Data*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 164
    functionName: parse_config
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/broadcaster.c
    functionUses: 0
    functionsReached:
    - gf_cfg_get_key
    - fprintf
    - dprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err parse_config(GF_Config *gf_config_file, CONF_Data *conf, int
      debug)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_new
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:182,1
    - Dst: gf_sk_bind
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:183,1
    - Dst: gf_sk_listen
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:184,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:185,1
    - Dst: gf_sk_server_mode
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:186,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:191,1
    - Dst: gf_sk_accept
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:192,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:194,1
    - Dst: gf_sk_receive
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:195,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:200,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:205,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:205,1
    - Dst: exit
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:206,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:213,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:215,1
    - Dst: exit
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:216,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:218,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:219,1
    - Dst: gf_cfg_new
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:222,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:224,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:224,1
    - Dst: exit
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:225,1
    - Dst: parse_config
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:227,1
    - Dst: gf_sk_send
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:230,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:232,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:233,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:235,1
    - Dst: exit
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:236,1
    - Dst: gf_sk_receive
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:242,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:245,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:250,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:252,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:252,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:256,1
    - Dst: sscanf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:261,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:262,1
    - Dst: gf_sk_del
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:264,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 73
    argCount: 1
    argNames:
    - par
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 166
    functionDepth: 2
    functionLinenumber: 166
    functionLinenumberEnd: 269
    functionName: tcp_server
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/broadcaster.c
    functionUses: 0
    functionsReached:
    - gf_sk_del
    - gf_fwrite
    - gf_cfg_new
    - memset
    - gf_fopen
    - gf_sk_set_block_mode
    - fprintf
    - gf_sk_accept
    - gf_sk_send
    - gf_sk_server_mode
    - gf_sk_receive
    - exit
    - gf_sk_bind
    - parse_config
    - sscanf
    - gf_sleep
    - gf_sk_listen
    - gf_error_to_string
    - gf_fclose
    - gf_sk_new
    linkageType: ''
    returnType: u32
    signature: u32 tcp_server(void *par)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_init
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:313,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:315,1
    - Dst: command_line_parsing
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:319,1
    - Dst: print_usage
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:320,1
    - Dst: setDebugMode
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:323,1
    - Dst: strrchr
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:333,1
    - Dst: gf_cfg_new
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:340,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:342,1
    - Dst: dprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:345,1
    - Dst: parse_config
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:347,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:348,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:352,1
    - Dst: gf_th_new
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:357,1
    - Dst: gf_th_run
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:360,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:362,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:365,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:367,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:370,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:371,1
    - Dst: PNC_InitRTP
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:372,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:374,1
    - Dst: exit
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:375,1
    - Dst: gf_mx_new
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:378,1
    - Dst: PNC_Init_SceneGenerator
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:379,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:380,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:382,1
    - Dst: exit
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:383,1
    - Dst: gf_sk_new
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:388,1
    - Dst: gf_sk_bind
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:389,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:389,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:389,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:391,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:391,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:393,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:395,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:395,1
    - Dst: PNC_InitPacketiser
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:400,1
    - Dst: PNC_SendInitScene
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:401,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:403,1
    - Dst: gf_th_new
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:407,1
    - Dst: gf_th_run
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:408,1
    - Dst: sdp_generator
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:410,1
    - Dst: PNC_processBIFSGenerator
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:415,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:417,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:417,1
    - Dst: has_input
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:421,1
    - Dst: get_a_char
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:422,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:429,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:435,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:436,1
    - Dst: gf_th_del
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:437,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:443,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:444,1
    - Dst: gf_th_del
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:445,1
    - Dst: PNC_Close_SceneGenerator
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:448,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:450,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:453,1
    - Dst: gf_mx_del
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:455,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:456,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 116
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 274
    functionDepth: 3
    functionLinenumber: 274
    functionLinenumberEnd: 458
    functionName: main
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/broadcaster.c
    functionUses: 0
    functionsReached:
    - gf_free
    - PNC_processBIFSGenerator
    - GF_SAFEALLOC
    - dprintf
    - PNC_Close_SceneGenerator
    - gf_cfg_new
    - setDebugMode
    - atoi
    - PNC_SendInitScene
    - gf_mx_new
    - gf_sys_close
    - gf_sk_set_block_mode
    - fprintf
    - gf_th_del
    - command_line_parsing
    - get_a_char
    - strrchr
    - gf_cfg_del
    - exit
    - gf_th_run
    - parse_config
    - gf_sk_bind
    - gf_th_new
    - gf_sleep
    - print_usage
    - gf_error_to_string
    - PNC_Init_SceneGenerator
    - gf_sk_new
    - sdp_generator
    - gf_sys_init
    - has_input
    - PNC_InitPacketiser
    - PNC_InitRTP
    - gf_mx_del
    linkageType: ''
    returnType: int
    signature: int main (const int argc, const char** argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: kbhit
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:465,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 463
    functionDepth: 0
    functionLinenumber: 463
    functionLinenumberEnd: 466
    functionName: has_input
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/broadcaster.c
    functionUses: 1
    functionsReached:
    - kbhit
    linkageType: ''
    returnType: Bool
    signature: Bool has_input()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getchar
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:469,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 467
    functionDepth: 0
    functionLinenumber: 467
    functionLinenumberEnd: 470
    functionName: get_a_char
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/broadcaster.c
    functionUses: 1
    functionsReached:
    - getchar
    linkageType: ''
    returnType: u8
    signature: u8 get_a_char()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GetStdHandle
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:474,1
    - Dst: GetConsoleMode
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:475,1
    - Dst: SetConsoleMode
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:478,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - echo_off
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 479
      start: 471
    functionDepth: 0
    functionLinenumber: 471
    functionLinenumberEnd: 479
    functionName: set_echo_off
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/broadcaster.c
    functionUses: 0
    functionsReached:
    - GetConsoleMode
    - SetConsoleMode
    - GetStdHandle
    linkageType: ''
    returnType: void
    signature: void set_echo_off(Bool echo_off)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tcgetattr
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:489,1
    - Dst: tcsetattr
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:496,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 487
    functionDepth: 0
    functionLinenumber: 487
    functionLinenumberEnd: 497
    functionName: init_keyboard
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/broadcaster.c
    functionUses: 0
    functionsReached:
    - tcsetattr
    - tcgetattr
    linkageType: ''
    returnType: void
    signature: void init_keyboard()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tcsetattr
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:500,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:501,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - new_line
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 498
    functionDepth: 0
    functionLinenumber: 498
    functionLinenumberEnd: 502
    functionName: close_keyboard
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/broadcaster.c
    functionUses: 0
    functionsReached:
    - fprintf
    - tcsetattr
    linkageType: ''
    returnType: void
    signature: void close_keyboard(Bool new_line)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: init_keyboard
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:506,1
    - Dst: close_keyboard
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:509,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - echo_off
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 504
    functionDepth: 0
    functionLinenumber: 504
    functionLinenumberEnd: 510
    functionName: set_echo_off
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/broadcaster.c
    functionUses: 0
    functionsReached:
    - close_keyboard
    - init_keyboard
    linkageType: ''
    returnType: void
    signature: void set_echo_off(Bool echo_off)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: init_keyboard
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:517,1
    - Dst: tcsetattr
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:520,1
    - Dst: read
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:521,1
    - Dst: tcsetattr
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:523,1
    - Dst: close_keyboard
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:528,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 512
    functionDepth: 0
    functionLinenumber: 512
    functionLinenumberEnd: 530
    functionName: has_input
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/broadcaster.c
    functionUses: 1
    functionsReached:
    - read
    - close_keyboard
    - init_keyboard
    - tcsetattr
    linkageType: ''
    returnType: Bool
    signature: Bool has_input()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: close_keyboard
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:538,1
    - Dst: read
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:541,1
    - Dst: close_keyboard
      Src: /src/gpac/applications/testapps/broadcaster/broadcaster.c:542,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 532
    functionDepth: 0
    functionLinenumber: 532
    functionLinenumberEnd: 546
    functionName: get_a_char
    functionSourceFile: /src/gpac/applications/testapps/broadcaster/broadcaster.c
    functionUses: 1
    functionsReached:
    - close_keyboard
    - read
    linkageType: ''
    returnType: u8
    signature: u8 get_a_char()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:43,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:44,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:46,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:47,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/udptsseg/main.c:50,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:52,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:56,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:59,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:63,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/udptsseg/main.c:65,1
    - Dst: rename
      Src: /src/gpac/applications/testapps/udptsseg/main.c:67,1
    - Dst: remove
      Src: /src/gpac/applications/testapps/udptsseg/main.c:70,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:71,1
    - Dst: rename
      Src: /src/gpac/applications/testapps/udptsseg/main.c:73,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:74,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 35
    argCount: 8
    argNames:
    - manifest
    - segment_dir
    - segment_duration
    - segment_prefix
    - http_prefix
    - first_segment
    - last_segment
    - end
    argTypes:
    - char*
    - char*
    - u32
    - char*
    - char*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 80
    functionName: write_manifest
    functionSourceFile: /src/gpac/applications/testapps/udptsseg/main.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - sprintf
    - rename
    - gf_fopen
    - remove
    - fprintf
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err write_manifest(char *manifest, char *segment_dir, u32 segment_duration,
      char *segment_prefix, char *http_prefix,\n                             u32 first_segment,
      u32 last_segment, Bool end)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 93
    functionName: usage
    functionSourceFile: /src/gpac/applications/testapps/udptsseg/main.c
    functionUses: 2
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void usage()
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:124,1
    - Dst: usage
      Src: /src/gpac/applications/testapps/udptsseg/main.c:127,1
    - Dst: gf_sys_init
      Src: /src/gpac/applications/testapps/udptsseg/main.c:133,1
    - Dst: strnicmp
      Src: /src/gpac/applications/testapps/udptsseg/main.c:140,1
    - Dst: strchr
      Src: /src/gpac/applications/testapps/udptsseg/main.c:143,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/udptsseg/main.c:145,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/testapps/udptsseg/main.c:147,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/testapps/udptsseg/main.c:150,1
    - Dst: strnicmp
      Src: /src/gpac/applications/testapps/udptsseg/main.c:153,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/udptsseg/main.c:154,1
    - Dst: strnicmp
      Src: /src/gpac/applications/testapps/udptsseg/main.c:155,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/testapps/udptsseg/main.c:156,1
    - Dst: strnicmp
      Src: /src/gpac/applications/testapps/udptsseg/main.c:157,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/testapps/udptsseg/main.c:158,1
    - Dst: strnicmp
      Src: /src/gpac/applications/testapps/udptsseg/main.c:159,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/udptsseg/main.c:160,1
    - Dst: strnicmp
      Src: /src/gpac/applications/testapps/udptsseg/main.c:161,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/testapps/udptsseg/main.c:162,1
    - Dst: strnicmp
      Src: /src/gpac/applications/testapps/udptsseg/main.c:163,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/testapps/udptsseg/main.c:164,1
    - Dst: strnicmp
      Src: /src/gpac/applications/testapps/udptsseg/main.c:165,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/udptsseg/main.c:166,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:169,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:170,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:171,1
    - Dst: gf_sk_new
      Src: /src/gpac/applications/testapps/udptsseg/main.c:176,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/applications/testapps/udptsseg/main.c:177,1
    - Dst: gf_sk_setup_multicast
      Src: /src/gpac/applications/testapps/udptsseg/main.c:178,1
    - Dst: gf_sk_bind
      Src: /src/gpac/applications/testapps/udptsseg/main.c:180,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:183,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/udptsseg/main.c:183,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/applications/testapps/udptsseg/main.c:186,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/applications/testapps/udptsseg/main.c:187,1
    - Dst: strcpy
      Src: /src/gpac/applications/testapps/udptsseg/main.c:195,1
    - Dst: strrchr
      Src: /src/gpac/applications/testapps/udptsseg/main.c:196,1
    - Dst: strchr
      Src: /src/gpac/applications/testapps/udptsseg/main.c:199,1
    - Dst: strlen
      Src: /src/gpac/applications/testapps/udptsseg/main.c:199,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:200,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:202,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:205,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:207,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/testapps/udptsseg/main.c:208,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:210,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/udptsseg/main.c:215,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:217,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/testapps/udptsseg/main.c:222,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/udptsseg/main.c:223,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/testapps/udptsseg/main.c:228,1
    - Dst: gf_sk_receive
      Src: /src/gpac/applications/testapps/udptsseg/main.c:233,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:236,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:239,1
    - Dst: memmove
      Src: /src/gpac/applications/testapps/udptsseg/main.c:240,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:244,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/testapps/udptsseg/main.c:254,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/testapps/udptsseg/main.c:256,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:258,1
    - Dst: memmove
      Src: /src/gpac/applications/testapps/udptsseg/main.c:259,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/udptsseg/main.c:266,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:267,1
    - Dst: strchr
      Src: /src/gpac/applications/testapps/udptsseg/main.c:271,1
    - Dst: strlen
      Src: /src/gpac/applications/testapps/udptsseg/main.c:271,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:272,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:274,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:277,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/udptsseg/main.c:279,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:281,1
    - Dst: strchr
      Src: /src/gpac/applications/testapps/udptsseg/main.c:288,1
    - Dst: strlen
      Src: /src/gpac/applications/testapps/udptsseg/main.c:288,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:289,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:291,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:294,1
    - Dst: gf_delete_file
      Src: /src/gpac/applications/testapps/udptsseg/main.c:296,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/udptsseg/main.c:297,1
    - Dst: write_manifest
      Src: /src/gpac/applications/testapps/udptsseg/main.c:299,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/testapps/udptsseg/main.c:308,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 165
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts:
    - condition: (input_buffer)
      pos:
        line_end: 222
        line_start: 222
        source_file: /src/gpac/applications/testapps/udptsseg/main.c
    constantsTouched: []
    func_position:
      end: 312
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 312
    functionName: main
    functionSourceFile: /src/gpac/applications/testapps/udptsseg/main.c
    functionUses: 0
    functionsReached:
    - usage
    - strcpy
    - gf_fwrite
    - gf_sk_set_buffer_size
    - gf_delete_file
    - gf_fopen
    - atoi
    - strchr
    - gf_sk_set_block_mode
    - fprintf
    - gf_sys_clock
    - gf_strdup
    - strrchr
    - gf_sk_receive
    - sprintf
    - gf_sk_setup_multicast
    - gf_sk_bind
    - memmove
    - write_manifest
    - assert
    - gf_sleep
    - strnicmp
    - gf_error_to_string
    - strlen
    - gf_malloc
    - gf_fclose
    - gf_sk_new
    - gf_sys_init
    - gf_sk_is_multicast_address
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:81,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:83,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:85,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:115,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:117,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:145,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 63
    argCount: 2
    argNames:
    - svg_props
    - sg
    argTypes:
    - SVGPropertiesPointers*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 154
    functionName: create_appearance
    functionSourceFile: /src/gpac/applications/testapps/svg2bifs/main.c
    functionUses: 0
    functionsReached:
    - gf_node_register
    - gf_node_new
    - gf_sg_vrml_mf_alloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *create_appearance(SVGPropertiesPointers *svg_props, GF_SceneGraph
      *sg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:160,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:161,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - converter
    - node
    argTypes:
    - SVG2BIFS_Converter*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 174
    functionName: add_transform_matrix
    functionSourceFile: /src/gpac/applications/testapps/svg2bifs/main.c
    functionUses: 0
    functionsReached:
    - gf_node_list_add_child
    - gf_node_register
    - gf_node_new
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *add_transform_matrix(SVG2BIFS_Converter *converter, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:178,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:179,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - converter
    - node
    argTypes:
    - SVG2BIFS_Converter*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 182
    functionName: add_transform2d
    functionSourceFile: /src/gpac/applications/testapps/svg2bifs/main.c
    functionUses: 0
    functionsReached:
    - gf_node_list_add_child
    - gf_node_register
    - gf_node_new
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *add_transform2d(SVG2BIFS_Converter *converter, GF_Node *node)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:194,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:201,1
    - Dst: gf_node_register_iri
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:205,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:208,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:211,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:212,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:233,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:237,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:238,1
    - Dst: svg_parse_animation
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:246,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:249,1
    - Dst: gf_node_get_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:249,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:255,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:256,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:259,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:260,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:263,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:264,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:267,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:268,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 75
    argCount: 2
    argNames:
    - sg
    - anim
    argTypes:
    - GF_SceneGraph*
    - SVG_DeferredAnimation*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 184
    functionDepth: 1
    functionLinenumber: 184
    functionLinenumberEnd: 272
    functionName: svg_parse_animation
    functionSourceFile: /src/gpac/applications/testapps/svg2bifs/main.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_svg_parse_attribute
    - svg_parse_animation
    - gf_sg_find_node_by_name
    - gf_node_get_attribute_by_tag
    - gf_node_get_name
    - gf_node_register_iri
    - gf_node_get_attribute_by_name
    - fprintf
    linkageType: ''
    returnType: void
    signature: void svg_parse_animation(GF_SceneGraph *sg, SVG_DeferredAnimation *anim)
  - BBCount: 98
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_get_element_tag
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:285,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:286,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:287,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:288,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:289,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:291,1
    - Dst: gf_svg_is_animation_tag
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:298,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:299,1
    - Dst: strlen
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:309,1
    - Dst: stricmp
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:311,1
    - Dst: gf_svg_parse_style
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:312,1
    - Dst: stricmp
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:313,1
    - Dst: stricmp
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:313,1
    - Dst: gf_svg_parse_element_id
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:314,1
    - Dst: stricmp
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:316,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:317,1
    - Dst: stricmp
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:318,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:319,1
    - Dst: stricmp
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:320,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:321,1
    - Dst: stricmp
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:322,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:323,1
    - Dst: stricmp
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:324,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:325,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:328,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:329,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:331,1
    - Dst: svg_parse_animation
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:337,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:340,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:341,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:343,1
    - Dst: memcpy
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:344,1
    - Dst: gf_node_set_private
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:345,1
    - Dst: gf_svg_apply_inheritance
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:347,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:349,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:349,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:349,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:351,1
    - Dst: FIX2INT
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:357,1
    - Dst: FIX2INT
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:362,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:367,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:368,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:369,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:371,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:372,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:373,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:380,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:381,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:382,1
    - Dst: INT2FIX
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:391,1
    - Dst: INT2FIX
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:392,1
    - Dst: INT2FIX
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:393,1
    - Dst: INT2FIX
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:394,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:398,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:399,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:400,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:408,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:409,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:410,1
    - Dst: add_transform_matrix
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:428,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:431,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:432,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:433,1
    - Dst: add_transform_matrix
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:443,1
    - Dst: add_transform2d
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:448,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:455,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:456,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:457,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:470,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:471,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:472,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:478,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:479,1
    - Dst: create_appearance
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:486,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:487,1
    - Dst: add_transform_matrix
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:495,1
    - Dst: add_transform2d
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:500,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:507,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:508,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:509,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:522,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:523,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:524,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:530,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:531,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:537,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:539,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:541,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:542,1
    - Dst: create_appearance
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:600,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:601,1
    - Dst: add_transform_matrix
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:609,1
    - Dst: add_transform2d
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:614,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:620,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:621,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:622,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:628,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:629,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:634,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:636,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:638,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:638,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:639,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:640,1
    - Dst: create_appearance
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:646,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:647,1
    - Dst: add_transform_matrix
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:655,1
    - Dst: add_transform2d
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:660,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:667,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:668,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:669,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:672,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:673,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:683,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:684,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:685,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:693,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:696,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:698,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:699,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:702,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:703,1
    - Dst: create_appearance
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:706,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:707,1
    - Dst: add_transform_matrix
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:716,1
    - Dst: add_transform2d
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:721,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:728,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:729,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:730,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:743,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:744,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:745,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:752,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:757,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:761,1
    - Dst: create_appearance
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:763,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:764,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:771,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:772,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:773,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:785,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:786,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:787,1
    - Dst: gf_node_get_id
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:796,1
    - Dst: gf_node_set_id
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:797,1
    - Dst: gf_sg_get_next_available_node_id
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:797,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:800,1
    - Dst: gf_node_get_id
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:801,1
    - Dst: gf_node_set_id
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:802,1
    - Dst: gf_sg_get_next_available_node_id
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:802,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:804,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:805,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:821,1
    - Dst: gf_node_get_id
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:822,1
    - Dst: gf_node_set_id
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:823,1
    - Dst: gf_sg_get_next_available_node_id
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:823,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:825,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:826,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:828,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:829,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:830,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:832,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:833,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:834,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:840,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:842,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:843,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:850,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:853,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:854,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:862,1
    - Dst: gf_node_get_id
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:863,1
    - Dst: gf_node_set_id
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:864,1
    - Dst: gf_sg_get_next_available_node_id
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:864,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:866,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:867,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:869,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:870,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:871,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:873,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:874,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:875,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:882,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:884,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:885,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:892,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:895,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:896,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:906,1
    - Dst: gf_node_get_id
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:907,1
    - Dst: gf_node_set_id
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:908,1
    - Dst: gf_sg_get_next_available_node_id
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:908,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:910,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:911,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:913,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:914,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:915,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:917,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:919,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:921,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:923,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:929,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:931,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:932,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:939,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:942,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:943,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:951,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:959,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:959,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:960,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:961,1
    - Dst: gf_node_set_id
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:971,1
    - Dst: gf_sg_get_next_available_node_id
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:971,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:974,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:974,1
    CyclomaticComplexity: 121
    EdgeCount: 121
    ICount: 565
    argCount: 5
    argNames:
    - sax_cbck
    - name
    - name_space
    - attributes
    - nb_attributes
    argTypes:
    - void*
    - char*
    - char*
    - GF_XMLAttribute*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 975
      start: 275
    functionDepth: 2
    functionLinenumber: 275
    functionLinenumberEnd: 975
    functionName: svg2bifs_node_start
    functionSourceFile: /src/gpac/applications/testapps/svg2bifs/main.c
    functionUses: 0
    functionsReached:
    - gf_svg_parse_attribute
    - gf_svg_apply_inheritance
    - gf_node_get_class_name
    - GF_SAFEALLOC
    - gf_list_count
    - memset
    - gf_sg_get_next_available_node_id
    - gf_svg_is_animation_tag
    - gf_svg_parse_style
    - create_appearance
    - fprintf
    - gf_sg_vrml_mf_alloc
    - svg_parse_animation
    - gf_strdup
    - gf_list_get
    - add_transform_matrix
    - gf_node_get_id
    - memcpy
    - gf_node_set_id
    - gf_sg_route_new
    - stricmp
    - gf_sg_get_root_node
    - gf_node_list_add_child
    - gf_svg_flatten_attributes
    - add_transform2d
    - gf_sg_vrml_mf_append
    - gf_node_set_private
    - gf_node_new
    - gf_malloc
    - strlen
    - INT2FIX
    - gf_sg_set_root_node
    - gf_svg_parse_element_id
    - gf_node_get_field_by_name
    - FIX2INT
    - gf_xml_get_element_tag
    - gf_node_register
    linkageType: ''
    returnType: void
    signature: void svg2bifs_node_start(void *sax_cbck, const char *name, const char
      *name_space, const GF_XMLAttribute *attributes, u32 nb_attributes)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:982,1
    - Dst: memcpy
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:983,1
    - Dst: gf_node_set_private
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:985,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:987,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:988,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:989,1
    - Dst: gf_node_unregister
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:990,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:991,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:995,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:995,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:995,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - sax_cbck
    - name
    - name_space
    argTypes:
    - void*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 996
      start: 977
    functionDepth: 1
    functionLinenumber: 977
    functionLinenumberEnd: 996
    functionName: svg2bifs_node_end
    functionSourceFile: /src/gpac/applications/testapps/svg2bifs/main.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_sg_set_root_node
    - gf_node_get_class_name
    - memcpy
    - gf_node_set_private
    - gf_node_unregister
    - gf_node_get_parent
    - gf_node_get_private
    - fprintf
    linkageType: ''
    returnType: void
    signature: void svg2bifs_node_end(void *sax_cbck, const char *name, const char
      *name_space)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:1003,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:1004,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - sax_cbck
    - text_content
    - is_cdata
    argTypes:
    - void*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1006
      start: 998
    functionDepth: 1
    functionLinenumber: 998
    functionLinenumberEnd: 1006
    functionName: svg2bifs_text_content
    functionSourceFile: /src/gpac/applications/testapps/svg2bifs/main.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_sg_vrml_mf_alloc
    linkageType: ''
    returnType: void
    signature: void svg2bifs_text_content(void *sax_cbck, const char *text_content,
      Bool is_cdata)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_init
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:1014,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:1016,1
    - Dst: gf_xml_sax_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:1018,1
    - Dst: gf_sg_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:1021,1
    - Dst: gf_svg_properties_init_pointers
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:1022,1
    - Dst: gf_sg_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:1024,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:1026,1
    - Dst: gf_xml_sax_parse_file
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:1027,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:1029,1
    - Dst: strchr
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:1030,1
    - Dst: gf_sm_dumper_new
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:1032,1
    - Dst: gf_sm_dump_graph
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:1035,1
    - Dst: gf_sm_dumper_del
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:1036,1
    - Dst: gf_svg_properties_reset_pointers
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:1038,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:1040,1
    - Dst: gf_xml_sax_del
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:1043,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/svg2bifs/main.c:1045,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 21
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1046
      start: 1008
    functionDepth: 1
    functionLinenumber: 1008
    functionLinenumberEnd: 1046
    functionName: main
    functionSourceFile: /src/gpac/applications/testapps/svg2bifs/main.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sg_new
    - gf_sg_del
    - GF_SAFEALLOC
    - gf_sm_dump_graph
    - gf_sys_init
    - gf_svg_properties_init_pointers
    - gf_svg_properties_reset_pointers
    - gf_xml_sax_del
    - gf_xml_sax_parse_file
    - gf_sm_dumper_new
    - gf_sm_dumper_del
    - gf_xml_sax_new
    - strchr
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/atscdmx/main.c:17,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 15
    functionDepth: 0
    functionLinenumber: 15
    functionLinenumberEnd: 34
    functionName: PrintUsage
    functionSourceFile: /src/gpac/applications/testapps/atscdmx/main.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void PrintUsage()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/atscdmx/main.c:43,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/atscdmx/main.c:44,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/applications/testapps/atscdmx/main.c:48,1
    - Dst: gmtime
      Src: /src/gpac/applications/testapps/atscdmx/main.c:51,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/atscdmx/main.c:52,1
    - Dst: vfprintf
      Src: /src/gpac/applications/testapps/atscdmx/main.c:54,1
    - Dst: fflush
      Src: /src/gpac/applications/testapps/atscdmx/main.c:55,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 5
    argNames:
    - cbk
    - ll
    - lm
    - fmt
    - list
    argTypes:
    - void*
    - GF_LOG_Level
    - GF_LOG_Tool
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 56
    functionName: on_atscd_log
    functionSourceFile: /src/gpac/applications/testapps/atscdmx/main.c
    functionUses: 0
    functionsReached:
    - vfprintf
    - gmtime
    - gf_net_get_utc
    - gf_sys_clock_high_res
    - fflush
    - fprintf
    linkageType: ''
    returnType: void
    signature: void on_atscd_log(void *cbk, GF_LOG_Level ll, GF_LOG_Tool lm, const
      char *fmt, va_list list)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: PrintUsage
      Src: /src/gpac/applications/testapps/atscdmx/main.c:68,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/atscdmx/main.c:73,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/atscdmx/main.c:73,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/atscdmx/main.c:75,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/atscdmx/main.c:77,1
    - Dst: gf_sys_init
      Src: /src/gpac/applications/testapps/atscdmx/main.c:86,1
    - Dst: gf_sys_init
      Src: /src/gpac/applications/testapps/atscdmx/main.c:88,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/testapps/atscdmx/main.c:90,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/testapps/atscdmx/main.c:91,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/atscdmx/main.c:97,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/atscdmx/main.c:98,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/atscdmx/main.c:99,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/atscdmx/main.c:99,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/atscdmx/main.c:100,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/atscdmx/main.c:100,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/atscdmx/main.c:101,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/atscdmx/main.c:103,1
    - Dst: gf_log_set_tools_levels
      Src: /src/gpac/applications/testapps/atscdmx/main.c:104,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/atscdmx/main.c:108,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/atscdmx/main.c:108,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/atscdmx/main.c:110,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/atscdmx/main.c:110,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/applications/testapps/atscdmx/main.c:115,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/atscdmx/main.c:116,1
    - Dst: gf_atsc3_dmx_new
      Src: /src/gpac/applications/testapps/atscdmx/main.c:120,1
    - Dst: gf_atsc3_tune_in
      Src: /src/gpac/applications/testapps/atscdmx/main.c:121,1
    - Dst: gf_atsc3_dmx_process
      Src: /src/gpac/applications/testapps/atscdmx/main.c:124,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/testapps/atscdmx/main.c:126,1
    - Dst: gf_prompt_has_input
      Src: /src/gpac/applications/testapps/atscdmx/main.c:128,1
    - Dst: gf_prompt_get_char
      Src: /src/gpac/applications/testapps/atscdmx/main.c:129,1
    - Dst: gf_atsc3_dmx_del
      Src: /src/gpac/applications/testapps/atscdmx/main.c:137,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/atscdmx/main.c:139,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/testapps/atscdmx/main.c:140,1
    - Dst: gf_memory_size
      Src: /src/gpac/applications/testapps/atscdmx/main.c:143,1
    - Dst: gf_file_handles_count
      Src: /src/gpac/applications/testapps/atscdmx/main.c:143,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/testapps/atscdmx/main.c:144,1
    - Dst: gf_memory_print
      Src: /src/gpac/applications/testapps/atscdmx/main.c:145,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 65
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 150
    functionName: main
    functionSourceFile: /src/gpac/applications/testapps/atscdmx/main.c
    functionUses: 0
    functionsReached:
    - PrintUsage
    - gf_log_set_tools_levels
    - gf_prompt_has_input
    - gf_fopen
    - atoi
    - gf_atsc3_dmx_process
    - gf_memory_print
    - gf_sys_close
    - fprintf
    - gf_atsc3_dmx_del
    - gf_log_set_callback
    - gf_sleep
    - gf_log_set_tool_level
    - gf_atsc3_dmx_new
    - gf_prompt_get_char
    - gf_sys_clock_high_res
    - gf_fclose
    - gf_atsc3_tune_in
    - gf_memory_size
    - gf_sys_init
    - strcmp
    - gf_file_handles_count
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/bmp4demux/main.c:46,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/bmp4demux/main.c:50,1
    - Dst: gf_isom_open_progressive
      Src: /src/gpac/applications/testapps/bmp4demux/main.c:53,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/bmp4demux/main.c:55,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/bmp4demux/main.c:55,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/testapps/bmp4demux/main.c:59,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/bmp4demux/main.c:61,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/testapps/bmp4demux/main.c:66,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/testapps/bmp4demux/main.c:72,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/bmp4demux/main.c:74,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/testapps/bmp4demux/main.c:78,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/testapps/bmp4demux/main.c:80,1
    - Dst: gf_isom_get_missing_bytes
      Src: /src/gpac/applications/testapps/bmp4demux/main.c:82,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/bmp4demux/main.c:83,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/testapps/bmp4demux/main.c:84,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/testapps/bmp4demux/main.c:90,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 93
    functionName: main
    functionSourceFile: /src/gpac/applications/testapps/bmp4demux/main.c
    functionUses: 0
    functionsReached:
    - gf_isom_last_error
    - gf_isom_sample_del
    - gf_isom_get_sample_count
    - gf_sleep
    - gf_isom_get_sample
    - gf_isom_get_missing_bytes
    - atoi
    - gf_error_to_string
    - gf_isom_get_track_by_id
    - fprintf
    - gf_isom_open_progressive
    - gf_isom_close
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - ts
    - evt_type
    - par
    argTypes:
    - GF_M2TS_Demuxer*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 56
    functionName: on_m2ts_event
    functionSourceFile: /src/gpac/applications/testapps/ts2udp/main.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_m2ts_event(GF_M2TS_Demuxer *ts, u32 evt_type, void *par)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sema_wait
      Src: /src/gpac/applications/testapps/ts2udp/main.c:63,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/testapps/ts2udp/main.c:64,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/testapps/ts2udp/main.c:66,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2udp/main.c:68,1
    - Dst: gf_sk_send
      Src: /src/gpac/applications/testapps/ts2udp/main.c:71,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - param
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 76
    functionName: sender_thread_proc
    functionSourceFile: /src/gpac/applications/testapps/ts2udp/main.c
    functionUses: 0
    functionsReached:
    - gf_sk_send
    - gf_sema_wait
    - gf_sleep
    - gf_sys_clock
    - fprintf
    linkageType: ''
    returnType: u32
    signature: u32 sender_thread_proc(void *param)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2udp/main.c:89,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2udp/main.c:90,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/ts2udp/main.c:93,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2udp/main.c:94,1
    - Dst: gf_sys_init
      Src: /src/gpac/applications/testapps/ts2udp/main.c:96,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/ts2udp/main.c:97,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/ts2udp/main.c:99,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2udp/main.c:101,1
    - Dst: gf_th_new
      Src: /src/gpac/applications/testapps/ts2udp/main.c:104,1
    - Dst: gf_sema_new
      Src: /src/gpac/applications/testapps/ts2udp/main.c:105,1
    - Dst: gf_th_set_priority
      Src: /src/gpac/applications/testapps/ts2udp/main.c:106,1
    - Dst: gf_m2ts_demux_new
      Src: /src/gpac/applications/testapps/ts2udp/main.c:107,1
    - Dst: gf_sk_new
      Src: /src/gpac/applications/testapps/ts2udp/main.c:110,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/applications/testapps/ts2udp/main.c:111,1
    - Dst: gf_sk_setup_multicast
      Src: /src/gpac/applications/testapps/ts2udp/main.c:112,1
    - Dst: gf_sk_bind
      Src: /src/gpac/applications/testapps/ts2udp/main.c:114,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/testapps/ts2udp/main.c:116,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/testapps/ts2udp/main.c:118,1
    - Dst: gf_ftell
      Src: /src/gpac/applications/testapps/ts2udp/main.c:119,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/testapps/ts2udp/main.c:120,1
    - Dst: gf_th_run
      Src: /src/gpac/applications/testapps/ts2udp/main.c:121,1
    - Dst: feof
      Src: /src/gpac/applications/testapps/ts2udp/main.c:122,1
    - Dst: gf_fread
      Src: /src/gpac/applications/testapps/ts2udp/main.c:125,1
    - Dst: gf_m2ts_process_data
      Src: /src/gpac/applications/testapps/ts2udp/main.c:127,1
    - Dst: gf_sema_notify
      Src: /src/gpac/applications/testapps/ts2udp/main.c:129,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/testapps/ts2udp/main.c:132,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/testapps/ts2udp/main.c:134,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/testapps/ts2udp/main.c:138,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/ts2udp/main.c:141,1
    - Dst: gf_m2ts_demux_del
      Src: /src/gpac/applications/testapps/ts2udp/main.c:142,1
    - Dst: gf_th_del
      Src: /src/gpac/applications/testapps/ts2udp/main.c:143,1
    - Dst: gf_sema_del
      Src: /src/gpac/applications/testapps/ts2udp/main.c:144,1
    - Dst: gf_sk_del
      Src: /src/gpac/applications/testapps/ts2udp/main.c:145,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/testapps/ts2udp/main.c:146,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/ts2udp/main.c:147,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 61
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 149
    functionName: main
    functionSourceFile: /src/gpac/applications/testapps/ts2udp/main.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_set_progress
    - gf_sk_del
    - gf_sema_notify
    - memset
    - gf_fopen
    - atoi
    - gf_sys_close
    - gf_m2ts_demux_new
    - fprintf
    - gf_m2ts_demux_del
    - gf_th_del
    - gf_fseek
    - gf_sema_del
    - gf_th_set_priority
    - gf_sk_setup_multicast
    - feof
    - gf_ftell
    - gf_th_run
    - gf_sk_bind
    - gf_fread
    - gf_th_new
    - gf_sleep
    - gf_sema_new
    - gf_malloc
    - gf_fclose
    - gf_sk_new
    - gf_m2ts_process_data
    - gf_sys_init
    - gf_sk_is_multicast_address
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/applications/testapps/hevcbench/main.c:142,1
    - Dst: glShaderSource
      Src: /src/gpac/applications/testapps/hevcbench/main.c:143,1
    - Dst: glCompileShader
      Src: /src/gpac/applications/testapps/hevcbench/main.c:144,1
    - Dst: glGetShaderiv
      Src: /src/gpac/applications/testapps/hevcbench/main.c:146,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/testapps/hevcbench/main.c:148,1
    - Dst: glGetInfoLogARB
      Src: /src/gpac/applications/testapps/hevcbench/main.c:150,1
    - Dst: glGetInfoLogARB
      Src: /src/gpac/applications/testapps/hevcbench/main.c:152,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/testapps/hevcbench/main.c:154,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/hevcbench/main.c:155,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - shader_id
    - name
    - source
    argTypes:
    - GF_SHADERID
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 159
    functionName: sdl_compile_shader
    functionSourceFile: /src/gpac/applications/testapps/hevcbench/main.c
    functionUses: 0
    functionsReached:
    - gf_free
    - glGetInfoLogARB
    - glGetShaderiv
    - GF_LOG
    - strlen
    - glCompileShader
    - glShaderSource
    - gf_malloc
    linkageType: ''
    returnType: Bool
    signature: Bool sdl_compile_shader(GF_SHADERID shader_id, const char *name, const
      char *source)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: SDL_GL_SetAttribute
      Src: /src/gpac/applications/testapps/hevcbench/main.c:176,1
    - Dst: SDL_GL_SetAttribute
      Src: /src/gpac/applications/testapps/hevcbench/main.c:177,1
    - Dst: SDL_GL_SetAttribute
      Src: /src/gpac/applications/testapps/hevcbench/main.c:178,1
    - Dst: SDL_GL_SetAttribute
      Src: /src/gpac/applications/testapps/hevcbench/main.c:179,1
    - Dst: SDL_GL_SetAttribute
      Src: /src/gpac/applications/testapps/hevcbench/main.c:180,1
    - Dst: SDL_GL_SetAttribute
      Src: /src/gpac/applications/testapps/hevcbench/main.c:181,1
    - Dst: SDL_CreateWindow
      Src: /src/gpac/applications/testapps/hevcbench/main.c:191,1
    - Dst: SDL_GL_CreateContext
      Src: /src/gpac/applications/testapps/hevcbench/main.c:192,1
    - Dst: SDL_GL_MakeCurrent
      Src: /src/gpac/applications/testapps/hevcbench/main.c:193,1
    - Dst: SDL_CreateRenderer
      Src: /src/gpac/applications/testapps/hevcbench/main.c:195,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/testapps/hevcbench/main.c:206,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/hevcbench/main.c:207,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/testapps/hevcbench/main.c:212,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/hevcbench/main.c:213,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/testapps/hevcbench/main.c:214,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/hevcbench/main.c:215,1
    - Dst: glClear
      Src: /src/gpac/applications/testapps/hevcbench/main.c:217,1
    - Dst: glViewport
      Src: /src/gpac/applications/testapps/hevcbench/main.c:218,1
    - Dst: gf_mx_init
      Src: /src/gpac/applications/testapps/hevcbench/main.c:220,1
    - Dst: gf_mx_ortho
      Src: /src/gpac/applications/testapps/hevcbench/main.c:223,1
    - Dst: glMatrixMode
      Src: /src/gpac/applications/testapps/hevcbench/main.c:224,1
    - Dst: glLoadMatrixf
      Src: /src/gpac/applications/testapps/hevcbench/main.c:225,1
    - Dst: glMatrixMode
      Src: /src/gpac/applications/testapps/hevcbench/main.c:228,1
    - Dst: glLoadIdentity
      Src: /src/gpac/applications/testapps/hevcbench/main.c:229,1
    - Dst: glMatrixMode
      Src: /src/gpac/applications/testapps/hevcbench/main.c:231,1
    - Dst: glLoadIdentity
      Src: /src/gpac/applications/testapps/hevcbench/main.c:232,1
    - Dst: glClear
      Src: /src/gpac/applications/testapps/hevcbench/main.c:234,1
    - Dst: glDisable
      Src: /src/gpac/applications/testapps/hevcbench/main.c:235,1
    - Dst: glDisable
      Src: /src/gpac/applications/testapps/hevcbench/main.c:236,1
    - Dst: glHint
      Src: /src/gpac/applications/testapps/hevcbench/main.c:237,1
    - Dst: glHint
      Src: /src/gpac/applications/testapps/hevcbench/main.c:238,1
    - Dst: glBlendFunc
      Src: /src/gpac/applications/testapps/hevcbench/main.c:239,1
    - Dst: glDisable
      Src: /src/gpac/applications/testapps/hevcbench/main.c:240,1
    - Dst: glDisable
      Src: /src/gpac/applications/testapps/hevcbench/main.c:241,1
    - Dst: glDisable
      Src: /src/gpac/applications/testapps/hevcbench/main.c:242,1
    - Dst: glDisable
      Src: /src/gpac/applications/testapps/hevcbench/main.c:243,1
    - Dst: glDisable
      Src: /src/gpac/applications/testapps/hevcbench/main.c:244,1
    - Dst: glDisable
      Src: /src/gpac/applications/testapps/hevcbench/main.c:245,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:249,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:250,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:251,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:252,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:253,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:254,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:255,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:256,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:257,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:258,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:259,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:260,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:261,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:262,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:263,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:264,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:265,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:266,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:267,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:268,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:269,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:270,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:271,1
    - Dst: GET_GLFUN
      Src: /src/gpac/applications/testapps/hevcbench/main.c:272,1
    - Dst: glCreateProgram
      Src: /src/gpac/applications/testapps/hevcbench/main.c:275,1
    - Dst: glCreateShader
      Src: /src/gpac/applications/testapps/hevcbench/main.c:276,1
    - Dst: sdl_compile_shader
      Src: /src/gpac/applications/testapps/hevcbench/main.c:277,1
    - Dst: glCreateShader
      Src: /src/gpac/applications/testapps/hevcbench/main.c:279,1
    - Dst: sdl_compile_shader
      Src: /src/gpac/applications/testapps/hevcbench/main.c:280,1
    - Dst: glAttachShader
      Src: /src/gpac/applications/testapps/hevcbench/main.c:282,1
    - Dst: glAttachShader
      Src: /src/gpac/applications/testapps/hevcbench/main.c:283,1
    - Dst: glLinkProgram
      Src: /src/gpac/applications/testapps/hevcbench/main.c:284,1
    - Dst: glGenTextures
      Src: /src/gpac/applications/testapps/hevcbench/main.c:286,1
    - Dst: glEnable
      Src: /src/gpac/applications/testapps/hevcbench/main.c:289,1
    - Dst: glBindTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:290,1
    - Dst: glPixelStorei
      Src: /src/gpac/applications/testapps/hevcbench/main.c:291,1
    - Dst: glPixelTransferi
      Src: /src/gpac/applications/testapps/hevcbench/main.c:293,1
    - Dst: glTexParameteri
      Src: /src/gpac/applications/testapps/hevcbench/main.c:296,1
    - Dst: glTexParameteri
      Src: /src/gpac/applications/testapps/hevcbench/main.c:297,1
    - Dst: glTexParameteri
      Src: /src/gpac/applications/testapps/hevcbench/main.c:298,1
    - Dst: glTexParameteri
      Src: /src/gpac/applications/testapps/hevcbench/main.c:299,1
    - Dst: glPixelStorei
      Src: /src/gpac/applications/testapps/hevcbench/main.c:302,1
    - Dst: glPixelStorei
      Src: /src/gpac/applications/testapps/hevcbench/main.c:304,1
    - Dst: glDisable
      Src: /src/gpac/applications/testapps/hevcbench/main.c:306,1
    - Dst: glUseProgram
      Src: /src/gpac/applications/testapps/hevcbench/main.c:310,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/applications/testapps/hevcbench/main.c:313,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/testapps/hevcbench/main.c:315,1
    - Dst: glUniform1i
      Src: /src/gpac/applications/testapps/hevcbench/main.c:318,1
    - Dst: glUseProgram
      Src: /src/gpac/applications/testapps/hevcbench/main.c:332,1
    - Dst: glGenBuffers
      Src: /src/gpac/applications/testapps/hevcbench/main.c:341,1
    - Dst: glGenBuffers
      Src: /src/gpac/applications/testapps/hevcbench/main.c:342,1
    - Dst: glGenBuffers
      Src: /src/gpac/applications/testapps/hevcbench/main.c:343,1
    - Dst: glBindBuffer
      Src: /src/gpac/applications/testapps/hevcbench/main.c:345,1
    - Dst: glBufferData
      Src: /src/gpac/applications/testapps/hevcbench/main.c:346,1
    - Dst: glBindBuffer
      Src: /src/gpac/applications/testapps/hevcbench/main.c:348,1
    - Dst: glBufferData
      Src: /src/gpac/applications/testapps/hevcbench/main.c:349,1
    - Dst: glBindBuffer
      Src: /src/gpac/applications/testapps/hevcbench/main.c:351,1
    - Dst: glBufferData
      Src: /src/gpac/applications/testapps/hevcbench/main.c:352,1
    - Dst: glBindBuffer
      Src: /src/gpac/applications/testapps/hevcbench/main.c:354,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 140
    argCount: 5
    argNames:
    - _width
    - _height
    - _bpp
    - stride
    - use_pbo
    argTypes:
    - u32
    - u32
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 165
    functionDepth: 2
    functionLinenumber: 165
    functionLinenumberEnd: 356
    functionName: sdl_init
    functionSourceFile: /src/gpac/applications/testapps/hevcbench/main.c
    functionUses: 0
    functionsReached:
    - SDL_GL_SetAttribute
    - glPixelStorei
    - sdl_compile_shader
    - glBufferData
    - memset
    - glAttachShader
    - SDL_CreateWindow
    - glCreateProgram
    - glBindTexture
    - glViewport
    - gf_mx_init
    - glMatrixMode
    - SDL_CreateRenderer
    - glDisable
    - glPixelTransferi
    - glTexParameteri
    - GET_GLFUN
    - glLoadIdentity
    - GF_LOG
    - glGenBuffers
    - glLinkProgram
    - glGetUniformLocation
    - glLoadMatrixf
    - gf_malloc
    - glUniform1i
    - glEnable
    - glBindBuffer
    - SDL_GL_CreateContext
    - gf_mx_ortho
    - SDL_GL_MakeCurrent
    - glCreateShader
    - glClear
    - glBlendFunc
    - glUseProgram
    - glGenTextures
    - glHint
    linkageType: ''
    returnType: void
    signature: void sdl_init(u32 _width, u32 _height, u32 _bpp, u32 stride, Bool use_pbo)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: DEL_SHADER
      Src: /src/gpac/applications/testapps/hevcbench/main.c:360,1
    - Dst: DEL_SHADER
      Src: /src/gpac/applications/testapps/hevcbench/main.c:361,1
    - Dst: DEL_PROGRAM
      Src: /src/gpac/applications/testapps/hevcbench/main.c:362,1
    - Dst: glDeleteBuffers
      Src: /src/gpac/applications/testapps/hevcbench/main.c:365,1
    - Dst: glDeleteBuffers
      Src: /src/gpac/applications/testapps/hevcbench/main.c:366,1
    - Dst: glDeleteBuffers
      Src: /src/gpac/applications/testapps/hevcbench/main.c:367,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/hevcbench/main.c:370,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/hevcbench/main.c:371,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/hevcbench/main.c:372,1
    - Dst: SDL_GL_DeleteContext
      Src: /src/gpac/applications/testapps/hevcbench/main.c:374,1
    - Dst: SDL_DestroyRenderer
      Src: /src/gpac/applications/testapps/hevcbench/main.c:375,1
    - Dst: SDL_DestroyWindow
      Src: /src/gpac/applications/testapps/hevcbench/main.c:376,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 358
    functionDepth: 0
    functionLinenumber: 358
    functionLinenumberEnd: 377
    functionName: sdl_close
    functionSourceFile: /src/gpac/applications/testapps/hevcbench/main.c
    functionUses: 0
    functionsReached:
    - gf_free
    - DEL_PROGRAM
    - SDL_DestroyRenderer
    - DEL_SHADER
    - SDL_GL_DeleteContext
    - glDeleteBuffers
    - SDL_DestroyWindow
    linkageType: ''
    returnType: void
    signature: void sdl_close()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: glBegin
      Src: /src/gpac/applications/testapps/hevcbench/main.c:384,1
    - Dst: glVertex3f
      Src: /src/gpac/applications/testapps/hevcbench/main.c:386,1
    - Dst: glTexCoord2f
      Src: /src/gpac/applications/testapps/hevcbench/main.c:387,1
    - Dst: glVertex3f
      Src: /src/gpac/applications/testapps/hevcbench/main.c:389,1
    - Dst: glTexCoord2f
      Src: /src/gpac/applications/testapps/hevcbench/main.c:390,1
    - Dst: glVertex3f
      Src: /src/gpac/applications/testapps/hevcbench/main.c:392,1
    - Dst: glTexCoord2f
      Src: /src/gpac/applications/testapps/hevcbench/main.c:393,1
    - Dst: glVertex3f
      Src: /src/gpac/applications/testapps/hevcbench/main.c:395,1
    - Dst: glTexCoord2f
      Src: /src/gpac/applications/testapps/hevcbench/main.c:396,1
    - Dst: glEnd
      Src: /src/gpac/applications/testapps/hevcbench/main.c:398,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 379
    functionDepth: 0
    functionLinenumber: 379
    functionLinenumberEnd: 399
    functionName: sdl_draw_quad
    functionSourceFile: /src/gpac/applications/testapps/hevcbench/main.c
    functionUses: 0
    functionsReached:
    - glTexCoord2f
    - glBegin
    - glEnd
    - glVertex3f
    linkageType: ''
    returnType: void
    signature: void sdl_draw_quad()
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: glEnable
      Src: /src/gpac/applications/testapps/hevcbench/main.c:434,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/hevcbench/main.c:436,1
    - Dst: glBindTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:440,1
    - Dst: glPixelStorei
      Src: /src/gpac/applications/testapps/hevcbench/main.c:441,1
    - Dst: glTexImage2D
      Src: /src/gpac/applications/testapps/hevcbench/main.c:442,1
    - Dst: glBindTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:444,1
    - Dst: glPixelStorei
      Src: /src/gpac/applications/testapps/hevcbench/main.c:445,1
    - Dst: glTexImage2D
      Src: /src/gpac/applications/testapps/hevcbench/main.c:446,1
    - Dst: glBindTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:448,1
    - Dst: glPixelStorei
      Src: /src/gpac/applications/testapps/hevcbench/main.c:449,1
    - Dst: glTexImage2D
      Src: /src/gpac/applications/testapps/hevcbench/main.c:450,1
    - Dst: glPixelStorei
      Src: /src/gpac/applications/testapps/hevcbench/main.c:452,1
    - Dst: glPixelStorei
      Src: /src/gpac/applications/testapps/hevcbench/main.c:462,1
    - Dst: glBindBuffer
      Src: /src/gpac/applications/testapps/hevcbench/main.c:464,1
    - Dst: glMapBuffer
      Src: /src/gpac/applications/testapps/hevcbench/main.c:465,1
    - Dst: memcpy
      Src: /src/gpac/applications/testapps/hevcbench/main.c:467,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/hevcbench/main.c:469,1
    - Dst: memcpy
      Src: /src/gpac/applications/testapps/hevcbench/main.c:483,1
    - Dst: memmove
      Src: /src/gpac/applications/testapps/hevcbench/main.c:485,1
    - Dst: glUnmapBuffer
      Src: /src/gpac/applications/testapps/hevcbench/main.c:497,1
    - Dst: glBindBuffer
      Src: /src/gpac/applications/testapps/hevcbench/main.c:499,1
    - Dst: glMapBuffer
      Src: /src/gpac/applications/testapps/hevcbench/main.c:500,1
    - Dst: memcpy
      Src: /src/gpac/applications/testapps/hevcbench/main.c:502,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/hevcbench/main.c:504,1
    - Dst: memcpy
      Src: /src/gpac/applications/testapps/hevcbench/main.c:518,1
    - Dst: memmove
      Src: /src/gpac/applications/testapps/hevcbench/main.c:520,1
    - Dst: glUnmapBuffer
      Src: /src/gpac/applications/testapps/hevcbench/main.c:532,1
    - Dst: glBindBuffer
      Src: /src/gpac/applications/testapps/hevcbench/main.c:534,1
    - Dst: glMapBuffer
      Src: /src/gpac/applications/testapps/hevcbench/main.c:535,1
    - Dst: memcpy
      Src: /src/gpac/applications/testapps/hevcbench/main.c:537,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/hevcbench/main.c:539,1
    - Dst: memcpy
      Src: /src/gpac/applications/testapps/hevcbench/main.c:549,1
    - Dst: memmove
      Src: /src/gpac/applications/testapps/hevcbench/main.c:551,1
    - Dst: glUnmapBuffer
      Src: /src/gpac/applications/testapps/hevcbench/main.c:563,1
    - Dst: glBindTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:571,1
    - Dst: glBindBuffer
      Src: /src/gpac/applications/testapps/hevcbench/main.c:572,1
    - Dst: glPixelStorei
      Src: /src/gpac/applications/testapps/hevcbench/main.c:574,1
    - Dst: glTexImage2D
      Src: /src/gpac/applications/testapps/hevcbench/main.c:576,1
    - Dst: glBindTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:580,1
    - Dst: glBindBuffer
      Src: /src/gpac/applications/testapps/hevcbench/main.c:581,1
    - Dst: glPixelStorei
      Src: /src/gpac/applications/testapps/hevcbench/main.c:583,1
    - Dst: glTexImage2D
      Src: /src/gpac/applications/testapps/hevcbench/main.c:585,1
    - Dst: glBindTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:588,1
    - Dst: glBindBuffer
      Src: /src/gpac/applications/testapps/hevcbench/main.c:589,1
    - Dst: glPixelStorei
      Src: /src/gpac/applications/testapps/hevcbench/main.c:591,1
    - Dst: glTexImage2D
      Src: /src/gpac/applications/testapps/hevcbench/main.c:593,1
    - Dst: glBindBuffer
      Src: /src/gpac/applications/testapps/hevcbench/main.c:597,1
    - Dst: glPixelStorei
      Src: /src/gpac/applications/testapps/hevcbench/main.c:598,1
    - Dst: glBindTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:600,1
    - Dst: glPixelStorei
      Src: /src/gpac/applications/testapps/hevcbench/main.c:601,1
    - Dst: glTexSubImage2D
      Src: /src/gpac/applications/testapps/hevcbench/main.c:602,1
    - Dst: glBindTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:603,1
    - Dst: glBindTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:605,1
    - Dst: glPixelStorei
      Src: /src/gpac/applications/testapps/hevcbench/main.c:606,1
    - Dst: glTexSubImage2D
      Src: /src/gpac/applications/testapps/hevcbench/main.c:607,1
    - Dst: glBindTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:608,1
    - Dst: glBindTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:610,1
    - Dst: glPixelStorei
      Src: /src/gpac/applications/testapps/hevcbench/main.c:611,1
    - Dst: glTexSubImage2D
      Src: /src/gpac/applications/testapps/hevcbench/main.c:612,1
    - Dst: glBindTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:613,1
    - Dst: glPixelStorei
      Src: /src/gpac/applications/testapps/hevcbench/main.c:615,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/hevcbench/main.c:617,1
    - Dst: glUseProgram
      Src: /src/gpac/applications/testapps/hevcbench/main.c:625,1
    - Dst: glActiveTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:627,1
    - Dst: glBindTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:628,1
    - Dst: glActiveTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:630,1
    - Dst: glBindTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:631,1
    - Dst: glActiveTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:633,1
    - Dst: glBindTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:634,1
    - Dst: glTexEnvf
      Src: /src/gpac/applications/testapps/hevcbench/main.c:636,1
    - Dst: glClientActiveTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:637,1
    - Dst: sdl_draw_quad
      Src: /src/gpac/applications/testapps/hevcbench/main.c:639,1
    - Dst: glDisable
      Src: /src/gpac/applications/testapps/hevcbench/main.c:641,1
    - Dst: glUseProgram
      Src: /src/gpac/applications/testapps/hevcbench/main.c:642,1
    - Dst: glActiveTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:644,1
    - Dst: glBindTexture
      Src: /src/gpac/applications/testapps/hevcbench/main.c:645,1
    - Dst: SDL_GL_SwapWindow
      Src: /src/gpac/applications/testapps/hevcbench/main.c:647,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/hevcbench/main.c:649,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 165
    argCount: 7
    argNames:
    - pY
    - pU
    - pV
    - w
    - h
    - bit_depth
    - stride
    argTypes:
    - u8*
    - u8*
    - u8*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 402
    functionDepth: 1
    functionLinenumber: 402
    functionLinenumberEnd: 652
    functionName: sdl_draw_frame
    functionSourceFile: /src/gpac/applications/testapps/hevcbench/main.c
    functionUses: 0
    functionsReached:
    - glTexSubImage2D
    - glPixelStorei
    - glMapBuffer
    - glClientActiveTexture
    - memset
    - glActiveTexture
    - glBindTexture
    - memcpy
    - sdl_draw_quad
    - glDisable
    - memmove
    - SDL_GL_SwapWindow
    - gf_sys_clock_high_res
    - glBindBuffer
    - glUnmapBuffer
    - glEnable
    - glTexImage2D
    - glTexEnvf
    - glUseProgram
    linkageType: ''
    returnType: void
    signature: void sdl_draw_frame(u8 *pY, u8 *pU, u8 *pV, u32 w, u32 h, u32 bit_depth,
      u32 stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/hevcbench/main.c:659,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/hevcbench/main.c:661,1
    - Dst: sdl_draw_frame
      Src: /src/gpac/applications/testapps/hevcbench/main.c:671,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/hevcbench/main.c:674,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/hevcbench/main.c:679,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 680
      start: 655
    functionDepth: 2
    functionLinenumber: 655
    functionLinenumberEnd: 680
    functionName: sdl_bench
    functionSourceFile: /src/gpac/applications/testapps/hevcbench/main.c
    functionUses: 0
    functionsReached:
    - gf_sys_clock_high_res
    - sdl_draw_frame
    - fprintf
    linkageType: ''
    returnType: void
    signature: void sdl_bench()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/hevcbench/main.c:684,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 698
      start: 682
    functionDepth: 0
    functionLinenumber: 682
    functionLinenumberEnd: 698
    functionName: PrintUsage
    functionSourceFile: /src/gpac/applications/testapps/hevcbench/main.c
    functionUses: 1
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void PrintUsage()
  - BBCount: 50
    BranchProfiles: []
    Callsites:
    - Dst: PrintUsage
      Src: /src/gpac/applications/testapps/hevcbench/main.c:727,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/hevcbench/main.c:737,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/hevcbench/main.c:738,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/hevcbench/main.c:739,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/hevcbench/main.c:740,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/hevcbench/main.c:741,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/hevcbench/main.c:742,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/hevcbench/main.c:743,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/hevcbench/main.c:744,1
    - Dst: strncmp
      Src: /src/gpac/applications/testapps/hevcbench/main.c:745,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/hevcbench/main.c:745,1
    - Dst: strncmp
      Src: /src/gpac/applications/testapps/hevcbench/main.c:746,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/hevcbench/main.c:746,1
    - Dst: strncmp
      Src: /src/gpac/applications/testapps/hevcbench/main.c:747,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/hevcbench/main.c:748,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/hevcbench/main.c:749,1
    - Dst: strncmp
      Src: /src/gpac/applications/testapps/hevcbench/main.c:752,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/hevcbench/main.c:752,1
    - Dst: strncmp
      Src: /src/gpac/applications/testapps/hevcbench/main.c:753,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/hevcbench/main.c:754,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/hevcbench/main.c:755,1
    - Dst: strncmp
      Src: /src/gpac/applications/testapps/hevcbench/main.c:758,1
    - Dst: fopen
      Src: /src/gpac/applications/testapps/hevcbench/main.c:759,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/hevcbench/main.c:761,1
    - Dst: PrintUsage
      Src: /src/gpac/applications/testapps/hevcbench/main.c:762,1
    - Dst: gf_sys_init
      Src: /src/gpac/applications/testapps/hevcbench/main.c:773,1
    - Dst: gf_sys_init
      Src: /src/gpac/applications/testapps/hevcbench/main.c:775,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/testapps/hevcbench/main.c:777,1
    - Dst: sdl_init
      Src: /src/gpac/applications/testapps/hevcbench/main.c:780,1
    - Dst: sdl_bench
      Src: /src/gpac/applications/testapps/hevcbench/main.c:781,1
    - Dst: sdl_close
      Src: /src/gpac/applications/testapps/hevcbench/main.c:782,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/testapps/hevcbench/main.c:783,1
    - Dst: PrintUsage
      Src: /src/gpac/applications/testapps/hevcbench/main.c:787,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/testapps/hevcbench/main.c:788,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/testapps/hevcbench/main.c:793,1
    - Dst: sdl_close
      Src: /src/gpac/applications/testapps/hevcbench/main.c:795,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/testapps/hevcbench/main.c:796,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/testapps/hevcbench/main.c:800,1
    - Dst: gf_isom_get_hevc_lhvc_type
      Src: /src/gpac/applications/testapps/hevcbench/main.c:801,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/testapps/hevcbench/main.c:808,1
    - Dst: sdl_close
      Src: /src/gpac/applications/testapps/hevcbench/main.c:809,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/testapps/hevcbench/main.c:810,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/applications/testapps/hevcbench/main.c:814,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/testapps/hevcbench/main.c:818,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/hevcbench/main.c:819,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/applications/testapps/hevcbench/main.c:821,1
    - Dst: libOpenHevcInit
      Src: /src/gpac/applications/testapps/hevcbench/main.c:822,1
    - Dst: libOpenHevcCopyExtraData
      Src: /src/gpac/applications/testapps/hevcbench/main.c:824,1
    - Dst: libOpenHevcSetActiveDecoders
      Src: /src/gpac/applications/testapps/hevcbench/main.c:827,1
    - Dst: libOpenHevcSetViewLayers
      Src: /src/gpac/applications/testapps/hevcbench/main.c:828,1
    - Dst: libOpenHevcStartDecoder
      Src: /src/gpac/applications/testapps/hevcbench/main.c:830,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/testapps/hevcbench/main.c:831,1
    - Dst: gf_isom_set_sample_padding
      Src: /src/gpac/applications/testapps/hevcbench/main.c:832,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/hevcbench/main.c:836,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/hevcbench/main.c:845,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/testapps/hevcbench/main.c:846,1
    - Dst: libOpenHevcDecode
      Src: /src/gpac/applications/testapps/hevcbench/main.c:848,1
    - Dst: libOpenHevcGetOutput
      Src: /src/gpac/applications/testapps/hevcbench/main.c:852,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/hevcbench/main.c:853,1
    - Dst: libOpenHevcGetOutput
      Src: /src/gpac/applications/testapps/hevcbench/main.c:856,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/hevcbench/main.c:857,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/hevcbench/main.c:860,1
    - Dst: sdl_init
      Src: /src/gpac/applications/testapps/hevcbench/main.c:861,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/hevcbench/main.c:863,1
    - Dst: sdl_draw_frame
      Src: /src/gpac/applications/testapps/hevcbench/main.c:866,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/hevcbench/main.c:869,1
    - Dst: libOpenHevcGetPictureInfoCpy
      Src: /src/gpac/applications/testapps/hevcbench/main.c:871,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/hevcbench/main.c:872,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/hevcbench/main.c:875,1
    - Dst: sdl_init
      Src: /src/gpac/applications/testapps/hevcbench/main.c:883,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/hevcbench/main.c:885,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/hevcbench/main.c:891,1
    - Dst: libOpenHevcGetOutput
      Src: /src/gpac/applications/testapps/hevcbench/main.c:900,1
    - Dst: gf_color_write_yv12_10_to_yuv
      Src: /src/gpac/applications/testapps/hevcbench/main.c:902,1
    - Dst: libOpenHevcGetOutputCpy
      Src: /src/gpac/applications/testapps/hevcbench/main.c:911,1
    - Dst: sdl_draw_frame
      Src: /src/gpac/applications/testapps/hevcbench/main.c:914,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/applications/testapps/hevcbench/main.c:924,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/hevcbench/main.c:925,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/hevcbench/main.c:926,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/hevcbench/main.c:929,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/testapps/hevcbench/main.c:932,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/testapps/hevcbench/main.c:936,1
    - Dst: gf_prompt_has_input
      Src: /src/gpac/applications/testapps/hevcbench/main.c:941,1
    - Dst: gf_prompt_get_char
      Src: /src/gpac/applications/testapps/hevcbench/main.c:942,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/hevcbench/main.c:952,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/hevcbench/main.c:955,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/hevcbench/main.c:959,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/testapps/hevcbench/main.c:970,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/hevcbench/main.c:971,1
    - Dst: libOpenHevcClose
      Src: /src/gpac/applications/testapps/hevcbench/main.c:973,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/testapps/hevcbench/main.c:974,1
    - Dst: fclose
      Src: /src/gpac/applications/testapps/hevcbench/main.c:976,1
    - Dst: sdl_close
      Src: /src/gpac/applications/testapps/hevcbench/main.c:979,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/testapps/hevcbench/main.c:981,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 217
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 702
    functionDepth: 3
    functionLinenumber: 702
    functionLinenumberEnd: 983
    functionName: main
    functionSourceFile: /src/gpac/applications/testapps/hevcbench/main.c
    functionUses: 0
    functionsReached:
    - libOpenHevcSetViewLayers
    - gf_odf_desc_del
    - sdl_init
    - gf_isom_get_sample_count
    - PrintUsage
    - gf_isom_get_hevc_lhvc_type
    - gf_prompt_has_input
    - memset
    - libOpenHevcClose
    - atoi
    - libOpenHevcStartDecoder
    - libOpenHevcInit
    - gf_sys_close
    - fprintf
    - gf_sys_get_rti
    - gf_isom_sample_del
    - libOpenHevcSetActiveDecoders
    - fopen
    - sdl_draw_frame
    - gf_isom_get_track_count
    - libOpenHevcGetOutput
    - libOpenHevcGetPictureInfoCpy
    - strncmp
    - sdl_bench
    - fclose
    - sdl_close
    - gf_isom_close
    - gf_isom_get_sample
    - gf_isom_get_esd
    - gf_sleep
    - gf_log_set_tool_level
    - gf_sys_clock_high_res
    - gf_prompt_get_char
    - libOpenHevcCopyExtraData
    - gf_isom_open
    - gf_sys_init
    - libOpenHevcDecode
    - gf_color_write_yv12_10_to_yuv
    - strcmp
    - gf_isom_set_sample_padding
    - libOpenHevcGetOutputCpy
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ret
    - ','
    - funname
    - ','
    - args
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: GLDECL
    functionSourceFile: /src/gpac/applications/testapps/hevcbench/defbench.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GLDECL(ret, funname, args)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - funname
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 58
    functionName: GLDECL_STATIC
    functionSourceFile: /src/gpac/applications/testapps/hevcbench/defbench.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GLDECL_STATIC(funname)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - funname
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 66
    functionName: GET_GLFUN
    functionSourceFile: /src/gpac/applications/testapps/hevcbench/defbench.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_GLFUN(funname)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - funname
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 69
    functionName: GET_GLFUN
    functionSourceFile: /src/gpac/applications/testapps/hevcbench/defbench.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_GLFUN(funname)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - funname
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 73
    functionName: GET_GLFUN
    functionSourceFile: /src/gpac/applications/testapps/hevcbench/defbench.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_GLFUN(funname)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 78
    functionName: DEL_SHADER
    functionSourceFile: /src/gpac/applications/testapps/hevcbench/defbench.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEL_SHADER(_a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 79
    functionName: DEL_PROGRAM
    functionSourceFile: /src/gpac/applications/testapps/hevcbench/defbench.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEL_PROGRAM(_a)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:87,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:91,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:100,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:103,1
    - Dst: gf_mx_v
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:110,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:114,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:122,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:126,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:138,1
    - Dst: gf_isom_reset_tables
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:140,1
    - Dst: gf_isom_reset_data_offset
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:143,1
    - Dst: memmove
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:146,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:149,1
    - Dst: gf_isom_refresh_fragmented
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:150,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:154,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:158,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:159,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:159,1
    - Dst: gf_mx_v
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:162,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 55
    argCount: 1
    argNames:
    - param
    argTypes:
    - void*
    assertStmts:
    - condition: (sample_count == 0)
      pos:
        line_end: 153
        line_start: 153
        source_file: /src/gpac/applications/testapps/fmp4demux/main.c
    constantsTouched: []
    func_position:
      end: 170
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 170
    functionName: iso_progressive_read_thread
    functionSourceFile: /src/gpac/applications/testapps/fmp4demux/main.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_isom_last_error
    - memmove
    - gf_isom_sample_del
    - gf_isom_reset_tables
    - gf_isom_get_sample_count
    - sprintf
    - gf_isom_reset_data_offset
    - assert
    - gf_isom_get_sample
    - gf_mx_v
    - gf_isom_refresh_fragmented
    - gf_error_to_string
    - gf_isom_get_track_by_id
    - fprintf
    linkageType: ''
    returnType: u32
    signature: u32 iso_progressive_read_thread(void *param)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:195,1
    - Dst: gf_sys_init
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:202,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:203,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:204,1
    - Dst: gf_sys_init
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:206,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:207,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:211,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:213,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:214,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:218,1
    - Dst: gf_ftell
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:219,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:220,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:223,1
    - Dst: gf_th_new
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:224,1
    - Dst: gf_mx_new
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:225,1
    - Dst: gf_th_run
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:230,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:234,1
    - Dst: gf_mx_p
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:239,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:243,1
    - Dst: gf_mx_v
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:244,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:249,1
    - Dst: fread
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:254,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:256,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:259,1
    - Dst: gf_mx_v
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:262,1
    - Dst: gf_isom_open_progressive
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:269,1
    - Dst: gf_isom_set_single_moof_mode
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:271,1
    - Dst: gf_mx_v
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:274,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:279,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:279,1
    - Dst: gf_isom_refresh_fragmented
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:285,1
    - Dst: gf_mx_v
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:288,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:291,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:291,1
    - Dst: gf_th_stop
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:304,1
    - Dst: gf_th_del
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:307,1
    - Dst: gf_mx_del
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:308,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:309,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:310,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:311,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/testapps/fmp4demux/main.c:312,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 85
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 315
    functionName: main
    functionSourceFile: /src/gpac/applications/testapps/fmp4demux/main.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memset
    - gf_fopen
    - fread
    - gf_sys_close
    - gf_mx_new
    - fprintf
    - gf_realloc
    - gf_th_del
    - gf_fseek
    - gf_th_stop
    - sprintf
    - gf_ftell
    - gf_isom_close
    - gf_th_run
    - gf_mx_p
    - gf_th_new
    - gf_mx_v
    - gf_error_to_string
    - gf_log_set_tool_level
    - gf_malloc
    - gf_isom_open_progressive
    - gf_fclose
    - gf_sys_init
    - gf_isom_set_single_moof_mode
    - gf_isom_refresh_fragmented
    - gf_mx_del
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 3
    argNames:
    - ts
    - evt_type
    - param
    argTypes:
    - GF_M2TS_Demuxer*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 67
    functionName: mpedemux_on_event
    functionSourceFile: /src/gpac/applications/testapps/mpedemux/main.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void mpedemux_on_event(GF_M2TS_Demuxer *ts, u32 evt_type, void *param)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/mpedemux/main.c:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionName: usage
    functionSourceFile: /src/gpac/applications/testapps/mpedemux/main.c
    functionUses: 3
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void usage()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: usage
      Src: /src/gpac/applications/testapps/mpedemux/main.c:81,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/testapps/mpedemux/main.c:85,1
    - Dst: gf_m2ts_demux_new
      Src: /src/gpac/applications/testapps/mpedemux/main.c:86,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/mpedemux/main.c:90,1
    - Dst: fread
      Src: /src/gpac/applications/testapps/mpedemux/main.c:94,1
    - Dst: gf_m2ts_process_data
      Src: /src/gpac/applications/testapps/mpedemux/main.c:97,1
    - Dst: gf_m2ts_demux_del
      Src: /src/gpac/applications/testapps/mpedemux/main.c:100,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/mpedemux/main.c:101,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 103
    functionName: main
    functionSourceFile: /src/gpac/applications/testapps/mpedemux/main.c
    functionUses: 0
    functionsReached:
    - gf_free
    - usage
    - GF_SAFEALLOC
    - gf_m2ts_process_data
    - gf_fopen
    - fread
    - gf_m2ts_demux_new
    - gf_m2ts_demux_del
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:12,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:18,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:21,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:21,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:24,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:24,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:27,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:27,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:30,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:30,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:35,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 3
    argNames:
    - ts
    - evt_type
    - par
    argTypes:
    - GF_M2TS_Demuxer*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 7
    functionDepth: 1
    functionLinenumber: 7
    functionLinenumberEnd: 41
    functionName: on_m2ts_event
    functionSourceFile: /src/gpac/applications/testapps/mpeg2ts/main.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_fwrite
    - fprintf
    linkageType: ''
    returnType: void
    signature: void on_m2ts_event(GF_M2TS_Demuxer *ts, u32 evt_type, void *par)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:49,1
    - Dst: gf_m2ts_demux_new
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:50,1
    - Dst: fseek
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:53,1
    - Dst: ftell
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:54,1
    - Dst: fseek
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:55,1
    - Dst: feof
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:58,1
    - Dst: fread
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:59,1
    - Dst: gf_m2ts_process_data
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:62,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:66,1
    - Dst: gf_m2ts_reset_parsers
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:67,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:68,1
    - Dst: feof
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:70,1
    - Dst: fread
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:71,1
    - Dst: gf_m2ts_process_data
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:74,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:77,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:79,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:81,1
    - Dst: gf_m2ts_demux_del
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:82,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/mpeg2ts/main.c:83,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 85
    functionName: main
    functionSourceFile: /src/gpac/applications/testapps/mpeg2ts/main.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - ftell
    - gf_set_progress
    - gf_fseek
    - gf_m2ts_demux_del
    - gf_m2ts_reset_parsers
    - gf_m2ts_process_data
    - feof
    - gf_fopen
    - fread
    - gf_m2ts_demux_new
    - fseek
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:52,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:53,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:54,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:56,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:57,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:58,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - as
    argTypes:
    - AdobeStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 62
    functionName: adobe_gen_stream_manifest
    functionSourceFile: /src/gpac/applications/testapps/ts2hds/f4m.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err adobe_gen_stream_manifest(AdobeStream *as)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_calloc
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:66,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:72,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:73,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:75,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:76,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:77,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:80,1
    - Dst: gf_calloc
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:84,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:87,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:88,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:90,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:91,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:92,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:93,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:94,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:97,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 27
    argCount: 1
    argNames:
    - id
    argTypes:
    - char*
    assertStmts:
    - condition: (0)
      pos:
        line_end: 75
        line_start: 75
        source_file: /src/gpac/applications/testapps/ts2hds/f4m.c
    - condition: (0)
      pos:
        line_end: 90
        line_start: 90
        source_file: /src/gpac/applications/testapps/ts2hds/f4m.c
    constantsTouched: []
    func_position:
      end: 101
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 101
    functionName: adobe_alloc_multirate_manifest
    functionSourceFile: /src/gpac/applications/testapps/ts2hds/f4m.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - assert
    - sprintf
    - gf_calloc
    - gf_fopen
    - gf_list_add
    - gf_list_del
    - fprintf
    linkageType: ''
    returnType: AdobeMultirate
    signature: AdobeMultirate *adobe_alloc_multirate_manifest(char *id)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:108,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:110,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:111,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:112,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:114,1
    - Dst: gf_list_rem
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:116,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:117,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:119,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:121,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - am
    argTypes:
    - AdobeMultirate*
    assertStmts:
    - condition: (as)
      pos:
        line_end: 111
        line_start: 111
        source_file: /src/gpac/applications/testapps/ts2hds/f4m.c
    constantsTouched: []
    func_position:
      end: 122
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 122
    functionName: adobe_free_multirate_manifest
    functionSourceFile: /src/gpac/applications/testapps/ts2hds/f4m.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_list_get
    - assert
    - gf_list_count
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void adobe_free_multirate_manifest(AdobeMultirate *am)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:133,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:134,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:135,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:136,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:137,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:139,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:140,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:141,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:142,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:144,1
    - Dst: gf_base64_encode
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:145,1
    - Dst: fwrite
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:146,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:148,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:149,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:151,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:156,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:157,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:158,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:159,1
    - Dst: adobe_gen_stream_manifest
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:162,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:165,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:167,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4m.c:170,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 31
    argCount: 3
    argNames:
    - am
    - bootstrap
    - bootstrap_size
    argTypes:
    - AdobeMultirate*
    - char*
    - size_t
    assertStmts:
    - condition: (am->streams)
      pos:
        line_end: 138
        line_start: 138
        source_file: /src/gpac/applications/testapps/ts2hds/f4m.c
    - condition: (0)
      pos:
        line_end: 148
        line_start: 148
        source_file: /src/gpac/applications/testapps/ts2hds/f4m.c
    - condition: (as)
      pos:
        line_end: 141
        line_start: 141
        source_file: /src/gpac/applications/testapps/ts2hds/f4m.c
    constantsTouched: []
    func_position:
      end: 173
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 173
    functionName: adobe_gen_multirate_manifest
    functionSourceFile: /src/gpac/applications/testapps/ts2hds/f4m.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_list_get
    - fwrite
    - assert
    - sprintf
    - gf_fwrite
    - gf_base64_encode
    - gf_list_count
    - adobe_gen_stream_manifest
    - gf_fopen
    - fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err adobe_gen_multirate_manifest(AdobeMultirate* am, char *bootstrap,
      size_t bootstrap_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/main.c:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - progname
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 55
    functionName: usage
    functionSourceFile: /src/gpac/applications/testapps/ts2hds/main.c
    functionUses: 4
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE usage(const char * progname)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/applications/testapps/ts2hds/main.c:67,1
    - Dst: strstr
      Src: /src/gpac/applications/testapps/ts2hds/main.c:67,1
    - Dst: usage
      Src: /src/gpac/applications/testapps/ts2hds/main.c:68,1
    - Dst: strnicmp
      Src: /src/gpac/applications/testapps/ts2hds/main.c:70,1
    - Dst: strnicmp
      Src: /src/gpac/applications/testapps/ts2hds/main.c:74,1
    - Dst: strnicmp
      Src: /src/gpac/applications/testapps/ts2hds/main.c:78,1
    - Dst: atoi
      Src: /src/gpac/applications/testapps/ts2hds/main.c:80,1
    - Dst: strnicmp
      Src: /src/gpac/applications/testapps/ts2hds/main.c:81,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/testapps/ts2hds/main.c:83,1
    - Dst: gf_sys_init
      Src: /src/gpac/applications/testapps/ts2hds/main.c:84,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/testapps/ts2hds/main.c:85,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/main.c:87,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/main.c:100,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/main.c:102,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/main.c:108,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/main.c:110,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 43
    argCount: 6
    argNames:
    - argc
    - argv
    - input
    - output
    - curr_time
    - segnum
    argTypes:
    - int
    - char**
    - char**
    - char**
    - u64*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 113
    functionName: parse_args
    functionSourceFile: /src/gpac/applications/testapps/ts2hds/main.c
    functionUses: 0
    functionsReached:
    - usage
    - strstr
    - gf_sys_init
    - strnicmp
    - atoi
    - gf_log_set_tool_level
    - gf_sys_close
    - fprintf
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE parse_args(int argc, char **argv, char **input, char **output,
      u64 *curr_time, u32 *segnum)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_init
      Src: /src/gpac/applications/testapps/ts2hds/main.c:130,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/testapps/ts2hds/main.c:131,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/ts2hds/main.c:139,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/ts2hds/main.c:141,1
    - Dst: parse_args
      Src: /src/gpac/applications/testapps/ts2hds/main.c:149,1
    - Dst: usage
      Src: /src/gpac/applications/testapps/ts2hds/main.c:150,1
    - Dst: adobe_alloc_multirate_manifest
      Src: /src/gpac/applications/testapps/ts2hds/main.c:154,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/ts2hds/main.c:162,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/testapps/ts2hds/main.c:163,1
    - Dst: gf_ftell
      Src: /src/gpac/applications/testapps/ts2hds/main.c:164,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/testapps/ts2hds/main.c:165,1
    - Dst: fread
      Src: /src/gpac/applications/testapps/ts2hds/main.c:166,1
    - Dst: gf_base64_decode
      Src: /src/gpac/applications/testapps/ts2hds/main.c:167,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/ts2hds/main.c:168,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/ts2hds/main.c:169,1
    - Dst: fwrite
      Src: /src/gpac/applications/testapps/ts2hds/main.c:170,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/ts2hds/main.c:171,1
    - Dst: abst_New
      Src: /src/gpac/applications/testapps/ts2hds/main.c:182,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/ts2hds/main.c:185,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/testapps/ts2hds/main.c:186,1
    - Dst: gf_ftell
      Src: /src/gpac/applications/testapps/ts2hds/main.c:187,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/testapps/ts2hds/main.c:188,1
    - Dst: fread
      Src: /src/gpac/applications/testapps/ts2hds/main.c:189,1
    - Dst: gf_base64_decode
      Src: /src/gpac/applications/testapps/ts2hds/main.c:190,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/ts2hds/main.c:192,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/testapps/ts2hds/main.c:193,1
    - Dst: gf_ftell
      Src: /src/gpac/applications/testapps/ts2hds/main.c:194,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/testapps/ts2hds/main.c:195,1
    - Dst: fread
      Src: /src/gpac/applications/testapps/ts2hds/main.c:196,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/testapps/ts2hds/main.c:198,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/main.c:200,1
    - Dst: abst_Read
      Src: /src/gpac/applications/testapps/ts2hds/main.c:201,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/testapps/ts2hds/main.c:202,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/ts2hds/main.c:204,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/testapps/ts2hds/main.c:205,1
    - Dst: abst_Write
      Src: /src/gpac/applications/testapps/ts2hds/main.c:206,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/applications/testapps/ts2hds/main.c:207,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/testapps/ts2hds/main.c:208,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/ts2hds/main.c:209,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/testapps/ts2hds/main.c:210,1
    - Dst: gf_base64_encode
      Src: /src/gpac/applications/testapps/ts2hds/main.c:211,1
    - Dst: fwrite
      Src: /src/gpac/applications/testapps/ts2hds/main.c:212,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/main.c:213,1
    - Dst: abst_dump
      Src: /src/gpac/applications/testapps/ts2hds/main.c:214,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/testapps/ts2hds/main.c:215,1
    - Dst: abst_del
      Src: /src/gpac/applications/testapps/ts2hds/main.c:216,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/ts2hds/main.c:229,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/testapps/ts2hds/main.c:230,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/main.c:232,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/ts2hds/main.c:232,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/main.c:233,1
    - Dst: gf_media_import
      Src: /src/gpac/applications/testapps/ts2hds/main.c:239,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/main.c:241,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/ts2hds/main.c:241,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/main.c:242,1
    - Dst: gf_media_import
      Src: /src/gpac/applications/testapps/ts2hds/main.c:250,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/main.c:252,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/ts2hds/main.c:252,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/main.c:253,1
    - Dst: adobize_segment
      Src: /src/gpac/applications/testapps/ts2hds/main.c:259,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/main.c:261,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/ts2hds/main.c:261,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/main.c:262,1
    - Dst: sprintf
      Src: /src/gpac/applications/testapps/ts2hds/main.c:268,1
    - Dst: gf_media_fragment_file
      Src: /src/gpac/applications/testapps/ts2hds/main.c:269,1
    - Dst: gf_isom_get_duration
      Src: /src/gpac/applications/testapps/ts2hds/main.c:269,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/testapps/ts2hds/main.c:269,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/main.c:271,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/ts2hds/main.c:271,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/main.c:272,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/testapps/ts2hds/main.c:275,1
    - Dst: adobe_gen_multirate_manifest
      Src: /src/gpac/applications/testapps/ts2hds/main.c:278,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/main.c:280,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/ts2hds/main.c:280,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/main.c:281,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/testapps/ts2hds/main.c:288,1
    - Dst: adobe_free_multirate_manifest
      Src: /src/gpac/applications/testapps/ts2hds/main.c:291,1
    - Dst: gf_free
      Src: /src/gpac/applications/testapps/ts2hds/main.c:294,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/testapps/ts2hds/main.c:299,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 122
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts:
    - condition: (0)
      pos:
        line_end: 252
        line_start: 252
        source_file: /src/gpac/applications/testapps/ts2hds/main.c
    - condition: (0)
      pos:
        line_end: 232
        line_start: 232
        source_file: /src/gpac/applications/testapps/ts2hds/main.c
    - condition: (0)
      pos:
        line_end: 241
        line_start: 241
        source_file: /src/gpac/applications/testapps/ts2hds/main.c
    - condition: (0)
      pos:
        line_end: 271
        line_start: 271
        source_file: /src/gpac/applications/testapps/ts2hds/main.c
    - condition: (abst->size<GF_MAX_PATH)
      pos:
        line_end: 199
        line_start: 199
        source_file: /src/gpac/applications/testapps/ts2hds/main.c
    - condition: (0)
      pos:
        line_end: 280
        line_start: 280
        source_file: /src/gpac/applications/testapps/ts2hds/main.c
    - condition: (0)
      pos:
        line_end: 261
        line_start: 261
        source_file: /src/gpac/applications/testapps/ts2hds/main.c
    constantsTouched: []
    func_position:
      end: 302
      start: 115
    functionDepth: 2
    functionLinenumber: 115
    functionLinenumberEnd: 302
    functionName: main
    functionSourceFile: /src/gpac/applications/testapps/ts2hds/main.c
    functionUses: 0
    functionsReached:
    - abst_New
    - gf_free
    - usage
    - gf_bs_new
    - abst_del
    - gf_isom_delete
    - gf_isom_get_timescale
    - gf_isom_get_duration
    - memset
    - gf_fopen
    - fread
    - gf_sys_close
    - fprintf
    - adobe_gen_multirate_manifest
    - gf_fseek
    - adobize_segment
    - sprintf
    - abst_Read
    - adobe_free_multirate_manifest
    - gf_ftell
    - assert
    - gf_bs_get_position
    - parse_args
    - gf_error_to_string
    - gf_log_set_tool_level
    - gf_media_import
    - gf_fclose
    - abst_dump
    - fwrite
    - adobe_alloc_multirate_manifest
    - gf_base64_decode
    - gf_isom_open
    - gf_sys_init
    - gf_bs_del
    - abst_Write
    - gf_base64_encode
    - gf_media_fragment_file
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: afra_New
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:42,1
    - Dst: gf_calloc
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:43,1
    - Dst: abst_New
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:44,1
    - Dst: asrt_New
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:45,1
    - Dst: gf_calloc
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:46,1
    - Dst: afrt_New
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:47,1
    - Dst: gf_calloc
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:48,1
    - Dst: gf_isom_get_duration
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:51,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:58,1
    - Dst: size_registry
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:61,1
    - Dst: get_box_reg_idx
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:61,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:65,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:70,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:75,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:77,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:77,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:78,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:83,1
    - Dst: size_registry
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:86,1
    - Dst: get_box_reg_idx
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:86,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:91,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:105,1
    - Dst: size_registry
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:108,1
    - Dst: get_box_reg_idx
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:108,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:114,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:116,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:116,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:117,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:121,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:123,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:123,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:124,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:131,1
    - Dst: size_registry
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:134,1
    - Dst: get_box_reg_idx
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:134,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:135,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:142,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:144,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:144,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:145,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:149,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:151,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:151,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:152,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:156,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:158,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:158,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:159,1
    - Dst: abst_Size
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:164,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:166,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:166,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:167,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:171,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:172,1
    - Dst: abst_Write
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:173,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:175,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:175,1
    - Dst: assert
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:176,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:177,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:180,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:188,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:188,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:189,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:189,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:190,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:190,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:191,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/testapps/ts2hds/f4v.c:191,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 113
    argCount: 2
    argNames:
    - isom_file
    - ctx
    argTypes:
    - GF_ISOFile*
    - AdobeHDSCtx*
    assertStmts:
    - condition: (0)
      pos:
        line_end: 77
        line_start: 77
        source_file: /src/gpac/applications/testapps/ts2hds/f4v.c
    - condition: (0)
      pos:
        line_end: 151
        line_start: 151
        source_file: /src/gpac/applications/testapps/ts2hds/f4v.c
    - condition: (0)
      pos:
        line_end: 166
        line_start: 166
        source_file: /src/gpac/applications/testapps/ts2hds/f4v.c
    - condition: (0)
      pos:
        line_end: 116
        line_start: 116
        source_file: /src/gpac/applications/testapps/ts2hds/f4v.c
    - condition: (0)
      pos:
        line_end: 175
        line_start: 175
        source_file: /src/gpac/applications/testapps/ts2hds/f4v.c
    - condition: (0)
      pos:
        line_end: 123
        line_start: 123
        source_file: /src/gpac/applications/testapps/ts2hds/f4v.c
    - condition: (0)
      pos:
        line_end: 144
        line_start: 144
        source_file: /src/gpac/applications/testapps/ts2hds/f4v.c
    - condition: (0)
      pos:
        line_end: 158
        line_start: 158
        source_file: /src/gpac/applications/testapps/ts2hds/f4v.c
    constantsTouched: []
    func_position:
      end: 194
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 194
    functionName: adobize_segment
    functionSourceFile: /src/gpac/applications/testapps/ts2hds/f4v.c
    functionUses: 1
    functionsReached:
    - abst_New
    - afra_New
    - size_registry
    - gf_bs_new
    - gf_isom_get_timescale
    - gf_isom_modify_alternate_brand
    - gf_isom_get_duration
    - gf_isom_set_brand_info
    - fprintf
    - asrt_New
    - afrt_New
    - gf_list_add
    - assert
    - gf_error_to_string
    - abst_Size
    - gf_malloc
    - get_box_reg_idx
    - abst_Write
    - gf_bs_del
    - gf_calloc
    - GF_4CC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err adobize_segment(GF_ISOFile *isom_file, AdobeHDSCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/largefile/main.c:5,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13
      start: 3
    functionDepth: 0
    functionLinenumber: 3
    functionLinenumberEnd: 13
    functionName: PrintUsage
    functionSourceFile: /src/gpac/applications/testapps/largefile/main.c
    functionUses: 2
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void PrintUsage()
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/largefile/main.c:28,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/largefile/main.c:29,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/largefile/main.c:30,1
    - Dst: atof
      Src: /src/gpac/applications/testapps/largefile/main.c:31,1
    - Dst: strcmp
      Src: /src/gpac/applications/testapps/largefile/main.c:34,1
    - Dst: PrintUsage
      Src: /src/gpac/applications/testapps/largefile/main.c:35,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/largefile/main.c:41,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/testapps/largefile/main.c:43,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/largefile/main.c:45,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/testapps/largefile/main.c:45,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/testapps/largefile/main.c:45,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/applications/testapps/largefile/main.c:49,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/applications/testapps/largefile/main.c:50,1
    - Dst: gf_isom_new_mpeg4_description
      Src: /src/gpac/applications/testapps/largefile/main.c:52,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/applications/testapps/largefile/main.c:54,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/testapps/largefile/main.c:56,1
    - Dst: memset
      Src: /src/gpac/applications/testapps/largefile/main.c:57,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/applications/testapps/largefile/main.c:62,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/largefile/main.c:65,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/testapps/largefile/main.c:68,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/largefile/main.c:71,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/testapps/largefile/main.c:72,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/largefile/main.c:76,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/testapps/largefile/main.c:77,1
    - Dst: fprintf
      Src: /src/gpac/applications/testapps/largefile/main.c:79,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 54
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 16
    functionDepth: 1
    functionLinenumber: 16
    functionLinenumberEnd: 83
    functionName: main
    functionSourceFile: /src/gpac/applications/testapps/largefile/main.c
    functionUses: 0
    functionsReached:
    - gf_isom_last_error
    - gf_isom_delete
    - atof
    - gf_odf_desc_esd_new
    - gf_isom_sample_del
    - gf_isom_new_mpeg4_description
    - gf_isom_open
    - PrintUsage
    - gf_isom_new_track
    - gf_isom_sample_new
    - memset
    - strcmp
    - gf_isom_add_sample
    - gf_error_to_string
    - gf_malloc
    - fprintf
    - gf_isom_close
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: LOGE
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: LOGE(...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 40
    functionName: LOGW
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: LOGW(...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _e
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 52
    functionName: GET_GPAC_JNI
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_GPAC_JNI(_e)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:110,1
    - Dst: JNIEnv*::GetObjectClass
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:111,1
    - Dst: gf_th_id
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:113,1
    - Dst: JNIEnv*::GetMethodID
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:115,1
    - Dst: JNIEnv*::GetMethodID
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:116,1
    - Dst: JNIEnv*::GetMethodID
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:117,1
    - Dst: JNIEnv*::GetMethodID
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:118,1
    - Dst: JNIEnv*::GetMethodID
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:119,1
    - Dst: JNIEnv*::DeleteLocalRef
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 3
    argNames:
    - envToSet
    - env
    - callback
    argTypes:
    - JavaEnvTh*
    - JNIEnv*
    - jobject
    assertStmts:
    - condition: ( envToSet )
      pos:
        line_end: 109
        line_start: 109
        source_file: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    constantsTouched: []
    func_position:
      end: 121
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 121
    functionName: gpac_jni_set_java_env
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - gf_th_id
    - JNIEnv*::DeleteLocalRef
    - assert
    - JNIEnv*::GetMethodID
    - JNIEnv*::GetObjectClass
    linkageType: ''
    returnType: void
    signature: void gpac_jni_set_java_env(JavaEnvTh * envToSet, JNIEnv *env, jobject
      callback)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: LOGE
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:128,1
    - Dst: pthread_getspecific
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:131,1
    - Dst: malloc
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:133,1
    - Dst: memset
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:136,1
    - Dst: AttachCurrentThread
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:137,1
    - Dst: LOGE
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:139,1
    - Dst: gf_th_id
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:139,1
    - Dst: free
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:140,1
    - Dst: gpac_jni_set_java_env
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:144,1
    - Dst: pthread_setspecific
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:145,1
    - Dst: LOGE
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:146,1
    - Dst: gf_th_id
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:146,1
    - Dst: free
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:147,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 1
    argNames:
    - gpac_jni
    argTypes:
    - GPAC_JNI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 151
    functionName: gpac_jni_get_env
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - gf_th_id
    - malloc
    - pthread_getspecific
    - LOGE
    - AttachCurrentThread
    - memset
    - pthread_setspecific
    - gpac_jni_set_java_env
    - free
    linkageType: ''
    returnType: JavaEnvTh
    signature: JavaEnvTh * gpac_jni_get_env(GPAC_JNI *gpac_jni)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gpac_jni_get_env
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:156,1
    - Dst: JavaEnvTh*::env::PushLocalFrame
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:159,1
    - Dst: JavaEnvTh*::env::NewStringUTF
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:160,1
    - Dst: JavaEnvTh*::env::NewStringUTF
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:161,1
    - Dst: JavaEnvTh*::env::CallVoidMethod
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:162,1
    - Dst: JavaEnvTh*::env::PopLocalFrame
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:163,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - gpac
    - msg
    - title
    - status
    argTypes:
    - GPAC_JNI*
    - char*
    - char*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 154
    functionDepth: 2
    functionLinenumber: 154
    functionLinenumberEnd: 165
    functionName: show_message
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - JavaEnvTh*::env::PushLocalFrame
    - JavaEnvTh*::env::CallVoidMethod
    - JavaEnvTh*::env::PopLocalFrame
    - JavaEnvTh*::env::NewStringUTF
    - gpac_jni_get_env
    linkageType: ''
    returnType: int
    signature: int show_message(GPAC_JNI *gpac, const char* msg, const char* title,
      GF_Err status)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_init
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:173,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:175,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:176,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:178,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:179,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:180,1
    - Dst: gf_log_set_tools_levels
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:184,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:184,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:185,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:188,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:190,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:191,1
    - Dst: gf_file_exists
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:193,1
    - Dst: gf_set_progress_callback
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:196,1
    - Dst: gf_fs_new_defaults
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:200,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:203,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:206,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:210,1
    - Dst: gf_sc_set_size
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:211,1
    - Dst: gf_fs_set_ui_callback
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:212,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:215,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 37
    argCount: 1
    argNames:
    - gpac
    argTypes:
    - GPAC_JNI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 218
    functionName: gpac_init_gui
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - gf_fs_set_ui_callback
    - gf_sc_set_option
    - gf_opts_set_key
    - gf_log_set_callback
    - gf_fs_load_filter
    - gf_file_exists
    - GF_LOG
    - gf_sc_set_size
    - gf_sys_init
    - gf_log_set_tools_levels
    - gf_set_progress_callback
    - gf_fopen
    - strcmp
    - gf_opts_get_key
    - gf_fs_new_defaults
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gpac_init_gui(GPAC_JNI *gpac)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: LOGE
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:228,1
    - Dst: JNIEnv*::GetStringUTFChars
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:233,1
    - Dst: JNIEnv*::GetStringUTFChars
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:236,1
    - Dst: JNIEnv*::GetStringUTFChars
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:239,1
    - Dst: malloc
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:242,1
    - Dst: memset
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:244,1
    - Dst: JNIEnv*::NewGlobalRef
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:247,1
    - Dst: gf_sys_set_android_paths
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:252,1
    - Dst: gpac_init_gui
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:254,1
    - Dst: memset
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:260,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:263,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:265,1
    - Dst: strcpy
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:271,1
    - Dst: strcat
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:272,1
    - Dst: gf_dir_exists
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:273,1
    - Dst: strcat
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:276,1
    - Dst: JNIEnv*::ReleaseStringUTFChars
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:283,1
    - Dst: JNIEnv*::ReleaseStringUTFChars
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:285,1
    - Dst: JNIEnv*::ReleaseStringUTFChars
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:287,1
    - Dst: show_message
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:292,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:293,1
    - Dst: free
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:294,1
    - Dst: LOGE
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:297,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 69
    argCount: 9
    argNames:
    - env
    - obj
    - gpac_class_obj
    - width
    - height
    - has_display_cutout
    - _url_to_open
    - _ext_storage
    - _app_data_dir
    argTypes:
    - JNIEnv*
    - jclass
    - jobject
    - jint
    - jint
    - jboolean
    - jstring
    - jstring
    - jstring
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 220
    functionDepth: 3
    functionLinenumber: 220
    functionLinenumberEnd: 300
    functionName: gpac_jni_init
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - gf_sys_set_android_paths
    - strcat
    - gf_dir_exists
    - gf_opts_set_key
    - malloc
    - strcpy
    - gf_sc_user_event
    - JNIEnv*::GetStringUTFChars
    - JNIEnv*::ReleaseStringUTFChars
    - LOGE
    - gf_fs_del
    - memset
    - JNIEnv*::NewGlobalRef
    - gpac_init_gui
    - free
    - show_message
    linkageType: ''
    returnType: JNIEXPORT
    signature: JNIEXPORT gpac_jni_init(JNIEnv * env, jclass obj, jobject gpac_class_obj,
      jint width, jint height, jboolean has_display_cutout, jstring _url_to_open,
      jstring _ext_storage, jstring _app_data_dir)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_abort
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:309,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:310,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:313,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:314,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:316,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:318,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - gpac
    argTypes:
    - GPAC_JNI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 302
    functionDepth: 1
    functionLinenumber: 302
    functionLinenumberEnd: 319
    functionName: gpac_uninit
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_log_set_callback
    - GF_LOG
    - gf_fs_del
    - gf_fs_abort
    - gf_sys_close
    linkageType: ''
    returnType: void
    signature: void gpac_uninit(GPAC_JNI *gpac)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GET_GPAC_JNI
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:323,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:326,1
    - Dst: gpac_uninit
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:328,1
    - Dst: gpac_jni_get_env
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:331,1
    - Dst: JavaEnvTh*::env::DeleteGlobalRef
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:333,1
    - Dst: free
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:335,1
    - Dst: free
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:336,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - env
    - obj
    argTypes:
    - JNIEnv*
    - jobject
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 321
    functionDepth: 2
    functionLinenumber: 321
    functionLinenumberEnd: 337
    functionName: gpac_jni_uninit
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - GET_GPAC_JNI
    - gf_opts_set_key
    - JavaEnvTh*::env::DeleteGlobalRef
    - gpac_uninit
    - gpac_jni_get_env
    - free
    linkageType: ''
    returnType: JNIEXPORT
    signature: JNIEXPORT gpac_jni_uninit(JNIEnv * env, jobject obj)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: GET_GPAC_JNI
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:347,1
    - Dst: JNIEnv*::GetStringUTFChars
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:350,1
    - Dst: strnicmp
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:354,1
    - Dst: strnicmp
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:354,1
    - Dst: gpac_uninit
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:356,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:365,1
    - Dst: realloc
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:380,1
    - Dst: malloc
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:381,1
    - Dst: memcpy
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:382,1
    - Dst: realloc
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:390,1
    - Dst: malloc
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:391,1
    - Dst: memcpy
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:392,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:399,1
    - Dst: start_logger
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:401,1
    - Dst: strnicmp
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:403,1
    - Dst: mp4box_main
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:404,1
    - Dst: gpac_main
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:406,1
    - Dst: stop_logger
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:408,1
    - Dst: free
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:411,1
    - Dst: free
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:413,1
    - Dst: gpac_uninit
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:418,1
    - Dst: gpac_init_gui
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:420,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:424,1
    - Dst: memset
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:434,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:437,1
    - Dst: JNIEnv*::ReleaseStringUTFChars
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:442,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 71
    argCount: 3
    argNames:
    - env
    - obj
    - fileName
    argTypes:
    - JNIEnv*
    - jobject
    - jstring
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 344
    functionDepth: 2
    functionLinenumber: 344
    functionLinenumberEnd: 445
    functionName: gpac_jni_load_service
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - gf_opts_set_key
    - memset
    - stop_logger
    - gf_log_set_callback
    - memcpy
    - JNIEnv*::GetStringUTFChars
    - gpac_init_gui
    - start_logger
    - GET_GPAC_JNI
    - gpac_main
    - malloc
    - gf_sc_user_event
    - gpac_uninit
    - strnicmp
    - strlen
    - mp4box_main
    - JNIEnv*::ReleaseStringUTFChars
    - realloc
    - free
    linkageType: ''
    returnType: JNIEXPORT
    signature: JNIEXPORT gpac_jni_load_service(JNIEnv * env, jobject obj, jstring
      fileName)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GET_GPAC_JNI
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:449,1
    - Dst: gf_sc_invalidate_next_frame
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:452,1
    - Dst: gf_fs_run
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:454,1
    - Dst: gf_sc_frame_was_produced
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:455,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - env
    - obj
    argTypes:
    - JNIEnv*
    - jobject
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 447
    functionDepth: 1
    functionLinenumber: 447
    functionLinenumberEnd: 457
    functionName: gpac_jni_render_frame
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - GET_GPAC_JNI
    - gf_sc_frame_was_produced
    - gf_fs_run
    - gf_sc_invalidate_next_frame
    linkageType: ''
    returnType: JNIEXPORT
    signature: JNIEXPORT gpac_jni_render_frame(JNIEnv * env, jobject obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GET_GPAC_JNI
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:461,1
    - Dst: memset
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:467,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:472,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 5
    argNames:
    - env
    - obj
    - width
    - height
    - orientation
    argTypes:
    - JNIEnv*
    - jobject
    - jint
    - jint
    - jint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 459
    functionDepth: 1
    functionLinenumber: 459
    functionLinenumberEnd: 473
    functionName: gpac_jni_set_size
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - GET_GPAC_JNI
    - memset
    - gf_sc_user_event
    linkageType: ''
    returnType: JNIEXPORT
    signature: JNIEXPORT gpac_jni_set_size(JNIEnv * env, jobject obj, jint width,
      jint height, jint orientation)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GET_GPAC_JNI
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:477,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:485,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - env
    - obj
    - x
    - y
    argTypes:
    - JNIEnv*
    - jobject
    - jfloat
    - jfloat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 486
      start: 475
    functionDepth: 1
    functionLinenumber: 475
    functionLinenumberEnd: 486
    functionName: gpac_jni_eventmousedown
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - GET_GPAC_JNI
    - gf_sc_user_event
    linkageType: ''
    returnType: JNIEXPORT
    signature: JNIEXPORT gpac_jni_eventmousedown(JNIEnv * env, jobject obj, jfloat
      x, jfloat y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GET_GPAC_JNI
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:490,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:498,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - env
    - obj
    - x
    - y
    argTypes:
    - JNIEnv*
    - jobject
    - jfloat
    - jfloat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 488
    functionDepth: 1
    functionLinenumber: 488
    functionLinenumberEnd: 499
    functionName: gpac_jni_eventmouseup
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - GET_GPAC_JNI
    - gf_sc_user_event
    linkageType: ''
    returnType: JNIEXPORT
    signature: JNIEXPORT gpac_jni_eventmouseup(JNIEnv * env, jobject obj, jfloat x,
      jfloat y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GET_GPAC_JNI
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:503,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:511,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - env
    - obj
    - x
    - y
    argTypes:
    - JNIEnv*
    - jobject
    - jfloat
    - jfloat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 512
      start: 501
    functionDepth: 1
    functionLinenumber: 501
    functionLinenumberEnd: 512
    functionName: gpac_jni_eventmousemove
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - GET_GPAC_JNI
    - gf_sc_user_event
    linkageType: ''
    returnType: JNIEXPORT
    signature: JNIEXPORT gpac_jni_eventmousemove(JNIEnv * env, jobject obj, jfloat
      x, jfloat y)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GET_GPAC_JNI
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:516,1
    - Dst: memset
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:519,1
    - Dst: translate_key_to_gpac
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:526,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:527,1
    - Dst: memset
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:530,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:533,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 7
    argNames:
    - env
    - obj
    - keycode
    - rawkeycode
    - up
    - flag
    - unicode
    argTypes:
    - JNIEnv*
    - jobject
    - jint
    - jint
    - jint
    - jint
    - jint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 514
    functionDepth: 1
    functionLinenumber: 514
    functionLinenumberEnd: 535
    functionName: gpac_jni_eventkeypress
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - GET_GPAC_JNI
    - memset
    - gf_sc_user_event
    - translate_key_to_gpac
    linkageType: ''
    returnType: JNIEXPORT
    signature: JNIEXPORT gpac_jni_eventkeypress(JNIEnv * env, jobject obj, jint keycode,
      jint rawkeycode, jint up, jint flag, jint unicode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GET_GPAC_JNI
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:539,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:548,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 5
    argNames:
    - env
    - obj
    - x
    - y
    - z
    argTypes:
    - JNIEnv*
    - jobject
    - jfloat
    - jfloat
    - jfloat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 537
    functionDepth: 1
    functionLinenumber: 537
    functionLinenumberEnd: 549
    functionName: gpac_jni_eventorientationchange
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - GET_GPAC_JNI
    - gf_sc_user_event
    linkageType: ''
    returnType: JNIEXPORT
    signature: JNIEXPORT gpac_jni_eventorientationchange(JNIEnv * env, jobject obj,
      jfloat x, jfloat y, jfloat z)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GET_GPAC_JNI
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:554,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:563,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 7
    argNames:
    - env
    - obj
    - longitude
    - latitude
    - altitude
    - bearing
    - accuracy
    argTypes:
    - JNIEnv*
    - jobject
    - jdouble
    - jdouble
    - jdouble
    - jfloat
    - jfloat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 552
    functionDepth: 1
    functionLinenumber: 552
    functionLinenumberEnd: 564
    functionName: gpac_jni_eventlocationchange
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - GET_GPAC_JNI
    - gf_sc_user_event
    linkageType: ''
    returnType: JNIEXPORT
    signature: JNIEXPORT gpac_jni_eventlocationchange(JNIEnv * env, jobject obj, jdouble
      longitude, jdouble latitude, jdouble altitude, jfloat bearing, jfloat accuracy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:568,1
    - Dst: JNIEnv*::NewStringUTF
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:570,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - env
    - obj
    - code
    argTypes:
    - JNIEnv*
    - jobject
    - jint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 566
    functionDepth: 1
    functionLinenumber: 566
    functionLinenumberEnd: 572
    functionName: gpac_jni_error_to_string
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - JNIEnv*::NewStringUTF
    - gf_error_to_string
    linkageType: ''
    returnType: JNIEXPORT
    signature: JNIEXPORT gpac_jni_error_to_string(JNIEnv * env, jobject obj, jint
      code)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gpac_abort
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:576,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - obj
    argTypes:
    - JNIEnv*
    - jobject
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 574
    functionDepth: 1
    functionLinenumber: 574
    functionLinenumberEnd: 577
    functionName: gpac_jni_abort_session
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - gpac_abort
    linkageType: ''
    returnType: JNIEXPORT
    signature: JNIEXPORT gpac_jni_abort_session(JNIEnv * env, jobject obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:581,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - obj
    argTypes:
    - JNIEnv*
    - jobject
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 579
    functionDepth: 1
    functionLinenumber: 579
    functionLinenumberEnd: 582
    functionName: gpac_jni_reset_config
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - gf_opts_set_key
    linkageType: ''
    returnType: JNIEXPORT
    signature: JNIEXPORT gpac_jni_reset_config(JNIEnv * env, jobject obj)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: read
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:595,1
    - Dst: show_message
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:599,1
    - Dst: fwrite
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:601,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - _param
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 590
    functionDepth: 3
    functionLinenumber: 590
    functionLinenumberEnd: 605
    functionName: logger_thread
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - show_message
    - fwrite
    - read
    linkageType: ''
    returnType: void
    signature: void *logger_thread(void*_param)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:614,1
    - Dst: setvbuf
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:618,1
    - Dst: setvbuf
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:619,1
    - Dst: pipe
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:622,1
    - Dst: dup2
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:623,1
    - Dst: dup2
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:624,1
    - Dst: pthread_create
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:627,1
    - Dst: pthread_detach
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:631,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 1
    argNames:
    - gpac
    argTypes:
    - GPAC_JNI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 633
      start: 609
    functionDepth: 1
    functionLinenumber: 609
    functionLinenumberEnd: 633
    functionName: start_logger
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 1
    functionsReached:
    - setvbuf
    - fopen
    - pipe
    - pthread_detach
    - pthread_create
    - dup2
    linkageType: ''
    returnType: int
    signature: int start_logger(GPAC_JNI *gpac)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fflush
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:636,1
    - Dst: fflush
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:637,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:639,1
    - Dst: close
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:640,1
    - Dst: close
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:641,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:646,1
    - Dst: fclose
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:651,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - gpac
    argTypes:
    - GPAC_JNI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 654
      start: 634
    functionDepth: 0
    functionLinenumber: 634
    functionLinenumberEnd: 654
    functionName: stop_logger
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 1
    functionsReached:
    - fclose
    - gf_sleep
    - fflush
    - close
    linkageType: ''
    returnType: void
    signature: void stop_logger(GPAC_JNI *gpac)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:668,1
    - Dst: gf_log_tool_name
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:668,1
    - Dst: __android_log_vprint
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:669,1
    - Dst: va_copy
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:676,1
    - Dst: vsnprintf
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:677,1
    - Dst: va_end
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:678,1
    - Dst: realloc
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:681,1
    - Dst: va_copy
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:684,1
    - Dst: vsprintf
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:685,1
    - Dst: va_end
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:686,1
    - Dst: show_message
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:687,1
    - Dst: vfprintf
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:692,1
    - Dst: fflush
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:693,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 5
    argNames:
    - cbk
    - ll
    - lm
    - fmt
    - list
    argTypes:
    - void*
    - GF_LOG_Level
    - GF_LOG_Tool
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 694
      start: 656
    functionDepth: 3
    functionLinenumber: 656
    functionLinenumberEnd: 694
    functionName: gpac_jni_on_log
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - vsprintf
    - va_copy
    - va_end
    - __android_log_vprint
    - sprintf
    - vsnprintf
    - realloc
    - vfprintf
    - fflush
    - gf_log_tool_name
    - show_message
    linkageType: ''
    returnType: void
    signature: void gpac_jni_on_log(void *cbk, GF_LOG_Level ll, GF_LOG_Tool lm, const
      char *fmt, va_list list)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gpac_jni_get_env
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:699,1
    - Dst: JavaEnvTh*::env::PushLocalFrame
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:702,1
    - Dst: JavaEnvTh*::env::NewStringUTF
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:703,1
    - Dst: JavaEnvTh*::env::CallVoidMethod
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:704,1
    - Dst: JavaEnvTh*::env::PopLocalFrame
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:705,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 4
    argNames:
    - usr
    - title
    - done
    - total
    argTypes:
    - void*
    - char*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 696
    functionDepth: 2
    functionLinenumber: 696
    functionLinenumberEnd: 706
    functionName: on_progress_cbk
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - JavaEnvTh*::env::PushLocalFrame
    - JavaEnvTh*::env::CallVoidMethod
    - JavaEnvTh*::env::PopLocalFrame
    - JavaEnvTh*::env::NewStringUTF
    - gpac_jni_get_env
    linkageType: ''
    returnType: void
    signature: void on_progress_cbk(const void *usr, const char *title, u64 done,
      u64 total)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:715,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:717,1
    - Dst: show_message
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:722,1
    - Dst: show_message
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:724,1
    - Dst: on_progress_cbk
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:728,1
    - Dst: on_progress_cbk
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:730,1
    - Dst: on_progress_cbk
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:732,1
    - Dst: gpac_jni_get_env
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:737,1
    - Dst: JavaEnvTh*::env::CallVoidMethod
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:739,1
    - Dst: gf_sc_is_supported_url
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:745,1
    - Dst: gf_sc_navigate_to
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:746,1
    - Dst: gpac_jni_get_env
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:753,1
    - Dst: JavaEnvTh*::env::CallVoidMethod
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:756,1
    - Dst: gpac_jni_get_env
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:762,1
    - Dst: JavaEnvTh*::env::CallVoidMethod
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:765,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 53
    argCount: 2
    argNames:
    - cbk
    - evt
    argTypes:
    - void*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 774
      start: 708
    functionDepth: 3
    functionLinenumber: 708
    functionLinenumberEnd: 774
    functionName: gpac_jni_event_proc
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - GF_LOG
    - JavaEnvTh*::env::CallVoidMethod
    - gf_sc_is_supported_url
    - on_progress_cbk
    - gf_error_to_string
    - gf_sc_navigate_to
    - gpac_jni_get_env
    - show_message
    linkageType: ''
    returnType: Bool
    signature: Bool gpac_jni_event_proc(void *cbk, GF_Event *evt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:784,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:785,1
    - Dst: pthread_setspecific
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:787,1
    - Dst: DetachCurrentThread
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:789,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - env
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 790
      start: 780
    functionDepth: 0
    functionLinenumber: 780
    functionLinenumberEnd: 790
    functionName: jni_destroy_env_func
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    - memset
    - pthread_setspecific
    - DetachCurrentThread
    linkageType: ''
    returnType: void
    signature: void jni_destroy_env_func(void * env)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JNIEnv*::FindClass
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:796,1
    - Dst: LOGE
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:798,1
    - Dst: JNIEnv*::RegisterNatives
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:801,1
    - Dst: LOGE
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:803,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 4
    argNames:
    - env
    - className
    - gMethods
    - numMethods
    argTypes:
    - JNIEnv*
    - char*
    - JNINativeMethod*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 807
      start: 792
    functionDepth: 0
    functionLinenumber: 792
    functionLinenumberEnd: 807
    functionName: jniRegisterNativeMethods
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - JNIEnv*::FindClass
    - JNIEnv*::RegisterNatives
    - LOGE
    linkageType: ''
    returnType: int
    signature: int jniRegisterNativeMethods(JNIEnv* env, const char* className, const
      JNINativeMethod* gMethods, int numMethods)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: pthread_key_delete
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:831,1
    - Dst: LOGW
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:832,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - vm
    - reserved
    argTypes:
    - JavaVM*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 837
      start: 829
    functionDepth: 1
    functionLinenumber: 829
    functionLinenumberEnd: 837
    functionName: JNI_OnUnLoad
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - LOGW
    - pthread_key_delete
    linkageType: ''
    returnType: jint
    signature: jint JNI_OnUnLoad(JavaVM* vm, void* reserved)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JavaVM*::GetEnv
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:856,1
    - Dst: LOGW
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:860,1
    - Dst: LOGW
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:867,1
    - Dst: jniRegisterNativeMethods
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:872,1
    - Dst: LOGE
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:874,1
    - Dst: pthread_key_create
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:878,1
    - Dst: LOGE
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:880,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 2
    argNames:
    - vm
    - reserved
    argTypes:
    - JavaVM*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 883
      start: 841
    functionDepth: 1
    functionLinenumber: 841
    functionLinenumberEnd: 883
    functionName: JNI_OnLoad
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached:
    - LOGW
    - LOGE
    - pthread_key_create
    - jniRegisterNativeMethods
    - JavaVM*::GetEnv
    linkageType: ''
    returnType: jint
    signature: jint JNI_OnLoad(JavaVM* vm, void* reserved)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 895
      start: 892
    functionDepth: 0
    functionLinenumber: 892
    functionLinenumberEnd: 895
    functionName: GetJavaVM
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JavaVM
    signature: JavaVM * GetJavaVM()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GetEnv
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:900,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 897
    functionDepth: 0
    functionLinenumber: 897
    functionLinenumberEnd: 902
    functionName: GetEnv
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 2
    functionsReached:
    - GetEnv
    linkageType: ''
    returnType: JNIEnv
    signature: JNIEnv * GetEnv()
  - BBCount: 29
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 102
    argCount: 2
    argNames:
    - keycode
    - evt
    argTypes:
    - int
    - GF_EventKey*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1103
      start: 998
    functionDepth: 0
    functionLinenumber: 998
    functionLinenumberEnd: 1103
    functionName: translate_key_to_gpac
    functionSourceFile: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void translate_key_to_gpac(int keycode, GF_EventKey *evt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/compositor_tools.c:243,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/gpac/compositor_tools.c:256,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/compositor_tools.c:260,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/compositor_tools.c:266,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/compositor_tools.c:269,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 1
    argNames:
    - argmode
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 235
    functionDepth: 1
    functionLinenumber: 235
    functionLinenumberEnd: 270
    functionName: mp4c_help
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_sys_print_arg
    linkageType: ''
    returnType: void
    signature: void mp4c_help(u32 argmode)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - char_code
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 272
    functionDepth: 0
    functionLinenumber: 272
    functionLinenumberEnd: 281
    functionName: get_gui_cmd
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MP4C_Command
    signature: MP4C_Command get_gui_cmd(u8 char_code)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/applications/gpac/compositor_tools.c:286,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac/compositor_tools.c:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - urls
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 283
    functionDepth: 1
    functionLinenumber: 283
    functionLinenumberEnd: 290
    functionName: gpac_open_urls
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_sc_user_event
    linkageType: ''
    returnType: void
    signature: void gpac_open_urls(const char *urls)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/compositor_tools.c:297,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/compositor_tools.c:304,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/compositor_tools.c:307,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 293
    functionDepth: 1
    functionLinenumber: 293
    functionLinenumberEnd: 314
    functionName: mp4c_print_help
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    linkageType: ''
    returnType: void
    signature: void mp4c_print_help()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:323,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - time
    argTypes:
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 324
    functionName: print_time
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void print_time(u64 time)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_get_rti
      Src: /src/gpac/applications/gpac/compositor_tools.c:335,1
    - Dst: sprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:341,1
    - Dst: gf_sc_get_fps
      Src: /src/gpac/applications/gpac/compositor_tools.c:342,1
    - Dst: sprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:344,1
    - Dst: gf_sc_get_fps
      Src: /src/gpac/applications/gpac/compositor_tools.c:345,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:349,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac/compositor_tools.c:354,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:358,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/gpac/compositor_tools.c:359,1
    - Dst: gf_sc_get_time_in_ms
      Src: /src/gpac/applications/gpac/compositor_tools.c:360,1
    - Dst: gf_sc_get_fps
      Src: /src/gpac/applications/gpac/compositor_tools.c:362,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:366,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 1
    argNames:
    - legend
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 329
    functionDepth: 1
    functionLinenumber: 329
    functionLinenumberEnd: 368
    functionName: update_rti
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - gf_sys_get_rti
    - gf_sc_get_time_in_ms
    - gf_sc_get_fps
    - gf_sc_user_event
    - sprintf
    - gf_sys_clock
    - fprintf
    linkageType: ''
    returnType: void
    signature: void update_rti(const char *legend)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetSysColor
      Src: /src/gpac/applications/gpac/compositor_tools.c:436,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - idx
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 433
    functionDepth: 0
    functionLinenumber: 433
    functionLinenumberEnd: 443
    functionName: get_sys_col
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - GetSysColor
    linkageType: ''
    returnType: u32
    signature: u32 get_sys_col(int idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set_window_caption
      Src: /src/gpac/applications/gpac/compositor_tools.c:450,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:451,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - is_on
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 446
    functionDepth: 1
    functionLinenumber: 446
    functionLinenumberEnd: 452
    functionName: switch_bench
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - set_window_caption
    - gf_sc_set_option
    linkageType: ''
    returnType: void
    signature: void switch_bench(u32 is_on)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 455
    functionDepth: 0
    functionLinenumber: 455
    functionLinenumberEnd: 456
    functionName: gf_getch
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: gf_getch()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _line
    - ','
    - _maxSize
    - ','
    - _showContent
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 456
    functionDepth: 0
    functionLinenumber: 456
    functionLinenumberEnd: 457
    functionName: gf_read_line_input
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: gf_read_line_input(_line, _maxSize, _showContent)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_set_speed
      Src: /src/gpac/applications/gpac/compositor_tools.c:461,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:463,1
    - Dst: FIX2FLT
      Src: /src/gpac/applications/gpac/compositor_tools.c:463,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:465,1
    - Dst: FIX2FLT
      Src: /src/gpac/applications/gpac/compositor_tools.c:465,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - desired_speed
    argTypes:
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 459
    functionDepth: 1
    functionLinenumber: 459
    functionLinenumberEnd: 467
    functionName: do_set_speed
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - gf_sc_set_speed
    - fprintf
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void do_set_speed(Fixed desired_speed)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/applications/gpac/compositor_tools.c:476,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac/compositor_tools.c:485,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 5
    argNames:
    - sensorType
    - x
    - y
    - z
    - w
    argTypes:
    - int
    - float
    - float
    - float
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 473
    functionDepth: 1
    functionLinenumber: 473
    functionLinenumberEnd: 490
    functionName: ios_sensor_callback
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_sc_user_event
    linkageType: ''
    returnType: void
    signature: void ios_sensor_callback(int sensorType, float x, float y, float z,
      float w)
  - BBCount: 102
    BranchProfiles: []
    Callsites:
    - Dst: sensor_create
      Src: /src/gpac/applications/gpac/compositor_tools.c:501,1
    - Dst: sensor_start
      Src: /src/gpac/applications/gpac/compositor_tools.c:507,1
    - Dst: sensor_stop
      Src: /src/gpac/applications/gpac/compositor_tools.c:509,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/compositor_tools.c:530,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/compositor_tools.c:532,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/gpac/compositor_tools.c:532,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/compositor_tools.c:535,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/gpac/compositor_tools.c:555,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:561,1
    - Dst: gf_sc_get_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:561,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac/compositor_tools.c:586,1
    - Dst: switch_bench
      Src: /src/gpac/applications/gpac/compositor_tools.c:594,1
    - Dst: switch_bench
      Src: /src/gpac/applications/gpac/compositor_tools.c:603,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:612,1
    - Dst: gf_sc_get_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:612,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:615,1
    - Dst: gf_sc_get_fps
      Src: /src/gpac/applications/gpac/compositor_tools.c:615,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:618,1
    - Dst: gf_sc_get_time_in_ms
      Src: /src/gpac/applications/gpac/compositor_tools.c:618,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:621,1
    - Dst: gf_sc_get_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:621,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:625,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:629,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:633,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:637,1
    - Dst: gf_sc_get_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:641,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:642,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:643,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:645,1
    - Dst: gf_sc_get_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:651,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:652,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:654,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:656,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:662,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:663,1
    - Dst: print_time
      Src: /src/gpac/applications/gpac/compositor_tools.c:664,1
    - Dst: gf_sc_get_time_in_ms
      Src: /src/gpac/applications/gpac/compositor_tools.c:664,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:665,1
    - Dst: gf_sc_switch_quality
      Src: /src/gpac/applications/gpac/compositor_tools.c:674,1
    - Dst: gf_sc_switch_quality
      Src: /src/gpac/applications/gpac/compositor_tools.c:680,1
    - Dst: gf_sc_toggle_addons
      Src: /src/gpac/applications/gpac/compositor_tools.c:690,1
    - Dst: do_set_speed
      Src: /src/gpac/applications/gpac/compositor_tools.c:694,1
    - Dst: do_set_speed
      Src: /src/gpac/applications/gpac/compositor_tools.c:699,1
    - Dst: do_set_speed
      Src: /src/gpac/applications/gpac/compositor_tools.c:704,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:714,1
    - Dst: gf_sc_set_speed
      Src: /src/gpac/applications/gpac/compositor_tools.c:717,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:719,1
    - Dst: gf_sc_set_size
      Src: /src/gpac/applications/gpac/compositor_tools.c:726,1
    - Dst: set_window_caption
      Src: /src/gpac/applications/gpac/compositor_tools.c:728,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac/compositor_tools.c:742,1
    - Dst: gf_sc_scene_update
      Src: /src/gpac/applications/gpac/compositor_tools.c:749,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac/compositor_tools.c:762,1
    - Dst: set_window_caption
      Src: /src/gpac/applications/gpac/compositor_tools.c:769,1
    - Dst: gf_sc_navigate_to
      Src: /src/gpac/applications/gpac/compositor_tools.c:773,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:778,1
    - Dst: gf_sc_is_supported_url
      Src: /src/gpac/applications/gpac/compositor_tools.c:781,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:782,1
    - Dst: gf_sc_navigate_to
      Src: /src/gpac/applications/gpac/compositor_tools.c:783,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:786,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac/compositor_tools.c:790,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/applications/gpac/compositor_tools.c:795,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/applications/gpac/compositor_tools.c:796,1
    - Dst: gf_assert
      Src: /src/gpac/applications/gpac/compositor_tools.c:797,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/compositor_tools.c:798,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/compositor_tools.c:798,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:800,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:801,1
    - Dst: gf_read_line_input
      Src: /src/gpac/applications/gpac/compositor_tools.c:802,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:804,1
    - Dst: gf_read_line_input
      Src: /src/gpac/applications/gpac/compositor_tools.c:805,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:807,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:810,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:817,1
    CyclomaticComplexity: 118
    EdgeCount: 118
    ICount: 303
    argCount: 2
    argNames:
    - ptr
    - evt
    argTypes:
    - void*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 823
      start: 494
    functionDepth: 2
    functionLinenumber: 494
    functionLinenumberEnd: 823
    functionName: mp4c_event_proc
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - do_set_speed
    - gf_sc_set_option
    - gf_set_progress
    - gf_sc_set_size
    - sensor_stop
    - fprintf
    - gf_assert
    - gf_read_line_input
    - gf_sc_scene_update
    - sensor_create
    - gf_sc_get_fps
    - GF_LOG
    - gf_sc_switch_quality
    - gf_sc_user_event
    - gf_sc_toggle_addons
    - gf_sc_set_speed
    - switch_bench
    - gf_error_to_string
    - print_time
    - gf_sc_navigate_to
    - strlen
    - gf_sc_get_time_in_ms
    - gf_sc_get_option
    - set_window_caption
    - gf_sc_is_supported_url
    - gf_fatal_assert
    - sensor_start
    linkageType: ''
    returnType: Bool
    signature: Bool mp4c_event_proc(void *ptr, GF_Event *evt)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_get_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:830,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:835,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:837,1
    - Dst: gf_getch
      Src: /src/gpac/applications/gpac/compositor_tools.c:838,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:839,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:840,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:841,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:842,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:844,1
    - Dst: gf_getch
      Src: /src/gpac/applications/gpac/compositor_tools.c:845,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:846,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:847,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:848,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:849,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:850,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:851,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:852,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:853,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:854,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:855,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:857,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/gpac/compositor_tools.c:857,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 858
      start: 826
    functionDepth: 1
    functionLinenumber: 826
    functionLinenumberEnd: 858
    functionName: set_navigation
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - gf_sc_get_option
    - gf_sc_set_option
    - gf_error_to_string
    - fprintf
    - gf_getch
    linkageType: ''
    returnType: void
    signature: void set_navigation()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: vsnprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:865,1
    - Dst: update_rti
      Src: /src/gpac/applications/gpac/compositor_tools.c:866,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 5
    argNames:
    - cbk
    - ll
    - lm
    - fmt
    - list
    argTypes:
    - void*
    - GF_LOG_Level
    - GF_LOG_Tool
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 868
      start: 861
    functionDepth: 2
    functionLinenumber: 861
    functionLinenumberEnd: 868
    functionName: on_rti_log
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - update_rti
    - vsnprintf
    linkageType: ''
    returnType: void
    signature: void on_rti_log(void *cbk, GF_LOG_Level ll, GF_LOG_Tool lm, const char
      *fmt, va_list list)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_fclose
      Src: /src/gpac/applications/gpac/compositor_tools.c:872,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/gpac/compositor_tools.c:873,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:875,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:876,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:877,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/applications/gpac/compositor_tools.c:881,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/gpac/compositor_tools.c:882,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/compositor_tools.c:884,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/gpac/compositor_tools.c:886,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - rti_file
    - use_rtix
    argTypes:
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 889
      start: 870
    functionDepth: 1
    functionLinenumber: 870
    functionLinenumberEnd: 889
    functionName: init_rti_logs
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_log_set_callback
    - GF_LOG
    - gf_fopen
    - gf_log_set_tool_level
    - gf_sys_clock_high_res
    - fprintf
    linkageType: ''
    returnType: void
    signature: void init_rti_logs(char *rti_file, Bool use_rtix)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:911,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:913,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:916,1
    - Dst: get_s32
      Src: /src/gpac/applications/gpac/compositor_tools.c:917,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:918,1
    - Dst: stricmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:922,1
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/compositor_tools.c:924,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:928,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:930,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:935,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:936,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:937,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:938,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:939,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:940,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:941,1
    - Dst: atof
      Src: /src/gpac/applications/gpac/compositor_tools.c:942,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:944,1
    - Dst: FLT2FIX
      Src: /src/gpac/applications/gpac/compositor_tools.c:945,1
    - Dst: atof
      Src: /src/gpac/applications/gpac/compositor_tools.c:945,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:949,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:952,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:956,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:957,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:958,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:968,1
    - Dst: stricmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:969,1
    - Dst: stricmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:970,1
    - Dst: get_u32
      Src: /src/gpac/applications/gpac/compositor_tools.c:970,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 77
    argCount: 2
    argNames:
    - arg
    - arg_val
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 979
      start: 909
    functionDepth: 1
    functionLinenumber: 909
    functionLinenumberEnd: 979
    functionName: mp4c_parse_arg
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - get_s32
    - sscanf
    - get_u32
    - atof
    - strcmp
    - stricmp
    linkageType: ''
    returnType: Bool
    signature: Bool mp4c_parse_arg(char *arg, char *arg_val)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:990,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/gpac/compositor_tools.c:991,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/applications/gpac/compositor_tools.c:995,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:996,1
    - Dst: gf_sc_connect_from_time
      Src: /src/gpac/applications/gpac/compositor_tools.c:998,1
    - Dst: carbon_set_hook
      Src: /src/gpac/applications/gpac/compositor_tools.c:1005,1
    - Dst: init_rti_logs
      Src: /src/gpac/applications/gpac/compositor_tools.c:1011,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/applications/gpac/compositor_tools.c:1014,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1015,1
    - Dst: gf_opts_discard_changes
      Src: /src/gpac/applications/gpac/compositor_tools.c:1018,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/gpac/compositor_tools.c:1021,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/gpac/compositor_tools.c:1038,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1039,1
    - Dst: update_rti
      Src: /src/gpac/applications/gpac/compositor_tools.c:1042,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1047,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/gpac/compositor_tools.c:1053,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 43
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1055
      start: 985
    functionDepth: 2
    functionLinenumber: 985
    functionLinenumberEnd: 1055
    functionName: load_compositor
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - gf_sys_get_rti
    - gf_sc_set_option
    - gf_opts_set_key
    - carbon_set_hook
    - gf_opts_discard_changes
    - gf_sc_connect_from_time
    - sprintf
    - init_rti_logs
    - update_rti
    - gf_opts_get_key
    - gf_sys_clock
    - fprintf
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void load_compositor(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mp4c_handle_prompt
      Src: /src/gpac/applications/gpac/compositor_tools.c:1066,1
    - Dst: mp4c_handle_prompt
      Src: /src/gpac/applications/gpac/compositor_tools.c:1067,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/gpac/compositor_tools.c:1068,1
    - Dst: gf_sc_get_world_info
      Src: /src/gpac/applications/gpac/compositor_tools.c:1069,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/compositor_tools.c:1070,1
    - Dst: gf_sc_dump_scene
      Src: /src/gpac/applications/gpac/compositor_tools.c:1073,1
    - Dst: gf_sc_get_current_service_id
      Src: /src/gpac/applications/gpac/compositor_tools.c:1074,1
    - Dst: gf_sc_toggle_addons
      Src: /src/gpac/applications/gpac/compositor_tools.c:1075,1
    - Dst: set_navigation
      Src: /src/gpac/applications/gpac/compositor_tools.c:1076,1
    - Dst: get_gui_cmd
      Src: /src/gpac/applications/gpac/compositor_tools.c:1078,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/compositor_tools.c:1080,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac/compositor_tools.c:1084,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1086,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1088,1
    - Dst: gf_sc_get_url
      Src: /src/gpac/applications/gpac/compositor_tools.c:1090,1
    - Dst: gf_sc_get_simulation_frame_rate
      Src: /src/gpac/applications/gpac/compositor_tools.c:1091,1
    - Dst: gf_sc_has_text_selection
      Src: /src/gpac/applications/gpac/compositor_tools.c:1093,1
    - Dst: gf_sc_get_selected_text
      Src: /src/gpac/applications/gpac/compositor_tools.c:1094,1
    - Dst: gf_sc_paste_text
      Src: /src/gpac/applications/gpac/compositor_tools.c:1095,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1097,1
    - Dst: mp4c_take_screenshot
      Src: /src/gpac/applications/gpac/compositor_tools.c:1099,1
    - Dst: gf_sc_scene_update
      Src: /src/gpac/applications/gpac/compositor_tools.c:1101,1
    - Dst: gf_sc_add_object
      Src: /src/gpac/applications/gpac/compositor_tools.c:1102,1
    - Dst: gf_sc_get_viewpoint
      Src: /src/gpac/applications/gpac/compositor_tools.c:1104,1
    - Dst: gf_sc_set_viewpoint
      Src: /src/gpac/applications/gpac/compositor_tools.c:1105,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1108,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/compositor_tools.c:1109,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac/compositor_tools.c:1113,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac/compositor_tools.c:1116,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac/compositor_tools.c:1118,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac/compositor_tools.c:1122,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac/compositor_tools.c:1127,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac/compositor_tools.c:1131,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/applications/gpac/compositor_tools.c:1135,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1137,1
    - Dst: gf_sc_connect_from_time
      Src: /src/gpac/applications/gpac/compositor_tools.c:1139,1
    - Dst: gf_sc_navigate_to
      Src: /src/gpac/applications/gpac/compositor_tools.c:1140,1
    - Dst: gpac_open_urls
      Src: /src/gpac/applications/gpac/compositor_tools.c:1141,1
    - Dst: switch_bench
      Src: /src/gpac/applications/gpac/compositor_tools.c:1142,1
    - Dst: do_set_speed
      Src: /src/gpac/applications/gpac/compositor_tools.c:1143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 60
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1144
      start: 1059
    functionDepth: 2
    functionLinenumber: 1059
    functionLinenumberEnd: 1144
    functionName: mp4c_coverage
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - do_set_speed
    - gf_sc_get_selected_text
    - gf_sc_set_option
    - mp4c_handle_prompt
    - memset
    - gf_sc_dump_scene
    - gf_sc_get_world_info
    - get_gui_cmd
    - gf_sc_add_object
    - gf_list_new
    - gf_sc_get_url
    - gf_sc_connect_from_time
    - gf_sc_scene_update
    - gpac_open_urls
    - set_navigation
    - gf_sc_set_viewpoint
    - gf_sc_get_viewpoint
    - gf_sc_toggle_addons
    - gf_sc_user_event
    - mp4c_take_screenshot
    - switch_bench
    - gf_sc_navigate_to
    - gf_sc_has_text_selection
    - gf_list_del
    - gf_sc_get_current_service_id
    - gf_sc_get_simulation_frame_rate
    - gf_sc_paste_text
    linkageType: ''
    returnType: void
    signature: void mp4c_coverage()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: update_rti
      Src: /src/gpac/applications/gpac/compositor_tools.c:1153,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/gpac/compositor_tools.c:1155,1
    - Dst: mp4c_coverage
      Src: /src/gpac/applications/gpac/compositor_tools.c:1159,1
    - Dst: close_console
      Src: /src/gpac/applications/gpac/compositor_tools.c:1164,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/compositor_tools.c:1169,1
    - Dst: carbon_remove_hook
      Src: /src/gpac/applications/gpac/compositor_tools.c:1177,1
    - Dst: sensor_stop
      Src: /src/gpac/applications/gpac/compositor_tools.c:1183,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1187
      start: 1151
    functionDepth: 3
    functionLinenumber: 1151
    functionLinenumberEnd: 1187
    functionName: unload_compositor
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - close_console
    - carbon_remove_hook
    - update_rti
    - sensor_stop
    - mp4c_coverage
    linkageType: ''
    returnType: void
    signature: void unload_compositor()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_get_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1191,1
    - Dst: gf_sc_disconnect
      Src: /src/gpac/applications/gpac/compositor_tools.c:1194,1
    - Dst: gf_sc_play_from_time
      Src: /src/gpac/applications/gpac/compositor_tools.c:1198,1
    - Dst: gf_sc_get_url
      Src: /src/gpac/applications/gpac/compositor_tools.c:1203,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/compositor_tools.c:1205,1
    - Dst: gf_sc_disconnect
      Src: /src/gpac/applications/gpac/compositor_tools.c:1206,1
    - Dst: gf_sc_connect_from_time
      Src: /src/gpac/applications/gpac/compositor_tools.c:1207,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/compositor_tools.c:1208,1
    - Dst: gf_sc_scene_update
      Src: /src/gpac/applications/gpac/compositor_tools.c:1214,1
    - Dst: gf_sc_select_service
      Src: /src/gpac/applications/gpac/compositor_tools.c:1218,1
    - Dst: update_rti
      Src: /src/gpac/applications/gpac/compositor_tools.c:1223,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1226
      start: 1189
    functionDepth: 2
    functionLinenumber: 1189
    functionLinenumberEnd: 1226
    functionName: mp4c_task
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_sc_get_option
    - gf_sc_get_url
    - gf_sc_connect_from_time
    - gf_sc_play_from_time
    - gf_sc_scene_update
    - update_rti
    - gf_sc_select_service
    - gf_sc_disconnect
    linkageType: ''
    returnType: Bool
    signature: Bool mp4c_task()
  - BBCount: 56
    BranchProfiles: []
    Callsites:
    - Dst: get_gui_cmd
      Src: /src/gpac/applications/gpac/compositor_tools.c:1232,1
    - Dst: gf_sc_disconnect
      Src: /src/gpac/applications/gpac/compositor_tools.c:1236,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1237,1
    - Dst: scanf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1238,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1239,1
    - Dst: init_rti_logs
      Src: /src/gpac/applications/gpac/compositor_tools.c:1242,1
    - Dst: gf_sc_connect_from_time
      Src: /src/gpac/applications/gpac/compositor_tools.c:1243,1
    - Dst: gf_sc_disconnect
      Src: /src/gpac/applications/gpac/compositor_tools.c:1252,1
    - Dst: gf_sc_get_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1257,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1258,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1259,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1264,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1265,1
    - Dst: print_time
      Src: /src/gpac/applications/gpac/compositor_tools.c:1266,1
    - Dst: gf_sc_get_time_in_ms
      Src: /src/gpac/applications/gpac/compositor_tools.c:1266,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1267,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1274,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1278,1
    - Dst: print_time
      Src: /src/gpac/applications/gpac/compositor_tools.c:1279,1
    - Dst: gf_sc_get_time_in_ms
      Src: /src/gpac/applications/gpac/compositor_tools.c:1280,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1284,1
    - Dst: scanf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1285,1
    - Dst: gf_sc_play_from_time
      Src: /src/gpac/applications/gpac/compositor_tools.c:1290,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1294,1
    - Dst: print_time
      Src: /src/gpac/applications/gpac/compositor_tools.c:1295,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1296,1
    - Dst: scanf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1298,1
    - Dst: gf_sc_play_from_time
      Src: /src/gpac/applications/gpac/compositor_tools.c:1311,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1320,1
    - Dst: print_time
      Src: /src/gpac/applications/gpac/compositor_tools.c:1321,1
    - Dst: gf_sc_get_time_in_ms
      Src: /src/gpac/applications/gpac/compositor_tools.c:1321,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1322,1
    - Dst: print_time
      Src: /src/gpac/applications/gpac/compositor_tools.c:1323,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1324,1
    - Dst: set_navigation
      Src: /src/gpac/applications/gpac/compositor_tools.c:1329,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1332,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1341,1
    - Dst: fflush
      Src: /src/gpac/applications/gpac/compositor_tools.c:1342,1
    - Dst: scanf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1343,1
    - Dst: strrchr
      Src: /src/gpac/applications/gpac/compositor_tools.c:1344,1
    - Dst: stricmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:1347,1
    - Dst: strnicmp
      Src: /src/gpac/applications/gpac/compositor_tools.c:1350,1
    - Dst: gf_sc_dump_scene
      Src: /src/gpac/applications/gpac/compositor_tools.c:1351,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1353,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/gpac/compositor_tools.c:1353,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1355,1
    - Dst: gf_sc_get_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1361,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1362,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1363,1
    - Dst: gf_sc_get_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1369,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1371,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1372,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1376,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1379,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1382,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1385,1
    - Dst: set_window_caption
      Src: /src/gpac/applications/gpac/compositor_tools.c:1390,1
    - Dst: set_window_caption
      Src: /src/gpac/applications/gpac/compositor_tools.c:1395,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1399,1
    - Dst: scanf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1401,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1402,1
    - Dst: gf_sc_scene_update
      Src: /src/gpac/applications/gpac/compositor_tools.c:1405,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1406,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/gpac/compositor_tools.c:1406,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1411,1
    - Dst: scanf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1413,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1414,1
    - Dst: gf_sc_scene_update
      Src: /src/gpac/applications/gpac/compositor_tools.c:1417,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1418,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/gpac/compositor_tools.c:1418,1
    - Dst: gf_log_get_tools_levels
      Src: /src/gpac/applications/gpac/compositor_tools.c:1425,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1426,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/compositor_tools.c:1427,1
    - Dst: scanf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1429,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1430,1
    - Dst: gf_log_modify_tools_levels
      Src: /src/gpac/applications/gpac/compositor_tools.c:1433,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1441,1
    - Dst: gf_sc_get_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1441,1
    - Dst: scanf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1442,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1443,1
    - Dst: gf_sc_get_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1449,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1451,1
    - Dst: scanf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1452,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1454,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1459,1
    - Dst: mp4c_take_screenshot
      Src: /src/gpac/applications/gpac/compositor_tools.c:1465,1
    - Dst: mp4c_print_help
      Src: /src/gpac/applications/gpac/compositor_tools.c:1470,1
    CyclomaticComplexity: 63
    EdgeCount: 63
    ICount: 210
    argCount: 1
    argNames:
    - char_val
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1476
      start: 1230
    functionDepth: 2
    functionLinenumber: 1230
    functionLinenumberEnd: 1476
    functionName: mp4c_handle_prompt
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_sc_set_option
    - gf_log_modify_tools_levels
    - gf_log_get_tools_levels
    - gf_sc_dump_scene
    - fprintf
    - init_rti_logs
    - get_gui_cmd
    - strrchr
    - gf_sc_connect_from_time
    - gf_sc_scene_update
    - stricmp
    - set_navigation
    - gf_sc_disconnect
    - mp4c_print_help
    - scanf
    - mp4c_take_screenshot
    - strnicmp
    - gf_error_to_string
    - print_time
    - fflush
    - gf_sc_get_time_in_ms
    - gf_sc_get_option
    - set_window_caption
    - gf_sc_play_from_time
    linkageType: ''
    returnType: Bool
    signature: Bool mp4c_handle_prompt(u8 char_val)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_get_option
      Src: /src/gpac/applications/gpac/compositor_tools.c:1487,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1489,1
    - Dst: scanf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1491,1
    - Dst: gf_sc_get_offscreen_buffer
      Src: /src/gpac/applications/gpac/compositor_tools.c:1505,1
    - Dst: gf_sc_release_screen_buffer
      Src: /src/gpac/applications/gpac/compositor_tools.c:1506,1
    - Dst: sprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1511,1
    - Dst: gf_sc_get_offscreen_buffer
      Src: /src/gpac/applications/gpac/compositor_tools.c:1512,1
    - Dst: sprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1514,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/applications/gpac/compositor_tools.c:1514,1
    - Dst: gf_sc_get_screen_buffer
      Src: /src/gpac/applications/gpac/compositor_tools.c:1515,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1519,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/gpac/compositor_tools.c:1519,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/gpac/compositor_tools.c:1524,1
    - Dst: gf_img_png_enc
      Src: /src/gpac/applications/gpac/compositor_tools.c:1526,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1528,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/gpac/compositor_tools.c:1528,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/gpac/compositor_tools.c:1531,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1533,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/gpac/compositor_tools.c:1536,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1537,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/gpac/compositor_tools.c:1537,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/gpac/compositor_tools.c:1539,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1540,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/compositor_tools.c:1543,1
    - Dst: gf_sc_release_screen_buffer
      Src: /src/gpac/applications/gpac/compositor_tools.c:1544,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/gpac/compositor_tools.c:1546,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/compositor_tools.c:1550,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 61
    argCount: 1
    argNames:
    - for_coverage
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1551
      start: 1480
    functionDepth: 1
    functionLinenumber: 1480
    functionLinenumberEnd: 1551
    functionName: mp4c_take_screenshot
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 2
    functionsReached:
    - gf_img_png_enc
    - gf_fclose
    - gf_free
    - gf_sc_get_option
    - sprintf
    - gf_fwrite
    - scanf
    - gf_fopen
    - gf_file_delete
    - gf_error_to_string
    - gf_sc_release_screen_buffer
    - gf_sc_get_screen_buffer
    - gf_net_get_utc
    - gf_sc_get_offscreen_buffer
    - gf_malloc
    - fprintf
    linkageType: ''
    returnType: void
    signature: void mp4c_take_screenshot(Bool for_coverage)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: CreateToolhelp32Snapshot
      Src: /src/gpac/applications/gpac/compositor_tools.c:1563,1
    - Dst: Process32First
      Src: /src/gpac/applications/gpac/compositor_tools.c:1567,1
    - Dst: Process32Next
      Src: /src/gpac/applications/gpac/compositor_tools.c:1573,1
    - Dst: CloseHandle
      Src: /src/gpac/applications/gpac/compositor_tools.c:1575,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - pid
    argTypes:
    - DWORD
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1578
      start: 1560
    functionDepth: 0
    functionLinenumber: 1560
    functionLinenumberEnd: 1578
    functionName: getParentPID
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - Process32First
    - Process32Next
    - CloseHandle
    - CreateToolhelp32Snapshot
    linkageType: ''
    returnType: DWORD
    signature: DWORD getParentPID(DWORD pid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: OpenProcess
      Src: /src/gpac/applications/gpac/compositor_tools.c:1582,1
    - Dst: GetModuleFileNameEx
      Src: /src/gpac/applications/gpac/compositor_tools.c:1584,1
    - Dst: CloseHandle
      Src: /src/gpac/applications/gpac/compositor_tools.c:1585,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - pid
    - fname
    - sz
    argTypes:
    - DWORD
    - PUCHAR
    - DWORD
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1587
      start: 1580
    functionDepth: 0
    functionLinenumber: 1580
    functionLinenumberEnd: 1587
    functionName: getProcessName
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - GetModuleFileNameEx
    - OpenProcess
    - CloseHandle
    linkageType: ''
    returnType: void
    signature: void getProcessName(DWORD pid, PUCHAR fname, DWORD sz)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GetModuleHandle
      Src: /src/gpac/applications/gpac/compositor_tools.c:1594,1
    - Dst: GetProcAddress
      Src: /src/gpac/applications/gpac/compositor_tools.c:1598,1
    - Dst: GetConsoleWindow
      Src: /src/gpac/applications/gpac/compositor_tools.c:1599,1
    - Dst: GetCurrentProcessId
      Src: /src/gpac/applications/gpac/compositor_tools.c:1600,1
    - Dst: getParentPID
      Src: /src/gpac/applications/gpac/compositor_tools.c:1601,1
    - Dst: getProcessName
      Src: /src/gpac/applications/gpac/compositor_tools.c:1605,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/compositor_tools.c:1606,1
    - Dst: getParentPID
      Src: /src/gpac/applications/gpac/compositor_tools.c:1612,1
    - Dst: getProcessName
      Src: /src/gpac/applications/gpac/compositor_tools.c:1617,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/compositor_tools.c:1618,1
    - Dst: ShowWindow
      Src: /src/gpac/applications/gpac/compositor_tools.c:1628,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1630
      start: 1591
    functionDepth: 1
    functionLinenumber: 1591
    functionLinenumberEnd: 1630
    functionName: gpac_is_global_launch
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 0
    functionsReached:
    - GetProcAddress
    - ShowWindow
    - getProcessName
    - GetConsoleWindow
    - strstr
    - getParentPID
    - GetModuleHandle
    - GetCurrentProcessId
    linkageType: ''
    returnType: Bool
    signature: Bool gpac_is_global_launch()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PostMessage
      Src: /src/gpac/applications/gpac/compositor_tools.c:1634,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1635
      start: 1631
    functionDepth: 0
    functionLinenumber: 1631
    functionLinenumberEnd: 1635
    functionName: close_console
    functionSourceFile: /src/gpac/applications/gpac/compositor_tools.c
    functionUses: 1
    functionsReached:
    - PostMessage
    linkageType: ''
    returnType: void
    signature: void close_console()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:539,1
    - Dst: gf_sys_localized
      Src: /src/gpac/applications/gpac/gpac_help.c:542,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 537
    functionDepth: 1
    functionLinenumber: 537
    functionLinenumberEnd: 548
    functionName: gpac_filter_help
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_sys_localized
    linkageType: ''
    returnType: void
    signature: void gpac_filter_help(void)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/gpac/gpac_help.c:560,1
    - Dst: gf_modules_load_by_name
      Src: /src/gpac/applications/gpac/gpac_help.c:561,1
    - Dst: gf_modules_load_by_name
      Src: /src/gpac/applications/gpac/gpac_help.c:562,1
    - Dst: gf_modules_load_by_name
      Src: /src/gpac/applications/gpac/gpac_help.c:563,1
    - Dst: gf_modules_load_by_name
      Src: /src/gpac/applications/gpac/gpac_help.c:564,1
    - Dst: gf_modules_load_by_name
      Src: /src/gpac/applications/gpac/gpac_help.c:565,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:568,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:571,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:573,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/gpac/gpac_help.c:576,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:580,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/applications/gpac/gpac_help.c:582,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:585,1
    - Dst: gf_modules_count
      Src: /src/gpac/applications/gpac/gpac_help.c:586,1
    - Dst: gf_modules_get_file_name
      Src: /src/gpac/applications/gpac/gpac_help.c:587,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:589,1
    - Dst: strncmp
      Src: /src/gpac/applications/gpac/gpac_help.c:590,1
    - Dst: strncmp
      Src: /src/gpac/applications/gpac/gpac_help.c:590,1
    - Dst: gf_modules_load_by_name
      Src: /src/gpac/applications/gpac/gpac_help.c:591,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:593,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/applications/gpac/gpac_help.c:594,1
    - Dst: gf_modules_load_by_name
      Src: /src/gpac/applications/gpac/gpac_help.c:596,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:598,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/applications/gpac/gpac_help.c:599,1
    - Dst: gf_modules_load_by_name
      Src: /src/gpac/applications/gpac/gpac_help.c:601,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:603,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/applications/gpac/gpac_help.c:604,1
    - Dst: gf_modules_load_by_name
      Src: /src/gpac/applications/gpac/gpac_help.c:606,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:608,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/applications/gpac/gpac_help.c:609,1
    - Dst: gf_modules_load_by_name
      Src: /src/gpac/applications/gpac/gpac_help.c:611,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:613,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/applications/gpac/gpac_help.c:614,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:617,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:619,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:621,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 65
    argCount: 1
    argNames:
    - mod_name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 556
    functionDepth: 1
    functionLinenumber: 556
    functionLinenumberEnd: 622
    functionName: gpac_modules_help
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_modules_count
    - gf_sys_format_help
    - gf_modules_load_by_name
    - gf_opts_set_key
    - gf_modules_get_file_name
    - gf_modules_close_interface
    - gf_sys_print_arg
    - strncmp
    - fprintf
    linkageType: ''
    returnType: void
    signature: void gpac_modules_help(char *mod_name)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:673,1
    - Dst: gf_sys_localized
      Src: /src/gpac/applications/gpac/gpac_help.c:673,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:675,1
    - Dst: gf_opts_get_key_count
      Src: /src/gpac/applications/gpac/gpac_help.c:682,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:685,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:687,1
    - Dst: gf_opts_get_key_name
      Src: /src/gpac/applications/gpac/gpac_help.c:690,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/gpac/gpac_help.c:691,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/gpac/gpac_help.c:692,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:694,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:696,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:699,1
    - Dst: gf_sys_localized
      Src: /src/gpac/applications/gpac/gpac_help.c:699,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:701,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:704,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:707,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 1
    argNames:
    - argmode
    argTypes:
    - GF_SysArgMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 666
    functionDepth: 1
    functionLinenumber: 666
    functionLinenumberEnd: 709
    functionName: gpac_alias_help
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_opts_get_key_name
    - gf_opts_get_key_count
    - gf_sys_localized
    - gf_opts_get_key
    linkageType: ''
    returnType: void
    signature: void gpac_alias_help(GF_SysArgMode argmode)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:715,1
    - Dst: gf_sys_print_core_help
      Src: /src/gpac/applications/gpac/gpac_help.c:723,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - mode
    - for_logs
    argTypes:
    - GF_SysArgMode
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 724
      start: 712
    functionDepth: 1
    functionLinenumber: 712
    functionLinenumberEnd: 724
    functionName: gpac_core_help
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_sys_print_core_help
    - gf_sys_format_help
    linkageType: ''
    returnType: void
    signature: void gpac_core_help(GF_SysArgMode mode, Bool for_logs)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:859,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:861,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/gpac/gpac_help.c:894,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:898,1
    - Dst: gf_sys_print_core_help
      Src: /src/gpac/applications/gpac/gpac_help.c:899,1
    - Dst: gf_opts_get_key_count
      Src: /src/gpac/applications/gpac/gpac_help.c:903,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:904,1
    - Dst: gpac_alias_help
      Src: /src/gpac/applications/gpac/gpac_help.c:905,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:907,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:913,1
    - Dst: gf_gpac_version
      Src: /src/gpac/applications/gpac/gpac_help.c:913,1
    - Dst: gf_gpac_copyright_cite
      Src: /src/gpac/applications/gpac/gpac_help.c:913,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 30
    argCount: 1
    argNames:
    - argmode
    argTypes:
    - GF_SysArgMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 915
      start: 854
    functionDepth: 2
    functionLinenumber: 854
    functionLinenumberEnd: 915
    functionName: gpac_usage
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gpac_alias_help
    - gf_sys_format_help
    - gf_sys_print_core_help
    - gf_gpac_copyright_cite
    - gf_opts_get_key_count
    - gf_sys_print_arg
    - gf_gpac_version
    linkageType: ''
    returnType: void
    signature: void gpac_usage(GF_SysArgMode argmode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:972,1
    - Dst: gf_sys_localized
      Src: /src/gpac/applications/gpac/gpac_help.c:972,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:974,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/gpac/gpac_help.c:980,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 982
      start: 968
    functionDepth: 1
    functionLinenumber: 968
    functionLinenumberEnd: 982
    functionName: gpac_defer_help
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_sys_print_arg
    - gf_sys_localized
    linkageType: ''
    returnType: void
    signature: void gpac_defer_help()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1052,1
    - Dst: gf_sys_localized
      Src: /src/gpac/applications/gpac/gpac_help.c:1052,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1054,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1058,1
    - Dst: gf_opts_get_filename
      Src: /src/gpac/applications/gpac/gpac_help.c:1058,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1059
      start: 1049
    functionDepth: 1
    functionLinenumber: 1049
    functionLinenumberEnd: 1059
    functionName: gpac_config_help
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_filename
    - gf_sys_format_help
    - gf_sys_localized
    linkageType: ''
    returnType: void
    signature: void gpac_config_help()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1117,1
    - Dst: gf_sys_localized
      Src: /src/gpac/applications/gpac/gpac_help.c:1117,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - argmode
    argTypes:
    - GF_SysArgMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1121
      start: 1114
    functionDepth: 1
    functionLinenumber: 1114
    functionLinenumberEnd: 1121
    functionName: gpac_credentials_help
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_sys_localized
    linkageType: ''
    returnType: void
    signature: void gpac_credentials_help(GF_SysArgMode argmode)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/applications/gpac/gpac_help.c:1132,1
    - Dst: gf_opts_get_filename
      Src: /src/gpac/applications/gpac/gpac_help.c:1135,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/applications/gpac/gpac_help.c:1136,1
    - Dst: gf_cfg_force_new
      Src: /src/gpac/applications/gpac/gpac_help.c:1138,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:1139,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac_help.c:1141,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:1142,1
    - Dst: gf_gpac_version
      Src: /src/gpac/applications/gpac/gpac_help.c:1142,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac_help.c:1143,1
    - Dst: gf_cfg_del_section
      Src: /src/gpac/applications/gpac/gpac_help.c:1146,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac_help.c:1147,1
    - Dst: gf_gpac_version
      Src: /src/gpac/applications/gpac/gpac_help.c:1147,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1149,1
    - Dst: gf_fs_new
      Src: /src/gpac/applications/gpac/gpac_help.c:1151,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1153,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac_help.c:1154,1
    - Dst: gf_fs_filters_registers_count
      Src: /src/gpac/applications/gpac/gpac_help.c:1158,1
    - Dst: gf_fs_get_filter_register
      Src: /src/gpac/applications/gpac/gpac_help.c:1160,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac_help.c:1174,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac_help.c:1176,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac_help.c:1178,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:1179,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac_help.c:1180,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac_help.c:1183,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac_help.c:1185,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac_help.c:1186,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac_help.c:1187,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:1188,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac_help.c:1190,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:1192,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/gpac/gpac_help.c:1195,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac_help.c:1196,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1197,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 54
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1198
      start: 1124
    functionDepth: 1
    functionLinenumber: 1124
    functionLinenumberEnd: 1198
    functionName: gpac_load_suggested_filter_args
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_cfg_force_new
    - gf_cfg_del_section
    - strchr
    - gf_cfg_set_key
    - gf_strdup
    - gf_cfg_del
    - gf_opts_get_filename
    - gf_cfg_get_key
    - gf_fs_get_filter_register
    - gf_dynstrcat
    - gf_fs_filters_registers_count
    - gf_fs_del
    - gf_fs_new
    - gf_sys_format_help
    - gf_url_concatenate
    - gf_gpac_version
    - strcmp
    - gf_opts_get_bool
    linkageType: ''
    returnType: void
    signature: void gpac_load_suggested_filter_args()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_get_options
      Src: /src/gpac/applications/gpac/gpac_help.c:1210,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/applications/gpac/gpac_help.c:1215,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1217,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1220,1
    - Dst: gf_opts_get_key_count
      Src: /src/gpac/applications/gpac/gpac_help.c:1226,1
    - Dst: gf_opts_get_key_name
      Src: /src/gpac/applications/gpac/gpac_help.c:1228,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/applications/gpac/gpac_help.c:1229,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1231,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1234,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1240,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 1
    argNames:
    - aname
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1242
      start: 1201
    functionDepth: 1
    functionLinenumber: 1201
    functionLinenumberEnd: 1242
    functionName: gpac_suggest_arg
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_key_name
    - GF_LOG
    - gf_opts_get_key_count
    - gf_sys_get_options
    - gf_sys_word_match
    linkageType: ''
    returnType: void
    signature: void gpac_suggest_arg(char *aname)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_filters_registers_count
      Src: /src/gpac/applications/gpac/gpac_help.c:1256,1
    - Dst: gf_fs_get_filter_register
      Src: /src/gpac/applications/gpac/gpac_help.c:1259,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/applications/gpac/gpac_help.c:1261,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1265,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1268,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1270,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/applications/gpac/gpac_help.c:1287,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1291,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1294,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1296,1
    - Dst: gf_opts_get_key_count
      Src: /src/gpac/applications/gpac/gpac_help.c:1303,1
    - Dst: gf_opts_get_key_name
      Src: /src/gpac/applications/gpac/gpac_help.c:1306,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:1309,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/gpac/gpac_help.c:1310,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1312,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/applications/gpac/gpac_help.c:1317,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1321,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1324,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1326,1
    - Dst: gf_sys_get_options
      Src: /src/gpac/applications/gpac/gpac_help.c:1332,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/applications/gpac/gpac_help.c:1337,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:1338,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1339,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1346,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1349,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1351,1
    - Dst: gf_fs_get_filter_register
      Src: /src/gpac/applications/gpac/gpac_help.c:1360,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:1368,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1369,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/applications/gpac/gpac_help.c:1376,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1381,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1384,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1386,1
    - Dst: gf_props_get_description
      Src: /src/gpac/applications/gpac/gpac_help.c:1394,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/applications/gpac/gpac_help.c:1398,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1402,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1405,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1408,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1410,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1424,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 148
    argCount: 3
    argNames:
    - fname
    - is_help
    - filter_only
    argTypes:
    - char*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1430
      start: 1244
    functionDepth: 1
    functionLinenumber: 1244
    functionLinenumberEnd: 1430
    functionName: gpac_suggest_filter
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_sys_get_options
    - gf_sys_format_help
    - gf_opts_get_key_name
    - gf_props_get_description
    - GF_LOG
    - gf_opts_get_key_count
    - strcmp
    - gf_opts_get_key
    - gf_fs_filters_registers_count
    - gf_fs_get_filter_register
    - gf_sys_word_match
    linkageType: ''
    returnType: Bool
    signature: Bool gpac_suggest_filter(char *fname, Bool is_help, Bool filter_only)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/applications/gpac/gpac_help.c:1440,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac_help.c:1446,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/gpac/gpac_help.c:1447,1
    - Dst: sprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:1448,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac_help.c:1449,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:1450,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1452,1
    - Dst: gf_fs_get_filters_count
      Src: /src/gpac/applications/gpac/gpac_help.c:1457,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/applications/gpac/gpac_help.c:1458,1
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/applications/gpac/gpac_help.c:1462,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac_help.c:1463,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:1468,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:1472,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1473,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac_help.c:1479,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1482,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1486,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac_help.c:1491,1
    - Dst: gf_fs_get_filter_stats
      Src: /src/gpac/applications/gpac/gpac_help.c:1500,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac_help.c:1502,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/applications/gpac/gpac_help.c:1511,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1513,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1517,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1522,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 71
    argCount: 3
    argNames:
    - opts
    - argname
    - atype
    argTypes:
    - GF_Config*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1525
      start: 1432
    functionDepth: 1
    functionLinenumber: 1432
    functionLinenumberEnd: 1525
    functionName: gpac_suggest_filter_arg
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fs_get_filters_count
    - GF_LOG
    - gf_cfg_get_key_count
    - strlen
    - gf_cfg_get_key
    - sprintf
    - strstr
    - gf_cfg_get_key_name
    - strcmp
    - gf_fs_get_filter_stats
    - gf_opts_get_bool
    - strchr
    - gf_malloc
    - gf_sys_word_match
    linkageType: ''
    returnType: void
    signature: void gpac_suggest_filter_arg(GF_Config *opts, const char *argname,
      u32 atype)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_enum_unmapped_options
      Src: /src/gpac/applications/gpac/gpac_help.c:1535,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1540,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:1542,1
    - Dst: gf_opts_get_filename
      Src: /src/gpac/applications/gpac/gpac_help.c:1548,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/applications/gpac/gpac_help.c:1549,1
    - Dst: gf_cfg_new
      Src: /src/gpac/applications/gpac/gpac_help.c:1550,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:1551,1
    - Dst: gpac_suggest_filter_arg
      Src: /src/gpac/applications/gpac/gpac_help.c:1556,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac_help.c:1558,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1559
      start: 1527
    functionDepth: 2
    functionLinenumber: 1527
    functionLinenumberEnd: 1559
    functionName: gpac_check_session_args
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_cfg_del
    - gf_fs_enum_unmapped_options
    - GF_LOG
    - gf_opts_get_filename
    - gf_url_concatenate
    - gf_cfg_new
    - gpac_suggest_filter_arg
    linkageType: ''
    returnType: void
    signature: void gpac_check_session_args()
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1578,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1580,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/applications/gpac/gpac_help.c:1584,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/gpac/gpac_help.c:1585,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1586,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1587,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1588,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1589,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1590,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/applications/gpac/gpac_help.c:1593,1
    - Dst: gf_codecid_name
      Src: /src/gpac/applications/gpac/gpac_help.c:1594,1
    - Dst: gf_props_dump_val
      Src: /src/gpac/applications/gpac/gpac_help.c:1595,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1597,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1598,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1599,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 34
    argCount: 2
    argNames:
    - nb_caps
    - caps
    argTypes:
    - u32
    - GF_FilterCapability*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1601
      start: 1567
    functionDepth: 1
    functionLinenumber: 1567
    functionLinenumberEnd: 1601
    functionName: dump_caps
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_sys_format_help
    - gf_props_4cc_get_name
    - gf_props_dump_val
    - gf_codecid_name
    - gf_stream_type_name
    linkageType: ''
    returnType: void
    signature: void dump_caps(u32 nb_caps, const GF_FilterCapability *caps)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:1607,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1612,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1614,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1616,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1618,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1619,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/applications/gpac/gpac_help.c:1619,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1621,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/applications/gpac/gpac_help.c:1622,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:1627,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1628,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:1629,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1630,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1632,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:1637,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:1638,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1639,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1641,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1643,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:1646,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1647,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1649,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1652,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac_help.c:1658,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/gpac/gpac_help.c:1664,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:1667,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1668,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac_help.c:1669,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1670,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 50
    argCount: 2
    argNames:
    - a
    - gen_doc
    argTypes:
    - GF_FilterArgs*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1671
      start: 1603
    functionDepth: 1
    functionLinenumber: 1603
    functionLinenumberEnd: 1671
    functionName: print_filter_arg
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_sys_print_arg
    - strstr
    - memset
    - strcmp
    - strchr
    - gf_props_get_type_name
    linkageType: ''
    returnType: void
    signature: void print_filter_arg(const GF_FilterArgs *a, u32 gen_doc)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:1676,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:1676,1
    - Dst: gf_filter_get_args
      Src: /src/gpac/applications/gpac/gpac_help.c:1679,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:1689,1
    - Dst: print_filter_arg
      Src: /src/gpac/applications/gpac/gpac_help.c:1691,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/applications/gpac/gpac_help.c:1701,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac_help.c:1702,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:1706,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/applications/gpac/gpac_help.c:1706,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:1708,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:1713,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/applications/gpac/gpac_help.c:1713,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 34
    argCount: 3
    argNames:
    - reg
    - optname
    - filter_inst
    argTypes:
    - GF_FilterRegister*
    - char*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1714
      start: 1673
    functionDepth: 2
    functionLinenumber: 1673
    functionLinenumberEnd: 1714
    functionName: print_filter_single_opt
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_name
    - gf_filter_get_args
    - strstr
    - strcmp
    - print_filter_arg
    - fprintf
    - gf_sys_word_match
    linkageType: ''
    returnType: void
    signature: void print_filter_single_opt(const GF_FilterRegister *reg, char *optname,
      GF_Filter *filter_inst)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/applications/gpac/gpac_help.c:1719,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac_help.c:1721,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/gpac/gpac_help.c:1723,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/gpac/gpac_help.c:1726,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/gpac/gpac_help.c:1728,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/gpac/gpac_help.c:1729,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/gpac/gpac_help.c:1747,1
    - Dst: gf_list_insert
      Src: /src/gpac/applications/gpac/gpac_help.c:1749,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac_help.c:1753,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 63
    argCount: 1
    argNames:
    - hint
    argTypes:
    - GF_ClassTypeHint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1755
      start: 1716
    functionDepth: 1
    functionLinenumber: 1716
    functionLinenumberEnd: 1755
    functionName: get_filter_class
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_new
    - gf_list_get
    - GF_SAFEALLOC
    - gf_list_count
    - gf_list_add
    linkageType: ''
    returnType: FilterCategory
    signature: FilterCategory *get_filter_class(GF_ClassTypeHint hint)
  - BBCount: 83
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_description
      Src: /src/gpac/applications/gpac/gpac_help.c:1770,1
    - Dst: gf_filter_get_class_hint
      Src: /src/gpac/applications/gpac/gpac_help.c:1771,1
    - Dst: gf_filter_get_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1773,1
    - Dst: sprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:1794,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/gpac/gpac_help.c:1796,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/gpac/gpac_help.c:1797,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:1798,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:1801,1
    - Dst: exit
      Src: /src/gpac/applications/gpac/gpac_help.c:1802,1
    - Dst: get_filter_class
      Src: /src/gpac/applications/gpac/gpac_help.c:1804,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac_help.c:1806,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/gpac/gpac_help.c:1808,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:1809,1
    - Dst: gf_list_insert
      Src: /src/gpac/applications/gpac/gpac_help.c:1810,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac_help.c:1810,1
    - Dst: gf_list_insert
      Src: /src/gpac/applications/gpac/gpac_help.c:1811,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac_help.c:1811,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac_help.c:1816,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac_help.c:1816,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac_help.c:1817,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac_help.c:1817,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:1823,1
    - Dst: exit
      Src: /src/gpac/applications/gpac/gpac_help.c:1824,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1829,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1831,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1833,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1836,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1838,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1841,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1844,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1848,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1849,1
    - Dst: gf_filter_get_version
      Src: /src/gpac/applications/gpac/gpac_help.c:1852,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1854,1
    - Dst: strncmp
      Src: /src/gpac/applications/gpac/gpac_help.c:1857,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1859,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1861,1
    - Dst: gf_filter_get_author
      Src: /src/gpac/applications/gpac/gpac_help.c:1870,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1872,1
    - Dst: gf_filter_get_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1874,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1876,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1882,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1885,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1891,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1894,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1899,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1900,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1902,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1903,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1904,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1905,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1906,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1907,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1908,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1909,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1910,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1911,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1913,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1915,1
    - Dst: gf_filter_get_args
      Src: /src/gpac/applications/gpac/gpac_help.c:1918,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1936,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1941,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1944,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:1947,1
    - Dst: print_filter_arg
      Src: /src/gpac/applications/gpac/gpac_help.c:1971,1
    - Dst: sprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:1980,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac_help.c:1983,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:1985,1
    - Dst: exit
      Src: /src/gpac/applications/gpac/gpac_help.c:1986,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac_help.c:1993,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:1994,1
    - Dst: exit
      Src: /src/gpac/applications/gpac/gpac_help.c:1995,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:2005,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2006,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac_help.c:2010,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:2014,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac_help.c:2015,1
    - Dst: strcpy
      Src: /src/gpac/applications/gpac/gpac_help.c:2016,1
    - Dst: strncat
      Src: /src/gpac/applications/gpac/gpac_help.c:2017,1
    - Dst: MIN
      Src: /src/gpac/applications/gpac/gpac_help.c:2017,1
    - Dst: strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2019,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac_help.c:2021,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:2022,1
    - Dst: exit
      Src: /src/gpac/applications/gpac/gpac_help.c:2023,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac_help.c:2028,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:2029,1
    - Dst: exit
      Src: /src/gpac/applications/gpac/gpac_help.c:2030,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac_help.c:2032,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:2033,1
    - Dst: exit
      Src: /src/gpac/applications/gpac/gpac_help.c:2034,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:2036,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:2037,1
    - Dst: exit
      Src: /src/gpac/applications/gpac/gpac_help.c:2038,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac_help.c:2044,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:2046,1
    - Dst: exit
      Src: /src/gpac/applications/gpac/gpac_help.c:2047,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:2054,1
    - Dst: exit
      Src: /src/gpac/applications/gpac/gpac_help.c:2055,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:2059,1
    - Dst: exit
      Src: /src/gpac/applications/gpac/gpac_help.c:2060,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:2062,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:2065,1
    - Dst: exit
      Src: /src/gpac/applications/gpac/gpac_help.c:2066,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2072,1
    - Dst: gf_filter_get_caps
      Src: /src/gpac/applications/gpac/gpac_help.c:2078,1
    - Dst: dump_caps
      Src: /src/gpac/applications/gpac/gpac_help.c:2079,1
    - Dst: dump_caps
      Src: /src/gpac/applications/gpac/gpac_help.c:2081,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2084,1
    CyclomaticComplexity: 119
    EdgeCount: 119
    ICount: 276
    argCount: 4
    argNames:
    - reg
    - argmode
    - filter_inst
    - inst_name
    argTypes:
    - GF_FilterRegister*
    - GF_SysArgMode
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2085
      start: 1757
    functionDepth: 2
    functionLinenumber: 1757
    functionLinenumberEnd: 2085
    functionName: print_filter
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - strcpy
    - gf_filter_get_caps
    - gf_list_count
    - gf_fopen
    - print_filter_arg
    - strchr
    - fprintf
    - strcat
    - gf_list_get
    - gf_strdup
    - gf_filter_get_args
    - gf_filter_get_version
    - dump_caps
    - get_filter_class
    - sprintf
    - strncat
    - strncmp
    - exit
    - gf_list_add
    - gf_filter_get_description
    - gf_filter_get_author
    - gf_list_insert
    - strstr
    - MIN
    - gf_filter_get_class_hint
    - gf_filter_get_help
    - strlen
    - gf_fclose
    - gf_sys_format_help
    - strcmp
    linkageType: ''
    returnType: void
    signature: void print_filter(const GF_FilterRegister *reg, GF_SysArgMode argmode,
      GF_Filter *filter_inst, char *inst_name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tolower
      Src: /src/gpac/applications/gpac/gpac_help.c:2093,1
    - Dst: strnicmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2094,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 3
    argNames:
    - text
    - subtext
    - subtext_len
    argTypes:
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2101
      start: 2087
    functionDepth: 0
    functionLinenumber: 2087
    functionLinenumberEnd: 2101
    functionName: strstr_nocase
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - tolower
    - strnicmp
    linkageType: ''
    returnType: Bool
    signature: Bool strstr_nocase(const char *text, const char *subtext, u32 subtext_len)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2117,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/applications/gpac/gpac_help.c:2121,1
    - Dst: strcpy
      Src: /src/gpac/applications/gpac/gpac_help.c:2126,1
    - Dst: strcpy
      Src: /src/gpac/applications/gpac/gpac_help.c:2128,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/applications/gpac/gpac_help.c:2130,1
    - Dst: print_filter
      Src: /src/gpac/applications/gpac/gpac_help.c:2134,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2136,1
    - Dst: gf_filter_get_description
      Src: /src/gpac/applications/gpac/gpac_help.c:2136,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 4
    argNames:
    - cbck
    - item_name
    - item_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2139
      start: 2113
    functionDepth: 3
    functionLinenumber: 2113
    functionLinenumberEnd: 2139
    functionName: jsinfo_enum
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - print_filter
    - gf_sys_format_help
    - gf_fs_load_filter
    - strcpy
    - gf_file_ext_start
    - strcmp
    - gf_filter_get_description
    linkageType: ''
    returnType: Bool
    signature: Bool jsinfo_enum(void *cbck, char *item_name, char *item_path, GF_FileEnumInfo
      *file_info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/gpac/gpac_help.c:2146,1
    - Dst: strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2147,1
    - Dst: strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2148,1
    - Dst: gf_enum_directory
      Src: /src/gpac/applications/gpac/gpac_help.c:2149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - cbck
    - item_name
    - item_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2152
      start: 2140
    functionDepth: 1
    functionLinenumber: 2140
    functionLinenumberEnd: 2152
    functionName: jsinfo_dir_enum
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - strcat
    - strcpy
    - gf_enum_directory
    linkageType: ''
    returnType: Bool
    signature: Bool jsinfo_dir_enum(void *cbck, char *item_name, char *item_path,
      GF_FileEnumInfo *file_info)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_exists
      Src: /src/gpac/applications/gpac/gpac_help.c:2157,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/gpac/gpac_help.c:2159,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:2160,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/gpac/gpac_help.c:2161,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/gpac/gpac_help.c:2167,1
    - Dst: feof
      Src: /src/gpac/applications/gpac/gpac_help.c:2168,1
    - Dst: gf_fgets
      Src: /src/gpac/applications/gpac/gpac_help.c:2169,1
    - Dst: strncmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2171,1
    - Dst: strncmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2174,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2175,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac_help.c:2178,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/applications/gpac/gpac_help.c:2179,1
    - Dst: sprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:2180,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2181,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac_help.c:2182,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/applications/gpac/gpac_help.c:2183,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/applications/gpac/gpac_help.c:2184,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac_help.c:2186,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac_help.c:2187,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac_help.c:2188,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac_help.c:2189,1
    - Dst: sprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:2192,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2193,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:2195,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:2196,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac_help.c:2198,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac_help.c:2199,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:2200,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2205,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/gpac/gpac_help.c:2209,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/gpac/gpac_help.c:2211,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/gpac/gpac_help.c:2212,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac_help.c:2212,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/gpac/gpac_help.c:2213,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:2214,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac_help.c:2217,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/applications/gpac/gpac_help.c:2218,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac_help.c:2219,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:2220,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/applications/gpac/gpac_help.c:2220,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac_help.c:2222,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac_help.c:2224,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:2225,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/applications/gpac/gpac_help.c:2225,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac_help.c:2227,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:2228,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac_help.c:2230,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 64
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2231
      start: 2154
    functionDepth: 1
    functionLinenumber: 2154
    functionLinenumberEnd: 2231
    functionName: patch_mkdocs_yml
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_list_pop_back
    - gf_fprintf
    - gf_file_exists
    - gf_fgets
    - gf_list_pop_front
    - strlen
    - sprintf
    - strstr
    - gf_fwrite
    - gf_list_count
    - strncmp
    - gf_fopen
    - gf_dynstrcat
    - feof
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void patch_mkdocs_yml()
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_filters_registers_count
      Src: /src/gpac/applications/gpac/gpac_help.c:2240,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2242,1
    - Dst: gf_fs_get_filter_register
      Src: /src/gpac/applications/gpac/gpac_help.c:2246,1
    - Dst: print_filter
      Src: /src/gpac/applications/gpac/gpac_help.c:2248,1
    - Dst: print_filter
      Src: /src/gpac/applications/gpac/gpac_help.c:2250,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2253,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2255,1
    - Dst: gf_file_basename
      Src: /src/gpac/applications/gpac/gpac_help.c:2270,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:2271,1
    - Dst: strncmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2272,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:2272,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2274,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac_help.c:2275,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:2285,1
    - Dst: gf_fs_get_filter_register
      Src: /src/gpac/applications/gpac/gpac_help.c:2287,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2289,1
    - Dst: print_filter_single_opt
      Src: /src/gpac/applications/gpac/gpac_help.c:2291,1
    - Dst: print_filter
      Src: /src/gpac/applications/gpac/gpac_help.c:2293,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2298,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2298,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2299,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2299,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2300,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2300,1
    - Dst: strncmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2300,1
    - Dst: print_filter_single_opt
      Src: /src/gpac/applications/gpac/gpac_help.c:2303,1
    - Dst: print_filter
      Src: /src/gpac/applications/gpac/gpac_help.c:2305,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2307,1
    - Dst: strncmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2316,1
    - Dst: strrchr
      Src: /src/gpac/applications/gpac/gpac_help.c:2316,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/gpac/gpac_help.c:2319,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/applications/gpac/gpac_help.c:2323,1
    - Dst: gf_filter_get_register
      Src: /src/gpac/applications/gpac/gpac_help.c:2324,1
    - Dst: strcpy
      Src: /src/gpac/applications/gpac/gpac_help.c:2331,1
    - Dst: gf_file_basename
      Src: /src/gpac/applications/gpac/gpac_help.c:2331,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/applications/gpac/gpac_help.c:2332,1
    - Dst: print_filter_single_opt
      Src: /src/gpac/applications/gpac/gpac_help.c:2335,1
    - Dst: print_filter
      Src: /src/gpac/applications/gpac/gpac_help.c:2337,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/gpac/gpac_help.c:2343,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/gpac/gpac_help.c:2351,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac_help.c:2354,1
    - Dst: gf_log_set_tools_levels
      Src: /src/gpac/applications/gpac/gpac_help.c:2359,1
    - Dst: gf_opts_default_shared_directory
      Src: /src/gpac/applications/gpac/gpac_help.c:2361,1
    - Dst: strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2362,1
    - Dst: gf_enum_directory
      Src: /src/gpac/applications/gpac/gpac_help.c:2364,1
    - Dst: gf_enum_directory
      Src: /src/gpac/applications/gpac/gpac_help.c:2365,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:2368,1
    - Dst: strncpy
      Src: /src/gpac/applications/gpac/gpac_help.c:2372,1
    - Dst: strcpy
      Src: /src/gpac/applications/gpac/gpac_help.c:2376,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2379,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac_help.c:2380,1
    - Dst: strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2382,1
    - Dst: gf_enum_directory
      Src: /src/gpac/applications/gpac/gpac_help.c:2383,1
    - Dst: patch_mkdocs_yml
      Src: /src/gpac/applications/gpac/gpac_help.c:2387,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac_help.c:2399,1
    - Dst: strlwr
      Src: /src/gpac/applications/gpac/gpac_help.c:2400,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac_help.c:2401,1
    - Dst: gf_fs_get_filter_register
      Src: /src/gpac/applications/gpac/gpac_help.c:2406,1
    - Dst: strstr_nocase
      Src: /src/gpac/applications/gpac/gpac_help.c:2413,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:2415,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2418,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2422,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:2424,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2427,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:2432,1
    - Dst: gpac_suggest_filter
      Src: /src/gpac/applications/gpac/gpac_help.c:2437,1
    CyclomaticComplexity: 78
    EdgeCount: 78
    ICount: 163
    argCount: 3
    argNames:
    - argc
    - argv
    - argmode
    argTypes:
    - int
    - char**
    - GF_SysArgMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2440
      start: 2233
    functionDepth: 3
    functionLinenumber: 2233
    functionLinenumberEnd: 2440
    functionName: print_filters
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_enum_directory
    - print_filter
    - gf_filter_get_register
    - gf_opts_set_key
    - strcpy
    - gf_log_set_tools_levels
    - memset
    - gf_opts_get_key
    - print_filter_single_opt
    - strchr
    - gf_file_basename
    - strcat
    - gf_strdup
    - strrchr
    - strstr_nocase
    - strlwr
    - strncmp
    - gf_fs_get_filter_register
    - patch_mkdocs_yml
    - gf_fs_load_filter
    - gpac_suggest_filter
    - GF_LOG
    - strstr
    - strncpy
    - gf_fs_filters_registers_count
    - strlen
    - gf_sys_format_help
    - gf_file_ext_start
    - strcmp
    - gf_opts_default_shared_directory
    linkageType: ''
    returnType: Bool
    signature: Bool print_filters(int argc, char **argv, GF_SysArgMode argmode)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac_help.c:2449,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/gpac/gpac_help.c:2467,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/applications/gpac/gpac_help.c:2468,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:2470,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2474,1
    - Dst: gf_props_sanity_check
      Src: /src/gpac/applications/gpac/gpac_help.c:2475,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:2479,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 38
    argCount: 1
    argNames:
    - pname
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2480
      start: 2442
    functionDepth: 1
    functionLinenumber: 2442
    functionLinenumberEnd: 2480
    functionName: check_prop_def
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_props_4cc_get_name
    - strcmp
    - GF_4CC
    - gf_props_sanity_check
    - strlen
    - fprintf
    linkageType: ''
    returnType: void
    signature: void check_prop_def(char *pname)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac_help.c:2486,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2491,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2494,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2495,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2501,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/applications/gpac/gpac_help.c:2501,1
    - Dst: gf_props_get_type_desc
      Src: /src/gpac/applications/gpac/gpac_help.c:2501,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2504,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2510,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2511,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2513,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2515,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2523,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/applications/gpac/gpac_help.c:2523,1
    - Dst: gf_props_get_type_desc
      Src: /src/gpac/applications/gpac/gpac_help.c:2523,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2525,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/applications/gpac/gpac_help.c:2525,1
    - Dst: gf_props_get_type_desc
      Src: /src/gpac/applications/gpac/gpac_help.c:2525,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2528,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2530,1
    - Dst: gf_props_get_description
      Src: /src/gpac/applications/gpac/gpac_help.c:2533,1
    - Dst: strcpy
      Src: /src/gpac/applications/gpac/gpac_help.c:2539,1
    - Dst: strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2540,1
    - Dst: strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2541,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2543,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/applications/gpac/gpac_help.c:2543,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/gpac/gpac_help.c:2550,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2553,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/gpac/gpac_help.c:2553,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/applications/gpac/gpac_help.c:2553,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/applications/gpac/gpac_help.c:2567,1
    - Dst: gf_strnistr
      Src: /src/gpac/applications/gpac/gpac_help.c:2569,1
    - Dst: strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2574,1
    - Dst: strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2575,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2577,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac_help.c:2578,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2580,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/applications/gpac/gpac_help.c:2583,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2584,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/gpac/gpac_help.c:2584,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac_help.c:2585,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac_help.c:2585,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2587,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2591,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2599,1
    - Dst: gf_pixel_fmt_all_names
      Src: /src/gpac/applications/gpac/gpac_help.c:2599,1
    - Dst: gf_pixel_fmt_all_shortnames
      Src: /src/gpac/applications/gpac/gpac_help.c:2599,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2601,1
    - Dst: gf_audio_fmt_all_names
      Src: /src/gpac/applications/gpac/gpac_help.c:2601,1
    - Dst: gf_audio_fmt_all_shortnames
      Src: /src/gpac/applications/gpac/gpac_help.c:2601,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/applications/gpac/gpac_help.c:2602,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2603,1
    - Dst: gf_props_enum_all_names
      Src: /src/gpac/applications/gpac/gpac_help.c:2603,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2605,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2614,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2615,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2616,1
    - Dst: gf_pixel_fmt_enum
      Src: /src/gpac/applications/gpac/gpac_help.c:2617,1
    - Dst: gf_pixel_fmt_to_qt_type
      Src: /src/gpac/applications/gpac/gpac_help.c:2619,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/gpac/gpac_help.c:2620,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2622,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2626,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2627,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2628,1
    - Dst: gf_audio_fmt_enum
      Src: /src/gpac/applications/gpac/gpac_help.c:2629,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2630,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2634,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2635,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2636,1
    - Dst: gf_stream_types_enum
      Src: /src/gpac/applications/gpac/gpac_help.c:2637,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2638,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2642,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2643,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2647,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2648,1
    - Dst: gf_codecid_enum
      Src: /src/gpac/applications/gpac/gpac_help.c:2649,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2650,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2656,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2657,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2658,1
    - Dst: gf_audio_fmt_cicp_enum
      Src: /src/gpac/applications/gpac/gpac_help.c:2659,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2660,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2664,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2665,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2666,1
    - Dst: gf_cicp_color_primaries_name
      Src: /src/gpac/applications/gpac/gpac_help.c:2668,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2669,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2670,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2672,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2673,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2674,1
    - Dst: gf_cicp_color_transfer_name
      Src: /src/gpac/applications/gpac/gpac_help.c:2676,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2678,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2680,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2681,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2682,1
    - Dst: gf_cicp_color_matrix_name
      Src: /src/gpac/applications/gpac/gpac_help.c:2684,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2686,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2692,1
    - Dst: gf_pixel_fmt_enum
      Src: /src/gpac/applications/gpac/gpac_help.c:2693,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2694,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2698,1
    - Dst: gf_audio_fmt_enum
      Src: /src/gpac/applications/gpac/gpac_help.c:2699,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2700,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2704,1
    - Dst: gf_stream_types_enum
      Src: /src/gpac/applications/gpac/gpac_help.c:2705,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2706,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2710,1
    - Dst: gf_codecid_enum
      Src: /src/gpac/applications/gpac/gpac_help.c:2711,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2712,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2717,1
    - Dst: gf_audio_fmt_cicp_enum
      Src: /src/gpac/applications/gpac/gpac_help.c:2718,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2719,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 190
    argCount: 1
    argNames:
    - pname
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2723
      start: 2482
    functionDepth: 1
    functionLinenumber: 2482
    functionLinenumberEnd: 2723
    functionName: dump_all_props
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - strcpy
    - gf_pixel_fmt_enum
    - gf_codecid_enum
    - gf_cicp_color_matrix_name
    - strcat
    - gf_4cc_to_str
    - gf_props_type_is_enum
    - gf_audio_fmt_enum
    - gf_cicp_color_primaries_name
    - gf_sys_word_match
    - gf_audio_fmt_cicp_enum
    - gf_stream_types_enum
    - strlen
    - gf_sys_format_help
    - gf_props_get_description
    - gf_pixel_fmt_all_names
    - gf_pixel_fmt_all_shortnames
    - gf_props_get_type_desc
    - gf_audio_fmt_all_shortnames
    - gf_audio_fmt_all_names
    - strcmp
    - gf_cicp_color_transfer_name
    - gf_pixel_fmt_to_qt_type
    - gf_props_get_type_name
    - gf_props_enum_all_names
    - gf_strnistr
    linkageType: ''
    returnType: void
    signature: void dump_all_props(char *pname)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_color_enum
      Src: /src/gpac/applications/gpac/gpac_help.c:2730,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2731,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2733
      start: 2725
    functionDepth: 1
    functionLinenumber: 2725
    functionLinenumberEnd: 2733
    functionName: dump_all_colors
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_color_enum
    - gf_sys_format_help
    linkageType: ''
    returnType: void
    signature: void dump_all_colors(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2741,1
    - Dst: gf_audio_fmt_cicp_enum
      Src: /src/gpac/applications/gpac/gpac_help.c:2742,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2743,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2746
      start: 2735
    functionDepth: 1
    functionLinenumber: 2735
    functionLinenumberEnd: 2746
    functionName: dump_all_audio_cicp
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_audio_fmt_cicp_enum
    linkageType: ''
    returnType: void
    signature: void dump_all_audio_cicp(void)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/applications/gpac/gpac_help.c:2753,1
    - Dst: gf_fs_filters_registers_count
      Src: /src/gpac/applications/gpac/gpac_help.c:2757,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2759,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2760,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2761,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2762,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2763,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2764,1
    - Dst: gf_fs_get_filter_register
      Src: /src/gpac/applications/gpac/gpac_help.c:2778,1
    - Dst: gf_list_find
      Src: /src/gpac/applications/gpac/gpac_help.c:2785,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac_help.c:2786,1
    - Dst: gf_codecid_enum
      Src: /src/gpac/applications/gpac/gpac_help.c:2800,1
    - Dst: gf_codecid_type
      Src: /src/gpac/applications/gpac/gpac_help.c:2806,1
    - Dst: gf_codecid_alt
      Src: /src/gpac/applications/gpac/gpac_help.c:2807,1
    - Dst: gf_fs_get_filter_register
      Src: /src/gpac/applications/gpac/gpac_help.c:2810,1
    - Dst: gf_fs_check_filter_register_cap
      Src: /src/gpac/applications/gpac/gpac_help.c:2812,1
    - Dst: gf_fs_check_filter_register_cap
      Src: /src/gpac/applications/gpac/gpac_help.c:2813,1
    - Dst: gf_list_find
      Src: /src/gpac/applications/gpac/gpac_help.c:2815,1
    - Dst: gf_list_del_item
      Src: /src/gpac/applications/gpac/gpac_help.c:2816,1
    - Dst: gf_fs_check_filter_register_cap
      Src: /src/gpac/applications/gpac/gpac_help.c:2817,1
    - Dst: gf_list_find
      Src: /src/gpac/applications/gpac/gpac_help.c:2819,1
    - Dst: gf_list_del_item
      Src: /src/gpac/applications/gpac/gpac_help.c:2820,1
    - Dst: gf_fs_check_filter_register_cap
      Src: /src/gpac/applications/gpac/gpac_help.c:2822,1
    - Dst: gf_fs_check_filter_register_cap
      Src: /src/gpac/applications/gpac/gpac_help.c:2824,1
    - Dst: gf_fs_check_filter_register_cap
      Src: /src/gpac/applications/gpac/gpac_help.c:2829,1
    - Dst: gf_fs_check_filter_register_cap
      Src: /src/gpac/applications/gpac/gpac_help.c:2830,1
    - Dst: gf_fs_check_filter_register_cap
      Src: /src/gpac/applications/gpac/gpac_help.c:2833,1
    - Dst: gf_fs_check_filter_register_cap
      Src: /src/gpac/applications/gpac/gpac_help.c:2834,1
    - Dst: strcpy
      Src: /src/gpac/applications/gpac/gpac_help.c:2841,1
    - Dst: strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2842,1
    - Dst: strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2843,1
    - Dst: strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2844,1
    - Dst: strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2845,1
    - Dst: strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2846,1
    - Dst: gf_codecid_mime
      Src: /src/gpac/applications/gpac/gpac_help.c:2849,1
    - Dst: gf_codecid_4cc_type
      Src: /src/gpac/applications/gpac/gpac_help.c:2850,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2851,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac_help.c:2853,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac_help.c:2853,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2856,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2858,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2860,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2861,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/gpac/gpac_help.c:2861,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2862,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2863,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2864,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2866,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2870,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2871,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac_help.c:2872,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/gpac/gpac_help.c:2877,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:2878,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/gpac/gpac_help.c:2891,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:2892,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2895,1
    - Dst: gf_list_rem
      Src: /src/gpac/applications/gpac/gpac_help.c:2902,1
    - Dst: strcpy
      Src: /src/gpac/applications/gpac/gpac_help.c:2906,1
    - Dst: strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2907,1
    - Dst: strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2908,1
    - Dst: strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2909,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2911,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac_help.c:2912,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac_help.c:2912,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2915,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2917,1
    - Dst: gf_list_rem
      Src: /src/gpac/applications/gpac/gpac_help.c:2918,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac_help.c:2922,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:2925,1
    CyclomaticComplexity: 75
    EdgeCount: 75
    ICount: 172
    argCount: 1
    argNames:
    - argmode
    argTypes:
    - GF_SysArgMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2926
      start: 2748
    functionDepth: 1
    functionLinenumber: 2748
    functionLinenumberEnd: 2926
    functionName: dump_all_codecs
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - strcpy
    - gf_list_find
    - gf_list_count
    - strchr
    - gf_codecid_enum
    - strcat
    - gf_4cc_to_str
    - gf_list_new
    - gf_codecid_mime
    - gf_list_get
    - gf_list_add
    - gf_fs_get_filter_register
    - gf_codecid_4cc_type
    - gf_fs_check_filter_register_cap
    - gf_codecid_type
    - gf_list_del_item
    - gf_fs_filters_registers_count
    - strlen
    - gf_list_del
    - gf_sys_format_help
    - strcmp
    - gf_codecid_alt
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void dump_all_codecs(GF_SysArgMode argmode)
  - BBCount: 59
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2939,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2939,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2939,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2940,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2941,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2942,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2943,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2943,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2944,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2944,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2945,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2946,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2946,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2947,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2948,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2948,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2949,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2950,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2950,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2951,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2951,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2951,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2952,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2952,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2952,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2953,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2953,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2954,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2954,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2954,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2955,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2955,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2955,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2956,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2957,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2958,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2958,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2958,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2959,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2959,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2960,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2960,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2961,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2962,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2963,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2963,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2964,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2965,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2965,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2966,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2966,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2967,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2968,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2969,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2969,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2969,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2970,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2970,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2971,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2972,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2972,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2972,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2972,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2972,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2973,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2974,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2975,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2976,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2977,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2978,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2979,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2979,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2979,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2979,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2979,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2980,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2981,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2982,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2982,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2982,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2982,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2983,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2984,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2985,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2985,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2986,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2986,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2986,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2986,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2987,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2988,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2989,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2990,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2991,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2992,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2993,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2993,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2994,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2994,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2995,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:2996,1
    CyclomaticComplexity: 101
    EdgeCount: 101
    ICount: 118
    argCount: 1
    argNames:
    - ext
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2998
      start: 2937
    functionDepth: 0
    functionLinenumber: 2937
    functionLinenumberEnd: 2998
    functionName: get_best_mime
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: char
    signature: char *get_best_mime(char *ext)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:3003,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac_help.c:3005,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:3009,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:3010,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac_help.c:3016,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/gpac/gpac_help.c:3018,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:3019,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/gpac/gpac_help.c:3025,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac_help.c:3028,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/gpac/gpac_help.c:3029,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/gpac/gpac_help.c:3030,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac_help.c:3033,1
    - Dst: get_best_mime
      Src: /src/gpac/applications/gpac/gpac_help.c:3036,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac_help.c:3038,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac_help.c:3040,1
    - Dst: gf_list_find
      Src: /src/gpac/applications/gpac/gpac_help.c:3047,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac_help.c:3048,1
    - Dst: gf_list_find
      Src: /src/gpac/applications/gpac/gpac_help.c:3051,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac_help.c:3052,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:3058,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 53
    argCount: 5
    argNames:
    - all_fmts
    - exts
    - is_output
    - reg
    - mime
    argTypes:
    - GF_List*
    - char*
    - Bool
    - GF_FilterRegister*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3059
      start: 2999
    functionDepth: 1
    functionLinenumber: 2999
    functionLinenumberEnd: 3059
    functionName: push_ext_mime
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_list_get
    - gf_list_new
    - GF_SAFEALLOC
    - gf_list_find
    - gf_list_count
    - strcmp
    - gf_list_add
    - get_best_mime
    - strchr
    linkageType: ''
    returnType: void
    signature: void push_ext_mime(GF_List *all_fmts, const char *exts, Bool is_output,
      const GF_FilterRegister *reg, const char *mime)
  - BBCount: 56
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_filters_registers_count
      Src: /src/gpac/applications/gpac/gpac_help.c:3063,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/gpac/gpac_help.c:3064,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/gpac/gpac_help.c:3065,1
    - Dst: gf_fs_get_filter_register
      Src: /src/gpac/applications/gpac/gpac_help.c:3077,1
    - Dst: push_ext_mime
      Src: /src/gpac/applications/gpac/gpac_help.c:3091,1
    - Dst: push_ext_mime
      Src: /src/gpac/applications/gpac/gpac_help.c:3093,1
    - Dst: push_ext_mime
      Src: /src/gpac/applications/gpac/gpac_help.c:3149,1
    - Dst: push_ext_mime
      Src: /src/gpac/applications/gpac/gpac_help.c:3151,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:3154,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac_help.c:3155,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3160,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3161,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3162,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3163,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3164,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3166,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3167,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac_help.c:3170,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/gpac/gpac_help.c:3173,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3175,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3177,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac_help.c:3180,1
    - Dst: sprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:3183,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac_help.c:3184,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/gpac/gpac_help.c:3186,1
    - Dst: GF_FilterRegister*::probe_url
      Src: /src/gpac/applications/gpac/gpac_help.c:3187,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac_help.c:3189,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac_help.c:3193,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3196,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3202,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/gpac/gpac_help.c:3204,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3205,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3206,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3209,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3212,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3216,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac_help.c:3218,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3221,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3224,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/gpac/gpac_help.c:3226,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3227,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3228,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3231,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3234,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3238,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3239,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3242,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3244,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac_help.c:3248,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/applications/gpac/gpac_help.c:3249,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:3250,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:3251,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac_help.c:3252,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac_help.c:3253,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:3254,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac_help.c:3256,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac_help.c:3257,1
    CyclomaticComplexity: 102
    EdgeCount: 102
    ICount: 170
    argCount: 1
    argNames:
    - argmode
    argTypes:
    - GF_SysArgMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3258
      start: 3061
    functionDepth: 2
    functionLinenumber: 3061
    functionLinenumberEnd: 3258
    functionName: dump_all_formats
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_sys_format_help
    - gf_list_get
    - gf_list_pop_back
    - GF_FilterRegister*::probe_url
    - push_ext_mime
    - sprintf
    - gf_list_count
    - gf_list_add
    - gf_fs_filters_registers_count
    - gf_fs_get_filter_register
    - strchr
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void dump_all_formats(GF_SysArgMode argmode)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/applications/gpac/gpac_help.c:3268,1
    - Dst: gf_opts_get_key_count
      Src: /src/gpac/applications/gpac/gpac_help.c:3272,1
    - Dst: gf_opts_get_key_name
      Src: /src/gpac/applications/gpac/gpac_help.c:3274,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3277,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:3282,1
    - Dst: gf_list_enum
      Src: /src/gpac/applications/gpac/gpac_help.c:3285,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:3286,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/gpac/gpac_help.c:3291,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac_help.c:3292,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/gpac/gpac_help.c:3293,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/gpac/gpac_help.c:3294,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac_help.c:3295,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac_help.c:3298,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac_help.c:3300,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3309,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3310,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3311,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3312,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3314,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac_help.c:3316,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/gpac/gpac_help.c:3319,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3322,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3324,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac_help.c:3329,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3332,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3336,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/gpac/gpac_help.c:3338,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3339,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:3342,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3345,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3349,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3352,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3355,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3357,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:3358,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac_help.c:3359,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac_help.c:3360,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:3361,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac_help.c:3363,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 84
    argCount: 1
    argNames:
    - argmode
    argTypes:
    - GF_SysArgMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3364
      start: 3266
    functionDepth: 1
    functionLinenumber: 3266
    functionLinenumberEnd: 3364
    functionName: dump_all_proto_schemes
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_strdup
    - gf_sys_format_help
    - gf_opts_get_key_name
    - gf_list_get
    - GF_SAFEALLOC
    - gf_opts_get_key_count
    - gf_list_count
    - strcmp
    - gf_opts_get_key
    - gf_list_add
    - strchr
    - gf_list_enum
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void dump_all_proto_schemes(GF_SysArgMode argmode)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_get_options
      Src: /src/gpac/applications/gpac/gpac_help.c:3374,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3378,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3379,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3383
      start: 3371
    functionDepth: 1
    functionLinenumber: 3371
    functionLinenumberEnd: 3383
    functionName: write_core_options
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_key
    - gf_opts_set_key
    - gf_sys_get_options
    linkageType: ''
    returnType: void
    signature: void write_core_options()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_codecid_enum
      Src: /src/gpac/applications/gpac/gpac_help.c:3391,1
    - Dst: gf_codecid_mime
      Src: /src/gpac/applications/gpac/gpac_help.c:3393,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3394,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3395,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3399
      start: 3385
    functionDepth: 1
    functionLinenumber: 3385
    functionLinenumberEnd: 3399
    functionName: write_file_extensions
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_codecid_mime
    - gf_opts_get_key
    - gf_codecid_enum
    - gf_opts_set_key
    linkageType: ''
    returnType: void
    signature: void write_file_extensions()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_filters_registers_count
      Src: /src/gpac/applications/gpac/gpac_help.c:3404,1
    - Dst: gf_fs_get_filter_register
      Src: /src/gpac/applications/gpac/gpac_help.c:3410,1
    - Dst: sprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:3411,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:3412,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3420,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3421,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3425
      start: 3401
    functionDepth: 1
    functionLinenumber: 3401
    functionLinenumberEnd: 3425
    functionName: write_filters_options
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_opts_set_key
    - sprintf
    - gf_opts_get_key
    - gf_fs_filters_registers_count
    - gf_fs_get_filter_register
    - strchr
    linkageType: ''
    returnType: void
    signature: void write_filters_options()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3436,1
    - Dst: sprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:3439,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3440,1
    - Dst: atoi
      Src: /src/gpac/applications/gpac/gpac_help.c:3442,1
    - Dst: gf_crc_32
      Src: /src/gpac/applications/gpac/gpac_help.c:3443,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac_help.c:3443,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3445,1
    - Dst: sprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:3453,1
    - Dst: gf_crc_32
      Src: /src/gpac/applications/gpac/gpac_help.c:3454,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac_help.c:3454,1
    - Dst: sprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:3456,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3457,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3458,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 4
    argNames:
    - cfg
    - sec_name
    - key_name
    - key_val
    argTypes:
    - GF_Config*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3461
      start: 3433
    functionDepth: 1
    functionLinenumber: 3433
    functionLinenumberEnd: 3461
    functionName: gpac_lang_set_key
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_cfg_get_key
    - sprintf
    - atoi
    - gf_cfg_set_key
    - gf_crc_32
    - strlen
    linkageType: ''
    returnType: void
    signature: void gpac_lang_set_key(GF_Config *cfg, const char *sec_name,  const
      char *key_name, const char *key_val)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_init
      Src: /src/gpac/applications/gpac/gpac_help.c:3469,1
    - Dst: gf_fs_new_defaults
      Src: /src/gpac/applications/gpac/gpac_help.c:3471,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3473,1
    - Dst: gf_file_exists
      Src: /src/gpac/applications/gpac/gpac_help.c:3476,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/gpac/gpac_help.c:3477,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3479,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/gpac/gpac_help.c:3480,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/gpac/gpac_help.c:3483,1
    - Dst: gf_cfg_new
      Src: /src/gpac/applications/gpac/gpac_help.c:3486,1
    - Dst: gpac_lang_set_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3491,1
    - Dst: gpac_lang_set_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3497,1
    - Dst: gpac_lang_set_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3500,1
    - Dst: gf_sys_get_options
      Src: /src/gpac/applications/gpac/gpac_help.c:3504,1
    - Dst: gpac_lang_set_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3508,1
    - Dst: gf_props_get_description
      Src: /src/gpac/applications/gpac/gpac_help.c:3515,1
    - Dst: gpac_lang_set_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3518,1
    - Dst: gf_fs_filters_registers_count
      Src: /src/gpac/applications/gpac/gpac_help.c:3522,1
    - Dst: gf_fs_get_filter_register
      Src: /src/gpac/applications/gpac/gpac_help.c:3525,1
    - Dst: gpac_lang_set_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3529,1
    - Dst: gpac_lang_set_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3532,1
    - Dst: gpac_lang_set_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3536,1
    - Dst: gf_cfg_discard_changes
      Src: /src/gpac/applications/gpac/gpac_help.c:3542,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:3543,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:3545,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac_help.c:3547,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/gpac/gpac_help.c:3549,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/gpac/gpac_help.c:3550,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac_help.c:3553,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 59
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3556
      start: 3464
    functionDepth: 2
    functionLinenumber: 3464
    functionLinenumberEnd: 3556
    functionName: gpac_make_lang
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_cfg_discard_changes
    - gf_fclose
    - gf_fs_get_filter_register
    - gf_sys_format_help
    - gf_props_get_description
    - gf_cfg_del
    - gf_file_exists
    - gf_sys_close
    - gf_sys_init
    - gf_cfg_new
    - gf_fopen
    - gf_fs_filters_registers_count
    - gf_fs_del
    - gpac_lang_set_key
    - gf_fs_new_defaults
    - fprintf
    - gf_sys_get_options
    linkageType: ''
    returnType: int
    signature: int gpac_make_lang(char *filename)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/applications/gpac/gpac_help.c:3565,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac_help.c:3566,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/gpac/gpac_help.c:3568,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac_help.c:3569,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - _arg
    - _dup
    argTypes:
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3572
      start: 3563
    functionDepth: 1
    functionLinenumber: 3563
    functionLinenumberEnd: 3572
    functionName: push_arg
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_list_add
    - gf_list_new
    - gf_realloc
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE push_arg(char *_arg, Bool _dup)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac_help.c:3578,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:3582,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:3584,1
    - Dst: strcpy
      Src: /src/gpac/applications/gpac/gpac_help.c:3588,1
    - Dst: gpac_expand_alias_arg
      Src: /src/gpac/applications/gpac/gpac_help.c:3591,1
    - Dst: push_arg
      Src: /src/gpac/applications/gpac/gpac_help.c:3598,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 5
    argNames:
    - szArg
    - arg_idx
    - argc
    - argv
    - alias_name
    argTypes:
    - char*
    - int
    - int
    - char**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3600
      start: 3576
    functionDepth: 2
    functionLinenumber: 3576
    functionLinenumberEnd: 3600
    functionName: check_param_extension
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - strcpy
    - strstr
    - gpac_expand_alias_arg
    - push_arg
    - strchr
    - fprintf
    linkageType: ''
    returnType: Bool
    signature: Bool check_param_extension(char *szArg, int arg_idx, int argc, char
      **argv, char *alias_name)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac_help.c:3615,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:3619,1
    - Dst: atoi
      Src: /src/gpac/applications/gpac/gpac_help.c:3625,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:3628,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:3629,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:3635,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac_help.c:3638,1
    - Dst: atoi
      Src: /src/gpac/applications/gpac/gpac_help.c:3639,1
    - Dst: atoi
      Src: /src/gpac/applications/gpac/gpac_help.c:3648,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:3650,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:3651,1
    - Dst: atoi
      Src: /src/gpac/applications/gpac/gpac_help.c:3657,1
    - Dst: atoi
      Src: /src/gpac/applications/gpac/gpac_help.c:3660,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:3665,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:3666,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac_help.c:3671,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:3672,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/gpac/gpac_help.c:3680,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac_help.c:3681,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:3684,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac_help.c:3686,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac_help.c:3687,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac_help.c:3688,1
    - Dst: check_param_extension
      Src: /src/gpac/applications/gpac/gpac_help.c:3690,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:3693,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac_help.c:3697,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac_help.c:3699,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac_help.c:3708,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:3713,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac_help.c:3717,1
    - Dst: check_param_extension
      Src: /src/gpac/applications/gpac/gpac_help.c:3719,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:3720,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 99
    argCount: 7
    argNames:
    - param
    - prefix
    - suffix
    - arg_idx
    - argc
    - argv
    - alias_name
    argTypes:
    - char*
    - char*
    - char*
    - int
    - int
    - char**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3722
      start: 3602
    functionDepth: 3
    functionLinenumber: 3602
    functionLinenumberEnd: 3722
    functionName: gpac_expand_alias_arg
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_new
    - check_param_extension
    - atoi
    - gf_list_add
    - gf_dynstrcat
    - strchr
    - strlen
    - fprintf
    linkageType: ''
    returnType: Bool
    signature: Bool gpac_expand_alias_arg(char *param, char *prefix, char *suffix,
      int arg_idx, int argc, char **argv, char *alias_name)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/applications/gpac/gpac_help.c:3731,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3738,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac_help.c:3740,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3752,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac_help.c:3755,1
    - Dst: gf_assert
      Src: /src/gpac/applications/gpac/gpac_help.c:3761,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/gpac/gpac_help.c:3765,1
    - Dst: gf_list_find
      Src: /src/gpac/applications/gpac/gpac_help.c:3767,1
    - Dst: push_arg
      Src: /src/gpac/applications/gpac/gpac_help.c:3768,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:3776,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac_help.c:3778,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:3783,1
    - Dst: check_param_extension
      Src: /src/gpac/applications/gpac/gpac_help.c:3785,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:3788,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac_help.c:3795,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 59
    argCount: 2
    argNames:
    - o_argc
    - o_argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3797
      start: 3724
    functionDepth: 3
    functionLinenumber: 3724
    functionLinenumberEnd: 3797
    functionName: gpac_expand_alias
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_assert
    - gf_list_find
    - strstr
    - check_param_extension
    - strcmp
    - gf_opts_get_key
    - push_arg
    - strchr
    - gf_malloc
    linkageType: ''
    returnType: Bool
    signature: Bool gpac_expand_alias(int o_argc, char **o_argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac_help.c:3803,1
    - Dst: strcpy
      Src: /src/gpac/applications/gpac/gpac_help.c:3806,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:3811,1
    - Dst: MIN
      Src: /src/gpac/applications/gpac/gpac_help.c:3813,1
    - Dst: memcpy
      Src: /src/gpac/applications/gpac/gpac_help.c:3814,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:3817,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac_help.c:3821,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac_help.c:3822,1
    - Dst: strcpy
      Src: /src/gpac/applications/gpac/gpac_help.c:3824,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 2
    argNames:
    - arg
    - override_seps
    argTypes:
    - char*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3828
      start: 3800
    functionDepth: 1
    functionLinenumber: 3800
    functionLinenumberEnd: 3828
    functionName: parse_sep_set
    functionSourceFile: /src/gpac/applications/gpac/gpac_help.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - strcpy
    - memcpy
    - MIN
    - strchr
    - strlen
    linkageType: ''
    returnType: void
    signature: void parse_sep_set(const char *arg, Bool *override_seps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AERemoveEventHandler
      Src: /src/gpac/applications/gpac/carbon_hook.c:45,1
    - Dst: DisposeAEEventHandlerUPP
      Src: /src/gpac/applications/gpac/carbon_hook.c:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 47
    functionName: carbon_remove_hook
    functionSourceFile: /src/gpac/applications/gpac/carbon_hook.c
    functionUses: 1
    functionsReached:
    - AERemoveEventHandler
    - DisposeAEEventHandlerUPP
    linkageType: ''
    returnType: void
    signature: void carbon_remove_hook()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: AEGetParamDesc
      Src: /src/gpac/applications/gpac/carbon_hook.c:57,1
    - Dst: AECountItems
      Src: /src/gpac/applications/gpac/carbon_hook.c:60,1
    - Dst: AEGetNthPtr
      Src: /src/gpac/applications/gpac/carbon_hook.c:64,1
    - Dst: FSRefMakePath
      Src: /src/gpac/applications/gpac/carbon_hook.c:66,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/carbon_hook.c:68,1
    - Dst: gpac_open_urls
      Src: /src/gpac/applications/gpac/carbon_hook.c:71,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/carbon_hook.c:72,1
    - Dst: AEDisposeDesc
      Src: /src/gpac/applications/gpac/carbon_hook.c:75,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 3
    argNames:
    - ae_event
    - ae_reply
    - ae_ref_count
    argTypes:
    - AppleEvent*
    - AppleEvent*
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 49
    functionDepth: 2
    functionLinenumber: 49
    functionLinenumberEnd: 79
    functionName: sdl_ae_open_doc
    functionSourceFile: /src/gpac/applications/gpac/carbon_hook.c
    functionUses: 0
    functionsReached:
    - gf_free
    - AEDisposeDesc
    - AEGetParamDesc
    - gpac_open_urls
    - gf_dynstrcat
    - AEGetNthPtr
    - AECountItems
    - FSRefMakePath
    linkageType: ''
    returnType: pascal
    signature: pascal sdl_ae_open_doc(const AppleEvent *ae_event, AppleEvent *ae_reply,
      long ae_ref_count)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewAEEventHandlerUPP
      Src: /src/gpac/applications/gpac/carbon_hook.c:83,1
    - Dst: AEInstallEventHandler
      Src: /src/gpac/applications/gpac/carbon_hook.c:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 85
    functionName: carbon_set_hook
    functionSourceFile: /src/gpac/applications/gpac/carbon_hook.c
    functionUses: 1
    functionsReached:
    - AEInstallEventHandler
    - NewAEEventHandlerUPP
    linkageType: ''
    returnType: void
    signature: void carbon_set_hook()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: MAIN_THREAD_EM_ASM
      Src: /src/gpac/applications/gpac/gpac.c:99,1
    - Dst: gpac_set_console
      Src: /src/gpac/applications/gpac/gpac.c:100,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 1
    argNames:
    - code
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 102
    functionName: SET_CONSOLE
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - MAIN_THREAD_EM_ASM
    - gpac_set_console
    linkageType: ''
    returnType: void
    signature: void SET_CONSOLE(int code)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _code
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 105
    functionName: SET_CONSOLE
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_CONSOLE(_code)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gpac_print_report
      Src: /src/gpac/applications/gpac/gpac.c:151,1
    - Dst: gf_fs_abort
      Src: /src/gpac/applications/gpac/gpac.c:156,1
    - Dst: mp4c_event_proc
      Src: /src/gpac/applications/gpac/gpac.c:160,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - opaque
    - event
    argTypes:
    - void*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 147
    functionDepth: 3
    functionLinenumber: 147
    functionLinenumberEnd: 164
    functionName: gpac_event_proc
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_fs_abort
    - gpac_print_report
    - mp4c_event_proc
    linkageType: ''
    returnType: Bool
    signature: Bool gpac_event_proc(void *opaque, GF_Event *event)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mp4c_event_proc
      Src: /src/gpac/applications/gpac/gpac.c:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 159
    functionDepth: 3
    functionLinenumber: 159
    functionLinenumberEnd: 161
    functionName: if
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - mp4c_event_proc
    linkageType: ''
    returnType: else
    signature: else if (custom_event_proc)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_prompt_has_input
      Src: /src/gpac/applications/gpac/gpac.c:169,1
    - Dst: mp4c_handle_prompt
      Src: /src/gpac/applications/gpac/gpac.c:171,1
    - Dst: gf_prompt_get_char
      Src: /src/gpac/applications/gpac/gpac.c:171,1
    - Dst: gpac_handle_prompt
      Src: /src/gpac/applications/gpac/gpac.c:175,1
    - Dst: gf_prompt_get_char
      Src: /src/gpac/applications/gpac/gpac.c:175,1
    - Dst: mp4c_task
      Src: /src/gpac/applications/gpac/gpac.c:180,1
    - Dst: gf_fs_abort
      Src: /src/gpac/applications/gpac/gpac.c:181,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/gpac/gpac.c:186,1
    - Dst: exit
      Src: /src/gpac/applications/gpac/gpac.c:192,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/gpac/gpac.c:197,1
    - Dst: gf_fs_abort
      Src: /src/gpac/applications/gpac/gpac.c:201,1
    - Dst: exit
      Src: /src/gpac/applications/gpac/gpac.c:205,1
    - Dst: gf_fs_abort
      Src: /src/gpac/applications/gpac/gpac.c:206,1
    - Dst: gf_fs_is_last_task
      Src: /src/gpac/applications/gpac/gpac.c:212,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 38
    argCount: 3
    argNames:
    - fsess
    - callback
    - reschedule_ms
    argTypes:
    - GF_FilterSession*
    - void*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 167
    functionDepth: 3
    functionLinenumber: 167
    functionLinenumberEnd: 217
    functionName: gpac_fsess_task
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_fs_abort
    - mp4c_handle_prompt
    - gf_sys_clock_high_res
    - gf_fs_is_last_task
    - gf_sleep
    - gf_prompt_has_input
    - exit
    - gpac_handle_prompt
    - mp4c_task
    - gf_prompt_get_char
    linkageType: ''
    returnType: Bool
    signature: Bool gpac_fsess_task(GF_FilterSession *fsess, void *callback, u32 *reschedule_ms)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_get_argc
      Src: /src/gpac/applications/gpac/gpac.c:227,1
    - Dst: gf_sys_is_arg_used
      Src: /src/gpac/applications/gpac/gpac.c:228,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:229,1
    - Dst: gf_sys_get_arg
      Src: /src/gpac/applications/gpac/gpac.c:229,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac.c:238,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:239,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/applications/gpac/gpac.c:239,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac.c:241,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac.c:243,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:245,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:251,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:252,1
    - Dst: gf_gpac_copyright
      Src: /src/gpac/applications/gpac/gpac.c:257,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/gpac/gpac.c:259,1
    - Dst: cleanup_logs
      Src: /src/gpac/applications/gpac/gpac.c:262,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/gpac/gpac.c:264,1
    - Dst: gf_memory_size
      Src: /src/gpac/applications/gpac/gpac.c:271,1
    - Dst: gf_file_handles_count
      Src: /src/gpac/applications/gpac/gpac.c:271,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/gpac/gpac.c:272,1
    - Dst: gf_memory_print
      Src: /src/gpac/applications/gpac/gpac.c:273,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:281,1
    - Dst: __lsan_do_leak_check
      Src: /src/gpac/applications/gpac/gpac.c:282,1
    - Dst: reset_em_thread
      Src: /src/gpac/applications/gpac/gpac.c:286,1
    - Dst: MAIN_THREAD_EM_ASM
      Src: /src/gpac/applications/gpac/gpac.c:289,1
    - Dst: gpac_done
      Src: /src/gpac/applications/gpac/gpac.c:290,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 50
    argCount: 1
    argNames:
    - code
    argTypes:
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 295
    functionName: gpac_exit_fun
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - gf_memory_print
    - gf_sys_get_arg
    - gf_sys_close
    - fprintf
    - gf_list_pop_back
    - gf_sys_is_arg_used
    - __lsan_do_leak_check
    - reset_em_thread
    - GF_LOG
    - MAIN_THREAD_EM_ASM
    - gf_log_set_tool_level
    - gf_sys_get_argc
    - gf_list_del
    - gf_fclose
    - gpac_done
    - gf_gpac_copyright
    - gf_memory_size
    - gf_file_handles_count
    - cleanup_logs
    linkageType: ''
    returnType: int
    signature: int gpac_exit_fun(GF_Err code)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:300,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:301,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - val
    - log_name
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 303
    functionName: get_u32
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - sscanf
    linkageType: ''
    returnType: u32
    signature: u32 get_u32(char *val, char *log_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:307,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - val
    - log_name
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 304
    functionDepth: 1
    functionLinenumber: 304
    functionLinenumberEnd: 310
    functionName: get_s32
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - sscanf
    linkageType: ''
    returnType: s32
    signature: s32 get_s32(char *val, char *log_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _code
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 313
    functionDepth: 0
    functionLinenumber: 313
    functionLinenumberEnd: 315
    functionName: gpac_exit
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: gpac_exit(_code)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: vsprintf
      Src: /src/gpac/applications/gpac/gpac.c:324,1
    - Dst: syslog
      Src: /src/gpac/applications/gpac/gpac.c:329,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 5
    argNames:
    - cbck
    - log_level
    - log_tool
    - fmt
    - vlist
    argTypes:
    - void*
    - GF_LOG_Level
    - GF_LOG_Tool
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 320
    functionDepth: 0
    functionLinenumber: 320
    functionLinenumberEnd: 330
    functionName: gpac_syslog
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - vsprintf
    - syslog
    linkageType: ''
    returnType: void
    signature: void gpac_syslog(void *cbck, GF_LOG_Level log_level, GF_LOG_Tool log_tool,
      const char* fmt, va_list vlist)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 350
    functionDepth: 0
    functionLinenumber: 350
    functionLinenumberEnd: 353
    functionName: gpac_on_video_swap
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gpac_on_video_swap()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_run
      Src: /src/gpac/applications/gpac/gpac.c:360,1
    - Dst: gf_fs_is_last_task
      Src: /src/gpac/applications/gpac/gpac.c:362,1
    - Dst: gf_fs_stop
      Src: /src/gpac/applications/gpac/gpac.c:363,1
    - Dst: gpac_done
      Src: /src/gpac/applications/gpac/gpac.c:364,1
    - Dst: emscripten_cancel_main_loop
      Src: /src/gpac/applications/gpac/gpac.c:365,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 1
    argNames:
    - arg
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 355
    functionDepth: 1
    functionLinenumber: 355
    functionLinenumberEnd: 375
    functionName: em_main_loop
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gpac_done
    - gf_fs_is_last_task
    - gf_fs_run
    - gf_fs_stop
    - emscripten_cancel_main_loop
    linkageType: ''
    returnType: void
    signature: void em_main_loop(void*arg)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:387,1
    - Dst: gf_fs_force_non_blocking
      Src: /src/gpac/applications/gpac/gpac.c:388,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - for_display
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 381
    functionDepth: 1
    functionLinenumber: 381
    functionLinenumberEnd: 399
    functionName: gpac_force_step_mode
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_fs_force_non_blocking
    - fprintf
    linkageType: ''
    returnType: void
    signature: void gpac_force_step_mode(Bool for_display)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:407,1
    - Dst: gf_fs_abort
      Src: /src/gpac/applications/gpac/gpac.c:408,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:411,1
    - Dst: gf_fs_abort
      Src: /src/gpac/applications/gpac/gpac.c:412,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:415,1
    - Dst: gf_fs_abort
      Src: /src/gpac/applications/gpac/gpac.c:416,1
    - Dst: gf_fs_set_ui_callback
      Src: /src/gpac/applications/gpac/gpac.c:423,1
    - Dst: gf_fs_enable_reporting
      Src: /src/gpac/applications/gpac/gpac.c:424,1
    - Dst: gpac_print_report
      Src: /src/gpac/applications/gpac/gpac.c:425,1
    - Dst: gf_fs_enable_reporting
      Src: /src/gpac/applications/gpac/gpac.c:428,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:429,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:430,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 1
    argNames:
    - type
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 401
    functionDepth: 1
    functionLinenumber: 401
    functionLinenumberEnd: 434
    functionName: gpac_em_sig_handler
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_fs_set_ui_callback
    - SET_CONSOLE
    - gf_fs_enable_reporting
    - gpac_print_report
    - gf_fs_abort
    - fprintf
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gpac_em_sig_handler(int type)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:467,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:468,1
    - Dst: strcpy
      Src: /src/gpac/applications/gpac/gpac.c:469,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:470,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:471,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:472,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:473,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:474,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:475,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:477,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 4
    argNames:
    - cbk
    - name
    - IP
    - flags
    argTypes:
    - void*
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 479
      start: 464
    functionDepth: 0
    functionLinenumber: 464
    functionLinenumberEnd: 479
    functionName: enum_net_ifces
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - strcpy
    - strcmp
    - fprintf
    linkageType: ''
    returnType: Bool
    signature: Bool enum_net_ifces(void *cbk, const char *name, const char *IP, u32
      flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_is_last_task
      Src: /src/gpac/applications/gpac/gpac.c:489,1
    - Dst: gf_fs_run
      Src: /src/gpac/applications/gpac/gpac.c:490,1
    - Dst: gf_fs_run
      Src: /src/gpac/applications/gpac/gpac.c:494,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 483
    functionDepth: 1
    functionLinenumber: 483
    functionLinenumberEnd: 496
    functionName: run_sess
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_fs_is_last_task
    - gf_fs_run
    linkageType: ''
    returnType: void
    signature: void run_sess(void)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:1608,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/gpac/gpac.c:1608,1
    - Dst: gf_fs_get_last_connect_error
      Src: /src/gpac/applications/gpac/gpac.c:1610,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:1611,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/gpac/gpac.c:1611,1
    - Dst: gf_fs_get_last_process_error
      Src: /src/gpac/applications/gpac/gpac.c:1614,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:1615,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/gpac/gpac.c:1615,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:1619,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/gpac/gpac.c:1619,1
    - Dst: gpac_check_session_args
      Src: /src/gpac/applications/gpac/gpac.c:1623,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:1628,1
    - Dst: gpac_print_report
      Src: /src/gpac/applications/gpac/gpac.c:1630,1
    - Dst: gf_fs_stop
      Src: /src/gpac/applications/gpac/gpac.c:1633,1
    - Dst: exit
      Src: /src/gpac/applications/gpac/gpac.c:1634,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/applications/gpac/gpac.c:1639,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/applications/gpac/gpac.c:1639,1
    - Dst: gf_fs_print_non_connected_ex
      Src: /src/gpac/applications/gpac/gpac.c:1640,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/applications/gpac/gpac.c:1646,1
    - Dst: gf_fs_run
      Src: /src/gpac/applications/gpac/gpac.c:1650,1
    - Dst: gf_fs_print_stats
      Src: /src/gpac/applications/gpac/gpac.c:1653,1
    - Dst: gf_fs_print_connections
      Src: /src/gpac/applications/gpac/gpac.c:1655,1
    - Dst: unload_compositor
      Src: /src/gpac/applications/gpac/gpac.c:1659,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/gpac/gpac.c:1664,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac.c:1665,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac.c:1666,1
    - Dst: cleanup_file_io
      Src: /src/gpac/applications/gpac/gpac.c:1670,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:1677,1
    - Dst: gf_net_reload_netcap
      Src: /src/gpac/applications/gpac/gpac.c:1678,1
    - Dst: fflush
      Src: /src/gpac/applications/gpac/gpac.c:1682,1
    - Dst: gf_log_reset_file
      Src: /src/gpac/applications/gpac/gpac.c:1684,1
    - Dst: emscripten_cancel_main_loop
      Src: /src/gpac/applications/gpac/gpac.c:1687,1
    - Dst: gpac_run
      Src: /src/gpac/applications/gpac/gpac.c:1688,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac.c:1694,1
    - Dst: gpac_exit
      Src: /src/gpac/applications/gpac/gpac.c:1696,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 78
    argCount: 2
    argNames:
    - e
    - exit_only
    argTypes:
    - GF_Err
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1697
      start: 1596
    functionDepth: 4
    functionLinenumber: 1596
    functionLinenumberEnd: 1697
    functionName: gpac_done
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 2
    functionsReached:
    - gpac_exit
    - gf_fs_get_last_process_error
    - gf_fs_run
    - gf_fs_print_stats
    - gpac_print_report
    - emscripten_cancel_main_loop
    - fprintf
    - SET_CONSOLE
    - cleanup_file_io
    - gf_log_set_callback
    - gf_fs_print_connections
    - gf_fs_stop
    - exit
    - unload_compositor
    - gf_error_to_string
    - gf_fs_del
    - fflush
    - gf_list_del
    - gf_fs_print_non_connected_ex
    - gpac_run
    - gpac_check_session_args
    - gf_fs_get_last_connect_error
    - gf_opts_get_bool
    - gf_net_reload_netcap
    - gf_log_reset_file
    linkageType: ''
    returnType: int
    signature: int gpac_done(GF_Err e, Bool exit_only)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getenv
      Src: /src/gpac/applications/gpac/gpac.c:1702,1
    - Dst: stricmp
      Src: /src/gpac/applications/gpac/gpac.c:1703,1
    - Dst: gpac_main
      Src: /src/gpac/applications/gpac/gpac.c:1708,1
    - Dst: gpac_main
      Src: /src/gpac/applications/gpac/gpac.c:1710,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1711
      start: 1700
    functionDepth: 1
    functionLinenumber: 1700
    functionLinenumberEnd: 1711
    functionName: main
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 2
    functionsReached:
    - gpac_main
    - getenv
    - stricmp
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gpac_main
      Src: /src/gpac/applications/gpac/gpac.c:1727,1
    - Dst: gpac_main
      Src: /src/gpac/applications/gpac/gpac.c:1729,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1730
      start: 1719
    functionDepth: 0
    functionLinenumber: 1719
    functionLinenumberEnd: 1730
    functionName: SDL_main
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gpac_main
    linkageType: ''
    returnType: int
    signature: int SDL_main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:1753,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1754
      start: 1751
    functionDepth: 0
    functionLinenumber: 1751
    functionLinenumberEnd: 1754
    functionName: reset_em_thread
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 1
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: void reset_em_thread()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: emscripten_set_thread_name
      Src: /src/gpac/applications/gpac/gpac.c:1759,1
    - Dst: pthread_self
      Src: /src/gpac/applications/gpac/gpac.c:1759,1
    - Dst: mp4box_main
      Src: /src/gpac/applications/gpac/gpac.c:1761,1
    - Dst: reset_em_thread
      Src: /src/gpac/applications/gpac/gpac.c:1763,1
    - Dst: MAIN_THREAD_EM_ASM
      Src: /src/gpac/applications/gpac/gpac.c:1764,1
    - Dst: gpac_done
      Src: /src/gpac/applications/gpac/gpac.c:1765,1
    - Dst: gpac_main
      Src: /src/gpac/applications/gpac/gpac.c:1768,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - _ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1771
      start: 1755
    functionDepth: 5
    functionLinenumber: 1755
    functionLinenumberEnd: 1771
    functionName: _main_thread
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - emscripten_set_thread_name
    - gpac_main
    - gpac_done
    - reset_em_thread
    - pthread_self
    - MAIN_THREAD_EM_ASM
    - mp4box_main
    linkageType: ''
    returnType: void
    signature: void *_main_thread(void *_ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1782
      start: 1774
    functionDepth: 0
    functionLinenumber: 1774
    functionLinenumberEnd: 1782
    functionName: gpac_has_threads
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gpac_has_threads()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/applications/gpac/gpac.c:1790,1
    - Dst: gf_set_mainloop_thread
      Src: /src/gpac/applications/gpac/gpac.c:1793,1
    - Dst: EM_ASM_INT
      Src: /src/gpac/applications/gpac/gpac.c:1795,1
    - Dst: EM_ASM_INT
      Src: /src/gpac/applications/gpac/gpac.c:1801,1
    - Dst: EM_ASM
      Src: /src/gpac/applications/gpac/gpac.c:1810,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:1813,1
    - Dst: pthread_attr_init
      Src: /src/gpac/applications/gpac/gpac.c:1820,1
    - Dst: pthread_attr_setdetachstate
      Src: /src/gpac/applications/gpac/gpac.c:1821,1
    - Dst: pthread_attr_setstacksize
      Src: /src/gpac/applications/gpac/gpac.c:1822,1
    - Dst: emscripten_stack_get_base
      Src: /src/gpac/applications/gpac/gpac.c:1822,1
    - Dst: emscripten_stack_get_end
      Src: /src/gpac/applications/gpac/gpac.c:1822,1
    - Dst: emscripten_pthread_attr_settransferredcanvases
      Src: /src/gpac/applications/gpac/gpac.c:1823,1
    - Dst: pthread_create
      Src: /src/gpac/applications/gpac/gpac.c:1824,1
    - Dst: pthread_attr_destroy
      Src: /src/gpac/applications/gpac/gpac.c:1825,1
    - Dst: gf_set_mainloop_thread
      Src: /src/gpac/applications/gpac/gpac.c:1831,1
    - Dst: gf_th_id
      Src: /src/gpac/applications/gpac/gpac.c:1831,1
    - Dst: mp4box_main
      Src: /src/gpac/applications/gpac/gpac.c:1834,1
    - Dst: EM_ASM
      Src: /src/gpac/applications/gpac/gpac.c:1835,1
    - Dst: gpac_done
      Src: /src/gpac/applications/gpac/gpac.c:1837,1
    - Dst: gpac_main
      Src: /src/gpac/applications/gpac/gpac.c:1840,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 44
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1843
      start: 1786
    functionDepth: 5
    functionLinenumber: 1786
    functionLinenumberEnd: 1843
    functionName: main
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 5
    functionsReached:
    - emscripten_stack_get_base
    - pthread_attr_setstacksize
    - gf_th_id
    - pthread_attr_init
    - gpac_done
    - gf_set_mainloop_thread
    - gpac_main
    - EM_ASM_INT
    - memset
    - emscripten_stack_get_end
    - mp4box_main
    - stricmp
    - pthread_attr_setdetachstate
    - EM_ASM
    - pthread_attr_destroy
    - pthread_create
    - emscripten_pthread_attr_settransferredcanvases
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_abort
      Src: /src/gpac/applications/gpac/gpac.c:1855,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1858
      start: 1852
    functionDepth: 1
    functionLinenumber: 1852
    functionLinenumberEnd: 1858
    functionName: gpac_abort
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 1
    functionsReached:
    - gf_fs_abort
    linkageType: ''
    returnType: void
    signature: void gpac_abort(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - char_code
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1908
      start: 1899
    functionDepth: 0
    functionLinenumber: 1899
    functionLinenumberEnd: 1908
    functionName: get_cmd
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_Command
    signature: GPAC_Command get_cmd(u8 char_code)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac.c:1912,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/gpac/gpac.c:1916,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1919
      start: 1910
    functionDepth: 1
    functionLinenumber: 1910
    functionLinenumberEnd: 1919
    functionName: gpac_fsess_task_help
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    linkageType: ''
    returnType: void
    signature: void gpac_fsess_task_help()
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:1926,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:1936,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:1938,1
    - Dst: atoi
      Src: /src/gpac/applications/gpac/gpac.c:1941,1
    - Dst: atoi
      Src: /src/gpac/applications/gpac/gpac.c:1945,1
    - Dst: gf_fs_get_filters_count
      Src: /src/gpac/applications/gpac/gpac.c:1951,1
    - Dst: gf_fs_get_filter
      Src: /src/gpac/applications/gpac/gpac.c:1952,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac.c:1954,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/gpac/gpac.c:1955,1
    - Dst: gf_fs_check_filter
      Src: /src/gpac/applications/gpac/gpac.c:1957,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:1958,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:1963,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/applications/gpac/gpac.c:1963,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 41
    argCount: 4
    argNames:
    - arg
    - o_f
    - opid_idx
    - prefix_c
    argTypes:
    - char*
    - GF_Filter**
    - s32*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1967
      start: 1922
    functionDepth: 1
    functionLinenumber: 1922
    functionLinenumberEnd: 1967
    functionName: extract_filter_and_pid
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_fs_get_filters_count
    - gf_fs_get_filter
    - gf_list_get
    - GF_LOG
    - gf_list_count
    - gf_fs_check_filter
    - atoi
    - strchr
    - gf_filter_get_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err extract_filter_and_pid(char *arg, GF_Filter **o_f, s32 *opid_idx,
      u8 *prefix_c)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: extract_filter_and_pid
      Src: /src/gpac/applications/gpac/gpac.c:1974,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/applications/gpac/gpac.c:1976,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:1978,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/applications/gpac/gpac.c:1978,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/applications/gpac/gpac.c:1984,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:1987,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/applications/gpac/gpac.c:1987,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/applications/gpac/gpac.c:1987,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:1990,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/applications/gpac/gpac.c:1990,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/applications/gpac/gpac.c:1990,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/applications/gpac/gpac.c:1994,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:1996,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/applications/gpac/gpac.c:1996,1
    - Dst: gf_props_dump
      Src: /src/gpac/applications/gpac/gpac.c:1996,1
    - Dst: gf_filter_pid_enum_info
      Src: /src/gpac/applications/gpac/gpac.c:2002,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:2004,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/applications/gpac/gpac.c:2004,1
    - Dst: gf_props_dump
      Src: /src/gpac/applications/gpac/gpac.c:2004,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:2006,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:2009,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 32
    argCount: 1
    argNames:
    - arg
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2012
      start: 1969
    functionDepth: 2
    functionLinenumber: 1969
    functionLinenumberEnd: 2012
    functionName: print_pid_props
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_enum_properties
    - gf_filter_get_opid_count
    - gf_props_4cc_get_name
    - GF_LOG
    - gf_filter_pid_enum_info
    - gf_props_dump
    - gf_filter_get_opid
    - extract_filter_and_pid
    - gf_filter_get_name
    - gf_filter_pid_get_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err print_pid_props(char *arg)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:2018,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:2020,1
    - Dst: extract_filter_and_pid
      Src: /src/gpac/applications/gpac/gpac.c:2024,1
    - Dst: gf_filter_probe_links
      Src: /src/gpac/applications/gpac/gpac.c:2029,1
    - Dst: gf_filter_probe_link
      Src: /src/gpac/applications/gpac/gpac.c:2031,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:2035,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/applications/gpac/gpac.c:2035,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:2036,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:2037,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/applications/gpac/gpac.c:2037,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:2042,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:2044,1
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:2047,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:2050,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:2055,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:2057,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/applications/gpac/gpac.c:2057,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2059,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:2061,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/applications/gpac/gpac.c:2061,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/gpac/gpac.c:2061,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 41
    argCount: 1
    argNames:
    - arg
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2064
      start: 2013
    functionDepth: 2
    functionLinenumber: 2013
    functionLinenumberEnd: 2064
    functionName: probe_pid_link
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_free
    - sscanf
    - gf_filter_probe_links
    - GF_LOG
    - gf_filter_probe_link
    - gf_error_to_string
    - extract_filter_and_pid
    - strchr
    - gf_filter_get_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err probe_pid_link(char *arg)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: extract_filter_and_pid
      Src: /src/gpac/applications/gpac/gpac.c:2072,1
    - Dst: gf_filter_get_possible_destinations
      Src: /src/gpac/applications/gpac/gpac.c:2075,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:2077,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/applications/gpac/gpac.c:2077,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2078,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:2080,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/applications/gpac/gpac.c:2080,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:2082,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/applications/gpac/gpac.c:2082,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/gpac/gpac.c:2082,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - arg
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2085
      start: 2066
    functionDepth: 2
    functionLinenumber: 2066
    functionLinenumberEnd: 2085
    functionName: print_pid_dests
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_get_possible_destinations
    - GF_LOG
    - gf_error_to_string
    - extract_filter_and_pid
    - gf_filter_get_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err print_pid_dests(char *arg)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: get_cmd
      Src: /src/gpac/applications/gpac/gpac.c:2099,1
    - Dst: gf_fs_abort
      Src: /src/gpac/applications/gpac/gpac.c:2102,1
    - Dst: gf_fs_abort
      Src: /src/gpac/applications/gpac/gpac.c:2106,1
    - Dst: gf_fs_print_stats
      Src: /src/gpac/applications/gpac/gpac.c:2110,1
    - Dst: gf_fs_print_connections
      Src: /src/gpac/applications/gpac/gpac.c:2113,1
    - Dst: gpac_fsess_task_help
      Src: /src/gpac/applications/gpac/gpac.c:2116,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2119,1
    - Dst: scanf
      Src: /src/gpac/applications/gpac/gpac.c:2121,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2122,1
    - Dst: atoi
      Src: /src/gpac/applications/gpac/gpac.c:2128,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/applications/gpac/gpac.c:2129,1
    - Dst: gf_fs_get_filter_stats
      Src: /src/gpac/applications/gpac/gpac.c:2130,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/applications/gpac/gpac.c:2131,1
    - Dst: strncpy
      Src: /src/gpac/applications/gpac/gpac.c:2133,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2136,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2139,1
    - Dst: scanf
      Src: /src/gpac/applications/gpac/gpac.c:2140,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2141,1
    - Dst: gf_fs_send_update
      Src: /src/gpac/applications/gpac/gpac.c:2144,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/applications/gpac/gpac.c:2147,1
    - Dst: gf_fs_get_filters_count
      Src: /src/gpac/applications/gpac/gpac.c:2148,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2149,1
    - Dst: gf_fs_get_filter_stats
      Src: /src/gpac/applications/gpac/gpac.c:2152,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2154,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2156,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/applications/gpac/gpac.c:2158,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2162,1
    - Dst: scanf
      Src: /src/gpac/applications/gpac/gpac.c:2165,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2166,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:2169,1
    - Dst: atoi
      Src: /src/gpac/applications/gpac/gpac.c:2176,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/applications/gpac/gpac.c:2177,1
    - Dst: gf_fs_get_filter_stats
      Src: /src/gpac/applications/gpac/gpac.c:2178,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/applications/gpac/gpac.c:2179,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/applications/gpac/gpac.c:2183,1
    - Dst: gf_fs_get_filters_count
      Src: /src/gpac/applications/gpac/gpac.c:2184,1
    - Dst: gf_fs_get_filter_stats
      Src: /src/gpac/applications/gpac/gpac.c:2187,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2188,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2192,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/applications/gpac/gpac.c:2196,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2201,1
    - Dst: gf_filter_remove
      Src: /src/gpac/applications/gpac/gpac.c:2206,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2210,1
    - Dst: scanf
      Src: /src/gpac/applications/gpac/gpac.c:2211,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2212,1
    - Dst: strncmp
      Src: /src/gpac/applications/gpac/gpac.c:2216,1
    - Dst: gf_fs_load_source
      Src: /src/gpac/applications/gpac/gpac.c:2217,1
    - Dst: strncmp
      Src: /src/gpac/applications/gpac/gpac.c:2218,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/applications/gpac/gpac.c:2219,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/applications/gpac/gpac.c:2221,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2225,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/gpac/gpac.c:2225,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/applications/gpac/gpac.c:2228,1
    - Dst: gf_filter_reconnect_output
      Src: /src/gpac/applications/gpac/gpac.c:2230,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 122
    argCount: 2
    argNames:
    - fsess
    - char_code
    argTypes:
    - GF_FilterSession*
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2236
      start: 2091
    functionDepth: 2
    functionLinenumber: 2091
    functionLinenumberEnd: 2236
    functionName: gpac_handle_prompt
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 1
    functionsReached:
    - gf_fs_lock_filters
    - gf_fs_print_stats
    - atoi
    - gf_filter_reconnect_output
    - strchr
    - fprintf
    - gf_fs_get_filters_count
    - gf_fs_print_connections
    - strncmp
    - gf_fs_abort
    - gf_filter_remove
    - gf_filter_set_source
    - gf_fs_load_filter
    - gpac_fsess_task_help
    - scanf
    - strncpy
    - gf_error_to_string
    - gf_fs_get_filter_stats
    - gf_fs_load_source
    - gf_fs_send_update
    - get_cmd
    - gf_fs_load_destination
    - strcmp
    linkageType: ''
    returnType: Bool
    signature: Bool gpac_handle_prompt(GF_FilterSession *fsess, char char_code)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2267,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2269,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2271,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2275
      start: 2261
    functionDepth: 0
    functionLinenumber: 2261
    functionLinenumberEnd: 2275
    functionName: cleanup_logs
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void cleanup_logs()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: va_copy
      Src: /src/gpac/applications/gpac/gpac.c:2280,1
    - Dst: vsnprintf
      Src: /src/gpac/applications/gpac/gpac.c:2281,1
    - Dst: va_end
      Src: /src/gpac/applications/gpac/gpac.c:2282,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/gpac/gpac.c:2285,1
    - Dst: vsprintf
      Src: /src/gpac/applications/gpac/gpac.c:2287,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2290,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2298,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac.c:2299,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/applications/gpac/gpac.c:2300,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2305,1
    - Dst: memmove
      Src: /src/gpac/applications/gpac/gpac.c:2306,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:2307,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 5
    argNames:
    - cbck
    - log_level
    - log_tool
    - fmt
    - vlist
    argTypes:
    - void*
    - GF_LOG_Level
    - GF_LOG_Tool
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2309
      start: 2277
    functionDepth: 1
    functionLinenumber: 2277
    functionLinenumberEnd: 2309
    functionName: gpac_on_logs
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_free
    - vsprintf
    - gf_strdup
    - memmove
    - va_end
    - va_copy
    - memset
    - strcmp
    - vsnprintf
    - gf_net_get_utc
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void gpac_on_logs(void *cbck, GF_LOG_Level log_level, GF_LOG_Tool log_tool,
      const char* fmt, va_list vlist)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_gmtime
      Src: /src/gpac/applications/gpac/gpac.c:2321,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2323,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2325,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - time
    - full_print
    argTypes:
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2327
      start: 2312
    functionDepth: 1
    functionLinenumber: 2312
    functionLinenumberEnd: 2327
    functionName: print_date_ex
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_gmtime
    linkageType: ''
    returnType: void
    signature: void print_date_ex(u64 time, Bool full_print)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: print_date_ex
      Src: /src/gpac/applications/gpac/gpac.c:2331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - time
    argTypes:
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2333
      start: 2329
    functionDepth: 2
    functionLinenumber: 2329
    functionLinenumberEnd: 2333
    functionName: print_date
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - print_date_ex
    linkageType: ''
    returnType: void
    signature: void print_date(u64 time)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2343,1
    - Dst: gf_log_use_file
      Src: /src/gpac/applications/gpac/gpac.c:2345,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/gpac/gpac.c:2348,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:2349,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/applications/gpac/gpac.c:2350,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/gpac/gpac.c:2352,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/gpac/gpac.c:2356,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2362,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/applications/gpac/gpac.c:2364,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2365,1
    - Dst: print_date
      Src: /src/gpac/applications/gpac/gpac.c:2366,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/applications/gpac/gpac.c:2366,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2367,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2368,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2369,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2370,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/applications/gpac/gpac.c:2372,1
    - Dst: gf_fs_get_filters_count
      Src: /src/gpac/applications/gpac/gpac.c:2373,1
    - Dst: gf_fs_get_filter_stats
      Src: /src/gpac/applications/gpac/gpac.c:2376,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac.c:2381,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2384,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2385,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2386,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2387,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2388,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2389,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2392,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2395,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/applications/gpac/gpac.c:2395,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2397,1
    - Dst: gf_codecid_name
      Src: /src/gpac/applications/gpac/gpac.c:2397,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2404,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2407,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2409,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2412,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2413,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2416,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/applications/gpac/gpac.c:2420,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2424,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2426,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2427,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2428,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2429,1
    - Dst: print_date
      Src: /src/gpac/applications/gpac/gpac.c:2431,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2434,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2436,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2437,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2439,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/applications/gpac/gpac.c:2441,1
    - Dst: fflush
      Src: /src/gpac/applications/gpac/gpac.c:2442,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 93
    argCount: 3
    argNames:
    - fsess
    - is_init
    - is_final
    argTypes:
    - GF_FilterSession*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2443
      start: 2334
    functionDepth: 3
    functionLinenumber: 2334
    functionLinenumberEnd: 2443
    functionName: gpac_print_report
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 3
    functionsReached:
    - gf_sys_get_rti
    - SET_CONSOLE
    - gf_fs_get_filters_count
    - gf_log_use_file
    - gf_log_set_callback
    - gf_fs_lock_filters
    - strstr
    - print_date
    - memset
    - gf_codecid_name
    - strcmp
    - fflush
    - gf_fs_get_filter_stats
    - gf_net_get_utc
    - gf_stream_type_name
    - gf_sys_clock_high_res
    - gf_malloc
    - fprintf
    linkageType: ''
    returnType: void
    signature: void gpac_print_report(GF_FilterSession *fsess, Bool is_init, Bool
      is_final)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strftime
      Src: /src/gpac/applications/gpac/gpac.c:2462,1
    - Dst: gmtime
      Src: /src/gpac/applications/gpac/gpac.c:2462,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - time
    - szDate
    argTypes:
    - u64
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2464
      start: 2459
    functionDepth: 0
    functionLinenumber: 2459
    functionLinenumberEnd: 2464
    functionName: format_date
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gmtime
    - strftime
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE *format_date(u64 time, char *szDate)
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/applications/gpac/gpac.c:2471,1
    - Dst: gf_cfg_new
      Src: /src/gpac/applications/gpac/gpac.c:2472,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:2474,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:2476,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/gpac/gpac.c:2477,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac.c:2478,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/gpac/gpac.c:2481,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:2489,1
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:2492,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:2504,1
    - Dst: atoi
      Src: /src/gpac/applications/gpac/gpac.c:2505,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:2510,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/gpac/gpac.c:2515,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac.c:2516,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/gpac/gpac.c:2519,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:2522,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:2528,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:2533,1
    - Dst: atoi
      Src: /src/gpac/applications/gpac/gpac.c:2535,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:2541,1
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:2543,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:2548,1
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:2550,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:2555,1
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:2558,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:2566,1
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:2568,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:2575,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:2579,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2585,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac.c:2586,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2588,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/applications/gpac/gpac.c:2591,1
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/applications/gpac/gpac.c:2594,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2595,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:2596,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2598,1
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:2601,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/applications/gpac/gpac.c:2603,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2605,1
    - Dst: format_date
      Src: /src/gpac/applications/gpac/gpac.c:2605,1
    - Dst: gf_format_duration
      Src: /src/gpac/applications/gpac/gpac.c:2605,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2608,1
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:2610,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2611,1
    - Dst: format_date
      Src: /src/gpac/applications/gpac/gpac.c:2611,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2614,1
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:2616,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2617,1
    - Dst: format_date
      Src: /src/gpac/applications/gpac/gpac.c:2617,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2621,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2623,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:2624,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac.c:2631,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac.c:2637,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac.c:2640,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac.c:2644,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/gpac/gpac.c:2645,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:2646,1
    - Dst: strncpy
      Src: /src/gpac/applications/gpac/gpac.c:2648,1
    - Dst: gf_dir_exists
      Src: /src/gpac/applications/gpac/gpac.c:2654,1
    - Dst: gf_mkdir
      Src: /src/gpac/applications/gpac/gpac.c:2655,1
    - Dst: strrchr
      Src: /src/gpac/applications/gpac/gpac.c:2659,1
    - Dst: gf_file_exists
      Src: /src/gpac/applications/gpac/gpac.c:2662,1
    - Dst: gf_file_move
      Src: /src/gpac/applications/gpac/gpac.c:2663,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2667,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:2669,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/gpac/gpac.c:2670,1
    CyclomaticComplexity: 63
    EdgeCount: 63
    ICount: 188
    argCount: 4
    argNames:
    - cbck
    - item_name
    - item_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2673
      start: 2466
    functionDepth: 1
    functionLinenumber: 2466
    functionLinenumberEnd: 2673
    functionName: cache_file_op
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_dir_exists
    - gf_file_exists
    - gf_cfg_get_key_count
    - gf_cfg_new
    - memset
    - atoi
    - format_date
    - strrchr
    - gf_cfg_del
    - gf_fprintf
    - gf_cfg_get_key
    - strncmp
    - gf_net_get_utc
    - sscanf
    - gf_mkdir
    - strstr
    - strncpy
    - gf_malloc
    - strlen
    - gf_file_move
    - gf_format_duration
    - gf_cfg_get_key_name
    - gf_file_delete
    - strcmp
    linkageType: ''
    returnType: Bool
    signature: Bool cache_file_op(void *cbck, char *item_name, char *item_path, GF_FileEnumInfo
      *file_info)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/gpac/gpac.c:2677,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/applications/gpac/gpac.c:2683,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:2686,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac.c:2688,1
    - Dst: gf_net_parse_date
      Src: /src/gpac/applications/gpac/gpac.c:2689,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2690,1
    - Dst: atoi
      Src: /src/gpac/applications/gpac/gpac.c:2691,1
    - Dst: gf_enum_directory
      Src: /src/gpac/applications/gpac/gpac.c:2703,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2706,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/applications/gpac/gpac.c:2709,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2712,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2714,1
    - Dst: format_date
      Src: /src/gpac/applications/gpac/gpac.c:2714,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2715,1
    - Dst: format_date
      Src: /src/gpac/applications/gpac/gpac.c:2715,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2717,1
    - Dst: format_date
      Src: /src/gpac/applications/gpac/gpac.c:2717,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2719,1
    - Dst: format_date
      Src: /src/gpac/applications/gpac/gpac.c:2719,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2720,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2722,1
    - Dst: format_date
      Src: /src/gpac/applications/gpac/gpac.c:2722,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2723,1
    - Dst: format_date
      Src: /src/gpac/applications/gpac/gpac.c:2723,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2727,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 47
    argCount: 2
    argNames:
    - op_type
    - arg_val
    argTypes:
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2730
      start: 2675
    functionDepth: 1
    functionLinenumber: 2675
    functionLinenumberEnd: 2730
    functionName: do_cache_check
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - format_date
    - gf_enum_directory
    - gf_fprintf
    - gf_opts_get_int
    - strstr
    - strcmp
    - gf_opts_get_key
    - gf_net_parse_date
    - atoi
    - gf_net_get_utc
    - strchr
    - fprintf
    linkageType: ''
    returnType: void
    signature: void do_cache_check(u32 op_type, char *arg_val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/applications/gpac/gpac.c:2748,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/gpac/gpac.c:2750,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - fileio
    - offset
    - whence
    argTypes:
    - GF_FileIO*
    - u64
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2752
      start: 2746
    functionDepth: 1
    functionLinenumber: 2746
    functionLinenumberEnd: 2752
    functionName: fio_seek
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_fseek
    - gf_fileio_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fio_seek(GF_FileIO *fileio, u64 offset, s32 whence)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/applications/gpac/gpac.c:2755,1
    - Dst: gf_fread
      Src: /src/gpac/applications/gpac/gpac.c:2759,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 3
    argNames:
    - fileio
    - buffer
    - bytes
    argTypes:
    - GF_FileIO*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2760
      start: 2753
    functionDepth: 1
    functionLinenumber: 2753
    functionLinenumberEnd: 2760
    functionName: fio_read
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_fread
    - gf_fileio_get_udta
    linkageType: ''
    returnType: u32
    signature: u32 fio_read(GF_FileIO *fileio, u8 *buffer, u32 bytes)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/applications/gpac/gpac.c:2763,1
    - Dst: fflush
      Src: /src/gpac/applications/gpac/gpac.c:2766,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/gpac/gpac.c:2769,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - fileio
    - buffer
    - bytes
    argTypes:
    - GF_FileIO*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2770
      start: 2761
    functionDepth: 1
    functionLinenumber: 2761
    functionLinenumberEnd: 2770
    functionName: fio_write
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - fflush
    - gf_fwrite
    - gf_fileio_get_udta
    linkageType: ''
    returnType: u32
    signature: u32 fio_write(GF_FileIO *fileio, u8 *buffer, u32 bytes)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/applications/gpac/gpac.c:2773,1
    - Dst: gf_ftell
      Src: /src/gpac/applications/gpac/gpac.c:2775,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2776
      start: 2771
    functionDepth: 1
    functionLinenumber: 2771
    functionLinenumberEnd: 2776
    functionName: fio_tell
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_ftell
    - gf_fileio_get_udta
    linkageType: ''
    returnType: s64
    signature: s64 fio_tell(GF_FileIO *fileio)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/applications/gpac/gpac.c:2779,1
    - Dst: feof
      Src: /src/gpac/applications/gpac/gpac.c:2781,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2782
      start: 2777
    functionDepth: 1
    functionLinenumber: 2777
    functionLinenumberEnd: 2782
    functionName: fio_eof
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - feof
    - gf_fileio_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool fio_eof(GF_FileIO *fileio)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/applications/gpac/gpac.c:2785,1
    - Dst: vfprintf
      Src: /src/gpac/applications/gpac/gpac.c:2787,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - fileio
    - format
    - args
    argTypes:
    - GF_FileIO*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2788
      start: 2783
    functionDepth: 1
    functionLinenumber: 2783
    functionLinenumberEnd: 2788
    functionName: fio_printf
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - vfprintf
    - gf_fileio_get_udta
    linkageType: ''
    returnType: int
    signature: int fio_printf(GF_FileIO *fileio, const char *format, va_list args)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/applications/gpac/gpac.c:2799,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2803,1
    - Dst: gf_list_find
      Src: /src/gpac/applications/gpac/gpac.c:2804,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac.c:2805,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2809,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2819,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/gpac/gpac.c:2821,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/applications/gpac/gpac.c:2823,1
    - Dst: gf_fileio_new
      Src: /src/gpac/applications/gpac/gpac.c:2825,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2827,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2828,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac.c:2832,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2835,1
    - Dst: gf_file_exists
      Src: /src/gpac/applications/gpac/gpac.c:2836,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/gpac/gpac.c:2841,1
    - Dst: gf_list_del_item
      Src: /src/gpac/applications/gpac/gpac.c:2845,1
    - Dst: gf_fileio_del
      Src: /src/gpac/applications/gpac/gpac.c:2846,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2847,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2848,1
    - Dst: strnicmp
      Src: /src/gpac/applications/gpac/gpac.c:2854,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2854,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/gpac/gpac.c:2855,1
    - Dst: gf_fsize
      Src: /src/gpac/applications/gpac/gpac.c:2860,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:2862,1
    - Dst: gf_fileio_set_stats
      Src: /src/gpac/applications/gpac/gpac.c:2863,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac.c:2871,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/gpac/gpac.c:2873,1
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/applications/gpac/gpac.c:2874,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2875,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/gpac/gpac.c:2886,1
    - Dst: strnicmp
      Src: /src/gpac/applications/gpac/gpac.c:2891,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac.c:2893,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/applications/gpac/gpac.c:2895,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac.c:2897,1
    - Dst: gf_fileio_new
      Src: /src/gpac/applications/gpac/gpac.c:2899,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2901,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2902,1
    - Dst: strnicmp
      Src: /src/gpac/applications/gpac/gpac.c:2907,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/gpac/gpac.c:2908,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/gpac/gpac.c:2910,1
    - Dst: gf_list_del_item
      Src: /src/gpac/applications/gpac/gpac.c:2915,1
    - Dst: gf_fileio_del
      Src: /src/gpac/applications/gpac/gpac.c:2916,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2917,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2918,1
    - Dst: gf_fsize
      Src: /src/gpac/applications/gpac/gpac.c:2922,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:2923,1
    - Dst: gf_fileio_set_stats
      Src: /src/gpac/applications/gpac/gpac.c:2924,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 119
    argCount: 4
    argNames:
    - fileio_ref
    - url
    - mode
    - out_err
    argTypes:
    - GF_FileIO*
    - char*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2926
      start: 2792
    functionDepth: 1
    functionLinenumber: 2792
    functionLinenumberEnd: 2926
    functionName: fio_open
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fileio_new
    - GF_SAFEALLOC
    - gf_file_exists
    - gf_list_find
    - gf_list_count
    - gf_fopen
    - gf_fileio_set_stats
    - strchr
    - gf_list_get
    - gf_strdup
    - gf_fsize
    - gf_list_add
    - strnicmp
    - gf_list_del_item
    - gf_fclose
    - gf_url_concatenate
    - gf_fileio_del
    - strcmp
    - gf_fileio_get_udta
    linkageType: ''
    returnType: GF_FileIO
    signature: GF_FileIO *fio_open(GF_FileIO *fileio_ref, const char *url, const char
      *mode, GF_Err *out_err)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_from_url
      Src: /src/gpac/applications/gpac/gpac.c:2934,1
    - Dst: gf_list_find
      Src: /src/gpac/applications/gpac/gpac.c:2935,1
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/applications/gpac/gpac.c:2937,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/gpac/gpac.c:2939,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/applications/gpac/gpac.c:2943,1
    - Dst: gf_list_find
      Src: /src/gpac/applications/gpac/gpac.c:2944,1
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/applications/gpac/gpac.c:2946,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/applications/gpac/gpac.c:2949,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/gpac/gpac.c:2951,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2952,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 2
    argNames:
    - url
    - parent_gfio
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2956
      start: 2928
    functionDepth: 1
    functionLinenumber: 2928
    functionLinenumberEnd: 2956
    functionName: gpac_gfio_del
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_find
    - gf_url_concatenate
    - gf_fileio_from_url
    - gf_file_delete
    - gf_fileio_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gpac_gfio_del(const char *url, const char *parent_gfio)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/gpac/gpac.c:2964,1
    - Dst: gf_fileio_register_delete_proc
      Src: /src/gpac/applications/gpac/gpac.c:2970,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/gpac/gpac.c:2973,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac.c:2975,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2977,1
    - Dst: gf_fileio_new
      Src: /src/gpac/applications/gpac/gpac.c:2984,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2986,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2987,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/gpac/gpac.c:2992,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac.c:2995,1
    - Dst: gf_fileio_url
      Src: /src/gpac/applications/gpac/gpac.c:2999,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 36
    argCount: 4
    argNames:
    - inargs
    - out_arg
    - io_mode
    - e
    argTypes:
    - char*
    - char**
    - u32
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3000
      start: 2960
    functionDepth: 1
    functionLinenumber: 2960
    functionLinenumberEnd: 3000
    functionName: make_fileio
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fileio_new
    - gf_strdup
    - gf_list_new
    - gf_fileio_url
    - GF_SAFEALLOC
    - gf_fileio_register_delete_proc
    - gf_list_add
    - gf_url_colon_suffix
    linkageType: ''
    returnType: char
    signature: char *make_fileio(const char *inargs, const char **out_arg, u32 io_mode,
      GF_Err *e)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/applications/gpac/gpac.c:3017,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/gpac/gpac.c:3021,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/gpac/gpac.c:3025,1
    - Dst: gf_file_load_data
      Src: /src/gpac/applications/gpac/gpac.c:3027,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3029,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac.c:3033,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3035,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3036,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac.c:3044,1
    - Dst: gf_fileio_from_mem
      Src: /src/gpac/applications/gpac/gpac.c:3048,1
    - Dst: gf_fileio_url
      Src: /src/gpac/applications/gpac/gpac.c:3049,1
    - Dst: gf_blob_register
      Src: /src/gpac/applications/gpac/gpac.c:3052,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3054,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3055,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3056,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 43
    argCount: 4
    argNames:
    - inargs
    - out_arg
    - use_mem
    - e
    argTypes:
    - char*
    - char**
    - Bool
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3061
      start: 3013
    functionDepth: 1
    functionLinenumber: 3013
    functionLinenumberEnd: 3061
    functionName: make_blob
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_strdup
    - gf_fileio_url
    - GF_SAFEALLOC
    - gf_blob_register
    - gf_list_add
    - gf_url_colon_suffix
    - gf_fileio_from_mem
    - gf_file_load_data
    linkageType: ''
    returnType: char
    signature: char *make_blob(const char *inargs, const char **out_arg, Bool use_mem,
      GF_Err *e)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_unregister_delete_proc
      Src: /src/gpac/applications/gpac/gpac.c:3066,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac.c:3069,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/applications/gpac/gpac.c:3070,1
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/applications/gpac/gpac.c:3071,1
    - Dst: gf_fileio_del
      Src: /src/gpac/applications/gpac/gpac.c:3072,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3075,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/gpac/gpac.c:3076,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3078,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3079,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac.c:3081,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac.c:3084,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/applications/gpac/gpac.c:3085,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/gpac/gpac.c:3087,1
    - Dst: gf_fileio_del
      Src: /src/gpac/applications/gpac/gpac.c:3088,1
    - Dst: gf_blob_unregister
      Src: /src/gpac/applications/gpac/gpac.c:3093,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3094,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3096,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3097,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3098,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac.c:3100,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3102
      start: 3062
    functionDepth: 1
    functionLinenumber: 3062
    functionLinenumberEnd: 3102
    functionName: cleanup_file_io
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_list_pop_back
    - gf_fileio_unregister_delete_proc
    - gf_blob_unregister
    - gf_fileio_del
    - gf_list_count
    - gf_list_del
    - fprintf
    - gf_fileio_get_udta
    linkageType: ''
    returnType: void
    signature: void cleanup_file_io()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/applications/gpac/gpac.c:3109,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/applications/gpac/gpac.c:3110,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/applications/gpac/gpac.c:3111,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3113
      start: 3104
    functionDepth: 1
    functionLinenumber: 3104
    functionLinenumberEnd: 3113
    functionName: cust_configure_pid
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_framing_mode
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cust_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/applications/gpac/gpac.c:3117,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/applications/gpac/gpac.c:3118,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/applications/gpac/gpac.c:3119,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/applications/gpac/gpac.c:3121,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3123,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/applications/gpac/gpac.c:3123,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/applications/gpac/gpac.c:3124,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3128
      start: 3114
    functionDepth: 1
    functionLinenumber: 3114
    functionLinenumberEnd: 3128
    functionName: cust_process
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_drop_packet
    - gf_filter_get_ipid
    - gf_filter_pck_get_cts
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_packet
    - fprintf
    - gf_filter_pid_get_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cust_process(GF_Filter *filter)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_new_filter
      Src: /src/gpac/applications/gpac/gpac.c:3132,1
    - Dst: gf_filter_push_caps
      Src: /src/gpac/applications/gpac/gpac.c:3135,1
    - Dst: PROP_UINT
      Src: /src/gpac/applications/gpac/gpac.c:3135,1
    - Dst: gf_filter_set_configure_ckb
      Src: /src/gpac/applications/gpac/gpac.c:3137,1
    - Dst: gf_filter_set_process_ckb
      Src: /src/gpac/applications/gpac/gpac.c:3139,1
    - Dst: gf_filter_set_process_event_ckb
      Src: /src/gpac/applications/gpac/gpac.c:3141,1
    - Dst: gf_filter_set_reconfigure_output_ckb
      Src: /src/gpac/applications/gpac/gpac.c:3143,1
    - Dst: gf_filter_set_probe_data_cbk
      Src: /src/gpac/applications/gpac/gpac.c:3145,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 3
    argNames:
    - sess
    - opts
    - e
    argTypes:
    - GF_FilterSession*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3149
      start: 3130
    functionDepth: 1
    functionLinenumber: 3130
    functionLinenumberEnd: 3149
    functionName: load_custom_filter
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_filter_set_probe_data_cbk
    - PROP_UINT
    - gf_filter_set_process_event_ckb
    - gf_filter_set_configure_ckb
    - gf_filter_set_process_ckb
    - gf_filter_push_caps
    - gf_filter_set_reconfigure_output_ckb
    - gf_fs_new_filter
    linkageType: ''
    returnType: GF_Filter
    signature: GF_Filter *load_custom_filter(GF_FilterSession *sess, char *opts, GF_Err
      *e)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3175,1
    - Dst: exit
      Src: /src/gpac/applications/gpac/gpac.c:3177,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3185,1
    - Dst: gf_getch
      Src: /src/gpac/applications/gpac/gpac.c:3188,1
    - Dst: gf_fs_abort
      Src: /src/gpac/applications/gpac/gpac.c:3195,1
    - Dst: gf_fs_abort
      Src: /src/gpac/applications/gpac/gpac.c:3200,1
    - Dst: exit
      Src: /src/gpac/applications/gpac/gpac.c:3206,1
    - Dst: gf_fs_set_ui_callback
      Src: /src/gpac/applications/gpac/gpac.c:3222,1
    - Dst: gf_fs_enable_reporting
      Src: /src/gpac/applications/gpac/gpac.c:3223,1
    - Dst: gpac_print_report
      Src: /src/gpac/applications/gpac/gpac.c:3225,1
    - Dst: gf_fs_enable_reporting
      Src: /src/gpac/applications/gpac/gpac.c:3228,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:3229,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:3230,1
    - Dst: gf_fs_print_debug_info
      Src: /src/gpac/applications/gpac/gpac.c:3240,1
    - Dst: gf_fs_print_debug_info
      Src: /src/gpac/applications/gpac/gpac.c:3247,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3256,1
    - Dst: scanf
      Src: /src/gpac/applications/gpac/gpac.c:3257,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3258,1
    - Dst: gf_log_set_tools_levels
      Src: /src/gpac/applications/gpac/gpac.c:3261,1
    - Dst: gf_fs_abort
      Src: /src/gpac/applications/gpac/gpac.c:3266,1
    - Dst: gf_fs_abort
      Src: /src/gpac/applications/gpac/gpac.c:3272,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 103
    argCount: 1
    argNames:
    - sig
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3279
      start: 3166
    functionDepth: 4
    functionLinenumber: 3166
    functionLinenumberEnd: 3279
    functionName: gpac_sig_handler
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_fs_set_ui_callback
    - SET_CONSOLE
    - gf_fs_print_debug_info
    - gf_fs_enable_reporting
    - gf_log_set_tools_levels
    - scanf
    - exit
    - gpac_print_report
    - gf_fs_abort
    - fprintf
    - gf_getch
    linkageType: ''
    returnType: void
    signature: void gpac_sig_handler(int sig)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_calloc
      Src: /src/gpac/applications/gpac/gpac.c:3310,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3311,1
    - Dst: gpac_handle_prompt
      Src: /src/gpac/applications/gpac/gpac.c:3315,1
    - Dst: gpac_fsess_task_help
      Src: /src/gpac/applications/gpac/gpac.c:3317,1
    - Dst: gf_dm_sess_last_error
      Src: /src/gpac/applications/gpac/gpac.c:3318,1
    - Dst: gf_log_use_color
      Src: /src/gpac/applications/gpac/gpac.c:3319,1
    - Dst: gf_4cc_parse
      Src: /src/gpac/applications/gpac/gpac.c:3320,1
    - Dst: gf_gpac_abi_micro
      Src: /src/gpac/applications/gpac/gpac.c:3321,1
    - Dst: gf_audio_fmt_get_layout_from_name
      Src: /src/gpac/applications/gpac/gpac.c:3322,1
    - Dst: gf_audio_fmt_get_dolby_chanmap
      Src: /src/gpac/applications/gpac/gpac.c:3323,1
    - Dst: gf_itags_get_id3tag
      Src: /src/gpac/applications/gpac/gpac.c:3324,1
    - Dst: gf_itags_enum_tags
      Src: /src/gpac/applications/gpac/gpac.c:3326,1
    - Dst: gf_fs_in_final_flush
      Src: /src/gpac/applications/gpac/gpac.c:3328,1
    - Dst: gf_fs_get_rt_udta
      Src: /src/gpac/applications/gpac/gpac.c:3329,1
    - Dst: gf_fs_set_external_gl_provider
      Src: /src/gpac/applications/gpac/gpac.c:3330,1
    - Dst: gf_filter_print_all_connections
      Src: /src/gpac/applications/gpac/gpac.c:3331,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3333,1
    - Dst: utf8_to_ucs4
      Src: /src/gpac/applications/gpac/gpac.c:3337,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3338,1
    - Dst: utf8_to_ucs4
      Src: /src/gpac/applications/gpac/gpac.c:3345,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3346,1
    - Dst: utf8_to_ucs4
      Src: /src/gpac/applications/gpac/gpac.c:3353,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3354,1
    - Dst: utf8_to_ucs4
      Src: /src/gpac/applications/gpac/gpac.c:3362,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3363,1
    - Dst: utf8_to_ucs4
      Src: /src/gpac/applications/gpac/gpac.c:3373,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3374,1
    - Dst: utf8_to_ucs4
      Src: /src/gpac/applications/gpac/gpac.c:3384,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3385,1
    - Dst: utf8_to_ucs4
      Src: /src/gpac/applications/gpac/gpac.c:3390,1
    - Dst: gf_base16_encode
      Src: /src/gpac/applications/gpac/gpac.c:3395,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3397,1
    - Dst: gf_base16_decode
      Src: /src/gpac/applications/gpac/gpac.c:3400,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3402,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac.c:3412,1
    - Dst: gf_gz_compress_payload
      Src: /src/gpac/applications/gpac/gpac.c:3414,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac.c:3414,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3416,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3417,1
    - Dst: gf_gz_decompress_payload
      Src: /src/gpac/applications/gpac/gpac.c:3422,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3423,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3424,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3426,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac.c:3431,1
    - Dst: gf_lz_compress_payload
      Src: /src/gpac/applications/gpac/gpac.c:3433,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac.c:3433,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3435,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3436,1
    - Dst: gf_lz_decompress_payload
      Src: /src/gpac/applications/gpac/gpac.c:3441,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3442,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3443,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3445,1
    - Dst: gf_htonl
      Src: /src/gpac/applications/gpac/gpac.c:3449,1
    - Dst: gf_ntohl
      Src: /src/gpac/applications/gpac/gpac.c:3450,1
    - Dst: gf_htons
      Src: /src/gpac/applications/gpac/gpac.c:3451,1
    - Dst: gf_ntohs
      Src: /src/gpac/applications/gpac/gpac.c:3452,1
    - Dst: gf_errno_str
      Src: /src/gpac/applications/gpac/gpac.c:3453,1
    - Dst: gf_prompt_set_echo_off
      Src: /src/gpac/applications/gpac/gpac.c:3455,1
    - Dst: gf_getch
      Src: /src/gpac/applications/gpac/gpac.c:3456,1
    - Dst: gf_prompt_get_char
      Src: /src/gpac/applications/gpac/gpac.c:3457,1
    - Dst: gf_read_line_input
      Src: /src/gpac/applications/gpac/gpac.c:3458,1
    - Dst: gf_net_set_ntp_shift
      Src: /src/gpac/applications/gpac/gpac.c:3460,1
    - Dst: gf_net_get_ntp_diff_ms
      Src: /src/gpac/applications/gpac/gpac.c:3461,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/applications/gpac/gpac.c:3461,1
    - Dst: gf_net_get_timezone
      Src: /src/gpac/applications/gpac/gpac.c:3462,1
    - Dst: gf_net_get_utc_ts
      Src: /src/gpac/applications/gpac/gpac.c:3463,1
    - Dst: gf_net_ntp_diff_ms
      Src: /src/gpac/applications/gpac/gpac.c:3464,1
    - Dst: gf_lang_get_count
      Src: /src/gpac/applications/gpac/gpac.c:3465,1
    - Dst: gf_lang_get_2cc
      Src: /src/gpac/applications/gpac/gpac.c:3466,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:3468,1
    - Dst: gf_blob_register
      Src: /src/gpac/applications/gpac/gpac.c:3475,1
    - Dst: gf_blob_get
      Src: /src/gpac/applications/gpac/gpac.c:3477,1
    - Dst: gf_blob_unregister
      Src: /src/gpac/applications/gpac/gpac.c:3478,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3479,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:3481,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3482,1
    - Dst: gf_sys_get_battery_state
      Src: /src/gpac/applications/gpac/gpac.c:3485,1
    - Dst: gf_sys_get_process_id
      Src: /src/gpac/applications/gpac/gpac.c:3486,1
    - Dst: gf_log_get_tools_levels
      Src: /src/gpac/applications/gpac/gpac.c:3487,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3488,1
    - Dst: gf_sys_is_quiet
      Src: /src/gpac/applications/gpac/gpac.c:3490,1
    - Dst: gf_sys_get_argv
      Src: /src/gpac/applications/gpac/gpac.c:3491,1
    - Dst: gf_mx_get_num_locks
      Src: /src/gpac/applications/gpac/gpac.c:3492,1
    - Dst: gf_url_is_relative
      Src: /src/gpac/applications/gpac/gpac.c:3495,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:3499,1
    - Dst: gf_crypt_open
      Src: /src/gpac/applications/gpac/gpac.c:3500,1
    - Dst: gf_crypt_init
      Src: /src/gpac/applications/gpac/gpac.c:3501,1
    - Dst: gf_crypt_encrypt
      Src: /src/gpac/applications/gpac/gpac.c:3502,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/applications/gpac/gpac.c:3503,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/applications/gpac/gpac.c:3504,1
    - Dst: gf_crypt_get_IV
      Src: /src/gpac/applications/gpac/gpac.c:3506,1
    - Dst: gf_crypt_close
      Src: /src/gpac/applications/gpac/gpac.c:3507,1
    - Dst: gpac_sig_handler
      Src: /src/gpac/applications/gpac/gpac.c:3511,1
    - Dst: gpac_sig_handler
      Src: /src/gpac/applications/gpac/gpac.c:3513,1
    - Dst: gpac_sig_handler
      Src: /src/gpac/applications/gpac/gpac.c:3514,1
    - Dst: gf_mkdir
      Src: /src/gpac/applications/gpac/gpac.c:3517,1
    - Dst: gf_mkdir
      Src: /src/gpac/applications/gpac/gpac.c:3518,1
    - Dst: strcpy
      Src: /src/gpac/applications/gpac/gpac.c:3519,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/gpac/gpac.c:3520,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3521,1
    - Dst: gf_memory_print
      Src: /src/gpac/applications/gpac/gpac.c:3523,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/gpac/gpac.c:3525,1
    - Dst: gf_file_modification_time
      Src: /src/gpac/applications/gpac/gpac.c:3526,1
    - Dst: gf_m2ts_probe_file
      Src: /src/gpac/applications/gpac/gpac.c:3527,1
    - Dst: gf_dir_cleanup
      Src: /src/gpac/applications/gpac/gpac.c:3529,1
    - Dst: gf_rmdir
      Src: /src/gpac/applications/gpac/gpac.c:3530,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/applications/gpac/gpac.c:3534,1
    - Dst: gf_mx2d_add_skew
      Src: /src/gpac/applications/gpac/gpac.c:3535,1
    - Dst: gf_mx2d_add_skew_x
      Src: /src/gpac/applications/gpac/gpac.c:3536,1
    - Dst: gf_mx2d_add_skew_y
      Src: /src/gpac/applications/gpac/gpac.c:3537,1
    - Dst: gf_mx2d_decompose
      Src: /src/gpac/applications/gpac/gpac.c:3540,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:3542,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:3543,1
    - Dst: gf_rect_equal
      Src: /src/gpac/applications/gpac/gpac.c:3544,1
    - Dst: gf_mx_init
      Src: /src/gpac/applications/gpac/gpac.c:3547,1
    - Dst: gf_mx_get_yaw_pitch_roll
      Src: /src/gpac/applications/gpac/gpac.c:3549,1
    - Dst: gf_mx_ortho_reverse_z
      Src: /src/gpac/applications/gpac/gpac.c:3550,1
    - Dst: gf_mx_perspective_reverse_z
      Src: /src/gpac/applications/gpac/gpac.c:3551,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:3555,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:3557,1
    - Dst: gf_ray_hit_sphere
      Src: /src/gpac/applications/gpac/gpac.c:3558,1
    - Dst: gf_closest_point_to_line
      Src: /src/gpac/applications/gpac/gpac.c:3560,1
    - Dst: gf_plane_intersect_line
      Src: /src/gpac/applications/gpac/gpac.c:3565,1
    - Dst: gf_quat_from_rotation
      Src: /src/gpac/applications/gpac/gpac.c:3571,1
    - Dst: gf_quat_get_inv
      Src: /src/gpac/applications/gpac/gpac.c:3572,1
    - Dst: gf_quat_rotate
      Src: /src/gpac/applications/gpac/gpac.c:3573,1
    - Dst: gf_quat_slerp
      Src: /src/gpac/applications/gpac/gpac.c:3574,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:3576,1
    - Dst: gf_bbox_equal
      Src: /src/gpac/applications/gpac/gpac.c:3577,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/applications/gpac/gpac.c:3581,1
    - Dst: gf_mx_apply_bbox_4x4
      Src: /src/gpac/applications/gpac/gpac.c:3582,1
    - Dst: gf_vec_scale_p
      Src: /src/gpac/applications/gpac/gpac.c:3587,1
    - Dst: gf_token_get_strip
      Src: /src/gpac/applications/gpac/gpac.c:3591,1
    - Dst: gf_sk_get_host_name
      Src: /src/gpac/applications/gpac/gpac.c:3595,1
    - Dst: gf_sk_set_usec_wait
      Src: /src/gpac/applications/gpac/gpac.c:3596,1
    - Dst: gf_sk_get_local_info
      Src: /src/gpac/applications/gpac/gpac.c:3600,1
    - Dst: gf_path_new
      Src: /src/gpac/applications/gpac/gpac.c:3603,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/applications/gpac/gpac.c:3604,1
    - Dst: gf_path_add_quadratic_to
      Src: /src/gpac/applications/gpac/gpac.c:3605,1
    - Dst: gf_path_point_over
      Src: /src/gpac/applications/gpac/gpac.c:3606,1
    - Dst: gf_path_del
      Src: /src/gpac/applications/gpac/gpac.c:3607,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/applications/gpac/gpac.c:3610,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/applications/gpac/gpac.c:3611,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/applications/gpac/gpac.c:3612,1
    - Dst: gf_xml_dom_get_line
      Src: /src/gpac/applications/gpac/gpac.c:3613,1
    - Dst: gf_xml_dom_get_root_nodes_count
      Src: /src/gpac/applications/gpac/gpac.c:3614,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/gpac/gpac.c:3615,1
    - Dst: gf_dm_new
      Src: /src/gpac/applications/gpac/gpac.c:3618,1
    - Dst: gf_dm_set_auth_callback
      Src: /src/gpac/applications/gpac/gpac.c:3619,1
    - Dst: gf_dm_set_data_rate
      Src: /src/gpac/applications/gpac/gpac.c:3621,1
    - Dst: gf_dm_get_data_rate
      Src: /src/gpac/applications/gpac/gpac.c:3622,1
    - Dst: gf_dm_set_localcache_provider
      Src: /src/gpac/applications/gpac/gpac.c:3623,1
    - Dst: gf_dm_sess_abort
      Src: /src/gpac/applications/gpac/gpac.c:3624,1
    - Dst: gf_dm_del
      Src: /src/gpac/applications/gpac/gpac.c:3625,1
    - Dst: gf_stream_type_afx_name
      Src: /src/gpac/applications/gpac/gpac.c:3628,1
    - Dst: gf_th_stop
      Src: /src/gpac/applications/gpac/gpac.c:3630,1
    - Dst: gf_list_swap
      Src: /src/gpac/applications/gpac/gpac.c:3631,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/gpac/gpac.c:3633,1
    - Dst: gf_bs_bits_available
      Src: /src/gpac/applications/gpac/gpac.c:3634,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/applications/gpac/gpac.c:3635,1
    - Dst: gf_bs_read_vluimsbf5
      Src: /src/gpac/applications/gpac/gpac.c:3636,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/gpac/gpac.c:3637,1
    - Dst: gf_module_load_static
      Src: /src/gpac/applications/gpac/gpac.c:3639,1
    - Dst: gf_mp3_version_name
      Src: /src/gpac/applications/gpac/gpac.c:3641,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:3644,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:3645,1
    - Dst: gf_m2ts_restamp
      Src: /src/gpac/applications/gpac/gpac.c:3654,1
    - Dst: gf_filter_post_task
      Src: /src/gpac/applications/gpac/gpac.c:3657,1
    - Dst: gf_filter_get_arg_str
      Src: /src/gpac/applications/gpac/gpac.c:3658,1
    - Dst: gf_filter_all_sinks_done
      Src: /src/gpac/applications/gpac/gpac.c:3659,1
    - Dst: gf_opts_discard_changes
      Src: /src/gpac/applications/gpac/gpac.c:3661,1
    - Dst: gf_rtp_reset_ssrc
      Src: /src/gpac/applications/gpac/gpac.c:3663,1
    - Dst: gf_rtp_enable_nat_keepalive
      Src: /src/gpac/applications/gpac/gpac.c:3664,1
    - Dst: gf_rtp_stop
      Src: /src/gpac/applications/gpac/gpac.c:3665,1
    - Dst: gf_rtp_streamer_get_payload_type
      Src: /src/gpac/applications/gpac/gpac.c:3666,1
    - Dst: gf_rtsp_unregister_interleave
      Src: /src/gpac/applications/gpac/gpac.c:3667,1
    - Dst: gf_rtsp_reset_aggregation
      Src: /src/gpac/applications/gpac/gpac.c:3668,1
    - Dst: get_cmd
      Src: /src/gpac/applications/gpac/gpac.c:3670,1
    - Dst: gpac_suggest_arg
      Src: /src/gpac/applications/gpac/gpac.c:3671,1
    - Dst: gpac_suggest_filter
      Src: /src/gpac/applications/gpac/gpac.c:3672,1
    - Dst: gf_filter_pid_negotiate_property_str
      Src: /src/gpac/applications/gpac/gpac.c:3674,1
    - Dst: gf_filter_pid_negotiate_property_dyn
      Src: /src/gpac/applications/gpac/gpac.c:3675,1
    - Dst: gf_props_parse_type
      Src: /src/gpac/applications/gpac/gpac.c:3677,1
    - Dst: gf_filter_pck_new_copy
      Src: /src/gpac/applications/gpac/gpac.c:3679,1
    - Dst: gf_filter_get_max_extra_input_pids
      Src: /src/gpac/applications/gpac/gpac.c:3680,1
    - Dst: gf_filter_remove
      Src: /src/gpac/applications/gpac/gpac.c:3681,1
    - Dst: gf_filter_reconnect_output
      Src: /src/gpac/applications/gpac/gpac.c:3682,1
    - Dst: gf_filter_pid_get_udta_flags
      Src: /src/gpac/applications/gpac/gpac.c:3683,1
    - Dst: gf_audio_fmt_get_cicp_layout
      Src: /src/gpac/applications/gpac/gpac.c:3685,1
    - Dst: gf_audio_fmt_get_layout_from_cicp
      Src: /src/gpac/applications/gpac/gpac.c:3686,1
    - Dst: gf_audio_fmt_get_layout_name_from_cicp
      Src: /src/gpac/applications/gpac/gpac.c:3687,1
    - Dst: gf_audio_fmt_get_cicp_from_layout
      Src: /src/gpac/applications/gpac/gpac.c:3688,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/gpac/gpac.c:3691,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/applications/gpac/gpac.c:3691,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/applications/gpac/gpac.c:3692,1
    - Dst: gf_odf_get_text_config
      Src: /src/gpac/applications/gpac/gpac.c:3693,1
    - Dst: gf_odf_dump_txtcfg
      Src: /src/gpac/applications/gpac/gpac.c:3694,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/gpac/gpac.c:3695,1
    - Dst: gf_hevc_read_pps_bs
      Src: /src/gpac/applications/gpac/gpac.c:3698,1
    - Dst: gf_hevc_read_sps_bs
      Src: /src/gpac/applications/gpac/gpac.c:3699,1
    - Dst: gf_hevc_read_vps_bs
      Src: /src/gpac/applications/gpac/gpac.c:3700,1
    - Dst: gf_mpegv12_get_config
      Src: /src/gpac/applications/gpac/gpac.c:3701,1
    - Dst: gf_isom_hint_pck_new
      Src: /src/gpac/applications/gpac/gpac.c:3704,1
    - Dst: gf_isom_hint_pck_length
      Src: /src/gpac/applications/gpac/gpac.c:3705,1
    - Dst: gf_isom_hint_pck_size
      Src: /src/gpac/applications/gpac/gpac.c:3706,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/gpac/gpac.c:3707,1
    - Dst: gf_isom_hint_pck_write
      Src: /src/gpac/applications/gpac/gpac.c:3708,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/applications/gpac/gpac.c:3711,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/gpac/gpac.c:3712,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/gpac/gpac.c:3713,1
    - Dst: gf_isom_hint_pck_read
      Src: /src/gpac/applications/gpac/gpac.c:3714,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/gpac/gpac.c:3715,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3716,1
    - Dst: gf_isom_hint_pck_del
      Src: /src/gpac/applications/gpac/gpac.c:3717,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/gpac/gpac.c:3719,1
    - Dst: gf_isom_get_media_time
      Src: /src/gpac/applications/gpac/gpac.c:3720,1
    - Dst: gf_isom_get_sample_description_index
      Src: /src/gpac/applications/gpac/gpac.c:3721,1
    - Dst: gf_sg_has_scripting
      Src: /src/gpac/applications/gpac/gpac.c:3723,1
    - Dst: gf_node_get_proto_root
      Src: /src/gpac/applications/gpac/gpac.c:3724,1
    - Dst: gf_node_proto_is_grouping
      Src: /src/gpac/applications/gpac/gpac.c:3725,1
    - Dst: gf_sg_proto_get_id
      Src: /src/gpac/applications/gpac/gpac.c:3726,1
    - Dst: gf_sg_proto_instance_set_ised
      Src: /src/gpac/applications/gpac/gpac.c:3727,1
    - Dst: gf_audio_fmt_to_isobmf
      Src: /src/gpac/applications/gpac/gpac.c:3729,1
    - Dst: gf_pixel_fmt_probe
      Src: /src/gpac/applications/gpac/gpac.c:3730,1
    - Dst: gf_net_ntp_to_utc
      Src: /src/gpac/applications/gpac/gpac.c:3731,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 306
    argCount: 1
    argNames:
    - mem_track
    argTypes:
    - GF_MemTrackerType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3736
      start: 3303
    functionDepth: 5
    functionLinenumber: 3303
    functionLinenumberEnd: 3736
    functionName: gpac_unit_tests
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_rtsp_reset_aggregation
    - gf_lz_compress_payload
    - gf_gz_decompress_payload
    - gf_path_add_move_to
    - gf_list_swap
    - gf_base16_encode
    - gf_fopen
    - gf_bbox_refresh
    - gf_filter_reconnect_output
    - gf_net_ntp_to_utc
    - gf_audio_fmt_get_layout_name_from_cicp
    - gf_mx_ortho_reverse_z
    - gf_sg_proto_instance_set_ised
    - gf_isom_get_media_time
    - gf_filter_get_max_extra_input_pids
    - gf_plane_intersect_line
    - gf_net_get_ntp_diff_ms
    - gf_module_load_static
    - gf_mx_init
    - gf_pixel_fmt_probe
    - gf_gz_compress_payload
    - gf_rmdir
    - gf_hevc_read_pps_bs
    - gf_hevc_read_vps_bs
    - gf_isom_hint_pck_del
    - gf_isom_last_error
    - gf_ntohs
    - gf_fs_in_final_flush
    - gf_mkdir
    - gf_audio_fmt_get_layout_from_name
    - gf_blob_register
    - gf_xml_dom_get_error
    - gf_filter_all_sinks_done
    - gf_dm_set_data_rate
    - gf_prompt_get_char
    - gf_net_get_timezone
    - gf_filter_print_all_connections
    - utf8_to_ucs4
    - gf_crypt_init
    - gf_filter_pid_get_udta_flags
    - gf_stream_type_afx_name
    - strcmp
    - gf_mx2d_add_skew_x
    - gf_errno_str
    - gf_filter_pid_negotiate_property_dyn
    - gf_mx2d_add_skew_y
    - gf_net_get_utc_ts
    - gf_sys_get_process_id
    - gf_url_is_relative
    - gf_dm_set_localcache_provider
    - gf_audio_fmt_get_cicp_layout
    - gf_itags_get_id3tag
    - gf_dm_del
    - gf_htonl
    - gf_memory_print
    - gf_path_point_over
    - fprintf
    - gf_getch
    - gf_quat_slerp
    - gf_filter_get_arg_str
    - gf_rtp_enable_nat_keepalive
    - gf_crypt_set_IV
    - gf_bs_get_content
    - gf_path_del
    - gf_net_set_ntp_shift
    - gf_bs_get_bit_offset
    - gf_mx_apply_bbox_4x4
    - gf_xml_dom_new
    - gf_odf_get_text_config
    - gf_quat_get_inv
    - gf_mx2d_decompose
    - gf_lang_get_2cc
    - gf_net_get_ntp_ts
    - gf_xml_dom_get_root_nodes_count
    - gpac_suggest_filter
    - gf_mx2d_add_skew
    - gf_log_use_color
    - gf_crypt_encrypt
    - gf_crypt_close
    - gf_isom_hint_pck_write
    - get_cmd
    - gpac_sig_handler
    - gf_filter_pck_new_copy
    - gf_mx_get_num_locks
    - gf_audio_fmt_to_isobmf
    - gf_calloc
    - gf_sk_get_local_info
    - gf_node_proto_is_grouping
    - gf_closest_point_to_line
    - gf_ray_hit_sphere
    - gf_mpegv12_get_config
    - gf_bs_new
    - strcpy
    - gf_rtsp_unregister_interleave
    - gf_filter_pid_negotiate_property_str
    - gf_itags_enum_tags
    - gf_dm_sess_last_error
    - gf_base16_decode
    - gf_isom_hint_pck_read
    - gf_sg_has_scripting
    - gf_sk_get_host_name
    - gf_isom_hint_pck_length
    - gf_strdup
    - gf_read_line_input
    - gf_blob_get
    - gf_lz_decompress_payload
    - gf_vec_scale_p
    - gf_dm_get_data_rate
    - gf_odf_desc_new
    - gf_filter_remove
    - gf_sys_get_battery_state
    - gf_fs_get_rt_udta
    - gf_isom_get_sample_description_index
    - gf_gpac_abi_micro
    - gf_dm_set_auth_callback
    - gpac_fsess_task_help
    - gf_audio_fmt_get_dolby_chanmap
    - gf_fs_set_external_gl_provider
    - gf_opts_discard_changes
    - gf_filter_post_task
    - gf_audio_fmt_get_cicp_from_layout
    - gf_net_ntp_diff_ms
    - gf_bbox_equal
    - gpac_handle_prompt
    - gf_sg_proto_get_id
    - gf_bs_bits_available
    - gf_token_get_strip
    - strlen
    - gf_mx_perspective_reverse_z
    - gf_ntohl
    - gf_mx_get_yaw_pitch_roll
    - gf_mx2d_init
    - gf_xml_dom_del
    - gf_isom_hint_pck_new
    - gf_path_add_quadratic_to
    - gf_odf_desc_del
    - gf_rect_equal
    - gf_lang_get_count
    - memset
    - gf_log_get_tools_levels
    - gf_file_modification_time
    - gf_xml_dom_get_line
    - gf_rtp_reset_ssrc
    - gf_4cc_parse
    - gf_isom_hint_pck_size
    - gf_quat_from_rotation
    - gf_audio_fmt_get_layout_from_cicp
    - gf_th_stop
    - gf_sys_is_quiet
    - gf_quat_rotate
    - gf_m2ts_probe_file
    - gf_dm_sess_abort
    - gf_sk_set_usec_wait
    - gpac_suggest_arg
    - gf_path_new
    - GF_LOG
    - gf_hevc_read_sps_bs
    - gf_node_get_proto_root
    - gf_xml_dom_parse_string
    - gf_htons
    - gf_crypt_open
    - gf_prompt_set_echo_off
    - gf_dm_new
    - gf_sys_get_argv
    - gf_rtp_stop
    - gf_props_parse_type
    - gf_fclose
    - gf_m2ts_restamp
    - gf_mp3_version_name
    - gf_odf_dump_txtcfg
    - gf_crypt_get_IV
    - gf_blob_unregister
    - gf_bs_del
    - gf_rtp_streamer_get_payload_type
    - gf_dir_cleanup
    - gf_bs_read_vluimsbf5
    - gf_crypt_decrypt
    linkageType: ''
    returnType: u32
    signature: u32 gpac_unit_tests(GF_MemTrackerType mem_track)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/applications/gpac/gpac.c:3747,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - data
    - len
    - out
    argTypes:
    - u8*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3750
      start: 3742
    functionDepth: 0
    functionLinenumber: 3742
    functionLinenumberEnd: 3750
    functionName: to_hex
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - sprintf
    linkageType: ''
    returnType: void
    signature: void to_hex(u8 *data, u32 len, char *out)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_rand
      Src: /src/gpac/applications/gpac/gpac.c:3765,1
    - Dst: gf_rand
      Src: /src/gpac/applications/gpac/gpac.c:3765,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/gpac/gpac.c:3766,1
    - Dst: gf_rand
      Src: /src/gpac/applications/gpac/gpac.c:3767,1
    - Dst: gf_rand
      Src: /src/gpac/applications/gpac/gpac.c:3767,1
    - Dst: gf_rand
      Src: /src/gpac/applications/gpac/gpac.c:3769,1
    - Dst: gf_rand
      Src: /src/gpac/applications/gpac/gpac.c:3769,1
    - Dst: gf_rand
      Src: /src/gpac/applications/gpac/gpac.c:3771,1
    - Dst: gf_rand
      Src: /src/gpac/applications/gpac/gpac.c:3771,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac.c:3779,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/gpac/gpac.c:3780,1
    - Dst: memcpy
      Src: /src/gpac/applications/gpac/gpac.c:3781,1
    - Dst: memcpy
      Src: /src/gpac/applications/gpac/gpac.c:3783,1
    - Dst: gf_sha256_csum
      Src: /src/gpac/applications/gpac/gpac.c:3785,1
    - Dst: to_hex
      Src: /src/gpac/applications/gpac/gpac.c:3786,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:3787,1
    - Dst: to_hex
      Src: /src/gpac/applications/gpac/gpac.c:3788,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:3789,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/gpac/gpac.c:3791,1
    - Dst: sprintf
      Src: /src/gpac/applications/gpac/gpac.c:3792,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:3793,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3794,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 35
    argCount: 3
    argNames:
    - creds
    - user
    - passwd
    argTypes:
    - GF_Config*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3796
      start: 3758
    functionDepth: 1
    functionLinenumber: 3758
    functionLinenumberEnd: 3796
    functionName: creds_set_pass
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sha256_csum
    - memcpy
    - strlen
    - sprintf
    - to_hex
    - gf_rand
    - gf_cfg_set_key
    - gf_sys_clock_high_res
    - gf_malloc
    linkageType: ''
    returnType: u64
    signature: u64 creds_set_pass(GF_Config *creds, const char *user, const char *passwd)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:3800,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:3803,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:3805,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac.c:3806,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:3812,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3813,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:3815,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - creds
    - group
    - user
    argTypes:
    - GF_Config*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3817
      start: 3798
    functionDepth: 1
    functionLinenumber: 3798
    functionLinenumberEnd: 3817
    functionName: rem_user_from_group
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_cfg_get_key
    - strcmp
    - gf_dynstrcat
    - strchr
    - gf_cfg_set_key
    linkageType: ''
    returnType: void
    signature: void rem_user_from_group(GF_Config *creds, const char *group, const
      char *user)
  - BBCount: 63
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/gpac/gpac.c:3825,1
    - Dst: gf_opts_get_filename
      Src: /src/gpac/applications/gpac/gpac.c:3828,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3830,1
    - Dst: strcpy
      Src: /src/gpac/applications/gpac/gpac.c:3834,1
    - Dst: strrchr
      Src: /src/gpac/applications/gpac/gpac.c:3835,1
    - Dst: strrchr
      Src: /src/gpac/applications/gpac/gpac.c:3836,1
    - Dst: strcat
      Src: /src/gpac/applications/gpac/gpac.c:3838,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/gpac/gpac.c:3839,1
    - Dst: gf_opts_save
      Src: /src/gpac/applications/gpac/gpac.c:3840,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/gpac/gpac.c:3841,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3843,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:3848,1
    - Dst: gf_file_exists
      Src: /src/gpac/applications/gpac/gpac.c:3849,1
    - Dst: gf_file_load_data
      Src: /src/gpac/applications/gpac/gpac.c:3852,1
    - Dst: fwrite
      Src: /src/gpac/applications/gpac/gpac.c:3853,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3854,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3856,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:3860,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3861,1
    - Dst: gf_cfg_force_new
      Src: /src/gpac/applications/gpac/gpac.c:3865,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3867,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:3878,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:3885,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3886,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:3889,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3891,1
    - Dst: gf_token_find_word
      Src: /src/gpac/applications/gpac/gpac.c:3896,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3898,1
    - Dst: rem_user_from_group
      Src: /src/gpac/applications/gpac/gpac.c:3901,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3903,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:3904,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:3912,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:3914,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3916,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac.c:3918,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:3925,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3926,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:3928,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:3931,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3933,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3935,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/applications/gpac/gpac.c:3937,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:3938,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/applications/gpac/gpac.c:3947,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3949,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/applications/gpac/gpac.c:3951,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:3952,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/applications/gpac/gpac.c:3962,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:3964,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3968,1
    - Dst: gf_read_line_input
      Src: /src/gpac/applications/gpac/gpac.c:3969,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3971,1
    - Dst: gf_creds_check_password
      Src: /src/gpac/applications/gpac/gpac.c:3973,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3974,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3979,1
    - Dst: gf_read_line_input
      Src: /src/gpac/applications/gpac/gpac.c:3980,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3982,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac.c:3983,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3984,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3987,1
    - Dst: gf_read_line_input
      Src: /src/gpac/applications/gpac/gpac.c:3988,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3990,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:3991,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3992,1
    - Dst: creds_set_pass
      Src: /src/gpac/applications/gpac/gpac.c:3996,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3998,1
    - Dst: UPDATE_FIELD
      Src: /src/gpac/applications/gpac/gpac.c:4010,1
    - Dst: UPDATE_FIELD
      Src: /src/gpac/applications/gpac/gpac.c:4011,1
    - Dst: UPDATE_FIELD
      Src: /src/gpac/applications/gpac/gpac.c:4012,1
    - Dst: UPDATE_FIELD
      Src: /src/gpac/applications/gpac/gpac.c:4013,1
    - Dst: sprintf
      Src: /src/gpac/applications/gpac/gpac.c:4016,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:4017,1
    - Dst: gf_opts_save
      Src: /src/gpac/applications/gpac/gpac.c:4020,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:4022,1
    - Dst: gf_token_find_word
      Src: /src/gpac/applications/gpac/gpac.c:4023,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac.c:4025,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac.c:4026,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:4027,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:4028,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:4031,1
    - Dst: gf_cfg_del_section
      Src: /src/gpac/applications/gpac/gpac.c:4032,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/applications/gpac/gpac.c:4033,1
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/applications/gpac/gpac.c:4035,1
    - Dst: rem_user_from_group
      Src: /src/gpac/applications/gpac/gpac.c:4036,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:4039,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/applications/gpac/gpac.c:4040,1
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/applications/gpac/gpac.c:4042,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:4043,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:4044,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac.c:4045,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:4047,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:4049,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:4053,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:4053,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:4053,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:4055,1
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:4057,1
    - Dst: print_date_ex
      Src: /src/gpac/applications/gpac/gpac.c:4058,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:4061,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:4061,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/applications/gpac/gpac.c:4064,1
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/applications/gpac/gpac.c:4066,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:4067,1
    - Dst: gf_token_find_word
      Src: /src/gpac/applications/gpac/gpac.c:4068,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:4070,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:4073,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:4075,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:4081,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:4083,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:4086,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:4087,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:4088,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:4089,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:4091,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:4096,1
    - Dst: creds_set_pass
      Src: /src/gpac/applications/gpac/gpac.c:4097,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:4099,1
    - Dst: gf_cfg_save
      Src: /src/gpac/applications/gpac/gpac.c:4112,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:4113,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:4119,1
    CyclomaticComplexity: 104
    EdgeCount: 104
    ICount: 274
    argCount: 1
    argNames:
    - creds_args
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4124
      start: 3820
    functionDepth: 2
    functionLinenumber: 3820
    functionLinenumberEnd: 4124
    functionName: gpac_do_creds
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_cfg_force_new
    - gf_opts_set_key
    - gf_file_exists
    - strcpy
    - gf_cfg_get_key_count
    - print_date_ex
    - gf_opts_get_key
    - gf_cfg_del_section
    - strchr
    - gf_cfg_set_key
    - fprintf
    - strcat
    - gf_token_find_word
    - strrchr
    - gf_cfg_del
    - gf_read_line_input
    - gf_opts_get_filename
    - gf_cfg_get_key
    - sprintf
    - gf_opts_save
    - gf_dynstrcat
    - gf_net_get_utc
    - sscanf
    - creds_set_pass
    - gf_sys_is_test_mode
    - gf_cfg_save
    - UPDATE_FIELD
    - strlen
    - fwrite
    - rem_user_from_group
    - gf_cfg_get_key_name
    - strcmp
    - gf_creds_check_password
    - gf_file_load_data
    linkageType: ''
    returnType: int
    signature: int gpac_do_creds(char *creds_args)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _prompt
    - ','
    - _key
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4009
      start: 4002
    functionDepth: 0
    functionLinenumber: 4002
    functionLinenumberEnd: 4009
    functionName: UPDATE_FIELD
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: UPDATE_FIELD(_prompt, _key)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 38
    functionName: NSObject
    functionSourceFile: /src/gpac/applications/gpac/ios_sensors/sensors.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: interface
    signature: interface NSObject <CLLocationManagerDelegate>
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/applications/mp4box/fileimport.c:65,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:69,1
    - Dst: gf_isom_remove_user_data
      Src: /src/gpac/applications/mp4box/fileimport.c:70,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:73,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:78,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:80,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/mp4box/fileimport.c:81,1
    - Dst: gf_base64_decode
      Src: /src/gpac/applications/mp4box/fileimport.c:82,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:85,1
    - Dst: gf_file_load_data
      Src: /src/gpac/applications/mp4box/fileimport.c:88,1
    - Dst: gf_isom_add_user_data_boxes
      Src: /src/gpac/applications/mp4box/fileimport.c:94,1
    - Dst: gf_isom_add_user_data
      Src: /src/gpac/applications/mp4box/fileimport.c:96,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:99,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 6
    argNames:
    - dest
    - tracknum
    - udta_type
    - src
    - is_box_array
    - is_string
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - char*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 102
    functionName: set_file_udta
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_free
    - gf_base64_decode
    - memset
    - strnicmp
    - gf_isom_remove_user_data
    - M4_LOG
    - gf_isom_add_user_data_boxes
    - gf_isom_add_user_data
    - strlen
    - gf_file_load_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err set_file_udta(GF_ISOFile *dest, u32 tracknum, u32 udta_type,
      char *src, Bool is_box_array, Bool is_string)
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/applications/mp4box/fileimport.c:121,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/fileimport.c:123,1
    - Dst: gf_media_import
      Src: /src/gpac/applications/mp4box/fileimport.c:131,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:133,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/fileimport.c:133,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:134,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:138,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:140,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:142,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:143,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:146,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:149,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:174,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:175,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:179,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:180,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:181,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:182,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:185,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:188,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:191,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:194,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:197,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:200,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/fileimport.c:200,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:203,1
    - Dst: gf_codecid_name
      Src: /src/gpac/applications/mp4box/fileimport.c:203,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:205,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/fileimport.c:205,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:207,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:211,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:216,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:221,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:225,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:226,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:228,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:231,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:234,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:242,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:245,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:248,1
    - Dst: gf_file_basename
      Src: /src/gpac/applications/mp4box/fileimport.c:248,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:249,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 133
    argCount: 2
    argNames:
    - inName
    - track_id
    argTypes:
    - char*
    - TrackIdentifier*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 251
    functionName: convert_file_info
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_4cc_to_str
    - memset
    - M4_LOG
    - gf_error_to_string
    - gf_codecid_name
    - gf_file_basename
    - gf_malloc
    - fprintf
    - gf_media_import
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err convert_file_info(char *inName, TrackIdentifier *track_id)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/applications/mp4box/fileimport.c:259,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/fileimport.c:259,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/applications/mp4box/fileimport.c:261,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:264,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:265,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:266,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:267,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:271,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/fileimport.c:271,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:273,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/applications/mp4box/fileimport.c:277,1
    - Dst: gf_isom_get_sample_size
      Src: /src/gpac/applications/mp4box/fileimport.c:283,1
    - Dst: gf_isom_get_sample_dts
      Src: /src/gpac/applications/mp4box/fileimport.c:284,1
    - Dst: gf_isom_get_sample_from_dts
      Src: /src/gpac/applications/mp4box/fileimport.c:285,1
    - Dst: gf_isom_set_sample_padding
      Src: /src/gpac/applications/mp4box/fileimport.c:286,1
    - Dst: gf_isom_has_padding_bits
      Src: /src/gpac/applications/mp4box/fileimport.c:287,1
    - Dst: gf_isom_get_sample_padding_bits
      Src: /src/gpac/applications/mp4box/fileimport.c:288,1
    - Dst: gf_isom_keep_utc_times
      Src: /src/gpac/applications/mp4box/fileimport.c:289,1
    - Dst: gf_isom_set_single_moof_mode
      Src: /src/gpac/applications/mp4box/fileimport.c:291,1
    - Dst: gf_isom_reset_sample_count
      Src: /src/gpac/applications/mp4box/fileimport.c:292,1
    - Dst: gf_isom_set_traf_mss_timeext
      Src: /src/gpac/applications/mp4box/fileimport.c:293,1
    - Dst: gf_isom_get_next_moof_number
      Src: /src/gpac/applications/mp4box/fileimport.c:294,1
    - Dst: gf_isom_set_fragment_reference_time
      Src: /src/gpac/applications/mp4box/fileimport.c:295,1
    - Dst: gf_isom_get_audio_layout
      Src: /src/gpac/applications/mp4box/fileimport.c:298,1
    - Dst: gf_isom_get_track_switch_parameter
      Src: /src/gpac/applications/mp4box/fileimport.c:300,1
    - Dst: gf_isom_sample_has_subsamples
      Src: /src/gpac/applications/mp4box/fileimport.c:301,1
    - Dst: gf_isom_sample_get_subsample
      Src: /src/gpac/applications/mp4box/fileimport.c:302,1
    - Dst: gf_isom_hint_blank_data
      Src: /src/gpac/applications/mp4box/fileimport.c:304,1
    - Dst: gf_isom_hint_sample_description_data
      Src: /src/gpac/applications/mp4box/fileimport.c:305,1
    - Dst: gf_isom_get_payt_info
      Src: /src/gpac/applications/mp4box/fileimport.c:306,1
    - Dst: gf_isom_estimate_size
      Src: /src/gpac/applications/mp4box/fileimport.c:308,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 42
    argCount: 3
    argNames:
    - file
    - track
    - chapter_ref_trak
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 253
    functionDepth: 1
    functionLinenumber: 253
    functionLinenumberEnd: 313
    functionName: set_chapter_track
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_sample_dts
    - gf_isom_get_sample_padding_bits
    - gf_isom_reset_sample_count
    - gf_isom_get_next_moof_number
    - gf_isom_get_sample_count
    - gf_isom_get_audio_layout
    - gf_isom_get_track_id
    - gf_isom_get_sample_size
    - gf_sys_is_cov_mode
    - gf_isom_hint_blank_data
    - gf_isom_has_padding_bits
    - gf_isom_get_sample_from_dts
    - gf_isom_sample_has_subsamples
    - gf_isom_set_track_enabled
    - gf_isom_get_payt_info
    - gf_isom_set_traf_mss_timeext
    - gf_isom_get_sample_duration
    - gf_isom_get_track_switch_parameter
    - gf_isom_estimate_size
    - gf_isom_keep_utc_times
    - gf_isom_hint_sample_description_data
    - gf_isom_set_fragment_reference_time
    - gf_isom_set_single_moof_mode
    - gf_isom_get_media_duration
    - gf_isom_get_media_timescale
    - gf_isom_set_sample_padding
    - gf_isom_set_last_sample_duration
    - gf_isom_sample_get_subsample
    - gf_isom_set_track_reference
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err set_chapter_track(GF_ISOFile *file, u32 track, u32 chapter_ref_trak)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:319,1
    - Dst: gf_parse_lfrac
      Src: /src/gpac/applications/mp4box/fileimport.c:322,1
    - Dst: gf_parse_lfrac
      Src: /src/gpac/applications/mp4box/fileimport.c:323,1
    - Dst: gf_parse_lfrac
      Src: /src/gpac/applications/mp4box/fileimport.c:330,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - str
    - f
    - dur
    argTypes:
    - char*
    - GF_Fraction64*
    - GF_Fraction64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 315
    functionDepth: 1
    functionLinenumber: 315
    functionLinenumberEnd: 332
    functionName: parse_fracs
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - strchr
    - gf_parse_lfrac
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err parse_fracs(char *str, GF_Fraction64 *f, GF_Fraction64 *dur)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:336,1
    - Dst: gf_cicp_parse_color_primaries
      Src: /src/gpac/applications/mp4box/fileimport.c:339,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:344,1
    - Dst: gf_cicp_parse_color_transfer
      Src: /src/gpac/applications/mp4box/fileimport.c:347,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:352,1
    - Dst: gf_cicp_parse_color_matrix
      Src: /src/gpac/applications/mp4box/fileimport.c:354,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:360,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:360,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:364,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:364,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:369,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 40
    argCount: 5
    argNames:
    - val
    - clr_prim
    - clr_tranf
    - clr_mx
    - clr_full_range
    argTypes:
    - char*
    - u32*
    - u32*
    - u32*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 334
    functionDepth: 1
    functionLinenumber: 334
    functionLinenumberEnd: 373
    functionName: scan_color
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - sscanf
    - gf_cicp_parse_color_transfer
    - gf_cicp_parse_color_primaries
    - strcmp
    - gf_cicp_parse_color_matrix
    - strchr
    linkageType: ''
    returnType: Bool
    signature: Bool scan_color(char *val, u32 *clr_prim, u32 *clr_tranf, u32 *clr_mx,
      Bool *clr_full_range)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:385,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:388,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:389,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:390,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:391,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:392,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:393,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:394,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:395,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:397,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:405,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:408,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:411,1
    - Dst: gf_isom_dovi_config_get
      Src: /src/gpac/applications/mp4box/fileimport.c:420,1
    - Dst: gf_isom_set_dolby_vision_profile
      Src: /src/gpac/applications/mp4box/fileimport.c:428,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/applications/mp4box/fileimport.c:429,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/fileimport.c:433,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:435,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/fileimport.c:440,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/fileimport.c:455,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/applications/mp4box/fileimport.c:458,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/applications/mp4box/fileimport.c:459,1
    - Dst: gf_isom_av1_config_get
      Src: /src/gpac/applications/mp4box/fileimport.c:461,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/applications/mp4box/fileimport.c:467,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/applications/mp4box/fileimport.c:472,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/applications/mp4box/fileimport.c:482,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:484,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/fileimport.c:494,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/mp4box/fileimport.c:497,1
    - Dst: gf_bs_available
      Src: /src/gpac/applications/mp4box/fileimport.c:499,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/applications/mp4box/fileimport.c:501,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/applications/mp4box/fileimport.c:502,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/applications/mp4box/fileimport.c:508,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/applications/mp4box/fileimport.c:510,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/applications/mp4box/fileimport.c:511,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/applications/mp4box/fileimport.c:512,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/applications/mp4box/fileimport.c:513,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/applications/mp4box/fileimport.c:518,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/applications/mp4box/fileimport.c:522,1
    - Dst: gf_av1_parse_obu_header
      Src: /src/gpac/applications/mp4box/fileimport.c:528,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/applications/mp4box/fileimport.c:529,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/applications/mp4box/fileimport.c:532,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/applications/mp4box/fileimport.c:533,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/applications/mp4box/fileimport.c:535,1
    - Dst: gf_bs_seek
      Src: /src/gpac/applications/mp4box/fileimport.c:541,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/fileimport.c:547,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/fileimport.c:548,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:555,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:556,1
    - Dst: gf_dolby_vision_level
      Src: /src/gpac/applications/mp4box/fileimport.c:567,1
    - Dst: gf_isom_set_dolby_vision_profile
      Src: /src/gpac/applications/mp4box/fileimport.c:568,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 141
    argCount: 4
    argNames:
    - dest
    - track
    - dv_profile_str
    - dv_md_compression
    argTypes:
    - GF_ISOFile*
    - u32
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 569
      start: 377
    functionDepth: 1
    functionLinenumber: 377
    functionLinenumberEnd: 569
    functionName: set_dv_profile
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_odf_avc_cfg_del
    - gf_bs_new
    - gf_isom_get_sample_count
    - memset
    - gf_av1_parse_obu_header
    - M4_LOG
    - gf_odf_av1_cfg_del
    - gf_bs_available
    - strchr
    - gf_isom_hevc_config_get
    - gf_isom_dovi_config_get
    - gf_isom_sample_del
    - gf_isom_get_sample
    - gf_bs_skip_bytes
    - gf_isom_set_dolby_vision_profile
    - gf_av1_leb128_read
    - gf_odf_dovi_cfg_del
    - gf_bs_get_position
    - gf_dolby_vision_level
    - gf_bs_read_u8
    - parse_u32
    - gf_odf_hevc_cfg_del
    - gf_isom_avc_config_get
    - gf_bs_seek
    - gf_bs_del
    - gf_isom_get_media_duration
    - strcmp
    - gf_isom_get_media_timescale
    - gf_isom_av1_config_get
    - gf_bs_read_int
    - gf_isom_get_visual_info
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err set_dv_profile(GF_ISOFile *dest, u32 track, char *dv_profile_str,
      u32 dv_md_compression)
  - BBCount: 199
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/applications/mp4box/fileimport.c:785,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/fileimport.c:790,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:792,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/mp4box/fileimport.c:807,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/applications/mp4box/fileimport.c:827,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:828,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/fileimport.c:829,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:833,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:836,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:836,1
    - Dst: gf_isom_probe_file
      Src: /src/gpac/applications/mp4box/fileimport.c:840,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/fileimport.c:848,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/fileimport.c:859,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:864,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:865,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:867,1
    - Dst: parse_s32
      Src: /src/gpac/applications/mp4box/fileimport.c:868,1
    - Dst: gf_parse_frac
      Src: /src/gpac/applications/mp4box/fileimport.c:871,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:874,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:875,1
    - Dst: atof
      Src: /src/gpac/applications/mp4box/fileimport.c:876,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:878,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:881,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:883,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:885,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:886,1
    - Dst: parse_s32
      Src: /src/gpac/applications/mp4box/fileimport.c:887,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:891,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:892,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:894,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:896,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:902,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:907,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:908,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:913,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:914,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:921,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:922,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:925,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:930,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/fileimport.c:931,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:932,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:935,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:939,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:940,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:942,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:943,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:946,1
    - Dst: gf_calloc
      Src: /src/gpac/applications/mp4box/fileimport.c:948,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:948,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:950,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:953,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/fileimport.c:953,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:954,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/fileimport.c:954,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:955,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/fileimport.c:961,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/fileimport.c:962,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/fileimport.c:963,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/fileimport.c:964,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:966,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:967,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:969,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:970,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:972,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:973,1
    - Dst: gf_isom_get_next_alternate_group_id
      Src: /src/gpac/applications/mp4box/fileimport.c:974,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:976,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:978,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:979,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:980,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:980,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/applications/mp4box/fileimport.c:985,1
    - Dst: atof
      Src: /src/gpac/applications/mp4box/fileimport.c:987,1
    - Dst: gf_parse_frac
      Src: /src/gpac/applications/mp4box/fileimport.c:989,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:993,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:994,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:995,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:995,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:996,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:996,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:996,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:997,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:997,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:998,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:998,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:999,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:999,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1000,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1000,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1001,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1001,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1002,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1002,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1003,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1003,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1004,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1004,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1005,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1005,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1006,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1006,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1007,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1007,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1008,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1008,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1008,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1009,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1009,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1009,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1010,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:1012,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1019,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1019,1
    - Dst: CHECK_FAKEIMPORT_2
      Src: /src/gpac/applications/mp4box/fileimport.c:1021,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1024,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1026,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1028,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1028,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1030,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1032,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1032,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1036,1
    - Dst: CHECK_FAKEIMPORT_2
      Src: /src/gpac/applications/mp4box/fileimport.c:1038,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1039,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1041,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1043,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:1046,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1050,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1050,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1051,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1051,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1052,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1052,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1053,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1053,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1054,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1054,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1055,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1055,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1056,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1056,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1057,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1057,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1058,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1058,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:1059,1
    - Dst: CHECK_FAKEIMPORT_2
      Src: /src/gpac/applications/mp4box/fileimport.c:1060,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:1062,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1064,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1070,1
    - Dst: CHECK_FAKEIMPORT_2
      Src: /src/gpac/applications/mp4box/fileimport.c:1070,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1071,1
    - Dst: CHECK_FAKEIMPORT_2
      Src: /src/gpac/applications/mp4box/fileimport.c:1071,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1072,1
    - Dst: CHECK_FAKEIMPORT_2
      Src: /src/gpac/applications/mp4box/fileimport.c:1072,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1075,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1076,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1078,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1079,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:1080,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1082,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:1083,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1086,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1088,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1089,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1091,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1093,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1098,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1099,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:1100,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1104,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1105,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:1106,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1111,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:1112,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1114,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:1115,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1118,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1121,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1122,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:1123,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1126,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:1126,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1128,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1129,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1130,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1131,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1132,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1133,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:1134,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1136,1
    - Dst: atof
      Src: /src/gpac/applications/mp4box/fileimport.c:1137,1
    - Dst: atof
      Src: /src/gpac/applications/mp4box/fileimport.c:1138,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:1140,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1142,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:1143,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1145,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1146,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1147,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1148,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1149,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1153,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1153,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1154,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1154,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1156,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1156,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:1156,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1157,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1157,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:1157,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1158,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1159,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1161,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1168,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1168,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1169,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1169,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1170,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1170,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1171,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1171,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1172,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1172,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1173,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1173,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1174,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1174,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1175,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1175,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1176,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1176,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1177,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1177,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1178,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:1178,1
    - Dst: atof
      Src: /src/gpac/applications/mp4box/fileimport.c:1178,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1181,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:1184,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:1188,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:1191,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/mp4box/fileimport.c:1195,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/mp4box/fileimport.c:1196,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1198,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1199,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1200,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1202,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1203,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1206,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1207,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1211,1
    - Dst: parse_s32
      Src: /src/gpac/applications/mp4box/fileimport.c:1212,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1214,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:1215,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1217,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1217,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1219,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1219,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1221,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1221,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1221,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/fileimport.c:1223,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/fileimport.c:1224,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/fileimport.c:1225,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1247,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1249,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1251,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1253,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1255,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1257,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:1260,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1262,1
    - Dst: parse_s32
      Src: /src/gpac/applications/mp4box/fileimport.c:1262,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1263,1
    - Dst: parse_s32
      Src: /src/gpac/applications/mp4box/fileimport.c:1263,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1264,1
    - Dst: parse_s32
      Src: /src/gpac/applications/mp4box/fileimport.c:1264,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1265,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1267,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:1268,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1270,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:1271,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1273,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1275,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:1277,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/fileimport.c:1280,1
    - Dst: scan_color
      Src: /src/gpac/applications/mp4box/fileimport.c:1286,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/fileimport.c:1289,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:1291,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/mp4box/fileimport.c:1295,1
    - Dst: gf_ftell
      Src: /src/gpac/applications/mp4box/fileimport.c:1296,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/mp4box/fileimport.c:1297,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/mp4box/fileimport.c:1298,1
    - Dst: gf_fread
      Src: /src/gpac/applications/mp4box/fileimport.c:1299,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/fileimport.c:1300,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:1303,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/fileimport.c:1303,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1310,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1313,1
    - Dst: strncpy
      Src: /src/gpac/applications/mp4box/fileimport.c:1314,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1317,1
    - Dst: parse_s32
      Src: /src/gpac/applications/mp4box/fileimport.c:1318,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1321,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1325,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1329,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:1330,1
    - Dst: strncpy
      Src: /src/gpac/applications/mp4box/fileimport.c:1331,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1334,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1335,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1335,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1336,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1336,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1339,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1342,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/applications/mp4box/fileimport.c:1343,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1345,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1352,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1355,1
    - Dst: gf_cicp_parse_color_primaries
      Src: /src/gpac/applications/mp4box/fileimport.c:1356,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1359,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1362,1
    - Dst: gf_cicp_parse_color_transfer
      Src: /src/gpac/applications/mp4box/fileimport.c:1363,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1366,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1369,1
    - Dst: gf_cicp_parse_color_matrix
      Src: /src/gpac/applications/mp4box/fileimport.c:1370,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1373,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1376,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1383,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1384,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1385,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1387,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1389,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1392,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1395,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1399,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:1404,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1407,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:1408,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1410,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1412,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1413,1
    - Dst: parse_s32
      Src: /src/gpac/applications/mp4box/fileimport.c:1415,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1420,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:1421,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1423,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:1425,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1427,1
    - Dst: atoi
      Src: /src/gpac/applications/mp4box/fileimport.c:1430,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:1431,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/fileimport.c:1431,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1434,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1442,1
    - Dst: atoi
      Src: /src/gpac/applications/mp4box/fileimport.c:1443,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:1447,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:1454,1
    - Dst: mp4box_check_isom_fileopt
      Src: /src/gpac/applications/mp4box/fileimport.c:1456,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:1457,1
    - Dst: mp4box_check_non_extk_fileopt
      Src: /src/gpac/applications/mp4box/fileimport.c:1459,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:1462,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1464,1
    CyclomaticComplexity: 228
    EdgeCount: 228
    ICount: 779
    argCount: 9
    argNames:
    - dest
    - inName
    - import_flags
    - force_fps
    - frames_per_sample
    - fsess
    - mux_args_if_first_pass
    - mux_sid_if_first_pass
    - tk_idx
    argTypes:
    - GF_ISOFile*
    - char*
    - u32
    - GF_Fraction
    - u32
    - GF_FilterSession*
    - char**
    - char**
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1481
      start: 698
    functionDepth: 2
    functionLinenumber: 698
    functionLinenumberEnd: 1481
    functionName: import_file
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GOTO_EXIT
    - memset
    - CHECK_FAKEIMPORT_2
    - gf_fopen
    - parse_s32
    - M4_LOG
    - gf_cicp_parse_color_matrix
    - atoi
    - strchr
    - strcat
    - gf_isom_probe_file
    - gf_strdup
    - gf_list_new
    - gf_4cc_to_str
    - strrchr
    - gf_fseek
    - mp4box_check_non_extk_fileopt
    - atof
    - gf_cicp_parse_color_transfer
    - scan_color
    - strncmp
    - gf_list_add
    - gf_url_colon_suffix
    - stricmp
    - gf_isom_get_next_alternate_group_id
    - gf_ftell
    - sscanf
    - gf_fread
    - strstr
    - strncpy
    - strnicmp
    - CHECK_FAKEIMPORT
    - parse_u32
    - strlen
    - gf_malloc
    - gf_fclose
    - mp4box_check_isom_fileopt
    - gf_cicp_parse_color_primaries
    - gf_calloc
    - gf_file_ext_start
    - strcmp
    - GF_4CC
    - gf_parse_frac
    - gf_sys_old_arch_compat
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err import_file(GF_ISOFile *dest, char *inName, u32 import_flags,
      GF_Fraction force_fps, u32 frames_per_sample, GF_FilterSession *fsess, char
      **mux_args_if_first_pass, char **mux_sid_if_first_pass, u32 tk_idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 851
      start: 850
    functionDepth: 0
    functionLinenumber: 850
    functionLinenumberEnd: 851
    functionName: GOTO_EXIT
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GOTO_EXIT(_msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _opt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 853
      start: 852
    functionDepth: 0
    functionLinenumber: 852
    functionLinenumberEnd: 853
    functionName: CHECK_FAKEIMPORT
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_FAKEIMPORT(_opt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _opt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 854
      start: 853
    functionDepth: 0
    functionLinenumber: 853
    functionLinenumberEnd: 854
    functionName: CHECK_FAKEIMPORT_2
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_FAKEIMPORT_2(_opt)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2288,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2290,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2297,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2299,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 2
    argNames:
    - _udta
    - evt
    argTypes:
    - void*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2303
      start: 2272
    functionDepth: 1
    functionLinenumber: 2272
    functionLinenumberEnd: 2303
    functionName: on_split_event
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - fprintf
    linkageType: ''
    returnType: Bool
    signature: Bool on_split_event(void *_udta, GF_Event *evt)
  - BBCount: 61
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:2338,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2339,1
    - Dst: gf_fs_new_defaults
      Src: /src/gpac/applications/mp4box/fileimport.c:2342,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2344,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2349,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/applications/mp4box/fileimport.c:2350,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2353,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/fileimport.c:2353,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2354,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:2359,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2360,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2363,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2366,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2368,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2369,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2374,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2376,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2378,1
    - Dst: gf_sys_find_global_arg
      Src: /src/gpac/applications/mp4box/fileimport.c:2379,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2380,1
    - Dst: gf_sys_find_global_arg
      Src: /src/gpac/applications/mp4box/fileimport.c:2383,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2384,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2391,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2392,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2395,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2400,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2403,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2405,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2407,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:2411,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2412,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2413,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2419,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2420,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2426,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2427,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2429,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2430,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2437,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:2438,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2441,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:2442,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2447,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2448,1
    - Dst: gf_isom_get_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:2454,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:2455,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2461,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2463,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2466,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2469,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2472,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2475,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2476,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2478,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2481,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:2482,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2483,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2488,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/applications/mp4box/fileimport.c:2490,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:2491,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2494,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/fileimport.c:2494,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2495,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2500,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:2502,1
    - Dst: gf_dir_exists
      Src: /src/gpac/applications/mp4box/fileimport.c:2504,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:2505,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2507,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2509,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2510,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2511,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2514,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:2514,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:2514,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/applications/mp4box/fileimport.c:2515,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2517,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2518,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2522,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2523,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2524,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2527,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2531,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2533,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2534,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2537,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/applications/mp4box/fileimport.c:2539,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2541,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/fileimport.c:2541,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2542,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/applications/mp4box/fileimport.c:2546,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/applications/mp4box/fileimport.c:2548,1
    - Dst: gf_log_get_tool_level
      Src: /src/gpac/applications/mp4box/fileimport.c:2550,1
    - Dst: gf_sys_is_quiet
      Src: /src/gpac/applications/mp4box/fileimport.c:2552,1
    - Dst: gf_fs_enable_reporting
      Src: /src/gpac/applications/mp4box/fileimport.c:2554,1
    - Dst: gf_fs_set_ui_callback
      Src: /src/gpac/applications/mp4box/fileimport.c:2555,1
    - Dst: on_split_event
      Src: /src/gpac/applications/mp4box/fileimport.c:2559,1
    - Dst: gf_fs_run
      Src: /src/gpac/applications/mp4box/fileimport.c:2564,1
    - Dst: gf_fs_get_last_connect_error
      Src: /src/gpac/applications/mp4box/fileimport.c:2566,1
    - Dst: gf_fs_get_last_process_error
      Src: /src/gpac/applications/mp4box/fileimport.c:2568,1
    - Dst: gf_fs_print_non_connected
      Src: /src/gpac/applications/mp4box/fileimport.c:2570,1
    - Dst: gf_fs_print_stats
      Src: /src/gpac/applications/mp4box/fileimport.c:2571,1
    - Dst: gf_fs_print_connections
      Src: /src/gpac/applications/mp4box/fileimport.c:2572,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2574,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2577,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/fileimport.c:2577,1
    CyclomaticComplexity: 72
    EdgeCount: 72
    ICount: 230
    argCount: 11
    argNames:
    - mp4
    - split_dur
    - split_size_kb
    - inName
    - InterleavingTime
    - chunk_start_time
    - adjust_split_end
    - outName
    - force_rap_split
    - split_range_str
    - fs_dump_flags
    argTypes:
    - GF_ISOFile*
    - Double
    - u64
    - char*
    - Double
    - Double
    - u32
    - char*
    - Bool
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2579
      start: 2309
    functionDepth: 2
    functionLinenumber: 2309
    functionLinenumberEnd: 2579
    functionName: split_isomedia_file
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fs_set_ui_callback
    - gf_dir_exists
    - gf_fs_get_last_process_error
    - gf_isom_get_timescale
    - strcpy
    - gf_fs_run
    - gf_fs_print_stats
    - gf_isom_get_duration
    - M4_LOG
    - strchr
    - strcat
    - gf_fs_print_non_connected
    - strrchr
    - gf_fs_enable_reporting
    - sprintf
    - gf_sys_find_global_arg
    - gf_sys_is_quiet
    - gf_fs_print_connections
    - on_split_event
    - stricmp
    - gf_dynstrcat
    - gf_filter_set_source
    - gf_fs_load_filter
    - gf_sys_is_test_mode
    - gf_error_to_string
    - gf_log_get_tool_level
    - gf_fs_del
    - strlen
    - gf_fs_load_destination
    - gf_fs_get_last_connect_error
    - gf_file_ext_start
    - strcmp
    - gf_fs_new_defaults
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err split_isomedia_file(GF_ISOFile *mp4, Double split_dur, u64 split_size_kb,
      char *inName, Double InterleavingTime, Double chunk_start_time, u32 adjust_split_end,
      char *outName, Bool force_rap_split, const char *split_range_str, u32 fs_dump_flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: on_split_event
      Src: /src/gpac/applications/mp4box/fileimport.c:2559,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2560
      start: 2558
    functionDepth: 2
    functionLinenumber: 2558
    functionLinenumberEnd: 2560
    functionName: if
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - on_split_event
    linkageType: ''
    returnType: else
    signature: else if (gf_sys_is_cov_mode())
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:2586,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:2588,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:2589,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:2590,1
    - Dst: memcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:2591,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 3
    argNames:
    - src
    - dst
    - name
    argTypes:
    - GF_List*
    - GF_List*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2601
      start: 2583
    functionDepth: 1
    functionLinenumber: 2583
    functionLinenumberEnd: 2601
    functionName: merge_parameter_set
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - memcmp
    linkageType: ''
    returnType: Bool
    signature: Bool merge_parameter_set(GF_List *src, GF_List *dst, const char *name)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/fileimport.c:2607,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/applications/mp4box/fileimport.c:2609,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/applications/mp4box/fileimport.c:2610,1
    - Dst: gf_media_nal_rewrite_samples
      Src: /src/gpac/applications/mp4box/fileimport.c:2622,1
    - Dst: merge_parameter_set
      Src: /src/gpac/applications/mp4box/fileimport.c:2630,1
    - Dst: merge_parameter_set
      Src: /src/gpac/applications/mp4box/fileimport.c:2632,1
    - Dst: gf_isom_avc_config_update
      Src: /src/gpac/applications/mp4box/fileimport.c:2635,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2639,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2640,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/fileimport.c:2644,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/applications/mp4box/fileimport.c:2645,1
    - Dst: gf_isom_avc_set_inband_config
      Src: /src/gpac/applications/mp4box/fileimport.c:2648,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2650,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 37
    argCount: 7
    argNames:
    - dest
    - tk_id
    - o_orig
    - src_track
    - force_cat
    - orig_nal_len
    - dst_nal_len
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_ISOFile**
    - u32
    - Bool
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2654
      start: 2603
    functionDepth: 2
    functionLinenumber: 2603
    functionLinenumberEnd: 2654
    functionName: merge_avc_config
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_media_nal_rewrite_samples
    - gf_isom_avc_set_inband_config
    - gf_isom_avc_config_get
    - gf_odf_avc_cfg_del
    - merge_parameter_set
    - gf_isom_avc_config_update
    - M4_LOG
    - gf_isom_get_track_by_id
    - gf_isom_set_nalu_extract_mode
    linkageType: ''
    returnType: u32
    signature: u32 merge_avc_config(GF_ISOFile *dest, u32 tk_id, GF_ISOFile **o_orig,
      u32 src_track, Bool force_cat, u32 *orig_nal_len, u32 *dst_nal_len)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/fileimport.c:2661,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/applications/mp4box/fileimport.c:2663,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/applications/mp4box/fileimport.c:2664,1
    - Dst: gf_media_nal_rewrite_samples
      Src: /src/gpac/applications/mp4box/fileimport.c:2672,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:2680,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:2682,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:2683,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:2684,1
    - Dst: merge_parameter_set
      Src: /src/gpac/applications/mp4box/fileimport.c:2686,1
    - Dst: gf_isom_hevc_config_update
      Src: /src/gpac/applications/mp4box/fileimport.c:2693,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2696,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2697,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/fileimport.c:2700,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/applications/mp4box/fileimport.c:2701,1
    - Dst: gf_isom_hevc_set_inband_config
      Src: /src/gpac/applications/mp4box/fileimport.c:2703,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2705,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 40
    argCount: 7
    argNames:
    - dest
    - tk_id
    - o_orig
    - src_track
    - force_cat
    - orig_nal_len
    - dst_nal_len
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_ISOFile**
    - u32
    - Bool
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2709
      start: 2656
    functionDepth: 2
    functionLinenumber: 2656
    functionLinenumberEnd: 2709
    functionName: merge_hevc_config
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_media_nal_rewrite_samples
    - gf_odf_hevc_cfg_del
    - gf_list_get
    - merge_parameter_set
    - gf_list_count
    - M4_LOG
    - gf_isom_hevc_set_inband_config
    - gf_isom_get_track_by_id
    - gf_isom_set_nalu_extract_mode
    - gf_isom_hevc_config_get
    - gf_isom_hevc_config_update
    linkageType: ''
    returnType: u32
    signature: u32 merge_hevc_config(GF_ISOFile *dest, u32 tk_id, GF_ISOFile **o_orig,
      u32 src_track, Bool force_cat, u32 *orig_nal_len, u32 *dst_nal_len)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/applications/mp4box/fileimport.c:2715,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/mp4box/fileimport.c:2716,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/applications/mp4box/fileimport.c:2720,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/applications/mp4box/fileimport.c:2725,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/fileimport.c:2729,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/applications/mp4box/fileimport.c:2735,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/applications/mp4box/fileimport.c:2736,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:2739,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/applications/mp4box/fileimport.c:2742,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2745,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2746,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:2747,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 33
    argCount: 3
    argNames:
    - samp
    - orig_nal_len
    - dst_nal_len
    argTypes:
    - GF_ISOSample*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2749
      start: 2711
    functionDepth: 1
    functionLinenumber: 2711
    functionLinenumberEnd: 2749
    functionName: rewrite_nal_size_field
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_del
    - gf_bs_write_data
    - gf_bs_read_int
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rewrite_nal_size_field(GF_ISOSample *samp, u32 orig_nal_len,
      u32 dst_nal_len)
  - BBCount: 128
    BranchProfiles: []
    Callsites:
    - Dst: cat_playlist
      Src: /src/gpac/applications/mp4box/fileimport.c:2768,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2770,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2770,1
    - Dst: cat_multiple_files
      Src: /src/gpac/applications/mp4box/fileimport.c:2771,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2773,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/fileimport.c:2779,1
    - Dst: gf_isom_probe_file
      Src: /src/gpac/applications/mp4box/fileimport.c:2784,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/fileimport.c:2787,1
    - Dst: import_file
      Src: /src/gpac/applications/mp4box/fileimport.c:2789,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/fileimport.c:2791,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/fileimport.c:2796,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/fileimport.c:2798,1
    - Dst: import_file
      Src: /src/gpac/applications/mp4box/fileimport.c:2801,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/fileimport.c:2803,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2810,1
    - Dst: import_file
      Src: /src/gpac/applications/mp4box/fileimport.c:2813,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/fileimport.c:2815,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/fileimport.c:2824,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/fileimport.c:2826,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2831,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/fileimport.c:2831,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/fileimport.c:2831,1
    - Dst: gf_isom_is_self_contained
      Src: /src/gpac/applications/mp4box/fileimport.c:2848,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/fileimport.c:2849,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2856,1
    - Dst: gf_isom_get_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:2860,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:2861,1
    - Dst: gf_isom_set_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:2862,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:2862,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:2864,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/fileimport.c:2868,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/fileimport.c:2869,1
    - Dst: gf_isom_get_sample_dts
      Src: /src/gpac/applications/mp4box/fileimport.c:2872,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:2873,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:2874,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/applications/mp4box/fileimport.c:2875,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2881,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/fileimport.c:2894,1
    - Dst: gf_isom_is_self_contained
      Src: /src/gpac/applications/mp4box/fileimport.c:2915,1
    - Dst: gf_isom_get_track_original_id
      Src: /src/gpac/applications/mp4box/fileimport.c:2921,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/fileimport.c:2923,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/fileimport.c:2926,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/fileimport.c:2930,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/fileimport.c:2933,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/fileimport.c:2934,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/fileimport.c:2959,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/fileimport.c:2960,1
    - Dst: gf_isom_is_same_sample_description
      Src: /src/gpac/applications/mp4box/fileimport.c:2961,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/fileimport.c:2962,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/fileimport.c:2964,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/fileimport.c:2965,1
    - Dst: gf_isom_get_media_language
      Src: /src/gpac/applications/mp4box/fileimport.c:2976,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/fileimport.c:2978,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:2979,1
    - Dst: gf_isom_get_media_language
      Src: /src/gpac/applications/mp4box/fileimport.c:2983,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/fileimport.c:2985,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:2986,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/fileimport.c:3009,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/fileimport.c:3011,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3013,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3013,1
    - Dst: gf_isom_is_same_sample_description
      Src: /src/gpac/applications/mp4box/fileimport.c:3015,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/fileimport.c:3021,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/fileimport.c:3023,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/fileimport.c:3024,1
    - Dst: merge_avc_config
      Src: /src/gpac/applications/mp4box/fileimport.c:3036,1
    - Dst: merge_hevc_config
      Src: /src/gpac/applications/mp4box/fileimport.c:3043,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3052,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3054,1
    - Dst: gf_isom_clone_sample_description
      Src: /src/gpac/applications/mp4box/fileimport.c:3057,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3069,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/fileimport.c:3069,1
    - Dst: gf_isom_clone_track
      Src: /src/gpac/applications/mp4box/fileimport.c:3070,1
    - Dst: gf_isom_clone_pl_indications
      Src: /src/gpac/applications/mp4box/fileimport.c:3072,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3080,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3081,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3085,1
    - Dst: gf_isom_set_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3090,1
    - Dst: gf_isom_set_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3093,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/applications/mp4box/fileimport.c:3098,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3100,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3103,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3104,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3107,1
    - Dst: gf_isom_get_sample_dts
      Src: /src/gpac/applications/mp4box/fileimport.c:3110,1
    - Dst: gf_isom_get_sample_dts
      Src: /src/gpac/applications/mp4box/fileimport.c:3110,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3116,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3117,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3118,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3119,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3123,1
    - Dst: gf_isom_get_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3128,1
    - Dst: gf_isom_get_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3129,1
    - Dst: gf_isom_enable_raw_pack
      Src: /src/gpac/applications/mp4box/fileimport.c:3138,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3141,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3145,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/fileimport.c:3148,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/fileimport.c:3150,1
    - Dst: gf_isom_is_self_contained
      Src: /src/gpac/applications/mp4box/fileimport.c:3162,1
    - Dst: rewrite_nal_size_field
      Src: /src/gpac/applications/mp4box/fileimport.c:3164,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3166,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/applications/mp4box/fileimport.c:3170,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/applications/mp4box/fileimport.c:3173,1
    - Dst: gf_isom_add_sample_reference
      Src: /src/gpac/applications/mp4box/fileimport.c:3174,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3175,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3184,1
    - Dst: gf_isom_copy_sample_info
      Src: /src/gpac/applications/mp4box/fileimport.c:3187,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3191,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3192,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/fileimport.c:3195,1
    - Dst: gf_isom_update_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3198,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3202,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3204,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3208,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3210,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3211,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3215,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3216,1
    - Dst: gf_isom_get_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3223,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3226,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3230,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3231,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3232,1
    - Dst: gf_isom_modify_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3233,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3242,1
    - Dst: gf_isom_get_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3244,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3246,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3249,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3252,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3253,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3258,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3266,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3267,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3270,1
    - Dst: gf_isom_get_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3272,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3288,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3291,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3292,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3293,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3294,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3295,1
    - Dst: gf_media_update_bitrate
      Src: /src/gpac/applications/mp4box/fileimport.c:3298,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3301,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/fileimport.c:3302,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3304,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/fileimport.c:3305,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/fileimport.c:3305,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3311,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3312,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3312,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3313,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3314,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/fileimport.c:3318,1
    - Dst: gf_isom_get_brand_info
      Src: /src/gpac/applications/mp4box/fileimport.c:3321,1
    - Dst: gf_isom_get_alternate_brand
      Src: /src/gpac/applications/mp4box/fileimport.c:3324,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/applications/mp4box/fileimport.c:3325,1
    - Dst: gf_isom_get_chapter_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3328,1
    - Dst: gf_isom_get_chapter
      Src: /src/gpac/applications/mp4box/fileimport.c:3332,1
    - Dst: gf_isom_get_chapter_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3338,1
    - Dst: gf_isom_get_chapter
      Src: /src/gpac/applications/mp4box/fileimport.c:3341,1
    - Dst: gf_isom_get_chapter_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3341,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3343,1
    - Dst: gf_isom_add_chapter
      Src: /src/gpac/applications/mp4box/fileimport.c:3347,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/fileimport.c:3352,1
    CyclomaticComplexity: 162
    EdgeCount: 162
    ICount: 467
    argCount: 9
    argNames:
    - dest
    - fileName
    - import_flags
    - force_fps
    - frames_per_sample
    - force_cat
    - align_timelines
    - allow_add_in_command
    - is_pl
    argTypes:
    - GF_ISOFile*
    - char*
    - u32
    - GF_Fraction
    - u32
    - Bool
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3354
      start: 2754
    functionDepth: 2
    functionLinenumber: 2754
    functionLinenumberEnd: 3354
    functionName: cat_isomedia_file
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_copy_sample_info
    - gf_set_progress
    - gf_isom_delete
    - gf_isom_get_sample_dts
    - gf_isom_get_timescale
    - gf_isom_get_sample_count
    - gf_isom_modify_alternate_brand
    - gf_isom_get_duration
    - gf_isom_add_sample_reference
    - gf_isom_add_sample
    - gf_isom_get_track_id
    - gf_isom_set_timescale
    - M4_LOG
    - gf_isom_get_sample_info
    - gf_isom_get_track_by_id
    - strchr
    - gf_isom_modify_edit
    - gf_media_update_bitrate
    - gf_isom_probe_file
    - gf_4cc_to_str
    - gf_isom_update_duration
    - gf_isom_is_same_sample_description
    - gf_isom_sample_del
    - gf_isom_get_media_subtype
    - cat_playlist
    - cat_multiple_files
    - gf_isom_get_track_count
    - gf_isom_set_edit
    - gf_isom_get_alternate_brand
    - gf_url_colon_suffix
    - stricmp
    - gf_isom_get_media_type
    - gf_isom_get_chapter_count
    - gf_isom_clone_track
    - gf_isom_get_sample
    - gf_isom_last_error
    - gf_isom_get_sample_duration
    - gf_isom_clone_pl_indications
    - gf_isom_get_chapter
    - GF_4CC
    - gf_isom_get_media_language
    - gf_isom_is_video_handler_type
    - merge_hevc_config
    - gf_isom_is_self_contained
    - gf_isom_set_media_timescale
    - gf_isom_remove_edits
    - gf_isom_enable_raw_pack
    - gf_isom_add_chapter
    - rewrite_nal_size_field
    - gf_timestamp_less
    - gf_isom_get_brand_info
    - gf_isom_get_edits_count
    - gf_isom_clone_sample_description
    - gf_timestamp_rescale
    - merge_avc_config
    - import_file
    - gf_isom_open
    - gf_isom_get_media_duration
    - gf_isom_get_media_timescale
    - gf_isom_get_edit
    - gf_isom_get_visual_info
    - gf_isom_set_last_sample_duration
    - gf_isom_get_track_original_id
    - gf_isom_get_sample_description_count
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cat_isomedia_file(GF_ISOFile *dest, char *fileName, u32 import_flags,
      GF_Fraction force_fps, u32 frames_per_sample, Bool force_cat, Bool align_timelines,
      Bool allow_add_in_command, Bool is_pl)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:3373,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3374,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:3375,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/fileimport.c:3375,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3377,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:3378,1
    - Dst: cat_isomedia_file
      Src: /src/gpac/applications/mp4box/fileimport.c:3380,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 4
    argNames:
    - cbk
    - szName
    - szPath
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3383
      start: 3367
    functionDepth: 3
    functionLinenumber: 3367
    functionLinenumberEnd: 3383
    functionName: cat_enumerate
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - strcat
    - cat_isomedia_file
    - strcpy
    - strstr
    - strnicmp
    - strlen
    linkageType: ''
    returnType: Bool
    signature: Bool cat_enumerate(void *cbk, char *szName, char *szPath, GF_FileEnumInfo
      *file_info)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:3398,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3399,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3402,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3403,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3404,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3406,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:3407,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3408,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3411,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:3413,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3414,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3417,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3420,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3421,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:3422,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3423,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3426,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/applications/mp4box/fileimport.c:3429,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3429,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3430,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/fileimport.c:3431,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3432,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:3434,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3435,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3438,1
    - Dst: gf_enum_directory
      Src: /src/gpac/applications/mp4box/fileimport.c:3441,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 57
    argCount: 8
    argNames:
    - dest
    - fileName
    - import_flags
    - force_fps
    - frames_per_sample
    - force_cat
    - align_timelines
    - allow_add_in_command
    argTypes:
    - GF_ISOFile*
    - char*
    - u32
    - GF_Fraction
    - u32
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3442
      start: 3385
    functionDepth: 1
    functionLinenumber: 3385
    functionLinenumberEnd: 3442
    functionName: cat_multiple_files
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 1
    functionsReached:
    - gf_enum_directory
    - strrchr
    - GF_LOG
    - strcpy
    - gf_sys_old_arch_compat
    - gf_url_colon_suffix
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cat_multiple_files(GF_ISOFile *dest, char *fileName, u32 import_flags,
      GF_Fraction force_fps, u32 frames_per_sample, Bool force_cat, Bool align_timelines,
      Bool allow_add_in_command)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/fileimport.c:3447,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3449,1
    - Dst: feof
      Src: /src/gpac/applications/mp4box/fileimport.c:3454,1
    - Dst: gf_fgets
      Src: /src/gpac/applications/mp4box/fileimport.c:3459,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:3461,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3462,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/applications/mp4box/fileimport.c:3468,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:3469,1
    - Dst: cat_isomedia_file
      Src: /src/gpac/applications/mp4box/fileimport.c:3471,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3475,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:3476,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:3479,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/fileimport.c:3481,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 8
    argNames:
    - dest
    - playlistName
    - import_flags
    - force_fps
    - frames_per_sample
    - force_cat
    - align_timelines
    - allow_add_in_command
    argTypes:
    - GF_ISOFile*
    - char*
    - u32
    - GF_Fraction
    - u32
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3483
      start: 3444
    functionDepth: 3
    functionLinenumber: 3444
    functionLinenumberEnd: 3483
    functionName: cat_playlist
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_strdup
    - cat_isomedia_file
    - gf_fgets
    - GF_LOG
    - gf_url_concatenate
    - feof
    - gf_fopen
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cat_playlist(GF_ISOFile *dest, char *playlistName, u32 import_flags,
      GF_Fraction force_fps, u32 frames_per_sample, Bool force_cat, Bool align_timelines,
      Bool allow_add_in_command)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3503,1
    - Dst: gf_sm_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3504,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/fileimport.c:3505,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/applications/mp4box/fileimport.c:3515,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/applications/mp4box/fileimport.c:3517,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3518,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/fileimport.c:3518,1
    - Dst: gf_sm_load_run
      Src: /src/gpac/applications/mp4box/fileimport.c:3521,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/applications/mp4box/fileimport.c:3522,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3526,1
    - Dst: gf_sm_stats_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3527,1
    - Dst: gf_sm_stats_for_scene
      Src: /src/gpac/applications/mp4box/fileimport.c:3528,1
    - Dst: gf_sm_stats_get
      Src: /src/gpac/applications/mp4box/fileimport.c:3530,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3534,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3537,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3541,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3542,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3543,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3545,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3548,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3551,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3560,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3561,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3563,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/mp4box/fileimport.c:3567,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:3568,1
    - Dst: gf_list_insert
      Src: /src/gpac/applications/mp4box/fileimport.c:3569,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3601,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/fileimport.c:3601,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/fileimport.c:3606,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/applications/mp4box/fileimport.c:3607,1
    - Dst: gf_sm_encode_to_file
      Src: /src/gpac/applications/mp4box/fileimport.c:3610,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/fileimport.c:3612,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/applications/mp4box/fileimport.c:3613,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/applications/mp4box/fileimport.c:3617,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/applications/mp4box/fileimport.c:3618,1
    - Dst: gf_sm_stats_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3622,1
    - Dst: gf_sm_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3624,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3625,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 105
    argCount: 4
    argNames:
    - in
    - mp4
    - opts
    - logs
    argTypes:
    - char*
    - GF_ISOFile*
    - GF_SMEncodeOptions*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3629
      start: 3490
    functionDepth: 1
    functionLinenumber: 3490
    functionLinenumberEnd: 3629
    functionName: EncodeFile
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_sm_load_init
    - gf_sg_command_field_new
    - gf_isom_modify_alternate_brand
    - gf_sm_stats_for_scene
    - memset
    - gf_sm_stats_del
    - M4_LOG
    - gf_sm_load_run
    - gf_isom_set_brand_info
    - gf_sg_command_new
    - fprintf
    - gf_sg_new
    - gf_list_get
    - gf_log_set_callback
    - gf_sm_encode_to_file
    - gf_sm_stats_new
    - gf_sg_del
    - gf_list_insert
    - gf_sm_stats_get
    - gf_node_new
    - gf_sm_load_done
    - gf_sm_new
    - gf_error_to_string
    - gf_sm_del
    - gf_log_set_tool_level
    - gf_node_register
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EncodeFile(char *in, GF_ISOFile *mp4, GF_SMEncodeOptions *opts,
      FILE *logs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - MaxVal
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3643
      start: 3638
    functionDepth: 0
    functionLinenumber: 3638
    functionLinenumberEnd: 3643
    functionName: GetNbBits
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 GetNbBits(u32 MaxVal)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3661,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3662,1
    - Dst: gf_bifs_encoder_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3667,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3674,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:3675,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3681,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:3686,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3691,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:3692,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3700,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3709,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3711,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3721,1
    - Dst: gf_odf_get_bifs_config
      Src: /src/gpac/applications/mp4box/fileimport.c:3731,1
    - Dst: GetNbBits
      Src: /src/gpac/applications/mp4box/fileimport.c:3735,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3737,1
    - Dst: GetNbBits
      Src: /src/gpac/applications/mp4box/fileimport.c:3739,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3741,1
    - Dst: GetNbBits
      Src: /src/gpac/applications/mp4box/fileimport.c:3743,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3745,1
    - Dst: gf_bifs_encoder_new_stream
      Src: /src/gpac/applications/mp4box/fileimport.c:3751,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3752,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3754,1
    - Dst: gf_bifs_encoder_get_config
      Src: /src/gpac/applications/mp4box/fileimport.c:3758,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3760,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3761,1
    - Dst: gf_bifs_encoder_get_version
      Src: /src/gpac/applications/mp4box/fileimport.c:3764,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3766,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:3767,1
    - Dst: gf_bifs_encode_au
      Src: /src/gpac/applications/mp4box/fileimport.c:3768,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3770,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/fileimport.c:3771,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/fileimport.c:3772,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/fileimport.c:3773,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:3774,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3778,1
    - Dst: gf_bifs_encoder_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3780,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 113
    argCount: 2
    argNames:
    - ctx
    - bifsOutputFile
    argTypes:
    - GF_SceneManager*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3782
      start: 3646
    functionDepth: 1
    functionLinenumber: 3646
    functionLinenumberEnd: 3782
    functionName: EncodeBIFSChunk
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bifs_encoder_new_stream
    - gf_odf_desc_del
    - strcpy
    - gf_fwrite
    - gf_list_count
    - gf_fopen
    - M4_LOG
    - gf_bifs_encoder_get_version
    - gf_bifs_encoder_get_config
    - gf_list_get
    - strrchr
    - gf_odf_desc_esd_new
    - sprintf
    - gf_odf_desc_new
    - GetNbBits
    - gf_bifs_encoder_del
    - gf_bifs_encoder_new
    - gf_odf_get_bifs_config
    - gf_bifs_encode_au
    - gf_fclose
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EncodeBIFSChunk(GF_SceneManager *ctx, char *bifsOutputFile,
      GF_Err (*AUCallback)(GF_ISOSample *))
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3798,1
    - Dst: gf_sg_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3807,1
    - Dst: gf_sm_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3808,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/fileimport.c:3809,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/applications/mp4box/fileimport.c:3814,1
    - Dst: gf_sm_load_run
      Src: /src/gpac/applications/mp4box/fileimport.c:3815,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/applications/mp4box/fileimport.c:3816,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3818,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/fileimport.c:3818,1
    - Dst: gf_sm_aggregate
      Src: /src/gpac/applications/mp4box/fileimport.c:3823,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/fileimport.c:3827,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/applications/mp4box/fileimport.c:3831,1
    - Dst: gf_sm_load_run
      Src: /src/gpac/applications/mp4box/fileimport.c:3832,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/applications/mp4box/fileimport.c:3833,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3835,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/fileimport.c:3835,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3838,1
    - Dst: EncodeBIFSChunk
      Src: /src/gpac/applications/mp4box/fileimport.c:3844,1
    - Dst: gf_sm_aggregate
      Src: /src/gpac/applications/mp4box/fileimport.c:3853,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3857,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3858,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3862,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3862,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3863,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:3869,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/fileimport.c:3870,1
    - Dst: gf_sm_encode_to_file
      Src: /src/gpac/applications/mp4box/fileimport.c:3871,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/fileimport.c:3872,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/mp4box/fileimport.c:3873,1
    - Dst: gf_sm_dump
      Src: /src/gpac/applications/mp4box/fileimport.c:3875,1
    - Dst: gf_sm_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3881,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3882,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 74
    argCount: 4
    argNames:
    - chunkFile
    - bifs
    - inputContext
    - outputContext
    argTypes:
    - char*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3889
      start: 3795
    functionDepth: 2
    functionLinenumber: 3795
    functionLinenumberEnd: 3889
    functionName: EncodeFileChunk
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_isom_delete
    - strcpy
    - gf_sm_load_init
    - memset
    - M4_LOG
    - gf_sm_load_run
    - strcat
    - gf_sg_new
    - strrchr
    - gf_sm_encode_to_file
    - stricmp
    - gf_sg_del
    - gf_isom_close
    - gf_sm_del
    - gf_sm_load_done
    - gf_sm_new
    - gf_error_to_string
    - EncodeBIFSChunk
    - gf_sm_aggregate
    - gf_isom_open
    - gf_sm_dump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EncodeFileChunk(char *chunkFile, char *bifs, char *inputContext,
      char *outputContext)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3901,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3901,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3905,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3905,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3907,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3908,1
    - Dst: atoi
      Src: /src/gpac/applications/mp4box/fileimport.c:3908,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3909,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/mp4box/fileimport.c:3910,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:3910,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 15
    argCount: 5
    argNames:
    - sax_cbck
    - node_name
    - name_space
    - attributes
    - nb_attributes
    argTypes:
    - void*
    - char*
    - char*
    - GF_XMLAttribute*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3912
      start: 3894
    functionDepth: 1
    functionLinenumber: 3894
    functionLinenumberEnd: 3912
    functionName: sax_node_start
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - sprintf
    - strnicmp
    - strcmp
    - atoi
    - gf_list_add
    - stricmp
    linkageType: ''
    returnType: void
    signature: void sax_node_start(void *sax_cbck, const char *node_name, const char
      *name_space, const GF_XMLAttribute *attributes, u32 nb_attributes)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3918,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/mp4box/fileimport.c:3921,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:3921,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - cbck
    - file_name
    - file_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3923
      start: 3914
    functionDepth: 1
    functionLinenumber: 3914
    functionLinenumberEnd: 3923
    functionName: wgt_enum_files
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - strcmp
    - gf_list_add
    linkageType: ''
    returnType: Bool
    signature: Bool wgt_enum_files(void *cbck, char *file_name, char *file_path, GF_FileEnumInfo
      *file_info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3926,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3926,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3926,1
    - Dst: gf_enum_directory
      Src: /src/gpac/applications/mp4box/fileimport.c:3927,1
    - Dst: gf_enum_directory
      Src: /src/gpac/applications/mp4box/fileimport.c:3928,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 4
    argNames:
    - cbck
    - file_name
    - file_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3930
      start: 3924
    functionDepth: 1
    functionLinenumber: 3924
    functionLinenumberEnd: 3930
    functionName: wgt_enum_dir
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_enum_directory
    - stricmp
    linkageType: ''
    returnType: Bool
    signature: Bool wgt_enum_dir(void *cbck, char *file_name, char *file_path, GF_FileEnumInfo
      *file_info)
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_get_root_type
      Src: /src/gpac/applications/mp4box/fileimport.c:3944,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3946,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/fileimport.c:3946,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3950,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3951,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:3952,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:3955,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:3956,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3959,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3965,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3966,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3970,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3973,1
    - Dst: gf_enum_directory
      Src: /src/gpac/applications/mp4box/fileimport.c:3978,1
    - Dst: gf_enum_directory
      Src: /src/gpac/applications/mp4box/fileimport.c:3979,1
    - Dst: gf_xml_sax_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3982,1
    - Dst: gf_xml_sax_parse_file
      Src: /src/gpac/applications/mp4box/fileimport.c:3983,1
    - Dst: gf_xml_sax_binary_file
      Src: /src/gpac/applications/mp4box/fileimport.c:3984,1
    - Dst: gf_xml_sax_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3985,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/fileimport.c:3991,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3994,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3995,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3996,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3997,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:4000,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:4007,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:4009,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/fileimport.c:4012,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/applications/mp4box/fileimport.c:4014,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/fileimport.c:4015,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:4019,1
    - Dst: gf_list_rem
      Src: /src/gpac/applications/mp4box/fileimport.c:4020,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:4023,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/fileimport.c:4026,1
    - Dst: gf_isom_probe_file
      Src: /src/gpac/applications/mp4box/fileimport.c:4027,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:4028,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:4030,1
    - Dst: gf_list_rem
      Src: /src/gpac/applications/mp4box/fileimport.c:4034,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:4040,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/fileimport.c:4045,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/fileimport.c:4047,1
    - Dst: gf_isom_set_meta_type
      Src: /src/gpac/applications/mp4box/fileimport.c:4050,1
    - Dst: gf_isom_add_meta_item
      Src: /src/gpac/applications/mp4box/fileimport.c:4054,1
    - Dst: gf_isom_set_meta_xml
      Src: /src/gpac/applications/mp4box/fileimport.c:4057,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:4060,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:4061,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:4064,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:4066,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:4070,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:4078,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4079,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:4079,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4081,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4081,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4082,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4083,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4084,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4085,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4086,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4089,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4089,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4093,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4093,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4097,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4097,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/applications/mp4box/fileimport.c:4102,1
    - Dst: gf_isom_add_meta_item
      Src: /src/gpac/applications/mp4box/fileimport.c:4104,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:4105,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:4106,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:4111,1
    - Dst: gf_list_last
      Src: /src/gpac/applications/mp4box/fileimport.c:4112,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/applications/mp4box/fileimport.c:4113,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:4114,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/mp4box/fileimport.c:4116,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:4117,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:4118,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/fileimport.c:4120,1
    CyclomaticComplexity: 61
    EdgeCount: 61
    ICount: 183
    argCount: 3
    argNames:
    - file_name
    - fcc
    - make_wgt
    argTypes:
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4124
      start: 3932
    functionDepth: 1
    functionLinenumber: 3932
    functionLinenumberEnd: 4124
    functionName: package_file
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_enum_directory
    - gf_isom_add_meta_item
    - gf_isom_delete
    - strcpy
    - gf_xml_sax_binary_file
    - gf_list_count
    - gf_fopen
    - M4_LOG
    - gf_xml_sax_parse_file
    - strchr
    - gf_isom_probe_file
    - gf_strdup
    - gf_list_new
    - gf_list_get
    - strrchr
    - gf_xml_sax_del
    - stricmp
    - gf_list_rem_last
    - gf_error_to_string
    - gf_list_last
    - strlen
    - gf_list_del
    - gf_fclose
    - gf_isom_set_meta_xml
    - gf_isom_open
    - gf_url_concatenate
    - gf_xml_get_root_type
    - gf_isom_set_meta_type
    - strcmp
    - GF_4CC
    - gf_xml_sax_new
    - gf_list_rem
    linkageType: ''
    returnType: GF_ISOFile
    signature: GF_ISOFile *package_file(char *file_name, char *fcc, Bool make_wgt)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/applications/mp4box/fileimport.c:4135,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/fileimport.c:4136,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4138,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/fileimport.c:4139,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/fileimport.c:4140,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/fileimport.c:4140,1
    - Dst: gf_isom_set_high_dynamic_range_info
      Src: /src/gpac/applications/mp4box/fileimport.c:4141,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/applications/mp4box/fileimport.c:4147,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/applications/mp4box/fileimport.c:4148,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:4150,1
    - Dst: gf_xml_dom_get_line
      Src: /src/gpac/applications/mp4box/fileimport.c:4150,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/applications/mp4box/fileimport.c:4150,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/mp4box/fileimport.c:4151,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/applications/mp4box/fileimport.c:4154,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:4156,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/mp4box/fileimport.c:4157,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4160,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:4161,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/mp4box/fileimport.c:4162,1
    - Dst: gf_list_enum
      Src: /src/gpac/applications/mp4box/fileimport.c:4167,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4173,1
    - Dst: gf_list_enum
      Src: /src/gpac/applications/mp4box/fileimport.c:4177,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4178,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:4179,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/fileimport.c:4180,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:4182,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:4185,1
    - Dst: gf_list_enum
      Src: /src/gpac/applications/mp4box/fileimport.c:4190,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4195,1
    - Dst: gf_list_enum
      Src: /src/gpac/applications/mp4box/fileimport.c:4197,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4198,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:4198,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4199,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:4199,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4200,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:4200,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4201,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:4201,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4202,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:4202,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4203,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:4203,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4204,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:4204,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4205,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:4205,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4206,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:4206,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4207,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:4207,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:4208,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4210,1
    - Dst: gf_list_enum
      Src: /src/gpac/applications/mp4box/fileimport.c:4212,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4213,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:4213,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4214,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:4214,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:4215,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:4218,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/fileimport.c:4224,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/fileimport.c:4225,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/fileimport.c:4225,1
    - Dst: gf_isom_set_high_dynamic_range_info
      Src: /src/gpac/applications/mp4box/fileimport.c:4226,1
    - Dst: gf_isom_set_high_dynamic_range_info
      Src: /src/gpac/applications/mp4box/fileimport.c:4231,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:4234,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/mp4box/fileimport.c:4239,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 109
    argCount: 3
    argNames:
    - movie
    - track
    - file_name
    argTypes:
    - GF_ISOFile*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4241
      start: 4126
    functionDepth: 1
    functionLinenumber: 4126
    functionLinenumberEnd: 4241
    functionName: apply_high_dynamc_range_xml_desc
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_parse
    - gf_xml_dom_get_root
    - gf_xml_dom_del
    - gf_isom_is_video_handler_type
    - gf_isom_get_track_count
    - memset
    - strcmp
    - gf_xml_dom_new
    - M4_LOG
    - gf_xml_dom_get_line
    - gf_xml_dom_get_error
    - gf_list_enum
    - gf_isom_get_track_by_id
    - gf_isom_get_media_type
    - parse_u32
    - gf_isom_set_high_dynamic_range_info
    - fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err apply_high_dynamc_range_xml_desc(GF_ISOFile *movie, u32 track,
      char *file_name)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/fileimport.c:4251,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/fileimport.c:4253,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/fileimport.c:4254,1
    - Dst: gf_isom_set_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:4261,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/fileimport.c:4262,1
    - Dst: gf_feof
      Src: /src/gpac/applications/mp4box/fileimport.c:4263,1
    - Dst: gf_fgets
      Src: /src/gpac/applications/mp4box/fileimport.c:4266,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:4268,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:4269,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/fileimport.c:4276,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:4278,1
    - Dst: atoi
      Src: /src/gpac/applications/mp4box/fileimport.c:4280,1
    - Dst: gf_isom_set_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:4281,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:4290,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:4293,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:4295,1
    - Dst: gf_isom_get_sample_info_ex
      Src: /src/gpac/applications/mp4box/fileimport.c:4321,1
    - Dst: gf_isom_update_sample
      Src: /src/gpac/applications/mp4box/fileimport.c:4325,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/fileimport.c:4327,1
    - Dst: gf_isom_get_sample_info_ex
      Src: /src/gpac/applications/mp4box/fileimport.c:4337,1
    - Dst: gf_isom_update_sample
      Src: /src/gpac/applications/mp4box/fileimport.c:4341,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/fileimport.c:4343,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:4348,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:4350,1
    - Dst: gf_isom_remove_sample
      Src: /src/gpac/applications/mp4box/fileimport.c:4354,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/fileimport.c:4358,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 91
    argCount: 3
    argNames:
    - file
    - trackID
    - timestamp_source
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4360
      start: 4243
    functionDepth: 1
    functionLinenumber: 4243
    functionLinenumberEnd: 4360
    functionName: apply_timestamps
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_feof
    - sscanf
    - gf_isom_remove_sample
    - gf_fgets
    - gf_isom_set_media_timescale
    - gf_isom_get_sample_count
    - strstr
    - memset
    - gf_isom_get_sample_info_ex
    - gf_fopen
    - atoi
    - gf_isom_update_sample
    - M4_LOG
    - gf_isom_get_track_by_id
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err apply_timestamps(GF_ISOFile *file, GF_ISOTrackID trackID, const
      char *timestamp_source)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/gpac/applications/mp4box/filedump.c:76,1
    - Dst: vfprintf
      Src: /src/gpac/applications/mp4box/filedump.c:77,1
    - Dst: fflush
      Src: /src/gpac/applications/mp4box/filedump.c:78,1
    - Dst: va_end
      Src: /src/gpac/applications/mp4box/filedump.c:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - fmt
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 80
    functionName: mp4box_log
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - va_start
    - vfprintf
    - fflush
    - va_end
    linkageType: ''
    returnType: void
    signature: void mp4box_log(const char *fmt, ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_lang_get_count
      Src: /src/gpac/applications/mp4box/filedump.c:86,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:87,1
    - Dst: gf_lang_get_2cc
      Src: /src/gpac/applications/mp4box/filedump.c:89,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:90,1
    - Dst: gf_lang_get_name
      Src: /src/gpac/applications/mp4box/filedump.c:90,1
    - Dst: gf_lang_get_3cc
      Src: /src/gpac/applications/mp4box/filedump.c:90,1
    - Dst: gf_lang_get_2cc
      Src: /src/gpac/applications/mp4box/filedump.c:90,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 94
    functionName: PrintLanguages
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_lang_get_name
    - gf_lang_get_count
    - gf_lang_get_3cc
    - gf_lang_get_2cc
    - fprintf
    linkageType: ''
    returnType: u32
    signature: u32 PrintLanguages(char *val, u32 opt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_lang_find
      Src: /src/gpac/applications/mp4box/filedump.c:98,1
    - Dst: gf_lang_get_name
      Src: /src/gpac/applications/mp4box/filedump.c:99,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - lcode
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 101
    functionName: GetLanguage
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_lang_get_name
    - gf_lang_find
    linkageType: ''
    returnType: char
    signature: char *GetLanguage(char *lcode)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_apple_get_tag
      Src: /src/gpac/applications/mp4box/filedump.c:108,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:111,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/filedump.c:119,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/filedump.c:121,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:125,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:127,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:128,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:131,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/filedump.c:136,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:139,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 3
    argNames:
    - file
    - inName
    - is_final_name
    argTypes:
    - GF_ISOFile*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 141
    functionName: dump_isom_cover_art
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_fwrite
    - gf_fopen
    - M4_LOG
    - gf_dynstrcat
    - gf_isom_apple_get_tag
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_isom_cover_art(GF_ISOFile *file, char *inName, Bool is_final_name)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_new
      Src: /src/gpac/applications/mp4box/filedump.c:155,1
    - Dst: gf_sm_new
      Src: /src/gpac/applications/mp4box/filedump.c:156,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/filedump.c:157,1
    - Dst: get_file_type_by_ext
      Src: /src/gpac/applications/mp4box/filedump.c:169,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/filedump.c:171,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/filedump.c:173,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:174,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:174,1
    - Dst: gf_sm_del
      Src: /src/gpac/applications/mp4box/filedump.c:175,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/mp4box/filedump.c:176,1
    - Dst: gf_isom_disable_odf_conversion
      Src: /src/gpac/applications/mp4box/filedump.c:180,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/filedump.c:183,1
    - Dst: import_file
      Src: /src/gpac/applications/mp4box/filedump.c:187,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:190,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/filedump.c:192,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:195,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:195,1
    - Dst: gf_sm_del
      Src: /src/gpac/applications/mp4box/filedump.c:196,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/mp4box/filedump.c:197,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/filedump.c:198,1
    - Dst: snprintf
      Src: /src/gpac/applications/mp4box/filedump.c:205,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/applications/mp4box/filedump.c:205,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:206,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/filedump.c:208,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/applications/mp4box/filedump.c:209,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/applications/mp4box/filedump.c:212,1
    - Dst: gf_sm_load_run
      Src: /src/gpac/applications/mp4box/filedump.c:213,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/applications/mp4box/filedump.c:214,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/filedump.c:216,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/applications/mp4box/filedump.c:217,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:218,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:221,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:223,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:225,1
    - Dst: gf_sm_dump
      Src: /src/gpac/applications/mp4box/filedump.c:227,1
    - Dst: gf_sm_del
      Src: /src/gpac/applications/mp4box/filedump.c:230,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/mp4box/filedump.c:231,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:232,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:232,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/filedump.c:233,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 71
    argCount: 6
    argNames:
    - file
    - inName
    - is_final_name
    - dump_mode
    - do_log
    - no_odf_conv
    argTypes:
    - char*
    - char*
    - Bool
    - GF_SceneDumpFormat
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 235
    functionName: dump_isom_scene
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_isom_delete
    - gf_sm_load_init
    - gf_list_count
    - memset
    - gf_fopen
    - M4_LOG
    - gf_sm_load_run
    - gf_isom_disable_odf_conversion
    - fprintf
    - gf_sg_new
    - gf_log_set_callback
    - snprintf
    - gf_sg_del
    - gf_isom_last_error
    - gf_sm_del
    - gf_sm_load_done
    - gf_sm_new
    - gf_error_to_string
    - gf_log_set_tool_level
    - gf_fclose
    - import_file
    - gf_isom_open
    - gf_sm_dump
    - get_file_type_by_ext
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_isom_scene(char *file, char *inName, Bool is_final_name,
      GF_SceneDumpFormat dump_mode, Bool do_log, Bool no_odf_conv)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:246,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:247,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:247,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:248,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:249,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:250,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:283,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:287,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:290,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:291,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:293,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:296,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:297,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:297,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:298,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:299,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:300,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:301,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:305,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:307,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:308,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:310,1
    - Dst: FIX2FLT
      Src: /src/gpac/applications/mp4box/filedump.c:310,1
    - Dst: FIX2FLT
      Src: /src/gpac/applications/mp4box/filedump.c:310,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:311,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:312,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:313,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:314,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:316,1
    - Dst: FIX2FLT
      Src: /src/gpac/applications/mp4box/filedump.c:316,1
    - Dst: FIX2FLT
      Src: /src/gpac/applications/mp4box/filedump.c:316,1
    - Dst: FIX2FLT
      Src: /src/gpac/applications/mp4box/filedump.c:316,1
    - Dst: FIX2FLT
      Src: /src/gpac/applications/mp4box/filedump.c:316,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:318,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:320,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:321,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:323,1
    - Dst: FIX2FLT
      Src: /src/gpac/applications/mp4box/filedump.c:323,1
    - Dst: FIX2FLT
      Src: /src/gpac/applications/mp4box/filedump.c:323,1
    - Dst: FIX2FLT
      Src: /src/gpac/applications/mp4box/filedump.c:323,1
    - Dst: FIX2FLT
      Src: /src/gpac/applications/mp4box/filedump.c:323,1
    - Dst: FIX2FLT
      Src: /src/gpac/applications/mp4box/filedump.c:323,1
    - Dst: FIX2FLT
      Src: /src/gpac/applications/mp4box/filedump.c:323,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:325,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:327,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:328,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:329,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:331,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:332,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:333,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:335,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:336,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:337,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:338,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:339,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:340,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 88
    argCount: 2
    argNames:
    - dump
    - stats
    argTypes:
    - FILE*
    - GF_SceneStatistics*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 240
    functionDepth: 1
    functionLinenumber: 240
    functionLinenumberEnd: 341
    functionName: dump_stats
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - fprintf
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void dump_stats(FILE *dump, const GF_SceneStatistics *stats)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:347,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:348,1
    - Dst: gf_list_insert
      Src: /src/gpac/applications/mp4box/filedump.c:355,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/mp4box/filedump.c:359,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - sample_list
    - au
    argTypes:
    - GF_List*
    - GF_AUContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 344
    functionDepth: 1
    functionLinenumber: 344
    functionLinenumberEnd: 360
    functionName: ReorderAU
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_insert
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void ReorderAU(GF_List *sample_list, GF_AUContext *au)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_new
      Src: /src/gpac/applications/mp4box/filedump.c:381,1
    - Dst: gf_sm_new
      Src: /src/gpac/applications/mp4box/filedump.c:382,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/filedump.c:383,1
    - Dst: get_file_type_by_ext
      Src: /src/gpac/applications/mp4box/filedump.c:387,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/filedump.c:388,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:390,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:390,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/filedump.c:390,1
    - Dst: gf_sm_del
      Src: /src/gpac/applications/mp4box/filedump.c:391,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/mp4box/filedump.c:392,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/applications/mp4box/filedump.c:397,1
    - Dst: gf_sm_load_run
      Src: /src/gpac/applications/mp4box/filedump.c:398,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/applications/mp4box/filedump.c:399,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:403,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/filedump.c:404,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:405,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:407,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:416,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:418,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:419,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/applications/mp4box/filedump.c:420,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:421,1
    - Dst: gf_gpac_version
      Src: /src/gpac/applications/mp4box/filedump.c:421,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:422,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:424,1
    - Dst: gf_file_basename
      Src: /src/gpac/applications/mp4box/filedump.c:424,1
    - Dst: gf_sm_stats_new
      Src: /src/gpac/applications/mp4box/filedump.c:426,1
    - Dst: gf_sm_stats_for_scene
      Src: /src/gpac/applications/mp4box/filedump.c:430,1
    - Dst: dump_stats
      Src: /src/gpac/applications/mp4box/filedump.c:431,1
    - Dst: gf_sm_stats_get
      Src: /src/gpac/applications/mp4box/filedump.c:431,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/mp4box/filedump.c:435,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:437,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:438,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:440,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:441,1
    - Dst: ReorderAU
      Src: /src/gpac/applications/mp4box/filedump.c:442,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:446,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:448,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:450,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:451,1
    - Dst: gf_sm_stats_for_command
      Src: /src/gpac/applications/mp4box/filedump.c:454,1
    - Dst: gf_sg_command_apply
      Src: /src/gpac/applications/mp4box/filedump.c:458,1
    - Dst: gf_sm_stats_for_graph
      Src: /src/gpac/applications/mp4box/filedump.c:462,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:466,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:468,1
    - Dst: dump_stats
      Src: /src/gpac/applications/mp4box/filedump.c:471,1
    - Dst: gf_sm_stats_get
      Src: /src/gpac/applications/mp4box/filedump.c:471,1
    - Dst: gf_sm_stats_reset
      Src: /src/gpac/applications/mp4box/filedump.c:473,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:475,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:477,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/filedump.c:480,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/mp4box/filedump.c:485,1
    - Dst: gf_sm_stats_del
      Src: /src/gpac/applications/mp4box/filedump.c:486,1
    - Dst: gf_sm_del
      Src: /src/gpac/applications/mp4box/filedump.c:487,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/mp4box/filedump.c:488,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/filedump.c:489,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:491,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:491,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:493,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:495,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:496,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 113
    argCount: 4
    argNames:
    - file
    - inName
    - is_final_name
    - stat_level
    argTypes:
    - char*
    - char*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 362
    functionDepth: 2
    functionLinenumber: 362
    functionLinenumberEnd: 497
    functionName: dump_isom_scene_stats
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_set_progress
    - gf_isom_delete
    - strcpy
    - gf_sm_load_init
    - gf_sm_stats_for_scene
    - gf_list_count
    - memset
    - gf_fopen
    - gf_sm_stats_del
    - M4_LOG
    - gf_sm_load_run
    - gf_file_basename
    - gf_sm_stats_for_command
    - fprintf
    - strcat
    - gf_sg_new
    - gf_list_new
    - gf_list_get
    - gf_sm_stats_new
    - gf_sg_del
    - gf_sm_stats_for_graph
    - dump_stats
    - gf_isom_last_error
    - ReorderAU
    - gf_sys_is_test_mode
    - gf_sm_stats_get
    - gf_sm_del
    - gf_sm_load_done
    - gf_sm_new
    - gf_error_to_string
    - gf_list_del
    - gf_fclose
    - gf_sm_stats_reset
    - gf_isom_open
    - gf_gpac_version
    - get_file_type_by_ext
    - gf_sg_command_apply
    linkageType: ''
    returnType: void
    signature: void dump_isom_scene_stats(char *file, char *inName, Bool is_final_name,
      u32 stat_level)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:506,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:507,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:508,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:509,1
    - Dst: FIX2FLT
      Src: /src/gpac/applications/mp4box/filedump.c:509,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - val
    - add_space
    argTypes:
    - Fixed
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 504
    functionDepth: 1
    functionLinenumber: 504
    functionLinenumberEnd: 510
    functionName: PrintFixed
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void PrintFixed(Fixed val, Bool add_space)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:517,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:520,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:523,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:526,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:529,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:530,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:533,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:534,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:535,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:538,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:539,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:540,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:541,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:544,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:545,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:546,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:550,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:552,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 42
    argCount: 2
    argNames:
    - type
    - far_ptr
    argTypes:
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 512
    functionDepth: 2
    functionLinenumber: 512
    functionLinenumberEnd: 555
    functionName: PrintNodeSFField
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - PrintFixed
    linkageType: ''
    returnType: void
    signature: void PrintNodeSFField(u32 type, void *far_ptr)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_field_count
      Src: /src/gpac/applications/mp4box/filedump.c:569,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/applications/mp4box/filedump.c:574,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:575,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:578,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/mp4box/filedump.c:587,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/mp4box/filedump.c:588,1
    - Dst: gf_node_in_table_by_tag
      Src: /src/gpac/applications/mp4box/filedump.c:589,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/applications/mp4box/filedump.c:590,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/filedump.c:591,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:592,1
    - Dst: gf_node_unregister
      Src: /src/gpac/applications/mp4box/filedump.c:595,1
    - Dst: gf_node_mpeg4_type_by_class_name
      Src: /src/gpac/applications/mp4box/filedump.c:603,1
    - Dst: gf_bifs_get_child_table
      Src: /src/gpac/applications/mp4box/filedump.c:605,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/applications/mp4box/filedump.c:606,1
    - Dst: gf_sg_script_get_field_index
      Src: /src/gpac/applications/mp4box/filedump.c:609,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/applications/mp4box/filedump.c:611,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/applications/mp4box/filedump.c:612,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/applications/mp4box/filedump.c:613,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/applications/mp4box/filedump.c:614,1
    - Dst: gf_node_x3d_type_by_class_name
      Src: /src/gpac/applications/mp4box/filedump.c:618,1
    - Dst: gf_node_in_table_by_tag
      Src: /src/gpac/applications/mp4box/filedump.c:621,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/applications/mp4box/filedump.c:621,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:624,1
    - Dst: gf_node_get_field
      Src: /src/gpac/applications/mp4box/filedump.c:627,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:629,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:633,1
    - Dst: gf_sg_vrml_get_event_type_name
      Src: /src/gpac/applications/mp4box/filedump.c:633,1
    - Dst: gf_sg_vrml_get_field_type_name
      Src: /src/gpac/applications/mp4box/filedump.c:633,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:634,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:635,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/applications/mp4box/filedump.c:636,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:637,1
    - Dst: PrintNodeSFField
      Src: /src/gpac/applications/mp4box/filedump.c:638,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:643,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/applications/mp4box/filedump.c:644,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:646,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/applications/mp4box/filedump.c:647,1
    - Dst: PrintNodeSFField
      Src: /src/gpac/applications/mp4box/filedump.c:648,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:650,1
    - Dst: gf_bifs_get_aq_info
      Src: /src/gpac/applications/mp4box/filedump.c:653,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:655,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:656,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:658,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:659,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:660,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:661,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:662,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:667,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/applications/mp4box/filedump.c:670,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:673,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 90
    argCount: 6
    argNames:
    - node
    - sg
    - name
    - graph_type
    - is_nodefield
    - do_cov
    argTypes:
    - GF_Node*
    - GF_SceneGraph*
    - char*
    - u32
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 675
      start: 559
    functionDepth: 3
    functionLinenumber: 559
    functionLinenumberEnd: 675
    functionName: do_print_node
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_sg_script_get_field_index
    - gf_node_get_num_fields_in_mode
    - gf_node_get_tag
    - gf_node_get_class_name
    - gf_sg_vrml_mf_get_item
    - gf_sg_vrml_get_field_type_name
    - gf_node_get_field
    - M4_LOG
    - gf_node_unregister
    - fprintf
    - gf_bifs_get_aq_info
    - gf_sg_vrml_get_sf_type
    - gf_node_in_table_by_tag
    - gf_sg_vrml_is_sf_field
    - gf_node_new
    - PrintFixed
    - gf_sg_vrml_get_event_type_name
    - gf_node_get_field_count
    - PrintNodeSFField
    - gf_node_get_field_by_name
    - gf_node_x3d_type_by_class_name
    - gf_node_mpeg4_type_by_class_name
    - strcmp
    - gf_node_register
    - gf_bifs_get_child_table
    linkageType: ''
    returnType: void
    signature: void do_print_node(GF_Node *node, GF_SceneGraph *sg, const char *name,
      u32 graph_type, Bool is_nodefield, Bool do_cov)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:682,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/filedump.c:693,1
    - Dst: gf_node_x3d_type_by_class_name
      Src: /src/gpac/applications/mp4box/filedump.c:701,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:704,1
    - Dst: gf_node_mpeg4_type_by_class_name
      Src: /src/gpac/applications/mp4box/filedump.c:708,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:712,1
    - Dst: gf_sg_new
      Src: /src/gpac/applications/mp4box/filedump.c:716,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/mp4box/filedump.c:717,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/mp4box/filedump.c:718,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/applications/mp4box/filedump.c:719,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:721,1
    - Dst: do_print_node
      Src: /src/gpac/applications/mp4box/filedump.c:724,1
    - Dst: gf_node_unregister
      Src: /src/gpac/applications/mp4box/filedump.c:726,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/mp4box/filedump.c:727,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 32
    argCount: 2
    argNames:
    - name
    - graph_type
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 679
    functionDepth: 4
    functionLinenumber: 679
    functionLinenumberEnd: 730
    functionName: PrintNode
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_sg_new
    - gf_sg_del
    - gf_node_get_class_name
    - gf_node_x3d_type_by_class_name
    - gf_node_mpeg4_type_by_class_name
    - gf_node_new
    - M4_LOG
    - gf_node_register
    - do_print_node
    - gf_node_unregister
    - strchr
    linkageType: ''
    returnType: u32
    signature: u32 PrintNode(const char *name, u32 graph_type)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:749,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:754,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:762,1
    - Dst: gf_sg_new
      Src: /src/gpac/applications/mp4box/filedump.c:770,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:773,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:775,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:777,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/mp4box/filedump.c:780,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/mp4box/filedump.c:782,1
    - Dst: do_print_node
      Src: /src/gpac/applications/mp4box/filedump.c:784,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/applications/mp4box/filedump.c:784,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:786,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/applications/mp4box/filedump.c:786,1
    - Dst: gf_node_unregister
      Src: /src/gpac/applications/mp4box/filedump.c:788,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/mp4box/filedump.c:796,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:798,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:800,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/applications/mp4box/filedump.c:805,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:807,1
    - Dst: gf_sg_vrml_field_pointer_del
      Src: /src/gpac/applications/mp4box/filedump.c:808,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:814,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 66
    argCount: 2
    argNames:
    - arg_val
    - dump_type
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 732
    functionDepth: 4
    functionLinenumber: 732
    functionLinenumberEnd: 817
    functionName: PrintBuiltInNodes
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sg_new
    - gf_sg_del
    - gf_sg_vrml_field_pointer_new
    - gf_sg_vrml_field_pointer_del
    - gf_node_get_class_name
    - gf_node_new
    - M4_LOG
    - do_print_node
    - gf_node_unregister
    - gf_node_register
    - fprintf
    linkageType: ''
    returnType: u32
    signature: u32 PrintBuiltInNodes(char *arg_val, u32 dump_type)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_num_supported_boxes
      Src: /src/gpac/applications/mp4box/filedump.c:822,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:824,1
    - Dst: gf_isom_dump_supported_box
      Src: /src/gpac/applications/mp4box/filedump.c:828,1
    - Dst: gf_isom_get_supported_box_type
      Src: /src/gpac/applications/mp4box/filedump.c:832,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/applications/mp4box/filedump.c:833,1
    - Dst: gf_isom_clone_box
      Src: /src/gpac/applications/mp4box/filedump.c:836,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/applications/mp4box/filedump.c:837,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/applications/mp4box/filedump.c:838,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:843,1
    - Dst: gf_itags_get_type
      Src: /src/gpac/applications/mp4box/filedump.c:848,1
    - Dst: gf_itags_get_itag
      Src: /src/gpac/applications/mp4box/filedump.c:850,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/applications/mp4box/filedump.c:855,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/applications/mp4box/filedump.c:857,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:859,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:859,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 33
    argCount: 2
    argNames:
    - argval
    - do_cov
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 866
      start: 820
    functionDepth: 1
    functionLinenumber: 820
    functionLinenumberEnd: 866
    functionName: PrintBuiltInBoxes
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_isom_dump_supported_box
    - gf_itags_get_type
    - gf_isom_clone_box
    - gf_isom_get_num_supported_boxes
    - gf_isom_box_del
    - gf_isom_get_supported_box_type
    - gf_itags_get_itag
    - M4_LOG
    - gf_isom_box_new
    - fprintf
    linkageType: ''
    returnType: u32
    signature: u32 PrintBuiltInBoxes(char *argval, u32 do_cov)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:878,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/filedump.c:879,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:880,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:882,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:889,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:890,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:891,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/filedump.c:893,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/filedump.c:894,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:896,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/filedump.c:896,1
    - Dst: gf_isom_sdp_track_get
      Src: /src/gpac/applications/mp4box/filedump.c:897,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:899,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:902,1
    - Dst: gf_isom_dump_hint_sample
      Src: /src/gpac/applications/mp4box/filedump.c:903,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:906,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:908,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:909,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 3
    argNames:
    - file
    - inName
    - is_final_name
    argTypes:
    - GF_ISOFile*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 910
      start: 870
    functionDepth: 1
    functionLinenumber: 870
    functionLinenumberEnd: 910
    functionName: dump_isom_rtp
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_fclose
    - gf_isom_dump_hint_sample
    - strcpy
    - gf_isom_get_sample_count
    - gf_isom_get_track_count
    - gf_isom_sdp_track_get
    - gf_fopen
    - gf_isom_get_track_id
    - M4_LOG
    - gf_isom_get_media_type
    - fprintf
    linkageType: ''
    returnType: void
    signature: void dump_isom_rtp(GF_ISOFile *file, char *inName, Bool is_final_name)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:931,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/filedump.c:932,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:933,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:935,1
    - Dst: gf_isom_is_fragmented
      Src: /src/gpac/applications/mp4box/filedump.c:941,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/filedump.c:945,1
    - Dst: gf_isom_get_cts_to_dts_shift
      Src: /src/gpac/applications/mp4box/filedump.c:946,1
    - Dst: gf_isom_has_time_offset
      Src: /src/gpac/applications/mp4box/filedump.c:947,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:949,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/filedump.c:949,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:950,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:952,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:954,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:957,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/filedump.c:961,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/applications/mp4box/filedump.c:974,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:976,1
    - Dst: gf_isom_get_sample_flags
      Src: /src/gpac/applications/mp4box/filedump.c:979,1
    - Dst: gf_isom_get_sample_rap_roll_info
      Src: /src/gpac/applications/mp4box/filedump.c:980,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:983,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:986,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:988,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:993,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:996,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:999,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1007,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1011,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:1020,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1024,1
    - Dst: gf_isom_sample_is_fragment_start
      Src: /src/gpac/applications/mp4box/filedump.c:1024,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1027,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/filedump.c:1028,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1030,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/filedump.c:1031,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:1033,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:1035,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:1037,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 90
    argCount: 4
    argNames:
    - file
    - inName
    - is_final_name
    - dump_mode
    argTypes:
    - GF_ISOFile*
    - char*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1039
      start: 914
    functionDepth: 1
    functionLinenumber: 914
    functionLinenumberEnd: 1039
    functionName: dump_isom_timestamps
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_set_progress
    - gf_isom_sample_is_fragment_start
    - strcpy
    - gf_isom_get_sample_count
    - gf_fopen
    - gf_isom_get_track_id
    - M4_LOG
    - gf_isom_get_sample_info
    - gf_isom_get_sample_rap_roll_info
    - fprintf
    - gf_realloc
    - strcat
    - gf_isom_sample_del
    - gf_isom_get_track_count
    - gf_isom_has_time_offset
    - gf_isom_is_fragmented
    - gf_fclose
    - gf_isom_get_sample_flags
    - gf_isom_get_cts_to_dts_shift
    linkageType: ''
    returnType: void
    signature: void dump_isom_timestamps(GF_ISOFile *file, char *inName, Bool is_final_name,
      u32 dump_mode)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ptr
    - nalh_size
    argTypes:
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1054
      start: 1043
    functionDepth: 0
    functionLinenumber: 1043
    functionLinenumberEnd: 1054
    functionName: read_nal_size_hdr
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 read_nal_size_hdr(u8 *ptr, u32 nalh_size)
  - BBCount: 51
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/filedump.c:1081,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:1083,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:1085,1
    - Dst: gf_isom_get_nalu_extract_mode
      Src: /src/gpac/applications/mp4box/filedump.c:1087,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/applications/mp4box/filedump.c:1089,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:1091,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1095,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:1131,1
    - Dst: gf_isom_svc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:1132,1
    - Dst: gf_isom_mvc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:1133,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:1134,1
    - Dst: gf_isom_lhvc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:1135,1
    - Dst: gf_isom_vvc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:1136,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/mp4box/filedump.c:1143,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/mp4box/filedump.c:1148,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/mp4box/filedump.c:1152,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/applications/mp4box/filedump.c:1158,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/applications/mp4box/filedump.c:1160,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:1161,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1164,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:1167,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1174,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1175,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1176,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1180,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1181,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1185,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1186,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:1191,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:1192,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1194,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1196,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1198,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1200,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:1207,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:1208,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1210,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1212,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1214,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1216,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1218,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1220,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1222,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1224,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:1231,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:1232,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1234,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1236,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1238,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1240,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1244,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:1246,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:1248,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:1251,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:1252,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:1253,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/applications/mp4box/filedump.c:1260,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1264,1
    - Dst: gf_isom_get_reference_ID
      Src: /src/gpac/applications/mp4box/filedump.c:1267,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1268,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1271,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1277,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/applications/mp4box/filedump.c:1278,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/filedump.c:1284,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/filedump.c:1286,1
    - Dst: gf_isom_is_adobe_protection_media
      Src: /src/gpac/applications/mp4box/filedump.c:1290,1
    - Dst: gf_isom_is_cenc_media
      Src: /src/gpac/applications/mp4box/filedump.c:1291,1
    - Dst: gf_isom_get_sample_rap_roll_info
      Src: /src/gpac/applications/mp4box/filedump.c:1296,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1299,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1301,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1304,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1305,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1307,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1315,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1316,1
    - Dst: gf_isom_get_sample_cenc_info
      Src: /src/gpac/applications/mp4box/filedump.c:1328,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1330,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:1330,1
    - Dst: gf_isom_cenc_get_sample_aux_info
      Src: /src/gpac/applications/mp4box/filedump.c:1334,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1342,1
    - Dst: read_nal_size_hdr
      Src: /src/gpac/applications/mp4box/filedump.c:1345,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1349,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1352,1
    - Dst: gf_inspect_dump_nalu
      Src: /src/gpac/applications/mp4box/filedump.c:1354,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1358,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1365,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:1366,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1368,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/filedump.c:1369,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1371,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1372,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:1373,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/applications/mp4box/filedump.c:1375,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:1378,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:1379,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:1380,1
    CyclomaticComplexity: 73
    EdgeCount: 73
    ICount: 228
    argCount: 4
    argNames:
    - file
    - trackID
    - dump
    - dump_flags
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - FILE*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1384
      start: 1061
    functionDepth: 1
    functionLinenumber: 1061
    functionLinenumberEnd: 1384
    functionName: dump_isom_nal_ex
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_vvc_cfg_del
    - gf_set_progress
    - gf_odf_avc_cfg_del
    - GF_SAFEALLOC
    - gf_isom_get_sample_count
    - gf_isom_vvc_config_get
    - gf_list_count
    - gf_isom_get_sample_rap_roll_info
    - M4_LOG
    - gf_isom_get_nalu_extract_mode
    - gf_isom_get_track_by_id
    - gf_isom_hevc_config_get
    - gf_isom_mvc_config_get
    - gf_isom_set_nalu_extract_mode
    - fprintf
    - gf_isom_svc_config_get
    - gf_list_get
    - read_nal_size_hdr
    - gf_isom_sample_del
    - gf_isom_get_reference
    - gf_isom_get_reference_ID
    - gf_isom_get_sample_cenc_info
    - gf_isom_get_sample
    - gf_isom_last_error
    - gf_isom_cenc_get_sample_aux_info
    - gf_error_to_string
    - gf_isom_is_adobe_protection_media
    - gf_isom_is_cenc_media
    - gf_odf_hevc_cfg_del
    - gf_isom_lhvc_config_get
    - gf_isom_avc_config_get
    - gf_inspect_dump_nalu
    - gf_isom_get_reference_count
    - gf_isom_get_media_timescale
    - gf_isom_get_sample_description_count
    - DUMP_ARRAY
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_isom_nal_ex(GF_ISOFile *file, GF_ISOTrackID trackID, FILE
      *dump, u32 dump_flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - arr
    - ','
    - name
    - ','
    - loc
    - ','
    - _is_svc
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1110
      start: 1099
    functionDepth: 0
    functionLinenumber: 1099
    functionLinenumberEnd: 1110
    functionName: DUMP_ARRAY
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DUMP_ARRAY(arr, name, loc, _is_svc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - arr
    - ','
    - name
    - ','
    - loc
    - ','
    - _is_svc
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1123
      start: 1112
    functionDepth: 0
    functionLinenumber: 1112
    functionLinenumberEnd: 1123
    functionName: DUMP_ARRAY
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DUMP_ARRAY(arr, name, loc, _is_svc)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/filedump.c:1397,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/applications/mp4box/filedump.c:1398,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/filedump.c:1401,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/filedump.c:1423,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:1428,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1430,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:1432,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:1434,1
    - Dst: dump_isom_obu
      Src: /src/gpac/applications/mp4box/filedump.c:1443,1
    - Dst: dump_qt_prores
      Src: /src/gpac/applications/mp4box/filedump.c:1445,1
    - Dst: dump_isom_opus
      Src: /src/gpac/applications/mp4box/filedump.c:1447,1
    - Dst: dump_isom_nal_ex
      Src: /src/gpac/applications/mp4box/filedump.c:1449,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:1451,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/applications/mp4box/filedump.c:1455,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/applications/mp4box/filedump.c:1456,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1458,1
    - Dst: gf_xml_dom_get_line
      Src: /src/gpac/applications/mp4box/filedump.c:1458,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/applications/mp4box/filedump.c:1458,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/mp4box/filedump.c:1460,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1462,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 62
    argCount: 5
    argNames:
    - file
    - trackID
    - inName
    - is_final_name
    - dump_flags
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - char*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1466
      start: 1390
    functionDepth: 2
    functionLinenumber: 1390
    functionLinenumberEnd: 1466
    functionName: dump_isom_nal
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - strcpy
    - gf_fopen
    - M4_LOG
    - gf_xml_dom_get_line
    - gf_isom_get_track_by_id
    - fprintf
    - gf_isom_get_media_subtype
    - sprintf
    - dump_qt_prores
    - gf_xml_dom_new
    - gf_xml_dom_parse
    - gf_isom_get_esd
    - gf_xml_dom_get_error
    - dump_isom_obu
    - gf_fclose
    - dump_isom_nal_ex
    - dump_isom_opus
    - gf_xml_dom_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_isom_nal(GF_ISOFile *file, GF_ISOTrackID trackID, char
      *inName, Bool is_final_name, u32 dump_flags)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/filedump.c:1478,1
    - Dst: gf_isom_opus_config_get_desc
      Src: /src/gpac/applications/mp4box/filedump.c:1480,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:1482,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:1486,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:1487,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1489,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1491,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1494,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1496,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1498,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1500,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1505,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/filedump.c:1509,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/filedump.c:1511,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1517,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1518,1
    - Dst: gf_inspect_dump_opus
      Src: /src/gpac/applications/mp4box/filedump.c:1520,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1522,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:1523,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1525,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/filedump.c:1528,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1530,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1531,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 43
    argCount: 4
    argNames:
    - file
    - trackID
    - dump
    - dump_crc
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - FILE*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1534
      start: 1472
    functionDepth: 1
    functionLinenumber: 1472
    functionLinenumberEnd: 1534
    functionName: dump_isom_opus
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 1
    functionsReached:
    - gf_inspect_dump_opus
    - gf_isom_last_error
    - gf_set_progress
    - gf_isom_sample_del
    - gf_isom_get_sample_count
    - gf_isom_get_sample
    - gf_isom_get_media_timescale
    - M4_LOG
    - gf_isom_get_track_by_id
    - gf_isom_opus_config_get_desc
    - fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_isom_opus(GF_ISOFile *file, GF_ISOTrackID trackID, FILE
      *dump, Bool dump_crc)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/filedump.c:1552,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/mp4box/filedump.c:1554,1
    - Dst: gf_av1_init_state
      Src: /src/gpac/applications/mp4box/filedump.c:1556,1
    - Dst: gf_isom_av1_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:1557,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:1559,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:1560,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:1564,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:1565,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1567,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1569,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:1571,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:1572,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/mp4box/filedump.c:1573,1
    - Dst: gf_av1_parse_obu
      Src: /src/gpac/applications/mp4box/filedump.c:1574,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:1576,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/applications/mp4box/filedump.c:1577,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:1578,1
    - Dst: gf_inspect_dump_obu
      Src: /src/gpac/applications/mp4box/filedump.c:1581,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/filedump.c:1582,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1584,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1586,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/filedump.c:1595,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/filedump.c:1597,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1603,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1604,1
    - Dst: gf_isom_is_cenc_media
      Src: /src/gpac/applications/mp4box/filedump.c:1609,1
    - Dst: gf_isom_get_sample_cenc_info
      Src: /src/gpac/applications/mp4box/filedump.c:1610,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1612,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:1612,1
    - Dst: gf_isom_cenc_get_sample_aux_info
      Src: /src/gpac/applications/mp4box/filedump.c:1616,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/mp4box/filedump.c:1625,1
    - Dst: gf_av1_parse_obu
      Src: /src/gpac/applications/mp4box/filedump.c:1627,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1631,1
    - Dst: gf_inspect_dump_obu
      Src: /src/gpac/applications/mp4box/filedump.c:1634,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/filedump.c:1640,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1641,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:1642,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1644,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/filedump.c:1647,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1649,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1650,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:1651,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:1653,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/applications/mp4box/filedump.c:1654,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:1655,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 88
    argCount: 4
    argNames:
    - file
    - trackID
    - dump
    - dump_crc
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - FILE*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1658
      start: 1540
    functionDepth: 1
    functionLinenumber: 1540
    functionLinenumberEnd: 1658
    functionName: dump_isom_obu
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_set_progress
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_isom_get_sample_count
    - gf_list_count
    - M4_LOG
    - gf_odf_av1_cfg_del
    - gf_isom_get_track_by_id
    - fprintf
    - gf_list_get
    - gf_isom_sample_del
    - gf_isom_get_sample_cenc_info
    - gf_isom_get_sample
    - gf_isom_last_error
    - gf_inspect_dump_obu
    - gf_av1_init_state
    - gf_isom_cenc_get_sample_aux_info
    - gf_error_to_string
    - gf_isom_is_cenc_media
    - gf_av1_parse_obu
    - gf_bs_del
    - gf_av1_reset_state
    - gf_isom_get_media_timescale
    - gf_isom_av1_config_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_isom_obu(GF_ISOFile *file, GF_ISOTrackID trackID, FILE
      *dump, Bool dump_crc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/filedump.c:1666,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:1668,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:1669,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1671,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/filedump.c:1676,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/filedump.c:1678,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1684,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1685,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1687,1
    - Dst: gf_inspect_dump_prores
      Src: /src/gpac/applications/mp4box/filedump.c:1689,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1690,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:1692,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1694,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/filedump.c:1695,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1697,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 4
    argNames:
    - file
    - trackID
    - dump
    - dump_crc
    argTypes:
    - GF_ISOFile*
    - u32
    - FILE*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1700
      start: 1660
    functionDepth: 1
    functionLinenumber: 1660
    functionLinenumberEnd: 1700
    functionName: dump_qt_prores
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 1
    functionsReached:
    - gf_isom_last_error
    - gf_set_progress
    - gf_isom_sample_del
    - gf_isom_get_sample_count
    - gf_inspect_dump_prores
    - gf_isom_get_media_timescale
    - gf_isom_get_track_by_id
    - fprintf
    - gf_isom_get_sample
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_qt_prores(GF_ISOFile *file, u32 trackID, FILE *dump, Bool
      dump_crc)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/filedump.c:1707,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:1710,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1712,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:1713,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:1715,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1722,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1723,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1724,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:1724,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1726,1
    - Dst: gf_isom_get_edit_list_type
      Src: /src/gpac/applications/mp4box/filedump.c:1727,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1729,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:1731,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/applications/mp4box/filedump.c:1739,1
    - Dst: gf_isom_sample_is_fragment_start
      Src: /src/gpac/applications/mp4box/filedump.c:1744,1
    - Dst: gf_isom_get_sample_rap_roll_info
      Src: /src/gpac/applications/mp4box/filedump.c:1751,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:1757,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1763,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1766,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1768,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1769,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1770,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1774,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1776,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:1778,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1780,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1781,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:1782,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 61
    argCount: 5
    argNames:
    - file
    - trackID
    - dump_saps_mode
    - inName
    - is_final_name
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - u32
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1783
      start: 1702
    functionDepth: 1
    functionLinenumber: 1702
    functionLinenumberEnd: 1783
    functionName: dump_isom_saps
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_isom_sample_is_fragment_start
    - gf_isom_sample_del
    - strcpy
    - gf_isom_get_sample_count
    - sprintf
    - gf_fopen
    - gf_isom_get_media_timescale
    - M4_LOG
    - gf_isom_get_edit_list_type
    - gf_isom_get_sample_info
    - gf_isom_get_sample_rap_roll_info
    - gf_isom_get_track_by_id
    - fprintf
    linkageType: ''
    returnType: void
    signature: void dump_isom_saps(GF_ISOFile *file, GF_ISOTrackID trackID, u32 dump_saps_mode,
      char *inName, Bool is_final_name)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - e1
    - e2
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1805
      start: 1797
    functionDepth: 0
    functionLinenumber: 1797
    functionLinenumberEnd: 1805
    functionName: sort_chunk
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 sort_chunk(const void* e1, const void* e2)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:1821,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/filedump.c:1822,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:1823,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:1825,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/filedump.c:1833,1
    - Dst: gf_isom_get_chunk_count
      Src: /src/gpac/applications/mp4box/filedump.c:1836,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/mp4box/filedump.c:1838,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/filedump.c:1839,1
    - Dst: gf_isom_get_chunk_count
      Src: /src/gpac/applications/mp4box/filedump.c:1845,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:1846,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/filedump.c:1847,1
    - Dst: gf_isom_get_constant_sample_size
      Src: /src/gpac/applications/mp4box/filedump.c:1853,1
    - Dst: gf_isom_enable_raw_pack
      Src: /src/gpac/applications/mp4box/filedump.c:1855,1
    - Dst: gf_isom_get_constant_sample_size
      Src: /src/gpac/applications/mp4box/filedump.c:1856,1
    - Dst: gf_isom_get_chunk_info
      Src: /src/gpac/applications/mp4box/filedump.c:1865,1
    - Dst: gf_isom_get_sample_size
      Src: /src/gpac/applications/mp4box/filedump.c:1880,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/filedump.c:1887,1
    - Dst: qsort
      Src: /src/gpac/applications/mp4box/filedump.c:1892,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1894,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1897,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1899,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/applications/mp4box/filedump.c:1904,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1922,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1923,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1924,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1926,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1928,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1929,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:1930,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1932,1
    - Dst: gf_isom_get_first_mdat_start
      Src: /src/gpac/applications/mp4box/filedump.c:1936,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/filedump.c:1945,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:1947,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:1949,1
    - Dst: gf_isom_get_unused_box_bytes
      Src: /src/gpac/applications/mp4box/filedump.c:1951,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1953,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1955,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 105
    argCount: 3
    argNames:
    - file
    - inName
    - is_final_name
    argTypes:
    - GF_ISOFile*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1956
      start: 1807
    functionDepth: 1
    functionLinenumber: 1807
    functionLinenumberEnd: 1956
    functionName: dump_isom_chunks
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_set_progress
    - strcpy
    - memset
    - gf_fopen
    - gf_isom_get_sample_info
    - M4_LOG
    - gf_isom_get_sample_size
    - fprintf
    - strcat
    - gf_isom_sample_del
    - gf_isom_get_track_count
    - gf_isom_get_first_mdat_start
    - gf_isom_get_constant_sample_size
    - gf_isom_enable_raw_pack
    - gf_isom_get_chunk_info
    - gf_malloc
    - gf_fclose
    - qsort
    - gf_isom_get_chunk_count
    - gf_isom_get_media_duration
    - gf_isom_get_media_timescale
    - gf_isom_get_unused_box_bytes
    linkageType: ''
    returnType: void
    signature: void dump_isom_chunks(GF_ISOFile *file, char *inName, Bool is_final_name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:1967,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/filedump.c:1968,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:1969,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:1971,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1978,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1979,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1980,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/filedump.c:1983,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/filedump.c:1984,1
    - Dst: gf_isom_dump_ismacryp_protection
      Src: /src/gpac/applications/mp4box/filedump.c:1986,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1988,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/filedump.c:1988,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:1989,1
    - Dst: gf_isom_dump_ismacryp_sample
      Src: /src/gpac/applications/mp4box/filedump.c:1990,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1992,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1994,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:1995,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 3
    argNames:
    - file
    - inName
    - is_final_name
    argTypes:
    - GF_ISOFile*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1996
      start: 1960
    functionDepth: 1
    functionLinenumber: 1960
    functionLinenumberEnd: 1996
    functionName: dump_isom_ismacryp
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_fclose
    - gf_isom_dump_ismacryp_sample
    - gf_isom_dump_ismacryp_protection
    - strcpy
    - gf_isom_get_media_subtype
    - gf_isom_get_sample_count
    - gf_isom_get_track_count
    - gf_fopen
    - gf_isom_get_track_id
    - M4_LOG
    - fprintf
    linkageType: ''
    returnType: void
    signature: void dump_isom_ismacryp(GF_ISOFile *file, char *inName, Bool is_final_name)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/filedump.c:2005,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2007,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/filedump.c:2011,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2016,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:2025,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2027,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2029,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:2031,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2033,1
    - Dst: gf_isom_text_dump
      Src: /src/gpac/applications/mp4box/filedump.c:2039,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:2040,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2043,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:2043,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2045,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 38
    argCount: 6
    argNames:
    - file
    - trackID
    - inName
    - is_final_name
    - is_convert
    - dump_type
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - char*
    - Bool
    - Bool
    - GF_TextDumpType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2047
      start: 1999
    functionDepth: 1
    functionLinenumber: 1999
    functionLinenumberEnd: 2047
    functionName: dump_isom_timed_text
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_isom_text_dump
    - strcpy
    - sprintf
    - gf_fopen
    - M4_LOG
    - gf_error_to_string
    - gf_isom_get_track_by_id
    - gf_isom_get_media_type
    - fprintf
    linkageType: ''
    returnType: void
    signature: void dump_isom_timed_text(GF_ISOFile *file, GF_ISOTrackID trackID,
      char *inName, Bool is_final_name, Bool is_convert, GF_TextDumpType dump_type)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:2061,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/filedump.c:2063,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/filedump.c:2065,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:2067,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2069,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2074,1
    - Dst: gf_isom_sdp_get
      Src: /src/gpac/applications/mp4box/filedump.c:2077,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2079,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2080,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/filedump.c:2083,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/filedump.c:2084,1
    - Dst: gf_isom_sdp_track_get
      Src: /src/gpac/applications/mp4box/filedump.c:2085,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2087,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2089,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:2090,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 31
    argCount: 3
    argNames:
    - file
    - inName
    - is_final_name
    argTypes:
    - GF_ISOFile*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2091
      start: 2053
    functionDepth: 1
    functionLinenumber: 2053
    functionLinenumberEnd: 2091
    functionName: dump_isom_sdp
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_fclose
    - strcpy
    - gf_isom_get_track_count
    - gf_isom_get_media_type
    - gf_isom_sdp_track_get
    - gf_fopen
    - M4_LOG
    - gf_isom_sdp_get
    - strchr
    - fprintf
    linkageType: ''
    returnType: void
    signature: void dump_isom_sdp(GF_ISOFile *file, char *inName, Bool is_final_name)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:2108,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/filedump.c:2110,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:2112,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2114,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2120,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2122,1
    - Dst: gf_isom_dump
      Src: /src/gpac/applications/mp4box/filedump.c:2124,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2126,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/filedump.c:2133,1
    - Dst: gf_isom_get_filename
      Src: /src/gpac/applications/mp4box/filedump.c:2133,1
    - Dst: gf_isom_open_segment
      Src: /src/gpac/applications/mp4box/filedump.c:2136,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/filedump.c:2139,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2140,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/filedump.c:2144,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/filedump.c:2145,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/filedump.c:2146,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/filedump.c:2148,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/applications/mp4box/filedump.c:2154,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2167,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:2170,1
    - Dst: gf_isom_dump_hint_sample
      Src: /src/gpac/applications/mp4box/filedump.c:2172,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2175,1
    - Dst: gf_isom_get_avc_svc_type
      Src: /src/gpac/applications/mp4box/filedump.c:2179,1
    - Dst: gf_isom_get_hevc_lhvc_type
      Src: /src/gpac/applications/mp4box/filedump.c:2180,1
    - Dst: gf_isom_get_vvc_type
      Src: /src/gpac/applications/mp4box/filedump.c:2181,1
    - Dst: dump_isom_nal_ex
      Src: /src/gpac/applications/mp4box/filedump.c:2183,1
    - Dst: dump_isom_obu
      Src: /src/gpac/applications/mp4box/filedump.c:2187,1
    - Dst: dump_qt_prores
      Src: /src/gpac/applications/mp4box/filedump.c:2194,1
    - Dst: gf_webvtt_dump_iso_track
      Src: /src/gpac/applications/mp4box/filedump.c:2201,1
    - Dst: gf_isom_text_dump
      Src: /src/gpac/applications/mp4box/filedump.c:2205,1
    - Dst: dump_isom_opus
      Src: /src/gpac/applications/mp4box/filedump.c:2210,1
    - Dst: gf_media_export
      Src: /src/gpac/applications/mp4box/filedump.c:2217,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/filedump.c:2221,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2223,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2224,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:2226,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/applications/mp4box/filedump.c:2230,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/applications/mp4box/filedump.c:2231,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2233,1
    - Dst: gf_xml_dom_get_line
      Src: /src/gpac/applications/mp4box/filedump.c:2233,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/applications/mp4box/filedump.c:2233,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/mp4box/filedump.c:2235,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2237,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 107
    argCount: 7
    argNames:
    - file
    - inName
    - is_final_name
    - do_track_dump
    - merge_vtt_cues
    - init_seg
    - skip_samples
    argTypes:
    - GF_ISOFile*
    - char*
    - Bool
    - Bool
    - Bool
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2241
      start: 2098
    functionDepth: 2
    functionLinenumber: 2098
    functionLinenumberEnd: 2241
    functionName: dump_isom_xml
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_isom_dump_hint_sample
    - gf_isom_delete
    - strcpy
    - gf_isom_get_sample_count
    - gf_isom_get_hevc_lhvc_type
    - memset
    - gf_fopen
    - gf_isom_get_track_id
    - M4_LOG
    - gf_isom_get_vvc_type
    - gf_isom_get_original_format_type
    - gf_xml_dom_get_line
    - fprintf
    - strcat
    - gf_isom_text_dump
    - gf_isom_get_media_subtype
    - gf_isom_dump
    - gf_isom_get_track_count
    - dump_qt_prores
    - gf_xml_dom_new
    - gf_media_export
    - gf_isom_get_media_type
    - gf_xml_dom_del
    - gf_xml_dom_parse
    - gf_isom_open_segment
    - gf_xml_dom_get_error
    - gf_webvtt_dump_iso_track
    - gf_isom_get_avc_svc_type
    - dump_isom_obu
    - gf_fclose
    - dump_isom_nal_ex
    - dump_isom_opus
    - gf_isom_open
    - gf_isom_get_filename
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_isom_xml(GF_ISOFile *file, char *inName, Bool is_final_name,
      Bool do_track_dump, Bool merge_vtt_cues, const char *init_seg, Bool skip_samples)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:2248,1
    - Dst: gf_format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:2251,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - dur
    - timescale
    - szDur
    argTypes:
    - u64
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2252
      start: 2245
    functionDepth: 1
    functionLinenumber: 2245
    functionLinenumberEnd: 2252
    functionName: format_duration
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 2
    functionsReached:
    - strcpy
    - gf_format_duration
    linkageType: ''
    returnType: char
    signature: char *format_duration(u64 dur, u32 timescale, char *szDur)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:2258,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2262,1
    - Dst: asctime
      Src: /src/gpac/applications/mp4box/filedump.c:2262,1
    - Dst: gf_gmtime
      Src: /src/gpac/applications/mp4box/filedump.c:2262,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - time
    - szTime
    argTypes:
    - u64
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2265
      start: 2254
    functionDepth: 1
    functionLinenumber: 2254
    functionLinenumberEnd: 2265
    functionName: format_date
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 2
    functionsReached:
    - strcpy
    - asctime
    - sprintf
    - gf_gmtime
    linkageType: ''
    returnType: char
    signature: char *format_date(u64 time, char *szTime)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_udta_count
      Src: /src/gpac/applications/mp4box/filedump.c:2271,1
    - Dst: gf_isom_get_udta_type
      Src: /src/gpac/applications/mp4box/filedump.c:2278,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2289,1
    - Dst: gf_isom_get_udta_type
      Src: /src/gpac/applications/mp4box/filedump.c:2294,1
    - Dst: gf_isom_get_user_data_count
      Src: /src/gpac/applications/mp4box/filedump.c:2296,1
    - Dst: gf_itags_find_by_itag
      Src: /src/gpac/applications/mp4box/filedump.c:2299,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2301,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2301,1
    - Dst: gf_itags_get_name
      Src: /src/gpac/applications/mp4box/filedump.c:2301,1
    - Dst: gf_isom_get_user_data
      Src: /src/gpac/applications/mp4box/filedump.c:2305,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2307,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/applications/mp4box/filedump.c:2320,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2324,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2327,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:2329,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2332,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 51
    argCount: 3
    argNames:
    - file
    - track_number
    - has_meta_tags
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2333
      start: 2267
    functionDepth: 1
    functionLinenumber: 2267
    functionLinenumberEnd: 2333
    functionName: print_udta
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_4cc_to_str
    - gf_itags_get_name
    - gf_isom_get_udta_count
    - gf_itags_find_by_itag
    - gf_utf8_is_legal
    - gf_isom_get_user_data
    - gf_isom_get_udta_type
    - fprintf
    - gf_isom_get_user_data_count
    linkageType: ''
    returnType: void
    signature: void print_udta(GF_ISOFile *file, u32 track_number, Bool has_meta_tags)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/applications/mp4box/filedump.c:2343,1
    - Dst: gf_isom_get_user_data_count
      Src: /src/gpac/applications/mp4box/filedump.c:2344,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2346,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2346,1
    - Dst: gf_isom_get_user_data
      Src: /src/gpac/applications/mp4box/filedump.c:2352,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2354,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2354,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:2354,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:2360,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2362,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2362,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:2364,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:2366,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2367,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/filedump.c:2373,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:2374,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:2375,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2377,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 5
    argNames:
    - file
    - inName
    - is_final_name
    - dump_udta_type
    - dump_udta_track
    argTypes:
    - GF_ISOFile*
    - char*
    - Bool
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2381
      start: 2335
    functionDepth: 1
    functionLinenumber: 2335
    functionLinenumberEnd: 2381
    functionName: dump_isom_udta
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_4cc_to_str
    - gf_fclose
    - strcpy
    - gf_isom_get_user_data
    - sprintf
    - gf_fwrite
    - memset
    - gf_fopen
    - M4_LOG
    - gf_error_to_string
    - gf_isom_get_user_data_count
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_isom_udta(GF_ISOFile *file, char *inName, Bool is_final_name,
      u32 dump_udta_type, u32 dump_udta_track)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_chapter_count
      Src: /src/gpac/applications/mp4box/filedump.c:2391,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/filedump.c:2398,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/applications/mp4box/filedump.c:2399,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/applications/mp4box/filedump.c:2400,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2405,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2409,1
    - Dst: dump_isom_timed_text
      Src: /src/gpac/applications/mp4box/filedump.c:2410,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/filedump.c:2410,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:2416,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/filedump.c:2419,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/filedump.c:2421,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/filedump.c:2423,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:2426,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2433,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2434,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2435,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2436,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2437,1
    - Dst: gf_isom_get_chapter
      Src: /src/gpac/applications/mp4box/filedump.c:2444,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2446,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:2446,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2447,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2450,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2452,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:2453,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2457,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:2459,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 67
    argCount: 4
    argNames:
    - file
    - inName
    - is_final_name
    - dump_mode
    argTypes:
    - GF_ISOFile*
    - char*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2462
      start: 2383
    functionDepth: 2
    functionLinenumber: 2383
    functionLinenumberEnd: 2462
    functionName: dump_isom_chapters
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_fclose
    - gf_isom_get_chapter
    - strcpy
    - format_duration
    - gf_isom_get_reference
    - gf_isom_get_reference_count
    - gf_isom_get_track_count
    - gf_isom_get_track_id
    - gf_fopen
    - M4_LOG
    - dump_isom_timed_text
    - gf_isom_get_chapter_count
    - fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_isom_chapters(GF_ISOFile *file, char *inName, Bool is_final_name,
      u32 dump_mode)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2478,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2480,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2481,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2482,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2488,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 3
    argNames:
    - key_info
    - key_info_size
    - is_protected
    argTypes:
    - u8*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2490
      start: 2465
    functionDepth: 0
    functionLinenumber: 2465
    functionLinenumberEnd: 2490
    functionName: dump_key_info
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void dump_key_info(const u8 *key_info, u32 key_info_size, Bool is_protected)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta_type
      Src: /src/gpac/applications/mp4box/filedump.c:2496,1
    - Dst: gf_isom_get_meta_item_count
      Src: /src/gpac/applications/mp4box/filedump.c:2504,1
    - Dst: gf_isom_get_meta_primary_item_id
      Src: /src/gpac/applications/mp4box/filedump.c:2507,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2508,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2508,1
    - Dst: gf_isom_has_meta_xml
      Src: /src/gpac/applications/mp4box/filedump.c:2509,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2511,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2514,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2518,1
    - Dst: gf_isom_get_meta_item_info
      Src: /src/gpac/applications/mp4box/filedump.c:2525,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2527,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:2527,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2530,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2530,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2531,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2532,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2533,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2534,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/applications/mp4box/filedump.c:2538,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2540,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2545,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2548,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2551,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2558,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2559,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2562,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2564,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2567,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2568,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2569,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2570,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2571,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2573,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2582,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2582,1
    - Dst: gf_isom_extract_meta_item_get_cenc_info
      Src: /src/gpac/applications/mp4box/filedump.c:2584,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2586,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2587,1
    - Dst: dump_key_info
      Src: /src/gpac/applications/mp4box/filedump.c:2588,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2590,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2591,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2592,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2594,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 94
    argCount: 4
    argNames:
    - file
    - root_meta
    - tk_num
    - name
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2595
      start: 2492
    functionDepth: 1
    functionLinenumber: 2492
    functionLinenumberEnd: 2595
    functionName: DumpMetaItem
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_isom_has_meta_xml
    - gf_4cc_to_str
    - gf_isom_get_meta_primary_item_id
    - gf_isom_get_meta_image_props
    - gf_isom_get_meta_type
    - gf_isom_get_meta_item_count
    - gf_error_to_string
    - gf_isom_get_meta_item_info
    - dump_key_info
    - gf_isom_extract_meta_item_get_cenc_info
    - fprintf
    linkageType: ''
    returnType: void
    signature: void DumpMetaItem(GF_ISOFile *file, Bool root_meta, u32 tk_num, char
      *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:2602,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:2603,1
    - Dst: gf_sha1_csum
      Src: /src/gpac/applications/mp4box/filedump.c:2604,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2605,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2606,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2607,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - xps_array
    - szName
    argTypes:
    - GF_List*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2609
      start: 2598
    functionDepth: 1
    functionLinenumber: 2598
    functionLinenumberEnd: 2609
    functionName: print_config_hash
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - fprintf
    - gf_sha1_csum
    linkageType: ''
    returnType: void
    signature: void print_config_hash(GF_List *xps_array, char *szName)
  - BBCount: 205
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/filedump.c:2789,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/applications/mp4box/filedump.c:2791,1
    - Dst: gf_pixel_fmt_from_qt_type
      Src: /src/gpac/applications/mp4box/filedump.c:2793,1
    - Dst: gf_codec_id_from_isobmf
      Src: /src/gpac/applications/mp4box/filedump.c:2794,1
    - Dst: gf_isom_get_mpeg4_subtype
      Src: /src/gpac/applications/mp4box/filedump.c:2798,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2800,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2801,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2801,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2801,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/filedump.c:2803,1
    - Dst: gf_isom_get_generic_sample_description
      Src: /src/gpac/applications/mp4box/filedump.c:2806,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/mp4box/filedump.c:2809,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/applications/mp4box/filedump.c:2810,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/applications/mp4box/filedump.c:2811,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/applications/mp4box/filedump.c:2812,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/applications/mp4box/filedump.c:2813,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/applications/mp4box/filedump.c:2814,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/applications/mp4box/filedump.c:2815,1
    - Dst: gf_bs_available
      Src: /src/gpac/applications/mp4box/filedump.c:2816,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/filedump.c:2817,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:2819,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:2820,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2822,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2822,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2822,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2822,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:2823,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2825,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2825,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2825,1
    - Dst: gf_isom_is_self_contained
      Src: /src/gpac/applications/mp4box/filedump.c:2829,1
    - Dst: gf_isom_get_data_reference
      Src: /src/gpac/applications/mp4box/filedump.c:2831,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2832,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/filedump.c:2835,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:2839,1
    - Dst: gf_isom_get_visual_bit_depth
      Src: /src/gpac/applications/mp4box/filedump.c:2840,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2841,1
    - Dst: gf_isom_dovi_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:2843,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2845,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:2849,1
    - Dst: gf_isom_get_audio_info
      Src: /src/gpac/applications/mp4box/filedump.c:2853,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/applications/mp4box/filedump.c:2854,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/applications/mp4box/filedump.c:2856,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/applications/mp4box/filedump.c:2879,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2881,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/filedump.c:2882,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/applications/mp4box/filedump.c:2884,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2887,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2890,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:2906,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2907,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2909,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/applications/mp4box/filedump.c:2913,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2914,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2917,1
    - Dst: gf_m4v_get_profile_name
      Src: /src/gpac/applications/mp4box/filedump.c:2917,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/applications/mp4box/filedump.c:2920,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2921,1
    - Dst: gf_isom_get_avc_svc_type
      Src: /src/gpac/applications/mp4box/filedump.c:2925,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:2928,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2929,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2930,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:2932,1
    - Dst: gf_isom_svc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:2933,1
    - Dst: gf_isom_mvc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:2934,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2936,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2938,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:2938,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:2938,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2939,1
    - Dst: gf_avc_get_profile_name
      Src: /src/gpac/applications/mp4box/filedump.c:2939,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2940,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:2943,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:2945,1
    - Dst: gf_avc_get_sps_info
      Src: /src/gpac/applications/mp4box/filedump.c:2946,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/applications/mp4box/filedump.c:2949,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2950,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2957,1
    - Dst: gf_avc_hevc_get_chroma_format_name
      Src: /src/gpac/applications/mp4box/filedump.c:2957,1
    - Dst: print_config_hash
      Src: /src/gpac/applications/mp4box/filedump.c:2960,1
    - Dst: print_config_hash
      Src: /src/gpac/applications/mp4box/filedump.c:2961,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:2963,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2966,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:2966,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:2966,1
    - Dst: gf_avc_get_profile_name
      Src: /src/gpac/applications/mp4box/filedump.c:2966,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2967,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:2969,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:2970,1
    - Dst: gf_avc_get_sps_info
      Src: /src/gpac/applications/mp4box/filedump.c:2974,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2975,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/applications/mp4box/filedump.c:2978,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2979,1
    - Dst: print_config_hash
      Src: /src/gpac/applications/mp4box/filedump.c:2984,1
    - Dst: print_config_hash
      Src: /src/gpac/applications/mp4box/filedump.c:2985,1
    - Dst: print_config_hash
      Src: /src/gpac/applications/mp4box/filedump.c:2986,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:2988,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2992,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:2992,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:2992,1
    - Dst: gf_avc_get_profile_name
      Src: /src/gpac/applications/mp4box/filedump.c:2992,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2993,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:2995,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:2996,1
    - Dst: gf_avc_get_sps_info
      Src: /src/gpac/applications/mp4box/filedump.c:3000,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3001,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/applications/mp4box/filedump.c:3004,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3005,1
    - Dst: print_config_hash
      Src: /src/gpac/applications/mp4box/filedump.c:3010,1
    - Dst: print_config_hash
      Src: /src/gpac/applications/mp4box/filedump.c:3011,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:3012,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/mp4box/filedump.c:3022,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3027,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3028,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3029,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:3030,1
    - Dst: gf_isom_lhvc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:3031,1
    - Dst: gf_isom_get_tile_info
      Src: /src/gpac/applications/mp4box/filedump.c:3038,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3039,1
    - Dst: gf_isom_get_sample_group_info
      Src: /src/gpac/applications/mp4box/filedump.c:3040,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3041,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3043,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:3046,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/applications/mp4box/filedump.c:3049,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3050,1
    - Dst: dump_hevc_track_info
      Src: /src/gpac/applications/mp4box/filedump.c:3053,1
    - Dst: defined
      Src: /src/gpac/applications/mp4box/filedump.c:3054,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:3058,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3059,1
    - Dst: dump_hevc_track_info
      Src: /src/gpac/applications/mp4box/filedump.c:3062,1
    - Dst: defined
      Src: /src/gpac/applications/mp4box/filedump.c:3063,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:3067,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:3070,1
    - Dst: gf_isom_get_oinf_info
      Src: /src/gpac/applications/mp4box/filedump.c:3072,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3073,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3074,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3077,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3080,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3083,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3086,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3089,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:3089,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3090,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:3090,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:3090,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3097,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3098,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/filedump.c:3102,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3106,1
    - Dst: gf_codecid_from_oti
      Src: /src/gpac/applications/mp4box/filedump.c:3110,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3112,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3113,1
    - Dst: gf_codecid_name
      Src: /src/gpac/applications/mp4box/filedump.c:3113,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3117,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3118,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3119,1
    - Dst: gf_isom_get_rvc_config
      Src: /src/gpac/applications/mp4box/filedump.c:3121,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3122,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/applications/mp4box/filedump.c:3143,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3144,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:3146,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3160,1
    - Dst: gf_m4a_object_type_name
      Src: /src/gpac/applications/mp4box/filedump.c:3160,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3161,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3162,1
    - Dst: gf_m4a_object_type_name
      Src: /src/gpac/applications/mp4box/filedump.c:3162,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3163,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3164,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3167,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3174,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/filedump.c:3177,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/filedump.c:3180,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3181,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3182,1
    - Dst: gf_mp3_version_name
      Src: /src/gpac/applications/mp4box/filedump.c:3183,1
    - Dst: gf_mp3_num_channels
      Src: /src/gpac/applications/mp4box/filedump.c:3184,1
    - Dst: gf_mp3_sampling_rate
      Src: /src/gpac/applications/mp4box/filedump.c:3185,1
    - Dst: gf_mp3_layer
      Src: /src/gpac/applications/mp4box/filedump.c:3186,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:3189,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:3191,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:3191,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/filedump.c:3191,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3194,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3199,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3202,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3205,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/filedump.c:3210,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3211,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3212,1
    - Dst: gf_codecid_from_oti
      Src: /src/gpac/applications/mp4box/filedump.c:3216,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3218,1
    - Dst: gf_codecid_name
      Src: /src/gpac/applications/mp4box/filedump.c:3218,1
    - Dst: gf_odf_get_bifs_config
      Src: /src/gpac/applications/mp4box/filedump.c:3225,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3227,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3229,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/filedump.c:3231,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3233,1
    - Dst: gf_stream_type_afx_name
      Src: /src/gpac/applications/mp4box/filedump.c:3237,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3238,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3240,1
    - Dst: gf_odf_get_laser_config
      Src: /src/gpac/applications/mp4box/filedump.c:3243,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3244,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3246,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3248,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:3250,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3258,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3260,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3263,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3265,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3267,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3269,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3270,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/filedump.c:3272,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3277,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3278,1
    - Dst: gf_isom_av1_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:3280,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3282,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3284,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3285,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3286,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3289,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:3291,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:3294,1
    - Dst: gf_sha1_csum
      Src: /src/gpac/applications/mp4box/filedump.c:3295,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3296,1
    - Dst: gf_av1_get_obu_name
      Src: /src/gpac/applications/mp4box/filedump.c:3296,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3297,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3298,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:3300,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3304,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3305,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3308,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3309,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3311,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3313,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3315,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3317,1
    - Dst: gf_isom_ac3_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:3325,1
    - Dst: gf_ac3_get_total_channels
      Src: /src/gpac/applications/mp4box/filedump.c:3327,1
    - Dst: gf_eac3_get_chan_loc_count
      Src: /src/gpac/applications/mp4box/filedump.c:3329,1
    - Dst: gf_ac3_get_bitrate
      Src: /src/gpac/applications/mp4box/filedump.c:3332,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:3338,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3341,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3343,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3345,1
    - Dst: gf_isom_ac4_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:3349,1
    - Dst: gf_odf_ac4_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:3353,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3356,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3358,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3362,1
    - Dst: gf_isom_get_dims_description
      Src: /src/gpac/applications/mp4box/filedump.c:3364,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3365,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3366,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3367,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3368,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3369,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3370,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/applications/mp4box/filedump.c:3373,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3375,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/applications/mp4box/filedump.c:3377,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3378,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3379,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/filedump.c:3379,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3381,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3383,1
    - Dst: gf_isom_get_payt_count
      Src: /src/gpac/applications/mp4box/filedump.c:3386,1
    - Dst: gf_isom_get_payt_info
      Src: /src/gpac/applications/mp4box/filedump.c:3389,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3390,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3395,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/applications/mp4box/filedump.c:3407,1
    - Dst: gf_isom_stxt_get_description
      Src: /src/gpac/applications/mp4box/filedump.c:3409,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3410,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3411,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3413,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3416,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/filedump.c:3416,1
    - Dst: gf_isom_stxt_get_description
      Src: /src/gpac/applications/mp4box/filedump.c:3419,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3420,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3421,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3423,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3426,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/filedump.c:3426,1
    - Dst: gf_isom_xml_subtitle_get_description
      Src: /src/gpac/applications/mp4box/filedump.c:3429,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3430,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3431,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3433,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3436,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3439,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3442,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3445,1
    - Dst: gf_isom_get_text_description
      Src: /src/gpac/applications/mp4box/filedump.c:3449,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3452,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3454,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/filedump.c:3455,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3458,1
    - Dst: gf_isom_stxt_get_description
      Src: /src/gpac/applications/mp4box/filedump.c:3464,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3465,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3467,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3470,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/filedump.c:3470,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3472,1
    - Dst: gf_isom_get_xml_metadata_description
      Src: /src/gpac/applications/mp4box/filedump.c:3476,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3477,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3479,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3482,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3484,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3486,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/mp4box/filedump.c:3493,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3497,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3498,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3499,1
    - Dst: gf_isom_vvc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:3500,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:3503,1
    - Dst: dump_vvc_track_info
      Src: /src/gpac/applications/mp4box/filedump.c:3505,1
    - Dst: defined
      Src: /src/gpac/applications/mp4box/filedump.c:3506,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:3510,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:3513,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3525,1
    - Dst: gf_media_map_esd
      Src: /src/gpac/applications/mp4box/filedump.c:3527,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/filedump.c:3533,1
    - Dst: gf_mpegh_get_mhas_pl
      Src: /src/gpac/applications/mp4box/filedump.c:3536,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3538,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3540,1
    - Dst: gf_audio_fmt_get_layout_name
      Src: /src/gpac/applications/mp4box/filedump.c:3540,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3541,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:3543,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3549,1
    - Dst: gf_audio_fmt_get_layout_name_from_cicp
      Src: /src/gpac/applications/mp4box/filedump.c:3550,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:3555,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/filedump.c:3557,1
    - Dst: gf_isom_get_mpegh_compatible_profiles
      Src: /src/gpac/applications/mp4box/filedump.c:3558,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3561,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3562,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3564,1
    - Dst: gf_isom_truehd_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:3567,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3568,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3570,1
    - Dst: gf_isom_get_lpcm_config
      Src: /src/gpac/applications/mp4box/filedump.c:3574,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3575,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3577,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/filedump.c:3580,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3582,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3583,1
    - Dst: gf_codecid_name
      Src: /src/gpac/applications/mp4box/filedump.c:3583,1
    - Dst: gf_isom_get_audio_info
      Src: /src/gpac/applications/mp4box/filedump.c:3586,1
    - Dst: gf_isom_get_pcm_config
      Src: /src/gpac/applications/mp4box/filedump.c:3587,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3588,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3590,1
    - Dst: gf_codecid_name
      Src: /src/gpac/applications/mp4box/filedump.c:3590,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3592,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3594,1
    - Dst: gf_codecid_name
      Src: /src/gpac/applications/mp4box/filedump.c:3594,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3598,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3599,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/applications/mp4box/filedump.c:3599,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/filedump.c:3602,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3603,1
    - Dst: gf_isom_get_tmcd_config
      Src: /src/gpac/applications/mp4box/filedump.c:3607,1
    - Dst: gf_inspect_format_timecode
      Src: /src/gpac/applications/mp4box/filedump.c:3611,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3612,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:3615,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3618,1
    - Dst: gf_isom_get_generic_sample_description
      Src: /src/gpac/applications/mp4box/filedump.c:3622,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/filedump.c:3624,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3625,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3629,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3631,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3634,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:3634,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3637,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:3638,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:3640,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3642,1
    - Dst: gf_isom_is_media_encrypted
      Src: /src/gpac/applications/mp4box/filedump.c:3648,1
    - Dst: gf_isom_is_ismacryp_media
      Src: /src/gpac/applications/mp4box/filedump.c:3654,1
    - Dst: gf_isom_get_ismacryp_info
      Src: /src/gpac/applications/mp4box/filedump.c:3655,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3656,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:3656,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3657,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/filedump.c:3659,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3659,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3660,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3662,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3663,1
    - Dst: gf_isom_is_omadrm_media
      Src: /src/gpac/applications/mp4box/filedump.c:3664,1
    - Dst: gf_isom_get_omadrm_info
      Src: /src/gpac/applications/mp4box/filedump.c:3668,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3669,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:3669,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3670,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3671,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3675,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3680,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3685,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3687,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3688,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3689,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3690,1
    - Dst: gf_isom_is_cenc_media
      Src: /src/gpac/applications/mp4box/filedump.c:3691,1
    - Dst: gf_isom_get_cenc_info
      Src: /src/gpac/applications/mp4box/filedump.c:3697,1
    - Dst: gf_isom_cenc_get_default_info
      Src: /src/gpac/applications/mp4box/filedump.c:3699,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3701,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:3701,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3704,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3706,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3708,1
    - Dst: dump_key_info
      Src: /src/gpac/applications/mp4box/filedump.c:3709,1
    - Dst: gf_isom_is_adobe_protection_media
      Src: /src/gpac/applications/mp4box/filedump.c:3711,1
    - Dst: gf_isom_get_adobe_protection_info
      Src: /src/gpac/applications/mp4box/filedump.c:3712,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3713,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:3713,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3715,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:3715,1
    - Dst: gf_isom_is_media_encrypted
      Src: /src/gpac/applications/mp4box/filedump.c:3715,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3717,1
    - Dst: gf_media_get_rfc_6381_codec_name
      Src: /src/gpac/applications/mp4box/filedump.c:3720,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3721,1
    CyclomaticComplexity: 265
    EdgeCount: 265
    ICount: 749
    argCount: 7
    argNames:
    - file
    - trackNum
    - full_dump
    - dump_m4sys
    - mtype
    - stsd_idx
    - is_od_track
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    - Bool
    - u32
    - u32
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3723
      start: 2783
    functionDepth: 2
    functionLinenumber: 2783
    functionLinenumberEnd: 3723
    functionName: DumpStsdInfo
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_avc_cfg_del
    - gf_mp3_sampling_rate
    - gf_isom_get_xml_metadata_description
    - gf_isom_vvc_config_get
    - gf_isom_get_tile_info
    - gf_isom_set_nalu_extract_mode
    - gf_stream_type_name
    - gf_isom_mvc_config_get
    - gf_odf_get_laser_config
    - gf_audio_fmt_get_layout_name_from_cicp
    - gf_ac3_get_bitrate
    - gf_isom_svc_config_get
    - gf_4cc_to_str
    - gf_bs_read_utf8
    - gf_list_get
    - dump_vvc_track_info
    - gf_codecid_from_oti
    - gf_isom_get_media_subtype
    - gf_isom_is_omadrm_media
    - gf_isom_get_oinf_info
    - gf_isom_stxt_get_description
    - gf_isom_get_audio_info
    - gf_isom_last_error
    - gf_eac3_get_chan_loc_count
    - gf_isom_is_self_contained
    - gf_isom_cenc_get_default_info
    - gf_odf_dovi_cfg_del
    - gf_mp3_layer
    - gf_ac3_get_total_channels
    - strnicmp
    - gf_isom_ac3_config_get
    - gf_isom_truehd_config_get
    - dump_key_info
    - gf_isom_ac4_config_get
    - gf_avc_hevc_get_chroma_format_name
    - gf_isom_avc_config_get
    - gf_stream_type_afx_name
    - gf_isom_av1_config_get
    - GF_4CC
    - gf_isom_get_visual_info
    - gf_isom_get_generic_sample_description
    - gf_av1_get_obu_name
    - gf_odf_vvc_cfg_del
    - gf_bs_available
    - fprintf
    - gf_bs_read_u32
    - gf_media_map_esd
    - gf_inspect_format_timecode
    - gf_isom_get_data_reference
    - gf_isom_get_visual_bit_depth
    - gf_m4v_get_profile_name
    - gf_m4a_object_type_name
    - gf_odf_get_bifs_config
    - gf_isom_get_text_description
    - gf_m4a_get_config
    - gf_isom_get_adobe_protection_info
    - gf_isom_get_esd
    - gf_isom_get_dims_description
    - print_config_hash
    - gf_odf_hevc_cfg_del
    - gf_isom_is_ismacryp_media
    - gf_isom_get_mpeg4_subtype
    - gf_media_get_rfc_6381_codec_name
    - dump_hevc_track_info
    - gf_codec_id_from_isobmf
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_mpegh_get_mhas_pl
    - gf_list_count
    - gf_odf_ac4_cfg_del
    - gf_isom_get_track_id
    - gf_isom_get_pcm_config
    - gf_isom_get_original_format_type
    - gf_isom_hevc_config_get
    - gf_isom_dovi_config_get
    - gf_isom_get_payt_count
    - gf_isom_get_lpcm_config
    - gf_isom_get_sample
    - gf_isom_get_payt_info
    - gf_pixel_fmt_name
    - gf_isom_is_video_handler_type
    - gf_isom_get_ismacryp_info
    - gf_isom_get_sample_group_info
    - gf_error_to_string
    - gf_isom_is_adobe_protection_media
    - strlen
    - gf_odf_desc_del
    - gf_sha1_csum
    - M4_LOG
    - gf_odf_av1_cfg_del
    - gf_isom_sample_del
    - gf_isom_get_reference
    - gf_isom_get_omadrm_info
    - gf_avc_get_sps_info
    - defined
    - gf_m4v_get_config
    - gf_isom_xml_subtitle_get_description
    - gf_isom_get_mpegh_compatible_profiles
    - gf_audio_fmt_get_layout_name
    - gf_pixel_fmt_from_qt_type
    - gf_isom_get_cenc_info
    - gf_isom_get_tmcd_config
    - gf_isom_is_media_encrypted
    - gf_isom_get_track_layout_info
    - gf_isom_get_avc_svc_type
    - gf_isom_is_cenc_media
    - gf_mp3_num_channels
    - gf_isom_lhvc_config_get
    - gf_mp3_version_name
    - gf_isom_get_rvc_config
    - gf_avc_get_profile_name
    - gf_isom_get_reference_count
    - gf_bs_del
    - gf_codecid_name
    linkageType: ''
    returnType: void
    signature: void DumpStsdInfo(GF_ISOFile *file, u32 trackNum, Bool full_dump, Bool
      dump_m4sys, u32 mtype, u32 stsd_idx, Bool *is_od_track)
  - BBCount: 58
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/filedump.c:3740,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/filedump.c:3743,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:3746,1
    - Dst: gf_isom_is_external_track
      Src: /src/gpac/applications/mp4box/filedump.c:3750,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3752,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3753,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:3753,1
    - Dst: gf_isom_get_track_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3755,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:3756,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3758,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3758,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3760,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:3762,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3763,1
    - Dst: gf_isom_get_media_original_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3765,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3766,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3767,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3767,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3769,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3769,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3770,1
    - Dst: gf_isom_check_data_reference
      Src: /src/gpac/applications/mp4box/filedump.c:3772,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:3773,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/applications/mp4box/filedump.c:3777,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3779,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3779,1
    - Dst: gf_isom_get_track_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3779,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:3779,1
    - Dst: gf_isom_get_composition_offset_shift
      Src: /src/gpac/applications/mp4box/filedump.c:3781,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3783,1
    - Dst: gf_isom_is_track_in_root_od
      Src: /src/gpac/applications/mp4box/filedump.c:3785,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3785,1
    - Dst: gf_isom_get_track_flags
      Src: /src/gpac/applications/mp4box/filedump.c:3787,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3788,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3789,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3790,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3791,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3792,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3793,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3794,1
    - Dst: gf_isom_get_media_language
      Src: /src/gpac/applications/mp4box/filedump.c:3796,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/filedump.c:3797,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3798,1
    - Dst: GetLanguage
      Src: /src/gpac/applications/mp4box/filedump.c:3798,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:3799,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/filedump.c:3805,1
    - Dst: gf_isom_get_mpeg4_subtype
      Src: /src/gpac/applications/mp4box/filedump.c:3806,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/filedump.c:3807,1
    - Dst: gf_isom_is_track_referenced
      Src: /src/gpac/applications/mp4box/filedump.c:3811,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/filedump.c:3812,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3812,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3813,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3817,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:3817,1
    - Dst: gf_isom_get_constant_sample_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3818,1
    - Dst: gf_media_get_reduced_frame_rate
      Src: /src/gpac/applications/mp4box/filedump.c:3821,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3823,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3825,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3827,1
    - Dst: gf_isom_enum_track_group
      Src: /src/gpac/applications/mp4box/filedump.c:3833,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3834,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3835,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:3835,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3837,1
    - Dst: gf_isom_get_track_kind_count
      Src: /src/gpac/applications/mp4box/filedump.c:3840,1
    - Dst: gf_isom_get_track_kind
      Src: /src/gpac/applications/mp4box/filedump.c:3843,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3844,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:3845,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:3846,1
    - Dst: gf_isom_is_track_fragmented
      Src: /src/gpac/applications/mp4box/filedump.c:3850,1
    - Dst: gf_isom_segment_get_track_fragment_count
      Src: /src/gpac/applications/mp4box/filedump.c:3857,1
    - Dst: gf_isom_segment_get_track_fragment_decode_time
      Src: /src/gpac/applications/mp4box/filedump.c:3859,1
    - Dst: gf_isom_get_fragmented_samples_info
      Src: /src/gpac/applications/mp4box/filedump.c:3863,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3864,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3864,1
    - Dst: gf_isom_get_fragment_defaults
      Src: /src/gpac/applications/mp4box/filedump.c:3866,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3868,1
    - Dst: gf_isom_get_handler_name
      Src: /src/gpac/applications/mp4box/filedump.c:3877,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3878,1
    - Dst: gf_isom_enum_track_references
      Src: /src/gpac/applications/mp4box/filedump.c:3884,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3887,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3889,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3891,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:3891,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3893,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3897,1
    - Dst: print_udta
      Src: /src/gpac/applications/mp4box/filedump.c:3900,1
    - Dst: DumpMetaItem
      Src: /src/gpac/applications/mp4box/filedump.c:3902,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/filedump.c:3904,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/applications/mp4box/filedump.c:3908,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3909,1
    - Dst: gf_isom_get_track_switch_group_count
      Src: /src/gpac/applications/mp4box/filedump.c:3912,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3914,1
    - Dst: gf_isom_get_track_switch_parameter
      Src: /src/gpac/applications/mp4box/filedump.c:3917,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3919,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3922,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3924,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3927,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3928,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:3928,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3930,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/applications/mp4box/filedump.c:3938,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3940,1
    - Dst: gf_isom_get_filename
      Src: /src/gpac/applications/mp4box/filedump.c:3940,1
    - Dst: DumpStsdInfo
      Src: /src/gpac/applications/mp4box/filedump.c:3944,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3946,1
    - Dst: gf_isom_has_sync_points
      Src: /src/gpac/applications/mp4box/filedump.c:3948,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3950,1
    - Dst: gf_isom_get_sync_point_count
      Src: /src/gpac/applications/mp4box/filedump.c:3954,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3956,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3958,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:3958,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3963,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3966,1
    - Dst: gf_isom_get_max_sample_delta
      Src: /src/gpac/applications/mp4box/filedump.c:3966,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3969,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:3976,1
    - Dst: gf_isom_get_constant_sample_size
      Src: /src/gpac/applications/mp4box/filedump.c:3977,1
    - Dst: gf_isom_get_constant_sample_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3978,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:3979,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/filedump.c:3988,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/applications/mp4box/filedump.c:3990,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:3993,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:4007,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4010,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4012,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4016,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:4016,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4018,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4030,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4032,1
    - Dst: gf_isom_get_chunks_infos
      Src: /src/gpac/applications/mp4box/filedump.c:4037,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4038,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4039,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4041,1
    - Dst: gf_isom_get_chapter_count
      Src: /src/gpac/applications/mp4box/filedump.c:4043,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4047,1
    - Dst: gf_isom_get_chapter
      Src: /src/gpac/applications/mp4box/filedump.c:4049,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4050,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:4050,1
    CyclomaticComplexity: 78
    EdgeCount: 78
    ICount: 256
    argCount: 5
    argNames:
    - file
    - trackID
    - full_dump
    - is_track_num
    - dump_m4sys
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4053
      start: 3725
    functionDepth: 3
    functionLinenumber: 3725
    functionLinenumberEnd: 4053
    functionName: DumpTrackInfo
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_get_chunks_infos
    - gf_isom_get_timescale
    - gf_isom_get_sample_count
    - gf_isom_get_track_id
    - gf_isom_get_sample_info
    - M4_LOG
    - gf_isom_get_track_by_id
    - fprintf
    - gf_4cc_to_str
    - gf_isom_is_external_track
    - gf_isom_get_max_sample_delta
    - gf_isom_get_track_duration
    - gf_isom_sample_del
    - gf_isom_get_media_subtype
    - gf_isom_get_media_original_duration
    - gf_isom_segment_get_track_fragment_count
    - gf_isom_is_track_in_root_od
    - format_duration
    - gf_isom_get_media_type
    - gf_isom_is_track_fragmented
    - gf_isom_segment_get_track_fragment_decode_time
    - gf_isom_get_track_switch_group_count
    - gf_isom_get_constant_sample_duration
    - gf_isom_get_sample
    - gf_isom_has_sync_points
    - gf_isom_get_chapter_count
    - gf_isom_get_composition_offset_shift
    - gf_isom_get_chapter
    - gf_isom_get_constant_sample_size
    - gf_isom_get_media_language
    - gf_isom_is_video_handler_type
    - gf_isom_get_track_switch_parameter
    - gf_media_get_reduced_frame_rate
    - gf_isom_get_track_layout_info
    - DumpStsdInfo
    - gf_isom_get_edits_count
    - gf_isom_get_sync_point_count
    - gf_isom_is_track_referenced
    - DumpMetaItem
    - gf_isom_enum_track_references
    - gf_isom_get_track_flags
    - gf_isom_get_track_kind_count
    - gf_isom_enum_track_group
    - gf_isom_get_handler_name
    - gf_isom_get_fragmented_samples_info
    - GetLanguage
    - gf_isom_get_track_kind
    - gf_isom_get_media_duration
    - gf_isom_get_fragment_defaults
    - gf_isom_get_media_timescale
    - strcmp
    - gf_isom_check_data_reference
    - print_udta
    - gf_isom_get_mpeg4_subtype
    - gf_isom_get_filename
    - gf_isom_get_sample_description_count
    linkageType: ''
    returnType: void
    signature: void DumpTrackInfo(GF_ISOFile *file, GF_ISOTrackID trackID, Bool full_dump,
      Bool is_track_num, Bool dump_m4sys)
  - BBCount: 70
    BranchProfiles: []
    Callsites:
    - Dst: DumpMetaItem
      Src: /src/gpac/applications/mp4box/filedump.c:4065,1
    - Dst: gf_isom_has_movie
      Src: /src/gpac/applications/mp4box/filedump.c:4066,1
    - Dst: gf_isom_has_segment
      Src: /src/gpac/applications/mp4box/filedump.c:4068,1
    - Dst: gf_isom_segment_get_fragment_count
      Src: /src/gpac/applications/mp4box/filedump.c:4069,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4070,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:4070,1
    - Dst: gf_isom_segment_get_track_fragment_count
      Src: /src/gpac/applications/mp4box/filedump.c:4072,1
    - Dst: gf_isom_segment_get_fragment_size
      Src: /src/gpac/applications/mp4box/filedump.c:4073,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4074,1
    - Dst: gf_isom_segment_get_track_fragment_decode_time
      Src: /src/gpac/applications/mp4box/filedump.c:4078,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4079,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4081,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4086,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:4091,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/filedump.c:4092,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4093,1
    - Dst: gf_isom_get_duration
      Src: /src/gpac/applications/mp4box/filedump.c:4095,1
    - Dst: gf_isom_get_original_duration
      Src: /src/gpac/applications/mp4box/filedump.c:4096,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4097,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:4097,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4099,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:4099,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4101,1
    - Dst: gf_isom_is_fragmented
      Src: /src/gpac/applications/mp4box/filedump.c:4104,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4105,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:4105,1
    - Dst: gf_isom_get_fragmented_duration
      Src: /src/gpac/applications/mp4box/filedump.c:4105,1
    - Dst: gf_isom_get_fragments_count
      Src: /src/gpac/applications/mp4box/filedump.c:4105,1
    - Dst: gf_isom_get_fragments_count
      Src: /src/gpac/applications/mp4box/filedump.c:4105,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4107,1
    - Dst: gf_isom_moov_first
      Src: /src/gpac/applications/mp4box/filedump.c:4111,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4112,1
    - Dst: gf_isom_get_brand_info
      Src: /src/gpac/applications/mp4box/filedump.c:4114,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4115,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:4115,1
    - Dst: gf_isom_get_alternate_brand
      Src: /src/gpac/applications/mp4box/filedump.c:4117,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4118,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:4118,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4120,1
    - Dst: gf_isom_get_creation_time
      Src: /src/gpac/applications/mp4box/filedump.c:4122,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4123,1
    - Dst: format_date
      Src: /src/gpac/applications/mp4box/filedump.c:4123,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4125,1
    - Dst: format_date
      Src: /src/gpac/applications/mp4box/filedump.c:4125,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4126,1
    - Dst: DumpMetaItem
      Src: /src/gpac/applications/mp4box/filedump.c:4128,1
    - Dst: gf_isom_get_root_od
      Src: /src/gpac/applications/mp4box/filedump.c:4130,1
    - Dst: gf_odf_desc_size
      Src: /src/gpac/applications/mp4box/filedump.c:4132,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4134,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4135,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4136,1
    - Dst: gf_m4v_get_profile_name
      Src: /src/gpac/applications/mp4box/filedump.c:4136,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4137,1
    - Dst: gf_m4a_get_profile_name
      Src: /src/gpac/applications/mp4box/filedump.c:4137,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4140,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:4142,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4143,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/filedump.c:4147,1
    - Dst: gf_isom_is_JPEG2000
      Src: /src/gpac/applications/mp4box/filedump.c:4149,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4149,1
    - Dst: gf_isom_get_copyright_count
      Src: /src/gpac/applications/mp4box/filedump.c:4151,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4154,1
    - Dst: gf_isom_get_copyright
      Src: /src/gpac/applications/mp4box/filedump.c:4156,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4157,1
    - Dst: gf_isom_get_chapter_count
      Src: /src/gpac/applications/mp4box/filedump.c:4161,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4165,1
    - Dst: gf_isom_get_chapter
      Src: /src/gpac/applications/mp4box/filedump.c:4167,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4168,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:4168,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/filedump.c:4172,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/applications/mp4box/filedump.c:4174,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/applications/mp4box/filedump.c:4176,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:4181,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4185,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/filedump.c:4188,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/mp4box/filedump.c:4190,1
    - Dst: gf_isom_parse_text_sample
      Src: /src/gpac/applications/mp4box/filedump.c:4191,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4193,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:4193,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/applications/mp4box/filedump.c:4194,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/filedump.c:4196,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:4197,1
    - Dst: gf_isom_apple_get_tag
      Src: /src/gpac/applications/mp4box/filedump.c:4202,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4204,1
    - Dst: gf_isom_apple_enum_tag_ex
      Src: /src/gpac/applications/mp4box/filedump.c:4214,1
    - Dst: gf_itags_find_by_itag
      Src: /src/gpac/applications/mp4box/filedump.c:4218,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4221,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4223,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4225,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:4225,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4228,1
    - Dst: gf_itags_get_name
      Src: /src/gpac/applications/mp4box/filedump.c:4228,1
    - Dst: gf_itags_get_type
      Src: /src/gpac/applications/mp4box/filedump.c:4229,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4231,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4236,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4240,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4243,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4244,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4245,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4249,1
    - Dst: gf_id3_get_genre
      Src: /src/gpac/applications/mp4box/filedump.c:4249,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4255,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4257,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4260,1
    - Dst: gf_isom_enum_udta_keys
      Src: /src/gpac/applications/mp4box/filedump.c:4268,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4271,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4275,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/filedump.c:4276,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4277,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:4277,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4278,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4280,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4281,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4282,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4285,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4290,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4297,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4303,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4306,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4308,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4311,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4315,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4317,1
    - Dst: gf_isom_wma_enum_tag
      Src: /src/gpac/applications/mp4box/filedump.c:4324,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4327,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4330,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4332,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4333,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4336,1
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/applications/mp4box/filedump.c:4339,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/mp4box/filedump.c:4340,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/applications/mp4box/filedump.c:4341,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4344,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:4346,1
    - Dst: print_udta
      Src: /src/gpac/applications/mp4box/filedump.c:4351,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4352,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/filedump.c:4353,1
    - Dst: DumpTrackInfo
      Src: /src/gpac/applications/mp4box/filedump.c:4354,1
    CyclomaticComplexity: 78
    EdgeCount: 78
    ICount: 253
    argCount: 2
    argNames:
    - file
    - full_dump
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4356
      start: 4055
    functionDepth: 4
    functionLinenumber: 4055
    functionLinenumberEnd: 4356
    functionName: DumpMovieInfo
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_has_segment
    - gf_isom_has_movie
    - gf_isom_get_original_duration
    - gf_itags_get_type
    - gf_isom_get_copyright_count
    - gf_odf_desc_del
    - gf_bs_new
    - gf_isom_get_timescale
    - gf_isom_get_copyright
    - gf_isom_get_sample_count
    - gf_isom_get_duration
    - gf_utf8_wcslen
    - gf_odf_desc_size
    - gf_list_count
    - gf_isom_get_root_od
    - fprintf
    - format_date
    - gf_4cc_to_str
    - gf_utf8_wcstombs
    - gf_itags_find_by_itag
    - gf_isom_sample_del
    - gf_isom_get_reference
    - gf_isom_get_track_count
    - gf_isom_get_alternate_brand
    - gf_isom_segment_get_track_fragment_count
    - gf_isom_segment_get_fragment_count
    - gf_isom_parse_text_sample
    - DumpTrackInfo
    - format_duration
    - gf_isom_segment_get_track_fragment_decode_time
    - gf_isom_moov_first
    - gf_isom_get_creation_time
    - gf_m4v_get_profile_name
    - gf_isom_get_chapter_count
    - gf_isom_get_fragmented_duration
    - gf_isom_get_sample
    - gf_itags_get_name
    - gf_m4a_get_profile_name
    - gf_isom_get_chapter
    - gf_isom_get_brand_info
    - gf_isom_apple_get_tag
    - gf_isom_is_fragmented
    - DumpMetaItem
    - gf_isom_get_fragments_count
    - gf_isom_is_JPEG2000
    - gf_isom_wma_enum_tag
    - gf_malloc
    - gf_isom_segment_get_fragment_size
    - gf_isom_apple_enum_tag_ex
    - gf_isom_get_reference_count
    - gf_bs_del
    - gf_id3_get_genre
    - gf_isom_enum_udta_keys
    - gf_isom_delete_text_sample
    - GF_4CC
    - print_udta
    linkageType: ''
    returnType: void
    signature: void DumpMovieInfo(GF_ISOFile *file, Bool full_dump)
  - BBCount: 50
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4400,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4405,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4413,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4419,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4424,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4429,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:4434,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:4437,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4439,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:4441,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4444,1
    - Dst: gf_m2ts_set_pes_framing
      Src: /src/gpac/applications/mp4box/filedump.c:4447,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4448,1
    - Dst: gf_m2ts_get_stream_name
      Src: /src/gpac/applications/mp4box/filedump.c:4448,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4449,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4450,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4454,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:4459,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4462,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:4467,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4470,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:4475,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4476,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:4478,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4479,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:4485,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4486,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:4488,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4489,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:4497,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:4503,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4527,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4528,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4529,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4530,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4531,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4535,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4537,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4540,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/filedump.c:4546,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:4551,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4554,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/filedump.c:4567,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4569,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4570,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4571,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4572,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4573,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4574,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4575,1
    - Dst: gf_odf_sl_depacketize
      Src: /src/gpac/applications/mp4box/filedump.c:4577,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/filedump.c:4578,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4579,1
    CyclomaticComplexity: 72
    EdgeCount: 72
    ICount: 160
    argCount: 3
    argNames:
    - ts
    - evt_type
    - par
    argTypes:
    - GF_M2TS_Demuxer*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4586
      start: 4390
    functionDepth: 1
    functionLinenumber: 4390
    functionLinenumberEnd: 4586
    functionName: on_m2ts_dump_event
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_m2ts_get_stream_name
    - GF_LOG
    - gf_odf_sl_depacketize
    - gf_m2ts_set_pes_framing
    - gf_fwrite
    - gf_list_count
    - M4_LOG
    - fprintf
    linkageType: ''
    returnType: void
    signature: void on_m2ts_dump_event(GF_M2TS_Demuxer *ts, u32 evt_type, void *par)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4599,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:4602,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4604,1
    - Dst: gf_m2ts_demux_new
      Src: /src/gpac/applications/mp4box/filedump.c:4607,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/filedump.c:4610,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/filedump.c:4616,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/filedump.c:4618,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4620,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:4621,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4623,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:4624,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4625,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:4626,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/mp4box/filedump.c:4632,1
    - Dst: gf_ftell
      Src: /src/gpac/applications/mp4box/filedump.c:4633,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/mp4box/filedump.c:4634,1
    - Dst: feof
      Src: /src/gpac/applications/mp4box/filedump.c:4637,1
    - Dst: gf_fread
      Src: /src/gpac/applications/mp4box/filedump.c:4638,1
    - Dst: gf_m2ts_process_data
      Src: /src/gpac/applications/mp4box/filedump.c:4641,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:4647,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4649,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4653,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4657,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:4658,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4660,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4663,1
    - Dst: gf_m2ts_reset_parsers
      Src: /src/gpac/applications/mp4box/filedump.c:4666,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/mp4box/filedump.c:4667,1
    - Dst: feof
      Src: /src/gpac/applications/mp4box/filedump.c:4670,1
    - Dst: gf_fread
      Src: /src/gpac/applications/mp4box/filedump.c:4671,1
    - Dst: gf_m2ts_process_data
      Src: /src/gpac/applications/mp4box/filedump.c:4674,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/filedump.c:4677,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:4680,1
    - Dst: gf_m2ts_demux_del
      Src: /src/gpac/applications/mp4box/filedump.c:4681,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:4682,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4685,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:4686,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:4687,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:4690,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 80
    argCount: 3
    argNames:
    - mpeg2ts_file
    - out_name
    - prog_num
    argTypes:
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4691
      start: 4588
    functionDepth: 1
    functionLinenumber: 4588
    functionLinenumberEnd: 4691
    functionName: dump_mpeg2_ts
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_list_get
    - strrchr
    - gf_fseek
    - gf_set_progress
    - gf_m2ts_demux_del
    - gf_fread
    - gf_m2ts_reset_parsers
    - sprintf
    - gf_m2ts_process_data
    - feof
    - memset
    - gf_fopen
    - M4_LOG
    - parse_u32
    - gf_m2ts_demux_new
    - fprintf
    - gf_ftell
    linkageType: ''
    returnType: void
    signature: void dump_mpeg2_ts(char *mpeg2ts_file, char *out_name, Bool prog_num)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_get_stats
      Src: /src/gpac/applications/mp4box/filedump.c:4702,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4707,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - usr_cbk
    - parameter
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4710
      start: 4697
    functionDepth: 0
    functionLinenumber: 4697
    functionLinenumberEnd: 4710
    functionName: get_file_callback
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_get_stats
    - fprintf
    linkageType: ''
    returnType: void
    signature: void get_file_callback(void *usr_cbk, GF_NETIO_Parameter *parameter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_new
      Src: /src/gpac/applications/mp4box/filedump.c:4715,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/applications/mp4box/filedump.c:4717,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/applications/mp4box/filedump.c:4719,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - url
    - dm
    - e
    argTypes:
    - char*
    - GF_DownloadManager*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4723
      start: 4712
    functionDepth: 0
    functionLinenumber: 4712
    functionLinenumberEnd: 4723
    functionName: get_file
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_process
    - gf_dm_sess_new
    - gf_dm_sess_del
    linkageType: ''
    returnType: GF_DownloadSession
    signature: GF_DownloadSession *get_file(const char *url, GF_DownloadManager *dm,
      GF_Err *e)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/filedump.c:4731,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4732,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/filedump.c:4735,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/filedump.c:4735,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:4738,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/filedump.c:4739,1
    - Dst: gf_cfg_new
      Src: /src/gpac/applications/mp4box/filedump.c:4741,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/mp4box/filedump.c:4742,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/filedump.c:4743,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/filedump.c:4748,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/filedump.c:4751,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/filedump.c:4755,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/mp4box/filedump.c:4756,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/filedump.c:4757,1
    - Dst: strncpy
      Src: /src/gpac/applications/mp4box/filedump.c:4759,1
    - Dst: gf_dir_exists
      Src: /src/gpac/applications/mp4box/filedump.c:4765,1
    - Dst: gf_mkdir
      Src: /src/gpac/applications/mp4box/filedump.c:4766,1
    - Dst: gf_file_exists
      Src: /src/gpac/applications/mp4box/filedump.c:4770,1
    - Dst: gf_file_move
      Src: /src/gpac/applications/mp4box/filedump.c:4771,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:4774,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4776,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:4778,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/mp4box/filedump.c:4779,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 45
    argCount: 1
    argNames:
    - item_path
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4780
      start: 4725
    functionDepth: 1
    functionLinenumber: 4725
    functionLinenumberEnd: 4780
    functionName: revert_cache_file
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_dir_exists
    - gf_file_exists
    - strcpy
    - gf_cfg_new
    - memset
    - M4_LOG
    - fprintf
    - strcat
    - gf_cfg_del
    - gf_cfg_get_key
    - strncmp
    - gf_mkdir
    - strstr
    - strncpy
    - gf_malloc
    - strlen
    - gf_file_move
    - gf_file_delete
    linkageType: ''
    returnType: void
    signature: void revert_cache_file(char *item_path)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:4799,1
    - Dst: gf_file_basename
      Src: /src/gpac/applications/mp4box/filedump.c:4800,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/mp4box/filedump.c:4802,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/mp4box/filedump.c:4804,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/mp4box/filedump.c:4806,1
    - Dst: gf_dm_new
      Src: /src/gpac/applications/mp4box/filedump.c:4807,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4818,1
    - Dst: get_file
      Src: /src/gpac/applications/mp4box/filedump.c:4819,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4821,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:4821,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:4824,1
    - Dst: gf_dm_sess_get_cache_name
      Src: /src/gpac/applications/mp4box/filedump.c:4824,1
    - Dst: gf_dm_sess_get_header_sizes_and_times
      Src: /src/gpac/applications/mp4box/filedump.c:4825,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/applications/mp4box/filedump.c:4826,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4829,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:4829,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4833,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4835,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4836,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/applications/mp4box/filedump.c:4838,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/applications/mp4box/filedump.c:4839,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/mp4box/filedump.c:4842,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4843,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:4843,1
    - Dst: gf_mpd_new
      Src: /src/gpac/applications/mp4box/filedump.c:4846,1
    - Dst: gf_mpd_init_from_dom
      Src: /src/gpac/applications/mp4box/filedump.c:4847,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/applications/mp4box/filedump.c:4847,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/mp4box/filedump.c:4848,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4851,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:4851,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4855,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:4855,1
    - Dst: revert_cache_file
      Src: /src/gpac/applications/mp4box/filedump.c:4858,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4860,1
    - Dst: gf_list_enum
      Src: /src/gpac/applications/mp4box/filedump.c:4866,1
    - Dst: gf_list_enum
      Src: /src/gpac/applications/mp4box/filedump.c:4877,1
    - Dst: gf_list_enum
      Src: /src/gpac/applications/mp4box/filedump.c:4884,1
    - Dst: gf_mpd_resolve_url
      Src: /src/gpac/applications/mp4box/filedump.c:4896,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4898,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:4898,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4905,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:4906,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4911,1
    - Dst: get_file
      Src: /src/gpac/applications/mp4box/filedump.c:4912,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4914,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:4914,1
    - Dst: revert_cache_file
      Src: /src/gpac/applications/mp4box/filedump.c:4917,1
    - Dst: gf_dm_sess_get_cache_name
      Src: /src/gpac/applications/mp4box/filedump.c:4917,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:4918,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/applications/mp4box/filedump.c:4919,1
    - Dst: gf_mpd_resolve_url
      Src: /src/gpac/applications/mp4box/filedump.c:4924,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4927,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:4927,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4935,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:4936,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4939,1
    - Dst: get_file
      Src: /src/gpac/applications/mp4box/filedump.c:4940,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:4942,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4944,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:4944,1
    - Dst: revert_cache_file
      Src: /src/gpac/applications/mp4box/filedump.c:4951,1
    - Dst: gf_dm_sess_get_cache_name
      Src: /src/gpac/applications/mp4box/filedump.c:4951,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:4952,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/applications/mp4box/filedump.c:4953,1
    - Dst: gf_mpd_del
      Src: /src/gpac/applications/mp4box/filedump.c:4960,1
    - Dst: gf_dm_del
      Src: /src/gpac/applications/mp4box/filedump.c:4961,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 145
    argCount: 2
    argNames:
    - mpd_src
    - output_dir
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4966
      start: 4783
    functionDepth: 2
    functionLinenumber: 4783
    functionLinenumberEnd: 4966
    functionName: rip_mpd
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_dm_sess_get_header_sizes_and_times
    - gf_opts_set_key
    - gf_xml_dom_get_root
    - strcpy
    - gf_dm_sess_get_cache_name
    - gf_dm_del
    - gf_dm_sess_del
    - gf_file_basename
    - fprintf
    - get_file
    - gf_mpd_resolve_url
    - revert_cache_file
    - gf_xml_dom_new
    - gf_mpd_del
    - gf_xml_dom_parse
    - GF_LOG
    - gf_error_to_string
    - gf_dm_new
    - gf_list_enum
    - gf_mpd_new
    - gf_mpd_init_from_dom
    - gf_xml_dom_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rip_mpd(const char *mpd_src, const char *output_dir)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _a
    - ','
    - _b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 42
    functionName: M4_LOG
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.h
    functionUses: 40
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: M4_LOG(_a, _b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _a
    - ','
    - _b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 46
    functionName: M4_LOG
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.h
    functionUses: 40
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: M4_LOG(_a, _b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - dest
    - inName
    - import_flags
    - force_fps
    - frames_per_sample
    - fsess
    - mux_args_if_first_pass
    - mux_sid_if_first_pass
    - tk_idx
    argTypes:
    - GF_ISOFile*
    - char*
    - u32
    - GF_Fraction
    - u32
    - GF_FilterSession*
    - char**
    - char**
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: import_file
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err import_file(GF_ISOFile *dest, char *inName, u32 import_flags,
      GF_Fraction force_fps, u32 frames_per_sample, GF_FilterSession *fsess, char
      **mux_args_if_first_pass, char **mux_sid_if_first_pass, u32 tk_idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:331,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:339,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:340,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:341,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:342,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:343,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 64
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 371
    functionName: init_global_vars
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: void init_global_vars()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:384,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:385,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - val
    - log_name
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 381
    functionDepth: 1
    functionLinenumber: 381
    functionLinenumberEnd: 387
    functionName: parse_u32
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 4
    functionsReached:
    - sscanf
    - M4_LOG
    linkageType: ''
    returnType: u32
    signature: u32 parse_u32(char *val, char *log_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:392,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:393,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - val
    - log_name
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 389
    functionDepth: 1
    functionLinenumber: 389
    functionLinenumberEnd: 395
    functionName: parse_s32
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 1
    functionsReached:
    - sscanf
    - M4_LOG
    linkageType: ''
    returnType: s32
    signature: s32 parse_s32(char *val, char *log_name)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:402,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:409,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:413,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:417,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:421,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:427,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:437,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 43
    argCount: 3
    argNames:
    - tkid
    - arg_val
    - allow_all
    argTypes:
    - TrackIdentifier*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 397
    functionDepth: 0
    functionLinenumber: 397
    functionLinenumberEnd: 444
    functionName: parse_track_id
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - sscanf
    - strncmp
    - strcmp
    - strnicmp
    - strlen
    linkageType: ''
    returnType: Bool
    signature: Bool parse_track_id(TrackIdentifier *tkid, char *arg_val, Bool allow_all)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:453,1
    - Dst: gf_gpac_version
      Src: /src/gpac/applications/mp4box/mp4box.c:456,1
    - Dst: gf_gpac_copyright_cite
      Src: /src/gpac/applications/mp4box/mp4box.c:456,1
    - Dst: gf_sys_features
      Src: /src/gpac/applications/mp4box/mp4box.c:456,1
    - Dst: gf_sys_features
      Src: /src/gpac/applications/mp4box/mp4box.c:456,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - arg_val
    - param
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 451
    functionDepth: 1
    functionLinenumber: 451
    functionLinenumberEnd: 458
    functionName: print_version
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_gpac_copyright_cite
    - gf_gpac_version
    - fprintf
    - gf_sys_features
    linkageType: ''
    returnType: Bool
    signature: Bool print_version(char *arg_val, u32 param)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - _a
    - ','
    - _c
    - ','
    - _f
    - ','
    - _g
    - ','
    - _h
    - ','
    - _i
    - ','
    - _j
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 490
    functionDepth: 0
    functionLinenumber: 490
    functionLinenumberEnd: 491
    functionName: MP4BOX_ARG
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MP4BOX_ARG(_a, _c, _f, _g, _h, _i, _j)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - _a
    - ','
    - _b
    - ','
    - _c
    - ','
    - _f
    - ','
    - _g
    - ','
    - _h
    - ','
    - _i
    - ','
    - _j
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 491
    functionDepth: 0
    functionLinenumber: 491
    functionLinenumberEnd: 492
    functionName: MP4BOX_ARG_ALT
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MP4BOX_ARG_ALT(_a, _b, _c, _f, _g, _h, _i, _j)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - _a
    - ','
    - _s
    - ','
    - _c
    - ','
    - _g
    - ','
    - _h
    - ','
    - _i
    - ','
    - _j
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 492
    functionDepth: 0
    functionLinenumber: 492
    functionLinenumberEnd: 493
    functionName: MP4BOX_ARG_S
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MP4BOX_ARG_S(_a, _s, _c, _g, _h, _i, _j)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - _a
    - ','
    - _b
    - ','
    - _s
    - ','
    - _c
    - ','
    - _g
    - ','
    - _h
    - ','
    - _i
    - ','
    - _j
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 493
    functionDepth: 0
    functionLinenumber: 493
    functionLinenumberEnd: 494
    functionName: MP4BOX_ARG_S_ALT
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MP4BOX_ARG_S_ALT(_a, _b, _s, _c, _g, _h, _i, _j)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:608,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:633,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 635
      start: 605
    functionDepth: 1
    functionLinenumber: 605
    functionLinenumberEnd: 635
    functionName: PrintGeneralUsage
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_sys_print_arg
    linkageType: ''
    returnType: void
    signature: void PrintGeneralUsage()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:667,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:699,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 702
      start: 664
    functionDepth: 1
    functionLinenumber: 664
    functionLinenumberEnd: 702
    functionName: PrintSplitUsage
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_sys_print_arg
    linkageType: ''
    returnType: void
    signature: void PrintSplitUsage()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:804,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:850,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 852
      start: 801
    functionDepth: 1
    functionLinenumber: 801
    functionLinenumberEnd: 852
    functionName: PrintDASHUsage
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_sys_print_arg
    linkageType: ''
    returnType: void
    signature: void PrintDASHUsage()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1040,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:1087,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1090,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:1099,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1101
      start: 1036
    functionDepth: 1
    functionLinenumber: 1036
    functionLinenumberEnd: 1101
    functionName: PrintImportUsage
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_sys_print_arg
    linkageType: ''
    returnType: void
    signature: void PrintImportUsage()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:1111,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:1115,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 1
    argNames:
    - opt
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1127
      start: 1103
    functionDepth: 0
    functionLinenumber: 1103
    functionLinenumberEnd: 1127
    functionName: mp4box_check_isom_fileopt
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 1
    functionsReached:
    - fprintf
    - stricmp
    linkageType: ''
    returnType: Bool
    signature: Bool mp4box_check_isom_fileopt(char *opt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:1137,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 1
    argNames:
    - opt
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1148
      start: 1129
    functionDepth: 0
    functionLinenumber: 1129
    functionLinenumberEnd: 1148
    functionName: mp4box_check_non_extk_fileopt
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 1
    functionsReached:
    - stricmp
    linkageType: ''
    returnType: Bool
    signature: Bool mp4box_check_non_extk_fileopt(char *opt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1177,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:1196,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1198
      start: 1174
    functionDepth: 1
    functionLinenumber: 1174
    functionLinenumberEnd: 1198
    functionName: PrintEncodeUsage
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_sys_print_arg
    linkageType: ''
    returnType: void
    signature: void PrintEncodeUsage()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1211,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:1221,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1223
      start: 1208
    functionDepth: 1
    functionLinenumber: 1208
    functionLinenumberEnd: 1223
    functionName: PrintEncryptUsage
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_sys_print_arg
    linkageType: ''
    returnType: void
    signature: void PrintEncryptUsage()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1253,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:1264,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1266
      start: 1250
    functionDepth: 1
    functionLinenumber: 1250
    functionLinenumberEnd: 1266
    functionName: PrintHintUsage
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_sys_print_arg
    linkageType: ''
    returnType: void
    signature: void PrintHintUsage()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1291,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:1299,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1301
      start: 1288
    functionDepth: 1
    functionLinenumber: 1288
    functionLinenumberEnd: 1301
    functionName: PrintExtractUsage
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_sys_print_arg
    linkageType: ''
    returnType: void
    signature: void PrintExtractUsage()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1372,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:1381,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1383
      start: 1369
    functionDepth: 1
    functionLinenumber: 1369
    functionLinenumberEnd: 1383
    functionName: PrintDumpUsage
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_sys_print_arg
    linkageType: ''
    returnType: void
    signature: void PrintDumpUsage()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1452,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:1460,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1462
      start: 1449
    functionDepth: 1
    functionLinenumber: 1449
    functionLinenumberEnd: 1462
    functionName: PrintMetaUsage
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_sys_print_arg
    linkageType: ''
    returnType: void
    signature: void PrintMetaUsage()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1485,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:1495,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1497
      start: 1482
    functionDepth: 1
    functionLinenumber: 1482
    functionLinenumberEnd: 1497
    functionName: PrintSWFUsage
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_sys_print_arg
    linkageType: ''
    returnType: void
    signature: void PrintSWFUsage()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1518,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:1526,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1529,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1540
      start: 1515
    functionDepth: 1
    functionLinenumber: 1515
    functionLinenumberEnd: 1540
    functionName: PrintLiveUsage
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_sys_print_arg
    linkageType: ''
    returnType: void
    signature: void PrintLiveUsage()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1544,1
    - Dst: gf_sys_print_core_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1545,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1546
      start: 1542
    functionDepth: 1
    functionLinenumber: 1542
    functionLinenumberEnd: 1546
    functionName: PrintCoreUsage
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_sys_print_core_help
    - gf_sys_format_help
    linkageType: ''
    returnType: void
    signature: void PrintCoreUsage()
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1552,1
    - Dst: gf_itags_get_type
      Src: /src/gpac/applications/mp4box/mp4box.c:1596,1
    - Dst: gf_itags_get_name
      Src: /src/gpac/applications/mp4box/mp4box.c:1598,1
    - Dst: gf_itags_get_itag
      Src: /src/gpac/applications/mp4box/mp4box.c:1599,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1600,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1601,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/mp4box.c:1601,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1604,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1609,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1612,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1614,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1616,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1618,1
    - Dst: gf_itags_get_alt_name
      Src: /src/gpac/applications/mp4box/mp4box.c:1620,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1622,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1625,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 38
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1628
      start: 1548
    functionDepth: 1
    functionLinenumber: 1548
    functionLinenumberEnd: 1628
    functionName: PrintTags
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_itags_get_name
    - gf_4cc_to_str
    - gf_sys_format_help
    - gf_itags_get_type
    - gf_itags_get_alt_name
    - gf_itags_get_itag
    linkageType: ''
    returnType: void
    signature: void PrintTags()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1633,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1634,1
    - Dst: gf_cicp_color_primaries_name
      Src: /src/gpac/applications/mp4box/mp4box.c:1636,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:1637,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1638,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1640,1
    - Dst: gf_cicp_color_transfer_name
      Src: /src/gpac/applications/mp4box/mp4box.c:1642,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1644,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1646,1
    - Dst: gf_cicp_color_matrix_name
      Src: /src/gpac/applications/mp4box/mp4box.c:1648,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1650,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1652
      start: 1630
    functionDepth: 1
    functionLinenumber: 1630
    functionLinenumberEnd: 1652
    functionName: PrintCICP
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_sys_format_help
    - gf_cicp_color_primaries_name
    - strcmp
    - gf_cicp_color_transfer_name
    - gf_cicp_color_matrix_name
    linkageType: ''
    returnType: void
    signature: void PrintCICP()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1702,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:1709,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1711,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1717
      start: 1699
    functionDepth: 1
    functionLinenumber: 1699
    functionLinenumberEnd: 1717
    functionName: PrintUsage
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 3
    functionsReached:
    - gf_sys_format_help
    - gf_sys_print_arg
    linkageType: ''
    returnType: void
    signature: void PrintUsage()
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:1736,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:1738,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:1757,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:1760,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:1762,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:1762,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/applications/mp4box/mp4box.c:1772,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:1776,1
    - Dst: gf_strnistr
      Src: /src/gpac/applications/mp4box/mp4box.c:1776,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:1788,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:1791,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 49
    argCount: 5
    argNames:
    - arg_name
    - args
    - _args
    - search_type
    - class_name
    argTypes:
    - char*
    - MP4BoxArg*
    - GF_GPACArg*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1797
      start: 1731
    functionDepth: 1
    functionLinenumber: 1731
    functionLinenumberEnd: 1797
    functionName: PrintHelpForArgs
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_sys_print_arg
    - strncmp
    - strcmp
    - strlen
    - gf_sys_word_match
    - gf_strnistr
    linkageType: ''
    returnType: u32
    signature: u32 PrintHelpForArgs(char *arg_name, MP4BoxArg *args, GF_GPACArg *_args,
      u32 search_type, char *class_name)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:1805,1
    - Dst: PrintHelpForArgs
      Src: /src/gpac/applications/mp4box/mp4box.c:1806,1
    - Dst: PrintHelpForArgs
      Src: /src/gpac/applications/mp4box/mp4box.c:1807,1
    - Dst: PrintHelpForArgs
      Src: /src/gpac/applications/mp4box/mp4box.c:1808,1
    - Dst: PrintHelpForArgs
      Src: /src/gpac/applications/mp4box/mp4box.c:1809,1
    - Dst: PrintHelpForArgs
      Src: /src/gpac/applications/mp4box/mp4box.c:1810,1
    - Dst: PrintHelpForArgs
      Src: /src/gpac/applications/mp4box/mp4box.c:1811,1
    - Dst: PrintHelpForArgs
      Src: /src/gpac/applications/mp4box/mp4box.c:1812,1
    - Dst: PrintHelpForArgs
      Src: /src/gpac/applications/mp4box/mp4box.c:1813,1
    - Dst: PrintHelpForArgs
      Src: /src/gpac/applications/mp4box/mp4box.c:1814,1
    - Dst: PrintHelpForArgs
      Src: /src/gpac/applications/mp4box/mp4box.c:1815,1
    - Dst: PrintHelpForArgs
      Src: /src/gpac/applications/mp4box/mp4box.c:1816,1
    - Dst: PrintHelpForArgs
      Src: /src/gpac/applications/mp4box/mp4box.c:1817,1
    - Dst: PrintHelpForArgs
      Src: /src/gpac/applications/mp4box/mp4box.c:1818,1
    - Dst: PrintHelpForArgs
      Src: /src/gpac/applications/mp4box/mp4box.c:1819,1
    - Dst: PrintHelpForArgs
      Src: /src/gpac/applications/mp4box/mp4box.c:1820,1
    - Dst: gf_sys_get_options
      Src: /src/gpac/applications/mp4box/mp4box.c:1820,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:1824,1
    - Dst: gf_fs_filters_registers_count
      Src: /src/gpac/applications/mp4box/mp4box.c:1825,1
    - Dst: gf_fs_get_filter_register
      Src: /src/gpac/applications/mp4box/mp4box.c:1828,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:1835,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/applications/mp4box/mp4box.c:1837,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:1840,1
    - Dst: gf_strnistr
      Src: /src/gpac/applications/mp4box/mp4box.c:1840,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:1875,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:1878,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:1879,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:1882,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:1884,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:1886,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:1890,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 86
    argCount: 3
    argNames:
    - arg_name
    - search_type
    - fs
    argTypes:
    - char*
    - u32
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1896
      start: 1798
    functionDepth: 2
    functionLinenumber: 1798
    functionLinenumberEnd: 1896
    functionName: PrintHelpArg
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - stricmp
    - gf_sys_format_help
    - sprintf
    - gf_sys_print_arg
    - gf_sys_word_match
    - memset
    - strcmp
    - gf_fs_filters_registers_count
    - gf_fs_get_filter_register
    - PrintHelpForArgs
    - fprintf
    - strlen
    - gf_sys_get_options
    - gf_strnistr
    linkageType: ''
    returnType: Bool
    signature: Bool PrintHelpArg(char *arg_name, u32 search_type, GF_FilterSession
      *fs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_new_defaults
      Src: /src/gpac/applications/mp4box/mp4box.c:1903,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:1909,1
    - Dst: strlwr
      Src: /src/gpac/applications/mp4box/mp4box.c:1910,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:1911,1
    - Dst: PrintHelpArg
      Src: /src/gpac/applications/mp4box/mp4box.c:1912,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:1913,1
    - Dst: PrintHelpArg
      Src: /src/gpac/applications/mp4box/mp4box.c:1915,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:1917,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:1918,1
    - Dst: PrintHelpArg
      Src: /src/gpac/applications/mp4box/mp4box.c:1920,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/mp4box.c:1924,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 3
    argNames:
    - arg_name
    - search_desc
    - no_match
    argTypes:
    - char*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1925
      start: 1898
    functionDepth: 3
    functionLinenumber: 1898
    functionLinenumberEnd: 1925
    functionName: PrintHelp
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - GF_LOG
    - strlwr
    - PrintHelpArg
    - gf_fs_del
    - gf_fs_new_defaults
    linkageType: ''
    returnType: void
    signature: void PrintHelp(char *arg_name, Bool search_desc, Bool no_match)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/mp4box.c:1931,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:1933,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:1936,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 2
    argNames:
    - arg_val
    - param
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1953
      start: 1928
    functionDepth: 1
    functionLinenumber: 1928
    functionLinenumberEnd: 1953
    functionName: parse_sdp_ext
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - strchr
    - parse_track_id
    - gf_realloc
    linkageType: ''
    returnType: u32
    signature: u32 parse_sdp_ext(char *arg_val, u32 param)
  - BBCount: 47
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/mp4box.c:1961,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:1966,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:1989,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:1991,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:1993,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2003,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2004,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2008,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2009,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2011,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:2012,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2015,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/mp4box/mp4box.c:2019,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/mp4box/mp4box.c:2022,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2024,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:2025,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/mp4box/mp4box.c:2026,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2028,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2029,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2031,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2032,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2034,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2036,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2038,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2039,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2041,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2045,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2049,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2053,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2059,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2063,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/mp4box/mp4box.c:2066,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2070,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2073,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2078,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2080,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2085,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2093,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2097,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2099,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2101,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2104,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2107,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2111,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2113,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2115,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2117,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2119,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2126,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2130,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2134,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2139,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2143,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2145,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2147,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2149,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2152,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2155,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2159,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2162,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2165,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2169,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2171,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2174,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2176,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:2177,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2179,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2183,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2186,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2189,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2192,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/applications/mp4box/mp4box.c:2194,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/applications/mp4box/mp4box.c:2195,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2197,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2197,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2200,1
    - Dst: atof
      Src: /src/gpac/applications/mp4box/mp4box.c:2201,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2203,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2205,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2207,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2210,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2212,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2214,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2216,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2218,1
    - Dst: gf_file_load_data
      Src: /src/gpac/applications/mp4box/mp4box.c:2220,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2222,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:2222,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2226,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2229,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2229,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:2230,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2236,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2236,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2236,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/mp4box.c:2241,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2247,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:2254,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 204
    argCount: 2
    argNames:
    - opts
    - act_type
    argTypes:
    - char*
    - MetaActionType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2259
      start: 1956
    functionDepth: 2
    functionLinenumber: 1956
    functionLinenumberEnd: 2259
    functionName: parse_meta_args
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - memset
    - M4_LOG
    - strchr
    - gf_realloc
    - gf_list_new
    - gf_strdup
    - atof
    - strncmp
    - gf_list_add
    - gf_url_colon_suffix
    - stricmp
    - gf_dynstrcat
    - sscanf
    - strnicmp
    - gf_error_to_string
    - parse_u32
    - gf_malloc
    - strlen
    - parse_track_id
    - GF_4CC
    - GF_ARRAY_LENGTH
    - gf_file_load_data
    linkageType: ''
    returnType: u32
    signature: u32 parse_meta_args(char *opts, MetaActionType act_type)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:2280,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:2281,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2285,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2286,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2287,1
    - Dst: parse_s32
      Src: /src/gpac/applications/mp4box/mp4box.c:2288,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2292,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2296,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2300,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:2303,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:2304,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2309,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2309,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/mp4box.c:2310,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:2316,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2318,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2322,1
    - Dst: memcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:2328,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:2335,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 61
    argCount: 2
    argNames:
    - opts
    - act
    argTypes:
    - char*
    - TSELActionType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2339
      start: 2262
    functionDepth: 2
    functionLinenumber: 2262
    functionLinenumberEnd: 2339
    functionName: parse_tsel_args
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - memcpy
    - strcpy
    - memset
    - parse_track_id
    - strnicmp
    - parse_s32
    - gf_url_colon_suffix
    - GF_4CC
    - strchr
    - parse_u32
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: Bool
    signature: Bool parse_tsel_args(char *opts, TSELActionType act)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:2347,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/mp4box.c:2349,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:2350,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2359,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:2361,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:2364,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2369,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2369,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:2369,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2372,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2373,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2376,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2379,1
    - Dst: gf_parse_lfrac
      Src: /src/gpac/applications/mp4box/mp4box.c:2379,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2380,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2380,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2381,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/mp4box.c:2382,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2383,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2385,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2385,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2386,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/mp4box.c:2387,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2388,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2390,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2395,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2399,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2403,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2407,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:2415,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/mp4box.c:2416,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/mp4box/mp4box.c:2417,1
    - Dst: memcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:2418,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2423,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2423,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2424,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2425,1
    - Dst: gf_parse_frac
      Src: /src/gpac/applications/mp4box/mp4box.c:2425,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2426,1
    - Dst: gf_parse_frac
      Src: /src/gpac/applications/mp4box/mp4box.c:2426,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2427,1
    - Dst: gf_parse_frac
      Src: /src/gpac/applications/mp4box/mp4box.c:2427,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2428,1
    - Dst: gf_parse_frac
      Src: /src/gpac/applications/mp4box/mp4box.c:2428,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2429,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2429,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2430,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2430,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2431,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2431,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2432,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2432,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2433,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2433,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2434,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2437,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:2439,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/mp4box.c:2443,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:2457,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2458,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 118
    argCount: 3
    argNames:
    - dash_inputs
    - name
    - nb_dash_inputs
    argTypes:
    - GF_DashSegmenterInput*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2462
      start: 2342
    functionDepth: 2
    functionLinenumber: 2342
    functionLinenumberEnd: 2462
    functionName: set_dash_input
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_strdup
    - memcpy
    - sprintf
    - strstr
    - gf_parse_lfrac
    - memset
    - strncmp
    - strnicmp
    - gf_url_colon_suffix
    - stricmp
    - gf_dynstrcat
    - gf_parse_frac
    - strchr
    - parse_u32
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: GF_DashSegmenterInput
    signature: GF_DashSegmenterInput *set_dash_input(GF_DashSegmenterInput *dash_inputs,
      char *name, u32 *nb_dash_inputs)
  - BBCount: 59
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/mp4box.c:2468,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:2474,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2483,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2485,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2489,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2492,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2494,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2499,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2501,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2505,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2508,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2510,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2514,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2523,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2524,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2531,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2533,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2537,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2539,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2540,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2542,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2550,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2552,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2556,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2558,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:2559,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:2564,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2565,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2567,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2570,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2577,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2579,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2583,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2585,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2589,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2590,1
    - Dst: strncpy
      Src: /src/gpac/applications/mp4box/mp4box.c:2591,1
    - Dst: strncpy
      Src: /src/gpac/applications/mp4box/mp4box.c:2594,1
    - Dst: strncpy
      Src: /src/gpac/applications/mp4box/mp4box.c:2596,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2598,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2608,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2611,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2614,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2628,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2631,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2633,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2636,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2638,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2644,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2646,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2650,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2652,1
    - Dst: parse_s32
      Src: /src/gpac/applications/mp4box/mp4box.c:2653,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2659,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2660,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2662,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2666,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2669,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2671,1
    - Dst: strncpy
      Src: /src/gpac/applications/mp4box/mp4box.c:2675,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2677,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2681,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2683,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2687,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2693,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2695,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2702,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2709,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2712,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:2716,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2717,1
    - Dst: mktime
      Src: /src/gpac/applications/mp4box/mp4box.c:2722,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:2727,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2732,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2734,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2736,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2738,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2740,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2741,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2742,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2743,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2744,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2745,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2746,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2747,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2749,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:2750,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2752,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2758,1
    CyclomaticComplexity: 63
    EdgeCount: 63
    ICount: 273
    argCount: 3
    argNames:
    - arg_val
    - act_type
    - dump_type
    argTypes:
    - char*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2761
      start: 2464
    functionDepth: 2
    functionLinenumber: 2464
    functionLinenumberEnd: 2761
    functionName: create_new_track_action
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - sscanf
    - GF_4CC
    - strstr
    - memset
    - parse_track_id
    - strnicmp
    - strncpy
    - M4_LOG
    - parse_s32
    - stricmp
    - gf_url_colon_suffix
    - mktime
    - strchr
    - strncmp
    - parse_u32
    - gf_realloc
    linkageType: ''
    returnType: Bool
    signature: Bool create_new_track_action(char *arg_val, u32 act_type, u32 dump_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: create_new_track_action
      Src: /src/gpac/applications/mp4box/mp4box.c:2765,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - arg
    - dump_type
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2769
      start: 2763
    functionDepth: 3
    functionLinenumber: 2763
    functionLinenumberEnd: 2769
    functionName: parse_track_dump
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - create_new_track_action
    linkageType: ''
    returnType: u32
    signature: u32 parse_track_dump(char *arg, u32 dump_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: create_new_track_action
      Src: /src/gpac/applications/mp4box/mp4box.c:2772,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - arg
    - act_type
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2776
      start: 2770
    functionDepth: 3
    functionLinenumber: 2770
    functionLinenumberEnd: 2776
    functionName: parse_track_action
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - create_new_track_action
    linkageType: ''
    returnType: u32
    signature: u32 parse_track_action(char *arg, u32 act_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2783
      start: 2778
    functionDepth: 0
    functionLinenumber: 2778
    functionLinenumberEnd: 2783
    functionName: parse_comp_box
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 parse_comp_box(char *arg_val, u32 opt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2786,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2789
      start: 2784
    functionDepth: 1
    functionLinenumber: 2784
    functionLinenumberEnd: 2789
    functionName: parse_dnal
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - parse_track_id
    linkageType: ''
    returnType: u32
    signature: u32 parse_dnal(char *arg_val, u32 opt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2792,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2795
      start: 2790
    functionDepth: 1
    functionLinenumber: 2790
    functionLinenumberEnd: 2795
    functionName: parse_dsap
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - parse_track_id
    linkageType: ''
    returnType: u32
    signature: u32 parse_dsap(char *arg_val, u32 opt)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2799,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2799,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2800,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2801,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2802,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2803,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2804,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2806,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2810
      start: 2797
    functionDepth: 1
    functionLinenumber: 2797
    functionLinenumberEnd: 2810
    functionName: parse_bs_switch
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - M4_LOG
    - stricmp
    linkageType: ''
    returnType: u32
    signature: u32 parse_bs_switch(char *arg_val, u32 opt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2814,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2815,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2816,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2818,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2822
      start: 2812
    functionDepth: 1
    functionLinenumber: 2812
    functionLinenumberEnd: 2822
    functionName: parse_cp_loc
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - strcmp
    - M4_LOG
    linkageType: ''
    returnType: u32
    signature: u32 parse_cp_loc(char *arg_val, u32 opt)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2826,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2827,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2828,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2829,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2829,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2830,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2830,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2831,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 15
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2834
      start: 2824
    functionDepth: 0
    functionLinenumber: 2824
    functionLinenumberEnd: 2834
    functionName: parse_pssh
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: u32
    signature: u32 parse_pssh(char *arg_val, u32 opt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2837,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2838,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2841
      start: 2835
    functionDepth: 0
    functionLinenumber: 2835
    functionLinenumberEnd: 2841
    functionName: parse_sdtp
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - stricmp
    linkageType: ''
    returnType: u32
    signature: u32 parse_sdtp(char *arg_val, u32 opt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2847,1
    - Dst: parse_track_action
      Src: /src/gpac/applications/mp4box/mp4box.c:2848,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2856
      start: 2843
    functionDepth: 4
    functionLinenumber: 2843
    functionLinenumberEnd: 2856
    functionName: parse_rap_ref
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - parse_track_id
    - parse_track_action
    linkageType: ''
    returnType: u32
    signature: u32 parse_rap_ref(char *arg_val, u32 opt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: atof
      Src: /src/gpac/applications/mp4box/mp4box.c:2861,1
    - Dst: atof
      Src: /src/gpac/applications/mp4box/mp4box.c:2867,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2875
      start: 2857
    functionDepth: 0
    functionLinenumber: 2857
    functionLinenumberEnd: 2875
    functionName: parse_store_mode
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - atof
    linkageType: ''
    returnType: u32
    signature: u32 parse_store_mode(char *arg_val, u32 opt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/mp4box.c:2878,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2883
      start: 2876
    functionDepth: 0
    functionLinenumber: 2876
    functionLinenumberEnd: 2883
    functionName: parse_base_url
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: u32
    signature: u32 parse_base_url(char *arg_val, u32 opt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2890,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2892
      start: 2884
    functionDepth: 2
    functionLinenumber: 2884
    functionLinenumberEnd: 2892
    functionName: parse_multi_rtp
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - parse_u32
    linkageType: ''
    returnType: u32
    signature: u32 parse_multi_rtp(char *arg_val, u32 opt)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2900,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2905,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2909,1
    - Dst: parse_s32
      Src: /src/gpac/applications/mp4box/mp4box.c:2912,1
    - Dst: parse_s32
      Src: /src/gpac/applications/mp4box/mp4box.c:2916,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2925
      start: 2894
    functionDepth: 2
    functionLinenumber: 2894
    functionLinenumberEnd: 2925
    functionName: parse_senc_param
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - parse_u32
    - parse_s32
    linkageType: ''
    returnType: u32
    signature: u32 parse_senc_param(char *arg_val, u32 opt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: get_file_type_by_ext
      Src: /src/gpac/applications/mp4box/mp4box.c:2936,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2941
      start: 2926
    functionDepth: 1
    functionLinenumber: 2926
    functionLinenumberEnd: 2941
    functionName: parse_cryp
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - get_file_type_by_ext
    linkageType: ''
    returnType: u32
    signature: u32 parse_cryp(char *arg_val, u32 opt)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2945,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2945,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2946,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2947,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2947,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2949,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2949,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2951,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2951,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2953,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2954,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2955,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2957,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 21
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2961
      start: 2943
    functionDepth: 1
    functionLinenumber: 2943
    functionLinenumberEnd: 2961
    functionName: parse_dash_profile
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - M4_LOG
    - stricmp
    linkageType: ''
    returnType: u32
    signature: u32 parse_dash_profile(char *arg_val, u32 opt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2966,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2967,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2969,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2969,1
    - Dst: gf_parse_frac
      Src: /src/gpac/applications/mp4box/mp4box.c:2974,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2977
      start: 2963
    functionDepth: 1
    functionLinenumber: 2963
    functionLinenumberEnd: 2977
    functionName: parse_fps
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_parse_frac
    - strcmp
    - sscanf
    - M4_LOG
    linkageType: ''
    returnType: u32
    signature: u32 parse_fps(char *arg_val, u32 opt)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:2985,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2986,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2987,1
    - Dst: atof
      Src: /src/gpac/applications/mp4box/mp4box.c:2991,1
    - Dst: atof
      Src: /src/gpac/applications/mp4box/mp4box.c:2994,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:3004,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:3005,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:3006,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:3010,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:3013,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:3022,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:3022,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3023,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:3026,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:3027,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:3029,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:3032,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 62
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3042
      start: 2979
    functionDepth: 2
    functionLinenumber: 2979
    functionLinenumberEnd: 3042
    functionName: parse_split
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - sscanf
    - atof
    - strstr
    - M4_LOG
    - strchr
    - parse_u32
    - strlen
    linkageType: ''
    returnType: u32
    signature: u32 parse_split(char *arg_val, u32 opt)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:3049,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3051,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:3052,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:3054,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/mp4box.c:3058,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:3060,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/mp4box.c:3064,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:3066,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 2
    argNames:
    - b
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3071
      start: 3044
    functionDepth: 2
    functionLinenumber: 3044
    functionLinenumberEnd: 3071
    functionName: parse_brand
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - sscanf
    - strncmp
    - GF_4CC
    - parse_u32
    - gf_realloc
    linkageType: ''
    returnType: u32
    signature: u32 parse_brand(char *b, u32 opt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3078
      start: 3073
    functionDepth: 0
    functionLinenumber: 3073
    functionLinenumberEnd: 3078
    functionName: parse_mpegu
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 parse_mpegu(char *arg_val, u32 opt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:3089,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3093
      start: 3080
    functionDepth: 1
    functionLinenumber: 3080
    functionLinenumberEnd: 3093
    functionName: parse_file_info
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - parse_track_id
    linkageType: ''
    returnType: u32
    signature: u32 parse_file_info(char *arg_val, u32 opt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:3097,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:3100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3106
      start: 3094
    functionDepth: 1
    functionLinenumber: 3094
    functionLinenumberEnd: 3106
    functionName: parse_boxpatch
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - strchr
    - parse_track_id
    linkageType: ''
    returnType: u32
    signature: u32 parse_boxpatch(char *arg_val, u32 opt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3113
      start: 3107
    functionDepth: 0
    functionLinenumber: 3107
    functionLinenumberEnd: 3113
    functionName: parse_compress
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 parse_compress(char *arg_val, u32 opt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:3119,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:3122,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:3127,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:3128,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:3129,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:3132,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3133,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:3136,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3138,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - code
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3142
      start: 3116
    functionDepth: 1
    functionLinenumber: 3116
    functionLinenumberEnd: 3142
    functionName: parse_dump_udta
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - sscanf
    - parse_track_id
    - M4_LOG
    - GF_4CC
    - strchr
    - strlen
    linkageType: ''
    returnType: u32
    signature: u32 parse_dump_udta(char *code, u32 opt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: isdigit
      Src: /src/gpac/applications/mp4box/mp4box.c:3148,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:3149,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3155
      start: 3144
    functionDepth: 2
    functionLinenumber: 3144
    functionLinenumberEnd: 3155
    functionName: parse_dump_ts
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - parse_u32
    - isdigit
    linkageType: ''
    returnType: u32
    signature: u32 parse_dump_ts(char *arg_val, u32 opt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3168,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3168,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3168,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:3171,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3175
      start: 3157
    functionDepth: 1
    functionLinenumber: 3157
    functionLinenumberEnd: 3175
    functionName: parse_ttxt
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - parse_track_id
    - strcmp
    linkageType: ''
    returnType: u32
    signature: u32 parse_ttxt(char *arg_val, u32 opt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: atof
      Src: /src/gpac/applications/mp4box/mp4box.c:3184,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - arg
    - arg_val
    - opt
    argTypes:
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3186
      start: 3177
    functionDepth: 0
    functionLinenumber: 3177
    functionLinenumberEnd: 3186
    functionName: parse_dashlive
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - atof
    linkageType: ''
    returnType: u32
    signature: u32 parse_dashlive(char *arg, char *arg_val, u32 opt)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: PrintUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3190,1
    - Dst: PrintHelp
      Src: /src/gpac/applications/mp4box/mp4box.c:3191,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3192,1
    - Dst: PrintGeneralUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3192,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3193,1
    - Dst: PrintExtractUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3193,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3194,1
    - Dst: PrintSplitUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3194,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3195,1
    - Dst: PrintDASHUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3195,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3196,1
    - Dst: PrintDumpUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3196,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3197,1
    - Dst: PrintImportUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3197,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3198,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3199,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3201,1
    - Dst: PrintHintUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3201,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3202,1
    - Dst: PrintEncodeUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3202,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3203,1
    - Dst: PrintEncryptUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3203,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3204,1
    - Dst: PrintMetaUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3204,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3205,1
    - Dst: PrintSWFUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3205,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3207,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3208,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3210,1
    - Dst: PrintLiveUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3210,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3212,1
    - Dst: PrintCoreUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3212,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3213,1
    - Dst: PrintTags
      Src: /src/gpac/applications/mp4box/mp4box.c:3213,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3214,1
    - Dst: PrintCICP
      Src: /src/gpac/applications/mp4box/mp4box.c:3214,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3215,1
    - Dst: PrintGeneralUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3216,1
    - Dst: PrintExtractUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3217,1
    - Dst: PrintDASHUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3218,1
    - Dst: PrintSplitUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3219,1
    - Dst: PrintDumpUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3220,1
    - Dst: PrintImportUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3221,1
    - Dst: PrintHintUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3222,1
    - Dst: PrintEncodeUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3223,1
    - Dst: PrintEncryptUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3224,1
    - Dst: PrintMetaUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3225,1
    - Dst: PrintSWFUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3226,1
    - Dst: PrintLiveUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3228,1
    - Dst: PrintCoreUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3230,1
    - Dst: PrintTags
      Src: /src/gpac/applications/mp4box/mp4box.c:3231,1
    - Dst: PrintCICP
      Src: /src/gpac/applications/mp4box/mp4box.c:3232,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3233,1
    - Dst: PrintHelp
      Src: /src/gpac/applications/mp4box/mp4box.c:3234,1
    - Dst: PrintHelp
      Src: /src/gpac/applications/mp4box/mp4box.c:3236,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 55
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3237
      start: 3188
    functionDepth: 4
    functionLinenumber: 3188
    functionLinenumberEnd: 3237
    functionName: parse_help
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - PrintUsage
    - M4_LOG
    - PrintCICP
    - PrintGeneralUsage
    - PrintCoreUsage
    - PrintSplitUsage
    - PrintEncodeUsage
    - PrintTags
    - PrintSWFUsage
    - PrintHelp
    - PrintDumpUsage
    - PrintImportUsage
    - PrintHintUsage
    - PrintDASHUsage
    - PrintExtractUsage
    - PrintEncryptUsage
    - PrintMetaUsage
    - PrintLiveUsage
    - strcmp
    linkageType: ''
    returnType: u32
    signature: u32 parse_help(char *arg_val, u32 opt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:3250,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3252,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3253,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:3254,1
    - Dst: PrintGeneralUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3257,1
    - Dst: PrintEncryptUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3258,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3259,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:3263,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:3266,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:3268,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3269,1
    - Dst: PrintImportUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3270,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:3271,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:3273,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3274,1
    - Dst: PrintDASHUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3275,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:3276,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:3278,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3279,1
    - Dst: PrintExtractUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3280,1
    - Dst: PrintDumpUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3281,1
    - Dst: PrintSplitUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3282,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:3283,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:3285,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3286,1
    - Dst: PrintMetaUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3287,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:3288,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:3291,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3292,1
    - Dst: PrintEncodeUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3293,1
    - Dst: PrintLiveUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3295,1
    - Dst: PrintSWFUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3297,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:3298,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:3300,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3301,1
    - Dst: PrintHintUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3302,1
    - Dst: PrintTags
      Src: /src/gpac/applications/mp4box/mp4box.c:3303,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:3304,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:3309,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3312,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3313,1
    - Dst: PrintGeneralUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3315,1
    - Dst: PrintExtractUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3316,1
    - Dst: PrintDASHUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3317,1
    - Dst: PrintSplitUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3318,1
    - Dst: PrintDumpUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3319,1
    - Dst: PrintImportUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3320,1
    - Dst: PrintHintUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3321,1
    - Dst: PrintEncodeUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3322,1
    - Dst: PrintEncryptUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3323,1
    - Dst: PrintMetaUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3324,1
    - Dst: PrintSWFUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3325,1
    - Dst: PrintTags
      Src: /src/gpac/applications/mp4box/mp4box.c:3326,1
    - Dst: PrintLiveUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3328,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3331,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3332,1
    - Dst: gf_gpac_copyright
      Src: /src/gpac/applications/mp4box/mp4box.c:3337,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:3339,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 67
    argCount: 2
    argNames:
    - name
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3342
      start: 3244
    functionDepth: 2
    functionLinenumber: 3244
    functionLinenumberEnd: 3342
    functionName: parse_gendoc
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_sys_print_arg
    - gf_fopen
    - fprintf
    - PrintGeneralUsage
    - PrintSplitUsage
    - PrintEncodeUsage
    - PrintTags
    - PrintSWFUsage
    - PrintDumpUsage
    - PrintImportUsage
    - PrintHintUsage
    - PrintDASHUsage
    - PrintExtractUsage
    - gf_fclose
    - gf_sys_format_help
    - PrintEncryptUsage
    - PrintMetaUsage
    - PrintLiveUsage
    - gf_gpac_copyright
    linkageType: ''
    returnType: u32
    signature: u32 parse_gendoc(char *name, u32 opt)
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:3354,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3356,1
    - Dst: exit
      Src: /src/gpac/applications/mp4box/mp4box.c:3357,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3360,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3362,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3366,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:3366,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:3384,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3388,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:3395,1
    - Dst: gf_sys_set_args
      Src: /src/gpac/applications/mp4box/mp4box.c:3411,1
    - Dst: fun
      Src: /src/gpac/applications/mp4box/mp4box.c:3415,1
    - Dst: fun2
      Src: /src/gpac/applications/mp4box/mp4box.c:3418,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:3459,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3461,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:3465,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3473,1
    - Dst: atof
      Src: /src/gpac/applications/mp4box/mp4box.c:3479,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3484,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3493,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:3499,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3504,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:3511,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3512,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3520,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 161
    argCount: 5
    argNames:
    - argc
    - argv
    - arg
    - arg_index
    - arg_class
    argTypes:
    - int
    - char**
    - char*
    - u32*
    - MP4BoxArg*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3527
      start: 3344
    functionDepth: 1
    functionLinenumber: 3344
    functionLinenumberEnd: 3527
    functionName: mp4box_parse_single_arg_class
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - sscanf
    - GF_4CC
    - atof
    - strncmp
    - strcmp
    - exit
    - M4_LOG
    - gf_sys_set_args
    - fun2
    - strchr
    - fun
    - strlen
    linkageType: ''
    returnType: u32
    signature: u32 mp4box_parse_single_arg_class(int argc, char **argv, char *arg,
      u32 *arg_index, MP4BoxArg *arg_class)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: mp4box_parse_single_arg_class
      Src: /src/gpac/applications/mp4box/mp4box.c:3531,1
    - Dst: mp4box_parse_single_arg_class
      Src: /src/gpac/applications/mp4box/mp4box.c:3532,1
    - Dst: mp4box_parse_single_arg_class
      Src: /src/gpac/applications/mp4box/mp4box.c:3533,1
    - Dst: mp4box_parse_single_arg_class
      Src: /src/gpac/applications/mp4box/mp4box.c:3534,1
    - Dst: mp4box_parse_single_arg_class
      Src: /src/gpac/applications/mp4box/mp4box.c:3535,1
    - Dst: mp4box_parse_single_arg_class
      Src: /src/gpac/applications/mp4box/mp4box.c:3536,1
    - Dst: mp4box_parse_single_arg_class
      Src: /src/gpac/applications/mp4box/mp4box.c:3537,1
    - Dst: mp4box_parse_single_arg_class
      Src: /src/gpac/applications/mp4box/mp4box.c:3538,1
    - Dst: mp4box_parse_single_arg_class
      Src: /src/gpac/applications/mp4box/mp4box.c:3539,1
    - Dst: mp4box_parse_single_arg_class
      Src: /src/gpac/applications/mp4box/mp4box.c:3540,1
    - Dst: mp4box_parse_single_arg_class
      Src: /src/gpac/applications/mp4box/mp4box.c:3541,1
    - Dst: mp4box_parse_single_arg_class
      Src: /src/gpac/applications/mp4box/mp4box.c:3542,1
    - Dst: mp4box_parse_single_arg_class
      Src: /src/gpac/applications/mp4box/mp4box.c:3543,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 4
    argNames:
    - argc
    - argv
    - arg
    - arg_index
    argTypes:
    - int
    - char**
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3546
      start: 3529
    functionDepth: 2
    functionLinenumber: 3529
    functionLinenumberEnd: 3546
    functionName: mp4box_parse_single_arg
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - mp4box_parse_single_arg_class
    linkageType: ''
    returnType: Bool
    signature: Bool mp4box_parse_single_arg(int argc, char **argv, char *arg, u32
      *arg_index)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3557,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/applications/mp4box/mp4box.c:3559,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3560,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3562,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3571,1
    - Dst: set_dash_input
      Src: /src/gpac/applications/mp4box/mp4box.c:3577,1
    - Dst: set_dash_input
      Src: /src/gpac/applications/mp4box/mp4box.c:3579,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3582,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3591,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3591,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3591,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3592,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3595,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3596,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/mp4box/mp4box.c:3597,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3600,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3601,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3604,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3605,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3608,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3609,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3612,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3613,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3616,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/applications/mp4box/mp4box.c:3617,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3621,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3621,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/applications/mp4box/mp4box.c:3622,1
    - Dst: mp4box_parse_single_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:3628,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:3630,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/applications/mp4box/mp4box.c:3632,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/applications/mp4box/mp4box.c:3634,1
    - Dst: gf_sys_is_gpac_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:3638,1
    - Dst: PrintHelp
      Src: /src/gpac/applications/mp4box/mp4box.c:3640,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3643,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/applications/mp4box/mp4box.c:3644,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/applications/mp4box/mp4box.c:3647,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 86
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3654
      start: 3549
    functionDepth: 4
    functionLinenumber: 3549
    functionLinenumberEnd: 3654
    functionName: mp4box_parse_args
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - PrintHelp
    - gf_opts_set_key
    - gf_sys_mark_arg_used
    - mp4box_parse_single_arg
    - strncmp
    - strcmp
    - M4_LOG
    - mp4box_cleanup
    - stricmp
    - set_dash_input
    - gf_sys_is_gpac_arg
    linkageType: ''
    returnType: u32
    signature: u32 mp4box_parse_args(int argc, char **argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: vfprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3668,1
    - Dst: fflush
      Src: /src/gpac/applications/mp4box/mp4box.c:3669,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - cbk
    - log_level
    - log_tool
    - fmt
    - vlist
    argTypes:
    - void*
    - GF_LOG_Level
    - GF_LOG_Tool
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3670
      start: 3664
    functionDepth: 0
    functionLinenumber: 3664
    functionLinenumberEnd: 3670
    functionName: scene_coding_log
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - vfprintf
    - fflush
    linkageType: ''
    returnType: void
    signature: void scene_coding_log(void *cbk, GF_LOG_Level log_level, GF_LOG_Tool
      log_tool, const char *fmt, va_list vlist)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:3682,1
    - Dst: gf_isom_is_track_in_root_od
      Src: /src/gpac/applications/mp4box/mp4box.c:3686,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:3687,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/applications/mp4box/mp4box.c:3693,1
    - Dst: gf_isom_change_mpeg4_description
      Src: /src/gpac/applications/mp4box/mp4box.c:3696,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/mp4box.c:3697,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3700
      start: 3679
    functionDepth: 1
    functionLinenumber: 3679
    functionLinenumberEnd: 3700
    functionName: SetupClockReferences
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - gf_isom_change_mpeg4_description
    - gf_isom_get_esd
    - gf_isom_get_track_count
    - gf_isom_get_track_id
    - gf_isom_is_track_in_root_od
    linkageType: ''
    returnType: void
    signature: void SetupClockReferences(GF_ISOFile *file)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_root_od
      Src: /src/gpac/applications/mp4box/mp4box.c:3726,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/mp4box.c:3729,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/mp4box.c:3730,1
    - Dst: gf_isom_guess_specification
      Src: /src/gpac/applications/mp4box/mp4box.c:3733,1
    - Dst: gf_isom_is_single_av
      Src: /src/gpac/applications/mp4box/mp4box.c:3734,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:3737,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/mp4box.c:3738,1
    - Dst: gf_isom_is_track_in_root_od
      Src: /src/gpac/applications/mp4box/mp4box.c:3740,1
    - Dst: gf_isom_set_default_sync_track
      Src: /src/gpac/applications/mp4box/mp4box.c:3741,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:3748,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/mp4box.c:3752,1
    - Dst: gf_isom_is_track_enabled
      Src: /src/gpac/applications/mp4box/mp4box.c:3753,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3754,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:3754,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/mp4box.c:3758,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/mp4box.c:3790,1
    - Dst: gf_isom_get_mpeg4_subtype
      Src: /src/gpac/applications/mp4box/mp4box.c:3791,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/applications/mp4box/mp4box.c:3800,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/mp4box.c:3812,1
    - Dst: gf_isom_is_track_in_root_od
      Src: /src/gpac/applications/mp4box/mp4box.c:3814,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/mp4box.c:3816,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/mp4box.c:3817,1
    - Dst: gf_hinter_can_embbed_data
      Src: /src/gpac/applications/mp4box/mp4box.c:3819,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/mp4box.c:3824,1
    - Dst: gf_hinter_track_new
      Src: /src/gpac/applications/mp4box/mp4box.c:3830,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3834,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:3834,1
    - Dst: gf_hinter_track_force_no_offsets
      Src: /src/gpac/applications/mp4box/mp4box.c:3841,1
    - Dst: gf_hinter_track_get_bandwidth
      Src: /src/gpac/applications/mp4box/mp4box.c:3843,1
    - Dst: gf_hinter_track_get_flags
      Src: /src/gpac/applications/mp4box/mp4box.c:3845,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/applications/mp4box/mp4box.c:3848,1
    - Dst: gf_hinter_track_get_payload_name
      Src: /src/gpac/applications/mp4box/mp4box.c:3850,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3851,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:3851,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/mp4box.c:3851,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/mp4box.c:3851,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3852,1
    - Dst: gf_hinter_track_process
      Src: /src/gpac/applications/mp4box/mp4box.c:3853,1
    - Dst: gf_hinter_track_finalize
      Src: /src/gpac/applications/mp4box/mp4box.c:3855,1
    - Dst: gf_hinter_track_del
      Src: /src/gpac/applications/mp4box/mp4box.c:3856,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3859,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:3859,1
    - Dst: gf_hinter_finalize
      Src: /src/gpac/applications/mp4box/mp4box.c:3872,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3875,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 144
    argCount: 10
    argNames:
    - file
    - MTUSize
    - max_ptime
    - rtp_rate
    - base_flags
    - copy_data
    - interleave
    - regular_iod
    - single_group
    - hint_no_offset
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - Bool
    - Bool
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3878
      start: 3705
    functionDepth: 1
    functionLinenumber: 3705
    functionLinenumberEnd: 3878
    functionName: HintFile
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - gf_isom_is_single_av
    - gf_isom_get_sample_count
    - gf_list_count
    - gf_isom_get_track_id
    - M4_LOG
    - gf_isom_get_root_od
    - gf_hinter_track_new
    - gf_isom_set_nalu_extract_mode
    - gf_isom_set_default_sync_track
    - gf_hinter_can_embbed_data
    - gf_4cc_to_str
    - gf_hinter_track_del
    - gf_isom_guess_specification
    - gf_isom_sample_del
    - gf_isom_get_media_subtype
    - gf_isom_get_track_count
    - gf_isom_is_track_in_root_od
    - gf_isom_get_media_type
    - gf_isom_get_sample
    - gf_isom_get_esd
    - gf_hinter_track_get_flags
    - gf_error_to_string
    - gf_hinter_track_finalize
    - gf_hinter_track_force_no_offsets
    - gf_isom_is_track_enabled
    - gf_hinter_track_get_bandwidth
    - gf_hinter_track_get_payload_name
    - gf_hinter_finalize
    - gf_hinter_track_process
    - gf_isom_get_mpeg4_subtype
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err HintFile(GF_ISOFile *file, u32 MTUSize, u32 max_ptime, u32 rtp_rate,
      u32 base_flags, Bool copy_data, Bool interleave, Bool regular_iod, Bool single_group,
      Bool hint_no_offset)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_esd
      Src: /src/gpac/applications/mp4box/mp4box.c:3887,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/mp4box.c:3890,1
    - Dst: gf_isom_get_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3896,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/applications/mp4box/mp4box.c:3899,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3900,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3902,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3904,1
    - Dst: gf_isom_get_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3908,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/applications/mp4box/mp4box.c:3916,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3917,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3921,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/mp4box.c:3925,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 42
    argCount: 2
    argNames:
    - file
    - track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3926
      start: 3884
    functionDepth: 1
    functionLinenumber: 3884
    functionLinenumberEnd: 3926
    functionName: check_media_profile
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - gf_m4a_get_config
    - gf_isom_get_esd
    - gf_isom_set_pl_indication
    - gf_isom_get_pl_indication
    - gf_m4v_get_config
    linkageType: ''
    returnType: void
    signature: void check_media_profile(GF_ISOFile *file, u32 track)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:3931,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3935,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3936,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3937,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:3939,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/mp4box.c:3940,1
    - Dst: gf_isom_remove_track_from_root_od
      Src: /src/gpac/applications/mp4box/mp4box.c:3947,1
    - Dst: check_media_profile
      Src: /src/gpac/applications/mp4box/mp4box.c:3948,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/mp4box.c:3953,1
    - Dst: gf_isom_remove_track_from_root_od
      Src: /src/gpac/applications/mp4box/mp4box.c:3955,1
    - Dst: gf_isom_remove_track
      Src: /src/gpac/applications/mp4box/mp4box.c:3963,1
    - Dst: gf_isom_get_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3971,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3971,1
    - Dst: gf_isom_get_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3972,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3972,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3974,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3975,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3976,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3977,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 44
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3978
      start: 3927
    functionDepth: 2
    functionLinenumber: 3927
    functionLinenumberEnd: 3978
    functionName: remove_systems_tracks
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_isom_remove_track
    - gf_isom_get_media_subtype
    - gf_isom_get_track_count
    - gf_isom_set_pl_indication
    - gf_isom_get_pl_indication
    - gf_isom_get_media_type
    - gf_isom_remove_track_from_root_od
    - check_media_profile
    linkageType: ''
    returnType: void
    signature: void remove_systems_tracks(GF_ISOFile *file)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_ext_start
      Src: /src/gpac/applications/mp4box/mp4box.c:3985,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:3986,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:3993,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3996,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3996,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3996,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3996,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3996,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3998,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3998,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3998,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4000,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4000,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4002,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4002,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4004,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4004,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4004,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4006,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4008,1
    - Dst: gf_isom_probe_file
      Src: /src/gpac/applications/mp4box/mp4box.c:4020,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 42
    argCount: 1
    argNames:
    - inName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4023
      start: 3982
    functionDepth: 1
    functionLinenumber: 3982
    functionLinenumberEnd: 4023
    functionName: get_file_type_by_ext
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 3
    functionsReached:
    - gf_isom_probe_file
    - gf_file_ext_start
    - strchr
    - stricmp
    linkageType: ''
    returnType: GF_FileType
    signature: GF_FileType get_file_type_by_ext(char *inName)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dom_new
      Src: /src/gpac/applications/mp4box/mp4box.c:4033,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/applications/mp4box/mp4box.c:4034,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4036,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4037,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4037,1
    - Dst: gf_xml_dom_get_root_idx
      Src: /src/gpac/applications/mp4box/mp4box.c:4040,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4042,1
    - Dst: gf_xml_parse_bit_sequence
      Src: /src/gpac/applications/mp4box/mp4box.c:4046,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4047,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4050,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4050,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/mp4box.c:4055,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:4060,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:4062,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4063,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:4065,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4067,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/mp4box.c:4070,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4071,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4074,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:4077,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 41
    argCount: 3
    argNames:
    - inName
    - outName
    - dump_std
    argTypes:
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4079
      start: 4026
    functionDepth: 1
    functionLinenumber: 4026
    functionLinenumberEnd: 4079
    functionName: xml_bs_to_bin
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_fclose
    - gf_xml_parse_bit_sequence
    - gf_free
    - gf_xml_dom_parse
    - strcpy
    - gf_fwrite
    - gf_xml_dom_get_root_idx
    - gf_xml_dom_new
    - gf_fopen
    - M4_LOG
    - gf_error_to_string
    - gf_xml_dom_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err xml_bs_to_bin(char *inName, char *outName, u32 dump_std)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4088,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4088,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4088,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:4091,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/applications/mp4box/mp4box.c:4093,1
    - Dst: gf_bs_available
      Src: /src/gpac/applications/mp4box/mp4box.c:4094,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:4097,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:4098,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/applications/mp4box/mp4box.c:4101,1
    - Dst: gf_bs_available
      Src: /src/gpac/applications/mp4box/mp4box.c:4104,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/mp4box.c:4106,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:4107,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/applications/mp4box/mp4box.c:4115,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4117,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4118,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 3
    argNames:
    - inName
    - compress_top_boxes
    - mode
    argTypes:
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4121
      start: 4081
    functionDepth: 1
    functionLinenumber: 4081
    functionLinenumberEnd: 4121
    functionName: do_size_top_boxes
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_fclose
    - gf_bs_read_u32
    - strstr
    - gf_bs_del
    - gf_fopen
    - strcmp
    - gf_bs_available
    - gf_bs_from_file
    - gf_bs_read_u64
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: u64
    signature: u64 do_size_top_boxes(char *inName, char *compress_top_boxes, u32 mode)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4136,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4140,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:4144,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:4146,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/mp4box/mp4box.c:4150,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/applications/mp4box/mp4box.c:4152,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/applications/mp4box/mp4box.c:4153,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/applications/mp4box/mp4box.c:4155,1
    - Dst: gf_bs_available
      Src: /src/gpac/applications/mp4box/mp4box.c:4159,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:4161,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:4168,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/mp4box.c:4169,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:4170,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4171,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:4175,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:4176,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/applications/mp4box/mp4box.c:4182,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/applications/mp4box/mp4box.c:4183,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/mp4box.c:4194,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/applications/mp4box/mp4box.c:4196,1
    - Dst: gf_gz_compress_payload
      Src: /src/gpac/applications/mp4box/mp4box.c:4202,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:4212,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/applications/mp4box/mp4box.c:4214,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/applications/mp4box/mp4box.c:4216,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/applications/mp4box/mp4box.c:4220,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:4222,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4223,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4224,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4225,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4226,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4228,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4228,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:4237,1
    - Dst: gf_isom_get_duration
      Src: /src/gpac/applications/mp4box/mp4box.c:4238,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/mp4box.c:4239,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:4242,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/mp4box.c:4244,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/mp4box/mp4box.c:4246,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4257,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4258,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4260,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4263,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4264,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4266,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 96
    argCount: 2
    argNames:
    - inName
    - outName
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4270
      start: 4123
    functionDepth: 1
    functionLinenumber: 4123
    functionLinenumberEnd: 4270
    functionName: do_compress_top_boxes
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_isom_get_timescale
    - gf_isom_get_sample_count
    - gf_bs_get_size
    - gf_isom_get_duration
    - gf_fopen
    - M4_LOG
    - gf_bs_available
    - gf_bs_write_u32
    - fprintf
    - gf_realloc
    - gf_4cc_to_str
    - gf_bs_read_u32
    - gf_isom_get_track_count
    - gf_gz_compress_payload
    - gf_isom_close
    - strstr
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_error_to_string
    - gf_bs_from_file
    - gf_malloc
    - gf_fclose
    - gf_isom_open
    - gf_bs_del
    - strcmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err do_compress_top_boxes(char *inName, char *outName)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_media_get_file_hash
      Src: /src/gpac/applications/mp4box/mp4box.c:4276,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/mp4box.c:4279,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4281,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4283,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4284,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4285,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - name
    - dump_std
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4288
      start: 4272
    functionDepth: 1
    functionLinenumber: 4272
    functionLinenumberEnd: 4288
    functionName: hash_file
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_fwrite
    - gf_media_get_file_hash
    - fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hash_file(char *name, u32 dump_std)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:4296,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4297,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:4299,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4301,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4302,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4303,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/mp4box/mp4box.c:4305,1
    - Dst: gf_ftell
      Src: /src/gpac/applications/mp4box/mp4box.c:4306,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/mp4box/mp4box.c:4307,1
    - Dst: gf_fread
      Src: /src/gpac/applications/mp4box/mp4box.c:4310,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/mp4box.c:4311,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4313,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4317,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4320,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4321,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4322,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4323
      start: 4290
    functionDepth: 1
    functionLinenumber: 4290
    functionLinenumberEnd: 4323
    functionName: do_raw_cat
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_fseek
    - gf_fread
    - gf_fwrite
    - gf_fopen
    - mp4box_cleanup
    - fprintf
    - gf_ftell
    linkageType: ''
    returnType: u32
    signature: u32 do_raw_cat()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_new
      Src: /src/gpac/applications/mp4box/mp4box.c:4330,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/mp4box.c:4332,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:4335,1
    - Dst: gf_sk_bind
      Src: /src/gpac/applications/mp4box/mp4box.c:4337,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4340,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4340,1
    - Dst: gf_sk_send
      Src: /src/gpac/applications/mp4box/mp4box.c:4343,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:4343,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4345,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4345,1
    - Dst: gf_sk_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4349,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4354
      start: 4325
    functionDepth: 2
    functionLinenumber: 4325
    functionLinenumberEnd: 4354
    functionName: do_write_udp
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_sk_send
    - gf_sk_bind
    - gf_sk_new
    - strrchr
    - gf_sk_del
    - M4_LOG
    - gf_error_to_string
    - parse_u32
    - strlen
    linkageType: ''
    returnType: u32
    signature: u32 do_write_udp()
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4363,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4363,1
    - Dst: gf_dm_wget
      Src: /src/gpac/applications/mp4box/mp4box.c:4365,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4370,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4370,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:4371,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4372,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:4377,1
    - Dst: gf_file_basename
      Src: /src/gpac/applications/mp4box/mp4box.c:4379,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/applications/mp4box/mp4box.c:4380,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4382,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:4387,1
    - Dst: strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:4389,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:4390,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4392,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:4393,1
    - Dst: gf_mpd_new
      Src: /src/gpac/applications/mp4box/mp4box.c:4397,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4400,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4400,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4401,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:4403,1
    - Dst: gf_fread
      Src: /src/gpac/applications/mp4box/mp4box.c:4409,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4412,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:4413,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:4415,1
    - Dst: gf_m3u8_to_mpd
      Src: /src/gpac/applications/mp4box/mp4box.c:4420,1
    - Dst: gf_mpd_smooth_to_mpd
      Src: /src/gpac/applications/mp4box/mp4box.c:4422,1
    - Dst: gf_mpd_write_file
      Src: /src/gpac/applications/mp4box/mp4box.c:4427,1
    - Dst: gf_mpd_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4430,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:4432,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4435,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4438,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4438,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4439,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4441,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4442,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 70
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4444
      start: 4357
    functionDepth: 1
    functionLinenumber: 4357
    functionLinenumberEnd: 4444
    functionName: convert_mpd
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_free
    - strcpy
    - strdup
    - gf_fopen
    - M4_LOG
    - mp4box_cleanup
    - gf_file_basename
    - gf_mpd_write_file
    - sprintf
    - gf_m3u8_to_mpd
    - gf_mpd_del
    - gf_fread
    - strstr
    - strnicmp
    - gf_mpd_smooth_to_mpd
    - gf_error_to_string
    - gf_fclose
    - gf_file_ext_start
    - gf_mpd_new
    - gf_file_delete
    - gf_dm_wget
    linkageType: ''
    returnType: u32
    signature: u32 convert_mpd()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/mp4box/mp4box.c:4457,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4459,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4460,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:4463,1
    - Dst: gf_isom_set_timescale
      Src: /src/gpac/applications/mp4box/mp4box.c:4464,1
    - Dst: gf_media_import
      Src: /src/gpac/applications/mp4box/mp4box.c:4469,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4471,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4471,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4472,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4473,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:4474,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4475,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:4478,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:4479,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:4480,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:4480,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:4481,1
    - Dst: dump_isom_timed_text
      Src: /src/gpac/applications/mp4box/mp4box.c:4485,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:4485,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4491,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4492,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:4493,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4495,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4495,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4496,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4498,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4500,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4501,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4503
      start: 4447
    functionDepth: 2
    functionLinenumber: 4447
    functionLinenumberEnd: 4503
    functionName: do_import_sub
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_delete
    - GF_SAFEALLOC
    - dump_isom_timed_text
    - strcpy
    - gf_isom_open
    - gf_file_delete
    - gf_isom_set_timescale
    - M4_LOG
    - mp4box_cleanup
    - gf_error_to_string
    - gf_isom_get_track_id
    - strchr
    - strlen
    - gf_media_import
    linkageType: ''
    returnType: u32
    signature: u32 do_import_sub()
  - BBCount: 52
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:4519,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4524,1
    - Dst: gf_isom_probe_file
      Src: /src/gpac/applications/mp4box/mp4box.c:4525,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:4532,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4534,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4534,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/mp4box.c:4534,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4535,1
    - Dst: gf_isom_freeze_order
      Src: /src/gpac/applications/mp4box/mp4box.c:4539,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/applications/mp4box/mp4box.c:4543,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/applications/mp4box/mp4box.c:4545,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/applications/mp4box/mp4box.c:4550,1
    - Dst: gf_isom_keep_utc_times
      Src: /src/gpac/applications/mp4box/mp4box.c:4557,1
    - Dst: gf_isom_set_storage_mode
      Src: /src/gpac/applications/mp4box/mp4box.c:4563,1
    - Dst: gf_fs_new_defaults
      Src: /src/gpac/applications/mp4box/mp4box.c:4566,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4568,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4569,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4570,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4574,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4576,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4577,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4578,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4579,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4586,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:4594,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:4598,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:4601,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:4602,1
    - Dst: gf_file_exists
      Src: /src/gpac/applications/mp4box/mp4box.c:4608,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:4619,1
    - Dst: import_file
      Src: /src/gpac/applications/mp4box/mp4box.c:4624,1
    - Dst: import_file
      Src: /src/gpac/applications/mp4box/mp4box.c:4626,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4630,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:4631,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4634,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:4635,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4639,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4639,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4640,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4642,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4643,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4653,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4653,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4653,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4655,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4656,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:4663,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4668,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:4672,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4674,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4674,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/mp4box.c:4674,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4675,1
    - Dst: cat_isomedia_file
      Src: /src/gpac/applications/mp4box/mp4box.c:4679,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4679,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4679,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4681,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4681,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4682,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4683,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4690,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4691,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/applications/mp4box/mp4box.c:4693,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:4694,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4696,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4697,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4698,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4699,1
    - Dst: gf_fs_run
      Src: /src/gpac/applications/mp4box/mp4box.c:4702,1
    - Dst: gf_fs_get_last_connect_error
      Src: /src/gpac/applications/mp4box/mp4box.c:4705,1
    - Dst: gf_fs_get_last_process_error
      Src: /src/gpac/applications/mp4box/mp4box.c:4706,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4709,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4709,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4710,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4711,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4712,1
    - Dst: gf_fs_print_non_connected
      Src: /src/gpac/applications/mp4box/mp4box.c:4717,1
    - Dst: gf_fs_print_stats
      Src: /src/gpac/applications/mp4box/mp4box.c:4718,1
    - Dst: gf_fs_print_connections
      Src: /src/gpac/applications/mp4box/mp4box.c:4719,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4720,1
    - Dst: remove_systems_tracks
      Src: /src/gpac/applications/mp4box/mp4box.c:4725,1
    CyclomaticComplexity: 72
    EdgeCount: 72
    ICount: 193
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4730
      start: 4506
    functionDepth: 3
    functionLinenumber: 4506
    functionLinenumberEnd: 4730
    functionName: do_add_cat
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_delete
    - remove_systems_tracks
    - gf_file_exists
    - gf_fs_get_last_process_error
    - gf_fs_run
    - gf_isom_modify_alternate_brand
    - gf_fs_print_stats
    - gf_isom_freeze_order
    - gf_fopen
    - M4_LOG
    - mp4box_cleanup
    - gf_isom_set_brand_info
    - strchr
    - gf_isom_probe_file
    - gf_fs_print_non_connected
    - sprintf
    - gf_isom_get_track_count
    - gf_fs_print_connections
    - gf_url_colon_suffix
    - gf_dynstrcat
    - cat_isomedia_file
    - gf_isom_last_error
    - gf_fs_load_filter
    - strstr
    - gf_error_to_string
    - gf_fs_del
    - gf_isom_set_storage_mode
    - gf_isom_keep_utc_times
    - gf_fclose
    - import_file
    - gf_isom_open
    - gf_fs_get_last_connect_error
    - strcmp
    - gf_fs_new_defaults
    linkageType: ''
    returnType: u32
    signature: u32 do_add_cat(int argc, char **argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:4741,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:4742,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:4743,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:4743,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:4744,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4746,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:4747,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:4749,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:4750,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:4751,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:4751,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:4752,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4754,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:4755,1
    - Dst: EncodeFile
      Src: /src/gpac/applications/mp4box/mp4box.c:4757,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4758,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4766
      start: 4735
    functionDepth: 2
    functionLinenumber: 4735
    functionLinenumberEnd: 4766
    functionName: do_scene_encode
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_fclose
    - strcpy
    - gf_isom_open
    - EncodeFile
    - gf_fopen
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err do_scene_encode()
  - BBCount: 70
    BranchProfiles: []
    Callsites:
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4783,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:4787,1
    - Dst: gf_url_get_resource_name
      Src: /src/gpac/applications/mp4box/mp4box.c:4787,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/mp4box.c:4788,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4790,1
    - Dst: strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:4791,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4794,1
    - Dst: strcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4796,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4800,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4803,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4808,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/applications/mp4box/mp4box.c:4813,1
    - Dst: gf_rand
      Src: /src/gpac/applications/mp4box/mp4box.c:4815,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4816,1
    - Dst: gf_get_default_cache_directory
      Src: /src/gpac/applications/mp4box/mp4box.c:4816,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4821,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4833,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/mp4box/mp4box.c:4837,1
    - Dst: gf_dasher_new
      Src: /src/gpac/applications/mp4box/mp4box.c:4843,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4845,1
    - Dst: gf_dasher_set_info
      Src: /src/gpac/applications/mp4box/mp4box.c:4847,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4849,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4849,1
    - Dst: gf_dasher_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4850,1
    - Dst: gf_dasher_set_start_date
      Src: /src/gpac/applications/mp4box/mp4box.c:4854,1
    - Dst: gf_dasher_set_location
      Src: /src/gpac/applications/mp4box/mp4box.c:4855,1
    - Dst: gf_dasher_add_base_url
      Src: /src/gpac/applications/mp4box/mp4box.c:4857,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4859,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4859,1
    - Dst: gf_dasher_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4860,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4866,1
    - Dst: gf_dasher_enable_url_template
      Src: /src/gpac/applications/mp4box/mp4box.c:4870,1
    - Dst: gf_dasher_enable_segment_timeline
      Src: /src/gpac/applications/mp4box/mp4box.c:4871,1
    - Dst: gf_dasher_enable_single_segment
      Src: /src/gpac/applications/mp4box/mp4box.c:4872,1
    - Dst: gf_dasher_enable_single_file
      Src: /src/gpac/applications/mp4box/mp4box.c:4873,1
    - Dst: gf_dasher_set_switch_mode
      Src: /src/gpac/applications/mp4box/mp4box.c:4874,1
    - Dst: gf_dasher_set_durations
      Src: /src/gpac/applications/mp4box/mp4box.c:4875,1
    - Dst: gf_dasher_enable_rap_splitting
      Src: /src/gpac/applications/mp4box/mp4box.c:4876,1
    - Dst: gf_dasher_set_segment_marker
      Src: /src/gpac/applications/mp4box/mp4box.c:4877,1
    - Dst: gf_dasher_enable_sidx
      Src: /src/gpac/applications/mp4box/mp4box.c:4878,1
    - Dst: gf_dasher_set_dynamic_mode
      Src: /src/gpac/applications/mp4box/mp4box.c:4879,1
    - Dst: gf_dasher_set_min_buffer
      Src: /src/gpac/applications/mp4box/mp4box.c:4880,1
    - Dst: gf_dasher_set_ast_offset
      Src: /src/gpac/applications/mp4box/mp4box.c:4881,1
    - Dst: gf_dasher_enable_memory_fragmenting
      Src: /src/gpac/applications/mp4box/mp4box.c:4882,1
    - Dst: gf_dasher_set_initial_isobmf
      Src: /src/gpac/applications/mp4box/mp4box.c:4883,1
    - Dst: gf_dasher_configure_isobmf_default
      Src: /src/gpac/applications/mp4box/mp4box.c:4884,1
    - Dst: gf_dasher_enable_utc_ref
      Src: /src/gpac/applications/mp4box/mp4box.c:4885,1
    - Dst: gf_dasher_enable_real_time
      Src: /src/gpac/applications/mp4box/mp4box.c:4886,1
    - Dst: gf_dasher_set_content_protection_location_mode
      Src: /src/gpac/applications/mp4box/mp4box.c:4887,1
    - Dst: gf_dasher_set_profile_extension
      Src: /src/gpac/applications/mp4box/mp4box.c:4888,1
    - Dst: gf_dasher_enable_cached_inputs
      Src: /src/gpac/applications/mp4box/mp4box.c:4889,1
    - Dst: gf_dasher_enable_loop_inputs
      Src: /src/gpac/applications/mp4box/mp4box.c:4890,1
    - Dst: gf_dasher_set_split_mode
      Src: /src/gpac/applications/mp4box/mp4box.c:4891,1
    - Dst: gf_dasher_set_last_segment_merge
      Src: /src/gpac/applications/mp4box/mp4box.c:4892,1
    - Dst: gf_dasher_set_hls_clock
      Src: /src/gpac/applications/mp4box/mp4box.c:4893,1
    - Dst: gf_dasher_set_cues
      Src: /src/gpac/applications/mp4box/mp4box.c:4894,1
    - Dst: gf_dasher_print_session_info
      Src: /src/gpac/applications/mp4box/mp4box.c:4895,1
    - Dst: gf_dasher_keep_source_utc
      Src: /src/gpac/applications/mp4box/mp4box.c:4896,1
    - Dst: gf_dasher_add_input
      Src: /src/gpac/applications/mp4box/mp4box.c:4899,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4902,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4902,1
    - Dst: gf_dasher_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4903,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4911,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/mp4box/mp4box.c:4915,1
    - Dst: gf_dasher_set_dynamic_mode
      Src: /src/gpac/applications/mp4box/mp4box.c:4917,1
    - Dst: gf_dasher_process
      Src: /src/gpac/applications/mp4box/mp4box.c:4920,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4922,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4932,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4932,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/mp4box/mp4box.c:4940,1
    - Dst: gf_dasher_next_update_time
      Src: /src/gpac/applications/mp4box/mp4box.c:4941,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4942,1
    - Dst: gf_prompt_has_input
      Src: /src/gpac/applications/mp4box/mp4box.c:4949,1
    - Dst: gf_prompt_get_char
      Src: /src/gpac/applications/mp4box/mp4box.c:4950,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/mp4box/mp4box.c:4970,1
    - Dst: gf_dasher_next_update_time
      Src: /src/gpac/applications/mp4box/mp4box.c:4971,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/mp4box/mp4box.c:4973,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4975,1
    - Dst: gf_dasher_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4984,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/applications/mp4box/mp4box.c:4987,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4989,1
    - Dst: scanf
      Src: /src/gpac/applications/mp4box/mp4box.c:4990,1
    - Dst: gf_file_move
      Src: /src/gpac/applications/mp4box/mp4box.c:4991,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4994,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4994,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4995,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4997,1
    CyclomaticComplexity: 101
    EdgeCount: 101
    ICount: 222
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5001
      start: 4770
    functionDepth: 1
    functionLinenumber: 4770
    functionLinenumberEnd: 5001
    functionName: do_dash
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_isom_delete
    - gf_url_get_resource_name
    - strcpy
    - gf_dasher_enable_segment_timeline
    - gf_dasher_enable_single_file
    - gf_dasher_enable_memory_fragmenting
    - gf_prompt_has_input
    - gf_dasher_set_hls_clock
    - M4_LOG
    - mp4box_cleanup
    - gf_sys_clock
    - strcat
    - gf_get_default_cache_directory
    - gf_dasher_new
    - strrchr
    - gf_dasher_del
    - sprintf
    - gf_dasher_enable_url_template
    - gf_dasher_set_cues
    - gf_dasher_enable_rap_splitting
    - gf_dasher_set_min_buffer
    - gf_dasher_set_initial_isobmf
    - gf_dasher_add_input
    - gf_net_get_utc
    - gf_dasher_print_session_info
    - gf_isom_close
    - gf_dasher_set_switch_mode
    - gf_dasher_enable_sidx
    - gf_sleep
    - gf_sys_is_test_mode
    - gf_dasher_set_profile_extension
    - gf_dasher_next_update_time
    - gf_dasher_set_segment_marker
    - gf_dasher_enable_utc_ref
    - scanf
    - gf_dasher_set_ast_offset
    - gf_error_to_string
    - gf_dasher_enable_single_segment
    - gf_rand
    - gf_dasher_process
    - gf_dasher_set_location
    - gf_prompt_get_char
    - gf_dasher_set_last_segment_merge
    - gf_dasher_enable_real_time
    - gf_dasher_set_info
    - gf_dasher_set_dynamic_mode
    - gf_file_move
    - gf_dasher_enable_cached_inputs
    - gf_dasher_enable_loop_inputs
    - gf_dasher_configure_isobmf_default
    - gf_dasher_set_durations
    - gf_dasher_keep_source_utc
    - gf_dasher_set_content_protection_location_mode
    - gf_file_delete
    - gf_dasher_set_split_mode
    - gf_dasher_set_start_date
    - gf_dasher_add_base_url
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err do_dash()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:5014,1
    - Dst: gf_isom_is_external_track
      Src: /src/gpac/applications/mp4box/mp4box.c:5022,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5022,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5023,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:5034,1
    - Dst: gf_media_export
      Src: /src/gpac/applications/mp4box/mp4box.c:5040,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5047
      start: 5003
    functionDepth: 1
    functionLinenumber: 5003
    functionLinenumberEnd: 5047
    functionName: do_export_tracks_non_isobmf
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_isom_is_external_track
    - sprintf
    - memset
    - M4_LOG
    - gf_media_export
    - gf_isom_get_track_by_id
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err do_export_tracks_non_isobmf()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_root_od
      Src: /src/gpac/applications/mp4box/mp4box.c:5053,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5055,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:5059,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:5060,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5062,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/applications/mp4box/mp4box.c:5067,1
    - Dst: gf_odf_desc_write
      Src: /src/gpac/applications/mp4box/mp4box.c:5068,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/mp4box.c:5070,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:5071,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5076,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/mp4box.c:5078,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:5079,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/mp4box.c:5081,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5084
      start: 5050
    functionDepth: 1
    functionLinenumber: 5050
    functionLinenumberEnd: 5084
    functionName: do_dump_iod
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_desc_write
    - gf_fclose
    - gf_odf_desc_del
    - sprintf
    - gf_fwrite
    - gf_bs_del
    - gf_fopen
    - M4_LOG
    - gf_isom_get_root_od
    - gf_bs_from_file
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err do_dump_iod()
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5088,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5091,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5097,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5099,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5110,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 30
    argCount: 2
    argNames:
    - file
    - tkid
    argTypes:
    - GF_ISOFile*
    - TrackIdentifier*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5113
      start: 5086
    functionDepth: 1
    functionLinenumber: 5086
    functionLinenumberEnd: 5113
    functionName: get_track_id
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 14
    functionsReached:
    - gf_isom_is_video_handler_type
    - gf_isom_get_media_type
    - gf_isom_get_track_id
    - gf_isom_get_track_count
    linkageType: ''
    returnType: u32
    signature: u32 get_track_id(GF_ISOFile *file, TrackIdentifier *tkid)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:5126,1
    - Dst: get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5131,1
    - Dst: gf_isom_is_external_track
      Src: /src/gpac/applications/mp4box/mp4box.c:5133,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5133,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5134,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:5147,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:5150,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5154,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5155,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:5156,1
    - Dst: gf_media_export
      Src: /src/gpac/applications/mp4box/mp4box.c:5159,1
    - Dst: gf_media_export
      Src: /src/gpac/applications/mp4box/mp4box.c:5164,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5172
      start: 5115
    functionDepth: 2
    functionLinenumber: 5115
    functionLinenumberEnd: 5172
    functionName: do_export_tracks
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_isom_is_external_track
    - sprintf
    - get_track_id
    - gf_isom_get_track_count
    - memset
    - gf_isom_get_track_id
    - M4_LOG
    - gf_media_export
    - gf_isom_get_track_by_id
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err do_export_tracks()
  - BBCount: 69
    BranchProfiles: []
    Callsites:
    - Dst: get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5184,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5187,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5190,1
    - Dst: gf_isom_set_meta_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5198,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/applications/mp4box/mp4box.c:5199,1
    - Dst: gf_isom_get_meta_item_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5205,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5206,1
    - Dst: gf_isom_remove_meta_item
      Src: /src/gpac/applications/mp4box/mp4box.c:5209,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5214,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:5217,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:5217,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:5217,1
    - Dst: gf_isom_add_meta_item2
      Src: /src/gpac/applications/mp4box/mp4box.c:5218,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5226,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5228,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/mp4box.c:5229,1
    - Dst: gf_isom_meta_add_item_ref
      Src: /src/gpac/applications/mp4box/mp4box.c:5230,1
    - Dst: gf_isom_meta_add_item_group
      Src: /src/gpac/applications/mp4box/mp4box.c:5234,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5240,1
    - Dst: gf_isom_probe_file
      Src: /src/gpac/applications/mp4box/mp4box.c:5257,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:5258,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5259,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/mp4box/mp4box.c:5260,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:5263,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:5270,1
    - Dst: gf_isom_probe_file
      Src: /src/gpac/applications/mp4box/mp4box.c:5273,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:5275,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/mp4box.c:5276,1
    - Dst: gf_isom_disable_brand_rewrite
      Src: /src/gpac/applications/mp4box/mp4box.c:5282,1
    - Dst: import_file
      Src: /src/gpac/applications/mp4box/mp4box.c:5283,1
    - Dst: gf_isom_disable_brand_rewrite
      Src: /src/gpac/applications/mp4box/mp4box.c:5284,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5287,1
    - Dst: gf_isom_get_meta_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5291,1
    - Dst: gf_isom_set_meta_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5293,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5296,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/mp4box.c:5296,1
    - Dst: gf_isom_meta_get_next_item_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5302,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5307,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5308,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5308,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5309,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5315,1
    - Dst: gf_isom_get_meta_item_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5321,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5322,1
    - Dst: gf_isom_remove_meta_item
      Src: /src/gpac/applications/mp4box/mp4box.c:5325,1
    - Dst: gf_isom_iff_create_image_item_from_track
      Src: /src/gpac/applications/mp4box/mp4box.c:5329,1
    - Dst: gf_isom_set_meta_primary_item
      Src: /src/gpac/applications/mp4box/mp4box.c:5332,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5334,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5336,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/mp4box.c:5337,1
    - Dst: gf_isom_meta_add_item_ref
      Src: /src/gpac/applications/mp4box/mp4box.c:5338,1
    - Dst: gf_isom_meta_add_item_group
      Src: /src/gpac/applications/mp4box/mp4box.c:5342,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:5348,1
    - Dst: gf_isom_remove_track
      Src: /src/gpac/applications/mp4box/mp4box.c:5351,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5353,1
    - Dst: gf_isom_get_meta_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5362,1
    - Dst: gf_isom_set_meta_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5365,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5368,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/mp4box.c:5368,1
    - Dst: gf_isom_meta_get_next_item_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5374,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:5377,1
    - Dst: gf_isom_iff_create_image_grid_item
      Src: /src/gpac/applications/mp4box/mp4box.c:5378,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5379,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:5382,1
    - Dst: gf_isom_iff_create_image_overlay_item
      Src: /src/gpac/applications/mp4box/mp4box.c:5383,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5384,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:5387,1
    - Dst: gf_isom_iff_create_image_identity_item
      Src: /src/gpac/applications/mp4box/mp4box.c:5388,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5389,1
    - Dst: gf_isom_set_meta_primary_item
      Src: /src/gpac/applications/mp4box/mp4box.c:5397,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5400,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5402,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/mp4box.c:5403,1
    - Dst: gf_isom_meta_add_item_ref
      Src: /src/gpac/applications/mp4box/mp4box.c:5404,1
    - Dst: gf_isom_meta_add_item_group
      Src: /src/gpac/applications/mp4box/mp4box.c:5409,1
    - Dst: gf_isom_remove_meta_item
      Src: /src/gpac/applications/mp4box/mp4box.c:5417,1
    - Dst: gf_isom_set_meta_primary_item
      Src: /src/gpac/applications/mp4box/mp4box.c:5421,1
    - Dst: gf_isom_set_meta_xml
      Src: /src/gpac/applications/mp4box/mp4box.c:5426,1
    - Dst: gf_isom_get_meta_item_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5430,1
    - Dst: gf_isom_remove_meta_xml
      Src: /src/gpac/applications/mp4box/mp4box.c:5431,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5434,1
    - Dst: gf_isom_get_meta_item_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5439,1
    - Dst: gf_isom_extract_meta_item
      Src: /src/gpac/applications/mp4box/mp4box.c:5440,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5440,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5442,1
    - Dst: gf_isom_has_meta_xml
      Src: /src/gpac/applications/mp4box/mp4box.c:5449,1
    - Dst: gf_isom_extract_meta_xml
      Src: /src/gpac/applications/mp4box/mp4box.c:5450,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5452,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5460,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:5461,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/applications/mp4box/mp4box.c:5461,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/mp4box/mp4box.c:5463,1
    CyclomaticComplexity: 112
    EdgeCount: 112
    ICount: 254
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5470
      start: 5174
    functionDepth: 2
    functionLinenumber: 5174
    functionLinenumberEnd: 5470
    functionName: do_meta_act
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_delete
    - GF_SAFEALLOC
    - gf_isom_meta_get_next_item_id
    - gf_isom_modify_alternate_brand
    - gf_isom_extract_meta_item
    - get_track_id
    - gf_list_count
    - gf_isom_get_track_id
    - gf_isom_iff_create_image_grid_item
    - M4_LOG
    - gf_isom_iff_create_image_overlay_item
    - gf_isom_get_meta_item_count
    - gf_isom_iff_create_image_identity_item
    - gf_isom_get_track_by_id
    - gf_isom_remove_meta_item
    - gf_isom_probe_file
    - gf_list_get
    - gf_4cc_to_str
    - gf_isom_remove_track
    - gf_list_pop_back
    - gf_isom_meta_add_item_group
    - gf_isom_get_meta_type
    - gf_isom_get_track_count
    - gf_isom_iff_create_image_item_from_track
    - gf_isom_extract_meta_xml
    - stricmp
    - gf_isom_get_media_type
    - gf_isom_disable_brand_rewrite
    - gf_isom_last_error
    - gf_isom_remove_meta_xml
    - GF_LOG
    - gf_isom_is_video_handler_type
    - strlen
    - gf_list_del
    - gf_isom_has_meta_xml
    - gf_isom_add_meta_item2
    - import_file
    - gf_isom_set_meta_xml
    - gf_isom_meta_add_item_ref
    - gf_isom_open
    - gf_isom_set_meta_type
    - gf_isom_get_meta_item_by_id
    - GF_4CC
    - gf_isom_set_meta_primary_item
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err do_meta_act()
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5478,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5480,1
    - Dst: get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5487,1
    - Dst: gf_isom_set_track_switch_parameter
      Src: /src/gpac/applications/mp4box/mp4box.c:5488,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5489,1
    - Dst: gf_isom_get_track_switch_group_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5496,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5496,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5498,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5500,1
    - Dst: gf_isom_reset_track_switch_parameter
      Src: /src/gpac/applications/mp4box/mp4box.c:5507,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5507,1
    - Dst: gf_isom_reset_track_switch_parameter
      Src: /src/gpac/applications/mp4box/mp4box.c:5512,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5512,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5524
      start: 5472
    functionDepth: 2
    functionLinenumber: 5472
    functionLinenumberEnd: 5524
    functionName: do_tsel_act
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - get_track_id
    - M4_LOG
    - gf_isom_set_track_switch_parameter
    - gf_isom_get_track_by_id
    - gf_isom_get_track_switch_group_count
    - gf_isom_reset_track_switch_parameter
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err do_tsel_act()
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5530,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5532,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5533,1
    - Dst: gf_isom_set_ipod_compatible
      Src: /src/gpac/applications/mp4box/mp4box.c:5539,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/applications/mp4box/mp4box.c:5543,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/mp4box.c:5547,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5550,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5551,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/applications/mp4box/mp4box.c:5555,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5567,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/applications/mp4box/mp4box.c:5572,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/applications/mp4box/mp4box.c:5573,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5576
      start: 5526
    functionDepth: 1
    functionLinenumber: 5526
    functionLinenumberEnd: 5576
    functionName: do_ipod_conv
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_media_subtype
    - gf_isom_modify_alternate_brand
    - gf_isom_get_reference_count
    - gf_isom_get_track_count
    - gf_isom_get_reference
    - gf_isom_set_media_type
    - M4_LOG
    - gf_isom_set_ipod_compatible
    - gf_isom_set_brand_info
    - gf_isom_get_media_type
    linkageType: ''
    returnType: void
    signature: void do_ipod_conv()
  - BBCount: 63
    BranchProfiles: []
    Callsites:
    - Dst: get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5586,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5587,1
    - Dst: gf_isom_is_external_track
      Src: /src/gpac/applications/mp4box/mp4box.c:5589,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5590,1
    - Dst: get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5594,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/mp4box.c:5596,1
    - Dst: gf_isom_remove_track
      Src: /src/gpac/applications/mp4box/mp4box.c:5599,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5601,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:5601,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5603,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5608,1
    - Dst: gf_isom_set_media_language
      Src: /src/gpac/applications/mp4box/mp4box.c:5610,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5617,1
    - Dst: gf_isom_add_track_kind
      Src: /src/gpac/applications/mp4box/mp4box.c:5619,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5626,1
    - Dst: gf_isom_remove_track_kind
      Src: /src/gpac/applications/mp4box/mp4box.c:5628,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/applications/mp4box/mp4box.c:5638,1
    - Dst: gf_isom_get_track_duration
      Src: /src/gpac/applications/mp4box/mp4box.c:5640,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5641,1
    - Dst: gf_isom_append_edit
      Src: /src/gpac/applications/mp4box/mp4box.c:5645,1
    - Dst: gf_isom_append_edit
      Src: /src/gpac/applications/mp4box/mp4box.c:5647,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/mp4box.c:5655,1
    - Dst: gf_isom_append_edit
      Src: /src/gpac/applications/mp4box/mp4box.c:5656,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5660,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5663,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/applications/mp4box/mp4box.c:5664,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5670,1
    - Dst: gf_isom_is_media_encrypted
      Src: /src/gpac/applications/mp4box/mp4box.c:5672,1
    - Dst: gf_isom_is_ismacryp_media
      Src: /src/gpac/applications/mp4box/mp4box.c:5673,1
    - Dst: gf_isom_change_ismacryp_protection
      Src: /src/gpac/applications/mp4box/mp4box.c:5674,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5680,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5681,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5686,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5688,1
    - Dst: gf_isom_set_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5690,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5695,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5701,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5702,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5704,1
    - Dst: gf_isom_set_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5706,1
    - Dst: gf_isom_set_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5708,1
    - Dst: gf_isom_set_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5710,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5715,1
    - Dst: gf_media_change_par
      Src: /src/gpac/applications/mp4box/mp4box.c:5719,1
    - Dst: gf_isom_set_clean_aperture
      Src: /src/gpac/applications/mp4box/mp4box.c:5723,1
    - Dst: gf_isom_set_track_matrix
      Src: /src/gpac/applications/mp4box/mp4box.c:5727,1
    - Dst: gf_isom_set_handler_name
      Src: /src/gpac/applications/mp4box/mp4box.c:5731,1
    - Dst: gf_isom_is_track_enabled
      Src: /src/gpac/applications/mp4box/mp4box.c:5735,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/applications/mp4box/mp4box.c:5736,1
    - Dst: gf_isom_is_track_enabled
      Src: /src/gpac/applications/mp4box/mp4box.c:5741,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/applications/mp4box/mp4box.c:5742,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/applications/mp4box/mp4box.c:5748,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:5748,1
    - Dst: gf_isom_remove_track_reference
      Src: /src/gpac/applications/mp4box/mp4box.c:5750,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:5750,1
    - Dst: gf_media_remove_non_rap
      Src: /src/gpac/applications/mp4box/mp4box.c:5754,1
    - Dst: gf_media_remove_non_rap
      Src: /src/gpac/applications/mp4box/mp4box.c:5758,1
    - Dst: set_file_udta
      Src: /src/gpac/applications/mp4box/mp4box.c:5762,1
    - Dst: apply_edits
      Src: /src/gpac/applications/mp4box/mp4box.c:5767,1
    - Dst: gf_isom_set_creation_time
      Src: /src/gpac/applications/mp4box/mp4box.c:5775,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5777,1
    - Dst: gf_isom_set_track_creation_time
      Src: /src/gpac/applications/mp4box/mp4box.c:5778,1
    - Dst: gf_isom_set_track_creation_time
      Src: /src/gpac/applications/mp4box/mp4box.c:5782,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5787,1
    - Dst: gf_isom_set_media_creation_time
      Src: /src/gpac/applications/mp4box/mp4box.c:5789,1
    CyclomaticComplexity: 86
    EdgeCount: 86
    ICount: 223
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5803
      start: 5578
    functionDepth: 2
    functionLinenumber: 5578
    functionLinenumberEnd: 5803
    functionName: do_track_act
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_timescale
    - gf_isom_set_track_creation_time
    - gf_isom_set_clean_aperture
    - get_track_id
    - gf_isom_set_track_matrix
    - gf_media_remove_non_rap
    - M4_LOG
    - gf_isom_get_track_by_id
    - set_file_udta
    - gf_isom_is_external_track
    - gf_isom_remove_track
    - gf_isom_get_track_duration
    - gf_isom_get_track_count
    - gf_isom_set_media_language
    - gf_isom_remove_track_kind
    - gf_isom_set_track_enabled
    - GF_4CC
    - gf_isom_remove_edits
    - gf_isom_append_edit
    - gf_media_change_par
    - gf_isom_is_media_encrypted
    - gf_error_to_string
    - gf_isom_get_edits_count
    - gf_isom_change_ismacryp_protection
    - gf_isom_set_media_creation_time
    - gf_isom_set_creation_time
    - gf_isom_set_handler_name
    - gf_isom_is_track_enabled
    - gf_isom_add_track_kind
    - gf_isom_remove_track_reference
    - gf_isom_is_ismacryp_media
    - gf_isom_get_media_timescale
    - gf_isom_set_track_id
    - apply_edits
    - gf_isom_set_track_reference
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err do_track_act()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_media_isom_apply_qt_key
      Src: /src/gpac/applications/mp4box/mp4box.c:5810,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - name
    - val
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5817
      start: 5807
    functionDepth: 1
    functionLinenumber: 5807
    functionLinenumberEnd: 5817
    functionName: do_qt_keys
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_media_isom_apply_qt_key
    linkageType: ''
    returnType: Bool
    signature: Bool do_qt_keys(char *name, char *val)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_exists
      Src: /src/gpac/applications/mp4box/mp4box.c:5826,1
    - Dst: gf_file_load_data
      Src: /src/gpac/applications/mp4box/mp4box.c:5828,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:5839,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:5839,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:5841,1
    - Dst: gf_itags_find_by_name
      Src: /src/gpac/applications/mp4box/mp4box.c:5843,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5846,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5850,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:5853,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:5856,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5860,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5861,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:5870,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:5870,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:5872,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:5874,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:5874,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:5876,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:5878,1
    - Dst: gf_itags_find_by_name
      Src: /src/gpac/applications/mp4box/mp4box.c:5881,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5883,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:5884,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5886,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:5887,1
    - Dst: do_qt_keys
      Src: /src/gpac/applications/mp4box/mp4box.c:5894,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5895,1
    - Dst: gf_itags_get_itag
      Src: /src/gpac/applications/mp4box/mp4box.c:5900,1
    - Dst: gf_itags_get_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5901,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:5907,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5911,1
    - Dst: gf_isom_apple_set_tag
      Src: /src/gpac/applications/mp4box/mp4box.c:5919,1
    - Dst: gf_isom_set_qt_key
      Src: /src/gpac/applications/mp4box/mp4box.c:5920,1
    - Dst: gf_isom_wma_set_tag
      Src: /src/gpac/applications/mp4box/mp4box.c:5924,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5928,1
    - Dst: gf_file_load_data
      Src: /src/gpac/applications/mp4box/mp4box.c:5932,1
    - Dst: gf_isom_apple_set_tag
      Src: /src/gpac/applications/mp4box/mp4box.c:5936,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:5938,1
    - Dst: gf_isom_apple_set_tag
      Src: /src/gpac/applications/mp4box/mp4box.c:5940,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5943,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:5943,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:5956,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 127
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5961
      start: 5819
    functionDepth: 2
    functionLinenumber: 5819
    functionLinenumberEnd: 5961
    functionName: do_itunes_tag
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_itags_get_type
    - gf_file_exists
    - gf_isom_apple_set_tag
    - gf_itags_find_by_name
    - M4_LOG
    - strchr
    - strncmp
    - gf_url_colon_suffix
    - stricmp
    - gf_isom_wma_set_tag
    - gf_isom_set_qt_key
    - gf_error_to_string
    - do_qt_keys
    - strlen
    - strcmp
    - gf_itags_get_itag
    - GF_4CC
    - gf_file_load_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err do_itunes_tag()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5968,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5970,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5971,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5973,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5975,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5976,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/applications/mp4box/mp4box.c:5980,1
    - Dst: gf_isom_sdp_add_track_line
      Src: /src/gpac/applications/mp4box/mp4box.c:5989,1
    - Dst: gf_isom_sdp_add_line
      Src: /src/gpac/applications/mp4box/mp4box.c:5992,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5996
      start: 5964
    functionDepth: 2
    functionLinenumber: 5964
    functionLinenumberEnd: 5996
    functionName: set_sdp_ext
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_isom_sdp_add_track_line
    - gf_isom_sdp_add_line
    - gf_isom_get_reference
    - gf_isom_get_reference_count
    - gf_isom_get_track_count
    - get_track_id
    - gf_isom_get_track_by_id
    - gf_isom_get_media_type
    linkageType: ''
    returnType: void
    signature: void set_sdp_ext()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:6003,1
    - Dst: gf_media_export
      Src: /src/gpac/applications/mp4box/mp4box.c:6008,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6012
      start: 5999
    functionDepth: 1
    functionLinenumber: 5999
    functionLinenumberEnd: 6012
    functionName: do_remux_file
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_media_export
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err do_remux_file()
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6016,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6020,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6026,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6027,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6028,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6029,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6030,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6033,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6034,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6035,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6036,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6039,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6046,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6048,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6050,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6052,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6054,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6056,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6060,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6064,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6068,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6077,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6079,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6083,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6085,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6089,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6091,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6095,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6097,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6101,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6103,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6105,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6106,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6107,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6108,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6109,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6110,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6111,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6115,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6117,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6120,1
    - Dst: gf_sys_get_argc
      Src: /src/gpac/applications/mp4box/mp4box.c:6124,1
    - Dst: gf_sys_is_arg_used
      Src: /src/gpac/applications/mp4box/mp4box.c:6126,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6128,1
    - Dst: gf_sys_get_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:6128,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6131,1
    - Dst: gf_sys_get_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:6131,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:6136,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/mp4box/mp4box.c:6137,1
    - Dst: gf_memory_size
      Src: /src/gpac/applications/mp4box/mp4box.c:6140,1
    - Dst: gf_file_handles_count
      Src: /src/gpac/applications/mp4box/mp4box.c:6140,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/mp4box.c:6141,1
    - Dst: gf_memory_print
      Src: /src/gpac/applications/mp4box/mp4box.c:6142,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 140
    argCount: 1
    argNames:
    - ret_code
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6147
      start: 6014
    functionDepth: 1
    functionLinenumber: 6014
    functionLinenumberEnd: 6147
    functionName: mp4box_cleanup
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 6
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_sys_close
    - GF_LOG
    - gf_memory_size
    - gf_sys_is_arg_used
    - gf_memory_print
    - gf_sys_get_arg
    - gf_log_set_tool_level
    - gf_file_handles_count
    - gf_sys_get_argc
    linkageType: ''
    returnType: u32
    signature: u32 mp4box_cleanup(u32 ret_code)
  - BBCount: 104
    BranchProfiles: []
    Callsites:
    - Dst: init_global_vars
      Src: /src/gpac/applications/mp4box/mp4box.c:6157,1
    - Dst: mp4box_parse_single_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:6161,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:6165,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:6165,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:6167,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6169,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:6173,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6177,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:6181,1
    - Dst: _set_output_format
      Src: /src/gpac/applications/mp4box/mp4box.c:6186,1
    - Dst: gf_sys_init
      Src: /src/gpac/applications/mp4box/mp4box.c:6190,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/mp4box/mp4box.c:6193,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6197,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6198,1
    - Dst: gf_gpac_version
      Src: /src/gpac/applications/mp4box/mp4box.c:6199,1
    - Dst: gf_gpac_copyright_cite
      Src: /src/gpac/applications/mp4box/mp4box.c:6199,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/mp4box/mp4box.c:6200,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/mp4box.c:6207,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/mp4box.c:6208,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/mp4box.c:6209,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/mp4box.c:6210,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/mp4box.c:6211,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/mp4box.c:6212,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/mp4box.c:6215,1
    - Dst: gf_sys_set_args
      Src: /src/gpac/applications/mp4box/mp4box.c:6218,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6220,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:6220,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6221,1
    - Dst: mp4box_parse_args
      Src: /src/gpac/applications/mp4box/mp4box.c:6224,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6226,1
    - Dst: live_session
      Src: /src/gpac/applications/mp4box/mp4box.c:6230,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6231,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6253,1
    - Dst: PrintUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:6255,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6257,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:6259,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:6260,1
    - Dst: _setmode
      Src: /src/gpac/applications/mp4box/mp4box.c:6279,1
    - Dst: _fileno
      Src: /src/gpac/applications/mp4box/mp4box.c:6279,1
    - Dst: freopen
      Src: /src/gpac/applications/mp4box/mp4box.c:6281,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6284,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6285,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:6290,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/mp4box/mp4box.c:6291,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:6292,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/mp4box/mp4box.c:6293,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:6294,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/mp4box/mp4box.c:6295,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6296,1
    - Dst: do_raw_cat
      Src: /src/gpac/applications/mp4box/mp4box.c:6300,1
    - Dst: do_size_top_boxes
      Src: /src/gpac/applications/mp4box/mp4box.c:6304,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:6305,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6306,1
    - Dst: do_compress_top_boxes
      Src: /src/gpac/applications/mp4box/mp4box.c:6308,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6309,1
    - Dst: rip_mpd
      Src: /src/gpac/applications/mp4box/mp4box.c:6314,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6315,1
    - Dst: gf_dm_wget
      Src: /src/gpac/applications/mp4box/mp4box.c:6320,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6325,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:6325,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6326,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6328,1
    - Dst: do_write_udp
      Src: /src/gpac/applications/mp4box/mp4box.c:6332,1
    - Dst: convert_mpd
      Src: /src/gpac/applications/mp4box/mp4box.c:6336,1
    - Dst: set_dash_input
      Src: /src/gpac/applications/mp4box/mp4box.c:6340,1
    - Dst: get_file_type_by_ext
      Src: /src/gpac/applications/mp4box/mp4box.c:6344,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:6360,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:6360,1
    - Dst: do_import_sub
      Src: /src/gpac/applications/mp4box/mp4box.c:6365,1
    - Dst: do_add_cat
      Src: /src/gpac/applications/mp4box/mp4box.c:6370,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6378,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6379,1
    - Dst: EncodeFileChunk
      Src: /src/gpac/applications/mp4box/mp4box.c:6381,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6383,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:6383,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6384,1
    - Dst: do_scene_encode
      Src: /src/gpac/applications/mp4box/mp4box.c:6392,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:6400,1
    - Dst: package_file
      Src: /src/gpac/applications/mp4box/mp4box.c:6403,1
    - Dst: package_file
      Src: /src/gpac/applications/mp4box/mp4box.c:6406,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6409,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6410,1
    - Dst: do_dash
      Src: /src/gpac/applications/mp4box/mp4box.c:6419,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6420,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6421,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/applications/mp4box/mp4box.c:6437,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:6438,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6440,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:6444,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:6449,1
    - Dst: get_file_type_by_ext
      Src: /src/gpac/applications/mp4box/mp4box.c:6451,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:6461,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:6464,1
    - Dst: gf_isom_open_segment
      Src: /src/gpac/applications/mp4box/mp4box.c:6467,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6472,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:6472,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6474,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:6474,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:6475,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:6481,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/mp4box.c:6483,1
    - Dst: gf_isom_open_progressive
      Src: /src/gpac/applications/mp4box/mp4box.c:6485,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6486,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:6491,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6496,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:6496,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/mp4box.c:6496,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6497,1
    - Dst: gf_isom_freeze_order
      Src: /src/gpac/applications/mp4box/mp4box.c:6502,1
    - Dst: gf_isom_probe_file
      Src: /src/gpac/applications/mp4box/mp4box.c:6522,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:6534,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/mp4box/mp4box.c:6535,1
    - Dst: gf_media_import
      Src: /src/gpac/applications/mp4box/mp4box.c:6540,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6545,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:6545,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:6546,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:6547,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6548,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6549,1
    - Dst: dump_mpeg2_ts
      Src: /src/gpac/applications/mp4box/mp4box.c:6556,1
    - Dst: dump_mpeg2_ts
      Src: /src/gpac/applications/mp4box/mp4box.c:6560,1
    - Dst: xml_bs_to_bin
      Src: /src/gpac/applications/mp4box/mp4box.c:6563,1
    - Dst: hash_file
      Src: /src/gpac/applications/mp4box/mp4box.c:6565,1
    - Dst: convert_file_info
      Src: /src/gpac/applications/mp4box/mp4box.c:6568,1
    - Dst: do_remux_file
      Src: /src/gpac/applications/mp4box/mp4box.c:6573,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:6575,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6578,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6579,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:6586,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6589,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:6589,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6590,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6592,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6593,1
    CyclomaticComplexity: 144
    EdgeCount: 144
    ICount: 341
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6596
      start: 6151
    functionDepth: 5
    functionLinenumber: 6151
    functionLinenumberEnd: 6596
    functionName: mp4box_main
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 3
    functionsReached:
    - gf_free
    - do_scene_encode
    - convert_file_info
    - gf_opts_set_key
    - gf_isom_delete
    - convert_mpd
    - gf_gpac_copyright_cite
    - GF_SAFEALLOC
    - _fileno
    - PrintUsage
    - gf_isom_freeze_order
    - live_session
    - gf_fopen
    - M4_LOG
    - gf_sys_set_args
    - mp4box_cleanup
    - gf_sys_close
    - set_dash_input
    - strchr
    - freopen
    - fprintf
    - do_import_sub
    - do_compress_top_boxes
    - do_write_udp
    - gf_isom_probe_file
    - do_add_cat
    - _setmode
    - mp4box_parse_single_arg
    - dump_mpeg2_ts
    - do_size_top_boxes
    - _set_output_format
    - strncmp
    - do_raw_cat
    - gf_url_colon_suffix
    - gf_isom_close
    - gf_isom_last_error
    - do_dash
    - strstr
    - gf_isom_open_segment
    - gf_error_to_string
    - gf_log_set_tool_level
    - package_file
    - init_global_vars
    - gf_isom_open_progressive
    - gf_media_import
    - gf_fclose
    - mp4box_parse_args
    - xml_bs_to_bin
    - gf_isom_open
    - gf_sys_init
    - rip_mpd
    - EncodeFileChunk
    - hash_file
    - gf_gpac_version
    - strcmp
    - gf_file_ext_start
    - gf_file_delete
    - gf_dm_wget
    - do_remux_file
    - get_file_type_by_ext
    linkageType: ''
    returnType: int
    signature: int mp4box_main(int argc, char **argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6378,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6379,1
    - Dst: EncodeFileChunk
      Src: /src/gpac/applications/mp4box/mp4box.c:6381,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6383,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:6383,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6384,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6387
      start: 6376
    functionDepth: 3
    functionLinenumber: 6376
    functionLinenumberEnd: 6387
    functionName: if
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - EncodeFileChunk
    - M4_LOG
    - mp4box_cleanup
    - gf_error_to_string
    linkageType: ''
    returnType: else
    signature: else if (chunk_mode)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: do_scene_encode
      Src: /src/gpac/applications/mp4box/mp4box.c:6392,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6395
      start: 6390
    functionDepth: 3
    functionLinenumber: 6390
    functionLinenumberEnd: 6395
    functionName: if
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - do_scene_encode
    linkageType: ''
    returnType: else
    signature: else if (encode)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:6400,1
    - Dst: package_file
      Src: /src/gpac/applications/mp4box/mp4box.c:6403,1
    - Dst: package_file
      Src: /src/gpac/applications/mp4box/mp4box.c:6406,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6409,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6410,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6415
      start: 6398
    functionDepth: 2
    functionLinenumber: 6398
    functionLinenumberEnd: 6415
    functionName: if
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - package_file
    - mp4box_cleanup
    - M4_LOG
    - gf_url_colon_suffix
    linkageType: ''
    returnType: else
    signature: else if (pack_file)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:6586,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6588
      start: 6585
    functionDepth: 1
    functionLinenumber: 6585
    functionLinenumberEnd: 6588
    functionName: if
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_isom_open
    linkageType: ''
    returnType: else
    signature: else if (open_edit)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/mp4box/live.c:84,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/mp4box/live.c:85,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/live.c:88,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/live.c:90,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 2
    argNames:
    - sess
    - timeout
    argTypes:
    - LiveSession*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 111
    functionName: next_carousel
    functionSourceFile: /src/gpac/applications/mp4box/live.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_sys_clock
    linkageType: ''
    returnType: RTPChannel
    signature: RTPChannel *next_carousel(LiveSession *sess, u32 *timeout)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/applications/mp4box/live.c:120,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/live.c:126,1
    - Dst: memcpy
      Src: /src/gpac/applications/mp4box/live.c:129,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/mp4box/live.c:132,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/live.c:133,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/mp4box/live.c:140,1
    - Dst: gf_rtp_streamer_send_au_with_sn
      Src: /src/gpac/applications/mp4box/live.c:144,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/live.c:146,1
    - Dst: gf_rtp_streamer_send_rtcp
      Src: /src/gpac/applications/mp4box/live.c:149,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 5
    argNames:
    - calling_object
    - ESID
    - data
    - size
    - ts
    argTypes:
    - void*
    - u16
    - u8*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 154
    functionName: live_session_callback
    functionSourceFile: /src/gpac/applications/mp4box/live.c
    functionUses: 0
    functionsReached:
    - gf_rtp_streamer_send_rtcp
    - gf_rtp_streamer_send_au_with_sn
    - memcpy
    - gf_list_enum
    - gf_sys_clock
    - fprintf
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void live_session_callback(void *calling_object, u16 ESID, u8 *data,
      u32 size, u64 ts)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/mp4box/live.c:158,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/mp4box/live.c:162,1
    - Dst: gf_rtp_streamer_send_au_with_sn
      Src: /src/gpac/applications/mp4box/live.c:164,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/live.c:166,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/mp4box/live.c:169,1
    - Dst: gf_rtp_streamer_send_rtcp
      Src: /src/gpac/applications/mp4box/live.c:170,1
    - Dst: gf_list_enum
      Src: /src/gpac/applications/mp4box/live.c:175,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/mp4box/live.c:178,1
    - Dst: gf_rtp_streamer_send_au_with_sn
      Src: /src/gpac/applications/mp4box/live.c:182,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/live.c:184,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/mp4box/live.c:187,1
    - Dst: gf_rtp_streamer_send_rtcp
      Src: /src/gpac/applications/mp4box/live.c:188,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 2
    argNames:
    - livesess
    - ch
    argTypes:
    - LiveSession*
    - RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 193
    functionName: live_session_send_carousel
    functionSourceFile: /src/gpac/applications/mp4box/live.c
    functionUses: 0
    functionsReached:
    - gf_rtp_streamer_send_rtcp
    - gf_rtp_streamer_send_au_with_sn
    - gf_list_enum
    - gf_sys_clock
    - fprintf
    linkageType: ''
    returnType: void
    signature: void live_session_send_carousel(LiveSession *livesess, RTPChannel *ch)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_seng_get_stream_count
      Src: /src/gpac/applications/mp4box/live.c:198,1
    - Dst: gf_seng_get_base64_iod
      Src: /src/gpac/applications/mp4box/live.c:200,1
    - Dst: gf_rtp_streamer_format_sdp_header
      Src: /src/gpac/applications/mp4box/live.c:201,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/live.c:202,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/applications/mp4box/live.c:205,1
    - Dst: gf_seng_get_iod
      Src: /src/gpac/applications/mp4box/live.c:206,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/live.c:207,1
    - Dst: gf_seng_get_stream_config
      Src: /src/gpac/applications/mp4box/live.c:215,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/mp4box/live.c:217,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/live.c:219,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/mp4box/live.c:223,1
    - Dst: gf_rtp_streamer_new
      Src: /src/gpac/applications/mp4box/live.c:228,1
    - Dst: gf_rtp_streamer_disable_auto_rtcp
      Src: /src/gpac/applications/mp4box/live.c:233,1
    - Dst: gf_rtp_streamer_new
      Src: /src/gpac/applications/mp4box/live.c:238,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/mp4box/live.c:243,1
    - Dst: gf_rtp_streamer_append_sdp
      Src: /src/gpac/applications/mp4box/live.c:248,1
    - Dst: gf_seng_get_stream_carousel_info
      Src: /src/gpac/applications/mp4box/live.c:251,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/live.c:255,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/live.c:256,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/live.c:257,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/live.c:258,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 44
    argCount: 7
    argNames:
    - livesess
    - ip
    - port
    - path_mtu
    - ttl
    - ifce_addr
    - sdp_name
    argTypes:
    - LiveSession*
    - char*
    - u16
    - u32
    - u32
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 195
    functionDepth: 1
    functionLinenumber: 195
    functionLinenumberEnd: 261
    functionName: live_session_setup
    functionSourceFile: /src/gpac/applications/mp4box/live.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_desc_del
    - GF_SAFEALLOC
    - gf_fopen
    - gf_rtp_streamer_disable_auto_rtcp
    - gf_sys_clock
    - fprintf
    - gf_sys_is_cov_mode
    - gf_rtp_streamer_new
    - gf_seng_get_stream_config
    - gf_seng_get_iod
    - gf_list_add
    - gf_seng_get_base64_iod
    - gf_seng_get_stream_count
    - gf_rtp_streamer_format_sdp_header
    - GF_LOG
    - gf_fclose
    - gf_rtp_streamer_append_sdp
    - gf_seng_get_stream_carousel_info
    linkageType: ''
    returnType: Bool
    signature: Bool live_session_setup(LiveSession *livesess, char *ip, u16 port,
      u32 path_mtu, u32 ttl, char *ifce_addr, char *sdp_name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_seng_terminate
      Src: /src/gpac/applications/mp4box/live.c:265,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/live.c:268,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/live.c:269,1
    - Dst: gf_list_rem
      Src: /src/gpac/applications/mp4box/live.c:270,1
    - Dst: gf_rtp_streamer_del
      Src: /src/gpac/applications/mp4box/live.c:271,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/live.c:272,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/live.c:273,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/mp4box/live.c:275,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - livesess
    argTypes:
    - LiveSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 263
    functionDepth: 1
    functionLinenumber: 263
    functionLinenumberEnd: 277
    functionName: live_session_shutdown
    functionSourceFile: /src/gpac/applications/mp4box/live.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_seng_terminate
    - gf_list_get
    - gf_list_count
    - gf_rtp_streamer_del
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void live_session_shutdown(LiveSession *livesess)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/applications/mp4box/live.c:287,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/live.c:291,1
    - Dst: gf_seng_enable_aggregation
      Src: /src/gpac/applications/mp4box/live.c:312,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 12
    argNames:
    - livesess
    - esid
    - period
    - ts_delta
    - aggregate_on_stream
    - adjust_carousel_time
    - force_rap
    - aggregate_au
    - discard_pending
    - signal_rap
    - signal_critical
    - version_inc
    argTypes:
    - LiveSession*
    - u16
    - u32
    - u32
    - u16
    - Bool
    - Bool
    - Bool
    - Bool
    - Bool
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 280
    functionDepth: 1
    functionLinenumber: 280
    functionLinenumberEnd: 325
    functionName: set_broadcast_params
    functionSourceFile: /src/gpac/applications/mp4box/live.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_list_get
    - gf_seng_enable_aggregation
    linkageType: ''
    returnType: RTPChannel
    signature: RTPChannel *set_broadcast_params(LiveSession *livesess, u16 esid, u32
      period, u32 ts_delta, u16 aggregate_on_stream, Bool adjust_carousel_time, Bool
      force_rap, Bool aggregate_au, Bool discard_pending, Bool signal_rap, u32 signal_critical,
      Bool version_inc)
  - BBCount: 91
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_init
      Src: /src/gpac/applications/mp4box/live.c:361,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/live.c:363,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/live.c:365,1
    - Dst: gf_sys_set_args
      Src: /src/gpac/applications/mp4box/live.c:367,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:373,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:374,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/live.c:374,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:375,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:376,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/live.c:376,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:377,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/live.c:377,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:378,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:379,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:380,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:381,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/live.c:382,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:385,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/live.c:386,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/live.c:389,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/live.c:390,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/live.c:395,1
    - Dst: PrintLiveUsage
      Src: /src/gpac/applications/mp4box/live.c:396,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/mp4box/live.c:399,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/mp4box/live.c:401,1
    - Dst: gf_seng_init
      Src: /src/gpac/applications/mp4box/live.c:403,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/live.c:405,1
    - Dst: live_session_setup
      Src: /src/gpac/applications/mp4box/live.c:409,1
    - Dst: live_session_shutdown
      Src: /src/gpac/applications/mp4box/live.c:411,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/live.c:412,1
    - Dst: gf_sk_del
      Src: /src/gpac/applications/mp4box/live.c:413,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/mp4box/live.c:414,1
    - Dst: gf_file_modification_time
      Src: /src/gpac/applications/mp4box/live.c:420,1
    - Dst: gf_sk_new
      Src: /src/gpac/applications/mp4box/live.c:423,1
    - Dst: gf_sk_bind
      Src: /src/gpac/applications/mp4box/live.c:425,1
    - Dst: gf_sk_del
      Src: /src/gpac/applications/mp4box/live.c:427,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:437,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/live.c:440,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/live.c:441,1
    - Dst: gf_seng_enable_aggregation
      Src: /src/gpac/applications/mp4box/live.c:442,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/live.c:444,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/live.c:444,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/live.c:448,1
    - Dst: gf_list_enum
      Src: /src/gpac/applications/mp4box/live.c:452,1
    - Dst: gf_list_enum
      Src: /src/gpac/applications/mp4box/live.c:461,1
    - Dst: gf_seng_encode_context
      Src: /src/gpac/applications/mp4box/live.c:472,1
    - Dst: live_session_send_carousel
      Src: /src/gpac/applications/mp4box/live.c:476,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/applications/mp4box/live.c:480,1
    - Dst: set_broadcast_params
      Src: /src/gpac/applications/mp4box/live.c:488,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/mp4box/live.c:492,1
    - Dst: gf_prompt_has_input
      Src: /src/gpac/applications/mp4box/live.c:499,1
    - Dst: gf_prompt_get_char
      Src: /src/gpac/applications/mp4box/live.c:500,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/live.c:508,1
    - Dst: scanf
      Src: /src/gpac/applications/mp4box/live.c:510,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/live.c:511,1
    - Dst: getchar
      Src: /src/gpac/applications/mp4box/live.c:515,1
    - Dst: gf_seng_encode_from_string
      Src: /src/gpac/applications/mp4box/live.c:516,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/live.c:517,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/live.c:517,1
    - Dst: gf_seng_aggregate_context
      Src: /src/gpac/applications/mp4box/live.c:518,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/live.c:519,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/live.c:519,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/live.c:527,1
    - Dst: scanf
      Src: /src/gpac/applications/mp4box/live.c:529,1
    - Dst: printf
      Src: /src/gpac/applications/mp4box/live.c:530,1
    - Dst: getchar
      Src: /src/gpac/applications/mp4box/live.c:534,1
    - Dst: gf_seng_encode_from_string
      Src: /src/gpac/applications/mp4box/live.c:535,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/live.c:536,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/live.c:536,1
    - Dst: gf_seng_aggregate_context
      Src: /src/gpac/applications/mp4box/live.c:538,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/live.c:539,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/live.c:539,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/live.c:547,1
    - Dst: scanf
      Src: /src/gpac/applications/mp4box/live.c:548,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/live.c:549,1
    - Dst: gf_seng_save_context
      Src: /src/gpac/applications/mp4box/live.c:552,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/live.c:552,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/live.c:553,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/live.c:553,1
    - Dst: gf_file_modification_time
      Src: /src/gpac/applications/mp4box/live.c:568,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/live.c:572,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/live.c:575,1
    - Dst: gf_fgets
      Src: /src/gpac/applications/mp4box/live.c:579,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/live.c:581,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/live.c:591,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/live.c:593,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/live.c:598,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:600,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/live.c:600,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:601,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/live.c:601,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:602,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/live.c:602,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:603,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/live.c:603,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:604,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/live.c:604,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:606,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/live.c:606,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:607,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/live.c:607,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:608,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/live.c:608,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:609,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/live.c:609,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:610,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/live.c:610,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/live.c:611,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/live.c:611,1
    - Dst: set_broadcast_params
      Src: /src/gpac/applications/mp4box/live.c:620,1
    - Dst: gf_seng_encode_from_file
      Src: /src/gpac/applications/mp4box/live.c:623,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/live.c:624,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/live.c:624,1
    - Dst: gf_seng_aggregate_context
      Src: /src/gpac/applications/mp4box/live.c:625,1
    - Dst: gf_sk_receive
      Src: /src/gpac/applications/mp4box/live.c:639,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/mp4box/live.c:647,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/applications/mp4box/live.c:648,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/applications/mp4box/live.c:649,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/applications/mp4box/live.c:650,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/applications/mp4box/live.c:652,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/applications/mp4box/live.c:653,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/applications/mp4box/live.c:654,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/applications/mp4box/live.c:655,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/applications/mp4box/live.c:656,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/applications/mp4box/live.c:657,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/applications/mp4box/live.c:658,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/applications/mp4box/live.c:659,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/applications/mp4box/live.c:660,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/applications/mp4box/live.c:662,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/applications/mp4box/live.c:663,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/live.c:665,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/live.c:667,1
    - Dst: set_broadcast_params
      Src: /src/gpac/applications/mp4box/live.c:672,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/live.c:680,1
    - Dst: MIN
      Src: /src/gpac/applications/mp4box/live.c:684,1
    - Dst: memcpy
      Src: /src/gpac/applications/mp4box/live.c:685,1
    - Dst: gf_sk_receive
      Src: /src/gpac/applications/mp4box/live.c:689,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/mp4box/live.c:692,1
    - Dst: MIN
      Src: /src/gpac/applications/mp4box/live.c:695,1
    - Dst: memcpy
      Src: /src/gpac/applications/mp4box/live.c:696,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/live.c:700,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/live.c:700,1
    - Dst: gf_seng_encode_from_string
      Src: /src/gpac/applications/mp4box/live.c:708,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/live.c:710,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/live.c:710,1
    - Dst: gf_seng_aggregate_context
      Src: /src/gpac/applications/mp4box/live.c:712,1
    - Dst: gf_seng_encode_context
      Src: /src/gpac/applications/mp4box/live.c:721,1
    - Dst: live_session_send_carousel
      Src: /src/gpac/applications/mp4box/live.c:727,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/mp4box/live.c:732,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/mp4box/live.c:737,1
    - Dst: next_carousel
      Src: /src/gpac/applications/mp4box/live.c:740,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/mp4box/live.c:742,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/mp4box/live.c:745,1
    - Dst: live_session_send_carousel
      Src: /src/gpac/applications/mp4box/live.c:746,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/applications/mp4box/live.c:750,1
    - Dst: live_session_shutdown
      Src: /src/gpac/applications/mp4box/live.c:760,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/live.c:761,1
    - Dst: gf_sk_del
      Src: /src/gpac/applications/mp4box/live.c:762,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/mp4box/live.c:763,1
    CyclomaticComplexity: 119
    EdgeCount: 119
    ICount: 368
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 328
    functionDepth: 2
    functionLinenumber: 328
    functionLinenumberEnd: 765
    functionName: live_session
    functionSourceFile: /src/gpac/applications/mp4box/live.c
    functionUses: 1
    functionsReached:
    - gf_free
    - printf
    - gf_bs_new
    - gf_sk_del
    - live_session_send_carousel
    - gf_prompt_has_input
    - memset
    - gf_fopen
    - gf_opts_get_key
    - gf_sys_set_args
    - M4_LOG
    - gf_file_modification_time
    - gf_seng_encode_from_file
    - gf_bs_read_u16
    - gf_sys_close
    - strchr
    - live_session_setup
    - gf_sys_is_cov_mode
    - fprintf
    - gf_seng_save_context
    - gf_realloc
    - gf_list_new
    - gf_bs_read_u32
    - next_carousel
    - gf_seng_enable_aggregation
    - gf_sk_receive
    - memcpy
    - stricmp
    - gf_sk_bind
    - sscanf
    - gf_seng_encode_context
    - gf_fgets
    - gf_sleep
    - strstr
    - MIN
    - live_session_shutdown
    - set_broadcast_params
    - strnicmp
    - scanf
    - gf_seng_init
    - gf_error_to_string
    - gf_bs_read_u8
    - gf_log_set_tool_level
    - gf_list_enum
    - parse_u32
    - gf_sys_clock_high_res
    - gf_prompt_get_char
    - strlen
    - gf_fclose
    - gf_sk_new
    - PrintLiveUsage
    - getchar
    - gf_seng_encode_from_string
    - gf_sys_init
    - gf_bs_del
    - strcmp
    - gf_bs_read_int
    - gf_seng_aggregate_context
    linkageType: ''
    returnType: int
    signature: int live_session(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/applications/generators/SVG/html.c:32,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/generators/SVG/html.c:33,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:35,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:36,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:37,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:38,1
    - Dst: time
      Src: /src/gpac/applications/generators/SVG/html.c:42,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:43,1
    - Dst: asctime
      Src: /src/gpac/applications/generators/SVG/html.c:43,1
    - Dst: gmtime
      Src: /src/gpac/applications/generators/SVG/html.c:43,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:45,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:46,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:48,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:49,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 52
    functionName: BeginHtml
    functionSourceFile: /src/gpac/applications/generators/SVG/html.c
    functionUses: 0
    functionsReached:
    - gmtime
    - sprintf
    - gf_fopen
    - asctime
    - time
    - fprintf
    linkageType: ''
    returnType: FILE
    signature: FILE *BeginHtml()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:56,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:57,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/generators/SVG/html.c:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - f
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 59
    functionName: EndHtml
    functionSourceFile: /src/gpac/applications/generators/SVG/html.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - fprintf
    linkageType: ''
    returnType: void
    signature: void EndHtml(FILE *f)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BeginHtml
      Src: /src/gpac/applications/generators/SVG/html.c:67,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:70,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:71,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:72,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:73,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:74,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:75,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:76,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:77,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:78,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:79,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:80,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:81,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:82,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:83,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:84,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:85,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:86,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:87,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:88,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:89,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:90,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:91,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:92,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:94,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:95,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:96,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:97,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:98,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:99,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:100,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:101,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:102,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:103,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:104,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:105,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/html.c:106,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/html.c:107,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:108,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:109,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:110,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:111,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:112,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:113,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:114,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:116,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:117,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/html.c:119,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/html.c:120,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:121,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:122,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:123,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:124,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:125,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:126,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:127,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:128,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:129,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:130,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:131,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:132,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/html.c:133,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/html.c:134,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/html.c:135,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:136,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:137,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:138,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:139,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:140,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:141,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:142,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:144,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/html.c:145,1
    - Dst: EndHtml
      Src: /src/gpac/applications/generators/SVG/html.c:148,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/generators/SVG/html.c:149,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 77
    argCount: 1
    argNames:
    - elements
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 62
    functionDepth: 2
    functionLinenumber: 62
    functionLinenumberEnd: 150
    functionName: generate_table
    functionSourceFile: /src/gpac/applications/generators/SVG/html.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - BeginHtml
    - gf_list_count
    - strcmp
    - gf_list_del
    - EndHtml
    - fprintf
    linkageType: ''
    returnType: void
    signature: void generate_table(GF_List *elements)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/laser.c:55,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 59
    functionName: get_lsr_att_name_type
    functionSourceFile: /src/gpac/applications/generators/SVG/laser.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 get_lsr_att_name_type(const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: findAttribute
      Src: /src/gpac/applications/generators/SVG/laser.c:66,1
    - Dst: get_lsr_att_name_type
      Src: /src/gpac/applications/generators/SVG/laser.c:68,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/laser.c:70,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:73,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 3
    argNames:
    - output
    - elt
    - index
    argTypes:
    - FILE*
    - SVGGenElement*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 76
    functionName: generateGenericAttrib
    functionSourceFile: /src/gpac/applications/generators/SVG/laser.c
    functionUses: 0
    functionsReached:
    - get_lsr_att_name_type
    - findAttribute
    - strcmp
    - fprintf
    linkageType: ''
    returnType: void
    signature: void generateGenericAttrib(FILE *output, SVGGenElement *elt, u32 index)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: BeginFile
      Src: /src/gpac/applications/generators/SVG/laser.c:84,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:85,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:86,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:87,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/laser.c:89,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/laser.c:91,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/laser.c:93,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:95,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:98,1
    - Dst: generateGenericAttrib
      Src: /src/gpac/applications/generators/SVG/laser.c:99,1
    - Dst: generateGenericAttrib
      Src: /src/gpac/applications/generators/SVG/laser.c:100,1
    - Dst: generateGenericAttrib
      Src: /src/gpac/applications/generators/SVG/laser.c:101,1
    - Dst: generateGenericAttrib
      Src: /src/gpac/applications/generators/SVG/laser.c:102,1
    - Dst: generateGenericAttrib
      Src: /src/gpac/applications/generators/SVG/laser.c:103,1
    - Dst: generateGenericAttrib
      Src: /src/gpac/applications/generators/SVG/laser.c:104,1
    - Dst: generateGenericAttrib
      Src: /src/gpac/applications/generators/SVG/laser.c:105,1
    - Dst: generateGenericAttrib
      Src: /src/gpac/applications/generators/SVG/laser.c:106,1
    - Dst: generateGenericAttrib
      Src: /src/gpac/applications/generators/SVG/laser.c:107,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:109,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:110,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/laser.c:115,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/laser.c:116,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/laser.c:119,1
    - Dst: get_lsr_att_name_type
      Src: /src/gpac/applications/generators/SVG/laser.c:120,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/laser.c:122,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/laser.c:124,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/laser.c:127,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:129,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:131,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:134,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/laser.c:135,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/laser.c:137,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:138,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/laser.c:139,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:140,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:142,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 59
    argCount: 1
    argNames:
    - svg_elements
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 78
    functionDepth: 2
    functionLinenumber: 78
    functionLinenumberEnd: 143
    functionName: generate_laser_tables
    functionSourceFile: /src/gpac/applications/generators/SVG/laser.c
    functionUses: 0
    functionsReached:
    - get_lsr_att_name_type
    - gf_list_get
    - generateGenericAttrib
    - gf_list_count
    - BeginFile
    - strcmp
    - fprintf
    linkageType: ''
    returnType: void
    signature: void generate_laser_tables(GF_List *svg_elements)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: BeginFile
      Src: /src/gpac/applications/generators/SVG/laser.c:151,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:153,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:154,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/laser.c:156,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/laser.c:160,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/laser.c:162,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:163,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:169,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:173,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:175,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/laser.c:176,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/laser.c:180,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/laser.c:182,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:183,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/laser.c:188,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:189,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:190,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:191,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:192,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:193,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:195,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:200,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:204,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/laser.c:208,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/laser.c:210,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:211,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:216,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:220,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:222,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/laser.c:226,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/laser.c:228,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:229,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:235,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:238,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:239,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/laser.c:244,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/laser.c:249,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/laser.c:250,1
    - Dst: assert
      Src: /src/gpac/applications/generators/SVG/laser.c:254,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:256,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:257,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:258,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:259,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:260,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/laser.c:264,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/generators/SVG/laser.c:266,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 94
    argCount: 1
    argNames:
    - atts
    argTypes:
    - GF_List*
    assertStmts:
    - condition: (att)
      pos:
        line_end: 253
        line_start: 253
        source_file: /src/gpac/applications/generators/SVG/laser.c
    constantsTouched: []
    func_position:
      end: 267
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 267
    functionName: generate_laser_tables_da
    functionSourceFile: /src/gpac/applications/generators/SVG/laser.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_list_get
    - assert
    - gf_list_count
    - BeginFile
    - strcmp
    - fprintf
    linkageType: ''
    returnType: void
    signature: void generate_laser_tables_da(GF_List *atts)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v3.c:34,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v3.c:35,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v3.c:36,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v3.c:37,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:39,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/v3.c:40,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:41,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/v3.c:42,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v3.c:44,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v3.c:45,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:46,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:47,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/SVG/v3.c:53,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v3.c:56,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v3.c:57,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:59,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:60,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/v3.c:61,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:62,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/v3.c:63,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:64,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/v3.c:65,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:67,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:67,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/v3.c:68,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:69,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:69,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/v3.c:70,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:71,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:72,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/v3.c:73,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:74,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/v3.c:75,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v3.c:78,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v3.c:79,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:80,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:81,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/SVG/v3.c:87,1
    - Dst: NewSVGGenAttribute
      Src: /src/gpac/applications/generators/SVG/v3.c:93,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/v3.c:94,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/v3.c:95,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/SVG/v3.c:98,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 64
    argCount: 2
    argNames:
    - svg_elements
    - all_atts
    argTypes:
    - GF_List*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 100
    functionName: buildGlobalAttributeList
    functionSourceFile: /src/gpac/applications/generators/SVG/v3.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - strcpy
    - gf_list_count
    - strcmp
    - gf_list_add
    - NewSVGGenAttribute
    linkageType: ''
    returnType: void
    signature: void buildGlobalAttributeList(GF_List *svg_elements, GF_List *all_atts)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/applications/generators/SVG/v3.c:106,1
    - Dst: buildGlobalAttributeList
      Src: /src/gpac/applications/generators/SVG/v3.c:108,1
    - Dst: BeginFile
      Src: /src/gpac/applications/generators/SVG/v3.c:115,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:116,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:119,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:120,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:121,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v3.c:122,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v3.c:123,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:125,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:127,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:130,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:133,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v3.c:133,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:134,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:135,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v3.c:137,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v3.c:138,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:139,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:140,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:142,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:145,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v3.c:146,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v3.c:147,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:148,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:150,1
    - Dst: EndFile
      Src: /src/gpac/applications/generators/SVG/v3.c:152,1
    - Dst: BeginFile
      Src: /src/gpac/applications/generators/SVG/v3.c:159,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:160,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:161,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:162,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:168,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v3.c:169,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v3.c:170,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:173,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:174,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:175,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:176,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:177,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:178,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:179,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:181,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:181,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:182,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:183,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:184,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:185,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:186,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:187,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:188,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:189,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:190,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:191,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:192,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:193,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:194,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:195,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:196,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v3.c:197,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:198,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:199,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:200,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:201,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:203,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:206,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:211,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:212,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v3.c:213,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v3.c:214,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:215,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:217,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:218,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:219,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:224,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:225,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v3.c:226,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v3.c:227,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:228,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:230,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:231,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:232,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:237,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v3.c:238,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v3.c:239,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:240,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:242,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:247,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:249,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:250,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:251,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:252,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:253,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:254,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:255,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v3.c:256,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v3.c:257,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:258,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:260,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:261,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:262,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:263,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:264,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:269,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v3.c:270,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v3.c:271,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:272,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:274,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:279,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v3.c:280,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v3.c:281,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:282,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:284,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v3.c:286,1
    - Dst: EndFile
      Src: /src/gpac/applications/generators/SVG/v3.c:287,1
    - Dst: generate_laser_tables_da
      Src: /src/gpac/applications/generators/SVG/v3.c:290,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/generators/SVG/v3.c:292,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 130
    argCount: 1
    argNames:
    - svg_elements
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 102
    functionDepth: 2
    functionLinenumber: 102
    functionLinenumberEnd: 294
    functionName: generateSVGCode_V3
    functionSourceFile: /src/gpac/applications/generators/SVG/v3.c
    functionUses: 0
    functionsReached:
    - EndFile
    - gf_list_new
    - gf_list_get
    - generate_laser_tables_da
    - buildGlobalAttributeList
    - gf_list_count
    - BeginFile
    - strcmp
    - gf_list_del
    - fprintf
    linkageType: ''
    returnType: void
    signature: void generateSVGCode_V3(GF_List *svg_elements)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/generators/SVG/main.c:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 33
    functionName: NewSVGGenAttribute
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: SVGGenAttribute
    signature: SVGGenAttribute *NewSVGGenAttribute()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/gpac/applications/generators/SVG/main.c:37,1
    - Dst: xmlFree
      Src: /src/gpac/applications/generators/SVG/main.c:38,1
    - Dst: gf_free
      Src: /src/gpac/applications/generators/SVG/main.c:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - p
    argTypes:
    - SVGGenAttribute**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 41
    functionName: deleteSVGGenAttribute
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 0
    functionsReached:
    - gf_free
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void deleteSVGGenAttribute(SVGGenAttribute **p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/generators/SVG/main.c:46,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/generators/SVG/main.c:47,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/generators/SVG/main.c:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 50
    functionName: NewSVGGenAttrGrp
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: SVGGenAttrGrp
    signature: SVGGenAttrGrp *NewSVGGenAttrGrp()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/generators/SVG/main.c:55,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/generators/SVG/main.c:57,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/generators/SVG/main.c:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 61
    functionName: NewSVGGenElement
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: SVGGenElement
    signature: SVGGenElement *NewSVGGenElement()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/gpac/applications/generators/SVG/main.c:66,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/main.c:67,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/main.c:68,1
    - Dst: deleteSVGGenAttribute
      Src: /src/gpac/applications/generators/SVG/main.c:69,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/generators/SVG/main.c:71,1
    - Dst: gf_free
      Src: /src/gpac/applications/generators/SVG/main.c:72,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - p
    argTypes:
    - SVGGenElement**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 74
    functionName: deleteSVGGenElement
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - xmlFree
    - deleteSVGGenAttribute
    - gf_list_count
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void deleteSVGGenElement(SVGGenElement **p)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/applications/generators/SVG/main.c:79,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/main.c:81,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/main.c:83,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/main.c:84,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/main.c:85,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:86,1
    - Dst: gf_list_insert
      Src: /src/gpac/applications/generators/SVG/main.c:87,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/SVG/main.c:92,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/generators/SVG/main.c:95,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - elements
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 97
    functionName: sortElements
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_new
    - gf_list_get
    - gf_list_count
    - strcmp
    - gf_list_add
    - gf_list_del
    linkageType: ''
    returnType: GF_List
    signature: GF_List *sortElements(GF_List *elements)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/applications/generators/SVG/main.c:102,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/main.c:104,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/main.c:106,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/main.c:107,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/main.c:108,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:109,1
    - Dst: gf_list_insert
      Src: /src/gpac/applications/generators/SVG/main.c:110,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/SVG/main.c:115,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/generators/SVG/main.c:118,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - attgrps
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 120
    functionName: sortAttrGrp
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_new
    - gf_list_get
    - gf_list_count
    - strcmp
    - gf_list_add
    - gf_list_del
    linkageType: ''
    returnType: GF_List
    signature: GF_List *sortAttrGrp(GF_List *attgrps)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/applications/generators/SVG/main.c:125,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/main.c:127,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/main.c:129,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/main.c:130,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/main.c:131,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:132,1
    - Dst: gf_list_insert
      Src: /src/gpac/applications/generators/SVG/main.c:133,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/SVG/main.c:138,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/generators/SVG/main.c:141,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - atts
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 143
    functionName: sortAttr
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_new
    - gf_list_get
    - gf_list_count
    - strcmp
    - gf_list_add
    - gf_list_del
    linkageType: ''
    returnType: GF_List
    signature: GF_List *sortAttr(GF_List *atts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:147,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/SVG/main.c:149,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/SVG/main.c:154,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/SVG/main.c:159,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - svg_name
    - implementation_name
    argTypes:
    - xmlChar*
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 163
    functionName: svgNameToImplementationName
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 0
    functionsReached:
    - strcpy
    - strchr
    linkageType: ''
    returnType: void
    signature: void svgNameToImplementationName(xmlChar *svg_name, char implementation_name[50])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:167,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:168,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:169,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:170,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:171,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:172,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:173,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:174,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:175,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:176,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:177,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:178,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:179,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:181,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:182,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:183,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:184,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:185,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:186,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:187,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:188,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:189,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:190,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:191,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:192,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:194,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 199
    functionName: isGenericAttributesGroup
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: Bool
    signature: Bool isGenericAttributesGroup(char *name)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:204,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:205,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:206,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:209,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:212,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:214,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:216,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:217,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:219,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:220,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:221,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:222,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:225,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:226,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:227,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:228,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:230,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:231,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:233,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:234,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:235,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:236,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:237,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:239,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:241,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:243,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 42
    argCount: 2
    argNames:
    - name
    - e
    argTypes:
    - char*
    - SVGGenElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 249
    functionName: setGenericAttributesFlags
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: Bool
    signature: Bool setGenericAttributesFlags(char *name, SVGGenElement *e)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/main.c:256,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/main.c:257,1
    - Dst: flattenAttributeGroup
      Src: /src/gpac/applications/generators/SVG/main.c:258,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - attrgrps
    - e
    - all
    argTypes:
    - GF_List*
    - SVGGenElement*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 253
    functionDepth: 1
    functionLinenumber: 253
    functionLinenumberEnd: 260
    functionName: flattenAttributeGroups
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - flattenAttributeGroup
    linkageType: ''
    returnType: void
    signature: void flattenAttributeGroups(GF_List *attrgrps, SVGGenElement *e, Bool
      all)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: isGenericAttributesGroup
      Src: /src/gpac/applications/generators/SVG/main.c:266,1
    - Dst: setGenericAttributesFlags
      Src: /src/gpac/applications/generators/SVG/main.c:267,1
    - Dst: flattenAttributeGroups
      Src: /src/gpac/applications/generators/SVG/main.c:268,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/main.c:269,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/SVG/main.c:270,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/main.c:270,1
    - Dst: flattenAttributeGroups
      Src: /src/gpac/applications/generators/SVG/main.c:273,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/main.c:274,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/SVG/main.c:276,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/main.c:276,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/SVG/main.c:278,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/main.c:278,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - attgrp
    - e
    - all
    argTypes:
    - SVGGenAttrGrp
    - SVGGenElement*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 262
    functionDepth: 2
    functionLinenumber: 262
    functionLinenumberEnd: 281
    functionName: flattenAttributeGroup
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - setGenericAttributesFlags
    - gf_list_count
    - isGenericAttributesGroup
    - gf_list_add
    - flattenAttributeGroups
    linkageType: ''
    returnType: void
    signature: void flattenAttributeGroup(SVGGenAttrGrp attgrp, SVGGenElement *e,
      Bool all)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/main.c:286,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/main.c:287,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:288,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/main.c:290,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/main.c:291,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:292,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - e
    - name
    argTypes:
    - SVGGenElement*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 283
    functionDepth: 1
    functionLinenumber: 283
    functionLinenumberEnd: 295
    functionName: findAttribute
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: SVGGenAttribute
    signature: SVGGenAttribute *findAttribute(SVGGenElement *e, char *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/main.c:300,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/main.c:301,1
    - Dst: countAttributesAllInGroup
      Src: /src/gpac/applications/generators/SVG/main.c:302,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/main.c:304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ag
    argTypes:
    - SVGGenAttrGrp*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 306
    functionName: countAttributesAllInGroup
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - countAttributesAllInGroup
    - gf_list_get
    linkageType: ''
    returnType: u32
    signature: u32 countAttributesAllInGroup(SVGGenAttrGrp *ag)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCompile
      Src: /src/gpac/applications/generators/SVG/main.c:319,1
    - Dst: xmlNewDoc
      Src: /src/gpac/applications/generators/SVG/main.c:330,1
    - Dst: xmlAddChild
      Src: /src/gpac/applications/generators/SVG/main.c:339,1
    - Dst: xmlXPathCompiledEval
      Src: /src/gpac/applications/generators/SVG/main.c:344,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/gpac/applications/generators/SVG/main.c:346,1
    - Dst: xmlSetTreeDoc
      Src: /src/gpac/applications/generators/SVG/main.c:351,1
    - Dst: xmlFreeDoc
      Src: /src/gpac/applications/generators/SVG/main.c:358,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 2
    argNames:
    - ctxt
    - path
    argTypes:
    - xmlXPathContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 309
    functionDepth: 0
    functionLinenumber: 309
    functionLinenumberEnd: 365
    functionName: findNodes
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 0
    functionsReached:
    - xmlXPathCompile
    - xmlNewDoc
    - xmlXPathFreeCompExpr
    - xmlSetTreeDoc
    - xmlAddChild
    - xmlXPathCompiledEval
    - xmlFreeDoc
    linkageType: ''
    returnType: xmlNodeSetPtr
    signature: xmlNodeSetPtr findNodes( xmlXPathContextPtr ctxt, xmlChar * path )
  - BBCount: 82
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:373,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:374,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:375,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:376,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:377,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:378,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:379,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:380,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:381,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:382,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:383,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:384,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:385,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:386,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:387,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:388,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:389,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:390,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:391,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:392,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:393,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:394,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:395,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:396,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:397,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:398,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:399,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:400,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:401,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:402,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:403,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:404,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:405,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:406,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:407,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:408,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:409,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:410,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:411,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:412,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:413,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:414,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:415,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:416,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:417,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:418,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:419,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:421,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:422,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:423,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:425,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:426,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:427,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:428,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:429,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:431,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:432,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:433,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:434,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:435,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:436,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:437,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:438,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:439,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:440,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:441,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:442,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:443,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:444,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:445,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:446,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:447,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:448,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:449,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:450,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:451,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:452,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:453,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:454,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:455,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:456,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:457,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:458,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:459,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:460,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:461,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:462,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:463,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:464,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:465,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:466,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:467,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:468,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:469,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:470,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:471,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:472,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:473,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:474,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:475,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:476,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:477,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:478,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:479,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:480,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:481,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:482,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:483,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:484,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:485,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:486,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:487,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:488,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:489,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:490,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:491,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:492,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:493,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:494,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:495,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:496,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:497,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:498,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:499,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:500,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:501,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:502,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:503,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:504,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:505,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:506,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:507,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:508,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:509,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:510,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:511,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:512,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:513,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:514,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:515,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:516,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:517,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:518,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:519,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:520,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:523,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/main.c:524,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:527,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:528,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:529,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:530,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:531,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:532,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:533,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:534,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:535,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:536,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:537,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:538,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:539,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:540,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:541,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:541,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:542,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:543,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:544,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:545,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/SVG/main.c:546,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/SVG/main.c:547,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/SVG/main.c:549,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/SVG/main.c:551,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/SVG/main.c:556,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/SVG/main.c:561,1
    CyclomaticComplexity: 92
    EdgeCount: 92
    ICount: 260
    argCount: 1
    argNames:
    - att
    argTypes:
    - SVGGenAttribute*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 370
    functionDepth: 0
    functionLinenumber: 370
    functionLinenumberEnd: 567
    functionName: setAttributeType
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 0
    functionsReached:
    - strcpy
    - sprintf
    - strstr
    - strcmp
    - fprintf
    linkageType: ''
    returnType: void
    signature: void setAttributeType(SVGGenAttribute *att)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: findNodes
      Src: /src/gpac/applications/generators/SVG/main.c:575,1
    - Dst: xmlStrdup
      Src: /src/gpac/applications/generators/SVG/main.c:580,1
    - Dst: xmlGetProp
      Src: /src/gpac/applications/generators/SVG/main.c:580,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - doc
    - xpathCtx
    - attributeNode
    - a
    argTypes:
    - xmlDocPtr
    - xmlXPathContextPtr
    - xmlNodePtr
    - SVGGenAttribute*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 569
    functionDepth: 1
    functionLinenumber: 569
    functionLinenumberEnd: 584
    functionName: getAttributeType
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 0
    functionsReached:
    - findNodes
    - xmlStrdup
    - xmlGetProp
    linkageType: ''
    returnType: void
    signature: "void getAttributeType(xmlDocPtr doc, xmlXPathContextPtr xpathCtx,\n
      \                     xmlNodePtr attributeNode, SVGGenAttribute *a)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: findNodes
      Src: /src/gpac/applications/generators/SVG/main.c:594,1
    - Dst: NewSVGGenAttribute
      Src: /src/gpac/applications/generators/SVG/main.c:599,1
    - Dst: xmlGetProp
      Src: /src/gpac/applications/generators/SVG/main.c:600,1
    - Dst: xmlStrEqual
      Src: /src/gpac/applications/generators/SVG/main.c:601,1
    - Dst: svgNameToImplementationName
      Src: /src/gpac/applications/generators/SVG/main.c:602,1
    - Dst: getAttributeType
      Src: /src/gpac/applications/generators/SVG/main.c:603,1
    - Dst: setAttributeType
      Src: /src/gpac/applications/generators/SVG/main.c:604,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/main.c:605,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/main.c:606,1
    - Dst: xmlStrEqual
      Src: /src/gpac/applications/generators/SVG/main.c:607,1
    - Dst: deleteSVGGenAttribute
      Src: /src/gpac/applications/generators/SVG/main.c:613,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/SVG/main.c:616,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 4
    argNames:
    - doc
    - xpathCtx
    - newCtxNode
    - attributes
    argTypes:
    - xmlDocPtr
    - xmlXPathContextPtr
    - xmlNodePtr
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 620
      start: 586
    functionDepth: 2
    functionLinenumber: 586
    functionLinenumberEnd: 620
    functionName: getRealAttributes
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - xmlStrEqual
    - getAttributeType
    - svgNameToImplementationName
    - setAttributeType
    - findNodes
    - gf_list_count
    - gf_list_add
    - NewSVGGenAttribute
    - xmlGetProp
    - deleteSVGGenAttribute
    linkageType: ''
    returnType: void
    signature: "void getRealAttributes(xmlDocPtr doc, xmlXPathContextPtr xpathCtx,
      xmlNodePtr newCtxNode,\n                       GF_List *attributes)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/main.c:631,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/main.c:632,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:633,1
    - Dst: xmlStrdup
      Src: /src/gpac/applications/generators/SVG/main.c:639,1
    - Dst: xmlStrcat
      Src: /src/gpac/applications/generators/SVG/main.c:640,1
    - Dst: xmlStrcat
      Src: /src/gpac/applications/generators/SVG/main.c:641,1
    - Dst: findNodes
      Src: /src/gpac/applications/generators/SVG/main.c:642,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/main.c:644,1
    - Dst: NewSVGGenAttrGrp
      Src: /src/gpac/applications/generators/SVG/main.c:647,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/generators/SVG/main.c:648,1
    - Dst: svgNameToImplementationName
      Src: /src/gpac/applications/generators/SVG/main.c:649,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/SVG/main.c:650,1
    - Dst: getRealAttributes
      Src: /src/gpac/applications/generators/SVG/main.c:654,1
    - Dst: findNodes
      Src: /src/gpac/applications/generators/SVG/main.c:659,1
    - Dst: xmlGetProp
      Src: /src/gpac/applications/generators/SVG/main.c:662,1
    - Dst: xmlStrstr
      Src: /src/gpac/applications/generators/SVG/main.c:663,1
    - Dst: getOneGlobalAttrGrp
      Src: /src/gpac/applications/generators/SVG/main.c:664,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/SVG/main.c:666,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 33
    argCount: 3
    argNames:
    - doc
    - xpathCtx
    - name
    argTypes:
    - xmlDocPtr
    - xmlXPathContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 673
      start: 622
    functionDepth: 3
    functionLinenumber: 622
    functionLinenumberEnd: 673
    functionName: getOneGlobalAttrGrp
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - xmlStrdup
    - gf_strdup
    - xmlStrcat
    - getOneGlobalAttrGrp
    - gf_list_count
    - NewSVGGenAttrGrp
    - findNodes
    - strcmp
    - svgNameToImplementationName
    - gf_list_add
    - xmlStrstr
    - getRealAttributes
    - xmlGetProp
    - fprintf
    linkageType: ''
    returnType: SVGGenAttrGrp
    signature: SVGGenAttrGrp *getOneGlobalAttrGrp(xmlDocPtr doc, xmlXPathContextPtr
      xpathCtx, xmlChar *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: findNodes
      Src: /src/gpac/applications/generators/SVG/main.c:677,1
    - Dst: xmlGetProp
      Src: /src/gpac/applications/generators/SVG/main.c:683,1
    - Dst: xmlStrstr
      Src: /src/gpac/applications/generators/SVG/main.c:684,1
    - Dst: getOneGlobalAttrGrp
      Src: /src/gpac/applications/generators/SVG/main.c:685,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - doc
    - xpathCtx
    argTypes:
    - xmlDocPtr
    - xmlXPathContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 675
    functionDepth: 4
    functionLinenumber: 675
    functionLinenumberEnd: 689
    functionName: getAllGlobalAttrGrp
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 0
    functionsReached:
    - getOneGlobalAttrGrp
    - findNodes
    - xmlGetProp
    - xmlStrstr
    linkageType: ''
    returnType: void
    signature: void getAllGlobalAttrGrp(xmlDocPtr doc, xmlXPathContextPtr xpathCtx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/applications/generators/SVG/main.c:694,1
    - Dst: findNodes
      Src: /src/gpac/applications/generators/SVG/main.c:696,1
    - Dst: NewSVGGenElement
      Src: /src/gpac/applications/generators/SVG/main.c:703,1
    - Dst: xmlStrdup
      Src: /src/gpac/applications/generators/SVG/main.c:704,1
    - Dst: xmlGetProp
      Src: /src/gpac/applications/generators/SVG/main.c:704,1
    - Dst: svgNameToImplementationName
      Src: /src/gpac/applications/generators/SVG/main.c:707,1
    - Dst: xmlStrdup
      Src: /src/gpac/applications/generators/SVG/main.c:710,1
    - Dst: xmlStrcmp
      Src: /src/gpac/applications/generators/SVG/main.c:711,1
    - Dst: xmlStrcmp
      Src: /src/gpac/applications/generators/SVG/main.c:711,1
    - Dst: xmlStrcat
      Src: /src/gpac/applications/generators/SVG/main.c:712,1
    - Dst: xmlStrcat
      Src: /src/gpac/applications/generators/SVG/main.c:714,1
    - Dst: xmlStrcat
      Src: /src/gpac/applications/generators/SVG/main.c:716,1
    - Dst: findNodes
      Src: /src/gpac/applications/generators/SVG/main.c:717,1
    - Dst: findNodes
      Src: /src/gpac/applications/generators/SVG/main.c:722,1
    - Dst: xmlGetProp
      Src: /src/gpac/applications/generators/SVG/main.c:725,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/main.c:726,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/main.c:727,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:728,1
    - Dst: isGenericAttributesGroup
      Src: /src/gpac/applications/generators/SVG/main.c:729,1
    - Dst: setGenericAttributesFlags
      Src: /src/gpac/applications/generators/SVG/main.c:730,1
    - Dst: flattenAttributeGroup
      Src: /src/gpac/applications/generators/SVG/main.c:731,1
    - Dst: flattenAttributeGroup
      Src: /src/gpac/applications/generators/SVG/main.c:733,1
    - Dst: getRealAttributes
      Src: /src/gpac/applications/generators/SVG/main.c:741,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/main.c:748,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/main.c:749,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:750,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/SVG/main.c:755,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 43
    argCount: 2
    argNames:
    - doc
    - xpathCtx
    argTypes:
    - xmlDocPtr
    - xmlXPathContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 760
      start: 691
    functionDepth: 3
    functionLinenumber: 691
    functionLinenumberEnd: 760
    functionName: getElements
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - xmlStrdup
    - gf_list_get
    - NewSVGGenElement
    - xmlStrcmp
    - xmlStrcat
    - setGenericAttributesFlags
    - svgNameToImplementationName
    - gf_list_count
    - findNodes
    - strcmp
    - isGenericAttributesGroup
    - flattenAttributeGroup
    - gf_list_add
    - getRealAttributes
    - xmlGetProp
    linkageType: ''
    returnType: GF_List
    signature: GF_List *getElements(xmlDocPtr doc, xmlXPathContextPtr xpathCtx)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/applications/generators/SVG/main.c:771,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/SVG/main.c:774,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/SVG/main.c:776,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/SVG/main.c:778,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/SVG/main.c:783,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/SVG/main.c:786,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/SVG/main.c:788,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/SVG/main.c:790,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/SVG/main.c:794,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/SVG/main.c:797,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/SVG/main.c:799,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/SVG/main.c:801,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/generators/SVG/main.c:806,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/main.c:807,1
    - Dst: time
      Src: /src/gpac/applications/generators/SVG/main.c:811,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/main.c:812,1
    - Dst: asctime
      Src: /src/gpac/applications/generators/SVG/main.c:812,1
    - Dst: gmtime
      Src: /src/gpac/applications/generators/SVG/main.c:812,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/main.c:817,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/main.c:818,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/main.c:820,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/main.c:821,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/main.c:823,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/main.c:824,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/main.c:826,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 1
    argNames:
    - type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 829
      start: 763
    functionDepth: 0
    functionLinenumber: 763
    functionLinenumberEnd: 829
    functionName: BeginFile
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 3
    functionsReached:
    - gmtime
    - sprintf
    - gf_fopen
    - asctime
    - time
    - fprintf
    linkageType: ''
    returnType: FILE
    signature: FILE *BeginFile(u32 type)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/main.c:834,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/main.c:835,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/main.c:836,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/main.c:837,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/main.c:839,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/generators/SVG/main.c:841,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - f
    - type
    argTypes:
    - FILE*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 842
      start: 831
    functionDepth: 1
    functionLinenumber: 831
    functionLinenumberEnd: 842
    functionName: EndFile
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 1
    functionsReached:
    - gf_fclose
    - fprintf
    linkageType: ''
    returnType: void
    signature: void EndFile(FILE *f, u32 type)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/main.c:847,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/main.c:848,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/main.c:850,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/main.c:851,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/main.c:853,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/main.c:855,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - output
    - attributes
    - inDefine
    argTypes:
    - FILE*
    - GF_List*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 857
      start: 844
    functionDepth: 1
    functionLinenumber: 844
    functionLinenumberEnd: 857
    functionName: generateAttributes
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - fprintf
    linkageType: ''
    returnType: void
    signature: void generateAttributes(FILE *output, GF_List *attributes, Bool inDefine)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathEvalExpression
      Src: /src/gpac/applications/generators/SVG/main.c:883,1
    - Dst: xmlGetNoNsProp
      Src: /src/gpac/applications/generators/SVG/main.c:894,1
    - Dst: xmlParseFile
      Src: /src/gpac/applications/generators/SVG/main.c:895,1
    - Dst: xmlReplaceNode
      Src: /src/gpac/applications/generators/SVG/main.c:896,1
    - Dst: xmlDocGetRootElement
      Src: /src/gpac/applications/generators/SVG/main.c:896,1
    - Dst: xmlXPathFreeObject
      Src: /src/gpac/applications/generators/SVG/main.c:899,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - doc
    - xpathCtx
    argTypes:
    - xmlDocPtr
    - xmlXPathContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 900
      start: 876
    functionDepth: 0
    functionLinenumber: 876
    functionLinenumberEnd: 900
    functionName: replaceIncludes
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeObject
    - xmlDocGetRootElement
    - xmlParseFile
    - xmlReplaceNode
    - xmlGetNoNsProp
    - xmlXPathEvalExpression
    linkageType: ''
    returnType: void
    signature: void replaceIncludes(xmlDocPtr doc, xmlXPathContextPtr xpathCtx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/gpac/applications/generators/SVG/main.c:908,1
    - Dst: xmlParseFile
      Src: /src/gpac/applications/generators/SVG/main.c:911,1
    - Dst: printf
      Src: /src/gpac/applications/generators/SVG/main.c:913,1
    - Dst: xmlXPathNewContext
      Src: /src/gpac/applications/generators/SVG/main.c:917,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/main.c:919,1
    - Dst: xmlFreeDoc
      Src: /src/gpac/applications/generators/SVG/main.c:920,1
    - Dst: xmlXPathRegisterNs
      Src: /src/gpac/applications/generators/SVG/main.c:923,1
    - Dst: xmlXPathRegisterNs
      Src: /src/gpac/applications/generators/SVG/main.c:924,1
    - Dst: xmlXPathRegisterNs
      Src: /src/gpac/applications/generators/SVG/main.c:925,1
    - Dst: replaceIncludes
      Src: /src/gpac/applications/generators/SVG/main.c:927,1
    - Dst: xmlSaveFile
      Src: /src/gpac/applications/generators/SVG/main.c:928,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/generators/SVG/main.c:930,1
    - Dst: getAllGlobalAttrGrp
      Src: /src/gpac/applications/generators/SVG/main.c:931,1
    - Dst: getElements
      Src: /src/gpac/applications/generators/SVG/main.c:933,1
    - Dst: sortElements
      Src: /src/gpac/applications/generators/SVG/main.c:934,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/main.c:936,1
    - Dst: generate_table
      Src: /src/gpac/applications/generators/SVG/main.c:937,1
    - Dst: generateSVGCode_V1
      Src: /src/gpac/applications/generators/SVG/main.c:939,1
    - Dst: generateSVGCode_V2
      Src: /src/gpac/applications/generators/SVG/main.c:940,1
    - Dst: generateSVGCode_V3
      Src: /src/gpac/applications/generators/SVG/main.c:941,1
    - Dst: xmlXPathFreeContext
      Src: /src/gpac/applications/generators/SVG/main.c:944,1
    - Dst: xmlCleanupParser
      Src: /src/gpac/applications/generators/SVG/main.c:947,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 34
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 949
      start: 902
    functionDepth: 5
    functionLinenumber: 902
    functionLinenumberEnd: 949
    functionName: main
    functionSourceFile: /src/gpac/applications/generators/SVG/main.c
    functionUses: 5
    functionsReached:
    - getElements
    - printf
    - generateSVGCode_V3
    - xmlParseFile
    - generate_table
    - xmlFreeDoc
    - fprintf
    - gf_list_new
    - xmlInitParser
    - replaceIncludes
    - getAllGlobalAttrGrp
    - xmlXPathFreeContext
    - xmlSaveFile
    - sortElements
    - generateSVGCode_V1
    - xmlXPathNewContext
    - xmlCleanupParser
    - generateSVGCode_V2
    - xmlXPathRegisterNs
    - strcmp
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v2.c:31,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v2.c:32,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:33,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:34,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - output
    - attributes
    argTypes:
    - FILE*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 36
    functionName: generateAttributes2
    functionSourceFile: /src/gpac/applications/generators/SVG/v2.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    - fprintf
    linkageType: ''
    returnType: void
    signature: void generateAttributes2(FILE *output, GF_List *attributes)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:40,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:43,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:45,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:48,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:49,1
    - Dst: generateAttributes2
      Src: /src/gpac/applications/generators/SVG/v2.c:52,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:55,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:56,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:58,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - output
    - svg_elt
    argTypes:
    - FILE*
    - SVGGenElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 59
    functionName: generateNode2
    functionSourceFile: /src/gpac/applications/generators/SVG/v2.c
    functionUses: 0
    functionsReached:
    - generateAttributes2
    - strcmp
    - fprintf
    linkageType: ''
    returnType: void
    signature: void generateNode2(FILE *output, SVGGenElement* svg_elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:63,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:64,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:65,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:66,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - output
    - elt_imp_name
    - att
    - i
    argTypes:
    - FILE*
    - char*
    - SVGGenAttribute*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 68
    functionName: generateAttributeInfo2
    functionSourceFile: /src/gpac/applications/generators/SVG/v2.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void generateAttributeInfo2(FILE *output, char * elt_imp_name, SVGGenAttribute
      *att, u32 i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:74,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:75,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:76,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:77,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 3
    argNames:
    - output
    - elt
    - start
    argTypes:
    - FILE*
    - SVGGenElement*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 81
    functionName: generateTransformInfo2
    functionSourceFile: /src/gpac/applications/generators/SVG/v2.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: u32
    signature: u32 generateTransformInfo2(FILE *output, SVGGenElement *elt, u32 start)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:87,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:88,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:89,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:90,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 3
    argNames:
    - output
    - elt
    - start
    argTypes:
    - FILE*
    - SVGGenElement*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 94
    functionName: generateMotionTransformInfo2
    functionSourceFile: /src/gpac/applications/generators/SVG/v2.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: u32
    signature: u32 generateMotionTransformInfo2(FILE *output, SVGGenElement *elt,
      u32 start)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:100,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:101,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:102,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:103,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:104,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:107,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:108,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:109,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:110,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 3
    argNames:
    - output
    - elt
    - start
    argTypes:
    - FILE*
    - SVGGenElement*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 114
    functionName: generateXYInfo2
    functionSourceFile: /src/gpac/applications/generators/SVG/v2.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: u32
    signature: u32 generateXYInfo2(FILE *output, SVGGenElement *elt, u32 start)
  - BBCount: 66
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:121,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:122,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:124,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:126,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:129,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:132,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:135,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:138,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:141,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:145,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:148,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:149,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:150,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v2.c:154,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v2.c:155,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:158,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:159,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:160,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:161,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:162,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:163,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:164,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:165,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:166,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:167,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:168,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:169,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:170,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:171,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:172,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:173,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:174,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:175,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:176,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:177,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:178,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:179,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:180,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:181,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:182,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:183,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:184,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:185,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:186,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:187,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:188,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:189,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:190,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:191,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:192,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:193,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:194,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:195,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:196,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:197,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:198,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:199,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:200,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:201,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:202,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:203,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:204,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:205,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:206,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:207,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:208,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:209,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:210,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:211,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:212,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:213,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:214,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:215,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:216,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:217,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:218,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:219,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:220,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:221,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:222,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:223,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:224,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:225,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:226,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:227,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:228,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:229,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:230,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:231,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:232,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:236,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:237,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:238,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:239,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:240,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:240,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:241,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:242,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:243,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:244,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:245,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:246,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:247,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:248,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:249,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:250,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:251,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:252,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:253,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:254,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:255,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:259,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:260,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:261,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:262,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:263,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:265,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:266,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:267,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:269,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:270,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:271,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:272,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:273,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:274,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:275,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:277,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:277,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:277,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:278,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:280,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:283,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:284,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:285,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:287,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:288,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:290,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:291,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v2.c:294,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v2.c:295,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:296,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:297,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:298,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:299,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:300,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:301,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:302,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:303,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:304,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:306,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:308,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:309,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:310,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:311,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:312,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v2.c:312,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:313,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:317,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:320,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:321,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:322,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:325,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:326,1
    - Dst: generateCoreInfo
      Src: /src/gpac/applications/generators/SVG/v2.c:328,1
    - Dst: generateGenericInfo
      Src: /src/gpac/applications/generators/SVG/v2.c:331,1
    - Dst: generateGenericInfo
      Src: /src/gpac/applications/generators/SVG/v2.c:333,1
    - Dst: generateGenericInfo
      Src: /src/gpac/applications/generators/SVG/v2.c:335,1
    - Dst: generateGenericInfo
      Src: /src/gpac/applications/generators/SVG/v2.c:337,1
    - Dst: generateGenericInfo
      Src: /src/gpac/applications/generators/SVG/v2.c:339,1
    - Dst: generateGenericInfo
      Src: /src/gpac/applications/generators/SVG/v2.c:341,1
    - Dst: generateTransformInfo2
      Src: /src/gpac/applications/generators/SVG/v2.c:343,1
    - Dst: generateMotionTransformInfo2
      Src: /src/gpac/applications/generators/SVG/v2.c:344,1
    - Dst: generateXYInfo2
      Src: /src/gpac/applications/generators/SVG/v2.c:347,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v2.c:349,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v2.c:350,1
    - Dst: generateAttributeInfo2
      Src: /src/gpac/applications/generators/SVG/v2.c:351,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:353,1
    CyclomaticComplexity: 74
    EdgeCount: 74
    ICount: 248
    argCount: 2
    argNames:
    - output
    - svg_elt
    argTypes:
    - FILE*
    - SVGGenElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 355
    functionName: generateNodeImpl2
    functionSourceFile: /src/gpac/applications/generators/SVG/v2.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - generateAttributeInfo2
    - generateTransformInfo2
    - generateXYInfo2
    - generateMotionTransformInfo2
    - gf_list_count
    - generateGenericInfo
    - strcmp
    - fprintf
    - generateCoreInfo
    linkageType: ''
    returnType: void
    signature: void generateNodeImpl2(FILE *output, SVGGenElement* svg_elt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BeginFile
      Src: /src/gpac/applications/generators/SVG/v2.c:362,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:363,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:364,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:365,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:368,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v2.c:369,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v2.c:370,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:372,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:374,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:378,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:380,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:381,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:382,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v2.c:383,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v2.c:384,1
    - Dst: generateNode2
      Src: /src/gpac/applications/generators/SVG/v2.c:385,1
    - Dst: EndFile
      Src: /src/gpac/applications/generators/SVG/v2.c:387,1
    - Dst: BeginFile
      Src: /src/gpac/applications/generators/SVG/v2.c:389,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:390,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:392,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:393,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v2.c:394,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v2.c:395,1
    - Dst: generateNodeImpl2
      Src: /src/gpac/applications/generators/SVG/v2.c:396,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:399,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:400,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:401,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v2.c:402,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v2.c:403,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:404,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:406,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:408,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:409,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:410,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v2.c:411,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v2.c:412,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:413,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:415,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:417,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:418,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v2.c:419,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v2.c:420,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:421,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:423,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:425,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:426,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v2.c:427,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v2.c:428,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:429,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:431,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:433,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v2.c:434,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v2.c:435,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:436,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:438,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:440,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v2.c:441,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v2.c:442,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:443,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:445,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:447,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v2.c:448,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v2.c:449,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:450,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:451,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:452,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:454,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v2.c:456,1
    - Dst: EndFile
      Src: /src/gpac/applications/generators/SVG/v2.c:457,1
    - Dst: generate_laser_tables
      Src: /src/gpac/applications/generators/SVG/v2.c:459,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 75
    argCount: 1
    argNames:
    - svg_elements
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 357
    functionDepth: 3
    functionLinenumber: 357
    functionLinenumberEnd: 460
    functionName: generateSVGCode_V2
    functionSourceFile: /src/gpac/applications/generators/SVG/v2.c
    functionUses: 1
    functionsReached:
    - EndFile
    - gf_list_get
    - generate_laser_tables
    - generateNodeImpl2
    - generateNode2
    - gf_list_count
    - BeginFile
    - fprintf
    linkageType: ''
    returnType: void
    signature: void generateSVGCode_V2(GF_List *svg_elements)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:30,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:33,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:35,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:38,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:39,1
    - Dst: generateAttributes
      Src: /src/gpac/applications/generators/SVG/v1.c:42,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:45,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:46,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:48,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - output
    - svg_elt
    argTypes:
    - FILE*
    - SVGGenElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 28
    functionDepth: 2
    functionLinenumber: 28
    functionLinenumberEnd: 49
    functionName: generateNode
    functionSourceFile: /src/gpac/applications/generators/SVG/v1.c
    functionUses: 0
    functionsReached:
    - strcmp
    - generateAttributes
    - fprintf
    linkageType: ''
    returnType: void
    signature: void generateNode(FILE *output, SVGGenElement* svg_elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:54,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:55,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:56,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:57,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - output
    - elt_imp_name
    - att
    - i
    argTypes:
    - FILE*
    - char*
    - SVGGenAttribute*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 59
    functionName: generateAttributeInfo
    functionSourceFile: /src/gpac/applications/generators/SVG/v1.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void generateAttributeInfo(FILE *output, char * elt_imp_name, SVGGenAttribute
      *att, u32 i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:65,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:66,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:67,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:68,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:69,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:72,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:73,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:74,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:75,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:76,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:79,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:80,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:81,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:82,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:83,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:86,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:87,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:88,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:89,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:90,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:93,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:94,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:95,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:96,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:97,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:100,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:101,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:102,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:103,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:104,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:107,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:108,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:109,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:110,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 44
    argCount: 3
    argNames:
    - output
    - elt
    - start
    argTypes:
    - FILE*
    - SVGGenElement*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 115
    functionName: generateCoreInfo
    functionSourceFile: /src/gpac/applications/generators/SVG/v1.c
    functionUses: 1
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: u32
    signature: u32 generateCoreInfo(FILE *output, SVGGenElement *elt, u32 start)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:119,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:120,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:121,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:122,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 5
    argNames:
    - output
    - pointer
    - name
    - type
    - i
    argTypes:
    - FILE*
    - char*
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 124
    functionName: generateAttributeInfoFlat
    functionSourceFile: /src/gpac/applications/generators/SVG/v1.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void generateAttributeInfoFlat(FILE *output, char *pointer, char *name,
      char *type, u32 i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:130,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:131,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:132,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:133,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 3
    argNames:
    - output
    - elt
    - start
    argTypes:
    - FILE*
    - SVGGenElement*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 137
    functionName: generateTransformInfo
    functionSourceFile: /src/gpac/applications/generators/SVG/v1.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: u32
    signature: u32 generateTransformInfo(FILE *output, SVGGenElement *elt, u32 start)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:143,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:144,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:145,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:146,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 3
    argNames:
    - output
    - elt
    - start
    argTypes:
    - FILE*
    - SVGGenElement*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 150
    functionName: generateMotionTransformInfo
    functionSourceFile: /src/gpac/applications/generators/SVG/v1.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: u32
    signature: u32 generateMotionTransformInfo(FILE *output, SVGGenElement *elt, u32
      start)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:156,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:157,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:158,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:159,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:160,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:163,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:164,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:165,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:166,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 3
    argNames:
    - output
    - elt
    - start
    argTypes:
    - FILE*
    - SVGGenElement*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 170
    functionName: generateXYInfo
    functionSourceFile: /src/gpac/applications/generators/SVG/v1.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: u32
    signature: u32 generateXYInfo(FILE *output, SVGGenElement *elt, u32 start)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: findAttribute
      Src: /src/gpac/applications/generators/SVG/v1.c:178,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/SVG/v1.c:181,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:182,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/SVG/v1.c:183,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:184,1
    - Dst: svgNameToImplementationName
      Src: /src/gpac/applications/generators/SVG/v1.c:187,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:188,1
    - Dst: generateAttributeInfoFlat
      Src: /src/gpac/applications/generators/SVG/v1.c:190,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 5
    argNames:
    - output
    - elt
    - index
    - pointer_root
    - start
    argTypes:
    - FILE*
    - SVGGenElement*
    - u32
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 172
    functionDepth: 2
    functionLinenumber: 172
    functionLinenumberEnd: 195
    functionName: generateGenericInfo
    functionSourceFile: /src/gpac/applications/generators/SVG/v1.c
    functionUses: 1
    functionsReached:
    - sprintf
    - strstr
    - svgNameToImplementationName
    - findAttribute
    - generateAttributeInfoFlat
    linkageType: ''
    returnType: u32
    signature: u32 generateGenericInfo(FILE *output, SVGGenElement *elt, u32 index,
      char *pointer_root, u32 start)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: findAttribute
      Src: /src/gpac/applications/generators/SVG/v1.c:203,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:205,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - output
    - elt
    - index
    - start
    argTypes:
    - FILE*
    - SVGGenElement*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 197
    functionDepth: 2
    functionLinenumber: 197
    functionLinenumberEnd: 210
    functionName: generateIndexInfo
    functionSourceFile: /src/gpac/applications/generators/SVG/v1.c
    functionUses: 0
    functionsReached:
    - findAttribute
    - fprintf
    linkageType: ''
    returnType: u32
    signature: u32 generateIndexInfo(FILE *output, SVGGenElement *elt, u32 index,
      u32 start)
  - BBCount: 53
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:219,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:220,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:222,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:226,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:229,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:232,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:235,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:238,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:241,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:244,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:248,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:251,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:252,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:253,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v1.c:257,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v1.c:258,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:260,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:261,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:262,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:263,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:264,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:264,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:265,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:266,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:267,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:268,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:269,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:270,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:271,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:272,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:273,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:274,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:275,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:276,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:277,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:278,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:279,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:283,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:284,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:285,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:286,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:287,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:289,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:290,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:292,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:293,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:295,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:296,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:297,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:299,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:300,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:301,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:302,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:303,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:304,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:305,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:307,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:307,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:307,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:308,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:310,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:315,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:316,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:318,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:320,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:321,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:323,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:324,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v1.c:327,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v1.c:328,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:329,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:330,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:331,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:332,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:333,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:334,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:335,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:336,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:337,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:339,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:341,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:342,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:343,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:344,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:345,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/SVG/v1.c:345,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:346,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:350,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:353,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:354,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:355,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:360,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:361,1
    - Dst: generateCoreInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:363,1
    - Dst: generateGenericInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:366,1
    - Dst: generateGenericInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:368,1
    - Dst: generateGenericInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:370,1
    - Dst: generateGenericInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:372,1
    - Dst: generateGenericInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:374,1
    - Dst: generateGenericInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:376,1
    - Dst: generateGenericInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:378,1
    - Dst: generateGenericInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:380,1
    - Dst: generateGenericInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:382,1
    - Dst: generateTransformInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:384,1
    - Dst: generateMotionTransformInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:385,1
    - Dst: generateXYInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:388,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v1.c:390,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v1.c:391,1
    - Dst: generateAttributeInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:392,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:394,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:399,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:402,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:404,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:406,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:408,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:410,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:412,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:414,1
    - Dst: generateIndexInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:417,1
    - Dst: generateIndexInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:419,1
    - Dst: generateIndexInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:421,1
    - Dst: generateIndexInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:423,1
    - Dst: generateIndexInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:425,1
    - Dst: generateIndexInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:427,1
    - Dst: generateIndexInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:429,1
    - Dst: generateIndexInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:431,1
    - Dst: generateIndexInfo
      Src: /src/gpac/applications/generators/SVG/v1.c:433,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:435,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:438,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:442,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:444,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v1.c:448,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v1.c:449,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:450,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:454,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 209
    argCount: 2
    argNames:
    - output
    - svg_elt
    argTypes:
    - FILE*
    - SVGGenElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 212
    functionDepth: 3
    functionLinenumber: 212
    functionLinenumberEnd: 455
    functionName: generateNodeImpl
    functionSourceFile: /src/gpac/applications/generators/SVG/v1.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - generateAttributeInfo
    - generateIndexInfo
    - generateTransformInfo
    - gf_list_count
    - generateGenericInfo
    - generateXYInfo
    - strcmp
    - generateMotionTransformInfo
    - fprintf
    - generateCoreInfo
    linkageType: ''
    returnType: void
    signature: void generateNodeImpl(FILE *output, SVGGenElement* svg_elt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BeginFile
      Src: /src/gpac/applications/generators/SVG/v1.c:467,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:468,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:469,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:470,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:473,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v1.c:474,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v1.c:475,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:477,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:479,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:483,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:485,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:486,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:487,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v1.c:488,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v1.c:489,1
    - Dst: generateNode
      Src: /src/gpac/applications/generators/SVG/v1.c:490,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:492,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:493,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:494,1
    - Dst: EndFile
      Src: /src/gpac/applications/generators/SVG/v1.c:495,1
    - Dst: BeginFile
      Src: /src/gpac/applications/generators/SVG/v1.c:502,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:503,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:505,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:506,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:507,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v1.c:508,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v1.c:509,1
    - Dst: generateNodeImpl
      Src: /src/gpac/applications/generators/SVG/v1.c:510,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:516,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:517,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:518,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v1.c:519,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v1.c:520,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:521,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:523,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:528,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:529,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:530,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v1.c:531,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v1.c:532,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:533,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:535,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:540,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:541,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v1.c:542,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v1.c:543,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:544,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:546,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:551,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:552,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v1.c:553,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v1.c:554,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:555,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:557,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:562,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v1.c:563,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v1.c:564,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:565,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:567,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:573,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v1.c:574,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v1.c:575,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:576,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:578,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:583,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v1.c:584,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v1.c:585,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:586,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:588,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:593,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/SVG/v1.c:594,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/SVG/v1.c:595,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:596,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:597,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:598,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:600,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:602,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/SVG/v1.c:603,1
    - Dst: EndFile
      Src: /src/gpac/applications/generators/SVG/v1.c:604,1
    - Dst: generate_laser_tables
      Src: /src/gpac/applications/generators/SVG/v1.c:606,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 85
    argCount: 1
    argNames:
    - svg_elements
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 457
    functionDepth: 4
    functionLinenumber: 457
    functionLinenumberEnd: 607
    functionName: generateSVGCode_V1
    functionSourceFile: /src/gpac/applications/generators/SVG/v1.c
    functionUses: 1
    functionsReached:
    - EndFile
    - gf_list_get
    - generate_laser_tables
    - generateNodeImpl
    - generateNode
    - gf_list_count
    - BeginFile
    - fprintf
    linkageType: ''
    returnType: void
    signature: void generateSVGCode_V1(GF_List *svg_elements)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:32,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/generators/WebGLGen/main.c:33,1
    - Dst: gf_file_temp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:35,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:37,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ctx_name
    - ifce_c
    - fun_c
    argTypes:
    - char*
    - FILE**
    - FILE**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 39
    functionName: start_ctx
    functionSourceFile: /src/gpac/applications/generators/WebGLGen/main.c
    functionUses: 0
    functionsReached:
    - gf_fopen
    - sprintf
    - gf_file_temp
    - fprintf
    linkageType: ''
    returnType: void
    signature: void start_ctx(char *ctx_name, FILE **ifce_c, FILE **fun_c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:45,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/generators/WebGLGen/main.c:46,1
    - Dst: feof
      Src: /src/gpac/applications/generators/WebGLGen/main.c:47,1
    - Dst: gf_fgets
      Src: /src/gpac/applications/generators/WebGLGen/main.c:50,1
    - Dst: gf_fputs
      Src: /src/gpac/applications/generators/WebGLGen/main.c:51,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/generators/WebGLGen/main.c:53,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:54,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/generators/WebGLGen/main.c:55,1
    - Dst: gf_free
      Src: /src/gpac/applications/generators/WebGLGen/main.c:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - ifce_c
    - func_c
    - ctx_name
    argTypes:
    - FILE*
    - FILE*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 58
    functionName: end_ctx
    functionSourceFile: /src/gpac/applications/generators/WebGLGen/main.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_fseek
    - gf_fgets
    - gf_fputs
    - feof
    - fprintf
    linkageType: ''
    returnType: void
    signature: void end_ctx(FILE *ifce_c, FILE *func_c, char *ctx_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - fun_defs
    - c_name
    - c_val
    argTypes:
    - FILE*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: put_const
    functionSourceFile: /src/gpac/applications/generators/WebGLGen/main.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void put_const(FILE *fun_defs, char *c_name, char *c_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - fun_defs
    - f_name
    argTypes:
    - FILE*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: put_fun
    functionSourceFile: /src/gpac/applications/generators/WebGLGen/main.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void put_fun(FILE *fun_defs, char *f_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:71,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:73,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - fun_defs
    - ctx_name
    - pname
    - is_readonly
    argTypes:
    - FILE*
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 75
    functionName: put_prop
    functionSourceFile: /src/gpac/applications/generators/WebGLGen/main.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void put_prop(FILE *fun_defs, char *ctx_name, char *pname, Bool is_readonly)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:80,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:81,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:82,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:83,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:84,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:85,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:86,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:87,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:88,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:89,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:90,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:91,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:92,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:93,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:94,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:95,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:96,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:97,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:98,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:99,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:100,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:101,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:102,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:103,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:104,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:105,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:106,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:107,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:108,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:110,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:114,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:118,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:121,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:124,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:125,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:126,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:132,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:133,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:134,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:139,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 83
    argCount: 2
    argNames:
    - arg_type
    - is_array
    argTypes:
    - char*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 141
    functionName: get_arg_type
    functionSourceFile: /src/gpac/applications/generators/WebGLGen/main.c
    functionUses: 0
    functionsReached:
    - strcmp
    - fprintf
    linkageType: ''
    returnType: char
    signature: char *get_arg_type(char *arg_type, Bool *is_array)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: get_arg_type
      Src: /src/gpac/applications/generators/WebGLGen/main.c:146,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:149,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:150,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:152,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:153,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:155,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:156,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:158,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:159,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:161,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:162,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:164,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:165,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:167,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:168,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:170,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:171,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:173,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:174,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:176,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:177,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:179,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:180,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:181,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:182,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:183,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:184,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:185,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:187,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:190,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:191,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:192,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:193,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:194,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:195,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:197,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:198,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:199,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:201,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:201,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:203,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:204,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:205,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:207,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:208,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:211,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:212,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:213,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:215,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:220,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 67
    argCount: 5
    argNames:
    - ifce_c
    - fname
    - idx
    - arg_type
    - arg_name
    argTypes:
    - FILE*
    - char*
    - int
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 223
    functionName: put_arg_get
    functionSourceFile: /src/gpac/applications/generators/WebGLGen/main.c
    functionUses: 0
    functionsReached:
    - strstr
    - get_arg_type
    - strcmp
    - fprintf
    linkageType: ''
    returnType: void
    signature: void put_arg_get(FILE *ifce_c, char *fname, int idx, char *arg_type,
      char *arg_name)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: get_arg_type
      Src: /src/gpac/applications/generators/WebGLGen/main.c:228,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:233,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:234,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:235,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:236,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:237,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:238,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:239,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:240,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:242,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:243,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:246,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:247,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:248,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:249,1
    - Dst: strncmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:250,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:251,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:253,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 4
    argNames:
    - ifce_c
    - fname
    - arg_type
    - arg_name
    argTypes:
    - FILE*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 255
    functionName: put_arg_decl
    functionSourceFile: /src/gpac/applications/generators/WebGLGen/main.c
    functionUses: 0
    functionsReached:
    - strstr
    - strncmp
    - strcmp
    - get_arg_type
    - fprintf
    linkageType: ''
    returnType: void
    signature: void put_arg_decl(FILE *ifce_c, char *fname, char *arg_type, char *arg_name)
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:269,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:270,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:274,1
    - Dst: memset
      Src: /src/gpac/applications/generators/WebGLGen/main.c:277,1
    - Dst: memset
      Src: /src/gpac/applications/generators/WebGLGen/main.c:278,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:284,1
    - Dst: assert
      Src: /src/gpac/applications/generators/WebGLGen/main.c:285,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/generators/WebGLGen/main.c:287,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:293,1
    - Dst: assert
      Src: /src/gpac/applications/generators/WebGLGen/main.c:294,1
    - Dst: strdup
      Src: /src/gpac/applications/generators/WebGLGen/main.c:296,1
    - Dst: strlen
      Src: /src/gpac/applications/generators/WebGLGen/main.c:298,1
    - Dst: assert
      Src: /src/gpac/applications/generators/WebGLGen/main.c:299,1
    - Dst: strncmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:299,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:303,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:305,1
    - Dst: assert
      Src: /src/gpac/applications/generators/WebGLGen/main.c:312,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:314,1
    - Dst: assert
      Src: /src/gpac/applications/generators/WebGLGen/main.c:317,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/generators/WebGLGen/main.c:319,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/generators/WebGLGen/main.c:320,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:326,1
    - Dst: put_arg_decl
      Src: /src/gpac/applications/generators/WebGLGen/main.c:329,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:331,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:334,1
    - Dst: put_arg_get
      Src: /src/gpac/applications/generators/WebGLGen/main.c:336,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:341,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:342,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:345,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:346,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:349,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:350,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:353,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:354,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:358,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:359,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:359,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:359,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:359,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:360,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:364,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:364,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:365,1
    - Dst: put_arg_decl
      Src: /src/gpac/applications/generators/WebGLGen/main.c:368,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:379,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:380,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:381,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:382,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:384,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:384,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:387,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:387,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:387,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:387,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:388,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:391,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:391,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:392,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:393,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:394,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:395,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:396,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:396,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:397,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:398,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:399,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:400,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:401,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:403,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:405,1
    - Dst: strncmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:407,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:409,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:411,1
    - Dst: get_arg_type
      Src: /src/gpac/applications/generators/WebGLGen/main.c:418,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:420,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:421,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:429,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:429,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:430,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:430,1
    - Dst: strncmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:431,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:435,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:437,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:437,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:437,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:438,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:441,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:444,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:445,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:446,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:447,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:449,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:453,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:456,1
    - Dst: get_arg_type
      Src: /src/gpac/applications/generators/WebGLGen/main.c:459,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:460,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:461,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:462,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:467,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:467,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:468,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:469,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:470,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:471,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:472,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:473,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:475,1
    - Dst: get_arg_type
      Src: /src/gpac/applications/generators/WebGLGen/main.c:479,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:480,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:481,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:482,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:483,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:484,1
    - Dst: get_arg_type
      Src: /src/gpac/applications/generators/WebGLGen/main.c:489,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:491,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:492,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:495,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:496,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:497,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:498,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:499,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:501,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:506,1
    - Dst: gf_free
      Src: /src/gpac/applications/generators/WebGLGen/main.c:510,1
    - Dst: gf_free
      Src: /src/gpac/applications/generators/WebGLGen/main.c:511,1
    - Dst: gf_free
      Src: /src/gpac/applications/generators/WebGLGen/main.c:514,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:515,1
    CyclomaticComplexity: 82
    EdgeCount: 82
    ICount: 227
    argCount: 3
    argNames:
    - ifce_c
    - fname
    - fun_def
    argTypes:
    - FILE*
    - char*
    - char*
    assertStmts:
    - condition: (nsep)
      pos:
        line_end: 316
        line_start: 316
        source_file: /src/gpac/applications/generators/WebGLGen/main.c
    - condition: (nsep)
      pos:
        line_end: 284
        line_start: 284
        source_file: /src/gpac/applications/generators/WebGLGen/main.c
    - condition: (0)
      pos:
        line_end: 311
        line_start: 311
        source_file: /src/gpac/applications/generators/WebGLGen/main.c
    - condition: (!strncmp(sep, fname, len) )
      pos:
        line_end: 298
        line_start: 298
        source_file: /src/gpac/applications/generators/WebGLGen/main.c
    - condition: (nsep)
      pos:
        line_end: 293
        line_start: 293
        source_file: /src/gpac/applications/generators/WebGLGen/main.c
    constantsTouched: []
    func_position:
      end: 516
      start: 259
    functionDepth: 2
    functionLinenumber: 259
    functionLinenumberEnd: 516
    functionName: wrap_func
    functionSourceFile: /src/gpac/applications/generators/WebGLGen/main.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - assert
    - strstr
    - put_arg_decl
    - memset
    - strdup
    - strncmp
    - put_arg_get
    - strcmp
    - strchr
    - get_arg_type
    - strlen
    - fprintf
    linkageType: ''
    returnType: void
    signature: void wrap_func(FILE *ifce_c, char *fname, char *fun_def)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/applications/generators/WebGLGen/main.c:525,1
    - Dst: feof
      Src: /src/gpac/applications/generators/WebGLGen/main.c:529,1
    - Dst: gf_fgets
      Src: /src/gpac/applications/generators/WebGLGen/main.c:530,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:531,1
    - Dst: strlen
      Src: /src/gpac/applications/generators/WebGLGen/main.c:533,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:534,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:541,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:544,1
    - Dst: assert
      Src: /src/gpac/applications/generators/WebGLGen/main.c:545,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/generators/WebGLGen/main.c:546,1
    - Dst: start_ctx
      Src: /src/gpac/applications/generators/WebGLGen/main.c:547,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:550,1
    - Dst: end_ctx
      Src: /src/gpac/applications/generators/WebGLGen/main.c:552,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:558,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:559,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:562,1
    - Dst: assert
      Src: /src/gpac/applications/generators/WebGLGen/main.c:563,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:565,1
    - Dst: assert
      Src: /src/gpac/applications/generators/WebGLGen/main.c:566,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/generators/WebGLGen/main.c:568,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:569,1
    - Dst: assert
      Src: /src/gpac/applications/generators/WebGLGen/main.c:570,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:573,1
    - Dst: assert
      Src: /src/gpac/applications/generators/WebGLGen/main.c:574,1
    - Dst: put_const
      Src: /src/gpac/applications/generators/WebGLGen/main.c:576,1
    - Dst: gf_free
      Src: /src/gpac/applications/generators/WebGLGen/main.c:577,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:580,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:583,1
    - Dst: strncmp
      Src: /src/gpac/applications/generators/WebGLGen/main.c:589,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:594,1
    - Dst: assert
      Src: /src/gpac/applications/generators/WebGLGen/main.c:595,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:597,1
    - Dst: assert
      Src: /src/gpac/applications/generators/WebGLGen/main.c:598,1
    - Dst: put_prop
      Src: /src/gpac/applications/generators/WebGLGen/main.c:600,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:604,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:607,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:610,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:613,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:617,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:621,1
    - Dst: assert
      Src: /src/gpac/applications/generators/WebGLGen/main.c:622,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/WebGLGen/main.c:624,1
    - Dst: assert
      Src: /src/gpac/applications/generators/WebGLGen/main.c:625,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/generators/WebGLGen/main.c:627,1
    - Dst: put_fun
      Src: /src/gpac/applications/generators/WebGLGen/main.c:628,1
    - Dst: wrap_func
      Src: /src/gpac/applications/generators/WebGLGen/main.c:631,1
    - Dst: gf_free
      Src: /src/gpac/applications/generators/WebGLGen/main.c:632,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/WebGLGen/main.c:635,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/generators/WebGLGen/main.c:639,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 104
    argCount: 1
    argNames:
    - file
    argTypes:
    - char*
    assertStmts:
    - condition: (sep)
      pos:
        line_end: 562
        line_start: 562
        source_file: /src/gpac/applications/generators/WebGLGen/main.c
    - condition: (sep)
      pos:
        line_end: 569
        line_start: 569
        source_file: /src/gpac/applications/generators/WebGLGen/main.c
    - condition: (nsep)
      pos:
        line_end: 573
        line_start: 573
        source_file: /src/gpac/applications/generators/WebGLGen/main.c
    - condition: (nsep)
      pos:
        line_end: 624
        line_start: 624
        source_file: /src/gpac/applications/generators/WebGLGen/main.c
    - condition: (sep)
      pos:
        line_end: 544
        line_start: 544
        source_file: /src/gpac/applications/generators/WebGLGen/main.c
    - condition: (sep)
      pos:
        line_end: 594
        line_start: 594
        source_file: /src/gpac/applications/generators/WebGLGen/main.c
    - condition: (nsep)
      pos:
        line_end: 565
        line_start: 565
        source_file: /src/gpac/applications/generators/WebGLGen/main.c
    - condition: (nsep)
      pos:
        line_end: 597
        line_start: 597
        source_file: /src/gpac/applications/generators/WebGLGen/main.c
    - condition: (sep)
      pos:
        line_end: 621
        line_start: 621
        source_file: /src/gpac/applications/generators/WebGLGen/main.c
    constantsTouched: []
    func_position:
      end: 640
      start: 519
    functionDepth: 3
    functionLinenumber: 519
    functionLinenumberEnd: 640
    functionName: load_idl
    functionSourceFile: /src/gpac/applications/generators/WebGLGen/main.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_strdup
    - wrap_func
    - gf_fgets
    - assert
    - strstr
    - feof
    - start_ctx
    - end_ctx
    - gf_fopen
    - strncmp
    - put_fun
    - put_const
    - put_prop
    - strchr
    - strlen
    - fprintf
    linkageType: ''
    returnType: void
    signature: void load_idl(const char *file)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: load_idl
      Src: /src/gpac/applications/generators/WebGLGen/main.c:646,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 650
      start: 642
    functionDepth: 4
    functionLinenumber: 642
    functionLinenumberEnd: 650
    functionName: main
    functionSourceFile: /src/gpac/applications/generators/WebGLGen/main.c
    functionUses: 5
    functionsReached:
    - load_idl
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/applications/generators/MPEG4/main.c:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 54
    functionName: PrintUsage
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 5
    functionsReached:
    - printf
    linkageType: ''
    returnType: void
    signature: void PrintUsage()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/applications/generators/MPEG4/main.c:109,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - sep
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 114
    functionName: skip_sep
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - strchr
    linkageType: ''
    returnType: void
    signature: void skip_sep(char *sep)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/generators/MPEG4/main.c:121,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/MPEG4/main.c:124,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/MPEG4/main.c:140,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 2
    argNames:
    - token
    - sep
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 152
    functionName: GetNextToken
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - strcpy
    - strchr
    linkageType: ''
    returnType: u32
    signature: u32 GetNextToken(char *token, char *sep)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:158,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:158,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:160,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:161,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - val
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 163
    functionName: GetFixedPrintout
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - strcmp
    - sprintf
    linkageType: ''
    returnType: char
    signature: char *GetFixedPrintout(char *val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/applications/generators/MPEG4/main.c:167,1
    - Dst: memset
      Src: /src/gpac/applications/generators/MPEG4/main.c:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 170
    functionName: BlankField
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: BField
    signature: BField *BlankField()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/applications/generators/MPEG4/main.c:175,1
    - Dst: memset
      Src: /src/gpac/applications/generators/MPEG4/main.c:176,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/generators/MPEG4/main.c:177,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/generators/MPEG4/main.c:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 180
    functionName: BlankNode
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: BNode
    signature: BNode *BlankNode()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:185,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:186,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:188,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - NDTs
    - famName
    argTypes:
    - GF_List*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 191
    functionName: IsNDT
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: u8
    signature: u8 IsNDT(GF_List *NDTs, char *famName)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:197,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:198,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:199,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/generators/MPEG4/main.c:201,1
    - Dst: strlen
      Src: /src/gpac/applications/generators/MPEG4/main.c:201,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/MPEG4/main.c:202,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/MPEG4/main.c:203,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - token
    - NDTs
    argTypes:
    - char*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 193
    functionDepth: 1
    functionLinenumber: 193
    functionLinenumberEnd: 204
    functionName: CheckInTable
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_list_get
    - strcpy
    - gf_list_count
    - strcmp
    - gf_list_add
    - strlen
    linkageType: ''
    returnType: void
    signature: void CheckInTable(char *token, GF_List *NDTs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:214,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:215,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:220,1
    - Dst: stricmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:223,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:224,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:227,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/generators/MPEG4/main.c:231,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:232,1
    - Dst: time
      Src: /src/gpac/applications/generators/MPEG4/main.c:238,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:239,1
    - Dst: asctime
      Src: /src/gpac/applications/generators/MPEG4/main.c:239,1
    - Dst: gmtime
      Src: /src/gpac/applications/generators/MPEG4/main.c:239,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:243,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:244,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:245,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:246,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 2
    argNames:
    - name
    - type
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 250
    functionName: BeginFile
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 5
    functionsReached:
    - gmtime
    - sprintf
    - gf_fopen
    - strcmp
    - stricmp
    - asctime
    - time
    - fprintf
    linkageType: ''
    returnType: FILE
    signature: FILE *BeginFile(char *name, u32 type)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:255,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:256,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:258,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/generators/MPEG4/main.c:260,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - f
    - name
    - type
    argTypes:
    - FILE*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 261
    functionName: EndFile
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 3
    functionsReached:
    - gf_fclose
    - strcmp
    - fprintf
    linkageType: ''
    returnType: void
    signature: void EndFile(FILE *f, char *name, u32 type)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:265,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:265,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/MPEG4/main.c:266,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:268,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/MPEG4/main.c:269,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - token
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 271
    functionName: TranslateToken
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - strcpy
    - strcmp
    linkageType: ''
    returnType: void
    signature: void TranslateToken(char *token)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: BeginFile
      Src: /src/gpac/applications/generators/MPEG4/main.c:283,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:285,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:286,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:290,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:292,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:293,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:295,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:297,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:299,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:301,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:302,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:305,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:306,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:309,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:310,1
    - Dst: stricmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:311,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:311,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:312,1
    - Dst: stricmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:312,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:313,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:317,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:318,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:320,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:320,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:321,1
    - Dst: stricmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:321,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:325,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/MPEG4/main.c:326,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:327,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:329,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:331,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:332,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:337,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/MPEG4/main.c:338,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/MPEG4/main.c:340,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:341,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:344,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:347,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:350,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:351,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:352,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:353,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:355,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:356,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:357,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:359,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:365,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:366,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:367,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:369,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:371,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:374,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:377,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:378,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:381,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:382,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:383,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:386,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:388,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:391,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:392,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:393,1
    - Dst: EndFile
      Src: /src/gpac/applications/generators/MPEG4/main.c:395,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 93
    argCount: 3
    argNames:
    - BNodes
    - NDTs
    - NumVersions
    argTypes:
    - GF_List*
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 275
    functionDepth: 1
    functionLinenumber: 275
    functionLinenumberEnd: 397
    functionName: WriteNodesFile
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - EndFile
    - gf_list_get
    - strstr
    - gf_list_count
    - BeginFile
    - strcmp
    - stricmp
    - fprintf
    linkageType: ''
    returnType: void
    signature: void WriteNodesFile(GF_List *BNodes, GF_List *NDTs, u32 NumVersions)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:404,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:405,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:406,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - node
    - NDTName
    argTypes:
    - BNode*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 400
    functionDepth: 1
    functionLinenumber: 400
    functionLinenumberEnd: 409
    functionName: IsNodeInTable
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: u32
    signature: u32 IsNodeInTable(BNode *node, char *NDTName)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - MaxVal
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 417
    functionName: GetBitsCount
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 GetBitsCount(u32 MaxVal)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:435,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:436,1
    - Dst: IsNodeInTable
      Src: /src/gpac/applications/generators/MPEG4/main.c:438,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 3
    argNames:
    - NDTName
    - BNodes
    - Version
    argTypes:
    - char*
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 419
    functionDepth: 1
    functionLinenumber: 419
    functionLinenumberEnd: 443
    functionName: GetNDTCount
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - IsNodeInTable
    linkageType: ''
    returnType: u32
    signature: u32 GetNDTCount(char *NDTName, GF_List *BNodes, u32 Version)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:451,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:454,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:455,1
    - Dst: GetNDTCount
      Src: /src/gpac/applications/generators/MPEG4/main.c:456,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:465,1
    - Dst: GetBitsCount
      Src: /src/gpac/applications/generators/MPEG4/main.c:465,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:466,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:468,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:471,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:472,1
    - Dst: IsNodeInTable
      Src: /src/gpac/applications/generators/MPEG4/main.c:474,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:477,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:480,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:483,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:487,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:488,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:489,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:491,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 4
    argNames:
    - f
    - BNodes
    - NDTs
    - Version
    argTypes:
    - FILE*
    - GF_List*
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 445
    functionDepth: 1
    functionLinenumber: 445
    functionLinenumberEnd: 492
    functionName: WriteNDT_H
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - IsNodeInTable
    - gf_list_count
    - GetNDTCount
    - GetBitsCount
    - fprintf
    linkageType: ''
    returnType: void
    signature: void WriteNDT_H(FILE *f, GF_List *BNodes, GF_List *NDTs, u32 Version)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:505,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:508,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:510,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:511,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:512,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:514,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:515,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:518,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:520,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:521,1
    - Dst: GetNDTCount
      Src: /src/gpac/applications/generators/MPEG4/main.c:523,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:531,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:532,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:534,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:537,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:539,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:540,1
    - Dst: GetNDTCount
      Src: /src/gpac/applications/generators/MPEG4/main.c:542,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:550,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:553,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 42
    argCount: 4
    argNames:
    - f
    - BNodes
    - NDTs
    - Version
    argTypes:
    - FILE*
    - GF_List*
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 554
      start: 499
    functionDepth: 1
    functionLinenumber: 499
    functionLinenumberEnd: 554
    functionName: WriteNDT_Dec
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - GetNDTCount
    - fprintf
    linkageType: ''
    returnType: void
    signature: void WriteNDT_Dec(FILE *f, GF_List *BNodes, GF_List *NDTs, u32 Version)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:561,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:562,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:563,1
    - Dst: GetNDTCount
      Src: /src/gpac/applications/generators/MPEG4/main.c:564,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:571,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:573,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 4
    argNames:
    - f
    - BNodes
    - NDTs
    - Version
    argTypes:
    - FILE*
    - GF_List*
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 574
      start: 557
    functionDepth: 1
    functionLinenumber: 557
    functionLinenumberEnd: 574
    functionName: WriteNDT_Enc
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - GetNDTCount
    - fprintf
    linkageType: ''
    returnType: void
    signature: void WriteNDT_Enc(FILE *f, GF_List *BNodes, GF_List *NDTs, u32 Version)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:585,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:586,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:587,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:587,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:590,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:590,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:595,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:595,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:606,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:607,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:608,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:609,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:609,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:611,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:614,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:617,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:622,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:623,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:624,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:625,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:625,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:627,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:630,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:633,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:638,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:639,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:640,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:641,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:641,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:643,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:646,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:649,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:654,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:655,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:656,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:657,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:657,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:660,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:663,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:666,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:675,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:676,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:678,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:679,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:680,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:681,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:682,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:683,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:683,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:684,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:686,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:688,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:689,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:692,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:693,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:696,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:697,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:700,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:701,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:704,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:705,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:708,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:709,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:710,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:712,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:715,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:716,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:717,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:719,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:721,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:724,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:725,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:726,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:728,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:729,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:731,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:732,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:735,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/MPEG4/main.c:738,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/MPEG4/main.c:739,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:740,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:742,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:745,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:746,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/MPEG4/main.c:749,1
    - Dst: strupr
      Src: /src/gpac/applications/generators/MPEG4/main.c:750,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:752,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:753,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:755,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:757,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:759,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:760,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:761,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:762,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:764,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 161
    argCount: 2
    argNames:
    - f
    - n
    argTypes:
    - FILE*
    - BNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 578
    functionDepth: 1
    functionLinenumber: 578
    functionLinenumberEnd: 765
    functionName: WriteNodeFields
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - strcpy
    - strstr
    - gf_list_count
    - strcmp
    - fprintf
    - strupr
    linkageType: ''
    returnType: void
    signature: void WriteNodeFields(FILE *f, BNode *n)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:772,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:774,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:775,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:778,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:780,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:782,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:783,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:784,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:788,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:788,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:788,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:789,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:790,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:790,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:791,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:793,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:793,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:795,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:795,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:795,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:795,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:796,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:798,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:798,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:801,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:803,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 28
    argCount: 2
    argNames:
    - f
    - n
    argTypes:
    - FILE*
    - BNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 804
      start: 769
    functionDepth: 1
    functionLinenumber: 769
    functionLinenumberEnd: 804
    functionName: WriteNodeQuant
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - GetFixedPrintout
    - gf_list_count
    - strcmp
    - fprintf
    linkageType: ''
    returnType: void
    signature: void WriteNodeQuant(FILE *f, BNode *n)
  - BBCount: 59
    BranchProfiles: []
    Callsites:
    - Dst: BeginFile
      Src: /src/gpac/applications/generators/MPEG4/main.c:815,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:817,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:818,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:820,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:823,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:825,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:829,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:830,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:832,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:833,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:835,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:836,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:839,1
    - Dst: stricmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:839,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:846,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:847,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:848,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:849,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:850,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:851,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:852,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:853,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:854,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:855,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:856,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:857,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:858,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:859,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:860,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:861,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:862,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:863,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:864,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:865,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/MPEG4/main.c:868,1
    - Dst: strlwr
      Src: /src/gpac/applications/generators/MPEG4/main.c:869,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:870,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:872,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:873,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/MPEG4/main.c:875,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/MPEG4/main.c:877,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:878,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:881,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:885,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:886,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:888,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:889,1
    - Dst: WriteNodeFields
      Src: /src/gpac/applications/generators/MPEG4/main.c:892,1
    - Dst: WriteNodeQuant
      Src: /src/gpac/applications/generators/MPEG4/main.c:893,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:899,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:900,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:901,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:903,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:904,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:906,1
    - Dst: stricmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:906,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:907,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/MPEG4/main.c:910,1
    - Dst: strncmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:910,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/MPEG4/main.c:913,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:915,1
    - Dst: stricmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:920,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:921,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:926,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:927,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:928,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/MPEG4/main.c:929,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/MPEG4/main.c:929,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/MPEG4/main.c:929,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:930,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:935,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:937,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:938,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:941,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:942,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:944,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/MPEG4/main.c:947,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:955,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:956,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:956,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:957,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:960,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:961,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:961,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:964,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:965,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:968,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:969,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:972,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:973,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:974,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:977,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:979,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:980,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:982,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:982,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:983,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:984,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:984,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:985,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:986,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:986,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:989,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:991,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:992,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:993,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:993,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:994,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:995,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:996,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:996,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:999,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1001,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1002,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1003,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:1003,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1005,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1006,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1007,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:1007,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1009,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1010,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1011,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:1011,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1014,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1014,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1016,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1017,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1018,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:1018,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1020,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1021,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1022,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:1022,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1024,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1025,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1026,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:1026,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1028,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1029,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1030,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:1030,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1033,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1034,1
    - Dst: strlen
      Src: /src/gpac/applications/generators/MPEG4/main.c:1034,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1035,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1042,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1045,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1047,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1048,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1053,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1054,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1055,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:1055,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1060,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1063,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1065,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1066,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1071,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1074,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1075,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1076,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:1076,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1077,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1078,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1079,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:1079,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1085,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1088,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1090,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1091,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1096,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1099,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1100,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1101,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:1101,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1102,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1103,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1104,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:1104,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1105,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1106,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1107,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:1107,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1113,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1113,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1116,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1118,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1119,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1124,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1127,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1128,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1129,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:1129,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1130,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1131,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1132,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:1132,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1133,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1134,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1135,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:1135,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1136,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1137,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1138,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:1138,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1144,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1147,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1149,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1150,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1155,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1158,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1159,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1165,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1168,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1170,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1171,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1176,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1179,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1180,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:1180,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1181,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1182,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:1182,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1183,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1184,1
    - Dst: GetFixedPrintout
      Src: /src/gpac/applications/generators/MPEG4/main.c:1184,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1190,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1193,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1195,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1196,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1201,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1204,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1205,1
    - Dst: strlen
      Src: /src/gpac/applications/generators/MPEG4/main.c:1205,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1206,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1212,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1215,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1217,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1218,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1223,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1226,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1227,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1228,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1235,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1240,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1244,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1248,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1251,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1252,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1253,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1255,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1258,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1260,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1261,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1262,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1263,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1265,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1267,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1268,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1269,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1271,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1274,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1276,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1277,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1278,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1280,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1283,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1285,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1286,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1287,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1289,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1292,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1294,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1295,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1296,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1298,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1301,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1303,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1304,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1305,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1307,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1310,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1312,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1313,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1314,1
    - Dst: strlen
      Src: /src/gpac/applications/generators/MPEG4/main.c:1315,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1316,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1319,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1322,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1323,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1324,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1326,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1328,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1330,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1331,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1332,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1334,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1337,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1339,1
    - Dst: EndFile
      Src: /src/gpac/applications/generators/MPEG4/main.c:1341,1
    CyclomaticComplexity: 129
    EdgeCount: 129
    ICount: 437
    argCount: 1
    argNames:
    - BNodes
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1342
      start: 806
    functionDepth: 2
    functionLinenumber: 806
    functionLinenumberEnd: 1342
    functionName: WriteNodeCode
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - TranslateToken
    - EndFile
    - gf_list_get
    - GetNextToken
    - WriteNodeFields
    - strcpy
    - GetFixedPrintout
    - sprintf
    - strstr
    - strlwr
    - gf_list_count
    - strncmp
    - BeginFile
    - strcmp
    - stricmp
    - WriteNodeQuant
    - strlen
    - fprintf
    linkageType: ''
    returnType: void
    signature: void WriteNodeCode(GF_List *BNodes)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: feof
      Src: /src/gpac/applications/generators/MPEG4/main.c:1355,1
    - Dst: fgets
      Src: /src/gpac/applications/generators/MPEG4/main.c:1356,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1364,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1367,1
    - Dst: BlankNode
      Src: /src/gpac/applications/generators/MPEG4/main.c:1368,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/MPEG4/main.c:1370,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1373,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1375,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1376,1
    - Dst: printf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1377,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1381,1
    - Dst: CheckInTable
      Src: /src/gpac/applications/generators/MPEG4/main.c:1386,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/generators/MPEG4/main.c:1387,1
    - Dst: strlen
      Src: /src/gpac/applications/generators/MPEG4/main.c:1387,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/MPEG4/main.c:1388,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/MPEG4/main.c:1389,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1393,1
    - Dst: printf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1394,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1397,1
    - Dst: printf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1412,1
    - Dst: BlankField
      Src: /src/gpac/applications/generators/MPEG4/main.c:1415,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/MPEG4/main.c:1416,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/MPEG4/main.c:1419,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1420,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1421,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1423,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/MPEG4/main.c:1423,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1424,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/MPEG4/main.c:1424,1
    - Dst: skip_sep
      Src: /src/gpac/applications/generators/MPEG4/main.c:1427,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1428,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/MPEG4/main.c:1435,1
    - Dst: strlen
      Src: /src/gpac/applications/generators/MPEG4/main.c:1438,1
    - Dst: strlen
      Src: /src/gpac/applications/generators/MPEG4/main.c:1442,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/MPEG4/main.c:1450,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1452,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1453,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1453,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/MPEG4/main.c:1454,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1455,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/MPEG4/main.c:1456,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1458,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1459,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1459,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/MPEG4/main.c:1460,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1461,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/MPEG4/main.c:1462,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1464,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1465,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1465,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/MPEG4/main.c:1466,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1467,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/MPEG4/main.c:1468,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1473,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1478,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1479,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1483,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1484,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1485,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/MPEG4/main.c:1489,1
    - Dst: atoi
      Src: /src/gpac/applications/generators/MPEG4/main.c:1490,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1501,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1502,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1504,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1505,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1507,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1508,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1509,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/MPEG4/main.c:1510,1
    CyclomaticComplexity: 59
    EdgeCount: 59
    ICount: 149
    argCount: 4
    argNames:
    - nodes
    - BNodes
    - NDTs
    - version
    argTypes:
    - FILE*
    - GF_List*
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1514
      start: 1344
    functionDepth: 1
    functionLinenumber: 1344
    functionLinenumberEnd: 1514
    functionName: ParseTemplateFile
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - GetNextToken
    - printf
    - gf_list_get
    - CheckInTable
    - strcpy
    - strlen
    - strstr
    - BlankField
    - gf_list_count
    - strcmp
    - gf_list_add
    - BlankNode
    - skip_sep
    - atoi
    - fgets
    - feof
    linkageType: ''
    returnType: void
    signature: void ParseTemplateFile(FILE *nodes, GF_List *BNodes, GF_List *NDTs,
      u32 version)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1521,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1522,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1523,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1525,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1527,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1530,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - f
    - n
    argTypes:
    - FILE*
    - BNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1531
      start: 1517
    functionDepth: 1
    functionLinenumber: 1517
    functionLinenumberEnd: 1531
    functionName: WriteNodeDump
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - fprintf
    linkageType: ''
    returnType: void
    signature: void WriteNodeDump(FILE *f, BNode *n)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: feof
      Src: /src/gpac/applications/generators/MPEG4/main.c:1540,1
    - Dst: fgets
      Src: /src/gpac/applications/generators/MPEG4/main.c:1541,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/MPEG4/main.c:1545,1
    - Dst: strlen
      Src: /src/gpac/applications/generators/MPEG4/main.c:1549,1
    - Dst: strlen
      Src: /src/gpac/applications/generators/MPEG4/main.c:1553,1
    - Dst: printf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1563,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1566,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1567,1
    - Dst: stricmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1568,1
    - Dst: printf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1574,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 38
    argCount: 2
    argNames:
    - nodes
    - prof
    argTypes:
    - GF_List*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1577
      start: 1533
    functionDepth: 1
    functionLinenumber: 1533
    functionLinenumberEnd: 1577
    functionName: parse_profile
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - printf
    - strstr
    - feof
    - gf_list_count
    - stricmp
    - fgets
    - strlen
    linkageType: ''
    returnType: void
    signature: void parse_profile(GF_List *nodes, FILE *prof)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/generators/MPEG4/main.c:1582,1
    - Dst: strcat
      Src: /src/gpac/applications/generators/MPEG4/main.c:1584,1
    - Dst: strlen
      Src: /src/gpac/applications/generators/MPEG4/main.c:1588,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - str
    - val
    - nb_bits
    argTypes:
    - char*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1595
      start: 1579
    functionDepth: 0
    functionLinenumber: 1579
    functionLinenumberEnd: 1595
    functionName: format_bit_string
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - strcat
    - strcpy
    - strlen
    linkageType: ''
    returnType: char
    signature: char *format_bit_string(char *str, u32 val, u32 nb_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - MaxVal
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1604
      start: 1597
    functionDepth: 0
    functionLinenumber: 1597
    functionLinenumberEnd: 1604
    functionName: get_nb_bits
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 get_nb_bits(u32 MaxVal)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1610,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1611,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1615,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/generators/MPEG4/main.c:1616,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1618,1
    - Dst: gf_gpac_version
      Src: /src/gpac/applications/generators/MPEG4/main.c:1625,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1629,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1631,1
    - Dst: IsNodeInTable
      Src: /src/gpac/applications/generators/MPEG4/main.c:1633,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1639,1
    - Dst: GetBitsCount
      Src: /src/gpac/applications/generators/MPEG4/main.c:1644,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1645,1
    - Dst: format_bit_string
      Src: /src/gpac/applications/generators/MPEG4/main.c:1645,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1649,1
    - Dst: IsNodeInTable
      Src: /src/gpac/applications/generators/MPEG4/main.c:1651,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1655,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1656,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1657,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1657,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1660,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1660,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1665,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1665,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1670,1
    - Dst: format_bit_string
      Src: /src/gpac/applications/generators/MPEG4/main.c:1670,1
    - Dst: get_nb_bits
      Src: /src/gpac/applications/generators/MPEG4/main.c:1670,1
    - Dst: get_nb_bits
      Src: /src/gpac/applications/generators/MPEG4/main.c:1670,1
    - Dst: get_nb_bits
      Src: /src/gpac/applications/generators/MPEG4/main.c:1670,1
    - Dst: get_nb_bits
      Src: /src/gpac/applications/generators/MPEG4/main.c:1670,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1674,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/generators/MPEG4/main.c:1676,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 47
    argCount: 3
    argNames:
    - NDTs
    - nodes
    - nbVersion
    argTypes:
    - GF_List*
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1679
      start: 1606
    functionDepth: 1
    functionLinenumber: 1606
    functionLinenumberEnd: 1679
    functionName: generate_ndts
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_list_get
    - IsNodeInTable
    - sprintf
    - format_bit_string
    - gf_list_count
    - gf_gpac_version
    - gf_fopen
    - strcmp
    - GetBitsCount
    - get_nb_bits
    - fprintf
    linkageType: ''
    returnType: void
    signature: void generate_ndts(GF_List *NDTs, GF_List *nodes, u32 nbVersion)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: PrintUsage
      Src: /src/gpac/applications/generators/MPEG4/main.c:1692,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/generators/MPEG4/main.c:1696,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/generators/MPEG4/main.c:1697,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1704,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/generators/MPEG4/main.c:1707,1
    - Dst: printf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1709,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1717,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/generators/MPEG4/main.c:1718,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1720,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/generators/MPEG4/main.c:1721,1
    - Dst: ParseTemplateFile
      Src: /src/gpac/applications/generators/MPEG4/main.c:1726,1
    - Dst: CheckInTable
      Src: /src/gpac/applications/generators/MPEG4/main.c:1730,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/generators/MPEG4/main.c:1732,1
    - Dst: printf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1735,1
    - Dst: generate_ndts
      Src: /src/gpac/applications/generators/MPEG4/main.c:1738,1
    - Dst: parse_profile
      Src: /src/gpac/applications/generators/MPEG4/main.c:1743,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/generators/MPEG4/main.c:1744,1
    - Dst: WriteNodesFile
      Src: /src/gpac/applications/generators/MPEG4/main.c:1748,1
    - Dst: WriteNodeCode
      Src: /src/gpac/applications/generators/MPEG4/main.c:1750,1
    - Dst: BeginFile
      Src: /src/gpac/applications/generators/MPEG4/main.c:1753,1
    - Dst: BeginFile
      Src: /src/gpac/applications/generators/MPEG4/main.c:1754,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1756,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1757,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1759,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1760,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1763,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1764,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1765,1
    - Dst: WriteNDT_H
      Src: /src/gpac/applications/generators/MPEG4/main.c:1770,1
    - Dst: WriteNDT_Dec
      Src: /src/gpac/applications/generators/MPEG4/main.c:1772,1
    - Dst: WriteNDT_Enc
      Src: /src/gpac/applications/generators/MPEG4/main.c:1774,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1779,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1781,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1783,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1785,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1787,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1789,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1791,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1793,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1795,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1797,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1798,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1801,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1802,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1803,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1805,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1806,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/MPEG4/main.c:1807,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1808,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1813,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1814,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/MPEG4/main.c:1816,1
    - Dst: EndFile
      Src: /src/gpac/applications/generators/MPEG4/main.c:1817,1
    - Dst: EndFile
      Src: /src/gpac/applications/generators/MPEG4/main.c:1818,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1823,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1824,1
    - Dst: gf_free
      Src: /src/gpac/applications/generators/MPEG4/main.c:1825,1
    - Dst: gf_list_rem
      Src: /src/gpac/applications/generators/MPEG4/main.c:1826,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/generators/MPEG4/main.c:1828,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1830,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1831,1
    - Dst: gf_list_rem
      Src: /src/gpac/applications/generators/MPEG4/main.c:1832,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1833,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1834,1
    - Dst: gf_free
      Src: /src/gpac/applications/generators/MPEG4/main.c:1835,1
    - Dst: gf_list_rem
      Src: /src/gpac/applications/generators/MPEG4/main.c:1836,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/generators/MPEG4/main.c:1838,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/MPEG4/main.c:1839,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/MPEG4/main.c:1840,1
    - Dst: gf_free
      Src: /src/gpac/applications/generators/MPEG4/main.c:1841,1
    - Dst: gf_list_rem
      Src: /src/gpac/applications/generators/MPEG4/main.c:1842,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/generators/MPEG4/main.c:1844,1
    - Dst: gf_free
      Src: /src/gpac/applications/generators/MPEG4/main.c:1845,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/generators/MPEG4/main.c:1847,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 125
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1850
      start: 1681
    functionDepth: 2
    functionLinenumber: 1681
    functionLinenumberEnd: 1850
    functionName: main
    functionSourceFile: /src/gpac/applications/generators/MPEG4/main.c
    functionUses: 5
    functionsReached:
    - gf_free
    - printf
    - WriteNDT_Dec
    - PrintUsage
    - WriteNDT_H
    - gf_list_count
    - gf_fopen
    - parse_profile
    - fprintf
    - gf_list_new
    - gf_list_get
    - WriteNodeCode
    - sprintf
    - WriteNDT_Enc
    - generate_ndts
    - ParseTemplateFile
    - gf_list_del
    - gf_fclose
    - EndFile
    - CheckInTable
    - WriteNodesFile
    - strcmp
    - BeginFile
    - gf_list_rem
    linkageType: ''
    returnType: int
    signature: int main (int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/applications/generators/X3D/main.c:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 46
    functionName: PrintUsage
    functionSourceFile: /src/gpac/applications/generators/X3D/main.c
    functionUses: 6
    functionsReached:
    - printf
    linkageType: ''
    returnType: void
    signature: void PrintUsage()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/applications/generators/X3D/main.c:83,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - sep
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 88
    functionName: skip_sep
    functionSourceFile: /src/gpac/applications/generators/X3D/main.c
    functionUses: 1
    functionsReached:
    - strchr
    linkageType: ''
    returnType: void
    signature: void skip_sep(char *sep)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/applications/generators/X3D/main.c:95,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/X3D/main.c:98,1
    - Dst: strchr
      Src: /src/gpac/applications/generators/X3D/main.c:114,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 2
    argNames:
    - token
    - sep
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 126
    functionName: GetNextToken
    functionSourceFile: /src/gpac/applications/generators/X3D/main.c
    functionUses: 2
    functionsReached:
    - strcpy
    - strchr
    linkageType: ''
    returnType: u32
    signature: u32 GetNextToken(char *token, char *sep)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/applications/generators/X3D/main.c:130,1
    - Dst: memset
      Src: /src/gpac/applications/generators/X3D/main.c:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 133
    functionName: BlankField
    functionSourceFile: /src/gpac/applications/generators/X3D/main.c
    functionUses: 1
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: X3DField
    signature: X3DField *BlankField()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/applications/generators/X3D/main.c:138,1
    - Dst: memset
      Src: /src/gpac/applications/generators/X3D/main.c:139,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/generators/X3D/main.c:140,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/generators/X3D/main.c:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 143
    functionName: BlankNode
    functionSourceFile: /src/gpac/applications/generators/X3D/main.c
    functionUses: 1
    functionsReached:
    - memset
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: X3DNode
    signature: X3DNode *BlankNode()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:148,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:149,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:151,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - NDTs
    - famName
    argTypes:
    - GF_List*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 154
    functionName: IsNDT
    functionSourceFile: /src/gpac/applications/generators/X3D/main.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: u8
    signature: u8 IsNDT(GF_List *NDTs, char *famName)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:160,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:161,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:162,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/generators/X3D/main.c:164,1
    - Dst: strlen
      Src: /src/gpac/applications/generators/X3D/main.c:164,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/X3D/main.c:165,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/X3D/main.c:166,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - token
    - NDTs
    argTypes:
    - char*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 167
    functionName: CheckInTable
    functionSourceFile: /src/gpac/applications/generators/X3D/main.c
    functionUses: 2
    functionsReached:
    - gf_malloc
    - gf_list_get
    - strcpy
    - gf_list_count
    - strcmp
    - gf_list_add
    - strlen
    linkageType: ''
    returnType: void
    signature: void CheckInTable(char *token, GF_List *NDTs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/applications/generators/X3D/main.c:177,1
    - Dst: sprintf
      Src: /src/gpac/applications/generators/X3D/main.c:179,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/generators/X3D/main.c:182,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:183,1
    - Dst: time
      Src: /src/gpac/applications/generators/X3D/main.c:187,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:188,1
    - Dst: asctime
      Src: /src/gpac/applications/generators/X3D/main.c:188,1
    - Dst: gmtime
      Src: /src/gpac/applications/generators/X3D/main.c:188,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:192,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:193,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:194,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 1
    argNames:
    - type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 197
    functionName: BeginFile
    functionSourceFile: /src/gpac/applications/generators/X3D/main.c
    functionUses: 8
    functionsReached:
    - gmtime
    - sprintf
    - gf_fopen
    - asctime
    - time
    - fprintf
    linkageType: ''
    returnType: FILE
    signature: FILE *BeginFile(u32 type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:202,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:203,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/generators/X3D/main.c:205,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - f
    - type
    argTypes:
    - FILE*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 206
    functionName: EndFile
    functionSourceFile: /src/gpac/applications/generators/X3D/main.c
    functionUses: 6
    functionsReached:
    - gf_fclose
    - fprintf
    linkageType: ''
    returnType: void
    signature: void EndFile(FILE *f, u32 type)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:210,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:210,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/X3D/main.c:211,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:213,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/X3D/main.c:214,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - token
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 216
    functionName: TranslateToken
    functionSourceFile: /src/gpac/applications/generators/X3D/main.c
    functionUses: 1
    functionsReached:
    - strcpy
    - strcmp
    linkageType: ''
    returnType: void
    signature: void TranslateToken(char *token)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: BeginFile
      Src: /src/gpac/applications/generators/X3D/main.c:226,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:228,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:229,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:232,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:234,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:235,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:237,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:239,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:241,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:243,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:244,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:246,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:247,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:250,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:251,1
    - Dst: stricmp
      Src: /src/gpac/applications/generators/X3D/main.c:252,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:252,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:253,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:253,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:254,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:258,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:259,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:261,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:261,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:262,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:262,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/X3D/main.c:264,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/X3D/main.c:266,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:267,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:270,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:273,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:275,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:276,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:278,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:281,1
    - Dst: EndFile
      Src: /src/gpac/applications/generators/X3D/main.c:282,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 49
    argCount: 2
    argNames:
    - BNodes
    - NDTs
    argTypes:
    - GF_List*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 220
    functionDepth: 1
    functionLinenumber: 220
    functionLinenumberEnd: 284
    functionName: WriteNodesFile
    functionSourceFile: /src/gpac/applications/generators/X3D/main.c
    functionUses: 1
    functionsReached:
    - EndFile
    - gf_list_get
    - strstr
    - gf_list_count
    - BeginFile
    - strcmp
    - stricmp
    - fprintf
    linkageType: ''
    returnType: void
    signature: void WriteNodesFile(GF_List *BNodes, GF_List *NDTs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:291,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:291,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:292,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:293,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:294,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:296,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:298,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:301,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:302,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:303,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:305,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:306,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:308,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:309,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:312,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/X3D/main.c:315,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/X3D/main.c:316,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:317,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:319,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:322,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:323,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/X3D/main.c:326,1
    - Dst: strupr
      Src: /src/gpac/applications/generators/X3D/main.c:327,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:329,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:330,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:332,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:334,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:336,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:337,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:338,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:339,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:341,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 42
    argCount: 2
    argNames:
    - f
    - n
    argTypes:
    - FILE*
    - X3DNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 286
    functionDepth: 1
    functionLinenumber: 286
    functionLinenumberEnd: 342
    functionName: WriteNodeFields
    functionSourceFile: /src/gpac/applications/generators/X3D/main.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - strcpy
    - strstr
    - gf_list_count
    - strcmp
    - fprintf
    - strupr
    linkageType: ''
    returnType: void
    signature: void WriteNodeFields(FILE *f, X3DNode *n)
  - BBCount: 60
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:352,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:353,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:354,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:355,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:357,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:359,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:361,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:362,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:364,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:365,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:367,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:368,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:371,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:371,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:378,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:379,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:380,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:381,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:382,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:383,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:384,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:385,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:386,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:387,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:388,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:389,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:390,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:391,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:392,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:393,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:394,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:395,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:396,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:397,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/X3D/main.c:401,1
    - Dst: strlwr
      Src: /src/gpac/applications/generators/X3D/main.c:402,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:403,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/X3D/main.c:404,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/X3D/main.c:406,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:407,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:410,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:415,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:417,1
    - Dst: WriteNodeFields
      Src: /src/gpac/applications/generators/X3D/main.c:420,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:426,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:427,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:428,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:430,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:431,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:433,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:433,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:434,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/X3D/main.c:437,1
    - Dst: strncmp
      Src: /src/gpac/applications/generators/X3D/main.c:437,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/X3D/main.c:439,1
    - Dst: stricmp
      Src: /src/gpac/applications/generators/X3D/main.c:445,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:446,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:450,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:452,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:453,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:456,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:457,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:459,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/X3D/main.c:462,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:470,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:471,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:471,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:472,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:475,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:476,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:479,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:480,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:483,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:484,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:487,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:488,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:491,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:493,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:494,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:496,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:497,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:498,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:499,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:500,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:503,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:505,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:506,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:507,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:508,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:509,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:510,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:513,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:515,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:516,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:517,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:518,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:519,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:520,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:523,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:525,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:526,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:527,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:528,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:529,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:530,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:531,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:532,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:533,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:536,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:538,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:539,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:540,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:541,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:542,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:543,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:544,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:545,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:546,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:549,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:549,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:551,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:552,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:553,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:555,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:556,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:557,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:559,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:560,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:561,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:563,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:564,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:565,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:568,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:569,1
    - Dst: strlen
      Src: /src/gpac/applications/generators/X3D/main.c:569,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:570,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:577,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:580,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:582,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:583,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:588,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:589,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:590,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:595,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:598,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:600,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:601,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:606,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:607,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:608,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:613,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:616,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:618,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:619,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:624,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:627,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:628,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:629,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:630,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:631,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:632,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:638,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:641,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:643,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:644,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:649,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:652,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:653,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:654,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:655,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:656,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:657,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:663,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:666,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:668,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:669,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:674,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:677,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:678,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:679,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:680,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:681,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:682,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:683,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:684,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:685,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:691,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:694,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:696,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:697,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:702,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:705,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:706,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:707,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:708,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:709,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:710,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:711,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:712,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:713,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:719,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:719,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:722,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:724,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:725,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:730,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:733,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:734,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:735,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:736,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:737,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:738,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:739,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:740,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:741,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:742,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:743,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:744,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:750,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:753,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:755,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:756,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:761,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:764,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:765,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:771,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:774,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:776,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:777,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:782,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:785,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:786,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:787,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:788,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:789,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:790,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:796,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:799,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:801,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:802,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:807,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:810,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:811,1
    - Dst: strlen
      Src: /src/gpac/applications/generators/X3D/main.c:811,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:812,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:818,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:821,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:823,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:824,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:829,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:832,1
    - Dst: TranslateToken
      Src: /src/gpac/applications/generators/X3D/main.c:833,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:834,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:841,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:846,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:850,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:854,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:857,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:858,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:859,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:860,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:862,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:864,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:865,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:866,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:867,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:869,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:871,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:872,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:873,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:874,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:876,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:878,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:879,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:880,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:881,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:883,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:885,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:886,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:887,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:888,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:890,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:892,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:893,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:894,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:895,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:897,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:899,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:900,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:901,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:903,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:906,1
    CyclomaticComplexity: 126
    EdgeCount: 126
    ICount: 485
    argCount: 2
    argNames:
    - BNodes
    - vrml_code
    argTypes:
    - GF_List*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 908
      start: 344
    functionDepth: 1
    functionLinenumber: 344
    functionLinenumberEnd: 908
    functionName: WriteNodeCode
    functionSourceFile: /src/gpac/applications/generators/X3D/main.c
    functionUses: 1
    functionsReached:
    - TranslateToken
    - gf_list_get
    - GetNextToken
    - WriteNodeFields
    - strcpy
    - strstr
    - strlwr
    - gf_list_count
    - strncmp
    - strcmp
    - stricmp
    - strlen
    - fprintf
    linkageType: ''
    returnType: void
    signature: void WriteNodeCode(GF_List *BNodes, FILE *vrml_code)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:915,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:916,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:917,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - node
    - NDTName
    argTypes:
    - X3DNode*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 920
      start: 911
    functionDepth: 1
    functionLinenumber: 911
    functionLinenumberEnd: 920
    functionName: IsNodeInTable
    functionSourceFile: /src/gpac/applications/generators/X3D/main.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: u32
    signature: u32 IsNodeInTable(X3DNode *node, char *NDTName)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:925,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:926,1
    - Dst: IsNodeInTable
      Src: /src/gpac/applications/generators/X3D/main.c:927,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - NDTName
    - XNodes
    argTypes:
    - char*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 931
      start: 922
    functionDepth: 1
    functionLinenumber: 922
    functionLinenumberEnd: 931
    functionName: GetNDTCount
    functionSourceFile: /src/gpac/applications/generators/X3D/main.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_list_get
    - IsNodeInTable
    linkageType: ''
    returnType: u32
    signature: u32 GetNDTCount(char *NDTName, GF_List *XNodes)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:940,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:943,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:944,1
    - Dst: GetNDTCount
      Src: /src/gpac/applications/generators/X3D/main.c:945,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:948,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:949,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:952,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:953,1
    - Dst: IsNodeInTable
      Src: /src/gpac/applications/generators/X3D/main.c:954,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:957,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:960,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:963,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:967,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:969,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:970,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:971,1
    - Dst: GetNDTCount
      Src: /src/gpac/applications/generators/X3D/main.c:972,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:974,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:976,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:978,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:979,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 3
    argNames:
    - f
    - XNodes
    - NDTs
    argTypes:
    - FILE*
    - GF_List*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 980
      start: 934
    functionDepth: 1
    functionLinenumber: 934
    functionLinenumberEnd: 980
    functionName: WriteNDT
    functionSourceFile: /src/gpac/applications/generators/X3D/main.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - IsNodeInTable
    - gf_list_count
    - GetNDTCount
    - fprintf
    linkageType: ''
    returnType: void
    signature: void WriteNDT(FILE *f, GF_List *XNodes, GF_List *NDTs)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: feof
      Src: /src/gpac/applications/generators/X3D/main.c:993,1
    - Dst: fgets
      Src: /src/gpac/applications/generators/X3D/main.c:994,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:1002,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:1005,1
    - Dst: BlankNode
      Src: /src/gpac/applications/generators/X3D/main.c:1006,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/X3D/main.c:1007,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:1010,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:1013,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:1014,1
    - Dst: printf
      Src: /src/gpac/applications/generators/X3D/main.c:1015,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:1019,1
    - Dst: CheckInTable
      Src: /src/gpac/applications/generators/X3D/main.c:1024,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/generators/X3D/main.c:1025,1
    - Dst: strlen
      Src: /src/gpac/applications/generators/X3D/main.c:1025,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/X3D/main.c:1026,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/X3D/main.c:1027,1
    - Dst: printf
      Src: /src/gpac/applications/generators/X3D/main.c:1037,1
    - Dst: BlankField
      Src: /src/gpac/applications/generators/X3D/main.c:1040,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/generators/X3D/main.c:1041,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/X3D/main.c:1044,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:1045,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:1046,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:1048,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/X3D/main.c:1048,1
    - Dst: skip_sep
      Src: /src/gpac/applications/generators/X3D/main.c:1051,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:1052,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/X3D/main.c:1059,1
    - Dst: strlen
      Src: /src/gpac/applications/generators/X3D/main.c:1062,1
    - Dst: strlen
      Src: /src/gpac/applications/generators/X3D/main.c:1066,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/X3D/main.c:1074,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:1076,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:1077,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:1077,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/X3D/main.c:1078,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:1079,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/X3D/main.c:1080,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:1082,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:1083,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:1083,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/X3D/main.c:1084,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:1085,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/X3D/main.c:1086,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:1088,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:1089,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:1089,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/X3D/main.c:1090,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:1091,1
    - Dst: strcpy
      Src: /src/gpac/applications/generators/X3D/main.c:1092,1
    - Dst: GetNextToken
      Src: /src/gpac/applications/generators/X3D/main.c:1097,1
    - Dst: printf
      Src: /src/gpac/applications/generators/X3D/main.c:1103,1
    - Dst: gf_list_del_item
      Src: /src/gpac/applications/generators/X3D/main.c:1104,1
    - Dst: gf_free
      Src: /src/gpac/applications/generators/X3D/main.c:1105,1
    - Dst: stricmp
      Src: /src/gpac/applications/generators/X3D/main.c:1112,1
    - Dst: stricmp
      Src: /src/gpac/applications/generators/X3D/main.c:1112,1
    - Dst: gf_list_del_item
      Src: /src/gpac/applications/generators/X3D/main.c:1113,1
    - Dst: gf_free
      Src: /src/gpac/applications/generators/X3D/main.c:1114,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:1121,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:1122,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:1124,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:1125,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:1127,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:1128,1
    - Dst: strcmp
      Src: /src/gpac/applications/generators/X3D/main.c:1129,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/X3D/main.c:1130,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 130
    argCount: 3
    argNames:
    - nodes
    - BNodes
    - NDTs
    argTypes:
    - FILE*
    - GF_List*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1134
      start: 982
    functionDepth: 1
    functionLinenumber: 982
    functionLinenumberEnd: 1134
    functionName: ParseTemplateFile
    functionSourceFile: /src/gpac/applications/generators/X3D/main.c
    functionUses: 1
    functionsReached:
    - gf_free
    - printf
    - strcpy
    - gf_list_count
    - BlankNode
    - fgets
    - GetNextToken
    - gf_list_get
    - gf_list_add
    - skip_sep
    - stricmp
    - feof
    - strstr
    - BlankField
    - gf_list_del_item
    - gf_malloc
    - strlen
    - CheckInTable
    - strcmp
    linkageType: ''
    returnType: void
    signature: void ParseTemplateFile(FILE *nodes, GF_List *BNodes, GF_List *NDTs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:1141,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:1142,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:1143,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:1145,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:1147,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:1150,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - f
    - n
    argTypes:
    - FILE*
    - X3DNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1151
      start: 1137
    functionDepth: 1
    functionLinenumber: 1137
    functionLinenumberEnd: 1151
    functionName: WriteNodeDump
    functionSourceFile: /src/gpac/applications/generators/X3D/main.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - fprintf
    linkageType: ''
    returnType: void
    signature: void WriteNodeDump(FILE *f, X3DNode *n)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: feof
      Src: /src/gpac/applications/generators/X3D/main.c:1161,1
    - Dst: fgets
      Src: /src/gpac/applications/generators/X3D/main.c:1162,1
    - Dst: strstr
      Src: /src/gpac/applications/generators/X3D/main.c:1166,1
    - Dst: strlen
      Src: /src/gpac/applications/generators/X3D/main.c:1170,1
    - Dst: strlen
      Src: /src/gpac/applications/generators/X3D/main.c:1174,1
    - Dst: printf
      Src: /src/gpac/applications/generators/X3D/main.c:1183,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:1186,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:1187,1
    - Dst: stricmp
      Src: /src/gpac/applications/generators/X3D/main.c:1188,1
    - Dst: printf
      Src: /src/gpac/applications/generators/X3D/main.c:1194,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 38
    argCount: 2
    argNames:
    - nodes
    - prof
    argTypes:
    - GF_List*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1197
      start: 1154
    functionDepth: 1
    functionLinenumber: 1154
    functionLinenumberEnd: 1197
    functionName: parse_profile
    functionSourceFile: /src/gpac/applications/generators/X3D/main.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - printf
    - strstr
    - feof
    - gf_list_count
    - stricmp
    - fgets
    - strlen
    linkageType: ''
    returnType: void
    signature: void parse_profile(GF_List *nodes, FILE *prof)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/applications/generators/X3D/main.c:1206,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:1208,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/generators/X3D/main.c:1212,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/generators/X3D/main.c:1213,1
    - Dst: ParseTemplateFile
      Src: /src/gpac/applications/generators/X3D/main.c:1215,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/generators/X3D/main.c:1216,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/generators/X3D/main.c:1220,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:1221,1
    - Dst: parse_profile
      Src: /src/gpac/applications/generators/X3D/main.c:1223,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/generators/X3D/main.c:1224,1
    - Dst: WriteNodesFile
      Src: /src/gpac/applications/generators/X3D/main.c:1229,1
    - Dst: BeginFile
      Src: /src/gpac/applications/generators/X3D/main.c:1231,1
    - Dst: WriteNodeCode
      Src: /src/gpac/applications/generators/X3D/main.c:1234,1
    - Dst: WriteNDT
      Src: /src/gpac/applications/generators/X3D/main.c:1236,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:1237,1
    - Dst: EndFile
      Src: /src/gpac/applications/generators/X3D/main.c:1239,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:1242,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:1243,1
    - Dst: gf_free
      Src: /src/gpac/applications/generators/X3D/main.c:1244,1
    - Dst: gf_list_rem
      Src: /src/gpac/applications/generators/X3D/main.c:1245,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/generators/X3D/main.c:1247,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:1249,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:1252,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:1253,1
    - Dst: gf_list_rem
      Src: /src/gpac/applications/generators/X3D/main.c:1255,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:1256,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:1257,1
    - Dst: gf_free
      Src: /src/gpac/applications/generators/X3D/main.c:1258,1
    - Dst: gf_list_rem
      Src: /src/gpac/applications/generators/X3D/main.c:1259,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/generators/X3D/main.c:1261,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/generators/X3D/main.c:1262,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/generators/X3D/main.c:1263,1
    - Dst: gf_free
      Src: /src/gpac/applications/generators/X3D/main.c:1264,1
    - Dst: gf_list_rem
      Src: /src/gpac/applications/generators/X3D/main.c:1265,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/generators/X3D/main.c:1267,1
    - Dst: gf_free
      Src: /src/gpac/applications/generators/X3D/main.c:1268,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/generators/X3D/main.c:1270,1
    - Dst: fprintf
      Src: /src/gpac/applications/generators/X3D/main.c:1272,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 51
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1274
      start: 1199
    functionDepth: 2
    functionLinenumber: 1199
    functionLinenumberEnd: 1274
    functionName: main
    functionSourceFile: /src/gpac/applications/generators/X3D/main.c
    functionUses: 5
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_list_new
    - EndFile
    - gf_list_get
    - WriteNodesFile
    - WriteNodeCode
    - gf_list_count
    - WriteNDT
    - gf_fopen
    - BeginFile
    - gf_list_rem
    - gf_list_del
    - ParseTemplateFile
    - parse_profile
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main (int argc, char **argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/unittests/tests.c:30,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 34
    functionName: register_test
    functionSourceFile: /src/gpac/unittests/tests.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int register_test(const char *name, void (*test_function)(void))
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_init
      Src: /src/gpac/unittests/tests.c:39,1
    - Dst: strcmp
      Src: /src/gpac/unittests/tests.c:44,1
    - Dst: strcmp
      Src: /src/gpac/unittests/tests.c:44,1
    - Dst: printf
      Src: /src/gpac/unittests/tests.c:45,1
    - Dst: printf
      Src: /src/gpac/unittests/tests.c:47,1
    - Dst: strcmp
      Src: /src/gpac/unittests/tests.c:50,1
    - Dst: fprintf
      Src: /src/gpac/unittests/tests.c:52,1
    - Dst: atoi
      Src: /src/gpac/unittests/tests.c:55,1
    - Dst: fprintf
      Src: /src/gpac/unittests/tests.c:57,1
    - Dst: printf
      Src: /src/gpac/unittests/tests.c:60,1
    - Dst: printf
      Src: /src/gpac/unittests/tests.c:66,1
    - Dst: fflush
      Src: /src/gpac/unittests/tests.c:67,1
    - Dst: printf
      Src: /src/gpac/unittests/tests.c:70,1
    - Dst: test_function
      Src: /src/gpac/unittests/tests.c:75,1
    - Dst: printf
      Src: /src/gpac/unittests/tests.c:77,1
    - Dst: printf
      Src: /src/gpac/unittests/tests.c:82,1
    - Dst: printf
      Src: /src/gpac/unittests/tests.c:86,1
    - Dst: printf
      Src: /src/gpac/unittests/tests.c:91,1
    - Dst: printf
      Src: /src/gpac/unittests/tests.c:92,1
    - Dst: printf
      Src: /src/gpac/unittests/tests.c:93,1
    - Dst: printf
      Src: /src/gpac/unittests/tests.c:94,1
    - Dst: printf
      Src: /src/gpac/unittests/tests.c:95,1
    - Dst: gf_sys_close
      Src: /src/gpac/unittests/tests.c:97,1
    - Dst: gf_memory_size
      Src: /src/gpac/unittests/tests.c:100,1
    - Dst: gf_file_handles_count
      Src: /src/gpac/unittests/tests.c:100,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/unittests/tests.c:101,1
    - Dst: gf_memory_print
      Src: /src/gpac/unittests/tests.c:102,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 55
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 107
    functionName: run_tests
    functionSourceFile: /src/gpac/unittests/tests.c
    functionUses: 0
    functionsReached:
    - test_function
    - printf
    - gf_memory_size
    - gf_sys_init
    - strcmp
    - atoi
    - gf_memory_print
    - gf_log_set_tool_level
    - gf_file_handles_count
    - gf_sys_close
    - fflush
    - fprintf
    linkageType: ''
    returnType: int
    signature: int run_tests(int argc, char *argv[])
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 42
    functionName: NAPI_CALL
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NAPI_CALL(_a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _N
    - ','
    - _MIN
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 57
    functionName: NARG_ARGS
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NARG_ARGS(_N, _MIN)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _N
    - ','
    - _MIN
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 72
    functionName: NARG_ARGS_THIS
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NARG_ARGS_THIS(_N, _MIN)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _N
    - ','
    - _MIN
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 91
    functionName: NARG_ARGS_THIS_MAGIC
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NARG_ARGS_THIS_MAGIC(_N, _MIN)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _val
    - ','
    - _argidx
    - ','
    - def_val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 104
    functionName: NARG_U32
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NARG_U32(_val, _argidx, def_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _val
    - ','
    - _argidx
    - ','
    - def_val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 112
    functionName: NARG_U64
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NARG_U64(_val, _argidx, def_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _val
    - ','
    - _argidx
    - ','
    - def_val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 120
    functionName: NARG_S32
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NARG_S32(_val, _argidx, def_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _val
    - ','
    - _argidx
    - ','
    - def_val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 128
    functionName: NARG_BOOL
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NARG_BOOL(_val, _argidx, def_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _val
    - ','
    - _argidx
    - ','
    - def_val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 136
    functionName: NARG_DBL
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NARG_DBL(_val, _argidx, def_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _val
    - ','
    - _argidx
    - ','
    - _def_val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 164
    functionName: NARG_STR
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NARG_STR(_val, _argidx, _def_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _val
    - ','
    - _argidx
    - ','
    - _def_val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 188
    functionName: NARG_STR_ALLOC
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NARG_STR_ALLOC(_val, _argidx, _def_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _name
    - ','
    - _class
    - ','
    - _target
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 199
    functionName: GET_PROP_FIELD_S32
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_PROP_FIELD_S32(_name, _class, _target)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _name
    - ','
    - _class
    - ','
    - _target
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 210
    functionName: GET_PROP_FIELD_U32
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_PROP_FIELD_U32(_name, _class, _target)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _name
    - ','
    - _class
    - ','
    - _target
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 221
    functionName: GET_PROP_FIELD_S64
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_PROP_FIELD_S64(_name, _class, _target)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _name
    - ','
    - _class
    - ','
    - _target
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 232
    functionName: GET_PROP_FIELD_U64
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_PROP_FIELD_U64(_name, _class, _target)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _name
    - ','
    - _class
    - ','
    - _target
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 245
    functionName: GET_PROP_FIELD_FLT
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_PROP_FIELD_FLT(_name, _class, _target)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - env
    - finalize_data
    - finalize_hint
    argTypes:
    - napi_env
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 153
    functionName: dummy_finalize
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void dummy_finalize(napi_env env, void* finalize_data, void* finalize_hint)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:160,1
    - Dst: NARG_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:161,1
    - Dst: strdup
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:165,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:166,1
    - Dst: gf_sys_close
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:169,1
    - Dst: gf_sys_init
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:170,1
    - Dst: free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:172,1
    - Dst: GF_LOG
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:174,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 177
    functionName: gpac_init
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - NARG_STR
    - NARG_U32
    - GF_LOG
    - gf_sys_init
    - strdup
    - gf_sys_close
    - free
    linkageType: ''
    returnType: napi_value
    signature: napi_value gpac_init(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:182,1
    - Dst: NARG_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:183,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:184,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:184,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 186
    functionName: gpac_e2s
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NAPI_CALL
    - gf_error_to_string
    - napi_create_string_utf8
    - NARG_ARGS
    - NARG_S32
    linkageType: ''
    returnType: napi_value
    signature: napi_value gpac_e2s(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:190,1
    - Dst: NARG_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:191,1
    - Dst: NARG_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:192,1
    - Dst: gf_log_set_tools_levels
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 188
    functionDepth: 1
    functionLinenumber: 188
    functionLinenumberEnd: 195
    functionName: gpac_set_logs
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_ARGS
    - NARG_STR
    - NARG_BOOL
    - gf_log_set_tools_levels
    linkageType: ''
    returnType: napi_value
    signature: napi_value gpac_set_logs(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:201,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:201,1
    - Dst: gf_sys_clock
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 203
    functionName: gpac_sys_clock
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_sys_clock
    - NAPI_CALL
    - napi_create_uint32
    linkageType: ''
    returnType: napi_value
    signature: napi_value gpac_sys_clock(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:209,1
    - Dst: napi_create_bigint_uint64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:209,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 205
    functionDepth: 1
    functionLinenumber: 205
    functionLinenumberEnd: 211
    functionName: gpac_sys_clock_high_res
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_create_bigint_uint64
    - NAPI_CALL
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: napi_value
    signature: napi_value gpac_sys_clock_high_res(napi_env env, napi_callback_info
      info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:219,1
    - Dst: NARG_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:220,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:221,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:221,1
    - Dst: gf_dom_get_friendly_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:221,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:223,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 213
    functionDepth: 1
    functionLinenumber: 213
    functionLinenumberEnd: 226
    functionName: gpac_sys_keyname
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_dom_get_friendly_name
    - NAPI_CALL
    - napi_create_string_utf8
    - NARG_ARGS
    - NARG_S32
    linkageType: ''
    returnType: napi_value
    signature: napi_value gpac_sys_keyname(napi_env env, napi_callback_info info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:249,1
    - Dst: napi_get_cb_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:249,1
    - Dst: gf_rmt_get_peer_address
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:256,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:258,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:258,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 245
    functionDepth: 1
    functionLinenumber: 245
    functionLinenumberEnd: 264
    functionName: rmt_client_getter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_rmt_get_peer_address
    - NAPI_CALL
    - napi_get_cb_info
    - napi_create_string_utf8
    linkageType: ''
    returnType: napi_value
    signature: napi_value rmt_client_getter(napi_env env, napi_callback_info info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:291,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:292,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:297,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:298,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:302,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - env
    - task
    argTypes:
    - napi_env
    - NAPI_RMT_Task*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 306
    functionName: napi_rmt_task_del
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - napi_reference_unref
    - napi_delete_reference
    linkageType: ''
    returnType: void
    signature: void napi_rmt_task_del(napi_env env, NAPI_RMT_Task* task)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: napi_get_instance_data
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:322,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:323,1
    - Dst: gf_rmt_client_get_on_data_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:329,1
    - Dst: gf_rmt_client_set_on_data_cbk
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:330,1
    - Dst: napi_rmt_task_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:331,1
    - Dst: gf_rmt_client_set_on_del_cbk
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:333,1
    - Dst: gf_list_new
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:336,1
    - Dst: gf_list_add
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:337,1
    - Dst: gf_fs_post_user_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:340,1
    - Dst: GF_LOG
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:343,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - udta
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 312
    functionDepth: 1
    functionLinenumber: 312
    functionLinenumberEnd: 348
    functionName: gpac_rmt_client_on_delete
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_rmt_task_del
    - gf_list_new
    - gf_rmt_client_set_on_data_cbk
    - gf_fs_post_user_task
    - GF_LOG
    - napi_get_instance_data
    - napi_throw_error
    - gf_list_add
    - gf_rmt_client_set_on_del_cbk
    - gf_rmt_client_get_on_data_task
    linkageType: ''
    returnType: void
    signature: void gpac_rmt_client_on_delete(void *udta)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: napi_get_instance_data
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:360,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:361,1
    - Dst: GF_LOG
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:365,1
    - Dst: napi_create_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:371,1
    - Dst: memcpy
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:372,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:375,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:379,1
    - Dst: gf_list_new
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:384,1
    - Dst: gf_list_add
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:385,1
    - Dst: GF_LOG
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:387,1
    - Dst: gf_fs_post_user_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:391,1
    - Dst: GF_LOG
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:395,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 4
    argNames:
    - udta
    - payload
    - size
    - is_binary
    argTypes:
    - void*
    - u8*
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 350
    functionDepth: 1
    functionLinenumber: 350
    functionLinenumberEnd: 400
    functionName: gpac_rmt_client_on_data
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_create_arraybuffer
    - gf_list_new
    - GF_SAFEALLOC
    - gf_fs_post_user_task
    - GF_LOG
    - memcpy
    - napi_get_instance_data
    - napi_throw_error
    - gf_list_add
    - napi_create_string_utf8
    linkageType: ''
    returnType: void
    signature: void gpac_rmt_client_on_data(void *udta, const u8* payload, u64 size,
      Bool is_binary)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:413,1
    - Dst: gf_rmt_client_get_on_data_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:417,1
    - Dst: napi_rmt_task_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:418,1
    - Dst: gf_rmt_client_set_on_data_cbk
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:420,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:426,1
    - Dst: napi_get_global
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:426,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:427,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:427,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:428,1
    - Dst: napi_async_init
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:428,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:433,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:438,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:439,1
    - Dst: gf_rmt_client_set_on_data_cbk
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:441,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:449,1
    - Dst: gf_rmt_client_get_on_del_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:453,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:457,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:458,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:468,1
    - Dst: napi_get_global
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:468,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:469,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:469,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:470,1
    - Dst: napi_async_init
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:470,1
    - Dst: gf_rmt_client_get_on_del_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:474,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:476,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:481,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:482,1
    - Dst: gf_rmt_client_set_on_del_cbk
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:484,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 46
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 402
    functionDepth: 1
    functionLinenumber: 402
    functionLinenumberEnd: 492
    functionName: rmt_client_setter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_get_global
    - napi_rmt_task_del
    - napi_reference_unref
    - gf_rmt_client_set_on_data_cbk
    - napi_async_init
    - GF_SAFEALLOC
    - napi_create_reference
    - gf_rmt_client_get_on_del_task
    - napi_typeof
    - NAPI_CALL
    - napi_create_string_utf8
    - gf_rmt_client_set_on_del_cbk
    - gf_rmt_client_get_on_data_task
    - napi_delete_reference
    linkageType: ''
    returnType: napi_value
    signature: napi_value rmt_client_setter(napi_env env, napi_callback_info info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:497,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:503,1
    - Dst: napi_is_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:503,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:509,1
    - Dst: napi_get_arraybuffer_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:509,1
    - Dst: GF_LOG
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:511,1
    - Dst: gf_rmt_client_send_to_ws
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:513,1
    - Dst: NARG_STR_ALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:518,1
    - Dst: GF_LOG
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:520,1
    - Dst: gf_rmt_client_send_to_ws
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:522,1
    - Dst: strlen
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:522,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:524,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 494
    functionDepth: 1
    functionLinenumber: 494
    functionLinenumberEnd: 530
    functionName: rmt_client_send
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - NARG_STR_ALLOC
    - napi_get_arraybuffer_info
    - GF_LOG
    - NAPI_CALL
    - napi_is_arraybuffer
    - NARG_ARGS_THIS
    - gf_rmt_client_send_to_ws
    - strlen
    linkageType: ''
    returnType: napi_value
    signature: napi_value rmt_client_send(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:543,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:543,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:545,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:545,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:547,1
    - Dst: napi_type_tag_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:547,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:549,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:549,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:552,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:557,1
    - Dst: gf_rmt_client_set_on_del_cbk
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:559,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 2
    argNames:
    - env
    - client
    argTypes:
    - napi_env
    - RMT_ClientCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 562
      start: 532
    functionDepth: 1
    functionLinenumber: 532
    functionLinenumberEnd: 562
    functionName: grap_wrap_rmt_new_client
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - napi_create_reference
    - napi_define_properties
    - napi_wrap
    - NAPI_CALL
    - gf_rmt_client_set_on_del_cbk
    - napi_type_tag_object
    - napi_create_object
    linkageType: ''
    returnType: napi_value
    signature: napi_value grap_wrap_rmt_new_client(napi_env env, RMT_ClientCtx* client)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: napi_get_instance_data
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:571,1
    - Dst: GF_LOG
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:575,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:575,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:575,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:575,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:577,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:581,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:584,1
    - Dst: napi_remove_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:587,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:589,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:593,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:594,1
    - Dst: napi_rmt_task_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:597,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:602,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:604,1
    - Dst: gf_rmt_client_get_rmt
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:606,1
    - Dst: gf_rmt_get_on_new_client_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:607,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:613,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:614,1
    - Dst: grap_wrap_rmt_new_client
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:616,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:618,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:620,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:627,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:629,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:638,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:639,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:641,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:650,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:656,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:656,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 38
    argCount: 3
    argNames:
    - fsess
    - callback
    - reschedule_ms
    argTypes:
    - GF_FilterSession*
    - void*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 565
    functionDepth: 2
    functionLinenumber: 565
    functionLinenumberEnd: 661
    functionName: fs_flush_rmt
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - napi_rmt_task_del
    - gf_rmt_get_on_new_client_task
    - gf_rmt_client_get_rmt
    - gf_list_pop_front
    - GF_LOG
    - napi_make_callback
    - grap_wrap_rmt_new_client
    - napi_get_reference_value
    - napi_remove_wrap
    - napi_typeof
    - napi_get_instance_data
    - gf_list_count
    - napi_wrap
    linkageType: ''
    returnType: Bool
    signature: Bool fs_flush_rmt(GF_FilterSession *fsess, void *callback, u32 *reschedule_ms)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:665,1
    - Dst: NARG_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:666,1
    - Dst: gf_sys_enable_rmtws
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:669,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 663
    functionDepth: 1
    functionLinenumber: 663
    functionLinenumberEnd: 671
    functionName: gpac_enable_rmtws
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_ARGS
    - gf_sys_enable_rmtws
    - NARG_BOOL
    linkageType: ''
    returnType: napi_value
    signature: napi_value gpac_enable_rmtws(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:674,1
    - Dst: NARG_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:675,1
    - Dst: gf_sys_enable_userws
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:678,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 680
      start: 672
    functionDepth: 1
    functionLinenumber: 672
    functionLinenumberEnd: 680
    functionName: gpac_enable_userws
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_ARGS
    - gf_sys_enable_userws
    - NARG_BOOL
    linkageType: ''
    returnType: napi_value
    signature: napi_value gpac_enable_userws(napi_env env, napi_callback_info info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:689,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:693,1
    - Dst: napi_is_array
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:693,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:695,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:698,1
    - Dst: napi_get_array_length
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:698,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:703,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:705,1
    - Dst: gf_malloc
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:707,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:711,1
    - Dst: napi_get_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:711,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:712,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:712,1
    - Dst: gf_malloc
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:713,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:714,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:714,1
    - Dst: gf_sys_set_args
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:717,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 683
    functionDepth: 1
    functionLinenumber: 683
    functionLinenumberEnd: 719
    functionName: gpac_set_args
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - napi_is_array
    - napi_throw_error
    - NAPI_CALL
    - napi_get_element
    - gf_sys_set_args
    - napi_get_array_length
    - NARG_ARGS
    - gf_malloc
    - napi_get_value_string_utf8
    linkageType: ''
    returnType: napi_value
    signature: napi_value gpac_set_args(napi_env env, napi_callback_info info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:725,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:731,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:733,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:736,1
    - Dst: gf_sys_get_rmtws
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:738,1
    - Dst: gf_rmt_get_on_new_client_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:739,1
    - Dst: gf_rmt_set_on_new_client_cbk
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:740,1
    - Dst: napi_rmt_task_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:741,1
    - Dst: gf_sys_get_userws
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:743,1
    - Dst: gf_rmt_get_on_new_client_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:744,1
    - Dst: gf_rmt_set_on_new_client_cbk
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:745,1
    - Dst: napi_rmt_task_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:746,1
    - Dst: gf_list_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:749,1
    - Dst: gf_list_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:753,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:757,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:758,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:759,1
    - Dst: gf_list_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:761,1
    - Dst: napi_async_destroy
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:764,1
    - Dst: gf_sys_close
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:769,1
    - Dst: gf_memory_size
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:772,1
    - Dst: gf_file_handles_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:772,1
    - Dst: gf_log_set_tools_levels
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:773,1
    - Dst: gf_memory_print
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:774,1
    - Dst: free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:779,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 40
    argCount: 3
    argNames:
    - env
    - finalize_data
    - finalize_hint
    argTypes:
    - napi_env
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 780
      start: 722
    functionDepth: 1
    functionLinenumber: 722
    functionLinenumberEnd: 780
    functionName: gpac_napi_finalize
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - napi_rmt_task_del
    - gf_list_pop_back
    - gf_rmt_get_on_new_client_task
    - gf_sys_close
    - GF_LOG
    - gf_memory_size
    - gf_sys_get_rmtws
    - gf_log_set_tools_levels
    - gf_list_count
    - gf_sys_get_userws
    - gf_memory_print
    - gf_file_handles_count
    - gf_rmt_set_on_new_client_cbk
    - free
    - gf_list_del
    - napi_async_destroy
    linkageType: ''
    returnType: void
    signature: void gpac_napi_finalize(napi_env env, void* finalize_data, void* finalize_hint)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:826,1
    - Dst: napi_get_cb_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:826,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:830,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:832,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:832,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:834,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:834,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:839,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:841,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:841,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:843,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:843,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:848,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:848,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:848,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:852,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:852,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:852,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:857,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:858,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:858,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:863,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:865,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:865,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:868,1
    - Dst: napi_create_external_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:868,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:874,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:875,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:875,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:880,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:881,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:881,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:885,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:885,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:885,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:889,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:889,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:889,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:893,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:893,1
    - Dst: gf_filter_pck_get_corrupted
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:893,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:897,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:897,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:897,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:901,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:903,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:903,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:905,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:905,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:910,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:910,1
    - Dst: gf_filter_pck_get_roll_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:910,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:914,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:914,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:914,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:918,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:918,1
    - Dst: gf_filter_pck_get_clock_type
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:918,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:922,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:922,1
    - Dst: gf_filter_pck_get_carousel_version
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:922,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:926,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:926,1
    - Dst: gf_filter_pck_get_seq_num
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:926,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:930,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:930,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:930,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:934,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:934,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:934,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:938,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:938,1
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:938,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 105
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 942
      start: 821
    functionDepth: 1
    functionLinenumber: 821
    functionLinenumberEnd: 942
    functionName: filterpck_getter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_create_int32
    - gf_filter_pck_get_carousel_version
    - NAPI_CALL
    - gf_filter_pck_get_clock_type
    - gf_filter_pck_get_seek_flag
    - gf_filter_pck_get_frame_interface
    - napi_get_null
    - gf_filter_pck_get_framing
    - gf_filter_pck_get_corrupted
    - gf_filter_pck_get_roll_info
    - gf_filter_pck_get_dependency_flags
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_seq_num
    - napi_create_external_arraybuffer
    - gf_filter_pck_get_duration
    - napi_get_boolean
    - gf_filter_pck_get_data
    - napi_get_cb_info
    - gf_filter_pck_get_crypt_flags
    - gf_filter_pck_get_timescale
    - gf_filter_pck_get_interlaced
    - gf_filter_pck_get_sap
    - napi_create_uint32
    - napi_create_int64
    - gf_filter_pck_is_blocking_ref
    - gf_filter_pck_get_byte_offset
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpck_getter(napi_env env, napi_callback_info info)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS_MAGIC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:946,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:950,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:956,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:960,1
    - Dst: napi_get_value_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:960,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:962,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:968,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:972,1
    - Dst: napi_get_value_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:972,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:974,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:978,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:979,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:983,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:984,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:988,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:992,1
    - Dst: NARG_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:996,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:998,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:999,1
    - Dst: NARG_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1003,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1005,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1006,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1010,1
    - Dst: NARG_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1014,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1015,1
    - Dst: NARG_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1019,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1020,1
    - Dst: NARG_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1024,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1025,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1031,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1035,1
    - Dst: napi_get_value_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1035,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1037,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1041,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1042,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1046,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1047,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1051,1
    - Dst: gf_filter_pck_set_clock_type
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1052,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1056,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1057,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1061,1
    - Dst: gf_filter_pck_set_seq_num
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1062,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1066,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1067,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 115
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1071
      start: 944
    functionDepth: 1
    functionLinenumber: 944
    functionLinenumberEnd: 1071
    functionName: filterpck_setter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_U32
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_get_framing
    - gf_filter_pck_set_dts
    - NARG_ARGS_THIS_MAGIC
    - gf_filter_pck_set_interlaced
    - gf_filter_pck_set_duration
    - napi_typeof
    - napi_throw_error
    - gf_filter_pck_set_framing
    - NAPI_CALL
    - napi_get_value_int64
    - NARG_BOOL
    - gf_filter_pck_set_sap
    - gf_filter_pck_set_seq_num
    - gf_filter_pck_set_dependency_flags
    - gf_filter_pck_set_clock_type
    - gf_filter_pck_set_carousel_version
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpck_setter(napi_env env, napi_callback_info info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1077,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1081,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1083,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1087,1
    - Dst: napi_get_global
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1087,1
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1094,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1097,1
    - Dst: napi_open_handle_scope
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1097,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1100,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1101,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1104,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1104,1
    - Dst: prop_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1105,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1106,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1106,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1108,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1108,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1109,1
    - Dst: napi_close_handle_scope
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1109,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1112
      start: 1074
    functionDepth: 1
    functionLinenumber: 1074
    functionLinenumberEnd: 1112
    functionName: filterpck_enum_props
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_get_global
    - gf_4cc_to_str
    - gf_filter_pck_enum_properties
    - gf_props_4cc_get_name
    - napi_create_int32
    - prop_to_napi
    - napi_close_handle_scope
    - napi_typeof
    - napi_throw_error
    - NAPI_CALL
    - napi_open_handle_scope
    - napi_create_string_utf8
    - napi_call_function
    - NARG_ARGS_THIS
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpck_enum_props(napi_env env, napi_callback_info info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1118,1
    - Dst: gf_props_get_id
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1123,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1126,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1128,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1132,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1132,1
    - Dst: prop_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1135,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1136
      start: 1115
    functionDepth: 1
    functionLinenumber: 1115
    functionLinenumberEnd: 1136
    functionName: filterpck_get_prop
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_property
    - gf_props_get_id
    - napi_get_null
    - prop_to_napi
    - NAPI_CALL
    - NARG_ARGS_THIS
    - gf_filter_pck_get_property_str
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpck_get_prop(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_ref_ex
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1144,1
    - Dst: napi_reference_ref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1149
      start: 1138
    functionDepth: 0
    functionLinenumber: 1138
    functionLinenumberEnd: 1149
    functionName: filterpck_ref
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_ref_ex
    - napi_reference_ref
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpck_ref(napi_env env, napi_callback_info info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1156,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1163
      start: 1150
    functionDepth: 1
    functionLinenumber: 1150
    functionLinenumberEnd: 1163
    functionName: filterpck_unref
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_reference_unref
    - gf_filter_pck_unref
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpck_unref(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1171,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1174,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1178,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1179,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1183
      start: 1164
    functionDepth: 1
    functionLinenumber: 1164
    functionLinenumberEnd: 1183
    functionName: filterpck_discard
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_throw_error
    - napi_reference_unref
    - gf_filter_pck_discard
    - napi_delete_reference
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpck_discard(napi_env env, napi_callback_info info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1188,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1196,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1198,1
    - Dst: napi_check_object_type_tag
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1198,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1200,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1203,1
    - Dst: napi_unwrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1203,1
    - Dst: gf_filter_pck_dangling_copy
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1208,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1210,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1215,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1215,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1221,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1222,1
    - Dst: wrap_filter_packet
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1227,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1229,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1234,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1234,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 35
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1236
      start: 1185
    functionDepth: 1
    functionLinenumber: 1185
    functionLinenumberEnd: 1236
    functionName: filterpck_clone
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_reference_unref
    - wrap_filter_packet
    - napi_check_object_type_tag
    - napi_unwrap
    - napi_get_reference_value
    - napi_typeof
    - napi_throw_error
    - NAPI_CALL
    - gf_filter_pck_dangling_copy
    - NARG_ARGS_THIS
    - napi_delete_reference
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpck_clone(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1243,1
    - Dst: gf_filter_pck_set_readonly
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1248
      start: 1238
    functionDepth: 1
    functionLinenumber: 1238
    functionLinenumberEnd: 1248
    functionName: filterpck_readonly
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_throw_error
    - gf_filter_pck_set_readonly
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpck_readonly(napi_env env, napi_callback_info info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1254,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1257,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1261,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1263,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1268
      start: 1249
    functionDepth: 1
    functionLinenumber: 1249
    functionLinenumberEnd: 1268
    functionName: filterpck_send
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_throw_error
    - napi_reference_unref
    - napi_delete_reference
    - gf_filter_pck_send
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpck_send(napi_env env, napi_callback_info info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1273,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1278,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1282,1
    - Dst: napi_check_object_type_tag
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1282,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1284,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1287,1
    - Dst: napi_unwrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1287,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1290,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1292
      start: 1271
    functionDepth: 1
    functionLinenumber: 1271
    functionLinenumberEnd: 1292
    functionName: filterpck_copy_props
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_unwrap
    - napi_check_object_type_tag
    - gf_filter_pck_merge_properties
    - napi_throw_error
    - NAPI_CALL
    - NARG_ARGS_THIS
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpck_copy_props(napi_env env, napi_callback_info info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1301,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1304,1
    - Dst: NARG_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1308,1
    - Dst: gf_props_get_id
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1311,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1317,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1321,1
    - Dst: prop_from_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1322,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1324,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1330,1
    - Dst: gf_filter_pck_set_property_dyn
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1332,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1335,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1335,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1338,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 34
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1341
      start: 1295
    functionDepth: 1
    functionLinenumber: 1295
    functionLinenumberEnd: 1341
    functionName: filterpck_set_prop
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_STR
    - NARG_U32
    - gf_props_get_id
    - gf_filter_pck_set_property
    - gf_filter_pck_set_property_dyn
    - gf_props_reset_single
    - prop_from_napi
    - napi_typeof
    - napi_throw_error
    - gf_error_to_string
    - NARG_ARGS_THIS
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpck_set_prop(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1345,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1349,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1352,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1353,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1355
      start: 1343
    functionDepth: 1
    functionLinenumber: 1343
    functionLinenumberEnd: 1355
    functionName: filterpck_truncate
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_throw_error
    - NARG_ARGS_THIS
    - NARG_U32
    - gf_filter_pck_truncate
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpck_truncate(napi_env env, napi_callback_info info)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1392,1
    - Dst: napi_get_cb_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1392,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1396,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1398,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1398,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1400,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1400,1
    - Dst: gf_filter_pid_get_filter_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1405,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1407,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1407,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1409,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1409,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1414,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1414,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1414,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1418,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1418,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1418,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1422,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1422,1
    - Dst: gf_filter_pid_eos_received
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1422,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1426,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1426,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1426,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1430,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1430,1
    - Dst: gf_filter_pid_is_sparse
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1430,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1434,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1434,1
    - Dst: gf_filter_pid_get_max_buffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1434,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1438,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1438,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1438,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1442,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1443,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1443,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1447,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1447,1
    - Dst: gf_filter_pid_first_packet_is_empty
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1447,1
    - Dst: gf_filter_pid_get_first_packet_cts
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1452,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1453,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1453,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1455,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1455,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1457,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1457,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1462,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1462,1
    - Dst: gf_filter_pid_get_packet_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1462,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1466,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1466,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1466,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1470,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1470,1
    - Dst: gf_filter_pid_get_min_pck_duration
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1470,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1474,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1474,1
    - Dst: gf_filter_pid_is_playing
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1474,1
    - Dst: gf_filter_pid_get_next_ts
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1478,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1480,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1480,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1482,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1482,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1487,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1487,1
    - Dst: gf_filter_pid_has_decoder
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1487,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 93
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1491
      start: 1387
    functionDepth: 1
    functionLinenumber: 1387
    functionLinenumberEnd: 1491
    functionName: filterpid_getter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_eos_received
    - gf_filter_pid_get_first_packet_cts
    - NAPI_CALL
    - gf_filter_pid_get_next_ts
    - gf_filter_pid_query_buffer_duration
    - gf_filter_pid_get_name
    - napi_get_null
    - gf_filter_pid_has_seen_eos
    - napi_create_string_utf8
    - gf_filter_pid_get_filter_name
    - gf_filter_pid_get_timescale
    - gf_filter_pid_has_decoder
    - gf_filter_pid_get_packet_count
    - napi_get_boolean
    - napi_get_cb_info
    - gf_filter_pid_would_block
    - gf_filter_pid_get_min_pck_duration
    - gf_filter_pid_is_playing
    - gf_filter_pid_first_packet_is_empty
    - gf_filter_pid_is_eos
    - napi_create_int64
    - napi_create_uint32
    - gf_filter_pid_get_max_buffer
    - gf_filter_pid_is_sparse
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_getter(napi_env env, napi_callback_info info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS_MAGIC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1495,1
    - Dst: NARG_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1499,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1500,1
    - Dst: NARG_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1504,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1505,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1509,1
    - Dst: gf_filter_pid_set_max_buffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1510,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1514,1
    - Dst: gf_filter_pid_set_max_buffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1515,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1519
      start: 1493
    functionDepth: 1
    functionLinenumber: 1493
    functionLinenumberEnd: 1519
    functionName: filterpid_setter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_STR
    - NARG_U32
    - NARG_ARGS_THIS_MAGIC
    - gf_filter_pid_set_max_buffer
    - gf_filter_pid_set_eos
    - NARG_BOOL
    - gf_filter_pid_set_name
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_setter(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1528
      start: 1522
    functionDepth: 0
    functionLinenumber: 1522
    functionLinenumberEnd: 1528
    functionName: filterpid_remove
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_remove(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1532,1
    - Dst: filter_enum_pid_props
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1534,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1535
      start: 1530
    functionDepth: 1
    functionLinenumber: 1530
    functionLinenumberEnd: 1535
    functionName: filterpid_enum_props
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_ARGS_THIS
    - filter_enum_pid_props
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_enum_props(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1539,1
    - Dst: filter_get_pid_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1542,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1543
      start: 1537
    functionDepth: 1
    functionLinenumber: 1537
    functionLinenumberEnd: 1543
    functionName: filterpid_get_prop
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_ARGS_THIS
    - filter_get_pid_property
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_get_prop(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1546,1
    - Dst: filter_get_pid_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1549,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1550
      start: 1544
    functionDepth: 1
    functionLinenumber: 1544
    functionLinenumberEnd: 1550
    functionName: filterpid_get_info
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_ARGS_THIS
    - filter_get_pid_property
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_get_info(napi_env env, napi_callback_info info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1555,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1558,1
    - Dst: napi_check_object_type_tag
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1558,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1560,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1563,1
    - Dst: napi_unwrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1563,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1565,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1567,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1567,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1570
      start: 1552
    functionDepth: 1
    functionLinenumber: 1552
    functionLinenumberEnd: 1570
    functionName: filterpid_copy_props
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - napi_unwrap
    - napi_check_object_type_tag
    - napi_throw_error
    - NAPI_CALL
    - gf_error_to_string
    - NARG_ARGS_THIS
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_copy_props(napi_env env, napi_callback_info info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1575,1
    - Dst: gf_filter_pid_reset_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1577,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1579,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1579,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1582
      start: 1572
    functionDepth: 1
    functionLinenumber: 1572
    functionLinenumberEnd: 1582
    functionName: filterpid_reset_props
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_reset_properties
    - NARG_ARGS_THIS
    - gf_error_to_string
    - napi_throw_error
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_reset_props(napi_env env, napi_callback_info info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1590,1
    - Dst: gf_props_get_id
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1596,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1602,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1606,1
    - Dst: prop_from_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1607,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1609,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1616,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1618,1
    - Dst: gf_filter_pid_set_info_dyn
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1622,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1624,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1628,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1628,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1631,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 38
    argCount: 3
    argNames:
    - env
    - info
    - is_info
    argTypes:
    - napi_env
    - napi_callback_info
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1634
      start: 1584
    functionDepth: 1
    functionLinenumber: 1584
    functionLinenumberEnd: 1634
    functionName: filterpid_set_prop_internal
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_U32
    - gf_filter_pid_set_info
    - gf_props_get_id
    - gf_filter_pid_set_info_dyn
    - gf_props_reset_single
    - prop_from_napi
    - napi_typeof
    - napi_throw_error
    - gf_filter_pid_set_property_dyn
    - gf_error_to_string
    - NARG_ARGS_THIS
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_set_prop_internal(napi_env env, napi_callback_info
      info, Bool is_info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: filterpid_set_prop_internal
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1638,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1639
      start: 1636
    functionDepth: 2
    functionLinenumber: 1636
    functionLinenumberEnd: 1639
    functionName: filterpid_set_prop
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - filterpid_set_prop_internal
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_set_prop(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: filterpid_set_prop_internal
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1642,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1643
      start: 1640
    functionDepth: 2
    functionLinenumber: 1640
    functionLinenumberEnd: 1643
    functionName: filterpid_set_info
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - filterpid_set_prop_internal
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_set_info(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1647,1
    - Dst: gf_filter_pid_clear_eos
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1650,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1652
      start: 1645
    functionDepth: 1
    functionLinenumber: 1645
    functionLinenumberEnd: 1652
    functionName: filterpid_clear_eos
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_ARGS_THIS
    - gf_filter_pid_clear_eos
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_clear_eos(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1659
      start: 1653
    functionDepth: 0
    functionLinenumber: 1653
    functionLinenumberEnd: 1659
    functionName: filterpid_check_caps
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_check_caps(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1666
      start: 1660
    functionDepth: 0
    functionLinenumber: 1660
    functionLinenumberEnd: 1666
    functionName: filterpid_discard_block
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_discard_block(napi_env env, napi_callback_info
      info)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1673
      start: 1667
    functionDepth: 0
    functionLinenumber: 1667
    functionLinenumberEnd: 1673
    functionName: filterpid_allow_direct_dispatch
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_allow_direct_dispatch(napi_env env, napi_callback_info
      info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1679,1
    - Dst: gf_filter_pid_get_clock_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1679,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1681
      start: 1674
    functionDepth: 0
    functionLinenumber: 1674
    functionLinenumberEnd: 1681
    functionName: filterpid_get_clock_type
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_create_uint32
    - gf_filter_pid_get_clock_info
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_get_clock_type(napi_env env, napi_callback_info
      info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_clock_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1689,1
    - Dst: frac64_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1691,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1692
      start: 1683
    functionDepth: 1
    functionLinenumber: 1683
    functionLinenumberEnd: 1692
    functionName: filterpid_get_clock_timestamp
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - frac64_to_napi
    - gf_filter_pid_get_clock_info
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_get_clock_timestamp(napi_env env, napi_callback_info
      info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1697,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1700,1
    - Dst: napi_check_object_type_tag
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1700,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1702,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1705,1
    - Dst: napi_unwrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1705,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1706,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1706,1
    - Dst: gf_filter_pid_is_filter_in_parents
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1706,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1708
      start: 1694
    functionDepth: 1
    functionLinenumber: 1694
    functionLinenumberEnd: 1708
    functionName: filterpid_is_filter_in_parents
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_unwrap
    - napi_check_object_type_tag
    - napi_get_boolean
    - gf_filter_pid_is_filter_in_parents
    - napi_throw_error
    - NAPI_CALL
    - NARG_ARGS_THIS
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_is_filter_in_parents(napi_env env, napi_callback_info
      info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_buffer_occupancy
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1719,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1722,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1722,1
    - Dst: SET_VAL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1729,1
    - Dst: SET_VAL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1730,1
    - Dst: SET_VAL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1731,1
    - Dst: SET_VAL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1732,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1735,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1735,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1736,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1736,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1738
      start: 1711
    functionDepth: 1
    functionLinenumber: 1711
    functionLinenumberEnd: 1738
    functionName: filterpid_get_buffer_occupancy
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_get_boolean
    - gf_filter_pid_get_buffer_occupancy
    - SET_VAL
    - napi_define_properties
    - NAPI_CALL
    - napi_create_object
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_get_buffer_occupancy(napi_env env, napi_callback_info
      info)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1729
      start: 1724
    functionDepth: 0
    functionLinenumber: 1724
    functionLinenumberEnd: 1729
    functionName: SET_VAL
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_VAL(_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1746
      start: 1740
    functionDepth: 0
    functionLinenumber: 1740
    functionLinenumberEnd: 1746
    functionName: filterpid_loose_connect
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_loose_connect(napi_env env, napi_callback_info
      info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1750,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1753,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1755
      start: 1748
    functionDepth: 1
    functionLinenumber: 1748
    functionLinenumberEnd: 1755
    functionName: filterpid_set_framing
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_ARGS_THIS
    - gf_filter_pid_set_framing_mode
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_set_framing(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1758,1
    - Dst: gf_filter_pid_set_clock_mode
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1761,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1763
      start: 1756
    functionDepth: 1
    functionLinenumber: 1756
    functionLinenumberEnd: 1763
    functionName: filterpid_set_clock_mode
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_ARGS_THIS
    - gf_filter_pid_set_clock_mode
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_set_clock_mode(napi_env env, napi_callback_info
      info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1766,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1769,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1771
      start: 1764
    functionDepth: 1
    functionLinenumber: 1764
    functionLinenumberEnd: 1771
    functionName: filterpid_set_discard
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_ARGS_THIS
    - gf_filter_pid_set_discard
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_set_discard(napi_env env, napi_callback_info info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_require_source_id
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1777,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1779,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1779,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1782
      start: 1772
    functionDepth: 1
    functionLinenumber: 1772
    functionLinenumberEnd: 1782
    functionName: filterpid_require_source_id
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_throw_error
    - gf_filter_pid_require_source_id
    - gf_error_to_string
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_require_source_id(napi_env env, napi_callback_info
      info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1785,1
    - Dst: gf_filter_pid_recompute_dts
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1788,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1790
      start: 1783
    functionDepth: 1
    functionLinenumber: 1783
    functionLinenumberEnd: 1790
    functionName: filterpid_recompute_dts
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_recompute_dts
    - NARG_ARGS_THIS
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_recompute_dts(napi_env env, napi_callback_info
      info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1796,1
    - Dst: NARG_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1801,1
    - Dst: gf_strdup
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1802,1
    - Dst: NARG_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1804,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1806,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1807,1
    - Dst: gf_filter_pid_resolve_file_template
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1811,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1812,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1815,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1815,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1817,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1817,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1819
      start: 1792
    functionDepth: 1
    functionLinenumber: 1792
    functionLinenumberEnd: 1819
    functionName: filterpid_resolve_template
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - NARG_STR
    - gf_strdup
    - napi_throw_error
    - NAPI_CALL
    - gf_error_to_string
    - napi_create_string_utf8
    - NARG_ARGS_THIS
    - gf_filter_pid_resolve_file_template
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_resolve_template(napi_env env, napi_callback_info
      info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1826,1
    - Dst: gf_props_get_id
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1831,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1833,1
    - Dst: gf_filter_pid_caps_query_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1835,1
    - Dst: prop_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1837,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1839,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1839,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1841
      start: 1821
    functionDepth: 1
    functionLinenumber: 1821
    functionLinenumberEnd: 1841
    functionName: filterpid_query_cap
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_props_get_id
    - napi_get_null
    - prop_to_napi
    - gf_filter_pid_caps_query_str
    - NAPI_CALL
    - gf_filter_pid_caps_query
    - NARG_ARGS_THIS
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_query_cap(napi_env env, napi_callback_info info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1848,1
    - Dst: gf_props_get_id
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1852,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1853,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1855,1
    - Dst: prop_from_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1855,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1858,1
    - Dst: gf_filter_pid_negotiate_property_dyn
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1860,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1863,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1863,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1865,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1867
      start: 1843
    functionDepth: 1
    functionLinenumber: 1843
    functionLinenumberEnd: 1867
    functionName: filterpid_negotiate_cap
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_U32
    - gf_props_get_id
    - gf_props_reset_single
    - prop_from_napi
    - gf_filter_pid_negotiate_property
    - napi_throw_error
    - NAPI_CALL
    - gf_error_to_string
    - gf_filter_pid_negotiate_property_dyn
    - NARG_ARGS_THIS
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_negotiate_cap(napi_env env, napi_callback_info
      info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1874,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1879,1
    - Dst: gf_list_del_item
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1885,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1887,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 10
    argCount: 3
    argNames:
    - env
    - finalize_data
    - finalize_hint
    argTypes:
    - napi_env
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1888
      start: 1869
    functionDepth: 1
    functionLinenumber: 1869
    functionLinenumberEnd: 1888
    functionName: napi_pck_del
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_discard
    - gf_free
    - gf_list_del_item
    - gf_filter_pck_unref
    linkageType: ''
    returnType: void
    signature: void napi_pck_del(napi_env env, void *finalize_data, void* finalize_hint)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1895,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1903,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1904,1
    - Dst: napi_type_tag_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1905,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1944,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1946,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 3
    argNames:
    - env
    - pck
    - is_src
    argTypes:
    - napi_env
    - GF_FilterPacket*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1948
      start: 1890
    functionDepth: 1
    functionLinenumber: 1890
    functionLinenumberEnd: 1948
    functionName: wrap_filter_packet
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - napi_create_reference
    - napi_define_properties
    - napi_wrap
    - napi_type_tag_object
    - napi_create_object
    linkageType: ''
    returnType: NAPI_FilterPacket
    signature: NAPI_FilterPacket *wrap_filter_packet(napi_env env, GF_FilterPacket
      *pck, Bool is_src)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1956,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1959,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1959,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1962,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1964,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1964,1
    - Dst: wrap_filter_packet
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1968,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1969,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1969,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1971
      start: 1950
    functionDepth: 2
    functionLinenumber: 1950
    functionLinenumberEnd: 1971
    functionName: filterpid_get_packet
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_get_null
    - napi_get_reference_value
    - NAPI_CALL
    - gf_filter_pid_get_udta
    - gf_filter_pid_get_packet
    - wrap_filter_packet
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_get_packet(napi_env env, napi_callback_info info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1977,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1983,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1985,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1991,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1993
      start: 1973
    functionDepth: 1
    functionLinenumber: 1973
    functionLinenumberEnd: 1993
    functionName: filterpid_drop_packet
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_udta
    - napi_reference_unref
    - gf_filter_pid_drop_packet
    - napi_delete_reference
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_drop_packet(napi_env env, napi_callback_info info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:1998,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2001,1
    - Dst: napi_check_object_type_tag
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2001,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2003,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2006,1
    - Dst: napi_unwrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2006,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2008,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2010
      start: 1996
    functionDepth: 1
    functionLinenumber: 1996
    functionLinenumberEnd: 2010
    functionName: filterpid_send_event
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_unwrap
    - napi_check_object_type_tag
    - napi_throw_error
    - NAPI_CALL
    - gf_filter_pid_send_event
    - NARG_ARGS_THIS
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_send_event(napi_env env, napi_callback_info info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2014,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2017,1
    - Dst: napi_check_object_type_tag
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2017,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2019,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2022,1
    - Dst: napi_unwrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2022,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2024,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2026,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2026,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2030
      start: 2012
    functionDepth: 1
    functionLinenumber: 2012
    functionLinenumberEnd: 2030
    functionName: filterpid_forward
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_unwrap
    - napi_check_object_type_tag
    - gf_filter_pck_forward
    - napi_throw_error
    - NAPI_CALL
    - gf_error_to_string
    - NARG_ARGS_THIS
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_forward(napi_env env, napi_callback_info info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2035,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2039,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2041,1
    - Dst: wrap_filter_packet
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2044,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2046,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2050,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2050,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2052
      start: 2032
    functionDepth: 2
    functionLinenumber: 2032
    functionLinenumberEnd: 2052
    functionName: filterpid_new_pck
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - napi_get_reference_value
    - napi_throw_error
    - NAPI_CALL
    - NARG_ARGS_THIS
    - wrap_filter_packet
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_new_pck(napi_env env, napi_callback_info info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2057,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2062,1
    - Dst: napi_check_object_type_tag
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2062,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2064,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2067,1
    - Dst: napi_unwrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2067,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2070,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2074,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2075,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2077,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2079,1
    - Dst: wrap_filter_packet
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2082,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2084,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2087,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2087,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2089
      start: 2054
    functionDepth: 2
    functionLinenumber: 2054
    functionLinenumberEnd: 2089
    functionName: filterpid_new_pck_ref
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_U32
    - napi_unwrap
    - napi_check_object_type_tag
    - gf_filter_pck_new_ref
    - napi_get_reference_value
    - napi_throw_error
    - NAPI_CALL
    - NARG_ARGS_THIS
    - wrap_filter_packet
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_new_pck_ref(napi_env env, napi_callback_info info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2093,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2095,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2097,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2102,1
    - Dst: napi_get_global
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2103,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2104,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2110,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2111,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2115,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2116,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2120,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2122,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 3
    argNames:
    - filter
    - pid
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2127
      start: 2091
    functionDepth: 1
    functionLinenumber: 2091
    functionLinenumberEnd: 2127
    functionName: filter_cbk_release_packet
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_get_global
    - napi_reference_unref
    - gf_filter_get_rt_udta
    - gf_list_pop_front
    - napi_make_callback
    - napi_get_reference_value
    - gf_filter_pid_get_udta
    - napi_delete_reference
    linkageType: ''
    returnType: void
    signature: void filter_cbk_release_packet(GF_Filter *filter, GF_FilterPid *pid,
      GF_FilterPacket *pck)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2134,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2139,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2141,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2147,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2150,1
    - Dst: napi_is_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2150,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2152,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2158,1
    - Dst: napi_get_arraybuffer_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2158,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2160,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2162,1
    - Dst: wrap_filter_packet
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2165,1
    - Dst: gf_list_new
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2169,1
    - Dst: gf_list_add
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2172,1
    - Dst: napi_reference_ref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2177,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2180,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2183,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2188,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2195,1
    - Dst: gf_list_del_item
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2196,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2198,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 60
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2201
      start: 2129
    functionDepth: 2
    functionLinenumber: 2129
    functionLinenumberEnd: 2201
    functionName: filterpid_new_pck_shared
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - napi_get_arraybuffer_info
    - gf_filter_pck_new_shared
    - napi_create_reference
    - gf_filter_pck_discard
    - napi_get_reference_value
    - napi_typeof
    - napi_throw_error
    - NAPI_CALL
    - gf_list_add
    - gf_list_del_item
    - napi_reference_ref
    - gf_filter_pid_get_udta
    - NARG_ARGS_THIS
    - napi_is_arraybuffer
    - wrap_filter_packet
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_new_pck_shared(napi_env env, napi_callback_info
      info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2206,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2211,1
    - Dst: napi_check_object_type_tag
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2211,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2213,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2216,1
    - Dst: napi_unwrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2216,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2219,1
    - Dst: gf_filter_pck_new_clone
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2225,1
    - Dst: gf_filter_pck_new_copy
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2227,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2230,1
    - Dst: wrap_filter_packet
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2233,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2235,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2239,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2239,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 3
    argNames:
    - env
    - info
    - is_clone
    argTypes:
    - napi_env
    - napi_callback_info
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2241
      start: 2203
    functionDepth: 2
    functionLinenumber: 2203
    functionLinenumberEnd: 2241
    functionName: filterpid_new_pck_copy_clone
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_unwrap
    - napi_check_object_type_tag
    - gf_filter_pck_new_clone
    - gf_filter_pck_new_copy
    - napi_get_reference_value
    - napi_throw_error
    - NAPI_CALL
    - NARG_ARGS_THIS
    - wrap_filter_packet
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_new_pck_copy_clone(napi_env env, napi_callback_info
      info, Bool is_clone)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: filterpid_new_pck_copy_clone
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2245
      start: 2242
    functionDepth: 3
    functionLinenumber: 2242
    functionLinenumberEnd: 2245
    functionName: filterpid_new_pck_copy
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - filterpid_new_pck_copy_clone
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_new_pck_copy(napi_env env, napi_callback_info
      info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: filterpid_new_pck_copy_clone
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2249
      start: 2246
    functionDepth: 3
    functionLinenumber: 2246
    functionLinenumberEnd: 2249
    functionName: filterpid_new_pck_clone
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - filterpid_new_pck_copy_clone
    linkageType: ''
    returnType: napi_value
    signature: napi_value filterpid_new_pck_clone(napi_env env, napi_callback_info
      info)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _argidx
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2288
      start: 2278
    functionDepth: 0
    functionLinenumber: 2278
    functionLinenumberEnd: 2288
    functionName: FILTER_ARG
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FILTER_ARG(_name, _argidx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2293,1
    - Dst: napi_get_cb_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2293,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2297,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2299,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2299,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2303,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2305,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2305,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2309,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2309,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2309,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2313,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2313,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2313,1
    - Dst: gf_filter_get_status
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2318,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2319,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2319,1
    - Dst: gf_filter_get_bytes_done
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2324,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2325,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2325,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2330
      start: 2288
    functionDepth: 1
    functionLinenumber: 2288
    functionLinenumberEnd: 2330
    functionName: filter_getter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_ipid_count
    - gf_filter_get_opid_count
    - gf_filter_get_status
    - napi_get_cb_info
    - napi_create_int64
    - NAPI_CALL
    - napi_create_string_utf8
    - gf_filter_get_bytes_done
    - gf_filter_get_name
    - napi_create_uint32
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_getter(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS_MAGIC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2334,1
    - Dst: NARG_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2338,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2343
      start: 2332
    functionDepth: 1
    functionLinenumber: 2332
    functionLinenumberEnd: 2343
    functionName: filter_setter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_ARGS_THIS_MAGIC
    - NARG_STR
    - gf_filter_set_name
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_setter(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2351
      start: 2345
    functionDepth: 0
    functionLinenumber: 2345
    functionLinenumberEnd: 2351
    functionName: filter_remove
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_remove(napi_env env, napi_callback_info info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2354,1
    - Dst: NARG_STR_ALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2357,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2358,1
    - Dst: gf_fs_send_update
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2360,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2361,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2363
      start: 2352
    functionDepth: 1
    functionLinenumber: 2352
    functionLinenumberEnd: 2363
    functionName: filter_update
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - NARG_U32
    - NARG_ARGS_THIS
    - NARG_STR_ALLOC
    - gf_fs_send_update
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_update(napi_env env, napi_callback_info info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2367,1
    - Dst: NARG_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2371,1
    - Dst: gf_filter_set_source_restricted
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2374,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2376,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2379,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2379,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - env
    - info
    - is_restricted
    argTypes:
    - napi_env
    - napi_callback_info
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2381
      start: 2364
    functionDepth: 1
    functionLinenumber: 2364
    functionLinenumberEnd: 2381
    functionName: filter_set_source_internal
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_STR
    - gf_filter_set_source
    - gf_filter_set_source_restricted
    - napi_throw_error
    - gf_error_to_string
    - NARG_ARGS_THIS
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_set_source_internal(napi_env env, napi_callback_info
      info, Bool is_restricted)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: filter_set_source_internal
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2384,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2385
      start: 2382
    functionDepth: 2
    functionLinenumber: 2382
    functionLinenumberEnd: 2385
    functionName: filter_set_source
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 3
    functionsReached:
    - filter_set_source_internal
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_set_source(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: filter_set_source_internal
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2388,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2389
      start: 2386
    functionDepth: 2
    functionLinenumber: 2386
    functionLinenumberEnd: 2389
    functionName: filter_set_source_restricted
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - filter_set_source_internal
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_set_source_restricted(napi_env env, napi_callback_info
      info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2395,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2402,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2405,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2407,1
    - Dst: NARG_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2413,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2415,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2417,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2417,1
    - Dst: gf_filter_reconnect_output
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2420,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2422,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2422,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2424
      start: 2390
    functionDepth: 1
    functionLinenumber: 2390
    functionLinenumberEnd: 2424
    functionName: filter_insert
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_STR
    - gf_filter_set_source
    - napi_throw_error
    - gf_filter_get_opid
    - gf_error_to_string
    - gf_filter_reconnect_output
    - NARG_ARGS_THIS
    - napi_get_value_int32
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_insert(napi_env env, napi_callback_info info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2430,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2436,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2438,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2440,1
    - Dst: gf_filter_reconnect_output
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2446,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2448,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2448,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2450
      start: 2426
    functionDepth: 1
    functionLinenumber: 2426
    functionLinenumberEnd: 2450
    functionName: filter_reconnect
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_throw_error
    - gf_filter_get_opid
    - gf_error_to_string
    - gf_filter_reconnect_output
    - NARG_ARGS_THIS
    - napi_get_value_int32
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_reconnect(napi_env env, napi_callback_info info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2436,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2438,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2440,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2445
      start: 2431
    functionDepth: 0
    functionLinenumber: 2431
    functionLinenumberEnd: 2445
    functionName: if
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_throw_error
    - gf_filter_get_opid
    - napi_get_value_int32
    linkageType: ''
    returnType: FILTER
    signature: FILTER if (argc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2458,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2463,1
    - Dst: NARG_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2467,1
    - Dst: gf_filter_probe_link
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2469,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2471,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2471,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2475,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2475,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2476,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2478
      start: 2452
    functionDepth: 1
    functionLinenumber: 2452
    functionLinenumberEnd: 2478
    functionName: filter_probe_link
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 2
    functionsReached:
    - gf_free
    - NARG_STR
    - gf_filter_probe_link
    - napi_throw_error
    - NAPI_CALL
    - gf_error_to_string
    - napi_create_string_utf8
    - NARG_ARGS_THIS
    - napi_get_value_int32
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_probe_link(napi_env env, napi_callback_info info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2485,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2489,1
    - Dst: gf_filter_get_possible_destinations
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2492,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2494,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2494,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2498,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2498,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2499,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2501
      start: 2480
    functionDepth: 1
    functionLinenumber: 2480
    functionLinenumberEnd: 2501
    functionName: filter_get_destinations
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_get_possible_destinations
    - napi_throw_error
    - NAPI_CALL
    - gf_error_to_string
    - napi_create_string_utf8
    - NARG_ARGS_THIS
    - napi_get_value_int32
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_get_destinations(napi_env env, napi_callback_info
      info)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2509
      start: 2503
    functionDepth: 0
    functionLinenumber: 2503
    functionLinenumberEnd: 2509
    functionName: filter_require_source_id
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_require_source_id(napi_env env, napi_callback_info
      info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2514,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2518,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2520,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2524,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2525,1
    - Dst: dashin_bind
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2526,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2528,1
    - Dst: httpout_bind
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2529,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2531,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2533
      start: 2512
    functionDepth: 1
    functionLinenumber: 2512
    functionLinenumberEnd: 2533
    functionName: filter_bind
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - dashin_bind
    - napi_typeof
    - napi_throw_error
    - httpout_bind
    - strcmp
    - NARG_ARGS_THIS
    - gf_filter_get_name
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_bind(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2540,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2540,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2541,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2541,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2542,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2542,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2543,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2543,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2544,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2544,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - env
    - frac
    argTypes:
    - napi_env
    - GF_Fraction*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2546
      start: 2536
    functionDepth: 1
    functionLinenumber: 2536
    functionLinenumberEnd: 2546
    functionName: frac_to_napi
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_set_named_property
    - napi_create_int32
    - NAPI_CALL
    - napi_create_uint32
    - napi_create_object
    linkageType: ''
    returnType: napi_value
    signature: napi_value frac_to_napi(napi_env env, const GF_Fraction *frac)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2551,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2551,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2552,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2552,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2553,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2553,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2554,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2554,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2555,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2555,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - env
    - frac
    argTypes:
    - napi_env
    - GF_Fraction64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2557
      start: 2547
    functionDepth: 1
    functionLinenumber: 2547
    functionLinenumberEnd: 2557
    functionName: frac64_to_napi
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - napi_set_named_property
    - NAPI_CALL
    - napi_create_int64
    - napi_create_object
    linkageType: ''
    returnType: napi_value
    signature: napi_value frac64_to_napi(napi_env env, const GF_Fraction64 *frac)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GET_PROP_FIELD_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2563,1
    - Dst: GET_PROP_FIELD_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2564,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - env
    - prop
    - frac
    argTypes:
    - napi_env
    - napi_value
    - GF_Fraction*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2566
      start: 2558
    functionDepth: 1
    functionLinenumber: 2558
    functionLinenumberEnd: 2566
    functionName: frac_from_napi
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - GET_PROP_FIELD_S32
    - GET_PROP_FIELD_U32
    linkageType: ''
    returnType: napi_status
    signature: napi_status frac_from_napi(napi_env env, napi_value prop, GF_Fraction
      *frac)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GET_PROP_FIELD_S64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2573,1
    - Dst: GET_PROP_FIELD_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2574,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - env
    - prop
    - frac
    argTypes:
    - napi_env
    - napi_value
    - GF_Fraction64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2576
      start: 2568
    functionDepth: 1
    functionLinenumber: 2568
    functionLinenumberEnd: 2576
    functionName: frac64_from_napi
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - GET_PROP_FIELD_U64
    - GET_PROP_FIELD_S64
    linkageType: ''
    returnType: napi_status
    signature: napi_status frac64_from_napi(napi_env env, napi_value prop, GF_Fraction64
      *frac)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2581
      start: 2578
    functionDepth: 0
    functionLinenumber: 2578
    functionLinenumberEnd: 2581
    functionName: SET_BOOL
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_BOOL(_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2585
      start: 2582
    functionDepth: 0
    functionLinenumber: 2582
    functionLinenumberEnd: 2585
    functionName: SET_U32
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_U32(_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2589
      start: 2586
    functionDepth: 0
    functionLinenumber: 2586
    functionLinenumberEnd: 2589
    functionName: SET_U64
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_U64(_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2593
      start: 2590
    functionDepth: 0
    functionLinenumber: 2590
    functionLinenumberEnd: 2593
    functionName: SET_S64
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_S64(_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2597
      start: 2594
    functionDepth: 0
    functionLinenumber: 2594
    functionLinenumberEnd: 2597
    functionName: SET_S32
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_S32(_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2605
      start: 2598
    functionDepth: 0
    functionLinenumber: 2598
    functionLinenumberEnd: 2605
    functionName: SET_STR
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_STR(_val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_stats
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2614,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2616,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2616,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2619,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2619,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2622,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2622,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2623,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2623,1
    - Dst: SET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2627,1
    - Dst: SET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2628,1
    - Dst: SET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2629,1
    - Dst: SET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2630,1
    - Dst: SET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2631,1
    - Dst: SET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2632,1
    - Dst: SET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2633,1
    - Dst: SET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2634,1
    - Dst: SET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2635,1
    - Dst: SET_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2636,1
    - Dst: SET_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2637,1
    - Dst: SET_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2638,1
    - Dst: SET_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2639,1
    - Dst: SET_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2640,1
    - Dst: SET_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2641,1
    - Dst: SET_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2642,1
    - Dst: SET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2643,1
    - Dst: SET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2644,1
    - Dst: SET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2645,1
    - Dst: SET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2646,1
    - Dst: SET_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2647,1
    - Dst: SET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2648,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2650,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2650,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2650,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2651,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2651,1
    - Dst: gf_codecid_file_ext
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2654,1
    - Dst: strchr
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2655,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2657,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2657,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2659,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2659,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2661,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2661,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2663,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2663,1
    - Dst: frac64_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2663,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2664,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2664,1
    - Dst: frac64_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2664,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 46
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2666
      start: 2606
    functionDepth: 2
    functionLinenumber: 2606
    functionLinenumberEnd: 2666
    functionName: filter_get_statistics
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_set_named_property
    - SET_S32
    - napi_get_boolean
    - gf_codecid_file_ext
    - SET_STR
    - SET_U64
    - gf_filter_get_stats
    - napi_throw_error
    - SET_U32
    - NAPI_CALL
    - gf_error_to_string
    - napi_create_string_utf8
    - frac64_to_napi
    - strchr
    - gf_stream_type_name
    - SET_BOOL
    - napi_create_object
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_get_statistics(napi_env env, napi_callback_info info)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2676,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2677,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2677,1
    - Dst: gf_props_enum_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2677,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2683,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2683,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2686,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2686,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2690,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2690,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2690,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2694,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2694,1
    - Dst: gf_pixel_fmt_sname
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2694,1
    - Dst: gf_codecid_file_ext
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2699,1
    - Dst: strchr
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2700,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2702,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2702,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2704,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2704,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2708,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2708,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2711,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2711,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2714,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2714,1
    - Dst: frac_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2717,1
    - Dst: frac64_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2719,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2721,1
    - Dst: napi_create_double
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2721,1
    - Dst: FIX2FLT
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2721,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2724,1
    - Dst: napi_create_double
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2724,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2729,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2729,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2731,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2735,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2735,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2735,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2739,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2739,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2740,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2740,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2741,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2741,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2742,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2742,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2743,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2743,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2746,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2746,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2747,1
    - Dst: napi_create_double
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2747,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2748,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2748,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2749,1
    - Dst: napi_create_double
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2749,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2750,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2750,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2753,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2753,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2754,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2754,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2755,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2755,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2756,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2756,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2757,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2757,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2758,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2758,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2759,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2759,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2762,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2762,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2763,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2763,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2764,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2764,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2765,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2765,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2766,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2766,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2767,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2767,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2768,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2768,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2769,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2769,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2770,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2770,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2777,1
    - Dst: napi_create_external_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2777,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2780,1
    - Dst: napi_create_buffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2780,1
    - Dst: memcpy
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2781,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2784,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2788,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2788,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2791,1
    - Dst: napi_create_array_with_length
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2791,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2793,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2793,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2794,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2794,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2798,1
    - Dst: napi_create_array_with_length
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2798,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2800,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2800,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2801,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2801,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2805,1
    - Dst: napi_create_array_with_length
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2805,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2808,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2808,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2810,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2812,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2812,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2816,1
    - Dst: napi_create_array_with_length
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2816,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2818,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2818,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2818,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2819,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2819,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2823,1
    - Dst: napi_create_array_with_length
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2823,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2826,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2826,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2827,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2827,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2828,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2828,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2829,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2829,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2830,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2830,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2831,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2831,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2835,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 155
    argCount: 3
    argNames:
    - env
    - p
    - p4cc
    argTypes:
    - napi_env
    - GF_PropertyValue*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2838
      start: 2669
    functionDepth: 2
    functionLinenumber: 2669
    functionLinenumberEnd: 2838
    functionName: prop_to_napi
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 3
    functionsReached:
    - napi_create_buffer
    - napi_create_int32
    - NAPI_CALL
    - strchr
    - gf_stream_type_name
    - FIX2FLT
    - gf_4cc_to_str
    - napi_get_null
    - memcpy
    - gf_props_type_is_enum
    - napi_create_double
    - napi_set_element
    - napi_create_string_utf8
    - napi_create_external_arraybuffer
    - gf_props_enum_name
    - napi_get_boolean
    - frac_to_napi
    - frac64_to_napi
    - gf_pixel_fmt_sname
    - napi_create_uint32
    - napi_create_int64
    - gf_codecid_file_ext
    - napi_create_object
    - napi_create_array_with_length
    - napi_set_named_property
    - napi_throw_error
    linkageType: ''
    returnType: napi_value
    signature: napi_value prop_to_napi(napi_env env, const GF_PropertyValue *p, u32
      p4cc)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: napi_get_instance_data
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2845,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2849,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2856,1
    - Dst: gf_realloc
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2860,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2862,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2867,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 3
    argNames:
    - env
    - val
    - ostr
    argTypes:
    - napi_env
    - napi_value
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2872
      start: 2840
    functionDepth: 0
    functionLinenumber: 2840
    functionLinenumberEnd: 2872
    functionName: napi_get_str
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_typeof
    - napi_get_instance_data
    - napi_throw_error
    - napi_get_value_string_utf8
    - gf_realloc
    linkageType: ''
    returnType: napi_status
    signature: napi_status napi_get_str(napi_env env, napi_value val, char **ostr)
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2881,1
    - Dst: napi_get_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2885,1
    - Dst: gf_strdup
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2887,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2892,1
    - Dst: napi_get_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2896,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2899,1
    - Dst: gf_stream_type_by_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2902,1
    - Dst: napi_get_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2906,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2909,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2912,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2915,1
    - Dst: napi_get_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2916,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2919,1
    - Dst: gf_props_parse_enum
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2922,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2926,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2929,1
    - Dst: napi_get_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2932,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2935,1
    - Dst: gf_4cc_parse
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2938,1
    - Dst: napi_get_value_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2942,1
    - Dst: napi_get_value_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2945,1
    - Dst: napi_get_value_bool
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2949,1
    - Dst: GET_PROP_FIELD_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2955,1
    - Dst: GET_PROP_FIELD_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2956,1
    - Dst: GET_PROP_FIELD_S64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2960,1
    - Dst: GET_PROP_FIELD_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2961,1
    - Dst: napi_get_value_double
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2966,1
    - Dst: FLT2FIX
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2967,1
    - Dst: napi_get_value_double
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2971,1
    - Dst: GET_PROP_FIELD_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2974,1
    - Dst: GET_PROP_FIELD_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2975,1
    - Dst: GET_PROP_FIELD_FLT
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2979,1
    - Dst: GET_PROP_FIELD_FLT
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2980,1
    - Dst: GET_PROP_FIELD_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2984,1
    - Dst: GET_PROP_FIELD_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2985,1
    - Dst: GET_PROP_FIELD_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2986,1
    - Dst: GET_PROP_FIELD_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2990,1
    - Dst: GET_PROP_FIELD_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2991,1
    - Dst: GET_PROP_FIELD_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2992,1
    - Dst: GET_PROP_FIELD_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2993,1
    - Dst: napi_get_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2997,1
    - Dst: gf_strdup
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2999,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3003,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3007,1
    - Dst: napi_is_array
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3018,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3020,1
    - Dst: napi_get_array_length
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3024,1
    - Dst: gf_malloc
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3034,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3036,1
    - Dst: memset
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3039,1
    - Dst: napi_get_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3043,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3048,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3052,1
    - Dst: gf_malloc
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3054,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3056,1
    - Dst: GET_PROP_FIELD_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3062,1
    - Dst: GET_PROP_FIELD_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3063,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3065,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3068,1
    - Dst: napi_get_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3071,1
    - Dst: strlen
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3073,1
    - Dst: GF_4CC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3074,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3076,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3084,1
    CyclomaticComplexity: 63
    EdgeCount: 63
    ICount: 207
    argCount: 6
    argNames:
    - env
    - prop
    - p4cc
    - pname
    - custom_type
    - p
    argTypes:
    - napi_env
    - napi_value
    - u32
    - char*
    - u32
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3086
      start: 2874
    functionDepth: 1
    functionLinenumber: 2874
    functionLinenumberEnd: 3086
    functionName: prop_from_napi
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 3
    functionsReached:
    - napi_get_value_uint32
    - gf_stream_type_by_name
    - memset
    - gf_props_parse_enum
    - napi_get_value_double
    - gf_4cc_parse
    - napi_get_value_int32
    - gf_strdup
    - napi_is_array
    - gf_props_type_is_enum
    - napi_typeof
    - napi_get_str
    - GET_PROP_FIELD_FLT
    - napi_get_value_int64
    - gf_codecid_parse
    - GET_PROP_FIELD_S32
    - FLT2FIX
    - GF_4CC
    - GET_PROP_FIELD_U64
    - napi_get_value_bool
    - GET_PROP_FIELD_U32
    - gf_malloc
    - napi_get_value_string_utf8
    - strlen
    - gf_props_4cc_get_type
    - GET_PROP_FIELD_S64
    - napi_throw_error
    - napi_get_element
    - napi_get_array_length
    linkageType: ''
    returnType: napi_status
    signature: napi_status prop_from_napi(napi_env env, napi_value prop, u32 p4cc,
      char *pname, u32 custom_type, GF_PropertyValue *p)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3093,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3095,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3099,1
    - Dst: napi_get_global
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3099,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3106,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3109,1
    - Dst: napi_open_handle_scope
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3109,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3112,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3113,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3116,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3116,1
    - Dst: prop_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3117,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3118,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3118,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3120,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3120,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3121,1
    - Dst: napi_close_handle_scope
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3121,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 3
    argNames:
    - env
    - cbk_fun
    - pid
    argTypes:
    - napi_env
    - napi_value
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3124
      start: 3088
    functionDepth: 3
    functionLinenumber: 3088
    functionLinenumberEnd: 3124
    functionName: filter_enum_pid_props
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - napi_get_global
    - gf_filter_pid_enum_properties
    - gf_4cc_to_str
    - gf_props_4cc_get_name
    - napi_create_int32
    - prop_to_napi
    - napi_close_handle_scope
    - napi_typeof
    - napi_throw_error
    - NAPI_CALL
    - napi_open_handle_scope
    - napi_create_string_utf8
    - napi_call_function
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_enum_pid_props(napi_env env, napi_value cbk_fun,
      GF_FilterPid *pid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3129,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3134,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3136,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3139,1
    - Dst: filter_enum_pid_props
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3142,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - env
    - info
    - is_opid
    argTypes:
    - napi_env
    - napi_callback_info
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3143
      start: 3126
    functionDepth: 4
    functionLinenumber: 3126
    functionLinenumberEnd: 3143
    functionName: filter_iopid_enum_props
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - filter_enum_pid_props
    - napi_throw_error
    - gf_filter_get_opid
    - gf_filter_get_ipid
    - NARG_ARGS_THIS
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_iopid_enum_props(napi_env env, napi_callback_info
      info, Bool is_opid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: filter_iopid_enum_props
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3148
      start: 3145
    functionDepth: 5
    functionLinenumber: 3145
    functionLinenumberEnd: 3148
    functionName: filter_ipid_enum_props
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - filter_iopid_enum_props
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_ipid_enum_props(napi_env env, napi_callback_info
      info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: filter_iopid_enum_props
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3152
      start: 3149
    functionDepth: 5
    functionLinenumber: 3149
    functionLinenumberEnd: 3152
    functionName: filter_opid_enum_props
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - filter_iopid_enum_props
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_opid_enum_props(napi_env env, napi_callback_info
      info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_get_id
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3159,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3164,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3166,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3169,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3171,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3175,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3176,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3176,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3176,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3179,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3180,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3180,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3180,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3183,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3184,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3186,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3186,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3188,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3188,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3192,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3193,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3193,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3193,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3198,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3198,1
    - Dst: prop_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3201,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3202,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 4
    argNames:
    - env
    - pname
    - pid
    - is_info
    argTypes:
    - napi_env
    - char*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3204
      start: 3154
    functionDepth: 3
    functionLinenumber: 3154
    functionLinenumberEnd: 3204
    functionName: filter_get_pid_property
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 2
    functionsReached:
    - gf_filter_pid_get_info
    - gf_props_get_id
    - gf_filter_pid_get_property
    - gf_filter_pid_get_property_str
    - gf_filter_pid_get_info_str
    - napi_get_null
    - napi_get_boolean
    - prop_to_napi
    - strcmp
    - NAPI_CALL
    - gf_filter_pid_get_name
    - gf_filter_release_property
    - napi_create_string_utf8
    - gf_filter_pid_is_eos
    - napi_create_int64
    - gf_filter_pid_query_buffer_duration
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_get_pid_property(napi_env env, char *pname, GF_FilterPid
      *pid, Bool is_info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3209,1
    - Dst: NARG_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3212,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3215,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3217,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3220,1
    - Dst: filter_get_pid_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3223,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - env
    - info
    - is_opid
    argTypes:
    - napi_env
    - napi_callback_info
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3224
      start: 3206
    functionDepth: 4
    functionLinenumber: 3206
    functionLinenumberEnd: 3224
    functionName: filter_iopid_prop
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_STR
    - filter_get_pid_property
    - napi_throw_error
    - gf_filter_get_opid
    - gf_filter_get_ipid
    - NARG_ARGS_THIS
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_iopid_prop(napi_env env, napi_callback_info info,
      Bool is_opid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: filter_iopid_prop
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3228
      start: 3225
    functionDepth: 5
    functionLinenumber: 3225
    functionLinenumberEnd: 3228
    functionName: filter_ipid_prop
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - filter_iopid_prop
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_ipid_prop(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: filter_iopid_prop
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3232
      start: 3229
    functionDepth: 5
    functionLinenumber: 3229
    functionLinenumberEnd: 3232
    functionName: filter_opid_prop
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - filter_iopid_prop
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_opid_prop(napi_env env, napi_callback_info info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3240,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3243,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3246,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3248,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3251,1
    - Dst: gf_filter_pid_get_statistics
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3255,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3257,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3257,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3260,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3260,1
    - Dst: SET_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3261,1
    - Dst: SET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3262,1
    - Dst: SET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3263,1
    - Dst: SET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3264,1
    - Dst: SET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3265,1
    - Dst: SET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3266,1
    - Dst: SET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3267,1
    - Dst: SET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3268,1
    - Dst: SET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3269,1
    - Dst: SET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3270,1
    - Dst: SET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3271,1
    - Dst: SET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3272,1
    - Dst: SET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3273,1
    - Dst: SET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3274,1
    - Dst: SET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3275,1
    - Dst: SET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3276,1
    - Dst: SET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3277,1
    - Dst: SET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3278,1
    - Dst: SET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3279,1
    - Dst: SET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3280,1
    - Dst: SET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3281,1
    - Dst: SET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3282,1
    - Dst: SET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3283,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3284,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3284,1
    - Dst: frac64_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3284,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3285,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3285,1
    - Dst: frac64_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3285,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 44
    argCount: 3
    argNames:
    - env
    - info
    - is_opid
    argTypes:
    - napi_env
    - napi_callback_info
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3287
      start: 3234
    functionDepth: 2
    functionLinenumber: 3234
    functionLinenumberEnd: 3287
    functionName: filter_iopid_stats
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_U32
    - napi_set_named_property
    - SET_U64
    - frac64_to_napi
    - gf_filter_pid_get_statistics
    - napi_throw_error
    - gf_filter_get_opid
    - gf_filter_get_ipid
    - NAPI_CALL
    - SET_U32
    - gf_error_to_string
    - NARG_ARGS_THIS
    - SET_BOOL
    - napi_create_object
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_iopid_stats(napi_env env, napi_callback_info info,
      Bool is_opid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: filter_iopid_stats
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3290,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3291
      start: 3288
    functionDepth: 3
    functionLinenumber: 3288
    functionLinenumberEnd: 3291
    functionName: filter_ipid_stats
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - filter_iopid_stats
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_ipid_stats(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: filter_iopid_stats
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3294,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3295
      start: 3292
    functionDepth: 3
    functionLinenumber: 3292
    functionLinenumberEnd: 3295
    functionName: filter_opid_stats
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - filter_iopid_stats
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_opid_stats(napi_env env, napi_callback_info info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3300,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3304,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3306,1
    - Dst: gf_filter_pid_get_source_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3309,1
    - Dst: gf_filter_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3311,1
    - Dst: fs_wrap_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3312,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3313
      start: 3297
    functionDepth: 1
    functionLinenumber: 3297
    functionLinenumberEnd: 3313
    functionName: filter_ipid_source
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_source_filter
    - gf_filter_get_rt_udta
    - napi_throw_error
    - gf_filter_get_ipid
    - NARG_ARGS_THIS
    - fs_wrap_filter
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_ipid_source(napi_env env, napi_callback_info info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3320,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3324,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3326,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3329,1
    - Dst: napi_create_array
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3329,1
    - Dst: gf_filter_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3331,1
    - Dst: gf_filter_pid_enum_destinations
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3334,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3337,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3337,1
    - Dst: fs_wrap_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3337,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3341
      start: 3315
    functionDepth: 1
    functionLinenumber: 3315
    functionLinenumberEnd: 3341
    functionName: filter_opid_sinks
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_rt_udta
    - napi_create_array
    - napi_throw_error
    - gf_filter_get_opid
    - napi_set_element
    - NAPI_CALL
    - gf_filter_pid_enum_destinations
    - NARG_ARGS_THIS
    - fs_wrap_filter
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_opid_sinks(napi_env env, napi_callback_info info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3347,1
    - Dst: gf_props_get_id
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3353,1
    - Dst: gf_filter_get_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3355,1
    - Dst: gf_filter_get_info_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3357,1
    - Dst: prop_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3360,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3362,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3362,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3364,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3366
      start: 3343
    functionDepth: 3
    functionLinenumber: 3343
    functionLinenumberEnd: 3366
    functionName: filter_get_info
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - gf_props_get_id
    - napi_get_null
    - prop_to_napi
    - NAPI_CALL
    - gf_filter_get_info_str
    - gf_filter_get_info
    - gf_filter_release_property
    - NARG_ARGS_THIS
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_get_info(napi_env env, napi_callback_info info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: napi_create_array
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3375,1
    - Dst: gf_filter_enumerate_args
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3379,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3382,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3382,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3384,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3384,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3385,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3385,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3386,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3386,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3387,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3387,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3388,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3388,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3389,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3389,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3392,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3392,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3394,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3394,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3396,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3396,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3399,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3399,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3401,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3401,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3403,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3403,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3405,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3405,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3406,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3406,1
    - Dst: gf_filter_get_arg_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3409,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3410,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3410,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3411,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3411,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3415,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3415,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3419
      start: 3368
    functionDepth: 1
    functionLinenumber: 3368
    functionLinenumberEnd: 3419
    functionName: filter_all_args
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_set_named_property
    - gf_filter_get_arg_str
    - napi_get_null
    - napi_create_int32
    - napi_create_array
    - napi_set_element
    - NAPI_CALL
    - gf_filter_enumerate_args
    - napi_create_string_utf8
    - napi_create_object
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_all_args(napi_env env, napi_callback_info info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3426,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3429,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3431,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3434,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3437,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3440,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3442
      start: 3422
    functionDepth: 1
    functionLinenumber: 3422
    functionLinenumberEnd: 3442
    functionName: napi_filter_cbk_process
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_rt_udta
    - napi_make_callback
    - napi_get_reference_value
    - napi_has_named_property
    - napi_get_named_property
    - napi_get_value_int32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err napi_filter_cbk_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3448,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - env
    - finalize_data
    - finalize_hint
    argTypes:
    - napi_env
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3449
      start: 3444
    functionDepth: 0
    functionLinenumber: 3444
    functionLinenumberEnd: 3449
    functionName: filter_inputpid_finalize
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void filter_inputpid_finalize(napi_env env, void* finalize_data, void*
      finalize_hint)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3456,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3460,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3464,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3465,1
    - Dst: napi_type_tag_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3466,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3468,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3527,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - env
    - filter
    - pid
    - is_input
    argTypes:
    - napi_env
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3530
      start: 3451
    functionDepth: 1
    functionLinenumber: 3451
    functionLinenumberEnd: 3530
    functionName: wrap_filter_pid
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - napi_create_reference
    - napi_define_properties
    - napi_wrap
    - gf_filter_pid_set_udta
    - napi_type_tag_object
    - napi_create_object
    linkageType: ''
    returnType: NAPI_FilterPid
    signature: NAPI_FilterPid *wrap_filter_pid(napi_env env, GF_Filter *filter, GF_FilterPid
      *pid, Bool is_input)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3537,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3541,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3543,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3545,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3547,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3554,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3555,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3556,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3557,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3560,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3561,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3563,1
    - Dst: wrap_filter_pid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3568,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3573,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3574,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3575,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3576,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3580
      start: 3531
    functionDepth: 2
    functionLinenumber: 3531
    functionLinenumberEnd: 3580
    functionName: napi_filter_cbk_configure
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_reference_unref
    - napi_get_boolean
    - gf_filter_get_rt_udta
    - napi_has_named_property
    - napi_make_callback
    - napi_delete_reference
    - napi_get_reference_value
    - wrap_filter_pid
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - napi_get_named_property
    - napi_get_value_int32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err napi_filter_cbk_configure(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3587,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3591,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3593,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3596,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3598,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3604,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3605,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3606,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - filter
    - pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3609
      start: 3581
    functionDepth: 1
    functionLinenumber: 3581
    functionLinenumberEnd: 3609
    functionName: napi_filter_cbk_reconfigure_output
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_rt_udta
    - napi_has_named_property
    - napi_make_callback
    - napi_get_reference_value
    - gf_filter_pid_get_udta
    - napi_get_named_property
    - napi_get_value_int32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err napi_filter_cbk_reconfigure_output(GF_Filter *filter, GF_FilterPid
      *pid)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3615,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3618,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3620,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3623,1
    - Dst: wrap_filterevent
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3626,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3627,1
    - Dst: napi_get_value_bool
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3630,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3632
      start: 3611
    functionDepth: 1
    functionLinenumber: 3611
    functionLinenumberEnd: 3632
    functionName: napi_filter_cbk_process_event
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_rt_udta
    - napi_make_callback
    - napi_get_reference_value
    - napi_get_value_bool
    - napi_has_named_property
    - napi_get_named_property
    - wrap_filterevent
    linkageType: ''
    returnType: Bool
    signature: Bool napi_filter_cbk_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3648,1
    - Dst: napi_get_cb_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3648,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3653,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3653,1
    - Dst: gf_filter_block_enabled
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3653,1
    - Dst: gf_filter_get_output_buffer_max
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3658,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3659,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3659,1
    - Dst: gf_filter_get_output_buffer_max
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3664,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3665,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3665,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3669,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3669,1
    - Dst: gf_filter_all_sinks_done
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3669,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3673,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3673,1
    - Dst: gf_filter_get_num_events_queued
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3673,1
    - Dst: gf_filter_get_clock_hint
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3678,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3679,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3679,1
    - Dst: gf_filter_get_clock_hint
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3684,1
    - Dst: frac64_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3685,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3689,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3689,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3689,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 38
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3693
      start: 3643
    functionDepth: 2
    functionLinenumber: 3643
    functionLinenumberEnd: 3693
    functionName: filter_cust_getter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_clock_hint
    - gf_filter_connections_pending
    - napi_get_boolean
    - napi_get_cb_info
    - napi_create_int64
    - frac64_to_napi
    - NAPI_CALL
    - gf_filter_block_enabled
    - gf_filter_all_sinks_done
    - gf_filter_get_num_events_queued
    - gf_filter_get_output_buffer_max
    - napi_create_uint32
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_cust_getter(napi_env env, napi_callback_info info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3701,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3706,1
    - Dst: NARG_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3708,1
    - Dst: gf_props_get_id
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3710,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3712,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3715,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3716,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3717,1
    - Dst: gf_strdup
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3722,1
    - Dst: prop_from_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3724,1
    - Dst: gf_filter_push_caps
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3726,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3730,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3734,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3734,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3737
      start: 3695
    functionDepth: 2
    functionLinenumber: 3695
    functionLinenumberEnd: 3737
    functionName: filter_push_cap
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - NARG_STR
    - NARG_U32
    - gf_props_get_id
    - gf_strdup
    - prop_from_napi
    - napi_typeof
    - napi_throw_error
    - gf_filter_push_caps
    - gf_error_to_string
    - NARG_ARGS_THIS
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_push_cap(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3741,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3746,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3747,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3749
      start: 3739
    functionDepth: 1
    functionLinenumber: 3739
    functionLinenumberEnd: 3749
    functionName: filter_update_status
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - NARG_ARGS_THIS
    - NARG_U32
    - gf_filter_update_status
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_update_status(napi_env env, napi_callback_info info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3753,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3759,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3761,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3763
      start: 3751
    functionDepth: 1
    functionLinenumber: 3751
    functionLinenumberEnd: 3763
    functionName: filter_reschedule
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_ask_rt_reschedule
    - NARG_ARGS_THIS
    - gf_filter_post_process_task
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_reschedule(napi_env env, napi_callback_info info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3767,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3771,1
    - Dst: gf_filter_notification_failure
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3774,1
    - Dst: gf_filter_notification_failure
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3776,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3778,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3780
      start: 3765
    functionDepth: 1
    functionLinenumber: 3765
    functionLinenumberEnd: 3780
    functionName: filter_notify_failure
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_ARGS_THIS
    - NARG_U32
    - gf_filter_setup_failure
    - gf_filter_notification_failure
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_notify_failure(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3790
      start: 3783
    functionDepth: 0
    functionLinenumber: 3783
    functionLinenumberEnd: 3790
    functionName: filter_make_sticky
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_make_sticky(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3794,1
    - Dst: gf_filter_prevent_blocking
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3798,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3800
      start: 3792
    functionDepth: 1
    functionLinenumber: 3792
    functionLinenumberEnd: 3800
    functionName: filter_prevent_blocking
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - NARG_ARGS_THIS
    - gf_filter_prevent_blocking
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_prevent_blocking(napi_env env, napi_callback_info
      info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3803,1
    - Dst: gf_filter_block_eos
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3807,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3809
      start: 3801
    functionDepth: 1
    functionLinenumber: 3801
    functionLinenumberEnd: 3809
    functionName: filter_block_eos
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - NARG_ARGS_THIS
    - gf_filter_block_eos
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_block_eos(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3812,1
    - Dst: gf_filter_set_max_extra_input_pids
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3816,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3818
      start: 3810
    functionDepth: 1
    functionLinenumber: 3810
    functionLinenumberEnd: 3818
    functionName: filter_set_max_pids
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_ARGS_THIS
    - gf_filter_set_max_extra_input_pids
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_set_max_pids(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3822,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3826,1
    - Dst: frac64_from_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3826,1
    - Dst: gf_filter_hint_single_clock
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3828,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3830
      start: 3819
    functionDepth: 2
    functionLinenumber: 3819
    functionLinenumberEnd: 3830
    functionName: filter_hint_clock
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_hint_single_clock
    - NARG_ARGS_THIS
    - NAPI_CALL
    - frac64_from_napi
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_hint_clock(napi_env env, napi_callback_info info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_new
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3839,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3841,1
    - Dst: wrap_filter_pid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3845,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3847,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3850,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3852
      start: 3832
    functionDepth: 2
    functionLinenumber: 3832
    functionLinenumberEnd: 3852
    functionName: filter_new_pid
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_throw_error
    - gf_filter_pid_new
    - wrap_filter_pid
    - napi_get_reference_value
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_new_pid(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3861
      start: 3854
    functionDepth: 0
    functionLinenumber: 3854
    functionLinenumberEnd: 3861
    functionName: filter_print_connections
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: napi_value
    signature: napi_value filter_print_connections(napi_env env, napi_callback_info
      info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3886,1
    - Dst: napi_get_cb_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3886,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3890,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3890,1
    - Dst: gf_fs_is_last_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3890,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3894,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3894,1
    - Dst: gf_fs_get_filters_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3894,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3898,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3898,1
    - Dst: gf_fs_get_http_rate
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3898,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3902,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3902,1
    - Dst: gf_fs_get_http_max_rate
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3902,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3906
      start: 3881
    functionDepth: 1
    functionLinenumber: 3881
    functionLinenumberEnd: 3906
    functionName: fs_getter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_fs_get_filters_count
    - napi_get_boolean
    - gf_fs_is_last_task
    - napi_get_cb_info
    - gf_fs_get_http_rate
    - NAPI_CALL
    - gf_fs_get_http_max_rate
    - napi_create_uint32
    linkageType: ''
    returnType: napi_value
    signature: napi_value fs_getter(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS_MAGIC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3910,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3914,1
    - Dst: gf_fs_set_http_max_rate
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3915,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3919
      start: 3908
    functionDepth: 1
    functionLinenumber: 3908
    functionLinenumberEnd: 3919
    functionName: fs_setter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_ARGS_THIS_MAGIC
    - NARG_U32
    - gf_fs_set_http_max_rate
    linkageType: ''
    returnType: napi_value
    signature: napi_value fs_setter(napi_env env, napi_callback_info info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3927,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3930,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3930,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3930,1
    - Dst: gf_fs_post_user_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3931,1
    - Dst: gf_fs_run
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3934,1
    - Dst: gf_fs_get_last_connect_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3939,1
    - Dst: gf_fs_get_last_process_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3941,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3944,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3944,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3947,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3948,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3951,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3954,1
    - Dst: fs_wrap_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3956,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3957,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3962
      start: 3921
    functionDepth: 1
    functionLinenumber: 3921
    functionLinenumberEnd: 3962
    functionName: fs_run
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 7
    functionsReached:
    - gf_fs_get_rt_udta
    - gf_fs_post_user_task
    - gf_fs_get_last_process_error
    - gf_list_pop_front
    - napi_make_callback
    - gf_fs_run
    - gf_list_count
    - gf_fs_get_last_connect_error
    - napi_throw_error
    - gf_error_to_string
    - napi_has_named_property
    - napi_get_named_property
    - fs_wrap_filter
    linkageType: ''
    returnType: napi_value
    signature: napi_value fs_run(napi_env env, napi_callback_info info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3968,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3971,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3971,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4006,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4006,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4010,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4015,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4015,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4016,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4016,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4017,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4017,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4018,1
    - Dst: napi_type_tag_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4018,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4020,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4020,1
    - Dst: gf_filter_set_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4022,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 3
    argNames:
    - env
    - fs
    - filter
    argTypes:
    - napi_env
    - GF_FilterSession*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4024
      start: 3964
    functionDepth: 1
    functionLinenumber: 3964
    functionLinenumberEnd: 4024
    functionName: fs_wrap_filter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 3
    functionsReached:
    - gf_filter_set_rt_udta
    - napi_get_null
    - gf_filter_get_rt_udta
    - GF_SAFEALLOC
    - napi_create_reference
    - napi_get_reference_value
    - napi_define_properties
    - napi_wrap
    - NAPI_CALL
    - napi_type_tag_object
    - napi_create_object
    linkageType: ''
    returnType: napi_value
    signature: napi_value fs_wrap_filter(napi_env env, GF_FilterSession *fs, GF_Filter
      *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4030,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4035,1
    - Dst: NARG_STR_ALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4038,1
    - Dst: gf_fs_load_source
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4042,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4044,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4046,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4049,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4049,1
    - Dst: fs_wrap_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4051,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - env
    - info
    - is_source
    argTypes:
    - napi_env
    - napi_callback_info
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4052
      start: 4027
    functionDepth: 2
    functionLinenumber: 4027
    functionLinenumberEnd: 4052
    functionName: fs_load_src_dst
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fs_load_destination
    - napi_throw_error
    - gf_error_to_string
    - NARG_ARGS_THIS
    - gf_fs_load_source
    - NARG_STR_ALLOC
    - fs_wrap_filter
    linkageType: ''
    returnType: napi_value
    signature: napi_value fs_load_src_dst(napi_env env, napi_callback_info info, Bool
      is_source)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fs_load_src_dst
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4056,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4057
      start: 4054
    functionDepth: 3
    functionLinenumber: 4054
    functionLinenumberEnd: 4057
    functionName: fs_load_src
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - fs_load_src_dst
    linkageType: ''
    returnType: napi_value
    signature: napi_value fs_load_src(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fs_load_src_dst
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4060,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4061
      start: 4058
    functionDepth: 3
    functionLinenumber: 4058
    functionLinenumberEnd: 4061
    functionName: fs_load_dst
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - fs_load_src_dst
    linkageType: ''
    returnType: napi_value
    signature: napi_value fs_load_dst(napi_env env, napi_callback_info info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4066,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4070,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4073,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4073,1
    - Dst: fs_wrap_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4075,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4076
      start: 4063
    functionDepth: 2
    functionLinenumber: 4063
    functionLinenumberEnd: 4076
    functionName: fs_load_filter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 7
    functionsReached:
    - gf_fs_load_filter
    - napi_throw_error
    - gf_error_to_string
    - NARG_ARGS_THIS
    - fs_wrap_filter
    linkageType: ''
    returnType: napi_value
    signature: napi_value fs_load_filter(napi_env env, napi_callback_info info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4094,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4096,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4099,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4103,1
    - Dst: napi_get_value_bool
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4106,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4109,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4118,1
    - Dst: gf_fs_in_final_flush
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4121,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4126,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4127,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4128,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 38
    argCount: 3
    argNames:
    - fsess
    - callback
    - reschedule_ms
    argTypes:
    - GF_FilterSession*
    - void*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4131
      start: 4086
    functionDepth: 1
    functionLinenumber: 4086
    functionLinenumberEnd: 4131
    functionName: fs_task_exec
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - napi_reference_unref
    - napi_make_callback
    - napi_get_value_uint32
    - napi_get_reference_value
    - gf_fs_in_final_flush
    - napi_typeof
    - napi_get_value_bool
    - napi_throw_error
    - napi_get_named_property
    - napi_delete_reference
    linkageType: ''
    returnType: Bool
    signature: Bool fs_task_exec(GF_FilterSession *fsess, void *callback, u32 *reschedule_ms)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4136,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4140,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4140,1
    - Dst: napi_get_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4141,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4143,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4147,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4149,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4154,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4156,1
    - Dst: gf_fs_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4159,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4161,1
    - Dst: napi_get_global
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4161,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4162,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4162,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4164,1
    - Dst: gf_fs_post_user_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4166,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4169
      start: 4133
    functionDepth: 1
    functionLinenumber: 4133
    functionLinenumberEnd: 4169
    functionName: fs_post_task
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_fs_get_rt_udta
    - napi_get_global
    - GF_SAFEALLOC
    - gf_fs_post_user_task
    - napi_create_reference
    - napi_typeof
    - napi_throw_error
    - NAPI_CALL
    - napi_get_property
    - napi_create_string_utf8
    - NARG_ARGS_THIS
    linkageType: ''
    returnType: napi_value
    signature: napi_value fs_post_task(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4173,1
    - Dst: gf_fs_abort
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4178
      start: 4171
    functionDepth: 1
    functionLinenumber: 4171
    functionLinenumberEnd: 4178
    functionName: fs_abort
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 8
    functionsReached:
    - NARG_ARGS_THIS
    - gf_fs_abort
    linkageType: ''
    returnType: napi_value
    signature: napi_value fs_abort(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4182,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4187
      start: 4180
    functionDepth: 1
    functionLinenumber: 4180
    functionLinenumberEnd: 4187
    functionName: fs_lock
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_ARGS_THIS
    - gf_fs_lock_filters
    linkageType: ''
    returnType: napi_value
    signature: napi_value fs_lock(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4190,1
    - Dst: gf_fs_enable_reporting
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4195
      start: 4188
    functionDepth: 1
    functionLinenumber: 4188
    functionLinenumberEnd: 4195
    functionName: fs_reporting
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_ARGS_THIS
    - gf_fs_enable_reporting
    linkageType: ''
    returnType: napi_value
    signature: napi_value fs_reporting(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4203
      start: 4197
    functionDepth: 0
    functionLinenumber: 4197
    functionLinenumberEnd: 4203
    functionName: fs_print_stats
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: napi_value
    signature: napi_value fs_print_stats(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4211
      start: 4205
    functionDepth: 0
    functionLinenumber: 4205
    functionLinenumberEnd: 4211
    functionName: fs_print_graph
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: napi_value
    signature: napi_value fs_print_graph(napi_env env, napi_callback_info info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4214,1
    - Dst: gf_fs_get_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4218,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4220,1
    - Dst: fs_wrap_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4223,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4224
      start: 4212
    functionDepth: 2
    functionLinenumber: 4212
    functionLinenumberEnd: 4224
    functionName: fs_get_filter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 2
    functionsReached:
    - napi_throw_error
    - NARG_ARGS_THIS
    - fs_wrap_filter
    - gf_fs_get_filter
    linkageType: ''
    returnType: napi_value
    signature: napi_value fs_get_filter(napi_env env, napi_callback_info info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4232,1
    - Dst: napi_check_object_type_tag
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4236,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4238,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4241,1
    - Dst: napi_unwrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4241,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4244,1
    - Dst: napi_check_object_type_tag
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4244,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4246,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4249,1
    - Dst: napi_unwrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4249,1
    - Dst: NARG_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4252,1
    - Dst: gf_fs_fire_event
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4254,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4255,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4255,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4257
      start: 4226
    functionDepth: 1
    functionLinenumber: 4226
    functionLinenumberEnd: 4257
    functionName: fs_fire_event
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - napi_unwrap
    - napi_check_object_type_tag
    - napi_get_boolean
    - gf_fs_fire_event
    - napi_throw_error
    - NAPI_CALL
    - NARG_BOOL
    - NARG_ARGS_THIS
    linkageType: ''
    returnType: napi_value
    signature: napi_value fs_fire_event(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4263,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4267,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4267,1
    - Dst: gf_fs_is_supported_mime
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4269
      start: 4260
    functionDepth: 1
    functionLinenumber: 4260
    functionLinenumberEnd: 4269
    functionName: fs_is_supported_mime
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - NARG_ARGS_THIS
    - NAPI_CALL
    - napi_get_boolean
    - gf_fs_is_supported_mime
    linkageType: ''
    returnType: napi_value
    signature: napi_value fs_is_supported_mime(napi_env env, napi_callback_info info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4275,1
    - Dst: NARG_STR_ALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4279,1
    - Dst: gf_fs_is_supported_source
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4280,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4281,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4283,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4283,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4285
      start: 4271
    functionDepth: 1
    functionLinenumber: 4271
    functionLinenumberEnd: 4285
    functionName: fs_is_supported_source
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - gf_free
    - napi_get_boolean
    - NAPI_CALL
    - NARG_ARGS_THIS
    - NARG_STR_ALLOC
    - gf_fs_is_supported_source
    linkageType: ''
    returnType: napi_value
    signature: napi_value fs_is_supported_source(napi_env env, napi_callback_info
      info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4293,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4296,1
    - Dst: gf_fs_new_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4298,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4300,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4300,1
    - Dst: fs_wrap_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4304,1
    - Dst: gf_filter_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4305,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4334,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4334,1
    - Dst: gf_filter_set_configure_ckb
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4337,1
    - Dst: gf_filter_set_process_ckb
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4338,1
    - Dst: gf_filter_set_process_event_ckb
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4339,1
    - Dst: gf_filter_set_reconfigure_output_ckb
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4340,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4343,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4343,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4347,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4347,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4348,1
    - Dst: napi_async_init
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4348,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4350
      start: 4288
    functionDepth: 2
    functionLinenumber: 4288
    functionLinenumberEnd: 4350
    functionName: fs_new_filter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 2
    functionsReached:
    - NARG_U32
    - napi_async_init
    - gf_filter_get_rt_udta
    - gf_filter_set_process_event_ckb
    - gf_filter_set_configure_ckb
    - fs_wrap_filter
    - napi_define_properties
    - napi_throw_error
    - gf_filter_set_process_ckb
    - NAPI_CALL
    - gf_filter_set_reconfigure_output_ckb
    - gf_error_to_string
    - napi_create_string_utf8
    - NARG_ARGS_THIS
    - gf_fs_new_filter
    linkageType: ''
    returnType: napi_value
    signature: napi_value fs_new_filter(napi_env env, napi_callback_info info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4357,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4361,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4362,1
    - Dst: napi_async_destroy
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4363,1
    - Dst: gf_fs_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4368,1
    - Dst: gf_list_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4371,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4372,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - env
    - finalize_data
    - finalize_hint
    argTypes:
    - napi_env
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4374
      start: 4354
    functionDepth: 1
    functionLinenumber: 4354
    functionLinenumberEnd: 4374
    functionName: del_fs
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_fs_get_rt_udta
    - napi_reference_unref
    - gf_free
    - gf_fs_del
    - napi_delete_reference
    - gf_list_del
    - napi_async_destroy
    linkageType: ''
    returnType: void
    signature: void del_fs(napi_env env, void* finalize_data, void* finalize_hint)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4381,1
    - Dst: napi_get_instance_data
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4388,1
    - Dst: gf_th_id
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4392,1
    - Dst: gf_list_new
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4393,1
    - Dst: gf_list_add
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4394,1
    - Dst: gf_list_del_item
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4399,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4401,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4405,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4407,1
    - Dst: fs_wrap_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4409,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4410,1
    - Dst: gf_filter_set_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4418,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4419,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4420,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4424,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4425,1
    - Dst: dashin_detach_binding
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4426,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4428,1
    - Dst: httpout_detach_binding
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4429,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4431,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4432,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4437,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4439,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4440,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4443,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4444,1
    - Dst: gf_list_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4447,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4449,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4453,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 51
    argCount: 3
    argNames:
    - udta
    - filter
    - is_destroy
    argTypes:
    - void*
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4455
      start: 4376
    functionDepth: 2
    functionLinenumber: 4376
    functionLinenumberEnd: 4455
    functionName: fs_on_filter_creation
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_get_rt_udta
    - gf_list_count
    - gf_filter_get_name
    - gf_list_new
    - gf_list_pop_back
    - gf_list_add
    - napi_delete_reference
    - dashin_detach_binding
    - fs_wrap_filter
    - gf_list_del_item
    - gf_list_del
    - gf_filter_set_rt_udta
    - napi_reference_unref
    - httpout_detach_binding
    - gf_th_id
    - gf_filter_pid_get_udta
    - gf_filter_get_opid_count
    - napi_make_callback
    - napi_get_reference_value
    - napi_get_instance_data
    - gf_filter_get_opid
    - strcmp
    - napi_has_named_property
    - napi_get_named_property
    linkageType: ''
    returnType: void
    signature: void fs_on_filter_creation(void *udta, GF_Filter *filter, Bool is_destroy)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: napi_get_instance_data
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4467,1
    - Dst: gf_th_id
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4470,1
    - Dst: GF_LOG
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4472,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4472,1
    - Dst: GF_LOG
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4474,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4480,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4482,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4484,1
    - Dst: wrap_filterevent
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4490,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4493,1
    - Dst: napi_get_value_bool
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4496,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 2
    argNames:
    - udta
    - event
    argTypes:
    - void*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4498
      start: 4457
    functionDepth: 1
    functionLinenumber: 4457
    functionLinenumberEnd: 4498
    functionName: napi_gpac_event_proc
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_th_id
    - GF_LOG
    - napi_make_callback
    - napi_get_reference_value
    - gf_dom_event_get_name
    - napi_get_instance_data
    - napi_get_value_bool
    - napi_has_named_property
    - napi_get_named_property
    - wrap_filterevent
    linkageType: ''
    returnType: Bool
    signature: Bool napi_gpac_event_proc(void *udta, GF_Event *event)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4504,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4506,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4511,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4513,1
    - Dst: gf_fs_new_defaults
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4517,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4519,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4520,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4523,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4523,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4525,1
    - Dst: napi_type_tag_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4525,1
    - Dst: gf_fs_set_filter_creation_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4530,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4532,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4532,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4534,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4534,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4535,1
    - Dst: napi_async_init
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4535,1
    - Dst: gf_fs_set_ui_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4538,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4544
      start: 4500
    functionDepth: 1
    functionLinenumber: 4500
    functionLinenumberEnd: 4544
    functionName: new_fs
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fs_set_ui_callback
    - NARG_U32
    - napi_async_init
    - GF_SAFEALLOC
    - napi_create_reference
    - napi_throw_error
    - napi_wrap
    - NAPI_CALL
    - napi_create_string_utf8
    - gf_fs_set_filter_creation_callback
    - NARG_ARGS_THIS
    - gf_fs_new_defaults
    - napi_type_tag_object
    linkageType: ''
    returnType: napi_value
    signature: napi_value new_fs(napi_env env, napi_callback_info info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: napi_define_class
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4574,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4577,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - env
    - exports
    - inst
    argTypes:
    - napi_env
    - napi_value
    - GPAC_NAPI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4581
      start: 4546
    functionDepth: 0
    functionLinenumber: 4546
    functionLinenumberEnd: 4581
    functionName: init_fs_class
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_set_named_property
    - napi_define_class
    linkageType: ''
    returnType: napi_status
    signature: napi_status init_fs_class(napi_env env, napi_value exports, GPAC_NAPI
      *inst)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4749,1
    - Dst: napi_get_cb_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4749,1
    - Dst: EVT_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4799,1
    - Dst: EVT_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4800,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4800,1
    - Dst: EVT_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4802,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4802,1
    - Dst: EVT_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4810,1
    - Dst: gf_dom_get_key_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4810,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4814,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4817,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4819,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4819,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4834
      start: 4744
    functionDepth: 1
    functionLinenumber: 4744
    functionLinenumberEnd: 4834
    functionName: fevt_getter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_get_null
    - EVT_STR
    - EVT_U32
    - napi_get_cb_info
    - gf_filter_event_name
    - napi_get_reference_value
    - gf_dom_event_get_name
    - gf_dom_get_key_name
    - NAPI_CALL
    - gf_filter_pid_get_udta
    linkageType: ''
    returnType: napi_value
    signature: napi_value fevt_getter(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _magic_val
    - ','
    - _field
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4757
      start: 4752
    functionDepth: 0
    functionLinenumber: 4752
    functionLinenumberEnd: 4757
    functionName: EVT_DBL
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EVT_DBL(_magic_val, _field)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _magic_val
    - ','
    - _field
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4763
      start: 4758
    functionDepth: 0
    functionLinenumber: 4758
    functionLinenumberEnd: 4763
    functionName: EVT_FIX
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EVT_FIX(_magic_val, _field)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _magic_val
    - ','
    - _field
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4769
      start: 4764
    functionDepth: 0
    functionLinenumber: 4764
    functionLinenumberEnd: 4769
    functionName: EVT_U32
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EVT_U32(_magic_val, _field)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _magic_val
    - ','
    - _field
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4775
      start: 4770
    functionDepth: 0
    functionLinenumber: 4770
    functionLinenumberEnd: 4775
    functionName: EVT_S32
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EVT_S32(_magic_val, _field)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _magic_val
    - ','
    - _field
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4785
      start: 4776
    functionDepth: 0
    functionLinenumber: 4776
    functionLinenumberEnd: 4785
    functionName: EVT_STR
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EVT_STR(_magic_val, _field)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _magic_val
    - ','
    - _field
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4791
      start: 4786
    functionDepth: 0
    functionLinenumber: 4786
    functionLinenumberEnd: 4791
    functionName: EVT_U64
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EVT_U64(_magic_val, _field)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _magic_val
    - ','
    - _field
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4797
      start: 4792
    functionDepth: 0
    functionLinenumber: 4792
    functionLinenumberEnd: 4797
    functionName: EVT_BOOL
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EVT_BOOL(_magic_val, _field)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS_MAGIC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4838,1
    - Dst: NARG_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4896,1
    - Dst: gf_dom_get_key_type
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4897,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4902
      start: 4836
    functionDepth: 1
    functionLinenumber: 4836
    functionLinenumberEnd: 4902
    functionName: fevt_setter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_ARGS_THIS_MAGIC
    - NARG_STR
    - gf_dom_get_key_type
    linkageType: ''
    returnType: napi_value
    signature: napi_value fevt_setter(napi_env env, napi_callback_info info)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _magic_val
    - ','
    - _field
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4847
      start: 4841
    functionDepth: 0
    functionLinenumber: 4841
    functionLinenumberEnd: 4847
    functionName: EVT_U32
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EVT_U32(_magic_val, _field)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _magic_val
    - ','
    - _field
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4854
      start: 4848
    functionDepth: 0
    functionLinenumber: 4848
    functionLinenumberEnd: 4854
    functionName: EVT_S32
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EVT_S32(_magic_val, _field)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _magic_val
    - ','
    - _field
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4861
      start: 4855
    functionDepth: 0
    functionLinenumber: 4855
    functionLinenumberEnd: 4861
    functionName: EVT_U64
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EVT_U64(_magic_val, _field)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _magic_val
    - ','
    - _field
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4868
      start: 4862
    functionDepth: 0
    functionLinenumber: 4862
    functionLinenumberEnd: 4868
    functionName: EVT_BOOL
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EVT_BOOL(_magic_val, _field)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _magic_val
    - ','
    - _field
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4875
      start: 4869
    functionDepth: 0
    functionLinenumber: 4869
    functionLinenumberEnd: 4875
    functionName: EVT_DBL
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EVT_DBL(_magic_val, _field)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _magic_val
    - ','
    - _field
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4882
      start: 4876
    functionDepth: 0
    functionLinenumber: 4876
    functionLinenumberEnd: 4882
    functionName: EVT_FIX
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EVT_FIX(_magic_val, _field)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _magic_val
    - ','
    - _field
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4889
      start: 4883
    functionDepth: 0
    functionLinenumber: 4883
    functionLinenumberEnd: 4889
    functionName: EVT_STR
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EVT_STR(_magic_val, _field)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4908,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - env
    - finalize_data
    - finalize_hint
    argTypes:
    - napi_env
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4909
      start: 4905
    functionDepth: 0
    functionLinenumber: 4905
    functionLinenumberEnd: 4909
    functionName: del_evt
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void del_evt(napi_env env, void* finalize_data, void* finalize_hint)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4918,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4918,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4927,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4927,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4950,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4950,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4956,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4956,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4962,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4962,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4970,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4970,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4980,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4980,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4992,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4992,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5002,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5002,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5012,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5012,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5021,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5021,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5032,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5032,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5049,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5049,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5061,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5061,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5078,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5078,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5087,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5087,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5096,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5096,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5109,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5109,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5117,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5117,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5129,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5129,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5135,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5135,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5141,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5141,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5145,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5145,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5146,1
    - Dst: napi_type_tag_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5146,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 91
    argCount: 3
    argNames:
    - env
    - evt
    - for_val
    argTypes:
    - napi_env
    - GF_FilterEvent*
    - napi_value*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5149
      start: 4911
    functionDepth: 1
    functionLinenumber: 4911
    functionLinenumberEnd: 5149
    functionName: wrap_filterevent
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 2
    functionsReached:
    - napi_define_properties
    - napi_wrap
    - NAPI_CALL
    - napi_type_tag_object
    - napi_create_object
    linkageType: ''
    returnType: napi_value
    signature: napi_value wrap_filterevent(napi_env env, GF_FilterEvent *evt, napi_value
      *for_val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5153,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5154,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5161,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5165,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5167,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5170,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5170,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5173,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5173,1
    - Dst: wrap_filterevent
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5177,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5178
      start: 5150
    functionDepth: 2
    functionLinenumber: 5150
    functionLinenumberEnd: 5178
    functionName: new_fevt
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_U32
    - GF_SAFEALLOC
    - napi_get_value_uint32
    - napi_throw_error
    - NAPI_CALL
    - NARG_ARGS_THIS
    - wrap_filterevent
    linkageType: ''
    returnType: napi_value
    signature: napi_value new_fevt(napi_env env, napi_callback_info info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: napi_define_class
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5185,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5187,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - env
    - exports
    - inst
    argTypes:
    - napi_env
    - napi_value
    - GPAC_NAPI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5188
      start: 5181
    functionDepth: 0
    functionLinenumber: 5181
    functionLinenumberEnd: 5188
    functionName: init_fevt_class
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_set_named_property
    - napi_define_class
    linkageType: ''
    returnType: napi_status
    signature: napi_status init_fevt_class(napi_env env, napi_value exports, GPAC_NAPI
      *inst)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: napi_get_instance_data
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5210,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5211,1
    - Dst: GF_LOG
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5215,1
    - Dst: gf_list_new
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5218,1
    - Dst: gf_list_add
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5219,1
    - Dst: gf_fs_post_user_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5223,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - udta
    - new_client
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5226
      start: 5200
    functionDepth: 1
    functionLinenumber: 5200
    functionLinenumberEnd: 5226
    functionName: gpac_rmt_on_new_client
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_fs_post_user_task
    - GF_LOG
    - napi_get_instance_data
    - napi_throw_error
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void gpac_rmt_on_new_client(void *udta, void* new_client)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5239,1
    - Dst: gf_sys_get_rmtws
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5242,1
    - Dst: gf_sys_get_userws
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5243,1
    - Dst: napi_async_destroy
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5251,1
    - Dst: gf_rmt_get_on_new_client_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5254,1
    - Dst: napi_rmt_task_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5255,1
    - Dst: gf_rmt_set_on_new_client_cbk
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5257,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5264,1
    - Dst: napi_get_global
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5264,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5265,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5265,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5266,1
    - Dst: napi_async_init
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5266,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5270,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5273,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5274,1
    - Dst: GF_LOG
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5276,1
    - Dst: gf_rmt_set_on_new_client_cbk
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5277,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5284
      start: 5229
    functionDepth: 1
    functionLinenumber: 5229
    functionLinenumberEnd: 5284
    functionName: nodegpac_setter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_get_global
    - napi_rmt_task_del
    - gf_rmt_get_on_new_client_task
    - napi_async_init
    - GF_SAFEALLOC
    - napi_create_reference
    - GF_LOG
    - gf_sys_get_rmtws
    - napi_typeof
    - NAPI_CALL
    - gf_sys_get_userws
    - napi_create_string_utf8
    - gf_rmt_set_on_new_client_cbk
    - napi_async_destroy
    linkageType: ''
    returnType: napi_value
    signature: napi_value nodegpac_setter(napi_env env, napi_callback_info info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5293,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5295,1
    - Dst: memset
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5298,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5299,1
    - Dst: napi_set_instance_data
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5299,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5301,1
    - Dst: InitConstants
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5301,1
    - Dst: DEF_FUN
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5309,1
    - Dst: DEF_FUN
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5310,1
    - Dst: DEF_FUN
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5311,1
    - Dst: DEF_FUN
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5312,1
    - Dst: DEF_FUN
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5313,1
    - Dst: DEF_FUN
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5314,1
    - Dst: DEF_FUN
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5315,1
    - Dst: DEF_FUN
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5317,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5321,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5321,1
    - Dst: DEF_FUN
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5323,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5327,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5327,1
    - Dst: init_fs_class
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5329,1
    - Dst: init_fevt_class
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5332,1
    - Dst: init_fio_class
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5335,1
    - Dst: gf_th_id
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5339,1
    - Dst: gf_sys_init
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5342,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 32
    argCount: 2
    argNames:
    - env
    - exports
    argTypes:
    - napi_env
    - napi_value
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5344
      start: 5286
    functionDepth: 1
    functionLinenumber: 5286
    functionLinenumberEnd: 5344
    functionName: Init
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - InitConstants
    - gf_th_id
    - init_fio_class
    - malloc
    - napi_set_instance_data
    - napi_define_properties
    - napi_throw_error
    - memset
    - gf_sys_init
    - NAPI_CALL
    - DEF_FUN
    - init_fevt_class
    - init_fs_class
    linkageType: ''
    returnType: napi_value
    signature: napi_value Init(napi_env env, napi_value exports)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _fun
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5307
      start: 5303
    functionDepth: 0
    functionLinenumber: 5303
    functionLinenumberEnd: 5307
    functionName: DEF_FUN
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEF_FUN(_name, _fun)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DEF_CONST_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5377,1
    - Dst: gf_gpac_version
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5377,1
    - Dst: DEF_CONST_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5378,1
    - Dst: gf_gpac_copyright
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5378,1
    - Dst: DEF_CONST_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5379,1
    - Dst: gf_gpac_copyright_cite
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5379,1
    - Dst: DEF_CONST_INT
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5381,1
    - Dst: gf_gpac_abi_major
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5381,1
    - Dst: DEF_CONST_INT
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5382,1
    - Dst: gf_gpac_abi_minor
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5382,1
    - Dst: DEF_CONST_INT
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5383,1
    - Dst: gf_gpac_abi_micro
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5383,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5385,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5386,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5387,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5388,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5390,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5391,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5392,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5393,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5394,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5395,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5396,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5397,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5398,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5399,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5400,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5401,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5402,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5403,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5404,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5405,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5406,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5407,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5408,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5409,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5410,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5411,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5412,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5413,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5414,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5415,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5416,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5418,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5419,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5420,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5421,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5422,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5423,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5424,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5425,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5427,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5428,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5429,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5430,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5431,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5432,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5433,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5434,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5435,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5436,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5437,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5438,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5439,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5440,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5441,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5442,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5443,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5445,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5446,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5447,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5448,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5449,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5450,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5451,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5453,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5454,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5455,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5457,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5458,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5459,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5460,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5461,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5462,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5464,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5465,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5466,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5467,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5468,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5469,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5470,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5471,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5472,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5473,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5474,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5475,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5476,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5477,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5478,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5479,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5480,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5481,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5482,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5483,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5484,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5485,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5486,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5487,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5488,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5489,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5490,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5491,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5492,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5493,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5494,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5495,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5496,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5497,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5498,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5499,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5500,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5501,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5502,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5505,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5506,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5508,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5509,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5510,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5511,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5512,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5513,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5514,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5515,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5516,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5517,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5518,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5519,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5520,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5521,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5522,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5523,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5524,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5525,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5526,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5527,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5528,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5529,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5530,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5531,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5532,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5534,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5535,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5536,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5537,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5538,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5539,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5541,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5542,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5543,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5545,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5546,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5547,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5548,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5549,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5551,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5552,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5553,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5554,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5555,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5556,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5557,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5558,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5559,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5560,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5561,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5562,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5563,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5564,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5566,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5567,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5568,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5569,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5570,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5571,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5572,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5573,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5575,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5576,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5577,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5578,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5579,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5580,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5581,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5582,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5583,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5584,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5585,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5586,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5587,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5588,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5589,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5590,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5591,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5592,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5593,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5594,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5595,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5597,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5598,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5599,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5601,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5602,1
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5603,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 209
    argCount: 2
    argNames:
    - env
    - exports
    argTypes:
    - napi_env
    - napi_value
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5606
      start: 5349
    functionDepth: 1
    functionLinenumber: 5349
    functionLinenumberEnd: 5606
    functionName: InitConstants
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - gf_gpac_abi_micro
    - gf_gpac_copyright
    - gf_gpac_copyright_cite
    - DEF_CONST
    - gf_gpac_abi_major
    - DEF_CONST_INT
    - gf_gpac_version
    - gf_gpac_abi_minor
    - DEF_CONST_STR
    linkageType: ''
    returnType: napi_status
    signature: napi_status InitConstants(napi_env env, napi_value exports)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _fun
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5361
      start: 5354
    functionDepth: 0
    functionLinenumber: 5354
    functionLinenumberEnd: 5361
    functionName: DEF_CONST_STR
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEF_CONST_STR(_name, _fun)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _fun
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5368
      start: 5361
    functionDepth: 0
    functionLinenumber: 5361
    functionLinenumberEnd: 5368
    functionName: DEF_CONST_INT
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEF_CONST_INT(_name, _fun)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _const
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5375
      start: 5368
    functionDepth: 0
    functionLinenumber: 5368
    functionLinenumberEnd: 5375
    functionName: DEF_CONST
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEF_CONST(_const)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5614,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5615,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5618,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5619,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 3
    argNames:
    - env
    - finalize_data
    - finalize_hint
    argTypes:
    - napi_env
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5623
      start: 5609
    functionDepth: 0
    functionLinenumber: 5609
    functionLinenumberEnd: 5623
    functionName: dashbind_finalize
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_reference_unref
    - napi_delete_reference
    linkageType: ''
    returnType: void
    signature: void dashbind_finalize(napi_env env, void* finalize_data, void* finalize_hint)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5631,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5633,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5635,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5642,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5643,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - udta
    - type
    argTypes:
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5644
      start: 5625
    functionDepth: 0
    functionLinenumber: 5625
    functionLinenumberEnd: 5644
    functionName: dashbind_period_reset
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_call_function
    - napi_get_reference_value
    - napi_has_named_property
    - napi_get_named_property
    - napi_create_uint32
    linkageType: ''
    returnType: void
    signature: void dashbind_period_reset(void *udta, u32 type)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5655,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5657,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5658,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5661,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5662,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5665,1
    - Dst: gf_dash_get_period_duration
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5665,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5666,1
    - Dst: napi_create_array
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5669,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5670,1
    - Dst: gf_dash_group_get_num_qualities
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5673,1
    - Dst: gf_dash_group_get_quality_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5677,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5679,1
    - Dst: QSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5707,1
    - Dst: QSET_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5708,1
    - Dst: QSET_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5709,1
    - Dst: QSET_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5710,1
    - Dst: QSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5711,1
    - Dst: QSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5712,1
    - Dst: QSET_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5713,1
    - Dst: frac_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5717,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5718,1
    - Dst: frac_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5723,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5724,1
    - Dst: QSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5726,1
    - Dst: QSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5727,1
    - Dst: QSET_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5728,1
    - Dst: QSET_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5729,1
    - Dst: QSET_DOUBLE
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5730,1
    - Dst: QSET_DOUBLE
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5731,1
    - Dst: QSET_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5732,1
    - Dst: QSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5733,1
    - Dst: napi_create_array
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5736,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5737,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5742,1
    - Dst: gf_list_get
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5745,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5747,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5748,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5750,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5751,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5754,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5755,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5758,1
    - Dst: gf_dash_group_get_srd_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5764,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5766,1
    - Dst: SRD_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5773,1
    - Dst: SRD_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5774,1
    - Dst: SRD_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5775,1
    - Dst: SRD_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5776,1
    - Dst: SRD_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5777,1
    - Dst: SRD_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5778,1
    - Dst: SRD_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5779,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5782,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5784,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5786,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5788,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5790,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5795,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 81
    argCount: 3
    argNames:
    - udta
    - group_idx
    - _dash
    argTypes:
    - void*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5797
      start: 5646
    functionDepth: 2
    functionLinenumber: 5646
    functionLinenumberEnd: 5797
    functionName: dashbind_new_group
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - QSET_BOOL
    - gf_dash_get_period_duration
    - gf_list_count
    - QSET_DOUBLE
    - napi_call_function
    - gf_dash_group_get_quality_info
    - gf_dash_group_get_num_qualities
    - gf_list_get
    - napi_get_null
    - QSET_U32
    - napi_define_properties
    - napi_set_element
    - QSET_STR
    - napi_create_array
    - frac_to_napi
    - SRD_U32
    - napi_create_int64
    - napi_create_uint32
    - napi_create_object
    - napi_get_reference_value
    - gf_dash_group_get_srd_info
    - napi_has_named_property
    - napi_get_named_property
    linkageType: ''
    returnType: void
    signature: void dashbind_new_group(void *udta, u32 group_idx, void *_dash)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5686
      start: 5682
    functionDepth: 0
    functionLinenumber: 5682
    functionLinenumberEnd: 5686
    functionName: QSET_U32
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QSET_U32(_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5691
      start: 5687
    functionDepth: 0
    functionLinenumber: 5687
    functionLinenumberEnd: 5691
    functionName: QSET_BOOL
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QSET_BOOL(_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5700
      start: 5692
    functionDepth: 0
    functionLinenumber: 5692
    functionLinenumberEnd: 5700
    functionName: QSET_STR
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QSET_STR(_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5705
      start: 5701
    functionDepth: 0
    functionLinenumber: 5701
    functionLinenumberEnd: 5705
    functionName: QSET_DOUBLE
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QSET_DOUBLE(_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5773
      start: 5769
    functionDepth: 0
    functionLinenumber: 5769
    functionLinenumberEnd: 5773
    functionName: SRD_U32
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SRD_U32(_val)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5807,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5809,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5811,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5818,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5819,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5820,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5823,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5824,1
    - Dst: napi_get_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5828,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5829,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5830,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5834,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5836,1
    - Dst: SSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5848,1
    - Dst: SSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5849,1
    - Dst: SSET_DOUBLE
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5850,1
    - Dst: SSET_DOUBLE
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5851,1
    - Dst: SSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5852,1
    - Dst: SSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5853,1
    - Dst: SSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5854,1
    - Dst: SSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5855,1
    - Dst: SSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5856,1
    - Dst: SSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5857,1
    - Dst: SSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5858,1
    - Dst: SSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5859,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5860,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5863,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 42
    argCount: 5
    argNames:
    - udta
    - group_idx
    - base_group_idx
    - force_low_complex
    - _stats
    argTypes:
    - void*
    - u32
    - u32
    - Bool
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5865
      start: 5799
    functionDepth: 1
    functionLinenumber: 5799
    functionLinenumberEnd: 5865
    functionName: dashbind_rate_adaptation
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - SSET_DOUBLE
    - napi_get_null
    - napi_get_boolean
    - SSET_U32
    - napi_call_function
    - napi_get_value_uint32
    - napi_get_reference_value
    - napi_get_element
    - napi_has_named_property
    - napi_get_named_property
    - napi_get_value_int32
    - napi_create_object
    linkageType: ''
    returnType: s32
    signature: s32 dashbind_rate_adaptation(void *udta, u32 group_idx, u32 base_group_idx,
      Bool force_low_complex, void *_stats)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5844
      start: 5840
    functionDepth: 0
    functionLinenumber: 5840
    functionLinenumberEnd: 5844
    functionName: SSET_U32
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SSET_U32(_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5848
      start: 5844
    functionDepth: 0
    functionLinenumber: 5844
    functionLinenumberEnd: 5848
    functionName: SSET_DOUBLE
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SSET_DOUBLE(_val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5885,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5887,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5889,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5896,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5897,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5898,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5901,1
    - Dst: napi_get_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5905,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5906,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5907,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5913,1
    - Dst: DSSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5924,1
    - Dst: DSSET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5925,1
    - Dst: DSSET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5926,1
    - Dst: DSSET_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5927,1
    - Dst: DSSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5928,1
    - Dst: DSSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5929,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5931,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5934,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 34
    argCount: 3
    argNames:
    - udta
    - group_idx
    - _stats
    argTypes:
    - void*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5936
      start: 5877
    functionDepth: 1
    functionLinenumber: 5877
    functionLinenumberEnd: 5936
    functionName: dashbind_download_monitor
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - DSSET_U64
    - napi_get_null
    - napi_call_function
    - DSSET_U32
    - napi_get_value_uint32
    - napi_get_reference_value
    - napi_get_element
    - napi_has_named_property
    - napi_get_named_property
    - napi_get_value_int32
    - napi_create_object
    linkageType: ''
    returnType: s32
    signature: s32 dashbind_download_monitor(void *udta, u32 group_idx, void *_stats)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5920
      start: 5916
    functionDepth: 0
    functionLinenumber: 5916
    functionLinenumberEnd: 5920
    functionName: DSSET_U32
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DSSET_U32(_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5924
      start: 5920
    functionDepth: 0
    functionLinenumber: 5920
    functionLinenumberEnd: 5924
    functionName: DSSET_U64
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DSSET_U64(_val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5951,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5956,1
    - Dst: gf_filter_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5961,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5962,1
    - Dst: napi_create_array
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5967,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5968,1
    - Dst: napi_type_tag_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5970,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5971,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5971,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5974,1
    - Dst: gf_filter_bind_dash_algo_callbacks
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5975,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5978,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5979,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5982,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5984,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5984,1
    - Dst: gf_filter_force_main_thread
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5988,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 27
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5990
      start: 5945
    functionDepth: 1
    functionLinenumber: 5945
    functionLinenumberEnd: 5990
    functionName: dashin_bind
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_filter_bind_dash_algo_callbacks
    - napi_reference_unref
    - gf_filter_get_rt_udta
    - napi_create_reference
    - napi_create_array
    - gf_filter_force_main_thread
    - napi_throw_error
    - napi_wrap
    - NAPI_CALL
    - gf_error_to_string
    - napi_has_named_property
    - NARG_ARGS_THIS
    - napi_type_tag_object
    - napi_delete_reference
    linkageType: ''
    returnType: napi_value
    signature: napi_value dashin_bind(napi_env env, napi_callback_info info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5996,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - napi_f
    argTypes:
    - NAPI_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5997
      start: 5992
    functionDepth: 0
    functionLinenumber: 5992
    functionLinenumberEnd: 5997
    functionName: dashin_detach_binding
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void dashin_detach_binding(NAPI_Filter *napi_f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - env
    - finalize_data
    - finalize_hint
    argTypes:
    - napi_env
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6007
      start: 6005
    functionDepth: 0
    functionLinenumber: 6005
    functionLinenumberEnd: 6007
    functionName: httpoutbind_finalize
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void httpoutbind_finalize(napi_env env, void* finalize_data, void*
      finalize_hint)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6019,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - env
    - finalize_data
    - finalize_hint
    argTypes:
    - napi_env
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6020
      start: 6016
    functionDepth: 0
    functionLinenumber: 6016
    functionLinenumberEnd: 6020
    functionName: napi_http_del
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void napi_http_del(napi_env env, void *finalize_data, void* finalize_hint)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6031,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6032,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6033,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6034,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6035,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6036,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 3
    argNames:
    - udta
    - done
    - total
    argTypes:
    - void*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6039
      start: 6023
    functionDepth: 0
    functionLinenumber: 6023
    functionLinenumberEnd: 6039
    functionName: httpout_throttle_cbk
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_get_value_uint32
    - napi_get_reference_value
    - napi_call_function
    - napi_get_named_property
    - napi_create_int64
    linkageType: ''
    returnType: u32
    signature: u32 httpout_throttle_cbk(void *udta, u64 done, u64 total)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6050,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6051,1
    - Dst: napi_create_external_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6055,1
    - Dst: napi_create_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6058,1
    - Dst: napi_create_typedarray
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6062,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6066,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6069,1
    - Dst: napi_detach_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6073,1
    - Dst: memcpy
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6076,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 3
    argNames:
    - udta
    - buffer
    - buffer_size
    argTypes:
    - void*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6079
      start: 6040
    functionDepth: 0
    functionLinenumber: 6040
    functionLinenumberEnd: 6079
    functionName: httpout_read_cbk
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_create_arraybuffer
    - napi_detach_arraybuffer
    - napi_create_typedarray
    - memcpy
    - napi_get_value_uint32
    - napi_get_reference_value
    - napi_call_function
    - napi_create_external_arraybuffer
    - napi_get_named_property
    linkageType: ''
    returnType: s32
    signature: s32 httpout_read_cbk(void *udta, u8 *buffer, u32 buffer_size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6089,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6090,1
    - Dst: napi_create_external_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6094,1
    - Dst: napi_create_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6097,1
    - Dst: memcpy
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6099,1
    - Dst: napi_create_typedarray
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6104,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6108,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6111,1
    - Dst: napi_detach_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6115,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - udta
    - buffer
    - buffer_size
    argTypes:
    - void*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6120
      start: 6080
    functionDepth: 0
    functionLinenumber: 6080
    functionLinenumberEnd: 6120
    functionName: httpout_write_cbk
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_create_arraybuffer
    - napi_detach_arraybuffer
    - napi_create_typedarray
    - memcpy
    - napi_get_value_uint32
    - napi_get_reference_value
    - napi_call_function
    - napi_create_external_arraybuffer
    - napi_get_named_property
    linkageType: ''
    returnType: u32
    signature: u32 httpout_write_cbk(void *udta, const u8 *buffer, u32 buffer_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6127,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6130,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6133,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6134,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6135,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6137,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - udta
    - reason
    argTypes:
    - void*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6138
      start: 6121
    functionDepth: 0
    functionLinenumber: 6121
    functionLinenumberEnd: 6138
    functionName: httpout_on_close_cbk
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_call_function
    - napi_delete_reference
    - napi_get_reference_value
    - napi_has_named_property
    - napi_get_named_property
    - napi_create_uint32
    linkageType: ''
    returnType: void
    signature: void httpout_on_close_cbk(void *udta, GF_Err reason)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6167,1
    - Dst: napi_check_object_type_tag
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6167,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6169,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6172,1
    - Dst: napi_unwrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6172,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6174,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6175,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6178,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6180,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6181,1
    - Dst: gf_malloc
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6182,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6183,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6187,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6191,1
    - Dst: napi_get_array_length
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6192,1
    - Dst: napi_get_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6195,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6196,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6198,1
    - Dst: gf_realloc
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6201,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6203,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6204,1
    - Dst: gf_malloc
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6205,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6206,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6209,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6210,1
    - Dst: gf_malloc
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6211,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6212,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6218,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6220,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6222,1
    - Dst: gf_httpout_send_request
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6225,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6231,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6234,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6236,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 62
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6239
      start: 6151
    functionDepth: 1
    functionLinenumber: 6151
    functionLinenumberEnd: 6239
    functionName: httpout_send_cbk
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - napi_unwrap
    - napi_check_object_type_tag
    - napi_get_value_uint32
    - gf_httpout_send_request
    - napi_throw_error
    - NAPI_CALL
    - napi_get_element
    - napi_get_array_length
    - napi_has_named_property
    - napi_get_named_property
    - gf_malloc
    - napi_get_value_string_utf8
    - gf_realloc
    linkageType: ''
    returnType: napi_value
    signature: napi_value httpout_send_cbk(napi_env env, napi_callback_info info)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6251,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6256,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6257,1
    - Dst: napi_type_tag_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6258,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6259,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6263,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6264,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6267,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6268,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6271,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6272,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6275,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6276,1
    - Dst: napi_create_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6279,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6280,1
    - Dst: napi_create_array
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6284,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6287,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6288,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6289,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6290,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6291,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6292,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6294,1
    - Dst: napi_create_array
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6297,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6298,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6301,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6302,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6304,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 53
    argCount: 7
    argNames:
    - udta
    - session
    - method
    - url
    - auth_code
    - nb_hdrs
    - hdrs
    argTypes:
    - void*
    - void*
    - char*
    - char*
    - u32
    - u32
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6306
      start: 6241
    functionDepth: 1
    functionLinenumber: 6241
    functionLinenumberEnd: 6306
    functionName: httpout_on_request
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_set_named_property
    - GF_SAFEALLOC
    - napi_get_named_property
    - napi_create_reference
    - napi_create_array
    - napi_get_reference_value
    - napi_wrap
    - napi_set_element
    - napi_create_string_utf8
    - napi_call_function
    - napi_type_tag_object
    - napi_create_uint32
    - napi_create_function
    - napi_create_object
    linkageType: ''
    returnType: s32
    signature: s32 httpout_on_request(void *udta, void *session, const char *method,
      const char *url, u32 auth_code, u32 nb_hdrs, const char **hdrs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6317,1
    - Dst: gf_filter_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6320,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6323,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6325,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6329,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6331,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6335,1
    - Dst: napi_type_tag_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6340,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6341,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6341,1
    - Dst: gf_filter_bind_httpout_callbacks
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6343,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6346,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6347,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6350,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6352,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6352,1
    - Dst: gf_filter_force_main_thread
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6356,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 29
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6358
      start: 6312
    functionDepth: 1
    functionLinenumber: 6312
    functionLinenumberEnd: 6358
    functionName: httpout_bind
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - gf_free
    - napi_reference_unref
    - gf_filter_bind_httpout_callbacks
    - gf_filter_get_rt_udta
    - GF_SAFEALLOC
    - napi_create_reference
    - gf_filter_force_main_thread
    - napi_throw_error
    - napi_wrap
    - NAPI_CALL
    - gf_error_to_string
    - napi_has_named_property
    - NARG_ARGS_THIS
    - napi_type_tag_object
    - napi_delete_reference
    linkageType: ''
    returnType: napi_value
    signature: napi_value httpout_bind(napi_env env, napi_callback_info info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6364,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - napi_f
    argTypes:
    - NAPI_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6365
      start: 6360
    functionDepth: 0
    functionLinenumber: 6360
    functionLinenumberEnd: 6365
    functionName: httpout_detach_binding
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void httpout_detach_binding(NAPI_Filter *napi_f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6402,1
    - Dst: napi_get_cb_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6402,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6406,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6406,1
    - Dst: gf_fileio_url
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6406,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6410
      start: 6397
    functionDepth: 1
    functionLinenumber: 6397
    functionLinenumberEnd: 6410
    functionName: fio_getter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NAPI_CALL
    - napi_get_cb_info
    - gf_fileio_url
    - napi_create_string_utf8
    linkageType: ''
    returnType: napi_value
    signature: napi_value fio_getter(napi_env env, napi_callback_info info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6417,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6421,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6422,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6426,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6429,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6433,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6439,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6443,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 3
    argNames:
    - fileio
    - offset
    - whence
    argTypes:
    - GF_FileIO*
    - u64
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6448
      start: 6412
    functionDepth: 1
    functionLinenumber: 6412
    functionLinenumberEnd: 6448
    functionName: gfio_seek
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_make_callback
    - napi_get_reference_value
    - napi_create_int64
    - napi_get_value_int32
    - napi_get_named_property
    - napi_create_uint32
    - gf_fileio_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gfio_seek(GF_FileIO *fileio, u64 offset, s32 whence)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6470,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6474,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6476,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6478,1
    - Dst: napi_create_external_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6484,1
    - Dst: napi_create_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6487,1
    - Dst: napi_create_typedarray
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6490,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6494,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6497,1
    - Dst: memcpy
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6500,1
    - Dst: napi_detach_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6505,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 26
    argCount: 3
    argNames:
    - fileio
    - buffer
    - bytes
    argTypes:
    - GF_FileIO*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6510
      start: 6463
    functionDepth: 1
    functionLinenumber: 6463
    functionLinenumberEnd: 6510
    functionName: gfio_read
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_create_arraybuffer
    - napi_detach_arraybuffer
    - napi_create_typedarray
    - memcpy
    - napi_make_callback
    - napi_get_value_uint32
    - napi_get_reference_value
    - napi_create_external_arraybuffer
    - napi_get_named_property
    - gf_fileio_get_udta
    linkageType: ''
    returnType: u32
    signature: u32 gfio_read(GF_FileIO *fileio, u8 *buffer, u32 bytes)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6518,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6522,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6524,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6526,1
    - Dst: napi_create_external_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6532,1
    - Dst: napi_create_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6537,1
    - Dst: memcpy
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6539,1
    - Dst: napi_create_typedarray
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6544,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6548,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6551,1
    - Dst: napi_detach_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6556,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 3
    argNames:
    - fileio
    - buffer
    - bytes
    argTypes:
    - GF_FileIO*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6562
      start: 6512
    functionDepth: 1
    functionLinenumber: 6512
    functionLinenumberEnd: 6562
    functionName: gfio_write
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_create_arraybuffer
    - napi_detach_arraybuffer
    - napi_create_typedarray
    - memcpy
    - napi_make_callback
    - napi_get_value_uint32
    - napi_get_reference_value
    - napi_create_external_arraybuffer
    - napi_get_named_property
    - gf_fileio_get_udta
    linkageType: ''
    returnType: u32
    signature: u32 gfio_write(GF_FileIO *fileio, u8 *buffer, u32 bytes)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6569,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6573,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6574,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6578,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6581,1
    - Dst: napi_get_value_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6585,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6590
      start: 6564
    functionDepth: 1
    functionLinenumber: 6564
    functionLinenumberEnd: 6590
    functionName: gfio_tell
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_make_callback
    - napi_get_reference_value
    - napi_get_value_int64
    - napi_get_named_property
    - gf_fileio_get_udta
    linkageType: ''
    returnType: s64
    signature: s64 gfio_tell(GF_FileIO *fileio)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6597,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6601,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6602,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6606,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6609,1
    - Dst: napi_get_value_bool
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6613,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6618
      start: 6592
    functionDepth: 1
    functionLinenumber: 6592
    functionLinenumberEnd: 6618
    functionName: gfio_eof
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_make_callback
    - napi_get_reference_value
    - napi_get_value_bool
    - napi_get_named_property
    - gf_fileio_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool gfio_eof(GF_FileIO *fileio)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6626,1
    - Dst: gf_th_id
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6633,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6638,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6640,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6640,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6641,1
    - Dst: gf_fileio_new
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6647,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6648,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6651,1
    - Dst: gf_fileio_tag_main_thread
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6655,1
    - Dst: gf_list_add
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6656,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6661,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6667,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6670,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6671,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6675,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6679,1
    - Dst: napi_get_value_bool
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6682,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6689,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6696,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6699,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6700,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6701,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6702,1
    - Dst: gf_fileio_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6717,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6718,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6719,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6720,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6721,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6725,1
    - Dst: gf_fileio_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6726,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6727,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6728,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6729,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6731,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6732,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6733,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6734,1
    - Dst: gf_list_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6735,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6736,1
    - Dst: gf_list_find
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6746,1
    - Dst: gf_list_del_item
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6748,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6754,1
    - Dst: gf_list_get
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6756,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6757,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6758,1
    - Dst: gf_list_rem
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6760,1
    - Dst: strncmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6770,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6771,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6775,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6775,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6781,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6784,1
    - Dst: gf_fileio_new
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6788,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6791,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6792,1
    - Dst: gf_fileio_tag_main_thread
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6796,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6800,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6801,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6805,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6806,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6809,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6813,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6820,1
    - Dst: napi_get_value_bool
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6825,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6828,1
    - Dst: gf_fileio_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6839,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 158
    argCount: 4
    argNames:
    - fileio_ref
    - url
    - mode
    - out_error
    argTypes:
    - GF_FileIO*
    - char*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6844
      start: 6620
    functionDepth: 1
    functionLinenumber: 6620
    functionLinenumberEnd: 6844
    functionName: gfio_open
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fileio_new
    - GF_SAFEALLOC
    - napi_create_reference
    - gf_fileio_translate_url
    - gf_list_find
    - gf_list_count
    - gf_list_get
    - strncmp
    - gf_list_add
    - napi_create_string_utf8
    - napi_delete_reference
    - gf_fileio_resource_url
    - napi_get_value_bool
    - napi_wrap
    - gf_list_del_item
    - gf_list_del
    - napi_create_object
    - napi_reference_unref
    - gf_th_id
    - napi_make_callback
    - napi_get_reference_value
    - gf_url_concatenate
    - gf_fileio_del
    - gf_fileio_tag_main_thread
    - strcmp
    - napi_get_named_property
    - gf_list_rem
    - gf_fileio_get_udta
    linkageType: ''
    returnType: GF_FileIO
    signature: GF_FileIO *gfio_open(GF_FileIO *fileio_ref, const char *url, const
      char *mode, GF_Err *out_error)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - env
    - finalize_data
    - finalize_hint
    argTypes:
    - napi_env
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6848
      start: 6846
    functionDepth: 0
    functionLinenumber: 6846
    functionLinenumberEnd: 6848
    functionName: del_fio
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void del_fio(napi_env env, void* finalize_data, void* finalize_hint)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: NARG_ARGS_THIS
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6854,1
    - Dst: NARG_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6855,1
    - Dst: NARG_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6856,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6866,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6871,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6873,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6876,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6878,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6881,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6883,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6887,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6889,1
    - Dst: gf_fileio_new
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6893,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6895,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6896,1
    - Dst: gf_fileio_tag_main_thread
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6899,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6901,1
    - Dst: gf_list_new
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6904,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6908,1
    - Dst: napi_async_init
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6909,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6915,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6915,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6918,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6918,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6919,1
    - Dst: napi_type_tag_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6919,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 48
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6922
      start: 6850
    functionDepth: 1
    functionLinenumber: 6850
    functionLinenumberEnd: 6922
    functionName: new_fio
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fileio_new
    - NARG_STR
    - gf_list_new
    - napi_async_init
    - GF_SAFEALLOC
    - napi_create_reference
    - napi_type_tag_object
    - napi_typeof
    - napi_throw_error
    - napi_define_properties
    - gf_fileio_tag_main_thread
    - NAPI_CALL
    - napi_wrap
    - NARG_BOOL
    - napi_create_string_utf8
    - NARG_ARGS_THIS
    - napi_get_named_property
    linkageType: ''
    returnType: napi_value
    signature: napi_value new_fio(napi_env env, napi_callback_info info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: napi_define_class
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6929,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6931,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - env
    - exports
    - inst
    argTypes:
    - napi_env
    - napi_value
    - GPAC_NAPI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6932
      start: 6925
    functionDepth: 0
    functionLinenumber: 6925
    functionLinenumberEnd: 6932
    functionName: init_fio_class
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - napi_set_named_property
    - napi_define_class
    linkageType: ''
    returnType: napi_status
    signature: napi_status init_fio_class(napi_env env, napi_value exports, GPAC_NAPI
      *inst)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 31
    functionName: EXPORT_SYMBOL
    functionSourceFile: /src/gpac/modules/filter_export.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EXPORT_SYMBOL(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 33
    functionName: EXPORT_SYMBOL
    functionSourceFile: /src/gpac/modules/filter_export.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EXPORT_SYMBOL(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 31
    functionName: EXPORT_SYMBOL
    functionSourceFile: /src/gpac/modules/modules_export.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EXPORT_SYMBOL(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 33
    functionName: EXPORT_SYMBOL
    functionSourceFile: /src/gpac/modules/modules_export.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EXPORT_SYMBOL(a)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_module_get_int
      Src: /src/gpac/modules/alsa/alsa.c:51,1
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/alsa/alsa.c:52,1
    - Dst: snd_pcm_open
      Src: /src/gpac/modules/alsa/alsa.c:56,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:58,1
    - Dst: snd_strerror
      Src: /src/gpac/modules/alsa/alsa.c:58,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 4
    argNames:
    - dr
    - os_handle
    - num_buffers
    - total_duration
    argTypes:
    - GF_AudioOutput*
    - void*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 64
    functionName: ALSA_Setup
    functionSourceFile: /src/gpac/modules/alsa/alsa.c
    functionUses: 0
    functionsReached:
    - snd_strerror
    - GF_LOG
    - gf_module_get_key
    - snd_pcm_open
    - gf_module_get_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ALSA_Setup(GF_AudioOutput*dr, void *os_handle, u32 num_buffers,
      u32 total_duration)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:70,1
    - Dst: snd_pcm_close
      Src: /src/gpac/modules/alsa/alsa.c:71,1
    - Dst: gf_free
      Src: /src/gpac/modules/alsa/alsa.c:74,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 76
    functionName: ALSA_Shutdown
    functionSourceFile: /src/gpac/modules/alsa/alsa.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - snd_pcm_close
    linkageType: ''
    returnType: void
    signature: void ALSA_Shutdown(GF_AudioOutput*dr)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:89,1
    - Dst: snd_pcm_close
      Src: /src/gpac/modules/alsa/alsa.c:90,1
    - Dst: gf_free
      Src: /src/gpac/modules/alsa/alsa.c:93,1
    - Dst: snd_pcm_open
      Src: /src/gpac/modules/alsa/alsa.c:96,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:98,1
    - Dst: snd_strerror
      Src: /src/gpac/modules/alsa/alsa.c:98,1
    - Dst: snd_pcm_hw_params_malloc
      Src: /src/gpac/modules/alsa/alsa.c:102,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:104,1
    - Dst: snd_strerror
      Src: /src/gpac/modules/alsa/alsa.c:104,1
    - Dst: snd_pcm_hw_params_any
      Src: /src/gpac/modules/alsa/alsa.c:107,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:109,1
    - Dst: snd_strerror
      Src: /src/gpac/modules/alsa/alsa.c:109,1
    - Dst: snd_pcm_hw_params_set_access
      Src: /src/gpac/modules/alsa/alsa.c:112,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:114,1
    - Dst: snd_strerror
      Src: /src/gpac/modules/alsa/alsa.c:114,1
    - Dst: snd_pcm_hw_params_set_format
      Src: /src/gpac/modules/alsa/alsa.c:124,1
    - Dst: snd_pcm_hw_params_set_format
      Src: /src/gpac/modules/alsa/alsa.c:130,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:135,1
    - Dst: snd_strerror
      Src: /src/gpac/modules/alsa/alsa.c:135,1
    - Dst: snd_pcm_hw_params_set_rate_near
      Src: /src/gpac/modules/alsa/alsa.c:142,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:144,1
    - Dst: snd_strerror
      Src: /src/gpac/modules/alsa/alsa.c:144,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:148,1
    - Dst: snd_pcm_hw_params_set_channels_near
      Src: /src/gpac/modules/alsa/alsa.c:152,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:154,1
    - Dst: snd_strerror
      Src: /src/gpac/modules/alsa/alsa.c:154,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:158,1
    - Dst: snd_pcm_hw_params_set_periods_near
      Src: /src/gpac/modules/alsa/alsa.c:165,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:167,1
    - Dst: snd_strerror
      Src: /src/gpac/modules/alsa/alsa.c:167,1
    - Dst: snd_pcm_hw_params_set_period_size_near
      Src: /src/gpac/modules/alsa/alsa.c:172,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:174,1
    - Dst: snd_strerror
      Src: /src/gpac/modules/alsa/alsa.c:174,1
    - Dst: snd_pcm_hw_params_get_buffer_size
      Src: /src/gpac/modules/alsa/alsa.c:178,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:180,1
    - Dst: snd_strerror
      Src: /src/gpac/modules/alsa/alsa.c:180,1
    - Dst: snd_pcm_hw_params_get_period_time
      Src: /src/gpac/modules/alsa/alsa.c:185,1
    - Dst: snd_pcm_hw_params
      Src: /src/gpac/modules/alsa/alsa.c:187,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:189,1
    - Dst: snd_strerror
      Src: /src/gpac/modules/alsa/alsa.c:189,1
    - Dst: snd_pcm_hw_params_free
      Src: /src/gpac/modules/alsa/alsa.c:192,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/alsa/alsa.c:198,1
    - Dst: memset
      Src: /src/gpac/modules/alsa/alsa.c:200,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:201,1
    - Dst: snd_pcm_hw_params_free
      Src: /src/gpac/modules/alsa/alsa.c:206,1
    - Dst: snd_pcm_close
      Src: /src/gpac/modules/alsa/alsa.c:207,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 121
    argCount: 5
    argNames:
    - dr
    - SampleRate
    - NbChannels
    - audioFormat
    - channel_cfg
    argTypes:
    - GF_AudioOutput*
    - u32*
    - u32*
    - u32*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 210
    functionName: ALSA_Configure
    functionSourceFile: /src/gpac/modules/alsa/alsa.c
    functionUses: 0
    functionsReached:
    - gf_free
    - snd_pcm_hw_params_set_access
    - memset
    - snd_strerror
    - snd_pcm_hw_params_set_format
    - snd_pcm_hw_params_malloc
    - snd_pcm_hw_params_get_period_time
    - snd_pcm_hw_params_set_rate_near
    - snd_pcm_hw_params_set_channels_near
    - GF_LOG
    - snd_pcm_hw_params
    - snd_pcm_hw_params_get_buffer_size
    - snd_pcm_hw_params_set_period_size_near
    - snd_pcm_close
    - snd_pcm_hw_params_free
    - gf_malloc
    - snd_pcm_hw_params_any
    - snd_pcm_hw_params_set_periods_near
    - snd_pcm_open
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ALSA_Configure(GF_AudioOutput*dr, u32 *SampleRate, u32 *NbChannels,
      u32 *audioFormat, u64 channel_cfg)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: snd_pcm_wait
      Src: /src/gpac/modules/alsa/alsa.c:220,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:223,1
    - Dst: snd_pcm_prepare
      Src: /src/gpac/modules/alsa/alsa.c:224,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:226,1
    - Dst: snd_strerror
      Src: /src/gpac/modules/alsa/alsa.c:226,1
    - Dst: snd_pcm_avail_update
      Src: /src/gpac/modules/alsa/alsa.c:231,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:234,1
    - Dst: snd_pcm_prepare
      Src: /src/gpac/modules/alsa/alsa.c:235,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:237,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:242,1
    - Dst: GF_AudioOutput*::FillBuffer
      Src: /src/gpac/modules/alsa/alsa.c:248,1
    - Dst: snd_pcm_writei
      Src: /src/gpac/modules/alsa/alsa.c:252,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:254,1
    - Dst: snd_pcm_prepare
      Src: /src/gpac/modules/alsa/alsa.c:255,1
    - Dst: snd_pcm_writei
      Src: /src/gpac/modules/alsa/alsa.c:256,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:259,1
    - Dst: snd_strerror
      Src: /src/gpac/modules/alsa/alsa.c:259,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 40
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 261
    functionName: ALSA_WriteAudio
    functionSourceFile: /src/gpac/modules/alsa/alsa.c
    functionUses: 0
    functionsReached:
    - snd_pcm_prepare
    - snd_pcm_avail_update
    - GF_LOG
    - snd_pcm_writei
    - GF_AudioOutput*::FillBuffer
    - snd_strerror
    - snd_pcm_wait
    linkageType: ''
    returnType: void
    signature: void ALSA_WriteAudio(GF_AudioOutput*dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 267
    functionName: ALSA_GetAudioDelay
    functionSourceFile: /src/gpac/modules/alsa/alsa.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ALSA_GetAudioDelay(GF_AudioOutput*dr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: snd_pcm_hw_params_malloc
      Src: /src/gpac/modules/alsa/alsa.c:275,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:277,1
    - Dst: snd_strerror
      Src: /src/gpac/modules/alsa/alsa.c:277,1
    - Dst: snd_pcm_hw_params_any
      Src: /src/gpac/modules/alsa/alsa.c:280,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:282,1
    - Dst: snd_strerror
      Src: /src/gpac/modules/alsa/alsa.c:282,1
    - Dst: snd_pcm_hw_params_set_rate_near
      Src: /src/gpac/modules/alsa/alsa.c:286,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:288,1
    - Dst: snd_strerror
      Src: /src/gpac/modules/alsa/alsa.c:288,1
    - Dst: snd_pcm_hw_params_set_channels_near
      Src: /src/gpac/modules/alsa/alsa.c:292,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/alsa/alsa.c:294,1
    - Dst: snd_strerror
      Src: /src/gpac/modules/alsa/alsa.c:294,1
    - Dst: snd_pcm_hw_params_free
      Src: /src/gpac/modules/alsa/alsa.c:297,1
    - Dst: snd_pcm_hw_params_free
      Src: /src/gpac/modules/alsa/alsa.c:301,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 33
    argCount: 4
    argNames:
    - dr
    - desired_sr
    - NbChannels
    - nbBitsPerSample
    argTypes:
    - GF_AudioOutput*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 269
    functionDepth: 1
    functionLinenumber: 269
    functionLinenumberEnd: 304
    functionName: ALSA_QueryOutputSampleRate
    functionSourceFile: /src/gpac/modules/alsa/alsa.c
    functionUses: 0
    functionsReached:
    - snd_pcm_hw_params_any
    - snd_pcm_hw_params_malloc
    - GF_LOG
    - snd_pcm_hw_params_set_rate_near
    - snd_pcm_hw_params_set_channels_near
    - snd_strerror
    - snd_pcm_hw_params_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ALSA_QueryOutputSampleRate(GF_AudioOutput*dr, u32 *desired_sr,
      u32 *NbChannels, u32 *nbBitsPerSample)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/alsa/alsa.c:316,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/alsa/alsa.c:319,1
    - Dst: gf_free
      Src: /src/gpac/modules/alsa/alsa.c:321,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/alsa/alsa.c:335,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 312
    functionDepth: 1
    functionLinenumber: 312
    functionLinenumberEnd: 337
    functionName: NewALSAOutput
    functionSourceFile: /src/gpac/modules/alsa/alsa.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_REGISTER_MODULE_INTERFACE
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void *NewALSAOutput()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/alsa/alsa.c:343,1
    - Dst: gf_free
      Src: /src/gpac/modules/alsa/alsa.c:344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 339
    functionDepth: 0
    functionLinenumber: 339
    functionLinenumberEnd: 345
    functionName: DeleteALSAOutput
    functionSourceFile: /src/gpac/modules/alsa/alsa.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DeleteALSAOutput(void *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 352
    functionDepth: 0
    functionLinenumber: 352
    functionLinenumberEnd: 360
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/alsa/alsa.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NewALSAOutput
      Src: /src/gpac/modules/alsa/alsa.c:366,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 362
    functionDepth: 2
    functionLinenumber: 362
    functionLinenumberEnd: 368
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/alsa/alsa.c
    functionUses: 0
    functionsReached:
    - NewALSAOutput
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DeleteALSAOutput
      Src: /src/gpac/modules/alsa/alsa.c:374,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 370
    functionDepth: 1
    functionLinenumber: 370
    functionLinenumberEnd: 375
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/alsa/alsa.c
    functionUses: 0
    functionsReached:
    - DeleteALSAOutput
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/modules/demo_is/demo_is.c:32,1
    - Dst: AddField
      Src: /src/gpac/modules/demo_is/demo_is.c:34,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ifce
    - urn
    - dsi
    - dsi_size
    argTypes:
    - struct __input_device*
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 37
    functionName: DEV_RegisterDevice
    functionSourceFile: /src/gpac/modules/demo_is/demo_is.c
    functionUses: 0
    functionsReached:
    - strcmp
    - AddField
    linkageType: ''
    returnType: Bool
    signature: Bool DEV_RegisterDevice(struct __input_device *ifce, const char *urn,
      const char *dsi, u32 dsi_size, void (*AddField)(struct __input_device *_this,
      u32 fieldType, const char *name))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/modules/demo_is/demo_is.c:47,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/demo_is/demo_is.c:49,1
    - Dst: strlen
      Src: /src/gpac/modules/demo_is/demo_is.c:50,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/modules/demo_is/demo_is.c:51,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/demo_is/demo_is.c:52,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/demo_is/demo_is.c:53,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/demo_is/demo_is.c:54,1
    - Dst: gf_bs_align
      Src: /src/gpac/modules/demo_is/demo_is.c:56,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/modules/demo_is/demo_is.c:57,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/demo_is/demo_is.c:58,1
    - Dst: struct __input_device*::DispatchFrame
      Src: /src/gpac/modules/demo_is/demo_is.c:60,1
    - Dst: gf_free
      Src: /src/gpac/modules/demo_is/demo_is.c:61,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - struct __input_device*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 62
    functionName: DEV_Start
    functionSourceFile: /src/gpac/modules/demo_is/demo_is.c
    functionUses: 0
    functionsReached:
    - struct __input_device*::DispatchFrame
    - gf_free
    - gf_bs_new
    - gf_get_bit_size
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_align
    - gf_bs_del
    - strlen
    linkageType: ''
    returnType: void
    signature: void DEV_Start(struct __input_device *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - struct __input_device*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: DEV_Stop
    functionSourceFile: /src/gpac/modules/demo_is/demo_is.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DEV_Stop(struct __input_device *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 77
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/demo_is/demo_is.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/demo_is/demo_is.c:85,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/demo_is/demo_is.c:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 93
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/demo_is/demo_is.c
    functionUses: 0
    functionsReached:
    - GF_REGISTER_MODULE_INTERFACE
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/demo_is/demo_is.c:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - bi
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 102
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/demo_is/demo_is.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *bi)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/validator/validator.c:86,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:88,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:91,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/validator/validator.c:92,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:94,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:96,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:99,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:100,1
    - Dst: sprintf
      Src: /src/gpac/modules/validator/validator.c:101,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:102,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:104,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:106,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:109,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:110,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:111,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:112,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/validator/validator.c:115,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:117,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:121,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:122,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 34
    argCount: 3
    argNames:
    - validator
    - filename
    - scene_time
    argTypes:
    - GF_Validator*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 123
    functionName: validator_xvs_add_snapshot_node
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - sprintf
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void validator_xvs_add_snapshot_node(GF_Validator *validator, const
      char *filename, u32 scene_time)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_ext_start
      Src: /src/gpac/modules/validator/validator.c:130,1
    - Dst: sprintf
      Src: /src/gpac/modules/validator/validator.c:132,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - validator
    - is_reference
    - number
    argTypes:
    - GF_Validator*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 135
    functionName: validator_get_snapshot_name
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached:
    - gf_file_ext_start
    - gf_strdup
    - sprintf
    linkageType: ''
    returnType: char
    signature: char *validator_get_snapshot_name(GF_Validator *validator, Bool is_reference,
      u32 number)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: validator_get_snapshot_name
      Src: /src/gpac/modules/validator/validator.c:144,1
    - Dst: gf_sc_get_screen_buffer
      Src: /src/gpac/modules/validator/validator.c:146,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:148,1
    - Dst: gf_error_to_string
      Src: /src/gpac/modules/validator/validator.c:148,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:151,1
    - Dst: gf_img_png_enc
      Src: /src/gpac/modules/validator/validator.c:155,1
    - Dst: gf_fopen
      Src: /src/gpac/modules/validator/validator.c:158,1
    - Dst: gf_fwrite
      Src: /src/gpac/modules/validator/validator.c:162,1
    - Dst: gf_fclose
      Src: /src/gpac/modules/validator/validator.c:163,1
    - Dst: gf_free
      Src: /src/gpac/modules/validator/validator.c:166,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:168,1
    - Dst: gf_error_to_string
      Src: /src/gpac/modules/validator/validator.c:168,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:170,1
    - Dst: gf_sc_release_screen_buffer
      Src: /src/gpac/modules/validator/validator.c:172,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 1
    argNames:
    - validator
    argTypes:
    - GF_Validator*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 137
    functionDepth: 2
    functionLinenumber: 137
    functionLinenumberEnd: 176
    functionName: validator_create_snapshot
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached:
    - gf_img_png_enc
    - gf_fclose
    - validator_get_snapshot_name
    - gf_free
    - GF_LOG
    - gf_fwrite
    - gf_fopen
    - gf_error_to_string
    - gf_sc_release_screen_buffer
    - gf_sc_get_screen_buffer
    - gf_malloc
    linkageType: ''
    returnType: char
    signature: char *validator_create_snapshot(GF_Validator *validator)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_ext_start
      Src: /src/gpac/modules/validator/validator.c:186,1
    - Dst: stricmp
      Src: /src/gpac/modules/validator/validator.c:188,1
    - Dst: stricmp
      Src: /src/gpac/modules/validator/validator.c:189,1
    - Dst: stricmp
      Src: /src/gpac/modules/validator/validator.c:189,1
    - Dst: gf_file_load_data
      Src: /src/gpac/modules/validator/validator.c:194,1
    - Dst: gf_img_jpeg_dec
      Src: /src/gpac/modules/validator/validator.c:201,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:203,1
    - Dst: gf_img_jpeg_dec
      Src: /src/gpac/modules/validator/validator.c:204,1
    - Dst: gf_img_png_dec
      Src: /src/gpac/modules/validator/validator.c:209,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:211,1
    - Dst: gf_img_png_dec
      Src: /src/gpac/modules/validator/validator.c:212,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 7
    argNames:
    - png_filename
    - hint_codecid
    - width
    - height
    - pixel_format
    - dst
    - dst_size
    argTypes:
    - char*
    - u32*
    - u32*
    - u32*
    - u32*
    - char**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 217
    functionName: validator_file_dec
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached:
    - gf_img_jpeg_dec
    - gf_file_ext_start
    - stricmp
    - gf_malloc
    - gf_img_png_dec
    - gf_file_load_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err validator_file_dec(char *png_filename, u32 *hint_codecid, u32
      *width, u32 *height, u32 *pixel_format, char **dst, u32 *dst_size)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: validator_get_snapshot_name
      Src: /src/gpac/modules/validator/validator.c:230,1
    - Dst: validator_get_snapshot_name
      Src: /src/gpac/modules/validator/validator.c:231,1
    - Dst: validator_file_dec
      Src: /src/gpac/modules/validator/validator.c:233,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:235,1
    - Dst: validator_file_dec
      Src: /src/gpac/modules/validator/validator.c:238,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:240,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:247,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:251,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:255,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:259,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:265,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:272,1
    - Dst: gf_free
      Src: /src/gpac/modules/validator/validator.c:273,1
    - Dst: gf_free
      Src: /src/gpac/modules/validator/validator.c:274,1
    - Dst: gf_free
      Src: /src/gpac/modules/validator/validator.c:275,1
    - Dst: gf_free
      Src: /src/gpac/modules/validator/validator.c:276,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 59
    argCount: 1
    argNames:
    - validator
    argTypes:
    - GF_Validator*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 219
    functionDepth: 2
    functionLinenumber: 219
    functionLinenumberEnd: 278
    functionName: validator_compare_snapshots
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - validator_get_snapshot_name
    - validator_file_dec
    linkageType: ''
    returnType: Bool
    signature: Bool validator_compare_snapshots(GF_Validator *validator)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: validator_create_snapshot
      Src: /src/gpac/modules/validator/validator.c:286,1
    - Dst: validator_xvs_add_snapshot_node
      Src: /src/gpac/modules/validator/validator.c:287,1
    - Dst: gf_clock_time
      Src: /src/gpac/modules/validator/validator.c:287,1
    - Dst: gf_free
      Src: /src/gpac/modules/validator/validator.c:288,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - udta
    - time
    argTypes:
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 281
    functionDepth: 3
    functionLinenumber: 281
    functionLinenumberEnd: 292
    functionName: validator_on_video_frame
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached:
    - validator_create_snapshot
    - gf_free
    - validator_xvs_add_snapshot_node
    - gf_clock_time
    linkageType: ''
    returnType: void
    signature: void validator_on_video_frame(void *udta, u32 time)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - udta
    - width
    - height
    - bpp
    argTypes:
    - void*
    - u32
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 294
    functionDepth: 0
    functionLinenumber: 294
    functionLinenumberEnd: 296
    functionName: validator_on_video_reconfig
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void validator_on_video_reconfig(void *udta, u32 width, u32 height,
      u8 bpp)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/modules/validator/validator.c:324,1
    - Dst: gf_sc_on_event
      Src: /src/gpac/modules/validator/validator.c:326,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 3
    argNames:
    - udta
    - event
    - consumed_by_compositor
    argTypes:
    - void*
    - GF_Event*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 298
    functionDepth: 1
    functionLinenumber: 298
    functionLinenumberEnd: 331
    functionName: validator_on_event_play
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_sc_on_event
    linkageType: ''
    returnType: Bool
    signature: Bool validator_on_event_play(void *udta, GF_Event *event, Bool consumed_by_compositor)
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/validator/validator.c:338,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:340,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:356,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/modules/validator/validator.c:356,1
    - Dst: gf_free
      Src: /src/gpac/modules/validator/validator.c:362,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/validator/validator.c:366,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:368,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:370,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:373,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:374,1
    - Dst: sprintf
      Src: /src/gpac/modules/validator/validator.c:375,1
    - Dst: gf_scene_get_time
      Src: /src/gpac/modules/validator/validator.c:375,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:376,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:387,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:389,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:392,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:395,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:398,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:401,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:404,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:406,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:408,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:411,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:412,1
    - Dst: sprintf
      Src: /src/gpac/modules/validator/validator.c:413,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:414,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:416,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:418,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:421,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:422,1
    - Dst: sprintf
      Src: /src/gpac/modules/validator/validator.c:423,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:424,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:426,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:428,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:431,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:432,1
    - Dst: sprintf
      Src: /src/gpac/modules/validator/validator.c:433,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/validator/validator.c:433,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:434,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:437,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:439,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:442,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:443,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:444,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:447,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:449,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:452,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:453,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:454,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:457,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:459,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:462,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:463,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:464,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:471,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:473,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:476,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:478,1
    - Dst: gf_dom_get_key_name
      Src: /src/gpac/modules/validator/validator.c:478,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:480,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:482,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:484,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:487,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:488,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:489,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:492,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:494,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:497,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:498,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:499,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:502,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:504,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:507,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:508,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:509,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:513,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:515,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:518,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:519,1
    - Dst: sprintf
      Src: /src/gpac/modules/validator/validator.c:520,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:521,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:524,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/validator/validator.c:526,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:528,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:532,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:533,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 185
    argCount: 2
    argNames:
    - validator
    - event
    argTypes:
    - GF_Validator*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 534
      start: 333
    functionDepth: 1
    functionLinenumber: 333
    functionLinenumberEnd: 534
    functionName: validator_xvs_add_event_dom
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - sprintf
    - gf_scene_get_time
    - gf_dom_event_get_name
    - gf_dom_get_key_name
    - gf_list_add
    - gf_malloc
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void validator_xvs_add_event_dom(GF_Validator *validator, GF_Event
      *event)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: validator_create_snapshot
      Src: /src/gpac/modules/validator/validator.c:569,1
    - Dst: validator_xvs_add_snapshot_node
      Src: /src/gpac/modules/validator/validator.c:570,1
    - Dst: gf_clock_time
      Src: /src/gpac/modules/validator/validator.c:570,1
    - Dst: gf_free
      Src: /src/gpac/modules/validator/validator.c:571,1
    - Dst: memset
      Src: /src/gpac/modules/validator/validator.c:575,1
    - Dst: gf_sc_on_event
      Src: /src/gpac/modules/validator/validator.c:577,1
    - Dst: validator_xvs_close
      Src: /src/gpac/modules/validator/validator.c:583,1
    - Dst: gf_sc_disconnect
      Src: /src/gpac/modules/validator/validator.c:584,1
    - Dst: validator_xvs_next
      Src: /src/gpac/modules/validator/validator.c:586,1
    - Dst: validator_xvs_close
      Src: /src/gpac/modules/validator/validator.c:589,1
    - Dst: gf_sc_disconnect
      Src: /src/gpac/modules/validator/validator.c:590,1
    - Dst: validator_xvs_next
      Src: /src/gpac/modules/validator/validator.c:592,1
    - Dst: validator_xvs_add_event_dom
      Src: /src/gpac/modules/validator/validator.c:599,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 66
    argCount: 3
    argNames:
    - udta
    - event
    - consumed_by_compositor
    argTypes:
    - void*
    - GF_Event*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 536
    functionDepth: 3
    functionLinenumber: 536
    functionLinenumberEnd: 602
    functionName: validator_on_event_record
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached:
    - gf_free
    - validator_xvs_add_event_dom
    - validator_xvs_next
    - validator_xvs_add_snapshot_node
    - validator_create_snapshot
    - memset
    - gf_sc_on_event
    - validator_xvs_close
    - gf_sc_disconnect
    - gf_clock_time
    linkageType: ''
    returnType: Bool
    signature: Bool validator_on_event_record(void *udta, GF_Event *event, Bool consumed_by_compositor)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dom_new
      Src: /src/gpac/modules/validator/validator.c:608,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/modules/validator/validator.c:609,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/modules/validator/validator.c:611,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/modules/validator/validator.c:615,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/modules/validator/validator.c:617,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/validator/validator.c:623,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:625,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:626,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 1
    argNames:
    - validator
    argTypes:
    - GF_Validator*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 630
      start: 604
    functionDepth: 1
    functionLinenumber: 604
    functionLinenumberEnd: 630
    functionName: validator_xvl_open
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_strdup
    - gf_xml_dom_parse
    - gf_xml_dom_get_root
    - gf_xml_dom_new
    - strcmp
    - gf_xml_dom_del
    linkageType: ''
    returnType: void
    signature: void validator_xvl_open(GF_Validator *validator)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dom_serialize
      Src: /src/gpac/modules/validator/validator.c:641,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/modules/validator/validator.c:642,1
    - Dst: sprintf
      Src: /src/gpac/modules/validator/validator.c:644,1
    - Dst: gf_fopen
      Src: /src/gpac/modules/validator/validator.c:646,1
    - Dst: gf_fwrite
      Src: /src/gpac/modules/validator/validator.c:647,1
    - Dst: strlen
      Src: /src/gpac/modules/validator/validator.c:647,1
    - Dst: gf_fclose
      Src: /src/gpac/modules/validator/validator.c:648,1
    - Dst: gf_free
      Src: /src/gpac/modules/validator/validator.c:649,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/modules/validator/validator.c:651,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 1
    argNames:
    - validator
    argTypes:
    - GF_Validator*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 655
      start: 632
    functionDepth: 1
    functionLinenumber: 632
    functionLinenumberEnd: 655
    functionName: validator_xvl_close
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_serialize
    - gf_fclose
    - gf_free
    - gf_xml_dom_del
    - sprintf
    - gf_fwrite
    - gf_file_ext_start
    - gf_fopen
    - strlen
    linkageType: ''
    returnType: void
    signature: void validator_xvl_close(GF_Validator *validator)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/modules/validator/validator.c:664,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/validator/validator.c:675,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:677,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:679,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 32
    argCount: 2
    argNames:
    - validator
    - reverse
    argTypes:
    - GF_Validator*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 657
    functionDepth: 1
    functionLinenumber: 657
    functionLinenumberEnd: 688
    functionName: validator_xvl_get_next_xvs
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: void
    signature: void validator_xvl_get_next_xvs(GF_Validator *validator, Bool reverse)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:693,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/modules/validator/validator.c:695,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/modules/validator/validator.c:696,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/validator/validator.c:699,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:701,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:705,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/validator/validator.c:706,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/validator/validator.c:707,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/modules/validator/validator.c:710,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/modules/validator/validator.c:715,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/validator/validator.c:724,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:727,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/modules/validator/validator.c:734,1
    - Dst: strrchr
      Src: /src/gpac/modules/validator/validator.c:740,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:745,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/validator/validator.c:754,1
    - Dst: gf_list_last
      Src: /src/gpac/modules/validator/validator.c:755,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/modules/validator/validator.c:756,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/modules/validator/validator.c:757,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/validator/validator.c:760,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:762,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:766,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:767,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 70
    argCount: 1
    argNames:
    - validator
    argTypes:
    - GF_Validator*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 772
      start: 690
    functionDepth: 1
    functionLinenumber: 690
    functionLinenumberEnd: 772
    functionName: validator_xvs_open
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_list_new
    - gf_xml_dom_parse
    - gf_list_get
    - gf_xml_dom_get_root
    - GF_SAFEALLOC
    - strrchr
    - GF_LOG
    - gf_list_count
    - gf_xml_dom_node_del
    - gf_xml_dom_new
    - strcmp
    - gf_list_rem_last
    - gf_list_add
    - gf_list_last
    - gf_xml_dom_del
    linkageType: ''
    returnType: Bool
    signature: Bool validator_xvs_open(GF_Validator *validator)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/modules/validator/validator.c:786,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:789,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/validator/validator.c:796,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:798,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:801,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:802,1
    - Dst: gf_free
      Src: /src/gpac/modules/validator/validator.c:805,1
    - Dst: sprintf
      Src: /src/gpac/modules/validator/validator.c:809,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:810,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:812,1
    - Dst: gf_xml_dom_serialize
      Src: /src/gpac/modules/validator/validator.c:815,1
    - Dst: gf_fopen
      Src: /src/gpac/modules/validator/validator.c:816,1
    - Dst: gf_fwrite
      Src: /src/gpac/modules/validator/validator.c:817,1
    - Dst: strlen
      Src: /src/gpac/modules/validator/validator.c:817,1
    - Dst: gf_fclose
      Src: /src/gpac/modules/validator/validator.c:818,1
    - Dst: gf_free
      Src: /src/gpac/modules/validator/validator.c:819,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/modules/validator/validator.c:821,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:823,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/validator/validator.c:829,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:832,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/validator/validator.c:838,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:840,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:843,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/validator/validator.c:844,1
    - Dst: gf_free
      Src: /src/gpac/modules/validator/validator.c:846,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/validator/validator.c:847,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/modules/validator/validator.c:850,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 78
    argCount: 1
    argNames:
    - validator
    argTypes:
    - GF_Validator*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 860
      start: 774
    functionDepth: 1
    functionLinenumber: 774
    functionLinenumberEnd: 860
    functionName: validator_xvs_close
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_xml_dom_serialize
    - gf_list_get
    - gf_strdup
    - gf_fclose
    - GF_SAFEALLOC
    - gf_xml_dom_del
    - GF_LOG
    - sprintf
    - gf_fwrite
    - gf_xml_dom_node_del
    - strcmp
    - gf_list_add
    - gf_fopen
    - strlen
    linkageType: ''
    returnType: void
    signature: void validator_xvs_close(GF_Validator *validator)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/modules/validator/validator.c:867,1
    - Dst: sprintf
      Src: /src/gpac/modules/validator/validator.c:869,1
    - Dst: gf_sc_connect_from_time
      Src: /src/gpac/modules/validator/validator.c:874,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - validator
    argTypes:
    - GF_Validator*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 878
      start: 862
    functionDepth: 1
    functionLinenumber: 862
    functionLinenumberEnd: 878
    functionName: validator_test_open
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached:
    - gf_sc_connect_from_time
    - sprintf
    linkageType: ''
    returnType: void
    signature: void validator_test_open(GF_Validator *validator)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: validator_xvl_get_next_xvs
      Src: /src/gpac/modules/validator/validator.c:883,1
    - Dst: validator_xvs_open
      Src: /src/gpac/modules/validator/validator.c:885,1
    - Dst: validator_test_open
      Src: /src/gpac/modules/validator/validator.c:890,1
    - Dst: validator_xvs_close
      Src: /src/gpac/modules/validator/validator.c:892,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - validator
    - reverse
    argTypes:
    - GF_Validator*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 880
    functionDepth: 2
    functionLinenumber: 880
    functionLinenumberEnd: 902
    functionName: validator_xvs_next
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 1
    functionsReached:
    - validator_xvs_close
    - validator_xvl_get_next_xvs
    - validator_xvs_open
    - validator_test_open
    linkageType: ''
    returnType: Bool
    signature: Bool validator_xvs_next(GF_Validator *validator, Bool reverse)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/modules/validator/validator.c:909,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/validator/validator.c:919,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:930,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/modules/validator/validator.c:934,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/validator/validator.c:944,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:946,1
    - Dst: atoi
      Src: /src/gpac/modules/validator/validator.c:947,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:948,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:949,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:951,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:953,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:956,1
    - Dst: atoi
      Src: /src/gpac/modules/validator/validator.c:957,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:958,1
    - Dst: atoi
      Src: /src/gpac/modules/validator/validator.c:959,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:960,1
    - Dst: FLT2FIX
      Src: /src/gpac/modules/validator/validator.c:961,1
    - Dst: atof
      Src: /src/gpac/modules/validator/validator.c:961,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:962,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:962,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:964,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:964,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:966,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:966,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:969,1
    - Dst: gf_dom_get_key_type
      Src: /src/gpac/modules/validator/validator.c:970,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:972,1
    - Dst: atoi
      Src: /src/gpac/modules/validator/validator.c:973,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 77
    argCount: 1
    argNames:
    - validator
    argTypes:
    - GF_Validator*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 981
      start: 904
    functionDepth: 1
    functionLinenumber: 904
    functionLinenumberEnd: 981
    functionName: validator_load_event
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_list_get
    - atof
    - gf_dom_event_type_by_name
    - memset
    - strcmp
    - atoi
    - gf_dom_get_key_type
    linkageType: ''
    returnType: Bool
    signature: Bool validator_load_event(GF_Validator *validator)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/validator/validator.c:995,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:997,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:999,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:1000,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:1004,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:1005,1
    - Dst: strcmp
      Src: /src/gpac/modules/validator/validator.c:1007,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:1008,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:1011,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/validator/validator.c:1015,1
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/validator/validator.c:1019,1
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/validator/validator.c:1021,1
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/validator/validator.c:1023,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:1025,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:1030,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:1032,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:1035,1
    - Dst: validator_xvl_open
      Src: /src/gpac/modules/validator/validator.c:1041,1
    - Dst: validator_xvs_next
      Src: /src/gpac/modules/validator/validator.c:1045,1
    - Dst: validator_xvs_open
      Src: /src/gpac/modules/validator/validator.c:1050,1
    - Dst: validator_test_open
      Src: /src/gpac/modules/validator/validator.c:1055,1
    - Dst: validator_xvs_close
      Src: /src/gpac/modules/validator/validator.c:1057,1
    - Dst: gf_filter_add_event_listener
      Src: /src/gpac/modules/validator/validator.c:1071,1
    - Dst: validator_load_event
      Src: /src/gpac/modules/validator/validator.c:1078,1
    - Dst: gf_filter_remove_event_listener
      Src: /src/gpac/modules/validator/validator.c:1086,1
    - Dst: validator_xvs_close
      Src: /src/gpac/modules/validator/validator.c:1087,1
    - Dst: validator_xvl_close
      Src: /src/gpac/modules/validator/validator.c:1088,1
    - Dst: gf_free
      Src: /src/gpac/modules/validator/validator.c:1091,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/validator/validator.c:1097,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/validator/validator.c:1099,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/validator/validator.c:1102,1
    - Dst: gf_clock_time
      Src: /src/gpac/modules/validator/validator.c:1110,1
    - Dst: validator_create_snapshot
      Src: /src/gpac/modules/validator/validator.c:1118,1
    - Dst: gf_free
      Src: /src/gpac/modules/validator/validator.c:1119,1
    - Dst: validator_compare_snapshots
      Src: /src/gpac/modules/validator/validator.c:1120,1
    - Dst: gf_sc_on_event
      Src: /src/gpac/modules/validator/validator.c:1125,1
    - Dst: validator_load_event
      Src: /src/gpac/modules/validator/validator.c:1127,1
    - Dst: validator_xvs_close
      Src: /src/gpac/modules/validator/validator.c:1129,1
    - Dst: gf_sc_disconnect
      Src: /src/gpac/modules/validator/validator.c:1131,1
    - Dst: validator_xvs_next
      Src: /src/gpac/modules/validator/validator.c:1133,1
    - Dst: memset
      Src: /src/gpac/modules/validator/validator.c:1136,1
    - Dst: gf_sc_on_event
      Src: /src/gpac/modules/validator/validator.c:1138,1
    - Dst: validator_load_event
      Src: /src/gpac/modules/validator/validator.c:1141,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 134
    argCount: 3
    argNames:
    - termext
    - action
    - param
    argTypes:
    - GF_CompositorExt*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1150
      start: 983
    functionDepth: 3
    functionLinenumber: 983
    functionLinenumberEnd: 1150
    functionName: validator_process
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_opts_set_key
    - validator_test_open
    - memset
    - validator_xvs_open
    - gf_sc_disconnect
    - validator_compare_snapshots
    - validator_create_snapshot
    - GF_LOG
    - gf_filter_add_event_listener
    - gf_sc_on_event
    - validator_xvl_close
    - gf_clock_time
    - validator_load_event
    - gf_module_get_key
    - gf_filter_remove_event_listener
    - strcmp
    - validator_xvl_open
    - validator_xvs_close
    - validator_xvs_next
    linkageType: ''
    returnType: Bool
    signature: Bool validator_process(GF_CompositorExt *termext, u32 action, void
      *param)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/validator/validator.c:1167,1
    - Dst: memset
      Src: /src/gpac/modules/validator/validator.c:1168,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/validator/validator.c:1169,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/validator/validator.c:1171,1
    - Dst: gf_free
      Src: /src/gpac/modules/validator/validator.c:1173,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1181
      start: 1163
    functionDepth: 1
    functionLinenumber: 1163
    functionLinenumberEnd: 1181
    functionName: validator_new
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - gf_malloc
    linkageType: ''
    returnType: GF_CompositorExt
    signature: GF_CompositorExt *validator_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/validator/validator.c:1188,1
    - Dst: gf_free
      Src: /src/gpac/modules/validator/validator.c:1189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1190
      start: 1184
    functionDepth: 0
    functionLinenumber: 1184
    functionLinenumberEnd: 1190
    functionName: validator_delete
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void validator_delete(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1200
      start: 1192
    functionDepth: 0
    functionLinenumber: 1192
    functionLinenumberEnd: 1200
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: validator_new
      Src: /src/gpac/modules/validator/validator.c:1205,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1207
      start: 1202
    functionDepth: 2
    functionLinenumber: 1202
    functionLinenumberEnd: 1207
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached:
    - validator_new
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: validator_delete
      Src: /src/gpac/modules/validator/validator.c:1214,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1217
      start: 1209
    functionDepth: 1
    functionLinenumber: 1209
    functionLinenumberEnd: 1217
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/validator/validator.c
    functionUses: 0
    functionsReached:
    - validator_delete
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/jack/jack.c:63,1
    - Dst: jack_deactivate
      Src: /src/gpac/modules/jack/jack.c:66,1
    - Dst: gf_free
      Src: /src/gpac/modules/jack/jack.c:70,1
    - Dst: jack_port_unregister
      Src: /src/gpac/modules/jack/jack.c:79,1
    - Dst: gf_free
      Src: /src/gpac/modules/jack/jack.c:82,1
    - Dst: jack_client_close
      Src: /src/gpac/modules/jack/jack.c:87,1
    - Dst: gf_free
      Src: /src/gpac/modules/jack/jack.c:91,1
    - Dst: memset
      Src: /src/gpac/modules/jack/jack.c:96,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JackContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 99
    functionName: Jack_cleanup
    functionSourceFile: /src/gpac/modules/jack/jack.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - jack_deactivate
    - jack_port_unregister
    - memset
    - jack_client_close
    linkageType: ''
    returnType: void
    signature: void Jack_cleanup (JackContext * ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_AudioOutput*::FillBuffer
      Src: /src/gpac/modules/jack/jack.c:120,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - nframes
    - arg
    argTypes:
    - jack_nframes_t
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 146
    functionName: process_callback
    functionSourceFile: /src/gpac/modules/jack/jack.c
    functionUses: 0
    functionsReached:
    - GF_AudioOutput*::FillBuffer
    linkageType: ''
    returnType: int
    signature: int process_callback (jack_nframes_t nframes, void *arg)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/jack/jack.c:168,1
    - Dst: gf_calloc
      Src: /src/gpac/modules/jack/jack.c:170,1
    - Dst: Jack_cleanup
      Src: /src/gpac/modules/jack/jack.c:173,1
    - Dst: jack_port_get_buffer
      Src: /src/gpac/modules/jack/jack.c:179,1
    - Dst: Jack_cleanup
      Src: /src/gpac/modules/jack/jack.c:182,1
    - Dst: gf_free
      Src: /src/gpac/modules/jack/jack.c:188,1
    - Dst: gf_calloc
      Src: /src/gpac/modules/jack/jack.c:189,1
    - Dst: Jack_cleanup
      Src: /src/gpac/modules/jack/jack.c:192,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/jack/jack.c:196,1
    - Dst: Jack_cleanup
      Src: /src/gpac/modules/jack/jack.c:201,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 2
    argNames:
    - nframes
    - arg
    argTypes:
    - jack_nframes_t
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 151
    functionDepth: 2
    functionLinenumber: 151
    functionLinenumberEnd: 205
    functionName: onBufferSizeChanged
    functionSourceFile: /src/gpac/modules/jack/jack.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_calloc
    - Jack_cleanup
    - jack_port_get_buffer
    linkageType: ''
    returnType: int
    signature: int onBufferSizeChanged (jack_nframes_t nframes, void *arg)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/modules/jack/jack.c:215,1
    - Dst: snprintf
      Src: /src/gpac/modules/jack/jack.c:216,1
    - Dst: gf_sys_get_process_id
      Src: /src/gpac/modules/jack/jack.c:216,1
    - Dst: gf_module_get_bool
      Src: /src/gpac/modules/jack/jack.c:218,1
    - Dst: gf_module_get_bool
      Src: /src/gpac/modules/jack/jack.c:220,1
    - Dst: jack_client_open
      Src: /src/gpac/modules/jack/jack.c:223,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/jack/jack.c:226,1
    - Dst: Jack_cleanup
      Src: /src/gpac/modules/jack/jack.c:229,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/jack/jack.c:235,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 4
    argNames:
    - dr
    - os_handle
    - num_buffers
    - total_duration
    argTypes:
    - GF_AudioOutput*
    - void*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 207
    functionDepth: 2
    functionLinenumber: 207
    functionLinenumberEnd: 241
    functionName: Jack_Setup
    functionSourceFile: /src/gpac/modules/jack/jack.c
    functionUses: 0
    functionsReached:
    - gf_sys_get_process_id
    - gf_module_get_bool
    - snprintf
    - GF_LOG
    - jack_client_open
    - memset
    - Jack_cleanup
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err Jack_Setup (GF_AudioOutput * dr, void *os_handle, u32 num_buffers,\n
      \           u32 total_duration)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Jack_cleanup
      Src: /src/gpac/modules/jack/jack.c:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 243
    functionDepth: 2
    functionLinenumber: 243
    functionLinenumberEnd: 248
    functionName: Jack_Shutdown
    functionSourceFile: /src/gpac/modules/jack/jack.c
    functionUses: 0
    functionsReached:
    - Jack_cleanup
    linkageType: ''
    returnType: void
    signature: void Jack_Shutdown (GF_AudioOutput * dr)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: jack_get_sample_rate
      Src: /src/gpac/modules/jack/jack.c:275,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/jack/jack.c:276,1
    - Dst: gf_audio_fmt_name
      Src: /src/gpac/modules/jack/jack.c:278,1
    - Dst: gf_calloc
      Src: /src/gpac/modules/jack/jack.c:280,1
    - Dst: snprintf
      Src: /src/gpac/modules/jack/jack.c:289,1
    - Dst: jack_port_register
      Src: /src/gpac/modules/jack/jack.c:292,1
    - Dst: jack_set_buffer_size_callback
      Src: /src/gpac/modules/jack/jack.c:300,1
    - Dst: jack_set_process_callback
      Src: /src/gpac/modules/jack/jack.c:301,1
    - Dst: jack_get_buffer_size
      Src: /src/gpac/modules/jack/jack.c:303,1
    - Dst: jack_activate
      Src: /src/gpac/modules/jack/jack.c:306,1
    - Dst: jack_get_ports
      Src: /src/gpac/modules/jack/jack.c:310,1
    - Dst: jack_connect
      Src: /src/gpac/modules/jack/jack.c:320,1
    - Dst: jack_port_name
      Src: /src/gpac/modules/jack/jack.c:321,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/jack/jack.c:325,1
    - Dst: jack_free
      Src: /src/gpac/modules/jack/jack.c:332,1
    - Dst: Jack_cleanup
      Src: /src/gpac/modules/jack/jack.c:338,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 56
    argCount: 5
    argNames:
    - dr
    - SampleRate
    - NbChannels
    - audioFormat
    - channel_cfg
    argTypes:
    - GF_AudioOutput*
    - u32*
    - u32*
    - u32*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 252
    functionDepth: 2
    functionLinenumber: 252
    functionLinenumberEnd: 340
    functionName: Jack_Configure
    functionSourceFile: /src/gpac/modules/jack/jack.c
    functionUses: 0
    functionsReached:
    - jack_port_name
    - jack_set_buffer_size_callback
    - jack_get_buffer_size
    - snprintf
    - jack_get_ports
    - GF_LOG
    - gf_audio_fmt_name
    - jack_port_register
    - jack_connect
    - gf_calloc
    - jack_free
    - Jack_cleanup
    - jack_get_sample_rate
    - jack_set_process_callback
    - jack_activate
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Jack_Configure(GF_AudioOutput * dr, u32 * SampleRate, u32 *
      NbChannels, u32 *audioFormat, u64 channel_cfg)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/jack/jack.c:355,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - dr
    - Volume
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 342
    functionDepth: 1
    functionLinenumber: 342
    functionLinenumberEnd: 357
    functionName: Jack_SetVolume
    functionSourceFile: /src/gpac/modules/jack/jack.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void Jack_SetVolume (GF_AudioOutput * dr, u32 Volume)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/jack/jack.c:362,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dr
    - Pan
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 364
    functionName: Jack_SetPan
    functionSourceFile: /src/gpac/modules/jack/jack.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void Jack_SetPan (GF_AudioOutput * dr, u32 Pan)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - dr
    - Priority
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 366
    functionDepth: 0
    functionLinenumber: 366
    functionLinenumberEnd: 373
    functionName: Jack_SetPriority
    functionSourceFile: /src/gpac/modules/jack/jack.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Jack_SetPriority (GF_AudioOutput * dr, u32 Priority)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: jack_recompute_total_latencies
      Src: /src/gpac/modules/jack/jack.c:386,1
    - Dst: jack_port_get_total_latency
      Src: /src/gpac/modules/jack/jack.c:390,1
    - Dst: jack_get_sample_rate
      Src: /src/gpac/modules/jack/jack.c:394,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/jack/jack.c:395,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 375
    functionDepth: 1
    functionLinenumber: 375
    functionLinenumberEnd: 398
    functionName: Jack_GetAudioDelay
    functionSourceFile: /src/gpac/modules/jack/jack.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - jack_get_sample_rate
    - jack_port_get_total_latency
    - jack_recompute_total_latencies
    linkageType: ''
    returnType: u32
    signature: u32 Jack_GetAudioDelay (GF_AudioOutput * dr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: jack_get_sample_rate
      Src: /src/gpac/modules/jack/jack.c:407,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/jack/jack.c:409,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - dr
    - desired_sr
    - NbChannels
    - nbBitsPerSample
    argTypes:
    - GF_AudioOutput*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 400
    functionDepth: 1
    functionLinenumber: 400
    functionLinenumberEnd: 412
    functionName: Jack_QueryOutputSampleRate
    functionSourceFile: /src/gpac/modules/jack/jack.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - jack_get_sample_rate
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err Jack_QueryOutputSampleRate (GF_AudioOutput * dr, u32 * desired_sr,\n
      \                           u32 * NbChannels, u32 * nbBitsPerSample)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/jack/jack.c:425,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/jack/jack.c:428,1
    - Dst: gf_free
      Src: /src/gpac/modules/jack/jack.c:431,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/jack/jack.c:459,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 461
      start: 420
    functionDepth: 1
    functionLinenumber: 420
    functionLinenumberEnd: 461
    functionName: NewJackOutput
    functionSourceFile: /src/gpac/modules/jack/jack.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_REGISTER_MODULE_INTERFACE
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: 'void *

      NewJackOutput ()'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Jack_cleanup
      Src: /src/gpac/modules/jack/jack.c:468,1
    - Dst: gf_free
      Src: /src/gpac/modules/jack/jack.c:469,1
    - Dst: gf_free
      Src: /src/gpac/modules/jack/jack.c:471,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 463
    functionDepth: 2
    functionLinenumber: 463
    functionLinenumberEnd: 472
    functionName: DeleteJackOutput
    functionSourceFile: /src/gpac/modules/jack/jack.c
    functionUses: 0
    functionsReached:
    - gf_free
    - Jack_cleanup
    linkageType: ''
    returnType: void
    signature: void DeleteJackOutput (void *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 479
    functionDepth: 0
    functionLinenumber: 479
    functionLinenumberEnd: 487
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/jack/jack.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NewJackOutput
      Src: /src/gpac/modules/jack/jack.c:494,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 489
    functionDepth: 2
    functionLinenumber: 489
    functionLinenumberEnd: 497
    functionName: GF_BaseInterface *LoadInterface (u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/jack/jack.c
    functionUses: 0
    functionsReached:
    - NewJackOutput
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface (u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DeleteJackOutput
      Src: /src/gpac/modules/jack/jack.c:503,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 499
    functionDepth: 3
    functionLinenumber: 499
    functionLinenumberEnd: 504
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/jack/jack.c
    functionUses: 0
    functionsReached:
    - DeleteJackOutput
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface (GF_BaseInterface * ifce)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: caca_free_display
      Src: /src/gpac/modules/caca_out/caca_out.c:63,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/caca_out/caca_out.c:66,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/modules/caca_out/caca_out.c:67,1
    - Dst: caca_free_dither
      Src: /src/gpac/modules/caca_out/caca_out.c:68,1
    - Dst: gf_free
      Src: /src/gpac/modules/caca_out/caca_out.c:69,1
    - Dst: caca_free_canvas
      Src: /src/gpac/modules/caca_out/caca_out.c:72,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 74
    functionName: cacao_shutdown
    functionSourceFile: /src/gpac/modules/caca_out/caca_out.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - caca_free_dither
    - gf_list_count
    - caca_free_display
    - caca_free_canvas
    linkageType: ''
    returnType: void
    signature: void cacao_shutdown(GF_VideoOutput *dr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: cacao_shutdown
      Src: /src/gpac/modules/caca_out/caca_out.c:80,1
    - Dst: caca_create_canvas
      Src: /src/gpac/modules/caca_out/caca_out.c:81,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/caca_out/caca_out.c:83,1
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/caca_out/caca_out.c:88,1
    - Dst: getenv
      Src: /src/gpac/modules/caca_out/caca_out.c:92,1
    - Dst: caca_create_display_with_driver
      Src: /src/gpac/modules/caca_out/caca_out.c:98,1
    - Dst: caca_create_display
      Src: /src/gpac/modules/caca_out/caca_out.c:100,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/caca_out/caca_out.c:103,1
    - Dst: caca_set_display_time
      Src: /src/gpac/modules/caca_out/caca_out.c:108,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/caca_out/caca_out.c:109,1
    - Dst: caca_get_canvas_width
      Src: /src/gpac/modules/caca_out/caca_out.c:109,1
    - Dst: caca_get_canvas_height
      Src: /src/gpac/modules/caca_out/caca_out.c:109,1
    - Dst: caca_get_display_driver
      Src: /src/gpac/modules/caca_out/caca_out.c:109,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 4
    argNames:
    - dr
    - os_handle
    - os_display
    - init_flags
    argTypes:
    - struct _video_out*
    - void*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 111
    functionName: cacao_setup
    functionSourceFile: /src/gpac/modules/caca_out/caca_out.c
    functionUses: 0
    functionsReached:
    - caca_create_display_with_driver
    - caca_create_canvas
    - GF_LOG
    - caca_create_display
    - gf_module_get_key
    - caca_get_display_driver
    - cacao_shutdown
    - caca_get_canvas_height
    - caca_get_canvas_width
    - getenv
    - caca_set_display_time
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cacao_setup(struct _video_out *dr, void *os_handle, void *os_display,
      u32 init_flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - dr
    - bFullScreenOn
    - screen_width
    - screen_height
    argTypes:
    - GF_VideoOutput*
    - Bool
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: cacao_fullscreen
    functionSourceFile: /src/gpac/modules/caca_out/caca_out.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cacao_fullscreen(GF_VideoOutput *dr, Bool bFullScreenOn, u32
      *screen_width, u32 *screen_height)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: caca_dither_bitmap
      Src: /src/gpac/modules/caca_out/caca_out.c:122,1
    - Dst: caca_get_canvas_width
      Src: /src/gpac/modules/caca_out/caca_out.c:122,1
    - Dst: caca_get_canvas_height
      Src: /src/gpac/modules/caca_out/caca_out.c:122,1
    - Dst: caca_refresh_display
      Src: /src/gpac/modules/caca_out/caca_out.c:124,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - dr
    - dest
    argTypes:
    - GF_VideoOutput*
    - GF_Window*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 126
    functionName: cacao_flush
    functionSourceFile: /src/gpac/modules/caca_out/caca_out.c
    functionUses: 0
    functionsReached:
    - caca_get_canvas_height
    - caca_get_canvas_width
    - caca_refresh_display
    - caca_dither_bitmap
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cacao_flush(GF_VideoOutput *dr, GF_Window *dest)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: caca_get_event
      Src: /src/gpac/modules/caca_out/caca_out.c:133,1
    - Dst: caca_get_event_type
      Src: /src/gpac/modules/caca_out/caca_out.c:137,1
    - Dst: caca_get_event_type
      Src: /src/gpac/modules/caca_out/caca_out.c:141,1
    - Dst: caca_get_event_type
      Src: /src/gpac/modules/caca_out/caca_out.c:145,1
    - Dst: caca_get_event_mouse_x
      Src: /src/gpac/modules/caca_out/caca_out.c:148,1
    - Dst: caca_get_canvas_width
      Src: /src/gpac/modules/caca_out/caca_out.c:150,1
    - Dst: caca_get_event_mouse_y
      Src: /src/gpac/modules/caca_out/caca_out.c:152,1
    - Dst: caca_get_canvas_height
      Src: /src/gpac/modules/caca_out/caca_out.c:154,1
    - Dst: caca_get_event_type
      Src: /src/gpac/modules/caca_out/caca_out.c:156,1
    - Dst: caca_get_event_type
      Src: /src/gpac/modules/caca_out/caca_out.c:160,1
    - Dst: caca_get_event_type
      Src: /src/gpac/modules/caca_out/caca_out.c:164,1
    - Dst: memset
      Src: /src/gpac/modules/caca_out/caca_out.c:165,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/caca_out/caca_out.c:167,1
    - Dst: caca_get_event_type
      Src: /src/gpac/modules/caca_out/caca_out.c:169,1
    - Dst: memset
      Src: /src/gpac/modules/caca_out/caca_out.c:170,1
    - Dst: memset
      Src: /src/gpac/modules/caca_out/caca_out.c:177,1
    - Dst: caca_get_event_key_ch
      Src: /src/gpac/modules/caca_out/caca_out.c:179,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/caca_out/caca_out.c:221,1
    - Dst: memset
      Src: /src/gpac/modules/caca_out/caca_out.c:224,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/caca_out/caca_out.c:228,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 154
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 232
    functionName: cacao_check_event
    functionSourceFile: /src/gpac/modules/caca_out/caca_out.c
    functionUses: 0
    functionsReached:
    - caca_get_event
    - caca_get_event_key_ch
    - GF_VideoOutput*::on_event
    - caca_get_canvas_height
    - memset
    - caca_get_canvas_width
    - caca_get_event_type
    - caca_get_event_mouse_x
    - caca_get_event_mouse_y
    linkageType: ''
    returnType: void
    signature: void cacao_check_event(GF_VideoOutput *dr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/modules/caca_out/caca_out.c:239,1
    - Dst: caca_put_str
      Src: /src/gpac/modules/caca_out/caca_out.c:242,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - msg
    argTypes:
    - CacaOutCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 248
    functionName: cacao_print_message
    functionSourceFile: /src/gpac/modules/caca_out/caca_out.c
    functionUses: 0
    functionsReached:
    - strchr
    - caca_put_str
    linkageType: ''
    returnType: void
    signature: void cacao_print_message(CacaOutCtx *ctx, char *msg)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: cacao_check_event
      Src: /src/gpac/modules/caca_out/caca_out.c:254,1
    - Dst: caca_set_mouse
      Src: /src/gpac/modules/caca_out/caca_out.c:260,1
    - Dst: caca_set_cursor
      Src: /src/gpac/modules/caca_out/caca_out.c:261,1
    - Dst: caca_set_display_title
      Src: /src/gpac/modules/caca_out/caca_out.c:264,1
    - Dst: gf_free
      Src: /src/gpac/modules/caca_out/caca_out.c:269,1
    - Dst: caca_free_dither
      Src: /src/gpac/modules/caca_out/caca_out.c:271,1
    - Dst: gf_free
      Src: /src/gpac/modules/caca_out/caca_out.c:277,1
    - Dst: caca_free_dither
      Src: /src/gpac/modules/caca_out/caca_out.c:279,1
    - Dst: cacao_print_message
      Src: /src/gpac/modules/caca_out/caca_out.c:283,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 38
    argCount: 2
    argNames:
    - dr
    - evt
    argTypes:
    - GF_VideoOutput*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 287
    functionName: cacao_process_event
    functionSourceFile: /src/gpac/modules/caca_out/caca_out.c
    functionUses: 0
    functionsReached:
    - gf_free
    - cacao_print_message
    - caca_set_display_title
    - caca_set_mouse
    - caca_free_dither
    - caca_set_cursor
    - cacao_check_event
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cacao_process_event(GF_VideoOutput *dr, GF_Event *evt)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/caca_out/caca_out.c:291,1
    - Dst: caca_set_dither_antialias
      Src: /src/gpac/modules/caca_out/caca_out.c:292,1
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/caca_out/caca_out.c:293,1
    - Dst: caca_set_dither_color
      Src: /src/gpac/modules/caca_out/caca_out.c:294,1
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/caca_out/caca_out.c:295,1
    - Dst: caca_set_dither_charset
      Src: /src/gpac/modules/caca_out/caca_out.c:296,1
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/caca_out/caca_out.c:297,1
    - Dst: caca_set_dither_algorithm
      Src: /src/gpac/modules/caca_out/caca_out.c:298,1
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/caca_out/caca_out.c:299,1
    - Dst: caca_set_dither_brightness
      Src: /src/gpac/modules/caca_out/caca_out.c:300,1
    - Dst: atof
      Src: /src/gpac/modules/caca_out/caca_out.c:300,1
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/caca_out/caca_out.c:301,1
    - Dst: caca_set_dither_gamma
      Src: /src/gpac/modules/caca_out/caca_out.c:302,1
    - Dst: atof
      Src: /src/gpac/modules/caca_out/caca_out.c:302,1
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/caca_out/caca_out.c:303,1
    - Dst: caca_set_dither_contrast
      Src: /src/gpac/modules/caca_out/caca_out.c:304,1
    - Dst: atof
      Src: /src/gpac/modules/caca_out/caca_out.c:304,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 2
    argNames:
    - dr
    - dither
    argTypes:
    - GF_VideoOutput*
    - caca_dither_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 289
    functionDepth: 1
    functionLinenumber: 289
    functionLinenumberEnd: 305
    functionName: set_dither_options
    functionSourceFile: /src/gpac/modules/caca_out/caca_out.c
    functionUses: 0
    functionsReached:
    - caca_set_dither_brightness
    - atof
    - caca_set_dither_contrast
    - caca_set_dither_antialias
    - gf_module_get_key
    - caca_set_dither_color
    - caca_set_dither_charset
    - caca_set_dither_gamma
    - caca_set_dither_algorithm
    linkageType: ''
    returnType: void
    signature: void set_dither_options(GF_VideoOutput *dr, caca_dither_t *dither)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/modules/caca_out/caca_out.c:314,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/caca_out/caca_out.c:316,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/caca_out/caca_out.c:360,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/caca_out/caca_out.c:362,1
    - Dst: caca_free_dither
      Src: /src/gpac/modules/caca_out/caca_out.c:367,1
    - Dst: gf_pixel_get_bytes_per_pixel
      Src: /src/gpac/modules/caca_out/caca_out.c:368,1
    - Dst: caca_create_dither
      Src: /src/gpac/modules/caca_out/caca_out.c:369,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/caca_out/caca_out.c:373,1
    - Dst: set_dither_options
      Src: /src/gpac/modules/caca_out/caca_out.c:378,1
    - Dst: caca_get_canvas_width
      Src: /src/gpac/modules/caca_out/caca_out.c:382,1
    - Dst: caca_get_canvas_height
      Src: /src/gpac/modules/caca_out/caca_out.c:383,1
    - Dst: caca_dither_bitmap
      Src: /src/gpac/modules/caca_out/caca_out.c:391,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 66
    argCount: 5
    argNames:
    - dr
    - video_src
    - src_wnd
    - dst_wnd
    - overlay_type
    argTypes:
    - GF_VideoOutput*
    - GF_VideoSurface*
    - GF_Window*
    - GF_Window*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 307
    functionDepth: 2
    functionLinenumber: 307
    functionLinenumberEnd: 393
    functionName: cacao_blit
    functionSourceFile: /src/gpac/modules/caca_out/caca_out.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - set_dither_options
    - GF_SAFEALLOC
    - GF_LOG
    - caca_free_dither
    - caca_dither_bitmap
    - gf_list_count
    - caca_get_canvas_height
    - caca_create_dither
    - gf_list_add
    - caca_get_canvas_width
    - gf_pixel_get_bytes_per_pixel
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cacao_blit(GF_VideoOutput *dr, GF_VideoSurface *video_src, GF_Window
      *src_wnd, GF_Window *dst_wnd, u32 overlay_type)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/caca_out/caca_out.c:401,1
    - Dst: caca_create_dither
      Src: /src/gpac/modules/caca_out/caca_out.c:404,1
    - Dst: set_dither_options
      Src: /src/gpac/modules/caca_out/caca_out.c:406,1
    - Dst: memset
      Src: /src/gpac/modules/caca_out/caca_out.c:408,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 3
    argNames:
    - driv
    - video_info
    - do_lock
    argTypes:
    - GF_VideoOutput*
    - GF_VideoSurface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 395
    functionDepth: 2
    functionLinenumber: 395
    functionLinenumberEnd: 416
    functionName: cacao_lock_backbuffer
    functionSourceFile: /src/gpac/modules/caca_out/caca_out.c
    functionUses: 0
    functionsReached:
    - memset
    - caca_create_dither
    - set_dither_options
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cacao_lock_backbuffer(GF_VideoOutput *driv, GF_VideoSurface
      *video_info, Bool do_lock)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/modules/caca_out/caca_out.c:436,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - driv
    - nb_args
    - opt_desc
    argTypes:
    - GF_VideoOutput*
    - u32*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 432
    functionDepth: 0
    functionLinenumber: 432
    functionLinenumberEnd: 438
    functionName: cacao_push_arg
    functionSourceFile: /src/gpac/modules/caca_out/caca_out.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    linkageType: ''
    returnType: GF_GPACArg
    signature: GF_GPACArg *cacao_push_arg(GF_VideoOutput *driv, u32 *nb_args, const
      char *opt_desc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: cacao_push_arg
      Src: /src/gpac/modules/caca_out/caca_out.c:442,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/caca_out/caca_out.c:443,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/modules/caca_out/caca_out.c:447,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/modules/caca_out/caca_out.c:448,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/modules/caca_out/caca_out.c:450,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 6
    argNames:
    - driv
    - nb_args
    - opt_name
    - opt_desc
    - values
    - def
    argTypes:
    - GF_VideoOutput*
    - u32*
    - char*
    - char*
    - char**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 440
    functionDepth: 1
    functionLinenumber: 440
    functionLinenumberEnd: 452
    functionName: print_opts
    functionSourceFile: /src/gpac/modules/caca_out/caca_out.c
    functionUses: 0
    functionsReached:
    - gf_dynstrcat
    - cacao_push_arg
    - gf_strdup
    linkageType: ''
    returnType: void
    signature: void print_opts(GF_VideoOutput *driv, u32 *nb_args, const char *opt_name,
      const char *opt_desc, char const * const * values, const char *def)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: caca_create_canvas
      Src: /src/gpac/modules/caca_out/caca_out.c:458,1
    - Dst: getenv
      Src: /src/gpac/modules/caca_out/caca_out.c:462,1
    - Dst: caca_create_display_with_driver
      Src: /src/gpac/modules/caca_out/caca_out.c:463,1
    - Dst: caca_create_display
      Src: /src/gpac/modules/caca_out/caca_out.c:466,1
    - Dst: print_opts
      Src: /src/gpac/modules/caca_out/caca_out.c:468,1
    - Dst: caca_get_display_driver_list
      Src: /src/gpac/modules/caca_out/caca_out.c:468,1
    - Dst: caca_free_display
      Src: /src/gpac/modules/caca_out/caca_out.c:469,1
    - Dst: caca_free_canvas
      Src: /src/gpac/modules/caca_out/caca_out.c:470,1
    - Dst: caca_create_dither
      Src: /src/gpac/modules/caca_out/caca_out.c:473,1
    - Dst: print_opts
      Src: /src/gpac/modules/caca_out/caca_out.c:474,1
    - Dst: caca_get_dither_antialias_list
      Src: /src/gpac/modules/caca_out/caca_out.c:474,1
    - Dst: caca_get_dither_antialias
      Src: /src/gpac/modules/caca_out/caca_out.c:474,1
    - Dst: print_opts
      Src: /src/gpac/modules/caca_out/caca_out.c:475,1
    - Dst: caca_get_dither_color_list
      Src: /src/gpac/modules/caca_out/caca_out.c:475,1
    - Dst: caca_get_dither_color
      Src: /src/gpac/modules/caca_out/caca_out.c:475,1
    - Dst: print_opts
      Src: /src/gpac/modules/caca_out/caca_out.c:476,1
    - Dst: caca_get_dither_charset_list
      Src: /src/gpac/modules/caca_out/caca_out.c:476,1
    - Dst: caca_get_dither_charset
      Src: /src/gpac/modules/caca_out/caca_out.c:476,1
    - Dst: print_opts
      Src: /src/gpac/modules/caca_out/caca_out.c:477,1
    - Dst: caca_get_dither_algorithm_list
      Src: /src/gpac/modules/caca_out/caca_out.c:477,1
    - Dst: caca_get_dither_algorithm
      Src: /src/gpac/modules/caca_out/caca_out.c:477,1
    - Dst: caca_free_dither
      Src: /src/gpac/modules/caca_out/caca_out.c:479,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - drv
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 454
    functionDepth: 2
    functionLinenumber: 454
    functionLinenumberEnd: 480
    functionName: cacao_load_options
    functionSourceFile: /src/gpac/modules/caca_out/caca_out.c
    functionUses: 0
    functionsReached:
    - caca_create_display_with_driver
    - caca_get_dither_antialias_list
    - caca_get_dither_charset
    - caca_get_dither_algorithm_list
    - caca_create_canvas
    - caca_create_display
    - caca_get_display_driver_list
    - caca_free_dither
    - caca_get_dither_antialias
    - caca_get_dither_color
    - caca_create_dither
    - caca_free_display
    - caca_get_dither_algorithm
    - print_opts
    - caca_get_dither_color_list
    - caca_get_dither_charset_list
    - getenv
    - caca_free_canvas
    linkageType: ''
    returnType: void
    signature: void cacao_load_options(GF_VideoOutput *drv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/caca_out/caca_out.c:487,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/caca_out/caca_out.c:488,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/caca_out/caca_out.c:490,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/caca_out/caca_out.c:502,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/modules/caca_out/caca_out.c:505,1
    - Dst: cacao_load_options
      Src: /src/gpac/modules/caca_out/caca_out.c:506,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/caca_out/caca_out.c:508,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 482
    functionDepth: 3
    functionLinenumber: 482
    functionLinenumberEnd: 511
    functionName: cacao_new
    functionSourceFile: /src/gpac/modules/caca_out/caca_out.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_opts_set_key
    - GF_SAFEALLOC
    - cacao_load_options
    - GF_REGISTER_MODULE_INTERFACE
    - gf_opts_get_bool
    linkageType: ''
    returnType: void
    signature: void *cacao_new()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: caca_free_display
      Src: /src/gpac/modules/caca_out/caca_out.c:517,1
    - Dst: caca_free_canvas
      Src: /src/gpac/modules/caca_out/caca_out.c:518,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/caca_out/caca_out.c:520,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/modules/caca_out/caca_out.c:521,1
    - Dst: caca_free_dither
      Src: /src/gpac/modules/caca_out/caca_out.c:522,1
    - Dst: gf_free
      Src: /src/gpac/modules/caca_out/caca_out.c:523,1
    - Dst: gf_free
      Src: /src/gpac/modules/caca_out/caca_out.c:527,1
    - Dst: gf_free
      Src: /src/gpac/modules/caca_out/caca_out.c:528,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/caca_out/caca_out.c:531,1
    - Dst: caca_free_dither
      Src: /src/gpac/modules/caca_out/caca_out.c:533,1
    - Dst: gf_free
      Src: /src/gpac/modules/caca_out/caca_out.c:534,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/caca_out/caca_out.c:536,1
    - Dst: gf_free
      Src: /src/gpac/modules/caca_out/caca_out.c:537,1
    - Dst: gf_free
      Src: /src/gpac/modules/caca_out/caca_out.c:538,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 26
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 539
      start: 513
    functionDepth: 1
    functionLinenumber: 513
    functionLinenumberEnd: 539
    functionName: cacao_del
    functionSourceFile: /src/gpac/modules/caca_out/caca_out.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_opts_set_key
    - caca_free_dither
    - gf_list_count
    - caca_free_display
    - gf_list_del
    - caca_free_canvas
    linkageType: ''
    returnType: void
    signature: void cacao_del(void *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 544
    functionDepth: 0
    functionLinenumber: 544
    functionLinenumberEnd: 552
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/caca_out/caca_out.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: cacao_new
      Src: /src/gpac/modules/caca_out/caca_out.c:558,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 555
    functionDepth: 4
    functionLinenumber: 555
    functionLinenumberEnd: 560
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/caca_out/caca_out.c
    functionUses: 0
    functionsReached:
    - cacao_new
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: cacao_del
      Src: /src/gpac/modules/caca_out/caca_out.c:568,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 563
    functionDepth: 2
    functionLinenumber: 563
    functionLinenumberEnd: 571
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/caca_out/caca_out.c
    functionUses: 0
    functionsReached:
    - cacao_del
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - dr
    - w
    - h
    argTypes:
    - GF_VideoOutput*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 54
    functionName: raw_resize
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout-bitmap.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err raw_resize(GF_VideoOutput *dr, u32 w, u32 h)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:61,1
    - Dst: AndroidBitmap_getInfo
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:68,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 4
    argNames:
    - dr
    - os_handle
    - os_display
    - init_flags
    argTypes:
    - GF_VideoOutput*
    - void*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 82
    functionName: RAW_Setup
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout-bitmap.c
    functionUses: 0
    functionsReached:
    - AndroidBitmap_getInfo
    - GF_LOG
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err RAW_Setup(GF_VideoOutput *dr, void *os_handle, void *os_display,
      u32 init_flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 90
    functionName: RAW_Shutdown
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout-bitmap.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void RAW_Shutdown(GF_VideoOutput *dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - dr
    - dest
    argTypes:
    - GF_VideoOutput*
    - GF_Window*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 97
    functionName: RAW_Flush
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout-bitmap.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err RAW_Flush(GF_VideoOutput *dr, GF_Window *dest)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:104,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:107,1
    - Dst: AndroidBitmap_lockPixels
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:111,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:112,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:116,1
    - Dst: memset
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:117,1
    - Dst: AndroidBitmap_unlockPixels
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:130,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 3
    argNames:
    - dr
    - vi
    - do_lock
    argTypes:
    - GF_VideoOutput*
    - GF_VideoSurface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 135
    functionName: RAW_LockBackBuffer
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout-bitmap.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - memset
    - AndroidBitmap_unlockPixels
    - AndroidBitmap_lockPixels
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err RAW_LockBackBuffer(GF_VideoOutput *dr, GF_VideoSurface *vi,
      Bool do_lock)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:139,1
    - Dst: raw_resize
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:144,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - dr
    - evt
    argTypes:
    - GF_VideoOutput*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 137
    functionDepth: 2
    functionLinenumber: 137
    functionLinenumberEnd: 150
    functionName: RAW_ProcessEvent
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout-bitmap.c
    functionUses: 0
    functionsReached:
    - raw_resize
    - GF_LOG
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err RAW_ProcessEvent(GF_VideoOutput *dr, GF_Event *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:155,1
    - Dst: memset
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:156,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:157,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:159,1
    - Dst: memset
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:160,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 174
    functionName: NewRawVideoOutput
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout-bitmap.c
    functionUses: 0
    functionsReached:
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - GF_LOG
    - gf_malloc
    linkageType: ''
    returnType: GF_VideoOutput
    signature: GF_VideoOutput *NewRawVideoOutput()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RAW_Shutdown
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:181,1
    - Dst: gf_free
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:183,1
    - Dst: gf_free
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:184,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 176
    functionDepth: 2
    functionLinenumber: 176
    functionLinenumberEnd: 187
    functionName: DeleteVideoOutput
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout-bitmap.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - RAW_Shutdown
    linkageType: ''
    returnType: void
    signature: void DeleteVideoOutput(void *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 198
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout-bitmap.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NewRawVideoOutput
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:203,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 200
    functionDepth: 2
    functionLinenumber: 200
    functionLinenumberEnd: 205
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout-bitmap.c
    functionUses: 0
    functionsReached:
    - NewRawVideoOutput
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DeleteVideoOutput
      Src: /src/gpac/modules/droid_out/droid_vout-bitmap.c:212,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 215
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout-bitmap.c
    functionUses: 0
    functionsReached:
    - DeleteVideoOutput
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: glGetError
      Src: /src/gpac/modules/droid_out/droid_vout.c:114,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout.c:116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 118
    functionName: gl_check_error
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - glGetError
    linkageType: ''
    returnType: void
    signature: void gl_check_error()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: glGetUniformLocation
      Src: /src/gpac/modules/droid_out/droid_vout.c:123,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout.c:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - glsl_program
    - uniform_name
    argTypes:
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 128
    functionName: gf_glGetUniformLocation
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - glGetUniformLocation
    linkageType: ''
    returnType: GLint
    signature: GLint gf_glGetUniformLocation(u32 glsl_program, const char *uniform_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: glGetAttribLocation
      Src: /src/gpac/modules/droid_out/droid_vout.c:132,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout.c:134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - glsl_program
    - attrib_name
    argTypes:
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 137
    functionName: gf_glGetAttribLocation
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - glGetAttribLocation
    linkageType: ''
    returnType: GLint
    signature: GLint gf_glGetAttribLocation(u32 glsl_program, const char *attrib_name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/modules/droid_out/droid_vout.c:149,1
    - Dst: glShaderSource
      Src: /src/gpac/modules/droid_out/droid_vout.c:150,1
    - Dst: glCompileShader
      Src: /src/gpac/modules/droid_out/droid_vout.c:151,1
    - Dst: glGetShaderiv
      Src: /src/gpac/modules/droid_out/droid_vout.c:153,1
    - Dst: glGetShaderiv
      Src: /src/gpac/modules/droid_out/droid_vout.c:156,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/droid_out/droid_vout.c:158,1
    - Dst: glGetShaderInfoLog
      Src: /src/gpac/modules/droid_out/droid_vout.c:159,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout.c:160,1
    - Dst: gf_free
      Src: /src/gpac/modules/droid_out/droid_vout.c:161,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - shader_id
    - name
    - source
    argTypes:
    - u32
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 166
    functionName: compile_shader
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 1
    functionsReached:
    - gf_free
    - glGetShaderInfoLog
    - glGetShaderiv
    - GF_LOG
    - strlen
    - glCompileShader
    - glShaderSource
    - gf_malloc
    linkageType: ''
    returnType: Bool
    signature: Bool compile_shader(u32 shader_id, const char *name, const char *source)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout.c:171,1
    - Dst: glGetString
      Src: /src/gpac/modules/droid_out/droid_vout.c:172,1
    - Dst: glGetString
      Src: /src/gpac/modules/droid_out/droid_vout.c:173,1
    - Dst: glGetString
      Src: /src/gpac/modules/droid_out/droid_vout.c:174,1
    - Dst: glGetString
      Src: /src/gpac/modules/droid_out/droid_vout.c:175,1
    - Dst: glClearColor
      Src: /src/gpac/modules/droid_out/droid_vout.c:179,1
    - Dst: glClearDepthf
      Src: /src/gpac/modules/droid_out/droid_vout.c:182,1
    - Dst: glEnable
      Src: /src/gpac/modules/droid_out/droid_vout.c:185,1
    - Dst: glDepthFunc
      Src: /src/gpac/modules/droid_out/droid_vout.c:188,1
    - Dst: gl_check_error
      Src: /src/gpac/modules/droid_out/droid_vout.c:195,1
    - Dst: gf_mx_init
      Src: /src/gpac/modules/droid_out/droid_vout.c:196,1
    - Dst: glCreateProgram
      Src: /src/gpac/modules/droid_out/droid_vout.c:197,1
    - Dst: glCreateShader
      Src: /src/gpac/modules/droid_out/droid_vout.c:198,1
    - Dst: glCreateShader
      Src: /src/gpac/modules/droid_out/droid_vout.c:199,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout.c:201,1
    - Dst: compile_shader
      Src: /src/gpac/modules/droid_out/droid_vout.c:202,1
    - Dst: compile_shader
      Src: /src/gpac/modules/droid_out/droid_vout.c:204,1
    - Dst: glAttachShader
      Src: /src/gpac/modules/droid_out/droid_vout.c:207,1
    - Dst: glAttachShader
      Src: /src/gpac/modules/droid_out/droid_vout.c:208,1
    - Dst: glLinkProgram
      Src: /src/gpac/modules/droid_out/droid_vout.c:209,1
    - Dst: glGetProgramiv
      Src: /src/gpac/modules/droid_out/droid_vout.c:211,1
    - Dst: glGetProgramiv
      Src: /src/gpac/modules/droid_out/droid_vout.c:215,1
    - Dst: glGetProgramInfoLog
      Src: /src/gpac/modules/droid_out/droid_vout.c:216,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout.c:217,1
    - Dst: glUseProgram
      Src: /src/gpac/modules/droid_out/droid_vout.c:220,1
    - Dst: gl_check_error
      Src: /src/gpac/modules/droid_out/droid_vout.c:221,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 31
    argCount: 1
    argNames:
    - rc
    argTypes:
    - AndroidContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 169
    functionDepth: 2
    functionLinenumber: 169
    functionLinenumberEnd: 223
    functionName: initGLES2
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - glClearDepthf
    - glGetProgramInfoLog
    - glCreateProgram
    - compile_shader
    - GF_LOG
    - glDepthFunc
    - glClearColor
    - gf_mx_init
    - glCreateShader
    - glGetProgramiv
    - gl_check_error
    - glUseProgram
    - glLinkProgram
    - glGetString
    - glAttachShader
    - glEnable
    linkageType: ''
    returnType: Bool
    signature: Bool initGLES2(AndroidContext *rc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gl_check_error
      Src: /src/gpac/modules/droid_out/droid_vout.c:232,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/modules/droid_out/droid_vout.c:233,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout.c:235,1
    - Dst: gl_check_error
      Src: /src/gpac/modules/droid_out/droid_vout.c:238,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/droid_out/droid_vout.c:242,1
    - Dst: glUniformMatrix4fv
      Src: /src/gpac/modules/droid_out/droid_vout.c:243,1
    - Dst: glUniformMatrix4fv
      Src: /src/gpac/modules/droid_out/droid_vout.c:245,1
    - Dst: gl_check_error
      Src: /src/gpac/modules/droid_out/droid_vout.c:247,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - program
    - mat
    - name
    argTypes:
    - GLuint
    - Fixed*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 225
    functionDepth: 2
    functionLinenumber: 225
    functionLinenumberEnd: 248
    functionName: load_matrix_shaders
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - glUniformMatrix4fv
    - gl_check_error
    - glGetUniformLocation
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void load_matrix_shaders(GLuint program, Fixed *mat, const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout.c:256,1
    - Dst: gf_mx_init
      Src: /src/gpac/modules/droid_out/droid_vout.c:260,1
    - Dst: gf_divfix
      Src: /src/gpac/modules/droid_out/droid_vout.c:263,1
    - Dst: gf_divfix
      Src: /src/gpac/modules/droid_out/droid_vout.c:264,1
    - Dst: gf_divfix
      Src: /src/gpac/modules/droid_out/droid_vout.c:265,1
    - Dst: gf_divfix
      Src: /src/gpac/modules/droid_out/droid_vout.c:266,1
    - Dst: gf_divfix
      Src: /src/gpac/modules/droid_out/droid_vout.c:267,1
    - Dst: gf_divfix
      Src: /src/gpac/modules/droid_out/droid_vout.c:268,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 7
    argNames:
    - left
    - right
    - bottom
    - top
    - near
    - far
    - rc
    argTypes:
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - AndroidContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 253
    functionDepth: 1
    functionLinenumber: 253
    functionLinenumberEnd: 270
    functionName: calculate_ortho
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_divfix
    - gf_mx_init
    linkageType: ''
    returnType: void
    signature: void calculate_ortho(Fixed left, Fixed right, Fixed bottom, Fixed top,
      Fixed near, Fixed far,  AndroidContext *rc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: glGetString
      Src: /src/gpac/modules/droid_out/droid_vout.c:278,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout.c:280,1
    - Dst: glGetString
      Src: /src/gpac/modules/droid_out/droid_vout.c:281,1
    - Dst: glGetString
      Src: /src/gpac/modules/droid_out/droid_vout.c:282,1
    - Dst: glGetString
      Src: /src/gpac/modules/droid_out/droid_vout.c:283,1
    - Dst: strstr
      Src: /src/gpac/modules/droid_out/droid_vout.c:287,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout.c:289,1
    - Dst: strstr
      Src: /src/gpac/modules/droid_out/droid_vout.c:291,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout.c:293,1
    - Dst: glShadeModel
      Src: /src/gpac/modules/droid_out/droid_vout.c:297,1
    - Dst: glClearColor
      Src: /src/gpac/modules/droid_out/droid_vout.c:300,1
    - Dst: glClearDepthf
      Src: /src/gpac/modules/droid_out/droid_vout.c:303,1
    - Dst: glEnable
      Src: /src/gpac/modules/droid_out/droid_vout.c:306,1
    - Dst: glDepthFunc
      Src: /src/gpac/modules/droid_out/droid_vout.c:309,1
    - Dst: glHint
      Src: /src/gpac/modules/droid_out/droid_vout.c:312,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 1
    argNames:
    - rc
    argTypes:
    - AndroidContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 276
    functionDepth: 1
    functionLinenumber: 276
    functionLinenumberEnd: 313
    functionName: initGL
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - glClearDepthf
    - GF_LOG
    - glShadeModel
    - glClearColor
    - glDepthFunc
    - strstr
    - glHint
    - glGetString
    - glEnable
    linkageType: ''
    returnType: void
    signature: void initGL(AndroidContext *rc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tan
      Src: /src/gpac/modules/droid_out/droid_vout.c:321,1
    - Dst: glFrustumx
      Src: /src/gpac/modules/droid_out/droid_vout.c:325,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - fovy
    - aspect
    - zNear
    - zFar
    argTypes:
    - GLfloat
    - GLfloat
    - GLfloat
    - GLfloat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 329
    functionName: gluPerspective
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - tan
    - glFrustumx
    linkageType: ''
    returnType: void
    signature: void gluPerspective(GLfloat fovy, GLfloat aspect, GLfloat zNear, GLfloat
      zFar)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout.c:333,1
    - Dst: glViewport
      Src: /src/gpac/modules/droid_out/droid_vout.c:340,1
    - Dst: glMatrixMode
      Src: /src/gpac/modules/droid_out/droid_vout.c:343,1
    - Dst: glLoadIdentity
      Src: /src/gpac/modules/droid_out/droid_vout.c:344,1
    - Dst: glOrthox
      Src: /src/gpac/modules/droid_out/droid_vout.c:347,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/droid_out/droid_vout.c:347,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/droid_out/droid_vout.c:347,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/droid_out/droid_vout.c:347,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/droid_out/droid_vout.c:347,1
    - Dst: glMatrixMode
      Src: /src/gpac/modules/droid_out/droid_vout.c:350,1
    - Dst: glLoadIdentity
      Src: /src/gpac/modules/droid_out/droid_vout.c:353,1
    - Dst: gl_check_error
      Src: /src/gpac/modules/droid_out/droid_vout.c:355,1
    - Dst: glUseProgram
      Src: /src/gpac/modules/droid_out/droid_vout.c:356,1
    - Dst: calculate_ortho
      Src: /src/gpac/modules/droid_out/droid_vout.c:357,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/droid_out/droid_vout.c:357,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/droid_out/droid_vout.c:357,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/droid_out/droid_vout.c:357,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/droid_out/droid_vout.c:357,1
    - Dst: load_matrix_shaders
      Src: /src/gpac/modules/droid_out/droid_vout.c:358,1
    - Dst: load_matrix_shaders
      Src: /src/gpac/modules/droid_out/droid_vout.c:359,1
    - Dst: gl_check_error
      Src: /src/gpac/modules/droid_out/droid_vout.c:360,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 1
    argNames:
    - rc
    argTypes:
    - AndroidContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 331
    functionDepth: 3
    functionLinenumber: 331
    functionLinenumberEnd: 362
    functionName: resizeWindow
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - GF_LOG
    - glOrthox
    - glViewport
    - glMatrixMode
    - calculate_ortho
    - gl_check_error
    - load_matrix_shaders
    - glUseProgram
    - glLoadIdentity
    linkageType: ''
    returnType: void
    signature: void resizeWindow(AndroidContext *rc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gl_check_error
      Src: /src/gpac/modules/droid_out/droid_vout.c:376,1
    - Dst: glColor4f
      Src: /src/gpac/modules/droid_out/droid_vout.c:382,1
    - Dst: glMaterialfv
      Src: /src/gpac/modules/droid_out/droid_vout.c:383,1
    - Dst: glMaterialfv
      Src: /src/gpac/modules/droid_out/droid_vout.c:384,1
    - Dst: glMaterialfv
      Src: /src/gpac/modules/droid_out/droid_vout.c:385,1
    - Dst: glClear
      Src: /src/gpac/modules/droid_out/droid_vout.c:388,1
    - Dst: gl_check_error
      Src: /src/gpac/modules/droid_out/droid_vout.c:389,1
    - Dst: glEnable
      Src: /src/gpac/modules/droid_out/droid_vout.c:393,1
    - Dst: glUseProgram
      Src: /src/gpac/modules/droid_out/droid_vout.c:395,1
    - Dst: glActiveTexture
      Src: /src/gpac/modules/droid_out/droid_vout.c:396,1
    - Dst: glBindTexture
      Src: /src/gpac/modules/droid_out/droid_vout.c:397,1
    - Dst: gl_check_error
      Src: /src/gpac/modules/droid_out/droid_vout.c:398,1
    - Dst: glTexParameteri
      Src: /src/gpac/modules/droid_out/droid_vout.c:399,1
    - Dst: glTexParameteri
      Src: /src/gpac/modules/droid_out/droid_vout.c:400,1
    - Dst: glTexEnvx
      Src: /src/gpac/modules/droid_out/droid_vout.c:402,1
    - Dst: glTexParameteri
      Src: /src/gpac/modules/droid_out/droid_vout.c:404,1
    - Dst: glTexParameteri
      Src: /src/gpac/modules/droid_out/droid_vout.c:405,1
    - Dst: glTexImage2D
      Src: /src/gpac/modules/droid_out/droid_vout.c:407,1
    - Dst: gl_check_error
      Src: /src/gpac/modules/droid_out/droid_vout.c:410,1
    - Dst: gl_check_error
      Src: /src/gpac/modules/droid_out/droid_vout.c:413,1
    - Dst: glTexParameteriv
      Src: /src/gpac/modules/droid_out/droid_vout.c:415,1
    - Dst: glDrawTexsOES
      Src: /src/gpac/modules/droid_out/droid_vout.c:416,1
    - Dst: gl_check_error
      Src: /src/gpac/modules/droid_out/droid_vout.c:419,1
    - Dst: glEnableClientState
      Src: /src/gpac/modules/droid_out/droid_vout.c:423,1
    - Dst: glEnableClientState
      Src: /src/gpac/modules/droid_out/droid_vout.c:424,1
    - Dst: glVertexPointer
      Src: /src/gpac/modules/droid_out/droid_vout.c:427,1
    - Dst: glTexCoordPointer
      Src: /src/gpac/modules/droid_out/droid_vout.c:428,1
    - Dst: glLoadIdentity
      Src: /src/gpac/modules/droid_out/droid_vout.c:431,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/modules/droid_out/droid_vout.c:433,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/modules/droid_out/droid_vout.c:436,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/modules/droid_out/droid_vout.c:437,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/modules/droid_out/droid_vout.c:439,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/modules/droid_out/droid_vout.c:441,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/modules/droid_out/droid_vout.c:442,1
    - Dst: glDrawArrays
      Src: /src/gpac/modules/droid_out/droid_vout.c:474,1
    - Dst: glDisableClientState
      Src: /src/gpac/modules/droid_out/droid_vout.c:477,1
    - Dst: glDisableClientState
      Src: /src/gpac/modules/droid_out/droid_vout.c:478,1
    - Dst: glDisable
      Src: /src/gpac/modules/droid_out/droid_vout.c:482,1
    - Dst: gl_check_error
      Src: /src/gpac/modules/droid_out/droid_vout.c:484,1
    - Dst: glFinish
      Src: /src/gpac/modules/droid_out/droid_vout.c:487,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 70
    argCount: 1
    argNames:
    - rc
    argTypes:
    - AndroidContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 364
    functionDepth: 2
    functionLinenumber: 364
    functionLinenumberEnd: 488
    functionName: drawGLScene
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - glMaterialfv
    - glTexParameteriv
    - glUseProgram
    - glEnableClientState
    - glActiveTexture
    - glGetAttribLocation
    - glBindTexture
    - glDisable
    - glDrawArrays
    - glDisableClientState
    - gl_check_error
    - glTexParameteri
    - glEnableVertexAttribArray
    - glLoadIdentity
    - glVertexAttribPointer
    - glDrawTexsOES
    - glEnable
    - glTexCoordPointer
    - glColor4f
    - glClear
    - glTexImage2D
    - glTexEnvx
    - glVertexPointer
    - glFinish
    linkageType: ''
    returnType: void
    signature: void drawGLScene(AndroidContext *rc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gl_check_error
      Src: /src/gpac/modules/droid_out/droid_vout.c:492,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout.c:495,1
    - Dst: glDeleteTextures
      Src: /src/gpac/modules/droid_out/droid_vout.c:498,1
    - Dst: gf_free
      Src: /src/gpac/modules/droid_out/droid_vout.c:503,1
    - Dst: gl_check_error
      Src: /src/gpac/modules/droid_out/droid_vout.c:506,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - rc
    argTypes:
    - AndroidContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 490
    functionDepth: 2
    functionLinenumber: 490
    functionLinenumberEnd: 508
    functionName: releaseTexture
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - gl_check_error
    - GF_LOG
    - glDeleteTextures
    - gf_free
    linkageType: ''
    returnType: int
    signature: int releaseTexture(AndroidContext *rc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: releaseTexture
      Src: /src/gpac/modules/droid_out/droid_vout.c:515,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout.c:517,1
    - Dst: glGenTextures
      Src: /src/gpac/modules/droid_out/droid_vout.c:519,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/droid_out/droid_vout.c:521,1
    - Dst: memset
      Src: /src/gpac/modules/droid_out/droid_vout.c:522,1
    - Dst: glBindTexture
      Src: /src/gpac/modules/droid_out/droid_vout.c:525,1
    - Dst: glTexParameteri
      Src: /src/gpac/modules/droid_out/droid_vout.c:526,1
    - Dst: glTexParameteri
      Src: /src/gpac/modules/droid_out/droid_vout.c:527,1
    - Dst: glTexEnvx
      Src: /src/gpac/modules/droid_out/droid_vout.c:529,1
    - Dst: glTexParameteri
      Src: /src/gpac/modules/droid_out/droid_vout.c:531,1
    - Dst: glTexParameteri
      Src: /src/gpac/modules/droid_out/droid_vout.c:532,1
    - Dst: glTexImage2D
      Src: /src/gpac/modules/droid_out/droid_vout.c:534,1
    - Dst: glBindTexture
      Src: /src/gpac/modules/droid_out/droid_vout.c:537,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 1
    argNames:
    - rc
    argTypes:
    - AndroidContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 539
      start: 510
    functionDepth: 3
    functionLinenumber: 510
    functionLinenumberEnd: 539
    functionName: createTexture
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - glGenTextures
    - glBindTexture
    - GF_LOG
    - glTexImage2D
    - releaseTexture
    - memset
    - glTexParameteri
    - glTexEnvx
    - gf_malloc
    linkageType: ''
    returnType: int
    signature: int createTexture(AndroidContext *rc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - num
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 542
    functionDepth: 0
    functionLinenumber: 542
    functionLinenumberEnd: 548
    functionName: find_pow_2
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 find_pow_2(u32 num)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout.c:553,1
    - Dst: find_pow_2
      Src: /src/gpac/modules/droid_out/droid_vout.c:571,1
    - Dst: find_pow_2
      Src: /src/gpac/modules/droid_out/droid_vout.c:572,1
    - Dst: gl_check_error
      Src: /src/gpac/modules/droid_out/droid_vout.c:575,1
    - Dst: resizeWindow
      Src: /src/gpac/modules/droid_out/droid_vout.c:576,1
    - Dst: createTexture
      Src: /src/gpac/modules/droid_out/droid_vout.c:579,1
    - Dst: gl_check_error
      Src: /src/gpac/modules/droid_out/droid_vout.c:581,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 3
    argNames:
    - dr
    - w
    - h
    argTypes:
    - GF_VideoOutput*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 583
      start: 550
    functionDepth: 4
    functionLinenumber: 550
    functionLinenumberEnd: 583
    functionName: droid_Resize
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - find_pow_2
    - GF_LOG
    - resizeWindow
    - createTexture
    - gl_check_error
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err droid_Resize(GF_VideoOutput *dr, u32 w, u32 h)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout.c:589,1
    - Dst: initGLES2
      Src: /src/gpac/modules/droid_out/droid_vout.c:595,1
    - Dst: glUseProgram
      Src: /src/gpac/modules/droid_out/droid_vout.c:597,1
    - Dst: gf_glGetUniformLocation
      Src: /src/gpac/modules/droid_out/droid_vout.c:598,1
    - Dst: glUniform1i
      Src: /src/gpac/modules/droid_out/droid_vout.c:599,1
    - Dst: initGL
      Src: /src/gpac/modules/droid_out/droid_vout.c:604,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 4
    argNames:
    - dr
    - os_handle
    - os_display
    - init_flags
    argTypes:
    - GF_VideoOutput*
    - void*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 585
    functionDepth: 3
    functionLinenumber: 585
    functionLinenumberEnd: 607
    functionName: droid_Setup
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - initGLES2
    - gf_glGetUniformLocation
    - initGL
    - glUseProgram
    - glUniform1i
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err droid_Setup(GF_VideoOutput *dr, void *os_handle, void *os_display,
      u32 init_flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout.c:613,1
    - Dst: releaseTexture
      Src: /src/gpac/modules/droid_out/droid_vout.c:614,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 615
      start: 610
    functionDepth: 3
    functionLinenumber: 610
    functionLinenumberEnd: 615
    functionName: droid_Shutdown
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - releaseTexture
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void droid_Shutdown(GF_VideoOutput *dr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: drawGLScene
      Src: /src/gpac/modules/droid_out/droid_vout.c:622,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dr
    - dest
    argTypes:
    - GF_VideoOutput*
    - GF_Window*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 618
    functionDepth: 3
    functionLinenumber: 618
    functionLinenumberEnd: 624
    functionName: droid_Flush
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - drawGLScene
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err droid_Flush(GF_VideoOutput *dr, GF_Window *dest)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/modules/droid_out/droid_vout.c:636,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 3
    argNames:
    - dr
    - vi
    - do_lock
    argTypes:
    - GF_VideoOutput*
    - GF_VideoSurface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 655
      start: 626
    functionDepth: 0
    functionLinenumber: 626
    functionLinenumberEnd: 655
    functionName: droid_LockBackBuffer
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err droid_LockBackBuffer(GF_VideoOutput *dr, GF_VideoSurface *vi,
      Bool do_lock)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gl_check_error
      Src: /src/gpac/modules/droid_out/droid_vout.c:668,1
    - Dst: glUseProgram
      Src: /src/gpac/modules/droid_out/droid_vout.c:669,1
    - Dst: calculate_ortho
      Src: /src/gpac/modules/droid_out/droid_vout.c:670,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/droid_out/droid_vout.c:670,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/droid_out/droid_vout.c:670,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/droid_out/droid_vout.c:670,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/droid_out/droid_vout.c:670,1
    - Dst: load_matrix_shaders
      Src: /src/gpac/modules/droid_out/droid_vout.c:671,1
    - Dst: load_matrix_shaders
      Src: /src/gpac/modules/droid_out/droid_vout.c:672,1
    - Dst: gl_check_error
      Src: /src/gpac/modules/droid_out/droid_vout.c:673,1
    - Dst: glMatrixMode
      Src: /src/gpac/modules/droid_out/droid_vout.c:676,1
    - Dst: glLoadIdentity
      Src: /src/gpac/modules/droid_out/droid_vout.c:677,1
    - Dst: glOrthox
      Src: /src/gpac/modules/droid_out/droid_vout.c:680,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/droid_out/droid_vout.c:680,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/droid_out/droid_vout.c:680,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/droid_out/droid_vout.c:680,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/droid_out/droid_vout.c:680,1
    - Dst: glMatrixMode
      Src: /src/gpac/modules/droid_out/droid_vout.c:683,1
    - Dst: glLoadIdentity
      Src: /src/gpac/modules/droid_out/droid_vout.c:686,1
    - Dst: droid_Resize
      Src: /src/gpac/modules/droid_out/droid_vout.c:690,1
    - Dst: droid_Resize
      Src: /src/gpac/modules/droid_out/droid_vout.c:695,1
    - Dst: droid_Resize
      Src: /src/gpac/modules/droid_out/droid_vout.c:698,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 43
    argCount: 2
    argNames:
    - dr
    - evt
    argTypes:
    - GF_VideoOutput*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 715
      start: 657
    functionDepth: 5
    functionLinenumber: 657
    functionLinenumberEnd: 715
    functionName: droid_ProcessEvent
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - glOrthox
    - glMatrixMode
    - calculate_ortho
    - gl_check_error
    - load_matrix_shaders
    - droid_Resize
    - glUseProgram
    - glLoadIdentity
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err droid_ProcessEvent(GF_VideoOutput *dr, GF_Event *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: droid_Resize
      Src: /src/gpac/modules/droid_out/droid_vout.c:724,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - dr
    - bOn
    - outWidth
    - outHeight
    argTypes:
    - GF_VideoOutput*
    - Bool
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 725
      start: 717
    functionDepth: 5
    functionLinenumber: 717
    functionLinenumberEnd: 725
    functionName: droid_SetFullScreen
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - droid_Resize
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err droid_SetFullScreen(GF_VideoOutput *dr, Bool bOn, u32 *outWidth,
      u32 *outHeight)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/droid_out/droid_vout.c:730,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_out/droid_vout.c:731,1
    - Dst: memset
      Src: /src/gpac/modules/droid_out/droid_vout.c:732,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/droid_out/droid_vout.c:733,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/droid_out/droid_vout.c:735,1
    - Dst: memset
      Src: /src/gpac/modules/droid_out/droid_vout.c:736,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 727
    functionDepth: 1
    functionLinenumber: 727
    functionLinenumberEnd: 753
    functionName: NewAndroidVideoOutput
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - gf_malloc
    linkageType: ''
    returnType: GF_VideoOutput
    signature: GF_VideoOutput *NewAndroidVideoOutput()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: droid_Shutdown
      Src: /src/gpac/modules/droid_out/droid_vout.c:760,1
    - Dst: gf_free
      Src: /src/gpac/modules/droid_out/droid_vout.c:762,1
    - Dst: gf_free
      Src: /src/gpac/modules/droid_out/droid_vout.c:764,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 755
    functionDepth: 4
    functionLinenumber: 755
    functionLinenumberEnd: 765
    functionName: DeleteAndroidVideoOutput
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - gf_free
    - droid_Shutdown
    linkageType: ''
    returnType: void
    signature: void DeleteAndroidVideoOutput(void *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 776
      start: 768
    functionDepth: 0
    functionLinenumber: 768
    functionLinenumberEnd: 776
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NewAndroidVideoOutput
      Src: /src/gpac/modules/droid_out/droid_vout.c:781,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 783
      start: 778
    functionDepth: 2
    functionLinenumber: 778
    functionLinenumberEnd: 783
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - NewAndroidVideoOutput
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DeleteAndroidVideoOutput
      Src: /src/gpac/modules/droid_out/droid_vout.c:790,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 785
    functionDepth: 5
    functionLinenumber: 785
    functionLinenumberEnd: 793
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/droid_out/droid_vout.c
    functionUses: 0
    functionsReached:
    - DeleteAndroidVideoOutput
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: XFree
      Src: /src/gpac/modules/x11_out/x11_out.c:62,1
    - Dst: XvUngrabPort
      Src: /src/gpac/modules/x11_out/x11_out.c:66,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - xwin
    argTypes:
    - XWindow*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 69
    functionName: X11_DestroyOverlay
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - XvUngrabPort
    - XFree
    linkageType: ''
    returnType: void
    signature: void X11_DestroyOverlay(XWindow *xwin)
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 37
    argCount: 2
    argNames:
    - pf
    - a_pf
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 110
    functionName: is_same_yuv
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool is_same_yuv(u32 pf, u32 a_pf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/modules/x11_out/x11_out.c:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pf
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionName: X11_GetPixelFormat
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - GF_4CC
    linkageType: ''
    returnType: u32
    signature: u32 X11_GetPixelFormat(u32 pf)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: XvQueryExtension
      Src: /src/gpac/modules/x11_out/x11_out.c:124,1
    - Dst: XvQueryAdaptors
      Src: /src/gpac/modules/x11_out/x11_out.c:125,1
    - Dst: DefaultRootWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:125,1
    - Dst: XvListImageFormats
      Src: /src/gpac/modules/x11_out/x11_out.c:136,1
    - Dst: X11_GetPixelFormat
      Src: /src/gpac/modules/x11_out/x11_out.c:141,1
    - Dst: is_same_yuv
      Src: /src/gpac/modules/x11_out/x11_out.c:143,1
    - Dst: XvQueryPortAttributes
      Src: /src/gpac/modules/x11_out/x11_out.c:149,1
    - Dst: strcmp
      Src: /src/gpac/modules/x11_out/x11_out.c:151,1
    - Dst: XInternAtom
      Src: /src/gpac/modules/x11_out/x11_out.c:152,1
    - Dst: XvGetPortAttribute
      Src: /src/gpac/modules/x11_out/x11_out.c:153,1
    - Dst: free
      Src: /src/gpac/modules/x11_out/x11_out.c:164,1
    - Dst: XvGrabPort
      Src: /src/gpac/modules/x11_out/x11_out.c:170,1
    - Dst: XFree
      Src: /src/gpac/modules/x11_out/x11_out.c:179,1
    - Dst: XvFreeAdaptorInfo
      Src: /src/gpac/modules/x11_out/x11_out.c:182,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 44
    argCount: 3
    argNames:
    - vout
    - pixel_format
    - check_color
    argTypes:
    - GF_VideoOutput*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 185
    functionName: X11_GetXVideoPort
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - is_same_yuv
    - XvQueryPortAttributes
    - XvListImageFormats
    - XvGetPortAttribute
    - X11_GetPixelFormat
    - XvGrabPort
    - DefaultRootWindow
    - strcmp
    - XvFreeAdaptorInfo
    - XvQueryExtension
    - XvQueryAdaptors
    - free
    - XInternAtom
    - XFree
    linkageType: ''
    returnType: int
    signature: int X11_GetXVideoPort(GF_VideoOutput *vout, u32 pixel_format, Bool
      check_color)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: X11_DestroyOverlay
      Src: /src/gpac/modules/x11_out/x11_out.c:193,1
    - Dst: X11_GetXVideoPort
      Src: /src/gpac/modules/x11_out/x11_out.c:195,1
    - Dst: X11_GetXVideoPort
      Src: /src/gpac/modules/x11_out/x11_out.c:197,1
    - Dst: XvCreateImage
      Src: /src/gpac/modules/x11_out/x11_out.c:204,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:206,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:210,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/modules/x11_out/x11_out.c:212,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 3
    argNames:
    - vout
    - VideoWidth
    - VideoHeight
    argTypes:
    - GF_VideoOutput*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 186
    functionDepth: 2
    functionLinenumber: 186
    functionLinenumberEnd: 215
    functionName: X11_InitOverlay
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - GF_LOG
    - X11_GetXVideoPort
    - XvCreateImage
    - X11_DestroyOverlay
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err X11_InitOverlay(GF_VideoOutput *vout, u32 VideoWidth, u32 VideoHeight)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: X11_InitOverlay
      Src: /src/gpac/modules/x11_out/x11_out.c:236,1
    - Dst: XFree
      Src: /src/gpac/modules/x11_out/x11_out.c:243,1
    - Dst: XvCreateImage
      Src: /src/gpac/modules/x11_out/x11_out.c:244,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:247,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:266,1
    - Dst: XvPutImage
      Src: /src/gpac/modules/x11_out/x11_out.c:271,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 42
    argCount: 5
    argNames:
    - vout
    - video_src
    - src
    - dest
    - overlay_type
    argTypes:
    - struct _video_out*
    - GF_VideoSurface*
    - GF_Window*
    - GF_Window*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 217
    functionDepth: 3
    functionLinenumber: 217
    functionLinenumberEnd: 276
    functionName: X11_Blit
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - X11_InitOverlay
    - GF_LOG
    - XvCreateImage
    - XvPutImage
    - XFree
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err X11_Blit(struct _video_out *vout, GF_VideoSurface *video_src,
      GF_Window *src, GF_Window *dest, u32 overlay_type)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: X11VID
      Src: /src/gpac/modules/x11_out/x11_out.c:287,1
    - Dst: XSync
      Src: /src/gpac/modules/x11_out/x11_out.c:294,1
    - Dst: glFlush
      Src: /src/gpac/modules/x11_out/x11_out.c:295,1
    - Dst: glXSwapBuffers
      Src: /src/gpac/modules/x11_out/x11_out.c:296,1
    - Dst: XClearWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:303,1
    - Dst: XSync
      Src: /src/gpac/modules/x11_out/x11_out.c:304,1
    - Dst: XSync
      Src: /src/gpac/modules/x11_out/x11_out.c:306,1
    - Dst: XShmPutImage
      Src: /src/gpac/modules/x11_out/x11_out.c:307,1
    - Dst: XSync
      Src: /src/gpac/modules/x11_out/x11_out.c:312,1
    - Dst: XPutImage
      Src: /src/gpac/modules/x11_out/x11_out.c:314,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 2
    argNames:
    - vout
    - dest
    argTypes:
    - struct _video_out*
    - GF_Window*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 281
    functionDepth: 1
    functionLinenumber: 281
    functionLinenumberEnd: 318
    functionName: X11_Flush
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - X11VID
    - glFlush
    - XClearWindow
    - XSync
    - XShmPutImage
    - glXSwapBuffers
    - XPutImage
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err X11_Flush(struct _video_out *vout, GF_Window * dest)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:492,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 2
    argNames:
    - X11Key
    - evt
    argTypes:
    - u32
    - GF_EventKey*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 468
    functionDepth: 1
    functionLinenumber: 468
    functionLinenumberEnd: 494
    functionName: x11_translate_key
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void x11_translate_key(u32 X11Key, GF_EventKey *evt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: XFlush
      Src: /src/gpac/modules/x11_out/x11_out.c:504,1
    - Dst: XEventsQueued
      Src: /src/gpac/modules/x11_out/x11_out.c:505,1
    - Dst: ConnectionNumber
      Src: /src/gpac/modules/x11_out/x11_out.c:512,1
    - Dst: FD_ZERO
      Src: /src/gpac/modules/x11_out/x11_out.c:513,1
    - Dst: FD_SET
      Src: /src/gpac/modules/x11_out/x11_out.c:514,1
    - Dst: select
      Src: /src/gpac/modules/x11_out/x11_out.c:515,1
    - Dst: XPending
      Src: /src/gpac/modules/x11_out/x11_out.c:516,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - display
    argTypes:
    - Display*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 501
    functionDepth: 0
    functionLinenumber: 501
    functionLinenumberEnd: 521
    functionName: X11_Pending
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - ConnectionNumber
    - XEventsQueued
    - XFlush
    - select
    - FD_SET
    - XPending
    - FD_ZERO
    linkageType: ''
    returnType: int
    signature: int X11_Pending(Display *display)
  - BBCount: 48
    BranchProfiles: []
    Callsites:
    - Dst: X11VID
      Src: /src/gpac/modules/x11_out/x11_out.c:532,1
    - Dst: XSync
      Src: /src/gpac/modules/x11_out/x11_out.c:537,1
    - Dst: X11_Pending
      Src: /src/gpac/modules/x11_out/x11_out.c:539,1
    - Dst: XNextEvent
      Src: /src/gpac/modules/x11_out/x11_out.c:540,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/x11_out/x11_out.c:554,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/x11_out/x11_out.c:559,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/x11_out/x11_out.c:568,1
    - Dst: memset
      Src: /src/gpac/modules/x11_out/x11_out.c:574,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/x11_out/x11_out.c:576,1
    - Dst: x11_translate_key
      Src: /src/gpac/modules/x11_out/x11_out.c:582,1
    - Dst: XKeycodeToKeysym
      Src: /src/gpac/modules/x11_out/x11_out.c:582,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/x11_out/x11_out.c:584,1
    - Dst: XLookupString
      Src: /src/gpac/modules/x11_out/x11_out.c:588,1
    - Dst: utf8_to_ucs4
      Src: /src/gpac/modules/x11_out/x11_out.c:590,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/x11_out/x11_out.c:592,1
    - Dst: XInternAtom
      Src: /src/gpac/modules/x11_out/x11_out.c:606,1
    - Dst: XGetSelectionOwner
      Src: /src/gpac/modules/x11_out/x11_out.c:608,1
    - Dst: DefaultRootWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:610,1
    - Dst: XInternAtom
      Src: /src/gpac/modules/x11_out/x11_out.c:614,1
    - Dst: XConvertSelection
      Src: /src/gpac/modules/x11_out/x11_out.c:615,1
    - Dst: XGetWindowProperty
      Src: /src/gpac/modules/x11_out/x11_out.c:619,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/x11_out/x11_out.c:621,1
    - Dst: memcpy
      Src: /src/gpac/modules/x11_out/x11_out.c:623,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/x11_out/x11_out.c:627,1
    - Dst: gf_free
      Src: /src/gpac/modules/x11_out/x11_out.c:628,1
    - Dst: XFree
      Src: /src/gpac/modules/x11_out/x11_out.c:631,1
    - Dst: XInternAtom
      Src: /src/gpac/modules/x11_out/x11_out.c:635,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/x11_out/x11_out.c:637,1
    - Dst: XChangeProperty
      Src: /src/gpac/modules/x11_out/x11_out.c:639,1
    - Dst: DefaultRootWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:639,1
    - Dst: strlen
      Src: /src/gpac/modules/x11_out/x11_out.c:639,1
    - Dst: gf_free
      Src: /src/gpac/modules/x11_out/x11_out.c:640,1
    - Dst: XGetSelectionOwner
      Src: /src/gpac/modules/x11_out/x11_out.c:643,1
    - Dst: XSetSelectionOwner
      Src: /src/gpac/modules/x11_out/x11_out.c:644,1
    - Dst: XGetSelectionOwner
      Src: /src/gpac/modules/x11_out/x11_out.c:646,1
    - Dst: XSetSelectionOwner
      Src: /src/gpac/modules/x11_out/x11_out.c:647,1
    - Dst: XSetInputFocus
      Src: /src/gpac/modules/x11_out/x11_out.c:656,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/x11_out/x11_out.c:667,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/x11_out/x11_out.c:671,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/x11_out/x11_out.c:675,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/x11_out/x11_out.c:680,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/x11_out/x11_out.c:685,1
    - Dst: XSetInputFocus
      Src: /src/gpac/modules/x11_out/x11_out.c:689,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/x11_out/x11_out.c:696,1
    - Dst: memset
      Src: /src/gpac/modules/x11_out/x11_out.c:716,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/x11_out/x11_out.c:718,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 167
    argCount: 1
    argNames:
    - vout
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 726
      start: 527
    functionDepth: 2
    functionLinenumber: 527
    functionLinenumberEnd: 726
    functionName: X11_HandleEvents
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - gf_free
    - XSetSelectionOwner
    - XSync
    - GF_VideoOutput*::on_event
    - memset
    - XNextEvent
    - XGetSelectionOwner
    - memcpy
    - XConvertSelection
    - XLookupString
    - XGetWindowProperty
    - X11_Pending
    - X11VID
    - XChangeProperty
    - XInternAtom
    - gf_malloc
    - strlen
    - utf8_to_ucs4
    - x11_translate_key
    - XKeycodeToKeysym
    - XSetInputFocus
    - DefaultRootWindow
    - XFree
    linkageType: ''
    returnType: void
    signature: void X11_HandleEvents(GF_VideoOutput *vout)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/modules/x11_out/x11_out.c:737,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:740,1
    - Dst: XSync
      Src: /src/gpac/modules/x11_out/x11_out.c:741,1
    - Dst: glXCreateContext
      Src: /src/gpac/modules/x11_out/x11_out.c:742,1
    - Dst: XSync
      Src: /src/gpac/modules/x11_out/x11_out.c:743,1
    - Dst: glXMakeCurrent
      Src: /src/gpac/modules/x11_out/x11_out.c:748,1
    - Dst: gf_module_get_bool
      Src: /src/gpac/modules/x11_out/x11_out.c:751,1
    - Dst: glXGetProcAddress
      Src: /src/gpac/modules/x11_out/x11_out.c:752,1
    - Dst: my_glXSwapIntervalEXT
      Src: /src/gpac/modules/x11_out/x11_out.c:754,1
    - Dst: glXGetProcAddress
      Src: /src/gpac/modules/x11_out/x11_out.c:756,1
    - Dst: my_glXSwapIntervalMESA
      Src: /src/gpac/modules/x11_out/x11_out.c:758,1
    - Dst: glXGetProcAddress
      Src: /src/gpac/modules/x11_out/x11_out.c:760,1
    - Dst: my_glXSwapIntervalSGI
      Src: /src/gpac/modules/x11_out/x11_out.c:762,1
    - Dst: XSync
      Src: /src/gpac/modules/x11_out/x11_out.c:768,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/x11_out/x11_out.c:771,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 36
    argCount: 1
    argNames:
    - vout
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 774
      start: 731
    functionDepth: 1
    functionLinenumber: 731
    functionLinenumberEnd: 774
    functionName: X11_SetupGL
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - gf_module_get_bool
    - glXMakeCurrent
    - XSync
    - glXCreateContext
    - my_glXSwapIntervalMESA
    - GF_LOG
    - my_glXSwapIntervalSGI
    - my_glXSwapIntervalEXT
    - GF_VideoOutput*::on_event
    - memset
    - glXGetProcAddress
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err X11_SetupGL(GF_VideoOutput *vout)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XSync
      Src: /src/gpac/modules/x11_out/x11_out.c:778,1
    - Dst: glXMakeCurrent
      Src: /src/gpac/modules/x11_out/x11_out.c:780,1
    - Dst: glXDestroyContext
      Src: /src/gpac/modules/x11_out/x11_out.c:781,1
    - Dst: XSync
      Src: /src/gpac/modules/x11_out/x11_out.c:785,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - xWin
    argTypes:
    - XWindow*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 786
      start: 776
    functionDepth: 0
    functionLinenumber: 776
    functionLinenumberEnd: 786
    functionName: X11_ReleaseGL
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - glXDestroyContext
    - XSync
    - glXMakeCurrent
    linkageType: ''
    returnType: void
    signature: void X11_ReleaseGL(XWindow *xWin)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: X11VID
      Src: /src/gpac/modules/x11_out/x11_out.c:793,1
    - Dst: gf_free
      Src: /src/gpac/modules/x11_out/x11_out.c:795,1
    - Dst: XShmDetach
      Src: /src/gpac/modules/x11_out/x11_out.c:800,1
    - Dst: XFreePixmap
      Src: /src/gpac/modules/x11_out/x11_out.c:802,1
    - Dst: XDestroyImage
      Src: /src/gpac/modules/x11_out/x11_out.c:806,1
    - Dst: shmdt
      Src: /src/gpac/modules/x11_out/x11_out.c:810,1
    - Dst: shmctl
      Src: /src/gpac/modules/x11_out/x11_out.c:812,1
    - Dst: gf_free
      Src: /src/gpac/modules/x11_out/x11_out.c:813,1
    - Dst: XFree
      Src: /src/gpac/modules/x11_out/x11_out.c:818,1
    - Dst: X11_DestroyOverlay
      Src: /src/gpac/modules/x11_out/x11_out.c:823,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 1
    argNames:
    - vout
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 826
      start: 791
    functionDepth: 1
    functionLinenumber: 791
    functionLinenumberEnd: 826
    functionName: X11_ReleaseBackBuffer
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - gf_free
    - X11VID
    - shmctl
    - XDestroyImage
    - shmdt
    - XShmDetach
    - XFreePixmap
    - X11_DestroyOverlay
    - XFree
    linkageType: ''
    returnType: void
    signature: void X11_ReleaseBackBuffer (GF_VideoOutput * vout)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: X11VID
      Src: /src/gpac/modules/x11_out/x11_out.c:842,1
    - Dst: X11_ReleaseBackBuffer
      Src: /src/gpac/modules/x11_out/x11_out.c:846,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/x11_out/x11_out.c:857,1
    - Dst: shmget
      Src: /src/gpac/modules/x11_out/x11_out.c:858,1
    - Dst: shmat
      Src: /src/gpac/modules/x11_out/x11_out.c:859,1
    - Dst: XShmAttach
      Src: /src/gpac/modules/x11_out/x11_out.c:861,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:862,1
    - Dst: XShmCreatePixmap
      Src: /src/gpac/modules/x11_out/x11_out.c:864,1
    - Dst: memset
      Src: /src/gpac/modules/x11_out/x11_out.c:867,1
    - Dst: XSetWindowBackgroundPixmap
      Src: /src/gpac/modules/x11_out/x11_out.c:868,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:871,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/x11_out/x11_out.c:873,1
    - Dst: XShmCreateImage
      Src: /src/gpac/modules/x11_out/x11_out.c:874,1
    - Dst: shmget
      Src: /src/gpac/modules/x11_out/x11_out.c:877,1
    - Dst: shmat
      Src: /src/gpac/modules/x11_out/x11_out.c:880,1
    - Dst: XShmAttach
      Src: /src/gpac/modules/x11_out/x11_out.c:882,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/x11_out/x11_out.c:886,1
    - Dst: XCreateImage
      Src: /src/gpac/modules/x11_out/x11_out.c:887,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 44
    argCount: 3
    argNames:
    - vout
    - VideoWidth
    - VideoHeight
    argTypes:
    - GF_VideoOutput*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 900
      start: 831
    functionDepth: 2
    functionLinenumber: 831
    functionLinenumberEnd: 900
    functionName: X11_InitBackBuffer
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - X11VID
    - shmat
    - GF_SAFEALLOC
    - GF_LOG
    - XShmAttach
    - XSetWindowBackgroundPixmap
    - shmget
    - memset
    - XShmCreatePixmap
    - XShmCreateImage
    - X11_ReleaseBackBuffer
    - XCreateImage
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err X11_InitBackBuffer (GF_VideoOutput * vout, u32 VideoWidth, u32
      VideoHeight)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: X11VID
      Src: /src/gpac/modules/x11_out/x11_out.c:907,1
    - Dst: X11_InitBackBuffer
      Src: /src/gpac/modules/x11_out/x11_out.c:912,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 7
    argCount: 3
    argNames:
    - vout
    - newWidth
    - newHeight
    argTypes:
    - struct _video_out*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 915
      start: 905
    functionDepth: 3
    functionLinenumber: 905
    functionLinenumberEnd: 915
    functionName: X11_ResizeBackBuffer
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - X11VID
    - X11_InitBackBuffer
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err X11_ResizeBackBuffer (struct _video_out *vout, u32 newWidth,
      u32 newHeight)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: X11VID
      Src: /src/gpac/modules/x11_out/x11_out.c:919,1
    - Dst: X11_SetupWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:921,1
    - Dst: XStoreName
      Src: /src/gpac/modules/x11_out/x11_out.c:930,1
    - Dst: XTranslateCoordinates
      Src: /src/gpac/modules/x11_out/x11_out.c:944,1
    - Dst: RootWindowOfScreen
      Src: /src/gpac/modules/x11_out/x11_out.c:944,1
    - Dst: XMoveWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:945,1
    - Dst: XMoveWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:947,1
    - Dst: XGetWindowAttributes
      Src: /src/gpac/modules/x11_out/x11_out.c:958,1
    - Dst: XMoveResizeWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:959,1
    - Dst: XSetInputFocus
      Src: /src/gpac/modules/x11_out/x11_out.c:960,1
    - Dst: XResizeWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:962,1
    - Dst: X11_SetupGL
      Src: /src/gpac/modules/x11_out/x11_out.c:970,1
    - Dst: X11_ResizeBackBuffer
      Src: /src/gpac/modules/x11_out/x11_out.c:976,1
    - Dst: glXMakeCurrent
      Src: /src/gpac/modules/x11_out/x11_out.c:983,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:984,1
    - Dst: X11_HandleEvents
      Src: /src/gpac/modules/x11_out/x11_out.c:993,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 67
    argCount: 2
    argNames:
    - vout
    - evt
    argTypes:
    - struct _video_out*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 997
      start: 917
    functionDepth: 4
    functionLinenumber: 917
    functionLinenumberEnd: 997
    functionName: X11_ProcessEvent
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - X11VID
    - XTranslateCoordinates
    - glXMakeCurrent
    - XMoveWindow
    - XMoveResizeWindow
    - GF_LOG
    - X11_SetupGL
    - X11_SetupWindow
    - XSetInputFocus
    - X11_HandleEvents
    - XResizeWindow
    - RootWindowOfScreen
    - XStoreName
    - XGetWindowAttributes
    - X11_ResizeBackBuffer
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err X11_ProcessEvent (struct _video_out * vout, GF_Event * evt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: X11VID
      Src: /src/gpac/modules/x11_out/x11_out.c:1002,1
    - Dst: XFreeGC
      Src: /src/gpac/modules/x11_out/x11_out.c:1015,1
    - Dst: XCreateGC
      Src: /src/gpac/modules/x11_out/x11_out.c:1016,1
    - Dst: XMoveResizeWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:1018,1
    - Dst: XUnmapWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:1024,1
    - Dst: XMapWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:1025,1
    - Dst: XSetInputFocus
      Src: /src/gpac/modules/x11_out/x11_out.c:1026,1
    - Dst: XRaiseWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:1027,1
    - Dst: XGrabKeyboard
      Src: /src/gpac/modules/x11_out/x11_out.c:1028,1
    - Dst: memset
      Src: /src/gpac/modules/x11_out/x11_out.c:1031,1
    - Dst: struct _video_out*::on_event
      Src: /src/gpac/modules/x11_out/x11_out.c:1035,1
    - Dst: XFreeGC
      Src: /src/gpac/modules/x11_out/x11_out.c:1039,1
    - Dst: XCreateGC
      Src: /src/gpac/modules/x11_out/x11_out.c:1040,1
    - Dst: XUnmapWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:1041,1
    - Dst: XMapWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:1042,1
    - Dst: XUngrabKeyboard
      Src: /src/gpac/modules/x11_out/x11_out.c:1043,1
    - Dst: memset
      Src: /src/gpac/modules/x11_out/x11_out.c:1047,1
    - Dst: struct _video_out*::on_event
      Src: /src/gpac/modules/x11_out/x11_out.c:1051,1
    - Dst: X11_SetupGL
      Src: /src/gpac/modules/x11_out/x11_out.c:1056,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 40
    argCount: 4
    argNames:
    - vout
    - bFullScreenOn
    - screen_width
    - screen_height
    argTypes:
    - struct _video_out*
    - u32
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1059
      start: 1000
    functionDepth: 2
    functionLinenumber: 1000
    functionLinenumberEnd: 1059
    functionName: X11_SetFullScreen
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - XFreeGC
    - X11VID
    - struct _video_out*::on_event
    - XRaiseWindow
    - XCreateGC
    - XUnmapWindow
    - XMoveResizeWindow
    - XMapWindow
    - X11_SetupGL
    - XSetInputFocus
    - XUngrabKeyboard
    - memset
    - XGrabKeyboard
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err X11_SetFullScreen (struct _video_out * vout, u32 bFullScreenOn,
      u32 * screen_width, u32 * screen_height)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: X11VID
      Src: /src/gpac/modules/x11_out/x11_out.c:1066,1
    - Dst: memset
      Src: /src/gpac/modules/x11_out/x11_out.c:1070,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 3
    argNames:
    - vout
    - vi
    - do_lock
    argTypes:
    - struct _video_out*
    - GF_VideoSurface*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1093
      start: 1064
    functionDepth: 1
    functionLinenumber: 1064
    functionLinenumberEnd: 1093
    functionName: X11_LockBackBuffer
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - X11VID
    - memset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err X11_LockBackBuffer(struct _video_out * vout, GF_VideoSurface
      * vi, u32 do_lock)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: old_handler
      Src: /src/gpac/modules/x11_out/x11_out.c:1110,1
    - Dst: XGetErrorText
      Src: /src/gpac/modules/x11_out/x11_out.c:1113,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:1114,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - display
    - event
    argTypes:
    - Display*
    - XErrorEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1117
      start: 1098
    functionDepth: 1
    functionLinenumber: 1098
    functionLinenumberEnd: 1117
    functionName: X11_BadAccess_ByPass
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - old_handler
    - GF_LOG
    - XGetErrorText
    linkageType: ''
    returnType: int
    signature: "int X11_BadAccess_ByPass(Display * display,\n                                XErrorEvent
      * event)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: XSetScreenSaver
      Src: /src/gpac/modules/x11_out/x11_out.c:1124,1
    - Dst: XGetScreenSaver
      Src: /src/gpac/modules/x11_out/x11_out.c:1127,1
    - Dst: XSetScreenSaver
      Src: /src/gpac/modules/x11_out/x11_out.c:1129,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - xwin
    - turn_on
    argTypes:
    - XWindow*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1131
      start: 1120
    functionDepth: 0
    functionLinenumber: 1120
    functionLinenumberEnd: 1131
    functionName: X11_XScreenSaverState
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - XGetScreenSaver
    - XSetScreenSaver
    linkageType: ''
    returnType: void
    signature: void X11_XScreenSaverState(XWindow *xwin, Bool turn_on)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: X11VID
      Src: /src/gpac/modules/x11_out/x11_out.c:1139,1
    - Dst: XInitThreads
      Src: /src/gpac/modules/x11_out/x11_out.c:1149,1
    - Dst: XOpenDisplay
      Src: /src/gpac/modules/x11_out/x11_out.c:1151,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:1153,1
    - Dst: DefaultScreen
      Src: /src/gpac/modules/x11_out/x11_out.c:1156,1
    - Dst: DefaultScreenOfDisplay
      Src: /src/gpac/modules/x11_out/x11_out.c:1157,1
    - Dst: DefaultVisualOfScreen
      Src: /src/gpac/modules/x11_out/x11_out.c:1158,1
    - Dst: DefaultDepth
      Src: /src/gpac/modules/x11_out/x11_out.c:1159,1
    - Dst: XWidthOfScreen
      Src: /src/gpac/modules/x11_out/x11_out.c:1162,1
    - Dst: XWidthMMOfScreen
      Src: /src/gpac/modules/x11_out/x11_out.c:1163,1
    - Dst: XHeightOfScreen
      Src: /src/gpac/modules/x11_out/x11_out.c:1164,1
    - Dst: XHeightMMOfScreen
      Src: /src/gpac/modules/x11_out/x11_out.c:1165,1
    - Dst: DisplayWidth
      Src: /src/gpac/modules/x11_out/x11_out.c:1198,1
    - Dst: DisplayHeight
      Src: /src/gpac/modules/x11_out/x11_out.c:1199,1
    - Dst: XCreateWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:1205,1
    - Dst: RootWindowOfScreen
      Src: /src/gpac/modules/x11_out/x11_out.c:1206,1
    - Dst: XSelectInput
      Src: /src/gpac/modules/x11_out/x11_out.c:1213,1
    - Dst: XCreateWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:1219,1
    - Dst: RootWindowOfScreen
      Src: /src/gpac/modules/x11_out/x11_out.c:1220,1
    - Dst: XGetWindowAttributes
      Src: /src/gpac/modules/x11_out/x11_out.c:1226,1
    - Dst: XCreateWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:1229,1
    - Dst: XMapWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:1236,1
    - Dst: XSync
      Src: /src/gpac/modules/x11_out/x11_out.c:1239,1
    - Dst: XUnmapWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:1240,1
    - Dst: XSync
      Src: /src/gpac/modules/x11_out/x11_out.c:1241,1
    - Dst: XSetErrorHandler
      Src: /src/gpac/modules/x11_out/x11_out.c:1242,1
    - Dst: XSelectInput
      Src: /src/gpac/modules/x11_out/x11_out.c:1244,1
    - Dst: XSync
      Src: /src/gpac/modules/x11_out/x11_out.c:1248,1
    - Dst: XSetErrorHandler
      Src: /src/gpac/modules/x11_out/x11_out.c:1249,1
    - Dst: XSelectInput
      Src: /src/gpac/modules/x11_out/x11_out.c:1251,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:1255,1
    - Dst: XSync
      Src: /src/gpac/modules/x11_out/x11_out.c:1257,1
    - Dst: XMapWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:1259,1
    - Dst: XAllocSizeHints
      Src: /src/gpac/modules/x11_out/x11_out.c:1261,1
    - Dst: XSetWMNormalHints
      Src: /src/gpac/modules/x11_out/x11_out.c:1268,1
    - Dst: XStoreName
      Src: /src/gpac/modules/x11_out/x11_out.c:1269,1
    - Dst: XSetWMNormalHints
      Src: /src/gpac/modules/x11_out/x11_out.c:1274,1
    - Dst: XSetClassHint
      Src: /src/gpac/modules/x11_out/x11_out.c:1280,1
    - Dst: XkbSetDetectableAutoRepeat
      Src: /src/gpac/modules/x11_out/x11_out.c:1284,1
    - Dst: XChangeProperty
      Src: /src/gpac/modules/x11_out/x11_out.c:1301,1
    - Dst: XInternAtom
      Src: /src/gpac/modules/x11_out/x11_out.c:1301,1
    - Dst: XInternAtom
      Src: /src/gpac/modules/x11_out/x11_out.c:1301,1
    - Dst: XCreateGC
      Src: /src/gpac/modules/x11_out/x11_out.c:1305,1
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/x11_out/x11_out.c:1309,1
    - Dst: strcmp
      Src: /src/gpac/modules/x11_out/x11_out.c:1310,1
    - Dst: XShmQueryVersion
      Src: /src/gpac/modules/x11_out/x11_out.c:1313,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:1315,1
    - Dst: XShmPixmapFormat
      Src: /src/gpac/modules/x11_out/x11_out.c:1316,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:1317,1
    - Dst: gf_module_get_bool
      Src: /src/gpac/modules/x11_out/x11_out.c:1325,1
    - Dst: X11_GetXVideoPort
      Src: /src/gpac/modules/x11_out/x11_out.c:1326,1
    - Dst: X11_GetXVideoPort
      Src: /src/gpac/modules/x11_out/x11_out.c:1328,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:1330,1
    - Dst: X11_GetXVideoPort
      Src: /src/gpac/modules/x11_out/x11_out.c:1332,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:1334,1
    - Dst: XvUngrabPort
      Src: /src/gpac/modules/x11_out/x11_out.c:1338,1
    - Dst: X11_GetPixelFormat
      Src: /src/gpac/modules/x11_out/x11_out.c:1340,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:1343,1
    - Dst: gf_module_get_bool
      Src: /src/gpac/modules/x11_out/x11_out.c:1347,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:1349,1
    - Dst: WhitePixel
      Src: /src/gpac/modules/x11_out/x11_out.c:1356,1
    - Dst: BlackPixel
      Src: /src/gpac/modules/x11_out/x11_out.c:1357,1
    - Dst: XChangeWindowAttributes
      Src: /src/gpac/modules/x11_out/x11_out.c:1359,1
    - Dst: XChangeWindowAttributes
      Src: /src/gpac/modules/x11_out/x11_out.c:1362,1
    - Dst: XInternAtom
      Src: /src/gpac/modules/x11_out/x11_out.c:1366,1
    - Dst: XSetWMProtocols
      Src: /src/gpac/modules/x11_out/x11_out.c:1367,1
    - Dst: memset
      Src: /src/gpac/modules/x11_out/x11_out.c:1375,1
    - Dst: RootWindowOfScreen
      Src: /src/gpac/modules/x11_out/x11_out.c:1377,1
    - Dst: XInternAtom
      Src: /src/gpac/modules/x11_out/x11_out.c:1378,1
    - Dst: XSendEvent
      Src: /src/gpac/modules/x11_out/x11_out.c:1383,1
    - Dst: RootWindowOfScreen
      Src: /src/gpac/modules/x11_out/x11_out.c:1383,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/x11_out/x11_out.c:1393,1
    - Dst: atoi
      Src: /src/gpac/modules/x11_out/x11_out.c:1395,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/x11_out/x11_out.c:1397,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/x11_out/x11_out.c:1420,1
    - Dst: atoi
      Src: /src/gpac/modules/x11_out/x11_out.c:1421,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/x11_out/x11_out.c:1423,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/x11_out/x11_out.c:1429,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/x11_out/x11_out.c:1431,1
    - Dst: strcmp
      Src: /src/gpac/modules/x11_out/x11_out.c:1433,1
    - Dst: glXGetProcAddress
      Src: /src/gpac/modules/x11_out/x11_out.c:1447,1
    - Dst: glXGetProcAddress
      Src: /src/gpac/modules/x11_out/x11_out.c:1448,1
    - Dst: glXGetProcAddress
      Src: /src/gpac/modules/x11_out/x11_out.c:1449,1
    - Dst: my_glXChooseFBConfig
      Src: /src/gpac/modules/x11_out/x11_out.c:1452,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:1456,1
    - Dst: my_glXGetVisualFromFBConfig
      Src: /src/gpac/modules/x11_out/x11_out.c:1461,1
    - Dst: my_glXGetFBConfigAttrib
      Src: /src/gpac/modules/x11_out/x11_out.c:1465,1
    - Dst: my_glXGetFBConfigAttrib
      Src: /src/gpac/modules/x11_out/x11_out.c:1466,1
    - Dst: my_glXGetFBConfigAttrib
      Src: /src/gpac/modules/x11_out/x11_out.c:1467,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:1468,1
    - Dst: glXChooseVisual
      Src: /src/gpac/modules/x11_out/x11_out.c:1471,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/x11_out/x11_out.c:1476,1
    - Dst: XCreateWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:1480,1
    - Dst: RootWindowOfScreen
      Src: /src/gpac/modules/x11_out/x11_out.c:1480,1
    - Dst: XSync
      Src: /src/gpac/modules/x11_out/x11_out.c:1488,1
    - Dst: XUnmapWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:1489,1
    - Dst: XSync
      Src: /src/gpac/modules/x11_out/x11_out.c:1490,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/x11_out/x11_out.c:1492,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/x11_out/x11_out.c:1494,1
    - Dst: strcmp
      Src: /src/gpac/modules/x11_out/x11_out.c:1495,1
    - Dst: strcmp
      Src: /src/gpac/modules/x11_out/x11_out.c:1497,1
    - Dst: XSetWMNormalHints
      Src: /src/gpac/modules/x11_out/x11_out.c:1499,1
    - Dst: strcmp
      Src: /src/gpac/modules/x11_out/x11_out.c:1500,1
    - Dst: X11_XScreenSaverState
      Src: /src/gpac/modules/x11_out/x11_out.c:1509,1
    - Dst: XFree
      Src: /src/gpac/modules/x11_out/x11_out.c:1511,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 245
    argCount: 1
    argNames:
    - vout
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1512
      start: 1136
    functionDepth: 2
    functionLinenumber: 1136
    functionLinenumberEnd: 1512
    functionName: X11_SetupWindow
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 1
    functionsReached:
    - XCreateWindow
    - DefaultScreen
    - XSetClassHint
    - XSync
    - XSetWMProtocols
    - DefaultDepth
    - XMapWindow
    - gf_opts_set_key
    - XShmQueryVersion
    - my_glXGetFBConfigAttrib
    - memset
    - RootWindowOfScreen
    - DefaultVisualOfScreen
    - gf_opts_get_key
    - atoi
    - XvUngrabPort
    - XkbSetDetectableAutoRepeat
    - XOpenDisplay
    - XShmPixmapFormat
    - DisplayWidth
    - DisplayHeight
    - XCreateGC
    - XUnmapWindow
    - X11_GetXVideoPort
    - my_glXGetVisualFromFBConfig
    - BlackPixel
    - WhitePixel
    - XHeightOfScreen
    - X11VID
    - XWidthMMOfScreen
    - gf_module_get_bool
    - GF_LOG
    - XHeightMMOfScreen
    - glXChooseVisual
    - XChangeWindowAttributes
    - X11_GetPixelFormat
    - XSetErrorHandler
    - XSelectInput
    - XChangeProperty
    - XAllocSizeHints
    - XInternAtom
    - glXGetProcAddress
    - DefaultScreenOfDisplay
    - XInitThreads
    - XSendEvent
    - XWidthOfScreen
    - my_glXChooseFBConfig
    - XSetWMNormalHints
    - gf_module_get_key
    - strcmp
    - XStoreName
    - XGetWindowAttributes
    - X11_XScreenSaverState
    - XFree
    linkageType: ''
    returnType: void
    signature: void X11_SetupWindow (GF_VideoOutput * vout)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: X11VID
      Src: /src/gpac/modules/x11_out/x11_out.c:1516,1
    - Dst: XMapWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:1524,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - vout
    - os_handle
    - os_display
    - flags
    argTypes:
    - struct _video_out*
    - void*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1532
      start: 1514
    functionDepth: 1
    functionLinenumber: 1514
    functionLinenumberEnd: 1532
    functionName: X11_Setup
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - XMapWindow
    - X11VID
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err X11_Setup(struct _video_out *vout, void *os_handle, void *os_display,
      u32 flags)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: X11VID
      Src: /src/gpac/modules/x11_out/x11_out.c:1537,1
    - Dst: X11_ReleaseBackBuffer
      Src: /src/gpac/modules/x11_out/x11_out.c:1540,1
    - Dst: X11_ReleaseGL
      Src: /src/gpac/modules/x11_out/x11_out.c:1543,1
    - Dst: XFree
      Src: /src/gpac/modules/x11_out/x11_out.c:1545,1
    - Dst: XFreeGC
      Src: /src/gpac/modules/x11_out/x11_out.c:1548,1
    - Dst: XUnmapWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:1549,1
    - Dst: XDestroyWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:1550,1
    - Dst: XDestroyWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:1551,1
    - Dst: glXDestroyGLXPixmap
      Src: /src/gpac/modules/x11_out/x11_out.c:1553,1
    - Dst: XFreePixmap
      Src: /src/gpac/modules/x11_out/x11_out.c:1554,1
    - Dst: XUnmapWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:1555,1
    - Dst: XDestroyWindow
      Src: /src/gpac/modules/x11_out/x11_out.c:1556,1
    - Dst: X11_XScreenSaverState
      Src: /src/gpac/modules/x11_out/x11_out.c:1560,1
    - Dst: XCloseDisplay
      Src: /src/gpac/modules/x11_out/x11_out.c:1562,1
    - Dst: gf_free
      Src: /src/gpac/modules/x11_out/x11_out.c:1563,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 1
    argNames:
    - vout
    argTypes:
    - struct _video_out*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1565
      start: 1535
    functionDepth: 2
    functionLinenumber: 1535
    functionLinenumberEnd: 1565
    functionName: X11_Shutdown
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - XFreeGC
    - X11VID
    - gf_free
    - XDestroyWindow
    - XUnmapWindow
    - X11_XScreenSaverState
    - XFreePixmap
    - X11_ReleaseGL
    - glXDestroyGLXPixmap
    - X11_ReleaseBackBuffer
    - XCloseDisplay
    - XFree
    linkageType: ''
    returnType: void
    signature: void X11_Shutdown (struct _video_out *vout)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/x11_out/x11_out.c:1584,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/x11_out/x11_out.c:1586,1
    - Dst: gf_free
      Src: /src/gpac/modules/x11_out/x11_out.c:1588,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/x11_out/x11_out.c:1591,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/modules/x11_out/x11_out.c:1605,1
    - Dst: x11_translate_key
      Src: /src/gpac/modules/x11_out/x11_out.c:1607,1
    - Dst: X11_BadAccess_ByPass
      Src: /src/gpac/modules/x11_out/x11_out.c:1608,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1615
      start: 1580
    functionDepth: 2
    functionLinenumber: 1580
    functionLinenumberEnd: 1615
    functionName: NewX11VideoOutput
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - x11_translate_key
    - gf_sys_is_test_mode
    - GF_REGISTER_MODULE_INTERFACE
    - X11_BadAccess_ByPass
    linkageType: ''
    returnType: void
    signature: void *NewX11VideoOutput ()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/x11_out/x11_out.c:1621,1
    - Dst: gf_free
      Src: /src/gpac/modules/x11_out/x11_out.c:1622,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - vout
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1623
      start: 1618
    functionDepth: 0
    functionLinenumber: 1618
    functionLinenumberEnd: 1623
    functionName: DeleteX11VideoOutput
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DeleteX11VideoOutput (GF_VideoOutput * vout)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1636
      start: 1628
    functionDepth: 0
    functionLinenumber: 1628
    functionLinenumberEnd: 1636
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NewX11VideoOutput
      Src: /src/gpac/modules/x11_out/x11_out.c:1646,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1648
      start: 1642
    functionDepth: 3
    functionLinenumber: 1642
    functionLinenumberEnd: 1648
    functionName: GF_BaseInterface *LoadInterface (u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - NewX11VideoOutput
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface (u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DeleteX11VideoOutput
      Src: /src/gpac/modules/x11_out/x11_out.c:1660,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1663
      start: 1654
    functionDepth: 1
    functionLinenumber: 1654
    functionLinenumberEnd: 1663
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.c
    functionUses: 0
    functionsReached:
    - DeleteX11VideoOutput
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface (GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 62
    functionName: X11VID
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.h
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: X11VID()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - r
    - ','
    - g
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 64
    functionName: RGB555
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RGB555(r,g,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - r
    - ','
    - g
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 65
    functionName: RGB565
    functionSourceFile: /src/gpac/modules/x11_out/x11_out.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RGB565(r,g,b)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:60,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:63,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:65,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:69,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:71,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:75,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:77,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:85,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:87,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:93,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:95,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:101,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:103,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:109,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:117,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:125,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:133,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:135,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:136,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:137,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:145,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 50
    argCount: 4
    argNames:
    - dr
    - urn
    - dsi
    - dsi_size
    argTypes:
    - struct __input_device*
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 148
    functionName: MPEGVS_RegisterDevice
    functionSourceFile: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - strcpy
    - strnicmp
    - strcmp
    - AddField
    - strlen
    linkageType: ''
    returnType: Bool
    signature: Bool MPEGVS_RegisterDevice(struct __input_device *dr, const char *urn,
      const char *dsi, u32 dsi_size, void (*AddField)(struct __input_device *_this,
      u32 fieldType, const char *name))
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_try_lock
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:159,1
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:162,1
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:169,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:170,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:171,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:172,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:173,1
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:178,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:180,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:181,1
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:185,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:187,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:188,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:189,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:190,1
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:195,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:197,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:198,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:199,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:200,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:201,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:202,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:203,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:204,1
    - Dst: gf_bs_align
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:208,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:209,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:210,1
    - Dst: struct __input_device*::DispatchFrame
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:212,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:213,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:215,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 41
    argCount: 2
    argNames:
    - ptr
    - data
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 216
    functionName: MPEGVSensorCallback
    functionSourceFile: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c
    functionUses: 0
    functionsReached:
    - struct __input_device*::DispatchFrame
    - gf_free
    - sscanf
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_mx_try_lock
    - gf_bs_align
    - gf_bs_del
    - gf_mx_v
    - gf_bs_write_float
    linkageType: ''
    returnType: void
    signature: void MPEGVSensorCallback( void* ptr, const char* data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:222,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:222,1
    - Dst: SENS_Stop
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:225,1
    - Dst: SENS_DestroyInstance
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:226,1
    - Dst: SENS_CreateInstance
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:229,1
    - Dst: SENS_SetSensorType
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:230,1
    - Dst: SENS_SetCallback
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:231,1
    - Dst: SENS_Start
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:232,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - dr
    argTypes:
    - struct __input_device*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 233
    functionName: MPEGVS_Start
    functionSourceFile: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c
    functionUses: 0
    functionsReached:
    - gf_th_id
    - GF_LOG
    - SENS_SetCallback
    - SENS_CreateInstance
    - SENS_Stop
    - SENS_SetSensorType
    - SENS_DestroyInstance
    - SENS_Start
    linkageType: ''
    returnType: void
    signature: void MPEGVS_Start(struct __input_device * dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:239,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:239,1
    - Dst: SENS_Stop
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:241,1
    - Dst: SENS_DestroyInstance
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - dr
    argTypes:
    - struct __input_device*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 235
    functionDepth: 1
    functionLinenumber: 235
    functionLinenumberEnd: 243
    functionName: MPEGVS_Stop
    functionSourceFile: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - SENS_Stop
    - gf_th_id
    - SENS_DestroyInstance
    linkageType: ''
    returnType: void
    signature: void MPEGVS_Stop(struct __input_device * dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:250,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:251,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:252,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:258,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:259,1
    - Dst: gf_mx_new
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 245
    functionDepth: 1
    functionLinenumber: 245
    functionLinenumberEnd: 265
    functionName: NewMPEGVSInputSesor
    functionSourceFile: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c
    functionUses: 0
    functionsReached:
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - gf_mx_new
    - gf_malloc
    linkageType: ''
    returnType: GF_InputSensorDevice
    signature: GF_InputSensorDevice * NewMPEGVSInputSesor()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MPEGVS_Stop
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:269,1
    - Dst: gf_mx_del
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:271,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:272,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:273,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - dev
    argTypes:
    - GF_InputSensorDevice*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 274
    functionName: DeleteMPEGVSInputSensor
    functionSourceFile: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c
    functionUses: 0
    functionsReached:
    - gf_free
    - MPEGVS_Stop
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void DeleteMPEGVSInputSensor(GF_InputSensorDevice* dev)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 285
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NewMPEGVSInputSesor
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:291,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 293
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c
    functionUses: 0
    functionsReached:
    - NewMPEGVSInputSesor
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DeleteMPEGVSInputSensor
      Src: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c:301,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 296
    functionDepth: 0
    functionLinenumber: 296
    functionLinenumberEnd: 304
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/ios_mpegv/ios_mpegv.c
    functionUses: 0
    functionsReached:
    - DeleteMPEGVSInputSensor
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 15
    functionDepth: 0
    functionLinenumber: 15
    functionLinenumberEnd: 21
    functionName: NSObject
    functionSourceFile: /src/gpac/modules/deprecated/ios_mpegv/SensorAccess.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: interface
    signature: interface NSObject <CLLocationManagerDelegate>
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 78
    functionName: EPOCAudio::EPOCAudio
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EPOCAudio::EPOCAudio()
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 85
    functionName: EPOCAudio::~EPOCAudio()
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EPOCAudio::~EPOCAudio()
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_sleep
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:128,1
    - Dst: TRAP
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:129,1
    - Dst: CMdaAudioOutputStream::NewL
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:129,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:131,1
    - Dst: EPOCAudio::Open
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:134,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:143,1
    - Dst: CActiveScheduler::RunIfReady
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:146,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:150,1
    - Dst: TRAP
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:154,1
    - Dst: SetAudioPropertiesL
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:154,1
    - Dst: SetPriority
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:155,1
    - Dst: SetVolume
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:156,1
    - Dst: MaxVolume
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:156,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:160,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 61
    argCount: 2
    argNames:
    - sample_rate
    - stereo
    argTypes:
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 162
    functionName: EPOCAudio::Open
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp
    functionUses: 1
    functionsReached:
    - SetAudioPropertiesL
    - MaxVolume
    - EPOCAudio::Open
    - GF_LOG
    - CMdaAudioOutputStream::NewL
    - gf_sleep
    - CActiveScheduler::RunIfReady
    - TRAP
    - SetVolume
    - SetPriority
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EPOCAudio::Open(u32 sample_rate, Bool stereo)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Stop
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:170,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:175,1
    - Dst: CActiveScheduler::RunIfReady
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:178,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:186,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:191,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 1
    argNames:
    - and_wait
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 192
    functionName: EPOCAudio::Close
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - Stop
    - gf_sleep
    - CActiveScheduler::RunIfReady
    linkageType: ''
    returnType: void
    signature: void EPOCAudio::Close(Bool and_wait)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:197,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:199,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - aError
    argTypes:
    - TInt
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 202
    functionName: EPOCAudio::MaoscOpenComplete
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void EPOCAudio::MaoscOpenComplete(TInt aError)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - aError
    - ' a_Buffer'
    argTypes:
    - TInt
    - TDesC8
    assertStmts:
    - condition: (nb_buffers_queued)
      pos:
        line_end: 205
        line_start: 205
        source_file: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp
    constantsTouched: []
    func_position:
      end: 209
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 209
    functionName: EPOCAudio::MaoscBufferCopied
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp
    functionUses: 0
    functionsReached:
    - assert
    linkageType: ''
    returnType: void
    signature: void EPOCAudio::MaoscBufferCopied(TInt aError, const TDesC8& a_Buffer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:214,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - aError
    argTypes:
    - TInt
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 211
    functionDepth: 1
    functionLinenumber: 211
    functionLinenumberEnd: 220
    functionName: EPOCAudio::MaoscPlayComplete
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void EPOCAudio::MaoscPlayComplete(TInt aError)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAX
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - dr
    - os_handle
    - num_buffers
    - total_duration
    argTypes:
    - GF_AudioOutput*
    - void*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 229
    functionName: EAUD_Setup
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp
    functionUses: 0
    functionsReached:
    - MAX
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EAUD_Setup(GF_AudioOutput *dr, void *os_handle, u32 num_buffers,
      u32 total_duration)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EPOCAudio*::Close
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 235
    functionName: EAUD_Shutdown
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp
    functionUses: 0
    functionsReached:
    - EPOCAudio*::Close
    linkageType: ''
    returnType: void
    signature: void EAUD_Shutdown(GF_AudioOutput *dr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: EPOCAudio*::Close
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:245,1
    - Dst: EPOCAudio*::Open
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:250,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:271,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:273,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 5
    argNames:
    - dr
    - SampleRate
    - NbChannels
    - nbBitsPerSample
    - channel_cfg
    argTypes:
    - GF_AudioOutput*
    - u32*
    - u32*
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 239
    functionDepth: 1
    functionLinenumber: 239
    functionLinenumberEnd: 276
    functionName: EAUD_ConfigureOutput
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp
    functionUses: 0
    functionsReached:
    - gf_malloc
    - GF_LOG
    - EPOCAudio*::Close
    - EPOCAudio*::Open
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EAUD_ConfigureOutput(GF_AudioOutput *dr, u32 *SampleRate, u32
      *NbChannels, u32 *nbBitsPerSample, u32 channel_cfg)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:284,1
    - Dst: User::After
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:285,1
    - Dst: CActiveScheduler::RunIfReady
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:287,1
    - Dst: GF_AudioOutput*::FillBuffer
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:292,1
    - Dst: Set
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:296,1
    - Dst: EPOCAudio*::m_stream::WriteL
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:299,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 278
    functionDepth: 1
    functionLinenumber: 278
    functionLinenumberEnd: 302
    functionName: EAUD_WriteAudio
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp
    functionUses: 0
    functionsReached:
    - GF_LOG
    - User::After
    - GF_AudioOutput*::FillBuffer
    - Set
    - CActiveScheduler::RunIfReady
    - EPOCAudio*::m_stream::WriteL
    linkageType: ''
    returnType: void
    signature: void EAUD_WriteAudio(GF_AudioOutput *dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - dr
    - PlayType
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 306
    functionName: EAUD_Play
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EAUD_Play(GF_AudioOutput *dr, u32 PlayType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: EPOCAudio*::m_stream::SetVolume
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:313,1
    - Dst: EPOCAudio*::m_stream::MaxVolume
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:313,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dr
    - Volume
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 308
    functionDepth: 0
    functionLinenumber: 308
    functionLinenumberEnd: 314
    functionName: EAUD_SetVolume
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp
    functionUses: 0
    functionsReached:
    - EPOCAudio*::m_stream::MaxVolume
    - EPOCAudio*::m_stream::SetVolume
    linkageType: ''
    returnType: void
    signature: void EAUD_SetVolume(GF_AudioOutput *dr, u32 Volume)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - dr
    - Pan
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 318
    functionName: EAUD_SetPan
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EAUD_SetPan(GF_AudioOutput *dr, u32 Pan)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - dr
    - desired_samplerate
    - NbChannels
    - nbBitsPerSample
    argTypes:
    - GF_AudioOutput*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 321
    functionDepth: 0
    functionLinenumber: 321
    functionLinenumberEnd: 326
    functionName: EAUD_QueryOutputSampleRate
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EAUD_QueryOutputSampleRate(GF_AudioOutput *dr, u32 *desired_samplerate,
      u32 *NbChannels, u32 *nbBitsPerSample)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 332
    functionName: EAUD_GetAudioDelay
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 EAUD_GetAudioDelay(GF_AudioOutput *dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 338
    functionName: EAUD_GetTotalBufferTime
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 EAUD_GetTotalBufferTime(GF_AudioOutput *dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:348,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:349,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:350,1
    - Dst: EPOCAudio::EPOCAudio
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:364,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 345
    functionDepth: 1
    functionLinenumber: 345
    functionLinenumberEnd: 367
    functionName: EPOC_aout_new
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp
    functionUses: 0
    functionsReached:
    - EPOCAudio::EPOCAudio
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void *EPOC_aout_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp:374,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 369
    functionDepth: 0
    functionLinenumber: 369
    functionLinenumberEnd: 375
    functionName: EPOC_aout_del
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_aout.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void EPOC_aout_del(void *ifce)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: eglMakeCurrent
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:65,1
    - Dst: eglDestroyContext
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:66,1
    - Dst: eglDestroySurface
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:68,1
    - Dst: eglTerminate
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:70,1
    - Dst: EPOCVideo*::surface::UnlockHeap
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:76,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 2
    argNames:
    - dr
    - gl_only
    argTypes:
    - GF_VideoOutput*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 84
    functionName: EVID_ResetSurface
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp
    functionUses: 0
    functionsReached:
    - EPOCVideo*::surface::UnlockHeap
    - eglDestroyContext
    - eglTerminate
    - eglMakeCurrent
    - eglDestroySurface
    linkageType: ''
    returnType: void
    signature: void EVID_ResetSurface(GF_VideoOutput *dr, Bool gl_only)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:94,1
    - Dst: EVID_ResetSurface
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:95,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:96,1
    - Dst: CWsScreenDevice::CWsScreenDevice
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:98,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:100,1
    - Dst: EPOCVideo*::screen::Construct
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:103,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:105,1
    - Dst: EPOCVideo*::screen::CreateContext
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:108,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:110,1
    - Dst: CFbsBitmap::CFbsBitmap
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:114,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:116,1
    - Dst: EPOCVideo*::window::Size
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:120,1
    - Dst: EPOCVideo*::screen::DisplayMode
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:121,1
    - Dst: EPOCVideo*::surface::Create
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:122,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:124,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:165,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:174,1
    - Dst: eglGetDisplay
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:177,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:179,1
    - Dst: eglInitialize
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:183,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:184,1
    - Dst: eglGetConfigs
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:190,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:191,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:195,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:199,1
    - Dst: atoi
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:204,1
    - Dst: eglChooseConfig
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:209,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:210,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:214,1
    - Dst: eglCreatePixmapSurface
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:216,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:218,1
    - Dst: eglCreateContext
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:221,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:223,1
    - Dst: eglMakeCurrent
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:226,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:227,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:231,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:236,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:236,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 118
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 238
    functionName: EVID_InitSurface
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    - EPOCVideo*::screen::DisplayMode
    - gf_opts_get_key
    - atoi
    - eglCreateContext
    - eglMakeCurrent
    - eglInitialize
    - gf_4cc_to_str
    - eglChooseConfig
    - EPOCVideo*::screen::CreateContext
    - GF_LOG
    - EPOCVideo*::screen::Construct
    - EVID_ResetSurface
    - eglGetDisplay
    - CFbsBitmap::CFbsBitmap
    - gf_malloc
    - EPOCVideo*::window::Size
    - eglCreatePixmapSurface
    - eglGetConfigs
    - CWsScreenDevice::CWsScreenDevice
    - EPOCVideo*::surface::Create
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EVID_InitSurface(GF_VideoOutput *dr)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: EVID_ResetSurface
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:245,1
    - Dst: EPOCVideo*::screen::DisplayMode
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:248,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:273,1
    - Dst: eglGetDisplay
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:277,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:279,1
    - Dst: eglInitialize
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:283,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:284,1
    - Dst: eglGetConfigs
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:291,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:292,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:296,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:300,1
    - Dst: atoi
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:312,1
    - Dst: eglChooseConfig
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:315,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:316,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:320,1
    - Dst: eglCreatePbufferSurface
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:328,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:330,1
    - Dst: eglCreateContext
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:333,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:335,1
    - Dst: eglMakeCurrent
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:338,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:339,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:342,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 79
    argCount: 3
    argNames:
    - dr
    - width
    - height
    argTypes:
    - GF_VideoOutput*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 344
    functionName: EVID_SetupOGL_ES_Offscreen
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    - eglInitialize
    - GF_LOG
    - EPOCVideo*::screen::DisplayMode
    - eglGetConfigs
    - eglChooseConfig
    - gf_opts_get_key
    - atoi
    - EVID_ResetSurface
    - eglGetDisplay
    - eglCreatePbufferSurface
    - eglCreateContext
    - eglMakeCurrent
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EVID_SetupOGL_ES_Offscreen(GF_VideoOutput *dr, u32 width, u32
      height)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: EVID_InitSurface
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:356,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:360,1
    - Dst: EVID_SetupOGL_ES_Offscreen
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:362,1
    - Dst: EVID_SetupOGL_ES_Offscreen
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:365,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:369,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:371,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 4
    argNames:
    - dr
    - os_handle
    - os_display
    - init_flags
    argTypes:
    - GF_VideoOutput*
    - void*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 348
    functionDepth: 2
    functionLinenumber: 348
    functionLinenumberEnd: 376
    functionName: EVID_Setup
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp
    functionUses: 0
    functionsReached:
    - GF_LOG
    - EVID_InitSurface
    - EVID_SetupOGL_ES_Offscreen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EVID_Setup(GF_VideoOutput *dr, void *os_handle, void *os_display,
      u32 init_flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EVID_ResetSurface
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:381,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 378
    functionDepth: 1
    functionLinenumber: 378
    functionLinenumberEnd: 384
    functionName: EVID_Shutdown
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp
    functionUses: 0
    functionsReached:
    - EVID_ResetSurface
    linkageType: ''
    returnType: void
    signature: void EVID_Shutdown(GF_VideoOutput *dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - dr
    - bOn
    - outWidth
    - outHeight
    argTypes:
    - GF_VideoOutput*
    - Bool
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 390
    functionName: EVID_SetFullScreen
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EVID_SetFullScreen(GF_VideoOutput *dr, Bool bOn, u32 *outWidth,
      u32 *outHeight)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:397,1
    - Dst: EPOCVideo*::gc::Activate
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:398,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:399,1
    - Dst: EPOCVideo*::gc::BitBlt
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:400,1
    - Dst: TPoint
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:400,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:401,1
    - Dst: EPOCVideo*::gc::Deactivate
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:402,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:403,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - dr
    - dest
    argTypes:
    - GF_VideoOutput*
    - GF_Window*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 392
    functionDepth: 1
    functionLinenumber: 392
    functionLinenumberEnd: 406
    functionName: EVID_Flush
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp
    functionUses: 0
    functionsReached:
    - EPOCVideo*::gc::BitBlt
    - GF_LOG
    - TPoint
    - EPOCVideo*::gc::Deactivate
    - EPOCVideo*::gc::Activate
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EVID_Flush(GF_VideoOutput *dr, GF_Window *dest)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: EVID_SetupOGL_ES_Offscreen
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:423,1
    - Dst: EVID_InitSurface
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:428,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - dr
    - evt
    argTypes:
    - GF_VideoOutput*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 408
    functionDepth: 2
    functionLinenumber: 408
    functionLinenumberEnd: 431
    functionName: EVID_ProcessEvent
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp
    functionUses: 0
    functionsReached:
    - EVID_InitSurface
    - EVID_SetupOGL_ES_Offscreen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EVID_ProcessEvent(GF_VideoOutput *dr, GF_Event *evt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:440,1
    - Dst: EPOCVideo*::surface::LockHeap
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:441,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:442,1
    - Dst: EPOCVideo*::surface::DataAddress
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:443,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:445,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:452,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:455,1
    - Dst: EPOCVideo*::surface::UnlockHeap
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:456,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:458,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 3
    argNames:
    - dr
    - vi
    - do_lock
    argTypes:
    - GF_VideoOutput*
    - GF_VideoSurface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 433
    functionDepth: 1
    functionLinenumber: 433
    functionLinenumberEnd: 462
    functionName: EVID_LockBackBuffer
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp
    functionUses: 0
    functionsReached:
    - EPOCVideo*::surface::LockHeap
    - EPOCVideo*::surface::UnlockHeap
    - GF_LOG
    - EPOCVideo*::surface::DataAddress
    - memset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EVID_LockBackBuffer(GF_VideoOutput *dr, GF_VideoSurface *vi,
      Bool do_lock)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:468,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:469,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:471,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 464
    functionDepth: 1
    functionLinenumber: 464
    functionLinenumberEnd: 489
    functionName: EPOC_vout_new
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp
    functionUses: 0
    functionsReached:
    - GF_REGISTER_MODULE_INTERFACE
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void *EPOC_vout_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:494,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:495,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 490
    functionDepth: 0
    functionLinenumber: 490
    functionLinenumberEnd: 496
    functionName: EPOC_vout_del
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void EPOC_vout_del(void *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 520
      start: 510
    functionDepth: 0
    functionLinenumber: 510
    functionLinenumberEnd: 520
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: EPOC_vout_new
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:526,1
    - Dst: EPOC_aout_new
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:527,1
    - Dst: EPOC_codec_new
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:528,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 523
    functionDepth: 2
    functionLinenumber: 523
    functionLinenumberEnd: 530
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp
    functionUses: 0
    functionsReached:
    - EPOC_vout_new
    - EPOC_codec_new
    - EPOC_aout_new
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: EPOC_vout_del
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:539,1
    - Dst: EPOC_aout_del
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:542,1
    - Dst: EPOC_codec_del
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp:545,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 533
    functionDepth: 1
    functionLinenumber: 533
    functionLinenumberEnd: 548
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_vout.cpp
    functionUses: 0
    functionsReached:
    - EPOC_aout_del
    - EPOC_vout_del
    - EPOC_codec_del
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: TRAP
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:73,1
    - Dst: CMMFCodec::NewL
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:73,1
    - Dst: TRAP
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:79,1
    - Dst: CMMFCodec::NewL
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:79,1
    - Dst: TRAP
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:85,1
    - Dst: CMMFCodec::NewL
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:85,1
    - Dst: TRAP
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:91,1
    - Dst: CMMFCodec::NewL
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:91,1
    - Dst: TRAP
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:98,1
    - Dst: CMMFCodec::NewL
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:98,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 1
    argNames:
    - ifcg
    argTypes:
    - GF_BaseDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 104
    functionName: EDEC_LoadCaps
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp
    functionUses: 0
    functionsReached:
    - CMMFCodec::NewL
    - TRAP
    linkageType: ''
    returnType: void
    signature: void EDEC_LoadCaps(GF_BaseDecoder *ifcg)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_m4a_get_config
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:127,1
    - Dst: TRAP
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:132,1
    - Dst: CMMFCodec::NewL
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:132,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:139,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:140,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:141,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:142,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:143,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:144,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:145,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:146,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:147,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:148,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:149,1
    - Dst: TRAP
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:151,1
    - Dst: EPOCCodec*::dec::ConfigureL
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:151,1
    - Dst: TUid::Uid
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:151,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:153,1
    - Dst: RArray::Reset
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:154,1
    - Dst: TRAP
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:165,1
    - Dst: CMMFCodec::NewL
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:165,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:167,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:170,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:171,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:172,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:173,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:174,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:175,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:176,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:177,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:178,1
    - Dst: RArray::Append
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:179,1
    - Dst: TRAP
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:181,1
    - Dst: EPOCCodec*::dec::ConfigureL
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:181,1
    - Dst: TUid::Uid
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:181,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:183,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:196,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:196,1
    - Dst: TRAP
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:197,1
    - Dst: CMMFCodec::NewL
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:197,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:199,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:209,1
    - Dst: TRAP
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:210,1
    - Dst: CMMFCodec::NewL
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:210,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:212,1
    - Dst: CMMFPtrBuffer::NewL
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:227,1
    - Dst: CMMFPtrBuffer::NewL
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:228,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 111
    argCount: 2
    argNames:
    - ifcg
    - esd
    argTypes:
    - GF_BaseDecoder*
    - GF_ESD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 231
    functionName: EDEC_AttachStream
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp
    functionUses: 0
    functionsReached:
    - RArray::Reset
    - gf_m4a_get_config
    - GF_LOG
    - CMMFCodec::NewL
    - EPOCCodec*::dec::ConfigureL
    - CMMFPtrBuffer::NewL
    - RArray::Append
    - strnicmp
    - TUid::Uid
    - TRAP
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EDEC_AttachStream(GF_BaseDecoder *ifcg, GF_ESD *esd)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - ifcg
    - ES_ID
    argTypes:
    - GF_BaseDecoder*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 250
    functionName: EDEC_DetachStream
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EDEC_DetachStream(GF_BaseDecoder *ifcg, u16 ES_ID)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 37
    argCount: 2
    argNames:
    - ifcg
    - capability
    argTypes:
    - GF_BaseDecoder*
    - GF_CodecCapability*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 293
    functionName: EDEC_GetCapabilities
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EDEC_GetCapabilities(GF_BaseDecoder *ifcg, GF_CodecCapability
      *capability)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ifcg
    - capability
    argTypes:
    - GF_BaseDecoder*
    - GF_CodecCapability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 294
    functionDepth: 0
    functionLinenumber: 294
    functionLinenumberEnd: 298
    functionName: EDEC_SetCapabilities
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EDEC_SetCapabilities(GF_BaseDecoder *ifcg, GF_CodecCapability
      capability)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:312,1
    - Dst: EPOCCodec*::ptr_in::Set
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:316,1
    - Dst: EPOCCodec*::mmf_in::SetPtr
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:317,1
    - Dst: EPOCCodec*::ptr_out::Set
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:318,1
    - Dst: EPOCCodec*::mmf_out::SetPtr
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:319,1
    - Dst: TRAPD
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:321,1
    - Dst: EPOCCodec*::dec::ProcessL
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:321,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:323,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 9
    argNames:
    - ifcg
    - inBuffer
    - inBufferLength
    - ES_ID
    - CTS
    - outBuffer
    - outBufferLength
    - PaddingBits
    - mmlevel
    argTypes:
    - GF_MediaDecoder*
    - char*
    - u32
    - u16
    - u32*
    - char*
    - u32*
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 301
    functionDepth: 1
    functionLinenumber: 301
    functionLinenumberEnd: 328
    functionName: EDEC_ProcessData
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp
    functionUses: 0
    functionsReached:
    - GF_LOG
    - EPOCCodec*::mmf_in::SetPtr
    - EPOCCodec*::ptr_in::Set
    - EPOCCodec*::mmf_out::SetPtr
    - EPOCCodec*::ptr_out::Set
    - EPOCCodec*::dec::ProcessL
    - TRAPD
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err EDEC_ProcessData(GF_MediaDecoder *ifcg,\n                               char
      *inBuffer, u32 inBufferLength,\n                               u16 ES_ID, u32
      *CTS,\n                               char *outBuffer, u32 *outBufferLength,\n
      \                              u8 PaddingBits, u32 mmlevel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ifcg
    argTypes:
    - GF_BaseDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 330
    functionDepth: 0
    functionLinenumber: 330
    functionLinenumberEnd: 334
    functionName: EDEC_GetCodecName
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *EDEC_GetCodecName(GF_BaseDecoder *ifcg)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_m4a_get_config
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:355,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:375,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:375,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:378,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 45
    argCount: 4
    argNames:
    - ifcg
    - StreamType
    - esd
    - PL
    argTypes:
    - GF_BaseDecoder*
    - u32
    - GF_ESD*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 336
    functionDepth: 1
    functionLinenumber: 336
    functionLinenumberEnd: 387
    functionName: EDEC_CanHandleStream
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp
    functionUses: 0
    functionsReached:
    - gf_m4a_get_config
    - strnicmp
    linkageType: ''
    returnType: u32
    signature: u32 EDEC_CanHandleStream(GF_BaseDecoder *ifcg, u32 StreamType, GF_ESD
      *esd, u8 PL)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:398,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:399,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:401,1
    - Dst: EDEC_LoadCaps
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:412,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 393
    functionDepth: 1
    functionLinenumber: 393
    functionLinenumberEnd: 414
    functionName: EPOC_codec_new
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp
    functionUses: 1
    functionsReached:
    - GF_REGISTER_MODULE_INTERFACE
    - EDEC_LoadCaps
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_BaseDecoder
    signature: GF_BaseDecoder *EPOC_codec_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:420,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp:421,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ifcg
    argTypes:
    - GF_BaseDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 416
    functionDepth: 0
    functionLinenumber: 416
    functionLinenumberEnd: 422
    functionName: EPOC_codec_del
    functionSourceFile: /src/gpac/modules/deprecated/epoc_hw/epoc_codec.cpp
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void EPOC_codec_del(GF_BaseDecoder *ifcg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 64
    functionName: OSSCTX
    functionSourceFile: /src/gpac/modules/deprecated/oss_audio/oss.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OSSCTX()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: OSSCTX
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:70,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:72,1
    - Dst: atoi
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:73,1
    - Dst: open
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:76,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:78,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - dr
    - os_handle
    - num_buffers
    - total_duration
    argTypes:
    - GF_AudioOutput*
    - void*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 88
    functionName: OSS_Setup
    functionSourceFile: /src/gpac/modules/deprecated/oss_audio/oss.c
    functionUses: 0
    functionsReached:
    - open
    - GF_LOG
    - atoi
    - OSSCTX
    - gf_opts_get_key
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err OSS_Setup(GF_AudioOutput*dr, void *os_handle, u32 num_buffers,
      u32 total_duration)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: OSSCTX
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:92,1
    - Dst: ioctl
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:93,1
    - Dst: close
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:94,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 97
    functionName: OSS_Shutdown
    functionSourceFile: /src/gpac/modules/deprecated/oss_audio/oss.c
    functionUses: 0
    functionsReached:
    - gf_free
    - ioctl
    - OSSCTX
    - close
    linkageType: ''
    returnType: void
    signature: void OSS_Shutdown(GF_AudioOutput*dr)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: OSSCTX
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:104,1
    - Dst: ioctl
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:108,1
    - Dst: close
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:109,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:110,1
    - Dst: open
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:112,1
    - Dst: fcntl
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:117,1
    - Dst: fcntl
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:119,1
    - Dst: ioctl
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:122,1
    - Dst: ioctl
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:139,1
    - Dst: ioctl
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:141,1
    - Dst: ioctl
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:155,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:157,1
    - Dst: gf_realloc
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:158,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:160,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 53
    argCount: 5
    argNames:
    - dr
    - SampleRate
    - NbChannels
    - audioFormat
    - channel_cfg
    argTypes:
    - GF_AudioOutput*
    - u32*
    - u32*
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 162
    functionName: OSS_Configure
    functionSourceFile: /src/gpac/modules/deprecated/oss_audio/oss.c
    functionUses: 0
    functionsReached:
    - gf_free
    - fcntl
    - open
    - GF_LOG
    - close
    - memset
    - ioctl
    - OSSCTX
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err OSS_Configure(GF_AudioOutput*dr, u32 *SampleRate, u32 *NbChannels,
      u32 *audioFormat, u32 channel_cfg)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: OSSCTX
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:167,1
    - Dst: GF_AudioOutput*::FillBuffer
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:168,1
    - Dst: write
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:171,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:173,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 176
    functionName: OSS_WriteAudio
    functionSourceFile: /src/gpac/modules/deprecated/oss_audio/oss.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GF_AudioOutput*::FillBuffer
    - write
    - OSSCTX
    linkageType: ''
    returnType: void
    signature: void OSS_WriteAudio(GF_AudioOutput*dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - dr
    - Volume
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 178
    functionName: OSS_SetVolume
    functionSourceFile: /src/gpac/modules/deprecated/oss_audio/oss.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OSS_SetVolume(GF_AudioOutput*dr, u32 Volume)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - dr
    - Pan
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 179
    functionName: OSS_SetPan
    functionSourceFile: /src/gpac/modules/deprecated/oss_audio/oss.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OSS_SetPan(GF_AudioOutput*dr, u32 Pan)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - dr
    - Priority
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 180
    functionName: OSS_SetPriority
    functionSourceFile: /src/gpac/modules/deprecated/oss_audio/oss.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OSS_SetPriority(GF_AudioOutput*dr, u32 Priority)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OSSCTX
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 185
    functionName: OSS_GetAudioDelay
    functionSourceFile: /src/gpac/modules/deprecated/oss_audio/oss.c
    functionUses: 0
    functionsReached:
    - OSSCTX
    linkageType: ''
    returnType: u32
    signature: u32 OSS_GetAudioDelay(GF_AudioOutput*dr)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: OSSCTX
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:205,1
    - Dst: ioctl
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:211,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:212,1
    - Dst: ioctl
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:215,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:216,1
    - Dst: ioctl
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:218,1
    - Dst: ioctl
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:219,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 4
    argNames:
    - dr
    - desired_sr
    - NbChannels
    - nbBitsPerSample
    argTypes:
    - GF_AudioOutput*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 222
    functionName: OSS_QueryOutputSampleRate
    functionSourceFile: /src/gpac/modules/deprecated/oss_audio/oss.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - ioctl
    - OSSCTX
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err OSS_QueryOutputSampleRate(GF_AudioOutput*dr, u32 *desired_sr,
      u32 *NbChannels, u32 *nbBitsPerSample)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:228,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:231,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:232,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:235,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:239,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:252,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 254
    functionName: NewOSSRender
    functionSourceFile: /src/gpac/modules/deprecated/oss_audio/oss.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void *NewOSSRender()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:260,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 262
    functionName: DeleteOSSRender
    functionSourceFile: /src/gpac/modules/deprecated/oss_audio/oss.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DeleteOSSRender(void *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 277
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/oss_audio/oss.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NewOSSRender
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:283,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 279
    functionDepth: 2
    functionLinenumber: 279
    functionLinenumberEnd: 285
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/oss_audio/oss.c
    functionUses: 0
    functionsReached:
    - NewOSSRender
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DeleteOSSRender
      Src: /src/gpac/modules/deprecated/oss_audio/oss.c:291,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 287
    functionDepth: 1
    functionLinenumber: 287
    functionLinenumberEnd: 292
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/oss_audio/oss.c
    functionUses: 0
    functionsReached:
    - DeleteOSSRender
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: LOGI
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: LOGI(...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: LOGE
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: LOGE(...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 47
    functionName: QUOTEME_
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QUOTEME_(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 48
    functionName: QUOTEME
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QUOTEME(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: LOGI
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: LOGI(...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 50
    functionName: LOGE
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: LOGE(...)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GetEnv
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:68,1
    - Dst: FindClass
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:75,1
    - Dst: LOGE
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:78,1
    - Dst: NewGlobalRef
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:83,1
    - Dst: LOGE
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:86,1
    - Dst: GetMethodID
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:91,1
    - Dst: LOGE
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:94,1
    - Dst: GetMethodID
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:99,1
    - Dst: LOGE
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:102,1
    - Dst: GetMethodID
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:106,1
    - Dst: LOGE
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:109,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 2
    argNames:
    - vm
    - reserved
    argTypes:
    - JavaVM*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 114
    functionName: JNI_OnLoad
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 0
    functionsReached:
    - GetMethodID
    - NewGlobalRef
    - LOGE
    - GetEnv
    - FindClass
    linkageType: ''
    returnType: jint
    signature: jint JNI_OnLoad(JavaVM* vm, void* reserved)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GetEnv
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:120,1
    - Dst: DeleteGlobalRef
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:123,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - vm
    - reserved
    argTypes:
    - JavaVM*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 124
    functionName: JNI_OnUnload
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 0
    functionsReached:
    - GetEnv
    - DeleteGlobalRef
    linkageType: ''
    returnType: void
    signature: void JNI_OnUnload(JavaVM *vm, void *reserved)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 130
    functionName: GetJavaVM
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JavaVM
    signature: JavaVM * GetJavaVM()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PopLocalFrame
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:161,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:162,1
    - Dst: DetachCurrentThread
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:162,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - rc
    argTypes:
    - MPEGVSensorContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 167
    functionName: unloadSensorController
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 0
    functionsReached:
    - GetJavaVM
    - PopLocalFrame
    - DetachCurrentThread
    linkageType: ''
    returnType: void
    signature: void unloadSensorController(MPEGVSensorContext *rc)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GetJavaVM
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:176,1
    - Dst: GetEnv
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:176,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:179,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:180,1
    - Dst: AttachCurrentThread
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:180,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:180,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:183,1
    - Dst: PushLocalFrame
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:187,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:191,1
    - Dst: NewObject
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:202,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:205,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 1
    argNames:
    - rc
    argTypes:
    - MPEGVSensorContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 208
    functionName: loadSensorControler
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - NewObject
    - GetJavaVM
    - AttachCurrentThread
    - GetEnv
    - PushLocalFrame
    linkageType: ''
    returnType: void
    signature: void loadSensorControler(MPEGVSensorContext *rc)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:216,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:219,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:221,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:225,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:227,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:231,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:233,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:235,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:241,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:243,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:249,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:251,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:257,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:259,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:265,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:267,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:273,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:275,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:281,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:283,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:289,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:291,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:292,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:293,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:301,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 58
    argCount: 4
    argNames:
    - dr
    - urn
    - dsi
    - dsi_size
    argTypes:
    - struct __input_device*
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 304
    functionName: MPEGVS_RegisterDevice
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - strcpy
    - strnicmp
    - strcmp
    - AddField
    - strlen
    linkageType: ''
    returnType: Bool
    signature: Bool MPEGVS_RegisterDevice(struct __input_device *dr, const char *urn,
      const char *dsi, u32 dsi_size, void (*AddField)(struct __input_device *_this,
      u32 fieldType, const char *name))
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:314,1
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:321,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:322,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:323,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:324,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:325,1
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:330,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:332,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:333,1
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:337,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:339,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:340,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:341,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:342,1
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:347,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:349,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:350,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:351,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:352,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:353,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:354,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:355,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:356,1
    - Dst: gf_bs_align
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:360,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:361,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:362,1
    - Dst: struct __input_device*::DispatchFrame
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:364,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:365,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 39
    argCount: 2
    argNames:
    - dr
    - data
    argTypes:
    - struct __input_device*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 306
    functionDepth: 1
    functionLinenumber: 306
    functionLinenumberEnd: 368
    functionName: MPEGVS_OnData
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 0
    functionsReached:
    - struct __input_device*::DispatchFrame
    - gf_free
    - sscanf
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_align
    - gf_bs_del
    - gf_bs_write_float
    linkageType: ''
    returnType: u32
    signature: u32 MPEGVS_OnData(struct __input_device * dr, const char* data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetStringUTFChars
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:373,1
    - Dst: MPEGVS_OnData
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:375,1
    - Dst: ReleaseStringUTFChars
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:377,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - env
    - thiz
    - ptr
    - data
    argTypes:
    - JNIEnv*
    - jobject
    - jint
    - jstring
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 370
    functionDepth: 2
    functionLinenumber: 370
    functionLinenumberEnd: 378
    functionName: Java_com_gpac_Osmo4_MPEGVSensor_sendData
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 0
    functionsReached:
    - MPEGVS_OnData
    - GetStringUTFChars
    - ReleaseStringUTFChars
    linkageType: ''
    returnType: JNIEXPORT
    signature: JNIEXPORT Java_com_gpac_Osmo4_MPEGVSensor_sendData( JNIEnv* env, jobject
      thiz, jint ptr, jstring data)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:385,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:385,1
    - Dst: loadSensorControler
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:387,1
    - Dst: CallNonvirtualVoidMethod
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:392,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:395,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:397,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:397,1
    - Dst: CallNonvirtualVoidMethod
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:404,1
    - Dst: DeleteLocalRef
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:406,1
    - Dst: unloadSensorController
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:409,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - param
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 380
    functionDepth: 2
    functionLinenumber: 380
    functionLinenumberEnd: 411
    functionName: ThreadRun
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 0
    functionsReached:
    - unloadSensorController
    - gf_th_id
    - GF_LOG
    - gf_sleep
    - loadSensorControler
    - CallNonvirtualVoidMethod
    - DeleteLocalRef
    linkageType: ''
    returnType: u32
    signature: u32 ThreadRun(void* param)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_new
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:417,1
    - Dst: gf_th_run
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:418,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - dr
    argTypes:
    - struct __input_device*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 413
    functionDepth: 0
    functionLinenumber: 413
    functionLinenumberEnd: 419
    functionName: MPEGVS_Start
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 0
    functionsReached:
    - gf_th_run
    - gf_th_new
    linkageType: ''
    returnType: void
    signature: void MPEGVS_Start(struct __input_device * dr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_status
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:428,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:429,1
    - Dst: gf_th_del
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:431,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - dr
    argTypes:
    - struct __input_device*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 435
      start: 421
    functionDepth: 0
    functionLinenumber: 421
    functionLinenumberEnd: 435
    functionName: MPEGVS_Stop
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 1
    functionsReached:
    - gf_sleep
    - gf_th_del
    - gf_th_status
    linkageType: ''
    returnType: void
    signature: void MPEGVS_Stop(struct __input_device * dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:442,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:443,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:444,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:450,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:451,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 437
    functionDepth: 1
    functionLinenumber: 437
    functionLinenumberEnd: 456
    functionName: NewMPEGVSInputSesor
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 1
    functionsReached:
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - gf_malloc
    linkageType: ''
    returnType: GF_InputSensorDevice
    signature: GF_InputSensorDevice * NewMPEGVSInputSesor()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MPEGVS_Stop
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:460,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:461,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:462,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - dev
    argTypes:
    - GF_InputSensorDevice*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 463
      start: 458
    functionDepth: 0
    functionLinenumber: 458
    functionLinenumberEnd: 463
    functionName: DeleteMPEGVSInputSensor
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 1
    functionsReached:
    - gf_free
    - MPEGVS_Stop
    linkageType: ''
    returnType: void
    signature: void DeleteMPEGVSInputSensor(GF_InputSensorDevice* dev)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 466
    functionDepth: 0
    functionLinenumber: 466
    functionLinenumberEnd: 474
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NewMPEGVSInputSesor
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:480,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 477
    functionDepth: 0
    functionLinenumber: 477
    functionLinenumberEnd: 482
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 0
    functionsReached:
    - NewMPEGVSInputSesor
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DeleteMPEGVSInputSensor
      Src: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c:490,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 485
    functionDepth: 0
    functionLinenumber: 485
    functionLinenumberEnd: 493
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/droid_mpegv/droid_mpegv.c
    functionUses: 0
    functionsReached:
    - DeleteMPEGVSInputSensor
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 41
    functionName: LOGI
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: LOGI(...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 42
    functionName: LOGE
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: LOGE(...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: QUOTEME_
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QUOTEME_(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: QUOTEME
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QUOTEME(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 46
    functionName: LOGI
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: LOGI(...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 47
    functionName: LOGE
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: LOGE(...)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GetEnv
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:70,1
    - Dst: FindClass
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:77,1
    - Dst: LOGE
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:80,1
    - Dst: NewGlobalRef
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:85,1
    - Dst: LOGE
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:88,1
    - Dst: GetMethodID
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:93,1
    - Dst: LOGE
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:96,1
    - Dst: GetMethodID
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:101,1
    - Dst: LOGE
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:104,1
    - Dst: GetMethodID
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:108,1
    - Dst: LOGE
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:111,1
    - Dst: GetMethodID
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:115,1
    - Dst: LOGE
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:118,1
    - Dst: GetMethodID
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:122,1
    - Dst: LOGE
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:125,1
    - Dst: GetMethodID
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:129,1
    - Dst: LOGE
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:132,1
    - Dst: GetMethodID
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:136,1
    - Dst: LOGE
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:139,1
    - Dst: GetMethodID
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:143,1
    - Dst: LOGE
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:146,1
    - Dst: GetMethodID
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:150,1
    - Dst: LOGE
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:153,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 60
    argCount: 2
    argNames:
    - vm
    - reserved
    argTypes:
    - JavaVM*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 158
    functionName: static_JNI_OnLoad
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached:
    - GetMethodID
    - NewGlobalRef
    - LOGE
    - GetEnv
    - FindClass
    linkageType: ''
    returnType: jint
    signature: jint static_JNI_OnLoad(JavaVM* vm, void* reserved)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 165
    functionName: GetJavaVM
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: JavaVM
    signature: JavaVM * GetJavaVM()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GetJavaVM
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:170,1
    - Dst: GetEnv
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:170,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:170,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 174
    functionName: GetEnv
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 7
    functionsReached:
    - GetJavaVM
    - GetEnv
    linkageType: ''
    returnType: JNIEnv
    signature: JNIEnv * GetEnv()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GetEnv
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:185,1
    - Dst: DeleteGlobalRef
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:188,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - vm
    - reserved
    argTypes:
    - JavaVM*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 189
    functionName: JNI_OnUnload
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached:
    - GetEnv
    - DeleteGlobalRef
    linkageType: ''
    returnType: void
    signature: void JNI_OnUnload(JavaVM *vm, void *reserved)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:247,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - plug
    - url
    argTypes:
    - GF_InputService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 250
    functionName: CAM_CanHandleURL
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached:
    - strnicmp
    linkageType: ''
    returnType: Bool
    signature: Bool CAM_CanHandleURL(GF_InputService *plug, const char *url)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:254,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:254,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:258,1
    - Dst: DetachCurrentThread
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:258,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:258,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - read
    argTypes:
    - ISOMReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 263
    functionName: unloadCameraControler
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached:
    - GetJavaVM
    - GF_LOG
    - gf_th_id
    - DetachCurrentThread
    linkageType: ''
    returnType: void
    signature: void unloadCameraControler(ISOMReader *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unloadCameraControler
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 265
    functionDepth: 2
    functionLinenumber: 265
    functionLinenumberEnd: 269
    functionName: unregisterFunc
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached:
    - unloadCameraControler
    linkageType: ''
    returnType: u32
    signature: u32 unregisterFunc(void* data)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:276,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:276,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:279,1
    - Dst: GetEnv
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:279,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:282,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:283,1
    - Dst: AttachCurrentThread
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:283,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:283,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:286,1
    - Dst: gf_register_before_exit_function
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:289,1
    - Dst: gf_th_current
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:289,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:295,1
    - Dst: NewObject
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:312,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:315,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 33
    argCount: 1
    argNames:
    - read
    argTypes:
    - ISOMReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 271
    functionDepth: 1
    functionLinenumber: 271
    functionLinenumberEnd: 318
    functionName: loadCameraControler
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 1
    functionsReached:
    - gf_th_current
    - gf_th_id
    - GF_LOG
    - gf_register_before_exit_function
    - NewObject
    - GetJavaVM
    - AttachCurrentThread
    - GetEnv
    linkageType: ''
    returnType: void
    signature: void loadCameraControler(ISOMReader *read)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:326,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:326,1
    - Dst: loadCameraControler
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:335,1
    - Dst: camStartCamera
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:337,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:340,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - plug
    - serv
    - url
    argTypes:
    - GF_InputService*
    - GF_ClientService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 320
    functionDepth: 2
    functionLinenumber: 320
    functionLinenumberEnd: 344
    functionName: CAM_ConnectService
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached:
    - gf_th_id
    - loadCameraControler
    - GF_LOG
    - camStartCamera
    - gf_service_connect_ack
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CAM_ConnectService(GF_InputService *plug, GF_ClientService *serv,
      const char *url)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:353,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:353,1
    - Dst: GetEnv
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:357,1
    - Dst: DeleteLocalRef
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:357,1
    - Dst: GetEnv
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:357,1
    - Dst: gf_service_disconnect_ack
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:362,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - plug
    argTypes:
    - GF_InputService*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 346
    functionDepth: 1
    functionLinenumber: 346
    functionLinenumberEnd: 364
    functionName: CAM_CloseService
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached:
    - gf_th_id
    - gf_service_disconnect_ack
    - GF_LOG
    - GetEnv
    - DeleteLocalRef
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CAM_CloseService(GF_InputService *plug)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_new
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:387,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:390,1
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:396,1
    - Dst: getWidth
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:398,1
    - Dst: getHeight
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:399,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:401,1
    - Dst: getFormat
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:401,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:402,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:403,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:404,1
    - Dst: getBitsPerPix
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:404,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:405,1
    - Dst: gf_bs_align
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:407,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:408,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:409,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:414,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 31
    argCount: 3
    argNames:
    - plug
    - expect_type
    - sub_url
    argTypes:
    - GF_InputService*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 371
    functionDepth: 1
    functionLinenumber: 371
    functionLinenumberEnd: 419
    functionName: CAM_GetServiceDesc
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_odf_desc_esd_new
    - gf_bs_get_content
    - getHeight
    - gf_bs_write_u16
    - gf_bs_align
    - gf_bs_del
    - gf_odf_desc_new
    - gf_list_add
    - getBitsPerPix
    - getWidth
    - gf_bs_write_u32
    - getFormat
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *CAM_GetServiceDesc(GF_InputService *plug, u32 expect_type,
      const char *sub_url)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:431,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:431,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:440,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - plug
    - channel
    - url
    - upstream
    argTypes:
    - GF_InputService*
    - LPNETCHANNEL
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 442
      start: 424
    functionDepth: 1
    functionLinenumber: 424
    functionLinenumberEnd: 442
    functionName: CAM_ConnectChannel
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_th_id
    - gf_service_connect_ack
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CAM_ConnectChannel(GF_InputService *plug, LPNETCHANNEL channel,
      const char *url, Bool upstream)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:451,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:451,1
    - Dst: camStopCamera
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:455,1
    - Dst: gf_service_disconnect_ack
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:457,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - plug
    - channel
    argTypes:
    - GF_InputService*
    - LPNETCHANNEL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 459
      start: 444
    functionDepth: 1
    functionLinenumber: 444
    functionLinenumberEnd: 459
    functionName: CAM_DisconnectChannel
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_th_id
    - camStopCamera
    - gf_service_disconnect_ack
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CAM_DisconnectChannel(GF_InputService *plug, LPNETCHANNEL channel)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GetArrayLength
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:480,1
    - Dst: GetByteArrayElements
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:482,1
    - Dst: gf_term_get_time
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:489,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:493,1
    - Dst: gf_service_send_packet
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:496,1
    - Dst: ReleaseByteArrayElements
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:500,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 3
    argNames:
    - env
    - thiz
    - arr
    argTypes:
    - JNIEnv*
    - jobject
    - jbyteArray
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 461
    functionDepth: 0
    functionLinenumber: 461
    functionLinenumberEnd: 504
    functionName: Java_com_gpac_Osmo4_Preview_processFrameBuf
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached:
    - GetArrayLength
    - GetByteArrayElements
    - memset
    - gf_service_send_packet
    - ReleaseByteArrayElements
    - gf_term_get_time
    linkageType: ''
    returnType: void
    signature: void Java_com_gpac_Osmo4_Preview_processFrameBuf( JNIEnv* env, jobject
      thiz, jbyteArray arr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GetJavaVM
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:513,1
    - Dst: GetEnv
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:513,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:516,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:517,1
    - Dst: AttachCurrentThread
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:517,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:517,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:519,1
    - Dst: CallNonvirtualVoidMethod
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:526,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:530,1
    - Dst: DetachCurrentThread
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:530,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:530,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - read
    - methodID
    argTypes:
    - ISOMReader*
    - jmethodID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 506
    functionDepth: 1
    functionLinenumber: 506
    functionLinenumberEnd: 532
    functionName: CallCamMethod
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached:
    - DetachCurrentThread
    - GF_LOG
    - GetJavaVM
    - AttachCurrentThread
    - GetEnv
    - CallNonvirtualVoidMethod
    linkageType: ''
    returnType: void
    signature: void CallCamMethod(ISOMReader *read, jmethodID methodID)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:539,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:539,1
    - Dst: CallNonvirtualBooleanMethod
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:544,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - read
    argTypes:
    - ISOMReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 534
    functionDepth: 1
    functionLinenumber: 534
    functionLinenumberEnd: 545
    functionName: camStartCamera
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_th_id
    - CallNonvirtualBooleanMethod
    linkageType: ''
    returnType: void
    signature: void camStartCamera(ISOMReader *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:549,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:549,1
    - Dst: CallCamMethod
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:551,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - read
    argTypes:
    - ISOMReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 547
    functionDepth: 2
    functionLinenumber: 547
    functionLinenumberEnd: 552
    functionName: camStopCamera
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_th_id
    - CallCamMethod
    linkageType: ''
    returnType: void
    signature: void camStopCamera(ISOMReader *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:556,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:556,1
    - Dst: CallCamMethod
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:559,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - read
    argTypes:
    - ISOMReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 554
    functionDepth: 2
    functionLinenumber: 554
    functionLinenumberEnd: 560
    functionName: pauseCamera
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_th_id
    - CallCamMethod
    linkageType: ''
    returnType: void
    signature: void pauseCamera(ISOMReader *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:564,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:564,1
    - Dst: CallCamMethod
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:567,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - read
    argTypes:
    - ISOMReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 568
      start: 562
    functionDepth: 2
    functionLinenumber: 562
    functionLinenumberEnd: 568
    functionName: resumeCamera
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_th_id
    - CallCamMethod
    linkageType: ''
    returnType: void
    signature: void resumeCamera(ISOMReader *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:574,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:574,1
    - Dst: CallNonvirtualIntMethod
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:579,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - read
    argTypes:
    - ISOMReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 570
    functionDepth: 1
    functionLinenumber: 570
    functionLinenumberEnd: 580
    functionName: getWidth
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 1
    functionsReached:
    - CallNonvirtualIntMethod
    - GF_LOG
    - gf_th_id
    linkageType: ''
    returnType: u32
    signature: u32 getWidth(ISOMReader *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:586,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:586,1
    - Dst: CallNonvirtualIntMethod
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:591,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - read
    argTypes:
    - ISOMReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 582
    functionDepth: 1
    functionLinenumber: 582
    functionLinenumberEnd: 592
    functionName: getHeight
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 1
    functionsReached:
    - CallNonvirtualIntMethod
    - GF_LOG
    - gf_th_id
    linkageType: ''
    returnType: u32
    signature: u32 getHeight(ISOMReader *read)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:599,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:599,1
    - Dst: CallNonvirtualIntMethod
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:604,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - read
    argTypes:
    - ISOMReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 613
      start: 594
    functionDepth: 1
    functionLinenumber: 594
    functionLinenumberEnd: 613
    functionName: getFormat
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 1
    functionsReached:
    - CallNonvirtualIntMethod
    - GF_LOG
    - gf_th_id
    linkageType: ''
    returnType: u32
    signature: u32 getFormat(ISOMReader *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:619,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:619,1
    - Dst: CallNonvirtualIntMethod
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:624,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - read
    argTypes:
    - ISOMReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 615
    functionDepth: 1
    functionLinenumber: 615
    functionLinenumberEnd: 625
    functionName: getBitsPerPix
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 1
    functionsReached:
    - CallNonvirtualIntMethod
    - GF_LOG
    - gf_th_id
    linkageType: ''
    returnType: u32
    signature: u32 getBitsPerPix(ISOMReader *read)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: resumeCamera
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:648,1
    - Dst: pauseCamera
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:651,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 2
    argNames:
    - plug
    - com
    argTypes:
    - GF_InputService*
    - GF_NetworkCommand*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 627
    functionDepth: 0
    functionLinenumber: 627
    functionLinenumberEnd: 660
    functionName: CAM_ServiceCommand
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached:
    - resumeCamera
    - pauseCamera
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CAM_ServiceCommand(GF_InputService *plug, GF_NetworkCommand
      *com)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:666,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:667,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:676,1
    - Dst: static_JNI_OnLoad
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:682,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:682,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 686
      start: 662
    functionDepth: 1
    functionLinenumber: 662
    functionLinenumberEnd: 686
    functionName: CAM_client_load
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached:
    - GetJavaVM
    - GF_REGISTER_MODULE_INTERFACE
    - static_JNI_OnLoad
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_InputService
    signature: GF_InputService *CAM_client_load()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:693,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:694,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bi
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 695
      start: 688
    functionDepth: 0
    functionLinenumber: 688
    functionLinenumberEnd: 695
    functionName: CAM_client_del
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void CAM_client_del(GF_BaseInterface *bi)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 705
      start: 697
    functionDepth: 0
    functionLinenumber: 697
    functionLinenumberEnd: 705
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CAM_client_load
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:711,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 713
      start: 707
    functionDepth: 0
    functionLinenumber: 707
    functionLinenumberEnd: 713
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached:
    - CAM_client_load
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CAM_client_del
      Src: /src/gpac/modules/deprecated/droid_cam/droid_cam.c:720,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 715
    functionDepth: 0
    functionLinenumber: 715
    functionLinenumberEnd: 723
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/droid_cam/droid_cam.c
    functionUses: 0
    functionsReached:
    - CAM_client_del
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:80,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - plug
    - url
    argTypes:
    - GF_InputService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 83
    functionName: CAM_CanHandleURL
    functionSourceFile: /src/gpac/modules/deprecated/ios_cam/ios_cam.c
    functionUses: 0
    functionsReached:
    - strnicmp
    linkageType: ''
    returnType: Bool
    signature: Bool CAM_CanHandleURL(GF_InputService *plug, const char *url)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:91,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:91,1
    - Dst: CAM_CreateInstance
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:102,1
    - Dst: CAM_SetCallback
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:103,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:106,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - plug
    - serv
    - url
    argTypes:
    - GF_InputService*
    - GF_ClientService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 110
    functionName: CAM_ConnectService
    functionSourceFile: /src/gpac/modules/deprecated/ios_cam/ios_cam.c
    functionUses: 0
    functionsReached:
    - gf_th_id
    - GF_LOG
    - CAM_CreateInstance
    - gf_service_connect_ack
    - CAM_SetCallback
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CAM_ConnectService(GF_InputService *plug, GF_ClientService *serv,
      const char *url)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:119,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:119,1
    - Dst: CAM_DestroyInstance
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:123,1
    - Dst: gf_service_disconnect_ack
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:125,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - plug
    argTypes:
    - GF_InputService*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 127
    functionName: CAM_CloseService
    functionSourceFile: /src/gpac/modules/deprecated/ios_cam/ios_cam.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_th_id
    - CAM_DestroyInstance
    - gf_service_disconnect_ack
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CAM_CloseService(GF_InputService *plug)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_new
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:150,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:153,1
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:159,1
    - Dst: CAM_GetCurrentFormat
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:161,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:163,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:164,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:165,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:166,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:167,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:168,1
    - Dst: gf_bs_align
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:170,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:171,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:172,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:177,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 31
    argCount: 3
    argNames:
    - plug
    - expect_type
    - sub_url
    argTypes:
    - GF_InputService*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 182
    functionName: CAM_GetServiceDesc
    functionSourceFile: /src/gpac/modules/deprecated/ios_cam/ios_cam.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_odf_desc_esd_new
    - gf_bs_get_content
    - gf_bs_write_u16
    - gf_bs_align
    - gf_bs_del
    - CAM_GetCurrentFormat
    - gf_odf_desc_new
    - gf_list_add
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *CAM_GetServiceDesc(GF_InputService *plug, u32 expect_type,
      const char *sub_url)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:191,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:191,1
    - Dst: camStartCamera
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:200,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:202,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 4
    argNames:
    - plug
    - channel
    - url
    - upstream
    argTypes:
    - GF_InputService*
    - LPNETCHANNEL
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 184
    functionDepth: 1
    functionLinenumber: 184
    functionLinenumberEnd: 204
    functionName: CAM_ConnectChannel
    functionSourceFile: /src/gpac/modules/deprecated/ios_cam/ios_cam.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_th_id
    - gf_service_connect_ack
    - camStartCamera
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CAM_ConnectChannel(GF_InputService *plug, LPNETCHANNEL channel,
      const char *url, Bool upstream)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:213,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:213,1
    - Dst: camStopCamera
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:217,1
    - Dst: gf_service_disconnect_ack
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:219,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - plug
    - channel
    argTypes:
    - GF_InputService*
    - LPNETCHANNEL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 206
    functionDepth: 1
    functionLinenumber: 206
    functionLinenumberEnd: 221
    functionName: CAM_DisconnectChannel
    functionSourceFile: /src/gpac/modules/deprecated/ios_cam/ios_cam.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_th_id
    - camStopCamera
    - gf_service_disconnect_ack
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CAM_DisconnectChannel(GF_InputService *plug, LPNETCHANNEL channel)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:229,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 3
    argNames:
    - yuv420sp
    - width
    - height
    argTypes:
    - char*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 268
    functionName: decodeYUV420SP
    functionSourceFile: /src/gpac/modules/deprecated/ios_cam/ios_cam.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: int
    signature: int * decodeYUV420SP( char* yuv420sp, int width, int height)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_term_get_time
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:276,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:278,1
    - Dst: gf_service_send_packet
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - data
    - dataSize
    argTypes:
    - unsigned char*
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 283
    functionName: processFrameBuf
    functionSourceFile: /src/gpac/modules/deprecated/ios_cam/ios_cam.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_service_send_packet
    - gf_term_get_time
    linkageType: ''
    returnType: void
    signature: void processFrameBuf( unsigned char* data, unsigned int dataSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:287,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - read
    argTypes:
    - IOSCamCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 285
    functionDepth: 1
    functionLinenumber: 285
    functionLinenumberEnd: 290
    functionName: camStartCamera
    functionSourceFile: /src/gpac/modules/deprecated/ios_cam/ios_cam.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - gf_th_id
    linkageType: ''
    returnType: void
    signature: void camStartCamera(IOSCamCtx *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:294,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:294,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - read
    argTypes:
    - IOSCamCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 292
    functionDepth: 1
    functionLinenumber: 292
    functionLinenumberEnd: 297
    functionName: camStopCamera
    functionSourceFile: /src/gpac/modules/deprecated/ios_cam/ios_cam.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - gf_th_id
    linkageType: ''
    returnType: void
    signature: void camStopCamera(IOSCamCtx *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:301,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:301,1
    - Dst: CAM_Stop
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:304,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - read
    argTypes:
    - IOSCamCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 299
    functionDepth: 1
    functionLinenumber: 299
    functionLinenumberEnd: 305
    functionName: pauseCamera
    functionSourceFile: /src/gpac/modules/deprecated/ios_cam/ios_cam.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_th_id
    - CAM_Stop
    linkageType: ''
    returnType: void
    signature: void pauseCamera(IOSCamCtx *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:309,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:309,1
    - Dst: CAM_Start
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:312,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - read
    argTypes:
    - IOSCamCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 307
    functionDepth: 1
    functionLinenumber: 307
    functionLinenumberEnd: 313
    functionName: resumeCamera
    functionSourceFile: /src/gpac/modules/deprecated/ios_cam/ios_cam.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_th_id
    - CAM_Start
    linkageType: ''
    returnType: void
    signature: void resumeCamera(IOSCamCtx *read)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: resumeCamera
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:338,1
    - Dst: pauseCamera
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:341,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:353,1
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:355,1
    - Dst: CAM_GetCurrentFormat
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:357,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:359,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:360,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:361,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:362,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:363,1
    - Dst: gf_bs_align
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:365,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:366,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:367,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 48
    argCount: 2
    argNames:
    - plug
    - com
    argTypes:
    - GF_InputService*
    - GF_NetworkCommand*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 315
    functionDepth: 1
    functionLinenumber: 315
    functionLinenumberEnd: 377
    functionName: CAM_ServiceCommand
    functionSourceFile: /src/gpac/modules/deprecated/ios_cam/ios_cam.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - GF_LOG
    - gf_bs_write_u16
    - pauseCamera
    - gf_bs_get_content
    - gf_bs_align
    - gf_bs_del
    - CAM_GetCurrentFormat
    - resumeCamera
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CAM_ServiceCommand(GF_InputService *plug, GF_NetworkCommand
      *com)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:383,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:384,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:393,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 379
    functionDepth: 1
    functionLinenumber: 379
    functionLinenumberEnd: 396
    functionName: CAM_client_load
    functionSourceFile: /src/gpac/modules/deprecated/ios_cam/ios_cam.c
    functionUses: 1
    functionsReached:
    - GF_REGISTER_MODULE_INTERFACE
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_InputService
    signature: GF_InputService *CAM_client_load()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:403,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:404,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bi
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 398
    functionDepth: 0
    functionLinenumber: 398
    functionLinenumberEnd: 405
    functionName: CAM_client_del
    functionSourceFile: /src/gpac/modules/deprecated/ios_cam/ios_cam.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void CAM_client_del(GF_BaseInterface *bi)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 407
    functionDepth: 0
    functionLinenumber: 407
    functionLinenumberEnd: 415
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/ios_cam/ios_cam.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CAM_client_load
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:421,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 417
    functionDepth: 0
    functionLinenumber: 417
    functionLinenumberEnd: 423
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/ios_cam/ios_cam.c
    functionUses: 0
    functionsReached:
    - CAM_client_load
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CAM_client_del
      Src: /src/gpac/modules/deprecated/ios_cam/ios_cam.c:430,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 425
    functionDepth: 0
    functionLinenumber: 425
    functionLinenumberEnd: 433
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/ios_cam/ios_cam.c
    functionUses: 0
    functionsReached:
    - CAM_client_del
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 49
    functionName: NSObject
    functionSourceFile: /src/gpac/modules/deprecated/ios_cam/CameraObject.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: interface
    signature: "interface NSObject\n\t<AVCaptureVideoDataOutputSampleBufferDelegate>"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - plug
    argTypes:
    - GF_InputService*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: MSE_RegisterMimeTypes
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 MSE_RegisterMimeTypes(const GF_InputService *plug)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:49,1
    - Dst: strncmp
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:50,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - plug
    - url
    argTypes:
    - GF_InputService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 55
    functionName: MSE_CanHandleURL
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - strncmp
    linkageType: ''
    returnType: Bool
    signature: Bool MSE_CanHandleURL(GF_InputService *plug, const char *url)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:67,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:74,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:75,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 2
    argNames:
    - mediasource
    - channel
    argTypes:
    - GF_HTML_MediaSource*
    - LPNETCHANNEL
    assertStmts:
    - condition: (ch->odm && ch->odm->ID)
      pos:
        line_end: 66
        line_start: 66
        source_file: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c
    constantsTouched: []
    func_position:
      end: 80
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 80
    functionName: MSE_GetSourceBufferForChannel
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - assert
    linkageType: ''
    returnType: GF_HTML_SourceBuffer
    signature: GF_HTML_SourceBuffer *MSE_GetSourceBufferForChannel(GF_HTML_MediaSource
      *mediasource, LPNETCHANNEL channel)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:88,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:91,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - sb
    - channel
    argTypes:
    - GF_HTML_SourceBuffer*
    - LPNETCHANNEL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 98
    functionName: MSE_GetTrackForChannel
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_HTML_Track
    signature: GF_HTML_Track *MSE_GetTrackForChannel(GF_HTML_SourceBuffer *sb, LPNETCHANNEL
      channel)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:107,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:110,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - sb
    - ESID
    argTypes:
    - GF_HTML_SourceBuffer*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 117
    functionName: gf_mse_get_track_by_esid
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_HTML_Track
    signature: GF_HTML_Track *gf_mse_get_track_by_esid(GF_HTML_SourceBuffer *sb, u32
      ESID)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: MSE_GetSourceBufferForChannel
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:125,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:127,1
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:129,1
    - Dst: gf_mse_get_track_by_esid
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:130,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:135,1
    - Dst: GF_HTML_SourceBuffer*::parser::ConnectChannel
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:136,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 4
    argNames:
    - plug
    - channel
    - url
    - upstream
    argTypes:
    - GF_InputService*
    - LPNETCHANNEL
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 121
    functionDepth: 2
    functionLinenumber: 121
    functionLinenumberEnd: 141
    functionName: MSE_ConnectChannel
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c
    functionUses: 0
    functionsReached:
    - sscanf
    - GF_LOG
    - strstr
    - MSE_GetSourceBufferForChannel
    - gf_mse_get_track_by_esid
    - GF_HTML_SourceBuffer*::parser::ConnectChannel
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MSE_ConnectChannel(GF_InputService *plug, LPNETCHANNEL channel,
      const char *url, Bool upstream)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: MSE_GetSourceBufferForChannel
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:147,1
    - Dst: MSE_GetTrackForChannel
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:149,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:153,1
    - Dst: GF_HTML_SourceBuffer*::parser::DisconnectChannel
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:154,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 2
    argNames:
    - plug
    - channel
    argTypes:
    - GF_InputService*
    - LPNETCHANNEL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 143
    functionDepth: 2
    functionLinenumber: 143
    functionLinenumberEnd: 155
    functionName: MSE_DisconnectChannel
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - MSE_GetSourceBufferForChannel
    - MSE_GetTrackForChannel
    - GF_HTML_SourceBuffer*::parser::DisconnectChannel
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MSE_DisconnectChannel(GF_InputService *plug, LPNETCHANNEL channel)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:163,1
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:169,1
    - Dst: gf_mse_mediasource_open
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:173,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - plug
    - serv
    - url
    argTypes:
    - GF_InputService*
    - GF_ClientService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 176
    functionName: MSE_ConnectService
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c
    functionUses: 0
    functionsReached:
    - gf_mse_mediasource_open
    - GF_LOG
    - sscanf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MSE_ConnectService(GF_InputService *plug, GF_ClientService *serv,
      const char *url)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - plug
    - expect_type
    - sub_url
    argTypes:
    - GF_InputService*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 184
    functionName: MSE_GetServiceDesc
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *MSE_GetServiceDesc(GF_InputService *plug, u32 expect_type,
      const char *sub_url)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:190,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:191,1
    - Dst: gf_service_disconnect_ack
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:193,1
    - Dst: gf_mse_mediasource_del
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:194,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - plug
    argTypes:
    - GF_InputService*
    assertStmts:
    - condition: ( msein )
      pos:
        line_end: 189
        line_start: 189
        source_file: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c
    constantsTouched: []
    func_position:
      end: 198
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 198
    functionName: MSE_CloseService
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c
    functionUses: 0
    functionsReached:
    - gf_mse_mediasource_del
    - GF_LOG
    - assert
    - gf_service_disconnect_ack
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MSE_CloseService(GF_InputService *plug)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:212,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:215,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:224,1
    - Dst: MSE_GetSourceBufferForChannel
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:227,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:229,1
    - Dst: GF_HTML_SourceBuffer*::parser::ServiceCommand
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:235,1
    - Dst: GF_HTML_SourceBuffer*::parser::ServiceCommand
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:238,1
    - Dst: GF_HTML_SourceBuffer*::parser::ServiceCommand
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:241,1
    - Dst: GF_HTML_SourceBuffer*::parser::ServiceCommand
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:244,1
    - Dst: GF_HTML_SourceBuffer*::parser::ServiceCommand
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:247,1
    - Dst: GF_HTML_SourceBuffer*::parser::ServiceCommand
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:250,1
    - Dst: GF_HTML_SourceBuffer*::parser::ServiceCommand
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:263,1
    - Dst: GF_HTML_SourceBuffer*::parser::ServiceCommand
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:266,1
    - Dst: GF_HTML_SourceBuffer*::parser::ServiceCommand
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:269,1
    - Dst: GF_HTML_SourceBuffer*::parser::ServiceCommand
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:272,1
    - Dst: GF_HTML_SourceBuffer*::parser::ServiceCommand
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:279,1
    - Dst: GF_HTML_SourceBuffer*::parser::ServiceCommand
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:282,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 58
    argCount: 2
    argNames:
    - plug
    - com
    argTypes:
    - GF_InputService*
    - GF_NetworkCommand*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 202
    functionDepth: 2
    functionLinenumber: 202
    functionLinenumberEnd: 284
    functionName: MSE_ServiceCommand
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GF_HTML_SourceBuffer*::parser::ServiceCommand
    - MSE_GetSourceBufferForChannel
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MSE_ServiceCommand(GF_InputService *plug, GF_NetworkCommand
      *com)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MSE_GetSourceBufferForChannel
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:291,1
    - Dst: MSE_GetTrackForChannel
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:292,1
    - Dst: gf_mse_track_buffer_get_next_packet
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:294,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 5
    argCount: 8
    argNames:
    - plug
    - channel
    - out_data_ptr
    - out_data_size
    - out_sl_hdr
    - sl_compressed
    - out_reception_status
    - is_new_data
    argTypes:
    - GF_InputService*
    - LPNETCHANNEL
    - char**
    - u32*
    - GF_SLHeader*
    - Bool*
    - GF_Err*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 287
    functionDepth: 2
    functionLinenumber: 287
    functionLinenumberEnd: 296
    functionName: MSE_ChannelGetSLP
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c
    functionUses: 0
    functionsReached:
    - MSE_GetSourceBufferForChannel
    - gf_mse_track_buffer_get_next_packet
    - MSE_GetTrackForChannel
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err MSE_ChannelGetSLP(GF_InputService *plug, LPNETCHANNEL channel,
      char **out_data_ptr, u32 *out_data_size,\n                                GF_SLHeader
      *out_sl_hdr, Bool *sl_compressed, GF_Err *out_reception_status, Bool *is_new_data)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MSE_GetSourceBufferForChannel
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:302,1
    - Dst: MSE_GetTrackForChannel
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:303,1
    - Dst: gf_mse_track_buffer_release_packet
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:305,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 5
    argCount: 2
    argNames:
    - plug
    - channel
    argTypes:
    - GF_InputService*
    - LPNETCHANNEL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 299
    functionDepth: 2
    functionLinenumber: 299
    functionLinenumberEnd: 307
    functionName: MSE_ChannelReleaseSLP
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c
    functionUses: 0
    functionsReached:
    - gf_mse_track_buffer_release_packet
    - MSE_GetSourceBufferForChannel
    - MSE_GetTrackForChannel
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MSE_ChannelReleaseSLP(GF_InputService *plug, LPNETCHANNEL channel)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:313,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:315,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - plug
    - url
    argTypes:
    - GF_InputService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 310
    functionDepth: 1
    functionLinenumber: 310
    functionLinenumberEnd: 320
    functionName: MSE_CanHandleURLInService
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - strcmp
    linkageType: ''
    returnType: Bool
    signature: Bool MSE_CanHandleURLInService(GF_InputService *plug, const char *url)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 324
    functionDepth: 0
    functionLinenumber: 324
    functionLinenumberEnd: 334
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:346,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:348,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:350,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:352,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 336
    functionDepth: 1
    functionLinenumber: 336
    functionLinenumberEnd: 372
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_REGISTER_MODULE_INTERFACE
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:383,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:384,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c:385,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - bi
    argTypes:
    - GF_BaseInterface*
    assertStmts:
    - condition: (msein)
      pos:
        line_end: 382
        line_start: 382
        source_file: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c
    constantsTouched: []
    func_position:
      end: 387
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 387
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/mse_in/mse_in.c
    functionUses: 0
    functionsReached:
    - gf_free
    - assert
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *bi)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - uir
    - event
    - consumed_by_compositor
    argTypes:
    - GF_UIRecord*
    - GF_Event*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 56
    functionName: uir_on_event_play
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool uir_on_event_play(GF_UIRecord *uir , GF_Event *event, Bool consumed_by_compositor)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:75,1
    - Dst: gf_clock_time
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:75,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:76,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:77,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:78,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:79,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:80,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:80,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:81,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:87,1
    - Dst: gf_clock_time
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:87,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:88,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:89,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:90,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:91,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:95,1
    - Dst: gf_clock_time
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:95,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:96,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:97,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 38
    argCount: 3
    argNames:
    - uir
    - event
    - consumed_by_compositor
    argTypes:
    - GF_UIRecord*
    - GF_Event*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 101
    functionName: uir_on_event_record
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c
    functionUses: 0
    functionsReached:
    - gf_clock_time
    - gf_bs_write_u32
    - gf_bs_write_u8
    - FIX2FLT
    - gf_bs_write_float
    linkageType: ''
    returnType: Bool
    signature: Bool uir_on_event_record(GF_UIRecord *uir , GF_Event *event, Bool consumed_by_compositor)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:105,1
    - Dst: gf_bs_available
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:107,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:110,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:111,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:122,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:123,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:124,1
    - Dst: FLT2FIX
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:125,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:125,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:126,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:132,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:133,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:134,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:138,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 1
    argNames:
    - uir
    argTypes:
    - GF_UIRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 142
    functionName: uir_load_event
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_bs_read_u32
    - memset
    - gf_bs_read_float
    - gf_bs_read_u8
    - gf_bs_available
    linkageType: ''
    returnType: void
    signature: void uir_load_event(GF_UIRecord *uir)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:152,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:154,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:157,1
    - Dst: gf_fopen
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:158,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:160,1
    - Dst: gf_term_add_event_filter
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:165,1
    - Dst: uir_load_event
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:167,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:168,1
    - Dst: gf_fopen
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:169,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:171,1
    - Dst: gf_term_add_event_filter
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:175,1
    - Dst: gf_fclose
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:182,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:183,1
    - Dst: gf_term_remove_event_filter
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:184,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:187,1
    - Dst: gf_clock_time
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:192,1
    - Dst: GF_UIRecord*::term::compositor::video_out::on_event
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:193,1
    - Dst: uir_load_event
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:194,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 50
    argCount: 3
    argNames:
    - termext
    - action
    - param
    argTypes:
    - GF_TermExt*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 144
    functionDepth: 2
    functionLinenumber: 144
    functionLinenumberEnd: 199
    functionName: uir_process
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - GF_UIRecord*::term::compositor::video_out::on_event
    - gf_opts_set_key
    - gf_bs_del
    - gf_term_add_event_filter
    - gf_fopen
    - strcmp
    - gf_opts_get_key
    - gf_clock_time
    - gf_bs_from_file
    - gf_term_remove_event_filter
    - uir_load_event
    linkageType: ''
    returnType: Bool
    signature: Bool uir_process(GF_TermExt *termext, u32 action, void *param)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:206,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:207,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:208,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 214
    functionName: uir_new
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c
    functionUses: 0
    functionsReached:
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_TermExt
    signature: GF_TermExt *uir_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:221,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 223
    functionName: uir_delete
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void uir_delete(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 233
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: uir_new
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:238,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 235
    functionDepth: 2
    functionLinenumber: 235
    functionLinenumberEnd: 240
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c
    functionUses: 0
    functionsReached:
    - uir_new
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: uir_delete
      Src: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c:247,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 250
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ui_rec/ui_rec.c
    functionUses: 0
    functionsReached:
    - uir_delete
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:52,1
    - Dst: gf_node_init
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:54,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:56,1
    - Dst: gf_node_register
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:57,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - osd
    - tag
    - par
    argTypes:
    - GF_OSD*
    - u32
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 61
    functionName: create_node
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/osd/osd.c
    functionUses: 0
    functionsReached:
    - gf_node_init
    - gf_node_list_add_child
    - gf_node_new
    - gf_node_register
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE *create_node(GF_OSD *osd, u32 tag, GF_Node *par)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_set
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:127,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:130,1
    - Dst: FIX2INT
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:130,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:131,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - hdl
    - event
    - observer
    argTypes:
    - GF_Node*
    - GF_DOM_Event*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 134
    functionName: osd_on_resize
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/osd/osd.c
    functionUses: 0
    functionsReached:
    - gf_node_dirty_set
    - INT2FIX
    - FIX2INT
    linkageType: ''
    returnType: void
    signature: void osd_on_resize(GF_Node *hdl, GF_DOM_Event *event, GF_Node *observer)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_new
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:146,1
    - Dst: gf_scene_new
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:148,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:150,1
    - Dst: gf_sm_load_bt_from_string
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:153,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:154,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:155,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:159,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:160,1
    - Dst: gf_dom_listener_build
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:162,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:166,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:167,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:168,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:169,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:171,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:174,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:177,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:178,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 30
    argCount: 1
    argNames:
    - osd
    argTypes:
    - GF_OSD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 182
    functionName: osd_load_scene
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/osd/osd.c
    functionUses: 0
    functionsReached:
    - gf_sg_set_scene_size_info
    - gf_free
    - gf_list_get
    - gf_dom_listener_build
    - gf_scene_new
    - gf_sg_set_root_node
    - gf_odm_new
    - gf_sg_find_node_by_name
    - strcpy
    - strcmp
    - gf_opts_get_key
    - gf_sm_load_bt_from_string
    - gf_list_del
    linkageType: ''
    returnType: Bool
    signature: Bool osd_load_scene(GF_OSD *osd)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:190,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:196,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:199,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:201,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 3
    argNames:
    - udta
    - event
    - consumed_by_compositor
    argTypes:
    - void*
    - GF_Event*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 206
    functionName: osd_on_event_play
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/osd/osd.c
    functionUses: 0
    functionsReached:
    - gf_sg_set_scene_size_info
    - gf_cfg_set_key
    - gf_node_dirty_set
    linkageType: ''
    returnType: Bool
    signature: Bool osd_on_event_play(void *udta, GF_Event *event, Bool consumed_by_compositor)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:215,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:216,1
    - Dst: osd_load_scene
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:219,1
    - Dst: gf_sc_register_extra_graph
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:221,1
    - Dst: gf_term_add_event_filter
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:230,1
    - Dst: gf_sc_register_extra_graph
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:236,1
    - Dst: gf_odm_disconnect
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:237,1
    - Dst: gf_term_remove_event_filter
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:240,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:246,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:247,1
    - Dst: gf_sc_get_fps
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:247,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:248,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 3
    argNames:
    - termext
    - action
    - param
    argTypes:
    - GF_TermExt*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 207
    functionDepth: 2
    functionLinenumber: 207
    functionLinenumberEnd: 253
    functionName: osd_process
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/osd/osd.c
    functionUses: 0
    functionsReached:
    - gf_sys_get_rti
    - gf_sc_register_extra_graph
    - gf_sc_get_fps
    - gf_node_dirty_set
    - sprintf
    - osd_load_scene
    - gf_term_add_event_filter
    - strcmp
    - gf_opts_get_key
    - gf_term_remove_event_filter
    - gf_odm_disconnect
    linkageType: ''
    returnType: Bool
    signature: Bool osd_process(GF_TermExt *termext, u32 action, void *param)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:260,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:261,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:262,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:264,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 268
    functionName: osd_new
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/osd/osd.c
    functionUses: 0
    functionsReached:
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_TermExt
    signature: GF_TermExt *osd_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:275,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 277
    functionName: osd_delete
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/osd/osd.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void osd_delete(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 287
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/osd/osd.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: osd_new
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:292,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 289
    functionDepth: 2
    functionLinenumber: 289
    functionLinenumberEnd: 294
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/osd/osd.c
    functionUses: 0
    functionsReached:
    - osd_new
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: osd_delete
      Src: /src/gpac/modules/deprecated/old_arch/osd/osd.c:301,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 296
    functionDepth: 1
    functionLinenumber: 296
    functionLinenumberEnd: 304
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/osd/osd.c
    functionUses: 0
    functionsReached:
    - osd_delete
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - device
    - uuid
    argTypes:
    - PLT_DeviceDataReference
    - NPT_String
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: GPAC_MediaRendererItem::GPAC_MediaRendererItem
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GPAC_MediaRendererItem(PLT_DeviceDataReference device, NPT_String
      uuid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - device
    - uuid
    argTypes:
    - PLT_DeviceDataReference
    - NPT_String
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: GPAC_MediaServerItem::GPAC_MediaServerItem
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GPAC_MediaServerItem(PLT_DeviceDataReference device, NPT_String
      uuid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' device'
    argTypes:
    - PLT_DeviceDataReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: GPAC_MediaController::OnDeviceAdded
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result OnDeviceAdded(PLT_DeviceDataReference& device)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' device'
    argTypes:
    - PLT_DeviceDataReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionName: GPAC_MediaController::OnDeviceRemoved
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result OnDeviceRemoved(PLT_DeviceDataReference& device)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - str
    - dur
    argTypes:
    - char*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 47
    functionName: format_time_string
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 0
    functionsReached:
    - sprintf
    linkageType: ''
    returnType: void
    signature: void format_time_string(char *str, Double dur)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - upnp
    - friendly_name
    - show_ip
    - uuid
    - port
    argTypes:
    - GF_UPnP*
    - char*
    - bool
    - char*
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 59
    functionName: GPAC_MediaRenderer::GPAC_MediaRenderer
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 0
    functionsReached:
    - gf_list_new
    linkageType: ''
    returnType: void
    signature: "void GPAC_MediaRenderer::GPAC_MediaRenderer(GF_UPnP *upnp, const char*
      \ friendly_name,\n                                       bool         show_ip,\n
      \                                      const char*  uuid,\n                                       unsigned
      int port)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:65,1
    - Dst: gf_list_last
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:66,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:67,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:68,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 72
    functionName: GPAC_MediaRenderer::~GPAC_MediaRenderer()
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - gf_list_last
    - gf_list_rem_last
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void GPAC_MediaRenderer::~GPAC_MediaRenderer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PLT_Service::PLT_Service
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:81,1
    - Dst: NPT_CHECK_FATAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:88,1
    - Dst: SetSCPDXML
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:88,1
    - Dst: NPT_CHECK_FATAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:89,1
    - Dst: AddService
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:89,1
    - Dst: SetStateVariableRate
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:91,1
    - Dst: NPT_TimeInterval
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:91,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:92,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:95,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:98,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:99,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:100,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:103,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:104,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:105,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:106,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:107,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:108,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:109,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:110,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:111,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:114,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:115,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:116,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:117,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:118,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:119,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:120,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:121,1
    - Dst: FindStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:126,1
    - Dst: FindStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:129,1
    - Dst: FindStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:132,1
    - Dst: FindStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:135,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:139,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:140,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:141,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:144,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:145,1
    - Dst: PLT_Service::PLT_Service
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:150,1
    - Dst: NPT_CHECK_FATAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:155,1
    - Dst: PLT_Service*::SetSCPDXML
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:155,1
    - Dst: NPT_CHECK_FATAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:156,1
    - Dst: AddService
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:156,1
    - Dst: PLT_Service*::SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:158,1
    - Dst: PLT_Service*::SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:161,1
    - Dst: PLT_Service*::SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:162,1
    - Dst: PLT_Service::PLT_Service
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:167,1
    - Dst: NPT_CHECK_FATAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:173,1
    - Dst: PLT_Service*::SetSCPDXML
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:173,1
    - Dst: NPT_CHECK_FATAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:174,1
    - Dst: AddService
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:174,1
    - Dst: PLT_Service*::SetStateVariableRate
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:176,1
    - Dst: NPT_TimeInterval
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:176,1
    - Dst: PLT_Service*::SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:178,1
    - Dst: PLT_Service*::SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:179,1
    - Dst: PLT_Service::PLT_Service
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:230,1
    - Dst: NPT_CHECK_FATAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:232,1
    - Dst: SetSCPDXML
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:232,1
    - Dst: NPT_CHECK_FATAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:233,1
    - Dst: AddService
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:233,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:235,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 58
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 240
    functionName: GPAC_MediaRenderer::SetupServices
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 0
    functionsReached:
    - AddService
    - PLT_Service*::SetSCPDXML
    - PLT_Service*::SetStateVariable
    - PLT_Service*::SetStateVariableRate
    - SetStateVariable
    - SetSCPDXML
    - NPT_TimeInterval
    - FindStateVariable
    - PLT_Service::PLT_Service
    - SetStateVariableRate
    - NPT_CHECK_FATAL
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_MediaRenderer::SetupServices()
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: NPT_COMPILER_UNUSED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:246,1
    - Dst: GetActionDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:249,1
    - Dst: GetRemoteAddress
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:251,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:254,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:255,1
    - Dst: SetArgumentsOutFromStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:255,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:260,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:261,1
    - Dst: SetArgumentsOutFromStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:261,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:266,1
    - Dst: GPAC_MediaRenderer::OnGetCurrentConnectionInfo
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:267,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:269,1
    - Dst: OnMigrate
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:270,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:271,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:272,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:274,1
    - Dst: SetArgumentsOutFromStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:274,1
    - Dst: GetActionDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:284,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:285,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:286,1
    - Dst: VerifyArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:286,1
    - Dst: SetError
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:287,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:292,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:293,1
    - Dst: SetArgumentsOutFromStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:293,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:298,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:299,1
    - Dst: SetArgumentsOutFromStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:299,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:304,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:305,1
    - Dst: SetArgumentsOutFromStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:305,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:310,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:314,1
    - Dst: format_time_string
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:315,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:316,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:318,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:319,1
    - Dst: format_time_string
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:320,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:321,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:322,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:323,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:324,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:326,1
    - Dst: SetArgumentsOutFromStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:326,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:332,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:333,1
    - Dst: SetArgumentsOutFromStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:333,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:338,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:339,1
    - Dst: SetArgumentsOutFromStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:339,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:344,1
    - Dst: GPAC_MediaRenderer::OnNext
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:345,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:347,1
    - Dst: GPAC_MediaRenderer::OnPause
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:348,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:350,1
    - Dst: GPAC_MediaRenderer::OnPlay
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:351,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:353,1
    - Dst: GPAC_MediaRenderer::OnPrevious
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:354,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:356,1
    - Dst: GPAC_MediaRenderer::OnSeek
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:357,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:359,1
    - Dst: GPAC_MediaRenderer::OnStop
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:360,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:362,1
    - Dst: GPAC_MediaRenderer::OnSetAVTransportURI
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:363,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:365,1
    - Dst: GPAC_MediaRenderer::OnSetPlayMode
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:366,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:370,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:372,1
    - Dst: VerifyArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:372,1
    - Dst: SetError
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:373,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:378,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:378,1
    - Dst: NPT_CHECK_SEVERE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:379,1
    - Dst: SetArgumentsOutFromStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:379,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:383,1
    - Dst: NPT_CHECK_SEVERE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:384,1
    - Dst: SetArgumentsOutFromStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:384,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:388,1
    - Dst: GPAC_MediaRenderer::OnSetVolume
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:389,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:391,1
    - Dst: GPAC_MediaRenderer::OnSetVolumeDB
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:392,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:395,1
    - Dst: GPAC_MediaRenderer::OnSetMute
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:396,1
    - Dst: SetError
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:399,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 130
    argCount: 2
    argNames:
    - '          action'
    - ' context'
    argTypes:
    - PLT_ActionReference
    - PLT_HttpRequestContext
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 401
    functionName: GPAC_MediaRenderer::OnAction
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 0
    functionsReached:
    - GPAC_MediaRenderer::OnSetAVTransportURI
    - GetActionDesc
    - GPAC_MediaRenderer::OnSetMute
    - NPT_FAILED
    - OnMigrate
    - NPT_COMPILER_UNUSED
    - GPAC_MediaRenderer::OnSetVolume
    - NPT_String::Compare
    - GPAC_MediaRenderer::OnStop
    - NPT_CHECK_SEVERE
    - GPAC_MediaRenderer::OnPause
    - GPAC_MediaRenderer::OnSetVolumeDB
    - GetRemoteAddress
    - GPAC_MediaRenderer::OnPlay
    - SetStateVariable
    - GPAC_MediaRenderer::OnSetPlayMode
    - GPAC_MediaRenderer::OnPrevious
    - GPAC_MediaRenderer::OnGetCurrentConnectionInfo
    - format_time_string
    - VerifyArgumentValue
    - SetError
    - SetArgumentsOutFromStateVariable
    - GPAC_MediaRenderer::OnSeek
    - GPAC_MediaRenderer::OnNext
    linkageType: ''
    returnType: NPT_Result
    signature: "NPT_Result GPAC_MediaRenderer::OnAction(PLT_ActionReference&          action,\n
      \                            const PLT_HttpRequestContext& context)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:406,1
    - Dst: VerifyArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:406,1
    - Dst: SetError
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:407,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:411,1
    - Dst: SetArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:411,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:414,1
    - Dst: SetArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:414,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:417,1
    - Dst: SetArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:417,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:420,1
    - Dst: SetArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:420,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:423,1
    - Dst: SetArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:423,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:426,1
    - Dst: SetArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:426,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:429,1
    - Dst: SetArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:429,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 1
    argNames:
    - ' action'
    argTypes:
    - PLT_ActionReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 403
    functionDepth: 0
    functionLinenumber: 403
    functionLinenumberEnd: 434
    functionName: GPAC_MediaRenderer::OnGetCurrentConnectionInfo
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 1
    functionsReached:
    - NPT_FAILED
    - SetArgumentValue
    - SetError
    - VerifyArgumentValue
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_MediaRenderer::OnGetCurrentConnectionInfo(PLT_ActionReference&
      action)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:441,1
    - Dst: GetArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:441,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:447,1
    - Dst: GPAC_MediaRenderer::OnStop
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:451,1
    - Dst: strrchr
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:453,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:454,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:455,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:460,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:461,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:462,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:462,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:463,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:464,1
    - Dst: OnConnect
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:467,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:469,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:470,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:472,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:472,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:473,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:474,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:475,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 1
    argNames:
    - ' action'
    argTypes:
    - PLT_ActionReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 436
    functionDepth: 1
    functionLinenumber: 436
    functionLinenumberEnd: 477
    functionName: GPAC_MediaRenderer::OnSetAVTransportURI
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 1
    functionsReached:
    - gf_strdup
    - strrchr
    - OnConnect
    - GF_LOG
    - strcpy
    - sprintf
    - GPAC_MediaRenderer::OnStop
    - gf_list_count
    - SetStateVariable
    - GetArgumentValue
    - gf_list_add
    - stricmp
    - NPT_FAILED
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_MediaRenderer::OnSetAVTransportURI(PLT_ActionReference&
      action)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:481,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:482,1
    - Dst: GPAC_MediaRenderer::OnPause
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:483,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' action'
    argTypes:
    - PLT_ActionReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 479
    functionDepth: 1
    functionLinenumber: 479
    functionLinenumberEnd: 485
    functionName: GPAC_MediaRenderer::OnPause
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 2
    functionsReached:
    - GF_LOG
    - SetStateVariable
    - GPAC_MediaRenderer::OnPause
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_MediaRenderer::OnPause(PLT_ActionReference& action)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:489,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:493,1
    - Dst: GPAC_MediaRenderer::OnPause
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:494,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:495,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:496,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:499,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:500,1
    - Dst: OnConnect
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:502,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - ' action'
    argTypes:
    - PLT_ActionReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 487
    functionDepth: 2
    functionLinenumber: 487
    functionLinenumberEnd: 506
    functionName: GPAC_MediaRenderer::OnPlay
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 1
    functionsReached:
    - GPAC_MediaRenderer::OnPause
    - gf_list_get
    - OnConnect
    - GF_LOG
    - gf_list_count
    - SetStateVariable
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_MediaRenderer::OnPlay(PLT_ActionReference& action)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:511,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:513,1
    - Dst: GPAC_MediaRenderer::OnStop
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:514,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' action'
    argTypes:
    - PLT_ActionReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 509
    functionDepth: 1
    functionLinenumber: 509
    functionLinenumberEnd: 517
    functionName: GPAC_MediaRenderer::OnStop
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 3
    functionsReached:
    - GF_LOG
    - SetStateVariable
    - GPAC_MediaRenderer::OnStop
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_MediaRenderer::OnStop(PLT_ActionReference& action)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' action'
    argTypes:
    - PLT_ActionReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 522
      start: 519
    functionDepth: 0
    functionLinenumber: 519
    functionLinenumberEnd: 522
    functionName: GPAC_MediaRenderer::OnPrevious
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_MediaRenderer::OnPrevious(PLT_ActionReference& action)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' action'
    argTypes:
    - PLT_ActionReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 524
    functionDepth: 0
    functionLinenumber: 524
    functionLinenumberEnd: 527
    functionName: GPAC_MediaRenderer::OnNext
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_MediaRenderer::OnNext(PLT_ActionReference& action)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:534,1
    - Dst: GetArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:534,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:537,1
    - Dst: GetArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:537,1
    - Dst: SetError
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:541,1
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:544,1
    - Dst: GPAC_MediaRenderer::OnSeek
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:546,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - ' action'
    argTypes:
    - PLT_ActionReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 529
    functionDepth: 1
    functionLinenumber: 529
    functionLinenumberEnd: 548
    functionName: GPAC_MediaRenderer::OnSeek
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 2
    functionsReached:
    - sscanf
    - SetError
    - GPAC_MediaRenderer::OnSeek
    - GetArgumentValue
    - NPT_FAILED
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_MediaRenderer::OnSeek(PLT_ActionReference& action)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' action'
    argTypes:
    - PLT_ActionReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 554
      start: 551
    functionDepth: 0
    functionLinenumber: 551
    functionLinenumberEnd: 554
    functionName: GPAC_MediaRenderer::OnSetPlayMode
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_MediaRenderer::OnSetPlayMode(PLT_ActionReference& action)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' action'
    argTypes:
    - PLT_ActionReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 560
    functionName: GPAC_MediaRenderer::OnSetVolume
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_MediaRenderer::OnSetVolume(PLT_ActionReference& action)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' action'
    argTypes:
    - PLT_ActionReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 562
    functionDepth: 0
    functionLinenumber: 562
    functionLinenumberEnd: 565
    functionName: GPAC_MediaRenderer::OnSetVolumeDB
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_MediaRenderer::OnSetVolumeDB(PLT_ActionReference& action)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' action'
    argTypes:
    - PLT_ActionReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 567
    functionDepth: 0
    functionLinenumber: 567
    functionLinenumberEnd: 570
    functionName: GPAC_MediaRenderer::OnSetMute
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_MediaRenderer::OnSetMute(PLT_ActionReference& action)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' action'
    argTypes:
    - PLT_ActionReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 572
    functionDepth: 0
    functionLinenumber: 572
    functionLinenumberEnd: 575
    functionName: GPAC_MediaRenderer::OnGetVolumeDBRange
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_MediaRenderer::OnGetVolumeDBRange(PLT_ActionReference&
      action )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: format_time_string
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:580,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:582,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - duration
    - can_seek
    argTypes:
    - Double
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 583
      start: 577
    functionDepth: 1
    functionLinenumber: 577
    functionLinenumberEnd: 583
    functionName: GPAC_MediaRenderer::SetDuration
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 0
    functionsReached:
    - SetStateVariable
    - format_time_string
    linkageType: ''
    returnType: void
    signature: void GPAC_MediaRenderer::SetDuration(Double duration, Bool can_seek)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: format_time_string
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:588,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:590,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:591,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - time
    argTypes:
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 585
    functionDepth: 1
    functionLinenumber: 585
    functionLinenumberEnd: 592
    functionName: GPAC_MediaRenderer::SetTime
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 0
    functionsReached:
    - SetStateVariable
    - format_time_string
    linkageType: ''
    returnType: void
    signature: void GPAC_MediaRenderer::SetTime(Double time)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:596,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:597,1
    - Dst: SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp:598,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - url
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 600
      start: 594
    functionDepth: 0
    functionLinenumber: 594
    functionLinenumberEnd: 600
    functionName: GPAC_MediaRenderer::SetConnected
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaRenderer.cpp
    functionUses: 0
    functionsReached:
    - SetStateVariable
    linkageType: ''
    returnType: void
    signature: void GPAC_MediaRenderer::SetConnected(const char *url)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PLT_MediaController::PLT_MediaController
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:37,1
    - Dst: PLT_MediaBrowser::PLT_MediaBrowser
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:38,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:40,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:41,1
    - Dst: gf_mx_new
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - ' ctrlPoint'
    - upnp
    argTypes:
    - PLT_CtrlPointReference
    - GF_UPnP*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 44
    functionName: GPAC_MediaController::GPAC_MediaController
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp
    functionUses: 0
    functionsReached:
    - PLT_MediaBrowser::PLT_MediaBrowser
    - gf_list_new
    - gf_mx_new
    - PLT_MediaController::PLT_MediaController
    linkageType: ''
    returnType: void
    signature: void GPAC_MediaController::GPAC_MediaController(PLT_CtrlPointReference&
      ctrlPoint, GF_UPnP *upnp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:54,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:55,1
    - Dst: gf_list_rem
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:56,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:59,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:61,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:62,1
    - Dst: gf_list_rem
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:63,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:66,1
    - Dst: gf_mx_del
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:68,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 69
    functionName: GPAC_MediaController::~GPAC_MediaController()
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void GPAC_MediaController::~GPAC_MediaController()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GetUUID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:77,1
    - Dst: gf_mx_p
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:79,1
    - Dst: NPT_SUCCEEDED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:83,1
    - Dst: FindServiceByType
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:83,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:84,1
    - Dst: GPAC_MediaRendererItem::GPAC_MediaRendererItem
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:84,1
    - Dst: OnMediaRendererAdd
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:86,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ' device'
    argTypes:
    - PLT_DeviceDataReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 89
    functionName: GPAC_MediaController::OnMRAdded
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - FindServiceByType
    - GetUUID
    - gf_mx_v
    - gf_list_add
    - NPT_SUCCEEDED
    - GPAC_MediaRendererItem::GPAC_MediaRendererItem
    - OnMediaRendererAdd
    linkageType: ''
    returnType: bool
    signature: bool GPAC_MediaController::OnMRAdded(PLT_DeviceDataReference& device)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GetUUID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:95,1
    - Dst: gf_mx_p
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:97,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:100,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:102,1
    - Dst: gf_list_rem
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:105,1
    - Dst: OnMediaRendererAdd
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:110,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:111,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ' device'
    argTypes:
    - PLT_DeviceDataReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 112
    functionName: GPAC_MediaController::OnMRRemoved
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - GetUUID
    - gf_list_count
    - gf_mx_v
    - OnMediaRendererAdd
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void GPAC_MediaController::OnMRRemoved(PLT_DeviceDataReference& device)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GetUUID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:117,1
    - Dst: gf_mx_p
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:119,1
    - Dst: NPT_SUCCEEDED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:122,1
    - Dst: FindServiceByType
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:122,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:123,1
    - Dst: GPAC_MediaServerItem::GPAC_MediaServerItem
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:123,1
    - Dst: OnMediaServerAdd
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:125,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:126,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ' device'
    argTypes:
    - PLT_DeviceDataReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 128
    functionName: GPAC_MediaController::OnMSAdded
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - FindServiceByType
    - GPAC_MediaServerItem::GPAC_MediaServerItem
    - OnMediaServerAdd
    - GetUUID
    - gf_mx_v
    - gf_list_add
    - NPT_SUCCEEDED
    linkageType: ''
    returnType: bool
    signature: bool GPAC_MediaController::OnMSAdded(PLT_DeviceDataReference& device)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GetUUID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:134,1
    - Dst: gf_mx_p
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:136,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:138,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:140,1
    - Dst: gf_list_rem
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:143,1
    - Dst: OnMediaServerAdd
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:147,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:148,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ' device'
    argTypes:
    - PLT_DeviceDataReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 149
    functionName: GPAC_MediaController::OnMSRemoved
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - OnMediaServerAdd
    - GetUUID
    - gf_list_count
    - gf_mx_v
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void GPAC_MediaController::OnMSRemoved(PLT_DeviceDataReference& device)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - res
    - ' action'
    - userdata
    argTypes:
    - NPT_Result
    - PLT_ActionReference
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 159
    functionName: GPAC_MediaController::OnActionResponse
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NPT_Result
    signature: "NPT_Result GPAC_MediaController::OnActionResponse(NPT_Result           res,\n
      \                                      PLT_ActionReference& action,\n                                       void*
      \               userdata)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - service
    - vars
    argTypes:
    - PLT_Service*
    - NPT_List<PLT_StateVariable*>*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 164
    functionName: GPAC_MediaController::OnEventNotify
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_MediaController::OnEventNotify(PLT_Service* service,
      NPT_List<PLT_StateVariable*>* vars)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:172,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:174,1
    - Dst: GPAC_MediaRendererItem*::m_device::AsPointer
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:175,1
    - Dst: PLT_Service*::GetDevice
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:175,1
    - Dst: NPT_List<PLT_StateVariable*>*::GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:182,1
    - Dst: NPT_List<PLT_StateVariable*>*::Get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:185,1
    - Dst: PLT_StateVariable*::GetName
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:186,1
    - Dst: NPT_String
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:186,1
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:188,1
    - Dst: PLT_StateVariable*::GetValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:188,1
    - Dst: GPAC_MediaController::m_pUPnP::onTimeChanged
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:190,1
    - Dst: PLT_StateVariable*::GetName
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:193,1
    - Dst: NPT_String
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:193,1
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:195,1
    - Dst: PLT_StateVariable*::GetValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:195,1
    - Dst: GPAC_MediaController::m_pUPnP::onDurationChanged
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:197,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 2
    argNames:
    - service
    - vars
    argTypes:
    - PLT_Service*
    - NPT_List<PLT_StateVariable*>*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 202
    functionName: GPAC_MediaController::OnMRStateVariablesChanged
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp
    functionUses: 0
    functionsReached:
    - NPT_List<PLT_StateVariable*>*::GetItemCount
    - gf_list_get
    - sscanf
    - PLT_StateVariable*::GetValue
    - PLT_Service*::GetDevice
    - gf_list_count
    - GPAC_MediaRendererItem*::m_device::AsPointer
    - GPAC_MediaController::m_pUPnP::onTimeChanged
    - PLT_StateVariable*::GetName
    - NPT_List<PLT_StateVariable*>*::Get
    - NPT_String
    - GPAC_MediaController::m_pUPnP::onDurationChanged
    linkageType: ''
    returnType: void
    signature: void GPAC_MediaController::OnMRStateVariablesChanged(PLT_Service* service,
      NPT_List<PLT_StateVariable*>* vars )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: NPT_COMPILER_UNUSED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:207,1
    - Dst: NPT_COMPILER_UNUSED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:209,1
    - Dst: NPT_SUCCEEDED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:215,1
    - Dst: shared_var::SetValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:218,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - res
    - ' device'
    - info
    - userdata
    argTypes:
    - NPT_Result
    - PLT_DeviceDataReference
    - PLT_BrowseInfo*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 220
    functionName: GPAC_MediaController::OnBrowseResult
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp
    functionUses: 0
    functionsReached:
    - NPT_SUCCEEDED
    - NPT_COMPILER_UNUSED
    - shared_var::SetValue
    linkageType: ''
    returnType: void
    signature: void GPAC_MediaController::OnBrowseResult(NPT_Result res, PLT_DeviceDataReference&
      device, PLT_BrowseInfo* info, void* userdata)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:226,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:229,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:231,1
    - Dst: PLT_Service*::GetDevice
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:232,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:239,1
    - Dst: PLT_StateVariable::Find
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:243,1
    - Dst: PLT_StateVariable*::GetValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:246,1
    - Dst: NPT_String::GetLength
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:250,1
    - Dst: NPT_String::Find
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:252,1
    - Dst: NPT_String::Left
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:254,1
    - Dst: NPT_String::SubString
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:255,1
    - Dst: NPT_String::GetLength
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:258,1
    - Dst: NPT_String::Find
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:259,1
    - Dst: NPT_String::Left
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:260,1
    - Dst: NPT_String::SubString
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:261,1
    - Dst: ContainerChanged
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:263,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:267,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 2
    argNames:
    - service
    - vars
    argTypes:
    - PLT_Service*
    - NPT_List<PLT_StateVariable*>*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 222
    functionDepth: 1
    functionLinenumber: 222
    functionLinenumberEnd: 268
    functionName: GPAC_MediaController::OnMSStateVariablesChanged
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - NPT_String::Left
    - PLT_StateVariable*::GetValue
    - PLT_Service*::GetDevice
    - NPT_String::GetLength
    - gf_list_count
    - NPT_String::SubString
    - gf_mx_v
    - NPT_String::Find
    - ContainerChanged
    - PLT_StateVariable::Find
    linkageType: ''
    returnType: void
    signature: void GPAC_MediaController::OnMSStateVariablesChanged(PLT_Service* service,
      NPT_List<PLT_StateVariable*>* vars)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: WaitUntilEquals
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:273,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' shared_var'
    argTypes:
    - NPT_SharedVariable
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 274
    functionName: GPAC_MediaController::WaitForResponse
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp
    functionUses: 0
    functionsReached:
    - WaitUntilEquals
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_MediaController::WaitForResponse(NPT_SharedVariable&
      shared_var)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: shared_var::SetValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:289,1
    - Dst: GPAC_MediaController::Browse
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:294,1
    - Dst: GPAC_BrowseDataReference::GPAC_BrowseDataReference
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:301,1
    - Dst: NPT_CHECK_SEVERE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:302,1
    - Dst: GPAC_MediaController::WaitForResponse
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:304,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 8
    argNames:
    - ' browse_data'
    - ' device'
    - object_id
    - index
    - count
    - browse_metadata
    - filter
    - sort
    argTypes:
    - GPAC_BrowseDataReference
    - PLT_DeviceDataReference
    - char*
    - NPT_Int32
    - NPT_Int32
    - bool
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 277
    functionDepth: 1
    functionLinenumber: 277
    functionLinenumberEnd: 305
    functionName: GPAC_MediaController::Browse
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp
    functionUses: 1
    functionsReached:
    - GPAC_MediaController::WaitForResponse
    - GPAC_BrowseDataReference::GPAC_BrowseDataReference
    - GPAC_MediaController::Browse
    - NPT_CHECK_SEVERE
    - shared_var::SetValue
    linkageType: ''
    returnType: NPT_Result
    signature: "NPT_Result GPAC_MediaController::Browse(GPAC_BrowseDataReference&
      browse_data,\n                             PLT_DeviceDataReference& device,\n
      \                            const char*              object_id,\n                             NPT_Int32
      \               index,\n                             NPT_Int32                count,\n
      \                            bool                     browse_metadata,\n                             const
      char*              filter,\n                             const char*              sort)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GPAC_BrowseData::GPAC_BrowseData
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:318,1
    - Dst: GPAC_MediaController::Browse
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:323,1
    - Dst: NPT_CHECK_LABEL_WARNING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:331,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:333,1
    - Dst: NPT_CHECK_LABEL_WARNING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:335,1
    - Dst: GPAC_BrowseDataReference::info::items::GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:338,1
    - Dst: GPAC_MediaServerItem*::m_BrowseResults::IsNull
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:341,1
    - Dst: GPAC_MediaServerItem*::m_BrowseResults::Add
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:344,1
    - Dst: GPAC_BrowseDataReference::info::items::Clear
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:348,1
    - Dst: GPAC_MediaServerItem*::m_BrowseResults::GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:352,1
    - Dst: GPAC_MediaServerItem*::m_BrowseResults::GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp:356,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 3
    argNames:
    - server
    - object_id
    - filter
    argTypes:
    - GPAC_MediaServerItem*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 307
    functionDepth: 1
    functionLinenumber: 307
    functionLinenumberEnd: 361
    functionName: GPAC_MediaController::Browse
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACMediaController.cpp
    functionUses: 2
    functionsReached:
    - GPAC_BrowseData::GPAC_BrowseData
    - GPAC_MediaServerItem*::m_BrowseResults::IsNull
    - GPAC_MediaController::Browse
    - GPAC_MediaServerItem*::m_BrowseResults::Add
    - GPAC_BrowseDataReference::info::items::Clear
    - GPAC_MediaServerItem*::m_BrowseResults::GetItemCount
    - NPT_FAILED
    - NPT_CHECK_LABEL_WARNING
    - GPAC_BrowseDataReference::info::items::GetItemCount
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_MediaController::Browse(GPAC_MediaServerItem *server,
      const char *object_id, const char *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - friendly_name
    - show_ip
    - uuid
    - port
    argTypes:
    - char*
    - bool
    - char*
    - NPT_UInt16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionName: GPAC_FileMediaServer::GPAC_FileMediaServer
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void GPAC_FileMediaServer::GPAC_FileMediaServer(const char*  friendly_name,\n
      \       bool         show_ip,\n        const char*  uuid,\n        NPT_UInt16
      \  port)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:56,1
    - Dst: gf_crc_32
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:56,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:56,1
    - Dst: Add
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:59,1
    - Dst: GPAC_MediaDirectory
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - path
    - alias
    - is_hidden
    argTypes:
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 60
    functionName: GPAC_FileMediaServer::AddSharedDirectory
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp
    functionUses: 0
    functionsReached:
    - sprintf
    - Add
    - GPAC_MediaDirectory
    - gf_crc_32
    - strlen
    linkageType: ''
    returnType: void
    signature: void GPAC_FileMediaServer::AddSharedDirectory(const char *path, const
      char *alias, Bool is_hidden)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:74,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:74,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:74,1
    - Dst: GPAC_FileMediaServer::OnBrowseDirectChildren
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:75,1
    - Dst: GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:84,1
    - Dst: Get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:86,1
    - Dst: GPAC_FileMediaServer::BuildFromFilePath
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:89,1
    - Dst: PLT_MediaObjectReference::IsNull
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:91,1
    - Dst: NPT_CHECK_SEVERE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:94,1
    - Dst: PLT_Didl::ToDidl
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:94,1
    - Dst: PLT_MediaObjectReference::AsPointer
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:94,1
    - Dst: NPT_CHECK_SEVERE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:106,1
    - Dst: SetArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:106,1
    - Dst: NPT_CHECK_SEVERE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:107,1
    - Dst: SetArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:107,1
    - Dst: NPT_String::FromInteger
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:107,1
    - Dst: NPT_CHECK_SEVERE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:108,1
    - Dst: SetArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:108,1
    - Dst: NPT_String::FromInteger
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:108,1
    - Dst: NPT_CHECK_SEVERE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:109,1
    - Dst: SetArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:109,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 26
    argCount: 7
    argNames:
    - '          action'
    - object_id
    - filter
    - start_index
    - req_count
    - sort_criteria
    - ' context'
    argTypes:
    - PLT_ActionReference
    - char*
    - char*
    - NPT_UInt32
    - NPT_UInt32
    - char*
    - PLT_HttpRequestContext
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 112
    functionName: GPAC_FileMediaServer::OnBrowseDirectChildren
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp
    functionUses: 1
    functionsReached:
    - PLT_MediaObjectReference::AsPointer
    - PLT_MediaObjectReference::IsNull
    - GPAC_FileMediaServer::BuildFromFilePath
    - Get
    - PLT_Didl::ToDidl
    - NPT_String::FromInteger
    - GPAC_FileMediaServer::OnBrowseDirectChildren
    - strcmp
    - SetArgumentValue
    - GetItemCount
    - NPT_CHECK_SEVERE
    linkageType: ''
    returnType: NPT_Result
    signature: "NPT_Result GPAC_FileMediaServer::OnBrowseDirectChildren(PLT_ActionReference&
      \         action,\n        const char*                   object_id,\n        const
      char*                   filter,\n        NPT_UInt32                    start_index,\n
      \       NPT_UInt32                    req_count,\n        const char*   sort_criteria,\n
      \       const PLT_HttpRequestContext& context)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: NPT_COMPILER_UNUSED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:120,1
    - Dst: NPT_Uri::PercentDecode
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:123,1
    - Dst: GetUrl
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:123,1
    - Dst: GetUrl
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:124,1
    - Dst: NPT_String::IsEmpty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:125,1
    - Dst: NPT_String::Find
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:131,1
    - Dst: NPT_String::Find
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:131,1
    - Dst: GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:136,1
    - Dst: Get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:138,1
    - Dst: NPT_String::StartsWith
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:139,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:140,1
    - Dst: GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:146,1
    - Dst: GPAC_VirtualFile::GPAC_VirtualFile
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:147,1
    - Dst: Get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:148,1
    - Dst: NPT_String::Replace
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:151,1
    - Dst: MC_GetRange
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:157,1
    - Dst: GPAC_FileMediaServer::ServeVirtualFile
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:161,1
    - Dst: GetMethod
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:161,1
    - Dst: Remove
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:163,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:171,1
    - Dst: NPT_String::Left
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:171,1
    - Dst: NPT_String::GetLength
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:171,1
    - Dst: MC_GetRange
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:174,1
    - Dst: GPAC_FileMediaServer::ServeFile
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:176,1
    - Dst: GetMethod
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:180,1
    - Dst: GPAC_FileMediaServer::ServeFile
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:182,1
    - Dst: Anchor_Create
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:182,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 4
    argNames:
    - '              request'
    - ' context'
    - '             response'
    - '             _file_path'
    argTypes:
    - NPT_HttpRequest
    - NPT_HttpRequestContext
    - NPT_HttpResponse
    - NPT_String
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 188
    functionName: GPAC_FileMediaServer::ServeFile
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp
    functionUses: 1
    functionsReached:
    - NPT_String::StartsWith
    - GPAC_FileMediaServer::ServeFile
    - NPT_COMPILER_UNUSED
    - NPT_String::IsEmpty
    - NPT_String::Replace
    - NPT_String::Left
    - NPT_String::Compare
    - GPAC_FileMediaServer::ServeVirtualFile
    - Anchor_Create
    - NPT_String::Find
    - GetMethod
    - GetItemCount
    - strlen
    - NPT_Uri::PercentDecode
    - Remove
    - Get
    - NPT_String::GetLength
    - MC_GetRange
    - GPAC_VirtualFile::GPAC_VirtualFile
    - GetUrl
    linkageType: ''
    returnType: NPT_Result
    signature: "NPT_Result GPAC_FileMediaServer::ServeFile(const NPT_HttpRequest&
      \             request,\n                                const NPT_HttpRequestContext&
      context,\n                                NPT_HttpResponse&             response,\n
      \                               const NPT_String&             _file_path)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:198,1
    - Dst: Get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:200,1
    - Dst: NPT_String::StartsWith
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:201,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:204,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:207,1
    - Dst: NPT_StringLength
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:213,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 2
    argNames:
    - object_id
    - ' filepath'
    argTypes:
    - char*
    - NPT_String
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 218
    functionName: GPAC_FileMediaServer::GetFilePath
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp
    functionUses: 0
    functionsReached:
    - NPT_String::StartsWith
    - Get
    - NPT_StringLength
    - strcmp
    - GetItemCount
    - strlen
    linkageType: ''
    returnType: NPT_Result
    signature: "NPT_Result GPAC_FileMediaServer::GetFilePath(const char* object_id,\n
      \                                 NPT_String& filepath)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GPAC_FileMediaServer::BuildFromFilePathAndHost
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - '        filepath'
    - context
    - with_count
    - keep_extension_in_title
    - allip
    argTypes:
    - NPT_String
    - PLT_HttpRequestContext
    - bool
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 220
    functionDepth: 1
    functionLinenumber: 220
    functionLinenumberEnd: 229
    functionName: GPAC_FileMediaServer::BuildFromFilePath
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp
    functionUses: 1
    functionsReached:
    - GPAC_FileMediaServer::BuildFromFilePathAndHost
    linkageType: ''
    returnType: PLT_MediaObject
    signature: "PLT_MediaObject *\nGPAC_FileMediaServer::BuildFromFilePath(const NPT_String&
      \       filepath,\n                                        const PLT_HttpRequestContext
      &context,\n                                        bool                     with_count,\n
      \                                       bool                     keep_extension_in_title,\n
      \                                       bool                          allip)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: NPT_CHECK_LABEL_FATAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:245,1
    - Dst: NPT_File::GetInfo
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:245,1
    - Dst: GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:248,1
    - Dst: Get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:250,1
    - Dst: StartsWith
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:251,1
    - Dst: GPAC_MediaDirectory*::m_Path::GetLength
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:251,1
    - Dst: NPT_String
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:253,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:253,1
    - Dst: GPAC_MediaDirectory*::m_Path::GetLength
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:254,1
    - Dst: PLT_MediaItem::PLT_MediaItem
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:262,1
    - Dst: NPT_FilePath::BaseName
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:265,1
    - Dst: PLT_MediaObject*::m_Title::GetLength
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:266,1
    - Dst: PLT_ProtocolInfo
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:269,1
    - Dst: PLT_ProtocolInfo::GetProtocolInfo
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:269,1
    - Dst: PLT_MediaItemResource::m_ProtocolInfo::IsValid
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:270,1
    - Dst: NPT_IpAddress::Parse
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:280,1
    - Dst: NPT_CHECK_LABEL_SEVERE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:286,1
    - Dst: PLT_UPnPMessageHelper::GetNetworkInterfaces
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:286,1
    - Dst: NPT_List::GetFirstItem
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:288,1
    - Dst: IsAddressInNetwork
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:289,1
    - Dst: GetAddresses
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:290,1
    - Dst: PLT_HttpRequestContext*::GetLocalAddress
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:296,1
    - Dst: NPT_CHECK_LABEL_SEVERE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:300,1
    - Dst: PLT_UPnPMessageHelper::GetIPAddresses
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:300,1
    - Dst: NPT_List::GetFirstItem
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:303,1
    - Dst: NPT_ContainerFind
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:311,1
    - Dst: PLT_MetadataHandlerFinder
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:313,1
    - Dst: NPT_FilePath::FileExtension
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:313,1
    - Dst: NPT_SUCCEEDED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:315,1
    - Dst: NPT_SUCCEEDED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:317,1
    - Dst: PLT_MetadataHandler*::Load
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:317,1
    - Dst: PLT_MetadataHandler*::GetTitle
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:320,1
    - Dst: PLT_MetadataHandler*::GetDescription
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:325,1
    - Dst: PLT_MediaObject*::m_ExtraInfo::album_art_uri::GetLength
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:329,1
    - Dst: NPT_Uri::PercentEncode
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:331,1
    - Dst: BuildResourceUri
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:331,1
    - Dst: NPT_IpAddress::ToString
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:331,1
    - Dst: PLT_MetadataHandler*::GetDuration
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:336,1
    - Dst: PLT_MetadataHandler*::GetProtection
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:339,1
    - Dst: PLT_MediaItem::GetUPnPClass
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:343,1
    - Dst: BuildResourceUri
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:346,1
    - Dst: NPT_IpAddress::ToString
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:346,1
    - Dst: PLT_MediaObject*::m_Resources::Add
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:347,1
    - Dst: PLT_MediaContainer::PLT_MediaContainer
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:350,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:353,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:353,1
    - Dst: NPT_String::TrimRight
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:356,1
    - Dst: NPT_FilePath::BaseName
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:357,1
    - Dst: PLT_MediaObject*::m_Title::GetLength
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:358,1
    - Dst: NPT_File::ListDir
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:369,1
    - Dst: NPT_List::GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:370,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:379,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:379,1
    - Dst: NPT_FilePath::DirName
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:383,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:385,1
    - Dst: NPT_String::Compare
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:385,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 88
    argCount: 5
    argNames:
    - '        __filepath'
    - context
    - with_count
    - keep_extension_in_title
    - host
    argTypes:
    - NPT_String
    - PLT_HttpRequestContext*
    - bool
    - bool
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 397
    functionName: GPAC_FileMediaServer::BuildFromFilePathAndHost
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp
    functionUses: 1
    functionsReached:
    - PLT_UPnPMessageHelper::GetNetworkInterfaces
    - NPT_List::GetItemCount
    - NPT_Uri::PercentEncode
    - NPT_FilePath::BaseName
    - PLT_HttpRequestContext*::GetLocalAddress
    - GetAddresses
    - PLT_MetadataHandler*::GetTitle
    - GPAC_MediaDirectory*::m_Path::GetLength
    - PLT_MediaItemResource::m_ProtocolInfo::IsValid
    - PLT_MediaObject*::m_Resources::Add
    - StartsWith
    - NPT_ContainerFind
    - NPT_IpAddress::ToString
    - PLT_MetadataHandlerFinder
    - PLT_MediaContainer::PLT_MediaContainer
    - NPT_File::ListDir
    - PLT_MetadataHandler*::GetDuration
    - NPT_String::Compare
    - PLT_MediaItem::PLT_MediaItem
    - PLT_MetadataHandler*::GetDescription
    - PLT_MetadataHandler*::Load
    - NPT_String::TrimRight
    - PLT_ProtocolInfo
    - BuildResourceUri
    - NPT_CHECK_LABEL_SEVERE
    - PLT_MediaObject*::m_Title::GetLength
    - GetItemCount
    - NPT_String
    - PLT_UPnPMessageHelper::GetIPAddresses
    - NPT_File::GetInfo
    - strlen
    - PLT_MediaObject*::m_ExtraInfo::album_art_uri::GetLength
    - NPT_List::GetFirstItem
    - PLT_MetadataHandler*::GetProtection
    - Get
    - NPT_CHECK_LABEL_FATAL
    - IsAddressInNetwork
    - PLT_MediaItem::GetUPnPClass
    - NPT_IpAddress::Parse
    - NPT_FilePath::DirName
    - NPT_SUCCEEDED
    - PLT_ProtocolInfo::GetProtocolInfo
    - NPT_FilePath::FileExtension
    linkageType: ''
    returnType: PLT_MediaObject
    signature: "PLT_MediaObject *\nGPAC_FileMediaServer::BuildFromFilePathAndHost(const
      NPT_String&        __filepath,\n        const PLT_HttpRequestContext *context,\n
      \       bool                     with_count /* = true */,\n        bool                     keep_extension_in_title
      /* = false */,\n        const char *host)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:406,1
    - Dst: Get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:408,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:409,1
    - Dst: gf_fopen
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:410,1
    - Dst: gf_fclose
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:412,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:415,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:421,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:428,1
    - Dst: NPT_String::Replace
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:445,1
    - Dst: GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:448,1
    - Dst: Get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:450,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:451,1
    - Dst: GPAC_FileMediaServer::AddSharedDirectory
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:456,1
    - Dst: Replace
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:461,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:463,1
    - Dst: GPAC_FileMediaServer::BuildFromFilePathAndHost
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:465,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 47
    argCount: 2
    argNames:
    - url
    - for_host
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 400
    functionDepth: 2
    functionLinenumber: 400
    functionLinenumberEnd: 471
    functionName: GPAC_FileMediaServer::GetResourceURI
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - NPT_String::Replace
    - Get
    - gf_url_concatenate
    - GPAC_FileMediaServer::AddSharedDirectory
    - gf_fopen
    - strcmp
    - GetItemCount
    - strlen
    - GPAC_FileMediaServer::BuildFromFilePathAndHost
    - Replace
    linkageType: ''
    returnType: NPT_String
    signature: NPT_String GPAC_FileMediaServer::GetResourceURI(const char *url, const
      char *for_host)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:477,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:479,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:485,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:488,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:488,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:488,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:493,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:495,1
    - Dst: NPT_String::Replace
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:507,1
    - Dst: Add
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:511,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:512,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 4
    argNames:
    - res_uri
    - res_val
    - res_mime
    - temporary
    argTypes:
    - char*
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 473
    functionDepth: 1
    functionLinenumber: 473
    functionLinenumberEnd: 513
    functionName: GPAC_FileMediaServer::ShareVirtualResource
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp
    functionUses: 0
    functionsReached:
    - NPT_String::Replace
    - GF_LOG
    - strstr
    - strnicmp
    - Add
    - strchr
    linkageType: ''
    returnType: void
    signature: void GPAC_FileMediaServer::ShareVirtualResource(const char *res_uri,
      const char *res_val, const char *res_mime, Bool temporary)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GPAC_VirtualFile*::m_Content::GetChars
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:525,1
    - Dst: GPAC_VirtualFile*::m_Content::GetLength
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:525,1
    - Dst: NPT_MemoryStream::NPT_MemoryStream
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:525,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:528,1
    - Dst: NPT_InputStreamReference::GetSize
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:528,1
    - Dst: SetStatus
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:529,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:533,1
    - Dst: GPAC_VirtualFile*::m_Content::GetChars
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:533,1
    - Dst: NPT_HttpEntity::NPT_HttpEntity
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:535,1
    - Dst: NPT_HttpEntity*::SetContentLength
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:536,1
    - Dst: SetEntity
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:537,1
    - Dst: NPT_HttpEntity*::SetContentType
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:538,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:567,1
    - Dst: NPT_InputStreamReference::Seek
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:567,1
    - Dst: SetStatus
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:568,1
    - Dst: SetStatus
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:571,1
    - Dst: NPT_HttpEntity*::SetInputStream
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:572,1
    - Dst: NPT_HttpEntity*::SetContentLength
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:573,1
    - Dst: NPT_HttpEntity*::SetInputStream
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp:576,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 37
    argCount: 5
    argNames:
    - ' response'
    - vfile
    - start
    - end
    - request_is_head
    argTypes:
    - NPT_HttpResponse
    - GPAC_VirtualFile*
    - NPT_Position
    - NPT_Position
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 515
    functionDepth: 1
    functionLinenumber: 515
    functionLinenumberEnd: 579
    functionName: GPAC_FileMediaServer::ServeVirtualFile
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.cpp
    functionUses: 1
    functionsReached:
    - SetStatus
    - NPT_MemoryStream::NPT_MemoryStream
    - NPT_HttpEntity*::SetInputStream
    - GPAC_VirtualFile*::m_Content::GetChars
    - GF_LOG
    - NPT_HttpEntity*::SetContentLength
    - NPT_HttpEntity::NPT_HttpEntity
    - NPT_InputStreamReference::GetSize
    - NPT_InputStreamReference::Seek
    - GPAC_VirtualFile*::m_Content::GetLength
    - SetEntity
    - NPT_FAILED
    - NPT_HttpEntity*::SetContentType
    linkageType: ''
    returnType: NPT_Result
    signature: "NPT_Result GPAC_FileMediaServer::ServeVirtualFile(NPT_HttpResponse&
      response,\n                                       GPAC_VirtualFile  *vfile,\n
      \                                      NPT_Position      start,\n                                       NPT_Position
      \     end,\n                                       bool              request_is_head)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:43,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - device
    - service
    argTypes:
    - GPAC_DeviceItem*
    - PLT_Service*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 48
    functionName: GPAC_ServiceItem::GPAC_ServiceItem
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - gf_list_new
    linkageType: ''
    returnType: void
    signature: void GPAC_ServiceItem::GPAC_ServiceItem(GPAC_DeviceItem *device, PLT_Service
      *service)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GPAC_ServiceItem::DetachJS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:53,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:54,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 57
    functionName: GPAC_ServiceItem::~GPAC_ServiceItem()
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - GPAC_ServiceItem::DetachJS
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void GPAC_ServiceItem::~GPAC_ServiceItem()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:63,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:64,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:67,1
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:68,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:71,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:72,1
    - Dst: gf_list_rem
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:73,1
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:74,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:77,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:78,1
    - Dst: gf_list_rem
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:79,1
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:80,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 83
    functionName: GPAC_ServiceItem::DetachJS
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_list_count
    - JSVAL_IS_NULL
    - gf_js_remove_root
    - SMJS_SET_PRIVATE
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void GPAC_ServiceItem::DetachJS()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - device
    - uuid
    argTypes:
    - PLT_DeviceDataReference
    - NPT_String
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 95
    functionName: GPAC_DeviceItem::GPAC_DeviceItem
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - gf_list_new
    linkageType: ''
    returnType: void
    signature: void GPAC_DeviceItem::GPAC_DeviceItem(PLT_DeviceDataReference device,
      NPT_String uuid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GPAC_DeviceItem::DetachJS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:100,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 103
    functionName: GPAC_DeviceItem::~GPAC_DeviceItem()
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - gf_list_del
    - GPAC_DeviceItem::DetachJS
    linkageType: ''
    returnType: void
    signature: void GPAC_DeviceItem::~GPAC_DeviceItem()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:108,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:109,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:112,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:113,1
    - Dst: gf_list_rem
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:114,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 117
    functionName: GPAC_DeviceItem::DetachJS
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_list_count
    - gf_js_remove_root
    - SMJS_SET_PRIVATE
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void GPAC_DeviceItem::DetachJS()
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:128,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:129,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:132,1
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:133,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:135,1
    - Dst: gf_js_add_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:137,1
    - Dst: SMJS_OBJ*::m_device::m_pUPnP::m_pGenericController::m_CtrlPoint::Subscribe
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:139,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:145,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:146,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:151,1
    - Dst: GPAC_StateVariableListener::GPAC_StateVariableListener
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:155,1
    - Dst: SMJS_OBJ*::m_service::FindStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:157,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:158,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:160,1
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:161,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:162,1
    - Dst: gf_list_del_item
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:163,1
    - Dst: gf_js_add_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:167,1
    - Dst: SMJS_OBJ*::m_device::m_pUPnP::m_pGenericController::m_CtrlPoint::Subscribe
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:169,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:172,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 47
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 174
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - SMJS_OBJ*::m_device::m_pUPnP::m_pGenericController::m_CtrlPoint::Subscribe
    - SMJS_FREE
    - JSVAL_IS_STRING
    - GPAC_StateVariableListener::GPAC_StateVariableListener
    - JSVAL_IS_OBJECT
    - gf_js_add_root
    - gf_list_enum
    - gf_list_add
    - gf_list_del_item
    - JSVAL_IS_NULL
    - SMJS_GET_PRIVATE
    - gf_js_remove_root
    - SMJS_OBJ*::m_service::FindStateVariable
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_service_set_listener)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:186,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:187,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:187,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:189,1
    - Dst: SMJS_OBJ*::m_service::FindActionDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:192,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:193,1
    - Dst: JSVAL_IS_BOOLEAN
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:199,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:202,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:203,1
    - Dst: PLT_ActionDesc*::GetArgumentDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:205,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:206,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:214,1
    - Dst: GPAC_ActionArgListener::GPAC_ActionArgListener
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:219,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:221,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:224,1
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:225,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:226,1
    - Dst: gf_list_del_item
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:227,1
    - Dst: gf_js_add_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:232,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 48
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 234
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - PLT_ActionDesc*::GetArgumentDesc
    - SMJS_FREE
    - JSVAL_IS_STRING
    - JSVAL_IS_BOOLEAN
    - gf_js_remove_root
    - JSVAL_IS_OBJECT
    - gf_js_add_root
    - GPAC_ActionArgListener::GPAC_ActionArgListener
    - SMJS_OBJ*::m_service::FindActionDesc
    - gf_list_add
    - gf_list_del_item
    - JSVAL_IS_NULL
    - SMJS_GET_PRIVATE
    - gf_list_enum
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_service_set_action_listener)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:240,1
    - Dst: m_service::GetSCPDXML
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:244,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:245,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:245,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 247
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - JS_NewStringCopyZ
    - STRING_TO_JSVAL
    - SMJS_GET_PRIVATE
    - m_service::GetSCPDXML
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_service_get_scpd)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:256,1
    - Dst: SMJS_ID_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:259,1
    - Dst: SMJS_CHARS_FROM_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:260,1
    - Dst: SMJS_ID_TO_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:260,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:263,1
    - Dst: VPASSIGN
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:264,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:264,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:266,1
    - Dst: VPASSIGN
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:267,1
    - Dst: INT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:267,1
    - Dst: GPAC_ServiceItem*::vars::GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:267,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:270,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 272
    functionName: SMJS_DECL_FUNC_PROP_GET
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - SMJS_FREE
    - SMJS_ID_TO_STRING
    - SMJS_ID_IS_STRING
    - strcmp
    - SMJS_CHARS_FROM_STRING
    - OBJECT_TO_JSVAL
    - INT_TO_JSVAL
    - GPAC_ServiceItem*::vars::GetItemCount
    - SMJS_GET_PRIVATE
    - VPASSIGN
    linkageType: ''
    returnType: void
    signature: void SMJS_DECL_FUNC_PROP_GET( upnpservice_getProperty)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:280,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:281,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:284,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:285,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:285,1
    - Dst: SMJS_OBJ*::m_service::FindStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:285,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:286,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 288
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - SMJS_FREE
    - JSVAL_IS_STRING
    - BOOLEAN_TO_JSVAL
    - SMJS_GET_PRIVATE
    - SMJS_OBJ*::m_service::FindStateVariable
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_service_has_var)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:296,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:297,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:300,1
    - Dst: SMJS_OBJ*::m_service::FindActionDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:301,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:302,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:304,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:304,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:307,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:308,1
    - Dst: PLT_ActionDesc*::GetArgumentDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:309,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:309,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:309,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:310,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 290
    functionDepth: 0
    functionLinenumber: 290
    functionLinenumberEnd: 313
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - PLT_ActionDesc*::GetArgumentDesc
    - SMJS_FREE
    - JSVAL_IS_STRING
    - SMJS_OBJ*::m_service::FindActionDesc
    - BOOLEAN_TO_JSVAL
    - SMJS_GET_PRIVATE
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_service_has_action)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:321,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:322,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:324,1
    - Dst: SMJS_OBJ*::m_service::FindActionDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:325,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:326,1
    - Dst: NPT_CHECK_SEVERE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:331,1
    - Dst: SMJS_OBJ*::m_device::m_pUPnP::m_pGenericController::m_CtrlPoint::CreateAction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:332,1
    - Dst: SMJS_OBJ*::m_service::GetServiceType
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:334,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:340,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:341,1
    - Dst: JS_GetArrayLength
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:343,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:345,1
    - Dst: JS_GetElement
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:352,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:353,1
    - Dst: JS_GetElement
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:355,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:358,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:359,1
    - Dst: JSVAL_IS_BOOLEAN
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:360,1
    - Dst: JSVAL_TO_BOOLEAN
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:361,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:363,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:364,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:364,1
    - Dst: JSVAL_IS_NUMBER
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:367,1
    - Dst: JS_ValueToNumber
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:369,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:370,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:376,1
    - Dst: PLT_ActionReference::SetArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:377,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:379,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:380,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:386,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:389,1
    - Dst: GPAC_ActionUDTA::GPAC_ActionUDTA
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:390,1
    - Dst: gf_js_add_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:392,1
    - Dst: SMJS_OBJ*::m_device::m_pUPnP::m_pGenericController::m_CtrlPoint::InvokeAction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:394,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 51
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 315
    functionDepth: 1
    functionLinenumber: 315
    functionLinenumberEnd: 396
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - JSVAL_IS_STRING
    - SMJS_OBJ*::m_service::FindActionDesc
    - SMJS_OBJ*::m_device::m_pUPnP::m_pGenericController::m_CtrlPoint::CreateAction
    - JSVAL_TO_BOOLEAN
    - sprintf
    - gf_js_add_root
    - JS_ValueToNumber
    - JSVAL_TO_OBJECT
    - JSVAL_IS_INT
    - JSVAL_IS_NUMBER
    - JS_GetElement
    - NPT_CHECK_SEVERE
    - SMJS_OBJ*::m_service::GetServiceType
    - GF_LOG
    - JSVAL_IS_OBJECT
    - JS_GetArrayLength
    - SMJS_OBJ*::m_device::m_pUPnP::m_pGenericController::m_CtrlPoint::InvokeAction
    - PLT_ActionReference::SetArgumentValue
    - JSVAL_TO_INT
    - GPAC_ActionUDTA::GPAC_ActionUDTA
    - SMJS_FREE
    - JSVAL_IS_BOOLEAN
    - SMJS_GET_PRIVATE
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_service_call_action)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetServices
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:403,1
    - Dst: NPT_Array::GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:405,1
    - Dst: GPAC_DeviceItem::FindService
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:407,1
    - Dst: PLT_Service*::GetServiceType
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:407,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 400
    functionDepth: 1
    functionLinenumber: 400
    functionLinenumberEnd: 409
    functionName: GPAC_DeviceItem::RefreshServiceList
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - GPAC_DeviceItem::FindService
    - GetServices
    - NPT_Array::GetItemCount
    - PLT_Service*::GetServiceType
    linkageType: ''
    returnType: void
    signature: void GPAC_DeviceItem::RefreshServiceList()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:416,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:418,1
    - Dst: GPAC_ServiceItem*::m_service::GetServiceType
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:419,1
    - Dst: FindServiceByType
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:424,1
    - Dst: GPAC_ServiceItem::GPAC_ServiceItem
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:426,1
    - Dst: JS_NewObject
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:430,1
    - Dst: gf_js_add_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:431,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:432,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:433,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:433,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:433,1
    - Dst: PLT_Service*::GetServiceID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:433,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:434,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:434,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:434,1
    - Dst: PLT_Service*::GetServiceType
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:434,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:435,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:435,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:435,1
    - Dst: GetURLBase
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:435,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:436,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:437,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:438,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:439,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:440,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:441,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:445,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 1
    argNames:
    - type
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 411
    functionDepth: 2
    functionLinenumber: 411
    functionLinenumberEnd: 447
    functionName: GPAC_DeviceItem::FindService
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 1
    functionsReached:
    - GetURLBase
    - gf_list_get
    - FindServiceByType
    - PLT_Service*::GetServiceID
    - gf_js_add_root
    - JS_DefineProperty
    - gf_list_count
    - STRING_TO_JSVAL
    - JS_NewStringCopyZ
    - PLT_Service*::GetServiceType
    - JS_DefineFunction
    - gf_list_add
    - GPAC_ServiceItem::GPAC_ServiceItem
    - JS_NewObject
    - SMJS_SET_PRIVATE
    - GPAC_ServiceItem*::m_service::GetServiceType
    linkageType: ''
    returnType: GPAC_ServiceItem
    signature: GPAC_ServiceItem *GPAC_DeviceItem::FindService(const char *type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AddListener
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:454,1
    - Dst: gf_mx_new
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:455,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:456,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ' ctrlPoint'
    - upnp
    argTypes:
    - PLT_CtrlPointReference
    - GF_UPnP*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 450
    functionDepth: 1
    functionLinenumber: 450
    functionLinenumberEnd: 457
    functionName: GPAC_GenericController::GPAC_GenericController
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - gf_mx_new
    - gf_list_new
    - AddListener
    linkageType: ''
    returnType: void
    signature: void GPAC_GenericController::GPAC_GenericController(PLT_CtrlPointReference&
      ctrlPoint, GF_UPnP *upnp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RemoveListener
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:461,1
    - Dst: gf_mx_del
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:462,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:463,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:464,1
    - Dst: gf_list_rem
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:465,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:468,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 459
    functionDepth: 1
    functionLinenumber: 459
    functionLinenumberEnd: 469
    functionName: GPAC_GenericController::~GPAC_GenericController()
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - gf_list_get
    - RemoveListener
    - gf_list_count
    - gf_list_del
    - gf_list_rem
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void GPAC_GenericController::~GPAC_GenericController()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GetUUID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:476,1
    - Dst: gf_mx_p
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:477,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:479,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:481,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:483,1
    - Dst: GetUUID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:487,1
    - Dst: GPAC_DeviceItem::GPAC_DeviceItem
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:487,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:488,1
    - Dst: OnDeviceAdd
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:489,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:490,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - ' device'
    argTypes:
    - PLT_DeviceDataReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 473
    functionDepth: 2
    functionLinenumber: 473
    functionLinenumberEnd: 492
    functionName: GPAC_GenericController::OnDeviceAdded
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - GPAC_DeviceItem::GPAC_DeviceItem
    - GetUUID
    - gf_list_count
    - gf_mx_v
    - gf_list_add
    - OnDeviceAdd
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_GenericController::OnDeviceAdded(PLT_DeviceDataReference&
      device)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GetUUID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:497,1
    - Dst: gf_mx_p
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:498,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:499,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:501,1
    - Dst: gf_list_rem
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:503,1
    - Dst: OnDeviceAdd
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:509,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:512,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - ' device'
    argTypes:
    - PLT_DeviceDataReference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 514
      start: 493
    functionDepth: 1
    functionLinenumber: 493
    functionLinenumberEnd: 514
    functionName: GPAC_GenericController::OnDeviceRemoved
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - GetUUID
    - gf_list_count
    - gf_mx_v
    - OnDeviceAdd
    - gf_list_rem
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_GenericController::OnDeviceRemoved(PLT_DeviceDataReference&
      device)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:525,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:526,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:528,1
    - Dst: SMJS_OBJ*::GetArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:531,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:532,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:532,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:532,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:533,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 519
    functionDepth: 0
    functionLinenumber: 519
    functionLinenumberEnd: 535
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - SMJS_FREE
    - JSVAL_IS_STRING
    - SMJS_OBJ*::GetArgumentValue
    - STRING_TO_JSVAL
    - SMJS_GET_PRIVATE
    - JS_NewStringCopyZ
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_action_get_argument_value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:540,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:542,1
    - Dst: INT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:542,1
    - Dst: SMJS_OBJ*::GetErrorCode
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:542,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 544
      start: 536
    functionDepth: 0
    functionLinenumber: 536
    functionLinenumberEnd: 544
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - SMJS_GET_PRIVATE
    - SMJS_OBJ*::GetErrorCode
    - SMJS_SET_RVAL
    - INT_TO_JSVAL
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_action_get_error_code)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:551,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:553,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:553,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:553,1
    - Dst: SMJS_OBJ*::GetError
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:553,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 546
    functionDepth: 0
    functionLinenumber: 546
    functionLinenumberEnd: 555
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - SMJS_OBJ*::GetError
    - STRING_TO_JSVAL
    - SMJS_GET_PRIVATE
    - JS_NewStringCopyZ
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_action_get_error)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: GetActionDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:567,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:574,1
    - Dst: GetActionDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:574,1
    - Dst: gf_mx_p
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:576,1
    - Dst: PLT_Service*::GetDevice
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:579,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:580,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:582,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:588,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:591,1
    - Dst: GetActionDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:591,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:595,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:597,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:601,1
    - Dst: GetActionDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:601,1
    - Dst: PLT_Service*::GetServiceType
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:601,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:608,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:610,1
    - Dst: GPAC_ActionArgListener*::action::GetName
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:610,1
    - Dst: GPAC_ActionArgListener*::action::GetName
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:611,1
    - Dst: GetActionDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:611,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:620,1
    - Dst: GetActionDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:620,1
    - Dst: GetArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:624,1
    - Dst: GPAC_ActionArgListener*::arg::GetName
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:624,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:627,1
    - Dst: GetActionDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:627,1
    - Dst: GPAC_ActionArgListener*::arg::GetName
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:627,1
    - Dst: LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:628,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:629,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:629,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:630,1
    - Dst: LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:631,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:633,1
    - Dst: GetActionDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:633,1
    - Dst: GPAC_ActionArgListener*::arg::GetName
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:633,1
    - Dst: LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:639,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:644,1
    - Dst: GetActionDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:644,1
    - Dst: JS_NewObject
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:646,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:647,1
    - Dst: AsPointer
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:647,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:648,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:649,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:650,1
    - Dst: gf_js_add_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:652,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:653,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:656,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:658,1
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:660,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:664,1
    - Dst: GetActionDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:664,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:665,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:668,1
    - Dst: GetActionDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:668,1
    - Dst: LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:670,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:672,1
    - Dst: GetActionDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:672,1
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:676,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 91
    argCount: 3
    argNames:
    - res
    - ' action'
    - userdata
    argTypes:
    - NPT_Result
    - PLT_ActionReference
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 560
    functionDepth: 1
    functionLinenumber: 560
    functionLinenumberEnd: 684
    functionName: GPAC_GenericController::OnActionResponse
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - GPAC_ActionArgListener*::action::GetName
    - PLT_Service*::GetDevice
    - gf_list_count
    - GetActionDesc
    - gf_js_remove_root
    - GPAC_ActionArgListener*::arg::GetName
    - gf_list_get
    - gf_js_add_root
    - JS_DefineFunction
    - AsPointer
    - JS_NewStringCopyZ
    - gf_mx_p
    - GF_LOG
    - PLT_Service*::GetServiceType
    - STRING_TO_JSVAL
    - gf_mx_v
    - GetArgumentValue
    - OBJECT_TO_JSVAL
    - LockJavascript
    - gf_list_enum
    - SMJS_SET_PRIVATE
    - JS_CallFunctionValue
    - JS_NewObject
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_GenericController::OnActionResponse(NPT_Result res,
      PLT_ActionReference& action, void* userdata)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:694,1
    - Dst: PLT_Service*::GetDevice
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:696,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:697,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:699,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:705,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:709,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:711,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:716,1
    - Dst: LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:718,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:720,1
    - Dst: LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:721,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:726,1
    - Dst: NPT_List<PLT_StateVariable*>*::Contains
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:728,1
    - Dst: LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:730,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:731,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:731,1
    - Dst: GPAC_StateVariableListener*::var::GetValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:731,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:732,1
    - Dst: LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:733,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 38
    argCount: 2
    argNames:
    - service
    - vars
    argTypes:
    - PLT_Service*
    - NPT_List<PLT_StateVariable*>*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 740
      start: 686
    functionDepth: 1
    functionLinenumber: 686
    functionLinenumberEnd: 740
    functionName: GPAC_GenericController::OnEventNotify
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - NPT_List<PLT_StateVariable*>*::Contains
    - PLT_Service*::GetDevice
    - gf_list_count
    - STRING_TO_JSVAL
    - gf_mx_v
    - GPAC_StateVariableListener*::var::GetValue
    - JSVAL_IS_NULL
    - LockJavascript
    - JS_CallFunctionValue
    - gf_list_enum
    - JS_NewStringCopyZ
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_GenericController::OnEventNotify(PLT_Service* service,
      NPT_List<PLT_StateVariable*>* vars)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - device
    - type
    - id
    - name
    - last_change_namespace
    argTypes:
    - PLT_DeviceData*
    - char*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 743
    functionDepth: 0
    functionLinenumber: 743
    functionLinenumberEnd: 750
    functionName: GPAC_Service::GPAC_Service
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GPAC_Service::GPAC_Service(PLT_DeviceData* device, const char
      *type,  const char *id, const char *name, const char *last_change_namespace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:755,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 757
      start: 752
    functionDepth: 0
    functionLinenumber: 752
    functionLinenumberEnd: 757
    functionName: GPAC_Service::~GPAC_Service()
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - gf_js_remove_root
    linkageType: ''
    returnType: void
    signature: void GPAC_Service::~GPAC_Service()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:767,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:770,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:773,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:775,1
    - Dst: SMJS_OBJ*::SetStateVariable
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:779,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:780,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:781,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 783
      start: 762
    functionDepth: 0
    functionLinenumber: 762
    functionLinenumberEnd: 783
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - SMJS_GET_PRIVATE
    - SMJS_OBJ*::SetStateVariable
    - SMJS_FREE
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_service_set_state_variable)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObject
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:788,1
    - Dst: gf_js_add_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:789,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:790,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:791,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - c
    - upnp
    - parent
    argTypes:
    - JSContext*
    - GF_UPnP*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 785
    functionDepth: 1
    functionLinenumber: 785
    functionLinenumberEnd: 793
    functionName: GPAC_Service::SetupJS
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - JS_DefineFunction
    - SMJS_SET_PRIVATE
    - gf_js_add_root
    - JS_NewObject
    linkageType: ''
    returnType: void
    signature: void GPAC_Service::SetupJS(JSContext *c, GF_UPnP *upnp, JSObject *parent)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:800,1
    - Dst: gf_mx_new
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:809,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - FriendlyName
    - device_id
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 811
      start: 797
    functionDepth: 1
    functionLinenumber: 797
    functionLinenumberEnd: 811
    functionName: GPAC_GenericDevice::GPAC_GenericDevice
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_mx_new
    linkageType: ''
    returnType: void
    signature: void GPAC_GenericDevice::GPAC_GenericDevice(const char* FriendlyName,
      const char *device_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:815,1
    - Dst: gf_sema_del
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:817,1
    - Dst: gf_mx_del
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:819,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 821
      start: 813
    functionDepth: 1
    functionLinenumber: 813
    functionLinenumberEnd: 821
    functionName: GPAC_GenericDevice::~GPAC_GenericDevice()
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - gf_sema_del
    - gf_list_del
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void GPAC_GenericDevice::~GPAC_GenericDevice()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:828,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:830,1
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:831,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:833,1
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:834,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:837,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:839,1
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:841,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - c
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 845
      start: 824
    functionDepth: 1
    functionLinenumber: 824
    functionLinenumberEnd: 845
    functionName: GPAC_GenericDevice::DetachJS
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_js_remove_root
    - gf_list_get
    - JSVAL_IS_NULL
    linkageType: ''
    returnType: void
    signature: void GPAC_GenericDevice::DetachJS(JSContext *c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:852,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:854,1
    - Dst: AddService
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:855,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 858
      start: 848
    functionDepth: 1
    functionLinenumber: 848
    functionLinenumberEnd: 858
    functionName: GPAC_GenericDevice::SetupServices
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - AddService
    linkageType: ''
    returnType: NPT_Result
    signature: NPT_Result GPAC_GenericDevice::SetupServices()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:867,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:868,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:870,1
    - Dst: SMJS_OBJ*::act_ref::GetArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:873,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:874,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:874,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:874,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:875,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 877
      start: 862
    functionDepth: 0
    functionLinenumber: 862
    functionLinenumberEnd: 877
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - SMJS_FREE
    - JSVAL_IS_STRING
    - STRING_TO_JSVAL
    - SMJS_OBJ*::act_ref::GetArgumentValue
    - SMJS_GET_PRIVATE
    - JS_NewStringCopyZ
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_action_get_argument)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:883,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:886,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:887,1
    - Dst: JS_GetArrayLength
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:889,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:891,1
    - Dst: SMJS_OBJ*::act_ref::GetActionDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:891,1
    - Dst: JS_GetElement
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:898,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:899,1
    - Dst: JS_GetElement
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:901,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:904,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:905,1
    - Dst: JSVAL_IS_BOOLEAN
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:906,1
    - Dst: JSVAL_TO_BOOLEAN
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:907,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:909,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:910,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:910,1
    - Dst: JSVAL_IS_NUMBER
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:913,1
    - Dst: JS_ValueToNumber
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:915,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:916,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:922,1
    - Dst: SMJS_OBJ*::act_ref::SetArgumentValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:924,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:926,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:927,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:931,1
    - Dst: gf_sema_notify
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:936,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 43
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 939
      start: 879
    functionDepth: 1
    functionLinenumber: 879
    functionLinenumberEnd: 939
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - SMJS_OBJ*::act_ref::SetArgumentValue
    - JSVAL_IS_STRING
    - gf_sema_notify
    - JSVAL_TO_BOOLEAN
    - sprintf
    - JS_ValueToNumber
    - JSVAL_TO_OBJECT
    - JSVAL_IS_INT
    - JSVAL_IS_NUMBER
    - JS_GetElement
    - GF_LOG
    - JSVAL_IS_OBJECT
    - JS_GetArrayLength
    - JSVAL_TO_INT
    - SMJS_OBJ*::act_ref::GetActionDesc
    - JSVAL_IS_BOOLEAN
    - SMJS_FREE
    - SMJS_GET_PRIVATE
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_action_send_reply)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: NPT_COMPILER_UNUSED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:947,1
    - Dst: gf_mx_p
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:950,1
    - Dst: GetActionDesc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:952,1
    - Dst: PLT_ActionDesc::GetName
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:953,1
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:955,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:957,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:957,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:960,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:961,1
    - Dst: LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:967,1
    - Dst: JS_NewObject
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:969,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:970,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:971,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:975,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:975,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:975,1
    - Dst: PLT_ActionDesc::GetService
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:976,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:977,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:977,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:978,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:979,1
    - Dst: gf_sema_new
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:982,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:985,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:986,1
    - Dst: LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:987,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:989,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:989,1
    - Dst: SetError
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:990,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:990,1
    - Dst: gf_sema_wait_for
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:993,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:994,1
    - Dst: gf_sema_del
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:996,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp:999,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 31
    argCount: 2
    argNames:
    - '          action'
    - ' context'
    argTypes:
    - PLT_ActionReference
    - PLT_HttpRequestContext
    assertStmts:
    - condition: (!m_pSema)
      pos:
        line_end: 954
        line_start: 954
        source_file: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    constantsTouched: []
    func_position:
      end: 1002
      start: 943
    functionDepth: 1
    functionLinenumber: 943
    functionLinenumberEnd: 1002
    functionName: GPAC_GenericDevice::OnAction
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.cpp
    functionUses: 0
    functionsReached:
    - GetActionDesc
    - gf_sema_wait_for
    - PLT_ActionDesc::GetName
    - NPT_COMPILER_UNUSED
    - gf_sema_del
    - JS_DefineFunction
    - JSVAL_IS_INT
    - PLT_ActionDesc::GetService
    - JS_NewStringCopyZ
    - gf_mx_p
    - GF_LOG
    - assert
    - STRING_TO_JSVAL
    - gf_mx_v
    - JSVAL_TO_INT
    - OBJECT_TO_JSVAL
    - JSVAL_IS_NULL
    - gf_sema_new
    - LockJavascript
    - SMJS_SET_PRIVATE
    - gf_th_id
    - JS_DefineProperty
    - SetError
    - JS_NewObject
    - JS_CallFunctionValue
    linkageType: ''
    returnType: NPT_Result
    signature: "NPT_Result GPAC_GenericDevice::OnAction(PLT_ActionReference&          action,\n
      \                            const PLT_HttpRequestContext& context)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 80
    functionName: GPAC_StateVariableListener::GPAC_StateVariableListener
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GPAC_StateVariableListener()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 94
    functionName: GPAC_ActionArgListener::GPAC_ActionArgListener
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GPAC_ActionArgListener()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: GPAC_ActionUDTA::GPAC_ActionUDTA
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GenericDevice.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GPAC_ActionUDTA()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Replace
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.h:53,1
    - Dst: TrimRight
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.h:54,1
    - Dst: TrimRight
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.h:57,1
    - Dst: TrimLeft
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.h:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - alias
    - path
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 60
    functionName: GPAC_MediaDirectory::GPAC_MediaDirectory
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.h
    functionUses: 0
    functionsReached:
    - TrimRight
    - Replace
    - TrimLeft
    linkageType: ''
    returnType: void
    signature: void GPAC_MediaDirectory(const char *alias, const char *path, Bool
      is_hidden = GF_FALSE)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 75
    functionName: GPAC_VirtualFile::GPAC_VirtualFile
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GPAC_VirtualFile(const char *uri="", const char *val="", const
      char *mime="", Bool temporary= GF_FALSE)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' v1'
    argTypes:
    - GPAC_VirtualFile
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: operator==(const GPAC_VirtualFile & v1)
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACFileMediaServer.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const GPAC_VirtualFile & v1)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' device'
    - added
    argTypes:
    - PLT_DeviceDataReference
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 135
    functionName: GF_UPnP::OnMediaServerAdd
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OnMediaServerAdd(PLT_DeviceDataReference& device, int added)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' device'
    - added
    argTypes:
    - PLT_DeviceDataReference
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 136
    functionName: GF_UPnP::OnMediaRendererAdd
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OnMediaRendererAdd(PLT_DeviceDataReference& device, int added)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - item
    - added
    argTypes:
    - GPAC_DeviceItem*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 137
    functionName: GF_UPnP::OnDeviceAdd
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OnDeviceAdd(GPAC_DeviceItem *item, int added)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __b
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 147
    functionName: VPASSIGN
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VPASSIGN(__b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 148
    functionName: VPGET
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VPGET()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __b
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 150
    functionName: VPASSIGN
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VPASSIGN(__b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 151
    functionName: VPGET
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VPGET()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 50
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: upnp_new
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - upnp_new
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: upnp_delete
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:64,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 67
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - upnp_delete
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 108
    functionName: GF_UPnP::GF_UPnP
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GF_UPnP::GF_UPnP()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 115
    functionName: GF_UPnP::~GF_UPnP()
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void GF_UPnP::~GF_UPnP()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_lock_javascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - do_lock
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionName: GF_UPnP::LockJavascript
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - gf_sg_lock_javascript
    linkageType: ''
    returnType: void
    signature: void GF_UPnP::LockJavascript(Bool do_lock)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_UPnP::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:130,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:131,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:132,1
    - Dst: GF_UPnP::GetUPnPDevice
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:134,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:135,1
    - Dst: GF_UPnP::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:137,1
    - Dst: gf_term_play_from_time
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:141,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - src_url
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 143
    functionName: GF_UPnP::OnStop
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - JS_LookupProperty
    - gf_term_play_from_time
    - GF_UPnP::GetUPnPDevice
    - JSVAL_IS_OBJECT
    - JS_CallFunctionValue
    - GF_UPnP::LockJavascript
    linkageType: ''
    returnType: void
    signature: void GF_UPnP::OnStop(const char *src_url)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_UPnP::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:152,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:153,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:154,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:155,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:156,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:157,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:159,1
    - Dst: GF_UPnP::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:162,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:167,1
    - Dst: root_scene::root_od::net_service::ifce::ServiceCommand
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:169,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 177
    functionName: GF_UPnP::OnMigrate
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - JS_LookupProperty
    - SMJS_FREE
    - JSVAL_IS_STRING
    - JSVAL_IS_OBJECT
    - memset
    - JS_CallFunctionValue
    - GF_UPnP::LockJavascript
    - root_scene::root_od::net_service::ifce::ServiceCommand
    - SMJS_CHARS
    linkageType: ''
    returnType: NPT_String
    signature: NPT_String GF_UPnP::OnMigrate()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:182,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - src_url
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionName: GF_UPnP::GetUPnPDevice
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 1
    functionsReached:
    - STRING_TO_JSVAL
    - JS_NewStringCopyZ
    linkageType: ''
    returnType: jsval
    signature: jsval GF_UPnP::GetUPnPDevice(const char *src_url)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_UPnP::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:193,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:194,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:195,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:197,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:197,1
    - Dst: GF_UPnP::GetUPnPDevice
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:198,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:199,1
    - Dst: GF_UPnP::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:201,1
    - Dst: gf_term_navigate_to
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:204,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - url
    - src_url
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 206
    functionName: GF_UPnP::OnConnect
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - JS_LookupProperty
    - GF_UPnP::GetUPnPDevice
    - JSVAL_IS_OBJECT
    - gf_term_navigate_to
    - STRING_TO_JSVAL
    - GF_UPnP::LockJavascript
    - JS_CallFunctionValue
    - JS_NewStringCopyZ
    linkageType: ''
    returnType: void
    signature: void GF_UPnP::OnConnect(const char *url, const char *src_url)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_UPnP::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:213,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:214,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:215,1
    - Dst: GF_UPnP::GetUPnPDevice
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:217,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:218,1
    - Dst: GF_UPnP::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:220,1
    - Dst: gf_term_set_option
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:223,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - do_resume
    - src_url
    argTypes:
    - Bool
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 225
    functionName: GF_UPnP::OnPause
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - JS_LookupProperty
    - GF_UPnP::GetUPnPDevice
    - gf_term_set_option
    - JSVAL_IS_OBJECT
    - JS_CallFunctionValue
    - GF_UPnP::LockJavascript
    linkageType: ''
    returnType: void
    signature: void GF_UPnP::OnPause(Bool do_resume, const char *src_url)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_UPnP::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:233,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:234,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:235,1
    - Dst: DOUBLE_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:237,1
    - Dst: JS_NewDouble
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:237,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:238,1
    - Dst: GF_UPnP::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:240,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:247,1
    - Dst: gf_term_play_from_time
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:249,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 1
    argNames:
    - time
    argTypes:
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 227
    functionDepth: 1
    functionLinenumber: 227
    functionLinenumberEnd: 252
    functionName: GF_UPnP::OnSeek
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - JS_LookupProperty
    - gf_term_play_from_time
    - JS_NewDouble
    - DOUBLE_TO_JSVAL
    - GF_LOG
    - JSVAL_IS_OBJECT
    - GF_UPnP::LockJavascript
    - JS_CallFunctionValue
    linkageType: ''
    returnType: void
    signature: void GF_UPnP::OnSeek(Double time)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' device'
    - item_id
    - update_id
    argTypes:
    - PLT_DeviceDataReference
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 256
    functionName: GF_UPnP::ContainerChanged
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GF_UPnP::ContainerChanged(PLT_DeviceDataReference& device, const
      char *item_id, const char *update_id)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_UPnP::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:264,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:265,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:266,1
    - Dst: INT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:268,1
    - Dst: DOUBLE_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:269,1
    - Dst: JS_NewDouble
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:269,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:270,1
    - Dst: GF_UPnP::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:272,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - renderer_idx
    - time
    argTypes:
    - s32
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 258
    functionDepth: 1
    functionLinenumber: 258
    functionLinenumberEnd: 275
    functionName: GF_UPnP::onTimeChanged
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - JS_LookupProperty
    - JS_NewDouble
    - DOUBLE_TO_JSVAL
    - JSVAL_IS_OBJECT
    - INT_TO_JSVAL
    - GF_UPnP::LockJavascript
    - JS_CallFunctionValue
    linkageType: ''
    returnType: void
    signature: void GF_UPnP::onTimeChanged(s32 renderer_idx, Double time)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_UPnP::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:283,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:284,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:285,1
    - Dst: INT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:287,1
    - Dst: DOUBLE_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:288,1
    - Dst: JS_NewDouble
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:288,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:289,1
    - Dst: GF_UPnP::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:291,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - renderer_idx
    - dur
    argTypes:
    - s32
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 277
    functionDepth: 1
    functionLinenumber: 277
    functionLinenumberEnd: 294
    functionName: GF_UPnP::onDurationChanged
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - JS_LookupProperty
    - JS_NewDouble
    - DOUBLE_TO_JSVAL
    - JSVAL_IS_OBJECT
    - INT_TO_JSVAL
    - GF_UPnP::LockJavascript
    - JS_CallFunctionValue
    linkageType: ''
    returnType: void
    signature: void GF_UPnP::onDurationChanged(s32 renderer_idx, Double dur)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_term_get_url
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:303,1
    - Dst: SetConnected
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:305,1
    - Dst: SetDuration
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:311,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:316,1
    - Dst: gf_term_get_service_info
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:319,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:320,1
    - Dst: strcat
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:322,1
    - Dst: strcat
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:323,1
    - Dst: strcat
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:326,1
    - Dst: strcat
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:327,1
    - Dst: strcat
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:328,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 1
    argNames:
    - evt
    argTypes:
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 297
    functionDepth: 0
    functionLinenumber: 297
    functionLinenumberEnd: 342
    functionName: GF_UPnP::ProcessEvent
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - strcat
    - strcpy
    - gf_term_get_url
    - SetDuration
    - memset
    - gf_term_get_service_info
    - SetConnected
    linkageType: ''
    returnType: Bool
    signature: Bool GF_UPnP::ProcessEvent(GF_Event *evt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_UPnP*::ProcessEvent
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:347,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - udta
    - evt
    - consumed
    argTypes:
    - void*
    - GF_Event*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 344
    functionDepth: 0
    functionLinenumber: 344
    functionLinenumberEnd: 349
    functionName: upnp_on_term_event
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - GF_UPnP*::ProcessEvent
    linkageType: ''
    returnType: Bool
    signature: Bool upnp_on_term_event(void *udta, GF_Event *evt, Bool consumed)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:358,1
    - Dst: PLT_UPnP::PLT_UPnP
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:363,1
    - Dst: SetIgnoreLocalUUIDs
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:364,1
    - Dst: gf_sk_get_host_name
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:366,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:368,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:370,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:375,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:376,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:378,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:383,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:384,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:386,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:390,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:391,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:393,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:394,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:395,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:397,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:399,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:404,1
    - Dst: atoi
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:405,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:407,1
    - Dst: GPAC_MediaRenderer::GPAC_MediaRenderer
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:409,1
    - Dst: GPAC_MediaRenderer::GPAC_MediaRenderer
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:411,1
    - Dst: GetUUID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:413,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:414,1
    - Dst: gf_gpac_version
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:421,1
    - Dst: AddDevice
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:425,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:428,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:429,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:431,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:433,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:435,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:440,1
    - Dst: atoi
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:441,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:443,1
    - Dst: GPAC_FileMediaServer::GPAC_FileMediaServer
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:445,1
    - Dst: GPAC_FileMediaServer::GPAC_FileMediaServer
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:447,1
    - Dst: GetUUID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:449,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:450,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:453,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:455,1
    - Dst: AddSharedDirectory
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:456,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:460,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:462,1
    - Dst: strncmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:464,1
    - Dst: AddSharedDirectory
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:470,1
    - Dst: gf_gpac_version
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:480,1
    - Dst: AddDevice
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:484,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:487,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:488,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:489,1
    - Dst: PLT_CtrlPoint::PLT_CtrlPoint
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:492,1
    - Dst: PLT_CtrlPointReference
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:493,1
    - Dst: GPAC_GenericController::GPAC_GenericController
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:495,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:498,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:499,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:500,1
    - Dst: PLT_CtrlPoint::PLT_CtrlPoint
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:503,1
    - Dst: PLT_CtrlPointReference
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:504,1
    - Dst: GPAC_MediaController::GPAC_MediaController
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:506,1
    - Dst: IgnoreUUID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:512,1
    - Dst: GetUUID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:512,1
    - Dst: IgnoreUUID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:513,1
    - Dst: GetUUID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:513,1
    - Dst: AddCtrlPoint
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:515,1
    - Dst: gf_term_add_event_filter
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:520,1
    - Dst: Start
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:523,1
    - Dst: Search
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:527,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 147
    argCount: 1
    argNames:
    - term
    argTypes:
    - GF_Terminal*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 351
    functionDepth: 2
    functionLinenumber: 351
    functionLinenumberEnd: 529
    functionName: GF_UPnP::Load
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - AddDevice
    - AddCtrlPoint
    - gf_opts_get_key
    - gf_sk_get_host_name
    - atoi
    - strchr
    - gf_cfg_set_key
    - GPAC_MediaController::GPAC_MediaController
    - sprintf
    - GetUUID
    - PLT_CtrlPointReference
    - strncmp
    - GPAC_MediaRenderer::GPAC_MediaRenderer
    - PLT_UPnP::PLT_UPnP
    - GF_LOG
    - PLT_CtrlPoint::PLT_CtrlPoint
    - Search
    - Start
    - IgnoreUUID
    - GPAC_FileMediaServer::GPAC_FileMediaServer
    - gf_term_add_event_filter
    - gf_gpac_version
    - strcmp
    - AddSharedDirectory
    - GPAC_GenericController::GPAC_GenericController
    - SetIgnoreLocalUUIDs
    linkageType: ''
    returnType: void
    signature: void GF_UPnP::Load(GF_Terminal *term)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Stop
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:533,1
    - Dst: ALSA_Shutdown
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:540,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 531
    functionDepth: 2
    functionLinenumber: 531
    functionLinenumberEnd: 541
    functionName: GF_UPnP::Unload
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - ALSA_Shutdown
    - Stop
    linkageType: ''
    returnType: void
    signature: void GF_UPnP::Unload()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GetLength
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:551,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:551,1
    - Dst: GetURLBase
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:551,1
    - Dst: GF_UPnP::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:553,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:555,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:556,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:558,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:558,1
    - Dst: GetFriendlyName
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:558,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:559,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:559,1
    - Dst: GetUUID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:559,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:560,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:562,1
    - Dst: GF_UPnP::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:564,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - ' device'
    - added
    argTypes:
    - PLT_DeviceDataReference
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 546
    functionDepth: 1
    functionLinenumber: 546
    functionLinenumberEnd: 565
    functionName: GF_UPnP::OnMediaRendererAdd
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - GetURLBase
    - JS_LookupProperty
    - GetLength
    - JSVAL_IS_OBJECT
    - GetUUID
    - strstr
    - STRING_TO_JSVAL
    - BOOLEAN_TO_JSVAL
    - GetFriendlyName
    - GF_UPnP::LockJavascript
    - JS_CallFunctionValue
    - JS_NewStringCopyZ
    linkageType: ''
    returnType: void
    signature: void GF_UPnP::OnMediaRendererAdd(PLT_DeviceDataReference& device, int
      added)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GetLength
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:573,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:573,1
    - Dst: GetURLBase
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:573,1
    - Dst: GF_UPnP::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:575,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:576,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:577,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:579,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:579,1
    - Dst: GetFriendlyName
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:579,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:580,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:580,1
    - Dst: GetUUID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:580,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:581,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:583,1
    - Dst: GF_UPnP::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:585,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - ' device'
    - added
    argTypes:
    - PLT_DeviceDataReference
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 568
    functionDepth: 1
    functionLinenumber: 568
    functionLinenumberEnd: 586
    functionName: GF_UPnP::OnMediaServerAdd
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - GetURLBase
    - JS_LookupProperty
    - GetLength
    - JSVAL_IS_OBJECT
    - GetUUID
    - strstr
    - STRING_TO_JSVAL
    - BOOLEAN_TO_JSVAL
    - GetFriendlyName
    - GF_UPnP::LockJavascript
    - JS_CallFunctionValue
    - JS_NewStringCopyZ
    linkageType: ''
    returnType: void
    signature: void GF_UPnP::OnMediaServerAdd(PLT_DeviceDataReference& device, int
      added)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:596,1
    - Dst: SMJS_ID_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:599,1
    - Dst: SMJS_CHARS_FROM_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:600,1
    - Dst: SMJS_ID_TO_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:600,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:603,1
    - Dst: VPASSIGN
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:604,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:604,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:604,1
    - Dst: GPAC_DeviceItem*::m_device::GetFriendlyName
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:604,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:606,1
    - Dst: VPASSIGN
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:607,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:607,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:607,1
    - Dst: GPAC_DeviceItem*::m_device::GetUUID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:607,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:609,1
    - Dst: VPASSIGN
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:610,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:610,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:610,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:612,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:613,1
    - Dst: GPAC_DeviceItem*::RefreshServiceList
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:615,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:616,1
    - Dst: VPASSIGN
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:618,1
    - Dst: INT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:618,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:620,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 588
    functionDepth: 1
    functionLinenumber: 588
    functionLinenumberEnd: 622
    functionName: SMJS_DECL_FUNC_PROP_GET
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_FREE
    - SMJS_ID_TO_STRING
    - GPAC_DeviceItem*::m_device::GetUUID
    - SMJS_ID_IS_STRING
    - GPAC_DeviceItem*::RefreshServiceList
    - STRING_TO_JSVAL
    - gf_list_count
    - strcmp
    - SMJS_CHARS_FROM_STRING
    - INT_TO_JSVAL
    - GPAC_DeviceItem*::m_device::GetFriendlyName
    - SMJS_GET_PRIVATE
    - JS_NewStringCopyZ
    - VPASSIGN
    linkageType: ''
    returnType: void
    signature: void SMJS_DECL_FUNC_PROP_GET(  upnpdevice_getProperty)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:629,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:632,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:633,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:635,1
    - Dst: GPAC_DeviceItem*::m_device::FindServiceByType
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:636,1
    - Dst: GPAC_DeviceItem*::m_pUPnP::m_pGenericController::m_CtrlPoint::Subscribe
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:637,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:639,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 5
    argNames:
    - c
    - obj
    - argc
    - argv
    - rval
    argTypes:
    - JSContext*
    - JSObject*
    - uintN
    - jsval*
    - jsval*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 641
      start: 625
    functionDepth: 0
    functionLinenumber: 625
    functionLinenumberEnd: 641
    functionName: upnp_device_subscribe
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_FREE
    - JSVAL_IS_STRING
    - GPAC_DeviceItem*::m_pUPnP::m_pGenericController::m_CtrlPoint::Subscribe
    - JSVAL_IS_OBJECT
    - GPAC_DeviceItem*::m_device::FindServiceByType
    - SMJS_GET_PRIVATE
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool upnp_device_subscribe(JSContext *c, JSObject *obj, uintN argc,
      jsval *argv, jsval *rval)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:649,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:651,1
    - Dst: SMJS_OBJ*::FindService
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:653,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:654,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:656,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:659,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:659,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 644
    functionDepth: 0
    functionLinenumber: 644
    functionLinenumberEnd: 661
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - SMJS_FREE
    - OBJECT_TO_JSVAL
    - SMJS_GET_PRIVATE
    - SMJS_OBJ*::FindService
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_device_find_service)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:668,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:669,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:670,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:672,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:674,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:677,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:677,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 663
    functionDepth: 1
    functionLinenumber: 663
    functionLinenumberEnd: 679
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - gf_list_get
    - JSVAL_IS_INT
    - JSVAL_TO_INT
    - OBJECT_TO_JSVAL
    - SMJS_GET_PRIVATE
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_device_get_service)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GetLength
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:687,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:687,1
    - Dst: GPAC_DeviceItem*::m_device::GetURLBase
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:687,1
    - Dst: GF_UPnP::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:689,1
    - Dst: JS_NewObject
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:693,1
    - Dst: gf_js_add_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:695,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:696,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:699,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:700,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:702,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:703,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:704,1
    - Dst: GF_UPnP::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:706,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - item
    - added
    argTypes:
    - GPAC_DeviceItem*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 707
      start: 682
    functionDepth: 1
    functionLinenumber: 682
    functionLinenumberEnd: 707
    functionName: GF_UPnP::OnDeviceAdd
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - JS_LookupProperty
    - GetLength
    - JSVAL_IS_OBJECT
    - strstr
    - gf_js_add_root
    - BOOLEAN_TO_JSVAL
    - OBJECT_TO_JSVAL
    - JS_NewObject
    - GF_UPnP::LockJavascript
    - JS_CallFunctionValue
    - GPAC_DeviceItem*::m_device::GetURLBase
    - SMJS_SET_PRIVATE
    linkageType: ''
    returnType: void
    signature: void GF_UPnP::OnDeviceAdd(GPAC_DeviceItem *item, int added)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:718,1
    - Dst: SMJS_ID_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:721,1
    - Dst: SMJS_CHARS_FROM_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:722,1
    - Dst: SMJS_ID_TO_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:722,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:725,1
    - Dst: VPASSIGN
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:726,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:726,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:728,1
    - Dst: VPASSIGN
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:729,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:729,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:731,1
    - Dst: VPASSIGN
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:732,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:732,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:734,1
    - Dst: VPASSIGN
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:735,1
    - Dst: INT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:735,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:735,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:737,1
    - Dst: VPASSIGN
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:738,1
    - Dst: INT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:738,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:738,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:740,1
    - Dst: VPASSIGN
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:741,1
    - Dst: INT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:741,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:741,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:743,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 745
      start: 709
    functionDepth: 1
    functionLinenumber: 709
    functionLinenumberEnd: 745
    functionName: SMJS_DECL_FUNC_PROP_GET
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_FREE
    - SMJS_ID_TO_STRING
    - SMJS_ID_IS_STRING
    - BOOLEAN_TO_JSVAL
    - gf_list_count
    - strcmp
    - SMJS_CHARS_FROM_STRING
    - INT_TO_JSVAL
    - SMJS_GET_PRIVATE
    - VPASSIGN
    linkageType: ''
    returnType: void
    signature: void SMJS_DECL_FUNC_PROP_GET(  upnp_getProperty)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:754,1
    - Dst: SMJS_ID_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:757,1
    - Dst: SMJS_CHARS_FROM_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:758,1
    - Dst: SMJS_ID_TO_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:758,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:762,1
    - Dst: JSVAL_IS_DOUBLE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:762,1
    - Dst: VPGET
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:762,1
    - Dst: JS_ValueToNumber
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:764,1
    - Dst: VPGET
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:764,1
    - Dst: GF_UPnP*::m_pMediaRenderer::SetDuration
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:765,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:767,1
    - Dst: JSVAL_IS_DOUBLE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:767,1
    - Dst: VPGET
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:767,1
    - Dst: JS_ValueToNumber
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:769,1
    - Dst: VPGET
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:769,1
    - Dst: GF_UPnP*::m_pMediaRenderer::SetTime
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:770,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:772,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:772,1
    - Dst: VPGET
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:772,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:773,1
    - Dst: VPGET
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:773,1
    - Dst: GF_UPnP*::m_pMediaRenderer::SetConnected
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:774,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:775,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:778,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 780
      start: 747
    functionDepth: 1
    functionLinenumber: 747
    functionLinenumberEnd: 780
    functionName: SMJS_DECL_FUNC_PROP_SET
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_FREE
    - SMJS_ID_TO_STRING
    - JSVAL_IS_STRING
    - SMJS_ID_IS_STRING
    - VPGET
    - GF_UPnP*::m_pMediaRenderer::SetDuration
    - GF_UPnP*::m_pMediaRenderer::SetConnected
    - JS_ValueToNumber
    - strcmp
    - SMJS_CHARS_FROM_STRING
    - JSVAL_IS_DOUBLE
    - GF_UPnP*::m_pMediaRenderer::SetTime
    - SMJS_GET_PRIVATE
    - SMJS_CHARS
    linkageType: ''
    returnType: void
    signature: void SMJS_DECL_FUNC_PROP_SET(upnp_setProperty)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:789,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:790,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:792,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:795,1
    - Dst: JS_NewObject
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:799,1
    - Dst: gf_js_add_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:801,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:802,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:804,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:804,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 806
      start: 783
    functionDepth: 1
    functionLinenumber: 783
    functionLinenumberEnd: 806
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - gf_list_get
    - gf_js_add_root
    - JSVAL_IS_INT
    - JSVAL_TO_INT
    - OBJECT_TO_JSVAL
    - JS_NewObject
    - SMJS_GET_PRIVATE
    - SMJS_SET_PRIVATE
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_get_device)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:814,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:815,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:815,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:817,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:818,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:819,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:821,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:822,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:826,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:828,1
    - Dst: GPAC_DeviceItem*::m_device::GetURLBase
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:829,1
    - Dst: GPAC_DeviceItem*::FindService
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:830,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:832,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:832,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:837,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:838,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 840
      start: 808
    functionDepth: 1
    functionLinenumber: 808
    functionLinenumberEnd: 840
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - gf_list_get
    - SMJS_FREE
    - JSVAL_IS_STRING
    - gf_list_count
    - OBJECT_TO_JSVAL
    - SMJS_GET_PRIVATE
    - GPAC_DeviceItem*::m_device::GetURLBase
    - SMJS_CHARS
    - GPAC_DeviceItem*::FindService
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_find_service)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:848,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:848,1
    - Dst: JSVAL_IS_VOID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:848,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:850,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:853,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:855,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:857,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:861,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 3
    argNames:
    - upnp
    - c
    - obj
    argTypes:
    - GF_UPnP*
    - JSContext*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 863
      start: 842
    functionDepth: 1
    functionLinenumber: 842
    functionLinenumberEnd: 863
    functionName: upnp_renderer_get_device
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - JS_LookupProperty
    - gf_list_get
    - SMJS_FREE
    - gf_list_count
    - JSVAL_IS_VOID
    - JSVAL_IS_NULL
    - SMJS_CHARS
    linkageType: ''
    returnType: GPAC_MediaRendererItem
    signature: GPAC_MediaRendererItem *upnp_renderer_get_device(GF_UPnP *upnp , JSContext
      *c, JSObject *obj)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:871,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:871,1
    - Dst: JSVAL_IS_VOID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:871,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:873,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:876,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:878,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:880,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:884,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 3
    argNames:
    - upnp
    - c
    - obj
    argTypes:
    - GF_UPnP*
    - JSContext*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 886
      start: 865
    functionDepth: 1
    functionLinenumber: 865
    functionLinenumberEnd: 886
    functionName: upnp_server_get_device
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - JS_LookupProperty
    - gf_list_get
    - SMJS_FREE
    - gf_list_count
    - JSVAL_IS_VOID
    - JSVAL_IS_NULL
    - SMJS_CHARS
    linkageType: ''
    returnType: GPAC_MediaServerItem
    signature: GPAC_MediaServerItem *upnp_server_get_device(GF_UPnP *upnp , JSContext
      *c, JSObject *obj)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:898,1
    - Dst: upnp_renderer_get_device
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:901,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:907,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:907,1
    - Dst: upnp_server_get_device
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:908,1
    - Dst: NPT_FAILED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:909,1
    - Dst: GPAC_MediaServerItem*::m_device::FindServiceByType
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:909,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:916,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:917,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:918,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:918,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:918,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:919,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:921,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:922,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:925,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:926,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:930,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:931,1
    - Dst: NPT_SUCCEEDED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:935,1
    - Dst: GPAC_MediaRendererItem*::m_device::FindServiceByType
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:935,1
    - Dst: SMJS_OBJ*::m_pAVCtrlPoint::m_MediaController::SetAVTransportURI
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:937,1
    - Dst: SMJS_OBJ*::m_pAVCtrlPoint::m_MediaController::Play
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:938,1
    - Dst: GPAC_MediaServerItem*::m_BrowseResults::GetFirstItem
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:943,1
    - Dst: m_Resources::GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:946,1
    - Dst: SMJS_OBJ*::m_pAVCtrlPoint::m_MediaController::SetAVTransportURI
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:947,1
    - Dst: SMJS_OBJ*::m_pAVCtrlPoint::m_MediaController::Play
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:948,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:956,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:957,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 56
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 959
      start: 889
    functionDepth: 2
    functionLinenumber: 889
    functionLinenumberEnd: 959
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - GPAC_MediaRendererItem*::m_device::FindServiceByType
    - JS_LookupProperty
    - SMJS_OBJ*::m_pAVCtrlPoint::m_MediaController::SetAVTransportURI
    - SMJS_FREE
    - JSVAL_IS_STRING
    - JSVAL_IS_OBJECT
    - GPAC_MediaServerItem*::m_device::FindServiceByType
    - NPT_FAILED
    - JSVAL_TO_OBJECT
    - NPT_SUCCEEDED
    - SMJS_OBJ*::m_pAVCtrlPoint::m_MediaController::Play
    - JSVAL_IS_NULL
    - GPAC_MediaServerItem*::m_BrowseResults::GetFirstItem
    - SMJS_GET_PRIVATE
    - upnp_renderer_get_device
    - m_Resources::GetItemCount
    - upnp_server_get_device
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_renderer_open)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:967,1
    - Dst: upnp_renderer_get_device
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:970,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:976,1
    - Dst: JSVAL_IS_NUMBER
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:977,1
    - Dst: JS_ValueToNumber
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:979,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:980,1
    - Dst: SMJS_OBJ*::m_pAVCtrlPoint::m_MediaController::Play
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:982,1
    - Dst: SMJS_OBJ*::m_pAVCtrlPoint::m_MediaController::Pause
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:986,1
    - Dst: SMJS_OBJ*::m_pAVCtrlPoint::m_MediaController::Stop
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:990,1
    - Dst: JSVAL_IS_NUMBER
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:994,1
    - Dst: JS_ValueToNumber
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:997,1
    - Dst: format_time_string
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:998,1
    - Dst: SMJS_OBJ*::m_pAVCtrlPoint::m_MediaController::Seek
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:999,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 1
    argNames:
    - act_type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1004
      start: 961
    functionDepth: 2
    functionLinenumber: 961
    functionLinenumberEnd: 1004
    functionName: SMJS_FUNCTION_EXT
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_OBJ*::m_pAVCtrlPoint::m_MediaController::Stop
    - SMJS_OBJ*::m_pAVCtrlPoint::m_MediaController::Pause
    - strcpy
    - format_time_string
    - sprintf
    - JS_ValueToNumber
    - SMJS_OBJ*::m_pAVCtrlPoint::m_MediaController::Play
    - JSVAL_IS_NUMBER
    - SMJS_GET_PRIVATE
    - upnp_renderer_get_device
    - SMJS_OBJ*::m_pAVCtrlPoint::m_MediaController::Seek
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION_EXT(upnp_renderer_playback, u32 act_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: upnp_renderer_playback
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1007,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1008
      start: 1005
    functionDepth: 0
    functionLinenumber: 1005
    functionLinenumberEnd: 1008
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - upnp_renderer_playback
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_renderer_play)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: upnp_renderer_playback
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1011,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1012
      start: 1009
    functionDepth: 0
    functionLinenumber: 1009
    functionLinenumberEnd: 1012
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - upnp_renderer_playback
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_renderer_pause)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: upnp_renderer_playback
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1015,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1016
      start: 1013
    functionDepth: 0
    functionLinenumber: 1013
    functionLinenumberEnd: 1016
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - upnp_renderer_playback
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_renderer_stop)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: upnp_renderer_playback
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1019,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1020
      start: 1017
    functionDepth: 0
    functionLinenumber: 1017
    functionLinenumberEnd: 1020
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - upnp_renderer_playback
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_renderer_seek)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1027,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1031,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1032,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1033,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1035,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1037,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1038,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1041,1
    - Dst: JS_NewObject
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1045,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1046,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1048,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1048,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1048,1
    - Dst: GPAC_MediaRendererItem*::m_device::GetFriendlyName
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1048,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1049,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1049,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1049,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1050,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1050,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1050,1
    - Dst: GPAC_MediaRendererItem*::m_device::GetURLBase
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1050,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1051,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1052,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1053,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1054,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1055,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1057,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1057,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1059
      start: 1022
    functionDepth: 1
    functionLinenumber: 1022
    functionLinenumberEnd: 1059
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - gf_list_get
    - SMJS_FREE
    - JSVAL_IS_STRING
    - JS_DefineProperty
    - JS_NewStringCopyZ
    - STRING_TO_JSVAL
    - JS_DefineFunction
    - JSVAL_IS_INT
    - JSVAL_TO_INT
    - GPAC_MediaRendererItem*::m_device::GetFriendlyName
    - JS_NewObject
    - GPAC_MediaRendererItem*::m_device::GetURLBase
    - SMJS_GET_PRIVATE
    - OBJECT_TO_JSVAL
    - gf_list_enum
    - SMJS_SET_PRIVATE
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_get_renderer)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1068,1
    - Dst: upnp_server_get_device
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1071,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1076,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1078,1
    - Dst: NPT_SUCCEEDED
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1082,1
    - Dst: GPAC_MediaServerItem*::m_device::FindServiceByType
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1082,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1083,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1083,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1083,1
    - Dst: GPAC_MediaServerItem*::m_ParentDirectories::Clear
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1084,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1086,1
    - Dst: GPAC_MediaServerItem*::m_ParentDirectories::GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1087,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1088,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1089,1
    - Dst: GPAC_MediaServerItem*::m_ParentDirectories::Pop
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1092,1
    - Dst: GPAC_MediaServerItem*::m_ParentDirectories::Peek
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1093,1
    - Dst: GPAC_MediaServerItem*::m_ParentDirectories::GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1096,1
    - Dst: GPAC_MediaServerItem*::m_ParentDirectories::Clear
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1097,1
    - Dst: GPAC_MediaServerItem*::m_ParentDirectories::Push
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1100,1
    - Dst: SMJS_OBJ*::m_pAVCtrlPoint::Browse
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1102,1
    - Dst: INT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1105,1
    - Dst: GPAC_MediaServerItem*::m_BrowseResults::IsNull
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1106,1
    - Dst: INT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1107,1
    - Dst: GPAC_MediaServerItem*::m_BrowseResults::GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1107,1
    - Dst: JS_SetProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1109,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1111,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1112,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 40
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1114
      start: 1061
    functionDepth: 2
    functionLinenumber: 1061
    functionLinenumberEnd: 1114
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - GPAC_MediaServerItem*::m_ParentDirectories::Push
    - GPAC_MediaServerItem*::m_ParentDirectories::Clear
    - SMJS_FREE
    - GPAC_MediaServerItem*::m_ParentDirectories::GetItemCount
    - SMJS_OBJ*::m_pAVCtrlPoint::Browse
    - GPAC_MediaServerItem*::m_BrowseResults::IsNull
    - upnp_server_get_device
    - strcmp
    - NPT_SUCCEEDED
    - GPAC_MediaServerItem*::m_ParentDirectories::Pop
    - GPAC_MediaServerItem*::m_ParentDirectories::Peek
    - INT_TO_JSVAL
    - SMJS_GET_PRIVATE
    - GPAC_MediaServerItem*::m_BrowseResults::GetItemCount
    - GPAC_MediaServerItem*::m_device::FindServiceByType
    - JS_SetProperty
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_server_browse)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1121,1
    - Dst: upnp_server_get_device
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1124,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1126,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1126,1
    - Dst: GPAC_MediaServerItem*::m_ParentDirectories::GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1126,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1128
      start: 1117
    functionDepth: 2
    functionLinenumber: 1117
    functionLinenumberEnd: 1128
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - GPAC_MediaServerItem*::m_ParentDirectories::GetItemCount
    - BOOLEAN_TO_JSVAL
    - SMJS_GET_PRIVATE
    - upnp_server_get_device
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_server_has_parent_dir)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1135,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1136,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1137,1
    - Dst: SMJS_OBJ*::m_Resources::GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1138,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1139,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1139,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1139,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1141,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1141,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1141,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1144
      start: 1130
    functionDepth: 0
    functionLinenumber: 1130
    functionLinenumberEnd: 1144
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - SMJS_OBJ*::m_Resources::GetItemCount
    - STRING_TO_JSVAL
    - JSVAL_IS_INT
    - JSVAL_TO_INT
    - SMJS_GET_PRIVATE
    - JS_NewStringCopyZ
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_server_get_resource_uri)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1153,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1154,1
    - Dst: upnp_server_get_device
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1156,1
    - Dst: GPAC_MediaServerItem*::m_BrowseResults::IsNull
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1158,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1160,1
    - Dst: GPAC_MediaServerItem*::m_BrowseResults::Get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1162,1
    - Dst: JS_NewObject
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1165,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1166,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1168,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1168,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1168,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1169,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1169,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1169,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1170,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1170,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1170,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1171,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1171,1
    - Dst: PLT_MediaObject*::IsContainer
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1171,1
    - Dst: PLT_MediaObject*::IsContainer
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1172,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1173,1
    - Dst: INT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1173,1
    - Dst: PLT_MediaObject*::m_Resources::GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1173,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1174,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1176,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1176,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1178
      start: 1146
    functionDepth: 2
    functionLinenumber: 1146
    functionLinenumberEnd: 1178
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - PLT_MediaObject*::m_Resources::GetItemCount
    - GPAC_MediaServerItem*::m_BrowseResults::IsNull
    - GPAC_MediaServerItem*::m_BrowseResults::Get
    - JS_DefineProperty
    - JS_NewStringCopyZ
    - STRING_TO_JSVAL
    - BOOLEAN_TO_JSVAL
    - JS_DefineFunction
    - JSVAL_IS_INT
    - JSVAL_TO_INT
    - OBJECT_TO_JSVAL
    - JS_NewObject
    - INT_TO_JSVAL
    - SMJS_GET_PRIVATE
    - PLT_MediaObject*::IsContainer
    - upnp_server_get_device
    - SMJS_SET_PRIVATE
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_server_get_file)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1186,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1187,1
    - Dst: upnp_server_get_device
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1189,1
    - Dst: GPAC_MediaServerItem*::m_BrowseResults::IsNull
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1191,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1193,1
    - Dst: GPAC_MediaServerItem*::m_BrowseResults::Get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1195,1
    - Dst: PLT_MediaObject*::m_Resources::GetItemCount
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1198,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1199,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1199,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1199,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1202
      start: 1180
    functionDepth: 2
    functionLinenumber: 1180
    functionLinenumberEnd: 1202
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - GPAC_MediaServerItem*::m_BrowseResults::IsNull
    - GPAC_MediaServerItem*::m_BrowseResults::Get
    - STRING_TO_JSVAL
    - JSVAL_IS_INT
    - JSVAL_TO_INT
    - SMJS_GET_PRIVATE
    - PLT_MediaObject*::m_Resources::GetItemCount
    - upnp_server_get_device
    - JS_NewStringCopyZ
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_server_get_file_uri)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1209,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1214,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1215,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1216,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1218,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1220,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1221,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1224,1
    - Dst: JS_NewObject
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1227,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1228,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1230,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1230,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1230,1
    - Dst: GPAC_MediaServerItem*::m_device::GetFriendlyName
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1230,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1231,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1231,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1231,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1232,1
    - Dst: INT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1232,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1233,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1234,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1235,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1236,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1239,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1239,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1241
      start: 1204
    functionDepth: 1
    functionLinenumber: 1204
    functionLinenumberEnd: 1241
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - gf_list_get
    - GPAC_MediaServerItem*::m_device::GetFriendlyName
    - SMJS_FREE
    - JSVAL_IS_STRING
    - JS_DefineProperty
    - JS_NewStringCopyZ
    - STRING_TO_JSVAL
    - JS_DefineFunction
    - JSVAL_IS_INT
    - JSVAL_TO_INT
    - OBJECT_TO_JSVAL
    - JS_NewObject
    - INT_TO_JSVAL
    - SMJS_GET_PRIVATE
    - gf_list_enum
    - SMJS_SET_PRIVATE
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_get_server)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1246,1
    - Dst: gf_term_remove_event_filter
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1251,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1254
      start: 1243
    functionDepth: 0
    functionLinenumber: 1243
    functionLinenumberEnd: 1254
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_GET_PRIVATE
    - gf_term_remove_event_filter
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_bind_renderer)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1262,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1263,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1264,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1268,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1269,1
    - Dst: SMJS_OBJ*::m_pMediaServer::GetResourceURI
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1272,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1273,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1273,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1273,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1275,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1276,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1278
      start: 1256
    functionDepth: 0
    functionLinenumber: 1256
    functionLinenumberEnd: 1278
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - SMJS_FREE
    - JSVAL_IS_STRING
    - STRING_TO_JSVAL
    - SMJS_OBJ*::m_pMediaServer::GetResourceURI
    - SMJS_GET_PRIVATE
    - JS_NewStringCopyZ
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_share_resource)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1286,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1287,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1287,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1288,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1290,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1292,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1296,1
    - Dst: JSVAL_IS_BOOLEAN
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1297,1
    - Dst: JSVAL_TO_BOOLEAN
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1297,1
    - Dst: SMJS_OBJ*::m_pMediaServer::ShareVirtualResource
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1299,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1300,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1301,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1302,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1304
      start: 1280
    functionDepth: 0
    functionLinenumber: 1280
    functionLinenumberEnd: 1304
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_FREE
    - JSVAL_IS_STRING
    - JSVAL_IS_BOOLEAN
    - SMJS_GET_PRIVATE
    - SMJS_OBJ*::m_pMediaServer::ShareVirtualResource
    - SMJS_CHARS
    - JSVAL_TO_BOOLEAN
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_share_virtual_resource)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1316,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1320,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1321,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1322,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1325,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1326,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1327,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1332,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1332,1
    - Dst: GPAC_Service::GPAC_Service
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1334,1
    - Dst: GPAC_Service*::SetSCPDXML
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1335,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1337,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1338,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1339,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1346,1
    - Dst: GPAC_Service*::SetupJS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1348,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1349,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1349,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1351
      start: 1310
    functionDepth: 1
    functionLinenumber: 1310
    functionLinenumberEnd: 1351
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - SMJS_FREE
    - JSVAL_IS_STRING
    - GPAC_Service*::SetSCPDXML
    - GPAC_Service::GPAC_Service
    - gf_list_add
    - GPAC_Service*::SetupJS
    - OBJECT_TO_JSVAL
    - SMJS_GET_PRIVATE
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_device_setup_service)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1359,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1362,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1362,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1363,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1364,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1365,1
    - Dst: m_pUPnP::m_pMediaServer::GetResourceURI
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1371,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1374,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1374,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1377,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1381,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1381,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1382,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1385,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1388,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1388,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1389,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1391,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1394,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1394,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1395,1
    - Dst: gf_gpac_version
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1396,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1397,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1400,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1400,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1401,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1403,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1409,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1410,1
    - Dst: m_pUPnP::m_pGenericController::m_CtrlPoint::IgnoreUUID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1411,1
    - Dst: GetUUID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1411,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1414,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1414,1
    - Dst: gf_js_add_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1417,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1419,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1419,1
    - Dst: gf_js_add_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1422,1
    - Dst: m_pUPnP::m_pPlatinum::AddDevice
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1425,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 53
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1428
      start: 1354
    functionDepth: 1
    functionLinenumber: 1354
    functionLinenumberEnd: 1428
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_LookupProperty
    - SMJS_FREE
    - JSVAL_IS_STRING
    - m_pUPnP::m_pGenericController::m_CtrlPoint::IgnoreUUID
    - JSVAL_IS_OBJECT
    - GetUUID
    - gf_url_concatenate
    - strstr
    - gf_js_add_root
    - m_pUPnP::m_pMediaServer::GetResourceURI
    - gf_gpac_version
    - strcmp
    - gf_opts_get_key
    - m_pUPnP::m_pPlatinum::AddDevice
    - SMJS_GET_PRIVATE
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_device_start)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1434,1
    - Dst: m_pUPnP::m_pPlatinum::RemoveDevice
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1438,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1441
      start: 1431
    functionDepth: 0
    functionLinenumber: 1431
    functionLinenumberEnd: 1441
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_GET_PRIVATE
    - m_pUPnP::m_pPlatinum::RemoveDevice
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_device_stop)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GPAC_GenericDevice::GPAC_GenericDevice
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1447,1
    - Dst: JS_NewObject
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1451,1
    - Dst: gf_js_add_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1452,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1454,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1454,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1454,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1455,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1455,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1455,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1456,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1456,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1456,1
    - Dst: GPAC_GenericDevice*::GetUUID
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1456,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1457,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1458,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1460,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1461,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1462,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 4
    argNames:
    - upnp
    - global
    - id
    - name
    argTypes:
    - GF_UPnP*
    - JSObject*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1465
      start: 1444
    functionDepth: 2
    functionLinenumber: 1444
    functionLinenumberEnd: 1465
    functionName: upnp_create_generic_device
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GPAC_GenericDevice*::GetUUID
    - GPAC_GenericDevice::GPAC_GenericDevice
    - SMJS_SET_PRIVATE
    - JS_DefineProperty
    - gf_js_add_root
    - STRING_TO_JSVAL
    - JS_DefineFunction
    - gf_list_add
    - JS_NewObject
    - JS_NewStringCopyZ
    linkageType: ''
    returnType: GPAC_GenericDevice
    signature: GPAC_GenericDevice *upnp_create_generic_device(GF_UPnP *upnp, JSObject*global,
      const char *id, const char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1473,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1476,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1477,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1479,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1480,1
    - Dst: upnp_create_generic_device
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1484,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1486,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1486,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1488,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1489,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1491
      start: 1467
    functionDepth: 3
    functionLinenumber: 1467
    functionLinenumberEnd: 1491
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - SMJS_FREE
    - OBJECT_TO_JSVAL
    - SMJS_GET_PRIVATE
    - upnp_create_generic_device
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_create_device)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1498,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1501,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1501,1
    - Dst: gf_list_del_item
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1504,1
    - Dst: GPAC_GenericDevice*::DetachJS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1505,1
    - Dst: PLT_DeviceHostReference
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1506,1
    - Dst: SMJS_OBJ*::m_pPlatinum::RemoveDevice
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1507,1
    - Dst: PLT_DeviceHostReference::Detach
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1508,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1510
      start: 1493
    functionDepth: 1
    functionLinenumber: 1493
    functionLinenumberEnd: 1510
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - PLT_DeviceHostReference
    - PLT_DeviceHostReference::Detach
    - JSVAL_TO_OBJECT
    - gf_list_del_item
    - SMJS_GET_PRIVATE
    - GPAC_GenericDevice*::DetachJS
    - SMJS_OBJ*::m_pPlatinum::RemoveDevice
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(upnp_delete_device)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_PROPERTY_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1516,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1519,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1520,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1521,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1522,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1523,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1524,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1525,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1526,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1527,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1528,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1539,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1541,1
    - Dst: GPAC_DeviceItem*::DetachJS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1542,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1547,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1548,1
    - Dst: gf_list_rem
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1549,1
    - Dst: GPAC_GenericDevice*::DetachJS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1550,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1552,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1566,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1566,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1574,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1576,1
    - Dst: JS_DefineObject
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1577,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1578,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1580,1
    - Dst: SMJS_PROPERTY_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1584,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1587,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1588,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1589,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1591,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1592,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1594,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1595,1
    - Dst: gf_sys_clock
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1599,1
    - Dst: gf_opts_get_key_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1601,1
    - Dst: gf_opts_get_key_name
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1604,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1605,1
    - Dst: strncmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1607,1
    - Dst: strncmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1609,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1611,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1614,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1618,1
    - Dst: gf_fopen
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1620,1
    - Dst: upnp_create_generic_device
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1624,1
    - Dst: gf_fseek
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1628,1
    - Dst: gf_ftell
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1629,1
    - Dst: gf_fseek
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1630,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1631,1
    - Dst: fread
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1632,1
    - Dst: JS_EvaluateScript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1635,1
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1636,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1637,1
    - Dst: gf_list_del_item
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1638,1
    - Dst: gf_fclose
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1641,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1642,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 78
    argCount: 1
    argNames:
    - param
    argTypes:
    - GF_TermExtJS*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1645
      start: 1512
    functionDepth: 3
    functionLinenumber: 1512
    functionLinenumberEnd: 1645
    functionName: GF_UPnP::LoadJS
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    - strcpy
    - gf_list_count
    - GF_JS_InitClass
    - gf_fopen
    - gf_opts_get_key
    - fread
    - strchr
    - gf_js_remove_root
    - gf_sys_clock
    - JS_DefineObject
    - GPAC_DeviceItem*::DetachJS
    - gf_list_get
    - gf_fseek
    - strncmp
    - SMJS_FUNCTION_SPEC
    - gf_ftell
    - JS_EvaluateScript
    - GF_LOG
    - JS_SETUP_CLASS
    - OBJECT_TO_JSVAL
    - gf_list_del_item
    - SMJS_PROPERTY_SPEC
    - upnp_create_generic_device
    - SMJS_SET_PRIVATE
    - gf_malloc
    - gf_list_del
    - gf_fclose
    - gf_opts_get_key_name
    - gf_opts_get_key_count
    - JS_DefineProperty
    - GPAC_GenericDevice*::DetachJS
    - gf_list_rem
    linkageType: ''
    returnType: Bool
    signature: Bool GF_UPnP::LoadJS(GF_TermExtJS *param)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1656,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1660,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1661,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1663,1
    - Dst: GF_UPnP*::Load
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1664,1
    - Dst: GF_UPnP*::Unload
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1670,1
    - Dst: gf_sys_clock
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1677,1
    - Dst: GF_UPnP*::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1681,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1683,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1685,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1686,1
    - Dst: DOUBLE_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1688,1
    - Dst: JS_NewDouble
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1688,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1691,1
    - Dst: GF_UPnP*::LockJavascript
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1694,1
    - Dst: GF_UPnP*::LoadJS
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1703,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 3
    argNames:
    - termext
    - action
    - param
    argTypes:
    - GF_TermExt*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1707
      start: 1649
    functionDepth: 1
    functionLinenumber: 1649
    functionLinenumberEnd: 1707
    functionName: upnp_process
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 0
    functionsReached:
    - GF_UPnP*::LoadJS
    - gf_list_get
    - JS_NewDouble
    - gf_opts_set_key
    - GF_UPnP*::Load
    - DOUBLE_TO_JSVAL
    - GF_LOG
    - GF_UPnP*::Unload
    - GF_UPnP*::LockJavascript
    - gf_list_count
    - strcmp
    - gf_opts_get_key
    - JSVAL_IS_NULL
    - JS_CallFunctionValue
    - gf_sys_clock
    linkageType: ''
    returnType: Bool
    signature: Bool upnp_process(GF_TermExt *termext, u32 action, void *param)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1714,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1715,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1716,1
    - Dst: GF_UPnP::GF_UPnP
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1719,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1730
      start: 1710
    functionDepth: 1
    functionLinenumber: 1710
    functionLinenumberEnd: 1730
    functionName: upnp_new
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 1
    functionsReached:
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - GF_UPnP::GF_UPnP
    - gf_malloc
    linkageType: ''
    returnType: GF_TermExt
    signature: GF_TermExt *upnp_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp:1738,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1739
      start: 1733
    functionDepth: 0
    functionLinenumber: 1733
    functionLinenumberEnd: 1739
    functionName: upnp_delete
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/platinum/GPACPlatinum.cpp
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void upnp_delete(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 56
    functionName: OF
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OF(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - filefunc
    - ','
    - filestream
    - ','
    - buf
    - ','
    - size
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 96
    functionName: ZREAD
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZREAD(filefunc,filestream,buf,size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - filefunc
    - ','
    - filestream
    - ','
    - buf
    - ','
    - size
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 97
    functionName: ZWRITE
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZWRITE(filefunc,filestream,buf,size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - filefunc
    - ','
    - filestream
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 98
    functionName: ZTELL
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZTELL(filefunc,filestream)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - filefunc
    - ','
    - filestream
    - ','
    - pos
    - ','
    - mode
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 99
    functionName: ZSEEK
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZSEEK(filefunc,filestream,pos,mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - filefunc
    - ','
    - filestream
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 100
    functionName: ZCLOSE
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZCLOSE(filefunc,filestream)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - filefunc
    - ','
    - filestream
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 101
    functionName: ZERROR
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZERROR(filefunc,filestream)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - size
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 124
    functionName: ALLOC
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.h
    functionUses: 59
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ALLOC(size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 127
    functionName: TRYFREE
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRYFREE(p)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:50,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:53,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:55,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:56,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:56,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:58,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:58,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:58,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:59,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 61
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - SMJS_FREE
    - JSVAL_IS_STRING
    - BOOLEAN_TO_JSVAL
    - strcmp
    - SMJS_GET_PRIVATE
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(widget_has_feature)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:68,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:69,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:71,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:73,1
    - Dst: gf_term_send_event
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:74,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:75,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 78
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c
    functionUses: 0
    functionsReached:
    - SMJS_FREE
    - JSVAL_IS_STRING
    - memset
    - SMJS_GET_PRIVATE
    - SMJS_CHARS
    - gf_term_send_event
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(widget_open_url)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:84,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:87,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:87,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:89,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:90,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 93
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c
    functionUses: 0
    functionsReached:
    - JS_LookupProperty
    - JSVAL_IS_OBJECT
    - OBJECT_TO_JSVAL
    - JS_CallFunctionValue
    - SMJS_GET_PRIVATE
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(widget_get_attention)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:100,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:103,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:103,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:106,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:107,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:111,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 114
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c
    functionUses: 0
    functionsReached:
    - JS_LookupProperty
    - JSVAL_IS_OBJECT
    - OBJECT_TO_JSVAL
    - JS_CallFunctionValue
    - SMJS_GET_PRIVATE
    - gf_malloc
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(widget_show_notification)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:124,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:125,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:127,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:127,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:128,1
    - Dst: JS_GetArrayLength
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:129,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:130,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:131,1
    - Dst: JS_GetElement
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:133,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:135,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:136,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 139
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_LookupProperty
    - JSVAL_IS_OBJECT
    - JS_GetArrayLength
    - JSVAL_TO_OBJECT
    - OBJECT_TO_JSVAL
    - JS_CallFunctionValue
    - SMJS_GET_PRIVATE
    - gf_malloc
    - JS_GetElement
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(widget_call_message_reply_callback)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:147,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:151,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:153,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:156,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:157,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:159,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:160,1
    - Dst: JS_NewObject
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:161,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:162,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:163,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:163,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:163,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:164,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:164,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:165,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:167,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:167,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:168,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:170,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:170,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:173,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 175
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - gf_list_get
    - SMJS_FREE
    - JSVAL_IS_STRING
    - JSVAL_IS_OBJECT
    - JS_DefineProperty
    - JS_NewStringCopyZ
    - gf_list_count
    - STRING_TO_JSVAL
    - JS_DefineFunction
    - strcmp
    - OBJECT_TO_JSVAL
    - JS_NewObject
    - JSVAL_IS_NULL
    - SMJS_GET_PRIVATE
    - SMJS_SET_PRIVATE
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(widget_message_handler_factory)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:182,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:185,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:187,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:188,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:189,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:189,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:193,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:194,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:195,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 200
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - JS_LookupProperty
    - JSVAL_IS_OBJECT
    - JSVAL_TO_OBJECT
    - JSVAL_IS_NULL
    - JS_CallFunctionValue
    - SMJS_GET_PRIVATE
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(widget_invoke_message)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:208,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:211,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:213,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:214,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:215,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:215,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:219,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:220,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:221,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 225
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - JS_LookupProperty
    - JSVAL_IS_OBJECT
    - JSVAL_TO_OBJECT
    - JSVAL_IS_NULL
    - JS_CallFunctionValue
    - SMJS_GET_PRIVATE
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(widget_invoke_message_reply)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObject
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:230,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:231,1
    - Dst: gf_js_add_root
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:232,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:233,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:233,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:233,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:234,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:234,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:234,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:235,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:236,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:237,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - c
    - ifce
    argTypes:
    - JSContext*
    - GF_WidgetInterfaceInstance*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 227
    functionDepth: 1
    functionLinenumber: 227
    functionLinenumberEnd: 239
    functionName: widget_interface_js_bind
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c
    functionUses: 0
    functionsReached:
    - JS_DefineProperty
    - gf_js_add_root
    - STRING_TO_JSVAL
    - JS_NewStringCopyZ
    - JS_DefineFunction
    - JS_NewObject
    - SMJS_SET_PRIVATE
    linkageType: ''
    returnType: void
    signature: void widget_interface_js_bind(JSContext *c, GF_WidgetInterfaceInstance
      *ifce)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:250,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:253,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:254,1
    - Dst: JS_NewArrayObject
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:256,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:258,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:260,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:261,1
    - Dst: widget_interface_js_bind
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:263,1
    - Dst: JS_GetArrayLength
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:265,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:266,1
    - Dst: JS_SetElement
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:267,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:269,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:269,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:270,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 241
    functionDepth: 2
    functionLinenumber: 241
    functionLinenumberEnd: 272
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - gf_list_get
    - SMJS_FREE
    - JSVAL_IS_STRING
    - widget_interface_js_bind
    - JS_GetArrayLength
    - JS_SetElement
    - gf_list_count
    - strcmp
    - JS_NewArrayObject
    - OBJECT_TO_JSVAL
    - SMJS_GET_PRIVATE
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(widget_get_interfaces)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:280,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:283,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:284,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:286,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:288,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:289,1
    - Dst: wm_deactivate_component
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:292,1
    - Dst: wm_activate_component
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:294,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:298,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 1
    argNames:
    - is_deactivate
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 274
    functionDepth: 1
    functionLinenumber: 274
    functionLinenumberEnd: 300
    functionName: SMJS_FUNCTION_EXT
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - wm_deactivate_component
    - SMJS_FREE
    - JSVAL_IS_STRING
    - wm_activate_component
    - gf_list_count
    - strcmp
    - SMJS_GET_PRIVATE
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION_EXT(widget_activate_component, Bool is_deactivate)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: widget_activate_component
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:304,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 302
    functionDepth: 0
    functionLinenumber: 302
    functionLinenumberEnd: 305
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c
    functionUses: 0
    functionsReached:
    - widget_activate_component
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(widget_activate_widget)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: widget_activate_component
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:309,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 307
    functionDepth: 0
    functionLinenumber: 307
    functionLinenumberEnd: 310
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c
    functionUses: 0
    functionsReached:
    - widget_activate_component
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(widget_deactivate_widget)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:320,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:322,1
    - Dst: widget_interface_js_bind
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:324,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:325,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:326,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - ifce
    - unbind
    argTypes:
    - GF_WidgetInterfaceInstance*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 312
    functionDepth: 2
    functionLinenumber: 312
    functionLinenumberEnd: 328
    functionName: widget_on_interface_bind
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c
    functionUses: 0
    functionsReached:
    - JS_LookupProperty
    - JSVAL_IS_OBJECT
    - widget_interface_js_bind
    - OBJECT_TO_JSVAL
    - JS_CallFunctionValue
    linkageType: ''
    returnType: void
    signature: void widget_on_interface_bind(GF_WidgetInterfaceInstance *ifce, Bool
      unbind)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:402,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:412,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:414,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:416,1
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:417,1
    - Dst: SMJS_PROPERTY_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:425,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:429,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:430,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:431,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:432,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:434,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:435,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:436,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:437,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:440,1
    - Dst: JS_DefineObject
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:443,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c:445,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 5
    argNames:
    - wm
    - scene
    - c
    - global
    - unload
    argTypes:
    - GF_WidgetManager*
    - GF_SceneGraph*
    - JSContext*
    - JSObject*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 395
    functionDepth: 1
    functionLinenumber: 395
    functionLinenumberEnd: 450
    functionName: widget_load
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widget.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_js_remove_root
    - gf_list_count
    - GF_JS_InitClass
    - SMJS_PROPERTY_SPEC
    - gf_list_enum
    - SMJS_SET_PRIVATE
    - JS_DefineObject
    - SMJS_FUNCTION_SPEC
    linkageType: ''
    returnType: void
    signature: void widget_load(GF_WidgetManager *wm, GF_SceneGraph *scene, JSContext
      *c, JSObject *global, Bool unload)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 16
    argCount: 3
    argNames:
    - p1
    - p2
    - len
    argTypes:
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 79
    functionName: is_same_path
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool is_same_path(const char *p1, const char *p2, u32 len)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: unzOpen2
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:87,1
    - Dst: unzGetGlobalInfo
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:90,1
    - Dst: unzGetCurrentFileInfo
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:98,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:100,1
    - Dst: unzGoToNextFile
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:102,1
    - Dst: unzOpenCurrentFile3
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:106,1
    - Dst: gf_fopen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:108,1
    - Dst: unzReadCurrentFile
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:111,1
    - Dst: gf_fwrite
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:114,1
    - Dst: gf_fclose
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:119,1
    - Dst: unzClose
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:124,1
    - Dst: gf_isom_open
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:128,1
    - Dst: gf_isom_get_meta_item_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:131,1
    - Dst: gf_isom_get_meta_item_info
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:138,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:139,1
    - Dst: gf_isom_extract_meta_item
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:141,1
    - Dst: gf_isom_close
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:145,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 45
    argCount: 2
    argNames:
    - wpack
    - res
    argTypes:
    - GF_WidgetPackage*
    - GF_WidgetPackageResource*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 149
    functionName: widget_package_extract_file
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - unzOpen2
    - unzGetGlobalInfo
    - unzOpenCurrentFile3
    - unzGoToNextFile
    - gf_isom_open
    - gf_fwrite
    - gf_isom_extract_meta_item
    - unzGetCurrentFileInfo
    - strcmp
    - gf_fopen
    - unzReadCurrentFile
    - unzClose
    - gf_isom_get_meta_item_count
    - gf_isom_get_meta_item_info
    - gf_isom_close
    linkageType: ''
    returnType: void
    signature: void widget_package_extract_file(GF_WidgetPackage *wpack, GF_WidgetPackageResource
      *res)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:154,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:156,1
    - Dst: is_same_path
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:157,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:158,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:159,1
    - Dst: widget_package_extract_file
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:160,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - wpack
    - res_path
    - relocated_path
    - localized_rel_path
    argTypes:
    - GF_WidgetPackage*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 151
    functionDepth: 2
    functionLinenumber: 151
    functionLinenumberEnd: 165
    functionName: package_find_res
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - strcpy
    - widget_package_extract_file
    - gf_list_count
    - is_same_path
    linkageType: ''
    returnType: Bool
    signature: Bool package_find_res(GF_WidgetPackage *wpack, char *res_path, char
      *relocated_path, char *localized_rel_path)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:174,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:176,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:177,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:177,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:180,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:188,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:190,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:190,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:197,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:200,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:202,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:212,1
    - Dst: strncpy
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:214,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:214,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:217,1
    - Dst: package_find_res
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:218,1
    - Dst: strrchr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:223,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:226,1
    - Dst: package_find_res
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:227,1
    - Dst: package_find_res
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:233,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:236,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:237,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 50
    argCount: 5
    argNames:
    - __self
    - parent_uri
    - rel_path
    - relocated_path
    - localized_rel_path
    argTypes:
    - void*
    - char*
    - char*
    - char*
    - char*
    assertStmts:
    - condition: (parent_uri)
      pos:
        line_end: 173
        line_start: 173
        source_file: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    constantsTouched: []
    func_position:
      end: 239
      start: 168
    functionDepth: 3
    functionLinenumber: 168
    functionLinenumberEnd: 239
    functionName: widget_package_relocate_uri
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - package_find_res
    - strrchr
    - strcpy
    - assert
    - sprintf
    - strstr
    - strncpy
    - strcmp
    - gf_opts_get_key
    - strchr
    - strlen
    linkageType: ''
    returnType: Bool
    signature: Bool widget_package_relocate_uri(void *__self, const char *parent_uri,
      const char *rel_path, char *relocated_path, char *localized_rel_path)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:245,1
    - Dst: gf_isom_open
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:254,1
    - Dst: gf_isom_get_meta_type
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:257,1
    - Dst: GF_4CC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:258,1
    - Dst: gf_isom_has_meta_xml
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:258,1
    - Dst: gf_isom_close
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:259,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:263,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:268,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:269,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:272,1
    - Dst: gf_crc_32
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:273,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:273,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:274,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:275,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:278,1
    - Dst: strcat
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:279,1
    - Dst: gf_isom_extract_meta_xml
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:280,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:281,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:282,1
    - Dst: gf_isom_close
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:283,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:287,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:289,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:291,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:292,1
    - Dst: gf_isom_close
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:293,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:296,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:297,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:299,1
    - Dst: gf_isom_get_meta_item_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:302,1
    - Dst: gf_isom_get_meta_item_info
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:310,1
    - Dst: strrchr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:312,1
    - Dst: strrchr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:313,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:316,1
    - Dst: gf_crc_32
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:316,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:316,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:319,1
    - Dst: strcat
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:320,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:322,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:324,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:327,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:328,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:330,1
    - Dst: gf_isom_close
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:332,1
    - Dst: gf_mx_p
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:336,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:337,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:338,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 70
    argCount: 2
    argNames:
    - wm
    - path
    argTypes:
    - GF_WidgetManager*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 341
    functionName: widget_isom_new
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - strcpy
    - gf_opts_get_key
    - gf_isom_get_meta_item_count
    - strcat
    - gf_list_new
    - gf_strdup
    - strrchr
    - gf_isom_get_meta_type
    - sprintf
    - gf_list_add
    - gf_isom_extract_meta_xml
    - gf_isom_get_meta_item_info
    - gf_crc_32
    - gf_isom_close
    - gf_mx_p
    - GF_LOG
    - gf_mx_v
    - strlen
    - gf_list_del
    - gf_isom_has_meta_xml
    - gf_isom_open
    - GF_4CC
    linkageType: ''
    returnType: GF_WidgetPackage
    signature: GF_WidgetPackage *widget_isom_new(GF_WidgetManager *wm, const char
      *path)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: unzOpen2
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:349,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:352,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:358,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:359,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:360,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:363,1
    - Dst: gf_crc_32
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:364,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:364,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:365,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:366,1
    - Dst: unzGetGlobalInfo
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:368,1
    - Dst: unzGetCurrentFileInfo
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:375,1
    - Dst: strrchr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:377,1
    - Dst: strrchr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:378,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:381,1
    - Dst: gf_crc_32
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:381,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:381,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:384,1
    - Dst: strcat
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:385,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:389,1
    - Dst: unzOpenCurrentFile3
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:393,1
    - Dst: gf_fopen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:395,1
    - Dst: unzReadCurrentFile
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:399,1
    - Dst: gf_fwrite
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:403,1
    - Dst: gf_fclose
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:408,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:410,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:412,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:416,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:417,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:419,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:422,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:424,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:427,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:428,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:430,1
    - Dst: unzGoToNextFile
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:434,1
    - Dst: unzClose
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:436,1
    - Dst: gf_mx_p
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:439,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:440,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:441,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 77
    argCount: 2
    argNames:
    - wm
    - path
    argTypes:
    - GF_WidgetManager*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 343
    functionDepth: 1
    functionLinenumber: 343
    functionLinenumberEnd: 443
    functionName: widget_zip_new
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - unzOpen2
    - unzOpenCurrentFile3
    - unzGoToNextFile
    - GF_SAFEALLOC
    - strcpy
    - gf_fwrite
    - gf_fopen
    - gf_opts_get_key
    - unzReadCurrentFile
    - unzClose
    - strcat
    - gf_list_new
    - gf_strdup
    - unzGetGlobalInfo
    - strrchr
    - sprintf
    - unzGetCurrentFileInfo
    - gf_list_add
    - gf_crc_32
    - gf_mx_p
    - GF_LOG
    - gf_mx_v
    - strlen
    - gf_fclose
    - strcmp
    linkageType: ''
    returnType: GF_WidgetPackage
    signature: GF_WidgetPackage *widget_zip_new(GF_WidgetManager *wm, const char *path)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_unzip_probe
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:447,1
    - Dst: widget_zip_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:448,1
    - Dst: widget_isom_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:453,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - wm
    - path
    argTypes:
    - GF_WidgetManager*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 445
    functionDepth: 2
    functionLinenumber: 445
    functionLinenumberEnd: 457
    functionName: widget_package_new
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_unzip_probe
    - widget_zip_new
    - widget_isom_new
    linkageType: ''
    returnType: GF_WidgetPackage
    signature: GF_WidgetPackage *widget_package_new(GF_WidgetManager *wm, const char
      *path)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: widget_isom_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:453,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 454
      start: 452
    functionDepth: 2
    functionLinenumber: 452
    functionLinenumberEnd: 454
    functionName: if
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - widget_isom_new
    linkageType: ''
    returnType: else
    signature: else if (gf_isom_probe_file(path))
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:461,1
    - Dst: gf_list_del_item
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:462,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:463,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:465,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:466,1
    - Dst: gf_list_rem
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:467,1
    - Dst: gf_delete_file
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:468,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:469,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:470,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:471,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:473,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:474,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:475,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:476,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - wm
    - wpackage
    argTypes:
    - GF_WidgetManager*
    - GF_WidgetPackage*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 459
    functionDepth: 1
    functionLinenumber: 459
    functionLinenumberEnd: 477
    functionName: widget_package_del
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_list_get
    - gf_list_count
    - gf_delete_file
    - gf_mx_v
    - gf_list_del_item
    - gf_dm_sess_del
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void widget_package_del(GF_WidgetManager *wm, GF_WidgetPackage *wpackage)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:484,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:485,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:486,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:487,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:488,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - mp
    argTypes:
    - GF_WidgetPin*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 481
    functionDepth: 0
    functionLinenumber: 481
    functionLinenumberEnd: 489
    functionName: wm_delete_message_param
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void wm_delete_message_param(GF_WidgetPin *mp)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:495,1
    - Dst: gf_list_last
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:496,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:497,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:499,1
    - Dst: gf_list_last
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:500,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:501,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:503,1
    - Dst: gf_list_last
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:504,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:505,1
    - Dst: wm_delete_message_param
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:506,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:508,1
    - Dst: wm_delete_message_param
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:510,1
    - Dst: wm_delete_message_param
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:511,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:512,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:513,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:515,1
    - Dst: wm_delete_message_param
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:516,1
    - Dst: wm_delete_message_param
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:517,1
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:518,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:520,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:521,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:522,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:524,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:526,1
    - Dst: gf_list_last
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:527,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:528,1
    - Dst: wm_delete_message_param
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:530,1
    - Dst: wm_delete_message_param
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:531,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:533,1
    - Dst: gf_list_last
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:534,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:535,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:536,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:538,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:539,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:540,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:541,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:543,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:545,1
    - Dst: gf_list_last
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:546,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:547,1
    - Dst: wm_delete_message_param
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:549,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:550,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:551,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:552,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:554,1
    - Dst: wm_delete_message_param
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:556,1
    - Dst: wm_delete_message_param
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:557,1
    - Dst: wm_delete_message_param
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:558,1
    - Dst: wm_delete_message_param
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:559,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:561,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:562,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:563,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:564,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:565,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 63
    argCount: 1
    argNames:
    - content
    argTypes:
    - GF_WidgetContent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 491
    functionDepth: 1
    functionLinenumber: 491
    functionLinenumberEnd: 566
    functionName: wm_delete_widget_content
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - wm_delete_message_param
    - gf_js_remove_root
    - gf_list_last
    - gf_list_rem_last
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void wm_delete_widget_content(GF_WidgetContent *content)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:570,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:572,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:573,1
    - Dst: wm_delete_widget_content
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:574,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:575,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:576,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:577,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:578,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:579,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:580,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:581,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:582,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:583,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:584,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:585,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:586,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:587,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:590,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:591,1
    - Dst: gf_list_rem
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:592,1
    - Dst: wm_delete_widget_content
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:593,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:595,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:597,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:598,1
    - Dst: gf_list_rem
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:599,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:600,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:601,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:602,1
    - Dst: gf_list_rem
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:603,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:604,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:605,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:606,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:608,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:610,1
    - Dst: widget_package_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:612,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:613,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 56
    argCount: 2
    argNames:
    - wm
    - wid
    argTypes:
    - GF_WidgetManager*
    - GF_Widget*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 614
      start: 568
    functionDepth: 2
    functionLinenumber: 568
    functionLinenumberEnd: 614
    functionName: wm_delete_widget
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - wm_delete_widget_content
    - gf_list_count
    - widget_package_del
    - gf_list_del_item
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void wm_delete_widget(GF_WidgetManager *wm, GF_Widget *wid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:618,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:620,1
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:621,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:623,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - wm
    - bifce
    argTypes:
    - GF_WidgetManager*
    - GF_WidgetInterfaceInstance*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 616
    functionDepth: 0
    functionLinenumber: 616
    functionLinenumberEnd: 624
    functionName: wm_delete_interface_instance
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_js_remove_root
    - SMJS_SET_PRIVATE
    linkageType: ''
    returnType: void
    signature: void wm_delete_interface_instance(GF_WidgetManager *wm, GF_WidgetInterfaceInstance
      *bifce)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:629,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:630,1
    - Dst: gf_list_rem
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:631,1
    - Dst: wm_delete_widget_instance
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:632,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:633,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:635,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:637,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:638,1
    - Dst: gf_list_rem
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:639,1
    - Dst: wm_delete_interface_instance
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:640,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:642,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:644,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:647,1
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:648,1
    - Dst: gf_list_del_item
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:650,1
    - Dst: wm_delete_widget
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:652,1
    - Dst: gf_cfg_del_section
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:655,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:656,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:658,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:660,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 2
    argNames:
    - wm
    - widg
    argTypes:
    - GF_WidgetManager*
    - GF_WidgetInstance*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 626
    functionDepth: 3
    functionLinenumber: 626
    functionLinenumberEnd: 661
    functionName: wm_delete_widget_instance
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - wm_delete_widget_instance
    - wm_delete_widget
    - gf_list_count
    - wm_delete_interface_instance
    - gf_list_del_item
    - gf_cfg_del_section
    - gf_list_del
    - gf_js_remove_root
    - gf_cfg_set_key
    - SMJS_SET_PRIVATE
    - gf_xml_dom_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void wm_delete_widget_instance(GF_WidgetManager *wm, GF_WidgetInstance
      *widg)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:671,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:672,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:673,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 5
    argNames:
    - wid
    - pin
    - argc
    - argv
    - rval
    argTypes:
    - GF_WidgetInstance*
    - GF_WidgetPin*
    - uintN
    - jsval*
    - jsval*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 676
      start: 665
    functionDepth: 0
    functionLinenumber: 665
    functionLinenumberEnd: 676
    functionName: wm_widget_call_script
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - JS_LookupProperty
    - JSVAL_IS_OBJECT
    - JS_CallFunctionValue
    linkageType: ''
    returnType: JSBool
    signature: JSBool wm_widget_call_script(GF_WidgetInstance *wid, GF_WidgetPin *pin,
      uintN argc, jsval *argv, jsval *rval)
  - BBCount: 58
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:686,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:691,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:697,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:697,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:701,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:701,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:706,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:706,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:711,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:711,1
    - Dst: wm_widget_call_script
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:720,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:723,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:738,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:739,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:743,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:748,1
    - Dst: gf_dom_set_textContent
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:749,1
    - Dst: gf_node_changed
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:750,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:753,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:754,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:755,1
    - Dst: gf_node_changed
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:756,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:760,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:764,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:766,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:770,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:774,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:778,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:788,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:799,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:800,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:802,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:803,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:806,1
    - Dst: JSVAL_IS_BOOLEAN
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:807,1
    - Dst: JSVAL_TO_BOOLEAN
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:807,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:808,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:808,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:809,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:810,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:811,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:812,1
    - Dst: atof
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:817,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:818,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:818,1
    - Dst: JSVAL_IS_NUMBER
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:819,1
    - Dst: JS_ValueToNumber
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:820,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:822,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:824,1
    - Dst: atof
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:825,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:827,1
    - Dst: FLT2FIX
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:832,1
    - Dst: atof
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:832,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:833,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:833,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:833,1
    - Dst: JSVAL_IS_NUMBER
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:834,1
    - Dst: JS_ValueToNumber
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:835,1
    - Dst: FLT2FIX
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:836,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:837,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:839,1
    - Dst: atof
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:840,1
    - Dst: FLT2FIX
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:841,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:842,1
    - Dst: atof
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:847,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:848,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:848,1
    - Dst: JSVAL_IS_NUMBER
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:849,1
    - Dst: JS_ValueToNumber
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:850,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:852,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:854,1
    - Dst: atof
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:855,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:857,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:865,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:866,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:869,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:870,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:872,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:873,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:875,1
    - Dst: gf_sg_script_event_in
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:886,1
    - Dst: gf_node_changed
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:888,1
    - Dst: gf_node_event_out
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:892,1
    CyclomaticComplexity: 70
    EdgeCount: 70
    ICount: 199
    argCount: 9
    argNames:
    - c
    - obj
    - argc
    - argv
    - rval
    - type
    - wid
    - param
    - value
    argTypes:
    - JSContext*
    - JSObject*
    - uintN
    - jsval*
    - jsval*
    - u32
    - GF_WidgetInstance*
    - GF_WidgetPin*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 900
      start: 678
    functionDepth: 1
    functionLinenumber: 678
    functionLinenumberEnd: 900
    functionName: wm_widget_set_scene_input_value
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_svg_parse_attribute
    - JSVAL_IS_STRING
    - memset
    - gf_dom_set_textContent
    - gf_node_get_attribute_by_name
    - JSVAL_TO_BOOLEAN
    - gf_sg_vrml_mf_alloc
    - gf_strdup
    - gf_sg_find_node_by_name
    - atof
    - JS_ValueToNumber
    - gf_sg_script_event_in
    - JSVAL_TO_OBJECT
    - JSVAL_IS_INT
    - JSVAL_IS_NUMBER
    - wm_widget_call_script
    - gf_sg_vrml_mf_reset
    - FLT2FIX
    - JSVAL_IS_OBJECT
    - gf_dom_event_fire
    - JSVAL_TO_INT
    - gf_node_changed
    - INT2FIX
    - SMJS_FREE
    - JSVAL_IS_BOOLEAN
    - gf_node_event_out
    - gf_node_dirty_set
    - gf_dom_event_type_by_name
    - gf_node_get_field_by_name
    - strcmp
    - SMJS_GET_PRIVATE
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool wm_widget_set_scene_input_value(JSContext *c, JSObject *obj,
      uintN argc, jsval *argv, jsval *rval, u32 type, GF_WidgetInstance *wid, GF_WidgetPin
      *param, const char *value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 909
      start: 903
    functionDepth: 0
    functionLinenumber: 903
    functionLinenumberEnd: 909
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(wm_widget_set_input)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 916
      start: 910
    functionDepth: 0
    functionLinenumber: 910
    functionLinenumberEnd: 916
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(wm_widget_call_input_action)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:925,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:929,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:930,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:930,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:934,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:936,1
    - Dst: JS_GetArrayLength
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:938,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:939,1
    - Dst: JS_GetElement
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:941,1
    - Dst: wm_widget_call_script
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:944,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:946,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 949
      start: 919
    functionDepth: 1
    functionLinenumber: 919
    functionLinenumberEnd: 949
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JSVAL_IS_OBJECT
    - JS_GetArrayLength
    - JSVAL_TO_OBJECT
    - wm_widget_call_script
    - SMJS_GET_PRIVATE
    - gf_malloc
    - JS_GetElement
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(wm_widget_call_input_script)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:957,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 961
      start: 952
    functionDepth: 0
    functionLinenumber: 952
    functionLinenumberEnd: 961
    functionName: wm_handler_destroy
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_js_remove_root
    linkageType: ''
    returnType: void
    signature: void wm_handler_destroy(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:976,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:985,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:990,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:994,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1004,1
    - Dst: gf_node_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1009,1
    - Dst: gf_node_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1011,1
    - Dst: gf_node_register
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1013,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1014,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1018,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1021,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1023,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1026,1
    - Dst: gf_node_dom_listener_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1030,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 42
    argCount: 2
    argNames:
    - wid
    - param
    argTypes:
    - GF_WidgetInstance*
    - GF_WidgetPin*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1034
      start: 963
    functionDepth: 1
    functionLinenumber: 963
    functionLinenumberEnd: 1034
    functionName: wm_create_scene_listener
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_node_list_add_child
    - gf_sg_find_node_by_name
    - gf_node_get_attribute_by_tag
    - gf_dom_event_type_by_name
    - gf_node_get_field_by_name
    - gf_node_dom_listener_add
    - strcmp
    - gf_node_new
    - gf_node_get_attribute_by_name
    - gf_node_register
    linkageType: ''
    returnType: SVG_handlerElement
    signature: SVG_handlerElement *wm_create_scene_listener(GF_WidgetInstance *wid,
      GF_WidgetPin *param)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1047,1
    - Dst: wm_deactivate_component
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1052,1
    - Dst: wm_activate_component
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1054,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 4
    argNames:
    - hdl
    - evt
    - observer
    - unload
    argTypes:
    - GF_Node*
    - GF_DOM_Event*
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1056
      start: 1036
    functionDepth: 1
    functionLinenumber: 1036
    functionLinenumberEnd: 1056
    functionName: wm_component_activation_event
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - SMJS_GET_PRIVATE
    - wm_deactivate_component
    - wm_activate_component
    linkageType: ''
    returnType: void
    signature: void wm_component_activation_event(GF_Node *hdl, GF_DOM_Event *evt,
      GF_Node *observer, Bool unload)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: wm_component_activation_event
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1059,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - hdl
    - evt
    - observer
    argTypes:
    - GF_Node*
    - GF_DOM_Event*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1060
      start: 1057
    functionDepth: 2
    functionLinenumber: 1057
    functionLinenumberEnd: 1060
    functionName: wm_component_activate_event
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - wm_component_activation_event
    linkageType: ''
    returnType: void
    signature: void wm_component_activate_event(GF_Node *hdl, GF_DOM_Event *evt, GF_Node
      *observer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: wm_component_activation_event
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1063,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - hdl
    - evt
    - observer
    argTypes:
    - GF_Node*
    - GF_DOM_Event*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1064
      start: 1061
    functionDepth: 2
    functionLinenumber: 1061
    functionLinenumberEnd: 1064
    functionName: wm_component_deactivate_event
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - wm_component_activation_event
    linkageType: ''
    returnType: void
    signature: void wm_component_deactivate_event(GF_Node *hdl, GF_DOM_Event *evt,
      GF_Node *observer)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_dom_flatten_textContent
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1077,1
    - Dst: gf_node_dump_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1080,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1083,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1084,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - hdl
    - evt
    - observer
    argTypes:
    - GF_Node*
    - GF_DOM_Event*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1085
      start: 1066
    functionDepth: 1
    functionLinenumber: 1066
    functionLinenumberEnd: 1085
    functionName: wm_widget_set_pref_event
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_dump_attribute
    - gf_cfg_set_key
    - gf_dom_flatten_textContent
    linkageType: ''
    returnType: void
    signature: void wm_widget_set_pref_event(GF_Node *hdl, GF_DOM_Event *evt, GF_Node
      *observer)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1092,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1099,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1101,1
    - Dst: wm_create_scene_listener
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1104,1
    - Dst: wm_create_scene_listener
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1113,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1123,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1126,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1129,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1133,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1141,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1144,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1145,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1147,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1149,1
    - Dst: wm_widget_set_scene_input_value
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1159,1
    - Dst: wm_create_scene_listener
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1167,1
    - Dst: wm_widget_set_scene_input_value
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1177,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1181,1
    - Dst: gf_sg_lock_javascript
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1185,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1187,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1188,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1189,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1193,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1194,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1195,1
    - Dst: gf_sg_lock_javascript
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1197,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 79
    argCount: 2
    argNames:
    - c
    - obj
    argTypes:
    - JSContext*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1198
      start: 1087
    functionDepth: 2
    functionLinenumber: 1087
    functionLinenumberEnd: 1198
    functionName: on_widget_activated
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - JS_LookupProperty
    - gf_list_get
    - wm_widget_set_scene_input_value
    - gf_xml_dom_get_root
    - gf_sg_lock_javascript
    - wm_create_scene_listener
    - JSVAL_IS_OBJECT
    - gf_list_count
    - strcmp
    - gf_opts_get_key
    - wm_xml_get_attr
    - JS_CallFunctionValue
    - SMJS_GET_PRIVATE
    - gf_list_enum
    - gf_xml_dom_del
    linkageType: ''
    returnType: void
    signature: void on_widget_activated(JSContext *c, JSObject *obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: on_widget_activated
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1211,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - hdl
    - evt
    - observer
    argTypes:
    - GF_Node*
    - GF_DOM_Event*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1212
      start: 1201
    functionDepth: 3
    functionLinenumber: 1201
    functionLinenumberEnd: 1212
    functionName: wm_widget_load_event
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - on_widget_activated
    linkageType: ''
    returnType: void
    signature: void wm_widget_load_event(GF_Node *hdl, GF_DOM_Event *evt, GF_Node
      *observer)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1227,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1230,1
    - Dst: gf_sg_js_get_node
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1232,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1232,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1236,1
    - Dst: gf_mo_register
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1239,1
    - Dst: gf_mo_get_scenegraph
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1241,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1242,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1244,1
    - Dst: on_widget_activated
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1249,1
    - Dst: gf_dom_listener_build
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1252,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1260
      start: 1215
    functionDepth: 3
    functionLinenumber: 1215
    functionLinenumberEnd: 1260
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mo_register
    - gf_dom_listener_build
    - gf_mo_get_scenegraph
    - JSVAL_IS_OBJECT
    - gf_sg_js_get_node
    - on_widget_activated
    - gf_url_concatenate
    - JSVAL_TO_OBJECT
    - SMJS_GET_PRIVATE
    - gf_sg_get_root_node
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(wm_widget_activate)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1275,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1281,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1282,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1291,1
    - Dst: gf_dom_flatten_textContent
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1292,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1293,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1293,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1294,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1295,1
    - Dst: gf_node_dump_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1299,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1300,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1300,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1301,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1308,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1313,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1313,1
    - Dst: INT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1316,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1319,1
    - Dst: DOUBLE_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1322,1
    - Dst: JS_NewDouble
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1322,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1322,1
    - Dst: DOUBLE_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1325,1
    - Dst: JS_NewDouble
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1325,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1331,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1332,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 55
    argCount: 3
    argNames:
    - hdl
    - event
    - observer
    argTypes:
    - GF_Node*
    - GF_DOM_Event*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1333
      start: 1263
    functionDepth: 1
    functionLinenumber: 1263
    functionLinenumberEnd: 1333
    functionName: wm_handle_dom_event
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_NewDouble
    - DOUBLE_TO_JSVAL
    - gf_sg_find_node_by_name
    - JSVAL_IS_OBJECT
    - gf_node_get_field_by_name
    - gf_dom_flatten_textContent
    - STRING_TO_JSVAL
    - BOOLEAN_TO_JSVAL
    - strcmp
    - JS_CallFunctionValue
    - INT_TO_JSVAL
    - gf_node_get_attribute_by_name
    - JS_NewStringCopyZ
    - FIX2FLT
    - gf_node_dump_attribute
    linkageType: ''
    returnType: void
    signature: void wm_handle_dom_event(GF_Node *hdl, GF_DOM_Event *event, GF_Node
      *observer)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1342,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1343,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1345,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1345,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1350,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1350,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1350,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1356,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1361,1
    - Dst: gf_dom_flatten_textContent
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1362,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1363,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1363,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1363,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1364,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1365,1
    - Dst: gf_node_dump_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1366,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1367,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1367,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1367,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1368,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1375,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1379,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1379,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1379,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1382,1
    - Dst: INT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1382,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1385,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1385,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1388,1
    - Dst: DOUBLE_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1388,1
    - Dst: JS_NewDouble
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1388,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1388,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1391,1
    - Dst: DOUBLE_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1391,1
    - Dst: JS_NewDouble
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1391,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 51
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1397
      start: 1335
    functionDepth: 1
    functionLinenumber: 1335
    functionLinenumberEnd: 1397
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - gf_free
    - JS_NewDouble
    - gf_node_get_attribute_by_name
    - gf_sg_find_node_by_name
    - DOUBLE_TO_JSVAL
    - JSVAL_IS_OBJECT
    - gf_node_get_field_by_name
    - gf_dom_flatten_textContent
    - STRING_TO_JSVAL
    - BOOLEAN_TO_JSVAL
    - JSVAL_TO_OBJECT
    - strcmp
    - INT_TO_JSVAL
    - SMJS_GET_PRIVATE
    - JS_NewStringCopyZ
    - FIX2FLT
    - gf_node_dump_attribute
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(wm_widget_get_param_value)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1404,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1407,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1408,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1409,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1410,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1411,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1412,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1414,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1415,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1418,1
    - Dst: JS_NewObject
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1422,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1423,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1424,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1424,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1424,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1425,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1425,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1428,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1428,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1428,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1431,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1431,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1431,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1435,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1435,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1435,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1438,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1438,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1441
      start: 1399
    functionDepth: 1
    functionLinenumber: 1399
    functionLinenumberEnd: 1441
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - gf_list_get
    - SMJS_FREE
    - JSVAL_IS_STRING
    - JS_DefineProperty
    - JS_NewStringCopyZ
    - gf_list_count
    - STRING_TO_JSVAL
    - BOOLEAN_TO_JSVAL
    - JSVAL_IS_INT
    - JSVAL_TO_INT
    - strcmp
    - JS_NewObject
    - OBJECT_TO_JSVAL
    - SMJS_GET_PRIVATE
    - SMJS_SET_PRIVATE
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(wm_widget_get_message_param)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1448,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1452,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1454,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1455,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1456,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1457,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1458,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1460,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1461,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1464,1
    - Dst: JS_NewObject
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1467,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1468,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1469,1
    - Dst: INT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1469,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1469,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1470,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1470,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1470,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1471,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1471,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1472,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1472,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1473,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1473,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1474,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1474,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1475,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1477,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1477,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1480
      start: 1443
    functionDepth: 1
    functionLinenumber: 1443
    functionLinenumberEnd: 1480
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - JSVAL_IS_STRING
    - gf_list_count
    - gf_list_get
    - BOOLEAN_TO_JSVAL
    - JS_DefineFunction
    - JSVAL_IS_INT
    - JS_NewStringCopyZ
    - SMJS_SET_RVAL
    - STRING_TO_JSVAL
    - JSVAL_TO_INT
    - OBJECT_TO_JSVAL
    - INT_TO_JSVAL
    - SMJS_SET_PRIVATE
    - SMJS_FREE
    - JS_DefineProperty
    - strcmp
    - JS_NewObject
    - SMJS_GET_PRIVATE
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(wm_widget_get_message)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1489,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1490,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1492,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1493,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1495,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1496,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1497,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1497,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1498,1
    - Dst: JSVAL_IS_BOOLEAN
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1503,1
    - Dst: JSVAL_TO_BOOLEAN
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1503,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1504,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1506,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1507,1
    - Dst: wm_activate_component
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1509,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1511,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1511,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1512,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1515,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1520,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1522
      start: 1482
    functionDepth: 1
    functionLinenumber: 1482
    functionLinenumberEnd: 1522
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - gf_list_get
    - SMJS_FREE
    - JSVAL_IS_STRING
    - JSVAL_IS_BOOLEAN
    - wm_activate_component
    - gf_list_count
    - strcmp
    - OBJECT_TO_JSVAL
    - SMJS_GET_PRIVATE
    - SMJS_CHARS
    - JSVAL_TO_BOOLEAN
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(wm_widget_get_component)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1530,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1531,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1533,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1534,1
    - Dst: JS_NewObject
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1538,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1539,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1540,1
    - Dst: INT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1540,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1540,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1541,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1541,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1541,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1542,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1542,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1543,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1543,1
    - Dst: JS_DefineFunction
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1544,1
    - Dst: gf_js_add_root
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1545,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1547,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1547,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1550
      start: 1524
    functionDepth: 1
    functionLinenumber: 1524
    functionLinenumberEnd: 1550
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - gf_list_get
    - gf_js_add_root
    - JS_DefineProperty
    - JS_NewStringCopyZ
    - gf_list_count
    - STRING_TO_JSVAL
    - BOOLEAN_TO_JSVAL
    - JSVAL_IS_INT
    - JSVAL_TO_INT
    - JS_DefineFunction
    - JS_NewObject
    - INT_TO_JSVAL
    - SMJS_GET_PRIVATE
    - OBJECT_TO_JSVAL
    - SMJS_SET_PRIVATE
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(wm_widget_get_interface)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1559,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1561,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1561,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1564,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1565,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1566,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1568,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1568,1
    - Dst: wm_create_scene_listener
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1574,1
    - Dst: gf_js_add_root
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1577,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1582,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1584,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1585,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1585,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1588
      start: 1552
    functionDepth: 2
    functionLinenumber: 1552
    functionLinenumberEnd: 1588
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - JSVAL_IS_OBJECT
    - wm_create_scene_listener
    - gf_js_add_root
    - BOOLEAN_TO_JSVAL
    - JSVAL_TO_OBJECT
    - gf_list_add
    - SMJS_GET_PRIVATE
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(wm_widget_bind_output_trigger)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1598,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1601,1
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1605,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1607,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1607,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1609,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1611,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1619,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1619,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1621,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1621,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1624,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1624,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1629,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1633,1
    - Dst: gf_dom_flatten_textContent
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1634,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1635,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1635,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1638,1
    - Dst: gf_node_dump_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1639,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1641,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1641,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1642,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1649,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1652,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1652,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1656,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1656,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1659,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1659,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1661,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1663,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1664,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1666,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1666,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1666,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1667,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 53
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1670
      start: 1590
    functionDepth: 1
    functionLinenumber: 1590
    functionLinenumberEnd: 1670
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - gf_list_count
    - gf_opts_get_key
    - gf_list_get
    - gf_sg_find_node_by_name
    - gf_bs_get_content
    - JS_NewStringCopyZ
    - SMJS_SET_RVAL
    - gf_dom_flatten_textContent
    - gf_bs_write_data
    - STRING_TO_JSVAL
    - strlen
    - gf_node_dump_attribute
    - gf_node_get_field_by_name
    - gf_bs_del
    - strcmp
    - SMJS_GET_PRIVATE
    - gf_bs_write_u8
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(wm_widget_get_context)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1982,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1987,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1988,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1988,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1995,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1995,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1997,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1998,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:1999,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2001,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2002,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2003,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2007,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2011,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2012,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2013,1
    - Dst: wm_widget_set_scene_input_value
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2016,1
    - Dst: widget_on_interface_bind
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2018,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2022,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2022,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2024,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2026,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2027,1
    - Dst: gf_list_rem
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2028,1
    - Dst: wm_widget_set_scene_input_value
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2030,1
    - Dst: widget_on_interface_bind
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2032,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2036,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2039,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2044,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2046,1
    - Dst: gf_dom_listener_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2055,1
    - Dst: gf_list_rem
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2057,1
    - Dst: wm_delete_interface_instance
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2063,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 79
    argCount: 6
    argNames:
    - c
    - obj
    - argc
    - argv
    - rval
    - is_unbind
    argTypes:
    - JSContext*
    - JSObject*
    - uintN
    - jsval*
    - jsval*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2071
      start: 1977
    functionDepth: 3
    functionLinenumber: 1977
    functionLinenumberEnd: 2071
    functionName: wm_widget_bind_interface_ex
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_strdup
    - SMJS_FREE
    - JSVAL_IS_STRING
    - wm_widget_set_scene_input_value
    - GF_SAFEALLOC
    - JSVAL_IS_OBJECT
    - widget_on_interface_bind
    - gf_dom_listener_del
    - gf_list_count
    - wm_delete_interface_instance
    - JSVAL_TO_OBJECT
    - strcmp
    - gf_list_add
    - SMJS_GET_PRIVATE
    - SMJS_CHARS
    - gf_list_rem
    linkageType: ''
    returnType: JSBool
    signature: JSBool wm_widget_bind_interface_ex(JSContext *c, JSObject *obj, uintN
      argc, jsval *argv, jsval *rval, Bool is_unbind)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2079
      start: 2073
    functionDepth: 0
    functionLinenumber: 2073
    functionLinenumberEnd: 2079
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(wm_widget_bind_interface)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2086
      start: 2080
    functionDepth: 0
    functionLinenumber: 2080
    functionLinenumberEnd: 2086
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(wm_widget_unbind_interface)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2094,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2100,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2102,1
    - Dst: gf_list_rem
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2104,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2105,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2113,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2114,1
    - Dst: wm_deactivate_component
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2115,1
    - Dst: gf_list_rem
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2116,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2123,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2124,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2126,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2127,1
    - Dst: wm_widget_bind_interface_ex
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2131,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2136
      start: 2089
    functionDepth: 4
    functionLinenumber: 2089
    functionLinenumberEnd: 2136
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_LookupProperty
    - gf_list_get
    - wm_deactivate_component
    - JSVAL_IS_OBJECT
    - gf_list_count
    - OBJECT_TO_JSVAL
    - JS_CallFunctionValue
    - SMJS_GET_PRIVATE
    - wm_widget_bind_interface_ex
    - gf_list_rem
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(wm_widget_deactivate)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObject
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2143,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2144,1
    - Dst: gf_js_add_root
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2146,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - wm
    - wid
    argTypes:
    - GF_WidgetManager*
    - GF_WidgetInstance*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2147
      start: 2139
    functionDepth: 1
    functionLinenumber: 2139
    functionLinenumberEnd: 2147
    functionName: wm_widget_jsbind
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_js_add_root
    - SMJS_SET_PRIVATE
    - JS_NewObject
    linkageType: ''
    returnType: void
    signature: void wm_widget_jsbind(GF_WidgetManager *wm, GF_WidgetInstance *wid)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2155,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2162,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2162,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2164,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2165,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 4
    argNames:
    - c
    - wid
    - comp
    - comp_inst
    argTypes:
    - JSContext*
    - GF_WidgetInstance*
    - GF_WidgetComponent*
    - GF_WidgetComponentInstance*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2167
      start: 2149
    functionDepth: 1
    functionLinenumber: 2149
    functionLinenumberEnd: 2167
    functionName: wm_deactivate_component
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 3
    functionsReached:
    - JS_LookupProperty
    - JSVAL_IS_OBJECT
    - OBJECT_TO_JSVAL
    - JS_CallFunctionValue
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void wm_deactivate_component(JSContext *c, GF_WidgetInstance *wid,
      GF_WidgetComponent *comp, GF_WidgetComponentInstance *comp_inst)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_url_concatenate
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2179,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2181,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2183,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2184,1
    - Dst: wm_load_widget
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2188,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2191,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2198,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2204,1
    - Dst: wm_widget_jsbind
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2206,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2208,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2208,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2210,1
    - Dst: JS_CallFunctionValue
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2211,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 37
    argCount: 4
    argNames:
    - c
    - wid
    - comp
    - skip_wm_notification
    argTypes:
    - JSContext*
    - GF_WidgetInstance*
    - GF_WidgetComponent*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2215
      start: 2169
    functionDepth: 2
    functionLinenumber: 2169
    functionLinenumberEnd: 2215
    functionName: wm_activate_component
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 3
    functionsReached:
    - gf_free
    - JS_LookupProperty
    - gf_list_get
    - GF_SAFEALLOC
    - JSVAL_IS_OBJECT
    - gf_url_concatenate
    - gf_list_count
    - wm_widget_jsbind
    - strcmp
    - gf_list_add
    - OBJECT_TO_JSVAL
    - JS_CallFunctionValue
    - wm_load_widget
    linkageType: ''
    returnType: GF_WidgetComponentInstance
    signature: GF_WidgetComponentInstance *wm_activate_component(JSContext *c, GF_WidgetInstance
      *wid, GF_WidgetComponent *comp, Bool skip_wm_notification)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2224,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2225,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2227,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2227,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2230,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2231,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2233,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2233,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2234,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2236,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2237,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2238,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2238,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2243
      start: 2217
    functionDepth: 1
    functionLinenumber: 2217
    functionLinenumberEnd: 2243
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - gf_list_get
    - JSVAL_IS_OBJECT
    - BOOLEAN_TO_JSVAL
    - gf_list_count
    - JSVAL_TO_OBJECT
    - strcmp
    - SMJS_GET_PRIVATE
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(wm_widget_is_interface_bound)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2253,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2254,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2256,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2259,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2259,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2261,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2261,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2262,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2262,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2264,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2268,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2268,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2269,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2273,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2277,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2279,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2280,1
    - Dst: wm_load_widget
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2284,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2286,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2290,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2293,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2296,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2297,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2299,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2300,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2305,1
    - Dst: wm_widget_jsbind
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2311,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2312,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2312,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2314,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2315,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 57
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2317
      start: 2246
    functionDepth: 2
    functionLinenumber: 2246
    functionLinenumberEnd: 2317
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JSVAL_IS_STRING
    - gf_xml_dom_get_root
    - gf_list_count
    - GF_JS_InstanceOf
    - wm_load_widget
    - SMJS_CHARS
    - gf_strdup
    - gf_list_get
    - JSVAL_TO_OBJECT
    - gf_xml_dom_new
    - SMJS_SET_RVAL
    - JSVAL_IS_OBJECT
    - gf_xml_dom_parse_string
    - OBJECT_TO_JSVAL
    - JSVAL_IS_NULL
    - strlen
    - SMJS_FREE
    - gf_url_concatenate
    - wm_widget_jsbind
    - strcmp
    - SMJS_GET_PRIVATE
    - gf_xml_dom_del
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(wm_load)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2324,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2325,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2327,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2327,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2328,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2328,1
    - Dst: JSVAL_IS_BOOLEAN
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2332,1
    - Dst: JSVAL_TO_BOOLEAN
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2332,1
    - Dst: gf_cfg_del_section
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2334,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2335,1
    - Dst: wm_delete_widget_instance
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2337,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2339
      start: 2319
    functionDepth: 4
    functionLinenumber: 2319
    functionLinenumberEnd: 2339
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - JSVAL_IS_BOOLEAN
    - JSVAL_IS_OBJECT
    - wm_delete_widget_instance
    - GF_JS_InstanceOf
    - JSVAL_TO_OBJECT
    - gf_cfg_del_section
    - SMJS_GET_PRIVATE
    - gf_cfg_set_key
    - JSVAL_TO_BOOLEAN
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(wm_unload)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2391,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2392,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2394,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2395,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2396,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2396,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2398
      start: 2385
    functionDepth: 1
    functionLinenumber: 2385
    functionLinenumberEnd: 2398
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - gf_list_get
    - JSVAL_IS_INT
    - JSVAL_TO_INT
    - OBJECT_TO_JSVAL
    - SMJS_GET_PRIVATE
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(wm_get)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2407,1
    - Dst: JSVAL_IS_STRING
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2408,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2410,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2412,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2415,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2416,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2417,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2417,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2418,1
    - Dst: SMJS_FREE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2423,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2425
      start: 2400
    functionDepth: 1
    functionLinenumber: 2400
    functionLinenumberEnd: 2425
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - SMJS_FREE
    - JSVAL_IS_STRING
    - strcmp
    - OBJECT_TO_JSVAL
    - SMJS_GET_PRIVATE
    - gf_list_enum
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(wm_find_interface)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2432,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2435,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2437,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2438,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2439,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 2
    argNames:
    - root
    - name
    argTypes:
    - GF_XMLNode*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2442
      start: 2428
    functionDepth: 1
    functionLinenumber: 2428
    functionLinenumberEnd: 2442
    functionName: wm_xml_get_attr
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    - strchr
    linkageType: ''
    returnType: char
    signature: char *wm_xml_get_attr(GF_XMLNode *root, const char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2451,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2453,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - xml_lang_value
    - user_locale
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2462
      start: 2445
    functionDepth: 0
    functionLinenumber: 2445
    functionLinenumberEnd: 2462
    functionName: wm_check_language
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - strchr
    - strstr
    linkageType: ''
    returnType: Bool
    signature: Bool wm_check_language(const char *xml_lang_value, const char *user_locale)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2472,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2474,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2475,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2475,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2476,1
    - Dst: wm_check_language
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2480,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 18
    argCount: 4
    argNames:
    - root
    - ns_prefix
    - name
    - user_locale
    argTypes:
    - GF_XMLNode*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2486
      start: 2464
    functionDepth: 2
    functionLinenumber: 2464
    functionLinenumberEnd: 2486
    functionName: wm_xml_find
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - wm_check_language
    - gf_list_count
    - strcmp
    - wm_xml_get_attr
    linkageType: ''
    returnType: GF_XMLNode
    signature: GF_XMLNode *wm_xml_find(GF_XMLNode *root, const char *ns_prefix, const
      char *name, const char *user_locale)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2495,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2499,1
    - Dst: strrchr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2502,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2504,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2511,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2512,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2517,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2522,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2523,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2525,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 34
    argCount: 5
    argNames:
    - value
    - type
    - pin_name
    - scriptType
    - default_value
    argTypes:
    - char*
    - u16
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2528
      start: 2488
    functionDepth: 1
    functionLinenumber: 2488
    functionLinenumberEnd: 2528
    functionName: wm_parse_pin
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - strrchr
    - GF_SAFEALLOC
    - strcmp
    linkageType: ''
    returnType: GF_WidgetPin
    signature: GF_WidgetPin *wm_parse_pin(const char *value, u16 type, const char
      *pin_name, const char *scriptType, const char *default_value)
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: wm_xml_find
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2540,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2544,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2549,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2550,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2553,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2554,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2555,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2557,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2559,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2560,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2562,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2563,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2565,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2566,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2568,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2569,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2571,1
    - Dst: wm_parse_pin
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2573,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2575,1
    - Dst: wm_parse_pin
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2577,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2581,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2586,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2586,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2588,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2590,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2591,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2592,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2594,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2596,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2599,1
    - Dst: wm_parse_pin
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2601,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2605,1
    - Dst: wm_parse_pin
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2607,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2612,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2617,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2617,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2620,1
    - Dst: gf_list_del_item
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2623,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2624,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2625,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2626,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2630,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2632,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2635,1
    - Dst: wm_parse_pin
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2637,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2637,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2637,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2641,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2649,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2655,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2656,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2657,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2659,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2660,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2662,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2663,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2665,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2668,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2669,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2671,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2671,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2674,1
    - Dst: wm_parse_pin
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2675,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2676,1
    - Dst: wm_parse_pin
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2677,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2679,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2684,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2686,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2687,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2688,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2690,1
    - Dst: wm_xml_find
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2693,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2698,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2701,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2702,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2706,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2707,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2711,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2713,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2717,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2718,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2720,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2722,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2723,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2725,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2726,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2727,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2728,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2729,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2732,1
    - Dst: wm_parse_pin
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2733,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2736,1
    - Dst: wm_parse_pin
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2737,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2738,1
    - Dst: wm_parse_pin
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2739,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2740,1
    - Dst: wm_parse_pin
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2741,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2742,1
    - Dst: wm_parse_pin
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2743,1
    CyclomaticComplexity: 86
    EdgeCount: 86
    ICount: 190
    argCount: 4
    argNames:
    - content
    - root
    - ns_prefix
    - global_prefs
    argTypes:
    - GF_WidgetContent*
    - GF_XMLNode*
    - char*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2745
      start: 2530
    functionDepth: 3
    functionLinenumber: 2530
    functionLinenumberEnd: 2745
    functionName: wm_parse_mpegu_content_element
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - wm_xml_find
    - gf_free
    - gf_strdup
    - gf_list_new
    - wm_parse_pin
    - GF_SAFEALLOC
    - GF_LOG
    - strcmp
    - wm_xml_get_attr
    - gf_list_add
    - gf_list_del_item
    - gf_list_enum
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void wm_parse_mpegu_content_element(GF_WidgetContent *content, GF_XMLNode
      *root, const char *ns_prefix, GF_List *global_prefs)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2756,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2758,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2759,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 1
    argNames:
    - input
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2784
      start: 2751
    functionDepth: 0
    functionLinenumber: 2751
    functionLinenumberEnd: 2784
    functionName: wm_get_single_attribute
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_strdup
    - strlen
    linkageType: ''
    returnType: char
    signature: char *wm_get_single_attribute(const char *input)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2790,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2790,1
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2791,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - input
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2794
      start: 2788
    functionDepth: 0
    functionLinenumber: 2788
    functionLinenumberEnd: 2794
    functionName: wm_parse_non_neg
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - strchr
    - sscanf
    - strlen
    linkageType: ''
    returnType: u32
    signature: u32 wm_parse_non_neg(const char *input)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2802,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2803,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2805,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2814,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2815,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2817,1
    - Dst: wm_get_text_content
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2818,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2819,1
    - Dst: gf_realloc
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2820,1
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2821,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2824,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 3
    argNames:
    - node
    - inherited_locale
    - user_locale
    argTypes:
    - GF_XMLNode*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2833
      start: 2800
    functionDepth: 2
    functionLinenumber: 2800
    functionLinenumberEnd: 2833
    functionName: wm_get_text_content
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_strdup
    - memcpy
    - gf_list_count
    - wm_xml_get_attr
    - wm_get_text_content
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: char
    signature: char *wm_get_text_content(GF_XMLNode *node, char *inherited_locale,
      const char *user_locale)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: wm_get_text_content
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2838,1
    - Dst: wm_get_single_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2840,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2841,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - node
    - inherited_locale
    - user_locale
    argTypes:
    - GF_XMLNode*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2843
      start: 2835
    functionDepth: 3
    functionLinenumber: 2835
    functionLinenumberEnd: 2843
    functionName: wm_get_normalized_text_content
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_free
    - wm_get_single_attribute
    - wm_get_text_content
    linkageType: ''
    returnType: char
    signature: char *wm_get_normalized_text_content(GF_XMLNode *node, char *inherited_locale,
      const char *user_locale)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - usr_cbk
    - parameter
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2856
      start: 2847
    functionDepth: 0
    functionLinenumber: 2847
    functionLinenumberEnd: 2856
    functionName: wm_relocate_proc
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void wm_relocate_proc(void *usr_cbk, GF_NETIO_Parameter *parameter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_term_relocate_url
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2865,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2868,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2871,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2874,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2876,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2877,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2879,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2880,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2882,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2884,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2889,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 5
    argNames:
    - wm
    - widget_path
    - res_name
    - relocated_name
    - localized_res_name
    argTypes:
    - GF_WidgetManager*
    - char*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2891
      start: 2861
    functionDepth: 1
    functionLinenumber: 2861
    functionLinenumberEnd: 2891
    functionName: wm_relocate_url
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_dm_sess_process
    - gf_term_relocate_url
    - strcpy
    - sprintf
    - gf_url_concatenate
    - gf_dm_sess_new
    - strnicmp
    - gf_opts_get_key
    - gf_dm_sess_del
    linkageType: ''
    returnType: Bool
    signature: Bool wm_relocate_url(GF_WidgetManager *wm, const char *widget_path,
      const char *res_name, char *relocated_name, char *localized_res_name)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: wm_relocate_url
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2900,1
    - Dst: wm_relocate_url
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2904,1
    - Dst: wm_relocate_url
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2908,1
    - Dst: wm_relocate_url
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2912,1
    - Dst: wm_relocate_url
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2916,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2922,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2923,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2924,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2925,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2926,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2927,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2928,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2929,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 3
    argNames:
    - wm
    - content
    - widget_path
    argTypes:
    - GF_WidgetManager*
    - GF_WidgetContent*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2930
      start: 2896
    functionDepth: 2
    functionLinenumber: 2896
    functionLinenumberEnd: 2930
    functionName: wm_set_default_start_file
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_free
    - wm_relocate_url
    - gf_strdup
    linkageType: ''
    returnType: void
    signature: void wm_set_default_start_file(GF_WidgetManager *wm, GF_WidgetContent
      *content, const char *widget_path)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2938,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2940,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2941,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2948,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2952,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2952,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2952,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2954,1
    - Dst: strcat
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2955,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2957,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2957,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2957,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2959,1
    - Dst: strcat
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2960,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2963,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2964,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2966,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2967,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2968,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2970,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 4
    argNames:
    - widget
    - icon_relocated_path
    - icon_localized_path
    - uri_fragment
    argTypes:
    - GF_Widget*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2972
      start: 2932
    functionDepth: 1
    functionLinenumber: 2932
    functionLinenumberEnd: 2972
    functionName: wm_add_icon
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_list_get
    - gf_strdup
    - gf_list_new
    - GF_SAFEALLOC
    - strcpy
    - strlen
    - gf_list_count
    - strcmp
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: GF_WidgetContent
    signature: GF_WidgetContent *wm_add_icon(GF_Widget *widget, const char *icon_relocated_path,
      const char *icon_localized_path, const char *uri_fragment)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: wm_relocate_url
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2979,1
    - Dst: wm_add_icon
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2980,1
    - Dst: wm_relocate_url
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2982,1
    - Dst: wm_add_icon
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2983,1
    - Dst: wm_relocate_url
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2985,1
    - Dst: wm_add_icon
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2986,1
    - Dst: wm_relocate_url
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2988,1
    - Dst: wm_add_icon
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2989,1
    - Dst: wm_relocate_url
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2991,1
    - Dst: wm_add_icon
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:2992,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - wm
    - widget_path
    - widget
    argTypes:
    - GF_WidgetManager*
    - char*
    - GF_Widget*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2993
      start: 2975
    functionDepth: 2
    functionLinenumber: 2975
    functionLinenumberEnd: 2993
    functionName: wm_set_default_icon_files
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - wm_relocate_url
    - wm_add_icon
    linkageType: ''
    returnType: void
    signature: void wm_set_default_icon_files(GF_WidgetManager *wm, const char *widget_path,
      GF_Widget *widget)
  - BBCount: 91
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3009,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3013,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3015,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3016,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3036,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3038,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3040,1
    - Dst: gf_dm_sess_get_cache_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3042,1
    - Dst: gf_unzip_probe
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3044,1
    - Dst: widget_package_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3057,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3059,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3061,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3065,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3075,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3076,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3079,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3083,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3085,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3087,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3088,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3091,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3092,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3095,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3106,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3106,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3107,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3112,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3114,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3122,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3123,1
    - Dst: wm_get_single_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3124,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3125,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3127,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3129,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3130,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3137,1
    - Dst: wm_get_single_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3138,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3139,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3139,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3140,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3142,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3144,1
    - Dst: wm_get_single_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3146,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3150,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3154,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3159,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3160,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3161,1
    - Dst: wm_xml_find
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3162,1
    - Dst: wm_set_default_start_file
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3165,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3168,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3175,1
    - Dst: wm_relocate_url
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3177,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3180,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3181,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3185,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3186,1
    - Dst: wm_get_single_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3186,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3187,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3189,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3190,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3191,1
    - Dst: wm_get_single_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3193,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3196,1
    - Dst: wm_set_default_start_file
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3198,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3200,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3201,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3202,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3203,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3204,1
    - Dst: wm_parse_mpegu_content_element
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3210,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3212,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3217,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3218,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3219,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3223,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3224,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3235,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3237,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3238,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3245,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3246,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3249,1
    - Dst: wm_relocate_url
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3251,1
    - Dst: wm_add_icon
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3255,1
    - Dst: wm_parse_mpegu_content_element
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3257,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3258,1
    - Dst: wm_parse_non_neg
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3259,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3260,1
    - Dst: wm_parse_non_neg
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3261,1
    - Dst: wm_set_default_icon_files
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3267,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3271,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3272,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3273,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3274,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3276,1
    - Dst: wm_xml_find
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3279,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3281,1
    - Dst: wm_get_single_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3282,1
    - Dst: wm_get_normalized_text_content
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3284,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3287,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3291,1
    - Dst: wm_get_single_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3292,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3295,1
    - Dst: wm_parse_non_neg
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3297,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3299,1
    - Dst: wm_parse_non_neg
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3301,1
    - Dst: wm_xml_find
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3304,1
    - Dst: wm_get_normalized_text_content
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3306,1
    - Dst: wm_xml_find
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3309,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3311,1
    - Dst: wm_get_single_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3312,1
    - Dst: wm_get_text_content
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3315,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3318,1
    - Dst: wm_get_single_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3319,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3321,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3322,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3324,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3325,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3327,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3328,1
    - Dst: wm_xml_find
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3330,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3332,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3333,1
    - Dst: wm_get_single_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3333,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3335,1
    - Dst: wm_get_single_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3336,1
    - Dst: wm_get_normalized_text_content
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3338,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3342,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3344,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3345,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3356,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3357,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3357,1
    - Dst: wm_get_single_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3358,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3360,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3361,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3363,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3365,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3366,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3373,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3380,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3381,1
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3384,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3386,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3387,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3392,1
    - Dst: wm_get_single_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3393,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3394,1
    - Dst: wm_xml_get_attr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3396,1
    - Dst: wm_get_single_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3397,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3398,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3399,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3403,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3411,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3419,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3422,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3429,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3430,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3431,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3439,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3441,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3447,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3448,1
    - Dst: gf_crc_32
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3448,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3448,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3451,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3452,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3453,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3454,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3456,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3459,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3466,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3466,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3467,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3468,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3468,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3468,1
    - Dst: strcat
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3469,1
    - Dst: strcat
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3471,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3475,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3477,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3479,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3480,1
    - Dst: gf_dm_sess_get_cache_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3480,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3482,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3483,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3486,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3489,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3493,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3500,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3501,1
    - Dst: wm_delete_widget_instance
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3503,1
    - Dst: widget_package_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3505,1
    CyclomaticComplexity: 164
    EdgeCount: 164
    ICount: 394
    argCount: 4
    argNames:
    - wm
    - path
    - InstanceID
    - skip_context
    argTypes:
    - GF_WidgetManager*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3510
      start: 2995
    functionDepth: 4
    functionLinenumber: 2995
    functionLinenumberEnd: 3510
    functionName: wm_load_widget
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 2
    functionsReached:
    - gf_free
    - wm_get_normalized_text_content
    - gf_dm_sess_process
    - gf_xml_dom_get_root
    - GF_SAFEALLOC
    - gf_dm_sess_get_cache_name
    - strcpy
    - wm_delete_widget_instance
    - wm_parse_mpegu_content_element
    - gf_list_count
    - gf_opts_get_key
    - wm_xml_get_attr
    - gf_dm_sess_del
    - strchr
    - gf_cfg_set_key
    - wm_xml_find
    - strcat
    - gf_list_get
    - gf_list_new
    - gf_strdup
    - sprintf
    - gf_dm_sess_new
    - gf_xml_dom_new
    - gf_list_add
    - wm_set_default_start_file
    - widget_package_del
    - wm_get_text_content
    - gf_crc_32
    - wm_get_single_attribute
    - gf_xml_dom_parse
    - strstr
    - wm_relocate_url
    - strnicmp
    - wm_set_default_icon_files
    - gf_list_enum
    - wm_add_icon
    - strlen
    - gf_list_del
    - gf_malloc
    - gf_unzip_probe
    - widget_package_new
    - strcmp
    - wm_parse_non_neg
    - gf_xml_dom_del
    linkageType: ''
    returnType: GF_WidgetInstance
    signature: GF_WidgetInstance *wm_load_widget(GF_WidgetManager *wm, const char
      *path, u32 InstanceID, Bool skip_context)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: wm_load_widget
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3517,1
    - Dst: wm_widget_jsbind
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3519,1
    - Dst: gf_cfg_del_section
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3521,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3522,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - cbk
    - file_name
    - file_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3525
      start: 3513
    functionDepth: 5
    functionLinenumber: 3513
    functionLinenumberEnd: 3525
    functionName: wm_enum_widget
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - wm_widget_jsbind
    - gf_cfg_set_key
    - wm_load_widget
    - gf_cfg_del_section
    linkageType: ''
    returnType: Bool
    signature: Bool wm_enum_widget(void *cbk, char *file_name, char *file_path, GF_FileEnumInfo
      *file_info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_enum_directory
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3529,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - cbk
    - file_name
    - file_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3530
      start: 3527
    functionDepth: 1
    functionLinenumber: 3527
    functionLinenumberEnd: 3530
    functionName: wm_enum_dir
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_enum_directory
    linkageType: ''
    returnType: Bool
    signature: Bool wm_enum_dir(void *cbk, char *file_name, char *file_path, GF_FileEnumInfo
      *file_info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3539,1
    - Dst: gf_opts_get_key_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3541,1
    - Dst: gf_opts_get_key_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3543,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3545,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3546,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3548,1
    - Dst: atoi
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3549,1
    - Dst: wm_load_widget
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3550,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3552,1
    - Dst: wm_widget_jsbind
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3553,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3559,1
    - Dst: gf_enum_directory
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3560,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3563
      start: 3533
    functionDepth: 5
    functionLinenumber: 3533
    functionLinenumberEnd: 3563
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_enum_directory
    - gf_opts_get_key_name
    - gf_opts_get_key_count
    - strcpy
    - wm_widget_jsbind
    - strnicmp
    - gf_opts_get_key
    - atoi
    - SMJS_GET_PRIVATE
    - wm_load_widget
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(wm_initialize)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_PROPERTY_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3571,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3574,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3575,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3576,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3577,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3578,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3579,1
    - Dst: widget_load
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3586,1
    - Dst: gf_js_remove_root
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3593,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3597,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3598,1
    - Dst: wm_delete_widget_instance
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3599,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3609,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3611,1
    - Dst: JS_DefineObject
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3612,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3613,1
    - Dst: gf_js_add_root
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3614,1
    - Dst: SMJS_PROPERTY_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3619,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3622,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3623,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3624,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3625,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3626,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3627,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3628,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3629,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3630,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3631,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3632,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3633,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3634,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3636,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3639,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3640,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3642,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3643,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3646,1
    - Dst: GF_SceneGraph*::script_action
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3649,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 36
    argCount: 5
    argNames:
    - jsext
    - scene
    - c
    - global
    - unload
    argTypes:
    - GF_JSUserExtension*
    - GF_SceneGraph*
    - JSContext*
    - JSObject*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3654
      start: 3565
    functionDepth: 4
    functionLinenumber: 3565
    functionLinenumberEnd: 3654
    functionName: widgetmanager_load
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_js_remove_root
    - wm_delete_widget_instance
    - gf_js_add_root
    - gf_list_count
    - GF_JS_InitClass
    - GF_SceneGraph*::script_action
    - JS_SETUP_CLASS
    - SMJS_PROPERTY_SPEC
    - widget_load
    - SMJS_SET_PRIVATE
    - JS_DefineObject
    - SMJS_FUNCTION_SPEC
    linkageType: ''
    returnType: void
    signature: void widgetmanager_load(GF_JSUserExtension *jsext, GF_SceneGraph *scene,
      JSContext *c, JSObject *global, Bool unload)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3661,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3663,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3665,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3667,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3670,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3671,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3675
      start: 3657
    functionDepth: 1
    functionLinenumber: 3657
    functionLinenumberEnd: 3675
    functionName: gwm_new
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_REGISTER_MODULE_INTERFACE
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_JSUserExtension
    signature: GF_JSUserExtension *gwm_new()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3688,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3691,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3693,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3695,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3696
      start: 3678
    functionDepth: 1
    functionLinenumber: 3678
    functionLinenumberEnd: 3696
    functionName: gwm_delete
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gwm_delete(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3714
      start: 3700
    functionDepth: 0
    functionLinenumber: 3700
    functionLinenumberEnd: 3714
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gwm_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3720,1
    - Dst: LoadWidgetReader
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3722,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3726
      start: 3716
    functionDepth: 2
    functionLinenumber: 3716
    functionLinenumberEnd: 3726
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gwm_new
    - LoadWidgetReader
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gwm_delete
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3734,1
    - Dst: ShutdownWidgetReader
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c:3738,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3744
      start: 3728
    functionDepth: 2
    functionLinenumber: 3728
    functionLinenumberEnd: 3744
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/widgetman.c
    functionUses: 0
    functionsReached:
    - gwm_delete
    - ShutdownWidgetReader
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unzlocal_GetCurrentFileInfoInternal
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c:520,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - file
    - pfile_info
    - szFileName
    - fileNameBufferSize
    - extraField
    - extraFieldBufferSize
    - szComment
    - commentBufferSize
    argTypes:
    - unzFile
    - unz_file_info*
    - char*
    - uLong
    - void*
    - uLong
    - char*
    - uLong
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 511
    functionDepth: 0
    functionLinenumber: 511
    functionLinenumberEnd: 521
    functionName: unzGetCurrentFileInfo
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c
    functionUses: 2
    functionsReached:
    - unzlocal_GetCurrentFileInfoInternal
    linkageType: ''
    returnType: int
    signature: "int unzGetCurrentFileInfo(unzFile file,\n                          unz_file_info
      *pfile_info,\n                          char *szFileName,\n                          uLong
      fileNameBufferSize,\n                          void *extraField,\n                          uLong
      extraFieldBufferSize,\n                          char *szComment,\n                          uLong
      commentBufferSize)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1201
      start: 1198
    functionDepth: 0
    functionLinenumber: 1198
    functionLinenumberEnd: 1201
    functionName: makedir
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int makedir (newdir)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: unzOpen2
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c:1331,1
    - Dst: fprintf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c:1334,1
    - Dst: chdir
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c:1338,1
    - Dst: fprintf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c:1340,1
    - Dst: exit
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c:1341,1
    - Dst: unzGetGlobalInfo
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c:1345,1
    - Dst: fprintf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c:1347,1
    - Dst: do_extract_currentfile
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c:1351,1
    - Dst: unzGoToNextFile
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c:1356,1
    - Dst: fprintf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c:1359,1
    - Dst: unzClose
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c:1364,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 2
    argNames:
    - zipfilename
    - dirname
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1367
      start: 1323
    functionDepth: 0
    functionLinenumber: 1323
    functionLinenumberEnd: 1367
    functionName: gf_unzip_archive
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c
    functionUses: 0
    functionsReached:
    - unzOpen2
    - unzGetGlobalInfo
    - unzGoToNextFile
    - chdir
    - unzClose
    - exit
    - do_extract_currentfile
    - fprintf
    linkageType: ''
    returnType: int
    signature: int gf_unzip_archive(const char *zipfilename, const char *dirname)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c:1372,1
    - Dst: fgetc
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c:1374,1
    - Dst: fgetc
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c:1375,1
    - Dst: fgetc
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c:1376,1
    - Dst: fgetc
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c:1377,1
    - Dst: gf_fclose
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c:1379,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 1
    argNames:
    - zipfilename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1381
      start: 1369
    functionDepth: 1
    functionLinenumber: 1369
    functionLinenumberEnd: 1381
    functionName: gf_unzip_probe
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/unzip.c
    functionUses: 2
    functionsReached:
    - gf_fclose
    - fgetc
    - gf_fopen
    linkageType: ''
    returnType: int
    signature: int gf_unzip_probe(const char *zipfilename)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_reset
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:64,1
    - Dst: gf_sg_add_namespace
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:80,1
    - Dst: gf_sg_add_namespace
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:81,1
    - Dst: gf_sg_add_namespace
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:82,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:83,1
    - Dst: gf_node_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:86,1
    - Dst: gf_node_register
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:87,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:88,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:89,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:90,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:91,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:92,1
    - Dst: gf_node_init
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:100,1
    - Dst: gf_node_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:102,1
    - Dst: gf_node_set_id
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:103,1
    - Dst: gf_node_register
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:104,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:105,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:106,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:107,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:108,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:109,1
    - Dst: gf_node_init
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:110,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:113,1
    - Dst: gf_node_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:118,1
    - Dst: gf_node_register
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:119,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:120,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:121,1
    - Dst: gf_fopen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:122,1
    - Dst: gf_fclose
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:124,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:125,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:126,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:139,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:139,1
    - Dst: gf_node_init
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:141,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:144,1
    - Dst: gf_fopen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:145,1
    - Dst: gf_fclose
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:147,1
    - Dst: gf_node_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:148,1
    - Dst: gf_node_register
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:149,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:150,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:151,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:152,1
    - Dst: gf_node_init
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:153,1
    - Dst: gf_node_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:155,1
    - Dst: gf_node_register
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:156,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:157,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:158,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:158,1
    - Dst: gf_node_init
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:159,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:162,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:162,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:163,1
    - Dst: gf_node_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:165,1
    - Dst: gf_node_register
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:166,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:167,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:168,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:168,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:169,1
    - Dst: gf_node_init
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:171,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:173,1
    - Dst: gf_scene_attach_to_compositor
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:174,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 82
    argCount: 6
    argNames:
    - plug
    - inBuffer
    - inBufferLength
    - ES_ID
    - stream_time
    - mmlevel
    argTypes:
    - GF_SceneDecoder*
    - char*
    - u32
    - u16
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 184
    functionName: WGT_ProcessData
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_svg_parse_attribute
    - gf_node_list_add_child_last
    - gf_fopen
    - gf_opts_get_key
    - gf_node_get_attribute_by_name
    - gf_sg_add_namespace
    - strchr
    - gf_scene_attach_to_compositor
    - gf_sg_set_scene_size_info
    - gf_node_init
    - gf_strdup
    - gf_node_set_id
    - gf_dom_add_text_node
    - sprintf
    - gf_sg_get_root_node
    - gf_node_get_attribute_by_tag
    - gf_node_new
    - gf_malloc
    - strlen
    - gf_fclose
    - gf_sg_set_root_node
    - gf_sg_reset
    - gf_node_register
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err WGT_ProcessData(GF_SceneDecoder *plug, const char *inBuffer,
      u32 inBufferLength,\n                              u16 ES_ID, u32 stream_time,
      u32 mmlevel)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - plug
    - scene
    - is_scene_decoder
    argTypes:
    - GF_SceneDecoder*
    - GF_Scene*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 191
    functionName: WGT_AttachScene
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WGT_AttachScene(GF_SceneDecoder *plug, GF_Scene *scene, Bool
      is_scene_decoder)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - plug
    argTypes:
    - GF_SceneDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 198
    functionName: WGT_ReleaseScene
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WGT_ReleaseScene(GF_SceneDecoder *plug)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:211,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:212,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:213,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:214,1
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:215,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - plug
    - esd
    argTypes:
    - GF_BaseDecoder*
    - GF_ESD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 221
    functionName: WGT_AttachStream
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_bs_new
    - memcpy
    - gf_bs_del
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WGT_AttachStream(GF_BaseDecoder *plug, GF_ESD *esd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:226,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - plug
    - ES_ID
    argTypes:
    - GF_BaseDecoder*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 229
    functionName: WGT_DetachStream
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WGT_DetachStream(GF_BaseDecoder *plug, u16 ES_ID)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - plug
    argTypes:
    - struct _basedecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 234
    functionName: WGT_GetName
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *WGT_GetName(struct _basedecoder *plug)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - ifce
    - StreamType
    - esd
    - PL
    argTypes:
    - GF_BaseDecoder*
    - u32
    - GF_ESD*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 246
    functionName: WGT_CanHandleStream
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 WGT_CanHandleStream(GF_BaseDecoder *ifce, u32 StreamType, GF_ESD
      *esd, u8 PL)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - plug
    - cap
    argTypes:
    - GF_BaseDecoder*
    - GF_CodecCapability*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 248
    functionDepth: 0
    functionLinenumber: 248
    functionLinenumberEnd: 257
    functionName: WGT_GetCapabilities
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WGT_GetCapabilities(GF_BaseDecoder *plug, GF_CodecCapability
      *cap)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - plug
    - capability
    argTypes:
    - GF_BaseDecoder*
    - GF_CodecCapability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 262
    functionName: WGT_SetCapabilities
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WGT_SetCapabilities(GF_BaseDecoder *plug, const GF_CodecCapability
      capability)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:270,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:272,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:274,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:276,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 265
    functionDepth: 1
    functionLinenumber: 265
    functionLinenumberEnd: 291
    functionName: LoadWidgetReader
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c
    functionUses: 1
    functionsReached:
    - gf_free
    - GF_REGISTER_MODULE_INTERFACE
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_BaseInterface
    signature: GF_BaseInterface *LoadWidgetReader()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:303,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c:305,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 306
    functionName: ShutdownWidgetReader
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/widgetman/wgt_load.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void ShutdownWidgetReader(GF_BaseInterface *ifce)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_service_register_mime
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:113,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - plug
    argTypes:
    - GF_InputService*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 115
    functionName: LIBPLAYER_RegisterMimeTypes
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c
    functionUses: 0
    functionsReached:
    - gf_service_register_mime
    linkageType: ''
    returnType: u32
    signature: u32 LIBPLAYER_RegisterMimeTypes(const GF_InputService *plug)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strrchr
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:119,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:125,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:126,1
    - Dst: strrchr
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:126,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:127,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:130,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:134,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 2
    argNames:
    - plug
    - url
    argTypes:
    - GF_InputService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 144
    functionName: LIBPLAYER_CanHandleURL
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c
    functionUses: 0
    functionsReached:
    - strchr
    - strnicmp
    - strrchr
    - strstr
    linkageType: ''
    returnType: Bool
    signature: Bool LIBPLAYER_CanHandleURL(GF_InputService *plug, const char *url)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:150,1
    - Dst: player_playback_stop
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:154,1
    - Dst: player_playback_start
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:155,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - e
    - data
    argTypes:
    - player_event_t
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 168
    functionName: on_libplayer_event
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c
    functionUses: 0
    functionsReached:
    - player_playback_stop
    - GF_LOG
    - player_playback_start
    linkageType: ''
    returnType: int
    signature: int on_libplayer_event(player_event_t e, void *data)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:181,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:185,1
    - Dst: player_init
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:197,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:200,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:201,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:206,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:213,1
    - Dst: calloc
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:216,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:220,1
    - Dst: atoi
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:222,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:228,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:231,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:235,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:241,1
    - Dst: atoi
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:242,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:249,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:252,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:256,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:262,1
    - Dst: atoi
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:263,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:267,1
    - Dst: free
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:268,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:273,1
    - Dst: free
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:274,1
    - Dst: mrl_new
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:280,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:281,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:285,1
    - Dst: player_dvb_pes_filter_start
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:286,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:290,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:290,1
    - Dst: calloc
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:292,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:293,1
    - Dst: strdup
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:294,1
    - Dst: strdup
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:296,1
    - Dst: mrl_new
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:298,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:305,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:306,1
    - Dst: player_mrl_set
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:310,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:318,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:324,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:327,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:336,1
    - Dst: gf_service_declare_media
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:337,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 103
    argCount: 3
    argNames:
    - plug
    - serv
    - url
    argTypes:
    - GF_InputService*
    - GF_ClientService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 174
    functionDepth: 1
    functionLinenumber: 174
    functionLinenumberEnd: 341
    functionName: LIBPLAYER_ConnectService
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c
    functionUses: 0
    functionsReached:
    - mrl_new
    - gf_odf_desc_esd_new
    - GF_LOG
    - calloc
    - strstr
    - player_dvb_pes_filter_start
    - strdup
    - player_mrl_set
    - strnicmp
    - gf_service_connect_ack
    - player_init
    - atoi
    - gf_odf_desc_new
    - gf_list_add
    - strchr
    - free
    - gf_service_declare_media
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LIBPLAYER_ConnectService(GF_InputService *plug, GF_ClientService
      *serv, const char *url)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: player_playback_stop
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:350,1
    - Dst: fprintf
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:351,1
    - Dst: player_uninit
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:352,1
    - Dst: fprintf
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:353,1
    - Dst: gf_service_disconnect_ack
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:359,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:360,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:366,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - plug
    argTypes:
    - GF_InputService*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 343
    functionDepth: 1
    functionLinenumber: 343
    functionLinenumberEnd: 371
    functionName: LIBPLAYER_CloseService
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c
    functionUses: 0
    functionsReached:
    - player_playback_stop
    - gf_service_disconnect_ack
    - GF_LOG
    - player_uninit
    - fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LIBPLAYER_CloseService(GF_InputService *plug)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - plug
    - expect_type
    - sub_url
    argTypes:
    - GF_InputService*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 377
    functionName: LIBPLAYER_GetServiceDesc
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *LIBPLAYER_GetServiceDesc(GF_InputService *plug, u32
      expect_type, const char *sub_url)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:384,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:409,1
    - Dst: player_playback_start
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:412,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:418,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:429,1
    - Dst: player_playback_stop
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:431,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:433,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 53
    argCount: 2
    argNames:
    - plug
    - com
    argTypes:
    - GF_InputService*
    - GF_NetworkCommand*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 380
    functionDepth: 1
    functionLinenumber: 380
    functionLinenumberEnd: 446
    functionName: LIBPLAYER_ServiceCommand
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c
    functionUses: 0
    functionsReached:
    - player_playback_stop
    - GF_LOG
    - player_playback_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LIBPLAYER_ServiceCommand(GF_InputService *plug, GF_NetworkCommand
      *com)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:452,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:453,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:455,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:457,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - plug
    - channel
    - url
    - upstream
    argTypes:
    - GF_InputService*
    - LPNETCHANNEL
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 448
    functionDepth: 1
    functionLinenumber: 448
    functionLinenumberEnd: 460
    functionName: LIBPLAYER_ConnectChannel
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_service_connect_ack
    - sscanf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LIBPLAYER_ConnectChannel(GF_InputService *plug, LPNETCHANNEL
      channel, const char *url, Bool upstream)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:465,1
    - Dst: gf_service_disconnect_ack
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:466,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - plug
    - channel
    argTypes:
    - GF_InputService*
    - LPNETCHANNEL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 468
      start: 462
    functionDepth: 1
    functionLinenumber: 462
    functionLinenumberEnd: 468
    functionName: LIBPLAYER_DisconnectChannel
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_service_disconnect_ack
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LIBPLAYER_DisconnectChannel(GF_InputService *plug, LPNETCHANNEL
      channel)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - plug
    - url
    argTypes:
    - GF_InputService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 472
    functionDepth: 0
    functionLinenumber: 472
    functionLinenumberEnd: 476
    functionName: LIBPLAYER_CanHandleURLInService
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool LIBPLAYER_CanHandleURLInService(GF_InputService *plug, const char
      *url)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:489,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - dec
    - esd
    argTypes:
    - GF_BaseDecoder*
    - GF_ESD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 478
    functionDepth: 1
    functionLinenumber: 478
    functionLinenumberEnd: 492
    functionName: LIBPLAYER_AttachStream
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LIBPLAYER_AttachStream(GF_BaseDecoder *dec, GF_ESD *esd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:497,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dec
    - ES_ID
    argTypes:
    - GF_BaseDecoder*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 494
    functionDepth: 1
    functionLinenumber: 494
    functionLinenumberEnd: 500
    functionName: LIBPLAYER_DetachStream
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LIBPLAYER_DetachStream(GF_BaseDecoder *dec, u16 ES_ID)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - dec
    - capability
    argTypes:
    - GF_BaseDecoder*
    - GF_CodecCapability*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 514
      start: 501
    functionDepth: 0
    functionLinenumber: 501
    functionLinenumberEnd: 514
    functionName: LIBPLAYER_GetCapabilities
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LIBPLAYER_GetCapabilities(GF_BaseDecoder *dec, GF_CodecCapability
      *capability)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dec
    - capability
    argTypes:
    - GF_BaseDecoder*
    - GF_CodecCapability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 515
    functionDepth: 0
    functionLinenumber: 515
    functionLinenumberEnd: 518
    functionName: LIBPLAYER_SetCapabilities
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LIBPLAYER_SetCapabilities(GF_BaseDecoder *dec, GF_CodecCapability
      capability)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:521,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - dec
    - StreamType
    - esd
    - PL
    argTypes:
    - GF_BaseDecoder*
    - u32
    - GF_ESD*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 519
    functionDepth: 1
    functionLinenumber: 519
    functionLinenumberEnd: 527
    functionName: LIBPLAYER_CanHandleStream
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: u32
    signature: u32 LIBPLAYER_CanHandleStream(GF_BaseDecoder *dec, u32 StreamType,
      GF_ESD *esd, u8 PL)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:530,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dec
    argTypes:
    - GF_BaseDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 528
    functionDepth: 1
    functionLinenumber: 528
    functionLinenumberEnd: 532
    functionName: LIBPLAYER_GetName
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: char
    signature: char *LIBPLAYER_GetName(GF_BaseDecoder *dec)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:542,1
    - Dst: mrl_get_property
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:552,1
    - Dst: mrl_get_property
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:553,1
    - Dst: fprintf
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:559,1
    - Dst: fprintf
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:560,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:561,1
    - Dst: player_video_io_windows_set
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:577,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:592,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 4
    argNames:
    - dec
    - mute
    - src
    - dst
    argTypes:
    - GF_PrivateMediaDecoder*
    - Bool
    - GF_Window*
    - GF_Window*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 594
      start: 534
    functionDepth: 1
    functionLinenumber: 534
    functionLinenumberEnd: 594
    functionName: LIBPLAYER_Control
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - player_video_io_windows_set
    - fprintf
    - mrl_get_property
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LIBPLAYER_Control(GF_PrivateMediaDecoder *dec, Bool mute, GF_Window
      *src, GF_Window *dst)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 597
    functionDepth: 0
    functionLinenumber: 597
    functionLinenumberEnd: 606
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:614,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:615,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:616,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:628,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:635,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:636,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 649
      start: 608
    functionDepth: 1
    functionLinenumber: 608
    functionLinenumberEnd: 649
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c
    functionUses: 0
    functionsReached:
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:657,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:658,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c:660,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - bi
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 662
      start: 651
    functionDepth: 0
    functionLinenumber: 651
    functionLinenumberEnd: 662
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/libplayer/libplayer.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *bi)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: freenect_get_user
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:73,1
    - Dst: gf_service_send_packet
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:92,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - dev
    - v_depth
    - timestamp
    argTypes:
    - freenect_device*
    - void*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 94
    functionName: Freenect_DepthCallback_RGBD
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c
    functionUses: 0
    functionsReached:
    - gf_service_send_packet
    - freenect_get_user
    linkageType: ''
    returnType: void
    signature: void Freenect_DepthCallback_RGBD(freenect_device *dev, void *v_depth,
      uint32_t timestamp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: freenect_get_user
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:99,1
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:101,1
    - Dst: gf_service_send_packet
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - dev
    - v_depth
    - timestamp
    argTypes:
    - freenect_device*
    - void*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 106
    functionName: Freenect_DepthCallback_GREY16
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_service_send_packet
    - freenect_get_user
    linkageType: ''
    returnType: void
    signature: void Freenect_DepthCallback_GREY16(freenect_device *dev, void *v_depth,
      uint32_t timestamp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: freenect_get_user
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:110,1
    - Dst: gf_service_send_packet
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:124,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - dev
    - v_depth
    - timestamp
    argTypes:
    - freenect_device*
    - void*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 126
    functionName: Freenect_DepthCallback_GREY8
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c
    functionUses: 0
    functionsReached:
    - gf_service_send_packet
    - freenect_get_user
    linkageType: ''
    returnType: void
    signature: void Freenect_DepthCallback_GREY8(freenect_device *dev, void *v_depth,
      uint32_t timestamp)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: freenect_get_user
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:130,1
    - Dst: gf_service_send_packet
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:177,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 44
    argCount: 3
    argNames:
    - dev
    - v_depth
    - timestamp
    argTypes:
    - freenect_device*
    - void*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 179
    functionName: Freenect_DepthCallback_ColorGradient
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c
    functionUses: 0
    functionsReached:
    - gf_service_send_packet
    - freenect_get_user
    linkageType: ''
    returnType: void
    signature: void Freenect_DepthCallback_ColorGradient(freenect_device *dev, void
      *v_depth, uint32_t timestamp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: freenect_get_user
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:183,1
    - Dst: gf_service_send_packet
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:186,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - dev
    - rgb
    - timestamp
    argTypes:
    - freenect_device*
    - void*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 188
    functionName: Freenect_RGBCallback
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c
    functionUses: 0
    functionsReached:
    - gf_service_send_packet
    - freenect_get_user
    linkageType: ''
    returnType: void
    signature: void Freenect_RGBCallback(freenect_device *dev, void *rgb, uint32_t
      timestamp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:195,1
    - Dst: freenect_start_depth
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:196,1
    - Dst: freenect_start_video
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:197,1
    - Dst: freenect_process_events
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:199,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:200,1
    - Dst: freenect_stop_depth
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:202,1
    - Dst: freenect_stop_video
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:203,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:205,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - par
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 191
    functionDepth: 1
    functionLinenumber: 191
    functionLinenumberEnd: 207
    functionName: FreenectRun
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c
    functionUses: 0
    functionsReached:
    - freenect_start_depth
    - freenect_start_video
    - freenect_process_events
    - GF_LOG
    - gf_sleep
    - freenect_stop_depth
    - freenect_stop_video
    linkageType: ''
    returnType: u32
    signature: u32 FreenectRun(void *par)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:211,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:212,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:213,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - plug
    - url
    argTypes:
    - GF_InputService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 215
    functionName: Freenect_CanHandleURL
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c
    functionUses: 0
    functionsReached:
    - strnicmp
    linkageType: ''
    returnType: Bool
    signature: Bool Freenect_CanHandleURL(GF_InputService *plug, const char *url)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:221,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:224,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:228,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:234,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - dev
    - level
    - msg
    argTypes:
    - freenect_context*
    - freenect_loglevel
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 217
    functionDepth: 1
    functionLinenumber: 217
    functionLinenumberEnd: 237
    functionName: Freenect_Logs
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void Freenect_Logs(freenect_context *dev, freenect_loglevel level,
      const char *msg)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: freenect_init
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:258,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:260,1
    - Dst: freenect_set_log_level
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:263,1
    - Dst: freenect_set_log_callback
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:264,1
    - Dst: freenect_select_subdevices
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:266,1
    - Dst: freenect_num_devices
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:268,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:269,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:271,1
    - Dst: freenect_open_device
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:275,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:277,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:282,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:284,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:287,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:295,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:298,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:300,1
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:303,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:310,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:311,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:312,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:313,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:314,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:316,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:320,1
    - Dst: freenect_find_video_mode
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:329,1
    - Dst: freenect_set_video_mode
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:330,1
    - Dst: freenect_set_depth_mode
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:331,1
    - Dst: freenect_find_depth_mode
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:331,1
    - Dst: freenect_set_video_format
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:336,1
    - Dst: freenect_set_depth_format
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:337,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:346,1
    - Dst: freenect_set_video_callback
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:347,1
    - Dst: freenect_set_depth_callback
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:353,1
    - Dst: freenect_set_depth_callback
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:358,1
    - Dst: freenect_set_depth_callback
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:363,1
    - Dst: freenect_set_depth_callback
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:368,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:371,1
    - Dst: freenect_set_video_buffer
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:374,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:376,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:376,1
    - Dst: powf
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:381,1
    - Dst: freenect_set_user
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:385,1
    - Dst: gf_th_new
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:387,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:391,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:395,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:397,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:399,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:399,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:399,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:400,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:400,1
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:416,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:417,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:418,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:419,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:420,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:421,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:422,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:423,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:425,1
    - Dst: gf_service_declare_media
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:426,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 146
    argCount: 3
    argNames:
    - plug
    - serv
    - url
    argTypes:
    - GF_InputService*
    - GF_ClientService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 240
    functionDepth: 1
    functionLinenumber: 240
    functionLinenumberEnd: 429
    functionName: Freenect_ConnectService
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c
    functionUses: 0
    functionsReached:
    - freenect_select_subdevices
    - gf_bs_new
    - gf_bs_write_u16
    - freenect_find_video_mode
    - gf_service_connect_ack
    - freenect_set_user
    - freenect_init
    - strchr
    - gf_bs_write_u32
    - gf_4cc_to_str
    - freenect_set_video_mode
    - gf_odf_desc_esd_new
    - gf_bs_get_content
    - freenect_open_device
    - gf_odf_desc_new
    - gf_list_add
    - stricmp
    - freenect_set_depth_format
    - freenect_set_video_format
    - sscanf
    - GF_LOG
    - gf_th_new
    - strstr
    - freenect_set_depth_mode
    - strnicmp
    - freenect_set_video_callback
    - freenect_set_log_level
    - gf_malloc
    - freenect_set_video_buffer
    - powf
    - freenect_set_log_callback
    - gf_bs_del
    - freenect_num_devices
    - freenect_find_depth_mode
    - gf_service_declare_media
    - freenect_set_depth_callback
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Freenect_ConnectService(GF_InputService *plug, GF_ClientService
      *serv, const char *url)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: freenect_close_device
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:434,1
    - Dst: freenect_shutdown
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:435,1
    - Dst: gf_service_disconnect_ack
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:438,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - plug
    argTypes:
    - GF_InputService*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 431
    functionDepth: 0
    functionLinenumber: 431
    functionLinenumberEnd: 440
    functionName: Freenect_CloseService
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c
    functionUses: 0
    functionsReached:
    - freenect_shutdown
    - gf_service_disconnect_ack
    - freenect_close_device
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Freenect_CloseService(GF_InputService *plug)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - plug
    - expect_type
    - sub_url
    argTypes:
    - GF_InputService*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 443
    functionDepth: 0
    functionLinenumber: 443
    functionLinenumberEnd: 446
    functionName: Freenect_GetServiceDesc
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *Freenect_GetServiceDesc(GF_InputService *plug, u32 expect_type,
      const char *sub_url)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_run
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:473,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:481,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 42
    argCount: 2
    argNames:
    - plug
    - com
    argTypes:
    - GF_InputService*
    - GF_NetworkCommand*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 496
    functionName: Freenect_ServiceCommand
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c
    functionUses: 0
    functionsReached:
    - gf_th_run
    - gf_sleep
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Freenect_ServiceCommand(GF_InputService *plug, GF_NetworkCommand
      *com)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:503,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:506,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:508,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:511,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:513,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:516,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 4
    argNames:
    - plug
    - channel
    - url
    - upstream
    argTypes:
    - GF_InputService*
    - LPNETCHANNEL
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 519
      start: 498
    functionDepth: 0
    functionLinenumber: 498
    functionLinenumberEnd: 519
    functionName: Freenect_ConnectChannel
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_service_connect_ack
    - sscanf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Freenect_ConnectChannel(GF_InputService *plug, LPNETCHANNEL
      channel, const char *url, Bool upstream)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_service_disconnect_ack
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:530,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - plug
    - channel
    argTypes:
    - GF_InputService*
    - LPNETCHANNEL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 521
    functionDepth: 0
    functionLinenumber: 521
    functionLinenumberEnd: 532
    functionName: Freenect_DisconnectChannel
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c
    functionUses: 0
    functionsReached:
    - gf_service_disconnect_ack
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Freenect_DisconnectChannel(GF_InputService *plug, LPNETCHANNEL
      channel)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - plug
    - url
    argTypes:
    - GF_InputService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 537
      start: 534
    functionDepth: 0
    functionLinenumber: 534
    functionLinenumberEnd: 537
    functionName: Freenect_CanHandleURLInService
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Freenect_CanHandleURLInService(GF_InputService *plug, const char
      *url)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 540
    functionDepth: 0
    functionLinenumber: 540
    functionLinenumberEnd: 548
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:556,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:557,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:558,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:570,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 550
    functionDepth: 1
    functionLinenumber: 550
    functionLinenumberEnd: 575
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c
    functionUses: 0
    functionsReached:
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:584,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:585,1
    - Dst: gf_th_del
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:586,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:587,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c:588,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - bi
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 577
    functionDepth: 0
    functionLinenumber: 577
    functionLinenumberEnd: 590
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/freenect/freenect.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_th_del
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *bi)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - service
    - channel
    argTypes:
    - GF_ClientService*
    - LPNETCHANNEL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 68
    functionName: GPACCaptureHandler::GPACCaptureHandler
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: void GPACCaptureHandler(GF_ClientService *service, LPNETCHANNEL channel)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 74
    functionName: ~GPACCaptureHandler()
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void ~GPACCaptureHandler()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - height
    - stride
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 90
    functionName: GPACCaptureHandler::AllocData
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void AllocData(u32 height, u32 stride)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: IOBuffer*::getTimestamp
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:99,1
    - Dst: IOBuffer*::getPtr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:102,1
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:104,1
    - Dst: gf_service_send_packet
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:106,1
    - Dst: IOBuffer*::getValidBytes
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:106,1
    - Dst: gf_service_send_packet
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:108,1
    - Dst: IOBuffer*::getPtr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:108,1
    - Dst: IOBuffer*::getValidBytes
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:108,1
    - Dst: IOBuffer*::release
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:110,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - io_buf
    argTypes:
    - IOBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 111
    functionName: GPACCaptureHandler::handleCaptureEvent
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp
    functionUses: 0
    functionsReached:
    - IOBuffer*::release
    - memcpy
    - IOBuffer*::getValidBytes
    - IOBuffer*::getTimestamp
    - gf_service_send_packet
    - IOBuffer*::getPtr
    linkageType: ''
    returnType: void
    signature: void GPACCaptureHandler::handleCaptureEvent(IOBuffer* io_buf)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: wm_delete_interface_instance
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:116,1
    - Dst: begin
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:120,1
    - Dst: end
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:120,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:123,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:125,1
    - Dst: DeviceDescriptor*::getName
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:125,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:128,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 130
    functionName: get_device_descriptor
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp
    functionUses: 0
    functionsReached:
    - DeviceDescriptor*::getName
    - GF_LOG
    - strstr
    - wm_delete_interface_instance
    - begin
    - end
    - stricmp
    linkageType: ''
    returnType: DeviceDescriptor
    signature: DeviceDescriptor * get_device_descriptor(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:157,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - plug
    - url
    argTypes:
    - GF_InputService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 160
    functionName: AVCap_CanHandleURL
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp
    functionUses: 0
    functionsReached:
    - strnicmp
    linkageType: ''
    returnType: Bool
    signature: Bool AVCap_CanHandleURL(GF_InputService *plug, const char *url)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:176,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:177,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:183,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:185,1
    - Dst: get_device_descriptor
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:188,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:195,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:196,1
    - Dst: AVCapIn*::device_desc::open
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:200,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:201,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:201,1
    - Dst: AVCapIn*::device_desc::isVideoCaptureDev
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:201,1
    - Dst: AVCapIn*::device_desc::close
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:202,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:203,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:206,1
    - Dst: AVCapIn*::device_desc::isAudioDev
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:206,1
    - Dst: AVCapIn*::device_desc::close
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:207,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:208,1
    - Dst: AVCapIn*::device_desc::getDevice
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:211,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:213,1
    - Dst: AVCapIn*::device_desc::close
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:214,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:215,1
    - Dst: AVCapIn*::device::getFormatMgr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:218,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:221,1
    - Dst: GF_4CC
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:223,1
    - Dst: AVCapIn*::device::getFormatMgr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:224,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:229,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:232,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:234,1
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:236,1
    - Dst: AVCapIn*::device::getFormatMgr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:237,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:238,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:241,1
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:243,1
    - Dst: AVCapIn*::device::getFormatMgr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:244,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:245,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:248,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:250,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:252,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:253,1
    - Dst: GF_4CC
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:254,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:256,1
    - Dst: GF_4CC
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:257,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:259,1
    - Dst: GF_4CC
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:260,1
    - Dst: AVCapIn*::device::getFormatMgr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:269,1
    - Dst: AVCapIn*::device::getFormatMgr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:270,1
    - Dst: AVCapIn*::device::getFormatMgr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:271,1
    - Dst: AVCapIn*::device::getFormatMgr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:274,1
    - Dst: AVCapIn*::device::getFormatMgr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:276,1
    - Dst: Format*::getFourcc
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:277,1
    - Dst: GF_4CC
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:278,1
    - Dst: GF_4CC
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:279,1
    - Dst: GF_4CC
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:284,1
    - Dst: AVCapIn*::device::getFormatMgr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:286,1
    - Dst: AVCapIn*::device::getFormatMgr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:287,1
    - Dst: GF_4CC
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:289,1
    - Dst: AVCapIn*::device::getFormatMgr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:291,1
    - Dst: AVCapIn*::device::getFormatMgr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:292,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:295,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:295,1
    - Dst: Format*::getFourcc
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:295,1
    - Dst: Format*::getFourcc
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:295,1
    - Dst: AVCapIn*::device_desc::close
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:296,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:297,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:300,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:300,1
    - Dst: Format*::getFourcc
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:300,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:304,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:308,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:310,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:312,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:312,1
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:323,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:324,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:325,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:326,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:327,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:328,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:329,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:330,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:332,1
    - Dst: gf_service_declare_media
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:333,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 141
    argCount: 3
    argNames:
    - plug
    - serv
    - url
    argTypes:
    - GF_InputService*
    - GF_ClientService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 163
    functionDepth: 2
    functionLinenumber: 163
    functionLinenumberEnd: 336
    functionName: AVCap_ConnectService
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_write_u16
    - AVCapIn*::device_desc::close
    - gf_opts_get_key
    - gf_service_connect_ack
    - Format*::getFourcc
    - AVCapIn*::device_desc::getDevice
    - strchr
    - gf_bs_write_u32
    - gf_4cc_to_str
    - gf_odf_desc_esd_new
    - gf_bs_get_content
    - get_device_descriptor
    - gf_odf_desc_new
    - gf_list_add
    - AVCapIn*::device_desc::isVideoCaptureDev
    - AVCapIn*::device_desc::isAudioDev
    - sscanf
    - GF_LOG
    - strstr
    - strnicmp
    - strlen
    - AVCapIn*::device_desc::open
    - gf_bs_del
    - strcmp
    - AVCapIn*::device::getFormatMgr
    - GF_4CC
    - gf_service_declare_media
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AVCap_ConnectService(GF_InputService *plug, GF_ClientService
      *serv, const char *url)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: AVCapIn*::device_desc::close
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:342,1
    - Dst: gf_service_disconnect_ack
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:347,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - plug
    argTypes:
    - GF_InputService*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 349
    functionName: AVCap_CloseService
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp
    functionUses: 0
    functionsReached:
    - AVCapIn*::device_desc::close
    - gf_service_disconnect_ack
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AVCap_CloseService(GF_InputService *plug)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - plug
    - expect_type
    - sub_url
    argTypes:
    - GF_InputService*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 352
    functionDepth: 0
    functionLinenumber: 352
    functionLinenumberEnd: 355
    functionName: AVCap_GetServiceDesc
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *AVCap_GetServiceDesc(GF_InputService *plug, u32 expect_type,
      const char *sub_url)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: AVCapIn*::device::getVidCapMgr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:383,1
    - Dst: AVCapIn*::device::getVidCapMgr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:385,1
    - Dst: AVCapIn*::device::getVidCapMgr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:388,1
    - Dst: AVCapIn*::device::getVidCapMgr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:394,1
    - Dst: AVCapIn*::device::getVidCapMgr
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:395,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 42
    argCount: 2
    argNames:
    - plug
    - com
    argTypes:
    - GF_InputService*
    - GF_NetworkCommand*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 358
    functionDepth: 0
    functionLinenumber: 358
    functionLinenumberEnd: 409
    functionName: AVCap_ServiceCommand
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp
    functionUses: 0
    functionsReached:
    - AVCapIn*::device::getVidCapMgr
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AVCap_ServiceCommand(GF_InputService *plug, GF_NetworkCommand
      *com)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:416,1
    - Dst: GPACCaptureHandler::GPACCaptureHandler
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:419,1
    - Dst: AVCapIn*::video_handler::AllocData
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:422,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:424,1
    - Dst: GPACCaptureHandler::GPACCaptureHandler
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:427,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:428,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:430,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 4
    argNames:
    - plug
    - channel
    - url
    - upstream
    argTypes:
    - GF_InputService*
    - LPNETCHANNEL
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 411
    functionDepth: 1
    functionLinenumber: 411
    functionLinenumberEnd: 433
    functionName: AVCap_ConnectChannel
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp
    functionUses: 0
    functionsReached:
    - AVCapIn*::video_handler::AllocData
    - GPACCaptureHandler::GPACCaptureHandler
    - gf_service_connect_ack
    - sscanf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AVCap_ConnectChannel(GF_InputService *plug, LPNETCHANNEL channel,
      const char *url, Bool upstream)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_service_disconnect_ack
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:446,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - plug
    - channel
    argTypes:
    - GF_InputService*
    - LPNETCHANNEL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 435
    functionDepth: 0
    functionLinenumber: 435
    functionLinenumberEnd: 448
    functionName: AVCap_DisconnectChannel
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp
    functionUses: 0
    functionsReached:
    - gf_service_disconnect_ack
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AVCap_DisconnectChannel(GF_InputService *plug, LPNETCHANNEL
      channel)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - plug
    - url
    argTypes:
    - GF_InputService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 450
    functionDepth: 0
    functionLinenumber: 450
    functionLinenumberEnd: 453
    functionName: AVCap_CanHandleURLInService
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool AVCap_CanHandleURLInService(GF_InputService *plug, const char
      *url)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 456
    functionDepth: 0
    functionLinenumber: 456
    functionLinenumberEnd: 464
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:472,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:473,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:474,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:486,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 466
    functionDepth: 1
    functionLinenumber: 466
    functionLinenumberEnd: 491
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp
    functionUses: 0
    functionsReached:
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:499,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp:500,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - bi
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 493
    functionDepth: 0
    functionLinenumber: 493
    functionLinenumberEnd: 502
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/avcap/avcap.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *bi)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:46,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ifce
    - urn
    - dsi
    argTypes:
    - struct __input_device*
    - char*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionName: OCV_RegisterDevice
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c
    functionUses: 0
    functionsReached:
    - strncmp
    - AddField
    linkageType: ''
    returnType: Bool
    signature: Bool OCV_RegisterDevice(struct __input_device *ifce, const char *urn,
      GF_BitStream *dsi, void (*AddField)(struct __input_device *_this, u32 fieldType,
      const char *name))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cvLoad
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - cascade_path
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: load_object_detector
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c
    functionUses: 0
    functionsReached:
    - cvLoad
    linkageType: ''
    returnType: CvHaarClassifierCascade
    signature: CvHaarClassifierCascade * load_object_detector( const char* cascade_path
      )
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: cvCreateMemStorage
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:67,1
    - Dst: cvCreateImage
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:78,1
    - Dst: cvSize
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:78,1
    - Dst: cvPyrDown
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:79,1
    - Dst: cvHaarDetectObjects
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:83,1
    - Dst: cvSize
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:83,1
    - Dst: cvGetSeqElem
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:88,1
    - Dst: cvRectangle
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:102,1
    - Dst: cvPoint
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:102,1
    - Dst: cvPoint
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:103,1
    - Dst: CV_RGB
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:105,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:107,1
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:113,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:114,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:115,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:116,1
    - Dst: gf_bs_align
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:118,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:119,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:120,1
    - Dst: GF_InputSensorDevice*::DispatchFrame
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:121,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:122,1
    - Dst: cvReleaseImage
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:130,1
    - Dst: cvReleaseMemStorage
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:132,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 32
    argCount: 4
    argNames:
    - ifce
    - image
    - cascade
    - do_pyramids
    argTypes:
    - GF_InputSensorDevice*
    - IplImage*
    - CvHaarClassifierCascade*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 133
    functionName: detect_and_draw_objects
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c
    functionUses: 0
    functionsReached:
    - gf_free
    - cvHaarDetectObjects
    - gf_bs_new
    - GF_InputSensorDevice*::DispatchFrame
    - cvPyrDown
    - cvSize
    - cvCreateImage
    - cvGetSeqElem
    - gf_bs_write_float
    - cvCreateMemStorage
    - gf_bs_get_content
    - CV_RGB
    - cvRectangle
    - cvPoint
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_align
    - cvReleaseMemStorage
    - gf_bs_del
    - cvReleaseImage
    linkageType: ''
    returnType: void
    signature: "void detect_and_draw_objects(GF_InputSensorDevice *ifce, IplImage*
      image,\n                             CvHaarClassifierCascade* cascade,\n                             int
      do_pyramids )"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: cvCaptureFromCAM
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:142,1
    - Dst: cvSetCaptureProperty
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:143,1
    - Dst: cvSetCaptureProperty
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:144,1
    - Dst: cvNamedWindow
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:146,1
    - Dst: cvGrabFrame
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:150,1
    - Dst: cvRetrieveFrame
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:153,1
    - Dst: load_object_detector
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:155,1
    - Dst: detect_and_draw_objects
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:156,1
    - Dst: cvShowImage
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:159,1
    - Dst: cvWaitKey
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:160,1
    - Dst: cvReleaseImage
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:163,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - par
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 135
    functionDepth: 2
    functionLinenumber: 135
    functionLinenumberEnd: 165
    functionName: OCV_Run
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c
    functionUses: 0
    functionsReached:
    - cvGrabFrame
    - cvCaptureFromCAM
    - cvSetCaptureProperty
    - detect_and_draw_objects
    - cvWaitKey
    - load_object_detector
    - cvReleaseImage
    - cvShowImage
    - cvRetrieveFrame
    - cvNamedWindow
    linkageType: ''
    returnType: u32
    signature: u32 OCV_Run(void *par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_run
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - struct __input_device*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 172
    functionName: OCV_Start
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c
    functionUses: 0
    functionsReached:
    - gf_th_run
    linkageType: ''
    returnType: void
    signature: void OCV_Start(struct __input_device *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - struct __input_device*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 178
    functionName: OCV_Stop
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void OCV_Stop(struct __input_device *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 189
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:198,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:199,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:205,1
    - Dst: gf_th_new
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:207,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 191
    functionDepth: 1
    functionLinenumber: 191
    functionLinenumberEnd: 210
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c
    functionUses: 0
    functionsReached:
    - GF_REGISTER_MODULE_INTERFACE
    - gf_th_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c:217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - bi
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 219
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/opencv_is/opencv_is.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *bi)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 70
    functionName: INT64_C
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_in.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: INT64_C(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 71
    functionName: UINT64_C
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_in.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: UINT64_C(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 37
    functionName: _TOSTR
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_load.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _TOSTR(_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: TOSTR
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_load.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TOSTR(_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 52
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_load.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FFDEC_Load
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_load.c:57,1
    - Dst: New_FFMPEG_Demux
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_load.c:59,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 62
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_load.c
    functionUses: 0
    functionsReached:
    - FFDEC_Load
    - New_FFMPEG_Demux
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FFDEC_Delete
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_load.c:69,1
    - Dst: Delete_FFMPEG_Demux
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_load.c:73,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 77
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_load.c
    functionUses: 0
    functionsReached:
    - FFDEC_Delete
    - Delete_FFMPEG_Demux
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 60
    functionName: av_find_stream_info
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: av_find_stream_info(__c)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:83,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:86,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:89,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:96,1
    - Dst: av_seek_frame
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:102,1
    - Dst: av_read_frame
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:107,1
    - Dst: gf_mx_p
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:114,1
    - Dst: gf_service_send_packet
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:120,1
    - Dst: gf_service_send_packet
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:126,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:128,1
    - Dst: av_free_packet
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:129,1
    - Dst: gf_service_command
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:134,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:138,1
    - Dst: gf_service_send_packet
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:144,1
    - Dst: gf_service_send_packet
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:145,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 55
    argCount: 1
    argNames:
    - par
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 149
    functionName: FFDemux_Run
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - av_read_frame
    - av_seek_frame
    - gf_sleep
    - av_free_packet
    - memset
    - gf_service_send_packet
    - gf_mx_v
    - gf_service_command
    linkageType: ''
    returnType: u32
    signature: u32 FFDemux_Run(void *par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_service_register_mime
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:182,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - plug
    argTypes:
    - GF_InputService*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 184
    functionName: FFD_RegisterMimeTypes
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c
    functionUses: 0
    functionsReached:
    - gf_service_register_mime
    linkageType: ''
    returnType: u32
    signature: u32 FFD_RegisterMimeTypes(const GF_InputService *plug)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: av_open_input_file
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:188,1
    - Dst: avformat_open_input
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ic_ptr
    - filename
    - fmt
    - ops
    argTypes:
    - AVFormatContext**
    - char*
    - AVInputFormat*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 192
    functionName: open_file
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c
    functionUses: 0
    functionsReached:
    - av_open_input_file
    - avformat_open_input
    linkageType: ''
    returnType: int
    signature: "int open_file(AVFormatContext **\tic_ptr, const char * \tfilename,
      AVInputFormat * \tfmt, void *ops)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:198,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:204,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:206,1
    - Dst: av_dict_set
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:209,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:211,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 2
    argNames:
    - ffd
    - url
    argTypes:
    - FFDemux*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 220
    functionName: ffd_parse_options
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c
    functionUses: 0
    functionsReached:
    - av_dict_set
    - strchr
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void ffd_parse_options(FFDemux *ffd, const char *url)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:236,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:237,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:238,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:239,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:240,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:241,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:242,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:246,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:249,1
    - Dst: strrchr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:250,1
    - Dst: strrchr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:252,1
    - Dst: strrchr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:255,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:256,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:258,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:258,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:259,1
    - Dst: strlwr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:260,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:262,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:266,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:266,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:266,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:266,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:267,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:267,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:268,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:268,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:269,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:269,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:269,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:269,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:270,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:271,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:272,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:273,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:273,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:273,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:274,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:274,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:274,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:276,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:276,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:276,1
    - Dst: gf_service_check_mime_register
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:283,1
    - Dst: ffd_parse_options
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:289,1
    - Dst: open_file
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:292,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:295,1
    - Dst: av_find_input_format
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:295,1
    - Dst: open_file
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:297,1
    - Dst: av_find_stream_info
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:303,1
    - Dst: guess_stream_format
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:323,1
    - Dst: av_guess_format
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:325,1
    - Dst: gf_service_register_mime
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:327,1
    - Dst: strrchr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:329,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:331,1
    - Dst: strlwr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:332,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:334,1
    - Dst: gf_service_register_mime
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:336,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:337,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:340,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:340,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:341,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:342,1
    - Dst: strcat
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:343,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:344,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:345,1
    - Dst: av_close_input_file
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:352,1
    - Dst: avformat_close_input
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:354,1
    CyclomaticComplexity: 70
    EdgeCount: 70
    ICount: 107
    argCount: 2
    argNames:
    - plug
    - url
    argTypes:
    - GF_InputService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 223
    functionDepth: 2
    functionLinenumber: 223
    functionLinenumberEnd: 357
    functionName: FFD_CanHandleURL
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_opts_set_key
    - strcpy
    - gf_opts_get_key
    - ffd_parse_options
    - strcat
    - strrchr
    - av_find_input_format
    - sprintf
    - av_close_input_file
    - strlwr
    - open_file
    - strstr
    - strnicmp
    - av_guess_format
    - gf_malloc
    - strlen
    - gf_service_check_mime_register
    - av_find_stream_info
    - avformat_close_input
    - strcmp
    - guess_stream_format
    - gf_service_register_mime
    linkageType: ''
    returnType: Bool
    signature: Bool FFD_CanHandleURL(GF_InputService *plug, const char *url)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:363,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:384,1
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:385,1
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:392,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:393,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:394,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:395,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:396,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:397,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:398,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:400,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:401,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:402,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:404,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:406,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:407,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:425,1
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:426,1
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:439,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:440,1
    - Dst: GF_4CC
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:440,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:441,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:442,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:443,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:444,1
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:449,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:450,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:451,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:452,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:454,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:455,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:456,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:459,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:461,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:462,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 103
    argCount: 2
    argNames:
    - ffd
    - for_audio
    argTypes:
    - FFDemux*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 482
    functionName: FFD_GetESDescriptor
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_odf_desc_esd_new
    - memcpy
    - gf_bs_write_u16
    - gf_bs_get_content
    - gf_bs_del
    - gf_bs_write_data
    - gf_bs_write_u8
    - GF_4CC
    - gf_bs_write_u32
    - gf_malloc
    linkageType: ''
    returnType: GF_ESD
    signature: GF_ESD *FFD_GetESDescriptor(FFDemux *ffd, Bool for_audio)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_new
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:492,1
    - Dst: FFD_GetESDescriptor
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:493,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:496,1
    - Dst: gf_service_declare_media
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:497,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:500,1
    - Dst: FFD_GetESDescriptor
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:501,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:504,1
    - Dst: gf_service_declare_media
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:505,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - ffd
    argTypes:
    - FFDemux*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 485
    functionDepth: 2
    functionLinenumber: 485
    functionLinenumberEnd: 507
    functionName: FFD_SetupObjects
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c
    functionUses: 0
    functionsReached:
    - gf_service_declare_media
    - gf_odf_desc_new
    - gf_list_add
    - FFD_GetESDescriptor
    linkageType: ''
    returnType: void
    signature: void FFD_SetupObjects(FFDemux *ffd)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:521,1
    - Dst: gf_fwrite
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:523,1
    - Dst: gf_dm_sess_fetch_data
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:534,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:539,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:543,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:547,1
    - Dst: gf_error_to_string
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:547,1
    - Dst: gf_fwrite
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:556,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 40
    argCount: 3
    argNames:
    - h
    - buf
    - size
    argTypes:
    - void*
    - unsigned char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 510
    functionDepth: 1
    functionLinenumber: 510
    functionLinenumberEnd: 559
    functionName: ff_url_read
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c
    functionUses: 0
    functionsReached:
    - memcpy
    - GF_LOG
    - gf_sleep
    - gf_fwrite
    - gf_error_to_string
    - gf_dm_sess_fetch_data
    linkageType: ''
    returnType: int
    signature: int ff_url_read(void *h, unsigned char *buf, int size)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:578,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:578,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:579,1
    - Dst: strrchr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:580,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:585,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:586,1
    - Dst: ffd_parse_options
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:590,1
    - Dst: strrchr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:593,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:594,1
    - Dst: strlwr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:595,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:596,1
    - Dst: av_find_input_format
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:596,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:598,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:598,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:600,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:607,1
    - Dst: atoi
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:608,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:609,1
    - Dst: gf_fopen
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:611,1
    - Dst: init_put_byte
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:614,1
    - Dst: gf_service_download_new
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:620,1
    - Dst: gf_dm_sess_fetch_data
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:624,1
    - Dst: gf_dm_sess_get_cache_name
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:633,1
    - Dst: open_file
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:634,1
    - Dst: av_probe_input_format
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:639,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:641,1
    - Dst: avformat_open_input
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:647,1
    - Dst: av_open_input_stream
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:649,1
    - Dst: open_file
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:653,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:679,1
    - Dst: avformat_find_stream_info
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:682,1
    - Dst: av_find_stream_info
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:684,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:688,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:692,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:718,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:723,1
    - Dst: atoi
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:725,1
    - Dst: av_read_frame
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:737,1
    - Dst: av_seek_frame
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:744,1
    - Dst: av_close_input_file
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:747,1
    - Dst: avformat_close_input
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:749,1
    - Dst: open_file
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:752,1
    - Dst: av_find_stream_info
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:753,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:758,1
    - Dst: FFD_SetupObjects
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:759,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:764,1
    - Dst: gf_error_to_string
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:764,1
    - Dst: av_close_input_file
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:766,1
    - Dst: avformat_close_input
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:768,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:771,1
    CyclomaticComplexity: 61
    EdgeCount: 61
    ICount: 176
    argCount: 3
    argNames:
    - plug
    - serv
    - url
    argTypes:
    - GF_InputService*
    - GF_ClientService*
    - char*
    assertStmts:
    - condition: ( url && strlen(url) < 1024)
      pos:
        line_end: 577
        line_start: 577
        source_file: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c
    constantsTouched: []
    func_position:
      end: 773
      start: 563
    functionDepth: 3
    functionLinenumber: 563
    functionLinenumberEnd: 773
    functionName: FFD_ConnectService
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c
    functionUses: 0
    functionsReached:
    - avformat_find_stream_info
    - strcpy
    - gf_dm_sess_get_cache_name
    - gf_fopen
    - gf_opts_get_key
    - atoi
    - gf_service_connect_ack
    - ffd_parse_options
    - avformat_open_input
    - gf_service_download_new
    - strrchr
    - av_read_frame
    - av_find_input_format
    - av_close_input_file
    - strlwr
    - open_file
    - stricmp
    - init_put_byte
    - GF_LOG
    - assert
    - strstr
    - strnicmp
    - gf_error_to_string
    - gf_malloc
    - strlen
    - gf_dm_sess_fetch_data
    - av_seek_frame
    - av_open_input_stream
    - av_find_stream_info
    - avformat_close_input
    - strcmp
    - FFD_SetupObjects
    - av_probe_input_format
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FFD_ConnectService(GF_InputService *plug, GF_ClientService *serv,
      const char *url)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_new
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:793,1
    - Dst: FFD_GetESDescriptor
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:795,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:798,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:804,1
    - Dst: FFD_GetESDescriptor
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:806,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:809,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 3
    argNames:
    - plug
    - expect_type
    - sub_url
    argTypes:
    - GF_InputService*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 814
      start: 776
    functionDepth: 2
    functionLinenumber: 776
    functionLinenumberEnd: 814
    functionName: FFD_GetServiceDesc
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_new
    - gf_list_add
    - FFD_GetESDescriptor
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *FFD_GetServiceDesc(GF_InputService *plug, u32 expect_type,
      const char *sub_url)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: av_close_input_file
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:824,1
    - Dst: avformat_close_input
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:826,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:835,1
    - Dst: gf_service_download_del
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:838,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:841,1
    - Dst: gf_service_disconnect_ack
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:844,1
    - Dst: gf_fclose
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:846,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 1
    argNames:
    - plug
    argTypes:
    - GF_InputService*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 849
      start: 817
    functionDepth: 1
    functionLinenumber: 817
    functionLinenumberEnd: 849
    functionName: FFD_CloseService
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_service_disconnect_ack
    - gf_sleep
    - av_close_input_file
    - avformat_close_input
    - gf_service_download_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FFD_CloseService(GF_InputService *plug)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:862,1
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:866,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:886,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 4
    argNames:
    - plug
    - channel
    - url
    - upstream
    argTypes:
    - GF_InputService*
    - LPNETCHANNEL
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 888
      start: 851
    functionDepth: 0
    functionLinenumber: 851
    functionLinenumberEnd: 888
    functionName: FFD_ConnectChannel
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c
    functionUses: 0
    functionsReached:
    - gf_service_connect_ack
    - sscanf
    - strstr
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FFD_ConnectChannel(GF_InputService *plug, LPNETCHANNEL channel,
      const char *url, Bool upstream)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_service_disconnect_ack
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:906,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - plug
    - channel
    argTypes:
    - GF_InputService*
    - LPNETCHANNEL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 908
      start: 890
    functionDepth: 0
    functionLinenumber: 890
    functionLinenumberEnd: 908
    functionName: FFD_DisconnectChannel
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c
    functionUses: 0
    functionsReached:
    - gf_service_disconnect_ack
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FFD_DisconnectChannel(GF_InputService *plug, LPNETCHANNEL channel)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:940,1
    - Dst: gf_th_run
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:950,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:953,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 47
    argCount: 2
    argNames:
    - plug
    - com
    argTypes:
    - GF_InputService*
    - GF_NetworkCommand*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 967
      start: 910
    functionDepth: 0
    functionLinenumber: 910
    functionLinenumberEnd: 967
    functionName: FFD_ServiceCommand
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c
    functionUses: 0
    functionsReached:
    - gf_th_run
    - gf_mx_p
    - gf_mx_v
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FFD_ServiceCommand(GF_InputService *plug, GF_NetworkCommand
      *com)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_service_get_url
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:978,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:982,1
    - Dst: strrchr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:983,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:986,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:986,1
    - Dst: strrchr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:987,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:988,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:989,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 19
    argCount: 2
    argNames:
    - plug
    - url
    argTypes:
    - GF_InputService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 991
      start: 970
    functionDepth: 0
    functionLinenumber: 970
    functionLinenumberEnd: 991
    functionName: FFD_CanHandleURLInService
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c
    functionUses: 0
    functionsReached:
    - strrchr
    - gf_service_get_url
    - strcpy
    - strnicmp
    - stricmp
    - strlen
    linkageType: ''
    returnType: Bool
    signature: Bool FFD_CanHandleURLInService(GF_InputService *plug, const char *url)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:997,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:999,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:1001,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:1004,1
    - Dst: av_register_all
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:1006,1
    - Dst: avformat_network_init
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:1007,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:1008,1
    - Dst: gf_th_new
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:1021,1
    - Dst: gf_mx_new
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:1022,1
    - Dst: gf_th_del
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:1024,1
    - Dst: gf_mx_del
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:1025,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:1026,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:1030,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1033
      start: 993
    functionDepth: 1
    functionLinenumber: 993
    functionLinenumberEnd: 1033
    functionName: New_FFMPEG_Demux
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c
    functionUses: 1
    functionsReached:
    - gf_free
    - avformat_network_init
    - GF_SAFEALLOC
    - GF_LOG
    - gf_th_new
    - av_register_all
    - GF_REGISTER_MODULE_INTERFACE
    - gf_mx_new
    - gf_th_del
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void *New_FFMPEG_Demux()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_del
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:1044,1
    - Dst: gf_mx_del
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:1047,1
    - Dst: av_dict_free
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:1050,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:1053,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c:1056,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1057
      start: 1035
    functionDepth: 0
    functionLinenumber: 1035
    functionLinenumberEnd: 1057
    functionName: Delete_FFMPEG_Demux
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_demux.c
    functionUses: 1
    functionsReached:
    - av_dict_free
    - gf_free
    - gf_th_del
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void Delete_FFMPEG_Demux(void *ifce)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:58,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:59,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - oldBuffer
    - size
    argTypes:
    - uint8_t*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 63
    functionName: ffmpeg_realloc_buffer
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memset
    - gf_malloc
    linkageType: ''
    returnType: uint8_t
    signature: uint8_t * ffmpeg_realloc_buffer(uint8_t * oldBuffer, u32 size)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:70,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:70,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:72,1
    - Dst: avcodec_find_decoder_by_name
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:75,1
    - Dst: strupr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:77,1
    - Dst: avcodec_find_decoder_by_name
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:78,1
    - Dst: strlwr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:80,1
    - Dst: avcodec_find_decoder_by_name
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:81,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:84,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:84,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:85,1
    - Dst: avcodec_find_decoder_by_name
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:86,1
    - Dst: avcodec_find_decoder_by_name
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:87,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:89,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:89,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:89,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:90,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:90,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 1
    argNames:
    - codec_4cc
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 94
    functionName: ffmpeg_get_codec
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    functionUses: 0
    functionsReached:
    - avcodec_find_decoder
    - gf_4cc_to_str
    - avcodec_find_decoder_by_name
    - strcpy
    - strlwr
    - stricmp
    - strupr
    linkageType: ''
    returnType: AVCodec
    signature: AVCodec *ffmpeg_get_codec(u32 codec_4cc)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:102,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:108,1
    - Dst: ffmpeg_realloc_buffer
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:110,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:111,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:119,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:121,1
    - Dst: GF_4CC
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:122,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:124,1
    - Dst: ffmpeg_realloc_buffer
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:126,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:127,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:128,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:134,1
    - Dst: ffmpeg_realloc_buffer
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:136,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:137,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 5
    argNames:
    - ffd
    - bs
    - codec
    - ctx
    - from_ff_demux
    argTypes:
    - FFDec*
    - GF_BitStream*
    - AVCodec*
    - AVCodecContext*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 140
    functionName: FFDEC_LoadDSI
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_read_data
    - gf_bs_read_u32
    - GF_4CC
    - strcpy
    - ffmpeg_realloc_buffer
    - gf_bs_available
    linkageType: ''
    returnType: void
    signature: void FFDEC_LoadDSI(FFDec *ffd, GF_BitStream *bs, AVCodec *codec, AVCodecContext
      *ctx, Bool from_ff_demux)
  - BBCount: 88
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:166,1
    - Dst: avcodec_alloc_context3
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:185,1
    - Dst: avcodec_alloc_context
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:187,1
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:193,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:194,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:197,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:198,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:199,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:200,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:201,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:204,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:205,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:206,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:209,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:210,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:211,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:212,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:213,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:216,1
    - Dst: FFDEC_LoadDSI
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:217,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:218,1
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:222,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:223,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:226,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:227,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:228,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:229,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:230,1
    - Dst: GF_4CC
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:232,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:239,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:240,1
    - Dst: ffmpeg_get_codec
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:242,1
    - Dst: FFDEC_LoadDSI
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:244,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:245,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:326,1
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:333,1
    - Dst: FFDEC_LoadDSI
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:334,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:335,1
    - Dst: avcodec_get_context_defaults3
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:349,1
    - Dst: av_hwaccel_next
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:352,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:377,1
    - Dst: ffmpeg_realloc_buffer
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:392,1
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:394,1
    - Dst: avcodec_alloc_frame
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:403,1
    - Dst: av_frame_alloc
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:405,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:414,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:415,1
    - Dst: av_opt_set
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:415,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:416,1
    - Dst: av_opt_set
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:416,1
    - Dst: av_opt_set
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:418,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:419,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:421,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:424,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:427,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:428,1
    - Dst: atoi
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:431,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:434,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:436,1
    - Dst: fprintf
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:438,1
    - Dst: av_opt_set_int
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:439,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:444,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:445,1
    - Dst: atoi
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:446,1
    - Dst: strstr
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:454,1
    - Dst: avcodec_open2
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:457,1
    - Dst: avcodec_open
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:459,1
    - Dst: avcodec_alloc_frame
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:476,1
    - Dst: av_frame_alloc
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:478,1
    - Dst: AV_VERSION_INT
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:488,1
    - Dst: avcodec_alloc_frame
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:502,1
    - Dst: av_frame_alloc
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:504,1
    - Dst: av_init_packet
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:510,1
    - Dst: avcodec_decode_video2
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:513,1
    - Dst: avcodec_decode_video
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:516,1
    CyclomaticComplexity: 88
    EdgeCount: 88
    ICount: 310
    argCount: 2
    argNames:
    - plug
    - esd
    argTypes:
    - GF_BaseDecoder*
    - GF_ESD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 542
      start: 142
    functionDepth: 2
    functionLinenumber: 142
    functionLinenumberEnd: 542
    functionName: FFDEC_AttachStream
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    functionUses: 0
    functionsReached:
    - avcodec_find_decoder
    - av_opt_set
    - gf_opts_set_key
    - gf_bs_new
    - FFDEC_LoadDSI
    - avcodec_open2
    - avcodec_open
    - gf_opts_get_key
    - atoi
    - gf_bs_read_u16
    - fprintf
    - gf_sys_get_rti
    - gf_bs_read_u32
    - memcpy
    - av_frame_alloc
    - sprintf
    - AV_VERSION_INT
    - avcodec_alloc_frame
    - gf_m4v_get_config
    - avcodec_decode_video
    - GF_4CC
    - GF_LOG
    - avcodec_alloc_context
    - avcodec_alloc_context3
    - av_hwaccel_next
    - ffmpeg_get_codec
    - strstr
    - gf_bs_read_u8
    - gf_list_enum
    - av_opt_set_int
    - gf_bs_del
    - avcodec_decode_video2
    - strcmp
    - ffmpeg_realloc_buffer
    - avcodec_get_context_defaults3
    - av_init_packet
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FFDEC_AttachStream(GF_BaseDecoder *plug, GF_ESD *esd)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:572,1
    - Dst: avcodec_close
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:574,1
    - Dst: av_free
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:581,1
    - Dst: av_free
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:584,1
    - Dst: av_free
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:587,1
    - Dst: sws_freeContext
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:593,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 38
    argCount: 2
    argNames:
    - plug
    - ES_ID
    argTypes:
    - GF_BaseDecoder*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 599
      start: 544
    functionDepth: 0
    functionLinenumber: 544
    functionLinenumberEnd: 599
    functionName: FFDEC_DetachStream
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    functionUses: 0
    functionsReached:
    - gf_free
    - avcodec_close
    - av_free
    - sws_freeContext
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FFDEC_DetachStream(GF_BaseDecoder *plug, u16 ES_ID)
  - BBCount: 31
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 93
    argCount: 2
    argNames:
    - plug
    - capability
    argTypes:
    - GF_BaseDecoder*
    - GF_CodecCapability*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 601
    functionDepth: 0
    functionLinenumber: 601
    functionLinenumberEnd: 711
    functionName: FFDEC_GetCapabilities
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FFDEC_GetCapabilities(GF_BaseDecoder *plug, GF_CodecCapability
      *capability)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:716,1
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:717,1
    - Dst: avcodec_flush_buffers
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:722,1
    - Dst: avcodec_flush_buffers
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:723,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 2
    argNames:
    - plug
    - capability
    argTypes:
    - GF_BaseDecoder*
    - GF_CodecCapability
    assertStmts:
    - condition: (plug)
      pos:
        line_end: 715
        line_start: 715
        source_file: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    - condition: ( ffd )
      pos:
        line_end: 716
        line_start: 716
        source_file: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    constantsTouched: []
    func_position:
      end: 736
      start: 713
    functionDepth: 0
    functionLinenumber: 713
    functionLinenumberEnd: 736
    functionName: FFDEC_SetCapabilities
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    functionUses: 0
    functionsReached:
    - assert
    - avcodec_flush_buffers
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FFDEC_SetCapabilities(GF_BaseDecoder *plug, GF_CodecCapability
      capability)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 3
    argNames:
    - pix_fmt
    - out_pix_fmt
    - ffd
    argTypes:
    - u32
    - u32*
    - FFDec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 777
      start: 737
    functionDepth: 0
    functionLinenumber: 737
    functionLinenumberEnd: 777
    functionName: FFDEC_GetOutputPixelFromat
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FFDEC_GetOutputPixelFromat (u32 pix_fmt, u32 * out_pix_fmt,
      FFDec *ffd)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: av_init_packet
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:796,1
    - Dst: avcodec_decode_audio4
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:818,1
    - Dst: avcodec_decode_audio3
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:825,1
    - Dst: avcodec_decode_audio2
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:828,1
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:909,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:911,1
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:915,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 107
    argCount: 9
    argNames:
    - ffd
    - inBuffer
    - inBufferLength
    - ES_ID
    - CTS
    - outBuffer
    - outBufferLength
    - PaddingBits
    - mmlevel
    argTypes:
    - FFDec*
    - char*
    - u32
    - u16
    - u32*
    - char*
    - u32*
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 935
      start: 780
    functionDepth: 1
    functionLinenumber: 780
    functionLinenumberEnd: 935
    functionName: FFDEC_ProcessAudio
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    functionUses: 0
    functionsReached:
    - avcodec_decode_audio3
    - memcpy
    - GF_LOG
    - avcodec_decode_audio4
    - av_init_packet
    - avcodec_decode_audio2
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err FFDEC_ProcessAudio(FFDec *ffd,\n                                char
      *inBuffer, u32 inBufferLength,\n                                u16 ES_ID, u32
      *CTS,\n                                char *outBuffer, u32 *outBufferLength,\n
      \                               u8 PaddingBits, u32 mmlevel)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:971,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 9
    argNames:
    - ffd
    - inBuffer
    - inBufferLength
    - ES_ID
    - CTS
    - outBuffer
    - outBufferLength
    - PaddingBits
    - mmlevel
    argTypes:
    - FFDec*
    - char*
    - u32
    - u16
    - u32*
    - char*
    - u32*
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 977
      start: 938
    functionDepth: 0
    functionLinenumber: 938
    functionLinenumberEnd: 977
    functionName: FFDEC_ProcessRawVideo
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err FFDEC_ProcessRawVideo(FFDec *ffd,\n                                char
      *inBuffer, u32 inBufferLength,\n                                u16 ES_ID, u32
      *CTS,\n                                char *outBuffer, u32 *outBufferLength,\n
      \                               u8 PaddingBits, u32 mmlevel)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FFDEC_ProcessAudio
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1448,1
    - Dst: FFDEC_ProcessRawVideo
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1450,1
    - Dst: FFDEC_ProcessVideo
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1452,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 9
    argNames:
    - plug
    - inBuffer
    - inBufferLength
    - ES_ID
    - CTS
    - outBuffer
    - outBufferLength
    - PaddingBits
    - mmlevel
    argTypes:
    - GF_MediaDecoder*
    - char*
    - u32
    - u16
    - u32*
    - char*
    - u32*
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1454
      start: 1439
    functionDepth: 2
    functionLinenumber: 1439
    functionLinenumberEnd: 1454
    functionName: FFDEC_ProcessData
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    functionUses: 0
    functionsReached:
    - FFDEC_ProcessVideo
    - FFDEC_ProcessRawVideo
    - FFDEC_ProcessAudio
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err FFDEC_ProcessData(GF_MediaDecoder *plug,\n                                char
      *inBuffer, u32 inBufferLength,\n                                u16 ES_ID, u32
      *CTS,\n                                char *outBuffer, u32 *outBufferLength,\n
      \                               u8 PaddingBits, u32 mmlevel)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 5
    argNames:
    - ifcg
    - ES_ID
    - pY_or_RGB
    - pU
    - pV
    argTypes:
    - GF_MediaDecoder*
    - u16
    - u8**
    - u8**
    - u8**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1474
      start: 1457
    functionDepth: 0
    functionLinenumber: 1457
    functionLinenumberEnd: 1474
    functionName: FFDEC_GetOutputBuffer
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FFDEC_GetOutputBuffer(GF_MediaDecoder *ifcg, u16 ES_ID, u8 **pY_or_RGB,
      u8 **pU, u8 **pV)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: av_frame_free
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1488,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - frame
    argTypes:
    - GF_MediaDecoderFrame*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1489
      start: 1484
    functionDepth: 0
    functionLinenumber: 1484
    functionLinenumberEnd: 1489
    functionName: FFFrame_Release
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    functionUses: 0
    functionsReached:
    - av_frame_free
    linkageType: ''
    returnType: void
    signature: void FFFrame_Release(GF_MediaDecoderFrame *frame)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 4
    argNames:
    - frame
    - plane_idx
    - outPlane
    - outStride
    argTypes:
    - GF_MediaDecoderFrame*
    - u32
    - char**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1516
      start: 1491
    functionDepth: 0
    functionLinenumber: 1491
    functionLinenumberEnd: 1516
    functionName: FFFrame_GetPlane
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FFFrame_GetPlane(GF_MediaDecoderFrame *frame, u32 plane_idx,
      const char **outPlane, u32 *outStride)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1528,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1530,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1532,1
    - Dst: av_frame_clone
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1537,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 4
    argNames:
    - ifcg
    - ES_ID
    - frame
    - needs_resize
    argTypes:
    - GF_MediaDecoder*
    - u16
    - GF_MediaDecoderFrame**
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1549
      start: 1518
    functionDepth: 1
    functionLinenumber: 1518
    functionLinenumberEnd: 1549
    functionName: FFDEC_GetOutputFrame
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    functionUses: 0
    functionsReached:
    - gf_free
    - av_frame_clone
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FFDEC_GetOutputFrame(GF_MediaDecoder *ifcg, u16 ES_ID, GF_MediaDecoderFrame
      **frame, Bool *needs_resize)
  - BBCount: 52
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1574,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1575,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1576,1
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1580,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1581,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1583,1
    - Dst: GF_4CC
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1585,1
    - Dst: GF_4CC
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1588,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1610,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1615,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1630,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1637,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1639,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1647,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1684,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1689,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1695,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1702,1
    - Dst: ffmpeg_get_codec
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1717,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1722,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 131
    argCount: 4
    argNames:
    - plug
    - StreamType
    - esd
    - PL
    argTypes:
    - GF_BaseDecoder*
    - u32
    - GF_ESD*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1735
      start: 1552
    functionDepth: 2
    functionLinenumber: 1552
    functionLinenumberEnd: 1735
    functionName: FFDEC_CanHandleStream
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    functionUses: 0
    functionsReached:
    - avcodec_find_decoder
    - gf_list_get
    - gf_bs_read_u32
    - gf_bs_new
    - gf_odf_avc_cfg_del
    - gf_bs_del
    - gf_list_count
    - ffmpeg_get_codec
    - GF_4CC
    - gf_odf_avc_cfg_read
    linkageType: ''
    returnType: u32
    signature: u32 FFDEC_CanHandleStream(GF_BaseDecoder *plug, u32 StreamType, GF_ESD
      *esd, u8 PL)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1744,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - dec
    argTypes:
    - GF_BaseDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1748
      start: 1737
    functionDepth: 0
    functionLinenumber: 1737
    functionLinenumberEnd: 1748
    functionName: FFDEC_GetCodecName
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    functionUses: 0
    functionsReached:
    - sprintf
    linkageType: ''
    returnType: char
    signature: char *FFDEC_GetCodecName(GF_BaseDecoder *dec)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1756,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1758,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1760,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1766,1
    - Dst: avcodec_init
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1768,1
    - Dst: avcodec_register_all
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1770,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1771,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1785,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1787
      start: 1751
    functionDepth: 1
    functionLinenumber: 1751
    functionLinenumberEnd: 1787
    functionName: FFDEC_Load
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    functionUses: 1
    functionsReached:
    - gf_free
    - avcodec_init
    - GF_SAFEALLOC
    - GF_LOG
    - GF_REGISTER_MODULE_INTERFACE
    - avcodec_register_all
    linkageType: ''
    returnType: void
    signature: void *FFDEC_Load()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: avcodec_close
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1798,1
    - Dst: avcodec_close
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1800,1
    - Dst: sws_freeContext
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1803,1
    - Dst: sws_freeContext
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1805,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1808,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c:1810,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1811
      start: 1789
    functionDepth: 0
    functionLinenumber: 1789
    functionLinenumberEnd: 1811
    functionName: FFDEC_Delete
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/ffmpeg_in/ffmpeg_decode.c
    functionUses: 1
    functionsReached:
    - gf_free
    - avcodec_close
    - sws_freeContext
    linkageType: ''
    returnType: void
    signature: void FFDEC_Delete(void *ifce)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:63,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:64,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:65,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:68,1
    - Dst: atoi
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:69,1
    - Dst: gf_sk_new
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:73,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:76,1
    - Dst: gf_sk_bind
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:80,1
    - Dst: gf_sk_del
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:82,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:84,1
    - Dst: gf_sk_del
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:91,1
    - Dst: gf_sk_receive
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:95,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:98,1
    - Dst: strncmp
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:100,1
    - Dst: strncmp
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:100,1
    - Dst: strncmp
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:101,1
    - Dst: gf_term_scene_update
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:103,1
    - Dst: strncmp
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:107,1
    - Dst: sscanf
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:109,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:112,1
    - Dst: GF_NetControl*::term::compositor::video_out::on_event
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:129,1
    - Dst: GF_NetControl*::term::compositor::video_out::on_event
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:151,1
    - Dst: GF_NetControl*::term::compositor::video_out::on_event
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:155,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 93
    argCount: 3
    argNames:
    - termext
    - action
    - param
    argTypes:
    - GF_TermExt*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 159
    functionName: netctrl_process
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c
    functionUses: 0
    functionsReached:
    - gf_term_scene_update
    - gf_sk_bind
    - gf_sk_new
    - sscanf
    - gf_sk_receive
    - GF_LOG
    - gf_sk_del
    - memset
    - strncmp
    - strcmp
    - gf_opts_get_key
    - atoi
    - GF_NetControl*::term::compositor::video_out::on_event
    linkageType: ''
    returnType: Bool
    signature: Bool netctrl_process(GF_TermExt *termext, u32 action, void *param)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:166,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:167,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:168,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 174
    functionName: netctrl_new
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c
    functionUses: 0
    functionsReached:
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_TermExt
    signature: GF_TermExt *netctrl_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:181,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 183
    functionName: netctrl_delete
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void netctrl_delete(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 193
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: netctrl_new
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:198,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 195
    functionDepth: 2
    functionLinenumber: 195
    functionLinenumberEnd: 200
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c
    functionUses: 0
    functionsReached:
    - netctrl_new
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: netctrl_delete
      Src: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c:207,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 210
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/netctrl/netctrl.c
    functionUses: 0
    functionsReached:
    - netctrl_delete
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 5
    argNames:
    - af
    - in_block
    - in_block_size
    - out_block
    - out_block_size
    argTypes:
    - GF_AudioFilter*
    - void*
    - u32
    - void*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 75
    functionName: ProcessDistorsion
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ProcessDistorsion(GF_AudioFilter *af, void *in_block, u32 in_block_size,
      void *out_block, u32 *out_block_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - af
    - in_block
    - in_block_size
    - out_block
    - out_block_size
    argTypes:
    - GF_AudioFilter*
    - void*
    - u32
    - void*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 85
    functionName: ProcessIdentity
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ProcessIdentity(GF_AudioFilter *af, void *in_block, u32 in_block_size,
      void *out_block, u32 *out_block_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:94,1
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:98,1
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:100,1
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:104,1
    - Dst: memmove
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:105,1
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:117,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 24
    argCount: 5
    argNames:
    - af
    - in_block
    - in_block_size
    - out_block
    - out_block_size
    argTypes:
    - GF_AudioFilter*
    - void*
    - u32
    - void*
    - u32*
    assertStmts:
    - condition: (ctx->block_size==in_block_size)
      pos:
        line_end: 93
        line_start: 93
        source_file: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c
    constantsTouched: []
    func_position:
      end: 121
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 121
    functionName: ProcessDelai
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c
    functionUses: 0
    functionsReached:
    - memcpy
    - assert
    - memmove
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ProcessDelai(GF_AudioFilter *af, void *in_block, u32 in_block_size,
      void *out_block, u32 *out_block_size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:140,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:141,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:142,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:144,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:145,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:146,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 10
    argNames:
    - af
    - in_sr
    - in_bps
    - in_nb_ch
    - in_ch_cfg
    - out_nb_ch
    - out_ch_cfg
    - out_block_len_in_samples
    - delay_ms
    - inplace
    argTypes:
    - GF_AudioFilter*
    - u32
    - u32
    - u32
    - u32
    - u32*
    - u32*
    - u32*
    - u32*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 152
    functionName: Configure
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Configure(GF_AudioFilter *af, u32 in_sr, u32 in_bps, u32 in_nb_ch,
      u32 in_ch_cfg, u32 *out_nb_ch, u32 *out_ch_cfg, u32 *out_block_len_in_samples,
      u32 *delay_ms, Bool *inplace)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:160,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:167,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:171,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:177,1
    - Dst: strchr
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:192,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:195,1
    - Dst: atoi
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:195,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:196,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:197,1
    - Dst: atof
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:197,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:198,1
    - Dst: atof
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:198,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:199,1
    - Dst: atof
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:199,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:200,1
    - Dst: atoi
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:200,1
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:201,1
    - Dst: atof
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:202,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 60
    argCount: 2
    argNames:
    - af
    - filter
    argTypes:
    - GF_AudioFilter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 213
    functionName: SetFilter
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c
    functionUses: 0
    functionsReached:
    - atof
    - strnicmp
    - atoi
    - stricmp
    - strchr
    linkageType: ''
    returnType: Bool
    signature: Bool SetFilter(GF_AudioFilter *af, char *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - af
    - option
    - value
    argTypes:
    - GF_AudioFilter*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 219
    functionName: SetOption
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool SetOption(GF_AudioFilter *af, char *option, char *value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - af
    argTypes:
    - GF_AudioFilter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 222
    functionName: Reset
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Reset(GF_AudioFilter *af)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:229,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:232,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:234,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:244,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 246
    functionName: NewAudioFilter
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_REGISTER_MODULE_INTERFACE
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_BaseInterface
    signature: GF_BaseInterface *NewAudioFilter()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:253,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:254,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:255,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 248
    functionDepth: 0
    functionLinenumber: 248
    functionLinenumberEnd: 256
    functionName: DeleteAudioFilter
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DeleteAudioFilter(void *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 271
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NewAudioFilter
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 273
    functionDepth: 2
    functionLinenumber: 273
    functionLinenumberEnd: 279
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c
    functionUses: 0
    functionsReached:
    - NewAudioFilter
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DeleteAudioFilter
      Src: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c:285,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 281
    functionDepth: 1
    functionLinenumber: 281
    functionLinenumberEnd: 286
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/audio_filter/audio_filter.c
    functionUses: 0
    functionsReached:
    - DeleteAudioFilter
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - type
    argTypes:
    - GF_StencilType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 47
    functionName: gdip_new_stencil
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_STENCIL
    signature: GF_STENCIL gdip_new_stencil(GF_Raster2D *, GF_StencilType type)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:52,1
    - Dst: GdipDeleteBrush
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:53,1
    - Dst: GdipDeleteBrush
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:54,1
    - Dst: GdipDeleteBrush
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:55,1
    - Dst: GdipDeleteBrush
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:56,1
    - Dst: GdipDeletePath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:57,1
    - Dst: GdipDeleteMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:58,1
    - Dst: GdipDeleteMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:59,1
    - Dst: GdipDisposeImage
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:60,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:61,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:66,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 25
    argCount: 1
    argNames:
    - _this
    argTypes:
    - GF_STENCIL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 67
    functionName: gdip_delete_stencil
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    - GdipDisposeImage
    - GdipDeleteMatrix
    - GdipDeletePath
    - GdipDeleteBrush
    - GPSTEN
    linkageType: ''
    returnType: void
    signature: void gdip_delete_stencil(GF_STENCIL _this)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:71,1
    - Dst: GPMATRIX
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:72,1
    - Dst: GdipDeleteMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:73,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - _this
    - mat
    argTypes:
    - GF_STENCIL
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 76
    functionName: gdip_stencil_set_matrix
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp
    functionUses: 0
    functionsReached:
    - GPSTEN
    - GPMATRIX
    - GdipDeleteMatrix
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_stencil_set_matrix(GF_STENCIL _this, GF_Matrix2D *mat)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:81,1
    - Dst: CHECK_RET
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:82,1
    - Dst: GdipCreateSolidFill
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:84,1
    - Dst: GdipSetSolidFillColor
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - _this
    - c
    argTypes:
    - GF_STENCIL
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 89
    functionName: gdip_set_brush_color
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp
    functionUses: 0
    functionsReached:
    - CHECK_RET
    - GdipSetSolidFillColor
    - GPSTEN
    - GdipCreateSolidFill
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_set_brush_color(GF_STENCIL _this, GF_Color c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:95,1
    - Dst: CHECK2_RET
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - _this
    - mode
    argTypes:
    - GF_STENCIL
    - GF_GradientMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 100
    functionName: gdip_set_gradient_mode
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp
    functionUses: 0
    functionsReached:
    - GPSTEN
    - CHECK2_RET
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_set_gradient_mode(GF_STENCIL _this, GF_GradientMode mode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:105,1
    - Dst: CHECK_RET
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:106,1
    - Dst: GdipDeleteBrush
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:107,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:109,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:110,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:111,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:112,1
    - Dst: GdipCreateLineBrush
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:114,1
    - Dst: GdipCreateMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:115,1
    - Dst: GdipGetLineTransform
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:116,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 5
    argNames:
    - _this
    - start_x
    - start_y
    - end_x
    - end_y
    argTypes:
    - GF_STENCIL
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 119
    functionName: gdip_set_linear_gradient
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp
    functionUses: 0
    functionsReached:
    - GdipCreateLineBrush
    - GdipCreateMatrix
    - CHECK_RET
    - GdipGetLineTransform
    - GdipDeleteBrush
    - GPSTEN
    - FIX2FLT
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_set_linear_gradient (GF_STENCIL _this, Fixed start_x, Fixed
      start_y, Fixed end_x, Fixed end_y)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:126,1
    - Dst: GdipDeleteBrush
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:131,1
    - Dst: GdipCreateLineBrush
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:132,1
    - Dst: GdipSetLineWrapMode
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:137,1
    - Dst: GdipSetLinePresetBlend
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:138,1
    - Dst: GdipSetLineWrapMode
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:141,1
    - Dst: GdipSetLinePresetBlend
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:142,1
    - Dst: GdipCreateLineBrush
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:153,1
    - Dst: ARGB::ARGB
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:154,1
    - Dst: REAL::REAL
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:155,1
    - Dst: GdipSetLineWrapMode
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:174,1
    - Dst: GdipSetLinePresetBlend
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:175,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 44
    argCount: 1
    argNames:
    - _this
    argTypes:
    - GF_STENCIL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 179
    functionName: gdip_recompute_line_gradient
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp
    functionUses: 0
    functionsReached:
    - GdipCreateLineBrush
    - GdipSetLineWrapMode
    - REAL::REAL
    - GdipSetLinePresetBlend
    - GdipDeleteBrush
    - GPSTEN
    - ARGB::ARGB
    linkageType: ''
    returnType: void
    signature: void gdip_recompute_line_gradient(GF_STENCIL _this)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:190,1
    - Dst: GdipDeleteBrush
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:198,1
    - Dst: GdipDeleteBrush
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:202,1
    - Dst: GdipDeletePath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:206,1
    - Dst: GdipCreatePath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:210,1
    - Dst: GdipAddPathEllipse
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:215,1
    - Dst: GdipCreatePathGradientFromPath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:218,1
    - Dst: ARGB::ARGB
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:220,1
    - Dst: REAL::REAL
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:228,1
    - Dst: GdipSetPathGradientPresetBlend
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:234,1
    - Dst: GdipSetPathGradientCenterPoint
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:242,1
    - Dst: GdipCreateMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:245,1
    - Dst: GdipTranslateMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:246,1
    - Dst: GdipMultiplyMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:247,1
    - Dst: GdipSetTextureTransform
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:248,1
    - Dst: GdipDeleteMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:249,1
    - Dst: GdipCreateSolidFill
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:252,1
    - Dst: GdipResetPath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:253,1
    - Dst: GdipAddPathEllipse
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:254,1
    - Dst: GdipAddPathEllipse
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:260,1
    - Dst: GdipCreatePathGradientFromPath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:263,1
    - Dst: GdipDeletePath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:264,1
    - Dst: ARGB::ARGB
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:267,1
    - Dst: REAL::REAL
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:268,1
    - Dst: GdipSetPathGradientPresetBlend
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:290,1
    - Dst: GdipSetPathGradientCenterPoint
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:299,1
    - Dst: GdipCreateMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:302,1
    - Dst: GdipTranslateMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:303,1
    - Dst: GdipMultiplyMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:306,1
    - Dst: GdipSetTextureTransform
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:307,1
    - Dst: GdipDeleteMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:308,1
    - Dst: GdipSetPathGradientWrapMode
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:310,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 85
    argCount: 1
    argNames:
    - _this
    argTypes:
    - GF_STENCIL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 184
    functionDepth: 1
    functionLinenumber: 184
    functionLinenumberEnd: 312
    functionName: gdip_recompute_radial_gradient
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp
    functionUses: 0
    functionsReached:
    - GdipSetPathGradientPresetBlend
    - GdipCreatePathGradientFromPath
    - GdipCreateMatrix
    - GdipDeletePath
    - GdipSetTextureTransform
    - GdipDeleteMatrix
    - GdipCreateSolidFill
    - GdipSetPathGradientWrapMode
    - GdipMultiplyMatrix
    - REAL::REAL
    - ARGB::ARGB
    - GdipResetPath
    - GdipAddPathEllipse
    - GdipSetPathGradientCenterPoint
    - GdipTranslateMatrix
    - GdipDeleteBrush
    - GPSTEN
    - GdipCreatePath
    linkageType: ''
    returnType: void
    signature: void gdip_recompute_radial_gradient(GF_STENCIL _this)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:317,1
    - Dst: CHECK_RET
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:318,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:321,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:322,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:323,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:324,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:325,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 7
    argNames:
    - _this
    - cx
    - cy
    - fx
    - fy
    - x_radius
    - y_radius
    argTypes:
    - GF_STENCIL
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 314
    functionDepth: 1
    functionLinenumber: 314
    functionLinenumberEnd: 329
    functionName: gdip_set_radial_gradient
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp
    functionUses: 0
    functionsReached:
    - CHECK_RET
    - GPSTEN
    - FIX2FLT
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_set_radial_gradient(GF_STENCIL _this, Fixed cx, Fixed cy,
      Fixed fx, Fixed fy, Fixed x_radius, Fixed y_radius)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:335,1
    - Dst: ARGB::ARGB
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:341,1
    - Dst: REAL::REAL
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:342,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:343,1
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:344,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 4
    argNames:
    - _this
    - pos
    - col
    - count
    argTypes:
    - GF_STENCIL
    - Fixed*
    - GF_Color*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 331
    functionDepth: 1
    functionLinenumber: 331
    functionLinenumberEnd: 348
    functionName: gdip_set_gradient_interpolation
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp
    functionUses: 0
    functionsReached:
    - memcpy
    - REAL::REAL
    - GPSTEN
    - ARGB::ARGB
    - FIX2FLT
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_set_gradient_interpolation(GF_STENCIL _this, Fixed *pos,
      GF_Color *col, u32 count)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:354,1
    - Dst: CHECK_RET
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:356,1
    - Dst: gdip_create_path
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:357,1
    - Dst: GdipDeleteBrush
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:358,1
    - Dst: GdipCreatePathGradientFromPath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:359,1
    - Dst: GdipDeletePath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:360,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - _this
    - path
    argTypes:
    - GF_STENCIL
    - GF_Path*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 351
    functionDepth: 1
    functionLinenumber: 351
    functionLinenumberEnd: 362
    functionName: gdip_set_vertex_path
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp
    functionUses: 0
    functionsReached:
    - GdipCreatePathGradientFromPath
    - GdipDeletePath
    - gdip_create_path
    - CHECK_RET
    - GdipDeleteBrush
    - GPSTEN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_set_vertex_path(GF_STENCIL _this, GF_Path *path)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:368,1
    - Dst: CHECK_RET
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:369,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:372,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:373,1
    - Dst: GdipSetPathGradientCenterPoint
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:375,1
    - Dst: GdipSetPathGradientCenterColor
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:376,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - _this
    - cx
    - cy
    - color
    argTypes:
    - GF_STENCIL
    - Fixed
    - Fixed
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 364
    functionDepth: 1
    functionLinenumber: 364
    functionLinenumberEnd: 378
    functionName: gdip_set_vertex_center
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp
    functionUses: 0
    functionsReached:
    - CHECK_RET
    - FIX2FLT
    - GdipSetPathGradientCenterPoint
    - GPSTEN
    - GdipSetPathGradientCenterColor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_set_vertex_center (GF_STENCIL _this, Fixed cx, Fixed cy,
      u32 color)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:384,1
    - Dst: CHECK_RET
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:385,1
    - Dst: GdipSetPathGradientSurroundColorsWithCount
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp:389,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - _this
    - colors
    - nbCol
    argTypes:
    - GF_STENCIL
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 380
    functionDepth: 1
    functionLinenumber: 380
    functionLinenumberEnd: 391
    functionName: gdip_set_vertex_colors
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp
    functionUses: 0
    functionsReached:
    - CHECK_RET
    - GdipSetPathGradientSurroundColorsWithCount
    - GPSTEN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_set_vertex_colors (GF_STENCIL _this, u32 *colors, u32 nbCol)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - driver
    argTypes:
    - GF_Raster2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 407
      start: 394
    functionDepth: 0
    functionLinenumber: 394
    functionLinenumberEnd: 407
    functionName: gdip_init_driver_grad
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_grad.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gdip_init_driver_grad(GF_Raster2D *driver)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GdipCreatePath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:65,1
    - Dst: GdipSetPathFillMode
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:67,1
    - Dst: GdipStartPathFigure
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:72,1
    - Dst: GdipAddPathLine
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:76,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:76,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:76,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:76,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:76,1
    - Dst: GdipAddPathLine
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:80,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:80,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:80,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:80,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:80,1
    - Dst: GdipAddPathBezier
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:84,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:85,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:85,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:86,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:86,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:87,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:87,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:88,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:88,1
    - Dst: GdipAddPathBezier
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:102,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:103,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:103,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:104,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:104,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:105,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:105,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:106,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:106,1
    - Dst: GdipClosePathFigure
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:113,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 41
    argCount: 1
    argNames:
    - _this
    argTypes:
    - GF_Path*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 117
    functionName: gdip_create_path
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    functionUses: 1
    functionsReached:
    - GdipSetPathFillMode
    - GdipAddPathBezier
    - GdipStartPathFigure
    - GdipClosePathFigure
    - GdipAddPathLine
    - GdipCreatePath
    - FIX2FLT
    linkageType: ''
    returnType: GpPath
    signature: GpPath *gdip_create_path(GF_Path *_this)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 120
    functionName: GPGRAPH
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GPGRAPH()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - center_coords
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 128
    functionName: gdip_new_surface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_SURFACE
    signature: GF_SURFACE gdip_new_surface(GF_Raster2D *, Bool center_coords)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GPGRAPH
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:133,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - _this
    argTypes:
    - GF_SURFACE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 135
    functionName: gdip_delete_surface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    - GPGRAPH
    linkageType: ''
    returnType: void
    signature: void gdip_delete_surface(GF_SURFACE _this)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GPGRAPH
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:145,1
    - Dst: GdipCreateFromHDC
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:148,1
    - Dst: GdipCreateMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:150,1
    - Dst: GdipScaleMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:152,1
    - Dst: GdipTranslateMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:153,1
    - Dst: GdipSetWorldTransform
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:155,1
    - Dst: GdipDeleteMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:156,1
    - Dst: GdipSetPixelOffsetMode
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:159,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 4
    argNames:
    - _this
    - os_handle
    - width
    - height
    argTypes:
    - GF_SURFACE
    - void*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 161
    functionName: gdip_attach_surface_to_device
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    functionUses: 0
    functionsReached:
    - GdipCreateMatrix
    - GdipDeleteMatrix
    - GdipCreateFromHDC
    - GdipScaleMatrix
    - GdipSetPixelOffsetMode
    - GdipTranslateMatrix
    - GPGRAPH
    - GdipSetWorldTransform
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_attach_surface_to_device(GF_SURFACE _this, void *os_handle,
      u32 width, u32 height)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GPGRAPH
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:167,1
    - Dst: GdipGetImageGraphicsContext
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:170,1
    - Dst: GdipCreateMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:173,1
    - Dst: GdipScaleMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:174,1
    - Dst: GdipTranslateMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:175,1
    - Dst: GdipSetWorldTransform
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:176,1
    - Dst: GdipDeleteMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:177,1
    - Dst: GdipSetPixelOffsetMode
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:181,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - _this
    - sten
    argTypes:
    - GF_SURFACE
    - GF_STENCIL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 183
    functionName: gdip_attach_surface_to_texture
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    functionUses: 0
    functionsReached:
    - GdipGetImageGraphicsContext
    - GdipCreateMatrix
    - GdipDeleteMatrix
    - GdipSetPixelOffsetMode
    - GdipScaleMatrix
    - GdipTranslateMatrix
    - GPGRAPH
    - GdipSetWorldTransform
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_attach_surface_to_texture(GF_SURFACE _this, GF_STENCIL
      sten)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: GPGRAPH
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:189,1
    - Dst: GdipCreateBitmapFromScan0
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:221,1
    - Dst: GdipGetImageGraphicsContext
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:222,1
    - Dst: GdipCreateMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:227,1
    - Dst: GdipScaleMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:228,1
    - Dst: GdipTranslateMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:229,1
    - Dst: GdipSetWorldTransform
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:230,1
    - Dst: GdipDeleteMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:231,1
    - Dst: GdipSetPixelOffsetMode
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:233,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 51
    argCount: 7
    argNames:
    - _this
    - pixels
    - width
    - height
    - pitch_x
    - pitch_y
    - pixelFormat
    argTypes:
    - GF_SURFACE
    - char*
    - u32
    - u32
    - s32
    - s32
    - GF_PixelFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 184
    functionDepth: 1
    functionLinenumber: 184
    functionLinenumberEnd: 235
    functionName: gdip_attach_surface_to_buffer
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    functionUses: 0
    functionsReached:
    - GdipGetImageGraphicsContext
    - GdipCreateMatrix
    - GdipDeleteMatrix
    - GdipSetPixelOffsetMode
    - GdipScaleMatrix
    - GdipTranslateMatrix
    - GdipCreateBitmapFromScan0
    - GPGRAPH
    - GdipSetWorldTransform
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_attach_surface_to_buffer(GF_SURFACE _this, char *pixels,
      u32 width, u32 height, s32 pitch_x, s32 pitch_y, GF_PixelFormat pixelFormat)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GPGRAPH
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:240,1
    - Dst: GdipDeleteGraphics
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:241,1
    - Dst: GdipDeletePath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:243,1
    - Dst: GdipDisposeImage
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:245,1
    - Dst: GdipDeletePath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:247,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - _this
    argTypes:
    - GF_SURFACE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 237
    functionDepth: 1
    functionLinenumber: 237
    functionLinenumberEnd: 249
    functionName: gdip_detach_surface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    functionUses: 0
    functionsReached:
    - GdipDeletePath
    - GPGRAPH
    - GdipDisposeImage
    - GdipDeleteGraphics
    linkageType: ''
    returnType: void
    signature: void gdip_detach_surface(GF_SURFACE _this)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GPGRAPH
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:255,1
    - Dst: GdipSetSmoothingMode
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:258,1
    - Dst: GdipSetCompositingQuality
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:259,1
    - Dst: GdipSetSmoothingMode
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:262,1
    - Dst: GdipSetCompositingQuality
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:263,1
    - Dst: GdipSetSmoothingMode
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:266,1
    - Dst: GdipSetCompositingQuality
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:267,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - _this
    - RasterSetting
    argTypes:
    - GF_SURFACE
    - GF_RasterLevel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 273
    functionName: gdip_surface_set_raster_level
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    functionUses: 0
    functionsReached:
    - GPGRAPH
    - GdipSetSmoothingMode
    - GdipSetCompositingQuality
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_surface_set_raster_level(GF_SURFACE _this, GF_RasterLevel
      RasterSetting)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GPGRAPH
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:277,1
    - Dst: GdipDeleteMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:278,1
    - Dst: mat_gpac_to_gdip
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:280,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - _this
    - mat
    argTypes:
    - GF_SURFACE
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 274
    functionDepth: 1
    functionLinenumber: 274
    functionLinenumberEnd: 282
    functionName: gdip_surface_set_matrix
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    functionUses: 0
    functionsReached:
    - GPGRAPH
    - mat_gpac_to_gdip
    - GdipDeleteMatrix
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_surface_set_matrix(GF_SURFACE _this, GF_Matrix2D * mat)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GPGRAPH
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:286,1
    - Dst: GdipDeletePath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:287,1
    - Dst: GdipCreatePath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:291,1
    - Dst: GdipAddPathRectangleI
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:292,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - _this
    - rc
    argTypes:
    - GF_SURFACE
    - GF_IRect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 283
    functionDepth: 1
    functionLinenumber: 283
    functionLinenumberEnd: 294
    functionName: gdip_surface_set_clipper
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    functionUses: 0
    functionsReached:
    - GdipDeletePath
    - GPGRAPH
    - GdipAddPathRectangleI
    - GdipCreatePath
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_surface_set_clipper(GF_SURFACE _this, GF_IRect *rc)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - _sten
    argTypes:
    - struct _stencil*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 296
    functionDepth: 0
    functionLinenumber: 296
    functionLinenumberEnd: 304
    functionName: gdip_get_brush
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GpBrush
    signature: GpBrush *gdip_get_brush(struct _stencil *_sten)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gdip_create_path
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:308,1
    - Dst: GdipTransformPath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:310,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - _this
    - path
    argTypes:
    - struct _graphics*
    - GF_Path*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 306
    functionDepth: 2
    functionLinenumber: 306
    functionLinenumberEnd: 312
    functionName: gdip_setup_path
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    functionUses: 0
    functionsReached:
    - gdip_create_path
    - GdipTransformPath
    linkageType: ''
    returnType: GpPath
    signature: GpPath *gdip_setup_path(struct _graphics *_this, GF_Path *path)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GPGRAPH
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:318,1
    - Dst: GdipDeletePath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:320,1
    - Dst: gdip_setup_path
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:325,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - _this
    - path
    argTypes:
    - GF_SURFACE
    - GF_Path*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 314
    functionDepth: 3
    functionLinenumber: 314
    functionLinenumberEnd: 327
    functionName: gdip_surface_set_path
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    functionUses: 0
    functionsReached:
    - GdipDeletePath
    - GPGRAPH
    - gdip_setup_path
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_surface_set_path(GF_SURFACE _this, GF_Path *path)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: GPGRAPH
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:337,1
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:341,1
    - Dst: GdipSetClipPath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:348,1
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:352,1
    - Dst: GdipFillPath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:353,1
    - Dst: gdip_recompute_line_gradient
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:358,1
    - Dst: GdipResetTextureTransform
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:360,1
    - Dst: GdipCloneMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:362,1
    - Dst: GdipCreateMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:364,1
    - Dst: GdipMultiplyMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:366,1
    - Dst: GdipSetTextureTransform
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:367,1
    - Dst: GdipDeleteMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:368,1
    - Dst: GdipFillPath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:370,1
    - Dst: gdip_recompute_radial_gradient
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:374,1
    - Dst: GdipSetCompositingQuality
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:376,1
    - Dst: GdipSetInterpolationMode
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:377,1
    - Dst: GdipSetSmoothingMode
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:378,1
    - Dst: GdipClonePath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:383,1
    - Dst: GdipTransformPath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:384,1
    - Dst: GdipSetClipPath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:385,1
    - Dst: GdipFillPath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:386,1
    - Dst: GdipDeletePath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:387,1
    - Dst: GdipResetClip
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:388,1
    - Dst: GdipSetClipPath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:389,1
    - Dst: GdipFillPath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:391,1
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:394,1
    - Dst: GdipSetTextureTransform
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:395,1
    - Dst: GdipFillPath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:396,1
    - Dst: gdip_load_texture
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:399,1
    - Dst: GdipResetTextureTransform
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:402,1
    - Dst: GdipCloneMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:404,1
    - Dst: GdipCreateMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:406,1
    - Dst: GdipScaleMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:410,1
    - Dst: GdipScaleMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:412,1
    - Dst: GdipSetTextureTransform
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:414,1
    - Dst: GdipDeleteMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:415,1
    - Dst: GdipSetInterpolationMode
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:417,1
    - Dst: GdipFillPath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:418,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 75
    argCount: 2
    argNames:
    - _this
    - stencil
    argTypes:
    - GF_SURFACE
    - GF_STENCIL
    assertStmts:
    - condition: (_sten->pRadial)
      pos:
        line_end: 393
        line_start: 393
        source_file: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    - condition: (_sten->pSolid)
      pos:
        line_end: 351
        line_start: 351
        source_file: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    - condition: (_sten)
      pos:
        line_end: 340
        line_start: 340
        source_file: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    constantsTouched: []
    func_position:
      end: 423
      start: 331
    functionDepth: 2
    functionLinenumber: 331
    functionLinenumberEnd: 423
    functionName: gdip_surface_fill
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    functionUses: 0
    functionsReached:
    - GdipDeletePath
    - GdipSetSmoothingMode
    - GdipMultiplyMatrix
    - gdip_recompute_line_gradient
    - GdipSetClipPath
    - gdip_load_texture
    - GdipResetClip
    - GdipSetTextureTransform
    - GdipSetInterpolationMode
    - GdipSetCompositingQuality
    - gdip_recompute_radial_gradient
    - GdipResetTextureTransform
    - GdipCloneMatrix
    - assert
    - GdipScaleMatrix
    - GdipTransformPath
    - GdipClonePath
    - GdipCreateMatrix
    - GdipDeleteMatrix
    - GdipFillPath
    - GPGRAPH
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_surface_fill(GF_SURFACE _this, GF_STENCIL stencil)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GPGRAPH
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:429,1
    - Dst: GdipFlush
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:430,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - _this
    argTypes:
    - GF_SURFACE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 426
    functionDepth: 1
    functionLinenumber: 426
    functionLinenumberEnd: 432
    functionName: gdip_surface_flush
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    functionUses: 0
    functionsReached:
    - GPGRAPH
    - GdipFlush
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_surface_flush(GF_SURFACE _this)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GPGRAPH
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:438,1
    - Dst: GdipCreatePath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:440,1
    - Dst: GdipAddPathRectangleI
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:443,1
    - Dst: GdipAddPathRectangleI
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:448,1
    - Dst: GdipSetClipPath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:452,1
    - Dst: GdipGraphicsClear
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:453,1
    - Dst: GdipDeletePath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:454,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - _this
    - rc
    - color
    argTypes:
    - GF_SURFACE
    - GF_IRect*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 434
    functionDepth: 1
    functionLinenumber: 434
    functionLinenumberEnd: 456
    functionName: gdip_surface_clear
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    functionUses: 0
    functionsReached:
    - GdipDeletePath
    - GPGRAPH
    - GdipGraphicsClear
    - GdipAddPathRectangleI
    - GdipCreatePath
    - GdipSetClipPath
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_surface_clear(GF_SURFACE _this, GF_IRect *rc, u32 color)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - driver
    argTypes:
    - GF_Raster2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 458
    functionDepth: 0
    functionLinenumber: 458
    functionLinenumberEnd: 473
    functionName: gdip_init_driver_surface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gdip_init_driver_surface(GF_Raster2D *driver)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:482,1
    - Dst: GdiplusStartup
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:483,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:485,1
    - Dst: gdip_init_driver_texture
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:486,1
    - Dst: gdip_init_driver_surface
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:487,1
    - Dst: gdip_init_driver_grad
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:488,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 476
    functionDepth: 1
    functionLinenumber: 476
    functionLinenumberEnd: 490
    functionName: gdip_LoadRenderer
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    functionUses: 0
    functionsReached:
    - gdip_init_driver_grad
    - gdip_init_driver_surface
    - GdiplusStartup
    - gdip_init_driver_texture
    - SAFEALLOC
    - GF_REGISTER_MODULE_INTERFACE
    linkageType: ''
    returnType: GF_Raster2D
    signature: GF_Raster2D *gdip_LoadRenderer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GdiplusShutdown
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:496,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:497,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp:498,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - driver
    argTypes:
    - GF_Raster2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 492
    functionDepth: 0
    functionLinenumber: 492
    functionLinenumberEnd: 499
    functionName: gdip_ShutdownRenderer
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_rend.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    - GdiplusShutdown
    linkageType: ''
    returnType: void
    signature: void gdip_ShutdownRenderer(GF_Raster2D *driver)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:41,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:42,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:43,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:44,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:45,1
    - Dst: strcpy
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_FontReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 49
    functionName: gdip_init_font_engine
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp
    functionUses: 0
    functionsReached:
    - strcpy
    - gf_opts_get_key
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_init_font_engine(GF_FontReader *dr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GdipDeleteFontFamily
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_FontReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 59
    functionName: gdip_shutdown_font_engine
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp
    functionUses: 0
    functionsReached:
    - GdipDeleteFontFamily
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_shutdown_font_engine(GF_FontReader *dr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:72,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:81,1
    - Dst: gf_utf8_reorder_bidi
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:88,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 6
    argNames:
    - dr
    - utf_string
    - glyph_buffer
    - io_glyph_buffer_size
    - xml_lang
    - is_rtl
    argTypes:
    - GF_FontReader*
    - char*
    - u32*
    - u32*
    - char*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 95
    functionName: gdip_get_glyphs
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp
    functionUses: 0
    functionsReached:
    - gf_utf8_reorder_bidi
    - gf_utf8_mbstowcs
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_get_glyphs(GF_FontReader *dr, const char *utf_string, u32
      *glyph_buffer, u32 *io_glyph_buffer_size, const char *xml_lang, Bool *is_rtl)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:106,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - string
    - width
    - whiteSpaceWidth
    argTypes:
    - unsigned short*
    - Float*
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 114
    functionName: adjust_white_space
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp
    functionUses: 0
    functionsReached:
    - gf_utf8_wcslen
    linkageType: ''
    returnType: void
    signature: void adjust_white_space(const unsigned short *string, Float *width,
      Float whiteSpaceWidth)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GdipCreateStringFormat
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:124,1
    - Dst: GdipCreatePath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:125,1
    - Dst: GdipAddPathString
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:129,1
    - Dst: GdipGetPathWorldBounds
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:131,1
    - Dst: adjust_white_space
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:133,1
    - Dst: FLT2FIX
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:134,1
    - Dst: FLT2FIX
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:135,1
    - Dst: GdipDeleteStringFormat
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:137,1
    - Dst: GdipDeletePath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 4
    argNames:
    - dr
    - string
    - width
    - height
    argTypes:
    - GF_FontReader*
    - unsigned short*
    - Fixed*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 116
    functionDepth: 2
    functionLinenumber: 116
    functionLinenumberEnd: 141
    functionName: gdip_get_text_size
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - adjust_white_space
    - GdipDeletePath
    - GdipAddPathString
    - GdipGetPathWorldBounds
    - GdipDeleteStringFormat
    - GdipCreateStringFormat
    - GdipCreatePath
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_get_text_size(GF_FontReader *dr, const unsigned short *string,
      Fixed *width, Fixed *height)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: GdipDeleteFontFamily
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:148,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:151,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:153,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:154,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:154,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:155,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:156,1
    - Dst: stricmp
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:156,1
    - Dst: MultiByteToWideChar
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:158,1
    - Dst: strlen
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:158,1
    - Dst: GdipCreateFontFamilyFromName
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:162,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 28
    argCount: 3
    argNames:
    - dr
    - fontName
    - styles
    argTypes:
    - GF_FontReader*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 173
    functionName: gdip_set_font
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp
    functionUses: 0
    functionsReached:
    - MultiByteToWideChar
    - stricmp
    - GdipCreateFontFamilyFromName
    - GdipDeleteFontFamily
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_set_font(GF_FontReader *dr, const char *fontName, u32 styles)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GdipGetEmHeight
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:184,1
    - Dst: GdipGetCellAscent
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:186,1
    - Dst: GdipGetCellDescent
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:189,1
    - Dst: GdipGetLineSpacing
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:194,1
    - Dst: gdip_get_text_size
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:204,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:205,1
    - Dst: gdip_get_text_size
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:211,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:212,1
    - Dst: MAX
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:214,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 9
    argNames:
    - dr
    - font_name
    - em_size
    - ascent
    - descent
    - underline
    - line_spacing
    - max_advance_h
    - max_advance_v
    argTypes:
    - GF_FontReader*
    - char**
    - u32*
    - s32*
    - s32*
    - s32*
    - s32*
    - s32*
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 175
    functionDepth: 3
    functionLinenumber: 175
    functionLinenumberEnd: 216
    functionName: gdip_get_font_info
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp
    functionUses: 0
    functionsReached:
    - gdip_get_text_size
    - GdipGetCellDescent
    - GdipGetCellAscent
    - MAX
    - GdipGetLineSpacing
    - FIX2FLT
    - GdipGetEmHeight
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_get_font_info(GF_FontReader *dr, char **font_name, u32
      *em_size, s32 *ascent, s32 *descent, s32 *underline, s32 *line_spacing, s32
      *max_advance_h, s32 *max_advance_v)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GdipCreateStringFormat
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:238,1
    - Dst: GdipSetStringFormatAlign
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:239,1
    - Dst: GdipCreatePath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:240,1
    - Dst: GdipAddPathString
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:251,1
    - Dst: GdipGetPathWorldBounds
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:252,1
    - Dst: GdipResetPath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:256,1
    - Dst: GdipAddPathString
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:262,1
    - Dst: GdipGetPathWorldBounds
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:264,1
    - Dst: GdipCreateMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:267,1
    - Dst: GdipTranslateMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:268,1
    - Dst: GdipScaleMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:269,1
    - Dst: GdipTransformPath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:270,1
    - Dst: GdipDeleteMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:271,1
    - Dst: GdipGetPointCount
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:276,1
    - Dst: GpPointF::GpPointF
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:277,1
    - Dst: BYTE::BYTE
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:278,1
    - Dst: GdipGetPathTypes
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:279,1
    - Dst: GdipGetPathPoints
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:280,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:282,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:283,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:292,1
    - Dst: FLT2FIX
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:292,1
    - Dst: FLT2FIX
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:292,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:296,1
    - Dst: FLT2FIX
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:296,1
    - Dst: FLT2FIX
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:296,1
    - Dst: gf_path_close
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:298,1
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:303,1
    - Dst: gf_path_add_cubic_to
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:304,1
    - Dst: FLT2FIX
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:304,1
    - Dst: FLT2FIX
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:304,1
    - Dst: FLT2FIX
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:304,1
    - Dst: FLT2FIX
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:304,1
    - Dst: FLT2FIX
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:304,1
    - Dst: FLT2FIX
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:304,1
    - Dst: gf_path_close
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:306,1
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:310,1
    - Dst: GdipDeleteStringFormat
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:317,1
    - Dst: GdipDeletePath
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:318,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:324,1
    - Dst: FIX2INT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:325,1
    - Dst: FIX2INT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:326,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 70
    argCount: 2
    argNames:
    - dr
    - glyph_name
    argTypes:
    - GF_FontReader*
    - u32
    assertStmts:
    - condition: (0)
      pos:
        line_end: 309
        line_start: 309
        source_file: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp
    - condition: (i+2<=count)
      pos:
        line_end: 302
        line_start: 302
        source_file: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp
    constantsTouched: []
    func_position:
      end: 328
      start: 220
    functionDepth: 1
    functionLinenumber: 220
    functionLinenumberEnd: 328
    functionName: gdip_load_glyph
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp
    functionUses: 0
    functionsReached:
    - GdipGetPointCount
    - GF_SAFEALLOC
    - GdipDeletePath
    - gf_path_add_move_to
    - GdipGetPathTypes
    - gf_path_close
    - BYTE::BYTE
    - GdipGetPathPoints
    - GdipAddPathString
    - GdipResetPath
    - GpPointF::GpPointF
    - GdipCreateStringFormat
    - gf_path_add_cubic_to
    - FLT2FIX
    - GdipSetStringFormatAlign
    - assert
    - GdipScaleMatrix
    - GdipTransformPath
    - GdipDeleteStringFormat
    - GdipCreatePath
    - GdipCreateMatrix
    - GdipDeleteMatrix
    - FIX2INT
    - GdipGetPathWorldBounds
    - GdipTranslateMatrix
    - gf_path_add_line_to
    - gf_path_get_bounds
    linkageType: ''
    returnType: GF_Glyph
    signature: GF_Glyph *gdip_load_glyph(GF_FontReader *dr, u32 glyph_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:339,1
    - Dst: SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:340,1
    - Dst: GdiplusStartup
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:341,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:343,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 333
    functionDepth: 1
    functionLinenumber: 333
    functionLinenumberEnd: 353
    functionName: gdip_new_font_driver
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp
    functionUses: 0
    functionsReached:
    - GF_REGISTER_MODULE_INTERFACE
    - SAFEALLOC
    - GdiplusStartup
    linkageType: ''
    returnType: GF_FontReader
    signature: GF_FontReader *gdip_new_font_driver()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GdiplusShutdown
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:358,1
    - Dst: GdipDeleteFontFamily
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:360,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:363,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:364,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_FontReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 355
    functionDepth: 0
    functionLinenumber: 355
    functionLinenumberEnd: 365
    functionName: gdip_delete_font_driver
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    - GdipDeleteFontFamily
    - GdiplusShutdown
    linkageType: ''
    returnType: void
    signature: void gdip_delete_font_driver(GF_FontReader *dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 380
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gdip_new_font_driver
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:385,1
    - Dst: gdip_LoadRenderer
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:386,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 382
    functionDepth: 2
    functionLinenumber: 382
    functionLinenumberEnd: 388
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp
    functionUses: 0
    functionsReached:
    - gdip_new_font_driver
    - gdip_LoadRenderer
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gdip_delete_font_driver
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:395,1
    - Dst: gdip_ShutdownRenderer
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp:398,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 390
    functionDepth: 1
    functionLinenumber: 390
    functionLinenumberEnd: 401
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_font.cpp
    functionUses: 0
    functionsReached:
    - gdip_delete_font_driver
    - gdip_ShutdownRenderer
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 30
    functionName: COL_565
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: COL_565(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 31
    functionName: COL_555
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: COL_555(c)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:41,1
    - Dst: CHECK_RET
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:42,1
    - Dst: gdip_cmat_reset
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:44,1
    - Dst: GdipDisposeImage
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:109,1
    - Dst: GdipCreateBitmapFromScan0
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:127,1
    - Dst: GdipCreateBitmapFromScan0
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:133,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:140,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:145,1
    - Dst: COL_555
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:150,1
    - Dst: COL_565
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:155,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:164,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:166,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:177,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:184,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:187,1
    - Dst: GdipBitmapSetPixel
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:190,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 146
    argCount: 8
    argNames:
    - _this
    - pixels
    - width
    - height
    - stride
    - pixelFormat
    - destination_format_hint
    - no_copy
    argTypes:
    - GF_STENCIL
    - char*
    - u32
    - u32
    - u32
    - GF_PixelFormat
    - GF_PixelFormat
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 196
    functionName: gdip_set_texture
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp
    functionUses: 0
    functionsReached:
    - GdipDisposeImage
    - COL_555
    - CHECK_RET
    - GdipBitmapSetPixel
    - GF_COL_ARGB
    - gdip_cmat_reset
    - COL_565
    - GdipCreateBitmapFromScan0
    - GPSTEN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_set_texture(GF_STENCIL _this, char *pixels, u32 width,
      u32 height, u32 stride, GF_PixelFormat pixelFormat, GF_PixelFormat destination_format_hint,
      Bool no_copy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - _this
    - mode
    argTypes:
    - GF_STENCIL
    - GF_TextureTiling
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 198
    functionDepth: 1
    functionLinenumber: 198
    functionLinenumberEnd: 204
    functionName: gdip_set_texture_repeat_mode
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp
    functionUses: 0
    functionsReached:
    - GPSTEN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_set_texture_repeat_mode(GF_STENCIL _this, GF_TextureTiling
      mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:209,1
    - Dst: CHECK_RET
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - _this
    - filter_mode
    argTypes:
    - GF_STENCIL
    - GF_TextureFilter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 206
    functionDepth: 1
    functionLinenumber: 206
    functionLinenumberEnd: 213
    functionName: gdip_set_sr_texture_filter
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp
    functionUses: 0
    functionsReached:
    - CHECK_RET
    - GPSTEN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_set_sr_texture_filter(GF_STENCIL _this, GF_TextureFilter
      filter_mode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:219,1
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:226,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:227,1
    - Dst: gf_cmx_multiply
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:233,1
    - Dst: cmat_gpac_to_gdip
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:234,1
    - Dst: cmat_gpac_to_gdip
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:236,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 2
    argNames:
    - _this
    - cmat
    argTypes:
    - GF_STENCIL
    - GF_ColorMatrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 242
    functionName: gdip_set_color_matrix
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp
    functionUses: 0
    functionsReached:
    - memcpy
    - memset
    - gf_cmx_multiply
    - GPSTEN
    - cmat_gpac_to_gdip
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_set_color_matrix(GF_STENCIL _this, GF_ColorMatrix *cmat)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:247,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - _this
    - alpha
    argTypes:
    - GF_STENCIL
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 244
    functionDepth: 1
    functionLinenumber: 244
    functionLinenumberEnd: 253
    functionName: gdip_set_alpha
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp
    functionUses: 0
    functionsReached:
    - GPSTEN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_set_alpha(GF_STENCIL _this, u8 alpha)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:263,1
    - Dst: gdip_convert_texture
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:264,1
    - Dst: GdipBitmapGetPixel
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:267,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:270,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - col
    argTypes:
    - GF_STENCIL
    - u32
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 257
    functionDepth: 1
    functionLinenumber: 257
    functionLinenumberEnd: 275
    functionName: gdip_get_pixel
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp
    functionUses: 0
    functionsReached:
    - GdipBitmapGetPixel
    - GPSTEN
    - GF_COL_ARGB
    - gdip_convert_texture
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_get_pixel(GF_STENCIL _this, u32 x, u32 y, u32 *col)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:283,1
    - Dst: gdip_convert_texture
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:285,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:288,1
    - Dst: GdipBitmapSetPixel
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:292,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - col
    argTypes:
    - GF_STENCIL
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 278
    functionDepth: 1
    functionLinenumber: 278
    functionLinenumberEnd: 294
    functionName: gdip_set_pixel
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp
    functionUses: 0
    functionsReached:
    - GPSTEN
    - GdipBitmapSetPixel
    - GF_COL_ARGB
    - gdip_convert_texture
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_set_pixel(GF_STENCIL _this, u32 x, u32 y, u32 col)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:302,1
    - Dst: GdipBitmapLockBits
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:309,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 6
    argNames:
    - _this
    - pixels
    - width
    - height
    - stride
    - pixelFormat
    argTypes:
    - GF_STENCIL
    - unsigned char**
    - u32*
    - u32*
    - u32*
    - GF_PixelFormat*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 333
    functionName: gdip_get_texture
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp
    functionUses: 0
    functionsReached:
    - GdipBitmapLockBits
    - GPSTEN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gdip_get_texture(GF_STENCIL _this, unsigned char **pixels, u32
      *width, u32 *height, u32 *stride, GF_PixelFormat *pixelFormat)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GPSTEN
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:339,1
    - Dst: gdip_set_texture
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:341,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - _this
    argTypes:
    - GF_STENCIL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 337
    functionDepth: 2
    functionLinenumber: 337
    functionLinenumberEnd: 344
    functionName: gdip_texture_modified
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp
    functionUses: 0
    functionsReached:
    - gdip_set_texture
    - GPSTEN
    linkageType: ''
    returnType: void
    signature: void gdip_texture_modified(GF_STENCIL _this)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - driver
    argTypes:
    - GF_Raster2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 346
    functionDepth: 0
    functionLinenumber: 346
    functionLinenumberEnd: 354
    functionName: gdip_init_driver_texture
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gdip_init_driver_texture(GF_Raster2D *driver)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:372,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:374,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:377,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:385,1
    - Dst: gf_stretch_bits
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:392,1
    - Dst: GdipDisposeImage
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:394,1
    - Dst: GdipCreateBitmapFromScan0
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:395,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 34
    argCount: 1
    argNames:
    - sten
    argTypes:
    - struct _stencil*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 357
    functionDepth: 1
    functionLinenumber: 357
    functionLinenumberEnd: 397
    functionName: gdip_convert_texture
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp
    functionUses: 2
    functionsReached:
    - gf_free
    - GdipDisposeImage
    - gf_stretch_bits
    - memset
    - GdipCreateBitmapFromScan0
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void gdip_convert_texture(struct _stencil *sten)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GdipDeleteBrush
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:405,1
    - Dst: gdip_convert_texture
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:413,1
    - Dst: GdipCreateImageAttributes
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:415,1
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:417,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:419,1
    - Dst: GdipSetImageAttributesColorMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:430,1
    - Dst: GdipDeleteBrush
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:431,1
    - Dst: GdipCreateTextureIAI
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:432,1
    - Dst: GdipSetTextureWrapMode
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:436,1
    - Dst: GdipDisposeImageAttributes
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp:438,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 1
    argNames:
    - sten
    argTypes:
    - struct _stencil*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 399
    functionDepth: 2
    functionLinenumber: 399
    functionLinenumberEnd: 439
    functionName: gdip_load_texture
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_texture.cpp
    functionUses: 1
    functionsReached:
    - GdipDisposeImageAttributes
    - gdip_convert_texture
    - GdipSetTextureWrapMode
    - memcpy
    - GdipSetImageAttributesColorMatrix
    - GdipCreateTextureIAI
    - memset
    - GdipDeleteBrush
    - GdipCreateImageAttributes
    linkageType: ''
    returnType: void
    signature: void gdip_load_texture(struct _stencil *sten)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - __ptr
    - ','
    - __struc
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 37
    functionName: SAFEALLOC
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h
    functionUses: 77
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SAFEALLOC(__ptr, __struc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GdipCreateMatrix
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:74,1
    - Dst: GdipSetMatrixElements
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:75,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:75,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:75,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:75,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:75,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:75,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:75,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - mat
    argTypes:
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 77
    functionName: mat_gpac_to_gdip
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h
    functionUses: 2
    functionsReached:
    - GdipSetMatrixElements
    - GdipCreateMatrix
    - FIX2FLT
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE *mat_gpac_to_gdip(GF_Matrix2D *mat)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:82,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:83,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:84,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:85,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:86,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:87,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:88,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:89,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:90,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:91,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:92,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:93,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:94,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:95,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:96,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:97,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:98,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:99,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:100,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:101,1
    - Dst: FIX2FLT
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 22
    argCount: 2
    argNames:
    - mat
    - matrix
    argTypes:
    - GF_ColorMatrix*
    - ColorMatrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 103
    functionName: cmat_gpac_to_gdip
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h
    functionUses: 1
    functionsReached:
    - memset
    - FIX2FLT
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE cmat_gpac_to_gdip(GF_ColorMatrix *mat, ColorMatrix *matrix)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - matrix
    argTypes:
    - ColorMatrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 110
    functionName: gdip_cmat_reset
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h
    functionUses: 1
    functionsReached:
    - memset
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gdip_cmat_reset(ColorMatrix *matrix)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 113
    functionName: GPMATRIX
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GPMATRIX()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 168
    functionName: GPSTEN
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h
    functionUses: 21
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GPSTEN()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _type
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 169
    functionName: CHECK
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK(_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _type
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 170
    functionName: CHECK_RET
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_RET(_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _t1
    - ','
    - _t2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 171
    functionName: CHECK2
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK2(_t1, _t2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _t1
    - ','
    - _t2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 172
    functionName: CHECK2_RET
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gdip_raster/gdip_priv.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK2_RET(_t1, _t2)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:47,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:50,1
    - Dst: atoi
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:51,1
    - Dst: wiiuse_init
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:54,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:56,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:61,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:62,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:63,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:64,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:65,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:66,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:67,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:68,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:69,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:70,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:71,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:72,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:73,1
    - Dst: AddField
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:74,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 3
    argNames:
    - ifce
    - urn
    - dsi
    argTypes:
    - struct __input_device*
    - char*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 77
    functionName: WII_RegisterDevice
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - strcmp
    - gf_opts_get_key
    - atoi
    - AddField
    - wiiuse_init
    linkageType: ''
    returnType: Bool
    signature: Bool WII_RegisterDevice(struct __input_device *ifce, const char *urn,
      GF_BitStream *dsi, void (*AddField)(struct __input_device *_this, u32 fieldType,
      const char *name))
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _b
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 84
    functionName: WRITE_BUTTON
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WRITE_BUTTON(_b)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:99,1
    - Dst: atoi
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:100,1
    - Dst: wiiuse_find
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:103,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:104,1
    - Dst: wiiuse_connect
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:105,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:107,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:109,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:112,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:114,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:117,1
    - Dst: atof
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:118,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:119,1
    - Dst: atof
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:121,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:125,1
    - Dst: wiiuse_motion_sensing
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:128,1
    - Dst: wiiuse_set_smooth_alpha
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:129,1
    - Dst: wiiuse_set_orient_threshold
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:130,1
    - Dst: wiiuse_poll
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:135,1
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:144,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:147,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:148,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:151,1
    - Dst: WRITE_BUTTON
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:155,1
    - Dst: WRITE_BUTTON
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:156,1
    - Dst: WRITE_BUTTON
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:157,1
    - Dst: WRITE_BUTTON
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:158,1
    - Dst: WRITE_BUTTON
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:159,1
    - Dst: WRITE_BUTTON
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:160,1
    - Dst: WRITE_BUTTON
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:161,1
    - Dst: WRITE_BUTTON
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:162,1
    - Dst: WRITE_BUTTON
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:163,1
    - Dst: WRITE_BUTTON
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:164,1
    - Dst: WRITE_BUTTON
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:165,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:168,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:169,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:170,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:171,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:174,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:175,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:176,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:177,1
    - Dst: gf_bs_align
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:179,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:180,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:181,1
    - Dst: GF_InputSensorDevice*::DispatchFrame
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:183,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:184,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 91
    argCount: 1
    argNames:
    - par
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 203
    functionName: WII_Run
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - GF_InputSensorDevice*::DispatchFrame
    - wiiuse_motion_sensing
    - gf_opts_get_key
    - atoi
    - gf_bs_write_float
    - atof
    - gf_bs_get_content
    - wiiuse_set_smooth_alpha
    - wiiuse_find
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_align
    - wiiuse_poll
    - wiiuse_set_orient_threshold
    - wiiuse_connect
    - gf_bs_del
    - WRITE_BUTTON
    - strcmp
    linkageType: ''
    returnType: u32
    signature: u32 WII_Run(void *par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_run
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - struct __input_device*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 210
    functionName: WII_Start
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c
    functionUses: 0
    functionsReached:
    - gf_th_run
    linkageType: ''
    returnType: void
    signature: void WII_Start(struct __input_device *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - struct __input_device*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 216
    functionName: WII_Stop
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void WII_Stop(struct __input_device *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 227
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:236,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:237,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:243,1
    - Dst: gf_th_new
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 229
    functionDepth: 1
    functionLinenumber: 229
    functionLinenumberEnd: 247
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c
    functionUses: 0
    functionsReached:
    - GF_REGISTER_MODULE_INTERFACE
    - gf_th_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: wiiuse_cleanup
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:258,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:260,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c:261,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - bi
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 262
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/wiiis/wiiis.c
    functionUses: 0
    functionsReached:
    - gf_free
    - wiiuse_cleanup
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *bi)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __str
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 62
    functionName: PRINT
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PRINT(__str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - dr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 64
    functionName: GAPICTX
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GAPICTX(dr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: LOWORD
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:72,1
    - Dst: HIWORD
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:73,1
    - Dst: ClientToScreen
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:85,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - lParam
    - evt
    argTypes:
    - DWORD
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 94
    functionName: GAPI_GetCoordinates
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - LOWORD
    - ClientToScreen
    - HIWORD
    linkageType: ''
    returnType: void
    signature: void GAPI_GetCoordinates(DWORD lParam, GF_Event *evt)
  - BBCount: 102
    BranchProfiles: []
    Callsites:
    - Dst: LOWORD
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:411,1
    - Dst: LOWORD
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:411,1
    CyclomaticComplexity: 103
    EdgeCount: 103
    ICount: 317
    argCount: 3
    argNames:
    - wParam
    - lParam
    - evt
    argTypes:
    - u32
    - u32
    - GF_EventKey*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 436
    functionName: w32_translate_key
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - LOWORD
    linkageType: ''
    returnType: void
    signature: void w32_translate_key(u32 wParam, u32 lParam, GF_EventKey *evt)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: LOWORD
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:448,1
    - Dst: HIWORD
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:449,1
    - Dst: on_event
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:450,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:454,1
    - Dst: on_event
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:456,1
    - Dst: PostQuitMessage
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:462,1
    - Dst: SetWindowLong
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:465,1
    - Dst: on_event
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:473,1
    - Dst: GetDC
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:480,1
    - Dst: BitBlt
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:481,1
    - Dst: ReleaseDC
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:482,1
    - Dst: GAPI_GetCoordinates
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:488,1
    - Dst: on_event
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:490,1
    - Dst: GAPI_GetCoordinates
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:494,1
    - Dst: on_event
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:497,1
    - Dst: GAPI_GetCoordinates
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:500,1
    - Dst: on_event
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:503,1
    - Dst: w32_translate_key
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:511,1
    - Dst: on_event
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:513,1
    - Dst: DefWindowProc
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:520,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 67
    argCount: 4
    argNames:
    - hWnd
    - msg
    - wParam
    - lParam
    argTypes:
    - HWND
    - UINT
    - UINT
    - LONG
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 440
    functionDepth: 1
    functionLinenumber: 440
    functionLinenumberEnd: 521
    functionName: GAPI_WindowProc
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - LOWORD
    - DefWindowProc
    - ReleaseDC
    - w32_translate_key
    - on_event
    - memset
    - GAPI_GetCoordinates
    - PostQuitMessage
    - SetWindowLong
    - HIWORD
    - GetDC
    - BitBlt
    linkageType: ''
    returnType: LRESULT
    signature: LRESULT GAPI_WindowProc(HWND hWnd, UINT msg, UINT wParam, LONG lParam)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:529,1
    - Dst: GetModuleHandle
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:530,1
    - Dst: _T
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:530,1
    - Dst: LoadCursor
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:532,1
    - Dst: GetStockObject
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:533,1
    - Dst: _T
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:534,1
    - Dst: RegisterClass
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:535,1
    - Dst: CreateWindow
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:537,1
    - Dst: _T
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:537,1
    - Dst: ExitThread
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:540,1
    - Dst: ShowWindow
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:542,1
    - Dst: GetMessage
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:544,1
    - Dst: TranslateMessage
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:545,1
    - Dst: DispatchMessage
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:546,1
    - Dst: ExitThread
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:549,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 1
    argNames:
    - par
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 523
    functionDepth: 0
    functionLinenumber: 523
    functionLinenumberEnd: 550
    functionName: GAPI_WindowThread
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - ShowWindow
    - DispatchMessage
    - GetMessage
    - RegisterClass
    - GetStockObject
    - ExitThread
    - LoadCursor
    - memset
    - _T
    - GetModuleHandle
    - CreateWindow
    - TranslateMessage
    linkageType: ''
    returnType: void
    signature: void GAPI_WindowThread(void *par)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: CreateThread
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:563,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:564,1
    - Dst: GetWindowLong
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:568,1
    - Dst: SetWindowLong
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:570,1
    - Dst: GetDC
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:575,1
    - Dst: GetDeviceCaps
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:576,1
    - Dst: GetDeviceCaps
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:577,1
    - Dst: ReleaseDC
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:578,1
    - Dst: GAPI_SetupOGL_ES_Offscreen
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:585,1
    - Dst: GAPI_SetupOGL_ES_Offscreen
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:589,1
    - Dst: GetModuleHandle
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:600,1
    - Dst: _T
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:600,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:601,1
    - Dst: _T
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:604,1
    - Dst: RegisterClass
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:605,1
    - Dst: CreateWindow
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:607,1
    - Dst: _T
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:607,1
    - Dst: _T
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:607,1
    - Dst: ShowWindow
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:609,1
    - Dst: GAPI_SetupOGL_ES_Offscreen
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:612,1
    - Dst: GAPI_SetupOGL_ES_Offscreen
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:616,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 50
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 621
      start: 553
    functionDepth: 1
    functionLinenumber: 553
    functionLinenumberEnd: 621
    functionName: GAPI_SetupWindow
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - ShowWindow
    - CreateThread
    - RegisterClass
    - CreateWindow
    - ReleaseDC
    - GetWindowLong
    - gf_sleep
    - GAPI_SetupOGL_ES_Offscreen
    - memset
    - GetDeviceCaps
    - _T
    - SetWindowLong
    - GetModuleHandle
    - GetDC
    linkageType: ''
    returnType: void
    signature: void GAPI_SetupWindow(GF_VideoOutput *dr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PostMessage
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:628,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:629,1
    - Dst: UnregisterClass
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:630,1
    - Dst: _T
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:630,1
    - Dst: GetModuleHandle
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:630,1
    - Dst: _T
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:630,1
    - Dst: CloseHandle
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:631,1
    - Dst: SetWindowLong
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:635,1
    - Dst: PostMessage
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:640,1
    - Dst: UnregisterClass
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:642,1
    - Dst: _T
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:642,1
    - Dst: GetModuleHandle
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:642,1
    - Dst: _T
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:642,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 646
      start: 623
    functionDepth: 0
    functionLinenumber: 623
    functionLinenumberEnd: 646
    functionName: GAPI_ShutdownWindow
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - PostMessage
    - gf_sleep
    - _T
    - GetModuleHandle
    - SetWindowLong
    - UnregisterClass
    - CloseHandle
    linkageType: ''
    returnType: void
    signature: void GAPI_ShutdownWindow(GF_VideoOutput *dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GAPICTX
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:651,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dr
    - color
    argTypes:
    - GF_VideoOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 654
      start: 649
    functionDepth: 1
    functionLinenumber: 649
    functionLinenumberEnd: 654
    functionName: GAPI_Clear
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - GAPICTX
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GAPI_Clear(GF_VideoOutput *dr, u32 color)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:664,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:666,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:667,1
    - Dst: GetDC
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:698,1
    - Dst: CreateDIBSection
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:702,1
    - Dst: CreateCompatibleDC
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:705,1
    - Dst: CreateDIBSection
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:706,1
    - Dst: SelectObject
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:707,1
    - Dst: CreateCompatibleDC
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:709,1
    - Dst: CreateDIBSection
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:710,1
    - Dst: SelectObject
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:711,1
    - Dst: ReleaseDC
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:716,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 50
    argCount: 2
    argNames:
    - ctx
    - pix_type
    argTypes:
    - GAPIPriv*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 720
      start: 657
    functionDepth: 0
    functionLinenumber: 657
    functionLinenumberEnd: 720
    functionName: createPixmap
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    - CreateCompatibleDC
    - SelectObject
    - ReleaseDC
    - memset
    - CreateDIBSection
    - GetDC
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void createPixmap(GAPIPriv *ctx, u32 pix_type)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: eglMakeCurrent
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:728,1
    - Dst: eglDestroyContext
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:730,1
    - Dst: eglDestroySurface
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:732,1
    - Dst: eglTerminate
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:734,1
    - Dst: DeleteObject
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:737,1
    - Dst: DeleteObject
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:742,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 2
    argNames:
    - ctx
    - offscreen_only
    argTypes:
    - GAPIPriv*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 744
      start: 725
    functionDepth: 0
    functionLinenumber: 725
    functionLinenumberEnd: 744
    functionName: GAPI_ReleaseOGL_ES
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - eglDestroyContext
    - eglTerminate
    - DeleteObject
    - eglMakeCurrent
    - eglDestroySurface
    linkageType: ''
    returnType: void
    signature: void GAPI_ReleaseOGL_ES(GAPIPriv *ctx, Bool offscreen_only)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GAPICTX
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:751,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:762,1
    - Dst: atoi
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:764,1
    - Dst: GAPI_ReleaseOGL_ES
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:780,1
    - Dst: ::GetClientRect
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:784,1
    - Dst: createPixmap
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:789,1
    - Dst: eglGetDisplay
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:793,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:795,1
    - Dst: eglInitialize
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:798,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:800,1
    - Dst: eglChooseConfig
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:804,1
    - Dst: eglGetError
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:804,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:805,1
    - Dst: eglCreateWindowSurface
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:814,1
    - Dst: eglCreatePixmapSurface
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:816,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:820,1
    - Dst: eglGetError
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:820,1
    - Dst: eglCreateContext
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:823,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:825,1
    - Dst: eglDestroySurface
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:826,1
    - Dst: eglMakeCurrent
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:830,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:831,1
    - Dst: eglDestroyContext
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:832,1
    - Dst: eglDestroySurface
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:834,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:838,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:839,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:842,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 71
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 844
      start: 746
    functionDepth: 1
    functionLinenumber: 746
    functionLinenumberEnd: 844
    functionName: GAPI_SetupOGL_ES
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - GAPICTX
    - GF_VideoOutput*::on_event
    - eglDestroyContext
    - memset
    - gf_opts_get_key
    - atoi
    - GAPI_ReleaseOGL_ES
    - eglCreateContext
    - eglMakeCurrent
    - eglDestroySurface
    - eglInitialize
    - eglChooseConfig
    - createPixmap
    - GF_LOG
    - ::GetClientRect
    - eglGetDisplay
    - eglGetError
    - eglCreatePixmapSurface
    - eglCreateWindowSurface
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GAPI_SetupOGL_ES(GF_VideoOutput *dr)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GAPICTX
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:854,1
    - Dst: GAPI_ReleaseOGL_ES
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:856,1
    - Dst: SetWindowPos
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:859,1
    - Dst: createPixmap
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:860,1
    - Dst: eglGetDisplay
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:863,1
    - Dst: eglInitialize
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:864,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:876,1
    - Dst: atoi
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:878,1
    - Dst: eglGetConfigs
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:886,1
    - Dst: eglChooseConfig
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:887,1
    - Dst: eglCreatePixmapSurface
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:892,1
    - Dst: eglCreatePbufferSurface
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:900,1
    - Dst: eglCreateContext
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:906,1
    - Dst: eglDestroySurface
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:908,1
    - Dst: eglMakeCurrent
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:912,1
    - Dst: eglDestroyContext
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:913,1
    - Dst: eglDestroySurface
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:915,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 59
    argCount: 3
    argNames:
    - dr
    - width
    - height
    argTypes:
    - GF_VideoOutput*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 920
      start: 848
    functionDepth: 1
    functionLinenumber: 848
    functionLinenumberEnd: 920
    functionName: GAPI_SetupOGL_ES_Offscreen
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 1
    functionsReached:
    - eglInitialize
    - eglCreatePixmapSurface
    - GAPICTX
    - SetWindowPos
    - eglGetConfigs
    - eglDestroyContext
    - eglChooseConfig
    - gf_opts_get_key
    - atoi
    - GAPI_ReleaseOGL_ES
    - eglGetDisplay
    - createPixmap
    - eglCreatePbufferSurface
    - eglCreateContext
    - eglMakeCurrent
    - eglDestroySurface
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GAPI_SetupOGL_ES_Offscreen(GF_VideoOutput *dr, u32 width, u32
      height)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GAPI_ReleaseOGL_ES
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:930,1
    - Dst: DeleteObject
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:933,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:934,1
    - Dst: SelectObject
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:939,1
    - Dst: DeleteDC
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:941,1
    - Dst: ReleaseDC
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:944,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GAPIPriv*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 946
      start: 925
    functionDepth: 1
    functionLinenumber: 925
    functionLinenumberEnd: 946
    functionName: GAPI_ReleaseObjects
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    - SelectObject
    - ReleaseDC
    - DeleteDC
    - DeleteObject
    - GAPI_ReleaseOGL_ES
    linkageType: ''
    returnType: void
    signature: void GAPI_ReleaseObjects(GAPIPriv *ctx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GXGetDisplayProperties
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:950,1
    - Dst: GAPICTX
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:952,1
    - Dst: GXGetDefaultKeys
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:956,1
    - Dst: GAPI_SetupWindow
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:985,1
    - Dst: GXOpenDisplay
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:989,1
    - Dst: MessageBox
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:990,1
    - Dst: _T
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:990,1
    - Dst: _T
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:990,1
    - Dst: GetClientRect
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:993,1
    - Dst: GAPI_InitBackBuffer
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:997,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 37
    argCount: 4
    argNames:
    - dr
    - os_handle
    - os_display
    - noover
    argTypes:
    - GF_VideoOutput*
    - void*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 998
      start: 948
    functionDepth: 2
    functionLinenumber: 948
    functionLinenumberEnd: 998
    functionName: GAPI_Setup
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - MessageBox
    - GXOpenDisplay
    - GAPICTX
    - GetClientRect
    - GAPI_InitBackBuffer
    - GXGetDefaultKeys
    - _T
    - GXGetDisplayProperties
    - GAPI_SetupWindow
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GAPI_Setup(GF_VideoOutput *dr, void *os_handle, void *os_display,
      u32 noover)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GAPICTX
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1002,1
    - Dst: gf_mx_p
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1004,1
    - Dst: GAPI_ReleaseObjects
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1005,1
    - Dst: GXCloseDisplay
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1007,1
    - Dst: GAPI_ShutdownWindow
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1008,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1009,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1010
      start: 1000
    functionDepth: 2
    functionLinenumber: 1000
    functionLinenumberEnd: 1010
    functionName: GAPI_Shutdown
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - GAPI_ReleaseObjects
    - GXCloseDisplay
    - GAPICTX
    - GAPI_ShutdownWindow
    - gf_mx_v
    linkageType: ''
    returnType: void
    signature: void GAPI_Shutdown(GF_VideoOutput *dr)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: GAPICTX
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1016,1
    - Dst: GAPI_SetupOGL_ES
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1025,1
    - Dst: gf_mx_p
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1029,1
    - Dst: GAPI_ReleaseObjects
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1030,1
    - Dst: GXCloseDisplay
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1031,1
    - Dst: GXOpenDisplay
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1034,1
    - Dst: GetParent
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1034,1
    - Dst: GXOpenDisplay
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1035,1
    - Dst: GXOpenDisplay
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1042,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1071,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 54
    argCount: 4
    argNames:
    - dr
    - bOn
    - outWidth
    - outHeight
    argTypes:
    - GF_VideoOutput*
    - Bool
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1074
      start: 1012
    functionDepth: 2
    functionLinenumber: 1012
    functionLinenumberEnd: 1074
    functionName: GAPI_SetFullScreen
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - GXCloseDisplay
    - GAPI_ReleaseObjects
    - GXOpenDisplay
    - GAPICTX
    - GAPI_SetupOGL_ES
    - gf_mx_v
    - GetParent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GAPI_SetFullScreen(GF_VideoOutput *dr, Bool bOn, u32 *outWidth,
      u32 *outHeight)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1078,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1079,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1080,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - gctx
    - ptr
    argTypes:
    - GAPIPriv*
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1082
      start: 1076
    functionDepth: 0
    functionLinenumber: 1076
    functionLinenumberEnd: 1082
    functionName: GAPI_ClearFS
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - memset
    - gf_mx_v
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GAPI_ClearFS(GAPIPriv *gctx, unsigned char *ptr)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: GAPICTX
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1089,1
    - Dst: GXBeginDraw
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1094,1
    - Dst: GAPI_ClearFS
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1120,1
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1132,1
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1138,1
    - Dst: memcpy
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1145,1
    - Dst: GXEndDraw
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1149,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 51
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1151
      start: 1085
    functionDepth: 1
    functionLinenumber: 1085
    functionLinenumberEnd: 1151
    functionName: GAPI_FlipBackBuffer
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - GXEndDraw
    - GAPICTX
    - memcpy
    - GAPI_ClearFS
    - GXBeginDraw
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GAPI_FlipBackBuffer(GF_VideoOutput *dr)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GAPICTX
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1158,1
    - Dst: gf_mx_p
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1162,1
    - Dst: InvalidateRect
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1170,1
    - Dst: eglSwapBuffers
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1173,1
    - Dst: InvalidateRect
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1176,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1180,1
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1189,1
    - Dst: InvalidateRect
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1196,1
    - Dst: GAPI_FlipBackBuffer
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1199,1
    - Dst: InvalidateRect
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1202,1
    - Dst: GetDC
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1205,1
    - Dst: BitBlt
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1206,1
    - Dst: ReleaseDC
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1207,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1212,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 44
    argCount: 2
    argNames:
    - dr
    - dest
    argTypes:
    - GF_VideoOutput*
    - GF_Window*
    assertStmts:
    - condition: (0)
      pos:
        line_end: 1188
        line_start: 1188
        source_file: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    constantsTouched: []
    func_position:
      end: 1214
      start: 1155
    functionDepth: 2
    functionLinenumber: 1155
    functionLinenumberEnd: 1214
    functionName: GAPI_Flush
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - InvalidateRect
    - GAPICTX
    - BitBlt
    - eglSwapBuffers
    - assert
    - ReleaseDC
    - gf_mx_v
    - GetDC
    - GAPI_FlipBackBuffer
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GAPI_Flush(GF_VideoOutput *dr, GF_Window *dest)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetSysColor
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - idx
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1226
      start: 1216
    functionDepth: 0
    functionLinenumber: 1216
    functionLinenumberEnd: 1226
    functionName: get_sys_col
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - GetSysColor
    linkageType: ''
    returnType: u32
    signature: u32 get_sys_col(int idx)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GAPICTX
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1230,1
    - Dst: ShowWindow
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1234,1
    - Dst: GAPI_InitBackBuffer
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1245,1
    - Dst: GAPI_SetupOGL_ES
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1249,1
    - Dst: GAPI_SetupOGL_ES_Offscreen
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1252,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1259,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1260,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1261,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1262,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1263,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1264,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1265,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1266,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1267,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1268,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1269,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1270,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1271,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1272,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1273,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1274,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1275,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1276,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1277,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1278,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1279,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1280,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1281,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1282,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1283,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1284,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1285,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1286,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 57
    argCount: 2
    argNames:
    - dr
    - evt
    argTypes:
    - GF_VideoOutput*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1290
      start: 1228
    functionDepth: 2
    functionLinenumber: 1228
    functionLinenumberEnd: 1290
    functionName: GAPI_ProcessEvent
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - ShowWindow
    - get_sys_col
    - GAPICTX
    - GAPI_SetupOGL_ES
    - GAPI_InitBackBuffer
    - GAPI_SetupOGL_ES_Offscreen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GAPI_ProcessEvent(GF_VideoOutput *dr, GF_Event *evt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GAPICTX
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1314,1
    - Dst: GetSystemMetrics
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1316,1
    - Dst: GetSystemMetrics
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1317,1
    - Dst: GetDC
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1327,1
    - Dst: GetDeviceCaps
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1328,1
    - Dst: GetDeviceCaps
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1329,1
    - Dst: ReleaseDC
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1330,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1342,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 3
    argNames:
    - dr
    - width
    - height
    argTypes:
    - GF_VideoOutput*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1345
      start: 1312
    functionDepth: 1
    functionLinenumber: 1312
    functionLinenumberEnd: 1345
    functionName: check_resolution_switch
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - GAPICTX
    - GetSystemMetrics
    - ReleaseDC
    - GF_VideoOutput*::on_event
    - GetDeviceCaps
    - GetDC
    linkageType: ''
    returnType: Bool
    signature: Bool check_resolution_switch(GF_VideoOutput *dr, u32 width, u32 height)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: GAPICTX
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1369,1
    - Dst: GetDC
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1370,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1371,1
    - Dst: ExtEscape
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1373,1
    - Dst: ExtEscape
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1378,1
    - Dst: GetDeviceCaps
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1380,1
    - Dst: GetDeviceCaps
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1381,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1383,1
    - Dst: ExtEscape
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1385,1
    - Dst: GetPixel
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1394,1
    - Dst: GetPixel
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1396,1
    - Dst: ReleaseDC
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1413,1
    - Dst: abs
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1420,1
    - Dst: abs
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1420,1
    - Dst: abs
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1422,1
    - Dst: abs
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1423,1
    - Dst: abs
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1431,1
    - Dst: abs
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1432,1
    - Dst: check_resolution_switch
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1446,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 51
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1450
      start: 1365
    functionDepth: 2
    functionLinenumber: 1365
    functionLinenumberEnd: 1450
    functionName: gapi_get_raw_fb
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - GetPixel
    - GAPICTX
    - abs
    - ReleaseDC
    - ExtEscape
    - memset
    - GetDeviceCaps
    - check_resolution_switch
    - GetDC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gapi_get_raw_fb(GF_VideoOutput *dr)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GAPICTX
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1458,1
    - Dst: gf_mx_p
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1462,1
    - Dst: GAPI_ReleaseObjects
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1464,1
    - Dst: GetWindowRect
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1474,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1479,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1480,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1481,1
    - Dst: GXGetDisplayProperties
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1485,1
    - Dst: gapi_get_raw_fb
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1492,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1493,1
    - Dst: check_resolution_switch
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1496,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1497,1
    - Dst: gapi_get_raw_fb
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1502,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1504,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1518,1
    - Dst: createPixmap
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1522,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1525,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 54
    argCount: 3
    argNames:
    - dr
    - VideoWidth
    - VideoHeight
    argTypes:
    - GF_VideoOutput*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1527
      start: 1455
    functionDepth: 3
    functionLinenumber: 1455
    functionLinenumberEnd: 1527
    functionName: GAPI_InitBackBuffer
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 2
    functionsReached:
    - gf_malloc
    - gf_mx_p
    - GAPI_ReleaseObjects
    - GAPICTX
    - strcmp
    - gf_opts_get_key
    - gf_mx_v
    - check_resolution_switch
    - createPixmap
    - GXGetDisplayProperties
    - gapi_get_raw_fb
    - GetWindowRect
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GAPI_InitBackBuffer(GF_VideoOutput *dr, u32 VideoWidth, u32
      VideoHeight)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 4
    argNames:
    - gctx
    - dst
    - x_pitch
    - y_pitch
    argTypes:
    - GAPIPriv*
    - GF_VideoSurface*
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1573
      start: 1530
    functionDepth: 0
    functionLinenumber: 1530
    functionLinenumberEnd: 1573
    functionName: GAPI_AdjustLandscape
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GAPI_AdjustLandscape(GAPIPriv *gctx, GF_VideoSurface *dst, s32
      x_pitch, s32 y_pitch)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GAPICTX
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1577,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1581,1
    - Dst: GAPI_AdjustLandscape
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1591,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - dr
    - vi
    - do_lock
    argTypes:
    - GF_VideoOutput*
    - GF_VideoSurface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1594
      start: 1575
    functionDepth: 1
    functionLinenumber: 1575
    functionLinenumberEnd: 1594
    functionName: GAPI_LockBackBuffer
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - GAPICTX
    - memset
    - GAPI_AdjustLandscape
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GAPI_LockBackBuffer(GF_VideoOutput *dr, GF_VideoSurface *vi,
      Bool do_lock)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1600,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1601,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1602,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1604,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1605,1
    - Dst: gf_mx_new
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1606,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1622
      start: 1597
    functionDepth: 1
    functionLinenumber: 1597
    functionLinenumberEnd: 1622
    functionName: NewGAPIVideoOutput
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - gf_mx_new
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void *NewGAPIVideoOutput()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GAPICTX
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1627,1
    - Dst: GAPI_Shutdown
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1628,1
    - Dst: gf_mx_del
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1629,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1630,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1631,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1632
      start: 1624
    functionDepth: 3
    functionLinenumber: 1624
    functionLinenumberEnd: 1632
    functionName: DeleteVideoOutput
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 1
    functionsReached:
    - GAPICTX
    - gf_free
    - GAPI_Shutdown
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void DeleteVideoOutput(void *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1648
      start: 1640
    functionDepth: 0
    functionLinenumber: 1640
    functionLinenumberEnd: 1648
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NewGAPIVideoOutput
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1654,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1656
      start: 1651
    functionDepth: 2
    functionLinenumber: 1651
    functionLinenumberEnd: 1656
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - NewGAPIVideoOutput
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DeleteVideoOutput
      Src: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp:1665,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1668
      start: 1659
    functionDepth: 0
    functionLinenumber: 1659
    functionLinenumberEnd: 1668
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/gapi/gapi.cpp
    functionUses: 0
    functionsReached:
    - DeleteVideoOutput
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:87,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:89,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:92,1
    - Dst: sprintf
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:100,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:101,1
    - Dst: gf_fopen
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:103,1
    - Dst: fseek
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:105,1
    - Dst: ftell
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:106,1
    - Dst: fseek
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:107,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:108,1
    - Dst: gf_fclose
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:110,1
    - Dst: fread
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:113,1
    - Dst: gf_fclose
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:114,1
    - Dst: rvc_init
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:135,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:138,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:150,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:155,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:158,1
    - Dst: gf_avc_get_sps_info
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:160,1
    - Dst: rvc_decode
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:172,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:174,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:178,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:180,1
    - Dst: rvc_decode
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:181,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:183,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:188,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:191,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:196,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:199,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:200,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:203,1
    - Dst: gf_hevc_get_sps_info
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:206,1
    - Dst: rvc_decode
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:219,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:221,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:226,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:231,1
    - Dst: rvc_decode
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:239,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:241,1
    - Dst: rvc_decode
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:248,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:250,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 133
    argCount: 2
    argNames:
    - ifcg
    - esd
    argTypes:
    - GF_BaseDecoder*
    - GF_ESD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 259
    functionName: RVCD_AttachStream
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - rvc_decode
    - gf_odf_avc_cfg_del
    - gf_list_count
    - gf_fopen
    - gf_opts_get_key
    - fread
    - gf_odf_hevc_cfg_read
    - gf_hevc_get_sps_info
    - gf_list_get
    - sprintf
    - gf_avc_get_sps_info
    - gf_m4v_get_config
    - fseek
    - ftell
    - rvc_init
    - GF_LOG
    - gf_odf_avc_cfg_read
    - gf_malloc
    - gf_odf_hevc_cfg_del
    - gf_fclose
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err RVCD_AttachStream(GF_BaseDecoder *ifcg, GF_ESD *esd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rvc_close
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ifcg
    - ES_ID
    argTypes:
    - GF_BaseDecoder*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 269
    functionName: RVCD_DetachStream
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c
    functionUses: 0
    functionsReached:
    - rvc_close
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err RVCD_DetachStream(GF_BaseDecoder *ifcg, u16 ES_ID)
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 41
    argCount: 2
    argNames:
    - ifcg
    - capability
    argTypes:
    - GF_BaseDecoder*
    - GF_CodecCapability*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 315
    functionName: RVCD_GetCapabilities
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err RVCD_GetCapabilities(GF_BaseDecoder *ifcg, GF_CodecCapability
      *capability)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ifcg
    - capability
    argTypes:
    - GF_BaseDecoder*
    - GF_CodecCapability
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 319
    functionName: RVCD_SetCapabilities
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err RVCD_SetCapabilities(GF_BaseDecoder *ifcg, GF_CodecCapability
      capability)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: rvc_decode
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:360,1
    - Dst: rvc_decode
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:366,1
    - Dst: rvc_decode
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:386,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 42
    argCount: 9
    argNames:
    - ifcg
    - inBuffer
    - inBufferLength
    - ES_ID
    - CTS
    - outBuffer
    - outBufferLength
    - PaddingBits
    - mmlevel
    argTypes:
    - GF_MediaDecoder*
    - char*
    - u32
    - u16
    - u32*
    - char*
    - u32*
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 324
    functionDepth: 0
    functionLinenumber: 324
    functionLinenumberEnd: 412
    functionName: RVCD_ProcessData
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c
    functionUses: 0
    functionsReached:
    - rvc_decode
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err RVCD_ProcessData(GF_MediaDecoder *ifcg,\n                               char
      *inBuffer, u32 inBufferLength,\n                               u16 ES_ID, u32
      *CTS,\n                               char *outBuffer, u32 *outBufferLength,\n
      \                              u8 PaddingBits, u32 mmlevel)"
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 4
    argNames:
    - dec
    - StreamType
    - esd
    - PL
    argTypes:
    - GF_BaseDecoder*
    - u32
    - GF_ESD*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 414
    functionDepth: 0
    functionLinenumber: 414
    functionLinenumberEnd: 429
    functionName: RVCD_CanHandleStream
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 RVCD_CanHandleStream(GF_BaseDecoder *dec, u32 StreamType, GF_ESD
      *esd, u8 PL)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dec
    argTypes:
    - GF_BaseDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 431
    functionDepth: 0
    functionLinenumber: 431
    functionLinenumberEnd: 434
    functionName: RVCD_GetCodecName
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *RVCD_GetCodecName(GF_BaseDecoder *dec)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:441,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:442,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 436
    functionDepth: 1
    functionLinenumber: 436
    functionLinenumberEnd: 456
    functionName: NewRVCDec
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c
    functionUses: 0
    functionsReached:
    - GF_REGISTER_MODULE_INTERFACE
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_BaseDecoder
    signature: GF_BaseDecoder *NewRVCDec()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:461,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:462,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ifcg
    argTypes:
    - GF_BaseDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 463
      start: 458
    functionDepth: 0
    functionLinenumber: 458
    functionLinenumberEnd: 463
    functionName: DeleteRVCDec
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DeleteRVCDec(GF_BaseDecoder *ifcg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 465
    functionDepth: 0
    functionLinenumber: 465
    functionLinenumberEnd: 475
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NewRVCDec
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:481,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 484
      start: 477
    functionDepth: 2
    functionLinenumber: 477
    functionLinenumberEnd: 484
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c
    functionUses: 0
    functionsReached:
    - NewRVCDec
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DeleteRVCDec
      Src: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c:492,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 486
    functionDepth: 1
    functionLinenumber: 486
    functionLinenumberEnd: 496
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/rvc_dec/rvc_dec.c
    functionUses: 0
    functionsReached:
    - DeleteRVCDec
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:83,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - url
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 87
    functionName: FM_FAKE_PULL_CanHandleURL
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c
    functionUses: 0
    functionsReached:
    - strnicmp
    linkageType: ''
    returnType: Bool
    signature: Bool FM_FAKE_PULL_CanHandleURL(const char *url)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:93,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:94,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:103,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:104,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:105,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:106,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:107,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:108,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 112
    functionName: get_esd
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c
    functionUses: 6
    functionsReached:
    - gf_bs_new
    - gf_odf_desc_esd_new
    - gf_bs_get_content
    - gf_bs_write_u16
    - gf_bs_del
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_ESD
    signature: GF_ESD * get_esd()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_new
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:119,1
    - Dst: get_esd
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:120,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 124
    functionName: FM_FAKE_PULL_GetOD
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_new
    - gf_list_add
    - get_esd
    linkageType: ''
    returnType: GF_ObjectDescriptor
    signature: GF_ObjectDescriptor * FM_FAKE_PULL_GetOD(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_new
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:131,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:132,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:134,1
    - Dst: gf_service_declare_media
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - par
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 137
    functionName: ext_media_load_th
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c
    functionUses: 0
    functionsReached:
    - gf_service_declare_media
    - gf_odf_desc_new
    - gf_strdup
    - gf_sleep
    linkageType: ''
    returnType: u32
    signature: u32 ext_media_load_th(void *par)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:152,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:153,1
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:163,1
    - Dst: gf_th_new
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:164,1
    - Dst: gf_th_run
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:165,1
    - Dst: ext_media_load_th
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:167,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - self
    - service
    - url
    argTypes:
    - GF_HYBMEDIA*
    - GF_ClientService*
    - char*
    assertStmts:
    - condition: (self->private_data)
      pos:
        line_end: 151
        line_start: 151
        source_file: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c
    - condition: (*th == NULL)
      pos:
        line_end: 162
        line_start: 162
        source_file: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c
    constantsTouched: []
    func_position:
      end: 174
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 174
    functionName: FM_FAKE_PULL_Connect
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c
    functionUses: 0
    functionsReached:
    - gf_th_run
    - assert
    - gf_th_new
    - memset
    - ext_media_load_th
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FM_FAKE_PULL_Connect(GF_HYBMEDIA *self, GF_ClientService *service,
      const char *url)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_del
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - self
    argTypes:
    - GF_HYBMEDIA*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 186
    functionName: FM_FAKE_PULL_Disconnect
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c
    functionUses: 0
    functionsReached:
    - gf_th_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FM_FAKE_PULL_Disconnect(GF_HYBMEDIA *self)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:193,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c:196,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - self
    - out_data_ptr
    - out_data_size
    - out_sl_hdr
    argTypes:
    - GF_HYBMEDIA*
    - char**
    - u32*
    - GF_SLHeader*
    assertStmts:
    - condition: (!(FM_FAKE_PULL_FRAME_DUR*FM_FAKE_PULL_AUDIO_FREQ%1000))
      pos:
        line_end: 192
        line_start: 192
        source_file: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c
    constantsTouched: []
    func_position:
      end: 211
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 211
    functionName: FM_FAKE_PULL_GetData
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c
    functionUses: 0
    functionsReached:
    - memset
    - assert
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FM_FAKE_PULL_GetData(GF_HYBMEDIA *self, char **out_data_ptr,
      u32 *out_data_size, GF_SLHeader *out_sl_hdr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - self
    argTypes:
    - GF_HYBMEDIA*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 218
    functionName: FM_FAKE_PULL_ReleaseData
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_pull.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FM_FAKE_PULL_ReleaseData(GF_HYBMEDIA *self)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - url
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 89
    functionName: FM_FAKE_PUSH_CanHandleURL
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c
    functionUses: 0
    functionsReached:
    - strnicmp
    linkageType: ''
    returnType: Bool
    signature: Bool FM_FAKE_PUSH_CanHandleURL(const char *url)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:95,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:96,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:105,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:106,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:107,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:108,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:109,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:110,1
    - Dst: gf_bs_del
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 114
    functionName: get_esd
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c
    functionUses: 7
    functionsReached:
    - gf_bs_new
    - gf_odf_desc_esd_new
    - gf_bs_get_content
    - gf_bs_write_u16
    - gf_bs_del
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_ESD
    signature: GF_ESD * get_esd()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_new
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:121,1
    - Dst: get_esd
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:122,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 126
    functionName: FM_FAKE_PUSH_GetOD
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_new
    - gf_list_add
    - get_esd
    linkageType: ''
    returnType: GF_ObjectDescriptor
    signature: GF_ObjectDescriptor * FM_FAKE_PUSH_GetOD(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:133,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:136,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - self
    - out_data_ptr
    - out_data_size
    - out_sl_hdr
    argTypes:
    - GF_HYBMEDIA*
    - char**
    - u32*
    - GF_SLHeader*
    assertStmts:
    - condition: (!(FM_FAKE_PUSH_FRAME_DUR*FM_FAKE_PUSH_AUDIO_FREQ%1000))
      pos:
        line_end: 132
        line_start: 132
        source_file: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c
    constantsTouched: []
    func_position:
      end: 151
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 151
    functionName: GetData
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c
    functionUses: 0
    functionsReached:
    - memset
    - assert
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GetData(const GF_HYBMEDIA *self, char **out_data_ptr, u32 *out_data_size,
      GF_SLHeader *out_sl_hdr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_new
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:158,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:159,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:161,1
    - Dst: gf_service_declare_media
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - par
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 164
    functionName: ext_media_load_th
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c
    functionUses: 1
    functionsReached:
    - gf_service_declare_media
    - gf_odf_desc_new
    - gf_strdup
    - gf_sleep
    linkageType: ''
    returnType: u32
    signature: u32 ext_media_load_th(void *par)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:175,1
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:182,1
    - Dst: gf_th_new
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:183,1
    - Dst: gf_th_run
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:184,1
    - Dst: ext_media_load_th
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:186,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:188,1
    - Dst: time
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:194,1
    - Dst: gmtime
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:195,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:198,1
    - Dst: gf_service_command
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:205,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:206,1
    - Dst: gf_sys_clock
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:213,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:219,1
    - Dst: gf_sys_clock
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:220,1
    - Dst: gf_sys_clock
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:225,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:226,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:229,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:230,1
    - Dst: GetData
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:234,1
    - Dst: gf_service_send_packet
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:235,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 42
    argCount: 1
    argNames:
    - par
    argTypes:
    - void*
    assertStmts:
    - condition: (*th == NULL)
      pos:
        line_end: 181
        line_start: 181
        source_file: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c
    constantsTouched: []
    func_position:
      end: 241
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 241
    functionName: audio_gen_th
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c
    functionUses: 0
    functionsReached:
    - gf_th_run
    - gmtime
    - GetData
    - GF_LOG
    - assert
    - gf_th_new
    - gf_sleep
    - memset
    - gf_service_send_packet
    - gf_service_command
    - time
    - ext_media_load_th
    - gf_sys_clock
    linkageType: ''
    returnType: u32
    signature: u32 audio_gen_th(void *par)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sleep
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:250,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - self
    argTypes:
    - GF_HYBMEDIA*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 252
    functionName: audio_gen_stop
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c
    functionUses: 0
    functionsReached:
    - gf_sleep
    linkageType: ''
    returnType: void
    signature: void audio_gen_stop(GF_HYBMEDIA *self)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:274,1
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:280,1
    - Dst: gf_th_new
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:281,1
    - Dst: gf_th_run
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:283,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - self
    - service
    - url
    argTypes:
    - GF_HYBMEDIA*
    - GF_ClientService*
    - char*
    assertStmts:
    - condition: (!priv->th)
      pos:
        line_end: 279
        line_start: 279
        source_file: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c
    constantsTouched: []
    func_position:
      end: 286
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 286
    functionName: FM_FAKE_PUSH_Connect
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c
    functionUses: 0
    functionsReached:
    - gf_th_run
    - memset
    - assert
    - gf_th_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FM_FAKE_PUSH_Connect(GF_HYBMEDIA *self, GF_ClientService *service,
      const char *url)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: audio_gen_stop
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:294,1
    - Dst: gf_th_del
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:295,1
    - Dst: gf_th_del
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - self
    argTypes:
    - GF_HYBMEDIA*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 290
    functionDepth: 1
    functionLinenumber: 290
    functionLinenumberEnd: 303
    functionName: FM_FAKE_PUSH_Disconnect
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c
    functionUses: 0
    functionsReached:
    - audio_gen_stop
    - gf_th_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FM_FAKE_PUSH_Disconnect(GF_HYBMEDIA *self)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: audio_gen_stop
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c:314,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - self
    - state
    argTypes:
    - GF_HYBMEDIA*
    - GF_NET_CHAN_CMD
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 307
    functionDepth: 1
    functionLinenumber: 307
    functionLinenumberEnd: 327
    functionName: FM_FAKE_PUSH_SetState
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/fm_fake_push.c
    functionUses: 0
    functionsReached:
    - audio_gen_stop
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FM_FAKE_PUSH_SetState(GF_HYBMEDIA *self, const GF_NET_CHAN_CMD
      state)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - plug
    argTypes:
    - GF_InputService*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 57
    functionName: HYB_RegisterMimeTypes
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 HYB_RegisterMimeTypes(const GF_InputService *plug)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CanHandleURL
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:65,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - plug
    - url
    argTypes:
    - GF_InputService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 70
    functionName: HYB_CanHandleURL
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c
    functionUses: 0
    functionsReached:
    - CanHandleURL
    linkageType: ''
    returnType: Bool
    signature: Bool HYB_CanHandleURL(GF_InputService *plug, const char *url)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 35
    argCount: 1
    argNames:
    - master
    argTypes:
    - GF_HYBMEDIA*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 97
    functionName: hybmedia_sanity_check
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hybmedia_sanity_check(GF_HYBMEDIA *master)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:107,1
    - Dst: CanHandleURL
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:114,1
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:119,1
    - Dst: hybmedia_sanity_check
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:122,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:124,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:125,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:128,1
    - Dst: GF_HYB_In*::master::Connect
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:131,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:133,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:134,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:137,1
    - Dst: gf_service_declare_media
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:138,1
    - Dst: GF_HYB_In*::master::GetOD
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:138,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 3
    argNames:
    - plug
    - serv
    - url
    argTypes:
    - GF_InputService*
    - GF_ClientService*
    - char*
    assertStmts:
    - condition: (hyb_in->master)
      pos:
        line_end: 118
        line_start: 118
        source_file: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c
    constantsTouched: []
    func_position:
      end: 141
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 141
    functionName: HYB_ConnectService
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c
    functionUses: 0
    functionsReached:
    - GF_HYB_In*::master::GetOD
    - GF_LOG
    - assert
    - GF_HYB_In*::master::Connect
    - hybmedia_sanity_check
    - gf_service_connect_ack
    - gf_service_declare_media
    - CanHandleURL
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err HYB_ConnectService(GF_InputService *plug, GF_ClientService *serv,
      const char *url)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:148,1
    - Dst: GF_HYB_In*::master::SetState
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:151,1
    - Dst: GF_HYB_In*::master::Disconnect
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:152,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:154,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:155,1
    - Dst: gf_service_disconnect_ack
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - plug
    argTypes:
    - GF_InputService*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 162
    functionName: HYB_CloseService
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c
    functionUses: 0
    functionsReached:
    - gf_service_disconnect_ack
    - GF_HYB_In*::master::SetState
    - GF_HYB_In*::master::Disconnect
    - GF_LOG
    - gf_service_connect_ack
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err HYB_CloseService(GF_InputService *plug)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - plug
    - expect_type
    - sub_url
    argTypes:
    - GF_InputService*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 169
    functionName: HYB_GetServiceDesc
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *HYB_GetServiceDesc(GF_InputService *plug, u32 expect_type,
      const char *sub_url)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:182,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:185,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - plug
    - channel
    - url
    - upstream
    argTypes:
    - GF_InputService*
    - LPNETCHANNEL
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 188
    functionName: HYB_ConnectChannel
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_service_connect_ack
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err HYB_ConnectChannel(GF_InputService *plug, LPNETCHANNEL channel,
      const char *url, Bool upstream)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:194,1
    - Dst: gf_service_disconnect_ack
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - plug
    - channel
    argTypes:
    - GF_InputService*
    - LPNETCHANNEL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 200
    functionName: HYB_DisconnectChannel
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_service_disconnect_ack
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err HYB_DisconnectChannel(GF_InputService *plug, LPNETCHANNEL channel)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:209,1
    - Dst: GF_HYB_In*::master::SetState
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:224,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 2
    argNames:
    - plug
    - com
    argTypes:
    - GF_InputService*
    - GF_NetworkCommand*
    assertStmts:
    - condition: (hyb_in->master->data_mode == HYB_PULL)
      pos:
        line_end: 208
        line_start: 208
        source_file: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c
    constantsTouched: []
    func_position:
      end: 234
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 234
    functionName: HYB_ServiceCommand
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c
    functionUses: 0
    functionsReached:
    - assert
    - GF_HYB_In*::master::SetState
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err HYB_ServiceCommand(GF_InputService *plug, GF_NetworkCommand
      *com)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - plug
    - url
    argTypes:
    - GF_InputService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 239
    functionName: HYB_CanHandleURLInService
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool HYB_CanHandleURLInService(GF_InputService *plug, const char *url)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:244,1
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:246,1
    - Dst: GF_HYB_In*::master::GetData
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:247,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 8
    argNames:
    - plug
    - channel
    - out_data_ptr
    - out_data_size
    - out_sl_hdr
    - sl_compressed
    - out_reception_status
    - is_new_data
    argTypes:
    - GF_InputService*
    - LPNETCHANNEL
    - char**
    - u32*
    - GF_SLHeader*
    - Bool*
    - GF_Err*
    - Bool*
    assertStmts:
    - condition: (hyb_in->master->data_mode == HYB_PULL && hyb_in->master->GetData
        && hyb_in->master->ReleaseData)
      pos:
        line_end: 243
        line_start: 243
        source_file: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c
    - condition: (((GF_HYB_In*)plug->priv)->master->channel == channel)
      pos:
        line_end: 245
        line_start: 245
        source_file: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c
    constantsTouched: []
    func_position:
      end: 252
      start: 241
    functionDepth: 1
    functionLinenumber: 241
    functionLinenumberEnd: 252
    functionName: HYB_ChannelGetSLP
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c
    functionUses: 0
    functionsReached:
    - assert
    - GF_HYB_In*::master::GetData
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err HYB_ChannelGetSLP(GF_InputService *plug, LPNETCHANNEL channel,
      char **out_data_ptr, u32 *out_data_size, GF_SLHeader *out_sl_hdr, Bool *sl_compressed,
      GF_Err *out_reception_status, Bool *is_new_data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - plug
    - channel
    argTypes:
    - GF_InputService*
    - LPNETCHANNEL
    assertStmts:
    - condition: (((GF_HYB_In*)plug->priv)->master->channel == channel)
      pos:
        line_end: 256
        line_start: 256
        source_file: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c
    constantsTouched: []
    func_position:
      end: 259
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 259
    functionName: HYB_ChannelReleaseSLP
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c
    functionUses: 0
    functionsReached:
    - assert
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err HYB_ChannelReleaseSLP(GF_InputService *plug, LPNETCHANNEL channel)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 269
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:278,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:279,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:292,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 271
    functionDepth: 1
    functionLinenumber: 271
    functionLinenumberEnd: 296
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c
    functionUses: 0
    functionsReached:
    - GF_REGISTER_MODULE_INTERFACE
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:301,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:305,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:307,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c:308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 298
    functionDepth: 1
    functionLinenumber: 298
    functionLinenumberEnd: 310
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/hyb_in/hyb_in.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - buffer
    - offset
    argTypes:
    - unsigned char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 58
    functionName: read_s16
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s16
    signature: s16 read_s16(unsigned char *buffer, int offset)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - udta
    - event
    - consumed_by_compositor
    argTypes:
    - void*
    - GF_Event*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 75
    functionName: psvr_on_event
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool psvr_on_event(void *udta, GF_Event *event, Bool consumed_by_compositor)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: hid_init
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:81,1
    - Dst: hid_open
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:83,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:85,1
    - Dst: gf_term_add_event_filter
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:91,1
    - Dst: hid_read_timeout
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:98,1
    - Dst: read_s16
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:102,1
    - Dst: read_s16
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:102,1
    - Dst: read_s16
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:103,1
    - Dst: read_s16
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:103,1
    - Dst: read_s16
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:104,1
    - Dst: read_s16
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:104,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:118,1
    - Dst: gf_term_user_event
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:125,1
    - Dst: hid_close
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:129,1
    - Dst: gf_term_remove_event_filter
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:132,1
    - Dst: hid_exit
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:134,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 40
    argCount: 1
    argNames:
    - __psvr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 136
    functionName: psvr_run
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c
    functionUses: 0
    functionsReached:
    - hid_init
    - read_s16
    - gf_term_user_event
    - GF_LOG
    - hid_read_timeout
    - gf_term_add_event_filter
    - memset
    - hid_close
    - gf_term_remove_event_filter
    - hid_exit
    - hid_open
    linkageType: ''
    returnType: u32
    signature: u32 psvr_run(void *__psvr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:146,1
    - Dst: strcmp
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:147,1
    - Dst: gf_th_run
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:149,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - termext
    - action
    - param
    argTypes:
    - GF_TermExt*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 157
    functionName: psvr_process
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c
    functionUses: 0
    functionsReached:
    - gf_th_run
    - strcmp
    - gf_opts_get_key
    linkageType: ''
    returnType: Bool
    signature: Bool psvr_process(GF_TermExt *termext, u32 action, void *param)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:164,1
    - Dst: memset
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:165,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:166,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:168,1
    - Dst: gf_th_new
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 174
    functionName: psvr_new
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_th_new
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - gf_malloc
    linkageType: ''
    returnType: GF_TermExt
    signature: GF_TermExt *psvr_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_del
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:181,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:182,1
    - Dst: gf_free
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 184
    functionName: psvr_delete
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_th_del
    linkageType: ''
    returnType: void
    signature: void psvr_delete(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 194
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: psvr_new
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:199,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 196
    functionDepth: 2
    functionLinenumber: 196
    functionLinenumberEnd: 201
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c
    functionUses: 0
    functionsReached:
    - psvr_new
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: psvr_delete
      Src: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c:208,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 203
    functionDepth: 1
    functionLinenumber: 203
    functionLinenumberEnd: 211
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/deprecated/old_arch/psvr/psvr.c
    functionUses: 0
    functionsReached:
    - psvr_delete
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ChangeDisplaySettings
      Src: /src/gpac/modules/dx_hw/dx_video.c:101,1
    - Dst: DDContext*::pDD::lpVtbl::SetCooperativeLevel
      Src: /src/gpac/modules/dx_hw/dx_video.c:106,1
    - Dst: SetFocus
      Src: /src/gpac/modules/dx_hw/dx_video.c:110,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - dd
    argTypes:
    - DDContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 111
    functionName: RestoreWindow
    functionSourceFile: /src/gpac/modules/dx_hw/dx_video.c
    functionUses: 0
    functionsReached:
    - ChangeDisplaySettings
    - DDContext*::pDD::lpVtbl::SetCooperativeLevel
    - SetFocus
    linkageType: ''
    returnType: void
    signature: void RestoreWindow(DDContext *dd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SAFE_DD_RELEASE
      Src: /src/gpac/modules/dx_hw/dx_video.c:118,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_video.c:119,1
    - Dst: SAFE_DD_RELEASE
      Src: /src/gpac/modules/dx_hw/dx_video.c:120,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_video.c:121,1
    - Dst: SAFE_DD_RELEASE
      Src: /src/gpac/modules/dx_hw/dx_video.c:124,1
    - Dst: SAFE_DD_RELEASE
      Src: /src/gpac/modules/dx_hw/dx_video.c:125,1
    - Dst: SAFE_DD_RELEASE
      Src: /src/gpac/modules/dx_hw/dx_video.c:126,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - dd
    - only_3d
    argTypes:
    - DDContext*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 132
    functionName: DestroyObjectsEx
    functionSourceFile: /src/gpac/modules/dx_hw/dx_video.c
    functionUses: 0
    functionsReached:
    - SAFE_DD_RELEASE
    - memset
    linkageType: ''
    returnType: void
    signature: void DestroyObjectsEx(DDContext *dd, Bool only_3d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DestroyObjectsEx
      Src: /src/gpac/modules/dx_hw/dx_video.c:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dd
    argTypes:
    - DDContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 174
    functionDepth: 2
    functionLinenumber: 174
    functionLinenumberEnd: 177
    functionName: DestroyObjects
    functionSourceFile: /src/gpac/modules/dx_hw/dx_video.c
    functionUses: 0
    functionsReached:
    - DestroyObjectsEx
    linkageType: ''
    returnType: void
    signature: void DestroyObjects(DDContext *dd)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/dx_hw/dx_video.c:198,1
    - Dst: atoi
      Src: /src/gpac/modules/dx_hw/dx_video.c:199,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/dx_hw/dx_video.c:210,1
    - Dst: atoi
      Src: /src/gpac/modules/dx_hw/dx_video.c:211,1
    - Dst: DestroyObjects
      Src: /src/gpac/modules/dx_hw/dx_video.c:224,1
    - Dst: GetDC
      Src: /src/gpac/modules/dx_hw/dx_video.c:225,1
    - Dst: eglGetDisplay
      Src: /src/gpac/modules/dx_hw/dx_video.c:226,1
    - Dst: eglInitialize
      Src: /src/gpac/modules/dx_hw/dx_video.c:227,1
    - Dst: eglChooseConfig
      Src: /src/gpac/modules/dx_hw/dx_video.c:228,1
    - Dst: eglCreateWindowSurface
      Src: /src/gpac/modules/dx_hw/dx_video.c:230,1
    - Dst: eglBindAPI
      Src: /src/gpac/modules/dx_hw/dx_video.c:240,1
    - Dst: eglCreateContext
      Src: /src/gpac/modules/dx_hw/dx_video.c:241,1
    - Dst: eglCreateContext
      Src: /src/gpac/modules/dx_hw/dx_video.c:243,1
    - Dst: eglDestroySurface
      Src: /src/gpac/modules/dx_hw/dx_video.c:247,1
    - Dst: eglMakeCurrent
      Src: /src/gpac/modules/dx_hw/dx_video.c:251,1
    - Dst: eglDestroyContext
      Src: /src/gpac/modules/dx_hw/dx_video.c:252,1
    - Dst: eglDestroySurface
      Src: /src/gpac/modules/dx_hw/dx_video.c:254,1
    - Dst: DestroyObjectsEx
      Src: /src/gpac/modules/dx_hw/dx_video.c:276,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/dx_hw/dx_video.c:283,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/dx_hw/dx_video.c:285,1
    - Dst: atoi
      Src: /src/gpac/modules/dx_hw/dx_video.c:288,1
    - Dst: CreateWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:292,1
    - Dst: CreateWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:294,1
    - Dst: GetDC
      Src: /src/gpac/modules/dx_hw/dx_video.c:296,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_video.c:298,1
    - Dst: ChoosePixelFormat
      Src: /src/gpac/modules/dx_hw/dx_video.c:302,1
    - Dst: SetPixelFormat
      Src: /src/gpac/modules/dx_hw/dx_video.c:304,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_video.c:305,1
    - Dst: GetLastError
      Src: /src/gpac/modules/dx_hw/dx_video.c:305,1
    - Dst: wglCreateContext
      Src: /src/gpac/modules/dx_hw/dx_video.c:308,1
    - Dst: wglGetCurrentContext
      Src: /src/gpac/modules/dx_hw/dx_video.c:311,1
    - Dst: wglShareLists
      Src: /src/gpac/modules/dx_hw/dx_video.c:312,1
    - Dst: wglMakeCurrent
      Src: /src/gpac/modules/dx_hw/dx_video.c:314,1
    - Dst: wglGetProcAddress
      Src: /src/gpac/modules/dx_hw/dx_video.c:315,1
    - Dst: wglGetProcAddress
      Src: /src/gpac/modules/dx_hw/dx_video.c:316,1
    - Dst: wglMakeCurrent
      Src: /src/gpac/modules/dx_hw/dx_video.c:318,1
    - Dst: wglDeleteContext
      Src: /src/gpac/modules/dx_hw/dx_video.c:319,1
    - Dst: ReleaseDC
      Src: /src/gpac/modules/dx_hw/dx_video.c:321,1
    - Dst: DestroyWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:322,1
    - Dst: GetDC
      Src: /src/gpac/modules/dx_hw/dx_video.c:331,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/dx_hw/dx_video.c:338,1
    - Dst: strcmp
      Src: /src/gpac/modules/dx_hw/dx_video.c:339,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/dx_hw/dx_video.c:342,1
    - Dst: atoi
      Src: /src/gpac/modules/dx_hw/dx_video.c:343,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_video.c:345,1
    - Dst: wglChoosePixelFormatARB
      Src: /src/gpac/modules/dx_hw/dx_video.c:368,1
    - Dst: SetPixelFormat
      Src: /src/gpac/modules/dx_hw/dx_video.c:371,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_video.c:377,1
    - Dst: GetLastError
      Src: /src/gpac/modules/dx_hw/dx_video.c:377,1
    - Dst: DD_SetupOpenGL
      Src: /src/gpac/modules/dx_hw/dx_video.c:379,1
    - Dst: wglGetPixelFormatAttribivARB
      Src: /src/gpac/modules/dx_hw/dx_video.c:388,1
    - Dst: wglGetPixelFormatAttribivARB
      Src: /src/gpac/modules/dx_hw/dx_video.c:390,1
    - Dst: wglGetPixelFormatAttribivARB
      Src: /src/gpac/modules/dx_hw/dx_video.c:392,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_video.c:395,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_video.c:397,1
    - Dst: ChoosePixelFormat
      Src: /src/gpac/modules/dx_hw/dx_video.c:413,1
    - Dst: SetPixelFormat
      Src: /src/gpac/modules/dx_hw/dx_video.c:415,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_video.c:416,1
    - Dst: GetLastError
      Src: /src/gpac/modules/dx_hw/dx_video.c:416,1
    - Dst: wglCreateContext
      Src: /src/gpac/modules/dx_hw/dx_video.c:421,1
    - Dst: wglMakeCurrent
      Src: /src/gpac/modules/dx_hw/dx_video.c:426,1
    - Dst: wglGetProcAddress
      Src: /src/gpac/modules/dx_hw/dx_video.c:431,1
    - Dst: wglSwapIntervalEXT
      Src: /src/gpac/modules/dx_hw/dx_video.c:434,1
    - Dst: wglMakeCurrent
      Src: /src/gpac/modules/dx_hw/dx_video.c:438,1
    - Dst: SetWindowLongPtr
      Src: /src/gpac/modules/dx_hw/dx_video.c:446,1
    - Dst: SetWindowLong
      Src: /src/gpac/modules/dx_hw/dx_video.c:448,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_video.c:456,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_video.c:459,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 191
    argCount: 3
    argNames:
    - dr
    - offscreen_width
    - offscreen_height
    argTypes:
    - GF_VideoOutput*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 181
    functionDepth: 3
    functionLinenumber: 181
    functionLinenumberEnd: 462
    functionName: DD_SetupOpenGL
    functionSourceFile: /src/gpac/modules/dx_hw/dx_video.c
    functionUses: 1
    functionsReached:
    - GetLastError
    - gf_opts_set_key
    - ChoosePixelFormat
    - GF_VideoOutput*::on_event
    - eglDestroyContext
    - memset
    - gf_opts_get_key
    - atoi
    - eglCreateContext
    - DestroyObjects
    - eglMakeCurrent
    - eglDestroySurface
    - eglInitialize
    - DestroyWindow
    - ReleaseDC
    - eglChooseConfig
    - DestroyObjectsEx
    - GF_LOG
    - wglChoosePixelFormatARB
    - wglCreateContext
    - wglSwapIntervalEXT
    - eglBindAPI
    - eglGetDisplay
    - GetDC
    - wglMakeCurrent
    - wglGetProcAddress
    - wglDeleteContext
    - SetPixelFormat
    - wglGetPixelFormatAttribivARB
    - DD_SetupOpenGL
    - strcmp
    - wglGetCurrentContext
    - SetWindowLong
    - CreateWindow
    - eglCreateWindowSurface
    - SetWindowLongPtr
    - wglShareLists
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DD_SetupOpenGL(GF_VideoOutput *dr, u32 offscreen_width, u32
      offscreen_height)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ShowWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:475,1
    - Dst: DD_SetupWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:480,1
    - Dst: GetDC
      Src: /src/gpac/modules/dx_hw/dx_video.c:487,1
    - Dst: GetDeviceCaps
      Src: /src/gpac/modules/dx_hw/dx_video.c:488,1
    - Dst: GetDeviceCaps
      Src: /src/gpac/modules/dx_hw/dx_video.c:489,1
    - Dst: ReleaseDC
      Src: /src/gpac/modules/dx_hw/dx_video.c:490,1
    - Dst: GetWindowRect
      Src: /src/gpac/modules/dx_hw/dx_video.c:496,1
    - Dst: gf_module_get_bool
      Src: /src/gpac/modules/dx_hw/dx_video.c:498,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 4
    argNames:
    - dr
    - os_handle
    - os_display
    - init_flags
    argTypes:
    - GF_VideoOutput*
    - void*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 501
      start: 468
    functionDepth: 1
    functionLinenumber: 468
    functionLinenumberEnd: 501
    functionName: DD_Setup
    functionSourceFile: /src/gpac/modules/dx_hw/dx_video.c
    functionUses: 0
    functionsReached:
    - ShowWindow
    - gf_module_get_bool
    - ReleaseDC
    - GetDeviceCaps
    - DD_SetupWindow
    - GetDC
    - GetWindowRect
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DD_Setup(GF_VideoOutput *dr, void *os_handle, void *os_display,
      u32 init_flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DD_ShutdownWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:510,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 503
    functionDepth: 1
    functionLinenumber: 503
    functionLinenumberEnd: 511
    functionName: DD_Shutdown
    functionSourceFile: /src/gpac/modules/dx_hw/dx_video.c
    functionUses: 0
    functionsReached:
    - DD_ShutdownWindow
    linkageType: ''
    returnType: void
    signature: void DD_Shutdown(GF_VideoOutput *dr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FindWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:516,1
    - Dst: FindWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:517,1
    - Dst: FindWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:519,1
    - Dst: FindWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:520,1
    - Dst: ShowWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:524,1
    - Dst: UpdateWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:525,1
    - Dst: ShowWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:529,1
    - Dst: UpdateWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:530,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - show
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 513
    functionDepth: 0
    functionLinenumber: 513
    functionLinenumberEnd: 532
    functionName: DD_ShowTaskbar
    functionSourceFile: /src/gpac/modules/dx_hw/dx_video.c
    functionUses: 0
    functionsReached:
    - ShowWindow
    - FindWindow
    - UpdateWindow
    linkageType: ''
    returnType: void
    signature: void DD_ShowTaskbar(Bool show)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_module_get_bool
      Src: /src/gpac/modules/dx_hw/dx_video.c:549,1
    - Dst: GetDisplayMode
      Src: /src/gpac/modules/dx_hw/dx_video.c:551,1
    - Dst: RestoreWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:554,1
    - Dst: DestroyObjects
      Src: /src/gpac/modules/dx_hw/dx_video.c:556,1
    - Dst: KillTimer
      Src: /src/gpac/modules/dx_hw/dx_video.c:558,1
    - Dst: ShowWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:561,1
    - Dst: ShowWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:563,1
    - Dst: ShowWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:565,1
    - Dst: SetWindowLong
      Src: /src/gpac/modules/dx_hw/dx_video.c:566,1
    - Dst: ShowWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:567,1
    - Dst: DD_ShowTaskbar
      Src: /src/gpac/modules/dx_hw/dx_video.c:580,1
    - Dst: MonitorFromWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:583,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_video.c:585,1
    - Dst: GetMonitorInfo
      Src: /src/gpac/modules/dx_hw/dx_video.c:588,1
    - Dst: SetWindowPos
      Src: /src/gpac/modules/dx_hw/dx_video.c:602,1
    - Dst: SetWindowPos
      Src: /src/gpac/modules/dx_hw/dx_video.c:604,1
    - Dst: DD_ShowTaskbar
      Src: /src/gpac/modules/dx_hw/dx_video.c:607,1
    - Dst: DD_SetupOpenGL
      Src: /src/gpac/modules/dx_hw/dx_video.c:613,1
    - Dst: InitDirectDraw
      Src: /src/gpac/modules/dx_hw/dx_video.c:626,1
    - Dst: InitDirectDraw
      Src: /src/gpac/modules/dx_hw/dx_video.c:628,1
    - Dst: SetForegroundWindow
      Src: /src/gpac/modules/dx_hw/dx_video.c:641,1
    - Dst: SetFocus
      Src: /src/gpac/modules/dx_hw/dx_video.c:642,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 85
    argCount: 4
    argNames:
    - dr
    - bOn
    - outWidth
    - outHeight
    argTypes:
    - GF_VideoOutput*
    - Bool
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 644
      start: 533
    functionDepth: 4
    functionLinenumber: 533
    functionLinenumberEnd: 644
    functionName: DD_SetFullScreen
    functionSourceFile: /src/gpac/modules/dx_hw/dx_video.c
    functionUses: 0
    functionsReached:
    - InitDirectDraw
    - ShowWindow
    - gf_module_get_bool
    - GetMonitorInfo
    - SetWindowPos
    - MonitorFromWindow
    - SetFocus
    - SetForegroundWindow
    - memset
    - RestoreWindow
    - DD_SetupOpenGL
    - SetWindowLong
    - DestroyObjects
    - KillTimer
    - GetDisplayMode
    - DD_ShowTaskbar
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DD_SetFullScreen(GF_VideoOutput *dr, Bool bOn, u32 *outWidth,
      u32 *outHeight)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_video.c:655,1
    - Dst: eglSwapBuffers
      Src: /src/gpac/modules/dx_hw/dx_video.c:661,1
    - Dst: SwapBuffers
      Src: /src/gpac/modules/dx_hw/dx_video.c:663,1
    - Dst: GF_VideoOutput*::LockOSContext
      Src: /src/gpac/modules/dx_hw/dx_video.c:675,1
    - Dst: GetDC
      Src: /src/gpac/modules/dx_hw/dx_video.c:677,1
    - Dst: BitBlt
      Src: /src/gpac/modules/dx_hw/dx_video.c:678,1
    - Dst: ReleaseDC
      Src: /src/gpac/modules/dx_hw/dx_video.c:679,1
    - Dst: GF_VideoOutput*::LockOSContext
      Src: /src/gpac/modules/dx_hw/dx_video.c:681,1
    - Dst: pDD::lpVtbl::WaitForVerticalBlank
      Src: /src/gpac/modules/dx_hw/dx_video.c:686,1
    - Dst: ClientToScreen
      Src: /src/gpac/modules/dx_hw/dx_video.c:692,1
    - Dst: MAKERECT
      Src: /src/gpac/modules/dx_hw/dx_video.c:695,1
    - Dst: pPrimary::lpVtbl::Blt
      Src: /src/gpac/modules/dx_hw/dx_video.c:696,1
    - Dst: pPrimary::lpVtbl::Blt
      Src: /src/gpac/modules/dx_hw/dx_video.c:698,1
    - Dst: pPrimary::lpVtbl::Restore
      Src: /src/gpac/modules/dx_hw/dx_video.c:701,1
    - Dst: pBack::lpVtbl::Restore
      Src: /src/gpac/modules/dx_hw/dx_video.c:702,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_video.c:704,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 39
    argCount: 2
    argNames:
    - dr
    - dest
    argTypes:
    - GF_VideoOutput*
    - GF_Window*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 705
      start: 647
    functionDepth: 1
    functionLinenumber: 647
    functionLinenumberEnd: 705
    functionName: DD_Flush
    functionSourceFile: /src/gpac/modules/dx_hw/dx_video.c
    functionUses: 0
    functionsReached:
    - pBack::lpVtbl::Restore
    - ClientToScreen
    - pPrimary::lpVtbl::Blt
    - pDD::lpVtbl::WaitForVerticalBlank
    - MAKERECT
    - GF_LOG
    - SwapBuffers
    - eglSwapBuffers
    - ReleaseDC
    - FAILED
    - pPrimary::lpVtbl::Restore
    - GetDC
    - GF_VideoOutput*::LockOSContext
    - BitBlt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DD_Flush(GF_VideoOutput *dr, GF_Window *dest)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 2
    argNames:
    - lpDDDesc
    - lpContext
    argTypes:
    - LPDDSURFDESC
    - LPVOID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 727
      start: 709
    functionDepth: 0
    functionLinenumber: 709
    functionLinenumberEnd: 727
    functionName: EnumDisplayModes
    functionSourceFile: /src/gpac/modules/dx_hw/dx_video.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: HRESULT
    signature: HRESULT EnumDisplayModes( LPDDSURFDESC lpDDDesc, LPVOID lpContext)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: DDContext*::DirectDrawCreate
      Src: /src/gpac/modules/dx_hw/dx_video.c:736,1
    - Dst: LPDIRECTDRAW::lpVtbl::QueryInterface
      Src: /src/gpac/modules/dx_hw/dx_video.c:737,1
    - Dst: DDContext*::pDD::lpVtbl::EnumDisplayModes
      Src: /src/gpac/modules/dx_hw/dx_video.c:743,1
    - Dst: SAFE_DD_RELEASE
      Src: /src/gpac/modules/dx_hw/dx_video.c:745,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_video.c:746,1
    - Dst: GetSystemMetrics
      Src: /src/gpac/modules/dx_hw/dx_video.c:748,1
    - Dst: GetSystemMetrics
      Src: /src/gpac/modules/dx_hw/dx_video.c:749,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - dd
    argTypes:
    - DDContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 752
      start: 729
    functionDepth: 1
    functionLinenumber: 729
    functionLinenumberEnd: 752
    functionName: GetDisplayMode
    functionSourceFile: /src/gpac/modules/dx_hw/dx_video.c
    functionUses: 1
    functionsReached:
    - LPDIRECTDRAW::lpVtbl::QueryInterface
    - DDContext*::pDD::lpVtbl::EnumDisplayModes
    - GetSystemMetrics
    - SAFE_DD_RELEASE
    - FAILED
    - DDContext*::DirectDrawCreate
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GetDisplayMode(DDContext *dd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/dx_hw/dx_video.c:759,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_video.c:760,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/dx_hw/dx_video.c:761,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/dx_hw/dx_video.c:763,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_video.c:764,1
    - Dst: LoadLibrary
      Src: /src/gpac/modules/dx_hw/dx_video.c:773,1
    - Dst: LoadLibrary
      Src: /src/gpac/modules/dx_hw/dx_video.c:775,1
    - Dst: GetProcAddress
      Src: /src/gpac/modules/dx_hw/dx_video.c:778,1
    - Dst: GetSystemMetrics
      Src: /src/gpac/modules/dx_hw/dx_video.c:781,1
    - Dst: GetSystemMetrics
      Src: /src/gpac/modules/dx_hw/dx_video.c:782,1
    - Dst: DD_SetupDDraw
      Src: /src/gpac/modules/dx_hw/dx_video.c:786,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 789
      start: 756
    functionDepth: 1
    functionLinenumber: 756
    functionLinenumberEnd: 789
    functionName: NewDXVideoOutput
    functionSourceFile: /src/gpac/modules/dx_hw/dx_video.c
    functionUses: 0
    functionsReached:
    - GetProcAddress
    - GetSystemMetrics
    - DD_SetupDDraw
    - memset
    - LoadLibrary
    - GF_REGISTER_MODULE_INTERFACE
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void *NewDXVideoOutput()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: DD_ShowTaskbar
      Src: /src/gpac/modules/dx_hw/dx_video.c:797,1
    - Dst: FreeLibrary
      Src: /src/gpac/modules/dx_hw/dx_video.c:801,1
    - Dst: gf_free
      Src: /src/gpac/modules/dx_hw/dx_video.c:804,1
    - Dst: gf_free
      Src: /src/gpac/modules/dx_hw/dx_video.c:806,1
    - Dst: gf_free
      Src: /src/gpac/modules/dx_hw/dx_video.c:807,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 808
      start: 791
    functionDepth: 1
    functionLinenumber: 791
    functionLinenumberEnd: 808
    functionName: DeleteVideoOutput
    functionSourceFile: /src/gpac/modules/dx_hw/dx_video.c
    functionUses: 2
    functionsReached:
    - gf_free
    - FreeLibrary
    - DD_ShowTaskbar
    linkageType: ''
    returnType: void
    signature: void DeleteVideoOutput(void *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 820
      start: 811
    functionDepth: 0
    functionLinenumber: 811
    functionLinenumberEnd: 820
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/dx_hw/dx_video.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: NewDXVideoOutput
      Src: /src/gpac/modules/dx_hw/dx_video.c:825,1
    - Dst: NewAudioOutput
      Src: /src/gpac/modules/dx_hw/dx_video.c:826,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 828
      start: 822
    functionDepth: 2
    functionLinenumber: 822
    functionLinenumberEnd: 828
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/dx_hw/dx_video.c
    functionUses: 0
    functionsReached:
    - NewDXVideoOutput
    - NewAudioOutput
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: DeleteVideoOutput
      Src: /src/gpac/modules/dx_hw/dx_video.c:835,1
    - Dst: DeleteDxAudioOutput
      Src: /src/gpac/modules/dx_hw/dx_video.c:838,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 841
      start: 830
    functionDepth: 1
    functionLinenumber: 830
    functionLinenumberEnd: 841
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/dx_hw/dx_video.c
    functionUses: 0
    functionsReached:
    - DeleteVideoOutput
    - DeleteDxAudioOutput
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LOWORD
      Src: /src/gpac/modules/dx_hw/dx_window.c:49,1
    - Dst: HIWORD
      Src: /src/gpac/modules/dx_hw/dx_window.c:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - lParam
    - evt
    argTypes:
    - DWORD
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionName: DD_GetCoordinates
    functionSourceFile: /src/gpac/modules/dx_hw/dx_window.c
    functionUses: 0
    functionsReached:
    - LOWORD
    - HIWORD
    linkageType: ''
    returnType: void
    signature: void DD_GetCoordinates(DWORD lParam, GF_Event *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAKEPOINTS
      Src: /src/gpac/modules/dx_hw/dx_window.c:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - lParam
    - evt
    argTypes:
    - LPARAM
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 59
    functionName: DD_GetCoordinates
    functionSourceFile: /src/gpac/modules/dx_hw/dx_window.c
    functionUses: 0
    functionsReached:
    - MAKEPOINTS
    linkageType: ''
    returnType: void
    signature: void DD_GetCoordinates(LPARAM lParam, GF_Event *evt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_window.c:195,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - wParam
    - lParam
    - evt
    argTypes:
    - WPARAM
    - LPARAM
    - GF_EventKey*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 198
    functionName: w32_translate_key
    functionSourceFile: /src/gpac/modules/dx_hw/dx_window.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void w32_translate_key(WPARAM wParam, LPARAM lParam, GF_EventKey *evt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/modules/dx_hw/dx_window.c:204,1
    - Dst: DD_SetCursor
      Src: /src/gpac/modules/dx_hw/dx_window.c:205,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - vout
    argTypes:
    - DDContext*
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 201
    functionDepth: 1
    functionLinenumber: 201
    functionLinenumberEnd: 207
    functionName: mouse_move
    functionSourceFile: /src/gpac/modules/dx_hw/dx_window.c
    functionUses: 0
    functionsReached:
    - DD_SetCursor
    - gf_sys_clock
    linkageType: ''
    returnType: void
    signature: void mouse_move(DDContext *ctx, GF_VideoOutput *vout)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SetTimer
      Src: /src/gpac/modules/dx_hw/dx_window.c:212,1
    - Dst: mouse_move
      Src: /src/gpac/modules/dx_hw/dx_window.c:213,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - hWnd
    - vout
    argTypes:
    - DDContext*
    - HWND
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 209
    functionDepth: 2
    functionLinenumber: 209
    functionLinenumberEnd: 215
    functionName: mouse_start_timer
    functionSourceFile: /src/gpac/modules/dx_hw/dx_window.c
    functionUses: 0
    functionsReached:
    - mouse_move
    - SetTimer
    linkageType: ''
    returnType: void
    signature: void mouse_start_timer(DDContext *ctx, HWND hWnd, GF_VideoOutput *vout)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DD_SetCursor
      Src: /src/gpac/modules/dx_hw/dx_window.c:219,1
    - Dst: SetCapture
      Src: /src/gpac/modules/dx_hw/dx_window.c:220,1
    - Dst: mouse_move
      Src: /src/gpac/modules/dx_hw/dx_window.c:221,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - vout
    argTypes:
    - DDContext*
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 217
    functionDepth: 2
    functionLinenumber: 217
    functionLinenumberEnd: 222
    functionName: grab_mouse
    functionSourceFile: /src/gpac/modules/dx_hw/dx_window.c
    functionUses: 0
    functionsReached:
    - DD_SetCursor
    - mouse_move
    - SetCapture
    linkageType: ''
    returnType: void
    signature: void grab_mouse(DDContext *ctx, GF_VideoOutput *vout)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ReleaseCapture
      Src: /src/gpac/modules/dx_hw/dx_window.c:225,1
    - Dst: mouse_start_timer
      Src: /src/gpac/modules/dx_hw/dx_window.c:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ctx
    - hWnd
    - vout
    argTypes:
    - DDContext*
    - HWND
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 223
    functionDepth: 3
    functionLinenumber: 223
    functionLinenumberEnd: 227
    functionName: release_mouse
    functionSourceFile: /src/gpac/modules/dx_hw/dx_window.c
    functionUses: 0
    functionsReached:
    - ReleaseCapture
    - mouse_start_timer
    linkageType: ''
    returnType: void
    signature: void release_mouse(DDContext *ctx, HWND hWnd, GF_VideoOutput *vout)
  - BBCount: 81
    BranchProfiles: []
    Callsites:
    - Dst: GetWindowLongPtr
      Src: /src/gpac/modules/dx_hw/dx_window.c:235,1
    - Dst: GetWindowLong
      Src: /src/gpac/modules/dx_hw/dx_window.c:237,1
    - Dst: DefWindowProc
      Src: /src/gpac/modules/dx_hw/dx_window.c:239,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:249,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:255,1
    - Dst: LOWORD
      Src: /src/gpac/modules/dx_hw/dx_window.c:258,1
    - Dst: HIWORD
      Src: /src/gpac/modules/dx_hw/dx_window.c:259,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:260,1
    - Dst: LOWORD
      Src: /src/gpac/modules/dx_hw/dx_window.c:265,1
    - Dst: HIWORD
      Src: /src/gpac/modules/dx_hw/dx_window.c:266,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:267,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_window.c:271,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:273,1
    - Dst: PostQuitMessage
      Src: /src/gpac/modules/dx_hw/dx_window.c:278,1
    - Dst: SetWindowLongPtr
      Src: /src/gpac/modules/dx_hw/dx_window.c:282,1
    - Dst: SetWindowLong
      Src: /src/gpac/modules/dx_hw/dx_window.c:284,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_window.c:291,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:294,1
    - Dst: LOWORD
      Src: /src/gpac/modules/dx_hw/dx_window.c:298,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:302,1
    - Dst: SetFocus
      Src: /src/gpac/modules/dx_hw/dx_window.c:310,1
    - Dst: SetFocus
      Src: /src/gpac/modules/dx_hw/dx_window.c:320,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:331,1
    - Dst: DefWindowProc
      Src: /src/gpac/modules/dx_hw/dx_window.c:334,1
    - Dst: DD_SetCursor
      Src: /src/gpac/modules/dx_hw/dx_window.c:337,1
    - Dst: DragQueryFile
      Src: /src/gpac/modules/dx_hw/dx_window.c:347,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/dx_hw/dx_window.c:348,1
    - Dst: DragQueryFile
      Src: /src/gpac/modules/dx_hw/dx_window.c:352,1
    - Dst: DragQueryFile
      Src: /src/gpac/modules/dx_hw/dx_window.c:354,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/dx_hw/dx_window.c:356,1
    - Dst: DragFinish
      Src: /src/gpac/modules/dx_hw/dx_window.c:358,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:360,1
    - Dst: gf_free
      Src: /src/gpac/modules/dx_hw/dx_window.c:362,1
    - Dst: gf_free
      Src: /src/gpac/modules/dx_hw/dx_window.c:364,1
    - Dst: DD_SetCursor
      Src: /src/gpac/modules/dx_hw/dx_window.c:373,1
    - Dst: DD_GetCoordinates
      Src: /src/gpac/modules/dx_hw/dx_window.c:375,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:376,1
    - Dst: mouse_start_timer
      Src: /src/gpac/modules/dx_hw/dx_window.c:377,1
    - Dst: gf_sys_clock
      Src: /src/gpac/modules/dx_hw/dx_window.c:384,1
    - Dst: DD_SetCursor
      Src: /src/gpac/modules/dx_hw/dx_window.c:386,1
    - Dst: KillTimer
      Src: /src/gpac/modules/dx_hw/dx_window.c:387,1
    - Dst: grab_mouse
      Src: /src/gpac/modules/dx_hw/dx_window.c:395,1
    - Dst: DD_GetCoordinates
      Src: /src/gpac/modules/dx_hw/dx_window.c:397,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:399,1
    - Dst: SetFocus
      Src: /src/gpac/modules/dx_hw/dx_window.c:402,1
    - Dst: release_mouse
      Src: /src/gpac/modules/dx_hw/dx_window.c:406,1
    - Dst: DD_GetCoordinates
      Src: /src/gpac/modules/dx_hw/dx_window.c:408,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:410,1
    - Dst: grab_mouse
      Src: /src/gpac/modules/dx_hw/dx_window.c:414,1
    - Dst: DD_GetCoordinates
      Src: /src/gpac/modules/dx_hw/dx_window.c:416,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:418,1
    - Dst: SetFocus
      Src: /src/gpac/modules/dx_hw/dx_window.c:421,1
    - Dst: release_mouse
      Src: /src/gpac/modules/dx_hw/dx_window.c:425,1
    - Dst: DD_GetCoordinates
      Src: /src/gpac/modules/dx_hw/dx_window.c:427,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:429,1
    - Dst: mouse_start_timer
      Src: /src/gpac/modules/dx_hw/dx_window.c:430,1
    - Dst: grab_mouse
      Src: /src/gpac/modules/dx_hw/dx_window.c:434,1
    - Dst: DD_GetCoordinates
      Src: /src/gpac/modules/dx_hw/dx_window.c:437,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:438,1
    - Dst: SetFocus
      Src: /src/gpac/modules/dx_hw/dx_window.c:441,1
    - Dst: release_mouse
      Src: /src/gpac/modules/dx_hw/dx_window.c:445,1
    - Dst: DD_GetCoordinates
      Src: /src/gpac/modules/dx_hw/dx_window.c:447,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:449,1
    - Dst: mouse_start_timer
      Src: /src/gpac/modules/dx_hw/dx_window.c:450,1
    - Dst: DD_SetCursor
      Src: /src/gpac/modules/dx_hw/dx_window.c:454,1
    - Dst: DD_GetCoordinates
      Src: /src/gpac/modules/dx_hw/dx_window.c:456,1
    - Dst: FLT2FIX
      Src: /src/gpac/modules/dx_hw/dx_window.c:457,1
    - Dst: HIWORD
      Src: /src/gpac/modules/dx_hw/dx_window.c:457,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:458,1
    - Dst: mouse_start_timer
      Src: /src/gpac/modules/dx_hw/dx_window.c:459,1
    - Dst: DD_SetCursor
      Src: /src/gpac/modules/dx_hw/dx_window.c:464,1
    - Dst: LOWORD
      Src: /src/gpac/modules/dx_hw/dx_window.c:467,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:489,1
    - Dst: mouse_start_timer
      Src: /src/gpac/modules/dx_hw/dx_window.c:490,1
    - Dst: w32_translate_key
      Src: /src/gpac/modules/dx_hw/dx_window.c:499,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_window.c:504,1
    - Dst: IsClipboardFormatAvailable
      Src: /src/gpac/modules/dx_hw/dx_window.c:509,1
    - Dst: OpenClipboard
      Src: /src/gpac/modules/dx_hw/dx_window.c:510,1
    - Dst: GetClipboardData
      Src: /src/gpac/modules/dx_hw/dx_window.c:512,1
    - Dst: GlobalLock
      Src: /src/gpac/modules/dx_hw/dx_window.c:515,1
    - Dst: GlobalLock
      Src: /src/gpac/modules/dx_hw/dx_window.c:520,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:524,1
    - Dst: GlobalUnlock
      Src: /src/gpac/modules/dx_hw/dx_window.c:525,1
    - Dst: CloseClipboard
      Src: /src/gpac/modules/dx_hw/dx_window.c:527,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:532,1
    - Dst: IsClipboardFormatAvailable
      Src: /src/gpac/modules/dx_hw/dx_window.c:536,1
    - Dst: OpenClipboard
      Src: /src/gpac/modules/dx_hw/dx_window.c:537,1
    - Dst: EmptyClipboard
      Src: /src/gpac/modules/dx_hw/dx_window.c:538,1
    - Dst: strlen
      Src: /src/gpac/modules/dx_hw/dx_window.c:540,1
    - Dst: GlobalAlloc
      Src: /src/gpac/modules/dx_hw/dx_window.c:543,1
    - Dst: GlobalLock
      Src: /src/gpac/modules/dx_hw/dx_window.c:546,1
    - Dst: memcpy
      Src: /src/gpac/modules/dx_hw/dx_window.c:547,1
    - Dst: GlobalLock
      Src: /src/gpac/modules/dx_hw/dx_window.c:550,1
    - Dst: memcpy
      Src: /src/gpac/modules/dx_hw/dx_window.c:551,1
    - Dst: GlobalUnlock
      Src: /src/gpac/modules/dx_hw/dx_window.c:554,1
    - Dst: SetClipboardData
      Src: /src/gpac/modules/dx_hw/dx_window.c:555,1
    - Dst: CloseClipboard
      Src: /src/gpac/modules/dx_hw/dx_window.c:556,1
    - Dst: gf_free
      Src: /src/gpac/modules/dx_hw/dx_window.c:557,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:561,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/dx_hw/dx_window.c:572,1
    - Dst: DefWindowProc
      Src: /src/gpac/modules/dx_hw/dx_window.c:581,1
    - Dst: CallWindowProc
      Src: /src/gpac/modules/dx_hw/dx_window.c:585,1
    CyclomaticComplexity: 106
    EdgeCount: 106
    ICount: 303
    argCount: 4
    argNames:
    - hWnd
    - msg
    - wParam
    - lParam
    argTypes:
    - HWND
    - UINT
    - WPARAM
    - LPARAM
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 229
    functionDepth: 4
    functionLinenumber: 229
    functionLinenumberEnd: 587
    functionName: DD_WindowProc
    functionSourceFile: /src/gpac/modules/dx_hw/dx_window.c
    functionUses: 0
    functionsReached:
    - gf_free
    - release_mouse
    - GlobalUnlock
    - SetFocus
    - GF_VideoOutput*::on_event
    - memset
    - GetClipboardData
    - gf_sys_clock
    - gf_strdup
    - OpenClipboard
    - DragQueryFile
    - memcpy
    - EmptyClipboard
    - GetWindowLong
    - DD_GetCoordinates
    - IsClipboardFormatAvailable
    - PostQuitMessage
    - GlobalAlloc
    - FLT2FIX
    - grab_mouse
    - DefWindowProc
    - w32_translate_key
    - CallWindowProc
    - CloseClipboard
    - SetClipboardData
    - HIWORD
    - KillTimer
    - gf_malloc
    - DragFinish
    - GetWindowLongPtr
    - strlen
    - GlobalLock
    - DD_SetCursor
    - LOWORD
    - SetWindowLong
    - mouse_start_timer
    - SetWindowLongPtr
    linkageType: ''
    returnType: LRESULT
    signature: LRESULT DD_WindowProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_window.c:604,1
    - Dst: GetVersionEx
      Src: /src/gpac/modules/dx_hw/dx_window.c:618,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_window.c:622,1
    - Dst: GetModuleHandle
      Src: /src/gpac/modules/dx_hw/dx_window.c:624,1
    - Dst: GetModuleHandle
      Src: /src/gpac/modules/dx_hw/dx_window.c:626,1
    - Dst: GetProcAddress
      Src: /src/gpac/modules/dx_hw/dx_window.c:630,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_window.c:632,1
    - Dst: SetWindowLong
      Src: /src/gpac/modules/dx_hw/dx_window.c:636,1
    - Dst: GetWindowLong
      Src: /src/gpac/modules/dx_hw/dx_window.c:636,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/dx_hw/dx_window.c:639,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/dx_hw/dx_window.c:641,1
    - Dst: sscanf
      Src: /src/gpac/modules/dx_hw/dx_window.c:645,1
    - Dst: RGB
      Src: /src/gpac/modules/dx_hw/dx_window.c:646,1
    - Dst: _SetLayeredWindowAttributes
      Src: /src/gpac/modules/dx_hw/dx_window.c:648,1
    - Dst: _SetLayeredWindowAttributes
      Src: /src/gpac/modules/dx_hw/dx_window.c:650,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_window.c:652,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 2
    argNames:
    - vout
    - hWnd
    argTypes:
    - GF_VideoOutput*
    - HWND
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 654
      start: 601
    functionDepth: 1
    functionLinenumber: 601
    functionLinenumberEnd: 654
    functionName: SetWindowless
    functionSourceFile: /src/gpac/modules/dx_hw/dx_window.c
    functionUses: 0
    functionsReached:
    - GetProcAddress
    - gf_opts_set_key
    - sscanf
    - GF_LOG
    - GetWindowLong
    - GetVersionEx
    - gf_opts_get_key
    - RGB
    - SetWindowLong
    - GetModuleHandle
    - _SetLayeredWindowAttributes
    linkageType: ''
    returnType: void
    signature: void SetWindowless(GF_VideoOutput *vout, HWND hWnd)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GetModuleHandle
      Src: /src/gpac/modules/dx_hw/dx_window.c:669,1
    - Dst: GetModuleHandle
      Src: /src/gpac/modules/dx_hw/dx_window.c:671,1
    - Dst: GetModuleHandle
      Src: /src/gpac/modules/dx_hw/dx_window.c:674,1
    - Dst: _T
      Src: /src/gpac/modules/dx_hw/dx_window.c:674,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_window.c:677,1
    - Dst: LoadIcon
      Src: /src/gpac/modules/dx_hw/dx_window.c:680,1
    - Dst: MAKEINTRESOURCE
      Src: /src/gpac/modules/dx_hw/dx_window.c:680,1
    - Dst: _T
      Src: /src/gpac/modules/dx_hw/dx_window.c:687,1
    - Dst: LoadCursor
      Src: /src/gpac/modules/dx_hw/dx_window.c:691,1
    - Dst: GetStockObject
      Src: /src/gpac/modules/dx_hw/dx_window.c:692,1
    - Dst: RegisterClass
      Src: /src/gpac/modules/dx_hw/dx_window.c:693,1
    - Dst: CreateWindow
      Src: /src/gpac/modules/dx_hw/dx_window.c:707,1
    - Dst: _T
      Src: /src/gpac/modules/dx_hw/dx_window.c:707,1
    - Dst: _T
      Src: /src/gpac/modules/dx_hw/dx_window.c:707,1
    - Dst: CreateWindow
      Src: /src/gpac/modules/dx_hw/dx_window.c:719,1
    - Dst: CreateWindow
      Src: /src/gpac/modules/dx_hw/dx_window.c:721,1
    - Dst: DragAcceptFiles
      Src: /src/gpac/modules/dx_hw/dx_window.c:728,1
    - Dst: ShowWindow
      Src: /src/gpac/modules/dx_hw/dx_window.c:731,1
    - Dst: SetForegroundWindow
      Src: /src/gpac/modules/dx_hw/dx_window.c:733,1
    - Dst: ShowWindow
      Src: /src/gpac/modules/dx_hw/dx_window.c:734,1
    - Dst: AdjustWindowRect
      Src: /src/gpac/modules/dx_hw/dx_window.c:744,1
    - Dst: SetWindowless
      Src: /src/gpac/modules/dx_hw/dx_window.c:750,1
    - Dst: CreateWindow
      Src: /src/gpac/modules/dx_hw/dx_window.c:755,1
    - Dst: _T
      Src: /src/gpac/modules/dx_hw/dx_window.c:755,1
    - Dst: _T
      Src: /src/gpac/modules/dx_hw/dx_window.c:755,1
    - Dst: CreateWindow
      Src: /src/gpac/modules/dx_hw/dx_window.c:758,1
    - Dst: CreateWindow
      Src: /src/gpac/modules/dx_hw/dx_window.c:760,1
    - Dst: ShowWindow
      Src: /src/gpac/modules/dx_hw/dx_window.c:766,1
    - Dst: SetWindowLongPtr
      Src: /src/gpac/modules/dx_hw/dx_window.c:768,1
    - Dst: SetWindowLong
      Src: /src/gpac/modules/dx_hw/dx_window.c:770,1
    - Dst: SetFocus
      Src: /src/gpac/modules/dx_hw/dx_window.c:777,1
    - Dst: SetWindowLongPtr
      Src: /src/gpac/modules/dx_hw/dx_window.c:781,1
    - Dst: SetWindowLong
      Src: /src/gpac/modules/dx_hw/dx_window.c:783,1
    - Dst: LoadCursor
      Src: /src/gpac/modules/dx_hw/dx_window.c:787,1
    - Dst: LoadCursor
      Src: /src/gpac/modules/dx_hw/dx_window.c:788,1
    - Dst: MAKEINTRESOURCE
      Src: /src/gpac/modules/dx_hw/dx_window.c:788,1
    - Dst: LoadCursor
      Src: /src/gpac/modules/dx_hw/dx_window.c:789,1
    - Dst: MAKEINTRESOURCE
      Src: /src/gpac/modules/dx_hw/dx_window.c:789,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 78
    argCount: 2
    argNames:
    - vout
    - ctx
    argTypes:
    - GF_VideoOutput*
    - DDContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 792
      start: 657
    functionDepth: 2
    functionLinenumber: 657
    functionLinenumberEnd: 792
    functionName: DD_InitWindows
    functionSourceFile: /src/gpac/modules/dx_hw/dx_window.c
    functionUses: 0
    functionsReached:
    - LoadIcon
    - ShowWindow
    - AdjustWindowRect
    - MAKEINTRESOURCE
    - RegisterClass
    - GetStockObject
    - SetFocus
    - LoadCursor
    - SetForegroundWindow
    - memset
    - DragAcceptFiles
    - _T
    - GetModuleHandle
    - CreateWindow
    - SetWindowLong
    - SetWindowLongPtr
    - SetWindowless
    linkageType: ''
    returnType: Bool
    signature: Bool DD_InitWindows(GF_VideoOutput *vout, DDContext *ctx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_window.c:801,1
    - Dst: gf_th_id
      Src: /src/gpac/modules/dx_hw/dx_window.c:801,1
    - Dst: DD_InitWindows
      Src: /src/gpac/modules/dx_hw/dx_window.c:803,1
    - Dst: GetMessage
      Src: /src/gpac/modules/dx_hw/dx_window.c:807,1
    - Dst: PostQuitMessage
      Src: /src/gpac/modules/dx_hw/dx_window.c:809,1
    - Dst: TranslateMessage
      Src: /src/gpac/modules/dx_hw/dx_window.c:810,1
    - Dst: DispatchMessage
      Src: /src/gpac/modules/dx_hw/dx_window.c:811,1
    - Dst: strlen
      Src: /src/gpac/modules/dx_hw/dx_window.c:819,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/dx_hw/dx_window.c:820,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/modules/dx_hw/dx_window.c:821,1
    - Dst: SetWindowTextW
      Src: /src/gpac/modules/dx_hw/dx_window.c:823,1
    - Dst: gf_free
      Src: /src/gpac/modules/dx_hw/dx_window.c:825,1
    - Dst: SetWindowText
      Src: /src/gpac/modules/dx_hw/dx_window.c:827,1
    - Dst: gf_free
      Src: /src/gpac/modules/dx_hw/dx_window.c:829,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 1
    argNames:
    - par
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 837
      start: 794
    functionDepth: 3
    functionLinenumber: 794
    functionLinenumberEnd: 837
    functionName: DD_WindowThread
    functionSourceFile: /src/gpac/modules/dx_hw/dx_window.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_free
    - DispatchMessage
    - gf_th_id
    - GetMessage
    - GF_LOG
    - SetWindowText
    - gf_utf8_mbstowcs
    - DD_InitWindows
    - SetWindowTextW
    - PostQuitMessage
    - TranslateMessage
    - strlen
    linkageType: ''
    returnType: u32
    signature: u32 DD_WindowThread(void *par)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GetWindowLongPtr
      Src: /src/gpac/modules/dx_hw/dx_window.c:848,1
    - Dst: SetWindowLongPtr
      Src: /src/gpac/modules/dx_hw/dx_window.c:849,1
    - Dst: GetWindowLong
      Src: /src/gpac/modules/dx_hw/dx_window.c:851,1
    - Dst: SetWindowLong
      Src: /src/gpac/modules/dx_hw/dx_window.c:852,1
    - Dst: GetParent
      Src: /src/gpac/modules/dx_hw/dx_window.c:855,1
    - Dst: DD_InitWindows
      Src: /src/gpac/modules/dx_hw/dx_window.c:860,1
    - Dst: gf_th_new
      Src: /src/gpac/modules/dx_hw/dx_window.c:863,1
    - Dst: gf_th_run
      Src: /src/gpac/modules/dx_hw/dx_window.c:864,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/dx_hw/dx_window.c:866,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - dr
    - flags
    argTypes:
    - GF_VideoOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 869
      start: 840
    functionDepth: 3
    functionLinenumber: 840
    functionLinenumberEnd: 869
    functionName: DD_SetupWindow
    functionSourceFile: /src/gpac/modules/dx_hw/dx_window.c
    functionUses: 1
    functionsReached:
    - gf_th_run
    - gf_th_new
    - GetWindowLong
    - gf_sleep
    - DD_InitWindows
    - SetWindowLong
    - GetParent
    - SetWindowLongPtr
    - GetWindowLongPtr
    linkageType: ''
    returnType: void
    signature: void DD_SetupWindow(GF_VideoOutput *dr, u32 flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PostMessage
      Src: /src/gpac/modules/dx_hw/dx_window.c:873,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - hWnd
    argTypes:
    - HWND
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 874
      start: 871
    functionDepth: 0
    functionLinenumber: 871
    functionLinenumberEnd: 874
    functionName: dd_closewindow
    functionSourceFile: /src/gpac/modules/dx_hw/dx_window.c
    functionUses: 0
    functionsReached:
    - PostMessage
    linkageType: ''
    returnType: void
    signature: void dd_closewindow(HWND hWnd)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dd_closewindow
      Src: /src/gpac/modules/dx_hw/dx_window.c:881,1
    - Dst: SetWindowLongPtr
      Src: /src/gpac/modules/dx_hw/dx_window.c:885,1
    - Dst: SetWindowLong
      Src: /src/gpac/modules/dx_hw/dx_window.c:887,1
    - Dst: dd_closewindow
      Src: /src/gpac/modules/dx_hw/dx_window.c:893,1
    - Dst: SetWindowLongPtr
      Src: /src/gpac/modules/dx_hw/dx_window.c:895,1
    - Dst: SetWindowLongPtr
      Src: /src/gpac/modules/dx_hw/dx_window.c:896,1
    - Dst: SetWindowLong
      Src: /src/gpac/modules/dx_hw/dx_window.c:898,1
    - Dst: SetWindowLong
      Src: /src/gpac/modules/dx_hw/dx_window.c:899,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/dx_hw/dx_window.c:905,1
    - Dst: gf_th_del
      Src: /src/gpac/modules/dx_hw/dx_window.c:907,1
    - Dst: SetWindowLongPtr
      Src: /src/gpac/modules/dx_hw/dx_window.c:914,1
    - Dst: SetWindowLong
      Src: /src/gpac/modules/dx_hw/dx_window.c:916,1
    - Dst: UnregisterClass
      Src: /src/gpac/modules/dx_hw/dx_window.c:920,1
    - Dst: _T
      Src: /src/gpac/modules/dx_hw/dx_window.c:920,1
    - Dst: GetModuleHandle
      Src: /src/gpac/modules/dx_hw/dx_window.c:920,1
    - Dst: _T
      Src: /src/gpac/modules/dx_hw/dx_window.c:920,1
    - Dst: UnregisterClass
      Src: /src/gpac/modules/dx_hw/dx_window.c:923,1
    - Dst: GetModuleHandle
      Src: /src/gpac/modules/dx_hw/dx_window.c:923,1
    - Dst: UnregisterClass
      Src: /src/gpac/modules/dx_hw/dx_window.c:925,1
    - Dst: GetModuleHandle
      Src: /src/gpac/modules/dx_hw/dx_window.c:925,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 931
      start: 876
    functionDepth: 1
    functionLinenumber: 876
    functionLinenumberEnd: 931
    functionName: DD_ShutdownWindow
    functionSourceFile: /src/gpac/modules/dx_hw/dx_window.c
    functionUses: 1
    functionsReached:
    - dd_closewindow
    - gf_sleep
    - _T
    - SetWindowLong
    - GetModuleHandle
    - UnregisterClass
    - SetWindowLongPtr
    - gf_th_del
    linkageType: ''
    returnType: void
    signature: void DD_ShutdownWindow(GF_VideoOutput *dr)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: ShowCursor
      Src: /src/gpac/modules/dx_hw/dx_window.c:938,1
    - Dst: ShowCursor
      Src: /src/gpac/modules/dx_hw/dx_window.c:943,1
    - Dst: SetCursor
      Src: /src/gpac/modules/dx_hw/dx_window.c:952,1
    - Dst: SetCursor
      Src: /src/gpac/modules/dx_hw/dx_window.c:955,1
    - Dst: SetCursor
      Src: /src/gpac/modules/dx_hw/dx_window.c:958,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 2
    argNames:
    - dr
    - cursor_type
    argTypes:
    - GF_VideoOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 961
      start: 933
    functionDepth: 0
    functionLinenumber: 933
    functionLinenumberEnd: 961
    functionName: DD_SetCursor
    functionSourceFile: /src/gpac/modules/dx_hw/dx_window.c
    functionUses: 3
    functionsReached:
    - ShowCursor
    - SetCursor
    linkageType: ''
    returnType: void
    signature: void DD_SetCursor(GF_VideoOutput *dr, u32 cursor_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 967
      start: 963
    functionDepth: 0
    functionLinenumber: 963
    functionLinenumberEnd: 967
    functionName: DD_GetGlobalHWND
    functionSourceFile: /src/gpac/modules/dx_hw/dx_window.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: HWND
    signature: HWND DD_GetGlobalHWND()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetSysColor
      Src: /src/gpac/modules/dx_hw/dx_window.c:972,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - idx
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 979
      start: 969
    functionDepth: 0
    functionLinenumber: 969
    functionLinenumberEnd: 979
    functionName: get_sys_col
    functionSourceFile: /src/gpac/modules/dx_hw/dx_window.c
    functionUses: 1
    functionsReached:
    - GetSysColor
    linkageType: ''
    returnType: u32
    signature: u32 get_sys_col(int idx)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: SetWindowText
      Src: /src/gpac/modules/dx_hw/dx_window.c:996,1
    - Dst: SetWindowText
      Src: /src/gpac/modules/dx_hw/dx_window.c:998,1
    - Dst: gf_free
      Src: /src/gpac/modules/dx_hw/dx_window.c:1000,1
    - Dst: PeekMessage
      Src: /src/gpac/modules/dx_hw/dx_window.c:1004,1
    - Dst: TranslateMessage
      Src: /src/gpac/modules/dx_hw/dx_window.c:1005,1
    - Dst: DispatchMessage
      Src: /src/gpac/modules/dx_hw/dx_window.c:1006,1
    - Dst: DD_SetCursor
      Src: /src/gpac/modules/dx_hw/dx_window.c:1014,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/dx_hw/dx_window.c:1018,1
    - Dst: GetSystemMetrics
      Src: /src/gpac/modules/dx_hw/dx_window.c:1025,1
    - Dst: GetSystemMetrics
      Src: /src/gpac/modules/dx_hw/dx_window.c:1026,1
    - Dst: SetWindowPos
      Src: /src/gpac/modules/dx_hw/dx_window.c:1034,1
    - Dst: MapWindowPoints
      Src: /src/gpac/modules/dx_hw/dx_window.c:1039,1
    - Dst: SetWindowPos
      Src: /src/gpac/modules/dx_hw/dx_window.c:1040,1
    - Dst: SetWindowPos
      Src: /src/gpac/modules/dx_hw/dx_window.c:1042,1
    - Dst: ShowWindow
      Src: /src/gpac/modules/dx_hw/dx_window.c:1046,1
    - Dst: SetWindowPos
      Src: /src/gpac/modules/dx_hw/dx_window.c:1056,1
    - Dst: SetWindowPos
      Src: /src/gpac/modules/dx_hw/dx_window.c:1058,1
    - Dst: wglMakeCurrent
      Src: /src/gpac/modules/dx_hw/dx_window.c:1065,1
    - Dst: wglMakeCurrent
      Src: /src/gpac/modules/dx_hw/dx_window.c:1069,1
    - Dst: DestroyObjects
      Src: /src/gpac/modules/dx_hw/dx_window.c:1077,1
    - Dst: DD_SetBackBufferSize
      Src: /src/gpac/modules/dx_hw/dx_window.c:1084,1
    - Dst: DD_SetupOpenGL
      Src: /src/gpac/modules/dx_hw/dx_window.c:1091,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1098,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1099,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1100,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1101,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1102,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1103,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1104,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1105,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1106,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1107,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1108,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1109,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1110,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1111,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1112,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1113,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1114,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1115,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1116,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1117,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1118,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1119,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1120,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1121,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1122,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1123,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1124,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/dx_hw/dx_window.c:1125,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 120
    argCount: 2
    argNames:
    - dr
    - evt
    argTypes:
    - GF_VideoOutput*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1129
      start: 985
    functionDepth: 4
    functionLinenumber: 985
    functionLinenumberEnd: 1129
    functionName: DD_ProcessEvent
    functionSourceFile: /src/gpac/modules/dx_hw/dx_window.c
    functionUses: 0
    functionsReached:
    - gf_free
    - DD_SetBackBufferSize
    - DispatchMessage
    - gf_strdup
    - ShowWindow
    - get_sys_col
    - DD_SetCursor
    - SetWindowText
    - SetWindowPos
    - GetSystemMetrics
    - MapWindowPoints
    - PeekMessage
    - DD_SetupOpenGL
    - TranslateMessage
    - DestroyObjects
    - wglMakeCurrent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DD_ProcessEvent(GF_VideoOutput*dr, GF_Event *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - rc
    - ','
    - dest
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 218
    functionName: MAKERECT
    functionSourceFile: /src/gpac/modules/dx_hw/dx_hw.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAKERECT(rc, dest)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 228
    functionName: SAFE_DD_RELEASE
    functionSourceFile: /src/gpac/modules/dx_hw/dx_hw.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SAFE_DD_RELEASE(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 235
    functionName: SAFE_DS_RELEASE
    functionSourceFile: /src/gpac/modules/dx_hw/dx_hw.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SAFE_DS_RELEASE(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: DSCONTEXT
    functionSourceFile: /src/gpac/modules/dx_hw/dx_audio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DSCONTEXT()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: DSCONTEXT
      Src: /src/gpac/modules/dx_hw/dx_audio.c:80,1
    - Dst: DD_GetGlobalHWND
      Src: /src/gpac/modules/dx_hw/dx_audio.c:83,1
    - Dst: GetDesktopWindow
      Src: /src/gpac/modules/dx_hw/dx_audio.c:85,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_audio.c:92,1
    - Dst: DirectSoundCreate
      Src: /src/gpac/modules/dx_hw/dx_audio.c:92,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_audio.c:94,1
    - Dst: pDS::lpVtbl::SetCooperativeLevel
      Src: /src/gpac/modules/dx_hw/dx_audio.c:94,1
    - Dst: SAFE_DS_RELEASE
      Src: /src/gpac/modules/dx_hw/dx_audio.c:95,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 4
    argNames:
    - dr
    - os_handle
    - num_buffers
    - total_duration
    argTypes:
    - GF_AudioOutput*
    - void*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 99
    functionName: DS_Setup
    functionSourceFile: /src/gpac/modules/dx_hw/dx_audio.c
    functionUses: 0
    functionsReached:
    - SAFE_DS_RELEASE
    - DSCONTEXT
    - GetDesktopWindow
    - DD_GetGlobalHWND
    - DirectSoundCreate
    - FAILED
    - pDS::lpVtbl::SetCooperativeLevel
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DS_Setup(GF_AudioOutput *dr, void *os_handle, u32 num_buffers,
      u32 total_duration)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_audio.c:107,1
    - Dst: DSContext*::pOutput::lpVtbl::Lock
      Src: /src/gpac/modules/dx_hw/dx_audio.c:107,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_audio.c:109,1
    - Dst: DSContext*::pOutput::lpVtbl::Unlock
      Src: /src/gpac/modules/dx_hw/dx_audio.c:110,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - DSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 111
    functionName: DS_ResetBuffer
    functionSourceFile: /src/gpac/modules/dx_hw/dx_audio.c
    functionUses: 0
    functionsReached:
    - memset
    - FAILED
    - DSContext*::pOutput::lpVtbl::Unlock
    - DSContext*::pOutput::lpVtbl::Lock
    linkageType: ''
    returnType: void
    signature: void DS_ResetBuffer(DSContext *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: DSCONTEXT
      Src: /src/gpac/modules/dx_hw/dx_audio.c:116,1
    - Dst: pOutput::lpVtbl::Stop
      Src: /src/gpac/modules/dx_hw/dx_audio.c:119,1
    - Dst: SAFE_DS_RELEASE
      Src: /src/gpac/modules/dx_hw/dx_audio.c:120,1
    - Dst: CloseHandle
      Src: /src/gpac/modules/dx_hw/dx_audio.c:124,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 127
    functionName: DS_ReleaseBuffer
    functionSourceFile: /src/gpac/modules/dx_hw/dx_audio.c
    functionUses: 0
    functionsReached:
    - SAFE_DS_RELEASE
    - pOutput::lpVtbl::Stop
    - CloseHandle
    - DSCONTEXT
    linkageType: ''
    returnType: void
    signature: void DS_ReleaseBuffer(GF_AudioOutput *dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DSCONTEXT
      Src: /src/gpac/modules/dx_hw/dx_audio.c:131,1
    - Dst: DS_ReleaseBuffer
      Src: /src/gpac/modules/dx_hw/dx_audio.c:132,1
    - Dst: SAFE_DS_RELEASE
      Src: /src/gpac/modules/dx_hw/dx_audio.c:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 129
    functionDepth: 2
    functionLinenumber: 129
    functionLinenumberEnd: 134
    functionName: DS_Shutdown
    functionSourceFile: /src/gpac/modules/dx_hw/dx_audio.c
    functionUses: 0
    functionsReached:
    - SAFE_DS_RELEASE
    - DS_ReleaseBuffer
    - DSCONTEXT
    linkageType: ''
    returnType: void
    signature: void DS_Shutdown(GF_AudioOutput *dr)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: DSCONTEXT
      Src: /src/gpac/modules/dx_hw/dx_audio.c:146,1
    - Dst: DS_ReleaseBuffer
      Src: /src/gpac/modules/dx_hw/dx_audio.c:148,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/modules/dx_hw/dx_audio.c:162,1
    - Dst: gf_module_get_bool
      Src: /src/gpac/modules/dx_hw/dx_audio.c:184,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_audio.c:187,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_audio.c:196,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/modules/dx_hw/dx_audio.c:200,1
    - Dst: pDS::lpVtbl::CreateSoundBuffer
      Src: /src/gpac/modules/dx_hw/dx_audio.c:218,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_audio.c:219,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/dx_hw/dx_audio.c:221,1
    - Dst: pDS::lpVtbl::CreateSoundBuffer
      Src: /src/gpac/modules/dx_hw/dx_audio.c:224,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_audio.c:225,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_audio.c:227,1
    - Dst: DS_Configure
      Src: /src/gpac/modules/dx_hw/dx_audio.c:229,1
    - Dst: pOutput::lpVtbl::QueryInterface
      Src: /src/gpac/modules/dx_hw/dx_audio.c:238,1
    - Dst: CreateEvent
      Src: /src/gpac/modules/dx_hw/dx_audio.c:242,1
    - Dst: IDirectSoundNotify*::lpVtbl::SetNotificationPositions
      Src: /src/gpac/modules/dx_hw/dx_audio.c:248,1
    - Dst: IDirectSoundNotify*::lpVtbl::Release
      Src: /src/gpac/modules/dx_hw/dx_audio.c:251,1
    - Dst: CloseHandle
      Src: /src/gpac/modules/dx_hw/dx_audio.c:252,1
    - Dst: SAFE_DS_RELEASE
      Src: /src/gpac/modules/dx_hw/dx_audio.c:253,1
    - Dst: IDirectSoundNotify*::lpVtbl::Release
      Src: /src/gpac/modules/dx_hw/dx_audio.c:257,1
    - Dst: DS_ResetBuffer
      Src: /src/gpac/modules/dx_hw/dx_audio.c:271,1
    - Dst: pOutput::lpVtbl::Play
      Src: /src/gpac/modules/dx_hw/dx_audio.c:273,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 119
    argCount: 5
    argNames:
    - dr
    - SampleRate
    - NbChannels
    - audioFormat
    - channel_cfg
    argTypes:
    - GF_AudioOutput*
    - u32*
    - u32*
    - u32*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 137
    functionDepth: 2
    functionLinenumber: 137
    functionLinenumberEnd: 275
    functionName: DS_Configure
    functionSourceFile: /src/gpac/modules/dx_hw/dx_audio.c
    functionUses: 1
    functionsReached:
    - pDS::lpVtbl::CreateSoundBuffer
    - pOutput::lpVtbl::QueryInterface
    - SAFE_DS_RELEASE
    - gf_module_get_bool
    - DSCONTEXT
    - gf_opts_set_key
    - GF_LOG
    - DS_ResetBuffer
    - memset
    - FAILED
    - DS_ReleaseBuffer
    - DS_Configure
    - IDirectSoundNotify*::lpVtbl::Release
    - IDirectSoundNotify*::lpVtbl::SetNotificationPositions
    - pOutput::lpVtbl::Play
    - CloseHandle
    - gf_audio_fmt_bit_depth
    - CreateEvent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DS_Configure(GF_AudioOutput *dr, u32 *SampleRate, u32 *NbChannels,
      u32 *audioFormat, u64 channel_cfg)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: LPDIRECTSOUNDBUFFER::lpVtbl::GetStatus
      Src: /src/gpac/modules/dx_hw/dx_audio.c:280,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_audio.c:282,1
    - Dst: LPDIRECTSOUNDBUFFER::lpVtbl::Restore
      Src: /src/gpac/modules/dx_hw/dx_audio.c:283,1
    - Dst: LPDIRECTSOUNDBUFFER::lpVtbl::GetStatus
      Src: /src/gpac/modules/dx_hw/dx_audio.c:284,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - pDSBuffer
    argTypes:
    - LPDIRECTSOUNDBUFFER
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 277
    functionDepth: 1
    functionLinenumber: 277
    functionLinenumberEnd: 288
    functionName: DS_RestoreBuffer
    functionSourceFile: /src/gpac/modules/dx_hw/dx_audio.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - LPDIRECTSOUNDBUFFER::lpVtbl::Restore
    - LPDIRECTSOUNDBUFFER::lpVtbl::GetStatus
    linkageType: ''
    returnType: Bool
    signature: Bool DS_RestoreBuffer(LPDIRECTSOUNDBUFFER pDSBuffer)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: DSCONTEXT
      Src: /src/gpac/modules/dx_hw/dx_audio.c:298,1
    - Dst: DS_RestoreBuffer
      Src: /src/gpac/modules/dx_hw/dx_audio.c:301,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_audio.c:302,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_audio.c:309,1
    - Dst: pOutput::lpVtbl::Lock
      Src: /src/gpac/modules/dx_hw/dx_audio.c:309,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_audio.c:311,1
    - Dst: gf_assert
      Src: /src/gpac/modules/dx_hw/dx_audio.c:315,1
    - Dst: GF_AudioOutput*::FillBuffer
      Src: /src/gpac/modules/dx_hw/dx_audio.c:317,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_audio.c:320,1
    - Dst: pOutput::lpVtbl::Unlock
      Src: /src/gpac/modules/dx_hw/dx_audio.c:320,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_audio.c:321,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - dr
    - buffer
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 292
    functionDepth: 2
    functionLinenumber: 292
    functionLinenumberEnd: 324
    functionName: DS_FillBuffer
    functionSourceFile: /src/gpac/modules/dx_hw/dx_audio.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - DSCONTEXT
    - GF_LOG
    - pOutput::lpVtbl::Unlock
    - FAILED
    - GF_AudioOutput*::FillBuffer
    - DS_RestoreBuffer
    - pOutput::lpVtbl::Lock
    linkageType: ''
    returnType: void
    signature: void DS_FillBuffer(GF_AudioOutput *dr, u32 buffer)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: DSCONTEXT
      Src: /src/gpac/modules/dx_hw/dx_audio.c:330,1
    - Dst: WaitForMultipleObjects
      Src: /src/gpac/modules/dx_hw/dx_audio.c:332,1
    - Dst: DS_FillBuffer
      Src: /src/gpac/modules/dx_hw/dx_audio.c:342,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 327
    functionDepth: 3
    functionLinenumber: 327
    functionLinenumberEnd: 344
    functionName: DS_WriteAudio_Notifs
    functionSourceFile: /src/gpac/modules/dx_hw/dx_audio.c
    functionUses: 0
    functionsReached:
    - DS_FillBuffer
    - WaitForMultipleObjects
    - DSCONTEXT
    linkageType: ''
    returnType: void
    signature: void DS_WriteAudio_Notifs(GF_AudioOutput *dr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: DSCONTEXT
      Src: /src/gpac/modules/dx_hw/dx_audio.c:350,1
    - Dst: pOutput::lpVtbl::GetCurrentPosition
      Src: /src/gpac/modules/dx_hw/dx_audio.c:354,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_audio.c:355,1
    - Dst: pOutput::lpVtbl::GetCurrentPosition
      Src: /src/gpac/modules/dx_hw/dx_audio.c:361,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_audio.c:362,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/dx_hw/dx_audio.c:367,1
    - Dst: DS_FillBuffer
      Src: /src/gpac/modules/dx_hw/dx_audio.c:372,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 346
    functionDepth: 3
    functionLinenumber: 346
    functionLinenumberEnd: 376
    functionName: DS_WriteAudio
    functionSourceFile: /src/gpac/modules/dx_hw/dx_audio.c
    functionUses: 0
    functionsReached:
    - pOutput::lpVtbl::GetCurrentPosition
    - DSCONTEXT
    - GF_LOG
    - gf_sleep
    - DS_FillBuffer
    linkageType: ''
    returnType: void
    signature: void DS_WriteAudio(GF_AudioOutput *dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - dr
    - desired_samplerate
    - NbChannels
    - nbBitsPerSample
    argTypes:
    - GF_AudioOutput*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 378
    functionDepth: 0
    functionLinenumber: 378
    functionLinenumberEnd: 382
    functionName: DS_QueryOutputSampleRate
    functionSourceFile: /src/gpac/modules/dx_hw/dx_audio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DS_QueryOutputSampleRate(GF_AudioOutput *dr, u32 *desired_samplerate,
      u32 *NbChannels, u32 *nbBitsPerSample)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: DSCONTEXT
      Src: /src/gpac/modules/dx_hw/dx_audio.c:386,1
    - Dst: pOutput::lpVtbl::Stop
      Src: /src/gpac/modules/dx_hw/dx_audio.c:389,1
    - Dst: DS_ResetBuffer
      Src: /src/gpac/modules/dx_hw/dx_audio.c:392,1
    - Dst: pOutput::lpVtbl::Play
      Src: /src/gpac/modules/dx_hw/dx_audio.c:394,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - dr
    - PlayType
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 384
    functionDepth: 1
    functionLinenumber: 384
    functionLinenumberEnd: 397
    functionName: DS_Play
    functionSourceFile: /src/gpac/modules/dx_hw/dx_audio.c
    functionUses: 0
    functionsReached:
    - pOutput::lpVtbl::Stop
    - pOutput::lpVtbl::Play
    - DSCONTEXT
    - DS_ResetBuffer
    linkageType: ''
    returnType: void
    signature: void DS_Play(GF_AudioOutput *dr, u32 PlayType)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: DSCONTEXT
      Src: /src/gpac/modules/dx_hw/dx_audio.c:402,1
    - Dst: pOutput::lpVtbl::SetVolume
      Src: /src/gpac/modules/dx_hw/dx_audio.c:407,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - dr
    - Volume
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 399
    functionDepth: 1
    functionLinenumber: 399
    functionLinenumberEnd: 408
    functionName: DS_SetVolume
    functionSourceFile: /src/gpac/modules/dx_hw/dx_audio.c
    functionUses: 0
    functionsReached:
    - pOutput::lpVtbl::SetVolume
    - DSCONTEXT
    linkageType: ''
    returnType: void
    signature: void DS_SetVolume(GF_AudioOutput *dr, u32 Volume)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: DSCONTEXT
      Src: /src/gpac/modules/dx_hw/dx_audio.c:413,1
    - Dst: pOutput::lpVtbl::SetPan
      Src: /src/gpac/modules/dx_hw/dx_audio.c:424,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - dr
    - Pan
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 425
      start: 410
    functionDepth: 1
    functionLinenumber: 410
    functionLinenumberEnd: 425
    functionName: DS_SetPan
    functionSourceFile: /src/gpac/modules/dx_hw/dx_audio.c
    functionUses: 0
    functionsReached:
    - pOutput::lpVtbl::SetPan
    - DSCONTEXT
    linkageType: ''
    returnType: void
    signature: void DS_SetPan(GF_AudioOutput *dr, u32 Pan)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - dr
    - Priority
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 428
    functionDepth: 0
    functionLinenumber: 428
    functionLinenumberEnd: 430
    functionName: DS_SetPriority
    functionSourceFile: /src/gpac/modules/dx_hw/dx_audio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DS_SetPriority(GF_AudioOutput *dr, u32 Priority)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DSCONTEXT
      Src: /src/gpac/modules/dx_hw/dx_audio.c:434,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 432
    functionDepth: 1
    functionLinenumber: 432
    functionLinenumberEnd: 436
    functionName: DS_GetAudioDelay
    functionSourceFile: /src/gpac/modules/dx_hw/dx_audio.c
    functionUses: 0
    functionsReached:
    - DSCONTEXT
    linkageType: ''
    returnType: u32
    signature: u32 DS_GetAudioDelay(GF_AudioOutput *dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DSCONTEXT
      Src: /src/gpac/modules/dx_hw/dx_audio.c:440,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 442
      start: 438
    functionDepth: 1
    functionLinenumber: 438
    functionLinenumberEnd: 442
    functionName: DS_GetTotalBufferTime
    functionSourceFile: /src/gpac/modules/dx_hw/dx_audio.c
    functionUses: 0
    functionsReached:
    - DSCONTEXT
    linkageType: ''
    returnType: u32
    signature: u32 DS_GetTotalBufferTime(GF_AudioOutput *dr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_audio.c:455,1
    - Dst: CoInitialize
      Src: /src/gpac/modules/dx_hw/dx_audio.c:455,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/dx_hw/dx_audio.c:458,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_audio.c:459,1
    - Dst: LoadLibrary
      Src: /src/gpac/modules/dx_hw/dx_audio.c:461,1
    - Dst: LoadLibrary
      Src: /src/gpac/modules/dx_hw/dx_audio.c:463,1
    - Dst: GetProcAddress
      Src: /src/gpac/modules/dx_hw/dx_audio.c:466,1
    - Dst: FreeLibrary
      Src: /src/gpac/modules/dx_hw/dx_audio.c:469,1
    - Dst: gf_free
      Src: /src/gpac/modules/dx_hw/dx_audio.c:470,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/dx_hw/dx_audio.c:475,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_audio.c:476,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/dx_hw/dx_audio.c:477,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 449
    functionDepth: 1
    functionLinenumber: 449
    functionLinenumberEnd: 497
    functionName: NewAudioOutput
    functionSourceFile: /src/gpac/modules/dx_hw/dx_audio.c
    functionUses: 1
    functionsReached:
    - gf_free
    - GetProcAddress
    - FreeLibrary
    - memset
    - FAILED
    - LoadLibrary
    - GF_REGISTER_MODULE_INTERFACE
    - gf_malloc
    - CoInitialize
    linkageType: ''
    returnType: void
    signature: void *NewAudioOutput()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DSCONTEXT
      Src: /src/gpac/modules/dx_hw/dx_audio.c:502,1
    - Dst: FreeLibrary
      Src: /src/gpac/modules/dx_hw/dx_audio.c:505,1
    - Dst: gf_free
      Src: /src/gpac/modules/dx_hw/dx_audio.c:506,1
    - Dst: gf_free
      Src: /src/gpac/modules/dx_hw/dx_audio.c:507,1
    - Dst: CoUninitialize
      Src: /src/gpac/modules/dx_hw/dx_audio.c:508,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 509
      start: 499
    functionDepth: 1
    functionLinenumber: 499
    functionLinenumberEnd: 509
    functionName: DeleteDxAudioOutput
    functionSourceFile: /src/gpac/modules/dx_hw/dx_audio.c
    functionUses: 1
    functionsReached:
    - gf_free
    - FreeLibrary
    - DSCONTEXT
    - CoUninitialize
    linkageType: ''
    returnType: void
    signature: void DeleteDxAudioOutput(void *ifce)
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 1
    argNames:
    - pixel_format
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 72
    functionName: pixelformat_yuv
    functionSourceFile: /src/gpac/modules/dx_hw/dx_2d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool pixelformat_yuv(u32 pixel_format)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: mmioFOURCC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:79,1
    - Dst: mmioFOURCC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:81,1
    - Dst: mmioFOURCC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:83,1
    - Dst: mmioFOURCC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:85,1
    - Dst: mmioFOURCC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:87,1
    - Dst: mmioFOURCC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:89,1
    - Dst: mmioFOURCC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:91,1
    - Dst: mmioFOURCC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:93,1
    - Dst: mmioFOURCC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:95,1
    - Dst: mmioFOURCC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:97,1
    - Dst: mmioFOURCC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:99,1
    - Dst: mmioFOURCC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:101,1
    - Dst: mmioFOURCC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:103,1
    - Dst: mmioFOURCC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:105,1
    - Dst: mmioFOURCC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:107,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 35
    argCount: 1
    argNames:
    - pixel_format
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 111
    functionName: get_win_4CC
    functionSourceFile: /src/gpac/modules/dx_hw/dx_2d.c
    functionUses: 0
    functionsReached:
    - mmioFOURCC
    linkageType: ''
    returnType: u32
    signature: u32 get_win_4CC(u32 pixel_format)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 115
    functionName: GF_COL_TO_565
    functionSourceFile: /src/gpac/modules/dx_hw/dx_2d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GF_COL_TO_565(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 117
    functionName: GF_COL_TO_555
    functionSourceFile: /src/gpac/modules/dx_hw/dx_2d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GF_COL_TO_555(c)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ZeroMemory
      Src: /src/gpac/modules/dx_hw/dx_2d.c:126,1
    - Dst: GF_COL_TO_565
      Src: /src/gpac/modules/dx_hw/dx_2d.c:130,1
    - Dst: GF_COL_TO_555
      Src: /src/gpac/modules/dx_hw/dx_2d.c:133,1
    - Dst: pBack::lpVtbl::Blt
      Src: /src/gpac/modules/dx_hw/dx_2d.c:143,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:145,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - dr
    - color
    argTypes:
    - GF_VideoOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 146
    functionName: DD_ClearBackBuffer
    functionSourceFile: /src/gpac/modules/dx_hw/dx_2d.c
    functionUses: 0
    functionsReached:
    - GF_COL_TO_565
    - FAILED
    - pBack::lpVtbl::Blt
    - ZeroMemory
    - GF_COL_TO_555
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DD_ClearBackBuffer(GF_VideoOutput *dr, u32 color)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/dx_hw/dx_2d.c:157,1
    - Dst: strcmp
      Src: /src/gpac/modules/dx_hw/dx_2d.c:160,1
    - Dst: strcmp
      Src: /src/gpac/modules/dx_hw/dx_2d.c:162,1
    - Dst: strcmp
      Src: /src/gpac/modules/dx_hw/dx_2d.c:163,1
    - Dst: SAFE_DD_RELEASE
      Src: /src/gpac/modules/dx_hw/dx_2d.c:174,1
    - Dst: ZeroMemory
      Src: /src/gpac/modules/dx_hw/dx_2d.c:177,1
    - Dst: pDD::lpVtbl::CreateSurface
      Src: /src/gpac/modules/dx_hw/dx_2d.c:200,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:202,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_2d.c:207,1
    - Dst: pDD::lpVtbl::CreateSurface
      Src: /src/gpac/modules/dx_hw/dx_2d.c:209,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:211,1
    - Dst: DD_ClearBackBuffer
      Src: /src/gpac/modules/dx_hw/dx_2d.c:219,1
    - Dst: DD_InitYUV
      Src: /src/gpac/modules/dx_hw/dx_2d.c:221,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_2d.c:222,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 64
    argCount: 4
    argNames:
    - dr
    - Width
    - Height
    - use_system_memory
    argTypes:
    - GF_VideoOutput*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 148
    functionDepth: 2
    functionLinenumber: 148
    functionLinenumberEnd: 224
    functionName: CreateBackBuffer
    functionSourceFile: /src/gpac/modules/dx_hw/dx_2d.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_module_get_key
    - DD_InitYUV
    - SAFE_DD_RELEASE
    - FAILED
    - strcmp
    - DD_ClearBackBuffer
    - ZeroMemory
    - pDD::lpVtbl::CreateSurface
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CreateBackBuffer(GF_VideoOutput *dr, u32 Width, u32 Height,
      Bool use_system_memory)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: DestroyObjects
      Src: /src/gpac/modules/dx_hw/dx_2d.c:237,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:239,1
    - Dst: DirectDrawCreate
      Src: /src/gpac/modules/dx_hw/dx_2d.c:239,1
    - Dst: LPDIRECTDRAW::lpVtbl::QueryInterface
      Src: /src/gpac/modules/dx_hw/dx_2d.c:242,1
    - Dst: LPDIRECTDRAW::lpVtbl::Release
      Src: /src/gpac/modules/dx_hw/dx_2d.c:243,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:244,1
    - Dst: pDD::lpVtbl::SetDisplayMode
      Src: /src/gpac/modules/dx_hw/dx_2d.c:255,1
    - Dst: pDD::lpVtbl::SetDisplayMode
      Src: /src/gpac/modules/dx_hw/dx_2d.c:257,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:259,1
    - Dst: pDD::lpVtbl::SetCooperativeLevel
      Src: /src/gpac/modules/dx_hw/dx_2d.c:265,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:266,1
    - Dst: ZeroMemory
      Src: /src/gpac/modules/dx_hw/dx_2d.c:269,1
    - Dst: pDD::lpVtbl::CreateSurface
      Src: /src/gpac/modules/dx_hw/dx_2d.c:274,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:275,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_2d.c:276,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_2d.c:281,1
    - Dst: pPrimary::lpVtbl::GetPixelFormat
      Src: /src/gpac/modules/dx_hw/dx_2d.c:284,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:285,1
    - Dst: pDD::lpVtbl::CreateClipper
      Src: /src/gpac/modules/dx_hw/dx_2d.c:316,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:317,1
    - Dst: LPDIRECTDRAWCLIPPER::lpVtbl::SetHWnd
      Src: /src/gpac/modules/dx_hw/dx_2d.c:320,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:321,1
    - Dst: LPDIRECTDRAWCLIPPER::lpVtbl::Release
      Src: /src/gpac/modules/dx_hw/dx_2d.c:322,1
    - Dst: pPrimary::lpVtbl::SetClipper
      Src: /src/gpac/modules/dx_hw/dx_2d.c:325,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:326,1
    - Dst: LPDIRECTDRAWCLIPPER::lpVtbl::Release
      Src: /src/gpac/modules/dx_hw/dx_2d.c:327,1
    - Dst: LPDIRECTDRAWCLIPPER::lpVtbl::Release
      Src: /src/gpac/modules/dx_hw/dx_2d.c:330,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 83
    argCount: 3
    argNames:
    - dr
    - Width
    - Height
    argTypes:
    - GF_VideoOutput*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 227
    functionDepth: 3
    functionLinenumber: 227
    functionLinenumberEnd: 336
    functionName: InitDirectDraw
    functionSourceFile: /src/gpac/modules/dx_hw/dx_2d.c
    functionUses: 1
    functionsReached:
    - LPDIRECTDRAW::lpVtbl::Release
    - LPDIRECTDRAW::lpVtbl::QueryInterface
    - pDD::lpVtbl::CreateClipper
    - GF_LOG
    - LPDIRECTDRAWCLIPPER::lpVtbl::SetHWnd
    - DirectDrawCreate
    - pDD::lpVtbl::SetDisplayMode
    - pDD::lpVtbl::SetCooperativeLevel
    - LPDIRECTDRAWCLIPPER::lpVtbl::Release
    - memset
    - FAILED
    - pPrimary::lpVtbl::SetClipper
    - ZeroMemory
    - pPrimary::lpVtbl::GetPixelFormat
    - DestroyObjects
    - pDD::lpVtbl::CreateSurface
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err InitDirectDraw(GF_VideoOutput *dr, u32 Width, u32 Height)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ZeroMemory
      Src: /src/gpac/modules/dx_hw/dx_2d.c:345,1
    - Dst: LPDDRAWSURFACE::lpVtbl::Lock
      Src: /src/gpac/modules/dx_hw/dx_2d.c:348,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:349,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - dd
    - vi
    - surface
    argTypes:
    - DDContext*
    - GF_VideoSurface*
    - LPDDRAWSURFACE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 359
    functionName: DD_LockSurface
    functionSourceFile: /src/gpac/modules/dx_hw/dx_2d.c
    functionUses: 0
    functionsReached:
    - FAILED
    - LPDDRAWSURFACE::lpVtbl::Lock
    - ZeroMemory
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DD_LockSurface(DDContext *dd, GF_VideoSurface *vi, LPDDRAWSURFACE
      surface)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: LPDDRAWSURFACE::lpVtbl::Unlock
      Src: /src/gpac/modules/dx_hw/dx_2d.c:365,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:366,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - dd
    - surface
    argTypes:
    - DDContext*
    - LPDDRAWSURFACE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 361
    functionDepth: 0
    functionLinenumber: 361
    functionLinenumberEnd: 367
    functionName: DD_UnlockSurface
    functionSourceFile: /src/gpac/modules/dx_hw/dx_2d.c
    functionUses: 0
    functionsReached:
    - LPDDRAWSURFACE::lpVtbl::Unlock
    - FAILED
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DD_UnlockSurface(DDContext *dd, LPDDRAWSURFACE surface)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_2d.c:375,1
    - Dst: DD_LockSurface
      Src: /src/gpac/modules/dx_hw/dx_2d.c:377,1
    - Dst: DD_UnlockSurface
      Src: /src/gpac/modules/dx_hw/dx_2d.c:379,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - dr
    - vi
    - do_lock
    argTypes:
    - GF_VideoOutput*
    - GF_VideoSurface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 370
    functionDepth: 1
    functionLinenumber: 370
    functionLinenumberEnd: 380
    functionName: DD_LockBackBuffer
    functionSourceFile: /src/gpac/modules/dx_hw/dx_2d.c
    functionUses: 0
    functionsReached:
    - DD_LockSurface
    - memset
    - DD_UnlockSurface
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DD_LockBackBuffer(GF_VideoOutput *dr, GF_VideoSurface *vi, Bool
      do_lock)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: pBack::lpVtbl::IsLost
      Src: /src/gpac/modules/dx_hw/dx_2d.c:389,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:390,1
    - Dst: pBack::lpVtbl::GetDC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:390,1
    - Dst: pBack::lpVtbl::ReleaseDC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:394,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - dr
    - do_lock
    argTypes:
    - GF_VideoOutput*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 382
    functionDepth: 0
    functionLinenumber: 382
    functionLinenumberEnd: 398
    functionName: LockOSContext
    functionSourceFile: /src/gpac/modules/dx_hw/dx_2d.c
    functionUses: 1
    functionsReached:
    - FAILED
    - pBack::lpVtbl::ReleaseDC
    - pBack::lpVtbl::IsLost
    - pBack::lpVtbl::GetDC
    linkageType: ''
    returnType: void
    signature: void *LockOSContext(GF_VideoOutput *dr, Bool do_lock)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: MAKERECT
      Src: /src/gpac/modules/dx_hw/dx_2d.c:412,1
    - Dst: MAKERECT
      Src: /src/gpac/modules/dx_hw/dx_2d.c:413,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/modules/dx_hw/dx_2d.c:418,1
    - Dst: DDSurface*::pSurface::lpVtbl::SetColorKey
      Src: /src/gpac/modules/dx_hw/dx_2d.c:420,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:421,1
    - Dst: DDContext*::pBack::lpVtbl::BltFast
      Src: /src/gpac/modules/dx_hw/dx_2d.c:433,1
    - Dst: DDContext*::pBack::lpVtbl::Blt
      Src: /src/gpac/modules/dx_hw/dx_2d.c:437,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_2d.c:444,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_2d.c:446,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:449,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 40
    argCount: 5
    argNames:
    - dd
    - src
    - src_wnd
    - dst_wnd
    - key
    argTypes:
    - DDContext*
    - DDSurface*
    - GF_Window*
    - GF_Window*
    - GF_ColorKey*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 401
    functionDepth: 1
    functionLinenumber: 401
    functionLinenumberEnd: 450
    functionName: DD_BlitSurface
    functionSourceFile: /src/gpac/modules/dx_hw/dx_2d.c
    functionUses: 0
    functionsReached:
    - MAKERECT
    - GF_LOG
    - GF_COL_ARGB
    - DDContext*::pBack::lpVtbl::Blt
    - FAILED
    - DDContext*::pBack::lpVtbl::BltFast
    - DDSurface*::pSurface::lpVtbl::SetColorKey
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DD_BlitSurface(DDContext *dd, DDSurface *src, GF_Window *src_wnd,
      GF_Window *dst_wnd, GF_ColorKey *key)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: pixelformat_yuv
      Src: /src/gpac/modules/dx_hw/dx_2d.c:461,1
    - Dst: MAX
      Src: /src/gpac/modules/dx_hw/dx_2d.c:472,1
    - Dst: MAX
      Src: /src/gpac/modules/dx_hw/dx_2d.c:473,1
    - Dst: SAFE_DD_RELEASE
      Src: /src/gpac/modules/dx_hw/dx_2d.c:475,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_2d.c:476,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_2d.c:479,1
    - Dst: get_win_4CC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:492,1
    - Dst: pDD::lpVtbl::CreateSurface
      Src: /src/gpac/modules/dx_hw/dx_2d.c:494,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:495,1
    - Dst: pDD::lpVtbl::CreateSurface
      Src: /src/gpac/modules/dx_hw/dx_2d.c:503,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:504,1
    - Dst: pDD::lpVtbl::CreateSurface
      Src: /src/gpac/modules/dx_hw/dx_2d.c:517,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:518,1
    - Dst: MAX
      Src: /src/gpac/modules/dx_hw/dx_2d.c:539,1
    - Dst: MAX
      Src: /src/gpac/modules/dx_hw/dx_2d.c:540,1
    - Dst: SAFE_DD_RELEASE
      Src: /src/gpac/modules/dx_hw/dx_2d.c:541,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_2d.c:542,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_2d.c:544,1
    - Dst: pDD::lpVtbl::CreateSurface
      Src: /src/gpac/modules/dx_hw/dx_2d.c:551,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:552,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 80
    argCount: 5
    argNames:
    - dr
    - width
    - height
    - pixel_format
    - check_caps
    argTypes:
    - GF_VideoOutput*
    - u32
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 452
    functionDepth: 1
    functionLinenumber: 452
    functionLinenumberEnd: 558
    functionName: DD_GetSurface
    functionSourceFile: /src/gpac/modules/dx_hw/dx_2d.c
    functionUses: 0
    functionsReached:
    - get_win_4CC
    - pixelformat_yuv
    - memset
    - SAFE_DD_RELEASE
    - FAILED
    - MAX
    - pDD::lpVtbl::CreateSurface
    linkageType: ''
    returnType: DDSurface
    signature: DDSurface *DD_GetSurface(GF_VideoOutput *dr, u32 width, u32 height,
      u32 pixel_format, Bool check_caps)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: yuv_pool::pSurface::lpVtbl::UpdateOverlay
      Src: /src/gpac/modules/dx_hw/dx_2d.c:571,1
    - Dst: DD_GetSurface
      Src: /src/gpac/modules/dx_hw/dx_2d.c:584,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_2d.c:588,1
    - Dst: DD_LockSurface
      Src: /src/gpac/modules/dx_hw/dx_2d.c:590,1
    - Dst: gf_stretch_bits
      Src: /src/gpac/modules/dx_hw/dx_2d.c:594,1
    - Dst: DD_UnlockSurface
      Src: /src/gpac/modules/dx_hw/dx_2d.c:596,1
    - Dst: MAKERECT
      Src: /src/gpac/modules/dx_hw/dx_2d.c:607,1
    - Dst: ClientToScreen
      Src: /src/gpac/modules/dx_hw/dx_2d.c:610,1
    - Dst: MAKERECT
      Src: /src/gpac/modules/dx_hw/dx_2d.c:613,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_2d.c:615,1
    - Dst: DDSurface*::pSurface::lpVtbl::UpdateOverlay
      Src: /src/gpac/modules/dx_hw/dx_2d.c:619,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_2d.c:622,1
    - Dst: DDSurface*::pSurface::lpVtbl::UpdateOverlay
      Src: /src/gpac/modules/dx_hw/dx_2d.c:626,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:628,1
    - Dst: DDSurface*::pSurface::lpVtbl::UpdateOverlay
      Src: /src/gpac/modules/dx_hw/dx_2d.c:629,1
    - Dst: pPrimary::lpVtbl::Blt
      Src: /src/gpac/modules/dx_hw/dx_2d.c:633,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_2d.c:636,1
    - Dst: pPrimary::lpVtbl::Blt
      Src: /src/gpac/modules/dx_hw/dx_2d.c:641,1
    - Dst: FAILED
      Src: /src/gpac/modules/dx_hw/dx_2d.c:644,1
    - Dst: DD_BlitSurface
      Src: /src/gpac/modules/dx_hw/dx_2d.c:656,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 70
    argCount: 5
    argNames:
    - dr
    - video_src
    - src_wnd
    - dst_wnd
    - overlay_type
    argTypes:
    - GF_VideoOutput*
    - GF_VideoSurface*
    - GF_Window*
    - GF_Window*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 560
    functionDepth: 2
    functionLinenumber: 560
    functionLinenumberEnd: 657
    functionName: DD_Blit
    functionSourceFile: /src/gpac/modules/dx_hw/dx_2d.c
    functionUses: 0
    functionsReached:
    - DD_LockSurface
    - DD_UnlockSurface
    - ClientToScreen
    - MAKERECT
    - GF_LOG
    - gf_stretch_bits
    - memset
    - FAILED
    - DD_BlitSurface
    - yuv_pool::pSurface::lpVtbl::UpdateOverlay
    - DD_GetSurface
    - DDSurface*::pSurface::lpVtbl::UpdateOverlay
    - pPrimary::lpVtbl::Blt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DD_Blit(GF_VideoOutput *dr, GF_VideoSurface *video_src, GF_Window
      *src_wnd, GF_Window *dst_wnd, u32 overlay_type)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: get_win_4CC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:662,1
    - Dst: get_win_4CC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:663,1
    - Dst: get_win_4CC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:664,1
    - Dst: get_win_4CC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:665,1
    - Dst: get_win_4CC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:666,1
    - Dst: get_win_4CC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:667,1
    - Dst: get_win_4CC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:668,1
    - Dst: get_win_4CC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:669,1
    - Dst: get_win_4CC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:670,1
    - Dst: get_win_4CC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:671,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - win_4cc
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 673
      start: 660
    functionDepth: 1
    functionLinenumber: 660
    functionLinenumberEnd: 673
    functionName: is_yuv_supported
    functionSourceFile: /src/gpac/modules/dx_hw/dx_2d.c
    functionUses: 0
    functionsReached:
    - get_win_4CC
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE is_yuv_supported(u32 win_4cc)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 1
    argNames:
    - format
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 690
      start: 675
    functionDepth: 0
    functionLinenumber: 675
    functionLinenumberEnd: 690
    functionName: is_yuv_planar
    functionSourceFile: /src/gpac/modules/dx_hw/dx_2d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE is_yuv_planar(u32 format)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/dx_hw/dx_2d.c:713,1
    - Dst: sscanf
      Src: /src/gpac/modules/dx_hw/dx_2d.c:716,1
    - Dst: GF_4CC
      Src: /src/gpac/modules/dx_hw/dx_2d.c:717,1
    - Dst: gf_module_get_bool
      Src: /src/gpac/modules/dx_hw/dx_2d.c:719,1
    - Dst: pDD::lpVtbl::GetFourCCCodes
      Src: /src/gpac/modules/dx_hw/dx_2d.c:733,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/dx_hw/dx_2d.c:735,1
    - Dst: pDD::lpVtbl::GetFourCCCodes
      Src: /src/gpac/modules/dx_hw/dx_2d.c:736,1
    - Dst: is_yuv_supported
      Src: /src/gpac/modules/dx_hw/dx_2d.c:740,1
    - Dst: gf_free
      Src: /src/gpac/modules/dx_hw/dx_2d.c:743,1
    - Dst: is_yuv_planar
      Src: /src/gpac/modules/dx_hw/dx_2d.c:754,1
    - Dst: is_yuv_planar
      Src: /src/gpac/modules/dx_hw/dx_2d.c:756,1
    - Dst: SAFE_DD_RELEASE
      Src: /src/gpac/modules/dx_hw/dx_2d.c:758,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_2d.c:759,1
    - Dst: DD_GetSurface
      Src: /src/gpac/modules/dx_hw/dx_2d.c:763,1
    - Dst: gf_sys_clock
      Src: /src/gpac/modules/dx_hw/dx_2d.c:766,1
    - Dst: DD_BlitSurface
      Src: /src/gpac/modules/dx_hw/dx_2d.c:769,1
    - Dst: gf_sys_clock
      Src: /src/gpac/modules/dx_hw/dx_2d.c:772,1
    - Dst: SAFE_DD_RELEASE
      Src: /src/gpac/modules/dx_hw/dx_2d.c:803,1
    - Dst: memset
      Src: /src/gpac/modules/dx_hw/dx_2d.c:804,1
    - Dst: sprintf
      Src: /src/gpac/modules/dx_hw/dx_2d.c:817,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/dx_hw/dx_2d.c:818,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/dx_hw/dx_2d.c:819,1
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/dx_hw/dx_2d.c:822,1
    - Dst: strcmp
      Src: /src/gpac/modules/dx_hw/dx_2d.c:823,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_2d.c:829,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_2d.c:833,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/modules/dx_hw/dx_2d.c:833,1
    - Dst: gf_module_get_bool
      Src: /src/gpac/modules/dx_hw/dx_2d.c:836,1
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/dx_hw/dx_2d.c:843,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/dx_hw/dx_2d.c:847,1
    - Dst: sscanf
      Src: /src/gpac/modules/dx_hw/dx_2d.c:849,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dx_hw/dx_2d.c:852,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 123
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 856
      start: 695
    functionDepth: 2
    functionLinenumber: 695
    functionLinenumberEnd: 856
    functionName: DD_InitYUV
    functionSourceFile: /src/gpac/modules/dx_hw/dx_2d.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_opts_set_key
    - memset
    - DD_GetSurface
    - gf_sys_clock
    - gf_4cc_to_str
    - sprintf
    - DD_BlitSurface
    - pDD::lpVtbl::GetFourCCCodes
    - gf_module_get_bool
    - sscanf
    - GF_LOG
    - gf_malloc
    - gf_module_get_key
    - is_yuv_supported
    - SAFE_DD_RELEASE
    - strcmp
    - GF_4CC
    - is_yuv_planar
    linkageType: ''
    returnType: void
    signature: void DD_InitYUV(GF_VideoOutput *dr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: InitDirectDraw
      Src: /src/gpac/modules/dx_hw/dx_2d.c:866,1
    - Dst: CreateBackBuffer
      Src: /src/gpac/modules/dx_hw/dx_2d.c:869,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - dr
    - width
    - height
    - use_system_memory
    argTypes:
    - GF_VideoOutput*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 870
      start: 858
    functionDepth: 4
    functionLinenumber: 858
    functionLinenumberEnd: 870
    functionName: DD_SetBackBufferSize
    functionSourceFile: /src/gpac/modules/dx_hw/dx_2d.c
    functionUses: 1
    functionsReached:
    - InitDirectDraw
    - CreateBackBuffer
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DD_SetBackBufferSize(GF_VideoOutput *dr, u32 width, u32 height,
      Bool use_system_memory)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - driv
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 894
      start: 886
    functionDepth: 0
    functionLinenumber: 886
    functionLinenumberEnd: 894
    functionName: DD_SetupDDraw
    functionSourceFile: /src/gpac/modules/dx_hw/dx_2d.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DD_SetupDDraw(GF_VideoOutput *driv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SDL_Init
      Src: /src/gpac/modules/sdl_out/sdl_out.c:45,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 49
    functionName: SDLOUT_InitSDL
    functionSourceFile: /src/gpac/modules/sdl_out/sdl_out.c
    functionUses: 0
    functionsReached:
    - SDL_Init
    linkageType: ''
    returnType: Bool
    signature: Bool SDLOUT_InitSDL()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: SDL_Quit
      Src: /src/gpac/modules/sdl_out/sdl_out.c:56,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 58
    functionName: SDLOUT_CloseSDL
    functionSourceFile: /src/gpac/modules/sdl_out/sdl_out.c
    functionUses: 0
    functionsReached:
    - SDL_Quit
    linkageType: ''
    returnType: void
    signature: void SDLOUT_CloseSDL()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 71
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/sdl_out/sdl_out.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SDL_NewVideo
      Src: /src/gpac/modules/sdl_out/sdl_out.c:77,1
    - Dst: SDL_NewAudio
      Src: /src/gpac/modules/sdl_out/sdl_out.c:78,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 80
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/sdl_out/sdl_out.c
    functionUses: 0
    functionsReached:
    - SDL_NewVideo
    - SDL_NewAudio
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SDL_DeleteVideo
      Src: /src/gpac/modules/sdl_out/sdl_out.c:88,1
    - Dst: SDL_DeleteAudio
      Src: /src/gpac/modules/sdl_out/sdl_out.c:91,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 94
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/sdl_out/sdl_out.c
    functionUses: 0
    functionsReached:
    - SDL_DeleteVideo
    - SDL_DeleteAudio
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 119
    functionName: SDLVID
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SDLVID()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SDL_GetCurrentVideoDriver
      Src: /src/gpac/modules/sdl_out/video.c:125,1
    - Dst: sprintf
      Src: /src/gpac/modules/sdl_out/video.c:127,1
    - Dst: SDL_GetCurrentVideoDriver
      Src: /src/gpac/modules/sdl_out/video.c:127,1
    - Dst: SDL_SetWindowTitle
      Src: /src/gpac/modules/sdl_out/video.c:128,1
    - Dst: SDL_SetWindowTitle
      Src: /src/gpac/modules/sdl_out/video.c:130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - window
    argTypes:
    - SDL_Window*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 132
    functionName: SDLVid_SetCaption
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - SDL_SetWindowTitle
    - sprintf
    - SDL_GetCurrentVideoDriver
    linkageType: ''
    returnType: void
    signature: void SDLVid_SetCaption(SDL_Window* window)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SDL_VideoDriverName
      Src: /src/gpac/modules/sdl_out/video.c:167,1
    - Dst: sprintf
      Src: /src/gpac/modules/sdl_out/video.c:169,1
    - Dst: SDL_WM_SetCaption
      Src: /src/gpac/modules/sdl_out/video.c:170,1
    - Dst: SDL_WM_SetCaption
      Src: /src/gpac/modules/sdl_out/video.c:172,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 174
    functionName: SDLVid_SetCaption
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - SDL_VideoDriverName
    - sprintf
    - SDL_WM_SetCaption
    linkageType: ''
    returnType: void
    signature: void SDLVid_SetCaption()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: SDL_CreateCursor
      Src: /src/gpac/modules/sdl_out/video.c:206,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 1
    argNames:
    - maskdata
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 207
    functionName: SDLVid_LoadCursor
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - SDL_CreateCursor
    linkageType: ''
    returnType: SDL_Cursor
    signature: SDL_Cursor *SDLVid_LoadCursor(char *maskdata)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:354,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 2
    argNames:
    - SDLkey
    - evt
    argTypes:
    - u32
    - GF_EventKey*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 335
    functionDepth: 1
    functionLinenumber: 335
    functionLinenumberEnd: 357
    functionName: sdl_translate_key
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void sdl_translate_key(u32 SDLkey, GF_EventKey *evt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/modules/sdl_out/video.c:364,1
    - Dst: strcpy
      Src: /src/gpac/modules/sdl_out/video.c:366,1
    - Dst: putenv
      Src: /src/gpac/modules/sdl_out/video.c:369,1
    - Dst: unsetenv
      Src: /src/gpac/modules/sdl_out/video.c:371,1
    - Dst: putenv
      Src: /src/gpac/modules/sdl_out/video.c:372,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - os_handle
    - set_on
    argTypes:
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 360
    functionDepth: 1
    functionLinenumber: 360
    functionLinenumberEnd: 374
    functionName: SDLVid_SetHack
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - strcpy
    - putenv
    - sprintf
    - unsetenv
    linkageType: ''
    returnType: void
    signature: void SDLVid_SetHack(void *os_handle, Bool set_on)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:379,1
    - Dst: SDL_DestroyTexture
      Src: /src/gpac/modules/sdl_out/video.c:381,1
    - Dst: SDL_DestroyTexture
      Src: /src/gpac/modules/sdl_out/video.c:383,1
    - Dst: SDL_DestroyTexture
      Src: /src/gpac/modules/sdl_out/video.c:385,1
    - Dst: SDL_DestroyTexture
      Src: /src/gpac/modules/sdl_out/video.c:388,1
    - Dst: gf_free
      Src: /src/gpac/modules/sdl_out/video.c:390,1
    - Dst: SDL_FreeSurface
      Src: /src/gpac/modules/sdl_out/video.c:394,1
    - Dst: SDL_FreeSurface
      Src: /src/gpac/modules/sdl_out/video.c:396,1
    - Dst: SDL_FreeSurface
      Src: /src/gpac/modules/sdl_out/video.c:398,1
    - Dst: SDL_FreeYUVOverlay
      Src: /src/gpac/modules/sdl_out/video.c:400,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - SDLVidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 377
    functionDepth: 0
    functionLinenumber: 377
    functionLinenumberEnd: 403
    functionName: SDLVid_DestroyObjects
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - SDL_DestroyTexture
    - gf_free
    - SDL_FreeYUVOverlay
    - SDL_FreeSurface
    - SDL_VERSION_ATLEAST
    linkageType: ''
    returnType: void
    signature: void SDLVid_DestroyObjects(SDLVidCtx *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:434,1
    - Dst: gf_opts_default_shared_directory
      Src: /src/gpac/modules/sdl_out/video.c:438,1
    - Dst: strcat
      Src: /src/gpac/modules/sdl_out/video.c:441,1
    - Dst: gf_file_load_data
      Src: /src/gpac/modules/sdl_out/video.c:442,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:443,1
    - Dst: gf_img_png_dec
      Src: /src/gpac/modules/sdl_out/video.c:446,1
    - Dst: gf_pixel_get_bytes_per_pixel
      Src: /src/gpac/modules/sdl_out/video.c:447,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/sdl_out/video.c:448,1
    - Dst: gf_img_png_dec
      Src: /src/gpac/modules/sdl_out/video.c:449,1
    - Dst: SDL_CreateRGBSurfaceFrom
      Src: /src/gpac/modules/sdl_out/video.c:451,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:453,1
    - Dst: SDL_GetError
      Src: /src/gpac/modules/sdl_out/video.c:453,1
    - Dst: SDL_SetWindowIcon
      Src: /src/gpac/modules/sdl_out/video.c:455,1
    - Dst: SDL_FreeSurface
      Src: /src/gpac/modules/sdl_out/video.c:456,1
    - Dst: gf_free
      Src: /src/gpac/modules/sdl_out/video.c:458,1
    - Dst: gf_free
      Src: /src/gpac/modules/sdl_out/video.c:459,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - SDLVidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 461
      start: 432
    functionDepth: 1
    functionLinenumber: 432
    functionLinenumberEnd: 461
    functionName: SDLVid_SetIcon
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_img_png_dec
    - gf_malloc
    - gf_free
    - SDL_SetWindowIcon
    - GF_LOG
    - gf_opts_default_shared_directory
    - SDL_CreateRGBSurfaceFrom
    - SDL_GetError
    - SDL_FreeSurface
    - gf_pixel_get_bytes_per_pixel
    - SDL_VERSION_ATLEAST
    - gf_file_load_data
    linkageType: ''
    returnType: void
    signature: void SDLVid_SetIcon(SDLVidCtx *ctx)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:467,1
    - Dst: gf_mx_p
      Src: /src/gpac/modules/sdl_out/video.c:473,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:475,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/sdl_out/video.c:482,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:486,1
    - Dst: SDL_SetVideoMode
      Src: /src/gpac/modules/sdl_out/video.c:498,1
    - Dst: SDL_GL_SetAttribute
      Src: /src/gpac/modules/sdl_out/video.c:500,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/sdl_out/video.c:502,1
    - Dst: atoi
      Src: /src/gpac/modules/sdl_out/video.c:503,1
    - Dst: SDL_GL_SetAttribute
      Src: /src/gpac/modules/sdl_out/video.c:504,1
    - Dst: SDL_GL_SetAttribute
      Src: /src/gpac/modules/sdl_out/video.c:505,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/sdl_out/video.c:506,1
    - Dst: atoi
      Src: /src/gpac/modules/sdl_out/video.c:507,1
    - Dst: SDL_GL_SetAttribute
      Src: /src/gpac/modules/sdl_out/video.c:508,1
    - Dst: SDL_GL_SetAttribute
      Src: /src/gpac/modules/sdl_out/video.c:509,1
    - Dst: SDL_GL_SetAttribute
      Src: /src/gpac/modules/sdl_out/video.c:510,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:512,1
    - Dst: SDL_GL_SetAttribute
      Src: /src/gpac/modules/sdl_out/video.c:520,1
    - Dst: SDL_GL_SetAttribute
      Src: /src/gpac/modules/sdl_out/video.c:521,1
    - Dst: SDL_GL_SetAttribute
      Src: /src/gpac/modules/sdl_out/video.c:523,1
    - Dst: SDL_CreateWindow
      Src: /src/gpac/modules/sdl_out/video.c:528,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:529,1
    - Dst: SDL_GetError
      Src: /src/gpac/modules/sdl_out/video.c:529,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/sdl_out/video.c:530,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:533,1
    - Dst: SDL_GetWindowID
      Src: /src/gpac/modules/sdl_out/video.c:534,1
    - Dst: SDLVid_SetIcon
      Src: /src/gpac/modules/sdl_out/video.c:536,1
    - Dst: setlocale
      Src: /src/gpac/modules/sdl_out/video.c:545,1
    - Dst: SDL_GL_SetAttribute
      Src: /src/gpac/modules/sdl_out/video.c:551,1
    - Dst: SDL_GL_CreateContext
      Src: /src/gpac/modules/sdl_out/video.c:552,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:553,1
    - Dst: SDL_GetError
      Src: /src/gpac/modules/sdl_out/video.c:553,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/sdl_out/video.c:554,1
    - Dst: SDL_GL_MakeCurrent
      Src: /src/gpac/modules/sdl_out/video.c:557,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:558,1
    - Dst: SDL_GetError
      Src: /src/gpac/modules/sdl_out/video.c:558,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/sdl_out/video.c:559,1
    - Dst: SDL_GL_GetDrawableSize
      Src: /src/gpac/modules/sdl_out/video.c:567,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:568,1
    - Dst: SDL_GetDisplayOrientation
      Src: /src/gpac/modules/sdl_out/video.c:570,1
    - Dst: gf_module_get_bool
      Src: /src/gpac/modules/sdl_out/video.c:587,1
    - Dst: SDL_GL_SetSwapInterval
      Src: /src/gpac/modules/sdl_out/video.c:592,1
    - Dst: SDL_SetWindowSize
      Src: /src/gpac/modules/sdl_out/video.c:596,1
    - Dst: SDL_SetVideoMode
      Src: /src/gpac/modules/sdl_out/video.c:600,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:602,1
    - Dst: SDL_GetError
      Src: /src/gpac/modules/sdl_out/video.c:602,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/sdl_out/video.c:603,1
    - Dst: memset
      Src: /src/gpac/modules/sdl_out/video.c:609,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/sdl_out/video.c:612,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:613,1
    - Dst: SDL_GL_SetAttribute
      Src: /src/gpac/modules/sdl_out/video.c:620,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:626,1
    - Dst: SDL_DestroyRenderer
      Src: /src/gpac/modules/sdl_out/video.c:631,1
    - Dst: SDL_DestroyWindow
      Src: /src/gpac/modules/sdl_out/video.c:633,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:638,1
    - Dst: SDL_CreateWindow
      Src: /src/gpac/modules/sdl_out/video.c:644,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:647,1
    - Dst: SDL_GetError
      Src: /src/gpac/modules/sdl_out/video.c:647,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/sdl_out/video.c:648,1
    - Dst: SDL_GetWindowID
      Src: /src/gpac/modules/sdl_out/video.c:651,1
    - Dst: SDLVid_SetIcon
      Src: /src/gpac/modules/sdl_out/video.c:653,1
    - Dst: setlocale
      Src: /src/gpac/modules/sdl_out/video.c:657,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:659,1
    - Dst: SDL_RaiseWindow
      Src: /src/gpac/modules/sdl_out/video.c:660,1
    - Dst: gf_module_get_bool
      Src: /src/gpac/modules/sdl_out/video.c:664,1
    - Dst: SDL_CreateRenderer
      Src: /src/gpac/modules/sdl_out/video.c:669,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:670,1
    - Dst: SDL_GetError
      Src: /src/gpac/modules/sdl_out/video.c:670,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/sdl_out/video.c:671,1
    - Dst: SDL_SetWindowSize
      Src: /src/gpac/modules/sdl_out/video.c:676,1
    - Dst: SDL_SetRenderDrawColor
      Src: /src/gpac/modules/sdl_out/video.c:678,1
    - Dst: SDL_RenderClear
      Src: /src/gpac/modules/sdl_out/video.c:679,1
    - Dst: SDL_SetVideoMode
      Src: /src/gpac/modules/sdl_out/video.c:682,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:684,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/sdl_out/video.c:686,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 149
    argCount: 3
    argNames:
    - dr
    - width
    - height
    argTypes:
    - GF_VideoOutput*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 464
    functionDepth: 2
    functionLinenumber: 464
    functionLinenumberEnd: 688
    functionName: SDLVid_ResizeWindow
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - SDL_GL_SetAttribute
    - SDL_SetVideoMode
    - SDL_RenderClear
    - SDL_GetDisplayOrientation
    - SDL_RaiseWindow
    - GF_VideoOutput*::on_event
    - memset
    - gf_opts_get_key
    - atoi
    - SDL_SetRenderDrawColor
    - SDL_CreateWindow
    - SDLVid_SetIcon
    - SDL_CreateRenderer
    - SDL_GL_SetSwapInterval
    - SDL_VERSION_ATLEAST
    - gf_mx_p
    - SDL_GL_GetDrawableSize
    - gf_module_get_bool
    - GF_LOG
    - SDL_DestroyRenderer
    - gf_mx_v
    - SDL_GetError
    - setlocale
    - SDL_DestroyWindow
    - SDL_GL_CreateContext
    - SDLVID
    - SDL_GL_MakeCurrent
    - SDL_GetWindowID
    - SDL_SetWindowSize
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SDLVid_ResizeWindow(GF_VideoOutput *dr, u32 width, u32 height)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:693,1
    - Dst: SDL_SetCursor
      Src: /src/gpac/modules/sdl_out/video.c:700,1
    - Dst: SDL_SetCursor
      Src: /src/gpac/modules/sdl_out/video.c:703,1
    - Dst: SDL_SetCursor
      Src: /src/gpac/modules/sdl_out/video.c:706,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - dr
    - cursor_type
    argTypes:
    - GF_VideoOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 710
      start: 690
    functionDepth: 1
    functionLinenumber: 690
    functionLinenumberEnd: 710
    functionName: SDLVid_SetCursor
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - SDL_SetCursor
    - SDLVID
    linkageType: ''
    returnType: void
    signature: void SDLVid_SetCursor(GF_VideoOutput *dr, u32 cursor_type)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:719,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:722,1
    - Dst: putenv
      Src: /src/gpac/modules/sdl_out/video.c:728,1
    - Dst: SDL_WasInit
      Src: /src/gpac/modules/sdl_out/video.c:732,1
    - Dst: SDL_InitSubSystem
      Src: /src/gpac/modules/sdl_out/video.c:734,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/sdl_out/video.c:738,1
    - Dst: gf_list_find
      Src: /src/gpac/modules/sdl_out/video.c:740,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/sdl_out/video.c:741,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/sdl_out/video.c:742,1
    - Dst: SDL_GetCursor
      Src: /src/gpac/modules/sdl_out/video.c:745,1
    - Dst: SDLVid_LoadCursor
      Src: /src/gpac/modules/sdl_out/video.c:746,1
    - Dst: SDLVid_LoadCursor
      Src: /src/gpac/modules/sdl_out/video.c:747,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:748,1
    - Dst: SDL_EnableUNICODE
      Src: /src/gpac/modules/sdl_out/video.c:751,1
    - Dst: SDL_EnableKeyRepeat
      Src: /src/gpac/modules/sdl_out/video.c:752,1
    - Dst: SDL_GetTicks
      Src: /src/gpac/modules/sdl_out/video.c:755,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:760,1
    - Dst: SDL_GetDesktopDisplayMode
      Src: /src/gpac/modules/sdl_out/video.c:761,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:767,1
    - Dst: SDL_GetVideoInfo
      Src: /src/gpac/modules/sdl_out/video.c:768,1
    - Dst: SDL_ListModes
      Src: /src/gpac/modules/sdl_out/video.c:777,1
    - Dst: fprintf
      Src: /src/gpac/modules/sdl_out/video.c:779,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:799,1
    - Dst: SDLVid_SetCaption
      Src: /src/gpac/modules/sdl_out/video.c:800,1
    - Dst: SDLVid_SetCaption
      Src: /src/gpac/modules/sdl_out/video.c:802,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:804,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 55
    argCount: 2
    argNames:
    - ctx
    - dr
    argTypes:
    - SDLVidCtx*
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 807
      start: 716
    functionDepth: 1
    functionLinenumber: 716
    functionLinenumberEnd: 807
    functionName: SDLVid_InitializeWindow
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - SDL_GetDesktopDisplayMode
    - SDL_EnableKeyRepeat
    - SDL_ListModes
    - gf_list_find
    - gf_list_count
    - SDLVid_LoadCursor
    - fprintf
    - gf_list_new
    - SDL_InitSubSystem
    - gf_list_add
    - SDL_WasInit
    - putenv
    - SDL_VERSION_ATLEAST
    - SDL_GetCursor
    - SDLVid_SetCaption
    - GF_LOG
    - SDL_EnableUNICODE
    - SDL_GetVideoInfo
    - SDL_GetTicks
    linkageType: ''
    returnType: Bool
    signature: Bool SDLVid_InitializeWindow(SDLVidCtx *ctx, GF_VideoOutput *dr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: SDLVid_DestroyObjects
      Src: /src/gpac/modules/sdl_out/video.c:811,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:812,1
    - Dst: SDL_GL_DeleteContext
      Src: /src/gpac/modules/sdl_out/video.c:814,1
    - Dst: SDL_DestroyRenderer
      Src: /src/gpac/modules/sdl_out/video.c:818,1
    - Dst: SDL_DestroyWindow
      Src: /src/gpac/modules/sdl_out/video.c:825,1
    - Dst: SDL_QuitSubSystem
      Src: /src/gpac/modules/sdl_out/video.c:828,1
    - Dst: SDL_InitSubSystem
      Src: /src/gpac/modules/sdl_out/video.c:829,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - SDLVidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 833
      start: 809
    functionDepth: 1
    functionLinenumber: 809
    functionLinenumberEnd: 833
    functionName: SDLVid_ResetWindow
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - SDL_QuitSubSystem
    - SDL_InitSubSystem
    - SDL_DestroyRenderer
    - SDL_GL_DeleteContext
    - SDL_DestroyWindow
    - SDL_VERSION_ATLEAST
    - SDLVid_DestroyObjects
    linkageType: ''
    returnType: void
    signature: void SDLVid_ResetWindow(SDLVidCtx *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SDLVid_DestroyObjects
      Src: /src/gpac/modules/sdl_out/video.c:837,1
    - Dst: SDLVid_ResetWindow
      Src: /src/gpac/modules/sdl_out/video.c:838,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:839,1
    - Dst: SDL_DestroyWindow
      Src: /src/gpac/modules/sdl_out/video.c:840,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - SDLVidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 835
    functionDepth: 2
    functionLinenumber: 835
    functionLinenumberEnd: 843
    functionName: SDLVid_ShutdownWindow
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - SDLVid_ResetWindow
    - SDL_DestroyWindow
    - SDL_VERSION_ATLEAST
    - SDLVid_DestroyObjects
    linkageType: ''
    returnType: void
    signature: void SDLVid_ShutdownWindow(SDLVidCtx *ctx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:1175,1
    - Dst: SDLVid_InitializeWindow
      Src: /src/gpac/modules/sdl_out/video.c:1177,1
    - Dst: gf_mx_p
      Src: /src/gpac/modules/sdl_out/video.c:1190,1
    - Dst: SDLVid_ProcessMessageQueue
      Src: /src/gpac/modules/sdl_out/video.c:1193,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/sdl_out/video.c:1196,1
    - Dst: SDL_GetTicks
      Src: /src/gpac/modules/sdl_out/video.c:1201,1
    - Dst: SDL_ShowCursor
      Src: /src/gpac/modules/sdl_out/video.c:1202,1
    - Dst: SDL_ShowCursor
      Src: /src/gpac/modules/sdl_out/video.c:1205,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/sdl_out/video.c:1216,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/sdl_out/video.c:1220,1
    - Dst: SDLVid_ShutdownWindow
      Src: /src/gpac/modules/sdl_out/video.c:1222,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 1
    argNames:
    - par
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1226
      start: 1168
    functionDepth: 3
    functionLinenumber: 1168
    functionLinenumberEnd: 1226
    functionName: SDLVid_EventProc
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - SDLVid_ShutdownWindow
    - gf_mx_p
    - SDLVID
    - SDL_ShowCursor
    - SDLVid_InitializeWindow
    - gf_sleep
    - gf_mx_v
    - SDL_GetTicks
    - SDLVid_ProcessMessageQueue
    linkageType: ''
    returnType: u32
    signature: u32 SDLVid_EventProc(void *par)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:1233,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:1247,1
    - Dst: SDL_ShowWindow
      Src: /src/gpac/modules/sdl_out/video.c:1248,1
    - Dst: SDLOUT_InitSDL
      Src: /src/gpac/modules/sdl_out/video.c:1253,1
    - Dst: gf_th_run
      Src: /src/gpac/modules/sdl_out/video.c:1258,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/sdl_out/video.c:1261,1
    - Dst: SDLOUT_CloseSDL
      Src: /src/gpac/modules/sdl_out/video.c:1265,1
    - Dst: SDLVid_InitializeWindow
      Src: /src/gpac/modules/sdl_out/video.c:1270,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/sdl_out/video.c:1271,1
    - Dst: SDL_QuitSubSystem
      Src: /src/gpac/modules/sdl_out/video.c:1272,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/sdl_out/video.c:1273,1
    - Dst: SDLOUT_CloseSDL
      Src: /src/gpac/modules/sdl_out/video.c:1276,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/modules/sdl_out/video.c:1283,1
    - Dst: sdl_translate_key
      Src: /src/gpac/modules/sdl_out/video.c:1285,1
    - Dst: SDLVid_SetCursor
      Src: /src/gpac/modules/sdl_out/video.c:1286,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 38
    argCount: 4
    argNames:
    - dr
    - os_handle
    - os_display
    - init_flags
    argTypes:
    - struct _video_out*
    - void*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1292
      start: 1230
    functionDepth: 2
    functionLinenumber: 1230
    functionLinenumberEnd: 1292
    functionName: SDLVid_Setup
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - gf_th_run
    - SDLOUT_InitSDL
    - SDLOUT_CloseSDL
    - SDL_QuitSubSystem
    - SDLVID
    - SDL_ShowWindow
    - SDLVid_SetCursor
    - gf_sleep
    - SDLVid_InitializeWindow
    - gf_list_count
    - sdl_translate_key
    - gf_sys_is_cov_mode
    - gf_list_del
    - SDL_VERSION_ATLEAST
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SDLVid_Setup(struct _video_out *dr, void *os_handle, void *os_display,
      u32 init_flags)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:1296,1
    - Dst: SDL_PushEvent
      Src: /src/gpac/modules/sdl_out/video.c:1304,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/sdl_out/video.c:1309,1
    - Dst: SDLVid_ShutdownWindow
      Src: /src/gpac/modules/sdl_out/video.c:1312,1
    - Dst: SDLOUT_CloseSDL
      Src: /src/gpac/modules/sdl_out/video.c:1315,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1318
      start: 1294
    functionDepth: 3
    functionLinenumber: 1294
    functionLinenumberEnd: 1318
    functionName: SDLVid_Shutdown
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - SDLVid_ShutdownWindow
    - SDL_PushEvent
    - SDLOUT_CloseSDL
    - SDLVID
    - gf_sleep
    linkageType: ''
    returnType: void
    signature: void SDLVid_Shutdown(GF_VideoOutput *dr)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:1325,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:1326,1
    - Dst: gf_mx_p
      Src: /src/gpac/modules/sdl_out/video.c:1335,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:1338,1
    - Dst: SDL_GetCurrentDisplayMode
      Src: /src/gpac/modules/sdl_out/video.c:1339,1
    - Dst: SDL_PixelFormatEnumToMasks
      Src: /src/gpac/modules/sdl_out/video.c:1340,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:1347,1
    - Dst: gf_module_get_bool
      Src: /src/gpac/modules/sdl_out/video.c:1350,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:1360,1
    - Dst: SDL_GetNumDisplayModes
      Src: /src/gpac/modules/sdl_out/video.c:1361,1
    - Dst: SDL_GetDisplayMode
      Src: /src/gpac/modules/sdl_out/video.c:1363,1
    - Dst: SDL_PixelFormatEnumToMasks
      Src: /src/gpac/modules/sdl_out/video.c:1368,1
    - Dst: SDL_VideoModeOK
      Src: /src/gpac/modules/sdl_out/video.c:1376,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:1385,1
    - Dst: SDL_GetCurrentDisplayMode
      Src: /src/gpac/modules/sdl_out/video.c:1386,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:1391,1
    - Dst: SDL_SetWindowDisplayMode
      Src: /src/gpac/modules/sdl_out/video.c:1392,1
    - Dst: SDL_SetWindowFullscreen
      Src: /src/gpac/modules/sdl_out/video.c:1393,1
    - Dst: SDL_SetVideoMode
      Src: /src/gpac/modules/sdl_out/video.c:1395,1
    - Dst: SDLVid_DestroyObjects
      Src: /src/gpac/modules/sdl_out/video.c:1398,1
    - Dst: memset
      Src: /src/gpac/modules/sdl_out/video.c:1404,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/sdl_out/video.c:1407,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:1410,1
    - Dst: SDL_SetWindowFullscreen
      Src: /src/gpac/modules/sdl_out/video.c:1411,1
    - Dst: SDLVid_ResizeWindow
      Src: /src/gpac/modules/sdl_out/video.c:1413,1
    - Dst: gf_mx_v
      Src: /src/gpac/modules/sdl_out/video.c:1417,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 66
    argCount: 4
    argNames:
    - dr
    - bFullScreenOn
    - screen_width
    - screen_height
    argTypes:
    - GF_VideoOutput*
    - Bool
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1420
      start: 1321
    functionDepth: 3
    functionLinenumber: 1321
    functionLinenumberEnd: 1420
    functionName: SDLVid_SetFullScreen
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - SDL_SetVideoMode
    - gf_module_get_bool
    - SDL_PixelFormatEnumToMasks
    - SDLVID
    - SDL_VideoModeOK
    - SDL_SetWindowFullscreen
    - SDL_GetNumDisplayModes
    - GF_VideoOutput*::on_event
    - memset
    - SDL_GetDisplayMode
    - gf_mx_v
    - SDL_GetCurrentDisplayMode
    - SDL_SetWindowDisplayMode
    - SDLVid_ResizeWindow
    - SDL_VERSION_ATLEAST
    - SDLVid_DestroyObjects
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SDLVid_SetFullScreen(GF_VideoOutput *dr, Bool bFullScreenOn,
      u32 *screen_width, u32 *screen_height)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:1425,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:1426,1
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/sdl_out/video.c:1434,1
    - Dst: strcmp
      Src: /src/gpac/modules/sdl_out/video.c:1436,1
    - Dst: strcmp
      Src: /src/gpac/modules/sdl_out/video.c:1438,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:1444,1
    - Dst: SDL_DestroyTexture
      Src: /src/gpac/modules/sdl_out/video.c:1447,1
    - Dst: gf_free
      Src: /src/gpac/modules/sdl_out/video.c:1448,1
    - Dst: SDL_CreateTexture
      Src: /src/gpac/modules/sdl_out/video.c:1450,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/sdl_out/video.c:1451,1
    - Dst: SDL_SetRenderDrawColor
      Src: /src/gpac/modules/sdl_out/video.c:1454,1
    - Dst: SDL_RenderClear
      Src: /src/gpac/modules/sdl_out/video.c:1455,1
    - Dst: SDL_RenderPresent
      Src: /src/gpac/modules/sdl_out/video.c:1456,1
    - Dst: SDL_MapRGB
      Src: /src/gpac/modules/sdl_out/video.c:1460,1
    - Dst: SDL_FillRect
      Src: /src/gpac/modules/sdl_out/video.c:1461,1
    - Dst: SDL_Flip
      Src: /src/gpac/modules/sdl_out/video.c:1462,1
    - Dst: SDL_FreeSurface
      Src: /src/gpac/modules/sdl_out/video.c:1467,1
    - Dst: SDL_CreateRGBSurface
      Src: /src/gpac/modules/sdl_out/video.c:1469,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 39
    argCount: 4
    argNames:
    - dr
    - newWidth
    - newHeight
    - system_mem
    argTypes:
    - GF_VideoOutput*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1477
      start: 1422
    functionDepth: 1
    functionLinenumber: 1422
    functionLinenumberEnd: 1477
    functionName: SDLVid_SetBackbufferSize
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - SDL_DestroyTexture
    - gf_free
    - SDL_RenderPresent
    - SDLVID
    - SDL_RenderClear
    - SDL_Flip
    - SDL_MapRGB
    - gf_module_get_key
    - strcmp
    - SDL_FillRect
    - SDL_CreateTexture
    - SDL_FreeSurface
    - SDL_SetRenderDrawColor
    - SDL_CreateRGBSurface
    - gf_malloc
    - SDL_VERSION_ATLEAST
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SDLVid_SetBackbufferSize(GF_VideoOutput *dr, u32 newWidth, u32
      newHeight, Bool system_mem)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 27
    argCount: 2
    argNames:
    - format
    - force_alpha
    argTypes:
    - SDL_PixelFormat*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1499
      start: 1479
    functionDepth: 0
    functionLinenumber: 1479
    functionLinenumberEnd: 1499
    functionName: SDLVid_MapPixelFormat
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SDLVid_MapPixelFormat(SDL_PixelFormat *format, Bool force_alpha)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:1504,1
    - Dst: memset
      Src: /src/gpac/modules/sdl_out/video.c:1507,1
    - Dst: SDL_RenderReadPixels
      Src: /src/gpac/modules/sdl_out/video.c:1516,1
    - Dst: SDL_UpdateTexture
      Src: /src/gpac/modules/sdl_out/video.c:1520,1
    - Dst: SDL_RenderCopy
      Src: /src/gpac/modules/sdl_out/video.c:1521,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 3
    argNames:
    - dr
    - video_info
    - do_lock
    argTypes:
    - GF_VideoOutput*
    - GF_VideoSurface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1524
      start: 1502
    functionDepth: 1
    functionLinenumber: 1502
    functionLinenumberEnd: 1524
    functionName: SDLVid_LockBackBuffer
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - SDL_RenderReadPixels
    - SDLVID
    - SDL_RenderCopy
    - memset
    - SDL_UpdateTexture
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SDLVid_LockBackBuffer(GF_VideoOutput *dr, GF_VideoSurface *video_info,
      Bool do_lock)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:1529,1
    - Dst: SDL_LockSurface
      Src: /src/gpac/modules/sdl_out/video.c:1534,1
    - Dst: memset
      Src: /src/gpac/modules/sdl_out/video.c:1535,1
    - Dst: SDLVid_MapPixelFormat
      Src: /src/gpac/modules/sdl_out/video.c:1541,1
    - Dst: SDL_UnlockSurface
      Src: /src/gpac/modules/sdl_out/video.c:1544,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 3
    argNames:
    - dr
    - video_info
    - do_lock
    argTypes:
    - GF_VideoOutput*
    - GF_VideoSurface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1547
      start: 1527
    functionDepth: 1
    functionLinenumber: 1527
    functionLinenumberEnd: 1547
    functionName: SDLVid_LockBackBuffer
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - SDLVID
    - SDL_LockSurface
    - SDL_UnlockSurface
    - memset
    - SDLVid_MapPixelFormat
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SDLVid_LockBackBuffer(GF_VideoOutput *dr, GF_VideoSurface *video_info,
      Bool do_lock)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:1560,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:1564,1
    - Dst: CGLGetCurrentContext
      Src: /src/gpac/modules/sdl_out/video.c:1571,1
    - Dst: CGLSetParameter
      Src: /src/gpac/modules/sdl_out/video.c:1572,1
    - Dst: gpac_on_video_swap
      Src: /src/gpac/modules/sdl_out/video.c:1578,1
    - Dst: SDL_GL_SwapWindow
      Src: /src/gpac/modules/sdl_out/video.c:1581,1
    - Dst: SDL_UpdateTexture
      Src: /src/gpac/modules/sdl_out/video.c:1587,1
    - Dst: SDL_RenderCopy
      Src: /src/gpac/modules/sdl_out/video.c:1588,1
    - Dst: SDL_RenderReadPixels
      Src: /src/gpac/modules/sdl_out/video.c:1590,1
    - Dst: SDL_RenderPresent
      Src: /src/gpac/modules/sdl_out/video.c:1593,1
    - Dst: SDL_RenderCopy
      Src: /src/gpac/modules/sdl_out/video.c:1595,1
    - Dst: SDL_RenderPresent
      Src: /src/gpac/modules/sdl_out/video.c:1598,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 2
    argNames:
    - dr
    - dest
    argTypes:
    - GF_VideoOutput*
    - GF_Window*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1603
      start: 1558
    functionDepth: 1
    functionLinenumber: 1558
    functionLinenumberEnd: 1603
    functionName: SDLVid_Flush
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - CGLGetCurrentContext
    - SDL_RenderReadPixels
    - SDLVID
    - GF_LOG
    - CGLSetParameter
    - gpac_on_video_swap
    - SDL_GL_SwapWindow
    - SDL_RenderCopy
    - SDL_UpdateTexture
    - SDL_RenderPresent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SDLVid_Flush(GF_VideoOutput *dr, GF_Window *dest)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:1610,1
    - Dst: SDL_GL_SwapBuffers
      Src: /src/gpac/modules/sdl_out/video.c:1617,1
    - Dst: SDL_LockSurface
      Src: /src/gpac/modules/sdl_out/video.c:1625,1
    - Dst: memset
      Src: /src/gpac/modules/sdl_out/video.c:1626,1
    - Dst: SDLVid_MapPixelFormat
      Src: /src/gpac/modules/sdl_out/video.c:1631,1
    - Dst: SDL_LockSurface
      Src: /src/gpac/modules/sdl_out/video.c:1634,1
    - Dst: SDLVid_MapPixelFormat
      Src: /src/gpac/modules/sdl_out/video.c:1639,1
    - Dst: gf_stretch_bits
      Src: /src/gpac/modules/sdl_out/video.c:1642,1
    - Dst: SDL_UnlockSurface
      Src: /src/gpac/modules/sdl_out/video.c:1643,1
    - Dst: SDL_UnlockSurface
      Src: /src/gpac/modules/sdl_out/video.c:1644,1
    - Dst: SDL_BlitSurface
      Src: /src/gpac/modules/sdl_out/video.c:1651,1
    - Dst: SDL_Flip
      Src: /src/gpac/modules/sdl_out/video.c:1653,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 38
    argCount: 2
    argNames:
    - dr
    - dest
    argTypes:
    - GF_VideoOutput*
    - GF_Window*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1655
      start: 1607
    functionDepth: 1
    functionLinenumber: 1607
    functionLinenumberEnd: 1655
    functionName: SDLVid_Flush
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - SDLVID
    - SDL_Flip
    - SDL_LockSurface
    - gf_stretch_bits
    - SDL_UnlockSurface
    - memset
    - SDLVid_MapPixelFormat
    - SDL_BlitSurface
    - SDL_GL_SwapBuffers
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SDLVid_Flush(GF_VideoOutput *dr, GF_Window *dest)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetSysColor
      Src: /src/gpac/modules/sdl_out/video.c:1663,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - idx
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1670
      start: 1660
    functionDepth: 0
    functionLinenumber: 1660
    functionLinenumberEnd: 1670
    functionName: get_sys_col
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 2
    functionsReached:
    - GetSysColor
    linkageType: ''
    returnType: u32
    signature: u32 get_sys_col(int idx)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:1677,1
    - Dst: SDLVid_ProcessMessageQueue
      Src: /src/gpac/modules/sdl_out/video.c:1678,1
    - Dst: SDLVid_SetCursor
      Src: /src/gpac/modules/sdl_out/video.c:1685,1
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:1691,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:1696,1
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:1699,1
    - Dst: SDL_SetWindowTitle
      Src: /src/gpac/modules/sdl_out/video.c:1700,1
    - Dst: SDLVid_ProcessEvent
      Src: /src/gpac/modules/sdl_out/video.c:1701,1
    - Dst: SDL_WM_SetCaption
      Src: /src/gpac/modules/sdl_out/video.c:1705,1
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:1714,1
    - Dst: SDLVid_ResizeWindow
      Src: /src/gpac/modules/sdl_out/video.c:1718,1
    - Dst: SDLVid_ResizeWindow
      Src: /src/gpac/modules/sdl_out/video.c:1725,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:1732,1
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:1734,1
    - Dst: SDL_GetWindowPosition
      Src: /src/gpac/modules/sdl_out/video.c:1743,1
    - Dst: SDL_SetWindowPosition
      Src: /src/gpac/modules/sdl_out/video.c:1744,1
    - Dst: SDL_SetWindowPosition
      Src: /src/gpac/modules/sdl_out/video.c:1746,1
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:1753,1
    - Dst: SDLVid_ResetWindow
      Src: /src/gpac/modules/sdl_out/video.c:1760,1
    - Dst: SDLVid_ResizeWindow
      Src: /src/gpac/modules/sdl_out/video.c:1761,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:1763,1
    - Dst: SDLVid_ResizeWindow
      Src: /src/gpac/modules/sdl_out/video.c:1764,1
    - Dst: SDLVid_SetBackbufferSize
      Src: /src/gpac/modules/sdl_out/video.c:1768,1
    - Dst: SDLVid_ResetWindow
      Src: /src/gpac/modules/sdl_out/video.c:1773,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:1776,1
    - Dst: SDLVid_ResizeWindow
      Src: /src/gpac/modules/sdl_out/video.c:1779,1
    - Dst: SDLVid_ResizeWindow
      Src: /src/gpac/modules/sdl_out/video.c:1781,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1788,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1789,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1790,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1791,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1792,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1793,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1794,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1795,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1796,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1797,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1798,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1799,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1800,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1801,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1802,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1803,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1804,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1805,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1806,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1807,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1808,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1809,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1810,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1811,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1812,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1813,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1814,1
    - Dst: get_sys_col
      Src: /src/gpac/modules/sdl_out/video.c:1815,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:1823,1
    - Dst: SDL_StartTextInput
      Src: /src/gpac/modules/sdl_out/video.c:1825,1
    - Dst: SDL_StopTextInput
      Src: /src/gpac/modules/sdl_out/video.c:1827,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:1836,1
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:1837,1
    - Dst: SDL_GL_MakeCurrent
      Src: /src/gpac/modules/sdl_out/video.c:1838,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:1839,1
    - Dst: SDL_GetError
      Src: /src/gpac/modules/sdl_out/video.c:1839,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:1846,1
    - Dst: SDL_SetHint
      Src: /src/gpac/modules/sdl_out/video.c:1850,1
    - Dst: SDL_SetHint
      Src: /src/gpac/modules/sdl_out/video.c:1851,1
    - Dst: SDL_SetHint
      Src: /src/gpac/modules/sdl_out/video.c:1852,1
    - Dst: SDL_SetHint
      Src: /src/gpac/modules/sdl_out/video.c:1853,1
    - Dst: SDL_SetHint
      Src: /src/gpac/modules/sdl_out/video.c:1855,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 146
    argCount: 2
    argNames:
    - dr
    - evt
    argTypes:
    - GF_VideoOutput*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1864
      start: 1673
    functionDepth: 3
    functionLinenumber: 1673
    functionLinenumberEnd: 1864
    functionName: SDLVid_ProcessEvent
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 1
    functionsReached:
    - SDL_SetWindowTitle
    - SDL_SetWindowPosition
    - get_sys_col
    - SDL_StopTextInput
    - SDLVid_ResizeWindow
    - SDL_VERSION_ATLEAST
    - SDLVid_ResetWindow
    - SDL_GetWindowPosition
    - SDLVid_SetBackbufferSize
    - GF_LOG
    - SDL_WM_SetCaption
    - SDLVid_ProcessEvent
    - SDL_GetError
    - SDL_StartTextInput
    - SDLVID
    - SDL_GL_MakeCurrent
    - SDLVid_SetCursor
    - SDL_SetHint
    - SDLVid_ProcessMessageQueue
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SDLVid_ProcessEvent(GF_VideoOutput *dr, GF_Event *evt)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:1869,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:1879,1
    - Dst: SDL_UpdateTexture
      Src: /src/gpac/modules/sdl_out/video.c:1882,1
    - Dst: SDL_RenderCopy
      Src: /src/gpac/modules/sdl_out/video.c:1883,1
    - Dst: SDL_RenderClear
      Src: /src/gpac/modules/sdl_out/video.c:1889,1
    - Dst: SDL_SetRenderDrawColor
      Src: /src/gpac/modules/sdl_out/video.c:1910,1
    - Dst: SDL_SetRenderDrawColor
      Src: /src/gpac/modules/sdl_out/video.c:1912,1
    - Dst: SDL_RenderFillRect
      Src: /src/gpac/modules/sdl_out/video.c:1914,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:1916,1
    - Dst: SDL_GetError
      Src: /src/gpac/modules/sdl_out/video.c:1916,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:1966,1
    - Dst: SDL_QueryTexture
      Src: /src/gpac/modules/sdl_out/video.c:1990,1
    - Dst: SDL_DestroyTexture
      Src: /src/gpac/modules/sdl_out/video.c:1992,1
    - Dst: SDL_CreateTexture
      Src: /src/gpac/modules/sdl_out/video.c:1997,1
    - Dst: SDL_QueryTexture
      Src: /src/gpac/modules/sdl_out/video.c:2001,1
    - Dst: SDL_LockTexture
      Src: /src/gpac/modules/sdl_out/video.c:2009,1
    - Dst: memset
      Src: /src/gpac/modules/sdl_out/video.c:2019,1
    - Dst: gf_stretch_bits
      Src: /src/gpac/modules/sdl_out/video.c:2028,1
    - Dst: SDL_UnlockTexture
      Src: /src/gpac/modules/sdl_out/video.c:2030,1
    - Dst: SDL_UpdateTexture
      Src: /src/gpac/modules/sdl_out/video.c:2032,1
    - Dst: SDL_SetTextureBlendMode
      Src: /src/gpac/modules/sdl_out/video.c:2036,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:2038,1
    - Dst: SDL_GetError
      Src: /src/gpac/modules/sdl_out/video.c:2038,1
    - Dst: SDL_SetTextureAlphaMod
      Src: /src/gpac/modules/sdl_out/video.c:2041,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:2043,1
    - Dst: SDL_GetError
      Src: /src/gpac/modules/sdl_out/video.c:2043,1
    - Dst: SDL_SetTextureBlendMode
      Src: /src/gpac/modules/sdl_out/video.c:2047,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:2049,1
    - Dst: SDL_GetError
      Src: /src/gpac/modules/sdl_out/video.c:2049,1
    - Dst: SDL_RenderCopy
      Src: /src/gpac/modules/sdl_out/video.c:2054,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:2056,1
    - Dst: SDL_GetError
      Src: /src/gpac/modules/sdl_out/video.c:2056,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 159
    argCount: 5
    argNames:
    - dr
    - video_src
    - src_wnd
    - dst_wnd
    - overlay_type
    argTypes:
    - GF_VideoOutput*
    - GF_VideoSurface*
    - GF_Window*
    - GF_Window*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2060
      start: 1867
    functionDepth: 1
    functionLinenumber: 1867
    functionLinenumberEnd: 2060
    functionName: SDL_Blit
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - SDL_DestroyTexture
    - SDL_SetTextureAlphaMod
    - SDL_RenderFillRect
    - SDL_RenderClear
    - SDLVID
    - SDL_QueryTexture
    - GF_LOG
    - SDL_LockTexture
    - SDL_RenderCopy
    - SDL_UnlockTexture
    - SDL_SetTextureBlendMode
    - gf_stretch_bits
    - memset
    - SDL_UpdateTexture
    - SDL_GetError
    - SDL_CreateTexture
    - SDL_SetRenderDrawColor
    - SDL_VERSION_ATLEAST
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SDL_Blit(GF_VideoOutput *dr, GF_VideoSurface *video_src, GF_Window
      *src_wnd, GF_Window *dst_wnd, u32 overlay_type)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:2065,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:2074,1
    - Dst: SDL_FreeYUVOverlay
      Src: /src/gpac/modules/sdl_out/video.c:2080,1
    - Dst: SDL_FreeYUVOverlay
      Src: /src/gpac/modules/sdl_out/video.c:2086,1
    - Dst: SDL_CreateYUVOverlay
      Src: /src/gpac/modules/sdl_out/video.c:2088,1
    - Dst: SDL_LockYUVOverlay
      Src: /src/gpac/modules/sdl_out/video.c:2092,1
    - Dst: memset
      Src: /src/gpac/modules/sdl_out/video.c:2095,1
    - Dst: gf_stretch_bits
      Src: /src/gpac/modules/sdl_out/video.c:2104,1
    - Dst: SDL_UnlockYUVOverlay
      Src: /src/gpac/modules/sdl_out/video.c:2106,1
    - Dst: SDL_DisplayYUVOverlay
      Src: /src/gpac/modules/sdl_out/video.c:2112,1
    - Dst: SDL_FreeSurface
      Src: /src/gpac/modules/sdl_out/video.c:2138,1
    - Dst: SDL_CreateRGBSurface
      Src: /src/gpac/modules/sdl_out/video.c:2140,1
    - Dst: SDL_LockSurface
      Src: /src/gpac/modules/sdl_out/video.c:2147,1
    - Dst: memcpy
      Src: /src/gpac/modules/sdl_out/video.c:2152,1
    - Dst: SDL_UnlockSurface
      Src: /src/gpac/modules/sdl_out/video.c:2156,1
    - Dst: SDL_BlitSurface
      Src: /src/gpac/modules/sdl_out/video.c:2163,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/video.c:2164,1
    - Dst: SDL_GetError
      Src: /src/gpac/modules/sdl_out/video.c:2164,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 75
    argCount: 5
    argNames:
    - dr
    - video_src
    - src_wnd
    - dst_wnd
    - overlay_type
    argTypes:
    - GF_VideoOutput*
    - GF_VideoSurface*
    - GF_Window*
    - GF_Window*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2167
      start: 2063
    functionDepth: 1
    functionLinenumber: 2063
    functionLinenumberEnd: 2167
    functionName: SDL_Blit
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 0
    functionsReached:
    - SDL_BlitSurface
    - SDL_CreateYUVOverlay
    - SDL_LockYUVOverlay
    - SDLVID
    - GF_LOG
    - SDL_LockSurface
    - memcpy
    - gf_stretch_bits
    - SDL_FreeYUVOverlay
    - memset
    - SDL_DisplayYUVOverlay
    - SDL_UnlockSurface
    - SDL_GetError
    - SDL_FreeSurface
    - SDL_CreateRGBSurface
    - SDL_UnlockYUVOverlay
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SDL_Blit(GF_VideoOutput *dr, GF_VideoSurface *video_src, GF_Window
      *src_wnd, GF_Window *dst_wnd, u32 overlay_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/sdl_out/video.c:2187,1
    - Dst: memset
      Src: /src/gpac/modules/sdl_out/video.c:2188,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/sdl_out/video.c:2189,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/sdl_out/video.c:2191,1
    - Dst: memset
      Src: /src/gpac/modules/sdl_out/video.c:2192,1
    - Dst: gf_th_new
      Src: /src/gpac/modules/sdl_out/video.c:2194,1
    - Dst: gf_mx_new
      Src: /src/gpac/modules/sdl_out/video.c:2196,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/video.c:2214,1
    - Dst: gf_module_get_bool
      Src: /src/gpac/modules/sdl_out/video.c:2218,1
    - Dst: SDLVid_MapPixelFormat
      Src: /src/gpac/modules/sdl_out/video.c:2228,1
    - Dst: SDL_EnableUNICODE
      Src: /src/gpac/modules/sdl_out/video.c:2235,1
    - Dst: SDL_StartTextInput
      Src: /src/gpac/modules/sdl_out/video.c:2237,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2241
      start: 2182
    functionDepth: 1
    functionLinenumber: 2182
    functionLinenumberEnd: 2241
    functionName: SDL_NewVideo
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 1
    functionsReached:
    - gf_module_get_bool
    - gf_th_new
    - SDL_EnableUNICODE
    - memset
    - SDLVid_MapPixelFormat
    - SDL_StartTextInput
    - GF_REGISTER_MODULE_INTERFACE
    - gf_mx_new
    - gf_malloc
    - SDL_VERSION_ATLEAST
    linkageType: ''
    returnType: void
    signature: void *SDL_NewVideo()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SDLVID
      Src: /src/gpac/modules/sdl_out/video.c:2246,1
    - Dst: gf_th_del
      Src: /src/gpac/modules/sdl_out/video.c:2248,1
    - Dst: gf_mx_del
      Src: /src/gpac/modules/sdl_out/video.c:2250,1
    - Dst: gf_list_del_item
      Src: /src/gpac/modules/sdl_out/video.c:2252,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/sdl_out/video.c:2253,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/sdl_out/video.c:2255,1
    - Dst: SDL_QuitSubSystem
      Src: /src/gpac/modules/sdl_out/video.c:2258,1
    - Dst: gf_free
      Src: /src/gpac/modules/sdl_out/video.c:2260,1
    - Dst: gf_free
      Src: /src/gpac/modules/sdl_out/video.c:2261,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2262
      start: 2243
    functionDepth: 1
    functionLinenumber: 2243
    functionLinenumberEnd: 2262
    functionName: SDL_DeleteVideo
    functionSourceFile: /src/gpac/modules/sdl_out/video.c
    functionUses: 1
    functionsReached:
    - gf_free
    - SDL_QuitSubSystem
    - SDLVID
    - gf_list_count
    - gf_list_del_item
    - gf_list_del
    - gf_th_del
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void SDL_DeleteVideo(void *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 29
    functionName: SDLAUD
    functionSourceFile: /src/gpac/modules/sdl_out/audio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SDLAUD()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SDL_CloseAudio
      Src: /src/gpac/modules/sdl_out/audio.c:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionName: sdl_close_audio
    functionSourceFile: /src/gpac/modules/sdl_out/audio.c
    functionUses: 0
    functionsReached:
    - SDL_CloseAudio
    linkageType: ''
    returnType: void
    signature: void sdl_close_audio()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: SDLAUD
      Src: /src/gpac/modules/sdl_out/audio.c:38,1
    - Dst: gf_realloc
      Src: /src/gpac/modules/sdl_out/audio.c:42,1
    - Dst: memset
      Src: /src/gpac/modules/sdl_out/audio.c:45,1
    - Dst: GF_AudioOutput*::FillBuffer
      Src: /src/gpac/modules/sdl_out/audio.c:46,1
    - Dst: SDL_MixAudio
      Src: /src/gpac/modules/sdl_out/audio.c:48,1
    - Dst: GF_AudioOutput*::FillBuffer
      Src: /src/gpac/modules/sdl_out/audio.c:50,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - udata
    - stream
    - len
    argTypes:
    - void*
    - Uint8*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 52
    functionName: sdl_fill_audio
    functionSourceFile: /src/gpac/modules/sdl_out/audio.c
    functionUses: 0
    functionsReached:
    - SDL_MixAudio
    - memset
    - GF_AudioOutput*::FillBuffer
    - SDLAUD
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void sdl_fill_audio(void *udata, Uint8 *stream, int len)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: SDLAUD
      Src: /src/gpac/modules/sdl_out/audio.c:58,1
    - Dst: SDLOUT_InitSDL
      Src: /src/gpac/modules/sdl_out/audio.c:61,1
    - Dst: SDL_WasInit
      Src: /src/gpac/modules/sdl_out/audio.c:63,1
    - Dst: SDL_InitSubSystem
      Src: /src/gpac/modules/sdl_out/audio.c:65,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/audio.c:66,1
    - Dst: SDLOUT_CloseSDL
      Src: /src/gpac/modules/sdl_out/audio.c:67,1
    - Dst: memset
      Src: /src/gpac/modules/sdl_out/audio.c:72,1
    - Dst: SDL_OpenAudio
      Src: /src/gpac/modules/sdl_out/audio.c:79,1
    - Dst: sdl_close_audio
      Src: /src/gpac/modules/sdl_out/audio.c:80,1
    - Dst: SDL_QuitSubSystem
      Src: /src/gpac/modules/sdl_out/audio.c:81,1
    - Dst: SDLOUT_CloseSDL
      Src: /src/gpac/modules/sdl_out/audio.c:82,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/audio.c:83,1
    - Dst: sdl_close_audio
      Src: /src/gpac/modules/sdl_out/audio.c:86,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/audio.c:90,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 32
    argCount: 4
    argNames:
    - dr
    - os_handle
    - num_buffers
    - total_duration
    argTypes:
    - GF_AudioOutput*
    - void*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 92
    functionName: SDLAud_Setup
    functionSourceFile: /src/gpac/modules/sdl_out/audio.c
    functionUses: 0
    functionsReached:
    - SDLOUT_InitSDL
    - SDLOUT_CloseSDL
    - SDL_QuitSubSystem
    - SDL_InitSubSystem
    - SDL_OpenAudio
    - GF_LOG
    - memset
    - sdl_close_audio
    - SDL_WasInit
    - SDLAUD
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SDLAud_Setup(GF_AudioOutput *dr, void *os_handle, u32 num_buffers,
      u32 total_duration)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SDLAUD
      Src: /src/gpac/modules/sdl_out/audio.c:96,1
    - Dst: sdl_close_audio
      Src: /src/gpac/modules/sdl_out/audio.c:97,1
    - Dst: SDL_QuitSubSystem
      Src: /src/gpac/modules/sdl_out/audio.c:99,1
    - Dst: SDLOUT_CloseSDL
      Src: /src/gpac/modules/sdl_out/audio.c:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 103
    functionName: SDLAud_Shutdown
    functionSourceFile: /src/gpac/modules/sdl_out/audio.c
    functionUses: 0
    functionsReached:
    - sdl_close_audio
    - SDLOUT_CloseSDL
    - SDLAUD
    - SDL_QuitSubSystem
    linkageType: ''
    returnType: void
    signature: void SDLAud_Shutdown(GF_AudioOutput *dr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/sdl_out/audio.c:115,1
    - Dst: gf_free
      Src: /src/gpac/modules/sdl_out/audio.c:117,1
    - Dst: gf_free
      Src: /src/gpac/modules/sdl_out/audio.c:119,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 120
    functionName: SDL_DeleteAudio
    functionSourceFile: /src/gpac/modules/sdl_out/audio.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void SDL_DeleteAudio(void *ifce)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: SDLAUD
      Src: /src/gpac/modules/sdl_out/audio.c:126,1
    - Dst: sdl_close_audio
      Src: /src/gpac/modules/sdl_out/audio.c:128,1
    - Dst: memset
      Src: /src/gpac/modules/sdl_out/audio.c:131,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/audio.c:142,1
    - Dst: SDL_OpenAudio
      Src: /src/gpac/modules/sdl_out/audio.c:172,1
    - Dst: SDL_VERSION_ATLEAST
      Src: /src/gpac/modules/sdl_out/audio.c:187,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/audio.c:196,1
    - Dst: SDL_PauseAudio
      Src: /src/gpac/modules/sdl_out/audio.c:200,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/sdl_out/audio.c:201,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 69
    argCount: 5
    argNames:
    - dr
    - SampleRate
    - NbChannels
    - audioFormat
    - channel_cfg
    argTypes:
    - GF_AudioOutput*
    - u32*
    - u32*
    - u32*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 203
    functionName: SDLAud_Configure
    functionSourceFile: /src/gpac/modules/sdl_out/audio.c
    functionUses: 0
    functionsReached:
    - SDL_PauseAudio
    - SDL_OpenAudio
    - GF_LOG
    - sdl_close_audio
    - memset
    - SDLAUD
    - SDL_VERSION_ATLEAST
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SDLAud_Configure(GF_AudioOutput *dr, u32 *SampleRate, u32 *NbChannels,
      u32 *audioFormat, u64 channel_cfg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SDLAUD
      Src: /src/gpac/modules/sdl_out/audio.c:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 205
    functionDepth: 1
    functionLinenumber: 205
    functionLinenumberEnd: 209
    functionName: SDLAud_GetAudioDelay
    functionSourceFile: /src/gpac/modules/sdl_out/audio.c
    functionUses: 0
    functionsReached:
    - SDLAUD
    linkageType: ''
    returnType: u32
    signature: u32 SDLAud_GetAudioDelay(GF_AudioOutput *dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SDLAUD
      Src: /src/gpac/modules/sdl_out/audio.c:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 211
    functionDepth: 1
    functionLinenumber: 211
    functionLinenumberEnd: 215
    functionName: SDLAud_GetTotalBufferTime
    functionSourceFile: /src/gpac/modules/sdl_out/audio.c
    functionUses: 0
    functionsReached:
    - SDLAUD
    linkageType: ''
    returnType: u32
    signature: u32 SDLAud_GetTotalBufferTime(GF_AudioOutput *dr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SDLAUD
      Src: /src/gpac/modules/sdl_out/audio.c:219,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dr
    - Volume
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 217
    functionDepth: 1
    functionLinenumber: 217
    functionLinenumberEnd: 224
    functionName: SDLAud_SetVolume
    functionSourceFile: /src/gpac/modules/sdl_out/audio.c
    functionUses: 0
    functionsReached:
    - SDLAUD
    linkageType: ''
    returnType: void
    signature: void SDLAud_SetVolume(GF_AudioOutput *dr, u32 Volume)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - dr
    - pan
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 229
    functionName: SDLAud_SetPan
    functionSourceFile: /src/gpac/modules/sdl_out/audio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SDLAud_SetPan(GF_AudioOutput *dr, u32 pan)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SDL_PauseAudio
      Src: /src/gpac/modules/sdl_out/audio.c:233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dr
    - PlayType
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 234
    functionName: SDLAud_Play
    functionSourceFile: /src/gpac/modules/sdl_out/audio.c
    functionUses: 0
    functionsReached:
    - SDL_PauseAudio
    linkageType: ''
    returnType: void
    signature: void SDLAud_Play(GF_AudioOutput *dr, u32 PlayType)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - dr
    - priority
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 239
    functionName: SDLAud_SetPriority
    functionSourceFile: /src/gpac/modules/sdl_out/audio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SDLAud_SetPriority(GF_AudioOutput *dr, u32 priority)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - dr
    - desired_samplerate
    - NbChannels
    - nbBitsPerSample
    argTypes:
    - GF_AudioOutput*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 245
    functionName: SDLAud_QueryOutputSampleRate
    functionSourceFile: /src/gpac/modules/sdl_out/audio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SDLAud_QueryOutputSampleRate(GF_AudioOutput *dr, u32 *desired_samplerate,
      u32 *NbChannels, u32 *nbBitsPerSample)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/sdl_out/audio.c:253,1
    - Dst: memset
      Src: /src/gpac/modules/sdl_out/audio.c:254,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/sdl_out/audio.c:256,1
    - Dst: memset
      Src: /src/gpac/modules/sdl_out/audio.c:257,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/sdl_out/audio.c:258,1
    - Dst: gpac_force_step_mode
      Src: /src/gpac/modules/sdl_out/audio.c:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 247
    functionDepth: 2
    functionLinenumber: 247
    functionLinenumberEnd: 285
    functionName: SDL_NewAudio
    functionSourceFile: /src/gpac/modules/sdl_out/audio.c
    functionUses: 1
    functionsReached:
    - gpac_force_step_mode
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void *SDL_NewAudio()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/modules/test_filter/test_filter.c:41,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/modules/test_filter/test_filter.c:43,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/modules/test_filter/test_filter.c:46,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/modules/test_filter/test_filter.c:47,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/modules/test_filter/test_filter.c:48,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 52
    functionName: testfilter_configure_pid
    functionSourceFile: /src/gpac/modules/test_filter/test_filter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err testfilter_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - filter
    - fevt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: testfilter_process_event
    functionSourceFile: /src/gpac/modules/test_filter/test_filter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool testfilter_process_event(GF_Filter *filter, const GF_FilterEvent
      *fevt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/modules/test_filter/test_filter.c:63,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/modules/test_filter/test_filter.c:65,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/modules/test_filter/test_filter.c:66,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/modules/test_filter/test_filter.c:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 70
    functionName: testfilter_process
    functionSourceFile: /src/gpac/modules/test_filter/test_filter.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_ipid
    - gf_filter_pid_get_packet
    - gf_filter_pid_drop_packet
    - gf_filter_get_ipid_count
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err testfilter_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/modules/test_filter/test_filter.c:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 76
    functionName: testfilter_initialize
    functionSourceFile: /src/gpac/modules/test_filter/test_filter.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err testfilter_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/modules/test_filter/test_filter.c:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionName: testfilter_finalize
    functionSourceFile: /src/gpac/modules/test_filter/test_filter.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void testfilter_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 90
    functionName: OFFS
    functionSourceFile: /src/gpac/modules/test_filter/test_filter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 115
    functionName: GF_FilterRegister *RegisterFilter(GF_FilterSession *session)
    functionSourceFile: /src/gpac/modules/test_filter/test_filter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_FilterRegister *RegisterFilter(GF_FilterSession
      *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 4
    argNames:
    - (
    - x
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 50
    functionName: DFBCHECK
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DFBCHECK(x...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - flags
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: SET_DRAWING_FLAGS
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_DRAWING_FLAGS( flags )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: DirectFBVid_GetCtxSizeOf
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t DirectFBVid_GetCtxSizeOf(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SET_DRAWING_FLAGS
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:122,1
    - Dst: DirectFBVidCtx*::primary::SetColor
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:125,1
    - Dst: DirectFBVidCtx*::primary::FillRectangle
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 7
    argNames:
    - ctx
    - x
    - y
    - length
    - r
    - g
    - b
    argTypes:
    - DirectFBVidCtx*
    - u32
    - u32
    - u32
    - u8
    - u8
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 130
    functionName: DirectFBVid_DrawHLineWrapper
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached:
    - DirectFBVidCtx*::primary::SetColor
    - DirectFBVidCtx*::primary::FillRectangle
    - SET_DRAWING_FLAGS
    linkageType: ''
    returnType: void
    signature: void DirectFBVid_DrawHLineWrapper(DirectFBVidCtx *ctx, u32 x, u32 y,
      u32 length, u8 r, u8 g, u8 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SET_DRAWING_FLAGS
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:142,1
    - Dst: DirectFBVidCtx*::primary::SetColor
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:144,1
    - Dst: DirectFBVidCtx*::primary::FillRectangle
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 8
    argNames:
    - ctx
    - x
    - y
    - length
    - r
    - g
    - b
    - alpha
    argTypes:
    - DirectFBVidCtx*
    - u32
    - u32
    - u32
    - u8
    - u8
    - u8
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 147
    functionName: DirectFBVid_DrawHLineAlphaWrapper
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached:
    - DirectFBVidCtx*::primary::SetColor
    - DirectFBVidCtx*::primary::FillRectangle
    - SET_DRAWING_FLAGS
    linkageType: ''
    returnType: void
    signature: void DirectFBVid_DrawHLineAlphaWrapper(DirectFBVidCtx *ctx, u32 x,
      u32 y, u32 length, u8 r, u8 g, u8 b, u8 alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SET_DRAWING_FLAGS
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:158,1
    - Dst: DirectFBVidCtx*::primary::SetColor
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:160,1
    - Dst: DirectFBVidCtx*::primary::FillRectangle
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 9
    argNames:
    - ctx
    - x
    - y
    - width
    - height
    - r
    - g
    - b
    - a
    argTypes:
    - DirectFBVidCtx*
    - u32
    - u32
    - u32
    - u32
    - u8
    - u8
    - u8
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 163
    functionName: DirectFBVid_DrawRectangleWrapper
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached:
    - DirectFBVidCtx*::primary::SetColor
    - DirectFBVidCtx*::primary::FillRectangle
    - SET_DRAWING_FLAGS
    linkageType: ''
    returnType: void
    signature: void DirectFBVid_DrawRectangleWrapper(DirectFBVidCtx *ctx, u32 x, u32
      y, u32 width, u32 height, u8 r, u8 g, u8 b, u8 a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DirectFBVidCtx*::primary::Lock
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:172,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - buf
    - pitch
    argTypes:
    - DirectFBVidCtx*
    - void**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 175
    functionName: DirectFBVid_CtxPrimaryLock
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached:
    - DirectFBVidCtx*::primary::Lock
    linkageType: ''
    returnType: u32
    signature: u32 DirectFBVid_CtxPrimaryLock(DirectFBVidCtx *ctx, void **buf, u32
      *pitch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - device_id
    - desc
    - data
    argTypes:
    - DFBInputDeviceID
    - DFBInputDeviceDescription
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 191
    functionName: enum_input_device
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached:
    - malloc
    linkageType: ''
    returnType: DFBEnumerationResult
    signature: DFBEnumerationResult enum_input_device(DFBInputDeviceID device_id,
      DFBInputDeviceDescription desc, void *data )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:209,1
    - Dst: strdup
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:212,1
    - Dst: snprintf
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:214,1
    - Dst: strlwr
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:216,1
    - Dst: strdup
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:217,1
    - Dst: DFBCHECK
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:224,1
    - Dst: DirectFBInit
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:224,1
    - Dst: free
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:227,1
    - Dst: free
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:228,1
    - Dst: DFBCHECK
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:232,1
    - Dst: DirectFBSetOption
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:232,1
    - Dst: DFBCHECK
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:234,1
    - Dst: DirectFBSetOption
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:234,1
    - Dst: DFBCHECK
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:237,1
    - Dst: DirectFBCreate
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:237,1
    - Dst: DirectFBVidCtx*::dfb::EnumInputDevices
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:240,1
    - Dst: DFBCHECK
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:243,1
    - Dst: DirectFBVidCtx*::dfb::GetInputDevice
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:243,1
    - Dst: DFBCHECK
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:247,1
    - Dst: DirectFBVidCtx*::dfb::CreateInputEventBuffer
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:247,1
    - Dst: DFBCHECK
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:250,1
    - Dst: DirectFBVidCtx*::dfb::SetCooperativeLevel
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:250,1
    - Dst: DFBCHECK
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:261,1
    - Dst: DirectFBVidCtx*::dfb::CreateSurface
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:261,1
    - Dst: DirectFBVidCtx*::primary::GetPixelFormat
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:264,1
    - Dst: DirectFBVid_TranslatePixelFormatToGPAC
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:266,1
    - Dst: DirectFBVidCtx*::primary::GetSize
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:268,1
    - Dst: DirectFBVidCtx*::primary::Clear
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:269,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 29
    argCount: 2
    argNames:
    - ctx
    - dfb_system
    argTypes:
    - DirectFBVidCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 270
    functionName: DirectFBVid_InitAndCreateSurface
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached:
    - DirectFBVidCtx*::dfb::EnumInputDevices
    - DirectFBCreate
    - DirectFBVidCtx*::primary::GetSize
    - snprintf
    - malloc
    - DirectFBSetOption
    - DirectFBVid_TranslatePixelFormatToGPAC
    - strlwr
    - strdup
    - DirectFBVidCtx*::dfb::CreateSurface
    - DirectFBVidCtx*::primary::Clear
    - DirectFBVidCtx*::primary::GetPixelFormat
    - DFBCHECK
    - DirectFBInit
    - DirectFBVidCtx*::dfb::SetCooperativeLevel
    - DirectFBVidCtx*::dfb::GetInputDevice
    - free
    - DirectFBVidCtx*::dfb::CreateInputEventBuffer
    linkageType: ''
    returnType: void
    signature: void DirectFBVid_InitAndCreateSurface(DirectFBVidCtx *ctx, char *dfb_system)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DirectFBVidCtx*::primary::Unlock
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:279,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - DirectFBVidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 280
    functionName: DirectFBVid_CtxPrimaryUnlock
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached:
    - DirectFBVidCtx*::primary::Unlock
    linkageType: ''
    returnType: void
    signature: void DirectFBVid_CtxPrimaryUnlock(DirectFBVidCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - DirectFBVidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 290
    functionName: DirectFBVid_CtxGetWidth
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 DirectFBVid_CtxGetWidth(DirectFBVidCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - DirectFBVidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 297
    functionDepth: 0
    functionLinenumber: 297
    functionLinenumberEnd: 300
    functionName: DirectFBVid_CtxGetHeight
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 DirectFBVid_CtxGetHeight(DirectFBVidCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - DirectFBVidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 307
    functionDepth: 0
    functionLinenumber: 307
    functionLinenumberEnd: 310
    functionName: DirectFBVid_CtxGetPrimary
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void *DirectFBVid_CtxGetPrimary(DirectFBVidCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - DirectFBVidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 320
    functionName: DirectFBVid_CtxGetPixelFormat
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 DirectFBVid_CtxGetPixelFormat(DirectFBVidCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - DirectFBVidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 330
    functionName: DirectFBVid_CtxIsHwMemory
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool DirectFBVid_CtxIsHwMemory(DirectFBVidCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DirectFBVidCtx*::primary::Flip
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - DirectFBVidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 337
    functionDepth: 0
    functionLinenumber: 337
    functionLinenumberEnd: 340
    functionName: DirectFBVid_CtxPrimaryFlip
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached:
    - DirectFBVidCtx*::primary::Flip
    linkageType: ''
    returnType: u32
    signature: u32 DirectFBVid_CtxPrimaryFlip(DirectFBVidCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - DirectFBVidCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 347
    functionDepth: 0
    functionLinenumber: 347
    functionLinenumberEnd: 350
    functionName: DirectFBVid_CtxSetIsInit
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DirectFBVid_CtxSetIsInit(DirectFBVidCtx *ctx, Bool val)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - ctx
    - flip_mode
    argTypes:
    - DirectFBVidCtx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 357
    functionDepth: 0
    functionLinenumber: 357
    functionLinenumberEnd: 374
    functionName: DirectFBVid_CtxSetFlipMode
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DirectFBVid_CtxSetFlipMode(DirectFBVidCtx *ctx, u32 flip_mode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: DirectFBVidCtx*::primary::GetAccelerationMask
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:384,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - DirectFBVidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 381
    functionDepth: 0
    functionLinenumber: 381
    functionLinenumberEnd: 390
    functionName: DirectFBVid_CtxPrimaryProcessGetAccelerationMask
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached:
    - DirectFBVidCtx*::primary::GetAccelerationMask
    linkageType: ''
    returnType: void
    signature: void DirectFBVid_CtxPrimaryProcessGetAccelerationMask(DirectFBVidCtx
      *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DirectFBVidCtx*::primary::Release
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:403,1
    - Dst: DirectFBVidCtx*::events::Release
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:404,1
    - Dst: DirectFBVidCtx*::dfb::Release
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:405,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - DirectFBVidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 397
    functionDepth: 0
    functionLinenumber: 397
    functionLinenumberEnd: 410
    functionName: DirectFBVid_ShutdownWrapper
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached:
    - DirectFBVidCtx*::primary::Release
    - DirectFBVidCtx*::dfb::Release
    - DirectFBVidCtx*::events::Release
    linkageType: ''
    returnType: u32
    signature: u32 DirectFBVid_ShutdownWrapper(DirectFBVidCtx *ctx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:426,1
    - Dst: DirectFBVid_TranslatePixelFormatFromGPAC
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:431,1
    - Dst: DirectFBVidCtx*::primary::SetBlittingFlags
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:439,1
    - Dst: DirectFBVidCtx*::primary::SetBlittingFlags
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:442,1
    - Dst: DirectFBVidCtx*::dfb::CreateSurface
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:446,1
    - Dst: DirectFBVidCtx*::primary::Blit
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:460,1
    - Dst: DirectFBVidCtx*::primary::StretchBlit
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:467,1
    - Dst: IDirectFBSurface*::Release
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:470,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 37
    argCount: 15
    argNames:
    - ctx
    - video_src_width
    - video_src_height
    - video_src_pixel_format
    - video_src_buffer
    - video_src_pitch_y
    - src_wnd_x
    - src_wnd_y
    - src_wnd_w
    - src_wnd_h
    - dst_wnd_x
    - dst_wnd_y
    - dst_wnd_w
    - dst_wnd_h
    - overlay_type
    argTypes:
    - DirectFBVidCtx*
    - u32
    - u32
    - u32
    - char*
    - s32
    - u32
    - u32
    - u32
    - u32
    - u32
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 417
    functionDepth: 1
    functionLinenumber: 417
    functionLinenumberEnd: 473
    functionName: DirectFBVid_BlitWrapper
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached:
    - DirectFBVidCtx*::primary::SetBlittingFlags
    - IDirectFBSurface*::Release
    - memset
    - DirectFBVid_TranslatePixelFormatFromGPAC
    - DirectFBVidCtx*::primary::Blit
    - DirectFBVidCtx*::dfb::CreateSurface
    - DirectFBVidCtx*::primary::StretchBlit
    linkageType: ''
    returnType: u32
    signature: u32 DirectFBVid_BlitWrapper(DirectFBVidCtx *ctx, u32 video_src_width,
      u32 video_src_height, u32 video_src_pixel_format, char *video_src_buffer, s32
      video_src_pitch_y, u32 src_wnd_x, u32 src_wnd_y, u32 src_wnd_w, u32 src_wnd_h,
      u32 dst_wnd_x, u32 dst_wnd_y, u32 dst_wnd_w, u32 dst_wnd_h, u32 overlay_type)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: DirectFBVidCtx*::events::GetEvent
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:486,1
    - Dst: DFB_EVENT
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:486,1
    - Dst: directfb_translate_key
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:491,1
    - Dst: DirectFBVidCtx*::mouse::GetXY
      Src: /src/gpac/modules/directfb_out/directfb_wrapper.c:514,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 7
    argNames:
    - ctx
    - type
    - flags
    - key_code
    - x
    - y
    - button
    argTypes:
    - DirectFBVidCtx*
    - u8*
    - u32*
    - u32*
    - s32*
    - s32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 482
    functionDepth: 1
    functionLinenumber: 482
    functionLinenumberEnd: 523
    functionName: DirectFBVid_ProcessMessageQueueWrapper
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 0
    functionsReached:
    - DFB_EVENT
    - DirectFBVidCtx*::mouse::GetXY
    - directfb_translate_key
    - DirectFBVidCtx*::events::GetEvent
    linkageType: ''
    returnType: u32
    signature: u32 DirectFBVid_ProcessMessageQueueWrapper(DirectFBVidCtx *ctx, u8
      *type, u32 *flags, u32 *key_code, s32 *x, s32 *y, u32 *button)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - dfbpf
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 547
      start: 531
    functionDepth: 0
    functionLinenumber: 531
    functionLinenumberEnd: 547
    functionName: DirectFBVid_TranslatePixelFormatToGPAC
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 DirectFBVid_TranslatePixelFormatToGPAC(u32 dfbpf)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 1
    argNames:
    - gpacpf
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 553
    functionDepth: 0
    functionLinenumber: 553
    functionLinenumberEnd: 579
    functionName: DirectFBVid_TranslatePixelFormatFromGPAC
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 DirectFBVid_TranslatePixelFormatFromGPAC(u32 gpacpf)
  - BBCount: 87
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 82
    EdgeCount: 82
    ICount: 268
    argCount: 3
    argNames:
    - DirectFBkey
    - flags
    - key_code
    argTypes:
    - DFBInputDeviceKeyIdentifier
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 881
      start: 586
    functionDepth: 0
    functionLinenumber: 586
    functionLinenumberEnd: 881
    functionName: directfb_translate_key
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_wrapper.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void directfb_translate_key(DFBInputDeviceKeyIdentifier DirectFBkey,
      u32 *flags, u32 *key_code)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 34
    functionName: DirectFBVID
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_out.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DirectFBVID()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: DirectFBVID
      Src: /src/gpac/modules/directfb_out/directfb_out.c:43,1
    - Dst: DirectFBVid_CtxSetIsInit
      Src: /src/gpac/modules/directfb_out/directfb_out.c:44,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/directfb_out/directfb_out.c:47,1
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/directfb_out/directfb_out.c:49,1
    - Dst: DirectFBVid_InitAndCreateSurface
      Src: /src/gpac/modules/directfb_out/directfb_out.c:50,1
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/directfb_out/directfb_out.c:54,1
    - Dst: strcmp
      Src: /src/gpac/modules/directfb_out/directfb_out.c:55,1
    - Dst: strcmp
      Src: /src/gpac/modules/directfb_out/directfb_out.c:56,1
    - Dst: strcmp
      Src: /src/gpac/modules/directfb_out/directfb_out.c:57,1
    - Dst: strcmp
      Src: /src/gpac/modules/directfb_out/directfb_out.c:58,1
    - Dst: DirectFBVid_CtxSetFlipMode
      Src: /src/gpac/modules/directfb_out/directfb_out.c:60,1
    - Dst: DirectFBVid_CtxSetIsInit
      Src: /src/gpac/modules/directfb_out/directfb_out.c:63,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/directfb_out/directfb_out.c:64,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 4
    argNames:
    - driv
    - os_handle
    - os_display
    - init_flags
    argTypes:
    - GF_VideoOutput*
    - void*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 68
    functionName: DirectFBVid_Setup
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_out.c
    functionUses: 0
    functionsReached:
    - DirectFBVid_InitAndCreateSurface
    - DirectFBVid_CtxSetFlipMode
    - GF_LOG
    - gf_module_get_key
    - DirectFBVid_CtxSetIsInit
    - strcmp
    - DirectFBVID
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DirectFBVid_Setup(GF_VideoOutput *driv, void *os_handle, void
      *os_display, u32 init_flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DirectFBVID
      Src: /src/gpac/modules/directfb_out/directfb_out.c:78,1
    - Dst: DirectFBVid_ShutdownWrapper
      Src: /src/gpac/modules/directfb_out/directfb_out.c:79,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/directfb_out/directfb_out.c:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - driv
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 83
    functionName: DirectFBVid_Shutdown
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_out.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - DirectFBVid_ShutdownWrapper
    - DirectFBVID
    linkageType: ''
    returnType: void
    signature: void DirectFBVid_Shutdown(GF_VideoOutput *driv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DirectFBVID
      Src: /src/gpac/modules/directfb_out/directfb_out.c:92,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/directfb_out/directfb_out.c:93,1
    - Dst: DirectFBVid_CtxPrimaryFlip
      Src: /src/gpac/modules/directfb_out/directfb_out.c:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - driv
    - dest
    argTypes:
    - GF_VideoOutput*
    - GF_Window*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 95
    functionName: DirectFBVid_Flush
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_out.c
    functionUses: 0
    functionsReached:
    - DirectFBVid_CtxPrimaryFlip
    - GF_LOG
    - DirectFBVID
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DirectFBVid_Flush(GF_VideoOutput *driv, GF_Window *dest)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DirectFBVID
      Src: /src/gpac/modules/directfb_out/directfb_out.c:104,1
    - Dst: DirectFBVid_CtxGetWidth
      Src: /src/gpac/modules/directfb_out/directfb_out.c:106,1
    - Dst: DirectFBVid_CtxGetHeight
      Src: /src/gpac/modules/directfb_out/directfb_out.c:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - driv
    - bFullScreenOn
    - screen_width
    - screen_height
    argTypes:
    - GF_VideoOutput*
    - u32
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 110
    functionName: DirectFBVid_SetFullScreen
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_out.c
    functionUses: 0
    functionsReached:
    - DirectFBVid_CtxGetHeight
    - DirectFBVID
    - DirectFBVid_CtxGetWidth
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DirectFBVid_SetFullScreen(GF_VideoOutput *driv, u32 bFullScreenOn,
      u32 *screen_width, u32 *screen_height)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/modules/directfb_out/directfb_out.c:120,1
    - Dst: DirectFBVid_ProcessMessageQueueWrapper
      Src: /src/gpac/modules/directfb_out/directfb_out.c:121,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/directfb_out/directfb_out.c:123,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - driv
    argTypes:
    - DirectFBVidCtx*
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 117
    functionDepth: 2
    functionLinenumber: 117
    functionLinenumberEnd: 128
    functionName: DirectFBVid_ProcessMessageQueue
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_out.c
    functionUses: 0
    functionsReached:
    - memset
    - DirectFBVid_ProcessMessageQueueWrapper
    - GF_VideoOutput*::on_event
    linkageType: ''
    returnType: Bool
    signature: Bool DirectFBVid_ProcessMessageQueue(DirectFBVidCtx *ctx, GF_VideoOutput
      *driv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: DirectFBVID
      Src: /src/gpac/modules/directfb_out/directfb_out.c:137,1
    - Dst: DirectFBVid_ProcessMessageQueue
      Src: /src/gpac/modules/directfb_out/directfb_out.c:140,1
    - Dst: DirectFBVid_CtxGetWidth
      Src: /src/gpac/modules/directfb_out/directfb_out.c:146,1
    - Dst: DirectFBVid_CtxGetHeight
      Src: /src/gpac/modules/directfb_out/directfb_out.c:146,1
    - Dst: DirectFBVid_CtxGetWidth
      Src: /src/gpac/modules/directfb_out/directfb_out.c:149,1
    - Dst: DirectFBVid_CtxGetHeight
      Src: /src/gpac/modules/directfb_out/directfb_out.c:150,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/directfb_out/directfb_out.c:151,1
    - Dst: DirectFBVid_CtxGetWidth
      Src: /src/gpac/modules/directfb_out/directfb_out.c:158,1
    - Dst: DirectFBVid_CtxGetHeight
      Src: /src/gpac/modules/directfb_out/directfb_out.c:158,1
    - Dst: DirectFBVid_CtxGetWidth
      Src: /src/gpac/modules/directfb_out/directfb_out.c:161,1
    - Dst: DirectFBVid_CtxGetHeight
      Src: /src/gpac/modules/directfb_out/directfb_out.c:162,1
    - Dst: GF_VideoOutput*::on_event
      Src: /src/gpac/modules/directfb_out/directfb_out.c:163,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 2
    argNames:
    - driv
    - evt
    argTypes:
    - GF_VideoOutput*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 135
    functionDepth: 3
    functionLinenumber: 135
    functionLinenumberEnd: 169
    functionName: DirectFBVid_ProcessEvent
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_out.c
    functionUses: 0
    functionsReached:
    - DirectFBVid_CtxGetHeight
    - GF_VideoOutput*::on_event
    - DirectFBVID
    - DirectFBVid_CtxGetWidth
    - DirectFBVid_ProcessMessageQueue
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DirectFBVid_ProcessEvent(GF_VideoOutput *driv, GF_Event *evt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: DirectFBVID
      Src: /src/gpac/modules/directfb_out/directfb_out.c:181,1
    - Dst: DirectFBVid_CtxGetPrimary
      Src: /src/gpac/modules/directfb_out/directfb_out.c:182,1
    - Dst: DirectFBVid_CtxPrimaryLock
      Src: /src/gpac/modules/directfb_out/directfb_out.c:187,1
    - Dst: memset
      Src: /src/gpac/modules/directfb_out/directfb_out.c:191,1
    - Dst: DirectFBVid_CtxGetWidth
      Src: /src/gpac/modules/directfb_out/directfb_out.c:192,1
    - Dst: DirectFBVid_CtxGetHeight
      Src: /src/gpac/modules/directfb_out/directfb_out.c:193,1
    - Dst: DirectFBVid_CtxGetPixelFormat
      Src: /src/gpac/modules/directfb_out/directfb_out.c:197,1
    - Dst: DirectFBVid_CtxIsHwMemory
      Src: /src/gpac/modules/directfb_out/directfb_out.c:198,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/directfb_out/directfb_out.c:200,1
    - Dst: DirectFBVid_CtxPrimaryUnlock
      Src: /src/gpac/modules/directfb_out/directfb_out.c:203,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/directfb_out/directfb_out.c:204,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 3
    argNames:
    - driv
    - video_info
    - do_lock
    argTypes:
    - GF_VideoOutput*
    - GF_VideoSurface*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 208
    functionName: DirectFBVid_LockBackBuffer
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_out.c
    functionUses: 0
    functionsReached:
    - DirectFBVid_CtxPrimaryLock
    - DirectFBVid_CtxGetPixelFormat
    - DirectFBVid_CtxGetHeight
    - DirectFBVid_CtxGetPrimary
    - DirectFBVid_CtxIsHwMemory
    - GF_LOG
    - memset
    - DirectFBVID
    - DirectFBVid_CtxGetWidth
    - DirectFBVid_CtxPrimaryUnlock
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DirectFBVid_LockBackBuffer(GF_VideoOutput *driv, GF_VideoSurface
      *video_info, u32 do_lock)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DirectFBVID
      Src: /src/gpac/modules/directfb_out/directfb_out.c:218,1
    - Dst: DirectFBVid_BlitWrapper
      Src: /src/gpac/modules/directfb_out/directfb_out.c:220,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/directfb_out/directfb_out.c:222,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/modules/directfb_out/directfb_out.c:222,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/directfb_out/directfb_out.c:226,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - driv
    - video_src
    - src_wnd
    - dst_wnd
    - overlay_type
    argTypes:
    - GF_VideoOutput*
    - GF_VideoSurface*
    - GF_Window*
    - GF_Window*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 215
    functionDepth: 2
    functionLinenumber: 215
    functionLinenumberEnd: 229
    functionName: DirectFBVid_Blit
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_out.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - DirectFBVid_BlitWrapper
    - DirectFBVID
    - gf_4cc_to_str
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DirectFBVid_Blit(GF_VideoOutput *driv, GF_VideoSurface *video_src,
      GF_Window *src_wnd, GF_Window *dst_wnd, u32 overlay_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/directfb_out/directfb_out.c:251,1
    - Dst: memset
      Src: /src/gpac/modules/directfb_out/directfb_out.c:252,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/directfb_out/directfb_out.c:253,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/directfb_out/directfb_out.c:255,1
    - Dst: DirectFBVid_GetCtxSizeOf
      Src: /src/gpac/modules/directfb_out/directfb_out.c:255,1
    - Dst: memset
      Src: /src/gpac/modules/directfb_out/directfb_out.c:256,1
    - Dst: DirectFBVid_GetCtxSizeOf
      Src: /src/gpac/modules/directfb_out/directfb_out.c:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 246
    functionDepth: 1
    functionLinenumber: 246
    functionLinenumberEnd: 272
    functionName: DirectFBNewVideo
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_out.c
    functionUses: 0
    functionsReached:
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - DirectFBVid_GetCtxSizeOf
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void *DirectFBNewVideo()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DirectFBVID
      Src: /src/gpac/modules/directfb_out/directfb_out.c:282,1
    - Dst: gf_free
      Src: /src/gpac/modules/directfb_out/directfb_out.c:283,1
    - Dst: gf_free
      Src: /src/gpac/modules/directfb_out/directfb_out.c:284,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 285
    functionName: DirectFBDeleteVideo
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_out.c
    functionUses: 0
    functionsReached:
    - gf_free
    - DirectFBVID
    linkageType: ''
    returnType: void
    signature: void DirectFBDeleteVideo(void *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 289
    functionDepth: 0
    functionLinenumber: 289
    functionLinenumberEnd: 297
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_out.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DirectFBNewVideo
      Src: /src/gpac/modules/directfb_out/directfb_out.c:304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 301
    functionDepth: 2
    functionLinenumber: 301
    functionLinenumberEnd: 306
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_out.c
    functionUses: 0
    functionsReached:
    - DirectFBNewVideo
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DirectFBDeleteVideo
      Src: /src/gpac/modules/directfb_out/directfb_out.c:315,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 310
    functionDepth: 2
    functionLinenumber: 310
    functionLinenumberEnd: 318
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/directfb_out/directfb_out.c
    functionUses: 0
    functionsReached:
    - DirectFBDeleteVideo
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 116
    functionName: WAVCTX
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WAVCTX()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: WAVCTX
      Src: /src/gpac/modules/wav_out/wav_out.c:119,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - dr
    - os_handle
    - num_buffers
    - total_duration
    argTypes:
    - GF_AudioOutput*
    - void*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 128
    functionName: WAV_Setup
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached:
    - WAVCTX
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WAV_Setup(GF_AudioOutput *dr, void *os_handle, u32 num_buffers,
      u32 total_duration)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: WAVCTX
      Src: /src/gpac/modules/wav_out/wav_out.c:133,1
    - Dst: SetEvent
      Src: /src/gpac/modules/wav_out/wav_out.c:137,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 5
    argNames:
    - hwo
    - uMsg
    - dwInstance
    - dwParam1
    - dwParam2
    argTypes:
    - HWAVEOUT
    - UINT
    - DWORD_PTR
    - DWORD_PTR
    - DWORD_PTR
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 138
    functionName: WaveProc
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached:
    - WAVCTX
    - SetEvent
    linkageType: ''
    returnType: void
    signature: void WaveProc(HWAVEOUT hwo, UINT uMsg, DWORD_PTR dwInstance, DWORD_PTR
      dwParam1, DWORD_PTR dwParam2)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: WAVCTX
      Src: /src/gpac/modules/wav_out/wav_out.c:143,1
    - Dst: SetEvent
      Src: /src/gpac/modules/wav_out/wav_out.c:150,1
    - Dst: waveOutReset
      Src: /src/gpac/modules/wav_out/wav_out.c:151,1
    - Dst: waveOutClose
      Src: /src/gpac/modules/wav_out/wav_out.c:152,1
    - Dst: gf_free
      Src: /src/gpac/modules/wav_out/wav_out.c:153,1
    - Dst: CloseHandle
      Src: /src/gpac/modules/wav_out/wav_out.c:155,1
    - Dst: SetEvent
      Src: /src/gpac/modules/wav_out/wav_out.c:160,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/wav_out/wav_out.c:175,1
    - Dst: waveOutClose
      Src: /src/gpac/modules/wav_out/wav_out.c:179,1
    - Dst: gf_free
      Src: /src/gpac/modules/wav_out/wav_out.c:184,1
    - Dst: CloseHandle
      Src: /src/gpac/modules/wav_out/wav_out.c:186,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 42
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 190
    functionName: close_waveform
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached:
    - gf_free
    - WAVCTX
    - waveOutReset
    - CloseHandle
    - gf_sleep
    - waveOutClose
    - SetEvent
    linkageType: ''
    returnType: void
    signature: void close_waveform(GF_AudioOutput *dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: close_waveform
      Src: /src/gpac/modules/wav_out/wav_out.c:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 192
    functionDepth: 2
    functionLinenumber: 192
    functionLinenumberEnd: 195
    functionName: WAV_Shutdown
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached:
    - close_waveform
    linkageType: ''
    returnType: void
    signature: void WAV_Shutdown(GF_AudioOutput *dr)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: WAVCTX
      Src: /src/gpac/modules/wav_out/wav_out.c:208,1
    - Dst: close_waveform
      Src: /src/gpac/modules/wav_out/wav_out.c:213,1
    - Dst: memset
      Src: /src/gpac/modules/wav_out/wav_out.c:232,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/modules/wav_out/wav_out.c:236,1
    - Dst: memset
      Src: /src/gpac/modules/wav_out/wav_out.c:244,1
    - Dst: waveOutOpen
      Src: /src/gpac/modules/wav_out/wav_out.c:267,1
    - Dst: CreateEvent
      Src: /src/gpac/modules/wav_out/wav_out.c:289,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/wav_out/wav_out.c:294,1
    - Dst: memset
      Src: /src/gpac/modules/wav_out/wav_out.c:295,1
    - Dst: memset
      Src: /src/gpac/modules/wav_out/wav_out.c:299,1
    - Dst: waveOutPrepareHeader
      Src: /src/gpac/modules/wav_out/wav_out.c:303,1
    - Dst: waveOutWrite
      Src: /src/gpac/modules/wav_out/wav_out.c:304,1
    - Dst: Sleep
      Src: /src/gpac/modules/wav_out/wav_out.c:305,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 91
    argCount: 5
    argNames:
    - dr
    - SampleRate
    - NbChannels
    - audioFormat
    - channel_cfg
    argTypes:
    - GF_AudioOutput*
    - u32*
    - u32*
    - u32*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 199
    functionDepth: 2
    functionLinenumber: 199
    functionLinenumberEnd: 311
    functionName: WAV_Configure
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached:
    - WAVCTX
    - waveOutPrepareHeader
    - Sleep
    - waveOutWrite
    - memset
    - close_waveform
    - waveOutOpen
    - gf_malloc
    - gf_audio_fmt_bit_depth
    - CreateEvent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WAV_Configure(GF_AudioOutput *dr, u32 *SampleRate, u32 *NbChannels,
      u32 *audioFormat, u64 channel_cfg)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: WAVCTX
      Src: /src/gpac/modules/wav_out/wav_out.c:317,1
    - Dst: WaitForSingleObject
      Src: /src/gpac/modules/wav_out/wav_out.c:321,1
    - Dst: waveOutUnprepareHeader
      Src: /src/gpac/modules/wav_out/wav_out.c:330,1
    - Dst: GF_AudioOutput*::FillBuffer
      Src: /src/gpac/modules/wav_out/wav_out.c:336,1
    - Dst: waveOutPrepareHeader
      Src: /src/gpac/modules/wav_out/wav_out.c:338,1
    - Dst: waveOutWrite
      Src: /src/gpac/modules/wav_out/wav_out.c:340,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 313
    functionDepth: 1
    functionLinenumber: 313
    functionLinenumberEnd: 343
    functionName: WAV_WriteAudio
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached:
    - WAVCTX
    - waveOutPrepareHeader
    - WaitForSingleObject
    - waveOutUnprepareHeader
    - GF_AudioOutput*::FillBuffer
    - waveOutWrite
    linkageType: ''
    returnType: void
    signature: void WAV_WriteAudio(GF_AudioOutput *dr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: WAVCTX
      Src: /src/gpac/modules/wav_out/wav_out.c:349,1
    - Dst: waveOutPause
      Src: /src/gpac/modules/wav_out/wav_out.c:353,1
    - Dst: memset
      Src: /src/gpac/modules/wav_out/wav_out.c:358,1
    - Dst: waveOutRestart
      Src: /src/gpac/modules/wav_out/wav_out.c:361,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - dr
    - PlayType
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 345
    functionDepth: 1
    functionLinenumber: 345
    functionLinenumberEnd: 365
    functionName: WAV_Play
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached:
    - waveOutRestart
    - WAVCTX
    - waveOutPause
    - memset
    linkageType: ''
    returnType: void
    signature: void WAV_Play(GF_AudioOutput *dr, u32 PlayType)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: waveOutSetVolume
      Src: /src/gpac/modules/wav_out/wav_out.c:375,1
    - Dst: MAKELONG
      Src: /src/gpac/modules/wav_out/wav_out.c:375,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - WAVContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 368
    functionDepth: 0
    functionLinenumber: 368
    functionLinenumberEnd: 376
    functionName: set_vol_pan
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached:
    - waveOutSetVolume
    - MAKELONG
    linkageType: ''
    returnType: void
    signature: void set_vol_pan(WAVContext *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: WAVCTX
      Src: /src/gpac/modules/wav_out/wav_out.c:380,1
    - Dst: set_vol_pan
      Src: /src/gpac/modules/wav_out/wav_out.c:383,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - dr
    - Volume
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 378
    functionDepth: 1
    functionLinenumber: 378
    functionLinenumberEnd: 384
    functionName: WAV_SetVolume
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached:
    - WAVCTX
    - set_vol_pan
    linkageType: ''
    returnType: void
    signature: void WAV_SetVolume(GF_AudioOutput *dr, u32 Volume)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: WAVCTX
      Src: /src/gpac/modules/wav_out/wav_out.c:388,1
    - Dst: set_vol_pan
      Src: /src/gpac/modules/wav_out/wav_out.c:391,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - dr
    - Pan
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 386
    functionDepth: 1
    functionLinenumber: 386
    functionLinenumberEnd: 392
    functionName: WAV_SetPan
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached:
    - WAVCTX
    - set_vol_pan
    linkageType: ''
    returnType: void
    signature: void WAV_SetPan(GF_AudioOutput *dr, u32 Pan)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - dr
    - Volume
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 396
    functionDepth: 0
    functionLinenumber: 396
    functionLinenumberEnd: 396
    functionName: WAV_SetVolume
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void WAV_SetVolume(GF_AudioOutput *dr, u32 Volume)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - dr
    - Pan
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 397
    functionDepth: 0
    functionLinenumber: 397
    functionLinenumberEnd: 397
    functionName: WAV_SetPan
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void WAV_SetPan(GF_AudioOutput *dr, u32 Pan)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 4
    argNames:
    - dr
    - desired_samplerate
    - NbChannels
    - nbBitsPerSample
    argTypes:
    - GF_AudioOutput*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 402
    functionDepth: 0
    functionLinenumber: 402
    functionLinenumberEnd: 430
    functionName: WAV_QueryOutputSampleRate
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WAV_QueryOutputSampleRate(GF_AudioOutput *dr, u32 *desired_samplerate,
      u32 *NbChannels, u32 *nbBitsPerSample)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: WAVCTX
      Src: /src/gpac/modules/wav_out/wav_out.c:434,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 432
    functionDepth: 1
    functionLinenumber: 432
    functionLinenumberEnd: 436
    functionName: WAV_GetAudioDelay
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached:
    - WAVCTX
    linkageType: ''
    returnType: u32
    signature: u32 WAV_GetAudioDelay(GF_AudioOutput *dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: WAVCTX
      Src: /src/gpac/modules/wav_out/wav_out.c:440,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 442
      start: 438
    functionDepth: 1
    functionLinenumber: 438
    functionLinenumberEnd: 442
    functionName: WAV_GetTotalBufferTime
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached:
    - WAVCTX
    linkageType: ''
    returnType: u32
    signature: u32 WAV_GetTotalBufferTime(GF_AudioOutput *dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/wav_out/wav_out.c:448,1
    - Dst: memset
      Src: /src/gpac/modules/wav_out/wav_out.c:449,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/wav_out/wav_out.c:453,1
    - Dst: memset
      Src: /src/gpac/modules/wav_out/wav_out.c:454,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/wav_out/wav_out.c:455,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 445
    functionDepth: 1
    functionLinenumber: 445
    functionLinenumberEnd: 472
    functionName: NewWAVRender
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached:
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void *NewWAVRender()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/wav_out/wav_out.c:478,1
    - Dst: gf_free
      Src: /src/gpac/modules/wav_out/wav_out.c:479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 474
    functionDepth: 0
    functionLinenumber: 474
    functionLinenumberEnd: 480
    functionName: DeleteWAVRender
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DeleteWAVRender(void *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 482
    functionDepth: 0
    functionLinenumber: 482
    functionLinenumberEnd: 490
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NewWAVRender
      Src: /src/gpac/modules/wav_out/wav_out.c:496,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 492
    functionDepth: 2
    functionLinenumber: 492
    functionLinenumberEnd: 498
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached:
    - NewWAVRender
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DeleteWAVRender
      Src: /src/gpac/modules/wav_out/wav_out.c:505,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 500
    functionDepth: 1
    functionLinenumber: 500
    functionLinenumberEnd: 508
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/wav_out/wav_out.c
    functionUses: 0
    functionsReached:
    - DeleteWAVRender
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: InitChannelStatus
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - pData
    - ctx
    argTypes:
    - DtMxData*
    - DtCbkCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 46
    functionName: OnNewFrameAudio
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video.cpp
    functionUses: 0
    functionsReached:
    - InitChannelStatus
    linkageType: ''
    returnType: void
    signature: void OnNewFrameAudio(DtMxData *pData, const DtCbkCtx *ctx)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:50,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:57,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:63,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:68,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:75,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:79,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:82,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:84,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:87,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:97,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:99,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:101,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:103,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:105,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:109,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:110,1
    - Dst: _mm_set1_epi16
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:137,1
    - Dst: _mm_set1_epi16
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:138,1
    - Dst: _mm_storeu_si128
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:141,1
    - Dst: _mm_max_epi16
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:141,1
    - Dst: _mm_min_epi16
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:141,1
    - Dst: _mm_loadu_si128
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:141,1
    - Dst: _mm_storeu_si128
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:146,1
    - Dst: _mm_max_epi16
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:146,1
    - Dst: _mm_min_epi16
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:146,1
    - Dst: _mm_loadu_si128
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:146,1
    - Dst: memcpy
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:149,1
    - Dst: _mm_storeu_si128
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:159,1
    - Dst: _mm_max_epi16
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:159,1
    - Dst: _mm_min_epi16
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:159,1
    - Dst: _mm_loadu_si128
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:159,1
    - Dst: memcpy
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:161,1
    - Dst: memcpy
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:167,1
    - Dst: memcpy
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:171,1
    - Dst: memcpy
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:172,1
    - Dst: memcpy
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:177,1
    - Dst: memcpy
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:178,1
    - Dst: memcpy
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:248,1
    - Dst: memcpy
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:249,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:253,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:253,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:254,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 137
    argCount: 2
    argNames:
    - pData
    - cbck
    argTypes:
    - DtMxData*
    - DtCbkCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 256
    functionName: OnNewFrameVideo
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video.cpp
    functionUses: 0
    functionsReached:
    - gf_filter_pid_drop_packet
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_sys_clock_high_res
    - memcpy
    - _mm_storeu_si128
    - _mm_min_epi16
    - _mm_loadu_si128
    - GF_FilterFrameInterface*::get_plane
    - _mm_max_epi16
    - gf_filter_pid_is_eos
    - gf_filter_pck_get_frame_interface
    - _mm_set1_epi16
    - gf_filter_pid_get_packet
    linkageType: ''
    returnType: void
    signature: void OnNewFrameVideo(DtMxData *pData, const DtCbkCtx  *cbck)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: OnNewFrameVideo
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:261,1
    - Dst: OnNewFrameAudio
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:263,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - pData
    - pOpaque
    argTypes:
    - DtMxData*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 258
    functionDepth: 2
    functionLinenumber: 258
    functionLinenumberEnd: 264
    functionName: OnNewFrame
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video.cpp
    functionUses: 0
    functionsReached:
    - OnNewFrameVideo
    - OnNewFrameAudio
    linkageType: ''
    returnType: void
    signature: void OnNewFrame(DtMxData *pData, void *pOpaque)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:268,1
    - Dst: DtMxProcess*::Stop
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:272,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:274,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:274,1
    - Dst: DtMxProcess*::Reset
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:276,1
    - Dst: GF_DTOutCtx*::dt_device::Detach
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DTOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 266
    functionDepth: 1
    functionLinenumber: 266
    functionLinenumberEnd: 279
    functionName: dtout_disconnect
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video.cpp
    functionUses: 0
    functionsReached:
    - GF_LOG
    - DtMxProcess*::Stop
    - DtapiResult2Str
    - DtMxProcess*::Reset
    - GF_DTOutCtx*::dt_device::Detach
    linkageType: ''
    returnType: void
    signature: void dtout_disconnect(GF_DTOutCtx *ctx)
  - BBCount: 92
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:289,1
    - Dst: dtout_disconnect
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:301,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:306,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:327,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:334,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:336,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:338,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:339,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:352,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:354,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:356,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:358,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:360,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:394,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:401,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:415,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:419,1
    - Dst: DtMxProcess*::Stop
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:423,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:425,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:425,1
    - Dst: DtMxProcess*::Reset
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:428,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:471,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:515,1
    - Dst: DtDevice*::SetIoConfig
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:529,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:531,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:531,1
    - Dst: DtapiVidStd2IoStd
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:536,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:538,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:538,1
    - Dst: DtDevice*::SetIoConfig
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:542,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:544,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:544,1
    - Dst: DtMxPort::AddPhysicalPort
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:547,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:549,1
    - Dst: DtDevice*::SetIoConfig
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:558,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:560,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:560,1
    - Dst: DtapiVidStd2IoStd
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:566,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:568,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:568,1
    - Dst: DtDevice*::SetIoConfig
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:574,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:576,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:576,1
    - Dst: DtMxPort::AddPhysicalPort
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:582,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:584,1
    - Dst: std::vector::push_back
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:609,1
    - Dst: ::DtapiGetVidStdInfo
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:617,1
    - Dst: std::vector::push_back
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:632,1
    - Dst: DtDevice*::SetIoConfig
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:634,1
    - Dst: std::vector::data
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:634,1
    - Dst: std::vector::size
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:634,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:636,1
    - Dst: GF_DTOutCtx*::dt_matrix::AttachRowToOutput
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:642,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:644,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:644,1
    - Dst: DtMxRowConfig::m_Audio::push_back
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:674,1
    - Dst: GF_DTOutCtx*::dt_matrix::SetRowConfig
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:678,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:680,1
    - Dst: GF_DTOutCtx*::dt_matrix::GetDefEndToEndDelay
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:689,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:690,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:691,1
    - Dst: GF_DTOutCtx*::dt_matrix::SetEndToEndDelay
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:693,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:695,1
    - Dst: GF_DTOutCtx*::dt_matrix::AddMatrixCbFunc
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:699,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:701,1
    - Dst: GF_DTOutCtx*::dt_matrix::AddMatrixCbFunc
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:704,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:706,1
    - Dst: GF_DTOutCtx*::dt_matrix::Start
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:714,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:716,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:716,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:719,1
    CyclomaticComplexity: 126
    EdgeCount: 126
    ICount: 365
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 282
    functionDepth: 2
    functionLinenumber: 282
    functionLinenumberEnd: 723
    functionName: dtout_configure_pid
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video.cpp
    functionUses: 0
    functionsReached:
    - ::DtapiGetVidStdInfo
    - std::vector::size
    - DtapiResult2Str
    - GF_FEVT_INIT
    - GF_DTOutCtx*::dt_matrix::AttachRowToOutput
    - DtMxPort::AddPhysicalPort
    - DtMxProcess*::Reset
    - gf_filter_get_udta
    - GF_DTOutCtx*::dt_matrix::SetRowConfig
    - DtMxRowConfig::m_Audio::push_back
    - GF_DTOutCtx*::dt_matrix::Start
    - GF_LOG
    - gf_filter_pid_negotiate_property
    - gf_filter_pid_init_play_event
    - DtapiVidStd2IoStd
    - GF_DTOutCtx*::dt_matrix::SetEndToEndDelay
    - DtMxProcess*::Stop
    - std::vector::data
    - gf_filter_pid_send_event
    - GF_DTOutCtx*::dt_matrix::GetDefEndToEndDelay
    - GF_DTOutCtx*::dt_matrix::AddMatrixCbFunc
    - gf_filter_pid_get_property
    - DtDevice*::SetIoConfig
    - gf_pixel_get_size_info
    - std::vector::push_back
    - dtout_disconnect
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dtout_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:727,1
    - Dst: DtDevice::DtDevice
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:730,1
    - Dst: DtMxProcess::DtMxProcess
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:731,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:733,1
    - Dst: GF_DTOutCtx*::dt_device::AttachToSlot
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:745,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:747,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:747,1
    - Dst: GF_DTOutCtx*::dt_device::AttachToType
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:754,1
    - Dst: GF_DTOutCtx*::dt_device::AttachToType
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:755,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:758,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:758,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 762
      start: 725
    functionDepth: 1
    functionLinenumber: 725
    functionLinenumberEnd: 762
    functionName: dtout_initialize
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video.cpp
    functionUses: 0
    functionsReached:
    - GF_DTOutCtx*::dt_device::AttachToSlot
    - GF_LOG
    - DtapiResult2Str
    - DtDevice::DtDevice
    - GF_DTOutCtx*::dt_device::AttachToType
    - DtMxProcess::DtMxProcess
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dtout_initialize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:766,1
    - Dst: dtout_disconnect
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:769,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 773
      start: 764
    functionDepth: 2
    functionLinenumber: 764
    functionLinenumberEnd: 773
    functionName: dtout_finalize
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video.cpp
    functionUses: 0
    functionsReached:
    - dtout_disconnect
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void dtout_finalize(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:779,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:782,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:783,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:788,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 790
      start: 777
    functionDepth: 1
    functionLinenumber: 777
    functionLinenumberEnd: 790
    functionName: dtout_process
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video.cpp
    functionUses: 0
    functionsReached:
    - gf_filter_ask_rt_reschedule
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dtout_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:76,1
    - Dst: dx_copy_pixels
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:80,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 5
    argNames:
    - dr
    - video_src
    - src_wnd
    - dst_wnd
    - overlay_type
    argTypes:
    - GF_VideoOutput*
    - GF_VideoSurface*
    - GF_Window*
    - GF_Window*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 83
    functionName: Dektec_Blit
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video_old.cpp
    functionUses: 0
    functionsReached:
    - memset
    - dx_copy_pixels
    - GF_LOG
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Dektec_Blit(GF_VideoOutput *dr, GF_VideoSurface *video_src,
      GF_Window *src_wnd, GF_Window *dst_wnd, u32 overlay_type)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:91,1
    - Dst: DtFrameBuffer*::Start
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:96,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:98,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:98,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:100,1
    - Dst: DtFrameBuffer*::WaitFrame
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:105,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:107,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:107,1
    - Dst: DtFrameBuffer*::WriteVideo
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:115,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:117,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:117,1
    - Dst: assert
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:121,1
    - Dst: DtFrameBuffer*::WriteVideo
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:123,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:125,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:125,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:130,1
    - Dst: DtFrameBuffer*::AncCommit
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:135,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:137,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:137,1
    - Dst: sprintf
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:145,1
    - Dst: fopen
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:146,1
    - Dst: fwrite
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:147,1
    - Dst: fclose
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:148,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 47
    argCount: 2
    argNames:
    - dr
    - dest
    argTypes:
    - GF_VideoOutput*
    - GF_Window*
    assertStmts:
    - condition: (DNUMFIELDS == 2)
      pos:
        line_end: 120
        line_start: 120
        source_file: /src/gpac/modules/dektec_out/dektec_video_old.cpp
    constantsTouched: []
    func_position:
      end: 151
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 151
    functionName: Dektec_Flush
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video_old.cpp
    functionUses: 0
    functionsReached:
    - DtFrameBuffer*::Start
    - fwrite
    - GF_LOG
    - assert
    - DtapiResult2Str
    - DtFrameBuffer*::WriteVideo
    - sprintf
    - fopen
    - DtFrameBuffer*::WaitFrame
    - fclose
    - DtFrameBuffer*::AncCommit
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Dektec_Flush(GF_VideoOutput *dr, GF_Window *dest)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:159,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - dr
    - vi
    - do_lock
    argTypes:
    - GF_VideoOutput*
    - GF_VideoSurface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 168
    functionName: Dektec_LockBackBuffer
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video_old.cpp
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Dektec_LockBackBuffer(GF_VideoOutput *dr, GF_VideoSurface *vi,
      Bool do_lock)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:172,1
    - Dst: DtFrameBuffer*::Start
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:175,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:177,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:177,1
    - Dst: DtFrameBuffer*::Detach
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:178,1
    - Dst: DtContext*::dvc::Detach
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:179,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 181
    functionName: Dektec_Shutdown
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video_old.cpp
    functionUses: 0
    functionsReached:
    - DtFrameBuffer*::Detach
    - DtFrameBuffer*::Start
    - GF_LOG
    - DtapiResult2Str
    - DtContext*::dvc::Detach
    linkageType: ''
    returnType: void
    signature: void Dektec_Shutdown(GF_VideoOutput *dr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:191,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:193,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - dr
    - evt
    argTypes:
    - GF_VideoOutput*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 201
    functionName: Dektec_ProcessEvent
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video_old.cpp
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Dektec_ProcessEvent(GF_VideoOutput *dr, GF_Event *evt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:206,1
    - Dst: gf_free
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:207,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:210,1
    - Dst: memset
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:212,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:213,1
    - Dst: memset
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:215,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - dr
    - w
    - h
    argTypes:
    - GF_VideoOutput*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 217
    functionName: Dektec_resize
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video_old.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Dektec_resize(GF_VideoOutput *dr, u32 w, u32 h)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:221,1
    - Dst: Dektec_resize
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:226,1
    - Dst: gf_module_get_int
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:228,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:229,1
    - Dst: DtDevice*::AttachToType
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:235,1
    - Dst: DtDevice*::AttachToType
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:236,1
    - Dst: DtDevice*::AttachToType
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:237,1
    - Dst: DtDevice*::AttachToSlot
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:238,1
    - Dst: DtDevice*::AttachToSerial
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:239,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:242,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:242,1
    - Dst: DtDevice*::SetIoConfig
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:246,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:248,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:248,1
    - Dst: DtFrameBuffer*::AttachToOutput
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:252,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:254,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:254,1
    - Dst: DtapiVidStd2IoStd
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:259,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:261,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:261,1
    - Dst: DtFrameBuffer*::SetIoConfig
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:265,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:267,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:267,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 42
    argCount: 4
    argNames:
    - dr
    - os_handle
    - os_display
    - init_flags
    argTypes:
    - GF_VideoOutput*
    - void*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 274
    functionName: Dektec_Setup
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video_old.cpp
    functionUses: 0
    functionsReached:
    - DtDevice*::AttachToSlot
    - DtDevice*::AttachToSerial
    - GF_LOG
    - DtapiVidStd2IoStd
    - DtapiResult2Str
    - DtFrameBuffer*::AttachToOutput
    - DtDevice*::AttachToType
    - DtDevice*::SetIoConfig
    - Dektec_resize
    - DtFrameBuffer*::SetIoConfig
    - gf_module_get_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Dektec_Setup(GF_VideoOutput *dr, void *os_handle, void *os_display,
      u32 init_flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:283,1
    - Dst: memset
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:284,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:285,1
    - Dst: DtDevice::DtDevice
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:287,1
    - Dst: DtFrameBuffer::DtFrameBuffer
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:288,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:290,1
    - Dst: gf_free
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:293,1
    - Dst: DtContext::DtContext
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:297,1
    - Dst: memset
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:298,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 281
    functionDepth: 1
    functionLinenumber: 281
    functionLinenumberEnd: 315
    functionName: NewDektecVideoOutput
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video_old.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - DtContext::DtContext
    - DtFrameBuffer::DtFrameBuffer
    - memset
    - DtDevice::DtDevice
    - GF_REGISTER_MODULE_INTERFACE
    - gf_malloc
    linkageType: ''
    returnType: GF_VideoOutput
    signature: GF_VideoOutput *NewDektecVideoOutput()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:321,1
    - Dst: gf_free
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:322,1
    - Dst: gf_free
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 327
    functionName: DeleteDektecVideoOutput
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video_old.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DeleteDektecVideoOutput(void *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 333
    functionDepth: 0
    functionLinenumber: 333
    functionLinenumberEnd: 341
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video_old.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NewDektecVideoOutput
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:347,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 344
    functionDepth: 2
    functionLinenumber: 344
    functionLinenumberEnd: 349
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video_old.cpp
    functionUses: 0
    functionsReached:
    - NewDektecVideoOutput
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DeleteDektecVideoOutput
      Src: /src/gpac/modules/dektec_out/dektec_video_old.cpp:357,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 352
    functionDepth: 1
    functionLinenumber: 352
    functionLinenumberEnd: 360
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video_old.cpp
    functionUses: 0
    functionsReached:
    - DeleteDektecVideoOutput
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 32
    functionName: OFFS
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video_decl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 34
    functionName: OFFS
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video_decl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionName: dtout_config_dummy
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video_decl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dtout_config_dummy(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: dtout_process_dummy
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video_decl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dtout_process_dummy(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/modules/dektec_out/dektec_video_decl.c:68,1
    - Dst: memset
      Src: /src/gpac/modules/dektec_out/dektec_video_decl.c:69,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/modules/dektec_out/dektec_video_decl.c:72,1
    - Dst: dtout_config_dummy
      Src: /src/gpac/modules/dektec_out/dektec_video_decl.c:117,1
    - Dst: dtout_process_dummy
      Src: /src/gpac/modules/dektec_out/dektec_video_decl.c:118,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 36
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 123
    functionName: dtout_register
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video_decl.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_opts_get_bool
    - dtout_config_dummy
    - dtout_process_dummy
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *dtout_register(GF_FilterSession *session)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/modules/ft_font/ft_font.c:100,1
    - Dst: stricmp
      Src: /src/gpac/modules/ft_font/ft_font.c:102,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - listOfFonts
    - currentBestFont
    - fontName
    argTypes:
    - char*[]
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 107
    functionName: isBestFontFor
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - stricmp
    linkageType: ''
    returnType: Bool
    signature: Bool isBestFontFor(const char * listOfFonts[], const char * currentBestFont,
      const char * fontName)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: isBestFontFor
      Src: /src/gpac/modules/ft_font/ft_font.c:110,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:112,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:116,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - listOfFonts
    - currentBestFont
    - fontName
    argTypes:
    - char*[]
    - char**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 118
    functionName: setBestFont
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - isBestFontFor
    - gf_free
    - gf_strdup
    linkageType: ''
    returnType: void
    signature: void setBestFont(const char * listOfFonts[], char ** currentBestFont,
      const char * fontName)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:128,1
    - Dst: FT_New_Face
      Src: /src/gpac/modules/ft_font/ft_font.c:130,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/ft_font/ft_font.c:140,1
    - Dst: strlen
      Src: /src/gpac/modules/ft_font/ft_font.c:140,1
    - Dst: strcpy
      Src: /src/gpac/modules/ft_font/ft_font.c:142,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:147,1
    - Dst: strupr
      Src: /src/gpac/modules/ft_font/ft_font.c:148,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:149,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:150,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:152,1
    - Dst: strcat
      Src: /src/gpac/modules/ft_font/ft_font.c:153,1
    - Dst: strcat
      Src: /src/gpac/modules/ft_font/ft_font.c:154,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:156,1
    - Dst: strcat
      Src: /src/gpac/modules/ft_font/ft_font.c:161,1
    - Dst: strcat
      Src: /src/gpac/modules/ft_font/ft_font.c:162,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/ft_font/ft_font.c:164,1
    - Dst: FT_Select_Charmap
      Src: /src/gpac/modules/ft_font/ft_font.c:169,1
    - Dst: FT_Get_Char_Index
      Src: /src/gpac/modules/ft_font/ft_font.c:170,1
    - Dst: FT_Get_Char_Index
      Src: /src/gpac/modules/ft_font/ft_font.c:171,1
    - Dst: FT_Get_Char_Index
      Src: /src/gpac/modules/ft_font/ft_font.c:172,1
    - Dst: FT_Get_Char_Index
      Src: /src/gpac/modules/ft_font/ft_font.c:173,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:174,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:181,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:181,1
    - Dst: FT_Select_Charmap
      Src: /src/gpac/modules/ft_font/ft_font.c:183,1
    - Dst: FT_Get_Char_Index
      Src: /src/gpac/modules/ft_font/ft_font.c:184,1
    - Dst: FT_Get_Char_Index
      Src: /src/gpac/modules/ft_font/ft_font.c:185,1
    - Dst: FT_Get_Char_Index
      Src: /src/gpac/modules/ft_font/ft_font.c:186,1
    - Dst: FT_Get_Char_Index
      Src: /src/gpac/modules/ft_font/ft_font.c:187,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:189,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:190,1
    - Dst: strcpy
      Src: /src/gpac/modules/ft_font/ft_font.c:194,1
    - Dst: strlwr
      Src: /src/gpac/modules/ft_font/ft_font.c:195,1
    - Dst: setBestFont
      Src: /src/gpac/modules/ft_font/ft_font.c:198,1
    - Dst: setBestFont
      Src: /src/gpac/modules/ft_font/ft_font.c:200,1
    - Dst: setBestFont
      Src: /src/gpac/modules/ft_font/ft_font.c:201,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:203,1
    - Dst: FT_Done_Face
      Src: /src/gpac/modules/ft_font/ft_font.c:206,1
    - Dst: FT_New_Face
      Src: /src/gpac/modules/ft_font/ft_font.c:210,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 82
    argCount: 4
    argNames:
    - cbck
    - file_name
    - file_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 120
    functionDepth: 2
    functionLinenumber: 120
    functionLinenumberEnd: 214
    functionName: ft_enum_fonts
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_free
    - gf_strdup
    - FT_New_Face
    - FT_Get_Char_Index
    - gf_opts_set_key
    - GF_LOG
    - strcpy
    - strlen
    - strstr
    - strlwr
    - FT_Done_Face
    - setBestFont
    - FT_Select_Charmap
    - gf_malloc
    - strupr
    linkageType: ''
    returnType: Bool
    signature: Bool ft_enum_fonts(void *cbck, char *file_name, char *file_path, GF_FileEnumInfo
      *file_info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:218,1
    - Dst: gf_enum_directory
      Src: /src/gpac/modules/ft_font/ft_font.c:219,1
    - Dst: gf_enum_directory
      Src: /src/gpac/modules/ft_font/ft_font.c:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - cbck
    - file_name
    - file_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 221
    functionName: ft_enum_fonts_dir
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_enum_directory
    linkageType: ''
    returnType: Bool
    signature: Bool ft_enum_fonts_dir(void *cbck, char *file_name, char *file_path,
      GF_FileEnumInfo *file_info)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:231,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/ft_font/ft_font.c:231,1
    - Dst: gf_opts_del_section
      Src: /src/gpac/modules/ft_font/ft_font.c:233,1
    - Dst: gf_opts_del_section
      Src: /src/gpac/modules/ft_font/ft_font.c:234,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/ft_font/ft_font.c:235,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:237,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:239,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:241,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:244,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/ft_font/ft_font.c:248,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/ft_font/ft_font.c:250,1
    - Dst: gf_dir_exists
      Src: /src/gpac/modules/ft_font/ft_font.c:252,1
    - Dst: gf_enum_directory
      Src: /src/gpac/modules/ft_font/ft_font.c:253,1
    - Dst: gf_enum_directory
      Src: /src/gpac/modules/ft_font/ft_font.c:254,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:258,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:260,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:262,1
    - Dst: gf_opts_get_key_count
      Src: /src/gpac/modules/ft_font/ft_font.c:266,1
    - Dst: gf_opts_get_key_name
      Src: /src/gpac/modules/ft_font/ft_font.c:270,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:272,1
    - Dst: strchr
      Src: /src/gpac/modules/ft_font/ft_font.c:273,1
    - Dst: strchr
      Src: /src/gpac/modules/ft_font/ft_font.c:273,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:275,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:276,1
    - Dst: strcpy
      Src: /src/gpac/modules/ft_font/ft_font.c:278,1
    - Dst: strcat
      Src: /src/gpac/modules/ft_font/ft_font.c:279,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:280,1
    - Dst: strcpy
      Src: /src/gpac/modules/ft_font/ft_font.c:283,1
    - Dst: strcat
      Src: /src/gpac/modules/ft_font/ft_font.c:284,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:285,1
    - Dst: strcpy
      Src: /src/gpac/modules/ft_font/ft_font.c:288,1
    - Dst: strcat
      Src: /src/gpac/modules/ft_font/ft_font.c:289,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:290,1
    - Dst: strcpy
      Src: /src/gpac/modules/ft_font/ft_font.c:293,1
    - Dst: strlwr
      Src: /src/gpac/modules/ft_font/ft_font.c:294,1
    - Dst: isBestFontFor
      Src: /src/gpac/modules/ft_font/ft_font.c:297,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:297,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:297,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:298,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:299,1
    - Dst: isBestFontFor
      Src: /src/gpac/modules/ft_font/ft_font.c:302,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:302,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:303,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:304,1
    - Dst: isBestFontFor
      Src: /src/gpac/modules/ft_font/ft_font.c:307,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:307,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:308,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:309,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:313,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:314,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:315,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/ft_font/ft_font.c:317,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/ft_font/ft_font.c:318,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/ft_font/ft_font.c:319,1
    - Dst: gf_opts_save
      Src: /src/gpac/modules/ft_font/ft_font.c:320,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:322,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 89
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_FontReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 323
    functionName: ft_rescan_fonts
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_enum_directory
    - gf_opts_del_section
    - gf_opts_set_key
    - gf_dir_exists
    - strcpy
    - gf_list_count
    - gf_opts_get_key
    - strchr
    - strcat
    - gf_list_get
    - gf_strdup
    - strlwr
    - gf_opts_save
    - isBestFontFor
    - GF_LOG
    - strstr
    - gf_opts_get_key_name
    - gf_opts_get_key_count
    linkageType: ''
    returnType: void
    signature: void ft_rescan_fonts(GF_FontReader *dr)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: FT_Init_FreeType
      Src: /src/gpac/modules/ft_font/ft_font.c:335,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:336,1
    - Dst: gf_opts_get_key_count
      Src: /src/gpac/modules/ft_font/ft_font.c:340,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:343,1
    - Dst: strcmp
      Src: /src/gpac/modules/ft_font/ft_font.c:344,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:349,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:351,1
    - Dst: strchr
      Src: /src/gpac/modules/ft_font/ft_font.c:357,1
    - Dst: strcpy
      Src: /src/gpac/modules/ft_font/ft_font.c:360,1
    - Dst: strlen
      Src: /src/gpac/modules/ft_font/ft_font.c:361,1
    - Dst: strlen
      Src: /src/gpac/modules/ft_font/ft_font.c:361,1
    - Dst: strlen
      Src: /src/gpac/modules/ft_font/ft_font.c:362,1
    - Dst: strlen
      Src: /src/gpac/modules/ft_font/ft_font.c:364,1
    - Dst: strcat
      Src: /src/gpac/modules/ft_font/ft_font.c:368,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/ft_font/ft_font.c:371,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:371,1
    - Dst: ft_rescan_fonts
      Src: /src/gpac/modules/ft_font/ft_font.c:380,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:383,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:384,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:388,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:389,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:393,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:394,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:396,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/ft_font/ft_font.c:396,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/ft_font/ft_font.c:396,1
    - Dst: GF_FontReader*::set_font
      Src: /src/gpac/modules/ft_font/ft_font.c:398,1
    - Dst: GF_FontReader*::set_font
      Src: /src/gpac/modules/ft_font/ft_font.c:399,1
    - Dst: GF_FontReader*::set_font
      Src: /src/gpac/modules/ft_font/ft_font.c:400,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:406,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:408,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:410,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:418,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:421,1
    - Dst: gf_get_default_font_dir
      Src: /src/gpac/modules/ft_font/ft_font.c:430,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:431,1
    - Dst: strcmp
      Src: /src/gpac/modules/ft_font/ft_font.c:432,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:435,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/ft_font/ft_font.c:436,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/ft_font/ft_font.c:438,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:439,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/modules/ft_font/ft_font.c:439,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 96
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_FontReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 327
    functionDepth: 2
    functionLinenumber: 327
    functionLinenumberEnd: 445
    functionName: ft_init_font_engine
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_opts_set_key
    - strcpy
    - gf_list_count
    - gf_opts_get_key
    - GF_FontReader*::set_font
    - strchr
    - strcat
    - gf_strdup
    - gf_list_get
    - gf_list_pop_back
    - gf_list_add
    - gf_get_default_font_dir
    - GF_LOG
    - ft_rescan_fonts
    - strlen
    - gf_opts_get_key_count
    - strcmp
    - FT_Init_FreeType
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ft_init_font_engine(GF_FontReader *dr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/modules/ft_font/ft_font.c:453,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/modules/ft_font/ft_font.c:454,1
    - Dst: FT_Done_Face
      Src: /src/gpac/modules/ft_font/ft_font.c:455,1
    - Dst: FT_Done_FreeType
      Src: /src/gpac/modules/ft_font/ft_font.c:459,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_FontReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 447
    functionDepth: 1
    functionLinenumber: 447
    functionLinenumberEnd: 462
    functionName: ft_shutdown_font_engine
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - FT_Done_FreeType
    - gf_list_pop_front
    - FT_Done_Face
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ft_shutdown_font_engine(GF_FontReader *dr)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/modules/ft_font/ft_font.c:470,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:473,1
    - Dst: strupr
      Src: /src/gpac/modules/ft_font/ft_font.c:474,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:475,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:476,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:477,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:482,1
    - Dst: strupr
      Src: /src/gpac/modules/ft_font/ft_font.c:483,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:484,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:485,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:486,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 3
    argNames:
    - font
    - fontName
    - styles
    argTypes:
    - FT_Face
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 465
    functionDepth: 0
    functionLinenumber: 465
    functionLinenumberEnd: 497
    functionName: ft_check_face
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - strstr
    - stricmp
    - strupr
    linkageType: ''
    returnType: Bool
    signature: Bool ft_check_face(FT_Face font, const char *fontName, u32 styles)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/modules/ft_font/ft_font.c:504,1
    - Dst: ft_check_face
      Src: /src/gpac/modules/ft_font/ft_font.c:505,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - ft
    - fontName
    - styles
    argTypes:
    - FTBuilder*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 499
    functionDepth: 1
    functionLinenumber: 499
    functionLinenumberEnd: 508
    functionName: ft_font_in_cache
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - ft_check_face
    - gf_list_enum
    linkageType: ''
    returnType: FT_Face
    signature: FT_Face ft_font_in_cache(FTBuilder *ft, const char *fontName, u32 styles)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:525,1
    - Dst: strlen
      Src: /src/gpac/modules/ft_font/ft_font.c:528,1
    - Dst: stricmp
      Src: /src/gpac/modules/ft_font/ft_font.c:528,1
    - Dst: stricmp
      Src: /src/gpac/modules/ft_font/ft_font.c:533,1
    - Dst: stricmp
      Src: /src/gpac/modules/ft_font/ft_font.c:533,1
    - Dst: stricmp
      Src: /src/gpac/modules/ft_font/ft_font.c:538,1
    - Dst: stricmp
      Src: /src/gpac/modules/ft_font/ft_font.c:538,1
    - Dst: strcmp
      Src: /src/gpac/modules/ft_font/ft_font.c:544,1
    - Dst: strcmp
      Src: /src/gpac/modules/ft_font/ft_font.c:545,1
    - Dst: strcmp
      Src: /src/gpac/modules/ft_font/ft_font.c:546,1
    - Dst: ft_font_in_cache
      Src: /src/gpac/modules/ft_font/ft_font.c:550,1
    - Dst: strlen
      Src: /src/gpac/modules/ft_font/ft_font.c:554,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:556,1
    - Dst: ft_rescan_fonts
      Src: /src/gpac/modules/ft_font/ft_font.c:557,1
    - Dst: ft_set_font
      Src: /src/gpac/modules/ft_font/ft_font.c:558,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/ft_font/ft_font.c:562,1
    - Dst: strlen
      Src: /src/gpac/modules/ft_font/ft_font.c:562,1
    - Dst: strcpy
      Src: /src/gpac/modules/ft_font/ft_font.c:567,1
    - Dst: strcat
      Src: /src/gpac/modules/ft_font/ft_font.c:568,1
    - Dst: strcat
      Src: /src/gpac/modules/ft_font/ft_font.c:569,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:571,1
    - Dst: ft_font_in_cache
      Src: /src/gpac/modules/ft_font/ft_font.c:578,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:580,1
    - Dst: FT_New_Face
      Src: /src/gpac/modules/ft_font/ft_font.c:585,1
    - Dst: ft_check_face
      Src: /src/gpac/modules/ft_font/ft_font.c:593,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:594,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/ft_font/ft_font.c:595,1
    - Dst: FT_Done_Face
      Src: /src/gpac/modules/ft_font/ft_font.c:599,1
    - Dst: FT_New_Face
      Src: /src/gpac/modules/ft_font/ft_font.c:603,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:624,1
    - Dst: gf_error_to_string
      Src: /src/gpac/modules/ft_font/ft_font.c:624,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:626,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:629,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/ft_font/ft_font.c:630,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 98
    argCount: 3
    argNames:
    - dr
    - OrigFontName
    - styles
    argTypes:
    - GF_FontReader*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 512
    functionDepth: 2
    functionLinenumber: 512
    functionLinenumberEnd: 632
    functionName: ft_set_font
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 1
    functionsReached:
    - gf_malloc
    - ft_set_font
    - strcat
    - gf_free
    - FT_New_Face
    - gf_opts_set_key
    - GF_LOG
    - strcpy
    - ft_check_face
    - FT_Done_Face
    - strcmp
    - gf_opts_get_key
    - gf_list_add
    - gf_error_to_string
    - stricmp
    - ft_rescan_fonts
    - strlen
    - ft_font_in_cache
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ft_set_font(GF_FontReader *dr, const char *OrigFontName, u32
      styles)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:644,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 9
    argNames:
    - dr
    - font_name
    - em_size
    - ascent
    - descent
    - underline
    - line_spacing
    - max_advance_h
    - max_advance_v
    argTypes:
    - GF_FontReader*
    - char**
    - u32*
    - s32*
    - s32*
    - s32*
    - s32*
    - s32*
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 648
      start: 634
    functionDepth: 0
    functionLinenumber: 634
    functionLinenumberEnd: 648
    functionName: ft_get_font_info
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ft_get_font_info(GF_FontReader *dr, char **font_name, u32 *em_size,
      s32 *ascent, s32 *descent, s32 *underline, s32 *line_spacing, s32 *max_advance_h,
      s32 *max_advance_v)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/modules/ft_font/ft_font.c:663,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/modules/ft_font/ft_font.c:672,1
    - Dst: gf_utf8_reorder_bidi
      Src: /src/gpac/modules/ft_font/ft_font.c:678,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 6
    argNames:
    - dr
    - utf_string
    - glyph_buffer
    - io_glyph_buffer_size
    - xml_lang
    - is_rtl
    argTypes:
    - GF_FontReader*
    - char*
    - u32*
    - u32*
    - char*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 685
      start: 651
    functionDepth: 1
    functionLinenumber: 651
    functionLinenumberEnd: 685
    functionName: ft_get_glyphs
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - gf_utf8_reorder_bidi
    - gf_utf8_mbstowcs
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ft_get_glyphs(GF_FontReader *dr, const char *utf_string, u32
      *glyph_buffer, u32 *io_glyph_buffer_size, const char *xml_lang, Bool *is_rtl)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_add_move_to
      Src: /src/gpac/modules/ft_font/ft_font.c:709,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:709,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:709,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - to
    - user
    argTypes:
    - FTCST*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 713
      start: 706
    functionDepth: 1
    functionLinenumber: 706
    functionLinenumberEnd: 713
    functionName: ft_move_to
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - gf_path_add_move_to
    linkageType: ''
    returnType: int
    signature: int ft_move_to(FTCST FT_Vector *to, void *user)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_close
      Src: /src/gpac/modules/ft_font/ft_font.c:719,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/modules/ft_font/ft_font.c:721,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:721,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:721,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - to
    - user
    argTypes:
    - FTCST*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 724
      start: 715
    functionDepth: 1
    functionLinenumber: 715
    functionLinenumberEnd: 724
    functionName: ft_line_to
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - gf_path_add_line_to
    - gf_path_close
    - INT2FIX
    linkageType: ''
    returnType: int
    signature: int ft_line_to(FTCST FT_Vector *to, void *user)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_add_quadratic_to
      Src: /src/gpac/modules/ft_font/ft_font.c:729,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:729,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:729,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:729,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:729,1
    - Dst: gf_path_close
      Src: /src/gpac/modules/ft_font/ft_font.c:730,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - control
    - to
    - user
    argTypes:
    - FTCST*
    - FTCST*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 732
      start: 726
    functionDepth: 1
    functionLinenumber: 726
    functionLinenumberEnd: 732
    functionName: ft_conic_to
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - gf_path_close
    - INT2FIX
    - gf_path_add_quadratic_to
    linkageType: ''
    returnType: int
    signature: int ft_conic_to(FTCST FT_Vector * control, FTCST FT_Vector *to, void
      *user)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_add_cubic_to
      Src: /src/gpac/modules/ft_font/ft_font.c:737,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:737,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:737,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:737,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:737,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:737,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:737,1
    - Dst: gf_path_close
      Src: /src/gpac/modules/ft_font/ft_font.c:738,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 4
    argNames:
    - c1
    - c2
    - to
    - user
    argTypes:
    - FTCST*
    - FTCST*
    - FTCST*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 740
      start: 734
    functionDepth: 1
    functionLinenumber: 734
    functionLinenumberEnd: 740
    functionName: ft_cubic_to
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - gf_path_close
    - gf_path_add_cubic_to
    - INT2FIX
    linkageType: ''
    returnType: int
    signature: int ft_cubic_to(FTCST FT_Vector *c1, FTCST FT_Vector *c2, FTCST FT_Vector
      *to, void *user)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: FT_Select_Charmap
      Src: /src/gpac/modules/ft_font/ft_font.c:755,1
    - Dst: FT_Get_Char_Index
      Src: /src/gpac/modules/ft_font/ft_font.c:757,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:760,1
    - Dst: FT_Load_Glyph
      Src: /src/gpac/modules/ft_font/ft_font.c:765,1
    - Dst: FT_Get_Glyph
      Src: /src/gpac/modules/ft_font/ft_font.c:767,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/ft_font/ft_font.c:773,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/ft_font/ft_font.c:775,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:777,1
    - Dst: FT_Outline_Decompose
      Src: /src/gpac/modules/ft_font/ft_font.c:791,1
    - Dst: FT_Glyph_Get_CBox
      Src: /src/gpac/modules/ft_font/ft_font.c:793,1
    - Dst: FT_Done_Glyph
      Src: /src/gpac/modules/ft_font/ft_font.c:805,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 39
    argCount: 2
    argNames:
    - dr
    - glyph_name
    argTypes:
    - GF_FontReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 807
      start: 743
    functionDepth: 1
    functionLinenumber: 743
    functionLinenumberEnd: 807
    functionName: ft_load_glyph
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - gf_free
    - FT_Get_Char_Index
    - FT_Outline_Decompose
    - GF_SAFEALLOC
    - GF_LOG
    - FT_Load_Glyph
    - FT_Glyph_Get_CBox
    - FT_Select_Charmap
    - FT_Done_Glyph
    - FT_Get_Glyph
    linkageType: ''
    returnType: GF_Glyph
    signature: GF_Glyph *ft_load_glyph(GF_FontReader *dr, u32 glyph_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/ft_font/ft_font.c:814,1
    - Dst: memset
      Src: /src/gpac/modules/ft_font/ft_font.c:815,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/ft_font/ft_font.c:816,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/ft_font/ft_font.c:818,1
    - Dst: memset
      Src: /src/gpac/modules/ft_font/ft_font.c:819,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/ft_font/ft_font.c:821,1
    - Dst: gf_list_new
      Src: /src/gpac/modules/ft_font/ft_font.c:823,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 835
      start: 810
    functionDepth: 1
    functionLinenumber: 810
    functionLinenumberEnd: 835
    functionName: ft_load
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_FontReader
    signature: GF_FontReader *ft_load()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/modules/ft_font/ft_font.c:843,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/modules/ft_font/ft_font.c:844,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:846,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/ft_font/ft_font.c:849,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:851,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:852,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:853,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:854,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/ft_font/ft_font.c:855,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:857,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:858,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 859
      start: 838
    functionDepth: 1
    functionLinenumber: 838
    functionLinenumberEnd: 859
    functionName: ft_delete
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_pop_back
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void ft_delete(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 871
      start: 863
    functionDepth: 0
    functionLinenumber: 863
    functionLinenumberEnd: 871
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ft_load
      Src: /src/gpac/modules/ft_font/ft_font.c:876,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 878
      start: 873
    functionDepth: 2
    functionLinenumber: 873
    functionLinenumberEnd: 878
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - ft_load
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ft_delete
      Src: /src/gpac/modules/ft_font/ft_font.c:885,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 888
      start: 880
    functionDepth: 2
    functionLinenumber: 880
    functionLinenumberEnd: 888
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - ft_delete
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GetEnv
      Src: /src/gpac/modules/droid_audio/droidaudio.c:96,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_audio/droidaudio.c:98,1
    - Dst: FindClass
      Src: /src/gpac/modules/droid_audio/droidaudio.c:110,1
    - Dst: NewGlobalRef
      Src: /src/gpac/modules/droid_audio/droidaudio.c:115,1
    - Dst: GetMethodID
      Src: /src/gpac/modules/droid_audio/droidaudio.c:117,1
    - Dst: GetStaticMethodID
      Src: /src/gpac/modules/droid_audio/droidaudio.c:118,1
    - Dst: GetMethodID
      Src: /src/gpac/modules/droid_audio/droidaudio.c:119,1
    - Dst: GetMethodID
      Src: /src/gpac/modules/droid_audio/droidaudio.c:120,1
    - Dst: GetMethodID
      Src: /src/gpac/modules/droid_audio/droidaudio.c:121,1
    - Dst: GetMethodID
      Src: /src/gpac/modules/droid_audio/droidaudio.c:122,1
    - Dst: GetMethodID
      Src: /src/gpac/modules/droid_audio/droidaudio.c:123,1
    - Dst: GetMethodID
      Src: /src/gpac/modules/droid_audio/droidaudio.c:124,1
    - Dst: GetMethodID
      Src: /src/gpac/modules/droid_audio/droidaudio.c:125,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 4
    argNames:
    - dr
    - os_handle
    - num_buffers
    - total_duration
    argTypes:
    - GF_AudioOutput*
    - void*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 127
    functionName: AAOut_Setup
    functionSourceFile: /src/gpac/modules/droid_audio/droidaudio.c
    functionUses: 0
    functionsReached:
    - GetMethodID
    - NewGlobalRef
    - GF_LOG
    - GetEnv
    - FindClass
    - GetStaticMethodID
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AAOut_Setup(GF_AudioOutput *dr, void *os_handle, u32 num_buffers,
      u32 total_duration)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_audio/droidaudio.c:136,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/droid_audio/droidaudio.c:138,1
    - Dst: GetEnv
      Src: /src/gpac/modules/droid_audio/droidaudio.c:138,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/droid_audio/droidaudio.c:138,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/droid_audio/droidaudio.c:140,1
    - Dst: AttachCurrentThread
      Src: /src/gpac/modules/droid_audio/droidaudio.c:140,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/droid_audio/droidaudio.c:140,1
    - Dst: CallNonvirtualVoidMethod
      Src: /src/gpac/modules/droid_audio/droidaudio.c:143,1
    - Dst: CallNonvirtualVoidMethod
      Src: /src/gpac/modules/droid_audio/droidaudio.c:144,1
    - Dst: PopLocalFrame
      Src: /src/gpac/modules/droid_audio/droidaudio.c:146,1
    - Dst: DeleteGlobalRef
      Src: /src/gpac/modules/droid_audio/droidaudio.c:148,1
    - Dst: DeleteGlobalRef
      Src: /src/gpac/modules/droid_audio/droidaudio.c:149,1
    - Dst: DeleteGlobalRef
      Src: /src/gpac/modules/droid_audio/droidaudio.c:150,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/droid_audio/droidaudio.c:153,1
    - Dst: DetachCurrentThread
      Src: /src/gpac/modules/droid_audio/droidaudio.c:153,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/droid_audio/droidaudio.c:153,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 155
    functionName: AAOut_Shutdown
    functionSourceFile: /src/gpac/modules/droid_audio/droidaudio.c
    functionUses: 0
    functionsReached:
    - DetachCurrentThread
    - GF_LOG
    - DeleteGlobalRef
    - GetJavaVM
    - AttachCurrentThread
    - GetEnv
    - PopLocalFrame
    - CallNonvirtualVoidMethod
    linkageType: ''
    returnType: void
    signature: void AAOut_Shutdown(GF_AudioOutput *dr)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GetJavaVM
      Src: /src/gpac/modules/droid_audio/droidaudio.c:172,1
    - Dst: AttachCurrentThread
      Src: /src/gpac/modules/droid_audio/droidaudio.c:172,1
    - Dst: GetJavaVM
      Src: /src/gpac/modules/droid_audio/droidaudio.c:172,1
    - Dst: PushLocalFrame
      Src: /src/gpac/modules/droid_audio/droidaudio.c:175,1
    - Dst: CallStaticIntMethod
      Src: /src/gpac/modules/droid_audio/droidaudio.c:178,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_audio/droidaudio.c:187,1
    - Dst: NewObject
      Src: /src/gpac/modules/droid_audio/droidaudio.c:192,1
    - Dst: NewGlobalRef
      Src: /src/gpac/modules/droid_audio/droidaudio.c:195,1
    - Dst: CallNonvirtualVoidMethod
      Src: /src/gpac/modules/droid_audio/droidaudio.c:196,1
    - Dst: NewByteArray
      Src: /src/gpac/modules/droid_audio/droidaudio.c:202,1
    - Dst: NewShortArray
      Src: /src/gpac/modules/droid_audio/droidaudio.c:204,1
    - Dst: NewGlobalRef
      Src: /src/gpac/modules/droid_audio/droidaudio.c:207,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 35
    argCount: 5
    argNames:
    - dr
    - SampleRate
    - NbChannels
    - nbBitsPerSample
    - channel_cfg
    argTypes:
    - GF_AudioOutput*
    - u32*
    - u32*
    - u32*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 212
    functionName: AAOut_ConfigureOutput
    functionSourceFile: /src/gpac/modules/droid_audio/droidaudio.c
    functionUses: 0
    functionsReached:
    - NewGlobalRef
    - GF_LOG
    - NewObject
    - GetJavaVM
    - AttachCurrentThread
    - CallStaticIntMethod
    - NewShortArray
    - PushLocalFrame
    - CallNonvirtualVoidMethod
    - NewByteArray
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AAOut_ConfigureOutput(GF_AudioOutput *dr, u32 *SampleRate, u32
      *NbChannels, u32 *nbBitsPerSample, u64 channel_cfg)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GetByteArrayElements
      Src: /src/gpac/modules/droid_audio/droidaudio.c:225,1
    - Dst: GetShortArrayElements
      Src: /src/gpac/modules/droid_audio/droidaudio.c:227,1
    - Dst: GF_AudioOutput*::FillBuffer
      Src: /src/gpac/modules/droid_audio/droidaudio.c:230,1
    - Dst: ReleaseByteArrayElements
      Src: /src/gpac/modules/droid_audio/droidaudio.c:233,1
    - Dst: CallNonvirtualIntMethod
      Src: /src/gpac/modules/droid_audio/droidaudio.c:235,1
    - Dst: ReleaseShortArrayElements
      Src: /src/gpac/modules/droid_audio/droidaudio.c:237,1
    - Dst: CallNonvirtualIntMethod
      Src: /src/gpac/modules/droid_audio/droidaudio.c:239,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_audio/droidaudio.c:242,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 244
    functionName: AAOut_WriteAudio
    functionSourceFile: /src/gpac/modules/droid_audio/droidaudio.c
    functionUses: 0
    functionsReached:
    - GetShortArrayElements
    - CallNonvirtualIntMethod
    - ReleaseShortArrayElements
    - GF_LOG
    - GetByteArrayElements
    - GF_AudioOutput*::FillBuffer
    - ReleaseByteArrayElements
    linkageType: ''
    returnType: void
    signature: void AAOut_WriteAudio(GF_AudioOutput *dr)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GetEnv
      Src: /src/gpac/modules/droid_audio/droidaudio.c:250,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_audio/droidaudio.c:255,1
    - Dst: CallNonvirtualVoidMethod
      Src: /src/gpac/modules/droid_audio/droidaudio.c:256,1
    - Dst: CallNonvirtualVoidMethod
      Src: /src/gpac/modules/droid_audio/droidaudio.c:257,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_audio/droidaudio.c:260,1
    - Dst: CallNonvirtualVoidMethod
      Src: /src/gpac/modules/droid_audio/droidaudio.c:261,1
    - Dst: CallNonvirtualVoidMethod
      Src: /src/gpac/modules/droid_audio/droidaudio.c:262,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_audio/droidaudio.c:265,1
    - Dst: CallNonvirtualVoidMethod
      Src: /src/gpac/modules/droid_audio/droidaudio.c:266,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_audio/droidaudio.c:269,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 2
    argNames:
    - dr
    - PlayType
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 247
    functionDepth: 1
    functionLinenumber: 247
    functionLinenumberEnd: 272
    functionName: AAOut_Play
    functionSourceFile: /src/gpac/modules/droid_audio/droidaudio.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GetEnv
    - CallNonvirtualVoidMethod
    linkageType: ''
    returnType: void
    signature: void AAOut_Play(GF_AudioOutput *dr, u32 PlayType)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GetEnv
      Src: /src/gpac/modules/droid_audio/droidaudio.c:277,1
    - Dst: CallNonvirtualIntMethod
      Src: /src/gpac/modules/droid_audio/droidaudio.c:291,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_audio/droidaudio.c:293,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 15
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - DroidContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 274
    functionDepth: 1
    functionLinenumber: 274
    functionLinenumberEnd: 295
    functionName: AAOut_UpdateVolume
    functionSourceFile: /src/gpac/modules/droid_audio/droidaudio.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GetEnv
    - CallNonvirtualIntMethod
    linkageType: ''
    returnType: void
    signature: void AAOut_UpdateVolume(DroidContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AAOut_UpdateVolume
      Src: /src/gpac/modules/droid_audio/droidaudio.c:301,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - dr
    - Volume
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 297
    functionDepth: 2
    functionLinenumber: 297
    functionLinenumberEnd: 302
    functionName: AAOut_SetVolume
    functionSourceFile: /src/gpac/modules/droid_audio/droidaudio.c
    functionUses: 0
    functionsReached:
    - AAOut_UpdateVolume
    linkageType: ''
    returnType: void
    signature: void AAOut_SetVolume(GF_AudioOutput *dr, u32 Volume)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AAOut_UpdateVolume
      Src: /src/gpac/modules/droid_audio/droidaudio.c:307,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dr
    - Pan
    argTypes:
    - GF_AudioOutput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 304
    functionDepth: 2
    functionLinenumber: 304
    functionLinenumberEnd: 308
    functionName: AAOut_SetPan
    functionSourceFile: /src/gpac/modules/droid_audio/droidaudio.c
    functionUses: 0
    functionsReached:
    - AAOut_UpdateVolume
    linkageType: ''
    returnType: void
    signature: void AAOut_SetPan(GF_AudioOutput *dr, u32 Pan)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/droid_audio/droidaudio.c:321,1
    - Dst: CallStaticIntMethod
      Src: /src/gpac/modules/droid_audio/droidaudio.c:335,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 4
    argNames:
    - dr
    - desired_samplerate
    - NbChannels
    - nbBitsPerSample
    argTypes:
    - GF_AudioOutput*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 311
    functionDepth: 1
    functionLinenumber: 311
    functionLinenumberEnd: 344
    functionName: AAOut_QueryOutputSampleRate
    functionSourceFile: /src/gpac/modules/droid_audio/droidaudio.c
    functionUses: 0
    functionsReached:
    - CallStaticIntMethod
    - GF_LOG
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AAOut_QueryOutputSampleRate(GF_AudioOutput *dr, u32 *desired_samplerate,
      u32 *NbChannels, u32 *nbBitsPerSample)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 346
    functionDepth: 0
    functionLinenumber: 346
    functionLinenumberEnd: 351
    functionName: AAOut_GetAudioDelay
    functionSourceFile: /src/gpac/modules/droid_audio/droidaudio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 AAOut_GetAudioDelay(GF_AudioOutput *dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 353
    functionDepth: 0
    functionLinenumber: 353
    functionLinenumberEnd: 358
    functionName: AAOut_GetTotalBufferTime
    functionSourceFile: /src/gpac/modules/droid_audio/droidaudio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 AAOut_GetTotalBufferTime(GF_AudioOutput *dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/modules/droid_audio/droidaudio.c:365,1
    - Dst: memset
      Src: /src/gpac/modules/droid_audio/droidaudio.c:366,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/droid_audio/droidaudio.c:370,1
    - Dst: memset
      Src: /src/gpac/modules/droid_audio/droidaudio.c:371,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/droid_audio/droidaudio.c:372,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 361
    functionDepth: 1
    functionLinenumber: 361
    functionLinenumberEnd: 388
    functionName: NewAAOutRender
    functionSourceFile: /src/gpac/modules/droid_audio/droidaudio.c
    functionUses: 0
    functionsReached:
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void *NewAAOutRender()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/modules/droid_audio/droidaudio.c:395,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 390
    functionDepth: 0
    functionLinenumber: 390
    functionLinenumberEnd: 396
    functionName: DeleteAAOutRender
    functionSourceFile: /src/gpac/modules/droid_audio/droidaudio.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DeleteAAOutRender(void *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 398
    functionDepth: 0
    functionLinenumber: 398
    functionLinenumberEnd: 406
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/droid_audio/droidaudio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NewAAOutRender
      Src: /src/gpac/modules/droid_audio/droidaudio.c:411,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 408
    functionDepth: 2
    functionLinenumber: 408
    functionLinenumberEnd: 413
    functionName: GF_BaseInterface *LoadInterface(u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/droid_audio/droidaudio.c
    functionUses: 0
    functionsReached:
    - NewAAOutRender
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DeleteAAOutRender
      Src: /src/gpac/modules/droid_audio/droidaudio.c:420,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 415
    functionDepth: 1
    functionLinenumber: 415
    functionLinenumberEnd: 423
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/droid_audio/droidaudio.c
    functionUses: 0
    functionsReached:
    - DeleteAAOutRender
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface(GF_BaseInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - vm
    - reserved
    argTypes:
    - JavaVM*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionName: JNI_OnLoad
    functionSourceFile: /src/gpac/modules/droid_audio/javaenv.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: jint
    signature: jint JNI_OnLoad(JavaVM* vm, void* reserved)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GetEnv
      Src: /src/gpac/modules/droid_audio/javaenv.c:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 43
    functionName: GetEnv
    functionSourceFile: /src/gpac/modules/droid_audio/javaenv.c
    functionUses: 16
    functionsReached:
    - GetEnv
    linkageType: ''
    returnType: JNIEnv
    signature: JNIEnv * GetEnv()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: GetJavaVM
    functionSourceFile: /src/gpac/modules/droid_audio/javaenv.c
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: JavaVM
    signature: JavaVM * GetJavaVM()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: pa_simple_free
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:60,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 63
    functionName: free_pulseaudio_resources
    functionSourceFile: /src/gpac/modules/pulseaudio/pulseaudio.c
    functionUses: 0
    functionsReached:
    - pa_simple_free
    linkageType: ''
    returnType: void
    signature: void free_pulseaudio_resources (GF_AudioOutput * dr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:73,1
    - Dst: gf_module_get_key
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - dr
    - os_handle
    - num_buffers
    - total_duration
    argTypes:
    - GF_AudioOutput*
    - void*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 79
    functionName: PulseAudio_Setup
    functionSourceFile: /src/gpac/modules/pulseaudio/pulseaudio.c
    functionUses: 0
    functionsReached:
    - gf_module_get_key
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err PulseAudio_Setup (GF_AudioOutput * dr, void *os_handle,\n                  u32
      num_buffers, u32 total_duration)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:90,1
    - Dst: pa_simple_drain
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:92,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:95,1
    - Dst: pa_strerror
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:97,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 101
    functionName: PulseAudio_Shutdown
    functionSourceFile: /src/gpac/modules/pulseaudio/pulseaudio.c
    functionUses: 0
    functionsReached:
    - pa_strerror
    - GF_LOG
    - pa_simple_drain
    linkageType: ''
    returnType: void
    signature: void PulseAudio_Shutdown (GF_AudioOutput * dr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:110,1
    - Dst: pa_simple_flush
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:113,1
    - Dst: pa_simple_free
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:114,1
    - Dst: pa_simple_new
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:125,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:134,1
    - Dst: pa_strerror
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:136,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:139,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 5
    argNames:
    - dr
    - SampleRate
    - NbChannels
    - audioFormat
    - channel_cfg
    argTypes:
    - GF_AudioOutput*
    - u32*
    - u32*
    - u32*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 141
    functionName: PulseAudio_Configure
    functionSourceFile: /src/gpac/modules/pulseaudio/pulseaudio.c
    functionUses: 0
    functionsReached:
    - pa_strerror
    - GF_LOG
    - pa_simple_new
    - pa_simple_flush
    - pa_simple_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PulseAudio_Configure(GF_AudioOutput *dr, u32 *SampleRate, u32
      *NbChannels, u32 *audioFormat, u64 channel_cfg)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:155,1
    - Dst: GF_AudioOutput*::FillBuffer
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:160,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:165,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:167,1
    - Dst: gf_sleep
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:169,1
    - Dst: pa_simple_write
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:174,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:178,1
    - Dst: pa_strerror
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:179,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 186
    functionName: PulseAudio_WriteAudio
    functionSourceFile: /src/gpac/modules/pulseaudio/pulseaudio.c
    functionUses: 0
    functionsReached:
    - pa_strerror
    - GF_LOG
    - gf_sleep
    - GF_AudioOutput*::FillBuffer
    - pa_simple_write
    linkageType: ''
    returnType: void
    signature: void PulseAudio_WriteAudio (GF_AudioOutput * dr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:197,1
    - Dst: pa_simple_get_latency
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:201,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:204,1
    - Dst: pa_strerror
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:206,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:210,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_AudioOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 188
    functionDepth: 1
    functionLinenumber: 188
    functionLinenumberEnd: 213
    functionName: PulseAudio_GetAudioDelay
    functionSourceFile: /src/gpac/modules/pulseaudio/pulseaudio.c
    functionUses: 0
    functionsReached:
    - pa_strerror
    - GF_LOG
    - pa_simple_get_latency
    linkageType: ''
    returnType: u32
    signature: u32 PulseAudio_GetAudioDelay (GF_AudioOutput * dr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:226,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:230,1
    - Dst: gf_free
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:233,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:248,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 250
    functionName: NewPulseAudioOutput
    functionSourceFile: /src/gpac/modules/pulseaudio/pulseaudio.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_REGISTER_MODULE_INTERFACE
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: 'void *

      NewPulseAudioOutput ()'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: free_pulseaudio_resources
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:256,1
    - Dst: gf_free
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:259,1
    - Dst: gf_free
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:261,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 263
    functionName: DeletePulseAudioOutput
    functionSourceFile: /src/gpac/modules/pulseaudio/pulseaudio.c
    functionUses: 0
    functionsReached:
    - gf_free
    - free_pulseaudio_resources
    linkageType: ''
    returnType: void
    signature: void DeletePulseAudioOutput (void *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - InterfaceType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 278
    functionName: QueryInterfaces
    functionSourceFile: /src/gpac/modules/pulseaudio/pulseaudio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT *QueryInterfaces(u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: NewPulseAudioOutput
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:284,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 280
    functionDepth: 2
    functionLinenumber: 280
    functionLinenumberEnd: 286
    functionName: GF_BaseInterface *LoadInterface (u32 InterfaceType)
    functionSourceFile: /src/gpac/modules/pulseaudio/pulseaudio.c
    functionUses: 0
    functionsReached:
    - NewPulseAudioOutput
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT GF_BaseInterface *LoadInterface (u32 InterfaceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DeletePulseAudioOutput
      Src: /src/gpac/modules/pulseaudio/pulseaudio.c:292,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 288
    functionDepth: 2
    functionLinenumber: 288
    functionLinenumberEnd: 293
    functionName: ShutdownInterface
    functionSourceFile: /src/gpac/modules/pulseaudio/pulseaudio.c
    functionUses: 0
    functionsReached:
    - DeletePulseAudioOutput
    linkageType: ''
    returnType: GPAC_MODULE_EXPORT
    signature: GPAC_MODULE_EXPORT ShutdownInterface (GF_BaseInterface * ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 30
    functionName: EXPORT_SYMBOL
    functionSourceFile: /src/gpac/src/export.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EXPORT_SYMBOL(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 32
    functionName: EXPORT_SYMBOL
    functionSourceFile: /src/gpac/src/export.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EXPORT_SYMBOL(a)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_receive_no_select
      Src: /src/gpac/src/ietf/rtcp.c:42,1
    - Dst: gf_sk_receive
      Src: /src/gpac/src/ietf/rtcp.c:44,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - ch
    - buffer
    - buffer_size
    argTypes:
    - GF_RTPChannel*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 48
    functionName: gf_rtp_read_rtcp
    functionSourceFile: /src/gpac/src/ietf/rtcp.c
    functionUses: 0
    functionsReached:
    - gf_sk_receive_no_select
    - gf_sk_receive
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_read_rtcp(GF_RTPChannel *ch, u8 *buffer, u32 buffer_size)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/ietf/rtcp.c:62,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtcp.c:67,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtcp.c:71,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtcp.c:72,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/ietf/rtcp.c:73,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/ietf/rtcp.c:74,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtcp.c:92,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/ietf/rtcp.c:103,1
    - Dst: gf_rtp_get_next_report_time
      Src: /src/gpac/src/ietf/rtcp.c:109,1
    - Dst: gf_rtp_get_report_time
      Src: /src/gpac/src/ietf/rtcp.c:112,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/ietf/rtcp.c:114,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/ietf/rtcp.c:115,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/ietf/rtcp.c:116,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/ietf/rtcp.c:117,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/ietf/rtcp.c:118,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/ietf/rtcp.c:124,1
    - Dst: asctime
      Src: /src/gpac/src/ietf/rtcp.c:127,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/ietf/rtcp.c:127,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtcp.c:135,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/ietf/rtcp.c:155,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/ietf/rtcp.c:166,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/ietf/rtcp.c:168,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/ietf/rtcp.c:170,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/ietf/rtcp.c:172,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/ietf/rtcp.c:174,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/ietf/rtcp.c:176,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/ietf/rtcp.c:178,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/ietf/rtcp.c:188,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/ietf/rtcp.c:193,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/ietf/rtcp.c:196,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/ietf/rtcp.c:198,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/ietf/rtcp.c:206,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/ietf/rtcp.c:218,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/ietf/rtcp.c:227,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/ietf/rtcp.c:253,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 122
    argCount: 4
    argNames:
    - ch
    - pck
    - pck_size
    - has_sr
    argTypes:
    - GF_RTPChannel*
    - u8*
    - u32
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 263
    functionName: gf_rtp_decode_rtcp
    functionSourceFile: /src/gpac/src/ietf/rtcp.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - GF_LOG
    - gf_log_tool_level_on
    - gf_rtp_get_next_report_time
    - gf_rtp_get_report_time
    - gf_bs_skip_bytes
    - gf_bs_read_int
    - gf_bs_read_u16
    - asctime
    - gf_bs_read_u8
    - gf_bs_reassign_buffer
    - gf_bs_read_u24
    - gf_gmtime
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_decode_rtcp(GF_RTPChannel *ch, u8 *pck, u32 pck_size,
      Bool *has_sr)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/ietf/rtcp.c:278,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtcp.c:283,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtcp.c:285,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtcp.c:287,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/ietf/rtcp.c:291,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtcp.c:295,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/ietf/rtcp.c:298,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/ietf/rtcp.c:306,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/ietf/rtcp.c:307,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/ietf/rtcp.c:314,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/ietf/rtcp.c:316,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/ietf/rtcp.c:318,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/ietf/rtcp.c:325,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/ietf/rtcp.c:340,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/ietf/rtcp.c:345,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/ietf/rtcp.c:348,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/ietf/rtcp.c:353,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/ietf/rtcp.c:360,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/ietf/rtcp.c:363,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/ietf/rtcp.c:367,1
    - Dst: asctime
      Src: /src/gpac/src/ietf/rtcp.c:370,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/ietf/rtcp.c:370,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtcp.c:374,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 61
    argCount: 3
    argNames:
    - ch
    - bs
    - NTP_Time
    argTypes:
    - GF_RTPChannel*
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 265
    functionDepth: 1
    functionLinenumber: 265
    functionLinenumberEnd: 387
    functionName: RTCP_FormatReport
    functionSourceFile: /src/gpac/src/ietf/rtcp.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u24
    - gf_log_tool_level_on
    - gf_bs_write_int
    - gf_bs_write_u16
    - GF_LOG
    - gf_net_get_ntp
    - gf_bs_write_u32
    - asctime
    - gf_bs_write_u8
    - gf_gmtime
    linkageType: ''
    returnType: u32
    signature: u32 RTCP_FormatReport(GF_RTPChannel *ch, GF_BitStream *bs, u32 NTP_Time)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtcp.c:397,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtcp.c:410,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtcp.c:415,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtcp.c:417,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/ietf/rtcp.c:419,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtcp.c:421,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/ietf/rtcp.c:424,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/ietf/rtcp.c:427,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/ietf/rtcp.c:429,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtcp.c:429,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/ietf/rtcp.c:430,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtcp.c:430,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/ietf/rtcp.c:432,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtcp.c:435,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 2
    argNames:
    - ch
    - bs
    argTypes:
    - GF_RTPChannel*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 390
    functionDepth: 1
    functionLinenumber: 390
    functionLinenumberEnd: 437
    functionName: RTCP_FormatSDES
    functionSourceFile: /src/gpac/src/ietf/rtcp.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_bs_write_data
    - gf_bs_write_u8
    - gf_bs_write_u32
    - strlen
    linkageType: ''
    returnType: u32
    signature: u32 RTCP_FormatSDES(GF_RTPChannel *ch, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtcp.c:443,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtcp.c:445,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtcp.c:447,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/ietf/rtcp.c:449,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtcp.c:451,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/ietf/rtcp.c:454,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - ch
    - bs
    argTypes:
    - GF_RTPChannel*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 440
    functionDepth: 1
    functionLinenumber: 440
    functionLinenumberEnd: 456
    functionName: RTCP_FormatBYE
    functionSourceFile: /src/gpac/src/ietf/rtcp.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_bs_write_u8
    - gf_bs_write_u32
    - gf_bs_write_u16
    linkageType: ''
    returnType: u32
    signature: u32 RTCP_FormatBYE(GF_RTPChannel *ch, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtcp.c:466,1
    - Dst: RTCP_FormatReport
      Src: /src/gpac/src/ietf/rtcp.c:470,1
    - Dst: gf_rtp_get_report_time
      Src: /src/gpac/src/ietf/rtcp.c:470,1
    - Dst: RTCP_FormatSDES
      Src: /src/gpac/src/ietf/rtcp.c:474,1
    - Dst: RTCP_FormatBYE
      Src: /src/gpac/src/ietf/rtcp.c:477,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/ietf/rtcp.c:482,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtcp.c:483,1
    - Dst: gf_sk_send
      Src: /src/gpac/src/ietf/rtcp.c:486,1
    - Dst: GF_RTPChannel*::send_interleave
      Src: /src/gpac/src/ietf/rtcp.c:489,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtcp.c:493,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 1
    argNames:
    - ch
    argTypes:
    - GF_RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 495
      start: 458
    functionDepth: 2
    functionLinenumber: 458
    functionLinenumberEnd: 495
    functionName: gf_rtp_send_bye
    functionSourceFile: /src/gpac/src/ietf/rtcp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sk_send
    - gf_bs_new
    - GF_RTPChannel*::send_interleave
    - gf_bs_get_content
    - gf_rtp_get_report_time
    - gf_bs_del
    - RTCP_FormatBYE
    - RTCP_FormatSDES
    - RTCP_FormatReport
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_send_bye(GF_RTPChannel *ch)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ch
    - loss_rate
    argTypes:
    - GF_RTPChannel*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 497
    functionDepth: 0
    functionLinenumber: 497
    functionLinenumberEnd: 503
    functionName: gf_rtp_set_loss_rate
    functionSourceFile: /src/gpac/src/ietf/rtcp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_set_loss_rate(GF_RTPChannel *ch, u32 loss_rate)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_get_report_time
      Src: /src/gpac/src/ietf/rtcp.c:516,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtcp.c:518,1
    - Dst: RTCP_FormatReport
      Src: /src/gpac/src/ietf/rtcp.c:522,1
    - Dst: RTCP_FormatSDES
      Src: /src/gpac/src/ietf/rtcp.c:526,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/ietf/rtcp.c:532,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtcp.c:533,1
    - Dst: gf_sk_send
      Src: /src/gpac/src/ietf/rtcp.c:536,1
    - Dst: GF_RTPChannel*::send_interleave
      Src: /src/gpac/src/ietf/rtcp.c:539,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtcp.c:546,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtcp.c:551,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtcp.c:554,1
    - Dst: gf_rtp_get_next_report_time
      Src: /src/gpac/src/ietf/rtcp.c:556,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 1
    argNames:
    - ch
    argTypes:
    - GF_RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 505
    functionDepth: 2
    functionLinenumber: 505
    functionLinenumberEnd: 558
    functionName: gf_rtp_send_rtcp_report
    functionSourceFile: /src/gpac/src/ietf/rtcp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sk_send
    - gf_bs_new
    - GF_RTPChannel*::send_interleave
    - gf_bs_get_content
    - GF_LOG
    - gf_rtp_get_next_report_time
    - gf_rtp_get_report_time
    - gf_bs_del
    - RTCP_FormatSDES
    - RTCP_FormatReport
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_send_rtcp_report(GF_RTPChannel *ch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 574
    functionDepth: 0
    functionLinenumber: 574
    functionLinenumberEnd: 576
    functionName: RTCP_SAFE_FREE
    functionSourceFile: /src/gpac/src/ietf/rtcp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RTCP_SAFE_FREE(p)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: RTCP_SAFE_FREE
      Src: /src/gpac/src/ietf/rtcp.c:583,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtcp.c:584,1
    - Dst: RTCP_SAFE_FREE
      Src: /src/gpac/src/ietf/rtcp.c:587,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtcp.c:588,1
    - Dst: RTCP_SAFE_FREE
      Src: /src/gpac/src/ietf/rtcp.c:591,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtcp.c:592,1
    - Dst: RTCP_SAFE_FREE
      Src: /src/gpac/src/ietf/rtcp.c:595,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtcp.c:596,1
    - Dst: RTCP_SAFE_FREE
      Src: /src/gpac/src/ietf/rtcp.c:599,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtcp.c:600,1
    - Dst: RTCP_SAFE_FREE
      Src: /src/gpac/src/ietf/rtcp.c:603,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtcp.c:604,1
    - Dst: RTCP_SAFE_FREE
      Src: /src/gpac/src/ietf/rtcp.c:607,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtcp.c:608,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 43
    argCount: 3
    argNames:
    - ch
    - InfoCode
    - info_string
    argTypes:
    - GF_RTPChannel*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 614
      start: 577
    functionDepth: 1
    functionLinenumber: 577
    functionLinenumberEnd: 614
    functionName: gf_rtp_set_info_rtcp
    functionSourceFile: /src/gpac/src/ietf/rtcp.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - RTCP_SAFE_FREE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_rtp_set_info_rtcp(GF_RTPChannel *ch, u32 InfoCode, char *info_string)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/ietf/rtsp_session.c:68,1
    - Dst: strchr
      Src: /src/gpac/src/ietf/rtsp_session.c:70,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_session.c:74,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_session.c:85,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_session.c:85,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_session.c:85,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_session.c:85,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_session.c:85,1
    - Dst: strstr
      Src: /src/gpac/src/ietf/rtsp_session.c:91,1
    - Dst: strstr
      Src: /src/gpac/src/ietf/rtsp_session.c:98,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_session.c:103,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_session.c:103,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_session.c:103,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_session.c:103,1
    - Dst: strrchr
      Src: /src/gpac/src/ietf/rtsp_session.c:108,1
    - Dst: strchr
      Src: /src/gpac/src/ietf/rtsp_session.c:111,1
    - Dst: strstr
      Src: /src/gpac/src/ietf/rtsp_session.c:113,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_session.c:116,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtsp_session.c:122,1
    - Dst: strchr
      Src: /src/gpac/src/ietf/rtsp_session.c:125,1
    - Dst: strchr
      Src: /src/gpac/src/ietf/rtsp_session.c:129,1
    - Dst: strncpy
      Src: /src/gpac/src/ietf/rtsp_session.c:131,1
    - Dst: strncpy
      Src: /src/gpac/src/ietf/rtsp_session.c:134,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_session.c:145,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/ietf/rtsp_session.c:151,1
    - Dst: MIN
      Src: /src/gpac/src/ietf/rtsp_session.c:155,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/ietf/rtsp_session.c:155,1
    - Dst: strncpy
      Src: /src/gpac/src/ietf/rtsp_session.c:156,1
    - Dst: strncpy
      Src: /src/gpac/src/ietf/rtsp_session.c:161,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 107
    argCount: 7
    argNames:
    - sURL
    - Server
    - Port
    - Service
    - useTCP
    - User
    - Pass
    argTypes:
    - char*
    - char[]
    - u16*
    - char[]
    - Bool*
    - char[]
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 167
    functionName: RTSP_UnpackURL
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - strrchr
    - GF_ARRAY_LENGTH
    - strstr
    - MIN
    - strncpy
    - atoi
    - stricmp
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err RTSP_UnpackURL(char *sURL, char Server[1024], u16 *Port, char
      Service[1024], Bool *useTCP, char User[1024], char Pass[1024])
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: RTSP_UnpackURL
      Src: /src/gpac/src/ietf/rtsp_session.c:182,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/rtsp_session.c:185,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_session.c:190,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_session.c:191,1
    - Dst: strnicmp
      Src: /src/gpac/src/ietf/rtsp_session.c:206,1
    - Dst: gf_rtsp_set_buffer_size
      Src: /src/gpac/src/ietf/rtsp_session.c:211,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_session.c:213,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_session.c:214,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_session.c:216,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_session.c:218,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/rtsp_session.c:219,1
    - Dst: gf_rtsp_session_reset
      Src: /src/gpac/src/ietf/rtsp_session.c:220,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 171
    functionDepth: 2
    functionLinenumber: 171
    functionLinenumberEnd: 222
    functionName: GF_RTSPSession *gf_rtsp_session_new(char *sURL, u16 DefaultPort)
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_list_new
    - GF_SAFEALLOC
    - gf_rtsp_set_buffer_size
    - strncmp
    - strnicmp
    - gf_rtsp_session_reset
    - RTSP_UnpackURL
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_RTSPSession *gf_rtsp_session_new(char *sURL, u16 DefaultPort)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - sess
    - netcap_id
    argTypes:
    - GF_RTSPSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 228
    functionName: gf_rtsp_session_set_netcap_id
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_session_set_netcap_id(GF_RTSPSession *sess, const
      char *netcap_id)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtsp_session.c:236,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 242
    functionName: gf_rtsp_reset_aggregation
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 1
    functionsReached:
    - strcpy
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_reset_aggregation(GF_RTSPSession *sess)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtsp_session.c:246,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/rtsp_session.c:247,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_session.c:248,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/ietf/rtsp_session.c:249,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 244
    functionDepth: 1
    functionLinenumber: 244
    functionLinenumberEnd: 251
    functionName: RemoveTCPChannels
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void RemoveTCPChannels(GF_RTSPSession *sess)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtsp_session.c:261,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtsp_session.c:264,1
    - Dst: gf_ssl_del
      Src: /src/gpac/src/ietf/rtsp_session.c:272,1
    - Dst: gf_ssl_del
      Src: /src/gpac/src/ietf/rtsp_session.c:276,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtsp_session.c:287,1
    - Dst: RemoveTCPChannels
      Src: /src/gpac/src/ietf/rtsp_session.c:288,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/ietf/rtsp_session.c:296,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_session.c:299,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 2
    argNames:
    - sess
    - ResetConnection
    argTypes:
    - GF_RTSPSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 254
    functionDepth: 2
    functionLinenumber: 254
    functionLinenumberEnd: 305
    functionName: gf_rtsp_session_reset
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 1
    functionsReached:
    - RemoveTCPChannels
    - GF_LOG
    - gf_sk_del
    - strcpy
    - gf_ssl_del
    - gf_opts_get_bool
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_session_reset(GF_RTSPSession *sess, Bool ResetConnection)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 309
    functionDepth: 0
    functionLinenumber: 309
    functionLinenumberEnd: 314
    functionName: gf_rtsp_session_needs_ssl
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_rtsp_session_needs_ssl(GF_RTSPSession *sess)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtsp_session_reset
      Src: /src/gpac/src/ietf/rtsp_session.c:322,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtsp_session.c:324,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtsp_session.c:325,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_session.c:326,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_session.c:327,1
    - Dst: gf_list_del
      Src: /src/gpac/src/ietf/rtsp_session.c:328,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_session.c:329,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_session.c:330,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_session.c:331,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_session.c:332,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_session.c:333,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_session.c:334,1
    - Dst: gf_ssl_del
      Src: /src/gpac/src/ietf/rtsp_session.c:337,1
    - Dst: gf_ssl_del
      Src: /src/gpac/src/ietf/rtsp_session.c:338,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_session.c:341,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 29
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 317
    functionDepth: 3
    functionLinenumber: 317
    functionLinenumberEnd: 342
    functionName: gf_rtsp_session_del
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sk_del
    - gf_rtsp_session_reset
    - gf_ssl_del
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_session_del(GF_RTSPSession *sess)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - sess
    - ssl_CTX
    argTypes:
    - GF_RTSPSession*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 350
    functionName: gf_rtsp_set_ssl_ctx
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_rtsp_set_ssl_ctx(GF_RTSPSession *sess, void *ssl_CTX)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 354
    functionDepth: 0
    functionLinenumber: 354
    functionLinenumberEnd: 362
    functionName: gf_rtsp_get_session_state
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_get_session_state(GF_RTSPSession *sess)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 365
    functionDepth: 0
    functionLinenumber: 365
    functionLinenumberEnd: 369
    functionName: gf_rtsp_get_last_request
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_rtsp_get_last_request(GF_RTSPSession *sess)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/ietf/rtsp_session.c:379,1
    - Dst: strstr
      Src: /src/gpac/src/ietf/rtsp_session.c:381,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - sess
    - url
    argTypes:
    - GF_RTSPSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 375
    functionDepth: 0
    functionLinenumber: 375
    functionLinenumberEnd: 383
    functionName: gf_rtsp_is_my_session
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - strstr
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_is_my_session(GF_RTSPSession *sess, char *url)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 390
    functionName: gf_rtsp_get_last_session_id
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_rtsp_get_last_session_id(GF_RTSPSession *sess)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 393
    functionDepth: 0
    functionLinenumber: 393
    functionLinenumberEnd: 398
    functionName: gf_rtsp_get_server_name
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_rtsp_get_server_name(GF_RTSPSession *sess)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 400
    functionDepth: 0
    functionLinenumber: 400
    functionLinenumberEnd: 404
    functionName: gf_rtsp_get_session_port
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_get_session_port(GF_RTSPSession *sess)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 406
    functionDepth: 0
    functionLinenumber: 406
    functionLinenumberEnd: 413
    functionName: gf_rtsp_use_tls
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_use_tls(GF_RTSPSession *sess)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtsp_check_connection
      Src: /src/gpac/src/ietf/rtsp_session.c:510,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtsp_session.c:515,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/ietf/rtsp_session.c:517,1
    - Dst: gf_rtsp_write_sock
      Src: /src/gpac/src/ietf/rtsp_session.c:519,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_session.c:520,1
    - Dst: gf_rtsp_write_sock
      Src: /src/gpac/src/ietf/rtsp_session.c:523,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - sess
    - buffer
    - Size
    argTypes:
    - GF_RTSPSession*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 505
    functionDepth: 1
    functionLinenumber: 505
    functionLinenumberEnd: 525
    functionName: gf_rtsp_send_data
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_rtsp_check_connection
    - gf_base64_encode
    - gf_rtsp_write_sock
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_rtsp_send_data(GF_RTSPSession *sess, u8 *buffer, u32 Size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtsp_session.c:532,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/rtsp_session.c:534,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/ietf/rtsp_session.c:540,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 4
    argNames:
    - sess
    - rtpID
    - rtcpID
    - RemoveIt
    argTypes:
    - GF_RTSPSession*
    - u8
    - u8
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 542
      start: 529
    functionDepth: 1
    functionLinenumber: 529
    functionLinenumberEnd: 542
    functionName: GetTCPChannel
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: GF_TCPChan
    signature: GF_TCPChan *GetTCPChannel(GF_RTSPSession *sess, u8 rtpID, u8 rtcpID,
      Bool RemoveIt)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtsp_fill_buffer
      Src: /src/gpac/src/ietf/rtsp_session.c:561,1
    - Dst: gf_rtsp_refill_buffer
      Src: /src/gpac/src/ietf/rtsp_session.c:563,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_session.c:566,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_session.c:566,1
    - Dst: GetTCPChannel
      Src: /src/gpac/src/ietf/rtsp_session.c:574,1
    - Dst: GF_RTSPSession*::RTSP_SignalData
      Src: /src/gpac/src/ietf/rtsp_session.c:580,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/ietf/rtsp_session.c:583,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_session.c:587,1
    - Dst: GetTCPChannel
      Src: /src/gpac/src/ietf/rtsp_session.c:588,1
    - Dst: GF_RTSPSession*::RTSP_SignalData
      Src: /src/gpac/src/ietf/rtsp_session.c:591,1
    - Dst: gf_realloc
      Src: /src/gpac/src/ietf/rtsp_session.c:598,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtsp_session.c:601,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/ietf/rtsp_session.c:603,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtsp_session.c:612,1
    - Dst: GetTCPChannel
      Src: /src/gpac/src/ietf/rtsp_session.c:614,1
    - Dst: GF_RTSPSession*::RTSP_SignalData
      Src: /src/gpac/src/ietf/rtsp_session.c:617,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/ietf/rtsp_session.c:623,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtsp_session.c:628,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/ietf/rtsp_session.c:631,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 64
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 545
    functionDepth: 2
    functionLinenumber: 545
    functionLinenumberEnd: 634
    functionName: gf_rtsp_do_deinterleave
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - GF_RTSPSession*::RTSP_SignalData
    - GF_LOG
    - gf_rtsp_refill_buffer
    - memcpy
    - gf_rtsp_fill_buffer
    - strncmp
    - GetTCPChannel
    - gf_fatal_assert
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_rtsp_do_deinterleave(GF_RTSPSession *sess)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtsp_fill_buffer
      Src: /src/gpac/src/ietf/rtsp_session.c:643,1
    - Dst: gf_rtsp_do_deinterleave
      Src: /src/gpac/src/ietf/rtsp_session.c:647,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 637
    functionDepth: 3
    functionLinenumber: 637
    functionLinenumberEnd: 652
    functionName: gf_rtsp_session_read
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_rtsp_fill_buffer
    - gf_rtsp_do_deinterleave
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_session_read(GF_RTSPSession *sess)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GetTCPChannel
      Src: /src/gpac/src/ietf/rtsp_session.c:662,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_session.c:663,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtsp_session.c:664,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - sess
    - LowInterID
    argTypes:
    - GF_RTSPSession*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 655
    functionDepth: 2
    functionLinenumber: 655
    functionLinenumberEnd: 667
    functionName: gf_rtsp_unregister_interleave
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_count
    - GetTCPChannel
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_unregister_interleave(GF_RTSPSession *sess, u8 LowInterID)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GetTCPChannel
      Src: /src/gpac/src/ietf/rtsp_session.c:677,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtsp_session.c:679,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/rtsp_session.c:683,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 4
    argNames:
    - sess
    - the_ch
    - LowInterID
    - HighInterID
    argTypes:
    - GF_RTSPSession*
    - void*
    - u8
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 687
      start: 669
    functionDepth: 2
    functionLinenumber: 669
    functionLinenumberEnd: 687
    functionName: gf_rtsp_register_interleave
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - GetTCPChannel
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_register_interleave(GF_RTSPSession *sess, void *the_ch,
      u8 LowInterID, u8 HighInterID)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/ietf/rtsp_session.c:702,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - sess
    - SignalData
    argTypes:
    - GF_RTSPSession*
    - gf_rtsp_interleave_callback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 705
      start: 690
    functionDepth: 0
    functionLinenumber: 690
    functionLinenumberEnd: 705
    functionName: gf_rtsp_set_interleave_callback
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_set_interleave_callback(GF_RTSPSession *sess, gf_rtsp_interleave_callback
      SignalData)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/ietf/rtsp_session.c:713,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - sess
    - BufferSize
    argTypes:
    - GF_RTSPSession*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 715
      start: 707
    functionDepth: 0
    functionLinenumber: 707
    functionLinenumberEnd: 715
    functionName: gf_rtsp_set_buffer_size
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 1
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_set_buffer_size(GF_RTSPSession *sess, u32 BufferSize)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: SSL_write
      Src: /src/gpac/src/ietf/rtsp_session.c:731,1
    - Dst: SSL_get_error
      Src: /src/gpac/src/ietf/rtsp_session.c:736,1
    - Dst: SSL_load_error_strings
      Src: /src/gpac/src/ietf/rtsp_session.c:742,1
    - Dst: ERR_error_string_n
      Src: /src/gpac/src/ietf/rtsp_session.c:743,1
    - Dst: ERR_get_error
      Src: /src/gpac/src/ietf/rtsp_session.c:743,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_session.c:745,1
    - Dst: gf_sk_send_ex
      Src: /src/gpac/src/ietf/rtsp_session.c:755,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 5
    argNames:
    - sess
    - sock
    - buffer
    - size
    - written
    argTypes:
    - GF_RTSPSession*
    - GF_Socket*
    - u8*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 756
      start: 717
    functionDepth: 1
    functionLinenumber: 717
    functionLinenumberEnd: 756
    functionName: rstp_do_write_sock
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - ERR_error_string_n
    - gf_sk_send_ex
    - ERR_get_error
    - SSL_write
    - GF_LOG
    - SSL_load_error_strings
    - SSL_get_error
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rstp_do_write_sock(GF_RTSPSession *sess, GF_Socket *sock, const
      u8 *buffer, u32 size, u32 *written)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_rand_init
      Src: /src/gpac/src/ietf/rtsp_session.c:777,1
    - Dst: gf_rand
      Src: /src/gpac/src/ietf/rtsp_session.c:782,1
    - Dst: snprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:783,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/ietf/rtsp_session.c:783,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_session.c:785,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/ietf/rtsp_session.c:789,1
    - Dst: memset
      Src: /src/gpac/src/ietf/rtsp_session.c:793,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:795,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:796,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:797,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:798,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:799,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:800,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_session.c:803,1
    - Dst: rstp_do_write_sock
      Src: /src/gpac/src/ietf/rtsp_session.c:806,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_session.c:806,1
    - Dst: gf_rstp_do_read_sock
      Src: /src/gpac/src/ietf/rtsp_session.c:812,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/ietf/rtsp_session.c:814,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtsp_session.c:818,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_session.c:820,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_session.c:823,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_session.c:823,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_session.c:823,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_session.c:823,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/ietf/rtsp_session.c:829,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/ietf/rtsp_session.c:834,1
    - Dst: gf_sk_connect
      Src: /src/gpac/src/ietf/rtsp_session.c:841,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/ietf/rtsp_session.c:843,1
    - Dst: SSL_new
      Src: /src/gpac/src/ietf/rtsp_session.c:853,1
    - Dst: SSL_set_fd
      Src: /src/gpac/src/ietf/rtsp_session.c:854,1
    - Dst: gf_sk_get_handle
      Src: /src/gpac/src/ietf/rtsp_session.c:854,1
    - Dst: SSL_ctrl
      Src: /src/gpac/src/ietf/rtsp_session.c:855,1
    - Dst: SSL_set_connect_state
      Src: /src/gpac/src/ietf/rtsp_session.c:856,1
    - Dst: SSL_set_mode
      Src: /src/gpac/src/ietf/rtsp_session.c:857,1
    - Dst: SSL_set_alpn_protos
      Src: /src/gpac/src/ietf/rtsp_session.c:858,1
    - Dst: SSL_connect
      Src: /src/gpac/src/ietf/rtsp_session.c:862,1
    - Dst: SSL_get_error
      Src: /src/gpac/src/ietf/rtsp_session.c:864,1
    - Dst: SSL_load_error_strings
      Src: /src/gpac/src/ietf/rtsp_session.c:867,1
    - Dst: ERR_error_string_n
      Src: /src/gpac/src/ietf/rtsp_session.c:868,1
    - Dst: ERR_get_error
      Src: /src/gpac/src/ietf/rtsp_session.c:868,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_session.c:870,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_session.c:876,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_session.c:880,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_session.c:885,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/ietf/rtsp_session.c:888,1
    - Dst: memset
      Src: /src/gpac/src/ietf/rtsp_session.c:890,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:892,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:893,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:894,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:895,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:896,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:897,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:898,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:899,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_session.c:902,1
    - Dst: rstp_do_write_sock
      Src: /src/gpac/src/ietf/rtsp_session.c:904,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_session.c:904,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 108
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 905
      start: 764
    functionDepth: 2
    functionLinenumber: 764
    functionLinenumberEnd: 905
    functionName: gf_rtsp_http_tunnel_setup
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - ERR_get_error
    - memset
    - gf_sk_get_handle
    - gf_opts_get_key
    - SSL_set_alpn_protos
    - gf_sys_clock
    - gf_sk_set_block_mode
    - gf_strdup
    - gf_assert
    - gf_rstp_do_read_sock
    - SSL_new
    - snprintf
    - SSL_set_connect_state
    - gf_sk_connect
    - sprintf
    - strncmp
    - SSL_ctrl
    - ERR_error_string_n
    - rstp_do_write_sock
    - GF_LOG
    - SSL_connect
    - gf_rand
    - SSL_get_error
    - gf_sys_clock_high_res
    - strlen
    - gf_sk_new_ex
    - SSL_set_mode
    - SSL_set_fd
    - SSL_load_error_strings
    - gf_rand_init
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_rtsp_http_tunnel_setup(GF_RTSPSession *sess)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_accept
      Src: /src/gpac/src/ietf/rtsp_session.c:927,1
    - Dst: gf_ssl_new
      Src: /src/gpac/src/ietf/rtsp_session.c:932,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_session.c:934,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/ietf/rtsp_session.c:934,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtsp_session.c:935,1
    - Dst: SSL_set_mode
      Src: /src/gpac/src/ietf/rtsp_session.c:938,1
    - Dst: gf_sk_get_local_info
      Src: /src/gpac/src/ietf/rtsp_session.c:942,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtsp_session.c:944,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/ietf/rtsp_session.c:947,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtsp_session.c:949,1
    - Dst: gf_sk_server_mode
      Src: /src/gpac/src/ietf/rtsp_session.c:952,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtsp_session.c:954,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/rtsp_session.c:959,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/ietf/rtsp_session.c:969,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_session.c:971,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_session.c:973,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtsp_session.c:974,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/ietf/rtsp_session.c:974,1
    - Dst: gf_rtsp_set_buffer_size
      Src: /src/gpac/src/ietf/rtsp_session.c:976,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/rtsp_session.c:977,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 49
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 982
      start: 912
    functionDepth: 1
    functionLinenumber: 912
    functionLinenumberEnd: 982
    functionName: GF_RTSPSession *gf_rtsp_session_new_server(GF_Socket *rtsp_listener,
      Bool allow_http_tunnel, void *ssl_ctx)
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_sk_accept
    - gf_strdup
    - gf_list_new
    - gf_sk_server_mode
    - SSL_set_mode
    - GF_SAFEALLOC
    - GF_LOG
    - gf_sk_del
    - gf_gpac_version
    - gf_rtsp_set_buffer_size
    - gf_opts_get_key
    - gf_error_to_string
    - gf_sk_get_local_info
    - gf_dynstrcat
    - gf_ssl_new
    - gf_sk_set_block_mode
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_RTSPSession *gf_rtsp_session_new_server(GF_Socket *rtsp_listener,
      Bool allow_http_tunnel, void *ssl_ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: RTSP_UnpackURL
      Src: /src/gpac/src/ietf/rtsp_session.c:995,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_session.c:1004,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_session.c:1005,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - sess
    - URL
    argTypes:
    - GF_RTSPSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1007
      start: 986
    functionDepth: 2
    functionLinenumber: 986
    functionLinenumberEnd: 1007
    functionName: gf_rtsp_load_service_name
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - RTSP_UnpackURL
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_rtsp_load_service_name(GF_RTSPSession *sess, char *URL)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_rand_init
      Src: /src/gpac/src/ietf/rtsp_session.c:1021,1
    - Dst: gf_rand
      Src: /src/gpac/src/ietf/rtsp_session.c:1023,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:1027,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_session.c:1028,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1029
      start: 1010
    functionDepth: 0
    functionLinenumber: 1010
    functionLinenumberEnd: 1029
    functionName: gf_rtsp_generate_session_id
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_rand
    - gf_strdup
    - gf_rand_init
    - sprintf
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_rtsp_generate_session_id(GF_RTSPSession *sess)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_get_local_ip
      Src: /src/gpac/src/ietf/rtsp_session.c:1036,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtsp_session.c:1037,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - sess
    - buffer
    argTypes:
    - GF_RTSPSession*
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1039
      start: 1032
    functionDepth: 0
    functionLinenumber: 1032
    functionLinenumberEnd: 1039
    functionName: gf_rtsp_get_session_ip
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - strcpy
    - gf_sk_get_local_ip
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_get_session_ip(GF_RTSPSession *sess, char buffer[GF_MAX_IP_NAME_LEN])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/rtsp_session.c:1050,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1055
      start: 1043
    functionDepth: 1
    functionLinenumber: 1043
    functionLinenumberEnd: 1055
    functionName: gf_rtsp_get_next_interleave_id
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: u8
    signature: u8 gf_rtsp_get_next_interleave_id(GF_RTSPSession *sess)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_get_remote_address
      Src: /src/gpac/src/ietf/rtsp_session.c:1062,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - sess
    - buf
    argTypes:
    - GF_RTSPSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1063
      start: 1058
    functionDepth: 0
    functionLinenumber: 1058
    functionLinenumberEnd: 1063
    functionName: gf_rtsp_get_remote_address
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_sk_get_remote_address
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_get_remote_address(GF_RTSPSession *sess, char *buf)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: rstp_do_write_sock
      Src: /src/gpac/src/ietf/rtsp_session.c:1069,1
    - Dst: gf_realloc
      Src: /src/gpac/src/ietf/rtsp_session.c:1078,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtsp_session.c:1081,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 3
    argNames:
    - sess
    - data
    - len
    argTypes:
    - GF_RTSPSession*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1084
      start: 1065
    functionDepth: 2
    functionLinenumber: 1065
    functionLinenumberEnd: 1084
    functionName: gf_rtsp_write_sock
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 1
    functionsReached:
    - memcpy
    - rstp_do_write_sock
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_rtsp_write_sock(GF_RTSPSession *sess, u8 *data, u32 len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtsp_write_sock
      Src: /src/gpac/src/ietf/rtsp_session.c:1098,1
    - Dst: gf_rtsp_write_sock
      Src: /src/gpac/src/ietf/rtsp_session.c:1099,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - sess
    - idx
    - pck
    - pck_size
    argTypes:
    - GF_RTSPSession*
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1101
      start: 1086
    functionDepth: 3
    functionLinenumber: 1086
    functionLinenumberEnd: 1101
    functionName: gf_rtsp_session_write_interleaved
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_rtsp_write_sock
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_session_write_interleaved(GF_RTSPSession *sess, u32
      idx, u8 *pck, u32 pck_size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: rstp_do_write_sock
      Src: /src/gpac/src/ietf/rtsp_session.c:1108,1
    - Dst: memmove
      Src: /src/gpac/src/ietf/rtsp_session.c:1118,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1122
      start: 1104
    functionDepth: 2
    functionLinenumber: 1104
    functionLinenumberEnd: 1122
    functionName: gf_rstp_flush_buffer
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - rstp_do_write_sock
    - memmove
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_rstp_flush_buffer(GF_RTSPSession *sess)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1127
      start: 1124
    functionDepth: 0
    functionLinenumber: 1124
    functionLinenumberEnd: 1127
    functionName: gf_rtsp_get_session_cookie
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_rtsp_get_session_cookie(GF_RTSPSession *sess)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_session.c:1133,1
    - Dst: gf_realloc
      Src: /src/gpac/src/ietf/rtsp_session.c:1142,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtsp_session.c:1145,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 2
    argNames:
    - sess
    - post_sess
    argTypes:
    - GF_RTSPSession*
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1158
      start: 1129
    functionDepth: 0
    functionLinenumber: 1129
    functionLinenumberEnd: 1158
    functionName: gf_rtsp_merge_tunnel
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - memcpy
    - strcmp
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_rtsp_merge_tunnel(GF_RTSPSession *sess, GF_RTSPSession *post_sess)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1163
      start: 1160
    functionDepth: 0
    functionLinenumber: 1160
    functionLinenumberEnd: 1163
    functionName: gf_rtsp_get_user
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_rtsp_get_user(GF_RTSPSession *sess)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1167
      start: 1164
    functionDepth: 0
    functionLinenumber: 1164
    functionLinenumberEnd: 1167
    functionName: gf_rtsp_get_password
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_rtsp_get_password(GF_RTSPSession *sess)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/rtp.c:37,1
    - Dst: gf_rand
      Src: /src/gpac/src/ietf/rtp.c:41,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp.c:42,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp.c:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 46
    functionName: GF_RTPChannel *gf_rtp_new_ex(const char *netcap_id)
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached:
    - gf_rand
    - gf_bs_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_RTPChannel *gf_rtp_new_ex(const char *netcap_id)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_new_ex
      Src: /src/gpac/src/ietf/rtp.c:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 52
    functionName: GF_RTPChannel *gf_rtp_new()
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached:
    - gf_rtp_new_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_RTPChannel *gf_rtp_new()
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtp.c:58,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtp.c:59,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:60,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:61,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:62,1
    - Dst: gf_rtp_reorderer_del
      Src: /src/gpac/src/ietf/rtp.c:63,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:64,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:66,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:67,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:68,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:69,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:70,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:71,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:72,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:73,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp.c:74,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp.c:75,1
    - Dst: memset
      Src: /src/gpac/src/ietf/rtp.c:76,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:77,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 39
    argCount: 1
    argNames:
    - ch
    argTypes:
    - GF_RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 78
    functionName: gf_rtp_del
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 3
    functionsReached:
    - gf_free
    - gf_sk_del
    - gf_bs_del
    - memset
    - gf_rtp_reorderer_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_del(GF_RTPChannel *ch)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:88,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:90,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:92,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtp.c:94,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtp.c:97,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtp.c:100,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtp.c:103,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtp.c:109,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtp.c:111,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/ietf/rtp.c:121,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 41
    argCount: 3
    argNames:
    - ch
    - trans_info
    - remote_address
    argTypes:
    - GF_RTPChannel*
    - GF_RTSPTransport*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 123
    functionName: gf_rtp_setup_transport
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 1
    functionsReached:
    - gf_free
    - memcpy
    - gf_strdup
    - gf_sk_is_multicast_address
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_setup_transport(GF_RTPChannel *ch, GF_RTSPTransport
      *trans_info, const char *remote_address)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_reset
      Src: /src/gpac/src/ietf/rtp.c:129,1
    - Dst: gf_sk_reset
      Src: /src/gpac/src/ietf/rtp.c:130,1
    - Dst: gf_rtp_reorderer_reset
      Src: /src/gpac/src/ietf/rtp.c:131,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ch
    argTypes:
    - GF_RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 133
    functionName: gf_rtp_reset_buffers
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached:
    - gf_sk_reset
    - gf_rtp_reorderer_reset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_reset_buffers(GF_RTPChannel *ch)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ch
    argTypes:
    - GF_RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 139
    functionName: gf_rtp_reset_ssrc
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_reset_ssrc(GF_RTPChannel *ch)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ch
    - nat_timeout
    argTypes:
    - GF_RTPChannel*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 148
    functionName: gf_rtp_enable_nat_keepalive
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_enable_nat_keepalive(GF_RTPChannel *ch, u32 nat_timeout)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 4
    argNames:
    - ch
    - seq_num
    - rtp_time
    - ssrc
    argTypes:
    - GF_RTPChannel*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 171
    functionName: gf_rtp_set_info_rtp
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_set_info_rtp(GF_RTPChannel *ch, u32 seq_num, u32 rtp_time,
      u32 ssrc)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtp.c:177,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtp.c:179,1
    - Dst: gf_rtp_reorderer_del
      Src: /src/gpac/src/ietf/rtp.c:181,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - ch
    argTypes:
    - GF_RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 184
    functionName: gf_rtp_stop
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 1
    functionsReached:
    - gf_sk_del
    - gf_rtp_reorderer_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_stop(GF_RTPChannel *ch)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 5
    argNames:
    - ch
    - src_ip_inc
    - nb_src_ip_inc
    - src_ip_exc
    - nb_src_ip_exc
    argTypes:
    - GF_RTPChannel*
    - char**
    - u32
    - char**
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 195
    functionName: gf_rtp_set_ssm
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_set_ssm(GF_RTPChannel *ch, const char **src_ip_inc,
      u32 nb_src_ip_inc, const char **src_ip_exc, u32 nb_src_ip_exc)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtp.c:205,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtp.c:207,1
    - Dst: gf_rtp_reorderer_del
      Src: /src/gpac/src/ietf/rtp.c:209,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp.c:217,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp.c:218,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp.c:219,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/ietf/rtp.c:228,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/ietf/rtp.c:232,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/ietf/rtp.c:240,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/ietf/rtp.c:250,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/ietf/rtp.c:256,1
    - Dst: gf_sk_setup_multicast_ex
      Src: /src/gpac/src/ietf/rtp.c:264,1
    - Dst: gf_sk_setup_multicast
      Src: /src/gpac/src/ietf/rtp.c:266,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/ietf/rtp.c:270,1
    - Dst: gf_rtp_reorderer_new
      Src: /src/gpac/src/ietf/rtp.c:275,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/ietf/rtp.c:281,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/ietf/rtp.c:290,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/ietf/rtp.c:293,1
    - Dst: gf_sk_setup_multicast_ex
      Src: /src/gpac/src/ietf/rtp.c:300,1
    - Dst: gf_sk_setup_multicast
      Src: /src/gpac/src/ietf/rtp.c:302,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:309,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtp.c:311,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtp.c:318,1
    - Dst: gf_get_user_name
      Src: /src/gpac/src/ietf/rtp.c:323,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtp.c:324,1
    - Dst: strcat
      Src: /src/gpac/src/ietf/rtp.c:324,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtp.c:325,1
    - Dst: gf_sk_get_local_ip
      Src: /src/gpac/src/ietf/rtp.c:327,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp.c:327,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtp.c:328,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/ietf/rtp.c:333,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp.c:334,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 117
    argCount: 7
    argNames:
    - ch
    - UDPBufferSize
    - IsSource
    - PathMTU
    - ReorederingSize
    - MaxReorderDelay
    - local_ip
    argTypes:
    - GF_RTPChannel*
    - u32
    - Bool
    - u32
    - u32
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 339
    functionName: gf_rtp_initialize
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_log_tool_level_on
    - gf_sk_del
    - strcpy
    - gf_sk_set_buffer_size
    - strcat
    - gf_strdup
    - gf_sk_setup_multicast
    - gf_get_user_name
    - stricmp
    - gf_sk_setup_multicast_ex
    - gf_sk_bind
    - GF_LOG
    - gf_sk_new_ex
    - strlen
    - gf_malloc
    - gf_sk_get_local_ip
    - gf_sk_is_multicast_address
    - gf_rtp_reorderer_new
    - gf_rtp_reorderer_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_initialize(GF_RTPChannel *ch, u32 UDPBufferSize, Bool
      IsSource, u32 PathMTU, u32 ReorederingSize, u32 MaxReorderDelay, char *local_ip)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/ietf/rtp.c:345,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ch
    argTypes:
    - GF_RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 342
    functionDepth: 0
    functionLinenumber: 342
    functionLinenumberEnd: 349
    functionName: gf_rtp_channel_time
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached:
    - gf_net_get_ntp
    linkageType: ''
    returnType: u32
    signature: u32 gf_rtp_channel_time(GF_RTPChannel *ch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/ietf/rtp.c:354,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 357
    functionName: gf_rtp_get_report_time
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 3
    functionsReached:
    - gf_net_get_ntp
    linkageType: ''
    returnType: u32
    signature: u32 gf_rtp_get_report_time()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_rand
      Src: /src/gpac/src/ietf/rtp.c:365,1
    - Dst: gf_rtp_get_report_time
      Src: /src/gpac/src/ietf/rtp.c:369,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ch
    argTypes:
    - GF_RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 360
    functionDepth: 1
    functionLinenumber: 360
    functionLinenumberEnd: 370
    functionName: gf_rtp_get_next_report_time
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 2
    functionsReached:
    - gf_rand
    - gf_rtp_get_report_time
    linkageType: ''
    returnType: void
    signature: void gf_rtp_get_next_report_time(GF_RTPChannel *ch)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_reorderer_get
      Src: /src/gpac/src/ietf/rtp.c:380,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtp.c:382,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:383,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ch
    - buffer
    - buffer_size
    argTypes:
    - GF_RTPChannel*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 372
    functionDepth: 1
    functionLinenumber: 372
    functionLinenumberEnd: 386
    functionName: gf_rtp_read_flush
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memcpy
    - gf_rtp_reorderer_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_read_flush(GF_RTPChannel *ch, u8 *buffer, u32 buffer_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_reorderer_get
      Src: /src/gpac/src/ietf/rtp.c:398,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtp.c:400,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:401,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - ch
    - buffer
    - buffer_size
    argTypes:
    - GF_RTPChannel*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 388
    functionDepth: 1
    functionLinenumber: 388
    functionLinenumberEnd: 405
    functionName: gf_rtp_flush_rtp
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memcpy
    - gf_rtp_reorderer_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_flush_rtp(GF_RTPChannel *ch, u8 *buffer, u32 buffer_size)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_receive_no_select
      Src: /src/gpac/src/ietf/rtp.c:417,1
    - Dst: gf_sk_receive
      Src: /src/gpac/src/ietf/rtp.c:419,1
    - Dst: gf_rtp_reorderer_add
      Src: /src/gpac/src/ietf/rtp.c:434,1
    - Dst: gf_rtp_reorderer_get
      Src: /src/gpac/src/ietf/rtp.c:438,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtp.c:440,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:441,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/ietf/rtp.c:452,1
    - Dst: gf_sk_send
      Src: /src/gpac/src/ietf/rtp.c:470,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp.c:472,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/ietf/rtp.c:472,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp.c:475,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/ietf/rtp.c:475,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 62
    argCount: 3
    argNames:
    - ch
    - buffer
    - buffer_size
    argTypes:
    - GF_RTPChannel*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 407
    functionDepth: 1
    functionLinenumber: 407
    functionLinenumberEnd: 482
    functionName: gf_rtp_read_rtp
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_rtp_reorderer_add
    - gf_rtp_reorderer_get
    - gf_sk_send
    - gf_sk_receive
    - memcpy
    - GF_LOG
    - gf_error_to_string
    - gf_sk_receive_no_select
    - gf_sys_clock
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_read_rtp(GF_RTPChannel *ch, u8 *buffer, u32 buffer_size)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/ietf/rtp.c:496,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp.c:498,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp.c:501,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp.c:502,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp.c:503,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp.c:504,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp.c:505,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/ietf/rtp.c:510,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/ietf/rtp.c:512,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/ietf/rtp.c:514,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp.c:524,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp.c:528,1
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/ietf/rtp.c:535,1
    - Dst: gf_rtp_channel_time
      Src: /src/gpac/src/ietf/rtp.c:567,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/ietf/rtp.c:604,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp.c:607,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 97
    argCount: 5
    argNames:
    - ch
    - pck
    - pck_size
    - rtp_hdr
    - PayloadStart
    argTypes:
    - GF_RTPChannel*
    - u8*
    - u32
    - GF_RTPHeader*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 485
    functionDepth: 1
    functionLinenumber: 485
    functionLinenumberEnd: 636
    functionName: gf_rtp_decode_rtp
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_LOG
    - gf_log_tool_level_on
    - gf_rtp_channel_time
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_net_get_ntp
    - gf_bs_reassign_buffer
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_decode_rtp(GF_RTPChannel *ch, u8 *pck, u32 pck_size,
      GF_RTPHeader *rtp_hdr, u32 *PayloadStart)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ch
    argTypes:
    - GF_RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 648
      start: 639
    functionDepth: 0
    functionLinenumber: 639
    functionLinenumberEnd: 648
    functionName: gf_rtp_get_current_time
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_get_current_time(GF_RTPChannel *ch)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/ietf/rtp.c:674,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/ietf/rtp.c:676,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp.c:679,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp.c:680,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp.c:681,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp.c:682,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp.c:683,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp.c:684,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtp.c:685,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/ietf/rtp.c:686,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/ietf/rtp.c:687,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/ietf/rtp.c:690,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/ietf/rtp.c:693,1
    - Dst: GF_RTPChannel*::send_interleave
      Src: /src/gpac/src/ietf/rtp.c:697,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtp.c:699,1
    - Dst: GF_RTPChannel*::send_interleave
      Src: /src/gpac/src/ietf/rtp.c:700,1
    - Dst: gf_sk_send
      Src: /src/gpac/src/ietf/rtp.c:705,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtp.c:707,1
    - Dst: gf_sk_send
      Src: /src/gpac/src/ietf/rtp.c:708,1
    - Dst: gf_rtp_get_next_report_time
      Src: /src/gpac/src/ietf/rtp.c:716,1
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/ietf/rtp.c:726,1
    - Dst: gf_rtp_send_rtcp_report
      Src: /src/gpac/src/ietf/rtp.c:728,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 56
    argCount: 5
    argNames:
    - ch
    - rtp_hdr
    - pck
    - pck_size
    - fast_send
    argTypes:
    - GF_RTPChannel*
    - GF_RTPHeader*
    - u8*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 655
    functionDepth: 3
    functionLinenumber: 655
    functionLinenumberEnd: 730
    functionName: gf_rtp_send_packet
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 1
    functionsReached:
    - gf_sk_send
    - gf_rtp_send_rtcp_report
    - GF_RTPChannel*::send_interleave
    - memcpy
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_rtp_get_next_report_time
    - gf_bs_get_position
    - gf_net_get_ntp
    - gf_bs_write_u32
    - gf_bs_reassign_buffer
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_send_packet(GF_RTPChannel *ch, GF_RTPHeader *rtp_hdr,
      u8 *pck, u32 pck_size, Bool fast_send)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ch
    argTypes:
    - GF_RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 737
      start: 732
    functionDepth: 0
    functionLinenumber: 732
    functionLinenumberEnd: 737
    functionName: gf_rtp_is_unicast
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_is_unicast(GF_RTPChannel *ch)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ch
    argTypes:
    - GF_RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 744
      start: 739
    functionDepth: 0
    functionLinenumber: 739
    functionLinenumberEnd: 744
    functionName: gf_rtp_is_interleaved
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_is_interleaved(GF_RTPChannel *ch)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ch
    argTypes:
    - GF_RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 746
    functionDepth: 0
    functionLinenumber: 746
    functionLinenumberEnd: 751
    functionName: gf_rtp_get_clockrate
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_get_clockrate(GF_RTPChannel *ch)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - ch
    argTypes:
    - GF_RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 759
      start: 754
    functionDepth: 0
    functionLinenumber: 754
    functionLinenumberEnd: 759
    functionName: gf_rtp_is_active
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_rtp_is_active(GF_RTPChannel *ch)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ch
    argTypes:
    - GF_RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 767
      start: 762
    functionDepth: 0
    functionLinenumber: 762
    functionLinenumberEnd: 767
    functionName: gf_rtp_get_low_interleave_id
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_get_low_interleave_id(GF_RTPChannel *ch)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ch
    argTypes:
    - GF_RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 774
      start: 769
    functionDepth: 0
    functionLinenumber: 769
    functionLinenumberEnd: 774
    functionName: gf_rtp_get_hight_interleave_id
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_get_hight_interleave_id(GF_RTPChannel *ch)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/ietf/rtp.c:794,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/ietf/rtp.c:800,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtp.c:803,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtp.c:808,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 2
    argNames:
    - ch
    - first_port
    argTypes:
    - GF_RTPChannel*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 813
      start: 781
    functionDepth: 1
    functionLinenumber: 781
    functionLinenumberEnd: 813
    functionName: gf_rtp_set_ports
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 1
    functionsReached:
    - gf_sk_del
    - gf_sk_bind
    - gf_sk_new_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_set_ports(GF_RTPChannel *ch, u16 first_port)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 3
    argNames:
    - ch
    - PayloadType
    - ClockRate
    argTypes:
    - GF_RTPChannel*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 823
      start: 816
    functionDepth: 0
    functionLinenumber: 816
    functionLinenumberEnd: 823
    functionName: gf_rtp_setup_payload
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_setup_payload(GF_RTPChannel *ch, u32 PayloadType,
      u32 ClockRate)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 825
    functionDepth: 0
    functionLinenumber: 825
    functionLinenumberEnd: 830
    functionName: GF_RTSPTransport *gf_rtp_get_transport(GF_RTPChannel *ch)
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_RTSPTransport *gf_rtp_get_transport(GF_RTPChannel *ch)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ch
    argTypes:
    - GF_RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 837
      start: 833
    functionDepth: 0
    functionLinenumber: 833
    functionLinenumberEnd: 837
    functionName: gf_rtp_get_local_ssrc
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_rtp_get_local_ssrc(GF_RTPChannel *ch)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ch
    argTypes:
    - GF_RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 854
      start: 849
    functionDepth: 0
    functionLinenumber: 849
    functionLinenumberEnd: 854
    functionName: gf_rtp_get_loss
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_get_loss(GF_RTPChannel *ch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ch
    argTypes:
    - GF_RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 860
      start: 856
    functionDepth: 0
    functionLinenumber: 856
    functionLinenumberEnd: 860
    functionName: gf_rtp_get_tcp_bytes_sent
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_get_tcp_bytes_sent(GF_RTPChannel *ch)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - ch
    - rtp_port
    - rtcp_port
    argTypes:
    - GF_RTPChannel*
    - u16*
    - u16*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 872
      start: 862
    functionDepth: 0
    functionLinenumber: 862
    functionLinenumberEnd: 872
    functionName: gf_rtp_get_ports
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_get_ports(GF_RTPChannel *ch, u16 *rtp_port, u16 *rtcp_port)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/rtp.c:888,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 894
      start: 881
    functionDepth: 1
    functionLinenumber: 881
    functionLinenumberEnd: 894
    functionName: GF_RTPReorder *gf_rtp_reorderer_new(u32 MaxCount, u32 MaxDelay,
      u32 timescale)
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_RTPReorder *gf_rtp_reorderer_new(u32 MaxCount, u32 MaxDelay,
      u32 timescale)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_reorderer_reset
      Src: /src/gpac/src/ietf/rtp.c:899,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:900,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - po
    argTypes:
    - GF_RTPReorder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 896
    functionDepth: 1
    functionLinenumber: 896
    functionLinenumberEnd: 901
    functionName: gf_rtp_reorderer_del
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 3
    functionsReached:
    - gf_free
    - gf_rtp_reorderer_reset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_reorderer_del(GF_RTPReorder *po)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:912,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:913,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - po
    argTypes:
    - GF_RTPReorder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 921
      start: 903
    functionDepth: 0
    functionLinenumber: 903
    functionLinenumberEnd: 921
    functionName: gf_rtp_reorderer_reset
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 2
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_reorderer_reset(GF_RTPReorder *po)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtp.c:931,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtp.c:935,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtp.c:936,1
    - Dst: ABSDIFF
      Src: /src/gpac/src/ietf/rtp.c:946,1
    - Dst: GF_4CC
      Src: /src/gpac/src/ietf/rtp.c:965,1
    - Dst: GF_4CC
      Src: /src/gpac/src/ietf/rtp.c:967,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp.c:977,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp.c:983,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp.c:1000,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp.c:1014,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:1023,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:1024,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp.c:1025,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 78
    argCount: 4
    argNames:
    - po
    - pck
    - pck_size
    - pck_seqnum
    argTypes:
    - GF_RTPReorder*
    - void*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1027
      start: 923
    functionDepth: 1
    functionLinenumber: 923
    functionLinenumberEnd: 1027
    functionName: gf_rtp_reorderer_add
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 1
    functionsReached:
    - ABSDIFF
    - gf_free
    - memcpy
    - GF_LOG
    - GF_4CC
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_reorderer_add(GF_RTPReorder *po, const void * pck,
      u32 pck_size, u32 pck_seqnum)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtp.c:1048,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp.c:1070,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/ietf/rtp.c:1081,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp.c:1082,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/ietf/rtp.c:1086,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp.c:1087,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/ietf/rtp.c:1087,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp.c:1096,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp.c:1110,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 62
    argCount: 4
    argNames:
    - po
    - pck_size
    - force_flush
    - is_disc
    argTypes:
    - GF_RTPReorder*
    - u32*
    - Bool
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1112
      start: 1032
    functionDepth: 1
    functionLinenumber: 1032
    functionLinenumberEnd: 1112
    functionName: gf_rtp_reorderer_get
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 3
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_assert
    - gf_sys_clock
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_rtp_reorderer_get(GF_RTPReorder *po, u32 *pck_size, Bool
      force_flush, Bool *is_disc)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ch
    - RTP_TCPCallback
    - cbk1
    - cbk2
    argTypes:
    - GF_RTPChannel*
    - gf_rtp_tcp_callback
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1121
      start: 1114
    functionDepth: 0
    functionLinenumber: 1114
    functionLinenumberEnd: 1121
    functionName: gf_rtp_set_interleave_callbacks
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_rtp_set_interleave_callbacks(GF_RTPChannel *ch, gf_rtp_tcp_callback
      RTP_TCPCallback, void *cbk1, void *cbk2)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ch
    argTypes:
    - GF_RTPChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1130
      start: 1123
    functionDepth: 0
    functionLinenumber: 1123
    functionLinenumberEnd: 1130
    functionName: gf_rtp_is_disc
    functionSourceFile: /src/gpac/src/ietf/rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_rtp_is_disc(GF_RTPChannel *ch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/sdp.c:44,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/sdp.c:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 48
    functionName: GF_SDP_FMTP *gf_sdp_fmtp_new()
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_SDP_FMTP *gf_sdp_fmtp_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/sdp.c:54,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/sdp.c:55,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/ietf/sdp.c:56,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:57,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:58,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:59,1
    - Dst: gf_list_del
      Src: /src/gpac/src/ietf/sdp.c:61,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:62,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - fmtp
    argTypes:
    - GF_SDP_FMTP*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 63
    functionName: gf_sdp_fmtp_del
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sdp_fmtp_del(GF_SDP_FMTP *fmtp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/sdp.c:71,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - media
    - PayloadType
    argTypes:
    - GF_SDPMedia*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 75
    functionName: SDP_GetFMTPForPayload
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_SDP_FMTP
    signature: GF_SDP_FMTP *SDP_GetFMTPForPayload(GF_SDPMedia *media, u32 PayloadType)
  - BBCount: 50
    BranchProfiles: []
    Callsites:
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:84,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:86,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:88,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:90,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:93,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:95,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:97,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:100,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:102,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:104,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:108,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:110,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/sdp.c:111,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:114,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:122,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:130,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:138,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:140,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:142,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:145,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:147,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:149,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:152,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:154,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:156,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:159,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:160,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:163,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:166,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:170,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:171,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:174,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:177,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:181,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:184,1
    - Dst: atof
      Src: /src/gpac/src/ietf/sdp.c:185,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:188,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:190,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/sdp.c:191,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:194,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/sdp.c:197,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:198,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/sdp.c:199,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:200,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:201,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:202,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/sdp.c:203,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:204,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/sdp.c:205,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/sdp.c:206,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:210,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:213,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/sdp.c:214,1
    - Dst: SDP_GetFMTPForPayload
      Src: /src/gpac/src/ietf/sdp.c:215,1
    - Dst: gf_sdp_fmtp_new
      Src: /src/gpac/src/ietf/sdp.c:217,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/sdp.c:219,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:222,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/sdp.c:224,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:225,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:228,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:229,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/sdp.c:230,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:238,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/sdp.c:239,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:240,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/sdp.c:243,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:248,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:249,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/sdp.c:252,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/sdp.c:254,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 184
    argCount: 3
    argNames:
    - sdp
    - buffer
    - media
    argTypes:
    - GF_SDPInfo*
    - char*
    - GF_SDPMedia*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 256
    functionName: SDP_ParseAttribute
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - atof
    - strlen
    - gf_token_get
    - SDP_GetFMTPForPayload
    - strcmp
    - atoi
    - gf_list_add
    - gf_sdp_fmtp_new
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void SDP_ParseAttribute(GF_SDPInfo *sdp, char *buffer, GF_SDPMedia
      *media)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 261
    functionName: SDPM_DESTROY
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SDPM_DESTROY(p)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/sdp.c:266,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/sdp.c:267,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/ietf/sdp.c:268,1
    - Dst: gf_sdp_fmtp_del
      Src: /src/gpac/src/ietf/sdp.c:269,1
    - Dst: gf_list_del
      Src: /src/gpac/src/ietf/sdp.c:271,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/sdp.c:273,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/sdp.c:274,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/ietf/sdp.c:275,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:276,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:277,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:278,1
    - Dst: gf_list_del
      Src: /src/gpac/src/ietf/sdp.c:280,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/sdp.c:282,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/sdp.c:283,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:284,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:285,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/ietf/sdp.c:286,1
    - Dst: gf_list_del
      Src: /src/gpac/src/ietf/sdp.c:288,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/sdp.c:290,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/sdp.c:291,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/ietf/sdp.c:292,1
    - Dst: gf_sdp_conn_del
      Src: /src/gpac/src/ietf/sdp.c:293,1
    - Dst: gf_list_del
      Src: /src/gpac/src/ietf/sdp.c:295,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/sdp.c:297,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/sdp.c:298,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/ietf/sdp.c:299,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:300,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:301,1
    - Dst: gf_list_del
      Src: /src/gpac/src/ietf/sdp.c:303,1
    - Dst: SDPM_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:305,1
    - Dst: SDPM_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:306,1
    - Dst: SDPM_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:307,1
    - Dst: SDPM_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:308,1
    - Dst: SDPM_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:309,1
    - Dst: SDPM_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:310,1
    - Dst: SDPM_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:311,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:312,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 43
    argCount: 1
    argNames:
    - media
    argTypes:
    - GF_SDPMedia*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 261
    functionDepth: 2
    functionLinenumber: 261
    functionLinenumberEnd: 313
    functionName: gf_sdp_media_del
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - SDPM_DESTROY
    - gf_sdp_conn_del
    - gf_sdp_fmtp_del
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sdp_media_del(GF_SDPMedia *media)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/sdp.c:320,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 316
    functionDepth: 1
    functionLinenumber: 316
    functionLinenumberEnd: 324
    functionName: GF_SDPConnection *gf_sdp_conn_new()
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_SDPConnection *gf_sdp_conn_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:329,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:330,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:331,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:332,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - conn
    argTypes:
    - GF_SDPConnection*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 326
    functionDepth: 0
    functionLinenumber: 326
    functionLinenumberEnd: 333
    functionName: gf_sdp_conn_del
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sdp_conn_del(GF_SDPConnection *conn)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/sdp.c:339,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/sdp.c:341,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/sdp.c:342,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/sdp.c:343,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/sdp.c:344,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/sdp.c:345,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 335
    functionDepth: 1
    functionLinenumber: 335
    functionLinenumberEnd: 348
    functionName: GF_SDPMedia *gf_sdp_media_new()
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_SDPMedia *gf_sdp_media_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/sdp.c:354,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/sdp.c:356,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/sdp.c:357,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/sdp.c:358,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/sdp.c:359,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 350
    functionDepth: 1
    functionLinenumber: 350
    functionLinenumberEnd: 361
    functionName: gf_sdp_info_new
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sdp_info_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 363
    functionDepth: 0
    functionLinenumber: 363
    functionLinenumberEnd: 364
    functionName: SDP_DESTROY
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SDP_DESTROY(p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/sdp.c:371,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/sdp.c:372,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/ietf/sdp.c:373,1
    - Dst: gf_sdp_media_del
      Src: /src/gpac/src/ietf/sdp.c:374,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/sdp.c:376,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/sdp.c:377,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/ietf/sdp.c:378,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:379,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:380,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:381,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/sdp.c:383,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/sdp.c:384,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/ietf/sdp.c:385,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:386,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:387,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/sdp.c:389,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/sdp.c:390,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/ietf/sdp.c:391,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:392,1
    - Dst: SDP_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:396,1
    - Dst: SDP_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:397,1
    - Dst: SDP_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:398,1
    - Dst: SDP_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:399,1
    - Dst: SDP_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:400,1
    - Dst: SDP_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:401,1
    - Dst: SDP_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:402,1
    - Dst: SDP_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:403,1
    - Dst: SDP_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:404,1
    - Dst: SDP_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:405,1
    - Dst: SDP_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:406,1
    - Dst: SDP_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:407,1
    - Dst: SDP_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:408,1
    - Dst: SDP_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:409,1
    - Dst: SDP_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:410,1
    - Dst: SDP_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:411,1
    - Dst: SDP_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:412,1
    - Dst: SDP_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:413,1
    - Dst: SDP_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:414,1
    - Dst: SDP_DESTROY
      Src: /src/gpac/src/ietf/sdp.c:415,1
    - Dst: gf_sdp_conn_del
      Src: /src/gpac/src/ietf/sdp.c:418,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 50
    argCount: 1
    argNames:
    - sdp
    argTypes:
    - GF_SDPInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 366
    functionDepth: 3
    functionLinenumber: 366
    functionLinenumberEnd: 422
    functionName: gf_sdp_info_reset
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_sdp_media_del
    - gf_list_count
    - gf_sdp_conn_del
    - SDP_DESTROY
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sdp_info_reset(GF_SDPInfo *sdp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sdp_info_reset
      Src: /src/gpac/src/ietf/sdp.c:428,1
    - Dst: gf_list_del
      Src: /src/gpac/src/ietf/sdp.c:429,1
    - Dst: gf_list_del
      Src: /src/gpac/src/ietf/sdp.c:430,1
    - Dst: gf_list_del
      Src: /src/gpac/src/ietf/sdp.c:431,1
    - Dst: gf_list_del
      Src: /src/gpac/src/ietf/sdp.c:432,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:433,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - sdp
    argTypes:
    - GF_SDPInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 424
    functionDepth: 4
    functionLinenumber: 424
    functionLinenumberEnd: 434
    functionName: gf_sdp_info_del
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sdp_info_reset
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sdp_info_del(GF_SDPInfo *sdp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/sdp.c:443,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/sdp.c:444,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:445,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - media
    - payt
    argTypes:
    - GF_SDPMedia*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 437
    functionDepth: 1
    functionLinenumber: 437
    functionLinenumberEnd: 448
    functionName: SDP_IsDynamicPayload
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - strcmp
    - sprintf
    linkageType: ''
    returnType: Bool
    signature: Bool SDP_IsDynamicPayload(GF_SDPMedia *media, char *payt)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/ietf/sdp.c:461,1
    - Dst: strstr
      Src: /src/gpac/src/ietf/sdp.c:462,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/sdp.c:464,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/sdp.c:464,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/sdp.c:465,1
    - Dst: MIN
      Src: /src/gpac/src/ietf/sdp.c:465,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/sdp.c:465,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/sdp.c:465,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/sdp.c:467,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/sdp.c:468,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/sdp.c:470,1
    - Dst: strstr
      Src: /src/gpac/src/ietf/sdp.c:475,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/sdp.c:477,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/sdp.c:477,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/sdp.c:478,1
    - Dst: MIN
      Src: /src/gpac/src/ietf/sdp.c:478,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/sdp.c:478,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/sdp.c:478,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/sdp.c:480,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/sdp.c:481,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/sdp.c:483,1
    - Dst: strstr
      Src: /src/gpac/src/ietf/sdp.c:488,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/sdp.c:490,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/sdp.c:490,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/sdp.c:491,1
    - Dst: MIN
      Src: /src/gpac/src/ietf/sdp.c:491,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/sdp.c:491,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/sdp.c:491,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/sdp.c:493,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/sdp.c:494,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/sdp.c:496,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/sdp.c:501,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 1
    argNames:
    - buf
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 451
    functionDepth: 1
    functionLinenumber: 451
    functionLinenumberEnd: 502
    functionName: SDP_MakeSeconds
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - memcpy
    - GF_LOG
    - MIN
    - strstr
    - memset
    - atoi
    - strlen
    linkageType: ''
    returnType: s32
    signature: s32 SDP_MakeSeconds(char *buf)
  - BBCount: 63
    BranchProfiles: []
    Callsites:
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/ietf/sdp.c:520,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/ietf/sdp.c:525,1
    - Dst: SDP_MakeSeconds
      Src: /src/gpac/src/ietf/sdp.c:526,1
    - Dst: gf_sdp_info_reset
      Src: /src/gpac/src/ietf/sdp.c:531,1
    - Dst: gf_token_get_line
      Src: /src/gpac/src/ietf/sdp.c:535,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:537,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:537,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:537,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:542,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/sdp.c:543,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:548,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:549,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:550,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:551,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:552,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:553,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:555,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:556,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:558,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:559,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:561,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:562,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:566,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:567,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:571,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:572,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:576,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:577,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:581,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:582,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:586,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:587,1
    - Dst: gf_sdp_conn_new
      Src: /src/gpac/src/ietf/sdp.c:593,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:595,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:596,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:598,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:599,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:601,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:602,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/ietf/sdp.c:603,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:605,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/sdp.c:607,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:609,1
    - Dst: gf_sdp_conn_del
      Src: /src/gpac/src/ietf/sdp.c:613,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/sdp.c:616,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/sdp.c:622,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:626,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:627,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:627,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/sdp.c:629,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:631,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:632,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/sdp.c:633,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/sdp.c:635,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/sdp.c:637,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/sdp.c:644,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:646,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/sdp.c:647,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:648,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/sdp.c:649,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/sdp.c:650,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:654,1
    - Dst: SDP_MakeSeconds
      Src: /src/gpac/src/ietf/sdp.c:656,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:657,1
    - Dst: SDP_MakeSeconds
      Src: /src/gpac/src/ietf/sdp.c:658,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:661,1
    - Dst: SDP_MakeSeconds
      Src: /src/gpac/src/ietf/sdp.c:663,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:672,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/sdp.c:675,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:676,1
    - Dst: SDP_MakeSeconds
      Src: /src/gpac/src/ietf/sdp.c:677,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:683,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:685,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:687,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:689,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:692,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:694,1
    - Dst: SDP_ParseAttribute
      Src: /src/gpac/src/ietf/sdp.c:699,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:702,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:703,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:704,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:705,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:706,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:707,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:708,1
    - Dst: gf_sdp_media_new
      Src: /src/gpac/src/ietf/sdp.c:711,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:713,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:714,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:715,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:716,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/sdp.c:717,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:720,1
    - Dst: strstr
      Src: /src/gpac/src/ietf/sdp.c:721,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:722,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/sdp.c:723,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:726,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/sdp.c:727,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:728,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/sdp.c:729,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:732,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:733,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:734,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:735,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/sdp.c:737,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/sdp.c:747,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/sdp.c:750,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/sdp.c:753,1
    - Dst: SDP_IsDynamicPayload
      Src: /src/gpac/src/ietf/sdp.c:755,1
    - Dst: strcat
      Src: /src/gpac/src/ietf/sdp.c:757,1
    - Dst: strcat
      Src: /src/gpac/src/ietf/sdp.c:761,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/sdp.c:763,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/sdp.c:765,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/sdp.c:766,1
    CyclomaticComplexity: 98
    EdgeCount: 98
    ICount: 249
    argCount: 3
    argNames:
    - sdp
    - sdp_text
    - text_size
    argTypes:
    - GF_SDPInfo*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 771
      start: 505
    functionDepth: 4
    functionLinenumber: 505
    functionLinenumberEnd: 771
    functionName: gf_sdp_info_parse
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - strcpy
    - gf_token_get
    - atoi
    - gf_sys_is_cov_mode
    - strcat
    - gf_strdup
    - gf_sdp_info_reset
    - gf_sdp_conn_new
    - gf_list_add
    - gf_sdp_media_new
    - gf_token_get_line
    - gf_utf8_is_legal
    - strstr
    - SDP_ParseAttribute
    - gf_list_enum
    - gf_sdp_conn_del
    - SDP_MakeSeconds
    - strlen
    - SDP_IsDynamicPayload
    - gf_sk_is_multicast_address
    - strcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sdp_info_parse(GF_SDPInfo *sdp, char *sdp_text, u32 text_size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/ietf/sdp.c:780,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 1
    argNames:
    - conn
    argTypes:
    - GF_SDPConnection*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 787
      start: 776
    functionDepth: 0
    functionLinenumber: 776
    functionLinenumberEnd: 787
    functionName: SDP_CheckConnection
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached:
    - gf_sk_is_multicast_address
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SDP_CheckConnection(GF_SDPConnection *conn)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/sdp.c:802,1
    - Dst: SDP_CheckConnection
      Src: /src/gpac/src/ietf/sdp.c:815,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/sdp.c:826,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/sdp.c:836,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/sdp.c:840,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/sdp.c:844,1
    - Dst: SDP_CheckConnection
      Src: /src/gpac/src/ietf/sdp.c:845,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/sdp.c:851,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 44
    argCount: 1
    argNames:
    - sdp
    argTypes:
    - GF_SDPInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 863
      start: 791
    functionDepth: 1
    functionLinenumber: 791
    functionLinenumberEnd: 863
    functionName: gf_sdp_info_check
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_enum
    - SDP_CheckConnection
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sdp_info_check(GF_SDPInfo *sdp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - str
    - ','
    - space
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 877
      start: 866
    functionDepth: 0
    functionLinenumber: 866
    functionLinenumberEnd: 877
    functionName: SDP_WRITE_ALLOC_STR_WITHOUT_CHECK
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SDP_WRITE_ALLOC_STR_WITHOUT_CHECK(str, space)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - str
    - ','
    - space
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 883
      start: 878
    functionDepth: 0
    functionLinenumber: 878
    functionLinenumberEnd: 883
    functionName: SDP_WRITE_ALLOC_STR
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SDP_WRITE_ALLOC_STR(str, space)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - d
    - ','
    - spa
    - ','
    - sig
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 890
      start: 883
    functionDepth: 0
    functionLinenumber: 883
    functionLinenumberEnd: 890
    functionName: SDP_WRITE_ALLOC_INT
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SDP_WRITE_ALLOC_INT(d, spa, sig)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - d
    - ','
    - spa
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 894
      start: 891
    functionDepth: 0
    functionLinenumber: 891
    functionLinenumberEnd: 894
    functionName: SDP_WRITE_ALLOC_FLOAT
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SDP_WRITE_ALLOC_FLOAT(d, spa)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - type
    - ','
    - str
    - ','
    - sep
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 895
    functionDepth: 0
    functionLinenumber: 895
    functionLinenumberEnd: 902
    functionName: TEST_SDP_WRITE_SINGLE
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TEST_SDP_WRITE_SINGLE(type, str, sep)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - conn
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 920
      start: 904
    functionDepth: 0
    functionLinenumber: 904
    functionLinenumberEnd: 920
    functionName: SDP_WRITE_CONN
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SDP_WRITE_CONN(conn)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_sdp_info_check
      Src: /src/gpac/src/ietf/sdp.c:935,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/sdp.c:938,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:943,1
    - Dst: SDP_WRITE_ALLOC_INT
      Src: /src/gpac/src/ietf/sdp.c:944,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:945,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:947,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:948,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:949,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:950,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:951,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:952,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:953,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:954,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:956,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:958,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:960,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:962,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:964,1
    - Dst: SDP_WRITE_CONN
      Src: /src/gpac/src/ietf/sdp.c:966,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/sdp.c:969,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:970,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:971,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:972,1
    - Dst: SDP_WRITE_ALLOC_INT
      Src: /src/gpac/src/ietf/sdp.c:973,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:974,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/sdp.c:978,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:982,1
    - Dst: SDP_WRITE_ALLOC_INT
      Src: /src/gpac/src/ietf/sdp.c:983,1
    - Dst: SDP_WRITE_ALLOC_INT
      Src: /src/gpac/src/ietf/sdp.c:984,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:985,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:987,1
    - Dst: SDP_WRITE_ALLOC_INT
      Src: /src/gpac/src/ietf/sdp.c:988,1
    - Dst: SDP_WRITE_ALLOC_INT
      Src: /src/gpac/src/ietf/sdp.c:989,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:991,1
    - Dst: SDP_WRITE_ALLOC_INT
      Src: /src/gpac/src/ietf/sdp.c:992,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:994,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:997,1
    - Dst: SDP_WRITE_ALLOC_INT
      Src: /src/gpac/src/ietf/sdp.c:999,1
    - Dst: SDP_WRITE_ALLOC_INT
      Src: /src/gpac/src/ietf/sdp.c:1001,1
    - Dst: SDP_WRITE_ALLOC_INT
      Src: /src/gpac/src/ietf/sdp.c:1003,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1006,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1011,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1012,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1014,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1015,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1017,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:1020,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:1022,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:1024,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:1028,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:1031,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:1034,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:1040,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:1042,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:1044,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:1046,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/sdp.c:1050,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1051,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1052,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1054,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1055,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1057,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/sdp.c:1062,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1064,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1067,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1070,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1073,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1076,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1079,1
    - Dst: SDP_WRITE_ALLOC_INT
      Src: /src/gpac/src/ietf/sdp.c:1082,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1084,1
    - Dst: SDP_WRITE_ALLOC_INT
      Src: /src/gpac/src/ietf/sdp.c:1085,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1087,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1089,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1090,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/sdp.c:1093,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1094,1
    - Dst: SDP_WRITE_ALLOC_INT
      Src: /src/gpac/src/ietf/sdp.c:1095,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1097,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/sdp.c:1101,1
    - Dst: SDP_WRITE_CONN
      Src: /src/gpac/src/ietf/sdp.c:1102,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1107,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1108,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1110,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1111,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1113,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/sdp.c:1117,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1118,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1119,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1120,1
    - Dst: SDP_WRITE_ALLOC_INT
      Src: /src/gpac/src/ietf/sdp.c:1121,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1122,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/sdp.c:1127,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1129,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1130,1
    - Dst: SDP_WRITE_ALLOC_INT
      Src: /src/gpac/src/ietf/sdp.c:1131,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1132,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1133,1
    - Dst: SDP_WRITE_ALLOC_INT
      Src: /src/gpac/src/ietf/sdp.c:1134,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1136,1
    - Dst: SDP_WRITE_ALLOC_INT
      Src: /src/gpac/src/ietf/sdp.c:1137,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1139,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/sdp.c:1143,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1144,1
    - Dst: SDP_WRITE_ALLOC_INT
      Src: /src/gpac/src/ietf/sdp.c:1145,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/sdp.c:1147,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1148,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1149,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1151,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1152,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1155,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1159,1
    - Dst: SDP_WRITE_ALLOC_INT
      Src: /src/gpac/src/ietf/sdp.c:1160,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1161,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1165,1
    - Dst: SDP_WRITE_ALLOC_FLOAT
      Src: /src/gpac/src/ietf/sdp.c:1166,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1167,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:1172,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:1175,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:1178,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:1184,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:1186,1
    - Dst: TEST_SDP_WRITE_SINGLE
      Src: /src/gpac/src/ietf/sdp.c:1188,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1191,1
    - Dst: SDP_WRITE_ALLOC_INT
      Src: /src/gpac/src/ietf/sdp.c:1192,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1193,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/sdp.c:1197,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1198,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1199,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1201,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1202,1
    - Dst: SDP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/sdp.c:1204,1
    - Dst: gf_realloc
      Src: /src/gpac/src/ietf/sdp.c:1211,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 236
    argCount: 2
    argNames:
    - sdp
    - out_str_buf
    argTypes:
    - GF_SDPInfo*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1214
      start: 921
    functionDepth: 2
    functionLinenumber: 921
    functionLinenumberEnd: 1214
    functionName: gf_sdp_info_write
    functionSourceFile: /src/gpac/src/ietf/sdp.c
    functionUses: 0
    functionsReached:
    - SDP_WRITE_CONN
    - SDP_WRITE_ALLOC_INT
    - gf_sdp_info_check
    - TEST_SDP_WRITE_SINGLE
    - SDP_WRITE_ALLOC_STR
    - gf_list_enum
    - gf_malloc
    - SDP_WRITE_ALLOC_FLOAT
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sdp_info_write(GF_SDPInfo *sdp, char **out_str_buf)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:48,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - rtp
    - hdr
    - payload
    - size
    argTypes:
    - GF_RTPDepacketizer*
    - GF_RTPHeader*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 49
    functionName: gf_rtp_parse_pass_through
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - GF_RTPDepacketizer*::on_sl_packet
    linkageType: ''
    returnType: void
    signature: void gf_rtp_parse_pass_through(GF_RTPDepacketizer *rtp, GF_RTPHeader
      *hdr, u8 *payload, u32 size)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:58,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:59,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:64,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:65,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:69,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:70,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:72,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:73,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:74,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:76,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:77,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:108,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:109,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:117,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:125,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:134,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:143,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:149,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:152,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:157,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:170,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:175,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:182,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:189,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:198,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:232,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:248,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 149
    argCount: 4
    argNames:
    - rtp
    - hdr
    - payload
    - size
    argTypes:
    - GF_RTPDepacketizer*
    - GF_RTPHeader*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 249
    functionName: gf_rtp_parse_mpeg4
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - GF_RTPDepacketizer*::on_sl_packet
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_del
    - gf_bs_read_int
    - gf_bs_read_u16
    linkageType: ''
    returnType: void
    signature: void gf_rtp_parse_mpeg4(GF_RTPDepacketizer *rtp, GF_RTPHeader *hdr,
      u8 *payload, u32 size)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:266,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:267,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:268,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:269,1
    - Dst: GF_4CC
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:282,1
    - Dst: gf_mp3_frame_size
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:283,1
    - Dst: gf_mp3_num_channels
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:284,1
    - Dst: gf_mp3_sampling_rate
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:285,1
    - Dst: gf_mp3_window_size
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:287,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:296,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:303,1
    - Dst: gf_mp3_window_size
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:313,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 52
    argCount: 4
    argNames:
    - rtp
    - hdr
    - payload
    - size
    argTypes:
    - GF_RTPDepacketizer*
    - GF_RTPHeader*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 253
    functionDepth: 1
    functionLinenumber: 253
    functionLinenumberEnd: 318
    functionName: gf_rtp_parse_mpeg12_audio
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - gf_mp3_num_channels
    - gf_bs_new
    - gf_mp3_sampling_rate
    - GF_RTPDepacketizer*::on_sl_packet
    - gf_mp3_window_size
    - gf_bs_del
    - gf_mp3_frame_size
    - GF_4CC
    - gf_bs_read_u16
    linkageType: ''
    returnType: void
    signature: void gf_rtp_parse_mpeg12_audio(GF_RTPDepacketizer *rtp, GF_RTPHeader
      *hdr, u8 *payload, u32 size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:347,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 4
    argNames:
    - rtp
    - hdr
    - payload
    - size
    argTypes:
    - GF_RTPDepacketizer*
    - GF_RTPHeader*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 353
    functionName: gf_rtp_parse_mpeg12_video
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - GF_RTPDepacketizer*::on_sl_packet
    linkageType: ''
    returnType: void
    signature: void gf_rtp_parse_mpeg12_video(GF_RTPDepacketizer *rtp, GF_RTPHeader
      *hdr, u8 *payload, u32 size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:389,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:395,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 33
    argCount: 4
    argNames:
    - rtp
    - hdr
    - payload
    - size
    argTypes:
    - GF_RTPDepacketizer*
    - GF_RTPHeader*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 355
    functionDepth: 0
    functionLinenumber: 355
    functionLinenumberEnd: 399
    functionName: gf_rtp_parse_amr
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - GF_RTPDepacketizer*::on_sl_packet
    linkageType: ''
    returnType: void
    signature: void gf_rtp_parse_amr(GF_RTPDepacketizer *rtp, GF_RTPHeader *hdr, u8
      *payload, u32 size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:410,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:412,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:413,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:414,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:415,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:416,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:420,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:424,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:426,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:427,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:441,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:449,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:453,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 32
    argCount: 4
    argNames:
    - rtp
    - hdr
    - payload
    - size
    argTypes:
    - GF_RTPDepacketizer*
    - GF_RTPHeader*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 402
    functionDepth: 1
    functionLinenumber: 402
    functionLinenumberEnd: 455
    functionName: gf_rtp_parse_h263
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - GF_RTPDepacketizer*::on_sl_packet
    - gf_bs_get_position
    - gf_bs_del
    - gf_bs_read_int
    - gf_bs_read_u8
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: void
    signature: void gf_rtp_parse_h263(GF_RTPDepacketizer *rtp, GF_RTPHeader *hdr,
      u8 *payload, u32 size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:470,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:471,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:473,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:474,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:475,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:475,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:476,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:477,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:478,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:479,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:480,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:482,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:483,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:486,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:487,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:488,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:490,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 2
    argNames:
    - rtp
    - ts
    argTypes:
    - GF_RTPDepacketizer*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 457
    functionDepth: 1
    functionLinenumber: 457
    functionLinenumberEnd: 493
    functionName: gf_rtp_ttxt_flush
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_write_u24
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_write_u16
    - GF_RTPDepacketizer*::on_sl_packet
    - gf_bs_get_position
    - gf_bs_del
    - gf_bs_write_u8
    linkageType: ''
    returnType: void
    signature: void gf_rtp_ttxt_flush(GF_RTPDepacketizer *rtp, u32 ts)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:505,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:506,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:507,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:508,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:509,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:510,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:511,1
    - Dst: gf_rtp_ttxt_flush
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:516,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:525,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:526,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:527,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:528,1
    - Dst: gf_rtp_ttxt_flush
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:535,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:540,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:541,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:542,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:543,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:544,1
    - Dst: gf_rtp_ttxt_flush
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:560,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:564,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:568,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:569,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:574,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:574,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:575,1
    - Dst: gf_rtp_ttxt_flush
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:576,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:579,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:582,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:582,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:583,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:587,1
    - Dst: gf_rtp_ttxt_flush
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:590,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:593,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:594,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:595,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:596,1
    - Dst: gf_rtp_ttxt_flush
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:599,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:602,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 87
    argCount: 4
    argNames:
    - rtp
    - hdr
    - payload
    - size
    argTypes:
    - GF_RTPDepacketizer*
    - GF_RTPHeader*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 495
    functionDepth: 2
    functionLinenumber: 495
    functionLinenumberEnd: 603
    functionName: gf_rtp_parse_ttxt
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_bs_new
    - GF_RTPDepacketizer*::on_sl_packet
    - gf_bs_get_position
    - gf_rtp_ttxt_flush
    - gf_bs_skip_bytes
    - gf_bs_write_data
    - gf_bs_del
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_bs_available
    - gf_bs_read_u8
    - gf_bs_read_u24
    linkageType: ''
    returnType: void
    signature: void gf_rtp_parse_ttxt(GF_RTPDepacketizer *rtp, GF_RTPHeader *hdr,
      u8 *payload, u32 size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:613,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:614,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:635,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:638,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 26
    argCount: 3
    argNames:
    - rtp
    - hdr
    - missed_end
    argTypes:
    - GF_RTPDepacketizer*
    - GF_RTPHeader*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 639
      start: 605
    functionDepth: 1
    functionLinenumber: 605
    functionLinenumberEnd: 639
    functionName: gf_rtp_h264_flush
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_get_content
    - GF_RTPDepacketizer*::on_sl_packet
    - gf_bs_del
    linkageType: ''
    returnType: void
    signature: void gf_rtp_h264_flush(GF_RTPDepacketizer *rtp, GF_RTPHeader *hdr,
      Bool missed_end)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:682,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:690,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:720,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:725,1
    - Dst: gf_rtp_h264_flush
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:734,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:745,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:753,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:754,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:756,1
    - Dst: gf_rtp_h264_flush
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:757,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 91
    argCount: 4
    argNames:
    - rtp
    - hdr
    - payload
    - size
    argTypes:
    - GF_RTPDepacketizer*
    - GF_RTPHeader*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 759
      start: 641
    functionDepth: 2
    functionLinenumber: 641
    functionLinenumberEnd: 759
    functionName: gf_rtp_parse_h264
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_rtp_h264_flush
    - GF_RTPDepacketizer*::on_sl_packet
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: void
    signature: void gf_rtp_parse_h264(GF_RTPDepacketizer *rtp, GF_RTPHeader *hdr,
      u8 *payload, u32 size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:771,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:772,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:787,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:790,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 3
    argNames:
    - rtp
    - hdr
    - missed_end
    argTypes:
    - GF_RTPDepacketizer*
    - GF_RTPHeader*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 791
      start: 763
    functionDepth: 1
    functionLinenumber: 763
    functionLinenumberEnd: 791
    functionName: gf_rtp_hevc_vvc_flush
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_get_content
    - GF_RTPDepacketizer*::on_sl_packet
    - gf_bs_del
    linkageType: ''
    returnType: void
    signature: void gf_rtp_hevc_vvc_flush(GF_RTPDepacketizer *rtp, GF_RTPHeader *hdr,
      Bool missed_end)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:828,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:836,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:858,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:863,1
    - Dst: gf_rtp_hevc_vvc_flush
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:872,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:884,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:892,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:893,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:895,1
    - Dst: gf_rtp_hevc_vvc_flush
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:896,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 66
    argCount: 4
    argNames:
    - rtp
    - hdr
    - payload
    - size
    argTypes:
    - GF_RTPDepacketizer*
    - GF_RTPHeader*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 898
      start: 796
    functionDepth: 2
    functionLinenumber: 796
    functionLinenumberEnd: 898
    functionName: gf_rtp_parse_hevc
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - GF_RTPDepacketizer*::on_sl_packet
    - gf_bs_write_data
    - gf_rtp_hevc_vvc_flush
    - gf_bs_write_u32
    linkageType: ''
    returnType: void
    signature: void gf_rtp_parse_hevc(GF_RTPDepacketizer *rtp, GF_RTPHeader *hdr,
      u8 *payload, u32 size)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:936,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:944,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:968,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:973,1
    - Dst: gf_rtp_hevc_vvc_flush
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:982,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:995,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1001,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1002,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1004,1
    - Dst: gf_rtp_hevc_vvc_flush
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1005,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 65
    argCount: 4
    argNames:
    - rtp
    - hdr
    - payload
    - size
    argTypes:
    - GF_RTPDepacketizer*
    - GF_RTPHeader*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1007
      start: 904
    functionDepth: 2
    functionLinenumber: 904
    functionLinenumberEnd: 1007
    functionName: gf_rtp_parse_vvc
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - GF_RTPDepacketizer*::on_sl_packet
    - gf_bs_write_data
    - gf_rtp_hevc_vvc_flush
    - gf_bs_write_u32
    linkageType: ''
    returnType: void
    signature: void gf_rtp_parse_vvc(GF_RTPDepacketizer *rtp, GF_RTPHeader *hdr, u8
      *payload, u32 size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1031,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 4
    argNames:
    - rtp
    - hdr
    - payload
    - size
    argTypes:
    - GF_RTPDepacketizer*
    - GF_RTPHeader*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1039
      start: 1011
    functionDepth: 0
    functionLinenumber: 1011
    functionLinenumberEnd: 1039
    functionName: gf_rtp_parse_latm
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - GF_RTPDepacketizer*::on_sl_packet
    linkageType: ''
    returnType: void
    signature: void gf_rtp_parse_latm(GF_RTPDepacketizer *rtp, GF_RTPHeader *hdr,
      u8 *payload, u32 size)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1069,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1070,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1071,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1075,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1081,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1083,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1084,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1088,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1092,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1093,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1094,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1097,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1099,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1102,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1103,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1106,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1109,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1113,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1114,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 63
    argCount: 4
    argNames:
    - rtp
    - hdr
    - payload
    - size
    argTypes:
    - GF_RTPDepacketizer*
    - GF_RTPHeader*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1119
      start: 1043
    functionDepth: 1
    functionLinenumber: 1043
    functionLinenumberEnd: 1119
    functionName: gf_rtp_parse_3gpp_dims
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - GF_RTPDepacketizer*::on_sl_packet
    - gf_bs_get_content
    - gf_bs_write_u16
    - gf_bs_del
    - gf_bs_write_data
    - gf_bs_read_u16
    - gf_bs_write_u32
    linkageType: ''
    returnType: void
    signature: void gf_rtp_parse_3gpp_dims(GF_RTPDepacketizer *rtp, GF_RTPHeader *hdr,
      u8 *payload, u32 size)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1139,1
    - Dst: gf_eac3_parser
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1144,1
    - Dst: gf_ac3_parser
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1148,1
    - Dst: gf_odf_ac3_cfg_write
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1159,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1162,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1172,1
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1176,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 49
    argCount: 5
    argNames:
    - rtp
    - hdr
    - payload
    - size
    - is_eac3
    argTypes:
    - GF_RTPDepacketizer*
    - GF_RTPHeader*
    - u8*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1178
      start: 1125
    functionDepth: 1
    functionLinenumber: 1125
    functionLinenumberEnd: 1178
    functionName: gf_rtp_parse_ac3_eac3
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - gf_eac3_parser
    - GF_RTPDepacketizer*::on_sl_packet
    - memset
    - gf_odf_ac3_cfg_write
    - gf_ac3_parser
    linkageType: ''
    returnType: void
    signature: void gf_rtp_parse_ac3_eac3(GF_RTPDepacketizer *rtp, GF_RTPHeader *hdr,
      u8 *payload, u32 size, Bool is_eac3)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_parse_ac3_eac3
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - rtp
    - hdr
    - payload
    - size
    argTypes:
    - GF_RTPDepacketizer*
    - GF_RTPHeader*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1182
      start: 1179
    functionDepth: 2
    functionLinenumber: 1179
    functionLinenumberEnd: 1182
    functionName: gf_rtp_parse_ac3
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - gf_rtp_parse_ac3_eac3
    linkageType: ''
    returnType: void
    signature: void gf_rtp_parse_ac3(GF_RTPDepacketizer *rtp, GF_RTPHeader *hdr, u8
      *payload, u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_parse_ac3_eac3
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - rtp
    - hdr
    - payload
    - size
    argTypes:
    - GF_RTPDepacketizer*
    - GF_RTPHeader*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1186
      start: 1183
    functionDepth: 2
    functionLinenumber: 1183
    functionLinenumberEnd: 1186
    functionName: gf_rtp_parse_eac3
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - gf_rtp_parse_ac3_eac3
    linkageType: ''
    returnType: void
    signature: void gf_rtp_parse_eac3(GF_RTPDepacketizer *rtp, GF_RTPHeader *hdr,
      u8 *payload, u32 size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_RTPDepacketizer*::on_sl_packet
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1197,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - rtp
    - hdr
    - payload
    - size
    argTypes:
    - GF_RTPDepacketizer*
    - GF_RTPHeader*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1200
      start: 1189
    functionDepth: 0
    functionLinenumber: 1189
    functionLinenumberEnd: 1200
    functionName: gf_rtp_parse_opus
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - GF_RTPDepacketizer*::on_sl_packet
    linkageType: ''
    returnType: void
    signature: void gf_rtp_parse_opus(GF_RTPDepacketizer *rtp, GF_RTPHeader *hdr,
      u8 *payload, u32 size)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1208,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1209,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1210,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1212,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1213,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1214,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1219,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1222,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1227,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1228,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1228,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1233,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1234,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1235,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1235,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1236,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1237,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1238,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1239,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1241,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1243,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1244,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1245,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1246,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1247,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1248,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1249,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1250,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 48
    argCount: 2
    argNames:
    - map
    - media
    argTypes:
    - GF_RTPMap*
    - GF_SDPMedia*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1252
      start: 1204
    functionDepth: 1
    functionLinenumber: 1204
    functionLinenumberEnd: 1252
    functionName: gf_rtp_get_payload_type
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - atoi
    - stricmp
    - gf_list_enum
    linkageType: ''
    returnType: u32
    signature: u32 gf_rtp_get_payload_type(GF_RTPMap *map, GF_SDPMedia *media)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1266,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1268,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1270,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1274,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1275,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1277,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1282,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1283,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1285,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1287,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1288,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1293,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1294,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1297,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1298,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1301,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1302,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1304,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1305,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1306,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1307,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1309,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1309,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1309,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1309,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1315,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1321,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1321,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1322,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1322,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1323,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1323,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1324,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1324,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1325,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1325,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1326,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1326,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1327,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1327,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1328,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1328,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1331,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1334,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1335,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1338,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1339,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1344,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1345,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1345,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1350,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1351,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1352,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1353,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1354,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1355,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1356,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1357,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1357,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1361,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1362,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 95
    argCount: 3
    argNames:
    - rtp
    - param_name
    - param_val
    argTypes:
    - GF_RTPDepacketizer*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1365
      start: 1255
    functionDepth: 1
    functionLinenumber: 1255
    functionLinenumberEnd: 1365
    functionName: payt_set_param
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - sscanf
    - gf_bs_new
    - gf_bs_get_content
    - strcpy
    - gf_bs_del
    - gf_bs_write_u8
    - atoi
    - stricmp
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err payt_set_param(GF_RTPDepacketizer *rtp, char *param_name, char
      *param_val)
  - BBCount: 77
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1373,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1375,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1381,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1386,1
    - Dst: payt_set_param
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1387,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1399,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1400,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1401,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1402,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1403,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1404,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1407,1
    - Dst: memset
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1410,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1411,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1412,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1414,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1418,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1425,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1427,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1431,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1433,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1434,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1435,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1437,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1438,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1440,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1441,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1442,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1443,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1476,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1480,1
    - Dst: strnicmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1484,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1489,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1501,1
    - Dst: memset
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1503,1
    - Dst: gf_m4a_write_config
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1510,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1545,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1546,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1548,1
    - Dst: memset
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1567,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1573,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1581,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1585,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1587,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1587,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1588,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1588,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1589,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1589,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1590,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1590,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1591,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1591,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1592,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1592,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1593,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1593,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1594,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1599,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1600,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1601,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1602,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1603,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1604,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1605,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1606,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1607,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1608,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1609,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1610,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1611,1
    - Dst: strchr
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1615,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1620,1
    - Dst: strchr
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1625,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1627,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1629,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1631,1
    - Dst: strchr
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1633,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1640,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1641,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1642,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1643,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1644,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1647,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1658,1
    - Dst: gf_odf_avc_cfg_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1662,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1674,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1678,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1680,1
    - Dst: strchr
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1687,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1690,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1691,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1692,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1697,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1699,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1700,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1702,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1704,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1707,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1718,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1718,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1719,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1723,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1736,1
    - Dst: gf_odf_vvc_cfg_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1740,1
    - Dst: gf_odf_hevc_cfg_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1746,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1757,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1761,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1764,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1765,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1767,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1770,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1771,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1773,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1776,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1777,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1779,1
    - Dst: strchr
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1790,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1793,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1794,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1795,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1798,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1800,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1801,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1802,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1804,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1813,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1814,1
    - Dst: gf_odf_vvc_cfg_write
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1818,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1819,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1821,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1822,1
    - Dst: gf_odf_opus_cfg_write
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1873,1
    CyclomaticComplexity: 117
    EdgeCount: 117
    ICount: 431
    argCount: 3
    argNames:
    - rtp
    - map
    - media
    argTypes:
    - GF_RTPDepacketizer*
    - GF_RTPMap*
    - GF_SDPMedia*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1885
      start: 1367
    functionDepth: 2
    functionLinenumber: 1367
    functionLinenumberEnd: 1885
    functionName: gf_rtp_payt_setup
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_vvc_cfg_del
    - gf_bs_new
    - gf_odf_avc_cfg_write
    - gf_odf_avc_cfg_del
    - GF_SAFEALLOC
    - gf_bs_write_u16
    - gf_list_count
    - memset
    - gf_odf_opus_cfg_write
    - atoi
    - strchr
    - gf_odf_hevc_cfg_new
    - gf_list_get
    - gf_list_new
    - gf_bs_get_content
    - memcpy
    - gf_odf_hevc_cfg_write
    - gf_list_add
    - stricmp
    - sscanf
    - gf_bs_write_u24
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_align
    - gf_bs_write_data
    - strnicmp
    - gf_m4a_write_config
    - gf_odf_avc_cfg_new
    - gf_list_enum
    - strlen
    - payt_set_param
    - gf_malloc
    - gf_odf_hevc_cfg_del
    - gf_odf_vvc_cfg_write
    - gf_base64_decode
    - gf_bs_del
    - gf_odf_vvc_cfg_new
    - gf_bs_read_int
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_rtp_payt_setup(GF_RTPDepacketizer *rtp, GF_RTPMap *map, GF_SDPMedia
      *media)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - payt
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1925
      start: 1915
    functionDepth: 0
    functionLinenumber: 1915
    functionLinenumberEnd: 1925
    functionName: gf_rtp_is_valid_static_payt
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_RTPStaticMap
    signature: GF_RTPStaticMap *gf_rtp_is_valid_static_payt(u32 payt)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1940,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1943,1
    - Dst: gf_rtp_is_valid_static_payt
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1944,1
    - Dst: gf_rtp_is_valid_static_payt
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1948,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1950,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1959,1
    - Dst: strchr
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1962,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1964,1
    - Dst: gf_rtp_is_valid_static_payt
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1965,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1967,1
    - Dst: gf_rtp_get_payload_type
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1974,1
    - Dst: gf_rtp_is_valid_static_payt
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1979,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1988,1
    - Dst: gf_rtp_payt_setup
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1995,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:1997,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:2001,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 62
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2005
      start: 1928
    functionDepth: 3
    functionLinenumber: 1928
    functionLinenumberEnd: 2005
    functionName: GF_RTPDepacketizer *gf_rtp_depacketizer_new(GF_SDPMedia *media,
      u32 hdr_payt, gf_rtp_packet_cbk sl_packet_cbk, void *udta)
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_rtp_is_valid_static_payt
    - gf_list_get
    - gf_rtp_payt_setup
    - gf_assert
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_count
    - gf_rtp_get_payload_type
    - atoi
    - strchr
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_RTPDepacketizer *gf_rtp_depacketizer_new(GF_SDPMedia *media,
      u32 hdr_payt, gf_rtp_packet_cbk sl_packet_cbk, void *udta)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:2011,1
    - Dst: memset
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:2016,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - rtp
    - full_reset
    argTypes:
    - GF_RTPDepacketizer*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2020
      start: 2007
    functionDepth: 1
    functionLinenumber: 2007
    functionLinenumberEnd: 2020
    functionName: gf_rtp_depacketizer_reset
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_depacketizer_reset(GF_RTPDepacketizer *rtp, Bool full_reset)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_depacketizer_reset
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:2026,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:2027,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:2028,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:2029,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - rtp
    argTypes:
    - GF_RTPDepacketizer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2031
      start: 2022
    functionDepth: 2
    functionLinenumber: 2022
    functionLinenumberEnd: 2031
    functionName: gf_rtp_depacketizer_del
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_rtp_depacketizer_reset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_depacketizer_del(GF_RTPDepacketizer *rtp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:2036,1
    - Dst: GF_RTPDepacketizer*::depacketize
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:2038,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - rtp
    - hdr
    - payload
    - size
    argTypes:
    - GF_RTPDepacketizer*
    - GF_RTPHeader*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2039
      start: 2033
    functionDepth: 1
    functionLinenumber: 2033
    functionLinenumberEnd: 2039
    functionName: gf_rtp_depacketizer_process
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - GF_RTPDepacketizer*::depacketize
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_depacketizer_process(GF_RTPDepacketizer *rtp, GF_RTPHeader
      *hdr, u8 *payload, u32 size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/ietf/rtp_depacketizer.c:2045,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 2
    argNames:
    - rtp
    - slc
    argTypes:
    - GF_RTPDepacketizer*
    - GF_SLConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2084
      start: 2043
    functionDepth: 0
    functionLinenumber: 2043
    functionLinenumberEnd: 2084
    functionName: gf_rtp_depacketizer_get_slconfig
    functionSourceFile: /src/gpac/src/ietf/rtp_depacketizer.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: void gf_rtp_depacketizer_get_slconfig(GF_RTPDepacketizer *rtp, GF_SLConfig
      *slc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/rtsp_response.c:37,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/rtsp_response.c:39,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/rtsp_response.c:40,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/rtsp_response.c:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 43
    functionName: GF_RTSPResponse *gf_rtsp_response_new()
    functionSourceFile: /src/gpac/src/ietf/rtsp_response.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_RTSPResponse *gf_rtsp_response_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - hdr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: RSP_FREE_CLEAN
    functionSourceFile: /src/gpac/src/ietf/rtsp_response.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RSP_FREE_CLEAN(hdr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:55,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:56,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:57,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:58,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:59,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:60,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:61,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:62,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:63,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:64,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:65,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:66,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:67,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:68,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:69,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:70,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:71,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:72,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:73,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:74,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:75,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:76,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:77,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:78,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:79,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:80,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:81,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:82,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:83,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:84,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:85,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:86,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:87,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:88,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:89,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:92,1
    - Dst: RSP_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_response.c:93,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_response.c:97,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtsp_response.c:102,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/rtsp_response.c:103,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/ietf/rtsp_response.c:104,1
    - Dst: gf_rtsp_transport_del
      Src: /src/gpac/src/ietf/rtsp_response.c:105,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtsp_response.c:108,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/rtsp_response.c:109,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/ietf/rtsp_response.c:110,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_response.c:111,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_response.c:112,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtsp_response.c:114,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/rtsp_response.c:115,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/ietf/rtsp_response.c:116,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_response.c:117,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_response.c:118,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_response.c:119,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 62
    argCount: 1
    argNames:
    - rsp
    argTypes:
    - GF_RTSPResponse*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 121
    functionName: gf_rtsp_response_reset
    functionSourceFile: /src/gpac/src/ietf/rtsp_response.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_rtsp_transport_del
    - RSP_FREE_CLEAN
    - gf_list_count
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_response_reset(GF_RTSPResponse *rsp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/ietf/rtsp_response.c:128,1
    - Dst: gf_list_del
      Src: /src/gpac/src/ietf/rtsp_response.c:129,1
    - Dst: gf_list_del
      Src: /src/gpac/src/ietf/rtsp_response.c:130,1
    - Dst: gf_list_del
      Src: /src/gpac/src/ietf/rtsp_response.c:131,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_response.c:132,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - rsp
    argTypes:
    - GF_RTSPResponse*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 123
    functionDepth: 2
    functionLinenumber: 123
    functionLinenumberEnd: 133
    functionName: gf_rtsp_response_del
    functionSourceFile: /src/gpac/src/ietf/rtsp_response.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_rtsp_response_reset
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_response_del(GF_RTSPResponse *rsp)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/ietf/rtsp_response.c:142,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/rtsp_response.c:144,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_response.c:146,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_response.c:148,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 151
    functionName: GF_RTSPRange *gf_rtsp_range_parse(char *range_buf)
    functionSourceFile: /src/gpac/src/ietf/rtsp_response.c
    functionUses: 0
    functionsReached:
    - sscanf
    - strstr
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_RTSPRange *gf_rtsp_range_parse(char *range_buf)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_response.c:157,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_response.c:158,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_response.c:159,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_response.c:160,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - transp
    argTypes:
    - GF_RTSPTransport*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 161
    functionName: gf_rtsp_transport_del
    functionSourceFile: /src/gpac/src/ietf/rtsp_response.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_transport_del(GF_RTSPTransport *transp)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtsp_response.c:170,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtsp_response.c:171,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:173,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:174,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:175,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 177
    functionName: GF_RTSPTransport *gf_rtsp_transport_clone(GF_RTSPTransport *original)
    functionSourceFile: /src/gpac/src/ietf/rtsp_response.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_strdup
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_RTSPTransport *gf_rtsp_transport_clone(GF_RTSPTransport
      *original)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/rtsp_response.c:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 185
    functionName: GF_RTSPRange *gf_rtsp_range_new()
    functionSourceFile: /src/gpac/src/ietf/rtsp_response.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_RTSPRange *gf_rtsp_range_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_response.c:191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - range
    argTypes:
    - GF_RTSPRange*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 192
    functionName: gf_rtsp_range_del
    functionSourceFile: /src/gpac/src/ietf/rtsp_response.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_range_del(GF_RTSPRange *range)
  - BBCount: 59
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:202,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:202,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:203,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:203,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:204,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:204,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:205,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:205,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:206,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:206,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:207,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_response.c:207,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:208,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_response.c:208,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:209,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:209,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:210,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_response.c:210,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:211,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:211,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:212,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:212,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:213,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:213,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:214,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:214,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:215,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_response.c:215,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:216,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:216,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:217,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:217,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:218,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:218,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:219,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_response.c:219,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:220,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:220,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:221,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:221,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:222,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:222,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:223,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:223,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:224,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:224,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:225,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:225,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:226,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:226,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:227,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:227,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:228,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:228,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:229,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:229,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:230,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:230,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:231,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:231,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:232,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:232,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:233,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:233,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:234,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_response.c:234,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:235,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:235,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:236,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_response.c:236,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:237,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:237,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:238,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:238,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:239,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:239,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:240,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:240,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:241,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:241,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:242,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:242,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:243,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_response.c:246,1
    - Dst: gf_rtsp_transport_parse
      Src: /src/gpac/src/ietf/rtsp_response.c:248,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/rtsp_response.c:249,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:253,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_response.c:254,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:255,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_response.c:259,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_response.c:261,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:266,1
    - Dst: gf_rtsp_range_parse
      Src: /src/gpac/src/ietf/rtsp_response.c:266,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:268,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_response.c:271,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/rtsp_response.c:274,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_response.c:279,1
    - Dst: strstr
      Src: /src/gpac/src/ietf/rtsp_response.c:281,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_response.c:282,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_response.c:284,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtsp_response.c:286,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:288,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:288,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:289,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_response.c:289,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:290,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_response.c:291,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:293,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_response.c:294,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/rtsp_response.c:297,1
    - Dst: strnicmp
      Src: /src/gpac/src/ietf/rtsp_response.c:301,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtsp_response.c:302,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:303,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_response.c:305,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:305,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/rtsp_response.c:306,1
    CyclomaticComplexity: 63
    EdgeCount: 63
    ICount: 149
    argCount: 3
    argNames:
    - rsp
    - Header
    - Value
    argTypes:
    - GF_RTSPResponse*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 309
    functionName: gf_rtsp_set_response_value
    functionSourceFile: /src/gpac/src/ietf/rtsp_response.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - sscanf
    - GF_SAFEALLOC
    - strcpy
    - gf_rtsp_range_parse
    - gf_rtsp_transport_parse
    - strlen
    - gf_token_get
    - strstr
    - strnicmp
    - gf_list_add
    - stricmp
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void gf_rtsp_set_response_value(GF_RTSPResponse *rsp, char *Header,
      char *Value)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_token_get_line
      Src: /src/gpac/src/ietf/rtsp_response.c:326,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_response.c:330,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_response.c:333,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_response.c:336,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtsp_response.c:339,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_response.c:341,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_response.c:342,1
    - Dst: gf_rtsp_parse_header
      Src: /src/gpac/src/ietf/rtsp_response.c:344,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - sess
    - rsp
    - BodyStart
    argTypes:
    - GF_RTSPSession*
    - GF_RTSPResponse*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 314
    functionDepth: 1
    functionLinenumber: 314
    functionLinenumberEnd: 345
    functionName: RTSP_ParseResponseHeader
    functionSourceFile: /src/gpac/src/ietf/rtsp_response.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_token_get_line
    - gf_token_get
    - strcmp
    - atoi
    - gf_rtsp_parse_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err RTSP_ParseResponseHeader(GF_RTSPSession *sess, GF_RTSPResponse
      *rsp, u32 BodyStart)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_response.c:354,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_response.c:355,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_response.c:356,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_response.c:356,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_response.c:357,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_response.c:357,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_response.c:358,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_response.c:358,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_response.c:359,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_response.c:359,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_response.c:360,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_response.c:360,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 349
    functionDepth: 0
    functionLinenumber: 349
    functionLinenumberEnd: 362
    functionName: IsRTSPMessage
    functionSourceFile: /src/gpac/src/ietf/rtsp_response.c
    functionUses: 0
    functionsReached:
    - strncmp
    - strlen
    linkageType: ''
    returnType: u32
    signature: u32 IsRTSPMessage(char *buffer)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/ietf/rtsp_response.c:373,1
    - Dst: gf_rtsp_check_connection
      Src: /src/gpac/src/ietf/rtsp_response.c:375,1
    - Dst: gf_rtsp_fill_buffer
      Src: /src/gpac/src/ietf/rtsp_response.c:380,1
    - Dst: IsRTSPMessage
      Src: /src/gpac/src/ietf/rtsp_response.c:385,1
    - Dst: gf_rtsp_session_read
      Src: /src/gpac/src/ietf/rtsp_response.c:386,1
    - Dst: gf_rtsp_read_reply
      Src: /src/gpac/src/ietf/rtsp_response.c:390,1
    - Dst: gf_rtsp_get_body_info
      Src: /src/gpac/src/ietf/rtsp_response.c:395,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_response.c:397,1
    - Dst: RTSP_ParseResponseHeader
      Src: /src/gpac/src/ietf/rtsp_response.c:402,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_response.c:408,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtsp_response.c:412,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtsp_response.c:413,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_response.c:416,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_response.c:433,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtsp_response.c:439,1
    - Dst: gf_rtsp_get_response
      Src: /src/gpac/src/ietf/rtsp_response.c:445,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_response.c:449,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_response.c:455,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_response.c:462,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_response.c:467,1
    - Dst: gf_rtsp_session_reset
      Src: /src/gpac/src/ietf/rtsp_response.c:473,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtsp_response.c:475,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtsp_response.c:480,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 94
    argCount: 2
    argNames:
    - sess
    - rsp
    argTypes:
    - GF_RTSPSession*
    - GF_RTSPResponse*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 365
    functionDepth: 4
    functionLinenumber: 365
    functionLinenumberEnd: 485
    functionName: gf_rtsp_get_response
    functionSourceFile: /src/gpac/src/ietf/rtsp_response.c
    functionUses: 1
    functionsReached:
    - stricmp
    - IsRTSPMessage
    - gf_rtsp_response_reset
    - gf_rtsp_read_reply
    - GF_LOG
    - gf_rtsp_session_read
    - memcpy
    - strcpy
    - gf_rtsp_check_connection
    - gf_sk_del
    - gf_rtsp_fill_buffer
    - strncmp
    - strcmp
    - gf_rtsp_session_reset
    - RTSP_ParseResponseHeader
    - gf_rtsp_get_body_info
    - gf_rtsp_get_response
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_get_response(GF_RTSPSession *sess, GF_RTSPResponse
      *rsp)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtsp_response.c:496,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:500,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:501,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_response.c:502,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:503,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:504,1
    - Dst: gf_rtsp_nc_to_string
      Src: /src/gpac/src/ietf/rtsp_response.c:504,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:505,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:508,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:509,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:510,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:511,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:512,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:514,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_response.c:515,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:516,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:519,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_response.c:520,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:521,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:523,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:524,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:525,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:526,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:527,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:528,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:531,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_response.c:532,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_response.c:532,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:533,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:535,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:536,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:538,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_response.c:539,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:540,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:542,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:543,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:544,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:545,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:546,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:547,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:548,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:549,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:550,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:551,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:552,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:556,1
    - Dst: RTSP_WRITE_FLOAT_WITHOUT_CHECK
      Src: /src/gpac/src/ietf/rtsp_response.c:557,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:558,1
    - Dst: RTSP_WRITE_FLOAT_WITHOUT_CHECK
      Src: /src/gpac/src/ietf/rtsp_response.c:560,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:562,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:565,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:566,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:567,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtsp_response.c:570,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:572,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:577,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/rtsp_response.c:578,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:581,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:582,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:583,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:585,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_response.c:586,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:587,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_response.c:588,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:590,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:594,1
    - Dst: RTSP_WRITE_FLOAT_WITHOUT_CHECK
      Src: /src/gpac/src/ietf/rtsp_response.c:595,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:596,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:598,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:599,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:601,1
    - Dst: RTSP_WRITE_FLOAT_WITHOUT_CHECK
      Src: /src/gpac/src/ietf/rtsp_response.c:602,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:603,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:605,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtsp_response.c:608,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:610,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:614,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/rtsp_response.c:615,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:618,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:619,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:621,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:622,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:625,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:626,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:629,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:630,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:633,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_response.c:634,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:636,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_response.c:637,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:643,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_response.c:644,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:647,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_response.c:648,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:652,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_response.c:653,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:654,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_response.c:655,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:658,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_response.c:659,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:660,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_response.c:661,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:664,1
    - Dst: RTSP_WRITE_HEX
      Src: /src/gpac/src/ietf/rtsp_response.c:665,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:669,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:672,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:673,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:674,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:675,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:676,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtsp_response.c:679,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/rtsp_response.c:681,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:682,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_response.c:683,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:686,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_response.c:688,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_response.c:691,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 171
    argCount: 4
    argNames:
    - sess
    - rsp
    - out_buffer
    - out_size
    argTypes:
    - GF_RTSPSession*
    - GF_RTSPResponse*
    - unsigned char**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 693
      start: 487
    functionDepth: 1
    functionLinenumber: 487
    functionLinenumberEnd: 693
    functionName: RTSP_WriteResponse
    functionSourceFile: /src/gpac/src/ietf/rtsp_response.c
    functionUses: 0
    functionsReached:
    - RTSP_WRITE_HEADER
    - gf_list_get
    - RTSP_WRITE_ALLOC_STR
    - strlen
    - RTSP_WRITE_INT
    - gf_list_count
    - gf_rtsp_nc_to_string
    - gf_malloc
    - RTSP_WRITE_FLOAT_WITHOUT_CHECK
    - RTSP_WRITE_HEX
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err RTSP_WriteResponse(GF_RTSPSession *sess, GF_RTSPResponse *rsp,\n
      \                         unsigned char **out_buffer, u32 *out_size)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: RTSP_WriteResponse
      Src: /src/gpac/src/ietf/rtsp_response.c:708,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_response.c:710,1
    - Dst: gf_rtsp_send_data
      Src: /src/gpac/src/ietf/rtsp_response.c:712,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_response.c:714,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 2
    argNames:
    - sess
    - rsp
    argTypes:
    - GF_RTSPSession*
    - GF_RTSPResponse*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 716
      start: 696
    functionDepth: 2
    functionLinenumber: 696
    functionLinenumberEnd: 716
    functionName: gf_rtsp_send_response
    functionSourceFile: /src/gpac/src/ietf/rtsp_response.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_rtsp_send_data
    - RTSP_WriteResponse
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_send_response(GF_RTSPSession *sess, GF_RTSPResponse
      *rsp)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtsp_get_body_info
      Src: /src/gpac/src/ietf/rtsp_common.c:42,1
    - Dst: gf_rtsp_refill_buffer
      Src: /src/gpac/src/ietf/rtsp_common.c:53,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 19
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 64
    functionName: gf_rtsp_read_reply
    functionSourceFile: /src/gpac/src/ietf/rtsp_common.c
    functionUses: 1
    functionsReached:
    - gf_rtsp_refill_buffer
    - gf_rtsp_get_body_info
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_rtsp_read_reply(GF_RTSPSession *sess)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_token_find
      Src: /src/gpac/src/ietf/rtsp_common.c:77,1
    - Dst: gf_token_find
      Src: /src/gpac/src/ietf/rtsp_common.c:84,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_common.c:89,1
    - Dst: strstr
      Src: /src/gpac/src/ietf/rtsp_common.c:94,1
    - Dst: strstr
      Src: /src/gpac/src/ietf/rtsp_common.c:95,1
    - Dst: strchr
      Src: /src/gpac/src/ietf/rtsp_common.c:100,1
    - Dst: atoi
      Src: /src/gpac/src/ietf/rtsp_common.c:103,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 4
    argNames:
    - sess
    - body_start
    - body_size
    - skip_tunnel
    argTypes:
    - GF_RTSPSession*
    - u32*
    - u32*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 108
    functionName: gf_rtsp_get_body_info
    functionSourceFile: /src/gpac/src/ietf/rtsp_common.c
    functionUses: 2
    functionsReached:
    - gf_token_find
    - strstr
    - strncmp
    - atoi
    - strchr
    linkageType: ''
    returnType: void
    signature: void gf_rtsp_get_body_info(GF_RTSPSession *sess, u32 *body_start, u32
      *body_size, Bool skip_tunnel)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_receive
      Src: /src/gpac/src/ietf/rtsp_common.c:118,1
    - Dst: SSL_pending
      Src: /src/gpac/src/ietf/rtsp_common.c:120,1
    - Dst: SSL_read
      Src: /src/gpac/src/ietf/rtsp_common.c:123,1
    - Dst: gf_sk_probe
      Src: /src/gpac/src/ietf/rtsp_common.c:126,1
    - Dst: SSL_get_error
      Src: /src/gpac/src/ietf/rtsp_common.c:128,1
    - Dst: gf_sk_receive
      Src: /src/gpac/src/ietf/rtsp_common.c:147,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 5
    argNames:
    - sess
    - sock
    - data
    - data_size
    - out_read
    argTypes:
    - GF_RTSPSession*
    - GF_Socket*
    - u8*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 150
    functionName: gf_rstp_do_read_sock
    functionSourceFile: /src/gpac/src/ietf/rtsp_common.c
    functionUses: 1
    functionsReached:
    - SSL_pending
    - SSL_read
    - gf_sk_receive
    - gf_sk_probe
    - SSL_get_error
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_rstp_do_read_sock(GF_RTSPSession *sess, GF_Socket *sock,
      u8 *data, u32 data_size, u32 *out_read)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtsp_fill_buffer
      Src: /src/gpac/src/ietf/rtsp_common.c:164,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtsp_common.c:166,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtsp_common.c:167,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtsp_common.c:168,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_common.c:169,1
    - Dst: gf_rstp_do_read_sock
      Src: /src/gpac/src/ietf/rtsp_common.c:175,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 154
    functionDepth: 2
    functionLinenumber: 154
    functionLinenumberEnd: 181
    functionName: gf_rtsp_refill_buffer
    functionSourceFile: /src/gpac/src/ietf/rtsp_common.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_rstp_do_read_sock
    - memcpy
    - gf_rtsp_fill_buffer
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_rtsp_refill_buffer(GF_RTSPSession *sess)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_rstp_do_read_sock
      Src: /src/gpac/src/ietf/rtsp_common.c:191,1
    - Dst: gf_rstp_do_read_sock
      Src: /src/gpac/src/ietf/rtsp_common.c:193,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 183
    functionDepth: 2
    functionLinenumber: 183
    functionLinenumberEnd: 200
    functionName: gf_rtsp_fill_buffer
    functionSourceFile: /src/gpac/src/ietf/rtsp_common.c
    functionUses: 4
    functionsReached:
    - gf_rstp_do_read_sock
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_rtsp_fill_buffer(GF_RTSPSession *sess)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/ietf/rtsp_common.c:212,1
    - Dst: strnicmp
      Src: /src/gpac/src/ietf/rtsp_common.c:212,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/rtsp_common.c:214,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_common.c:220,1
    - Dst: strstr
      Src: /src/gpac/src/ietf/rtsp_common.c:222,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_common.c:223,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_common.c:224,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtsp_common.c:226,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_common.c:231,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_common.c:236,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_common.c:237,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_common.c:238,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_common.c:240,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_common.c:241,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_common.c:242,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_common.c:244,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_common.c:245,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_common.c:246,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_common.c:247,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_common.c:250,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_common.c:251,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_common.c:258,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_common.c:258,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_common.c:259,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_common.c:259,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_common.c:260,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_common.c:261,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_common.c:266,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_common.c:267,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_common.c:272,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_common.c:273,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_common.c:277,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_common.c:277,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 74
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 203
    functionDepth: 1
    functionLinenumber: 203
    functionLinenumberEnd: 280
    functionName: gf_rtsp_transport_parse
    functionSourceFile: /src/gpac/src/ietf/rtsp_common.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_strdup
    - sscanf
    - GF_SAFEALLOC
    - strcpy
    - strstr
    - gf_token_get
    - strnicmp
    - stricmp
    linkageType: ''
    returnType: GF_RTSPTransport
    signature: GF_RTSPTransport *gf_rtsp_transport_parse(u8 *buffer)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtsp_common.c:293,1
    - Dst: gf_token_get_line
      Src: /src/gpac/src/ietf/rtsp_common.c:295,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_common.c:299,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_common.c:309,1
    - Dst: strcat
      Src: /src/gpac/src/ietf/rtsp_common.c:315,1
    - Dst: strcat
      Src: /src/gpac/src/ietf/rtsp_common.c:316,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_common.c:321,1
    - Dst: gf_rtsp_set_response_value
      Src: /src/gpac/src/ietf/rtsp_common.c:323,1
    - Dst: gf_rtsp_set_command_value
      Src: /src/gpac/src/ietf/rtsp_common.c:326,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtsp_common.c:333,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_common.c:340,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_common.c:344,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 45
    argCount: 5
    argNames:
    - buffer
    - BufferSize
    - BodyStart
    - com
    - rsp
    argTypes:
    - u8*
    - u32
    - u32
    - GF_RTSPCommand*
    - GF_RTSPResponse*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 284
    functionDepth: 2
    functionLinenumber: 284
    functionLinenumberEnd: 350
    functionName: gf_rtsp_parse_header
    functionSourceFile: /src/gpac/src/ietf/rtsp_common.c
    functionUses: 1
    functionsReached:
    - strcat
    - gf_token_get_line
    - gf_rtsp_set_command_value
    - strcpy
    - gf_token_get
    - gf_rtsp_set_response_value
    - strcmp
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_rtsp_parse_header(u8 *buffer, u32 BufferSize, u32 BodyStart,
      GF_RTSPCommand *com, GF_RTSPResponse *rsp)
  - BBCount: 45
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 90
    argCount: 1
    argNames:
    - ErrCode
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 353
    functionDepth: 0
    functionLinenumber: 353
    functionLinenumberEnd: 446
    functionName: gf_rtsp_nc_to_string
    functionSourceFile: /src/gpac/src/ietf/rtsp_common.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_rtsp_nc_to_string(u32 ErrCode)
  - BBCount: 19
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 51
    argCount: 2
    argNames:
    - builder
    - slh
    argTypes:
    - GP_RTPPacketizer*
    - GF_SLHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 102
    functionName: gf_rtp_build_au_hdr_size
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_mpeg4.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_rtp_build_au_hdr_size(GP_RTPPacketizer *builder, GF_SLHeader
      *slh)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:113,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:114,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:120,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:129,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:130,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:142,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:144,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:151,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:159,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:170,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:176,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:181,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:187,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:192,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:197,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 78
    argCount: 3
    argNames:
    - builder
    - PayloadSize
    - RTP_TS
    argTypes:
    - GP_RTPPacketizer*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 202
    functionName: gf_rtp_build_au_hdr_write
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_mpeg4.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_int
    - gf_bs_write_long_int
    linkageType: ''
    returnType: u32
    signature: u32 gf_rtp_build_au_hdr_write(GP_RTPPacketizer *builder, u32 PayloadSize,
      u32 RTP_TS)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:261,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:262,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:269,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:273,1
    - Dst: gf_rtp_build_au_hdr_size
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:287,1
    - Dst: gf_rtp_build_au_hdr_write
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:317,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:321,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:323,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:352,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:357,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:361,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:362,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:364,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:365,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:369,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:371,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:377,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:379,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:383,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:386,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:387,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:390,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:391,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 128
    argCount: 5
    argNames:
    - builder
    - data
    - data_size
    - IsAUEnd
    - FullAUSize
    argTypes:
    - GP_RTPPacketizer*
    - u8*
    - u32
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 205
    functionDepth: 2
    functionLinenumber: 205
    functionLinenumberEnd: 399
    functionName: gp_rtp_builder_do_mpeg4
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_mpeg4.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GP_RTPPacketizer*::OnDataReference
    - gf_rtp_build_au_hdr_size
    - gf_bs_new
    - gf_bs_seek
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_bs_del
    - GP_RTPPacketizer*::OnData
    - GP_RTPPacketizer*::OnNewPacket
    - gf_rtp_build_au_hdr_write
    - GP_RTPPacketizer*::OnPacketDone
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gp_rtp_builder_do_mpeg4(GP_RTPPacketizer *builder, u8 *data,
      u32 data_size, u8 IsAUEnd, u32 FullAUSize)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:419,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:432,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:464,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:470,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:475,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:477,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:483,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:490,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:491,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:511,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:515,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:517,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:524,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:531,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 97
    argCount: 5
    argNames:
    - builder
    - nalu
    - nalu_size
    - IsAUEnd
    - FullAUSize
    argTypes:
    - GP_RTPPacketizer*
    - u8*
    - u32
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 537
      start: 402
    functionDepth: 2
    functionLinenumber: 402
    functionLinenumberEnd: 537
    functionName: gp_rtp_builder_do_avc
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_mpeg4.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - GP_RTPPacketizer*::OnDataReference
    - GP_RTPPacketizer*::OnData
    - GP_RTPPacketizer*::OnNewPacket
    - GP_RTPPacketizer*::OnPacketDone
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gp_rtp_builder_do_avc(GP_RTPPacketizer *builder, u8 *nalu, u32
      nalu_size, u8 IsAUEnd, u32 FullAUSize)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:554,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:555,1
    - Dst: memset
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:556,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:558,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:570,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:611,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:616,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:618,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:624,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:625,1
    - Dst: memset
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:626,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:628,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:638,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:639,1
    - Dst: memset
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:652,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:657,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:668,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:672,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:674,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:681,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:688,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 107
    argCount: 5
    argNames:
    - builder
    - nalu
    - nalu_size
    - IsAUEnd
    - FullAUSize
    argTypes:
    - GP_RTPPacketizer*
    - u8*
    - u32
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 693
      start: 539
    functionDepth: 2
    functionLinenumber: 539
    functionLinenumberEnd: 693
    functionName: gp_rtp_builder_do_hevc
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_mpeg4.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - GP_RTPPacketizer*::OnDataReference
    - GP_RTPPacketizer*::OnData
    - memset
    - GP_RTPPacketizer*::OnNewPacket
    - strlen
    - GP_RTPPacketizer*::OnPacketDone
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gp_rtp_builder_do_hevc(GP_RTPPacketizer *builder, u8 *nalu,
      u32 nalu_size, u8 IsAUEnd, u32 FullAUSize)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:710,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:711,1
    - Dst: memset
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:712,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:714,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:726,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:765,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:770,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:772,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:778,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:779,1
    - Dst: memset
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:780,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:782,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:792,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:793,1
    - Dst: memset
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:808,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:812,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:830,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:834,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:836,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:843,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:850,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 111
    argCount: 5
    argNames:
    - builder
    - nalu
    - nalu_size
    - IsAUEnd
    - FullAUSize
    argTypes:
    - GP_RTPPacketizer*
    - u8*
    - u32
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 855
      start: 695
    functionDepth: 2
    functionLinenumber: 695
    functionLinenumberEnd: 855
    functionName: gp_rtp_builder_do_vvc
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_mpeg4.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - GP_RTPPacketizer*::OnDataReference
    - GP_RTPPacketizer*::OnData
    - memset
    - GP_RTPPacketizer*::OnNewPacket
    - strlen
    - GP_RTPPacketizer*::OnPacketDone
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gp_rtp_builder_do_vvc(GP_RTPPacketizer *builder, u8 *nalu, u32
      nalu_size, u8 IsAUEnd, u32 FullAUSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:859,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - builder
    argTypes:
    - GP_RTPPacketizer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 863
      start: 856
    functionDepth: 2
    functionLinenumber: 856
    functionLinenumberEnd: 863
    functionName: latm_flush
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_mpeg4.c
    functionUses: 0
    functionsReached:
    - GP_RTPPacketizer*::OnPacketDone
    linkageType: ''
    returnType: void
    signature: void latm_flush(GP_RTPPacketizer *builder)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: latm_flush
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:871,1
    - Dst: latm_flush
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:877,1
    - Dst: latm_flush
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:882,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:892,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:910,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:915,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:920,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:922,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:926,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:928,1
    - Dst: latm_flush
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:935,1
    - Dst: latm_flush
      Src: /src/gpac/src/ietf/rtp_pck_mpeg4.c:939,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 56
    argCount: 6
    argNames:
    - builder
    - data
    - data_size
    - IsAUEnd
    - FullAUSize
    - duration
    argTypes:
    - GP_RTPPacketizer*
    - u8*
    - u32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 942
      start: 865
    functionDepth: 3
    functionLinenumber: 865
    functionLinenumberEnd: 942
    functionName: gp_rtp_builder_do_latm
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_mpeg4.c
    functionUses: 0
    functionsReached:
    - gf_free
    - latm_flush
    - gf_assert
    - GP_RTPPacketizer*::OnDataReference
    - GP_RTPPacketizer*::OnData
    - GP_RTPPacketizer*::OnNewPacket
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gp_rtp_builder_do_latm(GP_RTPPacketizer *builder, u8 *data,
      u32 data_size, u8 IsAUEnd, u32 FullAUSize, u32 duration)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:37,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:38,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:42,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:43,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - builder
    argTypes:
    - GP_RTPPacketizer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 47
    functionName: rtp_amr_flush
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_get_content
    - GP_RTPPacketizer*::OnData
    - gf_bs_del
    - GP_RTPPacketizer*::OnPacketDone
    linkageType: ''
    returnType: void
    signature: void rtp_amr_flush(GP_RTPPacketizer *builder)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: rtp_amr_flush
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:54,1
    - Dst: rtp_amr_flush
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:75,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:82,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:83,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:86,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:88,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:89,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:95,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:96,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:98,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:99,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:107,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:109,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:115,1
    - Dst: rtp_amr_flush
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:117,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 48
    argCount: 5
    argNames:
    - builder
    - data
    - data_size
    - IsAUEnd
    - FullAUSize
    argTypes:
    - GP_RTPPacketizer*
    - u8*
    - u32
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 49
    functionDepth: 3
    functionLinenumber: 49
    functionLinenumberEnd: 120
    functionName: gp_rtp_builder_do_amr
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - GP_RTPPacketizer*::OnDataReference
    - gf_bs_new
    - gf_bs_write_int
    - GP_RTPPacketizer*::OnData
    - rtp_amr_flush
    - GP_RTPPacketizer*::OnNewPacket
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gp_rtp_builder_do_amr(GP_RTPPacketizer *builder, u8 *data, u32
      data_size, u8 IsAUEnd, u32 FullAUSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - idx
    - rates
    - nb_rates
    argTypes:
    - u32
    - unsigned int*
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 129
    functionName: qes_get_rate_size
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE qes_get_rate_size(u32 idx, const unsigned int *rates, const
      unsigned int nb_rates)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:137,1
    - Dst: qes_get_rate_size
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:149,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:158,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:168,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:170,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:174,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:176,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:181,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:186,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 48
    argCount: 5
    argNames:
    - builder
    - data
    - data_size
    - IsAUEnd
    - FullAUSize
    argTypes:
    - GP_RTPPacketizer*
    - u8*
    - u32
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 131
    functionDepth: 2
    functionLinenumber: 131
    functionLinenumberEnd: 192
    functionName: gp_rtp_builder_do_qcelp
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - GP_RTPPacketizer*::OnDataReference
    - GP_RTPPacketizer*::OnData
    - qes_get_rate_size
    - GP_RTPPacketizer*::OnNewPacket
    - GP_RTPPacketizer*::OnPacketDone
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gp_rtp_builder_do_qcelp(GP_RTPPacketizer *builder, u8 *data,
      u32 data_size, u8 IsAUEnd, u32 FullAUSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:201,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:202,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:203,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:208,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:209,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:211,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - builder
    argTypes:
    - GP_RTPPacketizer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 194
    functionDepth: 2
    functionLinenumber: 194
    functionLinenumberEnd: 214
    functionName: rtp_evrc_smv_flush
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_get_content
    - gf_bs_write_int
    - GP_RTPPacketizer*::OnData
    - gf_bs_del
    - GP_RTPPacketizer*::OnPacketDone
    linkageType: ''
    returnType: void
    signature: void rtp_evrc_smv_flush(GP_RTPPacketizer *builder)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: rtp_evrc_smv_flush
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:221,1
    - Dst: qes_get_rate_size
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:230,1
    - Dst: rtp_evrc_smv_flush
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:239,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:246,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:247,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:250,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:252,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:254,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:261,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:270,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:272,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:278,1
    - Dst: rtp_evrc_smv_flush
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:280,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 48
    argCount: 5
    argNames:
    - builder
    - data
    - data_size
    - IsAUEnd
    - FullAUSize
    argTypes:
    - GP_RTPPacketizer*
    - u8*
    - u32
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 216
    functionDepth: 3
    functionLinenumber: 216
    functionLinenumberEnd: 283
    functionName: gp_rtp_builder_do_smv
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - GP_RTPPacketizer*::OnDataReference
    - gf_bs_new
    - gf_bs_write_int
    - GP_RTPPacketizer*::OnData
    - qes_get_rate_size
    - GP_RTPPacketizer*::OnNewPacket
    - rtp_evrc_smv_flush
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gp_rtp_builder_do_smv(GP_RTPPacketizer *builder, u8 *data, u32
      data_size, u8 IsAUEnd, u32 FullAUSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:317,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:319,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:320,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:321,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:322,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:323,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:326,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:329,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:331,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:333,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 33
    argCount: 5
    argNames:
    - builder
    - data
    - data_size
    - IsAUEnd
    - FullAUSize
    argTypes:
    - GP_RTPPacketizer*
    - u8*
    - u32
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 285
    functionDepth: 2
    functionLinenumber: 285
    functionLinenumberEnd: 339
    functionName: gp_rtp_builder_do_h263
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - GP_RTPPacketizer*::OnDataReference
    - gf_bs_new
    - gf_bs_write_int
    - GP_RTPPacketizer*::OnData
    - gf_bs_del
    - GP_RTPPacketizer*::OnNewPacket
    - GP_RTPPacketizer*::OnPacketDone
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gp_rtp_builder_do_h263(GP_RTPPacketizer *builder, u8 *data,
      u32 data_size, u8 IsAUEnd, u32 FullAUSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:363,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:367,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:369,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:371,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 5
    argNames:
    - builder
    - data
    - data_size
    - IsAUEnd
    - FullAUSize
    argTypes:
    - GP_RTPPacketizer*
    - u8*
    - u32
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 341
    functionDepth: 2
    functionLinenumber: 341
    functionLinenumberEnd: 376
    functionName: gp_rtp_builder_do_mp2t
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - GP_RTPPacketizer*::OnPacketDone
    - GP_RTPPacketizer*::OnDataReference
    - GP_RTPPacketizer*::OnData
    - GP_RTPPacketizer*::OnNewPacket
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gp_rtp_builder_do_mp2t(GP_RTPPacketizer *builder, u8 *data,
      u32 data_size, u8 IsAUEnd, u32 FullAUSize)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:387,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:413,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:424,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:428,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:429,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:430,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:431,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:432,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:433,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:434,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:435,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:436,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:437,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:438,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:440,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:444,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:446,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:452,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:459,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:464,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:493,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:494,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:495,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:496,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:497,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:498,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:499,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:500,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:501,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:503,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:504,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:505,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:506,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:508,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:511,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:513,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:523,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:529,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:531,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:549,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:550,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:551,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:552,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:553,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:554,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:555,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:556,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:558,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:559,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:560,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:562,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:565,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:567,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:573,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:577,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:579,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 170
    argCount: 7
    argNames:
    - builder
    - data
    - data_size
    - IsAUEnd
    - FullAUSize
    - duration
    - descIndex
    argTypes:
    - GP_RTPPacketizer*
    - u8*
    - u32
    - u8
    - u32
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 585
      start: 377
    functionDepth: 2
    functionLinenumber: 377
    functionLinenumberEnd: 585
    functionName: gp_rtp_builder_do_tx3g
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_write_u24
    - gf_bs_new
    - GP_RTPPacketizer*::OnDataReference
    - gf_bs_get_content
    - gf_bs_write_u16
    - gf_bs_write_int
    - GP_RTPPacketizer*::OnData
    - gf_bs_del
    - GP_RTPPacketizer*::OnNewPacket
    - gf_bs_write_u8
    - GP_RTPPacketizer*::OnPacketDone
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gp_rtp_builder_do_tx3g(GP_RTPPacketizer *builder, u8 *data,
      u32 data_size, u8 IsAUEnd, u32 FullAUSize, u32 duration, u8 descIndex)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:601,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:607,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:610,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:613,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:626,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:659,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:680,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:681,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:687,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:689,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:694,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:700,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:706,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:709,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 79
    argCount: 6
    argNames:
    - builder
    - data
    - data_size
    - IsAUEnd
    - FullAUSize
    - duration
    argTypes:
    - GP_RTPPacketizer*
    - u8*
    - u32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 589
    functionDepth: 2
    functionLinenumber: 589
    functionLinenumberEnd: 711
    functionName: gp_rtp_builder_do_dims
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_bs_read_u32
    - GP_RTPPacketizer*::OnDataReference
    - gf_bs_new
    - GP_RTPPacketizer*::OnData
    - gf_bs_del
    - gf_bs_read_u16
    - GP_RTPPacketizer*::OnNewPacket
    - gf_bs_skip_bytes
    - GP_RTPPacketizer*::OnPacketDone
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gp_rtp_builder_do_dims(GP_RTPPacketizer *builder, u8 *data,
      u32 data_size, u8 IsAUEnd, u32 FullAUSize, u32 duration)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:723,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:725,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - builder
    argTypes:
    - GP_RTPPacketizer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 716
    functionDepth: 2
    functionLinenumber: 716
    functionLinenumberEnd: 729
    functionName: gf_rtp_ac3_flush
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - GP_RTPPacketizer*::OnData
    - GP_RTPPacketizer*::OnPacketDone
    linkageType: ''
    returnType: void
    signature: void gf_rtp_ac3_flush(GP_RTPPacketizer *builder)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_ac3_flush
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:738,1
    - Dst: gf_rtp_ac3_flush
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:753,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:764,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:771,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:773,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:781,1
    - Dst: MIN
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:788,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:801,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:805,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:809,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:811,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:813,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 53
    argCount: 5
    argNames:
    - builder
    - data
    - data_size
    - IsAUEnd
    - FullAUSize
    argTypes:
    - GP_RTPPacketizer*
    - u8*
    - u32
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 731
    functionDepth: 3
    functionLinenumber: 731
    functionLinenumberEnd: 819
    functionName: gp_rtp_builder_do_ac3
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_rtp_ac3_flush
    - GP_RTPPacketizer*::OnDataReference
    - GP_RTPPacketizer*::OnData
    - MIN
    - GP_RTPPacketizer*::OnNewPacket
    - GP_RTPPacketizer*::OnPacketDone
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gp_rtp_builder_do_ac3(GP_RTPPacketizer *builder, u8 *data, u32
      data_size, u8 IsAUEnd, u32 FullAUSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:828,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:835,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:839,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:841,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_3gpp.c:843,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 5
    argNames:
    - builder
    - data
    - data_size
    - IsAUEnd
    - FullAUSize
    argTypes:
    - GP_RTPPacketizer*
    - u8*
    - u32
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 846
      start: 821
    functionDepth: 2
    functionLinenumber: 821
    functionLinenumberEnd: 846
    functionName: gp_rtp_builder_do_opus
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - GP_RTPPacketizer*::OnDataReference
    - GF_LOG
    - GP_RTPPacketizer*::OnData
    - GP_RTPPacketizer*::OnNewPacket
    - GP_RTPPacketizer*::OnPacketDone
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gp_rtp_builder_do_opus(GP_RTPPacketizer *builder, u8 *data,
      u32 data_size, u8 IsAUEnd, u32 FullAUSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/rtp_packetizer.c:50,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:54,1
    - Dst: memset
      Src: /src/gpac/src/ietf/rtp_packetizer.c:56,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 74
    functionName: "GP_RTPPacketizer *gf_rtp_builder_new(u32 rtp_payt, GF_SLConfig
      *slc, u32 flags,\n                                     void *cbk_obj,\n                                     void
      (*OnNewPacket)(void *cbk, GF_RTPHeader *header),\n                                     void
      (*OnPacketDone)(void *cbk, GF_RTPHeader *header),\n                                     void
      (*OnDataReference)(void *cbk, u32 payload_size, u32 offset_from_orig),\n                                     void
      (*OnData)(void *cbk, u8 *data, u32 data_size, Bool is_head)\n                                    )"
    functionSourceFile: /src/gpac/src/ietf/rtp_packetizer.c
    functionUses: 0
    functionsReached:
    - memcpy
    - memset
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT GP_RTPPacketizer *gf_rtp_builder_new(u32 rtp_payt, GF_SLConfig
      *slc, u32 flags,\n                                     void *cbk_obj,\n                                     void
      (*OnNewPacket)(void *cbk, GF_RTPHeader *header),\n                                     void
      (*OnPacketDone)(void *cbk, GF_RTPHeader *header),\n                                     void
      (*OnDataReference)(void *cbk, u32 payload_size, u32 offset_from_orig),\n                                     void
      (*OnData)(void *cbk, u8 *data, u32 data_size, Bool is_head)\n                                    )"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_packetizer.c:81,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_packetizer.c:82,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_packetizer.c:83,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - builder
    argTypes:
    - GP_RTPPacketizer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 84
    functionName: gf_rtp_builder_del
    functionSourceFile: /src/gpac/src/ietf/rtp_packetizer.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_builder_del(GP_RTPPacketizer *builder)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gp_rtp_builder_do_mpeg4
      Src: /src/gpac/src/ietf/rtp_packetizer.c:93,1
    - Dst: gp_rtp_builder_do_mpeg12_video
      Src: /src/gpac/src/ietf/rtp_packetizer.c:96,1
    - Dst: gp_rtp_builder_do_mpeg12_audio
      Src: /src/gpac/src/ietf/rtp_packetizer.c:99,1
    - Dst: gp_rtp_builder_do_h263
      Src: /src/gpac/src/ietf/rtp_packetizer.c:101,1
    - Dst: gp_rtp_builder_do_amr
      Src: /src/gpac/src/ietf/rtp_packetizer.c:104,1
    - Dst: gp_rtp_builder_do_tx3g
      Src: /src/gpac/src/ietf/rtp_packetizer.c:106,1
    - Dst: gp_rtp_builder_do_avc
      Src: /src/gpac/src/ietf/rtp_packetizer.c:109,1
    - Dst: gp_rtp_builder_do_qcelp
      Src: /src/gpac/src/ietf/rtp_packetizer.c:111,1
    - Dst: gp_rtp_builder_do_smv
      Src: /src/gpac/src/ietf/rtp_packetizer.c:113,1
    - Dst: gp_rtp_builder_do_latm
      Src: /src/gpac/src/ietf/rtp_packetizer.c:115,1
    - Dst: gp_rtp_builder_do_dims
      Src: /src/gpac/src/ietf/rtp_packetizer.c:118,1
    - Dst: gp_rtp_builder_do_ac3
      Src: /src/gpac/src/ietf/rtp_packetizer.c:122,1
    - Dst: gp_rtp_builder_do_hevc
      Src: /src/gpac/src/ietf/rtp_packetizer.c:125,1
    - Dst: gp_rtp_builder_do_vvc
      Src: /src/gpac/src/ietf/rtp_packetizer.c:127,1
    - Dst: gp_rtp_builder_do_mp2t
      Src: /src/gpac/src/ietf/rtp_packetizer.c:129,1
    - Dst: gp_rtp_builder_do_opus
      Src: /src/gpac/src/ietf/rtp_packetizer.c:131,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 43
    argCount: 7
    argNames:
    - builder
    - data
    - data_size
    - IsAUEnd
    - FullAUSize
    - duration
    - descIndex
    argTypes:
    - GP_RTPPacketizer*
    - u8*
    - u32
    - u8
    - u32
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 86
    functionDepth: 4
    functionLinenumber: 86
    functionLinenumberEnd: 135
    functionName: gf_rtp_builder_process
    functionSourceFile: /src/gpac/src/ietf/rtp_packetizer.c
    functionUses: 1
    functionsReached:
    - gp_rtp_builder_do_vvc
    - gp_rtp_builder_do_hevc
    - gp_rtp_builder_do_dims
    - gp_rtp_builder_do_mpeg12_audio
    - gp_rtp_builder_do_ac3
    - gp_rtp_builder_do_h263
    - gp_rtp_builder_do_mpeg4
    - gp_rtp_builder_do_mp2t
    - gp_rtp_builder_do_tx3g
    - gp_rtp_builder_do_avc
    - gp_rtp_builder_do_opus
    - gp_rtp_builder_do_qcelp
    - gp_rtp_builder_do_mpeg12_video
    - gp_rtp_builder_do_latm
    - gp_rtp_builder_do_smv
    - gp_rtp_builder_do_amr
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_builder_process(GP_RTPPacketizer *builder, u8 *data,
      u32 data_size, u8 IsAUEnd, u32 FullAUSize, u32 duration, u8 descIndex)
  - BBCount: 53
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/ietf/rtp_packetizer.c:149,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:156,1
    - Dst: strnicmp
      Src: /src/gpac/src/ietf/rtp_packetizer.c:237,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:244,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:250,1
    - Dst: strnicmp
      Src: /src/gpac/src/ietf/rtp_packetizer.c:256,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:261,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:267,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/ietf/rtp_packetizer.c:284,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/ietf/rtp_packetizer.c:311,1
    - Dst: gf_rtp_builder_init
      Src: /src/gpac/src/ietf/rtp_packetizer.c:340,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/ietf/rtp_packetizer.c:356,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/ietf/rtp_packetizer.c:360,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/ietf/rtp_packetizer.c:368,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/ietf/rtp_packetizer.c:386,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:395,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:404,1
    CyclomaticComplexity: 83
    EdgeCount: 83
    ICount: 203
    argCount: 14
    argNames:
    - builder
    - PayloadType
    - PathMTU
    - max_ptime
    - StreamType
    - codecid
    - PL_ID
    - avgSize
    - maxSize
    - avgTS
    - maxDTS
    - IV_length
    - KI_length
    - pref_mode
    argTypes:
    - GP_RTPPacketizer*
    - u8
    - u32
    - u32
    - u32
    - u32
    - u32
    - u32
    - u32
    - u32
    - u32
    - u32
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 421
    functionName: gf_rtp_builder_init
    functionSourceFile: /src/gpac/src/ietf/rtp_packetizer.c
    functionUses: 2
    functionsReached:
    - gf_get_bit_size
    - gf_rtp_builder_init
    - strcpy
    - memset
    - strnicmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_rtp_builder_init(GP_RTPPacketizer *builder, u8 PayloadType,
      u32 PathMTU, u32 max_ptime,\n                         u32 StreamType, u32 codecid,
      u32 PL_ID,\n                         u32 avgSize, u32 maxSize,\n                         u32
      avgTS, u32 maxDTS,\n                         u32 IV_length, u32 KI_length,\n
      \                        char *pref_mode)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_packetizer.c:430,1
    - Dst: memcmp
      Src: /src/gpac/src/ietf/rtp_packetizer.c:435,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtp_packetizer.c:440,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:441,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/ietf/rtp_packetizer.c:445,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 4
    argNames:
    - builder
    - IV
    - key_indicator
    - is_encrypted
    argTypes:
    - GP_RTPPacketizer*
    - u64
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 451
      start: 423
    functionDepth: 1
    functionLinenumber: 423
    functionLinenumberEnd: 451
    functionName: gf_rtp_builder_set_cryp_info
    functionSourceFile: /src/gpac/src/ietf/rtp_packetizer.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memcmp
    - gf_get_bit_size
    - memcpy
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void gf_rtp_builder_set_cryp_info(GP_RTPPacketizer *builder, u64 IV,
      char *key_indicator, Bool is_encrypted)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:461,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:468,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:474,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:477,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:482,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:483,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:484,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:485,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:488,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:489,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:492,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:493,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:496,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:497,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:500,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:501,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:504,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:505,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:508,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:509,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:512,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:513,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:516,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:517,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:520,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:522,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:524,1
    - Dst: strcat
      Src: /src/gpac/src/ietf/rtp_packetizer.c:527,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:530,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:531,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:535,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:536,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:540,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:541,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:544,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:545,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:548,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:549,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:552,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:553,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:556,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:557,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:560,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:561,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:564,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:565,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:569,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:570,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:573,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:574,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 110
    argCount: 3
    argNames:
    - rtpb
    - szPayloadName
    - szMediaName
    argTypes:
    - GP_RTPPacketizer*
    - char[]
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 578
      start: 453
    functionDepth: 0
    functionLinenumber: 453
    functionLinenumberEnd: 578
    functionName: gf_rtp_builder_get_payload_name
    functionSourceFile: /src/gpac/src/ietf/rtp_packetizer.c
    functionUses: 0
    functionsReached:
    - strcat
    - strcpy
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_builder_get_payload_name(GP_RTPPacketizer *rtpb, char
      szPayloadName[20], char szMediaName[20])
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtp_packetizer.c:609,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_packetizer.c:610,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:613,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:615,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_packetizer.c:622,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_packetizer.c:623,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtp_packetizer.c:626,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_packetizer.c:627,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtp_packetizer.c:631,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:636,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtp_packetizer.c:637,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtp_packetizer.c:637,1
    - Dst: SDP_ADD_STR
      Src: /src/gpac/src/ietf/rtp_packetizer.c:638,1
    - Dst: SDP_ADD_STR
      Src: /src/gpac/src/ietf/rtp_packetizer.c:640,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:644,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:645,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:646,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:647,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:648,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:649,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:650,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:651,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:652,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:653,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:654,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:655,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:656,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:662,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:663,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:664,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:665,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:666,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 82
    argCount: 5
    argNames:
    - builder
    - payload_name
    - out_sdp_line
    - dsi
    - dsi_size
    argTypes:
    - GP_RTPPacketizer*
    - char*
    - char**
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 672
      start: 581
    functionDepth: 1
    functionLinenumber: 581
    functionLinenumberEnd: 672
    functionName: gf_rtp_builder_format_sdp
    functionSourceFile: /src/gpac/src/ietf/rtp_packetizer.c
    functionUses: 1
    functionsReached:
    - SDP_ADD_INT
    - sprintf
    - strcmp
    - gf_dynstrcat
    - SDP_ADD_STR
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_builder_format_sdp(GP_RTPPacketizer *builder, char
      *payload_name, char **out_sdp_line, char *dsi, u32 dsi_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 594
    functionDepth: 0
    functionLinenumber: 594
    functionLinenumberEnd: 601
    functionName: SDP_ADD_INT
    functionSourceFile: /src/gpac/src/ietf/rtp_packetizer.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SDP_ADD_INT(_name, _val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 608
      start: 602
    functionDepth: 0
    functionLinenumber: 602
    functionLinenumberEnd: 608
    functionName: SDP_ADD_STR
    functionSourceFile: /src/gpac/src/ietf/rtp_packetizer.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SDP_ADD_STR(_name, _val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:39,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:40,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:41,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:43,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:44,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:45,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:46,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:49,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:50,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:51,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:59,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:60,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:63,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 2
    argNames:
    - builder
    - start_new
    argTypes:
    - GP_RTPPacketizer*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 66
    functionName: mpa12_do_flush
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_mpeg12.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_get_size
    - GP_RTPPacketizer*::OnData
    - gf_bs_del
    - GP_RTPPacketizer*::OnNewPacket
    - GP_RTPPacketizer*::OnPacketDone
    linkageType: ''
    returnType: void
    signature: void mpa12_do_flush(GP_RTPPacketizer *builder, Bool start_new)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: mpa12_do_flush
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:75,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:87,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:88,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:94,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:96,1
    - Dst: mpa12_do_flush
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:103,1
    - Dst: mpa12_do_flush
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:107,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 5
    argNames:
    - builder
    - data
    - data_size
    - IsAUEnd
    - FullAUSize
    argTypes:
    - GP_RTPPacketizer*
    - u8*
    - u32
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 68
    functionDepth: 3
    functionLinenumber: 68
    functionLinenumberEnd: 110
    functionName: gp_rtp_builder_do_mpeg12_audio
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_mpeg12.c
    functionUses: 1
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u16
    - GP_RTPPacketizer*::OnDataReference
    - mpa12_do_flush
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gp_rtp_builder_do_mpeg12_audio(GP_RTPPacketizer *builder, u8
      *data, u32 data_size, u8 IsAUEnd, u32 FullAUSize)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_mv12_next_start_code
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:134,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:168,1
    - Dst: gf_mv12_next_slice_start
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:172,1
    - Dst: gf_mv12_next_slice_start
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:193,1
    - Dst: MIN
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:200,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:218,1
    - Dst: GP_RTPPacketizer*::OnDataReference
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:220,1
    - Dst: GP_RTPPacketizer*::OnData
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:222,1
    - Dst: GP_RTPPacketizer*::OnPacketDone
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:226,1
    - Dst: GP_RTPPacketizer*::OnNewPacket
      Src: /src/gpac/src/ietf/rtp_pck_mpeg12.c:237,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 98
    argCount: 5
    argNames:
    - builder
    - data
    - data_size
    - IsAUEnd
    - FullAUSize
    argTypes:
    - GP_RTPPacketizer*
    - u8*
    - u32
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 117
    functionDepth: 2
    functionLinenumber: 117
    functionLinenumberEnd: 241
    functionName: gp_rtp_builder_do_mpeg12_video
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_mpeg12.c
    functionUses: 1
    functionsReached:
    - gf_mv12_next_start_code
    - GP_RTPPacketizer*::OnDataReference
    - gf_mv12_next_slice_start
    - GP_RTPPacketizer*::OnData
    - MIN
    - GP_RTPPacketizer*::OnNewPacket
    - GP_RTPPacketizer*::OnPacketDone
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gp_rtp_builder_do_mpeg12_video(GP_RTPPacketizer *builder, u8
      *data, u32 data_size, u8 IsAUEnd, u32 FullAUSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/rtsp_command.c:38,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/rtsp_command.c:40,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/rtsp_command.c:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 43
    functionName: GF_RTSPCommand *gf_rtsp_command_new()
    functionSourceFile: /src/gpac/src/ietf/rtsp_command.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_RTSPCommand *gf_rtsp_command_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - hdr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: COM_FREE_CLEAN
    functionSourceFile: /src/gpac/src/ietf/rtsp_command.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: COM_FREE_CLEAN(hdr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: COM_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_command.c:55,1
    - Dst: COM_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_command.c:56,1
    - Dst: COM_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_command.c:57,1
    - Dst: COM_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_command.c:58,1
    - Dst: COM_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_command.c:59,1
    - Dst: COM_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_command.c:60,1
    - Dst: COM_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_command.c:61,1
    - Dst: COM_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_command.c:62,1
    - Dst: COM_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_command.c:63,1
    - Dst: COM_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_command.c:64,1
    - Dst: COM_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_command.c:65,1
    - Dst: COM_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_command.c:66,1
    - Dst: COM_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_command.c:67,1
    - Dst: COM_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_command.c:68,1
    - Dst: COM_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_command.c:69,1
    - Dst: COM_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_command.c:70,1
    - Dst: COM_FREE_CLEAN
      Src: /src/gpac/src/ietf/rtsp_command.c:71,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_command.c:81,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtsp_command.c:84,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/rtsp_command.c:85,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/ietf/rtsp_command.c:86,1
    - Dst: gf_rtsp_transport_del
      Src: /src/gpac/src/ietf/rtsp_command.c:87,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtsp_command.c:89,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/rtsp_command.c:90,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/ietf/rtsp_command.c:91,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_command.c:92,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_command.c:93,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_command.c:94,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 37
    argCount: 1
    argNames:
    - com
    argTypes:
    - GF_RTSPCommand*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 96
    functionName: gf_rtsp_command_reset
    functionSourceFile: /src/gpac/src/ietf/rtsp_command.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_rtsp_transport_del
    - gf_list_count
    - COM_FREE_CLEAN
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_command_reset(GF_RTSPCommand *com)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtsp_command_reset
      Src: /src/gpac/src/ietf/rtsp_command.c:102,1
    - Dst: gf_list_del
      Src: /src/gpac/src/ietf/rtsp_command.c:103,1
    - Dst: gf_list_del
      Src: /src/gpac/src/ietf/rtsp_command.c:104,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_command.c:105,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - com
    argTypes:
    - GF_RTSPCommand*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 98
    functionDepth: 2
    functionLinenumber: 98
    functionLinenumberEnd: 106
    functionName: gf_rtsp_command_del
    functionSourceFile: /src/gpac/src/ietf/rtsp_command.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_rtsp_command_reset
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_command_del(GF_RTSPCommand *com)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtsp_command.c:118,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:122,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_command.c:125,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_command.c:126,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_command.c:127,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_command.c:128,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:130,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_command.c:131,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:132,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:135,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_command.c:136,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:137,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_command.c:139,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_command.c:140,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_command.c:141,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:144,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_command.c:145,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_command.c:145,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:146,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:149,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_command.c:150,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:151,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_command.c:153,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_command.c:154,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_command.c:155,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:159,1
    - Dst: RTSP_WRITE_FLOAT_WITHOUT_CHECK
      Src: /src/gpac/src/ietf/rtsp_command.c:160,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:161,1
    - Dst: RTSP_WRITE_FLOAT_WITHOUT_CHECK
      Src: /src/gpac/src/ietf/rtsp_command.c:163,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:165,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_command.c:168,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:170,1
    - Dst: RTSP_WRITE_FLOAT_WITHOUT_CHECK
      Src: /src/gpac/src/ietf/rtsp_command.c:171,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:172,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_command.c:174,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:176,1
    - Dst: RTSP_WRITE_FLOAT_WITHOUT_CHECK
      Src: /src/gpac/src/ietf/rtsp_command.c:177,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:178,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtsp_command.c:182,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:184,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:188,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/rtsp_command.c:189,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:192,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:193,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:195,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:196,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:199,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:200,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:203,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:204,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:207,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_command.c:208,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:210,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_command.c:211,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:215,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_command.c:216,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:217,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_command.c:218,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:221,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_command.c:222,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:223,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_command.c:224,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:229,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_command.c:230,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:233,1
    - Dst: RTSP_WRITE_INT
      Src: /src/gpac/src/ietf/rtsp_command.c:234,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:238,1
    - Dst: RTSP_WRITE_HEX
      Src: /src/gpac/src/ietf/rtsp_command.c:239,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:243,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_command.c:245,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtsp_command.c:248,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/rtsp_command.c:250,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:251,1
    - Dst: RTSP_WRITE_HEADER
      Src: /src/gpac/src/ietf/rtsp_command.c:252,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:256,1
    - Dst: RTSP_WRITE_ALLOC_STR
      Src: /src/gpac/src/ietf/rtsp_command.c:258,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_command.c:263,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 125
    argCount: 5
    argNames:
    - sess
    - com
    - req_buffer
    - out_buffer
    - out_size
    argTypes:
    - GF_RTSPSession*
    - GF_RTSPCommand*
    - unsigned char*
    - unsigned char**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 265
    functionName: RTSP_WriteCommand
    functionSourceFile: /src/gpac/src/ietf/rtsp_command.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - RTSP_WRITE_HEADER
    - gf_list_get
    - RTSP_WRITE_ALLOC_STR
    - RTSP_WRITE_INT
    - gf_list_count
    - strlen
    - RTSP_WRITE_FLOAT_WITHOUT_CHECK
    - RTSP_WRITE_HEX
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err RTSP_WriteCommand(GF_RTSPSession *sess, GF_RTSPCommand *com,
      unsigned char *req_buffer,\n                         unsigned char **out_buffer,
      u32 *out_size)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:285,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:286,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:287,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:288,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:289,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:290,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:291,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:292,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:293,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:294,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:295,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:300,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:301,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:302,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:319,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:329,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_command.c:330,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_command.c:335,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/ietf/rtsp_command.c:336,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_command.c:337,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_command.c:338,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_command.c:340,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:346,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:347,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:348,1
    - Dst: RTSP_WriteCommand
      Src: /src/gpac/src/ietf/rtsp_command.c:358,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_command.c:364,1
    - Dst: gf_rtsp_send_data
      Src: /src/gpac/src/ietf/rtsp_command.c:367,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:373,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:374,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:375,1
    - Dst: strcpy
      Src: /src/gpac/src/ietf/rtsp_command.c:379,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_command.c:382,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 59
    argCount: 2
    argNames:
    - sess
    - com
    argTypes:
    - GF_RTSPSession*
    - GF_RTSPCommand*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 271
    functionDepth: 2
    functionLinenumber: 271
    functionLinenumberEnd: 384
    functionName: gf_rtsp_send_command
    functionSourceFile: /src/gpac/src/ietf/rtsp_command.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - strcpy
    - sprintf
    - gf_url_concatenate
    - gf_rtsp_send_data
    - strcmp
    - RTSP_WriteCommand
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_send_command(GF_RTSPSession *sess, GF_RTSPCommand
      *com)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:394,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_command.c:394,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:395,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_command.c:395,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:396,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_command.c:396,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:397,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_command.c:397,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:398,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_command.c:398,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:399,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_command.c:399,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:400,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_command.c:400,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:401,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_command.c:401,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:402,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_command.c:402,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:403,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_command.c:403,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:404,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_command.c:404,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:405,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_command.c:405,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:406,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_command.c:406,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:407,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_command.c:407,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:408,1
    - Dst: gf_rtsp_range_parse
      Src: /src/gpac/src/ietf/rtsp_command.c:408,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:409,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_command.c:409,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:410,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_command.c:410,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:411,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_command.c:412,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:413,1
    - Dst: sscanf
      Src: /src/gpac/src/ietf/rtsp_command.c:413,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:414,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_command.c:414,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:416,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_command.c:419,1
    - Dst: gf_rtsp_transport_parse
      Src: /src/gpac/src/ietf/rtsp_command.c:421,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/rtsp_command.c:422,1
    - Dst: strnicmp
      Src: /src/gpac/src/ietf/rtsp_command.c:426,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtsp_command.c:427,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_command.c:428,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_command.c:430,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_command.c:430,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/rtsp_command.c:431,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 60
    argCount: 3
    argNames:
    - com
    - Header
    - Value
    argTypes:
    - GF_RTSPCommand*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 387
    functionDepth: 2
    functionLinenumber: 387
    functionLinenumberEnd: 434
    functionName: gf_rtsp_set_command_value
    functionSourceFile: /src/gpac/src/ietf/rtsp_command.c
    functionUses: 1
    functionsReached:
    - gf_strdup
    - sscanf
    - gf_rtsp_range_parse
    - gf_rtsp_transport_parse
    - strlen
    - gf_token_get
    - strnicmp
    - gf_list_add
    - stricmp
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void gf_rtsp_set_command_value(GF_RTSPCommand *com, char *Header, char
      *Value)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_token_get_line
      Src: /src/gpac/src/ietf/rtsp_command.c:451,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_command.c:455,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_command.c:457,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_command.c:460,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_command.c:462,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_command.c:465,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:467,1
    - Dst: gf_rtsp_parse_header
      Src: /src/gpac/src/ietf/rtsp_command.c:474,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 3
    argNames:
    - sess
    - com
    - BodyStart
    argTypes:
    - GF_RTSPSession*
    - GF_RTSPCommand*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 436
    functionDepth: 3
    functionLinenumber: 436
    functionLinenumberEnd: 475
    functionName: RTSP_ParseCommandHeader
    functionSourceFile: /src/gpac/src/ietf/rtsp_command.c
    functionUses: 0
    functionsReached:
    - gf_token_get_line
    - gf_strdup
    - gf_token_get
    - strcmp
    - gf_rtsp_parse_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err RTSP_ParseCommandHeader(GF_RTSPSession *sess, GF_RTSPCommand
      *com, u32 BodyStart)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtsp_command_reset
      Src: /src/gpac/src/ietf/rtsp_command.c:501,1
    - Dst: gf_rtsp_fill_buffer
      Src: /src/gpac/src/ietf/rtsp_command.c:507,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_command.c:514,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_command.c:514,1
    - Dst: gf_rtsp_read_reply
      Src: /src/gpac/src/ietf/rtsp_command.c:524,1
    - Dst: gf_rtsp_get_body_info
      Src: /src/gpac/src/ietf/rtsp_command.c:527,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/ietf/rtsp_command.c:533,1
    - Dst: gf_rtsp_get_body_info
      Src: /src/gpac/src/ietf/rtsp_command.c:535,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_command.c:538,1
    - Dst: RTSP_ParseCommandHeader
      Src: /src/gpac/src/ietf/rtsp_command.c:540,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_command.c:547,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtsp_command.c:551,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtsp_command.c:552,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_command.c:560,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_command.c:560,1
    - Dst: strstr
      Src: /src/gpac/src/ietf/rtsp_command.c:562,1
    - Dst: strchr
      Src: /src/gpac/src/ietf/rtsp_command.c:563,1
    - Dst: strchr
      Src: /src/gpac/src/ietf/rtsp_command.c:565,1
    - Dst: strchr
      Src: /src/gpac/src/ietf/rtsp_command.c:567,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_command.c:570,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_command.c:573,1
    - Dst: snprintf
      Src: /src/gpac/src/ietf/rtsp_command.c:575,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_command.c:578,1
    - Dst: gf_rtsp_send_data
      Src: /src/gpac/src/ietf/rtsp_command.c:580,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_command.c:580,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_command.c:619,1
    - Dst: stricmp
      Src: /src/gpac/src/ietf/rtsp_command.c:620,1
    - Dst: gf_rtsp_session_reset
      Src: /src/gpac/src/ietf/rtsp_command.c:622,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtsp_command.c:624,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtsp_command.c:629,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 99
    argCount: 2
    argNames:
    - sess
    - com
    argTypes:
    - GF_RTSPSession*
    - GF_RTSPCommand*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 493
    functionDepth: 4
    functionLinenumber: 493
    functionLinenumberEnd: 636
    functionName: gf_rtsp_get_command
    functionSourceFile: /src/gpac/src/ietf/rtsp_command.c
    functionUses: 0
    functionsReached:
    - gf_sk_del
    - gf_rtsp_fill_buffer
    - gf_rtsp_session_reset
    - RTSP_ParseCommandHeader
    - gf_rtsp_command_reset
    - strchr
    - gf_strdup
    - snprintf
    - memcpy
    - strncmp
    - gf_rtsp_get_body_info
    - stricmp
    - gf_rtsp_read_reply
    - GF_LOG
    - strstr
    - gf_malloc
    - strlen
    - gf_base64_decode
    - gf_rtsp_send_data
    - strcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtsp_get_command(GF_RTSPSession *sess, GF_RTSPCommand
      *com)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - cbk
    - header
    argTypes:
    - void*
    - GF_RTPHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: rtp_stream_on_new_packet
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void rtp_stream_on_new_packet(void *cbk, GF_RTPHeader *header)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_send_packet
      Src: /src/gpac/src/ietf/rtp_streamer.c:67,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp_streamer.c:72,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/ietf/rtp_streamer.c:72,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp_streamer.c:74,1
    - Dst: fprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:78,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/ietf/rtp_streamer.c:78,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - cbk
    - header
    argTypes:
    - void*
    - GF_RTPHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 64
    functionDepth: 4
    functionLinenumber: 64
    functionLinenumberEnd: 82
    functionName: rtp_stream_on_packet_done
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - fprintf
    - gf_error_to_string
    - gf_rtp_send_packet
    linkageType: ''
    returnType: void
    signature: void rtp_stream_on_packet_done(void *cbk, GF_RTPHeader *header)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp_streamer.c:90,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtp_streamer.c:95,1
    - Dst: memmove
      Src: /src/gpac/src/ietf/rtp_streamer.c:97,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtp_streamer.c:98,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 4
    argNames:
    - cbk
    - data
    - data_size
    - is_head
    argTypes:
    - void*
    - u8*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 101
    functionName: rtp_stream_on_data
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - memcpy
    - memmove
    linkageType: ''
    returnType: void
    signature: void rtp_stream_on_data(void *cbk, u8 *data, u32 data_size, Bool is_head)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_new_ex
      Src: /src/gpac/src/ietf/rtp_streamer.c:109,1
    - Dst: gf_rtp_setup_transport
      Src: /src/gpac/src/ietf/rtp_streamer.c:113,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp_streamer.c:115,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/ietf/rtp_streamer.c:115,1
    - Dst: gf_rtp_initialize
      Src: /src/gpac/src/ietf/rtp_streamer.c:119,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp_streamer.c:121,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/ietf/rtp_streamer.c:121,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 4
    argNames:
    - rtp
    - path_mtu
    - tr
    - ifce_addr
    argTypes:
    - GF_RTPStreamer*
    - u32
    - GF_RTSPTransport*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 104
    functionDepth: 2
    functionLinenumber: 104
    functionLinenumberEnd: 125
    functionName: gf_rtp_streamer_init_rtsp
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_rtp_initialize
    - gf_rtp_new_ex
    - gf_error_to_string
    - gf_rtp_setup_transport
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_rtp_streamer_init_rtsp(GF_RTPStreamer *rtp, u32 path_mtu,
      GF_RTSPTransport *tr, const char *ifce_addr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_new_ex
      Src: /src/gpac/src/ietf/rtp_streamer.c:131,1
    - Dst: memset
      Src: /src/gpac/src/ietf/rtp_streamer.c:136,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/ietf/rtp_streamer.c:138,1
    - Dst: rand
      Src: /src/gpac/src/ietf/rtp_streamer.c:144,1
    - Dst: gf_rtp_setup_transport
      Src: /src/gpac/src/ietf/rtp_streamer.c:156,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp_streamer.c:158,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/ietf/rtp_streamer.c:158,1
    - Dst: gf_rtp_initialize
      Src: /src/gpac/src/ietf/rtp_streamer.c:162,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp_streamer.c:164,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/ietf/rtp_streamer.c:164,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 33
    argCount: 7
    argNames:
    - rtp
    - path_mtu
    - dest
    - port
    - ttl
    - ifce_addr
    - netcap_id
    argTypes:
    - GF_RTPStreamer*
    - u32
    - char*
    - int
    - int
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 126
    functionDepth: 2
    functionLinenumber: 126
    functionLinenumberEnd: 168
    functionName: rtp_stream_init_channel
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 0
    functionsReached:
    - rand
    - GF_LOG
    - gf_rtp_initialize
    - gf_sk_is_multicast_address
    - memset
    - gf_rtp_new_ex
    - gf_error_to_string
    - gf_rtp_setup_transport
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtp_stream_init_channel(GF_RTPStreamer *rtp, u32 path_mtu, const
      char * dest, int port, int ttl, const char *ifce_addr, const char *netcap_id)
  - BBCount: 74
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/rtp_streamer.c:190,1
    - Dst: gf_rtp_streamer_del
      Src: /src/gpac/src/ietf/rtp_streamer.c:227,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp_streamer.c:228,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/ietf/rtp_streamer.c:251,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/ietf/rtp_streamer.c:302,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp_streamer.c:424,1
    - Dst: gf_rtp_streamer_del
      Src: /src/gpac/src/ietf/rtp_streamer.c:425,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp_streamer.c:433,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/ietf/rtp_streamer.c:433,1
    - Dst: gf_rtp_streamer_del
      Src: /src/gpac/src/ietf/rtp_streamer.c:434,1
    - Dst: memset
      Src: /src/gpac/src/ietf/rtp_streamer.c:460,1
    - Dst: gf_rtp_builder_new
      Src: /src/gpac/src/ietf/rtp_streamer.c:486,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp_streamer.c:492,1
    - Dst: gf_rtp_streamer_del
      Src: /src/gpac/src/ietf/rtp_streamer.c:493,1
    - Dst: gf_rtp_builder_init
      Src: /src/gpac/src/ietf/rtp_streamer.c:497,1
    - Dst: rtp_stream_init_channel
      Src: /src/gpac/src/ietf/rtp_streamer.c:504,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtp_streamer.c:506,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/ietf/rtp_streamer.c:506,1
    - Dst: gf_rtp_streamer_del
      Src: /src/gpac/src/ietf/rtp_streamer.c:507,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtp_streamer.c:516,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 263
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 519
      start: 170
    functionDepth: 3
    functionLinenumber: 170
    functionLinenumberEnd: 519
    functionName: GF_RTPStreamer *gf_rtp_streamer_new_ex(const GF_RTPStreamerConfig
      *cfg, Bool for_rtsp)
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - GF_SAFEALLOC
    - gf_m4a_get_config
    - GF_LOG
    - gf_rtp_builder_init
    - memset
    - gf_rtp_streamer_del
    - gf_rtp_builder_new
    - gf_error_to_string
    - gf_m4v_get_config
    - gf_codecid_name
    - rtp_stream_init_channel
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_RTPStreamer *gf_rtp_streamer_new_ex(const GF_RTPStreamerConfig
      *cfg, Bool for_rtsp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/ietf/rtp_streamer.c:531,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:534,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:535,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:536,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:537,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:538,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:539,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:540,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:541,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:542,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:543,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:544,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:545,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:546,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:547,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:548,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:549,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:550,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:551,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:552,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:553,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:554,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:555,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:556,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:557,1
    - Dst: RTCFG_SET
      Src: /src/gpac/src/ietf/rtp_streamer.c:558,1
    - Dst: gf_rtp_streamer_new_ex
      Src: /src/gpac/src/ietf/rtp_streamer.c:561,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 562
      start: 521
    functionDepth: 1
    functionLinenumber: 521
    functionLinenumberEnd: 562
    functionName: "GF_RTPStreamer *gf_rtp_streamer_new(u32 streamType, u32 codecid,
      u32 timeScale,\n        const char *ip_dest, u16 port, u32 MTU, u8 TTL, const
      char *ifce_addr,\n        u32 flags, const u8 *dsi, u32 dsi_len,\n        u32
      PayloadType, u32 sample_rate, u32 nb_ch,\n        Bool is_crypted, u32 IV_length,
      u32 KI_length,\n        u32 MinSize, u32 MaxSize, u32 avgTS, u32 maxDTSDelta,
      u32 const_dur, u32 bandwidth, u32 max_ptime,\n        u32 au_sn_len, Bool for_rtsp)"
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_rtp_streamer_new_ex
    - RTCFG_SET
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT GF_RTPStreamer *gf_rtp_streamer_new(u32 streamType, u32
      codecid, u32 timeScale,\n        const char *ip_dest, u16 port, u32 MTU, u8
      TTL, const char *ifce_addr,\n        u32 flags, const u8 *dsi, u32 dsi_len,\n
      \       u32 PayloadType, u32 sample_rate, u32 nb_ch,\n        Bool is_crypted,
      u32 IV_length, u32 KI_length,\n        u32 MinSize, u32 MaxSize, u32 avgTS,
      u32 maxDTSDelta, u32 const_dur, u32 bandwidth, u32 max_ptime,\n        u32 au_sn_len,
      Bool for_rtsp)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 532
    functionDepth: 0
    functionLinenumber: 532
    functionLinenumberEnd: 533
    functionName: RTCFG_SET
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RTCFG_SET(_t)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_del
      Src: /src/gpac/src/ietf/rtp_streamer.c:569,1
    - Dst: gf_rtp_builder_del
      Src: /src/gpac/src/ietf/rtp_streamer.c:570,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_streamer.c:571,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_streamer.c:572,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - streamer
    argTypes:
    - GF_RTPStreamer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 574
      start: 565
    functionDepth: 2
    functionLinenumber: 565
    functionLinenumberEnd: 574
    functionName: gf_rtp_streamer_del
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 2
    functionsReached:
    - gf_rtp_del
    - gf_free
    - gf_rtp_builder_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_streamer_del(GF_RTPStreamer *streamer)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:586,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:587,1
    - Dst: snprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:589,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:590,1
    - Dst: snprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:592,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:593,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:596,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:597,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 11
    argNames:
    - builder
    - payload_name
    - out_sdp_line
    - w
    - h
    - tx
    - ty
    - l
    - max_w
    - max_h
    - tx3g_base64
    argTypes:
    - GP_RTPPacketizer*
    - char*
    - char**
    - u32
    - u32
    - s32
    - s32
    - s16
    - u32
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 599
      start: 578
    functionDepth: 1
    functionLinenumber: 578
    functionLinenumberEnd: 599
    functionName: gf_media_format_ttxt_sdp
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 0
    functionsReached:
    - gf_dynstrcat
    - snprintf
    linkageType: ''
    returnType: void
    signature: void gf_media_format_ttxt_sdp(GP_RTPPacketizer *builder, char *payload_name,
      char **out_sdp_line, u32 w, u32 h, s32 tx, s32 ty, s16 l, u32 max_w, u32 max_h,
      char *tx3g_base64)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_builder_get_payload_name
      Src: /src/gpac/src/ietf/rtp_streamer.c:614,1
    - Dst: gf_rtp_get_ports
      Src: /src/gpac/src/ietf/rtp_streamer.c:618,1
    - Dst: snprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:621,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:622,1
    - Dst: snprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:624,1
    - Dst: snprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:626,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:627,1
    - Dst: snprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:635,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:636,1
    - Dst: snprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:641,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:642,1
    - Dst: snprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:645,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:646,1
    - Dst: snprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:651,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:652,1
    - Dst: gf_media_format_ttxt_sdp
      Src: /src/gpac/src/ietf/rtp_streamer.c:658,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:659,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:660,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_streamer.c:661,1
    - Dst: snprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:666,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:667,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/ietf/rtp_streamer.c:671,1
    - Dst: snprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:674,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:675,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtp_streamer.c:677,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtp_streamer.c:677,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:680,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtp_streamer.c:682,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/rtp_streamer.c:684,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/ietf/rtp_streamer.c:685,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:687,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:688,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:690,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtp_streamer.c:691,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/rtp_streamer.c:693,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/ietf/rtp_streamer.c:694,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:696,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:697,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/ietf/rtp_streamer.c:700,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:701,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/ietf/rtp_streamer.c:713,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/ietf/rtp_streamer.c:720,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/ietf/rtp_streamer.c:722,1
    - Dst: snprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:733,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:734,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtp_streamer.c:736,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/rtp_streamer.c:738,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:740,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:742,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:744,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtp_streamer.c:746,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/rtp_streamer.c:747,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/ietf/rtp_streamer.c:748,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:750,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:751,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/ietf/rtp_streamer.c:754,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/ietf/rtp_streamer.c:755,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:756,1
    - Dst: gf_rtp_builder_format_sdp
      Src: /src/gpac/src/ietf/rtp_streamer.c:762,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:763,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:764,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_streamer.c:765,1
    - Dst: strnicmp
      Src: /src/gpac/src/ietf/rtp_streamer.c:768,1
    - Dst: strnicmp
      Src: /src/gpac/src/ietf/rtp_streamer.c:768,1
    - Dst: strnicmp
      Src: /src/gpac/src/ietf/rtp_streamer.c:768,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:769,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:771,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:773,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:774,1
    - Dst: snprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:780,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:781,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:783,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:785,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/ietf/rtp_streamer.c:795,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_streamer.c:796,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_streamer.c:797,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_streamer.c:798,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_streamer.c:799,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_streamer.c:800,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/ietf/rtp_streamer.c:803,1
    - Dst: MIN
      Src: /src/gpac/src/ietf/rtp_streamer.c:803,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_streamer.c:806,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_streamer.c:807,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_streamer.c:808,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/ietf/rtp_streamer.c:809,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/ietf/rtp_streamer.c:810,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/ietf/rtp_streamer.c:811,1
    - Dst: gf_rtp_builder_format_sdp
      Src: /src/gpac/src/ietf/rtp_streamer.c:814,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_streamer.c:815,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:816,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_streamer.c:817,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_streamer.c:818,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 159
    argCount: 17
    argNames:
    - rtp
    - ESID
    - dsi
    - dsi_len
    - dsi_enh
    - dsi_enh_len
    - KMS_URI
    - width
    - height
    - tw
    - th
    - tx
    - ty
    - tl
    - nb_channels
    - for_rtsp
    - out_sdp_buffer
    argTypes:
    - GF_RTPStreamer*
    - u16
    - u8*
    - u32
    - u8*
    - u32
    - char*
    - u32
    - u32
    - u32
    - u32
    - s32
    - s32
    - s16
    - u32
    - Bool
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 821
      start: 604
    functionDepth: 2
    functionLinenumber: 604
    functionLinenumberEnd: 821
    functionName: gf_rtp_streamer_append_sdp_extended
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_vvc_cfg_del
    - gf_odf_avc_cfg_del
    - gf_bs_new
    - gf_list_count
    - gf_odf_hevc_cfg_read
    - gf_list_get
    - snprintf
    - gf_bs_get_content
    - gf_rtp_builder_get_payload_name
    - gf_dynstrcat
    - gf_odf_vvc_cfg_read
    - gf_rtp_builder_format_sdp
    - gf_rtp_get_ports
    - gf_media_format_ttxt_sdp
    - gf_bs_write_int
    - MIN
    - gf_bs_write_data
    - strnicmp
    - gf_odf_avc_cfg_read
    - gf_odf_hevc_cfg_del
    - gf_base64_encode
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_streamer_append_sdp_extended(GF_RTPStreamer *rtp,
      u16 ESID, const u8 *dsi, u32 dsi_len, const u8 *dsi_enh, u32 dsi_enh_len, char
      *KMS_URI, u32 width, u32 height, u32 tw, u32 th, s32 tx, s32 ty, s16 tl, u32
      nb_channels, Bool for_rtsp, char **out_sdp_buffer)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_temp
      Src: /src/gpac/src/ietf/rtp_streamer.c:830,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:834,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:835,1
    - Dst: gf_net_is_ipv6
      Src: /src/gpac/src/ietf/rtp_streamer.c:835,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:836,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:837,1
    - Dst: gf_net_is_ipv6
      Src: /src/gpac/src/ietf/rtp_streamer.c:837,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:838,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/ietf/rtp_streamer.c:841,1
    - Dst: gf_fsize
      Src: /src/gpac/src/ietf/rtp_streamer.c:843,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtp_streamer.c:844,1
    - Dst: gf_fread
      Src: /src/gpac/src/ietf/rtp_streamer.c:845,1
    - Dst: gf_fclose
      Src: /src/gpac/src/ietf/rtp_streamer.c:847,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/ietf/rtp_streamer.c:848,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtp_streamer.c:849,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 4
    argNames:
    - app_name
    - ip_dest
    - session_name
    - iod64
    argTypes:
    - char*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 851
      start: 825
    functionDepth: 1
    functionLinenumber: 825
    functionLinenumberEnd: 851
    functionName: gf_rtp_streamer_format_sdp_header
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_fprintf
    - gf_fread
    - gf_fsize
    - gf_file_delete
    - gf_file_temp
    - gf_net_is_ipv6
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_rtp_streamer_format_sdp_header(char *app_name, char *ip_dest,
      char *session_name, char *iod64)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_streamer_append_sdp_extended
      Src: /src/gpac/src/ietf/rtp_streamer.c:856,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - rtp
    - ESID
    - dsi
    - dsi_len
    - KMS_URI
    - out_sdp_buffer
    argTypes:
    - GF_RTPStreamer*
    - u16
    - u8*
    - u32
    - char*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 857
      start: 853
    functionDepth: 3
    functionLinenumber: 853
    functionLinenumberEnd: 857
    functionName: gf_rtp_streamer_append_sdp
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 1
    functionsReached:
    - gf_rtp_streamer_append_sdp_extended
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_streamer_append_sdp(GF_RTPStreamer *rtp, u16 ESID,
      const u8 *dsi, u32 dsi_len, char *KMS_URI, char **out_sdp_buffer)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/ietf/rtp_streamer.c:865,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/ietf/rtp_streamer.c:866,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/ietf/rtp_streamer.c:871,1
    - Dst: gf_rtp_builder_process
      Src: /src/gpac/src/ietf/rtp_streamer.c:875,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 12
    argNames:
    - rtp
    - data
    - size
    - fullsize
    - cts
    - dts
    - is_rap
    - au_start
    - au_end
    - au_sn
    - sampleDuration
    - sampleDescIndex
    argTypes:
    - GF_RTPStreamer*
    - u8*
    - u32
    - u32
    - u64
    - u64
    - Bool
    - Bool
    - Bool
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 878
      start: 859
    functionDepth: 5
    functionLinenumber: 859
    functionLinenumberEnd: 878
    functionName: gf_rtp_streamer_send_data
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 0
    functionsReached:
    - gf_rtp_builder_process
    - gf_timestamp_rescale
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_streamer_send_data(GF_RTPStreamer *rtp, u8 *data,
      u32 size, u32 fullsize, u64 cts, u64 dts, Bool is_rap, Bool au_start, Bool au_end,
      u32 au_sn, u32 sampleDuration, u32 sampleDescIndex)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_streamer_send_data
      Src: /src/gpac/src/ietf/rtp_streamer.c:883,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - rtp
    - data
    - size
    - cts
    - dts
    - is_rap
    argTypes:
    - GF_RTPStreamer*
    - u8*
    - u32
    - u64
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 884
      start: 880
    functionDepth: 6
    functionLinenumber: 880
    functionLinenumberEnd: 884
    functionName: gf_rtp_streamer_send_au
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 0
    functionsReached:
    - gf_rtp_streamer_send_data
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_streamer_send_au(GF_RTPStreamer *rtp, u8 *data, u32
      size, u64 cts, u64 dts, Bool is_rap)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_streamer_send_data
      Src: /src/gpac/src/ietf/rtp_streamer.c:890,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 7
    argNames:
    - rtp
    - data
    - size
    - cts
    - dts
    - is_rap
    - inc_au_sn
    argTypes:
    - GF_RTPStreamer*
    - u8*
    - u32
    - u64
    - u64
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 891
      start: 886
    functionDepth: 6
    functionLinenumber: 886
    functionLinenumberEnd: 891
    functionName: gf_rtp_streamer_send_au_with_sn
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 2
    functionsReached:
    - gf_rtp_streamer_send_data
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_streamer_send_au_with_sn(GF_RTPStreamer *rtp, u8 *data,
      u32 size, u64 cts, u64 dts, Bool is_rap, u32 inc_au_sn)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - streamer
    argTypes:
    - GF_RTPStreamer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 897
      start: 893
    functionDepth: 0
    functionLinenumber: 893
    functionLinenumberEnd: 897
    functionName: gf_rtp_streamer_disable_auto_rtcp
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_streamer_disable_auto_rtcp(GF_RTPStreamer *streamer)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_send_rtcp_report
      Src: /src/gpac/src/ietf/rtp_streamer.c:919,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 6
    argNames:
    - streamer
    - force_ts
    - rtp_ts
    - force_ntp_type
    - ntp_sec
    - ntp_frac
    argTypes:
    - GF_RTPStreamer*
    - Bool
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 925
      start: 899
    functionDepth: 3
    functionLinenumber: 899
    functionLinenumberEnd: 925
    functionName: gf_rtp_streamer_send_rtcp
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 2
    functionsReached:
    - gf_rtp_send_rtcp_report
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_streamer_send_rtcp(GF_RTPStreamer *streamer, Bool
      force_ts, u32 rtp_ts, u32 force_ntp_type, u32 ntp_sec, u32 ntp_frac)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_send_bye
      Src: /src/gpac/src/ietf/rtp_streamer.c:931,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - streamer
    argTypes:
    - GF_RTPStreamer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 932
      start: 927
    functionDepth: 3
    functionLinenumber: 927
    functionLinenumberEnd: 932
    functionName: gf_rtp_streamer_send_bye
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 0
    functionsReached:
    - gf_rtp_send_bye
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_streamer_send_bye(GF_RTPStreamer *streamer)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - streamer
    argTypes:
    - GF_RTPStreamer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 938
      start: 934
    functionDepth: 0
    functionLinenumber: 934
    functionLinenumberEnd: 938
    functionName: gf_rtp_streamer_get_payload_type
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_streamer_get_payload_type(GF_RTPStreamer *streamer)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - streamer
    argTypes:
    - GF_RTPStreamer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 944
      start: 940
    functionDepth: 0
    functionLinenumber: 940
    functionLinenumberEnd: 944
    functionName: gf_rtp_streamer_get_next_rtp_sn
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_streamer_get_next_rtp_sn(GF_RTPStreamer *streamer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_set_interleave_callbacks
      Src: /src/gpac/src/ietf/rtp_streamer.c:950,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - streamer
    - RTP_TCPCallback
    - cbk1
    - cbk2
    argTypes:
    - GF_RTPStreamer*
    - gf_rtp_tcp_callback
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 951
      start: 946
    functionDepth: 1
    functionLinenumber: 946
    functionLinenumberEnd: 951
    functionName: gf_rtp_streamer_set_interleave_callbacks
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 0
    functionsReached:
    - gf_rtp_set_interleave_callbacks
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_streamer_set_interleave_callbacks(GF_RTPStreamer *streamer,
      gf_rtp_tcp_callback RTP_TCPCallback, void *cbk1, void *cbk2)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_read_rtcp
      Src: /src/gpac/src/ietf/rtp_streamer.c:957,1
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/ietf/rtp_streamer.c:960,1
    - Dst: gf_rtp_decode_rtcp
      Src: /src/gpac/src/ietf/rtp_streamer.c:961,1
    - Dst: rtcp_cbk
      Src: /src/gpac/src/ietf/rtp_streamer.c:980,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - streamer
    - rtcp_cbk
    - udta
    argTypes:
    - GF_RTPStreamer*
    - gf_rtcp_rr_callback
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 953
    functionDepth: 2
    functionLinenumber: 953
    functionLinenumberEnd: 983
    functionName: gf_rtp_streamer_read_rtcp
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 0
    functionsReached:
    - rtcp_cbk
    - gf_net_get_ntp
    - gf_rtp_read_rtcp
    - gf_rtp_decode_rtcp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_streamer_read_rtcp(GF_RTPStreamer *streamer, gf_rtcp_rr_callback
      rtcp_cbk, void *udta)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - streamer
    argTypes:
    - GF_RTPStreamer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 989
      start: 985
    functionDepth: 0
    functionLinenumber: 985
    functionLinenumberEnd: 989
    functionName: gf_rtp_streamer_get_ssrc
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_streamer_get_ssrc(GF_RTPStreamer *streamer)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - streamer
    argTypes:
    - GF_RTPStreamer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 995
      start: 991
    functionDepth: 0
    functionLinenumber: 991
    functionLinenumberEnd: 995
    functionName: gf_rtp_streamer_get_timescale
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_streamer_get_timescale(GF_RTPStreamer *streamer)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - streamer
    argTypes:
    - GF_RTPStreamer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1001
      start: 997
    functionDepth: 0
    functionLinenumber: 997
    functionLinenumberEnd: 1001
    functionName: gf_rtp_streamer_get_codecid
    functionSourceFile: /src/gpac/src/ietf/rtp_streamer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_streamer_get_codecid(GF_RTPStreamer *streamer)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - counter
    argTypes:
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 44
    functionName: gf_crypt_ctr128_inc
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_crypt_ctr128_inc(u8 *counter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:63,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:65,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:70,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - td
    - key
    - iv
    argTypes:
    - GF_Crypt*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 73
    functionName: gf_crypt_init_openssl_cbc
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_opts_get_bool
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_init_openssl_cbc(GF_Crypt* td, void *key, const void
      *iv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: EVP_CIPHER_CTX_free
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:80,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - td
    argTypes:
    - GF_Crypt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 83
    functionName: gf_crypt_deinit_openssl_cbc
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - EVP_CIPHER_CTX_free
    linkageType: ''
    returnType: void
    signature: void gf_crypt_deinit_openssl_cbc(GF_Crypt* td)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:88,1
    - Dst: EVP_CIPHER_CTX_new
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:91,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - td
    - key
    argTypes:
    - GF_Crypt*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 92
    functionName: gf_set_key_openssl_cbc
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - memcpy
    - EVP_CIPHER_CTX_new
    linkageType: ''
    returnType: void
    signature: void gf_set_key_openssl_cbc(GF_Crypt* td, void *key)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:98,1
    - Dst: memset
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:100,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - td
    - iv
    - iv_size
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 102
    functionName: gf_crypt_set_IV_openssl_cbc
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - memcpy
    - memset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_set_IV_openssl_cbc(GF_Crypt* td, const u8 *iv, u32
      iv_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - td
    - iv
    - iv_size
    argTypes:
    - GF_Crypt*
    - u8*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 110
    functionName: gf_crypt_get_IV_openssl_cbc
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_get_IV_openssl_cbc(GF_Crypt* td, u8 *iv, u32 *iv_size)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: EVP_CipherInit_ex
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:122,1
    - Dst: EVP_aes_128_cbc
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:122,1
    - Dst: EVP_CIPHER_CTX_set_padding
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:125,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:131,1
    - Dst: EVP_CipherUpdate
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:132,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:134,1
    - Dst: EVP_CipherUpdate
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:136,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:138,1
    - Dst: memset
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:144,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:145,1
    - Dst: EVP_CipherUpdate
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:146,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:148,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:150,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:152,1
    - Dst: AES_set_encrypt_key
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:159,1
    - Dst: AES_set_decrypt_key
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:161,1
    - Dst: AES_cbc_encrypt
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:168,1
    - Dst: memset
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:171,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:172,1
    - Dst: AES_cbc_encrypt
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:173,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:174,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 50
    argCount: 4
    argNames:
    - td
    - plaintext
    - len
    - aes_crypt_type
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 177
    functionName: gf_crypt_crypt_openssl_cbc
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - EVP_CipherInit_ex
    - memcpy
    - AES_set_decrypt_key
    - EVP_CipherUpdate
    - EVP_CIPHER_CTX_set_padding
    - memset
    - AES_set_encrypt_key
    - EVP_aes_128_cbc
    - AES_cbc_encrypt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_crypt_openssl_cbc(GF_Crypt* td, u8 *plaintext, u32
      len, u32 aes_crypt_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_crypt_crypt_openssl_cbc
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - td
    - plaintext
    - len
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionName: gf_crypt_encrypt_openssl_cbc
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - gf_crypt_crypt_openssl_cbc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_encrypt_openssl_cbc(GF_Crypt* td, u8 *plaintext, u32
      len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_crypt_crypt_openssl_cbc
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - td
    - ciphertext
    - len
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 184
    functionDepth: 1
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionName: gf_crypt_decrypt_openssl_cbc
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - gf_crypt_crypt_openssl_cbc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_decrypt_openssl_cbc(GF_Crypt* td, u8 *ciphertext, u32
      len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:206,1
    - Dst: AES_set_encrypt_key
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:207,1
    - Dst: EVP_CIPHER_CTX_new
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:209,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - td
    - key
    argTypes:
    - GF_Crypt*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 210
    functionName: gf_set_key_openssl_ctr
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - memcpy
    - AES_set_encrypt_key
    - EVP_CIPHER_CTX_new
    linkageType: ''
    returnType: void
    signature: void gf_set_key_openssl_ctr(GF_Crypt* td, void *key)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:220,1
    - Dst: memset
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:222,1
    - Dst: memset
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:223,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - td
    - iv
    - iv_size
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 225
    functionName: gf_crypt_set_IV_openssl_ctr
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - memcpy
    - memset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_set_IV_openssl_ctr(GF_Crypt* td, const u8 *iv, u32
      iv_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - td
    - iv
    - iv_size
    argTypes:
    - GF_Crypt*
    - u8*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 236
    functionName: gf_crypt_get_IV_openssl_ctr
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_get_IV_openssl_ctr(GF_Crypt* td, u8 *iv, u32 *iv_size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:242,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:244,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:249,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - td
    - key
    - iv
    argTypes:
    - GF_Crypt*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 238
    functionDepth: 1
    functionLinenumber: 238
    functionLinenumberEnd: 253
    functionName: gf_crypt_init_openssl_ctr
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_opts_get_bool
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_init_openssl_ctr(GF_Crypt* td, void *key, const void
      *iv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: EVP_CIPHER_CTX_free
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:260,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - td
    argTypes:
    - GF_Crypt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 263
    functionName: gf_crypt_deinit_openssl_ctr
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - EVP_CIPHER_CTX_free
    linkageType: ''
    returnType: void
    signature: void gf_crypt_deinit_openssl_ctr(GF_Crypt* td)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: EVP_EncryptInit_ex
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:273,1
    - Dst: EVP_aes_128_ecb
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:273,1
    - Dst: EVP_CIPHER_CTX_set_padding
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:275,1
    - Dst: EVP_EncryptUpdate
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:280,1
    - Dst: gf_crypt_ctr128_inc
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:284,1
    - Dst: CRYPTO_ctr128_encrypt
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:294,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 3
    argNames:
    - td
    - plaintext
    - len
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 265
    functionDepth: 1
    functionLinenumber: 265
    functionLinenumberEnd: 297
    functionName: gf_crypt_crypt_openssl_ctr
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - CRYPTO_ctr128_encrypt
    - EVP_EncryptUpdate
    - EVP_CIPHER_CTX_set_padding
    - EVP_aes_128_ecb
    - EVP_EncryptInit_ex
    - gf_crypt_ctr128_inc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_crypt_openssl_ctr(GF_Crypt* td, u8 *plaintext, u32
      len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_crypt_crypt_openssl_ctr
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:301,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - td
    - plaintext
    - len
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 299
    functionDepth: 2
    functionLinenumber: 299
    functionLinenumberEnd: 302
    functionName: gf_crypt_encrypt_openssl_ctr
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - gf_crypt_crypt_openssl_ctr
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_encrypt_openssl_ctr(GF_Crypt* td, u8 *plaintext, u32
      len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_crypt_crypt_openssl_ctr
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:306,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - td
    - ciphertext
    - len
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 304
    functionDepth: 2
    functionLinenumber: 304
    functionLinenumberEnd: 307
    functionName: gf_crypt_decrypt_openssl_ctr
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - gf_crypt_crypt_openssl_ctr
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_decrypt_openssl_ctr(GF_Crypt* td, u8 *ciphertext, u32
      len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:322,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:324,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - td
    - key
    - iv
    argTypes:
    - GF_Crypt*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 318
    functionDepth: 1
    functionLinenumber: 318
    functionLinenumberEnd: 328
    functionName: gf_crypt_init_openssl_ecb
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_init_openssl_ecb(GF_Crypt* td, void *key, const void
      *iv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: EVP_CIPHER_CTX_free
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:335,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - td
    argTypes:
    - GF_Crypt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 330
    functionDepth: 0
    functionLinenumber: 330
    functionLinenumberEnd: 338
    functionName: gf_crypt_deinit_openssl_ecb
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - EVP_CIPHER_CTX_free
    linkageType: ''
    returnType: void
    signature: void gf_crypt_deinit_openssl_ecb(GF_Crypt* td)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:343,1
    - Dst: EVP_CIPHER_CTX_new
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:346,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - td
    - key
    argTypes:
    - GF_Crypt*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 340
    functionDepth: 0
    functionLinenumber: 340
    functionLinenumberEnd: 347
    functionName: gf_set_key_openssl_ecb
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - memcpy
    - EVP_CIPHER_CTX_new
    linkageType: ''
    returnType: void
    signature: void gf_set_key_openssl_ecb(GF_Crypt* td, void *key)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - td
    - iv
    - iv_size
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 349
    functionDepth: 0
    functionLinenumber: 349
    functionLinenumberEnd: 352
    functionName: gf_crypt_set_IV_openssl_ecb
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_set_IV_openssl_ecb(GF_Crypt* td, const u8 *iv, u32
      iv_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - td
    - iv
    - iv_size
    argTypes:
    - GF_Crypt*
    - u8*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 354
    functionDepth: 0
    functionLinenumber: 354
    functionLinenumberEnd: 359
    functionName: gf_crypt_get_IV_openssl_ecb
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_get_IV_openssl_ecb(GF_Crypt* td, u8 *iv, u32 *iv_size)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: EVP_CipherInit_ex
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:370,1
    - Dst: EVP_aes_128_ecb
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:370,1
    - Dst: EVP_CIPHER_CTX_set_padding
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:372,1
    - Dst: EVP_CipherUpdate
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:374,1
    - Dst: AES_set_encrypt_key
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:381,1
    - Dst: AES_set_decrypt_key
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:383,1
    - Dst: AES_ecb_encrypt
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:394,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 27
    argCount: 4
    argNames:
    - td
    - plaintext
    - len
    - aes_crypt_type
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 361
    functionDepth: 0
    functionLinenumber: 361
    functionLinenumberEnd: 397
    functionName: gf_crypt_crypt_openssl_ecb
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - EVP_CipherInit_ex
    - AES_set_decrypt_key
    - EVP_CipherUpdate
    - EVP_aes_128_ecb
    - AES_set_encrypt_key
    - EVP_CIPHER_CTX_set_padding
    - AES_ecb_encrypt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_crypt_openssl_ecb(GF_Crypt* td, u8 *plaintext, u32
      len, u32 aes_crypt_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_crypt_crypt_openssl_ecb
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:401,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - td
    - plaintext
    - len
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 399
    functionDepth: 1
    functionLinenumber: 399
    functionLinenumberEnd: 402
    functionName: gf_crypt_encrypt_openssl_ecb
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - gf_crypt_crypt_openssl_ecb
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_encrypt_openssl_ecb(GF_Crypt* td, u8 *plaintext, u32
      len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_crypt_crypt_openssl_ecb
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:406,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - td
    - ciphertext
    - len
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 407
      start: 404
    functionDepth: 1
    functionLinenumber: 404
    functionLinenumberEnd: 407
    functionName: gf_crypt_decrypt_openssl_ecb
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - gf_crypt_crypt_openssl_ecb
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_decrypt_openssl_ecb(GF_Crypt* td, u8 *ciphertext, u32
      len)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 36
    argCount: 2
    argNames:
    - td
    - mode
    argTypes:
    - GF_Crypt*
    - GF_CRYPTO_MODE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 449
    functionName: gf_crypt_open_open_openssl
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_open_open_openssl(GF_Crypt* td, GF_CRYPTO_MODE mode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/crypto/g_crypt.c:34,1
    - Dst: gf_crypt_open_open_openssl
      Src: /src/gpac/src/crypto/g_crypt.c:38,1
    - Dst: gf_crypt_open_open_tinyaes
      Src: /src/gpac/src/crypto/g_crypt.c:40,1
    - Dst: gf_free
      Src: /src/gpac/src/crypto/g_crypt.c:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - algorithm
    - mode
    argTypes:
    - GF_CRYPTO_ALGO
    - GF_CRYPTO_MODE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 48
    functionName: gf_crypt_open
    functionSourceFile: /src/gpac/src/crypto/g_crypt.c
    functionUses: 1
    functionsReached:
    - gf_crypt_open_open_tinyaes
    - gf_free
    - gf_crypt_open_open_openssl
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_crypt_open(GF_CRYPTO_ALGO algorithm, GF_CRYPTO_MODE mode)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_Crypt*::_deinit_crypt
      Src: /src/gpac/src/crypto/g_crypt.c:54,1
    - Dst: gf_free
      Src: /src/gpac/src/crypto/g_crypt.c:55,1
    - Dst: gf_free
      Src: /src/gpac/src/crypto/g_crypt.c:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - td
    argTypes:
    - GF_Crypt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 57
    functionName: gf_crypt_close
    functionSourceFile: /src/gpac/src/crypto/g_crypt.c
    functionUses: 1
    functionsReached:
    - gf_free
    - GF_Crypt*::_deinit_crypt
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_crypt_close(GF_Crypt *td)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_Crypt*::_set_key
      Src: /src/gpac/src/crypto/g_crypt.c:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - td
    - key
    argTypes:
    - GF_Crypt*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 64
    functionName: gf_crypt_set_key
    functionSourceFile: /src/gpac/src/crypto/g_crypt.c
    functionUses: 0
    functionsReached:
    - GF_Crypt*::_set_key
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_crypt_set_key(GF_Crypt *td, void *key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_Crypt*::_set_state
      Src: /src/gpac/src/crypto/g_crypt.c:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - td
    - iv
    - size
    argTypes:
    - GF_Crypt*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 71
    functionName: gf_crypt_set_IV
    functionSourceFile: /src/gpac/src/crypto/g_crypt.c
    functionUses: 1
    functionsReached:
    - GF_Crypt*::_set_state
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_crypt_set_IV(GF_Crypt *td, const void *iv, u32 size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_Crypt*::_get_state
      Src: /src/gpac/src/crypto/g_crypt.c:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - td
    - iv
    - size
    argTypes:
    - GF_Crypt*
    - void*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 78
    functionName: gf_crypt_get_IV
    functionSourceFile: /src/gpac/src/crypto/g_crypt.c
    functionUses: 1
    functionsReached:
    - GF_Crypt*::_get_state
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_crypt_get_IV(GF_Crypt *td, void *iv, u32 *size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_Crypt*::_init_crypt
      Src: /src/gpac/src/crypto/g_crypt.c:86,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/crypto/g_crypt.c:87,1
    - Dst: GF_Crypt*::_set_key
      Src: /src/gpac/src/crypto/g_crypt.c:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - td
    - key
    - IV
    argTypes:
    - GF_Crypt*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 91
    functionName: gf_crypt_init
    functionSourceFile: /src/gpac/src/crypto/g_crypt.c
    functionUses: 1
    functionsReached:
    - gf_crypt_close
    - GF_Crypt*::_init_crypt
    - GF_Crypt*::_set_key
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_crypt_init(GF_Crypt *td, void *key, const void *IV)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_Crypt*::_crypt
      Src: /src/gpac/src/crypto/g_crypt.c:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - td
    - plaintext
    - len
    argTypes:
    - GF_Crypt*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 98
    functionName: gf_crypt_encrypt
    functionSourceFile: /src/gpac/src/crypto/g_crypt.c
    functionUses: 1
    functionsReached:
    - GF_Crypt*::_crypt
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_crypt_encrypt(GF_Crypt *td, void *plaintext, u32 len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_Crypt*::_decrypt
      Src: /src/gpac/src/crypto/g_crypt.c:105,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - td
    - ciphertext
    - len
    argTypes:
    - GF_Crypt*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 106
    functionName: gf_crypt_decrypt
    functionSourceFile: /src/gpac/src/crypto/g_crypt.c
    functionUses: 1
    functionsReached:
    - GF_Crypt*::_decrypt
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_crypt_decrypt(GF_Crypt *td, void *ciphertext, u32 len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: AES_init_ctx_iv
      Src: /src/gpac/src/crypto/g_crypt_tinyaes.c:47,1
    - Dst: AES_init_ctx
      Src: /src/gpac/src/crypto/g_crypt_tinyaes.c:49,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - td
    - key
    - iv
    argTypes:
    - GF_Crypt*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 52
    functionName: gf_crypt_init_tinyaes_cbc
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached:
    - AES_init_ctx_iv
    - AES_init_ctx
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_init_tinyaes_cbc(GF_Crypt* td, void *key, const void
      *iv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - td
    argTypes:
    - GF_Crypt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: gf_crypt_deinit_tinyaes_cbc
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_crypt_deinit_tinyaes_cbc(GF_Crypt* td)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AES_init_ctx
      Src: /src/gpac/src/crypto/g_crypt_tinyaes.c:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - td
    - key
    argTypes:
    - GF_Crypt*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 62
    functionName: gf_set_key_tinyaes_cbc
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached:
    - AES_init_ctx
    linkageType: ''
    returnType: void
    signature: void gf_set_key_tinyaes_cbc(GF_Crypt* td, void *key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: AES_ctx_set_iv
      Src: /src/gpac/src/crypto/g_crypt_tinyaes.c:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - td
    - iv
    - iv_size
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 71
    functionName: gf_crypt_set_IV_tinyaes_cbc
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached:
    - AES_ctx_set_iv
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_set_IV_tinyaes_cbc(GF_Crypt* td, const u8 *iv, u32
      iv_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AES_ctx_get_iv
      Src: /src/gpac/src/crypto/g_crypt_tinyaes.c:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - td
    - iv
    - iv_size
    argTypes:
    - GF_Crypt*
    - u8*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 80
    functionName: gf_crypt_get_IV_tinyaes_cbc
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached:
    - AES_ctx_get_iv
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_get_IV_tinyaes_cbc(GF_Crypt* td, u8 *iv, u32 *iv_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AES_CBC_encrypt_buffer
      Src: /src/gpac/src/crypto/g_crypt_tinyaes.c:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - td
    - plaintext
    - len
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 88
    functionName: gf_crypt_encrypt_tinyaes_cbc
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached:
    - AES_CBC_encrypt_buffer
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_encrypt_tinyaes_cbc(GF_Crypt* td, u8 *plaintext, u32
      len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: AES_CBC_decrypt_buffer
      Src: /src/gpac/src/crypto/g_crypt_tinyaes.c:96,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - td
    - ciphertext
    - len
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 98
    functionName: gf_crypt_decrypt_tinyaes_cbc
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached:
    - AES_CBC_decrypt_buffer
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_decrypt_tinyaes_cbc(GF_Crypt* td, u8 *ciphertext, u32
      len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AES_init_ctx
      Src: /src/gpac/src/crypto/g_crypt_tinyaes.c:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - td
    - key
    argTypes:
    - GF_Crypt*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 107
    functionName: gf_set_key_tinyaes_ctr
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached:
    - AES_init_ctx
    linkageType: ''
    returnType: void
    signature: void gf_set_key_tinyaes_ctr(GF_Crypt* td, void *key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: AES_ctx_set_iv
      Src: /src/gpac/src/crypto/g_crypt_tinyaes.c:115,1
    - Dst: AES_ctx_set_iv
      Src: /src/gpac/src/crypto/g_crypt_tinyaes.c:117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - td
    - iv
    - iv_size
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 120
    functionName: gf_crypt_set_IV_tinyaes_ctr
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached:
    - AES_ctx_set_iv
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_set_IV_tinyaes_ctr(GF_Crypt* td, const u8 *iv, u32
      iv_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AES_ctx_get_iv
      Src: /src/gpac/src/crypto/g_crypt_tinyaes.c:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - td
    - iv
    - iv_size
    argTypes:
    - GF_Crypt*
    - u8*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 129
    functionName: gf_crypt_get_IV_tinyaes_ctr
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached:
    - AES_ctx_get_iv
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_get_IV_tinyaes_ctr(GF_Crypt* td, u8 *iv, u32 *iv_size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: AES_init_ctx_iv
      Src: /src/gpac/src/crypto/g_crypt_tinyaes.c:142,1
    - Dst: AES_init_ctx
      Src: /src/gpac/src/crypto/g_crypt_tinyaes.c:144,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - td
    - key
    - iv
    argTypes:
    - GF_Crypt*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 147
    functionName: gf_crypt_init_tinyaes_ctr
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached:
    - AES_init_ctx_iv
    - AES_init_ctx
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_init_tinyaes_ctr(GF_Crypt* td, void *key, const void
      *iv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - td
    argTypes:
    - GF_Crypt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionName: gf_crypt_deinit_tinyaes_ctr
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_crypt_deinit_tinyaes_ctr(GF_Crypt* td)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AES_CTR_xcrypt_buffer
      Src: /src/gpac/src/crypto/g_crypt_tinyaes.c:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - td
    - plaintext
    - len
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 159
    functionName: gf_crypt_encrypt_tinyaes_ctr
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached:
    - AES_CTR_xcrypt_buffer
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_encrypt_tinyaes_ctr(GF_Crypt* td, u8 *plaintext, u32
      len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AES_CTR_xcrypt_buffer
      Src: /src/gpac/src/crypto/g_crypt_tinyaes.c:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - td
    - ciphertext
    - len
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 166
    functionName: gf_crypt_decrypt_tinyaes_ctr
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached:
    - AES_CTR_xcrypt_buffer
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_decrypt_tinyaes_ctr(GF_Crypt* td, u8 *ciphertext, u32
      len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: AES_init_ctx
      Src: /src/gpac/src/crypto/g_crypt_tinyaes.c:178,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - td
    - key
    - iv
    argTypes:
    - GF_Crypt*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 180
    functionName: gf_crypt_init_tinyaes_ecb
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached:
    - AES_init_ctx
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_init_tinyaes_ecb(GF_Crypt* td, void *key, const void
      *iv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - td
    argTypes:
    - GF_Crypt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionName: gf_crypt_deinit_tinyaes_ecb
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_crypt_deinit_tinyaes_ecb(GF_Crypt* td)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AES_init_ctx
      Src: /src/gpac/src/crypto/g_crypt_tinyaes.c:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - td
    - key
    argTypes:
    - GF_Crypt*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 190
    functionName: gf_set_key_tinyaes_ecb
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached:
    - AES_init_ctx
    linkageType: ''
    returnType: void
    signature: void gf_set_key_tinyaes_ecb(GF_Crypt* td, void *key)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - td
    - iv
    - iv_size
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 195
    functionName: gf_crypt_set_IV_tinyaes_ecb
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_set_IV_tinyaes_ecb(GF_Crypt* td, const u8 *iv, u32
      iv_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/crypto/g_crypt_tinyaes.c:200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - td
    - iv
    - iv_size
    argTypes:
    - GF_Crypt*
    - u8*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 202
    functionName: gf_crypt_get_IV_tinyaes_ecb
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_get_IV_tinyaes_ecb(GF_Crypt* td, u8 *iv, u32 *iv_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: AES_ECB_encrypt
      Src: /src/gpac/src/crypto/g_crypt_tinyaes.c:210,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - td
    - plaintext
    - len
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 205
    functionDepth: 1
    functionLinenumber: 205
    functionLinenumberEnd: 215
    functionName: gf_crypt_encrypt_tinyaes_ecb
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached:
    - AES_ECB_encrypt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_encrypt_tinyaes_ecb(GF_Crypt* td, u8 *plaintext, u32
      len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: AES_ECB_decrypt
      Src: /src/gpac/src/crypto/g_crypt_tinyaes.c:222,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - td
    - ciphertext
    - len
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 217
    functionDepth: 1
    functionLinenumber: 217
    functionLinenumberEnd: 227
    functionName: gf_crypt_decrypt_tinyaes_ecb
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 0
    functionsReached:
    - AES_ECB_decrypt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_decrypt_tinyaes_ecb(GF_Crypt* td, u8 *ciphertext, u32
      len)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 36
    argCount: 2
    argNames:
    - td
    - mode
    argTypes:
    - GF_Crypt*
    - GF_CRYPTO_MODE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 267
    functionName: gf_crypt_open_open_tinyaes
    functionSourceFile: /src/gpac/src/crypto/g_crypt_tinyaes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_open_open_tinyaes(GF_Crypt* td, GF_CRYPTO_MODE mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - num
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 144
    functionName: getSBoxValue
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: getSBoxValue(num)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - num
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 151
    functionName: getSBoxInvert
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: getSBoxInvert(num)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getSBoxValue
      Src: /src/gpac/src/crypto/tiny_aes.c:199,1
    - Dst: getSBoxValue
      Src: /src/gpac/src/crypto/tiny_aes.c:200,1
    - Dst: getSBoxValue
      Src: /src/gpac/src/crypto/tiny_aes.c:201,1
    - Dst: getSBoxValue
      Src: /src/gpac/src/crypto/tiny_aes.c:202,1
    - Dst: getSBoxValue
      Src: /src/gpac/src/crypto/tiny_aes.c:212,1
    - Dst: getSBoxValue
      Src: /src/gpac/src/crypto/tiny_aes.c:213,1
    - Dst: getSBoxValue
      Src: /src/gpac/src/crypto/tiny_aes.c:214,1
    - Dst: getSBoxValue
      Src: /src/gpac/src/crypto/tiny_aes.c:215,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 42
    argCount: 2
    argNames:
    - RoundKey
    - Key
    argTypes:
    - u8*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 225
    functionName: KeyExpansion
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 0
    functionsReached:
    - getSBoxValue
    linkageType: ''
    returnType: void
    signature: void KeyExpansion(u8* RoundKey, const u8* Key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: KeyExpansion
      Src: /src/gpac/src/crypto/tiny_aes.c:229,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - key
    argTypes:
    - struct AES_ctx*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 227
    functionDepth: 2
    functionLinenumber: 227
    functionLinenumberEnd: 233
    functionName: AES_init_ctx
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 6
    functionsReached:
    - KeyExpansion
    linkageType: ''
    returnType: void
    signature: void AES_init_ctx(struct AES_ctx* ctx, const u8* key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: KeyExpansion
      Src: /src/gpac/src/crypto/tiny_aes.c:238,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/tiny_aes.c:242,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - key
    - iv
    argTypes:
    - struct AES_ctx*
    - u8*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 236
    functionDepth: 2
    functionLinenumber: 236
    functionLinenumberEnd: 243
    functionName: AES_init_ctx_iv
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 2
    functionsReached:
    - memcpy
    - KeyExpansion
    linkageType: ''
    returnType: void
    signature: void AES_init_ctx_iv(struct AES_ctx* ctx, const u8* key, const u8*
      iv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/crypto/tiny_aes.c:246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - iv
    argTypes:
    - struct AES_ctx*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 247
    functionName: AES_ctx_set_iv
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 2
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: void
    signature: void AES_ctx_set_iv(struct AES_ctx* ctx, const u8* iv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/crypto/tiny_aes.c:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - iv
    argTypes:
    - struct AES_ctx*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 248
    functionDepth: 0
    functionLinenumber: 248
    functionLinenumberEnd: 251
    functionName: AES_ctx_get_iv
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 2
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: void
    signature: void AES_ctx_get_iv(struct AES_ctx* ctx, u8* iv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - round
    - state
    - RoundKey
    argTypes:
    - u8
    - state_t*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 266
    functionName: AddRoundKey
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void AddRoundKey(u8 round,state_t* state,u8* RoundKey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getSBoxValue
      Src: /src/gpac/src/crypto/tiny_aes.c:277,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - state
    argTypes:
    - state_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 270
    functionDepth: 1
    functionLinenumber: 270
    functionLinenumberEnd: 280
    functionName: SubBytes
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 0
    functionsReached:
    - getSBoxValue
    linkageType: ''
    returnType: void
    signature: void SubBytes(state_t* state)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 1
    argNames:
    - state
    argTypes:
    - state_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 285
    functionDepth: 0
    functionLinenumber: 285
    functionLinenumberEnd: 311
    functionName: ShiftRows
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ShiftRows(state_t* state)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 313
    functionDepth: 0
    functionLinenumber: 313
    functionLinenumberEnd: 316
    functionName: xtime
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u8
    signature: u8 xtime(u8 x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xtime
      Src: /src/gpac/src/crypto/tiny_aes.c:327,1
    - Dst: xtime
      Src: /src/gpac/src/crypto/tiny_aes.c:328,1
    - Dst: xtime
      Src: /src/gpac/src/crypto/tiny_aes.c:329,1
    - Dst: xtime
      Src: /src/gpac/src/crypto/tiny_aes.c:330,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - state
    argTypes:
    - state_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 319
    functionDepth: 1
    functionLinenumber: 319
    functionLinenumberEnd: 332
    functionName: MixColumns
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 0
    functionsReached:
    - xtime
    linkageType: ''
    returnType: void
    signature: void MixColumns(state_t* state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xtime
      Src: /src/gpac/src/crypto/tiny_aes.c:342,1
    - Dst: xtime
      Src: /src/gpac/src/crypto/tiny_aes.c:343,1
    - Dst: xtime
      Src: /src/gpac/src/crypto/tiny_aes.c:343,1
    - Dst: xtime
      Src: /src/gpac/src/crypto/tiny_aes.c:344,1
    - Dst: xtime
      Src: /src/gpac/src/crypto/tiny_aes.c:344,1
    - Dst: xtime
      Src: /src/gpac/src/crypto/tiny_aes.c:344,1
    - Dst: xtime
      Src: /src/gpac/src/crypto/tiny_aes.c:345,1
    - Dst: xtime
      Src: /src/gpac/src/crypto/tiny_aes.c:345,1
    - Dst: xtime
      Src: /src/gpac/src/crypto/tiny_aes.c:345,1
    - Dst: xtime
      Src: /src/gpac/src/crypto/tiny_aes.c:345,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - u8
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 339
    functionDepth: 1
    functionLinenumber: 339
    functionLinenumberEnd: 346
    functionName: Multiply
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 0
    functionsReached:
    - xtime
    linkageType: ''
    returnType: u8
    signature: u8 Multiply(u8 x, u8 y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 355
    functionName: Multiply
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: Multiply(x, y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Multiply
      Src: /src/gpac/src/crypto/tiny_aes.c:371,1
    - Dst: Multiply
      Src: /src/gpac/src/crypto/tiny_aes.c:371,1
    - Dst: Multiply
      Src: /src/gpac/src/crypto/tiny_aes.c:371,1
    - Dst: Multiply
      Src: /src/gpac/src/crypto/tiny_aes.c:371,1
    - Dst: Multiply
      Src: /src/gpac/src/crypto/tiny_aes.c:372,1
    - Dst: Multiply
      Src: /src/gpac/src/crypto/tiny_aes.c:372,1
    - Dst: Multiply
      Src: /src/gpac/src/crypto/tiny_aes.c:372,1
    - Dst: Multiply
      Src: /src/gpac/src/crypto/tiny_aes.c:372,1
    - Dst: Multiply
      Src: /src/gpac/src/crypto/tiny_aes.c:373,1
    - Dst: Multiply
      Src: /src/gpac/src/crypto/tiny_aes.c:373,1
    - Dst: Multiply
      Src: /src/gpac/src/crypto/tiny_aes.c:373,1
    - Dst: Multiply
      Src: /src/gpac/src/crypto/tiny_aes.c:373,1
    - Dst: Multiply
      Src: /src/gpac/src/crypto/tiny_aes.c:374,1
    - Dst: Multiply
      Src: /src/gpac/src/crypto/tiny_aes.c:374,1
    - Dst: Multiply
      Src: /src/gpac/src/crypto/tiny_aes.c:374,1
    - Dst: Multiply
      Src: /src/gpac/src/crypto/tiny_aes.c:374,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - state
    argTypes:
    - state_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 360
    functionDepth: 2
    functionLinenumber: 360
    functionLinenumberEnd: 376
    functionName: InvMixColumns
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 0
    functionsReached:
    - Multiply
    linkageType: ''
    returnType: void
    signature: void InvMixColumns(state_t* state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getSBoxInvert
      Src: /src/gpac/src/crypto/tiny_aes.c:388,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - state
    argTypes:
    - state_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 381
    functionDepth: 1
    functionLinenumber: 381
    functionLinenumberEnd: 391
    functionName: InvSubBytes
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 0
    functionsReached:
    - getSBoxInvert
    linkageType: ''
    returnType: void
    signature: void InvSubBytes(state_t* state)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 1
    argNames:
    - state
    argTypes:
    - state_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 393
    functionDepth: 0
    functionLinenumber: 393
    functionLinenumberEnd: 419
    functionName: InvShiftRows
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void InvShiftRows(state_t* state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AddRoundKey
      Src: /src/gpac/src/crypto/tiny_aes.c:428,1
    - Dst: SubBytes
      Src: /src/gpac/src/crypto/tiny_aes.c:435,1
    - Dst: ShiftRows
      Src: /src/gpac/src/crypto/tiny_aes.c:436,1
    - Dst: MixColumns
      Src: /src/gpac/src/crypto/tiny_aes.c:437,1
    - Dst: AddRoundKey
      Src: /src/gpac/src/crypto/tiny_aes.c:438,1
    - Dst: SubBytes
      Src: /src/gpac/src/crypto/tiny_aes.c:443,1
    - Dst: ShiftRows
      Src: /src/gpac/src/crypto/tiny_aes.c:444,1
    - Dst: AddRoundKey
      Src: /src/gpac/src/crypto/tiny_aes.c:445,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - state
    - RoundKey
    argTypes:
    - state_t*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 423
    functionDepth: 2
    functionLinenumber: 423
    functionLinenumberEnd: 446
    functionName: Cipher
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 0
    functionsReached:
    - MixColumns
    - AddRoundKey
    - ShiftRows
    - SubBytes
    linkageType: ''
    returnType: void
    signature: void Cipher(state_t* state, u8* RoundKey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AddRoundKey
      Src: /src/gpac/src/crypto/tiny_aes.c:453,1
    - Dst: InvShiftRows
      Src: /src/gpac/src/crypto/tiny_aes.c:460,1
    - Dst: InvSubBytes
      Src: /src/gpac/src/crypto/tiny_aes.c:461,1
    - Dst: AddRoundKey
      Src: /src/gpac/src/crypto/tiny_aes.c:462,1
    - Dst: InvMixColumns
      Src: /src/gpac/src/crypto/tiny_aes.c:463,1
    - Dst: InvShiftRows
      Src: /src/gpac/src/crypto/tiny_aes.c:468,1
    - Dst: InvSubBytes
      Src: /src/gpac/src/crypto/tiny_aes.c:469,1
    - Dst: AddRoundKey
      Src: /src/gpac/src/crypto/tiny_aes.c:470,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - state
    - RoundKey
    argTypes:
    - state_t*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 448
    functionDepth: 3
    functionLinenumber: 448
    functionLinenumberEnd: 471
    functionName: InvCipher
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 0
    functionsReached:
    - InvMixColumns
    - InvSubBytes
    - AddRoundKey
    - InvShiftRows
    linkageType: ''
    returnType: void
    signature: void InvCipher(state_t* state,u8* RoundKey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Cipher
      Src: /src/gpac/src/crypto/tiny_aes.c:483,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - buf
    argTypes:
    - struct AES_ctx*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 484
      start: 480
    functionDepth: 3
    functionLinenumber: 480
    functionLinenumberEnd: 484
    functionName: AES_ECB_encrypt
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 1
    functionsReached:
    - Cipher
    linkageType: ''
    returnType: void
    signature: void AES_ECB_encrypt(struct AES_ctx *ctx,const u8* buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InvCipher
      Src: /src/gpac/src/crypto/tiny_aes.c:489,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - buf
    argTypes:
    - struct AES_ctx*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 486
    functionDepth: 4
    functionLinenumber: 486
    functionLinenumberEnd: 490
    functionName: AES_ECB_decrypt
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 1
    functionsReached:
    - InvCipher
    linkageType: ''
    returnType: void
    signature: void AES_ECB_decrypt(struct AES_ctx* ctx,const u8* buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - buf
    - Iv
    argTypes:
    - u8*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 509
      start: 502
    functionDepth: 0
    functionLinenumber: 502
    functionLinenumberEnd: 509
    functionName: XorWithIv
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XorWithIv(u8* buf, u8* Iv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XorWithIv
      Src: /src/gpac/src/crypto/tiny_aes.c:517,1
    - Dst: Cipher
      Src: /src/gpac/src/crypto/tiny_aes.c:518,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/tiny_aes.c:524,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - buf
    - length
    argTypes:
    - struct AES_ctx*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 511
    functionDepth: 3
    functionLinenumber: 511
    functionLinenumberEnd: 525
    functionName: AES_CBC_encrypt_buffer
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 1
    functionsReached:
    - memcpy
    - XorWithIv
    - Cipher
    linkageType: ''
    returnType: void
    signature: void AES_CBC_encrypt_buffer(struct AES_ctx *ctx,u8* buf, u32 length)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/crypto/tiny_aes.c:533,1
    - Dst: InvCipher
      Src: /src/gpac/src/crypto/tiny_aes.c:534,1
    - Dst: XorWithIv
      Src: /src/gpac/src/crypto/tiny_aes.c:535,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/tiny_aes.c:536,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - buf
    - length
    argTypes:
    - struct AES_ctx*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 540
      start: 527
    functionDepth: 4
    functionLinenumber: 527
    functionLinenumberEnd: 540
    functionName: AES_CBC_decrypt_buffer
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 1
    functionsReached:
    - memcpy
    - XorWithIv
    - InvCipher
    linkageType: ''
    returnType: void
    signature: void AES_CBC_decrypt_buffer(struct AES_ctx* ctx, u8* buf,  u32 length)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/crypto/tiny_aes.c:553,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/tiny_aes.c:560,1
    - Dst: Cipher
      Src: /src/gpac/src/crypto/tiny_aes.c:561,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 3
    argNames:
    - ctx
    - buf
    - length
    argTypes:
    - struct AES_ctx*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 581
      start: 549
    functionDepth: 3
    functionLinenumber: 549
    functionLinenumberEnd: 581
    functionName: AES_CTR_xcrypt_buffer
    functionSourceFile: /src/gpac/src/crypto/tiny_aes.c
    functionUses: 2
    functionsReached:
    - memcpy
    - gf_assert
    - Cipher
    linkageType: ''
    returnType: void
    signature: void AES_CTR_xcrypt_buffer(struct AES_ctx* ctx, u8* buf, u32 length)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _a
    - ','
    - _r
    - ','
    - _g
    - ','
    - _b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 232
    functionName: GF_COLW_ARGB
    functionSourceFile: /src/gpac/src/evg/rast_soft.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GF_COLW_ARGB(_a, _r, _g, _b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 372
    functionDepth: 0
    functionLinenumber: 372
    functionLinenumberEnd: 373
    functionName: TRUNC
    functionSourceFile: /src/gpac/src/evg/rast_soft.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRUNC( x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 373
    functionDepth: 0
    functionLinenumber: 373
    functionLinenumberEnd: 374
    functionName: SUBPIXELS
    functionSourceFile: /src/gpac/src/evg/rast_soft.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SUBPIXELS( x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 375
    functionName: FLOOR
    functionSourceFile: /src/gpac/src/evg/rast_soft.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FLOOR( x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 375
    functionDepth: 0
    functionLinenumber: 375
    functionLinenumberEnd: 376
    functionName: CEILING
    functionSourceFile: /src/gpac/src/evg/rast_soft.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CEILING( x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 376
    functionDepth: 0
    functionLinenumber: 376
    functionLinenumberEnd: 377
    functionName: ROUND
    functionSourceFile: /src/gpac/src/evg/rast_soft.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ROUND( x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 377
    functionDepth: 0
    functionLinenumber: 377
    functionLinenumberEnd: 378
    functionName: UPSCALE
    functionSourceFile: /src/gpac/src/evg/rast_soft.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: UPSCALE( x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 378
    functionDepth: 0
    functionLinenumber: 378
    functionLinenumberEnd: 379
    functionName: DOWNSCALE
    functionSourceFile: /src/gpac/src/evg/rast_soft.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DOWNSCALE( x )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_store_ss
      Src: /src/gpac/src/evg/raster3d.c:46,1
    - Dst: _mm_min_ss
      Src: /src/gpac/src/evg/raster3d.c:46,1
    - Dst: _mm_max_ss
      Src: /src/gpac/src/evg/raster3d.c:46,1
    - Dst: _mm_set_ss
      Src: /src/gpac/src/evg/raster3d.c:46,1
    - Dst: _mm_set_ss
      Src: /src/gpac/src/evg/raster3d.c:46,1
    - Dst: _mm_set_ss
      Src: /src/gpac/src/evg/raster3d.c:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - val
    - minval
    - maxval
    argTypes:
    - Float
    - Float
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: float_clamp
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached:
    - _mm_min_ss
    - _mm_store_ss
    - _mm_max_ss
    - _mm_set_ss
    linkageType: ''
    returnType: Float
    signature: Float float_clamp(Float val, Float minval, Float maxval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _val
    - ','
    - _minval
    - ','
    - _maxval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: float_clamp
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: float_clamp(_val, _minval, _maxval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - a
    - b
    - c
    argTypes:
    - GF_Vec4*
    - GF_Vec4*
    - GF_Vec4*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: edgeFunction
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: float
    signature: float edgeFunction(const GF_Vec4 *a, const GF_Vec4 *b, const GF_Vec4
      *c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - a
    - b_minus_a_x
    - b_minus_a_y
    - c
    argTypes:
    - GF_Vec4*
    - Float
    - Float
    - GF_Vec4*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: edgeFunction_pre
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: float
    signature: float edgeFunction_pre(const GF_Vec4 *a, const Float b_minus_a_x, const
      Float b_minus_a_y, const GF_Vec4 *c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_divfix
      Src: /src/gpac/src/evg/raster3d.c:71,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/raster3d.c:72,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/raster3d.c:73,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/raster3d.c:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - pt
    argTypes:
    - GF_Vec4*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 76
    functionName: evg3d_persp_divide
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached:
    - gf_divfix
    - gf_mulfix
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE evg3d_persp_divide(GF_Vec4 *pt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: UPSCALE
      Src: /src/gpac/src/evg/raster3d.c:100,1
    - Dst: UPSCALE
      Src: /src/gpac/src/evg/raster3d.c:101,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 4
    argNames:
    - surf
    - pt
    - x
    - y
    argTypes:
    - GF_EVGSurface*
    - GF_Vec4*
    - TPos*
    - TPos*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 106
    functionName: evg_ndc_to_raster
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached:
    - UPSCALE
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE evg_ndc_to_raster(GF_EVGSurface *surf, GF_Vec4 *pt, TPos *x,
      TPos *y)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gray_record_cell
      Src: /src/gpac/src/evg/raster3d.c:113,1
    - Dst: TRUNC
      Src: /src/gpac/src/evg/raster3d.c:115,1
    - Dst: TRUNC
      Src: /src/gpac/src/evg/raster3d.c:116,1
    - Dst: gray_set_cell
      Src: /src/gpac/src/evg/raster3d.c:120,1
    - Dst: SUBPIXELS
      Src: /src/gpac/src/evg/raster3d.c:122,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 3
    argNames:
    - surf
    - x
    - y
    argTypes:
    - GF_EVGSurface*
    - TPos
    - TPos
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 127
    functionName: gray3d_move_to
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached:
    - gray_set_cell
    - gray_record_cell
    - SUBPIXELS
    - TRUNC
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gray3d_move_to(GF_EVGSurface *surf, TPos x, TPos y)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/evg/raster3d.c:157,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster3d.c:158,1
    - Dst: gf_mx_apply_vec_4x4
      Src: /src/gpac/src/evg/raster3d.c:184,1
    - Dst: evg3d_persp_divide
      Src: /src/gpac/src/evg/raster3d.c:185,1
    - Dst: evg_ndc_to_raster
      Src: /src/gpac/src/evg/raster3d.c:186,1
    - Dst: gf_mx_apply_vec_4x4
      Src: /src/gpac/src/evg/raster3d.c:187,1
    - Dst: evg3d_persp_divide
      Src: /src/gpac/src/evg/raster3d.c:188,1
    - Dst: evg_ndc_to_raster
      Src: /src/gpac/src/evg/raster3d.c:189,1
    - Dst: gf_mx_apply_vec_4x4
      Src: /src/gpac/src/evg/raster3d.c:190,1
    - Dst: evg3d_persp_divide
      Src: /src/gpac/src/evg/raster3d.c:191,1
    - Dst: evg_ndc_to_raster
      Src: /src/gpac/src/evg/raster3d.c:192,1
    - Dst: edgeFunction
      Src: /src/gpac/src/evg/raster3d.c:195,1
    - Dst: gf_mx_apply_vec_4x4
      Src: /src/gpac/src/evg/raster3d.c:224,1
    - Dst: evg3d_persp_divide
      Src: /src/gpac/src/evg/raster3d.c:225,1
    - Dst: evg_ndc_to_raster
      Src: /src/gpac/src/evg/raster3d.c:228,1
    - Dst: gray3d_move_to
      Src: /src/gpac/src/evg/raster3d.c:229,1
    - Dst: gf_mx_apply_vec_4x4
      Src: /src/gpac/src/evg/raster3d.c:237,1
    - Dst: evg3d_persp_divide
      Src: /src/gpac/src/evg/raster3d.c:238,1
    - Dst: evg_ndc_to_raster
      Src: /src/gpac/src/evg/raster3d.c:241,1
    - Dst: gray_render_line
      Src: /src/gpac/src/evg/raster3d.c:242,1
    - Dst: gray_render_line
      Src: /src/gpac/src/evg/raster3d.c:244,1
    - Dst: gray_record_cell
      Src: /src/gpac/src/evg/raster3d.c:249,1
    - Dst: evg_sweep_lines
      Src: /src/gpac/src/evg/raster3d.c:252,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 95
    argCount: 1
    argNames:
    - surf
    argTypes:
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 129
    functionDepth: 2
    functionLinenumber: 129
    functionLinenumberEnd: 253
    functionName: evg_raster_render_path_3d
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached:
    - gray3d_move_to
    - gray_record_cell
    - edgeFunction
    - gf_mx_apply_vec_4x4
    - evg3d_persp_divide
    - gray_render_line
    - memset
    - evg_ndc_to_raster
    - evg_sweep_lines
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_raster_render_path_3d(GF_EVGSurface *surf)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::frag_shader
      Src: /src/gpac/src/evg/raster3d.c:257,1
    - Dst: float_clamp
      Src: /src/gpac/src/evg/raster3d.c:265,1
    - Dst: float_clamp
      Src: /src/gpac/src/evg/raster3d.c:266,1
    - Dst: float_clamp
      Src: /src/gpac/src/evg/raster3d.c:267,1
    - Dst: float_clamp
      Src: /src/gpac/src/evg/raster3d.c:268,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster3d.c:274,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster3d.c:275,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster3d.c:276,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster3d.c:277,1
    - Dst: GF_COLW_ARGB
      Src: /src/gpac/src/evg/raster3d.c:278,1
    - Dst: GF_COLW_ARGB
      Src: /src/gpac/src/evg/raster3d.c:284,1
    - Dst: GF_COLW_A
      Src: /src/gpac/src/evg/raster3d.c:286,1
    - Dst: GF_COLW_A
      Src: /src/gpac/src/evg/raster3d.c:291,1
    - Dst: GF_COLW_R
      Src: /src/gpac/src/evg/raster3d.c:292,1
    - Dst: GF_COLW_G
      Src: /src/gpac/src/evg/raster3d.c:293,1
    - Dst: GF_COLW_B
      Src: /src/gpac/src/evg/raster3d.c:294,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/raster3d.c:295,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/raster3d.c:305,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster3d.c:307,1
    - Dst: gf_evg_argb_to_ayuv_wide
      Src: /src/gpac/src/evg/raster3d.c:314,1
    - Dst: gf_evg_ayuv_to_argb_wide
      Src: /src/gpac/src/evg/raster3d.c:318,1
    - Dst: gf_evg_argb_to_ayuv
      Src: /src/gpac/src/evg/raster3d.c:325,1
    - Dst: gf_evg_ayuv_to_argb
      Src: /src/gpac/src/evg/raster3d.c:329,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 66
    argCount: 3
    argNames:
    - surf
    - rctx
    - is_transparent
    argTypes:
    - GF_EVGSurface*
    - EVGRasterCtx*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 334
    functionName: evg_get_fragment
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached:
    - gf_evg_ayuv_to_argb
    - float_clamp
    - GF_COL_G
    - GF_COL_B
    - GF_COLW_G
    - GF_COLW_B
    - GF_COL_A
    - gf_evg_argb_to_ayuv_wide
    - gf_evg_ayuv_to_argb_wide
    - GF_COLW_ARGB
    - gf_evg_argb_to_ayuv
    - GF_COL_ARGB
    - GF_COL_R
    - GF_EVGSurface*::frag_shader
    - GF_COLW_A
    - GF_COLW_R
    linkageType: ''
    returnType: void
    signature: void evg_get_fragment(GF_EVGSurface *surf, EVGRasterCtx *rctx, Bool
      *is_transparent)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/evg/raster3d.c:356,1
    - Dst: memmove
      Src: /src/gpac/src/evg/raster3d.c:361,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 8
    argNames:
    - sl
    - x
    - col
    - coverage
    - depth
    - write_depth
    - idx1
    - idx2
    argTypes:
    - AAScanline*
    - s32
    - u32
    - u8
    - Float
    - Float
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 337
    functionDepth: 0
    functionLinenumber: 337
    functionLinenumberEnd: 372
    functionName: push_patch_pixel
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached:
    - memmove
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void push_patch_pixel(AAScanline *sl, s32 x, u32 col, u8 coverage,
      Float depth, Float write_depth, u32 idx1, u32 idx2)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 2
    argNames:
    - sl
    - x
    argTypes:
    - AAScanline*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 383
    functionName: get_patch_pixel
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PatchPixel
    signature: PatchPixel *get_patch_pixel(AAScanline *sl, s32 x)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memmove
      Src: /src/gpac/src/evg/raster3d.c:393,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 2
    argNames:
    - sl
    - x
    argTypes:
    - AAScanline*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 397
    functionName: remove_patch_pixel
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached:
    - memmove
    linkageType: ''
    returnType: void
    signature: void remove_patch_pixel(AAScanline *sl, s32 x)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: get_patch_pixel
      Src: /src/gpac/src/evg/raster3d.c:429,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/evg/raster3d.c:455,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/evg/raster3d.c:456,1
    - Dst: float_clamp
      Src: /src/gpac/src/evg/raster3d.c:458,1
    - Dst: edgeFunction_pre
      Src: /src/gpac/src/evg/raster3d.c:467,1
    - Dst: edgeFunction_pre
      Src: /src/gpac/src/evg/raster3d.c:469,1
    - Dst: edgeFunction_pre
      Src: /src/gpac/src/evg/raster3d.c:476,1
    - Dst: float_clamp
      Src: /src/gpac/src/evg/raster3d.c:488,1
    - Dst: float_clamp
      Src: /src/gpac/src/evg/raster3d.c:489,1
    - Dst: float_clamp
      Src: /src/gpac/src/evg/raster3d.c:490,1
    - Dst: EVG_Surface3DExt*::depth_test
      Src: /src/gpac/src/evg/raster3d.c:517,1
    - Dst: EVG_Surface3DExt*::depth_test
      Src: /src/gpac/src/evg/raster3d.c:525,1
    - Dst: evg_get_fragment
      Src: /src/gpac/src/evg/raster3d.c:545,1
    - Dst: EVG_Surface3DExt*::depth_test
      Src: /src/gpac/src/evg/raster3d.c:551,1
    - Dst: EVG_Surface3DExt*::depth_test
      Src: /src/gpac/src/evg/raster3d.c:562,1
    - Dst: remove_patch_pixel
      Src: /src/gpac/src/evg/raster3d.c:563,1
    - Dst: remove_patch_pixel
      Src: /src/gpac/src/evg/raster3d.c:572,1
    - Dst: EVG_Surface3DExt*::depth_test
      Src: /src/gpac/src/evg/raster3d.c:582,1
    - Dst: push_patch_pixel
      Src: /src/gpac/src/evg/raster3d.c:589,1
    - Dst: GF_EVGSurface*::fill_single_a
      Src: /src/gpac/src/evg/raster3d.c:597,1
    - Dst: GF_EVGSurface*::fill_single
      Src: /src/gpac/src/evg/raster3d.c:599,1
    - Dst: GF_EVGSurface*::fill_spans
      Src: /src/gpac/src/evg/raster3d.c:616,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 157
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - int
    - int
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 618
      start: 399
    functionDepth: 2
    functionLinenumber: 399
    functionLinenumberEnd: 618
    functionName: EVG3D_SpanFunc
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached:
    - gf_vec_len
    - float_clamp
    - evg_get_fragment
    - push_patch_pixel
    - get_patch_pixel
    - EVG_Surface3DExt*::depth_test
    - edgeFunction_pre
    - gf_vec_diff
    - GF_EVGSurface*::fill_single_a
    - remove_patch_pixel
    - GF_EVGSurface*::fill_single
    - GF_EVGSurface*::fill_spans
    linkageType: ''
    returnType: void
    signature: void EVG3D_SpanFunc(int y, int count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: edgeFunction
      Src: /src/gpac/src/evg/raster3d.c:636,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 25
    argCount: 18
    argNames:
    - surf
    - fparam
    - xmin
    - xmax
    - ymin
    - ymax
    - _x1
    - _y1
    - _x2
    - _y2
    - _x3
    - _y3
    - s_pt1
    - s_pt2
    - s_pt3
    - vidx1
    - vidx2
    - vidx3
    argTypes:
    - GF_EVGSurface*
    - GF_EVGFragmentParam*
    - TPos
    - TPos
    - TPos
    - TPos
    - TPos
    - TPos
    - TPos
    - TPos
    - TPos
    - TPos
    - GF_Vec4*
    - GF_Vec4*
    - GF_Vec4*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 620
    functionDepth: 1
    functionLinenumber: 620
    functionLinenumberEnd: 656
    functionName: precompute_tri
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached:
    - edgeFunction
    linkageType: ''
    returnType: GFINLINE
    signature: "GFINLINE precompute_tri(GF_EVGSurface *surf, GF_EVGFragmentParam *fparam,
      TPos xmin, TPos xmax, TPos ymin, TPos ymax,\n\t\t\t\t\t\t\t\t\tTPos _x1, TPos
      _y1, TPos _x2, TPos _y2, TPos _x3, TPos _y3,\n\t\t\t\t\t\t\t\t\tGF_Vec4 *s_pt1,
      GF_Vec4 *s_pt2, GF_Vec4 *s_pt3,\n\t\t\t\t\t\t\t\t\tu32 vidx1, u32 vidx2, u32
      vidx3\n)"
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/evg/raster3d.c:686,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster3d.c:687,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/evg/raster3d.c:696,1
    - Dst: gf_mx_add_matrix_4x4
      Src: /src/gpac/src/evg/raster3d.c:697,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster3d.c:742,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster3d.c:758,1
    - Dst: GETVEC
      Src: /src/gpac/src/evg/raster3d.c:801,1
    - Dst: evg_ndc_to_raster
      Src: /src/gpac/src/evg/raster3d.c:802,1
    - Dst: GETVEC
      Src: /src/gpac/src/evg/raster3d.c:823,1
    - Dst: evg_ndc_to_raster
      Src: /src/gpac/src/evg/raster3d.c:824,1
    - Dst: GETVEC
      Src: /src/gpac/src/evg/raster3d.c:838,1
    - Dst: evg_ndc_to_raster
      Src: /src/gpac/src/evg/raster3d.c:839,1
    - Dst: GETVEC
      Src: /src/gpac/src/evg/raster3d.c:854,1
    - Dst: evg_ndc_to_raster
      Src: /src/gpac/src/evg/raster3d.c:855,1
    - Dst: GETVEC
      Src: /src/gpac/src/evg/raster3d.c:862,1
    - Dst: evg_ndc_to_raster
      Src: /src/gpac/src/evg/raster3d.c:863,1
    - Dst: GETVEC
      Src: /src/gpac/src/evg/raster3d.c:869,1
    - Dst: evg_ndc_to_raster
      Src: /src/gpac/src/evg/raster3d.c:870,1
    - Dst: GETVEC
      Src: /src/gpac/src/evg/raster3d.c:876,1
    - Dst: evg_ndc_to_raster
      Src: /src/gpac/src/evg/raster3d.c:877,1
    - Dst: GETVEC
      Src: /src/gpac/src/evg/raster3d.c:883,1
    - Dst: evg_ndc_to_raster
      Src: /src/gpac/src/evg/raster3d.c:884,1
    - Dst: precompute_tri
      Src: /src/gpac/src/evg/raster3d.c:901,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/evg/raster3d.c:922,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/evg/raster3d.c:924,1
    - Dst: gray3d_move_to
      Src: /src/gpac/src/evg/raster3d.c:933,1
    - Dst: gray_render_line
      Src: /src/gpac/src/evg/raster3d.c:934,1
    - Dst: gray_render_line
      Src: /src/gpac/src/evg/raster3d.c:935,1
    - Dst: gray_render_line
      Src: /src/gpac/src/evg/raster3d.c:936,1
    - Dst: gray_render_line
      Src: /src/gpac/src/evg/raster3d.c:938,1
    - Dst: gray_record_cell
      Src: /src/gpac/src/evg/raster3d.c:939,1
    - Dst: gray3d_move_to
      Src: /src/gpac/src/evg/raster3d.c:943,1
    - Dst: gray_render_line
      Src: /src/gpac/src/evg/raster3d.c:944,1
    - Dst: gray_render_line
      Src: /src/gpac/src/evg/raster3d.c:945,1
    - Dst: gray_render_line
      Src: /src/gpac/src/evg/raster3d.c:946,1
    - Dst: gray_render_line
      Src: /src/gpac/src/evg/raster3d.c:948,1
    - Dst: gray_record_cell
      Src: /src/gpac/src/evg/raster3d.c:949,1
    - Dst: gray3d_move_to
      Src: /src/gpac/src/evg/raster3d.c:953,1
    - Dst: gray_render_line
      Src: /src/gpac/src/evg/raster3d.c:954,1
    - Dst: gray_render_line
      Src: /src/gpac/src/evg/raster3d.c:957,1
    - Dst: gray_render_line
      Src: /src/gpac/src/evg/raster3d.c:962,1
    - Dst: gray_record_cell
      Src: /src/gpac/src/evg/raster3d.c:963,1
    - Dst: evg_sweep_lines
      Src: /src/gpac/src/evg/raster3d.c:966,1
    - Dst: GF_EVGSurface*::ext3d::depth_test
      Src: /src/gpac/src/evg/raster3d.c:1000,1
    - Dst: GF_EVGSurface*::fill_single_a
      Src: /src/gpac/src/evg/raster3d.c:1003,1
    - Dst: GF_EVGSurface*::fill_spans
      Src: /src/gpac/src/evg/raster3d.c:1007,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 271
    argCount: 7
    argNames:
    - surf
    - indices
    - nb_idx
    - vertices
    - nb_vertices
    - nb_comp
    - prim_type
    argTypes:
    - GF_EVGSurface*
    - u32*
    - u32
    - Float*
    - u32
    - u32
    - GF_EVGPrimitiveType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1014
      start: 658
    functionDepth: 2
    functionLinenumber: 658
    functionLinenumberEnd: 1014
    functionName: evg_raster_render3d
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached:
    - gf_vec_len
    - gray3d_move_to
    - gray_record_cell
    - GF_EVGSurface*::fill_single_a
    - gf_vec_diff
    - gray_render_line
    - memset
    - precompute_tri
    - evg_ndc_to_raster
    - GF_EVGSurface*::fill_spans
    - GF_EVGSurface*::ext3d::depth_test
    - gf_mx_copy
    - evg_sweep_lines
    - gf_mx_add_matrix_4x4
    - GETVEC
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_raster_render3d(GF_EVGSurface *surf, u32 *indices, u32 nb_idx,
      Float *vertices, u32 nb_vertices, u32 nb_comp, GF_EVGPrimitiveType prim_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _idx
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 789
      start: 771
    functionDepth: 0
    functionLinenumber: 771
    functionLinenumberEnd: 789
    functionName: GETVEC
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GETVEC(_name, _idx)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/evg/raster3d.c:1034,1
    - Dst: gf_realloc
      Src: /src/gpac/src/evg/raster3d.c:1050,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster3d.c:1052,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/evg/raster3d.c:1056,1
    - Dst: gf_mx_add_matrix_4x4
      Src: /src/gpac/src/evg/raster3d.c:1057,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster3d.c:1060,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/evg/raster3d.c:1075,1
    - Dst: gf_mx_apply_vec_4x4
      Src: /src/gpac/src/evg/raster3d.c:1080,1
    - Dst: evg3d_persp_divide
      Src: /src/gpac/src/evg/raster3d.c:1081,1
    - Dst: evg_ndc_to_raster
      Src: /src/gpac/src/evg/raster3d.c:1082,1
    - Dst: gf_mx_apply_vec_4x4
      Src: /src/gpac/src/evg/raster3d.c:1083,1
    - Dst: evg3d_persp_divide
      Src: /src/gpac/src/evg/raster3d.c:1084,1
    - Dst: evg_ndc_to_raster
      Src: /src/gpac/src/evg/raster3d.c:1085,1
    - Dst: gf_mx_apply_vec_4x4
      Src: /src/gpac/src/evg/raster3d.c:1086,1
    - Dst: evg3d_persp_divide
      Src: /src/gpac/src/evg/raster3d.c:1087,1
    - Dst: evg_ndc_to_raster
      Src: /src/gpac/src/evg/raster3d.c:1088,1
    - Dst: precompute_tri
      Src: /src/gpac/src/evg/raster3d.c:1090,1
    - Dst: gf_mx_apply_vec_4x4
      Src: /src/gpac/src/evg/raster3d.c:1109,1
    - Dst: evg3d_persp_divide
      Src: /src/gpac/src/evg/raster3d.c:1110,1
    - Dst: evg_ndc_to_raster
      Src: /src/gpac/src/evg/raster3d.c:1113,1
    - Dst: gray3d_move_to
      Src: /src/gpac/src/evg/raster3d.c:1114,1
    - Dst: gf_mx_apply_vec_4x4
      Src: /src/gpac/src/evg/raster3d.c:1122,1
    - Dst: evg3d_persp_divide
      Src: /src/gpac/src/evg/raster3d.c:1123,1
    - Dst: evg_ndc_to_raster
      Src: /src/gpac/src/evg/raster3d.c:1126,1
    - Dst: gray_render_line
      Src: /src/gpac/src/evg/raster3d.c:1127,1
    - Dst: gray_render_line
      Src: /src/gpac/src/evg/raster3d.c:1129,1
    - Dst: gray_record_cell
      Src: /src/gpac/src/evg/raster3d.c:1134,1
    - Dst: evg_sweep_lines
      Src: /src/gpac/src/evg/raster3d.c:1138,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 96
    argCount: 3
    argNames:
    - surf
    - path
    - z
    argTypes:
    - GF_EVGSurface*
    - GF_Path*
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1142
      start: 1016
    functionDepth: 2
    functionLinenumber: 1016
    functionLinenumberEnd: 1142
    functionName: evg_raster_render3d_path
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached:
    - gray3d_move_to
    - gray_record_cell
    - gf_mx_apply_vec_4x4
    - gf_realloc
    - evg3d_persp_divide
    - gray_render_line
    - memset
    - precompute_tri
    - evg_ndc_to_raster
    - gf_mx_copy
    - evg_sweep_lines
    - gf_evg_surface_set_path
    - gf_path_get_bounds
    - gf_mx_add_matrix_4x4
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_raster_render3d_path(GF_EVGSurface *surf, GF_Path *path,
      Float z)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster3d.c:1163,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - surf
    - depth
    argTypes:
    - GF_EVGSurface*
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1166
      start: 1144
    functionDepth: 0
    functionLinenumber: 1144
    functionLinenumberEnd: 1166
    functionName: gf_evg_surface_clear_depth
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_surface_clear_depth(GF_EVGSurface *surf, Float depth)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 5
    argNames:
    - surf
    - x
    - y
    - w
    - h
    argTypes:
    - GF_EVGSurface*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1178
      start: 1169
    functionDepth: 0
    functionLinenumber: 1169
    functionLinenumberEnd: 1178
    functionName: gf_evg_surface_viewport
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_surface_viewport(GF_EVGSurface *surf, u32 x, u32 y,
      u32 w, u32 h)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - depth_buf_value
    - frag_value
    argTypes:
    - Float
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1183
      start: 1180
    functionDepth: 0
    functionLinenumber: 1180
    functionLinenumberEnd: 1183
    functionName: depth_test_never
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool depth_test_never(Float depth_buf_value, Float frag_value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - depth_buf_value
    - frag_value
    argTypes:
    - Float
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1187
      start: 1184
    functionDepth: 0
    functionLinenumber: 1184
    functionLinenumberEnd: 1187
    functionName: depth_test_always
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool depth_test_always(Float depth_buf_value, Float frag_value)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - depth_buf_value
    - frag_value
    argTypes:
    - Float
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1192
      start: 1188
    functionDepth: 0
    functionLinenumber: 1188
    functionLinenumberEnd: 1192
    functionName: depth_test_less
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool depth_test_less(Float depth_buf_value, Float frag_value)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - depth_buf_value
    - frag_value
    argTypes:
    - Float
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1197
      start: 1193
    functionDepth: 0
    functionLinenumber: 1193
    functionLinenumberEnd: 1197
    functionName: depth_test_less_equal
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool depth_test_less_equal(Float depth_buf_value, Float frag_value)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - depth_buf_value
    - frag_value
    argTypes:
    - Float
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1202
      start: 1198
    functionDepth: 0
    functionLinenumber: 1198
    functionLinenumberEnd: 1202
    functionName: depth_test_equal
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool depth_test_equal(Float depth_buf_value, Float frag_value)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - depth_buf_value
    - frag_value
    argTypes:
    - Float
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1207
      start: 1203
    functionDepth: 0
    functionLinenumber: 1203
    functionLinenumberEnd: 1207
    functionName: depth_test_greater
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool depth_test_greater(Float depth_buf_value, Float frag_value)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - depth_buf_value
    - frag_value
    argTypes:
    - Float
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1212
      start: 1208
    functionDepth: 0
    functionLinenumber: 1208
    functionLinenumberEnd: 1212
    functionName: depth_test_greater_equal
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool depth_test_greater_equal(Float depth_buf_value, Float frag_value)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - depth_buf_value
    - frag_value
    argTypes:
    - Float
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1217
      start: 1213
    functionDepth: 0
    functionLinenumber: 1213
    functionLinenumberEnd: 1217
    functionName: depth_test_not_equal
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool depth_test_not_equal(Float depth_buf_value, Float frag_value)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 35
    argCount: 2
    argNames:
    - surf
    - mode
    argTypes:
    - GF_EVGSurface*
    - GF_EVGDepthTest
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1256
      start: 1219
    functionDepth: 0
    functionLinenumber: 1219
    functionLinenumberEnd: 1256
    functionName: gf_evg_set_depth_test
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_set_depth_test(GF_EVGSurface *surf, GF_EVGDepthTest
      mode)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - surf
    argTypes:
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1271
      start: 1258
    functionDepth: 0
    functionLinenumber: 1258
    functionLinenumberEnd: 1271
    functionName: evg_3d_update_depth_range
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_3d_update_depth_range(GF_EVGSurface *surf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/evg/raster3d.c:1277,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/evg/raster3d.c:1279,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/evg/raster3d.c:1280,1
    - Dst: evg_3d_update_depth_range
      Src: /src/gpac/src/evg/raster3d.c:1293,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 1
    argNames:
    - surf
    argTypes:
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1295
      start: 1274
    functionDepth: 1
    functionLinenumber: 1274
    functionLinenumberEnd: 1295
    functionName: evg_init_3d_surface
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached:
    - evg_3d_update_depth_range
    - gf_mx_init
    - GF_SAFEALLOC
    linkageType: ''
    returnType: EVG_Surface3DExt
    signature: EVG_Surface3DExt *evg_init_3d_surface(GF_EVGSurface *surf)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - surf
    - shader
    - shader_init
    - shader_udta
    argTypes:
    - GF_EVGSurface*
    - gf_evg_fragment_shader
    - gf_evg_fragment_shader_init
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1306
      start: 1299
    functionDepth: 0
    functionLinenumber: 1299
    functionLinenumberEnd: 1306
    functionName: gf_evg_surface_set_fragment_shader
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_surface_set_fragment_shader(GF_EVGSurface *surf, gf_evg_fragment_shader
      shader, gf_evg_fragment_shader_init shader_init, void *shader_udta)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - surf
    - disable
    argTypes:
    - GF_EVGSurface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1314
      start: 1308
    functionDepth: 0
    functionLinenumber: 1308
    functionLinenumberEnd: 1314
    functionName: gf_evg_surface_disable_early_depth
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_surface_disable_early_depth(GF_EVGSurface *surf, Bool
      disable)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - surf
    - shader
    - shader_udta
    argTypes:
    - GF_EVGSurface*
    - gf_evg_vertex_shader
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1322
      start: 1316
    functionDepth: 0
    functionLinenumber: 1316
    functionLinenumberEnd: 1322
    functionName: gf_evg_surface_set_vertex_shader
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_surface_set_vertex_shader(GF_EVGSurface *surf, gf_evg_vertex_shader
      shader, void *shader_udta)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - surf
    - is_ccw
    argTypes:
    - GF_EVGSurface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1329
      start: 1324
    functionDepth: 0
    functionLinenumber: 1324
    functionLinenumberEnd: 1329
    functionName: gf_evg_surface_set_ccw
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_surface_set_ccw(GF_EVGSurface *surf, Bool is_ccw)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - surf
    - backcull
    argTypes:
    - GF_EVGSurface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1335
      start: 1330
    functionDepth: 0
    functionLinenumber: 1330
    functionLinenumberEnd: 1335
    functionName: gf_evg_surface_set_backcull
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_surface_set_backcull(GF_EVGSurface *surf, Bool backcull)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - surf
    - antialias
    argTypes:
    - GF_EVGSurface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1341
      start: 1336
    functionDepth: 0
    functionLinenumber: 1336
    functionLinenumberEnd: 1341
    functionName: gf_evg_surface_set_antialias
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_surface_set_antialias(GF_EVGSurface *surf, Bool antialias)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: evg_3d_update_depth_range
      Src: /src/gpac/src/evg/raster3d.c:1346,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - surf
    - min_depth
    argTypes:
    - GF_EVGSurface*
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1348
      start: 1342
    functionDepth: 1
    functionLinenumber: 1342
    functionLinenumberEnd: 1348
    functionName: gf_evg_surface_set_min_depth
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached:
    - evg_3d_update_depth_range
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_surface_set_min_depth(GF_EVGSurface *surf, Float min_depth)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: evg_3d_update_depth_range
      Src: /src/gpac/src/evg/raster3d.c:1353,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - surf
    - max_depth
    argTypes:
    - GF_EVGSurface*
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1355
      start: 1349
    functionDepth: 1
    functionLinenumber: 1349
    functionLinenumberEnd: 1355
    functionName: gf_evg_surface_set_max_depth
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached:
    - evg_3d_update_depth_range
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_surface_set_max_depth(GF_EVGSurface *surf, Float max_depth)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: evg_3d_update_depth_range
      Src: /src/gpac/src/evg/raster3d.c:1361,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - surf
    - clip_zero
    argTypes:
    - GF_EVGSurface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1363
      start: 1357
    functionDepth: 1
    functionLinenumber: 1357
    functionLinenumberEnd: 1363
    functionName: gf_evg_surface_set_clip_zero
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached:
    - evg_3d_update_depth_range
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_surface_set_clip_zero(GF_EVGSurface *surf, Bool clip_zero)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - surf
    - size
    argTypes:
    - GF_EVGSurface*
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1370
      start: 1365
    functionDepth: 0
    functionLinenumber: 1365
    functionLinenumberEnd: 1370
    functionName: gf_evg_surface_set_point_size
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_surface_set_point_size(GF_EVGSurface *surf, Float size)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - surf
    - size
    argTypes:
    - GF_EVGSurface*
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1376
      start: 1371
    functionDepth: 0
    functionLinenumber: 1371
    functionLinenumberEnd: 1376
    functionName: gf_evg_surface_set_line_size
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_surface_set_line_size(GF_EVGSurface *surf, Float size)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - surf
    - smooth
    argTypes:
    - GF_EVGSurface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1382
      start: 1377
    functionDepth: 0
    functionLinenumber: 1377
    functionLinenumberEnd: 1382
    functionName: gf_evg_surface_set_point_smooth
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_surface_set_point_smooth(GF_EVGSurface *surf, Bool smooth)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - surf
    - do_write
    argTypes:
    - GF_EVGSurface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1389
      start: 1384
    functionDepth: 0
    functionLinenumber: 1384
    functionLinenumberEnd: 1389
    functionName: gf_evg_surface_write_depth
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_surface_write_depth(GF_EVGSurface *surf, Bool do_write)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - surf
    - depth
    argTypes:
    - GF_EVGSurface*
    - Float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1395
      start: 1390
    functionDepth: 0
    functionLinenumber: 1390
    functionLinenumberEnd: 1395
    functionName: gf_evg_surface_set_depth_buffer
    functionSourceFile: /src/gpac/src/evg/raster3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_surface_set_depth_buffer(GF_EVGSurface *surf, Float *depth)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - a
    - b
    - pos
    argTypes:
    - u32
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 47
    functionName: color_interpolate
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Color
    signature: GF_Color color_interpolate(u32 a, u32 b, u8 pos)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/evg/stencil.c:63,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:69,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:69,1
    - Dst: MIN
      Src: /src/gpac/src/evg/stencil.c:70,1
    - Dst: MIN
      Src: /src/gpac/src/evg/stencil.c:78,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:79,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:79,1
    - Dst: MIN
      Src: /src/gpac/src/evg/stencil.c:80,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:81,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:81,1
    - Dst: MIN
      Src: /src/gpac/src/evg/stencil.c:82,1
    - Dst: color_interpolate
      Src: /src/gpac/src/evg/stencil.c:87,1
    - Dst: MIN
      Src: /src/gpac/src/evg/stencil.c:92,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:93,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:93,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 1
    argNames:
    - _this
    argTypes:
    - EVG_BaseGradient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 100
    functionName: gradient_update
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - color_interpolate
    - MIN
    - FIX2INT
    - gf_mulfix
    linkageType: ''
    returnType: void
    signature: void gradient_update(EVG_BaseGradient *_this)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: MIN
      Src: /src/gpac/src/evg/stencil.c:117,1
    - Dst: MAX
      Src: /src/gpac/src/evg/stencil.c:117,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - _this
    - pos
    argTypes:
    - EVG_BaseGradient*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 119
    functionName: gradient_get_color
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - MAX
    - MIN
    linkageType: ''
    returnType: u32
    signature: u32 gradient_get_color(EVG_BaseGradient *_this, s32 pos)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/evg/stencil.c:128,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/stencil.c:129,1
    - Dst: gradient_update
      Src: /src/gpac/src/evg/stencil.c:133,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 4
    argNames:
    - p
    - pos
    - col
    - count
    argTypes:
    - GF_EVGStencil*
    - Fixed*
    - GF_Color*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 121
    functionDepth: 2
    functionLinenumber: 121
    functionLinenumberEnd: 135
    functionName: gf_evg_stencil_set_gradient_interpolation
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gradient_update
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_set_gradient_interpolation(GF_EVGStencil *
      p, Fixed *pos, GF_Color *col, u32 count)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gradient_update
      Src: /src/gpac/src/evg/stencil.c:154,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - p
    - pos
    - col
    argTypes:
    - GF_EVGStencil*
    - Fixed
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 138
    functionDepth: 2
    functionLinenumber: 138
    functionLinenumberEnd: 156
    functionName: gf_evg_stencil_push_gradient_interpolation
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gradient_update
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_push_gradient_interpolation(GF_EVGStencil
      * p, Fixed pos, GF_Color col)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - p
    - mode
    argTypes:
    - GF_EVGStencil*
    - GF_GradientMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 165
    functionName: gf_evg_stencil_set_gradient_mode
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_set_gradient_mode(GF_EVGStencil * p, GF_GradientMode
      mode)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: evg_solid_brush
      Src: /src/gpac/src/evg/stencil.c:177,1
    - Dst: evg_linear_gradient_brush
      Src: /src/gpac/src/evg/stencil.c:180,1
    - Dst: evg_radial_gradient_brush
      Src: /src/gpac/src/evg/stencil.c:183,1
    - Dst: evg_texture_brush
      Src: /src/gpac/src/evg/stencil.c:186,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/evg/stencil.c:192,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/evg/stencil.c:193,1
    - Dst: gf_cmx_init
      Src: /src/gpac/src/evg/stencil.c:194,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 198
    functionName: GF_EVGStencil * gf_evg_stencil_new(GF_StencilType type)
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - evg_linear_gradient_brush
    - evg_texture_brush
    - evg_radial_gradient_brush
    - gf_mx2d_init
    - gf_cmx_init
    - evg_solid_brush
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_EVGStencil * gf_evg_stencil_new(GF_StencilType type)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/evg/stencil.c:207,1
    - Dst: gf_free
      Src: /src/gpac/src/evg/stencil.c:213,1
    - Dst: gf_free
      Src: /src/gpac/src/evg/stencil.c:214,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - st
    argTypes:
    - GF_EVGStencil*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 218
    functionName: gf_evg_stencil_delete
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_delete(GF_EVGStencil * st)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - st
    - auto_on
    argTypes:
    - GF_EVGStencil*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 226
    functionName: gf_evg_stencil_set_auto_matrix
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_set_auto_matrix(GF_EVGStencil * st, Bool auto_on)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - st
    argTypes:
    - GF_EVGStencil*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 232
    functionName: gf_evg_stencil_get_auto_matrix
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_get_auto_matrix(GF_EVGStencil * st)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/evg/stencil.c:239,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/evg/stencil.c:241,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - st
    - mx
    argTypes:
    - GF_EVGStencil*
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 244
    functionName: gf_evg_stencil_set_matrix
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_copy
    - gf_mx2d_init
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_set_matrix(GF_EVGStencil * st, GF_Matrix2D
      *mx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/evg/stencil.c:250,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 2
    argNames:
    - st
    - mx
    argTypes:
    - GF_EVGStencil*
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 246
    functionDepth: 1
    functionLinenumber: 246
    functionLinenumberEnd: 252
    functionName: gf_evg_stencil_get_matrix
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_copy
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_get_matrix(GF_EVGStencil * st, GF_Matrix2D
      *mx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sten
    argTypes:
    - GF_EVGStencil*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 259
    functionName: GF_StencilType::gf_evg_stencil_type
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_StencilType gf_evg_stencil_type(GF_EVGStencil *sten)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 5
    argNames:
    - p
    - rctx
    - x
    - y
    - count
    argTypes:
    - GF_EVGStencil*
    - EVGRasterCtx*
    - s32
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 264
    functionDepth: 0
    functionLinenumber: 264
    functionLinenumberEnd: 276
    functionName: sc_fill_run
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void sc_fill_run(GF_EVGStencil *p, EVGRasterCtx *rctx, s32 x, s32 y,
      u32 count)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/evg/stencil.c:280,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 277
    functionDepth: 1
    functionLinenumber: 277
    functionLinenumberEnd: 287
    functionName: evg_solid_brush
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EVGStencil
    signature: GF_EVGStencil *evg_solid_brush()
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - st
    - c
    argTypes:
    - GF_EVGStencil*
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 289
    functionDepth: 0
    functionLinenumber: 289
    functionLinenumberEnd: 296
    functionName: gf_evg_stencil_set_brush_color
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_set_brush_color(GF_EVGStencil * st, GF_Color
      c)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - st
    argTypes:
    - GF_EVGStencil*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 298
    functionDepth: 0
    functionLinenumber: 298
    functionLinenumberEnd: 304
    functionName: gf_evg_stencil_get_brush_color
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_get_brush_color(GF_EVGStencil * st)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b_minus_a_x
    - ','
    - b_minus_a_y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 306
    functionDepth: 0
    functionLinenumber: 306
    functionLinenumberEnd: 308
    functionName: edgeFunction_pre2
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: edgeFunction_pre2(a, b_minus_a_x, b_minus_a_y)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/evg/stencil.c:348,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:358,1
    - Dst: gradient_get_color
      Src: /src/gpac/src/evg/stencil.c:360,1
    - Dst: evg_col_to_wide
      Src: /src/gpac/src/evg/stencil.c:361,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:370,1
    - Dst: gradient_get_color
      Src: /src/gpac/src/evg/stencil.c:373,1
    - Dst: evg_col_to_wide
      Src: /src/gpac/src/evg/stencil.c:374,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 5
    argNames:
    - p
    - rctx
    - _x
    - _y
    - count
    argTypes:
    - GF_EVGStencil*
    - EVGRasterCtx*
    - s32
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 339
    functionDepth: 2
    functionLinenumber: 339
    functionLinenumberEnd: 380
    functionName: lg_fill_run
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - FIX2INT
    - gradient_get_color
    - gf_assert
    - evg_col_to_wide
    linkageType: ''
    returnType: void
    signature: void lg_fill_run(GF_EVGStencil *p, EVGRasterCtx *rctx, s32 _x, s32
      _y, u32 count)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:358,1
    - Dst: gradient_get_color
      Src: /src/gpac/src/evg/stencil.c:360,1
    - Dst: evg_col_to_wide
      Src: /src/gpac/src/evg/stencil.c:361,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 351
    functionDepth: 2
    functionLinenumber: 351
    functionLinenumberEnd: 365
    functionName: while
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - FIX2INT
    - gradient_get_color
    - evg_col_to_wide
    linkageType: ''
    returnType: PERSP_VARS_DECL
    signature: PERSP_VARS_DECL while (count)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_v2d_len
      Src: /src/gpac/src/evg/stencil.c:397,1
    - Dst: gf_invfix
      Src: /src/gpac/src/evg/stencil.c:398,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/evg/stencil.c:400,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/evg/stencil.c:405,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/evg/stencil.c:406,1
    - Dst: gf_atan2
      Src: /src/gpac/src/evg/stencil.c:406,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/evg/stencil.c:407,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/evg/stencil.c:409,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/evg/stencil.c:410,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/evg/stencil.c:411,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 5
    argNames:
    - st
    - start_x
    - start_y
    - end_x
    - end_y
    argTypes:
    - GF_EVGStencil*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 382
    functionDepth: 1
    functionLinenumber: 382
    functionLinenumberEnd: 413
    functionName: gf_evg_stencil_set_linear_gradient
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_add_matrix
    - gf_v2d_len
    - gf_mx2d_add_scale
    - gf_atan2
    - gf_invfix
    - gf_mx2d_init
    - gf_mx2d_add_rotation
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_set_linear_gradient(GF_EVGStencil * st, Fixed
      start_x, Fixed start_y, Fixed end_x, Fixed end_y)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/evg/stencil.c:419,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/evg/stencil.c:421,1
    - Dst: gf_evg_stencil_set_linear_gradient
      Src: /src/gpac/src/evg/stencil.c:427,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 415
    functionDepth: 2
    functionLinenumber: 415
    functionLinenumberEnd: 429
    functionName: evg_linear_gradient_brush
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 1
    functionsReached:
    - gf_mx2d_init
    - gf_evg_stencil_set_linear_gradient
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EVGStencil
    signature: GF_EVGStencil *evg_linear_gradient_brush()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/evg/stencil.c:445,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:458,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:458,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:458,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:459,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:459,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:459,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:459,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/evg/stencil.c:460,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:461,1
    - Dst: gradient_get_color
      Src: /src/gpac/src/evg/stencil.c:463,1
    - Dst: evg_col_to_wide
      Src: /src/gpac/src/evg/stencil.c:464,1
    - Dst: INT2FIX
      Src: /src/gpac/src/evg/stencil.c:470,1
    - Dst: INT2FIX
      Src: /src/gpac/src/evg/stencil.c:471,1
    - Dst: gf_mx2d_apply_coords
      Src: /src/gpac/src/evg/stencil.c:472,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:477,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:477,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:477,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:478,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:478,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:478,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:478,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/evg/stencil.c:479,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:480,1
    - Dst: gradient_get_color
      Src: /src/gpac/src/evg/stencil.c:482,1
    - Dst: evg_col_to_wide
      Src: /src/gpac/src/evg/stencil.c:483,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 35
    argCount: 5
    argNames:
    - p
    - rctx
    - _x
    - _y
    - count
    argTypes:
    - GF_EVGStencil*
    - EVGRasterCtx*
    - s32
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 436
    functionDepth: 2
    functionLinenumber: 436
    functionLinenumberEnd: 491
    functionName: rg_fill_run
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - INT2FIX
    - evg_col_to_wide
    - gradient_get_color
    - gf_mx2d_apply_coords
    - FIX2INT
    - gf_mulfix
    - gf_sqrt
    linkageType: ''
    returnType: void
    signature: void rg_fill_run(GF_EVGStencil *p, EVGRasterCtx *rctx, s32 _x, s32
      _y, u32 count)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:458,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:458,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:458,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:459,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:459,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:459,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:459,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/evg/stencil.c:460,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:461,1
    - Dst: gradient_get_color
      Src: /src/gpac/src/evg/stencil.c:463,1
    - Dst: evg_col_to_wide
      Src: /src/gpac/src/evg/stencil.c:464,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 468
      start: 448
    functionDepth: 2
    functionLinenumber: 448
    functionLinenumberEnd: 468
    functionName: while
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - evg_col_to_wide
    - gradient_get_color
    - FIX2INT
    - gf_mulfix
    - gf_sqrt
    linkageType: ''
    returnType: PERSP_VARS_DECL
    signature: PERSP_VARS_DECL while (count)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_apply_point
      Src: /src/gpac/src/evg/stencil.c:499,1
    - Dst: gf_mx2d_apply_point
      Src: /src/gpac/src/evg/stencil.c:500,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:504,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/evg/stencil.c:504,1
    - Dst: gf_invfix
      Src: /src/gpac/src/evg/stencil.c:506,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - _this
    argTypes:
    - EVG_RadialGradient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 493
    functionDepth: 1
    functionLinenumber: 493
    functionLinenumberEnd: 510
    functionName: evg_radial_init
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_apply_point
    - gf_mulfix
    - gf_invfix
    linkageType: ''
    returnType: void
    signature: void evg_radial_init(EVG_RadialGradient *_this)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/evg/stencil.c:516,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 512
    functionDepth: 1
    functionLinenumber: 512
    functionLinenumberEnd: 528
    functionName: evg_radial_gradient_brush
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EVGStencil
    signature: GF_EVGStencil *evg_radial_gradient_brush()
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 7
    argNames:
    - st
    - cx
    - cy
    - fx
    - fy
    - x_radius
    - y_radius
    argTypes:
    - GF_EVGStencil*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 544
      start: 531
    functionDepth: 0
    functionLinenumber: 531
    functionLinenumberEnd: 544
    functionName: gf_evg_stencil_set_radial_gradient
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_set_radial_gradient(GF_EVGStencil * st, Fixed
      cx, Fixed cy, Fixed fx, Fixed fy, Fixed x_radius, Fixed y_radius)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/stencil.c:579,1
    - Dst: gf_cmx_apply
      Src: /src/gpac/src/evg/stencil.c:583,1
    - Dst: gf_evg_argb_to_ayuv
      Src: /src/gpac/src/evg/stencil.c:586,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 2
    argNames:
    - grad
    - surf
    argTypes:
    - EVG_BaseGradient*
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 547
    functionDepth: 1
    functionLinenumber: 547
    functionLinenumberEnd: 590
    functionName: evg_gradient_precompute
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_cmx_apply
    - gf_evg_argb_to_ayuv
    - GF_COL_A
    linkageType: ''
    returnType: void
    signature: void evg_gradient_precompute(EVG_BaseGradient *grad, GF_EVGSurface
      *surf)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 598
    functionDepth: 0
    functionLinenumber: 598
    functionLinenumberEnd: 601
    functionName: mul255
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE mul255(s32 a, s32 b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/stencil.c:610,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/stencil.c:611,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/stencil.c:612,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/stencil.c:613,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/stencil.c:614,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/stencil.c:615,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/stencil.c:616,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/stencil.c:617,1
    - Dst: mul255
      Src: /src/gpac/src/evg/stencil.c:619,1
    - Dst: mul255
      Src: /src/gpac/src/evg/stencil.c:620,1
    - Dst: mul255
      Src: /src/gpac/src/evg/stencil.c:621,1
    - Dst: mul255
      Src: /src/gpac/src/evg/stencil.c:622,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:623,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 3
    argNames:
    - c0
    - c1
    - t
    argTypes:
    - u32
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 602
    functionDepth: 1
    functionLinenumber: 602
    functionLinenumberEnd: 624
    functionName: EVG_LERP
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_COL_A
    - GF_COL_ARGB
    - GF_COL_R
    - mul255
    linkageType: ''
    returnType: u32
    signature: u32 EVG_LERP(u32 c0, u32 c1, u8 t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - s64
    - s64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 626
    functionDepth: 0
    functionLinenumber: 626
    functionLinenumberEnd: 629
    functionName: mul_wide
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE mul_wide(s64 a, s64 b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: mul_wide
      Src: /src/gpac/src/evg/stencil.c:648,1
    - Dst: mul_wide
      Src: /src/gpac/src/evg/stencil.c:649,1
    - Dst: mul_wide
      Src: /src/gpac/src/evg/stencil.c:650,1
    - Dst: mul_wide
      Src: /src/gpac/src/evg/stencil.c:651,1
    - Dst: GF_COLW_ARGB
      Src: /src/gpac/src/evg/stencil.c:653,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 3
    argNames:
    - c0
    - c1
    - t
    argTypes:
    - u64
    - u64
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 654
      start: 630
    functionDepth: 1
    functionLinenumber: 630
    functionLinenumberEnd: 654
    functionName: EVG_LERP_WIDE
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - mul_wide
    - GF_COLW_ARGB
    linkageType: ''
    returnType: u64
    signature: u64 EVG_LERP_WIDE(u64 c0, u64 c1, u8 t)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/evg/stencil.c:664,1
    - Dst: INT2FIX
      Src: /src/gpac/src/evg/stencil.c:665,1
    - Dst: gf_mx2d_apply_coords
      Src: /src/gpac/src/evg/stencil.c:666,1
    - Dst: ABS
      Src: /src/gpac/src/evg/stencil.c:671,1
    - Dst: ABS
      Src: /src/gpac/src/evg/stencil.c:672,1
    - Dst: INT2FIX
      Src: /src/gpac/src/evg/stencil.c:677,1
    - Dst: INT2FIX
      Src: /src/gpac/src/evg/stencil.c:678,1
    - Dst: gf_mx2d_apply_coords
      Src: /src/gpac/src/evg/stencil.c:679,1
    - Dst: INT2FIX
      Src: /src/gpac/src/evg/stencil.c:682,1
    - Dst: INT2FIX
      Src: /src/gpac/src/evg/stencil.c:686,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 5
    argNames:
    - _this
    - _x
    - _y
    - outx
    - outy
    argTypes:
    - EVG_Texture*
    - s32
    - s32
    - Fixed*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 694
      start: 659
    functionDepth: 1
    functionLinenumber: 659
    functionLinenumberEnd: 694
    functionName: tex_untransform_coord
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - gf_mx2d_apply_coords
    - ABS
    linkageType: ''
    returnType: void
    signature: void tex_untransform_coord(EVG_Texture *_this, s32 _x, s32 _y, Fixed
      *outx, Fixed *outy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: struct __evg_texture*::tx_callback
      Src: /src/gpac/src/evg/stencil.c:713,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:718,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - rctx
    argTypes:
    - struct __evg_texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 710
    functionDepth: 1
    functionLinenumber: 710
    functionLinenumberEnd: 719
    functionName: evg_paramtx_get_pixel
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    - struct __evg_texture*::tx_callback
    linkageType: ''
    returnType: u32
    signature: u32 evg_paramtx_get_pixel(struct __evg_texture *_this, u32 x, u32 y,
      EVGRasterCtx *rctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: struct __evg_texture*::tx_callback
      Src: /src/gpac/src/evg/stencil.c:723,1
    - Dst: GF_COLW_ARGB
      Src: /src/gpac/src/evg/stencil.c:728,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - rctx
    argTypes:
    - struct __evg_texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 720
    functionDepth: 1
    functionLinenumber: 720
    functionLinenumberEnd: 729
    functionName: evg_paramtx_get_pixel_wide
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COLW_ARGB
    - struct __evg_texture*::tx_callback
    linkageType: ''
    returnType: u64
    signature: u64 evg_paramtx_get_pixel_wide(struct __evg_texture *_this, u32 x,
      u32 y, EVGRasterCtx *rctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evg_paramtx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:736,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - _p
    - rctx
    - _x
    - _y
    - count
    argTypes:
    - GF_EVGStencil*
    - EVGRasterCtx*
    - s32
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 741
      start: 731
    functionDepth: 2
    functionLinenumber: 731
    functionLinenumberEnd: 741
    functionName: tex_fill_run_callback
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - evg_paramtx_get_pixel
    linkageType: ''
    returnType: void
    signature: void tex_fill_run_callback(GF_EVGStencil *_p, EVGRasterCtx *rctx, s32
      _x, s32 _y, u32 count)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evg_paramtx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:748,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - _p
    - rctx
    - _x
    - _y
    - count
    argTypes:
    - GF_EVGStencil*
    - EVGRasterCtx*
    - s32
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 752
      start: 743
    functionDepth: 2
    functionLinenumber: 743
    functionLinenumberEnd: 752
    functionName: tex_fill_run_callback_wide
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - evg_paramtx_get_pixel_wide
    linkageType: ''
    returnType: void
    signature: void tex_fill_run_callback_wide(GF_EVGStencil *_p, EVGRasterCtx *rctx,
      s32 _x, s32 _y, u32 count)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: tex_untransform_coord
      Src: /src/gpac/src/evg/stencil.c:770,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:787,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:812,1
    - Dst: EVG_Texture*::tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:836,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:848,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/evg/stencil.c:848,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:849,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/evg/stencil.c:849,1
    - Dst: EVG_Texture*::tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:890,1
    - Dst: EVG_Texture*::tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:891,1
    - Dst: EVG_Texture*::tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:892,1
    - Dst: EVG_LERP
      Src: /src/gpac/src/evg/stencil.c:894,1
    - Dst: EVG_LERP
      Src: /src/gpac/src/evg/stencil.c:895,1
    - Dst: EVG_LERP
      Src: /src/gpac/src/evg/stencil.c:896,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/stencil.c:903,1
    - Dst: gf_evg_ayuv_to_argb
      Src: /src/gpac/src/evg/stencil.c:910,1
    - Dst: gf_cmx_apply
      Src: /src/gpac/src/evg/stencil.c:913,1
    - Dst: gf_cmx_apply
      Src: /src/gpac/src/evg/stencil.c:917,1
    - Dst: gf_cmx_apply
      Src: /src/gpac/src/evg/stencil.c:924,1
    - Dst: gf_evg_argb_to_ayuv
      Src: /src/gpac/src/evg/stencil.c:928,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 130
    argCount: 5
    argNames:
    - p
    - rctx
    - _x
    - _y
    - count
    argTypes:
    - GF_EVGStencil*
    - EVGRasterCtx*
    - s32
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 934
      start: 757
    functionDepth: 2
    functionLinenumber: 757
    functionLinenumberEnd: 934
    functionName: tex_fill_run
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_evg_ayuv_to_argb
    - gf_cmx_apply
    - EVG_LERP
    - GF_COL_A
    - gf_muldiv
    - EVG_Texture*::tx_get_pixel
    - FIX2INT
    - tex_untransform_coord
    - gf_evg_argb_to_ayuv
    linkageType: ''
    returnType: void
    signature: void tex_fill_run(GF_EVGStencil *p, EVGRasterCtx *rctx, s32 _x, s32
      _y, u32 count)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: ABS
      Src: /src/gpac/src/evg/stencil.c:956,1
    - Dst: INT2FIX
      Src: /src/gpac/src/evg/stencil.c:959,1
    - Dst: ABS
      Src: /src/gpac/src/evg/stencil.c:962,1
    - Dst: INT2FIX
      Src: /src/gpac/src/evg/stencil.c:965,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:971,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1002,1
    - Dst: EVG_Texture*::tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:1024,1
    - Dst: gf_evg_ayuv_to_argb
      Src: /src/gpac/src/evg/stencil.c:1031,1
    - Dst: gf_evg_argb_to_ayuv
      Src: /src/gpac/src/evg/stencil.c:1034,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 88
    argCount: 5
    argNames:
    - p
    - rctx
    - _x
    - _y
    - count
    argTypes:
    - GF_EVGStencil*
    - EVGRasterCtx*
    - s32
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1041
      start: 938
    functionDepth: 1
    functionLinenumber: 938
    functionLinenumberEnd: 1041
    functionName: tex_fill_run_straight
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_evg_ayuv_to_argb
    - ABS
    - INT2FIX
    - EVG_Texture*::tx_get_pixel
    - FIX2INT
    - gf_evg_argb_to_ayuv
    linkageType: ''
    returnType: void
    signature: void tex_fill_run_straight(GF_EVGStencil *p, EVGRasterCtx *rctx, s32
      _x, s32 _y, u32 count)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/stencil.c:1045,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/stencil.c:1046,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/stencil.c:1047,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/stencil.c:1048,1
    - Dst: GF_COLW_ARGB
      Src: /src/gpac/src/evg/stencil.c:1049,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - col
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1050
      start: 1043
    functionDepth: 1
    functionLinenumber: 1043
    functionLinenumberEnd: 1050
    functionName: evg_col_to_wide
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 4
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_COL_A
    - GF_COLW_ARGB
    - GF_COL_R
    linkageType: ''
    returnType: u64
    signature: u64 evg_col_to_wide( u32 col)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: tex_untransform_coord
      Src: /src/gpac/src/evg/stencil.c:1065,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1082,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1106,1
    - Dst: EVG_Texture*::tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:1130,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1142,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/evg/stencil.c:1142,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1143,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/evg/stencil.c:1143,1
    - Dst: EVG_Texture*::tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:1186,1
    - Dst: EVG_Texture*::tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:1187,1
    - Dst: EVG_Texture*::tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:1188,1
    - Dst: EVG_LERP_WIDE
      Src: /src/gpac/src/evg/stencil.c:1190,1
    - Dst: EVG_LERP_WIDE
      Src: /src/gpac/src/evg/stencil.c:1191,1
    - Dst: EVG_LERP_WIDE
      Src: /src/gpac/src/evg/stencil.c:1192,1
    - Dst: gf_evg_ayuv_to_argb_wide
      Src: /src/gpac/src/evg/stencil.c:1209,1
    - Dst: gf_cmx_apply_wide
      Src: /src/gpac/src/evg/stencil.c:1212,1
    - Dst: gf_cmx_apply_wide
      Src: /src/gpac/src/evg/stencil.c:1216,1
    - Dst: gf_cmx_apply_wide
      Src: /src/gpac/src/evg/stencil.c:1223,1
    - Dst: gf_evg_argb_to_ayuv_wide
      Src: /src/gpac/src/evg/stencil.c:1227,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 131
    argCount: 5
    argNames:
    - p
    - rctx
    - _x
    - _y
    - count
    argTypes:
    - GF_EVGStencil*
    - EVGRasterCtx*
    - s32
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1233
      start: 1052
    functionDepth: 2
    functionLinenumber: 1052
    functionLinenumberEnd: 1233
    functionName: tex_fill_run_wide
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_evg_argb_to_ayuv_wide
    - gf_muldiv
    - gf_cmx_apply_wide
    - FIX2INT
    - tex_untransform_coord
    - EVG_Texture*::tx_get_pixel_wide
    - EVG_LERP_WIDE
    - gf_evg_ayuv_to_argb_wide
    linkageType: ''
    returnType: void
    signature: void tex_fill_run_wide(GF_EVGStencil *p, EVGRasterCtx *rctx, s32 _x,
      s32 _y, u32 count)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: ABS
      Src: /src/gpac/src/evg/stencil.c:1253,1
    - Dst: INT2FIX
      Src: /src/gpac/src/evg/stencil.c:1255,1
    - Dst: ABS
      Src: /src/gpac/src/evg/stencil.c:1258,1
    - Dst: INT2FIX
      Src: /src/gpac/src/evg/stencil.c:1260,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1267,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1298,1
    - Dst: EVG_Texture*::tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:1320,1
    - Dst: gf_evg_ayuv_to_argb_wide
      Src: /src/gpac/src/evg/stencil.c:1327,1
    - Dst: gf_evg_argb_to_ayuv_wide
      Src: /src/gpac/src/evg/stencil.c:1330,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 85
    argCount: 5
    argNames:
    - p
    - rctx
    - _x
    - _y
    - count
    argTypes:
    - GF_EVGStencil*
    - EVGRasterCtx*
    - s32
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1337
      start: 1237
    functionDepth: 1
    functionLinenumber: 1237
    functionLinenumberEnd: 1337
    functionName: tex_fill_run_straight_wide
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_evg_argb_to_ayuv_wide
    - ABS
    - INT2FIX
    - FIX2INT
    - EVG_Texture*::tx_get_pixel_wide
    - gf_evg_ayuv_to_argb_wide
    linkageType: ''
    returnType: void
    signature: void tex_fill_run_straight_wide(GF_EVGStencil *p, EVGRasterCtx *rctx,
      s32 _x, s32 _y, u32 count)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_is_identity
      Src: /src/gpac/src/evg/stencil.c:1359,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1381,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1404,1
    - Dst: EVG_Texture*::tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:1426,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1436,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/evg/stencil.c:1436,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1437,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/evg/stencil.c:1437,1
    - Dst: EVG_Texture*::tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:1478,1
    - Dst: EVG_Texture*::tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:1479,1
    - Dst: EVG_Texture*::tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:1480,1
    - Dst: EVG_LERP
      Src: /src/gpac/src/evg/stencil.c:1482,1
    - Dst: EVG_LERP
      Src: /src/gpac/src/evg/stencil.c:1483,1
    - Dst: EVG_LERP
      Src: /src/gpac/src/evg/stencil.c:1484,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/stencil.c:1491,1
    - Dst: gf_evg_ayuv_to_argb
      Src: /src/gpac/src/evg/stencil.c:1498,1
    - Dst: gf_cmx_apply
      Src: /src/gpac/src/evg/stencil.c:1501,1
    - Dst: gf_cmx_apply
      Src: /src/gpac/src/evg/stencil.c:1505,1
    - Dst: gf_cmx_apply
      Src: /src/gpac/src/evg/stencil.c:1512,1
    - Dst: gf_evg_argb_to_ayuv
      Src: /src/gpac/src/evg/stencil.c:1516,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 140
    argCount: 5
    argNames:
    - p
    - rctx
    - _x
    - _y
    - count
    argTypes:
    - GF_EVGStencil*
    - EVGRasterCtx*
    - s32
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1522
      start: 1339
    functionDepth: 2
    functionLinenumber: 1339
    functionLinenumberEnd: 1522
    functionName: tex_fill_run_3d
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_evg_ayuv_to_argb
    - gf_cmx_apply
    - EVG_LERP
    - GF_COL_A
    - gf_mx2d_is_identity
    - gf_muldiv
    - EVG_Texture*::tx_get_pixel
    - FIX2INT
    - gf_evg_argb_to_ayuv
    linkageType: ''
    returnType: void
    signature: void tex_fill_run_3d(GF_EVGStencil *p, EVGRasterCtx *rctx, s32 _x,
      s32 _y, u32 count)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1381,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1404,1
    - Dst: tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:1426,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1436,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/evg/stencil.c:1436,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1437,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/evg/stencil.c:1437,1
    - Dst: tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:1478,1
    - Dst: tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:1479,1
    - Dst: tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:1480,1
    - Dst: EVG_LERP
      Src: /src/gpac/src/evg/stencil.c:1482,1
    - Dst: EVG_LERP
      Src: /src/gpac/src/evg/stencil.c:1483,1
    - Dst: EVG_LERP
      Src: /src/gpac/src/evg/stencil.c:1484,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/stencil.c:1491,1
    - Dst: gf_evg_ayuv_to_argb
      Src: /src/gpac/src/evg/stencil.c:1498,1
    - Dst: gf_cmx_apply
      Src: /src/gpac/src/evg/stencil.c:1501,1
    - Dst: gf_cmx_apply
      Src: /src/gpac/src/evg/stencil.c:1505,1
    - Dst: gf_cmx_apply
      Src: /src/gpac/src/evg/stencil.c:1512,1
    - Dst: gf_evg_argb_to_ayuv
      Src: /src/gpac/src/evg/stencil.c:1516,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 131
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1521
      start: 1370
    functionDepth: 2
    functionLinenumber: 1370
    functionLinenumberEnd: 1521
    functionName: while
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_evg_ayuv_to_argb
    - gf_cmx_apply
    - tx_get_pixel
    - GF_COL_A
    - EVG_LERP
    - gf_muldiv
    - FIX2INT
    - gf_evg_argb_to_ayuv
    linkageType: ''
    returnType: PERSP_VARS_DECL
    signature: PERSP_VARS_DECL while (count)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_is_identity
      Src: /src/gpac/src/evg/stencil.c:1544,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1566,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1589,1
    - Dst: EVG_Texture*::tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:1611,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1621,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/evg/stencil.c:1621,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1622,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/evg/stencil.c:1622,1
    - Dst: EVG_Texture*::tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:1663,1
    - Dst: EVG_Texture*::tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:1664,1
    - Dst: EVG_Texture*::tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:1665,1
    - Dst: EVG_LERP_WIDE
      Src: /src/gpac/src/evg/stencil.c:1667,1
    - Dst: EVG_LERP_WIDE
      Src: /src/gpac/src/evg/stencil.c:1668,1
    - Dst: EVG_LERP_WIDE
      Src: /src/gpac/src/evg/stencil.c:1669,1
    - Dst: gf_evg_ayuv_to_argb_wide
      Src: /src/gpac/src/evg/stencil.c:1685,1
    - Dst: gf_cmx_apply_wide
      Src: /src/gpac/src/evg/stencil.c:1688,1
    - Dst: gf_cmx_apply_wide
      Src: /src/gpac/src/evg/stencil.c:1692,1
    - Dst: gf_cmx_apply_wide
      Src: /src/gpac/src/evg/stencil.c:1699,1
    - Dst: gf_evg_argb_to_ayuv_wide
      Src: /src/gpac/src/evg/stencil.c:1703,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 141
    argCount: 5
    argNames:
    - p
    - rctx
    - _x
    - _y
    - count
    argTypes:
    - GF_EVGStencil*
    - EVGRasterCtx*
    - s32
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1709
      start: 1524
    functionDepth: 2
    functionLinenumber: 1524
    functionLinenumberEnd: 1709
    functionName: tex_fill_run_3d_wide
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_evg_argb_to_ayuv_wide
    - gf_mx2d_is_identity
    - gf_muldiv
    - gf_cmx_apply_wide
    - FIX2INT
    - EVG_Texture*::tx_get_pixel_wide
    - EVG_LERP_WIDE
    - gf_evg_ayuv_to_argb_wide
    linkageType: ''
    returnType: void
    signature: void tex_fill_run_3d_wide(GF_EVGStencil *p, EVGRasterCtx *rctx, s32
      _x, s32 _y, u32 count)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1566,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1589,1
    - Dst: tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:1611,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1621,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/evg/stencil.c:1621,1
    - Dst: FIX2INT
      Src: /src/gpac/src/evg/stencil.c:1622,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/evg/stencil.c:1622,1
    - Dst: tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:1663,1
    - Dst: tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:1664,1
    - Dst: tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:1665,1
    - Dst: EVG_LERP_WIDE
      Src: /src/gpac/src/evg/stencil.c:1667,1
    - Dst: EVG_LERP_WIDE
      Src: /src/gpac/src/evg/stencil.c:1668,1
    - Dst: EVG_LERP_WIDE
      Src: /src/gpac/src/evg/stencil.c:1669,1
    - Dst: gf_evg_ayuv_to_argb_wide
      Src: /src/gpac/src/evg/stencil.c:1685,1
    - Dst: gf_cmx_apply_wide
      Src: /src/gpac/src/evg/stencil.c:1688,1
    - Dst: gf_cmx_apply_wide
      Src: /src/gpac/src/evg/stencil.c:1692,1
    - Dst: gf_cmx_apply_wide
      Src: /src/gpac/src/evg/stencil.c:1699,1
    - Dst: gf_evg_argb_to_ayuv_wide
      Src: /src/gpac/src/evg/stencil.c:1703,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 132
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1708
      start: 1555
    functionDepth: 2
    functionLinenumber: 1555
    functionLinenumberEnd: 1708
    functionName: while
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_evg_argb_to_ayuv_wide
    - gf_muldiv
    - gf_cmx_apply_wide
    - FIX2INT
    - EVG_LERP_WIDE
    - tx_get_pixel_wide
    - gf_evg_ayuv_to_argb_wide
    linkageType: ''
    returnType: PERSP_VARS_DECL
    signature: PERSP_VARS_DECL while (count)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/evg/stencil.c:1714,1
    - Dst: gf_evg_stencil_set_filter
      Src: /src/gpac/src/evg/stencil.c:1720,1
    - Dst: gf_cmx_init
      Src: /src/gpac/src/evg/stencil.c:1722,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1725
      start: 1711
    functionDepth: 1
    functionLinenumber: 1711
    functionLinenumberEnd: 1725
    functionName: evg_texture_brush
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 1
    functionsReached:
    - gf_evg_stencil_set_filter
    - gf_cmx_init
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EVGStencil
    signature: GF_EVGStencil *evg_texture_brush()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1731,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1732
      start: 1728
    functionDepth: 1
    functionLinenumber: 1728
    functionLinenumberEnd: 1732
    functionName: get_pix_argb
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_argb(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1736,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1737
      start: 1733
    functionDepth: 1
    functionLinenumber: 1733
    functionLinenumberEnd: 1737
    functionName: get_pix_rgba
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_rgba(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1741,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1742
      start: 1738
    functionDepth: 1
    functionLinenumber: 1738
    functionLinenumberEnd: 1742
    functionName: get_pix_grba
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_grba(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1746,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1747
      start: 1743
    functionDepth: 1
    functionLinenumber: 1743
    functionLinenumberEnd: 1747
    functionName: get_pix_abgr
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_abgr(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1751,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1752
      start: 1748
    functionDepth: 1
    functionLinenumber: 1748
    functionLinenumberEnd: 1752
    functionName: get_pix_bgra
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_bgra(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1756,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1757
      start: 1753
    functionDepth: 1
    functionLinenumber: 1753
    functionLinenumberEnd: 1757
    functionName: get_pix_rgbx
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_rgbx(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1761,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1762
      start: 1758
    functionDepth: 1
    functionLinenumber: 1758
    functionLinenumberEnd: 1762
    functionName: get_pix_xrgb
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_xrgb(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1766,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1767
      start: 1763
    functionDepth: 1
    functionLinenumber: 1763
    functionLinenumberEnd: 1767
    functionName: get_pix_xbgr
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_xbgr(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1771,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1772
      start: 1768
    functionDepth: 1
    functionLinenumber: 1768
    functionLinenumberEnd: 1772
    functionName: get_pix_bgrx
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_bgrx(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1776,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1777
      start: 1773
    functionDepth: 1
    functionLinenumber: 1773
    functionLinenumberEnd: 1777
    functionName: get_pix_rgb_24
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_rgb_24(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1781,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1782
      start: 1778
    functionDepth: 1
    functionLinenumber: 1778
    functionLinenumberEnd: 1782
    functionName: get_pix_gbr_24
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_gbr_24(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1786,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1787
      start: 1783
    functionDepth: 1
    functionLinenumber: 1783
    functionLinenumberEnd: 1787
    functionName: get_pix_bgr_24
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_bgr_24(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1794,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1795
      start: 1788
    functionDepth: 1
    functionLinenumber: 1788
    functionLinenumberEnd: 1795
    functionName: get_pix_332
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_332(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1802,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1803
      start: 1796
    functionDepth: 1
    functionLinenumber: 1796
    functionLinenumberEnd: 1803
    functionName: get_pix_444
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_444(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1812,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1813
      start: 1804
    functionDepth: 1
    functionLinenumber: 1804
    functionLinenumberEnd: 1813
    functionName: get_pix_555
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_555(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1822,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1823
      start: 1814
    functionDepth: 1
    functionLinenumber: 1814
    functionLinenumberEnd: 1823
    functionName: get_pix_565
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_565(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1828,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1830,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1831
      start: 1824
    functionDepth: 1
    functionLinenumber: 1824
    functionLinenumberEnd: 1831
    functionName: get_pix_palette_alpha
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_palette_alpha(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1836,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1838,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1839
      start: 1832
    functionDepth: 1
    functionLinenumber: 1832
    functionLinenumberEnd: 1839
    functionName: get_pix_palette
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_palette(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1844,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1845
      start: 1840
    functionDepth: 1
    functionLinenumber: 1840
    functionLinenumberEnd: 1845
    functionName: get_pix_grey
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_grey(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1852,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1853
      start: 1846
    functionDepth: 1
    functionLinenumber: 1846
    functionLinenumberEnd: 1853
    functionName: get_pix_alphagrey
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_alphagrey(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1860,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1861
      start: 1854
    functionDepth: 1
    functionLinenumber: 1854
    functionLinenumberEnd: 1861
    functionName: get_pix_greyalpha
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_greyalpha(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1867,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1868
      start: 1862
    functionDepth: 1
    functionLinenumber: 1862
    functionLinenumberEnd: 1868
    functionName: get_pix_yuv420p
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_yuv420p(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1873
      start: 1872
    functionDepth: 0
    functionLinenumber: 1872
    functionLinenumberEnd: 1873
    functionName: GET_LE_10BIT_AS_8
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_LE_10BIT_AS_8(_ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1874
      start: 1873
    functionDepth: 0
    functionLinenumber: 1873
    functionLinenumberEnd: 1874
    functionName: GET_LE_10BIT_AS_16
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_LE_10BIT_AS_16(_ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1877
      start: 1876
    functionDepth: 0
    functionLinenumber: 1876
    functionLinenumberEnd: 1877
    functionName: GET_LE_10BIT_LEFT_AS_8
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_LE_10BIT_LEFT_AS_8(_ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1878
      start: 1877
    functionDepth: 0
    functionLinenumber: 1877
    functionLinenumberEnd: 1878
    functionName: GET_LE_10BIT_LEFT_AS_16
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_LE_10BIT_LEFT_AS_16(_ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1880
      start: 1879
    functionDepth: 0
    functionLinenumber: 1879
    functionLinenumberEnd: 1880
    functionName: GET_BE_10BIT_AS_8
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_BE_10BIT_AS_8(_ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1881
      start: 1880
    functionDepth: 0
    functionLinenumber: 1880
    functionLinenumberEnd: 1881
    functionName: GET_BE_10BIT_AS_16
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_BE_10BIT_AS_16(_ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1885
      start: 1884
    functionDepth: 0
    functionLinenumber: 1884
    functionLinenumberEnd: 1885
    functionName: GET_LE_10BIT_AS_8
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_LE_10BIT_AS_8(_ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1886
      start: 1885
    functionDepth: 0
    functionLinenumber: 1885
    functionLinenumberEnd: 1886
    functionName: GET_LE_10BIT_AS_16
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_LE_10BIT_AS_16(_ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1888
      start: 1887
    functionDepth: 0
    functionLinenumber: 1887
    functionLinenumberEnd: 1888
    functionName: GET_LE_10BIT_LEFT_AS_8
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_LE_10BIT_LEFT_AS_8(_ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1889
      start: 1888
    functionDepth: 0
    functionLinenumber: 1888
    functionLinenumberEnd: 1889
    functionName: GET_LE_10BIT_LEFT_AS_16
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_LE_10BIT_LEFT_AS_16(_ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1892
      start: 1891
    functionDepth: 0
    functionLinenumber: 1891
    functionLinenumberEnd: 1892
    functionName: GET_BE_10BIT_AS_8
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_BE_10BIT_AS_8(_ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1893
      start: 1892
    functionDepth: 0
    functionLinenumber: 1892
    functionLinenumberEnd: 1893
    functionName: GET_BE_10BIT_AS_16
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_BE_10BIT_AS_16(_ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GET_LE_10BIT_AS_8
      Src: /src/gpac/src/evg/stencil.c:1904,1
    - Dst: GET_LE_10BIT_AS_8
      Src: /src/gpac/src/evg/stencil.c:1905,1
    - Dst: GET_LE_10BIT_AS_8
      Src: /src/gpac/src/evg/stencil.c:1906,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1908,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1909
      start: 1897
    functionDepth: 1
    functionLinenumber: 1897
    functionLinenumberEnd: 1909
    functionName: get_pix_yuv420p_10
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GET_LE_10BIT_AS_8
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_yuv420p_10(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GET_LE_10BIT_AS_16
      Src: /src/gpac/src/evg/stencil.c:1918,1
    - Dst: GET_LE_10BIT_AS_16
      Src: /src/gpac/src/evg/stencil.c:1919,1
    - Dst: GET_LE_10BIT_AS_16
      Src: /src/gpac/src/evg/stencil.c:1920,1
    - Dst: GF_COLW_ARGB
      Src: /src/gpac/src/evg/stencil.c:1922,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1923
      start: 1911
    functionDepth: 1
    functionLinenumber: 1911
    functionLinenumberEnd: 1923
    functionName: get_pix_yuv420p_10_wide
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GET_LE_10BIT_AS_16
    - GF_COLW_ARGB
    linkageType: ''
    returnType: u64
    signature: u64 get_pix_yuv420p_10_wide(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1931,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1932
      start: 1924
    functionDepth: 1
    functionLinenumber: 1924
    functionLinenumberEnd: 1932
    functionName: get_pix_yuv420p_a
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_yuv420p_a(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1938,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1939
      start: 1933
    functionDepth: 1
    functionLinenumber: 1933
    functionLinenumberEnd: 1939
    functionName: get_pix_yuv422p
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_yuv422p(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GET_LE_10BIT_AS_8
      Src: /src/gpac/src/evg/stencil.c:1947,1
    - Dst: GET_LE_10BIT_AS_8
      Src: /src/gpac/src/evg/stencil.c:1948,1
    - Dst: GET_LE_10BIT_AS_8
      Src: /src/gpac/src/evg/stencil.c:1949,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1950,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1951
      start: 1940
    functionDepth: 1
    functionLinenumber: 1940
    functionLinenumberEnd: 1951
    functionName: get_pix_yuv422p_10
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GET_LE_10BIT_AS_8
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_yuv422p_10(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GET_LE_10BIT_AS_16
      Src: /src/gpac/src/evg/stencil.c:1960,1
    - Dst: GET_LE_10BIT_AS_16
      Src: /src/gpac/src/evg/stencil.c:1961,1
    - Dst: GET_LE_10BIT_AS_16
      Src: /src/gpac/src/evg/stencil.c:1962,1
    - Dst: GF_COLW_ARGB
      Src: /src/gpac/src/evg/stencil.c:1963,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1964
      start: 1953
    functionDepth: 1
    functionLinenumber: 1953
    functionLinenumberEnd: 1964
    functionName: get_pix_yuv422p_10_wide
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GET_LE_10BIT_AS_16
    - GF_COLW_ARGB
    linkageType: ''
    returnType: u64
    signature: u64 get_pix_yuv422p_10_wide(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1971,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1972
      start: 1966
    functionDepth: 1
    functionLinenumber: 1966
    functionLinenumberEnd: 1972
    functionName: get_pix_yuv444p
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_yuv444p(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GET_LE_10BIT_AS_8
      Src: /src/gpac/src/evg/stencil.c:1980,1
    - Dst: GET_LE_10BIT_AS_8
      Src: /src/gpac/src/evg/stencil.c:1981,1
    - Dst: GET_LE_10BIT_AS_8
      Src: /src/gpac/src/evg/stencil.c:1982,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:1983,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1984
      start: 1973
    functionDepth: 1
    functionLinenumber: 1973
    functionLinenumberEnd: 1984
    functionName: get_pix_yuv444p_10
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GET_LE_10BIT_AS_8
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_yuv444p_10(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GET_LE_10BIT_AS_16
      Src: /src/gpac/src/evg/stencil.c:1992,1
    - Dst: GET_LE_10BIT_AS_16
      Src: /src/gpac/src/evg/stencil.c:1993,1
    - Dst: GET_LE_10BIT_AS_16
      Src: /src/gpac/src/evg/stencil.c:1994,1
    - Dst: GF_COLW_ARGB
      Src: /src/gpac/src/evg/stencil.c:1995,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1996
      start: 1985
    functionDepth: 1
    functionLinenumber: 1985
    functionLinenumberEnd: 1996
    functionName: get_pix_yuv444p_10_wide
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GET_LE_10BIT_AS_16
    - GF_COLW_ARGB
    linkageType: ''
    returnType: u64
    signature: u64 get_pix_yuv444p_10_wide(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:2003,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2004
      start: 1997
    functionDepth: 1
    functionLinenumber: 1997
    functionLinenumberEnd: 2004
    functionName: get_pix_yuv444p_a
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_yuv444p_a(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:2009,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2010
      start: 2005
    functionDepth: 1
    functionLinenumber: 2005
    functionLinenumberEnd: 2010
    functionName: get_pix_yuv_nv12
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_yuv_nv12(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GET_LE_10BIT_AS_8
      Src: /src/gpac/src/evg/stencil.c:2017,1
    - Dst: GET_LE_10BIT_AS_8
      Src: /src/gpac/src/evg/stencil.c:2018,1
    - Dst: GET_LE_10BIT_AS_8
      Src: /src/gpac/src/evg/stencil.c:2019,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:2021,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2022
      start: 2012
    functionDepth: 1
    functionLinenumber: 2012
    functionLinenumberEnd: 2022
    functionName: get_pix_yuv_nv12_10
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GET_LE_10BIT_AS_8
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_yuv_nv12_10(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GET_LE_10BIT_AS_16
      Src: /src/gpac/src/evg/stencil.c:2029,1
    - Dst: GET_LE_10BIT_AS_16
      Src: /src/gpac/src/evg/stencil.c:2030,1
    - Dst: GET_LE_10BIT_AS_16
      Src: /src/gpac/src/evg/stencil.c:2031,1
    - Dst: GF_COLW_ARGB
      Src: /src/gpac/src/evg/stencil.c:2033,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2034
      start: 2023
    functionDepth: 1
    functionLinenumber: 2023
    functionLinenumberEnd: 2034
    functionName: get_pix_yuv_nv12_10_wide
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GET_LE_10BIT_AS_16
    - GF_COLW_ARGB
    linkageType: ''
    returnType: u64
    signature: u64 get_pix_yuv_nv12_10_wide(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:2039,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2040
      start: 2035
    functionDepth: 1
    functionLinenumber: 2035
    functionLinenumberEnd: 2040
    functionName: get_pix_yuv_nv21
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_yuv_nv21(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GET_LE_10BIT_AS_8
      Src: /src/gpac/src/evg/stencil.c:2047,1
    - Dst: GET_LE_10BIT_AS_8
      Src: /src/gpac/src/evg/stencil.c:2048,1
    - Dst: GET_LE_10BIT_AS_8
      Src: /src/gpac/src/evg/stencil.c:2049,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:2051,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2052
      start: 2041
    functionDepth: 1
    functionLinenumber: 2041
    functionLinenumberEnd: 2052
    functionName: get_pix_yuv_nv21_10
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GET_LE_10BIT_AS_8
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_yuv_nv21_10(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GET_LE_10BIT_AS_16
      Src: /src/gpac/src/evg/stencil.c:2059,1
    - Dst: GET_LE_10BIT_AS_16
      Src: /src/gpac/src/evg/stencil.c:2060,1
    - Dst: GET_LE_10BIT_AS_16
      Src: /src/gpac/src/evg/stencil.c:2061,1
    - Dst: GF_COLW_ARGB
      Src: /src/gpac/src/evg/stencil.c:2062,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2063
      start: 2053
    functionDepth: 1
    functionLinenumber: 2053
    functionLinenumberEnd: 2063
    functionName: get_pix_yuv_nv21_10_wide
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GET_LE_10BIT_AS_16
    - GF_COLW_ARGB
    linkageType: ''
    returnType: u64
    signature: u64 get_pix_yuv_nv21_10_wide(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:2070,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2071
      start: 2064
    functionDepth: 1
    functionLinenumber: 2064
    functionLinenumberEnd: 2071
    functionName: get_pix_yuyv
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_yuyv(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:2078,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2079
      start: 2072
    functionDepth: 1
    functionLinenumber: 2072
    functionLinenumberEnd: 2079
    functionName: get_pix_yvyu
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_yvyu(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:2086,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2087
      start: 2080
    functionDepth: 1
    functionLinenumber: 2080
    functionLinenumberEnd: 2087
    functionName: get_pix_uyvy
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_uyvy(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:2094,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2095
      start: 2088
    functionDepth: 1
    functionLinenumber: 2088
    functionLinenumberEnd: 2095
    functionName: get_pix_vyuy
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_vyuy(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:2110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2111
      start: 2096
    functionDepth: 1
    functionLinenumber: 2096
    functionLinenumberEnd: 2111
    functionName: get_pix_yuv444_10
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_yuv444_10(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COLW_ARGB
      Src: /src/gpac/src/evg/stencil.c:2125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2126
      start: 2112
    functionDepth: 1
    functionLinenumber: 2112
    functionLinenumberEnd: 2126
    functionName: get_pix_yuv444_10_wide
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COLW_ARGB
    linkageType: ''
    returnType: u64
    signature: u64 get_pix_yuv444_10_wide(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:2175,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 51
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2176
      start: 2128
    functionDepth: 1
    functionLinenumber: 2128
    functionLinenumberEnd: 2176
    functionName: get_pix_v210
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_v210(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_COLW_ARGB
      Src: /src/gpac/src/evg/stencil.c:2224,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 51
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2225
      start: 2177
    functionDepth: 1
    functionLinenumber: 2177
    functionLinenumberEnd: 2225
    functionName: get_pix_v210_wide
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_COLW_ARGB
    linkageType: ''
    returnType: u64
    signature: u64 get_pix_v210_wide(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GET_LE_10BIT_LEFT_AS_8
      Src: /src/gpac/src/evg/stencil.c:2233,1
    - Dst: GET_LE_10BIT_LEFT_AS_8
      Src: /src/gpac/src/evg/stencil.c:2235,1
    - Dst: GET_LE_10BIT_LEFT_AS_8
      Src: /src/gpac/src/evg/stencil.c:2237,1
    - Dst: GET_LE_10BIT_LEFT_AS_8
      Src: /src/gpac/src/evg/stencil.c:2238,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:2239,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2240
      start: 2227
    functionDepth: 1
    functionLinenumber: 2227
    functionLinenumberEnd: 2240
    functionName: get_pix_yuyv_10
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GET_LE_10BIT_LEFT_AS_8
    - GF_COL_ARGB
    linkageType: ''
    returnType: u32
    signature: u32 get_pix_yuyv_10(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GET_LE_10BIT_LEFT_AS_16
      Src: /src/gpac/src/evg/stencil.c:2247,1
    - Dst: GET_LE_10BIT_LEFT_AS_16
      Src: /src/gpac/src/evg/stencil.c:2249,1
    - Dst: GET_LE_10BIT_LEFT_AS_16
      Src: /src/gpac/src/evg/stencil.c:2251,1
    - Dst: GET_LE_10BIT_LEFT_AS_16
      Src: /src/gpac/src/evg/stencil.c:2252,1
    - Dst: GF_COLW_ARGB
      Src: /src/gpac/src/evg/stencil.c:2253,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - ctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2254
      start: 2241
    functionDepth: 1
    functionLinenumber: 2241
    functionLinenumberEnd: 2254
    functionName: get_pix_yuyv_10_wide
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GET_LE_10BIT_LEFT_AS_16
    - GF_COLW_ARGB
    linkageType: ''
    returnType: u64
    signature: u64 get_pix_yuyv_10_wide(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evg_col_to_wide
      Src: /src/gpac/src/evg/stencil.c:2257,1
    - Dst: struct __evg_texture*::tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:2257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - rctx
    argTypes:
    - struct __evg_texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2258
      start: 2255
    functionDepth: 2
    functionLinenumber: 2255
    functionLinenumberEnd: 2258
    functionName: default_get_pixel_wide
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - struct __evg_texture*::tx_get_pixel
    - evg_col_to_wide
    linkageType: ''
    returnType: u64
    signature: u64 default_get_pixel_wide(struct __evg_texture *_this, u32 x, u32
      y, EVGRasterCtx *rctx)
  - BBCount: 70
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 243
    argCount: 1
    argNames:
    - _this
    argTypes:
    - EVG_Texture*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2505
      start: 2260
    functionDepth: 0
    functionLinenumber: 2260
    functionLinenumberEnd: 2505
    functionName: texture_set_callbacks
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void texture_set_callbacks(EVG_Texture *_this)
  - BBCount: 51
    BranchProfiles: []
    Callsites:
    - Dst: texture_set_callbacks
      Src: /src/gpac/src/evg/stencil.c:2622,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 112
    argCount: 11
    argNames:
    - st
    - width
    - height
    - pixelFormat
    - pixels
    - stride
    - u_plane
    - v_plane
    - uv_stride
    - alpha_plane
    - alpha_stride
    argTypes:
    - GF_EVGStencil*
    - u32
    - u32
    - GF_PixelFormat
    - char*
    - u32
    - char*
    - char*
    - u32
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2624
      start: 2507
    functionDepth: 1
    functionLinenumber: 2507
    functionLinenumberEnd: 2624
    functionName: gf_evg_stencil_set_texture_internal
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - texture_set_callbacks
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_stencil_set_texture_internal(GF_EVGStencil * st, u32
      width, u32 height, GF_PixelFormat pixelFormat, const char *pixels, u32 stride,
      const char *u_plane, const char *v_plane, u32 uv_stride, const char *alpha_plane,
      u32 alpha_stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_stencil_set_texture_internal
      Src: /src/gpac/src/evg/stencil.c:2629,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 11
    argNames:
    - stencil
    - width
    - height
    - pixelFormat
    - y_or_rgb
    - stride
    - u_plane
    - v_plane
    - uv_stride
    - alpha_plane
    - stride_alpha
    argTypes:
    - GF_EVGStencil*
    - u32
    - u32
    - GF_PixelFormat
    - u8*
    - u32
    - u8*
    - u8*
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2630
      start: 2626
    functionDepth: 2
    functionLinenumber: 2626
    functionLinenumberEnd: 2630
    functionName: gf_evg_stencil_set_texture_planes
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_evg_stencil_set_texture_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_set_texture_planes(GF_EVGStencil *stencil,
      u32 width, u32 height, GF_PixelFormat pixelFormat, const u8 *y_or_rgb, u32 stride,
      const u8 *u_plane, const u8 *v_plane, u32 uv_stride, const u8 *alpha_plane,
      u32 stride_alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_stencil_set_texture_internal
      Src: /src/gpac/src/evg/stencil.c:2634,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - stencil
    - pixels
    - width
    - height
    - stride
    - pixelFormat
    argTypes:
    - GF_EVGStencil*
    - u8*
    - u32
    - u32
    - u32
    - GF_PixelFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2635
      start: 2631
    functionDepth: 2
    functionLinenumber: 2631
    functionLinenumberEnd: 2635
    functionName: gf_evg_stencil_set_texture
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_evg_stencil_set_texture_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_set_texture(GF_EVGStencil *stencil, u8 *pixels,
      u32 width, u32 height, u32 stride, GF_PixelFormat pixelFormat)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/evg/stencil.c:2641,1
    - Dst: gf_evg_stencil_set_texture_internal
      Src: /src/gpac/src/evg/stencil.c:2643,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - pixelFormat
    argTypes:
    - GF_PixelFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2646
      start: 2637
    functionDepth: 2
    functionLinenumber: 2637
    functionLinenumberEnd: 2646
    functionName: gf_evg_texture_format_ok
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_evg_stencil_set_texture_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_texture_format_ok(GF_PixelFormat pixelFormat)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 55
    argCount: 4
    argNames:
    - stencil
    - palette
    - pix_fmt
    - nb_cols
    argTypes:
    - GF_EVGStencil*
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2706
      start: 2649
    functionDepth: 0
    functionLinenumber: 2649
    functionLinenumberEnd: 2706
    functionName: gf_evg_stencil_set_palette
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_set_palette(GF_EVGStencil *stencil, const
      u8 *palette, u32 pix_fmt, u32 nb_cols)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 7
    argNames:
    - stencil
    - pY_or_RGB
    - pU
    - pV
    - pA
    - stride
    - stride_uv
    argTypes:
    - GF_EVGStencil*
    - u8**
    - u8**
    - u8**
    - u8**
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2723
      start: 2707
    functionDepth: 0
    functionLinenumber: 2707
    functionLinenumberEnd: 2723
    functionName: gf_evg_stencil_get_texture_planes
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_get_texture_planes(GF_EVGStencil *stencil,
      u8 **pY_or_RGB, u8 **pU, u8 **pV, u8 **pA, u32 *stride, u32 *stride_uv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_stencil_set_texture_internal
      Src: /src/gpac/src/evg/stencil.c:2733,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 7
    argNames:
    - stencil
    - width
    - height
    - pixelFormat
    - callback
    - cbk_data
    - use_screen_coords
    argTypes:
    - GF_EVGStencil*
    - u32
    - u32
    - GF_PixelFormat
    - gf_evg_texture_callback
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2744
      start: 2726
    functionDepth: 2
    functionLinenumber: 2726
    functionLinenumberEnd: 2744
    functionName: gf_evg_stencil_set_texture_parametric
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_evg_stencil_set_texture_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_set_texture_parametric(GF_EVGStencil *stencil,
      u32 width, u32 height, GF_PixelFormat pixelFormat, gf_evg_texture_callback callback,
      void *cbk_data, Bool use_screen_coords)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_apply_point
      Src: /src/gpac/src/evg/stencil.c:2753,1
    - Dst: gf_mx2d_apply_point
      Src: /src/gpac/src/evg/stencil.c:2754,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/stencil.c:2795,1
    - Dst: gf_evg_argb_to_ayuv
      Src: /src/gpac/src/evg/stencil.c:2797,1
    - Dst: evg_col_to_wide
      Src: /src/gpac/src/evg/stencil.c:2801,1
    - Dst: texture_set_callbacks
      Src: /src/gpac/src/evg/stencil.c:2803,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 50
    argCount: 2
    argNames:
    - p
    - surf
    argTypes:
    - GF_EVGStencil*
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2804
      start: 2746
    functionDepth: 2
    functionLinenumber: 2746
    functionLinenumberEnd: 2804
    functionName: evg_texture_init
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - evg_col_to_wide
    - texture_set_callbacks
    - GF_COL_ARGB
    - gf_mx2d_apply_point
    - gf_evg_argb_to_ayuv
    linkageType: ''
    returnType: void
    signature: void evg_texture_init(GF_EVGStencil *p, GF_EVGSurface *surf)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - st
    - pad_color
    argTypes:
    - GF_EVGStencil*
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2813
      start: 2806
    functionDepth: 0
    functionLinenumber: 2806
    functionLinenumberEnd: 2813
    functionName: gf_evg_stencil_set_pad_color
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_set_pad_color(GF_EVGStencil * st, GF_Color
      pad_color)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - st
    argTypes:
    - GF_EVGStencil*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2821
      start: 2815
    functionDepth: 0
    functionLinenumber: 2815
    functionLinenumberEnd: 2821
    functionName: gf_evg_stencil_get_pad_color
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_get_pad_color(GF_EVGStencil * st)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - st
    - mode
    argTypes:
    - GF_EVGStencil*
    - GF_TextureMapFlags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2830
      start: 2823
    functionDepth: 0
    functionLinenumber: 2823
    functionLinenumberEnd: 2830
    functionName: gf_evg_stencil_set_mapping
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_set_mapping(GF_EVGStencil * st, GF_TextureMapFlags
      mode)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - st
    - filter_mode
    argTypes:
    - GF_EVGStencil*
    - GF_TextureFilter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2839
      start: 2832
    functionDepth: 0
    functionLinenumber: 2832
    functionLinenumberEnd: 2839
    functionName: gf_evg_stencil_set_filter
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_set_filter(GF_EVGStencil * st, GF_TextureFilter
      filter_mode)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_cmx_init
      Src: /src/gpac/src/evg/stencil.c:2853,1
    - Dst: memcmp
      Src: /src/gpac/src/evg/stencil.c:2855,1
    - Dst: gf_cmx_copy
      Src: /src/gpac/src/evg/stencil.c:2857,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 2
    argNames:
    - st
    - cmat
    argTypes:
    - GF_EVGStencil*
    - GF_ColorMatrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2860
      start: 2841
    functionDepth: 1
    functionLinenumber: 2841
    functionLinenumberEnd: 2860
    functionName: gf_evg_stencil_set_color_matrix
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_cmx_copy
    - gf_cmx_init
    - memcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_set_color_matrix(GF_EVGStencil * st, GF_ColorMatrix
      *cmat)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_cmx_copy
      Src: /src/gpac/src/evg/stencil.c:2867,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - st
    - cmat
    argTypes:
    - GF_EVGStencil*
    - GF_ColorMatrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2869
      start: 2862
    functionDepth: 1
    functionLinenumber: 2862
    functionLinenumberEnd: 2869
    functionName: gf_evg_stencil_get_color_matrix
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_cmx_copy
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_get_color_matrix(GF_EVGStencil * st, GF_ColorMatrix
      *cmat)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: EVG_Texture*::tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:2880,1
    - Dst: gf_evg_ayuv_to_argb
      Src: /src/gpac/src/evg/stencil.c:2882,1
    - Dst: gf_evg_argb_to_ayuv
      Src: /src/gpac/src/evg/stencil.c:2884,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 20
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - want_yuv
    argTypes:
    - EVG_Texture*
    - s32
    - s32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2887
      start: 2870
    functionDepth: 1
    functionLinenumber: 2870
    functionLinenumberEnd: 2887
    functionName: gf_evg_stencil_get_pixel_intern
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_evg_ayuv_to_argb
    - EVG_Texture*::tx_get_pixel
    - gf_evg_argb_to_ayuv
    linkageType: ''
    returnType: u32
    signature: u32 gf_evg_stencil_get_pixel_intern(EVG_Texture *_this, s32 x, s32
      y, Bool want_yuv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_stencil_get_pixel_intern
      Src: /src/gpac/src/evg/stencil.c:2892,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - st
    - x
    - y
    argTypes:
    - GF_EVGStencil*
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2893
      start: 2889
    functionDepth: 2
    functionLinenumber: 2889
    functionLinenumberEnd: 2893
    functionName: gf_evg_stencil_get_pixel
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_evg_stencil_get_pixel_intern
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_get_pixel(GF_EVGStencil *st, s32 x, s32 y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_stencil_get_pixel_intern
      Src: /src/gpac/src/evg/stencil.c:2898,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - st
    - x
    - y
    argTypes:
    - GF_EVGStencil*
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2899
      start: 2895
    functionDepth: 2
    functionLinenumber: 2895
    functionLinenumberEnd: 2899
    functionName: gf_evg_stencil_get_pixel_yuv
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_evg_stencil_get_pixel_intern
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_get_pixel_yuv(GF_EVGStencil *st, s32 x, s32
      y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:2903,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - st
    - x
    - y
    argTypes:
    - GF_EVGStencil*
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2904
      start: 2901
    functionDepth: 0
    functionLinenumber: 2901
    functionLinenumberEnd: 2904
    functionName: gf_evg_stencil_get_pixel_fast
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - tx_get_pixel
    linkageType: ''
    returnType: u32
    signature: u32 gf_evg_stencil_get_pixel_fast(GF_EVGStencil *st, s32 x, s32 y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:2907,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - st
    - x
    - y
    argTypes:
    - GF_EVGStencil*
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2908
      start: 2905
    functionDepth: 0
    functionLinenumber: 2905
    functionLinenumberEnd: 2908
    functionName: gf_evg_stencil_get_pixel_wide_fast
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - tx_get_pixel_wide
    linkageType: ''
    returnType: u64
    signature: u64 gf_evg_stencil_get_pixel_wide_fast(GF_EVGStencil *st, s32 x, s32
      y)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: EVG_Texture*::tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:2922,1
    - Dst: gf_evg_ayuv_to_argb_wide
      Src: /src/gpac/src/evg/stencil.c:2924,1
    - Dst: gf_evg_argb_to_ayuv_wide
      Src: /src/gpac/src/evg/stencil.c:2926,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 20
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - want_yuv
    argTypes:
    - EVG_Texture*
    - s32
    - s32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2929
      start: 2912
    functionDepth: 1
    functionLinenumber: 2912
    functionLinenumberEnd: 2929
    functionName: gf_evg_stencil_get_pixel_wide_intern
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_evg_argb_to_ayuv_wide
    - gf_evg_ayuv_to_argb_wide
    - EVG_Texture*::tx_get_pixel_wide
    linkageType: ''
    returnType: u64
    signature: u64 gf_evg_stencil_get_pixel_wide_intern(EVG_Texture *_this, s32 x,
      s32 y, Bool want_yuv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_stencil_get_pixel_wide_intern
      Src: /src/gpac/src/evg/stencil.c:2934,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - st
    - x
    - y
    argTypes:
    - GF_EVGStencil*
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2935
      start: 2931
    functionDepth: 2
    functionLinenumber: 2931
    functionLinenumberEnd: 2935
    functionName: gf_evg_stencil_get_pixel_wide
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_evg_stencil_get_pixel_wide_intern
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_get_pixel_wide(GF_EVGStencil *st, s32 x, s32
      y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_stencil_get_pixel_intern
      Src: /src/gpac/src/evg/stencil.c:2940,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - st
    - x
    - y
    argTypes:
    - GF_EVGStencil*
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2941
      start: 2937
    functionDepth: 2
    functionLinenumber: 2937
    functionLinenumberEnd: 2941
    functionName: gf_evg_stencil_get_pixel_yuv_wide
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_evg_stencil_get_pixel_intern
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_get_pixel_yuv_wide(GF_EVGStencil *st, s32
      x, s32 y)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/evg/stencil.c:2947,1
    - Dst: EVG_Texture*::tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:2976,1
    - Dst: floor
      Src: /src/gpac/src/evg/stencil.c:2978,1
    - Dst: floor
      Src: /src/gpac/src/evg/stencil.c:2979,1
    - Dst: EVG_Texture*::tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:2983,1
    - Dst: EVG_Texture*::tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:2993,1
    - Dst: EVG_Texture*::tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:2994,1
    - Dst: EVG_Texture*::tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:2995,1
    - Dst: EVG_Texture*::tx_get_pixel_wide
      Src: /src/gpac/src/evg/stencil.c:2996,1
    - Dst: EVG_LERP_WIDE
      Src: /src/gpac/src/evg/stencil.c:2997,1
    - Dst: EVG_LERP_WIDE
      Src: /src/gpac/src/evg/stencil.c:2998,1
    - Dst: EVG_LERP_WIDE
      Src: /src/gpac/src/evg/stencil.c:2999,1
    - Dst: gf_evg_ayuv_to_argb_wide
      Src: /src/gpac/src/evg/stencil.c:3003,1
    - Dst: gf_evg_argb_to_ayuv_wide
      Src: /src/gpac/src/evg/stencil.c:3005,1
    - Dst: GF_COLW_R
      Src: /src/gpac/src/evg/stencil.c:3008,1
    - Dst: GF_COLW_G
      Src: /src/gpac/src/evg/stencil.c:3009,1
    - Dst: GF_COLW_B
      Src: /src/gpac/src/evg/stencil.c:3010,1
    - Dst: GF_COLW_A
      Src: /src/gpac/src/evg/stencil.c:3011,1
    - Dst: EVG_Texture*::tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:3017,1
    - Dst: floor
      Src: /src/gpac/src/evg/stencil.c:3019,1
    - Dst: floor
      Src: /src/gpac/src/evg/stencil.c:3020,1
    - Dst: EVG_Texture*::tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:3024,1
    - Dst: EVG_Texture*::tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:3034,1
    - Dst: EVG_Texture*::tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:3035,1
    - Dst: EVG_Texture*::tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:3036,1
    - Dst: EVG_Texture*::tx_get_pixel
      Src: /src/gpac/src/evg/stencil.c:3037,1
    - Dst: EVG_LERP
      Src: /src/gpac/src/evg/stencil.c:3038,1
    - Dst: EVG_LERP
      Src: /src/gpac/src/evg/stencil.c:3039,1
    - Dst: EVG_LERP
      Src: /src/gpac/src/evg/stencil.c:3040,1
    - Dst: gf_evg_ayuv_to_argb
      Src: /src/gpac/src/evg/stencil.c:3044,1
    - Dst: gf_evg_argb_to_ayuv
      Src: /src/gpac/src/evg/stencil.c:3046,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/stencil.c:3048,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/stencil.c:3049,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/stencil.c:3050,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/stencil.c:3051,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 109
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - want_yuv
    argTypes:
    - EVG_Texture*
    - Float
    - Float
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3053
      start: 2942
    functionDepth: 2
    functionLinenumber: 2942
    functionLinenumberEnd: 3053
    functionName: gf_evg_stencil_get_pixel_f_intern
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_evg_ayuv_to_argb
    - gf_evg_argb_to_ayuv_wide
    - GF_COL_G
    - GF_COLW_R
    - GF_COLW_G
    - GF_COLW_B
    - EVG_LERP
    - GF_COL_B
    - GF_COL_A
    - EVG_Texture*::tx_get_pixel
    - gf_evg_argb_to_ayuv
    - memset
    - GF_COLW_A
    - GF_COL_R
    - EVG_Texture*::tx_get_pixel_wide
    - floor
    - EVG_LERP_WIDE
    - gf_evg_ayuv_to_argb_wide
    linkageType: ''
    returnType: GF_Vec4
    signature: GF_Vec4 gf_evg_stencil_get_pixel_f_intern(EVG_Texture *_this, Float
      x, Float y, Bool want_yuv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_stencil_get_pixel_f_intern
      Src: /src/gpac/src/evg/stencil.c:3058,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - st
    - x
    - y
    argTypes:
    - GF_EVGStencil*
    - Float
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3059
      start: 3055
    functionDepth: 3
    functionLinenumber: 3055
    functionLinenumberEnd: 3059
    functionName: gf_evg_stencil_get_pixel_f
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_evg_stencil_get_pixel_f_intern
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_get_pixel_f(GF_EVGStencil *st, Float x, Float
      y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_stencil_get_pixel_f_intern
      Src: /src/gpac/src/evg/stencil.c:3064,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - st
    - x
    - y
    argTypes:
    - GF_EVGStencil*
    - Float
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3065
      start: 3061
    functionDepth: 3
    functionLinenumber: 3061
    functionLinenumberEnd: 3065
    functionName: gf_evg_stencil_get_pixel_yuv_f
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_evg_stencil_get_pixel_f_intern
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_get_pixel_yuv_f(GF_EVGStencil *st, Float x,
      Float y)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - st
    - alpha
    argTypes:
    - GF_EVGStencil*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3085
      start: 3067
    functionDepth: 0
    functionLinenumber: 3067
    functionLinenumberEnd: 3085
    functionName: gf_evg_stencil_set_alpha
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_set_alpha(GF_EVGStencil * st, u8 alpha)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - st
    argTypes:
    - GF_EVGStencil*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3099
      start: 3087
    functionDepth: 0
    functionLinenumber: 3087
    functionLinenumberEnd: 3099
    functionName: gf_evg_stencil_get_alpha
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_stencil_get_alpha(GF_EVGStencil * st)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: EVGRasterCtx*::surf::sten2::fill_run
      Src: /src/gpac/src/evg/stencil.c:3116,1
    - Dst: GF_EVGStencil*::fill_run
      Src: /src/gpac/src/evg/stencil.c:3118,1
    - Dst: GF_EVGStencil*::fill_run
      Src: /src/gpac/src/evg/stencil.c:3124,1
    - Dst: EVGRasterCtx*::surf::sten2::fill_run
      Src: /src/gpac/src/evg/stencil.c:3129,1
    - Dst: EVGRasterCtx*::surf::sten3::fill_run
      Src: /src/gpac/src/evg/stencil.c:3133,1
    - Dst: EVGRasterCtx*::surf::update_run
      Src: /src/gpac/src/evg/stencil.c:3136,1
    - Dst: GF_EVGSurface*::get_alpha
      Src: /src/gpac/src/evg/stencil.c:3148,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/stencil.c:3155,1
    - Dst: GF_EVGSurface*::get_alpha
      Src: /src/gpac/src/evg/stencil.c:3156,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 49
    argCount: 4
    argNames:
    - p
    - rctx
    - span
    - y
    argTypes:
    - GF_EVGStencil*
    - EVGRasterCtx*
    - EVG_Span*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3163
      start: 3101
    functionDepth: 1
    functionLinenumber: 3101
    functionLinenumberEnd: 3163
    functionName: evg_fill_run
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - EVGRasterCtx*::surf::sten2::fill_run
    - GF_EVGSurface*::get_alpha
    - GF_COL_A
    - EVGRasterCtx*::surf::sten3::fill_run
    - EVGRasterCtx*::surf::update_run
    - GF_EVGStencil*::fill_run
    linkageType: ''
    returnType: void
    signature: void *evg_fill_run(GF_EVGStencil *p, EVGRasterCtx *rctx, EVG_Span *span,
      s32 y)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: evg_fill_run
      Src: /src/gpac/src/evg/stencil.c:3166,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 4
    argNames:
    - p
    - rctx
    - span
    - y
    argTypes:
    - GF_EVGStencil*
    - EVGRasterCtx*
    - EVG_Span*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3185
      start: 3164
    functionDepth: 2
    functionLinenumber: 3164
    functionLinenumberEnd: 3185
    functionName: evg_fill_run_mask
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - evg_fill_run
    linkageType: ''
    returnType: void
    signature: void *evg_fill_run_mask(GF_EVGStencil *p, EVGRasterCtx *rctx, EVG_Span
      *span, s32 y)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: evg_fill_run
      Src: /src/gpac/src/evg/stencil.c:3188,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 4
    argNames:
    - p
    - rctx
    - span
    - y
    argTypes:
    - GF_EVGStencil*
    - EVGRasterCtx*
    - EVG_Span*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3207
      start: 3186
    functionDepth: 2
    functionLinenumber: 3186
    functionLinenumberEnd: 3207
    functionName: evg_fill_run_mask_inv
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - evg_fill_run
    linkageType: ''
    returnType: void
    signature: void *evg_fill_run_mask_inv(GF_EVGStencil *p, EVGRasterCtx *rctx, EVG_Span
      *span, s32 y)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::fill_spans
      Src: /src/gpac/src/evg/stencil.c:3242,1
    - Dst: GF_EVGSurface*::fill_spans
      Src: /src/gpac/src/evg/stencil.c:3256,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 36
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - int
    - int
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3259
      start: 3209
    functionDepth: 0
    functionLinenumber: 3209
    functionLinenumberEnd: 3259
    functionName: evg_fill_span_mask
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - GF_EVGSurface*::fill_spans
    linkageType: ''
    returnType: void
    signature: void evg_fill_span_mask(int y, int count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - _type
    - ','
    - _val
    - ','
    - _shift
    - ','
    - _R
    - ','
    - _G
    - ','
    - _B
    - ','
    - _ARGB
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3287
      start: 3262
    functionDepth: 0
    functionLinenumber: 3262
    functionLinenumberEnd: 3287
    functionName: mix_run_func
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: mix_run_func(_type, _val, _shift, _R, _G, _B, _ARGB)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - _type
    - ','
    - _val
    - ','
    - _shift
    - ','
    - _A
    - ','
    - _R
    - ','
    - _G
    - ','
    - _B
    - ','
    - _ARGB
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3326
      start: 3298
    functionDepth: 0
    functionLinenumber: 3298
    functionLinenumberEnd: 3326
    functionName: mixa_run_func
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: mixa_run_func(_type, _val, _shift, _A, _R, _G, _B, _ARGB)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _type
    - ','
    - _shift
    - ','
    - _mask
    - ','
    - _A
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3349
      start: 3337
    functionDepth: 0
    functionLinenumber: 3337
    functionLinenumberEnd: 3349
    functionName: repa_run_func
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: repa_run_func(_type, _shift, _mask, _A)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - _type
    - ','
    - _val
    - ','
    - _shift
    - ','
    - _mask
    - ','
    - _A
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3395
      start: 3383
    functionDepth: 0
    functionLinenumber: 3383
    functionLinenumberEnd: 3395
    functionName: repa_m1_run_func
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: repa_m1_run_func(_type, _val, _shift, _mask, _A)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - _type
    - ','
    - _val
    - ','
    - _shift
    - ','
    - _A
    - ','
    - _R
    - ','
    - _G
    - ','
    - _B
    - ','
    - _ARGB
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3452
      start: 3429
    functionDepth: 0
    functionLinenumber: 3429
    functionLinenumberEnd: 3452
    functionName: mix_dyn_run_func
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: mix_dyn_run_func(_type, _val, _shift, _A, _R, _G, _B, _ARGB)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - _type
    - ','
    - _val
    - ','
    - _shift
    - ','
    - _A
    - ','
    - _R
    - ','
    - _G
    - ','
    - _B
    - ','
    - _ARGB
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3518
      start: 3492
    functionDepth: 0
    functionLinenumber: 3492
    functionLinenumberEnd: 3518
    functionName: mix_dyna_run_func
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: mix_dyna_run_func(_type, _val, _shift, _A, _R, _G, _B, _ARGB)
  - BBCount: 47
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/evg/stencil.c:3667,1
    - Dst: gf_malloc
      Src: /src/gpac/src/evg/stencil.c:3671,1
    - Dst: gf_malloc
      Src: /src/gpac/src/evg/stencil.c:3680,1
    - Dst: gf_malloc
      Src: /src/gpac/src/evg/stencil.c:3684,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 137
    argCount: 5
    argNames:
    - surf
    - operand
    - sten2
    - sten3
    - params
    argTypes:
    - GF_EVGSurface*
    - GF_EVGMultiTextureMode
    - GF_EVGStencil*
    - GF_EVGStencil*
    - Float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3690
      start: 3552
    functionDepth: 0
    functionLinenumber: 3552
    functionLinenumberEnd: 3690
    functionName: gf_evg_setup_multi_texture
    functionSourceFile: /src/gpac/src/evg/stencil.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_setup_multi_texture(GF_EVGSurface *surf, GF_EVGMultiTextureMode
      operand, GF_EVGStencil *sten2, GF_EVGStencil *sten3, Float *params)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/evg/ftgrays.c:83,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 1
    argNames:
    - surf
    argTypes:
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 101
    functionName: gray_record_cell
    functionSourceFile: /src/gpac/src/evg/ftgrays.c
    functionUses: 4
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void gray_record_cell(GF_EVGSurface *surf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gray_record_cell
      Src: /src/gpac/src/evg/ftgrays.c:106,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - surf
    - ex
    - ey
    argTypes:
    - GF_EVGSurface*
    - TCoord
    - TCoord
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 112
    functionName: gray_set_cell
    functionSourceFile: /src/gpac/src/evg/ftgrays.c
    functionUses: 1
    functionsReached:
    - gray_record_cell
    linkageType: ''
    returnType: void
    signature: void gray_set_cell(GF_EVGSurface *surf, TCoord  ex, TCoord  ey )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_apply_coords
      Src: /src/gpac/src/evg/ftgrays.c:120,1
    - Dst: UPSCALE
      Src: /src/gpac/src/evg/ftgrays.c:122,1
    - Dst: UPSCALE
      Src: /src/gpac/src/evg/ftgrays.c:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - mx
    - pt
    - x
    - y
    argTypes:
    - GF_Matrix2D*
    - EVG_Vector*
    - TPos*
    - TPos*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 128
    functionName: evg_translate_point
    functionSourceFile: /src/gpac/src/evg/ftgrays.c
    functionUses: 0
    functionsReached:
    - UPSCALE
    - gf_mx2d_apply_coords
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE evg_translate_point(GF_Matrix2D *mx, EVG_Vector *pt, TPos
      *x, TPos *y)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gray_record_cell
      Src: /src/gpac/src/evg/ftgrays.c:136,1
    - Dst: evg_translate_point
      Src: /src/gpac/src/evg/ftgrays.c:138,1
    - Dst: TRUNC
      Src: /src/gpac/src/evg/ftgrays.c:140,1
    - Dst: TRUNC
      Src: /src/gpac/src/evg/ftgrays.c:141,1
    - Dst: gray_set_cell
      Src: /src/gpac/src/evg/ftgrays.c:145,1
    - Dst: SUBPIXELS
      Src: /src/gpac/src/evg/ftgrays.c:147,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - to
    - surf
    argTypes:
    - EVG_Vector*
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 130
    functionDepth: 2
    functionLinenumber: 130
    functionLinenumberEnd: 152
    functionName: gray_move_to
    functionSourceFile: /src/gpac/src/evg/ftgrays.c
    functionUses: 0
    functionsReached:
    - gray_record_cell
    - SUBPIXELS
    - TRUNC
    - evg_translate_point
    - gray_set_cell
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gray_move_to(EVG_Vector *to, GF_EVGSurface *surf)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: TRUNC
      Src: /src/gpac/src/evg/ftgrays.c:166,1
    - Dst: TRUNC
      Src: /src/gpac/src/evg/ftgrays.c:167,1
    - Dst: SUBPIXELS
      Src: /src/gpac/src/evg/ftgrays.c:172,1
    - Dst: SUBPIXELS
      Src: /src/gpac/src/evg/ftgrays.c:178,1
    - Dst: gray_set_cell
      Src: /src/gpac/src/evg/ftgrays.c:182,1
    - Dst: gray_set_cell
      Src: /src/gpac/src/evg/ftgrays.c:216,1
    - Dst: gray_set_cell
      Src: /src/gpac/src/evg/ftgrays.c:242,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 72
    argCount: 6
    argNames:
    - surf
    - ey
    - x1
    - y1
    - x2
    - y2
    argTypes:
    - GF_EVGSurface*
    - TCoord
    - TPos
    - TCoord
    - TPos
    - TCoord
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 158
    functionDepth: 2
    functionLinenumber: 158
    functionLinenumberEnd: 248
    functionName: gray_render_scanline
    functionSourceFile: /src/gpac/src/evg/ftgrays.c
    functionUses: 0
    functionsReached:
    - gray_set_cell
    - SUBPIXELS
    - TRUNC
    linkageType: ''
    returnType: void
    signature: void gray_render_scanline(GF_EVGSurface *surf, TCoord ey, TPos x1,
      TCoord y1, TPos x2, TCoord y2)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: TRUNC
      Src: /src/gpac/src/evg/ftgrays.c:264,1
    - Dst: TRUNC
      Src: /src/gpac/src/evg/ftgrays.c:265,1
    - Dst: SUBPIXELS
      Src: /src/gpac/src/evg/ftgrays.c:268,1
    - Dst: gray_render_scanline
      Src: /src/gpac/src/evg/ftgrays.c:284,1
    - Dst: TRUNC
      Src: /src/gpac/src/evg/ftgrays.c:290,1
    - Dst: SUBPIXELS
      Src: /src/gpac/src/evg/ftgrays.c:296,1
    - Dst: gray_set_cell
      Src: /src/gpac/src/evg/ftgrays.c:312,1
    - Dst: gray_set_cell
      Src: /src/gpac/src/evg/ftgrays.c:320,1
    - Dst: gray_render_scanline
      Src: /src/gpac/src/evg/ftgrays.c:346,1
    - Dst: gray_set_cell
      Src: /src/gpac/src/evg/ftgrays.c:349,1
    - Dst: TRUNC
      Src: /src/gpac/src/evg/ftgrays.c:349,1
    - Dst: gray_render_scanline
      Src: /src/gpac/src/evg/ftgrays.c:370,1
    - Dst: gray_set_cell
      Src: /src/gpac/src/evg/ftgrays.c:374,1
    - Dst: TRUNC
      Src: /src/gpac/src/evg/ftgrays.c:374,1
    - Dst: gray_render_scanline
      Src: /src/gpac/src/evg/ftgrays.c:378,1
    - Dst: SUBPIXELS
      Src: /src/gpac/src/evg/ftgrays.c:383,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 103
    argCount: 3
    argNames:
    - surf
    - to_x
    - to_y
    argTypes:
    - GF_EVGSurface*
    - TPos
    - TPos
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 254
    functionDepth: 3
    functionLinenumber: 254
    functionLinenumberEnd: 384
    functionName: gray_render_line
    functionSourceFile: /src/gpac/src/evg/ftgrays.c
    functionUses: 3
    functionsReached:
    - gray_render_scanline
    - gray_set_cell
    - SUBPIXELS
    - TRUNC
    linkageType: ''
    returnType: void
    signature: void gray_render_line(GF_EVGSurface *surf, TPos to_x, TPos to_y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gray_move_to
      Src: /src/gpac/src/evg/ftgrays.c:404,1
    - Dst: evg_translate_point
      Src: /src/gpac/src/evg/ftgrays.c:407,1
    - Dst: gray_render_line
      Src: /src/gpac/src/evg/ftgrays.c:408,1
    - Dst: evg_translate_point
      Src: /src/gpac/src/evg/ftgrays.c:411,1
    - Dst: gray_render_line
      Src: /src/gpac/src/evg/ftgrays.c:412,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 2
    argNames:
    - outline
    - surf
    argTypes:
    - EVG_Outline*
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 388
    functionDepth: 4
    functionLinenumber: 388
    functionLinenumberEnd: 416
    functionName: EVG_Outline_Decompose
    functionSourceFile: /src/gpac/src/evg/ftgrays.c
    functionUses: 0
    functionsReached:
    - gray_move_to
    - gray_render_line
    - evg_translate_point
    linkageType: ''
    returnType: int
    signature: int EVG_Outline_Decompose(EVG_Outline *outline, GF_EVGSurface *surf)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - temp
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 425
      start: 420
    functionDepth: 0
    functionLinenumber: 420
    functionLinenumberEnd: 425
    functionName: SWAP_CELLS
    functionSourceFile: /src/gpac/src/evg/ftgrays.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SWAP_CELLS( a, b, temp )
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: SWAP_CELLS
      Src: /src/gpac/src/evg/ftgrays.c:452,1
    - Dst: SWAP_CELLS
      Src: /src/gpac/src/evg/ftgrays.c:459,1
    - Dst: SWAP_CELLS
      Src: /src/gpac/src/evg/ftgrays.c:462,1
    - Dst: SWAP_CELLS
      Src: /src/gpac/src/evg/ftgrays.c:465,1
    - Dst: SWAP_CELLS
      Src: /src/gpac/src/evg/ftgrays.c:477,1
    - Dst: SWAP_CELLS
      Src: /src/gpac/src/evg/ftgrays.c:480,1
    - Dst: SWAP_CELLS
      Src: /src/gpac/src/evg/ftgrays.c:500,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 54
    argCount: 2
    argNames:
    - cells
    - count
    argTypes:
    - AACell*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 434
    functionDepth: 1
    functionLinenumber: 434
    functionLinenumberEnd: 513
    functionName: gray_quick_sort
    functionSourceFile: /src/gpac/src/evg/ftgrays.c
    functionUses: 0
    functionsReached:
    - SWAP_CELLS
    linkageType: ''
    returnType: void
    signature: void gray_quick_sort( AACell *cells, int    count )
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: EVGRasterCtx*::surf::render_span
      Src: /src/gpac/src/evg/ftgrays.c:584,1
    - Dst: gf_realloc
      Src: /src/gpac/src/evg/ftgrays.c:591,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 59
    argCount: 8
    argNames:
    - raster
    - x
    - y
    - area
    - acount
    - fill_rule
    - idx1
    - idx2
    argTypes:
    - EVGRasterCtx*
    - TCoord
    - TCoord
    - TPos
    - int
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 515
    functionDepth: 0
    functionLinenumber: 515
    functionLinenumberEnd: 605
    functionName: gray_hline
    functionSourceFile: /src/gpac/src/evg/ftgrays.c
    functionUses: 0
    functionsReached:
    - EVGRasterCtx*::surf::render_span
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void gray_hline(EVGRasterCtx *raster, TCoord  x, TCoord  y, TPos area,
      int acount, u32 fill_rule, u32 idx1, u32 idx2)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gray_hline
      Src: /src/gpac/src/evg/ftgrays.c:637,1
    - Dst: gray_hline
      Src: /src/gpac/src/evg/ftgrays.c:644,1
    - Dst: EVGRasterCtx*::surf::render_span
      Src: /src/gpac/src/evg/ftgrays.c:646,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 4
    argNames:
    - raster
    - sl
    - y
    - fill_rule
    argTypes:
    - EVGRasterCtx*
    - AAScanline*
    - int
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 647
      start: 607
    functionDepth: 1
    functionLinenumber: 607
    functionLinenumberEnd: 647
    functionName: gray_sweep_line
    functionSourceFile: /src/gpac/src/evg/ftgrays.c
    functionUses: 0
    functionsReached:
    - EVGRasterCtx*::surf::render_span
    - gray_hline
    linkageType: ''
    returnType: void
    signature: void gray_sweep_line(EVGRasterCtx *raster, AAScanline *sl, int y, u32
      fill_rule)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/evg/ftgrays.c:652,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/evg/ftgrays.c:655,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/evg/ftgrays.c:666,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 1
    argNames:
    - rctx
    argTypes:
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 668
      start: 650
    functionDepth: 0
    functionLinenumber: 650
    functionLinenumberEnd: 668
    functionName: th_fetch_lines
    functionSourceFile: /src/gpac/src/evg/ftgrays.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    linkageType: ''
    returnType: Bool
    signature: Bool th_fetch_lines(EVGRasterCtx *rctx)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_sleep
      Src: /src/gpac/src/evg/ftgrays.c:682,1
    - Dst: gf_sema_wait
      Src: /src/gpac/src/evg/ftgrays.c:685,1
    - Dst: gray_quick_sort
      Src: /src/gpac/src/evg/ftgrays.c:698,1
    - Dst: gray_sweep_line
      Src: /src/gpac/src/evg/ftgrays.c:699,1
    - Dst: th_fetch_lines
      Src: /src/gpac/src/evg/ftgrays.c:711,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/evg/ftgrays.c:714,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/evg/ftgrays.c:722,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 49
    argCount: 1
    argNames:
    - par
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 670
    functionDepth: 2
    functionLinenumber: 670
    functionLinenumberEnd: 729
    functionName: th_sweep_lines
    functionSourceFile: /src/gpac/src/evg/ftgrays.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_sema_wait
    - gray_sweep_line
    - gf_sleep
    - gf_mx_v
    - gray_quick_sort
    - th_fetch_lines
    linkageType: ''
    returnType: u32
    signature: u32 th_sweep_lines(void *par)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/evg/ftgrays.c:855,1
    - Dst: memset
      Src: /src/gpac/src/evg/ftgrays.c:857,1
    - Dst: EVG_Outline_Decompose
      Src: /src/gpac/src/evg/ftgrays.c:867,1
    - Dst: gray_record_cell
      Src: /src/gpac/src/evg/ftgrays.c:868,1
    - Dst: memset
      Src: /src/gpac/src/evg/ftgrays.c:882,1
    - Dst: evg_sweep_lines
      Src: /src/gpac/src/evg/ftgrays.c:885,1
    - Dst: evg_sweep_lines
      Src: /src/gpac/src/evg/ftgrays.c:888,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 38
    argCount: 1
    argNames:
    - surf
    argTypes:
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 890
      start: 839
    functionDepth: 5
    functionLinenumber: 839
    functionLinenumberEnd: 890
    functionName: evg_raster_render
    functionSourceFile: /src/gpac/src/evg/ftgrays.c
    functionUses: 0
    functionsReached:
    - gray_record_cell
    - EVG_Outline_Decompose
    - memset
    - evg_sweep_lines
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_raster_render(GF_EVGSurface *surf)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 36
    functionName: mul255
    functionSourceFile: /src/gpac/src/evg/raster_rgb.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 mul255(s32 a, s32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_rgb.c:54,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_rgb.c:55,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_rgb.c:56,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_rgb.c:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - src
    - dst
    - alpha
    - surf
    argTypes:
    - u32
    - u8*
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 58
    functionName: overmask_rgb
    functionSourceFile: /src/gpac/src/evg/raster_rgb.c
    functionUses: 0
    functionsReached:
    - mul255
    linkageType: ''
    returnType: void
    signature: void overmask_rgb(u32 src, u8 *dst, u32 alpha, GF_EVGSurface *surf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_rgb.c:71,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_rgb.c:72,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_rgb.c:73,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 5
    argNames:
    - src
    - dst
    - dst_pitch_x
    - count
    - surf
    argTypes:
    - u32
    - u8*
    - s32
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 77
    functionName: overmask_rgb_const_run
    functionSourceFile: /src/gpac/src/evg/raster_rgb.c
    functionUses: 0
    functionsReached:
    - mul255
    linkageType: ''
    returnType: void
    signature: void overmask_rgb_const_run(u32 src, u8 *dst, s32 dst_pitch_x, u32
      count, GF_EVGSurface *surf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_rgb.c:82,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_rgb.c:83,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_rgb.c:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - y
    - x
    - col
    - surf
    argTypes:
    - s32
    - s32
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 88
    functionName: evg_rgb_fill_single
    functionSourceFile: /src/gpac/src/evg/raster_rgb.c
    functionUses: 0
    functionsReached:
    - GF_COL_R
    - GF_COL_B
    - GF_COL_G
    linkageType: ''
    returnType: void
    signature: void evg_rgb_fill_single(s32 y, s32 x, u32 col, GF_EVGSurface *surf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: overmask_rgb
      Src: /src/gpac/src/evg/raster_rgb.c:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - y
    - x
    - coverage
    - col
    - surf
    argTypes:
    - s32
    - s32
    - u8
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 94
    functionName: evg_rgb_fill_single_a
    functionSourceFile: /src/gpac/src/evg/raster_rgb.c
    functionUses: 0
    functionsReached:
    - overmask_rgb
    linkageType: ''
    returnType: void
    signature: void evg_rgb_fill_single_a(s32 y, s32 x, u8 coverage, u32 col, GF_EVGSurface
      *surf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_rgb.c:103,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_rgb.c:104,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_rgb.c:105,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_rgb.c:115,1
    - Dst: overmask_rgb_const_run
      Src: /src/gpac/src/evg/raster_rgb.c:117,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 127
    functionName: evg_rgb_fill_const
    functionSourceFile: /src/gpac/src/evg/raster_rgb.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_COL_R
    - mul255
    - overmask_rgb_const_run
    linkageType: ''
    returnType: void
    signature: void evg_rgb_fill_const(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::get_alpha
      Src: /src/gpac/src/evg/raster_rgb.c:142,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_rgb.c:143,1
    - Dst: overmask_rgb_const_run
      Src: /src/gpac/src/evg/raster_rgb.c:145,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_rgb.c:150,1
    - Dst: overmask_rgb_const_run
      Src: /src/gpac/src/evg/raster_rgb.c:152,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 155
    functionName: evg_rgb_fill_const_a
    functionSourceFile: /src/gpac/src/evg/raster_rgb.c
    functionUses: 0
    functionsReached:
    - GF_EVGSurface*::get_alpha
    - mul255
    - overmask_rgb_const_run
    linkageType: ''
    returnType: void
    signature: void evg_rgb_fill_const_a(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::fill_run
      Src: /src/gpac/src/evg/raster_rgb.c:169,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_rgb.c:173,1
    - Dst: overmask_rgb
      Src: /src/gpac/src/evg/raster_rgb.c:176,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_rgb.c:178,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_rgb.c:179,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_rgb.c:180,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 187
    functionName: evg_rgb_fill_var
    functionSourceFile: /src/gpac/src/evg/raster_rgb.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_EVGSurface*::fill_run
    - GF_COL_A
    - overmask_rgb
    - GF_COL_R
    linkageType: ''
    returnType: void
    signature: void evg_rgb_fill_var(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_rgb.c:203,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_rgb.c:204,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_rgb.c:205,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_rgb.c:218,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 3
    argNames:
    - surf
    - rc
    - col
    argTypes:
    - GF_EVGSurface*
    - GF_IRect
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 222
    functionName: evg_surface_clear_rgb
    functionSourceFile: /src/gpac/src/evg/raster_rgb.c
    functionUses: 0
    functionsReached:
    - memcpy
    - GF_COL_R
    - GF_COL_B
    - GF_COL_G
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_surface_clear_rgb(GF_EVGSurface *surf, GF_IRect rc, GF_Color
      col)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_rgb.c:242,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_rgb.c:243,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - src
    - dst
    - alpha
    - grey_type
    argTypes:
    - u32
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 244
    functionName: overmask_grey
    functionSourceFile: /src/gpac/src/evg/raster_rgb.c
    functionUses: 0
    functionsReached:
    - mul255
    linkageType: ''
    returnType: void
    signature: void overmask_grey(u32 src, u8 *dst, u32 alpha, u32 grey_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_rgb.c:250,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - srca
    - srcc
    - dst
    - dst_pitch_x
    - count
    argTypes:
    - u8
    - u8
    - u8*
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 246
    functionDepth: 0
    functionLinenumber: 246
    functionLinenumberEnd: 254
    functionName: overmask_grey_const_run
    functionSourceFile: /src/gpac/src/evg/raster_rgb.c
    functionUses: 0
    functionsReached:
    - mul255
    linkageType: ''
    returnType: void
    signature: void overmask_grey_const_run(u8 srca, u8 srcc, u8 *dst, s32 dst_pitch_x,
      u32 count)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_rgb.c:261,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_rgb.c:262,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_rgb.c:263,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - y
    - x
    - col
    - surf
    argTypes:
    - s32
    - s32
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 265
    functionName: evg_grey_fill_single
    functionSourceFile: /src/gpac/src/evg/raster_rgb.c
    functionUses: 0
    functionsReached:
    - GF_COL_R
    - GF_COL_B
    - GF_COL_G
    linkageType: ''
    returnType: void
    signature: void evg_grey_fill_single(s32 y, s32 x, u32 col, GF_EVGSurface *surf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: overmask_grey
      Src: /src/gpac/src/evg/raster_rgb.c:270,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - y
    - x
    - coverage
    - col
    - surf
    argTypes:
    - s32
    - s32
    - u8
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 271
    functionName: evg_grey_fill_single_a
    functionSourceFile: /src/gpac/src/evg/raster_rgb.c
    functionUses: 0
    functionsReached:
    - overmask_grey
    linkageType: ''
    returnType: void
    signature: void evg_grey_fill_single_a(s32 y, s32 x, u8 coverage, u32 col, GF_EVGSurface
      *surf)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_rgb.c:280,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_rgb.c:281,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_rgb.c:282,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_rgb.c:291,1
    - Dst: overmask_grey_const_run
      Src: /src/gpac/src/evg/raster_rgb.c:292,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 273
    functionDepth: 1
    functionLinenumber: 273
    functionLinenumberEnd: 300
    functionName: evg_grey_fill_const
    functionSourceFile: /src/gpac/src/evg/raster_rgb.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_COL_R
    - mul255
    - overmask_grey_const_run
    linkageType: ''
    returnType: void
    signature: void evg_grey_fill_const(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_rgb.c:309,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_rgb.c:310,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_rgb.c:311,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_rgb.c:313,1
    - Dst: GF_EVGSurface*::get_alpha
      Src: /src/gpac/src/evg/raster_rgb.c:319,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_rgb.c:320,1
    - Dst: overmask_grey_const_run
      Src: /src/gpac/src/evg/raster_rgb.c:321,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_rgb.c:326,1
    - Dst: overmask_grey_const_run
      Src: /src/gpac/src/evg/raster_rgb.c:327,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 302
    functionDepth: 1
    functionLinenumber: 302
    functionLinenumberEnd: 330
    functionName: evg_grey_fill_const_a
    functionSourceFile: /src/gpac/src/evg/raster_rgb.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_EVGSurface*::get_alpha
    - GF_COL_A
    - GF_COL_R
    - mul255
    - overmask_grey_const_run
    linkageType: ''
    returnType: void
    signature: void evg_grey_fill_const_a(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::fill_run
      Src: /src/gpac/src/evg/raster_rgb.c:344,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_rgb.c:348,1
    - Dst: overmask_grey
      Src: /src/gpac/src/evg/raster_rgb.c:351,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_rgb.c:355,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_rgb.c:356,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_rgb.c:357,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 333
    functionDepth: 1
    functionLinenumber: 333
    functionLinenumberEnd: 366
    functionName: evg_grey_fill_var
    functionSourceFile: /src/gpac/src/evg/raster_rgb.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_EVGSurface*::fill_run
    - GF_COL_A
    - GF_COL_R
    - overmask_grey
    linkageType: ''
    returnType: void
    signature: void evg_grey_fill_var(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_rgb.c:380,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_rgb.c:381,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_rgb.c:382,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_rgb.c:386,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - surf
    - rc
    - col
    argTypes:
    - GF_EVGSurface*
    - GF_IRect
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 368
    functionDepth: 1
    functionLinenumber: 368
    functionLinenumberEnd: 389
    functionName: evg_surface_clear_grey
    functionSourceFile: /src/gpac/src/evg/raster_rgb.c
    functionUses: 0
    functionsReached:
    - GF_COL_R
    - memset
    - GF_COL_B
    - GF_COL_G
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_surface_clear_grey(GF_EVGSurface *surf, GF_IRect rc, GF_Color
      col)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/evg/surface.c:34,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/evg/surface.c:36,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/evg/surface.c:37,1
    - Dst: INT2FIX
      Src: /src/gpac/src/evg/surface.c:37,1
    - Dst: INT2FIX
      Src: /src/gpac/src/evg/surface.c:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - surf
    - mat
    argTypes:
    - GF_EVGSurface*
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 39
    functionName: get_surface_world_matrix
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_init
    - INT2FIX
    - gf_mx2d_add_translation
    - gf_mx2d_add_scale
    linkageType: ''
    returnType: void
    signature: void get_surface_world_matrix(GF_EVGSurface *surf, GF_Matrix2D *mat)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/evg/surface.c:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - raster_ctx
    - surf
    argTypes:
    - EVGRasterCtx*
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 49
    functionName: evg_raster_ctx_init
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_raster_ctx_init(EVGRasterCtx *raster_ctx, GF_EVGSurface
      *surf)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/evg/surface.c:53,1
    - Dst: gf_free
      Src: /src/gpac/src/evg/surface.c:54,1
    - Dst: gf_free
      Src: /src/gpac/src/evg/surface.c:55,1
    - Dst: gf_free
      Src: /src/gpac/src/evg/surface.c:56,1
    - Dst: gf_free
      Src: /src/gpac/src/evg/surface.c:57,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - raster_ctx
    argTypes:
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 58
    functionName: evg_raster_ctx_uninit
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void evg_raster_ctx_uninit(EVGRasterCtx *raster_ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/evg/surface.c:65,1
    - Dst: evg_raster_ctx_init
      Src: /src/gpac/src/evg/surface.c:71,1
    - Dst: gf_free
      Src: /src/gpac/src/evg/surface.c:73,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 77
    functionName: GF_EVGSurface *gf_evg_surface_new(Bool center_coords)
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - evg_raster_ctx_init
    - gf_free
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_EVGSurface *gf_evg_surface_new(Bool center_coords)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: evg_init_3d_surface
      Src: /src/gpac/src/evg/surface.c:86,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - surf
    argTypes:
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 89
    functionName: gf_evg_surface_enable_3d
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - evg_init_3d_surface
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_surface_enable_3d(GF_EVGSurface *surf)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/evg/surface.c:99,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/src/evg/surface.c:103,1
    - Dst: gf_malloc
      Src: /src/gpac/src/evg/surface.c:109,1
    - Dst: sprintf
      Src: /src/gpac/src/evg/surface.c:110,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/evg/surface.c:111,1
    - Dst: memset
      Src: /src/gpac/src/evg/surface.c:121,1
    - Dst: sprintf
      Src: /src/gpac/src/evg/surface.c:124,1
    - Dst: gf_th_new
      Src: /src/gpac/src/evg/surface.c:125,1
    - Dst: gf_malloc
      Src: /src/gpac/src/evg/surface.c:132,1
    - Dst: gf_realloc
      Src: /src/gpac/src/evg/surface.c:135,1
    - Dst: gf_sema_new
      Src: /src/gpac/src/evg/surface.c:144,1
    - Dst: gf_th_run
      Src: /src/gpac/src/evg/surface.c:151,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 53
    argCount: 2
    argNames:
    - surf
    - nb_threads
    argTypes:
    - GF_EVGSurface*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 155
    functionName: gf_evg_enable_threading
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - gf_sys_get_rti
    - gf_th_run
    - gf_th_new
    - sprintf
    - memset
    - gf_sema_new
    - gf_opts_get_bool
    - gf_mx_new
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_enable_threading(GF_EVGSurface *surf, s32 nb_threads)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - surf
    - center_coords
    argTypes:
    - GF_EVGSurface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 162
    functionName: gf_evg_surface_set_center_coords
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_surface_set_center_coords(GF_EVGSurface *surf, Bool
      center_coords)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/evg/surface.c:172,1
    - Dst: gf_free
      Src: /src/gpac/src/evg/surface.c:174,1
    - Dst: gf_free
      Src: /src/gpac/src/evg/surface.c:176,1
    - Dst: gf_free
      Src: /src/gpac/src/evg/surface.c:178,1
    - Dst: evg_raster_ctx_uninit
      Src: /src/gpac/src/evg/surface.c:180,1
    - Dst: gf_free
      Src: /src/gpac/src/evg/surface.c:183,1
    - Dst: gf_sema_notify
      Src: /src/gpac/src/evg/surface.c:191,1
    - Dst: gf_sleep
      Src: /src/gpac/src/evg/surface.c:197,1
    - Dst: gf_th_del
      Src: /src/gpac/src/evg/surface.c:199,1
    - Dst: evg_raster_ctx_uninit
      Src: /src/gpac/src/evg/surface.c:200,1
    - Dst: gf_free
      Src: /src/gpac/src/evg/surface.c:202,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/evg/surface.c:203,1
    - Dst: gf_sema_del
      Src: /src/gpac/src/evg/surface.c:204,1
    - Dst: gf_free
      Src: /src/gpac/src/evg/surface.c:207,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 1
    argNames:
    - surf
    argTypes:
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 208
    functionName: gf_evg_surface_delete
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - gf_free
    - evg_raster_ctx_uninit
    - gf_sema_notify
    - gf_sleep
    - gf_sema_del
    - gf_th_del
    - gf_mx_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_surface_delete(GF_EVGSurface *surf)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: get_surface_world_matrix
      Src: /src/gpac/src/evg/surface.c:215,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/evg/surface.c:218,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/evg/surface.c:221,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/evg/surface.c:222,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/evg/surface.c:223,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/evg/surface.c:224,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/evg/surface.c:225,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - surf
    - mat
    argTypes:
    - GF_EVGSurface*
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 210
    functionDepth: 2
    functionLinenumber: 210
    functionLinenumberEnd: 228
    functionName: gf_evg_surface_set_matrix
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_add_matrix
    - get_surface_world_matrix
    - gf_mx2d_init
    - gf_mx2d_copy
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_surface_set_matrix(GF_EVGSurface *surf, GF_Matrix2D
      *mat)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: get_surface_world_matrix
      Src: /src/gpac/src/evg/surface.c:234,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/evg/surface.c:237,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - surf
    - mat
    argTypes:
    - GF_EVGSurface*
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 230
    functionDepth: 2
    functionLinenumber: 230
    functionLinenumberEnd: 240
    functionName: gf_evg_surface_set_matrix_3d
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - get_surface_world_matrix
    - gf_mx_copy
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_surface_set_matrix_3d(GF_EVGSurface *surf, GF_Matrix
      *mat)
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 108
    argCount: 1
    argNames:
    - surf
    argTypes:
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 351
    functionName: evg_surface_set_components_idx
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void evg_surface_set_components_idx(GF_EVGSurface *surf)
  - BBCount: 64
    BranchProfiles: []
    Callsites:
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/evg/surface.c:435,1
    - Dst: gf_realloc
      Src: /src/gpac/src/evg/surface.c:443,1
    - Dst: gf_realloc
      Src: /src/gpac/src/evg/surface.c:447,1
    - Dst: gf_realloc
      Src: /src/gpac/src/evg/surface.c:451,1
    - Dst: gf_realloc
      Src: /src/gpac/src/evg/surface.c:459,1
    - Dst: gf_realloc
      Src: /src/gpac/src/evg/surface.c:463,1
    - Dst: gf_realloc
      Src: /src/gpac/src/evg/surface.c:467,1
    - Dst: evg_surface_set_components_idx
      Src: /src/gpac/src/evg/surface.c:484,1
    - Dst: gf_evg_surface_set_matrix
      Src: /src/gpac/src/evg/surface.c:485,1
    - Dst: gf_free
      Src: /src/gpac/src/evg/surface.c:488,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 143
    argCount: 8
    argNames:
    - surf
    - pixels
    - width
    - height
    - pitch_x
    - pitch_y
    - pixelFormat
    - probe_only
    argTypes:
    - GF_EVGSurface*
    - u8*
    - u32
    - u32
    - s32
    - s32
    - GF_PixelFormat
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 353
    functionDepth: 3
    functionLinenumber: 353
    functionLinenumberEnd: 502
    functionName: gf_evg_surface_attach_to_buffer_internal
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_evg_surface_set_matrix
    - evg_surface_set_components_idx
    - gf_pixel_get_size_info
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_surface_attach_to_buffer_internal(GF_EVGSurface *surf,
      u8 *pixels, u32 width, u32 height, s32 pitch_x, s32 pitch_y, GF_PixelFormat
      pixelFormat, Bool probe_only)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_surface_attach_to_buffer_internal
      Src: /src/gpac/src/evg/surface.c:507,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - surf
    - pixels
    - width
    - height
    - pitch_x
    - pitch_y
    - pixelFormat
    argTypes:
    - GF_EVGSurface*
    - u8*
    - u32
    - u32
    - s32
    - s32
    - GF_PixelFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 504
    functionDepth: 4
    functionLinenumber: 504
    functionLinenumberEnd: 508
    functionName: gf_evg_surface_attach_to_buffer
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - gf_evg_surface_attach_to_buffer_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_surface_attach_to_buffer(GF_EVGSurface *surf, u8 *pixels,
      u32 width, u32 height, s32 pitch_x, s32 pitch_y, GF_PixelFormat pixelFormat)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_surface_attach_to_buffer_internal
      Src: /src/gpac/src/evg/surface.c:516,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - surf
    - sten
    argTypes:
    - GF_EVGSurface*
    - GF_EVGStencil*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 510
    functionDepth: 4
    functionLinenumber: 510
    functionLinenumberEnd: 517
    functionName: gf_evg_surface_attach_to_texture
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - gf_evg_surface_attach_to_buffer_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_surface_attach_to_texture(GF_EVGSurface *surf, GF_EVGStencil
      * sten)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_surface_attach_to_buffer_internal
      Src: /src/gpac/src/evg/surface.c:522,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - pixelFormat
    argTypes:
    - GF_PixelFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 519
    functionDepth: 4
    functionLinenumber: 519
    functionLinenumberEnd: 525
    functionName: gf_evg_surface_format_ok
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - gf_evg_surface_attach_to_buffer_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_surface_format_ok(GF_PixelFormat pixelFormat)
  - BBCount: 51
    BranchProfiles: []
    Callsites:
    - Dst: evg_surface_clear_grey
      Src: /src/gpac/src/evg/surface.c:584,1
    - Dst: evg_surface_clear_alphagrey
      Src: /src/gpac/src/evg/surface.c:587,1
    - Dst: evg_surface_clear_argb
      Src: /src/gpac/src/evg/surface.c:592,1
    - Dst: evg_surface_clear_rgbx
      Src: /src/gpac/src/evg/surface.c:598,1
    - Dst: evg_surface_clear_rgb
      Src: /src/gpac/src/evg/surface.c:602,1
    - Dst: evg_surface_clear_444
      Src: /src/gpac/src/evg/surface.c:604,1
    - Dst: evg_surface_clear_555
      Src: /src/gpac/src/evg/surface.c:606,1
    - Dst: evg_surface_clear_565
      Src: /src/gpac/src/evg/surface.c:608,1
    - Dst: evg_surface_clear_332
      Src: /src/gpac/src/evg/surface.c:610,1
    - Dst: evg_surface_clear_yuv420p
      Src: /src/gpac/src/evg/surface.c:615,1
    - Dst: evg_surface_clear_yuv422p
      Src: /src/gpac/src/evg/surface.c:617,1
    - Dst: evg_surface_clear_nv12
      Src: /src/gpac/src/evg/surface.c:619,1
    - Dst: evg_surface_clear_nv12
      Src: /src/gpac/src/evg/surface.c:621,1
    - Dst: evg_surface_clear_yuv444p
      Src: /src/gpac/src/evg/surface.c:623,1
    - Dst: evg_surface_clear_yuyv
      Src: /src/gpac/src/evg/surface.c:628,1
    - Dst: evg_surface_clear_yuv420p_10
      Src: /src/gpac/src/evg/surface.c:630,1
    - Dst: evg_surface_clear_nv12_10
      Src: /src/gpac/src/evg/surface.c:632,1
    - Dst: evg_surface_clear_nv12_10
      Src: /src/gpac/src/evg/surface.c:634,1
    - Dst: evg_surface_clear_yuv422p_10
      Src: /src/gpac/src/evg/surface.c:636,1
    - Dst: evg_surface_clear_yuv444p_10
      Src: /src/gpac/src/evg/surface.c:638,1
    - Dst: evg_surface_clear_argb
      Src: /src/gpac/src/evg/surface.c:642,1
    - Dst: gf_evg_argb_to_ayuv
      Src: /src/gpac/src/evg/surface.c:642,1
    - Dst: evg_surface_clear_rgb
      Src: /src/gpac/src/evg/surface.c:646,1
    - Dst: gf_evg_argb_to_ayuv
      Src: /src/gpac/src/evg/surface.c:646,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 108
    argCount: 3
    argNames:
    - surf
    - rc
    - color
    argTypes:
    - GF_EVGSurface*
    - GF_IRect*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 650
      start: 527
    functionDepth: 2
    functionLinenumber: 527
    functionLinenumberEnd: 650
    functionName: gf_evg_surface_clear
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - evg_surface_clear_nv12
    - evg_surface_clear_rgb
    - evg_surface_clear_332
    - evg_surface_clear_rgbx
    - evg_surface_clear_alphagrey
    - evg_surface_clear_444
    - evg_surface_clear_565
    - evg_surface_clear_argb
    - evg_surface_clear_nv12_10
    - evg_surface_clear_yuyv
    - evg_surface_clear_grey
    - evg_surface_clear_yuv422p
    - evg_surface_clear_yuv444p
    - evg_surface_clear_yuv444p_10
    - evg_surface_clear_yuv420p_10
    - evg_surface_clear_yuv420p
    - evg_surface_clear_yuv422p_10
    - evg_surface_clear_555
    - gf_evg_argb_to_ayuv
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_surface_clear(GF_EVGSurface *surf, GF_IRect *rc, u32
      color)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - surf
    - RasterSetting
    argTypes:
    - GF_EVGSurface*
    - GF_RasterQuality
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 652
    functionDepth: 0
    functionLinenumber: 652
    functionLinenumberEnd: 658
    functionName: gf_evg_surface_set_raster_level
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_surface_set_raster_level(GF_EVGSurface *surf, GF_RasterQuality
      RasterSetting)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - surf
    argTypes:
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 659
    functionDepth: 0
    functionLinenumber: 659
    functionLinenumberEnd: 664
    functionName: GF_RasterQuality::gf_evg_surface_get_raster_level
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_RasterQuality gf_evg_surface_get_raster_level(GF_EVGSurface
      *surf)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - surf
    argTypes:
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 672
      start: 666
    functionDepth: 0
    functionLinenumber: 666
    functionLinenumberEnd: 672
    functionName: gf_evg_surface_force_aa
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_surface_force_aa(GF_EVGSurface *surf)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 2
    argNames:
    - surf
    - rc
    argTypes:
    - GF_EVGSurface*
    - GF_IRect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 710
      start: 675
    functionDepth: 0
    functionLinenumber: 675
    functionLinenumberEnd: 710
    functionName: gf_evg_surface_set_clipper
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_surface_set_clipper(GF_EVGSurface *surf , GF_IRect
      *rc)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - surf
    argTypes:
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 717
      start: 712
    functionDepth: 0
    functionLinenumber: 712
    functionLinenumberEnd: 717
    functionName: gf_evg_surface_use_clipper
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_surface_use_clipper(GF_EVGSurface *surf)
  - BBCount: 108
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/surface.c:733,1
    - Dst: evg_col_to_wide
      Src: /src/gpac/src/evg/surface.c:737,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/surface.c:738,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/surface.c:761,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/surface.c:765,1
    - Dst: gf_realloc
      Src: /src/gpac/src/evg/surface.c:1137,1
    - Dst: gf_realloc
      Src: /src/gpac/src/evg/surface.c:1142,1
    - Dst: memset
      Src: /src/gpac/src/evg/surface.c:1147,1
    - Dst: memset
      Src: /src/gpac/src/evg/surface.c:1151,1
    - Dst: gf_evg_rgb_to_yuv
      Src: /src/gpac/src/evg/surface.c:1162,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/surface.c:1170,1
    - Dst: evg_col_to_wide
      Src: /src/gpac/src/evg/surface.c:1171,1
    CyclomaticComplexity: 106
    EdgeCount: 106
    ICount: 411
    argCount: 3
    argNames:
    - surf
    - for_3d
    - multi_sten
    argTypes:
    - GF_EVGSurface*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1175
      start: 719
    functionDepth: 2
    functionLinenumber: 719
    functionLinenumberEnd: 1175
    functionName: setup_grey_callback
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - evg_col_to_wide
    - GF_COL_A
    - GF_COL_ARGB
    - memset
    - gf_evg_rgb_to_yuv
    - gf_realloc
    linkageType: ''
    returnType: Bool
    signature: Bool setup_grey_callback(GF_EVGSurface *surf, Bool for_3d, Bool multi_sten)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_flatten
      Src: /src/gpac/src/evg/surface.c:1188,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/evg/surface.c:1196,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - surf
    - gp
    argTypes:
    - GF_EVGSurface*
    - GF_Path*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1210
      start: 1178
    functionDepth: 1
    functionLinenumber: 1178
    functionLinenumberEnd: 1210
    functionName: gf_evg_surface_set_path
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 1
    functionsReached:
    - gf_path_get_bounds
    - gf_path_flatten
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_surface_set_path(GF_EVGSurface *surf, GF_Path *gp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evg_get_fragment
      Src: /src/gpac/src/evg/surface.c:1217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - rctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1220
      start: 1212
    functionDepth: 2
    functionLinenumber: 1212
    functionLinenumberEnd: 1220
    functionName: shader_get_pix
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - evg_get_fragment
    linkageType: ''
    returnType: u32
    signature: u32 shader_get_pix(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *rctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evg_get_fragment
      Src: /src/gpac/src/evg/surface.c:1227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - _this
    - x
    - y
    - rctx
    argTypes:
    - EVG_Texture*
    - u32
    - u32
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1230
      start: 1222
    functionDepth: 2
    functionLinenumber: 1222
    functionLinenumberEnd: 1230
    functionName: shader_get_pix_wide
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - evg_get_fragment
    linkageType: ''
    returnType: u64
    signature: u64 shader_get_pix_wide(EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx
      *rctx)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/evg/surface.c:1245,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/evg/surface.c:1246,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/evg/surface.c:1247,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/evg/surface.c:1255,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/evg/surface.c:1259,1
    - Dst: gf_mx2d_inverse
      Src: /src/gpac/src/evg/surface.c:1260,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/evg/surface.c:1262,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/evg/surface.c:1263,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/evg/surface.c:1276,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/evg/surface.c:1278,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/evg/surface.c:1283,1
    - Dst: gf_mx2d_inverse
      Src: /src/gpac/src/evg/surface.c:1290,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/evg/surface.c:1293,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/evg/surface.c:1294,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/evg/surface.c:1297,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/evg/surface.c:1301,1
    - Dst: gf_mx2d_inverse
      Src: /src/gpac/src/evg/surface.c:1302,1
    - Dst: evg_texture_init
      Src: /src/gpac/src/evg/surface.c:1309,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/evg/surface.c:1319,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/evg/surface.c:1323,1
    - Dst: gf_divfix
      Src: /src/gpac/src/evg/surface.c:1323,1
    - Dst: gf_divfix
      Src: /src/gpac/src/evg/surface.c:1323,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/evg/surface.c:1324,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/evg/surface.c:1325,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/evg/surface.c:1327,1
    - Dst: gf_mx2d_inverse
      Src: /src/gpac/src/evg/surface.c:1333,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/evg/surface.c:1335,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/evg/surface.c:1336,1
    - Dst: INT2FIX
      Src: /src/gpac/src/evg/surface.c:1336,1
    - Dst: INT2FIX
      Src: /src/gpac/src/evg/surface.c:1336,1
    - Dst: evg_gradient_precompute
      Src: /src/gpac/src/evg/surface.c:1339,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/evg/surface.c:1345,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/evg/surface.c:1349,1
    - Dst: gf_divfix
      Src: /src/gpac/src/evg/surface.c:1349,1
    - Dst: gf_divfix
      Src: /src/gpac/src/evg/surface.c:1349,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/evg/surface.c:1350,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/evg/surface.c:1351,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/evg/surface.c:1353,1
    - Dst: gf_mx2d_inverse
      Src: /src/gpac/src/evg/surface.c:1359,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/evg/surface.c:1360,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/evg/surface.c:1361,1
    - Dst: gf_invfix
      Src: /src/gpac/src/evg/surface.c:1361,1
    - Dst: gf_invfix
      Src: /src/gpac/src/evg/surface.c:1361,1
    - Dst: gf_divfix
      Src: /src/gpac/src/evg/surface.c:1363,1
    - Dst: gf_divfix
      Src: /src/gpac/src/evg/surface.c:1364,1
    - Dst: evg_radial_init
      Src: /src/gpac/src/evg/surface.c:1367,1
    - Dst: evg_gradient_precompute
      Src: /src/gpac/src/evg/surface.c:1368,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/surface.c:1376,1
    - Dst: gf_evg_argb_to_ayuv
      Src: /src/gpac/src/evg/surface.c:1380,1
    - Dst: evg_col_to_wide
      Src: /src/gpac/src/evg/surface.c:1385,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 116
    argCount: 3
    argNames:
    - surf
    - sten
    - mat
    argTypes:
    - GF_EVGSurface*
    - GF_EVGStencil*
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1388
      start: 1232
    functionDepth: 3
    functionLinenumber: 1232
    functionLinenumberEnd: 1388
    functionName: gf_evg_setup_stencil
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_add_matrix
    - gf_mx2d_add_translation
    - INT2FIX
    - evg_col_to_wide
    - GF_COL_A
    - gf_mx2d_apply_rect
    - gf_divfix
    - evg_gradient_precompute
    - gf_mx2d_init
    - gf_mx2d_inverse
    - gf_mx2d_add_scale
    - evg_texture_init
    - evg_radial_init
    - gf_invfix
    - gf_mx2d_copy
    - gf_evg_argb_to_ayuv
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_setup_stencil(GF_EVGSurface *surf, GF_EVGStencil *sten,
      GF_Matrix2D *mat)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/evg/surface.c:1394,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - surf
    - sten
    argTypes:
    - GF_EVGSurface*
    - GF_EVGStencil*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1396
      start: 1390
    functionDepth: 1
    functionLinenumber: 1390
    functionLinenumberEnd: 1396
    functionName: gf_evg_restore_stencil
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_copy
    linkageType: ''
    returnType: void
    signature: void gf_evg_restore_stencil(GF_EVGSurface *surf, GF_EVGStencil *sten)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: setup_grey_callback
      Src: /src/gpac/src/evg/surface.c:1411,1
    - Dst: get_surface_world_matrix
      Src: /src/gpac/src/evg/surface.c:1413,1
    - Dst: gf_evg_setup_stencil
      Src: /src/gpac/src/evg/surface.c:1423,1
    - Dst: gf_evg_setup_multi_texture
      Src: /src/gpac/src/evg/surface.c:1427,1
    - Dst: gf_evg_setup_stencil
      Src: /src/gpac/src/evg/surface.c:1430,1
    - Dst: gf_evg_setup_stencil
      Src: /src/gpac/src/evg/surface.c:1434,1
    - Dst: evg_raster_render_path_3d
      Src: /src/gpac/src/evg/surface.c:1477,1
    - Dst: evg_raster_render
      Src: /src/gpac/src/evg/surface.c:1479,1
    - Dst: evg_raster_render_path_3d
      Src: /src/gpac/src/evg/surface.c:1487,1
    - Dst: evg_raster_render
      Src: /src/gpac/src/evg/surface.c:1489,1
    - Dst: gf_evg_restore_stencil
      Src: /src/gpac/src/evg/surface.c:1496,1
    - Dst: gf_evg_restore_stencil
      Src: /src/gpac/src/evg/surface.c:1497,1
    - Dst: gf_evg_restore_stencil
      Src: /src/gpac/src/evg/surface.c:1498,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 83
    argCount: 6
    argNames:
    - surf
    - operand
    - sten1
    - sten2
    - sten3
    - params
    argTypes:
    - GF_EVGSurface*
    - GF_EVGMultiTextureMode
    - GF_EVGStencil*
    - GF_EVGStencil*
    - GF_EVGStencil*
    - Float[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1501
      start: 1398
    functionDepth: 6
    functionLinenumber: 1398
    functionLinenumberEnd: 1501
    functionName: gf_evg_surface_multi_fill
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - gf_evg_setup_multi_texture
    - gf_evg_restore_stencil
    - evg_raster_render_path_3d
    - setup_grey_callback
    - get_surface_world_matrix
    - gf_evg_setup_stencil
    - evg_raster_render
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_surface_multi_fill(GF_EVGSurface *surf, GF_EVGMultiTextureMode
      operand, GF_EVGStencil *sten1, GF_EVGStencil *sten2, GF_EVGStencil *sten3, Float
      params[4])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_surface_multi_fill
      Src: /src/gpac/src/evg/surface.c:1506,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - surf
    - sten
    argTypes:
    - GF_EVGSurface*
    - GF_EVGStencil*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1507
      start: 1503
    functionDepth: 7
    functionLinenumber: 1503
    functionLinenumberEnd: 1507
    functionName: gf_evg_surface_fill
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - gf_evg_surface_multi_fill
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_evg_surface_fill(GF_EVGSurface *surf, GF_EVGStencil *sten)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - surf
    - comp_mode
    argTypes:
    - GF_EVGSurface*
    - GF_EVGCompositeMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1512
      start: 1509
    functionDepth: 0
    functionLinenumber: 1509
    functionLinenumberEnd: 1512
    functionName: gf_evg_surface_set_composite_mode
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_evg_surface_set_composite_mode(GF_EVGSurface *surf, GF_EVGCompositeMode
      comp_mode)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - surf
    - cbk
    argTypes:
    - GF_EVGSurface*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1520
      start: 1514
    functionDepth: 0
    functionLinenumber: 1514
    functionLinenumberEnd: 1520
    functionName: gf_evg_surface_set_alpha_callback
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_evg_surface_set_alpha_callback(GF_EVGSurface *surf, u8 (*get_alpha)(void
      *udta, u8 src_alpha, s32 x, s32 y), void *cbk)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_copy
      Src: /src/gpac/src/evg/surface.c:1525,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - surf
    - mx
    argTypes:
    - GF_EVGSurface*
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1527
      start: 1522
    functionDepth: 1
    functionLinenumber: 1522
    functionLinenumberEnd: 1527
    functionName: gf_evg_surface_set_projection
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - gf_mx_copy
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_surface_set_projection(GF_EVGSurface *surf, GF_Matrix
      *mx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_copy
      Src: /src/gpac/src/evg/surface.c:1531,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - surf
    - mx
    argTypes:
    - GF_EVGSurface*
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1533
      start: 1528
    functionDepth: 1
    functionLinenumber: 1528
    functionLinenumberEnd: 1533
    functionName: gf_evg_surface_set_modelview
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - gf_mx_copy
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_surface_set_modelview(GF_EVGSurface *surf, GF_Matrix
      *mx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: setup_grey_callback
      Src: /src/gpac/src/evg/surface.c:1544,1
    - Dst: evg_raster_render3d
      Src: /src/gpac/src/evg/surface.c:1565,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 7
    argNames:
    - surf
    - indices
    - nb_idx
    - vertices
    - nb_vertices
    - nb_comp
    - prim_type
    argTypes:
    - GF_EVGSurface*
    - u32*
    - u32
    - Float*
    - u32
    - u32
    - GF_EVGPrimitiveType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1568
      start: 1537
    functionDepth: 3
    functionLinenumber: 1537
    functionLinenumberEnd: 1568
    functionName: gf_evg_surface_draw_array
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - setup_grey_callback
    - evg_raster_render3d
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_surface_draw_array(GF_EVGSurface *surf, u32 *indices,
      u32 nb_idx, Float *vertices, u32 nb_vertices, u32 nb_comp, GF_EVGPrimitiveType
      prim_type)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: setup_grey_callback
      Src: /src/gpac/src/evg/surface.c:1579,1
    - Dst: evg_raster_render3d_path
      Src: /src/gpac/src/evg/surface.c:1600,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 3
    argNames:
    - surf
    - path
    - z
    argTypes:
    - GF_EVGSurface*
    - GF_Path*
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1603
      start: 1572
    functionDepth: 3
    functionLinenumber: 1572
    functionLinenumberEnd: 1603
    functionName: gf_evg_surface_draw_path
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - setup_grey_callback
    - evg_raster_render3d_path
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_surface_draw_path(GF_EVGSurface *surf, GF_Path *path,
      Float z)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/evg/surface.c:1617,1
    - Dst: memset
      Src: /src/gpac/src/evg/surface.c:1632,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 2
    argNames:
    - surf
    - mask_mode
    argTypes:
    - GF_EVGSurface*
    - GF_EVGMaskMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1637
      start: 1606
    functionDepth: 0
    functionLinenumber: 1606
    functionLinenumberEnd: 1637
    functionName: gf_evg_surface_set_mask_mode
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_surface_set_mask_mode(GF_EVGSurface *surf, GF_EVGMaskMode
      mask_mode)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - surf
    argTypes:
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1643
      start: 1639
    functionDepth: 0
    functionLinenumber: 1639
    functionLinenumberEnd: 1643
    functionName: gf_evg_surface_get_mask_mode
    functionSourceFile: /src/gpac/src/evg/surface.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EVGMaskMode
    signature: GF_EVGMaskMode gf_evg_surface_get_mask_mode(GF_EVGSurface *surf)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionName: mul255
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE mul255(s32 a, s32 b)
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 65
    argCount: 3
    argNames:
    - comp_mode
    - srca
    - dsta
    argTypes:
    - GF_EVGCompositeMode
    - s32*
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 86
    functionName: do_composite_mode
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 do_composite_mode(GF_EVGCompositeMode comp_mode, s32 *srca, s32
      *dsta)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_argb.c:91,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_argb.c:92,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_argb.c:93,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_argb.c:94,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:97,1
    - Dst: do_composite_mode
      Src: /src/gpac/src/evg/raster_argb.c:99,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:142,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 49
    argCount: 4
    argNames:
    - src
    - dst
    - alpha
    - surf
    argTypes:
    - u32
    - u8*
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 162
    functionName: overmask_argb
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_COL_A
    - GF_COL_R
    - do_composite_mode
    - mul255
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE overmask_argb(u32 src, u8 *dst, u32 alpha, GF_EVGSurface *surf)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_argb.c:166,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_argb.c:167,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_argb.c:168,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_argb.c:169,1
    - Dst: do_composite_mode
      Src: /src/gpac/src/evg/raster_argb.c:175,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:190,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 5
    argNames:
    - src
    - dst
    - dst_pitch_x
    - count
    - surf
    argTypes:
    - u32
    - u8*
    - s32
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 213
    functionName: overmask_argb_const_run
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_COL_A
    - GF_COL_R
    - do_composite_mode
    - mul255
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE overmask_argb_const_run(u32 src, u8 *dst, s32 dst_pitch_x,
      u32 count, GF_EVGSurface *surf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: overmask_argb
      Src: /src/gpac/src/evg/raster_argb.c:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - y
    - x
    - col
    - surf
    argTypes:
    - s32
    - s32
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 215
    functionDepth: 2
    functionLinenumber: 215
    functionLinenumberEnd: 219
    functionName: evg_argb_fill_single
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - overmask_argb
    linkageType: ''
    returnType: void
    signature: void evg_argb_fill_single(s32 y, s32 x, u32 col, GF_EVGSurface *surf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: overmask_argb
      Src: /src/gpac/src/evg/raster_argb.c:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - y
    - x
    - coverage
    - col
    - surf
    argTypes:
    - s32
    - s32
    - u8
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 221
    functionDepth: 2
    functionLinenumber: 221
    functionLinenumberEnd: 225
    functionName: evg_argb_fill_single_a
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - overmask_argb
    linkageType: ''
    returnType: void
    signature: void evg_argb_fill_single_a(s32 y, s32 x, u8 coverage, u32 col, GF_EVGSurface
      *surf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: overmask_argb_const_run
      Src: /src/gpac/src/evg/raster_argb.c:247,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 228
    functionDepth: 2
    functionLinenumber: 228
    functionLinenumberEnd: 249
    functionName: evg_argb_fill_const
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - overmask_argb_const_run
    linkageType: ''
    returnType: void
    signature: void evg_argb_fill_const(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_argb.c:257,1
    - Dst: GF_EVGSurface*::get_alpha
      Src: /src/gpac/src/evg/raster_argb.c:264,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:265,1
    - Dst: overmask_argb_const_run
      Src: /src/gpac/src/evg/raster_argb.c:267,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:272,1
    - Dst: overmask_argb_const_run
      Src: /src/gpac/src/evg/raster_argb.c:274,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 251
    functionDepth: 2
    functionLinenumber: 251
    functionLinenumberEnd: 277
    functionName: evg_argb_fill_const_a
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - overmask_argb_const_run
    - GF_EVGSurface*::get_alpha
    - GF_COL_A
    - mul255
    linkageType: ''
    returnType: void
    signature: void evg_argb_fill_const_a(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::fill_run
      Src: /src/gpac/src/evg/raster_argb.c:291,1
    - Dst: overmask_argb
      Src: /src/gpac/src/evg/raster_argb.c:295,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 279
    functionDepth: 2
    functionLinenumber: 279
    functionLinenumberEnd: 300
    functionName: evg_argb_fill_var
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - GF_EVGSurface*::fill_run
    - overmask_argb
    linkageType: ''
    returnType: void
    signature: void evg_argb_fill_var(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 321
    functionName: evg_argb_fill_erase
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void evg_argb_fill_erase(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_argb.c:343,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_argb.c:344,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_argb.c:345,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_argb.c:346,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_argb.c:361,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 32
    argCount: 3
    argNames:
    - surf
    - rc
    - col
    argTypes:
    - GF_EVGSurface*
    - GF_IRect
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 323
    functionDepth: 1
    functionLinenumber: 323
    functionLinenumberEnd: 365
    functionName: evg_surface_clear_argb
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 1
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_COL_A
    - memcpy
    - GF_COL_R
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_surface_clear_argb(GF_EVGSurface *surf, GF_IRect rc, GF_Color
      col)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:382,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:383,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:384,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:385,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - src
    - dst
    - alpha
    - surf
    argTypes:
    - u32
    - u8*
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 386
    functionName: overmask_rgbx
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - mul255
    linkageType: ''
    returnType: void
    signature: void overmask_rgbx(u32 src, u8 *dst, u32 alpha, GF_EVGSurface *surf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:391,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:392,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:393,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:397,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:399,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:401,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 5
    argNames:
    - src
    - dst
    - dst_pitch_x
    - count
    - surf
    argTypes:
    - u32
    - u8*
    - s32
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 388
    functionDepth: 0
    functionLinenumber: 388
    functionLinenumberEnd: 405
    functionName: overmask_rgbx_const_run
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - mul255
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE overmask_rgbx_const_run(u32 src, u8 *dst, s32 dst_pitch_x,
      u32 count, GF_EVGSurface *surf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_argb.c:411,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_argb.c:412,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_argb.c:413,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - y
    - x
    - col
    - surf
    argTypes:
    - s32
    - s32
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 408
    functionDepth: 1
    functionLinenumber: 408
    functionLinenumberEnd: 417
    functionName: evg_rgbx_fill_single
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - GF_COL_R
    - GF_COL_B
    - GF_COL_G
    linkageType: ''
    returnType: void
    signature: void evg_rgbx_fill_single(s32 y, s32 x, u32 col, GF_EVGSurface *surf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: overmask_rgbx
      Src: /src/gpac/src/evg/raster_argb.c:422,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - y
    - x
    - coverage
    - col
    - surf
    argTypes:
    - s32
    - s32
    - u8
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 419
    functionDepth: 1
    functionLinenumber: 419
    functionLinenumberEnd: 423
    functionName: evg_rgbx_fill_single_a
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - overmask_rgbx
    linkageType: ''
    returnType: void
    signature: void evg_rgbx_fill_single_a(s32 y, s32 x, u8 coverage, u32 col, GF_EVGSurface
      *surf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_argb.c:435,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_argb.c:436,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_argb.c:437,1
    - Dst: overmask_rgbx_const_run
      Src: /src/gpac/src/evg/raster_argb.c:446,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 425
    functionDepth: 1
    functionLinenumber: 425
    functionLinenumberEnd: 456
    functionName: evg_rgbx_fill_const
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - GF_COL_R
    - GF_COL_B
    - overmask_rgbx_const_run
    - GF_COL_G
    linkageType: ''
    returnType: void
    signature: void evg_rgbx_fill_const(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::get_alpha
      Src: /src/gpac/src/evg/raster_argb.c:472,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:473,1
    - Dst: overmask_rgbx_const_run
      Src: /src/gpac/src/evg/raster_argb.c:475,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:480,1
    - Dst: overmask_rgbx_const_run
      Src: /src/gpac/src/evg/raster_argb.c:482,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 458
    functionDepth: 1
    functionLinenumber: 458
    functionLinenumberEnd: 485
    functionName: evg_rgbx_fill_const_a
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - overmask_rgbx_const_run
    - GF_EVGSurface*::get_alpha
    - mul255
    linkageType: ''
    returnType: void
    signature: void evg_rgbx_fill_const_a(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::fill_run
      Src: /src/gpac/src/evg/raster_argb.c:499,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_argb.c:505,1
    - Dst: overmask_rgbx
      Src: /src/gpac/src/evg/raster_argb.c:508,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_argb.c:510,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_argb.c:511,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_argb.c:512,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 519
      start: 488
    functionDepth: 1
    functionLinenumber: 488
    functionLinenumberEnd: 519
    functionName: evg_rgbx_fill_var
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_EVGSurface*::fill_run
    - GF_COL_A
    - overmask_rgbx
    - GF_COL_R
    linkageType: ''
    returnType: void
    signature: void evg_rgbx_fill_var(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_argb.c:535,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_argb.c:536,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_argb.c:537,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_argb.c:552,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 3
    argNames:
    - surf
    - rc
    - col
    argTypes:
    - GF_EVGSurface*
    - GF_IRect
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 521
    functionDepth: 1
    functionLinenumber: 521
    functionLinenumberEnd: 556
    functionName: evg_surface_clear_rgbx
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 1
    functionsReached:
    - memcpy
    - GF_COL_R
    - GF_COL_B
    - GF_COL_G
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_surface_clear_rgbx(GF_EVGSurface *surf, GF_IRect rc, GF_Color
      col)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:574,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:578,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:579,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:579,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 6
    argNames:
    - src
    - dst
    - alpha
    - grey_type
    - idx_g
    - idx_a
    argTypes:
    - u32
    - u8*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 565
    functionDepth: 0
    functionLinenumber: 565
    functionLinenumberEnd: 584
    functionName: overmask_alphagrey
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - mul255
    linkageType: ''
    returnType: void
    signature: void overmask_alphagrey(u32 src, u8 *dst, u32 alpha, u32 grey_type,
      u32 idx_g, u32 idx_a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:593,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:594,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:594,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 7
    argNames:
    - src_a
    - src_c
    - dst
    - dst_pitch_x
    - count
    - idx_g
    - idx_a
    argTypes:
    - u32
    - u32
    - u8*
    - s32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 586
    functionDepth: 0
    functionLinenumber: 586
    functionLinenumberEnd: 602
    functionName: overmask_alphagrey_const_run
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - mul255
    linkageType: ''
    returnType: void
    signature: void overmask_alphagrey_const_run(u32 src_a, u32 src_c, u8 *dst, s32
      dst_pitch_x, u32 count, u32 idx_g, u32 idx_a)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_argb.c:610,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_argb.c:611,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_argb.c:612,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - y
    - x
    - col
    - surf
    argTypes:
    - s32
    - s32
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 614
      start: 605
    functionDepth: 1
    functionLinenumber: 605
    functionLinenumberEnd: 614
    functionName: evg_alphagrey_fill_single
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - GF_COL_R
    - GF_COL_B
    - GF_COL_G
    linkageType: ''
    returnType: void
    signature: void evg_alphagrey_fill_single(s32 y, s32 x, u32 col, GF_EVGSurface
      *surf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: overmask_alphagrey
      Src: /src/gpac/src/evg/raster_argb.c:619,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - y
    - x
    - coverage
    - col
    - surf
    argTypes:
    - s32
    - s32
    - u8
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 620
      start: 616
    functionDepth: 1
    functionLinenumber: 616
    functionLinenumberEnd: 620
    functionName: evg_alphagrey_fill_single_a
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - overmask_alphagrey
    linkageType: ''
    returnType: void
    signature: void evg_alphagrey_fill_single_a(s32 y, s32 x, u8 coverage, u32 col,
      GF_EVGSurface *surf)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_argb.c:631,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_argb.c:632,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_argb.c:633,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_argb.c:634,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:641,1
    - Dst: overmask_alphagrey_const_run
      Src: /src/gpac/src/evg/raster_argb.c:642,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 651
      start: 622
    functionDepth: 1
    functionLinenumber: 622
    functionLinenumberEnd: 651
    functionName: evg_alphagrey_fill_const
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_COL_A
    - overmask_alphagrey_const_run
    - GF_COL_R
    - mul255
    linkageType: ''
    returnType: void
    signature: void evg_alphagrey_fill_const(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_argb.c:660,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_argb.c:661,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_argb.c:662,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_argb.c:663,1
    - Dst: GF_EVGSurface*::get_alpha
      Src: /src/gpac/src/evg/raster_argb.c:670,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:671,1
    - Dst: overmask_alphagrey_const_run
      Src: /src/gpac/src/evg/raster_argb.c:672,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_argb.c:677,1
    - Dst: overmask_alphagrey_const_run
      Src: /src/gpac/src/evg/raster_argb.c:678,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 653
    functionDepth: 1
    functionLinenumber: 653
    functionLinenumberEnd: 681
    functionName: evg_alphagrey_fill_const_a
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_EVGSurface*::get_alpha
    - GF_COL_A
    - overmask_alphagrey_const_run
    - GF_COL_R
    - mul255
    linkageType: ''
    returnType: void
    signature: void evg_alphagrey_fill_const_a(s32 y, s32 count, EVG_Span *spans,
      GF_EVGSurface *surf, EVGRasterCtx *rctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::fill_run
      Src: /src/gpac/src/evg/raster_argb.c:695,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_argb.c:700,1
    - Dst: overmask_alphagrey
      Src: /src/gpac/src/evg/raster_argb.c:703,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_argb.c:707,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_argb.c:708,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_argb.c:709,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 684
    functionDepth: 1
    functionLinenumber: 684
    functionLinenumberEnd: 719
    functionName: evg_alphagrey_fill_var
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_EVGSurface*::fill_run
    - GF_COL_A
    - GF_COL_R
    - overmask_alphagrey
    linkageType: ''
    returnType: void
    signature: void evg_alphagrey_fill_var(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_argb.c:730,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_argb.c:731,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_argb.c:732,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_argb.c:733,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_argb.c:752,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 3
    argNames:
    - surf
    - rc
    - col
    argTypes:
    - GF_EVGSurface*
    - GF_IRect
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 756
      start: 721
    functionDepth: 1
    functionLinenumber: 721
    functionLinenumberEnd: 756
    functionName: evg_surface_clear_alphagrey
    functionSourceFile: /src/gpac/src/evg/raster_argb.c
    functionUses: 1
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_COL_A
    - memcpy
    - GF_COL_R
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_surface_clear_alphagrey(GF_EVGSurface *surf, GF_IRect rc,
      GF_Color col)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _a
    - ','
    - _b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 37
    functionName: mul255
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 19
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: mul255(_a, _b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 43
    functionName: mul255
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 19
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 mul255(s32 a, s32 b)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 51
    functionName: mul255_zero
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 mul255_zero(s32 a, s32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_yuv.c:58,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_yuv.c:59,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_yuv.c:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 5
    argNames:
    - surf
    - col
    - y
    - cb
    - cr
    argTypes:
    - GF_EVGSurface*
    - GF_Color
    - u8*
    - u8*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 74
    functionName: gf_evg_rgb_to_yuv
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 1
    functionsReached:
    - GF_COL_R
    - GF_COL_B
    - GF_COL_G
    linkageType: ''
    returnType: void
    signature: void gf_evg_rgb_to_yuv(GF_EVGSurface *surf, GF_Color col, u8*y, u8*cb,
      u8*cr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_yuv.c:78,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_yuv.c:79,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_yuv.c:80,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_yuv.c:81,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/raster_yuv.c:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 2
    argNames:
    - surf
    - col
    argTypes:
    - GF_EVGSurface*
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 96
    functionName: gf_evg_argb_to_ayuv
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 11
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_COL_A
    - GF_COL_ARGB
    - GF_COL_R
    linkageType: ''
    returnType: GF_Color
    signature: GF_Color gf_evg_argb_to_ayuv(GF_EVGSurface *surf, GF_Color col)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 7
    argNames:
    - surf
    - r
    - g
    - b
    - y
    - cb
    - cr
    argTypes:
    - GF_EVGSurface*
    - Float
    - Float
    - Float
    - Float*
    - Float*
    - Float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 104
    functionName: gf_gf_evg_rgb_to_yuv_f
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_gf_evg_rgb_to_yuv_f(GF_EVGSurface *surf, Float r, Float g,
      Float b, Float *y, Float *cb, Float *cr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 7
    argNames:
    - surf
    - y
    - cb
    - cr
    - r
    - g
    - b
    argTypes:
    - GF_EVGSurface*
    - Float
    - Float
    - Float
    - Float*
    - Float*
    - Float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 111
    functionName: gf_evg_yuv_to_rgb_f
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_evg_yuv_to_rgb_f(GF_EVGSurface *surf, Float y, Float cb,
      Float cr, Float *r, Float *g, Float *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_yuv.c:118,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_yuv.c:119,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_yuv.c:120,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_yuv.c:121,1
    - Dst: TRUNC_8BIT
      Src: /src/gpac/src/evg/raster_yuv.c:129,1
    - Dst: TRUNC_8BIT
      Src: /src/gpac/src/evg/raster_yuv.c:130,1
    - Dst: TRUNC_8BIT
      Src: /src/gpac/src/evg/raster_yuv.c:131,1
    - Dst: TRUNC_8BIT
      Src: /src/gpac/src/evg/raster_yuv.c:140,1
    - Dst: TRUNC_8BIT
      Src: /src/gpac/src/evg/raster_yuv.c:141,1
    - Dst: TRUNC_8BIT
      Src: /src/gpac/src/evg/raster_yuv.c:142,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/evg/raster_yuv.c:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 2
    argNames:
    - surf
    - col
    argTypes:
    - GF_EVGSurface*
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 148
    functionName: gf_evg_ayuv_to_argb
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 7
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_COL_A
    - GF_COL_ARGB
    - GF_COL_R
    - TRUNC_8BIT
    linkageType: ''
    returnType: GF_Color
    signature: GF_Color gf_evg_ayuv_to_argb(GF_EVGSurface *surf, GF_Color col)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 129
    functionName: TRUNC_8BIT
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRUNC_8BIT(_a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 140
    functionName: TRUNC_8BIT
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRUNC_8BIT(_a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COLW_ARGB
      Src: /src/gpac/src/evg/raster_yuv.c:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 2
    argNames:
    - surf
    - col
    argTypes:
    - GF_EVGSurface*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 175
    functionName: gf_evg_argb_to_ayuv_wide
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 7
    functionsReached:
    - GF_COLW_ARGB
    linkageType: ''
    returnType: u64
    signature: u64 gf_evg_argb_to_ayuv_wide(GF_EVGSurface *surf, u64 col)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TRUNC_16BIT
      Src: /src/gpac/src/evg/raster_yuv.c:191,1
    - Dst: TRUNC_16BIT
      Src: /src/gpac/src/evg/raster_yuv.c:192,1
    - Dst: TRUNC_16BIT
      Src: /src/gpac/src/evg/raster_yuv.c:193,1
    - Dst: TRUNC_16BIT
      Src: /src/gpac/src/evg/raster_yuv.c:202,1
    - Dst: TRUNC_16BIT
      Src: /src/gpac/src/evg/raster_yuv.c:203,1
    - Dst: TRUNC_16BIT
      Src: /src/gpac/src/evg/raster_yuv.c:204,1
    - Dst: GF_COLW_ARGB
      Src: /src/gpac/src/evg/raster_yuv.c:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 2
    argNames:
    - surf
    - col
    argTypes:
    - GF_EVGSurface*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 209
    functionName: gf_evg_ayuv_to_argb_wide
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 7
    functionsReached:
    - GF_COLW_ARGB
    - TRUNC_16BIT
    linkageType: ''
    returnType: u64
    signature: u64 gf_evg_ayuv_to_argb_wide(GF_EVGSurface *surf, u64 col)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 191
    functionName: TRUNC_16BIT
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRUNC_16BIT(_a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 202
    functionName: TRUNC_16BIT
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRUNC_16BIT(_a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_cmx_init
      Src: /src/gpac/src/evg/raster_yuv.c:215,1
    - Dst: gf_cmx_init
      Src: /src/gpac/src/evg/raster_yuv.c:216,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/evg/raster_yuv.c:221,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/evg/raster_yuv.c:222,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/evg/raster_yuv.c:226,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/evg/raster_yuv.c:227,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/evg/raster_yuv.c:228,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/evg/raster_yuv.c:232,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/evg/raster_yuv.c:233,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/evg/raster_yuv.c:237,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/evg/raster_yuv.c:238,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/evg/raster_yuv.c:239,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/evg/raster_yuv.c:243,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/evg/raster_yuv.c:244,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/evg/raster_yuv.c:245,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/evg/raster_yuv.c:246,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/evg/raster_yuv.c:249,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/evg/raster_yuv.c:250,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/evg/raster_yuv.c:251,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/evg/raster_yuv.c:252,1
    - Dst: gf_cmx_copy
      Src: /src/gpac/src/evg/raster_yuv.c:254,1
    - Dst: gf_cmx_multiply
      Src: /src/gpac/src/evg/raster_yuv.c:255,1
    - Dst: gf_cmx_multiply
      Src: /src/gpac/src/evg/raster_yuv.c:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 28
    argCount: 2
    argNames:
    - cmat
    - yuv_cmat
    argTypes:
    - GF_ColorMatrix*
    - GF_ColorMatrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 257
    functionName: evg_make_ayuv_color_mx
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_cmx_init
    - gf_cmx_copy
    - gf_cmx_multiply
    linkageType: ''
    returnType: void
    signature: void evg_make_ayuv_color_mx(GF_ColorMatrix *cmat, GF_ColorMatrix *yuv_cmat)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_yuv.c:270,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_yuv.c:271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - col_a
    - cy
    - dst
    - alpha
    argTypes:
    - u8
    - u8
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 264
    functionDepth: 0
    functionLinenumber: 264
    functionLinenumberEnd: 272
    functionName: overmask_yuv420p
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - mul255
    linkageType: ''
    returnType: void
    signature: void overmask_yuv420p(u8 col_a, u8 cy, u8 *dst, u32 alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_yuv.c:278,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - a
    - val
    - ptr
    - count
    - x
    argTypes:
    - u8
    - u8
    - u8*
    - u32
    - short
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 282
    functionName: overmask_yuv420p_const_run
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - mul255
    linkageType: ''
    returnType: void
    signature: void overmask_yuv420p_const_run(u8 a, u8 val, u8 *ptr, u32 count, short
      x)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_yuv.c:314,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_yuv.c:317,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:321,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 6
    argNames:
    - surf
    - rctx
    - surf_uv_alpha
    - cu
    - cv
    - y
    argTypes:
    - GF_EVGSurface*
    - EVGRasterCtx*
    - u8*
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 322
    functionName: evg_yuv420p_flush_uv_const
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - memset
    - mul255
    linkageType: ''
    returnType: void
    signature: void evg_yuv420p_flush_uv_const(GF_EVGSurface *surf, EVGRasterCtx *rctx,
      u8 *surf_uv_alpha, s32 cu, s32 cv, s32 y)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_yuv.c:344,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_yuv.c:345,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_yuv.c:346,1
    - Dst: overmask_yuv420p_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:357,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:358,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:364,1
    - Dst: GF_EVGSurface*::yuv_flush_uv
      Src: /src/gpac/src/evg/raster_yuv.c:368,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 324
    functionDepth: 1
    functionLinenumber: 324
    functionLinenumberEnd: 371
    functionName: evg_yuv420p_fill_const
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_COL_R
    - memset
    - GF_EVGSurface*::yuv_flush_uv
    - overmask_yuv420p_const_run
    linkageType: ''
    returnType: void
    signature: void evg_yuv420p_fill_const(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_yuv.c:393,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_yuv.c:394,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_yuv.c:395,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_yuv.c:396,1
    - Dst: GF_EVGSurface*::get_alpha
      Src: /src/gpac/src/evg/raster_yuv.c:404,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_yuv.c:405,1
    - Dst: overmask_yuv420p_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:407,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:409,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_yuv.c:418,1
    - Dst: overmask_yuv420p_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:420,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:422,1
    - Dst: GF_EVGSurface*::yuv_flush_uv
      Src: /src/gpac/src/evg/raster_yuv.c:427,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 373
    functionDepth: 1
    functionLinenumber: 373
    functionLinenumberEnd: 428
    functionName: evg_yuv420p_fill_const_a
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_EVGSurface*::get_alpha
    - GF_COL_A
    - GF_COL_R
    - memset
    - GF_EVGSurface*::yuv_flush_uv
    - mul255
    - overmask_yuv420p_const_run
    linkageType: ''
    returnType: void
    signature: void evg_yuv420p_fill_const_a(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/evg/raster_yuv.c:449,1
    - Dst: gf_assert
      Src: /src/gpac/src/evg/raster_yuv.c:450,1
    - Dst: mul255_zero
      Src: /src/gpac/src/evg/raster_yuv.c:471,1
    - Dst: mul255_zero
      Src: /src/gpac/src/evg/raster_yuv.c:473,1
    - Dst: mul255_zero
      Src: /src/gpac/src/evg/raster_yuv.c:475,1
    - Dst: mul255_zero
      Src: /src/gpac/src/evg/raster_yuv.c:477,1
    - Dst: mul255_zero
      Src: /src/gpac/src/evg/raster_yuv.c:490,1
    - Dst: mul255_zero
      Src: /src/gpac/src/evg/raster_yuv.c:492,1
    - Dst: mul255_zero
      Src: /src/gpac/src/evg/raster_yuv.c:494,1
    - Dst: mul255_zero
      Src: /src/gpac/src/evg/raster_yuv.c:496,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:508,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 63
    argCount: 6
    argNames:
    - surf
    - rctx
    - surf_uv_alpha
    - _cu
    - _cv
    - y
    argTypes:
    - GF_EVGSurface*
    - EVGRasterCtx*
    - u8*
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 431
    functionDepth: 1
    functionLinenumber: 431
    functionLinenumberEnd: 510
    functionName: evg_yuv420p_flush_uv_var
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_assert
    - mul255_zero
    linkageType: ''
    returnType: void
    signature: void evg_yuv420p_flush_uv_var(GF_EVGSurface *surf, EVGRasterCtx *rctx,
      u8 *surf_uv_alpha, s32 _cu, s32 _cv,  s32 y)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::fill_run
      Src: /src/gpac/src/evg/raster_yuv.c:539,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_yuv.c:547,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_yuv.c:552,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_yuv.c:553,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_yuv.c:554,1
    - Dst: overmask_yuv420p
      Src: /src/gpac/src/evg/raster_yuv.c:557,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_yuv.c:559,1
    - Dst: GF_EVGSurface*::yuv_flush_uv
      Src: /src/gpac/src/evg/raster_yuv.c:575,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 41
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 512
    functionDepth: 1
    functionLinenumber: 512
    functionLinenumberEnd: 577
    functionName: evg_yuv420p_fill_var
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_EVGSurface*::fill_run
    - GF_COL_A
    - overmask_yuv420p
    - GF_COL_R
    - GF_EVGSurface*::yuv_flush_uv
    - mul255
    linkageType: ''
    returnType: void
    signature: void evg_yuv420p_fill_var(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_rgb_to_yuv
      Src: /src/gpac/src/evg/raster_yuv.c:595,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:598,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:599,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:600,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:605,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:608,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:610,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 3
    argNames:
    - _surf
    - rc
    - col
    argTypes:
    - GF_EVGSurface*
    - GF_IRect
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 615
      start: 579
    functionDepth: 2
    functionLinenumber: 579
    functionLinenumberEnd: 615
    functionName: evg_surface_clear_yuv420p
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 1
    functionsReached:
    - memset
    - gf_evg_rgb_to_yuv
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_surface_clear_yuv420p(GF_EVGSurface *_surf, GF_IRect rc,
      GF_Color col)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_yuv.c:649,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_yuv.c:653,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:657,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 6
    argNames:
    - surf
    - rctx
    - surf_uv_alpha
    - cu
    - cv
    - y
    argTypes:
    - GF_EVGSurface*
    - EVGRasterCtx*
    - u8*
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 623
    functionDepth: 0
    functionLinenumber: 623
    functionLinenumberEnd: 658
    functionName: evg_nv12_flush_uv_const
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - memset
    - mul255
    linkageType: ''
    returnType: void
    signature: void evg_nv12_flush_uv_const(GF_EVGSurface *surf, EVGRasterCtx *rctx,
      u8 *surf_uv_alpha, s32 cu, s32 cv, s32 y)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: mul255_zero
      Src: /src/gpac/src/evg/raster_yuv.c:693,1
    - Dst: mul255_zero
      Src: /src/gpac/src/evg/raster_yuv.c:695,1
    - Dst: mul255_zero
      Src: /src/gpac/src/evg/raster_yuv.c:697,1
    - Dst: mul255_zero
      Src: /src/gpac/src/evg/raster_yuv.c:699,1
    - Dst: mul255_zero
      Src: /src/gpac/src/evg/raster_yuv.c:712,1
    - Dst: mul255_zero
      Src: /src/gpac/src/evg/raster_yuv.c:714,1
    - Dst: mul255_zero
      Src: /src/gpac/src/evg/raster_yuv.c:716,1
    - Dst: mul255_zero
      Src: /src/gpac/src/evg/raster_yuv.c:718,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:729,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 53
    argCount: 6
    argNames:
    - surf
    - rctx
    - surf_uv_alpha
    - cu
    - cv
    - y
    argTypes:
    - GF_EVGSurface*
    - EVGRasterCtx*
    - u8*
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 660
    functionDepth: 1
    functionLinenumber: 660
    functionLinenumberEnd: 730
    functionName: evg_nv12_flush_uv_var
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - memset
    - mul255_zero
    linkageType: ''
    returnType: void
    signature: void evg_nv12_flush_uv_var(GF_EVGSurface *surf, EVGRasterCtx *rctx,
      u8 *surf_uv_alpha, s32 cu, s32 cv, s32 y)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_rgb_to_yuv
      Src: /src/gpac/src/evg/raster_yuv.c:749,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:757,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_yuv.c:772,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 4
    argNames:
    - _surf
    - rc
    - col
    - swap_uv
    argTypes:
    - GF_EVGSurface*
    - GF_IRect
    - GF_Color
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 778
      start: 733
    functionDepth: 2
    functionLinenumber: 733
    functionLinenumberEnd: 778
    functionName: evg_surface_clear_nv12
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 1
    functionsReached:
    - memcpy
    - memset
    - gf_evg_rgb_to_yuv
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_surface_clear_nv12(GF_EVGSurface *_surf, GF_IRect rc, GF_Color
      col, Bool swap_uv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_yuv.c:809,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_yuv.c:812,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:816,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 6
    argNames:
    - surf
    - rctx
    - surf_uv_alpha
    - cu
    - cv
    - y
    argTypes:
    - GF_EVGSurface*
    - EVGRasterCtx*
    - u8*
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 785
    functionDepth: 0
    functionLinenumber: 785
    functionLinenumberEnd: 817
    functionName: evg_yuv422p_flush_uv_const
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - memset
    - mul255
    linkageType: ''
    returnType: void
    signature: void evg_yuv422p_flush_uv_const(GF_EVGSurface *surf, EVGRasterCtx *rctx,
      u8 *surf_uv_alpha, s32 cu, s32 cv, s32 y)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: mul255_zero
      Src: /src/gpac/src/evg/raster_yuv.c:846,1
    - Dst: mul255_zero
      Src: /src/gpac/src/evg/raster_yuv.c:848,1
    - Dst: mul255_zero
      Src: /src/gpac/src/evg/raster_yuv.c:857,1
    - Dst: mul255_zero
      Src: /src/gpac/src/evg/raster_yuv.c:859,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:871,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 37
    argCount: 6
    argNames:
    - surf
    - rctx
    - surf_uv_alpha
    - _cu
    - _cv
    - y
    argTypes:
    - GF_EVGSurface*
    - EVGRasterCtx*
    - u8*
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 872
      start: 819
    functionDepth: 1
    functionLinenumber: 819
    functionLinenumberEnd: 872
    functionName: evg_yuv422p_flush_uv_var
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - memset
    - mul255_zero
    linkageType: ''
    returnType: void
    signature: void evg_yuv422p_flush_uv_var(GF_EVGSurface *surf, EVGRasterCtx *rctx,
      u8 *surf_uv_alpha, s32 _cu, s32 _cv,  s32 y)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_rgb_to_yuv
      Src: /src/gpac/src/evg/raster_yuv.c:892,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:895,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:896,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:897,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:903,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:905,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:907,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 3
    argNames:
    - _surf
    - rc
    - col
    argTypes:
    - GF_EVGSurface*
    - GF_IRect
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 911
      start: 875
    functionDepth: 2
    functionLinenumber: 875
    functionLinenumberEnd: 911
    functionName: evg_surface_clear_yuv422p
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 1
    functionsReached:
    - memset
    - gf_evg_rgb_to_yuv
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_surface_clear_yuv422p(GF_EVGSurface *_surf, GF_IRect rc,
      GF_Color col)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_yuv.c:927,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_yuv.c:928,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_yuv.c:929,1
    - Dst: overmask_yuv420p_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:942,1
    - Dst: overmask_yuv420p_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:943,1
    - Dst: overmask_yuv420p_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:944,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 28
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 956
      start: 917
    functionDepth: 1
    functionLinenumber: 917
    functionLinenumberEnd: 956
    functionName: evg_yuv444p_fill_const
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - GF_COL_R
    - overmask_yuv420p_const_run
    - GF_COL_B
    - GF_COL_G
    linkageType: ''
    returnType: void
    signature: void evg_yuv444p_fill_const(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_yuv.c:969,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_yuv.c:970,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_yuv.c:971,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_yuv.c:972,1
    - Dst: GF_EVGSurface*::get_alpha
      Src: /src/gpac/src/evg/raster_yuv.c:984,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_yuv.c:985,1
    - Dst: overmask_yuv420p_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:987,1
    - Dst: overmask_yuv420p_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:988,1
    - Dst: overmask_yuv420p_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:989,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_yuv.c:1000,1
    - Dst: overmask_yuv420p_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:1002,1
    - Dst: overmask_yuv420p_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:1003,1
    - Dst: overmask_yuv420p_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:1004,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 32
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1007
      start: 958
    functionDepth: 1
    functionLinenumber: 958
    functionLinenumberEnd: 1007
    functionName: evg_yuv444p_fill_const_a
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_EVGSurface*::get_alpha
    - GF_COL_A
    - GF_COL_R
    - mul255
    - overmask_yuv420p_const_run
    linkageType: ''
    returnType: void
    signature: void evg_yuv444p_fill_const_a(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::fill_run
      Src: /src/gpac/src/evg/raster_yuv.c:1024,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_yuv.c:1033,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_yuv.c:1036,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_yuv.c:1037,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_yuv.c:1038,1
    - Dst: overmask_yuv420p
      Src: /src/gpac/src/evg/raster_yuv.c:1041,1
    - Dst: overmask_yuv420p
      Src: /src/gpac/src/evg/raster_yuv.c:1042,1
    - Dst: overmask_yuv420p
      Src: /src/gpac/src/evg/raster_yuv.c:1043,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1056
      start: 1009
    functionDepth: 1
    functionLinenumber: 1009
    functionLinenumberEnd: 1056
    functionName: evg_yuv444p_fill_var
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_EVGSurface*::fill_run
    - GF_COL_A
    - overmask_yuv420p
    - GF_COL_R
    linkageType: ''
    returnType: void
    signature: void evg_yuv444p_fill_var(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_rgb_to_yuv
      Src: /src/gpac/src/evg/raster_yuv.c:1075,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:1078,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:1079,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:1080,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:1085,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:1087,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:1089,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 3
    argNames:
    - _surf
    - rc
    - col
    argTypes:
    - GF_EVGSurface*
    - GF_IRect
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1093
      start: 1058
    functionDepth: 2
    functionLinenumber: 1058
    functionLinenumberEnd: 1093
    functionName: evg_surface_clear_yuv444p
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 1
    functionsReached:
    - memset
    - gf_evg_rgb_to_yuv
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_surface_clear_yuv444p(GF_EVGSurface *_surf, GF_IRect rc,
      GF_Color col)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_yuv.c:1105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - dst
    - c
    - alpha
    argTypes:
    - u8*
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1106
      start: 1100
    functionDepth: 0
    functionLinenumber: 1100
    functionLinenumberEnd: 1106
    functionName: overmask_yuvy
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - mul255
    linkageType: ''
    returnType: void
    signature: void overmask_yuvy(u8 *dst, u8 c, u32 alpha)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_yuv.c:1116,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_yuv.c:1117,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_yuv.c:1118,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:1132,1
    - Dst: overmask_yuvy
      Src: /src/gpac/src/evg/raster_yuv.c:1134,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:1138,1
    - Dst: overmask_yuvy
      Src: /src/gpac/src/evg/raster_yuv.c:1156,1
    - Dst: overmask_yuvy
      Src: /src/gpac/src/evg/raster_yuv.c:1157,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:1162,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 43
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1163
      start: 1107
    functionDepth: 1
    functionLinenumber: 1107
    functionLinenumberEnd: 1163
    functionName: evg_yuyv_fill_const
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_COL_R
    - memset
    - overmask_yuvy
    linkageType: ''
    returnType: void
    signature: void evg_yuyv_fill_const(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_yuv.c:1172,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_yuv.c:1173,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_yuv.c:1174,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_yuv.c:1175,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_yuv.c:1184,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:1186,1
    - Dst: overmask_yuvy
      Src: /src/gpac/src/evg/raster_yuv.c:1188,1
    - Dst: overmask_yuvy
      Src: /src/gpac/src/evg/raster_yuv.c:1201,1
    - Dst: overmask_yuvy
      Src: /src/gpac/src/evg/raster_yuv.c:1202,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:1206,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 33
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1208
      start: 1165
    functionDepth: 1
    functionLinenumber: 1165
    functionLinenumberEnd: 1208
    functionName: evg_yuyv_fill_const_a
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_COL_A
    - GF_COL_R
    - memset
    - overmask_yuvy
    - mul255
    linkageType: ''
    returnType: void
    signature: void evg_yuyv_fill_const_a(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::fill_run
      Src: /src/gpac/src/evg/raster_yuv.c:1226,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_yuv.c:1233,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_yuv.c:1237,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_yuv.c:1238,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_yuv.c:1239,1
    - Dst: overmask_yuv420p
      Src: /src/gpac/src/evg/raster_yuv.c:1242,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_yuv.c:1244,1
    - Dst: overmask_yuvy
      Src: /src/gpac/src/evg/raster_yuv.c:1276,1
    - Dst: overmask_yuvy
      Src: /src/gpac/src/evg/raster_yuv.c:1284,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:1290,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 54
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1292
      start: 1210
    functionDepth: 1
    functionLinenumber: 1210
    functionLinenumberEnd: 1292
    functionName: evg_yuyv_fill_var
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_EVGSurface*::fill_run
    - GF_COL_A
    - overmask_yuv420p
    - GF_COL_R
    - memset
    - overmask_yuvy
    - mul255
    linkageType: ''
    returnType: void
    signature: void evg_yuyv_fill_var(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_rgb_to_yuv
      Src: /src/gpac/src/evg/raster_yuv.c:1305,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_yuv.c:1318,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 3
    argNames:
    - _surf
    - rc
    - col
    argTypes:
    - GF_EVGSurface*
    - GF_IRect
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1323
      start: 1294
    functionDepth: 2
    functionLinenumber: 1294
    functionLinenumberEnd: 1323
    functionName: evg_surface_clear_yuyv
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 1
    functionsReached:
    - memcpy
    - gf_evg_rgb_to_yuv
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_surface_clear_yuyv(GF_EVGSurface *_surf, GF_IRect rc, GF_Color
      col)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _ptr
    - ','
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1329
      start: 1328
    functionDepth: 0
    functionLinenumber: 1328
    functionLinenumberEnd: 1329
    functionName: set_u16_le
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: set_u16_le(_ptr, val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _ptr
    - ','
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1330
      start: 1329
    functionDepth: 0
    functionLinenumber: 1329
    functionLinenumberEnd: 1330
    functionName: set_u16_be
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: set_u16_be(_ptr, val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - val
    - ','
    - _ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1332
      start: 1331
    functionDepth: 0
    functionLinenumber: 1331
    functionLinenumberEnd: 1332
    functionName: get_u16_le
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: get_u16_le(val, _ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - val
    - ','
    - _ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1333
      start: 1332
    functionDepth: 0
    functionLinenumber: 1332
    functionLinenumberEnd: 1333
    functionName: get_u16_be
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: get_u16_be(val, _ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _ptr
    - ','
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1337
      start: 1336
    functionDepth: 0
    functionLinenumber: 1336
    functionLinenumberEnd: 1337
    functionName: set_u16_le
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: set_u16_le(_ptr, val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _ptr
    - ','
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1338
      start: 1337
    functionDepth: 0
    functionLinenumber: 1337
    functionLinenumberEnd: 1338
    functionName: set_u16_be
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: set_u16_be(_ptr, val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - val
    - ','
    - _ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1340
      start: 1339
    functionDepth: 0
    functionLinenumber: 1339
    functionLinenumberEnd: 1340
    functionName: get_u16_le
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: get_u16_le(val, _ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - val
    - ','
    - _ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1341
      start: 1340
    functionDepth: 0
    functionLinenumber: 1340
    functionLinenumberEnd: 1341
    functionName: get_u16_be
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: get_u16_be(val, _ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - s64
    - s64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1352
      start: 1348
    functionDepth: 0
    functionLinenumber: 1348
    functionLinenumberEnd: 1352
    functionName: mul_10
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 mul_10(s64 a, s64 b)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - s64
    - s64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1359
      start: 1354
    functionDepth: 0
    functionLinenumber: 1354
    functionLinenumberEnd: 1359
    functionName: mul_10_zero
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 mul_10_zero(s64 a, s64 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1366,1
    - Dst: mul_10
      Src: /src/gpac/src/evg/raster_yuv.c:1368,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1369,1
    - Dst: mul_10
      Src: /src/gpac/src/evg/raster_yuv.c:1369,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - col_a
    - cy
    - dst
    - alpha
    argTypes:
    - u16
    - u16
    - u16*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1370
      start: 1361
    functionDepth: 1
    functionLinenumber: 1361
    functionLinenumberEnd: 1370
    functionName: overmask_yuv420p_10
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - mul_10
    - get_u16_le
    - set_u16_le
    linkageType: ''
    returnType: void
    signature: void overmask_yuv420p_10(u16 col_a, u16 cy, u16 *dst, u32 alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1376,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1377,1
    - Dst: mul_10
      Src: /src/gpac/src/evg/raster_yuv.c:1377,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - a
    - val
    - ptr
    - count
    - x
    argTypes:
    - u16
    - u16
    - u16*
    - u32
    - short
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1381
      start: 1372
    functionDepth: 1
    functionLinenumber: 1372
    functionLinenumberEnd: 1381
    functionName: overmask_yuv420p_10_const_run
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - mul_10
    - get_u16_le
    - set_u16_le
    linkageType: ''
    returnType: void
    signature: void overmask_yuv420p_10_const_run(u16 a, u16 val, u16 *ptr, u32 count,
      short x)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1410,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1411,1
    - Dst: get_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1413,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1414,1
    - Dst: mul_10
      Src: /src/gpac/src/evg/raster_yuv.c:1414,1
    - Dst: get_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1415,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1416,1
    - Dst: mul_10
      Src: /src/gpac/src/evg/raster_yuv.c:1416,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:1420,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 6
    argNames:
    - surf
    - rctx
    - _surf_uv_alpha
    - cu
    - cv
    - y
    argTypes:
    - GF_EVGSurface*
    - EVGRasterCtx*
    - u8*
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1421
      start: 1383
    functionDepth: 1
    functionLinenumber: 1383
    functionLinenumberEnd: 1421
    functionName: evg_yuv420p_10_flush_uv_const
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - mul_10
    - memset
    - get_u16_le
    - set_u16_le
    linkageType: ''
    returnType: void
    signature: void evg_yuv420p_10_flush_uv_const(GF_EVGSurface *surf, EVGRasterCtx
      *rctx, u8 *_surf_uv_alpha, s32 cu, s32 cv, s32 y)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: overmask_yuv420p_10_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:1463,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1466,1
    - Dst: GF_EVGSurface*::yuv_flush_uv
      Src: /src/gpac/src/evg/raster_yuv.c:1472,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 36
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1475
      start: 1423
    functionDepth: 2
    functionLinenumber: 1423
    functionLinenumberEnd: 1475
    functionName: evg_yuv420p_10_fill_const
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - overmask_yuv420p_10_const_run
    - GF_EVGSurface*::yuv_flush_uv
    - set_u16_le
    linkageType: ''
    returnType: void
    signature: void evg_yuv420p_10_fill_const(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::get_alpha
      Src: /src/gpac/src/evg/raster_yuv.c:1514,1
    - Dst: overmask_yuv420p_10_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:1517,1
    - Dst: overmask_yuv420p_10_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:1530,1
    - Dst: GF_EVGSurface*::yuv_flush_uv
      Src: /src/gpac/src/evg/raster_yuv.c:1539,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 42
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1540
      start: 1477
    functionDepth: 2
    functionLinenumber: 1477
    functionLinenumberEnd: 1540
    functionName: evg_yuv420p_10_fill_const_a
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - overmask_yuv420p_10_const_run
    - GF_EVGSurface*::yuv_flush_uv
    - GF_EVGSurface*::get_alpha
    linkageType: ''
    returnType: void
    signature: void evg_yuv420p_10_fill_const_a(s32 y, s32 count, EVG_Span *spans,
      GF_EVGSurface *surf, EVGRasterCtx *rctx)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: get_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1574,1
    - Dst: mul_10_zero
      Src: /src/gpac/src/evg/raster_yuv.c:1577,1
    - Dst: mul_10_zero
      Src: /src/gpac/src/evg/raster_yuv.c:1579,1
    - Dst: mul_10_zero
      Src: /src/gpac/src/evg/raster_yuv.c:1581,1
    - Dst: mul_10_zero
      Src: /src/gpac/src/evg/raster_yuv.c:1583,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1587,1
    - Dst: get_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1594,1
    - Dst: mul_10_zero
      Src: /src/gpac/src/evg/raster_yuv.c:1597,1
    - Dst: mul_10_zero
      Src: /src/gpac/src/evg/raster_yuv.c:1599,1
    - Dst: mul_10_zero
      Src: /src/gpac/src/evg/raster_yuv.c:1601,1
    - Dst: mul_10_zero
      Src: /src/gpac/src/evg/raster_yuv.c:1603,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1607,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:1613,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 56
    argCount: 6
    argNames:
    - surf
    - rctx
    - _surf_uv_alpha
    - _cu
    - _cv
    - y
    argTypes:
    - GF_EVGSurface*
    - EVGRasterCtx*
    - u8*
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1615
      start: 1542
    functionDepth: 1
    functionLinenumber: 1542
    functionLinenumberEnd: 1615
    functionName: evg_yuv420p_10_flush_uv_var
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - memset
    - set_u16_le
    - get_u16_le
    - mul_10_zero
    linkageType: ''
    returnType: void
    signature: void evg_yuv420p_10_flush_uv_var(GF_EVGSurface *surf, EVGRasterCtx
      *rctx, u8 *_surf_uv_alpha, s32 _cu, s32 _cv,  s32 y)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::fill_run
      Src: /src/gpac/src/evg/raster_yuv.c:1644,1
    - Dst: overmask_yuv420p_10
      Src: /src/gpac/src/evg/raster_yuv.c:1664,1
    - Dst: mul_10
      Src: /src/gpac/src/evg/raster_yuv.c:1665,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1667,1
    - Dst: GF_EVGSurface*::yuv_flush_uv
      Src: /src/gpac/src/evg/raster_yuv.c:1680,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 41
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1682
      start: 1617
    functionDepth: 2
    functionLinenumber: 1617
    functionLinenumberEnd: 1682
    functionName: evg_yuv420p_10_fill_var
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - mul_10
    - GF_EVGSurface*::fill_run
    - overmask_yuv420p_10
    - set_u16_le
    - GF_EVGSurface*::yuv_flush_uv
    linkageType: ''
    returnType: void
    signature: void evg_yuv420p_10_fill_var(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_rgb_to_yuv
      Src: /src/gpac/src/evg/raster_yuv.c:1696,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1707,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:1709,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_yuv.c:1712,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1721,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1722,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_yuv.c:1725,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_yuv.c:1726,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 38
    argCount: 3
    argNames:
    - _surf
    - rc
    - col
    argTypes:
    - GF_EVGSurface*
    - GF_IRect
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1733
      start: 1684
    functionDepth: 2
    functionLinenumber: 1684
    functionLinenumberEnd: 1733
    functionName: evg_surface_clear_yuv420p_10
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 1
    functionsReached:
    - memcpy
    - memset
    - gf_evg_rgb_to_yuv
    - set_u16_le
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_surface_clear_yuv420p_10(GF_EVGSurface *_surf, GF_IRect
      rc, GF_Color col)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1760,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1761,1
    - Dst: get_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1763,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1764,1
    - Dst: mul_10
      Src: /src/gpac/src/evg/raster_yuv.c:1764,1
    - Dst: get_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1765,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1766,1
    - Dst: mul_10
      Src: /src/gpac/src/evg/raster_yuv.c:1766,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:1772,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 6
    argNames:
    - surf
    - rctx
    - _surf_uv_alpha
    - cu
    - cv
    - y
    argTypes:
    - GF_EVGSurface*
    - EVGRasterCtx*
    - u8*
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1773
      start: 1740
    functionDepth: 1
    functionLinenumber: 1740
    functionLinenumberEnd: 1773
    functionName: evg_nv12_10_flush_uv_const
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - mul_10
    - memset
    - get_u16_le
    - set_u16_le
    linkageType: ''
    returnType: void
    signature: void evg_nv12_10_flush_uv_const(GF_EVGSurface *surf, EVGRasterCtx *rctx,
      u8 *_surf_uv_alpha, s32 cu, s32 cv, s32 y)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: get_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1805,1
    - Dst: mul_10_zero
      Src: /src/gpac/src/evg/raster_yuv.c:1808,1
    - Dst: mul_10_zero
      Src: /src/gpac/src/evg/raster_yuv.c:1810,1
    - Dst: mul_10_zero
      Src: /src/gpac/src/evg/raster_yuv.c:1812,1
    - Dst: mul_10_zero
      Src: /src/gpac/src/evg/raster_yuv.c:1814,1
    - Dst: get_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1823,1
    - Dst: mul_10_zero
      Src: /src/gpac/src/evg/raster_yuv.c:1826,1
    - Dst: mul_10_zero
      Src: /src/gpac/src/evg/raster_yuv.c:1828,1
    - Dst: mul_10_zero
      Src: /src/gpac/src/evg/raster_yuv.c:1830,1
    - Dst: mul_10_zero
      Src: /src/gpac/src/evg/raster_yuv.c:1832,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1838,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1839,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:1845,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 52
    argCount: 6
    argNames:
    - surf
    - rctx
    - _surf_uv_alpha
    - cu
    - cv
    - y
    argTypes:
    - GF_EVGSurface*
    - EVGRasterCtx*
    - u8*
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1846
      start: 1776
    functionDepth: 1
    functionLinenumber: 1776
    functionLinenumberEnd: 1846
    functionName: evg_nv12_10_flush_uv_var
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - memset
    - set_u16_le
    - get_u16_le
    - mul_10_zero
    linkageType: ''
    returnType: void
    signature: void evg_nv12_10_flush_uv_var(GF_EVGSurface *surf, EVGRasterCtx *rctx,
      u8 *_surf_uv_alpha, s32 cu, s32 cv, s32 y)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_rgb_to_yuv
      Src: /src/gpac/src/evg/raster_yuv.c:1868,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1885,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:1888,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1893,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1894,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_yuv.c:1900,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_yuv.c:1906,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 39
    argCount: 4
    argNames:
    - _surf
    - rc
    - col
    - swap_uv
    argTypes:
    - GF_EVGSurface*
    - GF_IRect
    - GF_Color
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1910
      start: 1849
    functionDepth: 2
    functionLinenumber: 1849
    functionLinenumberEnd: 1910
    functionName: evg_surface_clear_nv12_10
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 1
    functionsReached:
    - memcpy
    - memset
    - gf_evg_rgb_to_yuv
    - set_u16_le
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_surface_clear_nv12_10(GF_EVGSurface *_surf, GF_IRect rc,
      GF_Color col, Bool swap_uv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1939,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1940,1
    - Dst: get_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1943,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1944,1
    - Dst: mul_10
      Src: /src/gpac/src/evg/raster_yuv.c:1944,1
    - Dst: get_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1946,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1947,1
    - Dst: mul_10
      Src: /src/gpac/src/evg/raster_yuv.c:1947,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:1951,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 6
    argNames:
    - surf
    - rctx
    - _surf_uv_alpha
    - cu
    - cv
    - y
    argTypes:
    - GF_EVGSurface*
    - EVGRasterCtx*
    - u8*
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1952
      start: 1918
    functionDepth: 1
    functionLinenumber: 1918
    functionLinenumberEnd: 1952
    functionName: evg_yuv422p_10_flush_uv_const
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - mul_10
    - memset
    - get_u16_le
    - set_u16_le
    linkageType: ''
    returnType: void
    signature: void evg_yuv422p_10_flush_uv_const(GF_EVGSurface *surf, EVGRasterCtx
      *rctx, u8 *_surf_uv_alpha, s32 cu, s32 cv, s32 y)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: get_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1977,1
    - Dst: mul_10_zero
      Src: /src/gpac/src/evg/raster_yuv.c:1980,1
    - Dst: mul_10_zero
      Src: /src/gpac/src/evg/raster_yuv.c:1982,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1986,1
    - Dst: get_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1990,1
    - Dst: mul_10_zero
      Src: /src/gpac/src/evg/raster_yuv.c:1993,1
    - Dst: mul_10_zero
      Src: /src/gpac/src/evg/raster_yuv.c:1995,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:1999,1
    - Dst: memset
      Src: /src/gpac/src/evg/raster_yuv.c:2005,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 6
    argNames:
    - surf
    - rctx
    - _surf_uv_alpha
    - _cu
    - _cv
    - y
    argTypes:
    - GF_EVGSurface*
    - EVGRasterCtx*
    - u8*
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2006
      start: 1954
    functionDepth: 1
    functionLinenumber: 1954
    functionLinenumberEnd: 2006
    functionName: evg_yuv422p_10_flush_uv_var
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - memset
    - set_u16_le
    - get_u16_le
    - mul_10_zero
    linkageType: ''
    returnType: void
    signature: void evg_yuv422p_10_flush_uv_var(GF_EVGSurface *surf, EVGRasterCtx
      *rctx, u8 *_surf_uv_alpha, s32 _cu, s32 _cv,  s32 y)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_rgb_to_yuv
      Src: /src/gpac/src/evg/raster_yuv.c:2031,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:2040,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:2042,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:2043,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_yuv.c:2047,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_yuv.c:2048,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_yuv.c:2049,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 33
    argCount: 3
    argNames:
    - _surf
    - rc
    - col
    argTypes:
    - GF_EVGSurface*
    - GF_IRect
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2056
      start: 2009
    functionDepth: 2
    functionLinenumber: 2009
    functionLinenumberEnd: 2056
    functionName: evg_surface_clear_yuv422p_10
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 1
    functionsReached:
    - memcpy
    - gf_evg_rgb_to_yuv
    - set_u16_le
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_surface_clear_yuv422p_10(GF_EVGSurface *_surf, GF_IRect
      rc, GF_Color col)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: overmask_yuv420p_10_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:2092,1
    - Dst: overmask_yuv420p_10_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:2093,1
    - Dst: overmask_yuv420p_10_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:2094,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:2097,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:2099,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:2101,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 31
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2106
      start: 2063
    functionDepth: 2
    functionLinenumber: 2063
    functionLinenumberEnd: 2106
    functionName: evg_yuv444p_10_fill_const
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - overmask_yuv420p_10_const_run
    - set_u16_le
    linkageType: ''
    returnType: void
    signature: void evg_yuv444p_10_fill_const(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::get_alpha
      Src: /src/gpac/src/evg/raster_yuv.c:2138,1
    - Dst: overmask_yuv420p_10_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:2141,1
    - Dst: overmask_yuv420p_10_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:2142,1
    - Dst: overmask_yuv420p_10_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:2143,1
    - Dst: overmask_yuv420p_10_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:2158,1
    - Dst: overmask_yuv420p_10_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:2159,1
    - Dst: overmask_yuv420p_10_const_run
      Src: /src/gpac/src/evg/raster_yuv.c:2160,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 37
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2163
      start: 2108
    functionDepth: 2
    functionLinenumber: 2108
    functionLinenumberEnd: 2163
    functionName: evg_yuv444p_10_fill_const_a
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - overmask_yuv420p_10_const_run
    - GF_EVGSurface*::get_alpha
    linkageType: ''
    returnType: void
    signature: void evg_yuv444p_10_fill_const_a(s32 y, s32 count, EVG_Span *spans,
      GF_EVGSurface *surf, EVGRasterCtx *rctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::fill_run
      Src: /src/gpac/src/evg/raster_yuv.c:2180,1
    - Dst: overmask_yuv420p_10
      Src: /src/gpac/src/evg/raster_yuv.c:2200,1
    - Dst: overmask_yuv420p_10
      Src: /src/gpac/src/evg/raster_yuv.c:2201,1
    - Dst: overmask_yuv420p_10
      Src: /src/gpac/src/evg/raster_yuv.c:2202,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:2204,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:2205,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:2206,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2215
      start: 2165
    functionDepth: 2
    functionLinenumber: 2165
    functionLinenumberEnd: 2215
    functionName: evg_yuv444p_10_fill_var
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 0
    functionsReached:
    - GF_EVGSurface*::fill_run
    - overmask_yuv420p_10
    - set_u16_le
    linkageType: ''
    returnType: void
    signature: void evg_yuv444p_10_fill_var(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_rgb_to_yuv
      Src: /src/gpac/src/evg/raster_yuv.c:2235,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:2249,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:2250,1
    - Dst: set_u16_le
      Src: /src/gpac/src/evg/raster_yuv.c:2251,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_yuv.c:2254,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_yuv.c:2255,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_yuv.c:2256,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 31
    argCount: 3
    argNames:
    - _surf
    - rc
    - col
    argTypes:
    - GF_EVGSurface*
    - GF_IRect
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2263
      start: 2217
    functionDepth: 2
    functionLinenumber: 2217
    functionLinenumberEnd: 2263
    functionName: evg_surface_clear_yuv444p_10
    functionSourceFile: /src/gpac/src/evg/raster_yuv.c
    functionUses: 1
    functionsReached:
    - memcpy
    - gf_evg_rgb_to_yuv
    - set_u16_le
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_surface_clear_yuv444p_10(GF_EVGSurface *_surf, GF_IRect
      rc, GF_Color col)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionName: mul255
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 30
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE mul255(s32 a, s32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 4
    argNames:
    - dst
    - r
    - g
    - b
    argTypes:
    - u8*
    - u8
    - u8
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 61
    functionName: write_565
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void write_565(u8 *dst, u8 r, u8 g, u8 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:81,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:82,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:83,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:84,1
    - Dst: write_565
      Src: /src/gpac/src/evg/raster_565.c:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 3
    argNames:
    - src
    - dst
    - alpha
    argTypes:
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 86
    functionName: overmask_565
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - write_565
    - mul255
    linkageType: ''
    returnType: void
    signature: void overmask_565(u32 src, u8 *dst, u32 alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:107,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:108,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:109,1
    - Dst: write_565
      Src: /src/gpac/src/evg/raster_565.c:110,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - src
    - dst
    - dst_pitch_x
    - count
    argTypes:
    - u32
    - u8*
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 114
    functionName: overmask_565_const_run
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - write_565
    - mul255
    linkageType: ''
    returnType: void
    signature: void overmask_565_const_run(u32 src, u8 *dst, s32 dst_pitch_x, u32
      count)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_565.c:120,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_565.c:121,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_565.c:122,1
    - Dst: write_565
      Src: /src/gpac/src/evg/raster_565.c:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - y
    - x
    - col
    - surf
    argTypes:
    - s32
    - s32
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 124
    functionName: evg_565_fill_single
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - GF_COL_R
    - GF_COL_B
    - write_565
    - GF_COL_G
    linkageType: ''
    returnType: void
    signature: void evg_565_fill_single(s32 y, s32 x, u32 col, GF_EVGSurface *surf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: overmask_565
      Src: /src/gpac/src/evg/raster_565.c:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - y
    - x
    - coverage
    - col
    - surf
    argTypes:
    - s32
    - s32
    - u8
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 126
    functionDepth: 2
    functionLinenumber: 126
    functionLinenumberEnd: 130
    functionName: evg_565_fill_single_a
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - overmask_565
    linkageType: ''
    returnType: void
    signature: void evg_565_fill_single_a(s32 y, s32 x, u8 coverage, u32 col, GF_EVGSurface
      *surf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_565.c:144,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_565.c:145,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_565.c:146,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:152,1
    - Dst: overmask_565_const_run
      Src: /src/gpac/src/evg/raster_565.c:154,1
    - Dst: write_565
      Src: /src/gpac/src/evg/raster_565.c:157,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 133
    functionDepth: 2
    functionLinenumber: 133
    functionLinenumberEnd: 162
    functionName: evg_565_fill_const
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - overmask_565_const_run
    - GF_COL_R
    - mul255
    - write_565
    linkageType: ''
    returnType: void
    signature: void evg_565_fill_const(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::get_alpha
      Src: /src/gpac/src/evg/raster_565.c:178,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:179,1
    - Dst: overmask_565_const_run
      Src: /src/gpac/src/evg/raster_565.c:181,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:186,1
    - Dst: overmask_565_const_run
      Src: /src/gpac/src/evg/raster_565.c:188,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 164
    functionDepth: 2
    functionLinenumber: 164
    functionLinenumberEnd: 191
    functionName: evg_565_fill_const_a
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - overmask_565_const_run
    - GF_EVGSurface*::get_alpha
    - mul255
    linkageType: ''
    returnType: void
    signature: void evg_565_fill_const_a(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::fill_run
      Src: /src/gpac/src/evg/raster_565.c:205,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_565.c:209,1
    - Dst: overmask_565
      Src: /src/gpac/src/evg/raster_565.c:213,1
    - Dst: write_565
      Src: /src/gpac/src/evg/raster_565.c:215,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_565.c:215,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_565.c:215,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_565.c:215,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 194
    functionDepth: 2
    functionLinenumber: 194
    functionLinenumberEnd: 222
    functionName: evg_565_fill_var
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_EVGSurface*::fill_run
    - overmask_565
    - GF_COL_A
    - GF_COL_R
    - write_565
    linkageType: ''
    returnType: void
    signature: void evg_565_fill_var(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_565.c:236,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_565.c:237,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_565.c:238,1
    - Dst: write_565
      Src: /src/gpac/src/evg/raster_565.c:246,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_565.c:250,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 3
    argNames:
    - surf
    - rc
    - col
    argTypes:
    - GF_EVGSurface*
    - GF_IRect
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 254
    functionName: evg_surface_clear_565
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 1
    functionsReached:
    - memcpy
    - GF_COL_R
    - write_565
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_surface_clear_565(GF_EVGSurface *surf, GF_IRect rc, GF_Color
      col)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 4
    argNames:
    - dst
    - r
    - g
    - b
    argTypes:
    - u8*
    - u8
    - u8
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 262
    functionDepth: 0
    functionLinenumber: 262
    functionLinenumberEnd: 274
    functionName: write_555
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void write_555(u8 *dst, u8 r, u8 g, u8 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:293,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:294,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:295,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:296,1
    - Dst: write_555
      Src: /src/gpac/src/evg/raster_565.c:297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 3
    argNames:
    - src
    - dst
    - alpha
    argTypes:
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 276
    functionDepth: 1
    functionLinenumber: 276
    functionLinenumberEnd: 298
    functionName: overmask_555
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - write_555
    - mul255
    linkageType: ''
    returnType: void
    signature: void overmask_555(u32 src, u8 *dst, u32 alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:318,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:319,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:320,1
    - Dst: write_555
      Src: /src/gpac/src/evg/raster_565.c:321,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - src
    - dst
    - dst_pitch_x
    - count
    argTypes:
    - u32
    - u8*
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 300
    functionDepth: 1
    functionLinenumber: 300
    functionLinenumberEnd: 325
    functionName: overmask_555_const_run
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - write_555
    - mul255
    linkageType: ''
    returnType: void
    signature: void overmask_555_const_run(u32 src, u8 *dst, s32 dst_pitch_x, u32
      count)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_565.c:331,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_565.c:332,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_565.c:333,1
    - Dst: write_555
      Src: /src/gpac/src/evg/raster_565.c:334,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - y
    - x
    - col
    - surf
    argTypes:
    - s32
    - s32
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 328
    functionDepth: 1
    functionLinenumber: 328
    functionLinenumberEnd: 335
    functionName: evg_555_fill_single
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - GF_COL_R
    - write_555
    - GF_COL_B
    - GF_COL_G
    linkageType: ''
    returnType: void
    signature: void evg_555_fill_single(s32 y, s32 x, u32 col, GF_EVGSurface *surf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: overmask_555
      Src: /src/gpac/src/evg/raster_565.c:340,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - y
    - x
    - coverage
    - col
    - surf
    argTypes:
    - s32
    - s32
    - u8
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 337
    functionDepth: 2
    functionLinenumber: 337
    functionLinenumberEnd: 341
    functionName: evg_555_fill_single_a
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - overmask_555
    linkageType: ''
    returnType: void
    signature: void evg_555_fill_single_a(s32 y, s32 x, u8 coverage, u32 col, GF_EVGSurface
      *surf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_565.c:352,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_565.c:353,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_565.c:354,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:361,1
    - Dst: overmask_555_const_run
      Src: /src/gpac/src/evg/raster_565.c:363,1
    - Dst: write_555
      Src: /src/gpac/src/evg/raster_565.c:366,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 343
    functionDepth: 2
    functionLinenumber: 343
    functionLinenumberEnd: 371
    functionName: evg_555_fill_const
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - overmask_555_const_run
    - write_555
    - GF_COL_R
    - mul255
    linkageType: ''
    returnType: void
    signature: void evg_555_fill_const(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::get_alpha
      Src: /src/gpac/src/evg/raster_565.c:387,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:388,1
    - Dst: overmask_555_const_run
      Src: /src/gpac/src/evg/raster_565.c:390,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:395,1
    - Dst: overmask_555_const_run
      Src: /src/gpac/src/evg/raster_565.c:397,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 373
    functionDepth: 2
    functionLinenumber: 373
    functionLinenumberEnd: 400
    functionName: evg_555_fill_const_a
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - overmask_555_const_run
    - GF_EVGSurface*::get_alpha
    - mul255
    linkageType: ''
    returnType: void
    signature: void evg_555_fill_const_a(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::fill_run
      Src: /src/gpac/src/evg/raster_565.c:414,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_565.c:418,1
    - Dst: overmask_555
      Src: /src/gpac/src/evg/raster_565.c:422,1
    - Dst: write_555
      Src: /src/gpac/src/evg/raster_565.c:424,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_565.c:424,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_565.c:424,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_565.c:424,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 403
    functionDepth: 2
    functionLinenumber: 403
    functionLinenumberEnd: 431
    functionName: evg_555_fill_var
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_EVGSurface*::fill_run
    - GF_COL_A
    - write_555
    - GF_COL_R
    - overmask_555
    linkageType: ''
    returnType: void
    signature: void evg_555_fill_var(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_565.c:443,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_565.c:444,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_565.c:445,1
    - Dst: write_555
      Src: /src/gpac/src/evg/raster_565.c:453,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_565.c:457,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 3
    argNames:
    - surf
    - rc
    - col
    argTypes:
    - GF_EVGSurface*
    - GF_IRect
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 461
      start: 433
    functionDepth: 1
    functionLinenumber: 433
    functionLinenumberEnd: 461
    functionName: evg_surface_clear_555
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 1
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - memcpy
    - write_555
    - GF_COL_R
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_surface_clear_555(GF_EVGSurface *surf, GF_IRect rc, GF_Color
      col)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - dst
    - r
    - g
    - b
    argTypes:
    - u8*
    - u8
    - u8
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 468
    functionDepth: 0
    functionLinenumber: 468
    functionLinenumberEnd: 474
    functionName: write_444
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void write_444(u8 *dst, u8 r, u8 g, u8 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:488,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:489,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:490,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:491,1
    - Dst: write_444
      Src: /src/gpac/src/evg/raster_565.c:492,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - dst
    - src
    - alpha
    argTypes:
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 476
    functionDepth: 1
    functionLinenumber: 476
    functionLinenumberEnd: 493
    functionName: overmask_444
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - write_444
    - mul255
    linkageType: ''
    returnType: void
    signature: void overmask_444(u8 *dst, u32 src, u32 alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:512,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:513,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:514,1
    - Dst: write_444
      Src: /src/gpac/src/evg/raster_565.c:515,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 4
    argNames:
    - src
    - dst
    - dst_pitch_x
    - count
    argTypes:
    - u32
    - u8*
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 520
      start: 495
    functionDepth: 1
    functionLinenumber: 495
    functionLinenumberEnd: 520
    functionName: overmask_444_const_run
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - write_444
    - mul255
    linkageType: ''
    returnType: void
    signature: void overmask_444_const_run(u32 src, u8 *dst, s32 dst_pitch_x, u32
      count)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_565.c:526,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_565.c:527,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_565.c:528,1
    - Dst: write_444
      Src: /src/gpac/src/evg/raster_565.c:529,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - y
    - x
    - col
    - surf
    argTypes:
    - s32
    - s32
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 523
    functionDepth: 1
    functionLinenumber: 523
    functionLinenumberEnd: 530
    functionName: evg_444_fill_single
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - GF_COL_R
    - GF_COL_B
    - write_444
    - GF_COL_G
    linkageType: ''
    returnType: void
    signature: void evg_444_fill_single(s32 y, s32 x, u32 col, GF_EVGSurface *surf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: overmask_444
      Src: /src/gpac/src/evg/raster_565.c:535,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - y
    - x
    - coverage
    - col
    - surf
    argTypes:
    - s32
    - s32
    - u8
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 532
    functionDepth: 2
    functionLinenumber: 532
    functionLinenumberEnd: 536
    functionName: evg_444_fill_single_a
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - overmask_444
    linkageType: ''
    returnType: void
    signature: void evg_444_fill_single_a(s32 y, s32 x, u8 coverage, u32 col, GF_EVGSurface
      *surf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_565.c:547,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_565.c:548,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_565.c:549,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:556,1
    - Dst: overmask_444_const_run
      Src: /src/gpac/src/evg/raster_565.c:558,1
    - Dst: write_444
      Src: /src/gpac/src/evg/raster_565.c:561,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 538
    functionDepth: 2
    functionLinenumber: 538
    functionLinenumberEnd: 566
    functionName: evg_444_fill_const
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - write_444
    - GF_COL_R
    - overmask_444_const_run
    - mul255
    linkageType: ''
    returnType: void
    signature: void evg_444_fill_const(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::get_alpha
      Src: /src/gpac/src/evg/raster_565.c:584,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:585,1
    - Dst: overmask_444_const_run
      Src: /src/gpac/src/evg/raster_565.c:587,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:592,1
    - Dst: overmask_444_const_run
      Src: /src/gpac/src/evg/raster_565.c:594,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 568
    functionDepth: 2
    functionLinenumber: 568
    functionLinenumberEnd: 597
    functionName: evg_444_fill_const_a
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - overmask_444_const_run
    - GF_EVGSurface*::get_alpha
    - mul255
    linkageType: ''
    returnType: void
    signature: void evg_444_fill_const_a(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::fill_run
      Src: /src/gpac/src/evg/raster_565.c:611,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_565.c:615,1
    - Dst: overmask_444
      Src: /src/gpac/src/evg/raster_565.c:619,1
    - Dst: write_444
      Src: /src/gpac/src/evg/raster_565.c:621,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_565.c:621,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_565.c:621,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_565.c:621,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 600
    functionDepth: 2
    functionLinenumber: 600
    functionLinenumberEnd: 628
    functionName: evg_444_fill_var
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_EVGSurface*::fill_run
    - write_444
    - GF_COL_A
    - GF_COL_R
    - overmask_444
    linkageType: ''
    returnType: void
    signature: void evg_444_fill_var(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_565.c:641,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_565.c:642,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_565.c:643,1
    - Dst: write_444
      Src: /src/gpac/src/evg/raster_565.c:651,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_565.c:655,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 3
    argNames:
    - surf
    - rc
    - col
    argTypes:
    - GF_EVGSurface*
    - GF_IRect
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 659
      start: 630
    functionDepth: 1
    functionLinenumber: 630
    functionLinenumberEnd: 659
    functionName: evg_surface_clear_444
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 1
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - write_444
    - memcpy
    - GF_COL_R
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_surface_clear_444(GF_EVGSurface *surf, GF_IRect rc, GF_Color
      col)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - dst
    - r
    - g
    - b
    argTypes:
    - u8*
    - u8
    - u8
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 669
      start: 666
    functionDepth: 0
    functionLinenumber: 666
    functionLinenumberEnd: 669
    functionName: write_332
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void write_332(u8 *dst, u8 r, u8 g, u8 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:683,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:684,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:685,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:686,1
    - Dst: write_332
      Src: /src/gpac/src/evg/raster_565.c:687,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - dst
    - src
    - alpha
    argTypes:
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 671
    functionDepth: 1
    functionLinenumber: 671
    functionLinenumberEnd: 688
    functionName: overmask_332
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - write_332
    - mul255
    linkageType: ''
    returnType: void
    signature: void overmask_332(u8 *dst, u32 src, u32 alpha)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:703,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:704,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:705,1
    - Dst: write_332
      Src: /src/gpac/src/evg/raster_565.c:706,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - src
    - dst
    - dst_pitch_x
    - count
    argTypes:
    - u32
    - u8*
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 690
    functionDepth: 1
    functionLinenumber: 690
    functionLinenumberEnd: 711
    functionName: overmask_332_const_run
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - write_332
    - mul255
    linkageType: ''
    returnType: void
    signature: void overmask_332_const_run(u32 src, u8 *dst, s32 dst_pitch_x, u32
      count)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_565.c:717,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_565.c:718,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_565.c:719,1
    - Dst: write_332
      Src: /src/gpac/src/evg/raster_565.c:720,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - y
    - x
    - col
    - surf
    argTypes:
    - s32
    - s32
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 721
      start: 714
    functionDepth: 1
    functionLinenumber: 714
    functionLinenumberEnd: 721
    functionName: evg_332_fill_single
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - GF_COL_R
    - GF_COL_B
    - write_332
    - GF_COL_G
    linkageType: ''
    returnType: void
    signature: void evg_332_fill_single(s32 y, s32 x, u32 col, GF_EVGSurface *surf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: overmask_332
      Src: /src/gpac/src/evg/raster_565.c:726,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - y
    - x
    - coverage
    - col
    - surf
    argTypes:
    - s32
    - s32
    - u8
    - u32
    - GF_EVGSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 727
      start: 723
    functionDepth: 2
    functionLinenumber: 723
    functionLinenumberEnd: 727
    functionName: evg_332_fill_single_a
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - overmask_332
    linkageType: ''
    returnType: void
    signature: void evg_332_fill_single_a(s32 y, s32 x, u8 coverage, u32 col, GF_EVGSurface
      *surf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_565.c:738,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_565.c:739,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_565.c:740,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:747,1
    - Dst: overmask_332_const_run
      Src: /src/gpac/src/evg/raster_565.c:749,1
    - Dst: write_332
      Src: /src/gpac/src/evg/raster_565.c:752,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 757
      start: 729
    functionDepth: 2
    functionLinenumber: 729
    functionLinenumberEnd: 757
    functionName: evg_332_fill_const
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - write_332
    - GF_COL_R
    - mul255
    - overmask_332_const_run
    linkageType: ''
    returnType: void
    signature: void evg_332_fill_const(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::get_alpha
      Src: /src/gpac/src/evg/raster_565.c:775,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:776,1
    - Dst: overmask_332_const_run
      Src: /src/gpac/src/evg/raster_565.c:778,1
    - Dst: mul255
      Src: /src/gpac/src/evg/raster_565.c:783,1
    - Dst: overmask_332_const_run
      Src: /src/gpac/src/evg/raster_565.c:785,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 788
      start: 759
    functionDepth: 2
    functionLinenumber: 759
    functionLinenumberEnd: 788
    functionName: evg_332_fill_const_a
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - overmask_332_const_run
    - GF_EVGSurface*::get_alpha
    - mul255
    linkageType: ''
    returnType: void
    signature: void evg_332_fill_const_a(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_EVGSurface*::fill_run
      Src: /src/gpac/src/evg/raster_565.c:802,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/evg/raster_565.c:806,1
    - Dst: overmask_332
      Src: /src/gpac/src/evg/raster_565.c:810,1
    - Dst: write_332
      Src: /src/gpac/src/evg/raster_565.c:812,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_565.c:812,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_565.c:812,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_565.c:812,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 5
    argNames:
    - y
    - count
    - spans
    - surf
    - rctx
    argTypes:
    - s32
    - s32
    - EVG_Span*
    - GF_EVGSurface*
    - EVGRasterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 791
    functionDepth: 2
    functionLinenumber: 791
    functionLinenumberEnd: 819
    functionName: evg_332_fill_var
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_EVGSurface*::fill_run
    - write_332
    - GF_COL_A
    - GF_COL_R
    - overmask_332
    linkageType: ''
    returnType: void
    signature: void evg_332_fill_var(s32 y, s32 count, EVG_Span *spans, GF_EVGSurface
      *surf, EVGRasterCtx *rctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/evg/raster_565.c:832,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/evg/raster_565.c:833,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/evg/raster_565.c:834,1
    - Dst: write_332
      Src: /src/gpac/src/evg/raster_565.c:842,1
    - Dst: memcpy
      Src: /src/gpac/src/evg/raster_565.c:846,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 3
    argNames:
    - surf
    - rc
    - col
    argTypes:
    - GF_EVGSurface*
    - GF_IRect
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 850
      start: 821
    functionDepth: 1
    functionLinenumber: 821
    functionLinenumberEnd: 850
    functionName: evg_surface_clear_332
    functionSourceFile: /src/gpac/src/evg/raster_565.c
    functionUses: 1
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - write_332
    - memcpy
    - GF_COL_R
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_surface_clear_332(GF_EVGSurface *surf, GF_IRect rc, GF_Color
      col)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/media.c:41,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/media.c:43,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 4
    argNames:
    - mdia
    - SampleDescIndex
    - out_entry
    - dataRefIndex
    argTypes:
    - GF_MediaBox*
    - u32
    - GF_SampleEntryBox**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 49
    functionName: Media_GetSampleDesc
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Media_GetSampleDesc(GF_MediaBox *mdia, u32 SampleDescIndex,
      GF_SampleEntryBox **out_entry, u32 *dataRefIndex)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: stbl_findEntryForTime
      Src: /src/gpac/src/isomedia/media.c:59,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/media.c:64,1
    - Dst: stbl_GetSampleInfos
      Src: /src/gpac/src/isomedia/media.c:70,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 3
    argNames:
    - mdia
    - DTS
    - sampleDescIndex
    argTypes:
    - GF_MediaBox*
    - u64
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 71
    functionName: Media_GetSampleDescIndex
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - stbl_findEntryForTime
    - stbl_GetSampleInfos
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Media_GetSampleDescIndex(GF_MediaBox *mdia, u64 DTS, u32 *sampleDescIndex)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/media.c:75,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/media.c:91,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/media.c:92,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/isomedia/media.c:93,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/media.c:94,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/media.c:95,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/media.c:97,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/isomedia/media.c:98,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/media.c:99,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/media.c:100,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/media.c:101,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/isomedia/media.c:105,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/isomedia/media.c:106,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/isomedia/media.c:107,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/isomedia/media.c:108,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/isomedia/media.c:109,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/isomedia/media.c:110,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/media.c:115,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/media.c:117,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/media.c:118,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/media.c:121,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/media.c:122,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/media.c:123,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/media.c:124,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/media.c:125,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/media.c:138,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/media.c:138,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 58
    argCount: 4
    argNames:
    - stbl
    - type
    - entry
    - out_esd
    argTypes:
    - GF_SampleTableBox*
    - u32
    - GF_GenericAudioSampleEntryBox*
    - GF_ESD**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 142
    functionName: gf_isom_get_3gpp_audio_esd
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_bs_new
    - gf_odf_desc_esd_new
    - gf_bs_get_content
    - strcpy
    - gf_bs_write_u16
    - GF_LOG
    - gf_bs_write_u16_le
    - gf_bs_del
    - gf_bs_write_data
    - memset
    - gf_bs_write_u32_le
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_get_3gpp_audio_esd(GF_SampleTableBox *stbl, u32 type,
      GF_GenericAudioSampleEntryBox *entry, GF_ESD **out_esd)
  - BBCount: 107
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/media.c:154,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/media.c:158,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/media.c:171,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/media.c:177,1
    - Dst: AVC_RewriteESDescriptorEx
      Src: /src/gpac/src/isomedia/media.c:220,1
    - Dst: AVC_RewriteESDescriptorEx
      Src: /src/gpac/src/isomedia/media.c:222,1
    - Dst: HEVC_RewriteESDescriptorEx
      Src: /src/gpac/src/isomedia/media.c:230,1
    - Dst: HEVC_RewriteESDescriptorEx
      Src: /src/gpac/src/isomedia/media.c:232,1
    - Dst: AV1_RewriteESDescriptorEx
      Src: /src/gpac/src/isomedia/media.c:239,1
    - Dst: VP9_RewriteESDescriptorEx
      Src: /src/gpac/src/isomedia/media.c:247,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/media.c:260,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/media.c:273,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/media.c:277,1
    - Dst: gf_m4a_write_config
      Src: /src/gpac/src/isomedia/media.c:280,1
    - Dst: gf_isom_get_ttxt_esd
      Src: /src/gpac/src/isomedia/media.c:301,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/media.c:318,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/media.c:323,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/media.c:324,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/media.c:325,1
    - Dst: gf_isom_get_3gpp_audio_esd
      Src: /src/gpac/src/isomedia/media.c:343,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/media.c:358,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/media.c:361,1
    - Dst: gf_odf_opus_cfg_write
      Src: /src/gpac/src/isomedia/media.c:364,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/media.c:374,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/media.c:387,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/media.c:403,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/media.c:408,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/media.c:410,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/media.c:424,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/media.c:432,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/media.c:434,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/media.c:435,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/media.c:436,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/media.c:437,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/media.c:439,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/media.c:441,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/media.c:442,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/media.c:457,1
    CyclomaticComplexity: 84
    EdgeCount: 84
    ICount: 274
    argCount: 4
    argNames:
    - mdia
    - sampleDescIndex
    - out_esd
    - true_desc_only
    argTypes:
    - GF_MediaBox*
    - u32
    - GF_ESD**
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 144
    functionDepth: 2
    functionLinenumber: 144
    functionLinenumberEnd: 460
    functionName: Media_GetESD
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_write_u16
    - gf_odf_desc_copy
    - gf_list_count
    - memset
    - gf_odf_opus_cfg_write
    - VP9_RewriteESDescriptorEx
    - gf_isom_box_find_child
    - gf_list_get
    - AV1_RewriteESDescriptorEx
    - gf_odf_desc_esd_new
    - memcpy
    - gf_bs_get_content
    - GF_LOG
    - gf_isom_get_ttxt_esd
    - gf_bs_write_data
    - HEVC_RewriteESDescriptorEx
    - gf_m4a_write_config
    - gf_malloc
    - strlen
    - AVC_RewriteESDescriptorEx
    - gf_bs_del
    - gf_isom_get_3gpp_audio_esd
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Media_GetESD(GF_MediaBox *mdia, u32 sampleDescIndex, GF_ESD
      **out_esd, Bool true_desc_only)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/media.c:468,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - stsh
    - sampleNumber
    argTypes:
    - GF_ShadowSyncBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 462
    functionDepth: 1
    functionLinenumber: 462
    functionLinenumberEnd: 473
    functionName: Media_IsSampleSyncShadow
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: Bool
    signature: Bool Media_IsSampleSyncShadow(GF_ShadowSyncBox *stsh, u32 sampleNumber)
  - BBCount: 63
    BranchProfiles: []
    Callsites:
    - Dst: stbl_GetSampleInfos
      Src: /src/gpac/src/isomedia/media.c:495,1
    - Dst: stbl_GetSampleDTS_and_Duration
      Src: /src/gpac/src/isomedia/media.c:505,1
    - Dst: stbl_GetSampleCTS
      Src: /src/gpac/src/isomedia/media.c:512,1
    - Dst: stbl_GetSampleSize
      Src: /src/gpac/src/isomedia/media.c:518,1
    - Dst: stbl_GetSampleRAP
      Src: /src/gpac/src/isomedia/media.c:522,1
    - Dst: stbl_GetSampleDepType
      Src: /src/gpac/src/isomedia/media.c:531,1
    - Dst: Media_IsSampleSyncShadow
      Src: /src/gpac/src/isomedia/media.c:545,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/media.c:557,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/media.c:562,1
    - Dst: gf_isom_datamap_open
      Src: /src/gpac/src/isomedia/media.c:588,1
    - Dst: gf_isom_datamap_open
      Src: /src/gpac/src/isomedia/media.c:593,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/media.c:598,1
    - Dst: gf_bs_get_refreshed_size
      Src: /src/gpac/src/isomedia/media.c:606,1
    - Dst: GF_MediaBox*::mediaTrack::sample_alloc_cbk
      Src: /src/gpac/src/isomedia/media.c:628,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/media.c:630,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/media.c:633,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/media.c:639,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/isomedia/media.c:642,1
    - Dst: gf_bs_get_refreshed_size
      Src: /src/gpac/src/isomedia/media.c:645,1
    - Dst: gf_isom_datamap_get_data
      Src: /src/gpac/src/isomedia/media.c:651,1
    - Dst: Media_RewriteODFrame
      Src: /src/gpac/src/isomedia/media.c:672,1
    - Dst: gf_isom_is_nalu_based_entry
      Src: /src/gpac/src/isomedia/media.c:676,1
    - Dst: gf_isom_is_encrypted_entry
      Src: /src/gpac/src/isomedia/media.c:679,1
    - Dst: gf_isom_nalu_sample_rewrite
      Src: /src/gpac/src/isomedia/media.c:680,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/isomedia/media.c:683,1
    - Dst: gf_isom_nalu_get_sample_sap
      Src: /src/gpac/src/isomedia/media.c:684,1
    - Dst: stbl_GetSampleDTS
      Src: /src/gpac/src/isomedia/media.c:697,1
    - Dst: gf_isom_rewrite_text_sample
      Src: /src/gpac/src/isomedia/media.c:700,1
    CyclomaticComplexity: 77
    EdgeCount: 77
    ICount: 181
    argCount: 7
    argNames:
    - mdia
    - sampleNumber
    - samp
    - sIDX
    - no_data
    - out_offset
    - ext_realloc
    argTypes:
    - GF_MediaBox*
    - u32
    - GF_ISOSample**
    - u32*
    - Bool
    - u64*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 704
      start: 475
    functionDepth: 2
    functionLinenumber: 475
    functionLinenumberEnd: 704
    functionName: Media_GetSample
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - Media_IsSampleSyncShadow
    - gf_bs_get_size
    - gf_isom_is_nalu_based_entry
    - memset
    - stbl_GetSampleDepType
    - GF_MediaBox*::mediaTrack::sample_alloc_cbk
    - gf_realloc
    - Media_RewriteODFrame
    - gf_bs_get_refreshed_size
    - gf_list_get
    - Media_GetSampleDesc
    - stbl_GetSampleCTS
    - gf_isom_is_encrypted_entry
    - gf_isom_nalu_sample_rewrite
    - gf_isom_rewrite_text_sample
    - stbl_GetSampleRAP
    - gf_isom_datamap_open
    - gf_isom_datamap_get_data
    - gf_isom_nalu_get_sample_sap
    - stbl_GetSampleDTS_and_Duration
    - gf_malloc
    - stbl_GetSampleSize
    - stbl_GetSampleDTS
    - stbl_GetSampleInfos
    - gf_sys_old_arch_compat
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Media_GetSample(GF_MediaBox *mdia, u32 sampleNumber, GF_ISOSample
      **samp, u32 *sIDX, Bool no_data, u64 *out_offset, Bool ext_realloc)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/media.c:713,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/media.c:715,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/media.c:731,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/media.c:733,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/media.c:736,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 2
    argNames:
    - mdia
    - dataEntryIndex
    argTypes:
    - GF_MediaBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 708
    functionDepth: 1
    functionLinenumber: 708
    functionLinenumberEnd: 738
    functionName: Media_CheckDataEntry
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_datamap_del
    - gf_list_get
    - gf_isom_datamap_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Media_CheckDataEntry(GF_MediaBox *mdia, u32 dataEntryIndex)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/media.c:747,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/media.c:754,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/media.c:757,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 18
    argCount: 2
    argNames:
    - mdia
    - StreamDescIndex
    argTypes:
    - GF_MediaBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 741
    functionDepth: 2
    functionLinenumber: 741
    functionLinenumberEnd: 765
    functionName: Media_IsSelfContained
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - Media_GetSampleDesc
    - gf_list_get
    - GF_LOG
    linkageType: ''
    returnType: Bool
    signature: Bool Media_IsSelfContained(GF_MediaBox *mdia, u32 StreamDescIndex)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/media.c:773,1
    - Dst: Media_IsSelfContained
      Src: /src/gpac/src/isomedia/media.c:775,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - mdia
    argTypes:
    - GF_MediaBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 781
      start: 767
    functionDepth: 3
    functionLinenumber: 767
    functionLinenumberEnd: 781
    functionName: Media_SelfContainedType
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - Media_IsSelfContained
    linkageType: ''
    returnType: GF_ISOMDataRefAllType
    signature: GF_ISOMDataRefAllType Media_SelfContainedType(GF_MediaBox *mdia)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: stbl_GetSampleRAP
      Src: /src/gpac/src/isomedia/media.c:804,1
    - Dst: stbl_SearchSAPs
      Src: /src/gpac/src/isomedia/media.c:811,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 33
    argCount: 4
    argNames:
    - stbl
    - searchFromSample
    - sampleNumber
    - mode
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 786
    functionDepth: 1
    functionLinenumber: 786
    functionLinenumberEnd: 830
    functionName: Media_FindSyncSample
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - stbl_GetSampleRAP
    - stbl_SearchSAPs
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Media_FindSyncSample(GF_SampleTableBox *stbl, u32 searchFromSample,
      u32 *sampleNumber, u8 mode)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/media.c:841,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/media.c:852,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/media.c:859,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 26
    argCount: 4
    argNames:
    - dref
    - URLname
    - URNname
    - dataRefIndex
    argTypes:
    - GF_DataReferenceBox*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 866
      start: 833
    functionDepth: 1
    functionLinenumber: 833
    functionLinenumberEnd: 866
    functionName: Media_FindDataRef
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - strcmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Media_FindDataRef(GF_DataReferenceBox *dref, char *URLname,
      char *URNname, u32 *dataRefIndex)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: Track_IsMPEG4Stream
      Src: /src/gpac/src/isomedia/media.c:886,1
    - Dst: Media_GetESD
      Src: /src/gpac/src/isomedia/media.c:887,1
    - Dst: stbl_GetSampleDTS_and_Duration
      Src: /src/gpac/src/isomedia/media.c:894,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/isomedia/media.c:899,1
    - Dst: stbl_GetSampleCTS
      Src: /src/gpac/src/isomedia/media.c:905,1
    - Dst: stbl_GetSampleCTS
      Src: /src/gpac/src/isomedia/media.c:919,1
    - Dst: stbl_GetSampleDTS_and_Duration
      Src: /src/gpac/src/isomedia/media.c:921,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 41
    argCount: 1
    argNames:
    - trak
    argTypes:
    - GF_TrackBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 929
      start: 869
    functionDepth: 3
    functionLinenumber: 869
    functionLinenumberEnd: 929
    functionName: Media_SetDuration
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - stbl_GetSampleCTS
    - Media_GetESD
    - Track_IsMPEG4Stream
    - gf_sys_old_arch_compat
    - stbl_GetSampleDTS_and_Duration
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Media_SetDuration(GF_TrackBox *trak)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/isomedia/media.c:939,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/media.c:942,1
    - Dst: strrchr
      Src: /src/gpac/src/isomedia/media.c:944,1
    - Dst: strrchr
      Src: /src/gpac/src/isomedia/media.c:945,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/media.c:949,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/media.c:952,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/media.c:953,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/media.c:956,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 20
    argCount: 3
    argNames:
    - dref_entry
    - origName
    - finalName
    argTypes:
    - GF_DataEntryURLBox*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 961
      start: 936
    functionDepth: 1
    functionLinenumber: 936
    functionLinenumberEnd: 961
    functionName: Media_SetDrefURL
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - strrchr
    - GF_LOG
    - strstr
    - strncmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Media_SetDrefURL(GF_DataEntryURLBox *dref_entry, const char
      *origName, const char *finalName)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/media.c:970,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/media.c:977,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/media.c:980,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/media.c:984,1
    - Dst: Media_SetDrefURL
      Src: /src/gpac/src/isomedia/media.c:988,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/media.c:990,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/media.c:993,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/media.c:997,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/media.c:1000,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/media.c:1000,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/media.c:1002,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/media.c:1005,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/media.c:1008,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/media.c:1008,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/media.c:1010,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/media.c:1013,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/media.c:1015,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 48
    argCount: 5
    argNames:
    - movie
    - dref
    - URLname
    - URNname
    - dataRefIndex
    argTypes:
    - GF_ISOFile*
    - GF_DataReferenceBox*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1019
      start: 964
    functionDepth: 2
    functionLinenumber: 964
    functionLinenumberEnd: 1019
    functionName: Media_CreateDataRef
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - Media_SetDrefURL
    - strcpy
    - strlen
    - gf_isom_box_new_parent
    - gf_list_count
    - strcmp
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Media_CreateDataRef(GF_ISOFile *movie, GF_DataReferenceBox *dref,
      char *URLname, char *URNname, u32 *dataRefIndex)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: stbl_AddDTS
      Src: /src/gpac/src/isomedia/media.c:1032,1
    - Dst: stbl_AddSize
      Src: /src/gpac/src/isomedia/media.c:1036,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/media.c:1043,1
    - Dst: stbl_AddCTS
      Src: /src/gpac/src/isomedia/media.c:1047,1
    - Dst: stbl_AddCTS
      Src: /src/gpac/src/isomedia/media.c:1050,1
    - Dst: stbl_AddRAP
      Src: /src/gpac/src/isomedia/media.c:1058,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/media.c:1064,1
    - Dst: stbl_AddRAP
      Src: /src/gpac/src/isomedia/media.c:1069,1
    - Dst: stbl_AddRedundant
      Src: /src/gpac/src/isomedia/media.c:1076,1
    - Dst: stbl_AddChunkOffset
      Src: /src/gpac/src/isomedia/media.c:1082,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/media.c:1088,1
    - Dst: stbl_AddShadow
      Src: /src/gpac/src/isomedia/media.c:1091,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 63
    argCount: 5
    argNames:
    - mdia
    - data_offset
    - sample
    - StreamDescIndex
    - syncShadowNumber
    argTypes:
    - GF_MediaBox*
    - u64
    - GF_ISOSample*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1092
      start: 1022
    functionDepth: 1
    functionLinenumber: 1022
    functionLinenumberEnd: 1092
    functionName: Media_AddSample
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - stbl_AddSize
    - stbl_AddDTS
    - stbl_AddChunkOffset
    - stbl_AddShadow
    - gf_isom_box_new_parent
    - stbl_AddRAP
    - stbl_AddRedundant
    - stbl_AddCTS
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Media_AddSample(GF_MediaBox *mdia, u64 data_offset, const GF_ISOSample
      *sample, u32 StreamDescIndex, u32 syncShadowNumber)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: stbl_SetSampleSize
      Src: /src/gpac/src/isomedia/media.c:1102,1
    - Dst: stbl_SetChunkOffset
      Src: /src/gpac/src/isomedia/media.c:1103,1
    - Dst: stbl_SetSampleCTS
      Src: /src/gpac/src/isomedia/media.c:1108,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/media.c:1112,1
    - Dst: stbl_AddCTS
      Src: /src/gpac/src/isomedia/media.c:1114,1
    - Dst: stbl_SetSampleRAP
      Src: /src/gpac/src/isomedia/media.c:1119,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/media.c:1123,1
    - Dst: stbl_AddRAP
      Src: /src/gpac/src/isomedia/media.c:1127,1
    - Dst: stbl_SetRedundant
      Src: /src/gpac/src/isomedia/media.c:1132,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 6
    argNames:
    - mdia
    - sampleNumber
    - size
    - CTS
    - offset
    - isRap
    argTypes:
    - GF_MediaBox*
    - u32
    - u32
    - s32
    - u64
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1135
      start: 1095
    functionDepth: 1
    functionLinenumber: 1095
    functionLinenumberEnd: 1135
    functionName: UpdateSample
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - stbl_SetChunkOffset
    - stbl_SetSampleRAP
    - gf_isom_box_new_parent
    - stbl_SetRedundant
    - stbl_AddRAP
    - stbl_SetSampleCTS
    - stbl_AddCTS
    - stbl_SetSampleSize
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err UpdateSample(GF_MediaBox *mdia, u32 sampleNumber, u32 size,
      s32 CTS, u64 offset, u8 isRap)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/media.c:1154,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/media.c:1162,1
    - Dst: stbl_unpackCTS
      Src: /src/gpac/src/isomedia/media.c:1166,1
    - Dst: stbl_AddDTS
      Src: /src/gpac/src/isomedia/media.c:1167,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/media.c:1169,1
    - Dst: UpdateSample
      Src: /src/gpac/src/isomedia/media.c:1172,1
    - Dst: stbl_GetSampleDTS
      Src: /src/gpac/src/isomedia/media.c:1176,1
    - Dst: stbl_GetSampleInfos
      Src: /src/gpac/src/isomedia/media.c:1182,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/media.c:1185,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/media.c:1187,1
    - Dst: gf_isom_datamap_get_offset
      Src: /src/gpac/src/isomedia/media.c:1193,1
    - Dst: gf_isom_datamap_add_data
      Src: /src/gpac/src/isomedia/media.c:1195,1
    - Dst: stbl_SetSampleSize
      Src: /src/gpac/src/isomedia/media.c:1200,1
    - Dst: stbl_SetChunkOffset
      Src: /src/gpac/src/isomedia/media.c:1201,1
    - Dst: UpdateSample
      Src: /src/gpac/src/isomedia/media.c:1203,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 52
    argCount: 4
    argNames:
    - mdia
    - sampleNumber
    - sample
    - data_only
    argTypes:
    - GF_MediaBox*
    - u32
    - GF_ISOSample*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1204
      start: 1137
    functionDepth: 2
    functionLinenumber: 1137
    functionLinenumberEnd: 1204
    functionName: Media_UpdateSample
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_box_del_parent
    - gf_list_get
    - stbl_SetChunkOffset
    - GF_LOG
    - stbl_AddDTS
    - UpdateSample
    - stbl_unpackCTS
    - gf_isom_datamap_get_offset
    - stbl_GetSampleDTS
    - stbl_GetSampleInfos
    - stbl_SetSampleSize
    - Media_GetSampleDesc
    - gf_isom_datamap_add_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Media_UpdateSample(GF_MediaBox *mdia, u32 sampleNumber, GF_ISOSample
      *sample, Bool data_only)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: stbl_GetSampleDTS
      Src: /src/gpac/src/isomedia/media.c:1218,1
    - Dst: stbl_GetSampleInfos
      Src: /src/gpac/src/isomedia/media.c:1223,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/media.c:1226,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/media.c:1228,1
    - Dst: UpdateSample
      Src: /src/gpac/src/isomedia/media.c:1235,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 4
    argNames:
    - mdia
    - sampleNumber
    - sample
    - data_offset
    argTypes:
    - GF_MediaBox*
    - u32
    - GF_ISOSample*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1236
      start: 1206
    functionDepth: 2
    functionLinenumber: 1206
    functionLinenumberEnd: 1236
    functionName: Media_UpdateSampleReference
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - UpdateSample
    - stbl_GetSampleDTS
    - stbl_GetSampleInfos
    - Media_GetSampleDesc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Media_UpdateSampleReference(GF_MediaBox *mdia, u32 sampleNumber,
      GF_ISOSample *sample, u64 data_offset)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 38
    functionName: gppc_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *gppc_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: gppc_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gppc_box_del(GF_Box *s)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:52,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:54,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:55,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:56,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:60,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:61,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:62,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:65,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:66,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:67,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:68,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:73,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:74,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 78
    functionName: gppc_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - memset
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gppc_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:86,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:89,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:90,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:93,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:94,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:98,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:99,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:100,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:105,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 109
    functionName: gppc_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    - gf_bs_write_u8
    - gf_bs_write_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gppc_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 150
    functionName: gppc_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gppc_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 159
    functionName: ftab_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *ftab_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:166,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:167,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:169,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 170
    functionName: ftab_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void ftab_box_del(GF_Box *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:175,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:176,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:179,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:183,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:186,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:189,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:190,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:191,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:193,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:194,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:196,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 201
    functionName: ftab_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - GF_LOG
    - memset
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - gf_bs_read_u8
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ftab_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:209,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:211,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:213,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:215,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:216,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:217,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:219,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 204
    functionDepth: 1
    functionLinenumber: 204
    functionLinenumberEnd: 223
    functionName: ftab_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u16
    - gf_bs_write_data
    - gf_bs_write_u8
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ftab_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:232,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 235
    functionName: ftab_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ftab_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:243,1
    - Dst: gf_isom_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 241
    functionDepth: 1
    functionLinenumber: 241
    functionLinenumberEnd: 246
    functionName: text_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_entry_init
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *text_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_predestroy
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:251,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:254,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:255,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 248
    functionDepth: 1
    functionLinenumber: 248
    functionLinenumberEnd: 256
    functionName: text_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_sample_entry_predestroy
    linkageType: ''
    returnType: void
    signature: void text_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:260,1
    - Dst: gf_isom_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 258
    functionDepth: 1
    functionLinenumber: 258
    functionLinenumberEnd: 263
    functionName: tx3g_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_entry_init
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tx3g_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_predestroy
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:267,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 265
    functionDepth: 1
    functionLinenumber: 265
    functionLinenumberEnd: 269
    functionName: tx3g_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_sample_entry_predestroy
    linkageType: ''
    returnType: void
    signature: void tx3g_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:275,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:276,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:277,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:278,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 271
    functionDepth: 1
    functionLinenumber: 271
    functionLinenumberEnd: 287
    functionName: gpp_read_rgba
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    linkageType: ''
    returnType: u32
    signature: u32 gpp_read_rgba(GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:292,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:293,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:294,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - bs
    - rec
    argTypes:
    - GF_BitStream*
    - GF_BoxRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 290
    functionDepth: 1
    functionLinenumber: 290
    functionLinenumberEnd: 296
    functionName: gpp_read_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u16
    linkageType: ''
    returnType: void
    signature: void gpp_read_box(GF_BitStream *bs, GF_BoxRecord *rec)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:301,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:302,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:303,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:304,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:305,1
    - Dst: gpp_read_rgba
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:306,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - rec
    argTypes:
    - GF_BitStream*
    - GF_StyleRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 299
    functionDepth: 2
    functionLinenumber: 299
    functionLinenumberEnd: 307
    functionName: gpp_read_style
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gpp_read_rgba
    - gf_bs_read_u8
    - gf_bs_read_u16
    linkageType: ''
    returnType: void
    signature: void gpp_read_style(GF_BitStream *bs, GF_StyleRecord *rec)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:314,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 309
    functionDepth: 1
    functionLinenumber: 309
    functionLinenumberEnd: 320
    functionName: tx3g_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tx3g_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:327,1
    - Dst: gf_isom_base_sample_entry_read
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:329,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:332,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:333,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:334,1
    - Dst: gpp_read_rgba
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:335,1
    - Dst: gpp_read_box
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:336,1
    - Dst: gpp_read_style
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:337,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:340,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 322
    functionDepth: 3
    functionLinenumber: 322
    functionLinenumberEnd: 341
    functionName: tx3g_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gpp_read_box
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_isom_base_sample_entry_read
    - gpp_read_rgba
    - gpp_read_style
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tx3g_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:350,1
    - Dst: gf_isom_base_sample_entry_read
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:351,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:361,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:364,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:366,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:367,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:368,1
    - Dst: gpp_read_box
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:369,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:370,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:371,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:372,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:373,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:374,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:375,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:381,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:382,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:387,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:388,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:398,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:400,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:407,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:411,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:415,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:418,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:419,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:425,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:429,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:431,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:435,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 75
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 344
    functionDepth: 2
    functionLinenumber: 344
    functionLinenumberEnd: 436
    functionName: text_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_bs_peek_bits
    - gf_bs_read_u32
    - GF_LOG
    - gpp_read_box
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - gf_isom_base_sample_entry_read
    - gf_bs_read_u8
    - gf_malloc
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err text_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:440,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:441,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:442,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - bs
    - col
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 438
    functionDepth: 1
    functionLinenumber: 438
    functionLinenumberEnd: 444
    functionName: gpp_write_rgba
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u8
    linkageType: ''
    returnType: void
    signature: void gpp_write_rgba(GF_BitStream *bs, u32 col)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:448,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:449,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:450,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:451,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - bs
    - rec
    argTypes:
    - GF_BitStream*
    - GF_BoxRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 446
    functionDepth: 1
    functionLinenumber: 446
    functionLinenumberEnd: 452
    functionName: gpp_write_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    linkageType: ''
    returnType: void
    signature: void gpp_write_box(GF_BitStream *bs, GF_BoxRecord *rec)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:457,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:458,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:459,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:460,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:461,1
    - Dst: gpp_write_rgba
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:462,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - rec
    argTypes:
    - GF_BitStream*
    - GF_StyleRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 463
      start: 455
    functionDepth: 2
    functionLinenumber: 455
    functionLinenumberEnd: 463
    functionName: gpp_write_style
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_bs_write_u8
    - gpp_write_rgba
    linkageType: ''
    returnType: void
    signature: void gpp_write_style(GF_BitStream *bs, GF_StyleRecord *rec)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:472,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:474,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:475,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:476,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:477,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:478,1
    - Dst: gpp_write_rgba
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:479,1
    - Dst: gpp_write_box
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:480,1
    - Dst: gpp_write_style
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:481,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 467
    functionDepth: 3
    functionLinenumber: 467
    functionLinenumberEnd: 483
    functionName: tx3g_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u16
    - gpp_write_rgba
    - gf_bs_write_data
    - gpp_write_box
    - gf_bs_write_u32
    - gf_bs_write_u8
    - gpp_write_style
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tx3g_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:491,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:493,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:494,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:496,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:497,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:498,1
    - Dst: gpp_write_box
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:499,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:500,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:501,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:502,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:503,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:504,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:505,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:507,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:508,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:509,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:511,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 514
      start: 485
    functionDepth: 2
    functionLinenumber: 485
    functionLinenumberEnd: 514
    functionName: text_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u16
    - strlen
    - gf_bs_write_data
    - gpp_write_box
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err text_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 516
    functionDepth: 0
    functionLinenumber: 516
    functionLinenumberEnd: 521
    functionName: tx3g_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tx3g_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:531,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 523
    functionDepth: 0
    functionLinenumber: 523
    functionLinenumberEnd: 533
    functionName: text_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err text_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:539,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 537
    functionDepth: 1
    functionLinenumber: 537
    functionLinenumberEnd: 541
    functionName: styl_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *styl_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:546,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:547,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 543
    functionDepth: 0
    functionLinenumber: 543
    functionLinenumberEnd: 548
    functionName: styl_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void styl_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:554,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:555,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:561,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:564,1
    - Dst: gpp_read_style
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:565,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 569
      start: 550
    functionDepth: 3
    functionLinenumber: 550
    functionLinenumberEnd: 569
    functionName: styl_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gpp_read_style
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err styl_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:577,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:580,1
    - Dst: gpp_write_style
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:581,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 583
      start: 572
    functionDepth: 3
    functionLinenumber: 572
    functionLinenumberEnd: 583
    functionName: styl_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_box_write_header
    - gpp_write_style
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err styl_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 591
      start: 585
    functionDepth: 0
    functionLinenumber: 585
    functionLinenumberEnd: 591
    functionName: styl_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err styl_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:597,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 599
      start: 595
    functionDepth: 1
    functionLinenumber: 595
    functionLinenumberEnd: 599
    functionName: hlit_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *hlit_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:603,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 601
    functionDepth: 0
    functionLinenumber: 601
    functionLinenumberEnd: 604
    functionName: hlit_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void hlit_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:609,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:610,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:611,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 613
      start: 606
    functionDepth: 1
    functionLinenumber: 606
    functionLinenumberEnd: 613
    functionName: hlit_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hlit_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:620,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:622,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:623,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 616
    functionDepth: 1
    functionLinenumber: 616
    functionLinenumberEnd: 625
    functionName: hlit_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hlit_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 627
    functionDepth: 0
    functionLinenumber: 627
    functionLinenumberEnd: 631
    functionName: hlit_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hlit_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:637,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 639
      start: 635
    functionDepth: 1
    functionLinenumber: 635
    functionLinenumberEnd: 639
    functionName: hclr_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *hclr_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:643,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 644
      start: 641
    functionDepth: 0
    functionLinenumber: 641
    functionLinenumberEnd: 644
    functionName: hclr_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void hclr_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:649,1
    - Dst: gpp_read_rgba
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:650,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 646
    functionDepth: 2
    functionLinenumber: 646
    functionLinenumberEnd: 652
    functionName: hclr_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gpp_read_rgba
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hclr_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:659,1
    - Dst: gpp_write_rgba
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:661,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 663
      start: 655
    functionDepth: 2
    functionLinenumber: 655
    functionLinenumberEnd: 663
    functionName: hclr_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gpp_write_rgba
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hclr_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 669
      start: 665
    functionDepth: 0
    functionLinenumber: 665
    functionLinenumberEnd: 669
    functionName: hclr_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hclr_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:675,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 677
      start: 673
    functionDepth: 1
    functionLinenumber: 673
    functionLinenumberEnd: 677
    functionName: krok_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *krok_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:682,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:683,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 679
    functionDepth: 0
    functionLinenumber: 679
    functionLinenumberEnd: 684
    functionName: krok_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void krok_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:690,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:691,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:692,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:698,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:701,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:702,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:703,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:704,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 708
      start: 686
    functionDepth: 1
    functionLinenumber: 686
    functionLinenumberEnd: 708
    functionName: krok_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err krok_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:716,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:719,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:720,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:722,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:723,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:724,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 727
      start: 711
    functionDepth: 1
    functionLinenumber: 711
    functionLinenumberEnd: 727
    functionName: krok_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    - gf_bs_write_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err krok_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 734
      start: 729
    functionDepth: 0
    functionLinenumber: 729
    functionLinenumberEnd: 734
    functionName: krok_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err krok_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:740,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 742
      start: 738
    functionDepth: 1
    functionLinenumber: 738
    functionLinenumberEnd: 742
    functionName: dlay_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *dlay_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:746,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 747
      start: 744
    functionDepth: 0
    functionLinenumber: 744
    functionLinenumberEnd: 747
    functionName: dlay_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void dlay_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:752,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:753,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 755
      start: 749
    functionDepth: 1
    functionLinenumber: 749
    functionLinenumberEnd: 755
    functionName: dlay_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dlay_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:762,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:764,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 766
      start: 758
    functionDepth: 1
    functionLinenumber: 758
    functionLinenumberEnd: 766
    functionName: dlay_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dlay_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 772
      start: 768
    functionDepth: 0
    functionLinenumber: 768
    functionLinenumberEnd: 772
    functionName: dlay_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dlay_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:778,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 780
      start: 776
    functionDepth: 1
    functionLinenumber: 776
    functionLinenumberEnd: 780
    functionName: href_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *href_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:785,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:786,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:787,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 788
      start: 782
    functionDepth: 0
    functionLinenumber: 782
    functionLinenumberEnd: 788
    functionName: href_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void href_box_del(GF_Box *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:794,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:795,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:796,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:797,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:799,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:800,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:802,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:805,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:807,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:808,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:810,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 814
      start: 790
    functionDepth: 1
    functionLinenumber: 790
    functionLinenumberEnd: 814
    functionName: href_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_bs_read_u16
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err href_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:822,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:825,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:826,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:828,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:829,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:830,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:832,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:835,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:836,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:837,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:839,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 842
      start: 817
    functionDepth: 1
    functionLinenumber: 817
    functionLinenumberEnd: 842
    functionName: href_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u16
    - gf_bs_write_data
    - gf_bs_write_u8
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err href_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:848,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:849,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 851
      start: 844
    functionDepth: 0
    functionLinenumber: 844
    functionLinenumberEnd: 851
    functionName: href_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err href_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:858,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 860
      start: 856
    functionDepth: 1
    functionLinenumber: 856
    functionLinenumberEnd: 860
    functionName: tbox_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tbox_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:864,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 865
      start: 862
    functionDepth: 0
    functionLinenumber: 862
    functionLinenumberEnd: 865
    functionName: tbox_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void tbox_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:870,1
    - Dst: gpp_read_box
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:871,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 873
      start: 867
    functionDepth: 2
    functionLinenumber: 867
    functionLinenumberEnd: 873
    functionName: tbox_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gpp_read_box
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tbox_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:880,1
    - Dst: gpp_write_box
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:882,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 884
      start: 876
    functionDepth: 2
    functionLinenumber: 876
    functionLinenumberEnd: 884
    functionName: tbox_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gpp_write_box
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tbox_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 890
      start: 886
    functionDepth: 0
    functionLinenumber: 886
    functionLinenumberEnd: 890
    functionName: tbox_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tbox_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:897,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 899
      start: 895
    functionDepth: 1
    functionLinenumber: 895
    functionLinenumberEnd: 899
    functionName: blnk_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *blnk_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:903,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 904
      start: 901
    functionDepth: 0
    functionLinenumber: 901
    functionLinenumberEnd: 904
    functionName: blnk_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void blnk_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:909,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:910,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:911,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 913
      start: 906
    functionDepth: 1
    functionLinenumber: 906
    functionLinenumberEnd: 913
    functionName: blnk_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err blnk_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:920,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:922,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:923,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 925
      start: 916
    functionDepth: 1
    functionLinenumber: 916
    functionLinenumberEnd: 925
    functionName: blnk_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err blnk_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 931
      start: 927
    functionDepth: 0
    functionLinenumber: 927
    functionLinenumberEnd: 931
    functionName: blnk_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err blnk_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:937,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 939
      start: 935
    functionDepth: 1
    functionLinenumber: 935
    functionLinenumberEnd: 939
    functionName: twrp_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *twrp_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:943,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 944
      start: 941
    functionDepth: 0
    functionLinenumber: 941
    functionLinenumberEnd: 944
    functionName: twrp_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void twrp_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:949,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:950,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 952
      start: 946
    functionDepth: 1
    functionLinenumber: 946
    functionLinenumberEnd: 952
    functionName: twrp_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err twrp_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:959,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:961,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 963
      start: 955
    functionDepth: 1
    functionLinenumber: 955
    functionLinenumberEnd: 963
    functionName: twrp_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err twrp_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 968
      start: 964
    functionDepth: 0
    functionLinenumber: 964
    functionLinenumberEnd: 968
    functionName: twrp_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err twrp_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:977,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:978,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 979
      start: 972
    functionDepth: 0
    functionLinenumber: 972
    functionLinenumberEnd: 979
    functionName: tsel_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void tsel_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:986,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:987,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:991,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:995,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 998
      start: 981
    functionDepth: 1
    functionLinenumber: 981
    functionLinenumberEnd: 998
    functionName: tsel_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tsel_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1002,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1004
      start: 1000
    functionDepth: 1
    functionLinenumber: 1000
    functionLinenumberEnd: 1004
    functionName: tsel_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tsel_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1015,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1017,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1020,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1024
      start: 1009
    functionDepth: 1
    functionLinenumber: 1009
    functionLinenumberEnd: 1024
    functionName: tsel_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tsel_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1031
      start: 1026
    functionDepth: 0
    functionLinenumber: 1026
    functionLinenumberEnd: 1031
    functionName: tsel_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tsel_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1038,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1040
      start: 1036
    functionDepth: 1
    functionLinenumber: 1036
    functionLinenumberEnd: 1040
    functionName: dimC_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *dimC_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1044,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1045,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1046,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1047
      start: 1041
    functionDepth: 0
    functionLinenumber: 1041
    functionLinenumberEnd: 1047
    functionName: dimC_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void dimC_box_del(GF_Box *s)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1055,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1056,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1057,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1058,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1059,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1060,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1061,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1063,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1070,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1071,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1076,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1080,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1085,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1086,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1091,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1095,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1096,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1102,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 48
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1104
      start: 1049
    functionDepth: 1
    functionLinenumber: 1049
    functionLinenumberEnd: 1104
    functionName: dimC_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - ISOM_DECREASE_SIZE_GOTO_EXIT
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dimC_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1110,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1112,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1113,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1114,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1115,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1116,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1117,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1119,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1119,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1120,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1122,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1122,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1123,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1125
      start: 1107
    functionDepth: 1
    functionLinenumber: 1107
    functionLinenumberEnd: 1125
    functionName: dimC_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_int
    - strlen
    - gf_bs_write_data
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dimC_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1130,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1131,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1133
      start: 1126
    functionDepth: 0
    functionLinenumber: 1126
    functionLinenumberEnd: 1133
    functionName: dimC_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dimC_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1142
      start: 1138
    functionDepth: 1
    functionLinenumber: 1138
    functionLinenumberEnd: 1142
    functionName: diST_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *diST_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1146,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1147,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1148
      start: 1143
    functionDepth: 0
    functionLinenumber: 1143
    functionLinenumberEnd: 1148
    functionName: diST_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void diST_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1154,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1156,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1159
      start: 1150
    functionDepth: 1
    functionLinenumber: 1150
    functionLinenumberEnd: 1159
    functionName: diST_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err diST_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1165,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1168,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1168,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1170,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1172
      start: 1162
    functionDepth: 1
    functionLinenumber: 1162
    functionLinenumberEnd: 1172
    functionName: diST_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u8
    - gf_isom_box_write_header
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err diST_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1178
      start: 1173
    functionDepth: 0
    functionLinenumber: 1173
    functionLinenumberEnd: 1178
    functionName: diST_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err diST_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1184,1
    - Dst: gf_isom_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1187
      start: 1182
    functionDepth: 1
    functionLinenumber: 1182
    functionLinenumberEnd: 1187
    functionName: dims_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_entry_init
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *dims_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_predestroy
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1190,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1192
      start: 1188
    functionDepth: 1
    functionLinenumber: 1188
    functionLinenumberEnd: 1192
    functionName: dims_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_sample_entry_predestroy
    linkageType: ''
    returnType: void
    signature: void dims_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1199,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1202,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1206
      start: 1194
    functionDepth: 1
    functionLinenumber: 1194
    functionLinenumberEnd: 1206
    functionName: dims_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dims_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_base_sample_entry_read
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1212,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1215,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1216,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1217
      start: 1207
    functionDepth: 1
    functionLinenumber: 1207
    functionLinenumberEnd: 1217
    functionName: dims_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_isom_base_sample_entry_read
    - ISOM_DECREASE_SIZE
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dims_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1223,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1225,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1226,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1228
      start: 1220
    functionDepth: 1
    functionLinenumber: 1220
    functionLinenumberEnd: 1228
    functionName: dims_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u16
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dims_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1235,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1238
      start: 1230
    functionDepth: 1
    functionLinenumber: 1230
    functionLinenumberEnd: 1238
    functionName: dims_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dims_box_size(GF_Box *s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_funcs.c:38,1
    - Dst: gf_isom_box_parse_ex
      Src: /src/gpac/src/isomedia/box_funcs.c:39,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:45,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:55,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:55,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_funcs.c:56,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_funcs.c:59,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 5
    argNames:
    - outBox
    - bs
    - box_type
    - bytesExpected
    - progressive_mode
    argTypes:
    - GF_Box**
    - GF_BitStream*
    - u32*
    - u64*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 62
    functionName: gf_isom_parse_root_box
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_bs_seek
    - gf_isom_box_del
    - GF_LOG
    - gf_bs_get_position
    - gf_isom_box_parse_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_parse_root_box(GF_Box **outBox, GF_BitStream *bs,
      u32 *box_type, u64 *bytesExpected, Bool progressive_mode)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:71,1
    - Dst: strcat
      Src: /src/gpac/src/isomedia/box_funcs.c:72,1
    - Dst: strnicmp
      Src: /src/gpac/src/isomedia/box_funcs.c:74,1
    - Dst: strnicmp
      Src: /src/gpac/src/isomedia/box_funcs.c:76,1
    - Dst: strnicmp
      Src: /src/gpac/src/isomedia/box_funcs.c:78,1
    - Dst: strnicmp
      Src: /src/gpac/src/isomedia/box_funcs.c:80,1
    - Dst: strnicmp
      Src: /src/gpac/src/isomedia/box_funcs.c:82,1
    - Dst: strnicmp
      Src: /src/gpac/src/isomedia/box_funcs.c:84,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 1
    argNames:
    - UUID
    argTypes:
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 88
    functionName: gf_isom_solve_uuid_box
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - strcat
    - strnicmp
    - snprintf
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_solve_uuid_box(u8 *UUID)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _e
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 261
    functionName: ERR_EXIT
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ERR_EXIT(_e)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_parse_ex
      Src: /src/gpac/src/isomedia/box_funcs.c:435,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - outBox
    - bs
    argTypes:
    - GF_Box**
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 432
    functionDepth: 0
    functionLinenumber: 432
    functionLinenumberEnd: 436
    functionName: gf_isom_box_parse
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_parse_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_box_parse(GF_Box **outBox, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_funcs.c:442,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_funcs.c:444,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_funcs.c:445,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - boxlist
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 438
    functionDepth: 1
    functionLinenumber: 438
    functionLinenumberEnd: 447
    functionName: gf_isom_box_array_reset
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_isom_box_del
    linkageType: ''
    returnType: void
    signature: void gf_isom_box_array_reset(GF_List *boxlist)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_reset
      Src: /src/gpac/src/isomedia/box_funcs.c:451,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_funcs.c:452,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - boxlist
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 449
    functionDepth: 2
    functionLinenumber: 449
    functionLinenumberEnd: 453
    functionName: gf_isom_box_array_del
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_reset
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_isom_box_array_del(GF_List *boxlist)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_funcs.c:459,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_funcs.c:461,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/box_funcs.c:462,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/isomedia/box_funcs.c:464,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - child_boxes
    - boxlist
    argTypes:
    - GF_List**
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 465
      start: 455
    functionDepth: 1
    functionLinenumber: 455
    functionLinenumberEnd: 465
    functionName: gf_isom_box_array_reset_parent
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_list_reset
    linkageType: ''
    returnType: void
    signature: void gf_isom_box_array_reset_parent(GF_List **child_boxes, GF_List
      *boxlist)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_reset_parent
      Src: /src/gpac/src/isomedia/box_funcs.c:469,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_funcs.c:470,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - child_boxes
    - boxlist
    argTypes:
    - GF_List**
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 466
    functionDepth: 2
    functionLinenumber: 466
    functionLinenumberEnd: 471
    functionName: gf_isom_box_array_del_parent
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_reset_parent
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_isom_box_array_del_parent(GF_List **child_boxes, GF_List *boxlist)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_funcs.c:483,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_funcs.c:485,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_funcs.c:487,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_funcs.c:489,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_funcs.c:498,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_funcs.c:501,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_funcs.c:504,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_funcs.c:507,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_funcs.c:510,1
    - Dst: strtol
      Src: /src/gpac/src/isomedia/box_funcs.c:524,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_funcs.c:526,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_funcs.c:528,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_funcs.c:532,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:534,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:534,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 49
    argCount: 2
    argNames:
    - ptr
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 537
      start: 476
    functionDepth: 1
    functionLinenumber: 476
    functionLinenumberEnd: 537
    functionName: gf_isom_box_write_header
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 16
    functionsReached:
    - gf_4cc_to_str
    - memcpy
    - GF_LOG
    - gf_bs_get_position
    - gf_bs_write_data
    - strtol
    - gf_bs_write_u64
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_box_write_header(GF_Box *ptr, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_funcs.c:543,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_funcs.c:545,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/isomedia/box_funcs.c:546,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 539
    functionDepth: 2
    functionLinenumber: 539
    functionLinenumberEnd: 548
    functionName: gf_isom_full_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 1
    functionsReached:
    - gf_bs_write_u24
    - gf_isom_box_write_header
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_full_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_funcs.c:556,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_funcs.c:558,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/box_funcs.c:560,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:562,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/isomedia/box_funcs.c:562,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:562,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - parent
    - list
    - bs
    argTypes:
    - GF_Box*
    - GF_List*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 568
      start: 551
    functionDepth: 1
    functionLinenumber: 551
    functionLinenumberEnd: 568
    functionName: gf_isom_box_array_write
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_list_get
    - GF_LOG
    - gf_isom_box_write
    - gf_list_count
    - gf_error_to_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_box_array_write(GF_Box *parent, GF_List *list, GF_BitStream
      *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_funcs.c:577,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_funcs.c:579,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/box_funcs.c:581,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:583,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/isomedia/box_funcs.c:583,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:583,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - parent
    - list
    argTypes:
    - GF_Box*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 571
    functionDepth: 1
    functionLinenumber: 571
    functionLinenumberEnd: 590
    functionName: gf_isom_box_array_size
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_list_get
    - gf_isom_box_size
    - GF_LOG
    - gf_list_count
    - gf_error_to_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_box_array_size(GF_Box *parent, GF_List *list)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a_name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 607
    functionDepth: 0
    functionLinenumber: 607
    functionLinenumberEnd: 609
    functionName: ISOM_BOX_IMPL_DECL_DUMP
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ISOM_BOX_IMPL_DECL_DUMP(a_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a_name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 618
      start: 615
    functionDepth: 0
    functionLinenumber: 615
    functionLinenumberEnd: 618
    functionName: ISOM_BOX_IMPL_DECL_WRITE
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ISOM_BOX_IMPL_DECL_WRITE(a_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a_name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 624
    functionDepth: 0
    functionLinenumber: 624
    functionLinenumberEnd: 631
    functionName: ISOM_BOX_IMPL_DECL
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ISOM_BOX_IMPL_DECL(a_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a_name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 631
    functionDepth: 0
    functionLinenumber: 631
    functionLinenumberEnd: 636
    functionName: ISOM_BOX_IMPL_DECL_CHILD
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ISOM_BOX_IMPL_DECL_CHILD(a_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 29
    argNames:
    - (
    - _a
    - ','
    - _b
    - ','
    - _c
    - ','
    - _d
    - ','
    - _write
    - ','
    - _size
    - ','
    - _dump
    - ','
    - _g
    - ','
    - _h
    - ','
    - _i
    - ','
    - _j
    - ','
    - _k
    - ','
    - _l
    - ','
    - _m
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1028
      start: 1026
    functionDepth: 0
    functionLinenumber: 1026
    functionLinenumberEnd: 1028
    functionName: BOX_DECLARATION
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BOX_DECLARATION(_a, _b, _c, _d, _write, _size, _dump, _g, _h, _i, _j,
      _k, _l, _m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 29
    argNames:
    - (
    - _a
    - ','
    - _b
    - ','
    - _c
    - ','
    - _d
    - ','
    - _write
    - ','
    - _size
    - ','
    - _dump
    - ','
    - _g
    - ','
    - _h
    - ','
    - _i
    - ','
    - _j
    - ','
    - _k
    - ','
    - _l
    - ','
    - _m
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1033
      start: 1031
    functionDepth: 0
    functionLinenumber: 1031
    functionLinenumberEnd: 1033
    functionName: BOX_DECLARATION
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BOX_DECLARATION(_a, _b, _c, _d, _write, _size, _dump, _g, _h, _i, _j,
      _k, _l, _m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 29
    argNames:
    - (
    - _a
    - ','
    - _b
    - ','
    - _c
    - ','
    - _d
    - ','
    - _write
    - ','
    - _size
    - ','
    - _dump
    - ','
    - _g
    - ','
    - _h
    - ','
    - _i
    - ','
    - _j
    - ','
    - _k
    - ','
    - _l
    - ','
    - _m
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1038
      start: 1036
    functionDepth: 0
    functionLinenumber: 1036
    functionLinenumberEnd: 1038
    functionName: BOX_DECLARATION
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BOX_DECLARATION(_a, _b, _c, _d, _write, _size, _dump, _g, _h, _i, _j,
      _k, _l, _m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 29
    argNames:
    - (
    - _a
    - ','
    - _b
    - ','
    - _c
    - ','
    - _d
    - ','
    - _write
    - ','
    - _size
    - ','
    - _dump
    - ','
    - _g
    - ','
    - _h
    - ','
    - _i
    - ','
    - _j
    - ','
    - _k
    - ','
    - _l
    - ','
    - _m
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1043
      start: 1041
    functionDepth: 0
    functionLinenumber: 1041
    functionLinenumberEnd: 1043
    functionName: BOX_DECLARATION
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BOX_DECLARATION(_a, _b, _c, _d, _write, _size, _dump, _g, _h, _i, _j,
      _k, _l, _m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - __type
    - ','
    - b_rad
    - ','
    - __par
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1049
      start: 1047
    functionDepth: 0
    functionLinenumber: 1047
    functionLinenumberEnd: 1049
    functionName: BOX_DEFINE
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BOX_DEFINE(__type, b_rad, __par)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - __type
    - ','
    - b_rad
    - ','
    - __par
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1052
      start: 1050
    functionDepth: 0
    functionLinenumber: 1050
    functionLinenumberEnd: 1052
    functionName: BOX_DEFINE_CHILD
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BOX_DEFINE_CHILD(__type, b_rad, __par)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - __type
    - ','
    - b_rad
    - ','
    - __par
    - ','
    - __spec
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1055
      start: 1053
    functionDepth: 0
    functionLinenumber: 1053
    functionLinenumberEnd: 1055
    functionName: BOX_DEFINE_S
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BOX_DEFINE_S(__type, b_rad, __par, __spec)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - __type
    - ','
    - b_rad
    - ','
    - __par
    - ','
    - __spec
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1058
      start: 1056
    functionDepth: 0
    functionLinenumber: 1056
    functionLinenumberEnd: 1058
    functionName: BOX_DEFINE_S_CHILD
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BOX_DEFINE_S_CHILD(__type, b_rad, __par, __spec)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - __type
    - ','
    - b_rad
    - ','
    - __par
    - ','
    - __max_v
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1061
      start: 1059
    functionDepth: 0
    functionLinenumber: 1059
    functionLinenumberEnd: 1061
    functionName: FBOX_DEFINE
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FBOX_DEFINE(__type, b_rad, __par, __max_v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - __type
    - ','
    - b_rad
    - ','
    - __par
    - ','
    - __max_v
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1064
      start: 1062
    functionDepth: 0
    functionLinenumber: 1062
    functionLinenumberEnd: 1064
    functionName: FBOX_DEFINE_CHILD
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FBOX_DEFINE_CHILD(__type, b_rad, __par, __max_v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - __type
    - ','
    - b_rad
    - ','
    - __par
    - ','
    - __max_v
    - ','
    - flags
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1067
      start: 1065
    functionDepth: 0
    functionLinenumber: 1065
    functionLinenumberEnd: 1067
    functionName: FBOX_DEFINE_FLAGS
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FBOX_DEFINE_FLAGS(__type, b_rad, __par, __max_v, flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - __type
    - ','
    - b_rad
    - ','
    - __par
    - ','
    - __max_v
    - ','
    - flags
    - ','
    - __spec
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1070
      start: 1068
    functionDepth: 0
    functionLinenumber: 1068
    functionLinenumberEnd: 1070
    functionName: FBOX_DEFINE_FLAGS_S
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FBOX_DEFINE_FLAGS_S(__type, b_rad, __par, __max_v, flags, __spec)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - __type
    - ','
    - b_rad
    - ','
    - __par
    - ','
    - __max_v
    - ','
    - __spec
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1073
      start: 1071
    functionDepth: 0
    functionLinenumber: 1071
    functionLinenumberEnd: 1073
    functionName: FBOX_DEFINE_S
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FBOX_DEFINE_S(__type, b_rad, __par, __max_v, __spec)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - __type
    - ','
    - b_rad
    - ','
    - __par
    - ','
    - __max_v
    - ','
    - __spec
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1076
      start: 1074
    functionDepth: 0
    functionLinenumber: 1074
    functionLinenumberEnd: 1076
    functionName: FBOX_DEFINE_S_CHILD
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FBOX_DEFINE_S_CHILD(__type, b_rad, __par, __max_v, __spec)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - __type
    - ','
    - b_rad
    - ','
    - __par
    - ','
    - __4cc
    - ','
    - __spec
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1079
      start: 1077
    functionDepth: 0
    functionLinenumber: 1077
    functionLinenumberEnd: 1079
    functionName: TREF_DEFINE
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TREF_DEFINE(__type, b_rad, __par, __4cc, __spec)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - __type
    - ','
    - b_rad
    - ','
    - __par
    - ','
    - __4cc
    - ','
    - max_version
    - ','
    - __spec
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1082
      start: 1080
    functionDepth: 0
    functionLinenumber: 1080
    functionLinenumberEnd: 1082
    functionName: TRGT_DEFINE
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRGT_DEFINE(__type, b_rad, __par, __4cc, max_version, __spec)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - __type
    - ','
    - b_rad
    - ','
    - __par
    - ','
    - __4cc
    - ','
    - __spec
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1085
      start: 1083
    functionDepth: 0
    functionLinenumber: 1083
    functionLinenumberEnd: 1085
    functionName: SGPD_DEFINE
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SGPD_DEFINE(__type, b_rad, __par, __4cc, __spec)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1088
      start: 1086
    functionDepth: 0
    functionLinenumber: 1086
    functionLinenumberEnd: 1088
    functionName: ITUNES_TAG
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ITUNES_TAG(_val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:1889,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 2
    argNames:
    - a
    - parent_4cc
    argTypes:
    - GF_Box*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1891
      start: 1886
    functionDepth: 0
    functionLinenumber: 1886
    functionLinenumberEnd: 1891
    functionName: gf_box_valid_in_parent
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - strstr
    linkageType: ''
    returnType: Bool
    signature: Bool gf_box_valid_in_parent(GF_Box *a, const char *parent_4cc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1897
      start: 1893
    functionDepth: 0
    functionLinenumber: 1893
    functionLinenumberEnd: 1897
    functionName: gf_isom_get_num_supported_boxes
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_num_supported_boxes()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_num_supported_boxes
      Src: /src/gpac/src/isomedia/box_funcs.c:1901,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - boxCode
    - disable
    argTypes:
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1908
      start: 1899
    functionDepth: 1
    functionLinenumber: 1899
    functionLinenumberEnd: 1908
    functionName: gf_isom_registry_disable
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_num_supported_boxes
    linkageType: ''
    returnType: void
    signature: void gf_isom_registry_disable(u32 boxCode, Bool disable)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_num_supported_boxes
      Src: /src/gpac/src/isomedia/box_funcs.c:1912,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:1927,1
    - Dst: gf_4cc_to_str_safe
      Src: /src/gpac/src/isomedia/box_funcs.c:1927,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:1929,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:1932,1
    - Dst: get_box_reg_idx
      Src: /src/gpac/src/isomedia/box_funcs.c:1943,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:1946,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 28
    argCount: 3
    argNames:
    - boxCode
    - parent_type
    - start_from
    argTypes:
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1952
      start: 1910
    functionDepth: 1
    functionLinenumber: 1910
    functionLinenumberEnd: 1952
    functionName: get_box_reg_idx
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 2
    functionsReached:
    - get_box_reg_idx
    - gf_4cc_to_str_safe
    - strstr
    - gf_isom_get_num_supported_boxes
    linkageType: ''
    returnType: u32
    signature: u32 get_box_reg_idx(u32 boxCode, u32 parent_type, u32 start_from)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: get_box_reg_idx
      Src: /src/gpac/src/isomedia/box_funcs.c:1958,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/isomedia/box_funcs.c:1979,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:1982,1
    - Dst: gf_4cc_to_str_safe
      Src: /src/gpac/src/isomedia/box_funcs.c:1982,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/isomedia/box_funcs.c:1983,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:1995,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:1995,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:2000,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2000,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2000,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:2003,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2003,1
    - Dst: uuid_box_new
      Src: /src/gpac/src/isomedia/box_funcs.c:2010,1
    - Dst: unkn_box_new
      Src: /src/gpac/src/isomedia/box_funcs.c:2013,1
    - Dst: new_fn
      Src: /src/gpac/src/isomedia/box_funcs.c:2022,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 75
    argCount: 5
    argNames:
    - boxType
    - parentType
    - skip_logs
    - is_root_box
    - is_uuid
    argTypes:
    - u32
    - u32
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2040
      start: 1954
    functionDepth: 2
    functionLinenumber: 1954
    functionLinenumberEnd: 2040
    functionName: gf_isom_box_new_ex
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - get_box_reg_idx
    - gf_4cc_to_str
    - snprintf
    - gf_file_exists
    - GF_LOG
    - unkn_box_new
    - uuid_box_new
    - new_fn
    - gf_4cc_to_str_safe
    - gf_opts_get_key
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *gf_isom_box_new_ex(u32 boxType, u32 parentType, Bool skip_logs,
      Bool is_root_box, Bool is_uuid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new_ex
      Src: /src/gpac/src/isomedia/box_funcs.c:2045,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - boxType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2046
      start: 2042
    functionDepth: 3
    functionLinenumber: 2042
    functionLinenumberEnd: 2046
    functionName: gf_isom_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_isom_box_new(u32 boxType)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_cookie
      Src: /src/gpac/src/isomedia/box_funcs.c:2053,1
    - Dst: gf_isom_box_parse_ex
      Src: /src/gpac/src/isomedia/box_funcs.c:2060,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_funcs.c:2062,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:2070,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2070,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/box_funcs.c:2072,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_funcs.c:2073,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_funcs.c:2082,1
    - Dst: gf_4cc_to_str_safe
      Src: /src/gpac/src/isomedia/box_funcs.c:2086,1
    - Dst: gf_4cc_to_str_safe
      Src: /src/gpac/src/isomedia/box_funcs.c:2088,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:2090,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/box_funcs.c:2092,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:2092,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:2092,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:2102,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:2104,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:2105,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:2119,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2119,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_funcs.c:2125,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_funcs.c:2128,1
    - Dst: GF_Box*::registry::add_rem_fn
      Src: /src/gpac/src/isomedia/box_funcs.c:2132,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/box_funcs.c:2136,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/box_funcs.c:2137,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 82
    argCount: 2
    argNames:
    - parent
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2144
      start: 2048
    functionDepth: 1
    functionLinenumber: 2048
    functionLinenumberEnd: 2144
    functionName: gf_isom_box_array_read
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 3
    functionsReached:
    - gf_4cc_to_str
    - gf_list_new
    - gf_isom_box_del_parent
    - gf_isom_box_del
    - GF_LOG
    - gf_list_find
    - strstr
    - gf_isom_box_parse_ex
    - gf_bs_get_cookie
    - gf_4cc_to_str_safe
    - strcmp
    - gf_list_add
    - GF_Box*::registry::add_rem_fn
    - gf_opts_get_bool
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_box_array_read(GF_Box *parent, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:2158,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2158,1
    - Dst: struct box_registry_entry*::del_fn
      Src: /src/gpac/src/isomedia/box_funcs.c:2160,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/box_funcs.c:2164,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2166
      start: 2146
    functionDepth: 3
    functionLinenumber: 2146
    functionLinenumberEnd: 2166
    functionName: gf_isom_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 4
    functionsReached:
    - struct box_registry_entry*::del_fn
    - GF_LOG
    - gf_isom_box_array_del
    - gf_4cc_to_str
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_box_del(GF_Box *a)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:2173,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2173,1
    - Dst: GF_Box*::registry::read_fn
      Src: /src/gpac/src/isomedia/box_funcs.c:2176,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - a
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2177
      start: 2169
    functionDepth: 1
    functionLinenumber: 2169
    functionLinenumberEnd: 2177
    functionName: gf_isom_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GF_Box*::registry::read_fn
    - gf_4cc_to_str
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_box_read(GF_Box *a, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:2185,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2185,1
    - Dst: GF_Box*::registry::write_fn
      Src: /src/gpac/src/isomedia/box_funcs.c:2188,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - a
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2189
      start: 2181
    functionDepth: 1
    functionLinenumber: 2181
    functionLinenumberEnd: 2189
    functionName: gf_isom_box_write_listing
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - GF_Box*::registry::write_fn
    - GF_LOG
    - gf_4cc_to_str
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_box_write_listing(GF_Box *a, GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/box_funcs.c:2198,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/box_funcs.c:2204,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/box_funcs.c:2205,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 3
    argNames:
    - s
    - child
    - pos
    argTypes:
    - GF_Box*
    - GF_Box*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2208
      start: 2192
    functionDepth: 1
    functionLinenumber: 2192
    functionLinenumberEnd: 2208
    functionName: gf_isom_check_position
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 1
    functionsReached:
    - gf_list_insert
    - gf_list_find
    - gf_list_del_item
    linkageType: ''
    returnType: void
    signature: void gf_isom_check_position(GF_Box *s, GF_Box *child, u32 *pos)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_funcs.c:2215,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_funcs.c:2217,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_funcs.c:2218,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - s
    - childlist
    - pos
    argTypes:
    - GF_Box*
    - GF_List*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2220
      start: 2210
    functionDepth: 2
    functionLinenumber: 2210
    functionLinenumberEnd: 2220
    functionName: gf_isom_check_position_list
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_isom_check_position
    linkageType: ''
    returnType: void
    signature: void gf_isom_check_position_list(GF_Box *s, GF_List *childlist, u32
      *pos)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_funcs.c:2227,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:2233,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2233,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:2237,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2237,1
    - Dst: gf_isom_box_write_listing
      Src: /src/gpac/src/isomedia/box_funcs.c:2238,1
    - Dst: gf_isom_box_array_write
      Src: /src/gpac/src/isomedia/box_funcs.c:2241,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_funcs.c:2243,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:2246,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2246,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - a
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2250
      start: 2223
    functionDepth: 2
    functionLinenumber: 2223
    functionLinenumberEnd: 2250
    functionName: gf_isom_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 1
    functionsReached:
    - gf_4cc_to_str
    - gf_isom_box_write_listing
    - GF_LOG
    - gf_isom_box_array_write
    - gf_bs_get_position
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_box_write(GF_Box *a, GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:2256,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2256,1
    - Dst: GF_Box*::registry::size_fn
      Src: /src/gpac/src/isomedia/box_funcs.c:2268,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2269
      start: 2252
    functionDepth: 1
    functionLinenumber: 2252
    functionLinenumberEnd: 2269
    functionName: gf_isom_box_size_listing
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GF_Box*::registry::size_fn
    - gf_4cc_to_str
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_box_size_listing(GF_Box *a)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_size_listing
      Src: /src/gpac/src/isomedia/box_funcs.c:2280,1
    - Dst: gf_isom_box_array_size
      Src: /src/gpac/src/isomedia/box_funcs.c:2286,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2290
      start: 2271
    functionDepth: 2
    functionLinenumber: 2271
    functionLinenumberEnd: 2290
    functionName: gf_isom_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_array_size
    - gf_isom_box_size_listing
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_box_size(GF_Box *a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_funcs.c:2298,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_funcs.c:2299,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/isomedia/box_funcs.c:2300,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ptr
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2303
      start: 2294
    functionDepth: 1
    functionLinenumber: 2294
    functionLinenumberEnd: 2303
    functionName: gf_isom_full_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u24
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_full_box_read(GF_Box *ptr, GF_BitStream *bs)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: new_fn
      Src: /src/gpac/src/isomedia/box_funcs.c:2318,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_funcs.c:2342,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_funcs.c:2350,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_funcs.c:2357,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_funcs.c:2360,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 44
    argCount: 2
    argNames:
    - idx
    - trace
    argTypes:
    - u32
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2366
      start: 2306
    functionDepth: 4
    functionLinenumber: 2306
    functionLinenumberEnd: 2366
    functionName: gf_isom_dump_supported_box
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_dump
    - new_fn
    - gf_isom_box_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_dump_supported_box(u32 idx, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - idx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2372
      start: 2368
    functionDepth: 0
    functionLinenumber: 2368
    functionLinenumberEnd: 2372
    functionName: gf_isom_get_supported_box_type
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_supported_box_type(u32 idx)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2378,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2382,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2384,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2388,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2388,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2390,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2390,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2395,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2397,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2398,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2400,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2404,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2406,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/isomedia/box_funcs.c:2409,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2411,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2413,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 33
    argCount: 6
    argNames:
    - a
    - name
    - trace
    - force_version
    - spec
    - container
    argTypes:
    - GF_Box*
    - char*
    - FILE*
    - Bool
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2416
      start: 2376
    functionDepth: 1
    functionLinenumber: 2376
    functionLinenumberEnd: 2416
    functionName: gf_isom_box_dump_start_ex
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_sys_is_test_mode
    - gf_fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_box_dump_start_ex(GF_Box *a, const char *name, FILE
      * trace, Bool force_version, const char *spec, const char *container)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start_ex
      Src: /src/gpac/src/isomedia/box_funcs.c:2419,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - a
    - name
    - trace
    argTypes:
    - GF_Box*
    - char*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2420
      start: 2417
    functionDepth: 2
    functionLinenumber: 2417
    functionLinenumberEnd: 2420
    functionName: gf_isom_box_dump_start
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_start_ex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_box_dump_start(GF_Box *a, const char *name, FILE * trace)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2427,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:2431,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2431,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/box_funcs.c:2434,1
    - Dst: GF_Box*::registry::dump_fn
      Src: /src/gpac/src/isomedia/box_funcs.c:2436,1
    - Dst: GF_Box*::registry::dump_fn
      Src: /src/gpac/src/isomedia/box_funcs.c:2439,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - ptr
    - trace
    - subtree_root
    argTypes:
    - void*
    - FILE*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2442
      start: 2422
    functionDepth: 1
    functionLinenumber: 2422
    functionLinenumberEnd: 2442
    functionName: gf_isom_box_dump_ex
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_fprintf
    - GF_LOG
    - gf_opts_get_bool
    - GF_Box*::registry::dump_fn
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_box_dump_ex(void *ptr, FILE * trace, Bool subtree_root)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_ex
      Src: /src/gpac/src/isomedia/box_funcs.c:2445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ptr
    - trace
    argTypes:
    - void*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2446
      start: 2443
    functionDepth: 2
    functionLinenumber: 2443
    functionLinenumberEnd: 2446
    functionName: gf_isom_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_dump_ex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_box_dump(void *ptr, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_dump
      Src: /src/gpac/src/isomedia/box_funcs.c:2451,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2454,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 3
    argNames:
    - name
    - ptr
    - trace
    argTypes:
    - char*
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2455
      start: 2448
    functionDepth: 1
    functionLinenumber: 2448
    functionLinenumberEnd: 2455
    functionName: gf_isom_box_dump_done
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_dump
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void gf_isom_box_dump_done(const char *name, GF_Box *ptr, FILE *trace)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:2460,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:2461,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2463
      start: 2457
    functionDepth: 0
    functionLinenumber: 2457
    functionLinenumberEnd: 2463
    functionName: gf_isom_box_is_file_level
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - strstr
    linkageType: ''
    returnType: Bool
    signature: Bool gf_isom_box_is_file_level(GF_Box *s)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_funcs.c:2471,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_funcs.c:2473,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 2
    argNames:
    - children
    - code
    argTypes:
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2486
      start: 2466
    functionDepth: 1
    functionLinenumber: 2466
    functionLinenumberEnd: 2486
    functionName: gf_isom_box_find_child
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_isom_box_find_child(GF_List *children, u32 code)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_funcs.c:2492,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_funcs.c:2494,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - children
    - a
    argTypes:
    - GF_List*
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2499
      start: 2488
    functionDepth: 1
    functionLinenumber: 2488
    functionLinenumberEnd: 2499
    functionName: gf_isom_box_check_unique
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: Bool
    signature: Bool gf_isom_box_check_unique(GF_List *children, GF_Box *a)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/box_funcs.c:2505,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_funcs.c:2506,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_funcs.c:2507,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_funcs.c:2511,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - child_boxes
    - b
    argTypes:
    - GF_List**
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2512
      start: 2501
    functionDepth: 4
    functionLinenumber: 2501
    functionLinenumberEnd: 2512
    functionName: gf_isom_box_del_parent
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 4
    functionsReached:
    - gf_list_count
    - gf_list_del_item
    - gf_list_del
    - gf_isom_box_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_box_del_parent(GF_List **child_boxes, GF_Box*b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_Box*::registry::add_rem_fn
      Src: /src/gpac/src/isomedia/box_funcs.c:2517,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - parent_box
    - box
    argTypes:
    - GF_Box*
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2519
      start: 2514
    functionDepth: 0
    functionLinenumber: 2514
    functionLinenumberEnd: 2519
    functionName: gf_isom_box_remove_from_parent
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - GF_Box*::registry::add_rem_fn
    linkageType: ''
    returnType: void
    signature: void gf_isom_box_remove_from_parent(GF_Box *parent_box, GF_Box *box)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/box_funcs.c:2523,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_funcs.c:2525,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_funcs.c:2526,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - parent
    - code
    argTypes:
    - GF_List**
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2528
      start: 2521
    functionDepth: 4
    functionLinenumber: 2521
    functionLinenumberEnd: 2528
    functionName: gf_isom_box_new_parent
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 3
    functionsReached:
    - gf_list_new
    - gf_list_add
    - gf_isom_box_new
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *gf_isom_box_new_parent(GF_List **parent, u32 code)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_funcs.c:2537,1
    - Dst: gf_isom_box_freeze_order
      Src: /src/gpac/src/isomedia/box_funcs.c:2538,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - box
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2541
      start: 2530
    functionDepth: 1
    functionLinenumber: 2530
    functionLinenumberEnd: 2541
    functionName: gf_isom_box_freeze_order
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    - gf_isom_box_freeze_order
    linkageType: ''
    returnType: void
    signature: void gf_isom_box_freeze_order(GF_Box *box)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionName: sinf_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *sinf_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: sinf_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void sinf_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_drm.c:47,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_drm.c:50,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_drm.c:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 57
    functionName: sinf_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sinf_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_drm.c:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 2
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: sinf_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sinf_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_drm.c:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: sinf_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sinf_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:74,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:75,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 70
    functionDepth: 2
    functionLinenumber: 70
    functionLinenumberEnd: 78
    functionName: sinf_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sinf_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 86
    functionName: frma_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *frma_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:92,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 93
    functionName: frma_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void frma_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:98,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 101
    functionName: frma_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err frma_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_drm.c:109,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:112,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:114,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 104
    functionDepth: 2
    functionLinenumber: 104
    functionLinenumberEnd: 116
    functionName: frma_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err frma_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 123
    functionName: frma_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err frma_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 131
    functionName: schm_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *schm_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:137,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:138,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 139
    functionName: schm_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void schm_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:145,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:146,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:147,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_drm.c:151,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:153,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 157
    functionName: schm_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_data
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err schm_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_drm.c:165,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:167,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:168,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:171,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_drm.c:171,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:173,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 160
    functionDepth: 3
    functionLinenumber: 160
    functionLinenumberEnd: 176
    functionName: schm_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_data
    - gf_bs_write_u8
    - gf_bs_write_u32
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err schm_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_drm.c:183,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 185
    functionName: schm_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err schm_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 193
    functionName: schi_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *schi_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 198
    functionName: schi_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void schi_box_del(GF_Box *s)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_drm.c:205,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_drm.c:208,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_drm.c:211,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_drm.c:214,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_drm.c:217,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_drm.c:220,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_drm.c:224,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 29
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 231
    functionName: schi_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err schi_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_drm.c:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 233
    functionDepth: 2
    functionLinenumber: 233
    functionLinenumberEnd: 236
    functionName: schi_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err schi_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_drm.c:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 239
    functionDepth: 2
    functionLinenumber: 239
    functionLinenumberEnd: 242
    functionName: schi_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err schi_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:249,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:250,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:251,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:252,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:253,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:254,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 244
    functionDepth: 2
    functionLinenumber: 244
    functionLinenumberEnd: 257
    functionName: schi_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err schi_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:264,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 266
    functionName: iKMS_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *iKMS_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:272,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:273,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 274
    functionName: iKMS_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void iKMS_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_drm.c:283,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:285,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 276
    functionDepth: 1
    functionLinenumber: 276
    functionLinenumberEnd: 289
    functionName: iKMS_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iKMS_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_drm.c:297,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:300,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_drm.c:300,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:301,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 292
    functionDepth: 3
    functionLinenumber: 292
    functionLinenumberEnd: 303
    functionName: iKMS_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u8
    - strlen
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iKMS_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_drm.c:308,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 305
    functionDepth: 0
    functionLinenumber: 305
    functionLinenumberEnd: 310
    functionName: iKMS_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iKMS_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:316,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 314
    functionDepth: 1
    functionLinenumber: 314
    functionLinenumberEnd: 318
    functionName: iSFM_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *iSFM_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:324,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 320
    functionDepth: 0
    functionLinenumber: 320
    functionLinenumberEnd: 325
    functionName: iSFM_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void iSFM_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:332,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_drm.c:333,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_drm.c:334,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:335,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:336,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 328
    functionDepth: 1
    functionLinenumber: 328
    functionLinenumberEnd: 338
    functionName: iSFM_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iSFM_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_drm.c:346,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_drm.c:348,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_drm.c:349,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:350,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:351,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 341
    functionDepth: 3
    functionLinenumber: 341
    functionLinenumberEnd: 353
    functionName: iSFM_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_isom_full_box_write
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iSFM_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 355
    functionDepth: 0
    functionLinenumber: 355
    functionLinenumberEnd: 360
    functionName: iSFM_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iSFM_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:366,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 364
    functionDepth: 1
    functionLinenumber: 364
    functionLinenumberEnd: 368
    functionName: iSLT_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *iSLT_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:374,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 370
    functionDepth: 0
    functionLinenumber: 370
    functionLinenumberEnd: 375
    functionName: iSLT_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void iSLT_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:382,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_drm.c:383,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 378
    functionDepth: 1
    functionLinenumber: 378
    functionLinenumberEnd: 385
    functionName: iSLT_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u64
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iSLT_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_drm.c:393,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_drm.c:396,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 388
    functionDepth: 3
    functionLinenumber: 388
    functionLinenumberEnd: 398
    functionName: iSLT_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u64
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iSLT_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 400
    functionDepth: 0
    functionLinenumber: 400
    functionLinenumberEnd: 404
    functionName: iSLT_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iSLT_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:412,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_drm.c:413,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 410
    functionDepth: 1
    functionLinenumber: 410
    functionLinenumberEnd: 415
    functionName: ohdr_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *ohdr_box_new()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:421,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:422,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:423,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:424,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 425
      start: 417
    functionDepth: 0
    functionLinenumber: 417
    functionLinenumberEnd: 425
    functionName: ohdr_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void ohdr_box_del(GF_Box *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:432,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:433,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:434,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_drm.c:435,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_drm.c:436,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_drm.c:437,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_drm.c:438,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_drm.c:443,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:445,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_drm.c:450,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:452,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_drm.c:457,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:459,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:463,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_drm.c:465,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 33
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 427
    functionDepth: 2
    functionLinenumber: 427
    functionLinenumberEnd: 466
    functionName: ohdr_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - gf_bs_read_u8
    - gf_bs_read_u64
    - gf_malloc
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ohdr_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_drm.c:475,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:477,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:478,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_drm.c:479,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_drm.c:481,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_drm.c:482,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_drm.c:483,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_drm.c:484,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_drm.c:485,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:487,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_drm.c:487,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:488,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_drm.c:488,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:489,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:491,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 469
    functionDepth: 3
    functionLinenumber: 469
    functionLinenumberEnd: 493
    functionName: ohdr_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u16
    - strlen
    - gf_bs_write_data
    - ISOM_DECREASE_SIZE
    - gf_bs_write_u64
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ohdr_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_drm.c:499,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_drm.c:500,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 495
    functionDepth: 0
    functionLinenumber: 495
    functionLinenumberEnd: 503
    functionName: ohdr_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ohdr_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:510,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 512
      start: 508
    functionDepth: 1
    functionLinenumber: 508
    functionLinenumberEnd: 512
    functionName: grpi_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *grpi_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:518,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:519,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:520,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 514
    functionDepth: 0
    functionLinenumber: 514
    functionLinenumberEnd: 521
    functionName: grpi_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void grpi_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:528,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_drm.c:529,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:530,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_drm.c:531,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_drm.c:535,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:537,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_drm.c:540,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:542,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:543,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 523
    functionDepth: 1
    functionLinenumber: 523
    functionLinenumberEnd: 545
    functionName: grpi_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_bs_read_u16
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err grpi_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_drm.c:554,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_drm.c:556,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_drm.c:557,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:558,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_drm.c:559,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:560,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:561,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 548
    functionDepth: 3
    functionLinenumber: 548
    functionLinenumberEnd: 563
    functionName: grpi_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u16
    - gf_bs_write_data
    - gf_bs_write_u8
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err grpi_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_drm.c:569,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 565
    functionDepth: 0
    functionLinenumber: 565
    functionLinenumberEnd: 571
    functionName: grpi_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err grpi_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:580,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 578
    functionDepth: 1
    functionLinenumber: 578
    functionLinenumberEnd: 582
    functionName: mdri_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *mdri_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:588,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 589
      start: 584
    functionDepth: 0
    functionLinenumber: 584
    functionLinenumberEnd: 589
    functionName: mdri_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void mdri_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_drm.c:593,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 594
      start: 591
    functionDepth: 2
    functionLinenumber: 591
    functionLinenumberEnd: 594
    functionName: mdri_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdri_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_drm.c:600,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 597
    functionDepth: 2
    functionLinenumber: 597
    functionLinenumberEnd: 603
    functionName: mdri_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdri_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 608
      start: 605
    functionDepth: 0
    functionLinenumber: 605
    functionLinenumberEnd: 608
    functionName: mdri_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdri_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:615,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 613
    functionDepth: 1
    functionLinenumber: 613
    functionLinenumberEnd: 617
    functionName: odtt_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *odtt_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:622,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 623
      start: 619
    functionDepth: 0
    functionLinenumber: 619
    functionLinenumberEnd: 623
    functionName: odtt_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void odtt_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:629,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:630,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 625
    functionDepth: 1
    functionLinenumber: 625
    functionLinenumberEnd: 632
    functionName: odtt_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err odtt_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_drm.c:640,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:642,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 644
      start: 635
    functionDepth: 3
    functionLinenumber: 635
    functionLinenumberEnd: 644
    functionName: odtt_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err odtt_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 650
      start: 646
    functionDepth: 0
    functionLinenumber: 646
    functionLinenumberEnd: 650
    functionName: odtt_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err odtt_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:658,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 656
    functionDepth: 1
    functionLinenumber: 656
    functionLinenumberEnd: 660
    functionName: odrb_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *odrb_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:665,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:666,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 662
    functionDepth: 0
    functionLinenumber: 662
    functionLinenumberEnd: 667
    functionName: odrb_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void odrb_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_drm.c:674,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:676,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 669
    functionDepth: 1
    functionLinenumber: 669
    functionLinenumberEnd: 679
    functionName: odrb_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err odrb_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_drm.c:687,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:689,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 682
    functionDepth: 3
    functionLinenumber: 682
    functionLinenumberEnd: 691
    functionName: odrb_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err odrb_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 698
      start: 693
    functionDepth: 0
    functionLinenumber: 693
    functionLinenumberEnd: 698
    functionName: odrb_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err odrb_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:707,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 705
    functionDepth: 1
    functionLinenumber: 705
    functionLinenumberEnd: 709
    functionName: odkm_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *odkm_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:713,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 714
      start: 711
    functionDepth: 0
    functionLinenumber: 711
    functionLinenumberEnd: 714
    functionName: odkm_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void odkm_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_drm.c:721,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_drm.c:724,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 716
    functionDepth: 1
    functionLinenumber: 716
    functionLinenumberEnd: 728
    functionName: odkm_Add
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err odkm_Add(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_drm.c:732,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 730
    functionDepth: 2
    functionLinenumber: 730
    functionLinenumberEnd: 733
    functionName: odkm_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err odkm_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_drm.c:738,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 739
      start: 736
    functionDepth: 3
    functionLinenumber: 736
    functionLinenumberEnd: 739
    functionName: odkm_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err odkm_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:745,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:746,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 748
      start: 741
    functionDepth: 2
    functionLinenumber: 741
    functionLinenumberEnd: 748
    functionName: odkm_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err odkm_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:756,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 754
    functionDepth: 1
    functionLinenumber: 754
    functionLinenumberEnd: 758
    functionName: pssh_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *pssh_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:764,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:765,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:766,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 767
      start: 760
    functionDepth: 0
    functionLinenumber: 760
    functionLinenumberEnd: 767
    functionName: pssh_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void pssh_box_del(GF_Box *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:773,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:774,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:776,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:777,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_drm.c:782,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:786,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:787,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:791,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:792,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_drm.c:796,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:799,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:800,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 803
      start: 769
    functionDepth: 1
    functionLinenumber: 769
    functionLinenumberEnd: 803
    functionName: pssh_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pssh_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_drm.c:812,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:815,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:818,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:820,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:823,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:824,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:826,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 828
      start: 807
    functionDepth: 3
    functionLinenumber: 807
    functionLinenumberEnd: 828
    functionName: pssh_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pssh_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 842
      start: 830
    functionDepth: 0
    functionLinenumber: 830
    functionLinenumberEnd: 842
    functionName: pssh_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pssh_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:848,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 850
      start: 846
    functionDepth: 1
    functionLinenumber: 846
    functionLinenumberEnd: 850
    functionName: tenc_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tenc_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:854,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 855
      start: 852
    functionDepth: 0
    functionLinenumber: 852
    functionLinenumberEnd: 855
    functionName: tenc_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void tenc_box_del(GF_Box *s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:862,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:864,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:867,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_drm.c:869,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_drm.c:870,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:872,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:873,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:874,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:876,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:879,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:884,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:885,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:887,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:888,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:889,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_drm.c:891,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:895,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_drm.c:898,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 857
    functionDepth: 1
    functionLinenumber: 857
    functionLinenumberEnd: 902
    functionName: tenc_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - GF_LOG
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tenc_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_drm.c:911,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:914,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:917,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_drm.c:920,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_drm.c:921,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:923,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:924,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:927,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:929,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:930,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:932,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:933,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 936
      start: 906
    functionDepth: 3
    functionLinenumber: 906
    functionLinenumberEnd: 936
    functionName: tenc_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_int
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tenc_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 952
      start: 938
    functionDepth: 0
    functionLinenumber: 938
    functionLinenumberEnd: 952
    functionName: tenc_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tenc_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:957,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 960
      start: 955
    functionDepth: 1
    functionLinenumber: 955
    functionLinenumberEnd: 960
    functionName: piff_tenc_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *piff_tenc_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:964,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 965
      start: 962
    functionDepth: 0
    functionLinenumber: 962
    functionLinenumberEnd: 965
    functionName: piff_tenc_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void piff_tenc_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:971,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:973,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/isomedia/box_code_drm.c:974,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:976,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_drm.c:977,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:981,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:982,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 984
      start: 967
    functionDepth: 1
    functionLinenumber: 967
    functionLinenumberEnd: 984
    functionName: piff_tenc_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_bs_read_u24
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err piff_tenc_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_drm.c:994,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:996,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/isomedia/box_code_drm.c:997,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_drm.c:999,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1000,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:1001,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1003
      start: 988
    functionDepth: 2
    functionLinenumber: 988
    functionLinenumberEnd: 1003
    functionName: piff_tenc_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u24
    - gf_bs_write_int
    - gf_bs_write_data
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err piff_tenc_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1010
      start: 1005
    functionDepth: 0
    functionLinenumber: 1005
    functionLinenumberEnd: 1010
    functionName: piff_tenc_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err piff_tenc_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:1016,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1020
      start: 1014
    functionDepth: 1
    functionLinenumber: 1014
    functionLinenumberEnd: 1020
    functionName: piff_psec_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *piff_psec_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_drm.c:1026,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_drm.c:1028,1
    - Dst: gf_isom_cenc_samp_aux_info_del
      Src: /src/gpac/src/isomedia/box_code_drm.c:1029,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_drm.c:1031,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:1033,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1034
      start: 1022
    functionDepth: 1
    functionLinenumber: 1022
    functionLinenumberEnd: 1034
    functionName: piff_psec_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_isom_cenc_samp_aux_info_del
    - gf_list_count
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void piff_psec_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:1041,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1043,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/isomedia/box_code_drm.c:1044,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:1047,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_drm.c:1048,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1049,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:1050,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:1055,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:1057,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:1058,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_drm.c:1060,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_drm.c:1064,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1068
      start: 1037
    functionDepth: 1
    functionLinenumber: 1037
    functionLinenumberEnd: 1068
    functionName: piff_psec_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - GF_LOG
    - gf_bs_get_position
    - gf_bs_skip_bytes
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_bs_read_u24
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err piff_psec_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:1078,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_drm.c:1081,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_drm.c:1085,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_drm.c:1102,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:1104,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_drm.c:1110,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:1112,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_drm.c:1116,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 2
    argNames:
    - ptr
    - bs
    argTypes:
    - GF_SampleEncryptionBox*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1117
      start: 1072
    functionDepth: 1
    functionLinenumber: 1072
    functionLinenumberEnd: 1117
    functionName: store_senc_info
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_seek
    - GF_LOG
    - gf_bs_get_position
    - gf_bs_write_u64
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err store_senc_info(GF_SampleEncryptionBox *ptr, GF_BitStream *bs)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_drm.c:1126,1
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_drm.c:1131,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1133,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/isomedia/box_code_drm.c:1134,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_drm.c:1137,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1138,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:1139,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_drm.c:1141,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:1142,1
    - Dst: store_senc_info
      Src: /src/gpac/src/isomedia/box_code_drm.c:1145,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_drm.c:1149,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:1151,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1155
      start: 1119
    functionDepth: 2
    functionLinenumber: 1119
    functionLinenumberEnd: 1155
    functionName: piff_psec_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - store_senc_info
    - gf_list_get
    - gf_isom_box_write_header
    - gf_bs_write_u24
    - gf_bs_write_int
    - gf_list_count
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err piff_psec_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_drm.c:1162,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_drm.c:1175,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1180
      start: 1157
    functionDepth: 1
    functionLinenumber: 1157
    functionLinenumberEnd: 1180
    functionName: piff_psec_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err piff_psec_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:1186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1189
      start: 1184
    functionDepth: 1
    functionLinenumber: 1184
    functionLinenumberEnd: 1189
    functionName: piff_pssh_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *piff_pssh_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:1194,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:1195,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1196
      start: 1191
    functionDepth: 0
    functionLinenumber: 1191
    functionLinenumberEnd: 1196
    functionName: piff_pssh_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void piff_pssh_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:1202,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1204,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/isomedia/box_code_drm.c:1205,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:1206,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:1207,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_drm.c:1211,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:1215,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:1216,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1218
      start: 1198
    functionDepth: 1
    functionLinenumber: 1198
    functionLinenumberEnd: 1218
    functionName: piff_pssh_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_malloc
    - gf_bs_read_u24
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err piff_pssh_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_drm.c:1225,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1227,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/isomedia/box_code_drm.c:1228,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:1230,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:1231,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:1232,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1234
      start: 1222
    functionDepth: 2
    functionLinenumber: 1222
    functionLinenumberEnd: 1234
    functionName: piff_pssh_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u24
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err piff_pssh_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1242
      start: 1236
    functionDepth: 0
    functionLinenumber: 1236
    functionLinenumberEnd: 1242
    functionName: piff_pssh_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err piff_pssh_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:1247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1249
      start: 1245
    functionDepth: 1
    functionLinenumber: 1245
    functionLinenumberEnd: 1249
    functionName: senc_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *senc_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/isomedia/box_code_drm.c:1255,1
    - Dst: gf_isom_cenc_samp_aux_info_del
      Src: /src/gpac/src/isomedia/box_code_drm.c:1257,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_drm.c:1259,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:1260,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1261
      start: 1251
    functionDepth: 1
    functionLinenumber: 1251
    functionLinenumberEnd: 1261
    functionName: senc_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_cenc_samp_aux_info_del
    - gf_list_pop_back
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void senc_box_del(GF_Box *s)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:1274,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_code_drm.c:1304,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_drm.c:1318,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:1320,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/box_code_drm.c:1335,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_drm.c:1338,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:1352,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_drm.c:1354,1
    - Dst: gf_isom_get_sample_cenc_info_internal
      Src: /src/gpac/src/isomedia/box_code_drm.c:1358,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_drm.c:1361,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:1362,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_drm.c:1379,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/isomedia/box_code_drm.c:1379,1
    - Dst: gf_isom_cenc_samp_aux_info_del
      Src: /src/gpac/src/isomedia/box_code_drm.c:1380,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_drm.c:1381,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_drm.c:1390,1
    - Dst: gf_isom_cenc_samp_aux_info_del
      Src: /src/gpac/src/isomedia/box_code_drm.c:1398,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:1406,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_drm.c:1411,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_drm.c:1413,1
    - Dst: gf_cenc_key_info_get_iv_size
      Src: /src/gpac/src/isomedia/box_code_drm.c:1414,1
    - Dst: gf_isom_cenc_samp_aux_info_del
      Src: /src/gpac/src/isomedia/box_code_drm.c:1416,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_drm.c:1417,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_drm.c:1418,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_drm.c:1421,1
    - Dst: gf_isom_cenc_samp_aux_info_del
      Src: /src/gpac/src/isomedia/box_code_drm.c:1426,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_drm.c:1427,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_drm.c:1428,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_drm.c:1432,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_drm.c:1436,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:1439,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_drm.c:1441,1
    - Dst: gf_isom_cenc_samp_aux_info_del
      Src: /src/gpac/src/isomedia/box_code_drm.c:1445,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_drm.c:1449,1
    - Dst: gf_isom_cenc_samp_aux_info_del
      Src: /src/gpac/src/isomedia/box_code_drm.c:1451,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_drm.c:1452,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:1455,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_drm.c:1459,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_drm.c:1472,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_drm.c:1476,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_drm.c:1478,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 160
    argCount: 5
    argNames:
    - bs
    - trak
    - traf
    - senc
    - max_nb_samples
    argTypes:
    - GF_BitStream*
    - GF_TrackBox*
    - void*
    - GF_SampleEncryptionBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1481
      start: 1266
    functionDepth: 1
    functionLinenumber: 1266
    functionLinenumberEnd: 1481
    functionName: senc_Parse
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_read_data
    - GF_SAFEALLOC
    - gf_isom_get_sample_cenc_info_internal
    - gf_bs_read_u16
    - gf_list_new
    - gf_bs_read_u32
    - gf_isom_cenc_samp_aux_info_del
    - gf_list_add
    - gf_bs_skip_bytes
    - GF_LOG
    - gf_bs_get_position
    - gf_error_to_string
    - gf_list_enum
    - gf_malloc
    - gf_bs_seek
    - gf_bs_read_int
    - gf_cenc_key_info_get_iv_size
    - gf_opts_get_bool
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err senc_Parse(GF_BitStream *bs, GF_TrackBox *trak, void *traf,
      GF_SampleEncryptionBox *senc, u32 max_nb_samples)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:1487,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1489,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/isomedia/box_code_drm.c:1490,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:1492,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_drm.c:1493,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1497
      start: 1484
    functionDepth: 1
    functionLinenumber: 1484
    functionLinenumberEnd: 1497
    functionName: senc_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u24
    - gf_bs_get_position
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err senc_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_drm.c:1509,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_drm.c:1513,1
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_drm.c:1521,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1524,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/isomedia/box_code_drm.c:1525,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_drm.c:1527,1
    - Dst: store_senc_info
      Src: /src/gpac/src/isomedia/box_code_drm.c:1529,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_drm.c:1533,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:1536,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1539
      start: 1502
    functionDepth: 2
    functionLinenumber: 1502
    functionLinenumberEnd: 1539
    functionName: senc_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - store_senc_info
    - gf_isom_box_write_header
    - gf_bs_write_u24
    - gf_list_count
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err senc_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_drm.c:1546,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_drm.c:1550,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_drm.c:1564,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1570
      start: 1541
    functionDepth: 1
    functionLinenumber: 1541
    functionLinenumberEnd: 1570
    functionName: senc_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err senc_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:1575,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1579
      start: 1573
    functionDepth: 1
    functionLinenumber: 1573
    functionLinenumberEnd: 1579
    functionName: adkm_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *adkm_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:1585,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1586
      start: 1581
    functionDepth: 0
    functionLinenumber: 1581
    functionLinenumberEnd: 1586
    functionName: adkm_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void adkm_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_drm.c:1593,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_drm.c:1596,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1600
      start: 1588
    functionDepth: 1
    functionLinenumber: 1588
    functionLinenumberEnd: 1600
    functionName: adkm_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err adkm_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_drm.c:1604,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1605
      start: 1602
    functionDepth: 2
    functionLinenumber: 1602
    functionLinenumberEnd: 1605
    functionName: adkm_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err adkm_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_drm.c:1610,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1611
      start: 1608
    functionDepth: 3
    functionLinenumber: 1608
    functionLinenumberEnd: 1611
    functionName: adkm_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err adkm_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:1617,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:1618,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1620
      start: 1613
    functionDepth: 2
    functionLinenumber: 1613
    functionLinenumberEnd: 1620
    functionName: adkm_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err adkm_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:1625,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1629
      start: 1623
    functionDepth: 1
    functionLinenumber: 1623
    functionLinenumberEnd: 1629
    functionName: ahdr_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *ahdr_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:1633,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1634
      start: 1631
    functionDepth: 0
    functionLinenumber: 1631
    functionLinenumberEnd: 1634
    functionName: ahdr_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void ahdr_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_drm.c:1642,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1646
      start: 1637
    functionDepth: 1
    functionLinenumber: 1637
    functionLinenumberEnd: 1646
    functionName: ahdr_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ahdr_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_drm.c:1650,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1651
      start: 1648
    functionDepth: 2
    functionLinenumber: 1648
    functionLinenumberEnd: 1651
    functionName: ahdr_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ahdr_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_drm.c:1656,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1657
      start: 1654
    functionDepth: 3
    functionLinenumber: 1654
    functionLinenumberEnd: 1657
    functionName: ahdr_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ahdr_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:1663,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1665
      start: 1659
    functionDepth: 2
    functionLinenumber: 1659
    functionLinenumberEnd: 1665
    functionName: ahdr_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ahdr_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:1670,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1674
      start: 1668
    functionDepth: 1
    functionLinenumber: 1668
    functionLinenumberEnd: 1674
    functionName: aprm_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *aprm_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:1678,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1679
      start: 1676
    functionDepth: 0
    functionLinenumber: 1676
    functionLinenumberEnd: 1679
    functionName: aprm_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void aprm_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_drm.c:1686,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_drm.c:1689,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1693
      start: 1681
    functionDepth: 1
    functionLinenumber: 1681
    functionLinenumberEnd: 1693
    functionName: aprm_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err aprm_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_drm.c:1697,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1698
      start: 1695
    functionDepth: 2
    functionLinenumber: 1695
    functionLinenumberEnd: 1698
    functionName: aprm_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err aprm_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_drm.c:1703,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1704
      start: 1701
    functionDepth: 3
    functionLinenumber: 1701
    functionLinenumberEnd: 1704
    functionName: aprm_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err aprm_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:1710,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:1711,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1713
      start: 1706
    functionDepth: 2
    functionLinenumber: 1706
    functionLinenumberEnd: 1713
    functionName: aprm_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err aprm_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:1718,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1722
      start: 1716
    functionDepth: 1
    functionLinenumber: 1716
    functionLinenumberEnd: 1722
    functionName: aeib_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *aeib_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:1728,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:1729,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1730
      start: 1724
    functionDepth: 0
    functionLinenumber: 1724
    functionLinenumberEnd: 1730
    functionName: aeib_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void aeib_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:1739,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_drm.c:1744,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:1746,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1748,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1751
      start: 1732
    functionDepth: 1
    functionLinenumber: 1732
    functionLinenumberEnd: 1751
    functionName: aeib_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_data
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err aeib_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_drm.c:1760,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:1763,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_drm.c:1763,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1764,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1766,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1768
      start: 1755
    functionDepth: 3
    functionLinenumber: 1755
    functionLinenumberEnd: 1768
    functionName: aeib_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u8
    - strlen
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err aeib_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_drm.c:1774,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1777
      start: 1770
    functionDepth: 0
    functionLinenumber: 1770
    functionLinenumberEnd: 1777
    functionName: aeib_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err aeib_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:1782,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1786
      start: 1780
    functionDepth: 1
    functionLinenumber: 1780
    functionLinenumberEnd: 1786
    functionName: akey_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *akey_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:1790,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1791
      start: 1788
    functionDepth: 0
    functionLinenumber: 1788
    functionLinenumberEnd: 1791
    functionName: akey_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void akey_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_drm.c:1798,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1802
      start: 1793
    functionDepth: 1
    functionLinenumber: 1793
    functionLinenumberEnd: 1802
    functionName: akey_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err akey_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_drm.c:1806,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1807
      start: 1804
    functionDepth: 2
    functionLinenumber: 1804
    functionLinenumberEnd: 1807
    functionName: akey_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err akey_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_drm.c:1812,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1813
      start: 1810
    functionDepth: 3
    functionLinenumber: 1810
    functionLinenumberEnd: 1813
    functionName: akey_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err akey_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_drm.c:1819,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1821
      start: 1815
    functionDepth: 2
    functionLinenumber: 1815
    functionLinenumberEnd: 1821
    functionName: akey_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err akey_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:1826,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1828
      start: 1824
    functionDepth: 1
    functionLinenumber: 1824
    functionLinenumberEnd: 1828
    functionName: flxs_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *flxs_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:1835,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:1836,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1837
      start: 1830
    functionDepth: 0
    functionLinenumber: 1830
    functionLinenumberEnd: 1837
    functionName: flxs_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void flxs_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_drm.c:1846,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:1848,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1851
      start: 1839
    functionDepth: 1
    functionLinenumber: 1839
    functionLinenumberEnd: 1851
    functionName: flxs_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err flxs_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_drm.c:1860,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:1863,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_drm.c:1863,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1864,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1867
      start: 1855
    functionDepth: 2
    functionLinenumber: 1855
    functionLinenumberEnd: 1867
    functionName: flxs_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u8
    - gf_isom_box_write_header
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err flxs_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_drm.c:1873,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1875
      start: 1869
    functionDepth: 0
    functionLinenumber: 1869
    functionLinenumberEnd: 1875
    functionName: flxs_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err flxs_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_drm.c:1880,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1882
      start: 1878
    functionDepth: 1
    functionLinenumber: 1878
    functionLinenumberEnd: 1882
    functionName: adaf_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *adaf_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:1886,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1887
      start: 1884
    functionDepth: 0
    functionLinenumber: 1884
    functionLinenumberEnd: 1887
    functionName: adaf_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void adaf_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_drm.c:1893,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1894,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1895,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1896,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1898
      start: 1889
    functionDepth: 1
    functionLinenumber: 1889
    functionLinenumberEnd: 1898
    functionName: adaf_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err adaf_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_drm.c:1907,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1910,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1911,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1912,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1914
      start: 1902
    functionDepth: 3
    functionLinenumber: 1902
    functionLinenumberEnd: 1914
    functionName: adaf_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u8
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err adaf_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1921
      start: 1916
    functionDepth: 0
    functionLinenumber: 1916
    functionLinenumberEnd: 1921
    functionName: adaf_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err adaf_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/sample_descs.c:33,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:34,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/sample_descs.c:36,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ptr
    - bs
    argTypes:
    - GF_SampleEntryBox*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 40
    functionName: gf_isom_base_sample_entry_read
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 3
    functionsReached:
    - gf_bs_read_data
    - GF_LOG
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_base_sample_entry_read(GF_SampleEntryBox *ptr, GF_BitStream
      *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_SampleEntryBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: gf_isom_sample_entry_predestroy
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_isom_sample_entry_predestroy(GF_SampleEntryBox *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ent
    argTypes:
    - GF_SampleEntryBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionName: gf_isom_sample_entry_init
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_isom_sample_entry_init(GF_SampleEntryBox *ent)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_init
      Src: /src/gpac/src/isomedia/sample_descs.c:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - ent
    argTypes:
    - GF_VisualSampleEntryBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 60
    functionName: gf_isom_video_sample_entry_init
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_entry_init
    linkageType: ''
    returnType: void
    signature: void gf_isom_video_sample_entry_init(GF_VisualSampleEntryBox *ent)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/sample_descs.c:65,1
    - Dst: gf_isom_base_sample_entry_read
      Src: /src/gpac/src/isomedia/sample_descs.c:67,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:70,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:71,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:72,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:73,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:74,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:75,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:76,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:77,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:78,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:79,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:80,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/sample_descs.c:81,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:83,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 2
    argNames:
    - ptr
    - bs
    argTypes:
    - GF_VisualSampleEntryBox*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 62
    functionDepth: 2
    functionLinenumber: 62
    functionLinenumberEnd: 86
    functionName: gf_isom_video_sample_entry_read
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - gf_isom_base_sample_entry_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_video_sample_entry_read(GF_VisualSampleEntryBox *ptr,
      GF_BitStream *bs)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/sample_descs.c:91,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:92,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:94,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:95,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:96,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:97,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:98,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:99,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:100,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:101,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:102,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:103,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:104,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/sample_descs.c:105,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:106,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:107,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/isomedia/sample_descs.c:110,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:112,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:113,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:114,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:115,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:116,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:117,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:118,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:119,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:120,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:121,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:122,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:123,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/sample_descs.c:126,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:127,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/sample_descs.c:130,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:131,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/sample_descs.c:134,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:135,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/sample_descs.c:138,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:139,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/sample_descs.c:142,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:143,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/sample_descs.c:146,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:147,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/sample_descs.c:150,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:151,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/sample_descs.c:154,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:155,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/sample_descs.c:158,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:159,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/sample_descs.c:162,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:163,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/sample_descs.c:166,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:167,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/sample_descs.c:170,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:171,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 67
    argCount: 2
    argNames:
    - ptr
    - bs
    argTypes:
    - GF_VisualSampleEntryBox*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 175
    functionName: gf_isom_video_sample_entry_write
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_bs_write_data
    - gf_list_add
    - gf_list_del_item
    - gf_sys_old_arch_compat
    - gf_isom_box_find_child
    linkageType: ''
    returnType: void
    signature: void gf_isom_video_sample_entry_write(GF_VisualSampleEntryBox *ptr,
      GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ent
    argTypes:
    - GF_VisualSampleEntryBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionName: gf_isom_video_sample_entry_size
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_isom_video_sample_entry_size(GF_VisualSampleEntryBox *ent)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_init
      Src: /src/gpac/src/isomedia/sample_descs.c:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_AudioSampleEntryBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 192
    functionName: gf_isom_audio_sample_entry_init
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_entry_init
    linkageType: ''
    returnType: void
    signature: void gf_isom_audio_sample_entry_init(GF_AudioSampleEntryBox *ptr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/sample_descs.c:197,1
    - Dst: gf_isom_base_sample_entry_read
      Src: /src/gpac/src/isomedia/sample_descs.c:199,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:202,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:203,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:204,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:205,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:206,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:207,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:208,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:209,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:210,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/sample_descs.c:215,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/sample_descs.c:216,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/sample_descs.c:218,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/sample_descs.c:219,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 2
    argNames:
    - ptr
    - bs
    argTypes:
    - GF_AudioSampleEntryBox*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 194
    functionDepth: 2
    functionLinenumber: 194
    functionLinenumberEnd: 222
    functionName: gf_isom_audio_sample_entry_read
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - gf_isom_base_sample_entry_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_audio_sample_entry_read(GF_AudioSampleEntryBox *ptr,
      GF_BitStream *bs)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_AudioSampleEntryBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 248
    functionName: gf_isom_audio_sample_get_audio_codec_cfg_box
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *gf_isom_audio_sample_get_audio_codec_cfg_box(GF_AudioSampleEntryBox
      *ptr)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/sample_descs.c:251,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:252,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:254,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:255,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:256,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:257,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:258,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:259,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:260,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:261,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/sample_descs.c:262,1
    - Dst: gf_isom_audio_sample_get_audio_codec_cfg_box
      Src: /src/gpac/src/isomedia/sample_descs.c:267,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/sample_descs.c:273,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:275,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:276,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:277,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:278,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/sample_descs.c:281,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 2
    argNames:
    - ptr
    - bs
    argTypes:
    - GF_AudioSampleEntryBox*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 284
    functionName: gf_isom_audio_sample_entry_write
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_isom_audio_sample_get_audio_codec_cfg_box
    - gf_bs_write_u16
    - gf_bs_write_u32
    linkageType: ''
    returnType: void
    signature: void gf_isom_audio_sample_entry_write(GF_AudioSampleEntryBox *ptr,
      GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_AudioSampleEntryBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 296
    functionName: gf_isom_audio_sample_entry_size
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_isom_audio_sample_entry_size(GF_AudioSampleEntryBox *ptr)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:309,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:313,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/sample_descs.c:335,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/sample_descs.c:337,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 36
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 303
    functionDepth: 1
    functionLinenumber: 303
    functionLinenumberEnd: 339
    functionName: GF_3GPConfig *gf_isom_3gp_config_get(GF_ISOFile *the_file, u32 trackNumber,
      u32 StreamDescriptionIndex)
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - memcpy
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_3GPConfig *gf_isom_3gp_config_get(GF_ISOFile *the_file,
      u32 trackNumber, u32 StreamDescriptionIndex)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:347,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:350,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/sample_descs.c:356,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/sample_descs.c:358,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 341
    functionDepth: 1
    functionLinenumber: 341
    functionLinenumberEnd: 360
    functionName: GF_AC3Config *gf_isom_ac3_config_get(GF_ISOFile *the_file, u32 trackNumber,
      u32 StreamDescriptionIndex)
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - memcpy
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AC3Config *gf_isom_ac3_config_get(GF_ISOFile *the_file,
      u32 trackNumber, u32 StreamDescriptionIndex)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:368,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:371,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/sample_descs.c:377,1
    - Dst: gf_odf_ac4_cfg_deep_copy
      Src: /src/gpac/src/isomedia/sample_descs.c:379,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 362
    functionDepth: 1
    functionLinenumber: 362
    functionLinenumberEnd: 383
    functionName: GF_AC4Config *gf_isom_ac4_config_get(GF_ISOFile *the_file, u32 trackNumber,
      u32 StreamDescriptionIndex)
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - gf_malloc
    - gf_odf_ac4_cfg_deep_copy
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AC4Config *gf_isom_ac4_config_get(GF_ISOFile *the_file,
      u32 trackNumber, u32 StreamDescriptionIndex)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:391,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:396,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/src/isomedia/sample_descs.c:402,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/sample_descs.c:408,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/sample_descs.c:409,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 28
    argCount: 5
    argNames:
    - the_file
    - trackNumber
    - StreamDescriptionIndex
    - dsi
    - dsi_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 385
    functionDepth: 1
    functionLinenumber: 385
    functionLinenumberEnd: 413
    functionName: gf_isom_flac_config_get
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - memcpy
    - gf_isom_get_original_format_type
    - gf_isom_get_track_box
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_flac_config_get(GF_ISOFile *the_file, u32 trackNumber,
      u32 StreamDescriptionIndex, u8 **dsi, u32 *dsi_size)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:420,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:423,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 5
    argNames:
    - the_file
    - trackNumber
    - StreamDescriptionIndex
    - format_info
    - peak_data_rate
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 415
    functionDepth: 1
    functionLinenumber: 415
    functionLinenumberEnd: 432
    functionName: gf_isom_truehd_config_get
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_truehd_config_get(GF_ISOFile *the_file, u32 trackNumber,
      u32 StreamDescriptionIndex, u32 *format_info, u32 *peak_data_rate)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:444,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:447,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:451,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:454,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:458,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:462,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:464,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:469,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 7
    argNames:
    - the_file
    - trackNumber
    - URLname
    - URNname
    - format
    - peak_rate
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - char*
    - char*
    - u32
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 435
    functionDepth: 5
    functionLinenumber: 435
    functionLinenumberEnd: 471
    functionName: gf_isom_truehd_config_new
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - gf_isom_box_new_parent
    - gf_list_count
    - Media_CreateDataRef
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_truehd_config_new(GF_ISOFile *the_file, u32 trackNumber,
      char *URLname, char *URNname, u32 format, u32 peak_rate, u32 *outDescriptionIndex)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:485,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:488,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:492,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:495,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:499,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:503,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:505,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:511,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - cfg
    - URLname
    - URNname
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_OpusConfig*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 475
    functionDepth: 5
    functionLinenumber: 475
    functionLinenumberEnd: 513
    functionName: gf_isom_opus_config_new
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - gf_isom_box_new_parent
    - gf_list_count
    - Media_CreateDataRef
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_opus_config_new(GF_ISOFile *the_file, u32 trackNumber,
      GF_OpusConfig *cfg, char *URLname, char *URNname, u32 *outDescriptionIndex)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:521,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/sample_descs.c:524,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:528,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/src/isomedia/sample_descs.c:534,1
    - Dst: gf_odf_opus_cfg_write
      Src: /src/gpac/src/isomedia/sample_descs.c:543,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 29
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - StreamDescriptionIndex
    - dsi
    - dsi_size
    - ocfg
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u8**
    - u32*
    - GF_OpusConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 516
    functionDepth: 1
    functionLinenumber: 516
    functionLinenumberEnd: 548
    functionName: gf_isom_opus_config_get_internal
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - memset
    - gf_odf_opus_cfg_write
    - gf_isom_get_original_format_type
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_opus_config_get_internal(GF_ISOFile *the_file, u32 trackNumber,
      u32 StreamDescriptionIndex, u8 **dsi, u32 *dsi_size, GF_OpusConfig *ocfg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_opus_config_get_internal
      Src: /src/gpac/src/isomedia/sample_descs.c:553,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - isom_file
    - trackNumber
    - sampleDescriptionIndex
    - dsi
    - dsi_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 554
      start: 550
    functionDepth: 2
    functionLinenumber: 550
    functionLinenumberEnd: 554
    functionName: gf_isom_opus_config_get
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_isom_opus_config_get_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_opus_config_get(GF_ISOFile *isom_file, u32 trackNumber,
      u32 sampleDescriptionIndex, u8 **dsi, u32 *dsi_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_opus_config_get_internal
      Src: /src/gpac/src/isomedia/sample_descs.c:559,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - isom_file
    - trackNumber
    - sampleDescriptionIndex
    - opcfg
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_OpusConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 556
    functionDepth: 2
    functionLinenumber: 556
    functionLinenumberEnd: 561
    functionName: gf_isom_opus_config_get_desc
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 1
    functionsReached:
    - gf_isom_opus_config_get_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_opus_config_get_desc(GF_ISOFile *isom_file, u32 trackNumber,
      u32 sampleDescriptionIndex, GF_OpusConfig *opcfg)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:575,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:578,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/isomedia/sample_descs.c:600,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:610,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:613,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:617,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:628,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:630,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/sample_descs.c:632,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/sample_descs.c:635,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:638,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:643,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:645,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/sample_descs.c:647,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/sample_descs.c:650,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:652,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 84
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - cfg
    - URLname
    - URNname
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_3GPConfig*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 566
    functionDepth: 5
    functionLinenumber: 566
    functionLinenumberEnd: 657
    functionName: gf_isom_3gp_config_new
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - gf_isom_box_del
    - gf_isom_is_video_handler_type
    - memcpy
    - gf_isom_box_new_parent
    - gf_list_count
    - Media_CreateDataRef
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_3gp_config_new(GF_ISOFile *the_file, u32 trackNumber,
      GF_3GPConfig *cfg, const char *URLname, const char *URNname, u32 *outDescriptionIndex)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:668,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:671,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:675,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/sample_descs.c:696,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 34
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - param
    - DescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_3GPConfig*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 698
      start: 659
    functionDepth: 1
    functionLinenumber: 659
    functionLinenumberEnd: 698
    functionName: gf_isom_3gp_config_update
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_list_get
    - memcpy
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_3gp_config_update(GF_ISOFile *the_file, u32 trackNumber,
      GF_3GPConfig *param, u32 DescriptionIndex)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:708,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:711,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:715,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:718,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:722,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/sample_descs.c:725,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:727,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/sample_descs.c:729,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:731,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/sample_descs.c:734,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/sample_descs.c:737,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:740,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:741,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 38
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - cfg
    - URLname
    - URNname
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_AC3Config*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 743
      start: 700
    functionDepth: 5
    functionLinenumber: 700
    functionLinenumberEnd: 743
    functionName: gf_isom_ac3_config_new
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - gf_isom_box_del
    - memcpy
    - gf_isom_box_new_parent
    - gf_list_count
    - Media_CreateDataRef
    - gf_isom_get_track_box
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_ac3_config_new(GF_ISOFile *the_file, u32 trackNumber,
      GF_AC3Config *cfg, const char *URLname, const char *URNname, u32 *outDescriptionIndex)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:752,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:755,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:759,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:761,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/sample_descs.c:770,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 23
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    - cfg
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_AC3Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 772
      start: 745
    functionDepth: 1
    functionLinenumber: 745
    functionLinenumberEnd: 772
    functionName: gf_isom_ac3_config_update
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - memcpy
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_ac3_config_update(GF_ISOFile *the_file, u32 trackNumber,
      u32 sampleDescriptionIndex, GF_AC3Config *cfg)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:782,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:785,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:789,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:792,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:796,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/sample_descs.c:798,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:800,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/sample_descs.c:803,1
    - Dst: gf_odf_ac4_cfg_deep_copy
      Src: /src/gpac/src/isomedia/sample_descs.c:806,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:809,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:810,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - cfg
    - URLname
    - URNname
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_AC4Config*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 812
      start: 774
    functionDepth: 5
    functionLinenumber: 774
    functionLinenumberEnd: 812
    functionName: gf_isom_ac4_config_new
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - gf_isom_box_del
    - gf_odf_ac4_cfg_deep_copy
    - gf_isom_box_new_parent
    - gf_list_count
    - Media_CreateDataRef
    - gf_isom_get_track_box
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_ac4_config_new(GF_ISOFile *the_file, u32 trackNumber,
      GF_AC4Config *cfg, const char *URLname, const char *URNname, u32 *outDescriptionIndex)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:821,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:824,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:828,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:830,1
    - Dst: gf_odf_ac4_cfg_deep_copy
      Src: /src/gpac/src/isomedia/sample_descs.c:834,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    - cfg
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_AC4Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 836
      start: 814
    functionDepth: 1
    functionLinenumber: 814
    functionLinenumberEnd: 836
    functionName: gf_isom_ac4_config_update
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_odf_ac4_cfg_deep_copy
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_ac4_config_update(GF_ISOFile *the_file, u32 trackNumber,
      u32 sampleDescriptionIndex, GF_AC4Config *cfg)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:846,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:849,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:853,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:856,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:860,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/sample_descs.c:862,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:864,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/sample_descs.c:867,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/sample_descs.c:873,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/sample_descs.c:874,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:878,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:879,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 7
    argNames:
    - the_file
    - trackNumber
    - metadata
    - metadata_size
    - URLname
    - URNname
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u8*
    - u32
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 881
      start: 838
    functionDepth: 5
    functionLinenumber: 838
    functionLinenumberEnd: 881
    functionName: gf_isom_flac_config_new
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - gf_isom_box_del
    - memcpy
    - gf_isom_box_new_parent
    - gf_list_count
    - Media_CreateDataRef
    - gf_isom_get_track_box
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_flac_config_new(GF_ISOFile *the_file, u32 trackNumber,
      u8 *metadata, u32 metadata_size, const char *URLname, const char *URNname, u32
      *outDescriptionIndex)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:892,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:895,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:899,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:902,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:906,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:908,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:910,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:912,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/sample_descs.c:916,1
    - Dst: gf_isom_box_read
      Src: /src/gpac/src/isomedia/sample_descs.c:918,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/sample_descs.c:919,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:922,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 7
    argNames:
    - the_file
    - trackNumber
    - URLname
    - URNname
    - outDescriptionIndex
    - dsi
    - dsi_len
    argTypes:
    - GF_ISOFile*
    - u32
    - char*
    - char*
    - u32*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 924
      start: 885
    functionDepth: 5
    functionLinenumber: 885
    functionLinenumberEnd: 924
    functionName: gf_isom_new_mj2k_description
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - gf_isom_box_del_parent
    - gf_bs_new
    - gf_isom_box_read
    - gf_isom_box_new_parent
    - gf_bs_del
    - Media_CreateDataRef
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_new_mj2k_description(GF_ISOFile *the_file, u32 trackNumber,
      const char *URLname, const char *URNname, u32 *outDescriptionIndex, u8 *dsi,
      u32 dsi_len)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:935,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:938,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/sample_descs.c:942,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - descriptionIndex
    - desc
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_DIMSDescription*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 957
      start: 930
    functionDepth: 1
    functionLinenumber: 930
    functionLinenumberEnd: 957
    functionName: gf_isom_get_dims_description
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - memset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_dims_description(GF_ISOFile *movie, u32 trackNumber,
      u32 descriptionIndex, GF_DIMSDescription *desc)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:969,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:972,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:978,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:981,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:985,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/sample_descs.c:987,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:990,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:991,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:993,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/sample_descs.c:1003,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/sample_descs.c:1004,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:1007,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/sample_descs.c:1009,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 46
    argCount: 6
    argNames:
    - movie
    - trackNumber
    - desc
    - URLname
    - URNname
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_DIMSDescription*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1012
      start: 961
    functionDepth: 5
    functionLinenumber: 961
    functionLinenumberEnd: 1012
    functionName: gf_isom_new_dims_description
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - gf_strdup
    - gf_isom_box_new_parent
    - gf_list_count
    - Media_CreateDataRef
    - gf_isom_get_track_box
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_new_dims_description(GF_ISOFile *movie, u32 trackNumber,
      GF_DIMSDescription *desc, const char *URLname, const char *URNname, u32 *outDescriptionIndex)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:1021,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1024,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:1027,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:1031,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:1036,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/sample_descs.c:1045,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/sample_descs.c:1046,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/sample_descs.c:1048,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/sample_descs.c:1049,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:1053,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/sample_descs.c:1056,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/sample_descs.c:1057,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:1059,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 46
    argCount: 6
    argNames:
    - movie
    - trackNumber
    - desc
    - URLname
    - URNname
    - DescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_DIMSDescription*
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1063
      start: 1015
    functionDepth: 5
    functionLinenumber: 1015
    functionLinenumberEnd: 1063
    functionName: gf_isom_update_dims_description
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_strdup
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_update_dims_description(GF_ISOFile *movie, u32 trackNumber,
      GF_DIMSDescription *desc, char *URLname, char *URNname, u32 DescriptionIndex)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1073,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:1077,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:1079,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/sample_descs.c:1081,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - descriptionIndex
    - cfg
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_UDTSConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1095
      start: 1069
    functionDepth: 1
    functionLinenumber: 1069
    functionLinenumberEnd: 1095
    functionName: gf_isom_get_udts_config
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - memset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_udts_config(GF_ISOFile *movie, u32 trackNumber,
      u32 descriptionIndex, GF_UDTSConfig *cfg)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_get_bitrate_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1100,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:1102,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:1108,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:1109,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:1111,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:1114,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:1117,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:1121,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:1125,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:1129,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:1130,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/sample_descs.c:1131,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:1132,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:1134,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:1135,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/sample_descs.c:1136,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:1137,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:1140,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:1143,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:1144,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/sample_descs.c:1145,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:1146,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:1152,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/sample_descs.c:1156,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/sample_descs.c:1158,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/sample_descs.c:1160,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 52
    argCount: 2
    argNames:
    - lsr
    - esd
    argTypes:
    - GF_LASeRSampleEntryBox*
    - GF_ESD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1162
      start: 1098
    functionDepth: 5
    functionLinenumber: 1098
    functionLinenumberEnd: 1162
    functionName: LSR_UpdateESD
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_odf_desc_del
    - memcpy
    - gf_isom_sample_entry_get_bitrate_box
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_list_add
    - gf_list_rem
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LSR_UpdateESD(GF_LASeRSampleEntryBox *lsr, GF_ESD *esd)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1174,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:1176,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 6
    argNames:
    - file
    - track
    - sampleDescription
    - _namespace
    - schema_loc
    - content_encoding
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - char**
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1183
      start: 1165
    functionDepth: 1
    functionLinenumber: 1165
    functionLinenumberEnd: 1183
    functionName: gf_isom_get_xml_metadata_description
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_get_xml_metadata_description(GF_ISOFile *file, u32
      track, u32 sampleDescription,\n        const char **_namespace, const char **schema_loc,
      const char **content_encoding)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:1199,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1202,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:1217,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:1220,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:1224,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/sample_descs.c:1226,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/sample_descs.c:1230,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/sample_descs.c:1231,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/sample_descs.c:1232,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:1234,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:1235,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 39
    argCount: 6
    argNames:
    - movie
    - trackNumber
    - _namespace
    - schema_loc
    - content_encoding
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - char*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1237
      start: 1187
    functionDepth: 4
    functionLinenumber: 1187
    functionLinenumberEnd: 1237
    functionName: gf_isom_new_xml_metadata_description
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - gf_strdup
    - gf_list_count
    - Media_CreateDataRef
    - gf_isom_get_track_box
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_new_xml_metadata_description(GF_ISOFile *movie,
      u32 trackNumber,\n        const char *_namespace, const char *schema_loc, const
      char *content_encoding,\n        u32 *outDescriptionIndex)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1251,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:1254,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 27
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - StreamDescriptionIndex
    - xmlnamespace
    - xml_schema_loc
    - mimes
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - char**
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1270
      start: 1242
    functionDepth: 1
    functionLinenumber: 1242
    functionLinenumberEnd: 1270
    functionName: gf_isom_xml_subtitle_get_description
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_xml_subtitle_get_description(GF_ISOFile *the_file,
      u32 trackNumber, u32 StreamDescriptionIndex,\n        const char **xmlnamespace,
      const char **xml_schema_loc, const char **mimes)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1279,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:1282,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:1285,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - StreamDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1288
      start: 1273
    functionDepth: 2
    functionLinenumber: 1273
    functionLinenumberEnd: 1288
    functionName: gf_isom_subtitle_get_mime
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_isom_subtitle_get_mime(GF_ISOFile *the_file, u32 trackNumber,
      u32 StreamDescriptionIndex)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:1301,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1304,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:1307,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:1310,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:1313,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:1317,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/sample_descs.c:1320,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/sample_descs.c:1321,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - StreamDescriptionIndex
    - codec_params
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1323
      start: 1293
    functionDepth: 5
    functionLinenumber: 1293
    functionLinenumberEnd: 1323
    functionName: gf_isom_subtitle_set_mime
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_strdup
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_subtitle_set_mime(GF_ISOFile *the_file, u32 trackNumber,
      u32 StreamDescriptionIndex, const char *codec_params)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:1337,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1340,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/sample_descs.c:1354,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:1359,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:1362,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:1366,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/sample_descs.c:1368,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:1371,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:1372,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/sample_descs.c:1374,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/sample_descs.c:1375,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/sample_descs.c:1376,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 43
    argCount: 6
    argNames:
    - movie
    - trackNumber
    - xmlnamespace
    - xml_schema_loc
    - mimes
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - char*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1378
      start: 1325
    functionDepth: 4
    functionLinenumber: 1325
    functionLinenumberEnd: 1378
    functionName: gf_isom_new_xml_subtitle_description
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - gf_strdup
    - GF_LOG
    - gf_list_count
    - Media_CreateDataRef
    - gf_isom_get_track_box
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_new_xml_subtitle_description(GF_ISOFile  *movie,
      u32 trackNumber,\n        const char *xmlnamespace, const char *xml_schema_loc,
      const char *mimes,\n        u32 *outDescriptionIndex)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1393,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:1396,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 27
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - StreamDescriptionIndex
    - mime
    - encoding
    - config
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - char**
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1414
      start: 1384
    functionDepth: 1
    functionLinenumber: 1384
    functionLinenumberEnd: 1414
    functionName: gf_isom_stxt_get_description
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_stxt_get_description(GF_ISOFile *the_file, u32 trackNumber,
      u32 StreamDescriptionIndex,\n                                    const char
      **mime, const char **encoding, const char **config)"
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:1429,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1432,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/sample_descs.c:1451,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/sample_descs.c:1456,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:1461,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:1464,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:1468,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/sample_descs.c:1470,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:1473,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:1474,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/sample_descs.c:1476,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/sample_descs.c:1477,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:1479,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/sample_descs.c:1481,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 59
    argCount: 7
    argNames:
    - movie
    - trackNumber
    - type
    - mime
    - encoding
    - config
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - char*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1485
      start: 1417
    functionDepth: 5
    functionLinenumber: 1417
    functionLinenumberEnd: 1485
    functionName: gf_isom_new_stxt_description
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 1
    functionsReached:
    - Media_FindDataRef
    - gf_strdup
    - GF_LOG
    - gf_isom_box_new_parent
    - gf_list_count
    - Media_CreateDataRef
    - gf_isom_get_track_box
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_new_stxt_description(GF_ISOFile *movie, u32 trackNumber,
      u32 type,\n                                    const char *mime, const char
      *encoding, const char * config,\n                                    u32 *outDescriptionIndex)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:1505,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1508,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:1511,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:1520,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:1524,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/sample_descs.c:1527,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/sample_descs.c:1529,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/sample_descs.c:1532,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/sample_descs.c:1535,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 31
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - encoding
    - config
    - DescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1538
      start: 1497
    functionDepth: 5
    functionLinenumber: 1497
    functionLinenumberEnd: 1538
    functionName: gf_isom_update_stxt_description
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_strdup
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err gf_isom_update_stxt_description(GF_ISOFile *movie, u32 trackNumber,\n
      \                                      const char *encoding, const char *config,\n
      \                                      u32 DescriptionIndex)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1553,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:1565,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - descriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1574
      start: 1546
    functionDepth: 1
    functionLinenumber: 1546
    functionLinenumberEnd: 1574
    functionName: gf_webvtt_isom_get_description
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_WebVTTSampleEntryBox
    signature: GF_WebVTTSampleEntryBox *gf_webvtt_isom_get_description(GF_ISOFile
      *movie, u32 trackNumber, u32 descriptionIndex)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_webvtt_isom_get_description
      Src: /src/gpac/src/isomedia/sample_descs.c:1579,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - file
    - track
    - index
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1582
      start: 1576
    functionDepth: 2
    functionLinenumber: 1576
    functionLinenumberEnd: 1582
    functionName: gf_isom_get_webvtt_config
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_webvtt_isom_get_description
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_isom_get_webvtt_config(GF_ISOFile *file, u32 track, u32
      index)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:1604,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1607,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:1619,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:1628,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:1630,1
    - Dst: boxstring_new_with_data
      Src: /src/gpac/src/isomedia/sample_descs.c:1631,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - descriptionIndex
    - config
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1633
      start: 1598
    functionDepth: 5
    functionLinenumber: 1598
    functionLinenumberEnd: 1633
    functionName: gf_isom_update_webvtt_description
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - boxstring_new_with_data
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_update_webvtt_description(GF_ISOFile *movie, u32 trackNumber,
      u32 descriptionIndex, const char *config)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:1644,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1647,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:1660,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:1663,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:1667,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/sample_descs.c:1669,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:1672,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:1673,1
    - Dst: boxstring_new_with_data
      Src: /src/gpac/src/isomedia/sample_descs.c:1676,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 36
    argCount: 6
    argNames:
    - movie
    - trackNumber
    - URLname
    - URNname
    - outDescriptionIndex
    - config
    argTypes:
    - GF_ISOFile*
    - u32
    - char*
    - char*
    - u32*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1679
      start: 1636
    functionDepth: 4
    functionLinenumber: 1636
    functionLinenumberEnd: 1679
    functionName: gf_isom_new_webvtt_description
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - boxstring_new_with_data
    - gf_list_count
    - Media_CreateDataRef
    - gf_isom_get_track_box
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_new_webvtt_description(GF_ISOFile *movie, u32 trackNumber,
      const char *URLname, const char *URNname, u32 *outDescriptionIndex, const char
      *config)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/sample_descs.c:1688,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:1692,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ent
    - create
    argTypes:
    - GF_SampleEntryBox*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1694
      start: 1684
    functionDepth: 5
    functionLinenumber: 1684
    functionLinenumberEnd: 1694
    functionName: gf_isom_sample_entry_get_bitrate_box
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_BitRateBox
    signature: GF_BitRateBox *gf_isom_sample_entry_get_bitrate_box(GF_SampleEntryBox
      *ent, Bool create)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:1707,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1710,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:1714,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:1721,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:1729,1
    - Dst: gf_isom_sample_entry_get_bitrate_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1759,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:1763,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 60
    argCount: 7
    argNames:
    - movie
    - trackNumber
    - sampleDescriptionIndex
    - average_bitrate
    - max_bitrate
    - decode_buffer_size
    - forced_for_mpeg4
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1773
      start: 1698
    functionDepth: 6
    functionLinenumber: 1698
    functionLinenumberEnd: 1773
    functionName: gf_isom_update_bitrate_ex
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_isom_sample_entry_get_bitrate_box
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_update_bitrate_ex(GF_ISOFile *movie, u32 trackNumber,
      u32 sampleDescriptionIndex, u32 average_bitrate, u32 max_bitrate, u32 decode_buffer_size,
      Bool forced_for_mpeg4)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_update_bitrate_ex
      Src: /src/gpac/src/isomedia/sample_descs.c:1779,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - movie
    - trackNumber
    - sampleDescriptionIndex
    - average_bitrate
    - max_bitrate
    - decode_buffer_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1781
      start: 1775
    functionDepth: 7
    functionLinenumber: 1775
    functionLinenumberEnd: 1781
    functionName: gf_isom_update_bitrate
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - gf_isom_update_bitrate_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_update_bitrate(GF_ISOFile *movie, u32 trackNumber,
      u32 sampleDescriptionIndex, u32 average_bitrate, u32 max_bitrate, u32 decode_buffer_size)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:1794,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1797,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:1801,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:1804,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:1808,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:1810,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:1812,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:1816,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:1819,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:1823,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:1825,1
    - Dst: gf_isom_box_new_ex
      Src: /src/gpac/src/isomedia/sample_descs.c:1829,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:1840,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:1841,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 51
    argCount: 8
    argNames:
    - the_file
    - trackNumber
    - fps_num
    - fps_den
    - frames_per_counter_tick
    - is_drop
    - is_counter
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - s32
    - Bool
    - Bool
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1843
      start: 1783
    functionDepth: 5
    functionLinenumber: 1783
    functionLinenumberEnd: 1843
    functionName: gf_isom_tmcd_config_new
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - gf_isom_box_new_ex
    - gf_isom_box_new_parent
    - gf_list_count
    - Media_CreateDataRef
    - gf_isom_get_track_box
    - gf_list_add
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_tmcd_config_new(GF_ISOFile *the_file, u32 trackNumber,
      u32 fps_num, u32 fps_den, s32 frames_per_counter_tick, Bool is_drop, Bool is_counter,
      u32 *outDescriptionIndex)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:1853,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1856,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:1860,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:1863,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:1867,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/sample_descs.c:1869,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:1872,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:1873,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1876
      start: 1845
    functionDepth: 4
    functionLinenumber: 1845
    functionLinenumberEnd: 1876
    functionName: gf_isom_evte_config_new
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - gf_list_count
    - Media_CreateDataRef
    - gf_isom_get_track_box
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_evte_config_new(GF_ISOFile *the_file, u32 trackNumber,
      u32 *outDescriptionIndex)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/sample_descs.c:1886,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1889,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:1912,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:1915,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:1919,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/sample_descs.c:1921,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:1924,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:1925,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:1931,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/sample_descs.c:1943,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/sample_descs.c:1945,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 64
    argCount: 8
    argNames:
    - movie
    - trackNumber
    - URLname
    - URNname
    - outDescriptionIndex
    - dsi
    - dsi_size
    - mha_subtype
    argTypes:
    - GF_ISOFile*
    - u32
    - char*
    - char*
    - u32*
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1948
      start: 1878
    functionDepth: 5
    functionLinenumber: 1878
    functionLinenumberEnd: 1948
    functionName: gf_isom_new_mpha_description
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - memcpy
    - gf_isom_box_new_parent
    - gf_list_count
    - Media_CreateDataRef
    - gf_isom_get_track_box
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_new_mpha_description(GF_ISOFile *movie, u32 trackNumber,
      const char *URLname, const char *URNname, u32 *outDescriptionIndex, u8 *dsi,
      u32 dsi_size, u32 mha_subtype)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1957,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:1960,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 7
    argNames:
    - movie
    - trackNumber
    - descriptionIndex
    - tmcd_flags
    - tmcd_fps_num
    - tmcd_fps_den
    - tmcd_fpt
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1969
      start: 1952
    functionDepth: 1
    functionLinenumber: 1952
    functionLinenumberEnd: 1969
    functionName: gf_isom_get_tmcd_config
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_tmcd_config(GF_ISOFile *movie, u32 trackNumber,
      u32 descriptionIndex, u32 *tmcd_flags, u32 *tmcd_fps_num, u32 *tmcd_fps_den,
      u32 *tmcd_fpt)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1977,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:1980,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:1984,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:1987,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:2006,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 49
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - descriptionIndex
    - flags
    - pcm_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2012
      start: 1971
    functionDepth: 2
    functionLinenumber: 1971
    functionLinenumberEnd: 2012
    functionName: gf_isom_get_pcm_config
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_pcm_config(GF_ISOFile *movie, u32 trackNumber,
      u32 descriptionIndex, u32 *flags, u32 *pcm_size)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:2020,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:2023,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/sample_descs.c:2030,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:2031,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/isomedia/sample_descs.c:2032,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:2034,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:2036,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:2037,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:2039,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:2041,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:2042,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/sample_descs.c:2043,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 7
    argNames:
    - movie
    - trackNumber
    - descriptionIndex
    - sample_rate
    - nb_channels
    - flags
    - pcm_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - Double*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2045
      start: 2014
    functionDepth: 1
    functionLinenumber: 2014
    functionLinenumberEnd: 2045
    functionName: gf_isom_get_lpcm_config
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_bs_read_u32
    - gf_bs_read_double
    - gf_bs_new
    - gf_bs_del
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_lpcm_config(GF_ISOFile *movie, u32 trackNumber,
      u32 descriptionIndex, Double *sample_rate, u32 *nb_channels, u32 *flags, u32
      *pcm_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:34,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: ilst_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void ilst_box_del(GF_Box *s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/isomedia/box_code_apple.c:45,1
    - Dst: gf_isom_box_parse_ex
      Src: /src/gpac/src/isomedia/box_code_apple.c:47,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_apple.c:51,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_code_apple.c:51,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_apple.c:55,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_apple.c:60,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_apple.c:61,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:63,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_apple.c:64,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 37
    functionDepth: 4
    functionLinenumber: 37
    functionLinenumberEnd: 68
    functionName: ilst_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_peek_bits
    - gf_4cc_to_str
    - gf_bs_read_u32
    - gf_isom_box_del
    - GF_LOG
    - gf_isom_box_parse_ex
    - gf_list_add
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ilst_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_apple.c:72,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_apple.c:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 75
    functionName: ilst_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *ilst_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_apple.c:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 79
    functionDepth: 2
    functionLinenumber: 79
    functionLinenumberEnd: 88
    functionName: ilst_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ilst_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: ilst_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ilst_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:102,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 103
    functionName: ilst_item_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void ilst_item_box_del(GF_Box *s)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/isomedia/box_code_apple.c:113,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/isomedia/box_code_apple.c:115,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_apple.c:118,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_code_apple.c:118,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_apple.c:124,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_apple.c:129,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/box_code_apple.c:131,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_apple.c:136,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_apple.c:137,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_apple.c:140,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_apple.c:145,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_apple.c:148,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/box_code_apple.c:151,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_apple.c:153,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/box_code_apple.c:156,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_apple.c:159,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:160,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:161,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_apple.c:163,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_apple.c:166,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_apple.c:168,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 50
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 105
    functionDepth: 5
    functionLinenumber: 105
    functionLinenumberEnd: 171
    functionName: ilst_item_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_peek_bits
    - gf_4cc_to_str
    - gf_isom_box_del_parent
    - gf_list_new
    - gf_bs_read_data
    - gf_isom_box_array_del
    - gf_bs_seek
    - gf_isom_box_del
    - GF_LOG
    - gf_bs_get_position
    - gf_isom_box_new_parent
    - gf_list_add
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - gf_malloc
    - gf_isom_box_array_read
    - gf_isom_box_parse
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ilst_item_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_apple.c:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 177
    functionName: ilst_item_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *ilst_item_box_new()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_apple.c:184,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_apple.c:187,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_apple.c:190,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 196
    functionName: ilst_item_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ilst_item_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_apple.c:205,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:219,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:220,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_apple.c:221,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 200
    functionDepth: 2
    functionLinenumber: 200
    functionLinenumberEnd: 225
    functionName: ilst_item_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u16
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ilst_item_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_apple.c:237,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_apple.c:238,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_apple.c:239,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 227
    functionDepth: 2
    functionLinenumber: 227
    functionLinenumberEnd: 246
    functionName: ilst_item_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ilst_item_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_apple.c:252,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_apple.c:253,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 250
    functionDepth: 1
    functionLinenumber: 250
    functionLinenumberEnd: 255
    functionName: vexu_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *vexu_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:262,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 263
    functionName: vexu_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void vexu_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_apple.c:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 266
    functionDepth: 2
    functionLinenumber: 266
    functionLinenumberEnd: 269
    functionName: vexu_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vexu_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_apple.c:276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 274
    functionDepth: 2
    functionLinenumber: 274
    functionLinenumberEnd: 277
    functionName: vexu_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vexu_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 282
    functionName: vexu_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vexu_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_apple.c:288,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_apple.c:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 286
    functionDepth: 1
    functionLinenumber: 286
    functionLinenumberEnd: 291
    functionName: eyes_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *eyes_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:298,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 294
    functionDepth: 0
    functionLinenumber: 294
    functionLinenumberEnd: 299
    functionName: eyes_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void eyes_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:309,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:310,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_apple.c:312,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:315,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:316,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:317,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:318,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:319,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:320,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:321,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_apple.c:326,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 302
    functionDepth: 2
    functionLinenumber: 302
    functionLinenumberEnd: 327
    functionName: eyes_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_read_int
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err eyes_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_apple.c:334,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:339,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:340,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:341,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:342,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:343,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:344,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:345,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:346,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:347,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:348,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:349,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:350,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 332
    functionDepth: 2
    functionLinenumber: 332
    functionLinenumberEnd: 353
    functionName: eyes_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err eyes_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 355
    functionDepth: 0
    functionLinenumber: 355
    functionLinenumberEnd: 359
    functionName: eyes_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err eyes_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_apple.c:366,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 364
    functionDepth: 1
    functionLinenumber: 364
    functionLinenumberEnd: 368
    functionName: hero_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *hero_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:374,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 370
    functionDepth: 0
    functionLinenumber: 370
    functionLinenumberEnd: 375
    functionName: hero_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void hero_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:381,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:382,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 378
    functionDepth: 1
    functionLinenumber: 378
    functionLinenumberEnd: 385
    functionName: hero_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hero_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_apple.c:393,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:395,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 390
    functionDepth: 3
    functionLinenumber: 390
    functionLinenumberEnd: 397
    functionName: hero_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hero_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 399
    functionDepth: 0
    functionLinenumber: 399
    functionLinenumberEnd: 403
    functionName: hero_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hero_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:412,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:413,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 407
    functionDepth: 0
    functionLinenumber: 407
    functionLinenumberEnd: 415
    functionName: databox_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void databox_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_apple.c:421,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:422,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_apple.c:426,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_apple.c:429,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 417
    functionDepth: 1
    functionLinenumber: 417
    functionLinenumberEnd: 433
    functionName: databox_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_data
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err databox_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_apple.c:437,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 435
    functionDepth: 1
    functionLinenumber: 435
    functionLinenumberEnd: 440
    functionName: databox_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *databox_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_apple.c:449,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_apple.c:451,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_apple.c:453,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 444
    functionDepth: 3
    functionLinenumber: 444
    functionLinenumberEnd: 456
    functionName: databox_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_int
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err databox_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 458
    functionDepth: 0
    functionLinenumber: 458
    functionLinenumberEnd: 467
    functionName: databox_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err databox_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:475,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 471
    functionDepth: 0
    functionLinenumber: 471
    functionLinenumberEnd: 476
    functionName: alis_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void alis_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 478
    functionDepth: 0
    functionLinenumber: 478
    functionLinenumberEnd: 482
    functionName: alis_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err alis_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_apple.c:486,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 484
    functionDepth: 1
    functionLinenumber: 484
    functionLinenumberEnd: 488
    functionName: alis_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *alis_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_apple.c:497,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 492
    functionDepth: 3
    functionLinenumber: 492
    functionLinenumberEnd: 500
    functionName: alis_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err alis_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 505
      start: 502
    functionDepth: 0
    functionLinenumber: 502
    functionLinenumberEnd: 505
    functionName: alis_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err alis_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:512,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 509
    functionDepth: 0
    functionLinenumber: 509
    functionLinenumberEnd: 513
    functionName: wide_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void wide_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_apple.c:518,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 516
    functionDepth: 1
    functionLinenumber: 516
    functionLinenumberEnd: 521
    functionName: wide_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err wide_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_apple.c:525,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 523
    functionDepth: 1
    functionLinenumber: 523
    functionLinenumberEnd: 527
    functionName: wide_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *wide_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_apple.c:534,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 537
      start: 531
    functionDepth: 2
    functionLinenumber: 531
    functionLinenumberEnd: 537
    functionName: wide_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err wide_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 542
      start: 539
    functionDepth: 0
    functionLinenumber: 539
    functionLinenumberEnd: 542
    functionName: wide_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err wide_box_size(GF_Box *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/box_code_apple.c:554,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_apple.c:557,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_apple.c:558,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 19
    argCount: 2
    argNames:
    - mov
    - meta_type
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 569
      start: 546
    functionDepth: 1
    functionLinenumber: 546
    functionLinenumberEnd: 569
    functionName: gf_isom_get_meta_extensions
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - udta_getEntry
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *gf_isom_get_meta_extensions(GF_ISOFile *mov, u32 meta_type)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/box_code_apple.c:583,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/box_code_apple.c:583,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/box_code_apple.c:587,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_apple.c:589,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_apple.c:590,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/box_code_apple.c:601,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/box_code_apple.c:604,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/box_code_apple.c:606,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_apple.c:608,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/box_code_apple.c:612,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 36
    argCount: 2
    argNames:
    - mov
    - meta_type
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 616
      start: 572
    functionDepth: 5
    functionLinenumber: 572
    functionLinenumberEnd: 616
    functionName: gf_isom_create_meta_extensions
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - udta_on_child_box_ex
    - gf_list_get
    - gf_isom_box_del
    - gf_isom_box_new_parent
    - gf_list_count
    - udta_getEntry
    - gf_isom_box_new
    - moov_on_child_box
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *gf_isom_create_meta_extensions(GF_ISOFile *mov, u32 meta_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:623,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 621
    functionDepth: 0
    functionLinenumber: 621
    functionLinenumberEnd: 624
    functionName: gmin_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gmin_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_apple.c:629,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:630,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:631,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:632,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:633,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:634,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:635,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 626
    functionDepth: 1
    functionLinenumber: 626
    functionLinenumberEnd: 637
    functionName: gmin_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gmin_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_apple.c:641,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 639
    functionDepth: 1
    functionLinenumber: 639
    functionLinenumberEnd: 643
    functionName: gmin_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *gmin_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_apple.c:654,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:657,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:658,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:659,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:660,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:661,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:662,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 649
    functionDepth: 3
    functionLinenumber: 649
    functionLinenumberEnd: 664
    functionName: gmin_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gmin_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 666
    functionDepth: 0
    functionLinenumber: 666
    functionLinenumberEnd: 671
    functionName: gmin_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gmin_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:680,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 678
    functionDepth: 0
    functionLinenumber: 678
    functionLinenumberEnd: 681
    functionName: clef_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void clef_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_apple.c:686,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:687,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:688,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 690
      start: 683
    functionDepth: 1
    functionLinenumber: 683
    functionLinenumberEnd: 690
    functionName: clef_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err clef_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_apple.c:694,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 692
    functionDepth: 1
    functionLinenumber: 692
    functionLinenumberEnd: 696
    functionName: clef_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *clef_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_apple.c:706,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:708,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:709,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 701
    functionDepth: 3
    functionLinenumber: 701
    functionLinenumberEnd: 711
    functionName: clef_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err clef_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 717
      start: 713
    functionDepth: 0
    functionLinenumber: 713
    functionLinenumberEnd: 717
    functionName: clef_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err clef_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_predestroy
      Src: /src/gpac/src/isomedia/box_code_apple.c:725,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:726,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 727
      start: 722
    functionDepth: 1
    functionLinenumber: 722
    functionLinenumberEnd: 727
    functionName: tmcd_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_sample_entry_predestroy
    linkageType: ''
    returnType: void
    signature: void tmcd_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_base_sample_entry_read
      Src: /src/gpac/src/isomedia/box_code_apple.c:733,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_apple.c:736,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:737,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:738,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:739,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:740,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_apple.c:741,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_apple.c:742,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_apple.c:744,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 745
      start: 730
    functionDepth: 2
    functionLinenumber: 730
    functionLinenumberEnd: 745
    functionName: tmcd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_isom_base_sample_entry_read
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tmcd_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_apple.c:749,1
    - Dst: gf_isom_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_apple.c:750,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 752
      start: 747
    functionDepth: 1
    functionLinenumber: 747
    functionLinenumberEnd: 752
    functionName: tmcd_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_entry_init
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tmcd_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_apple.c:761,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_apple.c:764,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:765,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:767,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:768,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:769,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:770,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_apple.c:771,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_apple.c:772,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 775
      start: 757
    functionDepth: 2
    functionLinenumber: 757
    functionLinenumberEnd: 775
    functionName: tmcd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u16
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tmcd_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 782
      start: 777
    functionDepth: 0
    functionLinenumber: 777
    functionLinenumberEnd: 782
    functionName: tmcd_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tmcd_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:790,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:791,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 792
      start: 787
    functionDepth: 0
    functionLinenumber: 787
    functionLinenumberEnd: 792
    functionName: tcmi_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void tcmi_box_del(GF_Box *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_apple.c:801,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:803,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:804,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:805,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:806,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:807,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:808,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:809,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:810,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:811,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:812,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_apple.c:814,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_apple.c:817,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_apple.c:819,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_apple.c:823,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_apple.c:825,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 795
    functionDepth: 1
    functionLinenumber: 795
    functionLinenumberEnd: 830
    functionName: tcmi_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_bs_read_u16
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tcmi_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_apple.c:834,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 840
      start: 832
    functionDepth: 1
    functionLinenumber: 832
    functionLinenumberEnd: 840
    functionName: tcmi_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tcmi_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_apple.c:851,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:853,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:854,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:855,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:856,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:857,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:858,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:859,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:860,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:861,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:862,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_apple.c:863,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_apple.c:864,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_apple.c:866,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 869
      start: 845
    functionDepth: 3
    functionLinenumber: 845
    functionLinenumberEnd: 869
    functionName: tcmi_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u16
    - gf_bs_write_data
    - gf_bs_write_u8
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tcmi_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_apple.c:876,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 878
      start: 871
    functionDepth: 0
    functionLinenumber: 871
    functionLinenumberEnd: 878
    functionName: tcmi_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tcmi_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:885,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 886
      start: 883
    functionDepth: 0
    functionLinenumber: 883
    functionLinenumberEnd: 886
    functionName: fiel_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void fiel_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_apple.c:893,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_apple.c:895,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_apple.c:896,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 898
      start: 889
    functionDepth: 1
    functionLinenumber: 889
    functionLinenumberEnd: 898
    functionName: fiel_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fiel_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_apple.c:902,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 904
      start: 900
    functionDepth: 1
    functionLinenumber: 900
    functionLinenumberEnd: 904
    functionName: fiel_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *fiel_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_apple.c:913,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_apple.c:915,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_apple.c:916,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 918
      start: 909
    functionDepth: 2
    functionLinenumber: 909
    functionLinenumberEnd: 918
    functionName: fiel_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fiel_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 924
      start: 920
    functionDepth: 0
    functionLinenumber: 920
    functionLinenumberEnd: 924
    functionName: fiel_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fiel_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:931,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 932
      start: 929
    functionDepth: 0
    functionLinenumber: 929
    functionLinenumberEnd: 932
    functionName: gama_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gama_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_apple.c:939,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:941,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 935
    functionDepth: 1
    functionLinenumber: 935
    functionLinenumberEnd: 943
    functionName: gama_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gama_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_apple.c:947,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 949
      start: 945
    functionDepth: 1
    functionLinenumber: 945
    functionLinenumberEnd: 949
    functionName: gama_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *gama_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_apple.c:957,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:959,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 961
      start: 954
    functionDepth: 2
    functionLinenumber: 954
    functionLinenumberEnd: 961
    functionName: gama_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gama_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 967
      start: 963
    functionDepth: 0
    functionLinenumber: 963
    functionLinenumberEnd: 967
    functionName: gama_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gama_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:974,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 975
      start: 972
    functionDepth: 0
    functionLinenumber: 972
    functionLinenumberEnd: 975
    functionName: chrm_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void chrm_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_apple.c:982,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:984,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 986
      start: 978
    functionDepth: 1
    functionLinenumber: 978
    functionLinenumberEnd: 986
    functionName: chrm_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err chrm_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_apple.c:990,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 992
      start: 988
    functionDepth: 1
    functionLinenumber: 988
    functionLinenumberEnd: 992
    functionName: chrm_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *chrm_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_apple.c:1000,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_apple.c:1002,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1004
      start: 997
    functionDepth: 2
    functionLinenumber: 997
    functionLinenumberEnd: 1004
    functionName: chrm_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err chrm_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1010
      start: 1006
    functionDepth: 0
    functionLinenumber: 1006
    functionLinenumberEnd: 1010
    functionName: chrm_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err chrm_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:1018,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:1019,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:1020,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1021
      start: 1015
    functionDepth: 0
    functionLinenumber: 1015
    functionLinenumberEnd: 1021
    functionName: chan_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void chan_box_del(GF_Box *s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_apple.c:1029,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1030,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1031,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1032,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_apple.c:1037,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_apple.c:1042,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1043,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1044,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/box_code_apple.c:1045,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/box_code_apple.c:1046,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/box_code_apple.c:1047,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_apple.c:1052,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_apple.c:1056,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_apple.c:1058,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1062
      start: 1024
    functionDepth: 1
    functionLinenumber: 1024
    functionLinenumberEnd: 1062
    functionName: chan_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - gf_bs_read_float
    - ISOM_DECREASE_SIZE
    - gf_malloc
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err chan_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_apple.c:1066,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1068
      start: 1064
    functionDepth: 1
    functionLinenumber: 1064
    functionLinenumberEnd: 1068
    functionName: chan_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *chan_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_apple.c:1079,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1083,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1084,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1085,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1088,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1089,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/isomedia/box_code_apple.c:1090,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/isomedia/box_code_apple.c:1091,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/isomedia/box_code_apple.c:1092,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_apple.c:1095,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1098
      start: 1073
    functionDepth: 3
    functionLinenumber: 1073
    functionLinenumberEnd: 1098
    functionName: chan_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_isom_full_box_write
    - gf_bs_write_float
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err chan_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1108
      start: 1100
    functionDepth: 0
    functionLinenumber: 1100
    functionLinenumberEnd: 1108
    functionName: chan_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err chan_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:1116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1117
      start: 1114
    functionDepth: 0
    functionLinenumber: 1114
    functionLinenumberEnd: 1117
    functionName: load_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void load_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_apple.c:1123,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1124,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1125,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1126,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1129
      start: 1120
    functionDepth: 1
    functionLinenumber: 1120
    functionLinenumberEnd: 1129
    functionName: load_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err load_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_apple.c:1133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1135
      start: 1131
    functionDepth: 1
    functionLinenumber: 1131
    functionLinenumberEnd: 1135
    functionName: load_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *load_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_apple.c:1144,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1147,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1148,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1149,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1150,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1152
      start: 1140
    functionDepth: 2
    functionLinenumber: 1140
    functionLinenumberEnd: 1152
    functionName: load_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err load_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1158
      start: 1154
    functionDepth: 0
    functionLinenumber: 1154
    functionLinenumberEnd: 1158
    functionName: load_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err load_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_apple.c:1167,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/isomedia/box_code_apple.c:1168,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:1169,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:1170,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_apple.c:1172,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_apple.c:1173,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1174
      start: 1163
    functionDepth: 1
    functionLinenumber: 1163
    functionLinenumberEnd: 1174
    functionName: keys_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_pop_back
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void keys_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_apple.c:1181,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1182,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_apple.c:1185,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1186,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1188,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_apple.c:1189,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_apple.c:1190,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_apple.c:1192,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_apple.c:1195,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_apple.c:1197,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1201
      start: 1176
    functionDepth: 1
    functionLinenumber: 1176
    functionLinenumberEnd: 1201
    functionName: keys_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - GF_SAFEALLOC
    - gf_list_add
    - ISOM_DECREASE_SIZE
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err keys_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_apple.c:1205,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_apple.c:1206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1208
      start: 1203
    functionDepth: 1
    functionLinenumber: 1203
    functionLinenumberEnd: 1208
    functionName: keys_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *keys_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_apple.c:1218,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_apple.c:1220,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1221,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_apple.c:1223,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1224,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_apple.c:1225,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_apple.c:1227,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1230
      start: 1212
    functionDepth: 3
    functionLinenumber: 1212
    functionLinenumberEnd: 1230
    functionName: keys_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_full_box_write
    - gf_list_count
    - gf_bs_write_data
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err keys_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_apple.c:1238,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_apple.c:1240,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1245
      start: 1233
    functionDepth: 1
    functionLinenumber: 1233
    functionLinenumberEnd: 1245
    functionName: keys_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_apple.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err keys_box_size(GF_Box *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:41,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_store.c:45,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_store.c:46,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_store.c:48,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_store.c:51,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_store.c:52,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_store.c:53,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/isomedia/isom_store.c:53,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_store.c:54,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_store.c:60,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_store.c:63,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/isomedia/isom_store.c:63,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_store.c:64,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_store.c:66,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 35
    functionDepth: 4
    functionLinenumber: 35
    functionLinenumberEnd: 67
    functionName: gf_isom_insert_copyright
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - memcmp
    - gf_sys_is_test_mode
    - gf_list_add
    - gf_isom_box_new
    - gf_list_enum
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_insert_copyright(GF_ISOFile *movie)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:107,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:108,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_store.c:110,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_store.c:111,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_store.c:112,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_store.c:113,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_store.c:114,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_store.c:115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - writers
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 105
    functionDepth: 4
    functionLinenumber: 105
    functionLinenumberEnd: 117
    functionName: CleanWriters
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_isom_box_del
    - gf_list_count
    - gf_list_del_item
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void CleanWriters(GF_List *writers)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:124,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_store.c:130,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_store.c:131,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_store.c:134,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_store.c:139,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 1
    argNames:
    - writers
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 119
    functionDepth: 4
    functionLinenumber: 119
    functionLinenumberEnd: 146
    functionName: ResetWriters
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_enum
    - gf_isom_box_new
    - gf_isom_box_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ResetWriters(GF_List *writers)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:158,1
    - Dst: gf_isom_get_track
      Src: /src/gpac/src/isomedia/isom_store.c:161,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_store.c:166,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_store.c:179,1
    - Dst: Media_SelfContainedType
      Src: /src/gpac/src/isomedia/isom_store.c:185,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_store.c:204,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_store.c:207,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_store.c:209,1
    - Dst: Media_IsSelfContained
      Src: /src/gpac/src/isomedia/isom_store.c:219,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_store.c:223,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_store.c:226,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_store.c:228,1
    - Dst: gf_isom_box_array_del_parent
      Src: /src/gpac/src/isomedia/isom_store.c:232,1
    - Dst: CleanWriters
      Src: /src/gpac/src/isomedia/isom_store.c:239,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 75
    argCount: 3
    argNames:
    - mw
    - writers
    - interleaving
    argTypes:
    - MovieWriter*
    - GF_List*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 148
    functionDepth: 5
    functionLinenumber: 148
    functionLinenumberEnd: 241
    functionName: SetupWriters
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track
    - gf_list_insert
    - CleanWriters
    - GF_SAFEALLOC
    - GF_LOG
    - gf_isom_box_array_del_parent
    - Media_SelfContainedType
    - gf_list_count
    - Media_IsSelfContained
    - gf_list_add
    - gf_isom_box_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SetupWriters(MovieWriter *mw, GF_List *writers, u8 interleaving)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:250,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:252,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:257,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:258,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 21
    argCount: 2
    argNames:
    - meta
    - offset
    argTypes:
    - GF_MetaBox*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 244
    functionDepth: 1
    functionLinenumber: 244
    functionLinenumberEnd: 269
    functionName: ShiftMetaOffset
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void ShiftMetaOffset(GF_MetaBox *meta, u64 offset)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: Media_IsSelfContained
      Src: /src/gpac/src/isomedia/isom_store.c:282,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_store.c:301,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_store.c:304,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 45
    argCount: 6
    argNames:
    - stsc
    - mdia
    - _stco
    - offset
    - force_co64
    - new_stco
    argTypes:
    - GF_SampleToChunkBox*
    - GF_MediaBox*
    - GF_Box*
    - u64
    - Bool
    - GF_Box**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 272
    functionDepth: 4
    functionLinenumber: 272
    functionLinenumberEnd: 333
    functionName: shift_chunk_offsets
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - Media_IsSelfContained
    - gf_malloc
    - gf_isom_box_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err shift_chunk_offsets(GF_SampleToChunkBox *stsc, GF_MediaBox *mdia,
      GF_Box *_stco, u64 offset, Bool force_co64, GF_Box **new_stco)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ShiftMetaOffset
      Src: /src/gpac/src/isomedia/isom_store.c:339,1
    - Dst: ShiftMetaOffset
      Src: /src/gpac/src/isomedia/isom_store.c:340,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:343,1
    - Dst: ShiftMetaOffset
      Src: /src/gpac/src/isomedia/isom_store.c:346,1
    - Dst: shift_chunk_offsets
      Src: /src/gpac/src/isomedia/isom_store.c:350,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_store.c:355,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 3
    argNames:
    - file
    - writers
    - offset
    argTypes:
    - GF_ISOFile*
    - GF_List*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 334
    functionDepth: 5
    functionLinenumber: 334
    functionLinenumberEnd: 361
    functionName: ShiftOffset
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - shift_chunk_offsets
    - ShiftMetaOffset
    - gf_list_enum
    - gf_isom_box_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ShiftOffset(GF_ISOFile *file, GF_List *writers, u64 offset)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_store.c:372,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:373,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_store.c:376,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_store.c:388,1
    - Dst: gf_gz_compress_payload_ex
      Src: /src/gpac/src/isomedia/isom_store.c:389,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:393,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:394,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:395,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:396,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:397,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:398,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:399,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_store.c:399,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:400,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:401,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:402,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_store.c:403,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:405,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:406,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/isom_store.c:409,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:413,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:414,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_store.c:415,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:426,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_store.c:428,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_store.c:430,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 54
    argCount: 5
    argNames:
    - mov
    - root_box
    - repl_type
    - bs
    - box_csize
    argTypes:
    - GF_ISOFile*
    - GF_Box*
    - u32
    - GF_BitStream*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 365
    functionDepth: 3
    functionLinenumber: 365
    functionLinenumberEnd: 433
    functionName: gf_isom_write_compressed_box
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - gf_bs_get_content
    - gf_isom_box_write
    - gf_bs_del
    - gf_bs_write_data
    - GF_4CC
    - gf_gz_compress_payload_ex
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_write_compressed_box(GF_ISOFile *mov, GF_Box *root_box,
      u32 repl_type, GF_BitStream *bs, u32 *box_csize)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:446,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:448,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:456,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_store.c:460,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_store.c:461,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_store.c:464,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_store.c:465,1
    - Dst: gf_bs_prevent_dispatch
      Src: /src/gpac/src/isomedia/isom_store.c:472,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:475,1
    - Dst: gf_isom_write_compressed_box
      Src: /src/gpac/src/isomedia/isom_store.c:479,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_store.c:479,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:481,1
    - Dst: gf_bs_prevent_dispatch
      Src: /src/gpac/src/isomedia/isom_store.c:485,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:491,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_store.c:497,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_store.c:498,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_store.c:502,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_store.c:503,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 52
    argCount: 3
    argNames:
    - movie
    - writers
    - bs
    argTypes:
    - GF_ISOFile*
    - GF_List*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 436
    functionDepth: 4
    functionLinenumber: 436
    functionLinenumberEnd: 508
    functionName: WriteMoovAndMeta
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_isom_box_size
    - gf_isom_box_write
    - gf_bs_prevent_dispatch
    - gf_list_del_item
    - gf_isom_write_compressed_box
    - GF_4CC
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteMoovAndMeta(GF_ISOFile *movie, GF_List *writers, GF_BitStream
      *bs)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_store.c:528,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:533,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_store.c:537,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_store.c:538,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_store.c:541,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_store.c:542,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:547,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:548,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:552,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_store.c:558,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_store.c:559,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_store.c:563,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_store.c:564,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:568,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:569,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_store.c:572,1
    - Dst: gf_gz_compress_payload_ex
      Src: /src/gpac/src/isomedia/isom_store.c:573,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_store.c:574,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_store.c:575,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:581,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:586,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:589,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:590,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:597,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 62
    argCount: 2
    argNames:
    - movie
    - writers
    argTypes:
    - GF_ISOFile*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 511
    functionDepth: 3
    functionLinenumber: 511
    functionLinenumberEnd: 603
    functionName: GetMoovAndMetaSize
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_free
    - gf_isom_box_size
    - gf_bs_new
    - gf_bs_get_content
    - gf_isom_box_write
    - gf_bs_del
    - gf_list_del_item
    - gf_gz_compress_payload_ex
    - gf_list_enum
    linkageType: ''
    returnType: u64
    signature: u64 GetMoovAndMetaSize(GF_ISOFile *movie, GF_List *writers)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MovieWriter*::movie::progress_cbk
      Src: /src/gpac/src/isomedia/isom_store.c:608,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/isomedia/isom_store.c:610,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - mw
    argTypes:
    - MovieWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 605
    functionDepth: 1
    functionLinenumber: 605
    functionLinenumberEnd: 612
    functionName: muxer_report_progress
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - MovieWriter*::movie::progress_cbk
    - gf_set_progress
    linkageType: ''
    returnType: void
    signature: void muxer_report_progress(MovieWriter *mw)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/isom_store.c:623,1
    - Dst: gf_isom_datamap_get_data
      Src: /src/gpac/src/isomedia/isom_store.c:635,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_store.c:639,1
    - Dst: muxer_report_progress
      Src: /src/gpac/src/isomedia/isom_store.c:644,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 6
    argNames:
    - mw
    - size
    - offset
    - isEdited
    - bs
    - nb_samp
    argTypes:
    - MovieWriter*
    - u32
    - u64
    - u8
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 646
      start: 615
    functionDepth: 2
    functionLinenumber: 615
    functionLinenumberEnd: 646
    functionName: WriteSample
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_isom_datamap_get_data
    - muxer_report_progress
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteSample(MovieWriter *mw, u32 size, u64 offset, u8 isEdited,
      GF_BitStream *bs, u32 nb_samp)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 6
    argNames:
    - movie
    - tkw
    - stsc_ent
    - nb_samp
    - samp_size
    - is_flat
    argTypes:
    - GF_ISOFile*
    - TrackWriter*
    - GF_StscEntry*
    - u32*
    - u32*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 694
      start: 652
    functionDepth: 0
    functionLinenumber: 652
    functionLinenumberEnd: 694
    functionName: update_writer_constant_dur
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void update_writer_constant_dur(GF_ISOFile *movie, TrackWriter *tkw,
      GF_StscEntry *stsc_ent, u32 *nb_samp, u32 *samp_size, Bool is_flat)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:715,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_store.c:719,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_store.c:720,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_store.c:723,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_store.c:724,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:730,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:734,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:738,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:747,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:748,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:757,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/src/isomedia/isom_store.c:760,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/isomedia/isom_store.c:760,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/isom_store.c:761,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:783,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_store.c:789,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_store.c:790,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_store.c:794,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_store.c:795,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 78
    argCount: 3
    argNames:
    - movie
    - writers
    - meta
    argTypes:
    - GF_ISOFile*
    - GF_List*
    - GF_MetaBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 799
      start: 698
    functionDepth: 1
    functionLinenumber: 698
    functionLinenumberEnd: 799
    functionName: store_meta_item_sample_ref_offsets
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_get
    - gf_isom_sample_del
    - gf_list_count
    - gf_isom_get_sample_info
    - gf_list_del_item
    - gf_isom_get_track_by_id
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err store_meta_item_sample_ref_offsets(GF_ISOFile *movie, GF_List
      *writers, GF_MetaBox *meta)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: store_meta_item_sample_ref_offsets
      Src: /src/gpac/src/isomedia/isom_store.c:804,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:809,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:813,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:817,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:823,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:829,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:833,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:840,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 40
    argCount: 3
    argNames:
    - movie
    - writers
    - meta
    argTypes:
    - GF_ISOFile*
    - GF_List*
    - GF_MetaBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 848
      start: 801
    functionDepth: 2
    functionLinenumber: 801
    functionLinenumberEnd: 848
    functionName: store_meta_item_references
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - store_meta_item_sample_ref_offsets
    - gf_list_get
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err store_meta_item_references(GF_ISOFile *movie, GF_List *writers,
      GF_MetaBox *meta)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:863,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:866,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:870,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:875,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:876,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/isom_store.c:900,1
    - Dst: gf_fsize
      Src: /src/gpac/src/isomedia/isom_store.c:902,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:908,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_store.c:909,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_store.c:911,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:913,1
    - Dst: gf_fread
      Src: /src/gpac/src/isomedia/isom_store.c:934,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_store.c:936,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_store.c:940,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/isom_store.c:943,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:945,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:947,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:961,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/isom_store.c:964,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_store.c:966,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:977,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_store.c:978,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_store.c:980,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:983,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:985,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:990,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:992,1
    CyclomaticComplexity: 65
    EdgeCount: 65
    ICount: 136
    argCount: 6
    argNames:
    - file
    - meta
    - bs
    - Emulation
    - baseOffset
    - mdatSize
    argTypes:
    - GF_ISOFile*
    - GF_MetaBox*
    - GF_BitStream*
    - Bool
    - u64
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1011
      start: 850
    functionDepth: 1
    functionLinenumber: 850
    functionLinenumberEnd: 1011
    functionName: DoWriteMeta
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_fclose
    - gf_list_get
    - gf_bs_seek
    - GF_SAFEALLOC
    - gf_fread
    - gf_list_count
    - gf_bs_write_data
    - gf_fsize
    - gf_fopen
    - gf_list_add
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DoWriteMeta(GF_ISOFile *file, GF_MetaBox *meta, GF_BitStream
      *bs, Bool Emulation, u64 baseOffset, u64 *mdatSize)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: DoWriteMeta
      Src: /src/gpac/src/isomedia/isom_store.c:1029,1
    - Dst: DoWriteMeta
      Src: /src/gpac/src/isomedia/isom_store.c:1035,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:1041,1
    - Dst: DoWriteMeta
      Src: /src/gpac/src/isomedia/isom_store.c:1043,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:1054,1
    - Dst: stbl_GetSampleInfos
      Src: /src/gpac/src/isomedia/isom_store.c:1063,1
    - Dst: stbl_GetSampleSize
      Src: /src/gpac/src/isomedia/isom_store.c:1065,1
    - Dst: update_writer_constant_dur
      Src: /src/gpac/src/isomedia/isom_store.c:1068,1
    - Dst: Media_IsSelfContained
      Src: /src/gpac/src/isomedia/isom_store.c:1084,1
    - Dst: stbl_SetChunkAndOffset
      Src: /src/gpac/src/isomedia/isom_store.c:1088,1
    - Dst: stbl_SetChunkAndOffset
      Src: /src/gpac/src/isomedia/isom_store.c:1100,1
    - Dst: WriteSample
      Src: /src/gpac/src/isomedia/isom_store.c:1106,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 90
    argCount: 5
    argNames:
    - mw
    - writers
    - bs
    - Emulation
    - StartOffset
    argTypes:
    - MovieWriter*
    - GF_List*
    - GF_BitStream*
    - u8
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1122
      start: 1014
    functionDepth: 3
    functionLinenumber: 1014
    functionLinenumberEnd: 1122
    functionName: DoWrite
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - update_writer_constant_dur
    - WriteSample
    - Media_IsSelfContained
    - DoWriteMeta
    - stbl_GetSampleInfos
    - gf_list_enum
    - stbl_SetChunkAndOffset
    - stbl_GetSampleSize
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DoWrite(MovieWriter *mw, GF_List *writers, GF_BitStream *bs,
      u8 Emulation, u64 StartOffset)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: GetMoovAndMetaSize
      Src: /src/gpac/src/isomedia/isom_store.c:1139,1
    - Dst: ShiftOffset
      Src: /src/gpac/src/isomedia/isom_store.c:1155,1
    - Dst: store_meta_item_references
      Src: /src/gpac/src/isomedia/isom_store.c:1160,1
    - Dst: GetMoovAndMetaSize
      Src: /src/gpac/src/isomedia/isom_store.c:1164,1
    - Dst: ShiftOffset
      Src: /src/gpac/src/isomedia/isom_store.c:1179,1
    - Dst: store_meta_item_references
      Src: /src/gpac/src/isomedia/isom_store.c:1184,1
    - Dst: GetMoovAndMetaSize
      Src: /src/gpac/src/isomedia/isom_store.c:1189,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_store.c:1197,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 48
    argCount: 4
    argNames:
    - movie
    - writers
    - use_pad
    - offset_mdat
    argTypes:
    - GF_ISOFile*
    - GF_List*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1203
      start: 1126
    functionDepth: 6
    functionLinenumber: 1126
    functionLinenumberEnd: 1203
    functionName: UpdateOffsets
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - GetMoovAndMetaSize
    - GF_LOG
    - ShiftOffset
    - store_meta_item_references
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err UpdateOffsets(GF_ISOFile *movie, GF_List *writers, Bool use_pad,
      Bool offset_mdat)
  - BBCount: 122
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_store.c:1213,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/isomedia/isom_store.c:1218,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:1219,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:1220,1
    - Dst: SetupWriters
      Src: /src/gpac/src/isomedia/isom_store.c:1225,1
    - Dst: gf_isom_datamap_get_offset
      Src: /src/gpac/src/isomedia/isom_store.c:1231,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1235,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1236,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1237,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1242,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1244,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1250,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1252,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1258,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1260,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1268,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1273,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1278,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1286,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1287,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1288,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1291,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1293,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1297,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1299,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1304,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1306,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:1313,1
    - Dst: DoWrite
      Src: /src/gpac/src/isomedia/isom_store.c:1331,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:1336,1
    - Dst: DoWrite
      Src: /src/gpac/src/isomedia/isom_store.c:1338,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1342,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1344,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1346,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/isom_store.c:1347,1
    - Dst: ResetWriters
      Src: /src/gpac/src/isomedia/isom_store.c:1349,1
    - Dst: DoWrite
      Src: /src/gpac/src/isomedia/isom_store.c:1350,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:1350,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:1356,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/isom_store.c:1357,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/isom_store.c:1358,1
    - Dst: DoWrite
      Src: /src/gpac/src/isomedia/isom_store.c:1359,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:1359,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:1361,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_store.c:1369,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1370,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1372,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1380,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1382,1
    - Dst: DoWrite
      Src: /src/gpac/src/isomedia/isom_store.c:1390,1
    - Dst: UpdateOffsets
      Src: /src/gpac/src/isomedia/isom_store.c:1393,1
    - Dst: store_meta_item_references
      Src: /src/gpac/src/isomedia/isom_store.c:1398,1
    - Dst: WriteMoovAndMeta
      Src: /src/gpac/src/isomedia/isom_store.c:1401,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:1406,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1410,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1412,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:1421,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:1422,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1425,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1427,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1429,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/isom_store.c:1430,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:1431,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:1438,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1450,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1452,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1465,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1466,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1467,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1470,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1472,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1476,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1478,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1483,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1485,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:1491,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_store.c:1506,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1513,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1515,1
    - Dst: DoWrite
      Src: /src/gpac/src/isomedia/isom_store.c:1524,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:1524,1
    - Dst: UpdateOffsets
      Src: /src/gpac/src/isomedia/isom_store.c:1528,1
    - Dst: WriteMoovAndMeta
      Src: /src/gpac/src/isomedia/isom_store.c:1533,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1535,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1537,1
    - Dst: ResetWriters
      Src: /src/gpac/src/isomedia/isom_store.c:1541,1
    - Dst: DoWrite
      Src: /src/gpac/src/isomedia/isom_store.c:1542,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:1547,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1558,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1560,1
    - Dst: CleanWriters
      Src: /src/gpac/src/isomedia/isom_store.c:1566,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/isom_store.c:1567,1
    CyclomaticComplexity: 165
    EdgeCount: 165
    ICount: 401
    argCount: 6
    argNames:
    - mw
    - moovFirst
    - bs
    - non_seekable
    - for_fragments
    - moov_bs
    argTypes:
    - MovieWriter*
    - u8
    - GF_BitStream*
    - Bool
    - Bool
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1569
      start: 1207
    functionDepth: 7
    functionLinenumber: 1207
    functionLinenumberEnd: 1569
    functionName: WriteFlat
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_size
    - gf_bs_get_size
    - gf_isom_box_write
    - gf_isom_datamap_get_offset
    - gf_bs_write_u32
    - ResetWriters
    - UpdateOffsets
    - gf_list_new
    - strncmp
    - store_meta_item_references
    - gf_bs_write_u64
    - WriteMoovAndMeta
    - gf_bs_get_position
    - SetupWriters
    - gf_list_enum
    - gf_list_del
    - CleanWriters
    - gf_bs_seek
    - DoWrite
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteFlat(MovieWriter *mw, u8 moovFirst, GF_BitStream *bs, Bool
      non_seekable, Bool for_fragments, GF_BitStream *moov_bs)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:1610,1
    - Dst: stbl_GetSampleDTS
      Src: /src/gpac/src/isomedia/isom_store.c:1617,1
    - Dst: stbl_GetSampleInfos
      Src: /src/gpac/src/isomedia/isom_store.c:1639,1
    - Dst: stbl_GetSampleSize
      Src: /src/gpac/src/isomedia/isom_store.c:1641,1
    - Dst: update_writer_constant_dur
      Src: /src/gpac/src/isomedia/isom_store.c:1644,1
    - Dst: Media_IsSelfContained
      Src: /src/gpac/src/isomedia/isom_store.c:1652,1
    - Dst: stbl_SetChunkAndOffset
      Src: /src/gpac/src/isomedia/isom_store.c:1666,1
    - Dst: stbl_SetChunkAndOffset
      Src: /src/gpac/src/isomedia/isom_store.c:1676,1
    - Dst: WriteSample
      Src: /src/gpac/src/isomedia/isom_store.c:1682,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:1697,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 92
    argCount: 5
    argNames:
    - mw
    - writers
    - bs
    - Emulation
    - StartOffset
    argTypes:
    - MovieWriter*
    - GF_List*
    - GF_BitStream*
    - u8
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1704
      start: 1571
    functionDepth: 3
    functionLinenumber: 1571
    functionLinenumberEnd: 1704
    functionName: DoFullInterleave
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - update_writer_constant_dur
    - WriteSample
    - gf_list_count
    - Media_IsSelfContained
    - stbl_GetSampleDTS
    - stbl_GetSampleInfos
    - gf_list_enum
    - stbl_SetChunkAndOffset
    - stbl_GetSampleSize
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DoFullInterleave(MovieWriter *mw, GF_List *writers, GF_BitStream
      *bs, u8 Emulation, u64 StartOffset)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_store.c:1734,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_store.c:1735,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_store.c:1737,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_store.c:1739,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_store.c:1741,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_store.c:1744,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_store.c:1746,1
    - Dst: DoWriteMeta
      Src: /src/gpac/src/isomedia/isom_store.c:1754,1
    - Dst: DoWriteMeta
      Src: /src/gpac/src/isomedia/isom_store.c:1761,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:1767,1
    - Dst: DoWriteMeta
      Src: /src/gpac/src/isomedia/isom_store.c:1769,1
    - Dst: DoFullInterleave
      Src: /src/gpac/src/isomedia/isom_store.c:1779,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:1792,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:1806,1
    - Dst: stbl_GetSampleDTS_and_Duration
      Src: /src/gpac/src/isomedia/isom_store.c:1828,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/isomedia/isom_store.c:1831,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/isomedia/isom_store.c:1833,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/isomedia/isom_store.c:1852,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/isomedia/isom_store.c:1858,1
    - Dst: stbl_GetSampleInfos
      Src: /src/gpac/src/isomedia/isom_store.c:1866,1
    - Dst: stbl_GetSampleSize
      Src: /src/gpac/src/isomedia/isom_store.c:1869,1
    - Dst: Media_IsSelfContained
      Src: /src/gpac/src/isomedia/isom_store.c:1873,1
    - Dst: update_writer_constant_dur
      Src: /src/gpac/src/isomedia/isom_store.c:1875,1
    - Dst: stbl_SetChunkAndOffset
      Src: /src/gpac/src/isomedia/isom_store.c:1888,1
    - Dst: stbl_SetChunkAndOffset
      Src: /src/gpac/src/isomedia/isom_store.c:1899,1
    - Dst: WriteSample
      Src: /src/gpac/src/isomedia/isom_store.c:1905,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:1942,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 153
    argCount: 6
    argNames:
    - mw
    - writers
    - bs
    - Emulation
    - StartOffset
    - drift_inter
    argTypes:
    - MovieWriter*
    - GF_List*
    - GF_BitStream*
    - u8
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1948
      start: 1711
    functionDepth: 4
    functionLinenumber: 1711
    functionLinenumberEnd: 1948
    functionName: DoInterleave
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_free
    - DoFullInterleave
    - update_writer_constant_dur
    - gf_list_count
    - memset
    - Media_IsSelfContained
    - gf_list_get
    - DoWriteMeta
    - GF_LOG
    - gf_bs_write_data
    - WriteSample
    - gf_list_enum
    - stbl_GetSampleDTS_and_Duration
    - stbl_SetChunkAndOffset
    - gf_malloc
    - stbl_GetSampleSize
    - gf_timestamp_greater
    - stbl_GetSampleInfos
    - gf_sys_old_arch_compat
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DoInterleave(MovieWriter *mw, GF_List *writers, GF_BitStream
      *bs, u8 Emulation, u64 StartOffset, Bool drift_inter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_store.c:1955,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/isom_store.c:1956,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/isomedia/isom_store.c:1956,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_store.c:1960,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_store.c:1963,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - bs
    - size
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1968
      start: 1951
    functionDepth: 1
    functionLinenumber: 1951
    functionLinenumberEnd: 1968
    functionName: write_blank_data
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - memset
    - strcpy
    - gf_sys_is_test_mode
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err write_blank_data(GF_BitStream *bs, u32 size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1973,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1974,1
    - Dst: write_blank_data
      Src: /src/gpac/src/isomedia/isom_store.c:1975,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - bs
    - size
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1976
      start: 1970
    functionDepth: 2
    functionLinenumber: 1970
    functionLinenumberEnd: 1976
    functionName: write_free_box
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - write_blank_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err write_free_box(GF_BitStream *bs, u32 size)
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_store.c:1985,1
    - Dst: SetupWriters
      Src: /src/gpac/src/isomedia/isom_store.c:1990,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1995,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1996,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1997,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2000,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2002,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2006,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2008,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2012,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2014,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:2020,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_store.c:2035,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2042,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2044,1
    - Dst: DoInterleave
      Src: /src/gpac/src/isomedia/isom_store.c:2051,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2051,1
    - Dst: UpdateOffsets
      Src: /src/gpac/src/isomedia/isom_store.c:2055,1
    - Dst: WriteMoovAndMeta
      Src: /src/gpac/src/isomedia/isom_store.c:2059,1
    - Dst: write_free_box
      Src: /src/gpac/src/isomedia/isom_store.c:2063,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2070,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2072,1
    - Dst: ResetWriters
      Src: /src/gpac/src/isomedia/isom_store.c:2077,1
    - Dst: DoInterleave
      Src: /src/gpac/src/isomedia/isom_store.c:2078,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:2083,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2095,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2097,1
    - Dst: CleanWriters
      Src: /src/gpac/src/isomedia/isom_store.c:2103,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/isom_store.c:2104,1
    CyclomaticComplexity: 61
    EdgeCount: 61
    ICount: 138
    argCount: 3
    argNames:
    - mw
    - bs
    - drift_inter
    argTypes:
    - MovieWriter*
    - GF_BitStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2106
      start: 1979
    functionDepth: 7
    functionLinenumber: 1979
    functionLinenumberEnd: 2106
    functionName: WriteInterleaved
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - UpdateOffsets
    - ResetWriters
    - gf_list_new
    - CleanWriters
    - gf_isom_box_size
    - gf_isom_box_write
    - gf_bs_get_position
    - strncmp
    - DoInterleave
    - write_free_box
    - SetupWriters
    - gf_bs_write_u32
    - WriteMoovAndMeta
    - gf_list_enum
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteInterleaved(MovieWriter *mw, GF_BitStream *bs, Bool drift_inter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:2111,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:2113,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_store.c:2115,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_store.c:2118,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:2124,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:2126,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_store.c:2128,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_store.c:2129,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_store.c:2130,1
    - Dst: purge_free_boxes
      Src: /src/gpac/src/isomedia/isom_store.c:2136,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 1
    argNames:
    - par
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2138
      start: 2109
    functionDepth: 4
    functionLinenumber: 2109
    functionLinenumberEnd: 2138
    functionName: purge_free_boxes
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_isom_box_del
    - gf_list_count
    - purge_free_boxes
    - gf_list_rem
    - gf_isom_box_array_del
    linkageType: ''
    returnType: void
    signature: void purge_free_boxes(GF_Box *par)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: ShiftMetaOffset
      Src: /src/gpac/src/isomedia/isom_store.c:2144,1
    - Dst: ShiftMetaOffset
      Src: /src/gpac/src/isomedia/isom_store.c:2149,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:2151,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:2158,1
    - Dst: ShiftMetaOffset
      Src: /src/gpac/src/isomedia/isom_store.c:2161,1
    - Dst: shift_chunk_offsets
      Src: /src/gpac/src/isomedia/isom_store.c:2166,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_store.c:2170,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_store.c:2171,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_store.c:2173,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 2
    argNames:
    - movie
    - shift_offset
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2177
      start: 2140
    functionDepth: 5
    functionLinenumber: 2140
    functionLinenumberEnd: 2177
    functionName: inplace_shift_moov_meta_offsets
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_box_del
    - ShiftMetaOffset
    - gf_list_count
    - shift_chunk_offsets
    - gf_list_add
    - gf_list_del_item
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err inplace_shift_moov_meta_offsets(GF_ISOFile *movie, u32 shift_offset)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2188,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2192,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2197,1
    - Dst: inplace_shift_moov_meta_offsets
      Src: /src/gpac/src/isomedia/isom_store.c:2203,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2209,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2216,1
    - Dst: inplace_shift_moov_meta_offsets
      Src: /src/gpac/src/isomedia/isom_store.c:2224,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2232,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/isomedia/isom_store.c:2232,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2233,1
    - Dst: write_blank_data
      Src: /src/gpac/src/isomedia/isom_store.c:2234,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2235,1
    - Dst: muxer_report_progress
      Src: /src/gpac/src/isomedia/isom_store.c:2241,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2249,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/isom_store.c:2250,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_store.c:2252,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2256,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_store.c:2257,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_store.c:2260,1
    - Dst: muxer_report_progress
      Src: /src/gpac/src/isomedia/isom_store.c:2267,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2269,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 73
    argCount: 4
    argNames:
    - mw
    - shift_offset
    - bs
    - moov_first
    argTypes:
    - MovieWriter*
    - u64*
    - GF_BitStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2272
      start: 2179
    functionDepth: 6
    functionLinenumber: 2179
    functionLinenumberEnd: 2272
    functionName: inplace_shift_mdat
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - inplace_shift_moov_meta_offsets
    - gf_bs_read_data
    - gf_isom_box_size
    - gf_bs_seek
    - GF_LOG
    - muxer_report_progress
    - gf_bs_get_size
    - gf_bs_get_position
    - gf_bs_write_data
    - write_blank_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err inplace_shift_mdat(MovieWriter *mw, u64 *shift_offset, GF_BitStream
      *bs, Bool moov_first)
  - BBCount: 68
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2293,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2298,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2303,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:2309,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2324,1
    - Dst: purge_free_boxes
      Src: /src/gpac/src/isomedia/isom_store.c:2333,1
    - Dst: store_meta_item_references
      Src: /src/gpac/src/isomedia/isom_store.c:2334,1
    - Dst: purge_free_boxes
      Src: /src/gpac/src/isomedia/isom_store.c:2337,1
    - Dst: inplace_shift_mdat
      Src: /src/gpac/src/isomedia/isom_store.c:2359,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2369,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2370,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2371,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2374,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2378,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2382,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:2388,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2399,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2410,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2411,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2412,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/isom_store.c:2413,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2416,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2418,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2420,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2424,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2426,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/isomedia/isom_store.c:2430,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2431,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2438,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2439,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/isom_store.c:2441,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2449,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2451,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2457,1
    - Dst: inplace_shift_mdat
      Src: /src/gpac/src/isomedia/isom_store.c:2479,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2484,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2488,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2492,1
    - Dst: write_free_box
      Src: /src/gpac/src/isomedia/isom_store.c:2493,1
    CyclomaticComplexity: 70
    EdgeCount: 70
    ICount: 196
    argCount: 2
    argNames:
    - mw
    - bs
    argTypes:
    - MovieWriter*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2494
      start: 2274
    functionDepth: 7
    functionLinenumber: 2274
    functionLinenumberEnd: 2494
    functionName: WriteInplace
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_size
    - gf_bs_seek
    - gf_isom_box_write
    - gf_bs_get_size
    - gf_bs_write_u32
    - gf_bs_get_position
    - purge_free_boxes
    - store_meta_item_references
    - write_free_box
    - gf_bs_write_u64
    - gf_list_enum
    - gf_bs_write_u8
    - inplace_shift_mdat
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteInplace(MovieWriter *mw, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_ISOFile*::on_block_out
      Src: /src/gpac/src/isomedia/isom_store.c:2500,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - cbk
    - data
    - block_size
    argTypes:
    - void*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2501
      start: 2496
    functionDepth: 0
    functionLinenumber: 2496
    functionLinenumberEnd: 2501
    functionName: isom_on_block_out
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - GF_ISOFile*::on_block_out
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err isom_on_block_out(void *cbk, u8 *data, u32 block_size)
  - BBCount: 47
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_insert_copyright
      Src: /src/gpac/src/isomedia/isom_store.c:2514,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_store.c:2517,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/isom_store.c:2532,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_store.c:2533,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_store.c:2534,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_store.c:2535,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_store.c:2536,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_store.c:2537,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_store.c:2539,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_store.c:2540,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_store.c:2543,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/isomedia/isom_store.c:2552,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:2557,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/isomedia/isom_store.c:2558,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/isom_store.c:2562,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_store.c:2563,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_store.c:2564,1
    - Dst: gf_isom_flush_chunk
      Src: /src/gpac/src/isomedia/isom_store.c:2570,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_store.c:2576,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2578,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_store.c:2585,1
    - Dst: gf_bs_new_cbk
      Src: /src/gpac/src/isomedia/isom_store.c:2588,1
    - Dst: WriteFlat
      Src: /src/gpac/src/isomedia/isom_store.c:2589,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2590,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_store.c:2591,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2595,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/isomedia/isom_store.c:2595,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_store.c:2600,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/isom_store.c:2602,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2607,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2608,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2609,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2610,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/isom_store.c:2612,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/isom_store.c:2614,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2616,1
    - Dst: WriteFlat
      Src: /src/gpac/src/isomedia/isom_store.c:2620,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2622,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_store.c:2627,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_store.c:2632,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2633,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2634,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/isom_store.c:2636,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/isom_store.c:2638,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_store.c:2639,1
    - Dst: GF_ISOFile*::on_block_patch
      Src: /src/gpac/src/isomedia/isom_store.c:2640,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_store.c:2647,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_store.c:2651,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_store.c:2652,1
    - Dst: GF_ISOFile*::on_block_patch
      Src: /src/gpac/src/isomedia/isom_store.c:2654,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_store.c:2655,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_store.c:2660,1
    - Dst: WriteFlat
      Src: /src/gpac/src/isomedia/isom_store.c:2662,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_store.c:2667,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_store.c:2668,1
    - Dst: gf_bs_insert_data
      Src: /src/gpac/src/isomedia/isom_store.c:2670,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_store.c:2672,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_store.c:2680,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_store.c:2682,1
    - Dst: gf_bs_new_cbk
      Src: /src/gpac/src/isomedia/isom_store.c:2685,1
    - Dst: gf_isom_is_inplace_rewrite
      Src: /src/gpac/src/isomedia/isom_store.c:2687,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/isom_store.c:2688,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/isomedia/isom_store.c:2691,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2692,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_store.c:2694,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/isom_store.c:2698,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/isomedia/isom_store.c:2701,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/isom_store.c:2705,1
    - Dst: WriteInterleaved
      Src: /src/gpac/src/isomedia/isom_store.c:2713,1
    - Dst: WriteInterleaved
      Src: /src/gpac/src/isomedia/isom_store.c:2716,1
    - Dst: WriteFlat
      Src: /src/gpac/src/isomedia/isom_store.c:2719,1
    - Dst: WriteFlat
      Src: /src/gpac/src/isomedia/isom_store.c:2722,1
    - Dst: WriteInplace
      Src: /src/gpac/src/isomedia/isom_store.c:2726,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:2730,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:2732,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2740,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2741,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/isom_store.c:2745,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_store.c:2746,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2749,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_store.c:2753,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/isom_store.c:2755,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_store.c:2757,1
    - Dst: muxer_report_progress
      Src: /src/gpac/src/isomedia/isom_store.c:2760,1
    CyclomaticComplexity: 69
    EdgeCount: 69
    ICount: 196
    argCount: 2
    argNames:
    - movie
    - for_fragments
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2763
      start: 2506
    functionDepth: 8
    functionLinenumber: 2506
    functionLinenumberEnd: 2763
    functionName: WriteToFile
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_read_data
    - gf_bs_new
    - gf_list_find
    - gf_bs_new_cbk
    - gf_bs_get_size
    - gf_isom_flush_chunk
    - memset
    - gf_list_count
    - gf_fopen
    - GF_ISOFile*::on_block_patch
    - gf_bs_write_u32
    - gf_list_new
    - gf_strdup
    - gf_list_get
    - gf_bs_get_content
    - WriteFlat
    - gf_list_add
    - gf_isom_box_new
    - gf_bs_write_u64
    - WriteInterleaved
    - gf_list_insert
    - GF_LOG
    - gf_bs_insert_data
    - muxer_report_progress
    - gf_sys_is_test_mode
    - strstr
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_bs_from_file
    - gf_list_enum
    - gf_malloc
    - gf_fclose
    - gf_isom_insert_copyright
    - gf_bs_seek
    - gf_isom_is_inplace_rewrite
    - WriteInplace
    - gf_bs_del
    - strcmp
    - gf_bs_write_u8
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteToFile(GF_ISOFile *movie, Bool for_fragments)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/track.c:37,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - moov
    - TrackID
    argTypes:
    - GF_MovieBox*
    - GF_ISOTrackID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 41
    functionName: GetTrackbyID
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_TrackBox
    signature: GF_TrackBox *GetTrackbyID(GF_MovieBox *moov, GF_ISOTrackID TrackID)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - moov
    - trackNumber
    argTypes:
    - GF_MovieBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 49
    functionName: gf_isom_get_track
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_TrackBox
    signature: GF_TrackBox *gf_isom_get_track(GF_MovieBox *moov, u32 trackNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/track.c:58,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - moov
    - trackID
    argTypes:
    - GF_MovieBox*
    - GF_ISOTrackID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 62
    functionName: gf_isom_get_tracknum_from_id
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_get_tracknum_from_id(GF_MovieBox *moov, GF_ISOTrackID trackID)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_tracknum_from_id
      Src: /src/gpac/src/isomedia/track.c:79,1
    - Dst: gf_isom_get_track
      Src: /src/gpac/src/isomedia/track.c:83,1
    - Dst: Media_GetESD
      Src: /src/gpac/src/isomedia/track.c:86,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/track.c:90,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/track.c:101,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/track.c:117,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/isomedia/track.c:119,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:120,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/track.c:130,1
    - Dst: gf_isom_get_track_from_id
      Src: /src/gpac/src/isomedia/track.c:135,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/track.c:139,1
    - Dst: gf_isom_get_track_from_id
      Src: /src/gpac/src/isomedia/track.c:153,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/track.c:175,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/isomedia/track.c:191,1
    - Dst: gf_isom_get_rvc_config
      Src: /src/gpac/src/isomedia/track.c:206,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/isomedia/track.c:211,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/track.c:212,1
    - Dst: gf_gz_decompress_payload_ex
      Src: /src/gpac/src/isomedia/track.c:214,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/track.c:215,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:249,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/track.c:250,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/isomedia/track.c:257,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:281,1
    CyclomaticComplexity: 63
    EdgeCount: 63
    ICount: 167
    argCount: 4
    argNames:
    - moov
    - trackID
    - StreamDescIndex
    - outESD
    argTypes:
    - GF_MovieBox*
    - GF_ISOTrackID
    - u32
    - GF_ESD**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 65
    functionDepth: 5
    functionLinenumber: 65
    functionLinenumberEnd: 288
    functionName: GetESD
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 2
    functionsReached:
    - gf_isom_get_track
    - gf_free
    - gf_isom_get_rvc_config
    - gf_isom_get_tracknum_from_id
    - gf_odf_desc_del
    - Media_GetESD
    - gf_gz_decompress_payload_ex
    - gf_odf_desc_copy
    - gf_isom_box_new_parent
    - gf_odf_desc_new
    - strcmp
    - gf_list_add
    - Track_FindRef
    - Media_GetSampleDesc
    - gf_list_enum
    - gf_isom_get_track_from_id
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GetESD(GF_MovieBox *moov, GF_ISOTrackID trackID, u32 StreamDescIndex,
      GF_ESD **outESD)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track
      Src: /src/gpac/src/isomedia/track.c:320,1
    - Dst: gf_isom_get_tracknum_from_id
      Src: /src/gpac/src/isomedia/track.c:320,1
    - Dst: Media_GetSampleDescIndex
      Src: /src/gpac/src/isomedia/track.c:323,1
    - Dst: GetESD
      Src: /src/gpac/src/isomedia/track.c:325,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - moov
    - trackID
    - CTS
    - outESD
    argTypes:
    - GF_MovieBox*
    - GF_ISOTrackID
    - u64
    - GF_ESD**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 314
    functionDepth: 6
    functionLinenumber: 314
    functionLinenumberEnd: 326
    functionName: GetESDForTime
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track
    - Media_GetSampleDescIndex
    - GetESD
    - gf_isom_get_tracknum_from_id
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GetESDForTime(GF_MovieBox *moov, GF_ISOTrackID trackID, u64
      CTS, GF_ESD **outESD)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/track.c:341,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - trak
    - ReferenceType
    - dpnd
    argTypes:
    - GF_TrackBox*
    - u32
    - GF_TrackReferenceTypeBox**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 329
    functionDepth: 1
    functionLinenumber: 329
    functionLinenumberEnd: 349
    functionName: Track_FindRef
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Track_FindRef(GF_TrackBox *trak, u32 ReferenceType, GF_TrackReferenceTypeBox
      **dpnd)
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - HandlerType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 375
    functionName: Track_IsMPEG4Stream
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Track_IsMPEG4Stream(u32 HandlerType)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: Media_SetDuration
      Src: /src/gpac/src/isomedia/track.c:386,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/track.c:401,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/isomedia/track.c:412,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/track.c:413,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 26
    argCount: 2
    argNames:
    - trak
    - keep_utc
    argTypes:
    - GF_TrackBox*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 378
    functionDepth: 4
    functionLinenumber: 378
    functionLinenumberEnd: 415
    functionName: SetTrackDurationEx
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_sys_is_test_mode
    - Media_SetDuration
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SetTrackDurationEx(GF_TrackBox *trak, Bool keep_utc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SetTrackDurationEx
      Src: /src/gpac/src/isomedia/track.c:419,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - trak
    argTypes:
    - GF_TrackBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 417
    functionDepth: 5
    functionLinenumber: 417
    functionLinenumberEnd: 420
    functionName: SetTrackDuration
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 0
    functionsReached:
    - SetTrackDurationEx
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SetTrackDuration(GF_TrackBox *trak)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/track.c:432,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:435,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - traf
    - sample_index
    argTypes:
    - GF_TrackFragmentBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 426
    functionDepth: 1
    functionLinenumber: 426
    functionLinenumberEnd: 447
    functionName: traf_get_sample_entry
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_list_get
    linkageType: ''
    returnType: GF_TrunEntry
    signature: GF_TrunEntry *traf_get_sample_entry(GF_TrackFragmentBox *traf, u32
      sample_index)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:453,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:454,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - traf
    - sample_idx
    argTypes:
    - GF_TrackFragmentBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 450
    functionDepth: 1
    functionLinenumber: 450
    functionLinenumberEnd: 460
    functionName: saio_get_index
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: u32
    signature: u32 saio_get_index(GF_TrackFragmentBox *traf, u32 sample_idx)
  - BBCount: 167
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:510,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:512,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:513,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:513,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:518,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:520,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/isomedia/track.c:533,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:565,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:569,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/track.c:587,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/track.c:589,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:590,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:595,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/track.c:596,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/isomedia/track.c:599,1
    - Dst: gf_isom_box_freeze_order
      Src: /src/gpac/src/isomedia/track.c:607,1
    - Dst: gf_isom_clone_box
      Src: /src/gpac/src/isomedia/track.c:609,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:613,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:614,1
    - Dst: gf_isom_box_array_reset_parent
      Src: /src/gpac/src/isomedia/track.c:615,1
    - Dst: gf_isom_box_array_reset_parent
      Src: /src/gpac/src/isomedia/track.c:616,1
    - Dst: gf_isom_box_array_reset_parent
      Src: /src/gpac/src/isomedia/track.c:617,1
    - Dst: gf_isom_box_array_reset_parent
      Src: /src/gpac/src/isomedia/track.c:618,1
    - Dst: gf_isom_box_array_reset_parent
      Src: /src/gpac/src/isomedia/track.c:619,1
    - Dst: gf_isom_box_array_reset_parent
      Src: /src/gpac/src/isomedia/track.c:620,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/track.c:622,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/track.c:626,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/track.c:630,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/track.c:634,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/track.c:635,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/track.c:638,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/track.c:639,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/track.c:642,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/track.c:643,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/track.c:646,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/track.c:647,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/track.c:649,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/track.c:650,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/track.c:652,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/track.c:653,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/track.c:679,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:682,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:694,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:720,1
    - Dst: traf_get_sample_entry
      Src: /src/gpac/src/isomedia/track.c:723,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:725,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:767,1
    - Dst: stbl_AppendSize
      Src: /src/gpac/src/isomedia/track.c:771,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:776,1
    - Dst: stbl_AppendTime
      Src: /src/gpac/src/isomedia/track.c:780,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:823,1
    - Dst: stbl_AppendChunk
      Src: /src/gpac/src/isomedia/track.c:827,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:831,1
    - Dst: stbl_AppendSampleToChunk
      Src: /src/gpac/src/isomedia/track.c:835,1
    - Dst: stbl_AppendTrafMap
      Src: /src/gpac/src/isomedia/track.c:843,1
    - Dst: stbl_AppendCTSOffset
      Src: /src/gpac/src/isomedia/track.c:858,1
    - Dst: GF_ISOM_GET_FRAG_SYNC
      Src: /src/gpac/src/isomedia/track.c:861,1
    - Dst: stbl_AppendRAP
      Src: /src/gpac/src/isomedia/track.c:865,1
    - Dst: GF_ISOM_GET_FRAG_PAD
      Src: /src/gpac/src/isomedia/track.c:867,1
    - Dst: stbl_AppendPadding
      Src: /src/gpac/src/isomedia/track.c:869,1
    - Dst: GF_ISOM_GET_FRAG_DEG
      Src: /src/gpac/src/isomedia/track.c:872,1
    - Dst: stbl_AppendDegradation
      Src: /src/gpac/src/isomedia/track.c:874,1
    - Dst: stbl_AppendDependencyType
      Src: /src/gpac/src/isomedia/track.c:877,1
    - Dst: GF_ISOM_GET_FRAG_LEAD
      Src: /src/gpac/src/isomedia/track.c:877,1
    - Dst: GF_ISOM_GET_FRAG_DEPENDS
      Src: /src/gpac/src/isomedia/track.c:877,1
    - Dst: GF_ISOM_GET_FRAG_DEPENDED
      Src: /src/gpac/src/isomedia/track.c:877,1
    - Dst: GF_ISOM_GET_FRAG_REDUNDANT
      Src: /src/gpac/src/isomedia/track.c:877,1
    - Dst: gf_list_last
      Src: /src/gpac/src/isomedia/track.c:891,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/track.c:915,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/track.c:918,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:921,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:923,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:924,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:925,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:931,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:932,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/track.c:933,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/track.c:934,1
    - Dst: gf_isom_is_identical_sgpd
      Src: /src/gpac/src/isomedia/track.c:941,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:945,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/track.c:946,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:950,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:951,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:954,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:955,1
    - Dst: gf_isom_is_identical_sgpd
      Src: /src/gpac/src/isomedia/track.c:956,1
    - Dst: sgpd_del_entry
      Src: /src/gpac/src/isomedia/track.c:961,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:967,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:968,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/track.c:972,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:978,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:980,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:983,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:984,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:990,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:995,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/track.c:999,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/track.c:1015,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/track.c:1016,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/track.c:1020,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/track.c:1021,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/track.c:1032,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:1046,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/track.c:1052,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/track.c:1057,1
    - Dst: gf_isom_get_tracknum_from_id
      Src: /src/gpac/src/isomedia/track.c:1063,1
    - Dst: gf_isom_is_cenc_media
      Src: /src/gpac/src/isomedia/track.c:1064,1
    - Dst: gf_isom_get_cenc_info
      Src: /src/gpac/src/isomedia/track.c:1069,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:1072,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:1073,1
    - Dst: gf_isom_create_piff_psec_box
      Src: /src/gpac/src/isomedia/track.c:1090,1
    - Dst: gf_isom_create_samp_enc_box
      Src: /src/gpac/src/isomedia/track.c:1092,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/track.c:1095,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/track.c:1098,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:1099,1
    - Dst: gf_isom_cenc_has_saiz_saio_traf
      Src: /src/gpac/src/isomedia/track.c:1104,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:1115,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:1116,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:1123,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:1132,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:1133,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:1139,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:1147,1
    - Dst: saio_get_index
      Src: /src/gpac/src/isomedia/track.c:1155,1
    - Dst: gf_isom_get_sample_cenc_info_internal
      Src: /src/gpac/src/isomedia/track.c:1167,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:1170,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/isomedia/track.c:1170,1
    - Dst: gf_isom_cenc_merge_saiz_saio
      Src: /src/gpac/src/isomedia/track.c:1187,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/track.c:1198,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/track.c:1202,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/track.c:1204,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/track.c:1205,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/track.c:1207,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/track.c:1209,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:1213,1
    - Dst: senc_Parse
      Src: /src/gpac/src/isomedia/track.c:1221,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/track.c:1225,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/isomedia/track.c:1226,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:1233,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:1235,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:1247,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:1248,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:1253,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/track.c:1253,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:1257,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/track.c:1257,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:1262,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:1263,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/track.c:1263,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:1268,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/track.c:1268,1
    - Dst: saio_get_index
      Src: /src/gpac/src/isomedia/track.c:1276,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:1278,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/track.c:1278,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:1285,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/track.c:1289,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/track.c:1290,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/track.c:1296,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/track.c:1298,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/track.c:1299,1
    - Dst: gf_isom_add_sample_aux_info_internal
      Src: /src/gpac/src/isomedia/track.c:1301,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:1303,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/isomedia/track.c:1303,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/track.c:1313,1
    - Dst: gf_isom_push_mdat_end
      Src: /src/gpac/src/isomedia/track.c:1318,1
    CyclomaticComplexity: 244
    EdgeCount: 244
    ICount: 640
    argCount: 6
    argNames:
    - trak
    - traf
    - moof_box
    - moof_offset
    - compressed_diff
    - cumulated_offset
    argTypes:
    - GF_TrackBox*
    - GF_TrackFragmentBox*
    - GF_MovieFragmentBox*
    - u64
    - s32
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1322
      start: 462
    functionDepth: 5
    functionLinenumber: 462
    functionLinenumberEnd: 1322
    functionName: MergeTrack
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 0
    functionsReached:
    - GF_ISOM_GET_FRAG_DEPENDS
    - gf_free
    - saio_get_index
    - gf_isom_create_samp_enc_box
    - gf_isom_box_size
    - gf_bs_read_data
    - gf_bs_new
    - traf_get_sample_entry
    - GF_ISOM_GET_FRAG_SYNC
    - stbl_AppendChunk
    - GF_SAFEALLOC
    - gf_isom_box_write
    - gf_isom_get_sample_cenc_info_internal
    - gf_list_count
    - gf_isom_box_freeze_order
    - GF_ISOM_GET_FRAG_DEPENDED
    - senc_Parse
    - sgpd_del_entry
    - stbl_AppendPadding
    - gf_realloc
    - gf_4cc_to_str
    - gf_list_get
    - gf_list_new
    - stbl_AppendSize
    - gf_isom_box_del
    - gf_bs_get_content
    - memcpy
    - gf_isom_is_identical_sgpd
    - gf_list_add
    - gf_isom_create_piff_psec_box
    - stbl_AppendSampleToChunk
    - stbl_AppendTrafMap
    - GF_ISOM_GET_FRAG_DEG
    - gf_isom_box_del_parent
    - stbl_AppendDegradation
    - gf_isom_push_mdat_end
    - gf_list_transfer
    - gf_isom_get_tracknum_from_id
    - GF_LOG
    - gf_isom_is_video_handler_type
    - gf_isom_box_array_reset_parent
    - gf_isom_get_cenc_info
    - gf_isom_cenc_merge_saiz_saio
    - gf_isom_box_new_parent
    - gf_bs_get_position
    - gf_list_del_item
    - gf_error_to_string
    - gf_list_enum
    - stbl_AppendCTSOffset
    - stbl_AppendDependencyType
    - gf_list_last
    - gf_malloc
    - gf_isom_is_cenc_media
    - gf_isom_cenc_has_saiz_saio_traf
    - gf_isom_add_sample_aux_info_internal
    - stbl_AppendRAP
    - gf_isom_clone_box
    - GF_ISOM_GET_FRAG_PAD
    - gf_bs_seek
    - gf_bs_del
    - stbl_AppendTime
    - GF_ISOM_GET_FRAG_LEAD
    - GF_ISOM_GET_FRAG_REDUNDANT
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MergeTrack(GF_TrackBox *trak, GF_TrackFragmentBox *traf, GF_MovieFragmentBox
      *moof_box, u64 moof_offset, s32 compressed_diff, u64 *cumulated_offset)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/track.c:1336,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/track.c:1338,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - moov
    - TrackID
    argTypes:
    - GF_MovieBox*
    - GF_ISOTrackID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1343
      start: 1330
    functionDepth: 1
    functionLinenumber: 1330
    functionLinenumberEnd: 1343
    functionName: RequestTrack
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_isom_set_last_error
    linkageType: ''
    returnType: u8
    signature: u8 RequestTrack(GF_MovieBox *moov, GF_ISOTrackID TrackID)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/track.c:1354,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/track.c:1356,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - trak
    - ReferenceType
    argTypes:
    - GF_TrackBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1361
      start: 1345
    functionDepth: 5
    functionLinenumber: 1345
    functionLinenumberEnd: 1361
    functionName: Track_RemoveRef
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Track_RemoveRef(GF_TrackBox *trak, u32 ReferenceType)
  - BBCount: 61
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1388,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1392,1
    - Dst: mdia_on_child_box
      Src: /src/gpac/src/isomedia/track.c:1394,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1398,1
    - Dst: mdia_on_child_box
      Src: /src/gpac/src/isomedia/track.c:1400,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1404,1
    - Dst: mdia_on_child_box
      Src: /src/gpac/src/isomedia/track.c:1406,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1410,1
    - Dst: minf_on_child_box
      Src: /src/gpac/src/isomedia/track.c:1412,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1420,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1424,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1428,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1432,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1436,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1440,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1444,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1448,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1452,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1456,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1460,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1464,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1468,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1473,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1477,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1481,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1486,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1490,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/track.c:1495,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:1496,1
    - Dst: minf_on_child_box
      Src: /src/gpac/src/isomedia/track.c:1498,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/track.c:1505,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1509,1
    - Dst: dinf_on_child_box
      Src: /src/gpac/src/isomedia/track.c:1511,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1517,1
    - Dst: minf_on_child_box
      Src: /src/gpac/src/isomedia/track.c:1520,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1524,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1530,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1534,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1538,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1542,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1546,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/track.c:1552,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/track.c:1553,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/track.c:1555,1
    CyclomaticComplexity: 81
    EdgeCount: 81
    ICount: 243
    argCount: 3
    argNames:
    - mdia
    - MediaType
    - TimeScale
    argTypes:
    - GF_MediaBox**
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1559
      start: 1363
    functionDepth: 5
    functionLinenumber: 1363
    functionLinenumberEnd: 1559
    functionName: NewMedia
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 0
    functionsReached:
    - minf_on_child_box
    - gf_list_new
    - gf_strdup
    - gf_isom_box_del_parent
    - mdia_on_child_box
    - gf_isom_box_new_parent
    - gf_list_add
    - gf_isom_box_new
    - dinf_on_child_box
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NewMedia(GF_MediaBox **mdia, u32 MediaType, u32 TimeScale)
  - BBCount: 118
    BranchProfiles: []
    Callsites:
    - Dst: Track_IsMPEG4Stream
      Src: /src/gpac/src/isomedia/track.c:1575,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/isomedia/track.c:1581,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1590,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/track.c:1592,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/track.c:1599,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/track.c:1603,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1608,1
    - Dst: reftype_AddRefTrack
      Src: /src/gpac/src/isomedia/track.c:1610,1
    - Dst: Track_RemoveRef
      Src: /src/gpac/src/isomedia/track.c:1613,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/track.c:1618,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1621,1
    - Dst: reftype_AddRefTrack
      Src: /src/gpac/src/isomedia/track.c:1624,1
    - Dst: Track_RemoveRef
      Src: /src/gpac/src/isomedia/track.c:1627,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/track.c:1636,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1640,1
    - Dst: reftype_AddRefTrack
      Src: /src/gpac/src/isomedia/track.c:1643,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1665,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:1672,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/track.c:1676,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1700,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1706,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1716,1
    - Dst: AVC_HEVC_UpdateESD
      Src: /src/gpac/src/isomedia/track.c:1740,1
    - Dst: LSR_UpdateESD
      Src: /src/gpac/src/isomedia/track.c:1744,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1757,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1762,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:1767,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:1770,1
    - Dst: Media_GetESD
      Src: /src/gpac/src/isomedia/track.c:1773,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1783,1
    - Dst: AVC_HEVC_UpdateESD
      Src: /src/gpac/src/isomedia/track.c:1785,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1788,1
    - Dst: AVC_HEVC_UpdateESD
      Src: /src/gpac/src/isomedia/track.c:1790,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1793,1
    - Dst: AVC_HEVC_UpdateESD
      Src: /src/gpac/src/isomedia/track.c:1795,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1798,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1800,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1810,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1812,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1815,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1817,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1819,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1822,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1824,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1826,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1829,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1831,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1833,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1836,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1838,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1840,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1843,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1845,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1848,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1857,1
    - Dst: LSR_UpdateESD
      Src: /src/gpac/src/isomedia/track.c:1859,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1862,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1863,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/track.c:1872,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:1873,1
    - Dst: stsd_on_child_box
      Src: /src/gpac/src/isomedia/track.c:1875,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:1877,1
    CyclomaticComplexity: 111
    EdgeCount: 111
    ICount: 321
    argCount: 5
    argNames:
    - trak
    - StreamDescriptionIndex
    - DataReferenceIndex
    - esd
    - outStreamIndex
    argTypes:
    - GF_TrackBox*
    - u32
    - u32
    - GF_ESD*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1880
      start: 1561
    functionDepth: 6
    functionLinenumber: 1561
    functionLinenumberEnd: 1880
    functionName: Track_SetStreamDescriptor
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - trak_on_child_box
    - gf_list_new
    - Track_IsMPEG4Stream
    - LSR_UpdateESD
    - gf_odf_desc_del
    - Track_RemoveRef
    - reftype_AddRefTrack
    - Media_GetESD
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_odf_desc_new
    - AVC_HEVC_UpdateESD
    - gf_list_add
    - gf_isom_box_new
    - Track_FindRef
    - stsd_on_child_box
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Track_SetStreamDescriptor(GF_TrackBox *trak, u32 StreamDescriptionIndex,
      u32 DataReferenceIndex, GF_ESD *esd, u32 *outStreamIndex)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - movie
    - error
    argTypes:
    - GF_ISOFile*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 42
    functionName: gf_isom_set_last_error
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_isom_set_last_error(GF_ISOFile *movie, GF_Err error)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - the_file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionName: gf_isom_last_error
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 16
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_last_error(GF_ISOFile *the_file)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - the_file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionName: gf_isom_get_mode
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_mode(GF_ISOFile *the_file)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/isomedia/isom_read.c:67,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/isomedia/isom_read.c:69,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - the_file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 72
    functionName: gf_isom_get_file_size
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_size
    linkageType: ''
    returnType: u64
    signature: u64 gf_isom_get_file_size(GF_ISOFile *the_file)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:81,1
    - Dst: gf_isom_box_freeze_order
      Src: /src/gpac/src/isomedia/isom_read.c:82,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 75
    functionDepth: 2
    functionLinenumber: 75
    functionLinenumberEnd: 85
    functionName: gf_isom_freeze_order
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_list_enum
    - gf_isom_box_freeze_order
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_freeze_order(GF_ISOFile *file)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - file
    - padding
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 93
    functionName: gf_isom_set_inplace_padding
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_inplace_padding(GF_ISOFile *file, u32 padding)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_read.c:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 105
    functionName: GF_ISOSample *gf_isom_sample_new()
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ISOSample *gf_isom_sample_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:112,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:113,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 1
    argNames:
    - samp
    argTypes:
    - GF_ISOSample**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 115
    functionName: gf_isom_sample_del
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 20
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_sample_del(GF_ISOSample **samp)
  - BBCount: 19
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 1
    argNames:
    - type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 150
    functionName: gf_isom_probe_type
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_probe_type(u32 type)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_read.c:157,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/isomedia/isom_read.c:160,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_read.c:164,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/isomedia/isom_read.c:166,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_read.c:167,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/isom_read.c:172,1
    - Dst: gf_fseek
      Src: /src/gpac/src/isomedia/isom_read.c:174,1
    - Dst: gf_fread
      Src: /src/gpac/src/isomedia/isom_read.c:176,1
    - Dst: gf_fread
      Src: /src/gpac/src/isomedia/isom_read.c:178,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_read.c:179,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/isom_read.c:182,1
    - Dst: gf_isom_probe_type
      Src: /src/gpac/src/isomedia/isom_read.c:185,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 3
    argNames:
    - fileName
    - start_range
    - end_range
    argTypes:
    - char*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 186
    functionName: gf_isom_probe_file_range
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_fseek
    - gf_blob_get
    - gf_fread
    - gf_isom_probe_type
    - strncmp
    - gf_fopen
    - GF_4CC
    - gf_blob_release
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_probe_file_range(const char *fileName, u64 start_range,
      u64 end_range)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_probe_file_range
      Src: /src/gpac/src/isomedia/isom_read.c:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - fileName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 188
    functionDepth: 2
    functionLinenumber: 188
    functionLinenumberEnd: 192
    functionName: gf_isom_probe_file
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 7
    functionsReached:
    - gf_isom_probe_file_range
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_probe_file(const char *fileName)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_read.c:199,1
    - Dst: gf_isom_probe_type
      Src: /src/gpac/src/isomedia/isom_read.c:200,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - inBuf
    - inSize
    argTypes:
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 201
    functionName: gf_isom_probe_data
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_probe_type
    - GF_4CC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_probe_data(const u8*inBuf, u32 inSize)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_read.c:231,1
    - Dst: strchr
      Src: /src/gpac/src/isomedia/isom_read.c:233,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_read.c:236,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/isom_read.c:236,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_read.c:237,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_read.c:239,1
    - Dst: sscanf
      Src: /src/gpac/src/isomedia/isom_read.c:246,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_read.c:251,1
    - Dst: atoi
      Src: /src/gpac/src/isomedia/isom_read.c:251,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_read.c:252,1
    - Dst: atoi
      Src: /src/gpac/src/isomedia/isom_read.c:252,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_read.c:254,1
    - Dst: atoi
      Src: /src/gpac/src/isomedia/isom_read.c:254,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_read.c:255,1
    - Dst: atoi
      Src: /src/gpac/src/isomedia/isom_read.c:255,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_read.c:256,1
    - Dst: atoi
      Src: /src/gpac/src/isomedia/isom_read.c:256,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_read.c:257,1
    - Dst: atoi
      Src: /src/gpac/src/isomedia/isom_read.c:257,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_read.c:258,1
    - Dst: atoi
      Src: /src/gpac/src/isomedia/isom_read.c:258,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_read.c:259,1
    - Dst: sscanf
      Src: /src/gpac/src/isomedia/isom_read.c:260,1
    - Dst: stricmp
      Src: /src/gpac/src/isomedia/isom_read.c:266,1
    - Dst: stricmp
      Src: /src/gpac/src/isomedia/isom_read.c:266,1
    - Dst: stricmp
      Src: /src/gpac/src/isomedia/isom_read.c:268,1
    - Dst: stricmp
      Src: /src/gpac/src/isomedia/isom_read.c:270,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_read.c:273,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_read.c:277,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_read.c:279,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:282,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:285,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:287,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_read.c:292,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:294,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_read.c:297,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:299,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:306,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:309,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:313,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:318,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:320,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:324,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:326,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:328,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:330,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:332,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:334,1
    - Dst: stricmp
      Src: /src/gpac/src/isomedia/isom_read.c:341,1
    - Dst: stricmp
      Src: /src/gpac/src/isomedia/isom_read.c:341,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:346,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:348,1
    - Dst: gf_odf_avc_cfg_new
      Src: /src/gpac/src/isomedia/isom_read.c:354,1
    - Dst: gf_media_nalu_next_start_code
      Src: /src/gpac/src/isomedia/isom_read.c:360,1
    - Dst: gf_media_nalu_next_start_code
      Src: /src/gpac/src/isomedia/isom_read.c:366,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_read.c:369,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_read.c:372,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:374,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_read.c:388,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_read.c:390,1
    - Dst: AVC_RewriteESDescriptor
      Src: /src/gpac/src/isomedia/isom_read.c:396,1
    - Dst: stricmp
      Src: /src/gpac/src/isomedia/isom_read.c:398,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:403,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:405,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/isom_read.c:407,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_read.c:410,1
    - Dst: gf_m4a_write_config
      Src: /src/gpac/src/isomedia/isom_read.c:414,1
    - Dst: stricmp
      Src: /src/gpac/src/isomedia/isom_read.c:422,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:423,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 179
    argCount: 2
    argNames:
    - fileName
    - file
    argTypes:
    - char*
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 210
    functionDepth: 5
    functionLinenumber: 210
    functionLinenumberEnd: 426
    functionName: isom_create_init_from_mem
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - strcpy
    - AVC_RewriteESDescriptor
    - memset
    - atoi
    - gf_media_nalu_next_start_code
    - strchr
    - gf_odf_desc_esd_new
    - memcpy
    - strncmp
    - gf_list_add
    - gf_isom_box_new
    - stricmp
    - sscanf
    - GF_LOG
    - gf_isom_box_new_parent
    - gf_m4a_write_config
    - gf_odf_avc_cfg_new
    - gf_malloc
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err isom_create_init_from_mem(const char *fileName, GF_ISOFile *file)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_new_movie
      Src: /src/gpac/src/isomedia/isom_read.c:445,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_read.c:448,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_read.c:457,1
    - Dst: isom_create_init_from_mem
      Src: /src/gpac/src/isomedia/isom_read.c:460,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_read.c:466,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_read.c:468,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_read.c:474,1
    - Dst: gf_bs_truncate
      Src: /src/gpac/src/isomedia/isom_read.c:475,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_read.c:477,1
    - Dst: gf_isom_parse_movie_boxes
      Src: /src/gpac/src/isomedia/isom_read.c:479,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_read.c:489,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_read.c:493,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 46
    argCount: 7
    argNames:
    - fileName
    - start_range
    - end_range
    - enable_frag_bounds
    - the_file
    - BytesMissing
    - outBoxType
    argTypes:
    - char*
    - u64
    - u64
    - Bool
    - GF_ISOFile**
    - u64*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 434
    functionDepth: 6
    functionLinenumber: 434
    functionLinenumberEnd: 500
    functionName: gf_isom_open_progressive_ex
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_bs_seek
    - gf_isom_parse_movie_boxes
    - gf_bs_truncate
    - strncmp
    - gf_isom_delete_movie
    - isom_create_init_from_mem
    - gf_isom_new_movie
    - gf_isom_datamap_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_open_progressive_ex(const char *fileName, u64 start_range,
      u64 end_range, Bool enable_frag_bounds, GF_ISOFile **the_file, u64 *BytesMissing,
      u32 *outBoxType)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_open_progressive_ex
      Src: /src/gpac/src/isomedia/isom_read.c:505,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - fileName
    - start_range
    - end_range
    - enable_frag_bounds
    - the_file
    - BytesMissing
    argTypes:
    - char*
    - u64
    - u64
    - Bool
    - GF_ISOFile**
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 502
    functionDepth: 7
    functionLinenumber: 502
    functionLinenumberEnd: 506
    functionName: gf_isom_open_progressive
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 4
    functionsReached:
    - gf_isom_open_progressive_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_open_progressive(const char *fileName, u64 start_range,
      u64 end_range, Bool enable_frag_bounds, GF_ISOFile **the_file, u64 *BytesMissing)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_untruncate
      Src: /src/gpac/src/isomedia/isom_read.c:511,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_read.c:513,1
    - Dst: gf_bs_truncate
      Src: /src/gpac/src/isomedia/isom_read.c:514,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_read.c:517,1
    - Dst: gf_isom_parse_movie_boxes
      Src: /src/gpac/src/isomedia/isom_read.c:518,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - movie
    - start_range
    - end_range
    - BytesMissing
    argTypes:
    - GF_ISOFile*
    - u64
    - u64
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 519
      start: 509
    functionDepth: 1
    functionLinenumber: 509
    functionLinenumberEnd: 519
    functionName: gf_isom_load_fragments
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_parse_movie_boxes
    - gf_bs_truncate
    - gf_bs_seek
    - gf_bs_untruncate
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_load_fragments(GF_ISOFile *movie, u64 start_range, u64
      end_range, u64 *BytesMissing)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_open_file
      Src: /src/gpac/src/isomedia/isom_read.c:536,1
    - Dst: gf_isom_create_movie
      Src: /src/gpac/src/isomedia/isom_read.c:542,1
    - Dst: gf_isom_open_file
      Src: /src/gpac/src/isomedia/isom_read.c:547,1
    - Dst: gf_isom_create_movie
      Src: /src/gpac/src/isomedia/isom_read.c:550,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 3
    argNames:
    - fileName
    - OpenMode
    - tmp_dir
    argTypes:
    - char*
    - GF_ISOOpenMode
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 526
    functionDepth: 1
    functionLinenumber: 526
    functionLinenumberEnd: 559
    functionName: gf_isom_open
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 22
    functionsReached:
    - gf_isom_open_file
    - gf_isom_create_movie
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_isom_open(const char *fileName, GF_ISOOpenMode OpenMode,
      const char *tmp_dir)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:569,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:571,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_read.c:573,1
    - Dst: gf_isom_get_duration
      Src: /src/gpac/src/isomedia/isom_read.c:581,1
    - Dst: gf_isom_close_fragments
      Src: /src/gpac/src/isomedia/isom_read.c:585,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:590,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_read.c:593,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_read.c:598,1
    - Dst: gf_bs_new_cbk
      Src: /src/gpac/src/isomedia/isom_read.c:599,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_read.c:601,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:602,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_read.c:604,1
    - Dst: WriteToFile
      Src: /src/gpac/src/isomedia/isom_read.c:609,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:616,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:617,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/isom_read.c:620,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 46
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 561
    functionDepth: 9
    functionLinenumber: 561
    functionLinenumberEnd: 626
    functionName: gf_isom_write
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - WriteToFile
    - gf_isom_box_size
    - gf_bs_new_cbk
    - gf_isom_close_fragments
    - gf_isom_get_duration
    - gf_list_count
    - gf_isom_box_new_parent
    - gf_isom_box_write
    - strcmp
    - gf_bs_del
    - gf_isom_datamap_del
    - SetTrackDuration
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_write(GF_ISOFile *movie)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_write
      Src: /src/gpac/src/isomedia/isom_read.c:633,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_read.c:635,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 628
    functionDepth: 10
    functionLinenumber: 628
    functionLinenumberEnd: 637
    functionName: gf_isom_close
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 15
    functionsReached:
    - gf_isom_delete_movie
    - gf_isom_write
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_close(GF_ISOFile *movie)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 648
      start: 644
    functionDepth: 0
    functionLinenumber: 644
    functionLinenumberEnd: 648
    functionName: gf_isom_has_root_od
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_isom_has_root_od(GF_ISOFile *movie)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - movie
    - disable
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 655
      start: 651
    functionDepth: 0
    functionLinenumber: 651
    functionLinenumberEnd: 655
    functionName: gf_isom_disable_odf_conversion
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_disable_odf_conversion(GF_ISOFile *movie, Bool disable)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/isom_read.c:676,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_read.c:685,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_read.c:688,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_read.c:689,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_read.c:693,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_read.c:696,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_read.c:697,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/isom_read.c:705,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/isom_read.c:708,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:709,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/isom_read.c:712,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:713,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:732,1
    - Dst: GetESDForTime
      Src: /src/gpac/src/isomedia/isom_read.c:733,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_read.c:734,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_read.c:736,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_read.c:737,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_read.c:741,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:767,1
    - Dst: GetESDForTime
      Src: /src/gpac/src/isomedia/isom_read.c:768,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_read.c:769,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_read.c:771,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_read.c:772,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_read.c:776,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 104
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 779
      start: 658
    functionDepth: 7
    functionLinenumber: 658
    functionLinenumberEnd: 779
    functionName: GF_Descriptor *gf_isom_get_root_od(GF_ISOFile *movie)
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_odf_desc_del
    - GetESDForTime
    - gf_odf_desc_copy
    - memset
    - gf_list_add
    - gf_list_enum
    - gf_malloc
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_Descriptor *gf_isom_get_root_od(GF_ISOFile *movie)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:791,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 792
      start: 782
    functionDepth: 1
    functionLinenumber: 782
    functionLinenumberEnd: 792
    functionName: gf_isom_get_track_count
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 22
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_track_count(GF_ISOFile *movie)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:800,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 803
      start: 795
    functionDepth: 0
    functionLinenumber: 795
    functionLinenumberEnd: 803
    functionName: GF_ISOTrackID::gf_isom_get_track_id
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ISOTrackID gf_isom_get_track_id(GF_ISOFile *movie, u32
      trackNumber)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/isomedia/isom_read.c:813,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:816,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 2
    argNames:
    - the_file
    - trackID
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 821
      start: 806
    functionDepth: 2
    functionLinenumber: 806
    functionLinenumberEnd: 821
    functionName: gf_isom_get_track_by_id
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 25
    functionsReached:
    - gf_isom_get_track_box
    - gf_isom_get_track_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_track_by_id(GF_ISOFile *the_file, GF_ISOTrackID
      trackID)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:828,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 831
      start: 823
    functionDepth: 0
    functionLinenumber: 823
    functionLinenumberEnd: 831
    functionName: GF_ISOTrackID::gf_isom_get_track_original_id
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ISOTrackID gf_isom_get_track_original_id(GF_ISOFile *movie,
      u32 trackNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 834
    functionDepth: 0
    functionLinenumber: 834
    functionLinenumberEnd: 839
    functionName: gf_isom_has_movie
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_has_movie(GF_ISOFile *file)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:849,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - file
    - brand
    - version
    argTypes:
    - GF_ISOFile*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 861
      start: 842
    functionDepth: 1
    functionLinenumber: 842
    functionLinenumberEnd: 861
    functionName: gf_isom_has_segment
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_has_segment(GF_ISOFile *file, u32 *brand, u32 *version)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:869,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:870,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 877
      start: 863
    functionDepth: 1
    functionLinenumber: 863
    functionLinenumberEnd: 877
    functionName: gf_isom_segment_get_fragment_count
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_segment_get_fragment_count(GF_ISOFile *file)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:883,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:884,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - file
    - moof_index
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 891
      start: 880
    functionDepth: 1
    functionLinenumber: 880
    functionLinenumberEnd: 891
    functionName: gf_isom_get_moof
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_MovieFragmentBox
    signature: GF_MovieFragmentBox *gf_isom_get_moof(GF_ISOFile *file, u32 moof_index)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:900,1
    - Dst: gf_isom_get_moof
      Src: /src/gpac/src/isomedia/isom_read.c:901,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:902,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - file
    - moof_index
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 905
      start: 894
    functionDepth: 2
    functionLinenumber: 894
    functionLinenumberEnd: 905
    functionName: gf_isom_segment_get_track_fragment_count
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_isom_get_moof
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_segment_get_track_fragment_count(GF_ISOFile *file,
      u32 moof_index)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:914,1
    - Dst: gf_isom_get_moof
      Src: /src/gpac/src/isomedia/isom_read.c:915,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:916,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 4
    argNames:
    - file
    - moof_index
    - traf_index
    - decode_time
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 924
      start: 907
    functionDepth: 2
    functionLinenumber: 907
    functionLinenumberEnd: 924
    functionName: gf_isom_segment_get_track_fragment_decode_time
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_isom_get_moof
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_segment_get_track_fragment_decode_time(GF_ISOFile
      *file, u32 moof_index, u32 traf_index, u64 *decode_time)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:934,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:937,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 27
    argCount: 3
    argNames:
    - file
    - moof_index
    - moof_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 957
      start: 926
    functionDepth: 1
    functionLinenumber: 926
    functionLinenumberEnd: 957
    functionName: gf_isom_segment_get_fragment_size
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_segment_get_fragment_size(GF_ISOFile *file, u32 moof_index,
      u32 *moof_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 966
      start: 961
    functionDepth: 0
    functionLinenumber: 961
    functionLinenumberEnd: 966
    functionName: gf_isom_get_timescale
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_timescale(GF_ISOFile *movie)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_update_duration
      Src: /src/gpac/src/isomedia/isom_read.c:979,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 970
    functionDepth: 1
    functionLinenumber: 970
    functionLinenumberEnd: 983
    functionName: gf_isom_get_duration
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 7
    functionsReached:
    - gf_isom_update_duration
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_duration(GF_ISOFile *movie)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 990
      start: 985
    functionDepth: 0
    functionLinenumber: 985
    functionLinenumberEnd: 990
    functionName: gf_isom_get_original_duration
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_original_duration(GF_ISOFile *movie)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - movie
    - creationTime
    - modificationTime
    argTypes:
    - GF_ISOFile*
    - u64*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1001
      start: 993
    functionDepth: 0
    functionLinenumber: 993
    functionLinenumberEnd: 1001
    functionName: gf_isom_get_creation_time
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_creation_time(GF_ISOFile *movie, u64 *creationTime,
      u64 *modificationTime)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1008,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - creationTime
    - modificationTime
    argTypes:
    - GF_ISOFile*
    - u32
    - u64*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1014
      start: 1003
    functionDepth: 0
    functionLinenumber: 1003
    functionLinenumberEnd: 1014
    functionName: gf_isom_get_track_creation_time
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_track_creation_time(GF_ISOFile *movie, u32 trackNumber,
      u64 *creationTime, u64 *modificationTime)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/isomedia/isom_read.c:1040,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:1043,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1047
      start: 1017
    functionDepth: 1
    functionLinenumber: 1017
    functionLinenumberEnd: 1047
    functionName: gf_isom_is_track_in_root_od
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 3
    functionsReached:
    - gf_list_enum
    - gf_isom_get_track_id
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_is_track_in_root_od(GF_ISOFile *movie, u32 trackNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1057,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1061
      start: 1053
    functionDepth: 0
    functionLinenumber: 1053
    functionLinenumberEnd: 1061
    functionName: gf_isom_is_track_enabled
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_is_track_enabled(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1067,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1070
      start: 1063
    functionDepth: 0
    functionLinenumber: 1063
    functionLinenumberEnd: 1070
    functionName: gf_isom_get_track_flags
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_track_flags(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1079,1
    - Dst: SetTrackDurationEx
      Src: /src/gpac/src/isomedia/isom_read.c:1085,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1089
      start: 1075
    functionDepth: 5
    functionLinenumber: 1075
    functionLinenumberEnd: 1089
    functionName: gf_isom_get_track_duration
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_isom_get_track_box
    - SetTrackDurationEx
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_track_duration(GF_ISOFile *movie, u32 trackNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1095,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1098
      start: 1091
    functionDepth: 0
    functionLinenumber: 1091
    functionLinenumberEnd: 1098
    functionName: gf_isom_get_track_duration_orig
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_track_duration_orig(GF_ISOFile *movie, u32 trackNumber)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1109,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:1113,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_read.c:1114,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:1118,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:1122,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_read.c:1124,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_read.c:1130,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - lang
    argTypes:
    - GF_ISOFile*
    - u32
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1133
      start: 1099
    functionDepth: 2
    functionLinenumber: 1099
    functionLinenumberEnd: 1133
    functionName: gf_isom_get_media_language
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_strdup
    - gf_list_get
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_media_language(GF_ISOFile *the_file, u32 trackNumber,
      char **lang)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1141,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_read.c:1150,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:1153,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1154
      start: 1135
    functionDepth: 1
    functionLinenumber: 1135
    functionLinenumberEnd: 1154
    functionName: gf_isom_get_track_kind_count
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - udta_getEntry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_track_kind_count(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1170,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_read.c:1173,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:1173,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_read.c:1180,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:1183,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_read.c:1186,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_read.c:1188,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 5
    argNames:
    - the_file
    - trackNumber
    - index
    - scheme
    - value
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1191
      start: 1156
    functionDepth: 5
    functionLinenumber: 1156
    functionLinenumberEnd: 1191
    functionName: gf_isom_get_track_kind
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - trak_on_child_box
    - gf_strdup
    - gf_isom_box_new_parent
    - udta_getEntry
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_track_kind(GF_ISOFile *the_file, u32 trackNumber,
      u32 index, char **scheme, char **value)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1201,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/isom_read.c:1210,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - referenceType
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1213
      start: 1196
    functionDepth: 2
    functionLinenumber: 1196
    functionLinenumberEnd: 1213
    functionName: gf_isom_get_reference_count
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 6
    functionsReached:
    - gf_isom_get_track_box
    - Track_FindRef
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_reference_count(GF_ISOFile *movie, u32 trackNumber,
      u32 referenceType)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1223,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:1226,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1231
      start: 1218
    functionDepth: 1
    functionLinenumber: 1218
    functionLinenumberEnd: 1231
    functionName: GF_ISOTrackID *gf_isom_enum_track_references(GF_ISOFile *movie,
      u32 trackNumber, u32 idx, u32 *referenceType, u32 *referenceCount)
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ISOTrackID *gf_isom_enum_track_references(GF_ISOFile *movie,
      u32 trackNumber, u32 idx, u32 *referenceType, u32 *referenceCount)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1243,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/isom_read.c:1249,1
    - Dst: gf_isom_get_tracknum_from_id
      Src: /src/gpac/src/isomedia/isom_read.c:1259,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - referenceType
    - referenceIndex
    - refTrack
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1265
      start: 1236
    functionDepth: 2
    functionLinenumber: 1236
    functionLinenumberEnd: 1265
    functionName: gf_isom_get_reference
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 6
    functionsReached:
    - gf_isom_get_track_box
    - gf_isom_get_tracknum_from_id
    - Track_FindRef
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_reference(GF_ISOFile *movie, u32 trackNumber,
      u32 referenceType, u32 referenceIndex, u32 *refTrack)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1275,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/isom_read.c:1281,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - referenceType
    - referenceIndex
    - refTrackID
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - GF_ISOTrackID*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1290
      start: 1269
    functionDepth: 2
    functionLinenumber: 1269
    functionLinenumberEnd: 1290
    functionName: gf_isom_get_reference_ID
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - Track_FindRef
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_reference_ID(GF_ISOFile *movie, u32 trackNumber,
      u32 referenceType, u32 referenceIndex, GF_ISOTrackID *refTrackID)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1300,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/isom_read.c:1305,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - referenceType
    - refTrackID
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_ISOTrackID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1311
      start: 1294
    functionDepth: 2
    functionLinenumber: 1294
    functionLinenumberEnd: 1311
    functionName: gf_isom_has_track_reference
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - Track_FindRef
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_has_track_reference(GF_ISOFile *movie, u32 trackNumber,
      u32 referenceType, GF_ISOTrackID refTrackID)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1321,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:1323,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:1325,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/isom_read.c:1329,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - referenceType
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1336
      start: 1315
    functionDepth: 2
    functionLinenumber: 1315
    functionLinenumberEnd: 1336
    functionName: gf_isom_is_track_referenced
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    - Track_FindRef
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_is_track_referenced(GF_ISOFile *movie, u32 trackNumber,
      u32 referenceType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1347,1
    - Dst: GetMediaTime
      Src: /src/gpac/src/isomedia/isom_read.c:1351,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - movieTime
    - MediaTime
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1352
      start: 1341
    functionDepth: 1
    functionLinenumber: 1341
    functionLinenumberEnd: 1352
    functionName: gf_isom_get_media_time
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - GetMediaTime
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_media_time(GF_ISOFile *the_file, u32 trackNumber,
      u32 movieTime, u64 *MediaTime)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1362,1
    - Dst: Media_GetSampleDescIndex
      Src: /src/gpac/src/isomedia/isom_read.c:1365,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - for_time
    argTypes:
    - GF_ISOFile*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1369
      start: 1357
    functionDepth: 2
    functionLinenumber: 1357
    functionLinenumberEnd: 1369
    functionName: gf_isom_get_sample_description_index
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - Media_GetSampleDescIndex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_sample_description_index(GF_ISOFile *movie, u32
      trackNumber, u64 for_time)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1376,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:1379,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1380
      start: 1372
    functionDepth: 1
    functionLinenumber: 1372
    functionLinenumberEnd: 1380
    functionName: gf_isom_get_sample_description_count
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_sample_description_count(GF_ISOFile *the_file,
      u32 trackNumber)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_has_movie
      Src: /src/gpac/src/isomedia/isom_read.c:1388,1
    - Dst: GetESD
      Src: /src/gpac/src/isomedia/isom_read.c:1393,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/isomedia/isom_read.c:1393,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_read.c:1396,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1401
      start: 1385
    functionDepth: 6
    functionLinenumber: 1385
    functionLinenumberEnd: 1401
    functionName: gf_isom_get_esd
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 6
    functionsReached:
    - gf_isom_has_movie
    - gf_isom_get_track_id
    - GetESD
    - gf_odf_desc_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_isom_get_esd(GF_ISOFile *movie, u32 trackNumber, u32
      StreamDescriptionIndex)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1411,1
    - Dst: Media_GetESD
      Src: /src/gpac/src/isomedia/isom_read.c:1414,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_read.c:1418,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1420
      start: 1405
    functionDepth: 3
    functionLinenumber: 1405
    functionLinenumberEnd: 1420
    functionName: GF_DecoderConfig *gf_isom_get_decoder_config(GF_ISOFile *the_file,
      u32 trackNumber, u32 StreamDescriptionIndex)
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - Media_GetESD
    - gf_odf_desc_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_DecoderConfig *gf_isom_get_decoder_config(GF_ISOFile *the_file,
      u32 trackNumber, u32 StreamDescriptionIndex)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1429,1
    - Dst: Media_SetDuration
      Src: /src/gpac/src/isomedia/isom_read.c:1437,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1443
      start: 1425
    functionDepth: 4
    functionLinenumber: 1425
    functionLinenumberEnd: 1443
    functionName: gf_isom_get_media_duration
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 5
    functionsReached:
    - gf_isom_get_track_box
    - Media_SetDuration
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_media_duration(GF_ISOFile *movie, u32 trackNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1451,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1455
      start: 1447
    functionDepth: 0
    functionLinenumber: 1447
    functionLinenumberEnd: 1455
    functionName: gf_isom_get_media_original_duration
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_media_original_duration(GF_ISOFile *movie, u32
      trackNumber)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1462,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1469
      start: 1458
    functionDepth: 0
    functionLinenumber: 1458
    functionLinenumberEnd: 1469
    functionName: gf_isom_get_media_timescale
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 11
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_media_timescale(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_read.c:1477,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:1479,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 1
    argNames:
    - mov
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1480
      start: 1472
    functionDepth: 1
    functionLinenumber: 1472
    functionLinenumberEnd: 1480
    functionName: gf_isom_get_copyright_count
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - udta_getEntry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_copyright_count(GF_ISOFile *mov)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_read.c:1491,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:1494,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:1496,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 4
    argNames:
    - mov
    - Index
    - threeCharCode
    - notice
    argTypes:
    - GF_ISOFile*
    - u32
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1500
      start: 1482
    functionDepth: 1
    functionLinenumber: 1482
    functionLinenumberEnd: 1500
    functionName: gf_isom_get_copyright
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - udta_getEntry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_copyright(GF_ISOFile *mov, u32 Index, const char
      **threeCharCode, const char **notice)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_read.c:1511,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:1514,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_read.c:1517,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:1519,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 4
    argNames:
    - mov
    - UUID
    - data
    - length
    argTypes:
    - GF_ISOFile*
    - bin128
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1522
      start: 1503
    functionDepth: 1
    functionLinenumber: 1503
    functionLinenumberEnd: 1522
    functionName: gf_isom_get_watermark
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_list_get
    - gf_malloc
    - udta_getEntry
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_get_watermark(GF_ISOFile *mov, bin128 UUID, u8** data,
      u32* length)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1536,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_read.c:1543,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:1545,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:1547,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1548
      start: 1525
    functionDepth: 1
    functionLinenumber: 1525
    functionLinenumberEnd: 1548
    functionName: gf_isom_get_chapter_count
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 4
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    - udta_getEntry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_chapter_count(GF_ISOFile *movie, u32 trackNumber)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1562,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_read.c:1569,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:1571,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:1574,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - Index
    - chapter_time
    - name
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u64*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1582
      start: 1550
    functionDepth: 1
    functionLinenumber: 1550
    functionLinenumberEnd: 1582
    functionName: gf_isom_get_chapter
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 4
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - udta_getEntry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_chapter(GF_ISOFile *movie, u32 trackNumber, u32
      Index, u64 *chapter_time, const char **name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1589,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1592
      start: 1585
    functionDepth: 0
    functionLinenumber: 1585
    functionLinenumberEnd: 1592
    functionName: gf_isom_get_media_type
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 13
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_media_type(GF_ISOFile *movie, u32 trackNumber)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 1
    argNames:
    - entryType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1609
      start: 1594
    functionDepth: 0
    functionLinenumber: 1594
    functionLinenumberEnd: 1609
    functionName: IsMP4Description
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool IsMP4Description(u32 entryType)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - entryType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1621
      start: 1611
    functionDepth: 0
    functionLinenumber: 1611
    functionLinenumberEnd: 1621
    functionName: gf_isom_is_encrypted_entry
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_isom_is_encrypted_entry(u32 entryType)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1628,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:1631,1
    - Dst: gf_isom_is_encrypted_entry
      Src: /src/gpac/src/isomedia/isom_read.c:1633,1
    - Dst: gf_isom_is_cenc_media
      Src: /src/gpac/src/isomedia/isom_read.c:1635,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1641
      start: 1623
    functionDepth: 1
    functionLinenumber: 1623
    functionLinenumberEnd: 1641
    functionName: gf_isom_is_track_encrypted
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - gf_isom_is_encrypted_entry
    - gf_isom_is_cenc_media
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_is_track_encrypted(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1648,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:1650,1
    - Dst: IsMP4Description
      Src: /src/gpac/src/isomedia/isom_read.c:1654,1
    - Dst: gf_isom_is_encrypted_entry
      Src: /src/gpac/src/isomedia/isom_read.c:1655,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 22
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1668
      start: 1643
    functionDepth: 1
    functionLinenumber: 1643
    functionLinenumberEnd: 1668
    functionName: gf_isom_get_media_subtype
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 9
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - gf_isom_is_encrypted_entry
    - IsMP4Description
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_media_subtype(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1675,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:1683,1
    - Dst: IsMP4Description
      Src: /src/gpac/src/isomedia/isom_read.c:1688,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 12
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1690
      start: 1670
    functionDepth: 1
    functionLinenumber: 1670
    functionLinenumberEnd: 1690
    functionName: gf_isom_get_mpeg4_subtype
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 3
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - IsMP4Description
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_mpeg4_subtype(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1697,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - outName
    argTypes:
    - GF_ISOFile*
    - u32
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1701
      start: 1693
    functionDepth: 0
    functionLinenumber: 1693
    functionLinenumberEnd: 1701
    functionName: gf_isom_get_handler_name
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_handler_name(GF_ISOFile *the_file, u32 trackNumber,
      const char **outName)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1712,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/isom_read.c:1715,1
    - Dst: Media_CheckDataEntry
      Src: /src/gpac/src/isomedia/isom_read.c:1718,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - StreamDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1719
      start: 1704
    functionDepth: 2
    functionLinenumber: 1704
    functionLinenumberEnd: 1719
    functionName: gf_isom_check_data_reference
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - Media_CheckDataEntry
    - gf_isom_get_track_box
    - Media_GetSampleDesc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_check_data_reference(GF_ISOFile *the_file, u32 trackNumber,
      u32 StreamDescriptionIndex)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1734,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/isom_read.c:1737,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:1746,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 5
    argNames:
    - the_file
    - trackNumber
    - StreamDescriptionIndex
    - outURL
    - outURN
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1762
      start: 1722
    functionDepth: 2
    functionLinenumber: 1722
    functionLinenumberEnd: 1762
    functionName: gf_isom_get_data_reference
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - Media_GetSampleDesc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_data_reference(GF_ISOFile *the_file, u32 trackNumber,
      u32 StreamDescriptionIndex, const char **outURL, const char **outURN)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1770,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 7
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1777
      start: 1766
    functionDepth: 0
    functionLinenumber: 1766
    functionLinenumberEnd: 1777
    functionName: gf_isom_get_sample_count
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 23
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_sample_count(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1783,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 5
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1786
      start: 1779
    functionDepth: 0
    functionLinenumber: 1779
    functionLinenumberEnd: 1786
    functionName: gf_isom_get_constant_sample_size
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_constant_sample_size(GF_ISOFile *the_file, u32
      trackNumber)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1792,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 7
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1796
      start: 1788
    functionDepth: 0
    functionLinenumber: 1788
    functionLinenumberEnd: 1796
    functionName: gf_isom_get_constant_sample_duration
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_constant_sample_duration(GF_ISOFile *the_file,
      u32 trackNumber)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1805,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:1822,1
    - Dst: gf_audio_fmt_from_isobmf
      Src: /src/gpac/src/isomedia/isom_read.c:1828,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/isomedia/isom_read.c:1829,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_read.c:1847,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/isom_read.c:1849,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 47
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - pack_num_samples
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1857
      start: 1798
    functionDepth: 1
    functionLinenumber: 1798
    functionLinenumberEnd: 1857
    functionName: gf_isom_enable_raw_pack
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_4cc_to_str
    - gf_list_get
    - GF_LOG
    - gf_audio_fmt_from_isobmf
    - gf_isom_get_track_box
    - gf_audio_fmt_bit_depth
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_enable_raw_pack(GF_ISOFile *the_file, u32 trackNumber,
      u32 pack_num_samples)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1862,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1865
      start: 1859
    functionDepth: 0
    functionLinenumber: 1859
    functionLinenumberEnd: 1865
    functionName: gf_isom_has_time_offset_table
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: Bool
    signature: Bool gf_isom_has_time_offset_table(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1873,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1882
      start: 1867
    functionDepth: 0
    functionLinenumber: 1867
    functionLinenumberEnd: 1882
    functionName: gf_isom_has_time_offset
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_has_time_offset(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1888,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1891
      start: 1884
    functionDepth: 0
    functionLinenumber: 1884
    functionLinenumberEnd: 1891
    functionName: gf_isom_get_cts_to_dts_shift
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_cts_to_dts_shift(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1896,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:1899,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1901
      start: 1893
    functionDepth: 1
    functionLinenumber: 1893
    functionLinenumberEnd: 1901
    functionName: gf_isom_has_sync_shadows
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_has_sync_shadows(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1906,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1910
      start: 1903
    functionDepth: 0
    functionLinenumber: 1903
    functionLinenumberEnd: 1910
    functionName: gf_isom_has_sample_dependency
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_has_sample_dependency(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1920,1
    - Dst: stbl_GetSampleDepType
      Src: /src/gpac/src/isomedia/isom_read.c:1930,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 7
    argNames:
    - the_file
    - trackNumber
    - sampleNumber
    - isLeading
    - dependsOn
    - dependedOn
    - redundant
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1931
      start: 1912
    functionDepth: 1
    functionLinenumber: 1912
    functionLinenumberEnd: 1931
    functionName: gf_isom_get_sample_flags
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - stbl_GetSampleDepType
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_sample_flags(GF_ISOFile *the_file, u32 trackNumber,
      u32 sampleNumber, u32 *isLeading, u32 *dependsOn, u32 *dependedOn, u32 *redundant)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1944,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/isomedia/isom_read.c:1956,1
    - Dst: Media_GetSample
      Src: /src/gpac/src/isomedia/isom_read.c:1966,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_read.c:1971,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/isom_read.c:1972,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1981
      start: 1936
    functionDepth: 3
    functionLinenumber: 1936
    functionLinenumberEnd: 1981
    functionName: GF_ISOSample *gf_isom_get_sample_ex(GF_ISOFile *the_file, u32 trackNumber,
      u32 sampleNumber, u32 *sampleDescriptionIndex, GF_ISOSample *static_sample,
      u64 *data_offset)
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_del
    - gf_isom_set_last_error
    - gf_isom_sample_new
    - gf_isom_get_track_box
    - Media_GetSample
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ISOSample *gf_isom_get_sample_ex(GF_ISOFile *the_file,
      u32 trackNumber, u32 sampleNumber, u32 *sampleDescriptionIndex, GF_ISOSample
      *static_sample, u64 *data_offset)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_sample_ex
      Src: /src/gpac/src/isomedia/isom_read.c:1986,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1987
      start: 1983
    functionDepth: 0
    functionLinenumber: 1983
    functionLinenumberEnd: 1987
    functionName: GF_ISOSample *gf_isom_get_sample(GF_ISOFile *the_file, u32 trackNumber,
      u32 sampleNumber, u32 *sampleDescriptionIndex)
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_sample_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ISOSample *gf_isom_get_sample(GF_ISOFile *the_file, u32
      trackNumber, u32 sampleNumber, u32 *sampleDescriptionIndex)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1994,1
    - Dst: stbl_GetSampleDTS_and_Duration
      Src: /src/gpac/src/isomedia/isom_read.c:2001,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleNumber
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2003
      start: 1989
    functionDepth: 1
    functionLinenumber: 1989
    functionLinenumberEnd: 2003
    functionName: gf_isom_get_sample_duration
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_isom_get_track_box
    - stbl_GetSampleDTS_and_Duration
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_sample_duration(GF_ISOFile *the_file, u32 trackNumber,
      u32 sampleNumber)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2010,1
    - Dst: stbl_GetSampleSize
      Src: /src/gpac/src/isomedia/isom_read.c:2016,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleNumber
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2018
      start: 2006
    functionDepth: 1
    functionLinenumber: 2006
    functionLinenumberEnd: 2018
    functionName: gf_isom_get_sample_size
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_isom_get_track_box
    - stbl_GetSampleSize
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_sample_size(GF_ISOFile *the_file, u32 trackNumber,
      u32 sampleNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2023,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 4
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2027
      start: 2020
    functionDepth: 0
    functionLinenumber: 2020
    functionLinenumberEnd: 2027
    functionName: gf_isom_get_max_sample_size
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_max_sample_size(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2032,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 8
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2040
      start: 2029
    functionDepth: 0
    functionLinenumber: 2029
    functionLinenumberEnd: 2040
    functionName: gf_isom_get_avg_sample_size
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_avg_sample_size(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2045,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 4
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2049
      start: 2042
    functionDepth: 0
    functionLinenumber: 2042
    functionLinenumberEnd: 2049
    functionName: gf_isom_get_max_sample_delta
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_max_sample_delta(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2054,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 10
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2066
      start: 2051
    functionDepth: 0
    functionLinenumber: 2051
    functionLinenumberEnd: 2066
    functionName: gf_isom_get_avg_sample_delta
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_avg_sample_delta(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2072,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 4
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2076
      start: 2069
    functionDepth: 0
    functionLinenumber: 2069
    functionLinenumberEnd: 2076
    functionName: gf_isom_get_max_sample_cts_offset
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_max_sample_cts_offset(GF_ISOFile *the_file, u32
      trackNumber)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2084,1
    - Dst: stbl_GetSampleRAP
      Src: /src/gpac/src/isomedia/isom_read.c:2092,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleNumber
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2095
      start: 2079
    functionDepth: 1
    functionLinenumber: 2079
    functionLinenumberEnd: 2095
    functionName: gf_isom_get_sample_sync
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - stbl_GetSampleRAP
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_sample_sync(GF_ISOFile *the_file, u32 trackNumber,
      u32 sampleNumber)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2104,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/isomedia/isom_read.c:2115,1
    - Dst: Media_GetSample
      Src: /src/gpac/src/isomedia/isom_read.c:2119,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_read.c:2121,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/isom_read.c:2123,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2130
      start: 2098
    functionDepth: 3
    functionLinenumber: 2098
    functionLinenumberEnd: 2130
    functionName: GF_ISOSample *gf_isom_get_sample_info_ex(GF_ISOFile *the_file, u32
      trackNumber, u32 sampleNumber, u32 *sampleDescriptionIndex, u64 *data_offset,
      GF_ISOSample *static_sample)
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_del
    - gf_isom_set_last_error
    - gf_isom_sample_new
    - gf_isom_get_track_box
    - Media_GetSample
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ISOSample *gf_isom_get_sample_info_ex(GF_ISOFile *the_file,
      u32 trackNumber, u32 sampleNumber, u32 *sampleDescriptionIndex, u64 *data_offset,
      GF_ISOSample *static_sample)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_sample_info_ex
      Src: /src/gpac/src/isomedia/isom_read.c:2135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2136
      start: 2132
    functionDepth: 0
    functionLinenumber: 2132
    functionLinenumberEnd: 2136
    functionName: GF_ISOSample *gf_isom_get_sample_info(GF_ISOFile *the_file, u32
      trackNumber, u32 sampleNumber, u32 *sampleDescriptionIndex, u64 *data_offset)
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_sample_info_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ISOSample *gf_isom_get_sample_info(GF_ISOFile *the_file,
      u32 trackNumber, u32 sampleNumber, u32 *sampleDescriptionIndex, u64 *data_offset)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2145,1
    - Dst: stbl_GetSampleDTS
      Src: /src/gpac/src/isomedia/isom_read.c:2153,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleNumber
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2155
      start: 2140
    functionDepth: 1
    functionLinenumber: 2140
    functionLinenumberEnd: 2155
    functionName: gf_isom_get_sample_dts
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_isom_get_track_box
    - stbl_GetSampleDTS
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_sample_dts(GF_ISOFile *the_file, u32 trackNumber,
      u32 sampleNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2161,1
    - Dst: Media_IsSelfContained
      Src: /src/gpac/src/isomedia/isom_read.c:2163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2164
      start: 2157
    functionDepth: 3
    functionLinenumber: 2157
    functionLinenumberEnd: 2164
    functionName: gf_isom_is_self_contained
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_isom_get_track_box
    - Media_IsSelfContained
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_is_self_contained(GF_ISOFile *the_file, u32 trackNumber,
      u32 sampleDescriptionIndex)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2175,1
    - Dst: stbl_findEntryForTime
      Src: /src/gpac/src/isomedia/isom_read.c:2180,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - dts
    argTypes:
    - GF_ISOFile*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2183
      start: 2167
    functionDepth: 1
    functionLinenumber: 2167
    functionLinenumberEnd: 2183
    functionName: gf_isom_get_sample_from_dts
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - stbl_findEntryForTime
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_sample_from_dts(GF_ISOFile *the_file, u32 trackNumber,
      u64 dts)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2204,1
    - Dst: stbl_findEntryForTime
      Src: /src/gpac/src/isomedia/isom_read.c:2217,1
    - Dst: Media_FindSyncSample
      Src: /src/gpac/src/isomedia/isom_read.c:2275,1
    - Dst: Media_FindSyncSample
      Src: /src/gpac/src/isomedia/isom_read.c:2285,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/isomedia/isom_read.c:2299,1
    - Dst: stbl_GetSampleShadow
      Src: /src/gpac/src/isomedia/isom_read.c:2307,1
    - Dst: Media_GetSample
      Src: /src/gpac/src/isomedia/isom_read.c:2319,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/isom_read.c:2322,1
    - Dst: gf_isom_get_sample_rap_roll_info
      Src: /src/gpac/src/isomedia/isom_read.c:2331,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/isomedia/isom_read.c:2347,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:2351,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/isom_read.c:2356,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 122
    argCount: 8
    argNames:
    - the_file
    - trackNumber
    - desiredTime
    - StreamDescriptionIndex
    - SearchMode
    - sample
    - SampleNum
    - data_offset
    argTypes:
    - GF_ISOFile*
    - u32
    - u64
    - u32*
    - GF_ISOSearchMode
    - GF_ISOSample**
    - u32*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2362
      start: 2191
    functionDepth: 3
    functionLinenumber: 2191
    functionLinenumberEnd: 2362
    functionName: gf_isom_get_sample_for_media_time
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_free
    - stbl_GetSampleShadow
    - gf_isom_sample_del
    - gf_isom_get_sample
    - stbl_findEntryForTime
    - gf_isom_sample_new
    - gf_isom_get_sample_rap_roll_info
    - gf_isom_get_track_box
    - Media_GetSample
    - Media_FindSyncSample
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_sample_for_media_time(GF_ISOFile *the_file, u32
      trackNumber, u64 desiredTime, u32 *StreamDescriptionIndex, GF_ISOSearchMode
      SearchMode, GF_ISOSample **sample, u32 *SampleNum, u64 *data_offset)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2375,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/isomedia/isom_read.c:2381,1
    - Dst: GetMediaTime
      Src: /src/gpac/src/isomedia/isom_read.c:2393,1
    - Dst: GetNextMediaTime
      Src: /src/gpac/src/isomedia/isom_read.c:2401,1
    - Dst: GetPrevMediaTime
      Src: /src/gpac/src/isomedia/isom_read.c:2403,1
    - Dst: gf_isom_get_sample_for_movie_time
      Src: /src/gpac/src/isomedia/isom_read.c:2405,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/isomedia/isom_read.c:2410,1
    - Dst: GetNextMediaTime
      Src: /src/gpac/src/isomedia/isom_read.c:2425,1
    - Dst: GetPrevMediaTime
      Src: /src/gpac/src/isomedia/isom_read.c:2427,1
    - Dst: gf_isom_get_sample_for_movie_time
      Src: /src/gpac/src/isomedia/isom_read.c:2429,1
    - Dst: gf_isom_get_sample_for_media_time
      Src: /src/gpac/src/isomedia/isom_read.c:2437,1
    - Dst: gf_isom_get_sample_for_movie_time
      Src: /src/gpac/src/isomedia/isom_read.c:2448,1
    - Dst: gf_isom_get_sample_for_movie_time
      Src: /src/gpac/src/isomedia/isom_read.c:2451,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 79
    argCount: 8
    argNames:
    - the_file
    - trackNumber
    - movieTime
    - StreamDescriptionIndex
    - SearchMode
    - sample
    - sampleNumber
    - data_offset
    argTypes:
    - GF_ISOFile*
    - u32
    - u64
    - u32*
    - GF_ISOSearchMode
    - GF_ISOSample**
    - u32*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2477
      start: 2364
    functionDepth: 4
    functionLinenumber: 2364
    functionLinenumberEnd: 2477
    functionName: gf_isom_get_sample_for_movie_time
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_sample_for_media_time
    - GetNextMediaTime
    - gf_timestamp_greater
    - GetMediaTime
    - gf_isom_sample_new
    - GetPrevMediaTime
    - gf_isom_get_track_box
    - gf_isom_get_sample_for_movie_time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_sample_for_movie_time(GF_ISOFile *the_file, u32
      trackNumber, u64 movieTime, u32 *StreamDescriptionIndex, GF_ISOSearchMode SearchMode,
      GF_ISOSample **sample, u32 *sampleNumber, u64 *data_offset)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2485,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2489
      start: 2481
    functionDepth: 0
    functionLinenumber: 2481
    functionLinenumberEnd: 2489
    functionName: gf_isom_get_missing_bytes
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_missing_bytes(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2495,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - padding_bytes
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2500
      start: 2491
    functionDepth: 0
    functionLinenumber: 2491
    functionLinenumberEnd: 2500
    functionName: gf_isom_set_sample_padding
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_sample_padding(GF_ISOFile *the_file, u32 trackNumber,
      u32 padding_bytes)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2509,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:2514,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:2515,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:2530,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - mediaOffset
    argTypes:
    - GF_ISOFile*
    - u32
    - s64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2542
      start: 2503
    functionDepth: 1
    functionLinenumber: 2503
    functionLinenumberEnd: 2542
    functionName: gf_isom_get_edit_list_type
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_edit_list_type(GF_ISOFile *the_file, u32 trackNumber,
      s64 *mediaOffset)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2550,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:2554,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2555
      start: 2546
    functionDepth: 1
    functionLinenumber: 2546
    functionLinenumberEnd: 2555
    functionName: gf_isom_get_edits_count
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_edits_count(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2569,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:2574,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:2582,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 7
    argNames:
    - the_file
    - trackNumber
    - SegmentIndex
    - EditTime
    - SegmentDuration
    - MediaTime
    - EditMode
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u64*
    - u64*
    - u64*
    - GF_ISOEditType*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2600
      start: 2559
    functionDepth: 1
    functionLinenumber: 2559
    functionLinenumberEnd: 2600
    functionName: gf_isom_get_edit
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_edit(GF_ISOFile *the_file, u32 trackNumber, u32
      SegmentIndex, u64 *EditTime, u64 *SegmentDuration, u64 *MediaTime, GF_ISOEditType
      *EditMode)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2607,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2614
      start: 2602
    functionDepth: 0
    functionLinenumber: 2602
    functionLinenumberEnd: 2614
    functionName: gf_isom_has_sync_points
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_has_sync_points(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2621,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2627
      start: 2617
    functionDepth: 0
    functionLinenumber: 2617
    functionLinenumberEnd: 2627
    functionName: gf_isom_get_sync_point_count
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_sync_point_count(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 4
    argNames:
    - movie
    - brand
    - minorVersion
    - AlternateBrandsCount
    argTypes:
    - GF_ISOFile*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2645
      start: 2630
    functionDepth: 0
    functionLinenumber: 2630
    functionLinenumberEnd: 2645
    functionName: gf_isom_get_brand_info
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_brand_info(GF_ISOFile *movie, u32 *brand, u32
      *minorVersion, u32 *AlternateBrandsCount)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 7
    argCount: 3
    argNames:
    - movie
    - BrandIndex
    - brand
    argTypes:
    - GF_ISOFile*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2654
      start: 2647
    functionDepth: 0
    functionLinenumber: 2647
    functionLinenumberEnd: 2654
    functionName: gf_isom_get_alternate_brand
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_alternate_brand(GF_ISOFile *movie, u32 BrandIndex,
      u32 *brand)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2661
      start: 2656
    functionDepth: 0
    functionLinenumber: 2656
    functionLinenumberEnd: 2661
    functionName: gf_isom_get_brands
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_isom_get_brands(GF_ISOFile *movie)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2668,1
    - Dst: stbl_GetPaddingBits
      Src: /src/gpac/src/isomedia/isom_read.c:2673,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - sampleNumber
    - NbBits
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2676
      start: 2663
    functionDepth: 1
    functionLinenumber: 2663
    functionLinenumberEnd: 2676
    functionName: gf_isom_get_sample_padding_bits
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - stbl_GetPaddingBits
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_sample_padding_bits(GF_ISOFile *the_file, u32
      trackNumber, u32 sampleNumber, u8 *NbBits)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2684,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2689
      start: 2679
    functionDepth: 0
    functionLinenumber: 2679
    functionLinenumberEnd: 2689
    functionName: gf_isom_has_padding_bits
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_has_padding_bits(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2699,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:2706,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2708
      start: 2691
    functionDepth: 1
    functionLinenumber: 2691
    functionLinenumberEnd: 2708
    functionName: gf_isom_get_udta_count
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_udta_count(GF_ISOFile *movie, u32 trackNumber)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2719,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:2727,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:2728,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:2730,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 23
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - udta_idx
    - UserDataType
    - UUID
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - bin128*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2732
      start: 2710
    functionDepth: 1
    functionLinenumber: 2710
    functionLinenumberEnd: 2732
    functionName: gf_isom_get_udta_type
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    - memcpy
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_udta_type(GF_ISOFile *movie, u32 trackNumber,
      u32 udta_idx, u32 *UserDataType, bin128 *UUID)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_read.c:2746,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2749,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:2759,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:2760,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_read.c:2762,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 27
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - UserDataType
    - UUID
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - bin128
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2766
      start: 2734
    functionDepth: 1
    functionLinenumber: 2734
    functionLinenumberEnd: 2766
    functionName: gf_isom_get_user_data_count
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - memcmp
    - gf_list_count
    - memset
    - gf_isom_get_track_box
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_user_data_count(GF_ISOFile *movie, u32 trackNumber,
      u32 UserDataType, bin128 UUID)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2782,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_read.c:2792,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:2797,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_read.c:2798,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:2806,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:2807,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_read.c:2815,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:2817,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_read.c:2827,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:2829,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_read.c:2843,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_read.c:2844,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:2846,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_read.c:2855,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:2857,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_read.c:2871,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_read.c:2873,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_read.c:2880,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_read.c:2881,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_read.c:2882,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_read.c:2884,1
    - Dst: gf_isom_box_array_write
      Src: /src/gpac/src/isomedia/isom_read.c:2887,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_read.c:2889,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_read.c:2893,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:2894,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 116
    argCount: 7
    argNames:
    - movie
    - trackNumber
    - UserDataType
    - UUID
    - UserDataIndex
    - userData
    - userDataSize
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - bin128
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2896
      start: 2768
    functionDepth: 3
    functionLinenumber: 2768
    functionLinenumberEnd: 2896
    functionName: gf_isom_get_user_data
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_list_get
    - memcmp
    - gf_bs_new
    - memcpy
    - GF_LOG
    - gf_bs_get_content
    - strlen
    - gf_isom_box_write
    - gf_isom_box_array_write
    - gf_bs_write_u32
    - gf_list_count
    - memset
    - gf_bs_write_data
    - gf_bs_del
    - gf_isom_get_track_box
    - gf_list_enum
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_user_data(GF_ISOFile *movie, u32 trackNumber,
      u32 UserDataType, bin128 UUID, u32 UserDataIndex, u8 **userData, u32 *userDataSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_read.c:2902,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2903
      start: 2898
    functionDepth: 1
    functionLinenumber: 2898
    functionLinenumberEnd: 2903
    functionName: gf_isom_delete
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 14
    functionsReached:
    - gf_isom_delete_movie
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_delete(GF_ISOFile *movie)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2914,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_read.c:2929,1
    - Dst: stbl_GetSampleDTS_and_Duration
      Src: /src/gpac/src/isomedia/isom_read.c:2939,1
    - Dst: stbl_GetSampleSize
      Src: /src/gpac/src/isomedia/isom_read.c:2941,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 63
    argCount: 8
    argNames:
    - movie
    - trackNumber
    - dur_min
    - dur_avg
    - dur_max
    - size_min
    - size_avg
    - size_max
    argTypes:
    - GF_ISOFile*
    - u32
    - u32*
    - u32*
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2971
      start: 2905
    functionDepth: 1
    functionLinenumber: 2905
    functionLinenumberEnd: 2971
    functionName: gf_isom_get_chunks_infos
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - stbl_GetSampleDTS_and_Duration
    - GF_LOG
    - stbl_GetSampleSize
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_chunks_infos(GF_ISOFile *movie, u32 trackNumber,
      u32 *dur_min, u32 *dur_avg, u32 *dur_max, u32 *size_min, u32 *size_avg, u32
      *size_max)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2985,1
    - Dst: GetTrex
      Src: /src/gpac/src/isomedia/isom_read.c:2990,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/isomedia/isom_read.c:2990,1
    - Dst: GF_ISOM_GET_FRAG_SYNC
      Src: /src/gpac/src/isomedia/isom_read.c:2997,1
    - Dst: GF_ISOM_GET_FRAG_PAD
      Src: /src/gpac/src/isomedia/isom_read.c:2998,1
    - Dst: GF_ISOM_GET_FRAG_DEG
      Src: /src/gpac/src/isomedia/isom_read.c:2999,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 91
    argCount: 8
    argNames:
    - the_file
    - trackNumber
    - defaultDuration
    - defaultSize
    - defaultDescriptionIndex
    - defaultRandomAccess
    - defaultPadding
    - defaultDegradationPriority
    argTypes:
    - GF_ISOFile*
    - u32
    - u32*
    - u32*
    - u32*
    - u32*
    - u8*
    - u16*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3084
      start: 2973
    functionDepth: 1
    functionLinenumber: 2973
    functionLinenumberEnd: 3084
    functionName: gf_isom_get_fragment_defaults
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - GF_ISOM_GET_FRAG_DEG
    - GF_ISOM_GET_FRAG_PAD
    - GF_ISOM_GET_FRAG_SYNC
    - GetTrex
    - gf_isom_get_track_id
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_get_fragment_defaults(GF_ISOFile *the_file, u32
      trackNumber,\n                                     u32 *defaultDuration, u32
      *defaultSize, u32 *defaultDescriptionIndex,\n                                     u32
      *defaultRandomAccess, u8 *defaultPadding, u16 *defaultDegradationPriority)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/isomedia/isom_read.c:3099,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_read.c:3106,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3113,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3114,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/isom_read.c:3125,1
    - Dst: gf_bs_get_refreshed_size
      Src: /src/gpac/src/isomedia/isom_read.c:3130,1
    - Dst: gf_isom_parse_movie_boxes
      Src: /src/gpac/src/isomedia/isom_read.c:3138,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 35
    argCount: 3
    argNames:
    - movie
    - MissingBytes
    - new_location
    argTypes:
    - GF_ISOFile*
    - u64*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3140
      start: 3087
    functionDepth: 1
    functionLinenumber: 3087
    functionLinenumberEnd: 3140
    functionName: gf_isom_refresh_fragmented
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_list_get
    - gf_isom_parse_movie_boxes
    - gf_bs_get_size
    - gf_list_count
    - gf_isom_datamap_del
    - gf_isom_datamap_new
    - gf_bs_get_refreshed_size
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_refresh_fragmented(GF_ISOFile *movie, u64 *MissingBytes,
      const char *new_location)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - movie
    - mode
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3147
      start: 3143
    functionDepth: 0
    functionLinenumber: 3143
    functionLinenumberEnd: 3147
    functionName: gf_isom_set_single_moof_mode
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_single_moof_mode(GF_ISOFile *movie, Bool mode)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3162,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3164,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 2
    argNames:
    - movie
    - top_box_start
    argTypes:
    - GF_ISOFile*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3170
      start: 3150
    functionDepth: 1
    functionLinenumber: 3150
    functionLinenumberEnd: 3170
    functionName: gf_isom_reset_data_offset
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_reset_data_offset(GF_ISOFile *movie, u64 *top_box_start)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - movie
    - current_top_box_offset
    argTypes:
    - GF_ISOFile*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3182
      start: 3172
    functionDepth: 0
    functionLinenumber: 3172
    functionLinenumberEnd: 3182
    functionName: gf_isom_get_current_top_box_offset
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_current_top_box_offset(GF_ISOFile *movie, u64
      *current_top_box_offset)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - movie
    - bytes_removed
    argTypes:
    - GF_ISOFile*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3190
      start: 3184
    functionDepth: 0
    functionLinenumber: 3184
    functionLinenumberEnd: 3190
    functionName: gf_isom_set_removed_bytes
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_removed_bytes(GF_ISOFile *movie, u64 bytes_removed)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:3200,1
    - Dst: GetTrex
      Src: /src/gpac/src/isomedia/isom_read.c:3205,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/isomedia/isom_read.c:3205,1
    - Dst: stbl_UnpackOffsets
      Src: /src/gpac/src/isomedia/isom_read.c:3209,1
    - Dst: stbl_unpackCTS
      Src: /src/gpac/src/isomedia/isom_read.c:3211,1
    - Dst: stbl_RemoveDTS
      Src: /src/gpac/src/isomedia/isom_read.c:3221,1
    - Dst: stbl_RemoveCTS
      Src: /src/gpac/src/isomedia/isom_read.c:3222,1
    - Dst: stbl_RemoveSize
      Src: /src/gpac/src/isomedia/isom_read.c:3223,1
    - Dst: stbl_RemoveChunk
      Src: /src/gpac/src/isomedia/isom_read.c:3224,1
    - Dst: stbl_RemoveRedundant
      Src: /src/gpac/src/isomedia/isom_read.c:3225,1
    - Dst: stbl_RemoveRAPs
      Src: /src/gpac/src/isomedia/isom_read.c:3226,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/isom_read.c:3235,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/isom_read.c:3247,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:3258,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/isom_read.c:3259,1
    - Dst: stbl_RemoveShadow
      Src: /src/gpac/src/isomedia/isom_read.c:3275,1
    - Dst: stbl_RemoveSubSample
      Src: /src/gpac/src/isomedia/isom_read.c:3276,1
    - Dst: stbl_RemovePaddingBits
      Src: /src/gpac/src/isomedia/isom_read.c:3277,1
    - Dst: stbl_RemoveSampleGroup
      Src: /src/gpac/src/isomedia/isom_read.c:3278,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/isom_read.c:3280,1
    - Dst: gf_isom_cenc_samp_aux_info_del
      Src: /src/gpac/src/isomedia/isom_read.c:3281,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/isom_read.c:3284,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:3285,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:3286,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 75
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - nb_samples
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3294
      start: 3192
    functionDepth: 1
    functionLinenumber: 3192
    functionLinenumberEnd: 3294
    functionName: gf_isom_purge_samples
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_free
    - stbl_RemovePaddingBits
    - gf_isom_get_track_id
    - stbl_RemoveRAPs
    - stbl_RemoveSampleGroup
    - gf_isom_cenc_samp_aux_info_del
    - stbl_RemoveSize
    - stbl_RemoveChunk
    - stbl_RemoveRedundant
    - memmove
    - stbl_RemoveSubSample
    - gf_isom_get_track_box
    - stbl_RemoveDTS
    - stbl_UnpackOffsets
    - stbl_RemoveShadow
    - stbl_RemoveCTS
    - gf_list_pop_front
    - stbl_unpackCTS
    - GetTrex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_purge_samples(GF_ISOFile *the_file, u32 trackNumber,
      u32 nb_samples)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_read.c:3350,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:3351,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_read.c:3367,1
    - Dst: gf_isom_box_array_del_parent
      Src: /src/gpac/src/isomedia/isom_read.c:3371,1
    - Dst: gf_isom_box_array_del_parent
      Src: /src/gpac/src/isomedia/isom_read.c:3374,1
    - Dst: gf_isom_box_array_del_parent
      Src: /src/gpac/src/isomedia/isom_read.c:3377,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_read.c:3382,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_read.c:3384,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:3389,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_read.c:3390,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_read.c:3392,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:3398,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_read.c:3400,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 83
    argCount: 1
    argNames:
    - trak
    argTypes:
    - GF_TrackBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3403
      start: 3298
    functionDepth: 5
    functionLinenumber: 3298
    functionLinenumberEnd: 3403
    functionName: gf_isom_recreate_tables
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_box_del_parent
    - gf_isom_box_array_del_parent
    - gf_isom_box_new_parent
    - memset
    - gf_list_del_item
    - gf_list_enum
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_isom_recreate_tables(GF_TrackBox *trak)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3413,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3414,1
    - Dst: stbl_GetSampleDTS_and_Duration
      Src: /src/gpac/src/isomedia/isom_read.c:3423,1
    - Dst: gf_isom_recreate_tables
      Src: /src/gpac/src/isomedia/isom_read.c:3430,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:3434,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_read.c:3435,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 2
    argNames:
    - movie
    - reset_sample_count
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3456
      start: 3406
    functionDepth: 6
    functionLinenumber: 3406
    functionLinenumberEnd: 3456
    functionName: gf_isom_reset_tables
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_isom_recreate_tables
    - gf_list_count
    - gf_list_enum
    - stbl_GetSampleDTS_and_Duration
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_reset_tables(GF_ISOFile *movie, Bool reset_sample_count)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_needs_layer_reconstruction
      Src: /src/gpac/src/isomedia/isom_read.c:3466,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3469,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3470,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/isom_read.c:3481,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/isomedia/isom_read.c:3496,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:3498,1
    - Dst: stbl_GetSampleDTS_and_Duration
      Src: /src/gpac/src/isomedia/isom_read.c:3515,1
    - Dst: gf_isom_recreate_tables
      Src: /src/gpac/src/isomedia/isom_read.c:3521,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:3526,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_read.c:3527,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:3536,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_read.c:3540,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/isom_read.c:3549,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 66
    argCount: 2
    argNames:
    - movie
    - reset_tables
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3554
      start: 3458
    functionDepth: 6
    functionLinenumber: 3458
    functionLinenumberEnd: 3554
    functionName: gf_isom_release_segment
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_isom_recreate_tables
    - gf_isom_get_reference
    - gf_isom_needs_layer_reconstruction
    - gf_list_count
    - gf_isom_datamap_del
    - gf_isom_get_track_box
    - gf_list_enum
    - stbl_GetSampleDTS_and_Duration
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_release_segment(GF_ISOFile *movie, Bool reset_tables)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_read.c:3576,1
    - Dst: gf_isom_release_segment
      Src: /src/gpac/src/isomedia/isom_read.c:3583,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_read.c:3585,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_read.c:3593,1
    - Dst: gf_bs_truncate
      Src: /src/gpac/src/isomedia/isom_read.c:3594,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_read.c:3596,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3600,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3601,1
    - Dst: gf_isom_parse_movie_boxes
      Src: /src/gpac/src/isomedia/isom_read.c:3615,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3620,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3621,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 56
    argCount: 5
    argNames:
    - movie
    - fileName
    - start_range
    - end_range
    - flags
    argTypes:
    - GF_ISOFile*
    - char*
    - u64
    - u64
    - GF_ISOSegOpenMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3637
      start: 3556
    functionDepth: 7
    functionLinenumber: 3556
    functionLinenumberEnd: 3637
    functionName: gf_isom_open_segment
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 3
    functionsReached:
    - gf_list_get
    - gf_isom_release_segment
    - gf_bs_seek
    - gf_isom_parse_movie_boxes
    - gf_bs_truncate
    - gf_list_count
    - gf_isom_datamap_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_open_segment(GF_ISOFile *movie, const char *fileName,
      u64 start_range, u64 end_range, GF_ISOSegOpenMode flags)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3651,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3654,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/isomedia/isom_read.c:3657,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/isomedia/isom_read.c:3660,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/isomedia/isom_read.c:3664,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/isomedia/isom_read.c:3675,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 31
    argCount: 2
    argNames:
    - movie
    - for_base_track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3684
      start: 3639
    functionDepth: 3
    functionLinenumber: 3639
    functionLinenumberEnd: 3684
    functionName: GF_ISOTrackID::gf_isom_get_highest_track_in_scalable_segment
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_get_media_subtype
    - gf_isom_get_reference
    - gf_isom_get_reference_count
    - gf_list_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ISOTrackID gf_isom_get_highest_track_in_scalable_segment(GF_ISOFile
      *movie, u32 for_base_track)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - movie
    - do_convert
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3693
      start: 3687
    functionDepth: 0
    functionLinenumber: 3687
    functionLinenumberEnd: 3693
    functionName: gf_isom_text_set_streaming_mode
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_text_set_streaming_mode(GF_ISOFile *movie, Bool do_convert)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:3700,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_read.c:3705,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:3708,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 2
    argNames:
    - udesc
    - child_boxes
    argTypes:
    - GF_GenericSampleDescription*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3711
      start: 3695
    functionDepth: 1
    functionLinenumber: 3695
    functionLinenumberEnd: 3711
    functionName: gf_isom_gen_desc_get_dsi
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_list_enum
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void gf_isom_gen_desc_get_dsi(GF_GenericSampleDescription *udesc, GF_List
      *child_boxes)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:3721,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3724,1
    - Dst: IsMP4Description
      Src: /src/gpac/src/isomedia/isom_read.c:3726,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_read.c:3737,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:3740,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/isom_read.c:3753,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_read.c:3758,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:3760,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:3763,1
    - Dst: gf_isom_gen_desc_get_dsi
      Src: /src/gpac/src/isomedia/isom_read.c:3765,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_read.c:3770,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:3773,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_read.c:3785,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:3787,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:3790,1
    - Dst: gf_isom_gen_desc_get_dsi
      Src: /src/gpac/src/isomedia/isom_read.c:3792,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_read.c:3797,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:3800,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_read.c:3806,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:3808,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:3811,1
    - Dst: gf_isom_gen_desc_get_dsi
      Src: /src/gpac/src/isomedia/isom_read.c:3813,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 100
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3818
      start: 3713
    functionDepth: 2
    functionLinenumber: 3713
    functionLinenumberEnd: 3818
    functionName: GF_GenericSampleDescription *gf_isom_get_generic_sample_description(GF_ISOFile
      *movie, u32 trackNumber, u32 StreamDescriptionIndex)
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - GF_SAFEALLOC
    - memcpy
    - strcpy
    - gf_isom_gen_desc_get_dsi
    - IsMP4Description
    - gf_isom_get_track_box
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_GenericSampleDescription *gf_isom_get_generic_sample_description(GF_ISOFile
      *movie, u32 trackNumber, u32 StreamDescriptionIndex)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:3827,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3832,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3834,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - Width
    - Height
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3849
      start: 3820
    functionDepth: 1
    functionLinenumber: 3820
    functionLinenumberEnd: 3849
    functionName: gf_isom_get_visual_info
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_visual_info(GF_ISOFile *movie, u32 trackNumber,
      u32 StreamDescriptionIndex, u32 *Width, u32 *Height)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:3858,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3863,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3865,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - bitDepth
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u16*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3877
      start: 3851
    functionDepth: 1
    functionLinenumber: 3851
    functionLinenumberEnd: 3877
    functionName: gf_isom_get_visual_bit_depth
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_visual_bit_depth(GF_ISOFile* movie, u32 trackNumber,
      u32 StreamDescriptionIndex, u16* bitDepth)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:3886,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3892,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3894,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:3909,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 30
    argCount: 6
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - SampleRate
    - Channels
    - bitsPerSample
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3916
      start: 3879
    functionDepth: 2
    functionLinenumber: 3879
    functionLinenumberEnd: 3916
    functionName: gf_isom_get_audio_info
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_audio_info(GF_ISOFile *movie, u32 trackNumber,
      u32 StreamDescriptionIndex, u32 *SampleRate, u32 *Channels, u32 *bitsPerSample)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:3926,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_read.c:3928,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3932,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3934,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:3939,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:3942,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - layout
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_AudioChannelLayout*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3944
      start: 3918
    functionDepth: 2
    functionLinenumber: 3918
    functionLinenumberEnd: 3944
    functionName: gf_isom_get_audio_layout
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - memcpy
    - gf_list_count
    - memset
    - gf_isom_get_track_box
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_audio_layout(GF_ISOFile *movie, u32 trackNumber,
      u32 StreamDescriptionIndex, GF_AudioChannelLayout *layout)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:3952,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3959,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3961,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:3967,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - hSpacing
    - vSpacing
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3976
      start: 3945
    functionDepth: 2
    functionLinenumber: 3945
    functionLinenumberEnd: 3976
    functionName: gf_isom_get_pixel_aspect_ratio
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_pixel_aspect_ratio(GF_ISOFile *movie, u32 trackNumber,
      u32 StreamDescriptionIndex, u32 *hSpacing, u32 *vSpacing)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:3985,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3990,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3992,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4001,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4003,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 35
    argCount: 8
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - colour_type
    - colour_primaries
    - transfer_characteristics
    - matrix_coefficients
    - full_range_flag
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u16*
    - u16*
    - u16*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4016
      start: 3978
    functionDepth: 1
    functionLinenumber: 3978
    functionLinenumberEnd: 4016
    functionName: gf_isom_get_color_info
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_color_info(GF_ISOFile *movie, u32 trackNumber,
      u32 StreamDescriptionIndex, u32 *colour_type, u16 *colour_primaries, u16 *transfer_characteristics,
      u16 *matrix_coefficients, Bool *full_range_flag)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:4030,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4035,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4037,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4046,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4048,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_read.c:4053,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_read.c:4058,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 41
    argCount: 6
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - icc_restricted
    - icc
    - icc_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - Bool*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4065
      start: 4018
    functionDepth: 1
    functionLinenumber: 4018
    functionLinenumberEnd: 4065
    functionName: gf_isom_get_icc_profile
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    - GF_4CC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_icc_profile(GF_ISOFile *movie, u32 trackNumber,
      u32 StreamDescriptionIndex, Bool *icc_restricted, const u8 **icc, u32 *icc_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4075
      start: 4067
    functionDepth: 0
    functionLinenumber: 4067
    functionLinenumberEnd: 4075
    functionName: gf_isom_get_filename
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_isom_get_filename(GF_ISOFile *movie)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 2
    argNames:
    - movie
    - PL_Code
    argTypes:
    - GF_ISOFile*
    - GF_ISOProfileLevelType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4104
      start: 4078
    functionDepth: 0
    functionLinenumber: 4078
    functionLinenumberEnd: 4104
    functionName: gf_isom_get_pl_indication
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_pl_indication(GF_ISOFile *movie, GF_ISOProfileLevelType
      PL_Code)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:4109,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:4111,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - matrix
    argTypes:
    - GF_ISOFile*
    - u32
    - u32[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4113
      start: 4106
    functionDepth: 0
    functionLinenumber: 4106
    functionLinenumberEnd: 4113
    functionName: gf_isom_get_track_matrix
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - memcpy
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_track_matrix(GF_ISOFile *the_file, u32 trackNumber,
      u32 matrix[9])
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:4118,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 7
    argNames:
    - movie
    - trackNumber
    - width
    - height
    - translation_x
    - translation_y
    - layer
    argTypes:
    - GF_ISOFile*
    - u32
    - u32*
    - u32*
    - s32*
    - s32*
    - s16*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4126
      start: 4115
    functionDepth: 0
    functionLinenumber: 4115
    functionLinenumberEnd: 4126
    functionName: gf_isom_get_track_layout_info
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_track_layout_info(GF_ISOFile *movie, u32 trackNumber,
      u32 *width, u32 *height, s32 *translation_x, s32 *translation_y, s16 *layer)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:4136,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4160
      start: 4130
    functionDepth: 0
    functionLinenumber: 4130
    functionLinenumberEnd: 4160
    functionName: gf_isom_get_media_data_size
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_media_data_size(GF_ISOFile *movie, u32 trackNumber)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4171
      start: 4162
    functionDepth: 0
    functionLinenumber: 4162
    functionLinenumberEnd: 4171
    functionName: gf_isom_get_first_mdat_start
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_first_mdat_start(GF_ISOFile *movie)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4184,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4186,1
    - Dst: box_unused_bytes
      Src: /src/gpac/src/isomedia/isom_read.c:4187,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - b
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4190
      start: 4173
    functionDepth: 1
    functionLinenumber: 4173
    functionLinenumberEnd: 4190
    functionName: box_unused_bytes
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - box_unused_bytes
    linkageType: ''
    returnType: u64
    signature: u64 box_unused_bytes(GF_Box *b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4200,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4202,1
    - Dst: box_unused_bytes
      Src: /src/gpac/src/isomedia/isom_read.c:4203,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4206
      start: 4194
    functionDepth: 2
    functionLinenumber: 4194
    functionLinenumberEnd: 4206
    functionName: gf_isom_get_unused_box_bytes
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - box_unused_bytes
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_unused_box_bytes(GF_ISOFile *movie)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:4211,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4214
      start: 4208
    functionDepth: 0
    functionLinenumber: 4208
    functionLinenumberEnd: 4214
    functionName: gf_isom_set_default_sync_track
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_default_sync_track(GF_ISOFile *movie, u32 trackNumber)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/isomedia/isom_read.c:4224,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/isomedia/isom_read.c:4226,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/isom_read.c:4229,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/isom_read.c:4233,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/isom_read.c:4246,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/isom_read.c:4251,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/isom_read.c:4256,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 50
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4267
      start: 4217
    functionDepth: 2
    functionLinenumber: 4217
    functionLinenumberEnd: 4267
    functionName: gf_isom_is_single_av
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_media_type
    - gf_isom_get_sample_count
    - gf_isom_get_track_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_is_single_av(GF_ISOFile *file)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - mov
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4273
      start: 4269
    functionDepth: 0
    functionLinenumber: 4269
    functionLinenumberEnd: 4273
    functionName: gf_isom_is_JPEG2000
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_is_JPEG2000(GF_ISOFile *mov)
  - BBCount: 60
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/isomedia/isom_read.c:4291,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/isomedia/isom_read.c:4293,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/isomedia/isom_read.c:4294,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/isom_read.c:4299,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/isom_read.c:4303,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/isomedia/isom_read.c:4306,1
    - Dst: gf_isom_get_decoder_config
      Src: /src/gpac/src/isomedia/isom_read.c:4337,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_read.c:4377,1
    CyclomaticComplexity: 81
    EdgeCount: 81
    ICount: 149
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4427
      start: 4275
    functionDepth: 2
    functionLinenumber: 4275
    functionLinenumberEnd: 4427
    functionName: gf_isom_guess_specification
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_odf_desc_del
    - gf_isom_is_video_handler_type
    - gf_isom_get_media_subtype
    - gf_isom_get_sample_count
    - gf_isom_get_track_count
    - gf_isom_get_decoder_config
    - gf_isom_get_media_type
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_guess_specification(GF_ISOFile *file)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:4434,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_read.c:4438,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - list
    - boxType
    - UUID
    argTypes:
    - GF_List*
    - u32
    - bin128
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4442
      start: 4429
    functionDepth: 1
    functionLinenumber: 4429
    functionLinenumberEnd: 4442
    functionName: gf_isom_locate_box
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - memcmp
    linkageType: ''
    returnType: GF_ItemListBox
    signature: GF_ItemListBox *gf_isom_locate_box(GF_List *list, u32 boxType, bin128
      UUID)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta_extensions
      Src: /src/gpac/src/isomedia/isom_read.c:4458,1
    - Dst: gf_isom_locate_box
      Src: /src/gpac/src/isomedia/isom_read.c:4461,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4464,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:4467,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_read.c:4477,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:4478,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:4479,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 33
    argCount: 4
    argNames:
    - mov
    - tag
    - data
    - data_len
    argTypes:
    - GF_ISOFile*
    - GF_ISOiTunesTag
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4488
      start: 4447
    functionDepth: 2
    functionLinenumber: 4447
    functionLinenumberEnd: 4488
    functionName: gf_isom_apple_get_tag
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_isom_get_meta_extensions
    - gf_isom_locate_box
    - gf_bs_new
    - gf_bs_del
    - gf_list_count
    - gf_bs_read_int
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_apple_get_tag(GF_ISOFile *mov, GF_ISOiTunesTag tag,
      const u8 **data, u32 *data_len)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta_extensions
      Src: /src/gpac/src/isomedia/isom_read.c:4511,1
    - Dst: gf_isom_locate_box
      Src: /src/gpac/src/isomedia/isom_read.c:4514,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:4518,1
    - Dst: gf_itags_find_by_itag
      Src: /src/gpac/src/isomedia/isom_read.c:4521,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:4524,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:4529,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:4530,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:4531,1
    - Dst: gf_itags_find_by_itag
      Src: /src/gpac/src/isomedia/isom_read.c:4569,1
    - Dst: gf_itags_get_type
      Src: /src/gpac/src/isomedia/isom_read.c:4586,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 146
    argCount: 11
    argNames:
    - mov
    - idx
    - out_tag
    - data
    - data_len
    - out_int_val
    - out_int_val2
    - out_flags
    - out_mean
    - out_name
    - out_locale
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_ISOiTunesTag*
    - u8**
    - u32*
    - u64*
    - u32*
    - u32*
    - char**
    - char**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4651
      start: 4490
    functionDepth: 2
    functionLinenumber: 4490
    functionLinenumberEnd: 4651
    functionName: gf_isom_apple_enum_tag_ex
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_meta_extensions
    - gf_isom_locate_box
    - gf_itags_get_type
    - gf_itags_find_by_itag
    - gf_list_enum
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_apple_enum_tag_ex(GF_ISOFile *mov, u32 idx, GF_ISOiTunesTag
      *out_tag, const u8 **data, u32 *data_len, u64 *out_int_val, u32 *out_int_val2,
      u32 *out_flags, const char **out_mean, const char **out_name, u32 *out_locale)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_apple_enum_tag_ex
      Src: /src/gpac/src/isomedia/isom_read.c:4656,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - mov
    - idx
    - out_tag
    - data
    - data_len
    - out_int_val
    - out_int_val2
    - out_flags
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_ISOiTunesTag*
    - u8**
    - u32*
    - u64*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4657
      start: 4653
    functionDepth: 3
    functionLinenumber: 4653
    functionLinenumberEnd: 4657
    functionName: gf_isom_apple_enum_tag
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_apple_enum_tag_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_apple_enum_tag(GF_ISOFile *mov, u32 idx, GF_ISOiTunesTag
      *out_tag, const u8 **data, u32 *data_len, u64 *out_int_val, u32 *out_int_val2,
      u32 *out_flags)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta_extensions
      Src: /src/gpac/src/isomedia/isom_read.c:4664,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4667,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_read.c:4671,1
    - Dst: gf_isom_locate_box
      Src: /src/gpac/src/isomedia/isom_read.c:4675,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4679,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4681,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:4684,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_read.c:4699,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:4708,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:4716,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/isom_read.c:4719,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/isomedia/isom_read.c:4722,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:4725,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:4728,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:4731,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/isomedia/isom_read.c:4734,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/isom_read.c:4738,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/isom_read.c:4739,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/isom_read.c:4742,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/isom_read.c:4743,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/isom_read.c:4744,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/isom_read.c:4745,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:4749,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:4752,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:4755,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:4758,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/isom_read.c:4762,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/isomedia/isom_read.c:4780,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:4782,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 111
    argCount: 3
    argNames:
    - mov
    - idx
    - okey
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_QT_UDTAKey*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4784
      start: 4659
    functionDepth: 2
    functionLinenumber: 4659
    functionLinenumberEnd: 4784
    functionName: gf_isom_enum_udta_keys
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_meta_extensions
    - gf_list_get
    - gf_isom_locate_box
    - gf_bs_read_double
    - gf_bs_new
    - gf_bs_read_long_int
    - gf_bs_del
    - gf_list_count
    - memset
    - gf_bs_read_int
    - gf_bs_read_float
    - gf_bs_is_overflow
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_enum_udta_keys(GF_ISOFile *mov, u32 idx, GF_QT_UDTAKey
      *okey)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta_extensions
      Src: /src/gpac/src/isomedia/isom_read.c:4798,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4801,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 7
    argNames:
    - mov
    - idx
    - out_tag
    - data
    - data_len
    - version
    - data_type
    argTypes:
    - GF_ISOFile*
    - u32
    - char**
    - u8**
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4809
      start: 4786
    functionDepth: 2
    functionLinenumber: 4786
    functionLinenumberEnd: 4809
    functionName: gf_isom_wma_enum_tag
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_meta_extensions
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_wma_enum_tag(GF_ISOFile *mov, u32 idx, char **out_tag,
      const u8 **data, u32 *data_len, u32 *version, u32 *data_type)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:4818,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_read.c:4824,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4826,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - alternateGroupID
    - nb_groups
    argTypes:
    - GF_ISOFile*
    - u32
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4828
      start: 4812
    functionDepth: 1
    functionLinenumber: 4812
    functionLinenumberEnd: 4828
    functionName: gf_isom_get_track_switch_group_count
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - udta_getEntry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_track_switch_group_count(GF_ISOFile *movie, u32
      trackNumber, u32 *alternateGroupID, u32 *nb_groups)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:4837,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_read.c:4840,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4842,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - group_index
    - switchGroupID
    - criteriaListSize
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4848
      start: 4830
    functionDepth: 1
    functionLinenumber: 4830
    functionLinenumberEnd: 4848
    functionName: gf_isom_get_track_switch_parameter
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - udta_getEntry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_isom_get_track_switch_parameter(GF_ISOFile *movie, u32
      trackNumber, u32 group_index, u32 *switchGroupID, u32 *criteriaListSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/isomedia/isom_read.c:4856,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:4857,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4863
      start: 4850
    functionDepth: 2
    functionLinenumber: 4850
    functionLinenumberEnd: 4863
    functionName: gf_isom_get_next_alternate_group_id
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - gf_isom_get_track_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_next_alternate_group_id(GF_ISOFile *movie)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:4872,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4876,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4879,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4881,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4883,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4885,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4887,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_read.c:4888,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_read.c:4890,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_read.c:4891,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_read.c:4892,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/isom_read.c:4893,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/isom_read.c:4894,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_read.c:4902,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:4903,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 4
    argNames:
    - movie
    - track
    - sampleNumber
    - osize
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4906
      start: 4865
    functionDepth: 1
    functionLinenumber: 4865
    functionLinenumberEnd: 4906
    functionName: gf_isom_sample_get_subsamples_buffer
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_del
    - gf_list_count
    - gf_isom_get_track_box
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_isom_sample_get_subsamples_buffer(GF_ISOFile *movie,
      u32 track, u32 sampleNumber, u32 *osize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:4911,1
    - Dst: gf_isom_sample_get_subsample_entry
      Src: /src/gpac/src/isomedia/isom_read.c:4915,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 4
    argNames:
    - movie
    - track
    - sampleNumber
    - flags
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4916
      start: 4908
    functionDepth: 1
    functionLinenumber: 4908
    functionLinenumberEnd: 4916
    functionName: gf_isom_sample_has_subsamples
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - gf_isom_sample_get_subsample_entry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_sample_has_subsamples(GF_ISOFile *movie, u32 track,
      u32 sampleNumber, u32 flags)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_get_subsample_entry
      Src: /src/gpac/src/isomedia/isom_read.c:4923,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4927,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 9
    argNames:
    - movie
    - track
    - sampleNumber
    - flags
    - subSampleNumber
    - size
    - priority
    - reserved
    - discardable
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - u32*
    - u8*
    - u32*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4933
      start: 4918
    functionDepth: 1
    functionLinenumber: 4918
    functionLinenumberEnd: 4933
    functionName: gf_isom_sample_get_subsample
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_isom_sample_get_subsample_entry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_sample_get_subsample(GF_ISOFile *movie, u32 track,
      u32 sampleNumber, u32 flags, u32 subSampleNumber, u32 *size, u8 *priority, u32
      *reserved, Bool *discardable)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:4944,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4948,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:4952,1
    - Dst: gf_isom_extract_meta_item_mem
      Src: /src/gpac/src/isomedia/isom_read.c:4958,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 7
    argNames:
    - movie
    - track
    - sampleDescriptionIndex
    - rvc_predefined
    - data
    - size
    - mime
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u16*
    - u8**
    - u32*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4961
      start: 4935
    functionDepth: 2
    functionLinenumber: 4935
    functionLinenumberEnd: 4961
    functionName: gf_isom_get_rvc_config
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_isom_extract_meta_item_mem
    - gf_isom_get_track_box
    - gf_list_get
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_rvc_config(GF_ISOFile *movie, u32 track, u32
      sampleDescriptionIndex, u16 *rvc_predefined, u8 **data, u32 *size, const char
      **mime)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4967,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4968,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4973
      start: 4963
    functionDepth: 1
    functionLinenumber: 4963
    functionLinenumberEnd: 4973
    functionName: gf_isom_moov_first
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_moov_first(GF_ISOFile *movie)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4980,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4981,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 2
    argNames:
    - movie
    - keep_sample_count
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4991
      start: 4975
    functionDepth: 1
    functionLinenumber: 4975
    functionLinenumberEnd: 4991
    functionName: gf_isom_reset_fragment_info
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_reset_fragment_info(GF_ISOFile *movie, Bool keep_sample_count)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5002
      start: 4996
    functionDepth: 0
    functionLinenumber: 4996
    functionLinenumberEnd: 5002
    functionName: gf_isom_reset_seq_num
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_reset_seq_num(GF_ISOFile *movie)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5010,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5011,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5017
      start: 5004
    functionDepth: 1
    functionLinenumber: 5004
    functionLinenumberEnd: 5017
    functionName: gf_isom_reset_sample_count
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_reset_sample_count(GF_ISOFile *movie)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:5028,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5032,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5034,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5043,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5044,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 29
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - has_selective
    - has_roll
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5052
      start: 5019
    functionDepth: 1
    functionLinenumber: 5019
    functionLinenumberEnd: 5052
    functionName: gf_isom_has_cenc_sample_group
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_has_cenc_sample_group(GF_ISOFile *the_file, u32 trackNumber,
      Bool *has_selective, Bool *has_roll)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:5061,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5066,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5068,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5078,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5086,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5101,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5102,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 53
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - sample_number
    - switch_frame
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5116
      start: 5054
    functionDepth: 1
    functionLinenumber: 5054
    functionLinenumberEnd: 5116
    functionName: isom_get_sample_switch_frame
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err isom_get_sample_switch_frame(GF_ISOFile *the_file, u32 trackNumber,
      u32 sample_number, Bool *switch_frame)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:5128,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5133,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5135,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5148,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5149,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5161,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5169,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5184,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5185,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5203,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 81
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - sample_number
    - is_rap
    - roll_type
    - roll_distance
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - Bool*
    - GF_ISOSampleRollType*
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5211
      start: 5118
    functionDepth: 1
    functionLinenumber: 5118
    functionLinenumberEnd: 5211
    functionName: gf_isom_get_sample_rap_roll_info
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 4
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_sample_rap_roll_info(GF_ISOFile *the_file, u32
      trackNumber, u32 sample_number, Bool *is_rap, GF_ISOSampleRollType *roll_type,
      s32 *roll_distance)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:5223,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5232,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5238,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 31
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - sample_number
    - grouping_type
    - grouping_type_param
    - sampleGroupDescIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5254
      start: 5213
    functionDepth: 1
    functionLinenumber: 5213
    functionLinenumberEnd: 5254
    functionName: gf_isom_get_sample_to_group_info
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_sample_to_group_info(GF_ISOFile *the_file, u32
      trackNumber, u32 sample_number, u32 grouping_type, u32 grouping_type_param,
      u32 *sampleGroupDescIndex)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:5268,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5277,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5281,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5308,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5309,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5334,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_read.c:5336,1
    - Dst: sgpd_write_entry
      Src: /src/gpac/src/isomedia/isom_read.c:5337,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_read.c:5338,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:5339,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 78
    argCount: 9
    argNames:
    - the_file
    - trackNumber
    - sample_number
    - sgrp_idx
    - sgrp_type
    - sgrp_flags
    - sgrp_parameter
    - sgrp_data
    - sgrp_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u32*
    - u32*
    - u32*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5347
      start: 5256
    functionDepth: 1
    functionLinenumber: 5256
    functionLinenumberEnd: 5347
    functionName: gf_isom_enum_sample_group
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_bs_new
    - gf_bs_get_content
    - sgpd_write_entry
    - gf_bs_del
    - gf_list_count
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_enum_sample_group(GF_ISOFile *the_file, u32 trackNumber,
      u32 sample_number, u32 *sgrp_idx, u32 *sgrp_type, u32 *sgrp_flags, u32 *sgrp_parameter,
      u8 **sgrp_data, u32 *sgrp_size)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5357,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5359,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5368,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 20
    argCount: 6
    argNames:
    - the_file
    - trak
    - grouping_type
    - sample_group_description_index
    - default_index
    - out_sgdp
    argTypes:
    - GF_ISOFile*
    - GF_TrackBox*
    - u32
    - u32
    - u32*
    - GF_SampleGroupDescriptionBox**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5371
      start: 5350
    functionDepth: 1
    functionLinenumber: 5350
    functionLinenumberEnd: 5371
    functionName: gf_isom_get_sample_group_info_entry
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void *gf_isom_get_sample_group_info_entry(GF_ISOFile *the_file, GF_TrackBox
      *trak, u32 grouping_type, u32 sample_group_description_index, u32 *default_index,
      GF_SampleGroupDescriptionBox **out_sgdp)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:5378,1
    - Dst: gf_isom_get_sample_group_info_entry
      Src: /src/gpac/src/isomedia/isom_read.c:5384,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 7
    argNames:
    - the_file
    - trackNumber
    - sample_description_index
    - grouping_type
    - default_index
    - data
    - size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5404
      start: 5373
    functionDepth: 2
    functionLinenumber: 5373
    functionLinenumberEnd: 5404
    functionName: gf_isom_get_sample_group_info
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - gf_isom_get_sample_group_info_entry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_sample_group_info(GF_ISOFile *the_file, u32 trackNumber,
      u32 sample_description_index, u32 grouping_type, u32 *default_index, const u8
      **data, u32 *size)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5415
      start: 5408
    functionDepth: 0
    functionLinenumber: 5408
    functionLinenumberEnd: 5415
    functionName: gf_isom_get_fragmented_duration
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_fragmented_duration(GF_ISOFile *movie)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:5423,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - movie
    - segments_only
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5433
      start: 5417
    functionDepth: 1
    functionLinenumber: 5417
    functionLinenumberEnd: 5433
    functionName: gf_isom_get_fragments_count
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_fragments_count(GF_ISOFile *movie, Bool segments_only)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:5445,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:5449,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5459,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5460,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 29
    argCount: 4
    argNames:
    - movie
    - trackID
    - nb_samples
    - duration
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - u32*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5477
      start: 5435
    functionDepth: 1
    functionLinenumber: 5435
    functionLinenumberEnd: 5477
    functionName: gf_isom_get_fragmented_samples_info
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_enum
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_fragmented_samples_info(GF_ISOFile *movie, GF_ISOTrackID
      trackID, u32 *nb_samples, u64 *duration)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:5484,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/isom_read.c:5493,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - nalu_extract_mode
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_ISONaluExtractMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5496
      start: 5480
    functionDepth: 2
    functionLinenumber: 5480
    functionLinenumberEnd: 5496
    functionName: gf_isom_set_nalu_extract_mode
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 5
    functionsReached:
    - gf_isom_get_track_box
    - Track_FindRef
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_nalu_extract_mode(GF_ISOFile *the_file, u32 trackNumber,
      GF_ISONaluExtractMode nalu_extract_mode)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:5501,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5504
      start: 5498
    functionDepth: 0
    functionLinenumber: 5498
    functionLinenumberEnd: 5504
    functionName: GF_ISONaluExtractMode::gf_isom_get_nalu_extract_mode
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ISONaluExtractMode gf_isom_get_nalu_extract_mode(GF_ISOFile
      *the_file, u32 trackNumber)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:5509,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 6
    argCount: 2
    argNames:
    - file
    - track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5513
      start: 5506
    functionDepth: 0
    functionLinenumber: 5506
    functionLinenumberEnd: 5513
    functionName: gf_isom_get_composition_offset_shift
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_composition_offset_shift(GF_ISOFile *file, u32
      track)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/isomedia/isom_read.c:5521,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/isomedia/isom_read.c:5523,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/isomedia/isom_read.c:5526,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/isomedia/isom_read.c:5529,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/isomedia/isom_read.c:5534,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5540
      start: 5515
    functionDepth: 3
    functionLinenumber: 5515
    functionLinenumberEnd: 5540
    functionName: gf_isom_needs_layer_reconstruction
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_media_subtype
    - gf_isom_get_reference_count
    - gf_isom_get_track_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_needs_layer_reconstruction(GF_ISOFile *file)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - file
    - keep_utc
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5547
      start: 5542
    functionDepth: 0
    functionLinenumber: 5542
    functionLinenumberEnd: 5547
    functionName: gf_isom_keep_utc_times
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_keep_utc_times(GF_ISOFile *file, Bool keep_utc)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5554
      start: 5549
    functionDepth: 0
    functionLinenumber: 5549
    functionLinenumberEnd: 5554
    functionName: gf_isom_has_keep_utc_times
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_has_keep_utc_times(GF_ISOFile *file)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:5565,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:5571,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5577
      start: 5558
    functionDepth: 1
    functionLinenumber: 5558
    functionLinenumberEnd: 5577
    functionName: gf_isom_get_pssh_count
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_pssh_count(GF_ISOFile *file)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:5594,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_read.c:5600,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_read.c:5601,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_read.c:5603,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:5605,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 4
    argNames:
    - file
    - pssh_index
    - pssh_data
    - pssh_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5607
      start: 5587
    functionDepth: 3
    functionLinenumber: 5587
    functionLinenumberEnd: 5607
    functionName: gf_isom_get_pssh
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_get_content
    - gf_isom_box_write
    - gf_bs_del
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_get_pssh(GF_ISOFile *file, u32 pssh_index, u8 **pssh_data,
      u32 *pssh_size)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:5617,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:5624,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:5632,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 34
    argCount: 8
    argNames:
    - file
    - pssh_index
    - SystemID
    - version
    - KID_count
    - KIDs
    - private_data
    - private_data_size
    argTypes:
    - GF_ISOFile*
    - u32
    - bin128
    - u32*
    - u32*
    - bin128**
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5639
      start: 5610
    functionDepth: 1
    functionLinenumber: 5610
    functionLinenumberEnd: 5639
    functionName: gf_isom_get_pssh_info
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_pssh_info(GF_ISOFile *file, u32 pssh_index, bin128
      SystemID, u32 *version, u32 *KID_count, const bin128 **KIDs, const u8 **private_data,
      u32 *private_data_size)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: stbl_GetSampleInfos
      Src: /src/gpac/src/isomedia/isom_read.c:5673,1
    - Dst: gf_isom_cenc_get_default_info_internal
      Src: /src/gpac/src/isomedia/isom_read.c:5683,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5688,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5690,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5711,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5714,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5740,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5741,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5749,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5750,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5759,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/isom_read.c:5780,1
    CyclomaticComplexity: 61
    EdgeCount: 61
    ICount: 126
    argCount: 9
    argNames:
    - trak
    - traf
    - senc
    - sample_number
    - IsEncrypted
    - crypt_byte_block
    - skip_byte_block
    - key_info
    - key_info_size
    argTypes:
    - GF_TrackBox*
    - void*
    - GF_SampleEncryptionBox*
    - u32
    - Bool*
    - u32*
    - u32*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5787
      start: 5644
    functionDepth: 1
    functionLinenumber: 5644
    functionLinenumberEnd: 5787
    functionName: gf_isom_get_sample_cenc_info_internal
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_isom_cenc_get_default_info_internal
    - gf_list_get
    - gf_assert
    - gf_list_count
    - stbl_GetSampleInfos
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_get_sample_cenc_info_internal(GF_TrackBox *trak, void
      *traf, GF_SampleEncryptionBox *senc, u32 sample_number, Bool *IsEncrypted, u32
      *crypt_byte_block, u32 *skip_byte_block, const u8 **key_info, u32 *key_info_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5749,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5750,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5754
      start: 5747
    functionDepth: 1
    functionLinenumber: 5747
    functionLinenumberEnd: 5754
    functionName: if
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: else
    signature: else if (traf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:5792,1
    - Dst: gf_isom_get_sample_cenc_info_internal
      Src: /src/gpac/src/isomedia/isom_read.c:5795,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - movie
    - track
    - sample_number
    - IsEncrypted
    - crypt_byte_block
    - skip_byte_block
    - key_info
    - key_info_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - Bool*
    - u32*
    - u32*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5796
      start: 5789
    functionDepth: 2
    functionLinenumber: 5789
    functionLinenumberEnd: 5796
    functionName: gf_isom_get_sample_cenc_info
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_isom_get_track_box
    - gf_isom_get_sample_cenc_info_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_sample_cenc_info(GF_ISOFile *movie, u32 track,
      u32 sample_number, Bool *IsEncrypted, u32 *crypt_byte_block, u32 *skip_byte_block,
      const u8 **key_info, u32 *key_info_size)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_read.c:5813,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 5
    argNames:
    - file
    - refTrackID
    - ntp
    - timestamp
    - reset_info
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID*
    - u64*
    - u64*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5819
      start: 5799
    functionDepth: 4
    functionLinenumber: 5799
    functionLinenumberEnd: 5819
    functionName: gf_isom_get_last_producer_time_box
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_last_producer_time_box(GF_ISOFile *file, GF_ISOTrackID
      *refTrackID, u64 *ntp, u64 *timestamp, Bool reset_info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:5828,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5832
      start: 5821
    functionDepth: 0
    functionLinenumber: 5821
    functionLinenumberEnd: 5832
    functionName: gf_isom_get_current_tfdt
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_current_tfdt(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:5841,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5845
      start: 5834
    functionDepth: 0
    functionLinenumber: 5834
    functionLinenumberEnd: 5845
    functionName: gf_isom_get_smooth_next_tfdt
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_smooth_next_tfdt(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - the_file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5851
      start: 5847
    functionDepth: 0
    functionLinenumber: 5847
    functionLinenumberEnd: 5851
    functionName: gf_isom_is_smooth_streaming_moov
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_is_smooth_streaming_moov(GF_ISOFile *the_file)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_read.c:5857,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/isom_read.c:5858,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:5859,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:5864,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:5865,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:5866,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:5867,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:5868,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/isom_read.c:5869,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/isom_read.c:5870,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/isom_read.c:5871,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/isom_read.c:5872,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:5874,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 9
    argNames:
    - data
    - size
    - id
    - independent
    - full_picture
    - x
    - y
    - w
    - h
    argTypes:
    - u8*
    - u32
    - u32*
    - u32*
    - Bool*
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5875
      start: 5854
    functionDepth: 1
    functionLinenumber: 5854
    functionLinenumberEnd: 5875
    functionName: gf_isom_parse_trif_info
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_bs_read_int
    - gf_bs_new
    - gf_bs_read_u16
    linkageType: ''
    returnType: void
    signature: void gf_isom_parse_trif_info(const u8 *data, u32 size, u32 *id, u32
      *independent, Bool *full_picture, u32 *x, u32 *y, u32 *w, u32 *h)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_sample_group_info
      Src: /src/gpac/src/isomedia/isom_read.c:5883,1
    - Dst: gf_isom_parse_trif_info
      Src: /src/gpac/src/isomedia/isom_read.c:5885,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 11
    argNames:
    - file
    - trackNumber
    - sample_description_index
    - default_sample_group_index
    - id
    - independent
    - full_picture
    - x
    - y
    - w
    - h
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u32*
    - u32*
    - Bool*
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5887
      start: 5877
    functionDepth: 3
    functionLinenumber: 5877
    functionLinenumberEnd: 5887
    functionName: gf_isom_get_tile_info
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_parse_trif_info
    - gf_isom_get_sample_group_info
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_tile_info(GF_ISOFile *file, u32 trackNumber,
      u32 sample_description_index, u32 *default_sample_group_index, u32 *id, u32
      *independent, Bool *full_picture, u32 *x, u32 *y, u32 *w, u32 *h)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:5893,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/isomedia/isom_read.c:5898,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:5900,1
    - Dst: gf_isom_get_sample_group_info_entry
      Src: /src/gpac/src/isomedia/isom_read.c:5904,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - file
    - trackNumber
    - ptr
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_OperatingPointsInformation**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5907
      start: 5889
    functionDepth: 3
    functionLinenumber: 5889
    functionLinenumberEnd: 5907
    functionName: gf_isom_get_oinf_info
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - gf_isom_get_sample_group_info_entry
    - gf_isom_get_reference
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_oinf_info(GF_ISOFile *file, u32 trackNumber,
      GF_OperatingPointsInformation **ptr)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - file
    - byte_offset
    argTypes:
    - GF_ISOFile*
    - s64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5915
      start: 5909
    functionDepth: 0
    functionLinenumber: 5909
    functionLinenumberEnd: 5915
    functionName: gf_isom_set_byte_offset
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_byte_offset(GF_ISOFile *file, s64 byte_offset)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:5925,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5932,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5937,1
    - Dst: gf_isom_is_nalu_based_entry
      Src: /src/gpac/src/isomedia/isom_read.c:5939,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 28
    argCount: 3
    argNames:
    - file
    - track
    - StreamDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5951
      start: 5917
    functionDepth: 1
    functionLinenumber: 5917
    functionLinenumberEnd: 5951
    functionName: gf_isom_get_nalu_length_field
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    - gf_isom_is_nalu_based_entry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_nalu_length_field(GF_ISOFile *file, u32 track,
      u32 StreamDescriptionIndex)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - mtype
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5964
      start: 5953
    functionDepth: 0
    functionLinenumber: 5953
    functionLinenumberEnd: 5964
    functionName: gf_isom_is_video_handler_type
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_is_video_handler_type(u32 mtype)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:5976,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5980,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5984,1
    - Dst: gf_isom_sample_entry_get_bitrate_box
      Src: /src/gpac/src/isomedia/isom_read.c:5986,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:5998,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 60
    argCount: 6
    argNames:
    - movie
    - trackNumber
    - sampleDescIndex
    - average_bitrate
    - max_bitrate
    - decode_buffer_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6024
      start: 5966
    functionDepth: 6
    functionLinenumber: 5966
    functionLinenumberEnd: 6024
    functionName: gf_isom_get_bitrate
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_sample_entry_get_bitrate_box
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_bitrate(GF_ISOFile *movie, u32 trackNumber, u32
      sampleDescIndex, u32 *average_bitrate, u32 *max_bitrate, u32 *decode_buffer_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6030
      start: 6026
    functionDepth: 0
    functionLinenumber: 6026
    functionLinenumberEnd: 6030
    functionName: gf_isom_enable_traf_map_templates
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_isom_enable_traf_map_templates(GF_ISOFile *movie)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_read.c:6040,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6042,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 40
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - sampleNum
    - frag_info
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_ISOFragmentBoundaryInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6080
      start: 6033
    functionDepth: 0
    functionLinenumber: 6033
    functionLinenumberEnd: 6080
    functionName: gf_isom_sample_is_fragment_start
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - memset
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_sample_is_fragment_start(GF_ISOFile *movie, u32 trackNumber,
      u32 sampleNum, GF_ISOFragmentBoundaryInfo *frag_info)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 3
    argNames:
    - movie
    - start
    - end
    argTypes:
    - GF_ISOFile*
    - u64*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6089
      start: 6082
    functionDepth: 0
    functionLinenumber: 6082
    functionLinenumberEnd: 6089
    functionName: gf_isom_get_root_sidx_offsets
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_root_sidx_offsets(GF_ISOFile *movie, u64 *start,
      u64 *end)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6102,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6104,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_read.c:6108,1
    - Dst: gf_isom_box_array_write
      Src: /src/gpac/src/isomedia/isom_read.c:6109,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_read.c:6110,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:6111,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 15
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - sampleDesc
    - out_dsi
    - out_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6116
      start: 6094
    functionDepth: 2
    functionLinenumber: 6094
    functionLinenumberEnd: 6116
    functionName: gf_isom_get_jp2_config
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_bs_new
    - gf_bs_get_content
    - gf_isom_box_array_write
    - gf_bs_del
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_jp2_config(GF_ISOFile *movie, u32 trackNumber,
      u32 sampleDesc, u8 **out_dsi, u32 *out_size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_read.c:6130,1
    - Dst: sgpd_write_entry
      Src: /src/gpac/src/isomedia/isom_read.c:6132,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_read.c:6134,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_read.c:6135,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_read.c:6137,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:6138,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_read.c:6140,1
    - Dst: sgpd_write_entry
      Src: /src/gpac/src/isomedia/isom_read.c:6142,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_read.c:6144,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_read.c:6146,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:6147,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_read.c:6150,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:6153,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:6154,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 3
    argNames:
    - ptr1
    - ptr2
    - grouping_type
    argTypes:
    - void*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6157
      start: 6119
    functionDepth: 3
    functionLinenumber: 6119
    functionLinenumberEnd: 6157
    functionName: gf_isom_is_identical_sgpd
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_isom_box_size
    - memcmp
    - gf_bs_new
    - gf_bs_get_content
    - sgpd_write_entry
    - gf_isom_box_write
    - gf_bs_del
    linkageType: ''
    returnType: Bool
    signature: Bool gf_isom_is_identical_sgpd(void *ptr1, void *ptr2, u32 grouping_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6165
      start: 6159
    functionDepth: 0
    functionLinenumber: 6159
    functionLinenumberEnd: 6165
    functionName: gf_isom_get_track_magic
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_track_magic(GF_ISOFile *movie, u32 trackNumber)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - movie
    - start_time
    - max_offset
    argTypes:
    - GF_ISOFile*
    - Double
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6193
      start: 6169
    functionDepth: 0
    functionLinenumber: 6169
    functionLinenumberEnd: 6193
    functionName: gf_isom_get_file_offset_for_time
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_file_offset_for_time(GF_ISOFile *movie, Double
      start_time, u64 *max_offset)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 3
    argNames:
    - movie
    - sidx_dur
    - sidx_timescale
    argTypes:
    - GF_ISOFile*
    - u64*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6211
      start: 6195
    functionDepth: 0
    functionLinenumber: 6195
    functionLinenumberEnd: 6211
    functionName: gf_isom_get_sidx_duration
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_sidx_duration(GF_ISOFile *movie, u64 *sidx_dur,
      u32 *sidx_timescale)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6221,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6224,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6226,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - sampleDescIndex
    - nb_compat_profiles
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6230
      start: 6214
    functionDepth: 2
    functionLinenumber: 6214
    functionLinenumberEnd: 6230
    functionName: gf_isom_get_mpegh_compatible_profiles
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_isom_get_mpegh_compatible_profiles(GF_ISOFile *movie,
      u32 trackNumber, u32 sampleDescIndex, u32 *nb_compat_profiles)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6237,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6242
      start: 6232
    functionDepth: 0
    functionLinenumber: 6232
    functionLinenumberEnd: 6242
    functionName: gf_isom_get_tfrf
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: void
    signature: void *gf_isom_get_tfrf(GF_ISOFile *movie, u32 trackNumber)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6249,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6252,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_read.c:6255,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6257,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6263,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6267,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_read.c:6268,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6270,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6274,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6282,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6288,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6296,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 45
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - sampleDescriptionIndex
    - info
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_ISOM_Y3D_Info*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6303
      start: 6244
    functionDepth: 2
    functionLinenumber: 6244
    functionLinenumberEnd: 6303
    functionName: gf_isom_get_y3d_info
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - memset
    - gf_isom_get_track_box
    - gf_isom_box_find_child
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_get_y3d_info(GF_ISOFile *movie, u32 trackNumber, u32
      sampleDescriptionIndex, GF_ISOM_Y3D_Info *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6313,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 12
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6322
      start: 6306
    functionDepth: 0
    functionLinenumber: 6306
    functionLinenumberEnd: 6322
    functionName: gf_isom_get_chunk_count
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_chunk_count(GF_ISOFile *movie, u32 trackNumber)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6334,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 64
    argCount: 9
    argNames:
    - movie
    - trackNumber
    - chunk_num
    - chunk_offset
    - first_sample_num
    - sample_per_chunk
    - sample_desc_idx
    - cache_1
    - cache_2
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u64*
    - u32*
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6402
      start: 6324
    functionDepth: 0
    functionLinenumber: 6324
    functionLinenumberEnd: 6402
    functionName: gf_isom_get_chunk_info
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_chunk_info(GF_ISOFile *movie, u32 trackNumber,
      u32 chunk_num, u64 *chunk_offset, u32 *first_sample_num, u32 *sample_per_chunk,
      u32 *sample_desc_idx, u32 *cache_1, u32 *cache_2)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6411,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:6416,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6419,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6423,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 32
    argCount: 11
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - cleanApertureWidthN
    - cleanApertureWidthD
    - cleanApertureHeightN
    - cleanApertureHeightD
    - horizOffN
    - horizOffD
    - vertOffN
    - vertOffD
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u32*
    - u32*
    - u32*
    - s32*
    - u32*
    - s32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6434
      start: 6404
    functionDepth: 2
    functionLinenumber: 6404
    functionLinenumberEnd: 6434
    functionName: gf_isom_get_clean_aperture
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_clean_aperture(GF_ISOFile *movie, u32 trackNumber,
      u32 StreamDescriptionIndex, u32 *cleanApertureWidthN, u32 *cleanApertureWidthD,
      u32 *cleanApertureHeightN, u32 *cleanApertureHeightD, s32 *horizOffN, u32 *horizOffD,
      s32 *vertOffN, u32 *vertOffD)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6443,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:6447,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6448,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - file
    - track_number
    - track_group_type
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6454
      start: 6436
    functionDepth: 1
    functionLinenumber: 6436
    functionLinenumberEnd: 6454
    functionName: gf_isom_get_track_group
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_track_group(GF_ISOFile *file, u32 track_number,
      u32 track_group_type)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6462,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6466,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 5
    argNames:
    - file
    - track_number
    - idx
    - track_group_type
    - track_group_id
    argTypes:
    - GF_ISOFile*
    - u32
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6472
      start: 6456
    functionDepth: 1
    functionLinenumber: 6456
    functionLinenumberEnd: 6472
    functionName: gf_isom_enum_track_group
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_enum_track_group(GF_ISOFile *file, u32 track_number,
      u32 *idx, u32 *track_group_type, u32 *track_group_id)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6481,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:6486,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6489,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6493,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6497
      start: 6474
    functionDepth: 2
    functionLinenumber: 6474
    functionLinenumberEnd: 6497
    functionName: GF_MasteringDisplayColourVolumeInfo *gf_isom_get_mastering_display_colour_info(GF_ISOFile*
      movie, u32 trackNumber, u32 StreamDescriptionIndex)
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_MasteringDisplayColourVolumeInfo *gf_isom_get_mastering_display_colour_info(GF_ISOFile*
      movie, u32 trackNumber, u32 StreamDescriptionIndex)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6506,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:6511,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6514,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6518,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6521
      start: 6499
    functionDepth: 2
    functionLinenumber: 6499
    functionLinenumberEnd: 6521
    functionName: GF_ContentLightLevelInfo *gf_isom_get_content_light_level_info(GF_ISOFile*
      movie, u32 trackNumber, u32 StreamDescriptionIndex)
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ContentLightLevelInfo *gf_isom_get_content_light_level_info(GF_ISOFile*
      movie, u32 trackNumber, u32 StreamDescriptionIndex)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6533,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:6543,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6549,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:6564,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6565,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_read.c:6592,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:6599,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_read.c:6605,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_read.c:6606,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/isom_read.c:6608,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_read.c:6610,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:6615,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_read.c:6618,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/isomedia/isom_read.c:6618,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 85
    argCount: 8
    argNames:
    - the_file
    - trackNumber
    - sample_number
    - sai_idx
    - sai_type
    - sai_parameter
    - sai_data
    - sai_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u32*
    - u32*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6623
      start: 6524
    functionDepth: 1
    functionLinenumber: 6524
    functionLinenumberEnd: 6623
    functionName: gf_isom_enum_sample_aux_data
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_list_get
    - gf_bs_seek
    - memcpy
    - GF_LOG
    - gf_bs_get_position
    - gf_list_count
    - gf_error_to_string
    - gf_isom_get_track_box
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_enum_sample_aux_data(GF_ISOFile *the_file, u32 trackNumber,
      u32 sample_number, u32 *sai_idx, u32 *sai_type, u32 *sai_parameter, u8 **sai_data,
      u32 *sai_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/isom_read.c:6628,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_read.c:6631,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_read.c:6633,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_read.c:6634,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_read.c:6635,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_read.c:6636,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - the_file
    - emsg_data
    - emsg_size
    argTypes:
    - GF_ISOFile*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6643
      start: 6625
    functionDepth: 4
    functionLinenumber: 6625
    functionLinenumberEnd: 6643
    functionName: gf_isom_pop_emsg
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_size
    - gf_bs_new
    - gf_isom_box_del
    - gf_list_pop_front
    - gf_bs_get_content
    - gf_isom_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_pop_emsg(GF_ISOFile *the_file, u8 **emsg_data, u32 *emsg_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6648,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - (*sample_alloc)(u32 size, void *cbk)
    - udta
    argTypes:
    - GF_ISOFile*
    - u32
    - u8*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6653
      start: 6645
    functionDepth: 0
    functionLinenumber: 6645
    functionLinenumberEnd: 6653
    functionName: gf_isom_set_sample_alloc
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err gf_isom_set_sample_alloc(GF_ISOFile *the_file, u32 trackNumber,
      \tu8 *(*sample_alloc)(u32 size, void *cbk), void *udta)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6659,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - tkid
    - type
    - flags
    - location
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_ISOTrackID*
    - u32*
    - u32*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6667
      start: 6655
    functionDepth: 0
    functionLinenumber: 6655
    functionLinenumberEnd: 6667
    functionName: gf_isom_is_external_track
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 4
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_is_external_track(GF_ISOFile *the_file, u32 trackNumber,
      GF_ISOTrackID *tkid, u32 *type, u32 *flags, const char **location)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6671,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6673,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_read.c:6678,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_read.c:6682,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:6683,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_read.c:6684,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:6690,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6692,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/isomedia/isom_read.c:6693,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/isomedia/isom_read.c:6694,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 4
    argNames:
    - dst
    - dst_track
    - src
    - src_track
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6697
      start: 6669
    functionDepth: 5
    functionLinenumber: 6669
    functionLinenumberEnd: 6697
    functionName: gf_isom_merge_external_edit
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_isom_box_del
    - gf_list_count
    - gf_list_del_item
    - gf_isom_get_track_box
    - gf_timestamp_rescale
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_merge_external_edit(GF_ISOFile *dst, u32 dst_track,
      GF_ISOFile *src, u32 src_track)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6703,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - query_mode
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_ISOMMinNegCtsQuery
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6714
      start: 6699
    functionDepth: 0
    functionLinenumber: 6699
    functionLinenumberEnd: 6714
    functionName: gf_isom_get_min_negative_cts_offset
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_min_negative_cts_offset(GF_ISOFile *the_file,
      u32 trackNumber, GF_ISOMMinNegCtsQuery query_mode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/isom_read.c:6721,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_read.c:6723,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - the_file
    - new_file
    argTypes:
    - GF_ISOFile*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6724
      start: 6716
    functionDepth: 1
    functionLinenumber: 6716
    functionLinenumberEnd: 6724
    functionName: gf_isom_switch_source
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_datamap_del
    - gf_isom_datamap_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_switch_source(GF_ISOFile *the_file, const char *new_file)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6732,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6741,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - sampleNumber
    - ID
    - nb_refs
    - refs
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u32*
    - u32**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6746
      start: 6726
    functionDepth: 1
    functionLinenumber: 6726
    functionLinenumberEnd: 6746
    functionName: gf_isom_get_sample_references
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_sample_references(GF_ISOFile *the_file, u32 trackNumber,
      u32 sampleNumber, u32 *ID, u32 *nb_refs, const u32 **refs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_meta.c:33,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_meta.c:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 36
    functionName: meta_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *meta_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/box_code_meta.c:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 38
    functionDepth: 3
    functionLinenumber: 38
    functionLinenumberEnd: 58
    functionName: meta_reset
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_del
    linkageType: ''
    returnType: void
    signature: void meta_reset(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: meta_reset
      Src: /src/gpac/src/isomedia/box_code_meta.c:62,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 60
    functionDepth: 4
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionName: meta_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_free
    - meta_reset
    linkageType: ''
    returnType: void
    signature: void meta_box_del(GF_Box *s)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_meta.c:72,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_meta.c:75,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_meta.c:78,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_meta.c:81,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_meta.c:84,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_meta.c:87,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_meta.c:90,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_meta.c:93,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_meta.c:96,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_meta.c:99,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 104
    functionName: meta_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err meta_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_meta.c:109,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/isomedia/box_code_meta.c:112,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_code_meta.c:114,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_code_meta.c:115,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_code_meta.c:116,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_code_meta.c:117,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_code_meta.c:118,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_code_meta.c:119,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:127,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_meta.c:128,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/isomedia/box_code_meta.c:129,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_meta.c:130,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_meta.c:135,1
    - Dst: meta_reset
      Src: /src/gpac/src/isomedia/box_code_meta.c:136,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_meta.c:139,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 106
    functionDepth: 4
    functionLinenumber: 106
    functionLinenumberEnd: 142
    functionName: meta_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_bs_peek_bits
    - gf_bs_seek
    - gf_bs_get_position
    - ISOM_DECREASE_SIZE
    - GF_4CC
    - gf_isom_box_array_read
    - gf_bs_read_u8
    - meta_reset
    - gf_bs_read_u24
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err meta_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_meta.c:149,1
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_meta.c:151,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 145
    functionDepth: 3
    functionLinenumber: 145
    functionLinenumberEnd: 152
    functionName: meta_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err meta_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_meta.c:159,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_meta.c:160,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_meta.c:161,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_meta.c:162,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_meta.c:163,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_meta.c:164,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_meta.c:165,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_meta.c:166,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_meta.c:167,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_meta.c:168,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 154
    functionDepth: 2
    functionLinenumber: 154
    functionLinenumberEnd: 173
    functionName: meta_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err meta_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_meta.c:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 180
    functionName: xml_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *xml_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:186,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:187,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 188
    functionName: xml_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void xml_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_meta.c:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 194
    functionName: xml_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_isom_read_null_terminated_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err xml_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_meta.c:202,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_meta.c:204,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_meta.c:204,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_meta.c:205,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 197
    functionDepth: 3
    functionLinenumber: 197
    functionLinenumberEnd: 207
    functionName: xml_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u8
    - strlen
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err xml_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_meta.c:213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 215
    functionName: xml_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err xml_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_meta.c:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 222
    functionName: bxml_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *bxml_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:228,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:229,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 230
    functionName: bxml_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void bxml_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_meta.c:237,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_meta.c:239,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 232
    functionDepth: 1
    functionLinenumber: 232
    functionLinenumberEnd: 241
    functionName: bxml_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bxml_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_meta.c:249,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_meta.c:251,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 244
    functionDepth: 3
    functionLinenumber: 244
    functionLinenumberEnd: 253
    functionName: bxml_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bxml_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 261
    functionName: bxml_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bxml_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_meta.c:266,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_meta.c:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 264
    functionDepth: 1
    functionLinenumber: 264
    functionLinenumberEnd: 269
    functionName: iloc_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *iloc_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_meta.c:274,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_meta.c:276,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:277,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_meta.c:279,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:280,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - location
    argTypes:
    - GF_ItemLocationEntry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 271
    functionDepth: 1
    functionLinenumber: 271
    functionLinenumberEnd: 281
    functionName: iloc_entry_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void iloc_entry_del(GF_ItemLocationEntry *location)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_meta.c:288,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_meta.c:290,1
    - Dst: iloc_entry_del
      Src: /src/gpac/src/isomedia/box_code_meta.c:291,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_meta.c:293,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:294,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 283
    functionDepth: 2
    functionLinenumber: 283
    functionLinenumberEnd: 295
    functionName: iloc_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - iloc_entry_del
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void iloc_box_del(GF_Box *s)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:302,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:303,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:304,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:305,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:307,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:309,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:312,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:313,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:315,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_meta.c:316,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:328,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_meta.c:334,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_meta.c:337,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:339,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:340,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:342,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_meta.c:343,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:346,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:347,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:352,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:353,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:354,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:359,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:360,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_meta.c:361,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:366,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_meta.c:371,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_meta.c:374,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:376,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:377,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:382,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:384,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:385,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 76
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 392
    functionName: iloc_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_bs_read_u32
    - GF_SAFEALLOC
    - gf_list_add
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iloc_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_meta.c:401,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:403,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:404,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:405,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:406,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_meta.c:407,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:409,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_meta.c:412,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_meta.c:415,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:417,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_meta.c:420,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:423,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:425,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:426,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_meta.c:427,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:428,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_meta.c:430,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:432,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:434,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:435,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 38
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 395
    functionDepth: 3
    functionLinenumber: 395
    functionLinenumberEnd: 439
    functionName: iloc_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_full_box_write
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_list_count
    - gf_bs_write_long_int
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iloc_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_meta.c:449,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_meta.c:451,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_meta.c:464,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_meta.c:465,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 441
    functionDepth: 1
    functionLinenumber: 441
    functionLinenumberEnd: 476
    functionName: iloc_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iloc_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_meta.c:481,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 479
    functionDepth: 1
    functionLinenumber: 479
    functionLinenumberEnd: 483
    functionName: pitm_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *pitm_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:489,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 485
    functionDepth: 0
    functionLinenumber: 485
    functionLinenumberEnd: 490
    functionName: pitm_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void pitm_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:495,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:496,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 492
    functionDepth: 1
    functionLinenumber: 492
    functionLinenumberEnd: 498
    functionName: pitm_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pitm_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_meta.c:506,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:508,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 501
    functionDepth: 3
    functionLinenumber: 501
    functionLinenumberEnd: 510
    functionName: pitm_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pitm_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 512
    functionDepth: 0
    functionLinenumber: 512
    functionLinenumberEnd: 518
    functionName: pitm_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pitm_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_meta.c:523,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_meta.c:524,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 526
      start: 521
    functionDepth: 1
    functionLinenumber: 521
    functionLinenumberEnd: 526
    functionName: ipro_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *ipro_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_meta.c:532,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:533,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 534
      start: 528
    functionDepth: 1
    functionLinenumber: 528
    functionLinenumberEnd: 534
    functionName: ipro_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void ipro_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_meta.c:540,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 544
      start: 536
    functionDepth: 1
    functionLinenumber: 536
    functionLinenumberEnd: 544
    functionName: ipro_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_LIST_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ipro_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:547,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:548,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_meta.c:549,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 545
    functionDepth: 2
    functionLinenumber: 545
    functionLinenumberEnd: 550
    functionName: ipro_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_isom_box_array_read
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ipro_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_meta.c:559,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_meta.c:561,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:562,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 553
    functionDepth: 3
    functionLinenumber: 553
    functionLinenumberEnd: 564
    functionName: ipro_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bs_write_u16
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ipro_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_meta.c:570,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 566
    functionDepth: 3
    functionLinenumber: 566
    functionLinenumberEnd: 573
    functionName: ipro_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position_list
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ipro_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_meta.c:578,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 576
    functionDepth: 1
    functionLinenumber: 576
    functionLinenumberEnd: 580
    functionName: infe_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *infe_box_new()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:586,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:587,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:588,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:589,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:590,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 591
      start: 582
    functionDepth: 0
    functionLinenumber: 582
    functionLinenumberEnd: 591
    functionName: infe_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void infe_box_del(GF_Box *s)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:599,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:600,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:601,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:604,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_meta.c:605,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_meta.c:608,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_meta.c:610,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:611,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_meta.c:619,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_code_meta.c:621,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_meta.c:623,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_code_meta.c:625,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_meta.c:627,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_code_meta.c:629,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:642,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_meta.c:645,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:649,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:653,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:657,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 65
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 662
      start: 593
    functionDepth: 1
    functionLinenumber: 593
    functionLinenumberEnd: 662
    functionName: infe_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_bs_read_u32
    - memcpy
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err infe_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_meta.c:671,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_meta.c:674,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:677,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:679,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_meta.c:681,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_meta.c:684,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_meta.c:685,1
    - Dst: gf_bs_write_byte
      Src: /src/gpac/src/isomedia/box_code_meta.c:687,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_meta.c:691,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_meta.c:692,1
    - Dst: gf_bs_write_byte
      Src: /src/gpac/src/isomedia/box_code_meta.c:695,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_meta.c:700,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_meta.c:701,1
    - Dst: gf_bs_write_byte
      Src: /src/gpac/src/isomedia/box_code_meta.c:704,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 708
      start: 665
    functionDepth: 3
    functionLinenumber: 665
    functionLinenumberEnd: 708
    functionName: infe_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u16
    - gf_bs_write_data
    - gf_bs_write_byte
    - gf_bs_write_u32
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err infe_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_meta.c:730,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_meta.c:733,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_meta.c:737,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 741
      start: 710
    functionDepth: 0
    functionLinenumber: 710
    functionLinenumberEnd: 741
    functionName: infe_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err infe_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_meta.c:746,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_meta.c:747,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 749
      start: 744
    functionDepth: 1
    functionLinenumber: 744
    functionLinenumberEnd: 749
    functionName: iinf_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *iinf_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_meta.c:755,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:756,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 757
      start: 751
    functionDepth: 1
    functionLinenumber: 751
    functionLinenumberEnd: 757
    functionName: iinf_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void iinf_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_meta.c:764,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 769
      start: 759
    functionDepth: 1
    functionLinenumber: 759
    functionLinenumberEnd: 769
    functionName: iinf_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_LIST_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iinf_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:776,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:777,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:779,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_meta.c:780,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_meta.c:782,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 783
      start: 771
    functionDepth: 2
    functionLinenumber: 771
    functionLinenumberEnd: 783
    functionName: iinf_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_isom_box_array_read
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iinf_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_meta.c:792,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_meta.c:794,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:796,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_meta.c:798,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 801
      start: 786
    functionDepth: 3
    functionLinenumber: 786
    functionLinenumberEnd: 801
    functionName: iinf_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bs_write_u16
    - gf_isom_full_box_write
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iinf_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_meta.c:809,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 811
      start: 803
    functionDepth: 3
    functionLinenumber: 803
    functionLinenumberEnd: 811
    functionName: iinf_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position_list
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iinf_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_meta.c:817,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 814
    functionDepth: 1
    functionLinenumber: 814
    functionLinenumberEnd: 819
    functionName: iref_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_LIST_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iref_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_meta.c:825,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:826,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 821
    functionDepth: 1
    functionLinenumber: 821
    functionLinenumberEnd: 827
    functionName: iref_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void iref_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_meta.c:832,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 833
      start: 830
    functionDepth: 2
    functionLinenumber: 830
    functionLinenumberEnd: 833
    functionName: iref_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iref_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_meta.c:837,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_meta.c:838,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 840
      start: 835
    functionDepth: 1
    functionLinenumber: 835
    functionLinenumberEnd: 840
    functionName: iref_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *iref_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_meta.c:846,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 844
    functionDepth: 3
    functionLinenumber: 844
    functionLinenumberEnd: 847
    functionName: iref_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iref_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_meta.c:853,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 855
      start: 849
    functionDepth: 3
    functionLinenumber: 849
    functionLinenumberEnd: 855
    functionName: iref_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position_list
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iref_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:863,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:864,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 865
      start: 859
    functionDepth: 0
    functionLinenumber: 859
    functionLinenumberEnd: 865
    functionName: ireftype_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void ireftype_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:872,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:873,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:874,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_meta.c:878,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_meta.c:882,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:883,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 886
      start: 867
    functionDepth: 1
    functionLinenumber: 867
    functionLinenumberEnd: 886
    functionName: ireftype_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ireftype_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_meta.c:890,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 892
      start: 888
    functionDepth: 1
    functionLinenumber: 888
    functionLinenumberEnd: 892
    functionName: ireftype_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *ireftype_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_meta.c:902,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:905,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:906,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_meta.c:908,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 911
      start: 896
    functionDepth: 2
    functionLinenumber: 896
    functionLinenumberEnd: 911
    functionName: ireftype_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ireftype_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 919
      start: 914
    functionDepth: 0
    functionLinenumber: 914
    functionLinenumberEnd: 919
    functionName: ireftype_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ireftype_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_meta.c:925,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 927
      start: 923
    functionDepth: 1
    functionLinenumber: 923
    functionLinenumberEnd: 927
    functionName: amve_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *amve_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_meta.c:934,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 935
      start: 930
    functionDepth: 0
    functionLinenumber: 930
    functionLinenumberEnd: 935
    functionName: amve_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void amve_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:940,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:941,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:942,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 944
      start: 937
    functionDepth: 1
    functionLinenumber: 937
    functionLinenumberEnd: 944
    functionName: amve_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err amve_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_meta.c:952,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:954,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:955,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_meta.c:956,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 958
      start: 949
    functionDepth: 2
    functionLinenumber: 949
    functionLinenumberEnd: 958
    functionName: amve_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err amve_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 964
      start: 960
    functionDepth: 0
    functionLinenumber: 960
    functionLinenumberEnd: 964
    functionName: amve_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_meta.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err amve_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 36
    functionName: ispe_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *ispe_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionName: ispe_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void ispe_box_del(GF_Box *a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:49,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:50,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:53,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/iff.c:54,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 57
    functionName: ispe_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_read_u32
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ispe_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/iff.c:67,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:69,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 60
    functionDepth: 3
    functionLinenumber: 60
    functionLinenumberEnd: 72
    functionName: ispe_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ispe_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:81,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 84
    functionName: ispe_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ispe_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 91
    functionName: a1lx_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *a1lx_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 97
    functionName: a1lx_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void a1lx_box_del(GF_Box *a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/iff.c:104,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/iff.c:105,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/iff.c:106,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/iff.c:109,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:110,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/iff.c:112,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:113,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 117
    functionName: a1lx_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err a1lx_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/iff.c:123,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/iff.c:127,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/iff.c:128,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:131,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:133,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 120
    functionDepth: 2
    functionLinenumber: 120
    functionLinenumberEnd: 137
    functionName: a1lx_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_isom_box_write_header
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err a1lx_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 152
    functionName: a1lx_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err a1lx_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 160
    functionName: a1op_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *a1op_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 166
    functionName: a1op_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void a1op_box_del(GF_Box *a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/iff.c:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 173
    functionName: a1op_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err a1op_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/iff.c:178,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:181,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 176
    functionDepth: 2
    functionLinenumber: 176
    functionLinenumberEnd: 183
    functionName: a1op_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err a1op_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 190
    functionName: a1op_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err a1op_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 198
    functionName: colr_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *colr_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:203,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:204,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 205
    functionName: colr_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void colr_box_del(GF_Box *a)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/iff.c:212,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/iff.c:213,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/iff.c:214,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/iff.c:215,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/iff.c:217,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/iff.c:219,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/iff.c:222,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:223,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/iff.c:226,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:227,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:228,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:229,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/iff.c:230,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/iff.c:233,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:234,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:235,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:236,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/iff.c:239,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/iff.c:241,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 36
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 246
    functionName: colr_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_bs_read_u16
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err colr_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/iff.c:253,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:257,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:258,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:259,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/iff.c:261,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:265,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:266,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:267,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:268,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:269,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:272,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:273,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:274,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:275,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:278,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/iff.c:279,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 249
    functionDepth: 2
    functionLinenumber: 249
    functionLinenumberEnd: 284
    functionName: colr_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u16
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err colr_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 306
    functionName: colr_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err colr_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:312,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 310
    functionDepth: 1
    functionLinenumber: 310
    functionLinenumberEnd: 314
    functionName: pixi_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *pixi_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:319,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:320,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 321
    functionName: pixi_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void pixi_box_del(GF_Box *a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/iff.c:329,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/iff.c:330,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/iff.c:332,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/iff.c:333,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:337,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/iff.c:338,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 323
    functionDepth: 1
    functionLinenumber: 323
    functionLinenumberEnd: 341
    functionName: pixi_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_malloc
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pixi_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/iff.c:352,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:354,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:356,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 344
    functionDepth: 3
    functionLinenumber: 344
    functionLinenumberEnd: 359
    functionName: pixi_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u8
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pixi_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:368,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 361
    functionDepth: 1
    functionLinenumber: 361
    functionLinenumberEnd: 371
    functionName: pixi_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pixi_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:377,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 375
    functionDepth: 1
    functionLinenumber: 375
    functionLinenumberEnd: 379
    functionName: rloc_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *rloc_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:384,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 381
    functionDepth: 0
    functionLinenumber: 381
    functionLinenumberEnd: 385
    functionName: rloc_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void rloc_box_del(GF_Box *a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:392,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:393,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:396,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/iff.c:397,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 387
    functionDepth: 1
    functionLinenumber: 387
    functionLinenumberEnd: 400
    functionName: rloc_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_read_u32
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rloc_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/iff.c:410,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:412,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:413,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 403
    functionDepth: 3
    functionLinenumber: 403
    functionLinenumberEnd: 415
    functionName: rloc_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rloc_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:424,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 427
      start: 417
    functionDepth: 1
    functionLinenumber: 417
    functionLinenumberEnd: 427
    functionName: rloc_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rloc_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:433,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 435
      start: 431
    functionDepth: 1
    functionLinenumber: 431
    functionLinenumberEnd: 435
    functionName: irot_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *irot_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:440,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 437
    functionDepth: 0
    functionLinenumber: 437
    functionLinenumberEnd: 441
    functionName: irot_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void irot_box_del(GF_Box *a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/iff.c:446,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 448
    functionName: irot_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err irot_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/iff.c:455,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:457,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 459
      start: 451
    functionDepth: 2
    functionLinenumber: 451
    functionLinenumberEnd: 459
    functionName: irot_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err irot_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 461
    functionDepth: 0
    functionLinenumber: 461
    functionLinenumberEnd: 466
    functionName: irot_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err irot_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:472,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 470
    functionDepth: 1
    functionLinenumber: 470
    functionLinenumberEnd: 474
    functionName: imir_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *imir_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 476
    functionDepth: 0
    functionLinenumber: 476
    functionLinenumberEnd: 480
    functionName: imir_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void imir_box_del(GF_Box *a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/iff.c:485,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 482
    functionDepth: 1
    functionLinenumber: 482
    functionLinenumberEnd: 489
    functionName: imir_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err imir_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/iff.c:496,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:498,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 492
    functionDepth: 2
    functionLinenumber: 492
    functionLinenumberEnd: 500
    functionName: imir_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err imir_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 502
    functionDepth: 0
    functionLinenumber: 502
    functionLinenumberEnd: 507
    functionName: imir_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err imir_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:513,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 511
    functionDepth: 1
    functionLinenumber: 511
    functionLinenumberEnd: 515
    functionName: ipco_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *ipco_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:520,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 517
    functionDepth: 0
    functionLinenumber: 517
    functionLinenumberEnd: 521
    functionName: ipco_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void ipco_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/iff.c:525,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 526
      start: 523
    functionDepth: 2
    functionLinenumber: 523
    functionLinenumberEnd: 526
    functionName: ipco_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ipco_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/iff.c:533,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 534
      start: 530
    functionDepth: 2
    functionLinenumber: 530
    functionLinenumberEnd: 534
    functionName: ipco_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ipco_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 539
      start: 536
    functionDepth: 0
    functionLinenumber: 536
    functionLinenumberEnd: 539
    functionName: ipco_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ipco_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:544,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 542
    functionDepth: 1
    functionLinenumber: 542
    functionLinenumberEnd: 546
    functionName: iprp_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *iprp_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:550,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 551
      start: 548
    functionDepth: 0
    functionLinenumber: 548
    functionLinenumberEnd: 551
    functionName: iprp_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void iprp_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/iff.c:558,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/iff.c:561,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 553
    functionDepth: 1
    functionLinenumber: 553
    functionLinenumberEnd: 567
    functionName: iprp_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iprp_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/iff.c:571,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 569
    functionDepth: 2
    functionLinenumber: 569
    functionLinenumberEnd: 572
    functionName: iprp_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iprp_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/iff.c:578,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 576
    functionDepth: 2
    functionLinenumber: 576
    functionLinenumberEnd: 579
    functionName: iprp_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iprp_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/iff.c:585,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/iff.c:586,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 581
    functionDepth: 2
    functionLinenumber: 581
    functionLinenumberEnd: 588
    functionName: iprp_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iprp_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:594,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/iff.c:595,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 592
    functionDepth: 1
    functionLinenumber: 592
    functionLinenumberEnd: 597
    functionName: ipma_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *ipma_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/iff.c:605,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/iff.c:608,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:610,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:611,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/iff.c:614,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:616,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 599
    functionDepth: 1
    functionLinenumber: 599
    functionLinenumberEnd: 617
    functionName: ipma_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void ipma_box_del(GF_Box *a)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/iff.c:625,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:626,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/iff.c:629,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/iff.c:631,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/iff.c:633,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:634,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/iff.c:636,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:637,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/iff.c:639,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/iff.c:640,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:644,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/iff.c:648,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 655
      start: 619
    functionDepth: 1
    functionLinenumber: 619
    functionLinenumberEnd: 655
    functionName: ipma_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_SAFEALLOC
    - gf_list_add
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - gf_bs_read_u8
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ipma_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/iff.c:665,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/iff.c:667,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:668,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/iff.c:670,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:672,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:674,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:676,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:679,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:681,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 686
      start: 658
    functionDepth: 3
    functionLinenumber: 658
    functionLinenumberEnd: 686
    functionName: ipma_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_full_box_write
    - gf_bs_write_u16
    - gf_list_count
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ipma_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/iff.c:694,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/iff.c:703,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 688
    functionDepth: 1
    functionLinenumber: 688
    functionLinenumberEnd: 711
    functionName: ipma_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ipma_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:717,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 715
    functionDepth: 1
    functionLinenumber: 715
    functionLinenumberEnd: 719
    functionName: grpl_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *grpl_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:724,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 725
      start: 721
    functionDepth: 0
    functionLinenumber: 721
    functionLinenumberEnd: 725
    functionName: grpl_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void grpl_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/iff.c:729,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 727
    functionDepth: 2
    functionLinenumber: 727
    functionLinenumberEnd: 730
    functionName: grpl_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err grpl_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/iff.c:737,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 734
    functionDepth: 2
    functionLinenumber: 734
    functionLinenumberEnd: 738
    functionName: grpl_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err grpl_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 743
      start: 740
    functionDepth: 0
    functionLinenumber: 740
    functionLinenumberEnd: 743
    functionName: grpl_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err grpl_box_size(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:751,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:752,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:753,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 747
    functionDepth: 0
    functionLinenumber: 747
    functionLinenumberEnd: 754
    functionName: grptype_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void grptype_box_del(GF_Box *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/iff.c:762,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:763,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:764,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/iff.c:768,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:772,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/iff.c:773,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/iff.c:777,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/iff.c:780,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 784
      start: 757
    functionDepth: 1
    functionLinenumber: 757
    functionLinenumberEnd: 784
    functionName: grptype_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_data
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err grptype_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:788,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 791
      start: 786
    functionDepth: 1
    functionLinenumber: 786
    functionLinenumberEnd: 791
    functionName: grptype_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *grptype_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/iff.c:801,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:805,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:806,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:809,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/iff.c:811,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 813
      start: 795
    functionDepth: 3
    functionLinenumber: 795
    functionLinenumberEnd: 813
    functionName: grptype_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err grptype_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 821
      start: 816
    functionDepth: 0
    functionLinenumber: 816
    functionLinenumberEnd: 821
    functionName: grptype_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err grptype_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:828,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 826
    functionDepth: 1
    functionLinenumber: 826
    functionLinenumberEnd: 830
    functionName: auxc_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *auxc_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:835,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:836,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:837,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 838
      start: 832
    functionDepth: 0
    functionLinenumber: 832
    functionLinenumberEnd: 838
    functionName: auxc_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void auxc_box_del(GF_Box *a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/iff.c:845,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/iff.c:848,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/iff.c:849,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 851
      start: 840
    functionDepth: 1
    functionLinenumber: 840
    functionLinenumberEnd: 851
    functionName: auxc_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_isom_read_null_terminated_string
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err auxc_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/iff.c:859,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/iff.c:863,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/iff.c:863,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:864,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/iff.c:865,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 868
      start: 854
    functionDepth: 3
    functionLinenumber: 854
    functionLinenumberEnd: 868
    functionName: auxc_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u8
    - strlen
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err auxc_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/iff.c:873,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 875
      start: 870
    functionDepth: 0
    functionLinenumber: 870
    functionLinenumberEnd: 875
    functionName: auxc_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err auxc_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:882,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:883,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 885
      start: 879
    functionDepth: 0
    functionLinenumber: 879
    functionLinenumberEnd: 885
    functionName: auxi_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void auxi_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/iff.c:890,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 891
      start: 887
    functionDepth: 1
    functionLinenumber: 887
    functionLinenumberEnd: 891
    functionName: auxi_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_isom_read_null_terminated_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err auxi_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:895,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 897
      start: 893
    functionDepth: 1
    functionLinenumber: 893
    functionLinenumberEnd: 897
    functionName: auxi_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *auxi_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/iff.c:906,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/iff.c:910,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/iff.c:910,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:911,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 913
      start: 901
    functionDepth: 3
    functionLinenumber: 901
    functionLinenumberEnd: 913
    functionName: auxi_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u8
    - strlen
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err auxi_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/iff.c:918,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 920
      start: 915
    functionDepth: 0
    functionLinenumber: 915
    functionLinenumberEnd: 920
    functionName: auxi_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err auxi_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:925,1
    - Dst: gf_isom_oinf_new_entry
      Src: /src/gpac/src/isomedia/iff.c:926,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 928
      start: 923
    functionDepth: 1
    functionLinenumber: 923
    functionLinenumberEnd: 928
    functionName: oinf_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_isom_oinf_new_entry
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *oinf_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_oinf_del_entry
      Src: /src/gpac/src/isomedia/iff.c:933,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:934,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 935
      start: 930
    functionDepth: 1
    functionLinenumber: 930
    functionLinenumberEnd: 935
    functionName: oinf_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_isom_oinf_del_entry
    - gf_free
    linkageType: ''
    returnType: void
    signature: void oinf_box_del(GF_Box *a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_oinf_read_entry
      Src: /src/gpac/src/isomedia/iff.c:940,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 941
      start: 937
    functionDepth: 1
    functionLinenumber: 937
    functionLinenumberEnd: 941
    functionName: oinf_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_isom_oinf_read_entry
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err oinf_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/iff.c:949,1
    - Dst: gf_isom_oinf_write_entry
      Src: /src/gpac/src/isomedia/iff.c:951,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 952
      start: 944
    functionDepth: 3
    functionLinenumber: 944
    functionLinenumberEnd: 952
    functionName: oinf_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_isom_oinf_write_entry
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err oinf_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_oinf_size_entry
      Src: /src/gpac/src/isomedia/iff.c:958,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 960
      start: 954
    functionDepth: 1
    functionLinenumber: 954
    functionLinenumberEnd: 960
    functionName: oinf_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_isom_oinf_size_entry
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err oinf_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:966,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 968
      start: 964
    functionDepth: 1
    functionLinenumber: 964
    functionLinenumberEnd: 968
    functionName: tols_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tols_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:972,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 973
      start: 970
    functionDepth: 0
    functionLinenumber: 970
    functionLinenumberEnd: 973
    functionName: tols_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void tols_box_del(GF_Box *a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/iff.c:979,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:980,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 982
      start: 975
    functionDepth: 1
    functionLinenumber: 975
    functionLinenumberEnd: 982
    functionName: tols_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tols_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/iff.c:990,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:992,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 994
      start: 985
    functionDepth: 3
    functionLinenumber: 985
    functionLinenumberEnd: 994
    functionName: tols_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tols_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1001
      start: 996
    functionDepth: 0
    functionLinenumber: 996
    functionLinenumberEnd: 1001
    functionName: tols_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tols_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:1008,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1010
      start: 1006
    functionDepth: 1
    functionLinenumber: 1006
    functionLinenumberEnd: 1010
    functionName: clli_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *clli_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1015,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1016
      start: 1012
    functionDepth: 0
    functionLinenumber: 1012
    functionLinenumberEnd: 1016
    functionName: clli_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void clli_box_del(GF_Box *a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/iff.c:1021,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:1022,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:1023,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1025
      start: 1018
    functionDepth: 1
    functionLinenumber: 1018
    functionLinenumberEnd: 1025
    functionName: clli_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err clli_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/iff.c:1033,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:1035,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:1036,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1038
      start: 1029
    functionDepth: 2
    functionLinenumber: 1029
    functionLinenumberEnd: 1038
    functionName: clli_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err clli_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1045
      start: 1040
    functionDepth: 0
    functionLinenumber: 1040
    functionLinenumberEnd: 1045
    functionName: clli_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err clli_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:1052,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1054
      start: 1050
    functionDepth: 1
    functionLinenumber: 1050
    functionLinenumberEnd: 1054
    functionName: mdcv_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *mdcv_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1059,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1060
      start: 1056
    functionDepth: 0
    functionLinenumber: 1056
    functionLinenumberEnd: 1060
    functionName: mdcv_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void mdcv_box_del(GF_Box *a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/iff.c:1066,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:1068,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:1069,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:1071,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:1072,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:1073,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:1074,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1077
      start: 1062
    functionDepth: 1
    functionLinenumber: 1062
    functionLinenumberEnd: 1077
    functionName: mdcv_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdcv_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/iff.c:1086,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:1090,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:1091,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:1093,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:1094,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:1095,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:1096,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1099
      start: 1081
    functionDepth: 2
    functionLinenumber: 1081
    functionLinenumberEnd: 1099
    functionName: mdcv_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_box_write_header
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdcv_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1106
      start: 1101
    functionDepth: 0
    functionLinenumber: 1101
    functionLinenumberEnd: 1106
    functionName: mdcv_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdcv_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:1113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1115
      start: 1111
    functionDepth: 1
    functionLinenumber: 1111
    functionLinenumberEnd: 1115
    functionName: ienc_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *ienc_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1120,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1122
      start: 1117
    functionDepth: 0
    functionLinenumber: 1117
    functionLinenumberEnd: 1122
    functionName: ienc_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void ienc_box_del(GF_Box *a)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/iff.c:1129,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/iff.c:1130,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/iff.c:1132,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/iff.c:1134,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/iff.c:1135,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/iff.c:1137,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/iff.c:1141,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/iff.c:1146,1
    - Dst: gf_cenc_validate_key_info
      Src: /src/gpac/src/isomedia/iff.c:1148,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1151
      start: 1124
    functionDepth: 1
    functionLinenumber: 1124
    functionLinenumberEnd: 1151
    functionName: ienc_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_cenc_validate_key_info
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ienc_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/iff.c:1161,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:1163,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/iff.c:1165,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/iff.c:1166,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:1168,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1172,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:1179,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/iff.c:1180,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1182
      start: 1154
    functionDepth: 3
    functionLinenumber: 1154
    functionLinenumberEnd: 1182
    functionName: ienc_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_write_data
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ienc_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1191
      start: 1184
    functionDepth: 0
    functionLinenumber: 1184
    functionLinenumberEnd: 1191
    functionName: ienc_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ienc_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:1198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1200
      start: 1196
    functionDepth: 1
    functionLinenumber: 1196
    functionLinenumberEnd: 1200
    functionName: iaux_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *iaux_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1205
      start: 1202
    functionDepth: 0
    functionLinenumber: 1202
    functionLinenumberEnd: 1205
    functionName: iaux_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void iaux_box_del(GF_Box *a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/iff.c:1211,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:1212,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:1213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1215
      start: 1207
    functionDepth: 1
    functionLinenumber: 1207
    functionLinenumberEnd: 1215
    functionName: iaux_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iaux_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/iff.c:1223,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:1225,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:1226,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1228
      start: 1218
    functionDepth: 3
    functionLinenumber: 1218
    functionLinenumberEnd: 1228
    functionName: iaux_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iaux_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1235
      start: 1230
    functionDepth: 0
    functionLinenumber: 1230
    functionLinenumberEnd: 1235
    functionName: iaux_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iaux_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:1241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1243
      start: 1239
    functionDepth: 1
    functionLinenumber: 1239
    functionLinenumberEnd: 1243
    functionName: fnch_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *fnch_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1249,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1251,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1253,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1254,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1255
      start: 1245
    functionDepth: 0
    functionLinenumber: 1245
    functionLinenumberEnd: 1255
    functionName: fnch_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void fnch_box_del(GF_Box *a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/isomedia/iff.c:1261,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/isomedia/iff.c:1262,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/isomedia/iff.c:1263,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1265
      start: 1257
    functionDepth: 1
    functionLinenumber: 1257
    functionLinenumberEnd: 1265
    functionName: fnch_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_utf8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fnch_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/iff.c:1273,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/isomedia/iff.c:1276,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/isomedia/iff.c:1277,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/isomedia/iff.c:1278,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1280
      start: 1268
    functionDepth: 3
    functionLinenumber: 1268
    functionLinenumberEnd: 1280
    functionName: fnch_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_utf8
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fnch_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/iff.c:1285,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/iff.c:1286,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/iff.c:1287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1289
      start: 1282
    functionDepth: 0
    functionLinenumber: 1282
    functionLinenumberEnd: 1289
    functionName: fnch_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fnch_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/iff.c:1294,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1296
      start: 1292
    functionDepth: 1
    functionLinenumber: 1292
    functionLinenumberEnd: 1296
    functionName: txlo_box_new
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *txlo_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1302,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1304,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1305,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1306
      start: 1298
    functionDepth: 0
    functionLinenumber: 1298
    functionLinenumberEnd: 1306
    functionName: txlo_box_del
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void txlo_box_del(GF_Box *a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:1314,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:1315,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:1316,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:1317,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:1318,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/iff.c:1319,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:1323,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:1324,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:1325,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:1326,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:1327,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:1328,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/iff.c:1330,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/isomedia/iff.c:1331,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/isomedia/iff.c:1332,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1334
      start: 1308
    functionDepth: 1
    functionLinenumber: 1308
    functionLinenumberEnd: 1334
    functionName: txlo_box_read
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_utf8
    - gf_bs_read_u32
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txlo_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/iff.c:1343,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:1346,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:1347,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:1348,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:1349,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:1350,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/iff.c:1351,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:1352,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/isomedia/iff.c:1353,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/isomedia/iff.c:1354,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1356
      start: 1337
    functionDepth: 3
    functionLinenumber: 1337
    functionLinenumberEnd: 1356
    functionName: txlo_box_write
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_bs_write_utf8
    - gf_isom_full_box_write
    - gf_bs_write_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txlo_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/iff.c:1362,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/iff.c:1363,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1365
      start: 1358
    functionDepth: 0
    functionLinenumber: 1358
    functionLinenumberEnd: 1365
    functionName: txlo_box_size
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txlo_box_size(GF_Box *s)
  - BBCount: 117
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta_item_count
      Src: /src/gpac/src/isomedia/iff.c:1394,1
    - Dst: gf_media_split_hevc_tiles
      Src: /src/gpac/src/isomedia/iff.c:1413,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/iff.c:1419,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/isomedia/iff.c:1422,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/iff.c:1424,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/iff.c:1428,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/isomedia/iff.c:1429,1
    - Dst: sprintf
      Src: /src/gpac/src/isomedia/iff.c:1434,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/isomedia/iff.c:1435,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/isomedia/iff.c:1436,1
    - Dst: gf_isom_iff_create_image_item_from_track
      Src: /src/gpac/src/isomedia/iff.c:1439,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1441,1
    - Dst: gf_isom_remove_track
      Src: /src/gpac/src/isomedia/iff.c:1443,1
    - Dst: gf_isom_meta_add_item_ref
      Src: /src/gpac/src/isomedia/iff.c:1445,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/isomedia/iff.c:1451,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/isomedia/iff.c:1452,1
    - Dst: gf_isom_iff_create_image_item_from_track
      Src: /src/gpac/src/isomedia/iff.c:1455,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1460,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/iff.c:1463,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1464,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/iff.c:1466,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/iff.c:1472,1
    - Dst: gf_isom_get_meta_item_count
      Src: /src/gpac/src/isomedia/iff.c:1484,1
    - Dst: gf_isom_get_meta_item_by_id
      Src: /src/gpac/src/isomedia/iff.c:1486,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1488,1
    - Dst: gf_isom_meta_get_item_ref_count
      Src: /src/gpac/src/isomedia/iff.c:1496,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/iff.c:1496,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1498,1
    - Dst: gf_isom_get_meta_item_info
      Src: /src/gpac/src/isomedia/iff.c:1503,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/isomedia/iff.c:1508,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/iff.c:1514,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/iff.c:1515,1
    - Dst: gf_isom_extract_meta_item_mem
      Src: /src/gpac/src/isomedia/iff.c:1547,1
    - Dst: gf_isom_add_meta_item_memory
      Src: /src/gpac/src/isomedia/iff.c:1550,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1551,1
    - Dst: gf_isom_add_meta_item_sample_ref
      Src: /src/gpac/src/isomedia/iff.c:1553,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1559,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/isomedia/iff.c:1567,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/isomedia/iff.c:1570,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/isomedia/iff.c:1571,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/isomedia/iff.c:1573,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/isomedia/iff.c:1574,1
    - Dst: gf_isom_get_sample_for_media_time
      Src: /src/gpac/src/isomedia/iff.c:1576,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1581,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1588,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/iff.c:1590,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/iff.c:1594,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/iff.c:1596,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1603,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/isomedia/iff.c:1611,1
    - Dst: gf_isom_is_media_encrypted
      Src: /src/gpac/src/isomedia/iff.c:1612,1
    - Dst: gf_isom_is_cenc_media
      Src: /src/gpac/src/isomedia/iff.c:1613,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/src/isomedia/iff.c:1614,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1618,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/iff.c:1631,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/src/isomedia/iff.c:1633,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/iff.c:1643,1
    - Dst: gf_isom_svc_config_get
      Src: /src/gpac/src/isomedia/iff.c:1645,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/iff.c:1655,1
    - Dst: gf_isom_mvc_config_get
      Src: /src/gpac/src/isomedia/iff.c:1657,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/iff.c:1673,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/src/isomedia/iff.c:1675,1
    - Dst: gf_isom_lhvc_config_get
      Src: /src/gpac/src/isomedia/iff.c:1685,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/iff.c:1697,1
    - Dst: gf_isom_av1_config_get
      Src: /src/gpac/src/isomedia/iff.c:1699,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/iff.c:1716,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/isomedia/iff.c:1717,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1719,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1720,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/iff.c:1723,1
    - Dst: gf_media_av1_layer_size_get
      Src: /src/gpac/src/isomedia/iff.c:1725,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1727,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/iff.c:1735,1
    - Dst: gf_isom_vvc_config_get
      Src: /src/gpac/src/isomedia/iff.c:1737,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1748,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1753,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/iff.c:1753,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/isomedia/iff.c:1758,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1760,1
    - Dst: gf_isom_get_pixel_aspect_ratio
      Src: /src/gpac/src/isomedia/iff.c:1763,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1765,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/iff.c:1786,1
    - Dst: gf_isom_get_cenc_info
      Src: /src/gpac/src/isomedia/iff.c:1787,1
    - Dst: gf_isom_get_sample_cenc_info
      Src: /src/gpac/src/isomedia/iff.c:1788,1
    - Dst: gf_isom_cenc_get_sample_aux_info
      Src: /src/gpac/src/isomedia/iff.c:1793,1
    - Dst: gf_isom_get_pssh_count
      Src: /src/gpac/src/isomedia/iff.c:1804,1
    - Dst: gf_isom_get_pssh_info
      Src: /src/gpac/src/isomedia/iff.c:1813,1
    - Dst: gf_isom_cenc_set_pssh
      Src: /src/gpac/src/isomedia/iff.c:1815,1
    - Dst: gf_isom_meta_get_next_item_id
      Src: /src/gpac/src/isomedia/iff.c:1824,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1829,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1831,1
    - Dst: gf_isom_add_meta_item_sample_ref
      Src: /src/gpac/src/isomedia/iff.c:1833,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1837,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1839,1
    - Dst: gf_isom_add_meta_item_memory
      Src: /src/gpac/src/isomedia/iff.c:1841,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/isomedia/iff.c:1847,1
    - Dst: gf_isom_reset_alt_brands
      Src: /src/gpac/src/isomedia/iff.c:1848,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/iff.c:1878,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/iff.c:1880,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/iff.c:1884,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1891,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/iff.c:1892,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/iff.c:1893,1
    CyclomaticComplexity: 168
    EdgeCount: 168
    ICount: 515
    argCount: 9
    argNames:
    - movie
    - root_meta
    - meta_track_number
    - imported_track
    - item_name
    - item_id
    - image_props
    - item_extent_refs
    - sample_number
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - u32
    - char*
    - u32
    - GF_ImageItemProperties*
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1896
      start: 1370
    functionDepth: 4
    functionLinenumber: 1370
    functionLinenumberEnd: 1896
    functionName: gf_isom_iff_create_image_item_from_track_internal
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_get_sample_for_media_time
    - gf_isom_add_meta_item_memory
    - gf_isom_get_sample_count
    - gf_isom_vvc_config_get
    - gf_isom_meta_get_next_item_id
    - gf_list_count
    - memset
    - gf_isom_get_meta_item_count
    - gf_isom_meta_get_item_ref_count
    - gf_isom_get_original_format_type
    - gf_isom_set_brand_info
    - gf_isom_mvc_config_get
    - gf_isom_hevc_config_get
    - gf_isom_svc_config_get
    - gf_4cc_to_str
    - gf_list_new
    - gf_list_get
    - gf_isom_remove_track
    - gf_list_pop_back
    - gf_isom_cenc_set_pssh
    - gf_isom_box_del
    - memcpy
    - gf_isom_sample_del
    - gf_isom_get_media_subtype
    - gf_isom_get_reference
    - sprintf
    - gf_media_av1_layer_size_get
    - gf_list_add
    - gf_isom_iff_create_image_item_from_track
    - gf_isom_box_new
    - gf_isom_get_visual_info
    - gf_dynstrcat
    - gf_isom_get_meta_item_info
    - gf_isom_get_sample_cenc_info
    - gf_isom_get_meta_image_props
    - gf_isom_get_sample
    - gf_isom_last_error
    - GF_LOG
    - gf_isom_get_pixel_aspect_ratio
    - gf_isom_get_cenc_info
    - gf_isom_is_media_encrypted
    - gf_isom_cenc_get_sample_aux_info
    - gf_media_split_hevc_tiles
    - gf_malloc
    - gf_list_del
    - gf_isom_is_cenc_media
    - gf_isom_get_pssh_count
    - gf_isom_lhvc_config_get
    - gf_isom_meta_add_item_ref
    - gf_isom_avc_config_get
    - gf_isom_get_pssh_info
    - gf_isom_get_reference_count
    - gf_isom_add_meta_item_sample_ref
    - gf_isom_get_media_timescale
    - gf_isom_av1_config_get
    - gf_isom_get_meta_item_by_id
    - GF_4CC
    - gf_isom_extract_meta_item_mem
    - gf_isom_reset_alt_brands
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_iff_create_image_item_from_track_internal(GF_ISOFile
      *movie, Bool root_meta, u32 meta_track_number, u32 imported_track, const char
      *item_name, u32 item_id, GF_ImageItemProperties *image_props, GF_List *item_extent_refs,
      u32 sample_number)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/iff.c:1901,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1904,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1908,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/iff.c:1911,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:1913,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:1914,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:1915,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:1916,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:1917,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:1918,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/iff.c:1921,1
    - Dst: gf_isom_add_meta_item_memory
      Src: /src/gpac/src/isomedia/iff.c:1922,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1923,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/iff.c:1924,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 6
    argNames:
    - movie
    - root_meta
    - meta_track_number
    - item_name
    - item_id
    - image_props
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - char*
    - u32*
    - GF_ImageItemProperties*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1926
      start: 1898
    functionDepth: 1
    functionLinenumber: 1898
    functionLinenumberEnd: 1926
    functionName: gf_isom_iff_create_image_grid_item_internal
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_add_meta_item_memory
    - gf_bs_new
    - GF_LOG
    - gf_bs_write_u16
    - gf_bs_get_content
    - gf_bs_del
    - GF_4CC
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_iff_create_image_grid_item_internal(GF_ISOFile *movie,
      Bool root_meta, u32 meta_track_number, const char *item_name, u32 *item_id,
      GF_ImageItemProperties *image_props)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_iff_create_image_grid_item_internal
      Src: /src/gpac/src/isomedia/iff.c:1931,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - movie
    - root_meta
    - meta_track_number
    - item_name
    - item_id
    - image_props
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - char*
    - u32
    - GF_ImageItemProperties*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1932
      start: 1928
    functionDepth: 2
    functionLinenumber: 1928
    functionLinenumberEnd: 1932
    functionName: gf_isom_iff_create_image_grid_item
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 1
    functionsReached:
    - gf_isom_iff_create_image_grid_item_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_iff_create_image_grid_item(GF_ISOFile *movie, Bool
      root_meta, u32 meta_track_number, const char *item_name, u32 item_id, GF_ImageItemProperties
      *image_props)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta_item_count
      Src: /src/gpac/src/isomedia/iff.c:1945,1
    - Dst: gf_isom_get_meta_item_info
      Src: /src/gpac/src/isomedia/iff.c:1948,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/iff.c:1953,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/isomedia/iff.c:1954,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1961,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1962,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/iff.c:1965,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1972,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1973,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:2012,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/iff.c:2019,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/iff.c:2021,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:2027,1
    - Dst: gf_isom_iff_create_image_grid_item_internal
      Src: /src/gpac/src/isomedia/iff.c:2029,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:2031,1
    - Dst: gf_isom_meta_add_item_ref
      Src: /src/gpac/src/isomedia/iff.c:2036,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/iff.c:2036,1
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/iff.c:2043,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/iff.c:2047,1
    - Dst: gf_isom_set_meta_primary_item
      Src: /src/gpac/src/isomedia/iff.c:2054,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:2058,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 106
    argCount: 6
    argNames:
    - movie
    - root_meta
    - meta_track_number
    - item_name
    - item_id
    - image_props
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - char*
    - u32
    - GF_ImageItemProperties*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2060
      start: 1934
    functionDepth: 2
    functionLinenumber: 1934
    functionLinenumberEnd: 2060
    functionName: iff_create_auto_grid
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_meta_add_item_ref
    - GF_LOG
    - memcpy
    - memset
    - gf_isom_get_meta_item_count
    - GF_4CC
    - gf_isom_get_meta_item_info
    - gf_isom_get_meta
    - gf_isom_iff_create_image_grid_item_internal
    - gf_isom_set_meta_primary_item
    - gf_list_enum
    - gf_isom_get_meta_image_props
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iff_create_auto_grid(GF_ISOFile *movie, Bool root_meta, u32
      meta_track_number, const char *item_name, u32 item_id, GF_ImageItemProperties
      *image_props)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/iff.c:2067,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:2070,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/iff.c:2083,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:2085,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:2086,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:2087,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:2088,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:2089,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:2090,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:2091,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:2092,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:2094,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:2095,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/iff.c:2099,1
    - Dst: gf_isom_add_meta_item_memory
      Src: /src/gpac/src/isomedia/iff.c:2100,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:2101,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/iff.c:2102,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 34
    argCount: 6
    argNames:
    - movie
    - root_meta
    - meta_track_number
    - item_name
    - item_id
    - image_props
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - char*
    - u32
    - GF_ImageItemProperties*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2104
      start: 2062
    functionDepth: 1
    functionLinenumber: 2062
    functionLinenumberEnd: 2104
    functionName: gf_isom_iff_create_image_overlay_item
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_isom_add_meta_item_memory
    - gf_bs_new
    - GF_LOG
    - gf_bs_write_u16
    - gf_bs_get_content
    - gf_bs_del
    - GF_4CC
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_iff_create_image_overlay_item(GF_ISOFile *movie,
      Bool root_meta, u32 meta_track_number, const char *item_name, u32 item_id, GF_ImageItemProperties
      *image_props)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/iff.c:2109,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:2111,1
    - Dst: gf_isom_add_meta_item_memory
      Src: /src/gpac/src/isomedia/iff.c:2113,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 6
    argNames:
    - movie
    - root_meta
    - meta_track_number
    - item_name
    - item_id
    - image_props
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - char*
    - u32
    - GF_ImageItemProperties*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2115
      start: 2106
    functionDepth: 1
    functionLinenumber: 2106
    functionLinenumberEnd: 2115
    functionName: gf_isom_iff_create_image_identity_item
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_isom_add_meta_item_memory
    - GF_4CC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_iff_create_image_identity_item(GF_ISOFile *movie,
      Bool root_meta, u32 meta_track_number, const char *item_name, u32 item_id, GF_ImageItemProperties
      *image_props)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: iff_create_auto_grid
      Src: /src/gpac/src/isomedia/iff.c:2122,1
    - Dst: gf_isom_iff_create_image_item_from_track_internal
      Src: /src/gpac/src/isomedia/iff.c:2124,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 8
    argNames:
    - movie
    - root_meta
    - meta_track_number
    - imported_track
    - item_name
    - item_id
    - image_props
    - item_extent_refs
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - u32
    - char*
    - u32
    - GF_ImageItemProperties*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2125
      start: 2117
    functionDepth: 5
    functionLinenumber: 2117
    functionLinenumberEnd: 2125
    functionName: gf_isom_iff_create_image_item_from_track
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 2
    functionsReached:
    - gf_isom_iff_create_image_item_from_track_internal
    - iff_create_auto_grid
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_iff_create_image_item_from_track(GF_ISOFile *movie,
      Bool root_meta, u32 meta_track_number, u32 imported_track, const char *item_name,
      u32 item_id, GF_ImageItemProperties *image_props, GF_List *item_extent_refs)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/isomedia/avc_ext.c:36,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/isomedia/avc_ext.c:72,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/avc_ext.c:76,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 52
    argCount: 2
    argNames:
    - mdia
    - _entry
    argTypes:
    - GF_MediaBox*
    - GF_SampleEntryBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 89
    functionName: gf_isom_is_nalu_based_entry
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 2
    functionsReached:
    - gf_isom_is_video_handler_type
    - gf_isom_box_find_child
    linkageType: ''
    returnType: Bool
    signature: Bool gf_isom_is_nalu_based_entry(GF_MediaBox *mdia, GF_SampleEntryBox
      *_entry)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:94,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:96,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:97,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:98,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/avc_ext.c:99,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - nalus
    - bs
    - rewrite_start_codes
    - nal_unit_size_field
    argTypes:
    - GF_List*
    - GF_BitStream*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 101
    functionName: rewrite_nalus_list
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_bs_write_int
    - gf_list_count
    - gf_bs_write_data
    - gf_bs_write_u32
    linkageType: ''
    returnType: void
    signature: void rewrite_nalus_list(GF_List *nalus, GF_BitStream *bs, Bool rewrite_start_codes,
      u32 nal_unit_size_field)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/avc_ext.c:117,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:118,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/avc_ext.c:119,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:122,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:124,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:126,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:129,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:132,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:134,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:138,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:144,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:145,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:146,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:147,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/avc_ext.c:149,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/isomedia/avc_ext.c:152,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/avc_ext.c:155,1
    - Dst: gf_isom_get_nalu_extract_mode
      Src: /src/gpac/src/isomedia/avc_ext.c:159,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/isomedia/avc_ext.c:164,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:166,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/isomedia/avc_ext.c:170,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/avc_ext.c:174,1
    - Dst: stbl_findEntryForTime
      Src: /src/gpac/src/isomedia/avc_ext.c:178,1
    - Dst: Media_GetSample
      Src: /src/gpac/src/isomedia/avc_ext.c:185,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:191,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:193,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:194,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:195,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:197,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:198,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:200,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:201,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/isomedia/avc_ext.c:205,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/avc_ext.c:209,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:211,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/avc_ext.c:214,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/avc_ext.c:218,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/avc_ext.c:219,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/avc_ext.c:227,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/avc_ext.c:229,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:233,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:235,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/avc_ext.c:238,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/avc_ext.c:241,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/avc_ext.c:248,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/isomedia/avc_ext.c:250,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/avc_ext.c:257,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/avc_ext.c:262,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/avc_ext.c:264,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:266,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:268,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:270,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/avc_ext.c:271,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 146
    argCount: 11
    argNames:
    - file
    - mdia
    - sampleNumber
    - sampleDTS
    - nal_size
    - nal_hdr
    - nal_unit_size_field
    - is_hevc
    - rewrite_ps
    - rewrite_start_codes
    - extractor_mode
    argTypes:
    - GF_ISOFile*
    - GF_MediaBox*
    - u32
    - u64
    - u32
    - u16
    - u32
    - Bool
    - Bool
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 104
    functionDepth: 3
    functionLinenumber: 104
    functionLinenumberEnd: 275
    functionName: process_extractor
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_new
    - gf_bs_available
    - gf_isom_get_track_by_id
    - gf_isom_set_nalu_extract_mode
    - gf_isom_get_nalu_extract_mode
    - gf_bs_write_u32
    - Media_GetSample
    - gf_realloc
    - gf_bs_skip_bytes
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_isom_sample_new
    - stbl_findEntryForTime
    - Track_FindRef
    - gf_bs_read_u8
    - gf_isom_get_track_box
    - gf_bs_reassign_buffer
    - gf_bs_read_int
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err process_extractor(GF_ISOFile *file, GF_MediaBox *mdia, u32 sampleNumber,
      u64 sampleDTS, u32 nal_size, u16 nal_hdr, u32 nal_unit_size_field, Bool is_hevc,
      Bool rewrite_ps, Bool rewrite_start_codes, u32 extractor_mode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/isomedia/avc_ext.c:280,1
    - Dst: Media_GetSample
      Src: /src/gpac/src/isomedia/avc_ext.c:282,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - mdia
    - sampleNumber
    - sample
    argTypes:
    - GF_MediaBox*
    - u32
    - GF_ISOSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 277
    functionDepth: 3
    functionLinenumber: 277
    functionLinenumberEnd: 290
    functionName: check_sap2
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - memset
    - Media_GetSample
    linkageType: ''
    returnType: GF_ISOSAPType
    signature: GF_ISOSAPType check_sap2(GF_MediaBox *mdia, u32 sampleNumber, GF_ISOSample
      *sample)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: check_sap2
      Src: /src/gpac/src/isomedia/avc_ext.c:303,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - mdia
    - sampleNumber
    - sample
    - nal_type
    argTypes:
    - GF_MediaBox*
    - u32
    - GF_ISOSample*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 293
    functionDepth: 4
    functionLinenumber: 293
    functionLinenumberEnd: 307
    functionName: hevc_sap_type_from_nal_type
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - check_sap2
    linkageType: ''
    returnType: GF_ISOSAPType
    signature: GF_ISOSAPType hevc_sap_type_from_nal_type(GF_MediaBox *mdia, u32 sampleNumber,
      GF_ISOSample *sample, u8 nal_type)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/avc_ext.c:332,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/isomedia/avc_ext.c:334,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/avc_ext.c:342,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:344,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:347,1
    - Dst: check_sap2
      Src: /src/gpac/src/isomedia/avc_ext.c:359,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/avc_ext.c:370,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:372,1
    - Dst: check_sap2
      Src: /src/gpac/src/isomedia/avc_ext.c:381,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/avc_ext.c:392,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:394,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/avc_ext.c:399,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 84
    argCount: 4
    argNames:
    - mdia
    - sampleNumber
    - sample
    - entry
    argTypes:
    - GF_MediaBox*
    - u32
    - GF_ISOSample*
    - GF_MPEGVisualSampleEntryBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 309
    functionDepth: 4
    functionLinenumber: 309
    functionLinenumberEnd: 403
    functionName: gf_isom_nalu_get_sample_sap
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 1
    functionsReached:
    - gf_bs_new
    - check_sap2
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_bs_available
    - gf_bs_read_u8
    - gf_bs_reassign_buffer
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_ISOSAPType
    signature: GF_ISOSAPType gf_isom_nalu_get_sample_sap(GF_MediaBox *mdia, u32 sampleNumber,
      GF_ISOSample *sample, GF_MPEGVisualSampleEntryBox *entry)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:410,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:412,1
    - Dst: rewrite_nalus_list
      Src: /src/gpac/src/isomedia/avc_ext.c:417,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:421,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:423,1
    - Dst: rewrite_nalus_list
      Src: /src/gpac/src/isomedia/avc_ext.c:428,1
    - Dst: rewrite_nalus_list
      Src: /src/gpac/src/isomedia/avc_ext.c:433,1
    - Dst: rewrite_nalus_list
      Src: /src/gpac/src/isomedia/avc_ext.c:434,1
    - Dst: rewrite_nalus_list
      Src: /src/gpac/src/isomedia/avc_ext.c:435,1
    - Dst: rewrite_nalus_list
      Src: /src/gpac/src/isomedia/avc_ext.c:440,1
    - Dst: rewrite_nalus_list
      Src: /src/gpac/src/isomedia/avc_ext.c:441,1
    - Dst: rewrite_nalus_list
      Src: /src/gpac/src/isomedia/avc_ext.c:445,1
    - Dst: rewrite_nalus_list
      Src: /src/gpac/src/isomedia/avc_ext.c:446,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 39
    argCount: 6
    argNames:
    - ps_bs
    - rewrite_start_codes
    - nal_unit_size_field
    - entry
    - is_hevc
    - has_vps
    argTypes:
    - GF_BitStream*
    - Bool
    - u32
    - GF_MPEGVisualSampleEntryBox*
    - Bool
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 405
    functionDepth: 2
    functionLinenumber: 405
    functionLinenumberEnd: 449
    functionName: nalu_merge_ps
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - rewrite_nalus_list
    linkageType: ''
    returnType: void
    signature: void nalu_merge_ps(GF_BitStream *ps_bs, Bool rewrite_start_codes, u32
      nal_unit_size_field, GF_MPEGVisualSampleEntryBox *entry, Bool is_hevc, Bool
      *has_vps)
  - BBCount: 114
    BranchProfiles: []
    Callsites:
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/avc_ext.c:474,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/avc_ext.c:486,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/isomedia/avc_ext.c:492,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/isomedia/avc_ext.c:494,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/isomedia/avc_ext.c:496,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/isomedia/avc_ext.c:497,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/isomedia/avc_ext.c:504,1
    - Dst: gf_isom_get_sample_ex
      Src: /src/gpac/src/isomedia/avc_ext.c:511,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/avc_ext.c:515,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/avc_ext.c:518,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/avc_ext.c:519,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/avc_ext.c:522,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/isomedia/avc_ext.c:529,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/isomedia/avc_ext.c:534,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/isomedia/avc_ext.c:537,1
    - Dst: gf_isom_get_sample_ex
      Src: /src/gpac/src/isomedia/avc_ext.c:544,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/avc_ext.c:548,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/avc_ext.c:551,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/isomedia/avc_ext.c:558,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/avc_ext.c:560,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/isomedia/avc_ext.c:562,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:563,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:564,1
    - Dst: gf_isom_nalu_get_sample_sap
      Src: /src/gpac/src/isomedia/avc_ext.c:570,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/avc_ext.c:633,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/avc_ext.c:634,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/avc_ext.c:639,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/avc_ext.c:642,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/avc_ext.c:645,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/isomedia/avc_ext.c:651,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/avc_ext.c:661,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/avc_ext.c:662,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/isomedia/avc_ext.c:666,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/isomedia/avc_ext.c:671,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/isomedia/avc_ext.c:672,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:685,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:686,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:693,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:695,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:696,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:697,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:698,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:701,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:702,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:704,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:705,1
    - Dst: GetTrackbyID
      Src: /src/gpac/src/isomedia/avc_ext.c:716,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:719,1
    - Dst: nalu_merge_ps
      Src: /src/gpac/src/isomedia/avc_ext.c:722,1
    - Dst: nalu_merge_ps
      Src: /src/gpac/src/isomedia/avc_ext.c:726,1
    - Dst: gf_bs_transfer
      Src: /src/gpac/src/isomedia/avc_ext.c:742,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/avc_ext.c:746,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/isomedia/avc_ext.c:747,1
    - Dst: gf_bs_transfer
      Src: /src/gpac/src/isomedia/avc_ext.c:760,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/avc_ext.c:762,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/isomedia/avc_ext.c:763,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:769,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/avc_ext.c:774,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:775,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/avc_ext.c:776,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/avc_ext.c:777,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/avc_ext.c:782,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:785,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:788,1
    - Dst: gf_bs_transfer
      Src: /src/gpac/src/isomedia/avc_ext.c:795,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/avc_ext.c:803,1
    - Dst: process_extractor
      Src: /src/gpac/src/isomedia/avc_ext.c:808,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/avc_ext.c:819,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:821,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:823,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:825,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/avc_ext.c:826,1
    - Dst: hevc_sap_type_from_nal_type
      Src: /src/gpac/src/isomedia/avc_ext.c:837,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/avc_ext.c:838,1
    - Dst: gf_isom_nalu_sample_rewrite
      Src: /src/gpac/src/isomedia/avc_ext.c:840,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/avc_ext.c:845,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/avc_ext.c:850,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/avc_ext.c:853,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:858,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:860,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:862,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/avc_ext.c:863,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/avc_ext.c:873,1
    - Dst: process_extractor
      Src: /src/gpac/src/isomedia/avc_ext.c:877,1
    - Dst: gf_bs_transfer
      Src: /src/gpac/src/isomedia/avc_ext.c:891,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/avc_ext.c:894,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:896,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:898,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:900,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/avc_ext.c:901,1
    - Dst: gf_bs_transfer
      Src: /src/gpac/src/isomedia/avc_ext.c:906,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/isomedia/avc_ext.c:909,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/avc_ext.c:919,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/isomedia/avc_ext.c:925,1
    CyclomaticComplexity: 141
    EdgeCount: 141
    ICount: 362
    argCount: 4
    argNames:
    - mdia
    - sample
    - sampleNumber
    - entry
    argTypes:
    - GF_MediaBox*
    - GF_ISOSample*
    - u32
    - GF_MPEGVisualSampleEntryBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 930
      start: 451
    functionDepth: 5
    functionLinenumber: 451
    functionLinenumberEnd: 930
    functionName: gf_isom_nalu_sample_rewrite
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 2
    functionsReached:
    - gf_bs_read_data
    - gf_bs_new
    - gf_isom_get_sample_ex
    - gf_bs_write_u16
    - gf_list_find
    - gf_bs_read_u16
    - gf_bs_available
    - gf_bs_write_u32
    - gf_realloc
    - gf_list_get
    - memcpy
    - gf_bs_get_content
    - GetTrackbyID
    - gf_isom_get_media_subtype
    - gf_isom_get_reference
    - hevc_sap_type_from_nal_type
    - gf_bs_skip_bytes
    - memmove
    - GF_LOG
    - gf_bs_write_int
    - process_extractor
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_isom_sample_new
    - gf_isom_nalu_sample_rewrite
    - Track_FindRef
    - gf_bs_read_u8
    - gf_isom_nalu_get_sample_sap
    - gf_bs_get_content_no_truncate
    - gf_bs_reassign_buffer
    - gf_malloc
    - gf_bs_seek
    - nalu_merge_ps
    - gf_isom_get_reference_count
    - gf_bs_transfer
    - gf_bs_del
    - gf_bs_read_int
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_nalu_sample_rewrite(GF_MediaBox *mdia, GF_ISOSample
      *sample, u32 sampleNumber, GF_MPEGVisualSampleEntryBox *entry)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/avc_ext.c:940,1
    - Dst: gf_odf_hevc_cfg_write_bs
      Src: /src/gpac/src/isomedia/avc_ext.c:941,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/avc_ext.c:943,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/avc_ext.c:944,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/avc_ext.c:945,1
    - Dst: gf_odf_hevc_cfg_read_bs
      Src: /src/gpac/src/isomedia/avc_ext.c:947,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/avc_ext.c:949,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:950,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_HEVCConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 952
      start: 932
    functionDepth: 1
    functionLinenumber: 932
    functionLinenumberEnd: 952
    functionName: HEVC_DuplicateConfig
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_del
    - gf_odf_hevc_cfg_read_bs
    - gf_odf_hevc_cfg_write_bs
    linkageType: ''
    returnType: GF_HEVCConfig
    signature: GF_HEVCConfig *HEVC_DuplicateConfig(GF_HEVCConfig *cfg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/avc_ext.c:962,1
    - Dst: gf_odf_vvc_cfg_write_bs
      Src: /src/gpac/src/isomedia/avc_ext.c:963,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/avc_ext.c:965,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/avc_ext.c:966,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/avc_ext.c:967,1
    - Dst: gf_odf_vvc_cfg_read_bs
      Src: /src/gpac/src/isomedia/avc_ext.c:969,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/avc_ext.c:970,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:971,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_VVCConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 973
      start: 954
    functionDepth: 1
    functionLinenumber: 954
    functionLinenumberEnd: 973
    functionName: VVC_DuplicateConfig
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_vvc_cfg_read_bs
    - gf_bs_new
    - gf_bs_get_content
    - gf_odf_vvc_cfg_write_bs
    - gf_bs_del
    linkageType: ''
    returnType: GF_VVCConfig
    signature: GF_VVCConfig *VVC_DuplicateConfig(GF_VVCConfig *cfg)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_avc_cfg_new
      Src: /src/gpac/src/isomedia/avc_ext.c:982,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:993,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:995,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:996,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:999,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/avc_ext.c:1000,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:1001,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1004,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:1006,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:1007,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:1010,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/avc_ext.c:1011,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:1012,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/avc_ext.c:1016,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1017,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:1019,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:1020,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:1023,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/avc_ext.c:1024,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:1025,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 47
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_AVCConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1029
      start: 975
    functionDepth: 1
    functionLinenumber: 975
    functionLinenumberEnd: 1029
    functionName: AVC_DuplicateConfig
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_new
    - memcpy
    - gf_list_count
    - gf_list_add
    - gf_odf_avc_cfg_new
    - gf_malloc
    linkageType: ''
    returnType: GF_AVCConfig
    signature: GF_AVCConfig *AVC_DuplicateConfig(GF_AVCConfig *cfg)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: AVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:1035,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1038,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:1039,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/avc_ext.c:1040,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/avc_ext.c:1041,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1043,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:1044,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/avc_ext.c:1045,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/avc_ext.c:1046,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1048,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - dst_cfg
    - src_cfg
    argTypes:
    - GF_AVCConfig*
    - GF_AVCConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1049
      start: 1031
    functionDepth: 2
    functionLinenumber: 1031
    functionLinenumberEnd: 1049
    functionName: merge_avc_config
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 1
    functionsReached:
    - gf_list_insert
    - gf_list_get
    - gf_odf_avc_cfg_del
    - gf_list_count
    - AVC_DuplicateConfig
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void merge_avc_config(GF_AVCConfig *dst_cfg, GF_AVCConfig *src_cfg)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: HEVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:1053,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1055,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1058,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:1059,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:1061,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:1068,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/avc_ext.c:1069,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1073,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:1074,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/avc_ext.c:1075,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/avc_ext.c:1077,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:1079,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1084,1
    - Dst: CHECK_CODE
      Src: /src/gpac/src/isomedia/avc_ext.c:1088,1
    - Dst: CHECK_CODE
      Src: /src/gpac/src/isomedia/avc_ext.c:1089,1
    - Dst: CHECK_CODE
      Src: /src/gpac/src/isomedia/avc_ext.c:1090,1
    - Dst: CHECK_CODE
      Src: /src/gpac/src/isomedia/avc_ext.c:1091,1
    - Dst: CHECK_CODE
      Src: /src/gpac/src/isomedia/avc_ext.c:1092,1
    - Dst: CHECK_CODE
      Src: /src/gpac/src/isomedia/avc_ext.c:1093,1
    - Dst: CHECK_CODE
      Src: /src/gpac/src/isomedia/avc_ext.c:1094,1
    - Dst: CHECK_CODE
      Src: /src/gpac/src/isomedia/avc_ext.c:1095,1
    - Dst: CHECK_CODE
      Src: /src/gpac/src/isomedia/avc_ext.c:1096,1
    - Dst: CHECK_CODE
      Src: /src/gpac/src/isomedia/avc_ext.c:1097,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 34
    argCount: 3
    argNames:
    - dst_cfg
    - src_cfg
    - force_insert
    argTypes:
    - GF_HEVCConfig*
    - GF_HEVCConfig*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1099
      start: 1051
    functionDepth: 2
    functionLinenumber: 1051
    functionLinenumberEnd: 1099
    functionName: merge_hevc_config
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 1
    functionsReached:
    - gf_list_insert
    - gf_odf_hevc_cfg_del
    - gf_list_get
    - gf_list_count
    - CHECK_CODE
    - gf_list_add
    - HEVC_DuplicateConfig
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void merge_hevc_config(GF_HEVCConfig *dst_cfg, GF_HEVCConfig *src_cfg,
      Bool force_insert)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __code
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1087
      start: 1086
    functionDepth: 0
    functionLinenumber: 1086
    functionLinenumberEnd: 1087
    functionName: CHECK_CODE
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_CODE(__code)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/avc_ext.c:1105,1
    - Dst: GetTrackbyID
      Src: /src/gpac/src/isomedia/avc_ext.c:1110,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:1113,1
    - Dst: merge_avc_config
      Src: /src/gpac/src/isomedia/avc_ext.c:1118,1
    - Dst: merge_avc_config
      Src: /src/gpac/src/isomedia/avc_ext.c:1121,1
    - Dst: merge_avc_config
      Src: /src/gpac/src/isomedia/avc_ext.c:1124,1
    - Dst: merge_hevc_config
      Src: /src/gpac/src/isomedia/avc_ext.c:1127,1
    - Dst: merge_hevc_config
      Src: /src/gpac/src/isomedia/avc_ext.c:1130,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 22
    argCount: 3
    argNames:
    - avc_cfg
    - hevc_cfg
    - mdia
    argTypes:
    - GF_AVCConfig*
    - GF_HEVCConfig*
    - GF_MediaBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1134
      start: 1101
    functionDepth: 2
    functionLinenumber: 1101
    functionLinenumberEnd: 1134
    functionName: merge_all_config
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - merge_hevc_config
    - GetTrackbyID
    - Track_FindRef
    - merge_avc_config
    linkageType: ''
    returnType: void
    signature: void merge_all_config(GF_AVCConfig *avc_cfg, GF_HEVCConfig *hevc_cfg,
      GF_MediaBox *mdia)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_get_bitrate_box
      Src: /src/gpac/src/isomedia/avc_ext.c:1138,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1140,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/avc_ext.c:1141,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/avc_ext.c:1157,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/avc_ext.c:1162,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/avc_ext.c:1164,1
    - Dst: gf_odf_desc_add_desc
      Src: /src/gpac/src/isomedia/avc_ext.c:1165,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1166,1
    - Dst: AVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:1170,1
    - Dst: merge_avc_config
      Src: /src/gpac/src/isomedia/avc_ext.c:1173,1
    - Dst: merge_avc_config
      Src: /src/gpac/src/isomedia/avc_ext.c:1177,1
    - Dst: merge_all_config
      Src: /src/gpac/src/isomedia/avc_ext.c:1180,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/isomedia/avc_ext.c:1182,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1183,1
    - Dst: AVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:1186,1
    - Dst: merge_all_config
      Src: /src/gpac/src/isomedia/avc_ext.c:1188,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/isomedia/avc_ext.c:1190,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1191,1
    - Dst: AVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:1194,1
    - Dst: merge_all_config
      Src: /src/gpac/src/isomedia/avc_ext.c:1196,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/isomedia/avc_ext.c:1198,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1199,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 50
    argCount: 2
    argNames:
    - avc
    - mdia
    argTypes:
    - GF_MPEGVisualSampleEntryBox*
    - GF_MediaBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1201
      start: 1136
    functionDepth: 6
    functionLinenumber: 1136
    functionLinenumberEnd: 1201
    functionName: AVC_RewriteESDescriptorEx
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 1
    functionsReached:
    - gf_odf_avc_cfg_write
    - gf_odf_desc_del
    - gf_odf_desc_esd_new
    - merge_all_config
    - gf_isom_sample_entry_get_bitrate_box
    - gf_odf_avc_cfg_del
    - gf_odf_desc_copy
    - AVC_DuplicateConfig
    - gf_list_enum
    - gf_isom_box_find_child
    - merge_avc_config
    - gf_odf_desc_add_desc
    linkageType: ''
    returnType: void
    signature: void AVC_RewriteESDescriptorEx(GF_MPEGVisualSampleEntryBox *avc, GF_MediaBox
      *mdia)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AVC_RewriteESDescriptorEx
      Src: /src/gpac/src/isomedia/avc_ext.c:1205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - avc
    argTypes:
    - GF_MPEGVisualSampleEntryBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1206
      start: 1203
    functionDepth: 7
    functionLinenumber: 1203
    functionLinenumberEnd: 1206
    functionName: AVC_RewriteESDescriptor
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 1
    functionsReached:
    - AVC_RewriteESDescriptorEx
    linkageType: ''
    returnType: void
    signature: void AVC_RewriteESDescriptor(GF_MPEGVisualSampleEntryBox *avc)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_get_bitrate_box
      Src: /src/gpac/src/isomedia/avc_ext.c:1210,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1212,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/avc_ext.c:1213,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/avc_ext.c:1222,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/avc_ext.c:1227,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/avc_ext.c:1229,1
    - Dst: gf_odf_desc_add_desc
      Src: /src/gpac/src/isomedia/avc_ext.c:1230,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1231,1
    - Dst: HEVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:1236,1
    - Dst: merge_hevc_config
      Src: /src/gpac/src/isomedia/avc_ext.c:1240,1
    - Dst: merge_all_config
      Src: /src/gpac/src/isomedia/avc_ext.c:1243,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/isomedia/avc_ext.c:1250,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1251,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 34
    argCount: 2
    argNames:
    - hevc
    - mdia
    argTypes:
    - GF_MPEGVisualSampleEntryBox*
    - GF_MediaBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1254
      start: 1208
    functionDepth: 6
    functionLinenumber: 1208
    functionLinenumberEnd: 1254
    functionName: HEVC_RewriteESDescriptorEx
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 1
    functionsReached:
    - gf_odf_hevc_cfg_del
    - gf_odf_desc_del
    - gf_odf_desc_esd_new
    - merge_hevc_config
    - gf_isom_sample_entry_get_bitrate_box
    - merge_all_config
    - gf_odf_desc_copy
    - gf_odf_hevc_cfg_write
    - HEVC_DuplicateConfig
    - gf_list_enum
    - gf_isom_box_find_child
    - gf_odf_desc_add_desc
    linkageType: ''
    returnType: void
    signature: void HEVC_RewriteESDescriptorEx(GF_MPEGVisualSampleEntryBox *hevc,
      GF_MediaBox *mdia)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: HEVC_RewriteESDescriptorEx
      Src: /src/gpac/src/isomedia/avc_ext.c:1257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - hevc
    argTypes:
    - GF_MPEGVisualSampleEntryBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1258
      start: 1255
    functionDepth: 7
    functionLinenumber: 1255
    functionLinenumberEnd: 1258
    functionName: HEVC_RewriteESDescriptor
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - HEVC_RewriteESDescriptorEx
    linkageType: ''
    returnType: void
    signature: void HEVC_RewriteESDescriptor(GF_MPEGVisualSampleEntryBox *hevc)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_get_bitrate_box
      Src: /src/gpac/src/isomedia/avc_ext.c:1262,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/avc_ext.c:1264,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1266,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1272,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1273,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1275,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1278,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:1282,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:1286,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:1290,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1294,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:1295,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/avc_ext.c:1296,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:1297,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1299,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:1300,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/avc_ext.c:1301,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:1302,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:1305,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1308,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:1309,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/avc_ext.c:1310,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:1311,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1318,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1322,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/isomedia/avc_ext.c:1323,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1328,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1332,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/isomedia/avc_ext.c:1333,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1337,1
    - Dst: HEVC_RewriteESDescriptor
      Src: /src/gpac/src/isomedia/avc_ext.c:1339,1
    - Dst: AVC_RewriteESDescriptor
      Src: /src/gpac/src/isomedia/avc_ext.c:1341,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 71
    argCount: 2
    argNames:
    - avc
    - esd
    argTypes:
    - GF_MPEGVisualSampleEntryBox*
    - GF_ESD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1344
      start: 1260
    functionDepth: 8
    functionLinenumber: 1260
    functionLinenumberEnd: 1344
    functionName: AVC_HEVC_UpdateESD
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 1
    functionsReached:
    - gf_odf_hevc_cfg_del
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_odf_hevc_cfg_read
    - gf_odf_avc_cfg_del
    - gf_odf_desc_del
    - gf_isom_sample_entry_get_bitrate_box
    - gf_isom_box_new_parent
    - gf_list_count
    - HEVC_RewriteESDescriptor
    - AVC_RewriteESDescriptor
    - gf_list_add
    - gf_odf_avc_cfg_read
    - gf_isom_box_find_child
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AVC_HEVC_UpdateESD(GF_MPEGVisualSampleEntryBox *avc, GF_ESD
      *esd)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/avc_ext.c:1359,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1361,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/avc_ext.c:1364,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1366,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:1372,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1376,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1378,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1381,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:1383,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/avc_ext.c:1385,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/avc_ext.c:1390,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1392,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:1395,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:1397,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/avc_ext.c:1399,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 58
    argCount: 3
    argNames:
    - the_file
    - trak
    - entry
    argTypes:
    - GF_ISOFile*
    - GF_TrackBox*
    - GF_MPEGVisualSampleEntryBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1408
      start: 1347
    functionDepth: 5
    functionLinenumber: 1347
    functionLinenumberEnd: 1408
    functionName: gf_isom_check_mvc
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_box_new_parent
    - gf_list_count
    - memset
    - gf_isom_box_find_child
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_check_mvc(GF_ISOFile *the_file, GF_TrackBox *trak, GF_MPEGVisualSampleEntryBox
      *entry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:1413,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/avc_ext.c:1429,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1430,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:1431,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:1431,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:1434,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/avc_ext.c:1435,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:1436,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_AV1Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1439
      start: 1410
    functionDepth: 1
    functionLinenumber: 1410
    functionLinenumberEnd: 1439
    functionName: AV1_DuplicateConfig
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_list_get
    - memcpy
    - gf_list_count
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: GF_AV1Config
    signature: GF_AV1Config * AV1_DuplicateConfig(GF_AV1Config const * const cfg)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_iamf_cfg_new
      Src: /src/gpac/src/isomedia/avc_ext.c:1444,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1450,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:1451,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:1451,1
    - Dst: gf_odf_iamf_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1453,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:1459,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/avc_ext.c:1460,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:1461,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_IAConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1464
      start: 1441
    functionDepth: 1
    functionLinenumber: 1441
    functionLinenumberEnd: 1464
    functionName: IAMF_DuplicateConfig
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_odf_iamf_cfg_del
    - memcpy
    - gf_odf_iamf_cfg_new
    - gf_list_count
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: GF_IAConfig
    signature: GF_IAConfig * IAMF_DuplicateConfig(GF_IAConfig const * const cfg)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_get_bitrate_box
      Src: /src/gpac/src/isomedia/avc_ext.c:1468,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1470,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/avc_ext.c:1471,1
    - Dst: AV1_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:1481,1
    - Dst: gf_odf_av1_cfg_write
      Src: /src/gpac/src/isomedia/avc_ext.c:1483,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1484,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - av1
    - mdia
    argTypes:
    - GF_MPEGVisualSampleEntryBox*
    - GF_MediaBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1487
      start: 1466
    functionDepth: 6
    functionLinenumber: 1466
    functionLinenumberEnd: 1487
    functionName: AV1_RewriteESDescriptorEx
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 1
    functionsReached:
    - gf_odf_av1_cfg_write
    - gf_odf_desc_esd_new
    - gf_odf_desc_del
    - gf_isom_sample_entry_get_bitrate_box
    - gf_odf_av1_cfg_del
    - AV1_DuplicateConfig
    linkageType: ''
    returnType: void
    signature: void AV1_RewriteESDescriptorEx(GF_MPEGVisualSampleEntryBox *av1, GF_MediaBox
      *mdia)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AV1_RewriteESDescriptorEx
      Src: /src/gpac/src/isomedia/avc_ext.c:1491,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - av1
    argTypes:
    - GF_MPEGVisualSampleEntryBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1492
      start: 1489
    functionDepth: 7
    functionLinenumber: 1489
    functionLinenumberEnd: 1492
    functionName: AV1_RewriteESDescriptor
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - AV1_RewriteESDescriptorEx
    linkageType: ''
    returnType: void
    signature: void AV1_RewriteESDescriptor(GF_MPEGVisualSampleEntryBox *av1)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_vp_cfg_new
      Src: /src/gpac/src/isomedia/avc_ext.c:1498,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_VPConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1511
      start: 1496
    functionDepth: 0
    functionLinenumber: 1496
    functionLinenumberEnd: 1511
    functionName: VP_DuplicateConfig
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_odf_vp_cfg_new
    linkageType: ''
    returnType: GF_VPConfig
    signature: GF_VPConfig * VP_DuplicateConfig(GF_VPConfig const * const cfg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_avs3v_cfg_new
      Src: /src/gpac/src/isomedia/avc_ext.c:1515,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:1519,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/avc_ext.c:1520,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_AVS3VConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1525
      start: 1513
    functionDepth: 0
    functionLinenumber: 1513
    functionLinenumberEnd: 1525
    functionName: AVS3V_DuplicateConfig
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_odf_avs3v_cfg_new
    - gf_malloc
    linkageType: ''
    returnType: GF_AVS3VConfig
    signature: GF_AVS3VConfig * AVS3V_DuplicateConfig(GF_AVS3VConfig const * const
      cfg)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_get_bitrate_box
      Src: /src/gpac/src/isomedia/avc_ext.c:1529,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1531,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/avc_ext.c:1532,1
    - Dst: VP_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:1546,1
    - Dst: gf_odf_vp_cfg_write
      Src: /src/gpac/src/isomedia/avc_ext.c:1548,1
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1549,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - vp9
    - mdia
    argTypes:
    - GF_MPEGVisualSampleEntryBox*
    - GF_MediaBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1552
      start: 1527
    functionDepth: 6
    functionLinenumber: 1527
    functionLinenumberEnd: 1552
    functionName: VP9_RewriteESDescriptorEx
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 1
    functionsReached:
    - gf_odf_vp_cfg_write
    - gf_odf_desc_esd_new
    - gf_odf_desc_del
    - gf_isom_sample_entry_get_bitrate_box
    - VP_DuplicateConfig
    - gf_odf_vp_cfg_del
    linkageType: ''
    returnType: void
    signature: void VP9_RewriteESDescriptorEx(GF_MPEGVisualSampleEntryBox *vp9, GF_MediaBox
      *mdia)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: VP9_RewriteESDescriptorEx
      Src: /src/gpac/src/isomedia/avc_ext.c:1556,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - vp9
    argTypes:
    - GF_MPEGVisualSampleEntryBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1557
      start: 1554
    functionDepth: 7
    functionLinenumber: 1554
    functionLinenumberEnd: 1557
    functionName: VP9_RewriteESDescriptor
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - VP9_RewriteESDescriptorEx
    linkageType: ''
    returnType: void
    signature: void VP9_RewriteESDescriptor(GF_MPEGVisualSampleEntryBox *vp9)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/avc_ext.c:1564,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/avc_ext.c:1566,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_DOVIDecoderConfigurationRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1569
      start: 1561
    functionDepth: 1
    functionLinenumber: 1561
    functionLinenumberEnd: 1569
    functionName: DOVI_DuplicateConfig
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - memcpy
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_DOVIDecoderConfigurationRecord
    signature: GF_DOVIDecoderConfigurationRecord * DOVI_DuplicateConfig(GF_DOVIDecoderConfigurationRecord
      *cfg)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/avc_ext.c:1583,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:1586,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/avc_ext.c:1590,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/avc_ext.c:1593,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/isomedia/avc_ext.c:1596,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/avc_ext.c:1597,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1602,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1604,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1606,1
    - Dst: AVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:1608,1
    - Dst: AVC_RewriteESDescriptor
      Src: /src/gpac/src/isomedia/avc_ext.c:1611,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 31
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - cfg
    - URLname
    - URNname
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_AVCConfig*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1613
      start: 1574
    functionDepth: 8
    functionLinenumber: 1574
    functionLinenumberEnd: 1613
    functionName: gf_isom_avc_config_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - gf_sys_is_test_mode
    - gf_isom_box_new_parent
    - gf_list_count
    - Media_CreateDataRef
    - AVC_RewriteESDescriptor
    - gf_isom_get_track_box
    - AVC_DuplicateConfig
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_avc_config_new(GF_ISOFile *the_file, u32 trackNumber,
      GF_AVCConfig *cfg, const char *URLname, const char *URNname, u32 *outDescriptionIndex)
  - BBCount: 56
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/avc_ext.c:1622,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:1624,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:1626,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1645,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1648,1
    - Dst: AVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:1649,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1657,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1660,1
    - Dst: AVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:1661,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1669,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1673,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1676,1
    - Dst: AVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:1677,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1693,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:1694,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/avc_ext.c:1695,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:1696,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:1697,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1700,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:1701,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/avc_ext.c:1702,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:1703,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:1704,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1707,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:1708,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/avc_ext.c:1709,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:1710,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:1711,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1725,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1728,1
    - Dst: AVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:1729,1
    - Dst: gf_isom_check_mvc
      Src: /src/gpac/src/isomedia/avc_ext.c:1732,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1739,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1743,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1746,1
    - Dst: AVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:1747,1
    - Dst: gf_isom_check_mvc
      Src: /src/gpac/src/isomedia/avc_ext.c:1750,1
    - Dst: AVC_RewriteESDescriptor
      Src: /src/gpac/src/isomedia/avc_ext.c:1754,1
    CyclomaticComplexity: 59
    EdgeCount: 59
    ICount: 150
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    - cfg
    - op_type
    - keep_xps
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_AVCConfig*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1756
      start: 1615
    functionDepth: 8
    functionLinenumber: 1615
    functionLinenumberEnd: 1756
    functionName: gf_isom_avc_config_update_ex
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_isom_check_mvc
    - gf_odf_avc_cfg_del
    - gf_isom_box_new_parent
    - gf_list_count
    - AVC_RewriteESDescriptor
    - gf_isom_get_track_box
    - AVC_DuplicateConfig
    - gf_isom_can_access_movie
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_avc_config_update_ex(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex, GF_AVCConfig *cfg, u32 op_type, Bool keep_xps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_avc_config_update_ex
      Src: /src/gpac/src/isomedia/avc_ext.c:1761,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    - keep_xps
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1762
      start: 1758
    functionDepth: 9
    functionLinenumber: 1758
    functionLinenumberEnd: 1762
    functionName: gf_isom_avc_set_inband_config
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 1
    functionsReached:
    - gf_isom_avc_config_update_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_avc_set_inband_config(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex, Bool keep_xps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_avc_config_update_ex
      Src: /src/gpac/src/isomedia/avc_ext.c:1767,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    - cfg
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_AVCConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1768
      start: 1764
    functionDepth: 9
    functionLinenumber: 1764
    functionLinenumberEnd: 1768
    functionName: gf_isom_avc_config_update
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 1
    functionsReached:
    - gf_isom_avc_config_update_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_avc_config_update(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex, GF_AVCConfig *cfg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_avc_config_update_ex
      Src: /src/gpac/src/isomedia/avc_ext.c:1773,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    - cfg
    - is_add
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_AVCConfig*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1774
      start: 1770
    functionDepth: 9
    functionLinenumber: 1770
    functionLinenumberEnd: 1774
    functionName: gf_isom_svc_config_update
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_avc_config_update_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_svc_config_update(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex, GF_AVCConfig *cfg, Bool is_add)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_avc_config_update_ex
      Src: /src/gpac/src/isomedia/avc_ext.c:1779,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    - cfg
    - is_add
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_AVCConfig*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1780
      start: 1776
    functionDepth: 9
    functionLinenumber: 1776
    functionLinenumberEnd: 1780
    functionName: gf_isom_mvc_config_update
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_avc_config_update_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_mvc_config_update(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex, GF_AVCConfig *cfg, Bool is_add)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/avc_ext.c:1788,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:1790,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:1792,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1807,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1811,1
    - Dst: AVC_RewriteESDescriptor
      Src: /src/gpac/src/isomedia/avc_ext.c:1814,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    - is_mvc
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1816
      start: 1782
    functionDepth: 8
    functionLinenumber: 1782
    functionLinenumberEnd: 1816
    functionName: gf_isom_svc_mvc_config_del
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - AVC_RewriteESDescriptor
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_svc_mvc_config_del(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex, Bool is_mvc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_svc_mvc_config_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1820,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1821
      start: 1818
    functionDepth: 9
    functionLinenumber: 1818
    functionLinenumberEnd: 1821
    functionName: gf_isom_svc_config_del
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_svc_mvc_config_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_svc_config_del(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_svc_mvc_config_del
      Src: /src/gpac/src/isomedia/avc_ext.c:1825,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1826
      start: 1823
    functionDepth: 9
    functionLinenumber: 1823
    functionLinenumberEnd: 1826
    functionName: gf_isom_mvc_config_del
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_svc_mvc_config_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_mvc_config_del(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/avc_ext.c:1836,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:1839,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/avc_ext.c:1843,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/avc_ext.c:1846,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/avc_ext.c:1850,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1855,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1857,1
    - Dst: AVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:1859,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1862,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1864,1
    - Dst: AVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:1866,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1870,1
    - Dst: AVC_RewriteESDescriptor
      Src: /src/gpac/src/isomedia/avc_ext.c:1871,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 43
    argCount: 7
    argNames:
    - the_file
    - trackNumber
    - cfg
    - is_mvc
    - URLname
    - URNname
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_AVCConfig*
    - Bool
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1873
      start: 1828
    functionDepth: 8
    functionLinenumber: 1828
    functionLinenumberEnd: 1873
    functionName: gf_isom_svc_mvc_config_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - gf_isom_box_new_parent
    - gf_list_count
    - Media_CreateDataRef
    - AVC_RewriteESDescriptor
    - gf_isom_get_track_box
    - AVC_DuplicateConfig
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_svc_mvc_config_new(GF_ISOFile *the_file, u32 trackNumber,
      GF_AVCConfig *cfg, Bool is_mvc, char *URLname, char *URNname, u32 *outDescriptionIndex)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_svc_mvc_config_new
      Src: /src/gpac/src/isomedia/avc_ext.c:1878,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - cfg
    - URLname
    - URNname
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_AVCConfig*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1879
      start: 1875
    functionDepth: 9
    functionLinenumber: 1875
    functionLinenumberEnd: 1879
    functionName: gf_isom_svc_config_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_svc_mvc_config_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_svc_config_new(GF_ISOFile *the_file, u32 trackNumber,
      GF_AVCConfig *cfg, const char *URLname, const char *URNname, u32 *outDescriptionIndex)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_svc_mvc_config_new
      Src: /src/gpac/src/isomedia/avc_ext.c:1884,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - cfg
    - URLname
    - URNname
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_AVCConfig*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1885
      start: 1881
    functionDepth: 9
    functionLinenumber: 1881
    functionLinenumberEnd: 1885
    functionName: gf_isom_mvc_config_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_svc_mvc_config_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_mvc_config_new(GF_ISOFile *the_file, u32 trackNumber,
      GF_AVCConfig *cfg, const char *URLname, const char *URNname, u32 *outDescriptionIndex)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/avc_ext.c:1897,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:1900,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/avc_ext.c:1904,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/avc_ext.c:1907,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/avc_ext.c:1911,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1915,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1917,1
    - Dst: HEVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:1919,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1922,1
    - Dst: HEVC_RewriteESDescriptor
      Src: /src/gpac/src/isomedia/avc_ext.c:1923,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - cfg
    - URLname
    - URNname
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_HEVCConfig*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1925
      start: 1888
    functionDepth: 8
    functionLinenumber: 1888
    functionLinenumberEnd: 1925
    functionName: gf_isom_hevc_config_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - gf_isom_box_new_parent
    - gf_list_count
    - Media_CreateDataRef
    - HEVC_RewriteESDescriptor
    - gf_isom_get_track_box
    - HEVC_DuplicateConfig
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_hevc_config_new(GF_ISOFile *the_file, u32 trackNumber,
      GF_HEVCConfig *cfg, const char *URLname, const char *URNname, u32 *outDescriptionIndex)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/avc_ext.c:1937,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:1940,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/avc_ext.c:1944,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/avc_ext.c:1947,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/avc_ext.c:1951,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1955,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1957,1
    - Dst: VVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:1959,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:1962,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - cfg
    - URLname
    - URNname
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_VVCConfig*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1964
      start: 1928
    functionDepth: 5
    functionLinenumber: 1928
    functionLinenumberEnd: 1964
    functionName: gf_isom_vvc_config_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - gf_isom_box_new_parent
    - VVC_DuplicateConfig
    - Media_CreateDataRef
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_vvc_config_new(GF_ISOFile *the_file, u32 trackNumber,
      GF_VVCConfig *cfg, const char *URLname, const char *URNname, u32 *outDescriptionIndex)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/avc_ext.c:1975,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:1978,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/avc_ext.c:1982,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/avc_ext.c:1985,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/avc_ext.c:1989,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1993,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:1996,1
    - Dst: VP_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:1998,1
    - Dst: strncpy
      Src: /src/gpac/src/isomedia/avc_ext.c:2000,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:2002,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 7
    argNames:
    - the_file
    - trackNumber
    - cfg
    - URLname
    - URNname
    - outDescriptionIndex
    - vpx_type
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_VPConfig*
    - char*
    - char*
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2004
      start: 1966
    functionDepth: 5
    functionLinenumber: 1966
    functionLinenumberEnd: 2004
    functionName: gf_isom_vp_config_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - VP_DuplicateConfig
    - gf_isom_box_new_parent
    - gf_list_count
    - Media_CreateDataRef
    - strncpy
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_vp_config_new(GF_ISOFile *the_file, u32 trackNumber,
      GF_VPConfig *cfg, const char *URLname, const char *URNname, u32 *outDescriptionIndex,
      u32 vpx_type)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/avc_ext.c:2015,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:2018,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/avc_ext.c:2022,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/avc_ext.c:2025,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/avc_ext.c:2029,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:2033,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:2035,1
    - Dst: AV1_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:2037,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:2040,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - cfg
    - URLname
    - URNname
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_AV1Config*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2042
      start: 2006
    functionDepth: 5
    functionLinenumber: 2006
    functionLinenumberEnd: 2042
    functionName: gf_isom_av1_config_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - AV1_DuplicateConfig
    - gf_isom_box_new_parent
    - gf_list_count
    - Media_CreateDataRef
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_av1_config_new(GF_ISOFile *the_file, u32 trackNumber,
      GF_AV1Config *cfg, const char *URLname, const char *URNname, u32 *outDescriptionIndex)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/avc_ext.c:2053,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:2056,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/avc_ext.c:2060,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/avc_ext.c:2063,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/avc_ext.c:2067,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:2071,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:2073,1
    - Dst: AVS3V_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:2075,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:2078,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - cfg
    - URLname
    - URNname
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_AVS3VConfig*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2080
      start: 2044
    functionDepth: 5
    functionLinenumber: 2044
    functionLinenumberEnd: 2080
    functionName: gf_isom_avs3v_config_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - AVS3V_DuplicateConfig
    - gf_isom_box_new_parent
    - gf_list_count
    - Media_CreateDataRef
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_avs3v_config_new(GF_ISOFile *the_file, u32 trackNumber,
      GF_AVS3VConfig *cfg, const char *URLname, const char *URNname, u32 *outDescriptionIndex)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/avc_ext.c:2091,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:2094,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/avc_ext.c:2098,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/avc_ext.c:2101,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/avc_ext.c:2105,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:2109,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:2111,1
    - Dst: IAMF_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:2113,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:2120,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 34
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - cfg
    - URLname
    - URNname
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_IAConfig*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2122
      start: 2082
    functionDepth: 5
    functionLinenumber: 2082
    functionLinenumberEnd: 2122
    functionName: gf_isom_iamf_config_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - IAMF_DuplicateConfig
    - gf_isom_box_new_parent
    - gf_list_count
    - Media_CreateDataRef
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_iamf_config_new(GF_ISOFile *the_file, u32 trackNumber,
      GF_IAConfig *cfg, const char *URLname, const char *URNname, u32 *outDescriptionIndex)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:2144,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:2145,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:2155,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:2156,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/avc_ext.c:2157,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:2158,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:2159,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/avc_ext.c:2161,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:2162,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/avc_ext.c:2164,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 3
    argNames:
    - param_array
    - set_inband
    - keep_xps
    argTypes:
    - GF_List*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2172
      start: 2138
    functionDepth: 1
    functionLinenumber: 2138
    functionLinenumberEnd: 2172
    functionName: nalu_cleanup_config
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: Bool
    signature: Bool nalu_cleanup_config(GF_List *param_array, Bool set_inband, Bool
      keep_xps)
  - BBCount: 55
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/avc_ext.c:2183,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:2185,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:2188,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:2210,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:2212,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:2217,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:2222,1
    - Dst: HEVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:2223,1
    - Dst: nalu_cleanup_config
      Src: /src/gpac/src/isomedia/avc_ext.c:2228,1
    - Dst: nalu_cleanup_config
      Src: /src/gpac/src/isomedia/avc_ext.c:2235,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:2262,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:2271,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:2274,1
    - Dst: HEVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:2275,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:2291,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:2297,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:2300,1
    - Dst: HEVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:2301,1
    - Dst: HEVC_RewriteESDescriptor
      Src: /src/gpac/src/isomedia/avc_ext.c:2313,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 137
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    - cfg
    - operand_type
    - keep_xps
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_HEVCConfig*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2315
      start: 2174
    functionDepth: 8
    functionLinenumber: 2174
    functionLinenumberEnd: 2315
    functionName: gf_isom_hevc_config_update_ex
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_odf_hevc_cfg_del
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_isom_box_new_parent
    - HEVC_RewriteESDescriptor
    - gf_isom_get_track_box
    - HEVC_DuplicateConfig
    - gf_isom_can_access_movie
    - nalu_cleanup_config
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_hevc_config_update_ex(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex, GF_HEVCConfig *cfg, u32 operand_type, Bool keep_xps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_hevc_config_update_ex
      Src: /src/gpac/src/isomedia/avc_ext.c:2320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    - cfg
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_HEVCConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2321
      start: 2317
    functionDepth: 9
    functionLinenumber: 2317
    functionLinenumberEnd: 2321
    functionName: gf_isom_hevc_config_update
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 1
    functionsReached:
    - gf_isom_hevc_config_update_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_hevc_config_update(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex, GF_HEVCConfig *cfg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_hevc_config_update_ex
      Src: /src/gpac/src/isomedia/avc_ext.c:2326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    - keep_xps
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2327
      start: 2323
    functionDepth: 9
    functionLinenumber: 2323
    functionLinenumberEnd: 2327
    functionName: gf_isom_hevc_set_inband_config
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 1
    functionsReached:
    - gf_isom_hevc_config_update_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_hevc_set_inband_config(GF_ISOFile *the_file, u32
      trackNumber, u32 DescriptionIndex, Bool keep_xps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_hevc_config_update_ex
      Src: /src/gpac/src/isomedia/avc_ext.c:2332,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2333
      start: 2329
    functionDepth: 9
    functionLinenumber: 2329
    functionLinenumberEnd: 2333
    functionName: gf_isom_lhvc_force_inband_config
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_hevc_config_update_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_lhvc_force_inband_config(GF_ISOFile *the_file, u32
      trackNumber, u32 DescriptionIndex)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_hevc_config_update_ex
      Src: /src/gpac/src/isomedia/avc_ext.c:2339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    - cfg
    - is_base_track
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_HEVCConfig*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2340
      start: 2336
    functionDepth: 9
    functionLinenumber: 2336
    functionLinenumberEnd: 2340
    functionName: gf_isom_hevc_set_tile_config
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_hevc_config_update_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_hevc_set_tile_config(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex, GF_HEVCConfig *cfg, Bool is_base_track)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_hevc_config_update_ex
      Src: /src/gpac/src/isomedia/avc_ext.c:2348,1
    - Dst: gf_isom_hevc_config_update_ex
      Src: /src/gpac/src/isomedia/avc_ext.c:2350,1
    - Dst: gf_isom_hevc_config_update_ex
      Src: /src/gpac/src/isomedia/avc_ext.c:2352,1
    - Dst: gf_isom_hevc_config_update_ex
      Src: /src/gpac/src/isomedia/avc_ext.c:2354,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 5
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    - cfg
    - track_type
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_HEVCConfig*
    - GF_ISOMLHEVCTrackType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2358
      start: 2342
    functionDepth: 9
    functionLinenumber: 2342
    functionLinenumberEnd: 2358
    functionName: gf_isom_lhvc_config_update
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_hevc_config_update_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_lhvc_config_update(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex, GF_HEVCConfig *cfg, GF_ISOMLHEVCTrackType track_type)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/avc_ext.c:2377,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:2379,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:2382,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/avc_ext.c:2395,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:2400,1
    - Dst: VVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:2401,1
    - Dst: nalu_cleanup_config
      Src: /src/gpac/src/isomedia/avc_ext.c:2410,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 46
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    - cfg
    - operand_type
    - keep_xps
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_VVCConfig*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2424
      start: 2368
    functionDepth: 5
    functionLinenumber: 2368
    functionLinenumberEnd: 2424
    functionName: gf_isom_vvc_config_update_ex
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_odf_vvc_cfg_del
    - gf_isom_box_new_parent
    - VVC_DuplicateConfig
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - nalu_cleanup_config
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_vvc_config_update_ex(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex, GF_VVCConfig *cfg, u32 operand_type, Bool keep_xps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_vvc_config_update_ex
      Src: /src/gpac/src/isomedia/avc_ext.c:2429,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    - keep_xps
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2430
      start: 2426
    functionDepth: 6
    functionLinenumber: 2426
    functionLinenumberEnd: 2430
    functionName: gf_isom_vvc_set_inband_config
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_vvc_config_update_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_vvc_set_inband_config(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex, Bool keep_xps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_vvc_config_update_ex
      Src: /src/gpac/src/isomedia/avc_ext.c:2435,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    - cfg
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_VVCConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2436
      start: 2432
    functionDepth: 6
    functionLinenumber: 2432
    functionLinenumberEnd: 2436
    functionName: gf_isom_vvc_config_update
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_vvc_config_update_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_vvc_config_update(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex, GF_VVCConfig *cfg)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/avc_ext.c:2444,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/avc_ext.c:2445,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/avc_ext.c:2447,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/avc_ext.c:2449,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/avc_ext.c:2450,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/avc_ext.c:2452,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/isomedia/avc_ext.c:2453,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/avc_ext.c:2454,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:2457,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/avc_ext.c:2460,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 1
    argNames:
    - box
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2464
      start: 2438
    functionDepth: 4
    functionLinenumber: 2438
    functionLinenumberEnd: 2464
    functionName: gf_isom_clone_config_box
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_box_size
    - gf_bs_new
    - gf_isom_box_del
    - gf_bs_get_content
    - gf_isom_box_write
    - gf_bs_del
    - gf_isom_box_parse
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *gf_isom_clone_config_box(GF_Box *box)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:2472,1
    - Dst: gf_isom_get_avc_svc_type
      Src: /src/gpac/src/isomedia/avc_ext.c:2474,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:2477,1
    - Dst: AVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:2481,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2482
      start: 2467
    functionDepth: 2
    functionLinenumber: 2467
    functionLinenumberEnd: 2482
    functionName: GF_AVCConfig *gf_isom_avc_config_get(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex)
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - gf_isom_get_avc_svc_type
    - AVC_DuplicateConfig
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AVCConfig *gf_isom_avc_config_get(GF_ISOFile *the_file,
      u32 trackNumber, u32 DescriptionIndex)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/isomedia/avc_ext.c:2489,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/isomedia/avc_ext.c:2491,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:2496,1
    - Dst: gf_isom_get_hevc_lhvc_type
      Src: /src/gpac/src/isomedia/avc_ext.c:2498,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:2500,1
    - Dst: HEVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:2504,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2505
      start: 2484
    functionDepth: 3
    functionLinenumber: 2484
    functionLinenumberEnd: 2505
    functionName: GF_HEVCConfig *gf_isom_hevc_config_get(GF_ISOFile *the_file, u32
      trackNumber, u32 DescriptionIndex)
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_get_reference
    - gf_isom_get_hevc_lhvc_type
    - gf_isom_get_reference_count
    - HEVC_DuplicateConfig
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_HEVCConfig *gf_isom_hevc_config_get(GF_ISOFile *the_file,
      u32 trackNumber, u32 DescriptionIndex)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:2513,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/isomedia/avc_ext.c:2515,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:2517,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/avc_ext.c:2523,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2542
      start: 2507
    functionDepth: 2
    functionLinenumber: 2507
    functionLinenumberEnd: 2542
    functionName: GF_ISOMVVCType::gf_isom_get_vvc_type
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_is_video_handler_type
    - gf_isom_get_track_box
    - gf_list_get
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ISOMVVCType gf_isom_get_vvc_type(GF_ISOFile *the_file,
      u32 trackNumber, u32 DescriptionIndex)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:2551,1
    - Dst: gf_isom_get_vvc_type
      Src: /src/gpac/src/isomedia/avc_ext.c:2553,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:2556,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/avc_ext.c:2561,1
    - Dst: gf_odf_vvc_cfg_new
      Src: /src/gpac/src/isomedia/avc_ext.c:2563,1
    - Dst: VVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:2568,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2569
      start: 2544
    functionDepth: 2
    functionLinenumber: 2544
    functionLinenumberEnd: 2569
    functionName: GF_VVCConfig *gf_isom_vvc_config_get(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex)
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - VVC_DuplicateConfig
    - gf_odf_vvc_cfg_new
    - gf_isom_get_vvc_type
    - gf_isom_get_track_box
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_VVCConfig *gf_isom_vvc_config_get(GF_ISOFile *the_file,
      u32 trackNumber, u32 DescriptionIndex)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:2576,1
    - Dst: gf_isom_get_avc_svc_type
      Src: /src/gpac/src/isomedia/avc_ext.c:2578,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:2580,1
    - Dst: AVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:2584,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2585
      start: 2571
    functionDepth: 2
    functionLinenumber: 2571
    functionLinenumberEnd: 2585
    functionName: GF_AVCConfig *gf_isom_svc_config_get(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex)
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - gf_isom_get_avc_svc_type
    - AVC_DuplicateConfig
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AVCConfig *gf_isom_svc_config_get(GF_ISOFile *the_file,
      u32 trackNumber, u32 DescriptionIndex)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:2593,1
    - Dst: gf_isom_get_avc_svc_type
      Src: /src/gpac/src/isomedia/avc_ext.c:2595,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:2597,1
    - Dst: AVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:2601,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2602
      start: 2588
    functionDepth: 2
    functionLinenumber: 2588
    functionLinenumberEnd: 2602
    functionName: GF_AVCConfig *gf_isom_mvc_config_get(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex)
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - gf_isom_get_avc_svc_type
    - AVC_DuplicateConfig
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AVCConfig *gf_isom_mvc_config_get(GF_ISOFile *the_file,
      u32 trackNumber, u32 DescriptionIndex)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/isomedia/avc_ext.c:2609,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/isomedia/avc_ext.c:2611,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:2616,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:2618,1
    - Dst: AV1_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:2622,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2623
      start: 2604
    functionDepth: 3
    functionLinenumber: 2604
    functionLinenumberEnd: 2623
    functionName: GF_AV1Config *gf_isom_av1_config_get(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex)
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - AV1_DuplicateConfig
    - gf_isom_get_reference
    - gf_isom_get_reference_count
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AV1Config *gf_isom_av1_config_get(GF_ISOFile *the_file,
      u32 trackNumber, u32 DescriptionIndex)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:2630,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:2632,1
    - Dst: VP_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:2636,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2637
      start: 2625
    functionDepth: 1
    functionLinenumber: 2625
    functionLinenumberEnd: 2637
    functionName: GF_VPConfig *gf_isom_vp_config_get(GF_ISOFile *the_file, u32 trackNumber,
      u32 DescriptionIndex)
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - VP_DuplicateConfig
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_VPConfig *gf_isom_vp_config_get(GF_ISOFile *the_file,
      u32 trackNumber, u32 DescriptionIndex)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:2644,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:2646,1
    - Dst: AVS3V_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:2650,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2651
      start: 2639
    functionDepth: 1
    functionLinenumber: 2639
    functionLinenumberEnd: 2651
    functionName: GF_AVS3VConfig *gf_isom_avs3v_config_get(GF_ISOFile *the_file, u32
      trackNumber, u32 DescriptionIndex)
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - AVS3V_DuplicateConfig
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AVS3VConfig *gf_isom_avs3v_config_get(GF_ISOFile *the_file,
      u32 trackNumber, u32 DescriptionIndex)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:2658,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:2660,1
    - Dst: DOVI_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:2664,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2665
      start: 2653
    functionDepth: 2
    functionLinenumber: 2653
    functionLinenumberEnd: 2665
    functionName: GF_DOVIDecoderConfigurationRecord *gf_isom_dovi_config_get(GF_ISOFile*
      the_file, u32 trackNumber, u32 DescriptionIndex)
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - DOVI_DuplicateConfig
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_DOVIDecoderConfigurationRecord *gf_isom_dovi_config_get(GF_ISOFile*
      the_file, u32 trackNumber, u32 DescriptionIndex)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:2672,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:2674,1
    - Dst: IAMF_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:2678,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2679
      start: 2667
    functionDepth: 2
    functionLinenumber: 2667
    functionLinenumberEnd: 2679
    functionName: GF_IAConfig *gf_isom_iamf_config_get(GF_ISOFile* the_file, u32 trackNumber,
      u32 DescriptionIndex)
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - IAMF_DuplicateConfig
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_IAConfig *gf_isom_iamf_config_get(GF_ISOFile* the_file,
      u32 trackNumber, u32 DescriptionIndex)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:2687,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/isomedia/avc_ext.c:2689,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:2692,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/avc_ext.c:2699,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 44
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2725
      start: 2681
    functionDepth: 2
    functionLinenumber: 2681
    functionLinenumberEnd: 2725
    functionName: GF_ISOMAVCType::gf_isom_get_avc_svc_type
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_is_video_handler_type
    - gf_isom_get_track_box
    - gf_list_get
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ISOMAVCType gf_isom_get_avc_svc_type(GF_ISOFile *the_file,
      u32 trackNumber, u32 DescriptionIndex)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:2733,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/isomedia/avc_ext.c:2735,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:2737,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/avc_ext.c:2743,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 41
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - DescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2768
      start: 2727
    functionDepth: 2
    functionLinenumber: 2727
    functionLinenumberEnd: 2768
    functionName: GF_ISOMHEVCType::gf_isom_get_hevc_lhvc_type
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_is_video_handler_type
    - gf_isom_get_track_box
    - gf_list_get
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ISOMHEVCType gf_isom_get_hevc_lhvc_type(GF_ISOFile *the_file,
      u32 trackNumber, u32 DescriptionIndex)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/avc_ext.c:2777,1
    - Dst: gf_isom_get_hevc_lhvc_type
      Src: /src/gpac/src/isomedia/avc_ext.c:2779,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:2781,1
    - Dst: HEVC_DuplicateConfig
      Src: /src/gpac/src/isomedia/avc_ext.c:2785,1
    - Dst: gf_isom_get_oinf_info
      Src: /src/gpac/src/isomedia/avc_ext.c:2788,1
    - Dst: gf_list_last
      Src: /src/gpac/src/isomedia/avc_ext.c:2790,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2800
      start: 2770
    functionDepth: 4
    functionLinenumber: 2770
    functionLinenumberEnd: 2800
    functionName: GF_HEVCConfig *gf_isom_lhvc_config_get(GF_ISOFile *the_file, u32
      trackNumber, u32 DescriptionIndex)
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_get_hevc_lhvc_type
    - gf_isom_get_oinf_info
    - HEVC_DuplicateConfig
    - gf_isom_get_track_box
    - gf_list_last
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_HEVCConfig *gf_isom_lhvc_config_get(GF_ISOFile *the_file,
      u32 trackNumber, u32 DescriptionIndex)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:2806,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2807
      start: 2803
    functionDepth: 0
    functionLinenumber: 2803
    functionLinenumberEnd: 2807
    functionName: btrt_box_del
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void btrt_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/avc_ext.c:2811,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:2812,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:2813,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:2814,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2816
      start: 2808
    functionDepth: 1
    functionLinenumber: 2808
    functionLinenumberEnd: 2816
    functionName: btrt_box_read
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err btrt_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:2819,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/avc_ext.c:2821,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2824
      start: 2817
    functionDepth: 0
    functionLinenumber: 2817
    functionLinenumberEnd: 2824
    functionName: btrt_box_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *btrt_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/avc_ext.c:2832,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:2834,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:2835,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:2836,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2838
      start: 2827
    functionDepth: 2
    functionLinenumber: 2827
    functionLinenumberEnd: 2838
    functionName: btrt_box_write
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err btrt_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2844
      start: 2839
    functionDepth: 0
    functionLinenumber: 2839
    functionLinenumberEnd: 2844
    functionName: btrt_box_size
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err btrt_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_list_del
      Src: /src/gpac/src/isomedia/avc_ext.c:2852,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/avc_ext.c:2853,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:2854,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2855
      start: 2849
    functionDepth: 1
    functionLinenumber: 2849
    functionLinenumberEnd: 2855
    functionName: m4ds_box_del
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_del
    - gf_odf_desc_list_del
    linkageType: ''
    returnType: void
    signature: void m4ds_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:2863,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/avc_ext.c:2864,1
    - Dst: gf_odf_desc_list_read
      Src: /src/gpac/src/isomedia/avc_ext.c:2865,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:2866,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2868
      start: 2856
    functionDepth: 1
    functionLinenumber: 2856
    functionLinenumberEnd: 2868
    functionName: m4ds_box_read
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_odf_desc_list_read
    - gf_malloc
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err m4ds_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:2871,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/avc_ext.c:2873,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/avc_ext.c:2875,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2877
      start: 2869
    functionDepth: 1
    functionLinenumber: 2869
    functionLinenumberEnd: 2877
    functionName: m4ds_box_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *m4ds_box_new()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/avc_ext.c:2887,1
    - Dst: gf_odf_desc_list_write
      Src: /src/gpac/src/isomedia/avc_ext.c:2891,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/avc_ext.c:2894,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:2895,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2898
      start: 2880
    functionDepth: 2
    functionLinenumber: 2880
    functionLinenumberEnd: 2898
    functionName: m4ds_box_write
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_odf_desc_list_write
    - gf_isom_box_write_header
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err m4ds_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_list_size
      Src: /src/gpac/src/isomedia/avc_ext.c:2904,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2907
      start: 2899
    functionDepth: 1
    functionLinenumber: 2899
    functionLinenumberEnd: 2907
    functionName: m4ds_box_size
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_list_size
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err m4ds_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:2915,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:2917,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2918
      start: 2912
    functionDepth: 1
    functionLinenumber: 2912
    functionLinenumberEnd: 2918
    functionName: avcc_box_del
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_avc_cfg_del
    linkageType: ''
    returnType: void
    signature: void avcc_box_del(GF_Box *s)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:2925,1
    - Dst: gf_odf_avc_cfg_new
      Src: /src/gpac/src/isomedia/avc_ext.c:2926,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/avc_ext.c:2928,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:2937,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:2938,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:2939,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:2940,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:2942,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:2944,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:2945,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:2947,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:2948,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:2949,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/avc_ext.c:2952,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/avc_ext.c:2954,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:2956,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/avc_ext.c:2957,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:2958,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/avc_ext.c:2959,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:2962,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/avc_ext.c:2963,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:2964,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:2968,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/avc_ext.c:2970,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/avc_ext.c:2972,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:2974,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/avc_ext.c:2975,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:2976,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/avc_ext.c:2977,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:2980,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/avc_ext.c:2981,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:2982,1
    - Dst: gf_avcc_use_extensions
      Src: /src/gpac/src/isomedia/avc_ext.c:2991,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3002,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/avc_ext.c:3006,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/isomedia/avc_ext.c:3008,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/avc_ext.c:3014,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3015,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/avc_ext.c:3020,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/avc_ext.c:3024,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3025,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3026,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3027,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3028,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3029,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3030,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3032,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/avc_ext.c:3035,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/avc_ext.c:3039,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/avc_ext.c:3041,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/avc_ext.c:3043,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3045,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/avc_ext.c:3046,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3047,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/avc_ext.c:3048,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:3051,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/avc_ext.c:3052,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:3053,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 111
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3058
      start: 2920
    functionDepth: 1
    functionLinenumber: 2920
    functionLinenumberEnd: 3058
    functionName: avcc_box_read
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_read_data
    - gf_list_get
    - gf_list_new
    - gf_odf_avc_cfg_del
    - GF_SAFEALLOC
    - gf_avcc_use_extensions
    - GF_LOG
    - gf_avc_read_sps
    - gf_bs_available
    - gf_list_add
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_odf_avc_cfg_new
    - gf_bs_read_u16
    - gf_bs_read_u8
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err avcc_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:3062,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/avc_ext.c:3064,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3067
      start: 3060
    functionDepth: 0
    functionLinenumber: 3060
    functionLinenumberEnd: 3067
    functionName: avcc_box_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *avcc_box_new()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/avc_ext.c:3077,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3086,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3087,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3088,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3089,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3091,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3093,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3094,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3096,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3097,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3098,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3099,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3101,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3102,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/avc_ext.c:3103,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3106,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3107,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3109,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3110,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/avc_ext.c:3111,1
    - Dst: gf_avcc_use_extensions
      Src: /src/gpac/src/isomedia/avc_ext.c:3116,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3117,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3118,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3119,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3120,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3121,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3122,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3124,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3125,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3127,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3128,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/avc_ext.c:3129,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 52
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3134
      start: 3070
    functionDepth: 2
    functionLinenumber: 3070
    functionLinenumberEnd: 3134
    functionName: avcc_box_write
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_box_write_header
    - gf_avcc_use_extensions
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_list_count
    - gf_bs_write_data
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err avcc_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3145,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3147,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3149,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3151,1
    - Dst: gf_avcc_use_extensions
      Src: /src/gpac/src/isomedia/avc_ext.c:3155,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3157,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3159,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3163
      start: 3135
    functionDepth: 1
    functionLinenumber: 3135
    functionLinenumberEnd: 3163
    functionName: avcc_box_size
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_avcc_use_extensions
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err avcc_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:3171,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3172,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3173
      start: 3168
    functionDepth: 1
    functionLinenumber: 3168
    functionLinenumberEnd: 3173
    functionName: hvcc_box_del
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_odf_hevc_cfg_del
    - gf_free
    linkageType: ''
    returnType: void
    signature: void hvcc_box_del(GF_Box *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:3180,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/avc_ext.c:3182,1
    - Dst: gf_odf_hevc_cfg_read_bs
      Src: /src/gpac/src/isomedia/avc_ext.c:3186,1
    - Dst: gf_odf_hevc_cfg_read_bs
      Src: /src/gpac/src/isomedia/avc_ext.c:3189,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/avc_ext.c:3192,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/avc_ext.c:3193,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3196
      start: 3175
    functionDepth: 1
    functionLinenumber: 3175
    functionLinenumberEnd: 3196
    functionName: hvcc_box_read
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_odf_hevc_cfg_del
    - gf_odf_hevc_cfg_read_bs
    - ISOM_DECREASE_SIZE
    - gf_bs_get_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hvcc_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:3200,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/avc_ext.c:3202,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3205
      start: 3198
    functionDepth: 0
    functionLinenumber: 3198
    functionLinenumberEnd: 3205
    functionName: hvcc_box_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *hvcc_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/avc_ext.c:3214,1
    - Dst: gf_odf_hevc_cfg_write_bs
      Src: /src/gpac/src/isomedia/avc_ext.c:3217,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3218
      start: 3208
    functionDepth: 2
    functionLinenumber: 3208
    functionLinenumberEnd: 3218
    functionName: hvcc_box_write
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_odf_hevc_cfg_write_bs
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hvcc_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3235,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3237,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3239,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3241,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3245
      start: 3220
    functionDepth: 1
    functionLinenumber: 3220
    functionLinenumberEnd: 3245
    functionName: hvcc_box_size
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hvcc_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:3253,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3254,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3255
      start: 3250
    functionDepth: 1
    functionLinenumber: 3250
    functionLinenumberEnd: 3255
    functionName: vvcc_box_del
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_vvc_cfg_del
    linkageType: ''
    returnType: void
    signature: void vvcc_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:3262,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/avc_ext.c:3264,1
    - Dst: gf_odf_vvc_cfg_read_bs
      Src: /src/gpac/src/isomedia/avc_ext.c:3265,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/avc_ext.c:3266,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/avc_ext.c:3267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3270
      start: 3257
    functionDepth: 1
    functionLinenumber: 3257
    functionLinenumberEnd: 3270
    functionName: vvcc_box_read
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_odf_vvc_cfg_read_bs
    - gf_odf_vvc_cfg_del
    - ISOM_DECREASE_SIZE
    - gf_bs_get_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vvcc_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/avc_ext.c:3274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3276
      start: 3272
    functionDepth: 1
    functionLinenumber: 3272
    functionLinenumberEnd: 3276
    functionName: vvcc_box_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *vvcc_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/avc_ext.c:3286,1
    - Dst: gf_odf_vvc_cfg_write_bs
      Src: /src/gpac/src/isomedia/avc_ext.c:3289,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3290
      start: 3279
    functionDepth: 3
    functionLinenumber: 3279
    functionLinenumberEnd: 3290
    functionName: vvcc_box_write
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_odf_vvc_cfg_write_bs
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vvcc_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3324,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3326,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3332,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3334,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 34
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3338
      start: 3292
    functionDepth: 1
    functionLinenumber: 3292
    functionLinenumberEnd: 3338
    functionName: vvcc_box_size
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vvcc_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3345,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3346
      start: 3342
    functionDepth: 0
    functionLinenumber: 3342
    functionLinenumberEnd: 3346
    functionName: vvnc_box_del
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void vvnc_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/avc_ext.c:3352,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3353,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3354,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3356
      start: 3348
    functionDepth: 1
    functionLinenumber: 3348
    functionLinenumberEnd: 3356
    functionName: vvnc_box_read
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vvnc_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/avc_ext.c:3360,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3362
      start: 3358
    functionDepth: 1
    functionLinenumber: 3358
    functionLinenumberEnd: 3362
    functionName: vvnc_box_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *vvnc_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/avc_ext.c:3371,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3373,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3374,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3376
      start: 3365
    functionDepth: 3
    functionLinenumber: 3365
    functionLinenumberEnd: 3376
    functionName: vvnc_box_write
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vvnc_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3382
      start: 3378
    functionDepth: 0
    functionLinenumber: 3378
    functionLinenumberEnd: 3382
    functionName: vvnc_box_size
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vvnc_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:3386,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/avc_ext.c:3388,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3391
      start: 3385
    functionDepth: 0
    functionLinenumber: 3385
    functionLinenumberEnd: 3391
    functionName: av1c_box_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *av1c_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:3395,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3396,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3397
      start: 3393
    functionDepth: 1
    functionLinenumber: 3393
    functionLinenumberEnd: 3397
    functionName: av1c_box_del
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_av1_cfg_del
    linkageType: ''
    returnType: void
    signature: void av1c_box_del(GF_Box *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:3404,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/avc_ext.c:3406,1
    - Dst: gf_odf_av1_cfg_read_bs_size
      Src: /src/gpac/src/isomedia/avc_ext.c:3408,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/avc_ext.c:3410,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/avc_ext.c:3413,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/avc_ext.c:3416,1
    - Dst: bytes
      Src: /src/gpac/src/isomedia/avc_ext.c:3416,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/avc_ext.c:3418,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3421
      start: 3399
    functionDepth: 1
    functionLinenumber: 3399
    functionLinenumberEnd: 3421
    functionName: av1c_box_read
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_odf_av1_cfg_read_bs_size
    - GF_LOG
    - bytes
    - gf_bs_get_position
    - gf_odf_av1_cfg_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av1c_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/avc_ext.c:3429,1
    - Dst: gf_odf_av1_cfg_write_bs
      Src: /src/gpac/src/isomedia/avc_ext.c:3432,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3433
      start: 3424
    functionDepth: 2
    functionLinenumber: 3424
    functionLinenumberEnd: 3433
    functionName: av1c_box_write
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_odf_av1_cfg_write_bs
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av1c_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3446,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3447,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3452
      start: 3435
    functionDepth: 1
    functionLinenumber: 3435
    functionLinenumberEnd: 3452
    functionName: av1c_box_size
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av1c_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:3458,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/avc_ext.c:3460,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3463
      start: 3457
    functionDepth: 0
    functionLinenumber: 3457
    functionLinenumberEnd: 3463
    functionName: av3c_box_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *av3c_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_avs3v_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:3467,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3468,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3469
      start: 3465
    functionDepth: 1
    functionLinenumber: 3465
    functionLinenumberEnd: 3469
    functionName: av3c_box_del
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_avs3v_cfg_del
    linkageType: ''
    returnType: void
    signature: void av3c_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_avs3v_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:3476,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/avc_ext.c:3479,1
    - Dst: gf_odf_avs3v_cfg_read_bs
      Src: /src/gpac/src/isomedia/avc_ext.c:3480,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/avc_ext.c:3481,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/avc_ext.c:3484,1
    - Dst: bytes
      Src: /src/gpac/src/isomedia/avc_ext.c:3484,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/avc_ext.c:3486,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3489
      start: 3471
    functionDepth: 1
    functionLinenumber: 3471
    functionLinenumberEnd: 3489
    functionName: av3c_box_read
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_odf_avs3v_cfg_read_bs
    - GF_LOG
    - bytes
    - gf_bs_get_position
    - gf_odf_avs3v_cfg_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av3c_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/avc_ext.c:3497,1
    - Dst: gf_odf_avs3v_cfg_write_bs
      Src: /src/gpac/src/isomedia/avc_ext.c:3500,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3501
      start: 3492
    functionDepth: 2
    functionLinenumber: 3492
    functionLinenumberEnd: 3501
    functionName: av3c_box_write
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_odf_avs3v_cfg_write_bs
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av3c_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3514
      start: 3503
    functionDepth: 0
    functionLinenumber: 3503
    functionLinenumberEnd: 3514
    functionName: av3c_box_size
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av3c_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:3523,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3525,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3526
      start: 3520
    functionDepth: 1
    functionLinenumber: 3520
    functionLinenumberEnd: 3526
    functionName: vpcc_box_del
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_odf_vp_cfg_del
    - gf_free
    linkageType: ''
    returnType: void
    signature: void vpcc_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/isomedia/avc_ext.c:3533,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/avc_ext.c:3536,1
    - Dst: gf_odf_vp_cfg_read_bs
      Src: /src/gpac/src/isomedia/avc_ext.c:3537,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/avc_ext.c:3538,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/avc_ext.c:3541,1
    - Dst: bytes
      Src: /src/gpac/src/isomedia/avc_ext.c:3541,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/avc_ext.c:3543,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3546
      start: 3528
    functionDepth: 1
    functionLinenumber: 3528
    functionLinenumberEnd: 3546
    functionName: vpcc_box_read
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - bytes
    - gf_bs_get_position
    - gf_odf_vp_cfg_del
    - gf_odf_vp_cfg_read_bs
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vpcc_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/avc_ext.c:3550,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/avc_ext.c:3552,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3556
      start: 3548
    functionDepth: 0
    functionLinenumber: 3548
    functionLinenumberEnd: 3556
    functionName: vpcc_box_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *vpcc_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/avc_ext.c:3566,1
    - Dst: gf_odf_vp_cfg_write_bs
      Src: /src/gpac/src/isomedia/avc_ext.c:3569,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3570
      start: 3559
    functionDepth: 3
    functionLinenumber: 3559
    functionLinenumberEnd: 3570
    functionName: vpcc_box_write
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_odf_vp_cfg_write_bs
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vpcc_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/avc_ext.c:3585,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3593
      start: 3572
    functionDepth: 1
    functionLinenumber: 3572
    functionLinenumberEnd: 3593
    functionName: vpcc_box_size
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vpcc_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/avc_ext.c:3600,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3602
      start: 3598
    functionDepth: 1
    functionLinenumber: 3598
    functionLinenumberEnd: 3602
    functionName: SmDm_box_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *SmDm_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3607,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3608
      start: 3604
    functionDepth: 0
    functionLinenumber: 3604
    functionLinenumberEnd: 3608
    functionName: SmDm_box_del
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void SmDm_box_del(GF_Box *a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/avc_ext.c:3613,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3614,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3615,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3616,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3617,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3618,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3619,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3620,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3621,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:3622,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:3623,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3626
      start: 3610
    functionDepth: 1
    functionLinenumber: 3610
    functionLinenumberEnd: 3626
    functionName: SmDm_box_read
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SmDm_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/avc_ext.c:3634,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3637,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3638,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3639,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3640,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3641,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3642,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3643,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3644,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:3645,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:3646,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3649
      start: 3630
    functionDepth: 3
    functionLinenumber: 3630
    functionLinenumberEnd: 3649
    functionName: SmDm_box_write
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_full_box_write
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SmDm_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3656
      start: 3651
    functionDepth: 0
    functionLinenumber: 3651
    functionLinenumberEnd: 3656
    functionName: SmDm_box_size
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SmDm_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/avc_ext.c:3663,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3665
      start: 3661
    functionDepth: 1
    functionLinenumber: 3661
    functionLinenumberEnd: 3665
    functionName: CoLL_box_new
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *CoLL_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3670,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3671
      start: 3667
    functionDepth: 0
    functionLinenumber: 3667
    functionLinenumberEnd: 3671
    functionName: CoLL_box_del
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void CoLL_box_del(GF_Box *a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/avc_ext.c:3676,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3677,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3678,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3681
      start: 3673
    functionDepth: 1
    functionLinenumber: 3673
    functionLinenumberEnd: 3681
    functionName: CoLL_box_read
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CoLL_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/avc_ext.c:3689,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3692,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3693,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3696
      start: 3685
    functionDepth: 3
    functionLinenumber: 3685
    functionLinenumberEnd: 3696
    functionName: CoLL_box_write
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CoLL_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3703
      start: 3698
    functionDepth: 0
    functionLinenumber: 3698
    functionLinenumberEnd: 3703
    functionName: CoLL_box_size
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CoLL_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/avc_ext.c:3712,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/avc_ext.c:3714,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/avc_ext.c:3715,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/avc_ext.c:3716,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3720
      start: 3709
    functionDepth: 1
    functionLinenumber: 3709
    functionLinenumberEnd: 3720
    functionName: gf_isom_oinf_new_entry
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_OperatingPointsInformation
    signature: GF_OperatingPointsInformation *gf_isom_oinf_new_entry()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3727,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3728,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3729,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/avc_ext.c:3730,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/avc_ext.c:3732,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3735,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3736,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3737,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/avc_ext.c:3738,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/avc_ext.c:3740,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3743,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3744,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3745,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/avc_ext.c:3746,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/avc_ext.c:3748,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3750,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 1
    argNames:
    - entry
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3752
      start: 3722
    functionDepth: 1
    functionLinenumber: 3722
    functionLinenumberEnd: 3752
    functionName: gf_isom_oinf_del_entry
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_isom_oinf_del_entry(void *entry)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3760,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3761,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3762,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/avc_ext.c:3765,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3767,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3768,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3769,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:3770,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3771,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3772,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:3773,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3775,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/avc_ext.c:3778,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3780,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3781,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3782,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/avc_ext.c:3783,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3784,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3788,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3789,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3790,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3791,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/isomedia/avc_ext.c:3793,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3794,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3798,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3799,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3800,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3801,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3802,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3803,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3804,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3805,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3806,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3808,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3809,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3810,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:3813,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:3814,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/isomedia/avc_ext.c:3816,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3817,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:3820,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3822,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/avc_ext.c:3825,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3827,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3828,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/avc_ext.c:3829,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3830,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3834,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3837,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/isomedia/avc_ext.c:3839,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3840,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:3843,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 88
    argCount: 2
    argNames:
    - entry
    - bs
    argTypes:
    - void*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3847
      start: 3754
    functionDepth: 1
    functionLinenumber: 3754
    functionLinenumberEnd: 3847
    functionName: gf_isom_oinf_read_entry
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_bs_read_u32
    - GF_SAFEALLOC
    - gf_bs_read_long_int
    - gf_list_add
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_bs_is_overflow
    - gf_bs_read_u8
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_oinf_read_entry(void *entry, GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3855,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3856,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3857,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3858,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3860,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3861,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3862,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3863,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:3864,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3865,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3866,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3868,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3869,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3871,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3872,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3873,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3874,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3876,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3877,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3878,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3878,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3879,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3879,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3881,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3882,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3883,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3884,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3885,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3886,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3887,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3888,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3888,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3889,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3889,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/avc_ext.c:3891,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3892,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3893,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:3896,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/avc_ext.c:3897,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3900,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3901,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3903,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3904,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3905,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3907,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/avc_ext.c:3910,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 59
    argCount: 2
    argNames:
    - entry
    - bs
    argTypes:
    - void*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3915
      start: 3849
    functionDepth: 1
    functionLinenumber: 3849
    functionLinenumberEnd: 3915
    functionName: gf_isom_oinf_write_entry
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_bs_write_u16
    - gf_bs_write_int
    - gf_list_count
    - gf_bs_write_long_int
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_oinf_write_entry(void *entry, GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3924,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3927,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3929,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3941,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3943,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 1
    argNames:
    - entry
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3952
      start: 3917
    functionDepth: 1
    functionLinenumber: 3917
    functionLinenumberEnd: 3952
    functionName: gf_isom_oinf_size_entry
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_oinf_size_entry(void *entry)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/avc_ext.c:3958,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/avc_ext.c:3959,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3963
      start: 3955
    functionDepth: 1
    functionLinenumber: 3955
    functionLinenumberEnd: 3963
    functionName: gf_isom_linf_new_entry
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_LHVCLayerInformation
    signature: GF_LHVCLayerInformation *gf_isom_linf_new_entry()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:3969,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:3970,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3971,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/avc_ext.c:3972,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/avc_ext.c:3974,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/avc_ext.c:3975,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - entry
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3977
      start: 3965
    functionDepth: 1
    functionLinenumber: 3965
    functionLinenumberEnd: 3977
    functionName: gf_isom_linf_del_entry
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_isom_linf_del_entry(void *entry)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3985,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3986,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/avc_ext.c:3989,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3991,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3992,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3993,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3994,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3995,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/avc_ext.c:3996,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/avc_ext.c:3997,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - entry
    - bs
    argTypes:
    - void*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4000
      start: 3979
    functionDepth: 1
    functionLinenumber: 3979
    functionLinenumberEnd: 4000
    functionName: gf_isom_linf_read_entry
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_bs_read_int
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_linf_read_entry(void *entry, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:4008,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:4009,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:4010,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/avc_ext.c:4012,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:4013,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:4014,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:4015,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:4016,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:4017,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/avc_ext.c:4018,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - entry
    - bs
    argTypes:
    - void*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4021
      start: 4002
    functionDepth: 1
    functionLinenumber: 4002
    functionLinenumberEnd: 4021
    functionName: gf_isom_linf_write_entry
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bs_write_int
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_linf_write_entry(void *entry, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/avc_ext.c:4030,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - entry
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4033
      start: 4023
    functionDepth: 1
    functionLinenumber: 4023
    functionLinenumberEnd: 4033
    functionName: gf_isom_linf_size_entry
    functionSourceFile: /src/gpac/src/isomedia/avc_ext.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_linf_size_entry(void *entry)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/drm_sample.c:33,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/drm_sample.c:35,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 37
    functionName: gf_isom_ismacryp_new_sample
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_ISMASample
    signature: GF_ISMASample *gf_isom_ismacryp_new_sample()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/drm_sample.c:42,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/drm_sample.c:43,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/drm_sample.c:44,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - samp
    argTypes:
    - GF_ISMASample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 45
    functionName: gf_isom_ismacryp_delete_sample
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_ismacryp_delete_sample(GF_ISMASample *samp)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_ismacryp_new_sample
      Src: /src/gpac/src/isomedia/drm_sample.c:54,1
    - Dst: gf_isom_ismacryp_new_sample
      Src: /src/gpac/src/isomedia/drm_sample.c:57,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/drm_sample.c:62,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/drm_sample.c:71,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/drm_sample.c:72,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/isomedia/drm_sample.c:80,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/drm_sample.c:85,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/drm_sample.c:87,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/drm_sample.c:91,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/drm_sample.c:93,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/drm_sample.c:94,1
    - Dst: gf_isom_ismacryp_delete_sample
      Src: /src/gpac/src/isomedia/drm_sample.c:98,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 54
    argCount: 5
    argNames:
    - data
    - dataLength
    - use_selective_encryption
    - KI_length
    - IV_length
    argTypes:
    - u8*
    - u32
    - Bool
    - u8
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 100
    functionName: gf_isom_ismacryp_sample_from_data
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_new
    - gf_bs_read_long_int
    - gf_bs_del
    - gf_bs_read_int
    - gf_isom_ismacryp_new_sample
    - gf_isom_ismacryp_delete_sample
    - gf_malloc
    linkageType: ''
    returnType: GF_ISMASample
    signature: GF_ISMASample *gf_isom_ismacryp_sample_from_data(u8 *data, u32 dataLength,
      Bool use_selective_encryption, u8 KI_length, u8 IV_length)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/drm_sample.c:113,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/drm_sample.c:116,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/drm_sample.c:117,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/isomedia/drm_sample.c:120,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/drm_sample.c:121,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/drm_sample.c:123,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/drm_sample.c:124,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/drm_sample.c:127,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/drm_sample.c:128,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 2
    argNames:
    - s
    - dest
    argTypes:
    - GF_ISMASample*
    - GF_ISOSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 130
    functionName: gf_isom_ismacryp_sample_to_sample
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_del
    - gf_bs_write_data
    - gf_bs_write_long_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_ismacryp_sample_to_sample(const GF_ISMASample *s, GF_ISOSample
      *dest)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/drm_sample.c:140,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/drm_sample.c:144,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 17
    argCount: 4
    argNames:
    - trak
    - sampleDescriptionIndex
    - scheme_type
    - out_sea
    argTypes:
    - GF_TrackBox*
    - u32
    - u32
    - GF_SampleEntryBox**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 156
    functionName: isom_get_sinf_entry
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - Media_GetSampleDesc
    - gf_list_enum
    linkageType: ''
    returnType: GF_ProtectionSchemeInfoBox
    signature: GF_ProtectionSchemeInfoBox *isom_get_sinf_entry(GF_TrackBox *trak,
      u32 sampleDescriptionIndex, u32 scheme_type, GF_SampleEntryBox **out_sea)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:165,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:168,1
    - Dst: gf_isom_ismacryp_sample_from_data
      Src: /src/gpac/src/isomedia/drm_sample.c:175,1
    - Dst: gf_isom_ismacryp_sample_from_data
      Src: /src/gpac/src/isomedia/drm_sample.c:183,1
    - Dst: gf_isom_ismacryp_sample_from_data
      Src: /src/gpac/src/isomedia/drm_sample.c:186,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 158
    functionDepth: 3
    functionLinenumber: 158
    functionLinenumberEnd: 189
    functionName: GF_ISMASample *gf_isom_get_ismacryp_sample(GF_ISOFile *the_file,
      u32 trackNumber, const GF_ISOSample *samp, u32 sampleDescriptionIndex)
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_isom_ismacryp_sample_from_data
    - gf_isom_get_track_box
    - isom_get_sinf_entry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ISMASample *gf_isom_get_ismacryp_sample(GF_ISOFile *the_file,
      u32 trackNumber, const GF_ISOSample *samp, u32 sampleDescriptionIndex)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:199,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:201,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:206,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 18
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 192
    functionDepth: 3
    functionLinenumber: 192
    functionLinenumberEnd: 215
    functionName: gf_isom_is_media_encrypted
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - isom_get_sinf_entry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_is_media_encrypted(GF_ISOFile *the_file, u32 trackNumber,
      u32 sampleDescriptionIndex)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:223,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:226,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 217
    functionDepth: 3
    functionLinenumber: 217
    functionLinenumberEnd: 234
    functionName: gf_isom_is_ismacryp_media
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 2
    functionsReached:
    - gf_isom_get_track_box
    - isom_get_sinf_entry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_is_ismacryp_media(GF_ISOFile *the_file, u32 trackNumber,
      u32 sampleDescriptionIndex)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:242,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:245,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 236
    functionDepth: 3
    functionLinenumber: 236
    functionLinenumberEnd: 253
    functionName: gf_isom_is_omadrm_media
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - isom_get_sinf_entry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_is_omadrm_media(GF_ISOFile *the_file, u32 trackNumber,
      u32 sampleDescriptionIndex)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:262,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:265,1
    - Dst: IsMP4Description
      Src: /src/gpac/src/isomedia/drm_sample.c:270,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 41
    argCount: 11
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    - outOriginalFormat
    - outSchemeType
    - outSchemeVersion
    - outSchemeURI
    - outKMS_URI
    - outSelectiveEncryption
    - outIVLength
    - outKeyIndicationLength
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u32*
    - u32*
    - char**
    - char**
    - Bool*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 256
    functionDepth: 3
    functionLinenumber: 256
    functionLinenumberEnd: 291
    functionName: gf_isom_get_ismacryp_info
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - IsMP4Description
    - isom_get_sinf_entry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_ismacryp_info(GF_ISOFile *the_file, u32 trackNumber,
      u32 sampleDescriptionIndex, u32 *outOriginalFormat, u32 *outSchemeType, u32
      *outSchemeVersion, const char **outSchemeURI, const char **outKMS_URI, Bool
      *outSelectiveEncryption, u32 *outIVLength, u32 *outKeyIndicationLength)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:303,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:306,1
    - Dst: IsMP4Description
      Src: /src/gpac/src/isomedia/drm_sample.c:313,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 47
    argCount: 15
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    - outOriginalFormat
    - outSchemeType
    - outSchemeVersion
    - outContentID
    - outRightsIssuerURL
    - outTextualHeaders
    - outTextualHeadersLen
    - outPlaintextLength
    - outEncryptionType
    - outSelectiveEncryption
    - outIVLength
    - outKeyIndicationLength
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u32*
    - u32*
    - char**
    - char**
    - char**
    - u32*
    - u64*
    - u32*
    - Bool*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 295
    functionDepth: 3
    functionLinenumber: 295
    functionLinenumberEnd: 336
    functionName: gf_isom_get_omadrm_info
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - IsMP4Description
    - isom_get_sinf_entry
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_get_omadrm_info(GF_ISOFile *the_file, u32 trackNumber,
      u32 sampleDescriptionIndex, u32 *outOriginalFormat,\n                               u32
      *outSchemeType, u32 *outSchemeVersion,\n                               const
      char **outContentID, const char **outRightsIssuerURL, const char **outTextualHeaders,
      u32 *outTextualHeadersLen, u64 *outPlaintextLength, u32 *outEncryptionType,
      Bool *outSelectiveEncryption, u32 *outIVLength, u32 *outKeyIndicationLength)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/drm_sample.c:354,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:357,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:361,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:362,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:363,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:364,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:365,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:366,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:367,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:368,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:369,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:370,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/drm_sample.c:375,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:377,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 40
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 347
    functionDepth: 5
    functionLinenumber: 347
    functionLinenumberEnd: 382
    functionName: gf_isom_remove_track_protection
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - isom_get_sinf_entry
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_remove_track_protection(GF_ISOFile *the_file, u32 trackNumber,
      u32 sampleDescriptionIndex)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/drm_sample.c:393,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:396,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:400,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/drm_sample.c:404,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/drm_sample.c:405,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/drm_sample.c:408,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/drm_sample.c:409,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 5
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    - scheme_uri
    - kms_uri
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 385
    functionDepth: 3
    functionLinenumber: 385
    functionLinenumberEnd: 412
    functionName: gf_isom_change_ismacryp_protection
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_strdup
    - isom_get_sinf_entry
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_change_ismacryp_protection(GF_ISOFile *the_file,
      u32 trackNumber, u32 sampleDescriptionIndex, char *scheme_uri, char *kms_uri)
  - BBCount: 63
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:424,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/drm_sample.c:427,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/drm_sample.c:512,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/drm_sample.c:522,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/drm_sample.c:522,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:527,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:530,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/drm_sample.c:538,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/drm_sample.c:538,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/drm_sample.c:540,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/drm_sample.c:540,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:543,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:552,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 132
    argCount: 10
    argNames:
    - the_file
    - trackNumber
    - desc_index
    - version
    - flags
    - scheme_type
    - scheme_version
    - scheme_uri
    - is_isma
    - out_sinf
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u8
    - u32
    - u32
    - u32
    - char*
    - Bool
    - GF_ProtectionSchemeInfoBox**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 415
    functionDepth: 5
    functionLinenumber: 415
    functionLinenumberEnd: 556
    functionName: isom_set_protected_entry
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - memmove
    - GF_LOG
    - strlen
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - Media_GetSampleDesc
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err isom_set_protected_entry(GF_ISOFile *the_file, u32 trackNumber,
      u32 desc_index, u8 version, u32 flags,\n        u32 scheme_type, u32 scheme_version,
      char *scheme_uri, Bool is_isma, GF_ProtectionSchemeInfoBox **out_sinf)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: isom_set_protected_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:567,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/drm_sample.c:572,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:575,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/drm_sample.c:577,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:580,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 10
    argNames:
    - the_file
    - trackNumber
    - desc_index
    - scheme_type
    - scheme_version
    - scheme_uri
    - kms_URI
    - selective_encryption
    - KI_length
    - IV_length
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - char*
    - char*
    - Bool
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 558
    functionDepth: 6
    functionLinenumber: 558
    functionLinenumberEnd: 587
    functionName: gf_isom_set_ismacryp_protection
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - isom_set_protected_entry
    - gf_strdup
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_set_ismacryp_protection(GF_ISOFile *the_file, u32
      trackNumber, u32 desc_index, u32 scheme_type,\n                                       u32
      scheme_version, char *scheme_uri, char *kms_URI,\n                                       Bool
      selective_encryption, u32 KI_length, u32 IV_length)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: isom_set_protected_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:598,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:601,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:603,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:609,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/drm_sample.c:614,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/drm_sample.c:615,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/drm_sample.c:617,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:619,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 12
    argNames:
    - the_file
    - trackNumber
    - desc_index
    - contentID
    - kms_URI
    - encryption_type
    - plainTextLength
    - textual_headers
    - textual_headers_len
    - selective_encryption
    - KI_length
    - IV_length
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - char*
    - char*
    - u32
    - u64
    - char*
    - u32
    - Bool
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 623
      start: 589
    functionDepth: 6
    functionLinenumber: 589
    functionLinenumberEnd: 623
    functionName: gf_isom_set_oma_protection
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - memcpy
    - gf_isom_box_new_parent
    - isom_set_protected_entry
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_set_oma_protection(GF_ISOFile *the_file, u32 trackNumber,
      u32 desc_index,\n                                  char *contentID, char *kms_URI,
      u32 encryption_type, u64 plainTextLength, char *textual_headers, u32 textual_headers_len,\n
      \                                 Bool selective_encryption, u32 KI_length,
      u32 IV_length)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: isom_set_protected_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:632,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/drm_sample.c:637,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:641,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/drm_sample.c:642,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 7
    argNames:
    - the_file
    - trackNumber
    - desc_index
    - scheme_type
    - scheme_version
    - scheme_uri
    - kms_URI
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 645
      start: 625
    functionDepth: 6
    functionLinenumber: 625
    functionLinenumberEnd: 645
    functionName: gf_isom_set_generic_protection
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - isom_set_protected_entry
    - gf_strdup
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_generic_protection(GF_ISOFile *the_file, u32
      trackNumber, u32 desc_index, u32 scheme_type, u32 scheme_version, char *scheme_uri,
      char *kms_URI)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:656,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:659,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/drm_sample.c:663,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/drm_sample.c:665,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/drm_sample.c:666,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 24
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    - outOriginalFormat
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 676
      start: 648
    functionDepth: 2
    functionLinenumber: 648
    functionLinenumberEnd: 676
    functionName: gf_isom_get_original_format_type
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 5
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - Media_GetSampleDesc
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_original_format_type(GF_ISOFile *the_file, u32
      trackNumber, u32 sampleDescriptionIndex, u32 *outOriginalFormat)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:687,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:690,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:694,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:695,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:696,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:697,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:698,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:699,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:700,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 39
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 680
    functionDepth: 3
    functionLinenumber: 680
    functionLinenumberEnd: 723
    functionName: gf_isom_is_cenc_media
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 6
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - isom_get_sinf_entry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_is_cenc_media(GF_ISOFile *the_file, u32 trackNumber,
      u32 sampleDescriptionIndex)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:731,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:735,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:736,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:737,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:738,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:739,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:740,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:741,1
    - Dst: IsMP4Description
      Src: /src/gpac/src/isomedia/drm_sample.c:747,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 29
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    - outOriginalFormat
    - outSchemeType
    - outSchemeVersion
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 752
      start: 725
    functionDepth: 3
    functionLinenumber: 725
    functionLinenumberEnd: 752
    functionName: gf_isom_get_cenc_info
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 3
    functionsReached:
    - gf_isom_get_track_box
    - IsMP4Description
    - isom_get_sinf_entry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_cenc_info(GF_ISOFile *the_file, u32 trackNumber,
      u32 sampleDescriptionIndex, u32 *outOriginalFormat, u32 *outSchemeType, u32
      *outSchemeVersion)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_cenc_validate_key_info
      Src: /src/gpac/src/isomedia/drm_sample.c:765,1
    - Dst: isom_set_protected_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:769,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:773,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:780,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:785,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:795,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 10
    argNames:
    - the_file
    - trackNumber
    - desc_index
    - scheme_type
    - scheme_version
    - default_IsEncrypted
    - default_crypt_byte_block
    - default_skip_byte_block
    - key_info
    - key_info_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 798
      start: 757
    functionDepth: 6
    functionLinenumber: 757
    functionLinenumberEnd: 798
    functionName: gf_isom_set_cenc_protection
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_cenc_validate_key_info
    - memcpy
    - isom_set_protected_entry
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_set_cenc_protection(GF_ISOFile *the_file, u32 trackNumber,
      u32 desc_index, u32 scheme_type,\n                                   u32 scheme_version,
      u32 default_IsEncrypted, u32 default_crypt_byte_block, u32 default_skip_byte_block,\n\t\t\t\t\t\t\t\t
      \   u8 *key_info, u32 key_info_size)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:811,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:818,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:819,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:830,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/drm_sample.c:831,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:835,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/drm_sample.c:836,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 841
      start: 807
    functionDepth: 5
    functionLinenumber: 807
    functionLinenumberEnd: 841
    functionName: gf_isom_remove_cenc_saiz
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_list_del
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_remove_cenc_saiz(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:852,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:859,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:860,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:871,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/drm_sample.c:872,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:876,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/drm_sample.c:877,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 882
      start: 848
    functionDepth: 5
    functionLinenumber: 848
    functionLinenumberEnd: 882
    functionName: gf_isom_remove_cenc_saio
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_list_del
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_remove_cenc_saio(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/drm_sample.c:896,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/drm_sample.c:901,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/drm_sample.c:909,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/drm_sample.c:913,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/drm_sample.c:917,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/drm_sample.c:921,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/drm_sample.c:926,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/drm_sample.c:929,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:935,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:937,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/drm_sample.c:939,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:941,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:943,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/drm_sample.c:945,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/drm_sample.c:954,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/drm_sample.c:958,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:960,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/drm_sample.c:973,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:976,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/drm_sample.c:984,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:987,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 106
    argCount: 8
    argNames:
    - file
    - systemID
    - version
    - KID_count
    - KIDs
    - data
    - len
    - pssh_mode
    argTypes:
    - GF_ISOFile*
    - bin128
    - u32
    - u32
    - bin128*
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 992
      start: 885
    functionDepth: 5
    functionLinenumber: 885
    functionLinenumberEnd: 992
    functionName: gf_isom_cenc_set_pssh
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - memcmp
    - memcpy
    - gf_isom_box_new_parent
    - gf_list_add
    - gf_list_enum
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_cenc_set_pssh(GF_ISOFile *file, bin128 systemID,
      u32 version, u32 KID_count, bin128 *KIDs, u8 *data, u32 len, u32 pssh_mode)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1000,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1006,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1007,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1009,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1013,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1018,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/drm_sample.c:1019,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1022,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1023,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1025,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1029,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1034
      start: 995
    functionDepth: 5
    functionLinenumber: 995
    functionLinenumberEnd: 1034
    functionName: gf_isom_remove_cenc_senc_box
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_remove_cenc_senc_box(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1041,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1047,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1048,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/drm_sample.c:1050,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1051,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1055,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/drm_sample.c:1056,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1060,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1061,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/drm_sample.c:1063,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1064,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1068,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/drm_sample.c:1069,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1074
      start: 1036
    functionDepth: 5
    functionLinenumber: 1036
    functionLinenumberEnd: 1074
    functionName: gf_isom_remove_cenc_seig_sample_group
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_list_del
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_remove_cenc_seig_sample_group(GF_ISOFile *the_file,
      u32 trackNumber)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1084,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1085,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1090,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1095,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/drm_sample.c:1096,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - the_file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1101
      start: 1081
    functionDepth: 5
    functionLinenumber: 1081
    functionLinenumberEnd: 1101
    functionName: gf_isom_remove_pssh_box
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_remove_pssh_box(GF_ISOFile *the_file)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/drm_sample.c:1111,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:1120,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/drm_sample.c:1122,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 5
    argNames:
    - version
    - flags
    - AlgorithmID
    - IV_size
    - KID
    argTypes:
    - u8
    - u32
    - u32
    - u8
    - bin128
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1125
      start: 1107
    functionDepth: 4
    functionLinenumber: 1107
    functionLinenumberEnd: 1125
    functionName: gf_isom_create_piff_psec_box
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - strcpy
    - gf_list_new
    - gf_isom_box_new
    linkageType: ''
    returnType: GF_SampleEncryptionBox
    signature: GF_SampleEncryptionBox * gf_isom_create_piff_psec_box(u8 version, u32
      flags, u32 AlgorithmID, u8 IV_size, bin128 KID)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/drm_sample.c:1131,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/drm_sample.c:1136,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - version
    - flags
    argTypes:
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1139
      start: 1127
    functionDepth: 4
    functionLinenumber: 1127
    functionLinenumberEnd: 1139
    functionName: gf_isom_create_samp_enc_box
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - gf_isom_box_new
    linkageType: ''
    returnType: GF_SampleEncryptionBox
    signature: GF_SampleEncryptionBox * gf_isom_create_samp_enc_box(u8 version, u32
      flags)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1144,1
    - Dst: gf_isom_create_samp_enc_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1148,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/drm_sample.c:1150,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/drm_sample.c:1151,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1152
      start: 1141
    functionDepth: 5
    functionLinenumber: 1141
    functionLinenumberEnd: 1152
    functionName: gf_isom_cenc_allocate_storage
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_new
    - gf_isom_create_samp_enc_box
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_cenc_allocate_storage(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1157,1
    - Dst: gf_isom_create_piff_psec_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1161,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/drm_sample.c:1163,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/drm_sample.c:1164,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 5
    argNames:
    - the_file
    - trackNumber
    - AlgorithmID
    - IV_size
    - KID
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u8
    - bin128
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1165
      start: 1154
    functionDepth: 5
    functionLinenumber: 1154
    functionLinenumberEnd: 1165
    functionName: gf_isom_piff_allocate_storage
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_isom_create_piff_psec_box
    - gf_isom_get_track_box
    - gf_list_new
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_piff_allocate_storage(GF_ISOFile *the_file, u32 trackNumber,
      u32 AlgorithmID, u8 IV_size, bin128 KID)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1173,1
    - Dst: stbl_on_child_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1179,1
    - Dst: traf_on_child_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1181,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1184,1
    - Dst: stbl_on_child_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1193,1
    - Dst: traf_on_child_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1195,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1205,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 39
    argCount: 6
    argNames:
    - senc
    - stbl
    - traf
    - len
    - saio_32bits
    - use_multikey
    argTypes:
    - GF_SampleEncryptionBox*
    - GF_SampleTableBox*
    - GF_TrackFragmentBox*
    - u32
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1216
      start: 1168
    functionDepth: 5
    functionLinenumber: 1168
    functionLinenumberEnd: 1216
    functionName: gf_isom_cenc_set_saiz_saio
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - stbl_on_child_box
    - traf_on_child_box
    - gf_realloc
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: void
    signature: void gf_isom_cenc_set_saiz_saio(GF_SampleEncryptionBox *senc, GF_SampleTableBox
      *stbl, GF_TrackFragmentBox  *traf, u32 len, Bool saio_32bits, Bool use_multikey)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/drm_sample.c:1222,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1225,1
    - Dst: stbl_on_child_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1229,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1235,1
    - Dst: stbl_on_child_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1241,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1257,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/drm_sample.c:1266,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1276,1
    - Dst: MAX
      Src: /src/gpac/src/isomedia/drm_sample.c:1289,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1290,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/drm_sample.c:1294,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 80
    argCount: 5
    argNames:
    - senc
    - stbl
    - sample_number
    - offset
    - len
    argTypes:
    - GF_SampleEncryptionBox*
    - GF_SampleTableBox*
    - u32
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1305
      start: 1218
    functionDepth: 5
    functionLinenumber: 1218
    functionLinenumberEnd: 1305
    functionName: gf_isom_cenc_merge_saiz_saio
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - gf_assert
    - gf_isom_box_new_parent
    - memset
    - MAX
    - stbl_on_child_box
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_cenc_merge_saiz_saio(GF_SampleEncryptionBox *senc, GF_SampleTableBox
      *stbl, u32 sample_number, u64 offset, u32 len)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1314,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/drm_sample.c:1331,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1334,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/drm_sample.c:1336,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:1339,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/drm_sample.c:1341,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/drm_sample.c:1343,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/drm_sample.c:1345,1
    - Dst: gf_isom_cenc_set_saiz_saio
      Src: /src/gpac/src/isomedia/drm_sample.c:1354,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 42
    argCount: 8
    argNames:
    - the_file
    - trackNumber
    - container_type
    - buf
    - len
    - use_subsamples
    - use_saio_32bit
    - use_multikey
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u8*
    - u32
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1358
      start: 1308
    functionDepth: 6
    functionLinenumber: 1308
    functionLinenumberEnd: 1358
    functionName: gf_isom_track_cenc_add_sample_info
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_cenc_set_saiz_saio
    - GF_SAFEALLOC
    - memcpy
    - gf_list_add
    - gf_isom_get_track_box
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_track_cenc_add_sample_info(GF_ISOFile *the_file,
      u32 trackNumber, u32 container_type, u8 *buf, u32 len, Bool use_subsamples,
      Bool use_saio_32bit, Bool use_multikey)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/drm_sample.c:1365,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/drm_sample.c:1366,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - samp
    argTypes:
    - GF_CENCSampleAuxInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1367
      start: 1361
    functionDepth: 0
    functionLinenumber: 1361
    functionLinenumberEnd: 1367
    functionName: gf_isom_cenc_samp_aux_info_del
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 4
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_cenc_samp_aux_info_del(GF_CENCSampleAuxInfo *samp)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/drm_sample.c:1382,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/drm_sample.c:1394,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1406,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1407,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1409,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1418,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1421,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/drm_sample.c:1426,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/drm_sample.c:1436,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1452,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1461,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1464,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/drm_sample.c:1468,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/drm_sample.c:1478,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 90
    argCount: 3
    argNames:
    - stbl
    - _traf
    - scheme_type
    argTypes:
    - GF_SampleTableBox*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1495
      start: 1369
    functionDepth: 2
    functionLinenumber: 1369
    functionLinenumberEnd: 1495
    functionName: gf_isom_cenc_has_saiz_saio_full
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - GF_LOG
    - gf_list_count
    - gf_opts_get_bool
    - gf_isom_box_find_child
    linkageType: ''
    returnType: Bool
    signature: Bool gf_isom_cenc_has_saiz_saio_full(GF_SampleTableBox *stbl, void
      *_traf, u32 scheme_type)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/drm_sample.c:1394,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1401
      start: 1390
    functionDepth: 1
    functionLinenumber: 1390
    functionLinenumberEnd: 1401
    functionName: if
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    linkageType: ''
    returnType: else
    signature: else if (_traf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_cenc_has_saiz_saio_full
      Src: /src/gpac/src/isomedia/drm_sample.c:1499,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - stbl
    - scheme_type
    argTypes:
    - GF_SampleTableBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1500
      start: 1497
    functionDepth: 3
    functionLinenumber: 1497
    functionLinenumberEnd: 1500
    functionName: gf_isom_cenc_has_saiz_saio_track
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_isom_cenc_has_saiz_saio_full
    linkageType: ''
    returnType: Bool
    signature: Bool gf_isom_cenc_has_saiz_saio_track(GF_SampleTableBox *stbl, u32
      scheme_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_cenc_has_saiz_saio_full
      Src: /src/gpac/src/isomedia/drm_sample.c:1505,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - traf
    - scheme_type
    argTypes:
    - GF_TrackFragmentBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1506
      start: 1503
    functionDepth: 3
    functionLinenumber: 1503
    functionLinenumberEnd: 1506
    functionName: gf_isom_cenc_has_saiz_saio_traf
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - gf_isom_cenc_has_saiz_saio_full
    linkageType: ''
    returnType: Bool
    signature: Bool gf_isom_cenc_has_saiz_saio_traf(GF_TrackFragmentBox *traf, u32
      scheme_type)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1522,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1523,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1551,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1552,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1603,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/drm_sample.c:1605,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/drm_sample.c:1607,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/drm_sample.c:1608,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/drm_sample.c:1609,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1614,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:1617,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/drm_sample.c:1625,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/drm_sample.c:1627,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1631,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/drm_sample.c:1635,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/drm_sample.c:1639,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 117
    argCount: 5
    argNames:
    - mdia
    - sampleNumber
    - scheme_type
    - out_buffer
    - out_size
    argTypes:
    - GF_MediaBox*
    - u32
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1642
      start: 1510
    functionDepth: 1
    functionLinenumber: 1510
    functionLinenumberEnd: 1642
    functionName: isom_cenc_get_sai_by_saiz_saio
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_list_get
    - gf_bs_seek
    - memcpy
    - gf_bs_get_position
    - gf_list_count
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err isom_cenc_get_sai_by_saiz_saio(GF_MediaBox *mdia, u32 sampleNumber,
      u32 scheme_type, u8 **out_buffer, u32 *out_size)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1653,1
    - Dst: gf_isom_get_cenc_info
      Src: /src/gpac/src/isomedia/drm_sample.c:1678,1
    - Dst: gf_isom_cenc_has_saiz_saio_track
      Src: /src/gpac/src/isomedia/drm_sample.c:1681,1
    - Dst: isom_cenc_get_sai_by_saiz_saio
      Src: /src/gpac/src/isomedia/drm_sample.c:1682,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1688,1
    - Dst: senc_Parse
      Src: /src/gpac/src/isomedia/drm_sample.c:1689,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1697,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1701,1
    - Dst: gf_isom_get_sample_cenc_info_internal
      Src: /src/gpac/src/isomedia/drm_sample.c:1715,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1729,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:1733,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 65
    argCount: 7
    argNames:
    - the_file
    - trackNumber
    - sampleNumber
    - sampleDescIndex
    - container_type
    - out_buffer
    - outSize
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1735
      start: 1644
    functionDepth: 4
    functionLinenumber: 1644
    functionLinenumberEnd: 1735
    functionName: gf_isom_cenc_get_sample_aux_info
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 3
    functionsReached:
    - isom_cenc_get_sai_by_saiz_saio
    - gf_list_get
    - gf_isom_cenc_has_saiz_saio_track
    - gf_isom_get_cenc_info
    - memcpy
    - gf_isom_get_sample_cenc_info_internal
    - gf_list_count
    - senc_Parse
    - gf_isom_get_track_box
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_cenc_get_sample_aux_info(GF_ISOFile *the_file, u32
      trackNumber, u32 sampleNumber, u32 sampleDescIndex, u32 *container_type, u8
      **out_buffer, u32 *outSize)
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:1750,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:1751,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:1752,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:1753,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:1754,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:1755,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:1756,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1759,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1764,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/drm_sample.c:1765,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1796,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1799,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1802,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1804,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/drm_sample.c:1819,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 106
    argCount: 8
    argNames:
    - trak
    - sampleDescriptionIndex
    - container_type
    - default_IsEncrypted
    - crypt_byte_block
    - skip_byte_block
    - key_info
    - key_info_size
    argTypes:
    - GF_TrackBox*
    - u32
    - u32*
    - Bool*
    - u32*
    - u32*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1831
      start: 1737
    functionDepth: 3
    functionLinenumber: 1737
    functionLinenumberEnd: 1831
    functionName: gf_isom_cenc_get_default_info_internal
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - isom_get_sinf_entry
    - GF_LOG
    - gf_list_count
    - gf_isom_box_find_child
    linkageType: ''
    returnType: void
    signature: void gf_isom_cenc_get_default_info_internal(GF_TrackBox *trak, u32
      sampleDescriptionIndex, u32 *container_type, Bool *default_IsEncrypted, u32
      *crypt_byte_block, u32 *skip_byte_block, const u8 **key_info, u32 *key_info_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1836,1
    - Dst: gf_isom_cenc_get_default_info_internal
      Src: /src/gpac/src/isomedia/drm_sample.c:1838,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 9
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    - container_type
    - default_IsEncrypted
    - crypt_byte_block
    - skip_byte_block
    - key_info
    - key_info_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - Bool*
    - u32*
    - u32*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1840
      start: 1833
    functionDepth: 4
    functionLinenumber: 1833
    functionLinenumberEnd: 1840
    functionName: gf_isom_cenc_get_default_info
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - gf_isom_cenc_get_default_info_internal
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_cenc_get_default_info(GF_ISOFile *the_file, u32 trackNumber,
      u32 sampleDescriptionIndex, u32 *container_type, Bool *default_IsEncrypted,
      u32 *crypt_byte_block, u32 *skip_byte_block, const u8 **key_info, u32 *key_info_size)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: isom_set_protected_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:1853,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1859,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1862,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1865,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1868,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1871,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:1874,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1877,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1880,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1884,1
    - Dst: strncpy
      Src: /src/gpac/src/isomedia/drm_sample.c:1887,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1891,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 41
    argCount: 8
    argNames:
    - the_file
    - trackNumber
    - desc_index
    - scheme_type
    - scheme_version
    - is_selective_enc
    - metadata
    - len
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - Bool
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1898
      start: 1845
    functionDepth: 6
    functionLinenumber: 1845
    functionLinenumberEnd: 1898
    functionName: gf_isom_set_adobe_protection
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - strcpy
    - gf_isom_box_new_parent
    - strncpy
    - isom_set_protected_entry
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_adobe_protection(GF_ISOFile *the_file, u32 trackNumber,
      u32 desc_index, u32 scheme_type, u32 scheme_version, Bool is_selective_enc,
      char *metadata, u32 len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1906,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:1909,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1918
      start: 1900
    functionDepth: 3
    functionLinenumber: 1900
    functionLinenumberEnd: 1918
    functionName: gf_isom_is_adobe_protection_media
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 2
    functionsReached:
    - gf_isom_get_track_box
    - isom_get_sinf_entry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_is_adobe_protection_media(GF_ISOFile *the_file, u32
      trackNumber, u32 sampleDescriptionIndex)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1926,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:1929,1
    - Dst: IsMP4Description
      Src: /src/gpac/src/isomedia/drm_sample.c:1935,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 23
    argCount: 7
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    - outOriginalFormat
    - outSchemeType
    - outSchemeVersion
    - outMetadata
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u32*
    - u32*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1950
      start: 1920
    functionDepth: 3
    functionLinenumber: 1920
    functionLinenumberEnd: 1950
    functionName: gf_isom_get_adobe_protection_info
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - IsMP4Description
    - isom_get_sinf_entry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_adobe_protection_info(GF_ISOFile *the_file, u32
      trackNumber, u32 sampleDescriptionIndex, u32 *outOriginalFormat, u32 *outSchemeType,
      u32 *outSchemeVersion, const char **outMetadata)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/drm_sample.c:1962,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 6
    argCount: 1
    argNames:
    - the_file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1965
      start: 1957
    functionDepth: 1
    functionLinenumber: 1957
    functionLinenumberEnd: 1965
    functionName: gf_isom_ipmpx_remove_tool_list
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    linkageType: ''
    returnType: void
    signature: void gf_isom_ipmpx_remove_tool_list(GF_ISOFile *the_file)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/drm_sample.c:2006,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 2
    argNames:
    - key_info
    - key_info_size
    argTypes:
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2008
      start: 1968
    functionDepth: 1
    functionLinenumber: 1968
    functionLinenumberEnd: 2008
    functionName: gf_cenc_validate_key_info
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cenc_validate_key_info(const u8 *key_info, u32 key_info_size)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/media_odf.c:55,1
    - Dst: gf_odf_codec_new
      Src: /src/gpac/src/isomedia/media_odf.c:60,1
    - Dst: gf_odf_codec_new
      Src: /src/gpac/src/isomedia/media_odf.c:62,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/isomedia/media_odf.c:64,1
    - Dst: gf_odf_codec_set_au
      Src: /src/gpac/src/isomedia/media_odf.c:67,1
    - Dst: gf_odf_codec_decode
      Src: /src/gpac/src/isomedia/media_odf.c:69,1
    - Dst: gf_odf_codec_get_com
      Src: /src/gpac/src/isomedia/media_odf.c:73,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/isomedia/media_odf.c:80,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/media_odf.c:83,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/media_odf.c:93,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/media_odf.c:98,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/media_odf.c:100,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/media_odf.c:106,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/media_odf.c:133,1
    - Dst: gf_isom_get_track_from_id
      Src: /src/gpac/src/isomedia/media_odf.c:136,1
    - Dst: GetESDForTime
      Src: /src/gpac/src/isomedia/media_odf.c:138,1
    - Dst: gf_odf_desc_add_desc
      Src: /src/gpac/src/isomedia/media_odf.c:139,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/media_odf.c:141,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/isomedia/media_odf.c:142,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/media_odf.c:143,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/isomedia/media_odf.c:144,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/media_odf.c:150,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/media_odf.c:151,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/isomedia/media_odf.c:154,1
    - Dst: gf_odf_codec_add_com
      Src: /src/gpac/src/isomedia/media_odf.c:155,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/isomedia/media_odf.c:160,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/media_odf.c:163,1
    - Dst: gf_isom_get_track_from_id
      Src: /src/gpac/src/isomedia/media_odf.c:166,1
    - Dst: GetESDForTime
      Src: /src/gpac/src/isomedia/media_odf.c:168,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/media_odf.c:170,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/isomedia/media_odf.c:172,1
    - Dst: gf_odf_codec_add_com
      Src: /src/gpac/src/isomedia/media_odf.c:173,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/isomedia/media_odf.c:180,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/media_odf.c:184,1
    - Dst: gf_isom_get_track_from_id
      Src: /src/gpac/src/isomedia/media_odf.c:194,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/media_odf.c:204,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/isomedia/media_odf.c:206,1
    - Dst: gf_odf_codec_add_com
      Src: /src/gpac/src/isomedia/media_odf.c:207,1
    - Dst: gf_odf_codec_add_com
      Src: /src/gpac/src/isomedia/media_odf.c:211,1
    - Dst: gf_odf_codec_encode
      Src: /src/gpac/src/isomedia/media_odf.c:216,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/media_odf.c:220,1
    - Dst: gf_odf_codec_get_au
      Src: /src/gpac/src/isomedia/media_odf.c:223,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/isomedia/media_odf.c:226,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/isomedia/media_odf.c:227,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 169
    argCount: 2
    argNames:
    - mdia
    - sample
    argTypes:
    - GF_MediaBox*
    - GF_ISOSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 31
    functionDepth: 7
    functionLinenumber: 31
    functionLinenumberEnd: 229
    functionName: Media_RewriteODFrame
    functionSourceFile: /src/gpac/src/isomedia/media_odf.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_odf_desc_del
    - GetESDForTime
    - gf_odf_desc_copy
    - gf_odf_com_new
    - gf_odf_codec_set_au
    - gf_odf_codec_get_au
    - gf_realloc
    - gf_list_new
    - gf_odf_com_del
    - gf_list_add
    - gf_odf_codec_del
    - gf_odf_codec_decode
    - Track_FindRef
    - gf_list_enum
    - gf_malloc
    - gf_odf_codec_encode
    - gf_odf_codec_get_com
    - gf_odf_codec_new
    - gf_odf_codec_add_com
    - gf_isom_get_track_from_id
    - gf_odf_desc_add_desc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Media_RewriteODFrame(GF_MediaBox *mdia, GF_ISOSample *sample)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/media_odf.c:260,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/media_odf.c:262,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/media_odf.c:266,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/media_odf.c:269,1
    - Dst: gf_odf_codec_new
      Src: /src/gpac/src/isomedia/media_odf.c:275,1
    - Dst: gf_odf_codec_new
      Src: /src/gpac/src/isomedia/media_odf.c:277,1
    - Dst: gf_odf_codec_set_au
      Src: /src/gpac/src/isomedia/media_odf.c:280,1
    - Dst: gf_odf_codec_decode
      Src: /src/gpac/src/isomedia/media_odf.c:282,1
    - Dst: gf_odf_codec_get_com
      Src: /src/gpac/src/isomedia/media_odf.c:286,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/isomedia/media_odf.c:295,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/media_odf.c:298,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/media_odf.c:309,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/media_odf.c:312,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/media_odf.c:316,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/media_odf.c:330,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/media_odf.c:345,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/isomedia/media_odf.c:346,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/media_odf.c:348,1
    - Dst: reftype_AddRefTrack
      Src: /src/gpac/src/isomedia/media_odf.c:354,1
    - Dst: gf_odf_desc_add_desc
      Src: /src/gpac/src/isomedia/media_odf.c:356,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/media_odf.c:360,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/media_odf.c:362,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/isomedia/media_odf.c:365,1
    - Dst: gf_odf_codec_add_com
      Src: /src/gpac/src/isomedia/media_odf.c:367,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/isomedia/media_odf.c:373,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/media_odf.c:376,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/isomedia/media_odf.c:377,1
    - Dst: reftype_AddRefTrack
      Src: /src/gpac/src/isomedia/media_odf.c:379,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/media_odf.c:381,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/isomedia/media_odf.c:384,1
    - Dst: gf_odf_codec_add_com
      Src: /src/gpac/src/isomedia/media_odf.c:385,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/isomedia/media_odf.c:391,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/media_odf.c:398,1
    - Dst: reftype_AddRefTrack
      Src: /src/gpac/src/isomedia/media_odf.c:405,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/isomedia/media_odf.c:409,1
    - Dst: gf_odf_codec_add_com
      Src: /src/gpac/src/isomedia/media_odf.c:410,1
    - Dst: gf_odf_codec_add_com
      Src: /src/gpac/src/isomedia/media_odf.c:415,1
    - Dst: gf_odf_codec_encode
      Src: /src/gpac/src/isomedia/media_odf.c:421,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/isomedia/media_odf.c:425,1
    - Dst: gf_odf_codec_get_au
      Src: /src/gpac/src/isomedia/media_odf.c:429,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/media_odf.c:431,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/isomedia/media_odf.c:437,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/isomedia/media_odf.c:438,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 180
    argCount: 3
    argNames:
    - mdia
    - sample
    - od_samp
    argTypes:
    - GF_MediaBox*
    - GF_ISOSample*
    - GF_ISOSample**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 233
    functionDepth: 5
    functionLinenumber: 233
    functionLinenumberEnd: 440
    functionName: Media_ParseODFrame
    functionSourceFile: /src/gpac/src/isomedia/media_odf.c
    functionUses: 0
    functionsReached:
    - trak_on_child_box
    - gf_odf_desc_del
    - gf_odf_desc_copy
    - gf_odf_com_new
    - gf_odf_codec_set_au
    - gf_odf_codec_get_au
    - gf_list_new
    - gf_isom_sample_del
    - reftype_AddRefTrack
    - gf_odf_com_del
    - gf_odf_desc_new
    - gf_list_add
    - gf_odf_codec_del
    - gf_odf_codec_decode
    - GF_LOG
    - gf_isom_box_new_parent
    - gf_isom_sample_new
    - Track_FindRef
    - gf_list_enum
    - gf_malloc
    - gf_odf_codec_encode
    - gf_odf_codec_get_com
    - gf_odf_codec_new
    - gf_odf_codec_add_com
    - gf_odf_desc_add_desc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Media_ParseODFrame(GF_MediaBox *mdia, const GF_ISOSample *sample,
      GF_ISOSample **od_samp)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/media_odf.c:460,1
    - Dst: gf_odf_codec_new
      Src: /src/gpac/src/isomedia/media_odf.c:467,1
    - Dst: gf_odf_codec_set_au
      Src: /src/gpac/src/isomedia/media_odf.c:469,1
    - Dst: gf_odf_codec_decode
      Src: /src/gpac/src/isomedia/media_odf.c:471,1
    - Dst: gf_odf_codec_get_com
      Src: /src/gpac/src/isomedia/media_odf.c:476,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/media_odf.c:482,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/media_odf.c:492,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/isomedia/media_odf.c:500,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/isomedia/media_odf.c:505,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 56
    argCount: 3
    argNames:
    - mdia
    - sample
    - track_id
    argTypes:
    - GF_MediaBox*
    - GF_ISOSample*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 445
    functionDepth: 2
    functionLinenumber: 445
    functionLinenumberEnd: 507
    functionName: Media_FindOD_ID
    functionSourceFile: /src/gpac/src/isomedia/media_odf.c
    functionUses: 0
    functionsReached:
    - gf_odf_codec_decode
    - gf_odf_codec_get_com
    - gf_odf_com_del
    - gf_odf_codec_new
    - Track_FindRef
    - gf_odf_codec_set_au
    - gf_odf_codec_del
    - gf_list_enum
    linkageType: ''
    returnType: u32
    signature: u32 Media_FindOD_ID(GF_MediaBox *mdia, GF_ISOSample *sample, u32 track_id)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/media_odf.c:515,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/media_odf.c:519,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/isomedia/media_odf.c:530,1
    - Dst: Media_FindOD_ID
      Src: /src/gpac/src/isomedia/media_odf.c:531,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/media_odf.c:532,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 18
    argCount: 2
    argNames:
    - file
    - track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 537
      start: 510
    functionDepth: 3
    functionLinenumber: 510
    functionLinenumberEnd: 537
    functionName: gf_isom_find_od_id_for_track
    functionSourceFile: /src/gpac/src/isomedia/media_odf.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_del
    - Media_FindOD_ID
    - gf_isom_get_track_box
    - gf_list_enum
    - gf_isom_get_sample
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_find_od_id_for_track(GF_ISOFile *file, u32 track)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:38,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - file
    - root_meta
    - track_num
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 40
    functionName: gf_isom_get_meta
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_MetaBox
    signature: GF_MetaBox *gf_isom_get_meta(GF_ISOFile *file, Bool root_meta, u32
      track_num)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:45,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - file
    - root_meta
    - track_num
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 42
    functionDepth: 2
    functionLinenumber: 42
    functionLinenumberEnd: 49
    functionName: gf_isom_get_meta_type
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 3
    functionsReached:
    - gf_isom_get_meta
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_meta_type(GF_ISOFile *file, Bool root_meta, u32
      track_num)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:55,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:58,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:60,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - file
    - root_meta
    - track_num
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 65
    functionName: gf_isom_has_meta_xml
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_isom_get_meta
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_has_meta_xml(GF_ISOFile *file, Bool root_meta, u32
      track_num)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:74,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:78,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:80,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/meta.c:88,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/meta.c:90,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/isomedia/meta.c:91,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/meta.c:92,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 5
    argNames:
    - file
    - root_meta
    - track_num
    - outName
    - is_binary
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - char*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 67
    functionDepth: 2
    functionLinenumber: 67
    functionLinenumberEnd: 96
    functionName: gf_isom_extract_meta_xml
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 2
    functionsReached:
    - gf_fclose
    - gf_list_get
    - gf_fwrite
    - gf_list_count
    - gf_fopen
    - gf_isom_get_meta
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_extract_meta_xml(GF_ISOFile *file, Bool root_meta,
      u32 track_num, char *outName, Bool *is_binary)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:102,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:106,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:108,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 4
    argNames:
    - file
    - root_meta
    - track_num
    - is_binary
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 99
    functionDepth: 2
    functionLinenumber: 99
    functionLinenumberEnd: 118
    functionName: gf_isom_get_meta_xml
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_meta
    - gf_list_get
    linkageType: ''
    returnType: GF_XMLBox
    signature: GF_XMLBox *gf_isom_get_meta_xml(GF_ISOFile *file, Bool root_meta, u32
      track_num, Bool *is_binary)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:125,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:127,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 3
    argNames:
    - file
    - root_meta
    - track_num
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 122
    functionDepth: 2
    functionLinenumber: 122
    functionLinenumberEnd: 128
    functionName: gf_isom_get_meta_item_count
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 6
    functionsReached:
    - gf_list_count
    - gf_isom_get_meta
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_meta_item_count(GF_ISOFile *file, Bool root_meta,
      u32 track_num)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:138,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:141,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:158,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/meta.c:165,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:174,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:176,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:181,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:191,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 74
    argCount: 14
    argNames:
    - file
    - root_meta
    - track_num
    - item_num
    - itemID
    - type
    - protection_scheme
    - protection_scheme_version
    - is_self_reference
    - item_name
    - item_mime_type
    - item_encoding
    - item_url
    - item_urn
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - u32
    - u32*
    - u32*
    - u32*
    - u32*
    - Bool*
    - char**
    - char**
    - char**
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 130
    functionDepth: 2
    functionLinenumber: 130
    functionLinenumberEnd: 204
    functionName: gf_isom_get_meta_item_info
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 5
    functionsReached:
    - gf_list_count
    - gf_isom_get_meta
    - gf_list_get
    - GF_4CC
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_get_meta_item_info(GF_ISOFile *file, Bool root_meta,
      u32 track_num, u32 item_num,\n                                  u32 *itemID,
      u32 *type, u32 *protection_scheme, u32 *protection_scheme_version, Bool *is_self_reference,\n
      \                                 const char **item_name, const char **item_mime_type,
      const char **item_encoding,\n                                  const char **item_url,
      const char **item_urn)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:210,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:213,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 4
    argNames:
    - file
    - root_meta
    - track_num
    - item_num
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 206
    functionDepth: 2
    functionLinenumber: 206
    functionLinenumberEnd: 216
    functionName: gf_isom_get_meta_item_flags
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_meta
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_meta_item_flags(GF_ISOFile *file, Bool root_meta,
      u32 track_num, u32 item_num)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:222,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:224,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:226,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 4
    argNames:
    - file
    - root_meta
    - track_num
    - item_ID
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 218
    functionDepth: 2
    functionLinenumber: 218
    functionLinenumberEnd: 230
    functionName: gf_isom_get_meta_item_by_id
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_isom_get_meta
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_meta_item_by_id(GF_ISOFile *file, Bool root_meta,
      u32 track_num, u32 item_ID)
  - BBCount: 55
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:246,1
    - Dst: gf_isom_get_meta_item_by_id
      Src: /src/gpac/src/isomedia/meta.c:251,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:253,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:261,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:263,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:274,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:276,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:286,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:291,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:302,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:313,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:319,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:321,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:330,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:337,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:339,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/meta.c:351,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/meta.c:353,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/meta.c:354,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/isomedia/meta.c:355,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/meta.c:357,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/meta.c:357,1
    - Dst: sprintf
      Src: /src/gpac/src/isomedia/meta.c:358,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/meta.c:359,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/isomedia/meta.c:360,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/meta.c:369,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:373,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:375,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:380,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/meta.c:382,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:403,1
    - Dst: gf_odf_hevc_cfg_write_bs
      Src: /src/gpac/src/isomedia/meta.c:407,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:414,1
    - Dst: gf_odf_avc_cfg_write_bs
      Src: /src/gpac/src/isomedia/meta.c:418,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:425,1
    - Dst: gf_odf_vvc_cfg_write_bs
      Src: /src/gpac/src/isomedia/meta.c:429,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:441,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/meta.c:442,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/meta.c:452,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/meta.c:459,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/meta.c:461,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/meta.c:467,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/meta.c:468,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/meta.c:473,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/meta.c:474,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/isomedia/meta.c:477,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/isomedia/meta.c:484,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/meta.c:486,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/meta.c:488,1
    CyclomaticComplexity: 92
    EdgeCount: 92
    ICount: 212
    argCount: 10
    argNames:
    - file
    - root_meta
    - track_num
    - item_id
    - dump_file_name
    - out_data
    - out_size
    - out_alloc_size
    - out_mime
    - use_annex_b
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - u32
    - char*
    - u8**
    - u32*
    - u32*
    - char**
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 232
    functionDepth: 3
    functionLinenumber: 232
    functionLinenumberEnd: 491
    functionName: gf_isom_extract_meta_item_intern
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_new
    - strcpy
    - gf_odf_avc_cfg_write_bs
    - gf_list_count
    - gf_fopen
    - gf_bs_write_u32
    - gf_list_get
    - gf_odf_vvc_cfg_write_bs
    - sprintf
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_write_data
    - gf_bs_from_file
    - gf_isom_get_meta
    - gf_bs_is_overflow
    - gf_bs_get_content_no_truncate
    - strlen
    - gf_fclose
    - gf_bs_seek
    - gf_bs_del
    - gf_bs_read_int
    - gf_isom_get_meta_item_by_id
    - gf_odf_hevc_cfg_write_bs
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_extract_meta_item_intern(GF_ISOFile *file, Bool root_meta,
      u32 track_num, u32 item_id, const char *dump_file_name, u8 **out_data, u32 *out_size,
      u32 *out_alloc_size, const char **out_mime, Bool use_annex_b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_extract_meta_item_intern
      Src: /src/gpac/src/isomedia/meta.c:496,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - file
    - root_meta
    - track_num
    - item_id
    - dump_file_name
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 493
    functionDepth: 4
    functionLinenumber: 493
    functionLinenumberEnd: 497
    functionName: gf_isom_extract_meta_item
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 2
    functionsReached:
    - gf_isom_extract_meta_item_intern
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_extract_meta_item(GF_ISOFile *file, Bool root_meta,
      u32 track_num, u32 item_id, const char *dump_file_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_extract_meta_item_intern
      Src: /src/gpac/src/isomedia/meta.c:502,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - file
    - root_meta
    - track_num
    - item_id
    - out_data
    - out_size
    - out_alloc_size
    - out_mime
    - use_annex_b
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - u32
    - u8**
    - u32*
    - u32*
    - char**
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 499
    functionDepth: 4
    functionLinenumber: 499
    functionLinenumberEnd: 503
    functionName: gf_isom_extract_meta_item_mem
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 2
    functionsReached:
    - gf_isom_extract_meta_item_intern
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_extract_meta_item_mem(GF_ISOFile *file, Bool root_meta,
      u32 track_num, u32 item_id, u8 **out_data, u32 *out_size, u32 *out_alloc_size,
      const char **out_mime, Bool use_annex_b)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:515,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:521,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:523,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:528,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:553,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:555,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:563,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:566,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:571,1
    - Dst: gf_isom_extract_meta_item_mem
      Src: /src/gpac/src/isomedia/meta.c:595,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 77
    argCount: 13
    argNames:
    - file
    - root_meta
    - track_num
    - item_id
    - is_protected
    - skip_byte_block
    - crypt_byte_block
    - key_info
    - key_info_size
    - aux_info_type_param
    - cenc_sai_data
    - cenc_sai_data_size
    - cenc_sai_alloc_size
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - u32
    - Bool*
    - u32*
    - u32*
    - u8**
    - u32*
    - u32*
    - u8**
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 596
      start: 505
    functionDepth: 5
    functionLinenumber: 505
    functionLinenumberEnd: 596
    functionName: gf_isom_extract_meta_item_get_cenc_info
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_isom_get_meta
    - gf_list_get
    - gf_isom_extract_meta_item_mem
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_extract_meta_item_get_cenc_info(GF_ISOFile *file,
      Bool root_meta, u32 track_num, u32 item_id, Bool *is_protected,\n\tu32 *skip_byte_block,
      u32 *crypt_byte_block, const u8 **key_info, u32 *key_info_size, u32 *aux_info_type_param,\n\tu8
      **cenc_sai_data, u32 *cenc_sai_data_size, u32 *cenc_sai_alloc_size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:602,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - file
    - root_meta
    - track_num
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 599
    functionDepth: 2
    functionLinenumber: 599
    functionLinenumberEnd: 605
    functionName: gf_isom_get_meta_primary_item_id
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_meta
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_meta_primary_item_id(GF_ISOFile *file, Bool root_meta,
      u32 track_num)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/meta.c:617,1
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:620,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/meta.c:623,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:627,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/meta.c:629,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/meta.c:633,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:634,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:636,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/meta.c:638,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/meta.c:641,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:642,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/meta.c:648,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/meta.c:649,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/meta.c:653,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:656,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/meta.c:658,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:666,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/meta.c:669,1
    - Dst: sprintf
      Src: /src/gpac/src/isomedia/meta.c:671,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/meta.c:671,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:672,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 66
    argCount: 4
    argNames:
    - file
    - root_meta
    - track_num
    - metaType
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 675
      start: 611
    functionDepth: 5
    functionLinenumber: 611
    functionLinenumberEnd: 675
    functionName: gf_isom_set_meta_type
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_isom_box_del_parent
    - gf_list_new
    - gf_list_get
    - gf_4cc_to_str
    - gf_strdup
    - gf_isom_box_del
    - gf_isom_insert_moov
    - sprintf
    - gf_isom_box_new_parent
    - gf_list_add
    - gf_list_del_item
    - gf_isom_box_new
    - gf_isom_can_access_movie
    - gf_isom_get_meta
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_meta_type(GF_ISOFile *file, Bool root_meta, u32
      track_num, u32 metaType)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:682,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/meta.c:685,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/meta.c:689,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - file
    - root_meta
    - track_num
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 695
      start: 677
    functionDepth: 5
    functionLinenumber: 677
    functionLinenumberEnd: 695
    functionName: gf_isom_remove_meta_xml
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_del_parent
    - gf_isom_get_meta
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_remove_meta_xml(GF_ISOFile *file, Bool root_meta,
      u32 track_num)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/meta.c:707,1
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:710,1
    - Dst: gf_isom_remove_meta_xml
      Src: /src/gpac/src/isomedia/meta.c:713,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:716,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/isomedia/meta.c:722,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/meta.c:726,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/meta.c:728,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 7
    argNames:
    - file
    - root_meta
    - track_num
    - XMLFileName
    - data
    - data_size
    - IsBinaryXML
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - char*
    - unsigned char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 697
    functionDepth: 6
    functionLinenumber: 697
    functionLinenumberEnd: 730
    functionName: gf_isom_set_meta_xml
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 2
    functionsReached:
    - gf_isom_remove_meta_xml
    - memcpy
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_meta
    - gf_malloc
    - gf_file_load_data
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_meta_xml(GF_ISOFile *file, Bool root_meta, u32
      track_num, char *XMLFileName, unsigned char *data, u32 data_size, Bool IsBinaryXML)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:740,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/meta.c:743,1
    - Dst: gf_isom_get_meta_item_by_id
      Src: /src/gpac/src/isomedia/meta.c:749,1
    - Dst: gf_isom_get_meta_item_flags
      Src: /src/gpac/src/isomedia/meta.c:750,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:754,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:756,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:762,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/meta.c:838,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:857,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 99
    argCount: 6
    argNames:
    - file
    - root_meta
    - track_num
    - item_id
    - prop
    - unmapped_props
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - u32
    - GF_ImageItemProperties*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 864
      start: 734
    functionDepth: 3
    functionLinenumber: 734
    functionLinenumberEnd: 864
    functionName: gf_isom_get_meta_image_props
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 3
    functionsReached:
    - gf_list_get
    - memcpy
    - gf_isom_get_meta_item_flags
    - gf_list_count
    - memset
    - gf_list_add
    - gf_isom_get_meta_item_by_id
    - gf_isom_get_meta
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_meta_image_props(GF_ISOFile *file, Bool root_meta,
      u32 track_num, u32 item_id, GF_ImageItemProperties *prop, GF_List *unmapped_props)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:871,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:873,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/meta.c:960,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/meta.c:969,1
    - Dst: gf_isom_box_equal
      Src: /src/gpac/src/isomedia/meta.c:985,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 85
    argCount: 2
    argNames:
    - boxes
    - prop
    argTypes:
    - GF_ItemPropertyContainerBox*
    - GF_ImageItemProperties*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 993
      start: 868
    functionDepth: 1
    functionLinenumber: 868
    functionLinenumberEnd: 993
    functionName: meta_find_prop
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - memcmp
    - gf_isom_box_equal
    linkageType: ''
    returnType: s32
    signature: s32 meta_find_prop(GF_ItemPropertyContainerBox *boxes, GF_ImageItemProperties
      *prop)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:999,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1002,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/meta.c:1009,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/meta.c:1011,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/meta.c:1014,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 4
    argNames:
    - ipma
    - item_ID
    - prop_index
    - essential
    argTypes:
    - GF_ItemPropertyAssociationBox*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1021
      start: 995
    functionDepth: 1
    functionLinenumber: 995
    functionLinenumberEnd: 1021
    functionName: meta_add_item_property_association
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_get
    - GF_SAFEALLOC
    - gf_list_count
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err meta_add_item_property_association(GF_ItemPropertyAssociationBox
      *ipma, u32 item_ID, u32 prop_index, Bool essential)
  - BBCount: 90
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/isomedia/meta.c:1030,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1033,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1035,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1038,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/meta.c:1046,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/meta.c:1048,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/isomedia/meta.c:1051,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:1053,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1057,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:1059,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1064,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1065,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1073,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1075,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1079,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1082,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1090,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1092,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1096,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1098,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1106,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1108,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1112,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1114,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1128,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1130,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1140,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1142,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1148,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1150,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1153,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1155,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1161,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1163,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1166,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1168,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1174,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1177,1
    - Dst: gf_isom_clone_config_box
      Src: /src/gpac/src/isomedia/meta.c:1177,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1178,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1183,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/meta.c:1190,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/meta.c:1191,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/meta.c:1193,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/meta.c:1194,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/meta.c:1195,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/meta.c:1197,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/meta.c:1198,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1201,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/meta.c:1202,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/meta.c:1206,1
    - Dst: gf_isom_box_equal
      Src: /src/gpac/src/isomedia/meta.c:1208,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/meta.c:1209,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/meta.c:1210,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1216,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1217,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1220,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/meta.c:1223,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/meta.c:1224,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1228,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1230,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/meta.c:1234,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1239,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1242,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1246,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1248,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1250,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1257,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1259,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/meta.c:1263,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1268,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1271,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1275,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1277,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1279,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1290,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1292,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/meta.c:1295,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1300,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1302,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/meta.c:1309,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1310,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1312,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/meta.c:1315,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1316,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1318,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/meta.c:1320,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1324,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1326,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1329,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1331,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1337,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1339,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1340,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/meta.c:1343,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/meta.c:1345,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1347,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1353,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1355,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1358,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1360,1
    - Dst: gf_cenc_validate_key_info
      Src: /src/gpac/src/isomedia/meta.c:1368,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1373,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1375,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/meta.c:1380,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/meta.c:1382,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/meta.c:1385,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1386,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1390,1
    CyclomaticComplexity: 106
    EdgeCount: 106
    ICount: 354
    argCount: 4
    argNames:
    - meta
    - item_ID
    - item_type
    - image_props
    argTypes:
    - GF_MetaBox*
    - u32
    - u32
    - GF_ImageItemProperties*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1396
      start: 1023
    functionDepth: 5
    functionLinenumber: 1023
    functionLinenumberEnd: 1396
    functionName: meta_process_image_properties
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_box_equal
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_list_find
    - gf_list_count
    - memset
    - meta_add_item_property_association
    - gf_isom_box_find_child
    - gf_list_new
    - gf_strdup
    - memcpy
    - gf_cenc_validate_key_info
    - gf_list_add
    - gf_isom_box_array_read
    - gf_isom_box_del_parent
    - GF_LOG
    - meta_find_prop
    - gf_isom_box_new_parent
    - strlen
    - gf_isom_box_array_del
    - gf_list_del
    - gf_malloc
    - gf_isom_clone_config_box
    - gf_list_pop_front
    - gf_bs_del
    - gf_opts_get_bool
    - gf_file_load_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err meta_process_image_properties(GF_MetaBox *meta, u32 item_ID,
      u32 item_type, GF_ImageItemProperties *image_props)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:1405,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:1407,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1413,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1415,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1425,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1427,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 4
    argNames:
    - file
    - root_meta
    - track_num
    - item_id
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1433
      start: 1398
    functionDepth: 2
    functionLinenumber: 1398
    functionLinenumberEnd: 1433
    functionName: gf_isom_meta_get_next_item_id
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_isom_get_meta
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_meta_get_next_item_id(GF_ISOFile *file, Bool root_meta,
      u32 track_num, u32 *item_id)
  - BBCount: 89
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/meta.c:1449,1
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:1451,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:1454,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:1456,1
    - Dst: FlushCaptureMode
      Src: /src/gpac/src/isomedia/meta.c:1461,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/meta.c:1466,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/meta.c:1468,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1472,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1474,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:1477,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1482,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1487,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1489,1
    - Dst: gf_isom_get_sample_size
      Src: /src/gpac/src/isomedia/meta.c:1500,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1502,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1507,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1511,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1522,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1524,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1526,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/meta.c:1529,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/meta.c:1531,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/meta.c:1534,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/meta.c:1535,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/meta.c:1539,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1541,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1544,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1547,1
    - Dst: meta_process_image_properties
      Src: /src/gpac/src/isomedia/meta.c:1554,1
    - Dst: gf_isom_add_meta_item_memory
      Src: /src/gpac/src/isomedia/meta.c:1562,1
    - Dst: gf_isom_meta_add_item_ref
      Src: /src/gpac/src/isomedia/meta.c:1565,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1572,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1575,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1593,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1596,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1600,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1606,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1610,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1611,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1618,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1620,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1621,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/meta.c:1626,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/meta.c:1634,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1636,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1637,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1645,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1649,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/meta.c:1653,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/meta.c:1656,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1662,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1666,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/meta.c:1670,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1672,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1673,1
    - Dst: gf_isom_meta_add_item_ref
      Src: /src/gpac/src/isomedia/meta.c:1674,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/meta.c:1680,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/src/isomedia/meta.c:1685,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/meta.c:1686,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1687,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/meta.c:1709,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1713,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/meta.c:1723,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/meta.c:1726,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1734,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/meta.c:1737,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/meta.c:1743,1
    - Dst: gf_fsize
      Src: /src/gpac/src/isomedia/meta.c:1747,1
    - Dst: gf_fread
      Src: /src/gpac/src/isomedia/meta.c:1752,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/meta.c:1754,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/meta.c:1757,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/meta.c:1768,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/meta.c:1771,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1775,1
    CyclomaticComplexity: 109
    EdgeCount: 109
    ICount: 293
    argCount: 18
    argNames:
    - file
    - root_meta
    - track_num
    - self_reference
    - resource_path
    - item_name
    - io_item_id
    - item_type
    - mime_type
    - content_encoding
    - image_props
    - URL
    - URN
    - data
    - data_len
    - item_extent_refs
    - tk_id
    - sample_num
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - Bool
    - char*
    - char*
    - u32*
    - u32
    - char*
    - char*
    - GF_ImageItemProperties*
    - char*
    - char*
    - char*
    - u32
    - GF_List*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1781
      start: 1435
    functionDepth: 6
    functionLinenumber: 1435
    functionLinenumberEnd: 1781
    functionName: gf_isom_add_meta_item_extended
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_isom_add_meta_item_memory
    - GF_SAFEALLOC
    - gf_list_find
    - gf_list_count
    - memset
    - gf_fopen
    - gf_isom_get_sample_info
    - gf_isom_get_sample_size
    - gf_isom_can_access_movie
    - meta_add_item_property_association
    - gf_list_get
    - gf_strdup
    - gf_list_new
    - gf_isom_sample_del
    - memcpy
    - Media_CreateDataRef
    - gf_fsize
    - gf_list_add
    - gf_isom_box_new
    - FlushCaptureMode
    - gf_isom_box_del_parent
    - Media_FindDataRef
    - GF_LOG
    - gf_fread
    - gf_isom_box_new_parent
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_isom_get_meta
    - gf_malloc
    - gf_fclose
    - gf_isom_meta_add_item_ref
    - meta_process_image_properties
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err gf_isom_add_meta_item_extended(GF_ISOFile *file, Bool root_meta,
      u32 track_num, Bool self_reference, char *resource_path,\n                                      const
      char *item_name, u32 *io_item_id, u32 item_type, const char *mime_type, const
      char *content_encoding,\n                                      GF_ImageItemProperties
      *image_props,\n                                      const char *URL, const
      char *URN,\n                                      char *data, u32 data_len,
      GF_List *item_extent_refs, u32 tk_id, u32 sample_num)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_add_meta_item_extended
      Src: /src/gpac/src/isomedia/meta.c:1788,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 13
    argNames:
    - file
    - root_meta
    - track_num
    - self_reference
    - resource_path
    - item_name
    - item_id
    - item_type
    - mime_type
    - content_encoding
    - URL
    - URN
    - image_props
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - Bool
    - char*
    - char*
    - u32
    - u32
    - char*
    - char*
    - char*
    - char*
    - GF_ImageItemProperties*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1789
      start: 1783
    functionDepth: 7
    functionLinenumber: 1783
    functionLinenumberEnd: 1789
    functionName: gf_isom_add_meta_item
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 1
    functionsReached:
    - gf_isom_add_meta_item_extended
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_add_meta_item(GF_ISOFile *file, Bool root_meta,
      u32 track_num, Bool self_reference, char *resource_path, const char *item_name,
      u32 item_id, u32 item_type,\n                             const char *mime_type,
      const char *content_encoding, const char *URL, const char *URN,\n                             GF_ImageItemProperties
      *image_props)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_add_meta_item_extended
      Src: /src/gpac/src/isomedia/meta.c:1796,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 13
    argNames:
    - file
    - root_meta
    - track_num
    - self_reference
    - resource_path
    - item_name
    - io_item_id
    - item_type
    - mime_type
    - content_encoding
    - URL
    - URN
    - image_props
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - Bool
    - char*
    - char*
    - u32*
    - u32
    - char*
    - char*
    - char*
    - char*
    - GF_ImageItemProperties*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1797
      start: 1791
    functionDepth: 7
    functionLinenumber: 1791
    functionLinenumberEnd: 1797
    functionName: gf_isom_add_meta_item2
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 1
    functionsReached:
    - gf_isom_add_meta_item_extended
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_add_meta_item2(GF_ISOFile *file, Bool root_meta,
      u32 track_num, Bool self_reference, char *resource_path, const char *item_name,
      u32 *io_item_id, u32 item_type,\n                              const char *mime_type,
      const char *content_encoding, const char *URL, const char *URN,\n                              GF_ImageItemProperties
      *image_props)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_add_meta_item_extended
      Src: /src/gpac/src/isomedia/meta.c:1802,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 12
    argNames:
    - file
    - root_meta
    - track_num
    - item_name
    - item_id
    - item_type
    - mime_type
    - content_encoding
    - image_props
    - data
    - data_len
    - item_extent_refs
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - char*
    - u32*
    - u32
    - char*
    - char*
    - GF_ImageItemProperties*
    - char*
    - u32
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1803
      start: 1799
    functionDepth: 7
    functionLinenumber: 1799
    functionLinenumberEnd: 1803
    functionName: gf_isom_add_meta_item_memory
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 5
    functionsReached:
    - gf_isom_add_meta_item_extended
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_add_meta_item_memory(GF_ISOFile *file, Bool root_meta,
      u32 track_num, const char *item_name, u32 *item_id, u32 item_type, const char
      *mime_type, const char *content_encoding, GF_ImageItemProperties *image_props,
      char *data, u32 data_len, GF_List *item_extent_refs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_add_meta_item_extended
      Src: /src/gpac/src/isomedia/meta.c:1808,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 11
    argNames:
    - file
    - root_meta
    - track_num
    - item_name
    - item_id
    - item_type
    - mime_type
    - content_encoding
    - image_props
    - tk_id
    - sample_num
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - char*
    - u32*
    - u32
    - char*
    - char*
    - GF_ImageItemProperties*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1809
      start: 1805
    functionDepth: 7
    functionLinenumber: 1805
    functionLinenumberEnd: 1809
    functionName: gf_isom_add_meta_item_sample_ref
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 1
    functionsReached:
    - gf_isom_add_meta_item_extended
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_add_meta_item_sample_ref(GF_ISOFile *file, Bool root_meta,
      u32 track_num, const char *item_name, u32 *item_id, u32 item_type, const char
      *mime_type, const char *content_encoding, GF_ImageItemProperties *image_props,
      u32 tk_id, u32 sample_num)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1813,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1815,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - meta
    - prop_idx
    argTypes:
    - GF_MetaBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1821
      start: 1811
    functionDepth: 1
    functionLinenumber: 1811
    functionLinenumberEnd: 1821
    functionName: meta_use_item_prop_idx
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: Bool
    signature: Bool meta_use_item_prop_idx(GF_MetaBox *meta, u32 prop_idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1825,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1827,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - meta
    - prop_idx
    argTypes:
    - GF_MetaBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1834
      start: 1823
    functionDepth: 1
    functionLinenumber: 1823
    functionLinenumberEnd: 1834
    functionName: meta_shift_item_prop_idx
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void meta_shift_item_prop_idx(GF_MetaBox *meta, u32 prop_idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1838,1
    - Dst: meta_use_item_prop_idx
      Src: /src/gpac/src/isomedia/meta.c:1841,1
    - Dst: meta_shift_item_prop_idx
      Src: /src/gpac/src/isomedia/meta.c:1843,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1844,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/meta.c:1845,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - meta
    argTypes:
    - GF_MetaBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1849
      start: 1836
    functionDepth: 5
    functionLinenumber: 1836
    functionLinenumberEnd: 1849
    functionName: meta_cleanup_associations
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - meta_use_item_prop_idx
    - meta_shift_item_prop_idx
    - gf_list_count
    linkageType: ''
    returnType: void
    signature: void meta_cleanup_associations(GF_MetaBox *meta)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1860,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/meta.c:1862,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/meta.c:1863,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/meta.c:1869,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 17
    argCount: 3
    argNames:
    - meta
    - pa_ent
    - keep_props
    argTypes:
    - GF_MetaBox*
    - GF_ItemPropertyAssociationEntry*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1875
      start: 1851
    functionDepth: 1
    functionLinenumber: 1851
    functionLinenumberEnd: 1875
    functionName: meta_cleanup_item_association
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_list_get
    - memmove
    - strstr
    linkageType: ''
    returnType: void
    signature: void meta_cleanup_item_association(GF_MetaBox *meta, GF_ItemPropertyAssociationEntry
      *pa_ent, const char *keep_props)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:1883,1
    - Dst: gf_isom_get_meta_item_by_id
      Src: /src/gpac/src/isomedia/meta.c:1887,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:1889,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1892,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/meta.c:1893,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1895,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1897,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/meta.c:1902,1
    - Dst: iloc_entry_del
      Src: /src/gpac/src/isomedia/meta.c:1903,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1911,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1913,1
    - Dst: meta_cleanup_item_association
      Src: /src/gpac/src/isomedia/meta.c:1915,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/meta.c:1917,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/meta.c:1918,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/meta.c:1919,1
    - Dst: meta_cleanup_associations
      Src: /src/gpac/src/isomedia/meta.c:1927,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1932,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1934,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/meta.c:1943,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/meta.c:1952,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/meta.c:1953,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1963,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1965,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/meta.c:1982,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 84
    argCount: 6
    argNames:
    - file
    - root_meta
    - track_num
    - item_id
    - keep_refs
    - keep_props
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - u32
    - Bool
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1984
      start: 1878
    functionDepth: 6
    functionLinenumber: 1878
    functionLinenumberEnd: 1984
    functionName: gf_isom_remove_meta_item
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_isom_box_del_parent
    - gf_list_get
    - memmove
    - meta_cleanup_item_association
    - GF_LOG
    - meta_cleanup_associations
    - gf_list_count
    - gf_isom_get_meta_item_by_id
    - iloc_entry_del
    - gf_isom_get_meta
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_remove_meta_item(GF_ISOFile *file, Bool root_meta,
      u32 track_num, u32 item_id, Bool keep_refs, const char *keep_props)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:1989,1
    - Dst: gf_isom_has_meta_xml
      Src: /src/gpac/src/isomedia/meta.c:1992,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/meta.c:1994,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1995,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 4
    argNames:
    - file
    - root_meta
    - track_num
    - item_id
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1999
      start: 1986
    functionDepth: 5
    functionLinenumber: 1986
    functionLinenumberEnd: 1999
    functionName: gf_isom_set_meta_primary_item
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 2
    functionsReached:
    - gf_isom_has_meta_xml
    - gf_isom_box_del_parent
    - gf_isom_get_meta
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_meta_primary_item(GF_ISOFile *file, Bool root_meta,
      u32 track_num, u32 item_id)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:2010,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:2013,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:2016,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2018,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:2025,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:2027,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/meta.c:2039,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 39
    argCount: 7
    argNames:
    - file
    - root_meta
    - track_num
    - from_id
    - to_id
    - type
    - ref_index
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - u32
    - u32
    - u32
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2048
      start: 2004
    functionDepth: 5
    functionLinenumber: 2004
    functionLinenumberEnd: 2048
    functionName: gf_isom_meta_add_item_ref
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 4
    functionsReached:
    - gf_list_get
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_list_add
    - gf_isom_get_meta
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_meta_add_item_ref(GF_ISOFile *file, Bool root_meta,
      u32 track_num, u32 from_id, u32 to_id, u32 type, u64 *ref_index)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:2054,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:2055,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2060,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/meta.c:2064,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:2071,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2072,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2080,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/isomedia/meta.c:2081,1
    - Dst: stbl_GetSampleInfos
      Src: /src/gpac/src/isomedia/meta.c:2094,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2112,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/meta.c:2116,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:2121,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2122,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 68
    argCount: 2
    argNames:
    - movie
    - meta
    argTypes:
    - GF_ISOFile*
    - GF_MetaBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2132
      start: 2050
    functionDepth: 1
    functionLinenumber: 2050
    functionLinenumberEnd: 2132
    functionName: gf_isom_meta_restore_items_ref
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_is_video_handler_type
    - gf_list_count
    - stbl_GetSampleInfos
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void gf_isom_meta_restore_items_ref(GF_ISOFile *movie, GF_MetaBox *meta)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:2142,1
    - Dst: gf_isom_meta_get_next_item_id
      Src: /src/gpac/src/isomedia/meta.c:2146,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:2150,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/meta.c:2152,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:2155,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2157,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:2164,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2171,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/meta.c:2174,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 42
    argCount: 6
    argNames:
    - file
    - root_meta
    - track_num
    - item_id
    - group_id
    - group_type
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2180
      start: 2136
    functionDepth: 5
    functionLinenumber: 2136
    functionLinenumberEnd: 2180
    functionName: gf_isom_meta_add_item_group
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - gf_list_get
    - gf_isom_meta_get_next_item_id
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_meta
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_meta_add_item_group(GF_ISOFile *file, Bool root_meta,
      u32 track_num, u32 item_id, u32 group_id, u32 group_type)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:2189,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:2193,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2195,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 5
    argNames:
    - file
    - root_meta
    - track_num
    - from_id
    - type
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2201
      start: 2184
    functionDepth: 2
    functionLinenumber: 2184
    functionLinenumberEnd: 2201
    functionName: gf_isom_meta_get_item_ref_count
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_isom_get_meta
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_meta_get_item_ref_count(GF_ISOFile *file, Bool root_meta,
      u32 track_num, u32 from_id, u32 type)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:2207,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:2211,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2213,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 18
    argCount: 5
    argNames:
    - file
    - root_meta
    - track_num
    - to_id
    - type
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2223
      start: 2202
    functionDepth: 2
    functionLinenumber: 2202
    functionLinenumberEnd: 2223
    functionName: gf_isom_meta_item_has_ref
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_meta
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_meta_item_has_ref(GF_ISOFile *file, Bool root_meta,
      u32 track_num, u32 to_id, u32 type)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:2230,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:2234,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2236,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 15
    argCount: 6
    argNames:
    - file
    - root_meta
    - track_num
    - from_id
    - type
    - ref_idx
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2243
      start: 2225
    functionDepth: 2
    functionLinenumber: 2225
    functionLinenumberEnd: 2243
    functionName: gf_isom_meta_get_item_ref_id
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_meta
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_meta_get_item_ref_id(GF_ISOFile *file, Bool root_meta,
      u32 track_num, u32 from_id, u32 type, u32 ref_idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:39,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - trace
    - data
    - dataLength
    argTypes:
    - FILE*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 43
    functionName: dump_data
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void dump_data(FILE *trace, char *data, u32 dataLength)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:48,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - trace
    - data
    - dataLength
    argTypes:
    - FILE*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 52
    functionName: dump_data_hex
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void dump_data_hex(FILE *trace, char *data, u32 dataLength)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:58,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:61,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:62,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:63,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - trace
    - name
    - data
    - data_size
    argTypes:
    - FILE*
    - char*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 64
    functionName: dump_data_attribute
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void dump_data_attribute(FILE *trace, char *name, u8 *data, u32 data_size)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:73,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:76,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:79,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:82,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:85,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:90,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 3
    argNames:
    - trace
    - data
    - dataLength
    argTypes:
    - FILE*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 94
    functionName: dump_data_string
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void dump_data_string(FILE *trace, char *data, u32 dataLength)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_dump.c:103,1
    - Dst: gf_isom_box_dump_ex
      Src: /src/gpac/src/isomedia/box_dump.c:106,1
    - Dst: gf_isom_box_dump_ex
      Src: /src/gpac/src/isomedia/box_dump.c:109,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - list
    - trace
    - parent_internal_flags
    argTypes:
    - GF_List*
    - FILE*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 97
    functionDepth: 2
    functionLinenumber: 97
    functionLinenumberEnd: 113
    functionName: gf_isom_box_array_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    - gf_isom_box_dump_ex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_box_array_dump(GF_List *list, FILE * trace, u16 parent_internal_flags)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:128,1
    - Dst: strrchr
      Src: /src/gpac/src/isomedia/box_dump.c:130,1
    - Dst: strrchr
      Src: /src/gpac/src/isomedia/box_dump.c:131,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:134,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_dump.c:141,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:151,1
    - Dst: gf_isom_box_is_file_level
      Src: /src/gpac/src/isomedia/box_dump.c:154,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:155,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:155,1
    - Dst: gf_isom_box_dump_ex
      Src: /src/gpac/src/isomedia/box_dump.c:157,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:159,1
    - Dst: gf_isom_dump_js_cleanup
      Src: /src/gpac/src/isomedia/box_dump.c:162,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 38
    argCount: 4
    argNames:
    - mov
    - trace
    - skip_init
    - skip_samples
    argTypes:
    - GF_ISOFile*
    - FILE*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 120
    functionDepth: 2
    functionLinenumber: 120
    functionLinenumberEnd: 165
    functionName: gf_isom_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 1
    functionsReached:
    - gf_4cc_to_str
    - gf_isom_box_dump_ex
    - gf_isom_dump_js_cleanup
    - gf_isom_box_is_file_level
    - strrchr
    - gf_fprintf
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_dump(GF_ISOFile *mov, FILE * trace, Bool skip_init,
      Bool skip_samples)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:175,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:177,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:178,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:180,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:183,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:185,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 167
    functionDepth: 3
    functionLinenumber: 167
    functionLinenumberEnd: 188
    functionName: reftype_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    - GF_4CC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err reftype_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:199,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:200,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:201,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:203,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:206,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:208,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 190
    functionDepth: 3
    functionLinenumber: 190
    functionLinenumberEnd: 212
    functionName: ireftype_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    - GF_4CC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ireftype_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:217,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:218,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 214
    functionDepth: 3
    functionLinenumber: 214
    functionLinenumberEnd: 221
    functionName: free_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err free_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:225,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:226,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 223
    functionDepth: 3
    functionLinenumber: 223
    functionLinenumberEnd: 229
    functionName: wide_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err wide_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:239,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:240,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:243,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:245,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:246,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 231
    functionDepth: 3
    functionLinenumber: 231
    functionLinenumberEnd: 248
    functionName: mdat_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdat_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:253,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:255,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:256,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:257,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 250
    functionDepth: 3
    functionLinenumber: 250
    functionLinenumberEnd: 259
    functionName: moov_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err moov_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:267,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:268,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:269,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:270,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:271,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:272,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 261
    functionDepth: 3
    functionLinenumber: 261
    functionLinenumberEnd: 276
    functionName: mvhd_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mvhd_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:283,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:284,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:285,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:286,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:287,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:288,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 278
    functionDepth: 3
    functionLinenumber: 278
    functionLinenumberEnd: 291
    functionName: mdhd_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdhd_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:295,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:296,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 293
    functionDepth: 3
    functionLinenumber: 293
    functionLinenumberEnd: 299
    functionName: vmhd_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vmhd_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:304,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:305,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:307,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 301
    functionDepth: 3
    functionLinenumber: 301
    functionLinenumberEnd: 309
    functionName: gmin_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gmin_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:321,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:330,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:331,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 311
    functionDepth: 3
    functionLinenumber: 311
    functionLinenumberEnd: 333
    functionName: clef_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err clef_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:337,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:338,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 335
    functionDepth: 3
    functionLinenumber: 335
    functionLinenumberEnd: 341
    functionName: smhd_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err smhd_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:349,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:350,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:351,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:352,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:353,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:355,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 343
    functionDepth: 3
    functionLinenumber: 343
    functionLinenumberEnd: 357
    functionName: hmhd_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hmhd_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:361,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:362,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:363,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 359
    functionDepth: 3
    functionLinenumber: 359
    functionLinenumberEnd: 365
    functionName: nmhd_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nmhd_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:369,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:370,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:371,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 367
    functionDepth: 3
    functionLinenumber: 367
    functionLinenumberEnd: 373
    functionName: stbl_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:377,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:378,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 375
    functionDepth: 3
    functionLinenumber: 375
    functionLinenumberEnd: 381
    functionName: dinf_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dinf_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:387,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:389,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:391,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:393,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:396,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:398,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:402,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 383
    functionDepth: 3
    functionLinenumber: 383
    functionLinenumberEnd: 404
    functionName: url_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err url_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:411,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:412,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:413,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:414,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:416,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 406
    functionDepth: 3
    functionLinenumber: 406
    functionLinenumberEnd: 418
    functionName: urn_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err urn_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:423,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:424,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:426,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 420
    functionDepth: 3
    functionLinenumber: 420
    functionLinenumberEnd: 428
    functionName: alis_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err alis_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:435,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:436,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:437,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 430
    functionDepth: 3
    functionLinenumber: 430
    functionLinenumberEnd: 439
    functionName: cprt_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cprt_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:446,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:447,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:448,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 441
    functionDepth: 3
    functionLinenumber: 441
    functionLinenumberEnd: 450
    functionName: kind_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err kind_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:455,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:457,1
    - Dst: gf_fputc
      Src: /src/gpac/src/isomedia/box_dump.c:458,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - trace
    - name
    argTypes:
    - FILE*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 453
    functionDepth: 1
    functionLinenumber: 453
    functionLinenumberEnd: 460
    functionName: dump_escape_string
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fputc
    - strlen
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void dump_escape_string(FILE * trace, char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:466,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:467,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:470,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:473,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:474,1
    - Dst: dump_escape_string
      Src: /src/gpac/src/isomedia/box_dump.c:475,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:476,1
    - Dst: gf_format_duration
      Src: /src/gpac/src/isomedia/box_dump.c:476,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:479,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/isomedia/box_dump.c:482,1
    - Dst: dump_escape_string
      Src: /src/gpac/src/isomedia/box_dump.c:483,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:486,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 462
    functionDepth: 3
    functionLinenumber: 462
    functionLinenumberEnd: 488
    functionName: chpl_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_format_duration
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_list_count
    - gf_isom_box_dump_done
    - dump_escape_string
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err chpl_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:494,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:495,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:499,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:502,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:504,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 490
    functionDepth: 3
    functionLinenumber: 490
    functionLinenumberEnd: 506
    functionName: pdin_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pdin_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:511,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:512,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:513,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:513,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:515,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:515,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:517,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:518,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:519,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:521,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:522,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 508
    functionDepth: 3
    functionLinenumber: 508
    functionLinenumberEnd: 524
    functionName: hdlr_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_fprintf
    - gf_isom_box_dump_start
    - dump_data
    - gf_isom_box_dump_done
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hdlr_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:531,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:532,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/isomedia/box_dump.c:536,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:538,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:541,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:543,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 526
    functionDepth: 3
    functionLinenumber: 526
    functionLinenumberEnd: 545
    functionName: iods_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_odf_dump_desc
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iods_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:552,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:553,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:555,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:557,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 547
    functionDepth: 3
    functionLinenumber: 547
    functionLinenumberEnd: 559
    functionName: trak_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trak_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:566,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:567,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:569,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:571,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 561
    functionDepth: 3
    functionLinenumber: 561
    functionLinenumberEnd: 573
    functionName: mp4s_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4s_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:699,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:701,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:704,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:705,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:715,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:717,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_dump.c:718,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:719,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:721,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:725,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:726,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 136
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 576
    functionDepth: 3
    functionLinenumber: 576
    functionLinenumberEnd: 728
    functionName: video_sample_entry_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_fprintf
    - gf_isom_box_dump_start
    - strlen
    - gf_isom_box_dump_done
    - isalnum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err video_sample_entry_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:733,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:735,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:743,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:745,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:748,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:750,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:753,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:754,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:755,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:756,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:757,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:759,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:760,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:761,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:762,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:765,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:766,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:767,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:767,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:768,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/isomedia/box_dump.c:768,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:769,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:769,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:770,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:770,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:771,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:771,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:772,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:772,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:773,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:773,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:774,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:774,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:775,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 43
    argCount: 2
    argNames:
    - p
    - trace
    argTypes:
    - GF_AudioSampleEntryBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 778
      start: 731
    functionDepth: 1
    functionLinenumber: 731
    functionLinenumberEnd: 778
    functionName: base_audio_entry_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_bs_read_double
    - gf_bs_new
    - gf_fprintf
    - gf_bs_del
    linkageType: ''
    returnType: void
    signature: void base_audio_entry_dump(GF_AudioSampleEntryBox *p, FILE * trace)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:850,1
    - Dst: base_audio_entry_dump
      Src: /src/gpac/src/isomedia/box_dump.c:851,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:852,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:855,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:857,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 72
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 859
      start: 780
    functionDepth: 3
    functionLinenumber: 780
    functionLinenumberEnd: 859
    functionName: audio_sample_entry_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - base_audio_entry_dump
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err audio_sample_entry_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:875,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:876,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:877,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 879
      start: 861
    functionDepth: 3
    functionLinenumber: 861
    functionLinenumberEnd: 879
    functionName: gen_sample_entry_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gen_sample_entry_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:886,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:890,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/box_dump.c:891,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/box_dump.c:892,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/isomedia/box_dump.c:894,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_dump.c:896,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_dump.c:897,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:899,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:901,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:902,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:903,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/box_dump.c:904,1
    - Dst: gf_isom_box_dump_ex
      Src: /src/gpac/src/isomedia/box_dump.c:905,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_dump.c:906,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:909,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:910,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/box_dump.c:913,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 3
    argNames:
    - data
    - data_size
    - trace
    argTypes:
    - u8*
    - u32
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 914
      start: 881
    functionDepth: 4
    functionLinenumber: 881
    functionLinenumberEnd: 914
    functionName: gnr_dump_exts
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_isom_box_dump_ex
    - dump_data_attribute
    - gf_bs_new
    - gf_fprintf
    - gf_list_pop_front
    - gf_isom_box_del
    - gf_bs_del
    - gf_list_count
    - gf_list_add
    - gf_bs_set_cookie
    - gf_bs_available
    - gf_isom_box_array_del
    - gf_isom_box_parse
    linkageType: ''
    returnType: void
    signature: void gnr_dump_exts(u8 *data, u32 data_size, FILE *trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:923,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:925,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:926,1
    - Dst: gnr_dump_exts
      Src: /src/gpac/src/isomedia/box_dump.c:928,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:930,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 932
      start: 916
    functionDepth: 5
    functionLinenumber: 916
    functionLinenumberEnd: 932
    functionName: gnrm_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_start
    - gf_fprintf
    - gnr_dump_exts
    - GF_4CC
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gnrm_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:941,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:943,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:944,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_dump.c:945,1
    - Dst: gnr_dump_exts
      Src: /src/gpac/src/isomedia/box_dump.c:948,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:950,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 952
      start: 934
    functionDepth: 5
    functionLinenumber: 934
    functionLinenumberEnd: 952
    functionName: gnrv_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_start
    - gf_fprintf
    - gnr_dump_exts
    - GF_4CC
    - gf_isom_box_dump_done
    - isalnum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gnrv_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:961,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:963,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:964,1
    - Dst: gnr_dump_exts
      Src: /src/gpac/src/isomedia/box_dump.c:968,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:970,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 972
      start: 954
    functionDepth: 5
    functionLinenumber: 954
    functionLinenumberEnd: 972
    functionName: gnra_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_start
    - gf_fprintf
    - gnr_dump_exts
    - GF_4CC
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gnra_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:976,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:977,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:978,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 980
      start: 974
    functionDepth: 3
    functionLinenumber: 974
    functionLinenumberEnd: 980
    functionName: edts_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err edts_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:989,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:990,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_dump.c:993,1
    - Dst: gf_isom_box_array_dump
      Src: /src/gpac/src/isomedia/box_dump.c:994,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:996,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 998
      start: 982
    functionDepth: 3
    functionLinenumber: 982
    functionLinenumberEnd: 998
    functionName: udta_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_dump
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_list_enum
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err udta_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1003,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1004,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1005,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1007
      start: 1000
    functionDepth: 3
    functionLinenumber: 1000
    functionLinenumberEnd: 1007
    functionName: dref_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dref_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1012,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1014,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1015,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1016,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 1009
    functionDepth: 3
    functionLinenumber: 1009
    functionLinenumberEnd: 1018
    functionName: stsd_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsd_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1029,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1030,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1034,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1038,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1040,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1042,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1044
      start: 1020
    functionDepth: 3
    functionLinenumber: 1020
    functionLinenumberEnd: 1044
    functionName: stts_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stts_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1055,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1056,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1060,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1064,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1066,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1068,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1070
      start: 1046
    functionDepth: 3
    functionLinenumber: 1046
    functionLinenumberEnd: 1070
    functionName: ctts_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ctts_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1077,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1078,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1079,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1081
      start: 1072
    functionDepth: 3
    functionLinenumber: 1072
    functionLinenumberEnd: 1081
    functionName: cslg_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cslg_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1086,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1087,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1088,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1090
      start: 1083
    functionDepth: 3
    functionLinenumber: 1083
    functionLinenumberEnd: 1090
    functionName: ccst_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ccst_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1099,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1100,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:1100,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_dump.c:1102,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1103,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1106,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1108,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1110
      start: 1092
    functionDepth: 3
    functionLinenumber: 1092
    functionLinenumberEnd: 1110
    functionName: stsh_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_list_count
    - gf_list_enum
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsh_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1119,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1120,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:1120,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_dump.c:1123,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1127,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1129,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1132,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1134,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1136
      start: 1112
    functionDepth: 3
    functionLinenumber: 1112
    functionLinenumberEnd: 1136
    functionName: elst_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_list_count
    - gf_list_enum
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err elst_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1147,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1148,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1152,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1160,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1162,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1164,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1166
      start: 1138
    functionDepth: 3
    functionLinenumber: 1138
    functionLinenumberEnd: 1166
    functionName: stsc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsc_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1177,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1180,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1183,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1186,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1189,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1191,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1195,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1198,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1203,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1205,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 33
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1207
      start: 1168
    functionDepth: 3
    functionLinenumber: 1168
    functionLinenumberEnd: 1207
    functionName: stsz_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsz_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1218,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1219,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1222,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1225,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1229,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1231,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1233
      start: 1209
    functionDepth: 3
    functionLinenumber: 1209
    functionLinenumberEnd: 1233
    functionName: stco_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stco_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1252,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1253,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1257,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1260,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1264,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1266,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1268
      start: 1235
    functionDepth: 3
    functionLinenumber: 1235
    functionLinenumberEnd: 1268
    functionName: stss_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stss_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1279,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1280,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1283,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1286,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1290,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1292,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1294
      start: 1270
    functionDepth: 3
    functionLinenumber: 1270
    functionLinenumberEnd: 1294
    functionName: stdp_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stdp_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1305,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1306,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1309,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1314,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1322,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1331,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1340,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1349,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1353,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1355,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 82
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1357
      start: 1296
    functionDepth: 3
    functionLinenumber: 1296
    functionLinenumberEnd: 1357
    functionName: sdtp_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sdtp_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1368,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1369,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1372,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1375,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1378,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1380,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1382
      start: 1359
    functionDepth: 3
    functionLinenumber: 1359
    functionLinenumberEnd: 1382
    functionName: co64_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err co64_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1389,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1390,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/isomedia/box_dump.c:1394,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1396,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1399,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1401,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1403
      start: 1384
    functionDepth: 3
    functionLinenumber: 1384
    functionLinenumberEnd: 1403
    functionName: esds_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_odf_dump_desc
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err esds_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1407,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1408,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1409,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1411
      start: 1405
    functionDepth: 3
    functionLinenumber: 1405
    functionLinenumberEnd: 1411
    functionName: minf_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err minf_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1417,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1419,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1422,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1424,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1426,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1427,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1429,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1431,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1432,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1433,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1436,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1438
      start: 1413
    functionDepth: 3
    functionLinenumber: 1413
    functionLinenumberEnd: 1438
    functionName: tkhd_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tkhd_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1442,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1443,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1444,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1446
      start: 1440
    functionDepth: 3
    functionLinenumber: 1440
    functionLinenumberEnd: 1446
    functionName: tref_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tref_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1450,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1451,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1452,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1454
      start: 1448
    functionDepth: 3
    functionLinenumber: 1448
    functionLinenumberEnd: 1454
    functionName: mdia_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdia_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1458,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1459,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1460,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1462
      start: 1456
    functionDepth: 3
    functionLinenumber: 1456
    functionLinenumberEnd: 1462
    functionName: mfra_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mfra_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1468,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1469,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1471,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1476,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1478,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1480
      start: 1464
    functionDepth: 3
    functionLinenumber: 1464
    functionLinenumberEnd: 1480
    functionName: tfra_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tfra_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1486,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1488,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1489,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1491
      start: 1482
    functionDepth: 3
    functionLinenumber: 1482
    functionLinenumberEnd: 1491
    functionName: mfro_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mfro_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1497,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1498,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1499,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1501
      start: 1494
    functionDepth: 3
    functionLinenumber: 1494
    functionLinenumberEnd: 1501
    functionName: elng_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err elng_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - name
    - ','
    - bits
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1507
      start: 1503
    functionDepth: 0
    functionLinenumber: 1503
    functionLinenumberEnd: 1507
    functionName: get_and_print
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: get_and_print(name, bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - name
    - ','
    - bits
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1511
      start: 1507
    functionDepth: 0
    functionLinenumber: 1507
    functionLinenumberEnd: 1511
    functionName: get_4cc_and_print
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: get_4cc_and_print(name, bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:1514,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1515,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1517,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1518,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1519,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1520,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1521,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1522,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1523,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1524,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1525,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1526,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1527,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1528,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1530,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1531,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1532,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 18
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1534
      start: 1511
    functionDepth: 3
    functionLinenumber: 1511
    functionLinenumberEnd: 1534
    functionName: dump_alac
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_bs_del
    - gf_isom_box_dump_done
    - get_and_print
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_alac(GF_UnknownBox *u, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:1540,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1541,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1543,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1544,1
    - Dst: get_4cc_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1545,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1547,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_dump.c:1548,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1550,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1551,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1552,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1553,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1554,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1555,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1556,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1557,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1558,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1559,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1560,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1561,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1562,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1563,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1565,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_dump.c:1566,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1568,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1569,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1570,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1571,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1572,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1573,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1576,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1577,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 33
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1579
      start: 1537
    functionDepth: 3
    functionLinenumber: 1537
    functionLinenumberEnd: 1579
    functionName: dump_uncc
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_bs_new
    - gf_isom_box_dump_start
    - gf_fprintf
    - gf_bs_seek
    - gf_bs_del
    - get_4cc_and_print
    - gf_isom_box_dump_done
    - get_and_print
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_uncc(GF_UnknownBox *u, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/box_dump.c:1586,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctype
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1589
      start: 1584
    functionDepth: 1
    functionLinenumber: 1584
    functionLinenumberEnd: 1589
    functionName: get_comp_type_name
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: char
    signature: char *get_comp_type_name(u32 ctype)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:1594,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1595,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1597,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1598,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1600,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:1601,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1603,1
    - Dst: get_comp_type_name
      Src: /src/gpac/src/isomedia/box_dump.c:1603,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/isomedia/box_dump.c:1605,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1607,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:1608,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1611,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1613,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1614,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1616
      start: 1591
    functionDepth: 3
    functionLinenumber: 1591
    functionLinenumberEnd: 1616
    functionName: dump_cmpd
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_read_utf8
    - gf_bs_read_u32
    - get_comp_type_name
    - gf_bs_new
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_bs_del
    - gf_bs_read_u16
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_cmpd(GF_UnknownBox *u, FILE * trace)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:1627,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1628,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1631,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1632,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1633,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:1635,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/box_dump.c:1636,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1637,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1638,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_dump.c:1641,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1643,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1644,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1648,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1649,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1650,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1651,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1652,1
    - Dst: get_comp_type_name
      Src: /src/gpac/src/isomedia/box_dump.c:1652,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1654,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/box_dump.c:1655,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:1656,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1657,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1658,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1662,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1668,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/box_dump.c:1668,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1668,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1672,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/box_dump.c:1672,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/box_dump.c:1672,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1674,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/box_dump.c:1674,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/isomedia/box_dump.c:1674,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1676,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/box_dump.c:1676,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1676,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1680,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/box_dump.c:1680,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/box_dump.c:1680,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/box_dump.c:1680,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1682,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/box_dump.c:1682,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/isomedia/box_dump.c:1682,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/isomedia/box_dump.c:1682,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1685,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/box_dump.c:1685,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1685,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1685,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1688,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/box_dump.c:1688,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1691,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1693,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1696,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:1697,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1698,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 65
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1701
      start: 1623
    functionDepth: 3
    functionLinenumber: 1623
    functionLinenumberEnd: 1701
    functionName: dump_cpal
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - get_comp_type_name
    - gf_bs_read_u32
    - gf_bs_read_double
    - gf_bs_new
    - gf_fprintf
    - gf_isom_box_dump_start
    - snprintf
    - GF_ARRAY_LENGTH
    - gf_bs_del
    - gf_isom_box_dump_done
    - gf_bs_read_int
    - gf_bs_read_float
    - gf_bs_read_u16
    - gf_bs_available
    - get_and_print
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_cpal(GF_UnknownBox *u, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:1706,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1707,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1710,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1711,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1712,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1714,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1716,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1719,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1720,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1721,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/box_dump.c:1721,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1724,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1725,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1727
      start: 1703
    functionDepth: 3
    functionLinenumber: 1703
    functionLinenumberEnd: 1727
    functionName: dump_cpat
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_bs_del
    - gf_isom_box_dump_done
    - gf_bs_read_float
    - get_and_print
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_cpat(GF_UnknownBox *u, FILE * trace)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:1732,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1733,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1736,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1737,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1738,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1741,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1743,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1743,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1745,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1747,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1748,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1749,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1750,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1751,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1754,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1756,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1756,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1758,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1761,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1763,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1763,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1765,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1768,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1770,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1771,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1772,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1774,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1776,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1777,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1778,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 42
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1780
      start: 1729
    functionDepth: 3
    functionLinenumber: 1729
    functionLinenumberEnd: 1780
    functionName: dump_sbpm
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_bs_new
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_bs_del
    - gf_isom_box_dump_done
    - gf_bs_read_int
    - get_and_print
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_sbpm(GF_UnknownBox *u, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:1785,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1786,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1789,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1790,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1791,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1792,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1793,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1794,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1796
      start: 1782
    functionDepth: 3
    functionLinenumber: 1782
    functionLinenumberEnd: 1796
    functionName: dump_cloc
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_bs_del
    - gf_isom_box_dump_done
    - get_and_print
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_cloc(GF_UnknownBox *u, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:1801,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1802,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1805,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1806,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1807,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1808,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1809,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1810,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1811,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1812,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1813,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1814,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1816
      start: 1798
    functionDepth: 3
    functionLinenumber: 1798
    functionLinenumberEnd: 1816
    functionName: dump_taic
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_bs_del
    - gf_isom_box_dump_done
    - gf_bs_read_int
    - get_and_print
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_taic(GF_UnknownBox *u, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:1821,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1822,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1825,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1826,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1827,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1828,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1829,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1830,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1831,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1832,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1833,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1835
      start: 1818
    functionDepth: 3
    functionLinenumber: 1818
    functionLinenumberEnd: 1835
    functionName: dump_itai
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_bs_del
    - gf_isom_box_dump_done
    - get_and_print
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_itai(GF_UnknownBox *u, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:1840,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1841,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1844,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1845,1
    - Dst: get_4cc_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1846,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1848,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1849,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1850,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1851,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1852,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1854
      start: 1837
    functionDepth: 3
    functionLinenumber: 1837
    functionLinenumberEnd: 1854
    functionName: dump_cmpc
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_bs_del
    - get_4cc_and_print
    - gf_isom_box_dump_done
    - get_and_print
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_cmpc(GF_UnknownBox *u, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:1859,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1860,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1863,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1864,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1865,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1866,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1867,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1868,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1869,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1870,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1872
      start: 1856
    functionDepth: 3
    functionLinenumber: 1856
    functionLinenumberEnd: 1872
    functionName: dump_fpac
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_bs_del
    - gf_isom_box_dump_done
    - get_and_print
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_fpac(GF_UnknownBox *u, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:1878,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1879,1
    - Dst: get_4cc_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1881,1
    - Dst: get_4cc_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1882,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/isomedia/box_dump.c:1883,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1885,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:1886,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1888,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_dump.c:1889,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:1890,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1891,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1892,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1893,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1895
      start: 1875
    functionDepth: 3
    functionLinenumber: 1875
    functionLinenumberEnd: 1895
    functionName: dump_gmcc
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_read_utf8
    - dump_data_attribute
    - gf_bs_new
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_bs_get_position
    - get_4cc_and_print
    - gf_bs_del
    - gf_isom_box_dump_done
    - get_and_print
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_gmcc(GF_UnknownBox *u, FILE * trace)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:1900,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1901,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1904,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1905,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1906,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1907,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1908,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1909,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1910,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:1915,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/isomedia/box_dump.c:1917,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1919,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_dump.c:1921,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_dump.c:1924,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:1926,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/isomedia/box_dump.c:1928,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1930,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_dump.c:1932,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1935,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1937,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1940,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1941,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 46
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1943
      start: 1897
    functionDepth: 3
    functionLinenumber: 1897
    functionLinenumberEnd: 1943
    functionName: dump_icef
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_bs_new
    - gf_isom_box_dump_start
    - gf_fprintf
    - gf_bs_del
    - gf_isom_box_dump_done
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_bs_read_u8
    - gf_bs_read_u64
    - get_and_print
    - gf_bs_read_u24
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_icef(GF_UnknownBox *u, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:1949,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1950,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1952,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1953,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1954,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1955,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1956,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1957,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1958,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1959,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1960,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1961,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1962,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1963,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1964,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_dump.c:1966,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1967,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1969,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:1970,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1971,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1972,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1974
      start: 1945
    functionDepth: 3
    functionLinenumber: 1945
    functionLinenumberEnd: 1974
    functionName: dump_dvc1
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_isom_box_dump_start
    - gf_fprintf
    - gf_bs_get_position
    - gf_bs_del
    - gf_isom_box_dump_done
    - gf_bs_read_int
    - get_and_print
    - dump_data_hex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_dvc1(GF_UnknownBox *u, FILE * trace)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:1988,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:1991,1
    - Dst: dump_alac
      Src: /src/gpac/src/isomedia/box_dump.c:1995,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:1996,1
    - Dst: dump_uncc
      Src: /src/gpac/src/isomedia/box_dump.c:1997,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:1998,1
    - Dst: dump_cmpd
      Src: /src/gpac/src/isomedia/box_dump.c:1999,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2000,1
    - Dst: dump_cpal
      Src: /src/gpac/src/isomedia/box_dump.c:2001,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2002,1
    - Dst: dump_cpat
      Src: /src/gpac/src/isomedia/box_dump.c:2003,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2004,1
    - Dst: dump_cloc
      Src: /src/gpac/src/isomedia/box_dump.c:2005,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2006,1
    - Dst: dump_sbpm
      Src: /src/gpac/src/isomedia/box_dump.c:2007,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2008,1
    - Dst: dump_taic
      Src: /src/gpac/src/isomedia/box_dump.c:2009,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2010,1
    - Dst: dump_itai
      Src: /src/gpac/src/isomedia/box_dump.c:2011,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2012,1
    - Dst: dump_fpac
      Src: /src/gpac/src/isomedia/box_dump.c:2013,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2014,1
    - Dst: dump_gmcc
      Src: /src/gpac/src/isomedia/box_dump.c:2015,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2016,1
    - Dst: dump_dvc1
      Src: /src/gpac/src/isomedia/box_dump.c:2017,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2018,1
    - Dst: dump_cmpc
      Src: /src/gpac/src/isomedia/box_dump.c:2019,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2020,1
    - Dst: dump_icef
      Src: /src/gpac/src/isomedia/box_dump.c:2021,1
    - Dst: gf_isom_box_dump_start_ex
      Src: /src/gpac/src/isomedia/box_dump.c:2035,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2036,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2037,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/isomedia/box_dump.c:2041,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2044,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:2044,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/isomedia/box_dump.c:2045,1
    - Dst: dump_js_data
      Src: /src/gpac/src/isomedia/box_dump.c:2046,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2053,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2057,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2059,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2060,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:2062,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2065,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2066,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 89
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2068
      start: 1981
    functionDepth: 4
    functionLinenumber: 1981
    functionLinenumberEnd: 2068
    functionName: unkn_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_start
    - gf_file_exists
    - gf_isom_box_dump_start_ex
    - dump_uncc
    - dump_sbpm
    - gf_opts_get_key
    - dump_itai
    - gf_isom_box_dump_done
    - dump_cpat
    - dump_taic
    - gf_4cc_to_str
    - dump_data_attribute
    - dump_cpal
    - snprintf
    - gf_fprintf
    - dump_js_data
    - dump_cmpc
    - dump_cmpd
    - dump_alac
    - dump_dvc1
    - dump_icef
    - dump_gmcc
    - GF_4CC
    - dump_fpac
    - dump_cloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err unkn_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2072,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2073,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2074,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2076
      start: 2070
    functionDepth: 3
    functionLinenumber: 2070
    functionLinenumberEnd: 2076
    functionName: uuid_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err uuid_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2080,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2081,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2082,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2084
      start: 2078
    functionDepth: 3
    functionLinenumber: 2078
    functionLinenumberEnd: 2084
    functionName: void_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err void_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2092,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2093,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:2093,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2096,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:2096,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2099,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2101,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2103
      start: 2086
    functionDepth: 3
    functionLinenumber: 2086
    functionLinenumberEnd: 2103
    functionName: ftyp_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ftyp_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2111,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2112,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2114,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2117,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2121
      start: 2105
    functionDepth: 3
    functionLinenumber: 2105
    functionLinenumberEnd: 2121
    functionName: padb_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err padb_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2129,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2130,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:2130,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2131,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2132,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2133,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2136,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2137,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:2137,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2138,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2141,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2142,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:2142,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2143,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2146,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2147,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:2147,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2148,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2151,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2152,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:2152,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2153,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2154,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2155,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2161
      start: 2123
    functionDepth: 3
    functionLinenumber: 2123
    functionLinenumberEnd: 2161
    functionName: gppc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gppc_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2185,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2186,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2187,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2189,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2193,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2194,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2197,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2199,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2200,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2202,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2203,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2204,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2206,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2207,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2211,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2215,1
    - Dst: gf_avcc_use_extensions
      Src: /src/gpac/src/isomedia/box_dump.c:2218,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2219,1
    - Dst: gf_avc_hevc_get_chroma_format_name
      Src: /src/gpac/src/isomedia/box_dump.c:2219,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2223,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:2225,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:2227,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2228,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:2229,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2230,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:2232,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:2234,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2235,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:2236,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2237,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:2241,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:2243,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2244,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:2245,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2246,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2250,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2252,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 67
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2254
      start: 2164
    functionDepth: 3
    functionLinenumber: 2164
    functionLinenumberEnd: 2254
    functionName: avcc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_avc_hevc_get_chroma_format_name
    - gf_list_get
    - gf_fprintf
    - gf_avcc_use_extensions
    - gf_isom_box_dump_start
    - dump_data
    - sprintf
    - gf_list_count
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err avcc_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2274,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2275,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2276,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2280,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2282,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2284,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2286,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2289,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2291,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2292,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2293,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2294,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2295,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2297,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2301,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2302,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2304,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2305,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2306,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2307,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2308,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2309,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2310,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2311,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2312,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2313,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2315,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2316,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2319,1
    - Dst: gf_avc_hevc_get_chroma_format_name
      Src: /src/gpac/src/isomedia/box_dump.c:2320,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2322,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:2324,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:2327,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2328,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:2329,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:2331,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2332,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:2333,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2334,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2336,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2339,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2341,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 68
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2343
      start: 2256
    functionDepth: 3
    functionLinenumber: 2256
    functionLinenumberEnd: 2343
    functionName: hvcc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_avc_hevc_get_chroma_format_name
    - gf_list_get
    - gf_fprintf
    - gf_isom_box_dump_start
    - dump_data
    - sprintf
    - gf_list_count
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hvcc_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2351,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2352,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2353,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2357,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2359,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2360,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2361,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2363,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2364,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2365,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2366,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2367,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2369,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2373,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2376,1
    - Dst: gf_avc_hevc_get_chroma_format_name
      Src: /src/gpac/src/isomedia/box_dump.c:2377,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2380,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2381,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2382,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2384,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:2385,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2386,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2388,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2390,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:2392,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:2395,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2396,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:2397,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:2399,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2400,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:2401,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2402,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2404,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2407,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2409,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 48
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2411
      start: 2345
    functionDepth: 3
    functionLinenumber: 2345
    functionLinenumberEnd: 2411
    functionName: vvcc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_avc_hevc_get_chroma_format_name
    - gf_list_get
    - gf_fprintf
    - gf_isom_box_dump_start
    - dump_data
    - sprintf
    - gf_list_count
    - gf_isom_box_dump_done
    - dump_data_hex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vvcc_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2418,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2419,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2420,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2422
      start: 2414
    functionDepth: 3
    functionLinenumber: 2414
    functionLinenumberEnd: 2422
    functionName: vvnc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vvnc_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2427,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:2429,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2431,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2432,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2433,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2434,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:2437,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2438,1
    - Dst: gf_av1_get_obu_name
      Src: /src/gpac/src/isomedia/box_dump.c:2438,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:2439,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2440,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2442,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2444,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2446
      start: 2425
    functionDepth: 2
    functionLinenumber: 2425
    functionLinenumberEnd: 2446
    functionName: av1c_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_av1_get_obu_name
    - gf_fprintf
    - dump_data
    - gf_list_count
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av1c_box_dump(GF_Box *a, FILE *trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2451,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2453,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2455,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2456,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2457,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2458,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2459,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2460,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2461,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2462,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2463,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2465,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2467,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2469
      start: 2449
    functionDepth: 1
    functionLinenumber: 2449
    functionLinenumberEnd: 2469
    functionName: vpcc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vpcc_box_dump(GF_Box *a, FILE *trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2474,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2476,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:2477,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2478,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2480,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2482
      start: 2472
    functionDepth: 2
    functionLinenumber: 2472
    functionLinenumberEnd: 2482
    functionName: av3c_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - dump_data
    - gf_fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av3c_box_dump(GF_Box *a, FILE *trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2488,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2489,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2490,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2491,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2492,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2493,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2494,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2495,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2496,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2497,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2498,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2499,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2501
      start: 2485
    functionDepth: 3
    functionLinenumber: 2485
    functionLinenumberEnd: 2501
    functionName: SmDm_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SmDm_box_dump(GF_Box *a, FILE *trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2506,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2507,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2508,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2510
      start: 2503
    functionDepth: 3
    functionLinenumber: 2503
    functionLinenumberEnd: 2510
    functionName: CoLL_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CoLL_box_dump(GF_Box *a, FILE *trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2517,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2518,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_dump.c:2521,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/isomedia/box_dump.c:2523,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2525,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2528,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2530
      start: 2512
    functionDepth: 3
    functionLinenumber: 2512
    functionLinenumberEnd: 2530
    functionName: m4ds_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_list_enum
    - gf_odf_dump_desc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err m4ds_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2535,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2536,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2537,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2539
      start: 2532
    functionDepth: 3
    functionLinenumber: 2532
    functionLinenumberEnd: 2539
    functionName: btrt_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err btrt_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2545,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2546,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2548,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2551,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2553,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2555
      start: 2541
    functionDepth: 3
    functionLinenumber: 2541
    functionLinenumberEnd: 2555
    functionName: ftab_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ftab_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2559,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - trace
    - name
    - col
    argTypes:
    - FILE*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2560
      start: 2557
    functionDepth: 1
    functionLinenumber: 2557
    functionLinenumberEnd: 2560
    functionName: tx3g_dump_rgba8
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void tx3g_dump_rgba8(FILE * trace, char *name, u32 col)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2563,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - trace
    - name
    - col
    argTypes:
    - FILE*
    - char*
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2564
      start: 2561
    functionDepth: 1
    functionLinenumber: 2561
    functionLinenumberEnd: 2564
    functionName: tx3g_dump_rgb16
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void tx3g_dump_rgb16(FILE * trace, char *name, char col[6])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2567,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - trace
    - rec
    argTypes:
    - FILE*
    - GF_BoxRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2568
      start: 2565
    functionDepth: 1
    functionLinenumber: 2565
    functionLinenumberEnd: 2568
    functionName: tx3g_dump_box
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void tx3g_dump_box(FILE * trace, GF_BoxRecord *rec)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2571,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2573,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2575,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2576,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2577,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2579,1
    - Dst: tx3g_dump_rgba8
      Src: /src/gpac/src/isomedia/box_dump.c:2580,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2581,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - trace
    - rec
    argTypes:
    - FILE*
    - GF_StyleRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2582
      start: 2569
    functionDepth: 2
    functionLinenumber: 2569
    functionLinenumberEnd: 2582
    functionName: tx3g_dump_style
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - tx3g_dump_rgba8
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void tx3g_dump_style(FILE * trace, GF_StyleRecord *rec)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2587,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2588,1
    - Dst: tx3g_dump_rgba8
      Src: /src/gpac/src/isomedia/box_dump.c:2591,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2592,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2593,1
    - Dst: tx3g_dump_box
      Src: /src/gpac/src/isomedia/box_dump.c:2594,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2595,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2597,1
    - Dst: tx3g_dump_style
      Src: /src/gpac/src/isomedia/box_dump.c:2598,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2599,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2600,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2602
      start: 2584
    functionDepth: 3
    functionLinenumber: 2584
    functionLinenumberEnd: 2602
    functionName: tx3g_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_start
    - tx3g_dump_rgba8
    - tx3g_dump_box
    - gf_isom_box_dump_done
    - tx3g_dump_style
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tx3g_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2607,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2608,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2611,1
    - Dst: tx3g_dump_rgb16
      Src: /src/gpac/src/isomedia/box_dump.c:2612,1
    - Dst: tx3g_dump_rgb16
      Src: /src/gpac/src/isomedia/box_dump.c:2613,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2614,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2616,1
    - Dst: tx3g_dump_box
      Src: /src/gpac/src/isomedia/box_dump.c:2617,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2618,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2619,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2621
      start: 2604
    functionDepth: 3
    functionLinenumber: 2604
    functionLinenumberEnd: 2621
    functionName: text_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_start
    - tx3g_dump_rgb16
    - tx3g_dump_box
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err text_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2627,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2628,1
    - Dst: tx3g_dump_style
      Src: /src/gpac/src/isomedia/box_dump.c:2629,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2631,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2633,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2635
      start: 2623
    functionDepth: 3
    functionLinenumber: 2623
    functionLinenumberEnd: 2635
    functionName: styl_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - tx3g_dump_style
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err styl_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2639,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2640,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2641,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2643
      start: 2636
    functionDepth: 3
    functionLinenumber: 2636
    functionLinenumberEnd: 2643
    functionName: hlit_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hlit_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2647,1
    - Dst: tx3g_dump_rgba8
      Src: /src/gpac/src/isomedia/box_dump.c:2648,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2649,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2650,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2652
      start: 2644
    functionDepth: 3
    functionLinenumber: 2644
    functionLinenumberEnd: 2652
    functionName: hclr_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - tx3g_dump_rgba8
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hclr_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2658,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2659,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2661,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2664,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2666,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2668
      start: 2654
    functionDepth: 3
    functionLinenumber: 2654
    functionLinenumberEnd: 2668
    functionName: krok_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err krok_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2672,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2673,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2674,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2676
      start: 2669
    functionDepth: 3
    functionLinenumber: 2669
    functionLinenumberEnd: 2676
    functionName: dlay_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dlay_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2680,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2681,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2682,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2684
      start: 2677
    functionDepth: 3
    functionLinenumber: 2677
    functionLinenumberEnd: 2684
    functionName: href_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err href_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2688,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2689,1
    - Dst: tx3g_dump_box
      Src: /src/gpac/src/isomedia/box_dump.c:2690,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2691,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2693
      start: 2685
    functionDepth: 3
    functionLinenumber: 2685
    functionLinenumberEnd: 2693
    functionName: tbox_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - tx3g_dump_box
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tbox_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2697,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2698,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2699,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2701
      start: 2694
    functionDepth: 3
    functionLinenumber: 2694
    functionLinenumberEnd: 2701
    functionName: blnk_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err blnk_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2705,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2706,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2707,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2709
      start: 2702
    functionDepth: 3
    functionLinenumber: 2702
    functionLinenumberEnd: 2709
    functionName: twrp_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err twrp_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start_ex
      Src: /src/gpac/src/isomedia/box_dump.c:2715,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2716,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2717,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2719
      start: 2712
    functionDepth: 2
    functionLinenumber: 2712
    functionLinenumberEnd: 2719
    functionName: meta_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_start_ex
    - gf_isom_box_dump_done
    - gf_fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err meta_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2726,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2727,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2728,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:2730,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/isomedia/box_dump.c:2731,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2733,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2734,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2736
      start: 2722
    functionDepth: 3
    functionLinenumber: 2722
    functionLinenumberEnd: 2736
    functionName: xml_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_fwrite
    - gf_isom_box_dump_done
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err xml_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2742,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2743,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2744,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2746
      start: 2739
    functionDepth: 3
    functionLinenumber: 2739
    functionLinenumberEnd: 2746
    functionName: bxml_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bxml_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2752,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2753,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2754,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2756
      start: 2749
    functionDepth: 3
    functionLinenumber: 2749
    functionLinenumberEnd: 2756
    functionName: pitm_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pitm_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2760,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2761,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2762,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2764
      start: 2758
    functionDepth: 3
    functionLinenumber: 2758
    functionLinenumberEnd: 2764
    functionName: ipro_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ipro_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2769,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2770,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:2770,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2771,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2773
      start: 2766
    functionDepth: 3
    functionLinenumber: 2766
    functionLinenumberEnd: 2773
    functionName: infe_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err infe_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2777,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2778,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2779,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2781
      start: 2775
    functionDepth: 3
    functionLinenumber: 2775
    functionLinenumberEnd: 2781
    functionName: iinf_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iinf_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2787,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2788,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:2789,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:2791,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:2792,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2793,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:2795,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2796,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2798,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2801,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2802,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2803,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2805,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2807
      start: 2783
    functionDepth: 3
    functionLinenumber: 2783
    functionLinenumberEnd: 2807
    functionName: iloc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_list_count
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iloc_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2811,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2812,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2813,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2815
      start: 2809
    functionDepth: 3
    functionLinenumber: 2809
    functionLinenumberEnd: 2815
    functionName: iref_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iref_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2820,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2821,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2822,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2824
      start: 2817
    functionDepth: 3
    functionLinenumber: 2817
    functionLinenumberEnd: 2824
    functionName: hinf_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hinf_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2829,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2830,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2831,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2833
      start: 2826
    functionDepth: 3
    functionLinenumber: 2826
    functionLinenumberEnd: 2833
    functionName: trpy_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trpy_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2840,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2841,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2842,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2844
      start: 2835
    functionDepth: 3
    functionLinenumber: 2835
    functionLinenumberEnd: 2844
    functionName: totl_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err totl_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2851,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2852,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2853,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2855
      start: 2846
    functionDepth: 3
    functionLinenumber: 2846
    functionLinenumberEnd: 2855
    functionName: nump_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nump_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2861,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2862,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2863,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2865
      start: 2857
    functionDepth: 3
    functionLinenumber: 2857
    functionLinenumberEnd: 2865
    functionName: npck_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err npck_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2871,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2872,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2873,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2875
      start: 2867
    functionDepth: 3
    functionLinenumber: 2867
    functionLinenumberEnd: 2875
    functionName: tpyl_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tpyl_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2881,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2882,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2883,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2885
      start: 2877
    functionDepth: 3
    functionLinenumber: 2877
    functionLinenumberEnd: 2885
    functionName: tpay_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tpay_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2891,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2892,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2893,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2895
      start: 2887
    functionDepth: 3
    functionLinenumber: 2887
    functionLinenumberEnd: 2895
    functionName: maxr_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err maxr_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2902,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2903,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2904,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2906
      start: 2897
    functionDepth: 3
    functionLinenumber: 2897
    functionLinenumberEnd: 2906
    functionName: dmed_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dmed_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2912,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2913,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2914,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2916
      start: 2908
    functionDepth: 3
    functionLinenumber: 2908
    functionLinenumberEnd: 2916
    functionName: dimm_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dimm_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2922,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2923,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2924,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2926
      start: 2918
    functionDepth: 3
    functionLinenumber: 2918
    functionLinenumberEnd: 2926
    functionName: drep_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err drep_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2931,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2932,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2933,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2935
      start: 2928
    functionDepth: 3
    functionLinenumber: 2928
    functionLinenumberEnd: 2935
    functionName: tssy_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tssy_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2940,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2941,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2942,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2944
      start: 2937
    functionDepth: 3
    functionLinenumber: 2937
    functionLinenumberEnd: 2944
    functionName: rssr_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rssr_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2950,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2951,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2952,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2954
      start: 2946
    functionDepth: 3
    functionLinenumber: 2946
    functionLinenumberEnd: 2954
    functionName: tmin_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tmin_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2960,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2961,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2962,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2964
      start: 2956
    functionDepth: 3
    functionLinenumber: 2956
    functionLinenumberEnd: 2964
    functionName: tmax_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tmax_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2970,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2971,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2972,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2974
      start: 2966
    functionDepth: 3
    functionLinenumber: 2966
    functionLinenumberEnd: 2974
    functionName: pmax_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pmax_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2980,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2981,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2982,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2984
      start: 2976
    functionDepth: 3
    functionLinenumber: 2976
    functionLinenumberEnd: 2984
    functionName: dmax_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dmax_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2990,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2991,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2992,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2994
      start: 2986
    functionDepth: 3
    functionLinenumber: 2986
    functionLinenumberEnd: 2994
    functionName: payt_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err payt_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3000,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3001,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3002,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3004
      start: 2996
    functionDepth: 3
    functionLinenumber: 2996
    functionLinenumberEnd: 3004
    functionName: name_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err name_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3010,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3011,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3012,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3014
      start: 3006
    functionDepth: 3
    functionLinenumber: 3006
    functionLinenumberEnd: 3014
    functionName: rely_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rely_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3020,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3021,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3022,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3024
      start: 3016
    functionDepth: 3
    functionLinenumber: 3016
    functionLinenumberEnd: 3024
    functionName: snro_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err snro_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3030,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3031,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3032,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3034
      start: 3026
    functionDepth: 3
    functionLinenumber: 3026
    functionLinenumberEnd: 3034
    functionName: tims_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tims_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3040,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3041,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3042,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3044
      start: 3036
    functionDepth: 3
    functionLinenumber: 3036
    functionLinenumberEnd: 3044
    functionName: tsro_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tsro_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3066,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3067,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3069,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3071,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3073,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3075,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3077
      start: 3047
    functionDepth: 3
    functionLinenumber: 3047
    functionLinenumberEnd: 3077
    functionName: ghnt_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ghnt_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3081,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3082,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3083,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3085
      start: 3079
    functionDepth: 3
    functionLinenumber: 3079
    functionLinenumberEnd: 3085
    functionName: hnti_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hnti_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3090,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3091,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3093,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3094,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3096
      start: 3087
    functionDepth: 3
    functionLinenumber: 3087
    functionLinenumberEnd: 3096
    functionName: sdp_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sdp_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3101,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3102,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:3102,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3104,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3105,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3107
      start: 3098
    functionDepth: 3
    functionLinenumber: 3098
    functionLinenumberEnd: 3107
    functionName: rtp_hnti_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtp_hnti_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3113,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3114,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3117
      start: 3109
    functionDepth: 3
    functionLinenumber: 3109
    functionLinenumberEnd: 3117
    functionName: rtpo_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpo_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3123,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3124,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3127
      start: 3121
    functionDepth: 3
    functionLinenumber: 3121
    functionLinenumberEnd: 3127
    functionName: mvex_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mvex_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3132,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3133,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3136
      start: 3129
    functionDepth: 3
    functionLinenumber: 3129
    functionLinenumberEnd: 3136
    functionName: mehd_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mehd_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3140,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3141,1
    - Dst: GF_ISOM_GET_FRAG_LEAD
      Src: /src/gpac/src/isomedia/box_dump.c:3141,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3142,1
    - Dst: GF_ISOM_GET_FRAG_DEPENDS
      Src: /src/gpac/src/isomedia/box_dump.c:3142,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3143,1
    - Dst: GF_ISOM_GET_FRAG_DEPENDED
      Src: /src/gpac/src/isomedia/box_dump.c:3143,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3144,1
    - Dst: GF_ISOM_GET_FRAG_REDUNDANT
      Src: /src/gpac/src/isomedia/box_dump.c:3144,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3145,1
    - Dst: GF_ISOM_GET_FRAG_PAD
      Src: /src/gpac/src/isomedia/box_dump.c:3145,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3146,1
    - Dst: GF_ISOM_GET_FRAG_SYNC
      Src: /src/gpac/src/isomedia/box_dump.c:3146,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3147,1
    - Dst: GF_ISOM_GET_FRAG_DEG
      Src: /src/gpac/src/isomedia/box_dump.c:3147,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 3
    argNames:
    - name
    - sample_flags
    - trace
    argTypes:
    - char*
    - u32
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3149
      start: 3138
    functionDepth: 1
    functionLinenumber: 3138
    functionLinenumberEnd: 3149
    functionName: sample_flags_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - GF_ISOM_GET_FRAG_DEPENDS
    - GF_ISOM_GET_FRAG_DEG
    - GF_ISOM_GET_FRAG_PAD
    - gf_fprintf
    - GF_ISOM_GET_FRAG_SYNC
    - GF_ISOM_GET_FRAG_DEPENDED
    - GF_ISOM_GET_FRAG_LEAD
    - GF_ISOM_GET_FRAG_REDUNDANT
    linkageType: ''
    returnType: void
    signature: void sample_flags_dump(const char *name, u32 sample_flags, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3155,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3156,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3157,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3158,1
    - Dst: sample_flags_dump
      Src: /src/gpac/src/isomedia/box_dump.c:3159,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3162
      start: 3151
    functionDepth: 3
    functionLinenumber: 3151
    functionLinenumberEnd: 3162
    functionName: trex_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - sample_flags_dump
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trex_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3167,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3168,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3171
      start: 3164
    functionDepth: 3
    functionLinenumber: 3164
    functionLinenumberEnd: 3171
    functionName: trep_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trep_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3177,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3178,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:3178,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3180,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3181,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3182,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3184
      start: 3173
    functionDepth: 3
    functionLinenumber: 3173
    functionLinenumberEnd: 3184
    functionName: moof_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err moof_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3190,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3191,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3194
      start: 3186
    functionDepth: 3
    functionLinenumber: 3186
    functionLinenumberEnd: 3194
    functionName: mfhd_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mfhd_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3198,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3199,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3202
      start: 3196
    functionDepth: 3
    functionLinenumber: 3196
    functionLinenumberEnd: 3202
    functionName: traf_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err traf_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3208,1
    - Dst: GF_ISOM_GET_FRAG_LEAD
      Src: /src/gpac/src/isomedia/box_dump.c:3208,1
    - Dst: GF_ISOM_GET_FRAG_DEPENDS
      Src: /src/gpac/src/isomedia/box_dump.c:3208,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3210,1
    - Dst: GF_ISOM_GET_FRAG_LEAD
      Src: /src/gpac/src/isomedia/box_dump.c:3211,1
    - Dst: GF_ISOM_GET_FRAG_DEPENDS
      Src: /src/gpac/src/isomedia/box_dump.c:3211,1
    - Dst: GF_ISOM_GET_FRAG_DEPENDED
      Src: /src/gpac/src/isomedia/box_dump.c:3211,1
    - Dst: GF_ISOM_GET_FRAG_REDUNDANT
      Src: /src/gpac/src/isomedia/box_dump.c:3211,1
    - Dst: GF_ISOM_GET_FRAG_PAD
      Src: /src/gpac/src/isomedia/box_dump.c:3211,1
    - Dst: GF_ISOM_GET_FRAG_SYNC
      Src: /src/gpac/src/isomedia/box_dump.c:3211,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3213,1
    - Dst: GF_ISOM_GET_FRAG_PAD
      Src: /src/gpac/src/isomedia/box_dump.c:3214,1
    - Dst: GF_ISOM_GET_FRAG_SYNC
      Src: /src/gpac/src/isomedia/box_dump.c:3214,1
    - Dst: GF_ISOM_GET_FRAG_DEG
      Src: /src/gpac/src/isomedia/box_dump.c:3214,1
    - Dst: GF_ISOM_GET_FRAG_LEAD
      Src: /src/gpac/src/isomedia/box_dump.c:3215,1
    - Dst: GF_ISOM_GET_FRAG_DEPENDS
      Src: /src/gpac/src/isomedia/box_dump.c:3215,1
    - Dst: GF_ISOM_GET_FRAG_DEPENDED
      Src: /src/gpac/src/isomedia/box_dump.c:3215,1
    - Dst: GF_ISOM_GET_FRAG_REDUNDANT
      Src: /src/gpac/src/isomedia/box_dump.c:3215,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - trace
    - flags
    - field_idx
    argTypes:
    - FILE*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3217
      start: 3204
    functionDepth: 1
    functionLinenumber: 3204
    functionLinenumberEnd: 3217
    functionName: frag_dump_sample_flags
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - GF_ISOM_GET_FRAG_DEPENDS
    - GF_ISOM_GET_FRAG_DEG
    - GF_ISOM_GET_FRAG_PAD
    - gf_fprintf
    - GF_ISOM_GET_FRAG_SYNC
    - GF_ISOM_GET_FRAG_DEPENDED
    - GF_ISOM_GET_FRAG_LEAD
    - GF_ISOM_GET_FRAG_REDUNDANT
    linkageType: ''
    returnType: void
    signature: void frag_dump_sample_flags(FILE * trace, u32 flags, u32 field_idx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3223,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3224,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3227,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3229,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3233,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3235,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3237,1
    - Dst: frag_dump_sample_flags
      Src: /src/gpac/src/isomedia/box_dump.c:3240,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3243,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3245,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3247
      start: 3219
    functionDepth: 3
    functionLinenumber: 3219
    functionLinenumberEnd: 3247
    functionName: tfhd_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - frag_dump_sample_flags
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tfhd_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3253,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3254,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3255,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3256,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3258
      start: 3249
    functionDepth: 3
    functionLinenumber: 3249
    functionLinenumberEnd: 3258
    functionName: tfxd_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tfxd_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3265,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3266,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3267,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3269,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3271,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3273
      start: 3260
    functionDepth: 3
    functionLinenumber: 3260
    functionLinenumberEnd: 3273
    functionName: tfrf_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tfrf_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3287,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3289,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3293,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3296,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3301,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3304,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3307,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3309,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3311,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3313,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3315,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_dump.c:3315,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3316,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_dump.c:3316,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3317,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_dump.c:3317,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3318,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_dump.c:3318,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3319,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_dump.c:3319,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3320,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_dump.c:3320,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3321,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_dump.c:3321,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3322,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_dump.c:3322,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3326,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3330,1
    - Dst: sample_flags_dump
      Src: /src/gpac/src/isomedia/box_dump.c:3333,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3344,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3350,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3352,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3355,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3357,1
    - Dst: frag_dump_sample_flags
      Src: /src/gpac/src/isomedia/box_dump.c:3360,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3363,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3365,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3368,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3370,1
    - Dst: frag_dump_sample_flags
      Src: /src/gpac/src/isomedia/box_dump.c:3373,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3380,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3382,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3386,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3388,1
    - Dst: frag_dump_sample_flags
      Src: /src/gpac/src/isomedia/box_dump.c:3392,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3395,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3398,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3400,1
    - Dst: frag_dump_sample_flags
      Src: /src/gpac/src/isomedia/box_dump.c:3401,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3402,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3406,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3408,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 103
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3411
      start: 3274
    functionDepth: 3
    functionLinenumber: 3274
    functionLinenumberEnd: 3411
    functionName: trun_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_ctrn_field_size_bits
    - gf_fprintf
    - gf_isom_box_dump_start
    - sample_flags_dump
    - frag_dump_sample_flags
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trun_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:3420,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:3422,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:3424,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3425,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3428,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - tlv
    - trace
    argTypes:
    - GF_List*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3433
      start: 3416
    functionDepth: 1
    functionLinenumber: 3416
    functionLinenumberEnd: 3433
    functionName: TLV_Dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_fprintf
    - GF_4CC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TLV_Dump(GF_List *tlv, FILE * trace)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:3438,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:3444,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3447,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3451,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3455,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3460,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3464,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 2
    argNames:
    - dte
    - trace
    argTypes:
    - GF_List*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3469
      start: 3434
    functionDepth: 1
    functionLinenumber: 3434
    functionLinenumberEnd: 3469
    functionName: DTE_Dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DTE_Dump(GF_List *dte, FILE * trace)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/box_dump.c:3485,1
    - Dst: IsHintTrack
      Src: /src/gpac/src/isomedia/box_dump.c:3486,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/isomedia/box_dump.c:3488,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/box_dump.c:3491,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:3493,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:3511,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:3515,1
    - Dst: gf_isom_hint_sample_new
      Src: /src/gpac/src/isomedia/box_dump.c:3516,1
    - Dst: gf_isom_hint_sample_read
      Src: /src/gpac/src/isomedia/box_dump.c:3520,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:3521,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:3523,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3525,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:3528,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3533,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:3538,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3542,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:3545,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3546,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3547,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3550,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3553,1
    - Dst: gf_isom_hint_rtp_length
      Src: /src/gpac/src/isomedia/box_dump.c:3554,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:3558,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3560,1
    - Dst: TLV_Dump
      Src: /src/gpac/src/isomedia/box_dump.c:3561,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3562,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:3565,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3567,1
    - Dst: DTE_Dump
      Src: /src/gpac/src/isomedia/box_dump.c:3568,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3569,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3571,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3576,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:3577,1
    - Dst: gf_isom_hint_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:3578,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 76
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - SampleNum
    - trace
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3580
      start: 3472
    functionDepth: 3
    functionLinenumber: 3472
    functionLinenumberEnd: 3580
    functionName: gf_isom_dump_hint_sample
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 2
    functionsReached:
    - gf_isom_box_dump
    - gf_list_get
    - dump_data_attribute
    - gf_isom_hint_sample_read
    - gf_bs_new
    - gf_fprintf
    - gf_isom_hint_sample_new
    - gf_isom_sample_del
    - IsHintTrack
    - gf_isom_hint_rtp_length
    - gf_bs_del
    - gf_list_count
    - DTE_Dump
    - gf_isom_get_track_box
    - Media_GetSampleDesc
    - gf_isom_hint_sample_del
    - TLV_Dump
    - gf_isom_get_sample
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_dump_hint_sample(GF_ISOFile *the_file, u32 trackNumber,
      u32 SampleNum, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3586,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - trace
    - rec
    argTypes:
    - FILE*
    - GF_BoxRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3587
      start: 3584
    functionDepth: 1
    functionLinenumber: 3584
    functionLinenumberEnd: 3587
    functionName: tx3g_dump_box_nobox
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void tx3g_dump_box_nobox(FILE * trace, GF_BoxRecord *rec)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3606,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 17
    argCount: 5
    argNames:
    - trace
    - start
    - end
    - shift_offset
    - so_count
    argTypes:
    - FILE*
    - u32
    - u32
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3607
      start: 3589
    functionDepth: 1
    functionLinenumber: 3589
    functionLinenumberEnd: 3607
    functionName: tx3g_print_char_offsets
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void tx3g_print_char_offsets(FILE * trace, u32 start, u32 end, u32
      *shift_offset, u32 so_count)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3611,1
    - Dst: tx3g_print_char_offsets
      Src: /src/gpac/src/isomedia/box_dump.c:3613,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3615,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3617,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3619,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3620,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3621,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3623,1
    - Dst: tx3g_dump_rgba8
      Src: /src/gpac/src/isomedia/box_dump.c:3624,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3625,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 4
    argNames:
    - trace
    - rec
    - shift_offset
    - so_count
    argTypes:
    - FILE*
    - GF_StyleRecord*
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3626
      start: 3609
    functionDepth: 2
    functionLinenumber: 3609
    functionLinenumberEnd: 3626
    functionName: tx3g_dump_style_nobox
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - tx3g_dump_rgba8
    - tx3g_print_char_offsets
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void tx3g_dump_style_nobox(FILE * trace, GF_StyleRecord *rec, u32 *shift_offset,
      u32 so_count)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3637,1
    - Dst: sprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3639,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 4
    argNames:
    - ts
    - timescale
    - szDur
    - is_srt
    argTypes:
    - u64
    - u32
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3642
      start: 3628
    functionDepth: 0
    functionLinenumber: 3628
    functionLinenumberEnd: 3642
    functionName: tx3g_format_time
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - sprintf
    linkageType: ''
    returnType: char
    signature: char *tx3g_format_time(u64 ts, u32 timescale, char *szDur, Bool is_srt)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3646,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3649,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3652,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3655,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3658,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3661,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3664,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3667,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3670,1
    - Dst: tx3g_dump_rgba8
      Src: /src/gpac/src/isomedia/box_dump.c:3671,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3672,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3673,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3674,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3678,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3679,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3682,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3684,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3690,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3693,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3696,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3699,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3702,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3708,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3710,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3712,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3713,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3717,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3721,1
    - Dst: tx3g_dump_box_nobox
      Src: /src/gpac/src/isomedia/box_dump.c:3727,1
    - Dst: tx3g_dump_style_nobox
      Src: /src/gpac/src/isomedia/box_dump.c:3728,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3729,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 81
    argCount: 4
    argNames:
    - dump
    - txt_e
    - def_width
    - def_height
    argTypes:
    - FILE*
    - GF_Tx3gSampleEntryBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3730
      start: 3644
    functionDepth: 3
    functionLinenumber: 3644
    functionLinenumberEnd: 3730
    functionName: dump_ttxt_header
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - tx3g_dump_style_nobox
    - tx3g_dump_rgba8
    - tx3g_dump_box_nobox
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void dump_ttxt_header(FILE *dump, GF_Tx3gSampleEntryBox *txt_e, u32
      def_width, u32 def_height)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3739,1
    - Dst: tx3g_format_time
      Src: /src/gpac/src/isomedia/box_dump.c:3739,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3743,1
    - Dst: tx3g_dump_rgba8
      Src: /src/gpac/src/isomedia/box_dump.c:3744,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3749,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3751,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3753,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3758,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_dump.c:3760,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_dump.c:3765,1
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/src/isomedia/box_dump.c:3766,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/isomedia/box_dump.c:3770,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3776,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3786,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3789,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3792,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3795,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3798,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3802,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3804,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:3811,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:3817,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:3819,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:3821,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:3823,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:3825,1
    - Dst: tx3g_dump_box_nobox
      Src: /src/gpac/src/isomedia/box_dump.c:3828,1
    - Dst: tx3g_dump_style_nobox
      Src: /src/gpac/src/isomedia/box_dump.c:3831,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_dump.c:3836,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:3838,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3844,1
    - Dst: tx3g_print_char_offsets
      Src: /src/gpac/src/isomedia/box_dump.c:3845,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3846,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3851,1
    - Dst: tx3g_print_char_offsets
      Src: /src/gpac/src/isomedia/box_dump.c:3852,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3853,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3857,1
    - Dst: tx3g_print_char_offsets
      Src: /src/gpac/src/isomedia/box_dump.c:3858,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3859,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3868,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3872,1
    - Dst: tx3g_print_char_offsets
      Src: /src/gpac/src/isomedia/box_dump.c:3873,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3874,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3876,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3882,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 129
    argCount: 6
    argNames:
    - dump
    - s_txt
    - ts
    - timescale
    - di
    - box_dump
    argTypes:
    - FILE*
    - GF_TextSample*
    - u64
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3884
      start: 3732
    functionDepth: 3
    functionLinenumber: 3732
    functionLinenumberEnd: 3884
    functionName: dump_ttxt_sample
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_box_dump
    - gf_fprintf
    - memcpy
    - gf_utf8_mbstowcs
    - tx3g_print_char_offsets
    - gf_utf8_wcslen
    - tx3g_dump_style_nobox
    - tx3g_dump_rgba8
    - tx3g_format_time
    - gf_list_enum
    - tx3g_dump_box_nobox
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void dump_ttxt_sample(FILE *dump, GF_TextSample *s_txt, u64 ts, u32
      timescale, u32 di, Bool box_dump)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/box_dump.c:3894,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:3904,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3916,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/isomedia/box_dump.c:3916,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3918,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3919,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3921,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3923,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:3925,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:3927,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:3931,1
    - Dst: dump_ttxt_header
      Src: /src/gpac/src/isomedia/box_dump.c:3933,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:3935,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3936,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3939,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3942,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3945,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3948,1
    - Dst: tx3g_dump_rgb16
      Src: /src/gpac/src/isomedia/box_dump.c:3950,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3959,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3960,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3962,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3964,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3966,1
    - Dst: tx3g_dump_box_nobox
      Src: /src/gpac/src/isomedia/box_dump.c:3968,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3969,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3972,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/box_dump.c:3975,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/isomedia/box_dump.c:3979,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:3982,1
    - Dst: gf_isom_parse_text_sample
      Src: /src/gpac/src/isomedia/box_dump.c:3983,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:3984,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:3987,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/isomedia/box_dump.c:3988,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/isomedia/box_dump.c:3989,1
    - Dst: dump_ttxt_sample
      Src: /src/gpac/src/isomedia/box_dump.c:3993,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4000,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4001,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/isomedia/box_dump.c:4002,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4005,1
    - Dst: tx3g_format_time
      Src: /src/gpac/src/isomedia/box_dump.c:4005,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4009,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4011,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/isomedia/box_dump.c:4013,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 109
    argCount: 4
    argNames:
    - the_file
    - track
    - dump
    - dump_type
    argTypes:
    - GF_ISOFile*
    - u32
    - FILE*
    - GF_TextDumpType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4015
      start: 3885
    functionDepth: 4
    functionLinenumber: 3885
    functionLinenumberEnd: 4015
    functionName: gf_isom_dump_ttxt_track
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump
    - gf_set_progress
    - gf_bs_new
    - dump_ttxt_sample
    - gf_isom_get_sample_count
    - gf_list_count
    - gf_isom_get_track_id
    - gf_list_get
    - gf_fprintf
    - dump_ttxt_header
    - gf_isom_sample_del
    - gf_isom_parse_text_sample
    - tx3g_dump_box_nobox
    - gf_isom_get_sample
    - gf_isom_get_track_box
    - tx3g_dump_rgb16
    - gf_bs_del
    - gf_isom_delete_text_sample
    - tx3g_format_time
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_dump_ttxt_track(GF_ISOFile *the_file, u32 track, FILE
      *dump, GF_TextDumpType dump_type)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4023,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_dump.c:4028,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_dump.c:4034,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/isomedia/box_dump.c:4039,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4067,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4068,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4069,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4070,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4072,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4073,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4074,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4075,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4081,1
    - Dst: gf_color_get_name
      Src: /src/gpac/src/isomedia/box_dump.c:4083,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4085,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4088,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4090,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4100,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/isomedia/box_dump.c:4111,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4114,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4120,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4121,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4122,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4123,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4127,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4129,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:4130,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 106
    argCount: 4
    argNames:
    - dump
    - txt
    - txtd
    - vtt_dump
    argTypes:
    - FILE*
    - GF_TextSample*
    - GF_Tx3gSampleEntryBox*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4133
      start: 4019
    functionDepth: 1
    functionLinenumber: 4019
    functionLinenumberEnd: 4133
    functionName: dump_ttxt_sample_srt
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_utf8_wcstombs
    - gf_fprintf
    - memcpy
    - gf_utf8_mbstowcs
    - gf_color_get_name
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_ttxt_sample_srt(FILE *dump, GF_TextSample *txt, GF_Tx3gSampleEntryBox
      *txtd, Bool vtt_dump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4145,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4146,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:4146,1
    - Dst: sprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4148,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4149,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:4149,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - bs
    - ts
    - dump_hour
    - write_srt
    argTypes:
    - GF_BitStream*
    - GF_WebVTTTimestamp*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4150
      start: 4140
    functionDepth: 1
    functionLinenumber: 4140
    functionLinenumberEnd: 4150
    functionName: vttmx_timestamp_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - strlen
    - sprintf
    linkageType: ''
    returnType: void
    signature: void vttmx_timestamp_dump(GF_BitStream *bs, GF_WebVTTTimestamp *ts,
      Bool dump_hour, Bool write_srt)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4157,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:4157,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4158,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:4161,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4162,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4164,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/box_dump.c:4167,1
    - Dst: vttmx_timestamp_dump
      Src: /src/gpac/src/isomedia/box_dump.c:4171,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4172,1
    - Dst: vttmx_timestamp_dump
      Src: /src/gpac/src/isomedia/box_dump.c:4173,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4176,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4177,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:4177,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4179,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4181,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:4181,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4184,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4186,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4189,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:4189,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4190,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 35
    argCount: 3
    argNames:
    - bs
    - cue
    - write_srt
    argTypes:
    - GF_BitStream*
    - GF_WebVTTCue*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4192
      start: 4152
    functionDepth: 2
    functionLinenumber: 4152
    functionLinenumberEnd: 4192
    functionName: webvtt_write_cue_bs
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_opts_get_bool
    - strlen
    - vttmx_timestamp_dump
    linkageType: ''
    returnType: void
    signature: void webvtt_write_cue_bs(GF_BitStream *bs, GF_WebVTTCue *cue, Bool
      write_srt)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/box_dump.c:4203,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/box_dump.c:4204,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/isomedia/box_dump.c:4205,1
    - Dst: gf_isom_get_edit_list_type
      Src: /src/gpac/src/isomedia/box_dump.c:4231,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/box_dump.c:4233,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4237,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4242,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/src/isomedia/box_dump.c:4246,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4249,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/isomedia/box_dump.c:4252,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4256,1
    - Dst: tx3g_format_time
      Src: /src/gpac/src/isomedia/box_dump.c:4257,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4258,1
    - Dst: tx3g_format_time
      Src: /src/gpac/src/isomedia/box_dump.c:4259,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4260,1
    - Dst: gf_webvtt_parse_cues_from_data
      Src: /src/gpac/src/isomedia/box_dump.c:4275,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4276,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:4277,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_dump.c:4280,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4285,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:4287,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:4288,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4289,1
    - Dst: webvtt_write_cue_bs
      Src: /src/gpac/src/isomedia/box_dump.c:4290,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/isomedia/box_dump.c:4291,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_dump.c:4293,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_dump.c:4294,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/box_dump.c:4295,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:4296,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4298,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:4299,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4301,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4306,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4308,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4309,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4313,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4314,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4315,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:4318,1
    - Dst: gf_isom_parse_text_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4319,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:4320,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4322,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4325,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4326,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4329,1
    - Dst: dump_ttxt_sample_srt
      Src: /src/gpac/src/isomedia/box_dump.c:4331,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4333,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4334,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4335,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/isomedia/box_dump.c:4336,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/isomedia/box_dump.c:4339,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 115
    argCount: 3
    argNames:
    - the_file
    - track
    - dump
    argTypes:
    - GF_ISOFile*
    - u32
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4341
      start: 4196
    functionDepth: 5
    functionLinenumber: 4196
    functionLinenumberEnd: 4341
    functionName: gf_isom_dump_srt_track
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_set_progress
    - gf_bs_new
    - gf_bs_write_u16
    - gf_isom_get_sample_count
    - gf_list_count
    - gf_isom_get_sample_info
    - gf_list_get
    - gf_fprintf
    - gf_isom_sample_del
    - gf_bs_get_content
    - gf_isom_get_media_subtype
    - gf_isom_parse_text_sample
    - gf_isom_get_sample
    - webvtt_write_cue_bs
    - gf_isom_get_edit_list_type
    - gf_isom_get_track_box
    - gf_list_del
    - gf_webvtt_parse_cues_from_data
    - gf_webvtt_cue_del
    - gf_bs_del
    - gf_isom_get_media_duration
    - tx3g_format_time
    - gf_isom_delete_text_sample
    - gf_opts_get_bool
    - dump_ttxt_sample_srt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_dump_srt_track(GF_ISOFile *the_file, u32 track, FILE
      *dump)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/box_dump.c:4351,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/box_dump.c:4361,1
    - Dst: strcat
      Src: /src/gpac/src/isomedia/box_dump.c:4362,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/box_dump.c:4363,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4364,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4365,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4366,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4372,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4373,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4374,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/box_dump.c:4376,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4379,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4384,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/src/isomedia/box_dump.c:4388,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4391,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:4396,1
    - Dst: gf_isom_parse_text_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4397,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:4398,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4402,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4403,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4404,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4405,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4406,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4407,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4408,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/isomedia/box_dump.c:4409,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4412,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4414,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4418,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4419,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4421,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/box_dump.c:4422,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/isomedia/box_dump.c:4423,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/isomedia/box_dump.c:4424,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 65
    argCount: 3
    argNames:
    - the_file
    - track
    - dump
    argTypes:
    - GF_ISOFile*
    - u32
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4426
      start: 4343
    functionDepth: 1
    functionLinenumber: 4343
    functionLinenumberEnd: 4426
    functionName: gf_isom_dump_svg_track
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_fclose
    - gf_set_progress
    - gf_bs_new
    - gf_fprintf
    - gf_isom_sample_del
    - strcpy
    - gf_isom_get_sample_count
    - gf_bs_del
    - gf_fopen
    - gf_isom_get_sample_info
    - gf_isom_delete_text_sample
    - gf_file_delete
    - gf_isom_parse_text_sample
    - gf_isom_get_track_box
    - gf_isom_get_sample
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_dump_svg_track(GF_ISOFile *the_file, u32 track, FILE
      *dump)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/box_dump.c:4434,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/box_dump.c:4446,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4449,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4454,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/src/isomedia/box_dump.c:4458,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4460,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:4464,1
    - Dst: gf_isom_parse_text_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4465,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:4466,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4472,1
    - Dst: gf_format_duration
      Src: /src/gpac/src/isomedia/box_dump.c:4472,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4473,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4475,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4478,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4479,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 40
    argCount: 4
    argNames:
    - the_file
    - track
    - dump
    - dump_type
    argTypes:
    - GF_ISOFile*
    - u32
    - FILE*
    - GF_TextDumpType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4482
      start: 4428
    functionDepth: 1
    functionLinenumber: 4428
    functionLinenumberEnd: 4482
    functionName: gf_isom_dump_ogg_chap
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_format_duration
    - gf_bs_new
    - gf_isom_sample_del
    - gf_isom_get_sample_count
    - gf_bs_del
    - gf_isom_delete_text_sample
    - gf_isom_get_sample_info
    - gf_isom_parse_text_sample
    - gf_isom_get_track_box
    - fprintf
    - gf_isom_get_sample
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_dump_ogg_chap(GF_ISOFile *the_file, u32 track, FILE
      *dump, GF_TextDumpType dump_type)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_dump_svg_track
      Src: /src/gpac/src/isomedia/box_dump.c:4488,1
    - Dst: gf_isom_dump_srt_track
      Src: /src/gpac/src/isomedia/box_dump.c:4490,1
    - Dst: gf_isom_dump_ttxt_track
      Src: /src/gpac/src/isomedia/box_dump.c:4494,1
    - Dst: gf_isom_dump_ogg_chap
      Src: /src/gpac/src/isomedia/box_dump.c:4497,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 4
    argNames:
    - the_file
    - track
    - dump
    - dump_type
    argTypes:
    - GF_ISOFile*
    - u32
    - FILE*
    - GF_TextDumpType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4501
      start: 4483
    functionDepth: 6
    functionLinenumber: 4483
    functionLinenumberEnd: 4501
    functionName: gf_isom_text_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 2
    functionsReached:
    - gf_isom_dump_svg_track
    - gf_isom_dump_ttxt_track
    - gf_isom_dump_srt_track
    - gf_isom_dump_ogg_chap
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_text_dump(GF_ISOFile *the_file, u32 track, FILE *dump,
      GF_TextDumpType dump_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4508,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4509,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4510,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4512
      start: 4505
    functionDepth: 3
    functionLinenumber: 4505
    functionLinenumberEnd: 4512
    functionName: sinf_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sinf_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4518,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4519,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:4519,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4520,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4522
      start: 4514
    functionDepth: 3
    functionLinenumber: 4514
    functionLinenumberEnd: 4522
    functionName: frma_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err frma_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4528,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4529,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:4529,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4530,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4531,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4533,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4535
      start: 4524
    functionDepth: 3
    functionLinenumber: 4524
    functionLinenumberEnd: 4535
    functionName: schm_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err schm_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4539,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4540,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4541,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4543
      start: 4537
    functionDepth: 3
    functionLinenumber: 4537
    functionLinenumberEnd: 4543
    functionName: schi_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err schi_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4549,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4550,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4551,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4554
      start: 4545
    functionDepth: 3
    functionLinenumber: 4545
    functionLinenumberEnd: 4554
    functionName: iKMS_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iKMS_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4561,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4562,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4563,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4565
      start: 4556
    functionDepth: 3
    functionLinenumber: 4556
    functionLinenumberEnd: 4565
    functionName: iSFM_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iSFM_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4570,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4571,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4572,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4574
      start: 4567
    functionDepth: 3
    functionLinenumber: 4567
    functionLinenumberEnd: 4574
    functionName: iSLT_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iSLT_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/box_dump.c:4584,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4588,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/src/isomedia/box_dump.c:4589,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/box_dump.c:4591,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:4605,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4607,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - trace
    argTypes:
    - GF_ISOFile*
    - u32
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4609
      start: 4576
    functionDepth: 3
    functionLinenumber: 4576
    functionLinenumberEnd: 4609
    functionName: gf_isom_dump_ismacryp_protection
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_dump
    - gf_fprintf
    - gf_isom_get_track_box
    - Media_GetSampleDesc
    - gf_isom_get_sample_description_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_dump_ismacryp_protection(GF_ISOFile *the_file, u32
      trackNumber, FILE * trace)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4618,1
    - Dst: gf_isom_get_ismacryp_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4621,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4623,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4627,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4628,1
    - Dst: gf_isom_has_sync_points
      Src: /src/gpac/src/isomedia/box_dump.c:4629,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4629,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4630,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4632,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:4633,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4635,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4637,1
    - Dst: gf_isom_ismacryp_delete_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4638,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - SampleNum
    - trace
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4640
      start: 4611
    functionDepth: 2
    functionLinenumber: 4611
    functionLinenumberEnd: 4640
    functionName: gf_isom_dump_ismacryp_sample
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 1
    functionsReached:
    - gf_isom_has_sync_points
    - dump_data_attribute
    - gf_fprintf
    - gf_isom_sample_del
    - gf_isom_get_ismacryp_sample
    - gf_isom_ismacryp_delete_sample
    - gf_isom_get_sample
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_dump_ismacryp_sample(GF_ISOFile *the_file, u32 trackNumber,
      u32 SampleNum, FILE * trace)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_dump.c:4662,1
    - Dst: gf_itags_find_by_itag
      Src: /src/gpac/src/isomedia/box_dump.c:4665,1
    - Dst: gf_itags_get_name
      Src: /src/gpac/src/isomedia/box_dump.c:4667,1
    - Dst: gf_itags_get_type
      Src: /src/gpac/src/isomedia/box_dump.c:4668,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4672,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:4679,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:4680,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:4681,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4683,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:4683,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4685,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:4685,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:4687,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:4690,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4691,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:4691,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:4692,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4695,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4698,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4705,1
    - Dst: gf_id3_get_genre
      Src: /src/gpac/src/isomedia/box_dump.c:4705,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4710,1
    - Dst: dump_data_string
      Src: /src/gpac/src/isomedia/box_dump.c:4713,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4717,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4724,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4733,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/isomedia/box_dump.c:4737,1
    - Dst: dump_data_string
      Src: /src/gpac/src/isomedia/box_dump.c:4738,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:4740,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4744,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4749,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4750,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 94
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4752
      start: 4647
    functionDepth: 3
    functionLinenumber: 4647
    functionLinenumberEnd: 4752
    functionName: ilst_item_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_itags_get_name
    - dump_data_string
    - gf_itags_get_type
    - gf_itags_find_by_itag
    - gf_isom_box_dump_start
    - gf_bs_new
    - gf_fprintf
    - gf_utf8_is_legal
    - dump_data
    - gf_bs_del
    - gf_id3_get_genre
    - gf_bs_read_int
    - gf_isom_box_dump_done
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ilst_item_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4760,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4762,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4765,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4767,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4769,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4770,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4773,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4774,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4778,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4779,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:4783,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4783,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:4786,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4786,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4788,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4790
      start: 4756
    functionDepth: 3
    functionLinenumber: 4756
    functionLinenumberEnd: 4790
    functionName: abst_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump
    - gf_list_get
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err abst_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4796,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4798,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4801,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4802,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4806,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4807,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4811,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4813
      start: 4792
    functionDepth: 3
    functionLinenumber: 4792
    functionLinenumberEnd: 4813
    functionName: afra_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err afra_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4819,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4821,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4824,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4825,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4829,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4830,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4832,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4833,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4836,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4838
      start: 4815
    functionDepth: 3
    functionLinenumber: 4815
    functionLinenumberEnd: 4838
    functionName: afrt_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err afrt_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4844,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4846,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4849,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4850,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4854,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4855,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4858,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4860
      start: 4840
    functionDepth: 3
    functionLinenumber: 4840
    functionLinenumberEnd: 4860
    functionName: asrt_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err asrt_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4871,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4872,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_dump.c:4875,1
    - Dst: ilst_item_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:4876,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4879,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4881
      start: 4864
    functionDepth: 4
    functionLinenumber: 4864
    functionLinenumberEnd: 4881
    functionName: ilst_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_start
    - ilst_item_box_dump
    - gf_list_enum
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ilst_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4885,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4887,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4888,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4890
      start: 4883
    functionDepth: 3
    functionLinenumber: 4883
    functionLinenumberEnd: 4890
    functionName: databox_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err databox_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4894,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4895,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4896,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4898
      start: 4892
    functionDepth: 3
    functionLinenumber: 4892
    functionLinenumberEnd: 4898
    functionName: vexu_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vexu_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4904,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4905,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4908,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4909,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4910,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4912,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4914
      start: 4900
    functionDepth: 3
    functionLinenumber: 4900
    functionLinenumberEnd: 4914
    functionName: eyes_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err eyes_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4920,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4921,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4922,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4924
      start: 4916
    functionDepth: 3
    functionLinenumber: 4916
    functionLinenumberEnd: 4924
    functionName: hero_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hero_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4930,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4931,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4932,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4933,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4934,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4936
      start: 4926
    functionDepth: 3
    functionLinenumber: 4926
    functionLinenumberEnd: 4936
    functionName: amve_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err amve_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4941,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4943,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4945,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4946,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4950,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4954,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4959,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4962,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4963,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4965
      start: 4938
    functionDepth: 3
    functionLinenumber: 4938
    functionLinenumberEnd: 4965
    functionName: ohdr_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ohdr_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4969,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4971,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:4973,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4974,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4975,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4977
      start: 4966
    functionDepth: 3
    functionLinenumber: 4966
    functionLinenumberEnd: 4977
    functionName: grpi_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - dump_data
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err grpi_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4981,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4982,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4983,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4985
      start: 4978
    functionDepth: 3
    functionLinenumber: 4978
    functionLinenumberEnd: 4985
    functionName: mdri_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdri_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4989,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4991,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:4992,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4993,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4994,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4996
      start: 4986
    functionDepth: 3
    functionLinenumber: 4986
    functionLinenumberEnd: 4996
    functionName: odtt_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - dump_data
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err odtt_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5000,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5002,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:5003,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5004,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5005,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5007
      start: 4997
    functionDepth: 3
    functionLinenumber: 4997
    functionLinenumberEnd: 5007
    functionName: odrb_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - dump_data
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err odrb_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5010,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5011,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5012,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5014
      start: 5008
    functionDepth: 3
    functionLinenumber: 5008
    functionLinenumberEnd: 5014
    functionName: odkm_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err odkm_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5020,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5021,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5022,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5024
      start: 5017
    functionDepth: 3
    functionLinenumber: 5017
    functionLinenumberEnd: 5024
    functionName: pasp_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pasp_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5029,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5030,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5031,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5032,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5033,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5034,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5035,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5037
      start: 5026
    functionDepth: 3
    functionLinenumber: 5026
    functionLinenumberEnd: 5037
    functionName: clap_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err clap_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5044,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5046,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5048,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5048,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5051,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5053,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5055
      start: 5040
    functionDepth: 3
    functionLinenumber: 5040
    functionLinenumberEnd: 5055
    functionName: tsel_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tsel_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5081,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5084,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5085,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5086,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5089,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5090,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5091,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5095,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5096,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5098,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5099,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 43
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5101
      start: 5057
    functionDepth: 3
    functionLinenumber: 5057
    functionLinenumberEnd: 5101
    functionName: metx_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err metx_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5108,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5109,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5111,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5115
      start: 5103
    functionDepth: 3
    functionLinenumber: 5103
    functionLinenumberEnd: 5115
    functionName: txtc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txtc_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5120,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5121,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5124
      start: 5117
    functionDepth: 3
    functionLinenumber: 5117
    functionLinenumberEnd: 5124
    functionName: dims_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dims_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5129,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5130,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5133
      start: 5126
    functionDepth: 3
    functionLinenumber: 5126
    functionLinenumberEnd: 5133
    functionName: diST_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err diST_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5138,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5139,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5143
      start: 5135
    functionDepth: 3
    functionLinenumber: 5135
    functionLinenumberEnd: 5143
    functionName: dimC_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dimC_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5149,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5150,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5155,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5157,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5159,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5161,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5162,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5165
      start: 5145
    functionDepth: 3
    functionLinenumber: 5145
    functionLinenumberEnd: 5165
    functionName: dOps_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dOps_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5170,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:5174,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5175,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:5178,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5179,1
    - Dst: gf_iamf_get_obu_name
      Src: /src/gpac/src/isomedia/box_dump.c:5180,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5184,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5186
      start: 5167
    functionDepth: 3
    functionLinenumber: 5167
    functionLinenumberEnd: 5186
    functionName: iacb_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_iamf_get_obu_name
    - gf_list_get
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_list_count
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iacb_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5195,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5197,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5199,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5203,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5206,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5208,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5209,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5211,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5214
      start: 5188
    functionDepth: 3
    functionLinenumber: 5188
    functionLinenumberEnd: 5214
    functionName: dac3_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dac3_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5219,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5220,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5224
      start: 5216
    functionDepth: 3
    functionLinenumber: 5216
    functionLinenumberEnd: 5224
    functionName: dac4_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dac4_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5230,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5231,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5235
      start: 5226
    functionDepth: 3
    functionLinenumber: 5226
    functionLinenumberEnd: 5235
    functionName: dmlp_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dmlp_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5240,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5241,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5246
      start: 5237
    functionDepth: 3
    functionLinenumber: 5237
    functionLinenumberEnd: 5246
    functionName: dvcC_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dvcC_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dvcC_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:5250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5251
      start: 5248
    functionDepth: 4
    functionLinenumber: 5248
    functionLinenumberEnd: 5251
    functionName: dvvC_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - dvcC_box_dump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dvvC_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5256,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:5257,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5258,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5261
      start: 5253
    functionDepth: 3
    functionLinenumber: 5253
    functionLinenumberEnd: 5261
    functionName: lsrc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - dump_data_attribute
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsrc_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5266,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5267,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5270
      start: 5263
    functionDepth: 3
    functionLinenumber: 5263
    functionLinenumberEnd: 5270
    functionName: lsr1_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsr1_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5277,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5279,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5281,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5282,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5285,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5288,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5290,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5292
      start: 5273
    functionDepth: 3
    functionLinenumber: 5273
    functionLinenumberEnd: 5292
    functionName: sidx_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sidx_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5298,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5300,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5302,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5303,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5306,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5308,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5310,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5313,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5314,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5315,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5317,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5319
      start: 5294
    functionDepth: 3
    functionLinenumber: 5294
    functionLinenumberEnd: 5319
    functionName: ssix_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ssix_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5326,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5328,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5330,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5330,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5333,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5335,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5337
      start: 5322
    functionDepth: 3
    functionLinenumber: 5322
    functionLinenumberEnd: 5337
    functionName: leva_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err leva_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5341,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5342,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5343,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5345
      start: 5339
    functionDepth: 3
    functionLinenumber: 5339
    functionLinenumberEnd: 5345
    functionName: strk_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err strk_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5351,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5353,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5356,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5356,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5359,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5361,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5363
      start: 5347
    functionDepth: 3
    functionLinenumber: 5347
    functionLinenumberEnd: 5363
    functionName: stri_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stri_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5369,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5372,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5372,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5373,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5376,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5379,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5381,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5383
      start: 5365
    functionDepth: 3
    functionLinenumber: 5365
    functionLinenumberEnd: 5383
    functionName: stsg_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsg_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5389,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5390,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5393,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5396,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5398,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5400
      start: 5385
    functionDepth: 3
    functionLinenumber: 5385
    functionLinenumberEnd: 5400
    functionName: pcrb_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pcrb_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:5411,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5412,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5414,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:5417,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:5419,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5421,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:5424,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5425,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5427,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5430,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5431,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5432,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5435,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5437
      start: 5402
    functionDepth: 3
    functionLinenumber: 5402
    functionLinenumberEnd: 5437
    functionName: subs_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_list_count
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err subs_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5444,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5446,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5447,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5449
      start: 5440
    functionDepth: 3
    functionLinenumber: 5440
    functionLinenumberEnd: 5449
    functionName: tfdt_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tfdt_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5454,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5455,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5456,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5457,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5458,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5460
      start: 5450
    functionDepth: 3
    functionLinenumber: 5450
    functionLinenumberEnd: 5460
    functionName: rsot_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rsot_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5468,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5469,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5470,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5471,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5472,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5474
      start: 5463
    functionDepth: 3
    functionLinenumber: 5463
    functionLinenumberEnd: 5474
    functionName: rvcc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rvcc_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5485,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5488,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5488,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_dump.c:5491,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5492,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5492,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5494,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5497,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5501,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5503,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5507,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5509,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5511
      start: 5476
    functionDepth: 3
    functionLinenumber: 5476
    functionLinenumberEnd: 5511
    functionName: sbgp_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - isalnum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sbgp_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5518,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5520,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5522,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5524,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5525,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5530,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5531,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5534,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5537,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5540,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5543,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5545,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:5545,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5546,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:5546,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:5546,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5547,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:5550,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:5552,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5553,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:5557,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:5559,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5560,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5561,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5562,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5563,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5564,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5565,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5567,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5569,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5570,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:5572,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:5575,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5576,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5578,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5580,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5581,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5583,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5586,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5587,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5589,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 62
    argCount: 2
    argNames:
    - ptr
    - trace
    argTypes:
    - GF_OperatingPointsInformation*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5591
      start: 5513
    functionDepth: 1
    functionLinenumber: 5513
    functionLinenumberEnd: 5591
    functionName: oinf_entry_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void oinf_entry_dump(GF_OperatingPointsInformation *ptr, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5597,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5598,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5599,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:5603,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5604,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:5606,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5607,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5609,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - ptr
    - trace
    argTypes:
    - GF_LHVCLayerInformation*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5611
      start: 5593
    functionDepth: 1
    functionLinenumber: 5593
    functionLinenumberEnd: 5611
    functionName: linf_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void linf_dump(GF_LHVCLayerInformation *ptr, FILE * trace)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5620,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5621,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5622,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:5626,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:5627,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:5628,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5629,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:5631,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:5632,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:5633,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:5634,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:5635,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5636,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5639,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:5639,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:5639,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5641,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:5641,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:5641,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5643,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:5645,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5646,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5649,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:5649,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5651,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:5654,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 3
    argNames:
    - trace
    - data
    - data_size
    argTypes:
    - FILE*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5655
      start: 5613
    functionDepth: 1
    functionLinenumber: 5613
    functionLinenumberEnd: 5655
    functionName: trif_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_fprintf
    - gf_bs_del
    - gf_bs_read_int
    - gf_bs_read_u16
    linkageType: ''
    returnType: void
    signature: void trif_dump(FILE * trace, char *data, u32 data_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5665,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5666,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5667,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:5671,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:5672,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:5673,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:5674,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:5675,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5676,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5680,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:5682,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5683,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:5685,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5686,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:5689,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5690,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 3
    argNames:
    - trace
    - data
    - data_size
    argTypes:
    - FILE*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5692
      start: 5657
    functionDepth: 1
    functionLinenumber: 5657
    functionLinenumberEnd: 5692
    functionName: nalm_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_fprintf
    - gf_bs_del
    - gf_bs_read_int
    - gf_bs_read_u16
    linkageType: ''
    returnType: void
    signature: void nalm_dump(FILE * trace, char *data, u32 data_size)
  - BBCount: 56
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5701,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5704,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5704,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5705,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5707,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5709,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5711,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5712,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5714,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5715,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5717,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:5718,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:5719,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5722,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5725,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5728,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5731,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5733,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5734,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5737,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5744,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5751,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5756,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:5757,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5759,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5762,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5766,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5768,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:5771,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5773,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5775,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5777,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5779,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:5780,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5782,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:5783,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5785,1
    - Dst: oinf_entry_dump
      Src: /src/gpac/src/isomedia/box_dump.c:5790,1
    - Dst: linf_dump
      Src: /src/gpac/src/isomedia/box_dump.c:5793,1
    - Dst: trif_dump
      Src: /src/gpac/src/isomedia/box_dump.c:5796,1
    - Dst: nalm_dump
      Src: /src/gpac/src/isomedia/box_dump.c:5800,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5803,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5808,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5810,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5811,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5813,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5815,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5816,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5818,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5824,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5824,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5826,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5827,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5829,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5835,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5847,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5849,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5850,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5850,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5852,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/isomedia/box_dump.c:5859,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5863,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5863,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/isomedia/box_dump.c:5864,1
    - Dst: dump_js_data
      Src: /src/gpac/src/isomedia/box_dump.c:5865,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5871,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:5872,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5873,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5881,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5884,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5887,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5890,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5893,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5896,1
    - Dst: oinf_entry_dump
      Src: /src/gpac/src/isomedia/box_dump.c:5899,1
    - Dst: linf_dump
      Src: /src/gpac/src/isomedia/box_dump.c:5902,1
    - Dst: trif_dump
      Src: /src/gpac/src/isomedia/box_dump.c:5905,1
    - Dst: nalm_dump
      Src: /src/gpac/src/isomedia/box_dump.c:5908,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5911,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5914,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5917,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5920,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5924,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5928,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5932,1
    CyclomaticComplexity: 66
    EdgeCount: 66
    ICount: 206
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5934
      start: 5695
    functionDepth: 3
    functionLinenumber: 5695
    functionLinenumberEnd: 5934
    functionName: sgpd_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_list_get
    - trif_dump
    - linf_dump
    - gf_fprintf
    - gf_isom_box_dump_start
    - snprintf
    - gf_file_exists
    - nalm_dump
    - dump_data
    - gf_list_count
    - dump_js_data
    - gf_opts_get_key
    - oinf_entry_dump
    - gf_isom_box_dump_done
    - fprintf
    - dump_data_hex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sgpd_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5945,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5947,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_dump.c:5949,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5950,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5950,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5952,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5955,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5958,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5962,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5964,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5966
      start: 5936
    functionDepth: 3
    functionLinenumber: 5936
    functionLinenumberEnd: 5966
    functionName: saiz_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - isalnum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err saiz_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5977,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5979,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_dump.c:5981,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5982,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5982,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5984,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5988,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5992,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5996,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6000,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6003,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6005,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6007
      start: 5968
    functionDepth: 3
    functionLinenumber: 5968
    functionLinenumberEnd: 6007
    functionName: saio_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - isalnum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err saio_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6014,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6016,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6017,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6018,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6023,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6024,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6025,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6029,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6030,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6031,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6034,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6035,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6037,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6039
      start: 6009
    functionDepth: 3
    functionLinenumber: 6009
    functionLinenumberEnd: 6039
    functionName: pssh_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - dump_data_hex
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pssh_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6046,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6048,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6051,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6053,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6054,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6055,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6057,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6059,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6060,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6063,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6064,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6066,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6068
      start: 6041
    functionDepth: 3
    functionLinenumber: 6041
    functionLinenumberEnd: 6068
    functionName: tenc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - dump_data_hex
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tenc_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6075,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6076,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6078,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6079,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6080,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6081,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6082,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6083,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6085
      start: 6070
    functionDepth: 3
    functionLinenumber: 6070
    functionLinenumberEnd: 6085
    functionName: piff_pssh_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - fprintf
    - dump_data_hex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err piff_pssh_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6092,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6093,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6095,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6096,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6097,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6098,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6100
      start: 6087
    functionDepth: 3
    functionLinenumber: 6087
    functionLinenumberEnd: 6100
    functionName: piff_tenc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - fprintf
    - dump_data_hex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err piff_tenc_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6120,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6123,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6125,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:6126,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6127,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:6132,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6133,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6136,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:6147,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6151,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:6168,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/isomedia/box_dump.c:6170,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6173,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6175,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6177,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6179,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6181,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_dump.c:6182,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:6185,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6187,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:6191,1
    - Dst: gf_cenc_key_info_get_iv_size
      Src: /src/gpac/src/isomedia/box_dump.c:6192,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_dump.c:6193,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6195,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6196,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6198,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_dump.c:6200,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6203,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:6209,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6210,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6211,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6215,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:6217,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6218,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:6220,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:6221,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6222,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6225,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6227,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6229,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:6232,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6235,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6236,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6237,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6239,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 105
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6241
      start: 6102
    functionDepth: 3
    functionLinenumber: 6102
    functionLinenumberEnd: 6241
    functionName: senc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_bs_read_u32
    - gf_bs_new
    - gf_fprintf
    - gf_isom_box_dump_start
    - dump_data
    - gf_bs_get_position
    - gf_list_count
    - gf_bs_del
    - gf_isom_box_dump_done
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_cenc_key_info_get_iv_size
    - gf_bs_reassign_buffer
    - gf_bs_skip_bytes
    - dump_data_hex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err senc_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: senc_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:6245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6246
      start: 6243
    functionDepth: 4
    functionLinenumber: 6243
    functionLinenumberEnd: 6246
    functionName: piff_psec_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - senc_box_dump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err piff_psec_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_dump.c:6257,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/isomedia/box_dump.c:6261,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6265,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6267,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6268,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6271
      start: 6248
    functionDepth: 3
    functionLinenumber: 6248
    functionLinenumberEnd: 6271
    functionName: prft_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_start
    - gf_fprintf
    - GF_LOG
    - gf_isom_box_dump_done
    - gf_gmtime
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err prft_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6276,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6278,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6279,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6281
      start: 6273
    functionDepth: 3
    functionLinenumber: 6273
    functionLinenumberEnd: 6281
    functionName: adkm_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err adkm_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6286,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6287,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6288,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6290
      start: 6283
    functionDepth: 3
    functionLinenumber: 6283
    functionLinenumberEnd: 6290
    functionName: ahdr_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ahdr_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6295,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6296,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6297,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6299
      start: 6292
    functionDepth: 3
    functionLinenumber: 6292
    functionLinenumberEnd: 6299
    functionName: aprm_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err aprm_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6305,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6306,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6307,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6309
      start: 6301
    functionDepth: 3
    functionLinenumber: 6301
    functionLinenumberEnd: 6309
    functionName: aeib_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err aeib_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6314,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6315,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6316,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6318
      start: 6311
    functionDepth: 3
    functionLinenumber: 6311
    functionLinenumberEnd: 6318
    functionName: akey_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err akey_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6323,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6324,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6325,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6327
      start: 6320
    functionDepth: 3
    functionLinenumber: 6320
    functionLinenumberEnd: 6327
    functionName: flxs_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err flxs_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6333,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6334,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6335,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6337
      start: 6329
    functionDepth: 3
    functionLinenumber: 6329
    functionLinenumberEnd: 6337
    functionName: adaf_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err adaf_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6344,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6345,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6346,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6348
      start: 6340
    functionDepth: 3
    functionLinenumber: 6340
    functionLinenumberEnd: 6348
    functionName: ispe_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ispe_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6354,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6355,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6356,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6358
      start: 6350
    functionDepth: 3
    functionLinenumber: 6350
    functionLinenumberEnd: 6358
    functionName: a1lx_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err a1lx_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6364,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6365,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6366,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6368
      start: 6360
    functionDepth: 3
    functionLinenumber: 6360
    functionLinenumberEnd: 6368
    functionName: a1op_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err a1op_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6377,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6380,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6382,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6383,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6384,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6386,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6390,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:6390,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6393,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:6393,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6397,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:6397,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6399,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_dump.c:6401,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/isomedia/box_dump.c:6402,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6404,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6405,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6409,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:6409,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6414,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 40
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6416
      start: 6370
    functionDepth: 3
    functionLinenumber: 6370
    functionLinenumberEnd: 6416
    functionName: colr_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_base64_encode
    - gf_isom_box_dump_done
    - gf_malloc
    - dump_data_hex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err colr_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6423,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6424,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6426,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6429,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6431,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6433
      start: 6418
    functionDepth: 3
    functionLinenumber: 6418
    functionLinenumberEnd: 6433
    functionName: pixi_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pixi_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6439,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6440,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6441,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6443
      start: 6435
    functionDepth: 3
    functionLinenumber: 6435
    functionLinenumberEnd: 6443
    functionName: rloc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rloc_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6449,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6450,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6451,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6453
      start: 6445
    functionDepth: 3
    functionLinenumber: 6445
    functionLinenumberEnd: 6453
    functionName: irot_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err irot_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6460,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6461,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6462,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6465,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6466,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6472,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6475
      start: 6455
    functionDepth: 3
    functionLinenumber: 6455
    functionLinenumberEnd: 6475
    functionName: imir_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err imir_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6482,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6483,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6485,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6487
      start: 6477
    functionDepth: 3
    functionLinenumber: 6477
    functionLinenumberEnd: 6487
    functionName: txlo_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txlo_box_dump(GF_Box *a, FILE *trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6494,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6495,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6497,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6499
      start: 6489
    functionDepth: 3
    functionLinenumber: 6489
    functionLinenumberEnd: 6499
    functionName: fnch_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fnch_box_dump(GF_Box *a, FILE *trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6505,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6506,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6507,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6509
      start: 6501
    functionDepth: 3
    functionLinenumber: 6501
    functionLinenumberEnd: 6509
    functionName: clli_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err clli_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6516,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6518,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6520,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6521,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6523
      start: 6511
    functionDepth: 3
    functionLinenumber: 6511
    functionLinenumberEnd: 6523
    functionName: mdcv_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdcv_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6527,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6528,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6529,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6531
      start: 6525
    functionDepth: 3
    functionLinenumber: 6525
    functionLinenumberEnd: 6531
    functionName: ipco_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ipco_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6535,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6536,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6537,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6539
      start: 6533
    functionDepth: 3
    functionLinenumber: 6533
    functionLinenumberEnd: 6539
    functionName: iprp_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iprp_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:6547,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6548,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6549,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:6551,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6552,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6554,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6556,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6559,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6560,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6561,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6563,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6565
      start: 6541
    functionDepth: 3
    functionLinenumber: 6541
    functionLinenumberEnd: 6565
    functionName: ipma_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_list_count
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ipma_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6571,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6572,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:6573,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6574,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6575,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6577
      start: 6567
    functionDepth: 3
    functionLinenumber: 6567
    functionLinenumberEnd: 6577
    functionName: auxc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - dump_data_attribute
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err auxc_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6583,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6584,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6585,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6586,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6588
      start: 6579
    functionDepth: 3
    functionLinenumber: 6579
    functionLinenumberEnd: 6588
    functionName: auxi_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err auxi_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6593,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6594,1
    - Dst: oinf_entry_dump
      Src: /src/gpac/src/isomedia/box_dump.c:6596,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6598,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6600
      start: 6590
    functionDepth: 3
    functionLinenumber: 6590
    functionLinenumberEnd: 6600
    functionName: oinf_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - oinf_entry_dump
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err oinf_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6604,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6605,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6607,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6609
      start: 6601
    functionDepth: 3
    functionLinenumber: 6601
    functionLinenumberEnd: 6609
    functionName: tols_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tols_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6613,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6614,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6615,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6617
      start: 6611
    functionDepth: 3
    functionLinenumber: 6611
    functionLinenumberEnd: 6617
    functionName: trgr_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trgr_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:6625,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6626,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6628,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6629,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6631
      start: 6619
    functionDepth: 3
    functionLinenumber: 6619
    functionLinenumberEnd: 6631
    functionName: trgt_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    - GF_4CC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trgt_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6635,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6636,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6637,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6639
      start: 6633
    functionDepth: 3
    functionLinenumber: 6633
    functionLinenumberEnd: 6639
    functionName: grpl_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err grpl_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:6648,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6649,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6651,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:6652,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6653,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6654,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6657,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6660,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6662,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6664
      start: 6641
    functionDepth: 3
    functionLinenumber: 6641
    functionLinenumberEnd: 6664
    functionName: grptype_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - dump_data_attribute
    - gf_isom_box_dump_start
    - gf_fprintf
    - GF_4CC
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err grptype_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6669,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6671,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:6672,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6673,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6674,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6676
      start: 6666
    functionDepth: 3
    functionLinenumber: 6666
    functionLinenumberEnd: 6676
    functionName: stvi_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - dump_data_attribute
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stvi_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6709,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6710,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6711,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6713
      start: 6678
    functionDepth: 3
    functionLinenumber: 6678
    functionLinenumberEnd: 6713
    functionName: def_parent_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err def_parent_box_dump(GF_Box *a, FILE *trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6725,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6726,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6727,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6729
      start: 6715
    functionDepth: 3
    functionLinenumber: 6715
    functionLinenumberEnd: 6729
    functionName: def_parent_full_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err def_parent_full_box_dump(GF_Box *a, FILE *trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6732,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6733,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6734,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6736
      start: 6730
    functionDepth: 3
    functionLinenumber: 6730
    functionLinenumberEnd: 6736
    functionName: fiin_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fiin_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6748,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6750,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6753,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6756,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6758,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6760
      start: 6738
    functionDepth: 3
    functionLinenumber: 6738
    functionLinenumberEnd: 6760
    functionName: fecr_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fecr_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6766,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6768,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6771,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6774,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6777,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6779
      start: 6762
    functionDepth: 3
    functionLinenumber: 6762
    functionLinenumberEnd: 6779
    functionName: gitn_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gitn_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6783,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6784,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6785,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6787
      start: 6781
    functionDepth: 3
    functionLinenumber: 6781
    functionLinenumberEnd: 6787
    functionName: paen_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err paen_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6793,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6795,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:6798,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:6798,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6800,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6803,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6806,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6809,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6811
      start: 6789
    functionDepth: 3
    functionLinenumber: 6789
    functionLinenumberEnd: 6811
    functionName: fpar_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - dump_data_attribute
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fpar_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6817,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6818,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6821,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6823,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6825,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6827,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6829,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6832,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6835,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6837
      start: 6813
    functionDepth: 3
    functionLinenumber: 6813
    functionLinenumberEnd: 6837
    functionName: segr_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err segr_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6842,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6844,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6845,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6847
      start: 6839
    functionDepth: 3
    functionLinenumber: 6839
    functionLinenumberEnd: 6847
    functionName: srpp_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err srpp_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6857,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6858,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6861,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:6863,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:6865,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6867,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6870,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6872,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6874
      start: 6851
    functionDepth: 3
    functionLinenumber: 6851
    functionLinenumberEnd: 6874
    functionName: fdpa_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - dump_data_attribute
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fdpa_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6880,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:6881,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6882,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:6884,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6885,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6887
      start: 6876
    functionDepth: 3
    functionLinenumber: 6876
    functionLinenumberEnd: 6887
    functionName: extr_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump
    - dump_data_attribute
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err extr_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6895,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6896,1
    - Dst: gf_isom_box_array_dump
      Src: /src/gpac/src/isomedia/box_dump.c:6898,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6900,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6902
      start: 6889
    functionDepth: 3
    functionLinenumber: 6889
    functionLinenumberEnd: 6902
    functionName: fdsa_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_dump
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fdsa_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6911,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6913,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6915,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6918,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6920,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6922
      start: 6906
    functionDepth: 3
    functionLinenumber: 6906
    functionLinenumberEnd: 6922
    functionName: trik_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trik_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6928,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6930,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6931,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6933
      start: 6924
    functionDepth: 3
    functionLinenumber: 6924
    functionLinenumberEnd: 6933
    functionName: bloc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bloc_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6939,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6941,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6942,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6944
      start: 6935
    functionDepth: 3
    functionLinenumber: 6935
    functionLinenumberEnd: 6944
    functionName: ainf_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ainf_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6951,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6953,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:6954,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6955,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6957,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6959
      start: 6947
    functionDepth: 3
    functionLinenumber: 6947
    functionLinenumberEnd: 6959
    functionName: mhac_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - dump_data
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mhac_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6966,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6967,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6970,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6971,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6973,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6974,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6976
      start: 6961
    functionDepth: 3
    functionLinenumber: 6961
    functionLinenumberEnd: 6976
    functionName: mhap_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mhap_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6981,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6983,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6985,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6987
      start: 6977
    functionDepth: 3
    functionLinenumber: 6977
    functionLinenumberEnd: 6987
    functionName: tmcd_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tmcd_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6993,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6994,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6997,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6999,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7001,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7003
      start: 6989
    functionDepth: 3
    functionLinenumber: 6989
    functionLinenumberEnd: 7003
    functionName: tcmi_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tcmi_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7009,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7010,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7011,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7013
      start: 7005
    functionDepth: 3
    functionLinenumber: 7005
    functionLinenumberEnd: 7013
    functionName: fiel_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fiel_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7019,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7020,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7021,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7023
      start: 7015
    functionDepth: 3
    functionLinenumber: 7015
    functionLinenumberEnd: 7023
    functionName: gama_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gama_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7029,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7030,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7031,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7033,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7034,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7035,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7038
      start: 7025
    functionDepth: 3
    functionLinenumber: 7025
    functionLinenumberEnd: 7038
    functionName: chrm_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err chrm_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7045,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7046,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7049,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7051,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7053
      start: 7040
    functionDepth: 3
    functionLinenumber: 7040
    functionLinenumberEnd: 7053
    functionName: chan_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err chan_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7058,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7059,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7060,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7062
      start: 7055
    functionDepth: 3
    functionLinenumber: 7055
    functionLinenumberEnd: 7062
    functionName: jp_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jp_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7066,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7067,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7068,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7070
      start: 7064
    functionDepth: 3
    functionLinenumber: 7064
    functionLinenumberEnd: 7070
    functionName: jp2h_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jp2h_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:7075,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7077,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7078,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:7080,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7081,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:7081,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7083,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7085
      start: 7072
    functionDepth: 3
    functionLinenumber: 7072
    functionLinenumberEnd: 7085
    functionName: jp2p_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_list_get
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_list_count
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jp2p_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7091,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7092,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7093,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7094,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7096
      start: 7087
    functionDepth: 3
    functionLinenumber: 7087
    functionLinenumberEnd: 7096
    functionName: jsub_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jsub_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7102,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7103,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7106
      start: 7098
    functionDepth: 3
    functionLinenumber: 7098
    functionLinenumberEnd: 7106
    functionName: orfo_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err orfo_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7111,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7112,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7115
      start: 7108
    functionDepth: 3
    functionLinenumber: 7108
    functionLinenumberEnd: 7115
    functionName: ihdr_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ihdr_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7120,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7121,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7124
      start: 7117
    functionDepth: 3
    functionLinenumber: 7117
    functionLinenumberEnd: 7124
    functionName: dfla_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dfla_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7130,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7131,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7143
      start: 7126
    functionDepth: 3
    functionLinenumber: 7126
    functionLinenumberEnd: 7143
    functionName: ddts_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ddts_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7151,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7152,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7165,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7167,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7168,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7172,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7174
      start: 7145
    functionDepth: 3
    functionLinenumber: 7145
    functionLinenumberEnd: 7174
    functionName: udts_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err udts_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7180,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7181,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7183,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7186,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7189,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7192,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7195,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7198,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7200,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7202
      start: 7176
    functionDepth: 3
    functionLinenumber: 7176
    functionLinenumberEnd: 7202
    functionName: mvcg_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mvcg_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7208,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7209,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7211,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7221,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7223,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7225,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7227
      start: 7204
    functionDepth: 3
    functionLinenumber: 7204
    functionLinenumberEnd: 7227
    functionName: vwid_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vwid_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7233,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7234,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7237
      start: 7229
    functionDepth: 3
    functionLinenumber: 7229
    functionLinenumberEnd: 7237
    functionName: pcmC_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pcmC_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7242,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7243,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7245,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7248,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7250,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7254,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7258,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7260,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7262,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7266,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7268
      start: 7239
    functionDepth: 3
    functionLinenumber: 7239
    functionLinenumberEnd: 7268
    functionName: chnl_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err chnl_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7274,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7275,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7278
      start: 7270
    functionDepth: 3
    functionLinenumber: 7270
    functionLinenumberEnd: 7278
    functionName: srat_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err srat_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7284,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7285,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7286,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7288
      start: 7280
    functionDepth: 3
    functionLinenumber: 7280
    functionLinenumberEnd: 7288
    functionName: load_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err load_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7294,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7295,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7299,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7301,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:7304,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7306,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7307,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7309
      start: 7290
    functionDepth: 3
    functionLinenumber: 7290
    functionLinenumberEnd: 7309
    functionName: emsg_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - dump_data_attribute
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err emsg_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7316,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7317,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7321,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7323,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:7326,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7327,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/box_dump.c:7330,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:7331,1
    - Dst: scte35_dump_xml
      Src: /src/gpac/src/isomedia/box_dump.c:7332,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:7333,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7337,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7340,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7342
      start: 7312
    functionDepth: 3
    functionLinenumber: 7312
    functionLinenumberEnd: 7342
    functionName: emib_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - dump_data_attribute
    - gf_bs_new
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_bs_del
    - strcmp
    - scte35_dump_xml
    - gf_isom_box_dump_done
    - fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err emib_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7346,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7347,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7348,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7350
      start: 7344
    functionDepth: 3
    functionLinenumber: 7344
    functionLinenumberEnd: 7350
    functionName: emeb_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err emeb_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7355,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7356,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7359
      start: 7352
    functionDepth: 3
    functionLinenumber: 7352
    functionLinenumberEnd: 7359
    functionName: evte_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evte_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7364,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7366,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7368,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:7371,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7372,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7376,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7378
      start: 7361
    functionDepth: 3
    functionLinenumber: 7361
    functionLinenumberEnd: 7378
    functionName: silb_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err silb_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7387,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7388,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:7396,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7401,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7402,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7406,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7409,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7411,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7413,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7415,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7418,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7420
      start: 7380
    functionDepth: 3
    functionLinenumber: 7380
    functionLinenumberEnd: 7420
    functionName: csgp_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_isom_box_dump_done
    - fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err csgp_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7428,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7430,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7431,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7436,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:7437,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7438,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7441,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7444,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:7445,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7446,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7451,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7453,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7455
      start: 7423
    functionDepth: 3
    functionLinenumber: 7423
    functionLinenumberEnd: 7455
    functionName: ienc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - dump_data_hex
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ienc_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7461,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7462,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7463,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7465
      start: 7457
    functionDepth: 3
    functionLinenumber: 7457
    functionLinenumberEnd: 7465
    functionName: iaux_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iaux_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:7472,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7474,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7475,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:7477,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7479,1
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/src/isomedia/box_dump.c:7482,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_dump.c:7483,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/isomedia/box_dump.c:7484,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7488,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:7490,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7492,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:7493,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7494,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7496,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7498,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7500
      start: 7469
    functionDepth: 3
    functionLinenumber: 7469
    functionLinenumberEnd: 7500
    functionName: xtra_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_utf8_wcstombs
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_utf8_wcslen
    - gf_list_count
    - gf_isom_box_dump_done
    - gf_malloc
    - dump_data_hex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err xtra_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7507,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7508,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7509,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7511
      start: 7503
    functionDepth: 3
    functionLinenumber: 7503
    functionLinenumberEnd: 7511
    functionName: st3d_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err st3d_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7517,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7518,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7519,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7521
      start: 7513
    functionDepth: 3
    functionLinenumber: 7513
    functionLinenumberEnd: 7521
    functionName: svhd_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svhd_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7527,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7528,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7529,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7531
      start: 7523
    functionDepth: 3
    functionLinenumber: 7523
    functionLinenumberEnd: 7531
    functionName: prhd_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err prhd_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7538,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7539,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7540,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7543,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7544,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7545,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7548,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7549,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:7549,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7550,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7553
      start: 7533
    functionDepth: 3
    functionLinenumber: 7533
    functionLinenumberEnd: 7553
    functionName: proj_type_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err proj_type_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7560,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7561,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_dump.c:7564,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7565,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:7565,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/isomedia/box_dump.c:7567,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7568,1
    - Dst: dump_data_string
      Src: /src/gpac/src/isomedia/box_dump.c:7569,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7570,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:7572,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7574,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7577,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7579,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7581
      start: 7555
    functionDepth: 3
    functionLinenumber: 7555
    functionLinenumberEnd: 7581
    functionName: keys_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - dump_data_string
    - dump_data_attribute
    - gf_utf8_is_legal
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_list_enum
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err keys_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:7585,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7587,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7588,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:7592,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7593,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7595,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7596,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7598,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7601,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7603
      start: 7582
    functionDepth: 3
    functionLinenumber: 7582
    functionLinenumberEnd: 7603
    functionName: sref_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_list_count
    - gf_isom_box_dump_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sref_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7613,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7614,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7616
      start: 7605
    functionDepth: 3
    functionLinenumber: 7605
    functionLinenumberEnd: 7616
    functionName: empty_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err empty_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7622,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7623,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:7623,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7624,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7625,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7626,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7628
      start: 7618
    functionDepth: 3
    functionLinenumber: 7618
    functionLinenumberEnd: 7628
    functionName: extl_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err extl_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsArray
      Src: /src/gpac/src/isomedia/box_dump.c:7660,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_dump.c:7664,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/isomedia/box_dump.c:7665,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7668,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/isomedia/box_dump.c:7669,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7673,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/isomedia/box_dump.c:7674,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/isomedia/box_dump.c:7675,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7677,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/isomedia/box_dump.c:7678,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/isomedia/box_dump.c:7679,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:7686,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/box_dump.c:7687,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_dump.c:7688,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:7692,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7695,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:7696,1
    - Dst: JS_GetOwnPropertyNames
      Src: /src/gpac/src/isomedia/box_dump.c:7699,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/isomedia/box_dump.c:7703,1
    - Dst: JS_AtomToCString
      Src: /src/gpac/src/isomedia/box_dump.c:7704,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/isomedia/box_dump.c:7705,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/isomedia/box_dump.c:7707,1
    - Dst: dump_element
      Src: /src/gpac/src/isomedia/box_dump.c:7710,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/isomedia/box_dump.c:7711,1
    - Dst: dump_element
      Src: /src/gpac/src/isomedia/box_dump.c:7714,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/box_dump.c:7715,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/box_dump.c:7718,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7719,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/isomedia/box_dump.c:7721,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/isomedia/box_dump.c:7722,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/isomedia/box_dump.c:7723,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7727,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7730,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/isomedia/box_dump.c:7737,1
    - Dst: js_free
      Src: /src/gpac/src/isomedia/box_dump.c:7738,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7740,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7744,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/isomedia/box_dump.c:7745,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_dump.c:7747,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:7747,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7748,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:7748,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/isomedia/box_dump.c:7749,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/isomedia/box_dump.c:7751,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:7754,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7757,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7759,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/isomedia/box_dump.c:7763,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/isomedia/box_dump.c:7764,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 88
    argCount: 9
    argNames:
    - ctx
    - trace
    - name
    - obj
    - skip_name
    - parent_type
    - box
    - buf
    - buflen
    argTypes:
    - JSContext*
    - FILE*
    - char*
    - JSValue
    - Bool
    - u32
    - GF_Box*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7766
      start: 7649
    functionDepth: 2
    functionLinenumber: 7649
    functionLinenumberEnd: 7766
    functionName: dump_element
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 1
    functionsReached:
    - gf_free
    - JS_FreeAtom
    - gf_bs_new
    - gf_list_count
    - JS_AtomToCString
    - gf_isom_box_dump_done
    - fprintf
    - JS_FreeCString
    - JS_ToCString
    - gf_strdup
    - gf_4cc_to_str
    - gf_dynstrcat
    - JS_IsObject
    - JS_GetOwnPropertyNames
    - JS_GetProperty
    - gf_isom_box_array_read
    - js_free
    - strstr
    - JS_ToInt32
    - JS_GetPropertyStr
    - gf_bs_set_cookie
    - dump_element
    - JS_IsArray
    - JS_FreeValue
    - gf_bs_del
    - strcmp
    linkageType: ''
    returnType: void
    signature: void dump_element(JSContext *ctx, FILE *trace, const char *name, JSValue
      obj, Bool skip_name, u32 parent_type, GF_Box *box, u8 *buf, u32 buflen)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewRuntime
      Src: /src/gpac/src/isomedia/box_dump.c:7779,1
    - Dst: JS_NewContext
      Src: /src/gpac/src/isomedia/box_dump.c:7780,1
    - Dst: qjs_module_init_gpaccore
      Src: /src/gpac/src/isomedia/box_dump.c:7781,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/isomedia/box_dump.c:7784,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/isomedia/box_dump.c:7785,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/isomedia/box_dump.c:7786,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:7787,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/isomedia/box_dump.c:7788,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:7789,1
    - Dst: JS_Eval
      Src: /src/gpac/src/isomedia/box_dump.c:7791,1
    - Dst: JS_IsException
      Src: /src/gpac/src/isomedia/box_dump.c:7792,1
    - Dst: js_dump_error
      Src: /src/gpac/src/isomedia/box_dump.c:7794,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/isomedia/box_dump.c:7796,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:7797,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/isomedia/box_dump.c:7802,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7803,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/isomedia/box_dump.c:7803,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7804,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/isomedia/box_dump.c:7804,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/isomedia/box_dump.c:7806,1
    - Dst: sprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7808,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:7808,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7810,1
    - Dst: JS_NewString
      Src: /src/gpac/src/isomedia/box_dump.c:7810,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7811,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/isomedia/box_dump.c:7811,1
    - Dst: strcat
      Src: /src/gpac/src/isomedia/box_dump.c:7812,1
    - Dst: strcat
      Src: /src/gpac/src/isomedia/box_dump.c:7815,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7818,1
    - Dst: JS_NewString
      Src: /src/gpac/src/isomedia/box_dump.c:7818,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7819,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/isomedia/box_dump.c:7819,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/isomedia/box_dump.c:7821,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7822,1
    - Dst: JS_Call
      Src: /src/gpac/src/isomedia/box_dump.c:7824,1
    - Dst: JS_IsException
      Src: /src/gpac/src/isomedia/box_dump.c:7825,1
    - Dst: js_dump_error
      Src: /src/gpac/src/isomedia/box_dump.c:7827,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/isomedia/box_dump.c:7829,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/isomedia/box_dump.c:7831,1
    - Dst: dump_element
      Src: /src/gpac/src/isomedia/box_dump.c:7834,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7836,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/isomedia/box_dump.c:7838,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/isomedia/box_dump.c:7839,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/isomedia/box_dump.c:7840,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 49
    argCount: 7
    argNames:
    - data
    - size
    - b4cc
    - par_type
    - box
    - trace
    - szPath
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - GF_Box*
    - FILE*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7843
      start: 7771
    functionDepth: 3
    functionLinenumber: 7771
    functionLinenumberEnd: 7843
    functionName: dump_js_data
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 2
    functionsReached:
    - gf_free
    - JS_GetGlobalObject
    - JS_NewCFunction
    - strcat
    - gf_4cc_to_str
    - gf_fprintf
    - sprintf
    - JS_NewString
    - js_dump_error
    - gf_dynstrcat
    - JS_NewInt32
    - qjs_module_init_gpaccore
    - JS_NewRuntime
    - JS_GetPropertyStr
    - strlen
    - JS_NewContext
    - dump_element
    - JS_Eval
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_NewArrayBuffer
    - JS_NewObject
    - JS_SetPropertyStr
    - gf_file_load_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_js_data(u8 *data, u32 size, u32 b4cc, u32 par_type, GF_Box
      *box, FILE *trace, char *szPath)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_FreeContext
      Src: /src/gpac/src/isomedia/box_dump.c:7847,1
    - Dst: JS_FreeRuntime
      Src: /src/gpac/src/isomedia/box_dump.c:7848,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7851
      start: 7845
    functionDepth: 1
    functionLinenumber: 7845
    functionLinenumberEnd: 7851
    functionName: gf_isom_dump_js_cleanup
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 1
    functionsReached:
    - JS_FreeRuntime
    - JS_FreeContext
    linkageType: ''
    returnType: void
    signature: void gf_isom_dump_js_cleanup()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:36,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:37,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 38
    functionName: co64_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void co64_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:44,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:46,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:49,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:53,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:57,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 60
    functionName: co64_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u64
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err co64_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: co64_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *co64_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:77,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:79,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:81,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 71
    functionDepth: 3
    functionLinenumber: 71
    functionLinenumberEnd: 84
    functionName: co64_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err co64_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 92
    functionName: co64_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err co64_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:101,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:102,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 103
    functionName: cprt_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void cprt_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:108,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 112
    functionName: chpl_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *chpl_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:118,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:119,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:120,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:121,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_base.c:122,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:124,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:125,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 126
    functionName: chpl_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void chpl_box_del(GF_Box *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:136,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:138,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:139,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:143,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_base.c:145,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:146,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:147,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:153,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_base.c:158,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:159,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_base.c:162,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:166,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/box_code_base.c:168,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:173,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:180,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 48
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 182
    functionName: chpl_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_list_insert
    - gf_strdup
    - gf_bs_read_u32
    - gf_list_get
    - gf_free
    - GF_SAFEALLOC
    - gf_list_add
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_bs_read_u64
    - ISOM_DECREASE_SIZE_GOTO_EXIT
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err chpl_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:191,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:194,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:195,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:196,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:199,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:200,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:202,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:204,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:205,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:207,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 186
    functionDepth: 3
    functionLinenumber: 186
    functionLinenumberEnd: 211
    functionName: chpl_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_full_box_write
    - strlen
    - gf_list_count
    - gf_bs_write_data
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err chpl_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:220,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:222,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:224,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 213
    functionDepth: 1
    functionLinenumber: 213
    functionLinenumberEnd: 227
    functionName: chpl_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err chpl_box_size(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:236,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:237,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:239,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:240,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:241,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:255,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:257,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 232
    functionDepth: 1
    functionLinenumber: 232
    functionLinenumberEnd: 261
    functionName: cprt_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_int
    - gf_bs_read_data
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cprt_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 263
    functionDepth: 1
    functionLinenumber: 263
    functionLinenumberEnd: 271
    functionName: cprt_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *cprt_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:280,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:282,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:284,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:285,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:286,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:288,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:291,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:291,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 275
    functionDepth: 3
    functionLinenumber: 275
    functionLinenumberEnd: 294
    functionName: cprt_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_int
    - strlen
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cprt_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:302,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 296
    functionDepth: 0
    functionLinenumber: 296
    functionLinenumberEnd: 304
    functionName: cprt_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cprt_box_size(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:312,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:313,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:314,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 308
    functionDepth: 0
    functionLinenumber: 308
    functionLinenumberEnd: 315
    functionName: kind_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void kind_box_del(GF_Box *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:325,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:327,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/box_code_base.c:330,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_base.c:335,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:337,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_base.c:341,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:344,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 317
    functionDepth: 1
    functionLinenumber: 317
    functionLinenumberEnd: 347
    functionName: kind_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_malloc
    - gf_strdup
    - gf_free
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err kind_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:351,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 349
    functionDepth: 1
    functionLinenumber: 349
    functionLinenumberEnd: 353
    functionName: kind_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *kind_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:362,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:365,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:365,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:367,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:370,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:370,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 357
    functionDepth: 3
    functionLinenumber: 357
    functionLinenumberEnd: 373
    functionName: kind_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u8
    - strlen
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err kind_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:379,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:381,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 375
    functionDepth: 0
    functionLinenumber: 375
    functionLinenumberEnd: 384
    functionName: kind_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err kind_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:391,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:392,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 388
    functionDepth: 0
    functionLinenumber: 388
    functionLinenumberEnd: 393
    functionName: ctts_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void ctts_box_del(GF_Box *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:403,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:404,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:407,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:412,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:416,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:417,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:419,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:421,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:424,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/box_code_base.c:433,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/box_code_base.c:434,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 35
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 442
      start: 397
    functionDepth: 1
    functionLinenumber: 397
    functionLinenumberEnd: 442
    functionName: ctts_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ABS
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ctts_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:446,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 444
    functionDepth: 1
    functionLinenumber: 444
    functionLinenumberEnd: 448
    functionName: ctts_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *ctts_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:460,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:464,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:466,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:468,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:470,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 454
    functionDepth: 3
    functionLinenumber: 454
    functionLinenumberEnd: 474
    functionName: ctts_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ctts_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 476
    functionDepth: 0
    functionLinenumber: 476
    functionLinenumberEnd: 482
    functionName: ctts_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ctts_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:490,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 486
    functionDepth: 0
    functionLinenumber: 486
    functionLinenumberEnd: 492
    functionName: cslg_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void cslg_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:499,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:500,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:501,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:502,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:503,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:504,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:507,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:508,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:509,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:510,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:511,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:512,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 494
    functionDepth: 1
    functionLinenumber: 494
    functionLinenumberEnd: 516
    functionName: cslg_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cslg_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:520,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 522
      start: 518
    functionDepth: 1
    functionLinenumber: 518
    functionLinenumberEnd: 522
    functionName: cslg_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *cslg_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:531,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:534,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:535,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:536,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:537,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:538,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/isomedia/box_code_base.c:541,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/isomedia/box_code_base.c:542,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/isomedia/box_code_base.c:543,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/isomedia/box_code_base.c:544,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/isomedia/box_code_base.c:545,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 526
    functionDepth: 3
    functionLinenumber: 526
    functionLinenumberEnd: 549
    functionName: cslg_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_isom_full_box_write
    - gf_bs_write_long_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cslg_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 551
    functionDepth: 0
    functionLinenumber: 551
    functionLinenumberEnd: 563
    functionName: cslg_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cslg_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:569,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 566
    functionDepth: 0
    functionLinenumber: 566
    functionLinenumberEnd: 571
    functionName: ccst_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void ccst_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:577,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:578,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:579,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:580,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:581,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 583
      start: 573
    functionDepth: 1
    functionLinenumber: 573
    functionLinenumberEnd: 583
    functionName: ccst_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ccst_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:587,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 589
      start: 585
    functionDepth: 1
    functionLinenumber: 585
    functionLinenumberEnd: 589
    functionName: ccst_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *ccst_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:598,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:600,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:601,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:602,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:603,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 593
    functionDepth: 3
    functionLinenumber: 593
    functionLinenumberEnd: 605
    functionName: ccst_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ccst_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 607
    functionDepth: 0
    functionLinenumber: 607
    functionLinenumberEnd: 612
    functionName: ccst_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ccst_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:620,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:621,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 623
      start: 616
    functionDepth: 0
    functionLinenumber: 616
    functionLinenumberEnd: 623
    functionName: url_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void url_box_del(GF_Box *s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:632,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:633,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:640,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:643,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:645,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:647,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 626
    functionDepth: 1
    functionLinenumber: 626
    functionLinenumberEnd: 652
    functionName: url_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err url_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:656,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 654
    functionDepth: 1
    functionLinenumber: 654
    functionLinenumberEnd: 658
    functionName: url_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *url_box_new()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:667,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:671,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:677,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:677,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 662
    functionDepth: 3
    functionLinenumber: 662
    functionLinenumberEnd: 681
    functionName: url_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u32
    - strlen
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err url_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:693,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 683
    functionDepth: 0
    functionLinenumber: 683
    functionLinenumberEnd: 696
    functionName: url_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err url_box_size(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:704,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:705,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:706,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 707
      start: 700
    functionDepth: 0
    functionLinenumber: 700
    functionLinenumberEnd: 707
    functionName: urn_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void urn_box_del(GF_Box *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:719,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:722,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:731,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:741,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:743,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_code_base.c:746,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:749,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:752,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:754,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:755,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_code_base.c:759,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:762,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 41
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 764
      start: 710
    functionDepth: 1
    functionLinenumber: 710
    functionLinenumberEnd: 764
    functionName: urn_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - memcpy
    - GF_LOG
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err urn_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:768,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 770
      start: 766
    functionDepth: 1
    functionLinenumber: 766
    functionLinenumberEnd: 770
    functionName: urn_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *urn_box_new()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:780,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:786,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:786,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:789,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:789,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 775
    functionDepth: 3
    functionLinenumber: 775
    functionLinenumberEnd: 793
    functionName: urn_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - strlen
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err urn_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:800,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:801,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 804
      start: 795
    functionDepth: 0
    functionLinenumber: 795
    functionLinenumberEnd: 804
    functionName: urn_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err urn_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:812,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:813,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 814
      start: 808
    functionDepth: 0
    functionLinenumber: 808
    functionLinenumberEnd: 814
    functionName: unkn_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void unkn_box_del(GF_Box *s)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:828,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_code_base.c:828,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_base.c:829,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:833,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:836,1
    - Dst: gf_bs_get_cookie
      Src: /src/gpac/src/isomedia/box_code_base.c:839,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_code_base.c:844,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:845,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:846,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_code_base.c:848,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:849,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_code_base.c:850,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:851,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_code_base.c:852,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:853,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_code_base.c:854,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_base.c:857,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/box_code_base.c:858,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:859,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:861,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:863,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/box_code_base.c:867,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 50
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 872
      start: 817
    functionDepth: 3
    functionLinenumber: 817
    functionLinenumberEnd: 872
    functionName: unkn_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_4cc_to_str
    - gf_free
    - gf_bs_read_u32
    - gf_isom_box_array_del
    - gf_bs_new
    - gf_bs_seek
    - GF_LOG
    - gf_bs_set_cookie
    - gf_bs_del
    - gf_bs_get_cookie
    - gf_isom_box_array_read
    - gf_bs_read_u8
    - isalnum
    - gf_malloc
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err unkn_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:876,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 878
      start: 874
    functionDepth: 1
    functionLinenumber: 874
    functionLinenumberEnd: 878
    functionName: unkn_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 1
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *unkn_box_new()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:891,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:897,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_base.c:898,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:900,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:902,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_base.c:903,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:905,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:910,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 913
      start: 882
    functionDepth: 2
    functionLinenumber: 882
    functionLinenumberEnd: 913
    functionName: unkn_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_seek
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_bs_write_u64
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err unkn_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 923
      start: 915
    functionDepth: 0
    functionLinenumber: 915
    functionLinenumberEnd: 923
    functionName: unkn_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err unkn_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:930,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 931
      start: 928
    functionDepth: 0
    functionLinenumber: 928
    functionLinenumberEnd: 931
    functionName: def_parent_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void def_parent_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:936,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 937
      start: 934
    functionDepth: 2
    functionLinenumber: 934
    functionLinenumberEnd: 937
    functionName: def_parent_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err def_parent_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:941,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 939
    functionDepth: 1
    functionLinenumber: 939
    functionLinenumberEnd: 943
    functionName: def_parent_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *def_parent_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:949,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 950
      start: 947
    functionDepth: 2
    functionLinenumber: 947
    functionLinenumberEnd: 950
    functionName: def_parent_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err def_parent_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 952
    functionDepth: 0
    functionLinenumber: 952
    functionLinenumberEnd: 955
    functionName: def_parent_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err def_parent_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:962,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 963
      start: 960
    functionDepth: 0
    functionLinenumber: 960
    functionLinenumberEnd: 963
    functionName: def_parent_full_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void def_parent_full_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:968,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 969
      start: 966
    functionDepth: 2
    functionLinenumber: 966
    functionLinenumberEnd: 969
    functionName: def_parent_full_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err def_parent_full_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:973,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 975
      start: 971
    functionDepth: 1
    functionLinenumber: 971
    functionLinenumberEnd: 975
    functionName: def_parent_full_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *def_parent_full_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:981,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 982
      start: 979
    functionDepth: 3
    functionLinenumber: 979
    functionLinenumberEnd: 982
    functionName: def_parent_full_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err def_parent_full_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 987
      start: 984
    functionDepth: 0
    functionLinenumber: 984
    functionLinenumberEnd: 987
    functionName: def_parent_full_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err def_parent_full_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:995,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:996,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 997
      start: 991
    functionDepth: 0
    functionLinenumber: 991
    functionLinenumberEnd: 997
    functionName: uuid_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void uuid_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:1008,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:1011,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1014
      start: 1000
    functionDepth: 1
    functionLinenumber: 1000
    functionLinenumberEnd: 1014
    functionName: uuid_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err uuid_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:1018,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1020
      start: 1016
    functionDepth: 1
    functionLinenumber: 1016
    functionLinenumberEnd: 1020
    functionName: uuid_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 1
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *uuid_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:1030,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:1033,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1036
      start: 1024
    functionDepth: 2
    functionLinenumber: 1024
    functionLinenumberEnd: 1036
    functionName: uuid_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err uuid_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1043
      start: 1038
    functionDepth: 0
    functionLinenumber: 1038
    functionLinenumberEnd: 1043
    functionName: uuid_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err uuid_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1050,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1051
      start: 1048
    functionDepth: 0
    functionLinenumber: 1048
    functionLinenumberEnd: 1051
    functionName: dinf_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void dinf_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:1059,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1063
      start: 1054
    functionDepth: 1
    functionLinenumber: 1054
    functionLinenumberEnd: 1063
    functionName: dinf_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 1
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dinf_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:1068,1
    - Dst: gf_bs_get_cookie
      Src: /src/gpac/src/isomedia/box_code_base.c:1074,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:1075,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:1077,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1080
      start: 1065
    functionDepth: 5
    functionLinenumber: 1065
    functionLinenumberEnd: 1080
    functionName: dinf_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_cookie
    - GF_LOG
    - gf_isom_box_array_read
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dinf_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:1084,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1086
      start: 1082
    functionDepth: 1
    functionLinenumber: 1082
    functionLinenumberEnd: 1086
    functionName: dinf_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *dinf_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:1092,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1093
      start: 1090
    functionDepth: 2
    functionLinenumber: 1090
    functionLinenumberEnd: 1093
    functionName: dinf_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dinf_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1098
      start: 1095
    functionDepth: 0
    functionLinenumber: 1095
    functionLinenumberEnd: 1098
    functionName: dinf_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dinf_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1106,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1107
      start: 1102
    functionDepth: 0
    functionLinenumber: 1102
    functionLinenumberEnd: 1107
    functionName: dref_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void dref_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:1113,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1114,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:1115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1116
      start: 1110
    functionDepth: 2
    functionLinenumber: 1110
    functionLinenumberEnd: 1116
    functionName: dref_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dref_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:1120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1122
      start: 1118
    functionDepth: 1
    functionLinenumber: 1118
    functionLinenumberEnd: 1122
    functionName: dref_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *dref_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:1134,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:1136,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1137,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1139
      start: 1127
    functionDepth: 3
    functionLinenumber: 1127
    functionLinenumberEnd: 1139
    functionName: dref_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dref_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1148
      start: 1141
    functionDepth: 0
    functionLinenumber: 1141
    functionLinenumberEnd: 1148
    functionName: dref_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dref_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1155
      start: 1152
    functionDepth: 0
    functionLinenumber: 1152
    functionLinenumberEnd: 1155
    functionName: edts_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void edts_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:1162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1168
      start: 1158
    functionDepth: 1
    functionLinenumber: 1158
    functionLinenumberEnd: 1168
    functionName: edts_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err edts_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:1173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1174
      start: 1171
    functionDepth: 2
    functionLinenumber: 1171
    functionLinenumberEnd: 1174
    functionName: edts_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err edts_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:1178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1180
      start: 1176
    functionDepth: 1
    functionLinenumber: 1176
    functionLinenumberEnd: 1180
    functionName: edts_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *edts_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:1189,1
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:1190,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1195
      start: 1184
    functionDepth: 2
    functionLinenumber: 1184
    functionLinenumberEnd: 1195
    functionName: edts_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err edts_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:1202,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1206
      start: 1197
    functionDepth: 1
    functionLinenumber: 1197
    functionLinenumberEnd: 1206
    functionName: edts_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err edts_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:1218,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:1220,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1221,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:1223,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1224,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1225
      start: 1210
    functionDepth: 1
    functionLinenumber: 1210
    functionLinenumberEnd: 1225
    functionName: elst_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void elst_box_del(GF_Box *s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:1234,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1235,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:1239,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:1244,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:1252,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:1255,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:1256,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:1257,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:1259,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1260,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1261,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:1264,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1265,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:1266,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 33
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1269
      start: 1227
    functionDepth: 1
    functionLinenumber: 1227
    functionLinenumberEnd: 1269
    functionName: elst_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_add
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u64
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err elst_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:1273,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:1274,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1276,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1280
      start: 1271
    functionDepth: 1
    functionLinenumber: 1271
    functionLinenumberEnd: 1280
    functionName: elst_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *elst_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:1292,1
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:1293,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1295,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:1297,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:1299,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:1300,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1302,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1303,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1305,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1308
      start: 1284
    functionDepth: 3
    functionLinenumber: 1284
    functionLinenumberEnd: 1308
    functionName: elst_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_full_box_write
    - gf_list_count
    - gf_bs_write_u64
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err elst_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:1318,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:1321,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1330
      start: 1310
    functionDepth: 1
    functionLinenumber: 1310
    functionLinenumberEnd: 1330
    functionName: elst_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err elst_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/box_code_base.c:1339,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1340,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1341
      start: 1335
    functionDepth: 1
    functionLinenumber: 1335
    functionLinenumberEnd: 1341
    functionName: esds_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_desc_del
    linkageType: ''
    returnType: void
    signature: void esds_box_del(GF_Box *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:1353,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:1356,1
    - Dst: gf_odf_desc_read
      Src: /src/gpac/src/isomedia/box_code_base.c:1358,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1360,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:1363,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/box_code_base.c:1364,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/isomedia/box_code_base.c:1375,1
    - Dst: gf_odf_slc_set_pref
      Src: /src/gpac/src/isomedia/box_code_base.c:1379,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1385
      start: 1344
    functionDepth: 1
    functionLinenumber: 1344
    functionLinenumberEnd: 1385
    functionName: esds_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_odf_desc_del
    - GF_LOG
    - gf_odf_desc_read
    - gf_odf_desc_new
    - gf_malloc
    - gf_odf_slc_set_pref
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err esds_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:1389,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1391
      start: 1387
    functionDepth: 1
    functionLinenumber: 1387
    functionLinenumberEnd: 1391
    functionName: esds_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *esds_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:1407,1
    - Dst: gf_odf_desc_write
      Src: /src/gpac/src/isomedia/box_code_base.c:1409,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:1411,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1413,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1415
      start: 1396
    functionDepth: 3
    functionLinenumber: 1396
    functionLinenumberEnd: 1415
    functionName: esds_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_odf_desc_write
    - gf_isom_full_box_write
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err esds_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_size
      Src: /src/gpac/src/isomedia/box_code_base.c:1426,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1429
      start: 1417
    functionDepth: 1
    functionLinenumber: 1417
    functionLinenumberEnd: 1429
    functionName: esds_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_size
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err esds_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1436,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1437,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1438
      start: 1433
    functionDepth: 0
    functionLinenumber: 1433
    functionLinenumberEnd: 1438
    functionName: free_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void free_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:1451,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:1453,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1457
      start: 1441
    functionDepth: 1
    functionLinenumber: 1441
    functionLinenumberEnd: 1457
    functionName: free_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err free_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:1461,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1463
      start: 1459
    functionDepth: 1
    functionLinenumber: 1459
    functionLinenumberEnd: 1463
    functionName: free_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *free_box_new()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:1474,1
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:1477,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:1482,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:1486,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1492
      start: 1467
    functionDepth: 2
    functionLinenumber: 1467
    functionLinenumberEnd: 1492
    functionName: free_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_isom_box_write_header
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err free_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1499
      start: 1494
    functionDepth: 0
    functionLinenumber: 1494
    functionLinenumberEnd: 1499
    functionName: free_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err free_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1506,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1507,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1508
      start: 1503
    functionDepth: 0
    functionLinenumber: 1503
    functionLinenumberEnd: 1508
    functionName: ftyp_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void ftyp_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:1512,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1514
      start: 1510
    functionDepth: 1
    functionLinenumber: 1510
    functionLinenumberEnd: 1514
    functionName: ftyp_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *ftyp_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:1521,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1522,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1523,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:1529,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1533,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1536
      start: 1516
    functionDepth: 1
    functionLinenumber: 1516
    functionLinenumberEnd: 1536
    functionName: ftyp_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ftyp_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:1548,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1550,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1551,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1553,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1556
      start: 1542
    functionDepth: 2
    functionLinenumber: 1542
    functionLinenumberEnd: 1556
    functionName: ftyp_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ftyp_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1564
      start: 1558
    functionDepth: 0
    functionLinenumber: 1558
    functionLinenumberEnd: 1564
    functionName: ftyp_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ftyp_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_predestroy
      Src: /src/gpac/src/isomedia/box_code_base.c:1573,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1574,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1575,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1576
      start: 1570
    functionDepth: 1
    functionLinenumber: 1570
    functionLinenumberEnd: 1576
    functionName: gnrm_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_sample_entry_predestroy
    linkageType: ''
    returnType: void
    signature: void gnrm_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:1580,1
    - Dst: gf_isom_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_base.c:1582,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1584
      start: 1578
    functionDepth: 1
    functionLinenumber: 1578
    functionLinenumberEnd: 1584
    functionName: gnrm_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_entry_init
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *gnrm_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_base_sample_entry_read
      Src: /src/gpac/src/isomedia/box_code_base.c:1589,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:1591,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:1594,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:1596,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1599
      start: 1586
    functionDepth: 2
    functionLinenumber: 1586
    functionLinenumberEnd: 1599
    functionName: gnrm_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_base_sample_entry_read
    - gf_bs_read_data
    - gf_malloc
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gnrm_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:1611,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:1614,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:1615,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:1616,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1618
      start: 1603
    functionDepth: 2
    functionLinenumber: 1603
    functionLinenumberEnd: 1618
    functionName: gnrm_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u16
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gnrm_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1626
      start: 1620
    functionDepth: 0
    functionLinenumber: 1620
    functionLinenumberEnd: 1626
    functionName: gnrm_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gnrm_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_predestroy
      Src: /src/gpac/src/isomedia/box_code_base.c:1634,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1635,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1636,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1637
      start: 1631
    functionDepth: 1
    functionLinenumber: 1631
    functionLinenumberEnd: 1637
    functionName: gnrv_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_sample_entry_predestroy
    linkageType: ''
    returnType: void
    signature: void gnrv_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:1641,1
    - Dst: gf_isom_video_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_base.c:1642,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1644
      start: 1639
    functionDepth: 2
    functionLinenumber: 1639
    functionLinenumberEnd: 1644
    functionName: gnrv_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_video_sample_entry_init
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *gnrv_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_video_sample_entry_read
      Src: /src/gpac/src/isomedia/box_code_base.c:1649,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:1653,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:1655,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1658
      start: 1646
    functionDepth: 3
    functionLinenumber: 1646
    functionLinenumberEnd: 1658
    functionName: gnrv_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_data
    - gf_isom_video_sample_entry_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gnrv_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:1671,1
    - Dst: gf_isom_video_sample_entry_write
      Src: /src/gpac/src/isomedia/box_code_base.c:1675,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:1676,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1678
      start: 1663
    functionDepth: 3
    functionLinenumber: 1663
    functionLinenumberEnd: 1678
    functionName: gnrv_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_isom_box_write_header
    - gf_isom_video_sample_entry_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gnrv_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_video_sample_entry_size
      Src: /src/gpac/src/isomedia/box_code_base.c:1684,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1687
      start: 1680
    functionDepth: 1
    functionLinenumber: 1680
    functionLinenumberEnd: 1687
    functionName: gnrv_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_video_sample_entry_size
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gnrv_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_predestroy
      Src: /src/gpac/src/isomedia/box_code_base.c:1696,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1697,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1698,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1699
      start: 1693
    functionDepth: 1
    functionLinenumber: 1693
    functionLinenumberEnd: 1699
    functionName: gnra_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_sample_entry_predestroy
    linkageType: ''
    returnType: void
    signature: void gnra_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:1703,1
    - Dst: gf_isom_audio_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_base.c:1704,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1706
      start: 1701
    functionDepth: 2
    functionLinenumber: 1701
    functionLinenumberEnd: 1706
    functionName: gnra_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_audio_sample_entry_init
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *gnra_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_audio_sample_entry_read
      Src: /src/gpac/src/isomedia/box_code_base.c:1711,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:1715,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:1717,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1720
      start: 1708
    functionDepth: 3
    functionLinenumber: 1708
    functionLinenumberEnd: 1720
    functionName: gnra_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_isom_audio_sample_entry_read
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gnra_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:1732,1
    - Dst: gf_isom_audio_sample_entry_write
      Src: /src/gpac/src/isomedia/box_code_base.c:1736,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:1738,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1741
      start: 1724
    functionDepth: 2
    functionLinenumber: 1724
    functionLinenumberEnd: 1741
    functionName: gnra_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_isom_audio_sample_entry_write
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gnra_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_audio_sample_entry_size
      Src: /src/gpac/src/isomedia/box_code_base.c:1747,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1750
      start: 1743
    functionDepth: 1
    functionLinenumber: 1743
    functionLinenumberEnd: 1750
    functionName: gnra_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_audio_sample_entry_size
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gnra_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1758,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1759,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1760
      start: 1754
    functionDepth: 0
    functionLinenumber: 1754
    functionLinenumberEnd: 1760
    functionName: hdlr_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void hdlr_box_del(GF_Box *s)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:1768,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1769,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1770,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:1771,1
    - Dst: gf_bs_get_cookie
      Src: /src/gpac/src/isomedia/box_code_base.c:1773,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/box_code_base.c:1778,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:1783,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:1786,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:1788,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/box_code_base.c:1796,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1802
      start: 1763
    functionDepth: 1
    functionLinenumber: 1763
    functionLinenumberEnd: 1802
    functionName: hdlr_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - memmove
    - GF_LOG
    - gf_bs_get_cookie
    - ISOM_DECREASE_SIZE
    - gf_bs_set_cookie
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hdlr_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:1806,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1808
      start: 1804
    functionDepth: 1
    functionLinenumber: 1804
    functionLinenumberEnd: 1808
    functionName: hdlr_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *hdlr_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:1817,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1819,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1820,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:1821,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:1824,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:1826,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:1827,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:1829,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:1830,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:1833,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1836
      start: 1813
    functionDepth: 3
    functionLinenumber: 1813
    functionLinenumberEnd: 1836
    functionName: hdlr_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_data
    - gf_bs_write_u8
    - gf_bs_write_u32
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hdlr_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:1843,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1846
      start: 1838
    functionDepth: 0
    functionLinenumber: 1838
    functionLinenumberEnd: 1846
    functionName: hdlr_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hdlr_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1854,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1855
      start: 1851
    functionDepth: 0
    functionLinenumber: 1851
    functionLinenumberEnd: 1855
    functionName: hinf_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void hinf_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:1859,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:1861,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1863
      start: 1857
    functionDepth: 1
    functionLinenumber: 1857
    functionLinenumberEnd: 1863
    functionName: hinf_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *hinf_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_code_base.c:1874,1
    - Dst: ERROR_ON_DUPLICATED_BOX
      Src: /src/gpac/src/isomedia/box_code_base.c:1876,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 3
    argNames:
    - s
    - _a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1882
      start: 1865
    functionDepth: 1
    functionLinenumber: 1865
    functionLinenumberEnd: 1882
    functionName: hinf_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ERROR_ON_DUPLICATED_BOX
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hinf_on_child_box(GF_Box *s, GF_Box *_a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:1887,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1888
      start: 1885
    functionDepth: 2
    functionLinenumber: 1885
    functionLinenumberEnd: 1888
    functionName: hinf_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hinf_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:1896,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1897
      start: 1892
    functionDepth: 2
    functionLinenumber: 1892
    functionLinenumberEnd: 1897
    functionName: hinf_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hinf_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1902
      start: 1899
    functionDepth: 0
    functionLinenumber: 1899
    functionLinenumberEnd: 1902
    functionName: hinf_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hinf_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1909,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1910
      start: 1905
    functionDepth: 0
    functionLinenumber: 1905
    functionLinenumberEnd: 1910
    functionName: hmhd_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void hmhd_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:1917,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:1918,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:1919,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1920,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1921,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1922,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1924
      start: 1913
    functionDepth: 1
    functionLinenumber: 1913
    functionLinenumberEnd: 1924
    functionName: hmhd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hmhd_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:1928,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1930
      start: 1926
    functionDepth: 1
    functionLinenumber: 1926
    functionLinenumberEnd: 1930
    functionName: hmhd_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *hmhd_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:1940,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:1942,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:1943,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1944,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1945,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:1946,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1948
      start: 1935
    functionDepth: 3
    functionLinenumber: 1935
    functionLinenumberEnd: 1948
    functionName: hmhd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_full_box_write
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hmhd_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1955
      start: 1950
    functionDepth: 0
    functionLinenumber: 1950
    functionLinenumberEnd: 1955
    functionName: hmhd_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hmhd_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:1961,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1963
      start: 1959
    functionDepth: 1
    functionLinenumber: 1959
    functionLinenumberEnd: 1963
    functionName: hnti_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *hnti_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:1967,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1968
      start: 1965
    functionDepth: 0
    functionLinenumber: 1965
    functionLinenumberEnd: 1968
    functionName: hnti_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void hnti_box_del(GF_Box *a)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:1979,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1985
      start: 1970
    functionDepth: 1
    functionLinenumber: 1970
    functionLinenumberEnd: 1985
    functionName: hnti_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hnti_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:1989,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1990
      start: 1987
    functionDepth: 2
    functionLinenumber: 1987
    functionLinenumberEnd: 1990
    functionName: hnti_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hnti_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:1995,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1996
      start: 1993
    functionDepth: 2
    functionLinenumber: 1993
    functionLinenumberEnd: 1996
    functionName: hnti_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hnti_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2002
      start: 1999
    functionDepth: 0
    functionLinenumber: 1999
    functionLinenumberEnd: 2002
    functionName: hnti_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hnti_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2012,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2013,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2015
      start: 2009
    functionDepth: 0
    functionLinenumber: 2009
    functionLinenumberEnd: 2015
    functionName: sdp_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void sdp_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:2025,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:2030,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:2033,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2036
      start: 2016
    functionDepth: 1
    functionLinenumber: 2016
    functionLinenumberEnd: 2036
    functionName: sdp_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - GF_LOG
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sdp_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2039,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2041
      start: 2037
    functionDepth: 1
    functionLinenumber: 2037
    functionLinenumberEnd: 2041
    functionName: sdp_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *sdp_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:2048,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:2052,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:2052,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2054
      start: 2043
    functionDepth: 2
    functionLinenumber: 2043
    functionLinenumberEnd: 2054
    functionName: sdp_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_isom_box_write_header
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sdp_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:2060,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2062
      start: 2055
    functionDepth: 0
    functionLinenumber: 2055
    functionLinenumberEnd: 2062
    functionName: sdp_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sdp_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2072,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2073,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2075
      start: 2069
    functionDepth: 0
    functionLinenumber: 2069
    functionLinenumberEnd: 2075
    functionName: rtp_hnti_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void rtp_hnti_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:2082,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2083,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:2088,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:2093,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:2096,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2099
      start: 2076
    functionDepth: 1
    functionLinenumber: 2076
    functionLinenumberEnd: 2099
    functionName: rtp_hnti_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtp_hnti_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2106
      start: 2101
    functionDepth: 1
    functionLinenumber: 2101
    functionLinenumberEnd: 2106
    functionName: rtp_hnti_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *rtp_hnti_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:2113,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2115,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:2117,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:2117,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2119
      start: 2108
    functionDepth: 2
    functionLinenumber: 2108
    functionLinenumberEnd: 2119
    functionName: rtp_hnti_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_isom_box_write_header
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtp_hnti_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:2124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2126
      start: 2121
    functionDepth: 0
    functionLinenumber: 2121
    functionLinenumberEnd: 2126
    functionName: rtp_hnti_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtp_hnti_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2138
      start: 2135
    functionDepth: 0
    functionLinenumber: 2135
    functionLinenumberEnd: 2138
    functionName: trpy_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void trpy_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:2142,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:2143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2145
      start: 2139
    functionDepth: 1
    functionLinenumber: 2139
    functionLinenumberEnd: 2145
    functionName: trpy_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u64
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trpy_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2150
      start: 2146
    functionDepth: 1
    functionLinenumber: 2146
    functionLinenumberEnd: 2150
    functionName: trpy_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *trpy_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:2159,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:2161,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2163
      start: 2153
    functionDepth: 2
    functionLinenumber: 2153
    functionLinenumberEnd: 2163
    functionName: trpy_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u64
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trpy_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2168
      start: 2164
    functionDepth: 0
    functionLinenumber: 2164
    functionLinenumberEnd: 2168
    functionName: trpy_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trpy_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2178
      start: 2175
    functionDepth: 0
    functionLinenumber: 2175
    functionLinenumberEnd: 2178
    functionName: totl_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void totl_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:2182,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2185
      start: 2179
    functionDepth: 1
    functionLinenumber: 2179
    functionLinenumberEnd: 2185
    functionName: totl_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err totl_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2190
      start: 2186
    functionDepth: 1
    functionLinenumber: 2186
    functionLinenumberEnd: 2190
    functionName: totl_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *totl_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:2199,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2201,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2203
      start: 2194
    functionDepth: 2
    functionLinenumber: 2194
    functionLinenumberEnd: 2203
    functionName: totl_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err totl_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2208
      start: 2204
    functionDepth: 0
    functionLinenumber: 2204
    functionLinenumberEnd: 2208
    functionName: totl_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err totl_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2219
      start: 2216
    functionDepth: 0
    functionLinenumber: 2216
    functionLinenumberEnd: 2219
    functionName: nump_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void nump_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:2223,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:2224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2226
      start: 2220
    functionDepth: 1
    functionLinenumber: 2220
    functionLinenumberEnd: 2226
    functionName: nump_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u64
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nump_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2231
      start: 2227
    functionDepth: 1
    functionLinenumber: 2227
    functionLinenumberEnd: 2231
    functionName: nump_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *nump_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:2239,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:2241,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2243
      start: 2234
    functionDepth: 2
    functionLinenumber: 2234
    functionLinenumberEnd: 2243
    functionName: nump_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u64
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nump_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2248
      start: 2244
    functionDepth: 0
    functionLinenumber: 2244
    functionLinenumberEnd: 2248
    functionName: nump_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nump_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2259
      start: 2256
    functionDepth: 0
    functionLinenumber: 2256
    functionLinenumberEnd: 2259
    functionName: npck_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void npck_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:2263,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2264,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2266
      start: 2260
    functionDepth: 1
    functionLinenumber: 2260
    functionLinenumberEnd: 2266
    functionName: npck_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err npck_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2271
      start: 2267
    functionDepth: 1
    functionLinenumber: 2267
    functionLinenumberEnd: 2271
    functionName: npck_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *npck_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:2278,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2280,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2282
      start: 2273
    functionDepth: 2
    functionLinenumber: 2273
    functionLinenumberEnd: 2282
    functionName: npck_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err npck_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2287
      start: 2283
    functionDepth: 0
    functionLinenumber: 2283
    functionLinenumberEnd: 2287
    functionName: npck_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err npck_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2298
      start: 2295
    functionDepth: 0
    functionLinenumber: 2295
    functionLinenumberEnd: 2298
    functionName: tpyl_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void tpyl_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:2303,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:2304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2306
      start: 2299
    functionDepth: 1
    functionLinenumber: 2299
    functionLinenumberEnd: 2306
    functionName: tpyl_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u64
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tpyl_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2309,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2311
      start: 2307
    functionDepth: 1
    functionLinenumber: 2307
    functionLinenumberEnd: 2311
    functionName: tpyl_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tpyl_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:2318,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:2320,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2322
      start: 2313
    functionDepth: 2
    functionLinenumber: 2313
    functionLinenumberEnd: 2322
    functionName: tpyl_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u64
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tpyl_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2327
      start: 2323
    functionDepth: 0
    functionLinenumber: 2323
    functionLinenumberEnd: 2327
    functionName: tpyl_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tpyl_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2336,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2337
      start: 2334
    functionDepth: 0
    functionLinenumber: 2334
    functionLinenumberEnd: 2337
    functionName: tpay_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void tpay_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:2341,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2342,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2344
      start: 2338
    functionDepth: 1
    functionLinenumber: 2338
    functionLinenumberEnd: 2344
    functionName: tpay_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tpay_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2347,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2349
      start: 2345
    functionDepth: 1
    functionLinenumber: 2345
    functionLinenumberEnd: 2349
    functionName: tpay_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tpay_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:2356,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2358,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2360
      start: 2351
    functionDepth: 2
    functionLinenumber: 2351
    functionLinenumberEnd: 2360
    functionName: tpay_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tpay_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2365
      start: 2361
    functionDepth: 0
    functionLinenumber: 2361
    functionLinenumberEnd: 2365
    functionName: tpay_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tpay_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2375,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2376
      start: 2373
    functionDepth: 0
    functionLinenumber: 2373
    functionLinenumberEnd: 2376
    functionName: maxr_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void maxr_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:2381,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2382,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2383,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2385
      start: 2377
    functionDepth: 1
    functionLinenumber: 2377
    functionLinenumberEnd: 2385
    functionName: maxr_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err maxr_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2388,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2390
      start: 2386
    functionDepth: 1
    functionLinenumber: 2386
    functionLinenumberEnd: 2390
    functionName: maxr_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *maxr_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:2397,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2399,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2400,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2402
      start: 2392
    functionDepth: 2
    functionLinenumber: 2392
    functionLinenumberEnd: 2402
    functionName: maxr_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err maxr_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2407
      start: 2403
    functionDepth: 0
    functionLinenumber: 2403
    functionLinenumberEnd: 2407
    functionName: maxr_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err maxr_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2417,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2418
      start: 2415
    functionDepth: 0
    functionLinenumber: 2415
    functionLinenumberEnd: 2418
    functionName: dmed_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void dmed_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:2422,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:2423,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2425
      start: 2419
    functionDepth: 1
    functionLinenumber: 2419
    functionLinenumberEnd: 2425
    functionName: dmed_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u64
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dmed_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2430
      start: 2426
    functionDepth: 1
    functionLinenumber: 2426
    functionLinenumberEnd: 2430
    functionName: dmed_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *dmed_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:2437,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:2439,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2441
      start: 2432
    functionDepth: 2
    functionLinenumber: 2432
    functionLinenumberEnd: 2441
    functionName: dmed_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u64
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dmed_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2446
      start: 2442
    functionDepth: 0
    functionLinenumber: 2442
    functionLinenumberEnd: 2446
    functionName: dmed_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dmed_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2455,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2456
      start: 2453
    functionDepth: 0
    functionLinenumber: 2453
    functionLinenumberEnd: 2456
    functionName: dimm_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void dimm_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:2460,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:2461,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2463
      start: 2457
    functionDepth: 1
    functionLinenumber: 2457
    functionLinenumberEnd: 2463
    functionName: dimm_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u64
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dimm_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2466,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2468
      start: 2464
    functionDepth: 1
    functionLinenumber: 2464
    functionLinenumberEnd: 2468
    functionName: dimm_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *dimm_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:2475,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:2477,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2479
      start: 2470
    functionDepth: 2
    functionLinenumber: 2470
    functionLinenumberEnd: 2479
    functionName: dimm_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u64
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dimm_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2484
      start: 2480
    functionDepth: 0
    functionLinenumber: 2480
    functionLinenumberEnd: 2484
    functionName: dimm_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dimm_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2493,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2494
      start: 2491
    functionDepth: 0
    functionLinenumber: 2491
    functionLinenumberEnd: 2494
    functionName: drep_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void drep_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:2498,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:2499,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2501
      start: 2495
    functionDepth: 1
    functionLinenumber: 2495
    functionLinenumberEnd: 2501
    functionName: drep_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u64
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err drep_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2504,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2506
      start: 2502
    functionDepth: 1
    functionLinenumber: 2502
    functionLinenumberEnd: 2506
    functionName: drep_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *drep_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:2513,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:2515,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2517
      start: 2508
    functionDepth: 2
    functionLinenumber: 2508
    functionLinenumberEnd: 2517
    functionName: drep_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u64
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err drep_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2522
      start: 2518
    functionDepth: 0
    functionLinenumber: 2518
    functionLinenumberEnd: 2522
    functionName: drep_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err drep_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2533,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2534
      start: 2531
    functionDepth: 0
    functionLinenumber: 2531
    functionLinenumberEnd: 2534
    functionName: tmin_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void tmin_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:2538,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2539,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2541
      start: 2535
    functionDepth: 1
    functionLinenumber: 2535
    functionLinenumberEnd: 2541
    functionName: tmin_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tmin_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2544,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2546
      start: 2542
    functionDepth: 1
    functionLinenumber: 2542
    functionLinenumberEnd: 2546
    functionName: tmin_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tmin_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:2553,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2555,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2557
      start: 2548
    functionDepth: 2
    functionLinenumber: 2548
    functionLinenumberEnd: 2557
    functionName: tmin_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tmin_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2562
      start: 2558
    functionDepth: 0
    functionLinenumber: 2558
    functionLinenumberEnd: 2562
    functionName: tmin_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tmin_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2572,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2573
      start: 2570
    functionDepth: 0
    functionLinenumber: 2570
    functionLinenumberEnd: 2573
    functionName: tmax_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void tmax_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:2577,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2578,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2580
      start: 2574
    functionDepth: 1
    functionLinenumber: 2574
    functionLinenumberEnd: 2580
    functionName: tmax_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tmax_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2583,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2585
      start: 2581
    functionDepth: 1
    functionLinenumber: 2581
    functionLinenumberEnd: 2585
    functionName: tmax_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tmax_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:2592,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2594,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2596
      start: 2587
    functionDepth: 2
    functionLinenumber: 2587
    functionLinenumberEnd: 2596
    functionName: tmax_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tmax_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2601
      start: 2597
    functionDepth: 0
    functionLinenumber: 2597
    functionLinenumberEnd: 2601
    functionName: tmax_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tmax_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2611,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2612
      start: 2609
    functionDepth: 0
    functionLinenumber: 2609
    functionLinenumberEnd: 2612
    functionName: pmax_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void pmax_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:2616,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2617,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2619
      start: 2613
    functionDepth: 1
    functionLinenumber: 2613
    functionLinenumberEnd: 2619
    functionName: pmax_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pmax_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2622,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2624
      start: 2620
    functionDepth: 1
    functionLinenumber: 2620
    functionLinenumberEnd: 2624
    functionName: pmax_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *pmax_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:2631,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2633,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2635
      start: 2626
    functionDepth: 2
    functionLinenumber: 2626
    functionLinenumberEnd: 2635
    functionName: pmax_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pmax_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2640
      start: 2636
    functionDepth: 0
    functionLinenumber: 2636
    functionLinenumberEnd: 2640
    functionName: pmax_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pmax_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2650,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2651
      start: 2648
    functionDepth: 0
    functionLinenumber: 2648
    functionLinenumberEnd: 2651
    functionName: dmax_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void dmax_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:2655,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2656,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2658
      start: 2652
    functionDepth: 1
    functionLinenumber: 2652
    functionLinenumberEnd: 2658
    functionName: dmax_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dmax_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2661,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2663
      start: 2659
    functionDepth: 1
    functionLinenumber: 2659
    functionLinenumberEnd: 2663
    functionName: dmax_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *dmax_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:2670,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2672,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2674
      start: 2665
    functionDepth: 2
    functionLinenumber: 2665
    functionLinenumberEnd: 2674
    functionName: dmax_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dmax_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2679
      start: 2675
    functionDepth: 0
    functionLinenumber: 2675
    functionLinenumberEnd: 2679
    functionName: dmax_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dmax_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2690,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2691,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2692
      start: 2687
    functionDepth: 0
    functionLinenumber: 2687
    functionLinenumberEnd: 2692
    functionName: payt_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void payt_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:2698,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2699,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:2700,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:2701,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:2702,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:2704,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2708
      start: 2693
    functionDepth: 1
    functionLinenumber: 2693
    functionLinenumberEnd: 2708
    functionName: payt_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err payt_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2711,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2713
      start: 2709
    functionDepth: 1
    functionLinenumber: 2709
    functionLinenumberEnd: 2713
    functionName: payt_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *payt_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:2721,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2723,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:2724,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:2725,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:2726,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2728
      start: 2715
    functionDepth: 2
    functionLinenumber: 2715
    functionLinenumberEnd: 2728
    functionName: payt_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_data
    - gf_bs_write_u8
    - gf_bs_write_u32
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err payt_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:2733,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2735
      start: 2729
    functionDepth: 0
    functionLinenumber: 2729
    functionLinenumberEnd: 2735
    functionName: payt_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err payt_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2746,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2747,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2748
      start: 2743
    functionDepth: 0
    functionLinenumber: 2743
    functionLinenumberEnd: 2748
    functionName: name_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void name_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:2757,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:2761,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:2764,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2767
      start: 2749
    functionDepth: 1
    functionLinenumber: 2749
    functionLinenumberEnd: 2767
    functionName: name_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - GF_LOG
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err name_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2770,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2772
      start: 2768
    functionDepth: 1
    functionLinenumber: 2768
    functionLinenumberEnd: 2772
    functionName: name_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *name_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:2779,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:2782,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:2782,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2785
      start: 2774
    functionDepth: 2
    functionLinenumber: 2774
    functionLinenumberEnd: 2785
    functionName: name_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_isom_box_write_header
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err name_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:2789,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2791
      start: 2786
    functionDepth: 0
    functionLinenumber: 2786
    functionLinenumberEnd: 2791
    functionName: name_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err name_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2797,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2798
      start: 2795
    functionDepth: 0
    functionLinenumber: 2795
    functionLinenumberEnd: 2798
    functionName: tssy_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void tssy_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:2802,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:2803,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:2804,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2806
      start: 2799
    functionDepth: 1
    functionLinenumber: 2799
    functionLinenumberEnd: 2806
    functionName: tssy_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tssy_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2809,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2811
      start: 2807
    functionDepth: 1
    functionLinenumber: 2807
    functionLinenumberEnd: 2811
    functionName: tssy_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tssy_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:2818,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:2820,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:2821,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2823
      start: 2813
    functionDepth: 2
    functionLinenumber: 2813
    functionLinenumberEnd: 2823
    functionName: tssy_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tssy_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2828
      start: 2824
    functionDepth: 0
    functionLinenumber: 2824
    functionLinenumberEnd: 2828
    functionName: tssy_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tssy_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2834,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2835
      start: 2832
    functionDepth: 0
    functionLinenumber: 2832
    functionLinenumberEnd: 2835
    functionName: srpp_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void srpp_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:2842,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:2845,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2849
      start: 2837
    functionDepth: 1
    functionLinenumber: 2837
    functionLinenumberEnd: 2849
    functionName: srpp_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err srpp_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:2855,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2856,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2857,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2858,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2859,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:2860,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2861
      start: 2851
    functionDepth: 2
    functionLinenumber: 2851
    functionLinenumberEnd: 2861
    functionName: srpp_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err srpp_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2864,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2866
      start: 2862
    functionDepth: 1
    functionLinenumber: 2862
    functionLinenumberEnd: 2866
    functionName: srpp_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *srpp_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:2873,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2876,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2877,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2878,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2879,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2882
      start: 2868
    functionDepth: 3
    functionLinenumber: 2868
    functionLinenumberEnd: 2882
    functionName: srpp_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err srpp_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:2888,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:2889,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2891
      start: 2883
    functionDepth: 2
    functionLinenumber: 2883
    functionLinenumberEnd: 2891
    functionName: srpp_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err srpp_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2898,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2899
      start: 2896
    functionDepth: 0
    functionLinenumber: 2896
    functionLinenumberEnd: 2899
    functionName: rssr_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void rssr_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:2903,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2904,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2906
      start: 2900
    functionDepth: 1
    functionLinenumber: 2900
    functionLinenumberEnd: 2906
    functionName: rssr_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rssr_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2909,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2911
      start: 2907
    functionDepth: 1
    functionLinenumber: 2907
    functionLinenumberEnd: 2911
    functionName: rssr_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *rssr_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:2917,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:2919,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2921
      start: 2913
    functionDepth: 2
    functionLinenumber: 2913
    functionLinenumberEnd: 2921
    functionName: rssr_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rssr_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2926
      start: 2922
    functionDepth: 0
    functionLinenumber: 2922
    functionLinenumberEnd: 2926
    functionName: rssr_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rssr_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/box_code_base.c:2936,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2937,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2938
      start: 2932
    functionDepth: 1
    functionLinenumber: 2932
    functionLinenumberEnd: 2938
    functionName: iods_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_desc_del
    linkageType: ''
    returnType: void
    signature: void iods_box_del(GF_Box *s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:2950,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:2953,1
    - Dst: gf_odf_desc_read
      Src: /src/gpac/src/isomedia/box_code_base.c:2954,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2956,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:2964,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2968
      start: 2941
    functionDepth: 1
    functionLinenumber: 2941
    functionLinenumberEnd: 2968
    functionName: iods_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - GF_LOG
    - gf_odf_desc_read
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iods_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:2972,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2974
      start: 2970
    functionDepth: 1
    functionLinenumber: 2970
    functionLinenumberEnd: 2974
    functionName: iods_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *iods_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:2986,1
    - Dst: gf_odf_desc_write
      Src: /src/gpac/src/isomedia/box_code_base.c:2989,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:2991,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:2993,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2995
      start: 2980
    functionDepth: 3
    functionLinenumber: 2980
    functionLinenumberEnd: 2995
    functionName: iods_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_odf_desc_write
    - gf_isom_full_box_write
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iods_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_size
      Src: /src/gpac/src/isomedia/box_code_base.c:3001,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3003
      start: 2997
    functionDepth: 1
    functionLinenumber: 2997
    functionLinenumberEnd: 3003
    functionName: iods_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_size
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iods_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3012,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3013,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3014
      start: 3007
    functionDepth: 0
    functionLinenumber: 3007
    functionLinenumberEnd: 3014
    functionName: mdat_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void mdat_box_del(GF_Box *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:3024,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3025,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:3029,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:3033,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:3035,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_base.c:3041,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3043
      start: 3017
    functionDepth: 1
    functionLinenumber: 3017
    functionLinenumberEnd: 3043
    functionName: mdat_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - gf_bs_get_position
    - ISOM_DECREASE_SIZE
    - gf_malloc
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdat_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:3047,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3049
      start: 3045
    functionDepth: 1
    functionLinenumber: 3045
    functionLinenumberEnd: 3049
    functionName: mdat_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *mdat_box_new()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:3059,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3062,1
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:3064,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:3071,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3074
      start: 3053
    functionDepth: 2
    functionLinenumber: 3053
    functionLinenumberEnd: 3074
    functionName: mdat_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdat_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3083
      start: 3076
    functionDepth: 0
    functionLinenumber: 3076
    functionLinenumberEnd: 3083
    functionName: mdat_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdat_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3091,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3092
      start: 3087
    functionDepth: 0
    functionLinenumber: 3087
    functionLinenumberEnd: 3092
    functionName: mdhd_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void mdhd_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:3213,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - lang
    - code
    argTypes:
    - char[]
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3223
      start: 3211
    functionDepth: 1
    functionLinenumber: 3211
    functionLinenumberEnd: 3223
    functionName: set_quicktime_lang
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err set_quicktime_lang(char lang[4], u8 code)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:3230,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:3231,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:3232,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3233,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:3234,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:3236,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3237,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3238,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3239,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3240,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:3243,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:3249,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3251,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3253,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3254,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3255,1
    - Dst: set_quicktime_lang
      Src: /src/gpac/src/isomedia/box_code_base.c:3261,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:3272,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 37
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3274
      start: 3225
    functionDepth: 2
    functionLinenumber: 3225
    functionLinenumberEnd: 3274
    functionName: mdhd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_bs_read_u64
    - set_quicktime_lang
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdhd_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:3278,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3284
      start: 3276
    functionDepth: 1
    functionLinenumber: 3276
    functionLinenumberEnd: 3284
    functionName: mdhd_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *mdhd_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:3293,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:3296,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:3297,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3298,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:3299,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3301,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3302,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3303,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3304,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3307,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3308,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3309,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3310,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:3311,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3313
      start: 3289
    functionDepth: 3
    functionLinenumber: 3289
    functionLinenumberEnd: 3313
    functionName: mdhd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u16
    - gf_bs_write_int
    - gf_bs_write_u64
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdhd_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3327
      start: 3315
    functionDepth: 0
    functionLinenumber: 3315
    functionLinenumberEnd: 3327
    functionName: mdhd_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdhd_box_size(GF_Box *s)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3336,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3337,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3338,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3339,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3340,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3341,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3342,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3344,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3347,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3348
      start: 3332
    functionDepth: 1
    functionLinenumber: 3332
    functionLinenumberEnd: 3348
    functionName: mdia_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_sample_del
    - gf_isom_datamap_del
    - gf_bs_del
    linkageType: ''
    returnType: void
    signature: void mdia_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3356,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3360,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3364,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3368
      start: 3351
    functionDepth: 1
    functionLinenumber: 3351
    functionLinenumberEnd: 3368
    functionName: mdia_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 1
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdia_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_cookie
      Src: /src/gpac/src/isomedia/box_code_base.c:3374,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/box_code_base.c:3376,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:3377,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/box_code_base.c:3378,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:3382,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:3386,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:3390,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3394
      start: 3371
    functionDepth: 2
    functionLinenumber: 3371
    functionLinenumberEnd: 3394
    functionName: mdia_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_cookie
    - GF_LOG
    - gf_isom_box_array_read
    - gf_bs_set_cookie
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdia_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:3398,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3400
      start: 3396
    functionDepth: 1
    functionLinenumber: 3396
    functionLinenumberEnd: 3400
    functionName: mdia_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *mdia_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:3406,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3407
      start: 3404
    functionDepth: 2
    functionLinenumber: 3404
    functionLinenumberEnd: 3407
    functionName: mdia_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdia_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:3414,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:3416,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:3420,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:3422,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:3426,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3428
      start: 3409
    functionDepth: 2
    functionLinenumber: 3409
    functionLinenumberEnd: 3428
    functionName: mdia_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_find_child
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mdia_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3436,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3437,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3438
      start: 3432
    functionDepth: 1
    functionLinenumber: 3432
    functionLinenumberEnd: 3438
    functionName: mfra_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void mfra_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:3442,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:3443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3445
      start: 3440
    functionDepth: 1
    functionLinenumber: 3440
    functionLinenumberEnd: 3445
    functionName: mfra_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *mfra_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3452,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3455,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3459
      start: 3447
    functionDepth: 1
    functionLinenumber: 3447
    functionLinenumberEnd: 3459
    functionName: mfra_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    - BOX_FIELD_LIST_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mfra_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:3463,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3464
      start: 3461
    functionDepth: 2
    functionLinenumber: 3461
    functionLinenumberEnd: 3464
    functionName: mfra_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mfra_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:3470,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3471
      start: 3468
    functionDepth: 2
    functionLinenumber: 3468
    functionLinenumberEnd: 3471
    functionName: mfra_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mfra_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:3477,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:3478,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3480
      start: 3473
    functionDepth: 3
    functionLinenumber: 3473
    functionLinenumberEnd: 3480
    functionName: mfra_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position_list
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mfra_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3489,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3490,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3491
      start: 3485
    functionDepth: 0
    functionLinenumber: 3485
    functionLinenumberEnd: 3491
    functionName: tfra_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void tfra_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:3495,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3497
      start: 3493
    functionDepth: 1
    functionLinenumber: 3493
    functionLinenumberEnd: 3497
    functionName: tfra_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tfra_box_new()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:3505,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3507,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3508,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3511,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3512,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3513,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3515,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:3519,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:3524,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:3531,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:3534,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:3541,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:3544,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:3545,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3547,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3548,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3550,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3551,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3552,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 45
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3558
      start: 3499
    functionDepth: 1
    functionLinenumber: 3499
    functionLinenumberEnd: 3558
    functionName: tfra_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_LOG
    - memset
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u64
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tfra_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:3569,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3572,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3573,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3575,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3576,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3577,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3586,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:3593,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:3594,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3596,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3597,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3599,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3600,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3601,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3604
      start: 3563
    functionDepth: 3
    functionLinenumber: 3563
    functionLinenumberEnd: 3604
    functionName: tfra_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_isom_full_box_write
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tfra_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3619
      start: 3606
    functionDepth: 0
    functionLinenumber: 3606
    functionLinenumberEnd: 3619
    functionName: tfra_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tfra_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3629,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3630
      start: 3625
    functionDepth: 0
    functionLinenumber: 3625
    functionLinenumberEnd: 3630
    functionName: mfro_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void mfro_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:3634,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3636
      start: 3632
    functionDepth: 1
    functionLinenumber: 3632
    functionLinenumberEnd: 3636
    functionName: mfro_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *mfro_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:3642,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3643,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3645
      start: 3638
    functionDepth: 1
    functionLinenumber: 3638
    functionLinenumberEnd: 3645
    functionName: mfro_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mfro_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:3655,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3658,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3660
      start: 3650
    functionDepth: 3
    functionLinenumber: 3650
    functionLinenumberEnd: 3660
    functionName: mfro_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mfro_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3666
      start: 3662
    functionDepth: 0
    functionLinenumber: 3662
    functionLinenumberEnd: 3666
    functionName: mfro_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mfro_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3675,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3676,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3677
      start: 3671
    functionDepth: 0
    functionLinenumber: 3671
    functionLinenumberEnd: 3677
    functionName: elng_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void elng_box_del(GF_Box *s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:3687,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:3689,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:3692,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_code_base.c:3694,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3696,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3701
      start: 3679
    functionDepth: 1
    functionLinenumber: 3679
    functionLinenumberEnd: 3701
    functionName: elng_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - memcpy
    - gf_malloc
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err elng_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:3705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3707
      start: 3703
    functionDepth: 1
    functionLinenumber: 3703
    functionLinenumberEnd: 3707
    functionName: elng_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *elng_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:3715,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:3718,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:3718,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3721
      start: 3711
    functionDepth: 3
    functionLinenumber: 3711
    functionLinenumberEnd: 3721
    functionName: elng_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - strlen
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err elng_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:3728,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3731
      start: 3723
    functionDepth: 0
    functionLinenumber: 3723
    functionLinenumberEnd: 3731
    functionName: elng_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err elng_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3741,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3742
      start: 3737
    functionDepth: 0
    functionLinenumber: 3737
    functionLinenumberEnd: 3742
    functionName: mfhd_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void mfhd_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:3747,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3748,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3750
      start: 3744
    functionDepth: 1
    functionLinenumber: 3744
    functionLinenumberEnd: 3750
    functionName: mfhd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mfhd_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:3754,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3756
      start: 3752
    functionDepth: 1
    functionLinenumber: 3752
    functionLinenumberEnd: 3756
    functionName: mfhd_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *mfhd_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:3768,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3770,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3772
      start: 3762
    functionDepth: 3
    functionLinenumber: 3762
    functionLinenumberEnd: 3772
    functionName: mfhd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mfhd_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3778
      start: 3774
    functionDepth: 0
    functionLinenumber: 3774
    functionLinenumberEnd: 3778
    functionName: mfhd_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mfhd_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_datamap_close
      Src: /src/gpac/src/isomedia/box_code_base.c:3794,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3796,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3797
      start: 3787
    functionDepth: 1
    functionLinenumber: 3787
    functionLinenumberEnd: 3797
    functionName: minf_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_datamap_close
    linkageType: ''
    returnType: void
    signature: void minf_box_del(GF_Box *s)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3809,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3813,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3817,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3821
      start: 3799
    functionDepth: 1
    functionLinenumber: 3799
    functionLinenumberEnd: 3821
    functionName: minf_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 1
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err minf_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:3829,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:3833,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:3838,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:3841,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:3844,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3849
      start: 3824
    functionDepth: 5
    functionLinenumber: 3824
    functionLinenumberEnd: 3849
    functionName: minf_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_isom_box_array_read
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err minf_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:3853,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3855
      start: 3851
    functionDepth: 1
    functionLinenumber: 3851
    functionLinenumberEnd: 3855
    functionName: minf_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *minf_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:3862,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3863
      start: 3860
    functionDepth: 2
    functionLinenumber: 3860
    functionLinenumberEnd: 3863
    functionName: minf_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err minf_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:3870,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:3872,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:3873,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:3873,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:3875,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3877
      start: 3865
    functionDepth: 2
    functionLinenumber: 3865
    functionLinenumberEnd: 3877
    functionName: minf_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_find_child
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err minf_box_size(GF_Box *s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3888,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3889,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3890,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/box_code_base.c:3894,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3896,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3898,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3900,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3901,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3902
      start: 3883
    functionDepth: 4
    functionLinenumber: 3883
    functionLinenumberEnd: 3902
    functionName: moof_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_front
    - gf_list_del
    - gf_isom_box_del
    linkageType: ''
    returnType: void
    signature: void moof_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3909,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3912,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3915,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3919
      start: 3904
    functionDepth: 1
    functionLinenumber: 3904
    functionLinenumberEnd: 3919
    functionName: moof_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    - BOX_FIELD_LIST_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err moof_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:3923,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3924
      start: 3921
    functionDepth: 2
    functionLinenumber: 3921
    functionLinenumberEnd: 3924
    functionName: moof_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err moof_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:3928,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:3929,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3931
      start: 3926
    functionDepth: 1
    functionLinenumber: 3926
    functionLinenumberEnd: 3931
    functionName: moof_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *moof_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:3938,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3939
      start: 3936
    functionDepth: 2
    functionLinenumber: 3936
    functionLinenumberEnd: 3939
    functionName: moof_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err moof_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:3947,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:3949,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:3951,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3953
      start: 3941
    functionDepth: 3
    functionLinenumber: 3941
    functionLinenumberEnd: 3953
    functionName: moof_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position_list
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err moof_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3964,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3965,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3966
      start: 3960
    functionDepth: 1
    functionLinenumber: 3960
    functionLinenumberEnd: 3966
    functionName: moov_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void moov_box_del(GF_Box *s)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3973,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:3977,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3982,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3986,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3991,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3998,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/box_code_base.c:4004,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:4011,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/box_code_base.c:4014,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:4019,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 48
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4030
      start: 3968
    functionDepth: 5
    functionLinenumber: 3968
    functionLinenumberEnd: 4030
    functionName: moov_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_del_parent
    - BOX_FIELD_ASSIGN
    - gf_list_count
    - gf_list_add
    - gf_list_del_item
    - Track_FindRef
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err moov_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:4035,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4036
      start: 4033
    functionDepth: 2
    functionLinenumber: 4033
    functionLinenumberEnd: 4036
    functionName: moov_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err moov_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:4040,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:4041,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:4043,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4047
      start: 4038
    functionDepth: 1
    functionLinenumber: 4038
    functionLinenumberEnd: 4047
    functionName: moov_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *moov_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:4056,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4057
      start: 4054
    functionDepth: 2
    functionLinenumber: 4054
    functionLinenumberEnd: 4057
    functionName: moov_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err moov_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4064,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4065,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4066,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4069,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:4072,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4076,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4080
      start: 4059
    functionDepth: 3
    functionLinenumber: 4059
    functionLinenumberEnd: 4080
    functionName: moov_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position_list
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err moov_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_predestroy
      Src: /src/gpac/src/isomedia/box_code_base.c:4088,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4089,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:4090,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4091
      start: 4084
    functionDepth: 1
    functionLinenumber: 4084
    functionLinenumberEnd: 4091
    functionName: audio_sample_entry_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_sample_entry_predestroy
    - gf_odf_desc_del
    linkageType: ''
    returnType: void
    signature: void audio_sample_entry_box_del(GF_Box *s)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4101,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4109,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4116,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4120,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4124,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4128,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4131,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4134,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4137,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4141,1
    - Dst: ERROR_ON_DUPLICATED_BOX
      Src: /src/gpac/src/isomedia/box_code_base.c:4152,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:4154,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:4156,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:4157,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_base.c:4161,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:4164,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:4169,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:4177,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:4183,1
    - Dst: ERROR_ON_DUPLICATED_BOX
      Src: /src/gpac/src/isomedia/box_code_base.c:4229,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:4232,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:4234,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:4235,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_base.c:4239,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:4241,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:4247,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 134
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4262
      start: 4093
    functionDepth: 5
    functionLinenumber: 4093
    functionLinenumberEnd: 4262
    functionName: audio_sample_entry_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    - gf_list_get
    - gf_isom_box_del_parent
    - ERROR_ON_DUPLICATED_BOX
    - gf_list_count
    - gf_list_add
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err audio_sample_entry_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4274,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:4275,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_base.c:4282,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:4283,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:4284,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:4285,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:4286,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_code_base.c:4288,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_code_base.c:4289,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_code_base.c:4290,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_code_base.c:4291,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_base.c:4293,1
    - Dst: gf_isom_audio_sample_entry_read
      Src: /src/gpac/src/isomedia/box_code_base.c:4296,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4298,1
    - Dst: gf_bs_get_cookie
      Src: /src/gpac/src/isomedia/box_code_base.c:4303,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:4307,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:4310,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_base.c:4331,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:4332,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:4335,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_code_base.c:4337,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_code_base.c:4338,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/box_code_base.c:4339,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/box_code_base.c:4342,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:4344,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:4345,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/box_code_base.c:4347,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4351,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/isomedia/box_code_base.c:4354,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4355,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:4358,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:4359,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4361,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:4368,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 88
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4370
      start: 4263
    functionDepth: 4
    functionLinenumber: 4263
    functionLinenumberEnd: 4370
    functionName: audio_sample_entry_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_peek_bits
    - gf_bs_read_data
    - gf_free
    - gf_bs_new
    - gf_list_count
    - gf_isom_box_find_child
    - gf_list_get
    - gf_list_new
    - gf_isom_box_del
    - gf_isom_audio_sample_entry_read
    - gf_list_add
    - gf_isom_box_array_read
    - gf_bs_skip_bytes
    - gf_bs_get_position
    - gf_list_del_item
    - gf_bs_set_cookie
    - gf_bs_read_u8
    - gf_malloc
    - isalnum
    - gf_isom_box_parse
    - gf_bs_seek
    - gf_bs_del
    - gf_bs_get_cookie
    - GF_4CC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err audio_sample_entry_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:4374,1
    - Dst: gf_isom_audio_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_base.c:4375,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4377
      start: 4372
    functionDepth: 2
    functionLinenumber: 4372
    functionLinenumberEnd: 4377
    functionName: audio_sample_entry_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_audio_sample_entry_init
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *audio_sample_entry_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:4381,1
    - Dst: gf_isom_audio_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_base.c:4382,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4384
      start: 4379
    functionDepth: 2
    functionLinenumber: 4379
    functionLinenumberEnd: 4384
    functionName: enca_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_audio_sample_entry_init
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *enca_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:4392,1
    - Dst: gf_isom_audio_sample_entry_write
      Src: /src/gpac/src/isomedia/box_code_base.c:4394,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4396
      start: 4389
    functionDepth: 2
    functionLinenumber: 4389
    functionLinenumberEnd: 4396
    functionName: audio_sample_entry_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_audio_sample_entry_write
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err audio_sample_entry_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_audio_sample_entry_size
      Src: /src/gpac/src/isomedia/box_code_base.c:4402,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4407,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:4407,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4408,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:4408,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4411,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4412,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4413,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4414,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4415,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4416,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4417,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4420,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:4420,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4421,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:4421,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4424
      start: 4398
    functionDepth: 2
    functionLinenumber: 4398
    functionLinenumberEnd: 4424
    functionName: audio_sample_entry_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_audio_sample_entry_size
    - gf_isom_box_find_child
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err audio_sample_entry_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_predestroy
      Src: /src/gpac/src/isomedia/box_code_base.c:4433,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:4434,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4435
      start: 4429
    functionDepth: 1
    functionLinenumber: 4429
    functionLinenumberEnd: 4435
    functionName: gen_sample_entry_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_sample_entry_predestroy
    linkageType: ''
    returnType: void
    signature: void gen_sample_entry_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_base_sample_entry_read
      Src: /src/gpac/src/isomedia/box_code_base.c:4440,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:4442,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:4443,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4444
      start: 4438
    functionDepth: 2
    functionLinenumber: 4438
    functionLinenumberEnd: 4444
    functionName: gen_sample_entry_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_base_sample_entry_read
    - ISOM_DECREASE_SIZE
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gen_sample_entry_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:4448,1
    - Dst: gf_isom_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_base.c:4449,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4451
      start: 4446
    functionDepth: 1
    functionLinenumber: 4446
    functionLinenumberEnd: 4451
    functionName: gen_sample_entry_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_entry_init
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *gen_sample_entry_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:4460,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:4463,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:4464,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4466
      start: 4456
    functionDepth: 2
    functionLinenumber: 4456
    functionLinenumberEnd: 4466
    functionName: gen_sample_entry_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u16
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gen_sample_entry_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4473
      start: 4468
    functionDepth: 0
    functionLinenumber: 4468
    functionLinenumberEnd: 4473
    functionName: gen_sample_entry_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gen_sample_entry_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_predestroy
      Src: /src/gpac/src/isomedia/box_code_base.c:4481,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4482,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:4483,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4484
      start: 4477
    functionDepth: 1
    functionLinenumber: 4477
    functionLinenumberEnd: 4484
    functionName: mp4s_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_sample_entry_predestroy
    - gf_odf_desc_del
    linkageType: ''
    returnType: void
    signature: void mp4s_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4491,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4495
      start: 4486
    functionDepth: 1
    functionLinenumber: 4486
    functionLinenumberEnd: 4495
    functionName: mp4s_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4s_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_base_sample_entry_read
      Src: /src/gpac/src/isomedia/box_code_base.c:4502,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:4505,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:4506,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4507
      start: 4497
    functionDepth: 2
    functionLinenumber: 4497
    functionLinenumberEnd: 4507
    functionName: mp4s_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_base_sample_entry_read
    - ISOM_DECREASE_SIZE
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4s_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:4511,1
    - Dst: gf_isom_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_base.c:4512,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4515
      start: 4509
    functionDepth: 1
    functionLinenumber: 4509
    functionLinenumberEnd: 4515
    functionName: mp4s_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_entry_init
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *mp4s_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:4519,1
    - Dst: gf_isom_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_base.c:4520,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4523
      start: 4517
    functionDepth: 1
    functionLinenumber: 4517
    functionLinenumberEnd: 4523
    functionName: encs_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_entry_init
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *encs_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:4533,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:4535,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:4536,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4538
      start: 4528
    functionDepth: 2
    functionLinenumber: 4528
    functionLinenumberEnd: 4538
    functionName: mp4s_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u16
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4s_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4545,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4547
      start: 4540
    functionDepth: 2
    functionLinenumber: 4540
    functionLinenumberEnd: 4547
    functionName: mp4s_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4s_box_size(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_predestroy
      Src: /src/gpac/src/isomedia/box_code_base.c:4555,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4557,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4559,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:4560,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4561
      start: 4551
    functionDepth: 1
    functionLinenumber: 4551
    functionLinenumberEnd: 4561
    functionName: video_sample_entry_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_sample_entry_predestroy
    - gf_odf_desc_del
    linkageType: ''
    returnType: void
    signature: void video_sample_entry_box_del(GF_Box *s)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4568,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4571,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4574,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4577,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4580,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4583,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4586,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4589,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4592,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4595,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4598,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4602,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/box_code_base.c:4605,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4606,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4612,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4619,1
    - Dst: gf_isom_box_check_unique
      Src: /src/gpac/src/isomedia/box_code_base.c:4632,1
    - Dst: ERROR_ON_DUPLICATED_BOX
      Src: /src/gpac/src/isomedia/box_code_base.c:4633,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 58
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4638
      start: 4563
    functionDepth: 2
    functionLinenumber: 4563
    functionLinenumberEnd: 4638
    functionName: video_sample_entry_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    - ERROR_ON_DUPLICATED_BOX
    - gf_isom_box_check_unique
    - memcmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err video_sample_entry_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_video_sample_entry_read
      Src: /src/gpac/src/isomedia/box_code_base.c:4644,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:4646,1
    - Dst: AVC_RewriteESDescriptor
      Src: /src/gpac/src/isomedia/box_code_base.c:4650,1
    - Dst: HEVC_RewriteESDescriptor
      Src: /src/gpac/src/isomedia/box_code_base.c:4653,1
    - Dst: AV1_RewriteESDescriptor
      Src: /src/gpac/src/isomedia/box_code_base.c:4656,1
    - Dst: VP9_RewriteESDescriptor
      Src: /src/gpac/src/isomedia/box_code_base.c:4659,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:4662,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 26
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4674
      start: 4640
    functionDepth: 8
    functionLinenumber: 4640
    functionLinenumberEnd: 4674
    functionName: video_sample_entry_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - AV1_RewriteESDescriptor
    - HEVC_RewriteESDescriptor
    - VP9_RewriteESDescriptor
    - AVC_RewriteESDescriptor
    - gf_isom_video_sample_entry_read
    - gf_isom_box_find_child
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err video_sample_entry_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:4679,1
    - Dst: gf_isom_video_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_base.c:4682,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4684
      start: 4676
    functionDepth: 2
    functionLinenumber: 4676
    functionLinenumberEnd: 4684
    functionName: video_sample_entry_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_video_sample_entry_init
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *video_sample_entry_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:4692,1
    - Dst: gf_isom_video_sample_entry_write
      Src: /src/gpac/src/isomedia/box_code_base.c:4694,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4696
      start: 4689
    functionDepth: 3
    functionLinenumber: 4689
    functionLinenumberEnd: 4696
    functionName: video_sample_entry_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_isom_video_sample_entry_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err video_sample_entry_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_video_sample_entry_size
      Src: /src/gpac/src/isomedia/box_code_base.c:4703,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4708,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4709,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4711,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4712,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4714,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:4714,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4715,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4719,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4720,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4723,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4726,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4729,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4732,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4735,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:4737,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4738,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:4740,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4741,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4743
      start: 4698
    functionDepth: 2
    functionLinenumber: 4698
    functionLinenumberEnd: 4743
    functionName: video_sample_entry_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position
    - gf_isom_box_find_child
    - gf_isom_video_sample_entry_size
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err video_sample_entry_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4755,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4756,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:4757,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4758
      start: 4751
    functionDepth: 1
    functionLinenumber: 4751
    functionLinenumberEnd: 4758
    functionName: mvex_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void mvex_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4767,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4770,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4773,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4777
      start: 4761
    functionDepth: 1
    functionLinenumber: 4761
    functionLinenumberEnd: 4777
    functionName: mvex_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    - BOX_FIELD_LIST_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mvex_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:4783,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4784
      start: 4781
    functionDepth: 2
    functionLinenumber: 4781
    functionLinenumberEnd: 4784
    functionName: mvex_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mvex_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:4788,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:4789,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:4791,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:4794,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4796,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:4797,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4801
      start: 4786
    functionDepth: 1
    functionLinenumber: 4786
    functionLinenumberEnd: 4801
    functionName: mvex_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    - gf_list_del
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *mvex_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:4810,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4811
      start: 4808
    functionDepth: 2
    functionLinenumber: 4808
    functionLinenumberEnd: 4811
    functionName: mvex_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mvex_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4817,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:4818,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:4819,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4821
      start: 4813
    functionDepth: 3
    functionLinenumber: 4813
    functionLinenumberEnd: 4821
    functionName: mvex_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position_list
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mvex_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:4829,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4831
      start: 4827
    functionDepth: 1
    functionLinenumber: 4827
    functionLinenumberEnd: 4831
    functionName: mehd_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *mehd_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:4834,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4835
      start: 4832
    functionDepth: 0
    functionLinenumber: 4832
    functionLinenumberEnd: 4835
    functionName: mehd_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void mehd_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:4841,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:4842,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:4844,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4845,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4848
      start: 4836
    functionDepth: 1
    functionLinenumber: 4836
    functionLinenumberEnd: 4848
    functionName: mehd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u64
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mehd_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:4853,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:4856,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4858,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4861
      start: 4850
    functionDepth: 3
    functionLinenumber: 4850
    functionLinenumberEnd: 4861
    functionName: mehd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mehd_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4868
      start: 4862
    functionDepth: 0
    functionLinenumber: 4862
    functionLinenumberEnd: 4868
    functionName: mehd_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mehd_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:4878,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4879
      start: 4874
    functionDepth: 0
    functionLinenumber: 4874
    functionLinenumberEnd: 4879
    functionName: mvhd_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void mvhd_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:4887,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:4888,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:4889,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4890,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:4891,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:4893,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4894,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4895,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4896,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4897,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:4900,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:4903,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4904,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:4905,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:4906,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4907,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4908,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4909,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4910,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4911,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4912,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4913,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4914,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4915,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4916,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4917,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4918,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4919,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4920,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4921,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4922,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 42
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4925
      start: 4882
    functionDepth: 1
    functionLinenumber: 4882
    functionLinenumberEnd: 4925
    functionName: mvhd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - gf_bs_read_u64
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mvhd_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:4929,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4941
      start: 4927
    functionDepth: 1
    functionLinenumber: 4927
    functionLinenumberEnd: 4941
    functionName: mvhd_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *mvhd_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:4950,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:4953,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:4954,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4955,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:4956,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4958,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4959,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4960,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4961,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4963,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:4964,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:4965,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4966,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4967,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4968,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4969,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4970,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4971,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4972,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4973,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4974,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4975,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4976,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4977,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4978,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4979,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4980,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4981,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 35
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4983
      start: 4946
    functionDepth: 3
    functionLinenumber: 4946
    functionLinenumberEnd: 4983
    functionName: mvhd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u16
    - gf_bs_write_data
    - gf_bs_write_u64
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mvhd_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4998
      start: 4985
    functionDepth: 0
    functionLinenumber: 4985
    functionLinenumberEnd: 4998
    functionName: mvhd_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mvhd_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5007,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5008
      start: 5003
    functionDepth: 0
    functionLinenumber: 5003
    functionLinenumberEnd: 5008
    functionName: nmhd_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void nmhd_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5015
      start: 5012
    functionDepth: 0
    functionLinenumber: 5012
    functionLinenumberEnd: 5015
    functionName: nmhd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nmhd_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:5019,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5021
      start: 5017
    functionDepth: 1
    functionLinenumber: 5017
    functionLinenumberEnd: 5021
    functionName: nmhd_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *nmhd_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:5028,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5029
      start: 5026
    functionDepth: 3
    functionLinenumber: 5026
    functionLinenumberEnd: 5029
    functionName: nmhd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nmhd_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5034
      start: 5031
    functionDepth: 0
    functionLinenumber: 5031
    functionLinenumberEnd: 5034
    functionName: nmhd_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nmhd_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5044,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5045,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5046
      start: 5040
    functionDepth: 0
    functionLinenumber: 5040
    functionLinenumberEnd: 5046
    functionName: padb_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void padb_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:5054,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5055,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:5059,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5063,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5065,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5067,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5069,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5070,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5073
      start: 5049
    functionDepth: 1
    functionLinenumber: 5049
    functionLinenumberEnd: 5073
    functionName: padb_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_int
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err padb_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:5077,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5079
      start: 5075
    functionDepth: 1
    functionLinenumber: 5075
    functionLinenumberEnd: 5079
    functionName: padb_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *padb_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:5091,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5093,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5096,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5098,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5100,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5102,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5103,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5106
      start: 5085
    functionDepth: 3
    functionLinenumber: 5085
    functionLinenumberEnd: 5106
    functionName: padb_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err padb_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5115
      start: 5108
    functionDepth: 0
    functionLinenumber: 5108
    functionLinenumberEnd: 5115
    functionName: padb_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err padb_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5124
      start: 5120
    functionDepth: 0
    functionLinenumber: 5120
    functionLinenumberEnd: 5124
    functionName: rely_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void rely_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:5129,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5130,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5131,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5134
      start: 5126
    functionDepth: 1
    functionLinenumber: 5126
    functionLinenumberEnd: 5134
    functionName: rely_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rely_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:5138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5140
      start: 5136
    functionDepth: 1
    functionLinenumber: 5136
    functionLinenumberEnd: 5140
    functionName: rely_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *rely_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:5149,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5151,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5152,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5153,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5155
      start: 5144
    functionDepth: 2
    functionLinenumber: 5144
    functionLinenumberEnd: 5155
    functionName: rely_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rely_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5161
      start: 5157
    functionDepth: 0
    functionLinenumber: 5157
    functionLinenumberEnd: 5161
    functionName: rely_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rely_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5169
      start: 5165
    functionDepth: 0
    functionLinenumber: 5165
    functionLinenumberEnd: 5169
    functionName: rtpo_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void rtpo_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:5174,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5177
      start: 5171
    functionDepth: 1
    functionLinenumber: 5171
    functionLinenumberEnd: 5177
    functionName: rtpo_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpo_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:5181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5183
      start: 5179
    functionDepth: 1
    functionLinenumber: 5179
    functionLinenumberEnd: 5183
    functionName: rtpo_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *rtpo_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:5193,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5195,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5197
      start: 5185
    functionDepth: 2
    functionLinenumber: 5185
    functionLinenumberEnd: 5197
    functionName: rtpo_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpo_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5203
      start: 5199
    functionDepth: 0
    functionLinenumber: 5199
    functionLinenumberEnd: 5203
    functionName: rtpo_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpo_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5210,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5211
      start: 5206
    functionDepth: 0
    functionLinenumber: 5206
    functionLinenumberEnd: 5211
    functionName: smhd_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void smhd_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:5217,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:5218,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:5219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5221
      start: 5214
    functionDepth: 1
    functionLinenumber: 5214
    functionLinenumberEnd: 5221
    functionName: smhd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err smhd_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:5225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5227
      start: 5223
    functionDepth: 1
    functionLinenumber: 5223
    functionLinenumberEnd: 5227
    functionName: smhd_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *smhd_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:5236,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:5238,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:5239,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5241
      start: 5232
    functionDepth: 3
    functionLinenumber: 5232
    functionLinenumberEnd: 5241
    functionName: smhd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err smhd_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5250
      start: 5243
    functionDepth: 0
    functionLinenumber: 5243
    functionLinenumberEnd: 5250
    functionName: smhd_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err smhd_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5260
      start: 5256
    functionDepth: 0
    functionLinenumber: 5256
    functionLinenumberEnd: 5260
    functionName: snro_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void snro_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:5265,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5266,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5268
      start: 5262
    functionDepth: 1
    functionLinenumber: 5262
    functionLinenumberEnd: 5268
    functionName: snro_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err snro_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:5272,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5274
      start: 5270
    functionDepth: 1
    functionLinenumber: 5270
    functionLinenumberEnd: 5274
    functionName: snro_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *snro_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:5284,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5286,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5288
      start: 5278
    functionDepth: 2
    functionLinenumber: 5278
    functionLinenumberEnd: 5288
    functionName: snro_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err snro_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5294
      start: 5290
    functionDepth: 0
    functionLinenumber: 5290
    functionLinenumberEnd: 5294
    functionName: snro_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err snro_box_size(GF_Box *s)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:5303,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:5304,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:5305,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:5306,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:5307,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5313,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5315,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5317,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5319,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5320
      start: 5298
    functionDepth: 1
    functionLinenumber: 5298
    functionLinenumberEnd: 5320
    functionName: stbl_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void stbl_box_del(GF_Box *s)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5328,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5331,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5334,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5337,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5340,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5344,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5347,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5350,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5356,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5359,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5362,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5365,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5369,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:5373,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_base.c:5375,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:5376,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:5379,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5387,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5390,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5393,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5396,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5400,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 59
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5404
      start: 5322
    functionDepth: 1
    functionLinenumber: 5322
    functionLinenumberEnd: 5404
    functionName: stbl_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 2
    functionsReached:
    - BOX_FIELD_ASSIGN
    - gf_list_get
    - GF_LOG
    - BOX_FIELD_LIST_ASSIGN
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:5415,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:5421,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:5422,1
    - Dst: gf_bs_get_cookie
      Src: /src/gpac/src/isomedia/box_code_base.c:5424,1
    - Dst: CHECK_BOX
      Src: /src/gpac/src/isomedia/box_code_base.c:5434,1
    - Dst: CHECK_BOX
      Src: /src/gpac/src/isomedia/box_code_base.c:5435,1
    - Dst: CHECK_BOX
      Src: /src/gpac/src/isomedia/box_code_base.c:5436,1
    - Dst: CHECK_BOX
      Src: /src/gpac/src/isomedia/box_code_base.c:5437,1
    - Dst: stbl_GetSampleInfos
      Src: /src/gpac/src/isomedia/box_code_base.c:5446,1
    - Dst: stbl_GetSampleDTS
      Src: /src/gpac/src/isomedia/box_code_base.c:5448,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:5463,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:5467,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:5473,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 47
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5478
      start: 5409
    functionDepth: 2
    functionLinenumber: 5409
    functionLinenumberEnd: 5478
    functionName: stbl_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - CHECK_BOX
    - GF_LOG
    - gf_list_count
    - gf_bs_get_cookie
    - stbl_GetSampleDTS
    - stbl_GetSampleInfos
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5433
      start: 5428
    functionDepth: 0
    functionLinenumber: 5428
    functionLinenumberEnd: 5433
    functionName: CHECK_BOX
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_BOX(_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:5482,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5487
      start: 5480
    functionDepth: 1
    functionLinenumber: 5480
    functionLinenumberEnd: 5487
    functionName: stbl_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *stbl_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:5495,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5496
      start: 5493
    functionDepth: 2
    functionLinenumber: 5493
    functionLinenumberEnd: 5496
    functionName: stbl_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5503,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5504,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5505,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5506,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5507,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5508,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5509,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5510,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5511,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5512,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5513,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5514,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:5517,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:5520,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:5523,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:5526,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:5529,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5532
      start: 5498
    functionDepth: 3
    functionLinenumber: 5498
    functionLinenumberEnd: 5532
    functionName: stbl_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position_list
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5541,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5542,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5543
      start: 5537
    functionDepth: 0
    functionLinenumber: 5537
    functionLinenumberEnd: 5543
    functionName: stco_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void stco_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:5551,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5552,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:5554,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:5559,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5564,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5568
      start: 5546
    functionDepth: 1
    functionLinenumber: 5546
    functionLinenumberEnd: 5568
    functionName: stco_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - GF_LOG
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stco_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:5572,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5574
      start: 5570
    functionDepth: 1
    functionLinenumber: 5570
    functionLinenumberEnd: 5574
    functionName: stco_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *stco_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:5585,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5587,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5589,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5592
      start: 5580
    functionDepth: 3
    functionLinenumber: 5580
    functionLinenumberEnd: 5592
    functionName: stco_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stco_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5601
      start: 5595
    functionDepth: 0
    functionLinenumber: 5595
    functionLinenumberEnd: 5601
    functionName: stco_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stco_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5611,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5612,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5613
      start: 5607
    functionDepth: 0
    functionLinenumber: 5607
    functionLinenumberEnd: 5613
    functionName: stdp_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void stdp_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:5625,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:5628,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:5630,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5632
      start: 5616
    functionDepth: 1
    functionLinenumber: 5616
    functionLinenumberEnd: 5632
    functionName: stdp_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_malloc
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stdp_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:5636,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5638
      start: 5634
    functionDepth: 1
    functionLinenumber: 5634
    functionLinenumberEnd: 5638
    functionName: stdp_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *stdp_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:5648,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:5652,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5655
      start: 5643
    functionDepth: 3
    functionLinenumber: 5643
    functionLinenumberEnd: 5655
    functionName: stdp_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stdp_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5663
      start: 5657
    functionDepth: 0
    functionLinenumber: 5657
    functionLinenumberEnd: 5663
    functionName: stdp_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stdp_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5672,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5673,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5674
      start: 5668
    functionDepth: 0
    functionLinenumber: 5668
    functionLinenumberEnd: 5674
    functionName: stsc_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void stsc_box_del(GF_Box *s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:5682,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5683,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:5686,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:5693,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5698,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5699,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5700,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:5704,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5716
      start: 5677
    functionDepth: 1
    functionLinenumber: 5677
    functionLinenumberEnd: 5716
    functionName: stsc_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - GF_LOG
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsc_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:5720,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5722
      start: 5718
    functionDepth: 1
    functionLinenumber: 5718
    functionLinenumberEnd: 5722
    functionName: stsc_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *stsc_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:5733,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5735,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5737,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5738,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5739,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5742
      start: 5727
    functionDepth: 3
    functionLinenumber: 5727
    functionLinenumberEnd: 5742
    functionName: stsc_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsc_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5750
      start: 5744
    functionDepth: 0
    functionLinenumber: 5744
    functionLinenumberEnd: 5750
    functionName: stsc_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsc_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5758,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5759
      start: 5754
    functionDepth: 0
    functionLinenumber: 5754
    functionLinenumberEnd: 5759
    functionName: stsd_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void stsd_box_del(GF_Box *s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_box_valid_in_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:5766,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:5776,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:5782,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_code_base.c:5782,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5785
      start: 5761
    functionDepth: 5
    functionLinenumber: 5761
    functionLinenumberEnd: 5785
    functionName: stsd_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_del_parent
    - GF_LOG
    - gf_box_valid_in_parent
    - gf_4cc_to_str
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsd_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:5790,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5791,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:5793,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5794
      start: 5788
    functionDepth: 2
    functionLinenumber: 5788
    functionLinenumberEnd: 5794
    functionName: stsd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsd_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:5798,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:5799,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5801
      start: 5796
    functionDepth: 1
    functionLinenumber: 5796
    functionLinenumberEnd: 5801
    functionName: stsd_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *stsd_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:5812,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:5814,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5815,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5817
      start: 5806
    functionDepth: 3
    functionLinenumber: 5806
    functionLinenumberEnd: 5817
    functionName: stsd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsd_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5824
      start: 5819
    functionDepth: 0
    functionLinenumber: 5819
    functionLinenumberEnd: 5824
    functionName: stsd_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsd_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_code_base.c:5835,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5836,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:5838,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5839,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5840
      start: 5829
    functionDepth: 1
    functionLinenumber: 5829
    functionLinenumberEnd: 5840
    functionName: stsh_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_enum
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void stsh_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:5850,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5851,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:5856,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5858,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5859,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:5860,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5864
      start: 5844
    functionDepth: 1
    functionLinenumber: 5844
    functionLinenumberEnd: 5864
    functionName: stsh_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_u32
    - gf_list_add
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsh_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:5868,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:5870,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5872,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5876
      start: 5866
    functionDepth: 1
    functionLinenumber: 5866
    functionLinenumberEnd: 5876
    functionName: stsh_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *stsh_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:5888,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5890,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:5890,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_code_base.c:5892,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5893,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5894,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5897
      start: 5881
    functionDepth: 3
    functionLinenumber: 5881
    functionLinenumberEnd: 5897
    functionName: stsh_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bs_write_u32
    - gf_list_enum
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsh_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:5902,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5904
      start: 5899
    functionDepth: 1
    functionLinenumber: 5899
    functionLinenumberEnd: 5904
    functionName: stsh_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsh_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5914,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5915,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5916
      start: 5910
    functionDepth: 0
    functionLinenumber: 5910
    functionLinenumberEnd: 5916
    functionName: stss_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void stss_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:5923,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5924,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:5926,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:5931,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5935,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5938
      start: 5918
    functionDepth: 1
    functionLinenumber: 5918
    functionLinenumberEnd: 5938
    functionName: stss_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - GF_LOG
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stss_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:5942,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5944
      start: 5940
    functionDepth: 1
    functionLinenumber: 5940
    functionLinenumberEnd: 5944
    functionName: stss_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *stss_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:5955,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5957,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5959,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5962
      start: 5949
    functionDepth: 3
    functionLinenumber: 5949
    functionLinenumberEnd: 5962
    functionName: stss_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stss_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5969
      start: 5964
    functionDepth: 0
    functionLinenumber: 5964
    functionLinenumberEnd: 5969
    functionName: stss_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stss_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5978,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5979,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5980
      start: 5974
    functionDepth: 0
    functionLinenumber: 5974
    functionLinenumberEnd: 5980
    functionName: stsz_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void stsz_box_del(GF_Box *s)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:5991,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5992,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5993,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:5996,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5997,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:5998,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5999,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:6025,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:6031,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:6034,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6038,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:6048,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:6053,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:6060,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:6068,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:6074,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:6081,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:6086,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 104
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6097
      start: 5983
    functionDepth: 1
    functionLinenumber: 5983
    functionLinenumberEnd: 6097
    functionName: stsz_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_LOG
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsz_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:6101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6105
      start: 6099
    functionDepth: 1
    functionLinenumber: 6099
    functionLinenumberEnd: 6105
    functionName: stsz_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *stsz_box_new()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:6116,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6120,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/isomedia/box_code_base.c:6122,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:6123,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6125,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6130,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:6137,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:6139,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:6142,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:6147,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6154
      start: 6110
    functionDepth: 3
    functionLinenumber: 6110
    functionLinenumberEnd: 6154
    functionName: stsz_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u24
    - gf_isom_full_box_write
    - gf_bs_write_int
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsz_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:6199,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 48
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6221
      start: 6156
    functionDepth: 0
    functionLinenumber: 6156
    functionLinenumberEnd: 6221
    functionName: stsz_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsz_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:6229,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:6230,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6231
      start: 6226
    functionDepth: 0
    functionLinenumber: 6226
    functionLinenumberEnd: 6231
    functionName: stts_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void stts_box_del(GF_Box *s)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6244,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6245,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:6247,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:6252,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6256,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6257,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:6274,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/box_code_base.c:6297,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/box_code_base.c:6299,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6320,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:6323,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:6325,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 65
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6334
      start: 6234
    functionDepth: 1
    functionLinenumber: 6234
    functionLinenumberEnd: 6334
    functionName: stts_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - memmove
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stts_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:6338,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6340
      start: 6336
    functionDepth: 1
    functionLinenumber: 6336
    functionLinenumberEnd: 6340
    functionName: stts_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *stts_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:6351,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6353,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6355,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6356,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6359
      start: 6345
    functionDepth: 3
    functionLinenumber: 6345
    functionLinenumberEnd: 6359
    functionName: stts_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stts_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6366
      start: 6361
    functionDepth: 0
    functionLinenumber: 6361
    functionLinenumberEnd: 6366
    functionName: stts_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stts_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:6378,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6379
      start: 6374
    functionDepth: 0
    functionLinenumber: 6374
    functionLinenumberEnd: 6379
    functionName: tfhd_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void tfhd_box_del(GF_Box *s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6385,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6386,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6390,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6391,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6394,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6395,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6398,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6399,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6402,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6403,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6406,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6407,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6410
      start: 6381
    functionDepth: 1
    functionLinenumber: 6381
    functionLinenumberEnd: 6410
    functionName: tfhd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u64
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tfhd_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:6414,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6417
      start: 6412
    functionDepth: 1
    functionLinenumber: 6412
    functionLinenumberEnd: 6417
    functionName: tfhd_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tfhd_box_new()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:6430,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6432,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6436,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6439,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6442,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6445,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6448,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6451
      start: 6424
    functionDepth: 3
    functionLinenumber: 6424
    functionLinenumberEnd: 6451
    functionName: tfhd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tfhd_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6465
      start: 6453
    functionDepth: 0
    functionLinenumber: 6453
    functionLinenumberEnd: 6465
    functionName: tfhd_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tfhd_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:6475,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6476
      start: 6472
    functionDepth: 0
    functionLinenumber: 6472
    functionLinenumberEnd: 6476
    functionName: tims_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void tims_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6481,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6482,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6484
      start: 6478
    functionDepth: 1
    functionLinenumber: 6478
    functionLinenumberEnd: 6484
    functionName: tims_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tims_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:6488,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6490
      start: 6486
    functionDepth: 1
    functionLinenumber: 6486
    functionLinenumberEnd: 6490
    functionName: tims_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tims_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:6499,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6501,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6503
      start: 6494
    functionDepth: 2
    functionLinenumber: 6494
    functionLinenumberEnd: 6503
    functionName: tims_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tims_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6509
      start: 6505
    functionDepth: 0
    functionLinenumber: 6505
    functionLinenumberEnd: 6509
    functionName: tims_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tims_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:6518,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6520
      start: 6514
    functionDepth: 0
    functionLinenumber: 6514
    functionLinenumberEnd: 6520
    functionName: tkhd_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void tkhd_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6528,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6529,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6530,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6531,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6532,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6533,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6535,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6536,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6537,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6538,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6539,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6540,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6544,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6545,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6546,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:6547,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:6548,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:6549,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:6550,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6551,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6552,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6553,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6554,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6555,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6556,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6557,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6558,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6559,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6560,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6561,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 36
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6563
      start: 6523
    functionDepth: 1
    functionLinenumber: 6523
    functionLinenumberEnd: 6563
    functionName: tkhd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u64
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tkhd_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:6567,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6572
      start: 6565
    functionDepth: 1
    functionLinenumber: 6565
    functionLinenumberEnd: 6572
    functionName: tkhd_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tkhd_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:6583,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6586,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6587,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6588,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6589,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6590,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6592,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6593,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6594,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6595,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6596,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6598,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6599,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:6600,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:6601,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:6602,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:6603,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6604,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6605,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6606,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6607,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6608,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6609,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6610,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6611,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6612,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6613,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6614,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 35
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6616
      start: 6578
    functionDepth: 3
    functionLinenumber: 6578
    functionLinenumberEnd: 6616
    functionName: tkhd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_isom_full_box_write
    - gf_bs_write_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tkhd_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6631
      start: 6618
    functionDepth: 0
    functionLinenumber: 6618
    functionLinenumberEnd: 6631
    functionName: tkhd_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tkhd_box_size(GF_Box *s)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:6643,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:6644,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:6645,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:6646,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:6647,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:6648,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:6649,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6650
      start: 6639
    functionDepth: 1
    functionLinenumber: 6639
    functionLinenumberEnd: 6650
    functionName: traf_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void traf_box_del(GF_Box *s)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6658,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6661,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6664,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6667,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6670,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6673,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6677,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6680,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6683,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6686,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6691,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6696,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6699,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6705,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6711,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 61
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6715
      start: 6652
    functionDepth: 1
    functionLinenumber: 6652
    functionLinenumberEnd: 6715
    functionName: traf_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 1
    functionsReached:
    - BOX_FIELD_ASSIGN
    - BOX_FIELD_LIST_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err traf_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:6721,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:6725,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6729
      start: 6718
    functionDepth: 2
    functionLinenumber: 6718
    functionLinenumberEnd: 6729
    functionName: traf_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err traf_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:6733,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:6734,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/isomedia/box_code_base.c:6736,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6739
      start: 6731
    functionDepth: 1
    functionLinenumber: 6731
    functionLinenumberEnd: 6739
    functionName: traf_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    - gf_sys_old_arch_compat
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *traf_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:6746,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6747
      start: 6744
    functionDepth: 2
    functionLinenumber: 6744
    functionLinenumberEnd: 6747
    functionName: traf_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err traf_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:6755,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6756,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:6758,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:6759,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6763,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6764,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6765,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:6767,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6768,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6769,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6772,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6773,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6774,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6775,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:6776,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6777,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:6781,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:6785,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 24
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6787
      start: 6749
    functionDepth: 3
    functionLinenumber: 6749
    functionLinenumberEnd: 6787
    functionName: traf_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position_list
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err traf_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:6794,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6798
      start: 6792
    functionDepth: 1
    functionLinenumber: 6792
    functionLinenumberEnd: 6798
    functionName: tfxd_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tfxd_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:6802,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6803
      start: 6800
    functionDepth: 0
    functionLinenumber: 6800
    functionLinenumberEnd: 6803
    functionName: tfxd_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void tfxd_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6809,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:6810,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/isomedia/box_code_base.c:6811,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6814,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6815,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6816,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6818,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6819,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6820,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6824
      start: 6806
    functionDepth: 1
    functionLinenumber: 6806
    functionLinenumberEnd: 6824
    functionName: tfxd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_bs_read_u64
    - gf_bs_read_u24
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tfxd_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:6832,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:6835,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/isomedia/box_code_base.c:6836,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6838,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6839,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6841,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6842,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6845
      start: 6828
    functionDepth: 2
    functionLinenumber: 6828
    functionLinenumberEnd: 6845
    functionName: tfxd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u24
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tfxd_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6852
      start: 6847
    functionDepth: 0
    functionLinenumber: 6847
    functionLinenumberEnd: 6852
    functionName: tfxd_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tfxd_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:6859,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6862
      start: 6857
    functionDepth: 1
    functionLinenumber: 6857
    functionLinenumberEnd: 6862
    functionName: tfrf_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tfrf_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:6867,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:6868,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6869
      start: 6864
    functionDepth: 0
    functionLinenumber: 6864
    functionLinenumberEnd: 6869
    functionName: tfrf_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void tfrf_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6876,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:6877,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/isomedia/box_code_base.c:6878,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:6879,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:6880,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6885,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6886,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6887,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6889,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6890,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6891,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6895
      start: 6872
    functionDepth: 1
    functionLinenumber: 6872
    functionLinenumberEnd: 6895
    functionName: tfrf_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_bs_read_u64
    - gf_malloc
    - gf_bs_read_u24
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tfrf_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:6904,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:6907,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/isomedia/box_code_base.c:6908,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:6909,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6912,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6913,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6915,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6916,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6920
      start: 6899
    functionDepth: 2
    functionLinenumber: 6899
    functionLinenumberEnd: 6920
    functionName: tfrf_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u24
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tfrf_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6929
      start: 6922
    functionDepth: 0
    functionLinenumber: 6922
    functionLinenumberEnd: 6929
    functionName: tfrf_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tfrf_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:6940,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:6942,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6943
      start: 6935
    functionDepth: 1
    functionLinenumber: 6935
    functionLinenumberEnd: 6943
    functionName: trak_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_del
    linkageType: ''
    returnType: void
    signature: void trak_box_del(GF_Box *s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/box_code_base.c:6947,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/box_code_base.c:6950,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:6951,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:6952,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_code_base.c:6955,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:6958,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6960,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6961,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:6962,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_base.c:6963,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_base.c:6964,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:6968,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/box_code_base.c:6969,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:6970,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:6975,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:6977,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_base.c:6982,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_base.c:6983,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/box_code_base.c:6984,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 35
    argCount: 8
    argNames:
    - bs
    - box
    - a
    - data
    - data_size
    - EntryType
    - stsd
    - stsd_idx
    argTypes:
    - GF_BitStream*
    - GF_Box*
    - GF_UnknownBox*
    - u8**
    - u32*
    - u32*
    - GF_SampleDescriptionBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6985
      start: 6945
    functionDepth: 4
    functionLinenumber: 6945
    functionLinenumberEnd: 6985
    functionName: stsd_switch_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_insert
    - gf_list_get
    - gf_bs_new
    - gf_isom_box_del
    - gf_bs_get_content
    - gf_bs_del
    - gf_list_count
    - gf_bs_write_data
    - gf_list_rem
    - gf_bs_set_cookie
    - gf_bs_available
    - gf_bs_write_u32
    - gf_isom_box_array_read
    linkageType: ''
    returnType: void
    signature: void stsd_switch_box(GF_BitStream *bs, GF_Box *box, GF_UnknownBox *a,
      u8 **data, u32 *data_size, u32 *EntryType, GF_SampleDescriptionBox *stsd, u32
      stsd_idx)
  - BBCount: 132
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:6997,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7001,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:7002,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7007,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:7008,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_code_base.c:7013,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:7025,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7035,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_code_base.c:7035,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_code_base.c:7035,1
    - Dst: gf_box_valid_in_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:7161,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7164,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_code_base.c:7164,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7169,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_code_base.c:7169,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7174,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_code_base.c:7174,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7178,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_code_base.c:7178,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/box_code_base.c:7189,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_code_base.c:7190,1
    - Dst: gnrv_box_read
      Src: /src/gpac/src/isomedia/box_code_base.c:7192,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:7194,1
    - Dst: gnrv_box_del
      Src: /src/gpac/src/isomedia/box_code_base.c:7195,1
    - Dst: stsd_switch_box
      Src: /src/gpac/src/isomedia/box_code_base.c:7199,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/box_code_base.c:7204,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_code_base.c:7206,1
    - Dst: gnra_box_read
      Src: /src/gpac/src/isomedia/box_code_base.c:7207,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:7209,1
    - Dst: gnra_box_del
      Src: /src/gpac/src/isomedia/box_code_base.c:7210,1
    - Dst: stsd_switch_box
      Src: /src/gpac/src/isomedia/box_code_base.c:7214,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/box_code_base.c:7220,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_code_base.c:7222,1
    - Dst: gnrm_box_read
      Src: /src/gpac/src/isomedia/box_code_base.c:7224,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:7226,1
    - Dst: gnrm_box_del
      Src: /src/gpac/src/isomedia/box_code_base.c:7227,1
    - Dst: stsd_switch_box
      Src: /src/gpac/src/isomedia/box_code_base.c:7231,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 213
    argCount: 1
    argNames:
    - trak
    argTypes:
    - GF_TrackBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7237
      start: 6988
    functionDepth: 5
    functionLinenumber: 6988
    functionLinenumberEnd: 7237
    functionName: gf_isom_check_sample_desc
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gnra_box_read
    - gnrm_box_read
    - gf_bs_new
    - gnrm_box_del
    - gnrv_box_del
    - GF_LOG
    - stsd_switch_box
    - gnrv_box_read
    - gf_isom_box_new_parent
    - gf_bs_del
    - gf_box_valid_in_parent
    - gf_isom_box_new
    - gnra_box_del
    - gf_list_enum
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_check_sample_desc(GF_TrackBox *trak)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7246,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7249,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7252,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7255,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7258,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7261,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7264,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7269,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7272,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7275,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7279,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 41
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7284
      start: 7240
    functionDepth: 1
    functionLinenumber: 7240
    functionLinenumberEnd: 7284
    functionName: trak_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 3
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trak_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:7292,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7295,1
    - Dst: gf_isom_check_sample_desc
      Src: /src/gpac/src/isomedia/box_code_base.c:7300,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7304,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7308,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7313,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:7318,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:7319,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 38
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7330
      start: 7287
    functionDepth: 6
    functionLinenumber: 7287
    functionLinenumberEnd: 7330
    functionName: trak_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_check_sample_desc
    - GF_LOG
    - gf_list_count
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trak_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:7334,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7336
      start: 7332
    functionDepth: 1
    functionLinenumber: 7332
    functionLinenumberEnd: 7336
    functionName: trak_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *trak_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:7343,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7344
      start: 7341
    functionDepth: 2
    functionLinenumber: 7341
    functionLinenumberEnd: 7344
    functionName: trak_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trak_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: senc_Parse
      Src: /src/gpac/src/isomedia/box_code_base.c:7354,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:7357,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:7359,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:7360,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:7361,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:7362,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:7363,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:7364,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:7365,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:7366,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7368
      start: 7346
    functionDepth: 2
    functionLinenumber: 7346
    functionLinenumberEnd: 7368
    functionName: trak_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - senc_Parse
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trak_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7376,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7377,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7378
      start: 7372
    functionDepth: 0
    functionLinenumber: 7372
    functionLinenumberEnd: 7378
    functionName: stri_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void stri_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7384,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:7385,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:7386,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7387,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7390,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:7393,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7396,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7397,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7400
      start: 7380
    functionDepth: 1
    functionLinenumber: 7380
    functionLinenumberEnd: 7400
    functionName: stri_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - GF_SAFE_ALLOC_N
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stri_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:7404,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7406
      start: 7402
    functionDepth: 1
    functionLinenumber: 7402
    functionLinenumberEnd: 7406
    functionName: stri_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *stri_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:7416,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:7419,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:7420,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7421,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7423,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7426
      start: 7411
    functionDepth: 3
    functionLinenumber: 7411
    functionLinenumberEnd: 7426
    functionName: stri_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_full_box_write
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stri_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7434
      start: 7428
    functionDepth: 0
    functionLinenumber: 7428
    functionLinenumberEnd: 7434
    functionName: stri_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stri_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7442,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7443,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7444
      start: 7438
    functionDepth: 0
    functionLinenumber: 7438
    functionLinenumberEnd: 7444
    functionName: stsg_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void stsg_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7450,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7451,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:7452,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7453,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:7454,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7457,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7460
      start: 7446
    functionDepth: 1
    functionLinenumber: 7446
    functionLinenumberEnd: 7460
    functionName: stsg_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_SAFE_ALLOC_N
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsg_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:7464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7466
      start: 7462
    functionDepth: 1
    functionLinenumber: 7462
    functionLinenumberEnd: 7466
    functionName: stsg_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *stsg_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:7476,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7479,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:7480,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7482,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7485
      start: 7471
    functionDepth: 3
    functionLinenumber: 7471
    functionLinenumberEnd: 7485
    functionName: stsg_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    - gf_bs_write_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsg_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7492
      start: 7487
    functionDepth: 0
    functionLinenumber: 7487
    functionLinenumberEnd: 7492
    functionName: stsg_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stsg_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7499,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7500
      start: 7497
    functionDepth: 0
    functionLinenumber: 7497
    functionLinenumberEnd: 7500
    functionName: strk_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void strk_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7508,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7511,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7515
      start: 7502
    functionDepth: 1
    functionLinenumber: 7502
    functionLinenumberEnd: 7515
    functionName: strk_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err strk_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:7522,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7526,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7530
      start: 7518
    functionDepth: 2
    functionLinenumber: 7518
    functionLinenumberEnd: 7530
    functionName: strk_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err strk_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:7534,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7536
      start: 7532
    functionDepth: 1
    functionLinenumber: 7532
    functionLinenumberEnd: 7536
    functionName: strk_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *strk_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:7543,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7544
      start: 7541
    functionDepth: 2
    functionLinenumber: 7541
    functionLinenumberEnd: 7544
    functionName: strk_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err strk_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7549
      start: 7546
    functionDepth: 0
    functionLinenumber: 7546
    functionLinenumberEnd: 7549
    functionName: strk_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err strk_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7557,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7558
      start: 7553
    functionDepth: 0
    functionLinenumber: 7553
    functionLinenumberEnd: 7558
    functionName: tref_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void tref_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:7563,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7564
      start: 7561
    functionDepth: 2
    functionLinenumber: 7561
    functionLinenumberEnd: 7564
    functionName: tref_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tref_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:7568,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7570
      start: 7566
    functionDepth: 1
    functionLinenumber: 7566
    functionLinenumberEnd: 7570
    functionName: tref_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tref_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:7577,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7578
      start: 7574
    functionDepth: 2
    functionLinenumber: 7574
    functionLinenumberEnd: 7578
    functionName: tref_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tref_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7583
      start: 7580
    functionDepth: 0
    functionLinenumber: 7580
    functionLinenumberEnd: 7583
    functionName: tref_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tref_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7591,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7592,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7593
      start: 7587
    functionDepth: 0
    functionLinenumber: 7587
    functionLinenumberEnd: 7593
    functionName: reftype_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void reftype_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:7606,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7610,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7613
      start: 7596
    functionDepth: 1
    functionLinenumber: 7596
    functionLinenumberEnd: 7613
    functionName: reftype_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err reftype_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:7617,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7619
      start: 7615
    functionDepth: 1
    functionLinenumber: 7615
    functionLinenumberEnd: 7619
    functionName: reftype_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *reftype_box_new()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/box_code_base.c:7636,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 3
    argNames:
    - ref
    - trackID
    - outRefIndex
    argTypes:
    - GF_TrackReferenceTypeBox*
    - GF_ISOTrackID
    - u16*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7642
      start: 7622
    functionDepth: 0
    functionLinenumber: 7622
    functionLinenumberEnd: 7642
    functionName: reftype_AddRefTrack
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 2
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err reftype_AddRefTrack(GF_TrackReferenceTypeBox *ref, GF_ISOTrackID
      trackID, u16 *outRefIndex)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:7655,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7659,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7662
      start: 7648
    functionDepth: 2
    functionLinenumber: 7648
    functionLinenumberEnd: 7662
    functionName: reftype_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err reftype_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7671
      start: 7665
    functionDepth: 0
    functionLinenumber: 7665
    functionLinenumberEnd: 7671
    functionName: reftype_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err reftype_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7683,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7684
      start: 7679
    functionDepth: 0
    functionLinenumber: 7679
    functionLinenumberEnd: 7684
    functionName: trex_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void trex_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7691,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7692,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7693,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7694,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7695,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7696,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7698
      start: 7687
    functionDepth: 1
    functionLinenumber: 7687
    functionLinenumberEnd: 7698
    functionName: trex_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trex_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:7702,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7704
      start: 7700
    functionDepth: 1
    functionLinenumber: 7700
    functionLinenumberEnd: 7704
    functionName: trex_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *trex_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:7716,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7719,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7721,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7722,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7723,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7724,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7726
      start: 7711
    functionDepth: 3
    functionLinenumber: 7711
    functionLinenumberEnd: 7726
    functionName: trex_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trex_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7733
      start: 7728
    functionDepth: 0
    functionLinenumber: 7728
    functionLinenumberEnd: 7733
    functionName: trex_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trex_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7745,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7746
      start: 7741
    functionDepth: 0
    functionLinenumber: 7741
    functionLinenumberEnd: 7746
    functionName: trep_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void trep_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7753,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7754,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:7756,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7757
      start: 7749
    functionDepth: 2
    functionLinenumber: 7749
    functionLinenumberEnd: 7757
    functionName: trep_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trep_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:7761,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:7762,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7764
      start: 7759
    functionDepth: 1
    functionLinenumber: 7759
    functionLinenumberEnd: 7764
    functionName: trep_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *trep_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:7776,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7779,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7781
      start: 7771
    functionDepth: 3
    functionLinenumber: 7771
    functionLinenumberEnd: 7781
    functionName: trep_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trep_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7788
      start: 7783
    functionDepth: 0
    functionLinenumber: 7783
    functionLinenumberEnd: 7788
    functionName: trep_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trep_box_size(GF_Box *s)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7805,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:7806,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7807,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:7809,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/isomedia/box_code_base.c:7810,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7811,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7812,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:7814,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7816,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7817
      start: 7800
    functionDepth: 1
    functionLinenumber: 7800
    functionLinenumberEnd: 7817
    functionName: trun_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_bs_del
    - gf_list_count
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void trun_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - field_idx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7825
      start: 7821
    functionDepth: 0
    functionLinenumber: 7821
    functionLinenumberEnd: 7825
    functionName: ctrn_field_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ctrn_field_size(u32 field_idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - field_idx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7831
      start: 7827
    functionDepth: 0
    functionLinenumber: 7827
    functionLinenumberEnd: 7831
    functionName: gf_isom_ctrn_field_size_bits
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_ctrn_field_size_bits(u32 field_idx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:7834,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - bs
    - nbbits
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7838
      start: 7832
    functionDepth: 1
    functionLinenumber: 7832
    functionLinenumberEnd: 7838
    functionName: ctrn_read_flags
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: u32
    signature: u32 ctrn_read_flags(GF_BitStream *bs, u32 nbbits)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:7850,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7851,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:7855,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7856,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7858,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7859,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:7864,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7865,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:7869,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:7872,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:7877,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:7879,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:7897,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:7900,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:7900,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7901,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:7901,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:7904,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:7904,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7905,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:7905,1
    - Dst: ctrn_read_flags
      Src: /src/gpac/src/isomedia/box_code_base.c:7908,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:7908,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7909,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:7909,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:7912,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:7912,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7913,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:7913,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:7920,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7921,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:7923,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:7924,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:7928,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7929,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:7931,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:7932,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:7936,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7937,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:7939,1
    - Dst: ctrn_read_flags
      Src: /src/gpac/src/isomedia/box_code_base.c:7940,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:7944,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7945,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:7947,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:7948,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 100
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7955
      start: 7840
    functionDepth: 2
    functionLinenumber: 7840
    functionLinenumberEnd: 7955
    functionName: ctrn_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_bs_read_u32
    - gf_isom_ctrn_field_size_bits
    - GF_SAFEALLOC
    - ctrn_read_flags
    - ctrn_field_size
    - gf_list_add
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ctrn_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: ctrn_box_read
      Src: /src/gpac/src/isomedia/box_code_base.c:7967,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7975,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7976,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7980,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7981,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7984,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7985,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:7988,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:7991,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:8003,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:8007,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:8010,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:8014,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8022,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8029,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8034,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8039,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8041,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:8045,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_base.c:8050,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 78
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8054
      start: 7958
    functionDepth: 3
    functionLinenumber: 7958
    functionLinenumberEnd: 8054
    functionName: trun_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_LOG
    - memset
    - ctrn_box_read
    - ISOM_DECREASE_SIZE
    - gf_malloc
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trun_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:8058,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8061
      start: 8056
    functionDepth: 1
    functionLinenumber: 8056
    functionLinenumberEnd: 8061
    functionName: trun_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *trun_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:8072,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - bs
    - flags
    - field_size
    argTypes:
    - GF_BitStream*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8073
      start: 8066
    functionDepth: 1
    functionLinenumber: 8066
    functionLinenumberEnd: 8073
    functionName: ctrn_write_sample_flags
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: void
    signature: void ctrn_write_sample_flags(GF_BitStream *bs, u32 flags, u32 field_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:8081,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:8083,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ctrn
    - bs
    - ctso
    - field_size
    argTypes:
    - GF_TrackFragmentRunBox*
    - GF_BitStream*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8085
      start: 8076
    functionDepth: 1
    functionLinenumber: 8076
    functionLinenumberEnd: 8085
    functionName: ctrn_write_ctso
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: void
    signature: void ctrn_write_ctso(GF_TrackFragmentRunBox *ctrn, GF_BitStream *bs,
      u32 ctso, u32 field_size)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:8098,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:8103,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:8106,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8108,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:8112,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8115,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:8116,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:8116,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:8117,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:8117,1
    - Dst: ctrn_write_sample_flags
      Src: /src/gpac/src/isomedia/box_code_base.c:8118,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:8118,1
    - Dst: ctrn_write_ctso
      Src: /src/gpac/src/isomedia/box_code_base.c:8119,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:8119,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:8121,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:8123,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8125,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:8126,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:8130,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8132,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:8133,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:8137,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8139,1
    - Dst: ctrn_write_sample_flags
      Src: /src/gpac/src/isomedia/box_code_base.c:8140,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:8144,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8146,1
    - Dst: ctrn_write_ctso
      Src: /src/gpac/src/isomedia/box_code_base.c:8147,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 49
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8152
      start: 8087
    functionDepth: 3
    functionLinenumber: 8087
    functionLinenumberEnd: 8152
    functionName: ctrn_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_full_box_write
    - gf_isom_ctrn_field_size_bits
    - gf_bs_write_int
    - gf_bs_write_u16
    - ctrn_write_sample_flags
    - ctrn_write_ctso
    - gf_list_count
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ctrn_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: ctrn_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:8164,1
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:8167,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8170,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8174,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8177,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8185,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8188,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8192,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8196,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8198,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:8211,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 47
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8215
      start: 8155
    functionDepth: 4
    functionLinenumber: 8155
    functionLinenumberEnd: 8215
    functionName: trun_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_isom_full_box_write
    - ctrn_box_write
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trun_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - val
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8226
      start: 8218
    functionDepth: 0
    functionLinenumber: 8218
    functionLinenumberEnd: 8226
    functionName: ctrn_sample_flags_to_index
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ctrn_sample_flags_to_index(u32 val)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - val
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8233
      start: 8227
    functionDepth: 0
    functionLinenumber: 8227
    functionLinenumberEnd: 8233
    functionName: ctrn_u32_to_index
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ctrn_u32_to_index(u32 val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ABS
      Src: /src/gpac/src/isomedia/box_code_base.c:8237,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/box_code_base.c:8238,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - val
    argTypes:
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8240
      start: 8234
    functionDepth: 1
    functionLinenumber: 8234
    functionLinenumberEnd: 8240
    functionName: ctrn_s32_to_index
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ABS
    linkageType: ''
    returnType: u32
    signature: u32 ctrn_s32_to_index(s32 val)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ctrn_s32_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8249,1
    - Dst: ctrn_s32_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8250,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/box_code_base.c:8252,1
    - Dst: ctrn_u32_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8253,1
    - Dst: ctrn_s32_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8254,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - ctrn
    - ctts
    argTypes:
    - GF_TrackFragmentRunBox*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8255
      start: 8241
    functionDepth: 2
    functionLinenumber: 8241
    functionLinenumberEnd: 8255
    functionName: ctrn_ctts_to_index
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - ctrn_u32_to_index
    - ctrn_s32_to_index
    linkageType: ''
    returnType: u32
    signature: u32 ctrn_ctts_to_index(GF_TrackFragmentRunBox *ctrn, s32 ctts)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: ABS
      Src: /src/gpac/src/isomedia/box_code_base.c:8270,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:8277,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8280,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8302,1
    - Dst: ctrn_u32_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8306,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:8308,1
    - Dst: ctrn_u32_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8314,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:8316,1
    - Dst: ctrn_sample_flags_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8322,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:8324,1
    - Dst: ctrn_ctts_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8329,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:8331,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8338,1
    - Dst: ctrn_u32_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8341,1
    - Dst: ctrn_u32_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8346,1
    - Dst: ctrn_sample_flags_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8351,1
    - Dst: ctrn_ctts_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8356,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:8363,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:8367,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:8371,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:8375,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 104
    argCount: 1
    argNames:
    - ctrn
    argTypes:
    - GF_TrackFragmentRunBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8379
      start: 8257
    functionDepth: 3
    functionLinenumber: 8257
    functionLinenumberEnd: 8379
    functionName: ctrn_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - ABS
    - ctrn_sample_flags_to_index
    - ctrn_u32_to_index
    - gf_list_count
    - ctrn_field_size
    - ctrn_ctts_to_index
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ctrn_box_size(GF_TrackFragmentRunBox *ctrn)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: ctrn_box_size
      Src: /src/gpac/src/isomedia/box_code_base.c:8388,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 29
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8416
      start: 8382
    functionDepth: 4
    functionLinenumber: 8382
    functionLinenumberEnd: 8416
    functionName: trun_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ctrn_box_size
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trun_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8429
      start: 8425
    functionDepth: 0
    functionLinenumber: 8425
    functionLinenumberEnd: 8429
    functionName: tsro_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void tsro_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:8434,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8435,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8437
      start: 8431
    functionDepth: 1
    functionLinenumber: 8431
    functionLinenumberEnd: 8437
    functionName: tsro_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tsro_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:8441,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8443
      start: 8439
    functionDepth: 1
    functionLinenumber: 8439
    functionLinenumberEnd: 8443
    functionName: tsro_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tsro_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:8453,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8455,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8457
      start: 8447
    functionDepth: 2
    functionLinenumber: 8447
    functionLinenumberEnd: 8457
    functionName: tsro_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tsro_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8463
      start: 8459
    functionDepth: 0
    functionLinenumber: 8459
    functionLinenumberEnd: 8463
    functionName: tsro_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tsro_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_code_base.c:8474,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/box_code_base.c:8475,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8476,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:8478,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8479,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8480
      start: 8467
    functionDepth: 3
    functionLinenumber: 8467
    functionLinenumberEnd: 8480
    functionName: udta_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_del
    - gf_list_enum
    - gf_isom_box_array_del
    linkageType: ''
    returnType: void
    signature: void udta_box_del(GF_Box *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_code_base.c:8488,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/box_code_base.c:8491,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 3
    argNames:
    - ptr
    - box_type
    - uuid
    argTypes:
    - GF_UserDataBox*
    - u32
    - bin128*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8495
      start: 8482
    functionDepth: 1
    functionLinenumber: 8482
    functionLinenumberEnd: 8495
    functionName: udta_getEntry
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 11
    functionsReached:
    - gf_list_enum
    - memcmp
    linkageType: ''
    returnType: GF_UserDataMap
    signature: GF_UserDataMap *udta_getEntry(GF_UserDataBox *ptr, u32 box_type, bin128
      *uuid)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/box_code_base.c:8507,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/box_code_base.c:8516,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:8520,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:8522,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_code_base.c:8526,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:8527,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8529,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:8532,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/box_code_base.c:8536,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:8541,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8543,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/box_code_base.c:8548,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_base.c:8550,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_base.c:8551,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:8556,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 50
    argCount: 4
    argNames:
    - s
    - a
    - is_rem
    - rem_same_type
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8557
      start: 8497
    functionDepth: 4
    functionLinenumber: 8497
    functionLinenumberEnd: 8557
    functionName: udta_on_child_box_ex
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_list_get
    - memcmp
    - gf_isom_box_del
    - memcpy
    - gf_list_count
    - memset
    - gf_list_add
    - gf_list_del_item
    - udta_getEntry
    - gf_malloc
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err udta_on_child_box_ex(GF_Box *s, GF_Box *a, Bool is_rem, Bool
      rem_same_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/box_code_base.c:8560,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8561
      start: 8558
    functionDepth: 5
    functionLinenumber: 8558
    functionLinenumberEnd: 8561
    functionName: udta_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - udta_on_child_box_ex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err udta_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:8565,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8568,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:8571,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8575
      start: 8563
    functionDepth: 2
    functionLinenumber: 8563
    functionLinenumberEnd: 8575
    functionName: udta_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_read_u32
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err udta_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:8579,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:8580,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8582,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8586
      start: 8577
    functionDepth: 1
    functionLinenumber: 8577
    functionLinenumberEnd: 8586
    functionName: udta_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *udta_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:8598,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_code_base.c:8601,1
    - Dst: gf_isom_box_array_write
      Src: /src/gpac/src/isomedia/box_code_base.c:8604,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8608
      start: 8591
    functionDepth: 2
    functionLinenumber: 8591
    functionLinenumberEnd: 8608
    functionName: udta_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_isom_box_write_header
    - gf_isom_box_array_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err udta_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_code_base.c:8618,1
    - Dst: gf_isom_box_array_size
      Src: /src/gpac/src/isomedia/box_code_base.c:8621,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8625
      start: 8610
    functionDepth: 2
    functionLinenumber: 8610
    functionLinenumberEnd: 8625
    functionName: udta_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_isom_box_array_size
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err udta_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8634,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8635
      start: 8630
    functionDepth: 0
    functionLinenumber: 8630
    functionLinenumberEnd: 8635
    functionName: vmhd_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void vmhd_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:8642,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:8643,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8645
      start: 8638
    functionDepth: 1
    functionLinenumber: 8638
    functionLinenumberEnd: 8645
    functionName: vmhd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u64
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vmhd_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:8649,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8652
      start: 8647
    functionDepth: 1
    functionLinenumber: 8647
    functionLinenumberEnd: 8652
    functionName: vmhd_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *vmhd_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:8663,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:8665,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8667
      start: 8658
    functionDepth: 3
    functionLinenumber: 8658
    functionLinenumberEnd: 8667
    functionName: vmhd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u64
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vmhd_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8674
      start: 8669
    functionDepth: 0
    functionLinenumber: 8669
    functionLinenumberEnd: 8674
    functionName: vmhd_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vmhd_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8680,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8681
      start: 8678
    functionDepth: 0
    functionLinenumber: 8678
    functionLinenumberEnd: 8681
    functionName: void_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void void_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8688
      start: 8684
    functionDepth: 0
    functionLinenumber: 8684
    functionLinenumberEnd: 8688
    functionName: void_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err void_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:8692,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8694
      start: 8690
    functionDepth: 1
    functionLinenumber: 8690
    functionLinenumberEnd: 8694
    functionName: void_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *void_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8701,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8703
      start: 8699
    functionDepth: 1
    functionLinenumber: 8699
    functionLinenumberEnd: 8703
    functionName: void_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err void_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8709
      start: 8705
    functionDepth: 0
    functionLinenumber: 8705
    functionLinenumberEnd: 8709
    functionName: void_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err void_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:8717,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8719
      start: 8715
    functionDepth: 1
    functionLinenumber: 8715
    functionLinenumberEnd: 8719
    functionName: pdin_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *pdin_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8726,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8727,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8728,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8729
      start: 8722
    functionDepth: 0
    functionLinenumber: 8722
    functionLinenumberEnd: 8729
    functionName: pdin_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void pdin_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:8738,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:8740,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8743,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8744,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8747
      start: 8732
    functionDepth: 1
    functionLinenumber: 8732
    functionLinenumberEnd: 8747
    functionName: pdin_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pdin_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:8757,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8760,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8761,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8764
      start: 8752
    functionDepth: 3
    functionLinenumber: 8752
    functionLinenumberEnd: 8764
    functionName: pdin_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pdin_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8771
      start: 8766
    functionDepth: 0
    functionLinenumber: 8766
    functionLinenumberEnd: 8771
    functionName: pdin_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pdin_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:8780,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8782
      start: 8778
    functionDepth: 1
    functionLinenumber: 8778
    functionLinenumberEnd: 8782
    functionName: sdtp_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *sdtp_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8789,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8790,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8791
      start: 8785
    functionDepth: 0
    functionLinenumber: 8785
    functionLinenumberEnd: 8791
    functionName: sdtp_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void sdtp_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:8802,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:8805,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:8806,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8808
      start: 8794
    functionDepth: 1
    functionLinenumber: 8794
    functionLinenumberEnd: 8808
    functionName: sdtp_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - ISOM_DECREASE_SIZE
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sdtp_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:8817,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:8819,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8821
      start: 8813
    functionDepth: 3
    functionLinenumber: 8813
    functionLinenumberEnd: 8821
    functionName: sdtp_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sdtp_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8828
      start: 8823
    functionDepth: 0
    functionLinenumber: 8823
    functionLinenumberEnd: 8828
    functionName: sdtp_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sdtp_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:8835,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8837
      start: 8833
    functionDepth: 1
    functionLinenumber: 8833
    functionLinenumberEnd: 8837
    functionName: pasp_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *pasp_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8844,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8845
      start: 8840
    functionDepth: 0
    functionLinenumber: 8840
    functionLinenumberEnd: 8845
    functionName: pasp_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void pasp_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:8851,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8852,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8853,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8855
      start: 8848
    functionDepth: 1
    functionLinenumber: 8848
    functionLinenumberEnd: 8855
    functionName: pasp_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pasp_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:8863,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8865,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8866,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8868
      start: 8860
    functionDepth: 2
    functionLinenumber: 8860
    functionLinenumberEnd: 8868
    functionName: pasp_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pasp_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8874
      start: 8870
    functionDepth: 0
    functionLinenumber: 8870
    functionLinenumberEnd: 8874
    functionName: pasp_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pasp_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:8882,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8884
      start: 8880
    functionDepth: 1
    functionLinenumber: 8880
    functionLinenumberEnd: 8884
    functionName: clap_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *clap_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8891,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8892
      start: 8887
    functionDepth: 0
    functionLinenumber: 8887
    functionLinenumberEnd: 8892
    functionName: clap_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void clap_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:8898,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8899,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8900,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8901,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8902,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8903,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8904,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8905,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8906,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8908
      start: 8895
    functionDepth: 1
    functionLinenumber: 8895
    functionLinenumberEnd: 8908
    functionName: clap_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err clap_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:8916,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8918,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8919,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8920,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8921,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8922,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8923,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8924,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8925,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8927
      start: 8913
    functionDepth: 2
    functionLinenumber: 8913
    functionLinenumberEnd: 8927
    functionName: clap_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err clap_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8933
      start: 8929
    functionDepth: 0
    functionLinenumber: 8929
    functionLinenumberEnd: 8933
    functionName: clap_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err clap_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:8943,1
    - Dst: gf_isom_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_base.c:8944,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8946
      start: 8940
    functionDepth: 1
    functionLinenumber: 8940
    functionLinenumberEnd: 8946
    functionName: metx_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_entry_init
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *metx_box_new()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_predestroy
      Src: /src/gpac/src/isomedia/box_code_base.c:8953,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8955,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8956,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8957,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8958,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8959,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8960
      start: 8949
    functionDepth: 1
    functionLinenumber: 8949
    functionLinenumberEnd: 8960
    functionName: metx_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_sample_entry_predestroy
    linkageType: ''
    returnType: void
    signature: void metx_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:8969,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8973
      start: 8963
    functionDepth: 1
    functionLinenumber: 8963
    functionLinenumberEnd: 8973
    functionName: metx_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err metx_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_base_sample_entry_read
      Src: /src/gpac/src/isomedia/box_code_base.c:8982,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:8984,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:8987,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:8992,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:8997,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:9006,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9007,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_base.c:9012,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_base.c:9014,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9020,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:9029,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9030,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_base.c:9036,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_base.c:9038,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9044,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:9053,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9054,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_base.c:9059,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_base.c:9061,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_base.c:9067,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9070,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:9071,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 87
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9072
      start: 8975
    functionDepth: 2
    functionLinenumber: 8975
    functionLinenumberEnd: 9072
    functionName: metx_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_isom_base_sample_entry_read
    - gf_malloc
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err metx_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:9080,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9083,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:9084,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9088,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9088,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9089,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9094,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9094,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9096,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9099,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9099,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9100,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9104,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9104,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9106,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9112,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9112,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9114,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9118
      start: 9077
    functionDepth: 2
    functionLinenumber: 9077
    functionLinenumberEnd: 9118
    functionName: metx_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u16
    - gf_bs_write_data
    - gf_bs_write_u8
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err metx_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9127,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9134,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9138,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9143,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9151,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9155
      start: 9120
    functionDepth: 0
    functionLinenumber: 9120
    functionLinenumberEnd: 9155
    functionName: metx_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err metx_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:9163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9165
      start: 9161
    functionDepth: 1
    functionLinenumber: 9161
    functionLinenumberEnd: 9165
    functionName: txtc_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *txtc_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9173,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9174,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9175
      start: 9168
    functionDepth: 0
    functionLinenumber: 9168
    functionLinenumberEnd: 9175
    functionName: txtc_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void txtc_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:9181,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:9184,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9186,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9189
      start: 9177
    functionDepth: 1
    functionLinenumber: 9177
    functionLinenumberEnd: 9189
    functionName: txtc_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - GF_LOG
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txtc_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:9197,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9201,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9201,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9202,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9204
      start: 9194
    functionDepth: 3
    functionLinenumber: 9194
    functionLinenumberEnd: 9204
    functionName: txtc_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u8
    - strlen
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txtc_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9210,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9213
      start: 9206
    functionDepth: 0
    functionLinenumber: 9206
    functionLinenumberEnd: 9213
    functionName: txtc_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txtc_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:9219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9221
      start: 9217
    functionDepth: 1
    functionLinenumber: 9217
    functionLinenumberEnd: 9221
    functionName: dac3_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *dac3_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:9225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9228
      start: 9223
    functionDepth: 1
    functionLinenumber: 9223
    functionLinenumberEnd: 9228
    functionName: dec3_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *dec3_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9234
      start: 9230
    functionDepth: 0
    functionLinenumber: 9230
    functionLinenumberEnd: 9234
    functionName: dac3_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void dac3_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:9243,1
    - Dst: gf_odf_ac3_cfg_parse_bs
      Src: /src/gpac/src/isomedia/box_code_base.c:9244,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:9246,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9247,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9251,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9252,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9253,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_base.c:9256,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9259
      start: 9237
    functionDepth: 1
    functionLinenumber: 9237
    functionLinenumberEnd: 9259
    functionName: dac3_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_odf_ac3_cfg_parse_bs
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dac3_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:9270,1
    - Dst: gf_odf_ac3_cfg_write_bs
      Src: /src/gpac/src/isomedia/box_code_base.c:9274,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9278,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9279,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9280,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9283
      start: 9264
    functionDepth: 2
    functionLinenumber: 9264
    functionLinenumberEnd: 9283
    functionName: dac3_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_odf_ac3_cfg_write_bs
    - gf_isom_box_write_header
    - gf_bs_write_int
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dac3_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9304
      start: 9285
    functionDepth: 0
    functionLinenumber: 9285
    functionLinenumberEnd: 9304
    functionName: dac3_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dac3_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:9311,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9313
      start: 9309
    functionDepth: 1
    functionLinenumber: 9309
    functionLinenumberEnd: 9313
    functionName: dac4_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *dac4_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_ac4_cfg_clean_list
      Src: /src/gpac/src/isomedia/box_code_base.c:9318,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9320
      start: 9315
    functionDepth: 1
    functionLinenumber: 9315
    functionLinenumberEnd: 9320
    functionName: dac4_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_ac4_cfg_clean_list
    linkageType: ''
    returnType: void
    signature: void dac4_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:9330,1
    - Dst: gf_odf_ac4_cfg_parse_bs
      Src: /src/gpac/src/isomedia/box_code_base.c:9331,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:9334,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9335,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_base.c:9338,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9341
      start: 9323
    functionDepth: 1
    functionLinenumber: 9323
    functionLinenumberEnd: 9341
    functionName: dac4_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_odf_ac4_cfg_parse_bs
    - ISOM_DECREASE_SIZE
    - gf_bs_skip_bytes
    - gf_bs_get_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dac4_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:9351,1
    - Dst: gf_odf_ac4_cfg_write_bs
      Src: /src/gpac/src/isomedia/box_code_base.c:9354,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9358
      start: 9346
    functionDepth: 2
    functionLinenumber: 9346
    functionLinenumberEnd: 9358
    functionName: dac4_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_odf_ac4_cfg_write_bs
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dac4_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_ac4_cfg_size
      Src: /src/gpac/src/isomedia/box_code_base.c:9364,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9366
      start: 9360
    functionDepth: 1
    functionLinenumber: 9360
    functionLinenumberEnd: 9366
    functionName: dac4_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_odf_ac4_cfg_size
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dac4_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9375,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9376,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9377
      start: 9371
    functionDepth: 0
    functionLinenumber: 9371
    functionLinenumberEnd: 9377
    functionName: lsrc_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void lsrc_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:9384,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9386,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9388
      start: 9380
    functionDepth: 1
    functionLinenumber: 9380
    functionLinenumberEnd: 9388
    functionName: lsrc_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsrc_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:9392,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9394
      start: 9390
    functionDepth: 1
    functionLinenumber: 9390
    functionLinenumberEnd: 9394
    functionName: lsrc_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *lsrc_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:9403,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9405,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9407
      start: 9399
    functionDepth: 2
    functionLinenumber: 9399
    functionLinenumberEnd: 9407
    functionName: lsrc_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsrc_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9414
      start: 9409
    functionDepth: 0
    functionLinenumber: 9409
    functionLinenumberEnd: 9414
    functionName: lsrc_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsrc_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_predestroy
      Src: /src/gpac/src/isomedia/box_code_base.c:9423,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/box_code_base.c:9424,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9425,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9426
      start: 9419
    functionDepth: 1
    functionLinenumber: 9419
    functionLinenumberEnd: 9426
    functionName: lsr1_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_sample_entry_predestroy
    - gf_odf_desc_del
    linkageType: ''
    returnType: void
    signature: void lsr1_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:9433,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:9436,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9440
      start: 9428
    functionDepth: 1
    functionLinenumber: 9428
    functionLinenumberEnd: 9440
    functionName: lsr1_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsr1_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_base_sample_entry_read
      Src: /src/gpac/src/isomedia/box_code_base.c:9447,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9450,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:9452,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9453
      start: 9442
    functionDepth: 2
    functionLinenumber: 9442
    functionLinenumberEnd: 9453
    functionName: lsr1_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_base_sample_entry_read
    - ISOM_DECREASE_SIZE
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsr1_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:9457,1
    - Dst: gf_isom_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_base.c:9458,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9460
      start: 9455
    functionDepth: 1
    functionLinenumber: 9455
    functionLinenumberEnd: 9460
    functionName: lsr1_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_entry_init
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *lsr1_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:9470,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9473,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:9474,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9476
      start: 9466
    functionDepth: 2
    functionLinenumber: 9466
    functionLinenumberEnd: 9476
    functionName: lsr1_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u16
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsr1_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:9483,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9485
      start: 9478
    functionDepth: 2
    functionLinenumber: 9478
    functionLinenumberEnd: 9485
    functionName: lsr1_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsr1_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9494,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9495,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9496
      start: 9490
    functionDepth: 0
    functionLinenumber: 9490
    functionLinenumberEnd: 9496
    functionName: sidx_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void sidx_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9503,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9504,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9505,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9508,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9509,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9510,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9512,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:9513,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:9514,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9516,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:9517,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:9518,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:9520,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9523,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9524,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9525,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9526,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9527,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9528,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9530,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 29
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9533
      start: 9498
    functionDepth: 1
    functionLinenumber: 9498
    functionLinenumberEnd: 9533
    functionName: sidx_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_bs_read_u64
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sidx_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:9537,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9539
      start: 9535
    functionDepth: 1
    functionLinenumber: 9535
    functionLinenumberEnd: 9539
    functionName: sidx_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *sidx_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:9550,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9553,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9554,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9556,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9557,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:9559,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:9560,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:9562,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:9563,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9565,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9566,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9567,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9568,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9569,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9570,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9573
      start: 9544
    functionDepth: 3
    functionLinenumber: 9544
    functionLinenumberEnd: 9573
    functionName: sidx_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_bs_write_u64
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sidx_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9587
      start: 9575
    functionDepth: 0
    functionLinenumber: 9575
    functionLinenumberEnd: 9587
    functionName: sidx_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sidx_box_size(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9599,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9601,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9603,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9604
      start: 9591
    functionDepth: 0
    functionLinenumber: 9591
    functionLinenumberEnd: 9604
    functionName: ssix_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void ssix_box_del(GF_Box *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9611,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9612,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:9618,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9623,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9624,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:9628,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9631,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9632,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/isomedia/box_code_base.c:9633,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9637
      start: 9606
    functionDepth: 1
    functionLinenumber: 9606
    functionLinenumberEnd: 9637
    functionName: ssix_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_malloc
    - gf_bs_read_u24
    - GF_SAFE_ALLOC_N
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ssix_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:9641,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9643
      start: 9639
    functionDepth: 1
    functionLinenumber: 9639
    functionLinenumberEnd: 9643
    functionName: ssix_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *ssix_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:9654,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9657,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9659,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9661,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/isomedia/box_code_base.c:9662,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9666
      start: 9648
    functionDepth: 3
    functionLinenumber: 9648
    functionLinenumberEnd: 9666
    functionName: ssix_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_bs_write_u24
    - gf_isom_full_box_write
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ssix_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9678
      start: 9668
    functionDepth: 0
    functionLinenumber: 9668
    functionLinenumberEnd: 9678
    functionName: ssix_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ssix_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9686,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9687,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9688
      start: 9682
    functionDepth: 0
    functionLinenumber: 9682
    functionLinenumberEnd: 9688
    functionName: leva_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void leva_box_del(GF_Box *s)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9695,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9696,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:9701,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9708,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9710,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9711,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9715,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9716,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9719,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9720,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9721,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9724,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9725,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9729
      start: 9690
    functionDepth: 1
    functionLinenumber: 9690
    functionLinenumberEnd: 9729
    functionName: leva_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_SAFE_ALLOC_N
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err leva_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:9733,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9735
      start: 9731
    functionDepth: 1
    functionLinenumber: 9731
    functionLinenumberEnd: 9735
    functionName: leva_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *leva_box_new()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:9746,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9749,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9751,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9752,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9754,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9757,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9758,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9761,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9765
      start: 9740
    functionDepth: 3
    functionLinenumber: 9740
    functionLinenumberEnd: 9765
    functionName: leva_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u8
    - gf_isom_full_box_write
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err leva_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9783
      start: 9767
    functionDepth: 0
    functionLinenumber: 9767
    functionLinenumberEnd: 9783
    functionName: leva_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err leva_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:9788,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9790
      start: 9786
    functionDepth: 1
    functionLinenumber: 9786
    functionLinenumberEnd: 9790
    functionName: pcrb_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *pcrb_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9796,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9797,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9798
      start: 9792
    functionDepth: 0
    functionLinenumber: 9792
    functionLinenumberEnd: 9798
    functionName: pcrb_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void pcrb_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9805,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9806,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:9809,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:9813,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9816,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:9817,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9818,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9823
      start: 9800
    functionDepth: 1
    functionLinenumber: 9800
    functionLinenumberEnd: 9823
    functionName: pcrb_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pcrb_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:9833,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9836,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9842,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:9843,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9846
      start: 9827
    functionDepth: 2
    functionLinenumber: 9827
    functionLinenumberEnd: 9846
    functionName: pcrb_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    - gf_bs_write_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pcrb_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9856
      start: 9848
    functionDepth: 0
    functionLinenumber: 9848
    functionLinenumberEnd: 9856
    functionName: pcrb_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pcrb_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:9863,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:9864,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9866
      start: 9861
    functionDepth: 1
    functionLinenumber: 9861
    functionLinenumberEnd: 9866
    functionName: subs_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *subs_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:9873,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:9875,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:9876,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:9878,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9879,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_base.c:9880,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:9882,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9883,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_base.c:9884,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:9886,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9887,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9888
      start: 9868
    functionDepth: 1
    functionLinenumber: 9868
    functionLinenumberEnd: 9888
    functionName: subs_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void subs_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:9902,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:9904,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9905,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:9908,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:9909,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9910,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:9911,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:9914,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9916,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:9918,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9920,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9921,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9922,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9926
      start: 9893
    functionDepth: 3
    functionLinenumber: 9893
    functionLinenumberEnd: 9926
    functionName: subs_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_full_box_write
    - gf_bs_write_u16
    - gf_list_count
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err subs_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:9936,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:9938,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:9939,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9945
      start: 9928
    functionDepth: 1
    functionLinenumber: 9928
    functionLinenumberEnd: 9945
    functionName: subs_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err subs_box_size(GF_Box *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9955,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9956,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/box_code_base.c:9958,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:9959,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/box_code_base.c:9959,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:9965,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:9968,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:9969,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9970,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:9971,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:9975,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:9978,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9980,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:9983,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9986,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9987,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9988,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:9991,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:9993,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9994,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 36
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9997
      start: 9949
    functionDepth: 1
    functionLinenumber: 9949
    functionLinenumberEnd: 9997
    functionName: subs_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_bs_read_u32
    - GF_LOG
    - memset
    - gf_list_add
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - gf_bs_available
    - gf_bs_read_u8
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err subs_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10004,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10006
      start: 10002
    functionDepth: 1
    functionLinenumber: 10002
    functionLinenumberEnd: 10006
    functionName: tfdt_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *tfdt_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10010,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10011
      start: 10008
    functionDepth: 0
    functionLinenumber: 10008
    functionLinenumberEnd: 10011
    functionName: tfdt_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void tfdt_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10019,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:10020,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10022,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10023,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10026
      start: 10014
    functionDepth: 1
    functionLinenumber: 10014
    functionLinenumberEnd: 10026
    functionName: tfdt_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u64
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tfdt_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:10034,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:10038,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10040,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10043
      start: 10030
    functionDepth: 3
    functionLinenumber: 10030
    functionLinenumberEnd: 10043
    functionName: tfdt_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tfdt_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10057
      start: 10045
    functionDepth: 0
    functionLinenumber: 10045
    functionLinenumberEnd: 10057
    functionName: tfdt_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tfdt_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10063,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10065
      start: 10061
    functionDepth: 1
    functionLinenumber: 10061
    functionLinenumberEnd: 10065
    functionName: rsot_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *rsot_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10069,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10070
      start: 10067
    functionDepth: 0
    functionLinenumber: 10067
    functionLinenumberEnd: 10070
    functionName: rsot_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void rsot_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10078,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10079,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10082,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10083,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10086
      start: 10073
    functionDepth: 1
    functionLinenumber: 10073
    functionLinenumberEnd: 10086
    functionName: rsot_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rsot_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:10094,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10098,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10101,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10104
      start: 10090
    functionDepth: 3
    functionLinenumber: 10090
    functionLinenumberEnd: 10104
    functionName: rsot_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rsot_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10119
      start: 10106
    functionDepth: 0
    functionLinenumber: 10106
    functionLinenumberEnd: 10119
    functionName: rsot_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rsot_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10130
      start: 10126
    functionDepth: 1
    functionLinenumber: 10126
    functionLinenumberEnd: 10130
    functionName: rvcc_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *rvcc_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10135
      start: 10132
    functionDepth: 0
    functionLinenumber: 10132
    functionLinenumberEnd: 10135
    functionName: rvcc_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void rvcc_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10140,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10141,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10143,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10144,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10147
      start: 10137
    functionDepth: 1
    functionLinenumber: 10137
    functionLinenumberEnd: 10147
    functionName: rvcc_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rvcc_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:10156,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10159,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10161,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10164
      start: 10151
    functionDepth: 2
    functionLinenumber: 10151
    functionLinenumberEnd: 10164
    functionName: rvcc_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rvcc_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10172
      start: 10166
    functionDepth: 0
    functionLinenumber: 10166
    functionLinenumberEnd: 10172
    functionName: rvcc_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rvcc_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10182
      start: 10178
    functionDepth: 1
    functionLinenumber: 10178
    functionLinenumberEnd: 10182
    functionName: sbgp_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *sbgp_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10186,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10187,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10188
      start: 10183
    functionDepth: 0
    functionLinenumber: 10183
    functionLinenumberEnd: 10188
    functionName: sbgp_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void sbgp_box_del(GF_Box *a)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10195,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10196,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10199,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10200,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10202,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:10207,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10211,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10212,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10213,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10216
      start: 10190
    functionDepth: 1
    functionLinenumber: 10190
    functionLinenumberEnd: 10216
    functionName: sbgp_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sbgp_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:10225,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10227,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10229,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10231,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10233,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10234,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10237
      start: 10219
    functionDepth: 3
    functionLinenumber: 10219
    functionLinenumberEnd: 10237
    functionName: sbgp_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sbgp_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10249
      start: 10239
    functionDepth: 0
    functionLinenumber: 10239
    functionLinenumberEnd: 10249
    functionName: sbgp_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sbgp_box_size(GF_Box *s)
  - BBCount: 69
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10263,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10265,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10272,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10274,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10275,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10282,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10284,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10285,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10286,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10293,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10295,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10296,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10303,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10305,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10306,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10314,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10316,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10317,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10318,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10320,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10321,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10323,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10324,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:10326,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:10329,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10330,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10333,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:10337,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_base.c:10338,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:10342,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_base.c:10343,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10347,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:10351,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:10352,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10354,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_base.c:10357,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:10359,1
    - Dst: gf_cenc_validate_key_info
      Src: /src/gpac/src/isomedia/box_code_base.c:10362,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10363,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10364,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:10370,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:10371,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10374,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:10380,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:10382,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10383,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:10391,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10393,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_code_base.c:10400,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:10403,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:10409,1
    - Dst: gf_isom_oinf_new_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10415,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:10416,1
    - Dst: gf_isom_oinf_read_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10417,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:10418,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:10420,1
    - Dst: gf_isom_linf_new_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10426,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:10427,1
    - Dst: gf_isom_linf_read_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10428,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:10429,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:10431,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:10438,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:10445,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:10449,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:10454,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10457,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10458,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10459,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10460,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_base.c:10461,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:10465,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10485,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10487,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10488,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:10490,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10492,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10496,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/isomedia/box_code_base.c:10498,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10499,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10500,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10505,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10506,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10507,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10508,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10510,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10512,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10513,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10523,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10525,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10526,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:10528,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10530,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10534,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/isomedia/box_code_base.c:10536,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10537,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10538,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10547,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:10549,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10557,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10559,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10561,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:10565,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10567,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10571,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/isomedia/box_code_base.c:10573,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10574,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10575,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:10582,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:10589,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_code_base.c:10589,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10593,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:10597,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10599,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:10602,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 313
    argCount: 5
    argNames:
    - p
    - bs
    - bytes_in_box
    - entry_size
    - total_bytes
    argTypes:
    - GF_SampleGroupDescriptionBox*
    - GF_BitStream*
    - s32
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10606
      start: 10253
    functionDepth: 2
    functionLinenumber: 10253
    functionLinenumberEnd: 10606
    functionName: sgpd_parse_entry
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_read_data
    - gf_isom_linf_new_entry
    - gf_bs_peek_bits
    - GF_SAFEALLOC
    - gf_isom_oinf_new_entry
    - gf_bs_read_u16
    - gf_isom_linf_read_entry
    - gf_4cc_to_str
    - gf_bs_read_u32
    - memcpy
    - gf_cenc_validate_key_info
    - gf_isom_oinf_read_entry
    - gf_bs_skip_bytes
    - GF_LOG
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_bs_is_overflow
    - gf_malloc
    - gf_bs_seek
    - gf_bs_read_int
    linkageType: ''
    returnType: void
    signature: void *sgpd_parse_entry(GF_SampleGroupDescriptionBox *p, GF_BitStream
      *bs, s32 bytes_in_box, u32 entry_size, u32 *total_bytes)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10612,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10613,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10625,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10630,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10631,1
    - Dst: gf_isom_oinf_del_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10635,1
    - Dst: gf_isom_linf_del_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10638,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10643,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10644,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10651,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10652,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10656,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10662,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10663,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10670,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10671,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 56
    argCount: 3
    argNames:
    - grouping_type
    - entry
    - is_opaque
    argTypes:
    - u32
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10674
      start: 10608
    functionDepth: 2
    functionLinenumber: 10608
    functionLinenumberEnd: 10674
    functionName: sgpd_del_entry
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_isom_linf_del_entry
    - gf_isom_oinf_del_entry
    linkageType: ''
    returnType: void
    signature: void sgpd_del_entry(u32 grouping_type, void *entry, Bool is_opaque)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10681,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10684,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10685,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10688,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10689,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10690,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10693,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10694,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10697,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10698,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10712,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10714,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10715,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10716,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10717,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10719,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10720,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10721,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:10723,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:10725,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:10727,1
    - Dst: gf_isom_oinf_write_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10732,1
    - Dst: gf_isom_linf_write_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10735,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10742,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10743,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10745,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10748,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10749,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10750,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10751,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10753,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10755,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10756,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10766,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10767,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10769,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:10776,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10784,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10786,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:10795,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 93
    argCount: 3
    argNames:
    - grouping_type
    - entry
    - bs
    argTypes:
    - u32
    - void*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10798
      start: 10676
    functionDepth: 2
    functionLinenumber: 10676
    functionLinenumberEnd: 10798
    functionName: sgpd_write_entry
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 2
    functionsReached:
    - gf_isom_linf_write_entry
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_isom_oinf_write_entry
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: void
    signature: void sgpd_write_entry(u32 grouping_type, void *entry, GF_BitStream
      *bs)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_oinf_size_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10834,1
    - Dst: gf_isom_linf_size_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10836,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 48
    argCount: 2
    argNames:
    - grouping_type
    - entry
    argTypes:
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10863
      start: 10801
    functionDepth: 2
    functionLinenumber: 10801
    functionLinenumberEnd: 10863
    functionName: sgpd_size_entry
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_linf_size_entry
    - gf_isom_oinf_size_entry
    linkageType: ''
    returnType: u32
    signature: u32 sgpd_size_entry(u32 grouping_type, void *entry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10868,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:10871,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10873
      start: 10866
    functionDepth: 1
    functionLinenumber: 10866
    functionLinenumberEnd: 10873
    functionName: sgpd_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *sgpd_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:10878,1
    - Dst: gf_list_last
      Src: /src/gpac/src/isomedia/box_code_base.c:10879,1
    - Dst: sgpd_del_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10880,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/isomedia/box_code_base.c:10881,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:10883,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10884,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10885
      start: 10875
    functionDepth: 3
    functionLinenumber: 10875
    functionLinenumberEnd: 10885
    functionName: sgpd_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - sgpd_del_entry
    - gf_list_last
    - gf_list_rem_last
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void sgpd_box_del(GF_Box *a)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10892,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10893,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10896,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10897,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10900,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10901,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10903,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10913,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10914,1
    - Dst: sgpd_parse_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10919,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:10922,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10924,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10928
      start: 10887
    functionDepth: 3
    functionLinenumber: 10887
    functionLinenumberEnd: 10928
    functionName: sgpd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_bs_read_u32
    - sgpd_parse_entry
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sgpd_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:10936,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10939,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10940,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10941,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:10942,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10943,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:10946,1
    - Dst: sgpd_size_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10948,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10949,1
    - Dst: sgpd_write_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10951,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10954
      start: 10931
    functionDepth: 3
    functionLinenumber: 10931
    functionLinenumberEnd: 10954
    functionName: sgpd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_full_box_write
    - sgpd_size_entry
    - sgpd_write_entry
    - gf_list_count
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sgpd_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:10973,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:10975,1
    - Dst: sgpd_size_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10976,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10989
      start: 10956
    functionDepth: 3
    functionLinenumber: 10956
    functionLinenumberEnd: 10989
    functionName: sgpd_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - sgpd_size_entry
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sgpd_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10997,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10998,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10999
      start: 10993
    functionDepth: 0
    functionLinenumber: 10993
    functionLinenumberEnd: 10999
    functionName: saiz_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void saiz_box_del(GF_Box *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11007,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11008,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11009,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11011,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11012,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11013,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:11019,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11024,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:11025,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11028
      start: 11002
    functionDepth: 1
    functionLinenumber: 11002
    functionLinenumberEnd: 11028
    functionName: saiz_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err saiz_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:11032,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11034
      start: 11030
    functionDepth: 1
    functionLinenumber: 11030
    functionLinenumberEnd: 11034
    functionName: saiz_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *saiz_box_new()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:11043,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11047,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11048,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11050,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11051,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11054,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:11056,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11059
      start: 11038
    functionDepth: 3
    functionLinenumber: 11038
    functionLinenumberEnd: 11059
    functionName: saiz_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_isom_full_box_write
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err saiz_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11072
      start: 11061
    functionDepth: 0
    functionLinenumber: 11061
    functionLinenumberEnd: 11072
    functionName: saiz_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err saiz_box_size(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11079,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11080,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11081,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11082
      start: 11075
    functionDepth: 0
    functionLinenumber: 11075
    functionLinenumberEnd: 11082
    functionName: saio_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void saio_box_del(GF_Box *s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11090,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11091,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11092,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11094,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11095,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:11101,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11106,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11108,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11110,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:11112,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11116
      start: 11085
    functionDepth: 1
    functionLinenumber: 11085
    functionLinenumberEnd: 11116
    functionName: saio_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_u64
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err saio_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:11120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11122
      start: 11118
    functionDepth: 1
    functionLinenumber: 11118
    functionLinenumberEnd: 11122
    functionName: saio_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *saio_box_new()
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:11131,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11135,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11136,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11140,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11146,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:11148,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:11156,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11159,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11162,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:11166,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:11169,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 41
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11174
      start: 11126
    functionDepth: 3
    functionLinenumber: 11126
    functionLinenumberEnd: 11174
    functionName: saio_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_isom_full_box_write
    - gf_bs_get_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err saio_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11192,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11201
      start: 11176
    functionDepth: 0
    functionLinenumber: 11176
    functionLinenumberEnd: 11201
    functionName: saio_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err saio_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11208
      start: 11205
    functionDepth: 0
    functionLinenumber: 11205
    functionLinenumberEnd: 11208
    functionName: prft_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void prft_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11214,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11215,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:11216,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11218,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11219,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11221,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:11222,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11225
      start: 11210
    functionDepth: 1
    functionLinenumber: 11210
    functionLinenumberEnd: 11225
    functionName: prft_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u64
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err prft_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:11229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11231
      start: 11227
    functionDepth: 1
    functionLinenumber: 11227
    functionLinenumberEnd: 11231
    functionName: prft_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *prft_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:11239,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11242,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:11243,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11245,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:11247,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11251
      start: 11234
    functionDepth: 3
    functionLinenumber: 11234
    functionLinenumberEnd: 11251
    functionName: prft_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err prft_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11259
      start: 11253
    functionDepth: 0
    functionLinenumber: 11253
    functionLinenumberEnd: 11259
    functionName: prft_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err prft_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:11264,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:11265,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11271
      start: 11262
    functionDepth: 1
    functionLinenumber: 11262
    functionLinenumberEnd: 11271
    functionName: trgr_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *trgr_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:11277,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11278,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11279
      start: 11273
    functionDepth: 1
    functionLinenumber: 11273
    functionLinenumberEnd: 11279
    functionName: trgr_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void trgr_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:11286,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11288
      start: 11282
    functionDepth: 1
    functionLinenumber: 11282
    functionLinenumberEnd: 11288
    functionName: trgr_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_LIST_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trgr_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:11293,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11294
      start: 11291
    functionDepth: 2
    functionLinenumber: 11291
    functionLinenumberEnd: 11294
    functionName: trgr_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trgr_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:11302,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11303
      start: 11300
    functionDepth: 2
    functionLinenumber: 11300
    functionLinenumberEnd: 11303
    functionName: trgr_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trgr_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:11309,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11311
      start: 11305
    functionDepth: 3
    functionLinenumber: 11305
    functionLinenumberEnd: 11311
    functionName: trgr_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position_list
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trgr_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:11318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11320
      start: 11316
    functionDepth: 1
    functionLinenumber: 11316
    functionLinenumberEnd: 11320
    functionName: trgt_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *trgt_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11326,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11327
      start: 11322
    functionDepth: 0
    functionLinenumber: 11322
    functionLinenumberEnd: 11327
    functionName: trgt_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void trgt_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11332,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11333,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11335
      start: 11329
    functionDepth: 1
    functionLinenumber: 11329
    functionLinenumberEnd: 11335
    functionName: trgt_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trgt_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:11347,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11350,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11352
      start: 11340
    functionDepth: 3
    functionLinenumber: 11340
    functionLinenumberEnd: 11352
    functionName: trgt_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trgt_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11360
      start: 11354
    functionDepth: 0
    functionLinenumber: 11354
    functionLinenumberEnd: 11360
    functionName: trgt_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trgt_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:11368,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11370
      start: 11366
    functionDepth: 1
    functionLinenumber: 11366
    functionLinenumberEnd: 11370
    functionName: stvi_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *stvi_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11376,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11377,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11378
      start: 11372
    functionDepth: 0
    functionLinenumber: 11372
    functionLinenumberEnd: 11378
    functionName: stvi_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void stvi_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11384,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11385,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11386,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11387,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11388,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11389,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:11391,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:11394,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11396
      start: 11380
    functionDepth: 1
    functionLinenumber: 11380
    functionLinenumberEnd: 11396
    functionName: stvi_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stvi_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:11406,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11409,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11410,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11411,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11412,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:11413,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11416
      start: 11401
    functionDepth: 3
    functionLinenumber: 11401
    functionLinenumberEnd: 11416
    functionName: stvi_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_int
    - gf_isom_full_box_write
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stvi_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11424
      start: 11418
    functionDepth: 0
    functionLinenumber: 11418
    functionLinenumberEnd: 11424
    functionName: stvi_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stvi_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:11432,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11434
      start: 11430
    functionDepth: 1
    functionLinenumber: 11430
    functionLinenumberEnd: 11434
    functionName: fiin_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *fiin_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:11440,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11441,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11442
      start: 11436
    functionDepth: 1
    functionLinenumber: 11436
    functionLinenumberEnd: 11442
    functionName: fiin_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void fiin_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:11450,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:11453,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:11456,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11460
      start: 11445
    functionDepth: 1
    functionLinenumber: 11445
    functionLinenumberEnd: 11460
    functionName: fiin_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    - BOX_FIELD_LIST_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fiin_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11466,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11467,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:11468,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11469
      start: 11462
    functionDepth: 2
    functionLinenumber: 11462
    functionLinenumberEnd: 11469
    functionName: fiin_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_isom_box_array_read
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fiin_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:11479,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11482,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:11482,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11484
      start: 11474
    functionDepth: 3
    functionLinenumber: 11474
    functionLinenumberEnd: 11484
    functionName: fiin_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bs_write_u16
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fiin_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:11491,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11493
      start: 11486
    functionDepth: 3
    functionLinenumber: 11486
    functionLinenumberEnd: 11493
    functionName: fiin_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position_list
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fiin_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:11500,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11502
      start: 11498
    functionDepth: 1
    functionLinenumber: 11498
    functionLinenumberEnd: 11502
    functionName: paen_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *paen_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11506,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11507
      start: 11504
    functionDepth: 0
    functionLinenumber: 11504
    functionLinenumberEnd: 11507
    functionName: paen_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void paen_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:11515,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:11518,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:11521,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11525
      start: 11510
    functionDepth: 1
    functionLinenumber: 11510
    functionLinenumberEnd: 11525
    functionName: paen_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err paen_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:11529,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11530
      start: 11527
    functionDepth: 2
    functionLinenumber: 11527
    functionLinenumberEnd: 11530
    functionName: paen_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err paen_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:11537,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11538
      start: 11534
    functionDepth: 2
    functionLinenumber: 11534
    functionLinenumberEnd: 11538
    functionName: paen_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err paen_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11543
      start: 11540
    functionDepth: 0
    functionLinenumber: 11540
    functionLinenumberEnd: 11543
    functionName: paen_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err paen_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:11552,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11554
      start: 11550
    functionDepth: 1
    functionLinenumber: 11550
    functionLinenumberEnd: 11554
    functionName: fpar_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *fpar_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11560,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11561,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11562,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11563
      start: 11556
    functionDepth: 0
    functionLinenumber: 11556
    functionLinenumberEnd: 11563
    functionName: fpar_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void fpar_box_del(GF_Box *s)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:11570,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11579,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11580,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/box_code_base.c:11585,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/box_code_base.c:11587,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:11588,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:11593,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 4
    argNames:
    - s
    - bs
    - size
    - out_str
    argTypes:
    - GF_Box*
    - GF_BitStream*
    - u64
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11599
      start: 11565
    functionDepth: 1
    functionLinenumber: 11565
    functionLinenumberEnd: 11599
    functionName: gf_isom_read_null_terminated_string
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 3
    functionsReached:
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_bs_available
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_read_null_terminated_string(GF_Box *s, GF_BitStream
      *bs, u64 size, char **out_str)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11607,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11608,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11609,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11610,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11611,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11612,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11613,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11614,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11615,1
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:11617,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11620,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11621,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11625,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:11626,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11630,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11631,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11634
      start: 11601
    functionDepth: 2
    functionLinenumber: 11601
    functionLinenumberEnd: 11634
    functionName: fpar_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_read_null_terminated_string
    - gf_bs_read_u32
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_bs_read_u16
    - GF_SAFE_ALLOC_N
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fpar_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:11645,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11648,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11649,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11650,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11651,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11652,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11653,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11654,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11655,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:11657,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:11657,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11660,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11662,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11665,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11666,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11669
      start: 11639
    functionDepth: 3
    functionLinenumber: 11639
    functionLinenumberEnd: 11669
    functionName: fpar_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_int
    - gf_bs_write_u16
    - strlen
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fpar_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:11677,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11681
      start: 11671
    functionDepth: 0
    functionLinenumber: 11671
    functionLinenumberEnd: 11681
    functionName: fpar_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fpar_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:11688,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11690
      start: 11686
    functionDepth: 1
    functionLinenumber: 11686
    functionLinenumberEnd: 11690
    functionName: fecr_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *fecr_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11696,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11697,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11698
      start: 11692
    functionDepth: 0
    functionLinenumber: 11692
    functionLinenumberEnd: 11698
    functionName: fecr_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void fecr_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11705,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11706,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:11709,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11713,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:11714,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11718,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11719,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11722
      start: 11700
    functionDepth: 1
    functionLinenumber: 11700
    functionLinenumberEnd: 11722
    functionName: fecr_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_LOG
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - GF_SAFE_ALLOC_N
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fecr_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:11733,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11736,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11738,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11739,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11742
      start: 11727
    functionDepth: 3
    functionLinenumber: 11727
    functionLinenumberEnd: 11742
    functionName: fecr_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_isom_full_box_write
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fecr_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11749
      start: 11744
    functionDepth: 0
    functionLinenumber: 11744
    functionLinenumberEnd: 11749
    functionName: fecr_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fecr_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:11757,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11759
      start: 11755
    functionDepth: 1
    functionLinenumber: 11755
    functionLinenumberEnd: 11759
    functionName: segr_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *segr_box_new()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11767,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11768,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11770,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11771,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11772
      start: 11761
    functionDepth: 0
    functionLinenumber: 11761
    functionLinenumberEnd: 11772
    functionName: segr_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void segr_box_del(GF_Box *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11779,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11780,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:11782,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:11787,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11791,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11792,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11794,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:11796,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11800,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11803,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11804,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:11806,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11810,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11814
      start: 11774
    functionDepth: 1
    functionLinenumber: 11774
    functionLinenumberEnd: 11814
    functionName: segr_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_bs_read_u16
    - GF_SAFE_ALLOC_N
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err segr_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:11826,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11829,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11831,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11833,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11836,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11838,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11842
      start: 11819
    functionDepth: 2
    functionLinenumber: 11819
    functionLinenumberEnd: 11842
    functionName: segr_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_box_write_header
    - gf_bs_write_u8
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err segr_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11856
      start: 11844
    functionDepth: 0
    functionLinenumber: 11844
    functionLinenumberEnd: 11856
    functionName: segr_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err segr_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:11863,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11865
      start: 11861
    functionDepth: 1
    functionLinenumber: 11861
    functionLinenumberEnd: 11865
    functionName: gitn_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *gitn_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11874,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11876,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11878,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11879
      start: 11867
    functionDepth: 0
    functionLinenumber: 11867
    functionLinenumberEnd: 11879
    functionName: gitn_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gitn_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11887,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11888,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:11892,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11896,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11897,1
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:11899,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11903
      start: 11881
    functionDepth: 2
    functionLinenumber: 11881
    functionLinenumberEnd: 11903
    functionName: gitn_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_read_null_terminated_string
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - GF_SAFE_ALLOC_N
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gitn_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:11914,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11917,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11919,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:11920,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:11920,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11921,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11924
      start: 11908
    functionDepth: 3
    functionLinenumber: 11908
    functionLinenumberEnd: 11924
    functionName: gitn_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u16
    - gf_bs_write_data
    - gf_bs_write_u8
    - gf_bs_write_u32
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gitn_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:11934,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11937
      start: 11926
    functionDepth: 0
    functionLinenumber: 11926
    functionLinenumberEnd: 11937
    functionName: gitn_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gitn_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:11945,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11947
      start: 11943
    functionDepth: 1
    functionLinenumber: 11943
    functionLinenumberEnd: 11947
    functionName: fdpa_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *fdpa_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11957,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11959,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11961,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11962
      start: 11949
    functionDepth: 0
    functionLinenumber: 11949
    functionLinenumberEnd: 11962
    functionName: fdpa_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void fdpa_box_del(GF_Box *s)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11969,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11970,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11971,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11972,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11973,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11974,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11975,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11976,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11977,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:11979,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:11983,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11987,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11988,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11991,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:11992,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11994,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11995,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:12000,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12003,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12004,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 39
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12009
      start: 11964
    functionDepth: 1
    functionLinenumber: 11964
    functionLinenumberEnd: 12009
    functionName: fdpa_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - GF_LOG
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - gf_bs_read_u8
    - gf_malloc
    - GF_SAFE_ALLOC_N
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fdpa_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:12020,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12023,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12024,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12025,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12026,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12027,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:12028,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:12029,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12031,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12033,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12035,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12037,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12042
      start: 12013
    functionDepth: 2
    functionLinenumber: 12013
    functionLinenumberEnd: 12042
    functionName: fdpa_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_bs_write_data
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fdpa_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12060
      start: 12044
    functionDepth: 0
    functionLinenumber: 12044
    functionLinenumberEnd: 12060
    functionName: fdpa_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fdpa_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:12067,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12069
      start: 12065
    functionDepth: 1
    functionLinenumber: 12065
    functionLinenumberEnd: 12069
    functionName: extr_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *extr_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_base.c:12075,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12076,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12077,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12078
      start: 12071
    functionDepth: 4
    functionLinenumber: 12071
    functionLinenumberEnd: 12078
    functionName: extr_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_box_del
    linkageType: ''
    returnType: void
    signature: void extr_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_parse_ex
      Src: /src/gpac/src/isomedia/box_code_base.c:12085,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:12089,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12091,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12094
      start: 12080
    functionDepth: 1
    functionLinenumber: 12080
    functionLinenumberEnd: 12094
    functionName: extr_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_parse_ex
    - gf_bs_read_data
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err extr_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:12105,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:12109,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12112,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12114
      start: 12099
    functionDepth: 3
    functionLinenumber: 12099
    functionLinenumberEnd: 12114
    functionName: extr_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_isom_box_write_header
    - gf_isom_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err extr_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/box_code_base.c:12121,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12126
      start: 12116
    functionDepth: 3
    functionLinenumber: 12116
    functionLinenumberEnd: 12126
    functionName: extr_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_size
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err extr_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:12134,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:12136,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12139
      start: 12132
    functionDepth: 1
    functionLinenumber: 12132
    functionLinenumberEnd: 12139
    functionName: fdsa_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *fdsa_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:12144,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12146
      start: 12141
    functionDepth: 1
    functionLinenumber: 12141
    functionLinenumberEnd: 12146
    functionName: fdsa_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void fdsa_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:12153,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:12156,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12160
      start: 12148
    functionDepth: 1
    functionLinenumber: 12148
    functionLinenumberEnd: 12160
    functionName: fdsa_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    - BOX_FIELD_LIST_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fdsa_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:12163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12164
      start: 12161
    functionDepth: 2
    functionLinenumber: 12161
    functionLinenumberEnd: 12164
    functionName: fdsa_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fdsa_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:12175,1
    - Dst: gf_isom_box_array_write
      Src: /src/gpac/src/isomedia/box_code_base.c:12178,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:12181,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12185
      start: 12169
    functionDepth: 3
    functionLinenumber: 12169
    functionLinenumberEnd: 12185
    functionName: fdsa_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write
    - gf_isom_box_write_header
    - gf_isom_box_array_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fdsa_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12190
      start: 12187
    functionDepth: 0
    functionLinenumber: 12187
    functionLinenumberEnd: 12190
    functionName: fdsa_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fdsa_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12201,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12202,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12203
      start: 12197
    functionDepth: 0
    functionLinenumber: 12197
    functionLinenumberEnd: 12203
    functionName: trik_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void trik_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:12211,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:12214,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12218,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12219,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12222
      start: 12205
    functionDepth: 1
    functionLinenumber: 12205
    functionLinenumberEnd: 12222
    functionName: trik_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_malloc
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trik_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:12226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12228
      start: 12224
    functionDepth: 1
    functionLinenumber: 12224
    functionLinenumberEnd: 12228
    functionName: trik_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *trik_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:12238,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12242,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12243,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12246
      start: 12232
    functionDepth: 3
    functionLinenumber: 12232
    functionLinenumberEnd: 12246
    functionName: trik_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trik_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12253
      start: 12248
    functionDepth: 0
    functionLinenumber: 12248
    functionLinenumberEnd: 12253
    functionName: trik_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trik_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12261
      start: 12258
    functionDepth: 0
    functionLinenumber: 12258
    functionLinenumberEnd: 12261
    functionName: bloc_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void bloc_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12267,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12268,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12270,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12271,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12272,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_base.c:12274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12276
      start: 12263
    functionDepth: 1
    functionLinenumber: 12263
    functionLinenumberEnd: 12276
    functionName: bloc_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - ISOM_DECREASE_SIZE
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bloc_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:12280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12282
      start: 12278
    functionDepth: 1
    functionLinenumber: 12278
    functionLinenumberEnd: 12282
    functionName: bloc_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *bloc_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:12292,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12294,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12295,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:12297,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12300
      start: 12286
    functionDepth: 3
    functionLinenumber: 12286
    functionLinenumberEnd: 12300
    functionName: bloc_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u64
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bloc_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12306
      start: 12302
    functionDepth: 0
    functionLinenumber: 12302
    functionLinenumberEnd: 12306
    functionName: bloc_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bloc_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12313,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12314,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12315
      start: 12310
    functionDepth: 0
    functionLinenumber: 12310
    functionLinenumberEnd: 12315
    functionName: ainf_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void ainf_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12321,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12322,1
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:12323,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12324
      start: 12317
    functionDepth: 2
    functionLinenumber: 12317
    functionLinenumberEnd: 12324
    functionName: ainf_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_read_null_terminated_string
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ainf_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:12328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12330
      start: 12326
    functionDepth: 1
    functionLinenumber: 12326
    functionLinenumberEnd: 12330
    functionName: ainf_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *ainf_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:12339,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12341,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12343,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:12343,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12344,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12346
      start: 12334
    functionDepth: 3
    functionLinenumber: 12334
    functionLinenumberEnd: 12346
    functionName: ainf_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_data
    - gf_bs_write_u8
    - gf_bs_write_u32
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ainf_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:12351,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12353
      start: 12348
    functionDepth: 0
    functionLinenumber: 12348
    functionLinenumberEnd: 12353
    functionName: ainf_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ainf_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12361,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12362,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12363
      start: 12358
    functionDepth: 0
    functionLinenumber: 12358
    functionLinenumberEnd: 12363
    functionName: mhac_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void mhac_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12369,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12370,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12371,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12372,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:12373,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12375,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:12377,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12380,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12383
      start: 12365
    functionDepth: 1
    functionLinenumber: 12365
    functionLinenumberEnd: 12383
    functionName: mhac_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - gf_bs_read_u8
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mhac_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:12387,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12390
      start: 12385
    functionDepth: 1
    functionLinenumber: 12385
    functionLinenumberEnd: 12390
    functionName: mhac_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *mhac_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:12399,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12401,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12402,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12403,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:12404,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12406,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12409
      start: 12394
    functionDepth: 2
    functionLinenumber: 12394
    functionLinenumberEnd: 12409
    functionName: mhac_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u16
    - gf_isom_box_write_header
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mhac_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12417
      start: 12411
    functionDepth: 0
    functionLinenumber: 12411
    functionLinenumberEnd: 12417
    functionName: mhac_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mhac_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12424,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12425,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12426
      start: 12421
    functionDepth: 0
    functionLinenumber: 12421
    functionLinenumberEnd: 12426
    functionName: mhap_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void mhap_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12433,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12434,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12437,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:12438,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12441,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12444
      start: 12428
    functionDepth: 1
    functionLinenumber: 12428
    functionLinenumberEnd: 12444
    functionName: mhap_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mhap_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:12448,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12450
      start: 12446
    functionDepth: 1
    functionLinenumber: 12446
    functionLinenumberEnd: 12450
    functionName: mhap_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *mhap_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:12460,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12462,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12464,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12467
      start: 12454
    functionDepth: 2
    functionLinenumber: 12454
    functionLinenumberEnd: 12467
    functionName: mhap_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mhap_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12474
      start: 12469
    functionDepth: 0
    functionLinenumber: 12469
    functionLinenumberEnd: 12474
    functionName: mhap_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mhap_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:12480,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12482
      start: 12478
    functionDepth: 1
    functionLinenumber: 12478
    functionLinenumberEnd: 12482
    functionName: jp_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *jp_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12486,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12487
      start: 12484
    functionDepth: 0
    functionLinenumber: 12484
    functionLinenumberEnd: 12487
    functionName: jp_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void jp_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12492,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12493,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12495
      start: 12489
    functionDepth: 1
    functionLinenumber: 12489
    functionLinenumberEnd: 12495
    functionName: jp_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jp_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:12502,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12504,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12506
      start: 12499
    functionDepth: 2
    functionLinenumber: 12499
    functionLinenumberEnd: 12506
    functionName: jp_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jp_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12512
      start: 12508
    functionDepth: 0
    functionLinenumber: 12508
    functionLinenumberEnd: 12512
    functionName: jp_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jp_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12518,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12519
      start: 12516
    functionDepth: 0
    functionLinenumber: 12516
    functionLinenumberEnd: 12519
    functionName: jp2h_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void jp2h_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:12526,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:12529,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12533
      start: 12521
    functionDepth: 1
    functionLinenumber: 12521
    functionLinenumberEnd: 12533
    functionName: jp2h_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jp2h_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:12536,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12537
      start: 12534
    functionDepth: 2
    functionLinenumber: 12534
    functionLinenumberEnd: 12537
    functionName: jp2h_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jp2h_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:12541,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12543
      start: 12539
    functionDepth: 1
    functionLinenumber: 12539
    functionLinenumberEnd: 12543
    functionName: jp2h_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *jp2h_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:12549,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12550
      start: 12547
    functionDepth: 2
    functionLinenumber: 12547
    functionLinenumberEnd: 12550
    functionName: jp2h_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jp2h_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12555
      start: 12552
    functionDepth: 0
    functionLinenumber: 12552
    functionLinenumberEnd: 12555
    functionName: jp2h_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jp2h_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:12561,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:12562,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12564
      start: 12559
    functionDepth: 1
    functionLinenumber: 12559
    functionLinenumberEnd: 12564
    functionName: jp2p_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *jp2p_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:12569,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:12571,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12572,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:12574,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12575,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12576
      start: 12566
    functionDepth: 1
    functionLinenumber: 12566
    functionLinenumberEnd: 12576
    functionName: jp2p_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void jp2p_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE_NO_ERR
      Src: /src/gpac/src/isomedia/box_code_base.c:12582,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:12583,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12585,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:12586,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12590
      start: 12578
    functionDepth: 1
    functionLinenumber: 12578
    functionLinenumberEnd: 12590
    functionName: jp2p_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_list_add
    - gf_malloc
    - ISOM_DECREASE_SIZE_NO_ERR
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jp2p_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:12598,1
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:12600,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:12604,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12605,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12608
      start: 12594
    functionDepth: 3
    functionLinenumber: 12594
    functionLinenumberEnd: 12608
    functionName: jp2p_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_isom_full_box_write
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jp2p_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:12613,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12616
      start: 12610
    functionDepth: 1
    functionLinenumber: 12610
    functionLinenumberEnd: 12616
    functionName: jp2p_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jp2p_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:12622,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12624
      start: 12620
    functionDepth: 1
    functionLinenumber: 12620
    functionLinenumberEnd: 12624
    functionName: jsub_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *jsub_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12628,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12629
      start: 12626
    functionDepth: 0
    functionLinenumber: 12626
    functionLinenumberEnd: 12629
    functionName: jsub_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void jsub_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12634,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12635,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12636,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12637,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12638,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12640
      start: 12631
    functionDepth: 1
    functionLinenumber: 12631
    functionLinenumberEnd: 12640
    functionName: jsub_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jsub_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:12649,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12652,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12653,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12654,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12655,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12658
      start: 12644
    functionDepth: 2
    functionLinenumber: 12644
    functionLinenumberEnd: 12658
    functionName: jsub_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jsub_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12664
      start: 12660
    functionDepth: 0
    functionLinenumber: 12660
    functionLinenumberEnd: 12664
    functionName: jsub_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jsub_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:12670,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12672
      start: 12668
    functionDepth: 1
    functionLinenumber: 12668
    functionLinenumberEnd: 12672
    functionName: orfo_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *orfo_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12676,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12677
      start: 12674
    functionDepth: 0
    functionLinenumber: 12674
    functionLinenumberEnd: 12677
    functionName: orfo_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void orfo_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12682,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12683,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12684,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12686
      start: 12679
    functionDepth: 1
    functionLinenumber: 12679
    functionLinenumberEnd: 12686
    functionName: orfo_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err orfo_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:12695,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12698,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12699,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12702
      start: 12690
    functionDepth: 2
    functionLinenumber: 12690
    functionLinenumberEnd: 12702
    functionName: orfo_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err orfo_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12708
      start: 12704
    functionDepth: 0
    functionLinenumber: 12704
    functionLinenumberEnd: 12708
    functionName: orfo_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err orfo_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12714,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12715
      start: 12712
    functionDepth: 0
    functionLinenumber: 12712
    functionLinenumberEnd: 12715
    functionName: ihdr_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void ihdr_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12721,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12723,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12724,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:12725,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12726,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12727,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12728,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12729,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12732
      start: 12717
    functionDepth: 1
    functionLinenumber: 12717
    functionLinenumberEnd: 12732
    functionName: ihdr_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ihdr_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:12736,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12738
      start: 12734
    functionDepth: 1
    functionLinenumber: 12734
    functionLinenumberEnd: 12738
    functionName: ihdr_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *ihdr_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:12747,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12750,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12751,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:12752,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12753,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12754,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12755,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12756,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12758
      start: 12742
    functionDepth: 2
    functionLinenumber: 12742
    functionLinenumberEnd: 12758
    functionName: ihdr_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    - gf_bs_write_u8
    - gf_bs_write_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ihdr_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12764
      start: 12760
    functionDepth: 0
    functionLinenumber: 12760
    functionLinenumberEnd: 12764
    functionName: ihdr_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ihdr_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:12773,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:12775,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12778
      start: 12771
    functionDepth: 0
    functionLinenumber: 12771
    functionLinenumberEnd: 12778
    functionName: dvcC_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *dvcC_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12783,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12784
      start: 12780
    functionDepth: 0
    functionLinenumber: 12780
    functionLinenumberEnd: 12784
    functionName: dvcC_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void dvcC_box_del(GF_Box *s)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12792,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12793,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12794,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12795,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12796,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12797,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12798,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12799,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12800,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12801,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12802,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:12803,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12806,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:12807,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:12818,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12822
      start: 12786
    functionDepth: 1
    functionLinenumber: 12786
    functionLinenumberEnd: 12822
    functionName: dvcC_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_LOG
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dvcC_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:12831,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12835,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12836,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12837,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12838,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12839,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12840,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12841,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12842,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12843,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12844,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12845,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12846,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12847,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12848,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12851
      start: 12825
    functionDepth: 2
    functionLinenumber: 12825
    functionLinenumberEnd: 12851
    functionName: dvcC_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_isom_box_write_header
    - gf_bs_write_u8
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dvcC_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12859
      start: 12853
    functionDepth: 0
    functionLinenumber: 12853
    functionLinenumberEnd: 12859
    functionName: dvcC_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dvcC_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:12864,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:12866,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12869
      start: 12862
    functionDepth: 0
    functionLinenumber: 12862
    functionLinenumberEnd: 12869
    functionName: dvvC_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *dvvC_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12874,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12875
      start: 12871
    functionDepth: 0
    functionLinenumber: 12871
    functionLinenumberEnd: 12875
    functionName: dvvC_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void dvvC_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dvcC_box_read
      Src: /src/gpac/src/isomedia/box_code_base.c:12879,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12880
      start: 12877
    functionDepth: 2
    functionLinenumber: 12877
    functionLinenumberEnd: 12880
    functionName: dvvC_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - dvcC_box_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dvvC_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dvcC_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:12885,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12886
      start: 12883
    functionDepth: 3
    functionLinenumber: 12883
    functionLinenumberEnd: 12886
    functionName: dvvC_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - dvcC_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dvvC_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dvcC_box_size
      Src: /src/gpac/src/isomedia/box_code_base.c:12890,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12891
      start: 12888
    functionDepth: 1
    functionLinenumber: 12888
    functionLinenumberEnd: 12891
    functionName: dvvC_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - dvcC_box_size
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dvvC_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:12897,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12899
      start: 12895
    functionDepth: 1
    functionLinenumber: 12895
    functionLinenumberEnd: 12899
    functionName: dOps_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *dOps_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12904,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12905
      start: 12901
    functionDepth: 0
    functionLinenumber: 12901
    functionLinenumberEnd: 12905
    functionName: dOps_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void dOps_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12911,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:12913,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12918,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:12919,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12920,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:12921,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12922,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12923,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12925,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12926,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12927,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12928,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12931
      start: 12908
    functionDepth: 1
    functionLinenumber: 12908
    functionLinenumberEnd: 12931
    functionName: dOps_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dOps_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:12941,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12944,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12945,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:12946,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12947,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:12948,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12949,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12951,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12952,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12953,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12956
      start: 12936
    functionDepth: 2
    functionLinenumber: 12936
    functionLinenumberEnd: 12956
    functionName: dOps_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u16
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dOps_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12966
      start: 12958
    functionDepth: 0
    functionLinenumber: 12958
    functionLinenumberEnd: 12966
    functionName: dOps_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dOps_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:12972,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12974
      start: 12970
    functionDepth: 1
    functionLinenumber: 12970
    functionLinenumberEnd: 12974
    functionName: iacb_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *iacb_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_iamf_cfg_del
      Src: /src/gpac/src/isomedia/box_code_base.c:12979,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12980,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12981
      start: 12976
    functionDepth: 1
    functionLinenumber: 12976
    functionLinenumberEnd: 12981
    functionName: iacb_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_iamf_cfg_del
    linkageType: ''
    returnType: void
    signature: void iacb_box_del(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_iamf_cfg_del
      Src: /src/gpac/src/isomedia/box_code_base.c:12986,1
    - Dst: gf_odf_iamf_cfg_read_bs_size
      Src: /src/gpac/src/isomedia/box_code_base.c:12987,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12989
      start: 12983
    functionDepth: 1
    functionLinenumber: 12983
    functionLinenumberEnd: 12989
    functionName: iacb_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_odf_iamf_cfg_read_bs_size
    - gf_odf_iamf_cfg_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iacb_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:12999,1
    - Dst: gf_odf_iamf_cfg_write_bs
      Src: /src/gpac/src/isomedia/box_code_base.c:13002,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13003
      start: 12992
    functionDepth: 2
    functionLinenumber: 12992
    functionLinenumberEnd: 13003
    functionName: iacb_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_odf_iamf_cfg_write_bs
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iacb_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_iamf_cfg_size
      Src: /src/gpac/src/isomedia/box_code_base.c:13012,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13014
      start: 13005
    functionDepth: 1
    functionLinenumber: 13005
    functionLinenumberEnd: 13014
    functionName: iacb_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_odf_iamf_cfg_size
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iacb_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13020,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13021,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13022
      start: 13017
    functionDepth: 0
    functionLinenumber: 13017
    functionLinenumberEnd: 13022
    functionName: dfla_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void dfla_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:13029,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13030,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13032
      start: 13024
    functionDepth: 1
    functionLinenumber: 13024
    functionLinenumberEnd: 13032
    functionName: dfla_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dfla_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:13036,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13038
      start: 13034
    functionDepth: 1
    functionLinenumber: 13034
    functionLinenumberEnd: 13038
    functionName: dfla_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *dfla_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:13046,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13048,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13050
      start: 13042
    functionDepth: 3
    functionLinenumber: 13042
    functionLinenumberEnd: 13050
    functionName: dfla_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dfla_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13057
      start: 13052
    functionDepth: 0
    functionLinenumber: 13052
    functionLinenumberEnd: 13057
    functionName: dfla_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dfla_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:13064,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13066
      start: 13062
    functionDepth: 1
    functionLinenumber: 13062
    functionLinenumberEnd: 13066
    functionName: ddts_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *ddts_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13071,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13072
      start: 13068
    functionDepth: 0
    functionLinenumber: 13068
    functionLinenumberEnd: 13072
    functionName: ddts_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void ddts_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13077,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13078,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13079,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13080,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13081,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13082,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13083,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13084,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13085,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13086,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13087,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13088,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13089,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13090,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13091,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13092,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13094
      start: 13074
    functionDepth: 1
    functionLinenumber: 13074
    functionLinenumberEnd: 13094
    functionName: ddts_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ddts_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:13103,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13106,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13107,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13108,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13109,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13110,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13111,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13112,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13113,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13114,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13115,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13116,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13117,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13118,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13119,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13120,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13122
      start: 13098
    functionDepth: 2
    functionLinenumber: 13098
    functionLinenumberEnd: 13122
    functionName: ddts_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u16
    - gf_bs_write_int
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ddts_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13129
      start: 13124
    functionDepth: 0
    functionLinenumber: 13124
    functionLinenumberEnd: 13129
    functionName: ddts_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ddts_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:13136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13138
      start: 13134
    functionDepth: 1
    functionLinenumber: 13134
    functionLinenumberEnd: 13138
    functionName: udts_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *udts_box_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13144,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13145,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13146,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13148
      start: 13140
    functionDepth: 0
    functionLinenumber: 13140
    functionLinenumberEnd: 13148
    functionName: udts_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void udts_box_del(GF_Box *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13155,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13156,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13157,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13158,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13159,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13160,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13164,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13165,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13166,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13167,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13168,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13172,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/isomedia/box_code_base.c:13176,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13178,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13181,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/box_code_base.c:13183,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13185,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13190,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/box_code_base.c:13191,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13193,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 40
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13198
      start: 13150
    functionDepth: 1
    functionLinenumber: 13150
    functionLinenumberEnd: 13198
    functionName: udts_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - gf_bs_align
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err udts_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:13208,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13211,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13212,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13213,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13214,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13215,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13216,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13217,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13218,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13219,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13220,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13222,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/isomedia/box_code_base.c:13223,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13225,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13227,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13229
      start: 13202
    functionDepth: 2
    functionLinenumber: 13202
    functionLinenumberEnd: 13229
    functionName: udts_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_int
    - gf_bs_align
    - gf_bs_write_data
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err udts_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13238
      start: 13231
    functionDepth: 0
    functionLinenumber: 13231
    functionLinenumberEnd: 13238
    functionName: udts_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err udts_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13246,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13247,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13248
      start: 13243
    functionDepth: 0
    functionLinenumber: 13243
    functionLinenumberEnd: 13248
    functionName: mvcg_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void mvcg_box_del(GF_Box *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13254,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13255,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13256,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13257,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:13258,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:13259,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13261,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13262,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13265,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13266,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13269,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13270,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13271,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13274,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13275,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13276,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13279,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13280,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13281,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13282,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:13286,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13287
      start: 13250
    functionDepth: 2
    functionLinenumber: 13250
    functionLinenumberEnd: 13287
    functionName: mvcg_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - memset
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - gf_bs_read_u8
    - gf_bs_read_u16
    - gf_malloc
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mvcg_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:13291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13293
      start: 13289
    functionDepth: 1
    functionLinenumber: 13289
    functionLinenumberEnd: 13293
    functionName: mvcg_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *mvcg_box_new()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:13302,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13306,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13307,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13308,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13311,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13314,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13317,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13318,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13321,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13322,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13325,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13326,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13327,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13332
      start: 13297
    functionDepth: 3
    functionLinenumber: 13297
    functionLinenumberEnd: 13332
    functionName: mvcg_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mvcg_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13357
      start: 13334
    functionDepth: 0
    functionLinenumber: 13334
    functionLinenumberEnd: 13357
    functionName: mvcg_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mvcg_box_size(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13369,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13371,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13373,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13374
      start: 13362
    functionDepth: 0
    functionLinenumber: 13362
    functionLinenumberEnd: 13374
    functionName: vwid_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void vwid_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13380,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13381,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13382,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13383,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13384,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:13388,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:13389,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13392,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13394,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13395,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13396,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13397,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13398,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13399,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13400,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13401,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13402,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13403,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:13408,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13410,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13411,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13412,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13413,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 33
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13417
      start: 13376
    functionDepth: 1
    functionLinenumber: 13376
    functionLinenumberEnd: 13417
    functionName: vwid_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vwid_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:13421,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13423
      start: 13419
    functionDepth: 1
    functionLinenumber: 13419
    functionLinenumberEnd: 13423
    functionName: vwid_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *vwid_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:13432,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13435,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13436,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13437,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13438,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13441,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13442,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13443,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13444,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13446,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13447,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13448,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13449,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13450,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13451,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13454,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13455,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13456,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13460
      start: 13427
    functionDepth: 3
    functionLinenumber: 13427
    functionLinenumberEnd: 13460
    functionName: vwid_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_isom_full_box_write
    - gf_bs_write_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vwid_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13471
      start: 13462
    functionDepth: 0
    functionLinenumber: 13462
    functionLinenumberEnd: 13471
    functionName: vwid_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vwid_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13478,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13479
      start: 13476
    functionDepth: 0
    functionLinenumber: 13476
    functionLinenumberEnd: 13479
    functionName: pcmC_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void pcmC_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13485,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13486,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13487,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13489
      start: 13481
    functionDepth: 1
    functionLinenumber: 13481
    functionLinenumberEnd: 13489
    functionName: pcmC_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pcmC_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:13493,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13495
      start: 13491
    functionDepth: 1
    functionLinenumber: 13491
    functionLinenumberEnd: 13495
    functionName: pcmC_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *pcmC_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:13504,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13506,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13507,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13509
      start: 13499
    functionDepth: 3
    functionLinenumber: 13499
    functionLinenumberEnd: 13509
    functionName: pcmC_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u8
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pcmC_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13515
      start: 13511
    functionDepth: 0
    functionLinenumber: 13511
    functionLinenumberEnd: 13515
    functionName: pcmC_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pcmC_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13523,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13524
      start: 13521
    functionDepth: 0
    functionLinenumber: 13521
    functionLinenumberEnd: 13524
    functionName: chnl_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void chnl_box_del(GF_Box *s)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13530,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13532,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13534,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13535,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13536,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13537,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13540,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13541,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13548,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13549,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13554,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13555,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13558,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13559,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13560,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13571,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:13572,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13576,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13577,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13578,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13579,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13581,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:13582,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13588,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13589,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 56
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13592
      start: 13526
    functionDepth: 1
    functionLinenumber: 13526
    functionLinenumberEnd: 13592
    functionName: chnl_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - gf_bs_read_u64
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err chnl_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:13596,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13598
      start: 13594
    functionDepth: 1
    functionLinenumber: 13594
    functionLinenumberEnd: 13598
    functionName: chnl_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *chnl_box_new()
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:13607,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13611,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13613,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13614,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13615,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13618,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13622,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13625,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13627,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13628,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13633,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13634,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13635,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:13637,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:13639,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13644,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13647
      start: 13602
    functionDepth: 3
    functionLinenumber: 13602
    functionLinenumberEnd: 13647
    functionName: chnl_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u64
    - gf_bs_write_u8
    - gf_isom_full_box_write
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err chnl_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13678
      start: 13649
    functionDepth: 0
    functionLinenumber: 13649
    functionLinenumberEnd: 13678
    functionName: chnl_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err chnl_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:13685,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13687
      start: 13683
    functionDepth: 1
    functionLinenumber: 13683
    functionLinenumberEnd: 13687
    functionName: emsg_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *emsg_box_new()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13693,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13694,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13695,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13696,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13697
      start: 13689
    functionDepth: 0
    functionLinenumber: 13689
    functionLinenumberEnd: 13697
    functionName: emsg_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void emsg_box_del(GF_Box *s)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:13705,1
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:13707,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13710,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13711,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13712,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13713,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13714,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13716,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13717,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:13718,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13719,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13720,1
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:13722,1
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:13724,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:13731,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:13735,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13737,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 42
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13741
      start: 13699
    functionDepth: 2
    functionLinenumber: 13699
    functionLinenumberEnd: 13741
    functionName: emsg_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_isom_read_null_terminated_string
    - gf_bs_read_u32
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u64
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err emsg_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:13751,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13755,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:13756,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13757,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13758,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:13761,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13762,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13763,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:13765,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13766,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13767,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13770,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13771,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13772,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13773,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13776,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13778
      start: 13745
    functionDepth: 3
    functionLinenumber: 13745
    functionLinenumberEnd: 13778
    functionName: emsg_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_data
    - gf_bs_write_u8
    - gf_bs_write_u64
    - gf_bs_write_u32
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err emsg_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:13790,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:13791,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13796
      start: 13780
    functionDepth: 0
    functionLinenumber: 13780
    functionLinenumberEnd: 13796
    functionName: emsg_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err emsg_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:13802,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13804
      start: 13800
    functionDepth: 1
    functionLinenumber: 13800
    functionLinenumberEnd: 13804
    functionName: silb_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *silb_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:13810,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:13811,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13812,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13813,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13814,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_base.c:13815,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:13817,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13818,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13819
      start: 13806
    functionDepth: 1
    functionLinenumber: 13806
    functionLinenumberEnd: 13819
    functionName: silb_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void silb_box_del(GF_Box *s)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13826,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13827,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:13829,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:13833,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:13835,1
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:13837,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13839,1
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:13842,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13844,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13845,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13849,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13850,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:13852,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13856,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13857,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13860
      start: 13821
    functionDepth: 2
    functionLinenumber: 13821
    functionLinenumberEnd: 13860
    functionName: silb_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_bs_read_u32
    - gf_isom_read_null_terminated_string
    - memset
    - gf_list_add
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err silb_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:13869,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13872,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:13874,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:13876,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13877,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13878,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:13880,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13881,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13882,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13884,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13885,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13888,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13889,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13892
      start: 13864
    functionDepth: 3
    functionLinenumber: 13864
    functionLinenumberEnd: 13892
    functionName: silb_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_full_box_write
    - gf_bs_write_int
    - gf_bs_write_data
    - gf_bs_write_u8
    - gf_bs_write_u32
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err silb_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:13900,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:13903,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:13904,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13910
      start: 13894
    functionDepth: 1
    functionLinenumber: 13894
    functionLinenumberEnd: 13910
    functionName: silb_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err silb_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:13916,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13918
      start: 13914
    functionDepth: 1
    functionLinenumber: 13914
    functionLinenumberEnd: 13918
    functionName: emib_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *emib_box_new()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13924,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13925,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13926,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13927,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13928
      start: 13920
    functionDepth: 0
    functionLinenumber: 13920
    functionLinenumberEnd: 13928
    functionName: emib_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void emib_box_del(GF_Box *s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13935,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13936,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:13937,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13938,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13939,1
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:13941,1
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:13943,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:13948,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:13952,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13954,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13958
      start: 13930
    functionDepth: 2
    functionLinenumber: 13930
    functionLinenumberEnd: 13958
    functionName: emib_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_isom_read_null_terminated_string
    - gf_bs_read_u32
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u64
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err emib_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:13968,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13970,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:13971,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13972,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13973,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:13975,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13976,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13977,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:13979,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13980,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13981,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13984,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13987
      start: 13962
    functionDepth: 3
    functionLinenumber: 13962
    functionLinenumberEnd: 13987
    functionName: emib_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_data
    - gf_bs_write_u8
    - gf_bs_write_u64
    - gf_bs_write_u32
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err emib_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:13994,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:13995,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14000
      start: 13989
    functionDepth: 0
    functionLinenumber: 13989
    functionLinenumberEnd: 14000
    functionName: emib_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err emib_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:14006,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14008
      start: 14004
    functionDepth: 1
    functionLinenumber: 14004
    functionLinenumberEnd: 14008
    functionName: emeb_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *emeb_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14012,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14013
      start: 14010
    functionDepth: 0
    functionLinenumber: 14010
    functionLinenumberEnd: 14013
    functionName: emeb_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void emeb_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14018
      start: 14015
    functionDepth: 0
    functionLinenumber: 14015
    functionLinenumberEnd: 14018
    functionName: emeb_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err emeb_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:14024,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14025
      start: 14022
    functionDepth: 2
    functionLinenumber: 14022
    functionLinenumberEnd: 14025
    functionName: emeb_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err emeb_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14031
      start: 14027
    functionDepth: 0
    functionLinenumber: 14027
    functionLinenumberEnd: 14031
    functionName: emeb_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err emeb_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:14037,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14039
      start: 14035
    functionDepth: 1
    functionLinenumber: 14035
    functionLinenumberEnd: 14039
    functionName: evte_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *evte_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14043,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14044
      start: 14041
    functionDepth: 0
    functionLinenumber: 14041
    functionLinenumberEnd: 14044
    functionName: evte_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void evte_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14049
      start: 14046
    functionDepth: 0
    functionLinenumber: 14046
    functionLinenumberEnd: 14049
    functionName: evte_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evte_box_read(GF_Box *s,GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:14055,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14056
      start: 14053
    functionDepth: 2
    functionLinenumber: 14053
    functionLinenumberEnd: 14056
    functionName: evte_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evte_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14062
      start: 14058
    functionDepth: 0
    functionLinenumber: 14058
    functionLinenumberEnd: 14062
    functionName: evte_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evte_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:14069,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14071
      start: 14067
    functionDepth: 1
    functionLinenumber: 14067
    functionLinenumberEnd: 14071
    functionName: csgp_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *csgp_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14079,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14081,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14083,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14084
      start: 14072
    functionDepth: 0
    functionLinenumber: 14072
    functionLinenumberEnd: 14084
    functionName: csgp_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void csgp_box_del(GF_Box *a)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - code
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14092
      start: 14086
    functionDepth: 0
    functionLinenumber: 14086
    functionLinenumberEnd: 14092
    functionName: get_size_by_code
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 get_size_by_code(u32 code)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14100,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:14101,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/isomedia/box_code_base.c:14102,1
    - Dst: get_size_by_code
      Src: /src/gpac/src/isomedia/box_code_base.c:14107,1
    - Dst: get_size_by_code
      Src: /src/gpac/src/isomedia/box_code_base.c:14108,1
    - Dst: get_size_by_code
      Src: /src/gpac/src/isomedia/box_code_base.c:14109,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:14112,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14116,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14118,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14119,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14121,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14122,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:14126,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:14130,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:14132,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14137,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14138,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14142,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:14147,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:14153,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:14157,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14165,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14178,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/isomedia/box_code_base.c:14184,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 75
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14186
      start: 14093
    functionDepth: 1
    functionLinenumber: 14093
    functionLinenumberEnd: 14186
    functionName: csgp_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_LOG
    - get_size_by_code
    - gf_bs_align
    - memset
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - gf_bs_read_u8
    - gf_malloc
    - gf_bs_read_u24
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err csgp_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: get_size_by_code
      Src: /src/gpac/src/isomedia/box_code_base.c:14194,1
    - Dst: get_size_by_code
      Src: /src/gpac/src/isomedia/box_code_base.c:14195,1
    - Dst: get_size_by_code
      Src: /src/gpac/src/isomedia/box_code_base.c:14196,1
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:14198,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:14201,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14202,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14203,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14206,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14208,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14211,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14212,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14221,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14222,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14224,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/isomedia/box_code_base.c:14228,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14230
      start: 14189
    functionDepth: 2
    functionLinenumber: 14189
    functionLinenumberEnd: 14230
    functionName: csgp_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_int
    - get_size_by_code
    - gf_bs_align
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err csgp_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: get_size_by_code
      Src: /src/gpac/src/isomedia/box_code_base.c:14236,1
    - Dst: get_size_by_code
      Src: /src/gpac/src/isomedia/box_code_base.c:14237,1
    - Dst: get_size_by_code
      Src: /src/gpac/src/isomedia/box_code_base.c:14238,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14251
      start: 14232
    functionDepth: 1
    functionLinenumber: 14232
    functionLinenumberEnd: 14251
    functionName: csgp_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - get_size_by_code
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err csgp_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:14257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14259
      start: 14255
    functionDepth: 1
    functionLinenumber: 14255
    functionLinenumberEnd: 14259
    functionName: dmlp_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *dmlp_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14263,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14264
      start: 14261
    functionDepth: 0
    functionLinenumber: 14261
    functionLinenumberEnd: 14264
    functionName: dmlp_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void dmlp_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14270,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14271,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14272,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14273,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14276
      start: 14267
    functionDepth: 1
    functionLinenumber: 14267
    functionLinenumberEnd: 14276
    functionName: dmlp_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dmlp_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:14286,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14288,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14289,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14290,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14291,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14293
      start: 14281
    functionDepth: 2
    functionLinenumber: 14281
    functionLinenumberEnd: 14293
    functionName: dmlp_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_box_write_header
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dmlp_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14299
      start: 14295
    functionDepth: 0
    functionLinenumber: 14295
    functionLinenumberEnd: 14299
    functionName: dmlp_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dmlp_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:14305,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:14306,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14308
      start: 14303
    functionDepth: 1
    functionLinenumber: 14303
    functionLinenumberEnd: 14308
    functionName: xtra_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *xtra_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:14313,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/isomedia/box_code_base.c:14314,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14315,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14316,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14317,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:14319,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14320,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14321
      start: 14310
    functionDepth: 1
    functionLinenumber: 14310
    functionLinenumberEnd: 14321
    functionName: xtra_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_pop_back
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void xtra_box_del(GF_Box *s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE_NO_ERR
      Src: /src/gpac/src/isomedia/box_code_base.c:14331,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14332,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14333,1
    - Dst: ISOM_DECREASE_SIZE_NO_ERR
      Src: /src/gpac/src/isomedia/box_code_base.c:14340,1
    - Dst: ISOM_DECREASE_SIZE_NO_ERR
      Src: /src/gpac/src/isomedia/box_code_base.c:14342,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:14343,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:14344,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14348,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14349,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:14354,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14357,1
    - Dst: ISOM_DECREASE_SIZE_NO_ERR
      Src: /src/gpac/src/isomedia/box_code_base.c:14359,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:14361,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:14362,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:14370,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:14376,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:14379,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_base.c:14380,1
    - Dst: ISOM_DECREASE_SIZE_NO_ERR
      Src: /src/gpac/src/isomedia/box_code_base.c:14381,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 44
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14385
      start: 14323
    functionDepth: 1
    functionLinenumber: 14323
    functionLinenumberEnd: 14385
    functionName: xtra_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE_NO_ERR
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_add
    - gf_bs_read_u16
    - gf_malloc
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err xtra_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:14394,1
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:14396,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:14400,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:14402,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14407,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14408,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:14409,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14410,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14411,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:14412,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:14413,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14416
      start: 14390
    functionDepth: 2
    functionLinenumber: 14390
    functionLinenumberEnd: 14416
    functionName: xtra_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_box_write_header
    - gf_bs_write_u16
    - gf_list_count
    - gf_bs_write_data
    - gf_bs_write_u32
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err xtra_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:14421,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:14423,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:14424,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14427
      start: 14418
    functionDepth: 1
    functionLinenumber: 14418
    functionLinenumberEnd: 14427
    functionName: xtra_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err xtra_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:14435,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14437
      start: 14433
    functionDepth: 1
    functionLinenumber: 14433
    functionLinenumberEnd: 14437
    functionName: st3d_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *st3d_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14441,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14442
      start: 14439
    functionDepth: 0
    functionLinenumber: 14439
    functionLinenumberEnd: 14442
    functionName: st3d_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void st3d_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14448,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:14449,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14451
      start: 14445
    functionDepth: 1
    functionLinenumber: 14445
    functionLinenumberEnd: 14451
    functionName: st3d_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err st3d_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:14461,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:14463,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14465
      start: 14456
    functionDepth: 3
    functionLinenumber: 14456
    functionLinenumberEnd: 14465
    functionName: st3d_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u8
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err st3d_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14471
      start: 14467
    functionDepth: 0
    functionLinenumber: 14467
    functionLinenumberEnd: 14471
    functionName: st3d_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err st3d_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:14479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14481
      start: 14477
    functionDepth: 1
    functionLinenumber: 14477
    functionLinenumberEnd: 14481
    functionName: svhd_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *svhd_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14486,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14487,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14488
      start: 14483
    functionDepth: 0
    functionLinenumber: 14483
    functionLinenumberEnd: 14488
    functionName: svhd_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void svhd_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:14495,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:14498,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:14500,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14503
      start: 14491
    functionDepth: 1
    functionLinenumber: 14491
    functionLinenumberEnd: 14503
    functionName: svhd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - GF_LOG
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svhd_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:14513,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:14516,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:14516,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:14517,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14519
      start: 14508
    functionDepth: 3
    functionLinenumber: 14508
    functionLinenumberEnd: 14519
    functionName: svhd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u8
    - strlen
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svhd_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:14525,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14528
      start: 14521
    functionDepth: 0
    functionLinenumber: 14521
    functionLinenumberEnd: 14528
    functionName: svhd_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svhd_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:14535,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14537
      start: 14533
    functionDepth: 1
    functionLinenumber: 14533
    functionLinenumberEnd: 14537
    functionName: prhd_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *prhd_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14541,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14542
      start: 14539
    functionDepth: 0
    functionLinenumber: 14539
    functionLinenumberEnd: 14542
    functionName: prhd_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void prhd_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14548,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14549,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14550,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14551,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14553
      start: 14545
    functionDepth: 1
    functionLinenumber: 14545
    functionLinenumberEnd: 14553
    functionName: prhd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err prhd_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:14563,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14565,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14566,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14567,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14569
      start: 14558
    functionDepth: 3
    functionLinenumber: 14558
    functionLinenumberEnd: 14569
    functionName: prhd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err prhd_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14575
      start: 14571
    functionDepth: 0
    functionLinenumber: 14571
    functionLinenumberEnd: 14575
    functionName: prhd_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err prhd_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:14581,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14583
      start: 14579
    functionDepth: 1
    functionLinenumber: 14579
    functionLinenumberEnd: 14583
    functionName: proj_type_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *proj_type_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14587,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14588
      start: 14585
    functionDepth: 0
    functionLinenumber: 14585
    functionLinenumberEnd: 14588
    functionName: proj_type_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void proj_type_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14595,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14596,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14597,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14600,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14601,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14602,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14603,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14604,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14606,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14607,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14608,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:14610,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14611
      start: 14590
    functionDepth: 2
    functionLinenumber: 14590
    functionLinenumberEnd: 14611
    functionName: proj_type_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err proj_type_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:14621,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14624,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14625,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14628,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14629,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14630,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14631,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14633,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14634,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14637
      start: 14616
    functionDepth: 3
    functionLinenumber: 14616
    functionLinenumberEnd: 14637
    functionName: proj_type_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err proj_type_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14650
      start: 14639
    functionDepth: 0
    functionLinenumber: 14639
    functionLinenumberEnd: 14650
    functionName: proj_type_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err proj_type_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:14657,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14659
      start: 14655
    functionDepth: 1
    functionLinenumber: 14655
    functionLinenumberEnd: 14659
    functionName: empty_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *empty_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14663,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14664
      start: 14661
    functionDepth: 0
    functionLinenumber: 14661
    functionLinenumberEnd: 14664
    functionName: empty_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void empty_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14669
      start: 14666
    functionDepth: 0
    functionLinenumber: 14666
    functionLinenumberEnd: 14669
    functionName: empty_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err empty_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:14674,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14675
      start: 14672
    functionDepth: 2
    functionLinenumber: 14672
    functionLinenumberEnd: 14675
    functionName: empty_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err empty_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14680
      start: 14677
    functionDepth: 0
    functionLinenumber: 14677
    functionLinenumberEnd: 14680
    functionName: empty_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err empty_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14688,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14689,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14691
      start: 14685
    functionDepth: 0
    functionLinenumber: 14685
    functionLinenumberEnd: 14691
    functionName: extl_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void extl_box_del(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14698,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14699,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14700,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14701,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14702,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:14707,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:14710,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:14712,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14716
      start: 14694
    functionDepth: 1
    functionLinenumber: 14694
    functionLinenumberEnd: 14716
    functionName: extl_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err extl_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:14720,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14722
      start: 14718
    functionDepth: 1
    functionLinenumber: 14718
    functionLinenumberEnd: 14722
    functionName: extl_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *extl_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:14731,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14733,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14734,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14735,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/isomedia/box_code_base.c:14737,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14739
      start: 14726
    functionDepth: 3
    functionLinenumber: 14726
    functionLinenumberEnd: 14739
    functionName: extl_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_bs_write_utf8
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err extl_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:14746,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14749
      start: 14741
    functionDepth: 0
    functionLinenumber: 14741
    functionLinenumberEnd: 14749
    functionName: extl_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err extl_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:14770,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:14771,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14773
      start: 14768
    functionDepth: 1
    functionLinenumber: 14768
    functionLinenumberEnd: 14773
    functionName: sref_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *sref_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:14778,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/isomedia/box_code_base.c:14779,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14780,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14781,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:14783,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14784,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_code_base.c:14788,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14790
      start: 14775
    functionDepth: 1
    functionLinenumber: 14775
    functionLinenumberEnd: 14790
    functionName: sref_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_list_count
    - fprintf
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void sref_box_del(GF_Box *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14807,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - bs
    - nb_bits
    - max_val
    argTypes:
    - GF_BitStream*
    - u32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14811
      start: 14805
    functionDepth: 1
    functionLinenumber: 14805
    functionLinenumberEnd: 14811
    functionName: read_signed_int
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: s32
    signature: s32 read_signed_int(GF_BitStream *bs, u32 nb_bits, s32 max_val)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14816,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:14817,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14835,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:14837,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:14838,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_base.c:14840,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14841,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14844,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_base.c:14849,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:14850,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:14855,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:14856,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:14857,1
    - Dst: read_signed_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14864,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14866,1
    - Dst: read_signed_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14867,1
    - Dst: read_signed_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14870,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_base.c:14874,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14875,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14876,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14877,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:14881,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_base.c:14888,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:14889,1
    - Dst: read_signed_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14894,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:14898,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:14900,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:14909,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/box_code_base.c:14910,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:14912,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:14914,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:14915,1
    - Dst: assert
      Src: /src/gpac/src/isomedia/box_code_base.c:14936,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14940,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:14946,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/box_code_base.c:14947,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/box_code_base.c:14948,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14949,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:14953,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:14955,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/isomedia/box_code_base.c:14956,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14957,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14958,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:14960,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 125
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_SampleReferences*
    - GF_BitStream*
    assertStmts:
    - condition: (ref>=0)
      pos:
        line_end: 14935
        line_start: 14935
        source_file: /src/gpac/src/isomedia/box_code_base.c
    constantsTouched: []
    func_position:
      end: 14963
      start: 14813
    functionDepth: 2
    functionLinenumber: 14813
    functionLinenumberEnd: 14963
    functionName: cdrf_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - read_signed_int
    - gf_list_get
    - gf_list_pop_back
    - GF_SAFEALLOC
    - gf_list_pop_front
    - assert
    - gf_list_find
    - gf_list_count
    - gf_list_add
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - ISOM_DECREASE_SIZE_GOTO_EXIT
    - gf_malloc
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cdrf_box_read(GF_SampleReferences *s, GF_BitStream *bs)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: cdrf_box_read
      Src: /src/gpac/src/isomedia/box_code_base.c:14968,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14970,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14976,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:14980,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:14982,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14983,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14984,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14987,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14988,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:14992,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14994,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14995,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15000
      start: 14964
    functionDepth: 3
    functionLinenumber: 14964
    functionLinenumberEnd: 15000
    functionName: sref_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_SAFEALLOC
    - cdrf_box_read
    - gf_list_add
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sref_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:15007,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15009,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ptr
    - sample_id
    argTypes:
    - GF_SampleReferences*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15015
      start: 15005
    functionDepth: 1
    functionLinenumber: 15005
    functionLinenumberEnd: 15015
    functionName: cdrf_sample_is_leaf
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: Bool
    signature: Bool cdrf_sample_is_leaf(GF_SampleReferences *ptr, u32 sample_id)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:15023,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:15026,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15028,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:15030,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:15049,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/box_code_base.c:15055,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/box_code_base.c:15056,1
    - Dst: cdrf_sample_is_leaf
      Src: /src/gpac/src/isomedia/box_code_base.c:15068,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:15072,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15083,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 57
    argCount: 3
    argNames:
    - ptr
    - out_max_id
    - out_max_id_nodiff
    argTypes:
    - GF_SampleReferences*
    - s32*
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15091
      start: 15018
    functionDepth: 2
    functionLinenumber: 15018
    functionLinenumberEnd: 15091
    functionName: cdrf_get_refs
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_list_get
    - ABS
    - GF_SAFEALLOC
    - cdrf_sample_is_leaf
    - gf_list_count
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: GF_List
    signature: GF_List *cdrf_get_refs(GF_SampleReferences *ptr, s32 *out_max_id, s32
      *out_max_id_nodiff)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:15094,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/isomedia/box_code_base.c:15095,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:15096,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:15097,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:15099,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - refs
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15100
      start: 15092
    functionDepth: 1
    functionLinenumber: 15092
    functionLinenumberEnd: 15100
    functionName: cdrf_clean_refs
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_pop_back
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void cdrf_clean_refs(GF_List *refs)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 26
    argCount: 3
    argNames:
    - ref_ent
    - ref
    - mode
    argTypes:
    - GF_SampleRefDiffEntry*
    - GF_SampleRefDiffEntry*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15133
      start: 15102
    functionDepth: 0
    functionLinenumber: 15102
    functionLinenumberEnd: 15133
    functionName: cdrf_same_entry
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool cdrf_same_entry(GF_SampleRefDiffEntry *ref_ent, GF_SampleRefDiffEntry
      *ref, u32 mode)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15140,1
    - Dst: cdrf_same_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:15142,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15146,1
    - Dst: cdrf_same_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:15147,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15152,1
    - Dst: cdrf_same_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:15153,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 6
    argNames:
    - ref_ent
    - max_idx
    - refs
    - pattern_offset
    - nb_in_pattern
    - mode
    argTypes:
    - GF_SampleRefDiffEntry*
    - u32
    - GF_List*
    - s32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15157
      start: 15136
    functionDepth: 1
    functionLinenumber: 15136
    functionLinenumberEnd: 15157
    functionName: cdrf_locate_first_ref
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - cdrf_same_entry
    - gf_list_get
    linkageType: ''
    returnType: s32
    signature: s32 cdrf_locate_first_ref(GF_SampleRefDiffEntry *ref_ent, u32 max_idx,
      GF_List *refs, s32 pattern_offset, u32 nb_in_pattern, u32 mode)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/box_code_base.c:15161,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/box_code_base.c:15162,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15163,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15164,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15165,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15166,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15171,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 6
    argNames:
    - bs
    - pattern_len
    - prev_offset
    - nb_samples
    - sample_ids
    - bits
    argTypes:
    - GF_BitStream*
    - u32
    - s32
    - u32
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15173
      start: 15159
    functionDepth: 1
    functionLinenumber: 15159
    functionLinenumberEnd: 15173
    functionName: cdrf_box_flush_pattern
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_bs_write_int
    linkageType: ''
    returnType: void
    signature: void cdrf_box_flush_pattern(GF_BitStream *bs, u32 pattern_len, s32
      prev_offset, u32 nb_samples, u32 *sample_ids, u32 bits)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: cdrf_get_refs
      Src: /src/gpac/src/isomedia/box_code_base.c:15177,1
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:15186,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:15187,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15188,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:15196,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:15199,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15204,1
    - Dst: cdrf_locate_first_ref
      Src: /src/gpac/src/isomedia/box_code_base.c:15205,1
    - Dst: cdrf_box_flush_pattern
      Src: /src/gpac/src/isomedia/box_code_base.c:15209,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15212,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15213,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15215,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15217,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15219,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15220,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15222,1
    - Dst: cdrf_box_flush_pattern
      Src: /src/gpac/src/isomedia/box_code_base.c:15250,1
    - Dst: cdrf_box_flush_pattern
      Src: /src/gpac/src/isomedia/box_code_base.c:15263,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:15266,1
    - Dst: cdrf_clean_refs
      Src: /src/gpac/src/isomedia/box_code_base.c:15267,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 75
    argCount: 2
    argNames:
    - ptr
    - bs
    argTypes:
    - GF_SampleReferences*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15269
      start: 15175
    functionDepth: 3
    functionLinenumber: 15175
    functionLinenumberEnd: 15269
    functionName: cdrf_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_free
    - gf_list_get
    - cdrf_get_refs
    - gf_isom_box_write_header
    - gf_bs_write_int
    - cdrf_box_flush_pattern
    - gf_list_count
    - cdrf_locate_first_ref
    - cdrf_clean_refs
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cdrf_box_write(GF_SampleReferences *ptr, GF_BitStream *bs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: cdrf_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:15275,1
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:15277,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:15284,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:15285,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15287,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15289,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15292,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15293,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15297,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15302
      start: 15271
    functionDepth: 4
    functionLinenumber: 15271
    functionLinenumberEnd: 15302
    functionName: sref_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_full_box_write
    - gf_bs_write_int
    - gf_list_count
    - cdrf_box_write
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sref_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:15318,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15323,1
    - Dst: cdrf_locate_first_ref
      Src: /src/gpac/src/isomedia/box_code_base.c:15324,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/isomedia/box_code_base.c:15345,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15364,1
    - Dst: cdrf_same_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:15366,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/box_code_base.c:15394,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_code_base.c:15413,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_code_base.c:15414,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_code_base.c:15415,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_code_base.c:15417,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_code_base.c:15418,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 115
    argCount: 6
    argNames:
    - refs
    - mode
    - max_id
    - cost_full
    - total_entries
    - flags
    argTypes:
    - GF_List*
    - u32
    - s32
    - u32*
    - u32*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15479
      start: 15307
    functionDepth: 2
    functionLinenumber: 15307
    functionLinenumberEnd: 15479
    functionName: cdrf_get_cost
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_assert
    - gf_list_count
    - cdrf_locate_first_ref
    - cdrf_same_entry
    - gf_fatal_assert
    - fprintf
    linkageType: ''
    returnType: u32
    signature: u32 cdrf_get_cost(GF_List *refs, u32 mode, s32 max_id, u32 *cost_full,
      u32 *total_entries, u8 *flags)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: cdrf_get_refs
      Src: /src/gpac/src/isomedia/box_code_base.c:15488,1
    - Dst: cdrf_get_cost
      Src: /src/gpac/src/isomedia/box_code_base.c:15494,1
    - Dst: cdrf_get_cost
      Src: /src/gpac/src/isomedia/box_code_base.c:15497,1
    - Dst: cdrf_get_cost
      Src: /src/gpac/src/isomedia/box_code_base.c:15502,1
    - Dst: cdrf_clean_refs
      Src: /src/gpac/src/isomedia/box_code_base.c:15514,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:15518,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 24
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_SampleReferences*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15526
      start: 15480
    functionDepth: 3
    functionLinenumber: 15480
    functionLinenumberEnd: 15526
    functionName: cdrf_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - cdrf_clean_refs
    - cdrf_get_cost
    - cdrf_get_refs
    - gf_list_count
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cdrf_box_size(GF_SampleReferences *ptr)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/box_code_base.c:15531,1
    - Dst: cdrf_box_size
      Src: /src/gpac/src/isomedia/box_code_base.c:15535,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:15538,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15542,1
    - Dst: MAX
      Src: /src/gpac/src/isomedia/box_code_base.c:15549,1
    - Dst: MAX
      Src: /src/gpac/src/isomedia/box_code_base.c:15550,1
    - Dst: MAX
      Src: /src/gpac/src/isomedia/box_code_base.c:15553,1
    - Dst: MAX
      Src: /src/gpac/src/isomedia/box_code_base.c:15554,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 33
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15561
      start: 15528
    functionDepth: 4
    functionLinenumber: 15528
    functionLinenumberEnd: 15561
    functionName: sref_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_count
    - cdrf_box_size
    - MAX
    - gf_opts_get_bool
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sref_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:15567,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15569
      start: 15565
    functionDepth: 1
    functionLinenumber: 15565
    functionLinenumberEnd: 15569
    functionName: srat_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *srat_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:15573,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15574
      start: 15571
    functionDepth: 0
    functionLinenumber: 15571
    functionLinenumberEnd: 15574
    functionName: srat_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void srat_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:15579,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:15580,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15582
      start: 15576
    functionDepth: 1
    functionLinenumber: 15576
    functionLinenumberEnd: 15582
    functionName: srat_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err srat_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:15591,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:15593,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15595
      start: 15587
    functionDepth: 3
    functionLinenumber: 15587
    functionLinenumberEnd: 15595
    functionName: srat_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_isom_full_box_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err srat_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15601
      start: 15597
    functionDepth: 0
    functionLinenumber: 15597
    functionLinenumberEnd: 15601
    functionName: srat_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err srat_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/movie_fragments.c:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - moov
    - TrackID
    argTypes:
    - GF_MovieBox*
    - GF_ISOTrackID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 42
    functionName: GetTrex
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 2
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_TrackExtendsBox
    signature: GF_TrackExtendsBox *GetTrex(GF_MovieBox *moov, GF_ISOTrackID TrackID)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:51,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:52,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - mov
    - TrackID
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 56
    functionName: gf_isom_get_traf
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_TrackFragmentBox
    signature: GF_TrackFragmentBox *gf_isom_get_traf(GF_ISOFile *mov, GF_ISOTrackID
      TrackID)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/movie_fragments.c:67,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:69,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:74,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 3
    argNames:
    - movie
    - duration
    - remove_mehd
    argTypes:
    - GF_ISOFile*
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 60
    functionDepth: 5
    functionLinenumber: 60
    functionLinenumberEnd: 81
    functionName: gf_isom_set_movie_duration
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - GF_LOG
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_movie_duration(GF_ISOFile *movie, u64 duration,
      Bool remove_mehd)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/isomedia/movie_fragments.c:115,1
    - Dst: gf_isom_get_duration
      Src: /src/gpac/src/isomedia/movie_fragments.c:119,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/movie_fragments.c:123,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/movie_fragments.c:128,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:133,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:136,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:140,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/movie_fragments.c:141,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/movie_fragments.c:147,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/movie_fragments.c:149,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:150,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:151,1
    - Dst: Media_SetDuration
      Src: /src/gpac/src/isomedia/movie_fragments.c:157,1
    - Dst: gf_list_last
      Src: /src/gpac/src/isomedia/movie_fragments.c:159,1
    - Dst: WriteToFile
      Src: /src/gpac/src/isomedia/movie_fragments.c:166,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/movie_fragments.c:170,1
    - Dst: gf_bs_truncate
      Src: /src/gpac/src/isomedia/movie_fragments.c:171,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:177,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/movie_fragments.c:180,1
    - Dst: gf_isom_get_track_from_id
      Src: /src/gpac/src/isomedia/movie_fragments.c:181,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:195,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:197,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/isomedia/movie_fragments.c:203,1
    - Dst: gf_isom_reset_alt_brands
      Src: /src/gpac/src/isomedia/movie_fragments.c:205,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 86
    argCount: 3
    argNames:
    - movie
    - media_segment_type
    - mvex_after_tracks
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 84
    functionDepth: 9
    functionLinenumber: 84
    functionLinenumberEnd: 214
    functionName: gf_isom_finalize_for_fragment
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - WriteToFile
    - gf_isom_get_track_from_id
    - gf_bs_seek
    - GF_SAFEALLOC
    - memcpy
    - gf_bs_truncate
    - gf_isom_modify_alternate_brand
    - gf_isom_get_duration
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_list_add
    - gf_list_del_item
    - gf_isom_set_brand_info
    - gf_list_enum
    - gf_list_last
    - Media_SetDuration
    - gf_isom_reset_alt_brands
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_finalize_for_fragment(GF_ISOFile *movie, u32 media_segment_type,
      Bool mvex_after_tracks)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_from_id
      Src: /src/gpac/src/isomedia/movie_fragments.c:233,1
    - Dst: GetTrex
      Src: /src/gpac/src/isomedia/movie_fragments.c:239,1
    - Dst: GF_ISOM_FORMAT_FRAG_FLAGS
      Src: /src/gpac/src/isomedia/movie_fragments.c:245,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 29
    argCount: 9
    argNames:
    - movie
    - TrackID
    - DefaultSampleDescriptionIndex
    - DefaultSampleDuration
    - DefaultSampleSize
    - DefaultSampleIsSync
    - DefaultSamplePadding
    - DefaultDegradationPriority
    - force_traf_flags
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - u32
    - u32
    - u32
    - u8
    - u8
    - u16
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 216
    functionDepth: 2
    functionLinenumber: 216
    functionLinenumberEnd: 259
    functionName: gf_isom_change_track_fragment_defaults
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - GetTrex
    - gf_isom_get_track_from_id
    - GF_ISOM_FORMAT_FRAG_FLAGS
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err gf_isom_change_track_fragment_defaults(GF_ISOFile *movie, GF_ISOTrackID
      TrackID,\n        u32 DefaultSampleDescriptionIndex,\n        u32 DefaultSampleDuration,\n
      \       u32 DefaultSampleSize,\n        u8 DefaultSampleIsSync,\n        u8
      DefaultSamplePadding,\n        u16 DefaultDegradationPriority,\n        u8 force_traf_flags)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_from_id
      Src: /src/gpac/src/isomedia/movie_fragments.c:282,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:288,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:294,1
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/movie_fragments.c:296,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:301,1
    - Dst: GetTrex
      Src: /src/gpac/src/isomedia/movie_fragments.c:305,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:307,1
    - Dst: mvex_on_child_box
      Src: /src/gpac/src/isomedia/movie_fragments.c:310,1
    - Dst: gf_isom_change_track_fragment_defaults
      Src: /src/gpac/src/isomedia/movie_fragments.c:313,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 39
    argCount: 9
    argNames:
    - movie
    - TrackID
    - DefaultSampleDescriptionIndex
    - DefaultSampleDuration
    - DefaultSampleSize
    - DefaultSampleSyncFlags
    - DefaultSamplePadding
    - DefaultDegradationPriority
    - force_traf_flags
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - u32
    - u32
    - u32
    - u8
    - u8
    - u16
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 261
    functionDepth: 6
    functionLinenumber: 261
    functionLinenumberEnd: 314
    functionName: gf_isom_setup_track_fragment
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 1
    functionsReached:
    - gf_isom_change_track_fragment_defaults
    - gf_isom_box_new_parent
    - GetTrex
    - mvex_on_child_box
    - moov_on_child_box
    - gf_isom_get_track_from_id
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_setup_track_fragment(GF_ISOFile *movie, GF_ISOTrackID
      TrackID,\n                                    u32 DefaultSampleDescriptionIndex,\n
      \                                   u32 DefaultSampleDuration,\n                                    u32
      DefaultSampleSize,\n                                    u8 DefaultSampleSyncFlags,\n
      \                                   u8 DefaultSamplePadding,\n                                    u16
      DefaultDegradationPriority,\n                                    Bool force_traf_flags)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_from_id
      Src: /src/gpac/src/isomedia/movie_fragments.c:326,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/movie_fragments.c:328,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/isomedia/movie_fragments.c:330,1
    - Dst: GetTrex
      Src: /src/gpac/src/isomedia/movie_fragments.c:333,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 3
    argNames:
    - movie
    - TrackID
    - BaseTrackID
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - GF_ISOTrackID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 317
    functionDepth: 2
    functionLinenumber: 317
    functionLinenumberEnd: 337
    functionName: gf_isom_enable_traf_inherit
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - GetTrex
    - gf_list_find
    - gf_isom_get_track_from_id
    - gf_isom_set_track_reference
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_enable_traf_inherit(GF_ISOFile *movie, GF_ISOTrackID
      TrackID, GF_ISOTrackID BaseTrackID)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_from_id
      Src: /src/gpac/src/isomedia/movie_fragments.c:347,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:350,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/movie_fragments.c:351,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/isomedia/movie_fragments.c:353,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:365,1
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/movie_fragments.c:366,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:371,1
    - Dst: GetTrex
      Src: /src/gpac/src/isomedia/movie_fragments.c:374,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/movie_fragments.c:376,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:377,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:382,1
    - Dst: mvex_on_child_box
      Src: /src/gpac/src/isomedia/movie_fragments.c:383,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:386,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 5
    argNames:
    - movie
    - TrackID
    - boxes
    - boxes_size
    - force_traf_flags
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - u8*
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 340
    functionDepth: 6
    functionLinenumber: 340
    functionLinenumberEnd: 388
    functionName: gf_isom_setup_track_fragment_template
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_bs_new
    - gf_isom_box_new_parent
    - gf_bs_del
    - GetTrex
    - mvex_on_child_box
    - gf_list_add
    - gf_list_del_item
    - gf_bs_available
    - moov_on_child_box
    - gf_isom_get_track_from_id
    - gf_isom_box_parse
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_setup_track_fragment_template(GF_ISOFile *movie,
      GF_ISOTrackID TrackID, u8 *boxes, u32 boxes_size, u8 force_traf_flags)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/movie_fragments.c:397,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 3
    argNames:
    - traf
    - value
    - index
    argTypes:
    - GF_TrackFragmentBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 391
    functionDepth: 1
    functionLinenumber: 391
    functionLinenumberEnd: 414
    functionName: GetNumUsedValues
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: u32
    signature: u32 GetNumUsedValues(GF_TrackFragmentBox *traf, u32 value, u32 index)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/movie_fragments.c:430,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 41
    argCount: 1
    argNames:
    - traf
    argTypes:
    - GF_TrackFragmentBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 417
    functionDepth: 1
    functionLinenumber: 417
    functionLinenumberEnd: 473
    functionName: ComputeFragmentDefaults
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void ComputeFragmentDefaults(GF_TrackFragmentBox *traf)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:485,1
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:490,1
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:495,1
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:504,1
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:509,1
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:514,1
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:524,1
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:529,1
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:534,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 71
    argCount: 4
    argNames:
    - movie
    - TrackID
    - Code
    - Param
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - GF_ISOTrackFragmentOption
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 475
    functionDepth: 2
    functionLinenumber: 475
    functionLinenumberEnd: 541
    functionName: gf_isom_set_fragment_option
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_traf
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_fragment_option(GF_ISOFile *movie, GF_ISOTrackID
      TrackID, GF_ISOTrackFragmentOption Code, u32 Param)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/movie_fragments.c:551,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/movie_fragments.c:556,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - movie
    - offset
    argTypes:
    - GF_ISOFile*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 545
    functionDepth: 1
    functionLinenumber: 545
    functionLinenumberEnd: 565
    functionName: update_trun_offsets
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void update_trun_offsets(GF_ISOFile *movie, s32 offset)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:596,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:597,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/movie_fragments.c:598,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/movie_fragments.c:599,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:600,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/movie_fragments.c:616,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/movie_fragments.c:651,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/movie_fragments.c:652,1
    CyclomaticComplexity: 60
    EdgeCount: 60
    ICount: 140
    argCount: 2
    argNames:
    - movie
    - traf
    argTypes:
    - GF_ISOFile*
    - GF_TrackFragmentBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 567
    functionDepth: 5
    functionLinenumber: 567
    functionLinenumberEnd: 751
    functionName: UpdateRuns
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_list_count
    - gf_list_del_item
    - gf_list_enum
    - gf_list_rem
    linkageType: ''
    returnType: u32
    signature: u32 UpdateRuns(GF_ISOFile *movie, GF_TrackFragmentBox *traf)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/movie_fragments.c:761,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - traf
    - trun_idx
    - samp_idx
    argTypes:
    - GF_TrackFragmentBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 777
      start: 753
    functionDepth: 1
    functionLinenumber: 753
    functionLinenumberEnd: 777
    functionName: get_earliest_cts_following
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: s32
    signature: s32 get_earliest_cts_following(GF_TrackFragmentBox *traf, u32 trun_idx,
      u32 samp_idx)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:790,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:791,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:802,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:807,1
    - Dst: get_earliest_cts_following
      Src: /src/gpac/src/isomedia/movie_fragments.c:838,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/movie_fragments.c:844,1
    - Dst: GF_ISOM_GET_FRAG_SYNC
      Src: /src/gpac/src/isomedia/movie_fragments.c:846,1
    - Dst: get_earliest_cts_following
      Src: /src/gpac/src/isomedia/movie_fragments.c:848,1
    - Dst: GF_ISOM_GET_FRAG_SYNC
      Src: /src/gpac/src/isomedia/movie_fragments.c:859,1
    - Dst: get_earliest_cts_following
      Src: /src/gpac/src/isomedia/movie_fragments.c:860,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 77
    argCount: 4
    argNames:
    - moof
    - refTrackID
    - sap_delta
    - starts_with_sap
    argTypes:
    - GF_MovieFragmentBox*
    - GF_ISOTrackID
    - u32*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 878
      start: 779
    functionDepth: 2
    functionLinenumber: 779
    functionLinenumberEnd: 878
    functionName: moof_get_sap_info
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - get_earliest_cts_following
    - gf_list_get
    - GF_ISOM_GET_FRAG_SYNC
    - gf_list_count
    - gf_list_enum
    linkageType: ''
    returnType: u32
    signature: u32 moof_get_sap_info(GF_MovieFragmentBox *moof, GF_ISOTrackID refTrackID,
      u32 *sap_delta, Bool *starts_with_sap)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:885,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:886,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/movie_fragments.c:894,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 2
    argNames:
    - moof
    - refTrackID
    argTypes:
    - GF_MovieFragmentBox*
    - GF_ISOTrackID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 904
      start: 880
    functionDepth: 1
    functionLinenumber: 880
    functionLinenumberEnd: 904
    functionName: moof_get_duration
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_enum
    linkageType: ''
    returnType: u32
    signature: u32 moof_get_duration(GF_MovieFragmentBox *moof, GF_ISOTrackID refTrackID)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:912,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:913,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/movie_fragments.c:922,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - moof
    - refTrackID
    argTypes:
    - GF_MovieFragmentBox*
    - GF_ISOTrackID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 931
      start: 906
    functionDepth: 1
    functionLinenumber: 906
    functionLinenumberEnd: 931
    functionName: moof_get_earliest_cts
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_enum
    linkageType: ''
    returnType: u64
    signature: u64 moof_get_earliest_cts(GF_MovieFragmentBox *moof, GF_ISOTrackID
      refTrackID)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:941,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:943,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:944,1
    - Dst: GF_ISOFile*::on_last_block_start
      Src: /src/gpac/src/isomedia/movie_fragments.c:947,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/movie_fragments.c:949,1
    - Dst: GF_ISOFile*::on_block_out
      Src: /src/gpac/src/isomedia/movie_fragments.c:950,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/movie_fragments.c:952,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/movie_fragments.c:953,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 17
    argCount: 3
    argNames:
    - movie
    - out_seg_size
    - is_last_moof
    argTypes:
    - GF_ISOFile*
    - u64*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 957
      start: 936
    functionDepth: 1
    functionLinenumber: 936
    functionLinenumberEnd: 957
    functionName: flush_ref_samples
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_pop_front
    - GF_ISOFile*::on_block_out
    - GF_ISOFile*::on_last_block_start
    - gf_list_count
    linkageType: ''
    returnType: void
    signature: void flush_ref_samples(GF_ISOFile *movie, u64 *out_seg_size, Bool is_last_moof)
  - BBCount: 68
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/movie_fragments.c:982,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:985,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/movie_fragments.c:986,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:987,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:990,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:991,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/movie_fragments.c:998,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/movie_fragments.c:999,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:1000,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:1005,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:1006,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/movie_fragments.c:1013,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/movie_fragments.c:1014,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:1015,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:1024,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:1035,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:1046,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/movie_fragments.c:1048,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/movie_fragments.c:1049,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:1050,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/movie_fragments.c:1051,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:1065,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/movie_fragments.c:1073,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/movie_fragments.c:1077,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/movie_fragments.c:1080,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/movie_fragments.c:1082,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/movie_fragments.c:1084,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:1086,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:1087,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/movie_fragments.c:1090,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/movie_fragments.c:1093,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:1095,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/movie_fragments.c:1098,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/movie_fragments.c:1100,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/movie_fragments.c:1102,1
    - Dst: gf_bs_truncate
      Src: /src/gpac/src/isomedia/movie_fragments.c:1104,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:1110,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/movie_fragments.c:1118,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/movie_fragments.c:1122,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/movie_fragments.c:1123,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/movie_fragments.c:1124,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:1132,1
    - Dst: update_trun_offsets
      Src: /src/gpac/src/isomedia/movie_fragments.c:1137,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/movie_fragments.c:1143,1
    - Dst: ComputeFragmentDefaults
      Src: /src/gpac/src/isomedia/movie_fragments.c:1145,1
    - Dst: UpdateRuns
      Src: /src/gpac/src/isomedia/movie_fragments.c:1147,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/movie_fragments.c:1151,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:1152,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:1160,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/movie_fragments.c:1162,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/movie_fragments.c:1164,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/movie_fragments.c:1166,1
    - Dst: gf_bs_truncate
      Src: /src/gpac/src/isomedia/movie_fragments.c:1168,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:1172,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/movie_fragments.c:1182,1
    - Dst: update_trun_offsets
      Src: /src/gpac/src/isomedia/movie_fragments.c:1195,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:1196,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/movie_fragments.c:1204,1
    - Dst: gf_bs_new_cbk
      Src: /src/gpac/src/isomedia/movie_fragments.c:1214,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:1218,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/movie_fragments.c:1222,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/movie_fragments.c:1223,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/movie_fragments.c:1224,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/isomedia/movie_fragments.c:1225,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/movie_fragments.c:1226,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/movie_fragments.c:1227,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/movie_fragments.c:1228,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/movie_fragments.c:1231,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/movie_fragments.c:1232,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/movie_fragments.c:1233,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/isomedia/movie_fragments.c:1234,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/movie_fragments.c:1235,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/movie_fragments.c:1237,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/isomedia/movie_fragments.c:1237,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/isomedia/movie_fragments.c:1237,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/movie_fragments.c:1238,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/movie_fragments.c:1242,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:1244,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/movie_fragments.c:1245,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:1246,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:1248,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:1254,1
    - Dst: gf_bs_grow
      Src: /src/gpac/src/isomedia/movie_fragments.c:1256,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/movie_fragments.c:1259,1
    - Dst: gf_bs_prevent_dispatch
      Src: /src/gpac/src/isomedia/movie_fragments.c:1265,1
    - Dst: gf_isom_write_compressed_box
      Src: /src/gpac/src/isomedia/movie_fragments.c:1268,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/movie_fragments.c:1268,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/movie_fragments.c:1270,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/movie_fragments.c:1277,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/movie_fragments.c:1278,1
    - Dst: gf_bs_prevent_dispatch
      Src: /src/gpac/src/isomedia/movie_fragments.c:1282,1
    - Dst: flush_ref_samples
      Src: /src/gpac/src/isomedia/movie_fragments.c:1287,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:1287,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:1289,1
    - Dst: GF_ISOFile*::on_last_block_start
      Src: /src/gpac/src/isomedia/movie_fragments.c:1290,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/movie_fragments.c:1294,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/movie_fragments.c:1295,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/movie_fragments.c:1298,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/movie_fragments.c:1299,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/movie_fragments.c:1304,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:1305,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:1310,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:1311,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/movie_fragments.c:1313,1
    - Dst: gf_bs_truncate
      Src: /src/gpac/src/isomedia/movie_fragments.c:1314,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:1317,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/movie_fragments.c:1323,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:1324,1
    CyclomaticComplexity: 93
    EdgeCount: 93
    ICount: 291
    argCount: 5
    argNames:
    - movie
    - load_mdat_only
    - data_offset_diff
    - moof_size
    - reassign_bs
    argTypes:
    - GF_ISOFile*
    - Bool
    - s32
    - u32*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1328
      start: 961
    functionDepth: 6
    functionLinenumber: 961
    functionLinenumberEnd: 1328
    functionName: StoreFragment
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_read_data
    - gf_isom_box_size
    - gf_bs_grow
    - gf_bs_new
    - gf_bs_new_cbk
    - gf_isom_box_write
    - update_trun_offsets
    - gf_list_count
    - gf_bs_write_u32
    - gf_list_get
    - gf_isom_box_del
    - gf_bs_get_content
    - GF_ISOFile*::on_last_block_start
    - gf_bs_write_u64
    - gf_net_get_ntp_ts
    - gf_isom_box_del_parent
    - gf_bs_write_u24
    - gf_bs_truncate
    - gf_sys_is_test_mode
    - gf_bs_get_position
    - gf_bs_write_data
    - flush_ref_samples
    - gf_bs_prevent_dispatch
    - gf_list_del_item
    - UpdateRuns
    - gf_list_enum
    - gf_malloc
    - gf_list_del
    - ComputeFragmentDefaults
    - gf_bs_seek
    - gf_list_pop_front
    - gf_bs_del
    - gf_isom_write_compressed_box
    - GF_4CC
    - gf_bs_write_u8
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err StoreFragment(GF_ISOFile *movie, Bool load_mdat_only, s32 data_offset_diff,
      u32 *moof_size, Bool reassign_bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:1333,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:1335,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/movie_fragments.c:1339,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/movie_fragments.c:1340,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/movie_fragments.c:1342,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/movie_fragments.c:1344,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 4
    argNames:
    - sidx
    - bs
    - start_pos
    - ssix
    argTypes:
    - GF_SegmentIndexBox*
    - GF_BitStream*
    - u64
    - GF_SubsegmentIndexBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1346
      start: 1330
    functionDepth: 3
    functionLinenumber: 1330
    functionLinenumberEnd: 1346
    functionName: sidx_rewrite
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_size
    - gf_isom_box_write
    - gf_bs_seek
    - gf_bs_get_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sidx_rewrite(GF_SegmentIndexBox *sidx, GF_BitStream *bs, u64
      start_pos, GF_SubsegmentIndexBox *ssix)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:1360,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:1362,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:1371,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:1382,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/movie_fragments.c:1384,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:1389,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:1393,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:1403,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:1407,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/movie_fragments.c:1409,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:1413,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/movie_fragments.c:1415,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:1421,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 68
    argCount: 8
    argNames:
    - movie
    - subsegs_per_sidx
    - daisy_chain_sidx
    - nb_segs
    - frags_per_segment
    - start_range
    - end_range
    - use_ssix
    argTypes:
    - GF_ISOFile*
    - s32
    - Bool
    - u32
    - u32*
    - u32*
    - u32*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1424
      start: 1348
    functionDepth: 4
    functionLinenumber: 1348
    functionLinenumberEnd: 1424
    functionName: gf_isom_allocate_sidx
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_size
    - gf_isom_box_write
    - gf_bs_get_position
    - gf_list_count
    - memset
    - gf_isom_box_new
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_allocate_sidx(GF_ISOFile *movie, s32 subsegs_per_sidx,
      Bool daisy_chain_sidx, u32 nb_segs, u32 *frags_per_segment, u32 *start_range,
      u32 *end_range, Bool use_ssix)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/isomedia/movie_fragments.c:1437,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/isomedia/movie_fragments.c:1441,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:1445,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/movie_fragments.c:1447,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/movie_fragments.c:1455,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:1457,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/movie_fragments.c:1458,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:1459,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:1461,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 31
    argCount: 2
    argNames:
    - movie
    - last_segment
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1466
      start: 1427
    functionDepth: 4
    functionLinenumber: 1427
    functionLinenumberEnd: 1466
    functionName: gf_isom_write_styp
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_size
    - gf_isom_box_del
    - gf_list_pop_front
    - gf_isom_box_write
    - gf_isom_modify_alternate_brand
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_write_styp(GF_ISOFile *movie, Bool last_segment)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: StoreFragment
      Src: /src/gpac/src/isomedia/movie_fragments.c:1479,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/movie_fragments.c:1489,1
    - Dst: gf_bs_truncate
      Src: /src/gpac/src/isomedia/movie_fragments.c:1490,1
    - Dst: gf_bs_new_cbk_buffer
      Src: /src/gpac/src/isomedia/movie_fragments.c:1496,1
    - Dst: gf_isom_write_styp
      Src: /src/gpac/src/isomedia/movie_fragments.c:1500,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:1504,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:1508,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/movie_fragments.c:1509,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:1511,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:1512,1
    - Dst: StoreFragment
      Src: /src/gpac/src/isomedia/movie_fragments.c:1514,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:1517,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:1524,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/movie_fragments.c:1525,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/movie_fragments.c:1527,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/movie_fragments.c:1528,1
    - Dst: gf_isom_datamap_flush
      Src: /src/gpac/src/isomedia/movie_fragments.c:1531,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:1533,1
    - Dst: gf_isom_fdm_new_temp
      Src: /src/gpac/src/isomedia/movie_fragments.c:1534,1
    - Dst: gf_isom_datamap_flush
      Src: /src/gpac/src/isomedia/movie_fragments.c:1536,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:1538,1
    - Dst: gf_bs_transfer
      Src: /src/gpac/src/isomedia/movie_fragments.c:1548,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/movie_fragments.c:1549,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/isomedia/movie_fragments.c:1551,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:1552,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 70
    argCount: 2
    argNames:
    - movie
    - last_segment
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1559
      start: 1468
    functionDepth: 7
    functionLinenumber: 1468
    functionLinenumberEnd: 1559
    functionName: gf_isom_flush_fragments
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_get_size
    - gf_list_count
    - gf_isom_datamap_del
    - gf_list_get
    - gf_isom_box_del
    - StoreFragment
    - gf_bs_truncate
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_bs_new_cbk_buffer
    - gf_bs_get_content_no_truncate
    - gf_bs_seek
    - gf_isom_fdm_new_temp
    - gf_isom_write_styp
    - gf_bs_transfer
    - gf_bs_del
    - gf_isom_datamap_flush
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_flush_fragments(GF_ISOFile *movie, Bool last_segment)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - media_time
    - ts_shift
    argTypes:
    - u64
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1575
      start: 1567
    functionDepth: 0
    functionLinenumber: 1567
    functionLinenumberEnd: 1575
    functionName: get_presentation_time
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 get_presentation_time(u64 media_time, s32 ts_shift)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1589
      start: 1583
    functionDepth: 0
    functionLinenumber: 1583
    functionLinenumberEnd: 1589
    functionName: gf_isom_get_segment_name
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_isom_get_segment_name(GF_ISOFile *movie)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:1597,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:1600,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - movie
    - out_seg_size
    argTypes:
    - GF_ISOFile*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1604
      start: 1592
    functionDepth: 1
    functionLinenumber: 1592
    functionLinenumberEnd: 1604
    functionName: compute_seg_size
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    linkageType: ''
    returnType: void
    signature: void compute_seg_size(GF_ISOFile *movie, u64 *out_seg_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:1608,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:1611,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:1614,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:1617,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - moof
    argTypes:
    - GF_MovieFragmentBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1628
      start: 1606
    functionDepth: 1
    functionLinenumber: 1606
    functionLinenumberEnd: 1628
    functionName: moof_get_first_sap_end
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: u32
    signature: u32 moof_get_first_sap_end(GF_MovieFragmentBox *moof)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:1640,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:1642,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:1643,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/movie_fragments.c:1656,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:1658,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:1659,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/movie_fragments.c:1666,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:1671,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:1672,1
    - Dst: get_presentation_time
      Src: /src/gpac/src/isomedia/movie_fragments.c:1675,1
    - Dst: get_presentation_time
      Src: /src/gpac/src/isomedia/movie_fragments.c:1677,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/movie_fragments.c:1719,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/movie_fragments.c:1724,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/movie_fragments.c:1726,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 74
    argCount: 4
    argNames:
    - ref_track_decode_time
    - ts_shift
    - refTrackID
    - movie
    argTypes:
    - u64
    - s32
    - u32
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1740
      start: 1630
    functionDepth: 1
    functionLinenumber: 1630
    functionLinenumberEnd: 1740
    functionName: estimate_next_moof_earliest_presentation_time
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - ABS
    - memmove
    - gf_list_count
    - gf_list_enum
    - get_presentation_time
    - gf_realloc
    linkageType: ''
    returnType: u64
    signature: u64 estimate_next_moof_earliest_presentation_time(u64 ref_track_decode_time,
      s32 ts_shift, u32 refTrackID, GF_ISOFile *movie)
  - BBCount: 114
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:1777,1
    - Dst: StoreFragment
      Src: /src/gpac/src/isomedia/movie_fragments.c:1782,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:1787,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:1792,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/movie_fragments.c:1797,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/movie_fragments.c:1798,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/movie_fragments.c:1800,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/movie_fragments.c:1801,1
    - Dst: compute_seg_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:1805,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:1808,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/movie_fragments.c:1815,1
    - Dst: gf_bs_truncate
      Src: /src/gpac/src/isomedia/movie_fragments.c:1816,1
    - Dst: gf_isom_get_track_from_id
      Src: /src/gpac/src/isomedia/movie_fragments.c:1821,1
    - Dst: gf_bs_new_cbk_buffer
      Src: /src/gpac/src/isomedia/movie_fragments.c:1836,1
    - Dst: gf_bs_prevent_dispatch
      Src: /src/gpac/src/isomedia/movie_fragments.c:1837,1
    - Dst: gf_isom_write_styp
      Src: /src/gpac/src/isomedia/movie_fragments.c:1840,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:1851,1
    - Dst: get_presentation_time
      Src: /src/gpac/src/isomedia/movie_fragments.c:1857,1
    - Dst: moof_get_earliest_cts
      Src: /src/gpac/src/isomedia/movie_fragments.c:1857,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:1857,1
    - Dst: estimate_next_moof_earliest_presentation_time
      Src: /src/gpac/src/isomedia/movie_fragments.c:1860,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:1865,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:1887,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:1945,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/movie_fragments.c:1947,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:1950,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:1952,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/movie_fragments.c:1954,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:1959,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:1961,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:1968,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:1975,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/movie_fragments.c:1977,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:1981,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/movie_fragments.c:1985,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:1992,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:2015,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:2019,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/movie_fragments.c:2020,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:2027,1
    - Dst: get_presentation_time
      Src: /src/gpac/src/isomedia/movie_fragments.c:2031,1
    - Dst: moof_get_earliest_cts
      Src: /src/gpac/src/isomedia/movie_fragments.c:2031,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:2036,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:2047,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/movie_fragments.c:2049,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:2055,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:2058,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/movie_fragments.c:2060,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:2063,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/movie_fragments.c:2070,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:2077,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:2081,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:2082,1
    - Dst: StoreFragment
      Src: /src/gpac/src/isomedia/movie_fragments.c:2089,1
    - Dst: get_presentation_time
      Src: /src/gpac/src/isomedia/movie_fragments.c:2100,1
    - Dst: moof_get_earliest_cts
      Src: /src/gpac/src/isomedia/movie_fragments.c:2100,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:2112,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/movie_fragments.c:2113,1
    - Dst: moof_get_sap_info
      Src: /src/gpac/src/isomedia/movie_fragments.c:2119,1
    - Dst: moof_get_duration
      Src: /src/gpac/src/isomedia/movie_fragments.c:2128,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:2131,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/movie_fragments.c:2146,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:2149,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:2151,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/movie_fragments.c:2154,1
    - Dst: moof_get_first_sap_end
      Src: /src/gpac/src/isomedia/movie_fragments.c:2156,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/movie_fragments.c:2164,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:2188,1
    - Dst: get_presentation_time
      Src: /src/gpac/src/isomedia/movie_fragments.c:2189,1
    - Dst: moof_get_earliest_cts
      Src: /src/gpac/src/isomedia/movie_fragments.c:2189,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:2189,1
    - Dst: get_presentation_time
      Src: /src/gpac/src/isomedia/movie_fragments.c:2191,1
    - Dst: sidx_rewrite
      Src: /src/gpac/src/isomedia/movie_fragments.c:2216,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2217,1
    - Dst: gf_list_last
      Src: /src/gpac/src/isomedia/movie_fragments.c:2220,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:2233,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/movie_fragments.c:2234,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:2243,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:2244,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2246,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/movie_fragments.c:2254,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/movie_fragments.c:2255,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/movie_fragments.c:2260,1
    - Dst: sidx_rewrite
      Src: /src/gpac/src/isomedia/movie_fragments.c:2262,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2263,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2267,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2272,1
    - Dst: compute_seg_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:2274,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/movie_fragments.c:2279,1
    - Dst: sidx_rewrite
      Src: /src/gpac/src/isomedia/movie_fragments.c:2280,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2281,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2284,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:2292,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:2294,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:2295,1
    - Dst: sidx_rewrite
      Src: /src/gpac/src/isomedia/movie_fragments.c:2300,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:2313,1
    - Dst: sidx_rewrite
      Src: /src/gpac/src/isomedia/movie_fragments.c:2315,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:2317,1
    - Dst: gf_list_last
      Src: /src/gpac/src/isomedia/movie_fragments.c:2318,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2319,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/movie_fragments.c:2320,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/isomedia/movie_fragments.c:2321,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2323,1
    - Dst: sidx_rewrite
      Src: /src/gpac/src/isomedia/movie_fragments.c:2326,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2327,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:2337,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/movie_fragments.c:2338,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/movie_fragments.c:2340,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/movie_fragments.c:2341,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2344,1
    - Dst: gf_isom_fdm_new_temp
      Src: /src/gpac/src/isomedia/movie_fragments.c:2345,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/isomedia/movie_fragments.c:2349,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2351,1
    - Dst: compute_seg_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:2354,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/isomedia/movie_fragments.c:2359,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2360,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:2365,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/movie_fragments.c:2366,1
    - Dst: GF_ISOFile*::on_block_out
      Src: /src/gpac/src/isomedia/movie_fragments.c:2367,1
    - Dst: flush_ref_samples
      Src: /src/gpac/src/isomedia/movie_fragments.c:2370,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:2370,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/movie_fragments.c:2372,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2373,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2376,1
    - Dst: GF_ISOFile*::on_last_block_start
      Src: /src/gpac/src/isomedia/movie_fragments.c:2381,1
    - Dst: GF_ISOFile*::on_block_out
      Src: /src/gpac/src/isomedia/movie_fragments.c:2389,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/movie_fragments.c:2393,1
    CyclomaticComplexity: 152
    EdgeCount: 152
    ICount: 515
    argCount: 14
    argNames:
    - movie
    - subsegments_per_sidx
    - referenceTrackID
    - ref_track_decode_time
    - ts_shift
    - ref_track_next_cts
    - daisy_chain_sidx
    - use_ssix
    - last_segment
    - close_segment_handle
    - segment_marker_4cc
    - index_start_range
    - index_end_range
    - out_seg_size
    argTypes:
    - GF_ISOFile*
    - s32
    - GF_ISOTrackID
    - u64
    - s32
    - u64
    - Bool
    - Bool
    - Bool
    - Bool
    - u32
    - u64*
    - u64*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2396
      start: 1743
    functionDepth: 7
    functionLinenumber: 1743
    functionLinenumberEnd: 2396
    functionName: gf_isom_close_segment
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_bs_read_data
    - gf_isom_box_size
    - GF_SAFEALLOC
    - gf_isom_box_write
    - gf_bs_get_size
    - gf_list_count
    - gf_isom_datamap_del
    - memset
    - gf_bs_write_u32
    - gf_realloc
    - estimate_next_moof_earliest_presentation_time
    - gf_list_new
    - gf_list_get
    - gf_assert
    - gf_isom_box_del
    - compute_seg_size
    - GF_ISOFile*::on_block_out
    - StoreFragment
    - GF_ISOFile*::on_last_block_start
    - gf_list_add
    - gf_isom_box_new
    - gf_list_rem_last
    - get_presentation_time
    - sidx_rewrite
    - GF_LOG
    - gf_bs_truncate
    - gf_bs_get_position
    - gf_bs_write_data
    - flush_ref_samples
    - moof_get_duration
    - gf_bs_prevent_dispatch
    - gf_bs_new_cbk_buffer
    - gf_bs_get_content_no_truncate
    - gf_list_last
    - gf_malloc
    - gf_list_del
    - moof_get_earliest_cts
    - gf_bs_seek
    - gf_isom_fdm_new_temp
    - gf_list_pop_front
    - gf_isom_write_styp
    - moof_get_first_sap_end
    - gf_bs_del
    - moof_get_sap_info
    - gf_isom_get_track_from_id
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_close_segment(GF_ISOFile *movie, s32 subsegments_per_sidx,
      GF_ISOTrackID referenceTrackID, u64 ref_track_decode_time, s32 ts_shift, u64
      ref_track_next_cts, Bool daisy_chain_sidx, Bool use_ssix, Bool last_segment,
      Bool close_segment_handle, u32 segment_marker_4cc, u64 *index_start_range, u64
      *index_end_range, u64 *out_seg_size)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new_cbk_buffer
      Src: /src/gpac/src/isomedia/movie_fragments.c:2412,1
    - Dst: gf_bs_prevent_dispatch
      Src: /src/gpac/src/isomedia/movie_fragments.c:2413,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/movie_fragments.c:2415,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:2420,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:2423,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/movie_fragments.c:2434,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:2445,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:2448,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/movie_fragments.c:2456,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/movie_fragments.c:2459,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/movie_fragments.c:2464,1
    - Dst: gf_isom_write_compressed_box
      Src: /src/gpac/src/isomedia/movie_fragments.c:2470,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/movie_fragments.c:2470,1
    - Dst: gf_isom_write_compressed_box
      Src: /src/gpac/src/isomedia/movie_fragments.c:2478,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/movie_fragments.c:2478,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/movie_fragments.c:2480,1
    - Dst: gf_isom_write_compressed_box
      Src: /src/gpac/src/isomedia/movie_fragments.c:2486,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/movie_fragments.c:2486,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/movie_fragments.c:2488,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2493,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2496,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/isomedia/movie_fragments.c:2500,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2501,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 86
    argCount: 3
    argNames:
    - movie
    - sidx_max_size
    - force_v1
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2503
      start: 2398
    functionDepth: 4
    functionLinenumber: 2398
    functionLinenumberEnd: 2503
    functionName: gf_isom_flush_sidx
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_isom_box_size
    - GF_4CC
    - gf_isom_box_del
    - GF_LOG
    - gf_isom_box_write
    - gf_bs_del
    - gf_bs_prevent_dispatch
    - gf_bs_new_cbk_buffer
    - gf_isom_write_compressed_box
    - gf_bs_get_content_no_truncate
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_flush_sidx(GF_ISOFile *movie, u32 sidx_max_size,
      Bool force_v1)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_close_segment
      Src: /src/gpac/src/isomedia/movie_fragments.c:2509,1
    - Dst: StoreFragment
      Src: /src/gpac/src/isomedia/movie_fragments.c:2511,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2513
      start: 2505
    functionDepth: 8
    functionLinenumber: 2505
    functionLinenumberEnd: 2513
    functionName: gf_isom_close_fragments
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 1
    functionsReached:
    - gf_isom_close_segment
    - StoreFragment
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_close_fragments(GF_ISOFile *movie)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:2523,1
    - Dst: gf_isom_get_filename
      Src: /src/gpac/src/isomedia/movie_fragments.c:2529,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2530,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:2531,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/movie_fragments.c:2536,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:2536,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:2537,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:2547,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 3
    argNames:
    - movie
    - SegName
    - memory_mode
    argTypes:
    - GF_ISOFile*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2550
      start: 2515
    functionDepth: 1
    functionLinenumber: 2515
    functionLinenumberEnd: 2550
    functionName: gf_isom_start_segment
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 1
    functionsReached:
    - gf_assert
    - gf_bs_new
    - gf_bs_get_position
    - gf_list_count
    - gf_isom_datamap_del
    - gf_isom_datamap_new
    - gf_isom_get_filename
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_start_segment(GF_ISOFile *movie, const char *SegName,
      Bool memory_mode)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 5
    argNames:
    - movie
    - reference_track_ID
    - ntp
    - timestamp
    - at_mux
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - u64
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2561
      start: 2552
    functionDepth: 0
    functionLinenumber: 2552
    functionLinenumberEnd: 2561
    functionName: gf_isom_set_fragment_reference_time
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_fragment_reference_time(GF_ISOFile *movie, GF_ISOTrackID
      reference_track_ID, u64 ntp, u64 timestamp, Bool at_mux)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:2569,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:2570,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:2574,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:2575,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 4
    argNames:
    - movie
    - reference_track_ID
    - ntp_in_track_timescale
    - traf_duration_in_track_timescale
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2581
      start: 2563
    functionDepth: 5
    functionLinenumber: 2563
    functionLinenumberEnd: 2581
    functionName: gf_isom_set_traf_mss_timeext
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_traf_mss_timeext(GF_ISOFile *movie, GF_ISOTrackID
      reference_track_ID, u64 ntp_in_track_timescale, u64 traf_duration_in_track_timescale)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:2600,1
    - Dst: StoreFragment
      Src: /src/gpac/src/isomedia/movie_fragments.c:2610,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:2615,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:2617,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:2622,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:2626,1
    - Dst: gf_bs_prevent_dispatch
      Src: /src/gpac/src/isomedia/movie_fragments.c:2630,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/movie_fragments.c:2632,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/movie_fragments.c:2633,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:2637,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:2638,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:2641,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:2651,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:2657,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:2663,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:2667,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/movie_fragments.c:2675,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 74
    argCount: 2
    argNames:
    - movie
    - flags
    argTypes:
    - GF_ISOFile*
    - GF_ISOStartFragmentFlags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2683
      start: 2583
    functionDepth: 7
    functionLinenumber: 2583
    functionLinenumberEnd: 2683
    functionName: gf_isom_start_fragment
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - StoreFragment
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_bs_get_position
    - strcmp
    - gf_list_add
    - gf_bs_prevent_dispatch
    - gf_isom_box_new
    - gf_bs_write_u32
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_start_fragment(GF_ISOFile *movie, GF_ISOStartFragmentFlags
      flags)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:2693,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/movie_fragments.c:2694,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/isomedia/movie_fragments.c:2696,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/movie_fragments.c:2700,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2701,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:2704,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/movie_fragments.c:2710,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2711,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:2714,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:2724,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:2725,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:2727,1
    - Dst: gf_isom_get_track_from_id
      Src: /src/gpac/src/isomedia/movie_fragments.c:2728,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:2729,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:2730,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:2735,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/movie_fragments.c:2742,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2745,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/movie_fragments.c:2753,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/movie_fragments.c:2755,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:2756,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2758,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2768,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2770,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 75
    argCount: 5
    argNames:
    - movie
    - tpl_data
    - tpl_size
    - has_tfdt
    - out_sidx
    argTypes:
    - GF_ISOFile*
    - u8*
    - u32
    - Bool*
    - GF_SegmentIndexBox**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2772
      start: 2686
    functionDepth: 4
    functionLinenumber: 2686
    functionLinenumberEnd: 2772
    functionName: gf_isom_set_fragment_template
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_bs_new
    - gf_isom_box_del
    - gf_list_find
    - gf_bs_del
    - gf_list_count
    - gf_list_add
    - gf_list_del_item
    - gf_bs_available
    - gf_isom_get_track_from_id
    - gf_list_rem
    - gf_isom_box_parse
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_set_fragment_template(GF_ISOFile *movie, u8 *tpl_data,
      u32 tpl_size, Bool *has_tfdt, GF_SegmentIndexBox **out_sidx)
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:2789,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:2796,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:2803,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:2805,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/movie_fragments.c:2807,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/movie_fragments.c:2808,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2809,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/movie_fragments.c:2811,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:2814,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:2817,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:2822,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/movie_fragments.c:2838,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:2841,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:2843,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/movie_fragments.c:2861,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/movie_fragments.c:2862,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2863,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/movie_fragments.c:2865,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:2872,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:2876,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:2888,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:2891,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:2892,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/movie_fragments.c:2895,1
    - Dst: GF_ISOM_FORMAT_FRAG_FLAGS
      Src: /src/gpac/src/isomedia/movie_fragments.c:2900,1
    - Dst: GF_ISOM_GET_FRAG_DEPEND_FLAGS
      Src: /src/gpac/src/isomedia/movie_fragments.c:2902,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:2919,1
    - Dst: Media_ParseODFrame
      Src: /src/gpac/src/isomedia/movie_fragments.c:2926,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:2947,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/movie_fragments.c:2948,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:2957,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/movie_fragments.c:2959,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/movie_fragments.c:2962,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:2968,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/movie_fragments.c:2970,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/movie_fragments.c:2973,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/movie_fragments.c:2978,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2983,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:2991,1
    CyclomaticComplexity: 61
    EdgeCount: 61
    ICount: 174
    argCount: 10
    argNames:
    - movie
    - TrackID
    - sample
    - DescIndex
    - Duration
    - PaddingBits
    - DegradationPriority
    - redundant_coding
    - ref
    - ref_offset
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - GF_ISOSample*
    - u32
    - u32
    - u8
    - u16
    - Bool
    - void**
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2996
      start: 2774
    functionDepth: 6
    functionLinenumber: 2774
    functionLinenumberEnd: 2996
    functionName: gf_isom_fragment_add_sample_ex
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_list_count
    - memset
    - gf_realloc
    - gf_list_get
    - gf_list_new
    - GF_ISOM_FORMAT_FRAG_FLAGS
    - Media_ParseODFrame
    - gf_bs_get_content
    - memcpy
    - gf_isom_sample_del
    - gf_list_add
    - gf_isom_get_traf
    - GF_LOG
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_isom_box_new_parent
    - gf_malloc
    - gf_bs_del
    - GF_ISOM_GET_FRAG_DEPEND_FLAGS
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_fragment_add_sample_ex(GF_ISOFile *movie, GF_ISOTrackID
      TrackID, const GF_ISOSample *sample, u32 DescIndex,\n                                   u32
      Duration, u8 PaddingBits, u16 DegradationPriority, Bool redundant_coding, void
      **ref, u32 ref_offset)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_fragment_add_sample_ex
      Src: /src/gpac/src/isomedia/movie_fragments.c:3002,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - movie
    - TrackID
    - sample
    - DescIndex
    - Duration
    - PaddingBits
    - DegradationPriority
    - redundant_coding
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - GF_ISOSample*
    - u32
    - u32
    - u8
    - u16
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3004
      start: 2998
    functionDepth: 7
    functionLinenumber: 2998
    functionLinenumberEnd: 3004
    functionName: gf_isom_fragment_add_sample
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 1
    functionsReached:
    - gf_isom_fragment_add_sample_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_fragment_add_sample(GF_ISOFile *movie, GF_ISOTrackID
      TrackID, const GF_ISOSample *sample, u32 DescIndex,\n                                   u32
      Duration, u8 PaddingBits, u16 DegradationPriority, Bool redundant_coding)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:3009,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/movie_fragments.c:3016,1
    - Dst: gf_isom_create_samp_enc_box
      Src: /src/gpac/src/isomedia/movie_fragments.c:3020,1
    - Dst: gf_isom_create_piff_psec_box
      Src: /src/gpac/src/isomedia/movie_fragments.c:3024,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3029,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:3030,1
    - Dst: gf_isom_cenc_set_saiz_saio
      Src: /src/gpac/src/isomedia/movie_fragments.c:3035,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/movie_fragments.c:3039,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:3044,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/movie_fragments.c:3046,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/movie_fragments.c:3049,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:3054,1
    - Dst: gf_isom_cenc_set_saiz_saio
      Src: /src/gpac/src/isomedia/movie_fragments.c:3060,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 7
    argNames:
    - output
    - TrackID
    - sai_b
    - sai_b_size
    - use_subsamples
    - use_saio_32bit
    - use_multikey
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - u8*
    - u32
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3062
      start: 3005
    functionDepth: 6
    functionLinenumber: 3005
    functionLinenumberEnd: 3062
    functionName: gf_isom_fragment_set_cenc_sai
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_isom_cenc_set_saiz_saio
    - gf_free
    - gf_list_new
    - gf_isom_create_samp_enc_box
    - gf_isom_get_traf
    - GF_SAFEALLOC
    - GF_LOG
    - memcpy
    - gf_list_add
    - gf_isom_create_piff_psec_box
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_fragment_set_cenc_sai(GF_ISOFile *output, GF_ISOTrackID
      TrackID, u8 *sai_b, u32 sai_b_size, Bool use_subsamples, Bool use_saio_32bit,
      Bool use_multikey)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:3077,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3081,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3084,1
    - Dst: GF_ISOM_GET_FRAG_SYNC
      Src: /src/gpac/src/isomedia/movie_fragments.c:3090,1
    - Dst: GF_ISOM_GET_FRAG_DEG
      Src: /src/gpac/src/isomedia/movie_fragments.c:3091,1
    - Dst: GF_ISOM_FORMAT_FRAG_FLAGS
      Src: /src/gpac/src/isomedia/movie_fragments.c:3092,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3098,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/movie_fragments.c:3099,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:3108,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/movie_fragments.c:3110,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/movie_fragments.c:3113,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:3118,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/movie_fragments.c:3120,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/movie_fragments.c:3123,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 55
    argCount: 7
    argNames:
    - movie
    - TrackID
    - data
    - data_size
    - PaddingBits
    - ref
    - ref_offset
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - u8*
    - u32
    - u8
    - void**
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3128
      start: 3064
    functionDepth: 2
    functionLinenumber: 3064
    functionLinenumberEnd: 3128
    functionName: gf_isom_fragment_append_data_ex
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - GF_ISOM_GET_FRAG_DEG
    - gf_free
    - gf_list_get
    - gf_list_new
    - gf_isom_get_traf
    - GF_ISOM_FORMAT_FRAG_FLAGS
    - GF_SAFEALLOC
    - GF_ISOM_GET_FRAG_SYNC
    - memcpy
    - gf_list_count
    - gf_bs_write_data
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_fragment_append_data_ex(GF_ISOFile *movie, GF_ISOTrackID
      TrackID, u8 *data, u32 data_size, u8 PaddingBits, void **ref, u32 ref_offset)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_fragment_append_data_ex
      Src: /src/gpac/src/isomedia/movie_fragments.c:3132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - movie
    - TrackID
    - data
    - data_size
    - PaddingBits
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - u8*
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3134
      start: 3129
    functionDepth: 3
    functionLinenumber: 3129
    functionLinenumberEnd: 3134
    functionName: gf_isom_fragment_append_data
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_isom_fragment_append_data_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_fragment_append_data(GF_ISOFile *movie, GF_ISOTrackID
      TrackID, u8 *data, u32 data_size, u8 PaddingBits)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:3143,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3148,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3150,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3155,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3157,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3159,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:3164,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:3168,1
    - Dst: gf_isom_add_subsample_info
      Src: /src/gpac/src/isomedia/movie_fragments.c:3170,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 7
    argNames:
    - movie
    - TrackID
    - flags
    - subSampleSize
    - priority
    - reserved
    - discardable
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - u32
    - u32
    - u8
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3171
      start: 3136
    functionDepth: 5
    functionLinenumber: 3136
    functionLinenumberEnd: 3171
    functionName: gf_isom_fragment_add_subsample
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_new
    - gf_isom_add_subsample_info
    - gf_isom_get_traf
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_list_add
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_fragment_add_subsample(GF_ISOFile *movie, GF_ISOTrackID
      TrackID, u32 flags, u32 subSampleSize, u8 priority, u32 reserved, Bool discardable)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:3179,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:3183,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 4
    argNames:
    - movie
    - TrackID
    - orig_dur
    - elapsed_dur
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3189
      start: 3174
    functionDepth: 5
    functionLinenumber: 3174
    functionLinenumberEnd: 3189
    functionName: gf_isom_set_fragment_original_duration
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_traf
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_set_fragment_original_duration(GF_ISOFile *movie, GF_ISOTrackID
      TrackID, u32 orig_dur, u32 elapsed_dur)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3200,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3202,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3210,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3218,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/movie_fragments.c:3219,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/movie_fragments.c:3220,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:3221,1
    - Dst: gf_isom_set_sample_group_info_ex
      Src: /src/gpac/src/isomedia/movie_fragments.c:3222,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3227,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/movie_fragments.c:3228,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/movie_fragments.c:3229,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:3230,1
    - Dst: gf_isom_set_sample_group_info_ex
      Src: /src/gpac/src/isomedia/movie_fragments.c:3231,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3236,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/movie_fragments.c:3237,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:3238,1
    - Dst: gf_isom_set_sample_group_info_ex
      Src: /src/gpac/src/isomedia/movie_fragments.c:3239,1
    - Dst: gf_isom_set_sample_group_info_ex
      Src: /src/gpac/src/isomedia/movie_fragments.c:3243,1
    - Dst: gf_isom_add_sample_group_entry
      Src: /src/gpac/src/isomedia/movie_fragments.c:3250,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 43
    argCount: 6
    argNames:
    - traf
    - stbl
    - grouping_type
    - grouping_type_parameter
    - sampleGroupDescriptionIndex
    - sgpd_in_traf
    argTypes:
    - GF_TrackFragmentBox*
    - GF_SampleTableBox*
    - u32
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3251
      start: 3192
    functionDepth: 1
    functionLinenumber: 3192
    functionLinenumberEnd: 3251
    functionName: gf_isom_copy_sample_group_entry_to_traf
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_bs_new
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_bs_del
    - gf_list_count
    - gf_isom_add_sample_group_entry
    - gf_isom_set_sample_group_info_ex
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_copy_sample_group_entry_to_traf(GF_TrackFragmentBox
      *traf, GF_SampleTableBox *stbl, u32 grouping_type, u32 grouping_type_parameter,
      u32 sampleGroupDescriptionIndex, Bool sgpd_in_traf)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:3264,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/movie_fragments.c:3267,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3275,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3277,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3278,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3281,1
    - Dst: stbl_GetSampleDepType
      Src: /src/gpac/src/isomedia/movie_fragments.c:3282,1
    - Dst: GF_ISOM_RESET_FRAG_DEPEND_FLAGS
      Src: /src/gpac/src/isomedia/movie_fragments.c:3285,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3290,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:3298,1
    - Dst: GF_ISOM_GET_FRAG_DEPEND_FLAGS
      Src: /src/gpac/src/isomedia/movie_fragments.c:3305,1
    - Dst: GF_ISOM_GET_FRAG_DEPEND_FLAGS
      Src: /src/gpac/src/isomedia/movie_fragments.c:3308,1
    - Dst: gf_isom_get_subsample_types
      Src: /src/gpac/src/isomedia/movie_fragments.c:3314,1
    - Dst: gf_isom_sample_get_subsample_entry
      Src: /src/gpac/src/isomedia/movie_fragments.c:3317,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3324,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3326,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3332,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3334,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3336,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:3341,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:3345,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3348,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3350,1
    - Dst: gf_isom_add_subsample_info
      Src: /src/gpac/src/isomedia/movie_fragments.c:3351,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3357,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3365,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3374,1
    - Dst: gf_isom_copy_sample_group_entry_to_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:3377,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3386,1
    - Dst: gf_isom_copy_sample_group_entry_to_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:3388,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 110
    argCount: 6
    argNames:
    - dest
    - TrackID
    - orig
    - track
    - sampleNumber
    - sgpd_in_traf
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - GF_ISOFile*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3394
      start: 3253
    functionDepth: 5
    functionLinenumber: 3253
    functionLinenumberEnd: 3394
    functionName: gf_isom_fragment_copy_subsample
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_subsample_types
    - gf_list_get
    - gf_list_new
    - gf_isom_add_subsample_info
    - gf_isom_get_traf
    - gf_isom_copy_sample_group_entry_to_traf
    - gf_isom_sample_get_subsample_entry
    - gf_isom_box_new_parent
    - gf_list_count
    - GF_ISOM_RESET_FRAG_DEPEND_FLAGS
    - GF_ISOM_GET_FRAG_DEPEND_FLAGS
    - stbl_GetSampleDepType
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_get_track_box
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_fragment_copy_subsample(GF_ISOFile *dest, GF_ISOTrackID
      TrackID, GF_ISOFile *orig, u32 track, u32 sampleNumber, Bool sgpd_in_traf)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:3406,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3409,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3411,1
    - Dst: GF_ISOM_RESET_FRAG_DEPEND_FLAGS
      Src: /src/gpac/src/isomedia/movie_fragments.c:3415,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:3420,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:3428,1
    - Dst: GF_ISOM_GET_FRAG_DEPEND_FLAGS
      Src: /src/gpac/src/isomedia/movie_fragments.c:3433,1
    - Dst: GF_ISOM_GET_FRAG_DEPEND_FLAGS
      Src: /src/gpac/src/isomedia/movie_fragments.c:3436,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 6
    argNames:
    - movie
    - trackID
    - is_leading
    - dependsOn
    - dependedOn
    - redundant
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3439
      start: 3398
    functionDepth: 5
    functionLinenumber: 3398
    functionLinenumberEnd: 3439
    functionName: gf_isom_fragment_set_sample_flags
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_get_traf
    - gf_isom_box_new_parent
    - gf_list_count
    - GF_ISOM_RESET_FRAG_DEPEND_FLAGS
    - GF_ISOM_GET_FRAG_DEPEND_FLAGS
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_fragment_set_sample_flags(GF_ISOFile *movie, GF_ISOTrackID
      trackID, u32 is_leading, u32 dependsOn, u32 dependedOn, u32 redundant)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:3451,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:3455,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 3
    argNames:
    - movie
    - TrackID
    - decode_time
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3462
      start: 3445
    functionDepth: 5
    functionLinenumber: 3445
    functionLinenumberEnd: 3462
    functionName: gf_isom_set_traf_base_media_decode_time
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_traf
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_traf_base_media_decode_time(GF_ISOFile *movie,
      GF_ISOTrackID TrackID, u64 decode_time)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3468,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3471
      start: 3464
    functionDepth: 4
    functionLinenumber: 3464
    functionLinenumberEnd: 3471
    functionName: gf_isom_enable_mfra
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_enable_mfra(GF_ISOFile *file)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - movie
    - value
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3482
      start: 3476
    functionDepth: 0
    functionLinenumber: 3476
    functionLinenumberEnd: 3482
    functionName: gf_isom_set_next_moof_number
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_next_moof_number(GF_ISOFile *movie, u32 value)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3491
      start: 3484
    functionDepth: 0
    functionLinenumber: 3484
    functionLinenumberEnd: 3491
    functionName: gf_isom_get_next_moof_number
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_next_moof_number(GF_ISOFile *movie)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3499,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/movie_fragments.c:3500,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/isomedia/movie_fragments.c:3502,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3505,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:3506,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:3508,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 3
    argNames:
    - movie
    - data
    - size
    argTypes:
    - GF_ISOFile*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3511
      start: 3493
    functionDepth: 1
    functionLinenumber: 3493
    functionLinenumberEnd: 3511
    functionName: gf_isom_set_emsg
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_bs_new
    - gf_bs_del
    - gf_list_add
    - gf_bs_available
    - gf_isom_box_parse
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_set_emsg(GF_ISOFile *movie, u8 *data, u32 size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GetTrex
      Src: /src/gpac/src/isomedia/movie_fragments.c:3519,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 2
    argNames:
    - movie
    - TrackID
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3523
      start: 3514
    functionDepth: 2
    functionLinenumber: 3514
    functionLinenumberEnd: 3523
    functionName: gf_isom_is_track_fragmented
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 1
    functionsReached:
    - GetTrex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_is_track_fragmented(GF_ISOFile *movie, GF_ISOTrackID
      TrackID)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3534
      start: 3525
    functionDepth: 0
    functionLinenumber: 3525
    functionLinenumberEnd: 3534
    functionName: gf_isom_is_fragmented
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_is_fragmented(GF_ISOFile *movie)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:3546,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:3551,1
    - Dst: isom_sample_refs_push
      Src: /src/gpac/src/isomedia/movie_fragments.c:3554,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 5
    argNames:
    - movie
    - TrackID
    - refID
    - nb_refs
    - refs
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - s32
    - u32
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3555
      start: 3539
    functionDepth: 5
    functionLinenumber: 3539
    functionLinenumberEnd: 3555
    functionName: gf_isom_fragment_add_sample_references
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_traf
    - isom_sample_refs_push
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_fragment_add_sample_references(GF_ISOFile *movie,
      GF_ISOTrackID TrackID, s32 refID, u32 nb_refs, s32 *refs)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: stbl_GetSampleCTS
      Src: /src/gpac/src/isomedia/stbl_read.c:66,1
    - Dst: stbl_GetSampleCTS
      Src: /src/gpac/src/isomedia/stbl_read.c:93,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 71
    argCount: 5
    argNames:
    - stbl
    - DTS
    - useCTS
    - sampleNumber
    - prevSampleNumber
    argTypes:
    - GF_SampleTableBox*
    - u64
    - u8
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 129
    functionName: stbl_findEntryForTime
    functionSourceFile: /src/gpac/src/isomedia/stbl_read.c
    functionUses: 4
    functionsReached:
    - stbl_GetSampleCTS
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_findEntryForTime(GF_SampleTableBox *stbl, u64 DTS, u8 useCTS,
      u32 *sampleNumber, u32 *prevSampleNumber)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 3
    argNames:
    - stsz
    - SampleNumber
    - Size
    argTypes:
    - GF_SampleSizeBox*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 145
    functionName: stbl_GetSampleSize
    functionSourceFile: /src/gpac/src/isomedia/stbl_read.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_GetSampleSize(GF_SampleSizeBox *stsz, u32 SampleNumber,
      u32 *Size)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 3
    argNames:
    - ctts
    - SampleNumber
    - CTSoffset
    argTypes:
    - GF_CompositionOffsetBox*
    - u32
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 177
    functionName: stbl_GetSampleCTS
    functionSourceFile: /src/gpac/src/isomedia/stbl_read.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_GetSampleCTS(GF_CompositionOffsetBox *ctts, u32 SampleNumber,
      s32 *CTSoffset)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 41
    argCount: 4
    argNames:
    - stts
    - SampleNumber
    - DTS
    - duration
    argTypes:
    - GF_TimeToSampleBox*
    - u32
    - u64*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 235
    functionName: stbl_GetSampleDTS_and_Duration
    functionSourceFile: /src/gpac/src/isomedia/stbl_read.c
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_GetSampleDTS_and_Duration(GF_TimeToSampleBox *stts, u32
      SampleNumber, u64 *DTS, u32 *duration)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stbl_GetSampleDTS_and_Duration
      Src: /src/gpac/src/isomedia/stbl_read.c:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - stts
    - SampleNumber
    - DTS
    argTypes:
    - GF_TimeToSampleBox*
    - u32
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 237
    functionDepth: 1
    functionLinenumber: 237
    functionLinenumberEnd: 240
    functionName: stbl_GetSampleDTS
    functionSourceFile: /src/gpac/src/isomedia/stbl_read.c
    functionUses: 6
    functionsReached:
    - stbl_GetSampleDTS_and_Duration
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_GetSampleDTS(GF_TimeToSampleBox *stts, u32 SampleNumber,
      u64 *DTS)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 5
    argNames:
    - stss
    - SampleNumber
    - IsRAP
    - prevRAP
    - nextRAP
    argTypes:
    - GF_SyncSampleBox*
    - u32
    - GF_ISOSAPType*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 272
    functionName: stbl_GetSampleRAP
    functionSourceFile: /src/gpac/src/isomedia/stbl_read.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_GetSampleRAP(GF_SyncSampleBox *stss, u32 SampleNumber,
      GF_ISOSAPType *IsRAP, u32 *prevRAP, u32 *nextRAP)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_read.c:277,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_read.c:278,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/stbl_read.c:285,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/stbl_read.c:286,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_read.c:292,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_read.c:304,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_read.c:321,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 72
    argCount: 5
    argNames:
    - stbl
    - SampleNumber
    - IsRAP
    - prevRAP
    - nextRAP
    argTypes:
    - GF_SampleTableBox*
    - u32
    - GF_ISOSAPType*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 274
    functionDepth: 1
    functionLinenumber: 274
    functionLinenumberEnd: 367
    functionName: stbl_SearchSAPs
    functionSourceFile: /src/gpac/src/isomedia/stbl_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_assert
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_SearchSAPs(GF_SampleTableBox *stbl, u32 SampleNumber, GF_ISOSAPType
      *IsRAP, u32 *prevRAP, u32 *nextRAP)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 4
    argNames:
    - ent
    - EntryIndex
    - count
    - stbl
    argTypes:
    - GF_StscEntry*
    - u32
    - u32
    - GF_SampleTableBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 370
    functionDepth: 0
    functionLinenumber: 370
    functionLinenumberEnd: 399
    functionName: GetGhostNum
    functionSourceFile: /src/gpac/src/isomedia/stbl_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GetGhostNum(GF_StscEntry *ent, u32 EntryIndex, u32 count, GF_SampleTableBox
      *stbl)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: GetGhostNum
      Src: /src/gpac/src/isomedia/stbl_read.c:444,1
    - Dst: GetGhostNum
      Src: /src/gpac/src/isomedia/stbl_read.c:455,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_read.c:461,1
    - Dst: GetGhostNum
      Src: /src/gpac/src/isomedia/stbl_read.c:491,1
    - Dst: stbl_GetSampleSize
      Src: /src/gpac/src/isomedia/stbl_read.c:518,1
    - Dst: stbl_GetSampleSize
      Src: /src/gpac/src/isomedia/stbl_read.c:526,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 119
    argCount: 6
    argNames:
    - stbl
    - sampleNumber
    - offset
    - chunkNumber
    - descIndex
    - out_ent
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u64*
    - u32*
    - u32*
    - GF_StscEntry**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 402
    functionDepth: 1
    functionLinenumber: 402
    functionLinenumberEnd: 546
    functionName: stbl_GetSampleInfos
    functionSourceFile: /src/gpac/src/isomedia/stbl_read.c
    functionUses: 10
    functionsReached:
    - GetGhostNum
    - gf_assert
    - stbl_GetSampleSize
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_GetSampleInfos(GF_SampleTableBox *stbl, u32 sampleNumber,
      u64 *offset, u32 *chunkNumber, u32 *descIndex, GF_StscEntry **out_ent)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/stbl_read.c:564,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_read.c:566,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_read.c:578,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 3
    argNames:
    - stsh
    - sampleNumber
    - syncNum
    argTypes:
    - GF_ShadowSyncBox*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 549
    functionDepth: 1
    functionLinenumber: 549
    functionLinenumberEnd: 590
    functionName: stbl_GetSampleShadow
    functionSourceFile: /src/gpac/src/isomedia/stbl_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_GetSampleShadow(GF_ShadowSyncBox *stsh, u32 *sampleNumber,
      u32 *syncNum)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - padb
    - SampleNumber
    - PadBits
    argTypes:
    - GF_PaddingBitsBox*
    - u32
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 594
    functionDepth: 0
    functionLinenumber: 594
    functionLinenumberEnd: 603
    functionName: stbl_GetPaddingBits
    functionSourceFile: /src/gpac/src/isomedia/stbl_read.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_GetPaddingBits(GF_PaddingBitsBox *padb, u32 SampleNumber,
      u8 *PadBits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_read.c:610,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 6
    argNames:
    - sdep
    - SampleNumber
    - isLeading
    - dependsOn
    - dependedOn
    - redundant
    argTypes:
    - GF_SampleDependencyTypeBox*
    - u32
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 606
    functionDepth: 1
    functionLinenumber: 606
    functionLinenumberEnd: 622
    functionName: stbl_GetSampleDepType
    functionSourceFile: /src/gpac/src/isomedia/stbl_read.c
    functionUses: 3
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_GetSampleDepType(GF_SampleDependencyTypeBox *sdep, u32
      SampleNumber, u32 *isLeading, u32 *dependsOn, u32 *dependedOn, u32 *redundant)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/hinting.c:33,1
    - Dst: gf_isom_sample_entry_init
      Src: /src/gpac/src/isomedia/hinting.c:35,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 43
    functionName: ghnt_box_new
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_entry_init
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *ghnt_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_predestroy
      Src: /src/gpac/src/isomedia/hinting.c:49,1
    - Dst: gf_isom_hint_sample_del
      Src: /src/gpac/src/isomedia/hinting.c:51,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/hinting.c:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 53
    functionName: ghnt_box_del
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_sample_entry_predestroy
    - gf_isom_hint_sample_del
    linkageType: ''
    returnType: void
    signature: void ghnt_box_del(GF_Box *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/hinting.c:62,1
    - Dst: gf_isom_base_sample_entry_read
      Src: /src/gpac/src/isomedia/hinting.c:64,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/hinting.c:67,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/hinting.c:68,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/hinting.c:71,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/hinting.c:72,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/hinting.c:74,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/hinting.c:75,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/hinting.c:76,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/hinting.c:79,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 55
    functionDepth: 2
    functionLinenumber: 55
    functionLinenumberEnd: 80
    functionName: ghnt_box_read
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - gf_isom_base_sample_entry_read
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ghnt_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/hinting.c:89,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/hinting.c:91,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/hinting.c:92,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/hinting.c:93,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/hinting.c:94,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/hinting.c:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 84
    functionDepth: 2
    functionLinenumber: 84
    functionLinenumberEnd: 97
    functionName: ghnt_box_write
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u16
    - gf_isom_box_write_header
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ghnt_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 104
    functionName: ghnt_box_size
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ghnt_box_size(GF_Box *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/hinting.c:120,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/hinting.c:125,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/hinting.c:127,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - ProtocolType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 110
    functionDepth: 4
    functionLinenumber: 110
    functionLinenumberEnd: 130
    functionName: gf_isom_hint_sample_new
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - gf_isom_box_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_HintSample
    signature: GF_HintSample *gf_isom_hint_sample_new(u32 ProtocolType)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/hinting.c:135,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hinting.c:139,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hinting.c:140,1
    - Dst: gf_isom_hint_pck_del
      Src: /src/gpac/src/isomedia/hinting.c:141,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/hinting.c:142,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/hinting.c:144,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/hinting.c:145,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hinting.c:148,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hinting.c:149,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/hinting.c:150,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/hinting.c:151,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/hinting.c:152,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/hinting.c:154,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/hinting.c:157,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/hinting.c:159,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/hinting.c:161,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_HintSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 132
    functionDepth: 4
    functionLinenumber: 132
    functionLinenumberEnd: 162
    functionName: gf_isom_hint_sample_del
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_isom_hint_pck_del
    - gf_isom_box_array_del
    - gf_isom_box_del
    - gf_isom_sample_del
    - gf_list_count
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_isom_hint_sample_del(GF_HintSample *ptr)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/hinting.c:174,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/hinting.c:183,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/hinting.c:184,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/hinting.c:186,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/hinting.c:186,1
    - Dst: gf_isom_box_read
      Src: /src/gpac/src/isomedia/hinting.c:189,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/hinting.c:194,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/hinting.c:195,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/hinting.c:197,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/hinting.c:203,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/hinting.c:204,1
    - Dst: gf_isom_hint_pck_new
      Src: /src/gpac/src/isomedia/hinting.c:207,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/hinting.c:210,1
    - Dst: gf_isom_hint_pck_read
      Src: /src/gpac/src/isomedia/hinting.c:212,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/hinting.c:219,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/hinting.c:224,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/hinting.c:226,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 49
    argCount: 3
    argNames:
    - ptr
    - bs
    - sampleSize
    argTypes:
    - GF_HintSample*
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 164
    functionDepth: 2
    functionLinenumber: 164
    functionLinenumberEnd: 229
    functionName: gf_isom_hint_sample_read
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 1
    functionsReached:
    - gf_malloc
    - gf_4cc_to_str
    - gf_bs_read_data
    - gf_bs_read_u32
    - gf_isom_box_read
    - GF_LOG
    - gf_isom_hint_pck_read
    - gf_list_add
    - gf_bs_read_u16
    - gf_bs_available
    - gf_isom_hint_pck_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_hint_sample_read(GF_HintSample *ptr, GF_BitStream *bs,
      u32 sampleSize)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/hinting.c:240,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/hinting.c:241,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hinting.c:245,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/hinting.c:246,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/hinting.c:247,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hinting.c:250,1
    - Dst: gf_isom_hint_pck_write
      Src: /src/gpac/src/isomedia/hinting.c:251,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/hinting.c:256,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - ptr
    - bs
    argTypes:
    - GF_HintSample*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 234
    functionDepth: 3
    functionLinenumber: 234
    functionLinenumberEnd: 259
    functionName: gf_isom_hint_sample_write
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_box_size
    - gf_bs_write_u16
    - gf_isom_box_write
    - gf_list_count
    - gf_bs_write_data
    - gf_isom_hint_pck_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_hint_sample_write(GF_HintSample *ptr, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/hinting.c:266,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hinting.c:270,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hinting.c:272,1
    - Dst: gf_isom_hint_pck_size
      Src: /src/gpac/src/isomedia/hinting.c:273,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_HintSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 262
    functionDepth: 3
    functionLinenumber: 262
    functionLinenumberEnd: 278
    functionName: gf_isom_hint_sample_size
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_isom_box_size
    - gf_isom_hint_pck_size
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_hint_sample_size(GF_HintSample *ptr)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_hint_rtp_new
      Src: /src/gpac/src/isomedia/hinting.c:291,1
    - Dst: gf_isom_hint_rtcp_new
      Src: /src/gpac/src/isomedia/hinting.c:295,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 283
    functionDepth: 1
    functionLinenumber: 283
    functionLinenumberEnd: 301
    functionName: GF_HintPacket *gf_isom_hint_pck_new(u32 HintType)
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 0
    functionsReached:
    - gf_isom_hint_rtp_new
    - gf_isom_hint_rtcp_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_HintPacket *gf_isom_hint_pck_new(u32 HintType)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_hint_rtp_del
      Src: /src/gpac/src/isomedia/hinting.c:311,1
    - Dst: gf_isom_hint_rtcp_del
      Src: /src/gpac/src/isomedia/hinting.c:314,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_HintPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 303
    functionDepth: 1
    functionLinenumber: 303
    functionLinenumberEnd: 319
    functionName: gf_isom_hint_pck_del
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 2
    functionsReached:
    - gf_isom_hint_rtp_del
    - gf_isom_hint_rtcp_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_hint_pck_del(GF_HintPacket *ptr)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_hint_rtp_read
      Src: /src/gpac/src/isomedia/hinting.c:329,1
    - Dst: gf_isom_hint_rtcp_read
      Src: /src/gpac/src/isomedia/hinting.c:331,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - ptr
    - bs
    argTypes:
    - GF_HintPacket*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 321
    functionDepth: 1
    functionLinenumber: 321
    functionLinenumberEnd: 335
    functionName: gf_isom_hint_pck_read
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 2
    functionsReached:
    - gf_isom_hint_rtp_read
    - gf_isom_hint_rtcp_read
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_hint_pck_read(GF_HintPacket *ptr, GF_BitStream *bs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_hint_rtp_write
      Src: /src/gpac/src/isomedia/hinting.c:347,1
    - Dst: gf_isom_hint_rtcp_write
      Src: /src/gpac/src/isomedia/hinting.c:349,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - ptr
    - bs
    argTypes:
    - GF_HintPacket*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 339
    functionDepth: 1
    functionLinenumber: 339
    functionLinenumberEnd: 353
    functionName: gf_isom_hint_pck_write
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 2
    functionsReached:
    - gf_isom_hint_rtcp_write
    - gf_isom_hint_rtp_write
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_hint_pck_write(GF_HintPacket *ptr, GF_BitStream *bs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_hint_rtp_size
      Src: /src/gpac/src/isomedia/hinting.c:363,1
    - Dst: gf_isom_hint_rtcp_size
      Src: /src/gpac/src/isomedia/hinting.c:365,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_HintPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 355
    functionDepth: 1
    functionLinenumber: 355
    functionLinenumberEnd: 369
    functionName: gf_isom_hint_pck_size
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 2
    functionsReached:
    - gf_isom_hint_rtcp_size
    - gf_isom_hint_rtp_size
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_hint_pck_size(GF_HintPacket *ptr)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_hint_rtp_offset
      Src: /src/gpac/src/isomedia/hinting.c:378,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - ptr
    - offset
    - HintSampleNumber
    argTypes:
    - GF_HintPacket*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 371
    functionDepth: 1
    functionLinenumber: 371
    functionLinenumberEnd: 384
    functionName: gf_isom_hint_pck_offset
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 0
    functionsReached:
    - gf_isom_hint_rtp_offset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_hint_pck_offset(GF_HintPacket *ptr, u32 offset, u32
      HintSampleNumber)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/hinting.c:394,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/hinting.c:396,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - ptr
    - dte
    - AtBegin
    argTypes:
    - GF_HintPacket*
    - GF_GenericDTE*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 386
    functionDepth: 1
    functionLinenumber: 386
    functionLinenumberEnd: 403
    functionName: gf_isom_hint_pck_add_dte
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_add
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_hint_pck_add_dte(GF_HintPacket *ptr, GF_GenericDTE *dte,
      u8 AtBegin)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_hint_rtp_length
      Src: /src/gpac/src/isomedia/hinting.c:413,1
    - Dst: gf_isom_hint_rtcp_length
      Src: /src/gpac/src/isomedia/hinting.c:415,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_HintPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 405
    functionDepth: 1
    functionLinenumber: 405
    functionLinenumberEnd: 419
    functionName: gf_isom_hint_pck_length
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 1
    functionsReached:
    - gf_isom_hint_rtp_length
    - gf_isom_hint_rtcp_length
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_hint_pck_length(GF_HintPacket *ptr)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/hinting.c:437,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/hinting.c:443,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/hinting.c:450,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/hinting.c:462,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 33
    argCount: 1
    argNames:
    - type
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 431
    functionDepth: 1
    functionLinenumber: 431
    functionLinenumberEnd: 472
    functionName: NewDTE
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_GenericDTE
    signature: GF_GenericDTE *NewDTE(u8 type)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/hinting.c:486,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - dte
    argTypes:
    - GF_GenericDTE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 479
    functionDepth: 0
    functionLinenumber: 479
    functionLinenumberEnd: 491
    functionName: DelDTE
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DelDTE(GF_GenericDTE *dte)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/hinting.c:504,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/hinting.c:509,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/hinting.c:511,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/hinting.c:512,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/hinting.c:518,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/hinting.c:519,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/hinting.c:520,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/hinting.c:521,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/hinting.c:522,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/hinting.c:523,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/hinting.c:525,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/hinting.c:528,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/hinting.c:535,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/hinting.c:536,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/hinting.c:537,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/hinting.c:538,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/hinting.c:539,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 40
    argCount: 2
    argNames:
    - _dte
    - bs
    argTypes:
    - GF_GenericDTE*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 499
    functionDepth: 1
    functionLinenumber: 499
    functionLinenumberEnd: 545
    functionName: ReadDTE
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - GF_LOG
    - gf_bs_read_u16
    - gf_bs_read_u8
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadDTE(GF_GenericDTE *_dte, GF_BitStream *bs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/hinting.c:558,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/hinting.c:560,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/hinting.c:566,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/hinting.c:567,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/hinting.c:568,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/hinting.c:571,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/hinting.c:572,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/hinting.c:579,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/hinting.c:580,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/hinting.c:581,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/hinting.c:582,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/hinting.c:583,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/hinting.c:584,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/hinting.c:585,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/hinting.c:591,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/hinting.c:593,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/hinting.c:594,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/hinting.c:595,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/hinting.c:596,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/hinting.c:597,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 39
    argCount: 2
    argNames:
    - _dte
    - bs
    argTypes:
    - GF_GenericDTE*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 552
    functionDepth: 1
    functionLinenumber: 552
    functionLinenumberEnd: 603
    functionName: WriteDTE
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_bs_write_data
    - memset
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteDTE(GF_GenericDTE *_dte, GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - dte
    - offset
    - HintSampleNumber
    argTypes:
    - GF_GenericDTE*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 623
      start: 605
    functionDepth: 0
    functionLinenumber: 605
    functionLinenumberEnd: 623
    functionName: OffsetDTE
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err OffsetDTE(GF_GenericDTE *dte, u32 offset, u32 HintSampleNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/hinting.c:628,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/hinting.c:630,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/hinting.c:631,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 633
      start: 625
    functionDepth: 1
    functionLinenumber: 625
    functionLinenumberEnd: 633
    functionName: gf_isom_hint_rtp_new
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_RTPPacket
    signature: GF_RTPPacket *gf_isom_hint_rtp_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hinting.c:638,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hinting.c:639,1
    - Dst: DelDTE
      Src: /src/gpac/src/isomedia/hinting.c:640,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/hinting.c:641,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/hinting.c:643,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/hinting.c:645,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/hinting.c:646,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_RTPPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 647
      start: 635
    functionDepth: 3
    functionLinenumber: 635
    functionLinenumberEnd: 647
    functionName: gf_isom_hint_rtp_del
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_isom_box_array_del
    - DelDTE
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_isom_hint_rtp_del(GF_RTPPacket *ptr)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/hinting.c:657,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/hinting.c:660,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/hinting.c:661,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/hinting.c:662,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/hinting.c:663,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/hinting.c:664,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/hinting.c:665,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/hinting.c:667,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/hinting.c:668,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/hinting.c:669,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/hinting.c:670,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/hinting.c:671,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/hinting.c:672,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/hinting.c:677,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/isomedia/hinting.c:679,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/hinting.c:682,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/hinting.c:692,1
    - Dst: NewDTE
      Src: /src/gpac/src/isomedia/hinting.c:693,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/hinting.c:695,1
    - Dst: ReadDTE
      Src: /src/gpac/src/isomedia/hinting.c:698,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/hinting.c:713,1
    - Dst: DelDTE
      Src: /src/gpac/src/isomedia/hinting.c:715,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 58
    argCount: 2
    argNames:
    - ptr
    - bs
    argTypes:
    - GF_RTPPacket*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 718
      start: 649
    functionDepth: 2
    functionLinenumber: 649
    functionLinenumberEnd: 718
    functionName: gf_isom_hint_rtp_read
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_u32
    - NewDTE
    - GF_LOG
    - DelDTE
    - ReadDTE
    - gf_list_add
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_bs_read_u8
    - gf_isom_box_parse
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_hint_rtp_read(GF_RTPPacket *ptr, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hinting.c:725,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hinting.c:727,1
    - Dst: OffsetDTE
      Src: /src/gpac/src/isomedia/hinting.c:728,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - ptr
    - offset
    - HintSampleNumber
    argTypes:
    - GF_RTPPacket*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 732
      start: 720
    functionDepth: 1
    functionLinenumber: 720
    functionLinenumberEnd: 732
    functionName: gf_isom_hint_rtp_offset
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - OffsetDTE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_hint_rtp_offset(GF_RTPPacket *ptr, u32 offset, u32 HintSampleNumber)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hinting.c:744,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hinting.c:746,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_RTPPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 762
      start: 736
    functionDepth: 1
    functionLinenumber: 736
    functionLinenumberEnd: 762
    functionName: gf_isom_hint_rtp_length
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_hint_rtp_length(GF_RTPPacket *ptr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hinting.c:774,1
    - Dst: gf_isom_box_array_size
      Src: /src/gpac/src/isomedia/hinting.c:779,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hinting.c:783,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_RTPPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 786
      start: 767
    functionDepth: 2
    functionLinenumber: 767
    functionLinenumberEnd: 786
    functionName: gf_isom_hint_rtp_size
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_isom_box_array_size
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_hint_rtp_size(GF_RTPPacket *ptr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/hinting.c:794,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/hinting.c:798,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/hinting.c:799,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/hinting.c:800,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/hinting.c:801,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/hinting.c:802,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/hinting.c:803,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/hinting.c:805,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/hinting.c:806,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hinting.c:807,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hinting.c:808,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/hinting.c:809,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/hinting.c:810,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/hinting.c:811,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/hinting.c:813,1
    - Dst: gf_isom_box_array_size
      Src: /src/gpac/src/isomedia/hinting.c:819,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/hinting.c:820,1
    - Dst: gf_isom_box_array_write
      Src: /src/gpac/src/isomedia/hinting.c:821,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hinting.c:826,1
    - Dst: WriteDTE
      Src: /src/gpac/src/isomedia/hinting.c:827,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 31
    argCount: 2
    argNames:
    - ptr
    - bs
    argTypes:
    - GF_RTPPacket*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 831
      start: 788
    functionDepth: 2
    functionLinenumber: 788
    functionLinenumberEnd: 831
    functionName: gf_isom_hint_rtp_write
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_isom_box_array_size
    - gf_isom_box_array_write
    - gf_list_count
    - WriteDTE
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_hint_rtp_write(GF_RTPPacket *ptr, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/hinting.c:840,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 842
      start: 837
    functionDepth: 1
    functionLinenumber: 837
    functionLinenumberEnd: 842
    functionName: gf_isom_hint_rtcp_new
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_RTCPPacket
    signature: GF_RTCPPacket *gf_isom_hint_rtcp_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/hinting.c:846,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/hinting.c:847,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_RTCPPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 848
      start: 844
    functionDepth: 0
    functionLinenumber: 844
    functionLinenumberEnd: 848
    functionName: gf_isom_hint_rtcp_del
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_isom_hint_rtcp_del(GF_RTCPPacket *ptr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/hinting.c:854,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/hinting.c:855,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/hinting.c:856,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/hinting.c:857,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/hinting.c:858,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/hinting.c:862,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/hinting.c:863,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/hinting.c:866,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/hinting.c:868,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - ptr
    - bs
    argTypes:
    - GF_RTCPPacket*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 870
      start: 850
    functionDepth: 1
    functionLinenumber: 850
    functionLinenumberEnd: 870
    functionName: gf_isom_hint_rtcp_read
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_data
    - GF_LOG
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_bs_available
    - gf_bs_read_u8
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_hint_rtcp_read(GF_RTCPPacket *ptr, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_RTCPPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 878
      start: 875
    functionDepth: 0
    functionLinenumber: 875
    functionLinenumberEnd: 878
    functionName: gf_isom_hint_rtcp_length
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_hint_rtcp_length(GF_RTCPPacket *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_RTCPPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 886
      start: 883
    functionDepth: 0
    functionLinenumber: 883
    functionLinenumberEnd: 886
    functionName: gf_isom_hint_rtcp_size
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_hint_rtcp_size(GF_RTCPPacket *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/hinting.c:891,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/hinting.c:892,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/hinting.c:893,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/hinting.c:894,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/hinting.c:895,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/hinting.c:896,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - ptr
    - bs
    argTypes:
    - GF_RTCPPacket*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 898
      start: 888
    functionDepth: 1
    functionLinenumber: 888
    functionLinenumberEnd: 898
    functionName: gf_isom_hint_rtcp_write
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 1
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_int
    - gf_bs_write_u8
    - gf_bs_write_u16
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_hint_rtcp_write(GF_RTCPPacket *ptr, GF_BitStream *bs)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hinting.c:924,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/hinting.c:930,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/hinting.c:942,1
    - Dst: gf_isom_hint_sample_del
      Src: /src/gpac/src/isomedia/hinting.c:949,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - sample_start
    - ts_offset
    - sn_offset
    - ssrc
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 952
      start: 918
    functionDepth: 5
    functionLinenumber: 918
    functionLinenumberEnd: 952
    functionName: gf_isom_reset_hint_reader
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - Media_GetSampleDesc
    - gf_isom_hint_sample_del
    - Track_FindRef
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_reset_hint_reader(GF_ISOFile *the_file, u32 trackNumber,
      u32 sample_start, u32 ts_offset, u32 sn_offset, u32 ssrc)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/isomedia/hinting.c:963,1
    - Dst: gf_isom_hint_sample_del
      Src: /src/gpac/src/isomedia/hinting.c:967,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/hinting.c:969,1
    - Dst: gf_isom_hint_sample_new
      Src: /src/gpac/src/isomedia/hinting.c:970,1
    - Dst: gf_isom_hint_sample_read
      Src: /src/gpac/src/isomedia/hinting.c:971,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/hinting.c:972,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/hinting.c:974,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/hinting.c:975,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - trak
    - entry
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_TrackBox*
    - GF_HintSampleEntryBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 977
      start: 954
    functionDepth: 5
    functionLinenumber: 954
    functionLinenumberEnd: 977
    functionName: gf_isom_load_next_hint_sample
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_isom_hint_sample_read
    - gf_bs_new
    - gf_isom_sample_del
    - gf_bs_del
    - gf_isom_hint_sample_new
    - gf_isom_hint_sample_del
    - gf_isom_get_sample
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_load_next_hint_sample(GF_ISOFile *the_file, u32 trackNumber,
      GF_TrackBox *trak, GF_HintSampleEntryBox *entry)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hinting.c:984,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hinting.c:986,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/isomedia/hinting.c:990,1
    - Dst: Media_GetSample
      Src: /src/gpac/src/isomedia/hinting.c:991,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/hinting.c:993,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/hinting.c:1000,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - hsamp
    - trak
    - sample_num
    argTypes:
    - GF_HintSample*
    - GF_TrackBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1002
      start: 979
    functionDepth: 3
    functionLinenumber: 979
    functionLinenumberEnd: 1002
    functionName: gf_isom_get_data_sample
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_get
    - GF_SAFEALLOC
    - gf_list_count
    - gf_isom_sample_new
    - Media_GetSample
    linkageType: ''
    returnType: GF_ISOSample
    signature: GF_ISOSample *gf_isom_get_data_sample(GF_HintSample *hsamp, GF_TrackBox
      *trak, u32 sample_num)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hinting.c:1033,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/hinting.c:1035,1
    - Dst: gf_isom_load_next_hint_sample
      Src: /src/gpac/src/isomedia/hinting.c:1047,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hinting.c:1050,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/hinting.c:1051,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/hinting.c:1054,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/hinting.c:1056,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/hinting.c:1057,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/hinting.c:1058,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/hinting.c:1059,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/hinting.c:1060,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/hinting.c:1061,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/hinting.c:1062,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hinting.c:1067,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hinting.c:1069,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/hinting.c:1077,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/hinting.c:1078,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hinting.c:1081,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hinting.c:1083,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/hinting.c:1090,1
    - Dst: gf_isom_hint_rtp_del
      Src: /src/gpac/src/isomedia/hinting.c:1100,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/hinting.c:1101,1
    - Dst: gf_isom_get_track_from_id
      Src: /src/gpac/src/isomedia/hinting.c:1104,1
    - Dst: gf_isom_get_data_sample
      Src: /src/gpac/src/isomedia/hinting.c:1108,1
    - Dst: gf_isom_hint_rtp_del
      Src: /src/gpac/src/isomedia/hinting.c:1110,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/hinting.c:1111,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/hinting.c:1114,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/hinting.c:1127,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/hinting.c:1128,1
    - Dst: gf_isom_hint_rtp_del
      Src: /src/gpac/src/isomedia/hinting.c:1129,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hinting.c:1130,1
    - Dst: gf_isom_hint_sample_del
      Src: /src/gpac/src/isomedia/hinting.c:1131,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 102
    argCount: 8
    argNames:
    - the_file
    - trackNumber
    - pck_data
    - pck_size
    - disposable
    - repeated
    - trans_ts
    - sample_num
    argTypes:
    - GF_ISOFile*
    - u32
    - char**
    - u32*
    - Bool*
    - Bool*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1135
      start: 1016
    functionDepth: 6
    functionLinenumber: 1016
    functionLinenumberEnd: 1135
    functionName: gf_isom_next_hint_packet
    functionSourceFile: /src/gpac/src/isomedia/hinting.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_hint_rtp_del
    - gf_isom_get_data_sample
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_isom_load_next_hint_sample
    - gf_list_count
    - gf_bs_write_data
    - gf_bs_del
    - gf_isom_hint_sample_del
    - gf_isom_get_track_box
    - gf_bs_write_u32
    - Media_GetSampleDesc
    - gf_isom_get_track_from_id
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_next_hint_packet(GF_ISOFile *the_file, u32 trackNumber,
      char **pck_data, u32 *pck_size, Bool *disposable, Bool *repeated, u32 *trans_ts,
      u32 *sample_num)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_adobe.c:42,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_adobe.c:44,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_adobe.c:46,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_adobe.c:48,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_adobe.c:49,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:49,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_adobe.c:50,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_adobe.c:52,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_adobe.c:54,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_adobe.c:55,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:55,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_adobe.c:56,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_adobe.c:58,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_adobe.c:61,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_adobe.c:62,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:62,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_adobe.c:63,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_adobe.c:65,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_adobe.c:67,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_adobe.c:68,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:68,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_adobe.c:69,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_adobe.c:71,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_adobe.c:73,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 36
    functionDepth: 4
    functionLinenumber: 36
    functionLinenumberEnd: 74
    functionName: abst_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_adobe.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_isom_box_del
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void abst_box_del(GF_Box *s)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_adobe.c:85,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:86,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_adobe.c:87,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_adobe.c:88,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_adobe.c:89,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_adobe.c:90,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:91,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_adobe.c:92,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_adobe.c:93,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_adobe.c:98,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_adobe.c:100,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_adobe.c:103,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:104,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_adobe.c:117,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_adobe.c:120,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:121,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_adobe.c:127,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:128,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_adobe.c:141,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_adobe.c:141,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_adobe.c:144,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_adobe.c:149,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:150,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_adobe.c:156,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:157,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_adobe.c:171,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_adobe.c:171,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_adobe.c:174,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_adobe.c:183,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:184,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_adobe.c:198,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_adobe.c:205,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:206,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_adobe.c:220,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_adobe.c:223,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:224,1
    - Dst: gf_isom_box_parse_ex
      Src: /src/gpac/src/isomedia/box_code_adobe.c:227,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_adobe.c:229,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_adobe.c:232,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_adobe.c:233,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_adobe.c:235,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_adobe.c:240,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:241,1
    - Dst: gf_isom_box_parse_ex
      Src: /src/gpac/src/isomedia/box_code_adobe.c:244,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_adobe.c:246,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_adobe.c:249,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_adobe.c:250,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_adobe.c:252,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_adobe.c:258,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 166
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 76
    functionDepth: 4
    functionLinenumber: 76
    functionLinenumberEnd: 260
    functionName: abst_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_adobe.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_bs_read_u32
    - gf_isom_box_del
    - gf_list_count
    - memset
    - gf_isom_box_parse_ex
    - gf_list_add
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_bs_read_u64
    - ISOM_DECREASE_SIZE_GOTO_EXIT
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err abst_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_adobe.c:264,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_adobe.c:265,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_adobe.c:266,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_adobe.c:267,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_adobe.c:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 270
    functionName: abst_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_adobe.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *abst_box_new()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_adobe.c:280,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:283,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_adobe.c:284,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_adobe.c:285,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_adobe.c:286,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_adobe.c:287,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:288,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_adobe.c:289,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_adobe.c:290,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_adobe.c:292,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_adobe.c:292,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:294,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:296,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:298,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_adobe.c:299,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_adobe.c:299,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:302,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:304,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_adobe.c:305,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_adobe.c:305,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_adobe.c:309,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_adobe.c:309,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:311,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_adobe.c:314,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_adobe.c:314,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:316,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:318,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/box_code_adobe.c:320,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:320,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:324,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/box_code_adobe.c:326,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:326,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 274
    functionDepth: 3
    functionLinenumber: 274
    functionLinenumberEnd: 331
    functionName: abst_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_adobe.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_full_box_write
    - gf_bs_write_int
    - gf_isom_box_write
    - gf_bs_write_data
    - gf_bs_write_u8
    - gf_bs_write_u64
    - gf_bs_write_u32
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err abst_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_adobe.c:340,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_adobe.c:344,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:344,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_adobe.c:349,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:349,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_adobe.c:351,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_adobe.c:352,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:356,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/box_code_adobe.c:357,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:364,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/box_code_adobe.c:365,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 333
    functionDepth: 3
    functionLinenumber: 333
    functionLinenumberEnd: 370
    functionName: abst_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_adobe.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_box_size
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err abst_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_adobe.c:379,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_adobe.c:380,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:380,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_adobe.c:381,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_adobe.c:383,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_adobe.c:385,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_adobe.c:386,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:386,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_adobe.c:387,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_adobe.c:389,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_adobe.c:391,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 374
    functionDepth: 1
    functionLinenumber: 374
    functionLinenumberEnd: 392
    functionName: afra_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_adobe.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void afra_box_del(GF_Box *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_adobe.c:399,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_adobe.c:400,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_adobe.c:401,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_adobe.c:402,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_adobe.c:403,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:404,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:406,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_adobe.c:411,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_adobe.c:413,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_adobe.c:415,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_adobe.c:416,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_adobe.c:418,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_adobe.c:419,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_adobe.c:421,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:422,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_adobe.c:427,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:428,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_adobe.c:430,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_adobe.c:432,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_adobe.c:434,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_adobe.c:435,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_adobe.c:437,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:438,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:439,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_adobe.c:441,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_adobe.c:442,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_adobe.c:443,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_adobe.c:446,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_adobe.c:447,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_adobe.c:448,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_adobe.c:450,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:451,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:452,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 44
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 394
    functionDepth: 1
    functionLinenumber: 394
    functionLinenumberEnd: 458
    functionName: afra_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_adobe.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_list_add
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u16
    - gf_bs_read_u64
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err afra_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_adobe.c:462,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_adobe.c:463,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_adobe.c:464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 460
    functionDepth: 1
    functionLinenumber: 460
    functionLinenumberEnd: 466
    functionName: afra_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_adobe.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *afra_box_new()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_adobe.c:476,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_adobe.c:479,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_adobe.c:480,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_adobe.c:481,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_adobe.c:482,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:483,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:485,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:487,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_adobe.c:488,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_adobe.c:490,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:492,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:496,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:498,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_adobe.c:499,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:501,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:502,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_adobe.c:504,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_adobe.c:505,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_adobe.c:508,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_adobe.c:509,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:511,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:512,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 37
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 470
    functionDepth: 3
    functionLinenumber: 470
    functionLinenumberEnd: 518
    functionName: afra_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_adobe.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_full_box_write
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_bs_write_u64
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err afra_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 521
    functionDepth: 0
    functionLinenumber: 521
    functionLinenumberEnd: 530
    functionName: afra_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_adobe.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err afra_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_adobe.c:539,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_adobe.c:540,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:540,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_adobe.c:541,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_adobe.c:543,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_adobe.c:545,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_adobe.c:546,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:546,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_adobe.c:547,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_adobe.c:549,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_adobe.c:551,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 534
    functionDepth: 1
    functionLinenumber: 534
    functionLinenumberEnd: 552
    functionName: asrt_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_adobe.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void asrt_box_del(GF_Box *s)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_adobe.c:559,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:560,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_adobe.c:568,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_adobe.c:570,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:573,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_adobe.c:574,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_adobe.c:582,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:583,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_adobe.c:588,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_adobe.c:590,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_adobe.c:591,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:592,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:593,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 554
    functionDepth: 1
    functionLinenumber: 554
    functionLinenumberEnd: 597
    functionName: asrt_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_adobe.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_list_add
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err asrt_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_adobe.c:601,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_adobe.c:602,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_adobe.c:603,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 599
    functionDepth: 1
    functionLinenumber: 599
    functionLinenumberEnd: 605
    functionName: asrt_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_adobe.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *asrt_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_adobe.c:615,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:618,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:620,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_adobe.c:621,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_adobe.c:621,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:624,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:626,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:627,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:628,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 609
    functionDepth: 3
    functionLinenumber: 609
    functionLinenumberEnd: 632
    functionName: asrt_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_adobe.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_full_box_write
    - strlen
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err asrt_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_adobe.c:643,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:643,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 648
      start: 635
    functionDepth: 1
    functionLinenumber: 635
    functionLinenumberEnd: 648
    functionName: asrt_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_adobe.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err asrt_box_size(GF_Box *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_adobe.c:657,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_adobe.c:658,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:658,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_adobe.c:659,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_adobe.c:661,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_adobe.c:663,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_adobe.c:664,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:664,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_adobe.c:665,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_adobe.c:667,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_adobe.c:669,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 652
    functionDepth: 1
    functionLinenumber: 652
    functionLinenumberEnd: 670
    functionName: afrt_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_adobe.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void afrt_box_del(GF_Box *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_adobe.c:677,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:678,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:680,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_adobe.c:689,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_adobe.c:691,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:694,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_adobe.c:695,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_adobe.c:703,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:704,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_adobe.c:708,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_adobe.c:710,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_adobe.c:711,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:712,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_adobe.c:713,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:714,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_adobe.c:716,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:717,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 672
    functionDepth: 1
    functionLinenumber: 672
    functionLinenumberEnd: 722
    functionName: afrt_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_adobe.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_list_add
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u8
    - gf_bs_read_u64
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err afrt_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/isomedia/box_code_adobe.c:726,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_adobe.c:727,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_adobe.c:728,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 724
    functionDepth: 1
    functionLinenumber: 724
    functionLinenumberEnd: 730
    functionName: afrt_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_adobe.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *afrt_box_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_adobe.c:740,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:743,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:744,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:746,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_adobe.c:747,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_adobe.c:747,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:750,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:752,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:753,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_adobe.c:754,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_adobe.c:755,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_adobe.c:757,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 761
      start: 734
    functionDepth: 3
    functionLinenumber: 734
    functionLinenumberEnd: 761
    functionName: afrt_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_adobe.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_full_box_write
    - strlen
    - gf_bs_write_data
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err afrt_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_adobe.c:772,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:772,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_adobe.c:777,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 785
      start: 764
    functionDepth: 1
    functionLinenumber: 764
    functionLinenumberEnd: 785
    functionName: afrt_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_adobe.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err afrt_box_size(GF_Box *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - movie
    - Mode
    argTypes:
    - GF_ISOFile*
    - GF_ISOOpenMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 43
    functionName: gf_isom_can_access_movie
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 40
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_can_access_movie(GF_ISOFile *movie, GF_ISOOpenMode
      Mode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: stbl_UnpackOffsets
      Src: /src/gpac/src/isomedia/isom_write.c:49,1
    - Dst: stbl_unpackCTS
      Src: /src/gpac/src/isomedia/isom_write.c:51,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - trak
    argTypes:
    - GF_TrackBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 55
    functionName: unpack_track
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - stbl_UnpackOffsets
    - stbl_unpackCTS
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err unpack_track(GF_TrackBox *trak)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_write.c:66,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:68,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:70,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:74,1
    - Dst: gf_bs_new_cbk
      Src: /src/gpac/src/isomedia/isom_write.c:75,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:80,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:82,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:86,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:88,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_write.c:91,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/isomedia/isom_write.c:96,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/isomedia/isom_write.c:97,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 36
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 58
    functionDepth: 3
    functionLinenumber: 58
    functionLinenumberEnd: 99
    functionName: FlushCaptureMode
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_size
    - GF_LOG
    - gf_bs_new_cbk
    - gf_isom_box_write
    - gf_bs_del
    - gf_bs_get_position
    - strcmp
    - gf_bs_write_long_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FlushCaptureMode(GF_ISOFile *movie)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_write.c:104,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 106
    functionName: CheckNoData
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CheckNoData(GF_ISOFile *movie)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/isomedia/isom_write.c:121,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/isomedia/isom_write.c:123,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:128,1
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:131,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - moov
    - isIOD
    argTypes:
    - GF_MovieBox*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 112
    functionDepth: 6
    functionLinenumber: 112
    functionLinenumberEnd: 132
    functionName: AddMovieIOD
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - moov_on_child_box
    - gf_odf_desc_new
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AddMovieIOD(GF_MovieBox *moov, u8 isIOD)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:141,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:143,1
    - Dst: AddMovieIOD
      Src: /src/gpac/src/isomedia/isom_write.c:146,1
    - Dst: gf_isom_is_track_in_root_od
      Src: /src/gpac/src/isomedia/isom_write.c:148,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/isomedia/isom_write.c:150,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/isomedia/isom_write.c:151,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:153,1
    - Dst: gf_isom_add_desc_to_root_od
      Src: /src/gpac/src/isomedia/isom_write.c:156,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:159,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 135
    functionDepth: 7
    functionLinenumber: 135
    functionLinenumberEnd: 161
    functionName: gf_isom_add_track_to_root_od
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_add_desc_to_root_od
    - gf_odf_desc_del
    - gf_isom_insert_moov
    - gf_odf_desc_new
    - gf_isom_get_track_id
    - gf_isom_is_track_in_root_od
    - AddMovieIOD
    - gf_isom_can_access_movie
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_add_track_to_root_od(GF_ISOFile *movie, u32 trackNumber)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:169,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:172,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 164
    functionDepth: 5
    functionLinenumber: 164
    functionLinenumberEnd: 175
    functionName: gf_isom_remove_root_od
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_isom_can_access_movie
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_remove_root_od(GF_ISOFile *movie)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:186,1
    - Dst: gf_isom_is_track_in_root_od
      Src: /src/gpac/src/isomedia/isom_write.c:190,1
    - Dst: AddMovieIOD
      Src: /src/gpac/src/isomedia/isom_write.c:193,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:209,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/isomedia/isom_write.c:210,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:211,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:212,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 178
    functionDepth: 7
    functionLinenumber: 178
    functionLinenumberEnd: 218
    functionName: gf_isom_remove_track_from_root_od
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_odf_desc_del
    - gf_isom_get_track_id
    - AddMovieIOD
    - gf_isom_is_track_in_root_od
    - gf_isom_can_access_movie
    - gf_list_enum
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_remove_track_from_root_od(GF_ISOFile *movie, u32
      trackNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - movie
    - ctime
    - mtime
    argTypes:
    - GF_ISOFile*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 227
    functionName: gf_isom_set_creation_time
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_creation_time(GF_ISOFile *movie, u64 ctime, u64
      mtime)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:233,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - ctime
    - mtime
    argTypes:
    - GF_ISOFile*
    - u32
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 239
    functionName: gf_isom_set_track_creation_time
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_track_creation_time(GF_ISOFile *movie,u32 trackNumber,
      u64 ctime, u64 mtime)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:245,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - ctime
    - mtime
    argTypes:
    - GF_ISOFile*
    - u32
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 252
    functionName: gf_isom_set_media_creation_time
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_media_creation_time(GF_ISOFile *movie,u32 trackNumber,
      u64 ctime, u64 mtime)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:261,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:264,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - enableTrack
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 273
    functionName: gf_isom_set_track_enabled
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 3
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_track_enabled(GF_ISOFile *movie, u32 trackNumber,
      Bool enableTrack)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:282,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:285,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - flags
    - op
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_ISOMTrackFlagOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 276
    functionDepth: 1
    functionLinenumber: 276
    functionLinenumberEnd: 294
    functionName: gf_isom_set_track_flags
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_track_flags(GF_ISOFile *movie, u32 trackNumber,
      u32 flags, GF_ISOMTrackFlagOp op)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:302,1
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:304,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:308,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:310,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:313,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:314,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:317,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_write.c:324,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:325,1
    - Dst: gf_lang_find
      Src: /src/gpac/src/isomedia/isom_write.c:329,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:332,1
    - Dst: gf_lang_get_3cc
      Src: /src/gpac/src/isomedia/isom_write.c:336,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:338,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:348,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:350,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_write.c:356,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:357,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:362,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:364,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:368,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 57
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - code
    argTypes:
    - GF_ISOFile*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 296
    functionDepth: 5
    functionLinenumber: 296
    functionLinenumberEnd: 370
    functionName: gf_isom_set_media_language
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_list_get
    - memcpy
    - GF_LOG
    - gf_lang_find
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_can_access_movie
    - gf_lang_get_3cc
    - gf_isom_get_track_box
    - gf_isom_get_mp4time
    - gf_isom_box_find_child
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_media_language(GF_ISOFile *movie, u32 trackNumber,
      char *code)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:378,1
    - Dst: AddMovieIOD
      Src: /src/gpac/src/isomedia/isom_write.c:381,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:387,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_write.c:390,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:407,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 31
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 372
    functionDepth: 7
    functionLinenumber: 372
    functionLinenumberEnd: 410
    functionName: gf_isom_set_root_iod
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - gf_isom_insert_moov
    - memset
    - AddMovieIOD
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_set_root_iod(GF_ISOFile *movie)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:418,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:420,1
    - Dst: AddMovieIOD
      Src: /src/gpac/src/isomedia/isom_write.c:424,1
    - Dst: gf_isom_set_root_iod
      Src: /src/gpac/src/isomedia/isom_write.c:427,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/isom_write.c:436,1
    - Dst: gf_odf_desc_add_desc
      Src: /src/gpac/src/isomedia/isom_write.c:439,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:440,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 2
    argNames:
    - movie
    - theDesc
    argTypes:
    - GF_ISOFile*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 412
    functionDepth: 8
    functionLinenumber: 412
    functionLinenumberEnd: 447
    functionName: gf_isom_add_desc_to_root_od
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_odf_desc_del
    - gf_isom_insert_moov
    - gf_odf_desc_copy
    - AddMovieIOD
    - gf_isom_can_access_movie
    - gf_isom_set_root_iod
    - gf_odf_desc_add_desc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_add_desc_to_root_od(GF_ISOFile *movie, const GF_Descriptor
      *theDesc)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:457,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:459,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:475,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:480,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:482,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 2
    argNames:
    - movie
    - timeScale
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 450
    functionDepth: 1
    functionLinenumber: 450
    functionLinenumberEnd: 497
    functionName: gf_isom_set_timescale
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 3
    functionsReached:
    - gf_list_get
    - gf_isom_insert_moov
    - gf_list_count
    - gf_isom_can_access_movie
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_timescale(GF_ISOFile *movie, u32 timeScale)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:509,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:511,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:515,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:519,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/isomedia/isom_write.c:520,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:525,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:526,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:530,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:533,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:534,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:537,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:538,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:543,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:546,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:551,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:555,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 46
    argCount: 2
    argNames:
    - movie
    - hero_eye
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 499
    functionDepth: 5
    functionLinenumber: 499
    functionLinenumberEnd: 558
    functionName: gf_isom_set_vexu
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_is_video_handler_type
    - gf_isom_insert_moov
    - GF_LOG
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_list_enum
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_vexu(GF_ISOFile *movie, u32 hero_eye)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:567,1
    - Dst: gf_isom_set_root_iod
      Src: /src/gpac/src/isomedia/isom_write.c:570,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 3
    argNames:
    - movie
    - PL_Code
    - ProfileLevel
    argTypes:
    - GF_ISOFile*
    - GF_ISOProfileLevelType
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 561
    functionDepth: 8
    functionLinenumber: 561
    functionLinenumberEnd: 598
    functionName: gf_isom_set_pl_indication
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 2
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_set_root_iod
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_pl_indication(GF_ISOFile *movie, GF_ISOProfileLevelType
      PL_Code, u8 ProfileLevel)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:604,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:607,1
    - Dst: AddMovieIOD
      Src: /src/gpac/src/isomedia/isom_write.c:610,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - movie
    - OD_ID
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 600
    functionDepth: 7
    functionLinenumber: 600
    functionLinenumberEnd: 625
    functionName: gf_isom_set_root_od_id
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_insert_moov
    - AddMovieIOD
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_root_od_id(GF_ISOFile *movie, u32 OD_ID)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:631,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:633,1
    - Dst: AddMovieIOD
      Src: /src/gpac/src/isomedia/isom_write.c:637,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:643,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:644,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:647,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:648,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 2
    argNames:
    - movie
    - url_string
    argTypes:
    - GF_ISOFile*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 654
      start: 627
    functionDepth: 7
    functionLinenumber: 627
    functionLinenumberEnd: 654
    functionName: gf_isom_set_root_od_url
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_isom_insert_moov
    - AddMovieIOD
    - gf_isom_can_access_movie
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_root_od_url(GF_ISOFile *movie, const char *url_string)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 656
    functionDepth: 0
    functionLinenumber: 656
    functionLinenumberEnd: 660
    functionName: GF_ISOTrackID::gf_isom_get_last_created_track_id
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ISOTrackID gf_isom_get_last_created_track_id(GF_ISOFile
      *movie)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:668,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:670,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:673,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/isom_write.c:676,1
    - Dst: gf_isom_box_parse_ex
      Src: /src/gpac/src/isomedia/isom_write.c:678,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:682,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:685,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:686,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:689,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:690,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:692,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:696,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 32
    argCount: 4
    argNames:
    - movie
    - moov_boxes
    - moov_boxes_size
    - udta_only
    argTypes:
    - GF_ISOFile*
    - u8*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 698
      start: 663
    functionDepth: 5
    functionLinenumber: 663
    functionLinenumberEnd: 698
    functionName: gf_isom_load_extra_boxes
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_new
    - gf_bs_new
    - gf_isom_box_del
    - gf_isom_insert_moov
    - gf_bs_del
    - gf_isom_box_parse_ex
    - gf_list_add
    - gf_bs_available
    - gf_isom_can_access_movie
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_load_extra_boxes(GF_ISOFile *movie, u8 *moov_boxes,
      u32 moov_boxes_size, Bool udta_only)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:711,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_write.c:713,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:716,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_write.c:733,1
    - Dst: RequestTrack
      Src: /src/gpac/src/isomedia/isom_write.c:737,1
    - Dst: RequestTrack
      Src: /src/gpac/src/isomedia/isom_write.c:745,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_write.c:750,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_write.c:754,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:760,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/isom_write.c:761,1
    - Dst: gf_isom_box_parse_ex
      Src: /src/gpac/src/isomedia/isom_write.c:763,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:764,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:769,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:770,1
    - Dst: NewMedia
      Src: /src/gpac/src/isomedia/isom_write.c:778,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:784,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:788,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:791,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_write.c:793,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:796,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_write.c:798,1
    - Dst: NewMedia
      Src: /src/gpac/src/isomedia/isom_write.c:803,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:805,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/isom_write.c:808,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:809,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:814,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:816,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/isomedia/isom_write.c:820,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:845,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:846,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/isomedia/isom_write.c:868,1
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:874,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:882,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/isomedia/isom_write.c:886,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:890,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:891,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 168
    argCount: 7
    argNames:
    - movie
    - trakID
    - MediaType
    - TimeScale
    - tk_box
    - tk_box_size
    - udta_only
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - u32
    - u32
    - u8*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 893
      start: 700
    functionDepth: 6
    functionLinenumber: 700
    functionLinenumberEnd: 893
    functionName: gf_isom_new_track_from_template
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - trak_on_child_box
    - gf_bs_new
    - gf_isom_set_last_error
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - gf_isom_get_track_by_id
    - gf_assert
    - gf_list_new
    - gf_isom_box_del
    - gf_isom_insert_moov
    - gf_isom_box_parse_ex
    - gf_list_add
    - gf_sys_is_test_mode
    - gf_isom_box_new_parent
    - gf_list_del_item
    - gf_bs_set_cookie
    - moov_on_child_box
    - gf_bs_del
    - NewMedia
    - RequestTrack
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_new_track_from_template(GF_ISOFile *movie, GF_ISOTrackID
      trakID, u32 MediaType, u32 TimeScale, u8 *tk_box, u32 tk_box_size, Bool udta_only)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:903,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:906,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:908,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:911,1
    - Dst: gf_isom_box_parse_ex
      Src: /src/gpac/src/isomedia/isom_write.c:912,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:913,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:919,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - stsd_data
    - stsd_data_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 921
      start: 895
    functionDepth: 4
    functionLinenumber: 895
    functionLinenumberEnd: 921
    functionName: gf_isom_set_track_stsd_templates
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_isom_box_del
    - gf_bs_del
    - gf_list_count
    - gf_isom_box_parse_ex
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_track_stsd_templates(GF_ISOFile *movie, u32 trackNumber,
      u8 *stsd_data, u32 stsd_data_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_new_track_from_template
      Src: /src/gpac/src/isomedia/isom_write.c:926,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - movie
    - trakID
    - MediaType
    - TimeScale
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 927
      start: 923
    functionDepth: 7
    functionLinenumber: 923
    functionLinenumberEnd: 927
    functionName: gf_isom_new_track
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 2
    functionsReached:
    - gf_isom_new_track_from_template
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_new_track(GF_ISOFile *movie, GF_ISOTrackID trakID,
      u32 MediaType, u32 TimeScale)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_write.c:934,1
    - Dst: gf_isom_new_track_from_template
      Src: /src/gpac/src/isomedia/isom_write.c:937,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:939,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:941,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:945,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:946,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:950,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 6
    argNames:
    - movie
    - trakID
    - refTrakID
    - MediaType
    - TimeScale
    - uri
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - GF_ISOTrackID
    - u32
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 954
      start: 929
    functionDepth: 7
    functionLinenumber: 929
    functionLinenumberEnd: 954
    functionName: gf_isom_new_external_track
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_strdup
    - gf_isom_set_last_error
    - gf_isom_new_track_from_template
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_new_external_track(GF_ISOFile *movie, GF_ISOTrackID
      trakID, GF_ISOTrackID refTrakID, u32 MediaType, u32 TimeScale, const char *uri)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:960,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:962,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - dur
    argTypes:
    - GF_ISOFile*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 966
      start: 956
    functionDepth: 1
    functionLinenumber: 956
    functionLinenumberEnd: 966
    functionName: gf_isom_force_track_duration
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_force_track_duration(GF_ISOFile *movie, u32 trackNumber,
      u64 dur)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:976,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:979,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:983,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:985,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:987,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:988,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 990
      start: 969
    functionDepth: 4
    functionLinenumber: 969
    functionLinenumberEnd: 990
    functionName: gf_isom_remove_stream_description
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_box_del
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_remove_stream_description(GF_ISOFile *movie, u32
      trackNumber, u32 StreamDescriptionIndex)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:1006,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1009,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/isom_write.c:1015,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/isom_write.c:1018,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/isom_write.c:1022,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:1025,1
    - Dst: Track_SetStreamDescriptor
      Src: /src/gpac/src/isomedia/isom_write.c:1026,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:1028,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 6
    argNames:
    - movie
    - trackNumber
    - esd
    - URLname
    - URNname
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_ESD*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1032
      start: 993
    functionDepth: 7
    functionLinenumber: 993
    functionLinenumberEnd: 1032
    functionName: gf_isom_new_mpeg4_description
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - Media_FindDataRef
    - Track_SetStreamDescriptor
    - gf_odf_desc_del
    - gf_odf_desc_copy
    - Media_CreateDataRef
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_new_mpeg4_description(GF_ISOFile *movie,\n                                     u32
      trackNumber,\n                                     const GF_ESD *esd,\n                                     const
      char *URLname,\n                                     const char *URNname,\n
      \                                    u32 *outDescriptionIndex)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/isomedia/isom_write.c:1043,1
    - Dst: gf_isom_datamap_get_offset
      Src: /src/gpac/src/isomedia/isom_write.c:1045,1
    - Dst: gf_isom_datamap_add_data
      Src: /src/gpac/src/isomedia/isom_write.c:1047,1
    - Dst: stbl_AddChunkOffset
      Src: /src/gpac/src/isomedia/isom_write.c:1053,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:1056,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:1057,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/isomedia/isom_write.c:1060,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - trak
    - is_final
    argTypes:
    - GF_TrackBox*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1063
      start: 1034
    functionDepth: 1
    functionLinenumber: 1034
    functionLinenumberEnd: 1063
    functionName: gf_isom_flush_chunk
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_free
    - stbl_AddChunkOffset
    - gf_bs_del
    - gf_isom_datamap_get_offset
    - gf_bs_get_content_no_truncate
    - gf_bs_reassign_buffer
    - gf_isom_datamap_add_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_flush_chunk(GF_TrackBox *trak, Bool is_final)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_flush_chunk
      Src: /src/gpac/src/isomedia/isom_write.c:1092,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:1100,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_write.c:1101,1
    - Dst: Media_AddSample
      Src: /src/gpac/src/isomedia/isom_write.c:1109,1
    - Dst: gf_isom_datamap_add_data
      Src: /src/gpac/src/isomedia/isom_write.c:1113,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 40
    argCount: 6
    argNames:
    - movie
    - trak
    - sample
    - descIndex
    - data_offset
    - syncShadowSampleNum
    argTypes:
    - GF_ISOFile*
    - GF_TrackBox*
    - GF_ISOSample*
    - u32
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1118
      start: 1065
    functionDepth: 2
    functionLinenumber: 1065
    functionLinenumberEnd: 1118
    functionName: trak_add_sample
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - Media_AddSample
    - gf_bs_new
    - gf_isom_flush_chunk
    - gf_bs_write_data
    - gf_isom_datamap_add_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err trak_add_sample(GF_ISOFile *movie, GF_TrackBox *trak, const
      GF_ISOSample *sample, u32 descIndex, u64 data_offset, u32 syncShadowSampleNum)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:1132,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1135,1
    - Dst: FlushCaptureMode
      Src: /src/gpac/src/isomedia/isom_write.c:1138,1
    - Dst: unpack_track
      Src: /src/gpac/src/isomedia/isom_write.c:1141,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/isom_write.c:1151,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:1159,1
    - Dst: gf_isom_datamap_open
      Src: /src/gpac/src/isomedia/isom_write.c:1163,1
    - Dst: gf_isom_datamap_get_offset
      Src: /src/gpac/src/isomedia/isom_write.c:1167,1
    - Dst: Media_ParseODFrame
      Src: /src/gpac/src/isomedia/isom_write.c:1173,1
    - Dst: trak_add_sample
      Src: /src/gpac/src/isomedia/isom_write.c:1176,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/isom_write.c:1179,1
    - Dst: trak_add_sample
      Src: /src/gpac/src/isomedia/isom_write.c:1181,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:1186,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 51
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - sample
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_ISOSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1200
      start: 1121
    functionDepth: 6
    functionLinenumber: 1121
    functionLinenumberEnd: 1200
    functionName: gf_isom_add_sample
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 3
    functionsReached:
    - FlushCaptureMode
    - gf_list_get
    - Media_ParseODFrame
    - trak_add_sample
    - gf_isom_sample_del
    - gf_isom_get_track_box
    - unpack_track
    - gf_isom_datamap_get_offset
    - gf_isom_datamap_open
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - Media_GetSampleDesc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_add_sample(GF_ISOFile *movie, u32 trackNumber, u32
      StreamDescriptionIndex, const GF_ISOSample *sample)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:1216,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1219,1
    - Dst: FlushCaptureMode
      Src: /src/gpac/src/isomedia/isom_write.c:1222,1
    - Dst: unpack_track
      Src: /src/gpac/src/isomedia/isom_write.c:1225,1
    - Dst: stbl_findEntryForTime
      Src: /src/gpac/src/isomedia/isom_write.c:1228,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/src/isomedia/isom_write.c:1233,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/isomedia/isom_write.c:1234,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/isom_write.c:1237,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/isom_write.c:1239,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:1245,1
    - Dst: gf_isom_datamap_open
      Src: /src/gpac/src/isomedia/isom_write.c:1249,1
    - Dst: gf_isom_datamap_get_offset
      Src: /src/gpac/src/isomedia/isom_write.c:1252,1
    - Dst: Media_ParseODFrame
      Src: /src/gpac/src/isomedia/isom_write.c:1258,1
    - Dst: trak_add_sample
      Src: /src/gpac/src/isomedia/isom_write.c:1261,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/isom_write.c:1263,1
    - Dst: trak_add_sample
      Src: /src/gpac/src/isomedia/isom_write.c:1265,1
    - Dst: Media_SetDuration
      Src: /src/gpac/src/isomedia/isom_write.c:1271,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:1274,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:1275,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 59
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - sample
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_ISOSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1276
      start: 1202
    functionDepth: 6
    functionLinenumber: 1202
    functionLinenumberEnd: 1276
    functionName: gf_isom_add_sample_shadow
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - FlushCaptureMode
    - SetTrackDuration
    - gf_list_get
    - gf_isom_last_error
    - Media_ParseODFrame
    - trak_add_sample
    - gf_isom_sample_del
    - stbl_findEntryForTime
    - gf_isom_get_track_box
    - unpack_track
    - gf_isom_get_sample_info
    - gf_isom_datamap_get_offset
    - gf_isom_datamap_open
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - Media_GetSampleDesc
    - Media_SetDuration
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_add_sample_shadow(GF_ISOFile *movie, u32 trackNumber,
      GF_ISOSample *sample)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:1289,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1292,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/isom_write.c:1300,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:1305,1
    - Dst: gf_isom_datamap_open
      Src: /src/gpac/src/isomedia/isom_write.c:1309,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_write.c:1314,1
    - Dst: gf_isom_datamap_add_data
      Src: /src/gpac/src/isomedia/isom_write.c:1317,1
    - Dst: stbl_SampleSizeAppend
      Src: /src/gpac/src/isomedia/isom_write.c:1321,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 32
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - data
    - data_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1322
      start: 1278
    functionDepth: 2
    functionLinenumber: 1278
    functionLinenumberEnd: 1322
    functionName: gf_isom_append_sample_data
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - stbl_SampleSizeAppend
    - gf_bs_write_data
    - gf_isom_get_track_box
    - gf_isom_datamap_open
    - gf_isom_can_access_movie
    - Media_GetSampleDesc
    - gf_isom_datamap_add_data
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_append_sample_data(GF_ISOFile *movie, u32 trackNumber,
      u8 *data, u32 data_size)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:1339,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1342,1
    - Dst: unpack_track
      Src: /src/gpac/src/isomedia/isom_write.c:1345,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/isom_write.c:1359,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:1367,1
    - Dst: Media_AddSample
      Src: /src/gpac/src/isomedia/isom_write.c:1371,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:1375,1
    - Dst: Media_SetDuration
      Src: /src/gpac/src/isomedia/isom_write.c:1377,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:1379,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - sample
    - dataOffset
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_ISOSample*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1381
      start: 1329
    functionDepth: 6
    functionLinenumber: 1329
    functionLinenumberEnd: 1381
    functionName: gf_isom_add_sample_reference
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - SetTrackDuration
    - gf_list_get
    - Media_AddSample
    - gf_isom_get_track_box
    - unpack_track
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - Media_GetSampleDesc
    - Media_SetDuration
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_add_sample_reference(GF_ISOFile *movie, u32 trackNumber,
      u32 StreamDescriptionIndex, GF_ISOSample *sample, u64 dataOffset)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:1395,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1398,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/isom_write.c:1460,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:1470,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 75
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - dur_num
    - dur_den
    - mode
    argTypes:
    - GF_ISOFile*
    - u32
    - u64
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1477
      start: 1385
    functionDepth: 1
    functionLinenumber: 1385
    functionLinenumberEnd: 1477
    functionName: gf_isom_set_last_sample_duration_internal
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - gf_isom_get_track_box
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_set_last_sample_duration_internal(GF_ISOFile *movie,
      u32 trackNumber, u64 dur_num, u32 dur_den, u32 mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_set_last_sample_duration_internal
      Src: /src/gpac/src/isomedia/isom_write.c:1482,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - duration
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1483
      start: 1479
    functionDepth: 2
    functionLinenumber: 1479
    functionLinenumberEnd: 1483
    functionName: gf_isom_set_last_sample_duration
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 2
    functionsReached:
    - gf_isom_set_last_sample_duration_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_last_sample_duration(GF_ISOFile *movie, u32 trackNumber,
      u32 duration)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_set_last_sample_duration_internal
      Src: /src/gpac/src/isomedia/isom_write.c:1488,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - next_dts
    argTypes:
    - GF_ISOFile*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1489
      start: 1485
    functionDepth: 2
    functionLinenumber: 1485
    functionLinenumberEnd: 1489
    functionName: gf_isom_patch_last_sample_duration
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_set_last_sample_duration_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_patch_last_sample_duration(GF_ISOFile *movie, u32
      trackNumber, u64 next_dts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_set_last_sample_duration_internal
      Src: /src/gpac/src/isomedia/isom_write.c:1494,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - dur_num
    - dur_den
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1495
      start: 1491
    functionDepth: 2
    functionLinenumber: 1491
    functionLinenumberEnd: 1495
    functionName: gf_isom_set_last_sample_duration_ex
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_set_last_sample_duration_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_last_sample_duration_ex(GF_ISOFile *movie, u32
      trackNumber, u32 dur_num, u32 dur_den)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:1504,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1507,1
    - Dst: unpack_track
      Src: /src/gpac/src/isomedia/isom_write.c:1510,1
    - Dst: Media_ParseODFrame
      Src: /src/gpac/src/isomedia/isom_write.c:1519,1
    - Dst: Media_UpdateSample
      Src: /src/gpac/src/isomedia/isom_write.c:1520,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/isom_write.c:1521,1
    - Dst: gf_isom_disable_inplace_rewrite
      Src: /src/gpac/src/isomedia/isom_write.c:1522,1
    - Dst: Media_UpdateSample
      Src: /src/gpac/src/isomedia/isom_write.c:1524,1
    - Dst: gf_isom_disable_inplace_rewrite
      Src: /src/gpac/src/isomedia/isom_write.c:1526,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:1530,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - sampleNumber
    - sample
    - data_only
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_ISOSample*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1533
      start: 1498
    functionDepth: 6
    functionLinenumber: 1498
    functionLinenumberEnd: 1533
    functionName: gf_isom_update_sample
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - Media_ParseODFrame
    - gf_isom_sample_del
    - Media_UpdateSample
    - gf_isom_get_track_box
    - unpack_track
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - gf_isom_disable_inplace_rewrite
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_update_sample(GF_ISOFile *movie, u32 trackNumber,
      u32 sampleNumber, GF_ISOSample *sample, Bool data_only)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:1543,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1546,1
    - Dst: unpack_track
      Src: /src/gpac/src/isomedia/isom_write.c:1554,1
    - Dst: Media_UpdateSampleReference
      Src: /src/gpac/src/isomedia/isom_write.c:1562,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:1566,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - sampleNumber
    - sample
    - data_offset
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_ISOSample*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1568
      start: 1537
    functionDepth: 3
    functionLinenumber: 1537
    functionLinenumberEnd: 1568
    functionName: gf_isom_update_sample_reference
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - unpack_track
    - Media_UpdateSampleReference
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_update_sample_reference(GF_ISOFile *movie, u32 trackNumber,
      u32 sampleNumber, GF_ISOSample *sample, u64 data_offset)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:1579,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:1582,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:1586,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 19
    argCount: 3
    argNames:
    - movie
    - trak
    - sample_number
    argTypes:
    - GF_ISOFile*
    - GF_TrackBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1596
      start: 1573
    functionDepth: 1
    functionLinenumber: 1573
    functionLinenumberEnd: 1596
    functionName: gf_isom_meta_track_remove
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void gf_isom_meta_track_remove(GF_ISOFile *movie, GF_TrackBox *trak,
      u32 sample_number)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:1607,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1610,1
    - Dst: unpack_track
      Src: /src/gpac/src/isomedia/isom_write.c:1617,1
    - Dst: stbl_RemoveDTS
      Src: /src/gpac/src/isomedia/isom_write.c:1622,1
    - Dst: stbl_RemoveCTS
      Src: /src/gpac/src/isomedia/isom_write.c:1626,1
    - Dst: stbl_RemoveSize
      Src: /src/gpac/src/isomedia/isom_write.c:1630,1
    - Dst: stbl_RemoveChunk
      Src: /src/gpac/src/isomedia/isom_write.c:1633,1
    - Dst: stbl_RemoveRAP
      Src: /src/gpac/src/isomedia/isom_write.c:1637,1
    - Dst: stbl_RemoveRedundant
      Src: /src/gpac/src/isomedia/isom_write.c:1642,1
    - Dst: stbl_RemoveShadow
      Src: /src/gpac/src/isomedia/isom_write.c:1646,1
    - Dst: stbl_RemovePaddingBits
      Src: /src/gpac/src/isomedia/isom_write.c:1650,1
    - Dst: stbl_RemoveSubSample
      Src: /src/gpac/src/isomedia/isom_write.c:1653,1
    - Dst: stbl_RemoveSampleGroup
      Src: /src/gpac/src/isomedia/isom_write.c:1656,1
    - Dst: gf_isom_disable_inplace_rewrite
      Src: /src/gpac/src/isomedia/isom_write.c:1659,1
    - Dst: gf_isom_meta_track_remove
      Src: /src/gpac/src/isomedia/isom_write.c:1661,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:1663,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 51
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - sampleNumber
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1664
      start: 1601
    functionDepth: 6
    functionLinenumber: 1601
    functionLinenumberEnd: 1664
    functionName: gf_isom_remove_sample
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - stbl_RemoveShadow
    - stbl_RemoveCTS
    - stbl_RemoveRAP
    - stbl_RemovePaddingBits
    - stbl_RemoveSubSample
    - stbl_RemoveSampleGroup
    - gf_isom_disable_inplace_rewrite
    - stbl_RemoveSize
    - gf_isom_get_track_box
    - unpack_track
    - gf_isom_meta_track_remove
    - gf_isom_can_access_movie
    - SetTrackDuration
    - stbl_RemoveChunk
    - stbl_RemoveDTS
    - stbl_RemoveRedundant
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_remove_sample(GF_ISOFile *movie, u32 trackNumber,
      u32 sampleNumber)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:1674,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:1680,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:1682,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:1683,1
    - Dst: gf_isom_disable_inplace_rewrite
      Src: /src/gpac/src/isomedia/isom_write.c:1685,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 17
    argCount: 2
    argNames:
    - movie
    - filename
    argTypes:
    - GF_ISOFile*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1688
      start: 1667
    functionDepth: 1
    functionLinenumber: 1667
    functionLinenumberEnd: 1688
    functionName: gf_isom_set_final_name
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - strcmp
    - gf_isom_can_access_movie
    - gf_isom_disable_inplace_rewrite
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_final_name(GF_ISOFile *movie, char *filename)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:1704,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1707,1
    - Dst: Media_GetESD
      Src: /src/gpac/src/isomedia/isom_write.c:1711,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:1714,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/src/isomedia/isom_write.c:1718,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/isom_write.c:1721,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:1726,1
    - Dst: gf_odf_desc_add_desc
      Src: /src/gpac/src/isomedia/isom_write.c:1736,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:1740,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:1743,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:1745,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:1747,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:1751,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:1758,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:1760,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/isom_write.c:1765,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:1769,1
    - Dst: reftype_AddRefTrack
      Src: /src/gpac/src/isomedia/isom_write.c:1772,1
    - Dst: gf_odf_desc_add_desc
      Src: /src/gpac/src/isomedia/isom_write.c:1786,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 76
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - theDesc
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1787
      start: 1691
    functionDepth: 5
    functionLinenumber: 1691
    functionLinenumberEnd: 1787
    functionName: gf_isom_add_desc_to_description
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - trak_on_child_box
    - gf_odf_desc_del
    - reftype_AddRefTrack
    - Media_GetESD
    - gf_odf_desc_copy
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - gf_list_add
    - Track_FindRef
    - gf_isom_get_original_format_type
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - gf_isom_box_find_child
    - gf_odf_desc_add_desc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_add_desc_to_description(GF_ISOFile *movie, u32 trackNumber,
      u32 StreamDescriptionIndex, const GF_Descriptor *theDesc)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:1801,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1804,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:1810,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:1813,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:1818,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/isom_write.c:1820,1
    - Dst: Track_SetStreamDescriptor
      Src: /src/gpac/src/isomedia/isom_write.c:1822,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:1824,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - newESD
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_ESD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1827
      start: 1792
    functionDepth: 7
    functionLinenumber: 1792
    functionLinenumberEnd: 1827
    functionName: gf_isom_change_mpeg4_description
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - Track_SetStreamDescriptor
    - gf_odf_desc_del
    - gf_odf_desc_copy
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_change_mpeg4_description(GF_ISOFile *movie, u32 trackNumber,
      u32 StreamDescriptionIndex, const GF_ESD *newESD)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:1836,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1839,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:1846,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:1849,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:1853,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - Width
    - Height
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1869
      start: 1829
    functionDepth: 1
    functionLinenumber: 1829
    functionLinenumberEnd: 1869
    functionName: gf_isom_set_visual_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_visual_info(GF_ISOFile *movie, u32 trackNumber,
      u32 StreamDescriptionIndex, u32 Width, u32 Height)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:1878,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1881,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:1897,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:1900,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - bitDepth
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1905
      start: 1871
    functionDepth: 1
    functionLinenumber: 1871
    functionLinenumberEnd: 1905
    functionName: gf_isom_set_visual_bit_depth
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_can_access_movie
    - gf_list_get
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_visual_bit_depth(GF_ISOFile *movie, u32 trackNumber,
      u32 StreamDescriptionIndex, u16 bitDepth)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:1914,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1917,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:1922,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:1925,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:1929,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:1936,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:1938,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:1942,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 37
    argCount: 6
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - hSpacing
    - vSpacing
    - force_par
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - s32
    - s32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1948
      start: 1907
    functionDepth: 5
    functionLinenumber: 1907
    functionLinenumberEnd: 1948
    functionName: gf_isom_set_pixel_aspect_ratio
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_pixel_aspect_ratio(GF_ISOFile *movie, u32 trackNumber,
      u32 StreamDescriptionIndex, s32 hSpacing, s32 vSpacing, Bool force_par)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:1958,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1961,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:1966,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:1969,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:1973,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:1977,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:1979,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:1989,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:1997,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:2003,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:2005,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 56
    argCount: 10
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - colour_type
    - colour_primaries
    - transfer_characteristics
    - matrix_coefficients
    - full_range_flag
    - icc_data
    - icc_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u16
    - u16
    - u16
    - Bool
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2009
      start: 1950
    functionDepth: 5
    functionLinenumber: 1950
    functionLinenumberEnd: 2009
    functionName: gf_isom_set_visual_color_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_box_del_parent
    - gf_list_get
    - memcpy
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - gf_isom_box_find_child
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_visual_color_info(GF_ISOFile *movie, u32 trackNumber,
      u32 StreamDescriptionIndex, u32 colour_type, u16 colour_primaries, u16 transfer_characteristics,
      u16 matrix_coefficients, Bool full_range_flag, u8 *icc_data, u32 icc_size)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:2019,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2022,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2027,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2030,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:2034,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:2038,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2043,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2048,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 35
    argCount: 6
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - ambient_illuminance
    - ambient_light_x
    - ambient_light_y
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u16
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2056
      start: 2011
    functionDepth: 5
    functionLinenumber: 2011
    functionLinenumberEnd: 2056
    functionName: gf_isom_set_ambient_viewing_environment
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_ambient_viewing_environment(GF_ISOFile *movie,
      u32 trackNumber, u32 StreamDescriptionIndex, u32 ambient_illuminance, u16 ambient_light_x,
      u16 ambient_light_y)
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:2069,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2072,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2077,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2080,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:2084,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:2129,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2133,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2136,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2160,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2182,1
    - Dst: gf_isom_clone_box
      Src: /src/gpac/src/isomedia/isom_write.c:2190,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2193,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 122
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - dvcc
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_DOVIDecoderConfigurationRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2196
      start: 2058
    functionDepth: 5
    functionLinenumber: 2058
    functionLinenumberEnd: 2196
    functionName: gf_isom_set_dolby_vision_profile
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_isom_clone_box
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_add
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_dolby_vision_profile(GF_ISOFile* movie, u32 trackNumber,
      u32 StreamDescriptionIndex, GF_DOVIDecoderConfigurationRecord *dvcc)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:2206,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2209,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2214,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2217,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:2221,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:2225,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2228,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2233,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:2237,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2240,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2245,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 43
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - mdcv
    - clli
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_MasteringDisplayColourVolumeInfo*
    - GF_ContentLightLevelInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2248
      start: 2198
    functionDepth: 5
    functionLinenumber: 2198
    functionLinenumberEnd: 2248
    functionName: gf_isom_set_high_dynamic_range_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_high_dynamic_range_info(GF_ISOFile* movie, u32
      trackNumber, u32 StreamDescriptionIndex, GF_MasteringDisplayColourVolumeInfo*
      mdcv, GF_ContentLightLevelInfo* clli)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:2257,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2260,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2265,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2268,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:2272,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:2276,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2278,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2282,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 39
    argCount: 11
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - cleanApertureWidthN
    - cleanApertureWidthD
    - cleanApertureHeightN
    - cleanApertureHeightD
    - horizOffN
    - horizOffD
    - vertOffN
    - vertOffD
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u32
    - s32
    - u32
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2295
      start: 2250
    functionDepth: 5
    functionLinenumber: 2250
    functionLinenumberEnd: 2295
    functionName: gf_isom_set_clean_aperture
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_clean_aperture(GF_ISOFile *movie, u32 trackNumber,
      u32 StreamDescriptionIndex, u32 cleanApertureWidthN, u32 cleanApertureWidthD,
      u32 cleanApertureHeightN, u32 cleanApertureHeightD, s32 horizOffN, u32 horizOffD,
      s32 vertOffN, u32 vertOffD)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:2309,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2312,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:2317,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2324,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:2328,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:2334,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:2342,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2344,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:2347,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2349,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:2352,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2354,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2357,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:2361,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:2365,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:2375,1
    - Dst: floor
      Src: /src/gpac/src/isomedia/isom_write.c:2389,1
    - Dst: floor
      Src: /src/gpac/src/isomedia/isom_write.c:2400,1
    - Dst: floor
      Src: /src/gpac/src/isomedia/isom_write.c:2403,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 100
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - remove
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2409
      start: 2298
    functionDepth: 5
    functionLinenumber: 2298
    functionLinenumberEnd: 2409
    functionName: gf_isom_update_aperture_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_list_get
    - gf_isom_box_del
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - gf_list_add
    - gf_isom_box_new
    - floor
    - gf_isom_can_access_movie
    - gf_list_enum
    - gf_isom_box_find_child
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_update_aperture_info(GF_ISOFile *movie, u32 trackNumber,
      Bool remove)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:2418,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2421,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2426,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2429,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:2433,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:2437,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2439,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2443,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 34
    argCount: 7
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - remove
    - all_ref_pics_intra
    - intra_pred_used
    - max_ref_per_pic
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - Bool
    - Bool
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2450
      start: 2411
    functionDepth: 5
    functionLinenumber: 2411
    functionLinenumberEnd: 2450
    functionName: gf_isom_set_image_sequence_coding_constraints
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_image_sequence_coding_constraints(GF_ISOFile
      *movie, u32 trackNumber, u32 StreamDescriptionIndex, Bool remove, Bool all_ref_pics_intra,
      Bool intra_pred_used, u32 max_ref_per_pic)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:2459,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2462,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2467,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2470,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:2474,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:2478,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2480,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2484,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:2487,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 32
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - remove
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2489
      start: 2452
    functionDepth: 5
    functionLinenumber: 2452
    functionLinenumberEnd: 2489
    functionName: gf_isom_set_image_sequence_alpha
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_strdup
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_image_sequence_alpha(GF_ISOFile *movie, u32 trackNumber,
      u32 StreamDescriptionIndex, Bool remove)
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:2510,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2513,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2520,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2523,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:2527,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2591,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2592,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2603,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2610,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:2621,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2625,1
    - Dst: gf_isom_audio_sample_get_audio_codec_cfg_box
      Src: /src/gpac/src/isomedia/isom_write.c:2631,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2635,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2638,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2639,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:2659,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:2664,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:2666,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2668,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:2670,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:2672,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2673,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:2677,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:2679,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2682,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:2685,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:2687,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2689,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 163
    argCount: 7
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - sampleRate
    - nbChannels
    - bitsPerSample
    - asemode
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - u8
    - GF_AudioSampleEntryImportMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2698
      start: 2491
    functionDepth: 5
    functionLinenumber: 2491
    functionLinenumberEnd: 2698
    functionName: gf_isom_set_audio_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_list_new
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_audio_sample_get_audio_codec_cfg_box
    - gf_isom_get_track_box
    - gf_list_del_item
    - gf_isom_box_new
    - gf_list_add
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_audio_info(GF_ISOFile *movie, u32 trackNumber,
      u32 StreamDescriptionIndex, u32 sampleRate, u32 nbChannels, u8 bitsPerSample,
      GF_AudioSampleEntryImportMode asemode)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:2709,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2716,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2723,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2726,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:2730,1
    - Dst: gf_isom_set_audio_info
      Src: /src/gpac/src/isomedia/isom_write.c:2740,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:2743,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2745,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:2749,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 44
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - sampleDescriptionIndex
    - layout
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_AudioChannelLayout*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2751
      start: 2700
    functionDepth: 6
    functionLinenumber: 2700
    functionLinenumberEnd: 2751
    functionName: gf_isom_set_audio_layout
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - memcpy
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_set_audio_info
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_audio_layout(GF_ISOFile *movie, u32 trackNumber,
      u32 sampleDescriptionIndex, GF_AudioChannelLayout *layout)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:2758,1
    - Dst: gf_isom_disable_inplace_rewrite
      Src: /src/gpac/src/isomedia/isom_write.c:2770,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - movie
    - storageMode
    argTypes:
    - GF_ISOFile*
    - GF_ISOStorageMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2775
      start: 2754
    functionDepth: 1
    functionLinenumber: 2754
    functionLinenumberEnd: 2775
    functionName: gf_isom_set_storage_mode
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 2
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_disable_inplace_rewrite
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_storage_mode(GF_ISOFile *movie, GF_ISOStorageMode
      storageMode)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - file
    - compress_mode
    - compress_flags
    argTypes:
    - GF_ISOFile*
    - GF_ISOCompressMode
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2785
      start: 2778
    functionDepth: 0
    functionLinenumber: 2778
    functionLinenumberEnd: 2785
    functionName: gf_isom_enable_compression
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_enable_compression(GF_ISOFile *file, GF_ISOCompressMode
      compress_mode, u32 compress_flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - file
    - set_on
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2793
      start: 2787
    functionDepth: 0
    functionLinenumber: 2787
    functionLinenumberEnd: 2793
    functionName: gf_isom_force_64bit_chunk_offset
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_force_64bit_chunk_offset(GF_ISOFile *file, Bool set_on)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:2809,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2812,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2817,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:2819,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2823,1
    - Dst: edts_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:2825,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:2836,1
    - Dst: CreateEditEntry
      Src: /src/gpac/src/isomedia/isom_write.c:2846,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2849,1
    - Dst: CreateEditEntry
      Src: /src/gpac/src/isomedia/isom_write.c:2851,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2853,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:2854,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:2880,1
    - Dst: CreateEditEntry
      Src: /src/gpac/src/isomedia/isom_write.c:2887,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2890,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2892,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:2893,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_write.c:2896,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:2897,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 84
    argCount: 7
    argNames:
    - movie
    - trackNumber
    - EditTime
    - EditDuration
    - MediaTime
    - media_rate
    - EditMode
    argTypes:
    - GF_ISOFile*
    - u32
    - u64
    - u64
    - u64
    - u32
    - GF_ISOEditType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2899
      start: 2799
    functionDepth: 6
    functionLinenumber: 2799
    functionLinenumberEnd: 2899
    functionName: gf_isom_set_edit_internal
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - SetTrackDuration
    - trak_on_child_box
    - CreateEditEntry
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_add
    - edts_on_child_box
    - gf_isom_can_access_movie
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_set_edit_internal(GF_ISOFile *movie, u32 trackNumber,
      u64 EditTime, u64 EditDuration, u64 MediaTime, u32 media_rate, GF_ISOEditType
      EditMode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_set_edit_internal
      Src: /src/gpac/src/isomedia/isom_write.c:2904,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - movie
    - trackNumber
    - EditTime
    - EditDuration
    - MediaTime
    - EditMode
    argTypes:
    - GF_ISOFile*
    - u32
    - u64
    - u64
    - u64
    - GF_ISOEditType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2905
      start: 2901
    functionDepth: 7
    functionLinenumber: 2901
    functionLinenumberEnd: 2905
    functionName: gf_isom_set_edit
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_set_edit_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_edit(GF_ISOFile *movie, u32 trackNumber, u64
      EditTime, u64 EditDuration, u64 MediaTime, GF_ISOEditType EditMode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_set_edit_internal
      Src: /src/gpac/src/isomedia/isom_write.c:2910,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - movie
    - trackNumber
    - EditTime
    - EditDuration
    - MediaTime
    - media_rate
    argTypes:
    - GF_ISOFile*
    - u32
    - u64
    - u64
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2912
      start: 2907
    functionDepth: 7
    functionLinenumber: 2907
    functionLinenumberEnd: 2912
    functionName: gf_isom_set_edit_with_rate
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_set_edit_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_edit_with_rate(GF_ISOFile *movie, u32 trackNumber,
      u64 EditTime, u64 EditDuration, u64 MediaTime, u32 media_rate)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2920,1
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:2923,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2929,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2930,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:2931,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:2932,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2936,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:2938,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2939
      start: 2915
    functionDepth: 6
    functionLinenumber: 2915
    functionLinenumberEnd: 2939
    functionName: gf_isom_remove_edits
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_list_count
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - SetTrackDuration
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_remove_edits(GF_ISOFile *movie, u32 trackNumber)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2949,1
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:2952,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2956,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/isomedia/isom_write.c:2956,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2958,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:2959,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2960,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:2962,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:2963,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - seg_index
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2964
      start: 2943
    functionDepth: 7
    functionLinenumber: 2943
    functionLinenumberEnd: 2964
    functionName: gf_isom_remove_edit
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_isom_remove_edits
    - gf_list_count
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - SetTrackDuration
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_remove_edit(GF_ISOFile *movie, u32 trackNumber, u32
      seg_index)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2973,1
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:2975,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2979,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:2981,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/isom_write.c:2982,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2985,1
    - Dst: edts_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:2987,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/isom_write.c:2988,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:2990,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:3008,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:3009,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - EditDuration
    - MediaTime
    - EditMode
    argTypes:
    - GF_ISOFile*
    - u32
    - u64
    - u64
    - GF_ISOEditType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3010
      start: 2967
    functionDepth: 6
    functionLinenumber: 2967
    functionLinenumberEnd: 3010
    functionName: gf_isom_append_edit
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_assert
    - trak_on_child_box
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_list_add
    - edts_on_child_box
    - gf_isom_get_track_box
    - SetTrackDuration
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_append_edit(GF_ISOFile *movie, u32 trackNumber, u64
      EditDuration, u64 MediaTime, GF_ISOEditType EditMode)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3018,1
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3020,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3024,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3025,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:3042,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 6
    argNames:
    - movie
    - trackNumber
    - seg_index
    - EditDuration
    - MediaTime
    - EditMode
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u64
    - u64
    - GF_ISOEditType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3043
      start: 3012
    functionDepth: 6
    functionLinenumber: 3012
    functionLinenumberEnd: 3043
    functionName: gf_isom_modify_edit
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_list_count
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - SetTrackDuration
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_modify_edit(GF_ISOFile *movie, u32 trackNumber, u32
      seg_index, u64 EditDuration, u64 MediaTime, GF_ISOEditType EditMode)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:3051,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3057
      start: 3045
    functionDepth: 1
    functionLinenumber: 3045
    functionLinenumberEnd: 3057
    functionName: update_next_track_id
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void update_next_track_id(GF_ISOFile *movie)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3070,1
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3073,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:3099,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:3101,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:3103,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:3109,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:3113,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/isom_write.c:3117,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/isomedia/isom_write.c:3120,1
    - Dst: gf_isom_remove_sample
      Src: /src/gpac/src/isomedia/isom_write.c:3124,1
    - Dst: gf_isom_update_sample
      Src: /src/gpac/src/isomedia/isom_write.c:3127,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/isom_write.c:3131,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:3138,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3139,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:3142,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3153,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3156,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3166,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3172,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3173,1
    - Dst: gf_isom_disable_inplace_rewrite
      Src: /src/gpac/src/isomedia/isom_write.c:3178,1
    - Dst: gf_isom_meta_track_remove
      Src: /src/gpac/src/isomedia/isom_write.c:3180,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3183,1
    - Dst: update_next_track_id
      Src: /src/gpac/src/isomedia/isom_write.c:3186,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3188,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:3189,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:3190,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 104
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3194
      start: 3060
    functionDepth: 7
    functionLinenumber: 3060
    functionLinenumberEnd: 3194
    functionName: gf_isom_remove_track
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 4
    functionsReached:
    - gf_free
    - gf_isom_remove_sample
    - gf_odf_desc_del
    - gf_isom_get_sample_count
    - gf_list_count
    - gf_isom_can_access_movie
    - gf_isom_box_del
    - gf_isom_sample_del
    - gf_isom_get_sample
    - gf_isom_box_del_parent
    - gf_isom_update_sample
    - gf_list_del_item
    - gf_isom_get_track_box
    - gf_list_enum
    - gf_isom_disable_inplace_rewrite
    - gf_malloc
    - update_next_track_id
    - gf_isom_meta_track_remove
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_remove_track(GF_ISOFile *movie, u32 trackNumber)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3205,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:3210,1
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:3214,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3214,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:3217,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3221,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3223,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:3224,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3225,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3226,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_write.c:3226,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/isom_write.c:3228,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:3234,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:3237,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3238,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_write.c:3238,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/isom_write.c:3240,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/isom_write.c:3241,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 38
    argCount: 3
    argNames:
    - movie
    - threeCharCode
    - notice
    argTypes:
    - GF_ISOFile*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3242
      start: 3197
    functionDepth: 6
    functionLinenumber: 3197
    functionLinenumberEnd: 3242
    functionName: gf_isom_set_copyright
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_free
    - udta_on_child_box_ex
    - gf_list_get
    - memcpy
    - gf_isom_insert_moov
    - strcpy
    - strlen
    - gf_isom_box_new_parent
    - gf_list_count
    - strcmp
    - udta_getEntry
    - gf_isom_box_new
    - gf_isom_can_access_movie
    - moov_on_child_box
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_copyright(GF_ISOFile *movie, const char *threeCharCode,
      char *notice)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3253,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:3256,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3260,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:3263,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3263,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:3274,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3276,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3278,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:3281,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:3282,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:3286,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3287,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:3288,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:3295,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:3298,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:3299,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/isom_write.c:3300,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 45
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - schemeURI
    - value
    argTypes:
    - GF_ISOFile*
    - u32
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3301
      start: 3244
    functionDepth: 5
    functionLinenumber: 3244
    functionLinenumberEnd: 3301
    functionName: gf_isom_add_track_kind
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_free
    - udta_on_child_box_ex
    - gf_list_get
    - trak_on_child_box
    - gf_strdup
    - gf_isom_insert_moov
    - gf_isom_box_new_parent
    - gf_list_count
    - strcmp
    - gf_isom_get_track_box
    - udta_getEntry
    - gf_isom_box_new
    - gf_isom_can_access_movie
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_add_track_kind(GF_ISOFile *movie, u32 trackNumber,
      const char *schemeURI, const char *value)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3311,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:3313,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3317,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:3320,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3320,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:3327,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3329,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3330,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:3334,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:3335,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3336,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 31
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - schemeURI
    - value
    argTypes:
    - GF_ISOFile*
    - u32
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3343
      start: 3303
    functionDepth: 5
    functionLinenumber: 3303
    functionLinenumberEnd: 3343
    functionName: gf_isom_remove_track_kind
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - trak_on_child_box
    - gf_isom_insert_moov
    - gf_isom_box_new_parent
    - gf_list_count
    - strcmp
    - gf_isom_get_track_box
    - udta_getEntry
    - gf_isom_can_access_movie
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_remove_track_kind(GF_ISOFile *movie, u32 trackNumber,
      const char *schemeURI, const char *value)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3355,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:3358,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3362,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:3365,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3365,1
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:3371,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3371,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:3378,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:3380,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/isom_write.c:3381,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:3383,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3385,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:3391,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:3393,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_write.c:3396,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:3400,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3403,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3405,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3407,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3409,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_write.c:3413,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:3415,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 61
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - timestamp
    - name
    argTypes:
    - GF_ISOFile*
    - u32
    - u64
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3416
      start: 3345
    functionDepth: 6
    functionLinenumber: 3345
    functionLinenumberEnd: 3416
    functionName: gf_isom_add_chapter
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_free
    - udta_on_child_box_ex
    - gf_list_get
    - trak_on_child_box
    - gf_strdup
    - gf_list_insert
    - GF_SAFEALLOC
    - gf_isom_insert_moov
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_add
    - udta_getEntry
    - gf_isom_box_new
    - gf_isom_can_access_movie
    - moov_on_child_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_add_chapter(GF_ISOFile *movie, u32 trackNumber, u64
      timestamp, char *name)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3427,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:3429,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3433,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:3442,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3444,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3448,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3450,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3451,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:3452,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3454,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3455,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3456,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3457,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:3458,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3461,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:3462,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_write.c:3463,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3464,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 47
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - index
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3467
      start: 3418
    functionDepth: 3
    functionLinenumber: 3418
    functionLinenumberEnd: 3467
    functionName: gf_isom_remove_chapter
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_isom_box_array_del
    - gf_isom_insert_moov
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_del_item
    - udta_getEntry
    - gf_isom_can_access_movie
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_remove_chapter(GF_ISOFile *movie, u32 trackNumber,
      u32 index)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3477,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:3479,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:3485,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3488,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3491,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:3493,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3494,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3495,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3498,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:3499,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/isom_write.c:3500,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3501,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 2
    argNames:
    - movie
    - index
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3504
      start: 3470
    functionDepth: 2
    functionLinenumber: 3470
    functionLinenumberEnd: 3504
    functionName: gf_isom_remove_copyright
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_del
    - gf_isom_insert_moov
    - gf_list_count
    - gf_list_del_item
    - udta_getEntry
    - gf_isom_can_access_movie
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_remove_copyright(GF_ISOFile *movie, u32 index)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3512,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:3515,1
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:3518,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3518,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:3522,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3524,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3526,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3527,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:3529,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:3535,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:3538,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3539,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:3541,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/isom_write.c:3543,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 35
    argCount: 4
    argNames:
    - movie
    - UUID
    - data
    - length
    argTypes:
    - GF_ISOFile*
    - bin128
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3544
      start: 3506
    functionDepth: 6
    functionLinenumber: 3506
    functionLinenumberEnd: 3544
    functionName: gf_isom_set_watermark
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_free
    - udta_on_child_box_ex
    - gf_list_get
    - memcpy
    - gf_isom_insert_moov
    - gf_isom_box_new_parent
    - udta_getEntry
    - gf_isom_box_new
    - gf_isom_can_access_movie
    - moov_on_child_box
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_set_watermark(GF_ISOFile *movie, bin128 UUID, u8* data,
      u32 length)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3553,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - movie
    - InterleaveTime
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3559
      start: 3549
    functionDepth: 1
    functionLinenumber: 3549
    functionLinenumberEnd: 3559
    functionName: gf_isom_set_interleave_time
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_interleave_time(GF_ISOFile *movie, u32 InterleaveTime)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3574,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3577,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3604,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3618,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3619,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_write.c:3621,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 46
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - CompactionOn
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3627
      start: 3566
    functionDepth: 1
    functionLinenumber: 3566
    functionLinenumberEnd: 3627
    functionName: gf_isom_use_compact_size
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memset
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_use_compact_size(GF_ISOFile *movie, u32 trackNumber,
      Bool CompactionOn)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - movie
    - do_disable
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3636
      start: 3630
    functionDepth: 0
    functionLinenumber: 3630
    functionLinenumberEnd: 3636
    functionName: gf_isom_disable_brand_rewrite
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_disable_brand_rewrite(GF_ISOFile *movie, Bool do_disable)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3649,1
    - Dst: CheckNoData
      Src: /src/gpac/src/isomedia/isom_write.c:3652,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:3658,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:3660,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3667,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3678,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:3680,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3683,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 43
    argCount: 3
    argNames:
    - movie
    - MajorBrand
    - MinorVersion
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3686
      start: 3638
    functionDepth: 4
    functionLinenumber: 3638
    functionLinenumberEnd: 3686
    functionName: gf_isom_set_brand_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 8
    functionsReached:
    - gf_free
    - memcpy
    - CheckNoData
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_can_access_movie
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_brand_info(GF_ISOFile *movie, u32 MajorBrand,
      u32 MinorVersion)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3700,1
    - Dst: CheckNoData
      Src: /src/gpac/src/isomedia/isom_write.c:3703,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:3709,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:3711,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3730,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:3733,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3734,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/isom_write.c:3745,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3748,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3759,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 66
    argCount: 3
    argNames:
    - movie
    - Brand
    - AddIt
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3762
      start: 3689
    functionDepth: 4
    functionLinenumber: 3689
    functionLinenumberEnd: 3762
    functionName: gf_isom_modify_alternate_brand
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 9
    functionsReached:
    - gf_free
    - gf_assert
    - memcpy
    - CheckNoData
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_can_access_movie
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_modify_alternate_brand(GF_ISOFile *movie, u32 Brand,
      Bool AddIt)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3774,1
    - Dst: CheckNoData
      Src: /src/gpac/src/isomedia/isom_write.c:3777,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:3783,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:3785,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3787,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3792,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - movie
    - leave_empty
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3799
      start: 3764
    functionDepth: 4
    functionLinenumber: 3764
    functionLinenumberEnd: 3799
    functionName: gf_isom_reset_alt_brands_ex
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_free
    - CheckNoData
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_can_access_movie
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_reset_alt_brands_ex(GF_ISOFile *movie, Bool leave_empty)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_reset_alt_brands_ex
      Src: /src/gpac/src/isomedia/isom_write.c:3803,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3804
      start: 3800
    functionDepth: 5
    functionLinenumber: 3800
    functionLinenumberEnd: 3804
    functionName: gf_isom_reset_alt_brands
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 2
    functionsReached:
    - gf_isom_reset_alt_brands_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_reset_alt_brands(GF_ISOFile *movie)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3812,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3815,1
    - Dst: stbl_SetPaddingBits
      Src: /src/gpac/src/isomedia/isom_write.c:3819,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - sampleNumber
    - NbBits
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3820
      start: 3807
    functionDepth: 1
    functionLinenumber: 3807
    functionLinenumberEnd: 3820
    functionName: gf_isom_set_sample_padding_bits
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - stbl_SetPaddingBits
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_set_sample_padding_bits(GF_ISOFile *movie, u32 trackNumber,
      u32 sampleNumber, u8 NbBits)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3834,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_write.c:3838,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3841,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:3852,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_write.c:3853,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3861,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3863,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3864,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3867,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:3868,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_write.c:3869,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3870,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 43
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - UserDataType
    - UUID
    - UserDataIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - bin128
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3874
      start: 3823
    functionDepth: 5
    functionLinenumber: 3823
    functionLinenumberEnd: 3874
    functionName: gf_isom_remove_user_data_item
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_box_del_parent
    - gf_list_get
    - memcmp
    - gf_isom_box_array_del
    - gf_list_count
    - memset
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_list_enum
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_remove_user_data_item(GF_ISOFile *movie, u32 trackNumber,
      u32 UserDataType, bin128 UUID, u32 UserDataIndex)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3886,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_write.c:3890,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3893,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:3904,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_write.c:3905,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:3913,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_write.c:3914,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3915,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - UserDataType
    - UUID
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - bin128
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3919
      start: 3876
    functionDepth: 3
    functionLinenumber: 3876
    functionLinenumberEnd: 3919
    functionName: gf_isom_remove_user_data
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_free
    - memcmp
    - gf_isom_box_array_del
    - memset
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_list_enum
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_remove_user_data(GF_ISOFile *movie, u32 trackNumber,
      u32 UserDataType, bin128 UUID)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3928,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3934,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:3936,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3936,1
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:3940,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3940,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:3947,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3951,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:3953,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/isom_write.c:3956,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:3958,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:3960,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3962,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:3964,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/isom_write.c:3967,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 51
    argCount: 6
    argNames:
    - movie
    - trackNumber
    - UserDataType
    - UUID
    - data
    - DataLength
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - bin128
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3972
      start: 3921
    functionDepth: 6
    functionLinenumber: 3921
    functionLinenumberEnd: 3972
    functionName: gf_isom_add_user_data
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - udta_on_child_box_ex
    - trak_on_child_box
    - memcpy
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - gf_isom_box_new
    - gf_isom_can_access_movie
    - moov_on_child_box
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_add_user_data(GF_ISOFile *movie, u32 trackNumber,
      u32 UserDataType, bin128 UUID, u8 *data, u32 DataLength)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3982,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3986,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:3988,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3988,1
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:3992,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3992,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:3997,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/isom_write.c:3998,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/isomedia/isom_write.c:4000,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/isom_write.c:4002,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4005,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 31
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - data
    - DataLength
    argTypes:
    - GF_ISOFile*
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4007
      start: 3974
    functionDepth: 6
    functionLinenumber: 3974
    functionLinenumberEnd: 4007
    functionName: gf_isom_add_user_data_boxes
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - udta_on_child_box_ex
    - trak_on_child_box
    - gf_bs_new
    - gf_isom_box_new_parent
    - gf_bs_del
    - gf_isom_get_track_box
    - gf_bs_available
    - gf_isom_can_access_movie
    - moov_on_child_box
    - gf_isom_box_parse
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_add_user_data_boxes(GF_ISOFile *movie, u32 trackNumber,
      u8 *data, u32 DataLength)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: AddMovieIOD
      Src: /src/gpac/src/isomedia/isom_write.c:4017,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:4018,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/isom_write.c:4019,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4021,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4022,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:4023,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:4024,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4026,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4027,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:4028,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:4029,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - orig
    - dest
    argTypes:
    - GF_ISOFile*
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4032
      start: 4009
    functionDepth: 7
    functionLinenumber: 4009
    functionLinenumberEnd: 4032
    functionName: gf_isom_clone_pl_indications
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_odf_desc_del
    - gf_odf_desc_copy
    - gf_list_count
    - AddMovieIOD
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_clone_pl_indications(GF_ISOFile *orig, GF_ISOFile
      *dest)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4043,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4046,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:4048,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:4049,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_write.c:4050,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4051,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:4053,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4056,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:4058,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/isomedia/isom_write.c:4061,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4062,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:4063,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 2
    argNames:
    - src
    - dst
    argTypes:
    - GF_Box*
    - GF_Box**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4065
      start: 4034
    functionDepth: 4
    functionLinenumber: 4034
    functionLinenumberEnd: 4065
    functionName: gf_isom_clone_box
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 3
    functionsReached:
    - gf_free
    - gf_isom_box_size
    - gf_bs_new
    - gf_isom_box_del
    - gf_bs_get_content
    - gf_isom_box_write
    - gf_bs_del
    - gf_isom_box_parse
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_clone_box(GF_Box *src, GF_Box **dst)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:4078,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4082,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4083,1
    - Dst: gf_isom_clone_box
      Src: /src/gpac/src/isomedia/isom_write.c:4085,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4086,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4090,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4091,1
    - Dst: gf_isom_clone_box
      Src: /src/gpac/src/isomedia/isom_write.c:4094,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4095,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:4100,1
    - Dst: gf_isom_clone_box
      Src: /src/gpac/src/isomedia/isom_write.c:4105,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/isom_write.c:4107,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/isom_write.c:4112,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4114,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:4118,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4124,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4125,1
    - Dst: gf_isom_clone_track
      Src: /src/gpac/src/isomedia/isom_write.c:4128,1
    - Dst: gf_isom_clone_box
      Src: /src/gpac/src/isomedia/isom_write.c:4133,1
    - Dst: gf_isom_clone_pl_indications
      Src: /src/gpac/src/isomedia/isom_write.c:4136,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4143,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:4146,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4153,1
    - Dst: gf_isom_clone_box
      Src: /src/gpac/src/isomedia/isom_write.c:4176,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4177,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 90
    argCount: 5
    argNames:
    - orig_file
    - dest_file
    - clone_tracks
    - keep_hint_tracks
    - keep_pssh
    argTypes:
    - GF_ISOFile*
    - GF_ISOFile*
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4184
      start: 4072
    functionDepth: 8
    functionLinenumber: 4072
    functionLinenumberEnd: 4184
    functionName: gf_isom_clone_movie
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_new
    - gf_list_get
    - gf_isom_clone_pl_indications
    - gf_isom_clone_box
    - gf_isom_box_del
    - gf_list_count
    - gf_list_add
    - gf_list_del_item
    - gf_isom_can_access_movie
    - gf_isom_clone_track
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_clone_movie(GF_ISOFile *orig_file, GF_ISOFile *dest_file,
      Bool clone_tracks, Bool keep_hint_tracks, Bool keep_pssh)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4199,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:4202,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:4204,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:4209,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:4220,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:4222,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_write.c:4226,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4229,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 41
    argCount: 3
    argNames:
    - file
    - output
    - output_size
    argTypes:
    - GF_ISOFile*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4231
      start: 4188
    functionDepth: 3
    functionLinenumber: 4188
    functionLinenumberEnd: 4231
    functionName: gf_isom_get_raw_user_data
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_size
    - gf_bs_new
    - gf_bs_get_content
    - gf_isom_box_write
    - gf_bs_del
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_raw_user_data(GF_ISOFile *file, u8 **output,
      u32 *output_size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4239,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4240,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4246,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4247,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 4
    argNames:
    - file
    - trak
    - trex
    - trexprop
    argTypes:
    - GF_ISOFile*
    - GF_TrackBox*
    - GF_TrackExtendsBox**
    - GF_TrackExtensionPropertiesBox**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4252
      start: 4234
    functionDepth: 1
    functionLinenumber: 4234
    functionLinenumberEnd: 4252
    functionName: gf_isom_get_trex_props
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_get_trex_props(GF_ISOFile *file, GF_TrackBox *trak,
      GF_TrackExtendsBox **trex, GF_TrackExtensionPropertiesBox **trexprop)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:4269,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4277,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:4281,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:4282,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4284,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4287,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:4290,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4294,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4296,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_write.c:4298,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_write.c:4300,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4302,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4306,1
    - Dst: gf_isom_get_trex_props
      Src: /src/gpac/src/isomedia/isom_write.c:4315,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:4317,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4320,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4326,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4328,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:4331,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4332,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:4333,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/isom_write.c:4342,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4343,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4347,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:4349,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:4350,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_write.c:4351,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4352,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4357,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4360,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4361,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4364,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4369,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4374,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4376,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4377,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4381,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4382,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/isomedia/isom_write.c:4385,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/isom_write.c:4386,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 93
    argCount: 4
    argNames:
    - file
    - track
    - output
    - output_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4390
      start: 4255
    functionDepth: 5
    functionLinenumber: 4255
    functionLinenumberEnd: 4390
    functionName: gf_isom_get_track_template
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_size
    - gf_bs_new
    - gf_isom_box_write
    - gf_list_count
    - gf_isom_box_find_child
    - gf_list_new
    - gf_list_get
    - gf_assert
    - gf_isom_box_del
    - gf_bs_get_content
    - gf_list_add
    - gf_isom_box_new
    - gf_list_transfer
    - gf_isom_box_new_parent
    - gf_list_del_item
    - gf_isom_get_track_box
    - gf_list_del
    - gf_isom_get_trex_props
    - gf_bs_del
    - GF_4CC
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_track_template(GF_ISOFile *file, u32 track, u8
      **output, u32 *output_size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:4404,1
    - Dst: gf_isom_get_trex_props
      Src: /src/gpac/src/isomedia/isom_write.c:4407,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4410,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:4411,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:4412,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:4415,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:4416,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_write.c:4418,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4419,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 4
    argNames:
    - file
    - track
    - output
    - output_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4426
      start: 4392
    functionDepth: 3
    functionLinenumber: 4392
    functionLinenumberEnd: 4426
    functionName: gf_isom_get_trex_template
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_size
    - gf_bs_new
    - gf_bs_get_content
    - gf_isom_get_trex_props
    - gf_isom_box_write
    - gf_bs_del
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_trex_template(GF_ISOFile *file, u32 track, u8
      **output, u32 *output_size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:4438,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4442,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4448,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:4450,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:4451,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_write.c:4452,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4453,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 5
    argNames:
    - file
    - track
    - stsd_idx
    - output
    - output_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4455
      start: 4428
    functionDepth: 3
    functionLinenumber: 4428
    functionLinenumberEnd: 4455
    functionName: gf_isom_get_stsd_template
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_box_size
    - gf_bs_new
    - gf_bs_get_content
    - gf_isom_box_write
    - gf_bs_del
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_stsd_template(GF_ISOFile *file, u32 track, u32
      stsd_idx, u8 **output, u32 *output_size)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:4471,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:4473,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:4477,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:4484,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:4485,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4488,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4489,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:4491,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4495,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4498,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4500,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4501,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4505,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/isom_write.c:4509,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4510,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4514,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:4516,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:4517,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_write.c:4518,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4519,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4520,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/isom_write.c:4522,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/isom_write.c:4524,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/isomedia/isom_write.c:4526,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4527,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:4528,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4532,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4533,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4537,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4539,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4542,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4544,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4545,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4549,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4551,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4555,1
    - Dst: gf_isom_disable_inplace_rewrite
      Src: /src/gpac/src/isomedia/isom_write.c:4559,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:4564,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:4566,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:4568,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:4570,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/isomedia/isom_write.c:4578,1
    - Dst: RequestTrack
      Src: /src/gpac/src/isomedia/isom_write.c:4581,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:4587,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4588,1
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:4589,1
    - Dst: gf_isom_get_filename
      Src: /src/gpac/src/isomedia/isom_write.c:4594,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/isomedia/isom_write.c:4595,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_write.c:4595,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4603,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4605,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4622,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_write.c:4626,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:4627,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4629,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/isom_write.c:4632,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4636,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4637,1
    - Dst: Media_SetDrefURL
      Src: /src/gpac/src/isomedia/isom_write.c:4640,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4648,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4649,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:4652,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4654,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4658,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/isomedia/isom_write.c:4664,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/isomedia/isom_write.c:4665,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 163
    argCount: 5
    argNames:
    - orig_file
    - orig_track
    - dest_file
    - flags
    - dest_track
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_ISOFile*
    - GF_ISOTrackCloneFlags
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4669
      start: 4458
    functionDepth: 6
    functionLinenumber: 4458
    functionLinenumberEnd: 4669
    functionName: gf_isom_clone_track
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_isom_box_size
    - gf_bs_new
    - gf_isom_box_write
    - gf_isom_modify_alternate_brand
    - gf_list_count
    - gf_isom_can_access_movie
    - gf_isom_get_track_by_id
    - gf_list_new
    - gf_list_get
    - gf_assert
    - gf_isom_box_del
    - gf_bs_get_content
    - gf_isom_insert_moov
    - gf_isom_get_media_subtype
    - Media_CreateDataRef
    - gf_list_add
    - gf_isom_box_new
    - gf_crc_32
    - gf_isom_box_new_parent
    - gf_list_del_item
    - gf_bs_set_cookie
    - gf_isom_get_track_box
    - moov_on_child_box
    - gf_isom_disable_inplace_rewrite
    - strlen
    - gf_isom_box_array_del
    - gf_isom_box_parse
    - Media_SetDrefURL
    - gf_bs_del
    - gf_list_rem
    - gf_isom_get_filename
    - RequestTrack
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_clone_track(GF_ISOFile *orig_file, u32 orig_track,
      GF_ISOFile *dest_file, GF_ISOTrackCloneFlags flags, u32 *dest_track)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:4677,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:4680,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:4682,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_write.c:4686,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:4687,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4690,1
    - Dst: gf_isom_clone_sample_description
      Src: /src/gpac/src/isomedia/isom_write.c:4692,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 5
    argNames:
    - the_file
    - trackNumber
    - orig_file
    - orig_track
    - reset_existing
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_ISOFile*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4696
      start: 4673
    functionDepth: 3
    functionLinenumber: 4673
    functionLinenumberEnd: 4696
    functionName: gf_isom_clone_sample_descriptions
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_clone_sample_description
    - gf_isom_box_array_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_clone_sample_descriptions(GF_ISOFile *the_file, u32
      trackNumber, GF_ISOFile *orig_file, u32 orig_track, Bool reset_existing)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:4713,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:4717,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4720,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4738,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:4740,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:4741,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_write.c:4742,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4743,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4744,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/isomedia/isom_write.c:4756,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4757,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:4758,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:4764,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:4771,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:4778,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4786,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:4790,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/isom_write.c:4794,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/isom_write.c:4797,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:4801,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4804,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4805,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/isomedia/isom_write.c:4808,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/isomedia/isom_write.c:4809,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/isomedia/isom_write.c:4810,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4815,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 93
    argCount: 8
    argNames:
    - the_file
    - trackNumber
    - orig_file
    - orig_track
    - orig_desc_index
    - URLname
    - URNname
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_ISOFile*
    - u32
    - u32
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4817
      start: 4700
    functionDepth: 4
    functionLinenumber: 4700
    functionLinenumberEnd: 4817
    functionName: gf_isom_clone_sample_description
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_isom_box_size
    - gf_bs_new
    - gf_isom_box_write
    - gf_list_count
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - gf_list_get
    - gf_isom_box_del
    - gf_bs_get_content
    - Media_CreateDataRef
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_get_media_type
    - Media_FindDataRef
    - gf_isom_is_video_handler_type
    - gf_isom_get_track_box
    - gf_isom_box_parse
    - gf_isom_set_visual_info
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_clone_sample_description(GF_ISOFile *the_file, u32
      trackNumber, GF_ISOFile *orig_file, u32 orig_track, u32 orig_desc_index, const
      char *URLname, const char *URNname, u32 *outDescriptionIndex)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:4828,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:4831,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/isom_write.c:4835,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/isom_write.c:4838,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:4842,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/isomedia/isom_write.c:4844,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:4847,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:4852,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4857,1
    - Dst: strncpy
      Src: /src/gpac/src/isomedia/isom_write.c:4869,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/isom_write.c:4869,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/isom_write.c:4870,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4878,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:4883,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:4888,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4893,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4909,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_write.c:4910,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/isomedia/isom_write.c:4911,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_write.c:4912,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_write.c:4913,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_write.c:4914,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_write.c:4915,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_write.c:4916,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_write.c:4917,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4918,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:4927,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:4928,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:4931,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4937,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:4942,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:4947,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4952,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4958,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4960,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4963,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_write.c:4965,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_write.c:4966,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_write.c:4968,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_write.c:4969,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4970,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 131
    argCount: 6
    argNames:
    - movie
    - trackNumber
    - URLname
    - URNname
    - udesc
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - char*
    - char*
    - GF_GenericSampleDescription*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4973
      start: 4819
    functionDepth: 5
    functionLinenumber: 4819
    functionLinenumberEnd: 4973
    functionName: gf_isom_new_generic_sample_description
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_list_count
    - gf_isom_can_access_movie
    - gf_bs_write_u32
    - gf_isom_get_mp4time
    - gf_isom_box_del
    - memcpy
    - gf_bs_get_content
    - Media_CreateDataRef
    - gf_list_add
    - gf_isom_box_new
    - gf_bs_write_double
    - Media_FindDataRef
    - gf_isom_is_video_handler_type
    - gf_isom_box_new_parent
    - gf_bs_write_data
    - strncpy
    - gf_isom_get_track_box
    - gf_bs_del
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_new_generic_sample_description(GF_ISOFile *movie,
      u32 trackNumber, const char *URLname, const char *URNname, GF_GenericSampleDescription
      *udesc, u32 *outDescriptionIndex)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:4985,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:4988,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4991,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/isom_write.c:5001,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:5007,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:5011,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:5013,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:5016,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:5029,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:5034,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:5036,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:5039,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:5045,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:5050,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:5052,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:5055,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 79
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - udesc
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_GenericSampleDescription*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5061
      start: 4979
    functionDepth: 4
    functionLinenumber: 4979
    functionLinenumberEnd: 5061
    functionName: gf_isom_change_generic_sample_description
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_isom_box_del
    - memcpy
    - strcpy
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_change_generic_sample_description(GF_ISOFile *movie,
      u32 trackNumber, u32 StreamDescriptionIndex, GF_GenericSampleDescription *udesc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:5072,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:5074,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:5076,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:5078,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:5079,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - streamDescIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5081
      start: 5066
    functionDepth: 4
    functionLinenumber: 5066
    functionLinenumberEnd: 5081
    functionName: gf_isom_remove_sample_description
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_box_del
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_remove_sample_description(GF_ISOFile *movie, u32 trackNumber,
      u32 streamDescIndex)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:5093,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:5099,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:5101,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/isom_write.c:5105,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:5109,1
    - Dst: reftype_AddRefTrack
      Src: /src/gpac/src/isomedia/isom_write.c:5114,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - referenceType
    - ReferencedTrackID
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_ISOTrackID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5115
      start: 5085
    functionDepth: 5
    functionLinenumber: 5085
    functionLinenumberEnd: 5115
    functionName: gf_isom_set_track_reference
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 3
    functionsReached:
    - trak_on_child_box
    - reftype_AddRefTrack
    - gf_isom_box_new_parent
    - Track_FindRef
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_track_reference(GF_ISOFile *the_file, u32 trackNumber,
      u32 referenceType, GF_ISOTrackID ReferencedTrackID)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:5123,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:5129,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/isomedia/isom_write.c:5134,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/isom_write.c:5136,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:5143,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:5146,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:5147,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 26
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5151
      start: 5117
    functionDepth: 5
    functionLinenumber: 5117
    functionLinenumberEnd: 5151
    functionName: gf_isom_purge_track_reference
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - memmove
    - gf_list_count
    - gf_isom_get_track_by_id
    - gf_isom_get_track_box
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_purge_track_reference(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:5159,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:5163,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5167
      start: 5154
    functionDepth: 5
    functionLinenumber: 5154
    functionLinenumberEnd: 5167
    functionName: gf_isom_remove_track_references
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_remove_track_references(GF_ISOFile *the_file, u32
      trackNumber)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:5175,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:5179,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:5181,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:5185,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:5186,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - isom_file
    - trackNumber
    - ref_type
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5191
      start: 5169
    functionDepth: 5
    functionLinenumber: 5169
    functionLinenumberEnd: 5191
    functionName: gf_isom_remove_track_reference
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_del_parent
    - gf_isom_get_track_box
    - gf_list_enum
    - gf_list_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_remove_track_reference(GF_ISOFile *isom_file, u32
      trackNumber, u32 ref_type)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:5202,1
    - Dst: gf_isom_get_track_from_id
      Src: /src/gpac/src/isomedia/isom_write.c:5204,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:5209,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:5212,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:5228,1
    - Dst: update_next_track_id
      Src: /src/gpac/src/isomedia/isom_write.c:5233,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 33
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - trackID
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_ISOTrackID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5235
      start: 5194
    functionDepth: 2
    functionLinenumber: 5194
    functionLinenumberEnd: 5235
    functionName: gf_isom_set_track_id
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_enum
    - gf_isom_get_track_from_id
    - update_next_track_id
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_track_id(GF_ISOFile *movie, u32 trackNumber,
      GF_ISOTrackID trackID)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:5245,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:5252,1
    - Dst: gf_isom_get_track_from_original_id
      Src: /src/gpac/src/isomedia/isom_write.c:5254,1
    - Dst: gf_isom_get_track_from_id
      Src: /src/gpac/src/isomedia/isom_write.c:5258,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5266
      start: 5238
    functionDepth: 1
    functionLinenumber: 5238
    functionLinenumberEnd: 5266
    functionName: gf_isom_rewrite_track_dependencies
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_enum
    - gf_isom_get_track_from_original_id
    - gf_isom_get_track_from_id
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_rewrite_track_dependencies(GF_ISOFile *movie, u32
      trackNumber)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:5280,1
    - Dst: unpack_track
      Src: /src/gpac/src/isomedia/isom_write.c:5283,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - sample_number
    - newSampleDescIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5289
      start: 5277
    functionDepth: 2
    functionLinenumber: 5277
    functionLinenumberEnd: 5289
    functionName: gf_isom_change_sample_desc_index
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - unpack_track
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_change_sample_desc_index(GF_ISOFile *the_file, u32
      trackNumber, u32 sample_number, u32 newSampleDescIndex)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:5295,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - sample_number
    - offset
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5302
      start: 5292
    functionDepth: 0
    functionLinenumber: 5292
    functionLinenumberEnd: 5302
    functionName: gf_isom_modify_cts_offset
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_modify_cts_offset(GF_ISOFile *the_file, u32 trackNumber,
      u32 sample_number, u32 offset)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:5309,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - offset_shift
    argTypes:
    - GF_ISOFile*
    - u32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5328
      start: 5305
    functionDepth: 0
    functionLinenumber: 5305
    functionLinenumberEnd: 5328
    functionName: gf_isom_shift_cts_offset
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_shift_cts_offset(GF_ISOFile *the_file, u32 trackNumber,
      s32 offset_shift)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:5334,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:5340,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5343
      start: 5331
    functionDepth: 5
    functionLinenumber: 5331
    functionLinenumberEnd: 5343
    functionName: gf_isom_remove_cts_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_remove_cts_info(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:5354,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:5360,1
    - Dst: stbl_unpackCTS
      Src: /src/gpac/src/isomedia/isom_write.c:5363,1
    - Dst: stbl_repackCTS
      Src: /src/gpac/src/isomedia/isom_write.c:5366,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:5369,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - unpack
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5370
      start: 5346
    functionDepth: 6
    functionLinenumber: 5346
    functionLinenumberEnd: 5370
    functionName: gf_isom_set_cts_packing
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - stbl_unpackCTS
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - SetTrackDuration
    - stbl_repackCTS
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_cts_packing(GF_ISOFile *the_file, u32 trackNumber,
      Bool unpack)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:5375,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:5377,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - matrix
    argTypes:
    - GF_ISOFile*
    - u32
    - s32[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5379
      start: 5372
    functionDepth: 0
    functionLinenumber: 5372
    functionLinenumberEnd: 5379
    functionName: gf_isom_set_track_matrix
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - memcpy
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_track_matrix(GF_ISOFile *the_file, u32 trackNumber,
      s32 matrix[9])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:5384,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 7
    argNames:
    - the_file
    - trackNumber
    - width
    - height
    - translation_x
    - translation_y
    - layer
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - s32
    - s32
    - s16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5392
      start: 5381
    functionDepth: 0
    functionLinenumber: 5381
    functionLinenumberEnd: 5392
    functionName: gf_isom_set_track_layout_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_track_layout_info(GF_ISOFile *the_file, u32 trackNumber,
      u32 width, u32 height, s32 translation_x, s32 translation_y, s16 layer)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:5403,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:5433,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:5436,1
    - Dst: RESCALE_TSVAL
      Src: /src/gpac/src/isomedia/isom_write.c:5471,1
    - Dst: RESCALE_TSVAL
      Src: /src/gpac/src/isomedia/isom_write.c:5472,1
    - Dst: RESCALE_TSVAL
      Src: /src/gpac/src/isomedia/isom_write.c:5473,1
    - Dst: RESCALE_TSVAL
      Src: /src/gpac/src/isomedia/isom_write.c:5474,1
    - Dst: RESCALE_TSVAL
      Src: /src/gpac/src/isomedia/isom_write.c:5475,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:5480,1
    - Dst: RESCALE_TSVAL
      Src: /src/gpac/src/isomedia/isom_write.c:5481,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:5487,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:5499,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:5506,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:5512,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:5517,1
    - Dst: stbl_GetSampleCTS
      Src: /src/gpac/src/isomedia/isom_write.c:5528,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/isom_write.c:5538,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_write.c:5539,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/isom_write.c:5563,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/isom_write.c:5569,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_write.c:5570,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/isom_write.c:5585,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:5587,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:5589,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:5599,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 155
    argCount: 5
    argNames:
    - the_file
    - trackNumber
    - newTS
    - new_tsinc
    - force_rescale_type
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5600
      start: 5394
    functionDepth: 6
    functionLinenumber: 5394
    functionLinenumberEnd: 5600
    functionName: gf_isom_set_media_timescale
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 2
    functionsReached:
    - gf_free
    - SetTrackDuration
    - stbl_GetSampleCTS
    - RESCALE_TSVAL
    - memset
    - gf_isom_get_track_box
    - gf_list_enum
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_media_timescale(GF_ISOFile *the_file, u32 trackNumber,
      u32 newTS, u32 new_tsinc, u32 force_rescale_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _tsval
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5469
      start: 5464
    functionDepth: 0
    functionLinenumber: 5464
    functionLinenumberEnd: 5469
    functionName: RESCALE_TSVAL
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RESCALE_TSVAL(_tsval)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:5616,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:5617,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:5618,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_write.c:5619,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:5620,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:5622,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:5623,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:5624,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_write.c:5625,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:5626,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_write.c:5630,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:5632,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:5633,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - GF_Box*
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5635
      start: 5602
    functionDepth: 3
    functionLinenumber: 5602
    functionLinenumberEnd: 5635
    functionName: gf_isom_box_equal
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_isom_box_size
    - memcmp
    - gf_bs_new
    - gf_bs_get_content
    - gf_isom_box_write
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_box_equal(GF_Box *a, GF_Box *b)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5645
      start: 5637
    functionDepth: 0
    functionLinenumber: 5637
    functionLinenumberEnd: 5645
    functionName: base_sample_entry_type
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 base_sample_entry_type(u32 type)
  - BBCount: 121
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:5657,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:5659,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:5663,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:5664,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:5671,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:5672,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:5674,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:5675,1
    - Dst: base_sample_entry_type
      Src: /src/gpac/src/isomedia/isom_write.c:5679,1
    - Dst: base_sample_entry_type
      Src: /src/gpac/src/isomedia/isom_write.c:5680,1
    - Dst: Media_GetESD
      Src: /src/gpac/src/isomedia/isom_write.c:5692,1
    - Dst: Media_GetESD
      Src: /src/gpac/src/isomedia/isom_write.c:5693,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_write.c:5703,1
    - Dst: gf_isom_box_equal
      Src: /src/gpac/src/isomedia/isom_write.c:5769,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_write.c:5785,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:5798,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:5809,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:5827,1
    - Dst: gf_isom_registry_disable
      Src: /src/gpac/src/isomedia/isom_write.c:5893,1
    - Dst: gf_isom_box_equal
      Src: /src/gpac/src/isomedia/isom_write.c:5894,1
    - Dst: gf_isom_registry_disable
      Src: /src/gpac/src/isomedia/isom_write.c:5896,1
    CyclomaticComplexity: 89
    EdgeCount: 89
    ICount: 214
    argCount: 6
    argNames:
    - f1
    - tk1
    - sdesc_index1
    - f2
    - tk2
    - sdesc_index2
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5899
      start: 5647
    functionDepth: 4
    functionLinenumber: 5647
    functionLinenumberEnd: 5899
    functionName: gf_isom_is_same_sample_description
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_isom_box_equal
    - memcmp
    - Media_GetESD
    - gf_list_count
    - strcmp
    - base_sample_entry_type
    - gf_isom_registry_disable
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_is_same_sample_description(GF_ISOFile *f1, u32 tk1,
      u32 sdesc_index1, GF_ISOFile *f2, u32 tk2, u32 sdesc_index2)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:5911,1
    - Dst: gf_isom_get_media_data_size
      Src: /src/gpac/src/isomedia/isom_write.c:5913,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:5921,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:5922,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5927
      start: 5901
    functionDepth: 3
    functionLinenumber: 5901
    functionLinenumberEnd: 5927
    functionName: gf_isom_estimate_size
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_enum
    - gf_isom_get_media_data_size
    - gf_isom_box_size
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_estimate_size(GF_ISOFile *movie)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:5938,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:5943,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5947
      start: 5932
    functionDepth: 5
    functionLinenumber: 5932
    functionLinenumberEnd: 5947
    functionName: gf_isom_remove_sync_shadows
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_remove_sync_shadows(GF_ISOFile *movie, u32 trackNumber)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:5960,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:5965,1
    - Dst: stbl_GetSampleRAP
      Src: /src/gpac/src/isomedia/isom_write.c:5973,1
    - Dst: stbl_GetSampleRAP
      Src: /src/gpac/src/isomedia/isom_write.c:5977,1
    - Dst: stbl_SetSyncShadow
      Src: /src/gpac/src/isomedia/isom_write.c:5981,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 25
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - sampleNumber
    - syncSample
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5982
      start: 5952
    functionDepth: 5
    functionLinenumber: 5952
    functionLinenumberEnd: 5982
    functionName: gf_isom_set_sync_shadow
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - stbl_GetSampleRAP
    - stbl_SetSyncShadow
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_set_sync_shadow(GF_ISOFile *movie, u32 trackNumber,
      u32 sampleNumber, u32 syncSample)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:5992,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - GroupID
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5997
      start: 5986
    functionDepth: 0
    functionLinenumber: 5986
    functionLinenumberEnd: 5997
    functionName: gf_isom_set_track_interleaving_group
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_track_interleaving_group(GF_ISOFile *movie, u32
      trackNumber, u32 GroupID)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:6008,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - Priority
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6013
      start: 6002
    functionDepth: 0
    functionLinenumber: 6002
    functionLinenumberEnd: 6013
    functionName: gf_isom_set_track_priority_in_group
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_track_priority_in_group(GF_ISOFile *movie, u32
      trackNumber, u32 Priority)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:6022,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - maxChunkSize
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6027
      start: 6016
    functionDepth: 0
    functionLinenumber: 6016
    functionLinenumberEnd: 6027
    functionName: gf_isom_hint_max_chunk_size
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_hint_max_chunk_size(GF_ISOFile *movie, u32 trackNumber,
      u32 maxChunkSize)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:6037,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - maxChunkDur
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6042
      start: 6031
    functionDepth: 0
    functionLinenumber: 6031
    functionLinenumberEnd: 6042
    functionName: gf_isom_hint_max_chunk_duration
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_hint_max_chunk_duration(GF_ISOFile *movie, u32 trackNumber,
      u32 maxChunkDur)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:6054,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/isom_write.c:6057,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:6085,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/isom_write.c:6090,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 36
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - StreamDescriptionIndex
    - slConfig
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_SLConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6091
      start: 6045
    functionDepth: 2
    functionLinenumber: 6045
    functionLinenumberEnd: 6091
    functionName: gf_isom_set_extraction_slc
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_copy
    - gf_isom_get_track_box
    - Media_GetSampleDesc
    - gf_odf_desc_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_extraction_slc(GF_ISOFile *the_file, u32 trackNumber,
      u32 StreamDescriptionIndex, const GF_SLConfig *slConfig)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:6101,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/isom_write.c:6104,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/isom_write.c:6129,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - StreamDescriptionIndex
    - slConfig
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_SLConfig**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6130
      start: 6094
    functionDepth: 2
    functionLinenumber: 6094
    functionLinenumberEnd: 6130
    functionName: gf_isom_get_extraction_slc
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - Media_GetSampleDesc
    - gf_odf_desc_copy
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_get_extraction_slc(GF_ISOFile *the_file, u32 trackNumber,
      u32 StreamDescriptionIndex, GF_SLConfig **slConfig)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:6135,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6138
      start: 6132
    functionDepth: 0
    functionLinenumber: 6132
    functionLinenumberEnd: 6138
    functionName: gf_isom_get_track_group
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_get_track_group(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:6143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6146
      start: 6140
    functionDepth: 0
    functionLinenumber: 6140
    functionLinenumberEnd: 6146
    functionName: gf_isom_get_track_priority_in_group
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_get_track_priority_in_group(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/isomedia/isom_write.c:6158,1
    - Dst: gf_isom_set_interleave_time
      Src: /src/gpac/src/isomedia/isom_write.c:6161,1
    - Dst: gf_isom_get_mode
      Src: /src/gpac/src/isomedia/isom_write.c:6163,1
    - Dst: gf_isom_set_storage_mode
      Src: /src/gpac/src/isomedia/isom_write.c:6164,1
    - Dst: gf_isom_set_interleave_time
      Src: /src/gpac/src/isomedia/isom_write.c:6166,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - file
    - fTimeInSec
    argTypes:
    - GF_ISOFile*
    - GF_Fraction*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6167
      start: 6150
    functionDepth: 2
    functionLinenumber: 6150
    functionLinenumberEnd: 6167
    functionName: gf_isom_make_interleave_ex
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_mode
    - gf_isom_get_timescale
    - gf_isom_set_interleave_time
    - gf_isom_set_storage_mode
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_make_interleave_ex(GF_ISOFile *file, GF_Fraction
      *fTimeInSec)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_make_interleave_ex
      Src: /src/gpac/src/isomedia/isom_write.c:6175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - file
    - TimeInSec
    argTypes:
    - GF_ISOFile*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6177
      start: 6169
    functionDepth: 3
    functionLinenumber: 6169
    functionLinenumberEnd: 6177
    functionName: gf_isom_make_interleave
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_make_interleave_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_make_interleave(GF_ISOFile *file, Double TimeInSec)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:6182,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6184,1
    - Dst: strnicmp
      Src: /src/gpac/src/isomedia/isom_write.c:6189,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/isom_write.c:6191,1
    - Dst: gf_fsize
      Src: /src/gpac/src/isomedia/isom_write.c:6194,1
    - Dst: gf_fread
      Src: /src/gpac/src/isomedia/isom_write.c:6195,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/isom_write.c:6196,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/isom_write.c:6202,1
    - Dst: gf_fseek
      Src: /src/gpac/src/isomedia/isom_write.c:6205,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:6206,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/isom_write.c:6208,1
    - Dst: gf_fread
      Src: /src/gpac/src/isomedia/isom_write.c:6211,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/isom_write.c:6213,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/isom_write.c:6217,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_write.c:6219,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:6260,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 75
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - nameUTF8
    argTypes:
    - GF_ISOFile*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6263
      start: 6178
    functionDepth: 1
    functionLinenumber: 6178
    functionLinenumberEnd: 6263
    functionName: gf_isom_set_handler_name
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_strdup
    - gf_fseek
    - gf_fread
    - strcpy
    - strlen
    - strnicmp
    - gf_fopen
    - gf_fsize
    - gf_isom_get_track_box
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_handler_name(GF_ISOFile *the_file, u32 trackNumber,
      const char *nameUTF8)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_remove_root_od
      Src: /src/gpac/src/isomedia/isom_write.c:6274,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:6277,1
    - Dst: AddMovieIOD
      Src: /src/gpac/src/isomedia/isom_write.c:6279,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:6281,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/isom_write.c:6283,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:6298,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:6299,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:6300,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 2
    argNames:
    - input
    - output
    argTypes:
    - GF_ISOFile*
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6303
      start: 6267
    functionDepth: 7
    functionLinenumber: 6267
    functionLinenumberEnd: 6303
    functionName: gf_isom_clone_root_od
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - gf_isom_remove_root_od
    - gf_isom_insert_moov
    - gf_odf_desc_copy
    - AddMovieIOD
    - gf_list_enum
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_clone_root_od(GF_ISOFile *input, GF_ISOFile *output)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:6309,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - new_type
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6313
      start: 6306
    functionDepth: 0
    functionLinenumber: 6306
    functionLinenumberEnd: 6313
    functionName: gf_isom_set_media_type
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_media_type(GF_ISOFile *movie, u32 trackNumber,
      u32 new_type)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:6319,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:6322,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - sampleDescriptionIndex
    - new_type
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6334
      start: 6315
    functionDepth: 1
    functionLinenumber: 6315
    functionLinenumberEnd: 6334
    functionName: gf_isom_set_media_subtype
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_media_subtype(GF_ISOFile *movie, u32 trackNumber,
      u32 sampleDescriptionIndex, u32 new_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - mov
    - set_on
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6343
      start: 6338
    functionDepth: 0
    functionLinenumber: 6338
    functionLinenumberEnd: 6343
    functionName: gf_isom_set_JPEG2000
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_set_JPEG2000(GF_ISOFile *mov, Bool set_on)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:6355,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6363,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:6365,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_write.c:6367,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:6368,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:6371,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - UUID
    argTypes:
    - GF_ISOFile*
    - u32
    - bin128
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6374
      start: 6346
    functionDepth: 4
    functionLinenumber: 6346
    functionLinenumberEnd: 6374
    functionName: gf_isom_remove_uuid
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - memcmp
    - gf_isom_box_del
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_remove_uuid(GF_ISOFile *movie, u32 trackNumber, bin128
      UUID)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:6389,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:6391,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:6395,1
    - Dst: gf_isom_solve_uuid_box
      Src: /src/gpac/src/isomedia/isom_write.c:6398,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:6400,1
    - Dst: gf_isom_solve_uuid_box
      Src: /src/gpac/src/isomedia/isom_write.c:6403,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:6404,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:6407,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:6409,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:6411,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 39
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - UUID
    - data
    - data_size
    argTypes:
    - GF_ISOFile*
    - u32
    - bin128
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6413
      start: 6376
    functionDepth: 4
    functionLinenumber: 6376
    functionLinenumberEnd: 6413
    functionName: gf_isom_add_uuid
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - memcpy
    - gf_isom_solve_uuid_box
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_get_track_box
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_add_uuid(GF_ISOFile *movie, u32 trackNumber, bin128
      UUID, const u8 *data, u32 data_size)
  - BBCount: 68
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_write.c:6431,1
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:6433,1
    - Dst: gf_itags_find_by_itag
      Src: /src/gpac/src/isomedia/isom_write.c:6436,1
    - Dst: gf_itags_get_type
      Src: /src/gpac/src/isomedia/isom_write.c:6440,1
    - Dst: gf_isom_create_meta_extensions
      Src: /src/gpac/src/isomedia/isom_write.c:6442,1
    - Dst: GF_4CC_CSTR
      Src: /src/gpac/src/isomedia/isom_write.c:6444,1
    - Dst: gf_isom_locate_box
      Src: /src/gpac/src/isomedia/isom_write.c:6447,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6449,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6453,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6455,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6455,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6456,1
    - Dst: gf_id3_get_genre_tag
      Src: /src/gpac/src/isomedia/isom_write.c:6464,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_write.c:6473,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:6476,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:6478,1
    - Dst: strchr
      Src: /src/gpac/src/isomedia/isom_write.c:6481,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:6485,1
    - Dst: strchr
      Src: /src/gpac/src/isomedia/isom_write.c:6489,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:6493,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:6509,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:6512,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:6516,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6520,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6525,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6532,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6540,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6541,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6542,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6543,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:6549,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:6552,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6555,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6556,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6560,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:6562,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6563,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6564,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6573,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6577,1
    - Dst: sscanf
      Src: /src/gpac/src/isomedia/isom_write.c:6586,1
    - Dst: sscanf
      Src: /src/gpac/src/isomedia/isom_write.c:6588,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_write.c:6596,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:6611,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:6611,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:6611,1
    - Dst: atoi
      Src: /src/gpac/src/isomedia/isom_write.c:6622,1
    - Dst: atoi
      Src: /src/gpac/src/isomedia/isom_write.c:6630,1
    - Dst: atoi
      Src: /src/gpac/src/isomedia/isom_write.c:6639,1
    - Dst: sscanf
      Src: /src/gpac/src/isomedia/isom_write.c:6650,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:6688,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:6690,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6692,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6693,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:6696,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:6698,1
    CyclomaticComplexity: 105
    EdgeCount: 105
    ICount: 260
    argCount: 9
    argNames:
    - mov
    - tag
    - data
    - data_len
    - int_val
    - int_val2
    - in_cust_name
    - in_cust_mean
    - locale
    argTypes:
    - GF_ISOFile*
    - GF_ISOiTunesTag
    - u8*
    - u32
    - u64
    - u32
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6699
      start: 6416
    functionDepth: 6
    functionLinenumber: 6416
    functionLinenumberEnd: 6699
    functionName: gf_isom_apple_set_tag_ex
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_4CC_CSTR
    - gf_itags_get_type
    - gf_list_count
    - memset
    - atoi
    - gf_isom_can_access_movie
    - strchr
    - gf_strdup
    - gf_list_new
    - gf_isom_locate_box
    - gf_itags_find_by_itag
    - gf_isom_box_del
    - memcpy
    - gf_list_add
    - gf_isom_box_new
    - gf_id3_get_genre_tag
    - gf_isom_box_del_parent
    - sscanf
    - gf_isom_box_new_parent
    - gf_list_enum
    - gf_malloc
    - strcmp
    - GF_4CC
    - gf_isom_create_meta_extensions
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_apple_set_tag_ex(GF_ISOFile *mov, GF_ISOiTunesTag
      tag, const u8 *data, u32 data_len, u64 int_val, u32 int_val2, const char *in_cust_name,
      const char *in_cust_mean, u32 locale)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_apple_set_tag_ex
      Src: /src/gpac/src/isomedia/isom_write.c:6704,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - mov
    - tag
    - data
    - data_len
    - int_val
    - int_val2
    argTypes:
    - GF_ISOFile*
    - GF_ISOiTunesTag
    - u8*
    - u32
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6705
      start: 6701
    functionDepth: 7
    functionLinenumber: 6701
    functionLinenumberEnd: 6705
    functionName: gf_isom_apple_set_tag
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_apple_set_tag_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_apple_set_tag(GF_ISOFile *mov, GF_ISOiTunesTag tag,
      const u8 *data, u32 data_len, u64 int_val, u32 int_val2)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:6717,1
    - Dst: gf_isom_create_meta_extensions
      Src: /src/gpac/src/isomedia/isom_write.c:6720,1
    - Dst: gf_isom_create_meta_extensions
      Src: /src/gpac/src/isomedia/isom_write.c:6722,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6725,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:6727,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:6728,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:6736,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6737,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6738,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6739,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6742,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_write.c:6749,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:6750,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:6753,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_write.c:6756,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:6757,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_write.c:6758,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/isomedia/isom_write.c:6760,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 49
    argCount: 3
    argNames:
    - mov
    - name
    - value
    argTypes:
    - GF_ISOFile*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6769
      start: 6709
    functionDepth: 6
    functionLinenumber: 6709
    functionLinenumberEnd: 6769
    functionName: gf_isom_wma_set_tag
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_list_get
    - gf_strdup
    - GF_SAFEALLOC
    - gf_utf8_mbstowcs
    - gf_list_count
    - memset
    - strcmp
    - gf_list_add
    - gf_isom_can_access_movie
    - gf_isom_create_meta_extensions
    - strlen
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_wma_set_tag(GF_ISOFile *mov, char *name, char *value)
  - BBCount: 62
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:6781,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_write.c:6783,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:6786,1
    - Dst: gf_isom_create_meta_extensions
      Src: /src/gpac/src/isomedia/isom_write.c:6789,1
    - Dst: gf_isom_locate_box
      Src: /src/gpac/src/isomedia/isom_write.c:6792,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6794,1
    - Dst: gf_isom_locate_box
      Src: /src/gpac/src/isomedia/isom_write.c:6797,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6799,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6803,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6805,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6806,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:6807,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6809,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6813,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6814,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6816,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6816,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6817,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_write.c:6825,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:6827,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:6828,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_write.c:6834,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:6836,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:6838,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/isom_write.c:6840,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6842,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:6843,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:6849,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6850,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6851,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6852,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:6853,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6856,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:6867,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:6869,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:6870,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:6873,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6875,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:6877,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:6886,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_write.c:6892,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_write.c:6892,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/isom_write.c:6896,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/isom_write.c:6897,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/isom_write.c:6898,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/isom_write.c:6900,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/isom_write.c:6907,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/isomedia/isom_write.c:6910,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/isomedia/isom_write.c:6913,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/isom_write.c:6916,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/isom_write.c:6919,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/isom_write.c:6922,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/isomedia/isom_write.c:6925,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/isomedia/isom_write.c:6929,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/isomedia/isom_write.c:6930,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/isomedia/isom_write.c:6933,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/isomedia/isom_write.c:6934,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/isomedia/isom_write.c:6935,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/isomedia/isom_write.c:6936,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/isom_write.c:6940,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/isom_write.c:6943,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/isom_write.c:6946,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/isomedia/isom_write.c:6949,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/isomedia/isom_write.c:6953,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_write.c:6965,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/isom_write.c:6969,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6970,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_write.c:6972,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:6975,1
    CyclomaticComplexity: 65
    EdgeCount: 65
    ICount: 194
    argCount: 2
    argNames:
    - movie
    - key
    argTypes:
    - GF_ISOFile*
    - GF_QT_UDTAKey*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6977
      start: 6771
    functionDepth: 6
    functionLinenumber: 6771
    functionLinenumberEnd: 6977
    functionName: gf_isom_set_qt_key
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_list_find
    - gf_isom_set_last_error
    - gf_list_count
    - gf_bs_write_long_int
    - gf_isom_can_access_movie
    - gf_isom_box_find_child
    - gf_bs_write_float
    - gf_list_get
    - gf_strdup
    - gf_isom_locate_box
    - gf_list_new
    - gf_isom_box_del
    - gf_bs_get_content
    - gf_isom_insert_moov
    - gf_list_add
    - gf_isom_box_new
    - gf_bs_write_double
    - gf_isom_box_del_parent
    - gf_bs_write_int
    - gf_isom_box_new_parent
    - gf_bs_write_data
    - gf_list_del_item
    - strlen
    - ABS
    - gf_bs_del
    - strcmp
    - gf_isom_create_meta_extensions
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_qt_key(GF_ISOFile *movie, GF_QT_UDTAKey *key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:6983,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - groupId
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6987
      start: 6980
    functionDepth: 0
    functionLinenumber: 6980
    functionLinenumberEnd: 6987
    functionName: gf_isom_set_alternate_group_id
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_alternate_group_id(GF_ISOFile *movie, u32 trackNumber,
      u32 groupId)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7000,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7005,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:7008,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:7019,1
    - Dst: gf_isom_get_next_alternate_group_id
      Src: /src/gpac/src/isomedia/isom_write.c:7022,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/isomedia/isom_write.c:7027,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7029,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:7033,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:7035,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:7037,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:7062,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:7062,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:7066,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:7070,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:7072,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:7078,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/isom_write.c:7080,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:7086,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:7087,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:7089,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 83
    argCount: 7
    argNames:
    - movie
    - trackNumber
    - trackRefGroup
    - is_switch_group
    - switchGroupID
    - criteriaList
    - criteriaListCount
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - Bool
    - u32*
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7092
      start: 6990
    functionDepth: 5
    functionLinenumber: 6990
    functionLinenumberEnd: 7092
    functionName: gf_isom_set_track_switch_parameter
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_free
    - udta_on_child_box_ex
    - gf_list_get
    - trak_on_child_box
    - GF_LOG
    - memcpy
    - gf_isom_get_track_count
    - gf_list_count
    - gf_isom_box_new_parent
    - udta_getEntry
    - gf_isom_box_new
    - gf_isom_get_track_box
    - gf_isom_get_next_alternate_group_id
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_track_switch_parameter(GF_ISOFile *movie, u32
      trackNumber, u32 trackRefGroup, Bool is_switch_group, u32 *switchGroupID, u32
      *criteriaList, u32 criteriaListCount)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:7098,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:7100,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_write.c:7101,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:7102,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - trak
    argTypes:
    - GF_TrackBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7105
      start: 7094
    functionDepth: 3
    functionLinenumber: 7094
    functionLinenumberEnd: 7105
    functionName: reset_tsel_box
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_box_array_del
    - gf_list_del_item
    - udta_getEntry
    linkageType: ''
    returnType: void
    signature: void reset_tsel_box(GF_TrackBox *trak)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7113,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/isomedia/isom_write.c:7120,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7122,1
    - Dst: reset_tsel_box
      Src: /src/gpac/src/isomedia/isom_write.c:7123,1
    - Dst: reset_tsel_box
      Src: /src/gpac/src/isomedia/isom_write.c:7127,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - reset_all_group
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7130
      start: 7107
    functionDepth: 4
    functionLinenumber: 7107
    functionLinenumberEnd: 7130
    functionName: gf_isom_reset_track_switch_parameter
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - reset_tsel_box
    - gf_isom_get_track_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_reset_track_switch_parameter(GF_ISOFile *movie, u32
      trackNumber, Bool reset_all_group)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/isomedia/isom_write.c:7137,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7139,1
    - Dst: reset_tsel_box
      Src: /src/gpac/src/isomedia/isom_write.c:7140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7144
      start: 7133
    functionDepth: 4
    functionLinenumber: 7133
    functionLinenumberEnd: 7144
    functionName: gf_isom_reset_switch_parameters
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - reset_tsel_box
    - gf_isom_get_track_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_reset_switch_parameters(GF_ISOFile *movie)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:7154,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7157,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:7162,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:7166,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:7168,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:7173,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:7175,1
    - Dst: gf_isom_add_subsample_info
      Src: /src/gpac/src/isomedia/isom_write.c:7179,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 8
    argNames:
    - movie
    - track
    - sampleNumber
    - flags
    - subSampleSize
    - priority
    - reserved
    - discardable
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - u8
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7180
      start: 7147
    functionDepth: 5
    functionLinenumber: 7147
    functionLinenumberEnd: 7180
    functionName: gf_isom_add_subsample
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_list_get
    - gf_isom_add_subsample_info
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_add
    - gf_isom_can_access_movie
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_add_subsample(GF_ISOFile *movie, u32 track, u32 sampleNumber,
      u32 flags, u32 subSampleSize, u8 priority, u32 reserved, Bool discardable)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:7190,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7193,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:7197,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:7201,1
    - Dst: gf_isom_remove_meta_item
      Src: /src/gpac/src/isomedia/isom_write.c:7203,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:7208,1
    - Dst: gf_isom_set_meta_type
      Src: /src/gpac/src/isomedia/isom_write.c:7214,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/isomedia/isom_write.c:7216,1
    - Dst: gf_isom_add_meta_item_memory
      Src: /src/gpac/src/isomedia/isom_write.c:7217,1
    - Dst: gf_isom_get_meta_item_count
      Src: /src/gpac/src/isomedia/isom_write.c:7219,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 33
    argCount: 7
    argNames:
    - movie
    - track
    - sampleDescriptionIndex
    - rvc_predefined
    - mime
    - data
    - size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u16
    - char*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7222
      start: 7183
    functionDepth: 8
    functionLinenumber: 7183
    functionLinenumberEnd: 7222
    functionName: gf_isom_set_rvc_config
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_add_meta_item_memory
    - gf_isom_modify_alternate_brand
    - gf_isom_box_new_parent
    - gf_isom_set_meta_type
    - gf_isom_get_track_box
    - gf_isom_get_meta_item_count
    - gf_isom_can_access_movie
    - gf_isom_remove_meta_item
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_rvc_config(GF_ISOFile *movie, u32 track, u32
      sampleDescriptionIndex, u16 rvc_predefined, char *mime, u8 *data, u32 size)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/isom_write.c:7231,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:7233,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:7235,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:7240,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_write.c:7246,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/isom_write.c:7247,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:7248,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:7268,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/isom_write.c:7310,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/isom_write.c:7318,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/isom_write.c:7325,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 93
    argCount: 7
    argNames:
    - sampleGroups
    - sample_number
    - sgdesc
    - grouping_type_parameter
    - sampleGroupDescriptionIndex
    - parent
    - stbl
    argTypes:
    - GF_List*
    - u32
    - GF_SampleGroupDescriptionBox*
    - u32
    - u32
    - GF_List*
    - GF_SampleTableBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7334
      start: 7226
    functionDepth: 4
    functionLinenumber: 7226
    functionLinenumberEnd: 7334
    functionName: gf_isom_add_sample_group_entry
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_list_insert
    - gf_assert
    - gf_list_get
    - gf_list_count
    - gf_list_add
    - gf_isom_box_new
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_add_sample_group_entry(GF_List *sampleGroups, u32 sample_number,
      GF_SampleGroupDescriptionBox *sgdesc, u32 grouping_type_parameter, u32 sampleGroupDescriptionIndex,
      GF_List *parent, GF_SampleTableBox *stbl)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7462,1
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/isom_write.c:7472,1
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:7478,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7481,1
    - Dst: gf_isom_set_sample_group_info_ex
      Src: /src/gpac/src/isomedia/isom_write.c:7486,1
    - Dst: gf_isom_set_sample_group_info_ex
      Src: /src/gpac/src/isomedia/isom_write.c:7488,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 8
    argNames:
    - movie
    - track
    - trafID
    - sample_number
    - grouping_type
    - grouping_type_parameter
    - udta
    - (*sg_create_entry)(void *udta)
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - u32
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7491
      start: 7454
    functionDepth: 2
    functionLinenumber: 7454
    functionLinenumberEnd: 7491
    functionName: gf_isom_set_sample_group_info_internal
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_set_sample_group_info_ex
    - gf_isom_get_traf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_set_sample_group_info_internal(GF_ISOFile *movie, u32
      track, u32 trafID, u32 sample_number, u32 grouping_type, u32 grouping_type_parameter,
      void *udta, void *(*sg_create_entry)(void *udta), Bool (*sg_compare_entry)(void
      *udta, void *entry))
  - BBCount: 47
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7512,1
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/isom_write.c:7522,1
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:7528,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7532,1
    - Dst: get_sgdp
      Src: /src/gpac/src/isomedia/isom_write.c:7537,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:7540,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:7547,1
    - Dst: sgpd_parse_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7549,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:7550,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:7558,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:7559,1
    - Dst: gf_isom_is_identical_sgpd
      Src: /src/gpac/src/isomedia/isom_write.c:7560,1
    - Dst: sgpd_del_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7562,1
    - Dst: get_sgdp
      Src: /src/gpac/src/isomedia/isom_write.c:7573,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:7578,1
    - Dst: sgpd_del_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7580,1
    - Dst: gf_isom_oinf_new_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7586,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:7587,1
    - Dst: gf_isom_oinf_read_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7588,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:7589,1
    - Dst: gf_isom_oinf_del_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7591,1
    - Dst: get_sgdp
      Src: /src/gpac/src/isomedia/isom_write.c:7596,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:7599,1
    - Dst: gf_isom_linf_new_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7603,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:7604,1
    - Dst: gf_isom_linf_read_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7605,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:7606,1
    - Dst: gf_isom_linf_del_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7608,1
    - Dst: get_sgdp
      Src: /src/gpac/src/isomedia/isom_write.c:7613,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:7617,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:7621,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:7623,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_write.c:7624,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_write.c:7631,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:7633,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:7635,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:7639,1
    - Dst: get_sgdp
      Src: /src/gpac/src/isomedia/isom_write.c:7642,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:7646,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:7648,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:7649,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/isom_write.c:7658,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/isom_write.c:7664,1
    CyclomaticComplexity: 59
    EdgeCount: 59
    ICount: 147
    argCount: 11
    argNames:
    - movie
    - track
    - grouping_type
    - data
    - data_size
    - sgpd_flags
    - sampleGroupDescriptionIndex
    - is_traf_sgpd
    - check_access
    - use_default
    - out_sgdesc
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - void*
    - u32
    - u32
    - u32*
    - Bool*
    - Bool
    - Bool*
    - GF_SampleGroupDescriptionBox**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7672
      start: 7495
    functionDepth: 4
    functionLinenumber: 7495
    functionLinenumberEnd: 7672
    functionName: gf_isom_add_sample_group_info_internal
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_linf_new_entry
    - gf_free
    - memcmp
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_list_find
    - gf_list_count
    - gf_isom_oinf_new_entry
    - sgpd_parse_entry
    - gf_isom_linf_del_entry
    - gf_isom_can_access_movie
    - sgpd_del_entry
    - gf_isom_linf_read_entry
    - gf_list_get
    - memcpy
    - gf_isom_is_identical_sgpd
    - get_sgdp
    - gf_isom_oinf_read_entry
    - gf_list_add
    - gf_isom_get_traf
    - gf_isom_get_track_box
    - gf_malloc
    - gf_isom_oinf_del_entry
    - gf_bs_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_add_sample_group_info_internal(GF_ISOFile *movie, u32
      track, u32 grouping_type, void *data, u32 data_size, u32 sgpd_flags, u32 *sampleGroupDescriptionIndex,
      Bool *is_traf_sgpd, Bool check_access, Bool *use_default, GF_SampleGroupDescriptionBox
      **out_sgdesc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_add_sample_group_info_internal
      Src: /src/gpac/src/isomedia/isom_write.c:7676,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - movie
    - track
    - grouping_type
    - data
    - data_size
    - is_default
    - sampleGroupDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - void*
    - u32
    - Bool
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7677
      start: 7673
    functionDepth: 5
    functionLinenumber: 7673
    functionLinenumberEnd: 7677
    functionName: gf_isom_add_sample_group_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_add_sample_group_info_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_add_sample_group_info(GF_ISOFile *movie, u32 track,
      u32 grouping_type, void *data, u32 data_size, Bool is_default, u32 *sampleGroupDescriptionIndex)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_add_sample_group_info_internal
      Src: /src/gpac/src/isomedia/isom_write.c:7687,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7697,1
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/isom_write.c:7707,1
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:7714,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7718,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:7726,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:7736,1
    - Dst: gf_isom_add_sample_group_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7741,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 43
    argCount: 9
    argNames:
    - movie
    - track
    - sample_number
    - grouping_type
    - grouping_type_parameter
    - data
    - data_size
    - check_access
    - sgpd_flags
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - void*
    - u32
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7743
      start: 7679
    functionDepth: 5
    functionLinenumber: 7679
    functionLinenumberEnd: 7743
    functionName: gf_isom_set_sample_group_description_internal
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_isom_add_sample_group_info_internal
    - gf_isom_get_traf
    - gf_isom_can_access_movie
    - gf_isom_add_sample_group_entry
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_set_sample_group_description_internal(GF_ISOFile *movie,
      u32 track, u32 sample_number, u32 grouping_type, u32 grouping_type_parameter,
      void *data, u32 data_size, Bool check_access, u32 sgpd_flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_set_sample_group_description_internal
      Src: /src/gpac/src/isomedia/isom_write.c:7747,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - movie
    - track
    - sample_number
    - grouping_type
    - grouping_type_parameter
    - data
    - data_size
    - sgpd_flags
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - void*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7748
      start: 7745
    functionDepth: 6
    functionLinenumber: 7745
    functionLinenumberEnd: 7748
    functionName: gf_isom_set_sample_group_description
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_set_sample_group_description_internal
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_set_sample_group_description(GF_ISOFile *movie, u32
      track, u32 sample_number, u32 grouping_type, u32 grouping_type_parameter, void
      *data, u32 data_size, u32 sgpd_flags)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:7757,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7760,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:7764,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:7766,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:7768,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:7769,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:7776,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:7778,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:7780,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:7781,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 3
    argNames:
    - movie
    - track
    - grouping_type
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7788
      start: 7750
    functionDepth: 5
    functionLinenumber: 7750
    functionLinenumberEnd: 7788
    functionName: gf_isom_remove_sample_group
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_remove_sample_group(GF_ISOFile *movie, u32 track,
      u32 grouping_type)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:7796,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7799,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:7803,1
    - Dst: get_sgdp
      Src: /src/gpac/src/isomedia/isom_write.c:7806,1
    - Dst: gf_isom_add_sample_group_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7810,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 6
    argNames:
    - movie
    - track
    - sample_number
    - grouping_type
    - sampleGroupDescriptionIndex
    - grouping_type_parameter
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7811
      start: 7790
    functionDepth: 5
    functionLinenumber: 7790
    functionLinenumberEnd: 7811
    functionName: gf_isom_add_sample_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - get_sgdp
    - gf_isom_get_track_box
    - gf_isom_add_sample_group_entry
    - gf_isom_can_access_movie
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_add_sample_info(GF_ISOFile *movie, u32 track, u32
      sample_number, u32 grouping_type, u32 sampleGroupDescriptionIndex, u32 grouping_type_parameter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/isom_write.c:7818,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_write.c:7819,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - udta
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7824
      start: 7814
    functionDepth: 1
    functionLinenumber: 7814
    functionLinenumberEnd: 7824
    functionName: sg_rap_create_entry
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void *sg_rap_create_entry(void *udta)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - udta
    - entry
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7831
      start: 7826
    functionDepth: 0
    functionLinenumber: 7826
    functionLinenumberEnd: 7831
    functionName: sg_rap_compare_entry
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool sg_rap_compare_entry(void *udta, void *entry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_set_sample_group_info_internal
      Src: /src/gpac/src/isomedia/isom_write.c:7836,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - movie
    - track
    - sample_number
    - is_rap
    - num_leading_samples
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7837
      start: 7833
    functionDepth: 3
    functionLinenumber: 7833
    functionLinenumberEnd: 7837
    functionName: gf_isom_set_sample_rap_group
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_set_sample_group_info_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_sample_rap_group(GF_ISOFile *movie, u32 track,
      u32 sample_number, Bool is_rap, u32 num_leading_samples)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_set_sample_group_info_internal
      Src: /src/gpac/src/isomedia/isom_write.c:7841,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - movie
    - trackID
    - sample_number_in_frag
    - is_rap
    - num_leading_samples
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - u32
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7842
      start: 7839
    functionDepth: 3
    functionLinenumber: 7839
    functionLinenumberEnd: 7842
    functionName: gf_isom_fragment_set_sample_rap_group
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_set_sample_group_info_internal
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_fragment_set_sample_rap_group(GF_ISOFile *movie, GF_ISOTrackID
      trackID, u32 sample_number_in_frag, Bool is_rap, u32 num_leading_samples)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_write.c:7848,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - udta
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7851
      start: 7845
    functionDepth: 1
    functionLinenumber: 7845
    functionLinenumberEnd: 7851
    functionName: sg_av1s_create_entry
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void *sg_av1s_create_entry(void *udta)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - udta
    - entry
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7856
      start: 7853
    functionDepth: 0
    functionLinenumber: 7853
    functionLinenumberEnd: 7856
    functionName: sg_av1s_compare_entry
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool sg_av1s_compare_entry(void *udta, void *entry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_set_sample_group_info_internal
      Src: /src/gpac/src/isomedia/isom_write.c:7861,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - movie
    - track
    - sample_number
    - is_switch_Frame
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7862
      start: 7858
    functionDepth: 3
    functionLinenumber: 7858
    functionLinenumberEnd: 7862
    functionName: gf_isom_set_sample_av1_switch_frame_group
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_set_sample_group_info_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_sample_av1_switch_frame_group(GF_ISOFile *movie,
      u32 track, u32 sample_number, Bool is_switch_Frame)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_set_sample_group_info_internal
      Src: /src/gpac/src/isomedia/isom_write.c:7866,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - movie
    - trackID
    - sample_number_in_frag
    - is_switch_Frame
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7867
      start: 7864
    functionDepth: 3
    functionLinenumber: 7864
    functionLinenumberEnd: 7867
    functionName: gf_isom_fragment_set_sample_av1_switch_frame_group
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_set_sample_group_info_internal
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_fragment_set_sample_av1_switch_frame_group(GF_ISOFile
      *movie, GF_ISOTrackID trackID, u32 sample_number_in_frag, Bool is_switch_Frame)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_write.c:7875,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - udta
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7879
      start: 7871
    functionDepth: 1
    functionLinenumber: 7871
    functionLinenumberEnd: 7879
    functionName: sg_roll_create_entry
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void *sg_roll_create_entry(void *udta)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - udta
    - entry
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7886
      start: 7881
    functionDepth: 0
    functionLinenumber: 7881
    functionLinenumberEnd: 7886
    functionName: sg_roll_compare_entry
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool sg_roll_compare_entry(void *udta, void *entry)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_set_sample_group_info_internal
      Src: /src/gpac/src/isomedia/isom_write.c:7895,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - movie
    - track
    - sample_number
    - roll_type
    - roll_distance
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_ISOSampleRollType
    - s16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7896
      start: 7888
    functionDepth: 3
    functionLinenumber: 7888
    functionLinenumberEnd: 7896
    functionName: gf_isom_set_sample_roll_group
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_set_sample_group_info_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_sample_roll_group(GF_ISOFile *movie, u32 track,
      u32 sample_number, GF_ISOSampleRollType roll_type, s16 roll_distance)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_set_sample_group_info_internal
      Src: /src/gpac/src/isomedia/isom_write.c:7905,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - movie
    - trackID
    - sample_number_in_frag
    - roll_type
    - roll_distance
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - u32
    - GF_ISOSampleRollType
    - s16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7906
      start: 7898
    functionDepth: 3
    functionLinenumber: 7898
    functionLinenumberEnd: 7906
    functionName: gf_isom_fragment_set_sample_roll_group
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_set_sample_group_info_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_fragment_set_sample_roll_group(GF_ISOFile *movie,
      GF_ISOTrackID trackID, u32 sample_number_in_frag, GF_ISOSampleRollType roll_type,
      s16 roll_distance)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_write.c:7912,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:7915,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:7916,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:7918,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:7921,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - udta
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7923
      start: 7909
    functionDepth: 1
    functionLinenumber: 7909
    functionLinenumberEnd: 7923
    functionName: sg_encryption_create_entry
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memcpy
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void *sg_encryption_create_entry(void *udta)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_write.c:7935,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - udta
    - _entry
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7938
      start: 7925
    functionDepth: 0
    functionLinenumber: 7925
    functionLinenumberEnd: 7938
    functionName: sg_encryption_compare_entry
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - memcmp
    linkageType: ''
    returnType: Bool
    signature: Bool sg_encryption_compare_entry(void *udta, void *_entry)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_write.c:7949,1
    - Dst: gf_isom_set_sample_group_info_internal
      Src: /src/gpac/src/isomedia/isom_write.c:7956,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 8
    argNames:
    - movie
    - track
    - sample_number
    - isEncrypted
    - crypt_byte_block
    - skip_byte_block
    - key_info
    - key_info_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u8
    - u32
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7957
      start: 7942
    functionDepth: 3
    functionLinenumber: 7942
    functionLinenumberEnd: 7957
    functionName: gf_isom_set_sample_cenc_group
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_isom_set_sample_group_info_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_sample_cenc_group(GF_ISOFile *movie, u32 track,
      u32 sample_number, u8 isEncrypted, u32 crypt_byte_block, u32 skip_byte_block,
      u8 *key_info, u32 key_info_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_set_sample_group_info_internal
      Src: /src/gpac/src/isomedia/isom_write.c:7964,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - movie
    - track
    - sample_number
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7965
      start: 7961
    functionDepth: 3
    functionLinenumber: 7961
    functionLinenumberEnd: 7965
    functionName: gf_isom_set_sample_cenc_default_group
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_set_sample_group_info_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_sample_cenc_default_group(GF_ISOFile *movie,
      u32 track, u32 sample_number)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:7970,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7972,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:7976,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:7979,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - file
    - track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7983
      start: 7967
    functionDepth: 5
    functionLinenumber: 7967
    functionLinenumberEnd: 7983
    functionName: gf_isom_force_ctts
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_malloc
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_force_ctts(GF_ISOFile *file, u32 track)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:7994,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7997,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8021,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8022,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8028,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8029,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:8034,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8039,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/isomedia/isom_write.c:8051,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/isomedia/isom_write.c:8055,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 56
    argCount: 3
    argNames:
    - file
    - track
    - ctts_shift
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8057
      start: 7985
    functionDepth: 6
    functionLinenumber: 7985
    functionLinenumberEnd: 8057
    functionName: gf_isom_set_ctts_v1
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_isom_modify_alternate_brand
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_media_duration
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - SetTrackDuration
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_ctts_v1(GF_ISOFile *file, u32 track, u32 ctts_shift)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8093,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/isomedia/isom_write.c:8102,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/isom_write.c:8102,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8105,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8106,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:8111,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/isomedia/isom_write.c:8115,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 41
    argCount: 2
    argNames:
    - file
    - trak
    argTypes:
    - GF_ISOFile*
    - GF_TrackBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8117
      start: 8059
    functionDepth: 8
    functionLinenumber: 8059
    functionLinenumberEnd: 8117
    functionName: gf_isom_set_ctts_v0
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_list_find
    - gf_isom_modify_alternate_brand
    - gf_isom_set_edit
    - gf_list_count
    - SetTrackDuration
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_set_ctts_v0(GF_ISOFile *file, GF_TrackBox *trak)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:8126,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8129,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8135,1
    - Dst: gf_isom_set_ctts_v1
      Src: /src/gpac/src/isomedia/isom_write.c:8142,1
    - Dst: gf_isom_set_ctts_v0
      Src: /src/gpac/src/isomedia/isom_write.c:8145,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 3
    argNames:
    - file
    - track
    - use_negative_offsets
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8147
      start: 8119
    functionDepth: 9
    functionLinenumber: 8119
    functionLinenumberEnd: 8147
    functionName: gf_isom_set_composition_offset_mode
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_isom_set_ctts_v0
    - gf_isom_get_track_box
    - gf_isom_set_ctts_v1
    - gf_isom_can_access_movie
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_composition_offset_mode(GF_ISOFile *file, u32
      track, Bool use_negative_offsets)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:8155,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8158,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8162,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - file
    - track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8168
      start: 8150
    functionDepth: 5
    functionLinenumber: 8150
    functionLinenumberEnd: 8168
    functionName: gf_isom_set_sync_table
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_set_sync_table(GF_ISOFile *file, u32 track)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:8176,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8179,1
    - Dst: stbl_SetDependencyType
      Src: /src/gpac/src/isomedia/isom_write.c:8181,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 7
    argNames:
    - file
    - track
    - sampleNumber
    - isLeading
    - dependsOn
    - dependedOn
    - redundant
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8182
      start: 8171
    functionDepth: 1
    functionLinenumber: 8171
    functionLinenumberEnd: 8182
    functionName: gf_isom_set_sample_flags
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - stbl_SetDependencyType
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_set_sample_flags(GF_ISOFile *file, u32 track, u32 sampleNumber,
      u32 isLeading, u32 dependsOn, u32 dependedOn, u32 redundant)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8189,1
    - Dst: stbl_AddDependencyType
      Src: /src/gpac/src/isomedia/isom_write.c:8192,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - file
    - track
    - sampleNumber
    - isLeading
    - dependsOn
    - dependedOn
    - redundant
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8193
      start: 8185
    functionDepth: 1
    functionLinenumber: 8185
    functionLinenumberEnd: 8193
    functionName: gf_isom_sample_set_dep_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - stbl_AddDependencyType
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_sample_set_dep_info(GF_ISOFile *file, u32 track, u32
      sampleNumber, u32 isLeading, u32 dependsOn, u32 dependedOn, u32 redundant)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8204,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8207,1
    - Dst: stbl_GetSampleDepType
      Src: /src/gpac/src/isomedia/isom_write.c:8218,1
    - Dst: stbl_AppendDependencyType
      Src: /src/gpac/src/isomedia/isom_write.c:8221,1
    - Dst: gf_isom_get_subsample_types
      Src: /src/gpac/src/isomedia/isom_write.c:8227,1
    - Dst: gf_isom_sample_get_subsample_entry
      Src: /src/gpac/src/isomedia/isom_write.c:8231,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:8236,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8238,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8240,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8245,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:8249,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8252,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8254,1
    - Dst: gf_isom_add_subsample_info
      Src: /src/gpac/src/isomedia/isom_write.c:8255,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8263,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8271,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:8281,1
    - Dst: gf_isom_get_sample_group_info_entry
      Src: /src/gpac/src/isomedia/isom_write.c:8291,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:8296,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8299,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8300,1
    - Dst: gf_isom_clone_box
      Src: /src/gpac/src/isomedia/isom_write.c:8305,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:8307,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:8308,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8312,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8313,1
    - Dst: gf_isom_is_identical_sgpd
      Src: /src/gpac/src/isomedia/isom_write.c:8314,1
    - Dst: gf_isom_clone_box
      Src: /src/gpac/src/isomedia/isom_write.c:8321,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8323,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:8324,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:8325,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:8326,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8327,1
    - Dst: gf_isom_get_sample_group_info_entry
      Src: /src/gpac/src/isomedia/isom_write.c:8330,1
    - Dst: gf_isom_add_sample_group_entry
      Src: /src/gpac/src/isomedia/isom_write.c:8335,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8342,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8346,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8364,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8365,1
    - Dst: gf_isom_add_sample_aux_info_internal
      Src: /src/gpac/src/isomedia/isom_write.c:8390,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:8392,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_write.c:8395,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_write.c:8396,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/isom_write.c:8398,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_write.c:8399,1
    - Dst: gf_isom_add_sample_aux_info_internal
      Src: /src/gpac/src/isomedia/isom_write.c:8400,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:8401,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:8405,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/isomedia/isom_write.c:8405,1
    CyclomaticComplexity: 67
    EdgeCount: 67
    ICount: 165
    argCount: 5
    argNames:
    - dst
    - dst_track
    - src
    - src_track
    - sampleNumber
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8409
      start: 8196
    functionDepth: 5
    functionLinenumber: 8196
    functionLinenumberEnd: 8409
    functionName: gf_isom_copy_sample_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_data
    - gf_isom_get_subsample_types
    - gf_free
    - gf_isom_add_subsample_info
    - gf_isom_sample_get_subsample_entry
    - gf_list_count
    - stbl_GetSampleDepType
    - gf_isom_get_sample_group_info_entry
    - gf_list_new
    - gf_list_get
    - gf_isom_box_del
    - gf_isom_is_identical_sgpd
    - gf_list_add
    - GF_LOG
    - gf_isom_box_new_parent
    - gf_bs_get_position
    - gf_isom_add_sample_group_entry
    - gf_error_to_string
    - gf_isom_get_track_box
    - gf_isom_add_sample_aux_info_internal
    - stbl_AppendDependencyType
    - gf_malloc
    - gf_isom_clone_box
    - gf_bs_seek
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_copy_sample_info(GF_ISOFile *dst, u32 dst_track,
      GF_ISOFile *src, u32 src_track, u32 sampleNumber)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:8418,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8421,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8424,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8428,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 5
    argNames:
    - file
    - track
    - desc_index
    - flags
    - op_type
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - GF_TextFlagsMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8445
      start: 8411
    functionDepth: 1
    functionLinenumber: 8411
    functionLinenumberEnd: 8445
    functionName: gf_isom_text_set_display_flags
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_can_access_movie
    - gf_list_get
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_text_set_display_flags(GF_ISOFile *file, u32 track,
      u32 desc_index, u32 flags, GF_TextFlagsMode op_type)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:8462,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:8463,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8470
      start: 8448
    functionDepth: 6
    functionLinenumber: 8448
    functionLinenumberEnd: 8470
    functionName: gf_isom_update_duration
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 2
    functionsReached:
    - SetTrackDuration
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_update_duration(GF_ISOFile *movie)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:8481,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8484,1
    - Dst: Media_SetDuration
      Src: /src/gpac/src/isomedia/isom_write.c:8489,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:8502,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 40
    argCount: 2
    argNames:
    - file
    - track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8535
      start: 8472
    functionDepth: 4
    functionLinenumber: 8472
    functionLinenumberEnd: 8535
    functionName: gf_isom_update_edit_list_duration
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_list_enum
    - gf_isom_get_track_box
    - Media_SetDuration
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_update_edit_list_duration(GF_ISOFile *file, u32 track)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:8544,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8552,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/isom_write.c:8554,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:8557,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/isom_write.c:8559,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:8565,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/isom_write.c:8567,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 3
    argNames:
    - output
    - input
    - in_moof
    argTypes:
    - GF_ISOFile*
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8572
      start: 8538
    functionDepth: 5
    functionLinenumber: 8538
    functionLinenumberEnd: 8572
    functionName: gf_isom_clone_pssh
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - memmove
    - gf_malloc
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_clone_pssh(GF_ISOFile *output, GF_ISOFile *input,
      Bool in_moof)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:8582,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8585,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8587,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8590,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8591,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8594,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8595,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:8599,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/isom_write.c:8599,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:8604,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8605,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8613,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:8617,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 37
    argCount: 5
    argNames:
    - file
    - track_number
    - track_group_id
    - group_type
    - do_add
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8618
      start: 8574
    functionDepth: 5
    functionLinenumber: 8574
    functionLinenumberEnd: 8618
    functionName: gf_isom_set_track_group
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_list_get
    - gf_isom_box_del_parent
    - GF_LOG
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_add
    - gf_isom_can_access_movie
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_track_group(GF_ISOFile *file, u32 track_number,
      u32 track_group_id, u32 group_type, Bool do_add)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:8629,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8632,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8636,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8640,1
    - Dst: gf_isom_is_nalu_based_entry
      Src: /src/gpac/src/isomedia/isom_write.c:8642,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 27
    argCount: 4
    argNames:
    - file
    - track
    - StreamDescriptionIndex
    - nalu_size_length
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8653
      start: 8620
    functionDepth: 3
    functionLinenumber: 8620
    functionLinenumberEnd: 8653
    functionName: gf_isom_set_nalu_length_field
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_count
    - gf_isom_is_nalu_based_entry
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_nalu_length_field(GF_ISOFile *file, u32 track,
      u32 StreamDescriptionIndex, u32 nalu_size_length)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:8659,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8664
      start: 8655
    functionDepth: 1
    functionLinenumber: 8655
    functionLinenumberEnd: 8664
    functionName: gf_isom_set_sample_group_in_traf
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_sample_group_in_traf(GF_ISOFile *file)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - file
    - progress_cbk_udta
    argTypes:
    - GF_ISOFile*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8674
      start: 8666
    functionDepth: 0
    functionLinenumber: 8666
    functionLinenumberEnd: 8674
    functionName: gf_isom_set_progress_callback
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_progress_callback(GF_ISOFile *file, void (*progress_cbk)(void
      *udta, u64 nb_done, u64 nb_total), void *progress_cbk_udta)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8683,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8697,1
    - Dst: strncpy
      Src: /src/gpac/src/isomedia/isom_write.c:8709,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 28
    argCount: 12
    argNames:
    - file
    - track
    - stsd_idx
    - revision
    - vendor
    - temporalQ
    - spatialQ
    - horiz_res
    - vert_res
    - frames_per_sample
    - compressor_name
    - color_table_index
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u16
    - u32
    - u32
    - u32
    - u32
    - u32
    - u16
    - char*
    - s16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8713
      start: 8676
    functionDepth: 1
    functionLinenumber: 8676
    functionLinenumberEnd: 8713
    functionName: gf_isom_update_video_sample_entry_fields
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - strncpy
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_update_video_sample_entry_fields(GF_ISOFile *file, u32
      track, u32 stsd_idx, u16 revision, u32 vendor, u32 temporalQ, u32 spatialQ,
      u32 horiz_res, u32 vert_res, u16 frames_per_sample, const char *compressor_name,
      s16 color_table_index)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8723,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8729,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:8732,1
    - Dst: gf_isom_box_parse_ex
      Src: /src/gpac/src/isomedia/isom_write.c:8734,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:8735,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8738,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/isom_write.c:8741,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:8752,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:8756,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8757,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8758,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:8765,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:8767,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:8770,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:8773,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:8775,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:8776,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 46
    argCount: 5
    argNames:
    - file
    - track
    - sampleDescriptionIndex
    - data
    - size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8779
      start: 8715
    functionDepth: 4
    functionLinenumber: 8715
    functionLinenumberEnd: 8779
    functionName: gf_isom_update_sample_description_from_template
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_new
    - gf_bs_new
    - gf_isom_box_del
    - gf_list_pop_front
    - gf_bs_del
    - gf_isom_box_parse_ex
    - gf_list_count
    - gf_list_add
    - gf_list_del_item
    - gf_isom_get_track_box
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_update_sample_description_from_template(GF_ISOFile
      *file, u32 track, u32 sampleDescriptionIndex, u8 *data, u32 size)
  - BBCount: 55
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/isomedia/isom_write.c:8796,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/isom_write.c:8797,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/isomedia/isom_write.c:8798,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/isomedia/isom_write.c:8800,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/isomedia/isom_write.c:8804,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:8805,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8813,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8815,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:8817,1
    - Dst: gf_isom_box_freeze_order
      Src: /src/gpac/src/isomedia/isom_write.c:8818,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8823,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8824,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:8826,1
    - Dst: gf_isom_box_freeze_order
      Src: /src/gpac/src/isomedia/isom_write.c:8827,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8832,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8841,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:8842,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8844,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8845,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:8846,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:8847,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:8848,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:8848,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:8848,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:8852,1
    - Dst: atoi
      Src: /src/gpac/src/isomedia/isom_write.c:8853,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:8854,1
    - Dst: atoi
      Src: /src/gpac/src/isomedia/isom_write.c:8855,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_write.c:8859,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_write.c:8861,1
    - Dst: gf_xml_parse_bit_sequence
      Src: /src/gpac/src/isomedia/isom_write.c:8866,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:8868,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_write.c:8876,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:8884,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8888,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/isomedia/isom_write.c:8888,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8890,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8891,1
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/isom_write.c:8897,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8899,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8900,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:8906,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/isom_write.c:8906,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:8911,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:8913,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/isom_write.c:8913,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/isom_write.c:8913,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:8926,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/isom_write.c:8932,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:8934,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:8942,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:8949,1
    - Dst: gf_isom_box_remove_from_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8969,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8971,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:8975,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/isom_write.c:8976,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:8978,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/isom_write.c:8980,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:8981,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/isom_write.c:8982,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:8984,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/isom_write.c:8985,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_write.c:8987,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:8991,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:8993,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8997,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9000,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_write.c:9007,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_write.c:9009,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/isom_write.c:9012,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_write.c:9021,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/isom_write.c:9022,1
    - Dst: gf_isom_box_parse_ex
      Src: /src/gpac/src/isomedia/isom_write.c:9024,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:9026,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:9027,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:9031,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_write.c:9033,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:9038,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:9041,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/isomedia/isom_write.c:9049,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:9050,1
    CyclomaticComplexity: 94
    EdgeCount: 94
    ICount: 229
    argCount: 4
    argNames:
    - file
    - globalTrackID
    - box_patch_filename
    - for_fragments
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9052
      start: 8783
    functionDepth: 5
    functionLinenumber: 8783
    functionLinenumberEnd: 9052
    functionName: gf_isom_apply_box_patch
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_isom_box_size
    - gf_xml_dom_get_root
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_list_find
    - gf_list_count
    - gf_isom_box_freeze_order
    - atoi
    - gf_bs_available
    - gf_isom_get_track_by_id
    - gf_isom_box_find_child
    - gf_realloc
    - gf_4cc_to_str
    - gf_list_get
    - gf_xml_parse_bit_sequence
    - gf_list_new
    - gf_isom_box_remove_from_parent
    - gf_bs_read_u32
    - gf_isom_box_parse_ex
    - strncmp
    - gf_xml_dom_new
    - gf_list_add
    - gf_isom_box_new
    - gf_list_insert
    - gf_isom_box_del_parent
    - gf_xml_dom_parse
    - gf_isom_get_traf
    - GF_LOG
    - gf_xml_dom_parse_string
    - strstr
    - gf_isom_get_track_box
    - strlen
    - gf_malloc
    - gf_bs_seek
    - gf_bs_del
    - strcmp
    - GF_4CC
    - gf_xml_dom_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_apply_box_patch(GF_ISOFile *file, GF_ISOTrackID globalTrackID,
      const char *box_patch_filename, Bool for_fragments)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:9057,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - magic
    argTypes:
    - GF_ISOFile*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9061
      start: 9054
    functionDepth: 0
    functionLinenumber: 9054
    functionLinenumberEnd: 9061
    functionName: gf_isom_set_track_magic
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_track_magic(GF_ISOFile *movie, u32 trackNumber,
      u64 magic)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:9068,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:9071,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:9072,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9075,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_write.c:9077,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:9079,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9080,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_write.c:9082,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:9087,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:9090,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/isom_write.c:9091,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9096,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/isom_write.c:9097,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/isom_write.c:9098,1
    - Dst: track_num_changed
      Src: /src/gpac/src/isomedia/isom_write.c:9100,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/isom_write.c:9103,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:9105,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9106,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 39
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - index
    - udta
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9111
      start: 9063
    functionDepth: 1
    functionLinenumber: 9063
    functionLinenumberEnd: 9111
    functionName: gf_isom_set_track_index
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_new
    - gf_list_get
    - gf_assert
    - gf_list_find
    - track_num_changed
    - gf_list_count
    - gf_list_add
    - gf_isom_get_track_box
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_track_index(GF_ISOFile *movie, u32 trackNumber,
      u32 index, void (*track_num_changed)(void *udta, u32 old_track_num, u32 new_track_num),
      void *udta)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:9120,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:9122,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9124,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9142,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:9145,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:9147,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_write.c:9149,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9151
      start: 9113
    functionDepth: 5
    functionLinenumber: 9113
    functionLinenumberEnd: 9151
    functionName: gf_isom_set_ipod_compatible
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - memcpy
    - gf_isom_box_new_parent
    - memset
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_ipod_compatible(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/isomedia/isom_write.c:9159,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:9162,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:9165,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 16
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9174
      start: 9153
    functionDepth: 1
    functionLinenumber: 9153
    functionLinenumberEnd: 9174
    functionName: gf_isom_is_inplace_rewrite
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - strcmp
    - gf_bs_get_size
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_is_inplace_rewrite(GF_ISOFile *movie)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9181
      start: 9176
    functionDepth: 0
    functionLinenumber: 9176
    functionLinenumberEnd: 9181
    functionName: gf_isom_disable_inplace_rewrite
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_disable_inplace_rewrite(GF_ISOFile *movie)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:9191,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:9194,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9197,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:9202,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9207,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9210,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:9216,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9218,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9226,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:9231,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:9233,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9235,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:9238,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:9241,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9243,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:9247,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9250,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:9259,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9261,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9275,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9276,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9278,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9279,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9281,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9282,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 86
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - sampleDescriptionIndex
    - info
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_ISOM_Y3D_Info*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9286
      start: 9183
    functionDepth: 5
    functionLinenumber: 9183
    functionLinenumberEnd: 9286
    functionName: gf_isom_set_y3d_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_strdup
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_y3d_info(GF_ISOFile *movie, u32 trackNumber,
      u32 sampleDescriptionIndex, GF_ISOM_Y3D_Info *info)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:9316,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9318,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9327,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/isom_write.c:9333,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:9335,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:9340,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9342,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9347,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:9349,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:9350,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/isom_write.c:9367,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:9383,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9385,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9390,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:9392,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:9393,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 99
    argCount: 7
    argNames:
    - trak
    - _traf
    - sampleNumber
    - aux_type
    - aux_info
    - data
    - size
    argTypes:
    - GF_TrackBox*
    - void*
    - u32
    - u32
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9402
      start: 9292
    functionDepth: 5
    functionLinenumber: 9292
    functionLinenumberEnd: 9402
    functionName: gf_isom_add_sample_aux_info_internal
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 2
    functionsReached:
    - gf_list_get
    - gf_list_new
    - memcpy
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_list_add
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_add_sample_aux_info_internal(GF_TrackBox *trak, void
      *_traf, u32 sampleNumber, u32 aux_type, u32 aux_info, u8 *data, u32 size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/isom_write.c:9414,1
    - Dst: gf_isom_add_sample_aux_info_internal
      Src: /src/gpac/src/isomedia/isom_write.c:9416,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 7
    argNames:
    - movie
    - trackID
    - sample_number_in_frag
    - aux_type
    - aux_info
    - data
    - size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9417
      start: 9409
    functionDepth: 6
    functionLinenumber: 9409
    functionLinenumberEnd: 9417
    functionName: gf_isom_fragment_set_sample_aux_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_add_sample_aux_info_internal
    - gf_isom_get_traf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_fragment_set_sample_aux_info(GF_ISOFile *movie, u32
      trackID, u32 sample_number_in_frag, u32 aux_type, u32 aux_info, u8 *data, u32
      size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:9425,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:9428,1
    - Dst: gf_isom_add_sample_aux_info_internal
      Src: /src/gpac/src/isomedia/isom_write.c:9431,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 7
    argNames:
    - file
    - track
    - sampleNumber
    - aux_type
    - aux_info
    - data
    - size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9432
      start: 9420
    functionDepth: 6
    functionLinenumber: 9420
    functionLinenumberEnd: 9432
    functionName: gf_isom_add_sample_aux_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_add_sample_aux_info_internal
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_add_sample_aux_info(GF_ISOFile *file, u32 track, u32
      sampleNumber, u32 aux_type, u32 aux_info, u8 *data, u32 size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:9439,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:9444,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9446,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9451
      start: 9435
    functionDepth: 1
    functionLinenumber: 9435
    functionLinenumberEnd: 9451
    functionName: gf_isom_set_meta_qt
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_can_access_movie
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_set_meta_qt(GF_ISOFile *file)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:9462,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9464,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:9479,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9482,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9484,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:9487,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:9488,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 39
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - sampleDescIndex
    - profiles
    - nb_compat_profiles
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9495
      start: 9454
    functionDepth: 5
    functionLinenumber: 9454
    functionLinenumberEnd: 9495
    functionName: gf_isom_set_mpegh_compatible_profiles
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - gf_isom_box_find_child
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_mpegh_compatible_profiles(GF_ISOFile *movie,
      u32 trackNumber, u32 sampleDescIndex, const u32 *profiles, u32 nb_compat_profiles)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:9503,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9505,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:9571,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9572,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9574,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9578,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9587,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 89
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - sampleDescIndex
    - scheme_type
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9593
      start: 9497
    functionDepth: 5
    functionLinenumber: 9497
    functionLinenumberEnd: 9593
    functionName: gf_isom_set_sample_description_restricted
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - gf_isom_box_find_child
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_set_sample_description_restricted(GF_ISOFile *movie,
      u32 trackNumber, u32 sampleDescIndex, u32 scheme_type)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_write.c:9598,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:9605,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9607,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:9618,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:9619,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:9626,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 4
    argNames:
    - sref
    - refID
    - nb_refs
    - refs
    argTypes:
    - GF_SampleReferences*
    - s32
    - u32
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9627
      start: 9595
    functionDepth: 1
    functionLinenumber: 9595
    functionLinenumberEnd: 9627
    functionName: isom_sample_refs_push
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - GF_SAFEALLOC
    - memcpy
    - gf_list_count
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err isom_sample_refs_push(GF_SampleReferences *sref, s32 refID,
      u32 nb_refs, s32 *refs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:9635,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:9638,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9645,1
    - Dst: isom_sample_refs_push
      Src: /src/gpac/src/isomedia/isom_write.c:9648,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 6
    argNames:
    - file
    - track
    - sampleNumber
    - refID
    - nb_refs
    - refs
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - s32
    - u32
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9650
      start: 9629
    functionDepth: 5
    functionLinenumber: 9629
    functionLinenumberEnd: 9650
    functionName: gf_isom_set_sample_references
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - isom_sample_refs_push
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_set_sample_references(GF_ISOFile *file, u32 track, u32
      sampleNumber, s32 refID, u32 nb_refs, s32 *refs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: ALLOC_INC
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ALLOC_INC(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _e
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionName: CHECK_PACK
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_PACK(_e)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_PACK
      Src: /src/gpac/src/isomedia/stbl_write.c:67,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:76,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:135,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:136,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:138,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:172,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:193,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:200,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:202,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:223,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 131
    argCount: 5
    argNames:
    - stbl
    - DTS
    - sampleNumber
    - LastAUDefDuration
    - nb_pack
    argTypes:
    - GF_SampleTableBox*
    - u64
    - u32*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 228
    functionName: stbl_AddDTS
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_free
    - CHECK_PACK
    - ALLOC_INC
    - memset
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_AddDTS(GF_SampleTableBox *stbl, u64 DTS, u32 *sampleNumber,
      u32 LastAUDefDuration, u32 nb_pack)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:238,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:239,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:241,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 2
    argNames:
    - ctts
    - offset
    argTypes:
    - GF_CompositionOffsetBox*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 230
    functionDepth: 1
    functionLinenumber: 230
    functionLinenumberEnd: 256
    functionName: AddCompositionOffset
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_realloc
    - ALLOC_INC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AddCompositionOffset(GF_CompositionOffsetBox *ctts, s32 offset)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:268,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:269,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:271,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/stbl_write.c:278,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/stbl_write.c:279,1
    - Dst: AddCompositionOffset
      Src: /src/gpac/src/isomedia/stbl_write.c:289,1
    - Dst: AddCompositionOffset
      Src: /src/gpac/src/isomedia/stbl_write.c:292,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/stbl_write.c:294,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/stbl_write.c:295,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/stbl_write.c:302,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/stbl_write.c:308,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:309,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/stbl_write.c:315,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/stbl_write.c:316,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:328,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:330,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:347,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 82
    argCount: 3
    argNames:
    - stbl
    - sampleNumber
    - offset
    argTypes:
    - GF_SampleTableBox*
    - u32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 259
    functionDepth: 2
    functionLinenumber: 259
    functionLinenumberEnd: 356
    functionName: stbl_AddCTS
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_free
    - ABS
    - ALLOC_INC
    - GF_LOG
    - GF_SAFE_ALLOC_N
    - memset
    - AddCompositionOffset
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_AddCTS(GF_SampleTableBox *stbl, u32 sampleNumber, s32 offset)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - ctts
    argTypes:
    - GF_CompositionOffsetBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 358
    functionDepth: 0
    functionLinenumber: 358
    functionLinenumberEnd: 378
    functionName: stbl_repackCTS
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_repackCTS(GF_CompositionOffsetBox *ctts)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:398,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:399,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:402,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:409,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:413,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:414,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:416,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 38
    argCount: 1
    argNames:
    - stbl
    argTypes:
    - GF_SampleTableBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 381
    functionDepth: 1
    functionLinenumber: 381
    functionLinenumberEnd: 423
    functionName: stbl_unpackCTS
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 4
    functionsReached:
    - gf_free
    - memset
    - gf_realloc
    - ALLOC_INC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_unpackCTS(GF_SampleTableBox *stbl)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_PACK
      Src: /src/gpac/src/isomedia/stbl_write.c:437,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/stbl_write.c:457,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:461,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:487,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:488,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:490,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:494,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:504,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 70
    argCount: 4
    argNames:
    - stsz
    - sampleNumber
    - size
    - nb_pack
    argTypes:
    - GF_SampleSizeBox*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 429
    functionDepth: 1
    functionLinenumber: 429
    functionLinenumberEnd: 510
    functionName: stbl_AddSize
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_free
    - CHECK_PACK
    - ALLOC_INC
    - GF_LOG
    - memset
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_AddSize(GF_SampleSizeBox *stsz, u32 sampleNumber, u32 size,
      u32 nb_pack)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:521,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:522,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:533,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:534,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:536,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:540,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:551,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 41
    argCount: 2
    argNames:
    - stss
    - sampleNumber
    argTypes:
    - GF_SyncSampleBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 513
    functionDepth: 1
    functionLinenumber: 513
    functionLinenumberEnd: 558
    functionName: stbl_AddRAP
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_free
    - ALLOC_INC
    - memset
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_AddRAP(GF_SyncSampleBox *stss, u32 sampleNumber)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:565,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:571,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:574,1
    - Dst: stbl_GetSampleRAP
      Src: /src/gpac/src/isomedia/stbl_write.c:577,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:585,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:592,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 2
    argNames:
    - stbl
    - sampleNumber
    argTypes:
    - GF_SampleTableBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 560
    functionDepth: 5
    functionLinenumber: 560
    functionLinenumberEnd: 598
    functionName: stbl_AddRedundant
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - memmove
    - gf_isom_box_new_parent
    - memset
    - stbl_GetSampleRAP
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_AddRedundant(GF_SampleTableBox *stbl, u32 sampleNumber)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:605,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:618,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 6
    argNames:
    - stbl
    - sampleNumber
    - isLeading
    - dependsOn
    - dependedOn
    - redundant
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 600
    functionDepth: 5
    functionLinenumber: 600
    functionLinenumberEnd: 629
    functionName: stbl_SetDependencyType
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_realloc
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_SetDependencyType(GF_SampleTableBox *stbl, u32 sampleNumber,
      u32 isLeading, u32 dependsOn, u32 dependedOn, u32 redundant)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:638,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:644,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:647,1
    - Dst: stbl_GetSampleRAP
      Src: /src/gpac/src/isomedia/stbl_write.c:650,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:668,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:675,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 42
    argCount: 6
    argNames:
    - stbl
    - sampleNumber
    - isLeading
    - dependsOn
    - dependedOn
    - redundant
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 632
    functionDepth: 5
    functionLinenumber: 632
    functionLinenumberEnd: 681
    functionName: stbl_AddDependencyType
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - memmove
    - gf_isom_box_new_parent
    - memset
    - stbl_GetSampleRAP
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_AddDependencyType(GF_SampleTableBox *stbl, u32 sampleNumber,
      u32 isLeading, u32 dependsOn, u32 dependedOn, u32 redundant)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:691,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:703,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:705,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 5
    argNames:
    - stbl
    - isLeading
    - dependsOn
    - dependedOn
    - redundant
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 686
    functionDepth: 5
    functionLinenumber: 686
    functionLinenumberEnd: 711
    functionName: stbl_AppendDependencyType
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_realloc
    - ALLOC_INC
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_AppendDependencyType(GF_SampleTableBox *stbl, u32 isLeading,
      u32 dependsOn, u32 dependedOn, u32 redundant)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/stbl_write.c:720,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_write.c:722,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:728,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/stbl_write.c:732,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/stbl_write.c:733,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/stbl_write.c:735,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 3
    argNames:
    - stsh
    - sampleNumber
    - shadowNumber
    argTypes:
    - GF_ShadowSyncBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 737
      start: 716
    functionDepth: 1
    functionLinenumber: 716
    functionLinenumberEnd: 737
    functionName: stbl_AddShadow
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_list_insert
    - gf_list_get
    - gf_list_count
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_AddShadow(GF_ShadowSyncBox *stsh, u32 sampleNumber, u32
      shadowNumber)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_PACK
      Src: /src/gpac/src/isomedia/stbl_write.c:755,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:759,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:760,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:762,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:798,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:815,1
    - Dst: Media_IsSelfContained
      Src: /src/gpac/src/isomedia/stbl_write.c:824,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:854,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:858,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:869,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:876,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:877,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:879,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:885,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:895,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:907,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:908,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:910,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:916,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:926,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 169
    argCount: 5
    argNames:
    - mdia
    - sampleNumber
    - StreamDescIndex
    - offset
    - nb_pack
    argTypes:
    - GF_MediaBox*
    - u32
    - u32
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 934
      start: 740
    functionDepth: 5
    functionLinenumber: 740
    functionLinenumberEnd: 934
    functionName: stbl_AddChunkOffset
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_isom_box_del_parent
    - memmove
    - CHECK_PACK
    - ALLOC_INC
    - gf_isom_box_new_parent
    - memset
    - Media_IsSelfContained
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_AddChunkOffset(GF_MediaBox *mdia, u32 sampleNumber, u32
      StreamDescIndex, u64 offset, u32 nb_pack)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: Media_IsSelfContained
      Src: /src/gpac/src/isomedia/stbl_write.c:951,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:958,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:962,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:968,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 3
    argNames:
    - mdia
    - sampleNumber
    - offset
    argTypes:
    - GF_MediaBox*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 977
      start: 939
    functionDepth: 5
    functionLinenumber: 939
    functionLinenumberEnd: 977
    functionName: stbl_SetChunkOffset
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_isom_box_del_parent
    - Media_IsSelfContained
    - gf_malloc
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_SetChunkOffset(GF_MediaBox *mdia, u32 sampleNumber, u64
      offset)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_write.c:984,1
    - Dst: AddCompositionOffset
      Src: /src/gpac/src/isomedia/stbl_write.c:990,1
    - Dst: AddCompositionOffset
      Src: /src/gpac/src/isomedia/stbl_write.c:993,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 3
    argNames:
    - stbl
    - sampleNumber
    - offset
    argTypes:
    - GF_SampleTableBox*
    - u32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 998
      start: 980
    functionDepth: 2
    functionLinenumber: 980
    functionLinenumberEnd: 998
    functionName: stbl_SetSampleCTS
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_assert
    - AddCompositionOffset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_SetSampleCTS(GF_SampleTableBox *stbl, u32 sampleNumber,
      s32 offset)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1012,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 3
    argNames:
    - stsz
    - SampleNumber
    - size
    argTypes:
    - GF_SampleSizeBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1019
      start: 1000
    functionDepth: 0
    functionLinenumber: 1000
    functionLinenumberEnd: 1019
    functionName: stbl_SetSampleSize
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_SetSampleSize(GF_SampleSizeBox *stsz, u32 SampleNumber,
      u32 size)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1036,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:1043,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1044,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1046,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1050,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 27
    argCount: 3
    argNames:
    - stss
    - SampleNumber
    - isRAP
    argTypes:
    - GF_SyncSampleBox*
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1054
      start: 1022
    functionDepth: 1
    functionLinenumber: 1022
    functionLinenumberEnd: 1054
    functionName: stbl_SetSampleRAP
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - memset
    - gf_realloc
    - memmove
    - ALLOC_INC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_SetSampleRAP(GF_SyncSampleBox *stss, u32 SampleNumber,
      u8 isRAP)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: stbl_AddRedundant
      Src: /src/gpac/src/isomedia/stbl_write.c:1059,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - stbl
    - sampleNumber
    argTypes:
    - GF_SampleTableBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1064
      start: 1056
    functionDepth: 6
    functionLinenumber: 1056
    functionLinenumberEnd: 1064
    functionName: stbl_SetRedundant
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - stbl_AddRedundant
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_SetRedundant(GF_SampleTableBox *stbl, u32 sampleNumber)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/stbl_write.c:1071,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_write.c:1073,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1081,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/stbl_write.c:1086,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/stbl_write.c:1088,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/stbl_write.c:1093,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 3
    argNames:
    - stsh
    - sampleNumber
    - syncSample
    argTypes:
    - GF_ShadowSyncBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1095
      start: 1066
    functionDepth: 1
    functionLinenumber: 1066
    functionLinenumberEnd: 1095
    functionName: stbl_SetSyncShadow
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_list_insert
    - gf_list_get
    - gf_list_count
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_SetSyncShadow(GF_ShadowSyncBox *stsh, u32 sampleNumber,
      u32 syncSample)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1131,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1133,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_write.c:1162,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1204,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_write.c:1210,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1215,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_write.c:1216,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_write.c:1218,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 110
    argCount: 4
    argNames:
    - stbl
    - sampleNumber
    - nb_samples
    - LastAUDefDuration
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1227
      start: 1101
    functionDepth: 1
    functionLinenumber: 1101
    functionLinenumberEnd: 1227
    functionName: stbl_RemoveDTS
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_assert
    - memset
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_RemoveDTS(GF_SampleTableBox *stbl, u32 sampleNumber, u32
      nb_samples, u32 LastAUDefDuration)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_write.c:1236,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:1242,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_write.c:1253,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1254,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1257,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_write.c:1261,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 3
    argNames:
    - stbl
    - sampleNumber
    - nb_samples
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1264
      start: 1231
    functionDepth: 5
    functionLinenumber: 1231
    functionLinenumberEnd: 1264
    functionName: stbl_RemoveCTS
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_isom_box_del_parent
    - gf_assert
    - memmove
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_RemoveCTS(GF_SampleTableBox *stbl, u32 sampleNumber, u32
      nb_samples)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1273,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1285,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1288,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 3
    argNames:
    - stbl
    - sampleNumber
    - nb_samples
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1292
      start: 1266
    functionDepth: 0
    functionLinenumber: 1266
    functionLinenumberEnd: 1292
    functionName: stbl_RemoveSize
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_free
    - memmove
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_RemoveSize(GF_SampleTableBox *stbl, u32 sampleNumber, u32
      nb_samples)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/stbl_write.c:1324,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1330,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_write.c:1335,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_write.c:1338,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1343,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1352,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1364,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1373,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1375,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1381,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1391,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1393,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 82
    argCount: 3
    argNames:
    - stbl
    - sampleNumber
    - nb_samples
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1398
      start: 1295
    functionDepth: 1
    functionLinenumber: 1295
    functionLinenumberEnd: 1398
    functionName: stbl_RemoveChunk
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_assert
    - memmove
    - GF_LOG
    - memset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_RemoveChunk(GF_SampleTableBox *stbl, u32 sampleNumber,
      u32 nb_samples)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1418,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1428,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - stbl
    - sampleNumber
    argTypes:
    - GF_SampleTableBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1439
      start: 1401
    functionDepth: 0
    functionLinenumber: 1401
    functionLinenumberEnd: 1439
    functionName: stbl_RemoveRAP
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_free
    - memmove
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_RemoveRAP(GF_SampleTableBox *stbl, u32 sampleNumber)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1450,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1460,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - stbl
    - nb_samples
    argTypes:
    - GF_SampleTableBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1468
      start: 1441
    functionDepth: 0
    functionLinenumber: 1441
    functionLinenumberEnd: 1468
    functionName: stbl_RemoveRAPs
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_free
    - memmove
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_RemoveRAPs(GF_SampleTableBox *stbl, u32 nb_samples)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1480,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1481,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1486,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 3
    argNames:
    - stbl
    - SampleNumber
    - nb_samples
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1490
      start: 1470
    functionDepth: 0
    functionLinenumber: 1470
    functionLinenumberEnd: 1490
    functionName: stbl_RemoveRedundant
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - memmove
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_RemoveRedundant(GF_SampleTableBox *stbl, u32 SampleNumber,
      u32 nb_samples)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/stbl_write.c:1503,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/stbl_write.c:1506,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - stbl
    - sampleNumber
    argTypes:
    - GF_SampleTableBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1515
      start: 1492
    functionDepth: 1
    functionLinenumber: 1492
    functionLinenumberEnd: 1515
    functionName: stbl_RemoveShadow
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_list_enum
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_RemoveShadow(GF_SampleTableBox *stbl, u32 sampleNumber)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:1528,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1535,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1537,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1541,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1544,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/stbl_write.c:1546,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1547,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 3
    argNames:
    - stbl
    - SampleNumber
    - bits
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1553
      start: 1520
    functionDepth: 5
    functionLinenumber: 1520
    functionLinenumberEnd: 1553
    functionName: stbl_SetPaddingBits
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_free
    - memcpy
    - gf_isom_box_new_parent
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_SetPaddingBits(GF_SampleTableBox *stbl, u32 SampleNumber,
      u8 bits)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:1567,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1573,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1585,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 2
    argNames:
    - stbl
    - SampleNumber
    argTypes:
    - GF_SampleTableBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1588
      start: 1557
    functionDepth: 5
    functionLinenumber: 1557
    functionLinenumberEnd: 1588
    functionName: stbl_RemovePaddingBits
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_isom_box_del_parent
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_RemovePaddingBits(GF_SampleTableBox *stbl, u32 SampleNumber)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/stbl_write.c:1595,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_write.c:1597,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/stbl_write.c:1602,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_write.c:1604,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_write.c:1610,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/stbl_write.c:1613,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/stbl_write.c:1614,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_write.c:1615,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1616,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/stbl_write.c:1617,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/stbl_write.c:1619,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1620,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_write.c:1630,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_write.c:1633,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 2
    argNames:
    - stbl
    - SampleNumber
    argTypes:
    - GF_SampleTableBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1639
      start: 1590
    functionDepth: 1
    functionLinenumber: 1590
    functionLinenumberEnd: 1639
    functionName: stbl_RemoveSubSample
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_RemoveSubSample(GF_SampleTableBox *stbl, u32 SampleNumber)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/stbl_write.c:1648,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_write.c:1651,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1656,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/stbl_write.c:1663,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:1666,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 2
    argNames:
    - stbl
    - SampleNumber
    argTypes:
    - GF_SampleTableBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1670
      start: 1642
    functionDepth: 5
    functionLinenumber: 1642
    functionLinenumberEnd: 1670
    functionName: stbl_RemoveSampleGroup
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - memmove
    - gf_list_count
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_RemoveSampleGroup(GF_SampleTableBox *stbl, u32 SampleNumber)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1681,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1702,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 2
    argNames:
    - stsz
    - data_size
    argTypes:
    - GF_SampleSizeBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1708
      start: 1674
    functionDepth: 0
    functionLinenumber: 1674
    functionLinenumberEnd: 1708
    functionName: stbl_SampleSizeAppend
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_SampleSizeAppend(GF_SampleSizeBox *stsz, u32 data_size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_PACK
      Src: /src/gpac/src/isomedia/stbl_write.c:1718,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:1727,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1728,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1730,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 3
    argNames:
    - stbl
    - duration
    - nb_pack
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1737
      start: 1714
    functionDepth: 1
    functionLinenumber: 1714
    functionLinenumberEnd: 1737
    functionName: stbl_AppendTime
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - memset
    - gf_realloc
    - CHECK_PACK
    - ALLOC_INC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_AppendTime(GF_SampleTableBox *stbl, u32 duration, u32 nb_pack)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_PACK
      Src: /src/gpac/src/isomedia/stbl_write.c:1742,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:1755,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1760,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1762,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 3
    argNames:
    - stbl
    - size
    - nb_pack
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1779
      start: 1739
    functionDepth: 1
    functionLinenumber: 1739
    functionLinenumberEnd: 1779
    functionName: stbl_AppendSize
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - memset
    - gf_realloc
    - CHECK_PACK
    - ALLOC_INC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_AppendSize(GF_SampleTableBox *stbl, u32 size, u32 nb_pack)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:1794,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1799,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:1803,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1810,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1821,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 2
    argNames:
    - stbl
    - offset
    argTypes:
    - GF_SampleTableBox*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1827
      start: 1783
    functionDepth: 5
    functionLinenumber: 1783
    functionLinenumberEnd: 1827
    functionName: stbl_AppendChunk
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_del_parent
    - gf_realloc
    - gf_malloc
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_AppendChunk(GF_SampleTableBox *stbl, u64 offset)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:1847,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1848,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1850,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1854,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 3
    argNames:
    - stbl
    - DescIndex
    - samplesInChunk
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1861
      start: 1829
    functionDepth: 1
    functionLinenumber: 1829
    functionLinenumberEnd: 1861
    functionName: stbl_AppendSampleToChunk
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - memset
    - gf_realloc
    - ALLOC_INC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_AppendSampleToChunk(GF_SampleTableBox *stbl, u32 DescIndex,
      u32 samplesInChunk)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:1874,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1878,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:1891,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1892,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1894,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 2
    argNames:
    - stbl
    - isRap
    argTypes:
    - GF_SampleTableBox*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1899
      start: 1864
    functionDepth: 5
    functionLinenumber: 1864
    functionLinenumberEnd: 1899
    functionName: stbl_AppendRAP
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - ALLOC_INC
    - gf_isom_box_new_parent
    - memset
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_AppendRAP(GF_SampleTableBox *stbl, u8 isRap)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/stbl_write.c:1907,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1915,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1917,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1923,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1929,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 11
    argNames:
    - mov
    - stbl
    - is_seg_start
    - seg_start_offset
    - frag_start_offset
    - tfdt
    - moof_template
    - moof_template_size
    - sidx_start
    - sidx_end
    - nb_pack_samples
    argTypes:
    - GF_ISOFile*
    - GF_SampleTableBox*
    - Bool
    - u64
    - u64
    - u64
    - u8*
    - u32
    - u64
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1944
      start: 1901
    functionDepth: 1
    functionLinenumber: 1901
    functionLinenumberEnd: 1944
    functionName: stbl_AppendTrafMap
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_free
    - memset
    - gf_realloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_AppendTrafMap(GF_ISOFile *mov, GF_SampleTableBox *stbl,
      Bool is_seg_start, u64 seg_start_offset, u64 frag_start_offset, u64 tfdt, u8
      *moof_template, u32 moof_template_size, u64 sidx_start, u64 sidx_end, u32 nb_pack_samples)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:1949,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1952,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - stbl
    - padding
    argTypes:
    - GF_SampleTableBox*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1957
      start: 1946
    functionDepth: 5
    functionLinenumber: 1946
    functionLinenumberEnd: 1957
    functionName: stbl_AppendPadding
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_realloc
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_AppendPadding(GF_SampleTableBox *stbl, u8 padding)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:2008,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:2012,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - stbl
    - DegradationPriority
    argTypes:
    - GF_SampleTableBox*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2017
      start: 2005
    functionDepth: 5
    functionLinenumber: 2005
    functionLinenumberEnd: 2017
    functionName: stbl_AppendDegradation
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_realloc
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_AppendDegradation(GF_SampleTableBox *stbl, u16 DegradationPriority)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:2023,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:2026,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - stbl
    - DepType
    argTypes:
    - GF_SampleTableBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2032
      start: 2020
    functionDepth: 5
    functionLinenumber: 2020
    functionLinenumberEnd: 2032
    functionName: stbl_AppendDepType
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    - gf_isom_box_new_parent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_AppendDepType(GF_SampleTableBox *stbl, u32 DepType)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/stbl_write.c:2068,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:2071,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/stbl_write.c:2073,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/stbl_write.c:2079,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:2082,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/stbl_write.c:2084,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/stbl_write.c:2093,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:2097,1
    - Dst: stbl_GetSampleInfos
      Src: /src/gpac/src/isomedia/stbl_write.c:2107,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/stbl_write.c:2127,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/stbl_write.c:2128,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/stbl_write.c:2129,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/stbl_write.c:2130,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/stbl_write.c:2138,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/stbl_write.c:2139,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/stbl_write.c:2147,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/stbl_write.c:2148,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/stbl_write.c:2149,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 93
    argCount: 1
    argNames:
    - stbl
    argTypes:
    - GF_SampleTableBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2151
      start: 2040
    functionDepth: 4
    functionLinenumber: 2040
    functionLinenumberEnd: 2151
    functionName: stbl_UnpackOffsets
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_isom_box_del
    - gf_list_add
    - gf_list_del_item
    - gf_isom_box_new
    - stbl_GetSampleInfos
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_UnpackOffsets(GF_SampleTableBox *stbl)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/stbl_write.c:2165,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/stbl_write.c:2166,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:2170,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/stbl_write.c:2172,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:2180,1
    - Dst: assert
      Src: /src/gpac/src/isomedia/stbl_write.c:2183,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/stbl_write.c:2186,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:2191,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:2192,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:2194,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:2203,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:2204,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:2206,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 47
    argCount: 3
    argNames:
    - stbl
    - old_stco
    - offset
    argTypes:
    - GF_SampleTableBox*
    - GF_Box**
    - u64
    assertStmts:
    - condition: (stbl->child_boxes)
      pos:
        line_end: 2182
        line_start: 2182
        source_file: /src/gpac/src/isomedia/stbl_write.c
    constantsTouched: []
    func_position:
      end: 2212
      start: 2155
    functionDepth: 5
    functionLinenumber: 2155
    functionLinenumberEnd: 2212
    functionName: stbl_AddOffset
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_isom_box_del_parent
    - gf_isom_box_del
    - ALLOC_INC
    - gf_list_find
    - assert
    - memset
    - gf_isom_box_new
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE stbl_AddOffset(GF_SampleTableBox *stbl, GF_Box **old_stco,
      u64 offset)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: stbl_AddOffset
      Src: /src/gpac/src/isomedia/stbl_write.c:2269,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:2273,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:2274,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:2276,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 53
    argCount: 8
    argNames:
    - stbl
    - sampleNumber
    - StreamDescIndex
    - the_stsc
    - the_stco
    - data_offset
    - forceNewChunk
    - nb_samp
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32
    - GF_SampleToChunkBox*
    - GF_Box**
    - u64
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2296
      start: 2218
    functionDepth: 6
    functionLinenumber: 2218
    functionLinenumberEnd: 2296
    functionName: stbl_SetChunkAndOffset
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 3
    functionsReached:
    - stbl_AddOffset
    - memset
    - gf_realloc
    - ALLOC_INC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_SetChunkAndOffset(GF_SampleTableBox *stbl, u32 sampleNumber,
      u32 StreamDescIndex, GF_SampleToChunkBox *the_stsc, GF_Box **the_stco, u64 data_offset,
      Bool forceNewChunk, u32 nb_samp)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/stbl_write.c:2304,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:2318,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2323
      start: 2298
    functionDepth: 0
    functionLinenumber: 2298
    functionLinenumberEnd: 2323
    functionName: gf_isom_refresh_size_info
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_refresh_size_info(GF_ISOFile *file, u32 trackNumber)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - val
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 46
    functionName: rgb_48_to_32
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 rgb_48_to_32(char *val)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/tx3g.c:57,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/tx3g.c:69,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/isomedia/tx3g.c:82,1
    - Dst: rgb_48_to_32
      Src: /src/gpac/src/isomedia/tx3g.c:86,1
    - Dst: rgb_48_to_32
      Src: /src/gpac/src/isomedia/tx3g.c:89,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/tx3g.c:95,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/tx3g.c:96,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/tx3g.c:107,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/tx3g.c:112,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 62
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - descriptionIndex
    - out_desc
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_TextSampleDescriptor**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 117
    functionName: gf_isom_get_text_description
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - rgb_48_to_32
    - gf_strdup
    - gf_odf_desc_new
    - gf_isom_get_track_box
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_text_description(GF_ISOFile *movie, u32 trackNumber,
      u32 descriptionIndex, GF_TextSampleDescriptor **out_desc)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/tx3g.c:138,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/tx3g.c:141,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/tx3g.c:153,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/tx3g.c:166,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/tx3g.c:176,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/tx3g.c:179,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/tx3g.c:182,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/tx3g.c:184,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/tx3g.c:186,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/tx3g.c:189,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 57
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - descriptionIndex
    - desc
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_TextSampleDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 129
    functionDepth: 5
    functionLinenumber: 129
    functionLinenumberEnd: 193
    functionName: gf_isom_update_text_description
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_strdup
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_update_text_description(GF_ISOFile *movie, u32 trackNumber,
      u32 descriptionIndex, GF_TextSampleDescriptor *desc)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/tx3g.c:204,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/tx3g.c:207,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/tx3g.c:220,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/tx3g.c:223,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/tx3g.c:227,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/tx3g.c:229,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/tx3g.c:232,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/tx3g.c:233,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/tx3g.c:241,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/tx3g.c:246,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/tx3g.c:250,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 53
    argCount: 6
    argNames:
    - movie
    - trackNumber
    - desc
    - URLname
    - URNname
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_TextSampleDescriptor*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 196
    functionDepth: 5
    functionLinenumber: 196
    functionLinenumberEnd: 253
    functionName: gf_isom_new_text_description
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - gf_strdup
    - gf_isom_box_new_parent
    - gf_list_count
    - Media_CreateDataRef
    - gf_isom_get_track_box
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_can_access_movie
    - gf_isom_get_mp4time
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_new_text_description(GF_ISOFile *movie, u32 trackNumber,
      GF_TextSampleDescriptor *desc, const char *URLname, const char *URNname, u32
      *outDescriptionIndex)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/tx3g.c:263,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/tx3g.c:264,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - samp
    - text_data
    - text_len
    argTypes:
    - GF_TextSample*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 267
    functionName: gf_isom_text_add_text
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_text_add_text(GF_TextSample *samp, char *text_data,
      u32 text_len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/tx3g.c:280,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - samp
    argTypes:
    - GF_TextSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 276
    functionDepth: 0
    functionLinenumber: 276
    functionLinenumberEnd: 286
    functionName: gf_isom_text_set_utf16_marker
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_text_set_utf16_marker(GF_TextSample *samp)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/tx3g.c:295,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/tx3g.c:298,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - samp
    - rec
    argTypes:
    - GF_TextSample*
    - GF_StyleRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 289
    functionDepth: 4
    functionLinenumber: 289
    functionLinenumberEnd: 303
    functionName: gf_isom_text_add_style
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_text_add_style(GF_TextSample *samp, GF_StyleRecord
      *rec)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/tx3g.c:312,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/tx3g.c:316,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - samp
    - start_char
    - end_char
    argTypes:
    - GF_TextSample*
    - u16
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 305
    functionDepth: 4
    functionLinenumber: 305
    functionLinenumberEnd: 317
    functionName: gf_isom_text_add_highlight
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_isom_box_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_text_add_highlight(GF_TextSample *samp, u16 start_char,
      u16 end_char)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/tx3g.c:326,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - samp
    - argb
    argTypes:
    - GF_TextSample*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 320
    functionDepth: 4
    functionLinenumber: 320
    functionLinenumberEnd: 331
    functionName: gf_isom_text_set_highlight_color
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_text_set_highlight_color(GF_TextSample *samp, u32
      argb)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/tx3g.c:338,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/tx3g.c:341,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - samp
    - start_time
    argTypes:
    - GF_TextSample*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 334
    functionDepth: 4
    functionLinenumber: 334
    functionLinenumberEnd: 342
    functionName: gf_isom_text_add_karaoke
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_isom_box_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_text_add_karaoke(GF_TextSample *samp, u32 start_time)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/tx3g.c:348,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - samp
    - end_time
    - start_char
    - end_char
    argTypes:
    - GF_TextSample*
    - u32
    - u16
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 344
    functionDepth: 0
    functionLinenumber: 344
    functionLinenumberEnd: 355
    functionName: gf_isom_text_set_karaoke_segment
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_text_set_karaoke_segment(GF_TextSample *samp, u32
      end_time, u16 start_char, u16 end_char)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/tx3g.c:362,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - samp
    - scroll_delay
    argTypes:
    - GF_TextSample*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 357
    functionDepth: 4
    functionLinenumber: 357
    functionLinenumberEnd: 367
    functionName: gf_isom_text_set_scroll_delay
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_text_set_scroll_delay(GF_TextSample *samp, u32 scroll_delay)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/tx3g.c:374,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/tx3g.c:378,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/tx3g.c:379,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/tx3g.c:380,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 5
    argNames:
    - samp
    - URL
    - altString
    - start_char
    - end_char
    argTypes:
    - GF_TextSample*
    - char*
    - char*
    - u16
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 369
    functionDepth: 4
    functionLinenumber: 369
    functionLinenumberEnd: 381
    functionName: gf_isom_text_add_hyperlink
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_list_add
    - gf_isom_box_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_text_add_hyperlink(GF_TextSample *samp, char *URL,
      char *altString, u16 start_char, u16 end_char)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/tx3g.c:388,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 5
    argNames:
    - samp
    - top
    - left
    - bottom
    - right
    argTypes:
    - GF_TextSample*
    - s16
    - s16
    - s16
    - s16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 383
    functionDepth: 4
    functionLinenumber: 383
    functionLinenumberEnd: 396
    functionName: gf_isom_text_set_box
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_text_set_box(GF_TextSample *samp, s16 top, s16 left,
      s16 bottom, s16 right)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/tx3g.c:403,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/tx3g.c:407,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - samp
    - start_char
    - end_char
    argTypes:
    - GF_TextSample*
    - u16
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 398
    functionDepth: 4
    functionLinenumber: 398
    functionLinenumberEnd: 408
    functionName: gf_isom_text_add_blink
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_isom_box_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_text_add_blink(GF_TextSample *samp, u16 start_char,
      u16 end_char)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/tx3g.c:415,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - samp
    - wrap_flags
    argTypes:
    - GF_TextSample*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 410
    functionDepth: 4
    functionLinenumber: 410
    functionLinenumberEnd: 420
    functionName: gf_isom_text_set_wrap
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_text_set_wrap(GF_TextSample *samp, u8 wrap_flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - samp
    - is_forced
    argTypes:
    - GF_TextSample*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 422
    functionDepth: 0
    functionLinenumber: 422
    functionLinenumberEnd: 428
    functionName: gf_isom_text_set_forced
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_text_set_forced(GF_TextSample *samp, Bool is_forced)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/tx3g.c:434,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/tx3g.c:435,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - a
    argTypes:
    - GF_BitStream*
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 430
    functionDepth: 3
    functionLinenumber: 430
    functionLinenumberEnd: 437
    functionName: gpp_write_modifier
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_size
    - gf_isom_box_write
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gpp_write_modifier(GF_BitStream *bs, GF_Box *a)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/tx3g.c:446,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/tx3g.c:447,1
    - Dst: gpp_write_modifier
      Src: /src/gpac/src/isomedia/tx3g.c:449,1
    - Dst: gpp_write_modifier
      Src: /src/gpac/src/isomedia/tx3g.c:450,1
    - Dst: gpp_write_modifier
      Src: /src/gpac/src/isomedia/tx3g.c:451,1
    - Dst: gpp_write_modifier
      Src: /src/gpac/src/isomedia/tx3g.c:452,1
    - Dst: gpp_write_modifier
      Src: /src/gpac/src/isomedia/tx3g.c:453,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/tx3g.c:456,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/tx3g.c:457,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/tx3g.c:463,1
    - Dst: gpp_write_modifier
      Src: /src/gpac/src/isomedia/tx3g.c:464,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 28
    argCount: 2
    argNames:
    - samp
    - bs
    argTypes:
    - GF_TextSample*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 439
    functionDepth: 4
    functionLinenumber: 439
    functionLinenumberEnd: 469
    functionName: gf_isom_text_sample_write_bs
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gpp_write_modifier
    - gf_bs_write_u32
    - gf_bs_write_data
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_text_sample_write_bs(const GF_TextSample *samp, GF_BitStream
      *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/tx3g.c:479,1
    - Dst: gf_isom_text_sample_write_bs
      Src: /src/gpac/src/isomedia/tx3g.c:481,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/tx3g.c:484,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/isomedia/tx3g.c:487,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/tx3g.c:489,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/tx3g.c:492,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/tx3g.c:493,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 471
    functionDepth: 5
    functionLinenumber: 471
    functionLinenumberEnd: 496
    functionName: GF_ISOSample *gf_isom_text_to_sample(const GF_TextSample *samp)
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_del
    - gf_isom_sample_new
    - gf_isom_text_sample_write_bs
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ISOSample *gf_isom_text_to_sample(const GF_TextSample
      *samp)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/tx3g.c:506,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/tx3g.c:510,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/tx3g.c:514,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/tx3g.c:518,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/tx3g.c:522,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/tx3g.c:529,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/tx3g.c:530,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 33
    argCount: 1
    argNames:
    - samp
    argTypes:
    - GF_TextSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 534
      start: 498
    functionDepth: 3
    functionLinenumber: 498
    functionLinenumberEnd: 534
    functionName: gf_isom_text_sample_size
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_isom_box_size
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_text_sample_size(GF_TextSample *samp)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/tx3g.c:556,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/tx3g.c:559,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/tx3g.c:571,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/tx3g.c:574,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/tx3g.c:586,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/tx3g.c:590,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/tx3g.c:591,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 53
    argCount: 6
    argNames:
    - movie
    - trackNumber
    - desc
    - outDescIdx
    - same_box
    - same_styles
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_TextSampleDescriptor*
    - u32*
    - Bool*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 596
      start: 545
    functionDepth: 1
    functionLinenumber: 545
    functionLinenumberEnd: 596
    functionName: gf_isom_text_has_similar_description
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - memcmp
    - gf_list_count
    - strcmp
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_text_has_similar_description(GF_ISOFile *movie, u32
      trackNumber, GF_TextSampleDescriptor *desc, u32 *outDescIdx, Bool *same_box,
      Bool *same_styles)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/tx3g.c:605,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/tx3g.c:607,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 601
    functionDepth: 1
    functionLinenumber: 601
    functionLinenumberEnd: 609
    functionName: GF_TextSample *gf_isom_new_text_sample()
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_TextSample *gf_isom_new_text_sample()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/tx3g.c:615,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/tx3g.c:617,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/tx3g.c:619,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/tx3g.c:621,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/tx3g.c:623,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/tx3g.c:626,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/tx3g.c:627,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/tx3g.c:628,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/tx3g.c:629,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 1
    argNames:
    - samp
    argTypes:
    - GF_TextSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 633
      start: 611
    functionDepth: 4
    functionLinenumber: 611
    functionLinenumberEnd: 633
    functionName: gf_isom_text_reset_styles
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_rem
    - gf_isom_box_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_text_reset_styles(GF_TextSample *samp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/tx3g.c:639,1
    - Dst: gf_isom_text_reset_styles
      Src: /src/gpac/src/isomedia/tx3g.c:642,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - samp
    argTypes:
    - GF_TextSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 635
    functionDepth: 5
    functionLinenumber: 635
    functionLinenumberEnd: 643
    functionName: gf_isom_text_reset
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_text_reset_styles
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_text_reset(GF_TextSample *samp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_text_reset
      Src: /src/gpac/src/isomedia/tx3g.c:648,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/tx3g.c:649,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/tx3g.c:650,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - tx_samp
    argTypes:
    - GF_TextSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 651
      start: 645
    functionDepth: 6
    functionLinenumber: 645
    functionLinenumberEnd: 651
    functionName: gf_isom_delete_text_sample
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 5
    functionsReached:
    - gf_free
    - gf_list_del
    - gf_isom_text_reset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_delete_text_sample(GF_TextSample * tx_samp)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_new_text_sample
      Src: /src/gpac/src/isomedia/tx3g.c:656,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/tx3g.c:659,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/tx3g.c:661,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/tx3g.c:665,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/tx3g.c:669,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/tx3g.c:672,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/isomedia/tx3g.c:674,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/tx3g.c:676,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/tx3g.c:685,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/tx3g.c:688,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/tx3g.c:689,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/tx3g.c:691,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/tx3g.c:702,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/tx3g.c:705,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/tx3g.c:709,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/tx3g.c:713,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/tx3g.c:717,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/tx3g.c:722,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/tx3g.c:725,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 71
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 653
    functionDepth: 4
    functionLinenumber: 653
    functionLinenumberEnd: 730
    functionName: GF_TextSample *gf_isom_parse_text_sample(GF_BitStream *bs)
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_isom_new_text_sample
    - gf_bs_read_data
    - gf_isom_box_del
    - memcpy
    - gf_realloc
    - gf_list_add
    - gf_bs_read_u16
    - gf_bs_available
    - gf_malloc
    - gf_isom_box_parse
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_TextSample *gf_isom_parse_text_sample(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_new_text_sample
      Src: /src/gpac/src/isomedia/tx3g.c:739,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/tx3g.c:742,1
    - Dst: gf_isom_parse_text_sample
      Src: /src/gpac/src/isomedia/tx3g.c:743,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/tx3g.c:744,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - data
    - dataLength
    argTypes:
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 746
      start: 733
    functionDepth: 1
    functionLinenumber: 733
    functionLinenumberEnd: 746
    functionName: gf_isom_parse_text_sample_from_data
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_isom_new_text_sample
    - gf_bs_del
    - gf_bs_new
    - gf_isom_parse_text_sample
    linkageType: ''
    returnType: GF_TextSample
    signature: GF_TextSample *gf_isom_parse_text_sample_from_data(u8 *data, u32 dataLength)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/tx3g.c:765,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/tx3g.c:779,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/tx3g.c:783,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/tx3g.c:784,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/tx3g.c:785,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/tx3g.c:786,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/tx3g.c:787,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/tx3g.c:790,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/tx3g.c:791,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/tx3g.c:792,1
    - Dst: gpp_write_rgba
      Src: /src/gpac/src/isomedia/tx3g.c:793,1
    - Dst: rgb_48_to_32
      Src: /src/gpac/src/isomedia/tx3g.c:793,1
    - Dst: gpp_write_box
      Src: /src/gpac/src/isomedia/tx3g.c:794,1
    - Dst: rgb_48_to_32
      Src: /src/gpac/src/isomedia/tx3g.c:795,1
    - Dst: gpp_write_style
      Src: /src/gpac/src/isomedia/tx3g.c:797,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/tx3g.c:799,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/tx3g.c:800,1
    - Dst: gpp_write_rgba
      Src: /src/gpac/src/isomedia/tx3g.c:801,1
    - Dst: gpp_write_box
      Src: /src/gpac/src/isomedia/tx3g.c:802,1
    - Dst: gpp_write_style
      Src: /src/gpac/src/isomedia/tx3g.c:803,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/tx3g.c:807,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/tx3g.c:808,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/tx3g.c:810,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/tx3g.c:813,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/tx3g.c:815,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/tx3g.c:816,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/tx3g.c:817,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/tx3g.c:819,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/tx3g.c:822,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/tx3g.c:824,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/tx3g.c:825,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/tx3g.c:826,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/tx3g.c:828,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 62
    argCount: 4
    argNames:
    - _a
    - bs
    - sidx
    - sidx_offset
    argTypes:
    - GF_Tx3gSampleEntryBox*
    - GF_BitStream*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 754
    functionDepth: 3
    functionLinenumber: 754
    functionLinenumberEnd: 832
    functionName: gf_isom_write_tx3g
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - rgb_48_to_32
    - gf_bs_write_u16
    - gpp_write_rgba
    - gf_bs_write_data
    - memset
    - gf_bs_write_u8
    - gpp_write_box
    - gf_bs_write_u32
    - strlen
    - gpp_write_style
    linkageType: ''
    returnType: void
    signature: void gf_isom_write_tx3g(GF_Tx3gSampleEntryBox *_a, GF_BitStream *bs,
      u32 sidx, u32 sidx_offset)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/tx3g.c:845,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/tx3g.c:848,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/tx3g.c:852,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/tx3g.c:856,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/tx3g.c:858,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/tx3g.c:860,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/isomedia/tx3g.c:861,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/tx3g.c:862,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/tx3g.c:863,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/tx3g.c:864,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/tx3g.c:869,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/tx3g.c:874,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/tx3g.c:876,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/tx3g.c:877,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/tx3g.c:878,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/tx3g.c:879,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/tx3g.c:882,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/tx3g.c:885,1
    - Dst: gf_isom_write_tx3g
      Src: /src/gpac/src/isomedia/tx3g.c:887,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/tx3g.c:892,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/tx3g.c:893,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/tx3g.c:896,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/tx3g.c:899,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/tx3g.c:902,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/tx3g.c:903,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 50
    argCount: 2
    argNames:
    - mdia
    - out_esd
    argTypes:
    - GF_MediaBox*
    - GF_ESD**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 906
      start: 834
    functionDepth: 4
    functionLinenumber: 834
    functionLinenumberEnd: 906
    functionName: gf_isom_get_ttxt_esd
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_bs_write_u24
    - gf_bs_new
    - gf_odf_desc_esd_new
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_bs_del
    - gf_list_count
    - gf_list_enum
    - gf_isom_write_tx3g
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_get_ttxt_esd(GF_MediaBox *mdia, GF_ESD **out_esd)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/tx3g.c:915,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/tx3g.c:916,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/tx3g.c:917,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/tx3g.c:931,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/tx3g.c:932,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/tx3g.c:933,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/tx3g.c:934,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/tx3g.c:935,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/tx3g.c:936,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/isomedia/tx3g.c:937,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/tx3g.c:939,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/tx3g.c:940,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/tx3g.c:942,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/tx3g.c:944,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/tx3g.c:945,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 3
    argNames:
    - samp
    - sampleDescriptionIndex
    - sample_dur
    argTypes:
    - GF_ISOSample*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 947
      start: 908
    functionDepth: 1
    functionLinenumber: 908
    functionLinenumberEnd: 947
    functionName: gf_isom_rewrite_text_sample
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_bs_write_u24
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_u16
    - gf_bs_write_int
    - gf_bs_del
    - gf_bs_write_data
    - gf_bs_read_u16
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_rewrite_text_sample(GF_ISOSample *samp, u32 sampleDescriptionIndex,
      u32 sample_dur)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/tx3g.c:958,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/tx3g.c:961,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/tx3g.c:965,1
    - Dst: gf_isom_write_tx3g
      Src: /src/gpac/src/isomedia/tx3g.c:966,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/tx3g.c:967,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/tx3g.c:968,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 6
    argNames:
    - file
    - track
    - sidx
    - sidx_offset
    - tx3g
    - tx3g_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 970
      start: 950
    functionDepth: 4
    functionLinenumber: 950
    functionLinenumberEnd: 970
    functionName: gf_isom_text_get_encoded_tx3g
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_del
    - gf_isom_get_track_box
    - gf_isom_write_tx3g
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_text_get_encoded_tx3g(GF_ISOFile *file, u32 track, u32
      sidx, u32 sidx_offset, u8 **tx3g, u32 *tx3g_size)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/tx3g.c:978,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/tx3g.c:981,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 4
    argNames:
    - file
    - track
    - stsd_idx
    - flags
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 999
      start: 972
    functionDepth: 1
    functionLinenumber: 972
    functionLinenumberEnd: 999
    functionName: gf_isom_set_forced_text
    functionSourceFile: /src/gpac/src/isomedia/tx3g.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_forced_text(GF_ISOFile *file, u32 track, u32
      stsd_idx, u32 flags)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/ttml.c:39,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/ttml.c:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - samp
    - text_data
    - text_len
    argTypes:
    - GF_GenericSubtitleSample*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 43
    functionName: gf_isom_xml_subtitle_sample_add_text
    functionSourceFile: /src/gpac/src/isomedia/ttml.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_xml_subtitle_sample_add_text(GF_GenericSubtitleSample
      *samp, char *text_data, u32 text_len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/ttml.c:56,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/ttml.c:58,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/ttml.c:59,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/isomedia/ttml.c:61,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/ttml.c:63,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/ttml.c:66,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/ttml.c:67,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - samp
    argTypes:
    - GF_GenericSubtitleSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 70
    functionName: gf_isom_xml_subtitle_to_sample
    functionSourceFile: /src/gpac/src/isomedia/ttml.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_del
    - gf_bs_write_data
    - gf_isom_sample_new
    linkageType: ''
    returnType: GF_ISOSample
    signature: GF_ISOSample *gf_isom_xml_subtitle_to_sample(GF_GenericSubtitleSample
      *samp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/ttml.c:75,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 78
    functionName: gf_isom_new_xml_subtitle_sample
    functionSourceFile: /src/gpac/src/isomedia/ttml.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_GenericSubtitleSample
    signature: GF_GenericSubtitleSample *gf_isom_new_xml_subtitle_sample()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/ttml.c:83,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - samp
    argTypes:
    - GF_GenericSubtitleSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 87
    functionName: gf_isom_xml_subtitle_reset
    functionSourceFile: /src/gpac/src/isomedia/ttml.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_xml_subtitle_reset(GF_GenericSubtitleSample *samp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_xml_subtitle_reset
      Src: /src/gpac/src/isomedia/ttml.c:92,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/ttml.c:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - samp
    argTypes:
    - GF_GenericSubtitleSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 94
    functionName: gf_isom_delete_xml_subtitle_sample
    functionSourceFile: /src/gpac/src/isomedia/ttml.c
    functionUses: 0
    functionsReached:
    - gf_isom_xml_subtitle_reset
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_delete_xml_subtitle_sample(GF_GenericSubtitleSample
      * samp)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_new_xml_subtitle_sample
      Src: /src/gpac/src/isomedia/ttml.c:99,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/ttml.c:102,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/ttml.c:104,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/ttml.c:108,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/ttml.c:112,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 115
    functionName: GF_GenericSubtitleSample *gf_isom_parse_xml_subtitle_sample(GF_BitStream
      *bs)
    functionSourceFile: /src/gpac/src/isomedia/ttml.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_isom_new_xml_subtitle_sample
    - gf_bs_read_u16
    - gf_bs_available
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_GenericSubtitleSample *gf_isom_parse_xml_subtitle_sample(GF_BitStream
      *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_new_xml_subtitle_sample
      Src: /src/gpac/src/isomedia/ttml.c:123,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/ttml.c:126,1
    - Dst: gf_isom_parse_xml_subtitle_sample
      Src: /src/gpac/src/isomedia/ttml.c:127,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/ttml.c:128,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - data
    - dataLength
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 117
    functionDepth: 2
    functionLinenumber: 117
    functionLinenumberEnd: 130
    functionName: gf_isom_parse_xml_subtitle_sample_from_data
    functionSourceFile: /src/gpac/src/isomedia/ttml.c
    functionUses: 0
    functionsReached:
    - gf_isom_parse_xml_subtitle_sample
    - gf_isom_new_xml_subtitle_sample
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_GenericSubtitleSample
    signature: GF_GenericSubtitleSample *gf_isom_parse_xml_subtitle_sample_from_data(char
      *data, u32 dataLength)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 1
    argNames:
    - trak
    argTypes:
    - GF_TrackBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 41
    functionName: IsHintTrack
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool IsHintTrack(GF_TrackBox *trak)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:50,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 1
    argNames:
    - trak
    argTypes:
    - GF_TrackBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 56
    functionName: GetHintFormat
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: u32
    signature: u32 GetHintFormat(GF_TrackBox *trak)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: IsHintTrack
      Src: /src/gpac/src/isomedia/hint_track.c:60,1
    - Dst: GetHintFormat
      Src: /src/gpac/src/isomedia/hint_track.c:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - trak
    - HintType
    argTypes:
    - GF_TrackBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 58
    functionDepth: 2
    functionLinenumber: 58
    functionLinenumberEnd: 63
    functionName: CheckHintFormat
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - IsHintTrack
    - GetHintFormat
    linkageType: ''
    returnType: Bool
    signature: Bool CheckHintFormat(GF_TrackBox *trak, u32 HintType)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_hint_sample_size
      Src: /src/gpac/src/isomedia/hint_track.c:72,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:73,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:76,1
    - Dst: gf_isom_hint_pck_offset
      Src: /src/gpac/src/isomedia/hint_track.c:79,1
    - Dst: gf_isom_hint_pck_length
      Src: /src/gpac/src/isomedia/hint_track.c:83,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - entry
    - HintSampleNumber
    argTypes:
    - GF_HintSampleEntryBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 67
    functionDepth: 4
    functionLinenumber: 67
    functionLinenumberEnd: 87
    functionName: AdjustHintInfo
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_hint_pck_offset
    - gf_isom_hint_sample_size
    - gf_list_count
    - gf_isom_hint_pck_length
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AdjustHintInfo(GF_HintSampleEntryBox *entry, u32 HintSampleNumber)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/hint_track.c:108,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hint_track.c:111,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/isomedia/hint_track.c:112,1
    - Dst: IsHintTrack
      Src: /src/gpac/src/isomedia/hint_track.c:115,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/hint_track.c:127,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/hint_track.c:129,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/hint_track.c:135,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/hint_track.c:141,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/hint_track.c:150,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/hint_track.c:152,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/hint_track.c:158,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/hint_track.c:158,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 53
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - HintType
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_ISOHintFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 89
    functionDepth: 5
    functionLinenumber: 89
    functionLinenumberEnd: 166
    functionName: gf_isom_setup_hint_track
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - udta_on_child_box_ex
    - gf_isom_last_error
    - trak_on_child_box
    - IsHintTrack
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - gf_isom_box_new
    - Track_FindRef
    - gf_isom_can_access_movie
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_setup_hint_track(GF_ISOFile *movie, u32 trackNumber,
      GF_ISOHintFormat HintType)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/hint_track.c:179,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hint_track.c:182,1
    - Dst: IsHintTrack
      Src: /src/gpac/src/isomedia/hint_track.c:184,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/hint_track.c:188,1
    - Dst: GetHintFormat
      Src: /src/gpac/src/isomedia/hint_track.c:188,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/hint_track.c:195,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:199,1
    - Dst: CheckHintFormat
      Src: /src/gpac/src/isomedia/hint_track.c:202,1
    - Dst: gf_isom_rtp_set_timescale
      Src: /src/gpac/src/isomedia/hint_track.c:203,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/hint_track.c:209,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 37
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - HintTrackVersion
    - LastCompatibleVersion
    - Rely
    - HintDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - s32
    - s32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 169
    functionDepth: 5
    functionLinenumber: 169
    functionLinenumberEnd: 217
    functionName: gf_isom_new_hint_description
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - GetHintFormat
    - CheckHintFormat
    - IsHintTrack
    - gf_isom_rtp_set_timescale
    - gf_isom_box_new_parent
    - gf_list_count
    - Media_CreateDataRef
    - gf_isom_get_track_box
    - gf_isom_can_access_movie
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_new_hint_description(GF_ISOFile *the_file, u32 trackNumber,
      s32 HintTrackVersion, s32 LastCompatibleVersion, u8 Rely, u32 *HintDescriptionIndex)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hint_track.c:233,1
    - Dst: CheckHintFormat
      Src: /src/gpac/src/isomedia/hint_track.c:234,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:237,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:240,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:243,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/hint_track.c:250,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - HintDescriptionIndex
    - TimeScale
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 225
    functionDepth: 5
    functionLinenumber: 225
    functionLinenumberEnd: 254
    functionName: gf_isom_rtp_set_timescale
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - CheckHintFormat
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_rtp_set_timescale(GF_ISOFile *the_file, u32 trackNumber,
      u32 HintDescriptionIndex, u32 TimeScale)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hint_track.c:266,1
    - Dst: CheckHintFormat
      Src: /src/gpac/src/isomedia/hint_track.c:267,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:270,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:272,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:275,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/hint_track.c:282,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - HintDescriptionIndex
    - TimeOffset
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 258
    functionDepth: 5
    functionLinenumber: 258
    functionLinenumberEnd: 287
    functionName: gf_isom_rtp_set_time_offset
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - CheckHintFormat
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_rtp_set_time_offset(GF_ISOFile *the_file, u32 trackNumber,
      u32 HintDescriptionIndex, u32 TimeOffset)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hint_track.c:299,1
    - Dst: CheckHintFormat
      Src: /src/gpac/src/isomedia/hint_track.c:300,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:303,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:305,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:308,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/hint_track.c:315,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - HintDescriptionIndex
    - SequenceNumberOffset
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 291
    functionDepth: 5
    functionLinenumber: 291
    functionLinenumberEnd: 319
    functionName: gf_isom_rtp_set_time_sequence_offset
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - CheckHintFormat
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_rtp_set_time_sequence_offset(GF_ISOFile *the_file,
      u32 trackNumber, u32 HintDescriptionIndex, u32 SequenceNumberOffset)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hint_track.c:332,1
    - Dst: IsHintTrack
      Src: /src/gpac/src/isomedia/hint_track.c:333,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/hint_track.c:343,1
    - Dst: gf_isom_hint_sample_new
      Src: /src/gpac/src/isomedia/hint_track.c:351,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - HintDescriptionIndex
    - TransmissionTime
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 323
    functionDepth: 5
    functionLinenumber: 323
    functionLinenumberEnd: 359
    functionName: gf_isom_begin_hint_sample
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - gf_isom_hint_sample_new
    - gf_isom_get_track_box
    - IsHintTrack
    - Media_GetSampleDesc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_begin_hint_sample(GF_ISOFile *the_file, u32 trackNumber,
      u32 HintDescriptionIndex, u32 TransmissionTime)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hint_track.c:374,1
    - Dst: IsHintTrack
      Src: /src/gpac/src/isomedia/hint_track.c:375,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/hint_track.c:377,1
    - Dst: AdjustHintInfo
      Src: /src/gpac/src/isomedia/hint_track.c:383,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/hint_track.c:387,1
    - Dst: gf_isom_hint_sample_write
      Src: /src/gpac/src/isomedia/hint_track.c:388,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/hint_track.c:390,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/isomedia/hint_track.c:393,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/hint_track.c:398,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/hint_track.c:399,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/isomedia/hint_track.c:402,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/hint_track.c:403,1
    - Dst: gf_isom_hint_sample_del
      Src: /src/gpac/src/isomedia/hint_track.c:406,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - IsRandomAccessPoint
    argTypes:
    - GF_ISOFile*
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 364
    functionDepth: 7
    functionLinenumber: 364
    functionLinenumberEnd: 409
    functionName: gf_isom_end_hint_sample
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_get_content
    - IsHintTrack
    - gf_isom_sample_del
    - AdjustHintInfo
    - gf_bs_del
    - gf_isom_sample_new
    - gf_isom_add_sample
    - gf_isom_hint_sample_write
    - gf_isom_get_track_box
    - Media_GetSampleDesc
    - gf_isom_hint_sample_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_end_hint_sample(GF_ISOFile *the_file, u32 trackNumber,
      u8 IsRandomAccessPoint)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hint_track.c:423,1
    - Dst: IsHintTrack
      Src: /src/gpac/src/isomedia/hint_track.c:424,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/hint_track.c:426,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:429,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:431,1
    - Dst: NewDTE
      Src: /src/gpac/src/isomedia/hint_track.c:433,1
    - Dst: gf_isom_hint_pck_add_dte
      Src: /src/gpac/src/isomedia/hint_track.c:434,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - AtBegin
    argTypes:
    - GF_ISOFile*
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 435
      start: 413
    functionDepth: 2
    functionLinenumber: 413
    functionLinenumberEnd: 435
    functionName: gf_isom_hint_blank_data
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - NewDTE
    - gf_isom_hint_pck_add_dte
    - IsHintTrack
    - gf_list_count
    - gf_isom_get_track_box
    - Media_GetSampleDesc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_hint_blank_data(GF_ISOFile *the_file, u32 trackNumber,
      u8 AtBegin)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hint_track.c:452,1
    - Dst: IsHintTrack
      Src: /src/gpac/src/isomedia/hint_track.c:453,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/hint_track.c:455,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:458,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:460,1
    - Dst: NewDTE
      Src: /src/gpac/src/isomedia/hint_track.c:462,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/hint_track.c:463,1
    - Dst: gf_isom_hint_pck_add_dte
      Src: /src/gpac/src/isomedia/hint_track.c:465,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 5
    argNames:
    - the_file
    - trackNumber
    - data
    - dataLength
    - AtBegin
    argTypes:
    - GF_ISOFile*
    - u32
    - u8*
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 440
    functionDepth: 2
    functionLinenumber: 440
    functionLinenumberEnd: 466
    functionName: gf_isom_hint_direct_data
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - NewDTE
    - memcpy
    - IsHintTrack
    - gf_isom_hint_pck_add_dte
    - gf_list_count
    - gf_isom_get_track_box
    - Media_GetSampleDesc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_hint_direct_data(GF_ISOFile *the_file, u32 trackNumber,
      u8 *data, u32 dataLength, u8 AtBegin)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hint_track.c:480,1
    - Dst: IsHintTrack
      Src: /src/gpac/src/isomedia/hint_track.c:481,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/hint_track.c:484,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:487,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:489,1
    - Dst: NewDTE
      Src: /src/gpac/src/isomedia/hint_track.c:491,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/hint_track.c:500,1
    - Dst: reftype_AddRefTrack
      Src: /src/gpac/src/isomedia/hint_track.c:502,1
    - Dst: DelDTE
      Src: /src/gpac/src/isomedia/hint_track.c:511,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/hint_track.c:519,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/hint_track.c:522,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/hint_track.c:523,1
    - Dst: gf_isom_hint_pck_offset
      Src: /src/gpac/src/isomedia/hint_track.c:525,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/hint_track.c:527,1
    - Dst: gf_isom_hint_pck_add_dte
      Src: /src/gpac/src/isomedia/hint_track.c:535,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 47
    argCount: 8
    argNames:
    - the_file
    - trackNumber
    - SourceTrackID
    - SampleNumber
    - DataLength
    - offsetInSample
    - extra_data
    - AtBegin
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_ISOTrackID
    - u32
    - u16
    - u32
    - u8*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 468
    functionDepth: 2
    functionLinenumber: 468
    functionLinenumberEnd: 536
    functionName: gf_isom_hint_sample_data
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - memmove
    - gf_isom_hint_pck_offset
    - NewDTE
    - memcpy
    - IsHintTrack
    - reftype_AddRefTrack
    - DelDTE
    - gf_isom_hint_pck_add_dte
    - gf_list_count
    - Track_FindRef
    - gf_isom_get_track_box
    - Media_GetSampleDesc
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_hint_sample_data(GF_ISOFile *the_file, u32 trackNumber,
      GF_ISOTrackID SourceTrackID, u32 SampleNumber, u16 DataLength, u32 offsetInSample,
      u8 *extra_data, u8 AtBegin)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hint_track.c:550,1
    - Dst: IsHintTrack
      Src: /src/gpac/src/isomedia/hint_track.c:551,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/hint_track.c:553,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:556,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:558,1
    - Dst: NewDTE
      Src: /src/gpac/src/isomedia/hint_track.c:560,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/hint_track.c:568,1
    - Dst: reftype_AddRefTrack
      Src: /src/gpac/src/isomedia/hint_track.c:570,1
    - Dst: gf_isom_hint_pck_add_dte
      Src: /src/gpac/src/isomedia/hint_track.c:575,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 7
    argNames:
    - the_file
    - trackNumber
    - SourceTrackID
    - StreamDescriptionIndex
    - DataLength
    - offsetInDescription
    - AtBegin
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_ISOTrackID
    - u32
    - u16
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 538
    functionDepth: 2
    functionLinenumber: 538
    functionLinenumberEnd: 576
    functionName: gf_isom_hint_sample_description_data
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - NewDTE
    - gf_isom_hint_pck_add_dte
    - IsHintTrack
    - reftype_AddRefTrack
    - gf_list_count
    - Track_FindRef
    - gf_isom_get_track_box
    - Media_GetSampleDesc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_hint_sample_description_data(GF_ISOFile *the_file,
      u32 trackNumber, GF_ISOTrackID SourceTrackID, u32 StreamDescriptionIndex, u16
      DataLength, u32 offsetInDescription, u8 AtBegin)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hint_track.c:592,1
    - Dst: CheckHintFormat
      Src: /src/gpac/src/isomedia/hint_track.c:593,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/hint_track.c:595,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:599,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:601,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 7
    argNames:
    - the_file
    - trackNumber
    - PackingBit
    - eXtensionBit
    - MarkerBit
    - disposable_packet
    - IsRepeatedPacket
    argTypes:
    - GF_ISOFile*
    - u32
    - u8
    - u8
    - u8
    - u8
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 578
    functionDepth: 3
    functionLinenumber: 578
    functionLinenumberEnd: 609
    functionName: gf_isom_rtp_packet_set_flags
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - CheckHintFormat
    - gf_list_count
    - gf_isom_get_track_box
    - Media_GetSampleDesc
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_rtp_packet_set_flags(GF_ISOFile *the_file, u32 trackNumber,\n
      \                                   u8 PackingBit,\n                                    u8
      eXtensionBit,\n                                    u8 MarkerBit,\n                                    u8
      disposable_packet,\n                                    u8 IsRepeatedPacket)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hint_track.c:628,1
    - Dst: CheckHintFormat
      Src: /src/gpac/src/isomedia/hint_track.c:629,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/hint_track.c:631,1
    - Dst: gf_isom_hint_pck_new
      Src: /src/gpac/src/isomedia/hint_track.c:635,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/hint_track.c:645,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 10
    argNames:
    - the_file
    - trackNumber
    - relativeTime
    - PackingBit
    - eXtensionBit
    - MarkerBit
    - PayloadType
    - B_frame
    - IsRepeatedPacket
    - SequenceNumber
    argTypes:
    - GF_ISOFile*
    - u32
    - s32
    - u8
    - u8
    - u8
    - u8
    - u8
    - u8
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 646
      start: 611
    functionDepth: 3
    functionLinenumber: 611
    functionLinenumberEnd: 646
    functionName: gf_isom_rtp_packet_begin
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - CheckHintFormat
    - gf_list_add
    - gf_isom_get_track_box
    - Media_GetSampleDesc
    - gf_isom_hint_pck_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_rtp_packet_begin(GF_ISOFile *the_file, u32 trackNumber,\n
      \                               s32 relativeTime,\n                                u8
      PackingBit,\n                                u8 eXtensionBit,\n                                u8
      MarkerBit,\n                                u8 PayloadType,\n                                u8
      B_frame,\n                                u8 IsRepeatedPacket,\n                                u16
      SequenceNumber)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hint_track.c:662,1
    - Dst: CheckHintFormat
      Src: /src/gpac/src/isomedia/hint_track.c:663,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/hint_track.c:665,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:669,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:669,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/hint_track.c:674,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/hint_track.c:681,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/hint_track.c:685,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - timeOffset
    argTypes:
    - GF_ISOFile*
    - u32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 686
      start: 652
    functionDepth: 4
    functionLinenumber: 652
    functionLinenumberEnd: 686
    functionName: gf_isom_rtp_packet_set_offset
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - CheckHintFormat
    - gf_list_count
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_get_track_box
    - gf_list_enum
    - Media_GetSampleDesc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_rtp_packet_set_offset(GF_ISOFile *the_file, u32 trackNumber,
      s32 timeOffset)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:692,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:697,1
    - Dst: strchr
      Src: /src/gpac/src/isomedia/hint_track.c:698,1
    - Dst: strchr
      Src: /src/gpac/src/isomedia/hint_track.c:699,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/hint_track.c:700,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/hint_track.c:700,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/hint_track.c:701,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/hint_track.c:705,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 3
    argNames:
    - list
    - sdp_text
    - is_movie_sdp
    argTypes:
    - GF_List*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 689
    functionDepth: 1
    functionLinenumber: 689
    functionLinenumberEnd: 706
    functionName: AddSDPLine
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_get
    - gf_list_count
    - gf_list_add
    - strchr
    - strlen
    linkageType: ''
    returnType: void
    signature: void AddSDPLine(GF_List *list, char *sdp_text, Bool is_movie_sdp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/hint_track.c:711,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/hint_track.c:715,1
    - Dst: AddSDPLine
      Src: /src/gpac/src/isomedia/hint_track.c:719,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/hint_track.c:719,1
    - Dst: AddSDPLine
      Src: /src/gpac/src/isomedia/hint_track.c:724,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/hint_track.c:724,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/hint_track.c:728,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:729,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:730,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/hint_track.c:731,1
    - Dst: strcat
      Src: /src/gpac/src/isomedia/hint_track.c:732,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/hint_track.c:733,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/hint_track.c:735,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 2
    argNames:
    - sdp_text
    - is_movie_sdp
    argTypes:
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 736
      start: 708
    functionDepth: 2
    functionLinenumber: 708
    functionLinenumberEnd: 736
    functionName: ReorderSDP
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_free
    - gf_list_new
    - gf_strdup
    - gf_list_get
    - AddSDPLine
    - strcpy
    - strstr
    - gf_list_count
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void ReorderSDP(char *sdp_text, Bool is_movie_sdp)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hint_track.c:749,1
    - Dst: CheckHintFormat
      Src: /src/gpac/src/isomedia/hint_track.c:753,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/hint_track.c:755,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:759,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:761,1
    - Dst: hnti_on_child_box
      Src: /src/gpac/src/isomedia/hint_track.c:763,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/hint_track.c:763,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/hint_track.c:769,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/hint_track.c:769,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/hint_track.c:772,1
    - Dst: strcat
      Src: /src/gpac/src/isomedia/hint_track.c:773,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/hint_track.c:776,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/hint_track.c:776,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/hint_track.c:776,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/hint_track.c:779,1
    - Dst: strcat
      Src: /src/gpac/src/isomedia/hint_track.c:780,1
    - Dst: strcat
      Src: /src/gpac/src/isomedia/hint_track.c:781,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/hint_track.c:782,1
    - Dst: ReorderSDP
      Src: /src/gpac/src/isomedia/hint_track.c:783,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - text
    argTypes:
    - GF_ISOFile*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 786
      start: 739
    functionDepth: 5
    functionLinenumber: 739
    functionLinenumberEnd: 786
    functionName: gf_isom_sdp_add_track_line
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 1
    functionsReached:
    - strcat
    - gf_free
    - gf_list_get
    - ReorderSDP
    - CheckHintFormat
    - hnti_on_child_box
    - strcpy
    - strlen
    - gf_isom_box_new_parent
    - gf_list_count
    - udta_getEntry
    - gf_isom_get_track_box
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_sdp_add_track_line(GF_ISOFile *the_file, u32 trackNumber,
      const char *text)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hint_track.c:796,1
    - Dst: CheckHintFormat
      Src: /src/gpac/src/isomedia/hint_track.c:800,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/hint_track.c:802,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:806,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:808,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/hint_track.c:811,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 814
      start: 789
    functionDepth: 3
    functionLinenumber: 789
    functionLinenumberEnd: 814
    functionName: gf_isom_sdp_clean_track
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - CheckHintFormat
    - gf_list_count
    - udta_getEntry
    - gf_isom_get_track_box
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_sdp_clean_track(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/hint_track.c:832,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/hint_track.c:832,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/hint_track.c:836,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/hint_track.c:838,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/hint_track.c:838,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/hint_track.c:840,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:844,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/hint_track.c:845,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/hint_track.c:845,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:848,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:850,1
    - Dst: gf_isom_box_new_ex
      Src: /src/gpac/src/isomedia/hint_track.c:853,1
    - Dst: hnti_on_child_box
      Src: /src/gpac/src/isomedia/hint_track.c:855,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/hint_track.c:856,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/hint_track.c:857,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/hint_track.c:862,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/hint_track.c:862,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/hint_track.c:865,1
    - Dst: strcat
      Src: /src/gpac/src/isomedia/hint_track.c:866,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/hint_track.c:869,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/hint_track.c:869,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/hint_track.c:869,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/hint_track.c:872,1
    - Dst: strcat
      Src: /src/gpac/src/isomedia/hint_track.c:873,1
    - Dst: strcat
      Src: /src/gpac/src/isomedia/hint_track.c:874,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/hint_track.c:875,1
    - Dst: ReorderSDP
      Src: /src/gpac/src/isomedia/hint_track.c:876,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 50
    argCount: 2
    argNames:
    - movie
    - text
    argTypes:
    - GF_ISOFile*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 879
      start: 819
    functionDepth: 6
    functionLinenumber: 819
    functionLinenumberEnd: 879
    functionName: gf_isom_sdp_add_line
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 1
    functionsReached:
    - strcat
    - udta_on_child_box_ex
    - gf_list_get
    - gf_list_new
    - gf_free
    - ReorderSDP
    - gf_isom_box_new_ex
    - hnti_on_child_box
    - strcpy
    - strlen
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_list_add
    - gf_isom_box_new
    - udta_getEntry
    - moov_on_child_box
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_sdp_add_line(GF_ISOFile *movie, const char *text)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/hint_track.c:893,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:897,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:898,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/hint_track.c:901,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/hint_track.c:902,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 904
      start: 883
    functionDepth: 4
    functionLinenumber: 883
    functionLinenumberEnd: 904
    functionName: gf_isom_sdp_clean
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_box_del
    - gf_list_count
    - udta_getEntry
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_sdp_clean(GF_ISOFile *movie)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/hint_track.c:921,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:925,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:926,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/hint_track.c:931,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 3
    argNames:
    - movie
    - sdp
    - length
    argTypes:
    - GF_ISOFile*
    - char**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 934
      start: 908
    functionDepth: 2
    functionLinenumber: 908
    functionLinenumberEnd: 934
    functionName: gf_isom_sdp_get
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strlen
    - udta_getEntry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_sdp_get(GF_ISOFile *movie, const char **sdp, u32
      *length)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hint_track.c:947,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/hint_track.c:951,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:955,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:957,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/hint_track.c:961,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - sdp
    - length
    argTypes:
    - GF_ISOFile*
    - u32
    - char**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 964
      start: 936
    functionDepth: 2
    functionLinenumber: 936
    functionLinenumberEnd: 964
    functionName: gf_isom_sdp_track_get
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 2
    functionsReached:
    - gf_list_get
    - gf_list_count
    - udta_getEntry
    - gf_isom_get_track_box
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_sdp_track_get(GF_ISOFile *the_file, u32 trackNumber,
      const char **sdp, u32 *length)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hint_track.c:976,1
    - Dst: CheckHintFormat
      Src: /src/gpac/src/isomedia/hint_track.c:979,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/hint_track.c:980,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:982,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:984,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/hint_track.c:987,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 991
      start: 967
    functionDepth: 3
    functionLinenumber: 967
    functionLinenumberEnd: 991
    functionName: gf_isom_get_payt_count
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - CheckHintFormat
    - gf_list_count
    - udta_getEntry
    - gf_isom_get_track_box
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_get_payt_count(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hint_track.c:1002,1
    - Dst: CheckHintFormat
      Src: /src/gpac/src/isomedia/hint_track.c:1005,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/hint_track.c:1006,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:1008,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:1010,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/hint_track.c:1013,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 4
    argNames:
    - the_file
    - trackNumber
    - index
    - payID
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1023
      start: 993
    functionDepth: 3
    functionLinenumber: 993
    functionLinenumberEnd: 1023
    functionName: gf_isom_get_payt_info
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 2
    functionsReached:
    - gf_list_get
    - CheckHintFormat
    - gf_list_count
    - udta_getEntry
    - gf_isom_get_track_box
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_isom_get_payt_info(GF_ISOFile *the_file, u32 trackNumber,
      u32 index, u32 *payID)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:42,1
    - Dst: gf_isom_fdm_del
      Src: /src/gpac/src/isomedia/data_map.c:49,1
    - Dst: gf_isom_fmo_del
      Src: /src/gpac/src/isomedia/data_map.c:53,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/data_map.c:57,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:58,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_DataMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 61
    functionName: gf_isom_datamap_del
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 9
    functionsReached:
    - gf_free
    - gf_isom_fmo_del
    - gf_isom_fdm_del
    - gf_bs_del
    linkageType: ''
    returnType: void
    signature: void gf_isom_datamap_del(GF_DataMap *ptr)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/data_map.c:70,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/data_map.c:87,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 1
    argNames:
    - minf
    argTypes:
    - GF_MediaInformationBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 64
    functionDepth: 2
    functionLinenumber: 64
    functionLinenumberEnd: 89
    functionName: gf_isom_datamap_close
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 1
    functionsReached:
    - gf_isom_datamap_del
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void gf_isom_datamap_close(GF_MediaInformationBox *minf)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/data_map.c:98,1
    - Dst: gf_fsize
      Src: /src/gpac/src/isomedia/data_map.c:100,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/data_map.c:101,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - path
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 106
    functionName: IsLargeFile
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_fopen
    - gf_fsize
    linkageType: ''
    returnType: Bool
    signature: Bool IsLargeFile(char *path)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_fdm_new
      Src: /src/gpac/src/isomedia/data_map.c:120,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/data_map.c:127,1
    - Dst: gf_isom_fdm_new_temp
      Src: /src/gpac/src/isomedia/data_map.c:129,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/data_map.c:137,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/data_map.c:137,1
    - Dst: gf_isom_fdm_new
      Src: /src/gpac/src/isomedia/data_map.c:138,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/data_map.c:143,1
    - Dst: gf_isom_fdm_new
      Src: /src/gpac/src/isomedia/data_map.c:144,1
    - Dst: gf_url_is_local
      Src: /src/gpac/src/isomedia/data_map.c:151,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/isomedia/data_map.c:165,1
    - Dst: IsLargeFile
      Src: /src/gpac/src/isomedia/data_map.c:174,1
    - Dst: gf_isom_fdm_new
      Src: /src/gpac/src/isomedia/data_map.c:175,1
    - Dst: gf_isom_fmo_new
      Src: /src/gpac/src/isomedia/data_map.c:177,1
    - Dst: gf_isom_fdm_new
      Src: /src/gpac/src/isomedia/data_map.c:180,1
    - Dst: gf_isom_fdm_new
      Src: /src/gpac/src/isomedia/data_map.c:183,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:191,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 66
    argCount: 4
    argNames:
    - location
    - parentPath
    - mode
    - outDataMap
    argTypes:
    - char*
    - char*
    - u8
    - GF_DataMap**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 112
    functionDepth: 2
    functionLinenumber: 112
    functionLinenumberEnd: 198
    functionName: gf_isom_datamap_new
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 6
    functionsReached:
    - gf_free
    - gf_isom_fdm_new_temp
    - gf_url_concatenate
    - gf_url_is_local
    - IsLargeFile
    - gf_isom_fdm_new
    - strncmp
    - strcmp
    - gf_isom_fmo_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_datamap_new(const char *location, const char *parentPath,
      u8 mode, GF_DataMap **outDataMap)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/data_map.c:215,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/data_map.c:220,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/data_map.c:223,1
    - Dst: gf_isom_datamap_close
      Src: /src/gpac/src/isomedia/data_map.c:245,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/data_map.c:265,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/data_map.c:267,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 52
    argCount: 3
    argNames:
    - mdia
    - dataRefIndex
    - Edit
    argTypes:
    - GF_MediaBox*
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 202
    functionDepth: 3
    functionLinenumber: 202
    functionLinenumberEnd: 274
    functionName: gf_isom_datamap_open
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 4
    functionsReached:
    - gf_list_count
    - gf_isom_datamap_close
    - gf_list_get
    - gf_isom_datamap_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_datamap_open(GF_MediaBox *mdia, u32 dataRefIndex, u8
      Edit)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_fdm_get_data
      Src: /src/gpac/src/isomedia/data_map.c:284,1
    - Dst: gf_isom_fmo_get_data
      Src: /src/gpac/src/isomedia/data_map.c:288,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 5
    argNames:
    - map
    - buffer
    - bufferLength
    - Offset
    - is_corrupted
    argTypes:
    - GF_DataMap*
    - u8*
    - u32
    - u64
    - GF_BlobRangeStatus*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 277
    functionDepth: 1
    functionLinenumber: 277
    functionLinenumberEnd: 294
    functionName: gf_isom_datamap_get_data
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 2
    functionsReached:
    - gf_isom_fmo_get_data
    - gf_isom_fdm_get_data
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_datamap_get_data(GF_DataMap *map, u8 *buffer, u32 bufferLength,
      u64 Offset, GF_BlobRangeStatus *is_corrupted)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_flush
      Src: /src/gpac/src/isomedia/data_map.c:303,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - map
    argTypes:
    - GF_DataMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 305
    functionName: gf_isom_datamap_flush
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 1
    functionsReached:
    - gf_bs_flush
    linkageType: ''
    returnType: void
    signature: void gf_isom_datamap_flush(GF_DataMap *map)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FDM_GetTotalOffset
      Src: /src/gpac/src/isomedia/data_map.c:318,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/data_map.c:320,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - map
    argTypes:
    - GF_DataMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 312
    functionDepth: 1
    functionLinenumber: 312
    functionLinenumberEnd: 324
    functionName: gf_isom_datamap_get_offset
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 5
    functionsReached:
    - FDM_GetTotalOffset
    - gf_bs_get_position
    linkageType: ''
    returnType: u64
    signature: u64 gf_isom_datamap_get_offset(GF_DataMap *map)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FDM_AddData
      Src: /src/gpac/src/isomedia/data_map.c:334,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - ptr
    - data
    - dataSize
    argTypes:
    - GF_DataMap*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 327
    functionDepth: 1
    functionLinenumber: 327
    functionLinenumberEnd: 338
    functionName: gf_isom_datamap_add_data
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 4
    functionsReached:
    - FDM_AddData
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_datamap_add_data(GF_DataMap *ptr, u8 *data, u32 dataSize)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/data_map.c:343,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/isomedia/data_map.c:353,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/data_map.c:356,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/data_map.c:356,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/data_map.c:356,1
    - Dst: sprintf
      Src: /src/gpac/src/isomedia/data_map.c:357,1
    - Dst: sprintf
      Src: /src/gpac/src/isomedia/data_map.c:359,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/data_map.c:361,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/data_map.c:362,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:365,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:366,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/isomedia/data_map.c:369,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/data_map.c:371,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:372,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 1
    argNames:
    - sPath
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 340
    functionDepth: 1
    functionLinenumber: 340
    functionLinenumberEnd: 376
    functionName: gf_isom_fdm_new_temp
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 3
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_strdup
    - GF_SAFEALLOC
    - sprintf
    - gf_fopen
    - gf_file_temp
    - gf_bs_from_file
    - strlen
    linkageType: ''
    returnType: GF_DataMap
    signature: GF_DataMap *gf_isom_fdm_new_temp(const char *sPath)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/data_map.c:386,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/data_map.c:396,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:398,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/data_map.c:407,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/isomedia/data_map.c:409,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/data_map.c:413,1
    - Dst: sscanf
      Src: /src/gpac/src/isomedia/data_map.c:414,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/isomedia/data_map.c:416,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/data_map.c:417,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/isomedia/data_map.c:418,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:420,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/data_map.c:430,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/data_map.c:430,1
    - Dst: gf_fd_open
      Src: /src/gpac/src/isomedia/data_map.c:431,1
    - Dst: gf_bs_from_fd
      Src: /src/gpac/src/isomedia/data_map.c:433,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/data_map.c:436,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/data_map.c:442,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/data_map.c:444,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/data_map.c:446,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/data_map.c:451,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/data_map.c:451,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/data_map.c:453,1
    - Dst: gf_fd_open
      Src: /src/gpac/src/isomedia/data_map.c:454,1
    - Dst: gf_bs_from_fd
      Src: /src/gpac/src/isomedia/data_map.c:456,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/data_map.c:460,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/data_map.c:461,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/data_map.c:468,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/data_map.c:470,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/data_map.c:472,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/data_map.c:477,1
    - Dst: gf_fseek
      Src: /src/gpac/src/isomedia/data_map.c:478,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:483,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:487,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/isomedia/data_map.c:491,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/data_map.c:494,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:495,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 100
    argCount: 2
    argNames:
    - sPath
    - mode
    argTypes:
    - char*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 382
    functionDepth: 1
    functionLinenumber: 382
    functionLinenumberEnd: 499
    functionName: gf_isom_fdm_new
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_fclose
    - gf_bs_from_fd
    - sscanf
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_fseek
    - strncmp
    - strcmp
    - gf_mx_v
    - gf_fopen
    - gf_file_temp
    - gf_bs_from_file
    - gf_opts_get_bool
    - gf_fd_open
    linkageType: ''
    returnType: GF_DataMap
    signature: GF_DataMap *gf_isom_fdm_new(const char *sPath, u8 mode)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/data_map.c:504,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/data_map.c:506,1
    - Dst: close
      Src: /src/gpac/src/isomedia/data_map.c:510,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/isomedia/data_map.c:515,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:516,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:519,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 14
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_FileDataMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 520
      start: 501
    functionDepth: 1
    functionLinenumber: 501
    functionLinenumberEnd: 520
    functionName: gf_isom_fdm_del
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_fclose
    - close
    - gf_bs_del
    - gf_file_delete
    linkageType: ''
    returnType: void
    signature: void gf_isom_fdm_del(GF_FileDataMap *ptr)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/isomedia/data_map.c:527,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/isomedia/data_map.c:534,1
    - Dst: gf_blob_query_range
      Src: /src/gpac/src/isomedia/data_map.c:535,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/isomedia/data_map.c:538,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/isomedia/data_map.c:541,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/data_map.c:542,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/isomedia/data_map.c:543,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/data_map.c:546,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/data_map.c:548,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/data_map.c:553,1
    - Dst: gf_bs_get_refreshed_size
      Src: /src/gpac/src/isomedia/data_map.c:558,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/data_map.c:559,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/data_map.c:560,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/data_map.c:565,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/isomedia/data_map.c:572,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 44
    argCount: 5
    argNames:
    - ptr
    - buffer
    - bufferLength
    - fileOffset
    - is_corrupted
    argTypes:
    - GF_FileDataMap*
    - u8*
    - u32
    - u64
    - GF_BlobRangeStatus*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 522
    functionDepth: 1
    functionLinenumber: 522
    functionLinenumberEnd: 575
    functionName: gf_isom_fdm_get_data
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_data
    - gf_mx_p
    - gf_bs_seek
    - gf_blob_query_range
    - gf_bs_get_size
    - gf_bs_get_position
    - gf_mx_v
    - gf_bs_reassign_buffer
    - gf_bs_get_refreshed_size
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_fdm_get_data(GF_FileDataMap *ptr, u8 *buffer, u32 bufferLength,
      u64 fileOffset, GF_BlobRangeStatus *is_corrupted)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/data_map.c:580,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/isomedia/data_map.c:584,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/data_map.c:585,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/isomedia/data_map.c:586,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/isomedia/data_map.c:588,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/data_map.c:591,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/isomedia/data_map.c:592,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/isomedia/data_map.c:593,1
    - Dst: gf_blob_query_range
      Src: /src/gpac/src/isomedia/data_map.c:602,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/isomedia/data_map.c:603,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_FileDataMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 577
    functionDepth: 1
    functionLinenumber: 577
    functionLinenumberEnd: 607
    functionName: gf_isom_fdm_check_top_level
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 0
    functionsReached:
    - gf_bs_peek_bits
    - gf_mx_p
    - gf_bs_seek
    - gf_blob_query_range
    - gf_bs_get_position
    - gf_mx_v
    - gf_bs_available
    - gf_bs_reassign_buffer
    linkageType: ''
    returnType: Bool
    signature: Bool gf_isom_fdm_check_top_level(GF_FileDataMap *ptr)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_fdm_check_top_level
      Src: /src/gpac/src/isomedia/data_map.c:616,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/data_map.c:620,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - map
    argTypes:
    - GF_DataMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 627
      start: 609
    functionDepth: 2
    functionLinenumber: 609
    functionLinenumberEnd: 627
    functionName: gf_isom_datamap_top_level_box_avail
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 0
    functionsReached:
    - gf_bs_available
    - gf_isom_fdm_check_top_level
    linkageType: ''
    returnType: Bool
    signature: Bool gf_isom_datamap_top_level_box_avail(GF_DataMap *map)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/isomedia/data_map.c:638,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_FileDataMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 639
      start: 632
    functionDepth: 1
    functionLinenumber: 632
    functionLinenumberEnd: 639
    functionName: FDM_GetTotalOffset
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_size
    linkageType: ''
    returnType: u64
    signature: u64 FDM_GetTotalOffset(GF_FileDataMap *ptr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/isomedia/data_map.c:647,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/data_map.c:651,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/data_map.c:656,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/data_map.c:659,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/data_map.c:662,1
    - Dst: gf_bs_flush
      Src: /src/gpac/src/isomedia/data_map.c:665,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - ptr
    - data
    - dataSize
    argTypes:
    - GF_FileDataMap*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 668
      start: 641
    functionDepth: 1
    functionLinenumber: 641
    functionLinenumberEnd: 668
    functionName: FDM_AddData
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 1
    functionsReached:
    - gf_bs_seek
    - gf_bs_flush
    - gf_bs_get_size
    - gf_bs_get_position
    - gf_bs_write_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FDM_AddData(GF_FileDataMap *ptr, char *data, u32 dataSize)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/data_map.c:691,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/data_map.c:696,1
    - Dst: CE_CharToWide
      Src: /src/gpac/src/isomedia/data_map.c:703,1
    - Dst: CreateFileForMapping
      Src: /src/gpac/src/isomedia/data_map.c:705,1
    - Dst: CreateFile
      Src: /src/gpac/src/isomedia/data_map.c:708,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:714,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:715,1
    - Dst: GetFileSize
      Src: /src/gpac/src/isomedia/data_map.c:719,1
    - Dst: CloseHandle
      Src: /src/gpac/src/isomedia/data_map.c:721,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:722,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:723,1
    - Dst: CreateFileMapping
      Src: /src/gpac/src/isomedia/data_map.c:730,1
    - Dst: CloseHandle
      Src: /src/gpac/src/isomedia/data_map.c:732,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:733,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:734,1
    - Dst: MapViewOfFile
      Src: /src/gpac/src/isomedia/data_map.c:738,1
    - Dst: CloseHandle
      Src: /src/gpac/src/isomedia/data_map.c:740,1
    - Dst: CloseHandle
      Src: /src/gpac/src/isomedia/data_map.c:741,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:742,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:743,1
    - Dst: CloseHandle
      Src: /src/gpac/src/isomedia/data_map.c:747,1
    - Dst: CloseHandle
      Src: /src/gpac/src/isomedia/data_map.c:748,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/data_map.c:751,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 43
    argCount: 2
    argNames:
    - sPath
    - mode
    argTypes:
    - char*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 680
    functionDepth: 1
    functionLinenumber: 680
    functionLinenumberEnd: 753
    functionName: gf_isom_fmo_new
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 1
    functionsReached:
    - gf_free
    - CE_CharToWide
    - gf_strdup
    - CreateFileForMapping
    - gf_bs_new
    - GF_SAFEALLOC
    - CreateFile
    - CreateFileMapping
    - MapViewOfFile
    - GetFileSize
    - CloseHandle
    linkageType: ''
    returnType: GF_DataMap
    signature: GF_DataMap *gf_isom_fmo_new(const char *sPath, u8 mode)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/data_map.c:759,1
    - Dst: UnmapViewOfFile
      Src: /src/gpac/src/isomedia/data_map.c:760,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:761,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:762,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_FileMappingDataMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 755
    functionDepth: 1
    functionLinenumber: 755
    functionLinenumberEnd: 763
    functionName: gf_isom_fmo_del
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 1
    functionsReached:
    - UnmapViewOfFile
    - gf_free
    - gf_bs_del
    linkageType: ''
    returnType: void
    signature: void gf_isom_fmo_del(GF_FileMappingDataMap *ptr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/data_map.c:772,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - ptr
    - buffer
    - bufferLength
    - fileOffset
    - is_corrupted
    argTypes:
    - GF_FileMappingDataMap*
    - u8*
    - u32
    - u64
    - GF_BlobRangeStatus*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 774
      start: 766
    functionDepth: 0
    functionLinenumber: 766
    functionLinenumberEnd: 774
    functionName: gf_isom_fmo_get_data
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 1
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_fmo_get_data(GF_FileMappingDataMap *ptr, u8 *buffer, u32
      bufferLength, u64 fileOffset, GF_BlobRangeStatus *is_corrupted)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_fdm_new
      Src: /src/gpac/src/isomedia/data_map.c:780,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sPath
    - mode
    argTypes:
    - char*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 781
      start: 778
    functionDepth: 2
    functionLinenumber: 778
    functionLinenumberEnd: 781
    functionName: gf_isom_fmo_new
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 1
    functionsReached:
    - gf_isom_fdm_new
    linkageType: ''
    returnType: GF_DataMap
    signature: GF_DataMap *gf_isom_fmo_new(const char *sPath, u8 mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_fdm_del
      Src: /src/gpac/src/isomedia/data_map.c:785,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_FileMappingDataMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 786
      start: 783
    functionDepth: 2
    functionLinenumber: 783
    functionLinenumberEnd: 786
    functionName: gf_isom_fmo_del
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 1
    functionsReached:
    - gf_isom_fdm_del
    linkageType: ''
    returnType: void
    signature: void gf_isom_fmo_del(GF_FileMappingDataMap *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_fdm_get_data
      Src: /src/gpac/src/isomedia/data_map.c:790,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ptr
    - buffer
    - bufferLength
    - fileOffset
    - is_corrupted
    argTypes:
    - GF_FileMappingDataMap*
    - u8*
    - u32
    - u64
    - GF_BlobRangeStatus*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 791
      start: 788
    functionDepth: 2
    functionLinenumber: 788
    functionLinenumberEnd: 791
    functionName: gf_isom_fmo_get_data
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 1
    functionsReached:
    - gf_isom_fdm_get_data
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_fmo_get_data(GF_FileMappingDataMap *ptr, u8 *buffer, u32
      bufferLength, u64 fileOffset, GF_BlobRangeStatus *is_corrupted)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:50,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:58,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_intern.c:66,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:72,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:73,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/isomedia/isom_intern.c:74,1
    - Dst: gf_isom_get_track_from_id
      Src: /src/gpac/src/isomedia/isom_intern.c:77,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_intern.c:79,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:86,1
    - Dst: MergeTrack
      Src: /src/gpac/src/isomedia/isom_intern.c:91,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_intern.c:98,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:103,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:107,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_intern.c:108,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_intern.c:109,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:111,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_intern.c:112,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_intern.c:113,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_intern.c:115,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_intern.c:117,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_intern.c:120,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_intern.c:121,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_intern.c:123,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_intern.c:124,1
    - Dst: gf_isom_set_sample_group_description_internal
      Src: /src/gpac/src/isomedia/isom_intern.c:126,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/isom_intern.c:126,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_intern.c:126,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:127,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:134,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:137,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_intern.c:138,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:140,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_intern.c:141,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_intern.c:143,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_intern.c:144,1
    - Dst: gf_isom_set_sample_group_description_internal
      Src: /src/gpac/src/isomedia/isom_intern.c:146,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/isom_intern.c:146,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_intern.c:146,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:147,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_intern.c:152,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_intern.c:159,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_intern.c:161,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/isom_intern.c:163,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_intern.c:166,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/isom_intern.c:169,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_intern.c:172,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/isom_intern.c:174,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 106
    argCount: 2
    argNames:
    - moof
    - mov
    argTypes:
    - GF_MovieFragmentBox*
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 37
    functionDepth: 6
    functionLinenumber: 37
    functionLinenumberEnd: 185
    functionName: MergeFragment
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 0
    functionsReached:
    - MergeTrack
    - gf_free
    - gf_bs_new
    - gf_list_find
    - gf_isom_box_write
    - gf_list_count
    - gf_bs_write_u32
    - gf_list_get
    - gf_bs_get_content
    - gf_isom_set_sample_group_description_internal
    - memmove
    - GF_LOG
    - gf_isom_box_new_parent
    - gf_bs_write_data
    - SetTrackDuration
    - gf_list_enum
    - gf_malloc
    - gf_isom_box_array_del
    - gf_bs_del
    - gf_fatal_assert
    - GF_4CC
    - gf_isom_get_track_from_id
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MergeFragment(GF_MovieFragmentBox *moof, GF_ISOFile *mov)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:191,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:191,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:192,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:193,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:197,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 1
    argNames:
    - mov
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 204
    functionName: FixTrackID
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void FixTrackID(GF_ISOFile *mov)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:212,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:213,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:218,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:219,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_intern.c:222,1
    - Dst: GF_ISOM_GET_FRAG_DEPEND_FLAGS
      Src: /src/gpac/src/isomedia/isom_intern.c:236,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:242,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_intern.c:244,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 1
    argNames:
    - moof
    argTypes:
    - GF_MovieFragmentBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 206
    functionDepth: 5
    functionLinenumber: 206
    functionLinenumberEnd: 248
    functionName: FixSDTPInTRAF
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del_parent
    - gf_list_get
    - GF_LOG
    - gf_list_count
    - GF_ISOM_GET_FRAG_DEPEND_FLAGS
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void FixSDTPInTRAF(GF_MovieFragmentBox *moof)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:256,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:260,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 3
    argNames:
    - mov
    - mdat_end
    - is_pred
    argTypes:
    - GF_ISOFile*
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 279
    functionName: gf_isom_push_mdat_end
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void gf_isom_push_mdat_end(GF_ISOFile *mov, u64 mdat_end, Bool is_pred)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:289,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/isomedia/isom_intern.c:293,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/isomedia/isom_intern.c:295,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/isomedia/isom_intern.c:296,1
    - Dst: GetTrex
      Src: /src/gpac/src/isomedia/isom_intern.c:297,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - mov
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 284
    functionDepth: 3
    functionLinenumber: 284
    functionLinenumberEnd: 301
    functionName: gf_isom_setup_traf_inheritance
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GetTrex
    - gf_isom_get_track_id
    - gf_isom_get_reference
    linkageType: ''
    returnType: void
    signature: void gf_isom_setup_traf_inheritance(GF_ISOFile *mov)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:311,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:314,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:319,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:320,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_intern.c:327,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_intern.c:328,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_intern.c:330,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_intern.c:331,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:332,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:345,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/isom_intern.c:361,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:374,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 51
    argCount: 3
    argNames:
    - all_samples
    - child_boxes
    - sampleGroups
    argTypes:
    - u32
    - GF_List*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 308
    functionDepth: 4
    functionLinenumber: 308
    functionLinenumberEnd: 376
    functionName: convert_compact_sample_groups
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_get
    - gf_isom_box_del
    - GF_LOG
    - gf_list_count
    - gf_list_add
    - gf_list_del_item
    - gf_isom_box_new
    - gf_list_rem
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void convert_compact_sample_groups(u32 all_samples, GF_List *child_boxes,
      GF_List *sampleGroups)
  - BBCount: 125
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/isom_intern.c:393,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_intern.c:396,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/isom_intern.c:398,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/isom_intern.c:399,1
    - Dst: gf_bs_get_cookie
      Src: /src/gpac/src/isomedia/isom_intern.c:399,1
    - Dst: gf_isom_datamap_top_level_box_avail
      Src: /src/gpac/src/isomedia/isom_intern.c:405,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_intern.c:408,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:409,1
    - Dst: gf_isom_parse_root_box
      Src: /src/gpac/src/isomedia/isom_intern.c:412,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:421,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/isomedia/isom_intern.c:432,1
    - Dst: gf_isom_push_mdat_end
      Src: /src/gpac/src/isomedia/isom_intern.c:433,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:437,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:449,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:450,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_intern.c:455,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_intern.c:456,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:458,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_intern.c:461,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:462,1
    - Dst: gf_isom_setup_traf_inheritance
      Src: /src/gpac/src/isomedia/isom_intern.c:474,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:479,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:484,1
    - Dst: gf_isom_meta_restore_items_ref
      Src: /src/gpac/src/isomedia/isom_intern.c:490,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:496,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:497,1
    - Dst: senc_Parse
      Src: /src/gpac/src/isomedia/isom_intern.c:500,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:506,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:507,1
    - Dst: convert_compact_sample_groups
      Src: /src/gpac/src/isomedia/isom_intern.c:510,1
    - Dst: gf_isom_push_mdat_end
      Src: /src/gpac/src/isomedia/isom_intern.c:516,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:524,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:525,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:530,1
    - Dst: gf_isom_meta_restore_items_ref
      Src: /src/gpac/src/isomedia/isom_intern.c:534,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_intern.c:546,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:554,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:560,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_intern.c:566,1
    - Dst: gf_isom_push_mdat_end
      Src: /src/gpac/src/isomedia/isom_intern.c:568,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:575,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:582,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_intern.c:583,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:585,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:590,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:596,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:597,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:602,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:609,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:610,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:616,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_intern.c:619,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_intern.c:622,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_intern.c:623,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:624,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_intern.c:627,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:629,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:636,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:637,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:642,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:670,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:675,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_intern.c:678,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:687,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:690,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:693,1
    - Dst: gf_isom_push_mdat_end
      Src: /src/gpac/src/isomedia/isom_intern.c:695,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:697,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:701,1
    - Dst: gf_isom_disable_inplace_rewrite
      Src: /src/gpac/src/isomedia/isom_intern.c:708,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:711,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:716,1
    - Dst: FixTrackID
      Src: /src/gpac/src/isomedia/isom_intern.c:725,1
    - Dst: FixSDTPInTRAF
      Src: /src/gpac/src/isomedia/isom_intern.c:727,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:730,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:731,1
    - Dst: convert_compact_sample_groups
      Src: /src/gpac/src/isomedia/isom_intern.c:733,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:741,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:744,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:745,1
    - Dst: gf_isom_get_track_from_id
      Src: /src/gpac/src/isomedia/isom_intern.c:747,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_intern.c:749,1
    - Dst: GetTrackbyID
      Src: /src/gpac/src/isomedia/isom_intern.c:759,1
    - Dst: senc_Parse
      Src: /src/gpac/src/isomedia/isom_intern.c:762,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:769,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:770,1
    - Dst: senc_Parse
      Src: /src/gpac/src/isomedia/isom_intern.c:772,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:781,1
    - Dst: MergeFragment
      Src: /src/gpac/src/isomedia/isom_intern.c:784,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:785,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:791,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:795,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:799,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_intern.c:812,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:814,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:819,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:823,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:833,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:837,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_intern.c:846,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:847,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:849,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:859,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:861,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:867,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_intern.c:874,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/isom_intern.c:889,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:891,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:897,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_intern.c:912,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_intern.c:921,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:923,1
    CyclomaticComplexity: 164
    EdgeCount: 164
    ICount: 432
    argCount: 4
    argNames:
    - mov
    - boxType
    - bytesMissing
    - progressive_mode
    argTypes:
    - GF_ISOFile*
    - u32*
    - u64*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 929
      start: 378
    functionDepth: 7
    functionLinenumber: 378
    functionLinenumberEnd: 929
    functionName: gf_isom_parse_movie_boxes_internal
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_size
    - gf_list_count
    - senc_Parse
    - gf_isom_box_find_child
    - gf_assert
    - gf_list_get
    - gf_list_new
    - gf_isom_box_del
    - GetTrackbyID
    - gf_isom_meta_restore_items_ref
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_setup_traf_inheritance
    - FixTrackID
    - gf_isom_push_mdat_end
    - gf_list_insert
    - gf_isom_box_del_parent
    - MergeFragment
    - GF_LOG
    - gf_bs_get_position
    - gf_list_del_item
    - gf_bs_set_cookie
    - gf_list_enum
    - gf_isom_disable_inplace_rewrite
    - gf_isom_box_array_del
    - gf_bs_seek
    - convert_compact_sample_groups
    - gf_isom_parse_root_box
    - gf_bs_get_cookie
    - FixSDTPInTRAF
    - GF_4CC
    - gf_opts_get_bool
    - gf_isom_get_track_from_id
    - gf_isom_datamap_top_level_box_avail
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_parse_movie_boxes_internal(GF_ISOFile *mov, u32 *boxType,
      u64 *bytesMissing, Bool progressive_mode)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/isomedia/isom_intern.c:944,1
    - Dst: gf_isom_parse_movie_boxes_internal
      Src: /src/gpac/src/isomedia/isom_intern.c:947,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/isomedia/isom_intern.c:950,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 4
    argNames:
    - mov
    - boxType
    - bytesMissing
    - progressive_mode
    argTypes:
    - GF_ISOFile*
    - u32*
    - u64*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 953
      start: 933
    functionDepth: 8
    functionLinenumber: 933
    functionLinenumberEnd: 953
    functionName: gf_isom_parse_movie_boxes
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 4
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    - gf_isom_parse_movie_boxes_internal
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_parse_movie_boxes(GF_ISOFile *mov, u32 *boxType, u64
      *bytesMissing, Bool progressive_mode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_intern.c:957,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:959,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_intern.c:962,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_intern.c:965,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:967,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:968,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 978
      start: 955
    functionDepth: 1
    functionLinenumber: 955
    functionLinenumberEnd: 978
    functionName: gf_isom_new_movie
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_isom_set_last_error
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_ISOFile
    signature: GF_ISOFile *gf_isom_new_movie()
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_new_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:985,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_intern.c:988,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_intern.c:1006,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:1011,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1012,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_intern.c:1025,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:1027,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1028,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/isom_intern.c:1033,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1043,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:1044,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_intern.c:1050,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_intern.c:1050,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:1052,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1053,1
    - Dst: strcpy
      Src: /src/gpac/src/isomedia/isom_intern.c:1056,1
    - Dst: strcat
      Src: /src/gpac/src/isomedia/isom_intern.c:1057,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_intern.c:1060,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:1063,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1064,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_intern.c:1068,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:1070,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1071,1
    - Dst: gf_isom_parse_movie_boxes
      Src: /src/gpac/src/isomedia/isom_intern.c:1081,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/isom_intern.c:1087,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_intern.c:1089,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:1094,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1095,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:1099,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 74
    argCount: 3
    argNames:
    - fileName
    - OpenMode
    - tmp_dir
    argTypes:
    - char*
    - GF_ISOOpenMode
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1101
      start: 981
    functionDepth: 9
    functionLinenumber: 981
    functionLinenumberEnd: 1101
    functionName: gf_isom_open_file
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 1
    functionsReached:
    - strcat
    - gf_strdup
    - gf_isom_parse_movie_boxes
    - strcpy
    - strlen
    - gf_isom_set_last_error
    - gf_list_count
    - gf_isom_datamap_del
    - gf_isom_delete_movie
    - gf_isom_new_movie
    - gf_bs_set_cookie
    - gf_isom_datamap_new
    - gf_malloc
    linkageType: ''
    returnType: GF_ISOFile
    signature: GF_ISOFile *gf_isom_open_file(const char *fileName, GF_ISOOpenMode
      OpenMode, const char *tmp_dir)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_intern.c:1112,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_intern.c:1113,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 6
    argNames:
    - mov
    - on_block_out
    - on_block_patch
    - on_last_block_start
    - usr_data
    - block_size
    argTypes:
    - GF_ISOFile*
    - gf_isom_on_block_out
    - gf_isom_on_block_patch
    - gf_isom_on_last_block_start
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1125
      start: 1103
    functionDepth: 0
    functionLinenumber: 1103
    functionLinenumberEnd: 1125
    functionName: gf_isom_set_write_callback
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_isom_set_write_callback(GF_ISOFile *mov,\n\t\t\tgf_isom_on_block_out
      on_block_out,\n\t\t\tgf_isom_on_block_patch on_block_patch,\n\t\t\tgf_isom_on_last_block_start
      on_last_block_start,\n \t\t\tvoid *usr_data,\n \t\t\tu32 block_size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_utc_time_since_1970
      Src: /src/gpac/src/isomedia/isom_intern.c:1132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1136
      start: 1128
    functionDepth: 0
    functionLinenumber: 1128
    functionLinenumberEnd: 1136
    functionName: gf_isom_get_mp4time
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 57
    functionsReached:
    - gf_utc_time_since_1970
    linkageType: ''
    returnType: u64
    signature: u64 gf_isom_get_mp4time()
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:1146,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:1147,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/isom_intern.c:1160,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/isom_intern.c:1164,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:1166,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_intern.c:1169,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_intern.c:1171,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:1173,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:1175,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:1177,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:1180,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:1183,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_intern.c:1186,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:1189,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:1190,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:1191,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 39
    argCount: 1
    argNames:
    - mov
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1192
      start: 1138
    functionDepth: 4
    functionLinenumber: 1138
    functionLinenumberEnd: 1192
    functionName: gf_isom_delete_movie
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 4
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_isom_box_del
    - gf_list_count
    - gf_isom_datamap_del
    - gf_isom_box_array_del
    linkageType: ''
    returnType: void
    signature: void gf_isom_delete_movie(GF_ISOFile *mov)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:1199,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:1201,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - moov
    - trackID
    argTypes:
    - GF_MovieBox*
    - GF_ISOTrackID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1205
      start: 1194
    functionDepth: 1
    functionLinenumber: 1194
    functionLinenumberEnd: 1205
    functionName: gf_isom_get_track_from_id
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 14
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_TrackBox
    signature: GF_TrackBox *gf_isom_get_track_from_id(GF_MovieBox *moov, GF_ISOTrackID
      trackID)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:1212,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:1214,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 3
    argNames:
    - moov
    - originalID
    - originalFile
    argTypes:
    - GF_MovieBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1218
      start: 1207
    functionDepth: 1
    functionLinenumber: 1207
    functionLinenumberEnd: 1218
    functionName: gf_isom_get_track_from_original_id
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_TrackBox
    signature: GF_TrackBox *gf_isom_get_track_from_original_id(GF_MovieBox *moov,
      u32 originalID, u32 originalFile)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track
      Src: /src/gpac/src/isomedia/isom_intern.c:1225,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1228
      start: 1220
    functionDepth: 2
    functionLinenumber: 1220
    functionLinenumberEnd: 1228
    functionName: GF_TrackBox *gf_isom_get_track_box(GF_ISOFile *movie, u32 trackNumber)
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_TrackBox *gf_isom_get_track_box(GF_ISOFile *movie, u32
      trackNumber)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:1284,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:1286,1
    - Dst: gf_list_last
      Src: /src/gpac/src/isomedia/isom_intern.c:1298,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:1302,1
    - Dst: stbl_findEntryForTime
      Src: /src/gpac/src/isomedia/isom_intern.c:1358,1
    - Dst: stbl_GetSampleDTS
      Src: /src/gpac/src/isomedia/isom_intern.c:1370,1
    - Dst: stbl_GetSampleCTS
      Src: /src/gpac/src/isomedia/isom_intern.c:1372,1
    - Dst: stbl_findEntryForTime
      Src: /src/gpac/src/isomedia/isom_intern.c:1375,1
    - Dst: stbl_GetSampleDTS
      Src: /src/gpac/src/isomedia/isom_intern.c:1385,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 108
    argCount: 8
    argNames:
    - trak
    - force_non_empty
    - movieTime
    - MediaTime
    - SegmentStartTime
    - MediaOffset
    - useEdit
    - next_edit_start_plus_one
    argTypes:
    - GF_TrackBox*
    - Bool
    - u64
    - u64*
    - s64*
    - s64*
    - u8*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1393
      start: 1232
    functionDepth: 2
    functionLinenumber: 1232
    functionLinenumberEnd: 1393
    functionName: GetMediaTime
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 2
    functionsReached:
    - stbl_GetSampleCTS
    - gf_list_get
    - gf_list_count
    - stbl_findEntryForTime
    - stbl_GetSampleDTS
    - gf_list_last
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GetMediaTime(GF_TrackBox *trak, Bool force_non_empty, u64 movieTime,
      u64 *MediaTime, s64 *SegmentStartTime, s64 *MediaOffset, u8 *useEdit, u64 *next_edit_start_plus_one)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_intern.c:1407,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/isomedia/isom_intern.c:1408,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 3
    argNames:
    - trak
    - movieTime
    - OutMovieTime
    argTypes:
    - GF_TrackBox*
    - u64
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1421
      start: 1395
    functionDepth: 1
    functionLinenumber: 1395
    functionLinenumberEnd: 1421
    functionName: GetNextMediaTime
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 1
    functionsReached:
    - gf_timestamp_greater_or_equal
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GetNextMediaTime(GF_TrackBox *trak, u64 movieTime, u64 *OutMovieTime)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_intern.c:1435,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/isomedia/isom_intern.c:1437,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/isomedia/isom_intern.c:1438,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/isomedia/isom_intern.c:1445,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 3
    argNames:
    - trak
    - movieTime
    - OutMovieTime
    argTypes:
    - GF_TrackBox*
    - u64
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1452
      start: 1423
    functionDepth: 1
    functionLinenumber: 1423
    functionLinenumberEnd: 1452
    functionName: GetPrevMediaTime
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 1
    functionsReached:
    - gf_timestamp_greater_or_equal
    - gf_list_enum
    - gf_timestamp_rescale
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GetPrevMediaTime(GF_TrackBox *trak, u64 movieTime, u64 *OutMovieTime)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_intern.c:1462,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_intern.c:1466,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/isomedia/isom_intern.c:1469,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_intern.c:1472,1
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/isom_intern.c:1483,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:1484,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1486
      start: 1456
    functionDepth: 6
    functionLinenumber: 1456
    functionLinenumberEnd: 1486
    functionName: gf_isom_insert_moov
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 20
    functionsReached:
    - gf_sys_is_test_mode
    - gf_isom_box_new_parent
    - gf_list_add
    - gf_isom_box_new
    - moov_on_child_box
    - gf_isom_get_mp4time
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_insert_moov(GF_ISOFile *file)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_new_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1493,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_intern.c:1506,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_intern.c:1507,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/isomedia/isom_intern.c:1511,1
    - Dst: strnicmp
      Src: /src/gpac/src/isomedia/isom_intern.c:1512,1
    - Dst: strnicmp
      Src: /src/gpac/src/isomedia/isom_intern.c:1512,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/isomedia/isom_intern.c:1513,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/isomedia/isom_intern.c:1515,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_intern.c:1519,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_intern.c:1520,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:1522,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1523,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/isomedia/isom_intern.c:1527,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_intern.c:1531,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:1533,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1534,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:1537,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:1544,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1545,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 42
    argCount: 3
    argNames:
    - fileName
    - OpenMode
    - tmp_dir
    argTypes:
    - char*
    - GF_ISOOpenMode
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1547
      start: 1489
    functionDepth: 5
    functionLinenumber: 1489
    functionLinenumberEnd: 1547
    functionName: gf_isom_create_movie
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 1
    functionsReached:
    - gf_strdup
    - gf_isom_set_last_error
    - gf_file_ext_start
    - strnicmp
    - gf_isom_delete_movie
    - gf_list_add
    - gf_isom_new_movie
    - gf_isom_box_new
    - gf_isom_set_brand_info
    - gf_isom_datamap_new
    linkageType: ''
    returnType: GF_ISOFile
    signature: GF_ISOFile *gf_isom_create_movie(const char *fileName, GF_ISOOpenMode
      OpenMode, const char *tmp_dir)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_intern.c:1553,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 4
    argNames:
    - EditDuration
    - MediaTime
    - MediaRate
    - EditMode
    argTypes:
    - u64
    - u64
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1573
      start: 1549
    functionDepth: 0
    functionLinenumber: 1549
    functionLinenumberEnd: 1573
    functionName: CreateEditEntry
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 1
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_EdtsEntry
    signature: GF_EdtsEntry *CreateEditEntry(u64 EditDuration, u64 MediaTime, u32
      MediaRate, u8 EditMode)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:1583,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:1585,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_intern.c:1594,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_intern.c:1596,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:1598,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:1602,1
    - Dst: gf_list_last
      Src: /src/gpac/src/isomedia/isom_intern.c:1610,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/isomedia/isom_intern.c:1611,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:1612,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:1613,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_intern.c:1614,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/isom_intern.c:1615,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:1616,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_intern.c:1621,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:1627,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 6
    argNames:
    - sub_samples
    - sampleNumber
    - subSampleSize
    - priority
    - reserved
    - discardable
    argTypes:
    - GF_SubSampleInformationBox*
    - u32
    - u32
    - u8
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1628
      start: 1575
    functionDepth: 1
    functionLinenumber: 1575
    functionLinenumberEnd: 1628
    functionName: gf_isom_add_subsample_info
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 4
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_new
    - GF_SAFEALLOC
    - gf_list_count
    - gf_list_add
    - gf_list_del_item
    - gf_list_last
    - gf_list_rem_last
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_add_subsample_info(GF_SubSampleInformationBox *sub_samples,
      u32 sampleNumber, u32 subSampleSize, u8 priority, u32 reserved, Bool discardable)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_intern.c:1635,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:1638,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 2
    argNames:
    - movie
    - track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1639
      start: 1633
    functionDepth: 1
    functionLinenumber: 1633
    functionLinenumberEnd: 1639
    functionName: gf_isom_sample_get_subsamples_count
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_sample_get_subsamples_count(GF_ISOFile *movie, u32 track)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_intern.c:1645,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:1649,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 4
    argNames:
    - movie
    - track
    - subs_index
    - flags
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1653
      start: 1642
    functionDepth: 1
    functionLinenumber: 1642
    functionLinenumberEnd: 1653
    functionName: gf_isom_get_subsample_types
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 2
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: Bool
    signature: Bool gf_isom_get_subsample_types(GF_ISOFile *movie, u32 track, u32
      subs_index, u32 *flags)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_intern.c:1659,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:1663,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:1665,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:1672,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:1674,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:1677,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 27
    argCount: 5
    argNames:
    - movie
    - track
    - sampleNumber
    - flags
    - sub_sample
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - GF_SubSampleInfoEntry**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1682
      start: 1655
    functionDepth: 1
    functionLinenumber: 1655
    functionLinenumberEnd: 1682
    functionName: gf_isom_sample_get_subsample_entry
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 4
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_sample_get_subsample_entry(GF_ISOFile *movie, u32 track,
      u32 sampleNumber, u32 flags, GF_SubSampleInfoEntry **sub_sample)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/memory_decoder.c:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - com
    - node
    argTypes:
    - GF_Command*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 41
    functionName: BM_SetCommandNode
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_node_register
    linkageType: ''
    returnType: void
    signature: void BM_SetCommandNode(GF_Command *com, GF_Node *node)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:52,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:53,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:55,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:55,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:56,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:57,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/memory_decoder.c:59,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/memory_decoder.c:60,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:62,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:63,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:64,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:66,1
    - Dst: BM_SetCommandNode
      Src: /src/gpac/src/bifs/memory_decoder.c:67,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/memory_decoder.c:68,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/bifs/memory_decoder.c:71,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:72,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/memory_decoder.c:77,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/memory_decoder.c:81,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/bifs/memory_decoder.c:83,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/memory_decoder.c:84,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/bifs/memory_decoder.c:90,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:91,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 45
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 93
    functionName: BM_ParseMultipleIndexedReplace
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_dec_node
    - gf_sg_find_node
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - gf_bifs_dec_sf_field
    - gf_sg_command_field_new
    - BM_SetCommandNode
    - gf_sg_command_del
    - gf_node_get_field
    - gf_bs_read_int
    - gf_sg_vrml_is_sf_field
    - gf_bifs_get_field_index
    - gf_sg_vrml_field_pointer_new
    - gf_list_add
    - gf_node_register
    - gf_sg_command_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BM_ParseMultipleIndexedReplace(GF_BifsDecoder *codec, GF_BitStream
      *bs, GF_List *com_list)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:105,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:106,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:110,1
    - Dst: BM_SetCommandNode
      Src: /src/gpac/src/bifs/memory_decoder.c:111,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:112,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:114,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:116,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:118,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/memory_decoder.c:119,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/bifs/memory_decoder.c:121,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/bifs/memory_decoder.c:129,1
    - Dst: gf_bifs_dec_field
      Src: /src/gpac/src/bifs/memory_decoder.c:131,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:135,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:136,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:136,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:138,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:139,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/memory_decoder.c:141,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/bifs/memory_decoder.c:143,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/bifs/memory_decoder.c:151,1
    - Dst: gf_bifs_dec_field
      Src: /src/gpac/src/bifs/memory_decoder.c:153,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:155,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/bifs/memory_decoder.c:161,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:162,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 73
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 164
    functionName: BM_ParseMultipleReplace
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_dec_field
    - gf_sg_find_node
    - gf_get_bit_size
    - gf_sg_command_field_new
    - BM_SetCommandNode
    - gf_sg_command_del
    - gf_node_get_field
    - gf_bs_read_int
    - gf_list_add
    - gf_bifs_get_field_index
    - gf_sg_vrml_field_pointer_new
    - gf_sg_command_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BM_ParseMultipleReplace(GF_BifsDecoder *codec, GF_BitStream
      *bs, GF_List *com_list)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/memory_decoder.c:171,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/memory_decoder.c:176,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/memory_decoder.c:181,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/memory_decoder.c:186,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/memory_decoder.c:197,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/memory_decoder.c:198,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:200,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/bifs/memory_decoder.c:201,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:205,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 207
    functionName: BM_ParseGlobalQuantizer
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_bifs_dec_node
    - gf_sg_command_field_new
    - gf_list_add
    - gf_node_unregister
    - gf_node_register
    - gf_sg_command_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BM_ParseGlobalQuantizer(GF_BifsDecoder *codec, GF_BitStream
      *bs, GF_List *com_list)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:212,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:213,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:216,1
    - Dst: gf_realloc
      Src: /src/gpac/src/bifs/memory_decoder.c:218,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:219,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:221,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:224,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:225,1
    - Dst: gf_realloc
      Src: /src/gpac/src/bifs/memory_decoder.c:226,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:229,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:233,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 235
    functionName: BM_ParseProtoDelete
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_bs_read_int
    - gf_sg_command_new
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BM_ParseProtoDelete(GF_BifsDecoder *codec, GF_BitStream *bs,
      GF_List *com_list)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:247,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:248,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:251,1
    - Dst: BM_SetCommandNode
      Src: /src/gpac/src/bifs/memory_decoder.c:252,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:253,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:255,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:255,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:256,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:257,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/memory_decoder.c:259,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/bifs/memory_decoder.c:262,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/memory_decoder.c:265,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:267,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:269,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:271,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:272,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:276,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:276,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:277,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:278,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/memory_decoder.c:280,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:284,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:287,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:299,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/bifs/memory_decoder.c:300,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:303,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:303,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:304,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:305,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/memory_decoder.c:307,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/memory_decoder.c:311,1
    - Dst: gf_sg_proto_get_id
      Src: /src/gpac/src/bifs/memory_decoder.c:313,1
    - Dst: gf_node_get_proto
      Src: /src/gpac/src/bifs/memory_decoder.c:313,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:322,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:323,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:324,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:328,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:328,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:329,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:330,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/memory_decoder.c:332,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/memory_decoder.c:341,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/bifs/memory_decoder.c:354,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/memory_decoder.c:356,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 108
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 237
    functionDepth: 2
    functionLinenumber: 237
    functionLinenumberEnd: 358
    functionName: BM_XReplace
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_node_get_num_fields_in_mode
    - gf_sg_vrml_field_pointer_new
    - gf_sg_find_node
    - gf_get_bit_size
    - gf_node_list_get_child
    - gf_sg_vrml_get_sf_type
    - gf_bifs_dec_sf_field
    - gf_sg_command_field_new
    - BM_SetCommandNode
    - gf_list_add
    - gf_bs_read_int
    - gf_node_get_field
    - gf_bifs_get_field_index
    - gf_sg_vrml_is_sf_field
    - gf_sg_proto_get_id
    - gf_node_get_proto
    - gf_sg_command_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BM_XReplace(GF_BifsDecoder *codec, GF_BitStream *bs, GF_List
      *com_list)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:362,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:368,1
    - Dst: gf_bifs_dec_proto_list
      Src: /src/gpac/src/bifs/memory_decoder.c:369,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/bifs/memory_decoder.c:370,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:371,1
    - Dst: BM_ParseProtoDelete
      Src: /src/gpac/src/bifs/memory_decoder.c:375,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:378,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:379,1
    - Dst: BM_ParseMultipleIndexedReplace
      Src: /src/gpac/src/bifs/memory_decoder.c:382,1
    - Dst: BM_ParseMultipleReplace
      Src: /src/gpac/src/bifs/memory_decoder.c:384,1
    - Dst: BM_ParseGlobalQuantizer
      Src: /src/gpac/src/bifs/memory_decoder.c:386,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:390,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:391,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:393,1
    - Dst: BM_SetCommandNode
      Src: /src/gpac/src/bifs/memory_decoder.c:394,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:395,1
    - Dst: BM_XReplace
      Src: /src/gpac/src/bifs/memory_decoder.c:399,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 33
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 360
    functionDepth: 3
    functionLinenumber: 360
    functionLinenumberEnd: 404
    functionName: BM_ParseExtendedUpdates
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - BM_ParseMultipleIndexedReplace
    - BM_ParseMultipleReplace
    - gf_sg_find_node
    - BM_XReplace
    - gf_bifs_dec_proto_list
    - BM_ParseGlobalQuantizer
    - BM_SetCommandNode
    - gf_list_add
    - gf_bs_read_int
    - BM_ParseProtoDelete
    - gf_sg_command_del
    - gf_sg_command_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BM_ParseExtendedUpdates(GF_BifsDecoder *codec, GF_BitStream
      *bs, GF_List *com_list)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:414,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:415,1
    - Dst: gf_bifs_get_child_table
      Src: /src/gpac/src/bifs/memory_decoder.c:417,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:420,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:423,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/memory_decoder.c:435,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:437,1
    - Dst: BM_SetCommandNode
      Src: /src/gpac/src/bifs/memory_decoder.c:438,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/bifs/memory_decoder.c:439,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:444,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/memory_decoder.c:446,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 34
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 407
    functionDepth: 2
    functionLinenumber: 407
    functionLinenumberEnd: 449
    functionName: BM_ParseNodeInsert
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_bifs_dec_node
    - gf_sg_find_node
    - gf_sg_command_new
    - gf_sg_command_field_new
    - BM_SetCommandNode
    - gf_list_add
    - gf_bs_read_int
    - gf_node_register
    - gf_bifs_get_child_table
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BM_ParseNodeInsert(GF_BifsDecoder *codec, GF_BitStream *bs,
      GF_List *com_list)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:464,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:465,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:468,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:468,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:469,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:471,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:474,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:477,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/memory_decoder.c:489,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/memory_decoder.c:491,1
    - Dst: memcpy
      Src: /src/gpac/src/bifs/memory_decoder.c:493,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/memory_decoder.c:494,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/memory_decoder.c:498,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:500,1
    - Dst: BM_SetCommandNode
      Src: /src/gpac/src/bifs/memory_decoder.c:501,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/bifs/memory_decoder.c:502,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:508,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/memory_decoder.c:510,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:513,1
    - Dst: BM_SetCommandNode
      Src: /src/gpac/src/bifs/memory_decoder.c:514,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/bifs/memory_decoder.c:515,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/bifs/memory_decoder.c:519,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/memory_decoder.c:520,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:521,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 57
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 452
    functionDepth: 2
    functionLinenumber: 452
    functionLinenumberEnd: 524
    functionName: BM_ParseIndexInsert
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_dec_node
    - gf_sg_vrml_field_pointer_new
    - gf_sg_find_node
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - memcpy
    - gf_bifs_dec_sf_field
    - gf_sg_command_field_new
    - BM_SetCommandNode
    - gf_node_get_field
    - gf_bs_read_int
    - gf_sg_vrml_is_sf_field
    - gf_bifs_get_field_index
    - gf_list_add
    - gf_node_register
    - gf_sg_command_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BM_ParseIndexInsert(GF_BifsDecoder *codec, GF_BitStream *bs,
      GF_List *com_list)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:538,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:541,1
    - Dst: gf_bifs_dec_name
      Src: /src/gpac/src/bifs/memory_decoder.c:542,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:545,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:546,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:549,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:550,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:551,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:552,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:556,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:557,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:560,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:561,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:562,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:563,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:566,1
    - Dst: gf_strdup
      Src: /src/gpac/src/bifs/memory_decoder.c:568,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/memory_decoder.c:569,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/memory_decoder.c:571,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:573,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 38
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 527
    functionDepth: 1
    functionLinenumber: 527
    functionLinenumberEnd: 575
    functionName: BM_ParseRouteInsert
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_strdup
    - gf_sg_find_node
    - gf_get_bit_size
    - gf_node_get_id
    - gf_bifs_dec_name
    - gf_list_add
    - gf_bs_read_int
    - gf_bifs_get_field_index
    - gf_sg_command_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BM_ParseRouteInsert(GF_BifsDecoder *codec, GF_BitStream *bs,
      GF_List *com_list)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:582,1
    - Dst: BM_ParseNodeInsert
      Src: /src/gpac/src/bifs/memory_decoder.c:585,1
    - Dst: BM_ParseExtendedUpdates
      Src: /src/gpac/src/bifs/memory_decoder.c:587,1
    - Dst: BM_ParseIndexInsert
      Src: /src/gpac/src/bifs/memory_decoder.c:589,1
    - Dst: BM_ParseRouteInsert
      Src: /src/gpac/src/bifs/memory_decoder.c:591,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 578
    functionDepth: 4
    functionLinenumber: 578
    functionLinenumberEnd: 595
    functionName: BM_ParseInsert
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - BM_ParseNodeInsert
    - BM_ParseIndexInsert
    - BM_ParseRouteInsert
    - gf_bs_read_int
    - BM_ParseExtendedUpdates
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BM_ParseInsert(GF_BifsDecoder *codec, GF_BitStream *bs, GF_List
      *com_list)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:609,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:610,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:613,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:613,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:614,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:616,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:619,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:630,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/memory_decoder.c:632,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/memory_decoder.c:634,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:635,1
    - Dst: BM_SetCommandNode
      Src: /src/gpac/src/bifs/memory_decoder.c:636,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/bifs/memory_decoder.c:637,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/memory_decoder.c:640,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:641,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 37
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 598
    functionDepth: 2
    functionLinenumber: 598
    functionLinenumberEnd: 643
    functionName: BM_ParseIndexDelete
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_sg_find_node
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - gf_sg_command_field_new
    - BM_SetCommandNode
    - gf_node_get_field
    - gf_bs_read_int
    - gf_sg_vrml_is_sf_field
    - gf_bifs_get_field_index
    - gf_list_add
    - gf_sg_command_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BM_ParseIndexDelete(GF_BifsDecoder *codec, GF_BitStream *bs,
      GF_List *com_list)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:654,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:657,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:658,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:660,1
    - Dst: BM_SetCommandNode
      Src: /src/gpac/src/bifs/memory_decoder.c:661,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:662,1
    - Dst: BM_ParseIndexDelete
      Src: /src/gpac/src/bifs/memory_decoder.c:665,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:667,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:668,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:669,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 675
      start: 647
    functionDepth: 3
    functionLinenumber: 647
    functionLinenumberEnd: 675
    functionName: BM_ParseDelete
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_sg_find_node
    - BM_ParseIndexDelete
    - BM_SetCommandNode
    - gf_list_add
    - gf_bs_read_int
    - gf_sg_command_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BM_ParseDelete(GF_BifsDecoder *codec, GF_BitStream *bs, GF_List
      *com_list)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:685,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:687,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:690,1
    - Dst: BM_SetCommandNode
      Src: /src/gpac/src/bifs/memory_decoder.c:691,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/bifs/memory_decoder.c:692,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/memory_decoder.c:693,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:696,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/memory_decoder.c:697,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 699
      start: 678
    functionDepth: 2
    functionLinenumber: 678
    functionLinenumberEnd: 699
    functionName: BM_ParseNodeReplace
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_bifs_dec_node
    - gf_sg_find_node
    - gf_sg_command_field_new
    - BM_SetCommandNode
    - gf_list_add
    - gf_bs_read_int
    - gf_node_register
    - gf_sg_command_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BM_ParseNodeReplace(GF_BifsDecoder *codec, GF_BitStream *bs,
      GF_List *com_list)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:710,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:711,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:713,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:713,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:714,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:715,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/memory_decoder.c:718,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:721,1
    - Dst: BM_SetCommandNode
      Src: /src/gpac/src/bifs/memory_decoder.c:722,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/bifs/memory_decoder.c:723,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/bifs/memory_decoder.c:731,1
    - Dst: gf_bifs_dec_field
      Src: /src/gpac/src/bifs/memory_decoder.c:734,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:736,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 701
    functionDepth: 2
    functionLinenumber: 701
    functionLinenumberEnd: 738
    functionName: BM_ParseFieldReplace
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_dec_field
    - gf_sg_find_node
    - gf_get_bit_size
    - gf_sg_command_field_new
    - BM_SetCommandNode
    - gf_node_get_field
    - gf_bs_read_int
    - gf_list_add
    - gf_bifs_get_field_index
    - gf_sg_vrml_field_pointer_new
    - gf_sg_command_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BM_ParseFieldReplace(GF_BifsDecoder *codec, GF_BitStream *bs,
      GF_List *com_list)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:751,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:753,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:755,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:755,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:756,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:757,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/memory_decoder.c:760,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/memory_decoder.c:762,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:764,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:767,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:780,1
    - Dst: BM_SetCommandNode
      Src: /src/gpac/src/bifs/memory_decoder.c:781,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/bifs/memory_decoder.c:782,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/memory_decoder.c:788,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/memory_decoder.c:790,1
    - Dst: memcpy
      Src: /src/gpac/src/bifs/memory_decoder.c:792,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/memory_decoder.c:793,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/bifs/memory_decoder.c:795,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/memory_decoder.c:796,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:798,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 51
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 800
      start: 740
    functionDepth: 2
    functionLinenumber: 740
    functionLinenumberEnd: 800
    functionName: BM_ParseIndexValueReplace
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_dec_node
    - gf_sg_find_node
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - memcpy
    - gf_bifs_dec_sf_field
    - gf_sg_command_field_new
    - BM_SetCommandNode
    - gf_node_get_field
    - gf_bs_read_int
    - gf_sg_vrml_is_sf_field
    - gf_bifs_get_field_index
    - gf_sg_vrml_field_pointer_new
    - gf_list_add
    - gf_node_register
    - gf_sg_command_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BM_ParseIndexValueReplace(GF_BifsDecoder *codec, GF_BitStream
      *bs, GF_List *com_list)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:809,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:812,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:813,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:815,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:815,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:816,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:817,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:821,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:822,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:824,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:824,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:825,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:826,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:829,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/memory_decoder.c:831,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/memory_decoder.c:833,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:835,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 837
      start: 802
    functionDepth: 1
    functionLinenumber: 802
    functionLinenumberEnd: 837
    functionName: BM_ParseRouteReplace
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_sg_find_node
    - gf_get_bit_size
    - gf_node_get_id
    - gf_list_add
    - gf_bs_read_int
    - gf_bifs_get_field_index
    - gf_sg_command_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BM_ParseRouteReplace(GF_BifsDecoder *codec, GF_BitStream *bs,
      GF_List *com_list)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:843,1
    - Dst: BM_ParseNodeReplace
      Src: /src/gpac/src/bifs/memory_decoder.c:846,1
    - Dst: BM_ParseFieldReplace
      Src: /src/gpac/src/bifs/memory_decoder.c:848,1
    - Dst: BM_ParseIndexValueReplace
      Src: /src/gpac/src/bifs/memory_decoder.c:850,1
    - Dst: BM_ParseRouteReplace
      Src: /src/gpac/src/bifs/memory_decoder.c:852,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 855
      start: 840
    functionDepth: 3
    functionLinenumber: 840
    functionLinenumberEnd: 855
    functionName: BM_ParseReplace
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - BM_ParseFieldReplace
    - BM_ParseNodeReplace
    - BM_ParseRouteReplace
    - gf_bs_read_int
    - BM_ParseIndexValueReplace
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BM_ParseReplace(GF_BifsDecoder *codec, GF_BitStream *bs, GF_List
      *com_list)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:866,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/memory_decoder.c:867,1
    - Dst: BD_DecSceneReplace
      Src: /src/gpac/src/bifs/memory_decoder.c:869,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:875,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:877,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/memory_decoder.c:878,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:879,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/memory_decoder.c:880,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/memory_decoder.c:882,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/memory_decoder.c:884,1
    - Dst: gf_strdup
      Src: /src/gpac/src/bifs/memory_decoder.c:886,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:887,1
    - Dst: gf_sg_route_del
      Src: /src/gpac/src/bifs/memory_decoder.c:888,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/memory_decoder.c:890,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 26
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 893
      start: 857
    functionDepth: 1
    functionLinenumber: 857
    functionLinenumberEnd: 893
    functionName: BM_SceneReplace
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_list_get
    - BD_DecSceneReplace
    - gf_strdup
    - gf_node_get_id
    - gf_sg_route_del
    - gf_list_count
    - gf_list_add
    - gf_list_rem
    - gf_list_del
    - gf_sg_command_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BM_SceneReplace(GF_BifsDecoder *codec, GF_BitStream *bs, GF_List
      *com_list)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:905,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:909,1
    - Dst: BM_ParseInsert
      Src: /src/gpac/src/bifs/memory_decoder.c:912,1
    - Dst: BM_ParseDelete
      Src: /src/gpac/src/bifs/memory_decoder.c:915,1
    - Dst: BM_ParseReplace
      Src: /src/gpac/src/bifs/memory_decoder.c:918,1
    - Dst: BM_SceneReplace
      Src: /src/gpac/src/bifs/memory_decoder.c:921,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:925,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:927,1
    - Dst: gf_bifs_dec_qp_remove
      Src: /src/gpac/src/bifs/memory_decoder.c:928,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:932,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/bifs/memory_decoder.c:934,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/memory_decoder.c:935,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/memory_decoder.c:936,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 38
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 896
    functionDepth: 5
    functionLinenumber: 896
    functionLinenumberEnd: 943
    functionName: BM_ParseCommand
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_list_count
    - BM_ParseDelete
    - BM_ParseReplace
    - gf_bifs_dec_qp_remove
    - gf_bs_read_int
    - gf_node_unregister
    - BM_ParseInsert
    - BM_SceneReplace
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BM_ParseCommand(GF_BifsDecoder *codec, GF_BitStream *bs, GF_List
      *com_list)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - co
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 945
    functionDepth: 0
    functionLinenumber: 945
    functionLinenumberEnd: 948
    functionName: BM_EndOfStream
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BM_EndOfStream(void *co)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:960,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:961,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/memory_decoder.c:965,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:967,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/memory_decoder.c:968,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/memory_decoder.c:969,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/bifs/memory_decoder.c:971,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/bifs/memory_decoder.c:974,1
    - Dst: gf_bs_set_eos_callback
      Src: /src/gpac/src/bifs/memory_decoder.c:975,1
    - Dst: BM_ParseCommand
      Src: /src/gpac/src/bifs/memory_decoder.c:976,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/bifs/memory_decoder.c:977,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/memory_decoder.c:980,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/memory_decoder.c:981,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:985,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/memory_decoder.c:988,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/memory_decoder.c:989,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/memory_decoder.c:990,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:992,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/memory_decoder.c:993,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/memory_decoder.c:995,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/memory_decoder.c:996,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/memory_decoder.c:997,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/bifs/memory_decoder.c:1002,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:1004,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:1006,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:1008,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/memory_decoder.c:1009,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/memory_decoder.c:1010,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:1011,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:1014,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:1014,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:1017,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/memory_decoder.c:1018,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/memory_decoder.c:1023,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 56
    argCount: 1
    argNames:
    - codec
    argTypes:
    - GF_BifsDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1027
      start: 953
    functionDepth: 6
    functionLinenumber: 953
    functionLinenumberEnd: 1027
    functionName: gf_bifs_flush_command_list
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_list_get
    - gf_bs_set_eos_callback
    - BM_ParseCommand
    - gf_bs_new
    - gf_bs_del
    - gf_list_count
    - gf_node_get_graph
    - gf_list_add
    - gf_sg_command_del
    - gf_node_unregister
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_flush_command_list(GF_BifsDecoder *codec)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bifs_dec_get_stream
      Src: /src/gpac/src/bifs/memory_decoder.c:1037,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/bifs/memory_decoder.c:1048,1
    - Dst: gf_bs_set_eos_callback
      Src: /src/gpac/src/bifs/memory_decoder.c:1049,1
    - Dst: BM_ParseCommand
      Src: /src/gpac/src/bifs/memory_decoder.c:1051,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/bifs/memory_decoder.c:1052,1
    - Dst: gf_bifs_flush_command_list
      Src: /src/gpac/src/bifs/memory_decoder.c:1056,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:1059,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/memory_decoder.c:1060,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/memory_decoder.c:1061,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/memory_decoder.c:1062,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/memory_decoder.c:1063,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 5
    argNames:
    - codec
    - ESID
    - data
    - data_length
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - u16
    - u8*
    - u32
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1074
      start: 1029
    functionDepth: 7
    functionLinenumber: 1029
    functionLinenumberEnd: 1074
    functionName: gf_bifs_decode_command_list
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_bs_set_eos_callback
    - BM_ParseCommand
    - gf_bs_new
    - gf_bs_del
    - gf_list_count
    - gf_bifs_dec_get_stream
    - gf_bifs_flush_command_list
    - gf_node_unregister
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bifs_decode_command_list(GF_BifsDecoder *codec, u16 ESID,
      u8 *data, u32 data_length, GF_List *com_list)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/com_enc.c:39,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/com_enc.c:43,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/com_enc.c:47,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/com_enc.c:48,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - codec
    - bs
    - name
    argTypes:
    - GF_BifsEncoder*
    - GF_BitStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 49
    functionName: gf_bifs_enc_name
    functionSourceFile: /src/gpac/src/bifs/com_enc.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_write_int
    linkageType: ''
    returnType: void
    signature: void gf_bifs_enc_name(GF_BifsEncoder *codec, GF_BitStream *bs, char
      *name)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:57,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:58,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/com_enc.c:61,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/com_enc.c:61,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_enc.c:62,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_enc.c:62,1
    - Dst: gf_bifs_field_index_by_mode
      Src: /src/gpac/src/bifs/com_enc.c:63,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:64,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_enc.c:66,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_enc.c:67,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:69,1
    - Dst: gf_bifs_enc_find_node
      Src: /src/gpac/src/bifs/com_enc.c:71,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:72,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:73,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_enc.c:74,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_enc.c:74,1
    - Dst: gf_bifs_field_index_by_mode
      Src: /src/gpac/src/bifs/com_enc.c:75,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:76,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:78,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:80,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:82,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:84,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:85,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:89,1
    - Dst: gf_node_new
      Src: /src/gpac/src/bifs/com_enc.c:96,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/bifs/com_enc.c:98,1
    - Dst: gf_sg_proto_create_instance
      Src: /src/gpac/src/bifs/com_enc.c:100,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_enc.c:103,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:105,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_enc.c:107,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_enc.c:107,1
    - Dst: gf_bifs_field_index_by_mode
      Src: /src/gpac/src/bifs/com_enc.c:108,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:109,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/com_enc.c:110,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:112,1
    - Dst: gf_bifs_enc_find_node
      Src: /src/gpac/src/bifs/com_enc.c:116,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:117,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:119,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_enc.c:120,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_enc.c:120,1
    - Dst: gf_bifs_field_index_by_mode
      Src: /src/gpac/src/bifs/com_enc.c:121,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:122,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:127,1
    - Dst: gf_bifs_enc_field
      Src: /src/gpac/src/bifs/com_enc.c:131,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 68
    argCount: 3
    argNames:
    - codec
    - com
    - bs
    argTypes:
    - GF_BifsEncoder*
    - GF_Command*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 133
    functionName: BE_XReplace
    functionSourceFile: /src/gpac/src/bifs/com_enc.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_list_get
    - gf_sg_proto_create_instance
    - gf_get_bit_size
    - gf_node_get_id
    - gf_bs_write_int
    - gf_bifs_field_index_by_mode
    - gf_list_count
    - GF_BIFS_WRITE_INT
    - gf_node_new
    - gf_node_get_field
    - gf_sg_vrml_is_sf_field
    - gf_sg_find_proto
    - gf_bifs_enc_field
    - gf_node_unregister
    - gf_node_register
    - gf_bifs_enc_find_node
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BE_XReplace(GF_BifsEncoder * codec, GF_Command *com, GF_BitStream
      *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:141,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:142,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/com_enc.c:145,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/com_enc.c:145,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_enc.c:146,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_enc.c:146,1
    - Dst: gf_bifs_field_index_by_mode
      Src: /src/gpac/src/bifs/com_enc.c:147,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:148,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_enc.c:150,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:153,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:156,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_enc.c:159,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:160,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_enc.c:162,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:163,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:164,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:167,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:168,1
    - Dst: gf_bifs_enc_field
      Src: /src/gpac/src/bifs/com_enc.c:170,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 31
    argCount: 3
    argNames:
    - codec
    - com
    - bs
    argTypes:
    - GF_BifsEncoder*
    - GF_Command*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 174
    functionName: BE_MultipleIndexedReplace
    functionSourceFile: /src/gpac/src/bifs/com_enc.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_list_get
    - gf_get_bit_size
    - gf_node_get_id
    - gf_bs_write_int
    - gf_bifs_field_index_by_mode
    - gf_list_count
    - GF_BIFS_WRITE_INT
    - gf_node_get_field
    - gf_bifs_enc_field
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BE_MultipleIndexedReplace(GF_BifsEncoder * codec, GF_Command
      *com, GF_BitStream *bs)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/com_enc.c:183,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/com_enc.c:183,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:185,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_enc.c:187,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_enc.c:188,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:190,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_enc.c:194,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:196,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:201,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_enc.c:205,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:208,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:211,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:213,1
    - Dst: gf_bifs_enc_field
      Src: /src/gpac/src/bifs/com_enc.c:215,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:219,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 38
    argCount: 3
    argNames:
    - codec
    - com
    - bs
    argTypes:
    - GF_BifsEncoder*
    - GF_Command*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 221
    functionName: BE_MultipleReplace
    functionSourceFile: /src/gpac/src/bifs/com_enc.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_list_get
    - gf_bifs_enc_field
    - gf_get_bit_size
    - gf_node_get_id
    - gf_bs_write_int
    - gf_list_count
    - GF_BIFS_WRITE_INT
    - gf_node_get_field
    - gf_bifs_get_field_index
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BE_MultipleReplace(GF_BifsEncoder * codec, GF_Command *com,
      GF_BitStream *bs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:227,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:228,1
    - Dst: gf_bifs_enc_node
      Src: /src/gpac/src/bifs/com_enc.c:230,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/com_enc.c:235,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_enc.c:245,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 3
    argNames:
    - codec
    - com
    - bs
    argTypes:
    - GF_BifsEncoder*
    - GF_Command*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 249
    functionName: BE_GlobalQuantizer
    functionSourceFile: /src/gpac/src/bifs/com_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_bifs_enc_node
    - gf_list_count
    - gf_node_unregister
    - gf_node_register
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BE_GlobalQuantizer(GF_BifsEncoder * codec, GF_Command *com,
      GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_enc.c:255,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:257,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:259,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:260,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:263,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:264,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:266,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - codec
    - com
    - bs
    argTypes:
    - GF_BifsEncoder*
    - GF_Command*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 268
    functionName: BE_EncProtoDelete
    functionSourceFile: /src/gpac/src/bifs/com_enc.c
    functionUses: 0
    functionsReached:
    - GF_BIFS_WRITE_INT
    - gf_get_bit_size
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BE_EncProtoDelete(GF_BifsEncoder * codec, GF_Command *com, GF_BitStream
      *bs)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:272,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:273,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:276,1
    - Dst: BE_EncProtoList
      Src: /src/gpac/src/bifs/com_enc.c:277,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:279,1
    - Dst: BE_EncProtoDelete
      Src: /src/gpac/src/bifs/com_enc.c:280,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:282,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:285,1
    - Dst: BE_MultipleIndexedReplace
      Src: /src/gpac/src/bifs/com_enc.c:286,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:288,1
    - Dst: BE_MultipleReplace
      Src: /src/gpac/src/bifs/com_enc.c:289,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:291,1
    - Dst: BE_GlobalQuantizer
      Src: /src/gpac/src/bifs/com_enc.c:292,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:294,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:295,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/com_enc.c:295,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:298,1
    - Dst: BE_XReplace
      Src: /src/gpac/src/bifs/com_enc.c:299,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 32
    argCount: 3
    argNames:
    - codec
    - com
    - bs
    argTypes:
    - GF_BifsEncoder*
    - GF_Command*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 270
    functionDepth: 2
    functionLinenumber: 270
    functionLinenumberEnd: 303
    functionName: BE_ExtendedUpdate
    functionSourceFile: /src/gpac/src/bifs/com_enc.c
    functionUses: 0
    functionsReached:
    - BE_MultipleIndexedReplace
    - gf_node_get_id
    - BE_EncProtoList
    - BE_MultipleReplace
    - GF_BIFS_WRITE_INT
    - BE_XReplace
    - BE_GlobalQuantizer
    - BE_EncProtoDelete
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BE_ExtendedUpdate(GF_BifsEncoder * codec, GF_Command *com, GF_BitStream
      *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:310,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:311,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:313,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/com_enc.c:313,1
    - Dst: gf_bifs_get_child_table
      Src: /src/gpac/src/bifs/com_enc.c:315,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:319,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:322,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:325,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:326,1
    - Dst: gf_bifs_enc_node
      Src: /src/gpac/src/bifs/com_enc.c:329,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - codec
    - com
    - bs
    argTypes:
    - GF_BifsEncoder*
    - GF_Command*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 306
    functionDepth: 1
    functionLinenumber: 306
    functionLinenumberEnd: 330
    functionName: BE_NodeInsert
    functionSourceFile: /src/gpac/src/bifs/com_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_bifs_enc_node
    - gf_node_get_id
    - gf_list_count
    - GF_BIFS_WRITE_INT
    - gf_bifs_get_child_table
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BE_NodeInsert(GF_BifsEncoder *codec, GF_Command *com, GF_BitStream
      *bs)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:338,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:339,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:341,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/com_enc.c:341,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_enc.c:344,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_enc.c:344,1
    - Dst: gf_bifs_field_index_by_mode
      Src: /src/gpac/src/bifs/com_enc.c:345,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:346,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:350,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:353,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:356,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:357,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_enc.c:360,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_enc.c:362,1
    - Dst: memcpy
      Src: /src/gpac/src/bifs/com_enc.c:365,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/com_enc.c:366,1
    - Dst: gf_bifs_enc_node
      Src: /src/gpac/src/bifs/com_enc.c:371,1
    - Dst: gf_bifs_enc_sf_field
      Src: /src/gpac/src/bifs/com_enc.c:373,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 33
    argCount: 3
    argNames:
    - codec
    - com
    - bs
    argTypes:
    - GF_BifsEncoder*
    - GF_Command*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 332
    functionDepth: 1
    functionLinenumber: 332
    functionLinenumberEnd: 375
    functionName: BE_IndexInsert
    functionSourceFile: /src/gpac/src/bifs/com_enc.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_list_get
    - gf_sg_vrml_get_sf_type
    - gf_get_bit_size
    - gf_node_get_id
    - memcpy
    - gf_bifs_enc_node
    - gf_bifs_field_index_by_mode
    - gf_list_count
    - GF_BIFS_WRITE_INT
    - gf_node_get_field
    - gf_sg_vrml_is_sf_field
    - gf_bifs_enc_sf_field
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BE_IndexInsert(GF_BifsEncoder *codec, GF_Command *com, GF_BitStream
      *bs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:383,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:384,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:386,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/com_enc.c:386,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_enc.c:388,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_enc.c:388,1
    - Dst: gf_bifs_field_index_by_mode
      Src: /src/gpac/src/bifs/com_enc.c:389,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:391,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:395,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:398,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:401,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:402,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 3
    argNames:
    - codec
    - com
    - bs
    argTypes:
    - GF_BifsEncoder*
    - GF_Command*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 378
    functionDepth: 1
    functionLinenumber: 378
    functionLinenumberEnd: 406
    functionName: BE_IndexDelete
    functionSourceFile: /src/gpac/src/bifs/com_enc.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_list_get
    - gf_get_bit_size
    - gf_node_get_id
    - gf_bifs_field_index_by_mode
    - gf_list_count
    - GF_BIFS_WRITE_INT
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BE_IndexDelete(GF_BifsEncoder *codec, GF_Command *com, GF_BitStream
      *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:412,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:413,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:416,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/com_enc.c:416,1
    - Dst: gf_bifs_enc_node
      Src: /src/gpac/src/bifs/com_enc.c:417,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - codec
    - com
    - bs
    argTypes:
    - GF_BifsEncoder*
    - GF_Command*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 409
    functionDepth: 1
    functionLinenumber: 409
    functionLinenumberEnd: 418
    functionName: BE_NodeReplace
    functionSourceFile: /src/gpac/src/bifs/com_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_bifs_enc_node
    - gf_node_get_id
    - gf_list_count
    - GF_BIFS_WRITE_INT
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BE_NodeReplace(GF_BifsEncoder *codec, GF_Command *com, GF_BitStream
      *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:426,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:427,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:429,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/com_enc.c:429,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_enc.c:431,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_enc.c:431,1
    - Dst: gf_bifs_field_index_by_mode
      Src: /src/gpac/src/bifs/com_enc.c:432,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:433,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_enc.c:435,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/com_enc.c:440,1
    - Dst: gf_bifs_enc_field
      Src: /src/gpac/src/bifs/com_enc.c:442,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - codec
    - com
    - bs
    argTypes:
    - GF_BifsEncoder*
    - GF_Command*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 420
    functionDepth: 1
    functionLinenumber: 420
    functionLinenumberEnd: 446
    functionName: BE_FieldReplace
    functionSourceFile: /src/gpac/src/bifs/com_enc.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_list_get
    - gf_sg_vrml_get_sf_type
    - gf_get_bit_size
    - gf_node_get_id
    - gf_bifs_field_index_by_mode
    - gf_list_count
    - GF_BIFS_WRITE_INT
    - gf_node_get_field
    - gf_bifs_enc_field
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BE_FieldReplace(GF_BifsEncoder *codec, GF_Command *com, GF_BitStream
      *bs)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:454,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:455,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:457,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/com_enc.c:457,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_enc.c:458,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_enc.c:458,1
    - Dst: gf_bifs_field_index_by_mode
      Src: /src/gpac/src/bifs/com_enc.c:459,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:460,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_enc.c:462,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_enc.c:464,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:469,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:472,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:475,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:476,1
    - Dst: gf_bifs_enc_node
      Src: /src/gpac/src/bifs/com_enc.c:481,1
    - Dst: memcpy
      Src: /src/gpac/src/bifs/com_enc.c:483,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/com_enc.c:484,1
    - Dst: gf_bifs_enc_sf_field
      Src: /src/gpac/src/bifs/com_enc.c:486,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 3
    argNames:
    - codec
    - com
    - bs
    argTypes:
    - GF_BifsEncoder*
    - GF_Command*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 448
    functionDepth: 1
    functionLinenumber: 448
    functionLinenumberEnd: 489
    functionName: BE_IndexFieldReplace
    functionSourceFile: /src/gpac/src/bifs/com_enc.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_list_get
    - gf_sg_vrml_get_sf_type
    - gf_get_bit_size
    - gf_node_get_id
    - gf_bifs_enc_node
    - memcpy
    - gf_bifs_field_index_by_mode
    - gf_list_count
    - GF_BIFS_WRITE_INT
    - gf_node_get_field
    - gf_sg_vrml_is_sf_field
    - gf_bifs_enc_sf_field
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BE_IndexFieldReplace(GF_BifsEncoder *codec, GF_Command *com,
      GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:498,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:500,1
    - Dst: gf_bifs_enc_name
      Src: /src/gpac/src/bifs/com_enc.c:501,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:504,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:508,1
    - Dst: gf_bifs_enc_find_node
      Src: /src/gpac/src/bifs/com_enc.c:509,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_enc.c:510,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_enc.c:511,1
    - Dst: gf_bifs_field_index_by_mode
      Src: /src/gpac/src/bifs/com_enc.c:512,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:514,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:517,1
    - Dst: gf_bifs_enc_find_node
      Src: /src/gpac/src/bifs/com_enc.c:518,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_enc.c:519,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_enc.c:520,1
    - Dst: gf_bifs_field_index_by_mode
      Src: /src/gpac/src/bifs/com_enc.c:521,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:522,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 4
    argNames:
    - codec
    - com
    - bs
    - isInsert
    argTypes:
    - GF_BifsEncoder*
    - GF_Command*
    - GF_BitStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 491
    functionDepth: 2
    functionLinenumber: 491
    functionLinenumberEnd: 524
    functionName: BE_RouteReplace
    functionSourceFile: /src/gpac/src/bifs/com_enc.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_get_bit_size
    - gf_bifs_enc_name
    - gf_bifs_field_index_by_mode
    - GF_BIFS_WRITE_INT
    - gf_bifs_enc_find_node
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BE_RouteReplace(GF_BifsEncoder *codec, GF_Command *com, GF_BitStream
      *bs, Bool isInsert)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:540,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:541,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:551,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:553,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:559,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:562,1
    - Dst: gf_bifs_enc_name
      Src: /src/gpac/src/bifs/com_enc.c:564,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:566,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:568,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:570,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:571,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:572,1
    - Dst: gf_bifs_enc_name
      Src: /src/gpac/src/bifs/com_enc.c:574,1
    - Dst: gf_sg_proto_field_get_field
      Src: /src/gpac/src/bifs/com_enc.c:578,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_enc.c:579,1
    - Dst: gf_bifs_enc_sf_field
      Src: /src/gpac/src/bifs/com_enc.c:580,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:582,1
    - Dst: gf_bifs_enc_mf_field
      Src: /src/gpac/src/bifs/com_enc.c:583,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:591,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:593,1
    - Dst: memset
      Src: /src/gpac/src/bifs/com_enc.c:596,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:601,1
    - Dst: gf_bifs_enc_mf_field
      Src: /src/gpac/src/bifs/com_enc.c:602,1
    - Dst: BE_EncProtoList
      Src: /src/gpac/src/bifs/com_enc.c:606,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:609,1
    - Dst: gf_bifs_enc_node
      Src: /src/gpac/src/bifs/com_enc.c:612,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:613,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:617,1
    - Dst: gf_bifs_enc_node
      Src: /src/gpac/src/bifs/com_enc.c:618,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:620,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:625,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:627,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:631,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_enc.c:633,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:635,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:638,1
    - Dst: gf_bifs_enc_route
      Src: /src/gpac/src/bifs/com_enc.c:640,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:643,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:646,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:647,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:648,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:650,1
    - Dst: gf_bifs_enc_route
      Src: /src/gpac/src/bifs/com_enc.c:652,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:660,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:661,1
    - Dst: gf_sg_proto_get_field_count
      Src: /src/gpac/src/bifs/com_enc.c:665,1
    - Dst: gf_sg_proto_field_find
      Src: /src/gpac/src/bifs/com_enc.c:667,1
    - Dst: gf_sg_proto_field_get_field
      Src: /src/gpac/src/bifs/com_enc.c:668,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:672,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:673,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:674,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/com_enc.c:676,1
    - Dst: gf_bifs_enc_sf_field
      Src: /src/gpac/src/bifs/com_enc.c:687,1
    - Dst: gf_bifs_enc_sf_field
      Src: /src/gpac/src/bifs/com_enc.c:691,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:702,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 163
    argCount: 3
    argNames:
    - codec
    - protoList
    - bs
    argTypes:
    - GF_BifsEncoder*
    - GF_List*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 527
    functionDepth: 2
    functionLinenumber: 527
    functionLinenumberEnd: 709
    functionName: BE_EncProtoList
    functionSourceFile: /src/gpac/src/bifs/com_enc.c
    functionUses: 2
    functionsReached:
    - gf_list_get
    - gf_bifs_enc_mf_field
    - gf_sg_vrml_get_sf_type
    - gf_bifs_enc_node
    - gf_get_bit_size
    - gf_bifs_enc_name
    - BE_EncProtoList
    - gf_list_count
    - memset
    - GF_BIFS_WRITE_INT
    - gf_sg_proto_field_get_field
    - gf_bifs_enc_sf_field
    - gf_sg_vrml_is_sf_field
    - gf_bifs_enc_route
    - gf_sg_proto_get_field_count
    - gf_sg_proto_field_find
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BE_EncProtoList(GF_BifsEncoder *codec, GF_List *protoList, GF_BitStream
      *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:720,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:723,1
    - Dst: gf_bifs_enc_name
      Src: /src/gpac/src/bifs/com_enc.c:724,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:727,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/com_enc.c:727,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_enc.c:728,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_enc.c:729,1
    - Dst: gf_bifs_field_index_by_mode
      Src: /src/gpac/src/bifs/com_enc.c:730,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:732,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:735,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/com_enc.c:735,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_enc.c:736,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_enc.c:737,1
    - Dst: gf_bifs_field_index_by_mode
      Src: /src/gpac/src/bifs/com_enc.c:738,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:739,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 3
    argNames:
    - codec
    - r
    - bs
    argTypes:
    - GF_BifsEncoder*
    - GF_Route*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 741
      start: 713
    functionDepth: 2
    functionLinenumber: 713
    functionLinenumberEnd: 741
    functionName: gf_bifs_enc_route
    functionSourceFile: /src/gpac/src/bifs/com_enc.c
    functionUses: 1
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_get_bit_size
    - gf_node_get_id
    - gf_bifs_enc_name
    - gf_bifs_field_index_by_mode
    - GF_BIFS_WRITE_INT
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_enc_route(GF_BifsEncoder *codec, GF_Route *r, GF_BitStream
      *bs)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:749,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:750,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:752,1
    - Dst: BE_EncProtoList
      Src: /src/gpac/src/bifs/com_enc.c:753,1
    - Dst: BE_EncProtoList
      Src: /src/gpac/src/bifs/com_enc.c:756,1
    - Dst: gf_bifs_enc_node
      Src: /src/gpac/src/bifs/com_enc.c:761,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:762,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:763,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:766,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:767,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_enc.c:768,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:770,1
    - Dst: gf_bifs_enc_route
      Src: /src/gpac/src/bifs/com_enc.c:773,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:773,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:775,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:778,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:779,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:780,1
    - Dst: gf_bifs_enc_route
      Src: /src/gpac/src/bifs/com_enc.c:782,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:782,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 45
    argCount: 4
    argNames:
    - codec
    - com
    - bs
    - routes
    argTypes:
    - GF_BifsEncoder*
    - GF_Command*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 789
      start: 743
    functionDepth: 3
    functionLinenumber: 743
    functionLinenumberEnd: 789
    functionName: BE_SceneReplaceEx
    functionSourceFile: /src/gpac/src/bifs/com_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_get_bit_size
    - gf_bifs_enc_node
    - BE_EncProtoList
    - gf_list_count
    - GF_BIFS_WRITE_INT
    - gf_bifs_enc_route
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BE_SceneReplaceEx(GF_BifsEncoder *codec, GF_Command *com, GF_BitStream
      *bs, GF_List *routes)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:798,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:799,1
    - Dst: BE_EncProtoList
      Src: /src/gpac/src/bifs/com_enc.c:804,1
    - Dst: gf_bifs_enc_node
      Src: /src/gpac/src/bifs/com_enc.c:808,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:809,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:810,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:813,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:814,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_enc.c:815,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:817,1
    - Dst: gf_bifs_enc_route
      Src: /src/gpac/src/bifs/com_enc.c:820,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:820,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:822,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:825,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:826,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:827,1
    - Dst: gf_bifs_enc_route
      Src: /src/gpac/src/bifs/com_enc.c:829,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:829,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 3
    argNames:
    - codec
    - graph
    - bs
    argTypes:
    - GF_BifsEncoder*
    - GF_SceneGraph*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 836
      start: 792
    functionDepth: 3
    functionLinenumber: 792
    functionLinenumberEnd: 836
    functionName: BE_SceneReplace
    functionSourceFile: /src/gpac/src/bifs/com_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_get_bit_size
    - gf_bifs_enc_node
    - BE_EncProtoList
    - gf_list_count
    - GF_BIFS_WRITE_INT
    - gf_bifs_enc_route
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BE_SceneReplace(GF_BifsEncoder *codec, GF_SceneGraph *graph,
      GF_BitStream *bs)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:849,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:852,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:857,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/com_enc.c:857,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:858,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/com_enc.c:861,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:865,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/bifs/com_enc.c:867,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/com_enc.c:869,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_enc.c:873,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_enc.c:875,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/com_enc.c:878,1
    - Dst: BE_SceneReplaceEx
      Src: /src/gpac/src/bifs/com_enc.c:880,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:882,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:883,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/com_enc.c:884,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/com_enc.c:885,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/com_enc.c:887,1
    - Dst: BE_SceneReplaceEx
      Src: /src/gpac/src/bifs/com_enc.c:889,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:895,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:896,1
    - Dst: BE_NodeReplace
      Src: /src/gpac/src/bifs/com_enc.c:897,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:900,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:901,1
    - Dst: BE_FieldReplace
      Src: /src/gpac/src/bifs/com_enc.c:902,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:905,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:906,1
    - Dst: BE_IndexFieldReplace
      Src: /src/gpac/src/bifs/com_enc.c:907,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:910,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:911,1
    - Dst: BE_RouteReplace
      Src: /src/gpac/src/bifs/com_enc.c:912,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:915,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:916,1
    - Dst: BE_NodeInsert
      Src: /src/gpac/src/bifs/com_enc.c:917,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:920,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:921,1
    - Dst: BE_IndexInsert
      Src: /src/gpac/src/bifs/com_enc.c:922,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:925,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:926,1
    - Dst: BE_RouteReplace
      Src: /src/gpac/src/bifs/com_enc.c:927,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:930,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:931,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:932,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/com_enc.c:932,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:935,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:936,1
    - Dst: BE_IndexDelete
      Src: /src/gpac/src/bifs/com_enc.c:937,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:940,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:941,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:942,1
    - Dst: BE_ExtendedUpdate
      Src: /src/gpac/src/bifs/com_enc.c:946,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:951,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_enc.c:954,1
    - Dst: gf_bifs_enc_qp_remove
      Src: /src/gpac/src/bifs/com_enc.c:954,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 100
    argCount: 3
    argNames:
    - codec
    - comList
    - bs
    argTypes:
    - GF_BifsEncoder*
    - GF_List*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 956
      start: 839
    functionDepth: 4
    functionLinenumber: 839
    functionLinenumberEnd: 956
    functionName: gf_bifs_enc_commands
    functionSourceFile: /src/gpac/src/bifs/com_enc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - BE_FieldReplace
    - gf_list_count
    - BE_IndexFieldReplace
    - GF_BIFS_WRITE_INT
    - BE_SceneReplaceEx
    - gf_list_get
    - gf_list_new
    - gf_node_get_id
    - BE_IndexDelete
    - gf_list_add
    - BE_RouteReplace
    - gf_sg_find_node
    - GF_LOG
    - gf_bifs_enc_qp_remove
    - BE_ExtendedUpdate
    - BE_NodeReplace
    - gf_list_del
    - BE_NodeInsert
    - BE_IndexInsert
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_enc_commands(GF_BifsEncoder *codec, GF_List *comList,
      GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/com_enc.c:968,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_enc.c:970,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/bifs/com_enc.c:972,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:973,1
    - Dst: BE_SceneReplace
      Src: /src/gpac/src/bifs/com_enc.c:974,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/com_enc.c:976,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/bifs/com_enc.c:977,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/bifs/com_enc.c:979,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/com_enc.c:982,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 3
    argNames:
    - codec
    - out_data
    - out_data_length
    argTypes:
    - GF_BifsEncoder*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 986
      start: 959
    functionDepth: 4
    functionLinenumber: 959
    functionLinenumberEnd: 986
    functionName: gf_bifs_encoder_get_rap
    functionSourceFile: /src/gpac/src/bifs/com_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_list_get
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_del
    - BE_SceneReplace
    - GF_BIFS_WRITE_INT
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bifs_encoder_get_rap(GF_BifsEncoder *codec, u8 **out_data,
      u32 *out_data_length)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/bifs/conditional.c:45,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/conditional.c:46,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - n
    - eff
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 48
    functionName: Conditional_PreDestroy
    functionSourceFile: /src/gpac/src/bifs/conditional.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void Conditional_PreDestroy(GF_Node *n, void *eff, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/bifs/conditional.c:52,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/conditional.c:53,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - codec
    - n
    argTypes:
    - GF_BifsDecoder*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 55
    functionName: Conditional_BufferReplaced
    functionSourceFile: /src/gpac/src/bifs/conditional.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void Conditional_BufferReplaced(GF_BifsDecoder *codec, GF_Node *n)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/bifs/conditional.c:65,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/bifs/conditional.c:70,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/bifs/conditional.c:80,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/bifs/conditional.c:88,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/bifs/conditional.c:90,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/conditional.c:92,1
    - Dst: gf_bifs_dec_command
      Src: /src/gpac/src/bifs/conditional.c:97,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/bifs/conditional.c:98,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/conditional.c:105,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/conditional.c:112,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 40
    argCount: 1
    argNames:
    - node
    argTypes:
    - M_Conditional*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 116
    functionName: Conditional_execute
    functionSourceFile: /src/gpac/src/bifs/conditional.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_event_out
    - gf_bifs_dec_command
    - gf_bs_new
    - gf_bs_del
    - gf_node_get_graph
    - gf_node_get_scene_time
    - gf_node_unregister
    - gf_node_register
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void Conditional_execute(M_Conditional *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Conditional_execute
      Src: /src/gpac/src/bifs/conditional.c:122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 118
    functionDepth: 2
    functionLinenumber: 118
    functionLinenumberEnd: 123
    functionName: Conditional_OnActivate
    functionSourceFile: /src/gpac/src/bifs/conditional.c
    functionUses: 0
    functionsReached:
    - Conditional_execute
    linkageType: ''
    returnType: void
    signature: void Conditional_OnActivate(GF_Node *n, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Conditional_execute
      Src: /src/gpac/src/bifs/conditional.c:129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 125
    functionDepth: 2
    functionLinenumber: 125
    functionLinenumberEnd: 130
    functionName: Conditional_OnReverseActivate
    functionSourceFile: /src/gpac/src/bifs/conditional.c
    functionUses: 0
    functionsReached:
    - Conditional_execute
    linkageType: ''
    returnType: void
    signature: void Conditional_OnReverseActivate(GF_Node *n, GF_Route *route)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/conditional.c:135,1
    - Dst: gf_malloc
      Src: /src/gpac/src/bifs/conditional.c:136,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/conditional.c:139,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/bifs/conditional.c:145,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/bifs/conditional.c:146,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - codec
    - node
    argTypes:
    - GF_BifsDecoder*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 149
    functionName: SetupConditional
    functionSourceFile: /src/gpac/src/bifs/conditional.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_list_get
    - gf_node_set_private
    - gf_node_set_callback_function
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void SetupConditional(GF_BifsDecoder *codec, GF_Node *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/quantize.c:33,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/bifs/quantize.c:37,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - codec
    - qp
    argTypes:
    - GF_BifsEncoder*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 41
    functionName: gf_bifs_enc_qp_set
    functionSourceFile: /src/gpac/src/bifs/quantize.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_list_insert
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_enc_qp_set(GF_BifsEncoder *codec, GF_Node *qp)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/quantize.c:48,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/quantize.c:49,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/quantize.c:50,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - codec
    - ActivatePrev
    argTypes:
    - GF_BifsEncoder*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 55
    functionName: gf_bifs_enc_qp_remove
    functionSourceFile: /src/gpac/src/bifs/quantize.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_enc_qp_remove(GF_BifsEncoder *codec, Bool ActivatePrev)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ceil
      Src: /src/gpac/src/bifs/quantize.c:61,1
    - Dst: log1p
      Src: /src/gpac/src/bifs/quantize.c:61,1
    - Dst: log
      Src: /src/gpac/src/bifs/quantize.c:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - codec
    argTypes:
    - GF_BifsEncoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 62
    functionName: gf_bifs_enc_qp14_get_bits
    functionSourceFile: /src/gpac/src/bifs/quantize.c
    functionUses: 0
    functionsReached:
    - log
    - log1p
    - ceil
    linkageType: ''
    returnType: u32
    signature: u32 gf_bifs_enc_qp14_get_bits(GF_BifsEncoder *codec)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - codec
    - Enter
    argTypes:
    - GF_BifsEncoder*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 72
    functionName: gf_bifs_enc_qp14_enter
    functionSourceFile: /src/gpac/src/bifs/quantize.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_bifs_enc_qp14_enter(GF_BifsEncoder *codec, Bool Enter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - codec
    argTypes:
    - GF_BifsEncoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 79
    functionName: gf_bifs_enc_qp14_reset
    functionSourceFile: /src/gpac/src/bifs/quantize.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_bifs_enc_qp14_reset(GF_BifsEncoder *codec)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - codec
    - NbElements
    argTypes:
    - GF_BifsEncoder*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 85
    functionName: gf_bifs_enc_qp14_set_length
    functionSourceFile: /src/gpac/src/bifs/quantize.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_bifs_enc_qp14_set_length(GF_BifsEncoder *codec, u32 NbElements)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/quantize.c:99,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/bifs/quantize.c:102,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/quantize.c:129,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/quantize.c:131,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/quantize.c:132,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/quantize.c:133,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/quantize.c:135,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/quantize.c:136,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 39
    argCount: 3
    argNames:
    - codec
    - ft
    - bs
    argTypes:
    - GF_BifsEncoder*
    - Fixed
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 139
    functionName: gf_bifs_enc_mantissa_float
    functionSourceFile: /src/gpac/src/bifs/quantize.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void gf_bifs_enc_mantissa_float(GF_BifsEncoder *codec, Fixed ft, GF_BitStream
      *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FIX2FLT
      Src: /src/gpac/src/bifs/quantize.c:148,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/bifs/quantize.c:150,1
    - Dst: FIX2INT
      Src: /src/gpac/src/bifs/quantize.c:151,1
    - Dst: gf_floor
      Src: /src/gpac/src/bifs/quantize.c:151,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/bifs/quantize.c:151,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - Min
    - Max
    - NbBits
    - value
    argTypes:
    - Fixed
    - Fixed
    - u32
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 152
    functionName: Q_Quantize
    functionSourceFile: /src/gpac/src/bifs/quantize.c
    functionUses: 0
    functionsReached:
    - FIX2INT
    - FLT2FIX
    - FIX2FLT
    - gf_floor
    linkageType: ''
    returnType: s32
    signature: s32 Q_Quantize(Fixed Min, Fixed Max, u32 NbBits, Fixed value)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: Q_Quantize
      Src: /src/gpac/src/bifs/quantize.c:162,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/quantize.c:163,1
    - Dst: Q_Quantize
      Src: /src/gpac/src/bifs/quantize.c:166,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/quantize.c:167,1
    - Dst: Q_Quantize
      Src: /src/gpac/src/bifs/quantize.c:168,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/quantize.c:169,1
    - Dst: Q_Quantize
      Src: /src/gpac/src/bifs/quantize.c:172,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/quantize.c:173,1
    - Dst: Q_Quantize
      Src: /src/gpac/src/bifs/quantize.c:174,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/quantize.c:175,1
    - Dst: Q_Quantize
      Src: /src/gpac/src/bifs/quantize.c:176,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/quantize.c:177,1
    - Dst: Q_Quantize
      Src: /src/gpac/src/bifs/quantize.c:180,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/quantize.c:181,1
    - Dst: Q_Quantize
      Src: /src/gpac/src/bifs/quantize.c:182,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/quantize.c:183,1
    - Dst: Q_Quantize
      Src: /src/gpac/src/bifs/quantize.c:184,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/quantize.c:185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 34
    argCount: 7
    argNames:
    - codec
    - bs
    - FieldType
    - BMin
    - BMax
    - NbBits
    - field_ptr
    argTypes:
    - GF_BifsEncoder*
    - GF_BitStream*
    - u32
    - SFVec3f
    - SFVec3f
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 155
    functionDepth: 2
    functionLinenumber: 155
    functionLinenumberEnd: 193
    functionName: Q_EncFloat
    functionSourceFile: /src/gpac/src/bifs/quantize.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - Q_Quantize
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Q_EncFloat(GF_BifsEncoder *codec, GF_BitStream *bs, u32 FieldType,
      SFVec3f BMin, SFVec3f BMax, u32 NbBits, void *field_ptr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/quantize.c:203,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 6
    argNames:
    - codec
    - bs
    - QType
    - b_min
    - NbBits
    - field_ptr
    argTypes:
    - GF_BifsEncoder*
    - GF_BitStream*
    - u32
    - SFInt32
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 198
    functionDepth: 1
    functionLinenumber: 198
    functionLinenumberEnd: 208
    functionName: Q_EncInt
    functionSourceFile: /src/gpac/src/bifs/quantize.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Q_EncInt(GF_BifsEncoder *codec, GF_BitStream *bs, u32 QType,
      SFInt32 b_min, u32 NbBits, void *field_ptr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ABS
      Src: /src/gpac/src/bifs/quantize.c:217,1
    - Dst: ABS
      Src: /src/gpac/src/bifs/quantize.c:218,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/quantize.c:222,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/quantize.c:223,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/bifs/quantize.c:225,1
    - Dst: gf_divfix
      Src: /src/gpac/src/bifs/quantize.c:225,1
    - Dst: INT2FIX
      Src: /src/gpac/src/bifs/quantize.c:225,1
    - Dst: gf_atan2
      Src: /src/gpac/src/bifs/quantize.c:225,1
    - Dst: Q_Quantize
      Src: /src/gpac/src/bifs/quantize.c:226,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/quantize.c:228,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - codec
    - bs
    - NbBits
    - NbComp
    - m_ft
    argTypes:
    - GF_BifsEncoder*
    - GF_BitStream*
    - u32
    - u32
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 210
    functionDepth: 2
    functionLinenumber: 210
    functionLinenumberEnd: 231
    functionName: Q_EncCoordOnUnitSphere
    functionSourceFile: /src/gpac/src/bifs/quantize.c
    functionUses: 0
    functionsReached:
    - ABS
    - INT2FIX
    - Q_Quantize
    - gf_bs_write_int
    - gf_divfix
    - gf_atan2
    - gf_mulfix
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Q_EncCoordOnUnitSphere(GF_BifsEncoder *codec, GF_BitStream *bs,
      u32 NbBits, u32 NbComp, Fixed *m_ft)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_norm
      Src: /src/gpac/src/bifs/quantize.c:237,1
    - Dst: Q_EncCoordOnUnitSphere
      Src: /src/gpac/src/bifs/quantize.c:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - codec
    - bs
    - NbBits
    - field_ptr
    argTypes:
    - GF_BifsEncoder*
    - GF_BitStream*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 233
    functionDepth: 3
    functionLinenumber: 233
    functionLinenumberEnd: 242
    functionName: Q_EncNormal
    functionSourceFile: /src/gpac/src/bifs/quantize.c
    functionUses: 0
    functionsReached:
    - Q_EncCoordOnUnitSphere
    - gf_vec_norm
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Q_EncNormal(GF_BifsEncoder *codec, GF_BitStream *bs, u32 NbBits,
      void *field_ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_quat_from_rotation
      Src: /src/gpac/src/bifs/quantize.c:250,1
    - Dst: Q_EncCoordOnUnitSphere
      Src: /src/gpac/src/bifs/quantize.c:255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - codec
    - bs
    - NbBits
    - field_ptr
    argTypes:
    - GF_BifsEncoder*
    - GF_BitStream*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 244
    functionDepth: 3
    functionLinenumber: 244
    functionLinenumberEnd: 256
    functionName: Q_EncRotation
    functionSourceFile: /src/gpac/src/bifs/quantize.c
    functionUses: 0
    functionsReached:
    - gf_quat_from_rotation
    - Q_EncCoordOnUnitSphere
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Q_EncRotation(GF_BifsEncoder *codec, GF_BitStream *bs, u32 NbBits,
      void *field_ptr)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_bifs_get_aq_info
      Src: /src/gpac/src/bifs/quantize.c:284,1
    - Dst: gf_bifs_enc_qp14_get_bits
      Src: /src/gpac/src/bifs/quantize.c:289,1
    - Dst: Q_IsTypeOn
      Src: /src/gpac/src/bifs/quantize.c:299,1
    - Dst: Q_EncFloat
      Src: /src/gpac/src/bifs/quantize.c:314,1
    - Dst: Q_EncInt
      Src: /src/gpac/src/bifs/quantize.c:319,1
    - Dst: Q_EncNormal
      Src: /src/gpac/src/bifs/quantize.c:325,1
    - Dst: Q_EncRotation
      Src: /src/gpac/src/bifs/quantize.c:330,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 58
    argCount: 4
    argNames:
    - codec
    - bs
    - node
    - field
    argTypes:
    - GF_BifsEncoder*
    - GF_BitStream*
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 258
    functionDepth: 4
    functionLinenumber: 258
    functionLinenumberEnd: 336
    functionName: gf_bifs_enc_quant_field
    functionSourceFile: /src/gpac/src/bifs/quantize.c
    functionUses: 0
    functionsReached:
    - gf_bifs_get_aq_info
    - Q_EncInt
    - Q_EncRotation
    - Q_EncFloat
    - Q_IsTypeOn
    - gf_bifs_enc_qp14_get_bits
    - Q_EncNormal
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_enc_quant_field(GF_BifsEncoder *codec, GF_BitStream
      *bs, GF_Node *node, GF_FieldInfo *field)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/bifs/script_dec.c:75,1
    - Dst: strlen
      Src: /src/gpac/src/bifs/script_dec.c:75,1
    - Dst: strlen
      Src: /src/gpac/src/bifs/script_dec.c:76,1
    - Dst: strlen
      Src: /src/gpac/src/bifs/script_dec.c:76,1
    - Dst: gf_malloc
      Src: /src/gpac/src/bifs/script_dec.c:77,1
    - Dst: strcpy
      Src: /src/gpac/src/bifs/script_dec.c:78,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/script_dec.c:79,1
    - Dst: strncat
      Src: /src/gpac/src/bifs/script_dec.c:82,1
    - Dst: strlen
      Src: /src/gpac/src/bifs/script_dec.c:82,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - parser
    - str
    argTypes:
    - ScriptParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 83
    functionName: SFS_AddString
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - strcpy
    - strlen
    - strncat
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void SFS_AddString(ScriptParser *parser, char *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/bifs/script_dec.c:88,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - parser
    - val
    argTypes:
    - ScriptParser*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 90
    functionName: SFS_AddInt
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 0
    functionsReached:
    - sprintf
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_AddInt(ScriptParser *parser, s32 val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/bifs/script_dec.c:94,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - parser
    - c
    argTypes:
    - ScriptParser*
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 96
    functionName: SFS_AddChar
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 0
    functionsReached:
    - sprintf
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_AddChar(ScriptParser *parser, char c)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:107,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:108,1
    - Dst: gf_bifs_dec_name
      Src: /src/gpac/src/bifs/script_dec.c:109,1
    - Dst: gf_sg_script_field_new
      Src: /src/gpac/src/bifs/script_dec.c:110,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/script_dec.c:114,1
    - Dst: gf_strdup
      Src: /src/gpac/src/bifs/script_dec.c:114,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:117,1
    - Dst: gf_sg_proto_get_field_count
      Src: /src/gpac/src/bifs/script_dec.c:119,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/script_dec.c:120,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:121,1
    - Dst: gf_sg_script_field_get_info
      Src: /src/gpac/src/bifs/script_dec.c:122,1
    - Dst: gf_sg_proto_field_set_ised
      Src: /src/gpac/src/bifs/script_dec.c:124,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:130,1
    - Dst: gf_sg_script_field_get_info
      Src: /src/gpac/src/bifs/script_dec.c:131,1
    - Dst: gf_bifs_dec_field
      Src: /src/gpac/src/bifs/script_dec.c:133,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 138
    functionName: ParseScriptField
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_bifs_dec_field
    - gf_get_bit_size
    - gf_bifs_dec_name
    - gf_sg_script_field_get_info
    - gf_list_add
    - gf_bs_read_int
    - gf_sg_proto_field_set_ised
    - gf_sg_proto_get_field_count
    - gf_sg_script_field_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ParseScriptField(ScriptParser *parser)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pars
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionName: SFS_IncIndent
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SFS_IncIndent(ScriptParser *pars)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pars
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionName: SFS_DecIndent
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SFS_DecIndent(ScriptParser *pars)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:147,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - pars
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionName: SFS_Space
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 0
    functionsReached:
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_Space(ScriptParser *pars)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:153,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - pars
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 155
    functionName: SFS_Indent
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 0
    functionsReached:
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_Indent(ScriptParser *pars)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 161
    functionName: SFS_Line
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 0
    functionsReached:
    - SFS_AddString
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE SFS_Line(ScriptParser *parser)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/script_dec.c:171,1
    - Dst: memset
      Src: /src/gpac/src/bifs/script_dec.c:173,1
    - Dst: gf_malloc
      Src: /src/gpac/src/bifs/script_dec.c:178,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/script_dec.c:180,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:186,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:188,1
    - Dst: ParseScriptField
      Src: /src/gpac/src/bifs/script_dec.c:189,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:193,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:194,1
    - Dst: ParseScriptField
      Src: /src/gpac/src/bifs/script_dec.c:196,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:201,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:203,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:204,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:207,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:208,1
    - Dst: SFS_Identifier
      Src: /src/gpac/src/bifs/script_dec.c:209,1
    - Dst: SFS_Arguments
      Src: /src/gpac/src/bifs/script_dec.c:210,1
    - Dst: SFS_Space
      Src: /src/gpac/src/bifs/script_dec.c:211,1
    - Dst: SFS_StatementBlock
      Src: /src/gpac/src/bifs/script_dec.c:212,1
    - Dst: SFS_Line
      Src: /src/gpac/src/bifs/script_dec.c:213,1
    - Dst: SFS_Line
      Src: /src/gpac/src/bifs/script_dec.c:220,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/script_dec.c:222,1
    - Dst: gf_strdup
      Src: /src/gpac/src/bifs/script_dec.c:223,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/script_dec.c:227,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/script_dec.c:228,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/script_dec.c:229,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/script_dec.c:230,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/script_dec.c:232,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/script_dec.c:233,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 62
    argCount: 4
    argNames:
    - codec
    - script_field
    - bs
    - n
    argTypes:
    - GF_BifsDecoder*
    - SFScript*
    - GF_BitStream*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 164
    functionDepth: 2
    functionLinenumber: 164
    functionLinenumberEnd: 235
    functionName: SFScript_Parse
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_free
    - gf_list_new
    - gf_strdup
    - gf_list_get
    - SFS_StatementBlock
    - SFS_Space
    - SFS_Identifier
    - memset
    - SFS_Arguments
    - SFS_Line
    - gf_list_count
    - gf_bs_read_int
    - SFS_AddString
    - gf_list_rem
    - gf_list_del
    - gf_malloc
    - ParseScriptField
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SFScript_Parse(GF_BifsDecoder *codec, SFScript *script_field,
      GF_BitStream *bs, GF_Node *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:247,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:248,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/script_dec.c:248,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/script_dec.c:248,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:249,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/script_dec.c:249,1
    - Dst: gf_bifs_dec_name
      Src: /src/gpac/src/bifs/script_dec.c:253,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/script_dec.c:254,1
    - Dst: gf_strdup
      Src: /src/gpac/src/bifs/script_dec.c:254,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:255,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 239
    functionDepth: 1
    functionLinenumber: 239
    functionLinenumberEnd: 257
    functionName: SFS_Identifier
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_strdup
    - gf_get_bit_size
    - gf_bifs_dec_name
    - gf_list_count
    - gf_list_add
    - gf_bs_read_int
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_Identifier(ScriptParser *parser)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:263,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:265,1
    - Dst: SFS_Identifier
      Src: /src/gpac/src/bifs/script_dec.c:267,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:268,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:269,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:271,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - parser
    - is_var
    argTypes:
    - ScriptParser*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 259
    functionDepth: 2
    functionLinenumber: 259
    functionLinenumberEnd: 272
    functionName: SFS_Arguments
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_Identifier
    - gf_bs_read_int
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_Arguments(ScriptParser *parser, Bool is_var)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:278,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:279,1
    - Dst: SFS_IncIndent
      Src: /src/gpac/src/bifs/script_dec.c:280,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:282,1
    - Dst: SFS_Line
      Src: /src/gpac/src/bifs/script_dec.c:283,1
    - Dst: SFS_Indent
      Src: /src/gpac/src/bifs/script_dec.c:284,1
    - Dst: SFS_Statement
      Src: /src/gpac/src/bifs/script_dec.c:285,1
    - Dst: SFS_DecIndent
      Src: /src/gpac/src/bifs/script_dec.c:287,1
    - Dst: SFS_Line
      Src: /src/gpac/src/bifs/script_dec.c:288,1
    - Dst: SFS_Indent
      Src: /src/gpac/src/bifs/script_dec.c:289,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:290,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:292,1
    - Dst: SFS_Statement
      Src: /src/gpac/src/bifs/script_dec.c:293,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:294,1
    - Dst: SFS_Statement
      Src: /src/gpac/src/bifs/script_dec.c:296,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 2
    argNames:
    - parser
    - funcBody
    argTypes:
    - ScriptParser*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 274
    functionDepth: 2
    functionLinenumber: 274
    functionLinenumberEnd: 298
    functionName: SFS_StatementBlock
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_Line
    - SFS_Statement
    - SFS_Indent
    - gf_bs_read_int
    - SFS_AddString
    - SFS_DecIndent
    - SFS_IncIndent
    linkageType: ''
    returnType: void
    signature: void SFS_StatementBlock(ScriptParser *parser, Bool funcBody)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:306,1
    - Dst: SFS_IfStatement
      Src: /src/gpac/src/bifs/script_dec.c:309,1
    - Dst: SFS_ForStatement
      Src: /src/gpac/src/bifs/script_dec.c:312,1
    - Dst: SFS_WhileStatement
      Src: /src/gpac/src/bifs/script_dec.c:315,1
    - Dst: SFS_ReturnStatement
      Src: /src/gpac/src/bifs/script_dec.c:318,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:321,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:324,1
    - Dst: SFS_CompoundExpression
      Src: /src/gpac/src/bifs/script_dec.c:327,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:328,1
    - Dst: SFS_SwitchStatement
      Src: /src/gpac/src/bifs/script_dec.c:331,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 301
    functionDepth: 1
    functionLinenumber: 301
    functionLinenumberEnd: 334
    functionName: SFS_Statement
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_ReturnStatement
    - SFS_CompoundExpression
    - SFS_SwitchStatement
    - SFS_ForStatement
    - gf_bs_read_int
    - SFS_WhileStatement
    - SFS_IfStatement
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_Statement(ScriptParser *parser)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:339,1
    - Dst: SFS_CompoundExpression
      Src: /src/gpac/src/bifs/script_dec.c:340,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:341,1
    - Dst: SFS_StatementBlock
      Src: /src/gpac/src/bifs/script_dec.c:342,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:344,1
    - Dst: SFS_Line
      Src: /src/gpac/src/bifs/script_dec.c:345,1
    - Dst: SFS_Indent
      Src: /src/gpac/src/bifs/script_dec.c:346,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:347,1
    - Dst: SFS_StatementBlock
      Src: /src/gpac/src/bifs/script_dec.c:348,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 336
    functionDepth: 3
    functionLinenumber: 336
    functionLinenumberEnd: 350
    functionName: SFS_IfStatement
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_CompoundExpression
    - SFS_StatementBlock
    - SFS_Line
    - SFS_Indent
    - gf_bs_read_int
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_IfStatement(ScriptParser *parser)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:357,1
    - Dst: SFS_CompoundExpression
      Src: /src/gpac/src/bifs/script_dec.c:358,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:359,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:360,1
    - Dst: SFS_Line
      Src: /src/gpac/src/bifs/script_dec.c:361,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:363,1
    - Dst: SFS_Indent
      Src: /src/gpac/src/bifs/script_dec.c:365,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:366,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:367,1
    - Dst: SFS_AddInt
      Src: /src/gpac/src/bifs/script_dec.c:368,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:369,1
    - Dst: SFS_Line
      Src: /src/gpac/src/bifs/script_dec.c:370,1
    - Dst: SFS_Indent
      Src: /src/gpac/src/bifs/script_dec.c:371,1
    - Dst: SFS_StatementBlock
      Src: /src/gpac/src/bifs/script_dec.c:372,1
    - Dst: SFS_Line
      Src: /src/gpac/src/bifs/script_dec.c:373,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:375,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:378,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:379,1
    - Dst: SFS_Line
      Src: /src/gpac/src/bifs/script_dec.c:380,1
    - Dst: SFS_StatementBlock
      Src: /src/gpac/src/bifs/script_dec.c:381,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:383,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 352
    functionDepth: 3
    functionLinenumber: 352
    functionLinenumberEnd: 384
    functionName: SFS_SwitchStatement
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_CompoundExpression
    - SFS_StatementBlock
    - SFS_AddInt
    - SFS_Line
    - SFS_Indent
    - gf_bs_read_int
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_SwitchStatement(ScriptParser *parser)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:389,1
    - Dst: SFS_OptionalExpression
      Src: /src/gpac/src/bifs/script_dec.c:390,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:391,1
    - Dst: SFS_OptionalExpression
      Src: /src/gpac/src/bifs/script_dec.c:392,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:393,1
    - Dst: SFS_OptionalExpression
      Src: /src/gpac/src/bifs/script_dec.c:394,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:395,1
    - Dst: SFS_StatementBlock
      Src: /src/gpac/src/bifs/script_dec.c:397,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 386
    functionDepth: 3
    functionLinenumber: 386
    functionLinenumberEnd: 398
    functionName: SFS_ForStatement
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_OptionalExpression
    - SFS_StatementBlock
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_ForStatement(ScriptParser *parser)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:403,1
    - Dst: SFS_CompoundExpression
      Src: /src/gpac/src/bifs/script_dec.c:404,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:405,1
    - Dst: SFS_StatementBlock
      Src: /src/gpac/src/bifs/script_dec.c:407,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 400
    functionDepth: 3
    functionLinenumber: 400
    functionLinenumberEnd: 408
    functionName: SFS_WhileStatement
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_CompoundExpression
    - SFS_StatementBlock
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_WhileStatement(ScriptParser *parser)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:413,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:414,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:415,1
    - Dst: SFS_CompoundExpression
      Src: /src/gpac/src/bifs/script_dec.c:416,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:418,1
    - Dst: SFS_Line
      Src: /src/gpac/src/bifs/script_dec.c:419,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 410
    functionDepth: 2
    functionLinenumber: 410
    functionLinenumberEnd: 420
    functionName: SFS_ReturnStatement
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_Line
    - SFS_CompoundExpression
    - gf_bs_read_int
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_ReturnStatement(ScriptParser *parser)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:425,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:426,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:428,1
    - Dst: SFS_CompoundExpression
      Src: /src/gpac/src/bifs/script_dec.c:429,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 422
    functionDepth: 1
    functionLinenumber: 422
    functionLinenumberEnd: 430
    functionName: SFS_CompoundExpression
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 6
    functionsReached:
    - SFS_Expression
    - SFS_CompoundExpression
    - gf_bs_read_int
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_CompoundExpression(ScriptParser *parser)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:435,1
    - Dst: SFS_CompoundExpression
      Src: /src/gpac/src/bifs/script_dec.c:436,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 432
    functionDepth: 2
    functionLinenumber: 432
    functionLinenumberEnd: 438
    functionName: SFS_OptionalExpression
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_CompoundExpression
    - gf_bs_read_int
    linkageType: ''
    returnType: void
    signature: void SFS_OptionalExpression(ScriptParser *parser)
  - BBCount: 55
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:443,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/script_dec.c:449,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:456,1
    - Dst: SFS_CompoundExpression
      Src: /src/gpac/src/bifs/script_dec.c:457,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:458,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:461,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:462,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:465,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:466,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:469,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:470,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:473,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:474,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:477,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:478,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:481,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:482,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:485,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:486,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:489,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:490,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:491,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:492,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:493,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:496,1
    - Dst: SFS_GetString
      Src: /src/gpac/src/bifs/script_dec.c:497,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:498,1
    - Dst: SFS_GetNumber
      Src: /src/gpac/src/bifs/script_dec.c:501,1
    - Dst: SFS_Identifier
      Src: /src/gpac/src/bifs/script_dec.c:504,1
    - Dst: SFS_FunctionCall
      Src: /src/gpac/src/bifs/script_dec.c:507,1
    - Dst: SFS_NewObject
      Src: /src/gpac/src/bifs/script_dec.c:510,1
    - Dst: SFS_ObjectMemberAccess
      Src: /src/gpac/src/bifs/script_dec.c:513,1
    - Dst: SFS_ObjectMethodCall
      Src: /src/gpac/src/bifs/script_dec.c:516,1
    - Dst: SFS_ArrayDeref
      Src: /src/gpac/src/bifs/script_dec.c:519,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:523,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:524,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:525,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:528,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:529,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:530,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:533,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:534,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:535,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:538,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:539,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:540,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:543,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:544,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:545,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:548,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:549,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:550,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:553,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:554,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:555,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:558,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:559,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:560,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:563,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:564,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:565,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:568,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:569,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:570,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:573,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:574,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:575,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:578,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:579,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:580,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:583,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:584,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:585,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:588,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:589,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:590,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:593,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:594,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:595,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:598,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:599,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:600,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:603,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:604,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:605,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:608,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:609,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:610,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:613,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:614,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:615,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:618,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:619,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:620,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:623,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:624,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:625,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:628,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:629,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:630,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:633,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:634,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:635,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:638,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:639,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:640,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:643,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:644,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:645,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:648,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:649,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:650,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:653,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:654,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:655,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:658,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:659,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:660,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:663,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:664,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:665,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:668,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:669,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:670,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:673,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:674,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:675,1
    - Dst: SFS_GetBoolean
      Src: /src/gpac/src/bifs/script_dec.c:678,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:681,1
    - Dst: SFS_Arguments
      Src: /src/gpac/src/bifs/script_dec.c:682,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:685,1
    - Dst: SFS_Arguments
      Src: /src/gpac/src/bifs/script_dec.c:686,1
    - Dst: SFS_StatementBlock
      Src: /src/gpac/src/bifs/script_dec.c:687,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 247
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 694
      start: 441
    functionDepth: 3
    functionLinenumber: 441
    functionLinenumberEnd: 694
    functionName: SFS_Expression
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 2
    functionsReached:
    - SFS_GetNumber
    - SFS_FunctionCall
    - GF_LOG
    - SFS_CompoundExpression
    - SFS_ArrayDeref
    - SFS_NewObject
    - SFS_StatementBlock
    - SFS_Expression
    - SFS_Identifier
    - SFS_Arguments
    - SFS_GetBoolean
    - SFS_ObjectMethodCall
    - gf_bs_read_int
    - SFS_AddString
    - SFS_ObjectMemberAccess
    - SFS_GetString
    linkageType: ''
    returnType: void
    signature: void SFS_Expression(ScriptParser *parser)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:699,1
    - Dst: SFS_Identifier
      Src: /src/gpac/src/bifs/script_dec.c:700,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:701,1
    - Dst: SFS_Params
      Src: /src/gpac/src/bifs/script_dec.c:702,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:703,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 704
      start: 696
    functionDepth: 2
    functionLinenumber: 696
    functionLinenumberEnd: 704
    functionName: SFS_NewObject
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_Identifier
    - SFS_Params
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_NewObject(ScriptParser *parser)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:709,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:711,1
    - Dst: SFS_CompoundExpression
      Src: /src/gpac/src/bifs/script_dec.c:712,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:713,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 714
      start: 706
    functionDepth: 4
    functionLinenumber: 706
    functionLinenumberEnd: 714
    functionName: SFS_ArrayDeref
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_Expression
    - SFS_CompoundExpression
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_ArrayDeref(ScriptParser *parser)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SFS_Identifier
      Src: /src/gpac/src/bifs/script_dec.c:719,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:720,1
    - Dst: SFS_Params
      Src: /src/gpac/src/bifs/script_dec.c:721,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:722,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 716
    functionDepth: 2
    functionLinenumber: 716
    functionLinenumberEnd: 723
    functionName: SFS_FunctionCall
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_Identifier
    - SFS_Params
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_FunctionCall(ScriptParser *parser)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:728,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:730,1
    - Dst: SFS_Identifier
      Src: /src/gpac/src/bifs/script_dec.c:731,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 732
      start: 725
    functionDepth: 4
    functionLinenumber: 725
    functionLinenumberEnd: 732
    functionName: SFS_ObjectMemberAccess
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_Expression
    - SFS_Identifier
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_ObjectMemberAccess(ScriptParser *parser)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:738,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:740,1
    - Dst: SFS_Identifier
      Src: /src/gpac/src/bifs/script_dec.c:741,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:742,1
    - Dst: SFS_Params
      Src: /src/gpac/src/bifs/script_dec.c:743,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:744,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 745
      start: 735
    functionDepth: 4
    functionLinenumber: 735
    functionLinenumberEnd: 745
    functionName: SFS_ObjectMethodCall
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_Expression
    - SFS_Identifier
    - SFS_Params
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_ObjectMethodCall(ScriptParser *parser)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:751,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:753,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:755,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:756,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 747
    functionDepth: 4
    functionLinenumber: 747
    functionLinenumberEnd: 758
    functionName: SFS_Params
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 3
    functionsReached:
    - SFS_Expression
    - gf_bs_read_int
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_Params(ScriptParser *parser)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:766,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:767,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:768,1
    - Dst: SFS_AddInt
      Src: /src/gpac/src/bifs/script_dec.c:769,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:773,1
    - Dst: SFS_AddChar
      Src: /src/gpac/src/bifs/script_dec.c:776,1
    - Dst: SFS_AddChar
      Src: /src/gpac/src/bifs/script_dec.c:778,1
    - Dst: SFS_AddChar
      Src: /src/gpac/src/bifs/script_dec.c:780,1
    - Dst: SFS_AddChar
      Src: /src/gpac/src/bifs/script_dec.c:782,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:784,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 786
      start: 760
    functionDepth: 2
    functionLinenumber: 760
    functionLinenumberEnd: 786
    functionName: SFS_GetNumber
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_AddInt
    - gf_bs_read_int
    - SFS_AddChar
    linkageType: ''
    returnType: void
    signature: void SFS_GetNumber(ScriptParser *parser)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bifs_dec_name
      Src: /src/gpac/src/bifs/script_dec.c:792,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:793,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 794
      start: 788
    functionDepth: 1
    functionLinenumber: 788
    functionLinenumberEnd: 794
    functionName: SFS_GetString
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - gf_bifs_dec_name
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_GetString(ScriptParser *parser)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:799,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:800,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:802,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 804
      start: 796
    functionDepth: 1
    functionLinenumber: 796
    functionLinenumberEnd: 804
    functionName: SFS_GetBoolean
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_int
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_GetBoolean(ScriptParser *parser)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:43,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/com_dec.c:54,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 3
    argNames:
    - bs
    - name
    - size
    argTypes:
    - GF_BitStream*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 56
    functionName: gf_bifs_dec_name
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 4
    functionsReached:
    - GF_LOG
    - gf_bs_read_int
    linkageType: ''
    returnType: void
    signature: void gf_bifs_dec_name(GF_BitStream *bs, char *name, u32 size)
  - BBCount: 53
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:69,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:70,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:73,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:73,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:74,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:75,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_dec.c:77,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:80,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:82,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:84,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:85,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:86,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:89,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:89,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:90,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:91,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_dec.c:93,1
    - Dst: floor
      Src: /src/gpac/src/bifs/com_dec.c:105,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/bifs/com_dec.c:105,1
    - Dst: floor
      Src: /src/gpac/src/bifs/com_dec.c:108,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:112,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:115,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:128,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/bifs/com_dec.c:129,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:132,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:132,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:133,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:134,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_dec.c:136,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:144,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:145,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:146,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:149,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:149,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:150,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:151,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_dec.c:153,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/com_dec.c:165,1
    - Dst: gf_node_replace_child
      Src: /src/gpac/src/bifs/com_dec.c:167,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:168,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/bifs/com_dec.c:178,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/bifs/com_dec.c:181,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/com_dec.c:183,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/bifs/com_dec.c:187,1
    - Dst: memcpy
      Src: /src/gpac/src/bifs/com_dec.c:190,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:193,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:196,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/com_dec.c:206,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:212,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/com_dec.c:214,1
    - Dst: gf_malloc
      Src: /src/gpac/src/bifs/com_dec.c:228,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:236,1
    - Dst: gf_bifs_dec_field
      Src: /src/gpac/src/bifs/com_dec.c:241,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/bifs/com_dec.c:245,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:250,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/bifs/com_dec.c:251,1
    - Dst: gf_sg_vrml_field_clone
      Src: /src/gpac/src/bifs/com_dec.c:257,1
    - Dst: gf_bifs_dec_field
      Src: /src/gpac/src/bifs/com_dec.c:259,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:263,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 186
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 265
    functionName: BD_XReplace
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_sg_vrml_mf_get_item
    - gf_sg_vrml_field_copy
    - gf_node_get_field
    - gf_bifs_dec_sf_field
    - gf_node_unregister
    - FIX2FLT
    - gf_sg_vrml_mf_alloc
    - gf_bifs_dec_field
    - gf_sg_vrml_field_clone
    - gf_sg_vrml_get_sf_type
    - memcpy
    - gf_node_replace_child
    - gf_node_unregister_children
    - gf_sg_vrml_is_sf_field
    - floor
    - gf_bifs_get_field_index
    - gf_sg_vrml_mf_reset
    - gf_sg_find_node
    - gf_get_bit_size
    - gf_node_list_get_child
    - gf_malloc
    - gf_bifs_dec_node
    - gf_bs_read_int
    - gf_bifs_check_field_change
    - gf_node_register
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_XReplace(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:272,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:274,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:276,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/bifs/com_dec.c:277,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/bifs/com_dec.c:278,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:279,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:282,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:283,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:285,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/bifs/com_dec.c:286,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/bifs/com_dec.c:287,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 292
    functionName: BD_DecProtoDelete
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_sg_proto_del
    - gf_sg_find_proto
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecProtoDelete(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:302,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:303,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:305,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:305,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:306,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:307,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_dec.c:309,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:310,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:312,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:313,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:314,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:321,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/com_dec.c:323,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:325,1
    - Dst: gf_node_replace_child
      Src: /src/gpac/src/bifs/com_dec.c:328,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:331,1
    - Dst: memcpy
      Src: /src/gpac/src/bifs/com_dec.c:335,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/com_dec.c:336,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:339,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/bifs/com_dec.c:345,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:347,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:351,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 50
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 295
    functionDepth: 1
    functionLinenumber: 295
    functionLinenumberEnd: 353
    functionName: BD_DecMultipleIndexReplace
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_dec_node
    - gf_sg_find_node
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - memcpy
    - gf_sg_vrml_mf_get_item
    - gf_node_replace_child
    - gf_bifs_dec_sf_field
    - gf_node_get_field
    - gf_bs_read_int
    - gf_sg_vrml_is_sf_field
    - gf_bifs_get_field_index
    - gf_bifs_check_field_change
    - gf_node_register
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecMultipleIndexReplace(GF_BifsDecoder * codec, GF_BitStream
      *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:361,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:362,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:365,1
    - Dst: gf_bifs_dec_node_mask
      Src: /src/gpac/src/bifs/com_dec.c:367,1
    - Dst: gf_bifs_dec_node_list
      Src: /src/gpac/src/bifs/com_dec.c:369,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 355
    functionDepth: 1
    functionLinenumber: 355
    functionLinenumberEnd: 372
    functionName: BD_DecMultipleReplace
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_bifs_dec_node_mask
    - gf_bifs_dec_node_list
    - gf_bs_read_int
    - gf_sg_find_node
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecMultipleReplace(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/com_dec.c:378,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/com_dec.c:382,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/com_dec.c:387,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/com_dec.c:388,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:394,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 375
    functionDepth: 1
    functionLinenumber: 375
    functionLinenumberEnd: 398
    functionName: BD_DecGlobalQuantizer
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_bifs_dec_node
    - gf_node_register
    - gf_node_get_tag
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecGlobalQuantizer(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:404,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:405,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/bifs/com_dec.c:407,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 400
    functionDepth: 1
    functionLinenumber: 400
    functionLinenumberEnd: 408
    functionName: BD_DecNodeDeleteEx
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - gf_sg_find_node
    - gf_node_replace
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecNodeDeleteEx(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:421,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:422,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:424,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:424,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:425,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:426,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_dec.c:428,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:434,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:435,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:442,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/com_dec.c:460,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/bifs/com_dec.c:461,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:466,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:467,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:469,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:469,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:470,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:471,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_dec.c:473,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:479,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:480,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:487,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/com_dec.c:505,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/bifs/com_dec.c:506,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/bifs/com_dec.c:511,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 89
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 411
    functionDepth: 1
    functionLinenumber: 411
    functionLinenumberEnd: 513
    functionName: BD_DecOperandReplace
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_sg_find_node
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_mf_get_item
    - gf_sg_vrml_field_copy
    - gf_node_get_field
    - gf_bs_read_int
    - gf_sg_vrml_is_sf_field
    - gf_bifs_get_field_index
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecOperandReplace(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:520,1
    - Dst: gf_bifs_dec_proto_list
      Src: /src/gpac/src/bifs/com_dec.c:523,1
    - Dst: BD_DecProtoDelete
      Src: /src/gpac/src/bifs/com_dec.c:525,1
    - Dst: gf_sg_delete_all_protos
      Src: /src/gpac/src/bifs/com_dec.c:527,1
    - Dst: BD_DecMultipleIndexReplace
      Src: /src/gpac/src/bifs/com_dec.c:529,1
    - Dst: BD_DecMultipleReplace
      Src: /src/gpac/src/bifs/com_dec.c:531,1
    - Dst: BD_DecGlobalQuantizer
      Src: /src/gpac/src/bifs/com_dec.c:533,1
    - Dst: BD_DecNodeDeleteEx
      Src: /src/gpac/src/bifs/com_dec.c:535,1
    - Dst: BD_XReplace
      Src: /src/gpac/src/bifs/com_dec.c:537,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 516
    functionDepth: 2
    functionLinenumber: 516
    functionLinenumberEnd: 541
    functionName: BD_DecExtendedUpdate
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - BD_DecMultipleReplace
    - BD_XReplace
    - BD_DecMultipleIndexReplace
    - gf_bifs_dec_proto_list
    - BD_DecProtoDelete
    - BD_DecGlobalQuantizer
    - gf_sg_delete_all_protos
    - BD_DecNodeDeleteEx
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecExtendedUpdate(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:551,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:552,1
    - Dst: gf_bifs_get_child_table
      Src: /src/gpac/src/bifs/com_dec.c:555,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:558,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:561,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/com_dec.c:574,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:577,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/bifs/com_dec.c:579,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/bifs/com_dec.c:583,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:585,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 544
    functionDepth: 1
    functionLinenumber: 544
    functionLinenumberEnd: 588
    functionName: BD_DecNodeInsert
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_bifs_dec_node
    - gf_sg_find_node
    - gf_node_get_field_by_name
    - gf_bs_read_int
    - gf_bifs_check_field_change
    - gf_node_register
    - gf_node_insert_child
    - gf_bifs_get_child_table
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecNodeInsert(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:601,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:602,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:605,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:605,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:606,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:608,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:611,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:614,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_dec.c:626,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:628,1
    - Dst: memcpy
      Src: /src/gpac/src/bifs/com_dec.c:630,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/com_dec.c:631,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/com_dec.c:635,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:638,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/bifs/com_dec.c:642,1
    - Dst: gf_node_list_insert_child
      Src: /src/gpac/src/bifs/com_dec.c:644,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:647,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/bifs/com_dec.c:650,1
    - Dst: gf_sg_vrml_mf_insert
      Src: /src/gpac/src/bifs/com_dec.c:653,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:656,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:657,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 57
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 591
    functionDepth: 1
    functionLinenumber: 591
    functionLinenumberEnd: 660
    functionName: BD_DecIndexInsert
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_list_add_child
    - gf_node_get_num_fields_in_mode
    - gf_bifs_dec_node
    - gf_sg_vrml_mf_insert
    - gf_sg_find_node
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - memcpy
    - gf_node_list_insert_child
    - gf_sg_vrml_mf_append
    - gf_bifs_dec_sf_field
    - gf_node_get_field
    - gf_bs_read_int
    - gf_sg_vrml_is_sf_field
    - gf_bifs_get_field_index
    - gf_bifs_check_field_change
    - gf_node_register
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecIndexInsert(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:667,1
    - Dst: BD_DecNodeInsert
      Src: /src/gpac/src/bifs/com_dec.c:670,1
    - Dst: BD_DecExtendedUpdate
      Src: /src/gpac/src/bifs/com_dec.c:673,1
    - Dst: BD_DecIndexInsert
      Src: /src/gpac/src/bifs/com_dec.c:675,1
    - Dst: gf_bifs_dec_route
      Src: /src/gpac/src/bifs/com_dec.c:677,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 663
    functionDepth: 3
    functionLinenumber: 663
    functionLinenumberEnd: 681
    functionName: BD_DecInsert
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_bifs_dec_route
    - BD_DecNodeInsert
    - gf_bs_read_int
    - BD_DecExtendedUpdate
    - BD_DecIndexInsert
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecInsert(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:693,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:694,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:697,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:697,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:698,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:700,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:703,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:714,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_dec.c:716,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:718,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/com_dec.c:720,1
    - Dst: gf_node_replace_child
      Src: /src/gpac/src/bifs/com_dec.c:726,1
    - Dst: gf_sg_vrml_mf_remove
      Src: /src/gpac/src/bifs/com_dec.c:729,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:732,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 684
    functionDepth: 1
    functionLinenumber: 684
    functionLinenumberEnd: 735
    functionName: BD_DecIndexDelete
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_sg_vrml_mf_remove
    - gf_sg_find_node
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - gf_node_replace_child
    - gf_node_get_field
    - gf_bs_read_int
    - gf_sg_vrml_is_sf_field
    - gf_bifs_get_field_index
    - gf_bifs_check_field_change
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecIndexDelete(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:743,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:746,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:747,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/bifs/com_dec.c:754,1
    - Dst: BD_DecIndexDelete
      Src: /src/gpac/src/bifs/com_dec.c:756,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:758,1
    - Dst: gf_sg_route_del_by_id
      Src: /src/gpac/src/bifs/com_dec.c:760,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 766
      start: 737
    functionDepth: 2
    functionLinenumber: 737
    functionLinenumberEnd: 766
    functionName: BD_DecDelete
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_sg_find_node
    - gf_node_replace
    - BD_DecIndexDelete
    - gf_bs_read_int
    - gf_sg_route_del_by_id
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecDelete(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:775,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:777,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/com_dec.c:781,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/bifs/com_dec.c:784,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 786
      start: 769
    functionDepth: 1
    functionLinenumber: 769
    functionLinenumberEnd: 786
    functionName: BD_DecNodeReplace
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_bifs_dec_node
    - gf_bs_read_int
    - gf_sg_find_node
    - gf_node_replace
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecNodeReplace(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:796,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:797,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:799,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:799,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:800,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:801,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_dec.c:804,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:814,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/bifs/com_dec.c:815,1
    - Dst: gf_bifs_dec_field
      Src: /src/gpac/src/bifs/com_dec.c:821,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/bifs/com_dec.c:825,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:827,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 829
      start: 788
    functionDepth: 1
    functionLinenumber: 788
    functionLinenumberEnd: 829
    functionName: BD_DecFieldReplace
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_dec_field
    - gf_sg_find_node
    - gf_get_bit_size
    - gf_node_unregister_children
    - gf_node_get_field
    - gf_bs_read_int
    - gf_sg_vrml_is_sf_field
    - gf_bifs_get_field_index
    - gf_bifs_check_field_change
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecFieldReplace(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:841,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:843,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:845,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:845,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:846,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:847,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_dec.c:850,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:852,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:854,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:857,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/com_dec.c:873,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:879,1
    - Dst: gf_node_replace_child
      Src: /src/gpac/src/bifs/com_dec.c:883,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:884,1
    - Dst: memcpy
      Src: /src/gpac/src/bifs/com_dec.c:888,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/com_dec.c:889,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/bifs/com_dec.c:896,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:898,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:899,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 62
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 904
      start: 831
    functionDepth: 1
    functionLinenumber: 831
    functionLinenumberEnd: 904
    functionName: BD_DecIndexValueReplace
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_dec_node
    - gf_sg_find_node
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - memcpy
    - gf_sg_vrml_mf_get_item
    - gf_node_replace_child
    - gf_bifs_dec_sf_field
    - gf_node_get_field
    - gf_bs_read_int
    - gf_sg_vrml_is_sf_field
    - gf_bifs_get_field_index
    - gf_bifs_check_field_change
    - gf_node_register
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecIndexValueReplace(GF_BifsDecoder * codec, GF_BitStream
      *bs)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:914,1
    - Dst: gf_sg_route_find
      Src: /src/gpac/src/bifs/com_dec.c:916,1
    - Dst: gf_sg_route_get_name
      Src: /src/gpac/src/bifs/com_dec.c:919,1
    - Dst: gf_sg_route_del
      Src: /src/gpac/src/bifs/com_dec.c:920,1
    - Dst: gf_sg_route_get_name
      Src: /src/gpac/src/bifs/com_dec.c:924,1
    - Dst: strcpy
      Src: /src/gpac/src/bifs/com_dec.c:929,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:932,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:933,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:935,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:935,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:936,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:937,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:941,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:942,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:944,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:944,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:945,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:946,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/bifs/com_dec.c:951,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/bifs/com_dec.c:962,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/com_dec.c:966,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/com_dec.c:969,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/bifs/com_dec.c:971,1
    - Dst: gf_sg_route_set_id
      Src: /src/gpac/src/bifs/com_dec.c:973,1
    - Dst: gf_sg_route_set_name
      Src: /src/gpac/src/bifs/com_dec.c:974,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 60
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 977
      start: 906
    functionDepth: 1
    functionLinenumber: 906
    functionLinenumberEnd: 977
    functionName: BD_DecRouteReplace
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_sg_route_get_name
    - gf_node_get_num_fields_in_mode
    - gf_list_new
    - gf_sg_find_node
    - gf_get_bit_size
    - GF_SAFEALLOC
    - strcpy
    - gf_sg_route_del
    - gf_sg_route_new
    - gf_sg_route_set_id
    - gf_sg_route_find
    - gf_list_add
    - gf_bs_read_int
    - gf_list_del_item
    - gf_bifs_get_field_index
    - gf_sg_route_set_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecRouteReplace(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:983,1
    - Dst: BD_DecNodeReplace
      Src: /src/gpac/src/bifs/com_dec.c:986,1
    - Dst: BD_DecFieldReplace
      Src: /src/gpac/src/bifs/com_dec.c:988,1
    - Dst: BD_DecIndexValueReplace
      Src: /src/gpac/src/bifs/com_dec.c:990,1
    - Dst: BD_DecRouteReplace
      Src: /src/gpac/src/bifs/com_dec.c:992,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 995
      start: 980
    functionDepth: 2
    functionLinenumber: 980
    functionLinenumberEnd: 995
    functionName: BD_DecReplace
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - BD_DecNodeReplace
    - BD_DecRouteReplace
    - BD_DecIndexValueReplace
    - gf_bs_read_int
    - BD_DecFieldReplace
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecReplace(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_dec.c:1020,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1023,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1029,1
    - Dst: gf_bifs_dec_name
      Src: /src/gpac/src/bifs/com_dec.c:1032,1
    - Dst: sprintf
      Src: /src/gpac/src/bifs/com_dec.c:1034,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_dec.c:1034,1
    - Dst: gf_sg_proto_new
      Src: /src/gpac/src/bifs/com_dec.c:1037,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/com_dec.c:1042,1
    - Dst: gf_sg_proto_get_graph
      Src: /src/gpac/src/bifs/com_dec.c:1046,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1050,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1052,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1053,1
    - Dst: gf_bifs_dec_name
      Src: /src/gpac/src/bifs/com_dec.c:1056,1
    - Dst: sprintf
      Src: /src/gpac/src/bifs/com_dec.c:1058,1
    - Dst: gf_sg_proto_field_new
      Src: /src/gpac/src/bifs/com_dec.c:1062,1
    - Dst: gf_sg_proto_field_get_field
      Src: /src/gpac/src/bifs/com_dec.c:1065,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:1071,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:1072,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1075,1
    - Dst: gf_assert
      Src: /src/gpac/src/bifs/com_dec.c:1077,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1080,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1082,1
    - Dst: BD_DecMFFieldList
      Src: /src/gpac/src/bifs/com_dec.c:1083,1
    - Dst: BD_DecMFFieldVec
      Src: /src/gpac/src/bifs/com_dec.c:1085,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1094,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1099,1
    - Dst: memset
      Src: /src/gpac/src/bifs/com_dec.c:1103,1
    - Dst: gf_sg_proto_get_extern_url
      Src: /src/gpac/src/bifs/com_dec.c:1104,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1109,1
    - Dst: gf_assert
      Src: /src/gpac/src/bifs/com_dec.c:1110,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1113,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1116,1
    - Dst: BD_DecMFFieldList
      Src: /src/gpac/src/bifs/com_dec.c:1118,1
    - Dst: BD_DecMFFieldVec
      Src: /src/gpac/src/bifs/com_dec.c:1120,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/com_dec.c:1130,1
    - Dst: gf_bifs_dec_proto_list
      Src: /src/gpac/src/bifs/com_dec.c:1133,1
    - Dst: command_buffers_del
      Src: /src/gpac/src/bifs/com_dec.c:1135,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/com_dec.c:1144,1
    - Dst: command_buffers_del
      Src: /src/gpac/src/bifs/com_dec.c:1148,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1152,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:1156,1
    - Dst: command_buffers_del
      Src: /src/gpac/src/bifs/com_dec.c:1158,1
    - Dst: gf_bifs_flush_command_list
      Src: /src/gpac/src/bifs/com_dec.c:1163,1
    - Dst: gf_sg_proto_add_node_code
      Src: /src/gpac/src/bifs/com_dec.c:1165,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1166,1
    - Dst: command_buffers_del
      Src: /src/gpac/src/bifs/com_dec.c:1169,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1173,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1175,1
    - Dst: gf_bifs_dec_route
      Src: /src/gpac/src/bifs/com_dec.c:1179,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1181,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1185,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1186,1
    - Dst: gf_bifs_dec_route
      Src: /src/gpac/src/bifs/com_dec.c:1188,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1199,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1200,1
    - Dst: gf_sg_proto_get_field_count
      Src: /src/gpac/src/bifs/com_dec.c:1202,1
    - Dst: gf_sg_proto_field_find
      Src: /src/gpac/src/bifs/com_dec.c:1204,1
    - Dst: gf_sg_proto_field_get_field
      Src: /src/gpac/src/bifs/com_dec.c:1205,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1209,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1212,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1214,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/com_dec.c:1218,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/bifs/com_dec.c:1230,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:1233,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/bifs/com_dec.c:1235,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:1238,1
    - Dst: gf_bifs_proto_field_set_aq_info
      Src: /src/gpac/src/bifs/com_dec.c:1243,1
    - Dst: gf_sg_vrml_field_pointer_del
      Src: /src/gpac/src/bifs/com_dec.c:1244,1
    - Dst: gf_sg_vrml_field_pointer_del
      Src: /src/gpac/src/bifs/com_dec.c:1245,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1251,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1253,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1261,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/bifs/com_dec.c:1267,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_dec.c:1270,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/bifs/com_dec.c:1273,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/com_dec.c:1274,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/com_dec.c:1275,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/bifs/com_dec.c:1277,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 212
    argCount: 3
    argNames:
    - codec
    - bs
    - proto_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1284
      start: 1000
    functionDepth: 7
    functionLinenumber: 1000
    functionLinenumberEnd: 1284
    functionName: gf_bifs_dec_proto_list
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 3
    functionsReached:
    - gf_free
    - gf_bifs_proto_field_set_aq_info
    - gf_list_count
    - memset
    - gf_sg_proto_del
    - gf_bifs_dec_sf_field
    - gf_node_unregister
    - gf_sg_proto_new
    - gf_bifs_dec_route
    - gf_assert
    - gf_list_new
    - gf_list_pop_back
    - gf_sg_vrml_get_sf_type
    - sprintf
    - BD_DecMFFieldVec
    - gf_sg_proto_field_find
    - gf_list_add
    - gf_sg_vrml_is_sf_field
    - gf_sg_proto_add_node_code
    - gf_sg_proto_get_field_count
    - gf_sg_vrml_field_pointer_del
    - command_buffers_del
    - gf_bifs_dec_name
    - gf_bifs_dec_proto_list
    - BD_DecMFFieldList
    - gf_list_del_item
    - gf_sg_proto_get_extern_url
    - gf_sg_vrml_field_pointer_new
    - gf_bifs_dec_node
    - gf_sg_proto_field_new
    - gf_sg_proto_get_graph
    - gf_sg_proto_field_get_field
    - gf_bs_read_int
    - gf_bifs_flush_command_list
    - gf_node_register
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_dec_proto_list(GF_BifsDecoder * codec, GF_BitStream
      *bs, GF_List *proto_list)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1299,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1302,1
    - Dst: gf_bifs_dec_name
      Src: /src/gpac/src/bifs/com_dec.c:1303,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1306,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:1307,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:1310,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:1311,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1312,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:1313,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1317,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:1318,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:1321,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:1322,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1323,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:1324,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/bifs/com_dec.c:1327,1
    - Dst: gf_sg_route_set_id
      Src: /src/gpac/src/bifs/com_dec.c:1330,1
    - Dst: gf_sg_route_set_name
      Src: /src/gpac/src/bifs/com_dec.c:1331,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 37
    argCount: 3
    argNames:
    - codec
    - bs
    - is_insert
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1334
      start: 1288
    functionDepth: 2
    functionLinenumber: 1288
    functionLinenumberEnd: 1334
    functionName: gf_bifs_dec_route
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 2
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_sg_find_node
    - gf_get_bit_size
    - gf_bifs_dec_name
    - gf_sg_route_new
    - gf_sg_route_set_id
    - gf_sg_route_set_name
    - gf_bs_read_int
    - gf_bifs_get_field_index
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_dec_route(GF_BifsDecoder * codec, GF_BitStream *bs,
      Bool is_insert)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_reset
      Src: /src/gpac/src/bifs/com_dec.c:1345,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1348,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1350,1
    - Dst: gf_bifs_dec_proto_list
      Src: /src/gpac/src/bifs/com_dec.c:1352,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/com_dec.c:1358,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:1365,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/src/bifs/com_dec.c:1368,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1371,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1375,1
    - Dst: gf_bifs_dec_route
      Src: /src/gpac/src/bifs/com_dec.c:1379,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1381,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1385,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1386,1
    - Dst: gf_bifs_dec_route
      Src: /src/gpac/src/bifs/com_dec.c:1388,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 49
    argCount: 3
    argNames:
    - codec
    - bs
    - proto_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1396
      start: 1337
    functionDepth: 8
    functionLinenumber: 1337
    functionLinenumberEnd: 1396
    functionName: BD_DecSceneReplace
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 1
    functionsReached:
    - gf_bifs_dec_node
    - gf_bifs_dec_route
    - gf_sg_set_root_node
    - gf_bifs_dec_proto_list
    - gf_sg_reset
    - gf_bs_read_int
    - gf_node_register
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecSceneReplace(GF_BifsDecoder * codec, GF_BitStream *bs,
      GF_List *proto_list)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1406,1
    - Dst: BD_DecInsert
      Src: /src/gpac/src/bifs/com_dec.c:1409,1
    - Dst: BD_DecDelete
      Src: /src/gpac/src/bifs/com_dec.c:1412,1
    - Dst: BD_DecReplace
      Src: /src/gpac/src/bifs/com_dec.c:1415,1
    - Dst: BD_DecSceneReplace
      Src: /src/gpac/src/bifs/com_dec.c:1418,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1422,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_dec.c:1425,1
    - Dst: gf_bifs_dec_qp_remove
      Src: /src/gpac/src/bifs/com_dec.c:1426,1
    - Dst: gf_bifs_flush_command_list
      Src: /src/gpac/src/bifs/com_dec.c:1428,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1431
      start: 1398
    functionDepth: 9
    functionLinenumber: 1398
    functionLinenumberEnd: 1431
    functionName: gf_bifs_dec_command
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 1
    functionsReached:
    - BD_DecSceneReplace
    - BD_DecDelete
    - BD_DecInsert
    - gf_list_count
    - gf_bifs_dec_qp_remove
    - gf_bs_read_int
    - gf_bifs_flush_command_list
    - BD_DecReplace
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_dec_command(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/bifs_codec.c:38,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/bifs_codec.c:42,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/bifs_codec.c:43,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/bifs_codec.c:45,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/bifs_codec.c:46,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/bifs_codec.c:48,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/bifs_codec.c:50,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/bifs_codec.c:53,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/bifs_codec.c:54,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/bifs_codec.c:56,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/bifs_codec.c:57,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/bifs/bifs_codec.c:59,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/bifs/bifs_codec.c:61,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/bifs/bifs_codec.c:61,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/bifs_codec.c:64,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/bifs_codec.c:65,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/bifs_codec.c:67,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/bifs_codec.c:69,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/bifs/bifs_codec.c:71,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/bifs/bifs_codec.c:72,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/bifs/bifs_codec.c:72,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 3
    argNames:
    - bs
    - info
    - version
    argTypes:
    - GF_BitStream*
    - BIFSStreamInfo*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 75
    functionName: ParseConfig
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_bs_get_size
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_read_int
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ParseConfig(GF_BitStream *bs, BIFSStreamInfo *info, u32 version)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/bifs/bifs_codec.c:80,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/bifs/bifs_codec.c:82,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/bifs_codec.c:83,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/bifs_codec.c:85,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - info
    argTypes:
    - BIFSStreamInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 86
    functionName: bifs_info_del
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_last
    - gf_list_rem_last
    linkageType: ''
    returnType: void
    signature: void bifs_info_del(BIFSStreamInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/bifs/bifs_codec.c:92,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/bifs_codec.c:95,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/bifs_codec.c:96,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/bifs_codec.c:101,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 108
    functionName: GF_BifsDecoder *gf_bifs_decoder_new(GF_SceneGraph *scenegraph, Bool
      command_dec)
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_BifsDecoder *gf_bifs_decoder_new(GF_SceneGraph *scenegraph,
      Bool command_dec)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/bifs/bifs_codec.c:119,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - codec
    - ESID
    argTypes:
    - GF_BifsDecoder*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 123
    functionName: gf_bifs_dec_get_stream
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: BIFSStreamInfo
    signature: BIFSStreamInfo *gf_bifs_dec_get_stream(GF_BifsDecoder * codec, u16
      ESID)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/bifs/bifs_codec.c:137,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/bifs_codec.c:142,1
    - Dst: gf_bifs_dec_get_stream
      Src: /src/gpac/src/bifs/bifs_codec.c:145,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/bifs/bifs_codec.c:148,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/bifs/bifs_codec.c:152,1
    - Dst: ParseConfig
      Src: /src/gpac/src/bifs/bifs_codec.c:157,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/bifs/bifs_codec.c:161,1
    - Dst: ParseConfig
      Src: /src/gpac/src/bifs/bifs_codec.c:163,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/bifs_codec.c:168,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/bifs/bifs_codec.c:169,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/bifs/bifs_codec.c:172,1
    - Dst: gf_assert
      Src: /src/gpac/src/bifs/bifs_codec.c:174,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/bifs_codec.c:176,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/bifs/bifs_codec.c:177,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/bifs_codec.c:181,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 44
    argCount: 5
    argNames:
    - codec
    - ESID
    - DecoderSpecificInfo
    - DecoderSpecificInfoLength
    - objectTypeIndication
    argTypes:
    - GF_BifsDecoder*
    - u16
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 125
    functionDepth: 2
    functionLinenumber: 125
    functionLinenumberEnd: 183
    functionName: gf_bifs_decoder_configure_stream
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sg_set_scene_size_info
    - gf_assert
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_seek
    - ParseConfig
    - gf_bs_del
    - gf_list_count
    - gf_list_add
    - gf_bifs_dec_get_stream
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bifs_decoder_configure_stream(GF_BifsDecoder * codec,
      u16 ESID, u8 *DecoderSpecificInfo, u32 DecoderSpecificInfoLength, u32 objectTypeIndication)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - codec
    argTypes:
    - GF_BifsDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 192
    functionName: gf_bifs_decoder_ignore_size_info
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bifs_decoder_ignore_size_info(GF_BifsDecoder *codec)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/bifs/bifs_codec.c:201,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/bifs_codec.c:203,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/bifs_codec.c:204,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - codec
    - ESID
    argTypes:
    - GF_BifsDecoder*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 209
    functionName: gf_bifs_decoder_remove_stream
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_enum
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bifs_decoder_remove_stream(GF_BifsDecoder *codec, u16
      ESID)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/bifs_codec.c:215,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/bifs_codec.c:216,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/bifs_codec.c:217,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/bifs_codec.c:218,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/bifs_codec.c:219,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/bifs_codec.c:221,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - command_buffers
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 213
    functionDepth: 1
    functionLinenumber: 213
    functionLinenumberEnd: 222
    functionName: command_buffers_del
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_node_unregister
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void command_buffers_del(GF_List *command_buffers)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/bifs/bifs_codec.c:227,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/bifs_codec.c:227,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/bifs_codec.c:228,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/bifs_codec.c:231,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/bifs_codec.c:232,1
    - Dst: bifs_info_del
      Src: /src/gpac/src/bifs/bifs_codec.c:233,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/bifs_codec.c:234,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/bifs_codec.c:236,1
    - Dst: command_buffers_del
      Src: /src/gpac/src/bifs/bifs_codec.c:238,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/bifs_codec.c:240,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - codec
    argTypes:
    - GF_BifsDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 224
    functionDepth: 2
    functionLinenumber: 224
    functionLinenumberEnd: 241
    functionName: gf_bifs_decoder_del
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_assert
    - gf_list_get
    - command_buffers_del
    - gf_list_count
    - bifs_info_del
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bifs_decoder_del(GF_BifsDecoder *codec)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - co
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 247
    functionName: BD_EndOfStream
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BD_EndOfStream(void *co)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - codec
    argTypes:
    - GF_BifsDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 255
    functionName: gf_bifs_decode_has_conditionnals
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bifs_decode_has_conditionnals(GF_BifsDecoder *codec)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bifs_dec_get_stream
      Src: /src/gpac/src/bifs/bifs_codec.c:266,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/bifs/bifs_codec.c:274,1
    - Dst: gf_bs_set_eos_callback
      Src: /src/gpac/src/bifs/bifs_codec.c:276,1
    - Dst: gf_bifs_dec_command
      Src: /src/gpac/src/bifs/bifs_codec.c:281,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/bifs/bifs_codec.c:283,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 5
    argNames:
    - codec
    - ESID
    - data
    - data_length
    - ts_offset
    argTypes:
    - GF_BifsDecoder*
    - u16
    - u8*
    - u32
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 257
    functionDepth: 10
    functionLinenumber: 257
    functionLinenumberEnd: 288
    functionName: gf_bifs_decode_au
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 0
    functionsReached:
    - gf_bs_set_eos_callback
    - gf_bifs_dec_command
    - gf_bs_new
    - gf_bs_del
    - gf_bifs_dec_get_stream
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bifs_decode_au(GF_BifsDecoder *codec, u16 ESID, const
      u8 *data, u32 data_length, Double ts_offset)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/bifs_codec.c:296,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/bifs_codec.c:298,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - codec
    - nodeID
    argTypes:
    - GF_BifsEncoder*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 293
    functionDepth: 1
    functionLinenumber: 293
    functionLinenumberEnd: 300
    functionName: gf_bifs_enc_find_node
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 2
    functionsReached:
    - gf_sg_find_node
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *gf_bifs_enc_find_node(GF_BifsEncoder *codec, u32 nodeID)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/bifs/bifs_codec.c:307,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/bifs_codec.c:309,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/bifs_codec.c:310,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/bifs_codec.c:312,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 303
    functionDepth: 1
    functionLinenumber: 303
    functionLinenumberEnd: 315
    functionName: GF_BifsEncoder *gf_bifs_encoder_new(GF_SceneGraph *graph)
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_BifsEncoder *gf_bifs_encoder_new(GF_SceneGraph *graph)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/bifs/bifs_codec.c:323,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - codec
    - ESID
    argTypes:
    - GF_BifsEncoder*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 317
    functionDepth: 1
    functionLinenumber: 317
    functionLinenumberEnd: 327
    functionName: BE_GetStream
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: BIFSStreamInfo
    signature: BIFSStreamInfo *BE_GetStream(GF_BifsEncoder * codec, u16 ESID)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/bifs/bifs_codec.c:332,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/bifs_codec.c:332,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/bifs_codec.c:333,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/bifs_codec.c:335,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/bifs_codec.c:336,1
    - Dst: bifs_info_del
      Src: /src/gpac/src/bifs/bifs_codec.c:337,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/bifs_codec.c:338,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/bifs_codec.c:340,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/bifs_codec.c:341,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/bifs_codec.c:342,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/bifs_codec.c:344,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - codec
    argTypes:
    - GF_BifsEncoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 329
    functionDepth: 2
    functionLinenumber: 329
    functionLinenumberEnd: 345
    functionName: gf_bifs_encoder_del
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_assert
    - gf_list_get
    - gf_list_count
    - bifs_info_del
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bifs_encoder_del(GF_BifsEncoder *codec)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: BE_GetStream
      Src: /src/gpac/src/bifs/bifs_codec.c:354,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/bifs/bifs_codec.c:359,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/bifs_codec.c:373,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/bifs_codec.c:374,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/bifs_codec.c:377,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/bifs/bifs_codec.c:378,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/bifs_codec.c:380,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/bifs_codec.c:383,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/bifs/bifs_codec.c:384,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/bifs_codec.c:386,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/bifs_codec.c:390,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 5
    argNames:
    - codec
    - ESID
    - cfg
    - encodeNames
    - has_predictive
    argTypes:
    - GF_BifsEncoder*
    - u16
    - GF_BIFSConfig*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 347
    functionDepth: 2
    functionLinenumber: 347
    functionLinenumberEnd: 393
    functionName: gf_bifs_encoder_new_stream
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - gf_list_get
    - gf_sg_find_node
    - GF_SAFEALLOC
    - gf_sg_find_node_by_name
    - GF_LOG
    - gf_list_count
    - gf_list_add
    - BE_GetStream
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bifs_encoder_new_stream(GF_BifsEncoder *codec, u16 ESID,
      GF_BIFSConfig *cfg, Bool encodeNames, Bool has_predictive)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BE_GetStream
      Src: /src/gpac/src/bifs/bifs_codec.c:404,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/bifs/bifs_codec.c:410,1
    - Dst: gf_bifs_enc_commands
      Src: /src/gpac/src/bifs/bifs_codec.c:415,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/bifs/bifs_codec.c:417,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/bifs/bifs_codec.c:418,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/bifs/bifs_codec.c:419,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 5
    argNames:
    - codec
    - ESID
    - command_list
    - out_data
    - out_data_length
    argTypes:
    - GF_BifsEncoder*
    - u16
    - GF_List*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 395
    functionDepth: 5
    functionLinenumber: 395
    functionLinenumberEnd: 422
    functionName: gf_bifs_encode_au
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 1
    functionsReached:
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_align
    - gf_bs_del
    - BE_GetStream
    - gf_bifs_enc_commands
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bifs_encode_au(GF_BifsEncoder *codec, u16 ESID, GF_List
      *command_list, u8 **out_data, u32 *out_data_length)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: BE_GetStream
      Src: /src/gpac/src/bifs/bifs_codec.c:432,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/bifs/bifs_codec.c:438,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/bifs_codec.c:441,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/bifs_codec.c:442,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/bifs_codec.c:444,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/bifs_codec.c:445,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/bifs_codec.c:447,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/bifs_codec.c:451,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/bifs_codec.c:452,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/bifs_codec.c:453,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/bifs_codec.c:455,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/bifs_codec.c:456,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/bifs_codec.c:456,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/bifs_codec.c:457,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/bifs_codec.c:458,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/bifs_codec.c:461,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/bifs_codec.c:462,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/bifs_codec.c:464,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/bifs_codec.c:465,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/bifs_codec.c:466,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/bifs_codec.c:468,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/bifs/bifs_codec.c:472,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/bifs/bifs_codec.c:473,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/bifs/bifs_codec.c:474,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 42
    argCount: 4
    argNames:
    - codec
    - ESID
    - out_data
    - out_data_length
    argTypes:
    - GF_BifsEncoder*
    - u16
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 424
    functionDepth: 2
    functionLinenumber: 424
    functionLinenumberEnd: 477
    functionName: gf_bifs_encoder_get_config
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_bs_new
    - gf_node_get_id
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_align
    - gf_bs_del
    - gf_list_count
    - BE_GetStream
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bifs_encoder_get_config(GF_BifsEncoder *codec, u16 ESID,
      u8 **out_data, u32 *out_data_length)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BE_GetStream
      Src: /src/gpac/src/bifs/bifs_codec.c:484,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - codec
    - ESID
    argTypes:
    - GF_BifsEncoder*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 479
    functionDepth: 2
    functionLinenumber: 479
    functionLinenumberEnd: 488
    functionName: gf_bifs_encoder_get_version
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 1
    functionsReached:
    - BE_GetStream
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bifs_encoder_get_version(GF_BifsEncoder *codec, u16 ESID)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/bifs/bifs_codec.c:494,1
    - Dst: gf_strdup
      Src: /src/gpac/src/bifs/bifs_codec.c:495,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - codec
    - src_url
    argTypes:
    - GF_BifsEncoder*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 490
    functionDepth: 0
    functionLinenumber: 490
    functionLinenumberEnd: 497
    functionName: gf_bifs_encoder_set_source_url
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bifs_encoder_set_source_url(GF_BifsEncoder *codec, const
      char *src_url)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mpeg4_node_get_child_ndt
      Src: /src/gpac/src/bifs/bifs_codec.c:506,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - Node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 502
    functionDepth: 1
    functionLinenumber: 502
    functionLinenumberEnd: 507
    functionName: gf_bifs_get_child_table
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 4
    functionsReached:
    - gf_sg_mpeg4_node_get_child_ndt
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bifs_get_child_table(GF_Node *Node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_proto_get_field_ind_static
      Src: /src/gpac/src/bifs/bifs_codec.c:515,1
    - Dst: gf_sg_script_get_field_index
      Src: /src/gpac/src/bifs/bifs_codec.c:520,1
    - Dst: gf_sg_mpeg4_node_get_field_count
      Src: /src/gpac/src/bifs/bifs_codec.c:522,1
    - Dst: gf_sg_mpeg4_node_get_field_index
      Src: /src/gpac/src/bifs/bifs_codec.c:524,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 4
    argNames:
    - Node
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 526
      start: 510
    functionDepth: 1
    functionLinenumber: 510
    functionLinenumberEnd: 526
    functionName: gf_bifs_get_field_index
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 19
    functionsReached:
    - gf_sg_script_get_field_index
    - gf_sg_mpeg4_node_get_field_index
    - gf_sg_mpeg4_node_get_field_count
    - gf_sg_proto_get_field_ind_static
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_get_field_index(GF_Node *Node, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_proto_get_aq_info
      Src: /src/gpac/src/bifs/bifs_codec.c:538,1
    - Dst: gf_sg_mpeg4_node_get_aq_info
      Src: /src/gpac/src/bifs/bifs_codec.c:540,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 7
    argNames:
    - Node
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 542
      start: 530
    functionDepth: 1
    functionLinenumber: 530
    functionLinenumberEnd: 542
    functionName: gf_bifs_get_aq_info
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 2
    functionsReached:
    - gf_sg_proto_get_aq_info
    - gf_sg_mpeg4_node_get_aq_info
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bifs_get_aq_info(GF_Node *Node, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gp_bifs_aa_model_init
      Src: /src/gpac/src/bifs/predictive_mffield.c:58,1
    - Dst: gp_bifs_aa_model_init
      Src: /src/gpac/src/bifs/predictive_mffield.c:60,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - pmf
    argTypes:
    - PredMF*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 61
    functionName: PMF_ResetModels
    functionSourceFile: /src/gpac/src/bifs/predictive_mffield.c
    functionUses: 0
    functionsReached:
    - gp_bifs_aa_model_init
    linkageType: ''
    returnType: void
    signature: void PMF_ResetModels(PredMF *pmf)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_divfix
      Src: /src/gpac/src/bifs/predictive_mffield.c:71,1
    - Dst: INT2FIX
      Src: /src/gpac/src/bifs/predictive_mffield.c:71,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 5
    argNames:
    - vq
    - BMin
    - BMax
    - NbBits
    - unit_vector
    argTypes:
    - s32
    - Fixed
    - Fixed
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 77
    functionName: PMF_UnquantizeFloat
    functionSourceFile: /src/gpac/src/bifs/predictive_mffield.c
    functionUses: 0
    functionsReached:
    - gf_divfix
    - INT2FIX
    linkageType: ''
    returnType: Fixed
    signature: Fixed PMF_UnquantizeFloat(s32 vq, Fixed BMin, Fixed BMax, u32 NbBits,
      Bool unit_vector)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PMF_UnquantizeFloat
      Src: /src/gpac/src/bifs/predictive_mffield.c:87,1
    - Dst: gf_tan
      Src: /src/gpac/src/bifs/predictive_mffield.c:88,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/bifs/predictive_mffield.c:88,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/bifs/predictive_mffield.c:89,1
    - Dst: gf_divfix
      Src: /src/gpac/src/bifs/predictive_mffield.c:91,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/bifs/predictive_mffield.c:91,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/bifs/predictive_mffield.c:95,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/bifs/predictive_mffield.c:97,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - pmf
    - field
    argTypes:
    - PredMF*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 79
    functionDepth: 2
    functionLinenumber: 79
    functionLinenumberEnd: 102
    functionName: PMF_UnquantizeNormal
    functionSourceFile: /src/gpac/src/bifs/predictive_mffield.c
    functionUses: 0
    functionsReached:
    - PMF_UnquantizeFloat
    - gf_tan
    - gf_sg_vrml_mf_get_item
    - gf_divfix
    - gf_mulfix
    - gf_sqrt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PMF_UnquantizeNormal(PredMF *pmf, GF_FieldInfo *field)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PMF_UnquantizeFloat
      Src: /src/gpac/src/bifs/predictive_mffield.c:113,1
    - Dst: gf_tan
      Src: /src/gpac/src/bifs/predictive_mffield.c:114,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/bifs/predictive_mffield.c:114,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/bifs/predictive_mffield.c:115,1
    - Dst: gf_divfix
      Src: /src/gpac/src/bifs/predictive_mffield.c:117,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/bifs/predictive_mffield.c:117,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/bifs/predictive_mffield.c:121,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/bifs/predictive_mffield.c:123,1
    - Dst: gf_acos
      Src: /src/gpac/src/bifs/predictive_mffield.c:124,1
    - Dst: gf_sin
      Src: /src/gpac/src/bifs/predictive_mffield.c:125,1
    - Dst: gf_divfix
      Src: /src/gpac/src/bifs/predictive_mffield.c:128,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 2
    argNames:
    - pmf
    - field
    argTypes:
    - PredMF*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 104
    functionDepth: 2
    functionLinenumber: 104
    functionLinenumberEnd: 140
    functionName: PMF_UnquantizeRotation
    functionSourceFile: /src/gpac/src/bifs/predictive_mffield.c
    functionUses: 0
    functionsReached:
    - PMF_UnquantizeFloat
    - gf_sin
    - gf_tan
    - gf_sg_vrml_mf_get_item
    - gf_divfix
    - gf_acos
    - gf_mulfix
    - gf_sqrt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PMF_UnquantizeRotation(PredMF *pmf, GF_FieldInfo *field)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: PMF_UnquantizeNormal
      Src: /src/gpac/src/bifs/predictive_mffield.c:146,1
    - Dst: PMF_UnquantizeRotation
      Src: /src/gpac/src/bifs/predictive_mffield.c:149,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/bifs/predictive_mffield.c:152,1
    - Dst: PMF_UnquantizeFloat
      Src: /src/gpac/src/bifs/predictive_mffield.c:155,1
    - Dst: PMF_UnquantizeFloat
      Src: /src/gpac/src/bifs/predictive_mffield.c:156,1
    - Dst: PMF_UnquantizeFloat
      Src: /src/gpac/src/bifs/predictive_mffield.c:157,1
    - Dst: PMF_UnquantizeFloat
      Src: /src/gpac/src/bifs/predictive_mffield.c:160,1
    - Dst: PMF_UnquantizeFloat
      Src: /src/gpac/src/bifs/predictive_mffield.c:161,1
    - Dst: PMF_UnquantizeFloat
      Src: /src/gpac/src/bifs/predictive_mffield.c:164,1
    - Dst: PMF_UnquantizeFloat
      Src: /src/gpac/src/bifs/predictive_mffield.c:167,1
    - Dst: PMF_UnquantizeFloat
      Src: /src/gpac/src/bifs/predictive_mffield.c:168,1
    - Dst: PMF_UnquantizeFloat
      Src: /src/gpac/src/bifs/predictive_mffield.c:169,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 2
    argNames:
    - pmf
    - field
    argTypes:
    - PredMF*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 142
    functionDepth: 3
    functionLinenumber: 142
    functionLinenumberEnd: 181
    functionName: PMF_Unquantize
    functionSourceFile: /src/gpac/src/bifs/predictive_mffield.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_mf_get_item
    - PMF_UnquantizeNormal
    - PMF_UnquantizeRotation
    - PMF_UnquantizeFloat
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PMF_Unquantize(PredMF *pmf, GF_FieldInfo *field)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gp_bifs_aa_decode
      Src: /src/gpac/src/bifs/predictive_mffield.c:191,1
    - Dst: gp_bifs_aa_decode
      Src: /src/gpac/src/bifs/predictive_mffield.c:198,1
    - Dst: abs
      Src: /src/gpac/src/bifs/predictive_mffield.c:220,1
    - Dst: PMF_Unquantize
      Src: /src/gpac/src/bifs/predictive_mffield.c:250,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 50
    argCount: 3
    argNames:
    - pmf
    - bs
    - field
    argTypes:
    - PredMF*
    - GF_BitStream*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 184
    functionDepth: 4
    functionLinenumber: 184
    functionLinenumberEnd: 251
    functionName: PMF_ParsePValue
    functionSourceFile: /src/gpac/src/bifs/predictive_mffield.c
    functionUses: 0
    functionsReached:
    - gp_bifs_aa_decode
    - abs
    - PMF_Unquantize
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PMF_ParsePValue(PredMF *pmf, GF_BitStream *bs, GF_FieldInfo
      *field)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/predictive_mffield.c:258,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/predictive_mffield.c:261,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/predictive_mffield.c:266,1
    - Dst: gp_bifs_aa_dec_reset
      Src: /src/gpac/src/bifs/predictive_mffield.c:269,1
    - Dst: PMF_Unquantize
      Src: /src/gpac/src/bifs/predictive_mffield.c:271,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - pmf
    - bs
    - field
    argTypes:
    - PredMF*
    - GF_BitStream*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 253
    functionDepth: 4
    functionLinenumber: 253
    functionLinenumberEnd: 272
    functionName: PMF_ParseIValue
    functionSourceFile: /src/gpac/src/bifs/predictive_mffield.c
    functionUses: 0
    functionsReached:
    - gp_bifs_aa_dec_reset
    - gf_bs_read_int
    - PMF_Unquantize
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PMF_ParseIValue(PredMF *pmf, GF_BitStream *bs, GF_FieldInfo
      *field)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/predictive_mffield.c:280,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/predictive_mffield.c:281,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/predictive_mffield.c:284,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/predictive_mffield.c:286,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/predictive_mffield.c:288,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/predictive_mffield.c:291,1
    - Dst: PMF_ResetModels
      Src: /src/gpac/src/bifs/predictive_mffield.c:298,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - pmf
    - bs
    argTypes:
    - PredMF*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 275
    functionDepth: 2
    functionLinenumber: 275
    functionLinenumberEnd: 300
    functionName: PMF_UpdateArrayQP
    functionSourceFile: /src/gpac/src/bifs/predictive_mffield.c
    functionUses: 0
    functionsReached:
    - PMF_ResetModels
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PMF_UpdateArrayQP(PredMF *pmf, GF_BitStream *bs)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/bifs/predictive_mffield.c:313,1
    - Dst: gf_bifs_get_aq_info
      Src: /src/gpac/src/bifs/predictive_mffield.c:315,1
    - Dst: gf_bifs_dec_qp14_get_bits
      Src: /src/gpac/src/bifs/predictive_mffield.c:320,1
    - Dst: Q_IsTypeOn
      Src: /src/gpac/src/bifs/predictive_mffield.c:326,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/predictive_mffield.c:351,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/predictive_mffield.c:352,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/predictive_mffield.c:353,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/predictive_mffield.c:356,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/predictive_mffield.c:357,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/predictive_mffield.c:361,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/predictive_mffield.c:366,1
    - Dst: gp_bifs_aa_dec_new
      Src: /src/gpac/src/bifs/predictive_mffield.c:375,1
    - Dst: gp_bifs_aa_model_new
      Src: /src/gpac/src/bifs/predictive_mffield.c:376,1
    - Dst: gp_bifs_aa_model_new
      Src: /src/gpac/src/bifs/predictive_mffield.c:377,1
    - Dst: gp_bifs_aa_model_new
      Src: /src/gpac/src/bifs/predictive_mffield.c:378,1
    - Dst: gp_bifs_aa_model_new
      Src: /src/gpac/src/bifs/predictive_mffield.c:379,1
    - Dst: PMF_ResetModels
      Src: /src/gpac/src/bifs/predictive_mffield.c:381,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/bifs/predictive_mffield.c:383,1
    - Dst: PMF_ParseIValue
      Src: /src/gpac/src/bifs/predictive_mffield.c:386,1
    - Dst: PMF_ParsePValue
      Src: /src/gpac/src/bifs/predictive_mffield.c:392,1
    - Dst: gp_bifs_aa_dec_resync
      Src: /src/gpac/src/bifs/predictive_mffield.c:399,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/predictive_mffield.c:400,1
    - Dst: PMF_UpdateArrayQP
      Src: /src/gpac/src/bifs/predictive_mffield.c:403,1
    - Dst: PMF_ParseIValue
      Src: /src/gpac/src/bifs/predictive_mffield.c:406,1
    - Dst: PMF_ParsePValue
      Src: /src/gpac/src/bifs/predictive_mffield.c:408,1
    - Dst: gp_bifs_aa_dec_get_bit
      Src: /src/gpac/src/bifs/predictive_mffield.c:415,1
    - Dst: gp_bifs_aa_dec_resync_bit
      Src: /src/gpac/src/bifs/predictive_mffield.c:418,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/predictive_mffield.c:419,1
    - Dst: PMF_UpdateArrayQP
      Src: /src/gpac/src/bifs/predictive_mffield.c:422,1
    - Dst: PMF_ParseIValue
      Src: /src/gpac/src/bifs/predictive_mffield.c:425,1
    - Dst: PMF_ParsePValue
      Src: /src/gpac/src/bifs/predictive_mffield.c:427,1
    - Dst: gp_bifs_aa_dec_flush
      Src: /src/gpac/src/bifs/predictive_mffield.c:428,1
    - Dst: gp_bifs_aa_dec_resync_bit
      Src: /src/gpac/src/bifs/predictive_mffield.c:437,1
    - Dst: gp_bifs_aa_dec_resync
      Src: /src/gpac/src/bifs/predictive_mffield.c:439,1
    - Dst: gp_bifs_aa_model_del
      Src: /src/gpac/src/bifs/predictive_mffield.c:443,1
    - Dst: gp_bifs_aa_model_del
      Src: /src/gpac/src/bifs/predictive_mffield.c:444,1
    - Dst: gp_bifs_aa_model_del
      Src: /src/gpac/src/bifs/predictive_mffield.c:445,1
    - Dst: gp_bifs_aa_model_del
      Src: /src/gpac/src/bifs/predictive_mffield.c:446,1
    - Dst: gp_bifs_aa_dec_del
      Src: /src/gpac/src/bifs/predictive_mffield.c:447,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 120
    argCount: 4
    argNames:
    - codec
    - bs
    - node
    - field
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 304
    functionDepth: 5
    functionLinenumber: 304
    functionLinenumberEnd: 449
    functionName: gf_bifs_dec_pred_mf_field
    functionSourceFile: /src/gpac/src/bifs/predictive_mffield.c
    functionUses: 0
    functionsReached:
    - gf_bifs_dec_qp14_get_bits
    - gp_bifs_aa_model_new
    - gf_bifs_get_aq_info
    - PMF_ParseIValue
    - gp_bifs_aa_model_del
    - gp_bifs_aa_dec_flush
    - gp_bifs_aa_dec_del
    - memset
    - gp_bifs_aa_dec_new
    - gp_bifs_aa_dec_resync
    - PMF_ResetModels
    - gf_bs_read_int
    - PMF_ParsePValue
    - gp_bifs_aa_dec_get_bit
    - gp_bifs_aa_dec_resync_bit
    - Q_IsTypeOn
    - PMF_UpdateArrayQP
    - gf_sg_vrml_mf_alloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_dec_pred_mf_field(GF_BifsDecoder *codec, GF_BitStream
      *bs, GF_Node *node, GF_FieldInfo *field)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - sc_enc
    - ','
    - val
    - ','
    - nbBits
    - ','
    - str1
    - ','
    - str2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: SFE_WRITE_INT
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SFE_WRITE_INT(sc_enc, val, nbBits, str1, str2)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/script_enc.c:69,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/script_enc.c:71,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/script_enc.c:72,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:74,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:75,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:78,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:80,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:81,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/script_enc.c:85,1
    - Dst: gf_sg_proto_get_field_count
      Src: /src/gpac/src/bifs/script_enc.c:85,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:88,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/script_enc.c:90,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:102,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:103,1
    - Dst: gf_bifs_enc_name
      Src: /src/gpac/src/bifs/script_enc.c:104,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/script_enc.c:106,1
    - Dst: gf_strdup
      Src: /src/gpac/src/bifs/script_enc.c:106,1
    - Dst: gf_bifs_enc_is_field_ised
      Src: /src/gpac/src/bifs/script_enc.c:109,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:111,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:114,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:116,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:120,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:124,1
    - Dst: gf_bifs_enc_field
      Src: /src/gpac/src/bifs/script_enc.c:126,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:131,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 62
    argCount: 1
    argNames:
    - sc_enc
    argTypes:
    - ScriptEnc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 62
    functionDepth: 2
    functionLinenumber: 62
    functionLinenumberEnd: 133
    functionName: EncScriptFields
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_strdup
    - gf_bifs_enc_field
    - gf_get_bit_size
    - gf_bifs_enc_name
    - gf_bifs_enc_is_field_ised
    - GF_BIFS_WRITE_INT
    - gf_node_get_field
    - gf_list_add
    - gf_sg_proto_get_field_count
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EncScriptFields(ScriptEnc *sc_enc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: isdigit
      Src: /src/gpac/src/bifs/script_enc.c:297,1
    - Dst: toupper
      Src: /src/gpac/src/bifs/script_enc.c:298,1
    - Dst: toupper
      Src: /src/gpac/src/bifs/script_enc.c:299,1
    - Dst: toupper
      Src: /src/gpac/src/bifs/script_enc.c:299,1
    - Dst: tolower
      Src: /src/gpac/src/bifs/script_enc.c:301,1
    - Dst: tolower
      Src: /src/gpac/src/bifs/script_enc.c:305,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/script_enc.c:308,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 16
    argCount: 1
    argNames:
    - sc_enc
    argTypes:
    - ScriptEnc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 293
    functionDepth: 1
    functionLinenumber: 293
    functionLinenumberEnd: 317
    functionName: SFE_GetNumber
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - tolower
    - toupper
    - GF_LOG
    - isdigit
    linkageType: ''
    returnType: Bool
    signature: Bool SFE_GetNumber(ScriptEnc *sc_enc)
  - BBCount: 61
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/bifs/script_enc.c:323,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/script_enc.c:332,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:338,1
    - Dst: isalpha
      Src: /src/gpac/src/bifs/script_enc.c:342,1
    - Dst: isalnum
      Src: /src/gpac/src/bifs/script_enc.c:343,1
    - Dst: strcmp
      Src: /src/gpac/src/bifs/script_enc.c:352,1
    - Dst: stricmp
      Src: /src/gpac/src/bifs/script_enc.c:357,1
    - Dst: stricmp
      Src: /src/gpac/src/bifs/script_enc.c:357,1
    - Dst: isdigit
      Src: /src/gpac/src/bifs/script_enc.c:363,1
    - Dst: SFE_GetNumber
      Src: /src/gpac/src/bifs/script_enc.c:363,1
    - Dst: isdigit
      Src: /src/gpac/src/bifs/script_enc.c:388,1
    - Dst: SFE_GetNumber
      Src: /src/gpac/src/bifs/script_enc.c:389,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/script_enc.c:406,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/script_enc.c:566,1
    CyclomaticComplexity: 74
    EdgeCount: 74
    ICount: 253
    argCount: 1
    argNames:
    - sc_enc
    argTypes:
    - ScriptEnc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 319
    functionDepth: 2
    functionLinenumber: 319
    functionLinenumberEnd: 572
    functionName: SFE_NextToken
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 1
    functionsReached:
    - SFE_NextToken
    - GF_LOG
    - isdigit
    - SFE_GetNumber
    - strcmp
    - stricmp
    - strchr
    - isalnum
    - isalpha
    linkageType: ''
    returnType: Bool
    signature: Bool SFE_NextToken(ScriptEnc *sc_enc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/script_enc.c:577,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - sc_enc
    - token
    argTypes:
    - ScriptEnc*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 581
      start: 574
    functionDepth: 1
    functionLinenumber: 574
    functionLinenumberEnd: 581
    functionName: SFE_CheckToken
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: Bool
    signature: Bool SFE_CheckToken(ScriptEnc *sc_enc, u32 token)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/bifs/script_enc.c:592,1
    - Dst: strcmp
      Src: /src/gpac/src/bifs/script_enc.c:593,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/script_enc.c:596,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:601,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:602,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:605,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/script_enc.c:606,1
    - Dst: gf_strdup
      Src: /src/gpac/src/bifs/script_enc.c:606,1
    - Dst: gf_bifs_enc_name
      Src: /src/gpac/src/bifs/script_enc.c:607,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - sc_enc
    - id
    argTypes:
    - ScriptEnc*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 608
      start: 583
    functionDepth: 2
    functionLinenumber: 583
    functionLinenumberEnd: 608
    functionName: SFE_PutIdentifier
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_bifs_enc_name
    - gf_list_count
    - GF_BIFS_WRITE_INT
    - strcmp
    - gf_list_add
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void SFE_PutIdentifier(ScriptEnc *sc_enc, char *id)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:614,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:617,1
    - Dst: SFE_PutIdentifier
      Src: /src/gpac/src/bifs/script_enc.c:618,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:620,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 1
    argNames:
    - sc_enc
    argTypes:
    - ScriptEnc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 621
      start: 611
    functionDepth: 3
    functionLinenumber: 611
    functionLinenumberEnd: 621
    functionName: SFE_Arguments
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - GF_BIFS_WRITE_INT
    - SFE_NextToken
    - SFE_PutIdentifier
    linkageType: ''
    returnType: void
    signature: void SFE_Arguments(ScriptEnc *sc_enc)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strtoul
      Src: /src/gpac/src/bifs/script_enc.c:631,1
    - Dst: isdigit
      Src: /src/gpac/src/bifs/script_enc.c:632,1
    - Dst: strtoul
      Src: /src/gpac/src/bifs/script_enc.c:633,1
    - Dst: isdigit
      Src: /src/gpac/src/bifs/script_enc.c:634,1
    - Dst: strtoul
      Src: /src/gpac/src/bifs/script_enc.c:635,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/script_enc.c:637,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/script_enc.c:641,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:642,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:643,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 2
    argNames:
    - sc_enc
    - str
    argTypes:
    - ScriptEnc*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 644
      start: 626
    functionDepth: 1
    functionLinenumber: 626
    functionLinenumberEnd: 644
    functionName: SFE_PutInteger
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - strtoul
    - gf_get_bit_size
    - GF_LOG
    - isdigit
    - GF_BIFS_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void SFE_PutInteger(ScriptEnc *sc_enc, char *str)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/script_enc.c:673,1
    - Dst: gf_strdup
      Src: /src/gpac/src/bifs/script_enc.c:673,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:699,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/script_enc.c:702,1
    - Dst: gf_strdup
      Src: /src/gpac/src/bifs/script_enc.c:702,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:710,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/script_enc.c:717,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/script_enc.c:723,1
    - Dst: gf_strdup
      Src: /src/gpac/src/bifs/script_enc.c:723,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 76
    argCount: 2
    argNames:
    - sc_enc
    - expr_sep
    argTypes:
    - ScriptEnc*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 731
      start: 646
    functionDepth: 3
    functionLinenumber: 646
    functionLinenumberEnd: 731
    functionName: SFE_LoadExpression
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - SFE_NextToken
    - gf_strdup
    - GF_LOG
    - gf_list_add
    linkageType: ''
    returnType: u32
    signature: u32 SFE_LoadExpression(ScriptEnc *sc_enc, u32 *expr_sep)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: MoveToToken
      Src: /src/gpac/src/bifs/script_enc.c:745,1
    - Dst: MoveToToken
      Src: /src/gpac/src/bifs/script_enc.c:748,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 4
    argNames:
    - sc_enc
    - start
    - end
    - expr_sep
    argTypes:
    - ScriptEnc*
    - u32
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 756
      start: 735
    functionDepth: 1
    functionLinenumber: 735
    functionLinenumberEnd: 756
    functionName: SFE_ScanExpression
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - MoveToToken
    linkageType: ''
    returnType: u32
    signature: u32 SFE_ScanExpression(ScriptEnc *sc_enc, u32 start, u32 end, u32 *expr_sep)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SFE_LoadExpression
      Src: /src/gpac/src/bifs/script_enc.c:770,1
    - Dst: SFE_ScanExpression
      Src: /src/gpac/src/bifs/script_enc.c:773,1
    - Dst: SFE_Expression
      Src: /src/gpac/src/bifs/script_enc.c:776,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:778,1
    - Dst: SFE_Expression
      Src: /src/gpac/src/bifs/script_enc.c:779,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:781,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 4
    argNames:
    - sc_enc
    - start
    - end
    - isPar
    argTypes:
    - ScriptEnc*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 782
      start: 760
    functionDepth: 4
    functionLinenumber: 760
    functionLinenumberEnd: 782
    functionName: SFE_CompoundExpression
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - SFE_Expression
    - SFE_WRITE_INT
    - SFE_ScanExpression
    - SFE_LoadExpression
    linkageType: ''
    returnType: void
    signature: void SFE_CompoundExpression(ScriptEnc *sc_enc, u32 start, u32 end,
      u32 isPar)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:787,1
    - Dst: SFE_CompoundExpression
      Src: /src/gpac/src/bifs/script_enc.c:788,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:790,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - sc_enc
    argTypes:
    - ScriptEnc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 792
      start: 784
    functionDepth: 5
    functionLinenumber: 784
    functionLinenumberEnd: 792
    functionName: SFE_OptionalExpression
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - SFE_WRITE_INT
    - SFE_CompoundExpression
    linkageType: ''
    returnType: void
    signature: void SFE_OptionalExpression(ScriptEnc *sc_enc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:798,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:799,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:800,1
    - Dst: SFE_CompoundExpression
      Src: /src/gpac/src/bifs/script_enc.c:801,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:802,1
    - Dst: SFE_StatementBlock
      Src: /src/gpac/src/bifs/script_enc.c:803,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:807,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:809,1
    - Dst: SFE_StatementBlock
      Src: /src/gpac/src/bifs/script_enc.c:810,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:812,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 1
    argNames:
    - sc_enc
    argTypes:
    - ScriptEnc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 816
      start: 794
    functionDepth: 5
    functionLinenumber: 794
    functionLinenumberEnd: 816
    functionName: SFE_IfStatement
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - SFE_WRITE_INT
    - SFE_NextToken
    - SFE_CheckToken
    - SFE_CompoundExpression
    - SFE_StatementBlock
    linkageType: ''
    returnType: void
    signature: void SFE_IfStatement(ScriptEnc *sc_enc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:820,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:821,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:823,1
    - Dst: SFE_OptionalExpression
      Src: /src/gpac/src/bifs/script_enc.c:824,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:825,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:827,1
    - Dst: SFE_OptionalExpression
      Src: /src/gpac/src/bifs/script_enc.c:828,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:829,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:831,1
    - Dst: SFE_OptionalExpression
      Src: /src/gpac/src/bifs/script_enc.c:832,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:833,1
    - Dst: SFE_StatementBlock
      Src: /src/gpac/src/bifs/script_enc.c:835,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 1
    argNames:
    - sc_enc
    argTypes:
    - ScriptEnc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 836
      start: 818
    functionDepth: 6
    functionLinenumber: 818
    functionLinenumberEnd: 836
    functionName: SFE_ForStatement
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - SFE_OptionalExpression
    - SFE_CheckToken
    - SFE_NextToken
    - SFE_StatementBlock
    linkageType: ''
    returnType: void
    signature: void SFE_ForStatement(ScriptEnc *sc_enc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:840,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:841,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:842,1
    - Dst: SFE_CompoundExpression
      Src: /src/gpac/src/bifs/script_enc.c:843,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:844,1
    - Dst: SFE_StatementBlock
      Src: /src/gpac/src/bifs/script_enc.c:846,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - sc_enc
    argTypes:
    - ScriptEnc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 838
    functionDepth: 5
    functionLinenumber: 838
    functionLinenumberEnd: 847
    functionName: SFE_WhileStatement
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - SFE_CheckToken
    - SFE_NextToken
    - SFE_CompoundExpression
    - SFE_StatementBlock
    linkageType: ''
    returnType: void
    signature: void SFE_WhileStatement(ScriptEnc *sc_enc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:851,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:853,1
    - Dst: SFE_CompoundExpression
      Src: /src/gpac/src/bifs/script_enc.c:854,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:856,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - sc_enc
    argTypes:
    - ScriptEnc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 858
      start: 849
    functionDepth: 5
    functionLinenumber: 849
    functionLinenumberEnd: 858
    functionName: SFE_ReturnStatement
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - SFE_NextToken
    - SFE_CompoundExpression
    - SFE_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void SFE_ReturnStatement(ScriptEnc *sc_enc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:862,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:863,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:865,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:867,1
    - Dst: SFE_Statement
      Src: /src/gpac/src/bifs/script_enc.c:868,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:869,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:871,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:874,1
    - Dst: SFE_Statement
      Src: /src/gpac/src/bifs/script_enc.c:875,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:876,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:878,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - sc_enc
    argTypes:
    - ScriptEnc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 879
      start: 860
    functionDepth: 3
    functionLinenumber: 860
    functionLinenumberEnd: 879
    functionName: SFE_CaseBlock
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - SFE_NextToken
    - SFE_WRITE_INT
    - SFE_Statement
    linkageType: ''
    returnType: void
    signature: void SFE_CaseBlock(ScriptEnc *sc_enc)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strtoul
      Src: /src/gpac/src/bifs/script_enc.c:885,1
    - Dst: isdigit
      Src: /src/gpac/src/bifs/script_enc.c:886,1
    - Dst: strtoul
      Src: /src/gpac/src/bifs/script_enc.c:887,1
    - Dst: isdigit
      Src: /src/gpac/src/bifs/script_enc.c:888,1
    - Dst: strtoul
      Src: /src/gpac/src/bifs/script_enc.c:889,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/script_enc.c:891,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:896,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/script_enc.c:898,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 3
    argNames:
    - sc_enc
    - str
    - nbBits
    argTypes:
    - ScriptEnc*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 881
    functionDepth: 1
    functionLinenumber: 881
    functionLinenumberEnd: 901
    functionName: SFE_PutCaseInteger
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - strtoul
    - gf_get_bit_size
    - GF_LOG
    - isdigit
    - GF_BIFS_WRITE_INT
    linkageType: ''
    returnType: u32
    signature: u32 SFE_PutCaseInteger(ScriptEnc *sc_enc, char *str, u32 nbBits)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:910,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:911,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:913,1
    - Dst: SFE_CompoundExpression
      Src: /src/gpac/src/bifs/script_enc.c:914,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:915,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:917,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:918,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:926,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:928,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:929,1
    - Dst: SFE_PutCaseInteger
      Src: /src/gpac/src/bifs/script_enc.c:930,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:933,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:934,1
    - Dst: SFE_CaseBlock
      Src: /src/gpac/src/bifs/script_enc.c:936,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:937,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:945,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:947,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:949,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:950,1
    - Dst: SFE_PutCaseInteger
      Src: /src/gpac/src/bifs/script_enc.c:951,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:953,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:954,1
    - Dst: SFE_CaseBlock
      Src: /src/gpac/src/bifs/script_enc.c:956,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:957,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:961,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:962,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:963,1
    - Dst: SFE_CaseBlock
      Src: /src/gpac/src/bifs/script_enc.c:964,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:966,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:968,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 48
    argCount: 1
    argNames:
    - sc_enc
    argTypes:
    - ScriptEnc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 969
      start: 903
    functionDepth: 5
    functionLinenumber: 903
    functionLinenumberEnd: 969
    functionName: SFE_SwitchStatement
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - SFE_NextToken
    - SFE_WRITE_INT
    - SFE_CaseBlock
    - SFE_PutCaseInteger
    - SFE_CheckToken
    - SFE_CompoundExpression
    linkageType: ''
    returnType: void
    signature: void SFE_SwitchStatement(ScriptEnc *sc_enc)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:975,1
    - Dst: SFE_IfStatement
      Src: /src/gpac/src/bifs/script_enc.c:976,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:979,1
    - Dst: SFE_ForStatement
      Src: /src/gpac/src/bifs/script_enc.c:980,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:983,1
    - Dst: SFE_WhileStatement
      Src: /src/gpac/src/bifs/script_enc.c:984,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:987,1
    - Dst: SFE_ReturnStatement
      Src: /src/gpac/src/bifs/script_enc.c:988,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:991,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:992,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:995,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:996,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:999,1
    - Dst: SFE_SwitchStatement
      Src: /src/gpac/src/bifs/script_enc.c:1000,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1003,1
    - Dst: SFE_CompoundExpression
      Src: /src/gpac/src/bifs/script_enc.c:1004,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 35
    argCount: 1
    argNames:
    - sc_enc
    argTypes:
    - ScriptEnc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1007
      start: 971
    functionDepth: 7
    functionLinenumber: 971
    functionLinenumberEnd: 1007
    functionName: SFE_Statement
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 1
    functionsReached:
    - SFE_IfStatement
    - SFE_SwitchStatement
    - SFE_WhileStatement
    - SFE_WRITE_INT
    - SFE_ForStatement
    - SFE_NextToken
    - SFE_CompoundExpression
    - SFE_ReturnStatement
    linkageType: ''
    returnType: void
    signature: void SFE_Statement(ScriptEnc *sc_enc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:1012,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1014,1
    - Dst: SFE_Statement
      Src: /src/gpac/src/bifs/script_enc.c:1015,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1017,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - sc_enc
    argTypes:
    - ScriptEnc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 1009
    functionDepth: 8
    functionLinenumber: 1009
    functionLinenumberEnd: 1018
    functionName: SFE_Statements
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - SFE_Statement
    - SFE_NextToken
    - SFE_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void SFE_Statements(ScriptEnc *sc_enc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:1022,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1024,1
    - Dst: SFE_Statements
      Src: /src/gpac/src/bifs/script_enc.c:1025,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1027,1
    - Dst: SFE_Statement
      Src: /src/gpac/src/bifs/script_enc.c:1028,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - sc_enc
    argTypes:
    - ScriptEnc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1030
      start: 1020
    functionDepth: 9
    functionLinenumber: 1020
    functionLinenumberEnd: 1030
    functionName: SFE_StatementBlock
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 3
    functionsReached:
    - SFE_Statement
    - SFE_NextToken
    - SFE_Statements
    - SFE_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void SFE_StatementBlock(ScriptEnc *sc_enc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:1035,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:1036,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:1038,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:1039,1
    - Dst: strcpy
      Src: /src/gpac/src/bifs/script_enc.c:1040,1
    - Dst: SFE_PutIdentifier
      Src: /src/gpac/src/bifs/script_enc.c:1041,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:1043,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:1044,1
    - Dst: SFE_Arguments
      Src: /src/gpac/src/bifs/script_enc.c:1046,1
    - Dst: SFE_StatementBlock
      Src: /src/gpac/src/bifs/script_enc.c:1047,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/script_enc.c:1049,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - sc_enc
    argTypes:
    - ScriptEnc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1050
      start: 1031
    functionDepth: 10
    functionLinenumber: 1031
    functionLinenumberEnd: 1050
    functionName: SFE_Function
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - SFE_NextToken
    - SFE_PutIdentifier
    - GF_LOG
    - strcpy
    - SFE_CheckToken
    - SFE_Arguments
    - SFE_StatementBlock
    linkageType: ''
    returnType: void
    signature: void SFE_Function(ScriptEnc *sc_enc)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/script_enc.c:1057,1
    - Dst: memset
      Src: /src/gpac/src/bifs/script_enc.c:1059,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/script_enc.c:1063,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/script_enc.c:1064,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1068,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1069,1
    - Dst: EncScriptFields
      Src: /src/gpac/src/bifs/script_enc.c:1071,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1074,1
    - Dst: strnicmp
      Src: /src/gpac/src/bifs/script_enc.c:1082,1
    - Dst: strnicmp
      Src: /src/gpac/src/bifs/script_enc.c:1083,1
    - Dst: strnicmp
      Src: /src/gpac/src/bifs/script_enc.c:1084,1
    - Dst: strnicmp
      Src: /src/gpac/src/bifs/script_enc.c:1087,1
    - Dst: strchr
      Src: /src/gpac/src/bifs/script_enc.c:1094,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1098,1
    - Dst: SFE_Function
      Src: /src/gpac/src/bifs/script_enc.c:1099,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1102,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/script_enc.c:1105,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/script_enc.c:1106,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/script_enc.c:1107,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/script_enc.c:1108,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/script_enc.c:1110,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/script_enc.c:1112,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/script_enc.c:1113,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/script_enc.c:1114,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/script_enc.c:1115,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/script_enc.c:1117,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 55
    argCount: 4
    argNames:
    - codec
    - script_field
    - bs
    - n
    argTypes:
    - GF_BifsEncoder*
    - SFScript*
    - GF_BitStream*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1120
      start: 1053
    functionDepth: 11
    functionLinenumber: 1053
    functionLinenumberEnd: 1120
    functionName: SFScript_Encode
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_free
    - gf_list_new
    - gf_list_get
    - EncScriptFields
    - gf_list_count
    - memset
    - GF_BIFS_WRITE_INT
    - strnicmp
    - SFE_Function
    - gf_list_del
    - strchr
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SFScript_Encode(GF_BifsEncoder *codec, SFScript *script_field,
      GF_BitStream *bs, GF_Node *n)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/bifs/script_enc.c:1126,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1131,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1135,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1139,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1143,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/script_enc.c:1146,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1151,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - sc_enc
    - str
    argTypes:
    - ScriptEnc*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1152
      start: 1123
    functionDepth: 1
    functionLinenumber: 1123
    functionLinenumberEnd: 1152
    functionName: SFE_PutReal
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - SFE_WRITE_INT
    - strlen
    linkageType: ''
    returnType: void
    signature: void SFE_PutReal(ScriptEnc *sc_enc, char *str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strpbrk
      Src: /src/gpac/src/bifs/script_enc.c:1156,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1157,1
    - Dst: SFE_PutInteger
      Src: /src/gpac/src/bifs/script_enc.c:1158,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1160,1
    - Dst: SFE_PutReal
      Src: /src/gpac/src/bifs/script_enc.c:1161,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - sc_enc
    - str
    argTypes:
    - ScriptEnc*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1163
      start: 1154
    functionDepth: 2
    functionLinenumber: 1154
    functionLinenumberEnd: 1163
    functionName: SFE_PutNumber
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - strpbrk
    - SFE_PutReal
    - SFE_PutInteger
    - SFE_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void SFE_PutNumber(ScriptEnc *sc_enc, char *str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/bifs/script_enc.c:1168,1
    - Dst: strcmp
      Src: /src/gpac/src/bifs/script_enc.c:1168,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1169,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - sc_enc
    - str
    argTypes:
    - ScriptEnc*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1170
      start: 1165
    functionDepth: 1
    functionLinenumber: 1165
    functionLinenumberEnd: 1170
    functionName: SFE_PutBoolean
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - strcmp
    - SFE_WRITE_INT
    - stricmp
    linkageType: ''
    returnType: void
    signature: void SFE_PutBoolean(ScriptEnc *sc_enc, char *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1179
      start: 1173
    functionDepth: 0
    functionLinenumber: 1173
    functionLinenumberEnd: 1179
    functionName: CHECK_TOK
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_TOK(x)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/bifs/script_enc.c:1260,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 82
    argCount: 1
    argNames:
    - tok
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1263
      start: 1180
    functionDepth: 1
    functionLinenumber: 1180
    functionLinenumberEnd: 1263
    functionName: TOK_To_ET
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 0
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: u32
    signature: u32 TOK_To_ET(u32 tok)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/script_enc.c:1406,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 23
    argCount: 4
    argNames:
    - sc_enc
    - endTok
    - cur
    - end
    argTypes:
    - ScriptEnc*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1417
      start: 1396
    functionDepth: 1
    functionLinenumber: 1396
    functionLinenumberEnd: 1417
    functionName: MoveToToken
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: u32
    signature: u32 MoveToToken(ScriptEnc *sc_enc, u32 endTok, u32 cur, u32 end)
  - BBCount: 91
    BranchProfiles: []
    Callsites:
    - Dst: MoveToToken
      Src: /src/gpac/src/bifs/script_enc.c:1458,1
    - Dst: MoveToToken
      Src: /src/gpac/src/bifs/script_enc.c:1463,1
    - Dst: CHECK_TOK
      Src: /src/gpac/src/bifs/script_enc.c:1468,1
    - Dst: MoveToToken
      Src: /src/gpac/src/bifs/script_enc.c:1471,1
    - Dst: CHECK_TOK
      Src: /src/gpac/src/bifs/script_enc.c:1480,1
    - Dst: CHECK_TOK
      Src: /src/gpac/src/bifs/script_enc.c:1482,1
    - Dst: MoveToToken
      Src: /src/gpac/src/bifs/script_enc.c:1483,1
    - Dst: MoveToToken
      Src: /src/gpac/src/bifs/script_enc.c:1533,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/script_enc.c:1541,1
    - Dst: TOK_To_ET
      Src: /src/gpac/src/bifs/script_enc.c:1545,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/script_enc.c:1571,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/script_enc.c:1579,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1585,1
    - Dst: SFE_Expression
      Src: /src/gpac/src/bifs/script_enc.c:1607,1
    - Dst: SFE_Expression
      Src: /src/gpac/src/bifs/script_enc.c:1608,1
    - Dst: SFE_Expression
      Src: /src/gpac/src/bifs/script_enc.c:1623,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/script_enc.c:1625,1
    - Dst: SFE_Expression
      Src: /src/gpac/src/bifs/script_enc.c:1629,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/script_enc.c:1634,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/script_enc.c:1635,1
    - Dst: SFE_PutIdentifier
      Src: /src/gpac/src/bifs/script_enc.c:1640,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/script_enc.c:1641,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/script_enc.c:1644,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/script_enc.c:1645,1
    - Dst: SFE_PutNumber
      Src: /src/gpac/src/bifs/script_enc.c:1646,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/script_enc.c:1647,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/script_enc.c:1650,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/script_enc.c:1651,1
    - Dst: SFE_PutBoolean
      Src: /src/gpac/src/bifs/script_enc.c:1652,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/script_enc.c:1653,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/script_enc.c:1657,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/script_enc.c:1659,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1660,1
    - Dst: SFE_PutIdentifier
      Src: /src/gpac/src/bifs/script_enc.c:1661,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/script_enc.c:1662,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1664,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/script_enc.c:1667,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/script_enc.c:1668,1
    - Dst: gf_bifs_enc_name
      Src: /src/gpac/src/bifs/script_enc.c:1669,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/script_enc.c:1670,1
    - Dst: SFE_Expression
      Src: /src/gpac/src/bifs/script_enc.c:1677,1
    - Dst: SFE_CompoundExpression
      Src: /src/gpac/src/bifs/script_enc.c:1680,1
    - Dst: SFE_Expression
      Src: /src/gpac/src/bifs/script_enc.c:1684,1
    - Dst: SFE_FunctionCall
      Src: /src/gpac/src/bifs/script_enc.c:1687,1
    - Dst: SFE_ObjectMemberAccess
      Src: /src/gpac/src/bifs/script_enc.c:1690,1
    - Dst: SFE_ObjectMethodCall
      Src: /src/gpac/src/bifs/script_enc.c:1693,1
    - Dst: SFE_ArrayDereference
      Src: /src/gpac/src/bifs/script_enc.c:1696,1
    - Dst: SFE_ObjectConstruct
      Src: /src/gpac/src/bifs/script_enc.c:1699,1
    - Dst: SFE_ConditionTest
      Src: /src/gpac/src/bifs/script_enc.c:1702,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:1705,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:1706,1
    - Dst: SFE_Arguments
      Src: /src/gpac/src/bifs/script_enc.c:1708,1
    - Dst: SFE_StatementBlock
      Src: /src/gpac/src/bifs/script_enc.c:1709,1
    - Dst: SFE_NextToken
      Src: /src/gpac/src/bifs/script_enc.c:1710,1
    - Dst: SFE_CheckToken
      Src: /src/gpac/src/bifs/script_enc.c:1711,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/script_enc.c:1714,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/bifs/script_enc.c:1714,1
    CyclomaticComplexity: 81
    EdgeCount: 81
    ICount: 270
    argCount: 4
    argNames:
    - sc_enc
    - start
    - end
    - memberAccess
    argTypes:
    - ScriptEnc*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1719
      start: 1428
    functionDepth: 10
    functionLinenumber: 1428
    functionLinenumberEnd: 1719
    functionName: SFE_Expression
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 2
    functionsReached:
    - gf_free
    - SFE_NextToken
    - SFE_PutIdentifier
    - SFE_Expression
    - GF_BIFS_WRITE_INT
    - SFE_FunctionCall
    - SFE_CompoundExpression
    - SFE_StatementBlock
    - CHECK_TOK
    - gf_list_get
    - SFE_ObjectConstruct
    - SFE_PutNumber
    - SFE_WRITE_INT
    - GF_LOG
    - gf_bifs_enc_name
    - GF_ARRAY_LENGTH
    - SFE_CheckToken
    - SFE_ConditionTest
    - TOK_To_ET
    - SFE_ObjectMethodCall
    - SFE_ArrayDereference
    - SFE_ObjectMemberAccess
    - SFE_PutBoolean
    - SFE_Arguments
    - MoveToToken
    - gf_list_rem
    linkageType: ''
    returnType: u32
    signature: u32 SFE_Expression(ScriptEnc *sc_enc, u32 start, u32 end, Bool memberAccess)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_TOK
      Src: /src/gpac/src/bifs/script_enc.c:1727,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/script_enc.c:1728,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/script_enc.c:1729,1
    - Dst: SFE_PutIdentifier
      Src: /src/gpac/src/bifs/script_enc.c:1730,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/script_enc.c:1731,1
    - Dst: CHECK_TOK
      Src: /src/gpac/src/bifs/script_enc.c:1733,1
    - Dst: SFE_Params
      Src: /src/gpac/src/bifs/script_enc.c:1734,1
    - Dst: CHECK_TOK
      Src: /src/gpac/src/bifs/script_enc.c:1736,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 3
    argNames:
    - sc_enc
    - start
    - end
    argTypes:
    - ScriptEnc*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1737
      start: 1722
    functionDepth: 3
    functionLinenumber: 1722
    functionLinenumberEnd: 1737
    functionName: SFE_FunctionCall
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 1
    functionsReached:
    - gf_free
    - CHECK_TOK
    - gf_list_get
    - SFE_PutIdentifier
    - SFE_Params
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void SFE_FunctionCall(ScriptEnc *sc_enc, u32 start, u32 end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SFE_Expression
      Src: /src/gpac/src/bifs/script_enc.c:1744,1
    - Dst: CHECK_TOK
      Src: /src/gpac/src/bifs/script_enc.c:1746,1
    - Dst: CHECK_TOK
      Src: /src/gpac/src/bifs/script_enc.c:1748,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/script_enc.c:1749,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/script_enc.c:1750,1
    - Dst: SFE_PutIdentifier
      Src: /src/gpac/src/bifs/script_enc.c:1751,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/script_enc.c:1752,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 4
    argNames:
    - sc_enc
    - start
    - op
    - end
    argTypes:
    - ScriptEnc*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1753
      start: 1739
    functionDepth: 11
    functionLinenumber: 1739
    functionLinenumberEnd: 1753
    functionName: SFE_ObjectMemberAccess
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - CHECK_TOK
    - SFE_PutIdentifier
    - SFE_Expression
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void SFE_ObjectMemberAccess(ScriptEnc *sc_enc, u32 start, u32 op, u32
      end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SFE_Expression
      Src: /src/gpac/src/bifs/script_enc.c:1760,1
    - Dst: CHECK_TOK
      Src: /src/gpac/src/bifs/script_enc.c:1762,1
    - Dst: CHECK_TOK
      Src: /src/gpac/src/bifs/script_enc.c:1764,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/script_enc.c:1765,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/script_enc.c:1766,1
    - Dst: SFE_PutIdentifier
      Src: /src/gpac/src/bifs/script_enc.c:1767,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/script_enc.c:1768,1
    - Dst: CHECK_TOK
      Src: /src/gpac/src/bifs/script_enc.c:1770,1
    - Dst: SFE_Params
      Src: /src/gpac/src/bifs/script_enc.c:1771,1
    - Dst: CHECK_TOK
      Src: /src/gpac/src/bifs/script_enc.c:1773,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 4
    argNames:
    - sc_enc
    - start
    - op
    - end
    argTypes:
    - ScriptEnc*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1774
      start: 1755
    functionDepth: 11
    functionLinenumber: 1755
    functionLinenumberEnd: 1774
    functionName: SFE_ObjectMethodCall
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - CHECK_TOK
    - SFE_PutIdentifier
    - SFE_Expression
    - SFE_Params
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void SFE_ObjectMethodCall(ScriptEnc *sc_enc, u32 start, u32 op, u32
      end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SFE_Expression
      Src: /src/gpac/src/bifs/script_enc.c:1780,1
    - Dst: CHECK_TOK
      Src: /src/gpac/src/bifs/script_enc.c:1782,1
    - Dst: SFE_CompoundExpression
      Src: /src/gpac/src/bifs/script_enc.c:1783,1
    - Dst: CHECK_TOK
      Src: /src/gpac/src/bifs/script_enc.c:1785,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - sc_enc
    - start
    - op
    - end
    argTypes:
    - ScriptEnc*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1786
      start: 1776
    functionDepth: 11
    functionLinenumber: 1776
    functionLinenumberEnd: 1786
    functionName: SFE_ArrayDereference
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 1
    functionsReached:
    - SFE_Expression
    - CHECK_TOK
    - SFE_CompoundExpression
    linkageType: ''
    returnType: void
    signature: void SFE_ArrayDereference(ScriptEnc *sc_enc, u32 start, u32 op, u32
      end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_TOK
      Src: /src/gpac/src/bifs/script_enc.c:1794,1
    - Dst: CHECK_TOK
      Src: /src/gpac/src/bifs/script_enc.c:1796,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/script_enc.c:1797,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/script_enc.c:1798,1
    - Dst: SFE_PutIdentifier
      Src: /src/gpac/src/bifs/script_enc.c:1799,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/script_enc.c:1800,1
    - Dst: CHECK_TOK
      Src: /src/gpac/src/bifs/script_enc.c:1802,1
    - Dst: SFE_Params
      Src: /src/gpac/src/bifs/script_enc.c:1803,1
    - Dst: CHECK_TOK
      Src: /src/gpac/src/bifs/script_enc.c:1805,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 4
    argNames:
    - sc_enc
    - start
    - op
    - end
    argTypes:
    - ScriptEnc*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1806
      start: 1788
    functionDepth: 3
    functionLinenumber: 1788
    functionLinenumberEnd: 1806
    functionName: SFE_ObjectConstruct
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 1
    functionsReached:
    - gf_free
    - CHECK_TOK
    - gf_list_get
    - SFE_PutIdentifier
    - SFE_Params
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void SFE_ObjectConstruct(ScriptEnc *sc_enc, u32 start, u32 op, u32
      end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SFE_Expression
      Src: /src/gpac/src/bifs/script_enc.c:1812,1
    - Dst: CHECK_TOK
      Src: /src/gpac/src/bifs/script_enc.c:1814,1
    - Dst: MoveToToken
      Src: /src/gpac/src/bifs/script_enc.c:1816,1
    - Dst: SFE_Expression
      Src: /src/gpac/src/bifs/script_enc.c:1817,1
    - Dst: CHECK_TOK
      Src: /src/gpac/src/bifs/script_enc.c:1819,1
    - Dst: SFE_Expression
      Src: /src/gpac/src/bifs/script_enc.c:1820,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 4
    argNames:
    - sc_enc
    - start
    - op
    - end
    argTypes:
    - ScriptEnc*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1821
      start: 1808
    functionDepth: 11
    functionLinenumber: 1808
    functionLinenumberEnd: 1821
    functionName: SFE_ConditionTest
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 1
    functionsReached:
    - SFE_Expression
    - CHECK_TOK
    - MoveToToken
    linkageType: ''
    returnType: void
    signature: void SFE_ConditionTest(ScriptEnc *sc_enc, u32 start, u32 op, u32 end)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1829,1
    - Dst: SFE_CompoundExpression
      Src: /src/gpac/src/bifs/script_enc.c:1830,1
    - Dst: SFE_WRITE_INT
      Src: /src/gpac/src/bifs/script_enc.c:1832,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - sc_enc
    - start
    - end
    argTypes:
    - ScriptEnc*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1834
      start: 1823
    functionDepth: 5
    functionLinenumber: 1823
    functionLinenumberEnd: 1834
    functionName: SFE_Params
    functionSourceFile: /src/gpac/src/bifs/script_enc.c
    functionUses: 3
    functionsReached:
    - SFE_WRITE_INT
    - SFE_CompoundExpression
    linkageType: ''
    returnType: void
    signature: void SFE_Params(ScriptEnc *sc_enc, u32 start, u32 end)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/field_encode.c:40,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/field_encode.c:42,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - node
    - all_ind
    - indexMode
    - outField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 36
    functionDepth: 2
    functionLinenumber: 36
    functionLinenumberEnd: 50
    functionName: gf_bifs_field_index_by_mode
    functionSourceFile: /src/gpac/src/bifs/field_encode.c
    functionUses: 8
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_get_field_index
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_field_index_by_mode(GF_Node *node, u32 all_ind, u8 indexMode,
      u32 *outField)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bifs_enc_mantissa_float
      Src: /src/gpac/src/bifs/field_encode.c:56,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/bifs/field_encode.c:58,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/bifs/field_encode.c:58,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/field_encode.c:59,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/bifs/field_encode.c:59,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - codec
    - val
    - bs
    - com
    argTypes:
    - GF_BifsEncoder*
    - Fixed
    - GF_BitStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 53
    functionDepth: 2
    functionLinenumber: 53
    functionLinenumberEnd: 61
    functionName: BE_WriteSFFloat
    functionSourceFile: /src/gpac/src/bifs/field_encode.c
    functionUses: 0
    functionsReached:
    - gf_bifs_enc_mantissa_float
    - GF_LOG
    - FIX2FLT
    - gf_bs_write_float
    linkageType: ''
    returnType: void
    signature: void BE_WriteSFFloat(GF_BifsEncoder *codec, Fixed val, GF_BitStream
      *bs, char *com)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_bifs_enc_quant_field
      Src: /src/gpac/src/bifs/field_encode.c:69,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:74,1
    - Dst: BE_WriteSFFloat
      Src: /src/gpac/src/bifs/field_encode.c:77,1
    - Dst: BE_WriteSFFloat
      Src: /src/gpac/src/bifs/field_encode.c:78,1
    - Dst: BE_WriteSFFloat
      Src: /src/gpac/src/bifs/field_encode.c:79,1
    - Dst: BE_WriteSFFloat
      Src: /src/gpac/src/bifs/field_encode.c:82,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:85,1
    - Dst: BE_WriteSFFloat
      Src: /src/gpac/src/bifs/field_encode.c:88,1
    - Dst: BE_WriteSFFloat
      Src: /src/gpac/src/bifs/field_encode.c:89,1
    - Dst: BE_WriteSFFloat
      Src: /src/gpac/src/bifs/field_encode.c:90,1
    - Dst: BE_WriteSFFloat
      Src: /src/gpac/src/bifs/field_encode.c:91,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/bifs/field_encode.c:101,1
    - Dst: gf_fopen
      Src: /src/gpac/src/bifs/field_encode.c:103,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/field_encode.c:105,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/field_encode.c:108,1
    - Dst: gf_fsize
      Src: /src/gpac/src/bifs/field_encode.c:109,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/field_encode.c:110,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:111,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:112,1
    - Dst: gf_fread
      Src: /src/gpac/src/bifs/field_encode.c:115,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/bifs/field_encode.c:116,1
    - Dst: gf_fclose
      Src: /src/gpac/src/bifs/field_encode.c:119,1
    - Dst: strlen
      Src: /src/gpac/src/bifs/field_encode.c:127,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/field_encode.c:130,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:131,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:132,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/field_encode.c:133,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/field_encode.c:135,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/field_encode.c:137,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/bifs/field_encode.c:143,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/field_encode.c:144,1
    - Dst: BE_WriteSFFloat
      Src: /src/gpac/src/bifs/field_encode.c:148,1
    - Dst: BE_WriteSFFloat
      Src: /src/gpac/src/bifs/field_encode.c:149,1
    - Dst: BE_WriteSFFloat
      Src: /src/gpac/src/bifs/field_encode.c:153,1
    - Dst: BE_WriteSFFloat
      Src: /src/gpac/src/bifs/field_encode.c:154,1
    - Dst: BE_WriteSFFloat
      Src: /src/gpac/src/bifs/field_encode.c:155,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:161,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:163,1
    - Dst: strlen
      Src: /src/gpac/src/bifs/field_encode.c:165,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/field_encode.c:166,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:167,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:168,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/field_encode.c:169,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/field_encode.c:170,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:178,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:179,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:180,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/field_encode.c:182,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/field_encode.c:183,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/field_encode.c:190,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/field_encode.c:193,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/bifs/field_encode.c:195,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/field_encode.c:196,1
    - Dst: gf_bifs_enc_commands
      Src: /src/gpac/src/bifs/field_encode.c:197,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/bifs/field_encode.c:198,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/bifs/field_encode.c:199,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/field_encode.c:201,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/field_encode.c:202,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:203,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:204,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:205,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:209,1
    - Dst: gf_bifs_enc_node
      Src: /src/gpac/src/bifs/field_encode.c:215,1
    - Dst: SFScript_Encode
      Src: /src/gpac/src/bifs/field_encode.c:219,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/field_encode.c:228,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/field_encode.c:228,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:229,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/field_encode.c:229,1
    - Dst: gf_bifs_field_index_by_mode
      Src: /src/gpac/src/bifs/field_encode.c:231,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:232,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 142
    argCount: 4
    argNames:
    - codec
    - bs
    - node
    - field
    argTypes:
    - GF_BifsEncoder*
    - GF_BitStream*
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 64
    functionDepth: 12
    functionLinenumber: 64
    functionLinenumberEnd: 239
    functionName: gf_bifs_enc_sf_field
    functionSourceFile: /src/gpac/src/bifs/field_encode.c
    functionUses: 3
    functionsReached:
    - gf_free
    - gf_node_get_num_fields_in_mode
    - gf_bs_new
    - gf_bifs_enc_node
    - gf_bifs_field_index_by_mode
    - gf_list_count
    - GF_BIFS_WRITE_INT
    - gf_fopen
    - gf_node_get_id
    - gf_bs_get_content
    - SFScript_Encode
    - gf_fsize
    - gf_bs_write_double
    - gf_bifs_enc_quant_field
    - gf_get_bit_size
    - GF_LOG
    - gf_fread
    - gf_bs_write_int
    - gf_bs_write_data
    - BE_WriteSFFloat
    - strlen
    - gf_fclose
    - gf_url_concatenate
    - gf_bs_del
    - gf_bifs_enc_commands
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_enc_sf_field(GF_BifsEncoder *codec, GF_BitStream *bs,
      GF_Node *node, GF_FieldInfo *field)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/bifs/field_encode.c:258,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:261,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:264,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:266,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/field_encode.c:272,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:275,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:277,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:278,1
    - Dst: memset
      Src: /src/gpac/src/bifs/field_encode.c:281,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/field_encode.c:283,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:291,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/bifs/field_encode.c:294,1
    - Dst: gf_bifs_enc_sf_field
      Src: /src/gpac/src/bifs/field_encode.c:295,1
    - Dst: gf_bifs_enc_node
      Src: /src/gpac/src/bifs/field_encode.c:298,1
    - Dst: gf_bifs_enc_qp_remove
      Src: /src/gpac/src/bifs/field_encode.c:303,1
    - Dst: gf_bifs_enc_qp_set
      Src: /src/gpac/src/bifs/field_encode.c:304,1
    - Dst: gf_bifs_enc_qp_remove
      Src: /src/gpac/src/bifs/field_encode.c:317,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:323,1
    - Dst: gf_bifs_enc_qp_remove
      Src: /src/gpac/src/bifs/field_encode.c:324,1
    - Dst: gf_bifs_enc_qp14_set_length
      Src: /src/gpac/src/bifs/field_encode.c:326,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 72
    argCount: 4
    argNames:
    - codec
    - bs
    - node
    - field
    argTypes:
    - GF_BifsEncoder*
    - GF_BitStream*
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 242
    functionDepth: 13
    functionLinenumber: 242
    functionLinenumberEnd: 328
    functionName: gf_bifs_enc_mf_field
    functionSourceFile: /src/gpac/src/bifs/field_encode.c
    functionUses: 1
    functionsReached:
    - gf_sg_vrml_get_sf_type
    - gf_get_bit_size
    - gf_sg_vrml_mf_get_item
    - gf_bifs_enc_node
    - gf_bifs_enc_qp_remove
    - memset
    - GF_BIFS_WRITE_INT
    - gf_bifs_enc_sf_field
    - gf_bifs_enc_qp_set
    - gf_node_list_get_count
    - gf_bifs_enc_qp14_set_length
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_enc_mf_field(GF_BifsEncoder *codec, GF_BitStream *bs,
      GF_Node *node, GF_FieldInfo *field)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/field_encode.c:337,1
    - Dst: gf_bifs_enc_sf_field
      Src: /src/gpac/src/bifs/field_encode.c:338,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:344,1
    - Dst: gf_bifs_enc_mf_field
      Src: /src/gpac/src/bifs/field_encode.c:346,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 4
    argNames:
    - codec
    - bs
    - node
    - field
    argTypes:
    - GF_BifsEncoder*
    - GF_BitStream*
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 331
    functionDepth: 14
    functionLinenumber: 331
    functionLinenumberEnd: 347
    functionName: gf_bifs_enc_field
    functionSourceFile: /src/gpac/src/bifs/field_encode.c
    functionUses: 5
    functionsReached:
    - gf_bifs_enc_mf_field
    - GF_BIFS_WRITE_INT
    - gf_bifs_enc_sf_field
    - gf_sg_vrml_is_sf_field
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_enc_field(GF_BifsEncoder * codec, GF_BitStream *bs,
      GF_Node *node, GF_FieldInfo *field)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/bifs/field_encode.c:358,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/bifs/field_encode.c:366,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 24
    argCount: 3
    argNames:
    - codec
    - node
    - fieldIndex
    argTypes:
    - GF_BifsEncoder*
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 350
    functionDepth: 1
    functionLinenumber: 350
    functionLinenumberEnd: 372
    functionName: gf_bifs_enc_is_field_ised
    functionSourceFile: /src/gpac/src/bifs/field_encode.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_Route
    signature: GF_Route *gf_bifs_enc_is_field_ised(GF_BifsEncoder *codec, GF_Node
      *node, u32 fieldIndex)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/field_encode.c:390,1
    - Dst: gf_sg_proto_get_field_count
      Src: /src/gpac/src/bifs/field_encode.c:390,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/field_encode.c:391,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/field_encode.c:391,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/field_encode.c:397,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:401,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:402,1
    - Dst: gf_sg_proto_create_instance
      Src: /src/gpac/src/bifs/field_encode.c:407,1
    - Dst: gf_node_new
      Src: /src/gpac/src/bifs/field_encode.c:409,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/field_encode.c:411,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/field_encode.c:413,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/field_encode.c:413,1
    - Dst: gf_malloc
      Src: /src/gpac/src/bifs/field_encode.c:415,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/field_encode.c:423,1
    - Dst: gf_bifs_enc_is_field_ised
      Src: /src/gpac/src/bifs/field_encode.c:428,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/field_encode.c:436,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/field_encode.c:456,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/field_encode.c:467,1
    - Dst: gf_sg_vrml_field_equal
      Src: /src/gpac/src/bifs/field_encode.c:468,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/field_encode.c:475,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:491,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:495,1
    - Dst: gf_bifs_enc_is_field_ised
      Src: /src/gpac/src/bifs/field_encode.c:502,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:505,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:507,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:509,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:510,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:513,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:515,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/field_encode.c:521,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:524,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:527,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:530,1
    - Dst: gf_bifs_field_index_by_mode
      Src: /src/gpac/src/bifs/field_encode.c:536,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:537,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:539,1
    - Dst: gf_bifs_enc_field
      Src: /src/gpac/src/bifs/field_encode.c:542,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:546,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/field_encode.c:548,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 145
    argCount: 3
    argNames:
    - codec
    - bs
    - node
    argTypes:
    - GF_BifsEncoder*
    - GF_BitStream*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 375
    functionDepth: 15
    functionLinenumber: 375
    functionLinenumberEnd: 550
    functionName: EncNodeFields
    functionSourceFile: /src/gpac/src/bifs/field_encode.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_num_fields_in_mode
    - gf_sg_proto_create_instance
    - gf_bifs_enc_field
    - gf_get_bit_size
    - gf_bifs_get_field_index
    - gf_bifs_field_index_by_mode
    - gf_bifs_enc_is_field_ised
    - gf_list_count
    - GF_BIFS_WRITE_INT
    - gf_node_new
    - gf_node_get_field
    - gf_sg_proto_get_field_count
    - gf_node_unregister
    - gf_sg_vrml_field_equal
    - gf_node_register
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EncNodeFields(GF_BifsEncoder * codec, GF_BitStream *bs, GF_Node
      *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/field_encode.c:555,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/field_encode.c:556,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/field_encode.c:558,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/field_encode.c:560,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - codec
    - node
    argTypes:
    - GF_BifsEncoder*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 562
      start: 552
    functionDepth: 1
    functionLinenumber: 552
    functionLinenumberEnd: 562
    functionName: BE_NodeIsUSE
    functionSourceFile: /src/gpac/src/bifs/field_encode.c
    functionUses: 0
    functionsReached:
    - gf_node_get_id
    - gf_list_count
    - gf_list_get
    - gf_list_add
    linkageType: ''
    returnType: Bool
    signature: Bool BE_NodeIsUSE(GF_BifsEncoder * codec, GF_Node *node)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/field_encode.c:572,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/bifs/field_encode.c:572,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:576,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:577,1
    - Dst: BE_NodeIsUSE
      Src: /src/gpac/src/bifs/field_encode.c:581,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:582,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/bifs/field_encode.c:582,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/field_encode.c:586,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/field_encode.c:586,1
    - Dst: gf_bifs_enc_find_node
      Src: /src/gpac/src/bifs/field_encode.c:587,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/field_encode.c:587,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/field_encode.c:592,1
    - Dst: gf_bifs_enc_qp14_enter
      Src: /src/gpac/src/bifs/field_encode.c:596,1
    - Dst: gf_bifs_enc_qp14_set_length
      Src: /src/gpac/src/bifs/field_encode.c:597,1
    - Dst: gf_bifs_enc_qp14_enter
      Src: /src/gpac/src/bifs/field_encode.c:598,1
    - Dst: gf_bifs_enc_qp14_enter
      Src: /src/gpac/src/bifs/field_encode.c:604,1
    - Dst: gf_bifs_enc_qp14_set_length
      Src: /src/gpac/src/bifs/field_encode.c:605,1
    - Dst: gf_bifs_enc_qp14_enter
      Src: /src/gpac/src/bifs/field_encode.c:606,1
    - Dst: gf_bifs_get_node_type
      Src: /src/gpac/src/bifs/field_encode.c:616,1
    - Dst: gf_bifs_get_ndt_bits
      Src: /src/gpac/src/bifs/field_encode.c:617,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:619,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/field_encode.c:625,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/bifs/field_encode.c:625,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/bifs/field_encode.c:625,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/field_encode.c:627,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/bifs/field_encode.c:627,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:634,1
    - Dst: gf_node_get_name_and_id
      Src: /src/gpac/src/bifs/field_encode.c:640,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:641,1
    - Dst: GF_BIFS_WRITE_INT
      Src: /src/gpac/src/bifs/field_encode.c:643,1
    - Dst: gf_bifs_enc_name
      Src: /src/gpac/src/bifs/field_encode.c:644,1
    - Dst: gf_bifs_enc_qp14_enter
      Src: /src/gpac/src/bifs/field_encode.c:656,1
    - Dst: EncNodeFields
      Src: /src/gpac/src/bifs/field_encode.c:659,1
    - Dst: gf_bifs_enc_qp14_reset
      Src: /src/gpac/src/bifs/field_encode.c:663,1
    - Dst: gf_bifs_enc_qp14_enter
      Src: /src/gpac/src/bifs/field_encode.c:668,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 80
    argCount: 5
    argNames:
    - codec
    - node
    - NDT_Tag
    - bs
    - parent_node
    argTypes:
    - GF_BifsEncoder*
    - GF_Node*
    - u32
    - GF_BitStream*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 672
      start: 564
    functionDepth: 16
    functionLinenumber: 564
    functionLinenumberEnd: 672
    functionName: gf_bifs_enc_node
    functionSourceFile: /src/gpac/src/bifs/field_encode.c
    functionUses: 10
    functionsReached:
    - gf_node_get_tag
    - gf_node_get_class_name
    - gf_node_get_id
    - GF_LOG
    - gf_bs_write_int
    - gf_bifs_enc_name
    - BE_NodeIsUSE
    - gf_bifs_get_ndt_bits
    - GF_BIFS_WRITE_INT
    - gf_node_get_name_and_id
    - EncNodeFields
    - gf_bifs_enc_qp14_reset
    - gf_bifs_get_node_type
    - gf_bifs_enc_qp14_enter
    - gf_bifs_enc_qp14_set_length
    - gf_bifs_enc_find_node
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_enc_node(GF_BifsEncoder * codec, GF_Node *node, u32
      NDT_Tag, GF_BitStream *bs, GF_Node *parent_node)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 4
    argNames:
    - table
    - count
    - NodeTag
    - Version
    argTypes:
    - u32*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 52
    functionName: ALL_GetNodeType
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ALL_GetNodeType(const u32 *table, const u32 count, u32 NodeTag,
      u32 Version)
  - BBCount: 65
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 132
    argCount: 2
    argNames:
    - Context_NDT_Tag
    - NodeType
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 160
    functionName: NDT_V1_GetNodeTag
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V1_GetNodeTag(u32 Context_NDT_Tag, u32 NodeType)
  - BBCount: 33
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 67
    argCount: 1
    argNames:
    - NDT_Tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 231
    functionName: NDT_V1_GetNumBits
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V1_GetNumBits(u32 NDT_Tag)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:238,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:240,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:242,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:244,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:246,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:248,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:250,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:252,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:254,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:256,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:258,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:260,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:262,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:264,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:266,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:268,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:270,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:272,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:274,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:276,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:278,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:280,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:282,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:284,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:286,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:288,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:290,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:292,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:294,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:296,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:298,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 69
    argCount: 2
    argNames:
    - NDT_Tag
    - NodeTag
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 233
    functionDepth: 1
    functionLinenumber: 233
    functionLinenumberEnd: 302
    functionName: NDT_V1_GetNodeType
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached:
    - ALL_GetNodeType
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V1_GetNodeType(u32 NDT_Tag, u32 NodeTag)
  - BBCount: 24
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 50
    argCount: 2
    argNames:
    - Context_NDT_Tag
    - NodeType
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 307
    functionDepth: 0
    functionLinenumber: 307
    functionLinenumberEnd: 348
    functionName: NDT_V2_GetNodeTag
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V2_GetNodeTag(u32 Context_NDT_Tag, u32 NodeType)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 1
    argNames:
    - NDT_Tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 377
    functionName: NDT_V2_GetNumBits
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V2_GetNumBits(u32 NDT_Tag)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:384,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:386,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:388,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:390,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:392,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:394,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:396,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:398,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:400,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:402,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 27
    argCount: 2
    argNames:
    - NDT_Tag
    - NodeTag
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 379
    functionDepth: 1
    functionLinenumber: 379
    functionLinenumberEnd: 406
    functionName: NDT_V2_GetNodeType
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached:
    - ALL_GetNodeType
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V2_GetNodeType(u32 NDT_Tag, u32 NodeTag)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 2
    argNames:
    - Context_NDT_Tag
    - NodeType
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 433
    functionName: NDT_V3_GetNodeTag
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V3_GetNodeTag(u32 Context_NDT_Tag, u32 NodeType)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - NDT_Tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 436
    functionDepth: 0
    functionLinenumber: 436
    functionLinenumberEnd: 450
    functionName: NDT_V3_GetNumBits
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V3_GetNumBits(u32 NDT_Tag)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:457,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:459,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:461,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:463,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - NDT_Tag
    - NodeTag
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 452
    functionDepth: 1
    functionLinenumber: 452
    functionLinenumberEnd: 467
    functionName: NDT_V3_GetNodeType
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached:
    - ALL_GetNodeType
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V3_GetNodeType(u32 NDT_Tag, u32 NodeTag)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 2
    argNames:
    - Context_NDT_Tag
    - NodeType
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 472
    functionDepth: 0
    functionLinenumber: 472
    functionLinenumberEnd: 494
    functionName: NDT_V4_GetNodeTag
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V4_GetNodeTag(u32 Context_NDT_Tag, u32 NodeType)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - NDT_Tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 497
    functionDepth: 0
    functionLinenumber: 497
    functionLinenumberEnd: 511
    functionName: NDT_V4_GetNumBits
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V4_GetNumBits(u32 NDT_Tag)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:518,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:520,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:522,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:524,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - NDT_Tag
    - NodeTag
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 513
    functionDepth: 1
    functionLinenumber: 513
    functionLinenumberEnd: 528
    functionName: NDT_V4_GetNodeType
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached:
    - ALL_GetNodeType
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V4_GetNodeType(u32 NDT_Tag, u32 NodeTag)
  - BBCount: 45
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 92
    argCount: 2
    argNames:
    - Context_NDT_Tag
    - NodeType
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 533
    functionDepth: 0
    functionLinenumber: 533
    functionLinenumberEnd: 606
    functionName: NDT_V5_GetNodeTag
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V5_GetNodeTag(u32 Context_NDT_Tag, u32 NodeType)
  - BBCount: 23
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 47
    argCount: 1
    argNames:
    - NDT_Tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 609
    functionDepth: 0
    functionLinenumber: 609
    functionLinenumberEnd: 657
    functionName: NDT_V5_GetNumBits
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V5_GetNumBits(u32 NDT_Tag)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:664,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:666,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:668,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:670,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:672,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:674,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:676,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:678,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:680,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:682,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:684,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:686,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:688,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:690,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:692,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:694,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:696,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:698,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:700,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:702,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:704,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 49
    argCount: 2
    argNames:
    - NDT_Tag
    - NodeTag
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 708
      start: 659
    functionDepth: 1
    functionLinenumber: 659
    functionLinenumberEnd: 708
    functionName: NDT_V5_GetNodeType
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached:
    - ALL_GetNodeType
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V5_GetNodeType(u32 NDT_Tag, u32 NodeTag)
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 44
    argCount: 2
    argNames:
    - Context_NDT_Tag
    - NodeType
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 713
    functionDepth: 0
    functionLinenumber: 713
    functionLinenumberEnd: 750
    functionName: NDT_V6_GetNodeTag
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V6_GetNodeTag(u32 Context_NDT_Tag, u32 NodeType)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 1
    argNames:
    - NDT_Tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 777
      start: 753
    functionDepth: 0
    functionLinenumber: 753
    functionLinenumberEnd: 777
    functionName: NDT_V6_GetNumBits
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V6_GetNumBits(u32 NDT_Tag)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:784,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:786,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:788,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:790,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:792,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:794,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:796,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:798,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:800,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 2
    argNames:
    - NDT_Tag
    - NodeTag
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 804
      start: 779
    functionDepth: 1
    functionLinenumber: 779
    functionLinenumberEnd: 804
    functionName: NDT_V6_GetNodeType
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached:
    - ALL_GetNodeType
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V6_GetNodeType(u32 NDT_Tag, u32 NodeTag)
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 2
    argNames:
    - Context_NDT_Tag
    - NodeType
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 840
      start: 809
    functionDepth: 0
    functionLinenumber: 809
    functionLinenumberEnd: 840
    functionName: NDT_V7_GetNodeTag
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V7_GetNodeTag(u32 Context_NDT_Tag, u32 NodeType)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 1
    argNames:
    - NDT_Tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 863
      start: 843
    functionDepth: 0
    functionLinenumber: 843
    functionLinenumberEnd: 863
    functionName: NDT_V7_GetNumBits
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V7_GetNumBits(u32 NDT_Tag)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:870,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:872,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:874,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:876,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:878,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:880,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:882,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 2
    argNames:
    - NDT_Tag
    - NodeTag
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 886
      start: 865
    functionDepth: 1
    functionLinenumber: 865
    functionLinenumberEnd: 886
    functionName: NDT_V7_GetNodeType
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached:
    - ALL_GetNodeType
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V7_GetNodeType(u32 NDT_Tag, u32 NodeTag)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 2
    argNames:
    - Context_NDT_Tag
    - NodeType
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 913
      start: 891
    functionDepth: 0
    functionLinenumber: 891
    functionLinenumberEnd: 913
    functionName: NDT_V8_GetNodeTag
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V8_GetNodeTag(u32 Context_NDT_Tag, u32 NodeType)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - NDT_Tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 930
      start: 916
    functionDepth: 0
    functionLinenumber: 916
    functionLinenumberEnd: 930
    functionName: NDT_V8_GetNumBits
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V8_GetNumBits(u32 NDT_Tag)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:937,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:939,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:941,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:943,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - NDT_Tag
    - NodeTag
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 947
      start: 932
    functionDepth: 1
    functionLinenumber: 932
    functionLinenumberEnd: 947
    functionName: NDT_V8_GetNodeType
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached:
    - ALL_GetNodeType
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V8_GetNodeType(u32 NDT_Tag, u32 NodeTag)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - Context_NDT_Tag
    - NodeType
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 971
      start: 952
    functionDepth: 0
    functionLinenumber: 952
    functionLinenumberEnd: 971
    functionName: NDT_V9_GetNodeTag
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V9_GetNodeTag(u32 Context_NDT_Tag, u32 NodeType)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - NDT_Tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 986
      start: 974
    functionDepth: 0
    functionLinenumber: 974
    functionLinenumberEnd: 986
    functionName: NDT_V9_GetNumBits
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V9_GetNumBits(u32 NDT_Tag)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:993,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:995,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:997,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - NDT_Tag
    - NodeTag
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1001
      start: 988
    functionDepth: 1
    functionLinenumber: 988
    functionLinenumberEnd: 1001
    functionName: NDT_V9_GetNodeType
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached:
    - ALL_GetNodeType
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V9_GetNodeType(u32 NDT_Tag, u32 NodeTag)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 2
    argNames:
    - Context_NDT_Tag
    - NodeType
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1028
      start: 1006
    functionDepth: 0
    functionLinenumber: 1006
    functionLinenumberEnd: 1028
    functionName: NDT_V10_GetNodeTag
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V10_GetNodeTag(u32 Context_NDT_Tag, u32 NodeType)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - NDT_Tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1045
      start: 1031
    functionDepth: 0
    functionLinenumber: 1031
    functionLinenumberEnd: 1045
    functionName: NDT_V10_GetNumBits
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V10_GetNumBits(u32 NDT_Tag)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1052,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1054,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1056,1
    - Dst: ALL_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1058,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - NDT_Tag
    - NodeTag
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1062
      start: 1047
    functionDepth: 1
    functionLinenumber: 1047
    functionLinenumberEnd: 1062
    functionName: NDT_V10_GetNodeType
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached:
    - ALL_GetNodeType
    linkageType: ''
    returnType: u32
    signature: u32 NDT_V10_GetNodeType(u32 NDT_Tag, u32 NodeTag)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: NDT_V1_GetNodeTag
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1070,1
    - Dst: NDT_V2_GetNodeTag
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1072,1
    - Dst: NDT_V3_GetNodeTag
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1074,1
    - Dst: NDT_V4_GetNodeTag
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1076,1
    - Dst: NDT_V5_GetNodeTag
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1078,1
    - Dst: NDT_V6_GetNodeTag
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1080,1
    - Dst: NDT_V7_GetNodeTag
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1082,1
    - Dst: NDT_V8_GetNodeTag
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1084,1
    - Dst: NDT_V9_GetNodeTag
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1086,1
    - Dst: NDT_V10_GetNodeTag
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1088,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 3
    argNames:
    - NDT_Tag
    - NodeType
    - Version
    argTypes:
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1092
      start: 1066
    functionDepth: 1
    functionLinenumber: 1066
    functionLinenumberEnd: 1092
    functionName: gf_bifs_ndt_get_node_type
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 0
    functionsReached:
    - NDT_V8_GetNodeTag
    - NDT_V4_GetNodeTag
    - NDT_V7_GetNodeTag
    - NDT_V6_GetNodeTag
    - NDT_V2_GetNodeTag
    - NDT_V9_GetNodeTag
    - NDT_V1_GetNodeTag
    - NDT_V5_GetNodeTag
    - NDT_V10_GetNodeTag
    - NDT_V3_GetNodeTag
    linkageType: ''
    returnType: u32
    signature: u32 gf_bifs_ndt_get_node_type(u32 NDT_Tag, u32 NodeType, u32 Version)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: NDT_V1_GetNumBits
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1098,1
    - Dst: NDT_V2_GetNumBits
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1100,1
    - Dst: NDT_V3_GetNumBits
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1102,1
    - Dst: NDT_V4_GetNumBits
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1104,1
    - Dst: NDT_V5_GetNumBits
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1106,1
    - Dst: NDT_V6_GetNumBits
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1108,1
    - Dst: NDT_V7_GetNumBits
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1110,1
    - Dst: NDT_V8_GetNumBits
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1112,1
    - Dst: NDT_V9_GetNumBits
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1114,1
    - Dst: NDT_V10_GetNumBits
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 2
    argNames:
    - NDT_Tag
    - Version
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1120
      start: 1094
    functionDepth: 1
    functionLinenumber: 1094
    functionLinenumberEnd: 1120
    functionName: gf_bifs_get_ndt_bits
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 1
    functionsReached:
    - NDT_V8_GetNumBits
    - NDT_V2_GetNumBits
    - NDT_V6_GetNumBits
    - NDT_V5_GetNumBits
    - NDT_V4_GetNumBits
    - NDT_V7_GetNumBits
    - NDT_V10_GetNumBits
    - NDT_V1_GetNumBits
    - NDT_V3_GetNumBits
    - NDT_V9_GetNumBits
    linkageType: ''
    returnType: u32
    signature: u32 gf_bifs_get_ndt_bits(u32 NDT_Tag, u32 Version)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: NDT_V1_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1126,1
    - Dst: NDT_V2_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1128,1
    - Dst: NDT_V3_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1130,1
    - Dst: NDT_V4_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1132,1
    - Dst: NDT_V5_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1134,1
    - Dst: NDT_V6_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1136,1
    - Dst: NDT_V7_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1138,1
    - Dst: NDT_V8_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1140,1
    - Dst: NDT_V9_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1142,1
    - Dst: NDT_V10_GetNodeType
      Src: /src/gpac/src/bifs/bifs_node_tables.c:1144,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 3
    argNames:
    - NDT_Tag
    - NodeTag
    - Version
    argTypes:
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1148
      start: 1122
    functionDepth: 2
    functionLinenumber: 1122
    functionLinenumberEnd: 1148
    functionName: gf_bifs_get_node_type
    functionSourceFile: /src/gpac/src/bifs/bifs_node_tables.c
    functionUses: 1
    functionsReached:
    - NDT_V1_GetNodeType
    - NDT_V2_GetNodeType
    - NDT_V5_GetNodeType
    - NDT_V4_GetNodeType
    - NDT_V3_GetNodeType
    - NDT_V6_GetNodeType
    - NDT_V7_GetNodeType
    - NDT_V8_GetNodeType
    - NDT_V9_GetNodeType
    - NDT_V10_GetNodeType
    linkageType: ''
    returnType: u32
    signature: u32 gf_bifs_get_node_type(u32 NDT_Tag, u32 NodeTag, u32 Version)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ceil
      Src: /src/gpac/src/bifs/unquantize.c:35,1
    - Dst: log1p
      Src: /src/gpac/src/bifs/unquantize.c:35,1
    - Dst: log
      Src: /src/gpac/src/bifs/unquantize.c:35,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - codec
    argTypes:
    - GF_BifsDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 36
    functionName: gf_bifs_dec_qp14_get_bits
    functionSourceFile: /src/gpac/src/bifs/unquantize.c
    functionUses: 1
    functionsReached:
    - log
    - log1p
    - ceil
    linkageType: ''
    returnType: u32
    signature: u32 gf_bifs_dec_qp14_get_bits(GF_BifsDecoder *codec)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - codec
    - Enter
    argTypes:
    - GF_BifsDecoder*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 46
    functionName: gf_bifs_dec_qp14_enter
    functionSourceFile: /src/gpac/src/bifs/unquantize.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_bifs_dec_qp14_enter(GF_BifsDecoder * codec, Bool Enter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - codec
    argTypes:
    - GF_BifsDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 53
    functionName: gf_bifs_dec_qp14_reset
    functionSourceFile: /src/gpac/src/bifs/unquantize.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_bifs_dec_qp14_reset(GF_BifsDecoder * codec)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - codec
    - NbElements
    argTypes:
    - GF_BifsDecoder*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 59
    functionName: gf_bifs_dec_qp14_set_length
    functionSourceFile: /src/gpac/src/bifs/unquantize.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_bifs_dec_qp14_set_length(GF_BifsDecoder * codec, u32 NbElements)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/bifs/unquantize.c:63,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/unquantize.c:63,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/bifs/unquantize.c:67,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - codec
    - qp
    argTypes:
    - GF_BifsDecoder*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 71
    functionName: gf_bifs_dec_qp_set
    functionSourceFile: /src/gpac/src/bifs/unquantize.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_assert
    - gf_list_insert
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_dec_qp_set(GF_BifsDecoder *codec, GF_Node *qp)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/unquantize.c:76,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/unquantize.c:81,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/unquantize.c:82,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/unquantize.c:83,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - codec
    - ActivatePrev
    argTypes:
    - GF_BifsDecoder*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 88
    functionName: gf_bifs_dec_qp_remove
    functionSourceFile: /src/gpac/src/bifs/unquantize.c
    functionUses: 2
    functionsReached:
    - gf_node_unregister
    - gf_list_count
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_dec_qp_remove(GF_BifsDecoder *codec, Bool ActivatePrev)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:101,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:104,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:105,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:106,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:110,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:111,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/bifs/unquantize.c:118,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 119
    functionName: gf_bifs_dec_mantissa_float
    functionSourceFile: /src/gpac/src/bifs/unquantize.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_bs_read_int
    linkageType: ''
    returnType: Fixed
    signature: Fixed gf_bifs_dec_mantissa_float(GF_BifsDecoder *codec, GF_BitStream
      *bs)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: MAX
      Src: /src/gpac/src/bifs/unquantize.c:129,1
    - Dst: MAX
      Src: /src/gpac/src/bifs/unquantize.c:130,1
    - Dst: MAX
      Src: /src/gpac/src/bifs/unquantize.c:131,1
    - Dst: MIN
      Src: /src/gpac/src/bifs/unquantize.c:132,1
    - Dst: MIN
      Src: /src/gpac/src/bifs/unquantize.c:133,1
    - Dst: MIN
      Src: /src/gpac/src/bifs/unquantize.c:134,1
    - Dst: MAX
      Src: /src/gpac/src/bifs/unquantize.c:139,1
    - Dst: MAX
      Src: /src/gpac/src/bifs/unquantize.c:140,1
    - Dst: MIN
      Src: /src/gpac/src/bifs/unquantize.c:141,1
    - Dst: MIN
      Src: /src/gpac/src/bifs/unquantize.c:142,1
    - Dst: MAX
      Src: /src/gpac/src/bifs/unquantize.c:147,1
    - Dst: MIN
      Src: /src/gpac/src/bifs/unquantize.c:148,1
    - Dst: MAX
      Src: /src/gpac/src/bifs/unquantize.c:153,1
    - Dst: MIN
      Src: /src/gpac/src/bifs/unquantize.c:154,1
    - Dst: MAX
      Src: /src/gpac/src/bifs/unquantize.c:159,1
    - Dst: MIN
      Src: /src/gpac/src/bifs/unquantize.c:160,1
    - Dst: MAX
      Src: /src/gpac/src/bifs/unquantize.c:165,1
    - Dst: MIN
      Src: /src/gpac/src/bifs/unquantize.c:166,1
    - Dst: MAX
      Src: /src/gpac/src/bifs/unquantize.c:171,1
    - Dst: MIN
      Src: /src/gpac/src/bifs/unquantize.c:172,1
    - Dst: MAX
      Src: /src/gpac/src/bifs/unquantize.c:177,1
    - Dst: MAX
      Src: /src/gpac/src/bifs/unquantize.c:178,1
    - Dst: MAX
      Src: /src/gpac/src/bifs/unquantize.c:179,1
    - Dst: MIN
      Src: /src/gpac/src/bifs/unquantize.c:180,1
    - Dst: MIN
      Src: /src/gpac/src/bifs/unquantize.c:181,1
    - Dst: MIN
      Src: /src/gpac/src/bifs/unquantize.c:182,1
    - Dst: MAX
      Src: /src/gpac/src/bifs/unquantize.c:199,1
    - Dst: MIN
      Src: /src/gpac/src/bifs/unquantize.c:200,1
    - Dst: MAX
      Src: /src/gpac/src/bifs/unquantize.c:205,1
    - Dst: MIN
      Src: /src/gpac/src/bifs/unquantize.c:206,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 106
    argCount: 5
    argNames:
    - qp
    - q_type
    - NbBits
    - b_min
    - b_max
    argTypes:
    - M_QuantizationParameter*
    - u32
    - u32*
    - SFVec3f*
    - SFVec3f*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 222
    functionName: Q_IsTypeOn
    functionSourceFile: /src/gpac/src/bifs/unquantize.c
    functionUses: 2
    functionsReached:
    - MAX
    - MIN
    linkageType: ''
    returnType: Bool
    signature: Bool Q_IsTypeOn(M_QuantizationParameter *qp, u32 q_type, u32 *NbBits,
      SFVec3f *b_min, SFVec3f *b_max)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_muldiv
      Src: /src/gpac/src/bifs/unquantize.c:230,1
    - Dst: INT2FIX
      Src: /src/gpac/src/bifs/unquantize.c:230,1
    - Dst: INT2FIX
      Src: /src/gpac/src/bifs/unquantize.c:230,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - Min
    - Max
    - NbBits
    - value
    argTypes:
    - Fixed
    - Fixed
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 231
    functionName: Q_InverseQuantize
    functionSourceFile: /src/gpac/src/bifs/unquantize.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - gf_muldiv
    linkageType: ''
    returnType: Fixed
    signature: Fixed Q_InverseQuantize(Fixed Min, Fixed Max, u32 NbBits, u32 value)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: Q_InverseQuantize
      Src: /src/gpac/src/bifs/unquantize.c:240,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:240,1
    - Dst: Q_InverseQuantize
      Src: /src/gpac/src/bifs/unquantize.c:243,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:243,1
    - Dst: Q_InverseQuantize
      Src: /src/gpac/src/bifs/unquantize.c:244,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:244,1
    - Dst: Q_InverseQuantize
      Src: /src/gpac/src/bifs/unquantize.c:247,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:247,1
    - Dst: Q_InverseQuantize
      Src: /src/gpac/src/bifs/unquantize.c:248,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:248,1
    - Dst: Q_InverseQuantize
      Src: /src/gpac/src/bifs/unquantize.c:249,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:249,1
    - Dst: Q_InverseQuantize
      Src: /src/gpac/src/bifs/unquantize.c:252,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:252,1
    - Dst: Q_InverseQuantize
      Src: /src/gpac/src/bifs/unquantize.c:253,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:253,1
    - Dst: Q_InverseQuantize
      Src: /src/gpac/src/bifs/unquantize.c:254,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:254,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 7
    argNames:
    - codec
    - bs
    - FieldType
    - BMin
    - BMax
    - NbBits
    - field_ptr
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - u32
    - SFVec3f
    - SFVec3f
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 234
    functionDepth: 2
    functionLinenumber: 234
    functionLinenumberEnd: 262
    functionName: Q_DecFloat
    functionSourceFile: /src/gpac/src/bifs/unquantize.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - Q_InverseQuantize
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Q_DecFloat(GF_BifsDecoder *codec, GF_BitStream *bs, u32 FieldType,
      SFVec3f BMin, SFVec3f BMax, u32 NbBits, void *field_ptr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:272,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 6
    argNames:
    - codec
    - bs
    - QType
    - b_min
    - NbBits
    - field_ptr
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - u32
    - SFInt32
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 277
    functionName: Q_DecInt
    functionSourceFile: /src/gpac/src/bifs/unquantize.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Q_DecInt(GF_BifsDecoder *codec, GF_BitStream *bs, u32 QType,
      SFInt32 b_min, u32 NbBits, void *field_ptr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:292,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:294,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:298,1
    - Dst: Q_InverseQuantize
      Src: /src/gpac/src/bifs/unquantize.c:300,1
    - Dst: gf_tan
      Src: /src/gpac/src/bifs/unquantize.c:304,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/bifs/unquantize.c:304,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/bifs/unquantize.c:305,1
    - Dst: gf_divfix
      Src: /src/gpac/src/bifs/unquantize.c:307,1
    - Dst: INT2FIX
      Src: /src/gpac/src/bifs/unquantize.c:307,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/bifs/unquantize.c:307,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/bifs/unquantize.c:311,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 5
    argNames:
    - codec
    - bs
    - NbBits
    - NbComp
    - m_ft
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - u32
    - u32
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 281
    functionDepth: 2
    functionLinenumber: 281
    functionLinenumberEnd: 314
    functionName: Q_DecCoordOnUnitSphere
    functionSourceFile: /src/gpac/src/bifs/unquantize.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - gf_tan
    - gf_divfix
    - gf_bs_read_int
    - Q_InverseQuantize
    - gf_mulfix
    - gf_sqrt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Q_DecCoordOnUnitSphere(GF_BifsDecoder *codec, GF_BitStream *bs,
      u32 NbBits, u32 NbComp, Fixed *m_ft)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Q_DecCoordOnUnitSphere
      Src: /src/gpac/src/bifs/unquantize.c:323,1
    - Dst: gf_acos
      Src: /src/gpac/src/bifs/unquantize.c:326,1
    - Dst: gf_sin
      Src: /src/gpac/src/bifs/unquantize.c:327,1
    - Dst: ABS
      Src: /src/gpac/src/bifs/unquantize.c:329,1
    - Dst: gf_divfix
      Src: /src/gpac/src/bifs/unquantize.c:333,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 4
    argNames:
    - codec
    - bs
    - NbBits
    - field_ptr
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 317
    functionDepth: 3
    functionLinenumber: 317
    functionLinenumberEnd: 340
    functionName: Q_DecRotation
    functionSourceFile: /src/gpac/src/bifs/unquantize.c
    functionUses: 0
    functionsReached:
    - gf_sin
    - ABS
    - gf_divfix
    - gf_acos
    - Q_DecCoordOnUnitSphere
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Q_DecRotation(GF_BifsDecoder *codec, GF_BitStream *bs, u32 NbBits,
      void *field_ptr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Q_DecCoordOnUnitSphere
      Src: /src/gpac/src/bifs/unquantize.c:348,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/bifs/unquantize.c:353,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - codec
    - bs
    - NbBits
    - field_ptr
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 343
    functionDepth: 3
    functionLinenumber: 343
    functionLinenumberEnd: 356
    functionName: Q_DecNormal
    functionSourceFile: /src/gpac/src/bifs/unquantize.c
    functionUses: 0
    functionsReached:
    - gf_vec_norm
    - Q_DecCoordOnUnitSphere
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Q_DecNormal(GF_BifsDecoder *codec, GF_BitStream *bs, u32 NbBits,
      void *field_ptr)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: gf_bifs_get_aq_info
      Src: /src/gpac/src/bifs/unquantize.c:384,1
    - Dst: gf_bifs_dec_qp14_get_bits
      Src: /src/gpac/src/bifs/unquantize.c:389,1
    - Dst: Q_IsTypeOn
      Src: /src/gpac/src/bifs/unquantize.c:398,1
    - Dst: Q_DecFloat
      Src: /src/gpac/src/bifs/unquantize.c:413,1
    - Dst: Q_DecInt
      Src: /src/gpac/src/bifs/unquantize.c:418,1
    - Dst: Q_DecNormal
      Src: /src/gpac/src/bifs/unquantize.c:424,1
    - Dst: Q_DecRotation
      Src: /src/gpac/src/bifs/unquantize.c:429,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 60
    argCount: 4
    argNames:
    - codec
    - bs
    - node
    - field
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 358
    functionDepth: 4
    functionLinenumber: 358
    functionLinenumberEnd: 437
    functionName: gf_bifs_dec_unquant_field
    functionSourceFile: /src/gpac/src/bifs/unquantize.c
    functionUses: 0
    functionsReached:
    - Q_DecRotation
    - gf_bifs_dec_qp14_get_bits
    - gf_bifs_get_aq_info
    - Q_DecInt
    - Q_DecFloat
    - Q_DecNormal
    - Q_IsTypeOn
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_dec_unquant_field(GF_BifsDecoder *codec, GF_BitStream
      *bs, GF_Node *node, GF_FieldInfo *field)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/field_decode.c:39,1
    - Dst: Conditional_BufferReplaced
      Src: /src/gpac/src/bifs/field_decode.c:41,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - codec
    - node
    argTypes:
    - GF_BifsDecoder*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 44
    functionName: SFCommandBufferChanged
    functionSourceFile: /src/gpac/src/bifs/field_decode.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - Conditional_BufferReplaced
    linkageType: ''
    returnType: void
    signature: void SFCommandBufferChanged(GF_BifsDecoder * codec, GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - codec
    - time
    argTypes:
    - GF_BifsDecoder*
    - Double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionName: BD_OffsetSFTime
    functionSourceFile: /src/gpac/src/bifs/field_decode.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BD_OffsetSFTime(GF_BifsDecoder * codec, Double *time)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/field_decode.c:57,1
    - Dst: stricmp
      Src: /src/gpac/src/bifs/field_decode.c:58,1
    - Dst: stricmp
      Src: /src/gpac/src/bifs/field_decode.c:58,1
    - Dst: BD_OffsetSFTime
      Src: /src/gpac/src/bifs/field_decode.c:59,1
    - Dst: gf_sg_proto_field_is_sftime_offset
      Src: /src/gpac/src/bifs/field_decode.c:60,1
    - Dst: BD_OffsetSFTime
      Src: /src/gpac/src/bifs/field_decode.c:61,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 3
    argNames:
    - codec
    - node
    - inf
    argTypes:
    - GF_BifsDecoder*
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 63
    functionName: BD_CheckSFTimeOffset
    functionSourceFile: /src/gpac/src/bifs/field_decode.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_sg_proto_field_is_sftime_offset
    - BD_OffsetSFTime
    - stricmp
    linkageType: ''
    returnType: void
    signature: void BD_CheckSFTimeOffset(GF_BifsDecoder *codec, GF_Node *node, GF_FieldInfo
      *inf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bifs_dec_mantissa_float
      Src: /src/gpac/src/bifs/field_decode.c:69,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/bifs/field_decode.c:71,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/bifs/field_decode.c:71,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 66
    functionDepth: 2
    functionLinenumber: 66
    functionLinenumberEnd: 72
    functionName: BD_ReadSFFloat
    functionSourceFile: /src/gpac/src/bifs/field_decode.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_bs_read_float
    - gf_bifs_dec_mantissa_float
    linkageType: ''
    returnType: Fixed
    signature: Fixed BD_ReadSFFloat(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 47
    BranchProfiles: []
    Callsites:
    - Dst: gf_bifs_dec_unquant_field
      Src: /src/gpac/src/bifs/field_decode.c:84,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:90,1
    - Dst: BD_ReadSFFloat
      Src: /src/gpac/src/bifs/field_decode.c:93,1
    - Dst: BD_ReadSFFloat
      Src: /src/gpac/src/bifs/field_decode.c:94,1
    - Dst: BD_ReadSFFloat
      Src: /src/gpac/src/bifs/field_decode.c:95,1
    - Dst: BD_ReadSFFloat
      Src: /src/gpac/src/bifs/field_decode.c:98,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:101,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/bifs/field_decode.c:104,1
    - Dst: BD_CheckSFTimeOffset
      Src: /src/gpac/src/bifs/field_decode.c:105,1
    - Dst: BD_ReadSFFloat
      Src: /src/gpac/src/bifs/field_decode.c:108,1
    - Dst: BD_ReadSFFloat
      Src: /src/gpac/src/bifs/field_decode.c:109,1
    - Dst: BD_ReadSFFloat
      Src: /src/gpac/src/bifs/field_decode.c:112,1
    - Dst: BD_ReadSFFloat
      Src: /src/gpac/src/bifs/field_decode.c:113,1
    - Dst: BD_ReadSFFloat
      Src: /src/gpac/src/bifs/field_decode.c:114,1
    - Dst: BD_ReadSFFloat
      Src: /src/gpac/src/bifs/field_decode.c:117,1
    - Dst: BD_ReadSFFloat
      Src: /src/gpac/src/bifs/field_decode.c:118,1
    - Dst: BD_ReadSFFloat
      Src: /src/gpac/src/bifs/field_decode.c:119,1
    - Dst: BD_ReadSFFloat
      Src: /src/gpac/src/bifs/field_decode.c:120,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:123,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:124,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/bifs/field_decode.c:125,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/field_decode.c:130,1
    - Dst: gf_malloc
      Src: /src/gpac/src/bifs/field_decode.c:131,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/bifs/field_decode.c:132,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/field_decode.c:135,1
    - Dst: gf_malloc
      Src: /src/gpac/src/bifs/field_decode.c:137,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/bifs/field_decode.c:138,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/field_decode.c:140,1
    - Dst: gf_malloc
      Src: /src/gpac/src/bifs/field_decode.c:141,1
    - Dst: memset
      Src: /src/gpac/src/bifs/field_decode.c:142,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:144,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:151,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/field_decode.c:153,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:155,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:159,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:160,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/bifs/field_decode.c:161,1
    - Dst: gf_malloc
      Src: /src/gpac/src/bifs/field_decode.c:164,1
    - Dst: memset
      Src: /src/gpac/src/bifs/field_decode.c:165,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:166,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/field_decode.c:168,1
    - Dst: strlen
      Src: /src/gpac/src/bifs/field_decode.c:170,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/field_decode.c:173,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/field_decode.c:181,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:184,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:185,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:186,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/bifs/field_decode.c:191,1
    - Dst: gf_malloc
      Src: /src/gpac/src/bifs/field_decode.c:195,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:198,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/field_decode.c:206,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/field_decode.c:210,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/field_decode.c:211,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/field_decode.c:212,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/bifs/field_decode.c:213,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:216,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:217,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/bifs/field_decode.c:218,1
    - Dst: gf_malloc
      Src: /src/gpac/src/bifs/field_decode.c:222,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:225,1
    - Dst: SFCommandBufferChanged
      Src: /src/gpac/src/bifs/field_decode.c:230,1
    - Dst: gf_malloc
      Src: /src/gpac/src/bifs/field_decode.c:237,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/field_decode.c:239,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/field_decode.c:241,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/field_decode.c:251,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/field_decode.c:253,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/field_decode.c:255,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/field_decode.c:258,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/field_decode.c:259,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/field_decode.c:262,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/field_decode.c:267,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/field_decode.c:269,1
    - Dst: SFScript_Parse
      Src: /src/gpac/src/bifs/field_decode.c:277,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:285,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/field_decode.c:286,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/field_decode.c:290,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/field_decode.c:290,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:291,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/field_decode.c:292,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 196
    argCount: 5
    argNames:
    - codec
    - bs
    - node
    - field
    - is_mem_com
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_Node*
    - GF_FieldInfo*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 75
    functionDepth: 5
    functionLinenumber: 75
    functionLinenumberEnd: 300
    functionName: gf_bifs_dec_sf_field
    functionSourceFile: /src/gpac/src/bifs/field_decode.c
    functionUses: 9
    functionsReached:
    - gf_free
    - gf_bs_read_data
    - gf_node_get_num_fields_in_mode
    - gf_bifs_dec_unquant_field
    - gf_bs_read_double
    - gf_list_count
    - memset
    - gf_node_unregister
    - gf_bs_available
    - gf_list_get
    - gf_list_add
    - gf_bifs_get_field_index
    - BD_CheckSFTimeOffset
    - gf_sg_find_node
    - gf_get_bit_size
    - SFScript_Parse
    - SFCommandBufferChanged
    - strlen
    - gf_malloc
    - gf_bifs_dec_node
    - BD_ReadSFFloat
    - gf_bs_read_int
    - gf_sg_command_del
    - gf_node_register
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_dec_sf_field(GF_BifsDecoder * codec, GF_BitStream *bs,
      GF_Node *node, GF_FieldInfo *field, Bool is_mem_com)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/bifs/field_decode.c:312,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/field_decode.c:314,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:322,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/bifs/field_decode.c:325,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/field_decode.c:327,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/field_decode.c:330,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/field_decode.c:333,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/field_decode.c:339,1
    - Dst: gf_bifs_dec_qp_remove
      Src: /src/gpac/src/bifs/field_decode.c:342,1
    - Dst: gf_bifs_dec_qp_set
      Src: /src/gpac/src/bifs/field_decode.c:343,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/bifs/field_decode.c:348,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/field_decode.c:350,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/field_decode.c:351,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/bifs/field_decode.c:355,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/bifs/field_decode.c:361,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:370,1
    - Dst: gf_bifs_dec_qp_remove
      Src: /src/gpac/src/bifs/field_decode.c:379,1
    - Dst: gf_bifs_dec_qp_remove
      Src: /src/gpac/src/bifs/field_decode.c:390,1
    - Dst: gf_bifs_dec_qp14_set_length
      Src: /src/gpac/src/bifs/field_decode.c:394,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 80
    argCount: 5
    argNames:
    - codec
    - bs
    - node
    - field
    - is_mem_com
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_Node*
    - GF_FieldInfo*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 302
    functionDepth: 6
    functionLinenumber: 302
    functionLinenumberEnd: 396
    functionName: BD_DecMFFieldList
    functionSourceFile: /src/gpac/src/bifs/field_decode.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_bifs_dec_node
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_mf_append
    - gf_bifs_dec_qp_set
    - gf_node_list_add_child_last
    - memset
    - gf_bifs_dec_qp_remove
    - gf_bifs_dec_qp14_set_length
    - gf_bs_read_int
    - gf_bifs_dec_sf_field
    - gf_node_unregister
    - gf_node_register
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecMFFieldList(GF_BifsDecoder * codec, GF_BitStream *bs,
      GF_Node *node, GF_FieldInfo *field, Bool is_mem_com)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/bifs/field_decode.c:407,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/field_decode.c:409,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:416,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:417,1
    - Dst: gf_bifs_dec_qp14_set_length
      Src: /src/gpac/src/bifs/field_decode.c:422,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/bifs/field_decode.c:426,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/bifs/field_decode.c:430,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/field_decode.c:432,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/field_decode.c:441,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/field_decode.c:443,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/field_decode.c:448,1
    - Dst: gf_bifs_dec_qp_remove
      Src: /src/gpac/src/bifs/field_decode.c:453,1
    - Dst: gf_bifs_dec_qp_set
      Src: /src/gpac/src/bifs/field_decode.c:455,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/bifs/field_decode.c:460,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/field_decode.c:463,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/field_decode.c:464,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/bifs/field_decode.c:467,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/bifs/field_decode.c:474,1
    - Dst: gf_bifs_dec_qp_remove
      Src: /src/gpac/src/bifs/field_decode.c:492,1
    - Dst: gf_bifs_dec_qp_remove
      Src: /src/gpac/src/bifs/field_decode.c:498,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 86
    argCount: 5
    argNames:
    - codec
    - bs
    - node
    - field
    - is_mem_com
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_Node*
    - GF_FieldInfo*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 398
    functionDepth: 6
    functionLinenumber: 398
    functionLinenumberEnd: 500
    functionName: BD_DecMFFieldVec
    functionSourceFile: /src/gpac/src/bifs/field_decode.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_bifs_dec_node
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_mf_get_item
    - gf_bifs_dec_qp_set
    - gf_bifs_dec_qp14_set_length
    - memset
    - gf_bifs_dec_qp_remove
    - gf_node_list_add_child_last
    - gf_bs_read_int
    - gf_bifs_dec_sf_field
    - gf_node_unregister
    - gf_node_register
    - gf_sg_vrml_mf_alloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecMFFieldVec(GF_BifsDecoder * codec, GF_BitStream *bs, GF_Node
      *node, GF_FieldInfo *field, Bool is_mem_com)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_changed
      Src: /src/gpac/src/bifs/field_decode.c:507,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/bifs/field_decode.c:509,1
    - Dst: GF_FieldInfo*::on_event_in
      Src: /src/gpac/src/bifs/field_decode.c:512,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/field_decode.c:513,1
    - Dst: gf_sg_script_event_in
      Src: /src/gpac/src/bifs/field_decode.c:514,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 503
    functionDepth: 1
    functionLinenumber: 503
    functionLinenumberEnd: 517
    functionName: gf_bifs_check_field_change
    functionSourceFile: /src/gpac/src/bifs/field_decode.c
    functionUses: 7
    functionsReached:
    - gf_node_get_tag
    - gf_node_event_out
    - gf_sg_script_event_in
    - GF_FieldInfo*::on_event_in
    - gf_node_changed
    linkageType: ''
    returnType: void
    signature: void gf_bifs_check_field_change(GF_Node *node, GF_FieldInfo *field)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/field_decode.c:529,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/field_decode.c:530,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/bifs/field_decode.c:536,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/bifs/field_decode.c:540,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:547,1
    - Dst: gf_bifs_dec_pred_mf_field
      Src: /src/gpac/src/bifs/field_decode.c:550,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/field_decode.c:552,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:559,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/bifs/field_decode.c:563,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:567,1
    - Dst: BD_DecMFFieldList
      Src: /src/gpac/src/bifs/field_decode.c:569,1
    - Dst: BD_DecMFFieldVec
      Src: /src/gpac/src/bifs/field_decode.c:571,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 44
    argCount: 5
    argNames:
    - codec
    - bs
    - node
    - field
    - is_mem_com
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_Node*
    - GF_FieldInfo*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 519
    functionDepth: 7
    functionLinenumber: 519
    functionLinenumberEnd: 577
    functionName: gf_bifs_dec_field
    functionSourceFile: /src/gpac/src/bifs/field_decode.c
    functionUses: 5
    functionsReached:
    - GF_LOG
    - BD_DecMFFieldList
    - gf_bifs_dec_pred_mf_field
    - BD_DecMFFieldVec
    - gf_node_unregister_children
    - gf_sg_vrml_is_sf_field
    - gf_bs_read_int
    - gf_bifs_dec_sf_field
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_dec_field(GF_BifsDecoder * codec, GF_BitStream *bs,
      GF_Node *node, GF_FieldInfo *field, Bool is_mem_com)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_proto_instance_set_ised
      Src: /src/gpac/src/bifs/field_decode.c:584,1
    - Dst: gf_sg_proto_field_set_ised
      Src: /src/gpac/src/bifs/field_decode.c:588,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - codec
    - protofield
    - n
    - nodefield
    argTypes:
    - GF_BifsDecoder*
    - u32
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 580
    functionDepth: 1
    functionLinenumber: 580
    functionLinenumberEnd: 590
    functionName: BD_SetProtoISed
    functionSourceFile: /src/gpac/src/bifs/field_decode.c
    functionUses: 0
    functionsReached:
    - gf_sg_proto_instance_set_ised
    - gf_sg_proto_field_set_ised
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_SetProtoISed(GF_BifsDecoder * codec, u32 protofield, GF_Node
      *n, u32 nodefield)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/field_decode.c:601,1
    - Dst: gf_sg_proto_get_field_count
      Src: /src/gpac/src/bifs/field_decode.c:601,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/field_decode.c:602,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/field_decode.c:602,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/field_decode.c:604,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/field_decode.c:604,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:606,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:610,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:613,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:615,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/field_decode.c:616,1
    - Dst: BD_SetProtoISed
      Src: /src/gpac/src/bifs/field_decode.c:618,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:620,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:626,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/field_decode.c:627,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/field_decode.c:629,1
    - Dst: gf_bifs_dec_field
      Src: /src/gpac/src/bifs/field_decode.c:631,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:633,1
    - Dst: gf_sg_proto_mark_field_loaded
      Src: /src/gpac/src/bifs/field_decode.c:635,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 4
    argNames:
    - codec
    - bs
    - node
    - is_proto
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 638
      start: 592
    functionDepth: 8
    functionLinenumber: 592
    functionLinenumberEnd: 638
    functionName: gf_bifs_dec_node_list
    functionSourceFile: /src/gpac/src/bifs/field_decode.c
    functionUses: 1
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_dec_field
    - gf_get_bit_size
    - gf_bifs_get_field_index
    - gf_node_get_field
    - gf_bs_read_int
    - BD_SetProtoISed
    - gf_sg_proto_get_field_count
    - gf_sg_proto_mark_field_loaded
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_dec_node_list(GF_BifsDecoder * codec, GF_BitStream *bs,
      GF_Node *node, Bool is_proto)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/field_decode.c:648,1
    - Dst: gf_sg_proto_get_field_count
      Src: /src/gpac/src/bifs/field_decode.c:649,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/field_decode.c:650,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:653,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:655,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:659,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/field_decode.c:660,1
    - Dst: BD_SetProtoISed
      Src: /src/gpac/src/bifs/field_decode.c:662,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/field_decode.c:667,1
    - Dst: gf_bifs_dec_field
      Src: /src/gpac/src/bifs/field_decode.c:669,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/field_decode.c:676,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:678,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/field_decode.c:680,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/field_decode.c:681,1
    - Dst: gf_bifs_dec_field
      Src: /src/gpac/src/bifs/field_decode.c:683,1
    - Dst: gf_sg_proto_mark_field_loaded
      Src: /src/gpac/src/bifs/field_decode.c:686,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 43
    argCount: 4
    argNames:
    - codec
    - bs
    - node
    - is_proto
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 690
      start: 640
    functionDepth: 8
    functionLinenumber: 640
    functionLinenumberEnd: 690
    functionName: gf_bifs_dec_node_mask
    functionSourceFile: /src/gpac/src/bifs/field_decode.c
    functionUses: 1
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_dec_field
    - gf_get_bit_size
    - gf_bifs_get_field_index
    - gf_node_get_field
    - gf_bs_read_int
    - BD_SetProtoISed
    - gf_sg_proto_get_field_count
    - gf_sg_proto_mark_field_loaded
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_dec_node_mask(GF_BifsDecoder * codec, GF_BitStream *bs,
      GF_Node *node, Bool is_proto)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/field_decode.c:695,1
    - Dst: BD_OffsetSFTime
      Src: /src/gpac/src/bifs/field_decode.c:697,1
    - Dst: BD_OffsetSFTime
      Src: /src/gpac/src/bifs/field_decode.c:698,1
    - Dst: BD_OffsetSFTime
      Src: /src/gpac/src/bifs/field_decode.c:701,1
    - Dst: BD_OffsetSFTime
      Src: /src/gpac/src/bifs/field_decode.c:702,1
    - Dst: BD_OffsetSFTime
      Src: /src/gpac/src/bifs/field_decode.c:705,1
    - Dst: BD_OffsetSFTime
      Src: /src/gpac/src/bifs/field_decode.c:706,1
    - Dst: BD_OffsetSFTime
      Src: /src/gpac/src/bifs/field_decode.c:709,1
    - Dst: BD_OffsetSFTime
      Src: /src/gpac/src/bifs/field_decode.c:710,1
    - Dst: BD_OffsetSFTime
      Src: /src/gpac/src/bifs/field_decode.c:713,1
    - Dst: BD_OffsetSFTime
      Src: /src/gpac/src/bifs/field_decode.c:714,1
    - Dst: BD_OffsetSFTime
      Src: /src/gpac/src/bifs/field_decode.c:717,1
    - Dst: BD_OffsetSFTime
      Src: /src/gpac/src/bifs/field_decode.c:718,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/field_decode.c:724,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/field_decode.c:726,1
    - Dst: BD_CheckSFTimeOffset
      Src: /src/gpac/src/bifs/field_decode.c:728,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 2
    argNames:
    - codec
    - node
    argTypes:
    - GF_BifsDecoder*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 693
    functionDepth: 2
    functionLinenumber: 693
    functionLinenumberEnd: 733
    functionName: UpdateTimeNode
    functionSourceFile: /src/gpac/src/bifs/field_decode.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_node_get_num_fields_in_mode
    - BD_CheckSFTimeOffset
    - gf_node_get_field
    - BD_OffsetSFTime
    linkageType: ''
    returnType: void
    signature: void UpdateTimeNode(GF_BifsDecoder * codec, GF_Node *node)
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:759,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:760,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/field_decode.c:765,1
    - Dst: gf_node_in_table
      Src: /src/gpac/src/bifs/field_decode.c:768,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/field_decode.c:769,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/bifs/field_decode.c:769,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/field_decode.c:778,1
    - Dst: gf_bifs_dec_qp14_enter
      Src: /src/gpac/src/bifs/field_decode.c:782,1
    - Dst: gf_bifs_dec_qp14_set_length
      Src: /src/gpac/src/bifs/field_decode.c:783,1
    - Dst: gf_bifs_dec_qp14_enter
      Src: /src/gpac/src/bifs/field_decode.c:784,1
    - Dst: gf_bifs_dec_qp14_enter
      Src: /src/gpac/src/bifs/field_decode.c:790,1
    - Dst: gf_bifs_dec_qp14_set_length
      Src: /src/gpac/src/bifs/field_decode.c:791,1
    - Dst: gf_bifs_dec_qp14_enter
      Src: /src/gpac/src/bifs/field_decode.c:792,1
    - Dst: gf_bifs_get_ndt_bits
      Src: /src/gpac/src/bifs/field_decode.c:808,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/bifs/field_decode.c:810,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:815,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:827,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/bifs/field_decode.c:829,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/bifs/field_decode.c:832,1
    - Dst: gf_bifs_ndt_get_node_type
      Src: /src/gpac/src/bifs/field_decode.c:839,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:844,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:845,1
    - Dst: gf_bifs_dec_name
      Src: /src/gpac/src/bifs/field_decode.c:846,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:859,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:864,1
    - Dst: gf_bifs_dec_name
      Src: /src/gpac/src/bifs/field_decode.c:865,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/field_decode.c:878,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/field_decode.c:881,1
    - Dst: gf_node_get_proto
      Src: /src/gpac/src/bifs/field_decode.c:881,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/field_decode.c:887,1
    - Dst: gf_sg_proto_create_instance
      Src: /src/gpac/src/bifs/field_decode.c:901,1
    - Dst: gf_node_new
      Src: /src/gpac/src/bifs/field_decode.c:905,1
    - Dst: UpdateTimeNode
      Src: /src/gpac/src/bifs/field_decode.c:914,1
    - Dst: gf_bifs_dec_qp14_enter
      Src: /src/gpac/src/bifs/field_decode.c:927,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/field_decode.c:934,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:937,1
    - Dst: gf_bifs_dec_node_mask
      Src: /src/gpac/src/bifs/field_decode.c:938,1
    - Dst: gf_bifs_dec_node_list
      Src: /src/gpac/src/bifs/field_decode.c:940,1
    - Dst: gf_bifs_dec_qp14_reset
      Src: /src/gpac/src/bifs/field_decode.c:946,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/field_decode.c:951,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/field_decode.c:953,1
    - Dst: strlen
      Src: /src/gpac/src/bifs/field_decode.c:962,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/bifs/field_decode.c:963,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/bifs/field_decode.c:965,1
    - Dst: gf_node_init
      Src: /src/gpac/src/bifs/field_decode.c:970,1
    - Dst: gf_bifs_dec_qp14_enter
      Src: /src/gpac/src/bifs/field_decode.c:975,1
    - Dst: gf_sg_script_load
      Src: /src/gpac/src/bifs/field_decode.c:980,1
    - Dst: SetupConditional
      Src: /src/gpac/src/bifs/field_decode.c:985,1
    - Dst: gf_sg_proto_load_code
      Src: /src/gpac/src/bifs/field_decode.c:993,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 176
    argCount: 3
    argNames:
    - codec
    - bs
    - NDT_Tag
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 998
      start: 735
    functionDepth: 9
    functionLinenumber: 735
    functionLinenumberEnd: 998
    functionName: gf_bifs_dec_node
    functionSourceFile: /src/gpac/src/bifs/field_decode.c
    functionUses: 18
    functionsReached:
    - gf_node_get_tag
    - gf_bifs_dec_qp14_reset
    - gf_node_get_class_name
    - SetupConditional
    - UpdateTimeNode
    - gf_sg_proto_load_code
    - gf_sg_find_proto
    - gf_bs_available
    - gf_node_unregister
    - gf_node_in_table
    - gf_node_init
    - gf_sg_proto_create_instance
    - gf_node_set_id
    - gf_bifs_dec_node_list
    - gf_sg_find_node
    - GF_LOG
    - gf_bifs_dec_name
    - gf_bifs_ndt_get_node_type
    - gf_bifs_get_ndt_bits
    - gf_bifs_dec_qp14_set_length
    - gf_sg_script_load
    - gf_bifs_dec_qp14_enter
    - gf_node_new
    - strlen
    - gf_bifs_dec_node_mask
    - gf_bs_read_int
    - gf_node_get_proto
    - gf_node_register
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *gf_bifs_dec_node(GF_BifsDecoder * codec, GF_BitStream *bs,
      u32 NDT_Tag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/bifs/arith_decoder.c:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 90
    functionName: gp_bifs_aa_model_new
    functionSourceFile: /src/gpac/src/bifs/arith_decoder.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_AAModel
    signature: GF_AAModel *gp_bifs_aa_model_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/bifs/arith_decoder.c:94,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/arith_decoder.c:95,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/arith_decoder.c:96,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - model
    argTypes:
    - GF_AAModel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: gp_bifs_aa_model_del
    functionSourceFile: /src/gpac/src/bifs/arith_decoder.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gp_bifs_aa_model_del(GF_AAModel *model)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/bifs/arith_decoder.c:103,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/arith_decoder.c:104,1
    - Dst: gf_malloc
      Src: /src/gpac/src/bifs/arith_decoder.c:105,1
    - Dst: gf_malloc
      Src: /src/gpac/src/bifs/arith_decoder.c:106,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - model
    - nbBits
    argTypes:
    - GF_AAModel*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 113
    functionName: gp_bifs_aa_model_init
    functionSourceFile: /src/gpac/src/bifs/arith_decoder.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void gp_bifs_aa_model_init(GF_AAModel *model, u32 nbBits)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - model
    - symbol
    argTypes:
    - GF_AAModel*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 132
    functionName: UpdateAAModel
    functionSourceFile: /src/gpac/src/bifs/arith_decoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void UpdateAAModel(GF_AAModel *model, s32 symbol)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/bifs/arith_decoder.c:140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 144
    functionName: gp_bifs_aa_dec_new
    functionSourceFile: /src/gpac/src/bifs/arith_decoder.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_AADecoder
    signature: GF_AADecoder *gp_bifs_aa_dec_new(GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/bifs/arith_decoder.c:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dec
    argTypes:
    - GF_AADecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionName: gp_bifs_aa_dec_del
    functionSourceFile: /src/gpac/src/bifs/arith_decoder.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gp_bifs_aa_dec_del(GF_AADecoder *dec)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_bits_available
      Src: /src/gpac/src/bifs/arith_decoder.c:153,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/arith_decoder.c:154,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/arith_decoder.c:163,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 1
    argNames:
    - dec
    argTypes:
    - GF_AADecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 177
    functionName: bit_out_psc_layer
    functionSourceFile: /src/gpac/src/bifs/arith_decoder.c
    functionUses: 0
    functionsReached:
    - gf_bs_bits_available
    - gf_bs_read_int
    linkageType: ''
    returnType: Bool
    signature: Bool bit_out_psc_layer(GF_AADecoder *dec)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_rewind_bits
      Src: /src/gpac/src/bifs/arith_decoder.c:186,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - dec
    argTypes:
    - GF_AADecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 194
    functionName: gp_bifs_aa_dec_resync
    functionSourceFile: /src/gpac/src/bifs/arith_decoder.c
    functionUses: 1
    functionsReached:
    - gf_bs_rewind_bits
    linkageType: ''
    returnType: void
    signature: void gp_bifs_aa_dec_resync(GF_AADecoder *dec)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: bit_out_psc_layer
      Src: /src/gpac/src/bifs/arith_decoder.c:198,1
    - Dst: bit_out_psc_layer
      Src: /src/gpac/src/bifs/arith_decoder.c:200,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - dec
    argTypes:
    - GF_AADecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 196
    functionDepth: 2
    functionLinenumber: 196
    functionLinenumberEnd: 206
    functionName: gp_bifs_aa_dec_flush
    functionSourceFile: /src/gpac/src/bifs/arith_decoder.c
    functionUses: 1
    functionsReached:
    - bit_out_psc_layer
    linkageType: ''
    returnType: void
    signature: void gp_bifs_aa_dec_flush(GF_AADecoder *dec)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_rewind_bits
      Src: /src/gpac/src/bifs/arith_decoder.c:211,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - dec
    argTypes:
    - GF_AADecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 214
    functionName: gp_bifs_aa_dec_resync_bit
    functionSourceFile: /src/gpac/src/bifs/arith_decoder.c
    functionUses: 1
    functionsReached:
    - gf_bs_rewind_bits
    linkageType: ''
    returnType: void
    signature: void gp_bifs_aa_dec_resync_bit(GF_AADecoder *dec)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bit_out_psc_layer
      Src: /src/gpac/src/bifs/arith_decoder.c:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - dec
    argTypes:
    - GF_AADecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 216
    functionDepth: 2
    functionLinenumber: 216
    functionLinenumberEnd: 224
    functionName: gp_bifs_aa_dec_get_bit
    functionSourceFile: /src/gpac/src/bifs/arith_decoder.c
    functionUses: 1
    functionsReached:
    - bit_out_psc_layer
    linkageType: ''
    returnType: s32
    signature: s32 gp_bifs_aa_dec_get_bit(GF_AADecoder *dec)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: bit_out_psc_layer
      Src: /src/gpac/src/bifs/arith_decoder.c:234,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - dec
    argTypes:
    - GF_AADecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 226
    functionDepth: 2
    functionLinenumber: 226
    functionLinenumberEnd: 238
    functionName: gp_bifs_aa_dec_reset
    functionSourceFile: /src/gpac/src/bifs/arith_decoder.c
    functionUses: 1
    functionsReached:
    - bit_out_psc_layer
    linkageType: ''
    returnType: void
    signature: void gp_bifs_aa_dec_reset(GF_AADecoder *dec)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: bit_out_psc_layer
      Src: /src/gpac/src/bifs/arith_decoder.c:271,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 2
    argNames:
    - dec
    - model
    argTypes:
    - GF_AADecoder*
    - GF_AAModel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 241
    functionDepth: 2
    functionLinenumber: 241
    functionLinenumberEnd: 276
    functionName: AADec_Dec
    functionSourceFile: /src/gpac/src/bifs/arith_decoder.c
    functionUses: 0
    functionsReached:
    - bit_out_psc_layer
    linkageType: ''
    returnType: s32
    signature: s32 AADec_Dec(GF_AADecoder *dec, GF_AAModel *model)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AADec_Dec
      Src: /src/gpac/src/bifs/arith_decoder.c:281,1
    - Dst: UpdateAAModel
      Src: /src/gpac/src/bifs/arith_decoder.c:282,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dec
    - model
    argTypes:
    - GF_AADecoder*
    - GF_AAModel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 278
    functionDepth: 3
    functionLinenumber: 278
    functionLinenumberEnd: 284
    functionName: gp_bifs_aa_decode
    functionSourceFile: /src/gpac/src/bifs/arith_decoder.c
    functionUses: 1
    functionsReached:
    - AADec_Dec
    - UpdateAAModel
    linkageType: ''
    returnType: s32
    signature: s32 gp_bifs_aa_decode(GF_AADecoder *dec, GF_AAModel *model)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_route_exists
      Src: /src/gpac/src/scenegraph/vrml_route.c:41,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_route.c:44,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_route.c:53,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_route.c:55,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_route.c:56,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_route.c:60,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_route.c:61,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_route.c:62,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 5
    argNames:
    - sg
    - fromNode
    - fromField
    - toNode
    - toField
    argTypes:
    - GF_SceneGraph*
    - GF_Node*
    - u32
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 64
    functionName: gf_sg_route_new
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 3
    functionsReached:
    - gf_free
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_add
    - gf_sg_route_exists
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sg_route_new(GF_SceneGraph *sg, GF_Node *fromNode, u32
      fromField, GF_Node *toNode, u32 toField)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_route.c:73,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 8
    argCount: 5
    argNames:
    - sg
    - fromNode
    - fromField
    - toNode
    - toField
    argTypes:
    - GF_SceneGraph*
    - GF_Node*
    - u32
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 78
    functionName: gf_sg_route_exists
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_Route
    signature: GF_Route * gf_sg_route_exists(GF_SceneGraph *sg, GF_Node *fromNode,
      u32 fromField, GF_Node *toNode, u32 toField)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/vrml_route.c:86,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/vrml_route.c:89,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_route.c:90,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/vrml_route.c:91,1
    - Dst: GF_Route*::ToField::on_event_in
      Src: /src/gpac/src/scenegraph/vrml_route.c:99,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_route.c:105,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/vrml_route.c:106,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 1
    argNames:
    - r
    argTypes:
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 107
    functionName: gf_sg_route_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_list_add
    - gf_list_del_item
    - GF_Route*::ToField::on_event_in
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_route_del(GF_Route *r)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_route_find
      Src: /src/gpac/src/scenegraph/vrml_route.c:114,1
    - Dst: gf_sg_route_del
      Src: /src/gpac/src/scenegraph/vrml_route.c:116,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - sg
    - routeID
    argTypes:
    - GF_SceneGraph*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 109
    functionDepth: 2
    functionLinenumber: 109
    functionLinenumberEnd: 118
    functionName: gf_sg_route_del_by_id
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 1
    functionsReached:
    - gf_sg_route_find
    - gf_sg_route_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_route_del_by_id(GF_SceneGraph *sg,u32 routeID)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_route.c:122,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_route.c:123,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/vrml_route.c:124,1
    - Dst: gf_sg_route_unqueue
      Src: /src/gpac/src/scenegraph/vrml_route.c:125,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_route.c:126,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_route.c:127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 129
    functionName: gf_sg_destroy_routes
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_sg_route_unqueue
    linkageType: ''
    returnType: void
    signature: void gf_sg_destroy_routes(GF_SceneGraph *sg)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_route.c:143,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - sg
    - r
    argTypes:
    - GF_SceneGraph*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 144
    functionName: gf_sg_route_queue
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void gf_sg_route_queue(GF_SceneGraph *sg, GF_Route *r)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_destroy_routes
      Src: /src/gpac/src/scenegraph/vrml_route.c:155,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_route.c:157,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_route.c:158,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/vrml_route.c:159,1
    - Dst: gf_sg_route_activate
      Src: /src/gpac/src/scenegraph/vrml_route.c:162,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/vrml_route.c:169,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 147
    functionDepth: 2
    functionLinenumber: 147
    functionLinenumberEnd: 173
    functionName: gf_sg_activate_routes
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_sg_route_activate
    - gf_sg_destroy_routes
    - gf_list_count
    - gf_node_changed
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_activate_routes(GF_SceneGraph *sg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/vrml_route.c:180,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - sg
    - r
    argTypes:
    - GF_SceneGraph*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 181
    functionName: gf_sg_route_unqueue
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 1
    functionsReached:
    - gf_list_del_item
    linkageType: ''
    returnType: void
    signature: void gf_sg_route_unqueue(GF_SceneGraph *sg, GF_Route *r)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_route.c:188,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - sg
    - RouteID
    argTypes:
    - GF_SceneGraph*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 192
    functionName: gf_sg_route_find
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 2
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sg_route_find(GF_SceneGraph *sg, u32 RouteID)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_route.c:202,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_route.c:203,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 2
    argNames:
    - sg
    - name
    argTypes:
    - GF_SceneGraph*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 206
    functionName: gf_sg_route_find_by_name
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - strcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sg_route_find_by_name(GF_SceneGraph *sg, char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_route_find
      Src: /src/gpac/src/scenegraph/vrml_route.c:214,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - route
    - ID
    argTypes:
    - GF_Route*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 208
    functionDepth: 2
    functionLinenumber: 208
    functionLinenumberEnd: 218
    functionName: gf_sg_route_set_id
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 2
    functionsReached:
    - gf_sg_route_find
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_route_set_id(GF_Route *route, u32 ID)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - route
    argTypes:
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 224
    functionName: gf_sg_route_get_id
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_sg_route_get_id(GF_Route *route)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_route_find_by_name
      Src: /src/gpac/src/scenegraph/vrml_route.c:232,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_route.c:234,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_route.c:235,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - route
    - name
    argTypes:
    - GF_Route*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 227
    functionDepth: 2
    functionLinenumber: 227
    functionLinenumberEnd: 237
    functionName: gf_sg_route_set_name
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_sg_route_find_by_name
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_route_set_name(GF_Route *route, char *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - route
    argTypes:
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 243
    functionName: gf_sg_route_get_name
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sg_route_get_name(GF_Route *route)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_route.c:247,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_route.c:248,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - r
    argTypes:
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 245
    functionDepth: 1
    functionLinenumber: 245
    functionLinenumberEnd: 258
    functionName: gf_sg_route_setup
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 0
    functionsReached:
    - gf_node_get_field
    linkageType: ''
    returnType: void
    signature: void gf_sg_route_setup(GF_Route *r)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_route.c:271,1
    - Dst: gf_sg_route_queue
      Src: /src/gpac/src/scenegraph/vrml_route.c:275,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 15
    argCount: 2
    argNames:
    - node
    - FieldIndex
    argTypes:
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 261
    functionDepth: 2
    functionLinenumber: 261
    functionLinenumberEnd: 277
    functionName: gf_node_event_out_proto
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_sg_route_queue
    linkageType: ''
    returnType: void
    signature: void gf_node_event_out_proto(GF_Node *node, u32 FieldIndex)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_route.c:284,1
    - Dst: gf_sg_route_setup
      Src: /src/gpac/src/scenegraph/vrml_route.c:286,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/scenegraph/vrml_route.c:303,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_route.c:305,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scenegraph/vrml_route.c:305,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scenegraph/vrml_route.c:305,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_route.c:307,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scenegraph/vrml_route.c:307,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scenegraph/vrml_route.c:307,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_route.c:310,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_route.c:312,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_route.c:314,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_route.c:325,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/vrml_route.c:329,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/vrml_route.c:340,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scenegraph/vrml_route.c:344,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/vrml_route.c:345,1
    - Dst: gf_sg_vrml_field_equal
      Src: /src/gpac/src/scenegraph/vrml_route.c:354,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_route.c:357,1
    - Dst: VRML_FieldCopyCast
      Src: /src/gpac/src/scenegraph/vrml_route.c:362,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/scenegraph/vrml_route.c:373,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_route.c:374,1
    - Dst: GF_Route*::ToField::on_event_in
      Src: /src/gpac/src/scenegraph/vrml_route.c:380,1
    - Dst: gf_sg_script_event_in
      Src: /src/gpac/src/scenegraph/vrml_route.c:388,1
    - Dst: gf_sg_proto_propagate_event
      Src: /src/gpac/src/scenegraph/vrml_route.c:392,1
    - Dst: gf_sg_proto_propagate_event
      Src: /src/gpac/src/scenegraph/vrml_route.c:395,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_route.c:398,1
    - Dst: gf_node_event_out_proto
      Src: /src/gpac/src/scenegraph/vrml_route.c:404,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_route.c:406,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/scenegraph/vrml_route.c:410,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_route.c:411,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 91
    argCount: 1
    argNames:
    - r
    argTypes:
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 279
    functionDepth: 3
    functionLinenumber: 279
    functionLinenumberEnd: 416
    functionName: gf_sg_route_activate
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 1
    functionsReached:
    - gf_assert
    - gf_node_event_out
    - gf_sg_proto_propagate_event
    - gf_node_get_name
    - gf_log_tool_level_on
    - GF_LOG
    - VRML_FieldCopyCast
    - gf_node_event_out_proto
    - GF_Route*::ToField::on_event_in
    - gf_sg_route_setup
    - gf_node_unregister_children
    - gf_node_list_add_child_last
    - gf_sg_vrml_field_copy
    - gf_sg_script_event_in
    - gf_node_unregister
    - gf_sg_vrml_field_equal
    - gf_node_register
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sg_route_activate(GF_Route *r)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_route.c:431,1
    - Dst: gf_sg_route_activate
      Src: /src/gpac/src/scenegraph/vrml_route.c:437,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/vrml_route.c:438,1
    - Dst: gf_sg_route_queue
      Src: /src/gpac/src/scenegraph/vrml_route.c:442,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 18
    argCount: 2
    argNames:
    - node
    - FieldIndex
    argTypes:
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 419
    functionDepth: 4
    functionLinenumber: 419
    functionLinenumberEnd: 445
    functionName: gf_node_event_out
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 4
    functionsReached:
    - gf_sg_route_activate
    - gf_list_enum
    - gf_node_changed
    - gf_sg_route_queue
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_event_out(GF_Node *node, u32 FieldIndex)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_route.c:458,1
    - Dst: gf_sg_route_setup
      Src: /src/gpac/src/scenegraph/vrml_route.c:459,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_route.c:460,1
    - Dst: gf_sg_route_activate
      Src: /src/gpac/src/scenegraph/vrml_route.c:464,1
    - Dst: gf_sg_route_queue
      Src: /src/gpac/src/scenegraph/vrml_route.c:468,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 2
    argNames:
    - node
    - eventName
    argTypes:
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 447
    functionDepth: 4
    functionLinenumber: 447
    functionLinenumberEnd: 471
    functionName: gf_node_event_out_str
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 0
    functionsReached:
    - gf_sg_route_queue
    - gf_sg_route_activate
    - gf_sg_route_setup
    - stricmp
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_event_out_str(GF_Node *node, const char *eventName)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_RouteToFunction*::route_callback
      Src: /src/gpac/src/scenegraph/vrml_route.c:482,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - r
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 479
    functionDepth: 0
    functionLinenumber: 479
    functionLinenumberEnd: 483
    functionName: on_route_to_function
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 0
    functionsReached:
    - GF_RouteToFunction*::route_callback
    linkageType: ''
    returnType: void
    signature: void on_route_to_function(GF_Node *node, GF_Route *r)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_route.c:490,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_route.c:497,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_route.c:509,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_route.c:511,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_route.c:512,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_route.c:516,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_route.c:517,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_route.c:518,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 4
    argNames:
    - sg
    - fromNode
    - fromField
    - cbk
    argTypes:
    - GF_SceneGraph*
    - GF_Node*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 519
      start: 485
    functionDepth: 1
    functionLinenumber: 485
    functionLinenumberEnd: 519
    functionName: gf_sg_route_new_to_callback
    functionSourceFile: /src/gpac/src/scenegraph/vrml_route.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_get_field
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_route_new_to_callback(GF_SceneGraph *sg, GF_Node *fromNode,
      u32 fromField, void *cbk, void ( *route_callback) (void *param, GF_FieldInfo
      *from_field) )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:50,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:51,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:52,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:53,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:54,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 56
    functionName: Anchor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_node_free
    - gf_sg_sfstring_del
    - gf_sg_vrml_parent_destroy
    - gf_node_unregister
    - gf_sg_mfstring_del
    linkageType: ''
    returnType: void
    signature: void Anchor_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: Anchor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Anchor_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 53
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 118
    functionName: Anchor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Anchor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:123,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:124,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:125,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:126,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:127,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:128,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:129,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 131
    functionName: Anchor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Anchor_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:137,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:139,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 144
    functionName: Anchor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Anchor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:154,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:155,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:156,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:157,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:158,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:159,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 161
    functionName: Appearance_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Appearance_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 167
    functionName: Appearance_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Appearance_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 47
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 217
    functionName: Appearance_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Appearance_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:222,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:223,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:224,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:225,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:226,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:227,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 229
    functionName: Appearance_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Appearance_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:235,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:237,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 232
    functionDepth: 1
    functionLinenumber: 232
    functionLinenumberEnd: 241
    functionName: Appearance_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Appearance_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:251,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:252,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 248
    functionDepth: 1
    functionLinenumber: 248
    functionLinenumberEnd: 253
    functionName: Arc2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Arc2D_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 259
    functionName: Arc2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Arc2D_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 292
    functionName: Arc2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Arc2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:297,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:298,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:299,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:300,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 302
    functionName: Arc2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Arc2D_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:308,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:310,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:313,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:314,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:315,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 305
    functionDepth: 1
    functionLinenumber: 305
    functionLinenumberEnd: 317
    functionName: Arc2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Arc2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:327,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:328,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:329,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 324
    functionDepth: 1
    functionLinenumber: 324
    functionLinenumberEnd: 330
    functionName: ArcClose2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void ArcClose2D_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 333
    functionDepth: 0
    functionLinenumber: 333
    functionLinenumberEnd: 336
    functionName: ArcClose2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ArcClose2D_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 36
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 375
    functionName: ArcClose2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ArcClose2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:380,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:381,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:382,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:383,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:384,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 378
    functionDepth: 0
    functionLinenumber: 378
    functionLinenumberEnd: 386
    functionName: ArcClose2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ArcClose2D_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:392,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:394,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:397,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:398,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:399,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:400,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:401,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 389
    functionDepth: 1
    functionLinenumber: 389
    functionLinenumberEnd: 403
    functionName: ArcClose2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - strcpy
    - gf_node_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ArcClose2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:413,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:414,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:415,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:416,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 410
    functionDepth: 1
    functionLinenumber: 410
    functionLinenumberEnd: 417
    functionName: AudioClip_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfurl_del
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void AudioClip_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 420
    functionDepth: 0
    functionLinenumber: 420
    functionLinenumberEnd: 423
    functionName: AudioClip_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 AudioClip_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 84
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 425
    functionDepth: 0
    functionLinenumber: 425
    functionLinenumberEnd: 510
    functionName: AudioClip_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AudioClip_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:515,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:516,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:517,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:518,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:519,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:520,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:521,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:522,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:523,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:524,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:525,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:526,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:527,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 513
    functionDepth: 0
    functionLinenumber: 513
    functionLinenumberEnd: 529
    functionName: AudioClip_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 AudioClip_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:535,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:537,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:540,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 532
    functionDepth: 1
    functionLinenumber: 532
    functionLinenumberEnd: 546
    functionName: AudioClip_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *AudioClip_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:556,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:557,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:558,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:559,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:560,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:561,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:562,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:563,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:564,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:565,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:566,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:567,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 568
      start: 553
    functionDepth: 1
    functionLinenumber: 553
    functionLinenumberEnd: 568
    functionName: Background_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_node_free
    - gf_sg_mffloat_del
    - gf_node_unregister
    - gf_sg_mfcolor_del
    linkageType: ''
    returnType: void
    signature: void Background_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 574
      start: 571
    functionDepth: 0
    functionLinenumber: 571
    functionLinenumberEnd: 574
    functionName: Background_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Background_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 91
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 668
      start: 576
    functionDepth: 0
    functionLinenumber: 576
    functionLinenumberEnd: 668
    functionName: Background_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Background_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:673,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:674,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:675,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:676,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:677,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:678,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:679,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:680,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:681,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:682,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:683,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:684,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:685,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:686,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 30
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 671
    functionDepth: 0
    functionLinenumber: 671
    functionLinenumberEnd: 688
    functionName: Background_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Background_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:694,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:696,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:699,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:701,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:702,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:703,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 705
      start: 691
    functionDepth: 1
    functionLinenumber: 691
    functionLinenumberEnd: 705
    functionName: Background_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Background_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:715,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:716,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:717,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 718
      start: 712
    functionDepth: 1
    functionLinenumber: 712
    functionLinenumberEnd: 718
    functionName: Billboard_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Billboard_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 724
      start: 721
    functionDepth: 0
    functionLinenumber: 721
    functionLinenumberEnd: 724
    functionName: Billboard_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Billboard_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 726
    functionDepth: 0
    functionLinenumber: 726
    functionLinenumberEnd: 768
    functionName: Billboard_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Billboard_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:773,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:774,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:775,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:776,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:777,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 779
      start: 771
    functionDepth: 0
    functionLinenumber: 771
    functionLinenumberEnd: 779
    functionName: Billboard_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Billboard_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:785,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:787,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:788,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:791,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:792,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:793,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 782
    functionDepth: 1
    functionLinenumber: 782
    functionLinenumberEnd: 795
    functionName: Billboard_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Billboard_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:805,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:806,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 807
      start: 802
    functionDepth: 1
    functionLinenumber: 802
    functionLinenumberEnd: 807
    functionName: BooleanFilter_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void BooleanFilter_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 813
      start: 810
    functionDepth: 0
    functionLinenumber: 810
    functionLinenumberEnd: 813
    functionName: BooleanFilter_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 BooleanFilter_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 37
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 853
      start: 815
    functionDepth: 0
    functionLinenumber: 815
    functionLinenumberEnd: 853
    functionName: BooleanFilter_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BooleanFilter_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:858,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:859,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:860,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:861,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:862,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 864
      start: 856
    functionDepth: 0
    functionLinenumber: 856
    functionLinenumberEnd: 864
    functionName: BooleanFilter_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 BooleanFilter_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:870,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:872,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 876
      start: 867
    functionDepth: 1
    functionLinenumber: 867
    functionLinenumberEnd: 876
    functionName: BooleanFilter_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *BooleanFilter_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:886,1
    - Dst: gf_sg_mfbool_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:887,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:888,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:889,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 890
      start: 883
    functionDepth: 1
    functionLinenumber: 883
    functionLinenumberEnd: 890
    functionName: BooleanSequencer_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfbool_del
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void BooleanSequencer_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 896
      start: 893
    functionDepth: 0
    functionLinenumber: 893
    functionLinenumberEnd: 896
    functionName: BooleanSequencer_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 BooleanSequencer_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 51
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 950
      start: 898
    functionDepth: 0
    functionLinenumber: 898
    functionLinenumberEnd: 950
    functionName: BooleanSequencer_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BooleanSequencer_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:955,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:956,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:957,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:958,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:959,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:960,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:961,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 963
      start: 953
    functionDepth: 0
    functionLinenumber: 953
    functionLinenumberEnd: 963
    functionName: BooleanSequencer_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 BooleanSequencer_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:969,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:971,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 975
      start: 966
    functionDepth: 1
    functionLinenumber: 966
    functionLinenumberEnd: 975
    functionName: BooleanSequencer_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *BooleanSequencer_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:985,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:986,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 987
      start: 982
    functionDepth: 1
    functionLinenumber: 982
    functionLinenumberEnd: 987
    functionName: BooleanToggle_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void BooleanToggle_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 993
      start: 990
    functionDepth: 0
    functionLinenumber: 990
    functionLinenumberEnd: 993
    functionName: BooleanToggle_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 BooleanToggle_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1021
      start: 995
    functionDepth: 0
    functionLinenumber: 995
    functionLinenumberEnd: 1021
    functionName: BooleanToggle_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BooleanToggle_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1026,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1027,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1028,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1030
      start: 1024
    functionDepth: 0
    functionLinenumber: 1024
    functionLinenumberEnd: 1030
    functionName: BooleanToggle_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 BooleanToggle_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1036,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1038,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1042
      start: 1033
    functionDepth: 1
    functionLinenumber: 1033
    functionLinenumberEnd: 1042
    functionName: BooleanToggle_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *BooleanToggle_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1052,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1053,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1054
      start: 1049
    functionDepth: 1
    functionLinenumber: 1049
    functionLinenumberEnd: 1054
    functionName: BooleanTrigger_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void BooleanTrigger_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1060
      start: 1057
    functionDepth: 0
    functionLinenumber: 1057
    functionLinenumberEnd: 1060
    functionName: BooleanTrigger_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 BooleanTrigger_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1088
      start: 1062
    functionDepth: 0
    functionLinenumber: 1062
    functionLinenumberEnd: 1088
    functionName: BooleanTrigger_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BooleanTrigger_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1093,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1094,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1095,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1097
      start: 1091
    functionDepth: 0
    functionLinenumber: 1091
    functionLinenumberEnd: 1097
    functionName: BooleanTrigger_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 BooleanTrigger_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1103,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1105,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1109
      start: 1100
    functionDepth: 1
    functionLinenumber: 1100
    functionLinenumberEnd: 1109
    functionName: BooleanTrigger_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *BooleanTrigger_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1119,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1121
      start: 1116
    functionDepth: 1
    functionLinenumber: 1116
    functionLinenumberEnd: 1121
    functionName: Box_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Box_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1127
      start: 1124
    functionDepth: 0
    functionLinenumber: 1124
    functionLinenumberEnd: 1127
    functionName: Box_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Box_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1148
      start: 1129
    functionDepth: 0
    functionLinenumber: 1129
    functionLinenumberEnd: 1148
    functionName: Box_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Box_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1153,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1154,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1156
      start: 1151
    functionDepth: 0
    functionLinenumber: 1151
    functionLinenumberEnd: 1156
    functionName: Box_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Box_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1162,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1164,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1167,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1168,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1169,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1171
      start: 1159
    functionDepth: 1
    functionLinenumber: 1159
    functionLinenumberEnd: 1171
    functionName: Box_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Box_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1181,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1183
      start: 1178
    functionDepth: 1
    functionLinenumber: 1178
    functionLinenumberEnd: 1183
    functionName: Circle2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Circle2D_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1189
      start: 1186
    functionDepth: 0
    functionLinenumber: 1186
    functionLinenumberEnd: 1189
    functionName: Circle2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Circle2D_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1210
      start: 1191
    functionDepth: 0
    functionLinenumber: 1191
    functionLinenumberEnd: 1210
    functionName: Circle2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Circle2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1215,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1216,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1218
      start: 1213
    functionDepth: 0
    functionLinenumber: 1213
    functionLinenumberEnd: 1218
    functionName: Circle2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Circle2D_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1224,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1226,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1229,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1231
      start: 1221
    functionDepth: 1
    functionLinenumber: 1221
    functionLinenumberEnd: 1231
    functionName: Circle2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Circle2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1241,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1242,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1243,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1245
      start: 1238
    functionDepth: 1
    functionLinenumber: 1238
    functionLinenumberEnd: 1245
    functionName: Collision_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Collision_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1251
      start: 1248
    functionDepth: 0
    functionLinenumber: 1248
    functionLinenumberEnd: 1251
    functionName: Collision_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Collision_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 60
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1314
      start: 1253
    functionDepth: 0
    functionLinenumber: 1253
    functionLinenumberEnd: 1314
    functionName: Collision_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Collision_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1319,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1320,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1321,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1322,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1323,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1324,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1325,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1326,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1328
      start: 1317
    functionDepth: 0
    functionLinenumber: 1317
    functionLinenumberEnd: 1328
    functionName: Collision_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Collision_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1334,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1336,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1337,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1342
      start: 1331
    functionDepth: 1
    functionLinenumber: 1331
    functionLinenumberEnd: 1342
    functionName: Collision_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Collision_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1352,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1353,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1354,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1355
      start: 1349
    functionDepth: 1
    functionLinenumber: 1349
    functionLinenumberEnd: 1355
    functionName: Color_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfcolor_del
    linkageType: ''
    returnType: void
    signature: void Color_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1361
      start: 1358
    functionDepth: 0
    functionLinenumber: 1358
    functionLinenumberEnd: 1361
    functionName: Color_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Color_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1382
      start: 1363
    functionDepth: 0
    functionLinenumber: 1363
    functionLinenumberEnd: 1382
    functionName: Color_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Color_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1387,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1388,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1390
      start: 1385
    functionDepth: 0
    functionLinenumber: 1385
    functionLinenumberEnd: 1390
    functionName: Color_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Color_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1396,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1398,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1402
      start: 1393
    functionDepth: 1
    functionLinenumber: 1393
    functionLinenumberEnd: 1402
    functionName: Color_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Color_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1412,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1413,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1414,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1415,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1416
      start: 1409
    functionDepth: 1
    functionLinenumber: 1409
    functionLinenumberEnd: 1416
    functionName: ColorInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfcolor_del
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void ColorInterpolator_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1422
      start: 1419
    functionDepth: 0
    functionLinenumber: 1419
    functionLinenumberEnd: 1422
    functionName: ColorInterpolator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ColorInterpolator_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 37
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1462
      start: 1424
    functionDepth: 0
    functionLinenumber: 1424
    functionLinenumberEnd: 1462
    functionName: ColorInterpolator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ColorInterpolator_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1467,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1468,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1469,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1470,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1471,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1473
      start: 1465
    functionDepth: 0
    functionLinenumber: 1465
    functionLinenumberEnd: 1473
    functionName: ColorInterpolator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ColorInterpolator_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1479,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1481,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1485
      start: 1476
    functionDepth: 1
    functionLinenumber: 1476
    functionLinenumberEnd: 1485
    functionName: ColorInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ColorInterpolator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfcolorrgba_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1495,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1496,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1497,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1498
      start: 1492
    functionDepth: 1
    functionLinenumber: 1492
    functionLinenumberEnd: 1498
    functionName: ColorRGBA_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfcolorrgba_del
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void ColorRGBA_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1504
      start: 1501
    functionDepth: 0
    functionLinenumber: 1501
    functionLinenumberEnd: 1504
    functionName: ColorRGBA_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ColorRGBA_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1525
      start: 1506
    functionDepth: 0
    functionLinenumber: 1506
    functionLinenumberEnd: 1525
    functionName: ColorRGBA_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ColorRGBA_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1530,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1531,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1533
      start: 1528
    functionDepth: 0
    functionLinenumber: 1528
    functionLinenumberEnd: 1533
    functionName: ColorRGBA_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ColorRGBA_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1539,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1541,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1545
      start: 1536
    functionDepth: 1
    functionLinenumber: 1536
    functionLinenumberEnd: 1545
    functionName: ColorRGBA_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ColorRGBA_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1555,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1556,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1557
      start: 1552
    functionDepth: 1
    functionLinenumber: 1552
    functionLinenumberEnd: 1557
    functionName: Cone_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Cone_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1563
      start: 1560
    functionDepth: 0
    functionLinenumber: 1560
    functionLinenumberEnd: 1563
    functionName: Cone_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Cone_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 36
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1602
      start: 1565
    functionDepth: 0
    functionLinenumber: 1565
    functionLinenumberEnd: 1602
    functionName: Cone_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Cone_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1607,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1608,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1609,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1610,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1611,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1613
      start: 1605
    functionDepth: 0
    functionLinenumber: 1605
    functionLinenumberEnd: 1613
    functionName: Cone_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Cone_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1619,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1621,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1624,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1625,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1629
      start: 1616
    functionDepth: 1
    functionLinenumber: 1616
    functionLinenumberEnd: 1629
    functionName: Cone_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Cone_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1639,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1640,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1641,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1642
      start: 1636
    functionDepth: 1
    functionLinenumber: 1636
    functionLinenumberEnd: 1642
    functionName: Contour2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Contour2D_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1648
      start: 1645
    functionDepth: 0
    functionLinenumber: 1645
    functionLinenumberEnd: 1648
    functionName: Contour2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Contour2D_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 35
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1686
      start: 1650
    functionDepth: 0
    functionLinenumber: 1650
    functionLinenumberEnd: 1686
    functionName: Contour2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Contour2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1691,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1692,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1693,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1694,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1696
      start: 1689
    functionDepth: 0
    functionLinenumber: 1689
    functionLinenumberEnd: 1696
    functionName: Contour2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Contour2D_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1702,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1704,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1705,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1709
      start: 1699
    functionDepth: 1
    functionLinenumber: 1699
    functionLinenumberEnd: 1709
    functionName: Contour2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Contour2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1719,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1720,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1721,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1722
      start: 1716
    functionDepth: 1
    functionLinenumber: 1716
    functionLinenumberEnd: 1722
    functionName: ContourPolyline2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfvec2f_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void ContourPolyline2D_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1728
      start: 1725
    functionDepth: 0
    functionLinenumber: 1725
    functionLinenumberEnd: 1728
    functionName: ContourPolyline2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ContourPolyline2D_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1749
      start: 1730
    functionDepth: 0
    functionLinenumber: 1730
    functionLinenumberEnd: 1749
    functionName: ContourPolyline2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ContourPolyline2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1754,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1755,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1757
      start: 1752
    functionDepth: 0
    functionLinenumber: 1752
    functionLinenumberEnd: 1757
    functionName: ContourPolyline2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ContourPolyline2D_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1763,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1765,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1769
      start: 1760
    functionDepth: 1
    functionLinenumber: 1760
    functionLinenumberEnd: 1769
    functionName: ContourPolyline2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ContourPolyline2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1779,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1780,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1781,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1782
      start: 1776
    functionDepth: 1
    functionLinenumber: 1776
    functionLinenumberEnd: 1782
    functionName: Coordinate_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec3f_del
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Coordinate_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1788
      start: 1785
    functionDepth: 0
    functionLinenumber: 1785
    functionLinenumberEnd: 1788
    functionName: Coordinate_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Coordinate_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1809
      start: 1790
    functionDepth: 0
    functionLinenumber: 1790
    functionLinenumberEnd: 1809
    functionName: Coordinate_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Coordinate_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1814,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1815,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1817
      start: 1812
    functionDepth: 0
    functionLinenumber: 1812
    functionLinenumberEnd: 1817
    functionName: Coordinate_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Coordinate_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1823,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1825,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1829
      start: 1820
    functionDepth: 1
    functionLinenumber: 1820
    functionLinenumberEnd: 1829
    functionName: Coordinate_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Coordinate_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec3d_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1839,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1840,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1841,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1842
      start: 1836
    functionDepth: 1
    functionLinenumber: 1836
    functionLinenumberEnd: 1842
    functionName: CoordinateDouble_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfvec3d_del
    linkageType: ''
    returnType: void
    signature: void CoordinateDouble_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1848
      start: 1845
    functionDepth: 0
    functionLinenumber: 1845
    functionLinenumberEnd: 1848
    functionName: CoordinateDouble_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 CoordinateDouble_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1869
      start: 1850
    functionDepth: 0
    functionLinenumber: 1850
    functionLinenumberEnd: 1869
    functionName: CoordinateDouble_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CoordinateDouble_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1874,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1875,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1877
      start: 1872
    functionDepth: 0
    functionLinenumber: 1872
    functionLinenumberEnd: 1877
    functionName: CoordinateDouble_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 CoordinateDouble_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1883,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1885,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1889
      start: 1880
    functionDepth: 1
    functionLinenumber: 1880
    functionLinenumberEnd: 1889
    functionName: CoordinateDouble_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *CoordinateDouble_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1899,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1900,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1901,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1902
      start: 1896
    functionDepth: 1
    functionLinenumber: 1896
    functionLinenumberEnd: 1902
    functionName: Coordinate2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfvec2f_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Coordinate2D_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1908
      start: 1905
    functionDepth: 0
    functionLinenumber: 1905
    functionLinenumberEnd: 1908
    functionName: Coordinate2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Coordinate2D_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1929
      start: 1910
    functionDepth: 0
    functionLinenumber: 1910
    functionLinenumberEnd: 1929
    functionName: Coordinate2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Coordinate2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1934,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1935,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1937
      start: 1932
    functionDepth: 0
    functionLinenumber: 1932
    functionLinenumberEnd: 1937
    functionName: Coordinate2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Coordinate2D_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1943,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1945,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1949
      start: 1940
    functionDepth: 1
    functionLinenumber: 1940
    functionLinenumberEnd: 1949
    functionName: Coordinate2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Coordinate2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1959,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1960,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1961,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1962,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1963,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1964
      start: 1956
    functionDepth: 1
    functionLinenumber: 1956
    functionLinenumberEnd: 1964
    functionName: CoordinateInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec3f_del
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void CoordinateInterpolator_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1970
      start: 1967
    functionDepth: 0
    functionLinenumber: 1967
    functionLinenumberEnd: 1970
    functionName: CoordinateInterpolator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 CoordinateInterpolator_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 37
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2010
      start: 1972
    functionDepth: 0
    functionLinenumber: 1972
    functionLinenumberEnd: 2010
    functionName: CoordinateInterpolator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CoordinateInterpolator_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2015,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2016,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2017,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2018,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2019,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2021
      start: 2013
    functionDepth: 0
    functionLinenumber: 2013
    functionLinenumberEnd: 2021
    functionName: CoordinateInterpolator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 CoordinateInterpolator_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2027,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2029,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2033
      start: 2024
    functionDepth: 1
    functionLinenumber: 2024
    functionLinenumberEnd: 2033
    functionName: CoordinateInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *CoordinateInterpolator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2043,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2044,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2045,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2046,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2047,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2048
      start: 2040
    functionDepth: 1
    functionLinenumber: 2040
    functionLinenumberEnd: 2048
    functionName: CoordinateInterpolator2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfvec2f_del
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void CoordinateInterpolator2D_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2054
      start: 2051
    functionDepth: 0
    functionLinenumber: 2051
    functionLinenumberEnd: 2054
    functionName: CoordinateInterpolator2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 CoordinateInterpolator2D_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 37
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2094
      start: 2056
    functionDepth: 0
    functionLinenumber: 2056
    functionLinenumberEnd: 2094
    functionName: CoordinateInterpolator2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CoordinateInterpolator2D_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2099,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2100,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2101,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2102,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2103,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2105
      start: 2097
    functionDepth: 0
    functionLinenumber: 2097
    functionLinenumberEnd: 2105
    functionName: CoordinateInterpolator2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 CoordinateInterpolator2D_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2111,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2117
      start: 2108
    functionDepth: 1
    functionLinenumber: 2108
    functionLinenumberEnd: 2117
    functionName: CoordinateInterpolator2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *CoordinateInterpolator2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2127,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2129
      start: 2124
    functionDepth: 1
    functionLinenumber: 2124
    functionLinenumberEnd: 2129
    functionName: Cylinder_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Cylinder_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2135
      start: 2132
    functionDepth: 0
    functionLinenumber: 2132
    functionLinenumberEnd: 2135
    functionName: Cylinder_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Cylinder_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 42
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2180
      start: 2137
    functionDepth: 0
    functionLinenumber: 2137
    functionLinenumberEnd: 2180
    functionName: Cylinder_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Cylinder_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2185,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2186,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2187,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2188,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2189,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2190,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2192
      start: 2183
    functionDepth: 0
    functionLinenumber: 2183
    functionLinenumberEnd: 2192
    functionName: Cylinder_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Cylinder_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2198,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2200,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2204,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2205,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2209
      start: 2195
    functionDepth: 1
    functionLinenumber: 2195
    functionLinenumberEnd: 2209
    functionName: Cylinder_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Cylinder_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2219,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2220,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2222
      start: 2216
    functionDepth: 1
    functionLinenumber: 2216
    functionLinenumberEnd: 2222
    functionName: CylinderSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void CylinderSensor_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2228
      start: 2225
    functionDepth: 0
    functionLinenumber: 2225
    functionLinenumberEnd: 2228
    functionName: CylinderSensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 CylinderSensor_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 78
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2309
      start: 2230
    functionDepth: 0
    functionLinenumber: 2230
    functionLinenumberEnd: 2309
    functionName: CylinderSensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CylinderSensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2314,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2315,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2316,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2317,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2318,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2319,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2320,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2321,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2322,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2323,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2324,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2325,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2327
      start: 2312
    functionDepth: 0
    functionLinenumber: 2312
    functionLinenumberEnd: 2327
    functionName: CylinderSensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 CylinderSensor_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2333,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2335,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2339,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2341,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2342,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2343,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2345
      start: 2330
    functionDepth: 1
    functionLinenumber: 2330
    functionLinenumberEnd: 2345
    functionName: CylinderSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *CylinderSensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2355,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2356,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2357
      start: 2352
    functionDepth: 1
    functionLinenumber: 2352
    functionLinenumberEnd: 2357
    functionName: DirectionalLight_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void DirectionalLight_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2363
      start: 2360
    functionDepth: 0
    functionLinenumber: 2360
    functionLinenumberEnd: 2363
    functionName: DirectionalLight_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 DirectionalLight_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 42
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2408
      start: 2365
    functionDepth: 0
    functionLinenumber: 2365
    functionLinenumberEnd: 2408
    functionName: DirectionalLight_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DirectionalLight_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2413,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2414,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2415,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2416,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2417,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2418,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2420
      start: 2411
    functionDepth: 0
    functionLinenumber: 2411
    functionLinenumberEnd: 2420
    functionName: DirectionalLight_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 DirectionalLight_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2426,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2428,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2431,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2432,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2433,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2434,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2435,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2436,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2437,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2438,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2441
      start: 2423
    functionDepth: 1
    functionLinenumber: 2423
    functionLinenumberEnd: 2441
    functionName: DirectionalLight_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *DirectionalLight_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2451,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2452,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2453
      start: 2448
    functionDepth: 1
    functionLinenumber: 2448
    functionLinenumberEnd: 2453
    functionName: Disk2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Disk2D_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2459
      start: 2456
    functionDepth: 0
    functionLinenumber: 2456
    functionLinenumberEnd: 2459
    functionName: Disk2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Disk2D_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2486
      start: 2461
    functionDepth: 0
    functionLinenumber: 2461
    functionLinenumberEnd: 2486
    functionName: Disk2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Disk2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2491,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2492,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2493,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2495
      start: 2489
    functionDepth: 0
    functionLinenumber: 2489
    functionLinenumberEnd: 2495
    functionName: Disk2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Disk2D_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2501,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2503,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2506,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2507,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2509
      start: 2498
    functionDepth: 1
    functionLinenumber: 2498
    functionLinenumberEnd: 2509
    functionName: Disk2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Disk2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2519,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2520,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2521,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2522,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2523,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2524,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2525,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2526
      start: 2516
    functionDepth: 1
    functionLinenumber: 2516
    functionLinenumberEnd: 2526
    functionName: ElevationGrid_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void ElevationGrid_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2532
      start: 2529
    functionDepth: 0
    functionLinenumber: 2529
    functionLinenumberEnd: 2532
    functionName: ElevationGrid_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ElevationGrid_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 100
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2635
      start: 2534
    functionDepth: 0
    functionLinenumber: 2534
    functionLinenumberEnd: 2635
    functionName: ElevationGrid_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ElevationGrid_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2640,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2641,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2642,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2643,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2644,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2645,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2646,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2647,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2648,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2649,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2650,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2651,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2652,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2653,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2654,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 32
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2656
      start: 2638
    functionDepth: 0
    functionLinenumber: 2638
    functionLinenumberEnd: 2656
    functionName: ElevationGrid_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ElevationGrid_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2662,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2664,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2669,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2673,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2675,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2677
      start: 2659
    functionDepth: 1
    functionLinenumber: 2659
    functionLinenumberEnd: 2677
    functionName: ElevationGrid_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ElevationGrid_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2687,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2688,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2689,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2690,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2691,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2692,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2693,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2694,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2695,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2696,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2697,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2698,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2699
      start: 2684
    functionDepth: 1
    functionLinenumber: 2684
    functionLinenumberEnd: 2699
    functionName: EspduTransform_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfint32_del
    - gf_node_free
    - gf_sg_sfstring_del
    - gf_sg_vrml_parent_destroy
    - gf_sg_mffloat_del
    - gf_node_unregister
    linkageType: ''
    returnType: void
    signature: void EspduTransform_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2705
      start: 2702
    functionDepth: 0
    functionLinenumber: 2702
    functionLinenumberEnd: 2705
    functionName: EspduTransform_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 EspduTransform_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 88
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 535
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3243
      start: 2707
    functionDepth: 0
    functionLinenumber: 2707
    functionLinenumberEnd: 3243
    functionName: EspduTransform_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EspduTransform_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 87
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3248,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3249,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3250,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3251,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3252,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3253,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3254,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3255,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3256,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3257,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3258,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3259,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3260,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3261,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3262,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3263,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3264,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3265,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3266,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3267,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3268,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3269,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3270,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3271,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3272,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3273,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3274,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3275,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3276,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3277,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3278,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3279,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3280,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3281,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3282,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3283,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3284,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3285,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3286,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3287,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3288,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3289,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3290,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3291,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3292,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3293,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3294,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3295,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3296,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3297,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3298,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3299,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3300,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3301,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3302,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3303,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3304,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3305,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3306,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3307,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3308,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3309,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3310,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3311,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3312,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3313,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3314,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3315,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3316,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3317,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3318,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3319,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3320,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3321,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3322,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3323,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3324,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3325,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3326,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3327,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3328,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3329,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3330,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3331,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3332,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3333,1
    CyclomaticComplexity: 86
    EdgeCount: 86
    ICount: 174
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3335
      start: 3246
    functionDepth: 0
    functionLinenumber: 3246
    functionLinenumberEnd: 3335
    functionName: EspduTransform_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 EspduTransform_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3341,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3343,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3344,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3347,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3348,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3351,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3352,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3353,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3356,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3357,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3358,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3359,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3360,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3361,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3376,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3380,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3381,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3382,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3383,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3384,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3385,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3388,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3389,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3390,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3394,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3395,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3396,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3397,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3398,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3401,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3402,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3403,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3404,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3405,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3406,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3407,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3408,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3409,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3410,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3411,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3413,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3414,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3415,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 78
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3419
      start: 3338
    functionDepth: 1
    functionLinenumber: 3338
    functionLinenumberEnd: 3419
    functionName: EspduTransform_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - strcpy
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *EspduTransform_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3429,1
    - Dst: gf_sg_mfrotation_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3430,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3431,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3432,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3433,1
    - Dst: gf_sg_mfrotation_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3434,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3435,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3436,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3437,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3438,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3439
      start: 3426
    functionDepth: 1
    functionLinenumber: 3426
    functionLinenumberEnd: 3439
    functionName: Extrusion_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec2f_del
    - gf_node_free
    - gf_node_unregister
    - gf_sg_mfvec3f_del
    - gf_sg_mfrotation_del
    linkageType: ''
    returnType: void
    signature: void Extrusion_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3445
      start: 3442
    functionDepth: 0
    functionLinenumber: 3442
    functionLinenumberEnd: 3445
    functionName: Extrusion_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Extrusion_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 100
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3548
      start: 3447
    functionDepth: 0
    functionLinenumber: 3447
    functionLinenumberEnd: 3548
    functionName: Extrusion_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Extrusion_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3553,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3554,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3555,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3556,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3557,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3558,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3559,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3560,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3561,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3562,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3563,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3564,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3565,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3566,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3567,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 32
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3569
      start: 3551
    functionDepth: 0
    functionLinenumber: 3551
    functionLinenumberEnd: 3569
    functionName: Extrusion_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Extrusion_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3575,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3577,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3583,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3584,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3586,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3587,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3588,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3589,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3590,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3591,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3592,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3593,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3594,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3595,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3597,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3599,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3600,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3601,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3602,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3603,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3605,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3606,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3608,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3610,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3611,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3612,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3613,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3614,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3615,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3617
      start: 3572
    functionDepth: 1
    functionLinenumber: 3572
    functionLinenumberEnd: 3617
    functionName: Extrusion_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Extrusion_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3627,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3628
      start: 3624
    functionDepth: 1
    functionLinenumber: 3624
    functionLinenumberEnd: 3628
    functionName: FillProperties_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void FillProperties_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3634
      start: 3631
    functionDepth: 0
    functionLinenumber: 3631
    functionLinenumberEnd: 3634
    functionName: FillProperties_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 FillProperties_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3666
      start: 3636
    functionDepth: 0
    functionLinenumber: 3636
    functionLinenumberEnd: 3666
    functionName: FillProperties_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FillProperties_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3671,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3672,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3673,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3674,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3676
      start: 3669
    functionDepth: 0
    functionLinenumber: 3669
    functionLinenumberEnd: 3676
    functionName: FillProperties_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 FillProperties_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3682,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3684,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3688,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3689,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3690,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3694
      start: 3679
    functionDepth: 1
    functionLinenumber: 3679
    functionLinenumberEnd: 3694
    functionName: FillProperties_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *FillProperties_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3704,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3705,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3706,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3707
      start: 3701
    functionDepth: 1
    functionLinenumber: 3701
    functionLinenumberEnd: 3707
    functionName: Fog_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Fog_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3713
      start: 3710
    functionDepth: 0
    functionLinenumber: 3710
    functionLinenumberEnd: 3713
    functionName: Fog_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Fog_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 49
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3765
      start: 3715
    functionDepth: 0
    functionLinenumber: 3715
    functionLinenumberEnd: 3765
    functionName: Fog_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Fog_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3770,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3771,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3772,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3773,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3774,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3775,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3776,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3778
      start: 3768
    functionDepth: 0
    functionLinenumber: 3768
    functionLinenumberEnd: 3778
    functionName: Fog_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Fog_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3784,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3786,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3789,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3790,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3791,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3792,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3793,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3794,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3796
      start: 3781
    functionDepth: 1
    functionLinenumber: 3781
    functionLinenumberEnd: 3796
    functionName: Fog_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - strcpy
    - gf_node_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Fog_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3806,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3807,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3808,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3809,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3810,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3811,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3812
      start: 3803
    functionDepth: 1
    functionLinenumber: 3803
    functionLinenumberEnd: 3812
    functionName: FontStyle_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfstring_del
    - gf_node_free
    - gf_sg_sfstring_del
    linkageType: ''
    returnType: void
    signature: void FontStyle_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3818
      start: 3815
    functionDepth: 0
    functionLinenumber: 3815
    functionLinenumberEnd: 3818
    functionName: FontStyle_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 FontStyle_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 66
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3887
      start: 3820
    functionDepth: 0
    functionLinenumber: 3820
    functionLinenumberEnd: 3887
    functionName: FontStyle_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FontStyle_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3892,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3893,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3894,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3895,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3896,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3897,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3898,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3899,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3900,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3901,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3903
      start: 3890
    functionDepth: 0
    functionLinenumber: 3890
    functionLinenumberEnd: 3903
    functionName: FontStyle_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 FontStyle_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3909,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3911,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3914,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3916,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3917,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3919,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3921,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3922,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3924,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3925,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3926,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3927,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3930
      start: 3906
    functionDepth: 1
    functionLinenumber: 3906
    functionLinenumberEnd: 3930
    functionName: FontStyle_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - strcpy
    - gf_node_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *FontStyle_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec3d_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3940,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3941,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3942,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3943,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3944,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3945
      start: 3937
    functionDepth: 1
    functionLinenumber: 3937
    functionLinenumberEnd: 3945
    functionName: GeoCoordinate_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfstring_del
    - gf_node_free
    - gf_sg_mfvec3d_del
    linkageType: ''
    returnType: void
    signature: void GeoCoordinate_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3951
      start: 3948
    functionDepth: 0
    functionLinenumber: 3948
    functionLinenumberEnd: 3951
    functionName: GeoCoordinate_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 GeoCoordinate_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3985
      start: 3953
    functionDepth: 0
    functionLinenumber: 3953
    functionLinenumberEnd: 3985
    functionName: GeoCoordinate_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GeoCoordinate_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3990,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3991,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3992,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3993,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3995
      start: 3988
    functionDepth: 0
    functionLinenumber: 3988
    functionLinenumberEnd: 3995
    functionName: GeoCoordinate_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 GeoCoordinate_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4001,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4003,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4006,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4008,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4009,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4010,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4011,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4013
      start: 3998
    functionDepth: 1
    functionLinenumber: 3998
    functionLinenumberEnd: 4013
    functionName: GeoCoordinate_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcpy
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *GeoCoordinate_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4023,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4024,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4025,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4026,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4027,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4028,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4029,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4030,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4031,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4032,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4033
      start: 4020
    functionDepth: 1
    functionLinenumber: 4020
    functionLinenumberEnd: 4033
    functionName: GeoElevationGrid_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfdouble_del
    - gf_node_free
    - gf_sg_sfstring_del
    - gf_node_unregister
    - gf_sg_mfstring_del
    linkageType: ''
    returnType: void
    signature: void GeoElevationGrid_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4039
      start: 4036
    functionDepth: 0
    functionLinenumber: 4036
    functionLinenumberEnd: 4039
    functionName: GeoElevationGrid_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 GeoElevationGrid_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 125
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4167
      start: 4041
    functionDepth: 0
    functionLinenumber: 4041
    functionLinenumberEnd: 4167
    functionName: GeoElevationGrid_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GeoElevationGrid_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4172,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4173,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4174,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4175,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4176,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4177,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4178,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4179,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4180,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4181,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4182,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4183,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4184,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4185,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4186,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4187,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4188,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4189,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4190,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 40
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4192
      start: 4170
    functionDepth: 0
    functionLinenumber: 4170
    functionLinenumberEnd: 4192
    functionName: GeoElevationGrid_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 GeoElevationGrid_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4198,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4200,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4203,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4206,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4207,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4208,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4209,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4211,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4212,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4213,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4214,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4222
      start: 4195
    functionDepth: 1
    functionLinenumber: 4195
    functionLinenumberEnd: 4222
    functionName: GeoElevationGrid_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - strcpy
    - gf_node_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *GeoElevationGrid_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4232,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4233,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4234,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4235,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4237
      start: 4229
    functionDepth: 1
    functionLinenumber: 4229
    functionLinenumberEnd: 4237
    functionName: GeoLocation_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfstring_del
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    linkageType: ''
    returnType: void
    signature: void GeoLocation_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4243
      start: 4240
    functionDepth: 0
    functionLinenumber: 4240
    functionLinenumberEnd: 4243
    functionName: GeoLocation_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 GeoLocation_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 54
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4300
      start: 4245
    functionDepth: 0
    functionLinenumber: 4245
    functionLinenumberEnd: 4300
    functionName: GeoLocation_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GeoLocation_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4305,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4306,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4307,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4308,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4309,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4310,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4311,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4313
      start: 4303
    functionDepth: 0
    functionLinenumber: 4303
    functionLinenumberEnd: 4313
    functionName: GeoLocation_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 GeoLocation_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4319,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4321,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4322,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4328,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4330,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4331,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4332,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4333,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4335
      start: 4316
    functionDepth: 1
    functionLinenumber: 4316
    functionLinenumberEnd: 4335
    functionName: GeoLocation_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - strcpy
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *GeoLocation_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4345,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4346,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4347,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4348,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4349,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4350,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4351,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4352,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4353,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4354,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4355,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4356
      start: 4342
    functionDepth: 1
    functionLinenumber: 4342
    functionLinenumberEnd: 4356
    functionName: GeoLOD_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_node_free
    - gf_node_unregister_children
    - gf_node_unregister
    - gf_sg_mfstring_del
    linkageType: ''
    returnType: void
    signature: void GeoLOD_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4362
      start: 4359
    functionDepth: 0
    functionLinenumber: 4359
    functionLinenumberEnd: 4362
    functionName: GeoLOD_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 GeoLOD_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 81
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4446
      start: 4364
    functionDepth: 0
    functionLinenumber: 4364
    functionLinenumberEnd: 4446
    functionName: GeoLOD_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GeoLOD_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4451,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4452,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4453,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4454,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4455,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4456,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4457,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4458,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4459,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4460,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4461,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4462,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4464
      start: 4449
    functionDepth: 0
    functionLinenumber: 4449
    functionLinenumberEnd: 4464
    functionName: GeoLOD_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 GeoLOD_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4470,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4472,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4478,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4480,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4481,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4482,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4483,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4484,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4486
      start: 4467
    functionDepth: 1
    functionLinenumber: 4467
    functionLinenumberEnd: 4486
    functionName: GeoLOD_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - strcpy
    - gf_node_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *GeoLOD_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4496,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4497,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4498,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4499,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4500,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4501
      start: 4493
    functionDepth: 1
    functionLinenumber: 4493
    functionLinenumberEnd: 4501
    functionName: GeoMetadata_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_node_free
    - gf_node_unregister_children
    - gf_node_unregister
    - gf_sg_mfstring_del
    linkageType: ''
    returnType: void
    signature: void GeoMetadata_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4507
      start: 4504
    functionDepth: 0
    functionLinenumber: 4504
    functionLinenumberEnd: 4507
    functionName: GeoMetadata_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 GeoMetadata_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4541
      start: 4509
    functionDepth: 0
    functionLinenumber: 4509
    functionLinenumberEnd: 4541
    functionName: GeoMetadata_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GeoMetadata_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4546,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4547,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4548,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4549,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4551
      start: 4544
    functionDepth: 0
    functionLinenumber: 4544
    functionLinenumberEnd: 4551
    functionName: GeoMetadata_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 GeoMetadata_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4557,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4559,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4563
      start: 4554
    functionDepth: 1
    functionLinenumber: 4554
    functionLinenumberEnd: 4563
    functionName: GeoMetadata_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *GeoMetadata_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4573,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4574,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4575,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4576
      start: 4570
    functionDepth: 1
    functionLinenumber: 4570
    functionLinenumberEnd: 4576
    functionName: GeoOrigin_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void GeoOrigin_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4582
      start: 4579
    functionDepth: 0
    functionLinenumber: 4579
    functionLinenumberEnd: 4582
    functionName: GeoOrigin_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 GeoOrigin_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4615
      start: 4584
    functionDepth: 0
    functionLinenumber: 4584
    functionLinenumberEnd: 4615
    functionName: GeoOrigin_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GeoOrigin_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4620,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4621,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4622,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4623,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4625
      start: 4618
    functionDepth: 0
    functionLinenumber: 4618
    functionLinenumberEnd: 4625
    functionName: GeoOrigin_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 GeoOrigin_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4631,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4633,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4639,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4641,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4642,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4643,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4644,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4646
      start: 4628
    functionDepth: 1
    functionLinenumber: 4628
    functionLinenumberEnd: 4646
    functionName: GeoOrigin_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcpy
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *GeoOrigin_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4656,1
    - Dst: gf_sg_mfvec3d_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4657,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4658,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4659,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4660,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4661,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4662
      start: 4653
    functionDepth: 1
    functionLinenumber: 4653
    functionLinenumberEnd: 4662
    functionName: GeoPositionInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfvec3d_del
    - gf_sg_mffloat_del
    - gf_node_unregister
    - gf_sg_mfstring_del
    linkageType: ''
    returnType: void
    signature: void GeoPositionInterpolator_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4668
      start: 4665
    functionDepth: 0
    functionLinenumber: 4665
    functionLinenumberEnd: 4668
    functionName: GeoPositionInterpolator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 GeoPositionInterpolator_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 56
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4727
      start: 4670
    functionDepth: 0
    functionLinenumber: 4670
    functionLinenumberEnd: 4727
    functionName: GeoPositionInterpolator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GeoPositionInterpolator_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4732,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4733,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4734,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4735,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4736,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4737,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4738,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4739,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4741
      start: 4730
    functionDepth: 0
    functionLinenumber: 4730
    functionLinenumberEnd: 4741
    functionName: GeoPositionInterpolator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 GeoPositionInterpolator_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4747,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4749,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4752,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4754,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4755,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4756,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4757,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4759
      start: 4744
    functionDepth: 1
    functionLinenumber: 4744
    functionLinenumberEnd: 4759
    functionName: GeoPositionInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcpy
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *GeoPositionInterpolator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4769,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4770,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4771,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4772,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4773
      start: 4766
    functionDepth: 1
    functionLinenumber: 4766
    functionLinenumberEnd: 4773
    functionName: GeoTouchSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void GeoTouchSensor_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4779
      start: 4776
    functionDepth: 0
    functionLinenumber: 4776
    functionLinenumberEnd: 4779
    functionName: GeoTouchSensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 GeoTouchSensor_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 73
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4855
      start: 4781
    functionDepth: 0
    functionLinenumber: 4781
    functionLinenumberEnd: 4855
    functionName: GeoTouchSensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GeoTouchSensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4860,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4861,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4862,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4863,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4864,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4865,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4866,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4867,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4868,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4869,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4870,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4872
      start: 4858
    functionDepth: 0
    functionLinenumber: 4858
    functionLinenumberEnd: 4872
    functionName: GeoTouchSensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 GeoTouchSensor_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4878,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4880,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4884,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4886,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4887,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4888,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4889,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4891
      start: 4875
    functionDepth: 1
    functionLinenumber: 4875
    functionLinenumberEnd: 4891
    functionName: GeoTouchSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcpy
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *GeoTouchSensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4901,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4902,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4903,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4904,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4905,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4906,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4907,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4908,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4909
      start: 4898
    functionDepth: 1
    functionLinenumber: 4898
    functionLinenumberEnd: 4909
    functionName: GeoViewpoint_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_sg_mfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void GeoViewpoint_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4915
      start: 4912
    functionDepth: 0
    functionLinenumber: 4912
    functionLinenumberEnd: 4915
    functionName: GeoViewpoint_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 GeoViewpoint_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 18
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 106
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5024
      start: 4917
    functionDepth: 0
    functionLinenumber: 4917
    functionLinenumberEnd: 5024
    functionName: GeoViewpoint_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GeoViewpoint_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5029,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5030,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5031,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5032,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5033,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5034,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5035,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5036,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5037,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5038,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5039,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5040,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5041,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5042,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5043,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5044,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 34
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5046
      start: 5027
    functionDepth: 0
    functionLinenumber: 5027
    functionLinenumberEnd: 5046
    functionName: GeoViewpoint_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 GeoViewpoint_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5052,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5054,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5057,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5060,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5062,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5063,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5064,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5065,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5066,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5068,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5069,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5070,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5071,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5072,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5073,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5074,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5075,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5079,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5081
      start: 5049
    functionDepth: 1
    functionLinenumber: 5049
    functionLinenumberEnd: 5081
    functionName: GeoViewpoint_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - strcpy
    - gf_node_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *GeoViewpoint_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5091,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5092,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5093,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5094
      start: 5088
    functionDepth: 1
    functionLinenumber: 5088
    functionLinenumberEnd: 5094
    functionName: Group_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Group_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5100
      start: 5097
    functionDepth: 0
    functionLinenumber: 5097
    functionLinenumberEnd: 5100
    functionName: Group_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Group_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 35
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5138
      start: 5102
    functionDepth: 0
    functionLinenumber: 5102
    functionLinenumberEnd: 5138
    functionName: Group_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Group_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5143,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5144,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5145,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5146,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5148
      start: 5141
    functionDepth: 0
    functionLinenumber: 5141
    functionLinenumberEnd: 5148
    functionName: Group_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Group_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5154,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5156,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5157,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5161
      start: 5151
    functionDepth: 1
    functionLinenumber: 5151
    functionLinenumberEnd: 5161
    functionName: Group_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Group_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5171,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5172,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5173,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5174,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5176
      start: 5168
    functionDepth: 1
    functionLinenumber: 5168
    functionLinenumberEnd: 5176
    functionName: HAnimDisplacer_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfint32_del
    - gf_node_free
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_sg_mfvec3f_del
    linkageType: ''
    returnType: void
    signature: void HAnimDisplacer_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5182
      start: 5179
    functionDepth: 0
    functionLinenumber: 5179
    functionLinenumberEnd: 5182
    functionName: HAnimDisplacer_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 HAnimDisplacer_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 36
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5221
      start: 5184
    functionDepth: 0
    functionLinenumber: 5184
    functionLinenumberEnd: 5221
    functionName: HAnimDisplacer_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err HAnimDisplacer_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5226,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5227,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5228,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5229,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5230,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5232
      start: 5224
    functionDepth: 0
    functionLinenumber: 5224
    functionLinenumberEnd: 5232
    functionName: HAnimDisplacer_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 HAnimDisplacer_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5238,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5240,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5243,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5245
      start: 5235
    functionDepth: 1
    functionLinenumber: 5235
    functionLinenumberEnd: 5245
    functionName: HAnimDisplacer_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *HAnimDisplacer_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5255,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5256,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5257,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5258,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5259,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5260,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5261,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5262,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5263,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5264,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5265,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5266,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5268
      start: 5252
    functionDepth: 1
    functionLinenumber: 5252
    functionLinenumberEnd: 5268
    functionName: HAnimHumanoid_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister_children
    - gf_sg_sfstring_del
    - gf_node_unregister
    - gf_sg_mfstring_del
    linkageType: ''
    returnType: void
    signature: void HAnimHumanoid_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5274
      start: 5271
    functionDepth: 0
    functionLinenumber: 5271
    functionLinenumberEnd: 5274
    functionName: HAnimHumanoid_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 HAnimHumanoid_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 19
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 116
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5393
      start: 5276
    functionDepth: 0
    functionLinenumber: 5276
    functionLinenumberEnd: 5393
    functionName: HAnimHumanoid_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err HAnimHumanoid_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5398,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5399,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5400,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5401,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5402,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5403,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5404,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5405,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5406,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5407,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5408,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5409,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5410,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5411,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5412,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5413,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5414,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 36
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5416
      start: 5396
    functionDepth: 0
    functionLinenumber: 5396
    functionLinenumberEnd: 5416
    functionName: HAnimHumanoid_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 HAnimHumanoid_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5422,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5424,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5427,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5428,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5429,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5430,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5431,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5432,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5433,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5434,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5435,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5436,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5437,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5438,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5439,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5440,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5441,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5442,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5443,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5445
      start: 5419
    functionDepth: 1
    functionLinenumber: 5419
    functionLinenumberEnd: 5445
    functionName: HAnimHumanoid_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *HAnimHumanoid_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5455,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5456,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5457,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5458,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5459,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5460,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5461,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5462,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5463,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5465
      start: 5452
    functionDepth: 1
    functionLinenumber: 5452
    functionLinenumberEnd: 5465
    functionName: HAnimJoint_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfint32_del
    - gf_node_free
    - gf_node_unregister_children
    - gf_sg_sfstring_del
    - gf_sg_vrml_parent_destroy
    - gf_sg_mffloat_del
    - gf_node_unregister
    linkageType: ''
    returnType: void
    signature: void HAnimJoint_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5471
      start: 5468
    functionDepth: 0
    functionLinenumber: 5468
    functionLinenumberEnd: 5471
    functionName: HAnimJoint_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 HAnimJoint_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 19
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 114
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5588
      start: 5473
    functionDepth: 0
    functionLinenumber: 5473
    functionLinenumberEnd: 5588
    functionName: HAnimJoint_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err HAnimJoint_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5593,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5594,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5595,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5596,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5597,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5598,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5599,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5600,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5601,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5602,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5603,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5604,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5605,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5606,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5607,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5608,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5609,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 36
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5611
      start: 5591
    functionDepth: 0
    functionLinenumber: 5591
    functionLinenumberEnd: 5611
    functionName: HAnimJoint_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 HAnimJoint_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5617,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5619,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5620,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5623,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5624,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5625,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5626,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5627,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5628,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5629,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5630,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5631,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5632,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5633,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5634,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5635,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5636,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5637,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5638,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5639,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5640,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5641,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5643,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5644,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5645,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5646,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5647,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5648,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 33
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5650
      start: 5614
    functionDepth: 1
    functionLinenumber: 5614
    functionLinenumberEnd: 5650
    functionName: HAnimJoint_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *HAnimJoint_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5660,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5661,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5662,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5663,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5664,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5665,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5666,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5667
      start: 5657
    functionDepth: 1
    functionLinenumber: 5657
    functionLinenumberEnd: 5667
    functionName: HAnimSegment_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister_children
    - gf_sg_sfstring_del
    - gf_sg_vrml_parent_destroy
    - gf_sg_mffloat_del
    - gf_node_unregister
    linkageType: ''
    returnType: void
    signature: void HAnimSegment_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5673
      start: 5670
    functionDepth: 0
    functionLinenumber: 5670
    functionLinenumberEnd: 5673
    functionName: HAnimSegment_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 HAnimSegment_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 73
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5749
      start: 5675
    functionDepth: 0
    functionLinenumber: 5675
    functionLinenumberEnd: 5749
    functionName: HAnimSegment_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err HAnimSegment_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5754,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5755,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5756,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5757,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5758,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5759,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5760,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5761,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5762,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5763,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5765
      start: 5752
    functionDepth: 0
    functionLinenumber: 5752
    functionLinenumberEnd: 5765
    functionName: HAnimSegment_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 HAnimSegment_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5771,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5773,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5774,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5777,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5778,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5779,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5780,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5781,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5783,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5784,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5785,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5786,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5787,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5788,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5789,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5790,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5791,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5793
      start: 5768
    functionDepth: 1
    functionLinenumber: 5768
    functionLinenumberEnd: 5793
    functionName: HAnimSegment_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *HAnimSegment_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5803,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5804,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5805,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5806,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5807
      start: 5800
    functionDepth: 1
    functionLinenumber: 5800
    functionLinenumberEnd: 5807
    functionName: HAnimSite_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    linkageType: ''
    returnType: void
    signature: void HAnimSite_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5813
      start: 5810
    functionDepth: 0
    functionLinenumber: 5810
    functionLinenumberEnd: 5813
    functionName: HAnimSite_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 HAnimSite_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 71
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5887
      start: 5815
    functionDepth: 0
    functionLinenumber: 5815
    functionLinenumberEnd: 5887
    functionName: HAnimSite_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err HAnimSite_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5892,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5893,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5894,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5895,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5896,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5897,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5898,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5899,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5900,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5901,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5903
      start: 5890
    functionDepth: 0
    functionLinenumber: 5890
    functionLinenumberEnd: 5903
    functionName: HAnimSite_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 HAnimSite_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5909,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5911,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5912,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5915,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5916,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5917,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5918,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5919,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5920,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5921,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5922,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5923,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5924,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5925,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5926,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5927,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5928,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5929,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5930,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5931,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5933
      start: 5906
    functionDepth: 1
    functionLinenumber: 5906
    functionLinenumberEnd: 5933
    functionName: HAnimSite_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *HAnimSite_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5943,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5944,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5945,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5946
      start: 5940
    functionDepth: 1
    functionLinenumber: 5940
    functionLinenumberEnd: 5946
    functionName: ImageTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfurl_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void ImageTexture_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5952
      start: 5949
    functionDepth: 0
    functionLinenumber: 5949
    functionLinenumberEnd: 5952
    functionName: ImageTexture_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ImageTexture_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5985
      start: 5954
    functionDepth: 0
    functionLinenumber: 5954
    functionLinenumberEnd: 5985
    functionName: ImageTexture_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ImageTexture_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5990,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5991,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5992,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5993,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5995
      start: 5988
    functionDepth: 0
    functionLinenumber: 5988
    functionLinenumberEnd: 5995
    functionName: ImageTexture_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ImageTexture_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6001,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6003,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6009
      start: 5998
    functionDepth: 1
    functionLinenumber: 5998
    functionLinenumberEnd: 6009
    functionName: ImageTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ImageTexture_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6019,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6020,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6021,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6022,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6023,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6024,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6025,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6026,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6027,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6028,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6029,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6030,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6031,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6032,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6033
      start: 6016
    functionDepth: 1
    functionLinenumber: 6016
    functionLinenumberEnd: 6033
    functionName: IndexedFaceSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void IndexedFaceSet_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6039
      start: 6036
    functionDepth: 0
    functionLinenumber: 6036
    functionLinenumberEnd: 6039
    functionName: IndexedFaceSet_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 IndexedFaceSet_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 128
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6170
      start: 6041
    functionDepth: 0
    functionLinenumber: 6041
    functionLinenumberEnd: 6170
    functionName: IndexedFaceSet_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err IndexedFaceSet_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6175,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6176,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6177,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6178,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6179,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6180,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6181,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6182,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6183,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6184,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6185,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6186,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6187,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6188,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6189,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6190,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6191,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6192,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6193,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 40
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6195
      start: 6173
    functionDepth: 0
    functionLinenumber: 6173
    functionLinenumberEnd: 6195
    functionName: IndexedFaceSet_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 IndexedFaceSet_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6201,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6203,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6209,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6213
      start: 6198
    functionDepth: 1
    functionLinenumber: 6198
    functionLinenumberEnd: 6213
    functionName: IndexedFaceSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *IndexedFaceSet_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6223,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6224,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6225,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6226,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6227,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6228,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6229,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6231
      start: 6220
    functionDepth: 1
    functionLinenumber: 6220
    functionLinenumberEnd: 6231
    functionName: IndexedLineSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void IndexedLineSet_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6237
      start: 6234
    functionDepth: 0
    functionLinenumber: 6234
    functionLinenumberEnd: 6237
    functionName: IndexedLineSet_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 IndexedLineSet_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 58
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6298
      start: 6239
    functionDepth: 0
    functionLinenumber: 6239
    functionLinenumberEnd: 6298
    functionName: IndexedLineSet_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err IndexedLineSet_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6303,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6304,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6305,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6306,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6307,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6308,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6309,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6310,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6312
      start: 6301
    functionDepth: 0
    functionLinenumber: 6301
    functionLinenumberEnd: 6312
    functionName: IndexedLineSet_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 IndexedLineSet_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6318,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6320,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6325
      start: 6315
    functionDepth: 1
    functionLinenumber: 6315
    functionLinenumberEnd: 6325
    functionName: IndexedLineSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *IndexedLineSet_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6335,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6336,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6337,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6338,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6339,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6340,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6341,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6342,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6343
      start: 6332
    functionDepth: 1
    functionLinenumber: 6332
    functionLinenumberEnd: 6343
    functionName: IndexedTriangleFanSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void IndexedTriangleFanSet_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6349
      start: 6346
    functionDepth: 0
    functionLinenumber: 6346
    functionLinenumberEnd: 6349
    functionName: IndexedTriangleFanSet_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 IndexedTriangleFanSet_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 77
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6429
      start: 6351
    functionDepth: 0
    functionLinenumber: 6351
    functionLinenumberEnd: 6429
    functionName: IndexedTriangleFanSet_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err IndexedTriangleFanSet_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6434,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6435,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6436,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6437,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6438,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6439,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6440,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6441,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6442,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6443,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6444,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6446
      start: 6432
    functionDepth: 0
    functionLinenumber: 6432
    functionLinenumberEnd: 6446
    functionName: IndexedTriangleFanSet_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 IndexedTriangleFanSet_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6452,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6454,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6462
      start: 6449
    functionDepth: 1
    functionLinenumber: 6449
    functionLinenumberEnd: 6462
    functionName: IndexedTriangleFanSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *IndexedTriangleFanSet_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6472,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6473,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6474,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6475,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6476,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6477,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6478,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6480
      start: 6469
    functionDepth: 1
    functionLinenumber: 6469
    functionLinenumberEnd: 6480
    functionName: IndexedTriangleSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void IndexedTriangleSet_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6486
      start: 6483
    functionDepth: 0
    functionLinenumber: 6483
    functionLinenumberEnd: 6486
    functionName: IndexedTriangleSet_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 IndexedTriangleSet_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 77
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6566
      start: 6488
    functionDepth: 0
    functionLinenumber: 6488
    functionLinenumberEnd: 6566
    functionName: IndexedTriangleSet_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err IndexedTriangleSet_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6571,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6572,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6573,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6574,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6575,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6576,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6577,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6578,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6579,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6580,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6581,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6583
      start: 6569
    functionDepth: 0
    functionLinenumber: 6569
    functionLinenumberEnd: 6583
    functionName: IndexedTriangleSet_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 IndexedTriangleSet_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6589,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6591,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6599
      start: 6586
    functionDepth: 1
    functionLinenumber: 6586
    functionLinenumberEnd: 6599
    functionName: IndexedTriangleSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *IndexedTriangleSet_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6609,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6610,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6611,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6612,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6613,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6614,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6615,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6616,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6617
      start: 6606
    functionDepth: 1
    functionLinenumber: 6606
    functionLinenumberEnd: 6617
    functionName: IndexedTriangleStripSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void IndexedTriangleStripSet_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6623
      start: 6620
    functionDepth: 0
    functionLinenumber: 6620
    functionLinenumberEnd: 6623
    functionName: IndexedTriangleStripSet_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 IndexedTriangleStripSet_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 77
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6703
      start: 6625
    functionDepth: 0
    functionLinenumber: 6625
    functionLinenumberEnd: 6703
    functionName: IndexedTriangleStripSet_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err IndexedTriangleStripSet_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6708,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6709,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6710,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6711,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6712,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6713,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6714,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6715,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6716,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6717,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6718,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6720
      start: 6706
    functionDepth: 0
    functionLinenumber: 6706
    functionLinenumberEnd: 6720
    functionName: IndexedTriangleStripSet_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 IndexedTriangleStripSet_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6726,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6728,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6731,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6736
      start: 6723
    functionDepth: 1
    functionLinenumber: 6723
    functionLinenumberEnd: 6736
    functionName: IndexedTriangleStripSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *IndexedTriangleStripSet_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6746,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6747,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6748,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6749
      start: 6743
    functionDepth: 1
    functionLinenumber: 6743
    functionLinenumberEnd: 6749
    functionName: Inline_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfurl_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Inline_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6755
      start: 6752
    functionDepth: 0
    functionLinenumber: 6752
    functionLinenumberEnd: 6755
    functionName: Inline_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Inline_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6782
      start: 6757
    functionDepth: 0
    functionLinenumber: 6757
    functionLinenumberEnd: 6782
    functionName: Inline_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Inline_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6787,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6788,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6789,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6791
      start: 6785
    functionDepth: 0
    functionLinenumber: 6785
    functionLinenumberEnd: 6791
    functionName: Inline_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Inline_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6797,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6799,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6804
      start: 6794
    functionDepth: 1
    functionLinenumber: 6794
    functionLinenumberEnd: 6804
    functionName: Inline_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Inline_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6814,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6815,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6816,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6817,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6818
      start: 6811
    functionDepth: 1
    functionLinenumber: 6811
    functionLinenumberEnd: 6818
    functionName: IntegerSequencer_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void IntegerSequencer_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6824
      start: 6821
    functionDepth: 0
    functionLinenumber: 6821
    functionLinenumberEnd: 6824
    functionName: IntegerSequencer_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 IntegerSequencer_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 51
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6878
      start: 6826
    functionDepth: 0
    functionLinenumber: 6826
    functionLinenumberEnd: 6878
    functionName: IntegerSequencer_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err IntegerSequencer_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6883,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6884,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6885,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6886,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6887,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6888,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6889,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6891
      start: 6881
    functionDepth: 0
    functionLinenumber: 6881
    functionLinenumberEnd: 6891
    functionName: IntegerSequencer_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 IntegerSequencer_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6897,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6899,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6903
      start: 6894
    functionDepth: 1
    functionLinenumber: 6894
    functionLinenumberEnd: 6903
    functionName: IntegerSequencer_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *IntegerSequencer_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6913,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6914,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6915
      start: 6910
    functionDepth: 1
    functionLinenumber: 6910
    functionLinenumberEnd: 6915
    functionName: IntegerTrigger_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void IntegerTrigger_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6921
      start: 6918
    functionDepth: 0
    functionLinenumber: 6918
    functionLinenumberEnd: 6921
    functionName: IntegerTrigger_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 IntegerTrigger_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6955
      start: 6923
    functionDepth: 0
    functionLinenumber: 6923
    functionLinenumberEnd: 6955
    functionName: IntegerTrigger_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err IntegerTrigger_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6960,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6961,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6962,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6963,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6965
      start: 6958
    functionDepth: 0
    functionLinenumber: 6958
    functionLinenumberEnd: 6965
    functionName: IntegerTrigger_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 IntegerTrigger_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6971,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6973,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6978
      start: 6968
    functionDepth: 1
    functionLinenumber: 6968
    functionLinenumberEnd: 6978
    functionName: IntegerTrigger_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *IntegerTrigger_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6988,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6989,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6990,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6991,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6992
      start: 6985
    functionDepth: 1
    functionLinenumber: 6985
    functionLinenumberEnd: 6992
    functionName: KeySensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void KeySensor_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6998
      start: 6995
    functionDepth: 0
    functionLinenumber: 6995
    functionLinenumberEnd: 6998
    functionName: KeySensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 KeySensor_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 66
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7067
      start: 7000
    functionDepth: 0
    functionLinenumber: 7000
    functionLinenumberEnd: 7067
    functionName: KeySensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err KeySensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7072,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7073,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7074,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7075,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7076,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7077,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7078,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7079,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7080,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7081,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7083
      start: 7070
    functionDepth: 0
    functionLinenumber: 7070
    functionLinenumberEnd: 7083
    functionName: KeySensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 KeySensor_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7089,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7091,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7096
      start: 7086
    functionDepth: 1
    functionLinenumber: 7086
    functionLinenumberEnd: 7096
    functionName: KeySensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *KeySensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7106,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7108
      start: 7103
    functionDepth: 1
    functionLinenumber: 7103
    functionLinenumberEnd: 7108
    functionName: LineProperties_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void LineProperties_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7114
      start: 7111
    functionDepth: 0
    functionLinenumber: 7111
    functionLinenumberEnd: 7114
    functionName: LineProperties_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 LineProperties_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7147
      start: 7116
    functionDepth: 0
    functionLinenumber: 7116
    functionLinenumberEnd: 7147
    functionName: LineProperties_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LineProperties_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7152,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7153,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7154,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7155,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7157
      start: 7150
    functionDepth: 0
    functionLinenumber: 7150
    functionLinenumberEnd: 7157
    functionName: LineProperties_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 LineProperties_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7163,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7165,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7170,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7172
      start: 7160
    functionDepth: 1
    functionLinenumber: 7160
    functionLinenumberEnd: 7172
    functionName: LineProperties_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *LineProperties_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7182,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7183,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7184,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7185,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7187
      start: 7179
    functionDepth: 1
    functionLinenumber: 7179
    functionLinenumberEnd: 7187
    functionName: LineSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void LineSet_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7193
      start: 7190
    functionDepth: 0
    functionLinenumber: 7190
    functionLinenumberEnd: 7193
    functionName: LineSet_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 LineSet_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 32
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7228
      start: 7195
    functionDepth: 0
    functionLinenumber: 7195
    functionLinenumberEnd: 7228
    functionName: LineSet_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LineSet_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7233,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7234,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7235,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7236,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7238
      start: 7231
    functionDepth: 0
    functionLinenumber: 7231
    functionLinenumberEnd: 7238
    functionName: LineSet_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 LineSet_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7244,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7246,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7250
      start: 7241
    functionDepth: 1
    functionLinenumber: 7241
    functionLinenumberEnd: 7250
    functionName: LineSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *LineSet_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7260,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7261,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7263
      start: 7257
    functionDepth: 1
    functionLinenumber: 7257
    functionLinenumberEnd: 7263
    functionName: LoadSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_unregister_children
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void LoadSensor_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7269
      start: 7266
    functionDepth: 0
    functionLinenumber: 7266
    functionLinenumberEnd: 7269
    functionName: LoadSensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 LoadSensor_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 55
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7327
      start: 7271
    functionDepth: 0
    functionLinenumber: 7271
    functionLinenumberEnd: 7327
    functionName: LoadSensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LoadSensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7332,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7333,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7334,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7335,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7336,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7337,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7338,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7339,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7341
      start: 7330
    functionDepth: 0
    functionLinenumber: 7330
    functionLinenumberEnd: 7341
    functionName: LoadSensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 LoadSensor_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7347,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7349,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7355
      start: 7344
    functionDepth: 1
    functionLinenumber: 7344
    functionLinenumberEnd: 7355
    functionName: LoadSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *LoadSensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7365,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7366,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7367,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7368,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7369
      start: 7362
    functionDepth: 1
    functionLinenumber: 7362
    functionLinenumberEnd: 7369
    functionName: LOD_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void LOD_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7375
      start: 7372
    functionDepth: 0
    functionLinenumber: 7372
    functionLinenumberEnd: 7375
    functionName: LOD_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 LOD_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 47
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7425
      start: 7377
    functionDepth: 0
    functionLinenumber: 7377
    functionLinenumberEnd: 7425
    functionName: LOD_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LOD_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7430,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7431,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7432,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7433,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7434,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7435,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7437
      start: 7428
    functionDepth: 0
    functionLinenumber: 7428
    functionLinenumberEnd: 7437
    functionName: LOD_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 LOD_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7443,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7445,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7446,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7449,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7450,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7451,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7453
      start: 7440
    functionDepth: 1
    functionLinenumber: 7440
    functionLinenumberEnd: 7453
    functionName: LOD_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *LOD_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7463,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7465
      start: 7460
    functionDepth: 1
    functionLinenumber: 7460
    functionLinenumberEnd: 7465
    functionName: Material_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Material_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7471
      start: 7468
    functionDepth: 0
    functionLinenumber: 7468
    functionLinenumberEnd: 7471
    functionName: Material_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Material_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 48
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7522
      start: 7473
    functionDepth: 0
    functionLinenumber: 7473
    functionLinenumberEnd: 7522
    functionName: Material_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Material_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7527,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7528,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7529,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7530,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7531,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7532,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7533,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7535
      start: 7525
    functionDepth: 0
    functionLinenumber: 7525
    functionLinenumberEnd: 7535
    functionName: Material_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Material_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7541,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7543,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7546,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7547,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7548,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7549,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7550,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7551,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7552,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7553,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7554,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7555,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7556,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7557,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7559
      start: 7538
    functionDepth: 1
    functionLinenumber: 7538
    functionLinenumberEnd: 7559
    functionName: Material_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Material_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7569,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7570,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7571,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7572,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7573,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7574
      start: 7566
    functionDepth: 1
    functionLinenumber: 7566
    functionLinenumberEnd: 7574
    functionName: MetadataDouble_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_sg_mfdouble_del
    linkageType: ''
    returnType: void
    signature: void MetadataDouble_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7580
      start: 7577
    functionDepth: 0
    functionLinenumber: 7577
    functionLinenumberEnd: 7580
    functionName: MetadataDouble_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 MetadataDouble_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7613
      start: 7582
    functionDepth: 0
    functionLinenumber: 7582
    functionLinenumberEnd: 7613
    functionName: MetadataDouble_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MetadataDouble_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7618,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7619,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7620,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7621,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7623
      start: 7616
    functionDepth: 0
    functionLinenumber: 7616
    functionLinenumberEnd: 7623
    functionName: MetadataDouble_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 MetadataDouble_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7629,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7631,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7635
      start: 7626
    functionDepth: 1
    functionLinenumber: 7626
    functionLinenumberEnd: 7635
    functionName: MetadataDouble_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *MetadataDouble_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7645,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7646,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7647,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7648,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7649,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7650
      start: 7642
    functionDepth: 1
    functionLinenumber: 7642
    functionLinenumberEnd: 7650
    functionName: MetadataFloat_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void MetadataFloat_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7656
      start: 7653
    functionDepth: 0
    functionLinenumber: 7653
    functionLinenumberEnd: 7656
    functionName: MetadataFloat_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 MetadataFloat_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7689
      start: 7658
    functionDepth: 0
    functionLinenumber: 7658
    functionLinenumberEnd: 7689
    functionName: MetadataFloat_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MetadataFloat_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7694,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7695,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7696,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7697,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7699
      start: 7692
    functionDepth: 0
    functionLinenumber: 7692
    functionLinenumberEnd: 7699
    functionName: MetadataFloat_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 MetadataFloat_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7705,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7707,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7711
      start: 7702
    functionDepth: 1
    functionLinenumber: 7702
    functionLinenumberEnd: 7711
    functionName: MetadataFloat_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *MetadataFloat_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7721,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7722,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7723,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7724,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7725,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7726
      start: 7718
    functionDepth: 1
    functionLinenumber: 7718
    functionLinenumberEnd: 7726
    functionName: MetadataInteger_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_sg_mfint32_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void MetadataInteger_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7732
      start: 7729
    functionDepth: 0
    functionLinenumber: 7729
    functionLinenumberEnd: 7732
    functionName: MetadataInteger_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 MetadataInteger_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7765
      start: 7734
    functionDepth: 0
    functionLinenumber: 7734
    functionLinenumberEnd: 7765
    functionName: MetadataInteger_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MetadataInteger_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7770,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7771,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7772,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7773,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7775
      start: 7768
    functionDepth: 0
    functionLinenumber: 7768
    functionLinenumberEnd: 7775
    functionName: MetadataInteger_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 MetadataInteger_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7781,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7783,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7787
      start: 7778
    functionDepth: 1
    functionLinenumber: 7778
    functionLinenumberEnd: 7787
    functionName: MetadataInteger_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *MetadataInteger_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7797,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7798,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7799,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7800,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7801,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7802
      start: 7794
    functionDepth: 1
    functionLinenumber: 7794
    functionLinenumberEnd: 7802
    functionName: MetadataSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_unregister_children
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void MetadataSet_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7808
      start: 7805
    functionDepth: 0
    functionLinenumber: 7805
    functionLinenumberEnd: 7808
    functionName: MetadataSet_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 MetadataSet_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7842
      start: 7810
    functionDepth: 0
    functionLinenumber: 7810
    functionLinenumberEnd: 7842
    functionName: MetadataSet_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MetadataSet_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7847,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7848,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7849,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7850,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7852
      start: 7845
    functionDepth: 0
    functionLinenumber: 7845
    functionLinenumberEnd: 7852
    functionName: MetadataSet_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 MetadataSet_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7858,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7860,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7864
      start: 7855
    functionDepth: 1
    functionLinenumber: 7855
    functionLinenumberEnd: 7864
    functionName: MetadataSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *MetadataSet_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7874,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7875,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7876,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7877,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7878,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7879
      start: 7871
    functionDepth: 1
    functionLinenumber: 7871
    functionLinenumberEnd: 7879
    functionName: MetadataString_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_sg_mfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void MetadataString_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7885
      start: 7882
    functionDepth: 0
    functionLinenumber: 7882
    functionLinenumberEnd: 7885
    functionName: MetadataString_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 MetadataString_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7918
      start: 7887
    functionDepth: 0
    functionLinenumber: 7887
    functionLinenumberEnd: 7918
    functionName: MetadataString_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MetadataString_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7923,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7924,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7925,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7926,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7928
      start: 7921
    functionDepth: 0
    functionLinenumber: 7921
    functionLinenumberEnd: 7928
    functionName: MetadataString_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 MetadataString_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7934,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7936,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7940
      start: 7931
    functionDepth: 1
    functionLinenumber: 7931
    functionLinenumberEnd: 7940
    functionName: MetadataString_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *MetadataString_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7950,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7951,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7952,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7953
      start: 7947
    functionDepth: 1
    functionLinenumber: 7947
    functionLinenumberEnd: 7953
    functionName: MovieTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfurl_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void MovieTexture_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7959
      start: 7956
    functionDepth: 0
    functionLinenumber: 7956
    functionLinenumberEnd: 7959
    functionName: MovieTexture_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 MovieTexture_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 90
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8052
      start: 7961
    functionDepth: 0
    functionLinenumber: 7961
    functionLinenumberEnd: 8052
    functionName: MovieTexture_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MovieTexture_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8057,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8058,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8059,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8060,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8061,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8062,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8063,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8064,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8065,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8066,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8067,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8068,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8069,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8070,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 30
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8072
      start: 8055
    functionDepth: 0
    functionLinenumber: 8055
    functionLinenumberEnd: 8072
    functionName: MovieTexture_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 MovieTexture_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8078,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8080,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8083,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8091
      start: 8075
    functionDepth: 1
    functionLinenumber: 8075
    functionLinenumberEnd: 8091
    functionName: MovieTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *MovieTexture_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8101,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8102,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8103,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8104,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8105,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8107
      start: 8098
    functionDepth: 1
    functionLinenumber: 8098
    functionLinenumberEnd: 8107
    functionName: MultiTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_unregister_children
    - gf_sg_mfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void MultiTexture_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8113
      start: 8110
    functionDepth: 0
    functionLinenumber: 8110
    functionLinenumberEnd: 8113
    functionName: MultiTexture_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 MultiTexture_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 49
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8165
      start: 8115
    functionDepth: 0
    functionLinenumber: 8115
    functionLinenumberEnd: 8165
    functionName: MultiTexture_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MultiTexture_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8170,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8171,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8172,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8173,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8174,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8175,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8176,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8178
      start: 8168
    functionDepth: 0
    functionLinenumber: 8168
    functionLinenumberEnd: 8178
    functionName: MultiTexture_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 MultiTexture_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8184,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8186,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8189,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8190,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8191,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8192,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8194
      start: 8181
    functionDepth: 1
    functionLinenumber: 8181
    functionLinenumberEnd: 8194
    functionName: MultiTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *MultiTexture_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8204,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8205,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8207
      start: 8201
    functionDepth: 1
    functionLinenumber: 8201
    functionLinenumberEnd: 8207
    functionName: MultiTextureCoordinate_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_unregister_children
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void MultiTextureCoordinate_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8213
      start: 8210
    functionDepth: 0
    functionLinenumber: 8210
    functionLinenumberEnd: 8213
    functionName: MultiTextureCoordinate_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 MultiTextureCoordinate_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8235
      start: 8215
    functionDepth: 0
    functionLinenumber: 8215
    functionLinenumberEnd: 8235
    functionName: MultiTextureCoordinate_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MultiTextureCoordinate_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8240,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8241,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8243
      start: 8238
    functionDepth: 0
    functionLinenumber: 8238
    functionLinenumberEnd: 8243
    functionName: MultiTextureCoordinate_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 MultiTextureCoordinate_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8249,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8251,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8255
      start: 8246
    functionDepth: 1
    functionLinenumber: 8246
    functionLinenumberEnd: 8255
    functionName: MultiTextureCoordinate_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *MultiTextureCoordinate_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8265,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8266,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8268
      start: 8262
    functionDepth: 1
    functionLinenumber: 8262
    functionLinenumberEnd: 8268
    functionName: MultiTextureTransform_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_unregister_children
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void MultiTextureTransform_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8274
      start: 8271
    functionDepth: 0
    functionLinenumber: 8271
    functionLinenumberEnd: 8274
    functionName: MultiTextureTransform_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 MultiTextureTransform_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8296
      start: 8276
    functionDepth: 0
    functionLinenumber: 8276
    functionLinenumberEnd: 8296
    functionName: MultiTextureTransform_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MultiTextureTransform_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8301,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8302,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8304
      start: 8299
    functionDepth: 0
    functionLinenumber: 8299
    functionLinenumberEnd: 8304
    functionName: MultiTextureTransform_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 MultiTextureTransform_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8310,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8312,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8316
      start: 8307
    functionDepth: 1
    functionLinenumber: 8307
    functionLinenumberEnd: 8316
    functionName: MultiTextureTransform_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *MultiTextureTransform_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8326,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8327,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8328,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8329,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8330,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8331
      start: 8323
    functionDepth: 1
    functionLinenumber: 8323
    functionLinenumberEnd: 8331
    functionName: NavigationInfo_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfstring_del
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void NavigationInfo_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8337
      start: 8334
    functionDepth: 0
    functionLinenumber: 8334
    functionLinenumberEnd: 8337
    functionName: NavigationInfo_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NavigationInfo_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 67
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8407
      start: 8339
    functionDepth: 0
    functionLinenumber: 8339
    functionLinenumberEnd: 8407
    functionName: NavigationInfo_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NavigationInfo_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8412,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8413,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8414,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8415,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8416,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8417,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8418,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8419,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8420,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8421,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8423
      start: 8410
    functionDepth: 0
    functionLinenumber: 8410
    functionLinenumberEnd: 8423
    functionName: NavigationInfo_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 NavigationInfo_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8429,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8431,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8434,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8436,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8437,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8438,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8440,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8441,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8443,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8444,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8445,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8446,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8447,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8448,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8450,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8451,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8452,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8453,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8455
      start: 8426
    functionDepth: 1
    functionLinenumber: 8426
    functionLinenumberEnd: 8455
    functionName: NavigationInfo_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - strcpy
    - gf_node_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *NavigationInfo_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8465,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8466,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8467,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8468
      start: 8462
    functionDepth: 1
    functionLinenumber: 8462
    functionLinenumberEnd: 8468
    functionName: Normal_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec3f_del
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Normal_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8474
      start: 8471
    functionDepth: 0
    functionLinenumber: 8471
    functionLinenumberEnd: 8474
    functionName: Normal_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Normal_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8495
      start: 8476
    functionDepth: 0
    functionLinenumber: 8476
    functionLinenumberEnd: 8495
    functionName: Normal_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Normal_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8500,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8501,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8503
      start: 8498
    functionDepth: 0
    functionLinenumber: 8498
    functionLinenumberEnd: 8503
    functionName: Normal_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Normal_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8509,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8511,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8515
      start: 8506
    functionDepth: 1
    functionLinenumber: 8506
    functionLinenumberEnd: 8515
    functionName: Normal_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Normal_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8525,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8526,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8527,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8528,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8529,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8530
      start: 8522
    functionDepth: 1
    functionLinenumber: 8522
    functionLinenumberEnd: 8530
    functionName: NormalInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec3f_del
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void NormalInterpolator_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8536
      start: 8533
    functionDepth: 0
    functionLinenumber: 8533
    functionLinenumberEnd: 8536
    functionName: NormalInterpolator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NormalInterpolator_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 37
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8576
      start: 8538
    functionDepth: 0
    functionLinenumber: 8538
    functionLinenumberEnd: 8576
    functionName: NormalInterpolator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NormalInterpolator_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8581,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8582,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8583,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8584,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8585,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8587
      start: 8579
    functionDepth: 0
    functionLinenumber: 8579
    functionLinenumberEnd: 8587
    functionName: NormalInterpolator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 NormalInterpolator_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8593,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8595,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8599
      start: 8590
    functionDepth: 1
    functionLinenumber: 8590
    functionLinenumberEnd: 8599
    functionName: NormalInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *NormalInterpolator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8609,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8610,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8611,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8612,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8613,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8614
      start: 8606
    functionDepth: 1
    functionLinenumber: 8606
    functionLinenumberEnd: 8614
    functionName: NurbsCurve_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfdouble_del
    - gf_node_free
    - gf_node_unregister
    - gf_sg_mffloat_del
    - gf_sg_mfvec3f_del
    linkageType: ''
    returnType: void
    signature: void NurbsCurve_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8620
      start: 8617
    functionDepth: 0
    functionLinenumber: 8617
    functionLinenumberEnd: 8620
    functionName: NurbsCurve_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NurbsCurve_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 48
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8671
      start: 8622
    functionDepth: 0
    functionLinenumber: 8622
    functionLinenumberEnd: 8671
    functionName: NurbsCurve_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NurbsCurve_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8676,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8677,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8678,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8679,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8680,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8681,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8682,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8684
      start: 8674
    functionDepth: 0
    functionLinenumber: 8674
    functionLinenumberEnd: 8684
    functionName: NurbsCurve_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 NurbsCurve_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8690,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8692,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8698
      start: 8687
    functionDepth: 1
    functionLinenumber: 8687
    functionLinenumberEnd: 8698
    functionName: NurbsCurve_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *NurbsCurve_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8708,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8709,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8710,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8711,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8712,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8713
      start: 8705
    functionDepth: 1
    functionLinenumber: 8705
    functionLinenumberEnd: 8713
    functionName: NurbsCurve2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfvec2f_del
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void NurbsCurve2D_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8719
      start: 8716
    functionDepth: 0
    functionLinenumber: 8716
    functionLinenumberEnd: 8719
    functionName: NurbsCurve2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NurbsCurve2D_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 48
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8770
      start: 8721
    functionDepth: 0
    functionLinenumber: 8721
    functionLinenumberEnd: 8770
    functionName: NurbsCurve2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NurbsCurve2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8775,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8776,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8777,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8778,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8779,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8780,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8781,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8783
      start: 8773
    functionDepth: 0
    functionLinenumber: 8773
    functionLinenumberEnd: 8783
    functionName: NurbsCurve2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 NurbsCurve2D_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8789,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8791,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8797
      start: 8786
    functionDepth: 1
    functionLinenumber: 8786
    functionLinenumberEnd: 8797
    functionName: NurbsCurve2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *NurbsCurve2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8807,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8808,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8809,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8810,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8811,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8812
      start: 8804
    functionDepth: 1
    functionLinenumber: 8804
    functionLinenumberEnd: 8812
    functionName: NurbsOrientationInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfdouble_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void NurbsOrientationInterpolator_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8818
      start: 8815
    functionDepth: 0
    functionLinenumber: 8815
    functionLinenumberEnd: 8818
    functionName: NurbsOrientationInterpolator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NurbsOrientationInterpolator_get_field_count(GF_Node *node, u8
      dummy)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 50
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8871
      start: 8820
    functionDepth: 0
    functionLinenumber: 8820
    functionLinenumberEnd: 8871
    functionName: NurbsOrientationInterpolator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NurbsOrientationInterpolator_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8876,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8877,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8878,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8879,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8880,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8881,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8882,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8884
      start: 8874
    functionDepth: 0
    functionLinenumber: 8874
    functionLinenumberEnd: 8884
    functionName: NurbsOrientationInterpolator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 NurbsOrientationInterpolator_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8890,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8892,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8897
      start: 8887
    functionDepth: 1
    functionLinenumber: 8887
    functionLinenumberEnd: 8897
    functionName: NurbsOrientationInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *NurbsOrientationInterpolator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8907,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8908,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8909,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8910,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8911,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8912,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8913,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8914
      start: 8904
    functionDepth: 1
    functionLinenumber: 8904
    functionLinenumberEnd: 8914
    functionName: NurbsPatchSurface_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfdouble_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void NurbsPatchSurface_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8920
      start: 8917
    functionDepth: 0
    functionLinenumber: 8917
    functionLinenumberEnd: 8920
    functionName: NurbsPatchSurface_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NurbsPatchSurface_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 98
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9021
      start: 8922
    functionDepth: 0
    functionLinenumber: 8922
    functionLinenumberEnd: 9021
    functionName: NurbsPatchSurface_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NurbsPatchSurface_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9026,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9027,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9028,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9029,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9030,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9031,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9032,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9033,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9034,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9035,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9036,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9037,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9038,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9039,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9040,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 32
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9042
      start: 9024
    functionDepth: 0
    functionLinenumber: 9024
    functionLinenumberEnd: 9042
    functionName: NurbsPatchSurface_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 NurbsPatchSurface_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9048,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9050,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9061
      start: 9045
    functionDepth: 1
    functionLinenumber: 9045
    functionLinenumberEnd: 9061
    functionName: NurbsPatchSurface_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *NurbsPatchSurface_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9071,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9072,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9073,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9074,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9075,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9076
      start: 9068
    functionDepth: 1
    functionLinenumber: 9068
    functionLinenumberEnd: 9076
    functionName: NurbsPositionInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfdouble_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void NurbsPositionInterpolator_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9082
      start: 9079
    functionDepth: 0
    functionLinenumber: 9079
    functionLinenumberEnd: 9082
    functionName: NurbsPositionInterpolator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NurbsPositionInterpolator_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 50
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9135
      start: 9084
    functionDepth: 0
    functionLinenumber: 9084
    functionLinenumberEnd: 9135
    functionName: NurbsPositionInterpolator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NurbsPositionInterpolator_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9140,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9141,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9142,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9143,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9144,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9145,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9146,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9148
      start: 9138
    functionDepth: 0
    functionLinenumber: 9138
    functionLinenumberEnd: 9148
    functionName: NurbsPositionInterpolator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 NurbsPositionInterpolator_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9154,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9156,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9161
      start: 9151
    functionDepth: 1
    functionLinenumber: 9151
    functionLinenumberEnd: 9161
    functionName: NurbsPositionInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *NurbsPositionInterpolator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9171,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9172,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9173,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9174,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9176
      start: 9168
    functionDepth: 1
    functionLinenumber: 9168
    functionLinenumberEnd: 9176
    functionName: NurbsSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_unregister_children
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void NurbsSet_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9182
      start: 9179
    functionDepth: 0
    functionLinenumber: 9179
    functionLinenumberEnd: 9182
    functionName: NurbsSet_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NurbsSet_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9226
      start: 9184
    functionDepth: 0
    functionLinenumber: 9184
    functionLinenumberEnd: 9226
    functionName: NurbsSet_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NurbsSet_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9231,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9232,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9233,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9234,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9235,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9237
      start: 9229
    functionDepth: 0
    functionLinenumber: 9229
    functionLinenumberEnd: 9237
    functionName: NurbsSet_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 NurbsSet_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9243,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9245,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9248,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9250
      start: 9240
    functionDepth: 1
    functionLinenumber: 9240
    functionLinenumberEnd: 9250
    functionName: NurbsSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *NurbsSet_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9260,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9261,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9262,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9263,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9264,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9266
      start: 9257
    functionDepth: 1
    functionLinenumber: 9257
    functionLinenumberEnd: 9266
    functionName: NurbsSurfaceInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfdouble_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void NurbsSurfaceInterpolator_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9272
      start: 9269
    functionDepth: 0
    functionLinenumber: 9269
    functionLinenumberEnd: 9272
    functionName: NurbsSurfaceInterpolator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NurbsSurfaceInterpolator_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 80
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9355
      start: 9274
    functionDepth: 0
    functionLinenumber: 9274
    functionLinenumberEnd: 9355
    functionName: NurbsSurfaceInterpolator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NurbsSurfaceInterpolator_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9360,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9361,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9362,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9363,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9364,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9365,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9366,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9367,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9368,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9369,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9370,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9371,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9373
      start: 9358
    functionDepth: 0
    functionLinenumber: 9358
    functionLinenumberEnd: 9373
    functionName: NurbsSurfaceInterpolator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 NurbsSurfaceInterpolator_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9379,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9381,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9389
      start: 9376
    functionDepth: 1
    functionLinenumber: 9376
    functionLinenumberEnd: 9389
    functionName: NurbsSurfaceInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *NurbsSurfaceInterpolator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9399,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9400,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9401,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9402,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9403
      start: 9396
    functionDepth: 1
    functionLinenumber: 9396
    functionLinenumberEnd: 9403
    functionName: NurbsSweptSurface_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void NurbsSweptSurface_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9409
      start: 9406
    functionDepth: 0
    functionLinenumber: 9406
    functionLinenumberEnd: 9409
    functionName: NurbsSweptSurface_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NurbsSweptSurface_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 38
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9450
      start: 9411
    functionDepth: 0
    functionLinenumber: 9411
    functionLinenumberEnd: 9450
    functionName: NurbsSweptSurface_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NurbsSweptSurface_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9455,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9456,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9457,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9458,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9459,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9461
      start: 9453
    functionDepth: 0
    functionLinenumber: 9453
    functionLinenumberEnd: 9461
    functionName: NurbsSweptSurface_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 NurbsSweptSurface_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9467,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9469,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9475
      start: 9464
    functionDepth: 1
    functionLinenumber: 9464
    functionLinenumberEnd: 9475
    functionName: NurbsSweptSurface_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *NurbsSweptSurface_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9485,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9486,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9487,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9488,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9489
      start: 9482
    functionDepth: 1
    functionLinenumber: 9482
    functionLinenumberEnd: 9489
    functionName: NurbsSwungSurface_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void NurbsSwungSurface_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9495
      start: 9492
    functionDepth: 0
    functionLinenumber: 9492
    functionLinenumberEnd: 9495
    functionName: NurbsSwungSurface_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NurbsSwungSurface_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 38
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9536
      start: 9497
    functionDepth: 0
    functionLinenumber: 9497
    functionLinenumberEnd: 9536
    functionName: NurbsSwungSurface_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NurbsSwungSurface_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9541,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9542,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9543,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9544,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9545,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9547
      start: 9539
    functionDepth: 0
    functionLinenumber: 9539
    functionLinenumberEnd: 9547
    functionName: NurbsSwungSurface_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 NurbsSwungSurface_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9553,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9555,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9561
      start: 9550
    functionDepth: 1
    functionLinenumber: 9550
    functionLinenumberEnd: 9561
    functionName: NurbsSwungSurface_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *NurbsSwungSurface_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9571,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9572,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9573,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9574,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9575,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9576,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9577
      start: 9568
    functionDepth: 1
    functionLinenumber: 9568
    functionLinenumberEnd: 9577
    functionName: NurbsTextureCoordinate_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec2f_del
    - gf_sg_mfdouble_del
    - gf_node_free
    - gf_sg_mffloat_del
    - gf_node_unregister
    linkageType: ''
    returnType: void
    signature: void NurbsTextureCoordinate_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9583
      start: 9580
    functionDepth: 0
    functionLinenumber: 9580
    functionLinenumberEnd: 9583
    functionName: NurbsTextureCoordinate_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NurbsTextureCoordinate_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 60
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9646
      start: 9585
    functionDepth: 0
    functionLinenumber: 9585
    functionLinenumberEnd: 9646
    functionName: NurbsTextureCoordinate_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NurbsTextureCoordinate_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9651,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9652,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9653,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9654,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9655,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9656,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9657,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9658,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9659,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9661
      start: 9649
    functionDepth: 0
    functionLinenumber: 9649
    functionLinenumberEnd: 9661
    functionName: NurbsTextureCoordinate_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 NurbsTextureCoordinate_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9667,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9669,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9677
      start: 9664
    functionDepth: 1
    functionLinenumber: 9664
    functionLinenumberEnd: 9677
    functionName: NurbsTextureCoordinate_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *NurbsTextureCoordinate_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9687,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9688,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9689,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9690,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9691,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9692,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9693,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9694,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9695,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9696,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9697
      start: 9684
    functionDepth: 1
    functionLinenumber: 9684
    functionLinenumberEnd: 9697
    functionName: NurbsTrimmedSurface_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_unregister_children
    - gf_sg_mfdouble_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void NurbsTrimmedSurface_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9703
      start: 9700
    functionDepth: 0
    functionLinenumber: 9700
    functionLinenumberEnd: 9703
    functionName: NurbsTrimmedSurface_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NurbsTrimmedSurface_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 20
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 121
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9827
      start: 9705
    functionDepth: 0
    functionLinenumber: 9705
    functionLinenumberEnd: 9827
    functionName: NurbsTrimmedSurface_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NurbsTrimmedSurface_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9832,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9833,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9834,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9835,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9836,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9837,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9838,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9839,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9840,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9841,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9842,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9843,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9844,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9845,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9846,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9847,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9848,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9849,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 38
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9851
      start: 9830
    functionDepth: 0
    functionLinenumber: 9830
    functionLinenumberEnd: 9851
    functionName: NurbsTrimmedSurface_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 NurbsTrimmedSurface_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9857,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9859,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9870
      start: 9854
    functionDepth: 1
    functionLinenumber: 9854
    functionLinenumberEnd: 9870
    functionName: NurbsTrimmedSurface_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *NurbsTrimmedSurface_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9880,1
    - Dst: gf_sg_mfrotation_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9881,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9882,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9883,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9884
      start: 9877
    functionDepth: 1
    functionLinenumber: 9877
    functionLinenumberEnd: 9884
    functionName: OrientationInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfrotation_del
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void OrientationInterpolator_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9890
      start: 9887
    functionDepth: 0
    functionLinenumber: 9887
    functionLinenumberEnd: 9890
    functionName: OrientationInterpolator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 OrientationInterpolator_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 37
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9930
      start: 9892
    functionDepth: 0
    functionLinenumber: 9892
    functionLinenumberEnd: 9930
    functionName: OrientationInterpolator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err OrientationInterpolator_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9935,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9936,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9937,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9938,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9939,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9941
      start: 9933
    functionDepth: 0
    functionLinenumber: 9933
    functionLinenumberEnd: 9941
    functionName: OrientationInterpolator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 OrientationInterpolator_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9947,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9949,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9953
      start: 9944
    functionDepth: 1
    functionLinenumber: 9944
    functionLinenumberEnd: 9953
    functionName: OrientationInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *OrientationInterpolator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfimage_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9963,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9964,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9965,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9966
      start: 9960
    functionDepth: 1
    functionLinenumber: 9960
    functionLinenumberEnd: 9966
    functionName: PixelTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfimage_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void PixelTexture_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9972
      start: 9969
    functionDepth: 0
    functionLinenumber: 9969
    functionLinenumberEnd: 9972
    functionName: PixelTexture_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PixelTexture_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10005
      start: 9974
    functionDepth: 0
    functionLinenumber: 9974
    functionLinenumberEnd: 10005
    functionName: PixelTexture_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PixelTexture_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10010,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10011,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10012,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10013,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10015
      start: 10008
    functionDepth: 0
    functionLinenumber: 10008
    functionLinenumberEnd: 10015
    functionName: PixelTexture_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PixelTexture_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10021,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10023,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10029
      start: 10018
    functionDepth: 1
    functionLinenumber: 10018
    functionLinenumberEnd: 10029
    functionName: PixelTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PixelTexture_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10039,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10040,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10041,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10042
      start: 10036
    functionDepth: 1
    functionLinenumber: 10036
    functionLinenumberEnd: 10042
    functionName: PlaneSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void PlaneSensor_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10048
      start: 10045
    functionDepth: 0
    functionLinenumber: 10045
    functionLinenumberEnd: 10048
    functionName: PlaneSensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PlaneSensor_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 72
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10123
      start: 10050
    functionDepth: 0
    functionLinenumber: 10050
    functionLinenumberEnd: 10123
    functionName: PlaneSensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PlaneSensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10128,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10129,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10130,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10131,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10132,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10133,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10134,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10135,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10136,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10137,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10138,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10140
      start: 10126
    functionDepth: 0
    functionLinenumber: 10126
    functionLinenumberEnd: 10140
    functionName: PlaneSensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PlaneSensor_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10146,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10148,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10153,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10154,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10155,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10156,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10157,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10158,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10161
      start: 10143
    functionDepth: 1
    functionLinenumber: 10143
    functionLinenumberEnd: 10161
    functionName: PlaneSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PlaneSensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10171,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10173
      start: 10168
    functionDepth: 1
    functionLinenumber: 10168
    functionLinenumberEnd: 10173
    functionName: PointLight_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void PointLight_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10179
      start: 10176
    functionDepth: 0
    functionLinenumber: 10176
    functionLinenumberEnd: 10179
    functionName: PointLight_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PointLight_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 54
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10236
      start: 10181
    functionDepth: 0
    functionLinenumber: 10181
    functionLinenumberEnd: 10236
    functionName: PointLight_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PointLight_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10241,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10242,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10243,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10244,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10245,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10246,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10247,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10248,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10250
      start: 10239
    functionDepth: 0
    functionLinenumber: 10239
    functionLinenumberEnd: 10250
    functionName: PointLight_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PointLight_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10256,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10258,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10261,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10262,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10263,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10264,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10265,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10266,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10267,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10268,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10269,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10270,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10271,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10273,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10275
      start: 10253
    functionDepth: 1
    functionLinenumber: 10253
    functionLinenumberEnd: 10275
    functionName: PointLight_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PointLight_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10285,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10286,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10287,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10288,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10289
      start: 10282
    functionDepth: 1
    functionLinenumber: 10282
    functionLinenumberEnd: 10289
    functionName: PointSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void PointSet_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10295
      start: 10292
    functionDepth: 0
    functionLinenumber: 10292
    functionLinenumberEnd: 10295
    functionName: PointSet_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PointSet_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 26
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10324
      start: 10297
    functionDepth: 0
    functionLinenumber: 10297
    functionLinenumberEnd: 10324
    functionName: PointSet_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PointSet_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10329,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10330,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10331,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10333
      start: 10327
    functionDepth: 0
    functionLinenumber: 10327
    functionLinenumberEnd: 10333
    functionName: PointSet_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PointSet_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10339,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10341,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10345
      start: 10336
    functionDepth: 1
    functionLinenumber: 10336
    functionLinenumberEnd: 10345
    functionName: PointSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PointSet_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10355,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10356,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10358
      start: 10352
    functionDepth: 1
    functionLinenumber: 10352
    functionLinenumberEnd: 10358
    functionName: Polyline2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfvec2f_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Polyline2D_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10364
      start: 10361
    functionDepth: 0
    functionLinenumber: 10361
    functionLinenumberEnd: 10364
    functionName: Polyline2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Polyline2D_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10385
      start: 10366
    functionDepth: 0
    functionLinenumber: 10366
    functionLinenumberEnd: 10385
    functionName: Polyline2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Polyline2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10390,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10391,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10393
      start: 10388
    functionDepth: 0
    functionLinenumber: 10388
    functionLinenumberEnd: 10393
    functionName: Polyline2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Polyline2D_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10399,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10401,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10405
      start: 10396
    functionDepth: 1
    functionLinenumber: 10396
    functionLinenumberEnd: 10405
    functionName: Polyline2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Polyline2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10415,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10416,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10417,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10418
      start: 10412
    functionDepth: 1
    functionLinenumber: 10412
    functionLinenumberEnd: 10418
    functionName: Polypoint2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfvec2f_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Polypoint2D_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10424
      start: 10421
    functionDepth: 0
    functionLinenumber: 10421
    functionLinenumberEnd: 10424
    functionName: Polypoint2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Polypoint2D_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10445
      start: 10426
    functionDepth: 0
    functionLinenumber: 10426
    functionLinenumberEnd: 10445
    functionName: Polypoint2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Polypoint2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10450,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10451,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10453
      start: 10448
    functionDepth: 0
    functionLinenumber: 10448
    functionLinenumberEnd: 10453
    functionName: Polypoint2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Polypoint2D_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10459,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10461,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10465
      start: 10456
    functionDepth: 1
    functionLinenumber: 10456
    functionLinenumberEnd: 10465
    functionName: Polypoint2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Polypoint2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10475,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10476,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10477,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10478,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10479
      start: 10472
    functionDepth: 1
    functionLinenumber: 10472
    functionLinenumberEnd: 10479
    functionName: PositionInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec3f_del
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void PositionInterpolator_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10485
      start: 10482
    functionDepth: 0
    functionLinenumber: 10482
    functionLinenumberEnd: 10485
    functionName: PositionInterpolator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PositionInterpolator_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 37
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10525
      start: 10487
    functionDepth: 0
    functionLinenumber: 10487
    functionLinenumberEnd: 10525
    functionName: PositionInterpolator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PositionInterpolator_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10530,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10531,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10532,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10533,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10534,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10536
      start: 10528
    functionDepth: 0
    functionLinenumber: 10528
    functionLinenumberEnd: 10536
    functionName: PositionInterpolator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PositionInterpolator_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10542,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10544,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10548
      start: 10539
    functionDepth: 1
    functionLinenumber: 10539
    functionLinenumberEnd: 10548
    functionName: PositionInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PositionInterpolator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10558,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10559,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10560,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10561,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10562
      start: 10555
    functionDepth: 1
    functionLinenumber: 10555
    functionLinenumberEnd: 10562
    functionName: PositionInterpolator2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfvec2f_del
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void PositionInterpolator2D_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10568
      start: 10565
    functionDepth: 0
    functionLinenumber: 10565
    functionLinenumberEnd: 10568
    functionName: PositionInterpolator2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PositionInterpolator2D_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 37
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10608
      start: 10570
    functionDepth: 0
    functionLinenumber: 10570
    functionLinenumberEnd: 10608
    functionName: PositionInterpolator2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PositionInterpolator2D_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10613,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10614,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10615,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10616,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10617,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10619
      start: 10611
    functionDepth: 0
    functionLinenumber: 10611
    functionLinenumberEnd: 10619
    functionName: PositionInterpolator2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PositionInterpolator2D_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10625,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10627,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10631
      start: 10622
    functionDepth: 1
    functionLinenumber: 10622
    functionLinenumberEnd: 10631
    functionName: PositionInterpolator2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PositionInterpolator2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10641,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10642,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10643
      start: 10638
    functionDepth: 1
    functionLinenumber: 10638
    functionLinenumberEnd: 10643
    functionName: ProximitySensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void ProximitySensor_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10649
      start: 10646
    functionDepth: 0
    functionLinenumber: 10646
    functionLinenumberEnd: 10649
    functionName: ProximitySensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ProximitySensor_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 66
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10718
      start: 10651
    functionDepth: 0
    functionLinenumber: 10651
    functionLinenumberEnd: 10718
    functionName: ProximitySensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ProximitySensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10723,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10724,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10725,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10726,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10727,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10728,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10729,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10730,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10731,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10732,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10734
      start: 10721
    functionDepth: 0
    functionLinenumber: 10721
    functionLinenumberEnd: 10734
    functionName: ProximitySensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ProximitySensor_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10740,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10742,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10745,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10746,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10747,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10748,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10749,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10750,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10753
      start: 10737
    functionDepth: 1
    functionLinenumber: 10737
    functionLinenumberEnd: 10753
    functionName: ProximitySensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ProximitySensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10763,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10764,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10765,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10766,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10767,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10768
      start: 10760
    functionDepth: 1
    functionLinenumber: 10760
    functionLinenumberEnd: 10768
    functionName: ReceiverPdu_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void ReceiverPdu_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10774
      start: 10771
    functionDepth: 0
    functionLinenumber: 10771
    functionLinenumberEnd: 10774
    functionName: ReceiverPdu_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ReceiverPdu_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 28
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 162
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10939
      start: 10776
    functionDepth: 0
    functionLinenumber: 10776
    functionLinenumberEnd: 10939
    functionName: ReceiverPdu_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReceiverPdu_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10944,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10945,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10946,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10947,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10948,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10949,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10950,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10951,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10952,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10953,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10954,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10955,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10956,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10957,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10958,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10959,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10960,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10961,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10962,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10963,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10964,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10965,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10966,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10967,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10968,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10969,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 54
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10971
      start: 10942
    functionDepth: 0
    functionLinenumber: 10942
    functionLinenumberEnd: 10971
    functionName: ReceiverPdu_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ReceiverPdu_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10977,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10979,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10982,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10983,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10987,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10988,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10991,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10992,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11000,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11002
      start: 10974
    functionDepth: 1
    functionLinenumber: 10974
    functionLinenumberEnd: 11002
    functionName: ReceiverPdu_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - strcpy
    - gf_node_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ReceiverPdu_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11012,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11013,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11014
      start: 11009
    functionDepth: 1
    functionLinenumber: 11009
    functionLinenumberEnd: 11014
    functionName: Rectangle2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Rectangle2D_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11020
      start: 11017
    functionDepth: 0
    functionLinenumber: 11017
    functionLinenumberEnd: 11020
    functionName: Rectangle2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Rectangle2D_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11041
      start: 11022
    functionDepth: 0
    functionLinenumber: 11022
    functionLinenumberEnd: 11041
    functionName: Rectangle2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Rectangle2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11046,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11047,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11049
      start: 11044
    functionDepth: 0
    functionLinenumber: 11044
    functionLinenumberEnd: 11049
    functionName: Rectangle2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Rectangle2D_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11055,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11057,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11060,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11061,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11063
      start: 11052
    functionDepth: 1
    functionLinenumber: 11052
    functionLinenumberEnd: 11063
    functionName: Rectangle2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Rectangle2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11073,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11074,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11075,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11076,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11077
      start: 11070
    functionDepth: 1
    functionLinenumber: 11070
    functionLinenumberEnd: 11077
    functionName: ScalarInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void ScalarInterpolator_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11083
      start: 11080
    functionDepth: 0
    functionLinenumber: 11080
    functionLinenumberEnd: 11083
    functionName: ScalarInterpolator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ScalarInterpolator_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 37
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11123
      start: 11085
    functionDepth: 0
    functionLinenumber: 11085
    functionLinenumberEnd: 11123
    functionName: ScalarInterpolator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ScalarInterpolator_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11128,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11129,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11130,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11131,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11132,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11134
      start: 11126
    functionDepth: 0
    functionLinenumber: 11126
    functionLinenumberEnd: 11134
    functionName: ScalarInterpolator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ScalarInterpolator_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11140,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11142,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11146
      start: 11137
    functionDepth: 1
    functionLinenumber: 11137
    functionLinenumberEnd: 11146
    functionName: ScalarInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ScalarInterpolator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfscript_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11156,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11157,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11159
      start: 11153
    functionDepth: 1
    functionLinenumber: 11153
    functionLinenumberEnd: 11159
    functionName: Script_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfscript_del
    linkageType: ''
    returnType: void
    signature: void Script_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11167
      start: 11164
    functionDepth: 0
    functionLinenumber: 11164
    functionLinenumberEnd: 11167
    functionName: Script_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Script_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11201
      start: 11170
    functionDepth: 0
    functionLinenumber: 11170
    functionLinenumberEnd: 11201
    functionName: Script_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Script_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11208,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11209,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11210,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11211,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11213
      start: 11206
    functionDepth: 0
    functionLinenumber: 11206
    functionLinenumberEnd: 11213
    functionName: Script_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Script_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11219,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11221,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11225
      start: 11216
    functionDepth: 1
    functionLinenumber: 11216
    functionLinenumberEnd: 11225
    functionName: Script_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Script_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11235,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11236,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11237,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11239
      start: 11232
    functionDepth: 1
    functionLinenumber: 11232
    functionLinenumberEnd: 11239
    functionName: Shape_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Shape_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11245
      start: 11242
    functionDepth: 0
    functionLinenumber: 11242
    functionLinenumberEnd: 11245
    functionName: Shape_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Shape_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 26
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11274
      start: 11247
    functionDepth: 0
    functionLinenumber: 11247
    functionLinenumberEnd: 11274
    functionName: Shape_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Shape_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11279,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11280,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11281,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11283
      start: 11277
    functionDepth: 0
    functionLinenumber: 11277
    functionLinenumberEnd: 11283
    functionName: Shape_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Shape_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11289,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11291,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11295
      start: 11286
    functionDepth: 1
    functionLinenumber: 11286
    functionLinenumberEnd: 11295
    functionName: Shape_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Shape_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11305,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11306,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11307,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11308,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11309,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11310,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11311
      start: 11302
    functionDepth: 1
    functionLinenumber: 11302
    functionLinenumberEnd: 11311
    functionName: SignalPdu_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_sg_mfint32_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void SignalPdu_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11317
      start: 11314
    functionDepth: 0
    functionLinenumber: 11314
    functionLinenumberEnd: 11317
    functionName: SignalPdu_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SignalPdu_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 28
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 162
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11482
      start: 11319
    functionDepth: 0
    functionLinenumber: 11319
    functionLinenumberEnd: 11482
    functionName: SignalPdu_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SignalPdu_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11487,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11488,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11489,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11490,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11491,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11492,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11493,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11494,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11495,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11496,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11497,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11498,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11499,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11500,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11501,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11502,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11503,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11504,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11505,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11506,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11507,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11508,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11509,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11510,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11511,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11512,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 54
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11514
      start: 11485
    functionDepth: 0
    functionLinenumber: 11485
    functionLinenumberEnd: 11514
    functionName: SignalPdu_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 SignalPdu_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11520,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11522,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11525,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11526,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11532,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11533,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11536,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11542,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11544
      start: 11517
    functionDepth: 1
    functionLinenumber: 11517
    functionLinenumberEnd: 11544
    functionName: SignalPdu_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - strcpy
    - gf_node_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *SignalPdu_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11554,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11555,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11556,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11557
      start: 11551
    functionDepth: 1
    functionLinenumber: 11551
    functionLinenumberEnd: 11557
    functionName: Sound_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Sound_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11563
      start: 11560
    functionDepth: 0
    functionLinenumber: 11560
    functionLinenumberEnd: 11563
    functionName: Sound_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Sound_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 73
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11639
      start: 11565
    functionDepth: 0
    functionLinenumber: 11565
    functionLinenumberEnd: 11639
    functionName: Sound_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Sound_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11644,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11645,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11646,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11647,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11648,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11649,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11650,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11651,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11652,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11653,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11654,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11656
      start: 11642
    functionDepth: 0
    functionLinenumber: 11642
    functionLinenumberEnd: 11656
    functionName: Sound_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Sound_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11662,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11664,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11667,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11668,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11669,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11670,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11671,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11672,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11673,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11674,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11675,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11676,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11677,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11678,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11681
      start: 11659
    functionDepth: 1
    functionLinenumber: 11659
    functionLinenumberEnd: 11681
    functionName: Sound_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Sound_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11691,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11692,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11693
      start: 11688
    functionDepth: 1
    functionLinenumber: 11688
    functionLinenumberEnd: 11693
    functionName: Sphere_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Sphere_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11699
      start: 11696
    functionDepth: 0
    functionLinenumber: 11696
    functionLinenumberEnd: 11699
    functionName: Sphere_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Sphere_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11720
      start: 11701
    functionDepth: 0
    functionLinenumber: 11701
    functionLinenumberEnd: 11720
    functionName: Sphere_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Sphere_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11725,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11726,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11728
      start: 11723
    functionDepth: 0
    functionLinenumber: 11723
    functionLinenumberEnd: 11728
    functionName: Sphere_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Sphere_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11734,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11736,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11739,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11741
      start: 11731
    functionDepth: 1
    functionLinenumber: 11731
    functionLinenumberEnd: 11741
    functionName: Sphere_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Sphere_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11751,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11752,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11753,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11754
      start: 11748
    functionDepth: 1
    functionLinenumber: 11748
    functionLinenumberEnd: 11754
    functionName: SphereSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void SphereSensor_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11760
      start: 11757
    functionDepth: 0
    functionLinenumber: 11757
    functionLinenumberEnd: 11760
    functionName: SphereSensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SphereSensor_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 60
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11823
      start: 11762
    functionDepth: 0
    functionLinenumber: 11762
    functionLinenumberEnd: 11823
    functionName: SphereSensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SphereSensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11828,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11829,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11830,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11831,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11832,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11833,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11834,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11835,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11836,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11838
      start: 11826
    functionDepth: 0
    functionLinenumber: 11826
    functionLinenumberEnd: 11838
    functionName: SphereSensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 SphereSensor_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11844,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11846,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11851,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11852,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11853,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11854,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11856
      start: 11841
    functionDepth: 1
    functionLinenumber: 11841
    functionLinenumberEnd: 11856
    functionName: SphereSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *SphereSensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11866,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11867,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11868
      start: 11863
    functionDepth: 1
    functionLinenumber: 11863
    functionLinenumberEnd: 11868
    functionName: SpotLight_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void SpotLight_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11874
      start: 11871
    functionDepth: 0
    functionLinenumber: 11871
    functionLinenumberEnd: 11874
    functionName: SpotLight_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SpotLight_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 72
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11949
      start: 11876
    functionDepth: 0
    functionLinenumber: 11876
    functionLinenumberEnd: 11949
    functionName: SpotLight_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SpotLight_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11954,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11955,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11956,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11957,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11958,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11959,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11960,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11961,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11962,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11963,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11964,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11966
      start: 11952
    functionDepth: 0
    functionLinenumber: 11952
    functionLinenumberEnd: 11966
    functionName: SpotLight_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 SpotLight_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11972,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11974,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11977,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11978,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11979,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11980,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11981,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11982,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11983,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11984,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11985,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11986,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11987,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11988,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11989,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11990,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11991,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11992,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11994,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11996
      start: 11969
    functionDepth: 1
    functionLinenumber: 11969
    functionLinenumberEnd: 11996
    functionName: SpotLight_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *SpotLight_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12006,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12007,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12008,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12009
      start: 12003
    functionDepth: 1
    functionLinenumber: 12003
    functionLinenumberEnd: 12009
    functionName: StaticGroup_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void StaticGroup_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12015
      start: 12012
    functionDepth: 0
    functionLinenumber: 12012
    functionLinenumberEnd: 12015
    functionName: StaticGroup_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 StaticGroup_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12037
      start: 12017
    functionDepth: 0
    functionLinenumber: 12017
    functionLinenumberEnd: 12037
    functionName: StaticGroup_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err StaticGroup_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12042,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12043,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12045
      start: 12040
    functionDepth: 0
    functionLinenumber: 12040
    functionLinenumberEnd: 12045
    functionName: StaticGroup_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 StaticGroup_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12051,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12053,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12054,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12058
      start: 12048
    functionDepth: 1
    functionLinenumber: 12048
    functionLinenumberEnd: 12058
    functionName: StaticGroup_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *StaticGroup_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12068,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12069,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12070,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12071,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12072
      start: 12065
    functionDepth: 1
    functionLinenumber: 12065
    functionLinenumberEnd: 12072
    functionName: StringSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void StringSensor_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12078
      start: 12075
    functionDepth: 0
    functionLinenumber: 12075
    functionLinenumberEnd: 12078
    functionName: StringSensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 StringSensor_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 42
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12123
      start: 12080
    functionDepth: 0
    functionLinenumber: 12080
    functionLinenumberEnd: 12123
    functionName: StringSensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err StringSensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12128,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12129,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12130,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12131,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12132,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12133,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12135
      start: 12126
    functionDepth: 0
    functionLinenumber: 12126
    functionLinenumberEnd: 12135
    functionName: StringSensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 StringSensor_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12141,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12149
      start: 12138
    functionDepth: 1
    functionLinenumber: 12138
    functionLinenumberEnd: 12149
    functionName: StringSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *StringSensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12159,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12160,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12162
      start: 12156
    functionDepth: 1
    functionLinenumber: 12156
    functionLinenumberEnd: 12162
    functionName: Switch_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Switch_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12168
      start: 12165
    functionDepth: 0
    functionLinenumber: 12165
    functionLinenumberEnd: 12168
    functionName: Switch_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Switch_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12212
      start: 12170
    functionDepth: 0
    functionLinenumber: 12170
    functionLinenumberEnd: 12212
    functionName: Switch_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Switch_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12217,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12218,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12219,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12220,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12221,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12223
      start: 12215
    functionDepth: 0
    functionLinenumber: 12215
    functionLinenumberEnd: 12223
    functionName: Switch_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Switch_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12229,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12231,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12232,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12237
      start: 12226
    functionDepth: 1
    functionLinenumber: 12226
    functionLinenumberEnd: 12237
    functionName: Switch_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Switch_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12247,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12248,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12249,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12250,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12252
      start: 12244
    functionDepth: 1
    functionLinenumber: 12244
    functionLinenumberEnd: 12252
    functionName: Text_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfstring_del
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void Text_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12258
      start: 12255
    functionDepth: 0
    functionLinenumber: 12255
    functionLinenumberEnd: 12258
    functionName: Text_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Text_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 37
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12298
      start: 12260
    functionDepth: 0
    functionLinenumber: 12260
    functionLinenumberEnd: 12298
    functionName: Text_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Text_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12303,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12304,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12305,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12306,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12307,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12309
      start: 12301
    functionDepth: 0
    functionLinenumber: 12301
    functionLinenumberEnd: 12309
    functionName: Text_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Text_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12315,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12317,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12320,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12322
      start: 12312
    functionDepth: 1
    functionLinenumber: 12312
    functionLinenumberEnd: 12322
    functionName: Text_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Text_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12332,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12333,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12334,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12335,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12336,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12337,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12338,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12339,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12340,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12341,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12342,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12343,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12345
      start: 12329
    functionDepth: 1
    functionLinenumber: 12329
    functionLinenumberEnd: 12345
    functionName: TextureBackground_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfcolor_del
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void TextureBackground_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12351
      start: 12348
    functionDepth: 0
    functionLinenumber: 12348
    functionLinenumberEnd: 12351
    functionName: TextureBackground_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 TextureBackground_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 103
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12457
      start: 12353
    functionDepth: 0
    functionLinenumber: 12353
    functionLinenumberEnd: 12457
    functionName: TextureBackground_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TextureBackground_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12462,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12463,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12464,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12465,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12466,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12467,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12468,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12469,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12470,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12471,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12472,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12473,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12474,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12475,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12476,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 32
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12478
      start: 12460
    functionDepth: 0
    functionLinenumber: 12460
    functionLinenumberEnd: 12478
    functionName: TextureBackground_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 TextureBackground_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12484,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12486,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12489,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12491,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12492,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12493,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12494,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12496,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12498
      start: 12481
    functionDepth: 1
    functionLinenumber: 12481
    functionLinenumberEnd: 12498
    functionName: TextureBackground_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *TextureBackground_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12508,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12509,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12510,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12511
      start: 12505
    functionDepth: 1
    functionLinenumber: 12505
    functionLinenumberEnd: 12511
    functionName: TextureCoordinate_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfvec2f_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void TextureCoordinate_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12517
      start: 12514
    functionDepth: 0
    functionLinenumber: 12514
    functionLinenumberEnd: 12517
    functionName: TextureCoordinate_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 TextureCoordinate_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12538
      start: 12519
    functionDepth: 0
    functionLinenumber: 12519
    functionLinenumberEnd: 12538
    functionName: TextureCoordinate_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TextureCoordinate_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12543,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12544,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12546
      start: 12541
    functionDepth: 0
    functionLinenumber: 12541
    functionLinenumberEnd: 12546
    functionName: TextureCoordinate_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 TextureCoordinate_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12552,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12554,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12558
      start: 12549
    functionDepth: 1
    functionLinenumber: 12549
    functionLinenumberEnd: 12558
    functionName: TextureCoordinate_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *TextureCoordinate_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12568,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12569,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12570,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12571,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12572
      start: 12565
    functionDepth: 1
    functionLinenumber: 12565
    functionLinenumberEnd: 12572
    functionName: TextureCoordinateGenerator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void TextureCoordinateGenerator_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12578
      start: 12575
    functionDepth: 0
    functionLinenumber: 12575
    functionLinenumberEnd: 12578
    functionName: TextureCoordinateGenerator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 TextureCoordinateGenerator_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12605
      start: 12580
    functionDepth: 0
    functionLinenumber: 12580
    functionLinenumberEnd: 12605
    functionName: TextureCoordinateGenerator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TextureCoordinateGenerator_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12610,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12611,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12612,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12614
      start: 12608
    functionDepth: 0
    functionLinenumber: 12608
    functionLinenumberEnd: 12614
    functionName: TextureCoordinateGenerator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 TextureCoordinateGenerator_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12620,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12622,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12625,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12626,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12628
      start: 12617
    functionDepth: 1
    functionLinenumber: 12617
    functionLinenumberEnd: 12628
    functionName: TextureCoordinateGenerator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcpy
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *TextureCoordinateGenerator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12638,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12639,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12640
      start: 12635
    functionDepth: 1
    functionLinenumber: 12635
    functionLinenumberEnd: 12640
    functionName: TextureTransform_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void TextureTransform_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12646
      start: 12643
    functionDepth: 0
    functionLinenumber: 12643
    functionLinenumberEnd: 12646
    functionName: TextureTransform_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 TextureTransform_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 36
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12685
      start: 12648
    functionDepth: 0
    functionLinenumber: 12648
    functionLinenumberEnd: 12685
    functionName: TextureTransform_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TextureTransform_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12690,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12691,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12692,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12693,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12694,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12696
      start: 12688
    functionDepth: 0
    functionLinenumber: 12688
    functionLinenumberEnd: 12696
    functionName: TextureTransform_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 TextureTransform_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12702,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12704,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12707,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12708,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12709,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12710,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12711,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12712,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12713,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12715
      start: 12699
    functionDepth: 1
    functionLinenumber: 12699
    functionLinenumberEnd: 12715
    functionName: TextureTransform_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *TextureTransform_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12725,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12726,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12727
      start: 12722
    functionDepth: 1
    functionLinenumber: 12722
    functionLinenumberEnd: 12727
    functionName: TimeSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void TimeSensor_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12733
      start: 12730
    functionDepth: 0
    functionLinenumber: 12730
    functionLinenumberEnd: 12733
    functionName: TimeSensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 TimeSensor_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 90
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12826
      start: 12735
    functionDepth: 0
    functionLinenumber: 12735
    functionLinenumberEnd: 12826
    functionName: TimeSensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TimeSensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12831,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12832,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12833,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12834,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12835,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12836,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12837,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12838,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12839,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12840,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12841,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12842,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12843,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12844,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 30
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12846
      start: 12829
    functionDepth: 0
    functionLinenumber: 12829
    functionLinenumberEnd: 12846
    functionName: TimeSensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 TimeSensor_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12852,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12854,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12864
      start: 12849
    functionDepth: 1
    functionLinenumber: 12849
    functionLinenumberEnd: 12864
    functionName: TimeSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *TimeSensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12874,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12875,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12876
      start: 12871
    functionDepth: 1
    functionLinenumber: 12871
    functionLinenumberEnd: 12876
    functionName: TimeTrigger_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void TimeTrigger_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12882
      start: 12879
    functionDepth: 0
    functionLinenumber: 12879
    functionLinenumberEnd: 12882
    functionName: TimeTrigger_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 TimeTrigger_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12910
      start: 12884
    functionDepth: 0
    functionLinenumber: 12884
    functionLinenumberEnd: 12910
    functionName: TimeTrigger_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TimeTrigger_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12915,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12916,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12917,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12919
      start: 12913
    functionDepth: 0
    functionLinenumber: 12913
    functionLinenumberEnd: 12919
    functionName: TimeTrigger_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 TimeTrigger_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12925,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12927,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12931
      start: 12922
    functionDepth: 1
    functionLinenumber: 12922
    functionLinenumberEnd: 12931
    functionName: TimeTrigger_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *TimeTrigger_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12941,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12942,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12943,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12944
      start: 12938
    functionDepth: 1
    functionLinenumber: 12938
    functionLinenumberEnd: 12944
    functionName: TouchSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void TouchSensor_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12950
      start: 12947
    functionDepth: 0
    functionLinenumber: 12947
    functionLinenumberEnd: 12950
    functionName: TouchSensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 TouchSensor_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 60
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13013
      start: 12952
    functionDepth: 0
    functionLinenumber: 12952
    functionLinenumberEnd: 13013
    functionName: TouchSensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TouchSensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13018,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13019,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13020,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13021,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13022,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13023,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13024,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13025,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13026,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13028
      start: 13016
    functionDepth: 0
    functionLinenumber: 13016
    functionLinenumberEnd: 13028
    functionName: TouchSensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 TouchSensor_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13034,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13036,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13041
      start: 13031
    functionDepth: 1
    functionLinenumber: 13031
    functionLinenumberEnd: 13041
    functionName: TouchSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *TouchSensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13051,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13052,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13053,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13054
      start: 13048
    functionDepth: 1
    functionLinenumber: 13048
    functionLinenumberEnd: 13054
    functionName: Transform_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Transform_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13060
      start: 13057
    functionDepth: 0
    functionLinenumber: 13057
    functionLinenumberEnd: 13060
    functionName: Transform_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Transform_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 65
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13128
      start: 13062
    functionDepth: 0
    functionLinenumber: 13062
    functionLinenumberEnd: 13128
    functionName: Transform_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Transform_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13133,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13134,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13135,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13136,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13137,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13138,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13139,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13140,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13141,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13143
      start: 13131
    functionDepth: 0
    functionLinenumber: 13131
    functionLinenumberEnd: 13143
    functionName: Transform_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Transform_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13149,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13151,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13152,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13155,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13156,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13157,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13158,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13159,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13160,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13161,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13162,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13163,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13164,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13165,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13166,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13167,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13168,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13169,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13170,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13173
      start: 13146
    functionDepth: 1
    functionLinenumber: 13146
    functionLinenumberEnd: 13173
    functionName: Transform_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Transform_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13183,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13184,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13185,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13186,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13188
      start: 13180
    functionDepth: 1
    functionLinenumber: 13180
    functionLinenumberEnd: 13188
    functionName: TransmitterPdu_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void TransmitterPdu_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13194
      start: 13191
    functionDepth: 0
    functionLinenumber: 13191
    functionLinenumberEnd: 13194
    functionName: TransmitterPdu_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 TransmitterPdu_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 44
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 258
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13455
      start: 13196
    functionDepth: 0
    functionLinenumber: 13196
    functionLinenumberEnd: 13455
    functionName: TransmitterPdu_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TransmitterPdu_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13460,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13461,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13462,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13463,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13464,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13465,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13466,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13467,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13468,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13469,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13470,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13471,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13472,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13473,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13474,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13475,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13476,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13477,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13478,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13479,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13480,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13481,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13482,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13483,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13484,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13485,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13486,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13487,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13488,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13489,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13490,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13491,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13492,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13493,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13494,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13495,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13496,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13497,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13498,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13499,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13500,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13501,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 86
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13503
      start: 13458
    functionDepth: 0
    functionLinenumber: 13458
    functionLinenumberEnd: 13503
    functionName: TransmitterPdu_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 TransmitterPdu_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13509,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13511,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13514,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13515,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13516,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13517,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13518,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13533,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13534,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13536,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13544,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13545,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13546,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13547,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13549,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13552,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 45
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13554
      start: 13506
    functionDepth: 1
    functionLinenumber: 13506
    functionLinenumberEnd: 13554
    functionName: TransmitterPdu_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - strcpy
    - gf_node_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *TransmitterPdu_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13564,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13565,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13566,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13567,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13568,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13569,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13570,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13571
      start: 13561
    functionDepth: 1
    functionLinenumber: 13561
    functionLinenumberEnd: 13571
    functionName: TriangleFanSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void TriangleFanSet_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13577
      start: 13574
    functionDepth: 0
    functionLinenumber: 13574
    functionLinenumberEnd: 13577
    functionName: TriangleFanSet_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 TriangleFanSet_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 70
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13650
      start: 13579
    functionDepth: 0
    functionLinenumber: 13579
    functionLinenumberEnd: 13650
    functionName: TriangleFanSet_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TriangleFanSet_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13655,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13656,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13657,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13658,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13659,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13660,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13661,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13662,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13663,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13664,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13666
      start: 13653
    functionDepth: 0
    functionLinenumber: 13653
    functionLinenumberEnd: 13666
    functionName: TriangleFanSet_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 TriangleFanSet_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13672,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13674,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13682
      start: 13669
    functionDepth: 1
    functionLinenumber: 13669
    functionLinenumberEnd: 13682
    functionName: TriangleFanSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *TriangleFanSet_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13692,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13693,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13694,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13695,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13696,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13697,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13698
      start: 13689
    functionDepth: 1
    functionLinenumber: 13689
    functionLinenumberEnd: 13698
    functionName: TriangleSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void TriangleSet_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13704
      start: 13701
    functionDepth: 0
    functionLinenumber: 13701
    functionLinenumberEnd: 13704
    functionName: TriangleSet_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 TriangleSet_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 64
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13771
      start: 13706
    functionDepth: 0
    functionLinenumber: 13706
    functionLinenumberEnd: 13771
    functionName: TriangleSet_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TriangleSet_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13776,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13777,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13778,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13779,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13780,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13781,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13782,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13783,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13784,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13786
      start: 13774
    functionDepth: 0
    functionLinenumber: 13774
    functionLinenumberEnd: 13786
    functionName: TriangleSet_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 TriangleSet_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13792,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13794,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13802
      start: 13789
    functionDepth: 1
    functionLinenumber: 13789
    functionLinenumberEnd: 13802
    functionName: TriangleSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *TriangleSet_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13812,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13813,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13814,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13815
      start: 13809
    functionDepth: 1
    functionLinenumber: 13809
    functionLinenumberEnd: 13815
    functionName: TriangleSet2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfvec2f_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void TriangleSet2D_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13821
      start: 13818
    functionDepth: 0
    functionLinenumber: 13818
    functionLinenumberEnd: 13821
    functionName: TriangleSet2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 TriangleSet2D_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13842
      start: 13823
    functionDepth: 0
    functionLinenumber: 13823
    functionLinenumberEnd: 13842
    functionName: TriangleSet2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TriangleSet2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13847,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13848,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13850
      start: 13845
    functionDepth: 0
    functionLinenumber: 13845
    functionLinenumberEnd: 13850
    functionName: TriangleSet2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 TriangleSet2D_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13856,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13858,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13862
      start: 13853
    functionDepth: 1
    functionLinenumber: 13853
    functionLinenumberEnd: 13862
    functionName: TriangleSet2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *TriangleSet2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13872,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13873,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13874,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13875,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13876,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13877,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13878,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13879
      start: 13869
    functionDepth: 1
    functionLinenumber: 13869
    functionLinenumberEnd: 13879
    functionName: TriangleStripSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void TriangleStripSet_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13885
      start: 13882
    functionDepth: 0
    functionLinenumber: 13882
    functionLinenumberEnd: 13885
    functionName: TriangleStripSet_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 TriangleStripSet_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 70
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13958
      start: 13887
    functionDepth: 0
    functionLinenumber: 13887
    functionLinenumberEnd: 13958
    functionName: TriangleStripSet_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TriangleStripSet_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13963,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13964,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13965,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13966,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13967,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13968,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13969,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13970,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13971,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13972,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13974
      start: 13961
    functionDepth: 0
    functionLinenumber: 13961
    functionLinenumberEnd: 13974
    functionName: TriangleStripSet_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 TriangleStripSet_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13980,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13982,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13990
      start: 13977
    functionDepth: 1
    functionLinenumber: 13977
    functionLinenumberEnd: 13990
    functionName: TriangleStripSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *TriangleStripSet_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14000,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14001,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14002,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14003
      start: 13997
    functionDepth: 1
    functionLinenumber: 13997
    functionLinenumberEnd: 14003
    functionName: Viewpoint_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Viewpoint_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14009
      start: 14006
    functionDepth: 0
    functionLinenumber: 14006
    functionLinenumberEnd: 14009
    functionName: Viewpoint_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Viewpoint_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 67
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14079
      start: 14011
    functionDepth: 0
    functionLinenumber: 14011
    functionLinenumberEnd: 14079
    functionName: Viewpoint_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Viewpoint_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14084,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14085,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14086,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14087,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14088,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14089,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14090,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14091,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14092,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14093,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14095
      start: 14082
    functionDepth: 0
    functionLinenumber: 14082
    functionLinenumberEnd: 14095
    functionName: Viewpoint_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Viewpoint_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14101,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14103,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14106,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14108,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14109,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14110,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14111,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14112,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14113,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14114,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14115,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14116,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14119
      start: 14098
    functionDepth: 1
    functionLinenumber: 14098
    functionLinenumberEnd: 14119
    functionName: Viewpoint_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Viewpoint_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14129,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14131
      start: 14126
    functionDepth: 1
    functionLinenumber: 14126
    functionLinenumberEnd: 14131
    functionName: VisibilitySensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void VisibilitySensor_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14137
      start: 14134
    functionDepth: 0
    functionLinenumber: 14134
    functionLinenumberEnd: 14137
    functionName: VisibilitySensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 VisibilitySensor_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 48
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14188
      start: 14139
    functionDepth: 0
    functionLinenumber: 14139
    functionLinenumberEnd: 14188
    functionName: VisibilitySensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err VisibilitySensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14193,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14194,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14195,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14196,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14197,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14198,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14199,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14201
      start: 14191
    functionDepth: 0
    functionLinenumber: 14191
    functionLinenumberEnd: 14201
    functionName: VisibilitySensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 VisibilitySensor_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14207,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14209,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14212,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14213,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14214,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14216,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14217,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14218,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14220
      start: 14204
    functionDepth: 1
    functionLinenumber: 14204
    functionLinenumberEnd: 14220
    functionName: VisibilitySensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *VisibilitySensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14230,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14231,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14232,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14234
      start: 14227
    functionDepth: 1
    functionLinenumber: 14227
    functionLinenumberEnd: 14234
    functionName: WorldInfo_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfstring_del
    - gf_node_free
    - gf_sg_sfstring_del
    linkageType: ''
    returnType: void
    signature: void WorldInfo_Del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - dummy
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14240
      start: 14237
    functionDepth: 0
    functionLinenumber: 14237
    functionLinenumberEnd: 14240
    functionName: WorldInfo_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 WorldInfo_get_field_count(GF_Node *node, u8 dummy)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14267
      start: 14242
    functionDepth: 0
    functionLinenumber: 14242
    functionLinenumberEnd: 14267
    functionName: WorldInfo_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WorldInfo_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14272,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14273,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14274,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14276
      start: 14270
    functionDepth: 0
    functionLinenumber: 14270
    functionLinenumberEnd: 14276
    functionName: WorldInfo_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 WorldInfo_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14282,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14284,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14288
      start: 14279
    functionDepth: 1
    functionLinenumber: 14279
    functionLinenumberEnd: 14288
    functionName: WorldInfo_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *WorldInfo_Create()
  - BBCount: 130
    BranchProfiles: []
    Callsites:
    - Dst: Anchor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14297,1
    - Dst: Appearance_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14299,1
    - Dst: Arc2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14301,1
    - Dst: ArcClose2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14303,1
    - Dst: AudioClip_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14305,1
    - Dst: Background_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14307,1
    - Dst: Billboard_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14309,1
    - Dst: BooleanFilter_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14311,1
    - Dst: BooleanSequencer_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14313,1
    - Dst: BooleanToggle_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14315,1
    - Dst: BooleanTrigger_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14317,1
    - Dst: Box_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14319,1
    - Dst: Circle2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14321,1
    - Dst: Collision_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14323,1
    - Dst: Color_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14325,1
    - Dst: ColorInterpolator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14327,1
    - Dst: ColorRGBA_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14329,1
    - Dst: Cone_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14331,1
    - Dst: Contour2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14333,1
    - Dst: ContourPolyline2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14335,1
    - Dst: Coordinate_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14337,1
    - Dst: CoordinateDouble_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14339,1
    - Dst: Coordinate2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14341,1
    - Dst: CoordinateInterpolator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14343,1
    - Dst: CoordinateInterpolator2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14345,1
    - Dst: Cylinder_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14347,1
    - Dst: CylinderSensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14349,1
    - Dst: DirectionalLight_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14351,1
    - Dst: Disk2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14353,1
    - Dst: ElevationGrid_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14355,1
    - Dst: EspduTransform_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14357,1
    - Dst: Extrusion_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14359,1
    - Dst: FillProperties_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14361,1
    - Dst: Fog_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14363,1
    - Dst: FontStyle_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14365,1
    - Dst: GeoCoordinate_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14367,1
    - Dst: GeoElevationGrid_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14369,1
    - Dst: GeoLocation_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14371,1
    - Dst: GeoLOD_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14373,1
    - Dst: GeoMetadata_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14375,1
    - Dst: GeoOrigin_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14377,1
    - Dst: GeoPositionInterpolator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14379,1
    - Dst: GeoTouchSensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14381,1
    - Dst: GeoViewpoint_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14383,1
    - Dst: Group_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14385,1
    - Dst: HAnimDisplacer_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14387,1
    - Dst: HAnimHumanoid_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14389,1
    - Dst: HAnimJoint_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14391,1
    - Dst: HAnimSegment_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14393,1
    - Dst: HAnimSite_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14395,1
    - Dst: ImageTexture_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14397,1
    - Dst: IndexedFaceSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14399,1
    - Dst: IndexedLineSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14401,1
    - Dst: IndexedTriangleFanSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14403,1
    - Dst: IndexedTriangleSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14405,1
    - Dst: IndexedTriangleStripSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14407,1
    - Dst: Inline_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14409,1
    - Dst: IntegerSequencer_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14411,1
    - Dst: IntegerTrigger_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14413,1
    - Dst: KeySensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14415,1
    - Dst: LineProperties_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14417,1
    - Dst: LineSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14419,1
    - Dst: LoadSensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14421,1
    - Dst: LOD_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14423,1
    - Dst: Material_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14425,1
    - Dst: MetadataDouble_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14427,1
    - Dst: MetadataFloat_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14429,1
    - Dst: MetadataInteger_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14431,1
    - Dst: MetadataSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14433,1
    - Dst: MetadataString_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14435,1
    - Dst: MovieTexture_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14437,1
    - Dst: MultiTexture_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14439,1
    - Dst: MultiTextureCoordinate_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14441,1
    - Dst: MultiTextureTransform_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14443,1
    - Dst: NavigationInfo_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14445,1
    - Dst: Normal_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14447,1
    - Dst: NormalInterpolator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14449,1
    - Dst: NurbsCurve_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14451,1
    - Dst: NurbsCurve2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14453,1
    - Dst: NurbsOrientationInterpolator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14455,1
    - Dst: NurbsPatchSurface_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14457,1
    - Dst: NurbsPositionInterpolator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14459,1
    - Dst: NurbsSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14461,1
    - Dst: NurbsSurfaceInterpolator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14463,1
    - Dst: NurbsSweptSurface_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14465,1
    - Dst: NurbsSwungSurface_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14467,1
    - Dst: NurbsTextureCoordinate_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14469,1
    - Dst: NurbsTrimmedSurface_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14471,1
    - Dst: OrientationInterpolator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14473,1
    - Dst: PixelTexture_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14475,1
    - Dst: PlaneSensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14477,1
    - Dst: PointLight_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14479,1
    - Dst: PointSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14481,1
    - Dst: Polyline2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14483,1
    - Dst: Polypoint2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14485,1
    - Dst: PositionInterpolator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14487,1
    - Dst: PositionInterpolator2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14489,1
    - Dst: ProximitySensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14491,1
    - Dst: ReceiverPdu_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14493,1
    - Dst: Rectangle2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14495,1
    - Dst: ScalarInterpolator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14497,1
    - Dst: Script_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14499,1
    - Dst: Shape_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14501,1
    - Dst: SignalPdu_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14503,1
    - Dst: Sound_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14505,1
    - Dst: Sphere_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14507,1
    - Dst: SphereSensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14509,1
    - Dst: SpotLight_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14511,1
    - Dst: StaticGroup_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14513,1
    - Dst: StringSensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14515,1
    - Dst: Switch_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14517,1
    - Dst: Text_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14519,1
    - Dst: TextureBackground_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14521,1
    - Dst: TextureCoordinate_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14523,1
    - Dst: TextureCoordinateGenerator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14525,1
    - Dst: TextureTransform_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14527,1
    - Dst: TimeSensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14529,1
    - Dst: TimeTrigger_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14531,1
    - Dst: TouchSensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14533,1
    - Dst: Transform_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14535,1
    - Dst: TransmitterPdu_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14537,1
    - Dst: TriangleFanSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14539,1
    - Dst: TriangleSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14541,1
    - Dst: TriangleSet2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14543,1
    - Dst: TriangleStripSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14545,1
    - Dst: Viewpoint_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14547,1
    - Dst: VisibilitySensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14549,1
    - Dst: WorldInfo_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14551,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 261
    argCount: 1
    argNames:
    - NodeTag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14555
      start: 14293
    functionDepth: 2
    functionLinenumber: 14293
    functionLinenumberEnd: 14555
    functionName: gf_sg_x3d_node_new
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - PositionInterpolator2D_Create
    - Sphere_Create
    - NurbsSurfaceInterpolator_Create
    - TransmitterPdu_Create
    - ContourPolyline2D_Create
    - IndexedTriangleSet_Create
    - GeoMetadata_Create
    - NurbsTextureCoordinate_Create
    - IntegerSequencer_Create
    - Polypoint2D_Create
    - ImageTexture_Create
    - TimeTrigger_Create
    - NurbsSet_Create
    - Cylinder_Create
    - Inline_Create
    - HAnimSite_Create
    - EspduTransform_Create
    - PlaneSensor_Create
    - CoordinateInterpolator_Create
    - DirectionalLight_Create
    - BooleanToggle_Create
    - IndexedFaceSet_Create
    - StringSensor_Create
    - Normal_Create
    - Sound_Create
    - TextureTransform_Create
    - WorldInfo_Create
    - Group_Create
    - CoordinateInterpolator2D_Create
    - Script_Create
    - LineProperties_Create
    - NurbsOrientationInterpolator_Create
    - ElevationGrid_Create
    - Arc2D_Create
    - GeoLocation_Create
    - HAnimSegment_Create
    - GeoCoordinate_Create
    - Material_Create
    - CylinderSensor_Create
    - BooleanTrigger_Create
    - MetadataFloat_Create
    - NurbsSweptSurface_Create
    - TriangleSet2D_Create
    - NurbsCurve2D_Create
    - StaticGroup_Create
    - ColorRGBA_Create
    - NurbsSwungSurface_Create
    - MovieTexture_Create
    - MultiTextureTransform_Create
    - TextureBackground_Create
    - AudioClip_Create
    - Extrusion_Create
    - MultiTextureCoordinate_Create
    - NurbsPatchSurface_Create
    - IntegerTrigger_Create
    - GeoViewpoint_Create
    - Contour2D_Create
    - Rectangle2D_Create
    - PositionInterpolator_Create
    - Collision_Create
    - TextureCoordinate_Create
    - Box_Create
    - IndexedLineSet_Create
    - Polyline2D_Create
    - Coordinate2D_Create
    - IndexedTriangleFanSet_Create
    - NormalInterpolator_Create
    - MetadataDouble_Create
    - Fog_Create
    - ScalarInterpolator_Create
    - Text_Create
    - Disk2D_Create
    - MetadataSet_Create
    - Color_Create
    - LoadSensor_Create
    - NurbsPositionInterpolator_Create
    - HAnimJoint_Create
    - MultiTexture_Create
    - GeoTouchSensor_Create
    - ColorInterpolator_Create
    - Switch_Create
    - Shape_Create
    - GeoPositionInterpolator_Create
    - HAnimHumanoid_Create
    - NavigationInfo_Create
    - Coordinate_Create
    - HAnimDisplacer_Create
    - PointLight_Create
    - Circle2D_Create
    - CoordinateDouble_Create
    - Transform_Create
    - GeoLOD_Create
    - ProximitySensor_Create
    - SpotLight_Create
    - SignalPdu_Create
    - VisibilitySensor_Create
    - Appearance_Create
    - IndexedTriangleStripSet_Create
    - MetadataString_Create
    - PointSet_Create
    - Cone_Create
    - NurbsCurve_Create
    - FillProperties_Create
    - Background_Create
    - GeoOrigin_Create
    - BooleanSequencer_Create
    - LOD_Create
    - Viewpoint_Create
    - OrientationInterpolator_Create
    - SphereSensor_Create
    - KeySensor_Create
    - Anchor_Create
    - TriangleFanSet_Create
    - BooleanFilter_Create
    - TouchSensor_Create
    - TriangleSet_Create
    - LineSet_Create
    - NurbsTrimmedSurface_Create
    - FontStyle_Create
    - ReceiverPdu_Create
    - Billboard_Create
    - TimeSensor_Create
    - PixelTexture_Create
    - TextureCoordinateGenerator_Create
    - GeoElevationGrid_Create
    - ArcClose2D_Create
    - TriangleStripSet_Create
    - MetadataInteger_Create
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *gf_sg_x3d_node_new(u32 NodeTag)
  - BBCount: 130
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 261
    argCount: 1
    argNames:
    - NodeTag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14819
      start: 14557
    functionDepth: 0
    functionLinenumber: 14557
    functionLinenumberEnd: 14819
    functionName: gf_sg_x3d_node_get_class_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_sg_x3d_node_get_class_name(u32 NodeTag)
  - BBCount: 130
    BranchProfiles: []
    Callsites:
    - Dst: Anchor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14825,1
    - Dst: Appearance_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14828,1
    - Dst: Arc2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14831,1
    - Dst: ArcClose2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14834,1
    - Dst: AudioClip_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14837,1
    - Dst: Background_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14840,1
    - Dst: Billboard_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14843,1
    - Dst: BooleanFilter_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14846,1
    - Dst: BooleanSequencer_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14849,1
    - Dst: BooleanToggle_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14852,1
    - Dst: BooleanTrigger_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14855,1
    - Dst: Box_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14858,1
    - Dst: Circle2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14861,1
    - Dst: Collision_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14864,1
    - Dst: Color_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14867,1
    - Dst: ColorInterpolator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14870,1
    - Dst: ColorRGBA_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14873,1
    - Dst: Cone_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14876,1
    - Dst: Contour2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14879,1
    - Dst: ContourPolyline2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14882,1
    - Dst: Coordinate_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14885,1
    - Dst: CoordinateDouble_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14888,1
    - Dst: Coordinate2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14891,1
    - Dst: CoordinateInterpolator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14894,1
    - Dst: CoordinateInterpolator2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14897,1
    - Dst: Cylinder_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14900,1
    - Dst: CylinderSensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14903,1
    - Dst: DirectionalLight_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14906,1
    - Dst: Disk2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14909,1
    - Dst: ElevationGrid_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14912,1
    - Dst: EspduTransform_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14915,1
    - Dst: Extrusion_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14918,1
    - Dst: FillProperties_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14921,1
    - Dst: Fog_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14924,1
    - Dst: FontStyle_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14927,1
    - Dst: GeoCoordinate_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14930,1
    - Dst: GeoElevationGrid_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14933,1
    - Dst: GeoLocation_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14936,1
    - Dst: GeoLOD_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14939,1
    - Dst: GeoMetadata_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14942,1
    - Dst: GeoOrigin_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14945,1
    - Dst: GeoPositionInterpolator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14948,1
    - Dst: GeoTouchSensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14951,1
    - Dst: GeoViewpoint_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14954,1
    - Dst: Group_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14957,1
    - Dst: HAnimDisplacer_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14960,1
    - Dst: HAnimHumanoid_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14963,1
    - Dst: HAnimJoint_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14966,1
    - Dst: HAnimSegment_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14969,1
    - Dst: HAnimSite_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14972,1
    - Dst: ImageTexture_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14975,1
    - Dst: IndexedFaceSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14978,1
    - Dst: IndexedLineSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14981,1
    - Dst: IndexedTriangleFanSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14984,1
    - Dst: IndexedTriangleSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14987,1
    - Dst: IndexedTriangleStripSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14990,1
    - Dst: Inline_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14993,1
    - Dst: IntegerSequencer_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14996,1
    - Dst: IntegerTrigger_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14999,1
    - Dst: KeySensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15002,1
    - Dst: LineProperties_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15005,1
    - Dst: LineSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15008,1
    - Dst: LoadSensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15011,1
    - Dst: LOD_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15014,1
    - Dst: Material_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15017,1
    - Dst: MetadataDouble_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15020,1
    - Dst: MetadataFloat_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15023,1
    - Dst: MetadataInteger_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15026,1
    - Dst: MetadataSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15029,1
    - Dst: MetadataString_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15032,1
    - Dst: MovieTexture_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15035,1
    - Dst: MultiTexture_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15038,1
    - Dst: MultiTextureCoordinate_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15041,1
    - Dst: MultiTextureTransform_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15044,1
    - Dst: NavigationInfo_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15047,1
    - Dst: Normal_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15050,1
    - Dst: NormalInterpolator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15053,1
    - Dst: NurbsCurve_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15056,1
    - Dst: NurbsCurve2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15059,1
    - Dst: NurbsOrientationInterpolator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15062,1
    - Dst: NurbsPatchSurface_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15065,1
    - Dst: NurbsPositionInterpolator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15068,1
    - Dst: NurbsSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15071,1
    - Dst: NurbsSurfaceInterpolator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15074,1
    - Dst: NurbsSweptSurface_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15077,1
    - Dst: NurbsSwungSurface_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15080,1
    - Dst: NurbsTextureCoordinate_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15083,1
    - Dst: NurbsTrimmedSurface_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15086,1
    - Dst: OrientationInterpolator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15089,1
    - Dst: PixelTexture_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15092,1
    - Dst: PlaneSensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15095,1
    - Dst: PointLight_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15098,1
    - Dst: PointSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15101,1
    - Dst: Polyline2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15104,1
    - Dst: Polypoint2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15107,1
    - Dst: PositionInterpolator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15110,1
    - Dst: PositionInterpolator2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15113,1
    - Dst: ProximitySensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15116,1
    - Dst: ReceiverPdu_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15119,1
    - Dst: Rectangle2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15122,1
    - Dst: ScalarInterpolator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15125,1
    - Dst: Script_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15128,1
    - Dst: Shape_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15131,1
    - Dst: SignalPdu_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15134,1
    - Dst: Sound_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15137,1
    - Dst: Sphere_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15140,1
    - Dst: SphereSensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15143,1
    - Dst: SpotLight_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15146,1
    - Dst: StaticGroup_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15149,1
    - Dst: StringSensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15152,1
    - Dst: Switch_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15155,1
    - Dst: Text_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15158,1
    - Dst: TextureBackground_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15161,1
    - Dst: TextureCoordinate_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15164,1
    - Dst: TextureCoordinateGenerator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15167,1
    - Dst: TextureTransform_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15170,1
    - Dst: TimeSensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15173,1
    - Dst: TimeTrigger_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15176,1
    - Dst: TouchSensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15179,1
    - Dst: Transform_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15182,1
    - Dst: TransmitterPdu_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15185,1
    - Dst: TriangleFanSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15188,1
    - Dst: TriangleSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15191,1
    - Dst: TriangleSet2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15194,1
    - Dst: TriangleStripSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15197,1
    - Dst: Viewpoint_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15200,1
    - Dst: VisibilitySensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15203,1
    - Dst: WorldInfo_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15206,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 389
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15211
      start: 14821
    functionDepth: 2
    functionLinenumber: 14821
    functionLinenumberEnd: 15211
    functionName: gf_sg_x3d_node_del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - ColorInterpolator_Del
    - AudioClip_Del
    - Rectangle2D_Del
    - Sound_Del
    - TextureCoordinate_Del
    - BooleanSequencer_Del
    - MultiTexture_Del
    - IndexedTriangleStripSet_Del
    - IntegerSequencer_Del
    - BooleanToggle_Del
    - OrientationInterpolator_Del
    - ArcClose2D_Del
    - MultiTextureCoordinate_Del
    - Color_Del
    - Text_Del
    - GeoCoordinate_Del
    - ColorRGBA_Del
    - Switch_Del
    - TriangleFanSet_Del
    - Contour2D_Del
    - NurbsSet_Del
    - Material_Del
    - Sphere_Del
    - Polyline2D_Del
    - EspduTransform_Del
    - IndexedFaceSet_Del
    - Coordinate2D_Del
    - HAnimSegment_Del
    - Fog_Del
    - NurbsPositionInterpolator_Del
    - Billboard_Del
    - MultiTextureTransform_Del
    - Appearance_Del
    - SphereSensor_Del
    - LineProperties_Del
    - PixelTexture_Del
    - FillProperties_Del
    - PointSet_Del
    - SignalPdu_Del
    - ReceiverPdu_Del
    - Anchor_Del
    - HAnimJoint_Del
    - Group_Del
    - NormalInterpolator_Del
    - NurbsTrimmedSurface_Del
    - PlaneSensor_Del
    - PositionInterpolator_Del
    - TextureCoordinateGenerator_Del
    - NurbsSurfaceInterpolator_Del
    - LOD_Del
    - NurbsSwungSurface_Del
    - LineSet_Del
    - WorldInfo_Del
    - TriangleStripSet_Del
    - TouchSensor_Del
    - NurbsPatchSurface_Del
    - HAnimSite_Del
    - TimeTrigger_Del
    - IntegerTrigger_Del
    - CoordinateInterpolator2D_Del
    - VisibilitySensor_Del
    - Coordinate_Del
    - TimeSensor_Del
    - GeoPositionInterpolator_Del
    - NurbsTextureCoordinate_Del
    - GeoViewpoint_Del
    - Viewpoint_Del
    - LoadSensor_Del
    - PositionInterpolator2D_Del
    - TextureTransform_Del
    - PointLight_Del
    - IndexedLineSet_Del
    - IndexedTriangleFanSet_Del
    - GeoOrigin_Del
    - Shape_Del
    - BooleanFilter_Del
    - IndexedTriangleSet_Del
    - HAnimDisplacer_Del
    - CoordinateDouble_Del
    - ScalarInterpolator_Del
    - Polypoint2D_Del
    - NurbsCurve_Del
    - NurbsSweptSurface_Del
    - HAnimHumanoid_Del
    - GeoMetadata_Del
    - NurbsCurve2D_Del
    - MetadataFloat_Del
    - GeoLOD_Del
    - KeySensor_Del
    - CoordinateInterpolator_Del
    - Transform_Del
    - TransmitterPdu_Del
    - MetadataString_Del
    - MetadataSet_Del
    - Script_Del
    - GeoTouchSensor_Del
    - Disk2D_Del
    - Cone_Del
    - Inline_Del
    - ProximitySensor_Del
    - Cylinder_Del
    - MetadataDouble_Del
    - GeoElevationGrid_Del
    - TriangleSet_Del
    - Extrusion_Del
    - BooleanTrigger_Del
    - FontStyle_Del
    - Collision_Del
    - CylinderSensor_Del
    - NurbsOrientationInterpolator_Del
    - ContourPolyline2D_Del
    - TextureBackground_Del
    - StaticGroup_Del
    - MovieTexture_Del
    - GeoLocation_Del
    - ImageTexture_Del
    - Normal_Del
    - StringSensor_Del
    - Background_Del
    - TriangleSet2D_Del
    - Circle2D_Del
    - MetadataInteger_Del
    - ElevationGrid_Del
    - Arc2D_Del
    - DirectionalLight_Del
    - NavigationInfo_Del
    - SpotLight_Del
    - Box_Del
    linkageType: ''
    returnType: void
    signature: void gf_sg_x3d_node_del(GF_Node *node)
  - BBCount: 130
    BranchProfiles: []
    Callsites:
    - Dst: Anchor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15217,1
    - Dst: Appearance_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15219,1
    - Dst: Arc2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15221,1
    - Dst: ArcClose2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15223,1
    - Dst: AudioClip_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15225,1
    - Dst: Background_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15227,1
    - Dst: Billboard_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15229,1
    - Dst: BooleanFilter_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15231,1
    - Dst: BooleanSequencer_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15233,1
    - Dst: BooleanToggle_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15235,1
    - Dst: BooleanTrigger_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15237,1
    - Dst: Box_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15239,1
    - Dst: Circle2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15241,1
    - Dst: Collision_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15243,1
    - Dst: Color_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15245,1
    - Dst: ColorInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15247,1
    - Dst: ColorRGBA_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15249,1
    - Dst: Cone_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15251,1
    - Dst: Contour2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15253,1
    - Dst: ContourPolyline2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15255,1
    - Dst: Coordinate_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15257,1
    - Dst: CoordinateDouble_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15259,1
    - Dst: Coordinate2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15261,1
    - Dst: CoordinateInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15263,1
    - Dst: CoordinateInterpolator2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15265,1
    - Dst: Cylinder_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15267,1
    - Dst: CylinderSensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15269,1
    - Dst: DirectionalLight_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15271,1
    - Dst: Disk2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15273,1
    - Dst: ElevationGrid_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15275,1
    - Dst: EspduTransform_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15277,1
    - Dst: Extrusion_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15279,1
    - Dst: FillProperties_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15281,1
    - Dst: Fog_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15283,1
    - Dst: FontStyle_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15285,1
    - Dst: GeoCoordinate_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15287,1
    - Dst: GeoElevationGrid_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15289,1
    - Dst: GeoLocation_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15291,1
    - Dst: GeoLOD_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15293,1
    - Dst: GeoMetadata_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15295,1
    - Dst: GeoOrigin_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15297,1
    - Dst: GeoPositionInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15299,1
    - Dst: GeoTouchSensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15301,1
    - Dst: GeoViewpoint_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15303,1
    - Dst: Group_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15305,1
    - Dst: HAnimDisplacer_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15307,1
    - Dst: HAnimHumanoid_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15309,1
    - Dst: HAnimJoint_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15311,1
    - Dst: HAnimSegment_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15313,1
    - Dst: HAnimSite_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15315,1
    - Dst: ImageTexture_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15317,1
    - Dst: IndexedFaceSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15319,1
    - Dst: IndexedLineSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15321,1
    - Dst: IndexedTriangleFanSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15323,1
    - Dst: IndexedTriangleSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15325,1
    - Dst: IndexedTriangleStripSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15327,1
    - Dst: Inline_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15329,1
    - Dst: IntegerSequencer_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15331,1
    - Dst: IntegerTrigger_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15333,1
    - Dst: KeySensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15335,1
    - Dst: LineProperties_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15337,1
    - Dst: LineSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15339,1
    - Dst: LoadSensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15341,1
    - Dst: LOD_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15343,1
    - Dst: Material_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15345,1
    - Dst: MetadataDouble_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15347,1
    - Dst: MetadataFloat_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15349,1
    - Dst: MetadataInteger_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15351,1
    - Dst: MetadataSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15353,1
    - Dst: MetadataString_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15355,1
    - Dst: MovieTexture_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15357,1
    - Dst: MultiTexture_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15359,1
    - Dst: MultiTextureCoordinate_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15361,1
    - Dst: MultiTextureTransform_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15363,1
    - Dst: NavigationInfo_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15365,1
    - Dst: Normal_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15367,1
    - Dst: NormalInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15369,1
    - Dst: NurbsCurve_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15371,1
    - Dst: NurbsCurve2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15373,1
    - Dst: NurbsOrientationInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15375,1
    - Dst: NurbsPatchSurface_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15377,1
    - Dst: NurbsPositionInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15379,1
    - Dst: NurbsSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15381,1
    - Dst: NurbsSurfaceInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15383,1
    - Dst: NurbsSweptSurface_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15385,1
    - Dst: NurbsSwungSurface_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15387,1
    - Dst: NurbsTextureCoordinate_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15389,1
    - Dst: NurbsTrimmedSurface_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15391,1
    - Dst: OrientationInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15393,1
    - Dst: PixelTexture_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15395,1
    - Dst: PlaneSensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15397,1
    - Dst: PointLight_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15399,1
    - Dst: PointSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15401,1
    - Dst: Polyline2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15403,1
    - Dst: Polypoint2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15405,1
    - Dst: PositionInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15407,1
    - Dst: PositionInterpolator2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15409,1
    - Dst: ProximitySensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15411,1
    - Dst: ReceiverPdu_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15413,1
    - Dst: Rectangle2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15415,1
    - Dst: ScalarInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15417,1
    - Dst: Script_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15421,1
    - Dst: Shape_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15424,1
    - Dst: SignalPdu_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15426,1
    - Dst: Sound_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15428,1
    - Dst: Sphere_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15430,1
    - Dst: SphereSensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15432,1
    - Dst: SpotLight_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15434,1
    - Dst: StaticGroup_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15436,1
    - Dst: StringSensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15438,1
    - Dst: Switch_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15440,1
    - Dst: Text_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15442,1
    - Dst: TextureBackground_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15444,1
    - Dst: TextureCoordinate_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15446,1
    - Dst: TextureCoordinateGenerator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15448,1
    - Dst: TextureTransform_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15450,1
    - Dst: TimeSensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15452,1
    - Dst: TimeTrigger_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15454,1
    - Dst: TouchSensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15456,1
    - Dst: Transform_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15458,1
    - Dst: TransmitterPdu_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15460,1
    - Dst: TriangleFanSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15462,1
    - Dst: TriangleSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15464,1
    - Dst: TriangleSet2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15466,1
    - Dst: TriangleStripSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15468,1
    - Dst: Viewpoint_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15470,1
    - Dst: VisibilitySensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15472,1
    - Dst: WorldInfo_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15474,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 261
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15478
      start: 15213
    functionDepth: 1
    functionLinenumber: 15213
    functionLinenumberEnd: 15478
    functionName: gf_sg_x3d_node_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - CylinderSensor_get_field_count
    - MultiTextureTransform_get_field_count
    - PointLight_get_field_count
    - PixelTexture_get_field_count
    - Rectangle2D_get_field_count
    - MetadataSet_get_field_count
    - GeoLOD_get_field_count
    - Cone_get_field_count
    - PointSet_get_field_count
    - NurbsSurfaceInterpolator_get_field_count
    - MetadataInteger_get_field_count
    - TriangleFanSet_get_field_count
    - BooleanTrigger_get_field_count
    - StringSensor_get_field_count
    - TriangleSet2D_get_field_count
    - NormalInterpolator_get_field_count
    - NurbsSwungSurface_get_field_count
    - Box_get_field_count
    - MetadataFloat_get_field_count
    - IndexedFaceSet_get_field_count
    - Billboard_get_field_count
    - TimeTrigger_get_field_count
    - TriangleStripSet_get_field_count
    - ReceiverPdu_get_field_count
    - TouchSensor_get_field_count
    - ArcClose2D_get_field_count
    - LOD_get_field_count
    - BooleanSequencer_get_field_count
    - DirectionalLight_get_field_count
    - Cylinder_get_field_count
    - GeoViewpoint_get_field_count
    - GeoLocation_get_field_count
    - NurbsPositionInterpolator_get_field_count
    - LineProperties_get_field_count
    - TextureTransform_get_field_count
    - NurbsCurve_get_field_count
    - HAnimJoint_get_field_count
    - TransmitterPdu_get_field_count
    - VisibilitySensor_get_field_count
    - GeoCoordinate_get_field_count
    - HAnimSegment_get_field_count
    - Fog_get_field_count
    - SignalPdu_get_field_count
    - NurbsPatchSurface_get_field_count
    - HAnimSite_get_field_count
    - Script_get_field_count
    - EspduTransform_get_field_count
    - BooleanFilter_get_field_count
    - ProximitySensor_get_field_count
    - Background_get_field_count
    - ElevationGrid_get_field_count
    - NurbsSet_get_field_count
    - GeoOrigin_get_field_count
    - Shape_get_field_count
    - Arc2D_get_field_count
    - Extrusion_get_field_count
    - FontStyle_get_field_count
    - CoordinateInterpolator2D_get_field_count
    - Inline_get_field_count
    - ColorInterpolator_get_field_count
    - Polypoint2D_get_field_count
    - ImageTexture_get_field_count
    - PositionInterpolator_get_field_count
    - Color_get_field_count
    - ColorRGBA_get_field_count
    - Viewpoint_get_field_count
    - CoordinateDouble_get_field_count
    - GeoPositionInterpolator_get_field_count
    - NurbsSweptSurface_get_field_count
    - NurbsCurve2D_get_field_count
    - IndexedTriangleSet_get_field_count
    - Normal_get_field_count
    - Coordinate_get_field_count
    - Text_get_field_count
    - ContourPolyline2D_get_field_count
    - PlaneSensor_get_field_count
    - NavigationInfo_get_field_count
    - Contour2D_get_field_count
    - MovieTexture_get_field_count
    - TextureCoordinate_get_field_count
    - GeoMetadata_get_field_count
    - FillProperties_get_field_count
    - Switch_get_field_count
    - HAnimHumanoid_get_field_count
    - Disk2D_get_field_count
    - TextureBackground_get_field_count
    - Sphere_get_field_count
    - MultiTexture_get_field_count
    - LoadSensor_get_field_count
    - IntegerTrigger_get_field_count
    - Collision_get_field_count
    - Polyline2D_get_field_count
    - PositionInterpolator2D_get_field_count
    - MetadataString_get_field_count
    - SphereSensor_get_field_count
    - MetadataDouble_get_field_count
    - CoordinateInterpolator_get_field_count
    - TriangleSet_get_field_count
    - GeoTouchSensor_get_field_count
    - Transform_get_field_count
    - IndexedLineSet_get_field_count
    - StaticGroup_get_field_count
    - NurbsTextureCoordinate_get_field_count
    - BooleanToggle_get_field_count
    - IntegerSequencer_get_field_count
    - LineSet_get_field_count
    - ScalarInterpolator_get_field_count
    - AudioClip_get_field_count
    - IndexedTriangleStripSet_get_field_count
    - Material_get_field_count
    - NurbsOrientationInterpolator_get_field_count
    - GeoElevationGrid_get_field_count
    - IndexedTriangleFanSet_get_field_count
    - TimeSensor_get_field_count
    - KeySensor_get_field_count
    - OrientationInterpolator_get_field_count
    - Circle2D_get_field_count
    - Sound_get_field_count
    - MultiTextureCoordinate_get_field_count
    - Anchor_get_field_count
    - Group_get_field_count
    - Coordinate2D_get_field_count
    - HAnimDisplacer_get_field_count
    - TextureCoordinateGenerator_get_field_count
    - WorldInfo_get_field_count
    - SpotLight_get_field_count
    - NurbsTrimmedSurface_get_field_count
    - Appearance_get_field_count
    linkageType: ''
    returnType: u32
    signature: u32 gf_sg_x3d_node_get_field_count(GF_Node *node)
  - BBCount: 130
    BranchProfiles: []
    Callsites:
    - Dst: Anchor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15484,1
    - Dst: Appearance_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15486,1
    - Dst: Arc2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15488,1
    - Dst: ArcClose2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15490,1
    - Dst: AudioClip_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15492,1
    - Dst: Background_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15494,1
    - Dst: Billboard_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15496,1
    - Dst: BooleanFilter_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15498,1
    - Dst: BooleanSequencer_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15500,1
    - Dst: BooleanToggle_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15502,1
    - Dst: BooleanTrigger_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15504,1
    - Dst: Box_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15506,1
    - Dst: Circle2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15508,1
    - Dst: Collision_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15510,1
    - Dst: Color_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15512,1
    - Dst: ColorInterpolator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15514,1
    - Dst: ColorRGBA_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15516,1
    - Dst: Cone_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15518,1
    - Dst: Contour2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15520,1
    - Dst: ContourPolyline2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15522,1
    - Dst: Coordinate_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15524,1
    - Dst: CoordinateDouble_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15526,1
    - Dst: Coordinate2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15528,1
    - Dst: CoordinateInterpolator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15530,1
    - Dst: CoordinateInterpolator2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15532,1
    - Dst: Cylinder_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15534,1
    - Dst: CylinderSensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15536,1
    - Dst: DirectionalLight_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15538,1
    - Dst: Disk2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15540,1
    - Dst: ElevationGrid_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15542,1
    - Dst: EspduTransform_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15544,1
    - Dst: Extrusion_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15546,1
    - Dst: FillProperties_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15548,1
    - Dst: Fog_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15550,1
    - Dst: FontStyle_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15552,1
    - Dst: GeoCoordinate_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15554,1
    - Dst: GeoElevationGrid_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15556,1
    - Dst: GeoLocation_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15558,1
    - Dst: GeoLOD_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15560,1
    - Dst: GeoMetadata_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15562,1
    - Dst: GeoOrigin_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15564,1
    - Dst: GeoPositionInterpolator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15566,1
    - Dst: GeoTouchSensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15568,1
    - Dst: GeoViewpoint_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15570,1
    - Dst: Group_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15572,1
    - Dst: HAnimDisplacer_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15574,1
    - Dst: HAnimHumanoid_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15576,1
    - Dst: HAnimJoint_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15578,1
    - Dst: HAnimSegment_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15580,1
    - Dst: HAnimSite_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15582,1
    - Dst: ImageTexture_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15584,1
    - Dst: IndexedFaceSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15586,1
    - Dst: IndexedLineSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15588,1
    - Dst: IndexedTriangleFanSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15590,1
    - Dst: IndexedTriangleSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15592,1
    - Dst: IndexedTriangleStripSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15594,1
    - Dst: Inline_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15596,1
    - Dst: IntegerSequencer_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15598,1
    - Dst: IntegerTrigger_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15600,1
    - Dst: KeySensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15602,1
    - Dst: LineProperties_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15604,1
    - Dst: LineSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15606,1
    - Dst: LoadSensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15608,1
    - Dst: LOD_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15610,1
    - Dst: Material_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15612,1
    - Dst: MetadataDouble_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15614,1
    - Dst: MetadataFloat_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15616,1
    - Dst: MetadataInteger_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15618,1
    - Dst: MetadataSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15620,1
    - Dst: MetadataString_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15622,1
    - Dst: MovieTexture_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15624,1
    - Dst: MultiTexture_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15626,1
    - Dst: MultiTextureCoordinate_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15628,1
    - Dst: MultiTextureTransform_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15630,1
    - Dst: NavigationInfo_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15632,1
    - Dst: Normal_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15634,1
    - Dst: NormalInterpolator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15636,1
    - Dst: NurbsCurve_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15638,1
    - Dst: NurbsCurve2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15640,1
    - Dst: NurbsOrientationInterpolator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15642,1
    - Dst: NurbsPatchSurface_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15644,1
    - Dst: NurbsPositionInterpolator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15646,1
    - Dst: NurbsSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15648,1
    - Dst: NurbsSurfaceInterpolator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15650,1
    - Dst: NurbsSweptSurface_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15652,1
    - Dst: NurbsSwungSurface_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15654,1
    - Dst: NurbsTextureCoordinate_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15656,1
    - Dst: NurbsTrimmedSurface_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15658,1
    - Dst: OrientationInterpolator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15660,1
    - Dst: PixelTexture_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15662,1
    - Dst: PlaneSensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15664,1
    - Dst: PointLight_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15666,1
    - Dst: PointSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15668,1
    - Dst: Polyline2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15670,1
    - Dst: Polypoint2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15672,1
    - Dst: PositionInterpolator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15674,1
    - Dst: PositionInterpolator2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15676,1
    - Dst: ProximitySensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15678,1
    - Dst: ReceiverPdu_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15680,1
    - Dst: Rectangle2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15682,1
    - Dst: ScalarInterpolator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15684,1
    - Dst: Script_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15686,1
    - Dst: Shape_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15688,1
    - Dst: SignalPdu_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15690,1
    - Dst: Sound_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15692,1
    - Dst: Sphere_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15694,1
    - Dst: SphereSensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15696,1
    - Dst: SpotLight_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15698,1
    - Dst: StaticGroup_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15700,1
    - Dst: StringSensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15702,1
    - Dst: Switch_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15704,1
    - Dst: Text_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15706,1
    - Dst: TextureBackground_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15708,1
    - Dst: TextureCoordinate_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15710,1
    - Dst: TextureCoordinateGenerator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15712,1
    - Dst: TextureTransform_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15714,1
    - Dst: TimeSensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15716,1
    - Dst: TimeTrigger_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15718,1
    - Dst: TouchSensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15720,1
    - Dst: Transform_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15722,1
    - Dst: TransmitterPdu_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15724,1
    - Dst: TriangleFanSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15726,1
    - Dst: TriangleSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15728,1
    - Dst: TriangleSet2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15730,1
    - Dst: TriangleStripSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15732,1
    - Dst: Viewpoint_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15734,1
    - Dst: VisibilitySensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15736,1
    - Dst: WorldInfo_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15738,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 261
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15742
      start: 15480
    functionDepth: 1
    functionLinenumber: 15480
    functionLinenumberEnd: 15742
    functionName: gf_sg_x3d_node_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - KeySensor_get_field
    - VisibilitySensor_get_field
    - LoadSensor_get_field
    - FillProperties_get_field
    - CylinderSensor_get_field
    - BooleanTrigger_get_field
    - Material_get_field
    - MultiTexture_get_field
    - LOD_get_field
    - GeoLOD_get_field
    - Group_get_field
    - GeoElevationGrid_get_field
    - IntegerTrigger_get_field
    - HAnimSegment_get_field
    - Switch_get_field
    - TimeSensor_get_field
    - Anchor_get_field
    - GeoMetadata_get_field
    - GeoOrigin_get_field
    - ProximitySensor_get_field
    - OrientationInterpolator_get_field
    - Viewpoint_get_field
    - GeoTouchSensor_get_field
    - CoordinateDouble_get_field
    - PositionInterpolator_get_field
    - Appearance_get_field
    - GeoLocation_get_field
    - Script_get_field
    - NurbsCurve2D_get_field
    - LineSet_get_field
    - MovieTexture_get_field
    - NurbsSet_get_field
    - ElevationGrid_get_field
    - Collision_get_field
    - SpotLight_get_field
    - TriangleSet_get_field
    - StaticGroup_get_field
    - WorldInfo_get_field
    - CoordinateInterpolator_get_field
    - GeoViewpoint_get_field
    - PlaneSensor_get_field
    - TextureCoordinate_get_field
    - IndexedFaceSet_get_field
    - MetadataDouble_get_field
    - Sphere_get_field
    - NavigationInfo_get_field
    - IndexedTriangleSet_get_field
    - MetadataInteger_get_field
    - NurbsTextureCoordinate_get_field
    - NurbsSwungSurface_get_field
    - Arc2D_get_field
    - MultiTextureCoordinate_get_field
    - DirectionalLight_get_field
    - MultiTextureTransform_get_field
    - ColorRGBA_get_field
    - Inline_get_field
    - StringSensor_get_field
    - FontStyle_get_field
    - Disk2D_get_field
    - HAnimHumanoid_get_field
    - Polyline2D_get_field
    - Circle2D_get_field
    - GeoCoordinate_get_field
    - Coordinate2D_get_field
    - BooleanToggle_get_field
    - ImageTexture_get_field
    - Coordinate_get_field
    - GeoPositionInterpolator_get_field
    - Box_get_field
    - NurbsPatchSurface_get_field
    - HAnimDisplacer_get_field
    - PositionInterpolator2D_get_field
    - TextureCoordinateGenerator_get_field
    - NurbsSurfaceInterpolator_get_field
    - Cone_get_field
    - Background_get_field
    - NurbsPositionInterpolator_get_field
    - NurbsTrimmedSurface_get_field
    - Shape_get_field
    - IntegerSequencer_get_field
    - IndexedTriangleFanSet_get_field
    - TriangleStripSet_get_field
    - LineProperties_get_field
    - PointLight_get_field
    - TextureTransform_get_field
    - Color_get_field
    - NormalInterpolator_get_field
    - Transform_get_field
    - Cylinder_get_field
    - TriangleFanSet_get_field
    - TransmitterPdu_get_field
    - ReceiverPdu_get_field
    - ScalarInterpolator_get_field
    - NurbsOrientationInterpolator_get_field
    - Text_get_field
    - MetadataSet_get_field
    - Polypoint2D_get_field
    - Sound_get_field
    - Normal_get_field
    - TextureBackground_get_field
    - PixelTexture_get_field
    - HAnimSite_get_field
    - ArcClose2D_get_field
    - ColorInterpolator_get_field
    - TouchSensor_get_field
    - AudioClip_get_field
    - EspduTransform_get_field
    - Fog_get_field
    - BooleanFilter_get_field
    - MetadataFloat_get_field
    - ContourPolyline2D_get_field
    - Rectangle2D_get_field
    - Contour2D_get_field
    - SphereSensor_get_field
    - IndexedTriangleStripSet_get_field
    - NurbsCurve_get_field
    - CoordinateInterpolator2D_get_field
    - BooleanSequencer_get_field
    - HAnimJoint_get_field
    - TimeTrigger_get_field
    - Billboard_get_field
    - NurbsSweptSurface_get_field
    - PointSet_get_field
    - SignalPdu_get_field
    - Extrusion_get_field
    - TriangleSet2D_get_field
    - IndexedLineSet_get_field
    - MetadataString_get_field
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sg_x3d_node_get_field(GF_Node *node, GF_FieldInfo *field)
  - BBCount: 130
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15749,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15750,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15751,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15752,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15753,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15754,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15755,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15756,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15757,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15758,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15759,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15760,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15761,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15762,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15763,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15764,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15765,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15766,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15767,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15768,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15769,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15770,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15771,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15772,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15773,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15774,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15775,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15776,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15777,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15778,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15779,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15780,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15781,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15782,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15783,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15784,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15785,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15786,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15787,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15788,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15789,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15790,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15791,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15792,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15793,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15794,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15795,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15796,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15797,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15798,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15799,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15800,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15801,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15802,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15803,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15804,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15805,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15806,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15807,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15808,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15809,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15810,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15811,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15812,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15813,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15814,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15815,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15816,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15817,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15818,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15819,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15820,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15821,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15822,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15823,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15824,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15825,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15826,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15827,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15828,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15829,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15830,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15831,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15832,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15833,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15834,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15835,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15836,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15837,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15838,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15839,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15840,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15841,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15842,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15843,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15844,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15845,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15846,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15847,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15848,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15849,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15850,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15851,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15852,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15853,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15854,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15855,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15856,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15857,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15858,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15859,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15860,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15861,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15862,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15863,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15864,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15865,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15866,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15867,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15868,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15869,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15870,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15871,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15872,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15873,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15874,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15875,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15876,1
    CyclomaticComplexity: 129
    EdgeCount: 129
    ICount: 260
    argCount: 1
    argNames:
    - node_name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15878
      start: 15745
    functionDepth: 0
    functionLinenumber: 15745
    functionLinenumberEnd: 15878
    functionName: gf_node_x3d_type_by_class_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 2
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_x3d_type_by_class_name(const char *node_name)
  - BBCount: 130
    BranchProfiles: []
    Callsites:
    - Dst: Anchor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15884,1
    - Dst: Appearance_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15886,1
    - Dst: Arc2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15888,1
    - Dst: ArcClose2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15890,1
    - Dst: AudioClip_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15892,1
    - Dst: Background_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15894,1
    - Dst: Billboard_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15896,1
    - Dst: BooleanFilter_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15898,1
    - Dst: BooleanSequencer_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15900,1
    - Dst: BooleanToggle_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15902,1
    - Dst: BooleanTrigger_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15904,1
    - Dst: Box_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15906,1
    - Dst: Circle2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15908,1
    - Dst: Collision_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15910,1
    - Dst: Color_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15912,1
    - Dst: ColorInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15914,1
    - Dst: ColorRGBA_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15916,1
    - Dst: Cone_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15918,1
    - Dst: Contour2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15920,1
    - Dst: ContourPolyline2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15922,1
    - Dst: Coordinate_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15924,1
    - Dst: CoordinateDouble_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15926,1
    - Dst: Coordinate2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15928,1
    - Dst: CoordinateInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15930,1
    - Dst: CoordinateInterpolator2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15932,1
    - Dst: Cylinder_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15934,1
    - Dst: CylinderSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15936,1
    - Dst: DirectionalLight_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15938,1
    - Dst: Disk2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15940,1
    - Dst: ElevationGrid_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15942,1
    - Dst: EspduTransform_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15944,1
    - Dst: Extrusion_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15946,1
    - Dst: FillProperties_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15948,1
    - Dst: Fog_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15950,1
    - Dst: FontStyle_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15952,1
    - Dst: GeoCoordinate_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15954,1
    - Dst: GeoElevationGrid_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15956,1
    - Dst: GeoLocation_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15958,1
    - Dst: GeoLOD_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15960,1
    - Dst: GeoMetadata_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15962,1
    - Dst: GeoOrigin_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15964,1
    - Dst: GeoPositionInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15966,1
    - Dst: GeoTouchSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15968,1
    - Dst: GeoViewpoint_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15970,1
    - Dst: Group_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15972,1
    - Dst: HAnimDisplacer_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15974,1
    - Dst: HAnimHumanoid_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15976,1
    - Dst: HAnimJoint_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15978,1
    - Dst: HAnimSegment_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15980,1
    - Dst: HAnimSite_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15982,1
    - Dst: ImageTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15984,1
    - Dst: IndexedFaceSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15986,1
    - Dst: IndexedLineSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15988,1
    - Dst: IndexedTriangleFanSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15990,1
    - Dst: IndexedTriangleSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15992,1
    - Dst: IndexedTriangleStripSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15994,1
    - Dst: Inline_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15996,1
    - Dst: IntegerSequencer_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15998,1
    - Dst: IntegerTrigger_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16000,1
    - Dst: KeySensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16002,1
    - Dst: LineProperties_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16004,1
    - Dst: LineSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16006,1
    - Dst: LoadSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16008,1
    - Dst: LOD_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16010,1
    - Dst: Material_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16012,1
    - Dst: MetadataDouble_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16014,1
    - Dst: MetadataFloat_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16016,1
    - Dst: MetadataInteger_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16018,1
    - Dst: MetadataSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16020,1
    - Dst: MetadataString_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16022,1
    - Dst: MovieTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16024,1
    - Dst: MultiTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16026,1
    - Dst: MultiTextureCoordinate_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16028,1
    - Dst: MultiTextureTransform_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16030,1
    - Dst: NavigationInfo_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16032,1
    - Dst: Normal_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16034,1
    - Dst: NormalInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16036,1
    - Dst: NurbsCurve_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16038,1
    - Dst: NurbsCurve2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16040,1
    - Dst: NurbsOrientationInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16042,1
    - Dst: NurbsPatchSurface_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16044,1
    - Dst: NurbsPositionInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16046,1
    - Dst: NurbsSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16048,1
    - Dst: NurbsSurfaceInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16050,1
    - Dst: NurbsSweptSurface_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16052,1
    - Dst: NurbsSwungSurface_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16054,1
    - Dst: NurbsTextureCoordinate_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16056,1
    - Dst: NurbsTrimmedSurface_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16058,1
    - Dst: OrientationInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16060,1
    - Dst: PixelTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16062,1
    - Dst: PlaneSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16064,1
    - Dst: PointLight_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16066,1
    - Dst: PointSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16068,1
    - Dst: Polyline2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16070,1
    - Dst: Polypoint2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16072,1
    - Dst: PositionInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16074,1
    - Dst: PositionInterpolator2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16076,1
    - Dst: ProximitySensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16078,1
    - Dst: ReceiverPdu_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16080,1
    - Dst: Rectangle2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16082,1
    - Dst: ScalarInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16084,1
    - Dst: Script_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16088,1
    - Dst: Shape_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16091,1
    - Dst: SignalPdu_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16093,1
    - Dst: Sound_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16095,1
    - Dst: Sphere_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16097,1
    - Dst: SphereSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16099,1
    - Dst: SpotLight_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16101,1
    - Dst: StaticGroup_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16103,1
    - Dst: StringSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16105,1
    - Dst: Switch_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16107,1
    - Dst: Text_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16109,1
    - Dst: TextureBackground_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16111,1
    - Dst: TextureCoordinate_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16113,1
    - Dst: TextureCoordinateGenerator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16115,1
    - Dst: TextureTransform_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16117,1
    - Dst: TimeSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16119,1
    - Dst: TimeTrigger_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16121,1
    - Dst: TouchSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16123,1
    - Dst: Transform_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16125,1
    - Dst: TransmitterPdu_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16127,1
    - Dst: TriangleFanSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16129,1
    - Dst: TriangleSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16131,1
    - Dst: TriangleSet2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16133,1
    - Dst: TriangleStripSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16135,1
    - Dst: Viewpoint_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16137,1
    - Dst: VisibilitySensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16139,1
    - Dst: WorldInfo_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16141,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 261
    argCount: 2
    argNames:
    - node
    - name
    argTypes:
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16145
      start: 15880
    functionDepth: 1
    functionLinenumber: 15880
    functionLinenumberEnd: 16145
    functionName: gf_sg_x3d_node_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - Appearance_get_field_index_by_name
    - NavigationInfo_get_field_index_by_name
    - NurbsSweptSurface_get_field_index_by_name
    - HAnimDisplacer_get_field_index_by_name
    - Viewpoint_get_field_index_by_name
    - LineSet_get_field_index_by_name
    - GeoOrigin_get_field_index_by_name
    - TimeTrigger_get_field_index_by_name
    - TransmitterPdu_get_field_index_by_name
    - LOD_get_field_index_by_name
    - Cylinder_get_field_index_by_name
    - ColorRGBA_get_field_index_by_name
    - NurbsPatchSurface_get_field_index_by_name
    - NurbsPositionInterpolator_get_field_index_by_name
    - StaticGroup_get_field_index_by_name
    - HAnimJoint_get_field_index_by_name
    - PointSet_get_field_index_by_name
    - SignalPdu_get_field_index_by_name
    - Contour2D_get_field_index_by_name
    - MetadataString_get_field_index_by_name
    - Anchor_get_field_index_by_name
    - Circle2D_get_field_index_by_name
    - GeoCoordinate_get_field_index_by_name
    - TextureBackground_get_field_index_by_name
    - IndexedFaceSet_get_field_index_by_name
    - Text_get_field_index_by_name
    - CylinderSensor_get_field_index_by_name
    - CoordinateInterpolator_get_field_index_by_name
    - Extrusion_get_field_index_by_name
    - Fog_get_field_index_by_name
    - Transform_get_field_index_by_name
    - IntegerTrigger_get_field_index_by_name
    - NurbsTrimmedSurface_get_field_index_by_name
    - Inline_get_field_index_by_name
    - NurbsTextureCoordinate_get_field_index_by_name
    - TextureCoordinate_get_field_index_by_name
    - StringSensor_get_field_index_by_name
    - Script_get_field_index_by_name
    - Coordinate2D_get_field_index_by_name
    - Normal_get_field_index_by_name
    - BooleanTrigger_get_field_index_by_name
    - SphereSensor_get_field_index_by_name
    - IndexedTriangleFanSet_get_field_index_by_name
    - TextureTransform_get_field_index_by_name
    - GeoPositionInterpolator_get_field_index_by_name
    - GeoMetadata_get_field_index_by_name
    - DirectionalLight_get_field_index_by_name
    - FontStyle_get_field_index_by_name
    - BooleanSequencer_get_field_index_by_name
    - MultiTextureCoordinate_get_field_index_by_name
    - GeoLocation_get_field_index_by_name
    - MultiTextureTransform_get_field_index_by_name
    - FillProperties_get_field_index_by_name
    - TimeSensor_get_field_index_by_name
    - PixelTexture_get_field_index_by_name
    - TextureCoordinateGenerator_get_field_index_by_name
    - NurbsSurfaceInterpolator_get_field_index_by_name
    - NurbsCurve_get_field_index_by_name
    - TriangleFanSet_get_field_index_by_name
    - EspduTransform_get_field_index_by_name
    - IndexedTriangleSet_get_field_index_by_name
    - Billboard_get_field_index_by_name
    - SpotLight_get_field_index_by_name
    - Background_get_field_index_by_name
    - HAnimSegment_get_field_index_by_name
    - GeoTouchSensor_get_field_index_by_name
    - Disk2D_get_field_index_by_name
    - MultiTexture_get_field_index_by_name
    - GeoViewpoint_get_field_index_by_name
    - MetadataSet_get_field_index_by_name
    - AudioClip_get_field_index_by_name
    - Material_get_field_index_by_name
    - LoadSensor_get_field_index_by_name
    - GeoElevationGrid_get_field_index_by_name
    - Sound_get_field_index_by_name
    - Coordinate_get_field_index_by_name
    - IndexedLineSet_get_field_index_by_name
    - BooleanToggle_get_field_index_by_name
    - IntegerSequencer_get_field_index_by_name
    - PlaneSensor_get_field_index_by_name
    - Collision_get_field_index_by_name
    - NurbsSet_get_field_index_by_name
    - Rectangle2D_get_field_index_by_name
    - ReceiverPdu_get_field_index_by_name
    - Shape_get_field_index_by_name
    - ElevationGrid_get_field_index_by_name
    - IndexedTriangleStripSet_get_field_index_by_name
    - NurbsSwungSurface_get_field_index_by_name
    - Polypoint2D_get_field_index_by_name
    - WorldInfo_get_field_index_by_name
    - MetadataInteger_get_field_index_by_name
    - Sphere_get_field_index_by_name
    - BooleanFilter_get_field_index_by_name
    - NormalInterpolator_get_field_index_by_name
    - Group_get_field_index_by_name
    - CoordinateDouble_get_field_index_by_name
    - MovieTexture_get_field_index_by_name
    - ImageTexture_get_field_index_by_name
    - HAnimSite_get_field_index_by_name
    - TriangleSet_get_field_index_by_name
    - ScalarInterpolator_get_field_index_by_name
    - CoordinateInterpolator2D_get_field_index_by_name
    - NurbsCurve2D_get_field_index_by_name
    - TouchSensor_get_field_index_by_name
    - ArcClose2D_get_field_index_by_name
    - ProximitySensor_get_field_index_by_name
    - MetadataDouble_get_field_index_by_name
    - Box_get_field_index_by_name
    - VisibilitySensor_get_field_index_by_name
    - Arc2D_get_field_index_by_name
    - TriangleStripSet_get_field_index_by_name
    - Cone_get_field_index_by_name
    - GeoLOD_get_field_index_by_name
    - MetadataFloat_get_field_index_by_name
    - TriangleSet2D_get_field_index_by_name
    - PositionInterpolator2D_get_field_index_by_name
    - Polyline2D_get_field_index_by_name
    - ColorInterpolator_get_field_index_by_name
    - Switch_get_field_index_by_name
    - LineProperties_get_field_index_by_name
    - HAnimHumanoid_get_field_index_by_name
    - PositionInterpolator_get_field_index_by_name
    - Color_get_field_index_by_name
    - OrientationInterpolator_get_field_index_by_name
    - PointLight_get_field_index_by_name
    - KeySensor_get_field_index_by_name
    - ContourPolyline2D_get_field_index_by_name
    - NurbsOrientationInterpolator_get_field_index_by_name
    linkageType: ''
    returnType: s32
    signature: s32 gf_sg_x3d_node_get_field_index_by_name(GF_Node *node, char *name)
  - BBCount: 34
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 133
    argCount: 2
    argNames:
    - NDT_Tag
    - NodeTag
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16438
      start: 16303
    functionDepth: 0
    functionLinenumber: 16303
    functionLinenumberEnd: 16438
    functionName: gf_x3d_get_node_type
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_x3d_get_node_type(u32 NDT_Tag, u32 NodeTag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: modf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - d
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 229
    functionName: is_even
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - modf
    linkageType: ''
    returnType: int
    signature: int is_even(double d)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: floor
      Src: /src/gpac/src/scenegraph/svg_attributes.c:232,1
    - Dst: is_even
      Src: /src/gpac/src/scenegraph/svg_attributes.c:238,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - d
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 231
    functionDepth: 1
    functionLinenumber: 231
    functionLinenumberEnd: 241
    functionName: round_ieee_754
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - is_even
    - floor
    linkageType: ''
    returnType: double
    signature: double round_ieee_754(double d)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: log10
      Src: /src/gpac/src/scenegraph/svg_attributes.c:247,1
    - Dst: fabs
      Src: /src/gpac/src/scenegraph/svg_attributes.c:247,1
    - Dst: fabs
      Src: /src/gpac/src/scenegraph/svg_attributes.c:247,1
    - Dst: pow
      Src: /src/gpac/src/scenegraph/svg_attributes.c:249,1
    - Dst: round_ieee_754
      Src: /src/gpac/src/scenegraph/svg_attributes.c:252,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - value
    - digits
    argTypes:
    - double
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 243
    functionDepth: 2
    functionLinenumber: 243
    functionLinenumberEnd: 256
    functionName: round_float_hte
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - round_ieee_754
    - log10
    - pow
    - fabs
    linkageType: ''
    returnType: double
    signature: double round_float_hte(double value, int digits)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 259
    functionName: _FIX2FLT
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _FIX2FLT(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 261
    functionName: _FIX2FLT
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _FIX2FLT(x)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:271,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 275
    functionName: GF_EventType::gf_dom_event_type_by_name
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_EventType gf_dom_event_type_by_name(const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - type
    argTypes:
    - GF_EventType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 287
    functionName: gf_dom_event_get_name
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_dom_event_get_name(GF_EventType type)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - type
    argTypes:
    - GF_EventType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 289
    functionDepth: 0
    functionLinenumber: 289
    functionLinenumberEnd: 298
    functionName: gf_dom_event_get_category
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_DOMEventCategory
    signature: GF_DOMEventCategory gf_dom_event_get_category(GF_EventType type)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - key_identifier
    argTypes:
    - GF_KeyCode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 522
      start: 516
    functionDepth: 0
    functionLinenumber: 516
    functionLinenumberEnd: 522
    functionName: gf_dom_get_key_name
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_dom_get_key_name(GF_KeyCode key_identifier)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - key_identifier
    argTypes:
    - GF_KeyCode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 531
      start: 523
    functionDepth: 0
    functionLinenumber: 523
    functionLinenumberEnd: 531
    functionName: gf_dom_get_friendly_name
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_dom_get_friendly_name(GF_KeyCode key_identifier)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:537,1
    - Dst: strupr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:541,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:620,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 86
    argCount: 1
    argNames:
    - key_name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 534
    functionDepth: 0
    functionLinenumber: 534
    functionLinenumberEnd: 626
    functionName: gf_dom_get_key_type
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 2
    functionsReached:
    - stricmp
    - strlen
    - strupr
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dom_get_key_type(char *key_name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_color_parse
      Src: /src/gpac/src/scenegraph/svg_attributes.c:671,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:673,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:674,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:675,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:682,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - col
    - attribute_content
    argTypes:
    - SVG_Color*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 687
      start: 668
    functionDepth: 1
    functionLinenumber: 668
    functionLinenumberEnd: 687
    functionName: svg_parse_named_color
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_color_parse
    - INT2FIX
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_named_color(SVG_Color *col, char *attribute_content)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - paint_type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 697
      start: 689
    functionDepth: 0
    functionLinenumber: 689
    functionLinenumberEnd: 697
    functionName: gf_svg_get_system_paint_server_name
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_svg_get_system_paint_server_name(u32 paint_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:704,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 707
      start: 699
    functionDepth: 0
    functionLinenumber: 699
    functionLinenumberEnd: 707
    functionName: gf_svg_get_system_paint_server_type
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: u32
    signature: u32 gf_svg_get_system_paint_server_type(const char *name)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:719,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:720,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:726,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:729,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:734,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:735,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:736,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:737,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:738,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:740,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:741,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:742,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:745,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:745,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:748,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:749,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:751,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:752,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:753,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:760,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:761,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:762,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:769,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:770,1
    - Dst: svg_parse_named_color
      Src: /src/gpac/src/scenegraph/svg_attributes.c:783,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:786,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:787,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:788,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:789,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 74
    argCount: 3
    argNames:
    - col
    - attribute_content
    - out_e
    argTypes:
    - SVG_Color*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 716
    functionDepth: 2
    functionLinenumber: 716
    functionLinenumberEnd: 795
    functionName: svg_parse_color
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - INT2FIX
    - sscanf
    - svg_parse_named_color
    - strstr
    - strcmp
    - strlen
    linkageType: ''
    returnType: void
    signature: void svg_parse_color(SVG_Color *col, char *attribute_content, GF_Err
      *out_e)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:816,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:819,1
    - Dst: pow
      Src: /src/gpac/src/scenegraph/svg_attributes.c:850,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:852,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:860,1
    - Dst: pow
      Src: /src/gpac/src/scenegraph/svg_attributes.c:881,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:883,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:892,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:892,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:894,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 75
    argCount: 4
    argNames:
    - d
    - f
    - is_angle
    - out_e
    argTypes:
    - char*
    - Fixed*
    - Bool
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 900
      start: 806
    functionDepth: 1
    functionLinenumber: 806
    functionLinenumberEnd: 900
    functionName: svg_parse_number
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - pow
    - GF_LOG
    - strchr
    - gf_mulfix
    linkageType: ''
    returnType: u32
    signature: u32 svg_parse_number(char *d, Fixed *f, Bool is_angle, GF_Err *out_e)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: strpbrk
      Src: /src/gpac/src/scenegraph/svg_attributes.c:926,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:932,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:935,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:940,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:946,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:949,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:951,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:953,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:955,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:957,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:959,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:961,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:963,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:967,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 55
    argCount: 2
    argNames:
    - d
    - clock_value
    argTypes:
    - char*
    - Double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 972
      start: 905
    functionDepth: 0
    functionLinenumber: 905
    functionLinenumberEnd: 972
    functionName: svg_parse_clock_value
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strpbrk
    - strchr
    - sscanf
    - strstr
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_parse_clock_value(char *d, Double *clock_value)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: svg_parse_clock_value
      Src: /src/gpac/src/scenegraph/svg_attributes.c:989,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:993,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:999,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1008,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1010,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1014,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1015,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1017,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1020,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1023,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1026,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1027,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1028,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1029,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1036,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1042,1
    - Dst: gf_dom_get_key_type
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1044,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1046,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1046,1
    - Dst: svg_parse_clock_value
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1049,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1059,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1061,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1062,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1065,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1071,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1073,1
    - Dst: atoi
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1077,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1078,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1080,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1085,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1085,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1094,1
    - Dst: svg_parse_clock_value
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1099,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1103,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 105
    argCount: 3
    argNames:
    - elt
    - v
    - d
    argTypes:
    - GF_Node*
    - SMIL_Time*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1109
      start: 981
    functionDepth: 1
    functionLinenumber: 981
    functionLinenumberEnd: 1109
    functionName: smil_parse_time
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - sscanf
    - GF_LOG
    - gf_dom_event_type_by_name
    - strlen
    - strstr
    - strcmp
    - atoi
    - strchr
    - gf_dom_get_key_type
    - svg_parse_clock_value
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err smil_parse_time(GF_Node *elt, SMIL_Time *v, char *d)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1120,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1128,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1134,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1136,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1144,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1146,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1151,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1152,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1153,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1154,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1159,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1163,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1166,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1172,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1174,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1181,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1183,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1188,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1189,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1190,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1191,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1195,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1199,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1202,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1208,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1210,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1217,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1219,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1223,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1225,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1230,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1231,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1232,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1233,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1237,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1241,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1244,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1250,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1252,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1256,1
    - Dst: gf_mx2d_add_skew_x
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1257,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1258,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1259,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1263,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1267,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1270,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1276,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1278,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1282,1
    - Dst: gf_mx2d_add_skew_y
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1283,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1284,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1285,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1289,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1293,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1296,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1301,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1303,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1307,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1309,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1313,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1315,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1319,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1321,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1325,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1327,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1331,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1333,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1337,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1338,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1342,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1346,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1350,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 250
    argCount: 2
    argNames:
    - mat
    - attribute_content
    argTypes:
    - GF_Matrix2D*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1357
      start: 1112
    functionDepth: 2
    functionLinenumber: 1112
    functionLinenumberEnd: 1357
    functionName: gf_svg_parse_transformlist
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_add_matrix
    - gf_mx2d_copy
    - gf_mx2d_add_translation
    - GF_LOG
    - gf_mx2d_add_scale
    - strstr
    - gf_mx2d_add_skew_y
    - gf_mx2d_add_skew_x
    - svg_parse_number
    - gf_mx2d_init
    - gf_mx2d_add_rotation
    linkageType: ''
    returnType: Bool
    signature: Bool gf_svg_parse_transformlist(GF_Matrix2D *mat, char *attribute_content)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1368,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1370,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1385,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1387,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1391,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1393,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1398,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1404,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1408,1
    - Dst: gf_svg_parse_transformlist
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1412,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1414,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 55
    argCount: 2
    argNames:
    - t
    - attribute_content
    argTypes:
    - SVG_Transform*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1419
      start: 1360
    functionDepth: 3
    functionLinenumber: 1360
    functionLinenumberEnd: 1419
    functionName: svg_parse_transform
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_svg_parse_transformlist
    - GF_LOG
    - strstr
    - svg_parse_number
    - gf_mx2d_init
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_parse_transform(SVG_Transform *t, char *attribute_content)
  - BBCount: 74
    BranchProfiles: []
    Callsites:
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1462,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1465,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1473,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1487,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1490,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1498,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1509,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1517,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1528,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1536,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1547,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1550,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1557,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1560,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1567,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1570,1
    - Dst: gf_path_add_cubic_to
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1578,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1590,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1593,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1600,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1603,1
    - Dst: gf_path_add_cubic_to
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1616,1
    - Dst: gf_path_add_quadratic_to
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1619,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1632,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1635,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1642,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1645,1
    - Dst: gf_path_add_quadratic_to
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1653,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1664,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1667,1
    - Dst: gf_path_add_quadratic_to
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1675,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1685,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1688,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1692,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1695,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1698,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1702,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1705,1
    - Dst: gf_path_add_svg_arc_to
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1713,1
    - Dst: gf_path_close
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1723,1
    CyclomaticComplexity: 68
    EdgeCount: 68
    ICount: 298
    argCount: 3
    argNames:
    - path
    - attribute_content
    - out_e
    argTypes:
    - SVG_PathData*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1743
      start: 1427
    functionDepth: 2
    functionLinenumber: 1427
    functionLinenumberEnd: 1743
    functionName: svg_parse_path
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_path_add_quadratic_to
    - gf_path_add_cubic_to
    - gf_path_add_move_to
    - gf_path_add_svg_arc_to
    - svg_parse_number
    - gf_path_add_line_to
    - gf_path_close
    linkageType: ''
    returnType: void
    signature: void svg_parse_path(SVG_PathData *path, char *attribute_content, GF_Err
      *out_e)
  - BBCount: 57
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1752,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1758,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1774,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1776,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1779,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1781,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1783,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1784,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1798,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1800,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1803,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1805,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1807,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1808,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1821,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1823,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1826,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1828,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1830,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1842,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1844,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1847,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1849,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1851,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1863,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1865,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1871,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1873,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1875,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1876,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1890,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1892,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1898,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1900,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1902,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1903,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1917,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1919,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1925,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1927,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1929,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1930,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1944,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1946,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1949,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1951,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1953,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1954,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1969,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1971,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1974,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1976,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1978,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1979,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1981,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1982,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1983,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1986,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1988,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1990,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1991,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2005,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2007,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 256
    argCount: 3
    argNames:
    - d_attribute
    - attribute_content
    - out_e
    argTypes:
    - SVG_PathData*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2029
      start: 1746
    functionDepth: 2
    functionLinenumber: 1746
    functionLinenumberEnd: 2029
    functionName: svg_parse_path
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - strlen
    - gf_list_add
    - svg_parse_number
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void svg_parse_path(SVG_PathData *d_attribute, char *attribute_content,
      GF_Err *out_e)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2035,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2040,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2041,1
    - Dst: gf_node_register_iri
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2046,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2050,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 3
    argNames:
    - elt
    - iri
    - attribute_content
    argTypes:
    - GF_Node*
    - XMLRI*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2052
      start: 2032
    functionDepth: 1
    functionLinenumber: 2032
    functionLinenumberEnd: 2052
    functionName: svg_parse_iri
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_sg_find_node_by_name
    - gf_node_register_iri
    linkageType: ''
    returnType: void
    signature: void svg_parse_iri(GF_Node *elt, XMLRI *iri, char *attribute_content)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2057,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2059,1
    - Dst: gf_node_register_iri
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2061,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - elt
    - iri
    - attribute_content
    argTypes:
    - GF_Node*
    - XML_IDREF*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2063
      start: 2054
    functionDepth: 1
    functionLinenumber: 2054
    functionLinenumberEnd: 2063
    functionName: svg_parse_idref
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_sg_find_node_by_name
    - gf_node_register_iri
    linkageType: ''
    returnType: void
    signature: void svg_parse_idref(GF_Node *elt, XML_IDREF *iri, char *attribute_content)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2068,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2070,1
    - Dst: strncmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2072,1
    - Dst: strrchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2073,1
    - Dst: svg_parse_iri
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2076,1
    - Dst: svg_parse_color
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2080,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 4
    argNames:
    - n
    - paint
    - attribute_content
    - out_e
    argTypes:
    - GF_Node*
    - SVG_Paint*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2082
      start: 2066
    functionDepth: 3
    functionLinenumber: 2066
    functionLinenumberEnd: 2082
    functionName: svg_parse_paint
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strrchr
    - svg_parse_color
    - svg_parse_iri
    - strncmp
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_paint(GF_Node *n, SVG_Paint *paint, char *attribute_content,
      GF_Err *out_e)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2095,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2098,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2101,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2104,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2107,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2109,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2111,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2113,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2115,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2117,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2119,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2121,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2133,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2138,1
    - Dst: MAX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2145,1
    - Dst: MIN
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2145,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 66
    argCount: 4
    argNames:
    - number
    - value_string
    - clamp0to1
    - out_e
    argTypes:
    - SVG_Number*
    - char*
    - Bool
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2147
      start: 2085
    functionDepth: 2
    functionLinenumber: 2085
    functionLinenumberEnd: 2147
    functionName: svg_parse_length
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - strstr
    - MIN
    - strcmp
    - svg_parse_number
    - MAX
    linkageType: ''
    returnType: u32
    signature: u32 svg_parse_length(SVG_Number *number, char *value_string, Bool clamp0to1,
      GF_Err *out_e)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2151,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2153,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2155,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2157,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_Visibility*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2162
      start: 2149
    functionDepth: 0
    functionLinenumber: 2149
    functionLinenumberEnd: 2162
    functionName: svg_parse_visibility
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_visibility(SVG_Visibility *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2166,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2168,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2170,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2172,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2174,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2176,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2178,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2180,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2182,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2184,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2186,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2188,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2190,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2192,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2194,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2196,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2198,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2200,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 57
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_Display*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2205
      start: 2164
    functionDepth: 0
    functionLinenumber: 2164
    functionLinenumberEnd: 2205
    functionName: svg_parse_display
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_display(SVG_Display *value, char *value_string, GF_Err
      *out_e)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2209,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2211,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2213,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2215,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2217,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_DisplayAlign*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2222
      start: 2207
    functionDepth: 0
    functionLinenumber: 2207
    functionLinenumberEnd: 2222
    functionName: svg_parse_displayalign
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_displayalign(SVG_DisplayAlign *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2226,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2228,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2230,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2232,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_TextAlign*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2237
      start: 2224
    functionDepth: 0
    functionLinenumber: 2224
    functionLinenumberEnd: 2237
    functionName: svg_parse_textalign
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_textalign(SVG_TextAlign *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2241,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2243,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2245,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2247,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2249,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2251,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2253,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2255,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2257,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2259,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2261,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_PointerEvents*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2266
      start: 2239
    functionDepth: 0
    functionLinenumber: 2239
    functionLinenumberEnd: 2266
    functionName: svg_parse_pointerevents
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_pointerevents(SVG_PointerEvents *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2270,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2272,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2274,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2276,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2278,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2280,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2282,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_RenderingHint*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2287
      start: 2268
    functionDepth: 0
    functionLinenumber: 2268
    functionLinenumberEnd: 2287
    functionName: svg_parse_renderinghint
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_renderinghint(SVG_RenderingHint *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2291,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2293,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2295,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_VectorEffect*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2300
      start: 2289
    functionDepth: 0
    functionLinenumber: 2289
    functionLinenumberEnd: 2300
    functionName: svg_parse_vectoreffect
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_vectoreffect(SVG_VectorEffect *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2304,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2306,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_VectorEffect*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2311
      start: 2302
    functionDepth: 0
    functionLinenumber: 2302
    functionLinenumberEnd: 2311
    functionName: svg_parse_playbackorder
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_playbackorder(SVG_VectorEffect *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2315,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2317,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_TimelineBegin*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2322
      start: 2313
    functionDepth: 0
    functionLinenumber: 2313
    functionLinenumberEnd: 2322
    functionName: svg_parse_timelinebegin
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_timelinebegin(SVG_TimelineBegin *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2326,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2328,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - XML_Space*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2333
      start: 2324
    functionDepth: 0
    functionLinenumber: 2324
    functionLinenumberEnd: 2333
    functionName: svg_parse_xmlspace
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_xmlspace(XML_Space *value, char *value_string, GF_Err
      *out_e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2337,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2339,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - XMLEV_Propagate*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2344
      start: 2335
    functionDepth: 0
    functionLinenumber: 2335
    functionLinenumberEnd: 2344
    functionName: svg_parse_xmlev_propagate
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_xmlev_propagate(XMLEV_Propagate *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2348,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2350,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - XMLEV_DefaultAction*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2355
      start: 2346
    functionDepth: 0
    functionLinenumber: 2346
    functionLinenumberEnd: 2355
    functionName: svg_parse_xmlev_defaultAction
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_xmlev_defaultAction(XMLEV_DefaultAction *value, char
      *value_string, GF_Err *out_e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2359,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2361,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - XMLEV_Phase*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2366
      start: 2357
    functionDepth: 0
    functionLinenumber: 2357
    functionLinenumberEnd: 2366
    functionName: svg_parse_xmlev_phase
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_xmlev_phase(XMLEV_Phase *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2370,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2372,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2374,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2376,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2378,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_Overflow*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2383
      start: 2368
    functionDepth: 0
    functionLinenumber: 2368
    functionLinenumberEnd: 2383
    functionName: svg_parse_overflow
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_overflow(SVG_Overflow *value, char *value_string, GF_Err
      *out_e)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2387,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2389,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2391,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2393,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_TextAnchor*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2398
      start: 2385
    functionDepth: 0
    functionLinenumber: 2385
    functionLinenumberEnd: 2398
    functionName: svg_parse_textanchor
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_textanchor(SVG_TextAnchor *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2402,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2404,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2406,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_FillRule*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2411
      start: 2400
    functionDepth: 0
    functionLinenumber: 2400
    functionLinenumberEnd: 2411
    functionName: svg_parse_clipfillrule
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_clipfillrule(SVG_FillRule *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2415,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2417,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2419,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2421,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_StrokeLineJoin*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2426
      start: 2413
    functionDepth: 0
    functionLinenumber: 2413
    functionLinenumberEnd: 2426
    functionName: svg_parse_strokelinejoin
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_strokelinejoin(SVG_StrokeLineJoin *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2430,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2432,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2434,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2436,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_StrokeLineCap*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2441
      start: 2428
    functionDepth: 0
    functionLinenumber: 2428
    functionLinenumberEnd: 2441
    functionName: svg_parse_strokelinecap
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_strokelinecap(SVG_StrokeLineCap *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2445,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2449,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_FontFamily*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2451
      start: 2443
    functionDepth: 0
    functionLinenumber: 2443
    functionLinenumberEnd: 2451
    functionName: svg_parse_fontfamily
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_fontfamily(SVG_FontFamily *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2455,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2457,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2459,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2461,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2463,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_FontStyle*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2468
      start: 2453
    functionDepth: 0
    functionLinenumber: 2453
    functionLinenumberEnd: 2468
    functionName: svg_parse_fontstyle
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_fontstyle(SVG_FontStyle *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2472,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2474,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2476,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2478,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2480,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2482,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2484,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2486,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2488,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2490,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2492,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2494,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2496,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2498,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2500,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_FontWeight*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2505
      start: 2470
    functionDepth: 0
    functionLinenumber: 2470
    functionLinenumberEnd: 2505
    functionName: svg_parse_fontweight
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_fontweight(SVG_FontWeight *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2509,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2511,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2513,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_FontVariant*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2518
      start: 2507
    functionDepth: 0
    functionLinenumber: 2507
    functionLinenumberEnd: 2518
    functionName: svg_parse_fontvariant
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_fontvariant(SVG_FontVariant *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2523,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2523,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2523,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_Boolean*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2527
      start: 2520
    functionDepth: 0
    functionLinenumber: 2520
    functionLinenumberEnd: 2527
    functionName: svg_parse_boolean
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_boolean(SVG_Boolean *value, char *value_string, GF_Err
      *out_e)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2542,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2544,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2546,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2549,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2554,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2556,1
    - Dst: smil_parse_time
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2558,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2567,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2569,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2573,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2574,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2576,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2578,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2581,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2586,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2591,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2598,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2599,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2601,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2603,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2603,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2605,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2614,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2616,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2617,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2618,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2619,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2623,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2625,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2629,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 91
    argCount: 3
    argNames:
    - e
    - values
    - begin_or_end_list
    argTypes:
    - GF_Node*
    - GF_List*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2641
      start: 2530
    functionDepth: 2
    functionLinenumber: 2530
    functionLinenumberEnd: 2641
    functionName: smil_parse_time_list
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_free
    - gf_list_new
    - gf_list_get
    - GF_SAFEALLOC
    - GF_LOG
    - memcpy
    - smil_parse_time
    - gf_list_count
    - gf_list_add
    - gf_list_del
    - strchr
    - strlen
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void smil_parse_time_list(GF_Node *e, GF_List *values, char *begin_or_end_list)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2645,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2647,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2649,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SMIL_AttributeType*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2654
      start: 2643
    functionDepth: 0
    functionLinenumber: 2643
    functionLinenumberEnd: 2654
    functionName: smil_parse_attributeType
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void smil_parse_attributeType(SMIL_AttributeType *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2658,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2660,1
    - Dst: svg_parse_clock_value
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2664,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SMIL_Duration*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2672
      start: 2656
    functionDepth: 1
    functionLinenumber: 2656
    functionLinenumberEnd: 2672
    functionName: smil_parse_min_max_dur_repeatdur
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    - svg_parse_clock_value
    linkageType: ''
    returnType: void
    signature: void smil_parse_min_max_dur_repeatdur(SMIL_Duration *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2676,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2680,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2682,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SMIL_RepeatCount*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2687
      start: 2674
    functionDepth: 1
    functionLinenumber: 2674
    functionLinenumberEnd: 2687
    functionName: smil_parse_repeatcount
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - strcmp
    - sscanf
    linkageType: ''
    returnType: void
    signature: void smil_parse_repeatcount(SMIL_RepeatCount *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2691,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2693,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SMIL_Fill*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2698
      start: 2689
    functionDepth: 0
    functionLinenumber: 2689
    functionLinenumberEnd: 2698
    functionName: smil_parse_fill
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void smil_parse_fill(SMIL_Fill *value, char *value_string, GF_Err *out_e)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2702,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2704,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2706,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SMIL_Restart*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2711
      start: 2700
    functionDepth: 0
    functionLinenumber: 2700
    functionLinenumberEnd: 2711
    functionName: smil_parse_restart
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void smil_parse_restart(SMIL_Restart *value, char *value_string, GF_Err
      *out_e)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2715,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2717,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2719,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2721,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SMIL_CalcMode*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2726
      start: 2713
    functionDepth: 0
    functionLinenumber: 2713
    functionLinenumberEnd: 2726
    functionName: smil_parse_calcmode
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void smil_parse_calcmode(SMIL_CalcMode *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2730,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2732,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SMIL_Additive*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2737
      start: 2728
    functionDepth: 0
    functionLinenumber: 2728
    functionLinenumberEnd: 2737
    functionName: smil_parse_additive
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void smil_parse_additive(SMIL_Additive *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2741,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2743,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SMIL_Accumulate*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2748
      start: 2739
    functionDepth: 0
    functionLinenumber: 2739
    functionLinenumberEnd: 2748
    functionName: smil_parse_accumulate
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void smil_parse_accumulate(SMIL_Accumulate *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2752,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2754,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2756,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2758,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2760,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SMIL_SyncBehavior*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2765
      start: 2750
    functionDepth: 0
    functionLinenumber: 2750
    functionLinenumberEnd: 2765
    functionName: smil_parse_syncBehaviorOrDefault
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void smil_parse_syncBehaviorOrDefault(SMIL_SyncBehavior *value, char
      *value_string, GF_Err *out_e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2769,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2771,1
    - Dst: svg_parse_clock_value
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2775,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SMIL_SyncTolerance*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2777
      start: 2767
    functionDepth: 1
    functionLinenumber: 2767
    functionLinenumberEnd: 2777
    functionName: smil_parse_syncToleranceOrDefault
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    - svg_parse_clock_value
    linkageType: ''
    returnType: void
    signature: void smil_parse_syncToleranceOrDefault(SMIL_SyncTolerance *value, char
      *value_string, GF_Err *out_e)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2783,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2788,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2791,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2794,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2797,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_ViewBox*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2801
      start: 2779
    functionDepth: 2
    functionLinenumber: 2779
    functionLinenumberEnd: 2801
    functionName: svg_parse_viewbox
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - svg_parse_number
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_viewbox(SVG_ViewBox *value, char *value_string, GF_Err
      *out_e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2809,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2811,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2812,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2813,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2814,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2818,1
    - Dst: svg_parse_length
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2820,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2822,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2826,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - values
    - value_string
    - out_e
    argTypes:
    - GF_List*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2828
      start: 2804
    functionDepth: 3
    functionLinenumber: 2804
    functionLinenumberEnd: 2828
    functionName: svg_parse_coordinates
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - GF_SAFEALLOC
    - gf_list_count
    - gf_list_add
    - svg_parse_length
    - strlen
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void svg_parse_coordinates(GF_List *values, char *value_string, GF_Err
      *out_e)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2834,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2836,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - p
    - value_string
    - out_e
    argTypes:
    - SVG_Point*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2842
      start: 2831
    functionDepth: 2
    functionLinenumber: 2831
    functionLinenumberEnd: 2842
    functionName: svg_parse_point
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - svg_parse_number
    linkageType: ''
    returnType: u32
    signature: u32 svg_parse_point(SVG_Point *p, char *value_string, GF_Err *out_e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2849,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2852,1
    - Dst: svg_parse_point
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2854,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2859,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2860,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2861,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2862,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2867,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - values
    - value_string
    - out_e
    argTypes:
    - GF_List*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2869
      start: 2845
    functionDepth: 3
    functionLinenumber: 2845
    functionLinenumberEnd: 2869
    functionName: svg_parse_points
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - svg_parse_point
    - GF_SAFEALLOC
    - gf_list_count
    - gf_list_add
    - strlen
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void svg_parse_points(GF_List *values, char *value_string, GF_Err *out_e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2877,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2880,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2882,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2884,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2888,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 4
    argNames:
    - values
    - value_string
    - is_angle
    - out_e
    argTypes:
    - GF_List*
    - char*
    - Bool
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2890
      start: 2872
    functionDepth: 2
    functionLinenumber: 2872
    functionLinenumberEnd: 2890
    functionName: svg_parse_numbers
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - gf_list_add
    - svg_parse_number
    - strlen
    linkageType: ''
    returnType: void
    signature: void svg_parse_numbers(GF_List *values, char *value_string, Bool is_angle,
      GF_Err *out_e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2897,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2899,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2900,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2903,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2903,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - values
    - string
    - string_type
    argTypes:
    - GF_List*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2906
      start: 2892
    functionDepth: 1
    functionLinenumber: 2892
    functionLinenumberEnd: 2906
    functionName: svg_string_list_add
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void svg_string_list_add(GF_List *values, char *string, u32 string_type)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2912,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2913,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2914,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2915,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2923,1
    - Dst: svg_string_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2927,1
    - Dst: svg_string_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2931,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2934,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 28
    argCount: 3
    argNames:
    - values
    - value_string
    - string_type
    argTypes:
    - GF_List*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2936
      start: 2908
    functionDepth: 2
    functionLinenumber: 2908
    functionLinenumberEnd: 2936
    functionName: svg_parse_strings
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - strchr
    - svg_string_list_add
    - gf_list_last
    - gf_list_rem_last
    linkageType: ''
    returnType: void
    signature: void svg_parse_strings(GF_List *values, char *value_string, u32 string_type)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2941,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2943,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2947,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2949,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2953,1
    - Dst: svg_parse_length
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2955,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2957,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2961,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2963,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2964,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2965,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2967,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2970,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2972,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_StrokeDashArray*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2975
      start: 2938
    functionDepth: 3
    functionLinenumber: 2938
    functionLinenumberEnd: 2975
    functionName: svg_parse_strokedasharray
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_list_new
    - gf_list_get
    - GF_SAFEALLOC
    - gf_list_count
    - strcmp
    - gf_list_add
    - svg_parse_length
    - strlen
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void svg_parse_strokedasharray(SVG_StrokeDashArray *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2979,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2981,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - value
    - value_string
    - out_e
    argTypes:
    - SVG_ZoomAndPan*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2986
      start: 2977
    functionDepth: 0
    functionLinenumber: 2977
    functionLinenumberEnd: 2986
    functionName: svg_parse_zoomandpan
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_zoomandpan(SVG_ZoomAndPan *value, char *value_string,
      GF_Err *out_e)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2992,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2999,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3002,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3005,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3008,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3011,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3014,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3017,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3020,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3023,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3026,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3035,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3037,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 65
    argCount: 3
    argNames:
    - par
    - attribute_content
    - out_e
    argTypes:
    - SVG_PreserveAspectRatio*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3042
      start: 2988
    functionDepth: 0
    functionLinenumber: 2988
    functionLinenumberEnd: 3042
    functionName: svg_parse_preserveaspectratio
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strstr
    linkageType: ''
    returnType: void
    signature: void svg_parse_preserveaspectratio(SVG_PreserveAspectRatio *par, char
      *attribute_content, GF_Err *out_e)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3047,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3049,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3051,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3053,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3055,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - anim_transform_type
    - attribute_content
    - out_e
    argTypes:
    - SVG_TransformType*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3060
      start: 3044
    functionDepth: 0
    functionLinenumber: 3044
    functionLinenumberEnd: 3060
    functionName: svg_parse_animatetransform_type
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_animatetransform_type(SVG_TransformType *anim_transform_type,
      char *attribute_content, GF_Err *out_e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3064,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3066,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - fh
    - attribute_content
    - out_e
    argTypes:
    - SVG_FocusHighlight*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3071
      start: 3062
    functionDepth: 0
    functionLinenumber: 3062
    functionLinenumberEnd: 3071
    functionName: svg_parse_focushighlight
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_focushighlight(SVG_FocusHighlight *fh, char *attribute_content,
      GF_Err *out_e)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3075,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3077,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3079,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - f
    - attribute_content
    - out_e
    argTypes:
    - SVG_Focusable*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3084
      start: 3073
    functionDepth: 0
    functionLinenumber: 3073
    functionLinenumberEnd: 3084
    functionName: svg_parse_focusable
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_focusable(SVG_Focusable *f, char *attribute_content,
      GF_Err *out_e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3088,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3090,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - iv
    - attribute_content
    - out_e
    argTypes:
    - SVG_InitialVisibility*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3095
      start: 3086
    functionDepth: 0
    functionLinenumber: 3086
    functionLinenumberEnd: 3095
    functionName: svg_parse_initialvisibility
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_initialvisibility(SVG_InitialVisibility *iv, char *attribute_content,
      GF_Err *out_e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3099,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3101,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - o
    - attribute_content
    - out_e
    argTypes:
    - SVG_Overlay*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3106
      start: 3097
    functionDepth: 0
    functionLinenumber: 3097
    functionLinenumberEnd: 3106
    functionName: svg_parse_overlay
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_overlay(SVG_Overlay *o, char *attribute_content, GF_Err
      *out_e)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3110,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3112,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3114,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3116,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3118,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - tb
    - attribute_content
    - out_e
    argTypes:
    - SVG_TransformBehavior*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3123
      start: 3108
    functionDepth: 0
    functionLinenumber: 3108
    functionLinenumberEnd: 3123
    functionName: svg_parse_transformbehavior
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_transformbehavior(SVG_TransformBehavior *tb, char *attribute_content,
      GF_Err *out_e)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3127,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3131,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3132,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3133,1
    - Dst: strrchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3134,1
    - Dst: svg_parse_iri
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3137,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 4
    argNames:
    - e
    - o
    - attribute_content
    - out_e
    argTypes:
    - GF_Node*
    - SVG_Focus*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3142
      start: 3125
    functionDepth: 2
    functionLinenumber: 3125
    functionLinenumberEnd: 3142
    functionName: svg_parse_focus
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_free
    - strrchr
    - svg_parse_iri
    - strnicmp
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_focus(GF_Node *e,  SVG_Focus *o, char *attribute_content,
      GF_Err *out_e)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3146,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3150,1
    - Dst: strrchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3151,1
    - Dst: svg_parse_iri
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3153,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3155,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 4
    argNames:
    - e
    - o
    - attribute_content
    - out_e
    argTypes:
    - GF_Node*
    - SVG_ClipPath*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3159
      start: 3144
    functionDepth: 2
    functionLinenumber: 3144
    functionLinenumberEnd: 3159
    functionName: svg_parse_clippath
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_free
    - strrchr
    - svg_parse_iri
    - strnicmp
    - strcmp
    linkageType: ''
    returnType: void
    signature: void svg_parse_clippath(GF_Node *e, SVG_ClipPath *o, char *attribute_content,
      GF_Err *out_e)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3166,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3168,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 5
    argNames:
    - n
    - anim_value
    - attribute_content
    - anim_value_type
    - out_e
    argTypes:
    - GF_Node*
    - SMIL_AnimateValue*
    - char*
    - u8
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3172
      start: 3162
    functionDepth: 1
    functionLinenumber: 3162
    functionLinenumberEnd: 3172
    functionName: svg_parse_one_anim_value
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_svg_parse_attribute
    - gf_svg_create_attribute_value
    linkageType: ''
    returnType: void
    signature: void svg_parse_one_anim_value(GF_Node *n, SMIL_AnimateValue *anim_value,
      char *attribute_content, u8 anim_value_type, GF_Err *out_e)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3192,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3194,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3195,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 5
    argNames:
    - n
    - anim_values
    - anim_values_string
    - anim_value_type
    - out_e
    argTypes:
    - GF_Node*
    - SMIL_AnimateValues*
    - char*
    - u8
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3203
      start: 3174
    functionDepth: 1
    functionLinenumber: 3174
    functionLinenumberEnd: 3203
    functionName: svg_parse_anim_values
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_svg_parse_attribute
    - gf_list_add
    - gf_svg_create_attribute_value
    linkageType: ''
    returnType: void
    signature: void svg_parse_anim_values(GF_Node *n, SMIL_AnimateValues *anim_values,
      char *anim_values_string, u8 anim_value_type, GF_Err *out_e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3207,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3209,1
    - Dst: atoi
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3213,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - choice
    - attribute_content
    argTypes:
    - LASeR_Choice*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3216
      start: 3205
    functionDepth: 0
    functionLinenumber: 3205
    functionLinenumberEnd: 3216
    functionName: laser_parse_choice
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    - atoi
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err laser_parse_choice(LASeR_Choice *choice, char *attribute_content)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3222,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - size
    - attribute_content
    - out_e
    argTypes:
    - LASeR_Size*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3225
      start: 3218
    functionDepth: 2
    functionLinenumber: 3218
    functionLinenumberEnd: 3225
    functionName: laser_parse_size
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - svg_parse_number
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err laser_parse_size(LASeR_Size *size, char *attribute_content,
      GF_Err *out_e)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3230,1
    - Dst: gf_sg_get_max_node_id
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3231,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3232,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - n
    - nodename
    - warning_if_defined
    argTypes:
    - GF_Node*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3234
      start: 3227
    functionDepth: 1
    functionLinenumber: 3227
    functionLinenumberEnd: 3234
    functionName: gf_svg_parse_element_id
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 1
    functionsReached:
    - gf_node_set_id
    - gf_sg_get_max_node_id
    - gf_node_get_graph
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_svg_parse_element_id(GF_Node *n, const char *nodename,
      Bool warning_if_defined)
  - BBCount: 116
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3242,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3245,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3250,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3252,1
    - Dst: svg_parse_boolean
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3265,1
    - Dst: svg_parse_color
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3268,1
    - Dst: svg_parse_paint
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3271,1
    - Dst: svg_parse_clipfillrule
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3276,1
    - Dst: svg_parse_strokelinejoin
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3279,1
    - Dst: svg_parse_strokelinecap
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3282,1
    - Dst: svg_parse_fontstyle
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3285,1
    - Dst: svg_parse_fontweight
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3288,1
    - Dst: svg_parse_fontvariant
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3291,1
    - Dst: svg_parse_textanchor
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3294,1
    - Dst: svg_parse_display
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3297,1
    - Dst: svg_parse_visibility
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3300,1
    - Dst: svg_parse_overflow
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3303,1
    - Dst: svg_parse_zoomandpan
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3306,1
    - Dst: svg_parse_displayalign
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3309,1
    - Dst: svg_parse_textalign
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3312,1
    - Dst: svg_parse_pointerevents
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3315,1
    - Dst: svg_parse_renderinghint
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3318,1
    - Dst: svg_parse_vectoreffect
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3321,1
    - Dst: svg_parse_playbackorder
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3324,1
    - Dst: svg_parse_timelinebegin
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3327,1
    - Dst: svg_parse_xmlspace
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3330,1
    - Dst: svg_parse_xmlev_propagate
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3333,1
    - Dst: svg_parse_xmlev_defaultAction
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3336,1
    - Dst: svg_parse_xmlev_phase
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3339,1
    - Dst: smil_parse_syncBehaviorOrDefault
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3342,1
    - Dst: smil_parse_syncToleranceOrDefault
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3345,1
    - Dst: smil_parse_attributeType
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3348,1
    - Dst: smil_parse_calcmode
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3351,1
    - Dst: smil_parse_additive
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3354,1
    - Dst: smil_parse_accumulate
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3357,1
    - Dst: smil_parse_restart
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3360,1
    - Dst: smil_parse_fill
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3363,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3366,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3368,1
    - Dst: svg_parse_focushighlight
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3374,1
    - Dst: svg_parse_focusable
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3377,1
    - Dst: svg_parse_initialvisibility
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3380,1
    - Dst: svg_parse_overlay
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3383,1
    - Dst: svg_parse_transformbehavior
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3386,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3389,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3390,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3391,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3395,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3396,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3397,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3398,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3399,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3400,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3401,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3402,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3403,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3404,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3405,1
    - Dst: svg_parse_length
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3417,1
    - Dst: svg_parse_one_anim_value
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3421,1
    - Dst: svg_parse_anim_values
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3424,1
    - Dst: svg_parse_iri
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3428,1
    - Dst: svg_parse_idref
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3431,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3435,1
    - Dst: smil_parse_time_list
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3438,1
    - Dst: smil_parse_min_max_dur_repeatdur
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3441,1
    - Dst: smil_parse_repeatcount
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3444,1
    - Dst: svg_parse_path
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3447,1
    - Dst: svg_parse_points
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3450,1
    - Dst: svg_parse_numbers
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3456,1
    - Dst: svg_parse_coordinates
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3459,1
    - Dst: svg_parse_viewbox
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3462,1
    - Dst: svg_parse_strokedasharray
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3465,1
    - Dst: svg_parse_fontfamily
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3468,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3474,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3475,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3476,1
    - Dst: svg_parse_transform
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3480,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3486,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3490,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3498,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3502,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3510,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3517,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3521,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3522,1
    - Dst: svg_parse_preserveaspectratio
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3527,1
    - Dst: svg_parse_animatetransform_type
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3530,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3537,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3539,1
    - Dst: svg_parse_strings
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3543,1
    - Dst: svg_parse_strings
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3546,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3552,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3555,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3559,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3562,1
    - Dst: gf_dom_get_key_type
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3564,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3569,1
    - Dst: svg_parse_focus
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3575,1
    - Dst: svg_parse_clippath
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3578,1
    - Dst: laser_parse_choice
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3582,1
    - Dst: laser_parse_size
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3585,1
    - Dst: svg_parse_clock_value
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3588,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3591,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3592,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3595,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3599,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3599,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3601,1
    CyclomaticComplexity: 111
    EdgeCount: 111
    ICount: 339
    argCount: 4
    argNames:
    - n
    - info
    - attribute_content
    - anim_value_type
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    - char*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3605
      start: 3237
    functionDepth: 4
    functionLinenumber: 3237
    functionLinenumberEnd: 3605
    functionName: gf_svg_parse_attribute
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 6
    functionsReached:
    - gf_free
    - svg_parse_overflow
    - svg_parse_displayalign
    - smil_parse_restart
    - svg_parse_overlay
    - smil_parse_syncToleranceOrDefault
    - smil_parse_time_list
    - gf_mx2d_init
    - svg_parse_one_anim_value
    - svg_parse_iri
    - svg_parse_boolean
    - svg_parse_strokelinejoin
    - smil_parse_syncBehaviorOrDefault
    - smil_parse_fill
    - strchr
    - svg_parse_focushighlight
    - smil_parse_accumulate
    - svg_parse_textalign
    - svg_parse_xmlev_phase
    - svg_parse_anim_values
    - svg_parse_fontstyle
    - svg_parse_display
    - svg_parse_zoomandpan
    - gf_strdup
    - svg_parse_transformbehavior
    - svg_parse_transform
    - svg_parse_fontweight
    - svg_parse_visibility
    - svg_parse_pointerevents
    - svg_parse_color
    - svg_parse_fontvariant
    - svg_parse_numbers
    - svg_parse_clock_value
    - svg_parse_xmlev_defaultAction
    - svg_parse_preserveaspectratio
    - svg_parse_path
    - svg_parse_length
    - svg_parse_idref
    - svg_parse_paint
    - svg_parse_clippath
    - svg_parse_points
    - svg_parse_fontfamily
    - laser_parse_choice
    - laser_parse_size
    - sscanf
    - svg_parse_focus
    - smil_parse_calcmode
    - svg_parse_initialvisibility
    - GF_LOG
    - svg_parse_strokedasharray
    - gf_sys_is_test_mode
    - svg_parse_xmlspace
    - smil_parse_repeatcount
    - svg_parse_coordinates
    - svg_parse_animatetransform_type
    - gf_error_to_string
    - svg_parse_timelinebegin
    - svg_parse_textanchor
    - svg_parse_playbackorder
    - smil_parse_attributeType
    - strlen
    - svg_parse_number
    - svg_parse_renderinghint
    - svg_parse_clipfillrule
    - svg_parse_xmlev_propagate
    - smil_parse_min_max_dur_repeatdur
    - svg_parse_focusable
    - svg_parse_strings
    - gf_dom_event_type_by_name
    - svg_parse_viewbox
    - smil_parse_additive
    - strcmp
    - svg_parse_vectoreffect
    - gf_dom_get_key_type
    - svg_parse_strokelinecap
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_svg_parse_attribute(GF_Node *n, GF_FieldInfo *info, char
      *attribute_content, u8 anim_value_type)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3614,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3619,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3621,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3623,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3625,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3625,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - n
    - one_style
    argTypes:
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3628
      start: 3607
    functionDepth: 5
    functionLinenumber: 3607
    functionLinenumberEnd: 3628
    functionName: svg_parse_one_style
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_svg_parse_attribute
    - gf_node_get_class_name
    - GF_LOG
    - gf_node_get_field_by_name
    - strchr
    linkageType: ''
    returnType: void
    signature: void svg_parse_one_style(GF_Node *n, char *one_style)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: svg_parse_one_style
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3644,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - n
    - style
    argTypes:
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3653
      start: 3630
    functionDepth: 6
    functionLinenumber: 3630
    functionLinenumberEnd: 3653
    functionName: gf_svg_parse_style
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 1
    functionsReached:
    - svg_parse_one_style
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_svg_parse_style(GF_Node *n, char *style)
  - BBCount: 92
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3662,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3669,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3676,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3722,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3729,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3742,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3750,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3758,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3760,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3768,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3770,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3779,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3788,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3796,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3804,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3812,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3819,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3829,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3844,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3845,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3852,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3859,1
    - Dst: gf_path_reset
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3862,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3865,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3866,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3874,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3880,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3886,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3892,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3898,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3904,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3910,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3917,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3919,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3926,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3934,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3941,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3949,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3950,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3956,1
    - Dst: gf_svg_attribute_type_to_string
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3956,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 224
    argCount: 1
    argNames:
    - attribute_type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3960
      start: 3655
    functionDepth: 1
    functionLinenumber: 3655
    functionLinenumberEnd: 3960
    functionName: gf_svg_create_attribute_value
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 2
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_path_reset
    - gf_svg_attribute_type_to_string
    - gf_mx2d_init
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_svg_create_attribute_value(u32 attribute_type)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3965,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3966,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3972,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3978,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3979,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3980,1
    - Dst: gf_color_get_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3981,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3981,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3982,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3984,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3985,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3988,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 1
    argNames:
    - col
    argTypes:
    - SVG_Color*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3992
      start: 3962
    functionDepth: 1
    functionLinenumber: 3962
    functionLinenumberEnd: 3992
    functionName: svg_dump_color
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - sprintf
    - GF_COL_ARGB
    - FIX2INT
    - gf_color_get_name
    - gf_malloc
    linkageType: ''
    returnType: char
    signature: char *svg_dump_color(SVG_Color *col)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3997,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3998,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3999,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4001,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4001,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4002,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4003,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4004,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4005,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4006,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4007,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4008,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4009,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4010,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4012,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 28
    argCount: 1
    argNames:
    - l
    argTypes:
    - SVG_Number*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4014
      start: 3994
    functionDepth: 1
    functionLinenumber: 3994
    functionLinenumberEnd: 4014
    functionName: svg_dump_number
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_strdup
    - _FIX2FLT
    - sprintf
    linkageType: ''
    returnType: char
    signature: char *svg_dump_number(SVG_Number *l)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4021,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4024,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4024,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4025,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4027,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4028,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4028,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4030,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4035,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4037,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - iri
    argTypes:
    - XMLRI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4038
      start: 4016
    functionDepth: 1
    functionLinenumber: 4016
    functionLinenumberEnd: 4038
    functionName: svg_dump_iri
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_strdup
    - gf_node_get_name
    - gf_node_get_id
    - sprintf
    - strlen
    linkageType: ''
    returnType: char
    signature: char *svg_dump_iri(XMLRI*iri)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4043,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4044,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4047,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4047,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4048,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4051,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4052,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - iri
    argTypes:
    - XMLRI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4053
      start: 4040
    functionDepth: 1
    functionLinenumber: 4040
    functionLinenumberEnd: 4053
    functionName: svg_dump_idref
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_node_get_id
    - gf_strdup
    - sprintf
    - gf_node_get_name
    linkageType: ''
    returnType: char
    signature: char *svg_dump_idref(XMLRI*iri)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4061,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4075,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4075,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4075,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4078,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4080,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4080,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4081,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4081,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4082,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4082,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4082,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4090,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4090,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4090,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4090,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4090,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4094,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4102,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4102,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4102,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4102,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4102,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4102,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4102,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4105,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4111,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4111,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4111,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4112,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 55
    argCount: 1
    argNames:
    - path
    argTypes:
    - SVG_PathData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4116
      start: 4056
    functionDepth: 1
    functionLinenumber: 4056
    functionLinenumberEnd: 4116
    functionName: svg_dump_path
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcat
    - strlen
    - sprintf
    - _FIX2FLT
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: char
    signature: char *svg_dump_path(SVG_PathData *path)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4120,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4120,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - pt
    - attValue
    argTypes:
    - SVG_Point*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4121
      start: 4118
    functionDepth: 1
    functionLinenumber: 4118
    functionLinenumberEnd: 4121
    functionName: svg_dump_point
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - _FIX2FLT
    - sprintf
    linkageType: ''
    returnType: void
    signature: void svg_dump_point(SVG_Point *pt, char *attValue)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4126,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4128,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4130,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4133,1
    - Dst: svg_dump_point
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4134,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4134,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4135,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4139,1
    - Dst: svg_dump_point
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4140,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4140,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4141,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4145,1
    - Dst: svg_dump_point
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4146,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4146,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4147,1
    - Dst: svg_dump_point
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4149,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4149,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4150,1
    - Dst: svg_dump_point
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4152,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4152,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4153,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4157,1
    - Dst: svg_dump_point
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4158,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4158,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4159,1
    - Dst: svg_dump_point
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4161,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4161,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4162,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4166,1
    - Dst: svg_dump_point
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4167,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4167,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4168,1
    - Dst: svg_dump_point
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4170,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4170,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4171,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4175,1
    - Dst: svg_dump_point
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4176,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4176,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4177,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4181,1
    - Dst: svg_dump_point
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4182,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4182,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4183,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4185,1
    - Dst: svg_dump_point
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4186,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4186,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4187,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4191,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4194,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 72
    argCount: 2
    argNames:
    - path
    - attValue
    argTypes:
    - SVG_PathData*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4198
      start: 4122
    functionDepth: 2
    functionLinenumber: 4122
    functionLinenumberEnd: 4198
    functionName: svg_dump_path
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcat
    - svg_dump_point
    - gf_list_get
    - GF_LOG
    - strcpy
    - gf_list_count
    linkageType: ''
    returnType: void
    signature: void svg_dump_path(SVG_PathData *path, char *attValue)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4204,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4208,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4236,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - evt
    - attValue
    argTypes:
    - XMLEV_Event*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4237
      start: 4201
    functionDepth: 0
    functionLinenumber: 4201
    functionLinenumberEnd: 4237
    functionName: svg_dump_access_key
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcat
    - strcpy
    linkageType: ''
    returnType: void
    signature: void svg_dump_access_key(XMLEV_Event *evt, char *attValue)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4245,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4245,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4245,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4249,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4251,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4251,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4251,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4253,1
    - Dst: gf_asin
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4256,1
    - Dst: gf_cos
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4257,1
    - Dst: ABS
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4258,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4260,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4261,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4262,1
    - Dst: ABS
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4263,1
    - Dst: ABS
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4263,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4265,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4265,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4265,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4265,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4265,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4267,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4267,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4267,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4270,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4270,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4270,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4270,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4270,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4270,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4270,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4272,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4272,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4272,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4272,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4272,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4278,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4278,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4278,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4278,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4278,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4280,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4280,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4280,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4284,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4285,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4285,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4285,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4285,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4285,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4285,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4285,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4287,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 39
    argCount: 1
    argNames:
    - matrix
    argTypes:
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4288
      start: 4239
    functionDepth: 1
    functionLinenumber: 4239
    functionLinenumberEnd: 4288
    functionName: gf_svg_dump_matrix
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_strdup
    - ABS
    - strcpy
    - gf_divfix
    - sprintf
    - _FIX2FLT
    - gf_asin
    - strlen
    - gf_cos
    linkageType: ''
    returnType: char
    signature: char *gf_svg_dump_matrix(GF_Matrix2D *matrix)
  - BBCount: 303
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4295,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4300,1
    - Dst: svg_dump_color
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4303,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4308,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4309,1
    - Dst: svg_dump_iri
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4311,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4312,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4312,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4313,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4314,1
    - Dst: svg_dump_color
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4317,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4324,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4325,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4326,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4330,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4331,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4332,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4333,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4336,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4337,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4338,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4339,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4342,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4343,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4344,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4345,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4348,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4349,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4350,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4351,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4352,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4353,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4354,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4355,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4356,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4357,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4358,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4359,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4360,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4361,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4364,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4365,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4366,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4369,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4370,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4371,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4372,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4375,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4376,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4377,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4378,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4379,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4380,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4381,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4382,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4383,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4384,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4385,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4386,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4387,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4388,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4389,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4390,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4391,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4392,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4395,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4396,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4397,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4398,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4401,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4402,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4403,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4404,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4405,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4408,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4409,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4412,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4413,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4414,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4415,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4416,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4419,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4420,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4421,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4422,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4425,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4426,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4427,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4428,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4429,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4430,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4431,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4432,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4433,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4434,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4435,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4438,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4439,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4440,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4441,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4442,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4443,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4444,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4447,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4448,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4449,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4452,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4453,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4456,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4457,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4460,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4461,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4464,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4465,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4468,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4469,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4472,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4473,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4476,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4477,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4478,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4479,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4480,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4483,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4484,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4486,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4487,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4491,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4492,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4493,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4496,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4497,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4498,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4499,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4502,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4503,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4506,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4507,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4510,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4511,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4512,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4515,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4516,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4520,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4521,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4524,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4525,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4528,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4529,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4532,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4533,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4536,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4537,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4538,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4539,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4540,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4543,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4544,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4545,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4549,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4550,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4551,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4552,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4553,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4557,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4558,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4560,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4561,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4565,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4565,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4565,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4566,1
    - Dst: svg_dump_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4576,1
    - Dst: svg_dump_iri
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4580,1
    - Dst: svg_dump_idref
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4582,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4586,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4587,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4592,1
    - Dst: svg_dump_iri
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4593,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4594,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4596,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4596,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4597,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4598,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4600,1
    - Dst: svg_dump_path
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4608,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4616,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4617,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4621,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4622,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4622,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4622,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4623,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4623,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4623,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4624,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4625,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4637,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4638,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4642,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4643,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4643,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4644,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4644,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4644,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4645,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4646,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4656,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4657,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4661,1
    - Dst: svg_dump_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4662,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4663,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4663,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4663,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4664,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4665,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4666,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4676,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4676,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4676,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4676,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4676,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4677,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4679,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4685,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4686,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4689,1
    - Dst: svg_dump_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4696,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4697,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4697,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4697,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4698,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4699,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4700,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4709,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4716,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4717,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4718,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4719,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4720,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4721,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4722,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4723,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4724,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4725,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4726,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4727,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4729,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4733,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4734,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4742,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4748,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4749,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4751,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4752,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4758,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4759,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4765,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4766,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4767,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4774,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4775,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4778,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4779,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4779,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4779,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4780,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4781,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4791,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4792,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4796,1
    - Dst: svg_dump_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4797,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4798,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4798,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4798,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4799,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4800,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4801,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4812,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4812,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4812,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4813,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4822,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4822,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4822,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4823,1
    - Dst: gf_svg_dump_matrix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4825,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4834,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4834,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4834,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4835,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4845,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4845,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4847,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4847,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4847,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4849,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4859,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4859,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4859,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4860,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4870,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4870,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4870,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4870,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4870,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4872,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4872,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4872,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4874,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4883,1
    - Dst: gf_svg_get_attribute_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4886,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4888,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4891,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4899,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4901,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4903,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4906,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4909,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4911,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4918,1
    - Dst: svg_dump_access_key
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4922,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4925,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4926,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4927,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4928,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4930,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4932,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4932,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4934,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4936,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4936,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4940,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4941,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4945,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4945,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4945,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4946,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4946,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4947,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4956,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4957,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4959,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4960,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4962,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4969,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4971,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4971,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4972,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4975,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4982,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4983,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4984,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4985,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4986,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4987,1
    - Dst: gf_svg_dump_attribute
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4999,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5007,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5010,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5016,1
    - Dst: gf_svg_dump_attribute
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5017,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5019,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5019,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5019,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5020,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5021,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5022,1
    - Dst: svg_dump_access_key
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5032,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5034,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5034,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5036,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5039,1
    - Dst: gf_svg_attribute_type_to_string
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5039,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5042,1
    CyclomaticComplexity: 291
    EdgeCount: 291
    ICount: 779
    argCount: 2
    argNames:
    - elt
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5043
      start: 4290
    functionDepth: 2
    functionLinenumber: 4290
    functionLinenumberEnd: 5043
    functionName: gf_svg_dump_attribute
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_svg_dump_matrix
    - strcpy
    - gf_svg_dump_attribute
    - gf_list_count
    - svg_dump_color
    - svg_dump_path
    - gf_node_get_parent
    - gf_realloc
    - strcat
    - svg_dump_access_key
    - gf_strdup
    - gf_list_get
    - gf_node_get_name
    - gf_node_get_id
    - gf_svg_get_attribute_name
    - sprintf
    - svg_dump_idref
    - GF_LOG
    - gf_divfix
    - gf_dom_event_get_name
    - _FIX2FLT
    - strlen
    - gf_malloc
    - svg_dump_iri
    - gf_svg_attribute_type_to_string
    - svg_dump_number
    linkageType: ''
    returnType: char
    signature: char *gf_svg_dump_attribute(GF_Node *elt, GF_FieldInfo *info)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5053,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5058,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5059,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5059,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5059,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5060,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5068,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5069,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5069,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5070,1
    - Dst: svg_dump_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5075,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5081,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5081,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5082,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5089,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5089,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5090,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5095,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5097,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5099,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5106,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5109,1
    - Dst: svg_dump_access_key
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5111,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5113,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5115,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5116,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5117,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5118,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5120,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5122,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5122,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5124,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5126,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5126,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5130,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5131,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5134,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5138,1
    - Dst: gf_svg_attribute_type_to_string
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5138,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5141,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 75
    argCount: 2
    argNames:
    - elt
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5142
      start: 5045
    functionDepth: 2
    functionLinenumber: 5045
    functionLinenumberEnd: 5142
    functionName: gf_svg_dump_attribute_indexed
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - svg_dump_access_key
    - strcat
    - gf_strdup
    - gf_list_get
    - gf_node_get_name
    - gf_node_get_id
    - GF_LOG
    - strcpy
    - sprintf
    - gf_dom_event_get_name
    - _FIX2FLT
    - gf_svg_attribute_type_to_string
    - gf_node_get_parent
    - svg_dump_number
    linkageType: ''
    returnType: char
    signature: char *gf_svg_dump_attribute_indexed(GF_Node *elt, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 2
    argNames:
    - v1
    - v2
    argTypes:
    - SVG_ViewBox*
    - SVG_ViewBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5155
      start: 5144
    functionDepth: 0
    functionLinenumber: 5144
    functionLinenumberEnd: 5155
    functionName: svg_viewbox_equal
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool svg_viewbox_equal(SVG_ViewBox *v1, SVG_ViewBox *v2)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - c1
    - c2
    argTypes:
    - SVG_Color*
    - SVG_Color*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5164
      start: 5157
    functionDepth: 0
    functionLinenumber: 5157
    functionLinenumberEnd: 5164
    functionName: svg_colors_equal
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool svg_colors_equal(SVG_Color *c1, SVG_Color *c2)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - l1
    - l2
    argTypes:
    - SVG_Length*
    - SVG_Length*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5170
      start: 5165
    functionDepth: 0
    functionLinenumber: 5165
    functionLinenumberEnd: 5170
    functionName: svg_numbers_equal
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool svg_numbers_equal(SVG_Length *l1, SVG_Length *l2)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5178,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5181,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5185,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 20
    argCount: 2
    argNames:
    - iri1
    - iri2
    argTypes:
    - XMLRI*
    - XMLRI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5188
      start: 5171
    functionDepth: 1
    functionLinenumber: 5171
    functionLinenumberEnd: 5188
    functionName: svg_iris_equal
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_node_get_id
    - strcmp
    linkageType: ''
    returnType: Bool
    signature: Bool svg_iris_equal(XMLRI*iri1, XMLRI*iri2)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 2
    argNames:
    - m1
    - m2
    argTypes:
    - GF_Matrix2D*
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5198
      start: 5189
    functionDepth: 0
    functionLinenumber: 5189
    functionLinenumberEnd: 5198
    functionName: svg_matrices_equal
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool svg_matrices_equal(GF_Matrix2D *m1, GF_Matrix2D *m2)
  - BBCount: 149
    BranchProfiles: []
    Callsites:
    - Dst: svg_colors_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5253,1
    - Dst: svg_colors_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5268,1
    - Dst: svg_iris_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5269,1
    - Dst: svg_numbers_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5279,1
    - Dst: svg_iris_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5281,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5286,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5287,1
    - Dst: svg_iris_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5289,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5289,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5289,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5315,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5315,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5324,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5325,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5327,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5328,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5341,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5342,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5344,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5345,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5355,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5356,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5358,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5359,1
    - Dst: svg_numbers_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5360,1
    - Dst: svg_viewbox_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5368,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5391,1
    - Dst: svg_matrices_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5399,1
    - Dst: svg_matrices_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5406,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5449,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5458,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5466,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5475,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5476,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5478,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5479,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5480,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5489,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5490,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5492,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5493,1
    - Dst: svg_numbers_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5494,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5503,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5504,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5506,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5507,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5558,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5558,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5578,1
    - Dst: gf_svg_attribute_type_to_string
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5578,1
    CyclomaticComplexity: 92
    EdgeCount: 92
    ICount: 305
    argCount: 2
    argNames:
    - f1
    - f2
    argTypes:
    - GF_FieldInfo*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5581
      start: 5200
    functionDepth: 2
    functionLinenumber: 5200
    functionLinenumberEnd: 5581
    functionName: gf_svg_attributes_equal
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - svg_colors_equal
    - svg_iris_equal
    - gf_list_get
    - svg_viewbox_equal
    - svg_matrices_equal
    - GF_LOG
    - gf_list_count
    - strcmp
    - gf_svg_attribute_type_to_string
    - svg_numbers_equal
    linkageType: ''
    returnType: Bool
    signature: Bool gf_svg_attributes_equal(GF_FieldInfo *f1, GF_FieldInfo *f2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5585,1
    - Dst: MIN
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5585,1
    - Dst: MAX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5586,1
    - Dst: MIN
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5586,1
    - Dst: MAX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5587,1
    - Dst: MIN
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5587,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - a
    argTypes:
    - SVG_Color*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5588
      start: 5583
    functionDepth: 1
    functionLinenumber: 5583
    functionLinenumberEnd: 5588
    functionName: svg_color_clamp
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - MAX
    - MIN
    linkageType: ''
    returnType: void
    signature: void svg_color_clamp(SVG_Color *a)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5593,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5597,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5597,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5598,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5598,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5599,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5599,1
    - Dst: svg_color_clamp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5600,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 6
    argNames:
    - alpha
    - a
    - beta
    - b
    - c
    - clamp
    argTypes:
    - Fixed
    - SVG_Color*
    - Fixed
    - SVG_Color*
    - SVG_Color*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5602
      start: 5590
    functionDepth: 2
    functionLinenumber: 5590
    functionLinenumberEnd: 5602
    functionName: svg_color_muladd
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - svg_color_clamp
    - gf_mulfix
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_color_muladd(Fixed alpha, SVG_Color *a, Fixed beta, SVG_Color
      *b, SVG_Color *c, Bool clamp)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5608,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5612,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5615,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5615,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 5
    argNames:
    - alpha
    - a
    - beta
    - b
    - c
    argTypes:
    - Fixed
    - SVG_Number*
    - Fixed
    - SVG_Number*
    - SVG_Number*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5617
      start: 5604
    functionDepth: 1
    functionLinenumber: 5604
    functionLinenumberEnd: 5617
    functionName: svg_number_muladd
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_mulfix
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_number_muladd(Fixed alpha, SVG_Number *a, Fixed beta, SVG_Number
      *b, SVG_Number *c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5622,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5622,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5623,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5623,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5624,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5624,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5625,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5625,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 5
    argNames:
    - alpha
    - a
    - beta
    - b
    - c
    argTypes:
    - Fixed
    - SVG_ViewBox*
    - Fixed
    - SVG_ViewBox*
    - SVG_ViewBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5627
      start: 5619
    functionDepth: 0
    functionLinenumber: 5619
    functionLinenumberEnd: 5627
    functionName: svg_viewbox_muladd
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_mulfix
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_viewbox_muladd(Fixed alpha, SVG_ViewBox *a, Fixed beta,
      SVG_ViewBox *b, SVG_ViewBox *c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5633,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5633,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5634,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5634,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 5
    argNames:
    - alpha
    - pta
    - beta
    - ptb
    - ptc
    argTypes:
    - Fixed
    - SVG_Point*
    - Fixed
    - SVG_Point*
    - SVG_Point*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5636
      start: 5629
    functionDepth: 0
    functionLinenumber: 5629
    functionLinenumberEnd: 5636
    functionName: svg_point_muladd
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_mulfix
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_point_muladd(Fixed alpha, SVG_Point *pta, Fixed beta, SVG_Point
      *ptb, SVG_Point *ptc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5640,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5640,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5641,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5641,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5642,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5642,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - alpha
    - pta
    - beta
    - ptb
    - ptc
    argTypes:
    - Fixed
    - SVG_Point_Angle*
    - Fixed
    - SVG_Point_Angle*
    - SVG_Point_Angle*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5644
      start: 5638
    functionDepth: 0
    functionLinenumber: 5638
    functionLinenumberEnd: 5644
    functionName: svg_point_angle_muladd
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_mulfix
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_point_angle_muladd(Fixed alpha, SVG_Point_Angle *pta, Fixed
      beta, SVG_Point_Angle *ptb, SVG_Point_Angle *ptc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5648,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5651,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5653,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5654,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5655,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5656,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5660,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5661,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5662,1
    - Dst: svg_point_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5664,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5665,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 5
    argNames:
    - alpha
    - a
    - beta
    - b
    - c
    argTypes:
    - Fixed
    - SVG_Points*
    - Fixed
    - SVG_Points*
    - SVG_Points*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5669
      start: 5646
    functionDepth: 1
    functionLinenumber: 5646
    functionLinenumberEnd: 5669
    functionName: svg_points_muladd
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - GF_SAFEALLOC
    - gf_list_count
    - gf_list_add
    - svg_point_muladd
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_points_muladd(Fixed alpha, SVG_Points *a, Fixed beta, SVG_Points
      *b, SVG_Points *c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5675,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5677,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5678,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5680,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5682,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5684,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5686,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5689,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - SVG_Points*
    - SVG_Points*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5693
      start: 5671
    functionDepth: 1
    functionLinenumber: 5671
    functionLinenumberEnd: 5693
    functionName: svg_points_copy
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - GF_SAFEALLOC
    - gf_list_reset
    - gf_list_count
    - gf_list_add
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_points_copy(SVG_Points *a, SVG_Points *b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5697,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5700,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5702,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5703,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5704,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5709,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5710,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5711,1
    - Dst: svg_number_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5713,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5714,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - alpha
    - a
    - beta
    - b
    - c
    argTypes:
    - Fixed
    - SVG_Numbers*
    - Fixed
    - SVG_Numbers*
    - SVG_Numbers*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5717
      start: 5695
    functionDepth: 2
    functionLinenumber: 5695
    functionLinenumberEnd: 5717
    functionName: svg_numbers_muladd
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_pop_back
    - GF_SAFEALLOC
    - gf_list_count
    - gf_list_add
    - svg_number_muladd
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_numbers_muladd(Fixed alpha, SVG_Numbers *a, Fixed beta,
      SVG_Numbers *b, SVG_Numbers *c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5723,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5725,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5726,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5728,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5730,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5733,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5735,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5736,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - SVG_Numbers*
    - SVG_Numbers*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5739
      start: 5719
    functionDepth: 1
    functionLinenumber: 5719
    functionLinenumberEnd: 5739
    functionName: svg_numbers_copy
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - GF_SAFEALLOC
    - gf_list_reset
    - gf_list_count
    - gf_list_add
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_numbers_copy(SVG_Numbers *a, SVG_Numbers *b)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5747,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5748,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5749,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5751,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5754,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5755,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5760,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5761,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5766,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5767,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - SVG_PathData*
    - SVG_PathData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5774
      start: 5742
    functionDepth: 0
    functionLinenumber: 5742
    functionLinenumberEnd: 5774
    functionName: svg_path_copy
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memset
    - memcpy
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_path_copy(SVG_PathData *a, SVG_PathData *b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5779,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5781,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5782,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5784,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5785,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5787,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5788,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5790,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5792,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5794,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5795,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5796,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5798,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5801,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5803,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5804,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - SVG_PathData*
    - SVG_PathData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5807
      start: 5776
    functionDepth: 1
    functionLinenumber: 5776
    functionLinenumberEnd: 5807
    functionName: svg_path_copy
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_reset
    - GF_SAFEALLOC
    - gf_list_count
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_path_copy(SVG_PathData *a, SVG_PathData *b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_reset
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5816,1
    - Dst: svg_path_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5817,1
    - Dst: svg_point_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5820,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 5
    argNames:
    - alpha
    - a
    - beta
    - b
    - c
    argTypes:
    - Fixed
    - SVG_PathData*
    - Fixed
    - SVG_PathData*
    - SVG_PathData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5825
      start: 5811
    functionDepth: 1
    functionLinenumber: 5811
    functionLinenumberEnd: 5825
    functionName: svg_path_muladd
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - svg_path_copy
    - svg_point_muladd
    - gf_path_reset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_path_muladd(Fixed alpha, SVG_PathData *a, Fixed beta, SVG_PathData
      *b, SVG_PathData *c)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5831,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5832,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5834,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5837,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5839,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5840,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5845,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5846,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5847,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5848,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5850,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5851,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5852,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5853,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5857,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5858,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5859,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5862,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5863,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5865,1
    - Dst: svg_point_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5867,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5868,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 5
    argNames:
    - alpha
    - a
    - beta
    - b
    - c
    argTypes:
    - Fixed
    - SVG_PathData*
    - Fixed
    - SVG_PathData*
    - SVG_PathData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5871
      start: 5827
    functionDepth: 1
    functionLinenumber: 5827
    functionLinenumberEnd: 5871
    functionName: svg_path_muladd
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_list_get
    - GF_SAFEALLOC
    - gf_list_count
    - gf_list_add
    - svg_point_muladd
    - gf_list_last
    - gf_list_rem_last
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_path_muladd(Fixed alpha, SVG_PathData *a, Fixed beta, SVG_PathData
      *b, SVG_PathData *c)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5884,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5885,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5891,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5891,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 5
    argNames:
    - alpha
    - a
    - beta
    - b
    - c
    argTypes:
    - Fixed
    - SVG_StrokeDashArray*
    - Fixed
    - SVG_StrokeDashArray*
    - SVG_StrokeDashArray*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5894
      start: 5875
    functionDepth: 0
    functionLinenumber: 5875
    functionLinenumberEnd: 5894
    functionName: svg_dasharray_muladd
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_mulfix
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_dasharray_muladd(Fixed alpha, SVG_StrokeDashArray *a, Fixed
      beta, SVG_StrokeDashArray *b, SVG_StrokeDashArray *c)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5901,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5902,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5905,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5906,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - SVG_StrokeDashArray*
    - SVG_StrokeDashArray*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5908
      start: 5896
    functionDepth: 0
    functionLinenumber: 5896
    functionLinenumberEnd: 5908
    functionName: svg_dasharray_copy
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_dasharray_copy(SVG_StrokeDashArray *a, SVG_StrokeDashArray
      *b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5931,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5931,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5934,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5934,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5936,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 5
    argNames:
    - alpha
    - a
    - beta
    - b
    - c
    argTypes:
    - Fixed
    - GF_Matrix2D*
    - Fixed
    - GF_Matrix2D*
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5940
      start: 5910
    functionDepth: 1
    functionLinenumber: 5910
    functionLinenumberEnd: 5940
    functionName: svg_matrix_muladd
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_mulfix
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_matrix_muladd(Fixed alpha, GF_Matrix2D *a, Fixed beta, GF_Matrix2D
      *b, GF_Matrix2D *c)
  - BBCount: 97
    BranchProfiles: []
    Callsites:
    - Dst: svg_color_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5968,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5976,1
    - Dst: svg_color_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5980,1
    - Dst: svg_number_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5987,1
    - Dst: svg_viewbox_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5990,1
    - Dst: svg_points_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5993,1
    - Dst: svg_numbers_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5997,1
    - Dst: svg_path_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6000,1
    - Dst: svg_dasharray_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6003,1
    - Dst: svg_matrix_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6006,1
    - Dst: svg_matrix_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6014,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6016,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6029,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6032,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6032,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6032,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6035,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6035,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6035,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6038,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6038,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6038,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6038,1
    - Dst: gf_mx2d_add_skew_x
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6041,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6041,1
    - Dst: gf_mx2d_add_skew_y
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6044,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6044,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6047,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6050,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6051,1
    - Dst: svg_point_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6057,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6059,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6069,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6070,1
    - Dst: svg_point_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6073,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6076,1
    - Dst: svg_point_angle_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6082,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6084,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6090,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6090,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6093,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6099,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6099,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6102,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6112,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6113,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6114,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6115,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6117,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6118,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6119,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6122,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6131,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6131,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6132,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6132,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6195,1
    - Dst: gf_svg_attribute_type_to_string
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6195,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 193
    argCount: 6
    argNames:
    - alpha
    - a
    - beta
    - b
    - c
    - clamp
    argTypes:
    - Fixed
    - GF_FieldInfo*
    - Fixed
    - GF_FieldInfo*
    - GF_FieldInfo*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6199
      start: 5943
    functionDepth: 3
    functionLinenumber: 5943
    functionLinenumberEnd: 6199
    functionName: gf_svg_attributes_muladd
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_free
    - svg_point_angle_muladd
    - gf_mx2d_add_scale
    - svg_points_muladd
    - gf_mx2d_add_matrix
    - memcpy
    - svg_number_muladd
    - gf_mulfix
    - svg_path_muladd
    - GF_LOG
    - svg_viewbox_muladd
    - gf_mx2d_copy
    - svg_point_muladd
    - strlen
    - gf_malloc
    - gf_mx2d_add_translation
    - svg_numbers_muladd
    - svg_matrix_muladd
    - svg_color_muladd
    - FIX2INT
    - svg_dasharray_muladd
    - gf_mx2d_add_skew_x
    - gf_svg_attribute_type_to_string
    - gf_mx2d_add_skew_y
    - gf_mx2d_init
    - gf_mx2d_add_rotation
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err gf_svg_attributes_muladd(Fixed alpha, GF_FieldInfo *a,\n                                Fixed
      beta, GF_FieldInfo *b,\n                                GF_FieldInfo *c,\n                                Bool
      clamp)"
  - BBCount: 95
    BranchProfiles: []
    Callsites:
    - Dst: svg_color_clamp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6210,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6223,1
    - Dst: svg_points_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6243,1
    - Dst: svg_numbers_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6247,1
    - Dst: svg_path_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6250,1
    - Dst: svg_dasharray_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6253,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6256,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6262,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6263,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6266,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6267,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6270,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6271,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6274,1
    - Dst: gf_mx2d_add_skew_x
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6275,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6278,1
    - Dst: gf_mx2d_add_skew_y
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6279,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6282,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6285,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6337,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6338,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6343,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6344,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6350,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6352,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6354,1
    - Dst: gf_node_register_iri
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6360,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6360,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6369,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6370,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6378,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6379,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6388,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6389,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6390,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6391,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6393,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6396,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6397,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6398,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6399,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6409,1
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6427,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6432,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6448,1
    - Dst: gf_svg_attribute_type_to_string
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6448,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 209
    argCount: 3
    argNames:
    - a
    - b
    - clamp
    argTypes:
    - GF_FieldInfo*
    - GF_FieldInfo*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6452
      start: 6202
    functionDepth: 2
    functionLinenumber: 6202
    functionLinenumberEnd: 6452
    functionName: gf_svg_attributes_copy
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_mx2d_add_scale
    - gf_node_register_iri
    - gf_list_count
    - gf_strdup
    - gf_list_get
    - memcpy
    - gf_svg_attributes_copy
    - svg_dasharray_copy
    - svg_points_copy
    - gf_list_add
    - svg_path_copy
    - GF_LOG
    - svg_numbers_copy
    - gf_node_get_graph
    - gf_mx2d_copy
    - gf_malloc
    - gf_mx2d_add_translation
    - svg_color_clamp
    - gf_svg_create_attribute_value
    - gf_mx2d_add_skew_x
    - gf_svg_attribute_type_to_string
    - gf_mx2d_add_skew_y
    - gf_mx2d_init
    - gf_mx2d_add_rotation
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_svg_attributes_copy(GF_FieldInfo *a, GF_FieldInfo *b,
      Bool clamp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_attributes_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6457,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - a
    - b
    - c
    - clamp
    argTypes:
    - GF_FieldInfo*
    - GF_FieldInfo*
    - GF_FieldInfo*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6458
      start: 6455
    functionDepth: 4
    functionLinenumber: 6455
    functionLinenumberEnd: 6458
    functionName: gf_svg_attributes_add
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_svg_attributes_muladd
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_svg_attributes_add(GF_FieldInfo *a, GF_FieldInfo *b, GF_FieldInfo
      *c, Bool clamp)
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 1
    argNames:
    - type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6487
      start: 6460
    functionDepth: 0
    functionLinenumber: 6460
    functionLinenumberEnd: 6487
    functionName: gf_svg_attribute_is_interpolatable
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_svg_attribute_is_interpolatable(u32 type)
  - BBCount: 79
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6496,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6497,1
    - Dst: gf_svg_attributes_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6524,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6577,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6579,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6594,1
    - Dst: gf_svg_attribute_type_to_string
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6594,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 94
    argCount: 5
    argNames:
    - a
    - b
    - c
    - coef
    - clamp
    argTypes:
    - GF_FieldInfo*
    - GF_FieldInfo*
    - GF_FieldInfo*
    - Fixed
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6599
      start: 6489
    functionDepth: 4
    functionLinenumber: 6489
    functionLinenumberEnd: 6599
    functionName: gf_svg_attributes_interpolate
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_svg_attributes_muladd
    - GF_LOG
    - gf_svg_attributes_copy
    - gf_svg_attributes_equal
    - gf_svg_attribute_type_to_string
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_svg_attributes_interpolate(GF_FieldInfo *a, GF_FieldInfo
      *b, GF_FieldInfo *c, Fixed coef, Bool clamp)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6616
      start: 6601
    functionDepth: 0
    functionLinenumber: 6601
    functionLinenumberEnd: 6616
    functionName: gf_svg_is_current_color
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_svg_is_current_color(GF_FieldInfo *a)
  - BBCount: 86
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 173
    argCount: 1
    argNames:
    - att_type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6792
      start: 6618
    functionDepth: 0
    functionLinenumber: 6618
    functionLinenumberEnd: 6792
    functionName: gf_svg_attribute_type_to_string
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_svg_attribute_type_to_string(u32 att_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 42
    functionName: countof
    functionSourceFile: /src/gpac/src/scenegraph/qjs_common.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: countof(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: JS_CHECK_STRING
    functionSourceFile: /src/gpac/src/scenegraph/qjs_common.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JS_CHECK_STRING(_v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _ctx
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 254
    functionName: GF_JS_EXCEPTION
    functionSourceFile: /src/gpac/src/scenegraph/qjs_common.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GF_JS_EXCEPTION(_ctx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scenegraph/vrml_proto.c:42,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_proto.c:44,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:49,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:52,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:53,1
    - Dst: gf_sg_new_subscene
      Src: /src/gpac/src/scenegraph/vrml_proto.c:55,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:56,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_proto.c:59,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_proto.c:61,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:64,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:66,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 4
    argNames:
    - inScene
    - ProtoID
    - name
    - unregistered
    argTypes:
    - GF_SceneGraph*
    - u32
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 69
    functionName: gf_sg_proto_new
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - gf_strdup
    - GF_SAFEALLOC
    - GF_LOG
    - gf_sg_new_subscene
    - gf_list_add
    - gf_sg_find_proto
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sg_proto_new(GF_SceneGraph *inScene, u32 ProtoID, char
      *name, Bool unregistered)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/vrml_proto.c:88,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:91,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_proto.c:96,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:98,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 3
    argNames:
    - proto
    - inScene
    - set_in
    argTypes:
    - GF_Proto*
    - GF_SceneGraph*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 99
    functionName: gf_sg_proto_set_in_graph
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_list_add
    - gf_list_del_item
    - stricmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sg_proto_set_in_graph(GF_Proto *proto, GF_SceneGraph *inScene,
      Bool set_in)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/vrml_proto.c:108,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/vrml_proto.c:110,1
    - Dst: GF_Proto*::OnDelete
      Src: /src/gpac/src/scenegraph/vrml_proto.c:112,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:115,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:116,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_proto.c:117,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/vrml_proto.c:118,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/vrml_proto.c:120,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:123,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:124,1
    - Dst: GF_ProtoFieldInterface*::OnDelete
      Src: /src/gpac/src/scenegraph/vrml_proto.c:125,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_proto.c:129,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/vrml_proto.c:133,1
    - Dst: gf_sg_vrml_field_pointer_del
      Src: /src/gpac/src/scenegraph/vrml_proto.c:136,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:138,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:141,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:142,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:143,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/vrml_proto.c:144,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/vrml_proto.c:146,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:148,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:149,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/vrml_proto.c:150,1
    - Dst: gf_sg_del
      Src: /src/gpac/src/scenegraph/vrml_proto.c:155,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:158,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/vrml_proto.c:159,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/vrml_proto.c:160,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:161,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 48
    argCount: 1
    argNames:
    - proto
    argTypes:
    - GF_Proto*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 163
    functionName: gf_sg_proto_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 2
    functionsReached:
    - gf_sg_vrml_field_pointer_del
    - gf_free
    - gf_list_get
    - gf_sg_del
    - gf_sg_mfurl_del
    - GF_ProtoFieldInterface*::OnDelete
    - gf_list_count
    - gf_node_unregister_children
    - gf_list_del_item
    - gf_node_unregister
    - gf_list_del
    - GF_Proto*::OnDelete
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_proto_del(GF_Proto *proto)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 169
    functionName: GF_SceneGraph *gf_sg_proto_get_graph(GF_Proto *proto)
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_SceneGraph *gf_sg_proto_get_graph(GF_Proto *proto)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - p
    - ptr
    argTypes:
    - GF_Proto*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 179
    functionName: gf_sg_proto_set_private
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_sg_proto_set_private(GF_Proto *p, void *ptr, void (*OnDelete)(void
      *ptr) )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_Proto*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 184
    functionName: gf_sg_proto_get_private
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void *gf_sg_proto_get_private(GF_Proto *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - proto
    argTypes:
    - GF_Proto*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 191
    functionName: gf_sg_proto_get_extern_url
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sg_proto_get_extern_url(GF_Proto *proto)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:197,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - proto
    - pNode
    argTypes:
    - GF_Proto*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 193
    functionDepth: 1
    functionLinenumber: 193
    functionLinenumberEnd: 198
    functionName: gf_sg_proto_add_node_code
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 1
    functionsReached:
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_proto_add_node_code(GF_Proto *proto, GF_Node *pNode)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:205,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_proto.c:206,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 209
    functionName: GF_ProtoFieldInterface *gf_sg_proto_field_find_by_name(GF_Proto
      *proto, char *fieldName)
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - strcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ProtoFieldInterface *gf_sg_proto_field_find_by_name(GF_Proto
      *proto, char *fieldName)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_proto_field_find_by_name
      Src: /src/gpac/src/scenegraph/vrml_proto.c:217,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:220,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:234,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_proto.c:237,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:239,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:262,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 46
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 211
    functionDepth: 1
    functionLinenumber: 211
    functionLinenumberEnd: 264
    functionName: GF_ProtoFieldInterface *gf_sg_proto_field_new(GF_Proto *proto, u32
      fieldType, u32 eventType, char *fieldName)
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - gf_sg_proto_field_find_by_name
    - gf_list_count
    - gf_list_add
    - gf_sg_vrml_field_pointer_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ProtoFieldInterface *gf_sg_proto_field_new(GF_Proto *proto,
      u32 fieldType, u32 eventType, char *fieldName)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - field
    - ptr
    argTypes:
    - GF_ProtoFieldInterface*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 273
    functionName: gf_sg_proto_field_set_private
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_sg_proto_field_set_private(GF_ProtoFieldInterface *field, void
      *ptr, void (*OnDelete)(void *ptr))
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - field
    argTypes:
    - GF_ProtoFieldInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 278
    functionName: gf_sg_proto_field_get_private
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void *gf_sg_proto_field_get_private(GF_ProtoFieldInterface *field)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_proto.c:285,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - field
    - info
    argTypes:
    - GF_ProtoFieldInterface*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 281
    functionDepth: 0
    functionLinenumber: 281
    functionLinenumberEnd: 293
    functionName: gf_sg_proto_field_get_field
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 2
    functionsReached:
    - memset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_proto_field_get_field(GF_ProtoFieldInterface *field,
      GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:304,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:320,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:327,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:334,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 37
    argCount: 3
    argNames:
    - proto
    - node
    - info
    argTypes:
    - GF_Proto*
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 295
    functionDepth: 1
    functionLinenumber: 295
    functionLinenumberEnd: 341
    functionName: gf_sg_proto_get_field
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_sg_vrml_get_sf_type
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sg_proto_get_field(GF_Proto *proto, GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:358,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:359,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_proto.c:360,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 16
    argCount: 3
    argNames:
    - proto
    - node
    - name
    argTypes:
    - GF_Proto*
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 343
    functionDepth: 1
    functionLinenumber: 343
    functionLinenumberEnd: 363
    functionName: gf_sg_proto_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 gf_sg_proto_get_field_index_by_name(GF_Proto *proto, GF_Node *node,
      char *name)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_name_and_id
      Src: /src/gpac/src/scenegraph/vrml_proto.c:387,1
    - Dst: gf_sg_get_next_available_node_id
      Src: /src/gpac/src/scenegraph/vrml_proto.c:390,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_proto.c:392,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/vrml_proto.c:392,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/vrml_proto.c:392,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/vrml_proto.c:393,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/vrml_proto.c:394,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_proto.c:397,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scenegraph/vrml_proto.c:401,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/vrml_proto.c:401,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/vrml_proto.c:404,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:405,1
    - Dst: gf_sg_proto_create_node
      Src: /src/gpac/src/scenegraph/vrml_proto.c:413,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:415,1
    - Dst: gf_node_get_field_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:418,1
    - Dst: gf_sg_script_prepare_clone
      Src: /src/gpac/src/scenegraph/vrml_proto.c:426,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scenegraph/vrml_proto.c:431,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:432,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/vrml_proto.c:434,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_proto.c:438,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_proto.c:441,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_proto.c:443,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_proto.c:444,1
    - Dst: gf_node_clone
      Src: /src/gpac/src/scenegraph/vrml_proto.c:449,1
    - Dst: gf_node_clone
      Src: /src/gpac/src/scenegraph/vrml_proto.c:456,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scenegraph/vrml_proto.c:457,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_proto.c:462,1
    - Dst: gf_sg_proto_field_is_sftime_offset
      Src: /src/gpac/src/scenegraph/vrml_proto.c:466,1
    - Dst: GF_SceneGraph*::GetSceneTime
      Src: /src/gpac/src/scenegraph/vrml_proto.c:467,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_proto.c:468,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_proto.c:468,1
    - Dst: GF_SceneGraph*::GetSceneTime
      Src: /src/gpac/src/scenegraph/vrml_proto.c:469,1
    - Dst: gf_sg_vrml_field_clone
      Src: /src/gpac/src/scenegraph/vrml_proto.c:473,1
    - Dst: BIFS_SetupConditionalClone
      Src: /src/gpac/src/scenegraph/vrml_proto.c:481,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scenegraph/vrml_proto.c:484,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:491,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:498,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:503,1
    - Dst: gf_sg_route_activate
      Src: /src/gpac/src/scenegraph/vrml_proto.c:508,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:513,1
    - Dst: gf_sg_proto_instantiate
      Src: /src/gpac/src/scenegraph/vrml_proto.c:521,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 109
    argCount: 4
    argNames:
    - inScene
    - orig
    - cloned_parent
    - inst_id_suffix
    argTypes:
    - GF_SceneGraph*
    - GF_Node*
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 366
    functionDepth: 4
    functionLinenumber: 366
    functionLinenumberEnd: 524
    functionName: gf_vrml_node_clone
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_clone
    - strcpy
    - gf_node_list_add_child_last
    - gf_sg_script_prepare_clone
    - gf_sg_get_next_available_node_id
    - gf_sg_vrml_field_copy
    - gf_node_get_field
    - gf_sg_proto_instantiate
    - strcat
    - gf_node_init
    - gf_strdup
    - gf_assert
    - gf_sg_vrml_field_clone
    - gf_sg_find_node_by_name
    - gf_node_set_id
    - gf_sg_route_activate
    - gf_sg_route_new
    - gf_list_add
    - stricmp
    - GF_SceneGraph*::GetSceneTime
    - gf_sg_find_node
    - gf_sg_proto_field_is_sftime_offset
    - gf_node_new
    - gf_list_enum
    - gf_malloc
    - strlen
    - gf_sg_proto_create_node
    - gf_node_get_field_count
    - BIFS_SetupConditionalClone
    - gf_node_get_name_and_id
    - gf_node_register
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *gf_vrml_node_clone(GF_SceneGraph *inScene, GF_Node *orig,
      GF_Node *cloned_parent, char *inst_id_suffix)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_proto_get_field_index
      Src: /src/gpac/src/scenegraph/vrml_proto.c:528,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - Node
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 526
    functionDepth: 1
    functionLinenumber: 526
    functionLinenumberEnd: 529
    functionName: gf_sg_proto_get_field_ind_static
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 1
    functionsReached:
    - gf_sg_proto_get_field_index
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sg_proto_get_field_ind_static(GF_Node *Node, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:536,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:536,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:537,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:539,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:540,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - extern_proto
    - proto
    argTypes:
    - GF_Proto*
    - GF_Proto*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 532
    functionDepth: 1
    functionLinenumber: 532
    functionLinenumberEnd: 546
    functionName: is_same_proto
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: Bool
    signature: Bool is_same_proto(GF_Proto *extern_proto, GF_Proto *proto)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_proto.c:553,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:557,1
    - Dst: is_same_proto
      Src: /src/gpac/src/scenegraph/vrml_proto.c:558,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:561,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:563,1
    - Dst: is_same_proto
      Src: /src/gpac/src/scenegraph/vrml_proto.c:564,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - sg
    - extern_proto
    argTypes:
    - GF_SceneGraph*
    - GF_Proto*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 548
    functionDepth: 2
    functionLinenumber: 548
    functionLinenumberEnd: 567
    functionName: find_proto_by_interface
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_list_get
    - is_same_proto
    - gf_list_count
    - gf_list_enum
    linkageType: ''
    returnType: GF_Proto
    signature: GF_Proto *find_proto_by_interface(GF_SceneGraph *sg, GF_Proto *extern_proto)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: GF_Proto*::parent_graph::GetExternProtoLib
      Src: /src/gpac/src/scenegraph/vrml_proto.c:584,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:591,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:593,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:595,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_proto.c:596,1
    - Dst: GF_Proto*::parent_graph::NodeCallback
      Src: /src/gpac/src/scenegraph/vrml_proto.c:599,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:604,1
    - Dst: strrchr
      Src: /src/gpac/src/scenegraph/vrml_proto.c:611,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/vrml_proto.c:614,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scenegraph/vrml_proto.c:618,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scenegraph/vrml_proto.c:620,1
    - Dst: find_proto_by_interface
      Src: /src/gpac/src/scenegraph/vrml_proto.c:621,1
    - Dst: is_same_proto
      Src: /src/gpac/src/scenegraph/vrml_proto.c:623,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_proto.c:625,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:633,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:635,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:637,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_proto.c:638,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/vrml_proto.c:645,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:646,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:654,1
    - Dst: gf_node_clone
      Src: /src/gpac/src/scenegraph/vrml_proto.c:656,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_proto.c:657,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:661,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:666,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:669,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/vrml_proto.c:670,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scenegraph/vrml_proto.c:670,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/vrml_proto.c:672,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scenegraph/vrml_proto.c:672,1
    - Dst: gf_sg_route_set_id
      Src: /src/gpac/src/scenegraph/vrml_proto.c:675,1
    - Dst: gf_sg_route_set_name
      Src: /src/gpac/src/scenegraph/vrml_proto.c:676,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:680,1
    - Dst: gf_sg_route_activate
      Src: /src/gpac/src/scenegraph/vrml_proto.c:686,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:689,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:690,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/vrml_proto.c:691,1
    - Dst: gf_sg_script_load
      Src: /src/gpac/src/scenegraph/vrml_proto.c:692,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:696,1
    - Dst: gf_sg_route_activate
      Src: /src/gpac/src/scenegraph/vrml_proto.c:707,1
    - Dst: gf_sg_route_activate
      Src: /src/gpac/src/scenegraph/vrml_proto.c:710,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:718,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 111
    argCount: 1
    argNames:
    - proto_node
    argTypes:
    - GF_ProtoInstance*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 725
      start: 570
    functionDepth: 4
    functionLinenumber: 570
    functionLinenumberEnd: 725
    functionName: gf_sg_proto_instantiate
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 1
    functionsReached:
    - gf_node_clone
    - GF_Proto*::parent_graph::GetExternProtoLib
    - is_same_proto
    - gf_list_count
    - gf_sg_vrml_field_copy
    - gf_sg_find_proto
    - gf_list_get
    - gf_assert
    - strrchr
    - gf_node_get_id
    - gf_sg_route_activate
    - GF_Proto*::parent_graph::NodeCallback
    - gf_sg_route_new
    - gf_list_add
    - sscanf
    - gf_sg_find_node
    - GF_LOG
    - gf_sg_script_load
    - gf_sg_route_set_name
    - gf_list_del_item
    - gf_list_enum
    - find_proto_by_interface
    - gf_sg_route_set_id
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_sg_proto_instantiate(GF_ProtoInstance *proto_node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:730,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - proto_inst
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 732
      start: 727
    functionDepth: 1
    functionLinenumber: 727
    functionLinenumberEnd: 732
    functionName: gf_sg_proto_mark_field_loaded
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 2
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void gf_sg_proto_mark_field_loaded(GF_Node *proto_inst, GF_FieldInfo
      *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:742,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/vrml_proto.c:745,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:746,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:747,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:748,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:751,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_proto.c:753,1
    - Dst: gf_sg_new_subscene
      Src: /src/gpac/src/scenegraph/vrml_proto.c:756,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:762,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:763,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_proto.c:765,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:773,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:777,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:779,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_proto.c:780,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_proto.c:783,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:787,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 37
    argCount: 3
    argNames:
    - scene
    - proto
    - from_inst
    argTypes:
    - GF_SceneGraph*
    - GF_Proto*
    - GF_ProtoInstance*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 790
      start: 734
    functionDepth: 1
    functionLinenumber: 734
    functionLinenumberEnd: 790
    functionName: gf_sg_proto_create_node
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 1
    functionsReached:
    - gf_strdup
    - gf_list_new
    - gf_list_get
    - gf_sg_vrml_get_sf_type
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_setup
    - gf_sg_new_subscene
    - gf_sg_vrml_field_copy
    - gf_list_add
    - gf_sg_vrml_field_pointer_new
    - gf_list_enum
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *gf_sg_proto_create_node(GF_SceneGraph *scene, GF_Proto *proto,
      GF_ProtoInstance *from_inst)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_proto_create_node
      Src: /src/gpac/src/scenegraph/vrml_proto.c:796,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sg
    - proto
    argTypes:
    - GF_SceneGraph*
    - GF_Proto*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 797
      start: 793
    functionDepth: 2
    functionLinenumber: 793
    functionLinenumberEnd: 797
    functionName: gf_sg_proto_create_instance
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 3
    functionsReached:
    - gf_sg_proto_create_node
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sg_proto_create_instance(GF_SceneGraph *sg, GF_Proto
      *proto)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_proto_instantiate
      Src: /src/gpac/src/scenegraph/vrml_proto.c:807,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 809
      start: 799
    functionDepth: 5
    functionLinenumber: 799
    functionLinenumberEnd: 809
    functionName: gf_sg_proto_load_code
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 1
    functionsReached:
    - gf_sg_proto_instantiate
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_proto_load_code(GF_Node *node)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:827,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - node
    - code_mode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 833
      start: 812
    functionDepth: 1
    functionLinenumber: 812
    functionLinenumberEnd: 833
    functionName: gf_sg_proto_get_num_fields
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: u32
    signature: u32 gf_sg_proto_get_num_fields(GF_Node *node, u8 code_mode)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:840,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:841,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/vrml_proto.c:842,1
    - Dst: gf_sg_vrml_field_pointer_del
      Src: /src/gpac/src/scenegraph/vrml_proto.c:847,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_proto.c:852,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_proto.c:857,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:859,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:865,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/vrml_proto.c:867,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:870,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:871,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_proto.c:872,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/vrml_proto.c:873,1
    - Dst: gf_sg_reset
      Src: /src/gpac/src/scenegraph/vrml_proto.c:881,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:884,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/vrml_proto.c:885,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_proto.c:886,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:886,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/vrml_proto.c:887,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/vrml_proto.c:889,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:891,1
    - Dst: gf_sg_del
      Src: /src/gpac/src/scenegraph/vrml_proto.c:892,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 1
    argNames:
    - inst
    argTypes:
    - GF_ProtoInstance*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 893
      start: 836
    functionDepth: 1
    functionLinenumber: 836
    functionLinenumberEnd: 893
    functionName: gf_sg_proto_del_instance
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_assert
    - gf_sg_del
    - gf_node_free
    - gf_list_count
    - gf_sg_reset
    - gf_list_del_item
    - gf_list_rem
    - gf_node_unregister
    - gf_list_del
    - gf_sg_vrml_field_pointer_del
    linkageType: ''
    returnType: void
    signature: void gf_sg_proto_del_instance(GF_ProtoInstance *inst)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_proto_get_field
      Src: /src/gpac/src/scenegraph/vrml_proto.c:905,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_proto.c:907,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:910,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:910,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:912,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:912,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_proto.c:915,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scenegraph/vrml_proto.c:915,1
    - Dst: gf_sg_vrml_get_field_type_name
      Src: /src/gpac/src/scenegraph/vrml_proto.c:915,1
    - Dst: gf_sg_vrml_get_field_type_name
      Src: /src/gpac/src/scenegraph/vrml_proto.c:915,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:920,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:930,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:935,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:936,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:949,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:951,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:961,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:964,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:965,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:966,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:975,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:978,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:981,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:986,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 87
    argCount: 4
    argNames:
    - proto
    - protoFieldIndex
    - node
    - nodeFieldIndex
    argTypes:
    - GF_Proto*
    - u32
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 987
      start: 898
    functionDepth: 2
    functionLinenumber: 898
    functionLinenumberEnd: 987
    functionName: gf_sg_proto_field_set_ised
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_sg_proto_get_field
    - gf_list_new
    - gf_node_get_class_name
    - gf_sg_vrml_get_sf_type
    - GF_SAFEALLOC
    - GF_LOG
    - gf_sg_vrml_get_field_type_name
    - gf_node_get_field
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_proto_field_set_ised(GF_Proto *proto, u32 protoFieldIndex,
      GF_Node *node, u32 nodeFieldIndex)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_proto.c:998,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1000,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1003,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1003,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1005,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1005,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1008,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1008,1
    - Dst: gf_sg_vrml_get_field_type_name
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1008,1
    - Dst: gf_sg_vrml_get_field_type_name
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1008,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1013,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1023,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1026,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1027,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1041,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1043,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1053,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1056,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1057,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1058,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1067,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1070,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1071,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1074,1
    - Dst: gf_sg_route_activate
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1079,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1080,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 91
    argCount: 4
    argNames:
    - protoinst
    - protoFieldIndex
    - node
    - nodeFieldIndex
    argTypes:
    - GF_Node*
    - u32
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1081
      start: 989
    functionDepth: 4
    functionLinenumber: 989
    functionLinenumberEnd: 1081
    functionName: gf_sg_proto_instance_set_ised
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_node_get_class_name
    - gf_sg_vrml_get_sf_type
    - GF_SAFEALLOC
    - GF_LOG
    - gf_sg_route_activate
    - gf_sg_vrml_get_field_type_name
    - gf_node_get_field
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_proto_instance_set_ised(GF_Node *protoinst, u32 protoFieldIndex,
      GF_Node *node, u32 nodeFieldIndex)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1095,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1101,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1102,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1105,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1106,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 7
    argNames:
    - field
    - QP_Type
    - hasMinMax
    - QPSFType
    - qp_min_value
    - qp_max_value
    - QP13_NumBits
    argTypes:
    - GF_ProtoFieldInterface*
    - u32
    - u32
    - u32
    - void*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1111
      start: 1084
    functionDepth: 1
    functionLinenumber: 1084
    functionLinenumberEnd: 1111
    functionName: gf_bifs_proto_field_set_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 1
    functionsReached:
    - gf_sg_vrml_field_pointer_new
    - gf_sg_vrml_field_copy
    - gf_sg_vrml_is_sf_field
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err gf_bifs_proto_field_set_aq_info(GF_ProtoFieldInterface *field,\n
      \                                      u32 QP_Type,\n                                       u32
      hasMinMax,\n                                       u32 QPSFType,\n                                       void
      *qp_min_value,\n                                       void *qp_max_value,\n
      \                                      u32 QP13_NumBits)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1120,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1121,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 4
    argNames:
    - proto
    - index
    - code_mode
    - all_index
    argTypes:
    - GF_ProtoInstance*
    - u32
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1154
      start: 1114
    functionDepth: 1
    functionLinenumber: 1114
    functionLinenumberEnd: 1154
    functionName: gf_sg_proto_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    - gf_assert
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sg_proto_get_field_index(GF_ProtoInstance *proto, u32 index,
      u32 code_mode, u32 *all_index)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1160,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - proto
    argTypes:
    - GF_Proto*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1161
      start: 1156
    functionDepth: 1
    functionLinenumber: 1156
    functionLinenumberEnd: 1161
    functionName: gf_sg_proto_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 7
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_proto_get_field_count(GF_Proto *proto)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1167,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1168
      start: 1163
    functionDepth: 1
    functionLinenumber: 1163
    functionLinenumberEnd: 1168
    functionName: GF_ProtoFieldInterface *gf_sg_proto_field_find(GF_Proto *proto,
      u32 fieldIndex)
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ProtoFieldInterface *gf_sg_proto_field_find(GF_Proto *proto,
      u32 fieldIndex)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1185,1
    - Dst: gf_sg_route_activate
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1189,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1190,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 18
    argCount: 3
    argNames:
    - node
    - fieldIndex
    - from_node
    argTypes:
    - GF_Node*
    - u32
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1193
      start: 1170
    functionDepth: 4
    functionLinenumber: 1170
    functionLinenumberEnd: 1193
    functionName: gf_sg_proto_propagate_event
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 1
    functionsReached:
    - gf_sg_route_activate
    - gf_list_enum
    - gf_node_changed
    linkageType: ''
    returnType: void
    signature: void gf_sg_proto_propagate_event(GF_Node *node, u32 fieldIndex, GF_Node
      *from_node)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1205,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1216,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 7
    argNames:
    - Node
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1240
      start: 1196
    functionDepth: 1
    functionLinenumber: 1196
    functionLinenumberEnd: 1240
    functionName: gf_sg_proto_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    - gf_sg_vrml_get_sf_type
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sg_proto_get_aq_info(GF_Node *Node, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1250
      start: 1243
    functionDepth: 0
    functionLinenumber: 1243
    functionLinenumberEnd: 1250
    functionName: gf_node_get_proto
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_node_get_proto(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - proto
    argTypes:
    - GF_Proto*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1257
      start: 1253
    functionDepth: 0
    functionLinenumber: 1253
    functionLinenumberEnd: 1257
    functionName: gf_sg_proto_get_id
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_proto_get_id(GF_Proto *proto)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - proto
    argTypes:
    - GF_Proto*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1263
      start: 1259
    functionDepth: 0
    functionLinenumber: 1259
    functionLinenumberEnd: 1263
    functionName: gf_sg_proto_get_class_name
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sg_proto_get_class_name(GF_Proto *proto)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1269,1
    - Dst: gf_sg_proto_get_root_tag
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1271,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - proto
    argTypes:
    - GF_Proto*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1273
      start: 1265
    functionDepth: 1
    functionLinenumber: 1265
    functionLinenumberEnd: 1273
    functionName: gf_sg_proto_get_root_tag
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 1
    functionsReached:
    - gf_sg_proto_get_root_tag
    - gf_list_get
    linkageType: ''
    returnType: u32
    signature: u32 gf_sg_proto_get_root_tag(GF_Proto *proto)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1288,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1293,1
    - Dst: gf_sg_proto_field_is_sftime_offset
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1297,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1300,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1300,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 22
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1303
      start: 1275
    functionDepth: 1
    functionLinenumber: 1275
    functionLinenumberEnd: 1303
    functionName: gf_sg_proto_field_is_sftime_offset
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 3
    functionsReached:
    - gf_sg_proto_field_is_sftime_offset
    - gf_list_enum
    - gf_node_get_field
    - stricmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_proto_field_is_sftime_offset(GF_Node *node, GF_FieldInfo
      *field)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1311
      start: 1305
    functionDepth: 0
    functionLinenumber: 1305
    functionLinenumberEnd: 1311
    functionName: gf_node_proto_set_grouping
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_proto_set_grouping(GF_Node *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1319
      start: 1313
    functionDepth: 0
    functionLinenumber: 1313
    functionLinenumberEnd: 1319
    functionName: gf_node_proto_is_grouping
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_proto_is_grouping(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1326
      start: 1321
    functionDepth: 0
    functionLinenumber: 1321
    functionLinenumberEnd: 1326
    functionName: gf_node_get_proto_root
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_node_get_proto_root(GF_Node *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1337
      start: 1329
    functionDepth: 0
    functionLinenumber: 1329
    functionLinenumberEnd: 1337
    functionName: gf_node_get_proto_parent
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *gf_node_get_proto_parent(GF_Node *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1344,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1346
      start: 1339
    functionDepth: 1
    functionLinenumber: 1339
    functionLinenumberEnd: 1346
    functionName: gf_node_is_proto_root
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached:
    - gf_list_find
    linkageType: ''
    returnType: Bool
    signature: Bool gf_node_is_proto_root(GF_Node *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1358,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - node
    - fieldIndex
    argTypes:
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1364
      start: 1350
    functionDepth: 1
    functionLinenumber: 1350
    functionLinenumberEnd: 1364
    functionName: gf_node_set_proto_eventin_handler
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_set_proto_eventin_handler(GF_Node *node, u32 fieldIndex,
      void (*event_in_cbk)(GF_Node *pThis, struct _route *route) )
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:42,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:49,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:56,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:59,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:62,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:65,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:71,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:76,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:79,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_properties.c:82,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:84,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:89,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:92,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:95,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:98,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:101,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:104,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:109,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:112,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:115,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:121,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:126,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:132,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:137,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:144,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:147,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:153,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:156,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:159,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:164,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:169,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:174,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:177,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:180,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:183,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:186,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:189,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_properties.c:194,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 149
    argCount: 1
    argNames:
    - svg_props
    argTypes:
    - SVGPropertiesPointers*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 197
    functionName: gf_svg_properties_init_pointers
    functionSourceFile: /src/gpac/src/scenegraph/svg_properties.c
    functionUses: 1
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_svg_properties_init_pointers(SVGPropertiesPointers *svg_props)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:203,1
    - Dst: gf_svg_delete_paint
      Src: /src/gpac/src/scenegraph/svg_properties.c:204,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:205,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:206,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:207,1
    - Dst: gf_svg_delete_paint
      Src: /src/gpac/src/scenegraph/svg_properties.c:208,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:209,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:210,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:212,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:213,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:215,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:216,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:217,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:218,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:219,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:220,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:221,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:222,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:223,1
    - Dst: gf_svg_delete_paint
      Src: /src/gpac/src/scenegraph/svg_properties.c:224,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:225,1
    - Dst: gf_svg_delete_paint
      Src: /src/gpac/src/scenegraph/svg_properties.c:226,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:227,1
    - Dst: gf_svg_delete_paint
      Src: /src/gpac/src/scenegraph/svg_properties.c:228,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:230,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:231,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:233,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:234,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:235,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:236,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:237,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:238,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:239,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:240,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:241,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:242,1
    - Dst: gf_svg_delete_paint
      Src: /src/gpac/src/scenegraph/svg_properties.c:243,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:244,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_properties.c:245,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/svg_properties.c:246,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 78
    argCount: 1
    argNames:
    - svg_props
    argTypes:
    - SVGPropertiesPointers*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 247
    functionName: gf_svg_properties_reset_pointers
    functionSourceFile: /src/gpac/src/scenegraph/svg_properties.c
    functionUses: 1
    functionsReached:
    - gf_free
    - memset
    - gf_svg_delete_paint
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_svg_properties_reset_pointers(SVGPropertiesPointers *svg_props)
  - BBCount: 39
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 79
    argCount: 2
    argNames:
    - output_property_context
    - prop_tag
    argTypes:
    - SVGPropertiesPointers*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 330
    functionName: gf_svg_get_property_pointer_from_tag
    functionSourceFile: /src/gpac/src/scenegraph/svg_properties.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void *gf_svg_get_property_pointer_from_tag(SVGPropertiesPointers *output_property_context,
      u32 prop_tag)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_get_property_pointer_from_tag
      Src: /src/gpac/src/scenegraph/svg_properties.c:341,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 3
    argNames:
    - elt
    - input_attribute
    - output_property_context
    argTypes:
    - SVG_Element*
    - void*
    - SVGPropertiesPointers*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 332
    functionDepth: 1
    functionLinenumber: 332
    functionLinenumberEnd: 342
    functionName: gf_svg_get_property_pointer
    functionSourceFile: /src/gpac/src/scenegraph/svg_properties.c
    functionUses: 0
    functionsReached:
    - gf_svg_get_property_pointer_from_tag
    linkageType: ''
    returnType: void
    signature: "void *gf_svg_get_property_pointer(SVG_Element *elt, void *input_attribute,\n
      \                                 SVGPropertiesPointers *output_property_context)"
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scenegraph/svg_properties.c:346,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 54
    argCount: 2
    argNames:
    - node
    - target_attribute
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 344
    functionDepth: 1
    functionLinenumber: 344
    functionLinenumberEnd: 402
    functionName: gf_svg_is_property
    functionSourceFile: /src/gpac/src/scenegraph/svg_properties.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    linkageType: ''
    returnType: Bool
    signature: Bool gf_svg_is_property(GF_Node *node, GF_FieldInfo *target_attribute)
  - BBCount: 23
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 65
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 405
    functionDepth: 0
    functionLinenumber: 405
    functionLinenumberEnd: 471
    functionName: gf_svg_is_inherit
    functionSourceFile: /src/gpac/src/scenegraph/svg_properties.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_svg_is_inherit(GF_FieldInfo *a)
  - BBCount: 44
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 83
    argCount: 2
    argNames:
    - n
    - info
    argTypes:
    - SVG_Element*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 562
      start: 474
    functionDepth: 0
    functionLinenumber: 474
    functionLinenumberEnd: 562
    functionName: gf_svg_get_modification_flags
    functionSourceFile: /src/gpac/src/scenegraph/svg_properties.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_svg_get_modification_flags(SVG_Element *n, GF_FieldInfo *info)
  - BBCount: 58
    BranchProfiles: []
    Callsites:
    - Dst: MIN
      Src: /src/gpac/src/scenegraph/svg_properties.c:588,1
    - Dst: MAX
      Src: /src/gpac/src/scenegraph/svg_properties.c:588,1
    - Dst: MIN
      Src: /src/gpac/src/scenegraph/svg_properties.c:589,1
    - Dst: MAX
      Src: /src/gpac/src/scenegraph/svg_properties.c:589,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_properties.c:590,1
    CyclomaticComplexity: 99
    EdgeCount: 99
    ICount: 235
    argCount: 2
    argNames:
    - all_atts
    - render_svg_props
    argTypes:
    - SVGAllAttributes*
    - SVGPropertiesPointers*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 807
      start: 569
    functionDepth: 1
    functionLinenumber: 569
    functionLinenumberEnd: 807
    functionName: gf_svg_apply_inheritance
    functionSourceFile: /src/gpac/src/scenegraph/svg_properties.c
    functionUses: 1
    functionsReached:
    - MAX
    - gf_mulfix
    - MIN
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_svg_apply_inheritance(SVGAllAttributes *all_atts, SVGPropertiesPointers
      *render_svg_props)
  - BBCount: 207
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/scenegraph/svg_properties.c:815,1
    CyclomaticComplexity: 208
    EdgeCount: 208
    ICount: 625
    argCount: 2
    argNames:
    - e
    - all_atts
    argTypes:
    - SVG_Element*
    - SVGAllAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1444
      start: 811
    functionDepth: 0
    functionLinenumber: 811
    functionLinenumberEnd: 1444
    functionName: gf_svg_flatten_attributes
    functionSourceFile: /src/gpac/src/scenegraph/svg_properties.c
    functionUses: 1
    functionsReached:
    - memset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_svg_flatten_attributes(SVG_Element *e, SVGAllAttributes
      *all_atts)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/smil_anim.c:49,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/smil_anim.c:52,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/smil_anim.c:53,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - node
    - animation
    argTypes:
    - GF_Node*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 54
    functionName: gf_node_animation_add
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_list_add
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_node_animation_add(GF_Node *node, void *animation)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/smil_anim.c:59,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 62
    functionName: gf_node_animation_del
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_node_animation_del(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/smil_anim.c:67,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 68
    functionName: gf_node_animation_count
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: u32
    signature: u32 gf_node_animation_count(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_anim.c:73,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - node
    - i
    argTypes:
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 74
    functionName: gf_node_animation_get
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void *gf_node_animation_get(GF_Node *node, u32 i)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/smil_anim.c:79,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - node
    - i
    argTypes:
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 80
    functionName: gf_node_animation_rem
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_node_animation_rem(GF_Node *node, u32 i)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - in
    - p
    - t
    argTypes:
    - GF_FieldInfo*
    - GF_FieldInfo*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 102
    functionName: gf_svg_attributes_resolve_unspecified
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_svg_attributes_resolve_unspecified(GF_FieldInfo *in, GF_FieldInfo
      *p, GF_FieldInfo *t)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_is_inherit
      Src: /src/gpac/src/scenegraph/smil_anim.c:108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - in
    - prop
    argTypes:
    - GF_FieldInfo*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionName: gf_svg_attributes_resolve_inherit
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_svg_is_inherit
    linkageType: ''
    returnType: void
    signature: void gf_svg_attributes_resolve_inherit(GF_FieldInfo *in, GF_FieldInfo
      *prop)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_is_current_color
      Src: /src/gpac/src/scenegraph/smil_anim.c:115,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - in
    - current_color
    argTypes:
    - GF_FieldInfo*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 118
    functionName: gf_svg_attributes_resolve_currentColor
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_svg_is_current_color
    linkageType: ''
    returnType: void
    signature: void gf_svg_attributes_resolve_currentColor(GF_FieldInfo *in, GF_FieldInfo
      *current_color)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:153,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:155,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:159,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:161,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:172,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:174,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:175,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/scenegraph/smil_anim.c:183,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 1
    argNames:
    - rai
    argTypes:
    - SMIL_Anim_RTI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 147
    functionDepth: 3
    functionLinenumber: 147
    functionLinenumberEnd: 186
    functionName: gf_smil_anim_set
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_svg_attributes_copy
    - gf_node_get_scene_time
    - gf_node_get_log_name
    linkageType: ''
    returnType: void
    signature: void gf_smil_anim_set(SMIL_Anim_RTI *rai)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_anim.c:201,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_anim.c:205,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/smil_anim.c:216,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:220,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:222,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:223,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_anim.c:231,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_anim.c:235,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/smil_anim.c:236,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/smil_anim.c:237,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:241,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:243,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:243,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 36
    argCount: 4
    argNames:
    - rai
    - normalized_simple_time
    - interpolation_coefficient
    - keyValueIndex
    argTypes:
    - SMIL_Anim_RTI*
    - Fixed
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 188
    functionDepth: 1
    functionLinenumber: 188
    functionLinenumberEnd: 245
    functionName: gf_smil_anim_use_keypoints_keytimes
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - GF_LOG
    - gf_divfix
    - gf_node_get_log_name
    - gf_node_get_scene_time
    - gf_mulfix
    linkageType: ''
    returnType: void
    signature: "void gf_smil_anim_use_keypoints_keytimes(SMIL_Anim_RTI *rai, Fixed
      normalized_simple_time,\n        Fixed *interpolation_coefficient, u32 *keyValueIndex)"
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/scenegraph/smil_anim.c:258,1
    - Dst: gf_svg_attribute_is_interpolatable
      Src: /src/gpac/src/scenegraph/smil_anim.c:262,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_anim.c:275,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/scenegraph/smil_anim.c:278,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:280,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:282,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:282,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/smil_anim.c:295,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/smil_anim.c:297,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/smil_anim.c:299,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/smil_anim.c:301,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/smil_anim.c:308,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/smil_anim.c:308,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/smil_anim.c:310,1
    - Dst: gf_smil_anim_use_keypoints_keytimes
      Src: /src/gpac/src/scenegraph/smil_anim.c:314,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:330,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:332,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:332,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_anim.c:333,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/scenegraph/smil_anim.c:336,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:344,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:346,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:346,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_anim.c:347,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/scenegraph/smil_anim.c:350,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:353,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:355,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:355,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_anim.c:356,1
    - Dst: gf_svg_attribute_is_interpolatable
      Src: /src/gpac/src/scenegraph/smil_anim.c:357,1
    - Dst: gf_svg_attributes_resolve_currentColor
      Src: /src/gpac/src/scenegraph/smil_anim.c:358,1
    - Dst: gf_svg_attributes_resolve_inherit
      Src: /src/gpac/src/scenegraph/smil_anim.c:359,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_anim.c:362,1
    - Dst: gf_svg_attribute_is_interpolatable
      Src: /src/gpac/src/scenegraph/smil_anim.c:363,1
    - Dst: gf_svg_attributes_resolve_currentColor
      Src: /src/gpac/src/scenegraph/smil_anim.c:364,1
    - Dst: gf_svg_attributes_resolve_inherit
      Src: /src/gpac/src/scenegraph/smil_anim.c:365,1
    - Dst: gf_svg_attributes_interpolate
      Src: /src/gpac/src/scenegraph/smil_anim.c:368,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 84
    argCount: 2
    argNames:
    - rai
    - normalized_simple_time
    argTypes:
    - SMIL_Anim_RTI*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 247
    functionDepth: 5
    functionLinenumber: 247
    functionLinenumberEnd: 376
    functionName: gf_smil_anim_animate_using_values
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - INT2FIX
    - gf_svg_attribute_is_interpolatable
    - gf_smil_anim_use_keypoints_keytimes
    - gf_svg_attributes_interpolate
    - GF_LOG
    - gf_svg_attributes_copy
    - gf_svg_attributes_resolve_inherit
    - gf_floor
    - FIX2INT
    - memset
    - gf_node_get_log_name
    - gf_node_get_scene_time
    - gf_svg_attributes_resolve_currentColor
    linkageType: ''
    returnType: void
    signature: void gf_smil_anim_animate_using_values(SMIL_Anim_RTI *rai, Fixed normalized_simple_time)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_attribute_is_interpolatable
      Src: /src/gpac/src/scenegraph/smil_anim.c:386,1
    - Dst: gf_svg_attributes_resolve_unspecified
      Src: /src/gpac/src/scenegraph/smil_anim.c:413,1
    - Dst: gf_svg_attributes_resolve_unspecified
      Src: /src/gpac/src/scenegraph/smil_anim.c:417,1
    - Dst: gf_svg_attribute_is_interpolatable
      Src: /src/gpac/src/scenegraph/smil_anim.c:421,1
    - Dst: gf_svg_attributes_resolve_currentColor
      Src: /src/gpac/src/scenegraph/smil_anim.c:422,1
    - Dst: gf_svg_attributes_resolve_inherit
      Src: /src/gpac/src/scenegraph/smil_anim.c:423,1
    - Dst: gf_svg_attributes_resolve_unspecified
      Src: /src/gpac/src/scenegraph/smil_anim.c:434,1
    - Dst: gf_svg_attributes_resolve_unspecified
      Src: /src/gpac/src/scenegraph/smil_anim.c:438,1
    - Dst: gf_svg_attribute_is_interpolatable
      Src: /src/gpac/src/scenegraph/smil_anim.c:442,1
    - Dst: gf_svg_attributes_resolve_currentColor
      Src: /src/gpac/src/scenegraph/smil_anim.c:443,1
    - Dst: gf_svg_attributes_resolve_inherit
      Src: /src/gpac/src/scenegraph/smil_anim.c:444,1
    - Dst: gf_smil_anim_use_keypoints_keytimes
      Src: /src/gpac/src/scenegraph/smil_anim.c:447,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:455,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:457,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:457,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/scenegraph/smil_anim.c:458,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:466,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:468,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:468,1
    - Dst: gf_svg_attributes_interpolate
      Src: /src/gpac/src/scenegraph/smil_anim.c:469,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 58
    argCount: 2
    argNames:
    - rai
    - normalized_simple_time
    argTypes:
    - SMIL_Anim_RTI*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 378
    functionDepth: 5
    functionLinenumber: 378
    functionLinenumberEnd: 473
    functionName: gf_smil_anim_animate_from_to
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_svg_attributes_interpolate
    - gf_svg_attribute_is_interpolatable
    - gf_smil_anim_use_keypoints_keytimes
    - gf_svg_attributes_resolve_inherit
    - GF_LOG
    - gf_svg_attributes_copy
    - gf_svg_attributes_resolve_unspecified
    - gf_node_get_log_name
    - gf_node_get_scene_time
    - gf_svg_attributes_resolve_currentColor
    linkageType: ''
    returnType: void
    signature: void gf_smil_anim_animate_from_to(SMIL_Anim_RTI *rai, Fixed normalized_simple_time)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_attributes_resolve_unspecified
      Src: /src/gpac/src/scenegraph/smil_anim.c:510,1
    - Dst: gf_svg_attributes_resolve_unspecified
      Src: /src/gpac/src/scenegraph/smil_anim.c:514,1
    - Dst: gf_svg_attribute_is_interpolatable
      Src: /src/gpac/src/scenegraph/smil_anim.c:518,1
    - Dst: gf_svg_attributes_resolve_currentColor
      Src: /src/gpac/src/scenegraph/smil_anim.c:519,1
    - Dst: gf_svg_attributes_resolve_inherit
      Src: /src/gpac/src/scenegraph/smil_anim.c:520,1
    - Dst: gf_svg_attribute_is_interpolatable
      Src: /src/gpac/src/scenegraph/smil_anim.c:531,1
    - Dst: gf_svg_attributes_resolve_currentColor
      Src: /src/gpac/src/scenegraph/smil_anim.c:532,1
    - Dst: gf_svg_attributes_resolve_inherit
      Src: /src/gpac/src/scenegraph/smil_anim.c:533,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:541,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:543,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:543,1
    - Dst: gf_svg_attributes_muladd
      Src: /src/gpac/src/scenegraph/smil_anim.c:544,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:546,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:548,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:548,1
    - Dst: gf_svg_attributes_muladd
      Src: /src/gpac/src/scenegraph/smil_anim.c:549,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:558,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:560,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:560,1
    - Dst: gf_svg_attributes_muladd
      Src: /src/gpac/src/scenegraph/smil_anim.c:561,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 60
    argCount: 2
    argNames:
    - rai
    - normalized_simple_time
    argTypes:
    - SMIL_Anim_RTI*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 475
    functionDepth: 4
    functionLinenumber: 475
    functionLinenumberEnd: 565
    functionName: gf_smil_anim_animate_from_by
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_svg_attributes_muladd
    - gf_svg_attribute_is_interpolatable
    - GF_LOG
    - gf_svg_attributes_resolve_inherit
    - gf_svg_attributes_resolve_unspecified
    - gf_node_get_log_name
    - gf_node_get_scene_time
    - gf_svg_attributes_resolve_currentColor
    linkageType: ''
    returnType: void
    signature: void gf_smil_anim_animate_from_by(SMIL_Anim_RTI *rai, Fixed normalized_simple_time)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/smil_anim.c:570,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/smil_anim.c:571,1
    - Dst: gf_path_iterator_get_transform
      Src: /src/gpac/src/scenegraph/smil_anim.c:573,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/scenegraph/smil_anim.c:579,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - rai
    - m
    - normalized_simple_time
    argTypes:
    - SMIL_Anim_RTI*
    - GF_Matrix2D*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 567
    functionDepth: 1
    functionLinenumber: 567
    functionLinenumberEnd: 587
    functionName: gf_svg_compute_path_anim
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_add_rotation
    - gf_mx2d_init
    - gf_mulfix
    - gf_path_iterator_get_transform
    linkageType: ''
    returnType: void
    signature: void gf_svg_compute_path_anim(SMIL_Anim_RTI *rai, GF_Matrix2D *m, Fixed
      normalized_simple_time)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_smil_anim_use_keypoints_keytimes
      Src: /src/gpac/src/scenegraph/smil_anim.c:593,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:604,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:606,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:606,1
    - Dst: gf_svg_compute_path_anim
      Src: /src/gpac/src/scenegraph/smil_anim.c:608,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - rai
    - normalized_simple_time
    argTypes:
    - SMIL_Anim_RTI*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 610
      start: 589
    functionDepth: 2
    functionLinenumber: 589
    functionLinenumberEnd: 610
    functionName: gf_smil_anim_animate_using_path
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_svg_compute_path_anim
    - gf_smil_anim_use_keypoints_keytimes
    - GF_LOG
    - gf_node_get_log_name
    - gf_node_get_scene_time
    linkageType: ''
    returnType: void
    signature: void gf_smil_anim_animate_using_path(SMIL_Anim_RTI *rai, Fixed normalized_simple_time)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_smil_anim_animate_using_path
      Src: /src/gpac/src/scenegraph/smil_anim.c:617,1
    - Dst: gf_smil_anim_set
      Src: /src/gpac/src/scenegraph/smil_anim.c:619,1
    - Dst: gf_smil_anim_animate_using_values
      Src: /src/gpac/src/scenegraph/smil_anim.c:622,1
    - Dst: gf_smil_anim_animate_from_by
      Src: /src/gpac/src/scenegraph/smil_anim.c:625,1
    - Dst: gf_smil_anim_animate_from_to
      Src: /src/gpac/src/scenegraph/smil_anim.c:628,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/scenegraph/smil_anim.c:632,1
    - Dst: gf_svg_dump_attribute
      Src: /src/gpac/src/scenegraph/smil_anim.c:633,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:635,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:636,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:636,1
    - Dst: gf_svg_get_attribute_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:637,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/smil_anim.c:640,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 2
    argNames:
    - rai
    - normalized_simple_time
    argTypes:
    - SMIL_Anim_RTI*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 612
    functionDepth: 6
    functionLinenumber: 612
    functionLinenumberEnd: 643
    functionName: gf_smil_anim_compute_interpolation_value
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_smil_anim_set
    - gf_log_tool_level_on
    - GF_LOG
    - gf_svg_get_attribute_name
    - gf_svg_dump_attribute
    - gf_node_get_log_name
    - gf_smil_anim_animate_using_values
    - gf_smil_anim_animate_from_by
    - gf_smil_anim_animate_using_path
    - gf_node_get_scene_time
    - gf_smil_anim_animate_from_to
    linkageType: ''
    returnType: void
    signature: void gf_smil_anim_compute_interpolation_value(SMIL_Anim_RTI *rai, Fixed
      normalized_simple_time)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_is_animation_tag
      Src: /src/gpac/src/scenegraph/smil_anim.c:655,1
    - Dst: gf_node_animation_count
      Src: /src/gpac/src/scenegraph/smil_anim.c:665,1
    - Dst: gf_node_animation_get
      Src: /src/gpac/src/scenegraph/smil_anim.c:667,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/smil_anim.c:669,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 676
      start: 645
    functionDepth: 2
    functionLinenumber: 645
    functionLinenumberEnd: 676
    functionName: gf_smil_anim_set_anim_runtime_in_timing
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_svg_is_animation_tag
    - gf_list_enum
    - gf_node_animation_count
    - gf_node_animation_get
    linkageType: ''
    returnType: void
    signature: void gf_smil_anim_set_anim_runtime_in_timing(GF_Node *n)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/smil_anim.c:686,1
    - Dst: gf_svg_compute_path_anim
      Src: /src/gpac/src/scenegraph/smil_anim.c:689,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:697,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:699,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scenegraph/smil_anim.c:707,1
    - Dst: gf_svg_is_inherit
      Src: /src/gpac/src/scenegraph/smil_anim.c:715,1
    - Dst: gf_svg_attribute_is_interpolatable
      Src: /src/gpac/src/scenegraph/smil_anim.c:719,1
    - Dst: gf_svg_attributes_resolve_currentColor
      Src: /src/gpac/src/scenegraph/smil_anim.c:720,1
    - Dst: gf_svg_attributes_resolve_inherit
      Src: /src/gpac/src/scenegraph/smil_anim.c:721,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 40
    argCount: 1
    argNames:
    - rai
    argTypes:
    - SMIL_Anim_RTI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 678
    functionDepth: 2
    functionLinenumber: 678
    functionLinenumberEnd: 723
    functionName: gf_smil_anim_get_last_specified_value
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_svg_compute_path_anim
    - gf_svg_attribute_is_interpolatable
    - GF_LOG
    - gf_svg_attributes_resolve_inherit
    - gf_svg_is_inherit
    - gf_node_get_log_name
    - gf_svg_attributes_resolve_currentColor
    - gf_list_last
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void gf_smil_anim_get_last_specified_value(SMIL_Anim_RTI *rai)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:754,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:756,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:756,1
    - Dst: gf_svg_attributes_muladd
      Src: /src/gpac/src/scenegraph/smil_anim.c:758,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/smil_anim.c:759,1
    - Dst: gf_svg_attributes_muladd
      Src: /src/gpac/src/scenegraph/smil_anim.c:769,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/smil_anim.c:770,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 21
    argCount: 1
    argNames:
    - rai
    argTypes:
    - SMIL_Anim_RTI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 775
      start: 728
    functionDepth: 4
    functionLinenumber: 728
    functionLinenumberEnd: 775
    functionName: gf_smil_anim_apply_accumulate
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_svg_attributes_muladd
    - INT2FIX
    - GF_LOG
    - gf_node_get_log_name
    - gf_node_get_scene_time
    linkageType: ''
    returnType: void
    signature: void gf_smil_anim_apply_accumulate(SMIL_Anim_RTI *rai)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:785,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:787,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:787,1
    - Dst: gf_svg_attributes_add
      Src: /src/gpac/src/scenegraph/smil_anim.c:789,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/scenegraph/smil_anim.c:795,1
    - Dst: gf_svg_dump_attribute
      Src: /src/gpac/src/scenegraph/smil_anim.c:796,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:797,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:798,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:798,1
    - Dst: gf_svg_get_attribute_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:799,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/smil_anim.c:801,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:806,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:808,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:808,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/scenegraph/smil_anim.c:819,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/scenegraph/smil_anim.c:821,1
    - Dst: gf_svg_dump_attribute
      Src: /src/gpac/src/scenegraph/smil_anim.c:822,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:824,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:825,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:825,1
    - Dst: gf_svg_get_attribute_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:826,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/smil_anim.c:829,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 1
    argNames:
    - rai
    argTypes:
    - SMIL_Anim_RTI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 834
      start: 777
    functionDepth: 5
    functionLinenumber: 777
    functionLinenumberEnd: 834
    functionName: gf_smil_apply_additive
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_log_tool_level_on
    - gf_svg_attributes_add
    - gf_svg_get_attribute_name
    - gf_svg_attributes_copy
    - gf_svg_dump_attribute
    - gf_node_get_log_name
    - gf_node_get_scene_time
    linkageType: ''
    returnType: void
    signature: void gf_smil_apply_additive(SMIL_Anim_RTI *rai)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_smil_anim_compute_interpolation_value
      Src: /src/gpac/src/scenegraph/smil_anim.c:841,1
    - Dst: gf_smil_anim_apply_accumulate
      Src: /src/gpac/src/scenegraph/smil_anim.c:842,1
    - Dst: gf_smil_apply_additive
      Src: /src/gpac/src/scenegraph/smil_anim.c:843,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - rti
    - normalized_simple_time
    argTypes:
    - SMIL_Timing_RTI*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 844
      start: 836
    functionDepth: 7
    functionLinenumber: 836
    functionLinenumberEnd: 844
    functionName: gf_smil_anim_animate
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_smil_apply_additive
    - gf_smil_anim_apply_accumulate
    - gf_smil_anim_compute_interpolation_value
    linkageType: ''
    returnType: void
    signature: void gf_smil_anim_animate(SMIL_Timing_RTI *rti, Fixed normalized_simple_time)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - rai
    argTypes:
    - SMIL_Anim_RTI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 857
      start: 846
    functionDepth: 0
    functionLinenumber: 846
    functionLinenumberEnd: 857
    functionName: gf_smil_anim_reset_variables
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_smil_anim_reset_variables(SMIL_Anim_RTI *rai)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:873,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:875,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:875,1
    - Dst: gf_smil_anim_compute_interpolation_value
      Src: /src/gpac/src/scenegraph/smil_anim.c:877,1
    - Dst: gf_smil_anim_apply_accumulate
      Src: /src/gpac/src/scenegraph/smil_anim.c:878,1
    - Dst: gf_smil_apply_additive
      Src: /src/gpac/src/scenegraph/smil_anim.c:879,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - rti
    - normalized_simple_time
    argTypes:
    - SMIL_Timing_RTI*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 882
      start: 862
    functionDepth: 7
    functionLinenumber: 862
    functionLinenumberEnd: 882
    functionName: gf_smil_anim_freeze
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_smil_anim_compute_interpolation_value
    - GF_LOG
    - gf_smil_apply_additive
    - gf_node_get_log_name
    - gf_node_get_scene_time
    - gf_smil_anim_apply_accumulate
    linkageType: ''
    returnType: void
    signature: void gf_smil_anim_freeze(SMIL_Timing_RTI *rti, Fixed normalized_simple_time)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:895,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:897,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:897,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/scenegraph/smil_anim.c:900,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/scenegraph/smil_anim.c:907,1
    - Dst: gf_svg_dump_attribute
      Src: /src/gpac/src/scenegraph/smil_anim.c:908,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:910,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:911,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:911,1
    - Dst: gf_svg_get_attribute_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:912,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/smil_anim.c:914,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - rti
    - normalized_simple_time
    argTypes:
    - SMIL_Timing_RTI*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 919
      start: 884
    functionDepth: 3
    functionLinenumber: 884
    functionLinenumberEnd: 919
    functionName: gf_smil_anim_remove
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_svg_attributes_copy
    - gf_log_tool_level_on
    - gf_svg_get_attribute_name
    - gf_svg_dump_attribute
    - gf_node_get_log_name
    - gf_node_get_scene_time
    linkageType: ''
    returnType: void
    signature: void gf_smil_anim_remove(SMIL_Timing_RTI *rti, Fixed normalized_simple_time)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_smil_anim_reset_variables
      Src: /src/gpac/src/scenegraph/smil_anim.c:928,1
    - Dst: gf_smil_anim_animate
      Src: /src/gpac/src/scenegraph/smil_anim.c:930,1
    - Dst: gf_smil_anim_freeze
      Src: /src/gpac/src/scenegraph/smil_anim.c:933,1
    - Dst: gf_smil_anim_remove
      Src: /src/gpac/src/scenegraph/smil_anim.c:936,1
    - Dst: gf_smil_anim_animate
      Src: /src/gpac/src/scenegraph/smil_anim.c:939,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 3
    argNames:
    - rti
    - normalized_simple_time
    - state
    argTypes:
    - SMIL_Timing_RTI*
    - Fixed
    - GF_SGSMILTimingEvalState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 950
      start: 921
    functionDepth: 8
    functionLinenumber: 921
    functionLinenumberEnd: 950
    functionName: gf_smil_anim_evaluate
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_smil_anim_animate
    - gf_smil_anim_remove
    - gf_smil_anim_freeze
    - gf_smil_anim_reset_variables
    linkageType: ''
    returnType: void
    signature: void gf_smil_anim_evaluate(SMIL_Timing_RTI *rti, Fixed normalized_simple_time,
      GF_SGSMILTimingEvalState state)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/scenegraph/smil_anim.c:962,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/scenegraph/smil_anim.c:963,1
    - Dst: gf_node_animation_count
      Src: /src/gpac/src/scenegraph/smil_anim.c:968,1
    - Dst: gf_node_animation_get
      Src: /src/gpac/src/scenegraph/smil_anim.c:976,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/smil_anim.c:977,1
    - Dst: gf_svg_get_property_pointer
      Src: /src/gpac/src/scenegraph/smil_anim.c:987,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/smil_anim.c:991,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_anim.c:999,1
    - Dst: SMIL_Timing_RTI*::evaluate
      Src: /src/gpac/src/scenegraph/smil_anim.c:1008,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_anim.c:1024,1
    - Dst: SMIL_Timing_RTI*::evaluate
      Src: /src/gpac/src/scenegraph/smil_anim.c:1032,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/scenegraph/smil_anim.c:1041,1
    - Dst: gf_svg_dump_attribute
      Src: /src/gpac/src/scenegraph/smil_anim.c:1042,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:1044,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_anim.c:1045,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:1045,1
    - Dst: gf_svg_get_attribute_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:1046,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/smil_anim.c:1049,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/scenegraph/smil_anim.c:1063,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/scenegraph/smil_anim.c:1066,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/scenegraph/smil_anim.c:1072,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/scenegraph/smil_anim.c:1073,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 60
    argCount: 2
    argNames:
    - node
    - render_svg_props
    argTypes:
    - GF_Node*
    - SVGPropertiesPointers*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1076
      start: 954
    functionDepth: 3
    functionLinenumber: 954
    functionLinenumberEnd: 1076
    functionName: gf_svg_apply_animations
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_node_get_attribute_by_tag
    - gf_node_dirty_set
    - gf_log_tool_level_on
    - GF_LOG
    - gf_node_animation_count
    - gf_svg_get_attribute_name
    - SMIL_Timing_RTI*::evaluate
    - gf_list_count
    - gf_svg_dump_attribute
    - gf_node_get_log_name
    - gf_node_dirty_clear
    - gf_svg_get_property_pointer
    - gf_node_get_scene_time
    - gf_node_animation_get
    - gf_sys_clock
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_svg_apply_animations(GF_Node *node, SVGPropertiesPointers
      *render_svg_props)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_is_animation_tag
      Src: /src/gpac/src/scenegraph/smil_anim.c:1082,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - e
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1085
      start: 1079
    functionDepth: 1
    functionLinenumber: 1079
    functionLinenumberEnd: 1085
    functionName: gf_smil_anim_get_target
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_svg_is_animation_tag
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *gf_smil_anim_get_target(GF_Node *e)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/scenegraph/smil_anim.c:1112,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/smil_anim.c:1117,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:1119,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/smil_anim.c:1131,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/smil_anim.c:1132,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:1135,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:1137,1
    - Dst: gf_svg_is_property
      Src: /src/gpac/src/scenegraph/smil_anim.c:1144,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:1145,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:1147,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/smil_anim.c:1153,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:1155,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/smil_anim.c:1164,1
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/scenegraph/smil_anim.c:1171,1
    - Dst: gf_smil_anim_reset_variables
      Src: /src/gpac/src/scenegraph/smil_anim.c:1175,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/smil_anim.c:1177,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/smil_anim.c:1178,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/smil_anim.c:1179,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/smil_anim.c:1180,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/smil_anim.c:1193,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:1197,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/smil_anim.c:1226,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/smil_anim.c:1231,1
    - Dst: gf_path_is_empty
      Src: /src/gpac/src/scenegraph/smil_anim.c:1240,1
    - Dst: gf_path_iterator_new
      Src: /src/gpac/src/scenegraph/smil_anim.c:1242,1
    - Dst: gf_path_iterator_get_length
      Src: /src/gpac/src/scenegraph/smil_anim.c:1243,1
    - Dst: gf_path_new
      Src: /src/gpac/src/scenegraph/smil_anim.c:1246,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/smil_anim.c:1247,1
    - Dst: gf_svg_path_build
      Src: /src/gpac/src/scenegraph/smil_anim.c:1248,1
    - Dst: gf_path_iterator_new
      Src: /src/gpac/src/scenegraph/smil_anim.c:1249,1
    - Dst: gf_path_iterator_get_length
      Src: /src/gpac/src/scenegraph/smil_anim.c:1250,1
    - Dst: while
      Src: /src/gpac/src/scenegraph/smil_anim.c:1254,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scenegraph/smil_anim.c:1256,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/smil_anim.c:1258,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:1262,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/scenegraph/smil_anim.c:1262,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scenegraph/smil_anim.c:1263,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/smil_anim.c:1264,1
    - Dst: gf_svg_path_build
      Src: /src/gpac/src/scenegraph/smil_anim.c:1268,1
    - Dst: gf_path_iterator_new
      Src: /src/gpac/src/scenegraph/smil_anim.c:1272,1
    - Dst: gf_path_iterator_get_length
      Src: /src/gpac/src/scenegraph/smil_anim.c:1273,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 104
    argCount: 1
    argNames:
    - e
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1281
      start: 1091
    functionDepth: 3
    functionLinenumber: 1091
    functionLinenumberEnd: 1281
    functionName: gf_smil_anim_init_runtime_info
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_path_iterator_get_length
    - GF_SAFEALLOC
    - gf_svg_is_property
    - gf_list_count
    - memset
    - gf_node_get_log_name
    - gf_path_iterator_new
    - gf_sg_find_node_by_name
    - gf_svg_path_build
    - gf_node_get_attribute_by_tag
    - gf_path_new
    - GF_LOG
    - gf_node_get_graph
    - gf_smil_anim_reset_variables
    - gf_path_is_empty
    - while
    - gf_node_get_field_by_name
    - gf_svg_create_attribute_value
    - gf_mx2d_init
    linkageType: ''
    returnType: void
    signature: void gf_smil_anim_init_runtime_info(GF_Node *e)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_delete_attribute_value
      Src: /src/gpac/src/scenegraph/smil_anim.c:1345,1
    - Dst: gf_svg_delete_attribute_value
      Src: /src/gpac/src/scenegraph/smil_anim.c:1349,1
    - Dst: gf_path_del
      Src: /src/gpac/src/scenegraph/smil_anim.c:1354,1
    - Dst: gf_path_iterator_del
      Src: /src/gpac/src/scenegraph/smil_anim.c:1359,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/smil_anim.c:1360,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - rai
    argTypes:
    - SMIL_Anim_RTI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1361
      start: 1343
    functionDepth: 1
    functionLinenumber: 1343
    functionLinenumberEnd: 1361
    functionName: gf_smil_anim_delete_runtime_info
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_path_iterator_del
    - gf_path_del
    - gf_svg_delete_attribute_value
    linkageType: ''
    returnType: void
    signature: void gf_smil_anim_delete_runtime_info(SMIL_Anim_RTI *rai)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_animation_count
      Src: /src/gpac/src/scenegraph/smil_anim.c:1367,1
    - Dst: gf_node_animation_get
      Src: /src/gpac/src/scenegraph/smil_anim.c:1369,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/smil_anim.c:1371,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/smil_anim.c:1373,1
    - Dst: gf_smil_anim_delete_runtime_info
      Src: /src/gpac/src/scenegraph/smil_anim.c:1374,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/smil_anim.c:1378,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/smil_anim.c:1379,1
    - Dst: gf_svg_delete_attribute_value
      Src: /src/gpac/src/scenegraph/smil_anim.c:1380,1
    - Dst: gf_node_animation_rem
      Src: /src/gpac/src/scenegraph/smil_anim.c:1384,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/smil_anim.c:1385,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - anim
    - target
    argTypes:
    - GF_Node*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1388
      start: 1363
    functionDepth: 2
    functionLinenumber: 1363
    functionLinenumberEnd: 1388
    functionName: gf_smil_anim_remove_from_target
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_animation_rem
    - gf_node_animation_count
    - gf_list_count
    - gf_smil_anim_delete_runtime_info
    - gf_node_animation_get
    - gf_list_del
    - gf_list_enum
    - gf_list_rem
    - gf_svg_delete_attribute_value
    linkageType: ''
    returnType: void
    signature: void gf_smil_anim_remove_from_target(GF_Node *anim, GF_Node *target)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_animation_count
      Src: /src/gpac/src/scenegraph/smil_anim.c:1394,1
    - Dst: gf_node_animation_get
      Src: /src/gpac/src/scenegraph/smil_anim.c:1396,1
    - Dst: gf_svg_delete_attribute_value
      Src: /src/gpac/src/scenegraph/smil_anim.c:1397,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/smil_anim.c:1401,1
    - Dst: gf_smil_anim_delete_runtime_info
      Src: /src/gpac/src/scenegraph/smil_anim.c:1403,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/smil_anim.c:1405,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/smil_anim.c:1406,1
    - Dst: gf_node_animation_del
      Src: /src/gpac/src/scenegraph/smil_anim.c:1408,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - e
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1409
      start: 1390
    functionDepth: 2
    functionLinenumber: 1390
    functionLinenumberEnd: 1409
    functionName: gf_smil_anim_delete_animations
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_animation_del
    - gf_node_animation_count
    - gf_smil_anim_delete_runtime_info
    - gf_node_animation_get
    - gf_list_del
    - gf_list_enum
    - gf_svg_delete_attribute_value
    linkageType: ''
    returnType: void
    signature: void gf_smil_anim_delete_animations(GF_Node *e)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_smil_timing_init_runtime_info
      Src: /src/gpac/src/scenegraph/smil_anim.c:1416,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/scenegraph/smil_anim.c:1418,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/smil_anim.c:1419,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:1421,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1429
      start: 1411
    functionDepth: 1
    functionLinenumber: 1411
    functionLinenumberEnd: 1429
    functionName: gf_smil_anim_init_discard
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GF_SAFEALLOC
    - gf_svg_flatten_attributes
    - gf_smil_timing_init_runtime_info
    linkageType: ''
    returnType: void
    signature: void gf_smil_anim_init_discard(GF_Node *node)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/scenegraph/smil_anim.c:1438,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/smil_anim.c:1439,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/smil_anim.c:1448,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/scenegraph/smil_anim.c:1451,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:1455,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:1460,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/scenegraph/smil_anim.c:1460,1
    - Dst: gf_node_register_iri
      Src: /src/gpac/src/scenegraph/smil_anim.c:1464,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_anim.c:1471,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/src/scenegraph/smil_anim.c:1487,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/smil_anim.c:1503,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/smil_anim.c:1509,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/scenegraph/smil_anim.c:1510,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/scenegraph/smil_anim.c:1511,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/smil_anim.c:1512,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/smil_anim.c:1520,1
    - Dst: gf_smil_timing_init_runtime_info
      Src: /src/gpac/src/scenegraph/smil_anim.c:1548,1
    - Dst: gf_smil_anim_init_runtime_info
      Src: /src/gpac/src/scenegraph/smil_anim.c:1549,1
    - Dst: gf_smil_anim_set_anim_runtime_in_timing
      Src: /src/gpac/src/scenegraph/smil_anim.c:1550,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 93
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1551
      start: 1431
    functionDepth: 5
    functionLinenumber: 1431
    functionLinenumberEnd: 1551
    functionName: gf_smil_anim_init_node
    functionSourceFile: /src/gpac/src/scenegraph/smil_anim.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_svg_parse_attribute
    - gf_svg_flatten_attributes
    - gf_sg_find_node_by_name
    - gf_node_get_attribute_by_tag
    - gf_utf8_is_legal
    - GF_LOG
    - gf_smil_timing_init_runtime_info
    - gf_smil_anim_set_anim_runtime_in_timing
    - strlen
    - gf_node_register_iri
    - gf_node_get_graph
    - gf_smil_anim_init_runtime_info
    - gf_node_get_attribute_by_name
    - gf_node_get_parent
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void gf_smil_anim_init_node(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:38,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:46,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - _val
    - str
    argTypes:
    - Fixed
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 47
    functionName: format_sftime_string
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - sprintf
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void format_sftime_string(Fixed _val, char *str)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:57,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:58,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:59,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:60,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:61,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:67,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:68,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:69,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:70,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:76,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:77,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:78,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:86,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:87,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:96,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:97,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:98,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:107,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:108,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:109,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:110,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:118,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:120,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:121,1
    - Dst: atoi
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:121,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:124,1
    - Dst: atof
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:124,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:129,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:130,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:131,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:132,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 75
    argCount: 7
    argNames:
    - p
    - inMFField
    - inType
    - do_sum
    - i
    - output
    - num_out
    argTypes:
    - M_Valuator*
    - GenMFField*
    - u32
    - Bool
    - u32
    - SFVec4f*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 140
    functionName: valuator_get_output
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - INT2FIX
    - atof
    - strstr
    - atoi
    - stricmp
    - gf_mulfix
    linkageType: ''
    returnType: void
    signature: void valuator_get_output(M_Valuator *p, GenMFField *inMFField, u32
      inType, Bool do_sum, u32 i, SFVec4f *output, u32 *num_out)
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:148,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:160,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:161,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:162,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:163,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:189,1
    - Dst: valuator_get_output
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:192,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:200,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:201,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:202,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:203,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:204,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:205,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:206,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:210,1
    - Dst: gf_sg_route_setup
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:212,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:224,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:227,1
    - Dst: format_sftime_string
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:252,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:254,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:254,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:257,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:257,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:257,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:259,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:259,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:259,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:259,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:261,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:261,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:261,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:261,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:261,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:263,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:264,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:269,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:274,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:276,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:279,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:287,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:294,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:302,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:311,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:312,1
    - Dst: format_sftime_string
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:316,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:318,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:318,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:321,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:321,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:321,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:323,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:323,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:323,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:323,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:325,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:325,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:325,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:325,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:325,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:327,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:328,1
    - Dst: gf_sg_route_activate
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:333,1
    - Dst: gf_sg_route_queue
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:335,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 189
    argCount: 4
    argNames:
    - p
    - inSFField
    - inMFField
    - inType
    argTypes:
    - M_Valuator*
    - SFVec4f*
    - GenMFField*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 142
    functionDepth: 4
    functionLinenumber: 142
    functionLinenumberEnd: 338
    functionName: SetValuatorOutput
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - gf_free
    - format_sftime_string
    - gf_strdup
    - gf_sg_route_queue
    - valuator_get_output
    - gf_sg_route_activate
    - sprintf
    - gf_sg_route_setup
    - FIX2INT
    - gf_list_enum
    - gf_node_get_private
    - gf_mulfix
    - FIX2FLT
    - gf_sg_vrml_mf_alloc
    linkageType: ''
    returnType: void
    signature: void SetValuatorOutput(M_Valuator *p, SFVec4f *inSFField, GenMFField
      *inMFField, u32 inType)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SetValuatorOutput
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:353,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 348
    functionDepth: 5
    functionLinenumber: 348
    functionLinenumberEnd: 354
    functionName: Valuator_SetInSFBool
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - SetValuatorOutput
    linkageType: ''
    returnType: void
    signature: void Valuator_SetInSFBool(GF_Node *n, GF_Route *route)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SetValuatorOutput
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:360,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 355
    functionDepth: 5
    functionLinenumber: 355
    functionLinenumberEnd: 361
    functionName: Valuator_SetInSFFloat
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - SetValuatorOutput
    linkageType: ''
    returnType: void
    signature: void Valuator_SetInSFFloat(GF_Node *n, GF_Route *route)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:366,1
    - Dst: SetValuatorOutput
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:367,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 362
    functionDepth: 5
    functionLinenumber: 362
    functionLinenumberEnd: 368
    functionName: Valuator_SetInSFInt32
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - SetValuatorOutput
    - INT2FIX
    linkageType: ''
    returnType: void
    signature: void Valuator_SetInSFInt32(GF_Node *n, GF_Route *route)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:373,1
    - Dst: SetValuatorOutput
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:374,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 369
    functionDepth: 5
    functionLinenumber: 369
    functionLinenumberEnd: 375
    functionName: Valuator_SetInSFTime
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - SetValuatorOutput
    linkageType: ''
    returnType: void
    signature: void Valuator_SetInSFTime(GF_Node *n, GF_Route *route)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SetValuatorOutput
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:384,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 376
    functionDepth: 5
    functionLinenumber: 376
    functionLinenumberEnd: 385
    functionName: Valuator_SetInSFColor
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - SetValuatorOutput
    linkageType: ''
    returnType: void
    signature: void Valuator_SetInSFColor(GF_Node *n, GF_Route *route)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SetValuatorOutput
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:393,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 386
    functionDepth: 5
    functionLinenumber: 386
    functionLinenumberEnd: 394
    functionName: Valuator_SetInSFVec2f
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - SetValuatorOutput
    linkageType: ''
    returnType: void
    signature: void Valuator_SetInSFVec2f(GF_Node *n, GF_Route *route)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SetValuatorOutput
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:403,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 395
    functionDepth: 5
    functionLinenumber: 395
    functionLinenumberEnd: 404
    functionName: Valuator_SetInSFVec3f
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - SetValuatorOutput
    linkageType: ''
    returnType: void
    signature: void Valuator_SetInSFVec3f(GF_Node *n, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SetValuatorOutput
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:411,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 405
    functionDepth: 5
    functionLinenumber: 405
    functionLinenumberEnd: 413
    functionName: Valuator_SetInSFRotation
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - SetValuatorOutput
    linkageType: ''
    returnType: void
    signature: void Valuator_SetInSFRotation(GF_Node *n, GF_Route *route)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:428,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:430,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:431,1
    - Dst: atoi
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:431,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:434,1
    - Dst: atof
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:434,1
    - Dst: SetValuatorOutput
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:437,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 421
    functionDepth: 5
    functionLinenumber: 421
    functionLinenumberEnd: 438
    functionName: Valuator_SetInSFString
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - INT2FIX
    - atof
    - strstr
    - atoi
    - stricmp
    - SetValuatorOutput
    linkageType: ''
    returnType: void
    signature: void Valuator_SetInSFString(GF_Node *n, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SetValuatorOutput
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:444,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 440
    functionDepth: 5
    functionLinenumber: 440
    functionLinenumberEnd: 446
    functionName: Valuator_SetInMFColor
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - SetValuatorOutput
    linkageType: ''
    returnType: void
    signature: void Valuator_SetInMFColor(GF_Node *n, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SetValuatorOutput
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:452,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 454
      start: 448
    functionDepth: 5
    functionLinenumber: 448
    functionLinenumberEnd: 454
    functionName: Valuator_SetInMFFloat
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - SetValuatorOutput
    linkageType: ''
    returnType: void
    signature: void Valuator_SetInMFFloat(GF_Node *n, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SetValuatorOutput
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:459,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 461
      start: 455
    functionDepth: 5
    functionLinenumber: 455
    functionLinenumberEnd: 461
    functionName: Valuator_SetInMFInt32
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - SetValuatorOutput
    linkageType: ''
    returnType: void
    signature: void Valuator_SetInMFInt32(GF_Node *n, GF_Route *route)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SetValuatorOutput
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:465,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 462
    functionDepth: 5
    functionLinenumber: 462
    functionLinenumberEnd: 466
    functionName: Valuator_SetInMFVec2f
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - SetValuatorOutput
    linkageType: ''
    returnType: void
    signature: void Valuator_SetInMFVec2f(GF_Node *n, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SetValuatorOutput
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:471,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 467
    functionDepth: 5
    functionLinenumber: 467
    functionLinenumberEnd: 473
    functionName: Valuator_SetInMFVec3f
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - SetValuatorOutput
    linkageType: ''
    returnType: void
    signature: void Valuator_SetInMFVec3f(GF_Node *n, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SetValuatorOutput
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:478,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 474
    functionDepth: 5
    functionLinenumber: 474
    functionLinenumberEnd: 480
    functionName: Valuator_SetInMFRotation
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - SetValuatorOutput
    linkageType: ''
    returnType: void
    signature: void Valuator_SetInMFRotation(GF_Node *n, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SetValuatorOutput
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:485,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 481
    functionDepth: 5
    functionLinenumber: 481
    functionLinenumberEnd: 487
    functionName: Valuator_SetInMFString
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - SetValuatorOutput
    linkageType: ''
    returnType: void
    signature: void Valuator_SetInMFString(GF_Node *n, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:493,1
    - Dst: gf_sg_vrml_field_pointer_del
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:494,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 490
    functionDepth: 1
    functionLinenumber: 490
    functionLinenumberEnd: 496
    functionName: valuator_destroy
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    - gf_sg_vrml_field_pointer_del
    linkageType: ''
    returnType: void
    signature: void valuator_destroy(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:500,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:520,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:521,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:525,1
    - Dst: Valuator_SetInSFRotation
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:526,1
    - Dst: Valuator_SetInMFColor
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:527,1
    - Dst: Valuator_SetInMFFloat
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:528,1
    - Dst: Valuator_SetInMFInt32
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:529,1
    - Dst: Valuator_SetInMFVec3f
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:530,1
    - Dst: Valuator_SetInMFRotation
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:531,1
    - Dst: Valuator_SetInMFString
      Src: /src/gpac/src/scenegraph/mpeg4_valuator.c:532,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 31
    argCount: 1
    argNames:
    - node
    argTypes:
    - M_Valuator*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 498
    functionDepth: 6
    functionLinenumber: 498
    functionLinenumberEnd: 536
    functionName: InitValuator
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_valuator.c
    functionUses: 0
    functionsReached:
    - Valuator_SetInSFRotation
    - Valuator_SetInMFFloat
    - gf_node_set_private
    - Valuator_SetInMFVec3f
    - Valuator_SetInMFString
    - Valuator_SetInMFColor
    - Valuator_SetInMFInt32
    - Valuator_SetInMFRotation
    - gf_node_set_callback_function
    - gf_sg_vrml_field_pointer_new
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: Bool
    signature: Bool InitValuator(M_Valuator *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:47,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:48,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:49,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:50,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 52
    functionName: Anchor_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfurl_del
    - gf_node_free
    - gf_sg_sfstring_del
    - gf_sg_vrml_parent_destroy
    - gf_sg_mfstring_del
    linkageType: ''
    returnType: void
    signature: void Anchor_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 72
    functionName: Anchor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Anchor_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 89
    functionName: Anchor_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Anchor_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 53
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 144
    functionName: Anchor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Anchor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:149,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:150,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:151,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:152,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:153,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:154,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:155,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 157
    functionName: Anchor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Anchor_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 164
    functionName: Anchor_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Anchor_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:171,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:173,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:174,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 178
    functionName: Anchor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 2
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Anchor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:188,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 190
    functionName: AnimationStream_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void AnimationStream_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 211
    functionName: AnimationStream_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 AnimationStream_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 231
    functionName: AnimationStream_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AnimationStream_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 47
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 280
    functionName: AnimationStream_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AnimationStream_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:285,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:286,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:287,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:288,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:289,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:290,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:291,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 293
    functionName: AnimationStream_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 AnimationStream_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 294
    functionDepth: 0
    functionLinenumber: 294
    functionLinenumberEnd: 306
    functionName: AnimationStream_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool AnimationStream_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:313,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:315,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:318,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 310
    functionDepth: 1
    functionLinenumber: 310
    functionLinenumberEnd: 322
    functionName: AnimationStream_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *AnimationStream_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:332,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:333,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:334,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:335,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 329
    functionDepth: 1
    functionLinenumber: 329
    functionLinenumberEnd: 336
    functionName: Appearance_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Appearance_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 342
    functionDepth: 0
    functionLinenumber: 342
    functionLinenumberEnd: 356
    functionName: Appearance_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Appearance_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 358
    functionDepth: 0
    functionLinenumber: 358
    functionLinenumberEnd: 373
    functionName: Appearance_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Appearance_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 26
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 401
    functionName: Appearance_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Appearance_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:406,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:407,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:408,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 404
    functionDepth: 0
    functionLinenumber: 404
    functionLinenumberEnd: 410
    functionName: Appearance_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Appearance_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 417
    functionName: Appearance_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Appearance_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:424,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:426,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 421
    functionDepth: 1
    functionLinenumber: 421
    functionLinenumberEnd: 430
    functionName: Appearance_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Appearance_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:440,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:441,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 437
    functionDepth: 1
    functionLinenumber: 437
    functionLinenumberEnd: 443
    functionName: AudioBuffer_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister_children
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void AudioBuffer_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 450
    functionDepth: 0
    functionLinenumber: 450
    functionLinenumberEnd: 464
    functionName: AudioBuffer_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 AudioBuffer_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 484
      start: 466
    functionDepth: 0
    functionLinenumber: 466
    functionLinenumberEnd: 484
    functionName: AudioBuffer_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AudioBuffer_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 66
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 485
    functionDepth: 0
    functionLinenumber: 485
    functionLinenumberEnd: 552
    functionName: AudioBuffer_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AudioBuffer_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:557,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:558,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:559,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:560,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:561,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:562,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:563,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:564,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:565,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:566,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 568
      start: 555
    functionDepth: 0
    functionLinenumber: 555
    functionLinenumberEnd: 568
    functionName: AudioBuffer_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 AudioBuffer_get_field_index_by_name(char *name)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:575,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:581,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:587,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:594,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:595,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:600,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 36
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 569
    functionDepth: 1
    functionLinenumber: 569
    functionLinenumberEnd: 606
    functionName: AudioBuffer_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool AudioBuffer_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:613,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:615,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:618,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:622,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:625,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 627
      start: 610
    functionDepth: 1
    functionLinenumber: 610
    functionLinenumberEnd: 627
    functionName: AudioBuffer_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *AudioBuffer_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:637,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:638,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:639,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 640
      start: 634
    functionDepth: 1
    functionLinenumber: 634
    functionLinenumberEnd: 640
    functionName: AudioClip_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfurl_del
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void AudioClip_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 647
    functionDepth: 0
    functionLinenumber: 647
    functionLinenumberEnd: 661
    functionName: AudioClip_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 AudioClip_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 663
    functionDepth: 0
    functionLinenumber: 663
    functionLinenumberEnd: 681
    functionName: AudioClip_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AudioClip_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 53
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 736
      start: 682
    functionDepth: 0
    functionLinenumber: 682
    functionLinenumberEnd: 736
    functionName: AudioClip_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AudioClip_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:741,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:742,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:743,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:744,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:745,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:746,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:747,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:748,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 739
    functionDepth: 0
    functionLinenumber: 739
    functionLinenumberEnd: 750
    functionName: AudioClip_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 AudioClip_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:757,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 751
    functionDepth: 1
    functionLinenumber: 751
    functionLinenumberEnd: 763
    functionName: AudioClip_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool AudioClip_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:770,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:772,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:775,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 779
      start: 767
    functionDepth: 1
    functionLinenumber: 767
    functionLinenumberEnd: 779
    functionName: AudioClip_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *AudioClip_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:789,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:790,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:791,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 792
      start: 786
    functionDepth: 1
    functionLinenumber: 786
    functionLinenumberEnd: 792
    functionName: AudioDelay_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void AudioDelay_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 812
      start: 798
    functionDepth: 0
    functionLinenumber: 798
    functionLinenumberEnd: 812
    functionName: AudioDelay_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 AudioDelay_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 829
      start: 814
    functionDepth: 0
    functionLinenumber: 814
    functionLinenumberEnd: 829
    functionName: AudioDelay_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AudioDelay_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 46
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 877
      start: 830
    functionDepth: 0
    functionLinenumber: 830
    functionLinenumberEnd: 877
    functionName: AudioDelay_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AudioDelay_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:882,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:883,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:884,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:885,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:886,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:887,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 889
      start: 880
    functionDepth: 0
    functionLinenumber: 880
    functionLinenumberEnd: 889
    functionName: AudioDelay_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 AudioDelay_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:897,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:898,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:904,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:905,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 910
      start: 890
    functionDepth: 1
    functionLinenumber: 890
    functionLinenumberEnd: 910
    functionName: AudioDelay_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool AudioDelay_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:917,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:919,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:920,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 926
      start: 914
    functionDepth: 1
    functionLinenumber: 914
    functionLinenumberEnd: 926
    functionName: AudioDelay_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *AudioDelay_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:936,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:937,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:938,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:939,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:940,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:941,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 942
      start: 933
    functionDepth: 1
    functionLinenumber: 933
    functionLinenumberEnd: 942
    functionName: AudioFX_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfint32_del
    - gf_node_free
    - gf_sg_sfstring_del
    - gf_sg_vrml_parent_destroy
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void AudioFX_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 963
      start: 949
    functionDepth: 0
    functionLinenumber: 949
    functionLinenumberEnd: 963
    functionName: AudioFX_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 AudioFX_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 965
    functionDepth: 0
    functionLinenumber: 965
    functionLinenumberEnd: 983
    functionName: AudioFX_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AudioFX_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 58
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1043
      start: 984
    functionDepth: 0
    functionLinenumber: 984
    functionLinenumberEnd: 1043
    functionName: AudioFX_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AudioFX_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1048,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1049,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1050,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1051,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1052,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1053,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1054,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1055,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1057
      start: 1046
    functionDepth: 0
    functionLinenumber: 1046
    functionLinenumberEnd: 1057
    functionName: AudioFX_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 AudioFX_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1071,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1072,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1078,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1079,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1084
      start: 1058
    functionDepth: 1
    functionLinenumber: 1058
    functionLinenumberEnd: 1084
    functionName: AudioFX_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool AudioFX_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1091,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1093,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1094,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1099
      start: 1088
    functionDepth: 1
    functionLinenumber: 1088
    functionLinenumberEnd: 1099
    functionName: AudioFX_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *AudioFX_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1109,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1110,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1111,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1113
      start: 1106
    functionDepth: 1
    functionLinenumber: 1106
    functionLinenumberEnd: 1113
    functionName: AudioMix_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - gf_sg_mfint32_del
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void AudioMix_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1134
      start: 1120
    functionDepth: 0
    functionLinenumber: 1120
    functionLinenumberEnd: 1134
    functionName: AudioMix_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 AudioMix_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1154
      start: 1136
    functionDepth: 0
    functionLinenumber: 1136
    functionLinenumberEnd: 1154
    functionName: AudioMix_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AudioMix_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 52
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1208
      start: 1155
    functionDepth: 0
    functionLinenumber: 1155
    functionLinenumberEnd: 1208
    functionName: AudioMix_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AudioMix_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1213,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1214,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1215,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1216,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1217,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1218,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1219,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1221
      start: 1211
    functionDepth: 0
    functionLinenumber: 1211
    functionLinenumberEnd: 1221
    functionName: AudioMix_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 AudioMix_get_field_index_by_name(char *name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1229,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1230,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1235,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1236,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1242,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1243,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1249,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1250,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 32
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1255
      start: 1222
    functionDepth: 1
    functionLinenumber: 1222
    functionLinenumberEnd: 1255
    functionName: AudioMix_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool AudioMix_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1262,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1264,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1265,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1271
      start: 1259
    functionDepth: 1
    functionLinenumber: 1259
    functionLinenumberEnd: 1271
    functionName: AudioMix_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *AudioMix_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1281,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1282,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1283,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1284,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1285
      start: 1278
    functionDepth: 1
    functionLinenumber: 1278
    functionLinenumberEnd: 1285
    functionName: AudioSource_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfurl_del
    - gf_sg_vrml_parent_destroy
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void AudioSource_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1306
      start: 1292
    functionDepth: 0
    functionLinenumber: 1292
    functionLinenumberEnd: 1306
    functionName: AudioSource_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 AudioSource_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1326
      start: 1308
    functionDepth: 0
    functionLinenumber: 1308
    functionLinenumberEnd: 1326
    functionName: AudioSource_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AudioSource_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 70
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1398
      start: 1327
    functionDepth: 0
    functionLinenumber: 1327
    functionLinenumberEnd: 1398
    functionName: AudioSource_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AudioSource_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1403,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1404,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1405,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1406,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1407,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1408,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1409,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1410,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1411,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1412,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1414
      start: 1401
    functionDepth: 0
    functionLinenumber: 1401
    functionLinenumberEnd: 1414
    functionName: AudioSource_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 AudioSource_get_field_index_by_name(char *name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1421,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1427,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1434,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1435,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1441,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1442,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1447
      start: 1415
    functionDepth: 1
    functionLinenumber: 1415
    functionLinenumberEnd: 1447
    functionName: AudioSource_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool AudioSource_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1454,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1456,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1457,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1460,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1461,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1466
      start: 1451
    functionDepth: 1
    functionLinenumber: 1451
    functionLinenumberEnd: 1466
    functionName: AudioSource_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *AudioSource_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1476,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1477,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1478,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1480
      start: 1473
    functionDepth: 1
    functionLinenumber: 1473
    functionLinenumberEnd: 1480
    functionName: AudioSwitch_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void AudioSwitch_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1500
      start: 1486
    functionDepth: 0
    functionLinenumber: 1486
    functionLinenumberEnd: 1500
    functionName: AudioSwitch_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 AudioSwitch_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1517
      start: 1502
    functionDepth: 0
    functionLinenumber: 1502
    functionLinenumberEnd: 1517
    functionName: AudioSwitch_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AudioSwitch_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 46
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1565
      start: 1518
    functionDepth: 0
    functionLinenumber: 1518
    functionLinenumberEnd: 1565
    functionName: AudioSwitch_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AudioSwitch_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1570,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1571,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1572,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1573,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1574,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1575,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1577
      start: 1568
    functionDepth: 0
    functionLinenumber: 1568
    functionLinenumberEnd: 1577
    functionName: AudioSwitch_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 AudioSwitch_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1585,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1586,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1592,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1593,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1599,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1600,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 26
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1605
      start: 1578
    functionDepth: 1
    functionLinenumber: 1578
    functionLinenumberEnd: 1605
    functionName: AudioSwitch_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool AudioSwitch_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1612,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1614,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1615,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1620
      start: 1609
    functionDepth: 1
    functionLinenumber: 1609
    functionLinenumberEnd: 1620
    functionName: AudioSwitch_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *AudioSwitch_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1630,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1631,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1632,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1633,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1634,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1635,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1636,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1637,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1638,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1639,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1640,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1641
      start: 1627
    functionDepth: 1
    functionLinenumber: 1627
    functionLinenumberEnd: 1641
    functionName: Background_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfurl_del
    - gf_node_free
    - gf_sg_mfcolor_del
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void Background_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1662
      start: 1648
    functionDepth: 0
    functionLinenumber: 1648
    functionLinenumberEnd: 1662
    functionName: Background_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Background_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1682
      start: 1664
    functionDepth: 0
    functionLinenumber: 1664
    functionLinenumberEnd: 1682
    functionName: Background_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Background_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 78
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1762
      start: 1683
    functionDepth: 0
    functionLinenumber: 1683
    functionLinenumberEnd: 1762
    functionName: Background_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Background_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1767,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1768,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1769,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1770,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1771,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1772,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1773,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1774,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1775,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1776,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1777,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1778,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1780
      start: 1765
    functionDepth: 0
    functionLinenumber: 1765
    functionLinenumberEnd: 1780
    functionName: Background_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Background_get_field_index_by_name(char *name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1787,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1788,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1793,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1794,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1799,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1800,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1805,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1806,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1811
      start: 1781
    functionDepth: 1
    functionLinenumber: 1781
    functionLinenumberEnd: 1811
    functionName: Background_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Background_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1818,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1820,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1823,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1825,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1826,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1827,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1829
      start: 1815
    functionDepth: 1
    functionLinenumber: 1815
    functionLinenumberEnd: 1829
    functionName: Background_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Background_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1839,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1840,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1841
      start: 1836
    functionDepth: 1
    functionLinenumber: 1836
    functionLinenumberEnd: 1841
    functionName: Background2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Background2D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1862
      start: 1848
    functionDepth: 0
    functionLinenumber: 1848
    functionLinenumberEnd: 1862
    functionName: Background2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Background2D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1882
      start: 1864
    functionDepth: 0
    functionLinenumber: 1864
    functionLinenumberEnd: 1882
    functionName: Background2D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Background2D_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1914
      start: 1883
    functionDepth: 0
    functionLinenumber: 1883
    functionLinenumberEnd: 1914
    functionName: Background2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Background2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1919,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1920,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1921,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1922,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1924
      start: 1917
    functionDepth: 0
    functionLinenumber: 1917
    functionLinenumberEnd: 1924
    functionName: Background2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Background2D_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1931,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1932,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1937
      start: 1925
    functionDepth: 1
    functionLinenumber: 1925
    functionLinenumberEnd: 1937
    functionName: Background2D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Background2D_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1944,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1946,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1949,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1950,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1951,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1953
      start: 1941
    functionDepth: 1
    functionLinenumber: 1941
    functionLinenumberEnd: 1953
    functionName: Background2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Background2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1963,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:1964,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1965
      start: 1960
    functionDepth: 1
    functionLinenumber: 1960
    functionLinenumberEnd: 1965
    functionName: Billboard_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Billboard_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1986
      start: 1972
    functionDepth: 0
    functionLinenumber: 1972
    functionLinenumberEnd: 1986
    functionName: Billboard_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Billboard_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2006
      start: 1988
    functionDepth: 0
    functionLinenumber: 1988
    functionLinenumberEnd: 2006
    functionName: Billboard_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Billboard_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 34
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2042
      start: 2007
    functionDepth: 0
    functionLinenumber: 2007
    functionLinenumberEnd: 2042
    functionName: Billboard_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Billboard_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2047,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2048,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2049,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2050,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2052
      start: 2045
    functionDepth: 0
    functionLinenumber: 2045
    functionLinenumberEnd: 2052
    functionName: Billboard_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Billboard_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2063
      start: 2053
    functionDepth: 0
    functionLinenumber: 2053
    functionLinenumberEnd: 2063
    functionName: Billboard_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Billboard_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2070,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2072,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2073,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2076,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2077,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2078,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2080
      start: 2067
    functionDepth: 1
    functionLinenumber: 2067
    functionLinenumberEnd: 2080
    functionName: Billboard_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Billboard_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2090,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2091
      start: 2087
    functionDepth: 1
    functionLinenumber: 2087
    functionLinenumberEnd: 2091
    functionName: Bitmap_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Bitmap_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2112
      start: 2098
    functionDepth: 0
    functionLinenumber: 2098
    functionLinenumberEnd: 2112
    functionName: Bitmap_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Bitmap_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2132
      start: 2114
    functionDepth: 0
    functionLinenumber: 2114
    functionLinenumberEnd: 2132
    functionName: Bitmap_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Bitmap_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2145
      start: 2133
    functionDepth: 0
    functionLinenumber: 2133
    functionLinenumberEnd: 2145
    functionName: Bitmap_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Bitmap_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2150,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2152
      start: 2148
    functionDepth: 0
    functionLinenumber: 2148
    functionLinenumberEnd: 2152
    functionName: Bitmap_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Bitmap_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2165
      start: 2153
    functionDepth: 1
    functionLinenumber: 2153
    functionLinenumberEnd: 2165
    functionName: Bitmap_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Bitmap_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2172,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2174,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2177,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2178,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2180
      start: 2169
    functionDepth: 1
    functionLinenumber: 2169
    functionLinenumberEnd: 2180
    functionName: Bitmap_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Bitmap_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2191
      start: 2187
    functionDepth: 1
    functionLinenumber: 2187
    functionLinenumberEnd: 2191
    functionName: Box_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Box_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2209
      start: 2195
    functionDepth: 0
    functionLinenumber: 2195
    functionLinenumberEnd: 2209
    functionName: Box_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Box_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2220
      start: 2211
    functionDepth: 0
    functionLinenumber: 2211
    functionLinenumberEnd: 2220
    functionName: Box_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Box_get_field_index(GF_Node *n, u32 inField, u8 IndexMode, u32
      *allField)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2233
      start: 2221
    functionDepth: 0
    functionLinenumber: 2221
    functionLinenumberEnd: 2233
    functionName: Box_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Box_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2238,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2240
      start: 2236
    functionDepth: 0
    functionLinenumber: 2236
    functionLinenumberEnd: 2240
    functionName: Box_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Box_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2247,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2253
      start: 2241
    functionDepth: 1
    functionLinenumber: 2241
    functionLinenumberEnd: 2253
    functionName: Box_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Box_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2260,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2262,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2265,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2266,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2269
      start: 2257
    functionDepth: 1
    functionLinenumber: 2257
    functionLinenumberEnd: 2269
    functionName: Box_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Box_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2279,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2280
      start: 2276
    functionDepth: 1
    functionLinenumber: 2276
    functionLinenumberEnd: 2280
    functionName: Circle_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Circle_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2301
      start: 2287
    functionDepth: 0
    functionLinenumber: 2287
    functionLinenumberEnd: 2301
    functionName: Circle_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Circle_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2321
      start: 2303
    functionDepth: 0
    functionLinenumber: 2303
    functionLinenumberEnd: 2321
    functionName: Circle_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Circle_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2334
      start: 2322
    functionDepth: 0
    functionLinenumber: 2322
    functionLinenumberEnd: 2334
    functionName: Circle_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Circle_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2339,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2341
      start: 2337
    functionDepth: 0
    functionLinenumber: 2337
    functionLinenumberEnd: 2341
    functionName: Circle_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Circle_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2348,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2354
      start: 2342
    functionDepth: 1
    functionLinenumber: 2342
    functionLinenumberEnd: 2354
    functionName: Circle_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Circle_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2361,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2363,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2366,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2368
      start: 2358
    functionDepth: 1
    functionLinenumber: 2358
    functionLinenumberEnd: 2368
    functionName: Circle_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Circle_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2378,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2379,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2380,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2381
      start: 2375
    functionDepth: 1
    functionLinenumber: 2375
    functionLinenumberEnd: 2381
    functionName: Collision_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_unregister
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Collision_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2401
      start: 2387
    functionDepth: 0
    functionLinenumber: 2387
    functionLinenumberEnd: 2401
    functionName: Collision_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Collision_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2418
      start: 2403
    functionDepth: 0
    functionLinenumber: 2403
    functionLinenumberEnd: 2418
    functionName: Collision_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Collision_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 47
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2467
      start: 2419
    functionDepth: 0
    functionLinenumber: 2419
    functionLinenumberEnd: 2467
    functionName: Collision_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Collision_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2472,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2473,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2474,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2475,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2476,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2477,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2479
      start: 2470
    functionDepth: 0
    functionLinenumber: 2470
    functionLinenumberEnd: 2479
    functionName: Collision_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Collision_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2486
      start: 2480
    functionDepth: 0
    functionLinenumber: 2480
    functionLinenumberEnd: 2486
    functionName: Collision_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Collision_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2493,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2495,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2496,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2501
      start: 2490
    functionDepth: 1
    functionLinenumber: 2490
    functionLinenumberEnd: 2501
    functionName: Collision_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Collision_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2511,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2512,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2513
      start: 2508
    functionDepth: 1
    functionLinenumber: 2508
    functionLinenumberEnd: 2513
    functionName: Color_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_sg_mfcolor_del
    linkageType: ''
    returnType: void
    signature: void Color_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2534
      start: 2520
    functionDepth: 0
    functionLinenumber: 2520
    functionLinenumberEnd: 2534
    functionName: Color_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Color_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2554
      start: 2536
    functionDepth: 0
    functionLinenumber: 2536
    functionLinenumberEnd: 2554
    functionName: Color_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Color_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2567
      start: 2555
    functionDepth: 0
    functionLinenumber: 2555
    functionLinenumberEnd: 2567
    functionName: Color_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Color_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2572,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2574
      start: 2570
    functionDepth: 0
    functionLinenumber: 2570
    functionLinenumberEnd: 2574
    functionName: Color_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Color_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2581,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2582,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2587
      start: 2575
    functionDepth: 1
    functionLinenumber: 2575
    functionLinenumberEnd: 2587
    functionName: Color_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Color_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2594,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2596,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2600
      start: 2591
    functionDepth: 1
    functionLinenumber: 2591
    functionLinenumberEnd: 2600
    functionName: Color_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Color_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2610,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2611,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2612,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2613
      start: 2607
    functionDepth: 1
    functionLinenumber: 2607
    functionLinenumberEnd: 2613
    functionName: ColorInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_sg_mfcolor_del
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void ColorInterpolator_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2633
      start: 2619
    functionDepth: 0
    functionLinenumber: 2619
    functionLinenumberEnd: 2633
    functionName: ColorInterpolator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ColorInterpolator_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2650
      start: 2635
    functionDepth: 0
    functionLinenumber: 2635
    functionLinenumberEnd: 2650
    functionName: ColorInterpolator_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ColorInterpolator_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2682
      start: 2651
    functionDepth: 0
    functionLinenumber: 2651
    functionLinenumberEnd: 2682
    functionName: ColorInterpolator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ColorInterpolator_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2687,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2688,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2689,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2690,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2692
      start: 2685
    functionDepth: 0
    functionLinenumber: 2685
    functionLinenumberEnd: 2692
    functionName: ColorInterpolator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ColorInterpolator_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2699,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2700,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2705,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2706,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2711
      start: 2693
    functionDepth: 1
    functionLinenumber: 2693
    functionLinenumberEnd: 2711
    functionName: ColorInterpolator_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool ColorInterpolator_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2718,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2720,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2724
      start: 2715
    functionDepth: 1
    functionLinenumber: 2715
    functionLinenumberEnd: 2724
    functionName: ColorInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ColorInterpolator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2734,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2735,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2736,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2737,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2738
      start: 2731
    functionDepth: 1
    functionLinenumber: 2731
    functionLinenumberEnd: 2738
    functionName: CompositeTexture2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void CompositeTexture2D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2758
      start: 2744
    functionDepth: 0
    functionLinenumber: 2744
    functionLinenumberEnd: 2758
    functionName: CompositeTexture2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 CompositeTexture2D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2775
      start: 2760
    functionDepth: 0
    functionLinenumber: 2760
    functionLinenumberEnd: 2775
    functionName: CompositeTexture2D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CompositeTexture2D_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 60
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2837
      start: 2776
    functionDepth: 0
    functionLinenumber: 2776
    functionLinenumberEnd: 2837
    functionName: CompositeTexture2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CompositeTexture2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2842,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2843,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2844,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2845,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2846,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2847,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2848,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2849,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2851
      start: 2840
    functionDepth: 0
    functionLinenumber: 2840
    functionLinenumberEnd: 2851
    functionName: CompositeTexture2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 CompositeTexture2D_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2859,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2866,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2873,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2874,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 26
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2879
      start: 2852
    functionDepth: 1
    functionLinenumber: 2852
    functionLinenumberEnd: 2879
    functionName: CompositeTexture2D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool CompositeTexture2D_get_aq_info(GF_Node *n, u32 FieldIndex, u8
      *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2886,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2888,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2889,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2896
      start: 2883
    functionDepth: 1
    functionLinenumber: 2883
    functionLinenumberEnd: 2896
    functionName: CompositeTexture2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *CompositeTexture2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2906,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2907,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2908,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2909,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2910,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:2911,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2912
      start: 2903
    functionDepth: 1
    functionLinenumber: 2903
    functionLinenumberEnd: 2912
    functionName: CompositeTexture3D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void CompositeTexture3D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2932
      start: 2918
    functionDepth: 0
    functionLinenumber: 2918
    functionLinenumberEnd: 2932
    functionName: CompositeTexture3D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 CompositeTexture3D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2949
      start: 2934
    functionDepth: 0
    functionLinenumber: 2934
    functionLinenumberEnd: 2949
    functionName: CompositeTexture3D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CompositeTexture3D_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 80
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3031
      start: 2950
    functionDepth: 0
    functionLinenumber: 2950
    functionLinenumberEnd: 3031
    functionName: CompositeTexture3D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CompositeTexture3D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3036,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3037,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3038,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3039,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3040,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3041,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3042,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3043,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3044,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3045,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3046,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3048
      start: 3034
    functionDepth: 0
    functionLinenumber: 3034
    functionLinenumberEnd: 3048
    functionName: CompositeTexture3D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 CompositeTexture3D_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3056,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3063,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3069
      start: 3049
    functionDepth: 1
    functionLinenumber: 3049
    functionLinenumberEnd: 3069
    functionName: CompositeTexture3D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool CompositeTexture3D_get_aq_info(GF_Node *n, u32 FieldIndex, u8
      *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3076,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3078,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3079,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3087
      start: 3073
    functionDepth: 1
    functionLinenumber: 3073
    functionLinenumberEnd: 3087
    functionName: CompositeTexture3D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *CompositeTexture3D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfcommand_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3097,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3098,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3099
      start: 3094
    functionDepth: 1
    functionLinenumber: 3094
    functionLinenumberEnd: 3099
    functionName: Conditional_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_sfcommand_del
    linkageType: ''
    returnType: void
    signature: void Conditional_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3119
      start: 3105
    functionDepth: 0
    functionLinenumber: 3105
    functionLinenumberEnd: 3119
    functionName: Conditional_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Conditional_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3136
      start: 3121
    functionDepth: 0
    functionLinenumber: 3121
    functionLinenumberEnd: 3136
    functionName: Conditional_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Conditional_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3169
      start: 3137
    functionDepth: 0
    functionLinenumber: 3137
    functionLinenumberEnd: 3169
    functionName: Conditional_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Conditional_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3174,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3175,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3176,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3177,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3179
      start: 3172
    functionDepth: 0
    functionLinenumber: 3172
    functionLinenumberEnd: 3179
    functionName: Conditional_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Conditional_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3186
      start: 3180
    functionDepth: 0
    functionLinenumber: 3180
    functionLinenumberEnd: 3186
    functionName: Conditional_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Conditional_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3193,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3195,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3196,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3200
      start: 3190
    functionDepth: 1
    functionLinenumber: 3190
    functionLinenumberEnd: 3200
    functionName: Conditional_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Conditional_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3211
      start: 3207
    functionDepth: 1
    functionLinenumber: 3207
    functionLinenumberEnd: 3211
    functionName: Cone_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Cone_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3229
      start: 3215
    functionDepth: 0
    functionLinenumber: 3215
    functionLinenumberEnd: 3229
    functionName: Cone_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Cone_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3240
      start: 3231
    functionDepth: 0
    functionLinenumber: 3231
    functionLinenumberEnd: 3240
    functionName: Cone_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Cone_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3271
      start: 3241
    functionDepth: 0
    functionLinenumber: 3241
    functionLinenumberEnd: 3271
    functionName: Cone_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Cone_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3276,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3277,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3278,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3279,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3281
      start: 3274
    functionDepth: 0
    functionLinenumber: 3274
    functionLinenumberEnd: 3281
    functionName: Cone_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Cone_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3288,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3294,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3300
      start: 3282
    functionDepth: 1
    functionLinenumber: 3282
    functionLinenumberEnd: 3300
    functionName: Cone_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Cone_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3307,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3309,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3312,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3313,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3317
      start: 3304
    functionDepth: 1
    functionLinenumber: 3304
    functionLinenumberEnd: 3317
    functionName: Cone_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Cone_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3327,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3329
      start: 3324
    functionDepth: 1
    functionLinenumber: 3324
    functionLinenumberEnd: 3329
    functionName: Coordinate_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfvec3f_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Coordinate_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3350
      start: 3336
    functionDepth: 0
    functionLinenumber: 3336
    functionLinenumberEnd: 3350
    functionName: Coordinate_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Coordinate_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3370
      start: 3352
    functionDepth: 0
    functionLinenumber: 3352
    functionLinenumberEnd: 3370
    functionName: Coordinate_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Coordinate_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3383
      start: 3371
    functionDepth: 0
    functionLinenumber: 3371
    functionLinenumberEnd: 3383
    functionName: Coordinate_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Coordinate_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3388,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3390
      start: 3386
    functionDepth: 0
    functionLinenumber: 3386
    functionLinenumberEnd: 3390
    functionName: Coordinate_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Coordinate_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3403
      start: 3391
    functionDepth: 0
    functionLinenumber: 3391
    functionLinenumberEnd: 3403
    functionName: Coordinate_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Coordinate_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3410,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3412,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3416
      start: 3407
    functionDepth: 1
    functionLinenumber: 3407
    functionLinenumberEnd: 3416
    functionName: Coordinate_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Coordinate_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3426,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3427,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3428
      start: 3423
    functionDepth: 1
    functionLinenumber: 3423
    functionLinenumberEnd: 3428
    functionName: Coordinate2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfvec2f_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Coordinate2D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3449
      start: 3435
    functionDepth: 0
    functionLinenumber: 3435
    functionLinenumberEnd: 3449
    functionName: Coordinate2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Coordinate2D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3469
      start: 3451
    functionDepth: 0
    functionLinenumber: 3451
    functionLinenumberEnd: 3469
    functionName: Coordinate2D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Coordinate2D_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3482
      start: 3470
    functionDepth: 0
    functionLinenumber: 3470
    functionLinenumberEnd: 3482
    functionName: Coordinate2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Coordinate2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3487,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3489
      start: 3485
    functionDepth: 0
    functionLinenumber: 3485
    functionLinenumberEnd: 3489
    functionName: Coordinate2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Coordinate2D_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3502
      start: 3490
    functionDepth: 0
    functionLinenumber: 3490
    functionLinenumberEnd: 3502
    functionName: Coordinate2D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Coordinate2D_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3509,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3511,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3515
      start: 3506
    functionDepth: 1
    functionLinenumber: 3506
    functionLinenumberEnd: 3515
    functionName: Coordinate2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Coordinate2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3525,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3526,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3527,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3528,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3529
      start: 3522
    functionDepth: 1
    functionLinenumber: 3522
    functionLinenumberEnd: 3529
    functionName: CoordinateInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfvec3f_del
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void CoordinateInterpolator_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3549
      start: 3535
    functionDepth: 0
    functionLinenumber: 3535
    functionLinenumberEnd: 3549
    functionName: CoordinateInterpolator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 CoordinateInterpolator_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3566
      start: 3551
    functionDepth: 0
    functionLinenumber: 3551
    functionLinenumberEnd: 3566
    functionName: CoordinateInterpolator_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CoordinateInterpolator_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3598
      start: 3567
    functionDepth: 0
    functionLinenumber: 3567
    functionLinenumberEnd: 3598
    functionName: CoordinateInterpolator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CoordinateInterpolator_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3603,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3604,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3605,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3606,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3608
      start: 3601
    functionDepth: 0
    functionLinenumber: 3601
    functionLinenumberEnd: 3608
    functionName: CoordinateInterpolator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 CoordinateInterpolator_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3615,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3616,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3627
      start: 3609
    functionDepth: 1
    functionLinenumber: 3609
    functionLinenumberEnd: 3627
    functionName: CoordinateInterpolator_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool CoordinateInterpolator_get_aq_info(GF_Node *n, u32 FieldIndex,
      u8 *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3634,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3636,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3640
      start: 3631
    functionDepth: 1
    functionLinenumber: 3631
    functionLinenumberEnd: 3640
    functionName: CoordinateInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *CoordinateInterpolator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3650,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3651,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3652,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3653,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3654
      start: 3647
    functionDepth: 1
    functionLinenumber: 3647
    functionLinenumberEnd: 3654
    functionName: CoordinateInterpolator2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfvec2f_del
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void CoordinateInterpolator2D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3674
      start: 3660
    functionDepth: 0
    functionLinenumber: 3660
    functionLinenumberEnd: 3674
    functionName: CoordinateInterpolator2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 CoordinateInterpolator2D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3691
      start: 3676
    functionDepth: 0
    functionLinenumber: 3676
    functionLinenumberEnd: 3691
    functionName: CoordinateInterpolator2D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CoordinateInterpolator2D_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3723
      start: 3692
    functionDepth: 0
    functionLinenumber: 3692
    functionLinenumberEnd: 3723
    functionName: CoordinateInterpolator2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CoordinateInterpolator2D_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3728,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3729,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3730,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3731,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3733
      start: 3726
    functionDepth: 0
    functionLinenumber: 3726
    functionLinenumberEnd: 3733
    functionName: CoordinateInterpolator2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 CoordinateInterpolator2D_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3740,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3741,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3752
      start: 3734
    functionDepth: 1
    functionLinenumber: 3734
    functionLinenumberEnd: 3752
    functionName: CoordinateInterpolator2D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool CoordinateInterpolator2D_get_aq_info(GF_Node *n, u32 FieldIndex,
      u8 *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3759,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3761,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3765
      start: 3756
    functionDepth: 1
    functionLinenumber: 3756
    functionLinenumberEnd: 3765
    functionName: CoordinateInterpolator2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *CoordinateInterpolator2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3775,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3776,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3777,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3778
      start: 3772
    functionDepth: 1
    functionLinenumber: 3772
    functionLinenumberEnd: 3778
    functionName: Curve2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void Curve2D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3799
      start: 3785
    functionDepth: 0
    functionLinenumber: 3785
    functionLinenumberEnd: 3799
    functionName: Curve2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Curve2D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3819
      start: 3801
    functionDepth: 0
    functionLinenumber: 3801
    functionLinenumberEnd: 3819
    functionName: Curve2D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Curve2D_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3845
      start: 3820
    functionDepth: 0
    functionLinenumber: 3820
    functionLinenumberEnd: 3845
    functionName: Curve2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Curve2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3850,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3851,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3852,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3854
      start: 3848
    functionDepth: 0
    functionLinenumber: 3848
    functionLinenumberEnd: 3854
    functionName: Curve2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Curve2D_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3861,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3862,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3868,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3869,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3874
      start: 3855
    functionDepth: 1
    functionLinenumber: 3855
    functionLinenumberEnd: 3874
    functionName: Curve2D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Curve2D_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3881,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3883,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3886,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3888
      start: 3878
    functionDepth: 1
    functionLinenumber: 3878
    functionLinenumberEnd: 3888
    functionName: Curve2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Curve2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3898,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3899
      start: 3895
    functionDepth: 1
    functionLinenumber: 3895
    functionLinenumberEnd: 3899
    functionName: Cylinder_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Cylinder_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3917
      start: 3903
    functionDepth: 0
    functionLinenumber: 3903
    functionLinenumberEnd: 3917
    functionName: Cylinder_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Cylinder_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3928
      start: 3919
    functionDepth: 0
    functionLinenumber: 3919
    functionLinenumberEnd: 3928
    functionName: Cylinder_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Cylinder_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 35
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3965
      start: 3929
    functionDepth: 0
    functionLinenumber: 3929
    functionLinenumberEnd: 3965
    functionName: Cylinder_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Cylinder_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3970,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3971,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3972,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3973,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3974,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3976
      start: 3968
    functionDepth: 0
    functionLinenumber: 3968
    functionLinenumberEnd: 3976
    functionName: Cylinder_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Cylinder_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3983,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:3989,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3995
      start: 3977
    functionDepth: 1
    functionLinenumber: 3977
    functionLinenumberEnd: 3995
    functionName: Cylinder_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Cylinder_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4002,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4004,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4008,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4009,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4013
      start: 3999
    functionDepth: 1
    functionLinenumber: 3999
    functionLinenumberEnd: 4013
    functionName: Cylinder_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Cylinder_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4023,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4024
      start: 4020
    functionDepth: 1
    functionLinenumber: 4020
    functionLinenumberEnd: 4024
    functionName: CylinderSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void CylinderSensor_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4044
      start: 4030
    functionDepth: 0
    functionLinenumber: 4030
    functionLinenumberEnd: 4044
    functionName: CylinderSensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 CylinderSensor_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4061
      start: 4046
    functionDepth: 0
    functionLinenumber: 4046
    functionLinenumberEnd: 4061
    functionName: CylinderSensor_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CylinderSensor_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 59
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4122
      start: 4062
    functionDepth: 0
    functionLinenumber: 4062
    functionLinenumberEnd: 4122
    functionName: CylinderSensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CylinderSensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4127,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4128,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4129,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4130,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4131,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4132,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4133,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4134,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4135,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4137
      start: 4125
    functionDepth: 0
    functionLinenumber: 4125
    functionLinenumberEnd: 4137
    functionName: CylinderSensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 CylinderSensor_get_field_index_by_name(char *name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4144,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4145,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4150,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4151,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4156,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4157,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4162,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4168
      start: 4138
    functionDepth: 1
    functionLinenumber: 4138
    functionLinenumberEnd: 4168
    functionName: CylinderSensor_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool CylinderSensor_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4175,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4177,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4181,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4183,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4184,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4187
      start: 4172
    functionDepth: 1
    functionLinenumber: 4172
    functionLinenumberEnd: 4187
    functionName: CylinderSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *CylinderSensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4198
      start: 4194
    functionDepth: 1
    functionLinenumber: 4194
    functionLinenumberEnd: 4198
    functionName: DirectionalLight_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void DirectionalLight_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4219
      start: 4205
    functionDepth: 0
    functionLinenumber: 4205
    functionLinenumberEnd: 4219
    functionName: DirectionalLight_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 DirectionalLight_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4239
      start: 4221
    functionDepth: 0
    functionLinenumber: 4221
    functionLinenumberEnd: 4239
    functionName: DirectionalLight_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DirectionalLight_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 35
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4276
      start: 4240
    functionDepth: 0
    functionLinenumber: 4240
    functionLinenumberEnd: 4276
    functionName: DirectionalLight_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DirectionalLight_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4281,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4282,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4283,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4284,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4285,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4287
      start: 4279
    functionDepth: 0
    functionLinenumber: 4279
    functionLinenumberEnd: 4287
    functionName: DirectionalLight_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 DirectionalLight_get_field_index_by_name(char *name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4294,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4295,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4300,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4301,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4310,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4311,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 27
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4316
      start: 4288
    functionDepth: 1
    functionLinenumber: 4288
    functionLinenumberEnd: 4316
    functionName: DirectionalLight_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool DirectionalLight_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4323,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4325,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4328,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4329,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4330,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4331,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4332,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4333,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4334,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4335,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4338
      start: 4320
    functionDepth: 1
    functionLinenumber: 4320
    functionLinenumberEnd: 4338
    functionName: DirectionalLight_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *DirectionalLight_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4348,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4349
      start: 4345
    functionDepth: 1
    functionLinenumber: 4345
    functionLinenumberEnd: 4349
    functionName: DiscSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void DiscSensor_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4369
      start: 4355
    functionDepth: 0
    functionLinenumber: 4355
    functionLinenumberEnd: 4369
    functionName: DiscSensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 DiscSensor_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4386
      start: 4371
    functionDepth: 0
    functionLinenumber: 4371
    functionLinenumberEnd: 4386
    functionName: DiscSensor_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DiscSensor_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 53
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4441
      start: 4387
    functionDepth: 0
    functionLinenumber: 4387
    functionLinenumberEnd: 4441
    functionName: DiscSensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DiscSensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4446,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4447,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4448,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4449,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4450,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4451,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4452,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4453,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4455
      start: 4444
    functionDepth: 0
    functionLinenumber: 4444
    functionLinenumberEnd: 4455
    functionName: DiscSensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 DiscSensor_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4462,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4463,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4468,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4469,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4474,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4475,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4480
      start: 4456
    functionDepth: 1
    functionLinenumber: 4456
    functionLinenumberEnd: 4480
    functionName: DiscSensor_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool DiscSensor_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4487,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4489,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4494,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4495,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4496,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4498
      start: 4484
    functionDepth: 1
    functionLinenumber: 4484
    functionLinenumberEnd: 4498
    functionName: DiscSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *DiscSensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4508,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4509,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4510,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4511,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4512,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4513,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4514
      start: 4505
    functionDepth: 1
    functionLinenumber: 4505
    functionLinenumberEnd: 4514
    functionName: ElevationGrid_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void ElevationGrid_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4534
      start: 4520
    functionDepth: 0
    functionLinenumber: 4520
    functionLinenumberEnd: 4534
    functionName: ElevationGrid_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ElevationGrid_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4551
      start: 4536
    functionDepth: 0
    functionLinenumber: 4536
    functionLinenumberEnd: 4551
    functionName: ElevationGrid_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ElevationGrid_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 93
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4646
      start: 4552
    functionDepth: 0
    functionLinenumber: 4552
    functionLinenumberEnd: 4646
    functionName: ElevationGrid_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ElevationGrid_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4651,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4652,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4653,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4654,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4655,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4656,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4657,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4658,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4659,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4660,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4661,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4662,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4663,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4664,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 30
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4666
      start: 4649
    functionDepth: 0
    functionLinenumber: 4649
    functionLinenumberEnd: 4666
    functionName: ElevationGrid_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ElevationGrid_get_field_index_by_name(char *name)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4679,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4680,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4685,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4691,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4697,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4703,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4709
      start: 4667
    functionDepth: 1
    functionLinenumber: 4667
    functionLinenumberEnd: 4709
    functionName: ElevationGrid_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool ElevationGrid_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4716,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4718,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4723,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4727,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4729,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4731
      start: 4713
    functionDepth: 1
    functionLinenumber: 4713
    functionLinenumberEnd: 4731
    functionName: ElevationGrid_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ElevationGrid_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4741,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4742
      start: 4738
    functionDepth: 1
    functionLinenumber: 4738
    functionLinenumberEnd: 4742
    functionName: Expression_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Expression_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4762
      start: 4748
    functionDepth: 0
    functionLinenumber: 4748
    functionLinenumberEnd: 4762
    functionName: Expression_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Expression_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4779
      start: 4764
    functionDepth: 0
    functionLinenumber: 4764
    functionLinenumberEnd: 4779
    functionName: Expression_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Expression_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4822
      start: 4780
    functionDepth: 0
    functionLinenumber: 4780
    functionLinenumberEnd: 4822
    functionName: Expression_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Expression_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4827,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4828,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4829,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4830,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4831,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4832,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4834
      start: 4825
    functionDepth: 0
    functionLinenumber: 4825
    functionLinenumberEnd: 4834
    functionName: Expression_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Expression_get_field_index_by_name(char *name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4842,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4843,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4849,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4850,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4856,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4857,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4863,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4864,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 33
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4869
      start: 4835
    functionDepth: 1
    functionLinenumber: 4835
    functionLinenumberEnd: 4869
    functionName: Expression_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Expression_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4876,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4878,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4886
      start: 4873
    functionDepth: 1
    functionLinenumber: 4873
    functionLinenumberEnd: 4886
    functionName: Expression_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Expression_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4896,1
    - Dst: gf_sg_mfrotation_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4897,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4898,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4899,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4900,1
    - Dst: gf_sg_mfrotation_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4901,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4902,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4903,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:4904,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4905
      start: 4893
    functionDepth: 1
    functionLinenumber: 4893
    functionLinenumberEnd: 4905
    functionName: Extrusion_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfvec3f_del
    - gf_node_free
    - gf_sg_mfvec2f_del
    - gf_sg_mfrotation_del
    linkageType: ''
    returnType: void
    signature: void Extrusion_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4924
      start: 4910
    functionDepth: 0
    functionLinenumber: 4910
    functionLinenumberEnd: 4924
    functionName: Extrusion_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Extrusion_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4938
      start: 4926
    functionDepth: 0
    functionLinenumber: 4926
    functionLinenumberEnd: 4938
    functionName: Extrusion_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Extrusion_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 93
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5033
      start: 4939
    functionDepth: 0
    functionLinenumber: 4939
    functionLinenumberEnd: 5033
    functionName: Extrusion_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Extrusion_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5038,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5039,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5040,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5041,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5042,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5043,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5044,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5045,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5046,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5047,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5048,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5049,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5050,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5051,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 30
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5053
      start: 5036
    functionDepth: 0
    functionLinenumber: 5036
    functionLinenumberEnd: 5053
    functionName: Extrusion_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Extrusion_get_field_index_by_name(char *name)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5060,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5061,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5078,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 35
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5090
      start: 5054
    functionDepth: 1
    functionLinenumber: 5054
    functionLinenumberEnd: 5090
    functionName: Extrusion_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Extrusion_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5097,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5099,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5105,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5106,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5108,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5109,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5110,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5111,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5112,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5113,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5114,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5115,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5116,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5117,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5119,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5121,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5122,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5123,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5124,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5125,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5127,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5128,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5130,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5132,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5133,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5134,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5135,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5136,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5137,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5139
      start: 5094
    functionDepth: 1
    functionLinenumber: 5094
    functionLinenumberEnd: 5139
    functionName: Extrusion_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Extrusion_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5149,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5150,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5151,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5152,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5153,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5155
      start: 5146
    functionDepth: 1
    functionLinenumber: 5146
    functionLinenumberEnd: 5155
    functionName: Face_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_unregister_children
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Face_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5175
      start: 5161
    functionDepth: 0
    functionLinenumber: 5161
    functionLinenumberEnd: 5175
    functionName: Face_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Face_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5192
      start: 5177
    functionDepth: 0
    functionLinenumber: 5177
    functionLinenumberEnd: 5192
    functionName: Face_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Face_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 40
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5234
      start: 5193
    functionDepth: 0
    functionLinenumber: 5193
    functionLinenumberEnd: 5234
    functionName: Face_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Face_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5239,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5240,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5241,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5242,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5243,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5245
      start: 5237
    functionDepth: 0
    functionLinenumber: 5237
    functionLinenumberEnd: 5245
    functionName: Face_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Face_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5252
      start: 5246
    functionDepth: 0
    functionLinenumber: 5246
    functionLinenumberEnd: 5252
    functionName: Face_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Face_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5259,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5261,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5265
      start: 5256
    functionDepth: 1
    functionLinenumber: 5256
    functionLinenumberEnd: 5265
    functionName: Face_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Face_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5275,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5276,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5277,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5278,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5279,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5280
      start: 5272
    functionDepth: 1
    functionLinenumber: 5272
    functionLinenumberEnd: 5280
    functionName: FaceDefMesh_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    - gf_sg_mfvec3f_del
    linkageType: ''
    returnType: void
    signature: void FaceDefMesh_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5298
      start: 5284
    functionDepth: 0
    functionLinenumber: 5284
    functionLinenumberEnd: 5298
    functionName: FaceDefMesh_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 FaceDefMesh_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5309
      start: 5300
    functionDepth: 0
    functionLinenumber: 5300
    functionLinenumberEnd: 5309
    functionName: FaceDefMesh_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FaceDefMesh_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5341
      start: 5310
    functionDepth: 0
    functionLinenumber: 5310
    functionLinenumberEnd: 5341
    functionName: FaceDefMesh_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FaceDefMesh_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5346,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5347,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5348,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5349,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5351
      start: 5344
    functionDepth: 0
    functionLinenumber: 5344
    functionLinenumberEnd: 5351
    functionName: FaceDefMesh_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 FaceDefMesh_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5370
      start: 5352
    functionDepth: 0
    functionLinenumber: 5352
    functionLinenumberEnd: 5370
    functionName: FaceDefMesh_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool FaceDefMesh_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5377,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5379,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5383
      start: 5374
    functionDepth: 1
    functionLinenumber: 5374
    functionLinenumberEnd: 5383
    functionName: FaceDefMesh_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *FaceDefMesh_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5393,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5394,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5395,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5396
      start: 5390
    functionDepth: 1
    functionLinenumber: 5390
    functionLinenumberEnd: 5396
    functionName: FaceDefTables_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister_children
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void FaceDefTables_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5416
      start: 5402
    functionDepth: 0
    functionLinenumber: 5402
    functionLinenumberEnd: 5416
    functionName: FaceDefTables_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 FaceDefTables_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5433
      start: 5418
    functionDepth: 0
    functionLinenumber: 5418
    functionLinenumberEnd: 5433
    functionName: FaceDefTables_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FaceDefTables_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5466
      start: 5434
    functionDepth: 0
    functionLinenumber: 5434
    functionLinenumberEnd: 5466
    functionName: FaceDefTables_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FaceDefTables_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5471,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5472,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5473,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5474,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5476
      start: 5469
    functionDepth: 0
    functionLinenumber: 5469
    functionLinenumberEnd: 5476
    functionName: FaceDefTables_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 FaceDefTables_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5484,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5485,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5491,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5492,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5497
      start: 5477
    functionDepth: 1
    functionLinenumber: 5477
    functionLinenumberEnd: 5497
    functionName: FaceDefTables_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool FaceDefTables_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5504,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5506,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5512
      start: 5501
    functionDepth: 1
    functionLinenumber: 5501
    functionLinenumberEnd: 5512
    functionName: FaceDefTables_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *FaceDefTables_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5522,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5523,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5524
      start: 5519
    functionDepth: 1
    functionLinenumber: 5519
    functionLinenumberEnd: 5524
    functionName: FaceDefTransform_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void FaceDefTransform_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5542
      start: 5528
    functionDepth: 0
    functionLinenumber: 5528
    functionLinenumberEnd: 5542
    functionName: FaceDefTransform_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 FaceDefTransform_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5553
      start: 5544
    functionDepth: 0
    functionLinenumber: 5544
    functionLinenumberEnd: 5553
    functionName: FaceDefTransform_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FaceDefTransform_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 36
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5591
      start: 5554
    functionDepth: 0
    functionLinenumber: 5554
    functionLinenumberEnd: 5591
    functionName: FaceDefTransform_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FaceDefTransform_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5596,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5597,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5598,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5599,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5600,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5602
      start: 5594
    functionDepth: 0
    functionLinenumber: 5594
    functionLinenumberEnd: 5602
    functionName: FaceDefTransform_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 FaceDefTransform_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5623
      start: 5603
    functionDepth: 0
    functionLinenumber: 5603
    functionLinenumberEnd: 5623
    functionName: FaceDefTransform_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool FaceDefTransform_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5630,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5632,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5636,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5637,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5638,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5639,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5640,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5641,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5642,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5643,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5644,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5645,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5647
      start: 5627
    functionDepth: 1
    functionLinenumber: 5627
    functionLinenumberEnd: 5647
    functionName: FaceDefTransform_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *FaceDefTransform_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5657,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5658,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:5659,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5660
      start: 5654
    functionDepth: 1
    functionLinenumber: 5654
    functionLinenumberEnd: 5660
    functionName: FAP_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void FAP_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5680
      start: 5666
    functionDepth: 0
    functionLinenumber: 5666
    functionLinenumberEnd: 5680
    functionName: FAP_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 FAP_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5697
      start: 5682
    functionDepth: 0
    functionLinenumber: 5682
    functionLinenumberEnd: 5697
    functionName: FAP_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FAP_get_field_index(GF_Node *n, u32 inField, u8 IndexMode, u32
      *allField)
  - BBCount: 70
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 415
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6114
      start: 5698
    functionDepth: 0
    functionLinenumber: 5698
    functionLinenumberEnd: 6114
    functionName: FAP_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FAP_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 69
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6119,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6120,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6121,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6122,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6123,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6124,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6125,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6126,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6127,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6128,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6129,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6130,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6131,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6132,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6133,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6134,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6135,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6136,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6137,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6138,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6139,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6140,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6141,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6142,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6143,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6144,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6145,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6146,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6147,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6148,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6149,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6150,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6151,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6152,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6153,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6154,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6155,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6156,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6157,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6158,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6159,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6160,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6161,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6162,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6163,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6164,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6165,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6166,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6167,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6168,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6169,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6170,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6171,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6172,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6173,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6174,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6175,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6176,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6177,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6178,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6179,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6180,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6181,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6182,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6183,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6184,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6185,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6186,1
    CyclomaticComplexity: 68
    EdgeCount: 68
    ICount: 138
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6188
      start: 6117
    functionDepth: 0
    functionLinenumber: 6117
    functionLinenumberEnd: 6188
    functionName: FAP_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 FAP_get_field_index_by_name(char *name)
  - BBCount: 68
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6195,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6261,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6423,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6429,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6459,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 401
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6591
      start: 6189
    functionDepth: 1
    functionLinenumber: 6189
    functionLinenumberEnd: 6591
    functionName: FAP_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool FAP_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6598,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6600,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 72
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6670
      start: 6595
    functionDepth: 1
    functionLinenumber: 6595
    functionLinenumberEnd: 6670
    functionName: FAP_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *FAP_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6680,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6681,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6682,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6683,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6684,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6685
      start: 6677
    functionDepth: 1
    functionLinenumber: 6677
    functionLinenumberEnd: 6685
    functionName: FDP_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_unregister_children
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void FDP_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6705
      start: 6691
    functionDepth: 0
    functionLinenumber: 6691
    functionLinenumberEnd: 6705
    functionName: FDP_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 FDP_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6722
      start: 6707
    functionDepth: 0
    functionLinenumber: 6707
    functionLinenumberEnd: 6722
    functionName: FDP_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FDP_get_field_index(GF_Node *n, u32 inField, u8 IndexMode, u32
      *allField)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 39
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6763
      start: 6723
    functionDepth: 0
    functionLinenumber: 6723
    functionLinenumberEnd: 6763
    functionName: FDP_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FDP_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6768,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6769,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6770,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6771,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6772,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6774
      start: 6766
    functionDepth: 0
    functionLinenumber: 6766
    functionLinenumberEnd: 6774
    functionName: FDP_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 FDP_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6781
      start: 6775
    functionDepth: 0
    functionLinenumber: 6775
    functionLinenumberEnd: 6781
    functionName: FDP_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool FDP_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6788,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6790,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6794
      start: 6785
    functionDepth: 1
    functionLinenumber: 6785
    functionLinenumberEnd: 6794
    functionName: FDP_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *FDP_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6804,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6805,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6806,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6807,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6808,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6809,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6810,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6811,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6812,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6813,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6814
      start: 6801
    functionDepth: 1
    functionLinenumber: 6801
    functionLinenumberEnd: 6814
    functionName: FIT_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfint32_del
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void FIT_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6834
      start: 6820
    functionDepth: 0
    functionLinenumber: 6820
    functionLinenumberEnd: 6834
    functionName: FIT_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 FIT_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6851
      start: 6836
    functionDepth: 0
    functionLinenumber: 6836
    functionLinenumberEnd: 6851
    functionName: FIT_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FIT_get_field_index(GF_Node *n, u32 inField, u8 IndexMode, u32
      *allField)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 59
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6912
      start: 6852
    functionDepth: 0
    functionLinenumber: 6852
    functionLinenumberEnd: 6912
    functionName: FIT_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FIT_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6917,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6918,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6919,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6920,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6921,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6922,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6923,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6924,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6925,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6927
      start: 6915
    functionDepth: 0
    functionLinenumber: 6915
    functionLinenumberEnd: 6927
    functionName: FIT_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 FIT_get_field_index_by_name(char *name)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6935,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6936,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6942,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6943,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6949,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6950,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6956,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6957,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6963,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6964,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6970,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6971,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6977,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6978,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 54
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6983
      start: 6928
    functionDepth: 1
    functionLinenumber: 6928
    functionLinenumberEnd: 6983
    functionName: FIT_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool FIT_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6990,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:6992,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6996
      start: 6987
    functionDepth: 1
    functionLinenumber: 6987
    functionLinenumberEnd: 6996
    functionName: FIT_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *FIT_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7006,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7007,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7008
      start: 7003
    functionDepth: 1
    functionLinenumber: 7003
    functionLinenumberEnd: 7008
    functionName: Fog_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Fog_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7029
      start: 7015
    functionDepth: 0
    functionLinenumber: 7015
    functionLinenumberEnd: 7029
    functionName: Fog_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Fog_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7049
      start: 7031
    functionDepth: 0
    functionLinenumber: 7031
    functionLinenumberEnd: 7049
    functionName: Fog_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Fog_get_field_index(GF_Node *n, u32 inField, u8 IndexMode, u32
      *allField)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 36
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7087
      start: 7050
    functionDepth: 0
    functionLinenumber: 7050
    functionLinenumberEnd: 7087
    functionName: Fog_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Fog_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7092,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7093,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7094,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7095,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7096,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7098
      start: 7090
    functionDepth: 0
    functionLinenumber: 7090
    functionLinenumberEnd: 7098
    functionName: Fog_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Fog_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7105,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7106,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7111,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7117
      start: 7099
    functionDepth: 1
    functionLinenumber: 7099
    functionLinenumberEnd: 7117
    functionName: Fog_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Fog_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7124,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7126,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7129,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7130,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7131,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7132,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7133,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7136
      start: 7121
    functionDepth: 1
    functionLinenumber: 7121
    functionLinenumberEnd: 7136
    functionName: Fog_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - strcpy
    - gf_node_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Fog_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7146,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7147,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7148,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7149,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7151
      start: 7143
    functionDepth: 1
    functionLinenumber: 7143
    functionLinenumberEnd: 7151
    functionName: FontStyle_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfstring_del
    - gf_node_free
    - gf_sg_sfstring_del
    linkageType: ''
    returnType: void
    signature: void FontStyle_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7171
      start: 7157
    functionDepth: 0
    functionLinenumber: 7157
    functionLinenumberEnd: 7171
    functionName: FontStyle_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 FontStyle_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7188
      start: 7173
    functionDepth: 0
    functionLinenumber: 7173
    functionLinenumberEnd: 7188
    functionName: FontStyle_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FontStyle_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 59
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7249
      start: 7189
    functionDepth: 0
    functionLinenumber: 7189
    functionLinenumberEnd: 7249
    functionName: FontStyle_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FontStyle_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7254,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7255,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7256,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7257,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7258,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7259,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7260,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7261,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7262,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7264
      start: 7252
    functionDepth: 0
    functionLinenumber: 7252
    functionLinenumberEnd: 7264
    functionName: FontStyle_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 FontStyle_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7271,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7283
      start: 7265
    functionDepth: 1
    functionLinenumber: 7265
    functionLinenumberEnd: 7283
    functionName: FontStyle_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool FontStyle_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7290,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7292,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7295,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7297,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7298,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7300,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7302,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7303,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7305,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7306,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7307,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7311
      start: 7287
    functionDepth: 1
    functionLinenumber: 7287
    functionLinenumberEnd: 7311
    functionName: FontStyle_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - strcpy
    - gf_node_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *FontStyle_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7321,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7322,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7323,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7324,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7325,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7326
      start: 7318
    functionDepth: 1
    functionLinenumber: 7318
    functionLinenumberEnd: 7326
    functionName: Form_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfstring_del
    - gf_sg_mfint32_del
    - gf_sg_vrml_parent_destroy
    linkageType: ''
    returnType: void
    signature: void Form_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7347
      start: 7333
    functionDepth: 0
    functionLinenumber: 7333
    functionLinenumberEnd: 7347
    functionName: Form_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Form_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7367
      start: 7349
    functionDepth: 0
    functionLinenumber: 7349
    functionLinenumberEnd: 7367
    functionName: Form_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Form_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 52
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7421
      start: 7368
    functionDepth: 0
    functionLinenumber: 7368
    functionLinenumberEnd: 7421
    functionName: Form_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Form_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7426,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7427,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7428,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7429,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7430,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7431,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7432,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7434
      start: 7424
    functionDepth: 0
    functionLinenumber: 7424
    functionLinenumberEnd: 7434
    functionName: Form_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Form_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7441,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7448,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7449,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7455,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7456,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7461
      start: 7435
    functionDepth: 1
    functionLinenumber: 7435
    functionLinenumberEnd: 7461
    functionName: Form_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Form_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7468,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7470,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7471,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7474,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7475,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7477
      start: 7465
    functionDepth: 1
    functionLinenumber: 7465
    functionLinenumberEnd: 7477
    functionName: Form_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Form_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7487,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7488,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7489
      start: 7484
    functionDepth: 1
    functionLinenumber: 7484
    functionLinenumberEnd: 7489
    functionName: Group_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Group_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7509
      start: 7495
    functionDepth: 0
    functionLinenumber: 7495
    functionLinenumberEnd: 7509
    functionName: Group_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Group_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7526
      start: 7511
    functionDepth: 0
    functionLinenumber: 7511
    functionLinenumberEnd: 7526
    functionName: Group_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Group_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 28
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7556
      start: 7527
    functionDepth: 0
    functionLinenumber: 7527
    functionLinenumberEnd: 7556
    functionName: Group_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Group_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7561,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7562,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7563,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7565
      start: 7559
    functionDepth: 0
    functionLinenumber: 7559
    functionLinenumberEnd: 7565
    functionName: Group_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Group_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7572
      start: 7566
    functionDepth: 0
    functionLinenumber: 7566
    functionLinenumberEnd: 7572
    functionName: Group_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Group_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7579,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7581,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7582,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7586
      start: 7576
    functionDepth: 1
    functionLinenumber: 7576
    functionLinenumberEnd: 7586
    functionName: Group_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Group_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7596,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7597,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7598
      start: 7593
    functionDepth: 1
    functionLinenumber: 7593
    functionLinenumberEnd: 7598
    functionName: ImageTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfurl_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void ImageTexture_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7618
      start: 7604
    functionDepth: 0
    functionLinenumber: 7604
    functionLinenumberEnd: 7618
    functionName: ImageTexture_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ImageTexture_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7635
      start: 7620
    functionDepth: 0
    functionLinenumber: 7620
    functionLinenumberEnd: 7635
    functionName: ImageTexture_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ImageTexture_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7660
      start: 7636
    functionDepth: 0
    functionLinenumber: 7636
    functionLinenumberEnd: 7660
    functionName: ImageTexture_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ImageTexture_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7665,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7666,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7667,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7669
      start: 7663
    functionDepth: 0
    functionLinenumber: 7663
    functionLinenumberEnd: 7669
    functionName: ImageTexture_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ImageTexture_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7676
      start: 7670
    functionDepth: 0
    functionLinenumber: 7670
    functionLinenumberEnd: 7676
    functionName: ImageTexture_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool ImageTexture_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7683,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7685,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7691
      start: 7680
    functionDepth: 1
    functionLinenumber: 7680
    functionLinenumberEnd: 7691
    functionName: ImageTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ImageTexture_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7701,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7702,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7703,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7704,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7705,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7706,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7707,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7708,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7709,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7710,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7711,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7712,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7713,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7714
      start: 7698
    functionDepth: 1
    functionLinenumber: 7698
    functionLinenumberEnd: 7714
    functionName: IndexedFaceSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void IndexedFaceSet_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7734
      start: 7720
    functionDepth: 0
    functionLinenumber: 7720
    functionLinenumberEnd: 7734
    functionName: IndexedFaceSet_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 IndexedFaceSet_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7751
      start: 7736
    functionDepth: 0
    functionLinenumber: 7736
    functionLinenumberEnd: 7751
    functionName: IndexedFaceSet_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err IndexedFaceSet_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 20
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 121
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7874
      start: 7752
    functionDepth: 0
    functionLinenumber: 7752
    functionLinenumberEnd: 7874
    functionName: IndexedFaceSet_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err IndexedFaceSet_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7879,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7880,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7881,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7882,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7883,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7884,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7885,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7886,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7887,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7888,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7889,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7890,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7891,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7892,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7893,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7894,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7895,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7896,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 38
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7898
      start: 7877
    functionDepth: 0
    functionLinenumber: 7877
    functionLinenumberEnd: 7898
    functionName: IndexedFaceSet_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 IndexedFaceSet_get_field_index_by_name(char *name)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7905,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7911,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7917,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7918,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7923,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7929,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 35
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7935
      start: 7899
    functionDepth: 1
    functionLinenumber: 7899
    functionLinenumberEnd: 7935
    functionName: IndexedFaceSet_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool IndexedFaceSet_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7942,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7944,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7950,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7954
      start: 7939
    functionDepth: 1
    functionLinenumber: 7939
    functionLinenumberEnd: 7954
    functionName: IndexedFaceSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *IndexedFaceSet_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7964,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7965,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7966,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7967,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7968,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7969,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7970,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7971,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7972,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7973,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7974
      start: 7961
    functionDepth: 1
    functionLinenumber: 7961
    functionLinenumberEnd: 7974
    functionName: IndexedFaceSet2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void IndexedFaceSet2D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7994
      start: 7980
    functionDepth: 0
    functionLinenumber: 7980
    functionLinenumberEnd: 7994
    functionName: IndexedFaceSet2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 IndexedFaceSet2D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8011
      start: 7996
    functionDepth: 0
    functionLinenumber: 7996
    functionLinenumberEnd: 8011
    functionName: IndexedFaceSet2D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err IndexedFaceSet2D_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 77
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8090
      start: 8012
    functionDepth: 0
    functionLinenumber: 8012
    functionLinenumberEnd: 8090
    functionName: IndexedFaceSet2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err IndexedFaceSet2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8095,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8096,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8097,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8098,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8099,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8100,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8101,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8102,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8103,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8104,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8105,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8107
      start: 8093
    functionDepth: 0
    functionLinenumber: 8093
    functionLinenumberEnd: 8107
    functionName: IndexedFaceSet2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 IndexedFaceSet2D_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8114,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8120,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8126,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8132
      start: 8108
    functionDepth: 1
    functionLinenumber: 8108
    functionLinenumberEnd: 8132
    functionName: IndexedFaceSet2D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool IndexedFaceSet2D_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8139,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8141,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8147
      start: 8136
    functionDepth: 1
    functionLinenumber: 8136
    functionLinenumberEnd: 8147
    functionName: IndexedFaceSet2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *IndexedFaceSet2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8157,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8158,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8159,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8160,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8161,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8162,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8164
      start: 8154
    functionDepth: 1
    functionLinenumber: 8154
    functionLinenumberEnd: 8164
    functionName: IndexedLineSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void IndexedLineSet_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8184
      start: 8170
    functionDepth: 0
    functionLinenumber: 8170
    functionLinenumberEnd: 8184
    functionName: IndexedLineSet_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 IndexedLineSet_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8201
      start: 8186
    functionDepth: 0
    functionLinenumber: 8186
    functionLinenumberEnd: 8201
    functionName: IndexedLineSet_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err IndexedLineSet_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 51
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8254
      start: 8202
    functionDepth: 0
    functionLinenumber: 8202
    functionLinenumberEnd: 8254
    functionName: IndexedLineSet_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err IndexedLineSet_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8259,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8260,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8261,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8262,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8263,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8264,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8265,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8267
      start: 8257
    functionDepth: 0
    functionLinenumber: 8257
    functionLinenumberEnd: 8267
    functionName: IndexedLineSet_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 IndexedLineSet_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8274,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8280,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8286
      start: 8268
    functionDepth: 1
    functionLinenumber: 8268
    functionLinenumberEnd: 8286
    functionName: IndexedLineSet_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool IndexedLineSet_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8293,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8295,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8300
      start: 8290
    functionDepth: 1
    functionLinenumber: 8290
    functionLinenumberEnd: 8300
    functionName: IndexedLineSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *IndexedLineSet_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8310,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8311,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8312,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8313,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8314,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8315,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8316,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8317
      start: 8307
    functionDepth: 1
    functionLinenumber: 8307
    functionLinenumberEnd: 8317
    functionName: IndexedLineSet2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void IndexedLineSet2D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8337
      start: 8323
    functionDepth: 0
    functionLinenumber: 8323
    functionLinenumberEnd: 8337
    functionName: IndexedLineSet2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 IndexedLineSet2D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8354
      start: 8339
    functionDepth: 0
    functionLinenumber: 8339
    functionLinenumberEnd: 8354
    functionName: IndexedLineSet2D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err IndexedLineSet2D_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 51
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8407
      start: 8355
    functionDepth: 0
    functionLinenumber: 8355
    functionLinenumberEnd: 8407
    functionName: IndexedLineSet2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err IndexedLineSet2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8412,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8413,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8414,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8415,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8416,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8417,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8418,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8420
      start: 8410
    functionDepth: 0
    functionLinenumber: 8410
    functionLinenumberEnd: 8420
    functionName: IndexedLineSet2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 IndexedLineSet2D_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8427,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8433,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8439
      start: 8421
    functionDepth: 1
    functionLinenumber: 8421
    functionLinenumberEnd: 8439
    functionName: IndexedLineSet2D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool IndexedLineSet2D_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8446,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8448,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8453
      start: 8443
    functionDepth: 1
    functionLinenumber: 8443
    functionLinenumberEnd: 8453
    functionName: IndexedLineSet2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *IndexedLineSet2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8463,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8465
      start: 8460
    functionDepth: 1
    functionLinenumber: 8460
    functionLinenumberEnd: 8465
    functionName: Inline_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfurl_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Inline_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8485
      start: 8471
    functionDepth: 0
    functionLinenumber: 8471
    functionLinenumberEnd: 8485
    functionName: Inline_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Inline_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8502
      start: 8487
    functionDepth: 0
    functionLinenumber: 8487
    functionLinenumberEnd: 8502
    functionName: Inline_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Inline_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8515
      start: 8503
    functionDepth: 0
    functionLinenumber: 8503
    functionLinenumberEnd: 8515
    functionName: Inline_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Inline_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8520,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8522
      start: 8518
    functionDepth: 0
    functionLinenumber: 8518
    functionLinenumberEnd: 8522
    functionName: Inline_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Inline_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8529
      start: 8523
    functionDepth: 0
    functionLinenumber: 8523
    functionLinenumberEnd: 8529
    functionName: Inline_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Inline_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8536,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8538,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8542
      start: 8533
    functionDepth: 1
    functionLinenumber: 8533
    functionLinenumberEnd: 8542
    functionName: Inline_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Inline_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8552,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8553,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8554,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8555
      start: 8549
    functionDepth: 1
    functionLinenumber: 8549
    functionLinenumberEnd: 8555
    functionName: LOD_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_unregister_children
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void LOD_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8575
      start: 8561
    functionDepth: 0
    functionLinenumber: 8561
    functionLinenumberEnd: 8575
    functionName: LOD_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 LOD_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8592
      start: 8577
    functionDepth: 0
    functionLinenumber: 8577
    functionLinenumberEnd: 8592
    functionName: LOD_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LOD_get_field_index(GF_Node *n, u32 inField, u8 IndexMode, u32
      *allField)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8618
      start: 8593
    functionDepth: 0
    functionLinenumber: 8593
    functionLinenumberEnd: 8618
    functionName: LOD_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LOD_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8623,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8624,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8625,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8627
      start: 8621
    functionDepth: 0
    functionLinenumber: 8621
    functionLinenumberEnd: 8627
    functionName: LOD_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 LOD_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8640,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8646
      start: 8628
    functionDepth: 1
    functionLinenumber: 8628
    functionLinenumberEnd: 8646
    functionName: LOD_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool LOD_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8653,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8655,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8658,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8659,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8660,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8662
      start: 8650
    functionDepth: 1
    functionLinenumber: 8650
    functionLinenumberEnd: 8662
    functionName: LOD_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *LOD_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8672,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8673,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8674,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8675,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8676
      start: 8669
    functionDepth: 1
    functionLinenumber: 8669
    functionLinenumberEnd: 8676
    functionName: Layer2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Layer2D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8697
      start: 8683
    functionDepth: 0
    functionLinenumber: 8683
    functionLinenumberEnd: 8697
    functionName: Layer2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Layer2D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8717
      start: 8699
    functionDepth: 0
    functionLinenumber: 8699
    functionLinenumberEnd: 8717
    functionName: Layer2D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Layer2D_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 48
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8767
      start: 8718
    functionDepth: 0
    functionLinenumber: 8718
    functionLinenumberEnd: 8767
    functionName: Layer2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Layer2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8772,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8773,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8774,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8775,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8776,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8777,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8779
      start: 8770
    functionDepth: 0
    functionLinenumber: 8770
    functionLinenumberEnd: 8779
    functionName: Layer2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Layer2D_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8792
      start: 8780
    functionDepth: 0
    functionLinenumber: 8780
    functionLinenumberEnd: 8792
    functionName: Layer2D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Layer2D_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8799,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8801,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8802,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8805,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8806,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8808
      start: 8796
    functionDepth: 1
    functionLinenumber: 8796
    functionLinenumberEnd: 8808
    functionName: Layer2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Layer2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8818,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8819,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8820,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8821,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8822,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8823,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8824
      start: 8815
    functionDepth: 1
    functionLinenumber: 8815
    functionLinenumberEnd: 8824
    functionName: Layer3D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Layer3D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8845
      start: 8831
    functionDepth: 0
    functionLinenumber: 8831
    functionLinenumberEnd: 8845
    functionName: Layer3D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Layer3D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8865
      start: 8847
    functionDepth: 0
    functionLinenumber: 8847
    functionLinenumberEnd: 8865
    functionName: Layer3D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Layer3D_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 62
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8929
      start: 8866
    functionDepth: 0
    functionLinenumber: 8866
    functionLinenumberEnd: 8929
    functionName: Layer3D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Layer3D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8934,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8935,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8936,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8937,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8938,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8939,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8940,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8941,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8943
      start: 8932
    functionDepth: 0
    functionLinenumber: 8932
    functionLinenumberEnd: 8943
    functionName: Layer3D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Layer3D_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8956
      start: 8944
    functionDepth: 0
    functionLinenumber: 8944
    functionLinenumberEnd: 8956
    functionName: Layer3D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Layer3D_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8963,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8965,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8966,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8969,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8970,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8972
      start: 8960
    functionDepth: 1
    functionLinenumber: 8960
    functionLinenumberEnd: 8972
    functionName: Layer3D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Layer3D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8982,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8983,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8984,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8985
      start: 8979
    functionDepth: 1
    functionLinenumber: 8979
    functionLinenumberEnd: 8985
    functionName: Layout_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfstring_del
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    linkageType: ''
    returnType: void
    signature: void Layout_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9006
      start: 8992
    functionDepth: 0
    functionLinenumber: 8992
    functionLinenumberEnd: 9006
    functionName: Layout_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Layout_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9026
      start: 9008
    functionDepth: 0
    functionLinenumber: 9008
    functionLinenumberEnd: 9026
    functionName: Layout_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Layout_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 100
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9128
      start: 9027
    functionDepth: 0
    functionLinenumber: 9027
    functionLinenumberEnd: 9128
    functionName: Layout_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Layout_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9133,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9134,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9135,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9136,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9137,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9138,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9139,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9140,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9141,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9142,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9143,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9144,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9145,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9146,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9147,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 32
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9149
      start: 9131
    functionDepth: 0
    functionLinenumber: 9131
    functionLinenumberEnd: 9149
    functionName: Layout_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Layout_get_field_index_by_name(char *name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9156,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9162,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9175,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9176,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9181
      start: 9150
    functionDepth: 1
    functionLinenumber: 9150
    functionLinenumberEnd: 9181
    functionName: Layout_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Layout_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9188,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9190,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9191,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9194,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9195,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9197,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9199,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9200,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9203,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9205,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9208
      start: 9185
    functionDepth: 1
    functionLinenumber: 9185
    functionLinenumberEnd: 9208
    functionName: Layout_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - strcpy
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Layout_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9219
      start: 9215
    functionDepth: 1
    functionLinenumber: 9215
    functionLinenumberEnd: 9219
    functionName: LineProperties_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void LineProperties_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9240
      start: 9226
    functionDepth: 0
    functionLinenumber: 9226
    functionLinenumberEnd: 9240
    functionName: LineProperties_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 LineProperties_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9260
      start: 9242
    functionDepth: 0
    functionLinenumber: 9242
    functionLinenumberEnd: 9260
    functionName: LineProperties_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LineProperties_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9285
      start: 9261
    functionDepth: 0
    functionLinenumber: 9261
    functionLinenumberEnd: 9285
    functionName: LineProperties_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LineProperties_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9290,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9291,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9292,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9294
      start: 9288
    functionDepth: 0
    functionLinenumber: 9288
    functionLinenumberEnd: 9294
    functionName: LineProperties_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 LineProperties_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9301,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9302,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9308,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9309,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9314,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9320
      start: 9295
    functionDepth: 1
    functionLinenumber: 9295
    functionLinenumberEnd: 9320
    functionName: LineProperties_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool LineProperties_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9327,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9329,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9332,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9333,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9334,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9336,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9338
      start: 9324
    functionDepth: 1
    functionLinenumber: 9324
    functionLinenumberEnd: 9338
    functionName: LineProperties_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *LineProperties_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9348,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9349,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9350
      start: 9345
    functionDepth: 1
    functionLinenumber: 9345
    functionLinenumberEnd: 9350
    functionName: ListeningPoint_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void ListeningPoint_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9371
      start: 9357
    functionDepth: 0
    functionLinenumber: 9357
    functionLinenumberEnd: 9371
    functionName: ListeningPoint_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ListeningPoint_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9391
      start: 9373
    functionDepth: 0
    functionLinenumber: 9373
    functionLinenumberEnd: 9391
    functionName: ListeningPoint_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ListeningPoint_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 48
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9441
      start: 9392
    functionDepth: 0
    functionLinenumber: 9392
    functionLinenumberEnd: 9441
    functionName: ListeningPoint_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ListeningPoint_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9446,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9447,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9448,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9449,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9450,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9451,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9452,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9454
      start: 9444
    functionDepth: 0
    functionLinenumber: 9444
    functionLinenumberEnd: 9454
    functionName: ListeningPoint_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ListeningPoint_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9471
      start: 9455
    functionDepth: 0
    functionLinenumber: 9455
    functionLinenumberEnd: 9471
    functionName: ListeningPoint_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool ListeningPoint_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9478,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9480,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9484,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9485,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9486,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9487,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9488,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9489,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9490,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9492
      start: 9475
    functionDepth: 1
    functionLinenumber: 9475
    functionLinenumberEnd: 9492
    functionName: ListeningPoint_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ListeningPoint_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9502,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9503
      start: 9499
    functionDepth: 1
    functionLinenumber: 9499
    functionLinenumberEnd: 9503
    functionName: Material_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Material_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9524
      start: 9510
    functionDepth: 0
    functionLinenumber: 9510
    functionLinenumberEnd: 9524
    functionName: Material_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Material_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9544
      start: 9526
    functionDepth: 0
    functionLinenumber: 9526
    functionLinenumberEnd: 9544
    functionName: Material_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Material_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9587
      start: 9545
    functionDepth: 0
    functionLinenumber: 9545
    functionLinenumberEnd: 9587
    functionName: Material_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Material_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9592,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9593,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9594,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9595,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9596,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9597,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9599
      start: 9590
    functionDepth: 0
    functionLinenumber: 9590
    functionLinenumberEnd: 9599
    functionName: Material_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Material_get_field_index_by_name(char *name)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9606,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9607,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9612,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9613,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9618,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9619,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9624,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9625,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9630,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9631,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9636,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9637,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9642
      start: 9600
    functionDepth: 1
    functionLinenumber: 9600
    functionLinenumberEnd: 9642
    functionName: Material_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Material_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9649,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9651,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9654,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9655,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9656,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9657,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9658,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9659,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9660,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9661,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9662,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9663,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9664,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9665,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9667
      start: 9646
    functionDepth: 1
    functionLinenumber: 9646
    functionLinenumberEnd: 9667
    functionName: Material_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Material_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9677,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9678,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9679
      start: 9674
    functionDepth: 1
    functionLinenumber: 9674
    functionLinenumberEnd: 9679
    functionName: Material2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Material2D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9700
      start: 9686
    functionDepth: 0
    functionLinenumber: 9686
    functionLinenumberEnd: 9700
    functionName: Material2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Material2D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9720
      start: 9702
    functionDepth: 0
    functionLinenumber: 9702
    functionLinenumberEnd: 9720
    functionName: Material2D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Material2D_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9752
      start: 9721
    functionDepth: 0
    functionLinenumber: 9721
    functionLinenumberEnd: 9752
    functionName: Material2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Material2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9757,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9758,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9759,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9760,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9762
      start: 9755
    functionDepth: 0
    functionLinenumber: 9755
    functionLinenumberEnd: 9762
    functionName: Material2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Material2D_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9769,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9770,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9775,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9776,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9781
      start: 9763
    functionDepth: 1
    functionLinenumber: 9763
    functionLinenumberEnd: 9781
    functionName: Material2D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Material2D_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9788,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9790,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9793,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9794,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9795,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9796,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9798
      start: 9785
    functionDepth: 1
    functionLinenumber: 9785
    functionLinenumberEnd: 9798
    functionName: Material2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Material2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9808,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9809,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9810
      start: 9805
    functionDepth: 1
    functionLinenumber: 9805
    functionLinenumberEnd: 9810
    functionName: MovieTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfurl_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void MovieTexture_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9831
      start: 9817
    functionDepth: 0
    functionLinenumber: 9817
    functionLinenumberEnd: 9831
    functionName: MovieTexture_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 MovieTexture_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9851
      start: 9833
    functionDepth: 0
    functionLinenumber: 9833
    functionLinenumberEnd: 9851
    functionName: MovieTexture_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MovieTexture_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 59
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9912
      start: 9852
    functionDepth: 0
    functionLinenumber: 9852
    functionLinenumberEnd: 9912
    functionName: MovieTexture_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MovieTexture_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9917,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9918,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9919,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9920,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9921,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9922,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9923,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9924,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9925,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9927
      start: 9915
    functionDepth: 0
    functionLinenumber: 9915
    functionLinenumberEnd: 9927
    functionName: MovieTexture_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 MovieTexture_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9940
      start: 9928
    functionDepth: 0
    functionLinenumber: 9928
    functionLinenumberEnd: 9940
    functionName: MovieTexture_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool MovieTexture_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9947,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9949,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9952,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9958
      start: 9944
    functionDepth: 1
    functionLinenumber: 9944
    functionLinenumberEnd: 9958
    functionName: MovieTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *MovieTexture_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9968,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9969,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9970,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9971
      start: 9965
    functionDepth: 1
    functionLinenumber: 9965
    functionLinenumberEnd: 9971
    functionName: NavigationInfo_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfstring_del
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void NavigationInfo_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9992
      start: 9978
    functionDepth: 0
    functionLinenumber: 9978
    functionLinenumberEnd: 9992
    functionName: NavigationInfo_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NavigationInfo_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10012
      start: 9994
    functionDepth: 0
    functionLinenumber: 9994
    functionLinenumberEnd: 10012
    functionName: NavigationInfo_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NavigationInfo_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 48
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10062
      start: 10013
    functionDepth: 0
    functionLinenumber: 10013
    functionLinenumberEnd: 10062
    functionName: NavigationInfo_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NavigationInfo_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10067,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10068,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10069,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10070,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10071,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10072,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10073,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10075
      start: 10065
    functionDepth: 0
    functionLinenumber: 10065
    functionLinenumberEnd: 10075
    functionName: NavigationInfo_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 NavigationInfo_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10082,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10088,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10094,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10100
      start: 10076
    functionDepth: 1
    functionLinenumber: 10076
    functionLinenumberEnd: 10100
    functionName: NavigationInfo_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool NavigationInfo_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10107,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10109,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10112,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10114,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10115,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10116,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10118,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10119,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10121,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10122,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10123,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10124,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10127
      start: 10104
    functionDepth: 1
    functionLinenumber: 10104
    functionLinenumberEnd: 10127
    functionName: NavigationInfo_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - strcpy
    - gf_node_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *NavigationInfo_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10137,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10139
      start: 10134
    functionDepth: 1
    functionLinenumber: 10134
    functionLinenumberEnd: 10139
    functionName: Normal_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfvec3f_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Normal_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10160
      start: 10146
    functionDepth: 0
    functionLinenumber: 10146
    functionLinenumberEnd: 10160
    functionName: Normal_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Normal_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10180
      start: 10162
    functionDepth: 0
    functionLinenumber: 10162
    functionLinenumberEnd: 10180
    functionName: Normal_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Normal_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10193
      start: 10181
    functionDepth: 0
    functionLinenumber: 10181
    functionLinenumberEnd: 10193
    functionName: Normal_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Normal_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10198,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10200
      start: 10196
    functionDepth: 0
    functionLinenumber: 10196
    functionLinenumberEnd: 10200
    functionName: Normal_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Normal_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10211
      start: 10201
    functionDepth: 0
    functionLinenumber: 10201
    functionLinenumberEnd: 10211
    functionName: Normal_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Normal_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10218,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10220,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10224
      start: 10215
    functionDepth: 1
    functionLinenumber: 10215
    functionLinenumberEnd: 10224
    functionName: Normal_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Normal_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10234,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10235,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10236,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10238
      start: 10231
    functionDepth: 1
    functionLinenumber: 10231
    functionLinenumberEnd: 10238
    functionName: NormalInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfvec3f_del
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void NormalInterpolator_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10258
      start: 10244
    functionDepth: 0
    functionLinenumber: 10244
    functionLinenumberEnd: 10258
    functionName: NormalInterpolator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NormalInterpolator_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10275
      start: 10260
    functionDepth: 0
    functionLinenumber: 10260
    functionLinenumberEnd: 10275
    functionName: NormalInterpolator_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NormalInterpolator_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10307
      start: 10276
    functionDepth: 0
    functionLinenumber: 10276
    functionLinenumberEnd: 10307
    functionName: NormalInterpolator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NormalInterpolator_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10312,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10313,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10314,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10315,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10317
      start: 10310
    functionDepth: 0
    functionLinenumber: 10310
    functionLinenumberEnd: 10317
    functionName: NormalInterpolator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 NormalInterpolator_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10324,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10325,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10336
      start: 10318
    functionDepth: 1
    functionLinenumber: 10318
    functionLinenumberEnd: 10336
    functionName: NormalInterpolator_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool NormalInterpolator_get_aq_info(GF_Node *n, u32 FieldIndex, u8
      *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10343,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10345,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10349
      start: 10340
    functionDepth: 1
    functionLinenumber: 10340
    functionLinenumberEnd: 10349
    functionName: NormalInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *NormalInterpolator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10359,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10360,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10361,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10362
      start: 10356
    functionDepth: 1
    functionLinenumber: 10356
    functionLinenumberEnd: 10362
    functionName: OrderedGroup_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void OrderedGroup_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10382
      start: 10368
    functionDepth: 0
    functionLinenumber: 10368
    functionLinenumberEnd: 10382
    functionName: OrderedGroup_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 OrderedGroup_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10399
      start: 10384
    functionDepth: 0
    functionLinenumber: 10384
    functionLinenumberEnd: 10399
    functionName: OrderedGroup_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err OrderedGroup_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 34
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10435
      start: 10400
    functionDepth: 0
    functionLinenumber: 10400
    functionLinenumberEnd: 10435
    functionName: OrderedGroup_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err OrderedGroup_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10440,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10441,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10442,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10443,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10445
      start: 10438
    functionDepth: 0
    functionLinenumber: 10438
    functionLinenumberEnd: 10445
    functionName: OrderedGroup_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 OrderedGroup_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10452,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10458
      start: 10446
    functionDepth: 1
    functionLinenumber: 10446
    functionLinenumberEnd: 10458
    functionName: OrderedGroup_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool OrderedGroup_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10465,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10467,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10468,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10472
      start: 10462
    functionDepth: 1
    functionLinenumber: 10462
    functionLinenumberEnd: 10472
    functionName: OrderedGroup_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *OrderedGroup_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10482,1
    - Dst: gf_sg_mfrotation_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10483,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10484,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10485
      start: 10479
    functionDepth: 1
    functionLinenumber: 10479
    functionLinenumberEnd: 10485
    functionName: OrientationInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_sg_mfrotation_del
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void OrientationInterpolator_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10505
      start: 10491
    functionDepth: 0
    functionLinenumber: 10491
    functionLinenumberEnd: 10505
    functionName: OrientationInterpolator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 OrientationInterpolator_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10522
      start: 10507
    functionDepth: 0
    functionLinenumber: 10507
    functionLinenumberEnd: 10522
    functionName: OrientationInterpolator_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err OrientationInterpolator_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10554
      start: 10523
    functionDepth: 0
    functionLinenumber: 10523
    functionLinenumberEnd: 10554
    functionName: OrientationInterpolator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err OrientationInterpolator_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10559,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10560,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10561,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10562,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10564
      start: 10557
    functionDepth: 0
    functionLinenumber: 10557
    functionLinenumberEnd: 10564
    functionName: OrientationInterpolator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 OrientationInterpolator_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10571,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10572,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10583
      start: 10565
    functionDepth: 1
    functionLinenumber: 10565
    functionLinenumberEnd: 10583
    functionName: OrientationInterpolator_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool OrientationInterpolator_get_aq_info(GF_Node *n, u32 FieldIndex,
      u8 *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10590,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10592,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10596
      start: 10587
    functionDepth: 1
    functionLinenumber: 10587
    functionLinenumberEnd: 10596
    functionName: OrientationInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *OrientationInterpolator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfimage_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10606,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10607,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10608
      start: 10603
    functionDepth: 1
    functionLinenumber: 10603
    functionLinenumberEnd: 10608
    functionName: PixelTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_sfimage_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void PixelTexture_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10628
      start: 10614
    functionDepth: 0
    functionLinenumber: 10614
    functionLinenumberEnd: 10628
    functionName: PixelTexture_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PixelTexture_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10645
      start: 10630
    functionDepth: 0
    functionLinenumber: 10630
    functionLinenumberEnd: 10645
    functionName: PixelTexture_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PixelTexture_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10670
      start: 10646
    functionDepth: 0
    functionLinenumber: 10646
    functionLinenumberEnd: 10670
    functionName: PixelTexture_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PixelTexture_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10675,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10676,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10677,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10679
      start: 10673
    functionDepth: 0
    functionLinenumber: 10673
    functionLinenumberEnd: 10679
    functionName: PixelTexture_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PixelTexture_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10690
      start: 10680
    functionDepth: 0
    functionLinenumber: 10680
    functionLinenumberEnd: 10690
    functionName: PixelTexture_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool PixelTexture_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10697,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10699,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10705
      start: 10694
    functionDepth: 1
    functionLinenumber: 10694
    functionLinenumberEnd: 10705
    functionName: PixelTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PixelTexture_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10715,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10716
      start: 10712
    functionDepth: 1
    functionLinenumber: 10712
    functionLinenumberEnd: 10716
    functionName: PlaneSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void PlaneSensor_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10736
      start: 10722
    functionDepth: 0
    functionLinenumber: 10722
    functionLinenumberEnd: 10736
    functionName: PlaneSensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PlaneSensor_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10753
      start: 10738
    functionDepth: 0
    functionLinenumber: 10738
    functionLinenumberEnd: 10753
    functionName: PlaneSensor_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PlaneSensor_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 53
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10808
      start: 10754
    functionDepth: 0
    functionLinenumber: 10754
    functionLinenumberEnd: 10808
    functionName: PlaneSensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PlaneSensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10813,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10814,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10815,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10816,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10817,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10818,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10819,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10820,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10822
      start: 10811
    functionDepth: 0
    functionLinenumber: 10811
    functionLinenumberEnd: 10822
    functionName: PlaneSensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PlaneSensor_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10847
      start: 10823
    functionDepth: 0
    functionLinenumber: 10823
    functionLinenumberEnd: 10847
    functionName: PlaneSensor_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool PlaneSensor_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10854,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10856,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10861,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10862,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10863,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10864,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10865,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10866,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10867,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10869
      start: 10851
    functionDepth: 1
    functionLinenumber: 10851
    functionLinenumberEnd: 10869
    functionName: PlaneSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PlaneSensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10879,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10880
      start: 10876
    functionDepth: 1
    functionLinenumber: 10876
    functionLinenumberEnd: 10880
    functionName: PlaneSensor2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void PlaneSensor2D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10900
      start: 10886
    functionDepth: 0
    functionLinenumber: 10886
    functionLinenumberEnd: 10900
    functionName: PlaneSensor2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PlaneSensor2D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10917
      start: 10902
    functionDepth: 0
    functionLinenumber: 10902
    functionLinenumberEnd: 10917
    functionName: PlaneSensor2D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PlaneSensor2D_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 53
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10972
      start: 10918
    functionDepth: 0
    functionLinenumber: 10918
    functionLinenumberEnd: 10972
    functionName: PlaneSensor2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PlaneSensor2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10977,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10978,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10979,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10980,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10981,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10982,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10983,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10984,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10986
      start: 10975
    functionDepth: 0
    functionLinenumber: 10975
    functionLinenumberEnd: 10986
    functionName: PlaneSensor2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PlaneSensor2D_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11011
      start: 10987
    functionDepth: 0
    functionLinenumber: 10987
    functionLinenumberEnd: 11011
    functionName: PlaneSensor2D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool PlaneSensor2D_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11018,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11020,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11025,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11026,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11027,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11028,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11029,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11030,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11032
      start: 11015
    functionDepth: 1
    functionLinenumber: 11015
    functionLinenumberEnd: 11032
    functionName: PlaneSensor2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PlaneSensor2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11042,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11043
      start: 11039
    functionDepth: 1
    functionLinenumber: 11039
    functionLinenumberEnd: 11043
    functionName: PointLight_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void PointLight_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11064
      start: 11050
    functionDepth: 0
    functionLinenumber: 11050
    functionLinenumberEnd: 11064
    functionName: PointLight_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PointLight_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11084
      start: 11066
    functionDepth: 0
    functionLinenumber: 11066
    functionLinenumberEnd: 11084
    functionName: PointLight_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PointLight_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 47
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11133
      start: 11085
    functionDepth: 0
    functionLinenumber: 11085
    functionLinenumberEnd: 11133
    functionName: PointLight_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PointLight_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11138,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11139,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11140,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11141,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11142,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11143,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11144,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11146
      start: 11136
    functionDepth: 0
    functionLinenumber: 11136
    functionLinenumberEnd: 11146
    functionName: PointLight_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PointLight_get_field_index_by_name(char *name)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11153,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11154,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11159,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11165,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11166,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11171,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11172,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11183,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11189
      start: 11147
    functionDepth: 1
    functionLinenumber: 11147
    functionLinenumberEnd: 11189
    functionName: PointLight_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool PointLight_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11196,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11198,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11201,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11202,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11203,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11204,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11205,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11206,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11207,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11208,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11209,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11210,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11211,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11215
      start: 11193
    functionDepth: 1
    functionLinenumber: 11193
    functionLinenumberEnd: 11215
    functionName: PointLight_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PointLight_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11225,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11226,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11228
      start: 11222
    functionDepth: 1
    functionLinenumber: 11222
    functionLinenumberEnd: 11228
    functionName: PointSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void PointSet_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11248
      start: 11234
    functionDepth: 0
    functionLinenumber: 11234
    functionLinenumberEnd: 11248
    functionName: PointSet_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PointSet_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11265
      start: 11250
    functionDepth: 0
    functionLinenumber: 11250
    functionLinenumberEnd: 11265
    functionName: PointSet_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PointSet_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11286
      start: 11266
    functionDepth: 0
    functionLinenumber: 11266
    functionLinenumberEnd: 11286
    functionName: PointSet_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PointSet_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11291,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11292,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11294
      start: 11289
    functionDepth: 0
    functionLinenumber: 11289
    functionLinenumberEnd: 11294
    functionName: PointSet_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PointSet_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11301
      start: 11295
    functionDepth: 0
    functionLinenumber: 11295
    functionLinenumberEnd: 11301
    functionName: PointSet_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool PointSet_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11308,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11310,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11314
      start: 11305
    functionDepth: 1
    functionLinenumber: 11305
    functionLinenumberEnd: 11314
    functionName: PointSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PointSet_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11324,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11325,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11327
      start: 11321
    functionDepth: 1
    functionLinenumber: 11321
    functionLinenumberEnd: 11327
    functionName: PointSet2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void PointSet2D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11347
      start: 11333
    functionDepth: 0
    functionLinenumber: 11333
    functionLinenumberEnd: 11347
    functionName: PointSet2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PointSet2D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11364
      start: 11349
    functionDepth: 0
    functionLinenumber: 11349
    functionLinenumberEnd: 11364
    functionName: PointSet2D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PointSet2D_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11385
      start: 11365
    functionDepth: 0
    functionLinenumber: 11365
    functionLinenumberEnd: 11385
    functionName: PointSet2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PointSet2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11390,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11391,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11393
      start: 11388
    functionDepth: 0
    functionLinenumber: 11388
    functionLinenumberEnd: 11393
    functionName: PointSet2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PointSet2D_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11400
      start: 11394
    functionDepth: 0
    functionLinenumber: 11394
    functionLinenumberEnd: 11400
    functionName: PointSet2D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool PointSet2D_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11407,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11409,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11413
      start: 11404
    functionDepth: 1
    functionLinenumber: 11404
    functionLinenumberEnd: 11413
    functionName: PointSet2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PointSet2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11423,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11424,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11425,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11426
      start: 11420
    functionDepth: 1
    functionLinenumber: 11420
    functionLinenumberEnd: 11426
    functionName: PositionInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfvec3f_del
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void PositionInterpolator_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11446
      start: 11432
    functionDepth: 0
    functionLinenumber: 11432
    functionLinenumberEnd: 11446
    functionName: PositionInterpolator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PositionInterpolator_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11463
      start: 11448
    functionDepth: 0
    functionLinenumber: 11448
    functionLinenumberEnd: 11463
    functionName: PositionInterpolator_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PositionInterpolator_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11495
      start: 11464
    functionDepth: 0
    functionLinenumber: 11464
    functionLinenumberEnd: 11495
    functionName: PositionInterpolator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PositionInterpolator_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11500,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11501,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11502,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11503,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11505
      start: 11498
    functionDepth: 0
    functionLinenumber: 11498
    functionLinenumberEnd: 11505
    functionName: PositionInterpolator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PositionInterpolator_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11512,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11513,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11524
      start: 11506
    functionDepth: 1
    functionLinenumber: 11506
    functionLinenumberEnd: 11524
    functionName: PositionInterpolator_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool PositionInterpolator_get_aq_info(GF_Node *n, u32 FieldIndex, u8
      *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11531,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11533,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11537
      start: 11528
    functionDepth: 1
    functionLinenumber: 11528
    functionLinenumberEnd: 11537
    functionName: PositionInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PositionInterpolator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11547,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11548,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11549,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11550
      start: 11544
    functionDepth: 1
    functionLinenumber: 11544
    functionLinenumberEnd: 11550
    functionName: PositionInterpolator2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfvec2f_del
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void PositionInterpolator2D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11570
      start: 11556
    functionDepth: 0
    functionLinenumber: 11556
    functionLinenumberEnd: 11570
    functionName: PositionInterpolator2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PositionInterpolator2D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11587
      start: 11572
    functionDepth: 0
    functionLinenumber: 11572
    functionLinenumberEnd: 11587
    functionName: PositionInterpolator2D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PositionInterpolator2D_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11619
      start: 11588
    functionDepth: 0
    functionLinenumber: 11588
    functionLinenumberEnd: 11619
    functionName: PositionInterpolator2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PositionInterpolator2D_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11624,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11625,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11626,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11627,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11629
      start: 11622
    functionDepth: 0
    functionLinenumber: 11622
    functionLinenumberEnd: 11629
    functionName: PositionInterpolator2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PositionInterpolator2D_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11636,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11637,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11648
      start: 11630
    functionDepth: 1
    functionLinenumber: 11630
    functionLinenumberEnd: 11648
    functionName: PositionInterpolator2D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool PositionInterpolator2D_get_aq_info(GF_Node *n, u32 FieldIndex,
      u8 *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11655,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11657,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11661
      start: 11652
    functionDepth: 1
    functionLinenumber: 11652
    functionLinenumberEnd: 11661
    functionName: PositionInterpolator2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PositionInterpolator2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11671,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11672
      start: 11668
    functionDepth: 1
    functionLinenumber: 11668
    functionLinenumberEnd: 11672
    functionName: ProximitySensor2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void ProximitySensor2D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11692
      start: 11678
    functionDepth: 0
    functionLinenumber: 11678
    functionLinenumberEnd: 11692
    functionName: ProximitySensor2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ProximitySensor2D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11709
      start: 11694
    functionDepth: 0
    functionLinenumber: 11694
    functionLinenumberEnd: 11709
    functionName: ProximitySensor2D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ProximitySensor2D_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 53
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11764
      start: 11710
    functionDepth: 0
    functionLinenumber: 11710
    functionLinenumberEnd: 11764
    functionName: ProximitySensor2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ProximitySensor2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11769,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11770,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11771,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11772,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11773,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11774,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11775,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11776,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11778
      start: 11767
    functionDepth: 0
    functionLinenumber: 11767
    functionLinenumberEnd: 11778
    functionName: ProximitySensor2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ProximitySensor2D_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11785,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11791,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11797
      start: 11779
    functionDepth: 1
    functionLinenumber: 11779
    functionLinenumberEnd: 11797
    functionName: ProximitySensor2D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool ProximitySensor2D_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11804,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11806,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11809,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11810,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11811,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11812,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11815
      start: 11801
    functionDepth: 1
    functionLinenumber: 11801
    functionLinenumberEnd: 11815
    functionName: ProximitySensor2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ProximitySensor2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11825,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11826
      start: 11822
    functionDepth: 1
    functionLinenumber: 11822
    functionLinenumberEnd: 11826
    functionName: ProximitySensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void ProximitySensor_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11846
      start: 11832
    functionDepth: 0
    functionLinenumber: 11832
    functionLinenumberEnd: 11846
    functionName: ProximitySensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ProximitySensor_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11863
      start: 11848
    functionDepth: 0
    functionLinenumber: 11848
    functionLinenumberEnd: 11863
    functionName: ProximitySensor_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ProximitySensor_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 53
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11918
      start: 11864
    functionDepth: 0
    functionLinenumber: 11864
    functionLinenumberEnd: 11918
    functionName: ProximitySensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ProximitySensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11923,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11924,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11925,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11926,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11927,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11928,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11929,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11930,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11932
      start: 11921
    functionDepth: 0
    functionLinenumber: 11921
    functionLinenumberEnd: 11932
    functionName: ProximitySensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ProximitySensor_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11945,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11951
      start: 11933
    functionDepth: 1
    functionLinenumber: 11933
    functionLinenumberEnd: 11951
    functionName: ProximitySensor_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool ProximitySensor_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11958,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11960,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11963,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11964,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11965,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11966,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11967,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11968,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11971
      start: 11955
    functionDepth: 1
    functionLinenumber: 11955
    functionLinenumberEnd: 11971
    functionName: ProximitySensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ProximitySensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11981,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11982
      start: 11978
    functionDepth: 1
    functionLinenumber: 11978
    functionLinenumberEnd: 11982
    functionName: QuantizationParameter_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void QuantizationParameter_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12000
      start: 11986
    functionDepth: 0
    functionLinenumber: 11986
    functionLinenumberEnd: 12000
    functionName: QuantizationParameter_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 QuantizationParameter_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12011
      start: 12002
    functionDepth: 0
    functionLinenumber: 12002
    functionLinenumberEnd: 12011
    functionName: QuantizationParameter_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err QuantizationParameter_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 42
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 245
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12258
      start: 12012
    functionDepth: 0
    functionLinenumber: 12012
    functionLinenumberEnd: 12258
    functionName: QuantizationParameter_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err QuantizationParameter_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12263,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12264,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12265,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12266,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12267,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12268,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12269,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12270,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12271,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12272,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12273,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12274,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12275,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12276,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12277,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12278,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12279,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12280,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12281,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12282,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12283,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12284,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12285,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12286,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12287,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12288,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12289,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12290,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12291,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12292,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12293,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12294,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12295,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12296,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12297,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12298,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12299,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12300,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12301,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12302,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 82
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12304
      start: 12261
    functionDepth: 0
    functionLinenumber: 12261
    functionLinenumberEnd: 12304
    functionName: QuantizationParameter_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 QuantizationParameter_get_field_index_by_name(char *name)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12324,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12325,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12343,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12344,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12362,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12363,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12368,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12369,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12374,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12375,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12381,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12382,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12387,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12388,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12393,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12394,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12400,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12401,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12406,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12407,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12412,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12413,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12419,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12420,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12438,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12439,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12457,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12458,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12464,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12465,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12483,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12484,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 183
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12489
      start: 12305
    functionDepth: 1
    functionLinenumber: 12305
    functionLinenumberEnd: 12489
    functionName: QuantizationParameter_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool QuantizationParameter_get_aq_info(GF_Node *n, u32 FieldIndex,
      u8 *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12496,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12498,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12517,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12518,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12521,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12522,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12525,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12526,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12528,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12532,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12533,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12537,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 45
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12541
      start: 12493
    functionDepth: 1
    functionLinenumber: 12493
    functionLinenumberEnd: 12541
    functionName: QuantizationParameter_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *QuantizationParameter_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12551,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12552
      start: 12548
    functionDepth: 1
    functionLinenumber: 12548
    functionLinenumberEnd: 12552
    functionName: Rectangle_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Rectangle_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12573
      start: 12559
    functionDepth: 0
    functionLinenumber: 12559
    functionLinenumberEnd: 12573
    functionName: Rectangle_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Rectangle_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12593
      start: 12575
    functionDepth: 0
    functionLinenumber: 12575
    functionLinenumberEnd: 12593
    functionName: Rectangle_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Rectangle_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12606
      start: 12594
    functionDepth: 0
    functionLinenumber: 12594
    functionLinenumberEnd: 12606
    functionName: Rectangle_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Rectangle_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12611,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12613
      start: 12609
    functionDepth: 0
    functionLinenumber: 12609
    functionLinenumberEnd: 12613
    functionName: Rectangle_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Rectangle_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12620,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12626
      start: 12614
    functionDepth: 1
    functionLinenumber: 12614
    functionLinenumberEnd: 12626
    functionName: Rectangle_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Rectangle_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12633,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12635,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12638,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12639,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12641
      start: 12630
    functionDepth: 1
    functionLinenumber: 12630
    functionLinenumberEnd: 12641
    functionName: Rectangle_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Rectangle_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12651,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12652,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12653,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12654
      start: 12648
    functionDepth: 1
    functionLinenumber: 12648
    functionLinenumberEnd: 12654
    functionName: ScalarInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void ScalarInterpolator_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12674
      start: 12660
    functionDepth: 0
    functionLinenumber: 12660
    functionLinenumberEnd: 12674
    functionName: ScalarInterpolator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ScalarInterpolator_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12691
      start: 12676
    functionDepth: 0
    functionLinenumber: 12676
    functionLinenumberEnd: 12691
    functionName: ScalarInterpolator_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ScalarInterpolator_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12723
      start: 12692
    functionDepth: 0
    functionLinenumber: 12692
    functionLinenumberEnd: 12723
    functionName: ScalarInterpolator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ScalarInterpolator_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12728,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12729,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12730,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12731,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12733
      start: 12726
    functionDepth: 0
    functionLinenumber: 12726
    functionLinenumberEnd: 12733
    functionName: ScalarInterpolator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ScalarInterpolator_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12740,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12741,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12752
      start: 12734
    functionDepth: 1
    functionLinenumber: 12734
    functionLinenumberEnd: 12752
    functionName: ScalarInterpolator_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool ScalarInterpolator_get_aq_info(GF_Node *n, u32 FieldIndex, u8
      *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12759,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12761,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12765
      start: 12756
    functionDepth: 1
    functionLinenumber: 12756
    functionLinenumberEnd: 12765
    functionName: ScalarInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ScalarInterpolator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfscript_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12775,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12776,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12777
      start: 12772
    functionDepth: 1
    functionLinenumber: 12772
    functionLinenumberEnd: 12777
    functionName: Script_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_sg_mfscript_del
    linkageType: ''
    returnType: void
    signature: void Script_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12797
      start: 12783
    functionDepth: 0
    functionLinenumber: 12783
    functionLinenumberEnd: 12797
    functionName: Script_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Script_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12814
      start: 12799
    functionDepth: 0
    functionLinenumber: 12799
    functionLinenumberEnd: 12814
    functionName: Script_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Script_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12839
      start: 12815
    functionDepth: 0
    functionLinenumber: 12815
    functionLinenumberEnd: 12839
    functionName: Script_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Script_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12845,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12846,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12847,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12849
      start: 12843
    functionDepth: 0
    functionLinenumber: 12843
    functionLinenumberEnd: 12849
    functionName: Script_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Script_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12857
      start: 12851
    functionDepth: 0
    functionLinenumber: 12851
    functionLinenumberEnd: 12857
    functionName: Script_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Script_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12864,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12866,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12870
      start: 12861
    functionDepth: 1
    functionLinenumber: 12861
    functionLinenumberEnd: 12870
    functionName: Script_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Script_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12880,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12881,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12882,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12883
      start: 12877
    functionDepth: 1
    functionLinenumber: 12877
    functionLinenumberEnd: 12883
    functionName: Shape_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Shape_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12903
      start: 12889
    functionDepth: 0
    functionLinenumber: 12889
    functionLinenumberEnd: 12903
    functionName: Shape_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Shape_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12920
      start: 12905
    functionDepth: 0
    functionLinenumber: 12905
    functionLinenumberEnd: 12920
    functionName: Shape_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Shape_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12941
      start: 12921
    functionDepth: 0
    functionLinenumber: 12921
    functionLinenumberEnd: 12941
    functionName: Shape_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Shape_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12946,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12947,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12949
      start: 12944
    functionDepth: 0
    functionLinenumber: 12944
    functionLinenumberEnd: 12949
    functionName: Shape_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Shape_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12956
      start: 12950
    functionDepth: 0
    functionLinenumber: 12950
    functionLinenumberEnd: 12956
    functionName: Shape_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Shape_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12963,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12965,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12969
      start: 12960
    functionDepth: 1
    functionLinenumber: 12960
    functionLinenumberEnd: 12969
    functionName: Shape_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Shape_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12979,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12980,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12981
      start: 12976
    functionDepth: 1
    functionLinenumber: 12976
    functionLinenumberEnd: 12981
    functionName: Sound_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Sound_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13002
      start: 12988
    functionDepth: 0
    functionLinenumber: 12988
    functionLinenumberEnd: 13002
    functionName: Sound_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Sound_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13022
      start: 13004
    functionDepth: 0
    functionLinenumber: 13004
    functionLinenumberEnd: 13022
    functionName: Sound_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Sound_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 66
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13090
      start: 13023
    functionDepth: 0
    functionLinenumber: 13023
    functionLinenumberEnd: 13090
    functionName: Sound_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Sound_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13095,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13096,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13097,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13098,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13099,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13100,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13101,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13102,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13103,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13104,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13106
      start: 13093
    functionDepth: 0
    functionLinenumber: 13093
    functionLinenumberEnd: 13106
    functionName: Sound_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Sound_get_field_index_by_name(char *name)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13119,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13120,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13131,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13137,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13143,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13149,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13155,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13156,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 53
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13161
      start: 13107
    functionDepth: 1
    functionLinenumber: 13107
    functionLinenumberEnd: 13161
    functionName: Sound_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Sound_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13168,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13170,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13173,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13174,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13175,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13176,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13177,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13178,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13179,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13180,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13181,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13182,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13183,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13184,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13187
      start: 13165
    functionDepth: 1
    functionLinenumber: 13165
    functionLinenumberEnd: 13187
    functionName: Sound_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Sound_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13197,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13199
      start: 13194
    functionDepth: 1
    functionLinenumber: 13194
    functionLinenumberEnd: 13199
    functionName: Sound2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Sound2D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13220
      start: 13206
    functionDepth: 0
    functionLinenumber: 13206
    functionLinenumberEnd: 13220
    functionName: Sound2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Sound2D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13240
      start: 13222
    functionDepth: 0
    functionLinenumber: 13222
    functionLinenumberEnd: 13240
    functionName: Sound2D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Sound2D_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13272
      start: 13241
    functionDepth: 0
    functionLinenumber: 13241
    functionLinenumberEnd: 13272
    functionName: Sound2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Sound2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13277,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13278,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13279,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13280,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13282
      start: 13275
    functionDepth: 0
    functionLinenumber: 13275
    functionLinenumberEnd: 13282
    functionName: Sound2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Sound2D_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13289,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13290,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13301
      start: 13283
    functionDepth: 1
    functionLinenumber: 13283
    functionLinenumberEnd: 13301
    functionName: Sound2D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Sound2D_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13308,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13310,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13313,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13314,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13315,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13318
      start: 13305
    functionDepth: 1
    functionLinenumber: 13305
    functionLinenumberEnd: 13318
    functionName: Sound2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Sound2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13329
      start: 13325
    functionDepth: 1
    functionLinenumber: 13325
    functionLinenumberEnd: 13329
    functionName: Sphere_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Sphere_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13347
      start: 13333
    functionDepth: 0
    functionLinenumber: 13333
    functionLinenumberEnd: 13347
    functionName: Sphere_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Sphere_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13358
      start: 13349
    functionDepth: 0
    functionLinenumber: 13349
    functionLinenumberEnd: 13358
    functionName: Sphere_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Sphere_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13371
      start: 13359
    functionDepth: 0
    functionLinenumber: 13359
    functionLinenumberEnd: 13371
    functionName: Sphere_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Sphere_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13376,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13378
      start: 13374
    functionDepth: 0
    functionLinenumber: 13374
    functionLinenumberEnd: 13378
    functionName: Sphere_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Sphere_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13385,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13391
      start: 13379
    functionDepth: 1
    functionLinenumber: 13379
    functionLinenumberEnd: 13391
    functionName: Sphere_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Sphere_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13398,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13400,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13403,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13405
      start: 13395
    functionDepth: 1
    functionLinenumber: 13395
    functionLinenumberEnd: 13405
    functionName: Sphere_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Sphere_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13415,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13416
      start: 13412
    functionDepth: 1
    functionLinenumber: 13412
    functionLinenumberEnd: 13416
    functionName: SphereSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void SphereSensor_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13436
      start: 13422
    functionDepth: 0
    functionLinenumber: 13422
    functionLinenumberEnd: 13436
    functionName: SphereSensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SphereSensor_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13453
      start: 13438
    functionDepth: 0
    functionLinenumber: 13438
    functionLinenumberEnd: 13453
    functionName: SphereSensor_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SphereSensor_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13496
      start: 13454
    functionDepth: 0
    functionLinenumber: 13454
    functionLinenumberEnd: 13496
    functionName: SphereSensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SphereSensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13501,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13502,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13503,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13504,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13505,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13506,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13508
      start: 13499
    functionDepth: 0
    functionLinenumber: 13499
    functionLinenumberEnd: 13508
    functionName: SphereSensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 SphereSensor_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13521
      start: 13509
    functionDepth: 0
    functionLinenumber: 13509
    functionLinenumberEnd: 13521
    functionName: SphereSensor_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool SphereSensor_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13528,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13530,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13535,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13536,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13537,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13538,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13540
      start: 13525
    functionDepth: 1
    functionLinenumber: 13525
    functionLinenumberEnd: 13540
    functionName: SphereSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *SphereSensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13550,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13551
      start: 13547
    functionDepth: 1
    functionLinenumber: 13547
    functionLinenumberEnd: 13551
    functionName: SpotLight_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void SpotLight_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13572
      start: 13558
    functionDepth: 0
    functionLinenumber: 13558
    functionLinenumberEnd: 13572
    functionName: SpotLight_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SpotLight_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13592
      start: 13574
    functionDepth: 0
    functionLinenumber: 13574
    functionLinenumberEnd: 13592
    functionName: SpotLight_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SpotLight_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 65
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13659
      start: 13593
    functionDepth: 0
    functionLinenumber: 13593
    functionLinenumberEnd: 13659
    functionName: SpotLight_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SpotLight_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13664,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13665,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13666,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13667,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13668,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13669,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13670,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13671,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13672,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13673,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13675
      start: 13662
    functionDepth: 0
    functionLinenumber: 13662
    functionLinenumberEnd: 13675
    functionName: SpotLight_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 SpotLight_get_field_index_by_name(char *name)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13682,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13683,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13688,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13694,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13695,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13700,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13701,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13706,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13707,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13718,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13719,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13730,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 59
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13736
      start: 13676
    functionDepth: 1
    functionLinenumber: 13676
    functionLinenumberEnd: 13736
    functionName: SpotLight_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool SpotLight_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13743,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13745,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13748,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13749,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13750,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13751,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13752,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13753,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13754,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13755,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13756,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13757,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13758,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13759,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13760,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13761,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13762,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13763,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13765,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13767
      start: 13740
    functionDepth: 1
    functionLinenumber: 13740
    functionLinenumberEnd: 13767
    functionName: SpotLight_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *SpotLight_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13777,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13778,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13779
      start: 13774
    functionDepth: 1
    functionLinenumber: 13774
    functionLinenumberEnd: 13779
    functionName: Switch_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_unregister_children
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Switch_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13799
      start: 13785
    functionDepth: 0
    functionLinenumber: 13785
    functionLinenumberEnd: 13799
    functionName: Switch_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Switch_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13816
      start: 13801
    functionDepth: 0
    functionLinenumber: 13801
    functionLinenumberEnd: 13816
    functionName: Switch_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Switch_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13836
      start: 13817
    functionDepth: 0
    functionLinenumber: 13817
    functionLinenumberEnd: 13836
    functionName: Switch_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Switch_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13841,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13842,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13844
      start: 13839
    functionDepth: 0
    functionLinenumber: 13839
    functionLinenumberEnd: 13844
    functionName: Switch_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Switch_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13852,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13853,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13858
      start: 13845
    functionDepth: 1
    functionLinenumber: 13845
    functionLinenumberEnd: 13858
    functionName: Switch_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Switch_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13865,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13867,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13872
      start: 13862
    functionDepth: 1
    functionLinenumber: 13862
    functionLinenumberEnd: 13872
    functionName: Switch_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Switch_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13882,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13883
      start: 13879
    functionDepth: 1
    functionLinenumber: 13879
    functionLinenumberEnd: 13883
    functionName: TermCap_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void TermCap_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13903
      start: 13889
    functionDepth: 0
    functionLinenumber: 13889
    functionLinenumberEnd: 13903
    functionName: TermCap_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 TermCap_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13920
      start: 13905
    functionDepth: 0
    functionLinenumber: 13905
    functionLinenumberEnd: 13920
    functionName: TermCap_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TermCap_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13946
      start: 13921
    functionDepth: 0
    functionLinenumber: 13921
    functionLinenumberEnd: 13946
    functionName: TermCap_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TermCap_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13951,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13952,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13953,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13955
      start: 13949
    functionDepth: 0
    functionLinenumber: 13949
    functionLinenumberEnd: 13955
    functionName: TermCap_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 TermCap_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13963,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13964,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13970,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13971,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13976
      start: 13956
    functionDepth: 1
    functionLinenumber: 13956
    functionLinenumberEnd: 13976
    functionName: TermCap_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool TermCap_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13983,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13985,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13990
      start: 13980
    functionDepth: 1
    functionLinenumber: 13980
    functionLinenumberEnd: 13990
    functionName: TermCap_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *TermCap_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14000,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14001,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14002,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14003,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14004
      start: 13997
    functionDepth: 1
    functionLinenumber: 13997
    functionLinenumberEnd: 14004
    functionName: Text_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfstring_del
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void Text_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14025
      start: 14011
    functionDepth: 0
    functionLinenumber: 14011
    functionLinenumberEnd: 14025
    functionName: Text_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Text_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14045
      start: 14027
    functionDepth: 0
    functionLinenumber: 14027
    functionLinenumberEnd: 14045
    functionName: Text_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Text_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14077
      start: 14046
    functionDepth: 0
    functionLinenumber: 14046
    functionLinenumberEnd: 14077
    functionName: Text_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Text_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14082,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14083,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14084,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14085,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14087
      start: 14080
    functionDepth: 0
    functionLinenumber: 14080
    functionLinenumberEnd: 14087
    functionName: Text_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Text_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14094,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14106
      start: 14088
    functionDepth: 1
    functionLinenumber: 14088
    functionLinenumberEnd: 14106
    functionName: Text_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Text_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14113,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14115,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14118,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14120
      start: 14110
    functionDepth: 1
    functionLinenumber: 14110
    functionLinenumberEnd: 14120
    functionName: Text_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Text_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14130,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14132
      start: 14127
    functionDepth: 1
    functionLinenumber: 14127
    functionLinenumberEnd: 14132
    functionName: TextureCoordinate_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfvec2f_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void TextureCoordinate_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14153
      start: 14139
    functionDepth: 0
    functionLinenumber: 14139
    functionLinenumberEnd: 14153
    functionName: TextureCoordinate_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 TextureCoordinate_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14173
      start: 14155
    functionDepth: 0
    functionLinenumber: 14155
    functionLinenumberEnd: 14173
    functionName: TextureCoordinate_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TextureCoordinate_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14186
      start: 14174
    functionDepth: 0
    functionLinenumber: 14174
    functionLinenumberEnd: 14186
    functionName: TextureCoordinate_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TextureCoordinate_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14193
      start: 14189
    functionDepth: 0
    functionLinenumber: 14189
    functionLinenumberEnd: 14193
    functionName: TextureCoordinate_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 TextureCoordinate_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14206
      start: 14194
    functionDepth: 0
    functionLinenumber: 14194
    functionLinenumberEnd: 14206
    functionName: TextureCoordinate_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool TextureCoordinate_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14213,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14215,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14219
      start: 14210
    functionDepth: 1
    functionLinenumber: 14210
    functionLinenumberEnd: 14219
    functionName: TextureCoordinate_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *TextureCoordinate_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14230
      start: 14226
    functionDepth: 1
    functionLinenumber: 14226
    functionLinenumberEnd: 14230
    functionName: TextureTransform_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void TextureTransform_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14251
      start: 14237
    functionDepth: 0
    functionLinenumber: 14237
    functionLinenumberEnd: 14251
    functionName: TextureTransform_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 TextureTransform_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14271
      start: 14253
    functionDepth: 0
    functionLinenumber: 14253
    functionLinenumberEnd: 14271
    functionName: TextureTransform_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TextureTransform_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14302
      start: 14272
    functionDepth: 0
    functionLinenumber: 14272
    functionLinenumberEnd: 14302
    functionName: TextureTransform_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TextureTransform_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14307,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14308,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14309,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14310,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14312
      start: 14305
    functionDepth: 0
    functionLinenumber: 14305
    functionLinenumberEnd: 14312
    functionName: TextureTransform_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 TextureTransform_get_field_index_by_name(char *name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14325,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14326,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14343
      start: 14313
    functionDepth: 1
    functionLinenumber: 14313
    functionLinenumberEnd: 14343
    functionName: TextureTransform_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool TextureTransform_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14350,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14352,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14355,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14356,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14357,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14358,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14359,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14360,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14361,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14363
      start: 14347
    functionDepth: 1
    functionLinenumber: 14347
    functionLinenumberEnd: 14363
    functionName: TextureTransform_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *TextureTransform_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14373,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14374
      start: 14370
    functionDepth: 1
    functionLinenumber: 14370
    functionLinenumberEnd: 14374
    functionName: TimeSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void TimeSensor_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14394
      start: 14380
    functionDepth: 0
    functionLinenumber: 14380
    functionLinenumberEnd: 14394
    functionName: TimeSensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 TimeSensor_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14411
      start: 14396
    functionDepth: 0
    functionLinenumber: 14396
    functionLinenumberEnd: 14411
    functionName: TimeSensor_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TimeSensor_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 59
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14472
      start: 14412
    functionDepth: 0
    functionLinenumber: 14412
    functionLinenumberEnd: 14472
    functionName: TimeSensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TimeSensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14477,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14478,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14479,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14480,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14481,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14482,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14483,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14484,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14485,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14487
      start: 14475
    functionDepth: 0
    functionLinenumber: 14475
    functionLinenumberEnd: 14487
    functionName: TimeSensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 TimeSensor_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14494
      start: 14488
    functionDepth: 0
    functionLinenumber: 14488
    functionLinenumberEnd: 14494
    functionName: TimeSensor_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool TimeSensor_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14501,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14503,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14511
      start: 14498
    functionDepth: 1
    functionLinenumber: 14498
    functionLinenumberEnd: 14511
    functionName: TimeSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *TimeSensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14521,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14522
      start: 14518
    functionDepth: 1
    functionLinenumber: 14518
    functionLinenumberEnd: 14522
    functionName: TouchSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void TouchSensor_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14542
      start: 14528
    functionDepth: 0
    functionLinenumber: 14528
    functionLinenumberEnd: 14542
    functionName: TouchSensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 TouchSensor_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14559
      start: 14544
    functionDepth: 0
    functionLinenumber: 14544
    functionLinenumberEnd: 14559
    functionName: TouchSensor_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TouchSensor_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 47
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14608
      start: 14560
    functionDepth: 0
    functionLinenumber: 14560
    functionLinenumberEnd: 14608
    functionName: TouchSensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TouchSensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14613,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14614,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14615,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14616,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14617,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14618,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14619,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14621
      start: 14611
    functionDepth: 0
    functionLinenumber: 14611
    functionLinenumberEnd: 14621
    functionName: TouchSensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 TouchSensor_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14628
      start: 14622
    functionDepth: 0
    functionLinenumber: 14622
    functionLinenumberEnd: 14628
    functionName: TouchSensor_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool TouchSensor_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14635,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14637,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14642
      start: 14632
    functionDepth: 1
    functionLinenumber: 14632
    functionLinenumberEnd: 14642
    functionName: TouchSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *TouchSensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14652,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14653,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14654
      start: 14649
    functionDepth: 1
    functionLinenumber: 14649
    functionLinenumberEnd: 14654
    functionName: Transform_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Transform_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14675
      start: 14661
    functionDepth: 0
    functionLinenumber: 14661
    functionLinenumberEnd: 14675
    functionName: Transform_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Transform_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14695
      start: 14677
    functionDepth: 0
    functionLinenumber: 14677
    functionLinenumberEnd: 14695
    functionName: Transform_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Transform_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 58
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14755
      start: 14696
    functionDepth: 0
    functionLinenumber: 14696
    functionLinenumberEnd: 14755
    functionName: Transform_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Transform_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14760,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14761,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14762,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14763,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14764,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14765,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14766,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14767,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14769
      start: 14758
    functionDepth: 0
    functionLinenumber: 14758
    functionLinenumberEnd: 14769
    functionName: Transform_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Transform_get_field_index_by_name(char *name)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14786,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14802
      start: 14770
    functionDepth: 1
    functionLinenumber: 14770
    functionLinenumberEnd: 14802
    functionName: Transform_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Transform_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14809,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14811,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14812,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14815,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14816,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14817,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14818,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14819,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14820,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14821,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14822,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14823,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14824,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14825,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14826,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14827,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14828,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14829,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14830,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14831,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14833
      start: 14806
    functionDepth: 1
    functionLinenumber: 14806
    functionLinenumberEnd: 14833
    functionName: Transform_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Transform_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14843,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14844,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14845
      start: 14840
    functionDepth: 1
    functionLinenumber: 14840
    functionLinenumberEnd: 14845
    functionName: Transform2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Transform2D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14866
      start: 14852
    functionDepth: 0
    functionLinenumber: 14852
    functionLinenumberEnd: 14866
    functionName: Transform2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Transform2D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14886
      start: 14868
    functionDepth: 0
    functionLinenumber: 14868
    functionLinenumberEnd: 14886
    functionName: Transform2D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Transform2D_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 58
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14946
      start: 14887
    functionDepth: 0
    functionLinenumber: 14887
    functionLinenumberEnd: 14946
    functionName: Transform2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Transform2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14951,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14952,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14953,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14954,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14955,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14956,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14957,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14958,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14960
      start: 14949
    functionDepth: 0
    functionLinenumber: 14949
    functionLinenumberEnd: 14960
    functionName: Transform2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Transform2D_get_field_index_by_name(char *name)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14973,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14974,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14985,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14986,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 35
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14997
      start: 14961
    functionDepth: 1
    functionLinenumber: 14961
    functionLinenumberEnd: 14997
    functionName: Transform2D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Transform2D_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15004,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15006,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15007,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15010,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15011,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15012,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15013,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15014,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15015,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15016,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15017,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15019
      start: 15001
    functionDepth: 1
    functionLinenumber: 15001
    functionLinenumberEnd: 15019
    functionName: Transform2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Transform2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15029,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15030,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15031,1
    - Dst: gf_sg_mfrotation_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15032,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15033,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15034,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15035,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15036,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15037,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15038,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15039,1
    - Dst: gf_sg_mfrotation_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15040,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15041,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15042,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15043,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15044,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15045,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 18
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15046
      start: 15026
    functionDepth: 1
    functionLinenumber: 15026
    functionLinenumberEnd: 15046
    functionName: Valuator_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec2f_del
    - gf_sg_mfint32_del
    - gf_node_free
    - gf_sg_sfstring_del
    - gf_sg_mffloat_del
    - gf_sg_mfvec3f_del
    - gf_sg_mfstring_del
    - gf_sg_mfrotation_del
    - gf_sg_mfcolor_del
    linkageType: ''
    returnType: void
    signature: void Valuator_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15066
      start: 15052
    functionDepth: 0
    functionLinenumber: 15052
    functionLinenumberEnd: 15066
    functionName: Valuator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Valuator_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15083
      start: 15068
    functionDepth: 0
    functionLinenumber: 15068
    functionLinenumberEnd: 15083
    functionName: Valuator_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Valuator_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 43
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 267
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15352
      start: 15084
    functionDepth: 0
    functionLinenumber: 15084
    functionLinenumberEnd: 15352
    functionName: Valuator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Valuator_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15357,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15358,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15359,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15360,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15361,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15362,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15363,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15364,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15365,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15366,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15367,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15368,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15369,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15370,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15371,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15372,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15373,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15374,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15375,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15376,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15377,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15378,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15379,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15380,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15381,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15382,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15383,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15384,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15385,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15386,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15387,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15388,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15389,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15390,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15391,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15392,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15393,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15394,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15395,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15396,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15397,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 84
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15399
      start: 15355
    functionDepth: 0
    functionLinenumber: 15355
    functionLinenumberEnd: 15399
    functionName: Valuator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Valuator_get_field_index_by_name(char *name)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 53
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15454
      start: 15400
    functionDepth: 0
    functionLinenumber: 15400
    functionLinenumberEnd: 15454
    functionName: Valuator_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Valuator_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15461,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15463,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15466,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15467,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15468,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15469,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15470,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15471,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15472,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15473,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15475
      start: 15458
    functionDepth: 1
    functionLinenumber: 15458
    functionLinenumberEnd: 15475
    functionName: Valuator_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Valuator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15485,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15486,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15487
      start: 15482
    functionDepth: 1
    functionLinenumber: 15482
    functionLinenumberEnd: 15487
    functionName: Viewpoint_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Viewpoint_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15508
      start: 15494
    functionDepth: 0
    functionLinenumber: 15494
    functionLinenumberEnd: 15508
    functionName: Viewpoint_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Viewpoint_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15528
      start: 15510
    functionDepth: 0
    functionLinenumber: 15510
    functionLinenumberEnd: 15528
    functionName: Viewpoint_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Viewpoint_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 54
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15584
      start: 15529
    functionDepth: 0
    functionLinenumber: 15529
    functionLinenumberEnd: 15584
    functionName: Viewpoint_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Viewpoint_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15589,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15590,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15591,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15592,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15593,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15594,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15595,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15596,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15598
      start: 15587
    functionDepth: 0
    functionLinenumber: 15587
    functionLinenumberEnd: 15598
    functionName: Viewpoint_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Viewpoint_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15605,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15606,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15621
      start: 15599
    functionDepth: 1
    functionLinenumber: 15599
    functionLinenumberEnd: 15621
    functionName: Viewpoint_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Viewpoint_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15628,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15630,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15633,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15635,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15636,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15637,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15638,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15639,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15640,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15641,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15643
      start: 15625
    functionDepth: 1
    functionLinenumber: 15625
    functionLinenumberEnd: 15643
    functionName: Viewpoint_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Viewpoint_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15653,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15654
      start: 15650
    functionDepth: 1
    functionLinenumber: 15650
    functionLinenumberEnd: 15654
    functionName: VisibilitySensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void VisibilitySensor_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15675
      start: 15661
    functionDepth: 0
    functionLinenumber: 15661
    functionLinenumberEnd: 15675
    functionName: VisibilitySensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 VisibilitySensor_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15695
      start: 15677
    functionDepth: 0
    functionLinenumber: 15677
    functionLinenumberEnd: 15695
    functionName: VisibilitySensor_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err VisibilitySensor_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15738
      start: 15696
    functionDepth: 0
    functionLinenumber: 15696
    functionLinenumberEnd: 15738
    functionName: VisibilitySensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err VisibilitySensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15743,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15744,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15745,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15746,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15747,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15748,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15750
      start: 15741
    functionDepth: 0
    functionLinenumber: 15741
    functionLinenumberEnd: 15750
    functionName: VisibilitySensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 VisibilitySensor_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15763,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15769
      start: 15751
    functionDepth: 1
    functionLinenumber: 15751
    functionLinenumberEnd: 15769
    functionName: VisibilitySensor_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool VisibilitySensor_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15776,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15778,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15781,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15782,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15783,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15785,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15786,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15787,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15789
      start: 15773
    functionDepth: 1
    functionLinenumber: 15773
    functionLinenumberEnd: 15789
    functionName: VisibilitySensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *VisibilitySensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15799,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15800
      start: 15796
    functionDepth: 1
    functionLinenumber: 15796
    functionLinenumberEnd: 15800
    functionName: Viseme_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Viseme_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15820
      start: 15806
    functionDepth: 0
    functionLinenumber: 15806
    functionLinenumberEnd: 15820
    functionName: Viseme_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Viseme_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15837
      start: 15822
    functionDepth: 0
    functionLinenumber: 15822
    functionLinenumberEnd: 15837
    functionName: Viseme_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Viseme_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15868
      start: 15838
    functionDepth: 0
    functionLinenumber: 15838
    functionLinenumberEnd: 15868
    functionName: Viseme_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Viseme_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15873,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15874,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15875,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15876,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15878
      start: 15871
    functionDepth: 0
    functionLinenumber: 15871
    functionLinenumberEnd: 15878
    functionName: Viseme_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Viseme_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15886,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15887,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15893,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15894,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15900,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15901,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 26
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15906
      start: 15879
    functionDepth: 1
    functionLinenumber: 15879
    functionLinenumberEnd: 15906
    functionName: Viseme_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Viseme_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15913,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15915,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15922
      start: 15910
    functionDepth: 1
    functionLinenumber: 15910
    functionLinenumberEnd: 15922
    functionName: Viseme_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Viseme_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15932,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15933,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15934,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15935
      start: 15929
    functionDepth: 1
    functionLinenumber: 15929
    functionLinenumberEnd: 15935
    functionName: WorldInfo_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfstring_del
    - gf_node_free
    - gf_sg_sfstring_del
    linkageType: ''
    returnType: void
    signature: void WorldInfo_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15953
      start: 15939
    functionDepth: 0
    functionLinenumber: 15939
    functionLinenumberEnd: 15953
    functionName: WorldInfo_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 WorldInfo_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15964
      start: 15955
    functionDepth: 0
    functionLinenumber: 15955
    functionLinenumberEnd: 15964
    functionName: WorldInfo_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WorldInfo_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15983
      start: 15965
    functionDepth: 0
    functionLinenumber: 15965
    functionLinenumberEnd: 15983
    functionName: WorldInfo_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WorldInfo_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15988,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15989,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15991
      start: 15986
    functionDepth: 0
    functionLinenumber: 15986
    functionLinenumberEnd: 15991
    functionName: WorldInfo_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 WorldInfo_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15998
      start: 15992
    functionDepth: 0
    functionLinenumber: 15992
    functionLinenumberEnd: 15998
    functionName: WorldInfo_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool WorldInfo_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16005,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16007,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16011
      start: 16002
    functionDepth: 1
    functionLinenumber: 16002
    functionLinenumberEnd: 16011
    functionName: WorldInfo_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *WorldInfo_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16021,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16022,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16023,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16024,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16025,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16026
      start: 16018
    functionDepth: 1
    functionLinenumber: 16018
    functionLinenumberEnd: 16026
    functionName: AcousticMaterial_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void AcousticMaterial_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16047
      start: 16033
    functionDepth: 0
    functionLinenumber: 16033
    functionLinenumberEnd: 16047
    functionName: AcousticMaterial_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 AcousticMaterial_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16067
      start: 16049
    functionDepth: 0
    functionLinenumber: 16049
    functionLinenumberEnd: 16067
    functionName: AcousticMaterial_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AcousticMaterial_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 65
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16134
      start: 16068
    functionDepth: 0
    functionLinenumber: 16068
    functionLinenumberEnd: 16134
    functionName: AcousticMaterial_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AcousticMaterial_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16139,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16140,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16141,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16142,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16143,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16144,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16145,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16146,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16147,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16148,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16150
      start: 16137
    functionDepth: 0
    functionLinenumber: 16137
    functionLinenumberEnd: 16150
    functionName: AcousticMaterial_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 AcousticMaterial_get_field_index_by_name(char *name)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16157,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16158,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16163,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16164,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16169,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16170,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16175,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16176,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16181,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16182,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16187,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16188,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16205,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16211,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 65
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16217
      start: 16151
    functionDepth: 1
    functionLinenumber: 16151
    functionLinenumberEnd: 16217
    functionName: AcousticMaterial_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool AcousticMaterial_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16224,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16226,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16229,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16230,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16231,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16232,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16233,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16234,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16235,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16236,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16237,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16238,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16239,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16240,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16241,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16243,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16244,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16246,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16247,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16249,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16250,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16252,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16254
      start: 16221
    functionDepth: 1
    functionLinenumber: 16221
    functionLinenumberEnd: 16254
    functionName: AcousticMaterial_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *AcousticMaterial_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mftime_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16264,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16265,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16266,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16267
      start: 16261
    functionDepth: 1
    functionLinenumber: 16261
    functionLinenumberEnd: 16267
    functionName: AcousticScene_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mffloat_del
    - gf_node_free
    - gf_sg_mftime_del
    linkageType: ''
    returnType: void
    signature: void AcousticScene_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16288
      start: 16274
    functionDepth: 0
    functionLinenumber: 16274
    functionLinenumberEnd: 16288
    functionName: AcousticScene_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 AcousticScene_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16308
      start: 16290
    functionDepth: 0
    functionLinenumber: 16290
    functionLinenumberEnd: 16308
    functionName: AcousticScene_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AcousticScene_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16351
      start: 16309
    functionDepth: 0
    functionLinenumber: 16309
    functionLinenumberEnd: 16351
    functionName: AcousticScene_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AcousticScene_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16356,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16357,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16358,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16359,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16360,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16361,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16363
      start: 16354
    functionDepth: 0
    functionLinenumber: 16354
    functionLinenumberEnd: 16363
    functionName: AcousticScene_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 AcousticScene_get_field_index_by_name(char *name)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16382,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16388,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16394,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16400,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16406
      start: 16364
    functionDepth: 1
    functionLinenumber: 16364
    functionLinenumberEnd: 16406
    functionName: AcousticScene_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool AcousticScene_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16413,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16415,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16418,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16419,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16420,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16421,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16422,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16423,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16424,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16427,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16429,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16430,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16433
      start: 16410
    functionDepth: 1
    functionLinenumber: 16410
    functionLinenumberEnd: 16433
    functionName: AcousticScene_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *AcousticScene_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16443,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16444,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16445,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16446,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16447
      start: 16440
    functionDepth: 1
    functionLinenumber: 16440
    functionLinenumberEnd: 16447
    functionName: ApplicationWindow_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfurl_del
    - gf_sg_sfstring_del
    - gf_sg_mfstring_del
    linkageType: ''
    returnType: void
    signature: void ApplicationWindow_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16468
      start: 16454
    functionDepth: 0
    functionLinenumber: 16454
    functionLinenumberEnd: 16468
    functionName: ApplicationWindow_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ApplicationWindow_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16488
      start: 16470
    functionDepth: 0
    functionLinenumber: 16470
    functionLinenumberEnd: 16488
    functionName: ApplicationWindow_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ApplicationWindow_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 47
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16537
      start: 16489
    functionDepth: 0
    functionLinenumber: 16489
    functionLinenumberEnd: 16537
    functionName: ApplicationWindow_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ApplicationWindow_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16542,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16543,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16544,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16545,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16546,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16547,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16548,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16550
      start: 16540
    functionDepth: 0
    functionLinenumber: 16540
    functionLinenumberEnd: 16550
    functionName: ApplicationWindow_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ApplicationWindow_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16575
      start: 16551
    functionDepth: 0
    functionLinenumber: 16551
    functionLinenumberEnd: 16575
    functionName: ApplicationWindow_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool ApplicationWindow_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16582,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16584,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16589,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16590,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16592
      start: 16579
    functionDepth: 1
    functionLinenumber: 16579
    functionLinenumberEnd: 16592
    functionName: ApplicationWindow_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ApplicationWindow_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16602,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16603
      start: 16599
    functionDepth: 1
    functionLinenumber: 16599
    functionLinenumberEnd: 16603
    functionName: BAP_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void BAP_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16623
      start: 16609
    functionDepth: 0
    functionLinenumber: 16609
    functionLinenumberEnd: 16623
    functionName: BAP_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 BAP_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16640
      start: 16625
    functionDepth: 0
    functionLinenumber: 16625
    functionLinenumberEnd: 16640
    functionName: BAP_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BAP_get_field_index(GF_Node *n, u32 inField, u8 IndexMode, u32
      *allField)
  - BBCount: 298
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1781
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18423
      start: 16641
    functionDepth: 0
    functionLinenumber: 16641
    functionLinenumberEnd: 18423
    functionName: BAP_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BAP_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 297
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18428,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18429,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18430,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18431,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18432,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18433,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18434,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18435,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18436,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18437,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18438,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18439,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18440,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18441,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18442,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18443,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18444,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18445,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18446,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18447,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18448,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18449,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18450,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18451,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18452,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18453,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18454,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18455,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18456,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18457,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18458,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18459,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18460,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18461,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18462,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18463,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18464,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18465,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18466,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18467,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18468,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18469,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18470,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18471,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18472,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18473,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18474,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18475,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18476,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18477,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18478,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18479,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18480,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18481,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18482,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18483,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18484,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18485,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18486,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18487,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18488,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18489,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18490,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18491,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18492,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18493,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18494,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18495,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18496,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18497,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18498,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18499,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18500,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18501,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18502,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18503,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18504,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18505,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18506,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18507,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18508,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18509,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18510,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18511,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18512,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18513,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18514,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18515,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18516,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18517,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18518,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18519,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18520,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18521,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18522,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18523,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18524,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18525,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18526,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18527,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18528,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18529,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18530,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18531,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18532,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18533,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18534,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18535,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18536,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18537,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18538,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18539,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18540,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18541,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18542,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18543,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18544,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18545,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18546,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18547,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18548,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18549,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18550,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18551,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18552,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18553,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18554,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18555,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18556,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18557,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18558,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18559,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18560,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18561,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18562,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18563,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18564,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18565,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18566,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18567,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18568,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18569,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18570,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18571,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18572,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18573,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18574,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18575,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18576,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18577,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18578,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18579,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18580,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18581,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18582,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18583,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18584,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18585,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18586,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18587,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18588,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18589,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18590,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18591,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18592,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18593,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18594,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18595,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18596,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18597,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18598,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18599,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18600,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18601,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18602,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18603,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18604,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18605,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18606,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18607,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18608,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18609,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18610,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18611,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18612,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18613,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18614,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18615,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18616,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18617,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18618,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18619,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18620,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18621,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18622,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18623,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18624,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18625,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18626,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18627,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18628,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18629,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18630,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18631,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18632,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18633,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18634,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18635,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18636,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18637,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18638,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18639,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18640,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18641,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18642,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18643,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18644,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18645,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18646,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18647,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18648,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18649,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18650,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18651,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18652,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18653,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18654,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18655,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18656,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18657,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18658,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18659,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18660,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18661,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18662,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18663,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18664,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18665,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18666,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18667,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18668,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18669,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18670,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18671,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18672,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18673,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18674,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18675,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18676,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18677,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18678,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18679,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18680,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18681,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18682,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18683,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18684,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18685,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18686,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18687,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18688,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18689,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18690,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18691,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18692,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18693,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18694,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18695,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18696,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18697,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18698,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18699,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18700,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18701,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18702,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18703,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18704,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18705,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18706,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18707,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18708,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18709,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18710,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18711,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18712,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18713,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18714,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18715,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18716,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18717,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18718,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18719,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18720,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18721,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18722,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18723,1
    CyclomaticComplexity: 296
    EdgeCount: 296
    ICount: 594
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18725
      start: 18426
    functionDepth: 0
    functionLinenumber: 18426
    functionLinenumberEnd: 18725
    functionName: BAP_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 BAP_get_field_index_by_name(char *name)
  - BBCount: 298
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1781
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20508
      start: 18726
    functionDepth: 0
    functionLinenumber: 18726
    functionLinenumberEnd: 20508
    functionName: BAP_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool BAP_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20515,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20517,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 302
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20817
      start: 20512
    functionDepth: 1
    functionLinenumber: 20512
    functionLinenumberEnd: 20817
    functionName: BAP_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *BAP_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20827,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20828,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20829,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20830
      start: 20824
    functionDepth: 1
    functionLinenumber: 20824
    functionLinenumberEnd: 20830
    functionName: BDP_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister_children
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void BDP_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20850
      start: 20836
    functionDepth: 0
    functionLinenumber: 20836
    functionLinenumberEnd: 20850
    functionName: BDP_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 BDP_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20867
      start: 20852
    functionDepth: 0
    functionLinenumber: 20852
    functionLinenumberEnd: 20867
    functionName: BDP_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BDP_get_field_index(GF_Node *n, u32 inField, u8 IndexMode, u32
      *allField)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20888
      start: 20868
    functionDepth: 0
    functionLinenumber: 20868
    functionLinenumberEnd: 20888
    functionName: BDP_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BDP_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20893,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20894,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20896
      start: 20891
    functionDepth: 0
    functionLinenumber: 20891
    functionLinenumberEnd: 20896
    functionName: BDP_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 BDP_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20903
      start: 20897
    functionDepth: 0
    functionLinenumber: 20897
    functionLinenumberEnd: 20903
    functionName: BDP_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool BDP_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20910,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20912,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20916
      start: 20907
    functionDepth: 1
    functionLinenumber: 20907
    functionLinenumberEnd: 20916
    functionName: BDP_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *BDP_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20926,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20927,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20928,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20929,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20930
      start: 20923
    functionDepth: 1
    functionLinenumber: 20923
    functionLinenumberEnd: 20930
    functionName: Body_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_unregister_children
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Body_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20950
      start: 20936
    functionDepth: 0
    functionLinenumber: 20936
    functionLinenumberEnd: 20950
    functionName: Body_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Body_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20967
      start: 20952
    functionDepth: 0
    functionLinenumber: 20952
    functionLinenumberEnd: 20967
    functionName: Body_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Body_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 26
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20995
      start: 20968
    functionDepth: 0
    functionLinenumber: 20968
    functionLinenumberEnd: 20995
    functionName: Body_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Body_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21000,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21001,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21002,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21004
      start: 20998
    functionDepth: 0
    functionLinenumber: 20998
    functionLinenumberEnd: 21004
    functionName: Body_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Body_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21011
      start: 21005
    functionDepth: 0
    functionLinenumber: 21005
    functionLinenumberEnd: 21011
    functionName: Body_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Body_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21018,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21020,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21024
      start: 21015
    functionDepth: 1
    functionLinenumber: 21015
    functionLinenumberEnd: 21024
    functionName: Body_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Body_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21034,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21035,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21036,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21037,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21038,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21039,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21040
      start: 21031
    functionDepth: 1
    functionLinenumber: 21031
    functionLinenumberEnd: 21040
    functionName: BodyDefTable_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec3f_del
    - gf_sg_sfstring_del
    - gf_sg_mfint32_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void BodyDefTable_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21060
      start: 21046
    functionDepth: 0
    functionLinenumber: 21046
    functionLinenumberEnd: 21060
    functionName: BodyDefTable_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 BodyDefTable_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21077
      start: 21062
    functionDepth: 0
    functionLinenumber: 21062
    functionLinenumberEnd: 21077
    functionName: BodyDefTable_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BodyDefTable_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21120
      start: 21078
    functionDepth: 0
    functionLinenumber: 21078
    functionLinenumberEnd: 21120
    functionName: BodyDefTable_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BodyDefTable_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21125,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21126,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21127,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21128,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21129,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21130,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21132
      start: 21123
    functionDepth: 0
    functionLinenumber: 21123
    functionLinenumberEnd: 21132
    functionName: BodyDefTable_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 BodyDefTable_get_field_index_by_name(char *name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21140,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21141,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21146,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21158,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21164
      start: 21133
    functionDepth: 1
    functionLinenumber: 21133
    functionLinenumberEnd: 21164
    functionName: BodyDefTable_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool BodyDefTable_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21171,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21173,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21178
      start: 21168
    functionDepth: 1
    functionLinenumber: 21168
    functionLinenumberEnd: 21178
    functionName: BodyDefTable_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *BodyDefTable_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21188,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21189,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21190,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21191,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21193
      start: 21185
    functionDepth: 1
    functionLinenumber: 21185
    functionLinenumberEnd: 21193
    functionName: BodySegmentConnectionHint_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_sfstring_del
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void BodySegmentConnectionHint_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21213
      start: 21199
    functionDepth: 0
    functionLinenumber: 21199
    functionLinenumberEnd: 21213
    functionName: BodySegmentConnectionHint_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 BodySegmentConnectionHint_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21230
      start: 21215
    functionDepth: 0
    functionLinenumber: 21215
    functionLinenumberEnd: 21230
    functionName: BodySegmentConnectionHint_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BodySegmentConnectionHint_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21261
      start: 21231
    functionDepth: 0
    functionLinenumber: 21231
    functionLinenumberEnd: 21261
    functionName: BodySegmentConnectionHint_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BodySegmentConnectionHint_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21266,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21267,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21268,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21269,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21271
      start: 21264
    functionDepth: 0
    functionLinenumber: 21264
    functionLinenumberEnd: 21271
    functionName: BodySegmentConnectionHint_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 BodySegmentConnectionHint_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21278,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21284,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21290
      start: 21272
    functionDepth: 1
    functionLinenumber: 21272
    functionLinenumberEnd: 21290
    functionName: BodySegmentConnectionHint_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool BodySegmentConnectionHint_get_aq_info(GF_Node *n, u32 FieldIndex,
      u8 *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21297,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21299,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21303
      start: 21294
    functionDepth: 1
    functionLinenumber: 21294
    functionLinenumberEnd: 21303
    functionName: BodySegmentConnectionHint_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *BodySegmentConnectionHint_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21313,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21314,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21315,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21316,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21317,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21319
      start: 21310
    functionDepth: 1
    functionLinenumber: 21310
    functionLinenumberEnd: 21319
    functionName: DirectiveSound_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void DirectiveSound_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21340
      start: 21326
    functionDepth: 0
    functionLinenumber: 21326
    functionLinenumberEnd: 21340
    functionName: DirectiveSound_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 DirectiveSound_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21360
      start: 21342
    functionDepth: 0
    functionLinenumber: 21342
    functionLinenumberEnd: 21360
    functionName: DirectiveSound_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DirectiveSound_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 85
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21447
      start: 21361
    functionDepth: 0
    functionLinenumber: 21361
    functionLinenumberEnd: 21447
    functionName: DirectiveSound_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DirectiveSound_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21452,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21453,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21454,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21455,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21456,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21457,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21458,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21459,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21460,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21461,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21462,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21463,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21464,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21466
      start: 21450
    functionDepth: 0
    functionLinenumber: 21450
    functionLinenumberEnd: 21466
    functionName: DirectiveSound_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 DirectiveSound_get_field_index_by_name(char *name)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21479,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21497,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21498,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21503,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21509,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21515,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 53
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21521
      start: 21467
    functionDepth: 1
    functionLinenumber: 21467
    functionLinenumberEnd: 21521
    functionName: DirectiveSound_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool DirectiveSound_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21528,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21530,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21533,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21534,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21535,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21536,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21537,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21538,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21539,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21541,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21543,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21544,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21546,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21547,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21548,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21550
      start: 21525
    functionDepth: 1
    functionLinenumber: 21525
    functionLinenumberEnd: 21550
    functionName: DirectiveSound_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *DirectiveSound_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21560,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21561,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21562
      start: 21557
    functionDepth: 1
    functionLinenumber: 21557
    functionLinenumberEnd: 21562
    functionName: Hierarchical3DMesh_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Hierarchical3DMesh_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21582
      start: 21568
    functionDepth: 0
    functionLinenumber: 21568
    functionLinenumberEnd: 21582
    functionName: Hierarchical3DMesh_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Hierarchical3DMesh_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21599
      start: 21584
    functionDepth: 0
    functionLinenumber: 21584
    functionLinenumberEnd: 21599
    functionName: Hierarchical3DMesh_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Hierarchical3DMesh_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21631
      start: 21600
    functionDepth: 0
    functionLinenumber: 21600
    functionLinenumberEnd: 21631
    functionName: Hierarchical3DMesh_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Hierarchical3DMesh_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21636,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21637,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21638,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21639,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21641
      start: 21634
    functionDepth: 0
    functionLinenumber: 21634
    functionLinenumberEnd: 21641
    functionName: Hierarchical3DMesh_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Hierarchical3DMesh_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21648,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21654,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21660
      start: 21642
    functionDepth: 1
    functionLinenumber: 21642
    functionLinenumberEnd: 21660
    functionName: Hierarchical3DMesh_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Hierarchical3DMesh_get_aq_info(GF_Node *n, u32 FieldIndex, u8
      *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21667,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21669,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21672,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21674
      start: 21664
    functionDepth: 1
    functionLinenumber: 21664
    functionLinenumberEnd: 21674
    functionName: Hierarchical3DMesh_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Hierarchical3DMesh_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21684,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21685
      start: 21681
    functionDepth: 1
    functionLinenumber: 21681
    functionLinenumberEnd: 21685
    functionName: MaterialKey_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void MaterialKey_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21706
      start: 21692
    functionDepth: 0
    functionLinenumber: 21692
    functionLinenumberEnd: 21706
    functionName: MaterialKey_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 MaterialKey_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21726
      start: 21708
    functionDepth: 0
    functionLinenumber: 21708
    functionLinenumberEnd: 21726
    functionName: MaterialKey_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MaterialKey_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21769
      start: 21727
    functionDepth: 0
    functionLinenumber: 21727
    functionLinenumberEnd: 21769
    functionName: MaterialKey_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MaterialKey_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21774,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21775,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21776,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21777,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21778,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21779,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21781
      start: 21772
    functionDepth: 0
    functionLinenumber: 21772
    functionLinenumberEnd: 21781
    functionName: MaterialKey_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 MaterialKey_get_field_index_by_name(char *name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21788,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21789,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21794,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21795,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21800,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21801,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21806,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21807,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21812
      start: 21782
    functionDepth: 1
    functionLinenumber: 21782
    functionLinenumberEnd: 21812
    functionName: MaterialKey_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool MaterialKey_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21819,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21821,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21826,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21827,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21828,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21829,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21830,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21831,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21833
      start: 21816
    functionDepth: 1
    functionLinenumber: 21816
    functionLinenumberEnd: 21833
    functionName: MaterialKey_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *MaterialKey_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21843,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21844,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21845,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21846,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21847
      start: 21840
    functionDepth: 1
    functionLinenumber: 21840
    functionLinenumberEnd: 21847
    functionName: PerceptualParameters_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void PerceptualParameters_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21868
      start: 21854
    functionDepth: 0
    functionLinenumber: 21854
    functionLinenumberEnd: 21868
    functionName: PerceptualParameters_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PerceptualParameters_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21888
      start: 21870
    functionDepth: 0
    functionLinenumber: 21870
    functionLinenumberEnd: 21888
    functionName: PerceptualParameters_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PerceptualParameters_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 119
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22009
      start: 21889
    functionDepth: 0
    functionLinenumber: 21889
    functionLinenumberEnd: 22009
    functionName: PerceptualParameters_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PerceptualParameters_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22014,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22015,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22016,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22017,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22018,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22019,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22020,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22021,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22022,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22023,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22024,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22025,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22026,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22027,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22028,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22029,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22030,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22031,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22032,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 40
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22034
      start: 22012
    functionDepth: 0
    functionLinenumber: 22012
    functionLinenumberEnd: 22034
    functionName: PerceptualParameters_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PerceptualParameters_get_field_index_by_name(char *name)
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 119
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22155
      start: 22035
    functionDepth: 0
    functionLinenumber: 22035
    functionLinenumberEnd: 22155
    functionName: PerceptualParameters_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool PerceptualParameters_get_aq_info(GF_Node *n, u32 FieldIndex, u8
      *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22162,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22164,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22167,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22168,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22169,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22170,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22171,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22172,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22173,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22174,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22175,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22176,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22178,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22179,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22181,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22182,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22183,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22184,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22186,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22187,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22188,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22189,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22190,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22197
      start: 22159
    functionDepth: 1
    functionLinenumber: 22159
    functionLinenumberEnd: 22197
    functionName: PerceptualParameters_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PerceptualParameters_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22207,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22208,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22209,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22210,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22212
      start: 22204
    functionDepth: 1
    functionLinenumber: 22204
    functionLinenumberEnd: 22212
    functionName: TemporalTransform_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfurl_del
    - gf_sg_vrml_parent_destroy
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void TemporalTransform_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22233
      start: 22219
    functionDepth: 0
    functionLinenumber: 22219
    functionLinenumberEnd: 22233
    functionName: TemporalTransform_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 TemporalTransform_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22253
      start: 22235
    functionDepth: 0
    functionLinenumber: 22235
    functionLinenumberEnd: 22253
    functionName: TemporalTransform_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TemporalTransform_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 88
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22343
      start: 22254
    functionDepth: 0
    functionLinenumber: 22254
    functionLinenumberEnd: 22343
    functionName: TemporalTransform_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TemporalTransform_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22348,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22349,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22350,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22351,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22352,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22353,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22354,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22355,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22356,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22357,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22358,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22359,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22360,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22362
      start: 22346
    functionDepth: 0
    functionLinenumber: 22346
    functionLinenumberEnd: 22362
    functionName: TemporalTransform_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 TemporalTransform_get_field_index_by_name(char *name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22375,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22382,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22383,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22389,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22390,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22395
      start: 22363
    functionDepth: 1
    functionLinenumber: 22363
    functionLinenumberEnd: 22395
    functionName: TemporalTransform_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool TemporalTransform_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22402,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22404,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22405,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22410,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22411,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22412,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22413,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22416,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22421
      start: 22399
    functionDepth: 1
    functionLinenumber: 22399
    functionLinenumberEnd: 22421
    functionName: TemporalTransform_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *TemporalTransform_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22431,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22432,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22433,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22434
      start: 22428
    functionDepth: 1
    functionLinenumber: 22428
    functionLinenumberEnd: 22434
    functionName: TemporalGroup_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void TemporalGroup_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22454
      start: 22440
    functionDepth: 0
    functionLinenumber: 22440
    functionLinenumberEnd: 22454
    functionName: TemporalGroup_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 TemporalGroup_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22471
      start: 22456
    functionDepth: 0
    functionLinenumber: 22456
    functionLinenumberEnd: 22471
    functionName: TemporalGroup_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TemporalGroup_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 64
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22537
      start: 22472
    functionDepth: 0
    functionLinenumber: 22472
    functionLinenumberEnd: 22537
    functionName: TemporalGroup_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TemporalGroup_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22542,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22543,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22544,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22545,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22546,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22547,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22548,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22549,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22550,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22552
      start: 22540
    functionDepth: 0
    functionLinenumber: 22540
    functionLinenumberEnd: 22552
    functionName: TemporalGroup_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 TemporalGroup_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22559,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22565
      start: 22553
    functionDepth: 1
    functionLinenumber: 22553
    functionLinenumberEnd: 22565
    functionName: TemporalGroup_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool TemporalGroup_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22572,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22574,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22575,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22580
      start: 22569
    functionDepth: 1
    functionLinenumber: 22569
    functionLinenumberEnd: 22580
    functionName: TemporalGroup_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *TemporalGroup_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22590,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22591,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22592,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22593
      start: 22587
    functionDepth: 1
    functionLinenumber: 22587
    functionLinenumberEnd: 22593
    functionName: ServerCommand_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void ServerCommand_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22613
      start: 22599
    functionDepth: 0
    functionLinenumber: 22599
    functionLinenumberEnd: 22613
    functionName: ServerCommand_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ServerCommand_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22630
      start: 22615
    functionDepth: 0
    functionLinenumber: 22615
    functionLinenumberEnd: 22630
    functionName: ServerCommand_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ServerCommand_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22662
      start: 22631
    functionDepth: 0
    functionLinenumber: 22631
    functionLinenumberEnd: 22662
    functionName: ServerCommand_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ServerCommand_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22667,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22668,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22669,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22670,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22672
      start: 22665
    functionDepth: 0
    functionLinenumber: 22665
    functionLinenumberEnd: 22672
    functionName: ServerCommand_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ServerCommand_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22679
      start: 22673
    functionDepth: 0
    functionLinenumber: 22673
    functionLinenumberEnd: 22679
    functionName: ServerCommand_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool ServerCommand_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22686,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22688,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22692
      start: 22683
    functionDepth: 1
    functionLinenumber: 22683
    functionLinenumberEnd: 22692
    functionName: ServerCommand_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ServerCommand_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfcommand_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22702,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22703,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22704,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22705
      start: 22699
    functionDepth: 1
    functionLinenumber: 22699
    functionLinenumberEnd: 22705
    functionName: InputSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_node_free
    - gf_sg_sfcommand_del
    linkageType: ''
    returnType: void
    signature: void InputSensor_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22725
      start: 22711
    functionDepth: 0
    functionLinenumber: 22711
    functionLinenumberEnd: 22725
    functionName: InputSensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 InputSensor_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22742
      start: 22727
    functionDepth: 0
    functionLinenumber: 22727
    functionLinenumberEnd: 22742
    functionName: InputSensor_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err InputSensor_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22773
      start: 22743
    functionDepth: 0
    functionLinenumber: 22743
    functionLinenumberEnd: 22773
    functionName: InputSensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err InputSensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22778,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22779,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22780,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22781,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22783
      start: 22776
    functionDepth: 0
    functionLinenumber: 22776
    functionLinenumberEnd: 22783
    functionName: InputSensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 InputSensor_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22790
      start: 22784
    functionDepth: 0
    functionLinenumber: 22784
    functionLinenumberEnd: 22790
    functionName: InputSensor_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool InputSensor_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22797,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22799,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22800,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22805
      start: 22794
    functionDepth: 1
    functionLinenumber: 22794
    functionLinenumberEnd: 22805
    functionName: InputSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *InputSensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22815,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22816,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22817,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22818,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22819,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22820,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22821
      start: 22812
    functionDepth: 1
    functionLinenumber: 22812
    functionLinenumberEnd: 22821
    functionName: MatteTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void MatteTexture_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22841
      start: 22827
    functionDepth: 0
    functionLinenumber: 22827
    functionLinenumberEnd: 22841
    functionName: MatteTexture_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 MatteTexture_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22858
      start: 22843
    functionDepth: 0
    functionLinenumber: 22843
    functionLinenumberEnd: 22858
    functionName: MatteTexture_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MatteTexture_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 50
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22910
      start: 22859
    functionDepth: 0
    functionLinenumber: 22859
    functionLinenumberEnd: 22910
    functionName: MatteTexture_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MatteTexture_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22915,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22916,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22917,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22918,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22919,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22920,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22921,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22923
      start: 22913
    functionDepth: 0
    functionLinenumber: 22913
    functionLinenumberEnd: 22923
    functionName: MatteTexture_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 MatteTexture_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22930
      start: 22924
    functionDepth: 0
    functionLinenumber: 22924
    functionLinenumberEnd: 22930
    functionName: MatteTexture_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool MatteTexture_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22937,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22939,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22942,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22943,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22945,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22947
      start: 22934
    functionDepth: 1
    functionLinenumber: 22934
    functionLinenumberEnd: 22947
    functionName: MatteTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *MatteTexture_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22957,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22958,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22959
      start: 22954
    functionDepth: 1
    functionLinenumber: 22954
    functionLinenumberEnd: 22959
    functionName: MediaBuffer_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void MediaBuffer_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22979
      start: 22965
    functionDepth: 0
    functionLinenumber: 22965
    functionLinenumberEnd: 22979
    functionName: MediaBuffer_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 MediaBuffer_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22996
      start: 22981
    functionDepth: 0
    functionLinenumber: 22981
    functionLinenumberEnd: 22996
    functionName: MediaBuffer_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MediaBuffer_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23039
      start: 22997
    functionDepth: 0
    functionLinenumber: 22997
    functionLinenumberEnd: 23039
    functionName: MediaBuffer_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MediaBuffer_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23044,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23045,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23046,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23047,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23048,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23049,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23051
      start: 23042
    functionDepth: 0
    functionLinenumber: 23042
    functionLinenumberEnd: 23051
    functionName: MediaBuffer_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 MediaBuffer_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23058
      start: 23052
    functionDepth: 0
    functionLinenumber: 23052
    functionLinenumberEnd: 23058
    functionName: MediaBuffer_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool MediaBuffer_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23065,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23067,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23070,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23075
      start: 23062
    functionDepth: 1
    functionLinenumber: 23062
    functionLinenumberEnd: 23075
    functionName: MediaBuffer_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *MediaBuffer_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23085,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23086,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23087
      start: 23082
    functionDepth: 1
    functionLinenumber: 23082
    functionLinenumberEnd: 23087
    functionName: MediaControl_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void MediaControl_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23107
      start: 23093
    functionDepth: 0
    functionLinenumber: 23093
    functionLinenumberEnd: 23107
    functionName: MediaControl_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 MediaControl_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23124
      start: 23109
    functionDepth: 0
    functionLinenumber: 23109
    functionLinenumberEnd: 23124
    functionName: MediaControl_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MediaControl_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 59
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23185
      start: 23125
    functionDepth: 0
    functionLinenumber: 23125
    functionLinenumberEnd: 23185
    functionName: MediaControl_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MediaControl_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23190,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23191,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23192,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23193,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23194,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23195,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23196,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23197,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23198,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23200
      start: 23188
    functionDepth: 0
    functionLinenumber: 23188
    functionLinenumberEnd: 23200
    functionName: MediaControl_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 MediaControl_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23207
      start: 23201
    functionDepth: 0
    functionLinenumber: 23201
    functionLinenumberEnd: 23207
    functionName: MediaControl_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool MediaControl_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23214,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23216,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23221,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23225
      start: 23211
    functionDepth: 1
    functionLinenumber: 23211
    functionLinenumberEnd: 23225
    functionName: MediaControl_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *MediaControl_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23235,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23236,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23238
      start: 23232
    functionDepth: 1
    functionLinenumber: 23232
    functionLinenumberEnd: 23238
    functionName: MediaSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_sg_mfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void MediaSensor_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23258
      start: 23244
    functionDepth: 0
    functionLinenumber: 23244
    functionLinenumberEnd: 23258
    functionName: MediaSensor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 MediaSensor_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23275
      start: 23260
    functionDepth: 0
    functionLinenumber: 23260
    functionLinenumberEnd: 23275
    functionName: MediaSensor_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MediaSensor_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23318
      start: 23276
    functionDepth: 0
    functionLinenumber: 23276
    functionLinenumberEnd: 23318
    functionName: MediaSensor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MediaSensor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23323,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23324,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23325,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23326,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23327,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23328,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23330
      start: 23321
    functionDepth: 0
    functionLinenumber: 23321
    functionLinenumberEnd: 23330
    functionName: MediaSensor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 MediaSensor_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23337
      start: 23331
    functionDepth: 0
    functionLinenumber: 23331
    functionLinenumberEnd: 23337
    functionName: MediaSensor_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool MediaSensor_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23344,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23346,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23350
      start: 23341
    functionDepth: 1
    functionLinenumber: 23341
    functionLinenumberEnd: 23350
    functionName: MediaSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *MediaSensor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23360,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23361,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23362,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23363,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23364
      start: 23357
    functionDepth: 1
    functionLinenumber: 23357
    functionLinenumberEnd: 23364
    functionName: BitWrapper_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_mfurl_del
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void BitWrapper_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23382
      start: 23368
    functionDepth: 0
    functionLinenumber: 23368
    functionLinenumberEnd: 23382
    functionName: BitWrapper_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 BitWrapper_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23393
      start: 23384
    functionDepth: 0
    functionLinenumber: 23384
    functionLinenumberEnd: 23393
    functionName: BitWrapper_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BitWrapper_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23425
      start: 23394
    functionDepth: 0
    functionLinenumber: 23394
    functionLinenumberEnd: 23425
    functionName: BitWrapper_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BitWrapper_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23430,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23431,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23432,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23433,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23435
      start: 23428
    functionDepth: 0
    functionLinenumber: 23428
    functionLinenumberEnd: 23435
    functionName: BitWrapper_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 BitWrapper_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23442
      start: 23436
    functionDepth: 0
    functionLinenumber: 23436
    functionLinenumberEnd: 23442
    functionName: BitWrapper_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool BitWrapper_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23449,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23451,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23456
      start: 23446
    functionDepth: 1
    functionLinenumber: 23446
    functionLinenumberEnd: 23456
    functionName: BitWrapper_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *BitWrapper_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23466,1
    - Dst: gf_sg_mfvec4f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23467,1
    - Dst: gf_sg_mfvec4f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23468,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23469,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23470
      start: 23463
    functionDepth: 1
    functionLinenumber: 23463
    functionLinenumberEnd: 23470
    functionName: CoordinateInterpolator4D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfvec4f_del
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void CoordinateInterpolator4D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23490
      start: 23476
    functionDepth: 0
    functionLinenumber: 23476
    functionLinenumberEnd: 23490
    functionName: CoordinateInterpolator4D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 CoordinateInterpolator4D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23507
      start: 23492
    functionDepth: 0
    functionLinenumber: 23492
    functionLinenumberEnd: 23507
    functionName: CoordinateInterpolator4D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CoordinateInterpolator4D_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23539
      start: 23508
    functionDepth: 0
    functionLinenumber: 23508
    functionLinenumberEnd: 23539
    functionName: CoordinateInterpolator4D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CoordinateInterpolator4D_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23544,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23545,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23546,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23547,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23549
      start: 23542
    functionDepth: 0
    functionLinenumber: 23542
    functionLinenumberEnd: 23549
    functionName: CoordinateInterpolator4D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 CoordinateInterpolator4D_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23556,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23557,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23568
      start: 23550
    functionDepth: 1
    functionLinenumber: 23550
    functionLinenumberEnd: 23568
    functionName: CoordinateInterpolator4D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool CoordinateInterpolator4D_get_aq_info(GF_Node *n, u32 FieldIndex,
      u8 *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23575,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23577,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23581
      start: 23572
    functionDepth: 1
    functionLinenumber: 23572
    functionLinenumberEnd: 23581
    functionName: CoordinateInterpolator4D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *CoordinateInterpolator4D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23591,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23592,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23593
      start: 23588
    functionDepth: 1
    functionLinenumber: 23588
    functionLinenumberEnd: 23593
    functionName: DepthImage_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void DepthImage_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23611
      start: 23597
    functionDepth: 0
    functionLinenumber: 23597
    functionLinenumberEnd: 23611
    functionName: DepthImage_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 DepthImage_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23622
      start: 23613
    functionDepth: 0
    functionLinenumber: 23613
    functionLinenumberEnd: 23622
    functionName: DepthImage_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DepthImage_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 48
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23672
      start: 23623
    functionDepth: 0
    functionLinenumber: 23623
    functionLinenumberEnd: 23672
    functionName: DepthImage_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DepthImage_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23677,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23678,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23679,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23680,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23681,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23682,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23683,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23685
      start: 23675
    functionDepth: 0
    functionLinenumber: 23675
    functionLinenumberEnd: 23685
    functionName: DepthImage_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 DepthImage_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23692
      start: 23686
    functionDepth: 0
    functionLinenumber: 23686
    functionLinenumberEnd: 23692
    functionName: DepthImage_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool DepthImage_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23699,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23701,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23704,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23705,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23706,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23707,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23708,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23709,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23710,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23711,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23713,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23714,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23715,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23717
      start: 23696
    functionDepth: 1
    functionLinenumber: 23696
    functionLinenumberEnd: 23717
    functionName: DepthImage_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *DepthImage_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec4f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23727,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23728,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23729,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23730,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23731,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23732,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23733
      start: 23724
    functionDepth: 1
    functionLinenumber: 23724
    functionLinenumberEnd: 23733
    functionName: FFD_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - gf_sg_mfvec4f_del
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void FFD_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23754
      start: 23740
    functionDepth: 0
    functionLinenumber: 23740
    functionLinenumberEnd: 23754
    functionName: FFD_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 FFD_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23774
      start: 23756
    functionDepth: 0
    functionLinenumber: 23756
    functionLinenumberEnd: 23774
    functionName: FFD_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FFD_get_field_index(GF_Node *n, u32 inField, u8 IndexMode, u32
      *allField)
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 88
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23864
      start: 23775
    functionDepth: 0
    functionLinenumber: 23775
    functionLinenumberEnd: 23864
    functionName: FFD_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FFD_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23869,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23870,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23871,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23872,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23873,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23874,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23875,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23876,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23877,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23878,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23879,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23880,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23881,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23883
      start: 23867
    functionDepth: 0
    functionLinenumber: 23867
    functionLinenumberEnd: 23883
    functionName: FFD_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 FFD_get_field_index_by_name(char *name)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23897,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23898,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23904,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23905,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23911,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23912,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23918,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23919,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23925,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23926,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23932,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23933,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 53
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23938
      start: 23884
    functionDepth: 1
    functionLinenumber: 23884
    functionLinenumberEnd: 23938
    functionName: FFD_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool FFD_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23945,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23947,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23948,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23958
      start: 23942
    functionDepth: 1
    functionLinenumber: 23942
    functionLinenumberEnd: 23958
    functionName: FFD_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *FFD_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23968,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23969,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23970,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23971
      start: 23965
    functionDepth: 1
    functionLinenumber: 23965
    functionLinenumberEnd: 23971
    functionName: Implicit_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfint32_del
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void Implicit_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23992
      start: 23978
    functionDepth: 0
    functionLinenumber: 23978
    functionLinenumberEnd: 23992
    functionName: Implicit_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Implicit_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24012
      start: 23994
    functionDepth: 0
    functionLinenumber: 23994
    functionLinenumberEnd: 24012
    functionName: Implicit_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Implicit_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 35
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24049
      start: 24013
    functionDepth: 0
    functionLinenumber: 24013
    functionLinenumberEnd: 24049
    functionName: Implicit_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Implicit_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24054,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24055,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24056,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24057,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24058,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24060
      start: 24052
    functionDepth: 0
    functionLinenumber: 24052
    functionLinenumberEnd: 24060
    functionName: Implicit_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Implicit_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24067,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24079
      start: 24061
    functionDepth: 1
    functionLinenumber: 24061
    functionLinenumberEnd: 24079
    functionName: Implicit_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Implicit_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24086,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24088,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24091,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24092,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24093,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24095
      start: 24083
    functionDepth: 1
    functionLinenumber: 24083
    functionLinenumberEnd: 24095
    functionName: Implicit_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Implicit_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24105,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24106,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24107,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24108,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24110
      start: 24102
    functionDepth: 1
    functionLinenumber: 24102
    functionLinenumberEnd: 24110
    functionName: XXLFM_Appearance_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_unregister_children
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void XXLFM_Appearance_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24130
      start: 24116
    functionDepth: 0
    functionLinenumber: 24116
    functionLinenumberEnd: 24130
    functionName: XXLFM_Appearance_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 XXLFM_Appearance_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24147
      start: 24132
    functionDepth: 0
    functionLinenumber: 24132
    functionLinenumberEnd: 24147
    functionName: XXLFM_Appearance_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XXLFM_Appearance_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 33
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24182
      start: 24148
    functionDepth: 0
    functionLinenumber: 24148
    functionLinenumberEnd: 24182
    functionName: XXLFM_Appearance_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XXLFM_Appearance_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24187,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24188,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24189,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24190,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24192
      start: 24185
    functionDepth: 0
    functionLinenumber: 24185
    functionLinenumberEnd: 24192
    functionName: XXLFM_Appearance_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 XXLFM_Appearance_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24199
      start: 24193
    functionDepth: 0
    functionLinenumber: 24193
    functionLinenumberEnd: 24199
    functionName: XXLFM_Appearance_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool XXLFM_Appearance_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24206,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24208,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24212
      start: 24203
    functionDepth: 1
    functionLinenumber: 24203
    functionLinenumberEnd: 24212
    functionName: XXLFM_Appearance_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *XXLFM_Appearance_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24222,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24223,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24225
      start: 24219
    functionDepth: 1
    functionLinenumber: 24219
    functionLinenumberEnd: 24225
    functionName: XXLFM_BlendList_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void XXLFM_BlendList_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24245
      start: 24231
    functionDepth: 0
    functionLinenumber: 24231
    functionLinenumberEnd: 24245
    functionName: XXLFM_BlendList_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 XXLFM_BlendList_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24262
      start: 24247
    functionDepth: 0
    functionLinenumber: 24247
    functionLinenumberEnd: 24262
    functionName: XXLFM_BlendList_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XXLFM_BlendList_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24281
      start: 24263
    functionDepth: 0
    functionLinenumber: 24263
    functionLinenumberEnd: 24281
    functionName: XXLFM_BlendList_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XXLFM_BlendList_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24286,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24287,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24289
      start: 24284
    functionDepth: 0
    functionLinenumber: 24284
    functionLinenumberEnd: 24289
    functionName: XXLFM_BlendList_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 XXLFM_BlendList_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24297,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24298,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24307
      start: 24290
    functionDepth: 1
    functionLinenumber: 24290
    functionLinenumberEnd: 24307
    functionName: XXLFM_BlendList_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool XXLFM_BlendList_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24314,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24316,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24320
      start: 24311
    functionDepth: 1
    functionLinenumber: 24311
    functionLinenumberEnd: 24320
    functionName: XXLFM_BlendList_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *XXLFM_BlendList_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24330,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24331,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24332,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24333
      start: 24327
    functionDepth: 1
    functionLinenumber: 24327
    functionLinenumberEnd: 24333
    functionName: XXLFM_FrameList_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec3f_del
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void XXLFM_FrameList_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24353
      start: 24339
    functionDepth: 0
    functionLinenumber: 24339
    functionLinenumberEnd: 24353
    functionName: XXLFM_FrameList_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 XXLFM_FrameList_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24370
      start: 24355
    functionDepth: 0
    functionLinenumber: 24355
    functionLinenumberEnd: 24370
    functionName: XXLFM_FrameList_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XXLFM_FrameList_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24389
      start: 24371
    functionDepth: 0
    functionLinenumber: 24371
    functionLinenumberEnd: 24389
    functionName: XXLFM_FrameList_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XXLFM_FrameList_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24394,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24395,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24397
      start: 24392
    functionDepth: 0
    functionLinenumber: 24392
    functionLinenumberEnd: 24397
    functionName: XXLFM_FrameList_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 XXLFM_FrameList_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24408,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24409,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24414
      start: 24398
    functionDepth: 1
    functionLinenumber: 24398
    functionLinenumberEnd: 24414
    functionName: XXLFM_FrameList_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool XXLFM_FrameList_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24421,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24423,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24426,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24429,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24431,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24432,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24433,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24434,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24435,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24436,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24437,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24438,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24439,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24441
      start: 24418
    functionDepth: 1
    functionLinenumber: 24418
    functionLinenumberEnd: 24441
    functionName: XXLFM_FrameList_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *XXLFM_FrameList_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24451,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24452,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24453,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24454
      start: 24448
    functionDepth: 1
    functionLinenumber: 24448
    functionLinenumberEnd: 24454
    functionName: XXLFM_LightMap_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void XXLFM_LightMap_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24474
      start: 24460
    functionDepth: 0
    functionLinenumber: 24460
    functionLinenumberEnd: 24474
    functionName: XXLFM_LightMap_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 XXLFM_LightMap_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24491
      start: 24476
    functionDepth: 0
    functionLinenumber: 24476
    functionLinenumberEnd: 24491
    functionName: XXLFM_LightMap_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XXLFM_LightMap_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 37
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24530
      start: 24492
    functionDepth: 0
    functionLinenumber: 24492
    functionLinenumberEnd: 24530
    functionName: XXLFM_LightMap_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XXLFM_LightMap_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24535,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24536,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24537,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24538,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24539,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24541
      start: 24533
    functionDepth: 0
    functionLinenumber: 24533
    functionLinenumberEnd: 24541
    functionName: XXLFM_LightMap_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 XXLFM_LightMap_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24548,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24549,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24555,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24556,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24561,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24562,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24567
      start: 24542
    functionDepth: 1
    functionLinenumber: 24542
    functionLinenumberEnd: 24567
    functionName: XXLFM_LightMap_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool XXLFM_LightMap_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24574,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24576,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24579,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24580,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24581,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24583,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24584,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24585,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24587
      start: 24571
    functionDepth: 1
    functionLinenumber: 24571
    functionLinenumberEnd: 24587
    functionName: XXLFM_LightMap_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *XXLFM_LightMap_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24597,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24598,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24599,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24600,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24601,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24602
      start: 24594
    functionDepth: 1
    functionLinenumber: 24594
    functionLinenumberEnd: 24602
    functionName: XXLFM_SurfaceMapList_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void XXLFM_SurfaceMapList_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24622
      start: 24608
    functionDepth: 0
    functionLinenumber: 24608
    functionLinenumberEnd: 24622
    functionName: XXLFM_SurfaceMapList_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 XXLFM_SurfaceMapList_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24639
      start: 24624
    functionDepth: 0
    functionLinenumber: 24624
    functionLinenumberEnd: 24639
    functionName: XXLFM_SurfaceMapList_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XXLFM_SurfaceMapList_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24671
      start: 24640
    functionDepth: 0
    functionLinenumber: 24640
    functionLinenumberEnd: 24671
    functionName: XXLFM_SurfaceMapList_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XXLFM_SurfaceMapList_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24676,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24677,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24678,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24679,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24681
      start: 24674
    functionDepth: 0
    functionLinenumber: 24674
    functionLinenumberEnd: 24681
    functionName: XXLFM_SurfaceMapList_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 XXLFM_SurfaceMapList_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24700
      start: 24682
    functionDepth: 0
    functionLinenumber: 24682
    functionLinenumberEnd: 24700
    functionName: XXLFM_SurfaceMapList_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool XXLFM_SurfaceMapList_get_aq_info(GF_Node *n, u32 FieldIndex, u8
      *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24707,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24709,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24713
      start: 24704
    functionDepth: 1
    functionLinenumber: 24704
    functionLinenumberEnd: 24713
    functionName: XXLFM_SurfaceMapList_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *XXLFM_SurfaceMapList_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24723,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24724,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24725,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24726,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24727,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24728
      start: 24720
    functionDepth: 1
    functionLinenumber: 24720
    functionLinenumberEnd: 24728
    functionName: XXLFM_ViewMapList_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void XXLFM_ViewMapList_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24748
      start: 24734
    functionDepth: 0
    functionLinenumber: 24734
    functionLinenumberEnd: 24748
    functionName: XXLFM_ViewMapList_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 XXLFM_ViewMapList_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24765
      start: 24750
    functionDepth: 0
    functionLinenumber: 24750
    functionLinenumberEnd: 24765
    functionName: XXLFM_ViewMapList_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XXLFM_ViewMapList_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24798
      start: 24766
    functionDepth: 0
    functionLinenumber: 24766
    functionLinenumberEnd: 24798
    functionName: XXLFM_ViewMapList_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XXLFM_ViewMapList_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24803,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24804,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24805,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24806,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24808
      start: 24801
    functionDepth: 0
    functionLinenumber: 24801
    functionLinenumberEnd: 24808
    functionName: XXLFM_ViewMapList_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 XXLFM_ViewMapList_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24823
      start: 24809
    functionDepth: 0
    functionLinenumber: 24809
    functionLinenumberEnd: 24823
    functionName: XXLFM_ViewMapList_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool XXLFM_ViewMapList_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24830,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24832,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24836
      start: 24827
    functionDepth: 1
    functionLinenumber: 24827
    functionLinenumberEnd: 24836
    functionName: XXLFM_ViewMapList_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *XXLFM_ViewMapList_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24846,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24847,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24848,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24849,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24850,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24851,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24852,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24853,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24854,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24855,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24856,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24857,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24858,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24859,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24860,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24861,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24862,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24863,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24864,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 20
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24865
      start: 24843
    functionDepth: 1
    functionLinenumber: 24843
    functionLinenumberEnd: 24865
    functionName: MeshGrid_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void MeshGrid_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24886
      start: 24872
    functionDepth: 0
    functionLinenumber: 24872
    functionLinenumberEnd: 24886
    functionName: MeshGrid_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 MeshGrid_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24906
      start: 24888
    functionDepth: 0
    functionLinenumber: 24888
    functionLinenumberEnd: 24906
    functionName: MeshGrid_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MeshGrid_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 25
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 152
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25060
      start: 24907
    functionDepth: 0
    functionLinenumber: 24907
    functionLinenumberEnd: 25060
    functionName: MeshGrid_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MeshGrid_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25065,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25066,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25067,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25068,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25069,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25070,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25071,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25072,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25073,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25074,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25075,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25076,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25077,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25078,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25079,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25080,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25081,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25082,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25083,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25084,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25085,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25086,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25087,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 48
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25089
      start: 25063
    functionDepth: 0
    functionLinenumber: 25063
    functionLinenumberEnd: 25089
    functionName: MeshGrid_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 MeshGrid_get_field_index_by_name(char *name)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25097,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25104,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25105,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25111,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25125,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25126,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25132,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25133,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25138,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25144,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25150,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25156,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 71
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25162
      start: 25090
    functionDepth: 1
    functionLinenumber: 25090
    functionLinenumberEnd: 25162
    functionName: MeshGrid_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool MeshGrid_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25169,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25179
      start: 25166
    functionDepth: 1
    functionLinenumber: 25166
    functionLinenumberEnd: 25179
    functionName: MeshGrid_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *MeshGrid_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25189,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25190,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25192
      start: 25186
    functionDepth: 1
    functionLinenumber: 25186
    functionLinenumberEnd: 25192
    functionName: NonLinearDeformer_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void NonLinearDeformer_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25212
      start: 25198
    functionDepth: 0
    functionLinenumber: 25198
    functionLinenumberEnd: 25212
    functionName: NonLinearDeformer_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NonLinearDeformer_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25229
      start: 25214
    functionDepth: 0
    functionLinenumber: 25214
    functionLinenumberEnd: 25229
    functionName: NonLinearDeformer_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NonLinearDeformer_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 36
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25267
      start: 25230
    functionDepth: 0
    functionLinenumber: 25230
    functionLinenumberEnd: 25267
    functionName: NonLinearDeformer_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NonLinearDeformer_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25272,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25273,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25274,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25275,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25276,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25278
      start: 25270
    functionDepth: 0
    functionLinenumber: 25270
    functionLinenumberEnd: 25278
    functionName: NonLinearDeformer_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 NonLinearDeformer_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25285
      start: 25279
    functionDepth: 0
    functionLinenumber: 25279
    functionLinenumberEnd: 25285
    functionName: NonLinearDeformer_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool NonLinearDeformer_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25292,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25294,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25297,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25298,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25299,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25300,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25303
      start: 25289
    functionDepth: 1
    functionLinenumber: 25289
    functionLinenumberEnd: 25303
    functionName: NonLinearDeformer_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *NonLinearDeformer_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25313,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25314,1
    - Dst: gf_sg_mfvec4f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25315,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25316,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25317,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25319
      start: 25310
    functionDepth: 1
    functionLinenumber: 25310
    functionLinenumberEnd: 25319
    functionName: NurbsCurve_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfint32_del
    - gf_node_free
    - gf_sg_mfvec4f_del
    - gf_sg_mffloat_del
    - gf_node_unregister
    linkageType: ''
    returnType: void
    signature: void NurbsCurve_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25340
      start: 25326
    functionDepth: 0
    functionLinenumber: 25326
    functionLinenumberEnd: 25340
    functionName: NurbsCurve_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NurbsCurve_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25360
      start: 25342
    functionDepth: 0
    functionLinenumber: 25342
    functionLinenumberEnd: 25360
    functionName: NurbsCurve_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NurbsCurve_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 55
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25417
      start: 25361
    functionDepth: 0
    functionLinenumber: 25361
    functionLinenumberEnd: 25417
    functionName: NurbsCurve_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NurbsCurve_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25422,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25423,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25424,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25425,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25426,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25427,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25428,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25429,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25431
      start: 25420
    functionDepth: 0
    functionLinenumber: 25420
    functionLinenumberEnd: 25431
    functionName: NurbsCurve_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 NurbsCurve_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25449,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25450,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25455
      start: 25432
    functionDepth: 1
    functionLinenumber: 25432
    functionLinenumberEnd: 25455
    functionName: NurbsCurve_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool NurbsCurve_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25462,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25464,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25471
      start: 25459
    functionDepth: 1
    functionLinenumber: 25459
    functionLinenumberEnd: 25471
    functionName: NurbsCurve_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *NurbsCurve_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25481,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25482,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25483,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25484,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25485,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25486,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25487
      start: 25478
    functionDepth: 1
    functionLinenumber: 25478
    functionLinenumberEnd: 25487
    functionName: NurbsCurve2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfint32_del
    - gf_node_free
    - gf_sg_mfvec3f_del
    - gf_sg_mffloat_del
    - gf_node_unregister
    linkageType: ''
    returnType: void
    signature: void NurbsCurve2D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25508
      start: 25494
    functionDepth: 0
    functionLinenumber: 25494
    functionLinenumberEnd: 25508
    functionName: NurbsCurve2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NurbsCurve2D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25528
      start: 25510
    functionDepth: 0
    functionLinenumber: 25510
    functionLinenumberEnd: 25528
    functionName: NurbsCurve2D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NurbsCurve2D_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 55
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25585
      start: 25529
    functionDepth: 0
    functionLinenumber: 25529
    functionLinenumberEnd: 25585
    functionName: NurbsCurve2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NurbsCurve2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25590,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25591,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25592,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25593,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25594,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25595,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25596,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25597,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25599
      start: 25588
    functionDepth: 0
    functionLinenumber: 25588
    functionLinenumberEnd: 25599
    functionName: NurbsCurve2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 NurbsCurve2D_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25617,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25618,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25623
      start: 25600
    functionDepth: 1
    functionLinenumber: 25600
    functionLinenumberEnd: 25623
    functionName: NurbsCurve2D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool NurbsCurve2D_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25630,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25632,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25639
      start: 25627
    functionDepth: 1
    functionLinenumber: 25627
    functionLinenumberEnd: 25639
    functionName: NurbsCurve2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *NurbsCurve2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25649,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25650,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25651,1
    - Dst: gf_sg_mfvec4f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25652,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25653,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25654,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25655,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25656,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25657,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25658,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25659
      start: 25646
    functionDepth: 1
    functionLinenumber: 25646
    functionLinenumberEnd: 25659
    functionName: NurbsSurface_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfint32_del
    - gf_node_free
    - gf_sg_mfvec4f_del
    - gf_sg_mffloat_del
    - gf_node_unregister
    linkageType: ''
    returnType: void
    signature: void NurbsSurface_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25680
      start: 25666
    functionDepth: 0
    functionLinenumber: 25666
    functionLinenumberEnd: 25680
    functionName: NurbsSurface_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 NurbsSurface_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25700
      start: 25682
    functionDepth: 0
    functionLinenumber: 25682
    functionLinenumberEnd: 25700
    functionName: NurbsSurface_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NurbsSurface_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 20
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 117
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25819
      start: 25701
    functionDepth: 0
    functionLinenumber: 25701
    functionLinenumberEnd: 25819
    functionName: NurbsSurface_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err NurbsSurface_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25824,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25825,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25826,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25827,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25828,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25829,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25830,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25831,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25832,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25833,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25834,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25835,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25836,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25837,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25838,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25839,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25840,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25841,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 38
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25843
      start: 25822
    functionDepth: 0
    functionLinenumber: 25822
    functionLinenumberEnd: 25843
    functionName: NurbsSurface_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 NurbsSurface_get_field_index_by_name(char *name)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25865,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25866,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25872,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25873,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25879,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25880,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25886,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25887,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 47
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25892
      start: 25844
    functionDepth: 1
    functionLinenumber: 25844
    functionLinenumberEnd: 25892
    functionName: NurbsSurface_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool NurbsSurface_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25899,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25901,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25914
      start: 25896
    functionDepth: 1
    functionLinenumber: 25896
    functionLinenumberEnd: 25914
    functionName: NurbsSurface_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *NurbsSurface_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25924,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25925,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25926,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25927,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25928
      start: 25921
    functionDepth: 1
    functionLinenumber: 25921
    functionLinenumberEnd: 25928
    functionName: OctreeImage_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister_children
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void OctreeImage_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25946
      start: 25932
    functionDepth: 0
    functionLinenumber: 25932
    functionLinenumberEnd: 25946
    functionName: OctreeImage_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 OctreeImage_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25957
      start: 25948
    functionDepth: 0
    functionLinenumber: 25948
    functionLinenumberEnd: 25957
    functionName: OctreeImage_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err OctreeImage_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25989
      start: 25958
    functionDepth: 0
    functionLinenumber: 25958
    functionLinenumberEnd: 25989
    functionName: OctreeImage_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err OctreeImage_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25994,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25995,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25996,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25997,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25999
      start: 25992
    functionDepth: 0
    functionLinenumber: 25992
    functionLinenumberEnd: 25999
    functionName: OctreeImage_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 OctreeImage_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26007,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26008,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26014,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26015,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26020
      start: 26000
    functionDepth: 1
    functionLinenumber: 26000
    functionLinenumberEnd: 26020
    functionName: OctreeImage_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool OctreeImage_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26027,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26029,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26034
      start: 26024
    functionDepth: 1
    functionLinenumber: 26024
    functionLinenumberEnd: 26034
    functionName: OctreeImage_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *OctreeImage_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26044,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26045,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26046,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26047,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26048
      start: 26041
    functionDepth: 1
    functionLinenumber: 26041
    functionLinenumberEnd: 26048
    functionName: XXParticles_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_unregister_children
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void XXParticles_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26068
      start: 26054
    functionDepth: 0
    functionLinenumber: 26054
    functionLinenumberEnd: 26068
    functionName: XXParticles_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 XXParticles_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26085
      start: 26070
    functionDepth: 0
    functionLinenumber: 26070
    functionLinenumberEnd: 26085
    functionName: XXParticles_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XXParticles_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 27
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 158
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26245
      start: 26086
    functionDepth: 0
    functionLinenumber: 26086
    functionLinenumberEnd: 26245
    functionName: XXParticles_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XXParticles_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26250,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26251,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26252,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26253,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26254,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26255,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26256,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26257,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26258,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26259,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26260,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26261,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26262,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26263,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26264,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26265,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26266,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26267,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26268,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26269,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26270,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26271,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26272,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26273,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26274,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 52
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26276
      start: 26248
    functionDepth: 0
    functionLinenumber: 26248
    functionLinenumberEnd: 26276
    functionName: XXParticles_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 XXParticles_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26283
      start: 26277
    functionDepth: 0
    functionLinenumber: 26277
    functionLinenumberEnd: 26283
    functionName: XXParticles_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool XXParticles_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26290,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26292,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26295,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26296,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26297,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26298,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26299,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26300,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26301,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26302,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26303,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26304,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26305,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26306,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26307,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26308,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26309,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26310,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26311,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26312,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26314,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26315,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26316,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26317,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26318,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26319,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26320,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26321,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26323,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26325,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26326,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26328,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26329,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26330,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26332
      start: 26287
    functionDepth: 1
    functionLinenumber: 26287
    functionLinenumberEnd: 26332
    functionName: XXParticles_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *XXParticles_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26342,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26343
      start: 26339
    functionDepth: 1
    functionLinenumber: 26339
    functionLinenumberEnd: 26343
    functionName: XXParticleInitBox_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void XXParticleInitBox_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26363
      start: 26349
    functionDepth: 0
    functionLinenumber: 26349
    functionLinenumberEnd: 26363
    functionName: XXParticleInitBox_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 XXParticleInitBox_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26380
      start: 26365
    functionDepth: 0
    functionLinenumber: 26365
    functionLinenumberEnd: 26380
    functionName: XXParticleInitBox_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XXParticleInitBox_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26399
      start: 26381
    functionDepth: 0
    functionLinenumber: 26381
    functionLinenumberEnd: 26399
    functionName: XXParticleInitBox_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XXParticleInitBox_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26404,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26405,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26407
      start: 26402
    functionDepth: 0
    functionLinenumber: 26402
    functionLinenumberEnd: 26407
    functionName: XXParticleInitBox_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 XXParticleInitBox_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26414
      start: 26408
    functionDepth: 0
    functionLinenumber: 26408
    functionLinenumberEnd: 26414
    functionName: XXParticleInitBox_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool XXParticleInitBox_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26421,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26423,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26426,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26427,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26428,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26429,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26431
      start: 26418
    functionDepth: 1
    functionLinenumber: 26418
    functionLinenumberEnd: 26431
    functionName: XXParticleInitBox_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *XXParticleInitBox_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26441,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26442
      start: 26438
    functionDepth: 1
    functionLinenumber: 26438
    functionLinenumberEnd: 26442
    functionName: XXPlanarObstacle_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void XXPlanarObstacle_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26462
      start: 26448
    functionDepth: 0
    functionLinenumber: 26448
    functionLinenumberEnd: 26462
    functionName: XXPlanarObstacle_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 XXPlanarObstacle_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26479
      start: 26464
    functionDepth: 0
    functionLinenumber: 26464
    functionLinenumberEnd: 26479
    functionName: XXPlanarObstacle_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XXPlanarObstacle_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26510
      start: 26480
    functionDepth: 0
    functionLinenumber: 26480
    functionLinenumberEnd: 26510
    functionName: XXPlanarObstacle_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XXPlanarObstacle_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26515,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26516,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26517,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26518,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26520
      start: 26513
    functionDepth: 0
    functionLinenumber: 26513
    functionLinenumberEnd: 26520
    functionName: XXPlanarObstacle_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 XXPlanarObstacle_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26527
      start: 26521
    functionDepth: 0
    functionLinenumber: 26521
    functionLinenumberEnd: 26527
    functionName: XXPlanarObstacle_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool XXPlanarObstacle_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26534,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26536,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26539,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26540,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26541,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26542,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26543,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26544,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26545,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26546,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26548
      start: 26531
    functionDepth: 1
    functionLinenumber: 26531
    functionLinenumberEnd: 26548
    functionName: XXPlanarObstacle_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *XXPlanarObstacle_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26558,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26559
      start: 26555
    functionDepth: 1
    functionLinenumber: 26555
    functionLinenumberEnd: 26559
    functionName: XXPointAttractor_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void XXPointAttractor_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26579
      start: 26565
    functionDepth: 0
    functionLinenumber: 26565
    functionLinenumberEnd: 26579
    functionName: XXPointAttractor_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 XXPointAttractor_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26596
      start: 26581
    functionDepth: 0
    functionLinenumber: 26581
    functionLinenumberEnd: 26596
    functionName: XXPointAttractor_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XXPointAttractor_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26627
      start: 26597
    functionDepth: 0
    functionLinenumber: 26597
    functionLinenumberEnd: 26627
    functionName: XXPointAttractor_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XXPointAttractor_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26632,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26633,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26634,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26635,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26637
      start: 26630
    functionDepth: 0
    functionLinenumber: 26630
    functionLinenumberEnd: 26637
    functionName: XXPointAttractor_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 XXPointAttractor_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26644
      start: 26638
    functionDepth: 0
    functionLinenumber: 26638
    functionLinenumberEnd: 26644
    functionName: XXPointAttractor_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool XXPointAttractor_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26651,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26653,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26656,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26657,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26658,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26659,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26660,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26661,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26663
      start: 26648
    functionDepth: 1
    functionLinenumber: 26648
    functionLinenumberEnd: 26663
    functionName: XXPointAttractor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *XXPointAttractor_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26673,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26674,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26675,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26676
      start: 26670
    functionDepth: 1
    functionLinenumber: 26670
    functionLinenumberEnd: 26676
    functionName: PointTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfint32_del
    - gf_sg_mfcolor_del
    linkageType: ''
    returnType: void
    signature: void PointTexture_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26694
      start: 26680
    functionDepth: 0
    functionLinenumber: 26680
    functionLinenumberEnd: 26694
    functionName: PointTexture_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PointTexture_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26705
      start: 26696
    functionDepth: 0
    functionLinenumber: 26696
    functionLinenumberEnd: 26705
    functionName: PointTexture_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PointTexture_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 35
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26742
      start: 26706
    functionDepth: 0
    functionLinenumber: 26706
    functionLinenumberEnd: 26742
    functionName: PointTexture_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PointTexture_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26747,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26748,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26749,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26750,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26751,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26753
      start: 26745
    functionDepth: 0
    functionLinenumber: 26745
    functionLinenumberEnd: 26753
    functionName: PointTexture_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PointTexture_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26761,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26762,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26767
      start: 26754
    functionDepth: 1
    functionLinenumber: 26754
    functionLinenumberEnd: 26767
    functionName: PointTexture_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool PointTexture_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26774,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26776,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26783
      start: 26771
    functionDepth: 1
    functionLinenumber: 26771
    functionLinenumberEnd: 26783
    functionName: PointTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PointTexture_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26793,1
    - Dst: gf_sg_mfrotation_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26794,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26795,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26796,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26797,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26798,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26799
      start: 26790
    functionDepth: 1
    functionLinenumber: 26790
    functionLinenumberEnd: 26799
    functionName: PositionAnimator_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec2f_del
    - gf_node_free
    - gf_sg_mffloat_del
    - gf_sg_mfvec3f_del
    - gf_sg_mfrotation_del
    linkageType: ''
    returnType: void
    signature: void PositionAnimator_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26819
      start: 26805
    functionDepth: 0
    functionLinenumber: 26805
    functionLinenumberEnd: 26819
    functionName: PositionAnimator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PositionAnimator_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26836
      start: 26821
    functionDepth: 0
    functionLinenumber: 26821
    functionLinenumberEnd: 26836
    functionName: PositionAnimator_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PositionAnimator_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 84
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26922
      start: 26837
    functionDepth: 0
    functionLinenumber: 26837
    functionLinenumberEnd: 26922
    functionName: PositionAnimator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PositionAnimator_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26927,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26928,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26929,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26930,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26931,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26932,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26933,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26934,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26935,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26936,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26937,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26938,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26939,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26941
      start: 26925
    functionDepth: 0
    functionLinenumber: 26925
    functionLinenumberEnd: 26941
    functionName: PositionAnimator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PositionAnimator_get_field_index_by_name(char *name)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 27
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26970
      start: 26942
    functionDepth: 0
    functionLinenumber: 26942
    functionLinenumberEnd: 26970
    functionName: PositionAnimator_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool PositionAnimator_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26977,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26979,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26982,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26983,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26985,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26987,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26988,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26989,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26990,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26992,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26993,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26994,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26996
      start: 26974
    functionDepth: 1
    functionLinenumber: 26974
    functionLinenumberEnd: 26996
    functionName: PositionAnimator_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PositionAnimator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27006,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27007,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27008,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27009,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27010,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27011
      start: 27003
    functionDepth: 1
    functionLinenumber: 27003
    functionLinenumberEnd: 27011
    functionName: PositionAnimator2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec2f_del
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void PositionAnimator2D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27031
      start: 27017
    functionDepth: 0
    functionLinenumber: 27017
    functionLinenumberEnd: 27031
    functionName: PositionAnimator2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PositionAnimator2D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27048
      start: 27033
    functionDepth: 0
    functionLinenumber: 27033
    functionLinenumberEnd: 27048
    functionName: PositionAnimator2D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PositionAnimator2D_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 84
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27134
      start: 27049
    functionDepth: 0
    functionLinenumber: 27049
    functionLinenumberEnd: 27134
    functionName: PositionAnimator2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PositionAnimator2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27139,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27140,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27141,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27142,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27143,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27144,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27145,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27146,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27147,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27148,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27149,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27150,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27151,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27153
      start: 27137
    functionDepth: 0
    functionLinenumber: 27137
    functionLinenumberEnd: 27153
    functionName: PositionAnimator2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PositionAnimator2D_get_field_index_by_name(char *name)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 27
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27182
      start: 27154
    functionDepth: 0
    functionLinenumber: 27154
    functionLinenumberEnd: 27182
    functionName: PositionAnimator2D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool PositionAnimator2D_get_aq_info(GF_Node *n, u32 FieldIndex, u8
      *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27189,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27191,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27194,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27195,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27198,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27200,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27201,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27202,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27203,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27205,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27206,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27208
      start: 27186
    functionDepth: 1
    functionLinenumber: 27186
    functionLinenumberEnd: 27208
    functionName: PositionAnimator2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PositionAnimator2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27218,1
    - Dst: gf_sg_mfvec4f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27219,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27221
      start: 27215
    functionDepth: 1
    functionLinenumber: 27215
    functionLinenumberEnd: 27221
    functionName: PositionInterpolator4D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfvec4f_del
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void PositionInterpolator4D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27241
      start: 27227
    functionDepth: 0
    functionLinenumber: 27227
    functionLinenumberEnd: 27241
    functionName: PositionInterpolator4D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PositionInterpolator4D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27258
      start: 27243
    functionDepth: 0
    functionLinenumber: 27243
    functionLinenumberEnd: 27258
    functionName: PositionInterpolator4D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PositionInterpolator4D_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27290
      start: 27259
    functionDepth: 0
    functionLinenumber: 27259
    functionLinenumberEnd: 27290
    functionName: PositionInterpolator4D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PositionInterpolator4D_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27295,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27296,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27297,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27298,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27300
      start: 27293
    functionDepth: 0
    functionLinenumber: 27293
    functionLinenumberEnd: 27300
    functionName: PositionInterpolator4D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PositionInterpolator4D_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27307,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27319
      start: 27301
    functionDepth: 1
    functionLinenumber: 27301
    functionLinenumberEnd: 27319
    functionName: PositionInterpolator4D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool PositionInterpolator4D_get_aq_info(GF_Node *n, u32 FieldIndex,
      u8 *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27326,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27328,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27332
      start: 27323
    functionDepth: 1
    functionLinenumber: 27323
    functionLinenumberEnd: 27332
    functionName: PositionInterpolator4D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PositionInterpolator4D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27342,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27343,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27344,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27345,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27346,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27347,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27348,1
    - Dst: gf_sg_sfimage_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27349,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27350,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27351
      start: 27339
    functionDepth: 1
    functionLinenumber: 27339
    functionLinenumberEnd: 27351
    functionName: ProceduralTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec2f_del
    - gf_node_free
    - gf_sg_sfimage_del
    - gf_sg_mffloat_del
    - gf_sg_mfcolor_del
    linkageType: ''
    returnType: void
    signature: void ProceduralTexture_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27371
      start: 27357
    functionDepth: 0
    functionLinenumber: 27357
    functionLinenumberEnd: 27371
    functionName: ProceduralTexture_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ProceduralTexture_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27388
      start: 27373
    functionDepth: 0
    functionLinenumber: 27373
    functionLinenumberEnd: 27388
    functionName: ProceduralTexture_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ProceduralTexture_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 22
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 125
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27515
      start: 27389
    functionDepth: 0
    functionLinenumber: 27389
    functionLinenumberEnd: 27515
    functionName: ProceduralTexture_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ProceduralTexture_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27520,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27521,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27522,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27523,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27524,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27525,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27526,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27527,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27528,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27529,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27530,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27531,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27532,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27533,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27534,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27535,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27536,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27537,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27538,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27539,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 42
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27541
      start: 27518
    functionDepth: 0
    functionLinenumber: 27518
    functionLinenumberEnd: 27541
    functionName: ProceduralTexture_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ProceduralTexture_get_field_index_by_name(char *name)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27548,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27549,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27554,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27555,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27561,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27562,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27568,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27569,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27579,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27580,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27586,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27587,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27593,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27594,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27600,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27601,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27606,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27607,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27612,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27613,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27619,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27620,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 82
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27625
      start: 27542
    functionDepth: 1
    functionLinenumber: 27542
    functionLinenumberEnd: 27625
    functionName: ProceduralTexture_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool ProceduralTexture_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27632,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27634,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27637,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27639,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27640,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27641,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27642,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27643,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27645,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27646,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27647,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27648,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27649,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27650,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27651,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27652,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27653,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27654,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27655,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27656,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27657,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27658,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27659,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27660,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27661,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27663,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27664,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27665,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27666,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27667,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27669,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27670,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27671,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27672,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27673,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27674,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27675,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27676,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27677,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27678,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27679,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27680,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27681,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27682,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27683,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27684,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27687,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27689,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27690,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27691,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27692,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27693,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27694,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27695,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27696,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27697,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27698,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27699,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27700,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27701,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 76
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27708
      start: 27629
    functionDepth: 1
    functionLinenumber: 27629
    functionLinenumberEnd: 27708
    functionName: ProceduralTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ProceduralTexture_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27718,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27719,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27720
      start: 27715
    functionDepth: 1
    functionLinenumber: 27715
    functionLinenumberEnd: 27720
    functionName: Quadric_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void Quadric_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27741
      start: 27727
    functionDepth: 0
    functionLinenumber: 27727
    functionLinenumberEnd: 27741
    functionName: Quadric_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Quadric_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27761
      start: 27743
    functionDepth: 0
    functionLinenumber: 27743
    functionLinenumberEnd: 27761
    functionName: Quadric_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Quadric_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 65
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27828
      start: 27762
    functionDepth: 0
    functionLinenumber: 27762
    functionLinenumberEnd: 27828
    functionName: Quadric_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Quadric_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27833,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27834,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27835,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27836,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27837,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27838,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27839,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27840,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27841,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27842,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27844
      start: 27831
    functionDepth: 0
    functionLinenumber: 27831
    functionLinenumberEnd: 27844
    functionName: Quadric_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Quadric_get_field_index_by_name(char *name)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27851,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 47
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27893
      start: 27845
    functionDepth: 1
    functionLinenumber: 27845
    functionLinenumberEnd: 27893
    functionName: Quadric_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Quadric_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27900,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27902,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27905,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27906,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27907,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27908,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27909,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27910,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27911,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27912,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27913,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27914,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27915,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27916,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27917,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27918,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27919,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27920,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27921,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27922,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27923,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27924,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27925,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27926,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27927,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27928,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27929,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27930,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27931,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 33
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27933
      start: 27897
    functionDepth: 1
    functionLinenumber: 27897
    functionLinenumberEnd: 27933
    functionName: Quadric_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Quadric_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27943,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27944,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27945,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27946,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27947,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27948,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27949,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27950,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27951,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27952,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27953,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27954,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27955,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27956
      start: 27940
    functionDepth: 1
    functionLinenumber: 27940
    functionLinenumberEnd: 27956
    functionName: SBBone_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - gf_sg_mfint32_del
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void SBBone_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27977
      start: 27963
    functionDepth: 0
    functionLinenumber: 27963
    functionLinenumberEnd: 27977
    functionName: SBBone_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SBBone_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27997
      start: 27979
    functionDepth: 0
    functionLinenumber: 27979
    functionLinenumberEnd: 27997
    functionName: SBBone_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SBBone_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 26
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 154
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28153
      start: 27998
    functionDepth: 0
    functionLinenumber: 27998
    functionLinenumberEnd: 28153
    functionName: SBBone_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SBBone_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28158,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28159,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28160,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28161,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28162,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28163,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28164,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28165,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28166,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28167,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28168,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28169,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28170,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28171,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28172,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28173,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28174,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28175,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28176,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28177,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28178,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28179,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28180,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28181,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 50
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28183
      start: 28156
    functionDepth: 0
    functionLinenumber: 28156
    functionLinenumberEnd: 28183
    functionName: SBBone_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 SBBone_get_field_index_by_name(char *name)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28191,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28192,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28206,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28207,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28213,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28214,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28224,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28225,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 61
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28246
      start: 28184
    functionDepth: 1
    functionLinenumber: 28184
    functionLinenumberEnd: 28246
    functionName: SBBone_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool SBBone_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28253,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28255,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28256,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28260,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28261,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28262,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28263,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28264,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28265,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28268,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28269,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28270,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28271,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28273,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28274,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28275,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28276,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28277,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28278,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28279,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28280,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28281,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28282,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28284
      start: 28250
    functionDepth: 1
    functionLinenumber: 28250
    functionLinenumberEnd: 28284
    functionName: SBBone_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *SBBone_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28294,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28295,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28296,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28298
      start: 28291
    functionDepth: 1
    functionLinenumber: 28291
    functionLinenumberEnd: 28298
    functionName: SBMuscle_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void SBMuscle_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28319
      start: 28305
    functionDepth: 0
    functionLinenumber: 28305
    functionLinenumberEnd: 28319
    functionName: SBMuscle_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SBMuscle_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28339
      start: 28321
    functionDepth: 0
    functionLinenumber: 28321
    functionLinenumberEnd: 28339
    functionName: SBMuscle_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SBMuscle_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 42
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28383
      start: 28340
    functionDepth: 0
    functionLinenumber: 28340
    functionLinenumberEnd: 28383
    functionName: SBMuscle_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SBMuscle_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28388,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28389,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28390,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28391,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28392,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28393,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28395
      start: 28386
    functionDepth: 0
    functionLinenumber: 28386
    functionLinenumberEnd: 28395
    functionName: SBMuscle_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 SBMuscle_get_field_index_by_name(char *name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28403,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28404,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28410,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28411,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28420,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28426
      start: 28396
    functionDepth: 1
    functionLinenumber: 28396
    functionLinenumberEnd: 28426
    functionName: SBMuscle_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool SBMuscle_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28433,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28435,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28442
      start: 28430
    functionDepth: 1
    functionLinenumber: 28430
    functionLinenumberEnd: 28442
    functionName: SBMuscle_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *SBMuscle_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28452,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28453,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28454,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28455,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28456
      start: 28449
    functionDepth: 1
    functionLinenumber: 28449
    functionLinenumberEnd: 28456
    functionName: SBSegment_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec3f_del
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    linkageType: ''
    returnType: void
    signature: void SBSegment_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28477
      start: 28463
    functionDepth: 0
    functionLinenumber: 28463
    functionLinenumberEnd: 28477
    functionName: SBSegment_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SBSegment_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28497
      start: 28479
    functionDepth: 0
    functionLinenumber: 28479
    functionLinenumberEnd: 28497
    functionName: SBSegment_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SBSegment_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 52
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28551
      start: 28498
    functionDepth: 0
    functionLinenumber: 28498
    functionLinenumberEnd: 28551
    functionName: SBSegment_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SBSegment_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28556,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28557,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28558,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28559,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28560,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28561,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28562,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28564
      start: 28554
    functionDepth: 0
    functionLinenumber: 28554
    functionLinenumberEnd: 28564
    functionName: SBSegment_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 SBSegment_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28575
      start: 28565
    functionDepth: 0
    functionLinenumber: 28565
    functionLinenumberEnd: 28575
    functionName: SBSegment_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool SBSegment_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28582,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28584,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28585,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28588,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28589,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28590,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28591,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28592,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28594,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28595,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28596,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28597,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28598,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28599,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28600,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28601,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28602,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28604
      start: 28579
    functionDepth: 1
    functionLinenumber: 28579
    functionLinenumberEnd: 28604
    functionName: SBSegment_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *SBSegment_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28614,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28615,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28616,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28617
      start: 28611
    functionDepth: 1
    functionLinenumber: 28611
    functionLinenumberEnd: 28617
    functionName: SBSite_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    linkageType: ''
    returnType: void
    signature: void SBSite_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28638
      start: 28624
    functionDepth: 0
    functionLinenumber: 28624
    functionLinenumberEnd: 28638
    functionName: SBSite_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SBSite_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28658
      start: 28640
    functionDepth: 0
    functionLinenumber: 28640
    functionLinenumberEnd: 28658
    functionName: SBSite_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SBSite_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 64
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28724
      start: 28659
    functionDepth: 0
    functionLinenumber: 28659
    functionLinenumberEnd: 28724
    functionName: SBSite_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SBSite_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28729,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28730,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28731,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28732,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28733,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28734,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28735,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28736,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28737,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28739
      start: 28727
    functionDepth: 0
    functionLinenumber: 28727
    functionLinenumberEnd: 28739
    functionName: SBSite_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 SBSite_get_field_index_by_name(char *name)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28766
      start: 28740
    functionDepth: 0
    functionLinenumber: 28740
    functionLinenumberEnd: 28766
    functionName: SBSite_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool SBSite_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28773,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28775,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28776,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28779,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28780,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28781,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28782,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28783,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28784,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28785,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28786,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28787,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28788,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28789,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28790,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28791,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28792,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28793,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28794,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28795,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28797
      start: 28770
    functionDepth: 1
    functionLinenumber: 28770
    functionLinenumberEnd: 28797
    functionName: SBSite_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *SBSite_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28807,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28808,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28809,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28810,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28811,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28812,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28813,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28814,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28815,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28816,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28817,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28818
      start: 28804
    functionDepth: 1
    functionLinenumber: 28804
    functionLinenumberEnd: 28818
    functionName: SBSkinnedModel_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_unregister_children
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void SBSkinnedModel_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28839
      start: 28825
    functionDepth: 0
    functionLinenumber: 28825
    functionLinenumberEnd: 28839
    functionName: SBSkinnedModel_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SBSkinnedModel_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28859
      start: 28841
    functionDepth: 0
    functionLinenumber: 28841
    functionLinenumberEnd: 28859
    functionName: SBSkinnedModel_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SBSkinnedModel_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 104
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28965
      start: 28860
    functionDepth: 0
    functionLinenumber: 28860
    functionLinenumberEnd: 28965
    functionName: SBSkinnedModel_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SBSkinnedModel_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28970,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28971,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28972,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28973,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28974,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28975,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28976,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28977,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28978,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28979,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28980,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28981,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28982,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28983,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28984,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 32
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28986
      start: 28968
    functionDepth: 0
    functionLinenumber: 28968
    functionLinenumberEnd: 28986
    functionName: SBSkinnedModel_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 SBSkinnedModel_get_field_index_by_name(char *name)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29013
      start: 28987
    functionDepth: 0
    functionLinenumber: 28987
    functionLinenumberEnd: 29013
    functionName: SBSkinnedModel_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool SBSkinnedModel_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29020,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29022,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29025,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29026,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29027,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29028,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29029,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29030,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29031,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29032,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29033,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29034,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29035,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29036,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29037,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29038,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29039,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29040,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29041,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29043
      start: 29017
    functionDepth: 1
    functionLinenumber: 29017
    functionLinenumberEnd: 29043
    functionName: SBSkinnedModel_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *SBSkinnedModel_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29053,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29054,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29055,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29056
      start: 29050
    functionDepth: 1
    functionLinenumber: 29050
    functionLinenumberEnd: 29056
    functionName: SBVCAnimation_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_node_free
    - gf_node_unregister_children
    linkageType: ''
    returnType: void
    signature: void SBVCAnimation_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29076
      start: 29062
    functionDepth: 0
    functionLinenumber: 29062
    functionLinenumberEnd: 29076
    functionName: SBVCAnimation_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SBVCAnimation_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29093
      start: 29078
    functionDepth: 0
    functionLinenumber: 29078
    functionLinenumberEnd: 29093
    functionName: SBVCAnimation_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SBVCAnimation_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29113
      start: 29094
    functionDepth: 0
    functionLinenumber: 29094
    functionLinenumberEnd: 29113
    functionName: SBVCAnimation_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SBVCAnimation_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29118,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29121
      start: 29116
    functionDepth: 0
    functionLinenumber: 29116
    functionLinenumberEnd: 29121
    functionName: SBVCAnimation_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 SBVCAnimation_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29128
      start: 29122
    functionDepth: 0
    functionLinenumber: 29122
    functionLinenumberEnd: 29128
    functionName: SBVCAnimation_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool SBVCAnimation_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29135,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29137,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29141
      start: 29132
    functionDepth: 1
    functionLinenumber: 29132
    functionLinenumberEnd: 29141
    functionName: SBVCAnimation_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *SBVCAnimation_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29151,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29152,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29153,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29154,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29156
      start: 29148
    functionDepth: 1
    functionLinenumber: 29148
    functionLinenumberEnd: 29156
    functionName: ScalarAnimator_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec2f_del
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void ScalarAnimator_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29176
      start: 29162
    functionDepth: 0
    functionLinenumber: 29162
    functionLinenumberEnd: 29176
    functionName: ScalarAnimator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ScalarAnimator_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29193
      start: 29178
    functionDepth: 0
    functionLinenumber: 29178
    functionLinenumberEnd: 29193
    functionName: ScalarAnimator_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ScalarAnimator_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 72
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29267
      start: 29194
    functionDepth: 0
    functionLinenumber: 29194
    functionLinenumberEnd: 29267
    functionName: ScalarAnimator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ScalarAnimator_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29272,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29273,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29274,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29275,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29276,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29277,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29278,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29279,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29280,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29281,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29282,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29284
      start: 29270
    functionDepth: 0
    functionLinenumber: 29270
    functionLinenumberEnd: 29284
    functionName: ScalarAnimator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ScalarAnimator_get_field_index_by_name(char *name)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29307
      start: 29285
    functionDepth: 0
    functionLinenumber: 29285
    functionLinenumberEnd: 29307
    functionName: ScalarAnimator_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool ScalarAnimator_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29314,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29316,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29319,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29320,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29322,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29324,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29325,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29326,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29327,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29329,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29331
      start: 29311
    functionDepth: 1
    functionLinenumber: 29311
    functionLinenumberEnd: 29331
    functionName: ScalarAnimator_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ScalarAnimator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29341,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29342,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29343,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29344
      start: 29338
    functionDepth: 1
    functionLinenumber: 29338
    functionLinenumberEnd: 29344
    functionName: SimpleTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void SimpleTexture_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29362
      start: 29348
    functionDepth: 0
    functionLinenumber: 29348
    functionLinenumberEnd: 29362
    functionName: SimpleTexture_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SimpleTexture_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29373
      start: 29364
    functionDepth: 0
    functionLinenumber: 29364
    functionLinenumberEnd: 29373
    functionName: SimpleTexture_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SimpleTexture_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29394
      start: 29374
    functionDepth: 0
    functionLinenumber: 29374
    functionLinenumberEnd: 29394
    functionName: SimpleTexture_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SimpleTexture_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29399,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29400,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29402
      start: 29397
    functionDepth: 0
    functionLinenumber: 29397
    functionLinenumberEnd: 29402
    functionName: SimpleTexture_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 SimpleTexture_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29409
      start: 29403
    functionDepth: 0
    functionLinenumber: 29403
    functionLinenumberEnd: 29409
    functionName: SimpleTexture_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool SimpleTexture_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29416,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29418,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29422
      start: 29413
    functionDepth: 1
    functionLinenumber: 29413
    functionLinenumberEnd: 29422
    functionName: SimpleTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *SimpleTexture_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29432,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29433,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29434,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29435
      start: 29429
    functionDepth: 1
    functionLinenumber: 29429
    functionLinenumberEnd: 29435
    functionName: SolidRep_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void SolidRep_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29456
      start: 29442
    functionDepth: 0
    functionLinenumber: 29442
    functionLinenumberEnd: 29456
    functionName: SolidRep_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SolidRep_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29476
      start: 29458
    functionDepth: 0
    functionLinenumber: 29458
    functionLinenumberEnd: 29476
    functionName: SolidRep_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SolidRep_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29502
      start: 29477
    functionDepth: 0
    functionLinenumber: 29477
    functionLinenumberEnd: 29502
    functionName: SolidRep_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SolidRep_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29507,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29508,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29509,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29511
      start: 29505
    functionDepth: 0
    functionLinenumber: 29505
    functionLinenumberEnd: 29511
    functionName: SolidRep_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 SolidRep_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29518,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29524
      start: 29512
    functionDepth: 1
    functionLinenumber: 29512
    functionLinenumberEnd: 29524
    functionName: SolidRep_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool SolidRep_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29531,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29533,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29536,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29537,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29538,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29540
      start: 29528
    functionDepth: 1
    functionLinenumber: 29528
    functionLinenumberEnd: 29540
    functionName: SolidRep_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *SolidRep_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29550,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29551,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29552,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29553,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29554,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29555,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29556,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29557,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29558,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29559,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29560,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29561,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29562,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29563,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29564,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29565,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29566,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29567,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29568,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29569,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 21
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29570
      start: 29547
    functionDepth: 1
    functionLinenumber: 29547
    functionLinenumberEnd: 29570
    functionName: SubdivisionSurface_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_unregister_children
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void SubdivisionSurface_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29590
      start: 29576
    functionDepth: 0
    functionLinenumber: 29576
    functionLinenumberEnd: 29590
    functionName: SubdivisionSurface_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SubdivisionSurface_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29607
      start: 29592
    functionDepth: 0
    functionLinenumber: 29592
    functionLinenumberEnd: 29607
    functionName: SubdivisionSurface_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SubdivisionSurface_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 28
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 172
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29781
      start: 29608
    functionDepth: 0
    functionLinenumber: 29608
    functionLinenumberEnd: 29781
    functionName: SubdivisionSurface_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SubdivisionSurface_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29786,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29787,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29788,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29789,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29790,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29791,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29792,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29793,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29794,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29795,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29796,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29797,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29798,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29799,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29800,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29801,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29802,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29803,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29804,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29805,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29806,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29807,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29808,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29809,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29810,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29811,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 54
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29813
      start: 29784
    functionDepth: 0
    functionLinenumber: 29784
    functionLinenumberEnd: 29813
    functionName: SubdivisionSurface_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 SubdivisionSurface_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29821,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29822,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29828,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29829,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29834
      start: 29814
    functionDepth: 1
    functionLinenumber: 29814
    functionLinenumberEnd: 29834
    functionName: SubdivisionSurface_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool SubdivisionSurface_get_aq_info(GF_Node *n, u32 FieldIndex, u8
      *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29841,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29843,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29854
      start: 29838
    functionDepth: 1
    functionLinenumber: 29838
    functionLinenumberEnd: 29854
    functionName: SubdivisionSurface_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *SubdivisionSurface_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29864,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29865
      start: 29861
    functionDepth: 1
    functionLinenumber: 29861
    functionLinenumberEnd: 29865
    functionName: SubdivSurfaceSector_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void SubdivSurfaceSector_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29885
      start: 29871
    functionDepth: 0
    functionLinenumber: 29871
    functionLinenumberEnd: 29885
    functionName: SubdivSurfaceSector_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SubdivSurfaceSector_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29902
      start: 29887
    functionDepth: 0
    functionLinenumber: 29887
    functionLinenumberEnd: 29902
    functionName: SubdivSurfaceSector_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SubdivSurfaceSector_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 47
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29951
      start: 29903
    functionDepth: 0
    functionLinenumber: 29903
    functionLinenumberEnd: 29951
    functionName: SubdivSurfaceSector_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SubdivSurfaceSector_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29956,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29957,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29958,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29959,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29960,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29961,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29962,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29964
      start: 29954
    functionDepth: 0
    functionLinenumber: 29954
    functionLinenumberEnd: 29964
    functionName: SubdivSurfaceSector_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 SubdivSurfaceSector_get_field_index_by_name(char *name)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29971,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29972,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29981,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29982,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29988,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29989,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29994,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29995,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 42
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30008
      start: 29965
    functionDepth: 1
    functionLinenumber: 29965
    functionLinenumberEnd: 30008
    functionName: SubdivSurfaceSector_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool SubdivSurfaceSector_get_aq_info(GF_Node *n, u32 FieldIndex, u8
      *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30015,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30017,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30020,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30021,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30022,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30023,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30024,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30026,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30030
      start: 30012
    functionDepth: 1
    functionLinenumber: 30012
    functionLinenumberEnd: 30030
    functionName: SubdivSurfaceSector_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *SubdivSurfaceSector_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30040,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30041,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30042
      start: 30037
    functionDepth: 1
    functionLinenumber: 30037
    functionLinenumberEnd: 30042
    functionName: WaveletSubdivisionSurface_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void WaveletSubdivisionSurface_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30062
      start: 30048
    functionDepth: 0
    functionLinenumber: 30048
    functionLinenumberEnd: 30062
    functionName: WaveletSubdivisionSurface_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 WaveletSubdivisionSurface_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30079
      start: 30064
    functionDepth: 0
    functionLinenumber: 30064
    functionLinenumberEnd: 30079
    functionName: WaveletSubdivisionSurface_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WaveletSubdivisionSurface_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30111
      start: 30080
    functionDepth: 0
    functionLinenumber: 30080
    functionLinenumberEnd: 30111
    functionName: WaveletSubdivisionSurface_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WaveletSubdivisionSurface_get_field(GF_Node *node, GF_FieldInfo
      *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30116,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30117,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30118,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30119,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30121
      start: 30114
    functionDepth: 0
    functionLinenumber: 30114
    functionLinenumberEnd: 30121
    functionName: WaveletSubdivisionSurface_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 WaveletSubdivisionSurface_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30128
      start: 30122
    functionDepth: 0
    functionLinenumber: 30122
    functionLinenumberEnd: 30128
    functionName: WaveletSubdivisionSurface_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool WaveletSubdivisionSurface_get_aq_info(GF_Node *n, u32 FieldIndex,
      u8 *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30135,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30137,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30140,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30141,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30144
      start: 30132
    functionDepth: 1
    functionLinenumber: 30132
    functionLinenumberEnd: 30144
    functionName: WaveletSubdivisionSurface_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *WaveletSubdivisionSurface_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30154,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30155,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30156,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30158
      start: 30151
    functionDepth: 1
    functionLinenumber: 30151
    functionLinenumberEnd: 30158
    functionName: Clipper2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Clipper2D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30178
      start: 30164
    functionDepth: 0
    functionLinenumber: 30164
    functionLinenumberEnd: 30178
    functionName: Clipper2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Clipper2D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30195
      start: 30180
    functionDepth: 0
    functionLinenumber: 30180
    functionLinenumberEnd: 30195
    functionName: Clipper2D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Clipper2D_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 54
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30251
      start: 30196
    functionDepth: 0
    functionLinenumber: 30196
    functionLinenumberEnd: 30251
    functionName: Clipper2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Clipper2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30256,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30257,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30258,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30259,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30260,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30261,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30262,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30264
      start: 30254
    functionDepth: 0
    functionLinenumber: 30254
    functionLinenumberEnd: 30264
    functionName: Clipper2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Clipper2D_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30271
      start: 30265
    functionDepth: 0
    functionLinenumber: 30265
    functionLinenumberEnd: 30271
    functionName: Clipper2D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Clipper2D_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30278,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30280,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30281,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30286
      start: 30275
    functionDepth: 1
    functionLinenumber: 30275
    functionLinenumberEnd: 30286
    functionName: Clipper2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Clipper2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30296,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30298
      start: 30293
    functionDepth: 1
    functionLinenumber: 30293
    functionLinenumberEnd: 30298
    functionName: ColorTransform_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void ColorTransform_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30319
      start: 30305
    functionDepth: 0
    functionLinenumber: 30305
    functionLinenumberEnd: 30319
    functionName: ColorTransform_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ColorTransform_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30339
      start: 30321
    functionDepth: 0
    functionLinenumber: 30321
    functionLinenumberEnd: 30339
    functionName: ColorTransform_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ColorTransform_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 25
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 148
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30489
      start: 30340
    functionDepth: 0
    functionLinenumber: 30340
    functionLinenumberEnd: 30489
    functionName: ColorTransform_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ColorTransform_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30494,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30495,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30496,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30497,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30498,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30499,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30500,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30501,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30502,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30503,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30504,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30505,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30506,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30507,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30508,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30509,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30510,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30511,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30512,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30513,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30514,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30515,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30516,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 48
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30518
      start: 30492
    functionDepth: 0
    functionLinenumber: 30492
    functionLinenumberEnd: 30518
    functionName: ColorTransform_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ColorTransform_get_field_index_by_name(char *name)
  - BBCount: 22
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 125
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30645
      start: 30519
    functionDepth: 0
    functionLinenumber: 30519
    functionLinenumberEnd: 30645
    functionName: ColorTransform_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool ColorTransform_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30652,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30654,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30655,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30658,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30659,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30660,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30661,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30662,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30663,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30664,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30665,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30666,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30667,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30668,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30669,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30670,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30671,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30672,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30673,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30674,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30675,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30676,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30677,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30679
      start: 30649
    functionDepth: 1
    functionLinenumber: 30649
    functionLinenumberEnd: 30679
    functionName: ColorTransform_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ColorTransform_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30689,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30690
      start: 30686
    functionDepth: 1
    functionLinenumber: 30686
    functionLinenumberEnd: 30690
    functionName: Ellipse_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Ellipse_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30711
      start: 30697
    functionDepth: 0
    functionLinenumber: 30697
    functionLinenumberEnd: 30711
    functionName: Ellipse_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Ellipse_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30731
      start: 30713
    functionDepth: 0
    functionLinenumber: 30713
    functionLinenumberEnd: 30731
    functionName: Ellipse_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Ellipse_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30744
      start: 30732
    functionDepth: 0
    functionLinenumber: 30732
    functionLinenumberEnd: 30744
    functionName: Ellipse_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Ellipse_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30749,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30751
      start: 30747
    functionDepth: 0
    functionLinenumber: 30747
    functionLinenumberEnd: 30751
    functionName: Ellipse_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Ellipse_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30758,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30764
      start: 30752
    functionDepth: 1
    functionLinenumber: 30752
    functionLinenumberEnd: 30764
    functionName: Ellipse_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Ellipse_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30771,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30773,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30776,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30777,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30779
      start: 30768
    functionDepth: 1
    functionLinenumber: 30768
    functionLinenumberEnd: 30779
    functionName: Ellipse_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Ellipse_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30789,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30790,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30791,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30792,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30793,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30794
      start: 30786
    functionDepth: 1
    functionLinenumber: 30786
    functionLinenumberEnd: 30794
    functionName: LinearGradient_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfcolor_del
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void LinearGradient_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30815
      start: 30801
    functionDepth: 0
    functionLinenumber: 30801
    functionLinenumberEnd: 30815
    functionName: LinearGradient_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 LinearGradient_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30835
      start: 30817
    functionDepth: 0
    functionLinenumber: 30817
    functionLinenumberEnd: 30835
    functionName: LinearGradient_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LinearGradient_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 48
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30885
      start: 30836
    functionDepth: 0
    functionLinenumber: 30836
    functionLinenumberEnd: 30885
    functionName: LinearGradient_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err LinearGradient_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30890,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30891,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30892,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30893,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30894,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30895,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30896,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30898
      start: 30888
    functionDepth: 0
    functionLinenumber: 30888
    functionLinenumberEnd: 30898
    functionName: LinearGradient_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 LinearGradient_get_field_index_by_name(char *name)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30911,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30912,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30917,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30918,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30923,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30924,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30930,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30931,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 42
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30942
      start: 30899
    functionDepth: 1
    functionLinenumber: 30899
    functionLinenumberEnd: 30942
    functionName: LinearGradient_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool LinearGradient_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30949,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30951,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30954,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30955,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30956,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30958,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30960,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30961,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30963
      start: 30946
    functionDepth: 1
    functionLinenumber: 30946
    functionLinenumberEnd: 30963
    functionName: LinearGradient_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *LinearGradient_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30973,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30974,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30975,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30976,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30977
      start: 30970
    functionDepth: 1
    functionLinenumber: 30970
    functionLinenumberEnd: 30977
    functionName: PathLayout_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_vrml_parent_destroy
    - gf_sg_mfint32_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void PathLayout_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30998
      start: 30984
    functionDepth: 0
    functionLinenumber: 30984
    functionLinenumberEnd: 30998
    functionName: PathLayout_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PathLayout_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31018
      start: 31000
    functionDepth: 0
    functionLinenumber: 31000
    functionLinenumberEnd: 31018
    functionName: PathLayout_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PathLayout_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 71
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31091
      start: 31019
    functionDepth: 0
    functionLinenumber: 31019
    functionLinenumberEnd: 31091
    functionName: PathLayout_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PathLayout_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31096,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31097,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31098,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31099,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31100,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31101,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31102,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31103,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31104,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31105,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31107
      start: 31094
    functionDepth: 0
    functionLinenumber: 31094
    functionLinenumberEnd: 31107
    functionName: PathLayout_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PathLayout_get_field_index_by_name(char *name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31115,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31116,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31134,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31135,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31140
      start: 31108
    functionDepth: 1
    functionLinenumber: 31108
    functionLinenumberEnd: 31140
    functionName: PathLayout_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool PathLayout_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31147,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31149,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31150,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31153,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31156,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31157,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31161
      start: 31144
    functionDepth: 1
    functionLinenumber: 31144
    functionLinenumberEnd: 31161
    functionName: PathLayout_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PathLayout_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31171,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31172,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31173,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31174,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31176
      start: 31168
    functionDepth: 1
    functionLinenumber: 31168
    functionLinenumberEnd: 31176
    functionName: RadialGradient_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfcolor_del
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void RadialGradient_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31197
      start: 31183
    functionDepth: 0
    functionLinenumber: 31183
    functionLinenumberEnd: 31197
    functionName: RadialGradient_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 RadialGradient_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31217
      start: 31199
    functionDepth: 0
    functionLinenumber: 31199
    functionLinenumberEnd: 31217
    functionName: RadialGradient_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err RadialGradient_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 54
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31273
      start: 31218
    functionDepth: 0
    functionLinenumber: 31218
    functionLinenumberEnd: 31273
    functionName: RadialGradient_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err RadialGradient_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31278,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31279,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31280,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31281,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31282,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31283,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31284,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31285,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31287
      start: 31276
    functionDepth: 0
    functionLinenumber: 31276
    functionLinenumberEnd: 31287
    functionName: RadialGradient_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 RadialGradient_get_field_index_by_name(char *name)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31306,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31307,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31312,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31313,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31318,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31319,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31324,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31331,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31332,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 48
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31337
      start: 31288
    functionDepth: 1
    functionLinenumber: 31288
    functionLinenumberEnd: 31337
    functionName: RadialGradient_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool RadialGradient_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31344,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31346,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31349,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31350,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31351,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31352,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31353,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31355,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31356,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31359
      start: 31341
    functionDepth: 1
    functionLinenumber: 31341
    functionLinenumberEnd: 31359
    functionName: RadialGradient_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *RadialGradient_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31369,1
    - Dst: gf_sg_mfrotation_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31370,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31371,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31372,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31373
      start: 31366
    functionDepth: 1
    functionLinenumber: 31366
    functionLinenumberEnd: 31373
    functionName: SynthesizedTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec3f_del
    - gf_sg_mfurl_del
    - gf_node_free
    - gf_sg_mfrotation_del
    linkageType: ''
    returnType: void
    signature: void SynthesizedTexture_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31394
      start: 31380
    functionDepth: 0
    functionLinenumber: 31380
    functionLinenumberEnd: 31394
    functionName: SynthesizedTexture_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SynthesizedTexture_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31414
      start: 31396
    functionDepth: 0
    functionLinenumber: 31396
    functionLinenumberEnd: 31414
    functionName: SynthesizedTexture_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SynthesizedTexture_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 71
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31487
      start: 31415
    functionDepth: 0
    functionLinenumber: 31415
    functionLinenumberEnd: 31487
    functionName: SynthesizedTexture_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SynthesizedTexture_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31492,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31493,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31494,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31495,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31496,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31497,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31498,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31499,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31500,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31501,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31502,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31504
      start: 31490
    functionDepth: 0
    functionLinenumber: 31490
    functionLinenumberEnd: 31504
    functionName: SynthesizedTexture_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 SynthesizedTexture_get_field_index_by_name(char *name)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31524,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31531,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 37
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31543
      start: 31505
    functionDepth: 1
    functionLinenumber: 31505
    functionLinenumberEnd: 31543
    functionName: SynthesizedTexture_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool SynthesizedTexture_get_aq_info(GF_Node *n, u32 FieldIndex, u8
      *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31550,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31552,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31557,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31561
      start: 31547
    functionDepth: 1
    functionLinenumber: 31547
    functionLinenumberEnd: 31561
    functionName: SynthesizedTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *SynthesizedTexture_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31571,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31572,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31573
      start: 31568
    functionDepth: 1
    functionLinenumber: 31568
    functionLinenumberEnd: 31573
    functionName: TransformMatrix2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void TransformMatrix2D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31594
      start: 31580
    functionDepth: 0
    functionLinenumber: 31580
    functionLinenumberEnd: 31594
    functionName: TransformMatrix2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 TransformMatrix2D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31614
      start: 31596
    functionDepth: 0
    functionLinenumber: 31596
    functionLinenumberEnd: 31614
    functionName: TransformMatrix2D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TransformMatrix2D_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 64
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31680
      start: 31615
    functionDepth: 0
    functionLinenumber: 31615
    functionLinenumberEnd: 31680
    functionName: TransformMatrix2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err TransformMatrix2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31685,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31686,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31687,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31688,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31689,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31690,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31691,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31692,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31693,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31695
      start: 31683
    functionDepth: 0
    functionLinenumber: 31683
    functionLinenumberEnd: 31695
    functionName: TransformMatrix2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 TransformMatrix2D_get_field_index_by_name(char *name)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31738
      start: 31696
    functionDepth: 0
    functionLinenumber: 31696
    functionLinenumberEnd: 31738
    functionName: TransformMatrix2D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool TransformMatrix2D_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31745,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31747,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31748,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31751,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31752,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31753,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31754,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31755,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31756,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31758
      start: 31742
    functionDepth: 1
    functionLinenumber: 31742
    functionLinenumberEnd: 31758
    functionName: TransformMatrix2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *TransformMatrix2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31768,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31769,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31770,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31771
      start: 31765
    functionDepth: 1
    functionLinenumber: 31765
    functionLinenumberEnd: 31771
    functionName: Viewport_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_sfstring_del
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void Viewport_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31792
      start: 31778
    functionDepth: 0
    functionLinenumber: 31778
    functionLinenumberEnd: 31792
    functionName: Viewport_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Viewport_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31812
      start: 31794
    functionDepth: 0
    functionLinenumber: 31794
    functionLinenumberEnd: 31812
    functionName: Viewport_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Viewport_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 60
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31874
      start: 31813
    functionDepth: 0
    functionLinenumber: 31813
    functionLinenumberEnd: 31874
    functionName: Viewport_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Viewport_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31879,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31880,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31881,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31882,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31883,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31884,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31885,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31886,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31887,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31889
      start: 31877
    functionDepth: 0
    functionLinenumber: 31877
    functionLinenumberEnd: 31889
    functionName: Viewport_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Viewport_get_field_index_by_name(char *name)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31908,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31909,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31915,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31916,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31922,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31923,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 37
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31928
      start: 31890
    functionDepth: 1
    functionLinenumber: 31890
    functionLinenumberEnd: 31928
    functionName: Viewport_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Viewport_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31935,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31937,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31940,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31941,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31942,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31943,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31944,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31945,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31950
      start: 31932
    functionDepth: 1
    functionLinenumber: 31932
    functionLinenumberEnd: 31950
    functionName: Viewport_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Viewport_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31960,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31961,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31962,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31963
      start: 31957
    functionDepth: 1
    functionLinenumber: 31957
    functionLinenumberEnd: 31963
    functionName: XCurve2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void XCurve2D_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31984
      start: 31970
    functionDepth: 0
    functionLinenumber: 31970
    functionLinenumberEnd: 31984
    functionName: XCurve2D_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 XCurve2D_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32004
      start: 31986
    functionDepth: 0
    functionLinenumber: 31986
    functionLinenumberEnd: 32004
    functionName: XCurve2D_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XCurve2D_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32030
      start: 32005
    functionDepth: 0
    functionLinenumber: 32005
    functionLinenumberEnd: 32030
    functionName: XCurve2D_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XCurve2D_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32035,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32036,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32037,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32039
      start: 32033
    functionDepth: 0
    functionLinenumber: 32033
    functionLinenumberEnd: 32039
    functionName: XCurve2D_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 XCurve2D_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32046,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32047,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32053,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32054,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32059
      start: 32040
    functionDepth: 1
    functionLinenumber: 32040
    functionLinenumberEnd: 32059
    functionName: XCurve2D_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool XCurve2D_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32066,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32068,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32071,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32073
      start: 32063
    functionDepth: 1
    functionLinenumber: 32063
    functionLinenumberEnd: 32073
    functionName: XCurve2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *XCurve2D_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32083,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32084,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32085,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32086,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32087,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32088,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32089,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32090,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32091,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32092,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32093
      start: 32080
    functionDepth: 1
    functionLinenumber: 32080
    functionLinenumberEnd: 32093
    functionName: XFontStyle_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfstring_del
    - gf_sg_mfint32_del
    - gf_sg_sfstring_del
    linkageType: ''
    returnType: void
    signature: void XFontStyle_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32113
      start: 32099
    functionDepth: 0
    functionLinenumber: 32099
    functionLinenumberEnd: 32113
    functionName: XFontStyle_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 XFontStyle_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32130
      start: 32115
    functionDepth: 0
    functionLinenumber: 32115
    functionLinenumberEnd: 32130
    functionName: XFontStyle_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XFontStyle_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 19
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 107
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32239
      start: 32131
    functionDepth: 0
    functionLinenumber: 32131
    functionLinenumberEnd: 32239
    functionName: XFontStyle_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XFontStyle_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32244,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32245,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32246,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32247,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32248,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32249,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32250,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32251,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32252,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32253,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32254,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32255,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32256,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32257,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32258,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32259,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32260,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 36
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32262
      start: 32242
    functionDepth: 0
    functionLinenumber: 32242
    functionLinenumberEnd: 32262
    functionName: XFontStyle_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 XFontStyle_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32269,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32275,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32281,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32287
      start: 32263
    functionDepth: 1
    functionLinenumber: 32263
    functionLinenumberEnd: 32287
    functionName: XFontStyle_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool XFontStyle_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32294,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32296,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32299,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32301,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32302,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32304,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32306,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32307,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32309,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32310,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32311,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32312,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32313,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32316,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32317,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32320
      start: 32291
    functionDepth: 1
    functionLinenumber: 32291
    functionLinenumberEnd: 32320
    functionName: XFontStyle_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - GF_SAFEALLOC
    - strcpy
    - gf_node_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *XFontStyle_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32330,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32331,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32332,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32333,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32334
      start: 32327
    functionDepth: 1
    functionLinenumber: 32327
    functionLinenumberEnd: 32334
    functionName: XLineProperties_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void XLineProperties_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32355
      start: 32341
    functionDepth: 0
    functionLinenumber: 32341
    functionLinenumberEnd: 32355
    functionName: XLineProperties_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 XLineProperties_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32375
      start: 32357
    functionDepth: 0
    functionLinenumber: 32357
    functionLinenumberEnd: 32375
    functionName: XLineProperties_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XLineProperties_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 85
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32462
      start: 32376
    functionDepth: 0
    functionLinenumber: 32376
    functionLinenumberEnd: 32462
    functionName: XLineProperties_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err XLineProperties_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32467,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32468,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32469,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32470,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32471,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32472,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32473,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32474,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32475,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32476,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32477,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32478,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32479,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32481
      start: 32465
    functionDepth: 0
    functionLinenumber: 32465
    functionLinenumberEnd: 32481
    functionName: XLineProperties_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 XLineProperties_get_field_index_by_name(char *name)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32488,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32489,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32495,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32496,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32502,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32503,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32509,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32510,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32515,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32521,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32522,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32527,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32533,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32539,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 62
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32545
      start: 32482
    functionDepth: 1
    functionLinenumber: 32482
    functionLinenumberEnd: 32545
    functionName: XLineProperties_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool XLineProperties_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32552,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32554,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32557,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32558,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32559,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32565,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32566,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32567,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32568,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32570
      start: 32549
    functionDepth: 1
    functionLinenumber: 32549
    functionLinenumberEnd: 32570
    functionName: XLineProperties_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *XLineProperties_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32580,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32581,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32582,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32583
      start: 32577
    functionDepth: 1
    functionLinenumber: 32577
    functionLinenumberEnd: 32583
    functionName: AdvancedAudioBuffer_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void AdvancedAudioBuffer_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32604
      start: 32590
    functionDepth: 0
    functionLinenumber: 32590
    functionLinenumberEnd: 32604
    functionName: AdvancedAudioBuffer_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 AdvancedAudioBuffer_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32624
      start: 32606
    functionDepth: 0
    functionLinenumber: 32606
    functionLinenumberEnd: 32624
    functionName: AdvancedAudioBuffer_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AdvancedAudioBuffer_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 20
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 118
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32744
      start: 32625
    functionDepth: 0
    functionLinenumber: 32625
    functionLinenumberEnd: 32744
    functionName: AdvancedAudioBuffer_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AdvancedAudioBuffer_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32749,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32750,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32751,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32752,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32753,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32754,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32755,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32756,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32757,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32758,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32759,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32760,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32761,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32762,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32763,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32764,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32765,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32766,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 38
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32768
      start: 32747
    functionDepth: 0
    functionLinenumber: 32747
    functionLinenumberEnd: 32768
    functionName: AdvancedAudioBuffer_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 AdvancedAudioBuffer_get_field_index_by_name(char *name)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32775,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32781,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32787,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32793,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32799,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32806,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32807,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32813,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32821,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32828,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32833,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32840,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32841,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32847,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32848,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 83
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32853
      start: 32769
    functionDepth: 1
    functionLinenumber: 32769
    functionLinenumberEnd: 32853
    functionName: AdvancedAudioBuffer_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool AdvancedAudioBuffer_get_aq_info(GF_Node *n, u32 FieldIndex, u8
      *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32860,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32862,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32863,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32866,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32875,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32878
      start: 32857
    functionDepth: 1
    functionLinenumber: 32857
    functionLinenumberEnd: 32878
    functionName: AdvancedAudioBuffer_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *AdvancedAudioBuffer_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32888,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32889,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32890,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32891,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32892,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32893,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32894,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32895,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32896,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32897
      start: 32885
    functionDepth: 1
    functionLinenumber: 32885
    functionLinenumberEnd: 32897
    functionName: AudioChannelConfig_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfint32_del
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - gf_sg_mffloat_del
    - gf_sg_mfvec3f_del
    linkageType: ''
    returnType: void
    signature: void AudioChannelConfig_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32917
      start: 32903
    functionDepth: 0
    functionLinenumber: 32903
    functionLinenumberEnd: 32917
    functionName: AudioChannelConfig_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 AudioChannelConfig_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32934
      start: 32919
    functionDepth: 0
    functionLinenumber: 32919
    functionLinenumberEnd: 32934
    functionName: AudioChannelConfig_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AudioChannelConfig_get_field_index(GF_Node *n, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 24
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 142
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33078
      start: 32935
    functionDepth: 0
    functionLinenumber: 32935
    functionLinenumberEnd: 33078
    functionName: AudioChannelConfig_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AudioChannelConfig_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33083,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33084,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33085,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33086,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33087,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33088,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33089,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33090,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33091,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33092,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33093,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33094,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33095,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33096,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33097,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33098,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33099,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33100,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33101,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33102,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33103,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33104,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 46
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33106
      start: 33081
    functionDepth: 0
    functionLinenumber: 33081
    functionLinenumberEnd: 33106
    functionName: AudioChannelConfig_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 AudioChannelConfig_get_field_index_by_name(char *name)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33114,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33115,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33121,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33122,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33128,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33129,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33135,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33136,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33142,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33143,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33149,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33150,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33156,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33157,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33163,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33164,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33170,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33171,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33177,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33178,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33184,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33185,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33191,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33192,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33198,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33199,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 96
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33204
      start: 33107
    functionDepth: 1
    functionLinenumber: 33107
    functionLinenumberEnd: 33204
    functionName: AudioChannelConfig_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool AudioChannelConfig_get_aq_info(GF_Node *n, u32 FieldIndex, u8
      *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33211,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33213,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33214,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33224,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33225,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33230
      start: 33208
    functionDepth: 1
    functionLinenumber: 33208
    functionLinenumberEnd: 33230
    functionName: AudioChannelConfig_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *AudioChannelConfig_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33240,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33242
      start: 33237
    functionDepth: 1
    functionLinenumber: 33237
    functionLinenumberEnd: 33242
    functionName: DepthImageV2_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void DepthImageV2_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33260
      start: 33246
    functionDepth: 0
    functionLinenumber: 33246
    functionLinenumberEnd: 33260
    functionName: DepthImageV2_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 DepthImageV2_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33271
      start: 33262
    functionDepth: 0
    functionLinenumber: 33262
    functionLinenumberEnd: 33271
    functionName: DepthImageV2_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DepthImageV2_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 54
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33327
      start: 33272
    functionDepth: 0
    functionLinenumber: 33272
    functionLinenumberEnd: 33327
    functionName: DepthImageV2_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DepthImageV2_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33332,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33333,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33334,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33335,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33336,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33337,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33338,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33339,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33341
      start: 33330
    functionDepth: 0
    functionLinenumber: 33330
    functionLinenumberEnd: 33341
    functionName: DepthImageV2_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 DepthImageV2_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33348
      start: 33342
    functionDepth: 0
    functionLinenumber: 33342
    functionLinenumberEnd: 33348
    functionName: DepthImageV2_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool DepthImageV2_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33355,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33357,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33360,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33361,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33362,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33363,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33364,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33365,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33366,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33367,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33369,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33370,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33371,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33372,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33373,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33375
      start: 33352
    functionDepth: 1
    functionLinenumber: 33352
    functionLinenumberEnd: 33375
    functionName: DepthImageV2_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *DepthImageV2_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33385,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33386,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33387,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33388,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33389
      start: 33382
    functionDepth: 1
    functionLinenumber: 33382
    functionLinenumberEnd: 33389
    functionName: MorphShape_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_unregister_children
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void MorphShape_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33409
      start: 33395
    functionDepth: 0
    functionLinenumber: 33395
    functionLinenumberEnd: 33409
    functionName: MorphShape_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 MorphShape_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33426
      start: 33411
    functionDepth: 0
    functionLinenumber: 33411
    functionLinenumberEnd: 33426
    functionName: MorphShape_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MorphShape_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33459
      start: 33427
    functionDepth: 0
    functionLinenumber: 33427
    functionLinenumberEnd: 33459
    functionName: MorphShape_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MorphShape_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33464,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33465,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33466,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33467,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33469
      start: 33462
    functionDepth: 0
    functionLinenumber: 33462
    functionLinenumberEnd: 33469
    functionName: MorphShape_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 MorphShape_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33477,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33478,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33483
      start: 33470
    functionDepth: 1
    functionLinenumber: 33470
    functionLinenumberEnd: 33483
    functionName: MorphShape_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool MorphShape_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33490,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33492,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33497
      start: 33487
    functionDepth: 1
    functionLinenumber: 33487
    functionLinenumberEnd: 33497
    functionName: MorphShape_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *MorphShape_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33507,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33508,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33509,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33510,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33511,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33512,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33513
      start: 33504
    functionDepth: 1
    functionLinenumber: 33504
    functionLinenumberEnd: 33513
    functionName: MultiTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfvec3f_del
    - gf_node_unregister_children
    - gf_node_free
    - gf_sg_mfint32_del
    linkageType: ''
    returnType: void
    signature: void MultiTexture_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33533
      start: 33519
    functionDepth: 0
    functionLinenumber: 33519
    functionLinenumberEnd: 33533
    functionName: MultiTexture_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 MultiTexture_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33550
      start: 33535
    functionDepth: 0
    functionLinenumber: 33535
    functionLinenumberEnd: 33550
    functionName: MultiTexture_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MultiTexture_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 54
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33606
      start: 33551
    functionDepth: 0
    functionLinenumber: 33551
    functionLinenumberEnd: 33606
    functionName: MultiTexture_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MultiTexture_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33611,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33612,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33613,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33614,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33615,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33616,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33617,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33618,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33620
      start: 33609
    functionDepth: 0
    functionLinenumber: 33609
    functionLinenumberEnd: 33620
    functionName: MultiTexture_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 MultiTexture_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33627
      start: 33621
    functionDepth: 0
    functionLinenumber: 33621
    functionLinenumberEnd: 33627
    functionName: MultiTexture_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool MultiTexture_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33634,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33636,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33639,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33640,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33641,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33642,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33644
      start: 33631
    functionDepth: 1
    functionLinenumber: 33631
    functionLinenumberEnd: 33644
    functionName: MultiTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *MultiTexture_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33654,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33655,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33656,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33657,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33658,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33659,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33660
      start: 33651
    functionDepth: 1
    functionLinenumber: 33651
    functionLinenumberEnd: 33660
    functionName: PointTextureV2_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfint32_del
    - gf_node_free
    - gf_sg_mfvec3f_del
    - gf_node_unregister
    - gf_sg_mfcolor_del
    linkageType: ''
    returnType: void
    signature: void PointTextureV2_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33678
      start: 33664
    functionDepth: 0
    functionLinenumber: 33664
    functionLinenumberEnd: 33678
    functionName: PointTextureV2_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 PointTextureV2_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33689
      start: 33680
    functionDepth: 0
    functionLinenumber: 33680
    functionLinenumberEnd: 33689
    functionName: PointTextureV2_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PointTextureV2_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 54
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33745
      start: 33690
    functionDepth: 0
    functionLinenumber: 33690
    functionLinenumberEnd: 33745
    functionName: PointTextureV2_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err PointTextureV2_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33750,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33751,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33752,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33753,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33754,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33755,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33756,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33757,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33759
      start: 33748
    functionDepth: 0
    functionLinenumber: 33748
    functionLinenumberEnd: 33759
    functionName: PointTextureV2_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 PointTextureV2_get_field_index_by_name(char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33767,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33768,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33785
      start: 33760
    functionDepth: 1
    functionLinenumber: 33760
    functionLinenumberEnd: 33785
    functionName: PointTextureV2_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool PointTextureV2_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33792,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33794,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33801
      start: 33789
    functionDepth: 1
    functionLinenumber: 33789
    functionLinenumberEnd: 33801
    functionName: PointTextureV2_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *PointTextureV2_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33811,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33812,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33813,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33814,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33815
      start: 33808
    functionDepth: 1
    functionLinenumber: 33808
    functionLinenumberEnd: 33815
    functionName: SBVCAnimationV2_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfurl_del
    - gf_sg_mfint32_del
    - gf_node_unregister_children
    linkageType: ''
    returnType: void
    signature: void SBVCAnimationV2_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33836
      start: 33822
    functionDepth: 0
    functionLinenumber: 33822
    functionLinenumberEnd: 33836
    functionName: SBVCAnimationV2_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SBVCAnimationV2_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33856
      start: 33838
    functionDepth: 0
    functionLinenumber: 33838
    functionLinenumberEnd: 33856
    functionName: SBVCAnimationV2_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SBVCAnimationV2_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 66
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33924
      start: 33857
    functionDepth: 0
    functionLinenumber: 33857
    functionLinenumberEnd: 33924
    functionName: SBVCAnimationV2_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SBVCAnimationV2_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33929,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33930,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33931,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33932,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33933,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33934,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33935,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33936,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33937,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33938,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33940
      start: 33927
    functionDepth: 0
    functionLinenumber: 33927
    functionLinenumberEnd: 33940
    functionName: SBVCAnimationV2_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 SBVCAnimationV2_get_field_index_by_name(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33953,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33959
      start: 33941
    functionDepth: 1
    functionLinenumber: 33941
    functionLinenumberEnd: 33959
    functionName: SBVCAnimationV2_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool SBVCAnimationV2_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33966,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33968,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33971,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33974,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33976
      start: 33963
    functionDepth: 1
    functionLinenumber: 33963
    functionLinenumberEnd: 33976
    functionName: SBVCAnimationV2_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *SBVCAnimationV2_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33986,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33987,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33988,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33989,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33990,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33991,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33992
      start: 33983
    functionDepth: 1
    functionLinenumber: 33983
    functionLinenumberEnd: 33992
    functionName: SimpleTextureV2_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void SimpleTextureV2_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34010
      start: 33996
    functionDepth: 0
    functionLinenumber: 33996
    functionLinenumberEnd: 34010
    functionName: SimpleTextureV2_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SimpleTextureV2_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34021
      start: 34012
    functionDepth: 0
    functionLinenumber: 34012
    functionLinenumberEnd: 34021
    functionName: SimpleTextureV2_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SimpleTextureV2_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 40
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34063
      start: 34022
    functionDepth: 0
    functionLinenumber: 34022
    functionLinenumberEnd: 34063
    functionName: SimpleTextureV2_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SimpleTextureV2_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34068,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34069,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34070,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34071,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34072,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34074
      start: 34066
    functionDepth: 0
    functionLinenumber: 34066
    functionLinenumberEnd: 34074
    functionName: SimpleTextureV2_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 SimpleTextureV2_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34081
      start: 34075
    functionDepth: 0
    functionLinenumber: 34075
    functionLinenumberEnd: 34081
    functionName: SimpleTextureV2_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool SimpleTextureV2_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34088,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34090,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34094
      start: 34085
    functionDepth: 1
    functionLinenumber: 34085
    functionLinenumberEnd: 34094
    functionName: SimpleTextureV2_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *SimpleTextureV2_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34104,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34106
      start: 34101
    functionDepth: 1
    functionLinenumber: 34101
    functionLinenumberEnd: 34106
    functionName: SurroundingSound_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void SurroundingSound_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34127
      start: 34113
    functionDepth: 0
    functionLinenumber: 34113
    functionLinenumberEnd: 34127
    functionName: SurroundingSound_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SurroundingSound_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34147
      start: 34129
    functionDepth: 0
    functionLinenumber: 34129
    functionLinenumberEnd: 34147
    functionName: SurroundingSound_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SurroundingSound_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 48
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34197
      start: 34148
    functionDepth: 0
    functionLinenumber: 34148
    functionLinenumberEnd: 34197
    functionName: SurroundingSound_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SurroundingSound_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34202,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34203,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34204,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34205,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34206,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34207,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34208,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34210
      start: 34200
    functionDepth: 0
    functionLinenumber: 34200
    functionLinenumberEnd: 34210
    functionName: SurroundingSound_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 SurroundingSound_get_field_index_by_name(char *name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34217,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34218,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34223,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34241
      start: 34211
    functionDepth: 1
    functionLinenumber: 34211
    functionLinenumberEnd: 34241
    functionName: SurroundingSound_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool SurroundingSound_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34248,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34250,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34253,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34254,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34255,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34256,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34257,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34258,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34259,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34260,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34261,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34262,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34265
      start: 34245
    functionDepth: 1
    functionLinenumber: 34245
    functionLinenumberEnd: 34265
    functionName: SurroundingSound_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *SurroundingSound_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34275,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34277
      start: 34272
    functionDepth: 1
    functionLinenumber: 34272
    functionLinenumberEnd: 34277
    functionName: Transform3DAudio_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Transform3DAudio_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34298
      start: 34284
    functionDepth: 0
    functionLinenumber: 34284
    functionLinenumberEnd: 34298
    functionName: Transform3DAudio_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Transform3DAudio_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34318
      start: 34300
    functionDepth: 0
    functionLinenumber: 34300
    functionLinenumberEnd: 34318
    functionName: Transform3DAudio_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Transform3DAudio_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 64
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34384
      start: 34319
    functionDepth: 0
    functionLinenumber: 34319
    functionLinenumberEnd: 34384
    functionName: Transform3DAudio_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Transform3DAudio_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34389,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34390,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34391,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34392,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34393,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34394,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34395,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34396,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34397,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34399
      start: 34387
    functionDepth: 0
    functionLinenumber: 34387
    functionLinenumberEnd: 34399
    functionName: Transform3DAudio_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Transform3DAudio_get_field_index_by_name(char *name)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34412,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34413,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34418,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34424,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34425,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34436,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34437,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34442
      start: 34400
    functionDepth: 1
    functionLinenumber: 34400
    functionLinenumberEnd: 34442
    functionName: Transform3DAudio_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool Transform3DAudio_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34449,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34451,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34452,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34455,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34456,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34457,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34458,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34459,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34460,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34461,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34462,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34463,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34464,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34465,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34466,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34467,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34469
      start: 34446
    functionDepth: 1
    functionLinenumber: 34446
    functionLinenumberEnd: 34469
    functionName: Transform3DAudio_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Transform3DAudio_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34479,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34480,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34481,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34482,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34483
      start: 34476
    functionDepth: 1
    functionLinenumber: 34476
    functionLinenumberEnd: 34483
    functionName: WideSound_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void WideSound_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34504
      start: 34490
    functionDepth: 0
    functionLinenumber: 34490
    functionLinenumberEnd: 34504
    functionName: WideSound_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 WideSound_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34524
      start: 34506
    functionDepth: 0
    functionLinenumber: 34506
    functionLinenumberEnd: 34524
    functionName: WideSound_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WideSound_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 97
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34623
      start: 34525
    functionDepth: 0
    functionLinenumber: 34525
    functionLinenumberEnd: 34623
    functionName: WideSound_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WideSound_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34628,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34629,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34630,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34631,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34632,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34633,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34634,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34635,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34636,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34637,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34638,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34639,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34640,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34641,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34642,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 32
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34644
      start: 34626
    functionDepth: 0
    functionLinenumber: 34626
    functionLinenumberEnd: 34644
    functionName: WideSound_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 WideSound_get_field_index_by_name(char *name)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34651,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34652,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34664,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34665,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34676,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34682,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34688,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 48
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34694
      start: 34645
    functionDepth: 1
    functionLinenumber: 34645
    functionLinenumberEnd: 34694
    functionName: WideSound_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool WideSound_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34701,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34703,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34706,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34707,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34708,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34709,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34712,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34714,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34715,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34716,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34717,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34718,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34720,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34721,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34722,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34724
      start: 34698
    functionDepth: 1
    functionLinenumber: 34698
    functionLinenumberEnd: 34724
    functionName: WideSound_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *WideSound_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34734,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34735,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34736,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34737
      start: 34731
    functionDepth: 1
    functionLinenumber: 34731
    functionLinenumberEnd: 34737
    functionName: ScoreShape_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void ScoreShape_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34757
      start: 34743
    functionDepth: 0
    functionLinenumber: 34743
    functionLinenumberEnd: 34757
    functionName: ScoreShape_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ScoreShape_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34774
      start: 34759
    functionDepth: 0
    functionLinenumber: 34759
    functionLinenumberEnd: 34774
    functionName: ScoreShape_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ScoreShape_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34795
      start: 34775
    functionDepth: 0
    functionLinenumber: 34775
    functionLinenumberEnd: 34795
    functionName: ScoreShape_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ScoreShape_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34800,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34801,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34803
      start: 34798
    functionDepth: 0
    functionLinenumber: 34798
    functionLinenumberEnd: 34803
    functionName: ScoreShape_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 ScoreShape_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34810
      start: 34804
    functionDepth: 0
    functionLinenumber: 34804
    functionLinenumberEnd: 34810
    functionName: ScoreShape_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool ScoreShape_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34817,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34819,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34823
      start: 34814
    functionDepth: 1
    functionLinenumber: 34814
    functionLinenumberEnd: 34823
    functionName: ScoreShape_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *ScoreShape_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34833,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34834,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34835,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34836,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34837,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34838,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34839,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34840,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34841,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34842,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34843,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34844,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34845,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34846,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34847,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34848
      start: 34830
    functionDepth: 1
    functionLinenumber: 34830
    functionLinenumberEnd: 34848
    functionName: MusicScore_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfint32_del
    - gf_sg_mfurl_del
    - gf_node_free
    - gf_sg_sfstring_del
    - gf_sg_mfstring_del
    linkageType: ''
    returnType: void
    signature: void MusicScore_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34869
      start: 34855
    functionDepth: 0
    functionLinenumber: 34855
    functionLinenumberEnd: 34869
    functionName: MusicScore_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 MusicScore_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34889
      start: 34871
    functionDepth: 0
    functionLinenumber: 34871
    functionLinenumberEnd: 34889
    functionName: MusicScore_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MusicScore_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 33
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 196
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35087
      start: 34890
    functionDepth: 0
    functionLinenumber: 34890
    functionLinenumberEnd: 35087
    functionName: MusicScore_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err MusicScore_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35092,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35093,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35094,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35095,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35096,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35097,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35098,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35099,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35100,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35101,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35102,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35103,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35104,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35105,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35106,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35107,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35108,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35109,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35110,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35111,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35112,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35113,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35114,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35115,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35116,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35117,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35118,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35119,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35120,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35121,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35122,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 64
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35124
      start: 35090
    functionDepth: 0
    functionLinenumber: 35090
    functionLinenumberEnd: 35124
    functionName: MusicScore_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 MusicScore_get_field_index_by_name(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35137
      start: 35125
    functionDepth: 0
    functionLinenumber: 35125
    functionLinenumberEnd: 35137
    functionName: MusicScore_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool MusicScore_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35144,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35146,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35152,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35153,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35154,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35157,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35159
      start: 35141
    functionDepth: 1
    functionLinenumber: 35141
    functionLinenumberEnd: 35159
    functionName: MusicScore_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *MusicScore_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35169,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35171
      start: 35166
    functionDepth: 1
    functionLinenumber: 35166
    functionLinenumberEnd: 35171
    functionName: FootPrintSetNode_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void FootPrintSetNode_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35191
      start: 35177
    functionDepth: 0
    functionLinenumber: 35177
    functionLinenumberEnd: 35191
    functionName: FootPrintSetNode_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 FootPrintSetNode_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35208
      start: 35193
    functionDepth: 0
    functionLinenumber: 35193
    functionLinenumberEnd: 35208
    functionName: FootPrintSetNode_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FootPrintSetNode_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35222
      start: 35209
    functionDepth: 0
    functionLinenumber: 35209
    functionLinenumberEnd: 35222
    functionName: FootPrintSetNode_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FootPrintSetNode_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35227,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35229
      start: 35225
    functionDepth: 0
    functionLinenumber: 35225
    functionLinenumberEnd: 35229
    functionName: FootPrintSetNode_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 FootPrintSetNode_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35236
      start: 35230
    functionDepth: 0
    functionLinenumber: 35230
    functionLinenumberEnd: 35236
    functionName: FootPrintSetNode_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool FootPrintSetNode_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35243,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35245,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35246,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35250
      start: 35240
    functionDepth: 1
    functionLinenumber: 35240
    functionLinenumberEnd: 35250
    functionName: FootPrintSetNode_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *FootPrintSetNode_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35260,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35262
      start: 35257
    functionDepth: 1
    functionLinenumber: 35257
    functionLinenumberEnd: 35262
    functionName: FootPrintNode_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void FootPrintNode_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35282
      start: 35268
    functionDepth: 0
    functionLinenumber: 35268
    functionLinenumberEnd: 35282
    functionName: FootPrintNode_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 FootPrintNode_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35299
      start: 35284
    functionDepth: 0
    functionLinenumber: 35284
    functionLinenumberEnd: 35299
    functionName: FootPrintNode_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FootPrintNode_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35319
      start: 35300
    functionDepth: 0
    functionLinenumber: 35300
    functionLinenumberEnd: 35319
    functionName: FootPrintNode_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FootPrintNode_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35324,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35325,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35327
      start: 35322
    functionDepth: 0
    functionLinenumber: 35322
    functionLinenumberEnd: 35327
    functionName: FootPrintNode_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 FootPrintNode_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35334
      start: 35328
    functionDepth: 0
    functionLinenumber: 35328
    functionLinenumberEnd: 35334
    functionName: FootPrintNode_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool FootPrintNode_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35341,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35343,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35348
      start: 35338
    functionDepth: 1
    functionLinenumber: 35338
    functionLinenumberEnd: 35348
    functionName: FootPrintNode_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *FootPrintNode_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35358,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35359,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35360,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35361,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35362,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35363
      start: 35355
    functionDepth: 1
    functionLinenumber: 35355
    functionLinenumberEnd: 35363
    functionName: BuildingPartNode_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_unregister_children
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void BuildingPartNode_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35383
      start: 35369
    functionDepth: 0
    functionLinenumber: 35369
    functionLinenumberEnd: 35383
    functionName: BuildingPartNode_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 BuildingPartNode_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35400
      start: 35385
    functionDepth: 0
    functionLinenumber: 35385
    functionLinenumberEnd: 35400
    functionName: BuildingPartNode_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BuildingPartNode_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 57
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35459
      start: 35401
    functionDepth: 0
    functionLinenumber: 35401
    functionLinenumberEnd: 35459
    functionName: BuildingPartNode_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BuildingPartNode_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35464,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35465,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35466,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35467,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35468,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35469,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35470,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35471,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35473
      start: 35462
    functionDepth: 0
    functionLinenumber: 35462
    functionLinenumberEnd: 35473
    functionName: BuildingPartNode_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 BuildingPartNode_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35480
      start: 35474
    functionDepth: 0
    functionLinenumber: 35474
    functionLinenumberEnd: 35480
    functionName: BuildingPartNode_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool BuildingPartNode_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35487,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35489,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35494,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35495,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35497
      start: 35484
    functionDepth: 1
    functionLinenumber: 35484
    functionLinenumberEnd: 35497
    functionName: BuildingPartNode_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *BuildingPartNode_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35507,1
    - Dst: gf_sg_sfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35508,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35509,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35510
      start: 35504
    functionDepth: 1
    functionLinenumber: 35504
    functionLinenumberEnd: 35510
    functionName: RoofNode_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfurl_del
    - gf_node_free
    - gf_sg_mffloat_del
    linkageType: ''
    returnType: void
    signature: void RoofNode_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35530
      start: 35516
    functionDepth: 0
    functionLinenumber: 35516
    functionLinenumberEnd: 35530
    functionName: RoofNode_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 RoofNode_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35547
      start: 35532
    functionDepth: 0
    functionLinenumber: 35532
    functionLinenumberEnd: 35547
    functionName: RoofNode_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err RoofNode_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 77
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35626
      start: 35548
    functionDepth: 0
    functionLinenumber: 35548
    functionLinenumberEnd: 35626
    functionName: RoofNode_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err RoofNode_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35631,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35632,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35633,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35634,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35635,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35636,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35637,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35638,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35639,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35640,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35641,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35642,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35644
      start: 35629
    functionDepth: 0
    functionLinenumber: 35629
    functionLinenumberEnd: 35644
    functionName: RoofNode_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 RoofNode_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35651
      start: 35645
    functionDepth: 0
    functionLinenumber: 35645
    functionLinenumberEnd: 35651
    functionName: RoofNode_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool RoofNode_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35658,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35660,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35664,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35665,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35667,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35668,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35671,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35672,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35673,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35674,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35675,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35677
      start: 35655
    functionDepth: 1
    functionLinenumber: 35655
    functionLinenumberEnd: 35677
    functionName: RoofNode_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *RoofNode_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35687,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35688,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35689,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35690,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35691,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35692
      start: 35684
    functionDepth: 1
    functionLinenumber: 35684
    functionLinenumberEnd: 35692
    functionName: FacadeNode_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfint32_del
    - gf_node_free
    - gf_node_unregister_children
    - gf_sg_mffloat_del
    - gf_sg_sfurl_del
    linkageType: ''
    returnType: void
    signature: void FacadeNode_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35712
      start: 35698
    functionDepth: 0
    functionLinenumber: 35698
    functionLinenumberEnd: 35712
    functionName: FacadeNode_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 FacadeNode_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35729
      start: 35714
    functionDepth: 0
    functionLinenumber: 35714
    functionLinenumberEnd: 35729
    functionName: FacadeNode_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FacadeNode_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 84
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35815
      start: 35730
    functionDepth: 0
    functionLinenumber: 35730
    functionLinenumberEnd: 35815
    functionName: FacadeNode_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err FacadeNode_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35820,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35821,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35822,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35823,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35824,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35825,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35826,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35827,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35828,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35829,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35830,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35831,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35832,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35834
      start: 35818
    functionDepth: 0
    functionLinenumber: 35818
    functionLinenumberEnd: 35834
    functionName: FacadeNode_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 FacadeNode_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35841
      start: 35835
    functionDepth: 0
    functionLinenumber: 35835
    functionLinenumberEnd: 35841
    functionName: FacadeNode_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool FacadeNode_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35848,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35850,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35853,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35854,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35855,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35856,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35857,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35858,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35859,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35861,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35864,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35866,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35868
      start: 35845
    functionDepth: 1
    functionLinenumber: 35845
    functionLinenumberEnd: 35868
    functionName: FacadeNode_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *FacadeNode_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35878,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35879,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35880
      start: 35875
    functionDepth: 1
    functionLinenumber: 35875
    functionLinenumberEnd: 35880
    functionName: Shadow_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void Shadow_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35900
      start: 35886
    functionDepth: 0
    functionLinenumber: 35886
    functionLinenumberEnd: 35900
    functionName: Shadow_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Shadow_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35917
      start: 35902
    functionDepth: 0
    functionLinenumber: 35902
    functionLinenumberEnd: 35917
    functionName: Shadow_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Shadow_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 52
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35971
      start: 35918
    functionDepth: 0
    functionLinenumber: 35918
    functionLinenumberEnd: 35971
    functionName: Shadow_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Shadow_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35976,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35977,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35978,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35979,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35980,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35981,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35982,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35984
      start: 35974
    functionDepth: 0
    functionLinenumber: 35974
    functionLinenumberEnd: 35984
    functionName: Shadow_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Shadow_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35991
      start: 35985
    functionDepth: 0
    functionLinenumber: 35985
    functionLinenumberEnd: 35991
    functionName: Shadow_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Shadow_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8 *AType,
      Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35998,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36000,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36001,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36007,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36009
      start: 35995
    functionDepth: 1
    functionLinenumber: 35995
    functionLinenumberEnd: 36009
    functionName: Shadow_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Shadow_Create()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36019,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36020,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36021,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36022,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36023,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36024,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36025
      start: 36016
    functionDepth: 1
    functionLinenumber: 36016
    functionLinenumberEnd: 36025
    functionName: CacheTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sg_mfurl_del
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void CacheTexture_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36043
      start: 36029
    functionDepth: 0
    functionLinenumber: 36029
    functionLinenumberEnd: 36043
    functionName: CacheTexture_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 CacheTexture_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36054
      start: 36045
    functionDepth: 0
    functionLinenumber: 36045
    functionLinenumberEnd: 36054
    functionName: CacheTexture_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CacheTexture_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 53
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36109
      start: 36055
    functionDepth: 0
    functionLinenumber: 36055
    functionLinenumberEnd: 36109
    functionName: CacheTexture_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CacheTexture_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36114,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36115,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36116,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36117,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36118,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36119,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36120,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36121,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36123
      start: 36112
    functionDepth: 0
    functionLinenumber: 36112
    functionLinenumberEnd: 36123
    functionName: CacheTexture_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 CacheTexture_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36130
      start: 36124
    functionDepth: 0
    functionLinenumber: 36124
    functionLinenumberEnd: 36130
    functionName: CacheTexture_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool CacheTexture_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36137,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36139,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36147
      start: 36134
    functionDepth: 1
    functionLinenumber: 36134
    functionLinenumberEnd: 36147
    functionName: CacheTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *CacheTexture_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36157,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36158,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36160
      start: 36154
    functionDepth: 1
    functionLinenumber: 36154
    functionLinenumberEnd: 36160
    functionName: EnvironmentTest_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void EnvironmentTest_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36180
      start: 36166
    functionDepth: 0
    functionLinenumber: 36166
    functionLinenumberEnd: 36180
    functionName: EnvironmentTest_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 EnvironmentTest_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36197
      start: 36182
    functionDepth: 0
    functionLinenumber: 36182
    functionLinenumberEnd: 36197
    functionName: EnvironmentTest_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EnvironmentTest_get_field_index(GF_Node *n, u32 inField, u8
      IndexMode, u32 *allField)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 60
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36259
      start: 36198
    functionDepth: 0
    functionLinenumber: 36198
    functionLinenumberEnd: 36259
    functionName: EnvironmentTest_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err EnvironmentTest_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36264,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36265,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36266,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36267,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36268,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36269,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36270,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36271,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36272,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36274
      start: 36262
    functionDepth: 0
    functionLinenumber: 36262
    functionLinenumberEnd: 36274
    functionName: EnvironmentTest_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 EnvironmentTest_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36281
      start: 36275
    functionDepth: 0
    functionLinenumber: 36275
    functionLinenumberEnd: 36281
    functionName: EnvironmentTest_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool EnvironmentTest_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36288,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36290,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36297
      start: 36285
    functionDepth: 1
    functionLinenumber: 36285
    functionLinenumberEnd: 36297
    functionName: EnvironmentTest_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *EnvironmentTest_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36307,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36308,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36309,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36310,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36311,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36312,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36313,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36314,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36315
      start: 36304
    functionDepth: 1
    functionLinenumber: 36304
    functionLinenumberEnd: 36315
    functionName: KeyNavigator_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void KeyNavigator_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36335
      start: 36321
    functionDepth: 0
    functionLinenumber: 36321
    functionLinenumberEnd: 36335
    functionName: KeyNavigator_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 KeyNavigator_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36352
      start: 36337
    functionDepth: 0
    functionLinenumber: 36337
    functionLinenumberEnd: 36352
    functionName: KeyNavigator_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err KeyNavigator_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 73
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36427
      start: 36353
    functionDepth: 0
    functionLinenumber: 36353
    functionLinenumberEnd: 36427
    functionName: KeyNavigator_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err KeyNavigator_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36432,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36433,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36434,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36435,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36436,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36437,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36438,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36439,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36440,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36441,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36443
      start: 36430
    functionDepth: 0
    functionLinenumber: 36430
    functionLinenumberEnd: 36443
    functionName: KeyNavigator_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 KeyNavigator_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36450
      start: 36444
    functionDepth: 0
    functionLinenumber: 36444
    functionLinenumberEnd: 36450
    functionName: KeyNavigator_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool KeyNavigator_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36457,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36459,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36462,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36464
      start: 36454
    functionDepth: 1
    functionLinenumber: 36454
    functionLinenumberEnd: 36464
    functionName: KeyNavigator_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *KeyNavigator_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36474,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36475,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36476,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36477
      start: 36471
    functionDepth: 1
    functionLinenumber: 36471
    functionLinenumberEnd: 36477
    functionName: SpacePartition_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_parent_destroy
    - gf_sg_sfurl_del
    - gf_node_free
    linkageType: ''
    returnType: void
    signature: void SpacePartition_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36497
      start: 36483
    functionDepth: 0
    functionLinenumber: 36483
    functionLinenumberEnd: 36497
    functionName: SpacePartition_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SpacePartition_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36514
      start: 36499
    functionDepth: 0
    functionLinenumber: 36499
    functionLinenumberEnd: 36514
    functionName: SpacePartition_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SpacePartition_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 34
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36550
      start: 36515
    functionDepth: 0
    functionLinenumber: 36515
    functionLinenumberEnd: 36550
    functionName: SpacePartition_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SpacePartition_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36555,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36556,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36557,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36558,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36560
      start: 36553
    functionDepth: 0
    functionLinenumber: 36553
    functionLinenumberEnd: 36560
    functionName: SpacePartition_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 SpacePartition_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36567
      start: 36561
    functionDepth: 0
    functionLinenumber: 36561
    functionLinenumberEnd: 36567
    functionName: SpacePartition_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool SpacePartition_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType,
      u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36574,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36576,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36577,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36581
      start: 36571
    functionDepth: 1
    functionLinenumber: 36571
    functionLinenumberEnd: 36581
    functionName: SpacePartition_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *SpacePartition_Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36591,1
    - Dst: gf_sg_mfattrref_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36592,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36593,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36594
      start: 36588
    functionDepth: 1
    functionLinenumber: 36588
    functionLinenumberEnd: 36594
    functionName: Storage_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_sg_mfattrref_del
    linkageType: ''
    returnType: void
    signature: void Storage_Del(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36614
      start: 36600
    functionDepth: 0
    functionLinenumber: 36600
    functionLinenumberEnd: 36614
    functionName: Storage_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 Storage_get_field_count(GF_Node *node, u8 IndexMode)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - n
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36631
      start: 36616
    functionDepth: 0
    functionLinenumber: 36616
    functionLinenumberEnd: 36631
    functionName: Storage_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Storage_get_field_index(GF_Node *n, u32 inField, u8 IndexMode,
      u32 *allField)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 43
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36676
      start: 36632
    functionDepth: 0
    functionLinenumber: 36632
    functionLinenumberEnd: 36676
    functionName: Storage_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Storage_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36681,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36682,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36683,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36684,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36685,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36686,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36688
      start: 36679
    functionDepth: 0
    functionLinenumber: 36679
    functionLinenumberEnd: 36688
    functionName: Storage_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 Storage_get_field_index_by_name(char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - n
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36695
      start: 36689
    functionDepth: 0
    functionLinenumber: 36689
    functionLinenumberEnd: 36695
    functionName: Storage_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool Storage_get_aq_info(GF_Node *n, u32 FieldIndex, u8 *QType, u8
      *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36702,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36704,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36710
      start: 36699
    functionDepth: 1
    functionLinenumber: 36699
    functionLinenumberEnd: 36710
    functionName: Storage_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Storage_Create()
  - BBCount: 197
    BranchProfiles: []
    Callsites:
    - Dst: Anchor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36719,1
    - Dst: AnimationStream_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36721,1
    - Dst: Appearance_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36723,1
    - Dst: AudioBuffer_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36725,1
    - Dst: AudioClip_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36727,1
    - Dst: AudioDelay_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36729,1
    - Dst: AudioFX_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36731,1
    - Dst: AudioMix_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36733,1
    - Dst: AudioSource_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36735,1
    - Dst: AudioSwitch_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36737,1
    - Dst: Background_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36739,1
    - Dst: Background2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36741,1
    - Dst: Billboard_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36743,1
    - Dst: Bitmap_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36745,1
    - Dst: Box_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36747,1
    - Dst: Circle_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36749,1
    - Dst: Collision_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36751,1
    - Dst: Color_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36753,1
    - Dst: ColorInterpolator_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36755,1
    - Dst: CompositeTexture2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36757,1
    - Dst: CompositeTexture3D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36759,1
    - Dst: Conditional_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36761,1
    - Dst: Cone_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36763,1
    - Dst: Coordinate_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36765,1
    - Dst: Coordinate2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36767,1
    - Dst: CoordinateInterpolator_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36769,1
    - Dst: CoordinateInterpolator2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36771,1
    - Dst: Curve2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36773,1
    - Dst: Cylinder_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36775,1
    - Dst: CylinderSensor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36777,1
    - Dst: DirectionalLight_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36779,1
    - Dst: DiscSensor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36781,1
    - Dst: ElevationGrid_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36783,1
    - Dst: Expression_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36785,1
    - Dst: Extrusion_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36787,1
    - Dst: Face_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36789,1
    - Dst: FaceDefMesh_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36791,1
    - Dst: FaceDefTables_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36793,1
    - Dst: FaceDefTransform_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36795,1
    - Dst: FAP_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36797,1
    - Dst: FDP_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36799,1
    - Dst: FIT_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36801,1
    - Dst: Fog_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36803,1
    - Dst: FontStyle_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36805,1
    - Dst: Form_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36807,1
    - Dst: Group_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36809,1
    - Dst: ImageTexture_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36811,1
    - Dst: IndexedFaceSet_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36813,1
    - Dst: IndexedFaceSet2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36815,1
    - Dst: IndexedLineSet_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36817,1
    - Dst: IndexedLineSet2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36819,1
    - Dst: Inline_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36821,1
    - Dst: LOD_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36823,1
    - Dst: Layer2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36825,1
    - Dst: Layer3D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36827,1
    - Dst: Layout_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36829,1
    - Dst: LineProperties_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36831,1
    - Dst: ListeningPoint_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36833,1
    - Dst: Material_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36835,1
    - Dst: Material2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36837,1
    - Dst: MovieTexture_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36839,1
    - Dst: NavigationInfo_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36841,1
    - Dst: Normal_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36843,1
    - Dst: NormalInterpolator_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36845,1
    - Dst: OrderedGroup_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36847,1
    - Dst: OrientationInterpolator_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36849,1
    - Dst: PixelTexture_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36851,1
    - Dst: PlaneSensor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36853,1
    - Dst: PlaneSensor2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36855,1
    - Dst: PointLight_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36857,1
    - Dst: PointSet_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36859,1
    - Dst: PointSet2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36861,1
    - Dst: PositionInterpolator_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36863,1
    - Dst: PositionInterpolator2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36865,1
    - Dst: ProximitySensor2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36867,1
    - Dst: ProximitySensor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36869,1
    - Dst: QuantizationParameter_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36871,1
    - Dst: Rectangle_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36873,1
    - Dst: ScalarInterpolator_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36875,1
    - Dst: Script_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36877,1
    - Dst: Shape_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36879,1
    - Dst: Sound_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36881,1
    - Dst: Sound2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36883,1
    - Dst: Sphere_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36885,1
    - Dst: SphereSensor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36887,1
    - Dst: SpotLight_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36889,1
    - Dst: Switch_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36891,1
    - Dst: TermCap_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36893,1
    - Dst: Text_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36895,1
    - Dst: TextureCoordinate_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36897,1
    - Dst: TextureTransform_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36899,1
    - Dst: TimeSensor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36901,1
    - Dst: TouchSensor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36903,1
    - Dst: Transform_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36905,1
    - Dst: Transform2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36907,1
    - Dst: Valuator_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36909,1
    - Dst: Viewpoint_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36911,1
    - Dst: VisibilitySensor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36913,1
    - Dst: Viseme_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36915,1
    - Dst: WorldInfo_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36917,1
    - Dst: AcousticMaterial_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36919,1
    - Dst: AcousticScene_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36921,1
    - Dst: ApplicationWindow_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36923,1
    - Dst: BAP_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36925,1
    - Dst: BDP_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36927,1
    - Dst: Body_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36929,1
    - Dst: BodyDefTable_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36931,1
    - Dst: BodySegmentConnectionHint_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36933,1
    - Dst: DirectiveSound_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36935,1
    - Dst: Hierarchical3DMesh_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36937,1
    - Dst: MaterialKey_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36939,1
    - Dst: PerceptualParameters_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36941,1
    - Dst: TemporalTransform_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36943,1
    - Dst: TemporalGroup_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36945,1
    - Dst: ServerCommand_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36947,1
    - Dst: InputSensor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36949,1
    - Dst: MatteTexture_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36951,1
    - Dst: MediaBuffer_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36953,1
    - Dst: MediaControl_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36955,1
    - Dst: MediaSensor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36957,1
    - Dst: BitWrapper_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36959,1
    - Dst: CoordinateInterpolator4D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36961,1
    - Dst: DepthImage_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36963,1
    - Dst: FFD_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36965,1
    - Dst: Implicit_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36967,1
    - Dst: XXLFM_Appearance_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36969,1
    - Dst: XXLFM_BlendList_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36971,1
    - Dst: XXLFM_FrameList_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36973,1
    - Dst: XXLFM_LightMap_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36975,1
    - Dst: XXLFM_SurfaceMapList_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36977,1
    - Dst: XXLFM_ViewMapList_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36979,1
    - Dst: MeshGrid_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36981,1
    - Dst: NonLinearDeformer_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36983,1
    - Dst: NurbsCurve_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36985,1
    - Dst: NurbsCurve2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36987,1
    - Dst: NurbsSurface_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36989,1
    - Dst: OctreeImage_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36991,1
    - Dst: XXParticles_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36993,1
    - Dst: XXParticleInitBox_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36995,1
    - Dst: XXPlanarObstacle_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36997,1
    - Dst: XXPointAttractor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36999,1
    - Dst: PointTexture_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37001,1
    - Dst: PositionAnimator_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37003,1
    - Dst: PositionAnimator2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37005,1
    - Dst: PositionInterpolator4D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37007,1
    - Dst: ProceduralTexture_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37009,1
    - Dst: Quadric_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37011,1
    - Dst: SBBone_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37013,1
    - Dst: SBMuscle_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37015,1
    - Dst: SBSegment_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37017,1
    - Dst: SBSite_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37019,1
    - Dst: SBSkinnedModel_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37021,1
    - Dst: SBVCAnimation_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37023,1
    - Dst: ScalarAnimator_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37025,1
    - Dst: SimpleTexture_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37027,1
    - Dst: SolidRep_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37029,1
    - Dst: SubdivisionSurface_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37031,1
    - Dst: SubdivSurfaceSector_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37033,1
    - Dst: WaveletSubdivisionSurface_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37035,1
    - Dst: Clipper2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37037,1
    - Dst: ColorTransform_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37039,1
    - Dst: Ellipse_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37041,1
    - Dst: LinearGradient_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37043,1
    - Dst: PathLayout_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37045,1
    - Dst: RadialGradient_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37047,1
    - Dst: SynthesizedTexture_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37049,1
    - Dst: TransformMatrix2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37051,1
    - Dst: Viewport_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37053,1
    - Dst: XCurve2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37055,1
    - Dst: XFontStyle_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37057,1
    - Dst: XLineProperties_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37059,1
    - Dst: AdvancedAudioBuffer_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37061,1
    - Dst: AudioChannelConfig_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37063,1
    - Dst: DepthImageV2_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37065,1
    - Dst: MorphShape_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37067,1
    - Dst: MultiTexture_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37069,1
    - Dst: PointTextureV2_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37071,1
    - Dst: SBVCAnimationV2_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37073,1
    - Dst: SimpleTextureV2_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37075,1
    - Dst: SurroundingSound_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37077,1
    - Dst: Transform3DAudio_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37079,1
    - Dst: WideSound_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37081,1
    - Dst: ScoreShape_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37083,1
    - Dst: MusicScore_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37085,1
    - Dst: FootPrintSetNode_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37087,1
    - Dst: FootPrintNode_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37089,1
    - Dst: BuildingPartNode_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37091,1
    - Dst: RoofNode_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37093,1
    - Dst: FacadeNode_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37095,1
    - Dst: Shadow_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37097,1
    - Dst: CacheTexture_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37099,1
    - Dst: EnvironmentTest_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37101,1
    - Dst: KeyNavigator_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37103,1
    - Dst: SpacePartition_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37105,1
    - Dst: Storage_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37107,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 395
    argCount: 1
    argNames:
    - NodeTag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37111
      start: 36715
    functionDepth: 2
    functionLinenumber: 36715
    functionLinenumberEnd: 37111
    functionName: gf_sg_mpeg4_node_new
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - PositionInterpolator2D_Create
    - Sphere_Create
    - SBVCAnimation_Create
    - AnimationStream_Create
    - FootPrintSetNode_Create
    - SBSite_Create
    - Material2D_Create
    - ImageTexture_Create
    - Implicit_Create
    - SBSkinnedModel_Create
    - SBVCAnimationV2_Create
    - SpacePartition_Create
    - Cylinder_Create
    - WaveletSubdivisionSurface_Create
    - Inline_Create
    - WideSound_Create
    - Shadow_Create
    - AudioSource_Create
    - IndexedLineSet2D_Create
    - AudioSwitch_Create
    - PointSet2D_Create
    - RoofNode_Create
    - CacheTexture_Create
    - PlaneSensor_Create
    - CoordinateInterpolator_Create
    - DirectionalLight_Create
    - PlaneSensor2D_Create
    - SimpleTexture_Create
    - Rectangle_Create
    - BodyDefTable_Create
    - IndexedFaceSet_Create
    - Normal_Create
    - Sound_Create
    - NurbsSurface_Create
    - DepthImageV2_Create
    - AudioBuffer_Create
    - TextureTransform_Create
    - Curve2D_Create
    - WorldInfo_Create
    - MorphShape_Create
    - Group_Create
    - CoordinateInterpolator2D_Create
    - FAP_Create
    - LineProperties_Create
    - Script_Create
    - Viseme_Create
    - ElevationGrid_Create
    - MediaBuffer_Create
    - SolidRep_Create
    - XXLFM_ViewMapList_Create
    - SubdivSurfaceSector_Create
    - CompositeTexture3D_Create
    - ProceduralTexture_Create
    - FaceDefMesh_Create
    - PerceptualParameters_Create
    - DepthImage_Create
    - FaceDefTransform_Create
    - ListeningPoint_Create
    - PointTexture_Create
    - Material_Create
    - FaceDefTables_Create
    - CylinderSensor_Create
    - Form_Create
    - AcousticScene_Create
    - SurroundingSound_Create
    - NurbsCurve2D_Create
    - XXLFM_FrameList_Create
    - AudioDelay_Create
    - PointTextureV2_Create
    - MovieTexture_Create
    - Transform2D_Create
    - TermCap_Create
    - SimpleTextureV2_Create
    - Bitmap_Create
    - SBSegment_Create
    - AudioClip_Create
    - Extrusion_Create
    - TransformMatrix2D_Create
    - XFontStyle_Create
    - ServerCommand_Create
    - OctreeImage_Create
    - ScalarAnimator_Create
    - KeyNavigator_Create
    - PositionInterpolator_Create
    - SynthesizedTexture_Create
    - FacadeNode_Create
    - OrderedGroup_Create
    - SubdivisionSurface_Create
    - Collision_Create
    - TextureCoordinate_Create
    - Box_Create
    - Expression_Create
    - IndexedLineSet_Create
    - ProximitySensor2D_Create
    - ScoreShape_Create
    - Coordinate2D_Create
    - RadialGradient_Create
    - PositionAnimator_Create
    - NormalInterpolator_Create
    - Fog_Create
    - ScalarInterpolator_Create
    - Text_Create
    - Ellipse_Create
    - ApplicationWindow_Create
    - Body_Create
    - BodySegmentConnectionHint_Create
    - Color_Create
    - QuantizationParameter_Create
    - XXLFM_LightMap_Create
    - Sound2D_Create
    - XCurve2D_Create
    - MultiTexture_Create
    - XLineProperties_Create
    - ColorInterpolator_Create
    - XXPointAttractor_Create
    - CompositeTexture2D_Create
    - MusicScore_Create
    - MeshGrid_Create
    - PathLayout_Create
    - AudioChannelConfig_Create
    - XXParticleInitBox_Create
    - Switch_Create
    - Shape_Create
    - MatteTexture_Create
    - Valuator_Create
    - TemporalTransform_Create
    - NonLinearDeformer_Create
    - PositionAnimator2D_Create
    - FDP_Create
    - BDP_Create
    - NavigationInfo_Create
    - XXLFM_BlendList_Create
    - Coordinate_Create
    - XXLFM_Appearance_Create
    - IndexedFaceSet2D_Create
    - DiscSensor_Create
    - MediaControl_Create
    - Face_Create
    - PointLight_Create
    - Layout_Create
    - Transform_Create
    - MaterialKey_Create
    - LinearGradient_Create
    - XXPlanarObstacle_Create
    - ProximitySensor_Create
    - AudioMix_Create
    - XXParticles_Create
    - Circle_Create
    - DirectiveSound_Create
    - SpotLight_Create
    - VisibilitySensor_Create
    - Clipper2D_Create
    - SBMuscle_Create
    - AudioFX_Create
    - Hierarchical3DMesh_Create
    - Appearance_Create
    - PointSet_Create
    - Cone_Create
    - AcousticMaterial_Create
    - NurbsCurve_Create
    - Background_Create
    - LOD_Create
    - Storage_Create
    - Viewpoint_Create
    - Quadric_Create
    - Conditional_Create
    - OrientationInterpolator_Create
    - XXLFM_SurfaceMapList_Create
    - AdvancedAudioBuffer_Create
    - SphereSensor_Create
    - PositionInterpolator4D_Create
    - Anchor_Create
    - Background2D_Create
    - Layer3D_Create
    - FIT_Create
    - TouchSensor_Create
    - BAP_Create
    - SBBone_Create
    - FootPrintNode_Create
    - FontStyle_Create
    - MediaSensor_Create
    - Billboard_Create
    - BuildingPartNode_Create
    - TimeSensor_Create
    - InputSensor_Create
    - CoordinateInterpolator4D_Create
    - ColorTransform_Create
    - Layer2D_Create
    - Transform3DAudio_Create
    - PixelTexture_Create
    - FFD_Create
    - EnvironmentTest_Create
    - TemporalGroup_Create
    - Viewport_Create
    - BitWrapper_Create
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *gf_sg_mpeg4_node_new(u32 NodeTag)
  - BBCount: 197
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 395
    argCount: 1
    argNames:
    - NodeTag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37509
      start: 37113
    functionDepth: 0
    functionLinenumber: 37113
    functionLinenumberEnd: 37509
    functionName: gf_sg_mpeg4_node_get_class_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_sg_mpeg4_node_get_class_name(u32 NodeTag)
  - BBCount: 197
    BranchProfiles: []
    Callsites:
    - Dst: Anchor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37515,1
    - Dst: AnimationStream_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37518,1
    - Dst: Appearance_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37521,1
    - Dst: AudioBuffer_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37524,1
    - Dst: AudioClip_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37527,1
    - Dst: AudioDelay_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37530,1
    - Dst: AudioFX_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37533,1
    - Dst: AudioMix_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37536,1
    - Dst: AudioSource_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37539,1
    - Dst: AudioSwitch_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37542,1
    - Dst: Background_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37545,1
    - Dst: Background2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37548,1
    - Dst: Billboard_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37551,1
    - Dst: Bitmap_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37554,1
    - Dst: Box_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37557,1
    - Dst: Circle_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37560,1
    - Dst: Collision_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37563,1
    - Dst: Color_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37566,1
    - Dst: ColorInterpolator_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37569,1
    - Dst: CompositeTexture2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37572,1
    - Dst: CompositeTexture3D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37575,1
    - Dst: Conditional_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37578,1
    - Dst: Cone_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37581,1
    - Dst: Coordinate_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37584,1
    - Dst: Coordinate2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37587,1
    - Dst: CoordinateInterpolator_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37590,1
    - Dst: CoordinateInterpolator2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37593,1
    - Dst: Curve2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37596,1
    - Dst: Cylinder_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37599,1
    - Dst: CylinderSensor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37602,1
    - Dst: DirectionalLight_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37605,1
    - Dst: DiscSensor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37608,1
    - Dst: ElevationGrid_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37611,1
    - Dst: Expression_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37614,1
    - Dst: Extrusion_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37617,1
    - Dst: Face_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37620,1
    - Dst: FaceDefMesh_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37623,1
    - Dst: FaceDefTables_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37626,1
    - Dst: FaceDefTransform_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37629,1
    - Dst: FAP_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37632,1
    - Dst: FDP_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37635,1
    - Dst: FIT_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37638,1
    - Dst: Fog_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37641,1
    - Dst: FontStyle_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37644,1
    - Dst: Form_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37647,1
    - Dst: Group_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37650,1
    - Dst: ImageTexture_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37653,1
    - Dst: IndexedFaceSet_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37656,1
    - Dst: IndexedFaceSet2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37659,1
    - Dst: IndexedLineSet_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37662,1
    - Dst: IndexedLineSet2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37665,1
    - Dst: Inline_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37668,1
    - Dst: LOD_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37671,1
    - Dst: Layer2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37674,1
    - Dst: Layer3D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37677,1
    - Dst: Layout_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37680,1
    - Dst: LineProperties_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37683,1
    - Dst: ListeningPoint_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37686,1
    - Dst: Material_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37689,1
    - Dst: Material2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37692,1
    - Dst: MovieTexture_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37695,1
    - Dst: NavigationInfo_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37698,1
    - Dst: Normal_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37701,1
    - Dst: NormalInterpolator_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37704,1
    - Dst: OrderedGroup_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37707,1
    - Dst: OrientationInterpolator_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37710,1
    - Dst: PixelTexture_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37713,1
    - Dst: PlaneSensor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37716,1
    - Dst: PlaneSensor2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37719,1
    - Dst: PointLight_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37722,1
    - Dst: PointSet_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37725,1
    - Dst: PointSet2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37728,1
    - Dst: PositionInterpolator_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37731,1
    - Dst: PositionInterpolator2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37734,1
    - Dst: ProximitySensor2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37737,1
    - Dst: ProximitySensor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37740,1
    - Dst: QuantizationParameter_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37743,1
    - Dst: Rectangle_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37746,1
    - Dst: ScalarInterpolator_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37749,1
    - Dst: Script_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37752,1
    - Dst: Shape_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37755,1
    - Dst: Sound_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37758,1
    - Dst: Sound2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37761,1
    - Dst: Sphere_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37764,1
    - Dst: SphereSensor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37767,1
    - Dst: SpotLight_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37770,1
    - Dst: Switch_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37773,1
    - Dst: TermCap_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37776,1
    - Dst: Text_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37779,1
    - Dst: TextureCoordinate_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37782,1
    - Dst: TextureTransform_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37785,1
    - Dst: TimeSensor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37788,1
    - Dst: TouchSensor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37791,1
    - Dst: Transform_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37794,1
    - Dst: Transform2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37797,1
    - Dst: Valuator_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37800,1
    - Dst: Viewpoint_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37803,1
    - Dst: VisibilitySensor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37806,1
    - Dst: Viseme_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37809,1
    - Dst: WorldInfo_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37812,1
    - Dst: AcousticMaterial_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37815,1
    - Dst: AcousticScene_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37818,1
    - Dst: ApplicationWindow_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37821,1
    - Dst: BAP_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37824,1
    - Dst: BDP_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37827,1
    - Dst: Body_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37830,1
    - Dst: BodyDefTable_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37833,1
    - Dst: BodySegmentConnectionHint_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37836,1
    - Dst: DirectiveSound_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37839,1
    - Dst: Hierarchical3DMesh_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37842,1
    - Dst: MaterialKey_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37845,1
    - Dst: PerceptualParameters_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37848,1
    - Dst: TemporalTransform_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37851,1
    - Dst: TemporalGroup_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37854,1
    - Dst: ServerCommand_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37857,1
    - Dst: InputSensor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37860,1
    - Dst: MatteTexture_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37863,1
    - Dst: MediaBuffer_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37866,1
    - Dst: MediaControl_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37869,1
    - Dst: MediaSensor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37872,1
    - Dst: BitWrapper_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37875,1
    - Dst: CoordinateInterpolator4D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37878,1
    - Dst: DepthImage_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37881,1
    - Dst: FFD_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37884,1
    - Dst: Implicit_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37887,1
    - Dst: XXLFM_Appearance_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37890,1
    - Dst: XXLFM_BlendList_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37893,1
    - Dst: XXLFM_FrameList_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37896,1
    - Dst: XXLFM_LightMap_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37899,1
    - Dst: XXLFM_SurfaceMapList_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37902,1
    - Dst: XXLFM_ViewMapList_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37905,1
    - Dst: MeshGrid_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37908,1
    - Dst: NonLinearDeformer_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37911,1
    - Dst: NurbsCurve_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37914,1
    - Dst: NurbsCurve2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37917,1
    - Dst: NurbsSurface_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37920,1
    - Dst: OctreeImage_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37923,1
    - Dst: XXParticles_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37926,1
    - Dst: XXParticleInitBox_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37929,1
    - Dst: XXPlanarObstacle_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37932,1
    - Dst: XXPointAttractor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37935,1
    - Dst: PointTexture_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37938,1
    - Dst: PositionAnimator_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37941,1
    - Dst: PositionAnimator2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37944,1
    - Dst: PositionInterpolator4D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37947,1
    - Dst: ProceduralTexture_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37950,1
    - Dst: Quadric_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37953,1
    - Dst: SBBone_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37956,1
    - Dst: SBMuscle_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37959,1
    - Dst: SBSegment_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37962,1
    - Dst: SBSite_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37965,1
    - Dst: SBSkinnedModel_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37968,1
    - Dst: SBVCAnimation_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37971,1
    - Dst: ScalarAnimator_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37974,1
    - Dst: SimpleTexture_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37977,1
    - Dst: SolidRep_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37980,1
    - Dst: SubdivisionSurface_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37983,1
    - Dst: SubdivSurfaceSector_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37986,1
    - Dst: WaveletSubdivisionSurface_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37989,1
    - Dst: Clipper2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37992,1
    - Dst: ColorTransform_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37995,1
    - Dst: Ellipse_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37998,1
    - Dst: LinearGradient_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38001,1
    - Dst: PathLayout_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38004,1
    - Dst: RadialGradient_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38007,1
    - Dst: SynthesizedTexture_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38010,1
    - Dst: TransformMatrix2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38013,1
    - Dst: Viewport_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38016,1
    - Dst: XCurve2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38019,1
    - Dst: XFontStyle_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38022,1
    - Dst: XLineProperties_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38025,1
    - Dst: AdvancedAudioBuffer_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38028,1
    - Dst: AudioChannelConfig_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38031,1
    - Dst: DepthImageV2_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38034,1
    - Dst: MorphShape_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38037,1
    - Dst: MultiTexture_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38040,1
    - Dst: PointTextureV2_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38043,1
    - Dst: SBVCAnimationV2_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38046,1
    - Dst: SimpleTextureV2_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38049,1
    - Dst: SurroundingSound_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38052,1
    - Dst: Transform3DAudio_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38055,1
    - Dst: WideSound_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38058,1
    - Dst: ScoreShape_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38061,1
    - Dst: MusicScore_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38064,1
    - Dst: FootPrintSetNode_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38067,1
    - Dst: FootPrintNode_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38070,1
    - Dst: BuildingPartNode_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38073,1
    - Dst: RoofNode_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38076,1
    - Dst: FacadeNode_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38079,1
    - Dst: Shadow_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38082,1
    - Dst: CacheTexture_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38085,1
    - Dst: EnvironmentTest_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38088,1
    - Dst: KeyNavigator_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38091,1
    - Dst: SpacePartition_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38094,1
    - Dst: Storage_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38097,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 590
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38102
      start: 37511
    functionDepth: 2
    functionLinenumber: 37511
    functionLinenumberEnd: 38102
    functionName: gf_sg_mpeg4_node_del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - Conditional_Del
    - ColorInterpolator_Del
    - ScoreShape_Del
    - AcousticMaterial_Del
    - CompositeTexture2D_Del
    - AudioClip_Del
    - Sound_Del
    - Implicit_Del
    - Material2D_Del
    - TextureCoordinate_Del
    - FootPrintNode_Del
    - XXParticles_Del
    - Ellipse_Del
    - AdvancedAudioBuffer_Del
    - XXLFM_FrameList_Del
    - MultiTexture_Del
    - PositionAnimator_Del
    - XXLFM_Appearance_Del
    - Quadric_Del
    - LinearGradient_Del
    - BAP_Del
    - OrientationInterpolator_Del
    - IndexedFaceSet2D_Del
    - SpacePartition_Del
    - Color_Del
    - Text_Del
    - ServerCommand_Del
    - MediaControl_Del
    - TransformMatrix2D_Del
    - CoordinateInterpolator4D_Del
    - XLineProperties_Del
    - SynthesizedTexture_Del
    - Switch_Del
    - FacadeNode_Del
    - Transform2D_Del
    - OrderedGroup_Del
    - Material_Del
    - Sphere_Del
    - PositionInterpolator4D_Del
    - Layer3D_Del
    - KeyNavigator_Del
    - TemporalGroup_Del
    - IndexedFaceSet_Del
    - Hierarchical3DMesh_Del
    - FFD_Del
    - Coordinate2D_Del
    - MediaBuffer_Del
    - Storage_Del
    - IndexedLineSet2D_Del
    - DepthImage_Del
    - Curve2D_Del
    - Fog_Del
    - XFontStyle_Del
    - ProceduralTexture_Del
    - QuantizationParameter_Del
    - Billboard_Del
    - FDP_Del
    - SBVCAnimation_Del
    - SBSkinnedModel_Del
    - MaterialKey_Del
    - Appearance_Del
    - SphereSensor_Del
    - AudioBuffer_Del
    - LineProperties_Del
    - Layout_Del
    - AudioChannelConfig_Del
    - FaceDefTransform_Del
    - PixelTexture_Del
    - SimpleTexture_Del
    - PointSet_Del
    - CacheTexture_Del
    - AudioMix_Del
    - Clipper2D_Del
    - EnvironmentTest_Del
    - Anchor_Del
    - SBBone_Del
    - SBVCAnimationV2_Del
    - DepthImageV2_Del
    - Group_Del
    - NormalInterpolator_Del
    - XXLFM_BlendList_Del
    - Background2D_Del
    - PlaneSensor_Del
    - PositionInterpolator_Del
    - FAP_Del
    - BodyDefTable_Del
    - PositionAnimator2D_Del
    - Shadow_Del
    - LOD_Del
    - WorldInfo_Del
    - FaceDefTables_Del
    - TouchSensor_Del
    - MeshGrid_Del
    - DiscSensor_Del
    - SBSegment_Del
    - Expression_Del
    - XXParticleInitBox_Del
    - ScalarAnimator_Del
    - XXLFM_ViewMapList_Del
    - Form_Del
    - RoofNode_Del
    - BodySegmentConnectionHint_Del
    - CoordinateInterpolator2D_Del
    - Sound2D_Del
    - DirectiveSound_Del
    - SBMuscle_Del
    - VisibilitySensor_Del
    - Coordinate_Del
    - BDP_Del
    - BitWrapper_Del
    - NurbsSurface_Del
    - TimeSensor_Del
    - Viseme_Del
    - CompositeTexture3D_Del
    - ColorTransform_Del
    - Bitmap_Del
    - Viewpoint_Del
    - MusicScore_Del
    - PositionInterpolator2D_Del
    - TextureTransform_Del
    - AnimationStream_Del
    - PointLight_Del
    - PointTextureV2_Del
    - XXPlanarObstacle_Del
    - IndexedLineSet_Del
    - AudioSwitch_Del
    - FIT_Del
    - MorphShape_Del
    - ApplicationWindow_Del
    - Shape_Del
    - AcousticScene_Del
    - XCurve2D_Del
    - Circle_Del
    - PlaneSensor2D_Del
    - ScalarInterpolator_Del
    - SolidRep_Del
    - SubdivSurfaceSector_Del
    - ProximitySensor2D_Del
    - NurbsCurve_Del
    - MediaSensor_Del
    - SimpleTextureV2_Del
    - BuildingPartNode_Del
    - NurbsCurve2D_Del
    - AudioFX_Del
    - ListeningPoint_Del
    - SubdivisionSurface_Del
    - CoordinateInterpolator_Del
    - Transform_Del
    - TemporalTransform_Del
    - Transform3DAudio_Del
    - Script_Del
    - Cone_Del
    - Inline_Del
    - ProximitySensor_Del
    - OctreeImage_Del
    - Face_Del
    - TermCap_Del
    - Cylinder_Del
    - Layer2D_Del
    - InputSensor_Del
    - SurroundingSound_Del
    - XXPointAttractor_Del
    - Extrusion_Del
    - FontStyle_Del
    - Collision_Del
    - CylinderSensor_Del
    - WideSound_Del
    - Body_Del
    - FootPrintSetNode_Del
    - RadialGradient_Del
    - Rectangle_Del
    - PerceptualParameters_Del
    - PointTexture_Del
    - NonLinearDeformer_Del
    - AudioSource_Del
    - Viewport_Del
    - MovieTexture_Del
    - AudioDelay_Del
    - WaveletSubdivisionSurface_Del
    - ImageTexture_Del
    - PointSet2D_Del
    - MatteTexture_Del
    - Normal_Del
    - Background_Del
    - XXLFM_SurfaceMapList_Del
    - ElevationGrid_Del
    - XXLFM_LightMap_Del
    - SBSite_Del
    - Valuator_Del
    - DirectionalLight_Del
    - FaceDefMesh_Del
    - PathLayout_Del
    - NavigationInfo_Del
    - SpotLight_Del
    - Box_Del
    linkageType: ''
    returnType: void
    signature: void gf_sg_mpeg4_node_del(GF_Node *node)
  - BBCount: 197
    BranchProfiles: []
    Callsites:
    - Dst: Anchor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38108,1
    - Dst: AnimationStream_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38110,1
    - Dst: Appearance_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38112,1
    - Dst: AudioBuffer_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38114,1
    - Dst: AudioClip_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38116,1
    - Dst: AudioDelay_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38118,1
    - Dst: AudioFX_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38120,1
    - Dst: AudioMix_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38122,1
    - Dst: AudioSource_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38124,1
    - Dst: AudioSwitch_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38126,1
    - Dst: Background_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38128,1
    - Dst: Background2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38130,1
    - Dst: Billboard_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38132,1
    - Dst: Bitmap_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38134,1
    - Dst: Box_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38136,1
    - Dst: Circle_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38138,1
    - Dst: Collision_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38140,1
    - Dst: Color_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38142,1
    - Dst: ColorInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38144,1
    - Dst: CompositeTexture2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38146,1
    - Dst: CompositeTexture3D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38148,1
    - Dst: Conditional_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38150,1
    - Dst: Cone_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38152,1
    - Dst: Coordinate_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38154,1
    - Dst: Coordinate2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38156,1
    - Dst: CoordinateInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38158,1
    - Dst: CoordinateInterpolator2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38160,1
    - Dst: Curve2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38162,1
    - Dst: Cylinder_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38164,1
    - Dst: CylinderSensor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38166,1
    - Dst: DirectionalLight_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38168,1
    - Dst: DiscSensor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38170,1
    - Dst: ElevationGrid_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38172,1
    - Dst: Expression_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38174,1
    - Dst: Extrusion_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38176,1
    - Dst: Face_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38178,1
    - Dst: FaceDefMesh_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38180,1
    - Dst: FaceDefTables_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38182,1
    - Dst: FaceDefTransform_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38184,1
    - Dst: FAP_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38186,1
    - Dst: FDP_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38188,1
    - Dst: FIT_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38190,1
    - Dst: Fog_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38192,1
    - Dst: FontStyle_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38194,1
    - Dst: Form_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38196,1
    - Dst: Group_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38198,1
    - Dst: ImageTexture_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38200,1
    - Dst: IndexedFaceSet_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38202,1
    - Dst: IndexedFaceSet2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38204,1
    - Dst: IndexedLineSet_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38206,1
    - Dst: IndexedLineSet2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38208,1
    - Dst: Inline_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38210,1
    - Dst: LOD_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38212,1
    - Dst: Layer2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38214,1
    - Dst: Layer3D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38216,1
    - Dst: Layout_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38218,1
    - Dst: LineProperties_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38220,1
    - Dst: ListeningPoint_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38222,1
    - Dst: Material_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38224,1
    - Dst: Material2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38226,1
    - Dst: MovieTexture_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38228,1
    - Dst: NavigationInfo_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38230,1
    - Dst: Normal_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38232,1
    - Dst: NormalInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38234,1
    - Dst: OrderedGroup_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38236,1
    - Dst: OrientationInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38238,1
    - Dst: PixelTexture_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38240,1
    - Dst: PlaneSensor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38242,1
    - Dst: PlaneSensor2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38244,1
    - Dst: PointLight_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38246,1
    - Dst: PointSet_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38248,1
    - Dst: PointSet2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38250,1
    - Dst: PositionInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38252,1
    - Dst: PositionInterpolator2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38254,1
    - Dst: ProximitySensor2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38256,1
    - Dst: ProximitySensor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38258,1
    - Dst: QuantizationParameter_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38260,1
    - Dst: Rectangle_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38262,1
    - Dst: ScalarInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38264,1
    - Dst: Script_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38266,1
    - Dst: Shape_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38268,1
    - Dst: Sound_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38270,1
    - Dst: Sound2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38272,1
    - Dst: Sphere_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38274,1
    - Dst: SphereSensor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38276,1
    - Dst: SpotLight_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38278,1
    - Dst: Switch_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38280,1
    - Dst: TermCap_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38282,1
    - Dst: Text_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38284,1
    - Dst: TextureCoordinate_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38286,1
    - Dst: TextureTransform_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38288,1
    - Dst: TimeSensor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38290,1
    - Dst: TouchSensor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38292,1
    - Dst: Transform_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38294,1
    - Dst: Transform2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38296,1
    - Dst: Valuator_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38298,1
    - Dst: Viewpoint_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38300,1
    - Dst: VisibilitySensor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38302,1
    - Dst: Viseme_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38304,1
    - Dst: WorldInfo_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38306,1
    - Dst: AcousticMaterial_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38308,1
    - Dst: AcousticScene_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38310,1
    - Dst: ApplicationWindow_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38312,1
    - Dst: BAP_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38314,1
    - Dst: BDP_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38316,1
    - Dst: Body_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38318,1
    - Dst: BodyDefTable_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38320,1
    - Dst: BodySegmentConnectionHint_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38322,1
    - Dst: DirectiveSound_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38324,1
    - Dst: Hierarchical3DMesh_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38326,1
    - Dst: MaterialKey_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38328,1
    - Dst: PerceptualParameters_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38330,1
    - Dst: TemporalTransform_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38332,1
    - Dst: TemporalGroup_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38334,1
    - Dst: ServerCommand_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38336,1
    - Dst: InputSensor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38338,1
    - Dst: MatteTexture_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38340,1
    - Dst: MediaBuffer_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38342,1
    - Dst: MediaControl_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38344,1
    - Dst: MediaSensor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38346,1
    - Dst: BitWrapper_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38348,1
    - Dst: CoordinateInterpolator4D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38350,1
    - Dst: DepthImage_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38352,1
    - Dst: FFD_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38354,1
    - Dst: Implicit_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38356,1
    - Dst: XXLFM_Appearance_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38358,1
    - Dst: XXLFM_BlendList_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38360,1
    - Dst: XXLFM_FrameList_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38362,1
    - Dst: XXLFM_LightMap_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38364,1
    - Dst: XXLFM_SurfaceMapList_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38366,1
    - Dst: XXLFM_ViewMapList_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38368,1
    - Dst: MeshGrid_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38370,1
    - Dst: NonLinearDeformer_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38372,1
    - Dst: NurbsCurve_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38374,1
    - Dst: NurbsCurve2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38376,1
    - Dst: NurbsSurface_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38378,1
    - Dst: OctreeImage_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38380,1
    - Dst: XXParticles_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38382,1
    - Dst: XXParticleInitBox_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38384,1
    - Dst: XXPlanarObstacle_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38386,1
    - Dst: XXPointAttractor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38388,1
    - Dst: PointTexture_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38390,1
    - Dst: PositionAnimator_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38392,1
    - Dst: PositionAnimator2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38394,1
    - Dst: PositionInterpolator4D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38396,1
    - Dst: ProceduralTexture_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38398,1
    - Dst: Quadric_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38400,1
    - Dst: SBBone_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38402,1
    - Dst: SBMuscle_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38404,1
    - Dst: SBSegment_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38406,1
    - Dst: SBSite_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38408,1
    - Dst: SBSkinnedModel_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38410,1
    - Dst: SBVCAnimation_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38412,1
    - Dst: ScalarAnimator_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38414,1
    - Dst: SimpleTexture_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38416,1
    - Dst: SolidRep_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38418,1
    - Dst: SubdivisionSurface_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38420,1
    - Dst: SubdivSurfaceSector_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38422,1
    - Dst: WaveletSubdivisionSurface_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38424,1
    - Dst: Clipper2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38426,1
    - Dst: ColorTransform_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38428,1
    - Dst: Ellipse_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38430,1
    - Dst: LinearGradient_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38432,1
    - Dst: PathLayout_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38434,1
    - Dst: RadialGradient_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38436,1
    - Dst: SynthesizedTexture_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38438,1
    - Dst: TransformMatrix2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38440,1
    - Dst: Viewport_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38442,1
    - Dst: XCurve2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38444,1
    - Dst: XFontStyle_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38446,1
    - Dst: XLineProperties_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38448,1
    - Dst: AdvancedAudioBuffer_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38450,1
    - Dst: AudioChannelConfig_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38452,1
    - Dst: DepthImageV2_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38454,1
    - Dst: MorphShape_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38456,1
    - Dst: MultiTexture_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38458,1
    - Dst: PointTextureV2_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38460,1
    - Dst: SBVCAnimationV2_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38462,1
    - Dst: SimpleTextureV2_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38464,1
    - Dst: SurroundingSound_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38466,1
    - Dst: Transform3DAudio_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38468,1
    - Dst: WideSound_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38470,1
    - Dst: ScoreShape_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38472,1
    - Dst: MusicScore_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38474,1
    - Dst: FootPrintSetNode_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38476,1
    - Dst: FootPrintNode_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38478,1
    - Dst: BuildingPartNode_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38480,1
    - Dst: RoofNode_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38482,1
    - Dst: FacadeNode_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38484,1
    - Dst: Shadow_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38486,1
    - Dst: CacheTexture_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38488,1
    - Dst: EnvironmentTest_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38490,1
    - Dst: KeyNavigator_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38492,1
    - Dst: SpacePartition_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38494,1
    - Dst: Storage_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38496,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 395
    argCount: 2
    argNames:
    - node
    - code_mode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38500
      start: 38104
    functionDepth: 1
    functionLinenumber: 38104
    functionLinenumberEnd: 38500
    functionName: gf_sg_mpeg4_node_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FootPrintNode_get_field_count
    - CylinderSensor_get_field_count
    - PointLight_get_field_count
    - Viseme_get_field_count
    - PixelTexture_get_field_count
    - SBVCAnimation_get_field_count
    - OctreeImage_get_field_count
    - CompositeTexture3D_get_field_count
    - Rectangle_get_field_count
    - NurbsSurface_get_field_count
    - Cone_get_field_count
    - PointSet_get_field_count
    - WaveletSubdivisionSurface_get_field_count
    - Layout_get_field_count
    - BodyDefTable_get_field_count
    - Implicit_get_field_count
    - SurroundingSound_get_field_count
    - AudioDelay_get_field_count
    - BodySegmentConnectionHint_get_field_count
    - PerceptualParameters_get_field_count
    - TemporalGroup_get_field_count
    - NormalInterpolator_get_field_count
    - AcousticScene_get_field_count
    - RoofNode_get_field_count
    - Box_get_field_count
    - XXPlanarObstacle_get_field_count
    - DirectiveSound_get_field_count
    - Circle_get_field_count
    - MeshGrid_get_field_count
    - IndexedFaceSet_get_field_count
    - SBBone_get_field_count
    - Billboard_get_field_count
    - PathLayout_get_field_count
    - FAP_get_field_count
    - Layer3D_get_field_count
    - FaceDefTables_get_field_count
    - XCurve2D_get_field_count
    - Layer2D_get_field_count
    - Material2D_get_field_count
    - ScalarAnimator_get_field_count
    - PointTexture_get_field_count
    - LinearGradient_get_field_count
    - Bitmap_get_field_count
    - QuantizationParameter_get_field_count
    - TouchSensor_get_field_count
    - PointTextureV2_get_field_count
    - Curve2D_get_field_count
    - LOD_get_field_count
    - ProceduralTexture_get_field_count
    - PositionAnimator2D_get_field_count
    - FDP_get_field_count
    - FIT_get_field_count
    - DirectionalLight_get_field_count
    - Cylinder_get_field_count
    - TermCap_get_field_count
    - ProximitySensor2D_get_field_count
    - Quadric_get_field_count
    - Clipper2D_get_field_count
    - Conditional_get_field_count
    - LineProperties_get_field_count
    - TextureTransform_get_field_count
    - NurbsCurve_get_field_count
    - SubdivisionSurface_get_field_count
    - VisibilitySensor_get_field_count
    - AudioBuffer_get_field_count
    - Fog_get_field_count
    - Transform3DAudio_get_field_count
    - Script_get_field_count
    - PointSet2D_get_field_count
    - AcousticMaterial_get_field_count
    - EnvironmentTest_get_field_count
    - SBSkinnedModel_get_field_count
    - ProximitySensor_get_field_count
    - MusicScore_get_field_count
    - Background_get_field_count
    - OrderedGroup_get_field_count
    - FaceDefTransform_get_field_count
    - ElevationGrid_get_field_count
    - BuildingPartNode_get_field_count
    - FacadeNode_get_field_count
    - Storage_get_field_count
    - Form_get_field_count
    - Shape_get_field_count
    - FFD_get_field_count
    - PositionInterpolator4D_get_field_count
    - SBSegment_get_field_count
    - RadialGradient_get_field_count
    - DepthImageV2_get_field_count
    - Extrusion_get_field_count
    - FontStyle_get_field_count
    - CompositeTexture2D_get_field_count
    - CoordinateInterpolator2D_get_field_count
    - BDP_get_field_count
    - Inline_get_field_count
    - ColorInterpolator_get_field_count
    - SBVCAnimationV2_get_field_count
    - AnimationStream_get_field_count
    - DepthImage_get_field_count
    - ImageTexture_get_field_count
    - PositionInterpolator_get_field_count
    - Body_get_field_count
    - Color_get_field_count
    - Hierarchical3DMesh_get_field_count
    - AudioMix_get_field_count
    - MediaControl_get_field_count
    - Viewpoint_get_field_count
    - TransformMatrix2D_get_field_count
    - SimpleTextureV2_get_field_count
    - Ellipse_get_field_count
    - AudioChannelConfig_get_field_count
    - NurbsCurve2D_get_field_count
    - SBMuscle_get_field_count
    - Normal_get_field_count
    - Face_get_field_count
    - Coordinate_get_field_count
    - ColorTransform_get_field_count
    - WideSound_get_field_count
    - SolidRep_get_field_count
    - SynthesizedTexture_get_field_count
    - Text_get_field_count
    - PlaneSensor_get_field_count
    - NonLinearDeformer_get_field_count
    - XFontStyle_get_field_count
    - XXLFM_FrameList_get_field_count
    - NavigationInfo_get_field_count
    - IndexedFaceSet2D_get_field_count
    - MovieTexture_get_field_count
    - Background2D_get_field_count
    - TextureCoordinate_get_field_count
    - Switch_get_field_count
    - BitWrapper_get_field_count
    - XXParticleInitBox_get_field_count
    - DiscSensor_get_field_count
    - Sphere_get_field_count
    - AdvancedAudioBuffer_get_field_count
    - MultiTexture_get_field_count
    - SimpleTexture_get_field_count
    - Collision_get_field_count
    - PositionInterpolator2D_get_field_count
    - SphereSensor_get_field_count
    - XXLFM_BlendList_get_field_count
    - XXLFM_ViewMapList_get_field_count
    - CoordinateInterpolator_get_field_count
    - MediaBuffer_get_field_count
    - KeyNavigator_get_field_count
    - Transform2D_get_field_count
    - Valuator_get_field_count
    - PlaneSensor2D_get_field_count
    - Transform_get_field_count
    - IndexedLineSet_get_field_count
    - IndexedLineSet2D_get_field_count
    - XXPointAttractor_get_field_count
    - ScoreShape_get_field_count
    - SubdivSurfaceSector_get_field_count
    - AudioSwitch_get_field_count
    - TemporalTransform_get_field_count
    - SpacePartition_get_field_count
    - FaceDefMesh_get_field_count
    - Expression_get_field_count
    - ScalarInterpolator_get_field_count
    - AudioClip_get_field_count
    - AudioSource_get_field_count
    - XXLFM_SurfaceMapList_get_field_count
    - ListeningPoint_get_field_count
    - InputSensor_get_field_count
    - PositionAnimator_get_field_count
    - BAP_get_field_count
    - Material_get_field_count
    - AudioFX_get_field_count
    - MorphShape_get_field_count
    - Sound2D_get_field_count
    - Viewport_get_field_count
    - TimeSensor_get_field_count
    - MaterialKey_get_field_count
    - XXLFM_LightMap_get_field_count
    - ServerCommand_get_field_count
    - MediaSensor_get_field_count
    - CoordinateInterpolator4D_get_field_count
    - OrientationInterpolator_get_field_count
    - MatteTexture_get_field_count
    - Shadow_get_field_count
    - Sound_get_field_count
    - Anchor_get_field_count
    - Group_get_field_count
    - SBSite_get_field_count
    - FootPrintSetNode_get_field_count
    - Coordinate2D_get_field_count
    - WorldInfo_get_field_count
    - CacheTexture_get_field_count
    - SpotLight_get_field_count
    - XXLFM_Appearance_get_field_count
    - XLineProperties_get_field_count
    - XXParticles_get_field_count
    - ApplicationWindow_get_field_count
    - Appearance_get_field_count
    linkageType: ''
    returnType: u32
    signature: u32 gf_sg_mpeg4_node_get_field_count(GF_Node *node, u8 code_mode)
  - BBCount: 197
    BranchProfiles: []
    Callsites:
    - Dst: Anchor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38506,1
    - Dst: AnimationStream_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38508,1
    - Dst: Appearance_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38510,1
    - Dst: AudioBuffer_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38512,1
    - Dst: AudioClip_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38514,1
    - Dst: AudioDelay_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38516,1
    - Dst: AudioFX_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38518,1
    - Dst: AudioMix_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38520,1
    - Dst: AudioSource_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38522,1
    - Dst: AudioSwitch_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38524,1
    - Dst: Background_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38526,1
    - Dst: Background2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38528,1
    - Dst: Billboard_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38530,1
    - Dst: Bitmap_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38532,1
    - Dst: Box_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38534,1
    - Dst: Circle_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38536,1
    - Dst: Collision_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38538,1
    - Dst: Color_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38540,1
    - Dst: ColorInterpolator_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38542,1
    - Dst: CompositeTexture2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38544,1
    - Dst: CompositeTexture3D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38546,1
    - Dst: Conditional_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38548,1
    - Dst: Cone_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38550,1
    - Dst: Coordinate_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38552,1
    - Dst: Coordinate2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38554,1
    - Dst: CoordinateInterpolator_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38556,1
    - Dst: CoordinateInterpolator2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38558,1
    - Dst: Curve2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38560,1
    - Dst: Cylinder_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38562,1
    - Dst: CylinderSensor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38564,1
    - Dst: DirectionalLight_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38566,1
    - Dst: DiscSensor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38568,1
    - Dst: ElevationGrid_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38570,1
    - Dst: Expression_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38572,1
    - Dst: Extrusion_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38574,1
    - Dst: Face_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38576,1
    - Dst: FaceDefMesh_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38578,1
    - Dst: FaceDefTables_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38580,1
    - Dst: FaceDefTransform_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38582,1
    - Dst: FAP_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38584,1
    - Dst: FDP_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38586,1
    - Dst: FIT_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38588,1
    - Dst: Fog_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38590,1
    - Dst: FontStyle_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38592,1
    - Dst: Form_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38594,1
    - Dst: Group_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38596,1
    - Dst: ImageTexture_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38598,1
    - Dst: IndexedFaceSet_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38600,1
    - Dst: IndexedFaceSet2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38602,1
    - Dst: IndexedLineSet_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38604,1
    - Dst: IndexedLineSet2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38606,1
    - Dst: Inline_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38608,1
    - Dst: LOD_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38610,1
    - Dst: Layer2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38612,1
    - Dst: Layer3D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38614,1
    - Dst: Layout_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38616,1
    - Dst: LineProperties_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38618,1
    - Dst: ListeningPoint_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38620,1
    - Dst: Material_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38622,1
    - Dst: Material2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38624,1
    - Dst: MovieTexture_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38626,1
    - Dst: NavigationInfo_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38628,1
    - Dst: Normal_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38630,1
    - Dst: NormalInterpolator_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38632,1
    - Dst: OrderedGroup_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38634,1
    - Dst: OrientationInterpolator_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38636,1
    - Dst: PixelTexture_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38638,1
    - Dst: PlaneSensor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38640,1
    - Dst: PlaneSensor2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38642,1
    - Dst: PointLight_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38644,1
    - Dst: PointSet_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38646,1
    - Dst: PointSet2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38648,1
    - Dst: PositionInterpolator_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38650,1
    - Dst: PositionInterpolator2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38652,1
    - Dst: ProximitySensor2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38654,1
    - Dst: ProximitySensor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38656,1
    - Dst: QuantizationParameter_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38658,1
    - Dst: Rectangle_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38660,1
    - Dst: ScalarInterpolator_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38662,1
    - Dst: Script_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38664,1
    - Dst: Shape_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38666,1
    - Dst: Sound_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38668,1
    - Dst: Sound2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38670,1
    - Dst: Sphere_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38672,1
    - Dst: SphereSensor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38674,1
    - Dst: SpotLight_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38676,1
    - Dst: Switch_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38678,1
    - Dst: TermCap_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38680,1
    - Dst: Text_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38682,1
    - Dst: TextureCoordinate_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38684,1
    - Dst: TextureTransform_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38686,1
    - Dst: TimeSensor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38688,1
    - Dst: TouchSensor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38690,1
    - Dst: Transform_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38692,1
    - Dst: Transform2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38694,1
    - Dst: Valuator_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38696,1
    - Dst: Viewpoint_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38698,1
    - Dst: VisibilitySensor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38700,1
    - Dst: Viseme_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38702,1
    - Dst: WorldInfo_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38704,1
    - Dst: AcousticMaterial_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38706,1
    - Dst: AcousticScene_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38708,1
    - Dst: ApplicationWindow_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38710,1
    - Dst: BAP_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38712,1
    - Dst: BDP_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38714,1
    - Dst: Body_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38716,1
    - Dst: BodyDefTable_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38718,1
    - Dst: BodySegmentConnectionHint_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38720,1
    - Dst: DirectiveSound_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38722,1
    - Dst: Hierarchical3DMesh_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38724,1
    - Dst: MaterialKey_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38726,1
    - Dst: PerceptualParameters_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38728,1
    - Dst: TemporalTransform_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38730,1
    - Dst: TemporalGroup_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38732,1
    - Dst: ServerCommand_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38734,1
    - Dst: InputSensor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38736,1
    - Dst: MatteTexture_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38738,1
    - Dst: MediaBuffer_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38740,1
    - Dst: MediaControl_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38742,1
    - Dst: MediaSensor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38744,1
    - Dst: BitWrapper_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38746,1
    - Dst: CoordinateInterpolator4D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38748,1
    - Dst: DepthImage_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38750,1
    - Dst: FFD_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38752,1
    - Dst: Implicit_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38754,1
    - Dst: XXLFM_Appearance_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38756,1
    - Dst: XXLFM_BlendList_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38758,1
    - Dst: XXLFM_FrameList_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38760,1
    - Dst: XXLFM_LightMap_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38762,1
    - Dst: XXLFM_SurfaceMapList_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38764,1
    - Dst: XXLFM_ViewMapList_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38766,1
    - Dst: MeshGrid_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38768,1
    - Dst: NonLinearDeformer_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38770,1
    - Dst: NurbsCurve_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38772,1
    - Dst: NurbsCurve2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38774,1
    - Dst: NurbsSurface_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38776,1
    - Dst: OctreeImage_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38778,1
    - Dst: XXParticles_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38780,1
    - Dst: XXParticleInitBox_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38782,1
    - Dst: XXPlanarObstacle_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38784,1
    - Dst: XXPointAttractor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38786,1
    - Dst: PointTexture_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38788,1
    - Dst: PositionAnimator_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38790,1
    - Dst: PositionAnimator2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38792,1
    - Dst: PositionInterpolator4D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38794,1
    - Dst: ProceduralTexture_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38796,1
    - Dst: Quadric_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38798,1
    - Dst: SBBone_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38800,1
    - Dst: SBMuscle_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38802,1
    - Dst: SBSegment_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38804,1
    - Dst: SBSite_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38806,1
    - Dst: SBSkinnedModel_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38808,1
    - Dst: SBVCAnimation_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38810,1
    - Dst: ScalarAnimator_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38812,1
    - Dst: SimpleTexture_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38814,1
    - Dst: SolidRep_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38816,1
    - Dst: SubdivisionSurface_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38818,1
    - Dst: SubdivSurfaceSector_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38820,1
    - Dst: WaveletSubdivisionSurface_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38822,1
    - Dst: Clipper2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38824,1
    - Dst: ColorTransform_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38826,1
    - Dst: Ellipse_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38828,1
    - Dst: LinearGradient_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38830,1
    - Dst: PathLayout_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38832,1
    - Dst: RadialGradient_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38834,1
    - Dst: SynthesizedTexture_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38836,1
    - Dst: TransformMatrix2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38838,1
    - Dst: Viewport_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38840,1
    - Dst: XCurve2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38842,1
    - Dst: XFontStyle_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38844,1
    - Dst: XLineProperties_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38846,1
    - Dst: AdvancedAudioBuffer_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38848,1
    - Dst: AudioChannelConfig_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38850,1
    - Dst: DepthImageV2_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38852,1
    - Dst: MorphShape_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38854,1
    - Dst: MultiTexture_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38856,1
    - Dst: PointTextureV2_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38858,1
    - Dst: SBVCAnimationV2_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38860,1
    - Dst: SimpleTextureV2_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38862,1
    - Dst: SurroundingSound_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38864,1
    - Dst: Transform3DAudio_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38866,1
    - Dst: WideSound_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38868,1
    - Dst: ScoreShape_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38870,1
    - Dst: MusicScore_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38872,1
    - Dst: FootPrintSetNode_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38874,1
    - Dst: FootPrintNode_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38876,1
    - Dst: BuildingPartNode_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38878,1
    - Dst: RoofNode_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38880,1
    - Dst: FacadeNode_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38882,1
    - Dst: Shadow_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38884,1
    - Dst: CacheTexture_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38886,1
    - Dst: EnvironmentTest_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38888,1
    - Dst: KeyNavigator_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38890,1
    - Dst: SpacePartition_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38892,1
    - Dst: Storage_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38894,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 395
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38898
      start: 38502
    functionDepth: 1
    functionLinenumber: 38502
    functionLinenumberEnd: 38898
    functionName: gf_sg_mpeg4_node_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - VisibilitySensor_get_field
    - AudioFX_get_field
    - Layer3D_get_field
    - BodySegmentConnectionHint_get_field
    - TermCap_get_field
    - NurbsSurface_get_field
    - Shadow_get_field
    - SynthesizedTexture_get_field
    - WaveletSubdivisionSurface_get_field
    - CylinderSensor_get_field
    - SBSegment_get_field
    - Quadric_get_field
    - Material_get_field
    - MultiTexture_get_field
    - LOD_get_field
    - EnvironmentTest_get_field
    - RadialGradient_get_field
    - Group_get_field
    - DiscSensor_get_field
    - TransformMatrix2D_get_field
    - Switch_get_field
    - TimeSensor_get_field
    - SBVCAnimationV2_get_field
    - Implicit_get_field
    - Anchor_get_field
    - SpacePartition_get_field
    - AudioChannelConfig_get_field
    - SBVCAnimation_get_field
    - ProximitySensor_get_field
    - Sound2D_get_field
    - OrientationInterpolator_get_field
    - Viewpoint_get_field
    - SolidRep_get_field
    - CompositeTexture3D_get_field
    - RoofNode_get_field
    - WideSound_get_field
    - PositionInterpolator_get_field
    - Appearance_get_field
    - Script_get_field
    - NurbsCurve2D_get_field
    - MovieTexture_get_field
    - SBMuscle_get_field
    - Material2D_get_field
    - CoordinateInterpolator4D_get_field
    - ElevationGrid_get_field
    - Body_get_field
    - Collision_get_field
    - Form_get_field
    - CompositeTexture2D_get_field
    - Hierarchical3DMesh_get_field
    - Bitmap_get_field
    - SpotLight_get_field
    - XXPlanarObstacle_get_field
    - MorphShape_get_field
    - BitWrapper_get_field
    - WorldInfo_get_field
    - Valuator_get_field
    - IndexedFaceSet2D_get_field
    - CoordinateInterpolator_get_field
    - TemporalGroup_get_field
    - MediaSensor_get_field
    - DepthImageV2_get_field
    - DepthImage_get_field
    - SBSite_get_field
    - PlaneSensor_get_field
    - TextureCoordinate_get_field
    - ServerCommand_get_field
    - IndexedFaceSet_get_field
    - MediaBuffer_get_field
    - PerceptualParameters_get_field
    - XXLFM_ViewMapList_get_field
    - Viewport_get_field
    - Rectangle_get_field
    - Sphere_get_field
    - PathLayout_get_field
    - NavigationInfo_get_field
    - BAP_get_field
    - LinearGradient_get_field
    - SBSkinnedModel_get_field
    - AcousticMaterial_get_field
    - Layer2D_get_field
    - CacheTexture_get_field
    - DirectionalLight_get_field
    - PointSet2D_get_field
    - SimpleTexture_get_field
    - FFD_get_field
    - NonLinearDeformer_get_field
    - XXParticles_get_field
    - Inline_get_field
    - XXLFM_SurfaceMapList_get_field
    - Ellipse_get_field
    - FontStyle_get_field
    - PositionAnimator_get_field
    - Viseme_get_field
    - MediaControl_get_field
    - AudioMix_get_field
    - Expression_get_field
    - Coordinate2D_get_field
    - ImageTexture_get_field
    - OrderedGroup_get_field
    - MeshGrid_get_field
    - PlaneSensor2D_get_field
    - AudioSource_get_field
    - Clipper2D_get_field
    - AudioDelay_get_field
    - FaceDefTransform_get_field
    - Coordinate_get_field
    - MaterialKey_get_field
    - XXLFM_BlendList_get_field
    - AdvancedAudioBuffer_get_field
    - FaceDefTables_get_field
    - FootPrintSetNode_get_field
    - Box_get_field
    - FAP_get_field
    - Curve2D_get_field
    - PositionInterpolator2D_get_field
    - XCurve2D_get_field
    - InputSensor_get_field
    - ColorTransform_get_field
    - Cone_get_field
    - Background_get_field
    - Shape_get_field
    - Storage_get_field
    - QuantizationParameter_get_field
    - ApplicationWindow_get_field
    - LineProperties_get_field
    - PointTexture_get_field
    - SimpleTextureV2_get_field
    - Transform2D_get_field
    - DirectiveSound_get_field
    - Layout_get_field
    - Face_get_field
    - PointLight_get_field
    - MatteTexture_get_field
    - TextureTransform_get_field
    - MusicScore_get_field
    - AnimationStream_get_field
    - Color_get_field
    - ProximitySensor2D_get_field
    - XXLFM_LightMap_get_field
    - PositionAnimator2D_get_field
    - NormalInterpolator_get_field
    - FDP_get_field
    - Cylinder_get_field
    - Transform_get_field
    - BuildingPartNode_get_field
    - ScoreShape_get_field
    - ScalarInterpolator_get_field
    - Text_get_field
    - BodyDefTable_get_field
    - FacadeNode_get_field
    - FaceDefMesh_get_field
    - AudioBuffer_get_field
    - Conditional_get_field
    - Sound_get_field
    - Circle_get_field
    - ScalarAnimator_get_field
    - SubdivSurfaceSector_get_field
    - XXPointAttractor_get_field
    - KeyNavigator_get_field
    - XXLFM_Appearance_get_field
    - XXLFM_FrameList_get_field
    - Normal_get_field
    - PixelTexture_get_field
    - ColorInterpolator_get_field
    - TouchSensor_get_field
    - ProceduralTexture_get_field
    - AudioClip_get_field
    - XXParticleInitBox_get_field
    - Transform3DAudio_get_field
    - ListeningPoint_get_field
    - BDP_get_field
    - Fog_get_field
    - XLineProperties_get_field
    - XFontStyle_get_field
    - Background2D_get_field
    - SphereSensor_get_field
    - OctreeImage_get_field
    - IndexedLineSet2D_get_field
    - TemporalTransform_get_field
    - NurbsCurve_get_field
    - SurroundingSound_get_field
    - CoordinateInterpolator2D_get_field
    - AcousticScene_get_field
    - AudioSwitch_get_field
    - SubdivisionSurface_get_field
    - Billboard_get_field
    - PointTextureV2_get_field
    - FIT_get_field
    - SBBone_get_field
    - PointSet_get_field
    - Extrusion_get_field
    - IndexedLineSet_get_field
    - PositionInterpolator4D_get_field
    - FootPrintNode_get_field
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sg_mpeg4_node_get_field(GF_Node *node, GF_FieldInfo *field)
  - BBCount: 197
    BranchProfiles: []
    Callsites:
    - Dst: Anchor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38904,1
    - Dst: AnimationStream_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38906,1
    - Dst: Appearance_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38908,1
    - Dst: AudioBuffer_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38910,1
    - Dst: AudioClip_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38912,1
    - Dst: AudioDelay_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38914,1
    - Dst: AudioFX_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38916,1
    - Dst: AudioMix_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38918,1
    - Dst: AudioSource_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38920,1
    - Dst: AudioSwitch_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38922,1
    - Dst: Background_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38924,1
    - Dst: Background2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38926,1
    - Dst: Billboard_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38928,1
    - Dst: Bitmap_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38930,1
    - Dst: Box_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38932,1
    - Dst: Circle_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38934,1
    - Dst: Collision_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38936,1
    - Dst: Color_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38938,1
    - Dst: ColorInterpolator_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38940,1
    - Dst: CompositeTexture2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38942,1
    - Dst: CompositeTexture3D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38944,1
    - Dst: Conditional_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38946,1
    - Dst: Cone_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38948,1
    - Dst: Coordinate_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38950,1
    - Dst: Coordinate2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38952,1
    - Dst: CoordinateInterpolator_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38954,1
    - Dst: CoordinateInterpolator2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38956,1
    - Dst: Curve2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38958,1
    - Dst: Cylinder_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38960,1
    - Dst: CylinderSensor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38962,1
    - Dst: DirectionalLight_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38964,1
    - Dst: DiscSensor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38966,1
    - Dst: ElevationGrid_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38968,1
    - Dst: Expression_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38970,1
    - Dst: Extrusion_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38972,1
    - Dst: Face_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38974,1
    - Dst: FaceDefMesh_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38976,1
    - Dst: FaceDefTables_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38978,1
    - Dst: FaceDefTransform_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38980,1
    - Dst: FAP_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38982,1
    - Dst: FDP_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38984,1
    - Dst: FIT_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38986,1
    - Dst: Fog_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38988,1
    - Dst: FontStyle_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38990,1
    - Dst: Form_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38992,1
    - Dst: Group_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38994,1
    - Dst: ImageTexture_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38996,1
    - Dst: IndexedFaceSet_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38998,1
    - Dst: IndexedFaceSet2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39000,1
    - Dst: IndexedLineSet_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39002,1
    - Dst: IndexedLineSet2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39004,1
    - Dst: Inline_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39006,1
    - Dst: LOD_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39008,1
    - Dst: Layer2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39010,1
    - Dst: Layer3D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39012,1
    - Dst: Layout_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39014,1
    - Dst: LineProperties_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39016,1
    - Dst: ListeningPoint_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39018,1
    - Dst: Material_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39020,1
    - Dst: Material2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39022,1
    - Dst: MovieTexture_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39024,1
    - Dst: NavigationInfo_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39026,1
    - Dst: Normal_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39028,1
    - Dst: NormalInterpolator_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39030,1
    - Dst: OrderedGroup_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39032,1
    - Dst: OrientationInterpolator_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39034,1
    - Dst: PixelTexture_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39036,1
    - Dst: PlaneSensor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39038,1
    - Dst: PlaneSensor2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39040,1
    - Dst: PointLight_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39042,1
    - Dst: PointSet_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39044,1
    - Dst: PointSet2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39046,1
    - Dst: PositionInterpolator_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39048,1
    - Dst: PositionInterpolator2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39050,1
    - Dst: ProximitySensor2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39052,1
    - Dst: ProximitySensor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39054,1
    - Dst: QuantizationParameter_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39056,1
    - Dst: Rectangle_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39058,1
    - Dst: ScalarInterpolator_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39060,1
    - Dst: Script_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39062,1
    - Dst: Shape_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39064,1
    - Dst: Sound_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39066,1
    - Dst: Sound2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39068,1
    - Dst: Sphere_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39070,1
    - Dst: SphereSensor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39072,1
    - Dst: SpotLight_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39074,1
    - Dst: Switch_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39076,1
    - Dst: TermCap_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39078,1
    - Dst: Text_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39080,1
    - Dst: TextureCoordinate_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39082,1
    - Dst: TextureTransform_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39084,1
    - Dst: TimeSensor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39086,1
    - Dst: TouchSensor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39088,1
    - Dst: Transform_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39090,1
    - Dst: Transform2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39092,1
    - Dst: Valuator_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39094,1
    - Dst: Viewpoint_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39096,1
    - Dst: VisibilitySensor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39098,1
    - Dst: Viseme_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39100,1
    - Dst: WorldInfo_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39102,1
    - Dst: AcousticMaterial_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39104,1
    - Dst: AcousticScene_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39106,1
    - Dst: ApplicationWindow_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39108,1
    - Dst: BAP_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39110,1
    - Dst: BDP_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39112,1
    - Dst: Body_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39114,1
    - Dst: BodyDefTable_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39116,1
    - Dst: BodySegmentConnectionHint_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39118,1
    - Dst: DirectiveSound_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39120,1
    - Dst: Hierarchical3DMesh_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39122,1
    - Dst: MaterialKey_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39124,1
    - Dst: PerceptualParameters_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39126,1
    - Dst: TemporalTransform_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39128,1
    - Dst: TemporalGroup_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39130,1
    - Dst: ServerCommand_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39132,1
    - Dst: InputSensor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39134,1
    - Dst: MatteTexture_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39136,1
    - Dst: MediaBuffer_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39138,1
    - Dst: MediaControl_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39140,1
    - Dst: MediaSensor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39142,1
    - Dst: BitWrapper_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39144,1
    - Dst: CoordinateInterpolator4D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39146,1
    - Dst: DepthImage_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39148,1
    - Dst: FFD_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39150,1
    - Dst: Implicit_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39152,1
    - Dst: XXLFM_Appearance_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39154,1
    - Dst: XXLFM_BlendList_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39156,1
    - Dst: XXLFM_FrameList_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39158,1
    - Dst: XXLFM_LightMap_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39160,1
    - Dst: XXLFM_SurfaceMapList_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39162,1
    - Dst: XXLFM_ViewMapList_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39164,1
    - Dst: MeshGrid_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39166,1
    - Dst: NonLinearDeformer_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39168,1
    - Dst: NurbsCurve_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39170,1
    - Dst: NurbsCurve2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39172,1
    - Dst: NurbsSurface_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39174,1
    - Dst: OctreeImage_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39176,1
    - Dst: XXParticles_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39178,1
    - Dst: XXParticleInitBox_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39180,1
    - Dst: XXPlanarObstacle_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39182,1
    - Dst: XXPointAttractor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39184,1
    - Dst: PointTexture_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39186,1
    - Dst: PositionAnimator_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39188,1
    - Dst: PositionAnimator2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39190,1
    - Dst: PositionInterpolator4D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39192,1
    - Dst: ProceduralTexture_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39194,1
    - Dst: Quadric_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39196,1
    - Dst: SBBone_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39198,1
    - Dst: SBMuscle_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39200,1
    - Dst: SBSegment_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39202,1
    - Dst: SBSite_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39204,1
    - Dst: SBSkinnedModel_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39206,1
    - Dst: SBVCAnimation_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39208,1
    - Dst: ScalarAnimator_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39210,1
    - Dst: SimpleTexture_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39212,1
    - Dst: SolidRep_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39214,1
    - Dst: SubdivisionSurface_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39216,1
    - Dst: SubdivSurfaceSector_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39218,1
    - Dst: WaveletSubdivisionSurface_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39220,1
    - Dst: Clipper2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39222,1
    - Dst: ColorTransform_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39224,1
    - Dst: Ellipse_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39226,1
    - Dst: LinearGradient_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39228,1
    - Dst: PathLayout_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39230,1
    - Dst: RadialGradient_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39232,1
    - Dst: SynthesizedTexture_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39234,1
    - Dst: TransformMatrix2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39236,1
    - Dst: Viewport_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39238,1
    - Dst: XCurve2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39240,1
    - Dst: XFontStyle_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39242,1
    - Dst: XLineProperties_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39244,1
    - Dst: AdvancedAudioBuffer_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39246,1
    - Dst: AudioChannelConfig_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39248,1
    - Dst: DepthImageV2_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39250,1
    - Dst: MorphShape_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39252,1
    - Dst: MultiTexture_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39254,1
    - Dst: PointTextureV2_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39256,1
    - Dst: SBVCAnimationV2_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39258,1
    - Dst: SimpleTextureV2_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39260,1
    - Dst: SurroundingSound_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39262,1
    - Dst: Transform3DAudio_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39264,1
    - Dst: WideSound_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39266,1
    - Dst: ScoreShape_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39268,1
    - Dst: MusicScore_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39270,1
    - Dst: FootPrintSetNode_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39272,1
    - Dst: FootPrintNode_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39274,1
    - Dst: BuildingPartNode_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39276,1
    - Dst: RoofNode_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39278,1
    - Dst: FacadeNode_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39280,1
    - Dst: Shadow_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39282,1
    - Dst: CacheTexture_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39284,1
    - Dst: EnvironmentTest_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39286,1
    - Dst: KeyNavigator_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39288,1
    - Dst: SpacePartition_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39290,1
    - Dst: Storage_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39292,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 395
    argCount: 4
    argNames:
    - node
    - inField
    - code_mode
    - fieldIndex
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39296
      start: 38900
    functionDepth: 1
    functionLinenumber: 38900
    functionLinenumberEnd: 39296
    functionName: gf_sg_mpeg4_node_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - MatteTexture_get_field_index
    - Cone_get_field_index
    - PositionInterpolator4D_get_field_index
    - Text_get_field_index
    - XXPointAttractor_get_field_index
    - MaterialKey_get_field_index
    - Coordinate_get_field_index
    - AudioSource_get_field_index
    - NavigationInfo_get_field_index
    - ElevationGrid_get_field_index
    - Body_get_field_index
    - SBSite_get_field_index
    - SBSegment_get_field_index
    - PixelTexture_get_field_index
    - PlaneSensor_get_field_index
    - MorphShape_get_field_index
    - Background2D_get_field_index
    - PointLight_get_field_index
    - PositionAnimator_get_field_index
    - Quadric_get_field_index
    - Inline_get_field_index
    - CoordinateInterpolator_get_field_index
    - XFontStyle_get_field_index
    - RadialGradient_get_field_index
    - LOD_get_field_index
    - FaceDefTables_get_field_index
    - DepthImageV2_get_field_index
    - SimpleTexture_get_field_index
    - CompositeTexture2D_get_field_index
    - FIT_get_field_index
    - AudioMix_get_field_index
    - PositionInterpolator2D_get_field_index
    - AdvancedAudioBuffer_get_field_index
    - FAP_get_field_index
    - SBBone_get_field_index
    - FaceDefMesh_get_field_index
    - ScoreShape_get_field_index
    - ApplicationWindow_get_field_index
    - PointSet_get_field_index
    - FFD_get_field_index
    - AudioFX_get_field_index
    - MeshGrid_get_field_index
    - Color_get_field_index
    - RoofNode_get_field_index
    - Shadow_get_field_index
    - OrderedGroup_get_field_index
    - MediaSensor_get_field_index
    - ServerCommand_get_field_index
    - XXLFM_BlendList_get_field_index
    - OrientationInterpolator_get_field_index
    - XXLFM_SurfaceMapList_get_field_index
    - Appearance_get_field_index
    - XXLFM_FrameList_get_field_index
    - ColorInterpolator_get_field_index
    - BodySegmentConnectionHint_get_field_index
    - Collision_get_field_index
    - Cylinder_get_field_index
    - FootPrintSetNode_get_field_index
    - NurbsCurve_get_field_index
    - Transform_get_field_index
    - MultiTexture_get_field_index
    - MovieTexture_get_field_index
    - Storage_get_field_index
    - TextureCoordinate_get_field_index
    - ScalarAnimator_get_field_index
    - Conditional_get_field_index
    - ScalarInterpolator_get_field_index
    - PositionAnimator2D_get_field_index
    - IndexedLineSet2D_get_field_index
    - TouchSensor_get_field_index
    - QuantizationParameter_get_field_index
    - Expression_get_field_index
    - DirectiveSound_get_field_index
    - FootPrintNode_get_field_index
    - IndexedFaceSet2D_get_field_index
    - SynthesizedTexture_get_field_index
    - BAP_get_field_index
    - AnimationStream_get_field_index
    - LinearGradient_get_field_index
    - DepthImage_get_field_index
    - Switch_get_field_index
    - PlaneSensor2D_get_field_index
    - XXLFM_ViewMapList_get_field_index
    - OctreeImage_get_field_index
    - TransformMatrix2D_get_field_index
    - Box_get_field_index
    - Ellipse_get_field_index
    - BDP_get_field_index
    - Shape_get_field_index
    - PerceptualParameters_get_field_index
    - XXLFM_LightMap_get_field_index
    - VisibilitySensor_get_field_index
    - Circle_get_field_index
    - ColorTransform_get_field_index
    - AudioSwitch_get_field_index
    - BitWrapper_get_field_index
    - WorldInfo_get_field_index
    - TemporalTransform_get_field_index
    - XXParticles_get_field_index
    - SBSkinnedModel_get_field_index
    - Form_get_field_index
    - KeyNavigator_get_field_index
    - XLineProperties_get_field_index
    - AcousticScene_get_field_index
    - SurroundingSound_get_field_index
    - ImageTexture_get_field_index
    - Layer3D_get_field_index
    - Extrusion_get_field_index
    - IndexedFaceSet_get_field_index
    - Valuator_get_field_index
    - PathLayout_get_field_index
    - CacheTexture_get_field_index
    - FontStyle_get_field_index
    - WideSound_get_field_index
    - SubdivisionSurface_get_field_index
    - BuildingPartNode_get_field_index
    - Rectangle_get_field_index
    - CoordinateInterpolator4D_get_field_index
    - Background_get_field_index
    - Clipper2D_get_field_index
    - SubdivSurfaceSector_get_field_index
    - Transform3DAudio_get_field_index
    - ProximitySensor2D_get_field_index
    - NurbsCurve2D_get_field_index
    - NormalInterpolator_get_field_index
    - Coordinate2D_get_field_index
    - ProximitySensor_get_field_index
    - AudioDelay_get_field_index
    - Script_get_field_index
    - AudioClip_get_field_index
    - DirectionalLight_get_field_index
    - SpacePartition_get_field_index
    - PointTexture_get_field_index
    - NonLinearDeformer_get_field_index
    - SBVCAnimationV2_get_field_index
    - Material2D_get_field_index
    - EnvironmentTest_get_field_index
    - SphereSensor_get_field_index
    - Anchor_get_field_index
    - Viewport_get_field_index
    - SolidRep_get_field_index
    - AudioBuffer_get_field_index
    - DiscSensor_get_field_index
    - PointTextureV2_get_field_index
    - Sound2D_get_field_index
    - Implicit_get_field_index
    - AcousticMaterial_get_field_index
    - PointSet2D_get_field_index
    - SBMuscle_get_field_index
    - FacadeNode_get_field_index
    - ListeningPoint_get_field_index
    - XXLFM_Appearance_get_field_index
    - CylinderSensor_get_field_index
    - Transform2D_get_field_index
    - Viewpoint_get_field_index
    - Hierarchical3DMesh_get_field_index
    - TimeSensor_get_field_index
    - MediaControl_get_field_index
    - BodyDefTable_get_field_index
    - Bitmap_get_field_index
    - CoordinateInterpolator2D_get_field_index
    - XXPlanarObstacle_get_field_index
    - SimpleTextureV2_get_field_index
    - SBVCAnimation_get_field_index
    - Sphere_get_field_index
    - CompositeTexture3D_get_field_index
    - XXParticleInitBox_get_field_index
    - NurbsSurface_get_field_index
    - Billboard_get_field_index
    - PositionInterpolator_get_field_index
    - XCurve2D_get_field_index
    - FaceDefTransform_get_field_index
    - Viseme_get_field_index
    - Layer2D_get_field_index
    - Material_get_field_index
    - InputSensor_get_field_index
    - MediaBuffer_get_field_index
    - Face_get_field_index
    - TermCap_get_field_index
    - MusicScore_get_field_index
    - Layout_get_field_index
    - Group_get_field_index
    - TemporalGroup_get_field_index
    - ProceduralTexture_get_field_index
    - WaveletSubdivisionSurface_get_field_index
    - IndexedLineSet_get_field_index
    - FDP_get_field_index
    - Sound_get_field_index
    - Fog_get_field_index
    - LineProperties_get_field_index
    - Normal_get_field_index
    - AudioChannelConfig_get_field_index
    - Curve2D_get_field_index
    - SpotLight_get_field_index
    - TextureTransform_get_field_index
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sg_mpeg4_node_get_field_index(GF_Node *node, u32 inField,
      u8 code_mode, u32 *fieldIndex)
  - BBCount: 197
    BranchProfiles: []
    Callsites:
    - Dst: Anchor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39302,1
    - Dst: AnimationStream_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39304,1
    - Dst: Appearance_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39306,1
    - Dst: AudioBuffer_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39308,1
    - Dst: AudioClip_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39310,1
    - Dst: AudioDelay_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39312,1
    - Dst: AudioFX_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39314,1
    - Dst: AudioMix_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39316,1
    - Dst: AudioSource_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39318,1
    - Dst: AudioSwitch_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39320,1
    - Dst: Background_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39322,1
    - Dst: Background2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39324,1
    - Dst: Billboard_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39326,1
    - Dst: Bitmap_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39328,1
    - Dst: Box_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39330,1
    - Dst: Circle_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39332,1
    - Dst: Collision_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39334,1
    - Dst: Color_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39336,1
    - Dst: ColorInterpolator_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39338,1
    - Dst: CompositeTexture2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39340,1
    - Dst: CompositeTexture3D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39342,1
    - Dst: Conditional_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39344,1
    - Dst: Cone_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39346,1
    - Dst: Coordinate_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39348,1
    - Dst: Coordinate2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39350,1
    - Dst: CoordinateInterpolator_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39352,1
    - Dst: CoordinateInterpolator2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39354,1
    - Dst: Curve2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39356,1
    - Dst: Cylinder_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39358,1
    - Dst: CylinderSensor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39360,1
    - Dst: DirectionalLight_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39362,1
    - Dst: DiscSensor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39364,1
    - Dst: ElevationGrid_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39366,1
    - Dst: Expression_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39368,1
    - Dst: Extrusion_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39370,1
    - Dst: Face_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39372,1
    - Dst: FaceDefMesh_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39374,1
    - Dst: FaceDefTables_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39376,1
    - Dst: FaceDefTransform_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39378,1
    - Dst: FAP_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39380,1
    - Dst: FDP_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39382,1
    - Dst: FIT_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39384,1
    - Dst: Fog_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39386,1
    - Dst: FontStyle_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39388,1
    - Dst: Form_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39390,1
    - Dst: Group_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39392,1
    - Dst: ImageTexture_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39394,1
    - Dst: IndexedFaceSet_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39396,1
    - Dst: IndexedFaceSet2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39398,1
    - Dst: IndexedLineSet_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39400,1
    - Dst: IndexedLineSet2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39402,1
    - Dst: Inline_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39404,1
    - Dst: LOD_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39406,1
    - Dst: Layer2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39408,1
    - Dst: Layer3D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39410,1
    - Dst: Layout_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39412,1
    - Dst: LineProperties_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39414,1
    - Dst: ListeningPoint_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39416,1
    - Dst: Material_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39418,1
    - Dst: Material2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39420,1
    - Dst: MovieTexture_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39422,1
    - Dst: NavigationInfo_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39424,1
    - Dst: Normal_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39426,1
    - Dst: NormalInterpolator_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39428,1
    - Dst: OrderedGroup_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39430,1
    - Dst: OrientationInterpolator_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39432,1
    - Dst: PixelTexture_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39434,1
    - Dst: PlaneSensor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39436,1
    - Dst: PlaneSensor2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39438,1
    - Dst: PointLight_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39440,1
    - Dst: PointSet_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39442,1
    - Dst: PointSet2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39444,1
    - Dst: PositionInterpolator_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39446,1
    - Dst: PositionInterpolator2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39448,1
    - Dst: ProximitySensor2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39450,1
    - Dst: ProximitySensor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39452,1
    - Dst: QuantizationParameter_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39454,1
    - Dst: Rectangle_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39456,1
    - Dst: ScalarInterpolator_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39458,1
    - Dst: Script_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39460,1
    - Dst: Shape_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39462,1
    - Dst: Sound_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39464,1
    - Dst: Sound2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39466,1
    - Dst: Sphere_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39468,1
    - Dst: SphereSensor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39470,1
    - Dst: SpotLight_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39472,1
    - Dst: Switch_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39474,1
    - Dst: TermCap_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39476,1
    - Dst: Text_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39478,1
    - Dst: TextureCoordinate_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39480,1
    - Dst: TextureTransform_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39482,1
    - Dst: TimeSensor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39484,1
    - Dst: TouchSensor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39486,1
    - Dst: Transform_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39488,1
    - Dst: Transform2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39490,1
    - Dst: Valuator_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39492,1
    - Dst: Viewpoint_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39494,1
    - Dst: VisibilitySensor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39496,1
    - Dst: Viseme_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39498,1
    - Dst: WorldInfo_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39500,1
    - Dst: AcousticMaterial_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39502,1
    - Dst: AcousticScene_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39504,1
    - Dst: ApplicationWindow_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39506,1
    - Dst: BAP_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39508,1
    - Dst: BDP_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39510,1
    - Dst: Body_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39512,1
    - Dst: BodyDefTable_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39514,1
    - Dst: BodySegmentConnectionHint_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39516,1
    - Dst: DirectiveSound_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39518,1
    - Dst: Hierarchical3DMesh_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39520,1
    - Dst: MaterialKey_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39522,1
    - Dst: PerceptualParameters_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39524,1
    - Dst: TemporalTransform_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39526,1
    - Dst: TemporalGroup_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39528,1
    - Dst: ServerCommand_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39530,1
    - Dst: InputSensor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39532,1
    - Dst: MatteTexture_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39534,1
    - Dst: MediaBuffer_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39536,1
    - Dst: MediaControl_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39538,1
    - Dst: MediaSensor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39540,1
    - Dst: BitWrapper_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39542,1
    - Dst: CoordinateInterpolator4D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39544,1
    - Dst: DepthImage_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39546,1
    - Dst: FFD_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39548,1
    - Dst: Implicit_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39550,1
    - Dst: XXLFM_Appearance_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39552,1
    - Dst: XXLFM_BlendList_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39554,1
    - Dst: XXLFM_FrameList_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39556,1
    - Dst: XXLFM_LightMap_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39558,1
    - Dst: XXLFM_SurfaceMapList_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39560,1
    - Dst: XXLFM_ViewMapList_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39562,1
    - Dst: MeshGrid_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39564,1
    - Dst: NonLinearDeformer_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39566,1
    - Dst: NurbsCurve_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39568,1
    - Dst: NurbsCurve2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39570,1
    - Dst: NurbsSurface_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39572,1
    - Dst: OctreeImage_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39574,1
    - Dst: XXParticles_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39576,1
    - Dst: XXParticleInitBox_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39578,1
    - Dst: XXPlanarObstacle_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39580,1
    - Dst: XXPointAttractor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39582,1
    - Dst: PointTexture_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39584,1
    - Dst: PositionAnimator_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39586,1
    - Dst: PositionAnimator2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39588,1
    - Dst: PositionInterpolator4D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39590,1
    - Dst: ProceduralTexture_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39592,1
    - Dst: Quadric_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39594,1
    - Dst: SBBone_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39596,1
    - Dst: SBMuscle_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39598,1
    - Dst: SBSegment_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39600,1
    - Dst: SBSite_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39602,1
    - Dst: SBSkinnedModel_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39604,1
    - Dst: SBVCAnimation_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39606,1
    - Dst: ScalarAnimator_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39608,1
    - Dst: SimpleTexture_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39610,1
    - Dst: SolidRep_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39612,1
    - Dst: SubdivisionSurface_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39614,1
    - Dst: SubdivSurfaceSector_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39616,1
    - Dst: WaveletSubdivisionSurface_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39618,1
    - Dst: Clipper2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39620,1
    - Dst: ColorTransform_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39622,1
    - Dst: Ellipse_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39624,1
    - Dst: LinearGradient_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39626,1
    - Dst: PathLayout_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39628,1
    - Dst: RadialGradient_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39630,1
    - Dst: SynthesizedTexture_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39632,1
    - Dst: TransformMatrix2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39634,1
    - Dst: Viewport_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39636,1
    - Dst: XCurve2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39638,1
    - Dst: XFontStyle_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39640,1
    - Dst: XLineProperties_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39642,1
    - Dst: AdvancedAudioBuffer_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39644,1
    - Dst: AudioChannelConfig_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39646,1
    - Dst: DepthImageV2_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39648,1
    - Dst: MorphShape_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39650,1
    - Dst: MultiTexture_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39652,1
    - Dst: PointTextureV2_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39654,1
    - Dst: SBVCAnimationV2_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39656,1
    - Dst: SimpleTextureV2_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39658,1
    - Dst: SurroundingSound_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39660,1
    - Dst: Transform3DAudio_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39662,1
    - Dst: WideSound_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39664,1
    - Dst: ScoreShape_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39666,1
    - Dst: MusicScore_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39668,1
    - Dst: FootPrintSetNode_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39670,1
    - Dst: FootPrintNode_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39672,1
    - Dst: BuildingPartNode_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39674,1
    - Dst: RoofNode_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39676,1
    - Dst: FacadeNode_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39678,1
    - Dst: Shadow_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39680,1
    - Dst: CacheTexture_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39682,1
    - Dst: EnvironmentTest_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39684,1
    - Dst: KeyNavigator_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39686,1
    - Dst: SpacePartition_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39688,1
    - Dst: Storage_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39690,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 395
    argCount: 7
    argNames:
    - node
    - FieldIndex
    - QType
    - AType
    - b_min
    - b_max
    - QT13_bits
    argTypes:
    - GF_Node*
    - u32
    - u8*
    - u8*
    - Fixed*
    - Fixed*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39694
      start: 39298
    functionDepth: 2
    functionLinenumber: 39298
    functionLinenumberEnd: 39694
    functionName: gf_sg_mpeg4_node_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - PointTexture_get_aq_info
    - XXLFM_Appearance_get_aq_info
    - MediaBuffer_get_aq_info
    - Sphere_get_aq_info
    - DepthImageV2_get_aq_info
    - TimeSensor_get_aq_info
    - AudioBuffer_get_aq_info
    - EnvironmentTest_get_aq_info
    - Coordinate_get_aq_info
    - SBSegment_get_aq_info
    - CacheTexture_get_aq_info
    - XLineProperties_get_aq_info
    - PointSet2D_get_aq_info
    - SpacePartition_get_aq_info
    - TransformMatrix2D_get_aq_info
    - Shape_get_aq_info
    - Background_get_aq_info
    - XCurve2D_get_aq_info
    - Switch_get_aq_info
    - Storage_get_aq_info
    - XXParticles_get_aq_info
    - DirectiveSound_get_aq_info
    - SBBone_get_aq_info
    - SimpleTextureV2_get_aq_info
    - ApplicationWindow_get_aq_info
    - FaceDefTransform_get_aq_info
    - MatteTexture_get_aq_info
    - Layer3D_get_aq_info
    - Inline_get_aq_info
    - ScoreShape_get_aq_info
    - PointLight_get_aq_info
    - SubdivisionSurface_get_aq_info
    - Color_get_aq_info
    - Layer2D_get_aq_info
    - Rectangle_get_aq_info
    - FIT_get_aq_info
    - Viewpoint_get_aq_info
    - AcousticScene_get_aq_info
    - RoofNode_get_aq_info
    - MorphShape_get_aq_info
    - SBSite_get_aq_info
    - MusicScore_get_aq_info
    - RadialGradient_get_aq_info
    - Hierarchical3DMesh_get_aq_info
    - DepthImage_get_aq_info
    - BodyDefTable_get_aq_info
    - AudioSource_get_aq_info
    - SolidRep_get_aq_info
    - TemporalGroup_get_aq_info
    - XFontStyle_get_aq_info
    - ListeningPoint_get_aq_info
    - PositionAnimator_get_aq_info
    - BDP_get_aq_info
    - NurbsCurve2D_get_aq_info
    - SBVCAnimation_get_aq_info
    - ColorTransform_get_aq_info
    - QuantizationParameter_get_aq_info
    - BAP_get_aq_info
    - XXLFM_ViewMapList_get_aq_info
    - SBMuscle_get_aq_info
    - IndexedLineSet2D_get_aq_info
    - AudioDelay_get_aq_info
    - Fog_get_aq_info
    - Group_get_aq_info
    - OrientationInterpolator_get_aq_info
    - SurroundingSound_get_aq_info
    - Curve2D_get_aq_info
    - IndexedFaceSet_get_aq_info
    - VisibilitySensor_get_aq_info
    - SphereSensor_get_aq_info
    - XXPointAttractor_get_aq_info
    - Script_get_aq_info
    - Shadow_get_aq_info
    - Sound2D_get_aq_info
    - CompositeTexture2D_get_aq_info
    - ColorInterpolator_get_aq_info
    - Clipper2D_get_aq_info
    - Transform3DAudio_get_aq_info
    - XXLFM_SurfaceMapList_get_aq_info
    - FDP_get_aq_info
    - LOD_get_aq_info
    - SpotLight_get_aq_info
    - Appearance_get_aq_info
    - AudioClip_get_aq_info
    - Ellipse_get_aq_info
    - MaterialKey_get_aq_info
    - Anchor_get_aq_info
    - XXPlanarObstacle_get_aq_info
    - FacadeNode_get_aq_info
    - FootPrintNode_get_aq_info
    - Coordinate2D_get_aq_info
    - XXParticleInitBox_get_aq_info
    - Cone_get_aq_info
    - LinearGradient_get_aq_info
    - PathLayout_get_aq_info
    - ProximitySensor_get_aq_info
    - Valuator_get_aq_info
    - DirectionalLight_get_aq_info
    - MovieTexture_get_aq_info
    - Collision_get_aq_info
    - Material_get_aq_info
    - NonLinearDeformer_get_aq_info
    - PositionInterpolator2D_get_aq_info
    - Text_get_aq_info
    - Billboard_get_aq_info
    - BodySegmentConnectionHint_get_aq_info
    - CoordinateInterpolator_get_aq_info
    - AdvancedAudioBuffer_get_aq_info
    - WaveletSubdivisionSurface_get_aq_info
    - AnimationStream_get_aq_info
    - SBSkinnedModel_get_aq_info
    - MediaSensor_get_aq_info
    - KeyNavigator_get_aq_info
    - Cylinder_get_aq_info
    - TemporalTransform_get_aq_info
    - AudioFX_get_aq_info
    - SimpleTexture_get_aq_info
    - FontStyle_get_aq_info
    - PositionInterpolator_get_aq_info
    - FAP_get_aq_info
    - Implicit_get_aq_info
    - PlaneSensor_get_aq_info
    - MediaControl_get_aq_info
    - TermCap_get_aq_info
    - AcousticMaterial_get_aq_info
    - FFD_get_aq_info
    - NurbsCurve_get_aq_info
    - IndexedLineSet_get_aq_info
    - AudioMix_get_aq_info
    - XXLFM_FrameList_get_aq_info
    - ScalarInterpolator_get_aq_info
    - SynthesizedTexture_get_aq_info
    - IndexedFaceSet2D_get_aq_info
    - Layout_get_aq_info
    - ImageTexture_get_aq_info
    - AudioChannelConfig_get_aq_info
    - Conditional_get_aq_info
    - Form_get_aq_info
    - Background2D_get_aq_info
    - Transform2D_get_aq_info
    - CylinderSensor_get_aq_info
    - CompositeTexture3D_get_aq_info
    - ServerCommand_get_aq_info
    - PerceptualParameters_get_aq_info
    - XXLFM_BlendList_get_aq_info
    - WideSound_get_aq_info
    - PositionAnimator2D_get_aq_info
    - Viewport_get_aq_info
    - Circle_get_aq_info
    - NormalInterpolator_get_aq_info
    - PlaneSensor2D_get_aq_info
    - TextureCoordinate_get_aq_info
    - FootPrintSetNode_get_aq_info
    - XXLFM_LightMap_get_aq_info
    - FaceDefMesh_get_aq_info
    - Extrusion_get_aq_info
    - BitWrapper_get_aq_info
    - ProximitySensor2D_get_aq_info
    - InputSensor_get_aq_info
    - PixelTexture_get_aq_info
    - DiscSensor_get_aq_info
    - OctreeImage_get_aq_info
    - CoordinateInterpolator2D_get_aq_info
    - LineProperties_get_aq_info
    - Bitmap_get_aq_info
    - BuildingPartNode_get_aq_info
    - Expression_get_aq_info
    - Body_get_aq_info
    - CoordinateInterpolator4D_get_aq_info
    - SBVCAnimationV2_get_aq_info
    - SubdivSurfaceSector_get_aq_info
    - MultiTexture_get_aq_info
    - PointTextureV2_get_aq_info
    - AudioSwitch_get_aq_info
    - NurbsSurface_get_aq_info
    - Box_get_aq_info
    - ElevationGrid_get_aq_info
    - Quadric_get_aq_info
    - Face_get_aq_info
    - PointSet_get_aq_info
    - ScalarAnimator_get_aq_info
    - ProceduralTexture_get_aq_info
    - PositionInterpolator4D_get_aq_info
    - FaceDefTables_get_aq_info
    - MeshGrid_get_aq_info
    - TextureTransform_get_aq_info
    - NavigationInfo_get_aq_info
    - Material2D_get_aq_info
    - OrderedGroup_get_aq_info
    - Viseme_get_aq_info
    - WorldInfo_get_aq_info
    - Transform_get_aq_info
    - TouchSensor_get_aq_info
    - Normal_get_aq_info
    - Sound_get_aq_info
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sg_mpeg4_node_get_aq_info(GF_Node *node, u32 FieldIndex, u8
      *QType, u8 *AType, Fixed *b_min, Fixed *b_max, u32 *QT13_bits)
  - BBCount: 55
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 111
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39808
      start: 39696
    functionDepth: 0
    functionLinenumber: 39696
    functionLinenumberEnd: 39808
    functionName: gf_sg_mpeg4_node_get_child_ndt
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_sg_mpeg4_node_get_child_ndt(GF_Node *node)
  - BBCount: 197
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39815,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39816,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39817,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39818,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39819,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39820,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39821,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39822,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39823,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39824,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39825,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39826,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39827,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39828,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39829,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39830,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39831,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39832,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39833,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39834,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39835,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39836,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39837,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39838,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39839,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39840,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39841,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39842,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39843,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39844,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39845,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39846,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39847,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39848,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39849,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39850,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39851,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39852,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39853,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39854,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39855,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39856,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39857,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39858,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39859,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39860,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39861,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39862,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39863,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39864,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39865,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39866,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39867,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39868,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39869,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39870,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39871,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39872,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39873,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39874,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39875,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39876,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39877,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39878,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39879,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39880,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39881,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39882,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39883,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39884,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39885,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39886,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39887,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39888,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39889,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39890,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39891,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39892,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39893,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39894,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39895,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39896,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39897,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39898,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39899,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39900,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39901,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39902,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39903,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39904,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39905,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39906,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39907,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39908,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39909,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39910,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39911,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39912,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39913,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39914,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39915,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39916,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39917,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39918,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39919,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39920,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39921,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39922,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39923,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39924,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39925,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39926,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39927,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39928,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39929,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39930,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39931,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39932,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39933,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39934,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39935,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39936,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39937,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39938,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39939,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39940,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39941,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39942,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39943,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39944,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39945,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39946,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39947,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39948,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39949,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39950,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39951,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39952,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39953,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39954,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39955,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39956,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39957,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39958,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39959,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39960,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39961,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39962,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39963,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39964,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39965,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39966,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39967,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39968,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39969,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39970,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39971,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39972,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39973,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39974,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39975,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39976,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39977,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39978,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39979,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39980,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39981,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39982,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39983,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39984,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39985,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39986,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39987,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39988,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39989,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39990,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39991,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39992,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39993,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39994,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39995,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39996,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39997,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39998,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39999,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40000,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40001,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40002,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40003,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40004,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40005,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40006,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40007,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40008,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40009,1
    CyclomaticComplexity: 196
    EdgeCount: 196
    ICount: 394
    argCount: 1
    argNames:
    - node_name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40011
      start: 39811
    functionDepth: 0
    functionLinenumber: 39811
    functionLinenumberEnd: 40011
    functionName: gf_node_mpeg4_type_by_class_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 2
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_mpeg4_type_by_class_name(const char *node_name)
  - BBCount: 197
    BranchProfiles: []
    Callsites:
    - Dst: Anchor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40017,1
    - Dst: AnimationStream_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40019,1
    - Dst: Appearance_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40021,1
    - Dst: AudioBuffer_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40023,1
    - Dst: AudioClip_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40025,1
    - Dst: AudioDelay_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40027,1
    - Dst: AudioFX_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40029,1
    - Dst: AudioMix_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40031,1
    - Dst: AudioSource_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40033,1
    - Dst: AudioSwitch_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40035,1
    - Dst: Background_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40037,1
    - Dst: Background2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40039,1
    - Dst: Billboard_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40041,1
    - Dst: Bitmap_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40043,1
    - Dst: Box_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40045,1
    - Dst: Circle_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40047,1
    - Dst: Collision_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40049,1
    - Dst: Color_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40051,1
    - Dst: ColorInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40053,1
    - Dst: CompositeTexture2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40055,1
    - Dst: CompositeTexture3D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40057,1
    - Dst: Conditional_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40059,1
    - Dst: Cone_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40061,1
    - Dst: Coordinate_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40063,1
    - Dst: Coordinate2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40065,1
    - Dst: CoordinateInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40067,1
    - Dst: CoordinateInterpolator2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40069,1
    - Dst: Curve2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40071,1
    - Dst: Cylinder_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40073,1
    - Dst: CylinderSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40075,1
    - Dst: DirectionalLight_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40077,1
    - Dst: DiscSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40079,1
    - Dst: ElevationGrid_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40081,1
    - Dst: Expression_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40083,1
    - Dst: Extrusion_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40085,1
    - Dst: Face_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40087,1
    - Dst: FaceDefMesh_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40089,1
    - Dst: FaceDefTables_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40091,1
    - Dst: FaceDefTransform_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40093,1
    - Dst: FAP_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40095,1
    - Dst: FDP_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40097,1
    - Dst: FIT_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40099,1
    - Dst: Fog_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40101,1
    - Dst: FontStyle_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40103,1
    - Dst: Form_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40105,1
    - Dst: Group_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40107,1
    - Dst: ImageTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40109,1
    - Dst: IndexedFaceSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40111,1
    - Dst: IndexedFaceSet2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40113,1
    - Dst: IndexedLineSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40115,1
    - Dst: IndexedLineSet2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40117,1
    - Dst: Inline_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40119,1
    - Dst: LOD_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40121,1
    - Dst: Layer2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40123,1
    - Dst: Layer3D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40125,1
    - Dst: Layout_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40127,1
    - Dst: LineProperties_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40129,1
    - Dst: ListeningPoint_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40131,1
    - Dst: Material_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40133,1
    - Dst: Material2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40135,1
    - Dst: MovieTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40137,1
    - Dst: NavigationInfo_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40139,1
    - Dst: Normal_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40141,1
    - Dst: NormalInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40143,1
    - Dst: OrderedGroup_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40145,1
    - Dst: OrientationInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40147,1
    - Dst: PixelTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40149,1
    - Dst: PlaneSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40151,1
    - Dst: PlaneSensor2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40153,1
    - Dst: PointLight_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40155,1
    - Dst: PointSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40157,1
    - Dst: PointSet2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40159,1
    - Dst: PositionInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40161,1
    - Dst: PositionInterpolator2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40163,1
    - Dst: ProximitySensor2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40165,1
    - Dst: ProximitySensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40167,1
    - Dst: QuantizationParameter_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40169,1
    - Dst: Rectangle_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40171,1
    - Dst: ScalarInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40173,1
    - Dst: Script_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40177,1
    - Dst: Shape_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40180,1
    - Dst: Sound_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40182,1
    - Dst: Sound2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40184,1
    - Dst: Sphere_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40186,1
    - Dst: SphereSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40188,1
    - Dst: SpotLight_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40190,1
    - Dst: Switch_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40192,1
    - Dst: TermCap_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40194,1
    - Dst: Text_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40196,1
    - Dst: TextureCoordinate_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40198,1
    - Dst: TextureTransform_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40200,1
    - Dst: TimeSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40202,1
    - Dst: TouchSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40204,1
    - Dst: Transform_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40206,1
    - Dst: Transform2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40208,1
    - Dst: Valuator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40210,1
    - Dst: Viewpoint_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40212,1
    - Dst: VisibilitySensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40214,1
    - Dst: Viseme_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40216,1
    - Dst: WorldInfo_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40218,1
    - Dst: AcousticMaterial_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40220,1
    - Dst: AcousticScene_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40222,1
    - Dst: ApplicationWindow_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40224,1
    - Dst: BAP_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40226,1
    - Dst: BDP_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40228,1
    - Dst: Body_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40230,1
    - Dst: BodyDefTable_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40232,1
    - Dst: BodySegmentConnectionHint_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40234,1
    - Dst: DirectiveSound_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40236,1
    - Dst: Hierarchical3DMesh_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40238,1
    - Dst: MaterialKey_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40240,1
    - Dst: PerceptualParameters_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40242,1
    - Dst: TemporalTransform_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40244,1
    - Dst: TemporalGroup_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40246,1
    - Dst: ServerCommand_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40248,1
    - Dst: InputSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40250,1
    - Dst: MatteTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40252,1
    - Dst: MediaBuffer_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40254,1
    - Dst: MediaControl_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40256,1
    - Dst: MediaSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40258,1
    - Dst: BitWrapper_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40260,1
    - Dst: CoordinateInterpolator4D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40262,1
    - Dst: DepthImage_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40264,1
    - Dst: FFD_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40266,1
    - Dst: Implicit_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40268,1
    - Dst: XXLFM_Appearance_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40270,1
    - Dst: XXLFM_BlendList_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40272,1
    - Dst: XXLFM_FrameList_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40274,1
    - Dst: XXLFM_LightMap_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40276,1
    - Dst: XXLFM_SurfaceMapList_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40278,1
    - Dst: XXLFM_ViewMapList_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40280,1
    - Dst: MeshGrid_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40282,1
    - Dst: NonLinearDeformer_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40284,1
    - Dst: NurbsCurve_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40286,1
    - Dst: NurbsCurve2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40288,1
    - Dst: NurbsSurface_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40290,1
    - Dst: OctreeImage_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40292,1
    - Dst: XXParticles_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40294,1
    - Dst: XXParticleInitBox_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40296,1
    - Dst: XXPlanarObstacle_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40298,1
    - Dst: XXPointAttractor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40300,1
    - Dst: PointTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40302,1
    - Dst: PositionAnimator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40304,1
    - Dst: PositionAnimator2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40306,1
    - Dst: PositionInterpolator4D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40308,1
    - Dst: ProceduralTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40310,1
    - Dst: Quadric_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40312,1
    - Dst: SBBone_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40314,1
    - Dst: SBMuscle_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40316,1
    - Dst: SBSegment_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40318,1
    - Dst: SBSite_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40320,1
    - Dst: SBSkinnedModel_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40322,1
    - Dst: SBVCAnimation_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40324,1
    - Dst: ScalarAnimator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40326,1
    - Dst: SimpleTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40328,1
    - Dst: SolidRep_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40330,1
    - Dst: SubdivisionSurface_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40332,1
    - Dst: SubdivSurfaceSector_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40334,1
    - Dst: WaveletSubdivisionSurface_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40336,1
    - Dst: Clipper2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40338,1
    - Dst: ColorTransform_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40340,1
    - Dst: Ellipse_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40342,1
    - Dst: LinearGradient_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40344,1
    - Dst: PathLayout_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40346,1
    - Dst: RadialGradient_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40348,1
    - Dst: SynthesizedTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40350,1
    - Dst: TransformMatrix2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40352,1
    - Dst: Viewport_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40354,1
    - Dst: XCurve2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40356,1
    - Dst: XFontStyle_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40358,1
    - Dst: XLineProperties_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40360,1
    - Dst: AdvancedAudioBuffer_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40362,1
    - Dst: AudioChannelConfig_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40364,1
    - Dst: DepthImageV2_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40366,1
    - Dst: MorphShape_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40368,1
    - Dst: MultiTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40370,1
    - Dst: PointTextureV2_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40372,1
    - Dst: SBVCAnimationV2_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40374,1
    - Dst: SimpleTextureV2_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40376,1
    - Dst: SurroundingSound_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40378,1
    - Dst: Transform3DAudio_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40380,1
    - Dst: WideSound_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40382,1
    - Dst: ScoreShape_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40384,1
    - Dst: MusicScore_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40386,1
    - Dst: FootPrintSetNode_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40388,1
    - Dst: FootPrintNode_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40390,1
    - Dst: BuildingPartNode_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40392,1
    - Dst: RoofNode_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40394,1
    - Dst: FacadeNode_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40396,1
    - Dst: Shadow_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40398,1
    - Dst: CacheTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40400,1
    - Dst: EnvironmentTest_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40402,1
    - Dst: KeyNavigator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40404,1
    - Dst: SpacePartition_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40406,1
    - Dst: Storage_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40408,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 395
    argCount: 2
    argNames:
    - node
    - name
    argTypes:
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40412
      start: 40013
    functionDepth: 1
    functionLinenumber: 40013
    functionLinenumberEnd: 40412
    functionName: gf_sg_mpeg4_node_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - ColorTransform_get_field_index_by_name
    - Appearance_get_field_index_by_name
    - FDP_get_field_index_by_name
    - NavigationInfo_get_field_index_by_name
    - SBMuscle_get_field_index_by_name
    - BAP_get_field_index_by_name
    - CompositeTexture3D_get_field_index_by_name
    - SBVCAnimationV2_get_field_index_by_name
    - Viewpoint_get_field_index_by_name
    - PositionAnimator_get_field_index_by_name
    - CacheTexture_get_field_index_by_name
    - FAP_get_field_index_by_name
    - PointTexture_get_field_index_by_name
    - Quadric_get_field_index_by_name
    - LOD_get_field_index_by_name
    - BodySegmentConnectionHint_get_field_index_by_name
    - CompositeTexture2D_get_field_index_by_name
    - Cylinder_get_field_index_by_name
    - XXLFM_SurfaceMapList_get_field_index_by_name
    - RadialGradient_get_field_index_by_name
    - AdvancedAudioBuffer_get_field_index_by_name
    - XXLFM_LightMap_get_field_index_by_name
    - RoofNode_get_field_index_by_name
    - XFontStyle_get_field_index_by_name
    - PathLayout_get_field_index_by_name
    - Bitmap_get_field_index_by_name
    - PointSet_get_field_index_by_name
    - KeyNavigator_get_field_index_by_name
    - XCurve2D_get_field_index_by_name
    - XXPlanarObstacle_get_field_index_by_name
    - Anchor_get_field_index_by_name
    - Rectangle_get_field_index_by_name
    - SimpleTexture_get_field_index_by_name
    - XLineProperties_get_field_index_by_name
    - EnvironmentTest_get_field_index_by_name
    - XXLFM_BlendList_get_field_index_by_name
    - FootPrintSetNode_get_field_index_by_name
    - SubdivSurfaceSector_get_field_index_by_name
    - IndexedFaceSet_get_field_index_by_name
    - Text_get_field_index_by_name
    - FacadeNode_get_field_index_by_name
    - Expression_get_field_index_by_name
    - CylinderSensor_get_field_index_by_name
    - CoordinateInterpolator_get_field_index_by_name
    - Extrusion_get_field_index_by_name
    - MediaBuffer_get_field_index_by_name
    - MediaControl_get_field_index_by_name
    - SBSkinnedModel_get_field_index_by_name
    - Fog_get_field_index_by_name
    - Transform_get_field_index_by_name
    - PositionInterpolator4D_get_field_index_by_name
    - PlaneSensor2D_get_field_index_by_name
    - Curve2D_get_field_index_by_name
    - Inline_get_field_index_by_name
    - TextureCoordinate_get_field_index_by_name
    - TemporalGroup_get_field_index_by_name
    - SBSegment_get_field_index_by_name
    - Script_get_field_index_by_name
    - Form_get_field_index_by_name
    - Coordinate2D_get_field_index_by_name
    - Normal_get_field_index_by_name
    - SphereSensor_get_field_index_by_name
    - AcousticScene_get_field_index_by_name
    - LinearGradient_get_field_index_by_name
    - MeshGrid_get_field_index_by_name
    - PositionAnimator2D_get_field_index_by_name
    - TextureTransform_get_field_index_by_name
    - XXLFM_Appearance_get_field_index_by_name
    - Storage_get_field_index_by_name
    - MusicScore_get_field_index_by_name
    - DirectiveSound_get_field_index_by_name
    - Implicit_get_field_index_by_name
    - MaterialKey_get_field_index_by_name
    - DirectionalLight_get_field_index_by_name
    - FontStyle_get_field_index_by_name
    - BDP_get_field_index_by_name
    - Background2D_get_field_index_by_name
    - XXParticleInitBox_get_field_index_by_name
    - AudioDelay_get_field_index_by_name
    - TimeSensor_get_field_index_by_name
    - PixelTexture_get_field_index_by_name
    - SBBone_get_field_index_by_name
    - FFD_get_field_index_by_name
    - XXLFM_ViewMapList_get_field_index_by_name
    - NurbsCurve_get_field_index_by_name
    - SpacePartition_get_field_index_by_name
    - AudioFX_get_field_index_by_name
    - SurroundingSound_get_field_index_by_name
    - Hierarchical3DMesh_get_field_index_by_name
    - IndexedFaceSet2D_get_field_index_by_name
    - TransformMatrix2D_get_field_index_by_name
    - Billboard_get_field_index_by_name
    - AcousticMaterial_get_field_index_by_name
    - MediaSensor_get_field_index_by_name
    - AnimationStream_get_field_index_by_name
    - Body_get_field_index_by_name
    - Shadow_get_field_index_by_name
    - SpotLight_get_field_index_by_name
    - Layout_get_field_index_by_name
    - Background_get_field_index_by_name
    - NurbsSurface_get_field_index_by_name
    - Clipper2D_get_field_index_by_name
    - DepthImageV2_get_field_index_by_name
    - MultiTexture_get_field_index_by_name
    - Conditional_get_field_index_by_name
    - AudioSwitch_get_field_index_by_name
    - AudioClip_get_field_index_by_name
    - Material_get_field_index_by_name
    - Sound_get_field_index_by_name
    - XXPointAttractor_get_field_index_by_name
    - Coordinate_get_field_index_by_name
    - Material2D_get_field_index_by_name
    - WaveletSubdivisionSurface_get_field_index_by_name
    - Viewport_get_field_index_by_name
    - IndexedLineSet_get_field_index_by_name
    - XXParticles_get_field_index_by_name
    - PlaneSensor_get_field_index_by_name
    - Collision_get_field_index_by_name
    - ProceduralTexture_get_field_index_by_name
    - Valuator_get_field_index_by_name
    - MatteTexture_get_field_index_by_name
    - NonLinearDeformer_get_field_index_by_name
    - Circle_get_field_index_by_name
    - FaceDefMesh_get_field_index_by_name
    - OctreeImage_get_field_index_by_name
    - Shape_get_field_index_by_name
    - FaceDefTransform_get_field_index_by_name
    - ElevationGrid_get_field_index_by_name
    - OrderedGroup_get_field_index_by_name
    - DepthImage_get_field_index_by_name
    - TemporalTransform_get_field_index_by_name
    - FaceDefTables_get_field_index_by_name
    - SubdivisionSurface_get_field_index_by_name
    - Layer2D_get_field_index_by_name
    - TermCap_get_field_index_by_name
    - WorldInfo_get_field_index_by_name
    - ApplicationWindow_get_field_index_by_name
    - DiscSensor_get_field_index_by_name
    - PointSet2D_get_field_index_by_name
    - Sphere_get_field_index_by_name
    - NormalInterpolator_get_field_index_by_name
    - SynthesizedTexture_get_field_index_by_name
    - PerceptualParameters_get_field_index_by_name
    - AudioSource_get_field_index_by_name
    - Group_get_field_index_by_name
    - PointTextureV2_get_field_index_by_name
    - MovieTexture_get_field_index_by_name
    - ImageTexture_get_field_index_by_name
    - IndexedLineSet2D_get_field_index_by_name
    - BitWrapper_get_field_index_by_name
    - BuildingPartNode_get_field_index_by_name
    - SolidRep_get_field_index_by_name
    - ScalarInterpolator_get_field_index_by_name
    - CoordinateInterpolator2D_get_field_index_by_name
    - NurbsCurve2D_get_field_index_by_name
    - MorphShape_get_field_index_by_name
    - TouchSensor_get_field_index_by_name
    - ProximitySensor2D_get_field_index_by_name
    - SimpleTextureV2_get_field_index_by_name
    - AudioBuffer_get_field_index_by_name
    - QuantizationParameter_get_field_index_by_name
    - Viseme_get_field_index_by_name
    - Face_get_field_index_by_name
    - ProximitySensor_get_field_index_by_name
    - VisibilitySensor_get_field_index_by_name
    - Box_get_field_index_by_name
    - InputSensor_get_field_index_by_name
    - XXLFM_FrameList_get_field_index_by_name
    - FIT_get_field_index_by_name
    - SBVCAnimation_get_field_index_by_name
    - Cone_get_field_index_by_name
    - ListeningPoint_get_field_index_by_name
    - Sound2D_get_field_index_by_name
    - Ellipse_get_field_index_by_name
    - CoordinateInterpolator4D_get_field_index_by_name
    - Transform3DAudio_get_field_index_by_name
    - ScoreShape_get_field_index_by_name
    - PositionInterpolator2D_get_field_index_by_name
    - AudioChannelConfig_get_field_index_by_name
    - ColorInterpolator_get_field_index_by_name
    - BodyDefTable_get_field_index_by_name
    - AudioMix_get_field_index_by_name
    - Switch_get_field_index_by_name
    - LineProperties_get_field_index_by_name
    - ServerCommand_get_field_index_by_name
    - PositionInterpolator_get_field_index_by_name
    - Color_get_field_index_by_name
    - Layer3D_get_field_index_by_name
    - OrientationInterpolator_get_field_index_by_name
    - PointLight_get_field_index_by_name
    - ScalarAnimator_get_field_index_by_name
    - FootPrintNode_get_field_index_by_name
    - SBSite_get_field_index_by_name
    - Transform2D_get_field_index_by_name
    - WideSound_get_field_index_by_name
    linkageType: ''
    returnType: s32
    signature: s32 gf_sg_mpeg4_node_get_field_index_by_name(GF_Node *node, char *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - keyValue1
    - keyValue2
    - fraction
    argTypes:
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionName: Interpolate
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - gf_mulfix
    linkageType: ''
    returnType: Fixed
    signature: Fixed Interpolate(Fixed keyValue1, Fixed keyValue2, Fixed fraction)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:42,1
    - Dst: ABS
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:43,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - key1
    - key2
    - fraction
    argTypes:
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionName: GetInterpolateFraction
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - gf_divfix
    - gf_assert
    - ABS
    linkageType: ''
    returnType: Fixed
    signature: Fixed GetInterpolateFraction(Fixed key1, Fixed key2, Fixed fraction)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:78,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:78,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:78,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:82,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:82,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:82,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 5
    argNames:
    - t
    - a
    - b
    - c
    - d
    argTypes:
    - Fixed
    - SFVec2f
    - SFVec2f
    - SFVec2f
    - SFVec2f
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 83
    functionName: do_bisection
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - gf_mulfix
    linkageType: ''
    returnType: Fixed
    signature: Fixed do_bisection(Fixed t, SFVec2f a, SFVec2f b, SFVec2f c, SFVec2f
      d)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:101,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:102,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:103,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - nurbs
    argTypes:
    - anim_nurbs*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 105
    functionName: anurbs_reset
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void anurbs_reset(anim_nurbs *nurbs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:109,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 7
    argNames:
    - nurbs
    - type
    - nCtrl
    - nKnots
    - knots
    - nWeight
    - weights
    argTypes:
    - anim_nurbs*
    - u32
    - u32
    - u32
    - Fixed*
    - u32
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 137
    functionName: anurbs_init
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: void anurbs_init(anim_nurbs *nurbs, u32 type, u32 nCtrl, u32 nKnots,
      Fixed *knots, u32 nWeight, Fixed *weights)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:144,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:145,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:146,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:156,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:157,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:158,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 3
    argNames:
    - nurbs
    - span
    - t
    argTypes:
    - anim_nurbs*
    - s32
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 162
    functionName: anurbs_basis
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - gf_divfix
    - gf_malloc
    - gf_mulfix
    linkageType: ''
    returnType: void
    signature: void anurbs_basis(anim_nurbs *nurbs, s32 span, Fixed t)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 2
    argNames:
    - nurbs
    - u
    argTypes:
    - anim_nurbs*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 189
    functionName: anurbs_find_span
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 anurbs_find_span(anim_nurbs *nurbs, Fixed u)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_scale
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:203,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:204,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:206,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:207,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:208,1
    - Dst: gf_invfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:212,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:213,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 3
    argNames:
    - nurbs
    - span
    - pts
    argTypes:
    - anim_nurbs*
    - s32
    - SFVec3f*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 191
    functionDepth: 1
    functionLinenumber: 191
    functionLinenumberEnd: 217
    functionName: anurbs_get_vec3f
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - gf_vec_scale
    - gf_invfix
    - gf_mulfix
    linkageType: ''
    returnType: SFVec3f
    signature: SFVec3f anurbs_get_vec3f(anim_nurbs *nurbs, s32 span, SFVec3f *pts)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:231,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:232,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:233,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:235,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:236,1
    - Dst: gf_invfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:240,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:241,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:242,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 3
    argNames:
    - nurbs
    - span
    - pts
    argTypes:
    - anim_nurbs*
    - s32
    - SFVec2f*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 246
    functionName: anurbs_get_vec2f
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - gf_mulfix
    - gf_invfix
    linkageType: ''
    returnType: SFVec2f
    signature: SFVec2f anurbs_get_vec2f(anim_nurbs *nurbs, s32 span, SFVec2f *pts)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:259,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:260,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:262,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:264,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - nurbs
    - span
    - vals
    argTypes:
    - anim_nurbs*
    - s32
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 248
    functionDepth: 0
    functionLinenumber: 248
    functionLinenumberEnd: 266
    functionName: anurbs_get_float
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - gf_divfix
    - gf_mulfix
    linkageType: ''
    returnType: Fixed
    signature: Fixed anurbs_get_float(anim_nurbs *nurbs, s32 span, Fixed *vals)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:283,1
    - Dst: anurbs_reset
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:284,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:285,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 280
    functionDepth: 1
    functionLinenumber: 280
    functionLinenumberEnd: 287
    functionName: Anim_Destroy
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - anurbs_reset
    - gf_free
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void Anim_Destroy(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: anurbs_reset
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:300,1
    - Dst: anurbs_init
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:303,1
    - Dst: anurbs_init
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:306,1
    - Dst: anurbs_init
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:309,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 6
    argNames:
    - stack
    - keyValueType
    - nCtrl
    - keySpline
    - nWeight
    - weights
    argTypes:
    - AnimatorStack*
    - u32
    - u32
    - MFVec2f*
    - u32
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 289
    functionDepth: 1
    functionLinenumber: 289
    functionLinenumberEnd: 312
    functionName: Animator_Update
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - anurbs_reset
    - anurbs_init
    linkageType: ''
    returnType: void
    signature: void Animator_Update(AnimatorStack *stack, u32 keyValueType, u32 nCtrl,
      MFVec2f *keySpline, u32 nWeight, Fixed *weights)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - frac
    - fromTo
    argTypes:
    - Fixed
    - SFVec2f*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 315
    functionDepth: 0
    functionLinenumber: 315
    functionLinenumberEnd: 324
    functionName: anim_check_frac
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool anim_check_frac(Fixed frac, SFVec2f *fromTo)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_len
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:341,1
    - Dst: Animator_Update
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:344,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - pa
    - stack
    argTypes:
    - M_PositionAnimator*
    - AnimatorStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 326
    functionDepth: 2
    functionLinenumber: 326
    functionLinenumberEnd: 345
    functionName: PA_Update
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - gf_vec_len
    - Animator_Update
    linkageType: ''
    returnType: void
    signature: void PA_Update(M_PositionAnimator *pa, AnimatorStack *stack)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:353,1
    - Dst: anim_check_frac
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:356,1
    - Dst: PA_Update
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:358,1
    - Dst: GetInterpolateFraction
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:382,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:386,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:386,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:390,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:390,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:391,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:395,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:403,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:408,1
    - Dst: do_bisection
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:411,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:412,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:412,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:413,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:419,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:420,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:421,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:431,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:431,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:432,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:435,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:435,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:436,1
    - Dst: do_bisection
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:439,1
    - Dst: anurbs_find_span
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:449,1
    - Dst: anurbs_basis
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:450,1
    - Dst: anurbs_get_vec3f
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:451,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:462,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 98
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 463
      start: 346
    functionDepth: 5
    functionLinenumber: 346
    functionLinenumberEnd: 463
    functionName: PA_SetFraction
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - GetInterpolateFraction
    - gf_vec_len
    - anurbs_basis
    - INT2FIX
    - gf_node_event_out
    - anim_check_frac
    - do_bisection
    - gf_divfix
    - gf_floor
    - FIX2INT
    - anurbs_get_vec3f
    - gf_mulfix
    - Interpolate
    - gf_node_get_private
    - PA_Update
    - anurbs_find_span
    linkageType: ''
    returnType: void
    signature: void PA_SetFraction(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:467,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 3
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 479
      start: 465
    functionDepth: 1
    functionLinenumber: 465
    functionLinenumberEnd: 479
    functionName: PA_Modified
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void PA_Modified(GF_Node *node, GF_FieldInfo *field)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:484,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:486,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:490,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:491,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 480
    functionDepth: 1
    functionLinenumber: 480
    functionLinenumberEnd: 493
    functionName: PA_Init
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void PA_Init(GF_Node *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sqrt
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:509,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:509,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:509,1
    - Dst: Animator_Update
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:512,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - pa
    - stack
    argTypes:
    - M_PositionAnimator2D*
    - AnimatorStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 495
    functionDepth: 2
    functionLinenumber: 495
    functionLinenumberEnd: 513
    functionName: PA2D_Update
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - Animator_Update
    - gf_mulfix
    - gf_sqrt
    linkageType: ''
    returnType: void
    signature: void PA2D_Update(M_PositionAnimator2D *pa, AnimatorStack *stack)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:521,1
    - Dst: anim_check_frac
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:524,1
    - Dst: PA2D_Update
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:526,1
    - Dst: GetInterpolateFraction
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:550,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:554,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:554,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:558,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:558,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:559,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:563,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:570,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:570,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:570,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:575,1
    - Dst: do_bisection
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:578,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:579,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:579,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:580,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:586,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:587,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:597,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:597,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:598,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:601,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:601,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:602,1
    - Dst: do_bisection
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:605,1
    - Dst: anurbs_find_span
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:615,1
    - Dst: anurbs_basis
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:616,1
    - Dst: anurbs_get_vec2f
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:617,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:627,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 95
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 514
    functionDepth: 5
    functionLinenumber: 514
    functionLinenumberEnd: 628
    functionName: PA2D_SetFraction
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - GetInterpolateFraction
    - anurbs_basis
    - INT2FIX
    - gf_node_event_out
    - anim_check_frac
    - PA2D_Update
    - do_bisection
    - gf_divfix
    - gf_floor
    - FIX2INT
    - anurbs_get_vec2f
    - Interpolate
    - gf_node_get_private
    - gf_mulfix
    - anurbs_find_span
    - gf_sqrt
    linkageType: ''
    returnType: void
    signature: void PA2D_SetFraction(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:632,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 3
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 644
      start: 630
    functionDepth: 1
    functionLinenumber: 630
    functionLinenumberEnd: 644
    functionName: PA2D_Modified
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void PA2D_Modified(GF_Node *node, GF_FieldInfo *field)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:649,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:651,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:655,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:656,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 645
    functionDepth: 1
    functionLinenumber: 645
    functionLinenumberEnd: 658
    functionName: PA2D_Init
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void PA2D_Init(GF_Node *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ABS
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:673,1
    - Dst: Animator_Update
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:676,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - sa
    - stack
    argTypes:
    - M_ScalarAnimator*
    - AnimatorStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 677
      start: 660
    functionDepth: 2
    functionLinenumber: 660
    functionLinenumberEnd: 677
    functionName: SA_Update
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - Animator_Update
    - ABS
    linkageType: ''
    returnType: void
    signature: void SA_Update(M_ScalarAnimator *sa, AnimatorStack *stack)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:685,1
    - Dst: anim_check_frac
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:688,1
    - Dst: SA_Update
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:690,1
    - Dst: GetInterpolateFraction
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:715,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:719,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:719,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:723,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:723,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:724,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:728,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:739,1
    - Dst: do_bisection
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:742,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:743,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:743,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:744,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:748,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:758,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:758,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:759,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:762,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:762,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:763,1
    - Dst: do_bisection
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:766,1
    - Dst: anurbs_find_span
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:776,1
    - Dst: anurbs_basis
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:777,1
    - Dst: anurbs_get_float
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:778,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:787,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 92
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 788
      start: 679
    functionDepth: 5
    functionLinenumber: 679
    functionLinenumberEnd: 788
    functionName: SA_SetFraction
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - GetInterpolateFraction
    - anurbs_basis
    - INT2FIX
    - anurbs_get_float
    - gf_node_event_out
    - anim_check_frac
    - do_bisection
    - gf_divfix
    - gf_floor
    - FIX2INT
    - anurbs_find_span
    - SA_Update
    - gf_node_get_private
    - gf_mulfix
    - Interpolate
    linkageType: ''
    returnType: void
    signature: void SA_SetFraction(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:792,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 3
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 804
      start: 790
    functionDepth: 1
    functionLinenumber: 790
    functionLinenumberEnd: 804
    functionName: SA_Modified
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void SA_Modified(GF_Node *node, GF_FieldInfo *field)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:810,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:812,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:816,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:817,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 806
    functionDepth: 1
    functionLinenumber: 806
    functionLinenumberEnd: 819
    functionName: SA_Init
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void SA_Init(GF_Node *n)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 28
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 61
    functionName: gf_dom_refresh_event_filter
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_dom_refresh_event_filter(GF_SceneGraph *sg)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_dom_refresh_event_filter
      Src: /src/gpac/src/scenegraph/dom_events.c:77,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 24
    argCount: 2
    argNames:
    - sg
    - category
    argTypes:
    - GF_SceneGraph*
    - GF_DOMEventCategory
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 78
    functionName: gf_sg_unregister_event_type
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_dom_refresh_event_filter
    linkageType: ''
    returnType: void
    signature: void gf_sg_unregister_event_type(GF_SceneGraph *sg, GF_DOMEventCategory
      category)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_dom_refresh_event_filter
      Src: /src/gpac/src/scenegraph/dom_events.c:93,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 2
    argNames:
    - sg
    - category
    argTypes:
    - GF_SceneGraph*
    - GF_DOMEventCategory
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 94
    functionName: gf_sg_register_event_type
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_dom_refresh_event_filter
    linkageType: ''
    returnType: void
    signature: void gf_sg_register_event_type(GF_SceneGraph *sg, GF_DOMEventCategory
      category)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: gf_sg_get_dom_event_filter
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_sg_get_dom_event_filter(GF_SceneGraph *sg)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 109
    functionName: gf_node_get_dom_event_filter
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_node_get_dom_event_filter(GF_Node *node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/dom_events.c:124,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_events.c:126,1
    - Dst: gf_sg_register_event_type
      Src: /src/gpac/src/scenegraph/dom_events.c:128,1
    - Dst: gf_dom_event_get_category
      Src: /src/gpac/src/scenegraph/dom_events.c:128,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/dom_events.c:131,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - listener
    - evt_target
    argTypes:
    - GF_Node*
    - GF_DOMEventTarget*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 112
    functionDepth: 2
    functionLinenumber: 112
    functionLinenumberEnd: 132
    functionName: gf_sg_listener_associate
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_sg_register_event_type
    - gf_node_get_attribute_by_tag
    - gf_dom_event_get_category
    - gf_list_add
    - gf_node_register
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sg_listener_associate(GF_Node *listener, GF_DOMEventTarget
      *evt_target)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/dom_events.c:143,1
    - Dst: gf_dom_event_target_new
      Src: /src/gpac/src/scenegraph/dom_events.c:149,1
    - Dst: gf_sg_listener_associate
      Src: /src/gpac/src/scenegraph/dom_events.c:151,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 2
    argNames:
    - node
    - listener
    argTypes:
    - GF_Node*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 135
    functionDepth: 3
    functionLinenumber: 135
    functionLinenumberEnd: 152
    functionName: gf_node_dom_listener_add
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 1
    functionsReached:
    - gf_sg_listener_associate
    - gf_dom_event_target_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_dom_listener_add(GF_Node *node, GF_Node *listener)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/dom_events.c:159,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_events.c:161,1
    - Dst: gf_sg_unregister_event_type
      Src: /src/gpac/src/scenegraph/dom_events.c:163,1
    - Dst: gf_dom_event_get_category
      Src: /src/gpac/src/scenegraph/dom_events.c:163,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/dom_events.c:167,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - listener
    - target
    argTypes:
    - GF_Node*
    - GF_DOMEventTarget*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 154
    functionDepth: 2
    functionLinenumber: 154
    functionLinenumberEnd: 169
    functionName: gf_dom_listener_del
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 1
    functionsReached:
    - gf_node_get_attribute_by_tag
    - gf_dom_event_get_category
    - gf_sg_unregister_event_type
    - gf_list_del_item
    - gf_node_unregister
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dom_listener_del(GF_Node *listener, GF_DOMEventTarget
      *target)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/dom_events.c:179,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_events.c:184,1
    - Dst: gf_sg_unregister_event_type
      Src: /src/gpac/src/scenegraph/dom_events.c:186,1
    - Dst: gf_dom_event_get_category
      Src: /src/gpac/src/scenegraph/dom_events.c:186,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - event_target
    - listener
    argTypes:
    - GF_DOMEventTarget*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 171
    functionDepth: 2
    functionLinenumber: 171
    functionLinenumberEnd: 191
    functionName: gf_dom_event_remove_listener_from_parent
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_sg_unregister_event_type
    - gf_dom_event_get_category
    - gf_list_del_item
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dom_event_remove_listener_from_parent(GF_DOMEventTarget *event_target,
      GF_Node *listener)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/dom_events.c:195,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/dom_events.c:196,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scenegraph/dom_events.c:197,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/dom_events.c:198,1
    - Dst: gf_dom_listener_del
      Src: /src/gpac/src/scenegraph/dom_events.c:200,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - event_target
    - sg
    argTypes:
    - GF_DOMEventTarget*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 193
    functionDepth: 3
    functionLinenumber: 193
    functionLinenumberEnd: 203
    functionName: gf_dom_event_remove_all_listeners
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_find
    - gf_dom_listener_del
    - gf_list_count
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_dom_event_remove_all_listeners(GF_DOMEventTarget *event_target,
      GF_SceneGraph *sg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/dom_events.c:209,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 205
    functionDepth: 1
    functionLinenumber: 205
    functionLinenumberEnd: 210
    functionName: gf_dom_listener_count
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dom_listener_count(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/dom_events.c:216,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - node
    - i
    argTypes:
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 217
    functionName: gf_dom_listener_get
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_dom_listener_get(GF_Node *node, u32 i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/scenegraph/dom_events.c:228,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/dom_events.c:229,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/dom_events.c:232,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/scenegraph/dom_events.c:233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - obs
    - listener
    argTypes:
    - GF_Node*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 234
    functionName: gf_sg_listener_post_add
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void gf_sg_listener_post_add(GF_Node *obs, GF_Node *listener)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/scenegraph/dom_events.c:239,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/dom_events.c:240,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/dom_events.c:242,1
    - Dst: gf_node_dom_listener_add
      Src: /src/gpac/src/scenegraph/dom_events.c:243,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_events.c:244,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/scenegraph/dom_events.c:246,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/scenegraph/dom_events.c:247,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 236
    functionDepth: 4
    functionLinenumber: 236
    functionLinenumberEnd: 248
    functionName: gf_dom_listener_process_add
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_list_get
    - gf_list_reset
    - gf_node_dom_listener_add
    - gf_list_count
    - gf_mx_v
    linkageType: ''
    returnType: void
    signature: void gf_dom_listener_process_add(GF_SceneGraph *sg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/scenegraph/dom_events.c:252,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/dom_events.c:253,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/dom_events.c:254,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/dom_events.c:255,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_events.c:256,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/scenegraph/dom_events.c:258,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 250
    functionDepth: 1
    functionLinenumber: 250
    functionLinenumberEnd: 259
    functionName: gf_dom_listener_reset_deferred
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_list_get
    - gf_list_count
    - gf_mx_v
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_dom_listener_reset_deferred(GF_SceneGraph *sg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: svgjs_handler_execute
      Src: /src/gpac/src/scenegraph/dom_events.c:267,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/dom_events.c:271,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - hdl
    - event
    - observer
    argTypes:
    - GF_Node*
    - GF_DOM_Event*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 261
    functionDepth: 1
    functionLinenumber: 261
    functionLinenumberEnd: 272
    functionName: gf_sg_handle_dom_event
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - svgjs_handler_execute
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_handle_dom_event(GF_Node *hdl, GF_DOM_Event *event,
      GF_Node *observer)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_events.c:281,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scenegraph/dom_events.c:286,1
    - Dst: dom_evt_get_handler
      Src: /src/gpac/src/scenegraph/dom_events.c:288,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 274
    functionDepth: 1
    functionLinenumber: 274
    functionLinenumberEnd: 289
    functionName: dom_evt_get_handler
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 1
    functionsReached:
    - dom_evt_get_handler
    - gf_sg_find_node_by_name
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *dom_evt_get_handler(GF_Node *n)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_events.c:299,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/dom_events.c:302,1
    - Dst: svgjs_handler_execute
      Src: /src/gpac/src/scenegraph/dom_events.c:307,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scenegraph/dom_events.c:312,1
    - Dst: dom_evt_get_handler
      Src: /src/gpac/src/scenegraph/dom_events.c:314,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/dom_events.c:325,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/dom_events.c:325,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/src/scenegraph/dom_events.c:325,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_events.c:336,1
    - Dst: SVG_handlerElement*::handle_event
      Src: /src/gpac/src/scenegraph/dom_events.c:339,1
    - Dst: SVG_handlerElement*::handle_event
      Src: /src/gpac/src/scenegraph/dom_events.c:341,1
    - Dst: SVG_handlerElement*::handle_event
      Src: /src/gpac/src/scenegraph/dom_events.c:344,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/scenegraph/dom_events.c:350,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/dom_events.c:355,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/scenegraph/dom_events.c:357,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 51
    argCount: 3
    argNames:
    - listen
    - event
    - observer
    argTypes:
    - GF_Node*
    - GF_DOM_Event*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 291
    functionDepth: 2
    functionLinenumber: 291
    functionLinenumberEnd: 363
    functionName: dom_event_process
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - dom_evt_get_handler
    - svgjs_handler_execute
    - gf_node_traverse
    - gf_sg_find_node_by_name
    - gf_node_get_attribute_by_tag
    - SVG_handlerElement*::handle_event
    - GF_LOG
    - gf_dom_event_fire
    - gf_dom_event_get_name
    - memset
    - strnicmp
    - gf_node_get_scene_time
    linkageType: ''
    returnType: void
    signature: void dom_event_process(GF_Node *listen, GF_DOM_Event *event, GF_Node
      *observer)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_set_destroy_cookie
      Src: /src/gpac/src/scenegraph/dom_events.c:373,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/dom_events.c:385,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/dom_events.c:388,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/scenegraph/dom_events.c:394,1
    - Dst: dom_event_process
      Src: /src/gpac/src/scenegraph/dom_events.c:416,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/dom_events.c:420,1
    - Dst: dom_event_process
      Src: /src/gpac/src/scenegraph/dom_events.c:424,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/dom_events.c:429,1
    - Dst: dom_event_process
      Src: /src/gpac/src/scenegraph/dom_events.c:434,1
    - Dst: gf_sg_set_destroy_cookie
      Src: /src/gpac/src/scenegraph/dom_events.c:439,1
    - Dst: gf_dom_listener_process_add
      Src: /src/gpac/src/scenegraph/dom_events.c:440,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/dom_events.c:446,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scenegraph/dom_events.c:448,1
    - Dst: gf_sg_set_destroy_cookie
      Src: /src/gpac/src/scenegraph/dom_events.c:458,1
    - Dst: gf_dom_listener_process_add
      Src: /src/gpac/src/scenegraph/dom_events.c:459,1
    - Dst: gf_sg_set_destroy_cookie
      Src: /src/gpac/src/scenegraph/dom_events.c:465,1
    - Dst: gf_dom_listener_process_add
      Src: /src/gpac/src/scenegraph/dom_events.c:466,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 78
    argCount: 4
    argNames:
    - et
    - event
    - sg
    - n
    argTypes:
    - GF_DOMEventTarget*
    - GF_DOM_Event*
    - GF_SceneGraph*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 367
    functionDepth: 5
    functionLinenumber: 367
    functionLinenumberEnd: 474
    functionName: gf_sg_fire_dom_event
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_sg_set_destroy_cookie
    - gf_list_get
    - gf_assert
    - gf_svg_flatten_attributes
    - gf_dom_listener_process_add
    - gf_list_find
    - gf_list_count
    - dom_event_process
    - gf_node_unregister
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_fire_dom_event(GF_DOMEventTarget *et, GF_DOM_Event
      *event, GF_SceneGraph *sg, GF_Node *n)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/scenegraph/dom_events.c:484,1
    - Dst: gf_sg_fire_dom_event
      Src: /src/gpac/src/scenegraph/dom_events.c:489,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/dom_events.c:493,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/dom_events.c:496,1
    - Dst: gf_sg_fire_dom_event
      Src: /src/gpac/src/scenegraph/dom_events.c:501,1
    - Dst: gf_sg_dom_event_bubble
      Src: /src/gpac/src/scenegraph/dom_events.c:506,1
    - Dst: gf_sg_fire_dom_event
      Src: /src/gpac/src/scenegraph/dom_events.c:513,1
    - Dst: gf_sg_dom_event_bubble
      Src: /src/gpac/src/scenegraph/dom_events.c:516,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 4
    argNames:
    - node
    - event
    - use_stack
    - cur_par_idx
    argTypes:
    - GF_Node*
    - GF_DOM_Event*
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 476
    functionDepth: 6
    functionLinenumber: 476
    functionLinenumberEnd: 517
    functionName: gf_sg_dom_event_bubble
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 1
    functionsReached:
    - gf_node_get_parent
    - gf_sg_fire_dom_event
    - gf_list_get
    - gf_sg_dom_event_bubble
    linkageType: ''
    returnType: void
    signature: void gf_sg_dom_event_bubble(GF_Node *node, GF_DOM_Event *event, GF_List
      *use_stack, u32 cur_par_idx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_insert
      Src: /src/gpac/src/scenegraph/dom_events.c:523,1
    - Dst: gf_sg_dom_stack_parents
      Src: /src/gpac/src/scenegraph/dom_events.c:524,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/scenegraph/dom_events.c:524,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - node
    - stack
    argTypes:
    - GF_Node*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 520
    functionDepth: 1
    functionLinenumber: 520
    functionLinenumberEnd: 525
    functionName: gf_sg_dom_stack_parents
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 1
    functionsReached:
    - gf_list_insert
    - gf_node_get_parent
    - gf_sg_dom_stack_parents
    linkageType: ''
    returnType: void
    signature: void gf_sg_dom_stack_parents(GF_Node *node, GF_List *stack)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/dom_events.c:538,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/scenegraph/dom_events.c:538,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/dom_events.c:538,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/dom_events.c:538,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/src/scenegraph/dom_events.c:538,1
    - Dst: gf_dom_listener_process_add
      Src: /src/gpac/src/scenegraph/dom_events.c:542,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/dom_events.c:564,1
    - Dst: gf_sg_dom_stack_parents
      Src: /src/gpac/src/scenegraph/dom_events.c:566,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/scenegraph/dom_events.c:566,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/dom_events.c:567,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/dom_events.c:569,1
    - Dst: gf_sg_fire_dom_event
      Src: /src/gpac/src/scenegraph/dom_events.c:571,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/dom_events.c:579,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/dom_events.c:591,1
    - Dst: gf_sg_fire_dom_event
      Src: /src/gpac/src/scenegraph/dom_events.c:603,1
    - Dst: gf_sg_dom_event_bubble
      Src: /src/gpac/src/scenegraph/dom_events.c:608,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 58
    argCount: 3
    argNames:
    - node
    - event
    - use_stack
    argTypes:
    - GF_Node*
    - GF_DOM_Event*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 614
      start: 528
    functionDepth: 7
    functionLinenumber: 528
    functionLinenumberEnd: 614
    functionName: gf_dom_event_fire_ex
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_list_get
    - gf_sg_dom_event_bubble
    - GF_LOG
    - gf_dom_listener_process_add
    - gf_dom_event_get_name
    - gf_list_count
    - gf_node_get_log_name
    - gf_sg_dom_stack_parents
    - gf_node_get_graph
    - gf_node_get_scene_time
    - gf_node_get_parent
    - gf_sg_fire_dom_event
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dom_event_fire_ex(GF_Node *node, GF_DOM_Event *event,
      GF_List *use_stack)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/scenegraph/dom_events.c:619,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - event
    argTypes:
    - GF_Node*
    - GF_DOM_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 620
      start: 616
    functionDepth: 8
    functionLinenumber: 616
    functionLinenumberEnd: 620
    functionName: gf_dom_event_fire
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 2
    functionsReached:
    - gf_dom_event_fire_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dom_event_fire(GF_Node *node, GF_DOM_Event *event)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/dom_events.c:629,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scenegraph/dom_events.c:632,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_events.c:636,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scenegraph/dom_events.c:641,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_events.c:642,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/dom_events.c:647,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scenegraph/dom_events.c:648,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_events.c:651,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_events.c:655,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_events.c:658,1
    - Dst: gf_node_dom_listener_add
      Src: /src/gpac/src/scenegraph/dom_events.c:661,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 5
    argNames:
    - node
    - event_type
    - event_parameter
    - handler
    - out_listener
    argTypes:
    - GF_Node*
    - u32
    - u32
    - GF_Node*
    - GF_Node**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 668
      start: 622
    functionDepth: 4
    functionLinenumber: 622
    functionLinenumberEnd: 668
    functionName: gf_dom_listener_build_ex
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_node_get_attribute_by_tag
    - GF_LOG
    - gf_node_dom_listener_add
    - gf_node_list_add_child_last
    - gf_node_new
    - gf_node_register
    linkageType: ''
    returnType: GF_DOMHandler
    signature: GF_DOMHandler *gf_dom_listener_build_ex(GF_Node *node, u32 event_type,
      u32 event_parameter, GF_Node *handler, GF_Node **out_listener)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dom_listener_build_ex
      Src: /src/gpac/src/scenegraph/dom_events.c:673,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 674
      start: 670
    functionDepth: 5
    functionLinenumber: 670
    functionLinenumberEnd: 674
    functionName: GF_DOMHandler *gf_dom_listener_build(GF_Node *node, GF_EventType
      event_type, u32 event_parameter)
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_dom_listener_build_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_DOMHandler *gf_dom_listener_build(GF_Node *node, GF_EventType
      event_type, u32 event_parameter)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/dom_events.c:679,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/dom_events.c:682,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/dom_events.c:687,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_events.c:689,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/dom_events.c:690,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/dom_events.c:697,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/dom_events.c:710,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/dom_events.c:712,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/dom_events.c:725,1
    - Dst: GF_SMIL_TIME_IS_CLOCK
      Src: /src/gpac/src/scenegraph/dom_events.c:727,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/scenegraph/dom_events.c:733,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/dom_events.c:737,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/dom_events.c:737,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/dom_events.c:737,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/dom_events.c:740,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 53
    argCount: 4
    argNames:
    - timed_elt
    - info
    - evt
    - is_end
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    - GF_DOM_Event*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 741
      start: 676
    functionDepth: 1
    functionLinenumber: 676
    functionLinenumberEnd: 741
    functionName: gf_smil_handle_event
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_insert
    - gf_list_get
    - GF_SMIL_TIME_IS_CLOCK
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_count
    - gf_node_get_log_name
    - gf_node_get_scene_time
    - gf_node_changed
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_smil_handle_event(GF_Node *timed_elt, GF_FieldInfo *info, GF_DOM_Event
      *evt, Bool is_end)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/scenegraph/dom_events.c:749,1
    - Dst: gf_smil_handle_event
      Src: /src/gpac/src/scenegraph/dom_events.c:753,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - hdl
    - evt
    - observer
    argTypes:
    - GF_Node*
    - GF_DOM_Event*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 743
    functionDepth: 2
    functionLinenumber: 743
    functionLinenumberEnd: 754
    functionName: gf_smil_handle_event_begin
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_smil_handle_event
    linkageType: ''
    returnType: void
    signature: void gf_smil_handle_event_begin(GF_Node *hdl, GF_DOM_Event *evt, GF_Node
      *observer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/scenegraph/dom_events.c:762,1
    - Dst: gf_smil_handle_event
      Src: /src/gpac/src/scenegraph/dom_events.c:766,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - hdl
    - evt
    - observer
    argTypes:
    - GF_Node*
    - GF_DOM_Event*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 767
      start: 756
    functionDepth: 2
    functionLinenumber: 756
    functionLinenumberEnd: 767
    functionName: gf_smil_handle_event_end
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_smil_handle_event
    linkageType: ''
    returnType: void
    signature: void gf_smil_handle_event_end(GF_Node *hdl, GF_DOM_Event *evt, GF_Node
      *observer)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/dom_events.c:773,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/dom_events.c:775,1
    - Dst: gf_dom_listener_build_ex
      Src: /src/gpac/src/scenegraph/dom_events.c:791,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/dom_events.c:798,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 29
    argCount: 3
    argNames:
    - node
    - l
    - is_begin
    argTypes:
    - GF_Node*
    - GF_List*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 810
      start: 769
    functionDepth: 5
    functionLinenumber: 769
    functionLinenumberEnd: 810
    functionName: gf_smil_setup_event_list
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_dom_listener_build_ex
    - gf_list_get
    - gf_node_register
    linkageType: ''
    returnType: void
    signature: void gf_smil_setup_event_list(GF_Node *node, GF_List *l, Bool is_begin)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_events.c:815,1
    - Dst: gf_smil_setup_event_list
      Src: /src/gpac/src/scenegraph/dom_events.c:816,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_events.c:817,1
    - Dst: gf_smil_setup_event_list
      Src: /src/gpac/src/scenegraph/dom_events.c:818,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 812
    functionDepth: 6
    functionLinenumber: 812
    functionLinenumberEnd: 819
    functionName: gf_smil_setup_events
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_smil_setup_event_list
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void gf_smil_setup_events(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/dom_events.c:825,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/scenegraph/dom_events.c:827,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_events.c:827,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - n
    - text
    argTypes:
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 828
      start: 821
    functionDepth: 1
    functionLinenumber: 821
    functionLinenumberEnd: 828
    functionName: gf_dom_set_textContent
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 1
    functionsReached:
    - gf_node_unregister_children
    - gf_strdup
    - gf_dom_add_text_node
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dom_set_textContent(GF_Node *n, char *text)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/dom_events.c:834,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/dom_events.c:837,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/dom_events.c:840,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scenegraph/dom_events.c:841,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - parent
    - text_data
    argTypes:
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 830
    functionDepth: 1
    functionLinenumber: 830
    functionLinenumberEnd: 843
    functionName: gf_dom_add_text_node
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 2
    functionsReached:
    - gf_node_list_add_child_last
    - gf_node_register
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_dom_add_text_node(GF_Node *parent, char *text_data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/dom_events.c:848,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/dom_events.c:851,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 854
      start: 845
    functionDepth: 1
    functionLinenumber: 845
    functionLinenumberEnd: 854
    functionName: gf_dom_new_text_node
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_DOMText
    signature: GF_DOMText *gf_dom_new_text_node(GF_SceneGraph *sg)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_events.c:866,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/dom_events.c:867,1
    - Dst: gf_dom_flatten_textContent
      Src: /src/gpac/src/scenegraph/dom_events.c:873,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/dom_events.c:875,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/dom_events.c:876,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/dom_events.c:879,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_events.c:880,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 885
      start: 856
    functionDepth: 1
    functionLinenumber: 856
    functionLinenumberEnd: 885
    functionName: gf_dom_flatten_textContent
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 5
    functionsReached:
    - strcat
    - gf_free
    - gf_strdup
    - gf_dom_flatten_textContent
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_dom_flatten_textContent(GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/dom_events.c:890,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/dom_events.c:893,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/dom_events.c:895,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/dom_events.c:896,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scenegraph/dom_events.c:897,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - parent
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 899
      start: 887
    functionDepth: 1
    functionLinenumber: 887
    functionLinenumberEnd: 899
    functionName: gf_dom_add_updates_node
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - gf_node_setup
    - gf_node_list_add_child_last
    - gf_node_register
    linkageType: ''
    returnType: GF_DOMUpdates
    signature: GF_DOMUpdates *gf_dom_add_updates_node(GF_Node *parent)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/dom_events.c:905,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/dom_events.c:908,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/dom_events.c:910,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/dom_events.c:911,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scenegraph/dom_events.c:912,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - parent
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 914
      start: 902
    functionDepth: 1
    functionLinenumber: 902
    functionLinenumberEnd: 914
    functionName: gf_dom_add_update_node
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - gf_node_setup
    - gf_node_list_add_child_last
    - gf_node_register
    linkageType: ''
    returnType: GF_DOMUpdates
    signature: GF_DOMUpdates *gf_dom_add_update_node(GF_Node *parent)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/dom_events.c:927,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/dom_events.c:930,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_events.c:933,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_events.c:945,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scenegraph/dom_events.c:946,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/src/scenegraph/dom_events.c:946,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 22
    argCount: 2
    argNames:
    - n
    - f
    argTypes:
    - GF_Node*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 951
      start: 917
    functionDepth: 1
    functionLinenumber: 917
    functionLinenumberEnd: 951
    functionName: gf_dom_event_dump_listeners
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_fprintf
    - gf_node_get_attribute_by_tag
    - gf_dom_event_get_name
    - gf_list_count
    linkageType: ''
    returnType: void
    signature: void gf_dom_event_dump_listeners(GF_Node *n, FILE *f)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/dom_events.c:956,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/dom_events.c:959,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - type
    - obj
    argTypes:
    - GF_DOMEventTargetType
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 962
      start: 953
    functionDepth: 1
    functionLinenumber: 953
    functionLinenumberEnd: 962
    functionName: gf_dom_event_target_new
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_DOMEventTarget
    signature: GF_DOMEventTarget *gf_dom_event_target_new(GF_DOMEventTargetType type,
      void *obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/dom_events.c:966,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/dom_events.c:966,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/dom_events.c:967,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_events.c:968,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - target
    argTypes:
    - GF_DOMEventTarget*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 969
      start: 964
    functionDepth: 1
    functionLinenumber: 964
    functionLinenumberEnd: 969
    functionName: gf_dom_event_target_del
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_assert
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_dom_event_target_del(GF_DOMEventTarget *target)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/dom_events.c:978,1
    - Dst: gf_dom_event_target_new
      Src: /src/gpac/src/scenegraph/dom_events.c:982,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 987
      start: 971
    functionDepth: 2
    functionLinenumber: 971
    functionLinenumberEnd: 987
    functionName: gf_dom_event_get_target_from_node
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_dom_event_target_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_DOMEventTarget
    signature: GF_DOMEventTarget *gf_dom_event_get_target_from_node(GF_Node *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/scenegraph/xml_ns.c:357,1
    - Dst: gf_sg_add_namespace
      Src: /src/gpac/src/scenegraph/xml_ns.c:359,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - elt
    argTypes:
    - GF_DOMNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 351
    functionDepth: 1
    functionLinenumber: 351
    functionLinenumberEnd: 364
    functionName: gf_xml_push_namespaces
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 0
    functionsReached:
    - strncmp
    - gf_sg_add_namespace
    linkageType: ''
    returnType: void
    signature: void gf_xml_push_namespaces(GF_DOMNode *elt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/scenegraph/xml_ns.c:372,1
    - Dst: gf_sg_remove_namespace
      Src: /src/gpac/src/scenegraph/xml_ns.c:374,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - elt
    argTypes:
    - GF_DOMNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 366
    functionDepth: 1
    functionLinenumber: 366
    functionLinenumberEnd: 379
    functionName: gf_xml_pop_namespaces
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 0
    functionsReached:
    - strncmp
    - gf_sg_remove_namespace
    linkageType: ''
    returnType: void
    signature: void gf_xml_pop_namespaces(GF_DOMNode *elt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/scenegraph/xml_ns.c:388,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/xml_ns.c:388,1
    - Dst: gf_xml_get_namespace_id
      Src: /src/gpac/src/scenegraph/xml_ns.c:389,1
    - Dst: gf_xml_get_namespace
      Src: /src/gpac/src/scenegraph/xml_ns.c:395,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 2
    argNames:
    - elt
    - attribute_name
    argTypes:
    - GF_DOMNode*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 382
    functionDepth: 1
    functionLinenumber: 382
    functionLinenumberEnd: 396
    functionName: gf_xml_get_namespace
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 1
    functionsReached:
    - strncmp
    - strcmp
    - gf_xml_get_namespace_id
    - gf_xml_get_namespace
    linkageType: ''
    returnType: u32
    signature: u32 gf_xml_get_namespace(GF_DOMNode *elt, const char *attribute_name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/scenegraph/xml_ns.c:404,1
    - Dst: gf_xml_get_namespace_id
      Src: /src/gpac/src/scenegraph/xml_ns.c:404,1
    - Dst: gf_xml_get_namespace_qname
      Src: /src/gpac/src/scenegraph/xml_ns.c:412,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 2
    argNames:
    - elt
    - ns
    argTypes:
    - GF_DOMNode*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 398
    functionDepth: 1
    functionLinenumber: 398
    functionLinenumberEnd: 413
    functionName: gf_xml_get_namespace_qname
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 1
    functionsReached:
    - strncmp
    - gf_xml_get_namespace_id
    - gf_xml_get_namespace_qname
    linkageType: ''
    returnType: char
    signature: char *gf_xml_get_namespace_qname(GF_DOMNode *elt, u32 ns)
  - BBCount: 51
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/xml_ns.c:421,1
    - Dst: gf_sg_get_namespace_code
      Src: /src/gpac/src/scenegraph/xml_ns.c:424,1
    - Dst: gf_xml_get_namespace
      Src: /src/gpac/src/scenegraph/xml_ns.c:425,1
    - Dst: gf_xml_get_element_namespace
      Src: /src/gpac/src/scenegraph/xml_ns.c:429,1
    - Dst: gf_sg_get_namespace_code
      Src: /src/gpac/src/scenegraph/xml_ns.c:430,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/xml_ns.c:435,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 88
    argCount: 3
    argNames:
    - elt
    - attribute_name
    - ns
    argTypes:
    - GF_Node*
    - char*
    - GF_NamespaceType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 415
    functionDepth: 2
    functionLinenumber: 415
    functionLinenumberEnd: 507
    functionName: gf_xml_get_attribute_tag
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 0
    functionsReached:
    - gf_xml_get_element_namespace
    - strcmp
    - strchr
    - gf_xml_get_namespace
    - gf_sg_get_namespace_code
    linkageType: ''
    returnType: u32
    signature: u32 gf_xml_get_attribute_tag(GF_Node *elt, char *attribute_name, GF_NamespaceType
      ns)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 509
    functionDepth: 0
    functionLinenumber: 509
    functionLinenumberEnd: 517
    functionName: gf_xml_get_attribute_type
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_xml_get_attribute_type(u32 tag)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_get_element_namespace
      Src: /src/gpac/src/scenegraph/xml_ns.c:524,1
    - Dst: gf_xml_get_namespace_qname
      Src: /src/gpac/src/scenegraph/xml_ns.c:532,1
    - Dst: snprintf
      Src: /src/gpac/src/scenegraph/xml_ns.c:534,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - node
    - tag
    argTypes:
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 519
    functionDepth: 2
    functionLinenumber: 519
    functionLinenumberEnd: 541
    functionName: gf_svg_get_attribute_name
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 5
    functionsReached:
    - gf_xml_get_element_namespace
    - snprintf
    - gf_xml_get_namespace_qname
    linkageType: ''
    returnType: char
    signature: char *gf_svg_get_attribute_name(GF_Node *node, u32 tag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_get_attribute_type
      Src: /src/gpac/src/scenegraph/xml_ns.c:544,1
    - Dst: gf_node_create_attribute_from_datatype
      Src: /src/gpac/src/scenegraph/xml_ns.c:545,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - tag
    argTypes:
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 542
    functionDepth: 1
    functionLinenumber: 542
    functionLinenumberEnd: 546
    functionName: gf_xml_create_attribute
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 0
    functionsReached:
    - gf_xml_get_attribute_type
    - gf_node_create_attribute_from_datatype
    linkageType: ''
    returnType: GF_DOMAttribute
    signature: GF_DOMAttribute *gf_xml_create_attribute(GF_Node *node, u32 tag)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/xml_ns.c:645,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - element_name
    - ns
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 651
      start: 638
    functionDepth: 0
    functionLinenumber: 638
    functionLinenumberEnd: 651
    functionName: gf_xml_get_element_tag
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_get_element_tag(const char *element_name, u32 ns)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_namespace_code
      Src: /src/gpac/src/scenegraph/xml_ns.c:657,1
    - Dst: gf_sg_get_namespace_qname
      Src: /src/gpac/src/scenegraph/xml_ns.c:665,1
    - Dst: snprintf
      Src: /src/gpac/src/scenegraph/xml_ns.c:667,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 674
      start: 653
    functionDepth: 1
    functionLinenumber: 653
    functionLinenumberEnd: 674
    functionName: gf_xml_get_element_name
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 0
    functionsReached:
    - gf_sg_get_namespace_qname
    - gf_sg_get_namespace_code
    - snprintf
    linkageType: ''
    returnType: char
    signature: char *gf_xml_get_element_name(GF_Node *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 676
    functionDepth: 0
    functionLinenumber: 676
    functionLinenumberEnd: 689
    functionName: gf_xml_get_element_namespace
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_NamespaceType
    signature: GF_NamespaceType gf_xml_get_element_namespace(GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 702
      start: 691
    functionDepth: 0
    functionLinenumber: 691
    functionLinenumberEnd: 702
    functionName: gf_node_get_attribute_count
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_node_get_attribute_count(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 704
    functionDepth: 0
    functionLinenumber: 704
    functionLinenumberEnd: 719
    functionName: gf_node_get_attribute_info
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_node_get_attribute_info(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_delete_attribute_value
      Src: /src/gpac/src/scenegraph/xml_ns.c:726,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/xml_ns.c:730,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/xml_ns.c:732,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 734
      start: 721
    functionDepth: 1
    functionLinenumber: 721
    functionLinenumberEnd: 734
    functionName: gf_node_delete_attributes
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_svg_delete_attribute_value
    linkageType: ''
    returnType: void
    signature: void gf_node_delete_attributes(GF_Node *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/xml_ns.c:741,1
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/scenegraph/xml_ns.c:745,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - data_type
    - attribute_tag
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 747
      start: 736
    functionDepth: 2
    functionLinenumber: 736
    functionLinenumberEnd: 747
    functionName: gf_node_create_attribute_from_datatype
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 1
    functionsReached:
    - gf_svg_create_attribute_value
    - GF_SAFEALLOC
    linkageType: ''
    returnType: SVGAttribute
    signature: SVGAttribute *gf_node_create_attribute_from_datatype(u32 data_type,
      u32 attribute_tag)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_get_attribute_tag
      Src: /src/gpac/src/scenegraph/xml_ns.c:752,1
    - Dst: gf_sg_get_namespace_qname
      Src: /src/gpac/src/scenegraph/xml_ns.c:758,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/xml_ns.c:759,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/xml_ns.c:763,1
    - Dst: strncmp
      Src: /src/gpac/src/scenegraph/xml_ns.c:763,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/xml_ns.c:763,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/xml_ns.c:774,1
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/scenegraph/xml_ns.c:778,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/xml_ns.c:780,1
    - Dst: gf_xml_get_element_namespace
      Src: /src/gpac/src/scenegraph/xml_ns.c:782,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/xml_ns.c:796,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 38
    argCount: 6
    argNames:
    - node
    - name
    - xmlns_code
    - create_if_not_found
    - set_default
    - field
    argTypes:
    - GF_Node*
    - char*
    - u32
    - Bool
    - Bool
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 797
      start: 749
    functionDepth: 3
    functionLinenumber: 749
    functionLinenumberEnd: 797
    functionName: gf_node_get_attribute_by_name
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 7
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - gf_xml_get_element_namespace
    - gf_node_get_attribute_by_tag
    - gf_sg_get_namespace_qname
    - gf_svg_create_attribute_value
    - strncmp
    - strcmp
    - gf_xml_get_attribute_tag
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_get_attribute_by_name(GF_Node *node, char *name,
      u32 xmlns_code, Bool create_if_not_found, Bool set_default, GF_FieldInfo *field)
  - BBCount: 53
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/xml_ns.c:809,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/xml_ns.c:913,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/xml_ns.c:926,1
    - Dst: gf_svg_get_attribute_name
      Src: /src/gpac/src/scenegraph/xml_ns.c:926,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 115
    argCount: 2
    argNames:
    - node
    - att
    argTypes:
    - GF_Node*
    - SVGAttribute*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 928
      start: 800
    functionDepth: 3
    functionLinenumber: 800
    functionLinenumberEnd: 928
    functionName: attributes_set_default_value
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_mx2d_init
    - INT2FIX
    - gf_svg_get_attribute_name
    linkageType: ''
    returnType: void
    signature: void attributes_set_default_value(GF_Node *node, SVGAttribute *att)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_create_attribute
      Src: /src/gpac/src/scenegraph/xml_ns.c:950,1
    - Dst: attributes_set_default_value
      Src: /src/gpac/src/scenegraph/xml_ns.c:959,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 5
    argNames:
    - node
    - attribute_tag
    - create_if_not_found
    - set_default
    - field
    argTypes:
    - GF_Node*
    - u32
    - Bool
    - Bool
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 965
      start: 930
    functionDepth: 4
    functionLinenumber: 930
    functionLinenumberEnd: 965
    functionName: gf_node_get_attribute_by_tag
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 15
    functionsReached:
    - gf_xml_create_attribute
    - attributes_set_default_value
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_get_attribute_by_tag(GF_Node *node, u32 attribute_tag,
      Bool create_if_not_found, Bool set_default, GF_FieldInfo *field)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/scenegraph/xml_ns.c:971,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/xml_ns.c:972,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - sg
    - target
    argTypes:
    - GF_SceneGraph*
    - XMLRI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 975
      start: 967
    functionDepth: 1
    functionLinenumber: 967
    functionLinenumberEnd: 975
    functionName: gf_node_register_iri
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 5
    functionsReached:
    - gf_list_find
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_register_iri(GF_SceneGraph *sg, XMLRI *target)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/xml_ns.c:981,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sg
    - target
    argTypes:
    - GF_SceneGraph*
    - XMLRI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 977
    functionDepth: 1
    functionLinenumber: 977
    functionLinenumberEnd: 983
    functionName: gf_node_unregister_iri
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 0
    functionsReached:
    - gf_list_del_item
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_unregister_iri(GF_SceneGraph *sg, XMLRI *target)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/scenegraph/xml_ns.c:990,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/xml_ns.c:998,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/xml_ns.c:1005,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/src/scenegraph/xml_ns.c:1013,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/xml_ns.c:1015,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/scenegraph/xml_ns.c:1020,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/scenegraph/xml_ns.c:1023,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scenegraph/xml_ns.c:1033,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/xml_ns.c:1034,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scenegraph/xml_ns.c:1036,1
    - Dst: gf_node_clone
      Src: /src/gpac/src/scenegraph/xml_ns.c:1041,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 51
    argCount: 5
    argNames:
    - inScene
    - orig
    - cloned_parent
    - inst_id
    - deep
    argTypes:
    - GF_SceneGraph*
    - GF_Node*
    - GF_Node*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1046
      start: 985
    functionDepth: 5
    functionLinenumber: 985
    functionLinenumberEnd: 1046
    functionName: gf_sg_xml_node_clone
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 0
    functionsReached:
    - gf_node_init
    - gf_node_clone
    - gf_strdup
    - gf_node_get_attribute_by_tag
    - gf_svg_attributes_copy
    - gf_node_new
    - gf_node_register
    - gf_node_get_attribute_by_name
    - gf_node_get_parent
    - gf_node_list_add_child
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *gf_sg_xml_node_clone(GF_SceneGraph *inScene, GF_Node *orig,
      GF_Node *cloned_parent, char *inst_id, Bool deep)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/gpac/src/scenegraph/xml_ns.c:1059,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/xml_ns.c:1061,1
    - Dst: gf_fopen
      Src: /src/gpac/src/scenegraph/xml_ns.c:1064,1
    - Dst: gf_fsize
      Src: /src/gpac/src/scenegraph/xml_ns.c:1067,1
    - Dst: gf_fread
      Src: /src/gpac/src/scenegraph/xml_ns.c:1073,1
    - Dst: memcmp
      Src: /src/gpac/src/scenegraph/xml_ns.c:1076,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scenegraph/xml_ns.c:1079,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scenegraph/xml_ns.c:1085,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 5
    argNames:
    - base_file
    - ext
    - data
    - data_size
    - idx
    argTypes:
    - char*
    - char*
    - char*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1087
      start: 1052
    functionDepth: 1
    functionLinenumber: 1052
    functionLinenumberEnd: 1087
    functionName: check_existing_file
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - memcmp
    - snprintf
    - GF_LOG
    - gf_fread
    - gf_fopen
    - gf_fsize
    linkageType: ''
    returnType: u32
    signature: u32 check_existing_file(char *base_file, char *ext, char *data, u32
      data_size, u32 idx)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/scenegraph/xml_ns.c:1098,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/xml_ns.c:1100,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/xml_ns.c:1103,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/xml_ns.c:1104,1
    - Dst: strrchr
      Src: /src/gpac/src/scenegraph/xml_ns.c:1110,1
    - Dst: strrchr
      Src: /src/gpac/src/scenegraph/xml_ns.c:1112,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/xml_ns.c:1116,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/scenegraph/xml_ns.c:1118,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/xml_ns.c:1120,1
    - Dst: strncmp
      Src: /src/gpac/src/scenegraph/xml_ns.c:1124,1
    - Dst: strncmp
      Src: /src/gpac/src/scenegraph/xml_ns.c:1124,1
    - Dst: strncmp
      Src: /src/gpac/src/scenegraph/xml_ns.c:1125,1
    - Dst: strncmp
      Src: /src/gpac/src/scenegraph/xml_ns.c:1126,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/xml_ns.c:1131,1
    - Dst: strncmp
      Src: /src/gpac/src/scenegraph/xml_ns.c:1132,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/xml_ns.c:1134,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/xml_ns.c:1135,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/scenegraph/xml_ns.c:1137,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/xml_ns.c:1137,1
    - Dst: strncmp
      Src: /src/gpac/src/scenegraph/xml_ns.c:1139,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/xml_ns.c:1140,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/xml_ns.c:1141,1
    - Dst: gf_base16_decode
      Src: /src/gpac/src/scenegraph/xml_ns.c:1144,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/xml_ns.c:1144,1
    - Dst: check_existing_file
      Src: /src/gpac/src/scenegraph/xml_ns.c:1153,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/xml_ns.c:1161,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/xml_ns.c:1162,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/xml_ns.c:1163,1
    - Dst: gf_fopen
      Src: /src/gpac/src/scenegraph/xml_ns.c:1167,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/xml_ns.c:1169,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/xml_ns.c:1170,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/scenegraph/xml_ns.c:1174,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scenegraph/xml_ns.c:1175,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/xml_ns.c:1177,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/xml_ns.c:1178,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/xml_ns.c:1179,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 84
    argCount: 3
    argNames:
    - iri
    - cache_dir
    - base_filename
    argTypes:
    - XMLRI*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1183
      start: 1090
    functionDepth: 2
    functionLinenumber: 1090
    functionLinenumberEnd: 1183
    functionName: gf_node_store_embedded_data
    functionSourceFile: /src/gpac/src/scenegraph/xml_ns.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_malloc
    - gf_free
    - gf_fclose
    - gf_strdup
    - strrchr
    - strcpy
    - gf_base64_decode
    - check_existing_file
    - sprintf
    - strstr
    - gf_base16_decode
    - gf_fwrite
    - strncmp
    - strcmp
    - gf_file_ext_start
    - gf_fopen
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_store_embedded_data(XMLRI *iri, const char *cache_dir,
      const char *base_filename)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 41
    functionName: gf_svg_is_animation_tag
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_svg_is_animation_tag(u32 tag)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_is_animation_tag
      Src: /src/gpac/src/scenegraph/svg_types.c:45,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 4
    argCount: 1
    argNames:
    - tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 51
    functionName: gf_svg_is_timing_tag
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_svg_is_animation_tag
    linkageType: ''
    returnType: Bool
    signature: Bool gf_svg_is_timing_tag(u32 tag)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_is_timing_tag
      Src: /src/gpac/src/scenegraph/svg_types.c:56,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_types.c:58,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_types.c:62,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_types.c:65,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/svg_types.c:68,1
    - Dst: gf_sg_parent_setup
      Src: /src/gpac/src/scenegraph/svg_types.c:69,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - ElementTag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 53
    functionDepth: 2
    functionLinenumber: 53
    functionLinenumberEnd: 71
    functionName: gf_svg_create_node
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_sg_parent_setup
    - gf_node_setup
    - gf_svg_is_timing_tag
    - GF_SAFEALLOC
    linkageType: ''
    returnType: SVG_Element
    signature: SVG_Element *gf_svg_create_node(u32 ElementTag)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_smil_anim_delete_animations
      Src: /src/gpac/src/scenegraph/svg_types.c:78,1
    - Dst: gf_dom_event_remove_listener_from_parent
      Src: /src/gpac/src/scenegraph/svg_types.c:82,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/svg_types.c:90,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/svg_types.c:93,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/svg_types.c:97,1
    - Dst: gf_dom_listener_count
      Src: /src/gpac/src/scenegraph/svg_types.c:104,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:106,1
    - Dst: gf_svg_is_timing_tag
      Src: /src/gpac/src/scenegraph/svg_types.c:111,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:114,1
    - Dst: gf_smil_anim_remove_from_target
      Src: /src/gpac/src/scenegraph/svg_types.c:115,1
    - Dst: gf_smil_timing_delete_runtime_info
      Src: /src/gpac/src/scenegraph/svg_types.c:118,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:119,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:121,1
    - Dst: gf_node_delete_attributes
      Src: /src/gpac/src/scenegraph/svg_types.c:124,1
    - Dst: gf_sg_parent_reset
      Src: /src/gpac/src/scenegraph/svg_types.c:125,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/svg_types.c:126,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 39
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 73
    functionDepth: 5
    functionLinenumber: 73
    functionLinenumberEnd: 127
    functionName: gf_svg_node_del
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_smil_anim_remove_from_target
    - gf_assert
    - gf_smil_anim_delete_animations
    - gf_list_get
    - gf_smil_timing_delete_runtime_info
    - gf_node_get_attribute_by_tag
    - gf_dom_listener_count
    - gf_dom_event_remove_listener_from_parent
    - gf_node_free
    - gf_sg_parent_reset
    - gf_svg_is_timing_tag
    - gf_node_unregister
    - gf_node_delete_attributes
    linkageType: ''
    returnType: void
    signature: void gf_svg_node_del(GF_Node *node)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: GF_Node*::sgprivate::scenegraph::script_load
      Src: /src/gpac/src/scenegraph/svg_types.c:134,1
    - Dst: GF_Node*::sgprivate::scenegraph::script_load
      Src: /src/gpac/src/scenegraph/svg_types.c:139,1
    - Dst: gf_smil_timing_init_runtime_info
      Src: /src/gpac/src/scenegraph/svg_types.c:144,1
    - Dst: gf_smil_setup_events
      Src: /src/gpac/src/scenegraph/svg_types.c:145,1
    - Dst: gf_smil_anim_init_node
      Src: /src/gpac/src/scenegraph/svg_types.c:152,1
    - Dst: gf_smil_setup_events
      Src: /src/gpac/src/scenegraph/svg_types.c:153,1
    - Dst: gf_smil_timing_init_runtime_info
      Src: /src/gpac/src/scenegraph/svg_types.c:159,1
    - Dst: gf_smil_setup_events
      Src: /src/gpac/src/scenegraph/svg_types.c:160,1
    - Dst: gf_smil_timing_init_runtime_info
      Src: /src/gpac/src/scenegraph/svg_types.c:164,1
    - Dst: gf_smil_setup_events
      Src: /src/gpac/src/scenegraph/svg_types.c:165,1
    - Dst: gf_smil_anim_init_discard
      Src: /src/gpac/src/scenegraph/svg_types.c:169,1
    - Dst: gf_smil_setup_events
      Src: /src/gpac/src/scenegraph/svg_types.c:170,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 42
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 129
    functionDepth: 7
    functionLinenumber: 129
    functionLinenumberEnd: 176
    functionName: gf_svg_node_init
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_smil_timing_init_runtime_info
    - gf_smil_anim_init_discard
    - GF_Node*::sgprivate::scenegraph::script_load
    - gf_smil_anim_init_node
    - gf_smil_setup_events
    linkageType: ''
    returnType: Bool
    signature: Bool gf_svg_node_init(GF_Node *node)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_smil_timing_modified
      Src: /src/gpac/src/scenegraph/svg_types.c:188,1
    - Dst: gf_smil_timing_modified
      Src: /src/gpac/src/scenegraph/svg_types.c:194,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 199
    functionName: gf_svg_node_changed
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_smil_timing_modified
    linkageType: ''
    returnType: Bool
    signature: Bool gf_svg_node_changed(GF_Node *node, GF_FieldInfo *field)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_reset
      Src: /src/gpac/src/scenegraph/svg_types.c:206,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_types.c:209,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:211,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:212,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_types.c:214,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_types.c:215,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:217,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:218,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_types.c:220,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - d
    argTypes:
    - SVG_PathData
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 203
    functionDepth: 1
    functionLinenumber: 203
    functionLinenumberEnd: 222
    functionName: gf_svg_reset_path
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_path_reset
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_svg_reset_path(SVG_PathData d)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_types.c:232,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:236,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:239,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/scenegraph/svg_types.c:241,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:250,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/scenegraph/svg_types.c:253,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:260,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:262,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:264,1
    - Dst: gf_path_add_cubic_to
      Src: /src/gpac/src/scenegraph/svg_types.c:266,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:274,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:276,1
    - Dst: gf_path_add_cubic_to
      Src: /src/gpac/src/scenegraph/svg_types.c:278,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:284,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:286,1
    - Dst: gf_path_add_quadratic_to
      Src: /src/gpac/src/scenegraph/svg_types.c:288,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:295,1
    - Dst: gf_path_add_quadratic_to
      Src: /src/gpac/src/scenegraph/svg_types.c:297,1
    - Dst: gf_path_close
      Src: /src/gpac/src/scenegraph/svg_types.c:302,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 67
    argCount: 3
    argNames:
    - path
    - commands
    - points
    argTypes:
    - GF_Path*
    - GF_List*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 228
    functionDepth: 1
    functionLinenumber: 228
    functionLinenumberEnd: 306
    functionName: gf_svg_path_build
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_path_add_quadratic_to
    - gf_path_add_move_to
    - gf_list_count
    - gf_path_add_cubic_to
    - gf_path_add_line_to
    - gf_path_close
    linkageType: ''
    returnType: void
    signature: void gf_svg_path_build(GF_Path *path, GF_List *commands, GF_List *points)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_types.c:313,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:315,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:316,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:317,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_types.c:319,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - list
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 310
    functionDepth: 1
    functionLinenumber: 310
    functionLinenumberEnd: 320
    functionName: gf_smil_delete_times
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_smil_delete_times(GF_List *list)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_types.c:325,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:327,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:328,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_types.c:330,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - list
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 323
    functionDepth: 1
    functionLinenumber: 323
    functionLinenumberEnd: 331
    functionName: gf_svg_delete_points
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_svg_delete_points(GF_List *list)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_types.c:335,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:337,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:338,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_types.c:340,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - list
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 333
    functionDepth: 1
    functionLinenumber: 333
    functionLinenumberEnd: 341
    functionName: gf_svg_delete_coordinates
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_svg_delete_coordinates(GF_List *list)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:347,1
    - Dst: gf_node_unregister_iri
      Src: /src/gpac/src/scenegraph/svg_types.c:348,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - sg
    - iri
    argTypes:
    - GF_SceneGraph*
    - XMLRI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 344
    functionDepth: 2
    functionLinenumber: 344
    functionLinenumberEnd: 349
    functionName: gf_svg_reset_iri
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_unregister_iri
    linkageType: ''
    returnType: void
    signature: void gf_svg_reset_iri(GF_SceneGraph *sg, XMLRI *iri)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_reset_iri
      Src: /src/gpac/src/scenegraph/svg_types.c:355,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:356,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - sg
    - paint
    argTypes:
    - GF_SceneGraph*
    - SVG_Paint*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 351
    functionDepth: 3
    functionLinenumber: 351
    functionLinenumberEnd: 357
    functionName: gf_svg_delete_paint
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_svg_reset_iri
    linkageType: ''
    returnType: void
    signature: void gf_svg_delete_paint(GF_SceneGraph *sg, SVG_Paint *paint)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_delete_attribute_value
      Src: /src/gpac/src/scenegraph/svg_types.c:363,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - anim_datatype
    - anim_value
    - sg
    argTypes:
    - u8
    - void*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 364
    functionName: svg_delete_one_anim_value
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_svg_delete_attribute_value
    linkageType: ''
    returnType: void
    signature: void svg_delete_one_anim_value(u8 anim_datatype, void *anim_value,
      GF_SceneGraph *sg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_types.c:372,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:374,1
    - Dst: svg_delete_one_anim_value
      Src: /src/gpac/src/scenegraph/svg_types.c:375,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_types.c:377,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - anim_values
    - sg
    argTypes:
    - SMIL_AnimateValues
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 366
    functionDepth: 2
    functionLinenumber: 366
    functionLinenumberEnd: 379
    functionName: gf_svg_reset_animate_values
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - svg_delete_one_anim_value
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_svg_reset_animate_values(SMIL_AnimateValues anim_values, GF_SceneGraph
      *sg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: svg_delete_one_anim_value
      Src: /src/gpac/src/scenegraph/svg_types.c:384,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - anim_value
    - sg
    argTypes:
    - SMIL_AnimateValue
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 382
    functionDepth: 2
    functionLinenumber: 382
    functionLinenumberEnd: 386
    functionName: gf_svg_reset_animate_value
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - svg_delete_one_anim_value
    linkageType: ''
    returnType: void
    signature: void gf_svg_reset_animate_value(SMIL_AnimateValue anim_value, GF_SceneGraph
      *sg)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_delete_paint
      Src: /src/gpac/src/scenegraph/svg_types.c:394,1
    - Dst: gf_svg_reset_iri
      Src: /src/gpac/src/scenegraph/svg_types.c:398,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:399,1
    - Dst: gf_svg_reset_iri
      Src: /src/gpac/src/scenegraph/svg_types.c:402,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:403,1
    - Dst: gf_svg_reset_iri
      Src: /src/gpac/src/scenegraph/svg_types.c:406,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:407,1
    - Dst: gf_path_del
      Src: /src/gpac/src/scenegraph/svg_types.c:411,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:413,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:420,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:421,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:424,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:425,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:426,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_types.c:435,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scenegraph/svg_types.c:436,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scenegraph/svg_types.c:437,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:438,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_types.c:440,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:441,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:446,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:447,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:453,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:454,1
    - Dst: gf_smil_delete_times
      Src: /src/gpac/src/scenegraph/svg_types.c:458,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:459,1
    - Dst: svg_delete_one_anim_value
      Src: /src/gpac/src/scenegraph/svg_types.c:462,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:463,1
    - Dst: gf_svg_reset_animate_values
      Src: /src/gpac/src/scenegraph/svg_types.c:466,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:467,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_types.c:471,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scenegraph/svg_types.c:472,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scenegraph/svg_types.c:473,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:474,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_types.c:476,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:477,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_types.c:481,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scenegraph/svg_types.c:482,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scenegraph/svg_types.c:483,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:484,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:485,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_types.c:487,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:488,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:492,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:493,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:504,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 112
    argCount: 3
    argNames:
    - type
    - value
    - sg
    argTypes:
    - u32
    - void*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 389
    functionDepth: 4
    functionLinenumber: 389
    functionLinenumberEnd: 507
    functionName: gf_svg_delete_attribute_value
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 5
    functionsReached:
    - gf_free
    - svg_delete_one_anim_value
    - gf_path_del
    - gf_list_count
    - gf_svg_reset_animate_values
    - gf_smil_delete_times
    - gf_svg_delete_paint
    - gf_svg_reset_iri
    - gf_list_last
    - gf_list_rem_last
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_svg_delete_attribute_value(u32 type, void *value, GF_SceneGraph
      *sg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_types.c:512,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:513,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/svg_types.c:514,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:515,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_types.c:517,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - l
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 510
    functionDepth: 1
    functionLinenumber: 510
    functionLinenumberEnd: 518
    functionName: gf_smil_delete_key_types
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_smil_delete_key_types(GF_List *l)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 70
    functionName: JSVAL_CHECK_STRING
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSVAL_CHECK_STRING(_v)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 207
    functionName: gf_html_media_object
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_MediaObject
    signature: GF_MediaObject *gf_html_media_object(GF_Node *n)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/html5_media_js.c:215,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/html5_media_js.c:219,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/html5_media_js.c:223,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_media_js.c:233,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 3
    argNames:
    - track
    - c
    - tracklist
    argTypes:
    - GF_HTML_Track*
    - JSContext*
    - GF_HTML_TrackList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 234
    functionName: gf_html_track_init_js
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_PRIVATE
    - JS_NewObject
    linkageType: ''
    returnType: void
    signature: void gf_html_track_init_js(GF_HTML_Track *track, JSContext *c, GF_HTML_TrackList
      *tracklist)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/html5_media_js.c:257,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_media_js.c:258,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/html5_media_js.c:261,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_media_js.c:262,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/html5_media_js.c:265,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_media_js.c:266,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/html5_media_js.c:269,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_media_js.c:270,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/html5_media_js.c:273,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_media_js.c:274,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/html5_media_js.c:277,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_media_js.c:278,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/html5_media_js.c:281,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_media_js.c:282,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/html5_media_js.c:285,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_media_js.c:286,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 25
    argCount: 3
    argNames:
    - me
    - c
    - node_obj
    argTypes:
    - GF_HTML_MediaElement*
    - JSContext*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 254
    functionDepth: 1
    functionLinenumber: 254
    functionLinenumberEnd: 287
    functionName: gf_html_media_element_init_js
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_PRIVATE
    - JS_NewObject
    linkageType: ''
    returnType: void
    signature: void gf_html_media_element_init_js(GF_HTML_MediaElement *me, JSContext
      *c, JSObject *node_obj)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_html_media_object
      Src: /src/gpac/src/scenegraph/html5_media_js.c:305,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/html5_media_js.c:312,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/html5_media_js.c:316,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:320,1
    - Dst: html_media_tracklist_has_track
      Src: /src/gpac/src/scenegraph/html5_media_js.c:326,1
    - Dst: html_media_add_new_track_to_list
      Src: /src/gpac/src/scenegraph/html5_media_js.c:327,1
    - Dst: gf_html_track_init_js
      Src: /src/gpac/src/scenegraph/html5_media_js.c:329,1
    - Dst: html_media_tracklist_has_track
      Src: /src/gpac/src/scenegraph/html5_media_js.c:333,1
    - Dst: html_media_add_new_track_to_list
      Src: /src/gpac/src/scenegraph/html5_media_js.c:334,1
    - Dst: gf_html_track_init_js
      Src: /src/gpac/src/scenegraph/html5_media_js.c:336,1
    - Dst: html_media_tracklist_has_track
      Src: /src/gpac/src/scenegraph/html5_media_js.c:340,1
    - Dst: html_media_add_new_track_to_list
      Src: /src/gpac/src/scenegraph/html5_media_js.c:341,1
    - Dst: gf_html_track_init_js
      Src: /src/gpac/src/scenegraph/html5_media_js.c:343,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 38
    argCount: 2
    argNames:
    - c
    - me
    argTypes:
    - JSContext*
    - GF_HTML_MediaElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 294
    functionDepth: 2
    functionLinenumber: 294
    functionLinenumberEnd: 348
    functionName: html_media_element_populate_tracks
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - html_media_add_new_track_to_list
    - gf_list_get
    - gf_html_media_object
    - html_media_tracklist_has_track
    - sprintf
    - gf_list_count
    - gf_html_track_init_js
    linkageType: ''
    returnType: void
    signature: void html_media_element_populate_tracks(JSContext *c, GF_HTML_MediaElement
      *me)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetProperty
      Src: /src/gpac/src/scenegraph/html5_media_js.c:370,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/src/scenegraph/html5_media_js.c:371,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_media_js.c:372,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - c
    - n
    argTypes:
    - JSContext*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 360
    functionDepth: 1
    functionLinenumber: 360
    functionLinenumberEnd: 376
    functionName: html_media_element_get_from_node
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - SMJS_GET_PRIVATE
    - JSVAL_TO_OBJECT
    - JS_GetProperty
    linkageType: ''
    returnType: GF_HTML_MediaElement
    signature: GF_HTML_MediaElement *html_media_element_get_from_node(JSContext *c,
      GF_Node *n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:381,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:382,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:383,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_media_js.c:386,1
    - Dst: html_media_element_get_from_node
      Src: /src/gpac/src/scenegraph/html5_media_js.c:387,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/html5_media_js.c:389,1
    - Dst: gf_mo_register
      Src: /src/gpac/src/scenegraph/html5_media_js.c:392,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/html5_media_js.c:393,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_media_js.c:396,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 378
    functionDepth: 2
    functionLinenumber: 378
    functionLinenumberEnd: 398
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mo_register
    - html_media_element_get_from_node
    - GF_JS_InstanceOf
    - dom_throw_exception
    - SMJS_GET_PRIVATE
    - gf_malloc
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(html_media_load)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:403,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:404,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:405,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_media_js.c:409,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 400
    functionDepth: 0
    functionLinenumber: 400
    functionLinenumberEnd: 411
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_InstanceOf
    - dom_throw_exception
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(html_media_canPlayType)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:416,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:417,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:418,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_media_js.c:422,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 413
    functionDepth: 0
    functionLinenumber: 413
    functionLinenumberEnd: 424
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_InstanceOf
    - dom_throw_exception
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(html_media_fastSeek)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:429,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:430,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:431,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_media_js.c:435,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 426
    functionDepth: 0
    functionLinenumber: 426
    functionLinenumberEnd: 437
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_InstanceOf
    - dom_throw_exception
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(html_media_addTextTrack)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 451
      start: 439
    functionDepth: 0
    functionLinenumber: 439
    functionLinenumberEnd: 451
    functionName: html_get_element_class
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void *html_get_element_class(GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_html_media_element_new
      Src: /src/gpac/src/scenegraph/html5_media_js.c:465,1
    - Dst: gf_html_media_element_init_js
      Src: /src/gpac/src/scenegraph/html5_media_js.c:466,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/scenegraph/html5_media_js.c:468,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/src/scenegraph/html5_media_js.c:468,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - c
    - node_obj
    - n
    argTypes:
    - JSContext*
    - JSObject*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 461
    functionDepth: 2
    functionLinenumber: 461
    functionLinenumberEnd: 470
    functionName: html_media_element_js_init
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - gf_html_media_element_init_js
    - gf_html_media_element_new
    - OBJECT_TO_JSVAL
    - JS_DefineProperty
    linkageType: ''
    returnType: void
    signature: void html_media_element_js_init(JSContext *c, JSObject *node_obj, GF_Node
      *n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: html_media_element_get_from_node
      Src: /src/gpac/src/scenegraph/html5_media_js.c:479,1
    - Dst: gf_html_media_element_del
      Src: /src/gpac/src/scenegraph/html5_media_js.c:481,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - c
    - n
    argTypes:
    - JSContext*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 477
    functionDepth: 2
    functionLinenumber: 477
    functionLinenumberEnd: 482
    functionName: html_media_element_js_finalize
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - html_media_element_get_from_node
    - gf_html_media_element_del
    linkageType: ''
    returnType: void
    signature: void html_media_element_js_finalize(JSContext *c, GF_Node *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:493,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:494,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_media_js.c:495,1
    - Dst: gf_dom_event_get_target_from_node
      Src: /src/gpac/src/scenegraph/html5_media_js.c:496,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 4
    argNames:
    - c
    - obj
    - target
    - sg
    argTypes:
    - JSContext*
    - JSObject*
    - GF_DOMEventTarget**
    - GF_SceneGraph**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 491
    functionDepth: 3
    functionLinenumber: 491
    functionLinenumberEnd: 502
    functionName: gf_html_media_get_event_target
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - SMJS_GET_PRIVATE
    - GF_JS_InstanceOf
    - gf_dom_event_get_target_from_node
    linkageType: ''
    returnType: void
    signature: void gf_html_media_get_event_target(JSContext *c, JSObject *obj, GF_DOMEventTarget
      **target, GF_SceneGraph **sg)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/scenegraph/html5_media_js.c:602,1
    - Dst: gf_odm_collect_buffer_info
      Src: /src/gpac/src/scenegraph/html5_media_js.c:604,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 3
    argNames:
    - mo
    - readyState
    - networkState
    argTypes:
    - GF_MediaObject*
    - GF_HTML_MediaReadyState*
    - GF_HTML_NetworkState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 587
    functionDepth: 1
    functionLinenumber: 587
    functionLinenumberEnd: 624
    functionName: html_media_get_states
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_odm_collect_buffer_info
    linkageType: ''
    returnType: void
    signature: void html_media_get_states(GF_MediaObject *mo, GF_HTML_MediaReadyState
      *readyState, GF_HTML_NetworkState *networkState)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SceneGraph*::script_action
      Src: /src/gpac/src/scenegraph/html5_media_js.c:747,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - scene
    - type
    - node
    - param
    argTypes:
    - GF_SceneGraph*
    - u32
    - GF_Node*
    - GF_JSAPIParam*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 743
    functionDepth: 0
    functionLinenumber: 743
    functionLinenumberEnd: 750
    functionName: ScriptAction
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - GF_SceneGraph*::script_action
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE ScriptAction(GF_SceneGraph *scene, u32 type, GF_Node *node,
      GF_JSAPIParam *param)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 988
      start: 976
    functionDepth: 0
    functionLinenumber: 976
    functionLinenumberEnd: 988
    functionName: html_media_get_audio_stack
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SVG_audio_stack
    signature: SVG_audio_stack *html_media_get_audio_stack(GF_Node *n)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1101,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1102,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1104,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1106,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1108,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1109,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1110,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1112,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1114,1
    - Dst: DOUBLE_TO_JSVAL
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1114,1
    - Dst: JS_NewDouble
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1114,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1117,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1120
      start: 1096
    functionDepth: 1
    functionLinenumber: 1096
    functionLinenumberEnd: 1120
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - gf_list_get
    - JS_NewDouble
    - DOUBLE_TO_JSVAL
    - GF_JS_InstanceOf
    - dom_throw_exception
    - JSVAL_IS_INT
    - JSVAL_TO_INT
    - SMJS_GET_PRIVATE
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(html_time_ranges_start)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1127,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1128,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1130,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1132,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1134,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1135,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1136,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1138,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1140,1
    - Dst: DOUBLE_TO_JSVAL
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1140,1
    - Dst: JS_NewDouble
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1140,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1143,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1146
      start: 1122
    functionDepth: 1
    functionLinenumber: 1122
    functionLinenumberEnd: 1146
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - gf_list_get
    - JS_NewDouble
    - DOUBLE_TO_JSVAL
    - GF_JS_InstanceOf
    - dom_throw_exception
    - JSVAL_IS_INT
    - JSVAL_TO_INT
    - SMJS_GET_PRIVATE
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(html_time_ranges_end)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1149,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1150,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1151,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - c
    - obj
    argTypes:
    - JSContext*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1153
      start: 1148
    functionDepth: 0
    functionLinenumber: 1148
    functionLinenumberEnd: 1153
    functionName: html_is_track_list
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_InstanceOf
    linkageType: ''
    returnType: Bool
    signature: Bool html_is_track_list(JSContext *c, JSObject *obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1178,1
    - Dst: SMJS_CHARS_FROM_STRING
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1179,1
    - Dst: JS_ValueToString
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1179,1
    - Dst: html_media_tracklist_get_track
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1180,1
    - Dst: SMJS_FREE
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1181,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1183,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1183,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1186,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1189,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1191
      start: 1170
    functionDepth: 1
    functionLinenumber: 1170
    functionLinenumberEnd: 1191
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - JS_ValueToString
    - SMJS_FREE
    - html_media_tracklist_get_track
    - dom_throw_exception
    - SMJS_CHARS_FROM_STRING
    - OBJECT_TO_JSVAL
    - SMJS_GET_PRIVATE
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(html_track_list_get_track_by_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1178,1
    - Dst: SMJS_CHARS_FROM_STRING
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1179,1
    - Dst: JS_ValueToString
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1179,1
    - Dst: html_media_tracklist_get_track
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1180,1
    - Dst: SMJS_FREE
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1181,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1183,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1183,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1186,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1188
      start: 1172
    functionDepth: 1
    functionLinenumber: 1172
    functionLinenumberEnd: 1188
    functionName: SMJS_ARGS
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - JS_ValueToString
    - SMJS_FREE
    - html_media_tracklist_get_track
    - dom_throw_exception
    - SMJS_CHARS_FROM_STRING
    - OBJECT_TO_JSVAL
    - SMJS_GET_PRIVATE
    linkageType: ''
    returnType: SMJS_OBJ
    signature: "SMJS_OBJ SMJS_ARGS\n\tif (html_is_track_list(c, obj))"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1296,1
    - Dst: SMJS_ID_IS_INT
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1297,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1298,1
    - Dst: SMJS_ID_TO_INT
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1300,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1302,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1302,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1305,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1305,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1308,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1308,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1311,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1311,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1314,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1315,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1315,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1319,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1320,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1324,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1325,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1330
      start: 1294
    functionDepth: 0
    functionLinenumber: 1294
    functionLinenumberEnd: 1330
    functionName: '(html_track_get_property)

      if (html_is_track_list(c, obj))'
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - SMJS_ID_TO_INT
    - STRING_TO_JSVAL
    - SMJS_ID_IS_INT
    - dom_throw_exception
    - GF_JS_InstanceOf
    - BOOLEAN_TO_JSVAL
    - SMJS_GET_PRIVATE
    - JS_NewStringCopyZ
    linkageType: ''
    returnType: SMJS_FUNC_PROP_GET
    signature: 'SMJS_FUNC_PROP_GET (html_track_get_property)

      if (html_is_track_list(c, obj))'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1337,1
    - Dst: SMJS_ID_IS_INT
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1338,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1339,1
    - Dst: SMJS_ID_TO_INT
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1341,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1343,1
    - Dst: JSVAL_TO_BOOLEAN
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1345,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1349,1
    - Dst: JSVAL_TO_BOOLEAN
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1351,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1356
      start: 1335
    functionDepth: 0
    functionLinenumber: 1335
    functionLinenumberEnd: 1356
    functionName: '(html_track_set_property)

      if (html_is_track_list(c, obj))'
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - SMJS_ID_TO_INT
    - SMJS_ID_IS_INT
    - dom_throw_exception
    - GF_JS_InstanceOf
    - SMJS_GET_PRIVATE
    - JSVAL_TO_BOOLEAN
    linkageType: ''
    returnType: SMJS_FUNC_PROP_SET
    signature: 'SMJS_FUNC_PROP_SET (html_track_set_property)

      if (html_is_track_list(c, obj))'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_js_event_add_listener
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1439,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1440
      start: 1436
    functionDepth: 1
    functionLinenumber: 1436
    functionLinenumberEnd: 1440
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - gf_sg_js_event_add_listener
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(html_media_event_add_listener)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_js_event_remove_listener
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1446
      start: 1442
    functionDepth: 1
    functionLinenumber: 1442
    functionLinenumberEnd: 1446
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - gf_sg_js_event_remove_listener
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(html_media_event_remove_listener)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1451
      start: 1448
    functionDepth: 0
    functionLinenumber: 1448
    functionLinenumberEnd: 1451
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(html_media_event_dispatch)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1457,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1460
      start: 1455
    functionDepth: 0
    functionLinenumber: 1455
    functionLinenumberEnd: 1460
    functionName: html_media_js_api_del
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void html_media_js_api_del()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1465,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1468,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1479,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1481,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1482,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1486,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1493,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1494,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1495,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1497,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1498,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1501,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1512,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1514,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1515,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1518,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1529,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1531,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1532,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1535,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1546,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1548,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1549,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1552,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1562,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1563,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1565,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1566,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1569,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1580,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1581,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1583,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1584,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1587,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1596,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1597,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1599,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1600,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1603,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1609,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1611,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1612,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1615,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1662,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1663,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1664,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1665,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1666,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1667,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1668,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1669,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1670,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1671,1
    - Dst: dom_js_get_element_proto
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1673,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1674,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1675,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1678,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1689,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1691,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1692,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1695,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1701,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1703,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1704,1
    - Dst: html_media_source_init_js_api
      Src: /src/gpac/src/scenegraph/html5_media_js.c:1706,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 53
    argCount: 1
    argNames:
    - scene
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1708
      start: 1462
    functionDepth: 1
    functionLinenumber: 1462
    functionLinenumberEnd: 1708
    functionName: html_media_init_js_api
    functionSourceFile: /src/gpac/src/scenegraph/html5_media_js.c
    functionUses: 0
    functionsReached:
    - dom_js_get_element_proto
    - GF_SAFEALLOC
    - GF_LOG
    - GF_JS_InitClass
    - JS_SETUP_CLASS
    - html_media_source_init_js_api
    - SMJS_FUNCTION_SPEC
    linkageType: ''
    returnType: void
    signature: void html_media_init_js_api(GF_SceneGraph *scene)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - sg
    - node
    - info
    - script
    argTypes:
    - GF_SceneGraph*
    - GF_Node*
    - GF_FieldInfo*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: node_modif_stub
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void node_modif_stub(GF_SceneGraph *sg, GF_Node *node, GF_FieldInfo
      *info, GF_Node *script)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:53,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:56,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:59,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:60,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:61,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:62,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:63,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:67,1
    - Dst: gf_dom_event_target_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:68,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:69,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:70,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:71,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:72,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:76,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:77,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:83,1
    - Dst: node_modif_stub
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:84,1
    - Dst: gf_node_remove_id
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:85,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:86,1
    - Dst: gf_node_get_parent_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:87,1
    - Dst: gf_node_get_num_instances
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:88,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:89,1
    - Dst: gf_sg_get_namespace
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:90,1
    - Dst: gf_node_parent_of
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:91,1
    - Dst: gf_sg_get_parent
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:92,1
    - Dst: gf_node_get_attribute_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:93,1
    - Dst: gf_sg_xml_node_clone
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:94,1
    - Dst: gf_dom_flatten_textContent
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:95,1
    - Dst: gf_smil_timing_pause
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:96,1
    - Dst: gf_smil_timing_resume
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:97,1
    - Dst: gf_smil_get_media_duration
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:98,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 37
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 49
    functionDepth: 6
    functionLinenumber: 49
    functionLinenumberEnd: 102
    functionName: GF_SceneGraph *gf_sg_new()
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_get_log_name
    - gf_mx_new
    - gf_sys_is_cov_mode
    - gf_list_new
    - gf_dom_event_target_new
    - gf_node_parent_of
    - node_modif_stub
    - gf_smil_timing_resume
    - gf_node_list_get_child
    - gf_smil_get_media_duration
    - gf_sg_get_parent
    - gf_dom_flatten_textContent
    - gf_sg_xml_node_clone
    - gf_smil_timing_pause
    - gf_node_get_attribute_count
    - gf_node_get_num_instances
    - gf_sg_get_namespace
    - gf_node_get_parent_count
    - gf_node_remove_id
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_SceneGraph *gf_sg_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:109,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 126
    functionName: GF_SceneGraph *gf_sg_new_subscene(GF_SceneGraph *scene)
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_sg_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_SceneGraph *gf_sg_new_subscene(GF_SceneGraph *scene)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sg
    - NodeCallback
    argTypes:
    - GF_SceneGraph*
    - gf_sg_node_init_callback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 133
    functionName: gf_sg_set_node_callback
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_set_node_callback(GF_SceneGraph *sg, gf_sg_node_init_callback
      NodeCallback)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 139
    functionName: gf_sg_set_scene_time_callback
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_set_scene_time_callback(GF_SceneGraph *sg, Double (*GetSceneTime)(void
      *user_priv))
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_Node*::sgprivate::scenegraph::GetSceneTime
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 147
    functionName: gf_node_get_scene_time
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 16
    functionsReached:
    - GF_Node*::sgprivate::scenegraph::GetSceneTime
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_get_scene_time(GF_Node *node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:159,1
    - Dst: gf_sg_reset
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:164,1
    - Dst: gf_dom_event_target_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:168,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:169,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:170,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:171,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:172,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:173,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:177,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:179,1
    - Dst: gf_svg_script_context_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:184,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:191,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:192,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:193,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:194,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:195,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:197,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:198,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 30
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 150
    functionDepth: 2
    functionLinenumber: 150
    functionLinenumberEnd: 199
    functionName: gf_sg_del
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 14
    functionsReached:
    - gf_svg_script_context_del
    - gf_free
    - gf_sg_reset
    - gf_dom_event_target_del
    - gf_node_unregister
    - gf_list_del
    - gf_mx_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_del(GF_SceneGraph *sg)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_field_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:219,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:221,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:228,1
    - Dst: SG_GraphRemoved
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:233,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:242,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:247,1
    - Dst: SG_GraphRemoved
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:249,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:258,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:262,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:263,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:270,1
    - Dst: SG_GraphRemoved
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:275,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:285,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:290,1
    - Dst: SG_GraphRemoved
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:292,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 77
    argCount: 2
    argNames:
    - node
    - sg
    argTypes:
    - GF_Node*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 206
    functionDepth: 1
    functionLinenumber: 206
    functionLinenumberEnd: 303
    functionName: SG_GraphRemoved
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_free
    - SG_GraphRemoved
    - gf_list_get
    - gf_node_get_field_count
    - gf_list_count
    - gf_node_get_field
    - gf_node_unregister
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void SG_GraphRemoved(GF_Node *node, GF_SceneGraph *sg)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - sg
    - node
    argTypes:
    - GF_SceneGraph*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 306
    functionDepth: 0
    functionLinenumber: 306
    functionLinenumberEnd: 314
    functionName: SG_SearchForNode
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE *SG_SearchForNode(GF_SceneGraph *sg, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 325
    functionName: get_num_id_nodes
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE get_num_id_nodes(GF_SceneGraph *sg)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:339,1
    - Dst: SG_GraphRemoved
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:345,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:349,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:353,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:354,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:355,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:357,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:359,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:362,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:364,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:370,1
    - Dst: gf_dom_event_remove_all_listeners
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:372,1
    - Dst: gf_dom_listener_reset_deferred
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:374,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:375,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:379,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:380,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:384,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:385,1
    - Dst: gf_sg_route_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:387,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:394,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:395,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:396,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:397,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:400,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:404,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:408,1
    - Dst: GF_SceneGraph*::GetExternProtoLib
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:409,1
    - Dst: SG_SearchForNode
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:445,1
    - Dst: ReplaceIRINode
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:453,1
    - Dst: ReplaceDEFNode
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:456,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:464,1
    - Dst: get_num_id_nodes
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:477,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:480,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:481,1
    - Dst: get_num_id_nodes
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:482,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:487,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:491,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:492,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:494,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:497,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:498,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:500,1
    - Dst: gf_sg_destroy_routes
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:504,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:509,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:510,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:511,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:512,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:513,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:514,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:516,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:525,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:527,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:529,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:540,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 113
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 327
    functionDepth: 4
    functionLinenumber: 327
    functionLinenumberEnd: 541
    functionName: gf_sg_reset
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 4
    functionsReached:
    - gf_free
    - ReplaceDEFNode
    - gf_dom_event_remove_all_listeners
    - get_num_id_nodes
    - gf_list_count
    - gf_sg_proto_del
    - gf_node_unregister
    - gf_list_new
    - gf_list_get
    - SG_SearchForNode
    - gf_sg_destroy_routes
    - gf_list_add
    - gf_node_register
    - gf_mx_p
    - gf_node_replace
    - gf_list_reset
    - GF_LOG
    - gf_sg_route_del
    - gf_mx_v
    - GF_SceneGraph*::GetExternProtoLib
    - gf_list_del
    - SG_GraphRemoved
    - ReplaceIRINode
    - gf_dom_listener_reset_deferred
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_reset(GF_SceneGraph *sg)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - sg
    - nodeID
    - toExclude
    argTypes:
    - GF_SceneGraph*
    - u32
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 544
    functionDepth: 0
    functionLinenumber: 544
    functionLinenumberEnd: 552
    functionName: SG_SearchForDuplicateNodeID
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE *SG_SearchForDuplicateNodeID(GF_SceneGraph *sg, u32 nodeID,
      GF_Node *toExclude)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 555
    functionDepth: 0
    functionLinenumber: 555
    functionLinenumberEnd: 565
    functionName: gf_node_get_name_address
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void *gf_node_get_name_address(GF_Node*node)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - sg
    - ptr
    argTypes:
    - GF_SceneGraph*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 568
    functionDepth: 0
    functionLinenumber: 568
    functionLinenumberEnd: 572
    functionName: gf_sg_set_private
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_set_private(GF_SceneGraph *sg, void *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 578
      start: 574
    functionDepth: 0
    functionLinenumber: 574
    functionLinenumberEnd: 578
    functionName: gf_sg_get_private
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sg_get_private(GF_SceneGraph *sg)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - sg
    - width
    - height
    - usePixelMetrics
    argTypes:
    - GF_SceneGraph*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 581
    functionDepth: 0
    functionLinenumber: 581
    functionLinenumberEnd: 592
    functionName: gf_sg_set_scene_size_info
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_set_scene_size_info(GF_SceneGraph *sg, u32 width, u32
      height, Bool usePixelMetrics)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 594
    functionDepth: 0
    functionLinenumber: 594
    functionLinenumberEnd: 604
    functionName: gf_sg_use_pixel_metrics
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_use_pixel_metrics(GF_SceneGraph *sg)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - sg
    - width
    - height
    argTypes:
    - GF_SceneGraph*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 613
      start: 606
    functionDepth: 0
    functionLinenumber: 606
    functionLinenumberEnd: 613
    functionName: gf_sg_get_scene_size_info
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_get_scene_size_info(GF_SceneGraph *sg, u32 *width,
      u32 *height)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 620
      start: 616
    functionDepth: 0
    functionLinenumber: 616
    functionLinenumberEnd: 620
    functionName: gf_sg_get_root_node
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sg_get_root_node(GF_SceneGraph *sg)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - sg
    - node
    argTypes:
    - GF_SceneGraph*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 622
    functionDepth: 0
    functionLinenumber: 622
    functionLinenumberEnd: 626
    functionName: gf_sg_set_root_node
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_set_root_node(GF_SceneGraph *sg, GF_Node *node)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:637,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:638,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:651,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:653,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 2
    argNames:
    - sg
    - node
    argTypes:
    - GF_SceneGraph*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 628
    functionDepth: 0
    functionLinenumber: 628
    functionLinenumberEnd: 657
    functionName: remove_node_id
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void remove_node_id(GF_SceneGraph *sg, GF_Node *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:663,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:665,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - sg
    - pNode
    - parentNode
    argTypes:
    - GF_SceneGraph*
    - GF_Node*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 666
      start: 659
    functionDepth: 1
    functionLinenumber: 659
    functionLinenumberEnd: 666
    functionName: gf_node_try_destroy
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_list_find
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_node_try_destroy(GF_SceneGraph *sg, GF_Node *pNode, GF_Node
      *parentNode)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:694,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:702,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:712,1
    - Dst: GF_Node*::sgprivate::scenegraph::on_node_modified
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:720,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:726,1
    - Dst: remove_node_id
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:731,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:738,1
    - Dst: gf_sg_route_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:740,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:747,1
    - Dst: gf_node_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:756,1
    - Dst: gf_node_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:759,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 61
    argCount: 2
    argNames:
    - pNode
    - parentNode
    argTypes:
    - GF_Node*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 762
      start: 668
    functionDepth: 2
    functionLinenumber: 668
    functionLinenumberEnd: 762
    functionName: gf_node_unregister
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 219
    functionsReached:
    - gf_free
    - remove_node_id
    - gf_assert
    - gf_sg_route_del
    - gf_list_del_item
    - gf_list_enum
    - GF_Node*::sgprivate::scenegraph::on_node_modified
    - gf_node_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_unregister(GF_Node *pNode, GF_Node *parentNode)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:773,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:779,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:785,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - node
    - parentNode
    argTypes:
    - GF_Node*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 789
      start: 764
    functionDepth: 1
    functionLinenumber: 764
    functionLinenumberEnd: 789
    functionName: gf_node_register
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 44
    functionsReached:
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_register(GF_Node *node, GF_Node *parentNode)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_field_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:802,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:804,1
    - Dst: gf_node_list_del_child
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:831,1
    - Dst: gf_sg_vrml_mf_remove
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:840,1
    - Dst: gf_node_changed_internal
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:841,1
    - Dst: GF_Node*::sgprivate::scenegraph::on_node_modified
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:865,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:870,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 57
    argCount: 4
    argNames:
    - FromNode
    - node
    - newNode
    - updateOrderedGroup
    argTypes:
    - GF_Node*
    - GF_Node*
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 871
      start: 794
    functionDepth: 1
    functionLinenumber: 794
    functionLinenumberEnd: 871
    functionName: ReplaceDEFNode
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_node_get_field_count
    - gf_node_list_del_child
    - gf_node_changed_internal
    - gf_node_get_field
    - gf_sg_vrml_mf_remove
    - gf_node_changed
    - GF_Node*::sgprivate::scenegraph::on_node_modified
    linkageType: ''
    returnType: void
    signature: void ReplaceDEFNode(GF_Node *FromNode, GF_Node *node, GF_Node *newNode,
      Bool updateOrderedGroup)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:878,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:880,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:884,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - sg
    - old_node
    - newNode
    argTypes:
    - GF_SceneGraph*
    - GF_Node*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 890
      start: 875
    functionDepth: 1
    functionLinenumber: 875
    functionLinenumberEnd: 890
    functionName: Replace_IRI
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void Replace_IRI(GF_SceneGraph *sg, GF_Node *old_node, GF_Node *newNode)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:908,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - FromNode
    - old_node
    - newNode
    argTypes:
    - GF_Node*
    - GF_Node*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 912
      start: 893
    functionDepth: 0
    functionLinenumber: 893
    functionLinenumberEnd: 912
    functionName: ReplaceIRINode
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void ReplaceIRINode(GF_Node *FromNode, GF_Node *old_node, GF_Node *newNode)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: Replace_IRI
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:930,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:941,1
    - Dst: ReplaceIRINode
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:952,1
    - Dst: ReplaceDEFNode
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:955,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:957,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:958,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:959,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:965,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:971,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:973,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 3
    argNames:
    - node
    - new_node
    - updateOrderedGroup
    argTypes:
    - GF_Node*
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 977
      start: 916
    functionDepth: 3
    functionLinenumber: 916
    functionLinenumberEnd: 977
    functionName: gf_node_replace
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 4
    functionsReached:
    - ReplaceDEFNode
    - Replace_IRI
    - gf_list_find
    - ReplaceIRINode
    - gf_list_del_item
    - gf_node_unregister
    - gf_node_register
    - gf_node_changed
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_replace(GF_Node *node, GF_Node *new_node, Bool updateOrderedGroup)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:983,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:986,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 32
    argCount: 4
    argNames:
    - sg
    - def
    - ID
    - name
    argTypes:
    - GF_SceneGraph*
    - GF_Node*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1013
      start: 979
    functionDepth: 0
    functionLinenumber: 979
    functionLinenumberEnd: 1013
    functionName: insert_node_def
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_malloc
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE insert_node_def(GF_SceneGraph *sg, GF_Node *def, u32 ID, const
      char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: insert_node_def
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1032,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1036,1
    - Dst: remove_node_id
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1037,1
    - Dst: insert_node_def
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1038,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1039,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - p
    - ID
    - name
    argTypes:
    - GF_Node*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1042
      start: 1017
    functionDepth: 1
    functionLinenumber: 1017
    functionLinenumberEnd: 1042
    functionName: gf_node_set_id
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 5
    functionsReached:
    - gf_free
    - remove_node_id
    - insert_node_def
    - gf_strdup
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_set_id(GF_Node *p, u32 ID, const char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: remove_node_id
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1058,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1063
      start: 1044
    functionDepth: 1
    functionLinenumber: 1044
    functionLinenumberEnd: 1063
    functionName: gf_node_remove_id
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - remove_node_id
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_remove_id(GF_Node *p)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1077,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1079,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1079,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1079,1
    - Dst: GF_Node*::sgprivate::UserCallback
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1080,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1098,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1105,1
    - Dst: gf_sg_proto_instantiate
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1109,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1114,1
    - Dst: GF_Node*::sgprivate::scenegraph::NodeCallback
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1118,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1128,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1128,1
    - Dst: GF_Node*::sgprivate::UserCallback
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1129,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 46
    argCount: 2
    argNames:
    - node
    - renderStack
    argTypes:
    - GF_Node*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1136
      start: 1066
    functionDepth: 5
    functionLinenumber: 1066
    functionLinenumberEnd: 1136
    functionName: gf_node_traverse
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 2
    functionsReached:
    - gf_assert
    - GF_Node*::sgprivate::UserCallback
    - gf_node_traverse
    - GF_Node*::sgprivate::scenegraph::NodeCallback
    - gf_node_get_class_name
    - gf_node_get_name
    - gf_node_dirty_set
    - GF_LOG
    - gf_node_dirty_clear
    - gf_sg_proto_instantiate
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_traverse(GF_Node *node, void *renderStack)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1144
      start: 1138
    functionDepth: 0
    functionLinenumber: 1138
    functionLinenumberEnd: 1144
    functionName: gf_node_allow_cyclic_traverse
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_allow_cyclic_traverse(GF_Node *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - node
    - 'on'
    argTypes:
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1162
      start: 1147
    functionDepth: 0
    functionLinenumber: 1147
    functionLinenumberEnd: 1162
    functionName: gf_node_set_cyclic_traverse_flag
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_set_cyclic_traverse_flag(GF_Node *node, Bool on)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1170,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1173,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - node
    - renderStack
    argTypes:
    - GF_Node*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1176
      start: 1165
    functionDepth: 6
    functionLinenumber: 1165
    functionLinenumberEnd: 1176
    functionName: gf_node_traverse_children
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_node_traverse
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_traverse_children(GF_Node *node, void *renderStack)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1183
      start: 1179
    functionDepth: 0
    functionLinenumber: 1179
    functionLinenumberEnd: 1183
    functionName: GF_SceneGraph *gf_node_get_graph(GF_Node *node)
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_SceneGraph *gf_node_get_graph(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - sg
    - nodeID
    argTypes:
    - GF_SceneGraph*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1194
      start: 1185
    functionDepth: 0
    functionLinenumber: 1185
    functionLinenumberEnd: 1194
    functionName: gf_sg_find_node
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 34
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sg_find_node(GF_SceneGraph *sg, u32 nodeID)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1202,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - sg
    - name
    argTypes:
    - GF_SceneGraph*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1207
      start: 1196
    functionDepth: 0
    functionLinenumber: 1196
    functionLinenumberEnd: 1207
    functionName: gf_sg_find_node_by_name
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 15
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sg_find_node_by_name(GF_SceneGraph *sg, char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1225
      start: 1210
    functionDepth: 0
    functionLinenumber: 1210
    functionLinenumberEnd: 1225
    functionName: gf_sg_get_next_available_node_id
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_get_next_available_node_id(GF_SceneGraph *sg)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1236
      start: 1227
    functionDepth: 0
    functionLinenumber: 1227
    functionLinenumberEnd: 1236
    functionName: gf_sg_get_max_node_id
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_get_max_node_id(GF_SceneGraph *sg)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1241,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1244,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1246,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - p
    - tag
    argTypes:
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1251
      start: 1238
    functionDepth: 1
    functionLinenumber: 1238
    functionLinenumberEnd: 1251
    functionName: gf_node_setup
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 329
    functionsReached:
    - GF_LOG
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void gf_node_setup(GF_Node *p, u32 tag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1255,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1258
      start: 1253
    functionDepth: 2
    functionLinenumber: 1253
    functionLinenumberEnd: 1258
    functionName: gf_sg_new_base_node
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_node_setup
    - gf_malloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *gf_sg_new_base_node()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1264
      start: 1259
    functionDepth: 1
    functionLinenumber: 1259
    functionLinenumberEnd: 1264
    functionName: gf_node_get_tag
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 22
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_get_tag(GF_Node*p)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1270,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1284
      start: 1265
    functionDepth: 1
    functionLinenumber: 1265
    functionLinenumberEnd: 1284
    functionName: gf_node_get_id
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 26
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_get_id(GF_Node*p)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1305
      start: 1286
    functionDepth: 0
    functionLinenumber: 1286
    functionLinenumberEnd: 1305
    functionName: gf_node_get_name
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_node_get_name(GF_Node*p)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1312,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - p
    - id
    argTypes:
    - GF_Node*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1334
      start: 1307
    functionDepth: 1
    functionLinenumber: 1307
    functionLinenumberEnd: 1334
    functionName: gf_node_get_name_and_id
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 2
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_node_get_name_and_id(GF_Node*p, u32 *id)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1341
      start: 1336
    functionDepth: 1
    functionLinenumber: 1336
    functionLinenumberEnd: 1341
    functionName: gf_node_get_private
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 13
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_node_get_private(GF_Node*p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1345,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - p
    - pr
    argTypes:
    - GF_Node*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1347
      start: 1342
    functionDepth: 1
    functionLinenumber: 1342
    functionLinenumberEnd: 1347
    functionName: gf_node_set_private
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 7
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_set_private(GF_Node*p, void *pr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1351,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1354
      start: 1348
    functionDepth: 1
    functionLinenumber: 1348
    functionLinenumberEnd: 1354
    functionName: gf_node_set_callback_function
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 5
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_set_callback_function(GF_Node *p, void (*TraverseNode)(GF_Node
      *node, void *render_stack, Bool is_destroy) )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1360
      start: 1356
    functionDepth: 0
    functionLinenumber: 1356
    functionLinenumberEnd: 1360
    functionName: gf_sg_parent_setup
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_sg_parent_setup(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1367,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1370,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - container
    - child
    argTypes:
    - GF_Node*
    - GF_ChildNodeItem*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1372
      start: 1362
    functionDepth: 3
    functionLinenumber: 1362
    functionLinenumberEnd: 1372
    functionName: gf_node_unregister_children
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 37
    functionsReached:
    - gf_node_unregister
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_unregister_children(GF_Node *container, GF_ChildNodeItem
      *child)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1380,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1384,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 3
    argNames:
    - list
    - n
    - pos
    argTypes:
    - GF_ChildNodeItem**
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1404
      start: 1374
    functionDepth: 1
    functionLinenumber: 1374
    functionLinenumberEnd: 1404
    functionName: gf_node_list_insert_child
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_assert
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_list_insert_child(GF_ChildNodeItem **list, GF_Node
      *n, u32 pos)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1413,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 3
    argNames:
    - list
    - last_child
    - n
    argTypes:
    - GF_ChildNodeItem**
    - GF_ChildNodeItem**
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1432
      start: 1407
    functionDepth: 0
    functionLinenumber: 1407
    functionLinenumberEnd: 1432
    functionName: gf_node_list_append_child
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_node_list_append_child(GF_ChildNodeItem **list, GF_ChildNodeItem
      **last_child, GF_Node *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - list
    - pos
    argTypes:
    - GF_ChildNodeItem*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1446
      start: 1435
    functionDepth: 0
    functionLinenumber: 1435
    functionLinenumberEnd: 1446
    functionName: gf_node_list_get_child
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_node_list_get_child(GF_ChildNodeItem *list, s32 pos)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - list
    - n
    argTypes:
    - GF_ChildNodeItem*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1458
      start: 1448
    functionDepth: 0
    functionLinenumber: 1448
    functionLinenumberEnd: 1458
    functionName: gf_node_list_find_child
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_list_find_child(GF_ChildNodeItem *list, GF_Node *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1467,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - list
    - n
    argTypes:
    - GF_ChildNodeItem**
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1478
      start: 1460
    functionDepth: 0
    functionLinenumber: 1460
    functionLinenumberEnd: 1478
    functionName: gf_node_list_add_child
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 7
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_list_add_child(GF_ChildNodeItem **list, GF_Node *n)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1488,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 3
    argNames:
    - list
    - n
    - last_child
    argTypes:
    - GF_ChildNodeItem**
    - GF_Node*
    - GF_ChildNodeItem**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1508
      start: 1481
    functionDepth: 0
    functionLinenumber: 1481
    functionLinenumberEnd: 1508
    functionName: gf_node_list_add_child_last
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 9
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_list_add_child_last(GF_ChildNodeItem **list, GF_Node
      *n, GF_ChildNodeItem **last_child)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1519,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1530,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - list
    - n
    argTypes:
    - GF_ChildNodeItem**
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1534
      start: 1510
    functionDepth: 0
    functionLinenumber: 1510
    functionLinenumberEnd: 1534
    functionName: gf_node_list_del_child
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_list_del_child(GF_ChildNodeItem **list, GF_Node *n)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1548,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1561,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - list
    - pos
    argTypes:
    - GF_ChildNodeItem**
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1565
      start: 1536
    functionDepth: 0
    functionLinenumber: 1536
    functionLinenumberEnd: 1565
    functionName: gf_node_list_del_child_idx
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_node_list_del_child_idx(GF_ChildNodeItem **list, u32
      pos)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - list
    argTypes:
    - GF_ChildNodeItem*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1576
      start: 1567
    functionDepth: 0
    functionLinenumber: 1567
    functionLinenumberEnd: 1576
    functionName: gf_node_list_get_count
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_list_get_count(GF_ChildNodeItem *list)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1580,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1582
      start: 1578
    functionDepth: 4
    functionLinenumber: 1578
    functionLinenumberEnd: 1582
    functionName: gf_sg_parent_reset
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_node_unregister_children
    linkageType: ''
    returnType: void
    signature: void gf_sg_parent_reset(GF_Node *node)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: GF_Node*::sgprivate::UserCallback
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1588,1
    - Dst: GF_Node*::sgprivate::scenegraph::NodeCallback
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1591,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1595,1
    - Dst: gf_dom_event_remove_all_listeners
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1599,1
    - Dst: gf_dom_event_target_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1600,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1603,1
    - Dst: GF_Node*::sgprivate::scenegraph::on_node_modified
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1609,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1610,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1611,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1614,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1616,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1617,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1618,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1619
      start: 1584
    functionDepth: 4
    functionLinenumber: 1584
    functionLinenumberEnd: 1619
    functionName: gf_node_free
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 325
    functionsReached:
    - gf_free
    - gf_assert
    - GF_Node*::sgprivate::scenegraph::NodeCallback
    - GF_Node*::sgprivate::UserCallback
    - gf_dom_event_remove_all_listeners
    - gf_list_del
    - GF_Node*::sgprivate::scenegraph::on_node_modified
    - gf_dom_event_target_del
    linkageType: ''
    returnType: void
    signature: void gf_node_free(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1631
      start: 1621
    functionDepth: 0
    functionLinenumber: 1621
    functionLinenumberEnd: 1631
    functionName: gf_node_get_parent_count
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_get_parent_count(GF_Node *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - node
    - idx
    argTypes:
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1650
      start: 1633
    functionDepth: 0
    functionLinenumber: 1633
    functionLinenumberEnd: 1650
    functionName: gf_node_get_parent
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_node_get_parent(GF_Node *node, u32 idx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dirty_children
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1662,1
    - Dst: gf_node_get_field_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1666,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1668,1
    - Dst: dirty_children
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1669,1
    - Dst: dirty_children
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1673,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1679
      start: 1652
    functionDepth: 1
    functionLinenumber: 1652
    functionLinenumberEnd: 1679
    functionName: dirty_children
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_node_get_field_count
    - gf_node_get_field
    - dirty_children
    linkageType: ''
    returnType: void
    signature: void dirty_children(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_Node*::sgprivate::scenegraph::NodeCallback
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1724,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1726
      start: 1719
    functionDepth: 0
    functionLinenumber: 1719
    functionLinenumberEnd: 1726
    functionName: gf_node_dirty_parent_graph
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - GF_Node*::sgprivate::scenegraph::NodeCallback
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_dirty_parent_graph(GF_Node *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: dirty_parents
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1736,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - node
    - flags
    - and_dirty_parents
    argTypes:
    - GF_Node*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1737
      start: 1728
    functionDepth: 0
    functionLinenumber: 1728
    functionLinenumberEnd: 1737
    functionName: gf_node_dirty_set
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 6
    functionsReached:
    - dirty_parents
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_dirty_set(GF_Node *node, u32 flags, Bool and_dirty_parents)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dirty_parents
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1742,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1743
      start: 1739
    functionDepth: 0
    functionLinenumber: 1739
    functionLinenumberEnd: 1743
    functionName: gf_node_dirty_parents
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - dirty_parents
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_dirty_parents(GF_Node *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - node
    - flag_to_remove
    argTypes:
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1751
      start: 1745
    functionDepth: 0
    functionLinenumber: 1745
    functionLinenumberEnd: 1751
    functionName: gf_node_dirty_clear
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_dirty_clear(GF_Node *node, u32 flag_to_remove)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1758
      start: 1753
    functionDepth: 0
    functionLinenumber: 1753
    functionLinenumberEnd: 1758
    functionName: gf_node_dirty_get
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_dirty_get(GF_Node *node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dirty_children
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1768,1
    - Dst: gf_node_dirty_reset
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1771,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - node
    - reset_children
    argTypes:
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1775
      start: 1761
    functionDepth: 2
    functionLinenumber: 1761
    functionLinenumberEnd: 1775
    functionName: gf_node_dirty_reset
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_node_dirty_reset
    - dirty_children
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_dirty_reset(GF_Node *node, Bool reset_children)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1783,1
    - Dst: gf_sg_vrml_node_init
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1791,1
    - Dst: gf_svg_node_init
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1795,1
    - Dst: GF_SceneGraph*::NodeCallback
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1799,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1800
      start: 1779
    functionDepth: 8
    functionLinenumber: 1779
    functionLinenumberEnd: 1800
    functionName: gf_node_init
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 5
    functionsReached:
    - GF_SceneGraph*::NodeCallback
    - gf_assert
    - gf_sg_vrml_node_init
    - gf_svg_node_init
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_init(GF_Node *node)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1809,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1813,1
    - Dst: GF_SceneGraph*::on_node_modified
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1814,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1821,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1826,1
    - Dst: gf_sg_vrml_node_changed
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1833,1
    - Dst: gf_svg_node_changed
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1837,1
    - Dst: GF_SceneGraph*::NodeCallback
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1844,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 24
    argCount: 3
    argNames:
    - node
    - field
    - notify_scripts
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1845
      start: 1803
    functionDepth: 9
    functionLinenumber: 1803
    functionLinenumberEnd: 1845
    functionName: gf_node_changed_internal
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_sg_vrml_node_changed
    - gf_assert
    - GF_SceneGraph*::NodeCallback
    - gf_dom_event_fire
    - memset
    - gf_sg_vrml_is_sf_field
    - gf_svg_node_changed
    - GF_SceneGraph*::on_node_modified
    linkageType: ''
    returnType: void
    signature: void gf_node_changed_internal(GF_Node *node, GF_FieldInfo *field, Bool
      notify_scripts)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_changed_internal
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1850,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1861,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1864
      start: 1847
    functionDepth: 10
    functionLinenumber: 1847
    functionLinenumberEnd: 1864
    functionName: gf_node_changed
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 8
    functionsReached:
    - gf_node_changed_internal
    - gf_dom_event_fire
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_changed(GF_Node *node, GF_FieldInfo *field)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1868,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1871,1
    - Dst: gf_sg_parent_reset
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1872,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1873,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1877,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1879,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1881,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1882,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1885,1
    - Dst: gf_sg_parent_reset
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1886,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1887,1
    - Dst: gf_node_delete_attributes
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1892,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1894,1
    - Dst: gf_sg_parent_reset
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1895,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1896,1
    - Dst: gf_sg_proto_del_instance
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1899,1
    - Dst: gf_sg_mpeg4_node_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1902,1
    - Dst: gf_sg_x3d_node_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1904,1
    - Dst: gf_svg_node_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1909,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1912
      start: 1866
    functionDepth: 6
    functionLinenumber: 1866
    functionLinenumberEnd: 1912
    functionName: gf_node_del
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_svg_node_del
    - gf_sg_proto_del_instance
    - gf_node_free
    - gf_sg_x3d_node_del
    - gf_sg_parent_reset
    - gf_list_count
    - gf_sg_mpeg4_node_del
    - gf_sg_command_del
    - gf_node_delete_attributes
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_node_del(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1917,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1921,1
    - Dst: gf_node_get_attribute_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1924,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1927
      start: 1914
    functionDepth: 1
    functionLinenumber: 1914
    functionLinenumberEnd: 1927
    functionName: gf_node_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 5
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_assert
    - gf_node_get_attribute_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_get_field_count(GF_Node *node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_mpeg4_node_get_class_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1936,1
    - Dst: gf_sg_x3d_node_get_class_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1938,1
    - Dst: gf_sg_get_namespace_code
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1945,1
    - Dst: gf_sg_get_namespace_qname
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1947,1
    - Dst: snprintf
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1949,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1956
      start: 1929
    functionDepth: 1
    functionLinenumber: 1929
    functionLinenumberEnd: 1956
    functionName: gf_node_get_class_name
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 11
    functionsReached:
    - snprintf
    - gf_sg_get_namespace_qname
    - gf_sg_mpeg4_node_get_class_name
    - gf_sg_x3d_node_get_class_name
    - gf_sg_get_namespace_code
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_node_get_class_name(GF_Node *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_mpeg4_type_by_class_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1965,1
    - Dst: gf_node_x3d_type_by_class_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1969,1
    - Dst: gf_xml_get_element_tag
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1976,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - name
    - ns
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1981
      start: 1959
    functionDepth: 1
    functionLinenumber: 1959
    functionLinenumberEnd: 1981
    functionName: gf_sg_node_get_tag_by_class_name
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_xml_get_element_tag
    - gf_node_x3d_type_by_class_name
    - gf_node_mpeg4_type_by_class_name
    linkageType: ''
    returnType: u32
    signature: u32 gf_sg_node_get_tag_by_class_name(const char *name, u32 ns)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_new_base_node
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1992,1
    - Dst: gf_sg_mpeg4_node_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1994,1
    - Dst: gf_sg_x3d_node_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1996,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2001,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2004,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2008,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2011,1
    - Dst: gf_svg_create_node
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2014,1
    - Dst: gf_sg_script_init
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2027,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 2
    argNames:
    - inScene
    - tag
    argTypes:
    - GF_SceneGraph*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2033
      start: 1985
    functionDepth: 3
    functionLinenumber: 1985
    functionLinenumberEnd: 2033
    functionName: gf_node_new
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 17
    functionsReached:
    - GF_SAFEALLOC
    - gf_sg_new_base_node
    - gf_sg_script_init
    - gf_node_setup
    - gf_sg_x3d_node_new
    - gf_svg_create_node
    - gf_sg_mpeg4_node_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_node_new(GF_SceneGraph *inScene, u32 tag)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2039,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2040,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2041,1
    - Dst: gf_sg_proto_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2046,1
    - Dst: gf_sg_script_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2048,1
    - Dst: gf_sg_script_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2051,1
    - Dst: gf_sg_mpeg4_node_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2053,1
    - Dst: gf_sg_x3d_node_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2055,1
    - Dst: gf_node_get_attribute_info
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2060,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 3
    argNames:
    - node
    - FieldIndex
    - info
    argTypes:
    - GF_Node*
    - u32
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2063
      start: 2036
    functionDepth: 2
    functionLinenumber: 2036
    functionLinenumberEnd: 2063
    functionName: gf_node_get_field
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 35
    functionsReached:
    - gf_sg_mpeg4_node_get_field
    - gf_sg_proto_get_field
    - gf_assert
    - gf_sg_x3d_node_get_field
    - gf_sg_script_get_field
    - gf_node_get_attribute_info
    - memset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_get_field(GF_Node *node, u32 FieldIndex, GF_FieldInfo
      *info)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2068
      start: 2065
    functionDepth: 0
    functionLinenumber: 2065
    functionLinenumberEnd: 2068
    functionName: gf_node_get_num_instances
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_node_get_num_instances(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2073,1
    - Dst: gf_node_get_field_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2074,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2075,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2077,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2078,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - node
    - name
    - field
    argTypes:
    - GF_Node*
    - char*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2081
      start: 2070
    functionDepth: 3
    functionLinenumber: 2070
    functionLinenumberEnd: 2081
    functionName: gf_node_get_field_by_name_enum
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_node_get_field_count
    - memset
    - strcmp
    - gf_node_get_field
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_node_get_field_by_name_enum(GF_Node *node, char *name, GF_FieldInfo
      *field)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_proto_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2091,1
    - Dst: gf_node_get_field_by_name_enum
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2094,1
    - Dst: gf_node_get_field_by_name_enum
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2097,1
    - Dst: gf_sg_mpeg4_node_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2099,1
    - Dst: gf_sg_x3d_node_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2101,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2106,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2109,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - node
    - name
    - field
    argTypes:
    - GF_Node*
    - char*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2110
      start: 2083
    functionDepth: 4
    functionLinenumber: 2083
    functionLinenumberEnd: 2110
    functionName: gf_node_get_field_by_name
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 10
    functionsReached:
    - gf_sg_mpeg4_node_get_field_index_by_name
    - gf_sg_proto_get_field_index_by_name
    - gf_node_get_field_by_name_enum
    - gf_node_get_field
    - gf_sg_x3d_node_get_field_index_by_name
    - gf_node_get_attribute_by_name
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_get_field_by_name(GF_Node *node, char *name, GF_FieldInfo
      *field)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2118,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2121,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - anim
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2124
      start: 2114
    functionDepth: 1
    functionLinenumber: 2114
    functionLinenumberEnd: 2124
    functionName: gf_node_get_log_name
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 17
    functionsReached:
    - sprintf
    - gf_node_get_name
    linkageType: ''
    returnType: char
    signature: char *gf_node_get_log_name(GF_Node *anim)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_is_timing_tag
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2140,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2142,1
    - Dst: SVGTimedAnimBaseElement*::timingp::runtime::evaluate
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2144,1
    - Dst: gf_node_deactivate_ex
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2154,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2159
      start: 2128
    functionDepth: 2
    functionLinenumber: 2128
    functionLinenumberEnd: 2159
    functionName: gf_node_deactivate_ex
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - SVGTimedAnimBaseElement*::timingp::runtime::evaluate
    - gf_list_del_item
    - gf_svg_is_timing_tag
    - gf_node_deactivate_ex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_node_deactivate_ex(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_deactivate_ex
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2163,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2166
      start: 2161
    functionDepth: 11
    functionLinenumber: 2161
    functionLinenumberEnd: 2166
    functionName: gf_node_deactivate
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_node_changed
    - gf_node_deactivate_ex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_node_deactivate(GF_Node *node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_is_timing_tag
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2182,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2184,1
    - Dst: SVGTimedAnimBaseElement*::timingp::runtime::evaluate
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2187,1
    - Dst: gf_node_activate_ex
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2196,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2201
      start: 2168
    functionDepth: 2
    functionLinenumber: 2168
    functionLinenumberEnd: 2201
    functionName: gf_node_activate_ex
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - SVGTimedAnimBaseElement*::timingp::runtime::evaluate
    - gf_list_add
    - gf_svg_is_timing_tag
    - gf_node_activate_ex
    linkageType: ''
    returnType: u32
    signature: u32 gf_node_activate_ex(GF_Node *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_activate_ex
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2206,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2207,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2209
      start: 2203
    functionDepth: 11
    functionLinenumber: 2203
    functionLinenumberEnd: 2209
    functionName: gf_node_activate
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_node_changed
    - gf_node_activate_ex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_node_activate(GF_Node *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_vrml_node_clone
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2218,1
    - Dst: gf_sg_xml_node_clone
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2225,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 5
    argNames:
    - inScene
    - orig
    - cloned_parent
    - id
    - deep
    argTypes:
    - GF_SceneGraph*
    - GF_Node*
    - GF_Node*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2229
      start: 2211
    functionDepth: 6
    functionLinenumber: 2211
    functionLinenumberEnd: 2229
    functionName: gf_node_clone
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 3
    functionsReached:
    - gf_sg_xml_node_clone
    - gf_vrml_node_clone
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_node_clone(GF_SceneGraph *inScene, GF_Node *orig, GF_Node
      *cloned_parent, char *id, Bool deep)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2233,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2234,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2235,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2236,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2237,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2238,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2239,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2241
      start: 2231
    functionDepth: 0
    functionLinenumber: 2231
    functionLinenumberEnd: 2241
    functionName: gf_xml_get_namespace_id
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 2
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: GF_NamespaceType
    signature: GF_NamespaceType gf_xml_get_namespace_id(char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_get_namespace_id
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2250,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2252,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2254,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2257,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2257,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2258,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2260,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2261,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - sg
    - name
    - qname
    argTypes:
    - GF_SceneGraph*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2262
      start: 2243
    functionDepth: 1
    functionLinenumber: 2243
    functionLinenumberEnd: 2262
    functionName: gf_sg_add_namespace
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 2
    functionsReached:
    - gf_list_insert
    - gf_list_new
    - gf_strdup
    - GF_SAFEALLOC
    - gf_xml_get_namespace_id
    - gf_crc_32
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_add_namespace(GF_SceneGraph *sg, char *name, char *qname)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2268,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2271,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2274,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2277,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2278,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2279,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2280,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2281,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 19
    argCount: 3
    argNames:
    - sg
    - ns_name
    - q_name
    argTypes:
    - GF_SceneGraph*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2286
      start: 2264
    functionDepth: 1
    functionLinenumber: 2264
    functionLinenumberEnd: 2286
    functionName: gf_sg_remove_namespace
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - strcmp
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sg_remove_namespace(GF_SceneGraph *sg, char *ns_name, char
      *q_name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2291,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2293,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2297,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2301,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 13
    argCount: 2
    argNames:
    - sg
    - qname
    argTypes:
    - GF_SceneGraph*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2305
      start: 2288
    functionDepth: 1
    functionLinenumber: 2288
    functionLinenumberEnd: 2305
    functionName: gf_sg_get_namespace_code
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: GF_NamespaceType
    signature: GF_NamespaceType gf_sg_get_namespace_code(GF_SceneGraph *sg, char *qname)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2310,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2312,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2313,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2315,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 11
    argCount: 2
    argNames:
    - sg
    - name
    argTypes:
    - GF_SceneGraph*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2321
      start: 2307
    functionDepth: 1
    functionLinenumber: 2307
    functionLinenumberEnd: 2321
    functionName: gf_sg_get_namespace_code_from_name
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: GF_NamespaceType
    signature: GF_NamespaceType gf_sg_get_namespace_code_from_name(GF_SceneGraph *sg,
      char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2326,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2328,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - sg
    - xmlns_id
    argTypes:
    - GF_SceneGraph*
    - GF_NamespaceType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2334
      start: 2323
    functionDepth: 1
    functionLinenumber: 2323
    functionLinenumberEnd: 2334
    functionName: gf_sg_get_namespace_qname
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: char
    signature: char *gf_sg_get_namespace_qname(GF_SceneGraph *sg, GF_NamespaceType
      xmlns_id)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2341,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2343,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - sg
    - xmlns_id
    argTypes:
    - GF_SceneGraph*
    - GF_NamespaceType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2348
      start: 2337
    functionDepth: 1
    functionLinenumber: 2337
    functionLinenumberEnd: 2348
    functionName: gf_sg_get_namespace
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: char
    signature: char *gf_sg_get_namespace(GF_SceneGraph *sg, GF_NamespaceType xmlns_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2355,1
    - Dst: gf_svg_dump_attribute
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2356,1
    - Dst: gf_node_vrml_dump_attribute
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2361,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - n
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2365
      start: 2352
    functionDepth: 3
    functionLinenumber: 2352
    functionLinenumberEnd: 2365
    functionName: gf_node_dump_attribute
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 4
    functionsReached:
    - gf_node_get_tag
    - gf_node_vrml_dump_attribute
    - gf_svg_dump_attribute
    linkageType: ''
    returnType: char
    signature: char *gf_node_dump_attribute(GF_Node *n, GF_FieldInfo *info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2394,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2404,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 4
    argNames:
    - node
    - container
    - pos
    - newNode
    argTypes:
    - GF_Node*
    - GF_ChildNodeItem**
    - s32
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2407
      start: 2370
    functionDepth: 3
    functionLinenumber: 2370
    functionLinenumberEnd: 2407
    functionName: gf_node_replace_child
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 4
    functionsReached:
    - gf_node_unregister
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_replace_child(GF_Node *node, GF_ChildNodeItem **container,
      s32 pos, GF_Node *newNode)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_parent_of
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2421,1
    - Dst: gf_node_get_field_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2425,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2427,1
    - Dst: gf_node_parent_of
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2429,1
    - Dst: gf_node_parent_of
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2434,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 2
    argNames:
    - node
    - target
    argTypes:
    - GF_Node*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2441
      start: 2410
    functionDepth: 3
    functionLinenumber: 2410
    functionLinenumberEnd: 2441
    functionName: gf_node_parent_of
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 2
    functionsReached:
    - gf_node_get_field_count
    - gf_node_parent_of
    - gf_node_get_field
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_parent_of(GF_Node *node, GF_Node *target)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - scene
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2446
      start: 2443
    functionDepth: 0
    functionLinenumber: 2443
    functionLinenumberEnd: 2446
    functionName: gf_sg_get_parent
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_SceneGraph
    signature: GF_SceneGraph *gf_sg_get_parent(GF_SceneGraph *scene)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2467,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2469,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2472,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2472,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2477,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2478,1
    - Dst: gf_sg_get_namespace_code
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2480,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2482,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2484,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2487,1
    - Dst: gf_sg_get_max_node_id
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2488,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2489,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2492,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2494,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2498,1
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2500,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2501,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2507,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2509,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2513,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2515,1
    - Dst: gf_sg_load_dom_node
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2516,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 56
    argCount: 3
    argNames:
    - document
    - n
    - par
    argTypes:
    - GF_SceneGraph*
    - GF_XMLNode*
    - GF_DOMFullNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2523
      start: 2451
    functionDepth: 4
    functionLinenumber: 2451
    functionLinenumberEnd: 2523
    functionName: gf_sg_load_dom_node
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_node_list_add_child
    - gf_strdup
    - gf_list_get
    - GF_SAFEALLOC
    - gf_dom_add_text_node
    - gf_node_set_id
    - GF_LOG
    - gf_svg_create_attribute_value
    - gf_list_count
    - gf_sg_load_dom_node
    - gf_sg_get_max_node_id
    - gf_node_new
    - gf_node_register
    - stricmp
    - strchr
    - strlen
    - gf_sg_get_namespace_code
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sg_load_dom_node(GF_SceneGraph *document, GF_XMLNode *n,
      GF_DOMFullNode *par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_load_dom_node
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2527,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - document
    - root_node
    argTypes:
    - GF_SceneGraph*
    - GF_DOMXMLNODE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2528
      start: 2525
    functionDepth: 5
    functionLinenumber: 2525
    functionLinenumberEnd: 2528
    functionName: gf_sg_init_from_xml_node
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_sg_load_dom_node
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sg_init_from_xml_node(GF_SceneGraph *document, GF_DOMXMLNODE
      root_node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sg
    - cookie
    argTypes:
    - GF_SceneGraph*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2534
      start: 2531
    functionDepth: 0
    functionLinenumber: 2531
    functionLinenumberEnd: 2534
    functionName: gf_sg_set_destroy_cookie
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_sg_set_destroy_cookie(GF_SceneGraph *sg, Bool *cookie)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 191
    functionDepth: 1
    functionLinenumber: 191
    functionLinenumberEnd: 194
    functionName: xml_dom3_not_implemented
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_dom3_not_implemented(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/scenegraph/dom_js.c:203,1
    - Dst: gf_svg_get_modification_flags
      Src: /src/gpac/src/scenegraph/dom_js.c:207,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/scenegraph/dom_js.c:208,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/dom_js.c:212,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - n
    - child_modif
    - info
    argTypes:
    - GF_Node*
    - Bool
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 199
    functionDepth: 11
    functionLinenumber: 199
    functionLinenumberEnd: 213
    functionName: dom_node_changed
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_node_dirty_set
    - gf_node_changed
    - gf_svg_get_modification_flags
    linkageType: ''
    returnType: void
    signature: void dom_node_changed(GF_Node *n, Bool child_modif, GF_FieldInfo *info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/dom_js.c:220,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/dom_js.c:221,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:223,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:224,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:225,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:226,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:227,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:228,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:229,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:230,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:231,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:232,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:233,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:234,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:235,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:236,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:237,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:238,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:239,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:240,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:241,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:242,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:243,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:244,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:245,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:246,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:247,1
    - Dst: DEF_EXC
      Src: /src/gpac/src/scenegraph/dom_js.c:248,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/dom_js.c:252,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/dom_js.c:253,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/dom_js.c:254,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:254,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/dom_js.c:255,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 32
    argCount: 2
    argNames:
    - c
    - global
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 256
    functionName: define_dom_exception
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_SetPropertyStr
    - JS_NewInt32
    - DEF_EXC
    - JS_NewObject
    linkageType: ''
    returnType: void
    signature: void define_dom_exception(JSContext *c, JSValue global)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 219
    functionName: DEF_EXC
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEF_EXC(_val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:262,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - obj
    argTypes:
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 259
    functionDepth: 1
    functionLinenumber: 259
    functionLinenumberEnd: 265
    functionName: dom_get_node
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_GetAnyOpaque
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *dom_get_node(JSValue obj)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:270,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - c
    - obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 274
    functionName: dom_get_element
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_GetAnyOpaque
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *dom_get_element(JSContext *c, JSValue obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:279,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - c
    - obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 276
    functionDepth: 1
    functionLinenumber: 276
    functionLinenumberEnd: 282
    functionName: dom_get_doc
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_GetAnyOpaque
    linkageType: ''
    returnType: GF_SceneGraph
    signature: GF_SceneGraph *dom_get_doc(JSContext *c, JSValue obj)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_SceneGraph*::get_document_class
      Src: /src/gpac/src/scenegraph/dom_js.c:304,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/dom_js.c:309,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:310,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/dom_js.c:311,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/dom_js.c:313,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/dom_js.c:315,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 18
    argCount: 4
    argNames:
    - c
    - global
    - doc
    - name
    argTypes:
    - JSContext*
    - JSValue
    - GF_SceneGraph*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 288
    functionDepth: 1
    functionLinenumber: 288
    functionLinenumberEnd: 316
    functionName: dom_js_define_document_ex
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_DupValue
    - GF_SAFEALLOC
    - GF_SceneGraph*::get_document_class
    - JS_SetOpaque
    - JS_SetPropertyStr
    linkageType: ''
    returnType: void
    signature: void dom_js_define_document_ex(JSContext *c, JSValue global, GF_SceneGraph
      *doc, const char *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dom_js_define_document_ex
      Src: /src/gpac/src/scenegraph/dom_js.c:320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - c
    - global
    - doc
    argTypes:
    - JSContext*
    - JSValue
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 318
    functionDepth: 2
    functionLinenumber: 318
    functionLinenumberEnd: 321
    functionName: dom_js_define_document
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - dom_js_define_document_ex
    linkageType: ''
    returnType: void
    signature: void dom_js_define_document(JSContext *c, JSValue global, GF_SceneGraph
      *doc)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:329,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/dom_js.c:330,1
    - Dst: GF_SceneGraph*::get_document_class
      Src: /src/gpac/src/scenegraph/dom_js.c:342,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/dom_js.c:347,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:348,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/dom_js.c:349,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/dom_js.c:351,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 2
    argNames:
    - c
    - sg
    argTypes:
    - JSContext*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 324
    functionDepth: 1
    functionLinenumber: 324
    functionLinenumberEnd: 353
    functionName: dom_document_construct
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_DupValue
    - GF_SAFEALLOC
    - GF_SceneGraph*::get_document_class
    - JS_SetOpaque
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_document_construct(JSContext *c, GF_SceneGraph *sg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dom_document_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - c
    - sg
    argTypes:
    - JSContext*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 355
    functionDepth: 2
    functionLinenumber: 355
    functionLinenumberEnd: 359
    functionName: dom_document_construct_external
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - dom_document_construct
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_document_construct_external(JSContext *c, GF_SceneGraph
      *sg)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/dom_js.c:370,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/dom_js.c:371,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/dom_js.c:377,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/dom_js.c:378,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:379,1
    - Dst: html_media_element_js_init
      Src: /src/gpac/src/scenegraph/dom_js.c:384,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/dom_js.c:389,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/dom_js.c:395,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/dom_js.c:400,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/dom_js.c:401,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 3
    argNames:
    - c
    - class_id
    - n
    argTypes:
    - JSContext*
    - JSClassID
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 361
    functionDepth: 3
    functionLinenumber: 361
    functionLinenumberEnd: 403
    functionName: dom_base_node_construct
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_DupValue
    - GF_SAFEALLOC
    - JS_SetOpaque
    - JS_IsUndefined
    - gf_list_add
    - html_media_element_js_init
    - gf_node_register
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_base_node_construct(JSContext *c, JSClassID class_id, GF_Node
      *n)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SceneGraph*::get_element_class
      Src: /src/gpac/src/scenegraph/dom_js.c:414,1
    - Dst: dom_base_node_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:421,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 2
    argNames:
    - c
    - n
    argTypes:
    - JSContext*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 404
    functionDepth: 4
    functionLinenumber: 404
    functionLinenumberEnd: 422
    functionName: dom_node_construct
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - dom_base_node_construct
    - GF_SceneGraph*::get_element_class
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_node_construct(JSContext *c, GF_Node *n)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SceneGraph*::get_element_class
      Src: /src/gpac/src/scenegraph/dom_js.c:434,1
    - Dst: dom_base_node_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:439,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 2
    argNames:
    - c
    - n
    argTypes:
    - JSContext*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 424
    functionDepth: 4
    functionLinenumber: 424
    functionLinenumberEnd: 440
    functionName: dom_element_construct
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - dom_base_node_construct
    - GF_SceneGraph*::get_element_class
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_element_construct(JSContext *c, GF_Node *n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dom_base_node_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:444,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - c
    - n
    argTypes:
    - JSContext*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 442
    functionDepth: 4
    functionLinenumber: 442
    functionLinenumberEnd: 445
    functionName: dom_text_construct
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - dom_base_node_construct
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_text_construct(JSContext *c, GF_Node *n)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/dom_js.c:454,1
    - Dst: gf_sg_del
      Src: /src/gpac/src/scenegraph/dom_js.c:458,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 447
    functionDepth: 3
    functionLinenumber: 447
    functionLinenumberEnd: 460
    functionName: dom_unregister_node
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_del
    linkageType: ''
    returnType: void
    signature: void dom_unregister_node(GF_Node *n)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/scenegraph/dom_js.c:469,1
    - Dst: gf_node_list_find_child
      Src: /src/gpac/src/scenegraph/dom_js.c:472,1
    - Dst: dom_node_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:481,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/scenegraph/dom_js.c:481,1
    - Dst: dom_node_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:501,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 38
    argCount: 4
    argNames:
    - c
    - n
    - is_prev
    - elt_only
    argTypes:
    - JSContext*
    - GF_Node*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 462
    functionDepth: 5
    functionLinenumber: 462
    functionLinenumberEnd: 502
    functionName: dom_node_get_sibling
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_node_list_get_child
    - gf_node_get_parent
    - gf_node_list_find_child
    - dom_node_construct
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_node_get_sibling(JSContext *c, GF_Node *n, Bool is_prev,
      Bool elt_only)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/dom_js.c:521,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:522,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/dom_js.c:528,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/dom_js.c:529,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:530,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - c
    - n
    argTypes:
    - JSContext*
    - GF_ParentNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 516
    functionDepth: 2
    functionLinenumber: 516
    functionLinenumberEnd: 532
    functionName: dom_nodelist_construct
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - GF_SAFEALLOC
    - JS_SetOpaque
    - GF_JS_EXCEPTION
    - gf_node_register
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_nodelist_construct(JSContext *c, GF_ParentNode *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:536,1
    - Dst: dom_unregister_node
      Src: /src/gpac/src/scenegraph/dom_js.c:540,1
    - Dst: dom_unregister_node
      Src: /src/gpac/src/scenegraph/dom_js.c:546,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:547,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:550,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 551
      start: 534
    functionDepth: 4
    functionLinenumber: 534
    functionLinenumberEnd: 551
    functionName: dom_nodelist_finalize
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_free
    - dom_unregister_node
    linkageType: ''
    returnType: void
    signature: void dom_nodelist_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:560,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:561,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:562,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/scenegraph/dom_js.c:564,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/scenegraph/dom_js.c:568,1
    - Dst: dom_node_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:569,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 553
    functionDepth: 5
    functionLinenumber: 553
    functionLinenumberEnd: 570
    functionName: dom_nodelist_item
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_node_list_get_child
    - JS_ToInt32
    - dom_node_construct
    - GF_JS_EXCEPTION
    - gf_node_list_get_count
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_nodelist_item(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:576,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:577,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/scenegraph/dom_js.c:578,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:582,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:586,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 572
    functionDepth: 1
    functionLinenumber: 572
    functionLinenumberEnd: 587
    functionName: dom_nodelist_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - JS_GetOpaque
    - JS_NewInt32
    - GF_JS_EXCEPTION
    - gf_node_list_get_count
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_nodelist_getProperty(JSContext *c, JSValueConst obj, int
      magic)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/dom_js.c:597,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/dom_js.c:599,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/dom_js.c:600,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:602,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 592
    functionDepth: 1
    functionLinenumber: 592
    functionLinenumberEnd: 606
    functionName: dom_handler_remove
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_FreeValue
    - gf_list_del_item
    - JS_IsUndefined
    linkageType: ''
    returnType: void
    signature: void dom_handler_remove(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_dom_event_get_category
      Src: /src/gpac/src/scenegraph/dom_js.c:619,1
    - Dst: gf_html_media_get_event_target
      Src: /src/gpac/src/scenegraph/dom_js.c:621,1
    - Dst: gf_dom_event_get_category
      Src: /src/gpac/src/scenegraph/dom_js.c:625,1
    - Dst: gf_mse_get_event_target
      Src: /src/gpac/src/scenegraph/dom_js.c:627,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:633,1
    - Dst: is_svg_document_class
      Src: /src/gpac/src/scenegraph/dom_js.c:633,1
    - Dst: dom_get_doc
      Src: /src/gpac/src/scenegraph/dom_js.c:635,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:645,1
    - Dst: is_svg_element_class
      Src: /src/gpac/src/scenegraph/dom_js.c:645,1
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/dom_js.c:650,1
    - Dst: gf_dom_event_target_new
      Src: /src/gpac/src/scenegraph/dom_js.c:655,1
    - Dst: xhr_get_event_target
      Src: /src/gpac/src/scenegraph/dom_js.c:663,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 39
    argCount: 7
    argNames:
    - c
    - obj
    - evtType
    - vrml_node
    - sg
    - target
    - n
    argTypes:
    - JSContext*
    - JSValue
    - GF_EventType
    - GF_Node*
    - GF_SceneGraph**
    - GF_DOMEventTarget**
    - GF_Node**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 666
      start: 608
    functionDepth: 4
    functionLinenumber: 608
    functionLinenumberEnd: 666
    functionName: sg_js_get_event_target
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - dom_get_doc
    - is_svg_element_class
    - JS_GetOpaque
    - gf_dom_event_target_new
    - gf_dom_event_get_category
    - dom_get_element
    - gf_mse_get_event_target
    - gf_html_media_get_event_target
    - xhr_get_event_target
    - is_svg_document_class
    linkageType: ''
    returnType: void
    signature: "void sg_js_get_event_target(JSContext *c, JSValue obj, GF_EventType
      evtType, GF_Node *vrml_node,\n                                     GF_SceneGraph
      **sg, GF_DOMEventTarget **target, GF_Node **n)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:682,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:683,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:687,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:688,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:690,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:691,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_js.c:693,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:694,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/scenegraph/dom_js.c:695,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/dom_js.c:698,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/dom_js.c:701,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/scenegraph/dom_js.c:705,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/scenegraph/dom_js.c:706,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/src/scenegraph/dom_js.c:710,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:713,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:714,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:718,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:719,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:720,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 60
    argCount: 8
    argNames:
    - c
    - obj
    - argc
    - argv
    - evtType
    - callback
    - funval
    - evt_handler
    argTypes:
    - JSContext*
    - JSValue
    - int
    - JSValue*
    - GF_EventType*
    - char**
    - JSValue*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 726
      start: 668
    functionDepth: 1
    functionLinenumber: 668
    functionLinenumberEnd: 726
    functionName: sg_js_parse_event_args
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - gf_strdup
    - JS_DupValue
    - JS_IsFunction
    - gf_dom_event_type_by_name
    - JS_CHECK_STRING
    - JS_GetPropertyStr
    - JS_IsObject
    - JS_FreeCString
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err sg_js_parse_event_args(JSContext *c, JSValue obj, int argc,
      JSValue *argv,\n                                     GF_EventType *evtType,\n
      \                                    char **callback, JSValue *funval, JSValue
      *evt_handler)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/scenegraph/dom_js.c:737,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scenegraph/dom_js.c:742,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/dom_js.c:744,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scenegraph/dom_js.c:745,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/dom_js.c:748,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/scenegraph/dom_js.c:752,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/dom_js.c:754,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/dom_js.c:756,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:764,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:766,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:769,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:773,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/scenegraph/dom_js.c:776,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_js.c:776,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/dom_js.c:784,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 40
    argCount: 8
    argNames:
    - sg
    - evtType
    - n
    - vrml_node
    - c
    - callback
    - funval
    - evt_handler
    argTypes:
    - GF_SceneGraph*
    - GF_EventType
    - GF_Node*
    - GF_Node*
    - JSContext*
    - char*
    - JSValue
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 730
    functionDepth: 5
    functionLinenumber: 730
    functionLinenumberEnd: 793
    functionName: create_listener
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - gf_strdup
    - gf_assert
    - JS_IsFunction
    - GF_SAFEALLOC
    - gf_node_get_attribute_by_tag
    - gf_dom_add_text_node
    - gf_node_new
    - gf_list_add
    - gf_node_register
    - gf_node_list_add_child
    linkageType: ''
    returnType: GF_Node
    signature: "GF_Node *create_listener(GF_SceneGraph *sg, GF_EventType evtType,
      GF_Node *n, GF_Node *vrml_node,\n                                JSContext *c,
      char *callback, JSValue funval, JSValue evt_handler)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: sg_js_parse_event_args
      Src: /src/gpac/src/scenegraph/dom_js.c:809,1
    - Dst: sg_js_get_event_target
      Src: /src/gpac/src/scenegraph/dom_js.c:813,1
    - Dst: create_listener
      Src: /src/gpac/src/scenegraph/dom_js.c:816,1
    - Dst: gf_sg_listener_post_add
      Src: /src/gpac/src/scenegraph/dom_js.c:821,1
    - Dst: gf_sg_listener_associate
      Src: /src/gpac/src/scenegraph/dom_js.c:823,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:827,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:829,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 25
    argCount: 5
    argNames:
    - c
    - obj
    - argc
    - argv
    - vrml_node
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 831
      start: 796
    functionDepth: 6
    functionLinenumber: 796
    functionLinenumberEnd: 831
    functionName: gf_sg_js_event_add_listener
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 1
    functionsReached:
    - gf_sg_listener_associate
    - gf_free
    - js_throw_err
    - sg_js_parse_event_args
    - create_listener
    - gf_sg_listener_post_add
    - sg_js_get_event_target
    linkageType: ''
    returnType: JSValue
    signature: JSValue gf_sg_js_event_add_listener(JSContext *c, JSValueConst obj,
      int argc, JSValueConst *argv, GF_Node *vrml_node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_js_event_add_listener
      Src: /src/gpac/src/scenegraph/dom_js.c:836,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 837
      start: 834
    functionDepth: 7
    functionLinenumber: 834
    functionLinenumberEnd: 837
    functionName: dom_event_add_listener
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_sg_js_event_add_listener
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_event_add_listener(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: sg_js_parse_event_args
      Src: /src/gpac/src/scenegraph/dom_js.c:852,1
    - Dst: sg_js_get_event_target
      Src: /src/gpac/src/scenegraph/dom_js.c:856,1
    - Dst: gf_dom_listener_process_add
      Src: /src/gpac/src/scenegraph/dom_js.c:860,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/dom_js.c:862,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/dom_js.c:867,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:869,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:873,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/dom_js.c:877,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:880,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:881,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:882,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:883,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:884,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:889,1
    - Dst: gf_dom_listener_del
      Src: /src/gpac/src/scenegraph/dom_js.c:895,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:901,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 47
    argCount: 5
    argNames:
    - c
    - obj
    - argc
    - argv
    - vrml_node
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 903
      start: 839
    functionDepth: 5
    functionLinenumber: 839
    functionLinenumberEnd: 903
    functionName: gf_sg_js_event_remove_listener
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 1
    functionsReached:
    - gf_free
    - JS_ToCString
    - gf_list_get
    - JS_IsNull
    - sg_js_parse_event_args
    - gf_node_get_attribute_by_tag
    - gf_dom_listener_process_add
    - gf_dom_listener_del
    - gf_list_count
    - strcmp
    - sg_js_get_event_target
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue gf_sg_js_event_remove_listener(JSContext *c, JSValueConst obj,
      int argc, JSValueConst *argv, GF_Node *vrml_node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_js_event_remove_listener
      Src: /src/gpac/src/scenegraph/dom_js.c:907,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 908
      start: 905
    functionDepth: 6
    functionLinenumber: 905
    functionLinenumberEnd: 908
    functionName: dom_event_remove_listener
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_sg_js_event_remove_listener
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_event_remove_listener(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:914,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:919,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/dom_js.c:921,1
    - Dst: gf_sg_js_dom_pre_destroy
      Src: /src/gpac/src/scenegraph/dom_js.c:922,1
    - Dst: dom_unregister_node
      Src: /src/gpac/src/scenegraph/dom_js.c:923,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 924
      start: 911
    functionDepth: 4
    functionLinenumber: 911
    functionLinenumberEnd: 924
    functionName: dom_node_finalize
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_sg_js_dom_pre_destroy
    - JS_GetAnyOpaque
    - JS_SetOpaque
    - gf_list_del_item
    - dom_unregister_node
    linkageType: ''
    returnType: void
    signature: void dom_node_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:930,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:935,1
    - Dst: check_dom_parents
      Src: /src/gpac/src/scenegraph/dom_js.c:938,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - c
    - n
    - parent
    argTypes:
    - JSContext*
    - GF_Node*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 926
    functionDepth: 1
    functionLinenumber: 926
    functionLinenumberEnd: 943
    functionName: check_dom_parents
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 1
    functionsReached:
    - check_dom_parents
    - js_throw_err
    linkageType: ''
    returnType: Bool
    signature: Bool check_dom_parents(JSContext *c, GF_Node *n, GF_Node *parent)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/scenegraph/dom_js.c:951,1
    - Dst: gf_node_list_del_child
      Src: /src/gpac/src/scenegraph/dom_js.c:955,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/dom_js.c:956,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scenegraph/dom_js.c:963,1
    - Dst: gf_node_list_insert_child
      Src: /src/gpac/src/scenegraph/dom_js.c:964,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/dom_js.c:965,1
    - Dst: gf_dom_listener_build_ex
      Src: /src/gpac/src/scenegraph/dom_js.c:970,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scenegraph/dom_js.c:972,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/dom_js.c:978,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/scenegraph/dom_js.c:980,1
    - Dst: gf_node_activate
      Src: /src/gpac/src/scenegraph/dom_js.c:985,1
    - Dst: dom_node_changed
      Src: /src/gpac/src/scenegraph/dom_js.c:987,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 4
    argNames:
    - c
    - n
    - parent
    - pos
    argTypes:
    - JSContext*
    - GF_Node*
    - GF_Node*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 988
      start: 945
    functionDepth: 12
    functionLinenumber: 945
    functionLinenumberEnd: 988
    functionName: dom_node_inserted
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_node_init
    - gf_dom_listener_build_ex
    - dom_node_changed
    - gf_node_list_insert_child
    - gf_node_list_del_child
    - gf_dom_event_fire
    - memset
    - gf_node_register
    - gf_node_unregister
    - gf_node_get_parent
    - gf_node_list_add_child
    - gf_node_activate
    linkageType: ''
    returnType: void
    signature: void dom_node_inserted(JSContext *c, GF_Node *n, GF_Node *parent, s32
      pos)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/dom_js.c:997,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:998,1
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1000,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1002,1
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1005,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1007,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/dom_js.c:1010,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/dom_js.c:1010,1
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1011,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:1014,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1016,1
    - Dst: check_dom_parents
      Src: /src/gpac/src/scenegraph/dom_js.c:1018,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1019,1
    - Dst: gf_node_list_find_child
      Src: /src/gpac/src/scenegraph/dom_js.c:1023,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1025,1
    - Dst: dom_node_inserted
      Src: /src/gpac/src/scenegraph/dom_js.c:1028,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/dom_js.c:1029,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 31
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1030
      start: 990
    functionDepth: 13
    functionLinenumber: 990
    functionLinenumberEnd: 1030
    functionName: xml_node_insert_before
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - JS_DupValue
    - js_throw_err
    - JS_IsNull
    - gf_node_list_find_child
    - GF_JS_EXCEPTION
    - JS_IsObject
    - dom_get_node
    - check_dom_parents
    - dom_node_inserted
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_node_insert_before(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/dom_js.c:1037,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1038,1
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1040,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1042,1
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1045,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1047,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:1049,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1051,1
    - Dst: check_dom_parents
      Src: /src/gpac/src/scenegraph/dom_js.c:1054,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1055,1
    - Dst: dom_node_inserted
      Src: /src/gpac/src/scenegraph/dom_js.c:1058,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/dom_js.c:1059,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1060
      start: 1032
    functionDepth: 13
    functionLinenumber: 1032
    functionLinenumberEnd: 1060
    functionName: xml_node_append_child
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - JS_DupValue
    - js_throw_err
    - GF_JS_EXCEPTION
    - JS_IsObject
    - dom_get_node
    - check_dom_parents
    - dom_node_inserted
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_node_append_child(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/dom_js.c:1071,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/dom_js.c:1071,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1071,1
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1072,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1073,1
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1075,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1076,1
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1077,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1078,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:1079,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1080,1
    - Dst: gf_node_list_find_child
      Src: /src/gpac/src/scenegraph/dom_js.c:1082,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1083,1
    - Dst: gf_node_list_del_child
      Src: /src/gpac/src/scenegraph/dom_js.c:1085,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/dom_js.c:1086,1
    - Dst: dom_node_inserted
      Src: /src/gpac/src/scenegraph/dom_js.c:1088,1
    - Dst: svg_mark_gc
      Src: /src/gpac/src/scenegraph/dom_js.c:1091,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/dom_js.c:1092,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1093
      start: 1064
    functionDepth: 13
    functionLinenumber: 1064
    functionLinenumberEnd: 1093
    functionName: xml_node_replace_child
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - JS_DupValue
    - js_throw_err
    - gf_node_list_del_child
    - gf_node_list_find_child
    - svg_mark_gc
    - gf_node_unregister
    - GF_JS_EXCEPTION
    - JS_IsObject
    - dom_get_node
    - dom_node_inserted
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_node_replace_child(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/dom_js.c:1100,1
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1102,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1103,1
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1105,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1106,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:1107,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1108,1
    - Dst: gf_node_list_del_child
      Src: /src/gpac/src/scenegraph/dom_js.c:1112,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/dom_js.c:1113,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1115,1
    - Dst: dom_node_changed
      Src: /src/gpac/src/scenegraph/dom_js.c:1118,1
    - Dst: svg_mark_gc
      Src: /src/gpac/src/scenegraph/dom_js.c:1120,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/dom_js.c:1121,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1122
      start: 1095
    functionDepth: 12
    functionLinenumber: 1095
    functionLinenumberEnd: 1122
    functionName: xml_node_remove_child
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - dom_node_changed
    - JS_DupValue
    - js_throw_err
    - gf_node_list_del_child
    - svg_mark_gc
    - gf_node_unregister
    - JS_IsObject
    - dom_get_node
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_node_remove_child(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1129,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1130,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/scenegraph/dom_js.c:1131,1
    - Dst: gf_node_clone
      Src: /src/gpac/src/scenegraph/dom_js.c:1133,1
    - Dst: dom_node_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:1134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1135
      start: 1124
    functionDepth: 7
    functionLinenumber: 1124
    functionLinenumberEnd: 1135
    functionName: xml_clone_node
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_node_clone
    - js_throw_err
    - JS_ToBool
    - dom_node_construct
    - dom_get_node
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_clone_node(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1140,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1141,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1143
      start: 1137
    functionDepth: 2
    functionLinenumber: 1137
    functionLinenumberEnd: 1143
    functionName: xml_node_has_children
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - dom_get_node
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_node_has_children(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1150,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1151,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:1152,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1158
      start: 1145
    functionDepth: 2
    functionLinenumber: 1145
    functionLinenumberEnd: 1158
    functionName: xml_node_has_attributes
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - dom_get_node
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_node_has_attributes(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/dom_js.c:1164,1
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1165,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1166,1
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1168,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1169,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1171
      start: 1160
    functionDepth: 2
    functionLinenumber: 1160
    functionLinenumberEnd: 1171
    functionName: xml_node_is_same_node
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_IsObject
    - dom_get_node
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_node_is_same_node(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scenegraph/dom_js.c:1180,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1183
      start: 1173
    functionDepth: 2
    functionLinenumber: 1173
    functionLinenumberEnd: 1183
    functionName: node_get_local_name
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_node_get_class_name
    linkageType: ''
    returnType: char
    signature: char *node_get_local_name(GF_Node *node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/scenegraph/dom_js.c:1196,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/scenegraph/dom_js.c:1198,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/dom_js.c:1198,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:1201,1
    - Dst: node_lookup_namespace_by_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:1208,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/scenegraph/dom_js.c:1208,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 18
    argCount: 2
    argNames:
    - node
    - tag
    argTypes:
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1209
      start: 1185
    functionDepth: 1
    functionLinenumber: 1185
    functionLinenumberEnd: 1209
    functionName: node_lookup_namespace_by_tag
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 1
    functionsReached:
    - node_lookup_namespace_by_tag
    - strncmp
    - strcmp
    - gf_node_get_parent
    - gf_crc_32
    - strlen
    linkageType: ''
    returnType: char
    signature: char *node_lookup_namespace_by_tag(GF_Node *node, u32 tag)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:1225,1
    - Dst: strncmp
      Src: /src/gpac/src/scenegraph/dom_js.c:1226,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:1227,1
    - Dst: get_namespace_code_by_prefix
      Src: /src/gpac/src/scenegraph/dom_js.c:1233,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/scenegraph/dom_js.c:1233,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 2
    argNames:
    - node
    - prefix
    argTypes:
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1234
      start: 1215
    functionDepth: 1
    functionLinenumber: 1215
    functionLinenumberEnd: 1234
    functionName: get_namespace_code_by_prefix
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 1
    functionsReached:
    - gf_node_get_parent
    - strncmp
    - strcmp
    - get_namespace_code_by_prefix
    linkageType: ''
    returnType: u32
    signature: u32 get_namespace_code_by_prefix(GF_Node *node, char *prefix)
  - BBCount: 53
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1244,1
    - Dst: dom_get_doc
      Src: /src/gpac/src/scenegraph/dom_js.c:1246,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1247,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:1249,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:1255,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:1259,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:1260,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:1262,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scenegraph/dom_js.c:1262,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:1267,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:1271,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:1274,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:1275,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:1277,1
    - Dst: dom_document_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:1285,1
    - Dst: dom_node_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:1287,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/scenegraph/dom_js.c:1287,1
    - Dst: dom_nodelist_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:1294,1
    - Dst: dom_node_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:1297,1
    - Dst: dom_node_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:1300,1
    - Dst: dom_node_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:1303,1
    - Dst: dom_node_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:1305,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/scenegraph/dom_js.c:1305,1
    - Dst: dom_node_get_sibling
      Src: /src/gpac/src/scenegraph/dom_js.c:1309,1
    - Dst: dom_node_get_sibling
      Src: /src/gpac/src/scenegraph/dom_js.c:1312,1
    - Dst: dom_document_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:1320,1
    - Dst: gf_xml_get_element_namespace
      Src: /src/gpac/src/scenegraph/dom_js.c:1325,1
    - Dst: gf_sg_get_namespace
      Src: /src/gpac/src/scenegraph/dom_js.c:1326,1
    - Dst: node_lookup_namespace_by_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:1327,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:1328,1
    - Dst: gf_sg_get_namespace_code
      Src: /src/gpac/src/scenegraph/dom_js.c:1332,1
    - Dst: gf_xml_get_element_namespace
      Src: /src/gpac/src/scenegraph/dom_js.c:1333,1
    - Dst: gf_sg_get_namespace_qname
      Src: /src/gpac/src/scenegraph/dom_js.c:1336,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:1337,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:1342,1
    - Dst: node_get_local_name
      Src: /src/gpac/src/scenegraph/dom_js.c:1342,1
    - Dst: gf_dom_flatten_textContent
      Src: /src/gpac/src/scenegraph/dom_js.c:1351,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:1352,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:1353,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:1356,1
    - Dst: dom_element_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:1363,1
    - Dst: dom_element_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:1380,1
    - Dst: dom_node_get_sibling
      Src: /src/gpac/src/scenegraph/dom_js.c:1384,1
    - Dst: dom_node_get_sibling
      Src: /src/gpac/src/scenegraph/dom_js.c:1387,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 133
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1390
      start: 1237
    functionDepth: 6
    functionLinenumber: 1237
    functionLinenumberEnd: 1390
    functionName: dom_node_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_free
    - dom_get_doc
    - gf_node_get_class_name
    - dom_node_get_sibling
    - dom_node_construct
    - gf_node_get_parent
    - dom_get_node
    - dom_element_construct
    - node_get_local_name
    - gf_xml_get_element_namespace
    - gf_sg_get_namespace_qname
    - JS_NewString
    - JS_NewInt32
    - gf_node_list_get_child
    - gf_dom_flatten_textContent
    - gf_sg_get_namespace_code
    - node_lookup_namespace_by_tag
    - dom_document_construct
    - gf_sg_get_namespace
    - dom_nodelist_construct
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_node_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dom_set_textContent
      Src: /src/gpac/src/scenegraph/dom_js.c:1395,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/scenegraph/dom_js.c:1397,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/dom_js.c:1398,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/dom_js.c:1400,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - n
    - text
    argTypes:
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1401
      start: 1392
    functionDepth: 11
    functionLinenumber: 1392
    functionLinenumberEnd: 1401
    functionName: dom_node_set_textContent
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_node_dirty_set
    - memset
    - gf_node_changed
    - gf_dom_set_textContent
    linkageType: ''
    returnType: void
    signature: void dom_node_set_textContent(GF_Node *n, char *text)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1408,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1410,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:1412,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:1415,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:1418,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1419,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_js.c:1420,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1421,1
    - Dst: dom_node_changed
      Src: /src/gpac/src/scenegraph/dom_js.c:1422,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1431,1
    - Dst: dom_node_set_textContent
      Src: /src/gpac/src/scenegraph/dom_js.c:1432,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1433,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1439
      start: 1403
    functionDepth: 12
    functionLinenumber: 1403
    functionLinenumberEnd: 1439
    functionName: dom_node_setProperty
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_free
    - JS_ToCString
    - gf_strdup
    - dom_node_changed
    - dom_node_set_textContent
    - JS_CHECK_STRING
    - GF_JS_EXCEPTION
    - dom_get_node
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_node_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:1450,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:1455,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/scenegraph/dom_js.c:1456,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:1457,1
    - Dst: gf_sg_del
      Src: /src/gpac/src/scenegraph/dom_js.c:1469,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1471
      start: 1446
    functionDepth: 3
    functionLinenumber: 1446
    functionLinenumberEnd: 1471
    functionName: dom_document_finalize
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_SetOpaque
    - JS_FreeValueRT
    - gf_sg_del
    - JS_GetAnyOpaque
    linkageType: ''
    returnType: void
    signature: void dom_document_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_doc
      Src: /src/gpac/src/scenegraph/dom_js.c:1475,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1476,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/scenegraph/dom_js.c:1482,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/scenegraph/dom_js.c:1483,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/dom_js.c:1484,1
    - Dst: dom_element_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:1489,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/scenegraph/dom_js.c:1492,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 24
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1506
      start: 1473
    functionDepth: 5
    functionLinenumber: 1473
    functionLinenumberEnd: 1506
    functionName: dom_document_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_GetGlobalObject
    - dom_get_doc
    - dom_element_construct
    - JS_FreeValue
    - JS_GetPropertyStr
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_document_getProperty(JSContext *c, JSValueConst obj, int
      magic)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_doc
      Src: /src/gpac/src/scenegraph/dom_js.c:1510,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1511,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/dom_js.c:1512,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1513
      start: 1508
    functionDepth: 2
    functionLinenumber: 1508
    functionLinenumberEnd: 1513
    functionName: dom_document_setProperty
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - dom_get_doc
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_document_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_doc
      Src: /src/gpac/src/scenegraph/dom_js.c:1521,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:1523,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1524,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:1531,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1531,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1532,1
    - Dst: gf_sg_get_namespace_code_from_name
      Src: /src/gpac/src/scenegraph/dom_js.c:1533,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1534,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1536,1
    - Dst: gf_xml_get_element_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:1542,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scenegraph/dom_js.c:1544,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_js.c:1547,1
    - Dst: gf_sg_add_namespace
      Src: /src/gpac/src/scenegraph/dom_js.c:1549,1
    - Dst: gf_sg_get_namespace_code_from_name
      Src: /src/gpac/src/scenegraph/dom_js.c:1550,1
    - Dst: dom_element_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:1553,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1555,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1556,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 33
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1558
      start: 1515
    functionDepth: 5
    functionLinenumber: 1515
    functionLinenumberEnd: 1558
    functionName: xml_document_create_element
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - dom_get_doc
    - gf_strdup
    - dom_element_construct
    - JS_CHECK_STRING
    - gf_sg_get_namespace_code_from_name
    - gf_node_new
    - GF_JS_EXCEPTION
    - gf_xml_get_element_tag
    - gf_sg_add_namespace
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_document_create_element(JSContext *c, JSValueConst obj,
      int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_doc
      Src: /src/gpac/src/scenegraph/dom_js.c:1563,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1564,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scenegraph/dom_js.c:1566,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1568,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_js.c:1569,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1571,1
    - Dst: dom_text_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:1573,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1574
      start: 1560
    functionDepth: 5
    functionLinenumber: 1560
    functionLinenumberEnd: 1574
    functionName: xml_document_create_text
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - dom_get_doc
    - gf_strdup
    - dom_text_construct
    - gf_node_new
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_document_create_text(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scenegraph/dom_js.c:1582,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:1583,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/dom_js.c:1586,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scenegraph/dom_js.c:1589,1
    - Dst: xml_doc_gather_nodes
      Src: /src/gpac/src/scenegraph/dom_js.c:1594,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 3
    argNames:
    - node
    - name
    - nl
    argTypes:
    - GF_ParentNode*
    - char*
    - DOMNodeList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1597
      start: 1576
    functionDepth: 2
    functionLinenumber: 1576
    functionLinenumberEnd: 1597
    functionName: xml_doc_gather_nodes
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 1
    functionsReached:
    - gf_node_get_class_name
    - strcmp
    - xml_doc_gather_nodes
    - gf_node_register
    - gf_node_list_add_child
    linkageType: ''
    returnType: void
    signature: void xml_doc_gather_nodes(GF_ParentNode *node, char *name, DOMNodeList
      *nl)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_doc
      Src: /src/gpac/src/scenegraph/dom_js.c:1604,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1605,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:1607,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1607,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:1611,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1611,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1612,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1614,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/dom_js.c:1617,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1618,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:1620,1
    - Dst: xml_doc_gather_nodes
      Src: /src/gpac/src/scenegraph/dom_js.c:1621,1
    - Dst: xml_doc_gather_nodes
      Src: /src/gpac/src/scenegraph/dom_js.c:1623,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/dom_js.c:1624,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:1625,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1626,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1628
      start: 1599
    functionDepth: 3
    functionLinenumber: 1599
    functionLinenumberEnd: 1628
    functionName: xml_document_elements_by_tag
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - dom_get_doc
    - JS_NewObjectClass
    - GF_SAFEALLOC
    - JS_SetOpaque
    - JS_CHECK_STRING
    - strcmp
    - xml_doc_gather_nodes
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_document_elements_by_tag(JSContext *c, JSValueConst obj,
      int argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_doc
      Src: /src/gpac/src/scenegraph/dom_js.c:1638,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1639,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:1640,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1640,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1641,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:1648,1
    - Dst: dom_element_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:1656,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1657,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 20
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1659
      start: 1631
    functionDepth: 5
    functionLinenumber: 1631
    functionLinenumberEnd: 1659
    functionName: xml_document_element_by_id
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - dom_get_doc
    - dom_element_construct
    - JS_CHECK_STRING
    - strcmp
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_document_element_by_id(JSContext *c, JSValueConst obj,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dom_node_finalize
      Src: /src/gpac/src/scenegraph/dom_js.c:1664,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1665
      start: 1662
    functionDepth: 5
    functionLinenumber: 1662
    functionLinenumberEnd: 1665
    functionName: dom_element_finalize
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - dom_node_finalize
    linkageType: ''
    returnType: void
    signature: void dom_element_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1669,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:1674,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scenegraph/dom_js.c:1674,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1681
      start: 1667
    functionDepth: 2
    functionLinenumber: 1667
    functionLinenumberEnd: 1681
    functionName: dom_element_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - dom_get_node
    - gf_node_get_class_name
    - JS_NewString
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_element_getProperty(JSContext *c, JSValueConst obj, int
      magic)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1689,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1690,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:1692,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:1697,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1699,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1700,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1702,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:1707,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:1707,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scenegraph/dom_js.c:1708,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:1710,1
    - Dst: gf_sg_get_namespace_code_from_name
      Src: /src/gpac/src/scenegraph/dom_js.c:1718,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:1722,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/dom_js.c:1725,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:1726,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:1729,1
    - Dst: strncmp
      Src: /src/gpac/src/scenegraph/dom_js.c:1729,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:1734,1
    - Dst: gf_sg_get_namespace_code_from_name
      Src: /src/gpac/src/scenegraph/dom_js.c:1747,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/scenegraph/dom_js.c:1748,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/dom_js.c:1748,1
    - Dst: gf_xml_get_element_namespace
      Src: /src/gpac/src/scenegraph/dom_js.c:1751,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/src/scenegraph/dom_js.c:1754,1
    - Dst: gf_svg_dump_attribute
      Src: /src/gpac/src/scenegraph/dom_js.c:1755,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:1756,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:1757,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:1761,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1763,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1764,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 68
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1766
      start: 1683
    functionDepth: 4
    functionLinenumber: 1683
    functionLinenumberEnd: 1766
    functionName: xml_element_get_attribute
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - gf_node_get_attribute_by_name
    - gf_node_get_name
    - gf_xml_get_element_namespace
    - JS_NewString
    - JS_CHECK_STRING
    - gf_svg_dump_attribute
    - gf_sg_get_namespace_code_from_name
    - strcmp
    - strncmp
    - GF_JS_EXCEPTION
    - dom_get_node
    - strchr
    - gf_crc_32
    - strlen
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_element_get_attribute(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1774,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1775,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:1777,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1777,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:1781,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1781,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1782,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1783,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1785,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:1793,1
    - Dst: gf_sg_get_namespace_code_from_name
      Src: /src/gpac/src/scenegraph/dom_js.c:1805,1
    - Dst: gf_sg_get_namespace_code
      Src: /src/gpac/src/scenegraph/dom_js.c:1806,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/src/scenegraph/dom_js.c:1808,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1815,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1816,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 45
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1818
      start: 1768
    functionDepth: 4
    functionLinenumber: 1768
    functionLinenumberEnd: 1818
    functionName: xml_element_has_attribute
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - gf_node_get_attribute_by_name
    - JS_CHECK_STRING
    - JS_FreeCString
    - gf_sg_get_namespace_code_from_name
    - strcmp
    - GF_JS_EXCEPTION
    - dom_get_node
    - gf_sg_get_namespace_code
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_element_has_attribute(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1829,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1830,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:1832,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1832,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:1836,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:1836,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1837,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1838,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1840,1
    - Dst: gf_sg_get_namespace_code_from_name
      Src: /src/gpac/src/scenegraph/dom_js.c:1854,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/dom_js.c:1855,1
    - Dst: gf_sg_get_namespace_code
      Src: /src/gpac/src/scenegraph/dom_js.c:1856,1
    - Dst: gf_xml_get_attribute_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:1858,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:1863,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:1868,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:1869,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:1870,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:1871,1
    - Dst: dom_node_changed
      Src: /src/gpac/src/scenegraph/dom_js.c:1872,1
    - Dst: gf_svg_delete_attribute_value
      Src: /src/gpac/src/scenegraph/dom_js.c:1878,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:1879,1
    - Dst: dom_node_changed
      Src: /src/gpac/src/scenegraph/dom_js.c:1880,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1887,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:1888,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 69
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1890
      start: 1822
    functionDepth: 12
    functionLinenumber: 1822
    functionLinenumberEnd: 1890
    functionName: xml_element_remove_attribute
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - dom_node_changed
    - JS_CHECK_STRING
    - JS_FreeCString
    - gf_sg_get_namespace_code_from_name
    - strcmp
    - GF_JS_EXCEPTION
    - gf_xml_get_attribute_tag
    - dom_get_node
    - strchr
    - gf_sg_get_namespace_code
    - gf_svg_delete_attribute_value
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_element_remove_attribute(JSContext *c, JSValueConst obj,
      int argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_dom_listener_count
      Src: /src/gpac/src/scenegraph/dom_js.c:1896,1
    - Dst: gf_dom_listener_get
      Src: /src/gpac/src/scenegraph/dom_js.c:1900,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:1902,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:1907,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/dom_js.c:1909,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:1915,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_js.c:1916,1
    - Dst: gf_dom_listener_build
      Src: /src/gpac/src/scenegraph/dom_js.c:1921,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/scenegraph/dom_js.c:1922,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_js.c:1922,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 3
    argNames:
    - n
    - evtType
    - handlerCode
    argTypes:
    - GF_Node*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1924
      start: 1892
    functionDepth: 5
    functionLinenumber: 1892
    functionLinenumberEnd: 1924
    functionName: gf_dom_add_handler_listener
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_assert
    - gf_strdup
    - gf_dom_listener_build
    - gf_node_get_attribute_by_tag
    - gf_dom_add_text_node
    - gf_dom_listener_count
    - gf_dom_listener_get
    linkageType: ''
    returnType: void
    signature: void gf_dom_add_handler_listener(GF_Node *n, u32 evtType, char *handlerCode)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:1931,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:1935,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_js.c:1936,1
    - Dst: dom_node_changed
      Src: /src/gpac/src/scenegraph/dom_js.c:1937,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/dom_js.c:1939,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/dom_js.c:1947,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/dom_js.c:1949,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_js.c:1953,1
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/scenegraph/dom_js.c:1955,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_js.c:1956,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 3
    argNames:
    - node
    - attribute_name
    - attribute_content
    argTypes:
    - GF_DOMFullNode*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1961
      start: 1926
    functionDepth: 12
    functionLinenumber: 1926
    functionLinenumberEnd: 1961
    functionName: gf_dom_full_set_attribute
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - dom_node_changed
    - gf_strdup
    - gf_assert
    - GF_SAFEALLOC
    - GF_LOG
    - gf_svg_create_attribute_value
    - strcmp
    linkageType: ''
    returnType: void
    signature: void gf_dom_full_set_attribute(GF_DOMFullNode *node, char *attribute_name,
      char *attribute_content)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:1968,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:1969,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/dom_js.c:1977,1
    - Dst: gf_sg_get_namespace_code
      Src: /src/gpac/src/scenegraph/dom_js.c:1980,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_js.c:1982,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:1983,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/dom_js.c:1990,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/dom_js.c:1990,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:1991,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/dom_js.c:1992,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/src/scenegraph/dom_js.c:2020,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:2022,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:2022,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:2022,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_js.c:2025,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/dom_js.c:2026,1
    - Dst: gf_smil_anim_get_target
      Src: /src/gpac/src/scenegraph/dom_js.c:2032,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/src/scenegraph/dom_js.c:2034,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/dom_js.c:2037,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/scenegraph/dom_js.c:2044,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/dom_js.c:2046,1
    - Dst: gf_svg_parse_element_id
      Src: /src/gpac/src/scenegraph/dom_js.c:2051,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/scenegraph/dom_js.c:2054,1
    - Dst: dom_node_changed
      Src: /src/gpac/src/scenegraph/dom_js.c:2056,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 75
    argCount: 4
    argNames:
    - n
    - ns_code
    - name
    - val
    argTypes:
    - GF_Node*
    - u32
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2059
      start: 1963
    functionDepth: 12
    functionLinenumber: 1963
    functionLinenumberEnd: 2059
    functionName: gf_svg_set_attributeNS
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_svg_parse_attribute
    - gf_strdup
    - dom_node_changed
    - gf_node_get_attribute_by_tag
    - gf_svg_parse_element_id
    - GF_LOG
    - gf_node_dirty_set
    - strstr
    - gf_smil_anim_get_target
    - strcmp
    - gf_node_get_attribute_by_name
    - strchr
    - gf_sg_get_namespace_code
    linkageType: ''
    returnType: void
    signature: void gf_svg_set_attributeNS(GF_Node *n, u32 ns_code, char *name, char
      *val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_namespace_code_from_name
      Src: /src/gpac/src/scenegraph/dom_js.c:2065,1
    - Dst: gf_xml_get_element_namespace
      Src: /src/gpac/src/scenegraph/dom_js.c:2067,1
    - Dst: gf_svg_set_attributeNS
      Src: /src/gpac/src/scenegraph/dom_js.c:2069,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - n
    - ns
    - name
    - val
    argTypes:
    - GF_Node*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2070
      start: 2061
    functionDepth: 13
    functionLinenumber: 2061
    functionLinenumberEnd: 2070
    functionName: gf_svg_set_attribute
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_xml_get_element_namespace
    - gf_svg_set_attributeNS
    - gf_sg_get_namespace_code_from_name
    linkageType: ''
    returnType: void
    signature: void gf_svg_set_attribute(GF_Node *n, char * ns, char *name, char *val)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:2078,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:2079,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:2080,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:2082,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:2083,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:2091,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:2092,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:2093,1
    - Dst: gf_sg_add_namespace
      Src: /src/gpac/src/scenegraph/dom_js.c:2094,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:2095,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/dom_js.c:2098,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:2102,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:2106,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:2107,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/scenegraph/dom_js.c:2108,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/dom_js.c:2109,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/scenegraph/dom_js.c:2109,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/scenegraph/dom_js.c:2111,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/dom_js.c:2113,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/dom_js.c:2114,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/scenegraph/dom_js.c:2116,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2118,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/dom_js.c:2119,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/src/scenegraph/dom_js.c:2130,1
    - Dst: gf_dom_add_handler_listener
      Src: /src/gpac/src/scenegraph/dom_js.c:2132,1
    - Dst: gf_dom_full_set_attribute
      Src: /src/gpac/src/scenegraph/dom_js.c:2138,1
    - Dst: gf_svg_set_attribute
      Src: /src/gpac/src/scenegraph/dom_js.c:2147,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:2150,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:2151,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:2152,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 72
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2154
      start: 2072
    functionDepth: 14
    functionLinenumber: 2072
    functionLinenumberEnd: 2154
    functionName: xml_element_set_attribute
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsNumber
    - gf_dom_event_type_by_name
    - sprintf
    - JS_IsInteger
    - JS_CHECK_STRING
    - JS_ToBool
    - JS_FreeCString
    - gf_dom_full_set_attribute
    - JS_ToInt32
    - JS_ToFloat64
    - gf_svg_set_attribute
    - gf_sg_add_namespace
    - GF_JS_EXCEPTION
    - dom_get_node
    - strchr
    - JS_IsBool
    - gf_dom_add_handler_listener
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_element_set_attribute(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:2163,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:2164,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:2166,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:2166,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:2170,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:2170,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:2171,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:2173,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/dom_js.c:2175,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:2176,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:2178,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:2179,1
    - Dst: xml_doc_gather_nodes
      Src: /src/gpac/src/scenegraph/dom_js.c:2182,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/dom_js.c:2183,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:2184,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:2185,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2187
      start: 2157
    functionDepth: 3
    functionLinenumber: 2157
    functionLinenumberEnd: 2187
    functionName: xml_element_elements_by_tag
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_NewObjectClass
    - GF_SAFEALLOC
    - JS_SetOpaque
    - JS_CHECK_STRING
    - strcmp
    - xml_doc_gather_nodes
    - GF_JS_EXCEPTION
    - dom_get_node
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_element_elements_by_tag(JSContext *c, JSValueConst obj,
      int argc, JSValueConst *argv)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:2195,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:2196,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:2198,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:2198,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:2202,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:2202,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:2203,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/scenegraph/dom_js.c:2204,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:2206,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/scenegraph/dom_js.c:2207,1
    - Dst: gf_node_get_name_and_id
      Src: /src/gpac/src/scenegraph/dom_js.c:2209,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:2212,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:2213,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:2216,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scenegraph/dom_js.c:2217,1
    - Dst: gf_sg_get_max_node_id
      Src: /src/gpac/src/scenegraph/dom_js.c:2217,1
    - Dst: gf_node_remove_id
      Src: /src/gpac/src/scenegraph/dom_js.c:2219,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:2221,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2223
      start: 2189
    functionDepth: 2
    functionLinenumber: 2189
    functionLinenumberEnd: 2223
    functionName: xml_element_set_id
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - gf_node_set_id
    - JS_ToBool
    - JS_CHECK_STRING
    - gf_node_get_name_and_id
    - gf_sg_get_max_node_id
    - GF_JS_EXCEPTION
    - gf_node_remove_id
    - dom_get_node
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_element_set_id(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/dom_js.c:2228,1
    - Dst: gather_text
      Src: /src/gpac/src/scenegraph/dom_js.c:2232,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - n
    - out_str
    argTypes:
    - GF_ParentNode*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2236
      start: 2224
    functionDepth: 1
    functionLinenumber: 2224
    functionLinenumberEnd: 2236
    functionName: gather_text
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 1
    functionsReached:
    - gf_dynstrcat
    - gather_text
    linkageType: ''
    returnType: void
    signature: void gather_text(GF_ParentNode *n, char **out_str)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:2241,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:2242,1
    - Dst: gather_text
      Src: /src/gpac/src/scenegraph/dom_js.c:2247,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scenegraph/dom_js.c:2251,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:2253,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:2256,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:2257,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2259
      start: 2237
    functionDepth: 2
    functionLinenumber: 2237
    functionLinenumberEnd: 2259
    functionName: xml_element_to_string
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_class_name
    - gather_text
    - JS_NewString
    - GF_JS_EXCEPTION
    - dom_get_node
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_element_to_string(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:2264,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:2265,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:2269,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:2270,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2273,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/dom_js.c:2273,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:2280,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:2281,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2284
      start: 2262
    functionDepth: 2
    functionLinenumber: 2262
    functionLinenumberEnd: 2284
    functionName: dom_text_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_NewString
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - dom_get_node
    - strlen
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_text_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:2288,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:2289,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:2293,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/scenegraph/dom_js.c:2295,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/dom_js.c:2296,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_js.c:2297,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/dom_js.c:2298,1
    - Dst: dom_node_changed
      Src: /src/gpac/src/scenegraph/dom_js.c:2300,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2305
      start: 2286
    functionDepth: 12
    functionLinenumber: 2286
    functionLinenumberEnd: 2305
    functionName: dom_text_setProperty
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - gf_strdup
    - dom_node_changed
    - JS_CHECK_STRING
    - GF_JS_EXCEPTION
    - dom_get_node
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_text_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:2309,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:2310,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2313
      start: 2307
    functionDepth: 1
    functionLinenumber: 2307
    functionLinenumberEnd: 2313
    functionName: event_stop_propagation
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue event_stop_propagation(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:2316,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:2317,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2320
      start: 2314
    functionDepth: 1
    functionLinenumber: 2314
    functionLinenumberEnd: 2320
    functionName: event_stop_immediate_propagation
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue event_stop_immediate_propagation(JSContext *c, JSValueConst
      obj, int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:2323,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/dom_js.c:2324,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2327
      start: 2321
    functionDepth: 1
    functionLinenumber: 2321
    functionLinenumberEnd: 2327
    functionName: event_prevent_default
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue event_prevent_default(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 58
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:2331,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:2336,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/src/scenegraph/dom_js.c:2336,1
    - Dst: dom_element_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:2342,1
    - Dst: dom_document_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:2345,1
    - Dst: OBJECT_TO_JSValue
      Src: /src/gpac/src/scenegraph/dom_js.c:2349,1
    - Dst: OBJECT_TO_JSValue
      Src: /src/gpac/src/scenegraph/dom_js.c:2351,1
    - Dst: OBJECT_TO_JSValue
      Src: /src/gpac/src/scenegraph/dom_js.c:2353,1
    - Dst: dom_element_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:2363,1
    - Dst: dom_document_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:2365,1
    - Dst: OBJECT_TO_JSValue
      Src: /src/gpac/src/scenegraph/dom_js.c:2368,1
    - Dst: OBJECT_TO_JSValue
      Src: /src/gpac/src/scenegraph/dom_js.c:2370,1
    - Dst: OBJECT_TO_JSValue
      Src: /src/gpac/src/scenegraph/dom_js.c:2373,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2380,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2397,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/scenegraph/dom_js.c:2408,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:2411,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2415,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2417,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2419,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2421,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2423,1
    - Dst: dom_element_construct
      Src: /src/gpac/src/scenegraph/dom_js.c:2426,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2428,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/dom_js.c:2428,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:2430,1
    - Dst: gf_dom_get_key_name
      Src: /src/gpac/src/scenegraph/dom_js.c:2430,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2434,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/scenegraph/dom_js.c:2436,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/scenegraph/dom_js.c:2438,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2442,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/dom_js.c:2444,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2446,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/dom_js.c:2450,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/dom_js.c:2450,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/dom_js.c:2452,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/dom_js.c:2452,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/dom_js.c:2454,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/dom_js.c:2454,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/dom_js.c:2456,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/dom_js.c:2456,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/dom_js.c:2458,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/dom_js.c:2458,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/dom_js.c:2460,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/dom_js.c:2460,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/dom_js.c:2462,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/dom_js.c:2462,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/dom_js.c:2464,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/dom_js.c:2464,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2466,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2468,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2470,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/dom_js.c:2472,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 128
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2478
      start: 2329
    functionDepth: 5
    functionLinenumber: 2329
    functionLinenumberEnd: 2478
    functionName: event_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - dom_element_construct
    - dom_document_construct
    - gf_utf8_wcstombs
    - JS_NewFloat64
    - JS_GetOpaque
    - JS_NewString
    - gf_dom_event_get_name
    - FIX2INT
    - gf_dom_get_key_name
    - JS_NewInt64
    - JS_NewInt32
    - OBJECT_TO_JSValue
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue event_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - _class
    - ','
    - _name
    - ','
    - _proto_funcs
    - ','
    - _construct
    - ','
    - _finalize
    - ','
    - _proto_class_id
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2496
      start: 2481
    functionDepth: 0
    functionLinenumber: 2481
    functionLinenumberEnd: 2496
    functionName: SETUP_JSCLASS
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SETUP_JSCLASS(_class, _name, _proto_funcs, _construct, _finalize, _proto_class_id)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:2699,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/dom_js.c:2702,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/scenegraph/dom_js.c:2703,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 3
    argNames:
    - rt
    - obj
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2704
      start: 2695
    functionDepth: 1
    functionLinenumber: 2695
    functionLinenumberEnd: 2704
    functionName: domDocument_gc_mark
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_MarkValue
    - JS_GetAnyOpaque
    - JS_IsUndefined
    linkageType: ''
    returnType: void
    signature: void domDocument_gc_mark(JSRuntime *rt, JSValueConst obj, JS_MarkFunc
      *mark_func)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:2708,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/dom_js.c:2713,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/scenegraph/dom_js.c:2714,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 7
    argCount: 3
    argNames:
    - rt
    - obj
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2715
      start: 2705
    functionDepth: 1
    functionLinenumber: 2705
    functionLinenumberEnd: 2715
    functionName: domElement_gc_mark
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_MarkValue
    - JS_GetAnyOpaque
    - JS_IsUndefined
    linkageType: ''
    returnType: void
    signature: void domElement_gc_mark(JSRuntime *rt, JSValueConst obj, JS_MarkFunc
      *mark_func)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/scenegraph/dom_js.c:2720,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/scenegraph/dom_js.c:2721,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/dom_js.c:2724,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/dom_js.c:2726,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/dom_js.c:2729,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/dom_js.c:2730,1
    - Dst: define_dom_exception
      Src: /src/gpac/src/scenegraph/dom_js.c:2734,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/dom_js.c:2737,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/dom_js.c:2738,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2738,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/dom_js.c:2739,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2739,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/dom_js.c:2740,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2740,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/dom_js.c:2741,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2741,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/dom_js.c:2744,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/dom_js.c:2746,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/dom_js.c:2748,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/dom_js.c:2750,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/dom_js.c:2751,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2751,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/dom_js.c:2752,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2752,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/dom_js.c:2753,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2753,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/dom_js.c:2754,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2754,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/dom_js.c:2755,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2755,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/dom_js.c:2756,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2756,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/dom_js.c:2757,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/dom_js.c:2757,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/dom_js.c:2760,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/dom_js.c:2762,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 34
    argCount: 2
    argNames:
    - scene
    - c
    argTypes:
    - GF_SceneGraph*
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2763
      start: 2717
    functionDepth: 2
    functionLinenumber: 2717
    functionLinenumberEnd: 2763
    functionName: dom_js_load
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - SETUP_JSCLASS
    - JS_GetGlobalObject
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - JS_FreeValue
    - JS_NewInt32
    - define_dom_exception
    - JS_SetPropertyStr
    - JS_GetRuntime
    linkageType: ''
    returnType: void
    signature: void dom_js_load(GF_SceneGraph *scene, JSContext *c)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/dom_js.c:2774,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:2775,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/dom_js.c:2776,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:2777,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/scenegraph/dom_js.c:2778,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/dom_js.c:2787,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/dom_js.c:2789,1
    - Dst: dom_get_node
      Src: /src/gpac/src/scenegraph/dom_js.c:2790,1
    - Dst: html_media_element_js_finalize
      Src: /src/gpac/src/scenegraph/dom_js.c:2794,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:2797,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/scenegraph/dom_js.c:2798,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/dom_js.c:2800,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/dom_js.c:2802,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/dom_js.c:2805,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/dom_js.c:2807,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/scenegraph/dom_js.c:2813,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:2814,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/dom_js.c:2816,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/dom_js.c:2822,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:2824,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/scenegraph/dom_js.c:2825,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:2827,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 46
    argCount: 3
    argNames:
    - rt
    - sg
    - n
    argTypes:
    - JSRuntime*
    - GF_SceneGraph*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2830
      start: 2769
    functionDepth: 3
    functionLinenumber: 2769
    functionLinenumberEnd: 2830
    functionName: gf_sg_js_dom_pre_destroy
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - html_media_element_js_finalize
    - JS_SetOpaque
    - JS_FreeValueRT
    - JS_IsUndefined
    - gf_list_count
    - gf_list_del_item
    - gf_node_unregister
    - dom_get_node
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_js_dom_pre_destroy(JSRuntime *rt, GF_SceneGraph *sg,
      GF_Node *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/dom_js.c:2837,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:2838,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2841
      start: 2832
    functionDepth: 1
    functionLinenumber: 2832
    functionLinenumberEnd: 2841
    functionName: dom_js_unload
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void dom_js_unload()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/scenegraph/dom_js.c:2845,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/dom_js.c:2847,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/dom_js.c:2848,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/dom_js.c:2850,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - c
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2852
      start: 2843
    functionDepth: 1
    functionLinenumber: 2843
    functionLinenumberEnd: 2852
    functionName: dom_js_define_event
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_GetGlobalObject
    - JS_FreeValue
    - JS_SetPropertyStr
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_js_define_event(JSContext *c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/dom_js.c:2855,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2856
      start: 2853
    functionDepth: 1
    functionLinenumber: 2853
    functionLinenumberEnd: 2856
    functionName: dom_get_evt_private
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    linkageType: ''
    returnType: GF_DOM_Event
    signature: GF_DOM_Event *dom_get_evt_private(JSValue v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/dom_js.c:2860,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2861
      start: 2858
    functionDepth: 1
    functionLinenumber: 2858
    functionLinenumberEnd: 2861
    functionName: gf_dom_new_event
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    linkageType: ''
    returnType: JSValue
    signature: JSValue gf_dom_new_event(JSContext *c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2866
      start: 2863
    functionDepth: 0
    functionLinenumber: 2863
    functionLinenumberEnd: 2866
    functionName: dom_js_get_element_proto
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: JSClassID
    signature: JSClassID dom_js_get_element_proto(JSContext *c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2870
      start: 2867
    functionDepth: 0
    functionLinenumber: 2867
    functionLinenumberEnd: 2870
    functionName: dom_js_get_document_proto
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSClassID
    signature: JSClassID dom_js_get_document_proto(JSContext *c)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/dom_js.c:2888,1
    - Dst: gf_xml_sax_new
      Src: /src/gpac/src/scenegraph/dom_js.c:2891,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/dom_js.c:2892,1
    - Dst: gf_sg_new
      Src: /src/gpac/src/scenegraph/dom_js.c:2893,1
    - Dst: gf_xml_sax_parse_file
      Src: /src/gpac/src/scenegraph/dom_js.c:2895,1
    - Dst: gf_xml_sax_del
      Src: /src/gpac/src/scenegraph/dom_js.c:2896,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/dom_js.c:2897,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:2898,1
    - Dst: gf_sg_del
      Src: /src/gpac/src/scenegraph/dom_js.c:2902,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 2
    argNames:
    - src
    - scene
    argTypes:
    - char*
    - GF_SceneGraph**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2910
      start: 2881
    functionDepth: 3
    functionLinenumber: 2881
    functionLinenumberEnd: 2910
    functionName: gf_sg_new_from_xml_doc
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sg_new
    - gf_list_new
    - gf_sg_del
    - GF_SAFEALLOC
    - gf_xml_sax_del
    - gf_xml_sax_parse_file
    - gf_xml_sax_new
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sg_new_from_xml_doc(const char *src, GF_SceneGraph **scene)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/scenegraph/dom_js.c:2938,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:2946,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:2947,1
    - Dst: gf_sg_get_namespace
      Src: /src/gpac/src/scenegraph/dom_js.c:2947,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:2950,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_js.c:2951,1
    - Dst: gf_sg_add_namespace
      Src: /src/gpac/src/scenegraph/dom_js.c:2954,1
    - Dst: gf_sg_get_namespace_code_from_name
      Src: /src/gpac/src/scenegraph/dom_js.c:2955,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:2966,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:2967,1
    - Dst: gf_sg_get_namespace
      Src: /src/gpac/src/scenegraph/dom_js.c:2967,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scenegraph/dom_js.c:2978,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_js.c:2979,1
    - Dst: gf_sg_add_namespace
      Src: /src/gpac/src/scenegraph/dom_js.c:2981,1
    - Dst: gf_sg_get_namespace_code
      Src: /src/gpac/src/scenegraph/dom_js.c:2982,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scenegraph/dom_js.c:2985,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/dom_js.c:2986,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scenegraph/dom_js.c:2987,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/dom_js.c:2991,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/dom_js.c:2999,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scenegraph/dom_js.c:3000,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:3001,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:3003,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:3005,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:3007,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_js.c:3008,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:3028,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:3029,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:3032,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/dom_js.c:3037,1
    - Dst: gf_sg_get_max_node_id
      Src: /src/gpac/src/scenegraph/dom_js.c:3038,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scenegraph/dom_js.c:3039,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/dom_js.c:3042,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/dom_js.c:3044,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_js.c:3048,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_js.c:3049,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/dom_js.c:3059,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/scenegraph/dom_js.c:3063,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 115
    argCount: 5
    argNames:
    - sax_cbck
    - node_name
    - name_space
    - attributes
    - nb_attributes
    argTypes:
    - void*
    - char*
    - char*
    - GF_XMLAttribute*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3065
      start: 2925
    functionDepth: 9
    functionLinenumber: 2925
    functionLinenumberEnd: 3065
    functionName: xml_reload_node_start
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - memset
    - gf_sg_add_namespace
    - gf_strdup
    - gf_node_get_name
    - gf_node_set_id
    - gf_sg_get_max_node_id
    - gf_list_add
    - stricmp
    - gf_node_list_add_child
    - GF_LOG
    - gf_dom_event_fire
    - gf_sg_get_namespace_code_from_name
    - gf_node_new
    - gf_list_last
    - gf_sg_get_namespace_code
    - gf_sg_get_namespace
    - strcmp
    - gf_node_register
    linkageType: ''
    returnType: void
    signature: void xml_reload_node_start(void *sax_cbck, const char *node_name, const
      char *name_space, const GF_XMLAttribute *attributes, u32 nb_attributes)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/scenegraph/dom_js.c:3070,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:3073,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scenegraph/dom_js.c:3074,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - sax_cbck
    - node_name
    - name_space
    argTypes:
    - void*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3076
      start: 3067
    functionDepth: 1
    functionLinenumber: 3067
    functionLinenumberEnd: 3076
    functionName: xml_reload_node_end
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - strcmp
    - gf_list_last
    - gf_list_rem_last
    linkageType: ''
    returnType: void
    signature: void xml_reload_node_end(void *sax_cbck, const char *node_name, const
      char *name_space)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/scenegraph/dom_js.c:3084,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/dom_js.c:3088,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/dom_js.c:3090,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/dom_js.c:3098,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_js.c:3100,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_js.c:3101,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/scenegraph/dom_js.c:3108,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_js.c:3108,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/dom_js.c:3111,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/scenegraph/dom_js.c:3115,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/dom_js.c:3118,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/scenegraph/dom_js.c:3122,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/dom_js.c:3124,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/scenegraph/dom_js.c:3128,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 43
    argCount: 3
    argNames:
    - sax_cbck
    - content
    - is_cdata
    argTypes:
    - void*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3129
      start: 3077
    functionDepth: 9
    functionLinenumber: 3077
    functionLinenumberEnd: 3129
    functionName: xml_reload_text_content
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_dom_add_text_node
    - gf_dom_event_fire
    - memset
    - strcmp
    - strchr
    - gf_list_last
    - strlen
    linkageType: ''
    returnType: void
    signature: void xml_reload_text_content(void *sax_cbck, const char *content, Bool
      is_cdata)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/scenegraph/dom_js.c:3137,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/dom_js.c:3139,1
    - Dst: gf_xml_sax_new
      Src: /src/gpac/src/scenegraph/dom_js.c:3141,1
    - Dst: gf_xml_sax_parse_file
      Src: /src/gpac/src/scenegraph/dom_js.c:3142,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/dom_js.c:3143,1
    - Dst: gf_xml_sax_del
      Src: /src/gpac/src/scenegraph/dom_js.c:3144,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - src
    - scene
    argTypes:
    - char*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3147
      start: 3131
    functionDepth: 1
    functionLinenumber: 3131
    functionLinenumberEnd: 3147
    functionName: gf_sg_reload_xml_doc
    functionSourceFile: /src/gpac/src/scenegraph/dom_js.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - memset
    - gf_xml_sax_del
    - gf_xml_sax_parse_file
    - gf_xml_sax_new
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sg_reload_xml_doc(const char *src, GF_SceneGraph *scene)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - rti
    - normalized_scene_time
    - state
    argTypes:
    - SMIL_Timing_RTI*
    - Fixed
    - GF_SGSMILTimingEvalState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionName: gf_smil_timing_null_timed_function
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_smil_timing_null_timed_function(SMIL_Timing_RTI *rti, Fixed
      normalized_scene_time, GF_SGSMILTimingEvalState state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:37,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:37,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_timing.c:37,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:38,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:39,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:40,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:41,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - rti
    - current
    - interval
    argTypes:
    - SMIL_Timing_RTI*
    - Bool
    - SMIL_Interval*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 43
    functionName: gf_smil_timing_print_interval
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 0
    functionsReached:
    - gf_node_get_log_name
    - GF_LOG
    - gf_node_get_scene_time
    linkageType: ''
    returnType: void
    signature: void gf_smil_timing_print_interval(SMIL_Timing_RTI *rti, Bool current,
      SMIL_Interval *interval)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scenegraph/smil_timing.c:57,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/smil_timing.c:75,1
    - Dst: MIN
      Src: /src/gpac/src/scenegraph/smil_timing.c:85,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/smil_timing.c:86,1
    - Dst: MIN
      Src: /src/gpac/src/scenegraph/smil_timing.c:108,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 65
    argCount: 2
    argNames:
    - rti
    - interval
    argTypes:
    - SMIL_Timing_RTI*
    - SMIL_Interval*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 48
    functionDepth: 2
    functionLinenumber: 48
    functionLinenumberEnd: 148
    functionName: gf_smil_timing_compute_active_duration
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - MIN
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void gf_smil_timing_compute_active_duration(SMIL_Timing_RTI *rti, SMIL_Interval
      *interval)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_smil_timing_compute_active_duration
      Src: /src/gpac/src/scenegraph/smil_timing.c:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - rti
    - media_duration
    argTypes:
    - SMIL_Timing_RTI*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 152
    functionDepth: 3
    functionLinenumber: 152
    functionLinenumberEnd: 157
    functionName: gf_smil_set_media_duration
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 0
    functionsReached:
    - gf_smil_timing_compute_active_duration
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_smil_set_media_duration(SMIL_Timing_RTI *rti, Double media_duration)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/smil_timing.c:178,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_timing.c:182,1
    - Dst: GF_SMIL_TIME_IS_CLOCK
      Src: /src/gpac/src/scenegraph/smil_timing.c:183,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - rti
    - interval
    argTypes:
    - SMIL_Timing_RTI*
    - SMIL_Interval*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 197
    functionName: gf_smil_timing_get_interval_end
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - GF_SMIL_TIME_IS_CLOCK
    linkageType: ''
    returnType: void
    signature: void gf_smil_timing_get_interval_end(SMIL_Timing_RTI *rti, SMIL_Interval
      *interval)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/scenegraph/smil_timing.c:204,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/smil_timing.c:206,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_timing.c:208,1
    - Dst: GF_SMIL_TIME_IS_CLOCK
      Src: /src/gpac/src/scenegraph/smil_timing.c:209,1
    - Dst: gf_smil_timing_get_interval_end
      Src: /src/gpac/src/scenegraph/smil_timing.c:226,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:230,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:230,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_timing.c:230,1
    - Dst: gf_smil_timing_compute_active_duration
      Src: /src/gpac/src/scenegraph/smil_timing.c:236,1
    - Dst: gf_smil_timing_print_interval
      Src: /src/gpac/src/scenegraph/smil_timing.c:237,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 1
    argNames:
    - rti
    argTypes:
    - SMIL_Timing_RTI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 199
    functionDepth: 3
    functionLinenumber: 199
    functionLinenumberEnd: 238
    functionName: gf_smil_timing_get_first_interval
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_smil_timing_compute_active_duration
    - GF_SMIL_TIME_IS_CLOCK
    - GF_LOG
    - gf_smil_timing_print_interval
    - gf_list_count
    - memset
    - gf_smil_timing_get_interval_end
    - gf_node_get_log_name
    - gf_node_get_scene_time
    linkageType: ''
    returnType: void
    signature: void gf_smil_timing_get_first_interval(SMIL_Timing_RTI *rti)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/scenegraph/smil_timing.c:245,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/smil_timing.c:248,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_timing.c:250,1
    - Dst: GF_SMIL_TIME_IS_CLOCK
      Src: /src/gpac/src/scenegraph/smil_timing.c:251,1
    - Dst: gf_smil_timing_get_interval_end
      Src: /src/gpac/src/scenegraph/smil_timing.c:260,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:263,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:263,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_timing.c:263,1
    - Dst: gf_smil_timing_compute_active_duration
      Src: /src/gpac/src/scenegraph/smil_timing.c:268,1
    - Dst: gf_smil_timing_print_interval
      Src: /src/gpac/src/scenegraph/smil_timing.c:269,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 4
    argNames:
    - rti
    - current
    - interval
    - scene_time
    argTypes:
    - SMIL_Timing_RTI*
    - Bool
    - SMIL_Interval*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 240
    functionDepth: 3
    functionLinenumber: 240
    functionLinenumberEnd: 274
    functionName: gf_smil_timing_get_next_interval
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_smil_timing_compute_active_duration
    - GF_SMIL_TIME_IS_CLOCK
    - GF_LOG
    - gf_smil_timing_print_interval
    - gf_list_count
    - memset
    - gf_smil_timing_get_interval_end
    - gf_node_get_log_name
    - gf_node_get_scene_time
    linkageType: ''
    returnType: Bool
    signature: Bool gf_smil_timing_get_next_interval(SMIL_Timing_RTI *rti, Bool current,
      SMIL_Interval *interval, Double scene_time)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/smil_timing.c:287,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_timing.c:288,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/scenegraph/smil_timing.c:291,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - sg
    - rti
    argTypes:
    - GF_SceneGraph*
    - SMIL_Timing_RTI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 281
    functionDepth: 1
    functionLinenumber: 281
    functionLinenumberEnd: 295
    functionName: gf_smil_timing_add_to_sg
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_insert
    linkageType: ''
    returnType: Bool
    signature: Bool gf_smil_timing_add_to_sg(GF_SceneGraph *sg, SMIL_Timing_RTI *rti)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/smil_timing.c:305,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scenegraph/smil_timing.c:307,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/smil_timing.c:308,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - rti
    - remove
    argTypes:
    - SMIL_Timing_RTI*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 300
    functionDepth: 1
    functionLinenumber: 300
    functionLinenumberEnd: 311
    functionName: gf_smil_mark_modified
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 0
    functionsReached:
    - gf_list_find
    - gf_list_add
    - gf_list_del_item
    linkageType: ''
    returnType: void
    signature: void gf_smil_mark_modified(SMIL_Timing_RTI *rti, Bool remove)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scenegraph/smil_timing.c:323,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/scenegraph/smil_timing.c:327,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/smil_timing.c:328,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/smil_timing.c:353,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/smil_timing.c:359,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:361,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:366,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:366,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_timing.c:366,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/smil_timing.c:376,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:378,1
    - Dst: gf_smil_timing_get_first_interval
      Src: /src/gpac/src/scenegraph/smil_timing.c:381,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/smil_timing.c:382,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:384,1
    - Dst: gf_smil_timing_get_next_interval
      Src: /src/gpac/src/scenegraph/smil_timing.c:387,1
    - Dst: gf_smil_timing_add_to_sg
      Src: /src/gpac/src/scenegraph/smil_timing.c:394,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 55
    argCount: 1
    argNames:
    - timed_elt
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 317
    functionDepth: 5
    functionLinenumber: 317
    functionLinenumberEnd: 395
    functionName: gf_smil_timing_init_runtime_info
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 3
    functionsReached:
    - gf_node_get_tag
    - gf_smil_timing_get_first_interval
    - gf_svg_flatten_attributes
    - GF_SAFEALLOC
    - gf_node_get_attribute_by_tag
    - GF_LOG
    - gf_node_get_log_name
    - gf_smil_timing_get_next_interval
    - gf_node_get_scene_time
    - gf_smil_timing_add_to_sg
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_smil_timing_init_runtime_info(GF_Node *timed_elt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/smil_timing.c:402,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_timing.c:403,1
    - Dst: gf_dom_listener_del
      Src: /src/gpac/src/scenegraph/smil_timing.c:409,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/smil_timing.c:412,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - times
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 398
    functionDepth: 3
    functionLinenumber: 398
    functionLinenumberEnd: 415
    functionName: gf_smil_timing_reset_time_list
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_node_unregister
    - gf_list_get
    - gf_dom_listener_del
    linkageType: ''
    returnType: void
    signature: void gf_smil_timing_reset_time_list(GF_List *times)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:423,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:423,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_timing.c:423,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/smil_timing.c:424,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/smil_timing.c:425,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/smil_timing.c:430,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/smil_timing.c:431,1
    - Dst: gf_smil_timing_reset_time_list
      Src: /src/gpac/src/scenegraph/smil_timing.c:434,1
    - Dst: gf_smil_timing_reset_time_list
      Src: /src/gpac/src/scenegraph/smil_timing.c:435,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/smil_timing.c:437,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - timed_elt
    - rti
    argTypes:
    - GF_Node*
    - SMIL_Timing_RTI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 417
    functionDepth: 4
    functionLinenumber: 417
    functionLinenumberEnd: 438
    functionName: gf_smil_timing_delete_runtime_info
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_smil_timing_reset_time_list
    - GF_LOG
    - gf_node_get_log_name
    - gf_list_del_item
    - gf_node_get_scene_time
    linkageType: ''
    returnType: void
    signature: void gf_smil_timing_delete_runtime_info(GF_Node *timed_elt, SMIL_Timing_RTI
      *rti)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 440
    functionDepth: 0
    functionLinenumber: 440
    functionLinenumberEnd: 446
    functionName: gf_smil_timing_is_active
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_smil_timing_is_active(GF_Node *node)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/smil_timing.c:470,1
    - Dst: gf_smil_timing_notify_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:471,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:471,1
    - Dst: gf_node_dirty_parent_graph
      Src: /src/gpac/src/scenegraph/smil_timing.c:490,1
    - Dst: gf_node_dirty_parent_graph
      Src: /src/gpac/src/scenegraph/smil_timing.c:494,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/smil_timing.c:504,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_timing.c:506,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/smil_timing.c:507,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/smil_timing.c:510,1
    - Dst: gf_smil_timing_add_to_sg
      Src: /src/gpac/src/scenegraph/smil_timing.c:513,1
    - Dst: gf_smil_timing_notify_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:517,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:517,1
    - Dst: gf_node_dirty_parent_graph
      Src: /src/gpac/src/scenegraph/smil_timing.c:525,1
    - Dst: gf_node_dirty_parent_graph
      Src: /src/gpac/src/scenegraph/smil_timing.c:529,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 55
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 538
      start: 448
    functionDepth: 2
    functionLinenumber: 448
    functionLinenumberEnd: 538
    functionName: gf_smil_notify_timed_elements
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_count
    - gf_list_del_item
    - gf_node_get_scene_time
    - gf_list_rem
    - gf_smil_timing_notify_time
    - gf_smil_timing_add_to_sg
    - gf_list_enum
    - gf_node_dirty_parent_graph
    linkageType: ''
    returnType: Bool
    signature: Bool gf_smil_notify_timed_elements(GF_SceneGraph *sg)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_timing.c:556,1
    - Dst: GF_SMIL_TIME_IS_CLOCK
      Src: /src/gpac/src/scenegraph/smil_timing.c:559,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:563,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_timing.c:563,1
    - Dst: gf_smil_mark_modified
      Src: /src/gpac/src/scenegraph/smil_timing.c:565,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/smil_timing.c:568,1
    - Dst: gf_node_get_num_instances
      Src: /src/gpac/src/scenegraph/smil_timing.c:569,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/scenegraph/smil_timing.c:570,1
    - Dst: gf_node_get_num_instances
      Src: /src/gpac/src/scenegraph/smil_timing.c:571,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/smil_timing.c:572,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/scenegraph/smil_timing.c:574,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/smil_timing.c:576,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 2
    argNames:
    - rti
    - scene_time
    argTypes:
    - SMIL_Timing_RTI*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 544
    functionDepth: 4
    functionLinenumber: 544
    functionLinenumberEnd: 579
    functionName: gf_smil_discard
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - GF_SMIL_TIME_IS_CLOCK
    - gf_node_replace
    - GF_LOG
    - gf_node_get_num_instances
    - gf_node_get_log_name
    - gf_node_unregister
    - gf_node_register
    - gf_smil_mark_modified
    linkageType: ''
    returnType: Bool
    signature: Bool gf_smil_discard(SMIL_Timing_RTI *rti, Fixed scene_time)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/smil_timing.c:587,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/smil_timing.c:588,1
    - Dst: gf_smil_anim_reset_variables
      Src: /src/gpac/src/scenegraph/smil_timing.c:589,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - rti
    argTypes:
    - SMIL_Timing_RTI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 591
      start: 583
    functionDepth: 1
    functionLinenumber: 583
    functionLinenumberEnd: 591
    functionName: gf_smil_reorder_anim
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_list_del_item
    - gf_smil_anim_reset_variables
    linkageType: ''
    returnType: void
    signature: void gf_smil_reorder_anim(SMIL_Timing_RTI *rti)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_smil_discard
      Src: /src/gpac/src/scenegraph/smil_timing.c:625,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/smil_timing.c:625,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/smil_timing.c:629,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:636,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:636,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_timing.c:636,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/scenegraph/smil_timing.c:642,1
    - Dst: gf_smil_reorder_anim
      Src: /src/gpac/src/scenegraph/smil_timing.c:645,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/smil_timing.c:648,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/scenegraph/smil_timing.c:651,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:653,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:653,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_timing.c:653,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:665,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:665,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_timing.c:665,1
    - Dst: gf_smil_timing_get_normalized_simple_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:667,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:673,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:673,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_timing.c:673,1
    - Dst: SMIL_Timing_RTI*::evaluate
      Src: /src/gpac/src/scenegraph/smil_timing.c:675,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:680,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:680,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_timing.c:680,1
    - Dst: SMIL_Timing_RTI*::evaluate
      Src: /src/gpac/src/scenegraph/smil_timing.c:682,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/smil_timing.c:686,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/scenegraph/smil_timing.c:690,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:695,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:695,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_timing.c:695,1
    - Dst: gf_smil_timing_get_next_interval
      Src: /src/gpac/src/scenegraph/smil_timing.c:699,1
    - Dst: gf_smil_mark_modified
      Src: /src/gpac/src/scenegraph/smil_timing.c:703,1
    - Dst: gf_smil_reorder_anim
      Src: /src/gpac/src/scenegraph/smil_timing.c:707,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/smil_timing.c:709,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/scenegraph/smil_timing.c:712,1
    - Dst: gf_smil_timing_get_normalized_simple_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:719,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:721,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:721,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_timing.c:721,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:725,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:725,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_timing.c:725,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/smil_timing.c:726,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/scenegraph/smil_timing.c:730,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:734,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:734,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_timing.c:734,1
    - Dst: SMIL_Timing_RTI*::evaluate
      Src: /src/gpac/src/scenegraph/smil_timing.c:739,1
    - Dst: gf_svg_is_animation_tag
      Src: /src/gpac/src/scenegraph/smil_timing.c:745,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:761,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:761,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_timing.c:761,1
    - Dst: gf_smil_timing_print_interval
      Src: /src/gpac/src/scenegraph/smil_timing.c:772,1
    - Dst: gf_smil_timing_get_next_interval
      Src: /src/gpac/src/scenegraph/smil_timing.c:773,1
    - Dst: gf_smil_mark_modified
      Src: /src/gpac/src/scenegraph/smil_timing.c:777,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:786,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:786,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_timing.c:786,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/smil_timing.c:804,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/smil_timing.c:810,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 146
    argCount: 2
    argNames:
    - rti
    - in_scene_time
    argTypes:
    - SMIL_Timing_RTI*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 812
      start: 601
    functionDepth: 9
    functionLinenumber: 601
    functionLinenumberEnd: 812
    functionName: gf_smil_timing_notify_time
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_smil_timing_get_normalized_simple_time
    - gf_node_traverse
    - GF_LOG
    - gf_smil_timing_print_interval
    - gf_dom_event_fire
    - gf_node_get_log_name
    - memset
    - gf_smil_discard
    - gf_smil_reorder_anim
    - gf_smil_timing_get_next_interval
    - gf_node_get_scene_time
    - gf_list_del_item
    - gf_node_unregister
    - gf_svg_is_animation_tag
    - gf_node_register
    - SMIL_Timing_RTI*::evaluate
    - gf_smil_mark_modified
    linkageType: ''
    returnType: s32
    signature: s32 gf_smil_timing_notify_time(SMIL_Timing_RTI *rti, Double in_scene_time)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: floor
      Src: /src/gpac/src/scenegraph/smil_timing.c:879,1
    - Dst: MAX
      Src: /src/gpac/src/scenegraph/smil_timing.c:892,1
    - Dst: MIN
      Src: /src/gpac/src/scenegraph/smil_timing.c:893,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/smil_timing.c:896,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 50
    argCount: 3
    argNames:
    - rti
    - scene_time
    - force_end
    argTypes:
    - SMIL_Timing_RTI*
    - Double
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 899
      start: 819
    functionDepth: 1
    functionLinenumber: 819
    functionLinenumberEnd: 899
    functionName: gf_smil_timing_get_normalized_simple_time
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - MAX
    - MIN
    - floor
    linkageType: ''
    returnType: Fixed
    signature: Fixed gf_smil_timing_get_normalized_simple_time(SMIL_Timing_RTI *rti,
      Double scene_time, Bool *force_end)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:911,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:911,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_timing.c:911,1
    - Dst: gf_smil_timing_get_next_interval
      Src: /src/gpac/src/scenegraph/smil_timing.c:913,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:913,1
    - Dst: gf_smil_timing_get_interval_end
      Src: /src/gpac/src/scenegraph/smil_timing.c:916,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:920,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:920,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/smil_timing.c:920,1
    - Dst: gf_smil_timing_compute_active_duration
      Src: /src/gpac/src/scenegraph/smil_timing.c:926,1
    - Dst: gf_smil_timing_print_interval
      Src: /src/gpac/src/scenegraph/smil_timing.c:927,1
    - Dst: gf_smil_timing_get_next_interval
      Src: /src/gpac/src/scenegraph/smil_timing.c:929,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/smil_timing.c:929,1
    - Dst: gf_smil_mark_modified
      Src: /src/gpac/src/scenegraph/smil_timing.c:933,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 934
      start: 902
    functionDepth: 4
    functionLinenumber: 902
    functionLinenumberEnd: 934
    functionName: gf_smil_timing_modified
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 1
    functionsReached:
    - gf_smil_timing_compute_active_duration
    - GF_LOG
    - gf_smil_timing_print_interval
    - gf_node_get_log_name
    - gf_smil_timing_get_next_interval
    - gf_smil_timing_get_interval_end
    - gf_node_get_scene_time
    - gf_smil_mark_modified
    linkageType: ''
    returnType: void
    signature: void gf_smil_timing_modified(GF_Node *node, GF_FieldInfo *field)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/smil_timing.c:945,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_timing.c:947,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scenegraph/smil_timing.c:961,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/smil_timing.c:963,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/smil_timing.c:971,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:973,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/smil_timing.c:978,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 5
    argNames:
    - anim
    - event_base_element
    - smil_times
    - is_end
    - node_name
    argTypes:
    - GF_Node*
    - void*
    - GF_List*
    - Bool
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 984
      start: 939
    functionDepth: 1
    functionLinenumber: 939
    functionLinenumberEnd: 984
    functionName: gf_svg_resolve_smil_times
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_sg_find_node_by_name
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_count
    - gf_list_add
    linkageType: ''
    returnType: Bool
    signature: "Bool gf_svg_resolve_smil_times(GF_Node *anim, void *event_base_element,\n
      \                              GF_List *smil_times, Bool is_end, const char
      *node_name)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/smil_timing.c:993,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/smil_timing.c:995,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/smil_timing.c:1005,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/smil_timing.c:1007,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/smil_timing.c:1010,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/smil_timing.c:1011,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/scenegraph/smil_timing.c:1019,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/smil_timing.c:1024,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/smil_timing.c:1027,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 3
    argNames:
    - elt
    - is_end
    - clock
    argTypes:
    - GF_Node*
    - Bool
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1028
      start: 986
    functionDepth: 11
    functionLinenumber: 986
    functionLinenumberEnd: 1028
    functionName: gf_smil_timing_insert_clock
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_insert
    - gf_list_get
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_count
    - gf_list_add
    - gf_node_changed
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_smil_timing_insert_clock(GF_Node *elt, Bool is_end, Double
      clock)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1036
      start: 1030
    functionDepth: 0
    functionLinenumber: 1030
    functionLinenumberEnd: 1036
    functionName: gf_smil_timing_pause
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_smil_timing_pause(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1044
      start: 1038
    functionDepth: 0
    functionLinenumber: 1038
    functionLinenumberEnd: 1044
    functionName: gf_smil_timing_resume
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_smil_timing_resume(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - node
    - smil_evaluate
    argTypes:
    - GF_Node*
    - gf_sg_smil_evaluate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1052
      start: 1046
    functionDepth: 0
    functionLinenumber: 1046
    functionLinenumberEnd: 1052
    functionName: gf_smil_set_evaluation_callback
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_smil_set_evaluation_callback(GF_Node *node, gf_sg_smil_evaluate
      smil_evaluate)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rti
    argTypes:
    - SMIL_Timing_RTI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1057
      start: 1054
    functionDepth: 0
    functionLinenumber: 1054
    functionLinenumberEnd: 1057
    functionName: gf_smil_get_element
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *gf_smil_get_element(SMIL_Timing_RTI *rti)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rti
    argTypes:
    - SMIL_Timing_RTI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1062
      start: 1059
    functionDepth: 0
    functionLinenumber: 1059
    functionLinenumberEnd: 1062
    functionName: gf_smil_get_media_duration
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Double
    signature: Double gf_smil_get_media_duration(SMIL_Timing_RTI *rti)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewError
      Src: /src/gpac/src/scenegraph/vrml_js.c:86,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/vrml_js.c:87,1
    - Dst: JS_DefinePropertyValueStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:90,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:90,1
    - Dst: va_start
      Src: /src/gpac/src/scenegraph/vrml_js.c:94,1
    - Dst: vsnprintf
      Src: /src/gpac/src/scenegraph/vrml_js.c:95,1
    - Dst: va_end
      Src: /src/gpac/src/scenegraph/vrml_js.c:96,1
    - Dst: JS_DefinePropertyValueStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:98,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:98,1
    - Dst: JS_Throw
      Src: /src/gpac/src/scenegraph/vrml_js.c:101,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - ctx
    - err
    - fmt
    argTypes:
    - JSContext*
    - s32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 102
    functionName: js_throw_err_msg
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - va_end
    - JS_DefinePropertyValueStr
    - JS_IsException
    - va_start
    - JS_NewError
    - JS_NewString
    - vsnprintf
    - JS_Throw
    - JS_NewInt32
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_throw_err_msg(JSContext *ctx, s32 err, const char *fmt,
      ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewError
      Src: /src/gpac/src/scenegraph/vrml_js.c:106,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/vrml_js.c:107,1
    - Dst: JS_DefinePropertyValueStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:110,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:110,1
    - Dst: JS_Throw
      Src: /src/gpac/src/scenegraph/vrml_js.c:112,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - err
    argTypes:
    - JSContext*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 113
    functionName: js_throw_err
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 13
    functionsReached:
    - JS_DefinePropertyValueStr
    - JS_IsException
    - JS_NewError
    - JS_Throw
    - JS_NewInt32
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_throw_err(JSContext *ctx, s32 err)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _c
    - ','
    - _msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 125
    functionName: _ScriptMessage
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _ScriptMessage(_c, _msg)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:130,1
    - Dst: GF_SceneGraph*::script_action
      Src: /src/gpac/src/scenegraph/vrml_js.c:134,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 5
    argNames:
    - c
    - scene
    - type
    - node
    - param
    argTypes:
    - JSContext*
    - GF_SceneGraph*
    - u32
    - GF_Node*
    - GF_JSAPIParam*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 137
    functionName: ScriptAction
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - GF_SceneGraph*::script_action
    - JS_GetContextOpaque
    linkageType: ''
    returnType: Bool
    signature: Bool ScriptAction(JSContext *c, GF_SceneGraph *scene, u32 type, GF_Node
      *node, GF_JSAPIParam *param)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_call_gc
      Src: /src/gpac/src/scenegraph/vrml_js.c:192,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - c
    - node
    argTypes:
    - JSContext*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 184
    functionDepth: 1
    functionLinenumber: 184
    functionLinenumberEnd: 194
    functionName: do_js_gc
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_js_call_gc
    linkageType: ''
    returnType: void
    signature: void do_js_gc(JSContext *c, GF_Node *node)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/vrml_js.c:215,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/vrml_js.c:215,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:217,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:218,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:218,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:219,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:219,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 48
    argCount: 1
    argNames:
    - col
    argTypes:
    - SFColor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 252
    functionName: SFColor_fromHSV
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - FIX2INT
    - gf_mulfix
    - gf_floor
    linkageType: ''
    returnType: void
    signature: void SFColor_fromHSV(SFColor *col)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: MAX
      Src: /src/gpac/src/scenegraph/vrml_js.c:257,1
    - Dst: MAX
      Src: /src/gpac/src/scenegraph/vrml_js.c:257,1
    - Dst: MIN
      Src: /src/gpac/src/scenegraph/vrml_js.c:258,1
    - Dst: MAX
      Src: /src/gpac/src/scenegraph/vrml_js.c:258,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:260,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:262,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:263,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:264,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 1
    argNames:
    - col
    argTypes:
    - SFColor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 254
    functionDepth: 1
    functionLinenumber: 254
    functionLinenumberEnd: 281
    functionName: SFColor_toHSV
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - MAX
    - gf_divfix
    - MIN
    linkageType: ''
    returnType: void
    signature: void SFColor_toHSV(SFColor *col)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_js.c:286,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - c
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 283
    functionDepth: 1
    functionLinenumber: 283
    functionLinenumberEnd: 291
    functionName: NewJSField
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE *NewJSField(JSContext *c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 293
    functionDepth: 1
    functionLinenumber: 293
    functionLinenumberEnd: 296
    functionName: JS_GetScript
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_GetContextOpaque
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE *JS_GetScript(JSContext *c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:299,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 301
    functionName: GF_ScriptPriv *JS_GetScriptStack(JSContext *c)
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_GetContextOpaque
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE GF_ScriptPriv *JS_GetScriptStack(JSContext *c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:306,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 304
    functionDepth: 1
    functionLinenumber: 304
    functionLinenumberEnd: 307
    functionName: getName
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 1
    functionsReached:
    - JS_NewString
    linkageType: ''
    returnType: JSValue
    signature: JSValue getName(JSContext *ctx, JSValueConst this_val, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:310,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/scenegraph/vrml_js.c:310,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 308
    functionDepth: 1
    functionLinenumber: 308
    functionLinenumberEnd: 311
    functionName: getVersion
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_gpac_version
    - JS_NewString
    linkageType: ''
    returnType: JSValue
    signature: JSValue getVersion(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:315,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/vrml_js.c:317,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 312
    functionDepth: 1
    functionLinenumber: 312
    functionLinenumberEnd: 319
    functionName: getCurrentSpeed
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - ScriptAction
    - JS_GetContextOpaque
    - JS_NewFloat64
    linkageType: ''
    returnType: JSValue
    signature: JSValue getCurrentSpeed(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:323,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/vrml_js.c:325,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 320
    functionDepth: 1
    functionLinenumber: 320
    functionLinenumberEnd: 327
    functionName: getCurrentFrameRate
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - ScriptAction
    - JS_GetContextOpaque
    - JS_NewFloat64
    linkageType: ''
    returnType: JSValue
    signature: JSValue getCurrentFrameRate(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:331,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/vrml_js.c:334,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:335,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:336,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 328
    functionDepth: 1
    functionLinenumber: 328
    functionLinenumberEnd: 340
    functionName: getWorldURL
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - ScriptAction
    - JS_GetContextOpaque
    - JS_NewString
    linkageType: ''
    returnType: JSValue
    signature: JSValue getWorldURL(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:350,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:350,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:351,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:351,1
    - Dst: NewJSField
      Src: /src/gpac/src/scenegraph/vrml_js.c:355,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/vrml_js.c:362,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:364,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:365,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_js.c:366,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_js.c:370,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:372,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:373,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_js.c:377,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:379,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:380,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_js.c:382,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 36
    argCount: 2
    argNames:
    - priv
    - node
    argTypes:
    - GF_ScriptPriv*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 342
    functionDepth: 2
    functionLinenumber: 342
    functionLinenumberEnd: 387
    functionName: node_get_binding
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - gf_assert
    - gf_list_new
    - GF_SAFEALLOC
    - JS_GetOpaque
    - GF_LOG
    - JS_SetOpaque
    - NewJSField
    - gf_list_add
    - gf_node_register
    - GF_JS_EXCEPTION
    - JS_IsObject
    linkageType: ''
    returnType: JSValue
    signature: JSValue node_get_binding(GF_ScriptPriv *priv, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetScriptStack
      Src: /src/gpac/src/scenegraph/vrml_js.c:391,1
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:392,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:393,1
    - Dst: node_get_binding
      Src: /src/gpac/src/scenegraph/vrml_js.c:393,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 389
    functionDepth: 3
    functionLinenumber: 389
    functionLinenumberEnd: 394
    functionName: getScript
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - node_get_binding
    - JS_GetContextOpaque
    - JS_GetScriptStack
    linkageType: ''
    returnType: JSValue
    signature: JSValue getScript(JSContext *c, JSValueConst this_val, int argc, JSValueConst
      *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:400,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/vrml_js.c:402,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:402,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/scenegraph/vrml_js.c:404,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/scenegraph/vrml_js.c:404,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:406,1
    - Dst: JSScriptFromFile
      Src: /src/gpac/src/scenegraph/vrml_js.c:408,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:410,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 4
    argNames:
    - c
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 396
    functionDepth: 1
    functionLinenumber: 396
    functionLinenumberEnd: 412
    functionName: loadScript
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - JSScriptFromFile
    - JS_ToBool
    - JS_GetContextOpaque
    - GF_JS_EXCEPTION
    - JS_IsBool
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue loadScript(JSContext *c, JSValueConst this_val, int argc, JSValueConst
      *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetScriptStack
      Src: /src/gpac/src/scenegraph/vrml_js.c:416,1
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:417,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:423,1
    - Dst: node_get_binding
      Src: /src/gpac/src/scenegraph/vrml_js.c:423,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - c
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 414
    functionDepth: 3
    functionLinenumber: 414
    functionLinenumberEnd: 424
    functionName: getProto
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - node_get_binding
    - JS_GetContextOpaque
    - JS_GetScriptStack
    linkageType: ''
    returnType: JSValue
    signature: JSValue getProto(JSContext *c, JSValueConst this_val, int argc, JSValueConst
      *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:437,1
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:440,1
    - Dst: gf_sm_load_svg_from_string
      Src: /src/gpac/src/scenegraph/vrml_js.c:443,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:444,1
    - Dst: dom_element_construct
      Src: /src/gpac/src/scenegraph/vrml_js.c:445,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:447,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - c
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 430
    functionDepth: 5
    functionLinenumber: 430
    functionLinenumberEnd: 449
    functionName: vrml_parse_xml
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - dom_element_construct
    - JS_GetContextOpaque
    - GF_JS_EXCEPTION
    - gf_sm_load_svg_from_string
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue vrml_parse_xml(JSContext *c, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetScriptStack
      Src: /src/gpac/src/scenegraph/vrml_js.c:457,1
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:458,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/vrml_js.c:459,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:459,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/scenegraph/vrml_js.c:460,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:461,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:462,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:464,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/vrml_js.c:467,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:468,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:470,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:471,1
    - Dst: node_get_binding
      Src: /src/gpac/src/scenegraph/vrml_js.c:471,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 4
    argNames:
    - c
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 452
    functionDepth: 3
    functionLinenumber: 452
    functionLinenumberEnd: 472
    functionName: getElementById
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - JS_DupValue
    - gf_sg_find_node
    - gf_sg_find_node_by_name
    - JS_IsInteger
    - JS_ToInt32
    - JS_GetContextOpaque
    - JS_GetScriptStack
    - GF_JS_EXCEPTION
    - node_get_binding
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue getElementById(JSContext *c, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 474
    functionDepth: 0
    functionLinenumber: 474
    functionLinenumberEnd: 477
    functionName: replaceWorld
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSValue
    signature: JSValue replaceWorld(JSContext *c, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/scenegraph/vrml_js.c:489,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:494,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:496,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:502,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/vrml_js.c:502,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_js.c:505,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/vrml_js.c:506,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:512,1
    - Dst: gf_sg_script_to_qjs_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:514,1
    - Dst: gf_sg_script_to_qjs_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:515,1
    - Dst: JS_Call
      Src: /src/gpac/src/scenegraph/vrml_js.c:517,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/vrml_js.c:518,1
    - Dst: js_dump_error
      Src: /src/gpac/src/scenegraph/vrml_js.c:519,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:521,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:522,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:523,1
    - Dst: js_std_loop
      Src: /src/gpac/src/scenegraph/vrml_js.c:525,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:526,1
    - Dst: do_js_gc
      Src: /src/gpac/src/scenegraph/vrml_js.c:528,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 34
    argCount: 2
    argNames:
    - node
    - _r
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 479
    functionDepth: 2
    functionLinenumber: 479
    functionLinenumberEnd: 529
    functionName: on_route_to_object
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_IsNull
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - gf_sg_script_to_qjs_field
    - JS_IsUndefined
    - memset
    - gf_js_lock
    - do_js_gc
    - gf_node_get_scene_time
    - js_dump_error
    - gf_node_get_private
    - js_std_loop
    linkageType: ''
    returnType: void
    signature: void on_route_to_object(GF_Node *node, GF_Route *_r)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:539,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:540,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:541,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:543,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:545,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/vrml_js.c:548,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:548,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:549,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:551,1
    - Dst: atoi
      Src: /src/gpac/src/scenegraph/vrml_js.c:552,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:553,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:555,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:558,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:559,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:562,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:562,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:564,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/vrml_js.c:567,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:570,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:572,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:574,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:575,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:577,1
    - Dst: atoi
      Src: /src/gpac/src/scenegraph/vrml_js.c:578,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:579,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:587,1
    - Dst: gf_sg_script_field_new
      Src: /src/gpac/src/scenegraph/vrml_js.c:588,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:591,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:594,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:595,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/scenegraph/vrml_js.c:597,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:598,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:607,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:607,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/scenegraph/vrml_js.c:609,1
    - Dst: JS_AtomToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:610,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_js.c:612,1
    - Dst: JS_GetScript
      Src: /src/gpac/src/scenegraph/vrml_js.c:615,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:616,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:621,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:622,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/scenegraph/vrml_js.c:623,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_js.c:626,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:628,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:634,1
    - Dst: JS_GetScript
      Src: /src/gpac/src/scenegraph/vrml_js.c:636,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:645,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:646,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_js.c:652,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:654,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:655,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:656,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:657,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_js.c:660,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_js.c:661,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_js.c:662,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 109
    argCount: 4
    argNames:
    - c
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 531
    functionDepth: 5
    functionLinenumber: 531
    functionLinenumberEnd: 667
    functionName: addRoute
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_FreeAtom
    - GF_SAFEALLOC
    - JS_AtomToCString
    - atoi
    - gf_node_get_field
    - JS_GetScript
    - JS_FreeCString
    - JS_ToCString
    - gf_assert
    - JS_IsString
    - gf_strdup
    - JS_DupValue
    - gf_list_new
    - JS_GetOpaque
    - gf_sg_route_new
    - JS_ValueToAtom
    - gf_list_add
    - stricmp
    - JS_IsObject
    - gf_sg_script_field_new
    - JS_IsFunction
    - GF_LOG
    - strnicmp
    - gf_list_enum
    - gf_node_get_field_by_name
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue addRoute(JSContext *c, JSValueConst this_val, int argc, JSValueConst
      *argv)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:680,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/vrml_js.c:680,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:681,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:683,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:684,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:685,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/vrml_js.c:687,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/vrml_js.c:687,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/vrml_js.c:687,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:689,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:690,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_js.c:691,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_js.c:692,1
    - Dst: gf_sg_route_del
      Src: /src/gpac/src/scenegraph/vrml_js.c:693,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:696,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/vrml_js.c:699,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/vrml_js.c:699,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:699,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:703,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:704,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:705,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:708,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:711,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:712,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:714,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:715,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:716,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:719,1
    - Dst: atoi
      Src: /src/gpac/src/scenegraph/vrml_js.c:720,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:721,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:723,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:726,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:727,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:729,1
    - Dst: atoi
      Src: /src/gpac/src/scenegraph/vrml_js.c:730,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:731,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:733,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:736,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:737,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_js.c:740,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:744,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:745,1
    - Dst: gf_sg_route_del
      Src: /src/gpac/src/scenegraph/vrml_js.c:746,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 73
    argCount: 4
    argNames:
    - c
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 669
    functionDepth: 5
    functionLinenumber: 669
    functionLinenumberEnd: 750
    functionName: deleteRoute
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - gf_assert
    - JS_IsString
    - gf_list_get
    - JS_IsNull
    - JS_GetOpaque
    - JS_FreeValue
    - gf_node_get_field_by_name
    - gf_sg_route_del
    - gf_list_count
    - strcmp
    - strnicmp
    - atoi
    - gf_node_get_field
    - GF_JS_EXCEPTION
    - JS_IsObject
    - gf_list_enum
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue deleteRoute(JSContext *c, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:758,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:760,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/vrml_js.c:762,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:764,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/vrml_js.c:767,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:768,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:771,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:771,1
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:773,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:774,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/vrml_js.c:780,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:781,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/vrml_js.c:784,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:785,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 4
    argNames:
    - c
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 790
      start: 752
    functionDepth: 1
    functionLinenumber: 752
    functionLinenumberEnd: 790
    functionName: loadURL
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - ScriptAction
    - JS_GetContextOpaque
    - GF_JS_EXCEPTION
    - JS_IsObject
    - JS_GetAnyOpaque
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue loadURL(JSContext *c, JSValueConst this_val, int argc, JSValueConst
      *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:795,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/vrml_js.c:796,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:796,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:797,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/vrml_js.c:798,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:799,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - c
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 801
      start: 792
    functionDepth: 1
    functionLinenumber: 792
    functionLinenumberEnd: 801
    functionName: setDescription
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - ScriptAction
    - JS_GetContextOpaque
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue setDescription(JSContext *c, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:813,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:814,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/vrml_js.c:816,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:816,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:817,1
    - Dst: gf_sm_load_bt_from_string
      Src: /src/gpac/src/scenegraph/vrml_js.c:818,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:819,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:820,1
    - Dst: JS_GetScriptStack
      Src: /src/gpac/src/scenegraph/vrml_js.c:822,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_js.c:823,1
    - Dst: gf_sg_script_to_qjs_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:826,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_js.c:829,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_js.c:830,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/vrml_js.c:831,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_js.c:832,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/vrml_js.c:834,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:837,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 4
    argNames:
    - c
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 803
    functionDepth: 3
    functionLinenumber: 803
    functionLinenumberEnd: 839
    functionName: createVrmlFromString
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - gf_list_get
    - gf_sg_script_to_qjs_field
    - gf_list_count
    - memset
    - gf_node_unregister
    - JS_GetContextOpaque
    - JS_GetScriptStack
    - gf_list_rem
    - GF_JS_EXCEPTION
    - gf_list_del
    - gf_sm_load_bt_from_string
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue createVrmlFromString(JSContext *c, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:861,1
    - Dst: GF_FieldInfo*::on_event_in
      Src: /src/gpac/src/scenegraph/vrml_js.c:865,1
    - Dst: gf_sg_script_event_in
      Src: /src/gpac/src/scenegraph/vrml_js.c:867,1
    - Dst: gf_node_changed_internal
      Src: /src/gpac/src/scenegraph/vrml_js.c:868,1
    - Dst: gf_sg_proto_propagate_event
      Src: /src/gpac/src/scenegraph/vrml_js.c:874,1
    - Dst: JS_GetScript
      Src: /src/gpac/src/scenegraph/vrml_js.c:874,1
    - Dst: gf_node_event_out_proto
      Src: /src/gpac/src/scenegraph/vrml_js.c:876,1
    - Dst: gf_node_changed_internal
      Src: /src/gpac/src/scenegraph/vrml_js.c:881,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_js.c:884,1
    - Dst: gf_node_changed_internal
      Src: /src/gpac/src/scenegraph/vrml_js.c:885,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_js.c:894,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 43
    argCount: 4
    argNames:
    - c
    - parent
    - parent_owner
    - field
    argTypes:
    - JSContext*
    - GF_Node*
    - GF_JSField*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 903
      start: 843
    functionDepth: 10
    functionLinenumber: 843
    functionLinenumberEnd: 903
    functionName: Script_FieldChanged
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    - gf_sg_proto_propagate_event
    - gf_node_event_out_proto
    - gf_node_changed_internal
    - gf_sg_script_event_in
    - GF_FieldInfo*::on_event_in
    - JS_GetContextOpaque
    - JS_GetScript
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void Script_FieldChanged(JSContext *c, GF_Node *parent, GF_JSField
      *parent_owner, GF_FieldInfo *field)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetScriptStack
      Src: /src/gpac/src/scenegraph/vrml_js.c:912,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:913,1
    - Dst: JS_GetScript
      Src: /src/gpac/src/scenegraph/vrml_js.c:914,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:915,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_js.c:918,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:921,1
    - Dst: gf_sg_script_to_node_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:922,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:927,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 4
    argNames:
    - c
    - this_val
    - val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 928
      start: 905
    functionDepth: 3
    functionLinenumber: 905
    functionLinenumberEnd: 928
    functionName: gf_sg_script_eventout_set_prop
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_sg_script_to_node_field
    - gf_node_get_field
    - JS_GetScriptStack
    - GF_JS_EXCEPTION
    - JS_GetScript
    - gf_list_enum
    linkageType: ''
    returnType: JSValue
    signature: JSValue gf_sg_script_eventout_set_prop(JSContext *c, JSValueConst this_val,
      JSValueConst val, int magic)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_js.c:940,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:940,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:940,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/vrml_js.c:941,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_js.c:947,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:947,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:947,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:947,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/vrml_js.c:948,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_js.c:954,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:954,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:954,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:954,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:954,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/vrml_js.c:955,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_js.c:961,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:961,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:961,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:961,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/vrml_js.c:962,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_js.c:968,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/vrml_js.c:969,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 3
    argNames:
    - str
    - f_ptr
    - fieldType
    argTypes:
    - char**
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 974
      start: 932
    functionDepth: 1
    functionLinenumber: 932
    functionLinenumberEnd: 974
    functionName: sffield_toString
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_dynstrcat
    - sprintf
    - FIX2FLT
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE sffield_toString(char **str, void *f_ptr, u32 fieldType)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:978,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/vrml_js.c:992,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:998,1
    - Dst: gf_js_context_is_valid
      Src: /src/gpac/src/scenegraph/vrml_js.c:1001,1
    - Dst: JS_GetScriptStack
      Src: /src/gpac/src/scenegraph/vrml_js.c:1003,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/vrml_js.c:1004,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 19
    argCount: 4
    argNames:
    - rt
    - obj
    - ptr
    - is_js_call
    argTypes:
    - JSRuntime*
    - JSValue
    - GF_JSField*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1008
      start: 976
    functionDepth: 1
    functionLinenumber: 976
    functionLinenumberEnd: 1008
    functionName: JS_ObjectDestroyed
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_js_context_is_valid
    - JS_SetOpaque
    - JS_IsUndefined
    - gf_list_del_item
    - JS_GetScriptStack
    linkageType: ''
    returnType: void
    signature: void JS_ObjectDestroyed(JSRuntime *rt, JSValue obj, GF_JSField *ptr,
      Bool is_js_call)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1018,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:1021,1
    - Dst: sffield_toString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1022,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/vrml_js.c:1026,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_js.c:1034,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/scenegraph/vrml_js.c:1034,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/vrml_js.c:1035,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:1038,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_js.c:1039,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/vrml_js.c:1040,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1044,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_js.c:1045,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/vrml_js.c:1046,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1051,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/vrml_js.c:1052,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1053,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:1057,1
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1058,1
    - Dst: sffield_toString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1059,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/vrml_js.c:1063,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/vrml_js.c:1065,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1067,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:1068,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 48
    argCount: 4
    argNames:
    - c
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1070
      start: 1011
    functionDepth: 2
    functionLinenumber: 1011
    functionLinenumberEnd: 1070
    functionName: field_toString
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 1
    functionsReached:
    - gf_free
    - JS_ToCString
    - sprintf
    - JS_NewString
    - JS_ToBool
    - JS_ToInt32
    - JS_ToFloat64
    - sffield_toString
    - gf_sg_vrml_is_sf_field
    - gf_dynstrcat
    - JS_IsObject
    - JS_GetAnyOpaque
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue field_toString(JSContext *c, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetScriptStack
      Src: /src/gpac/src/scenegraph/vrml_js.c:1080,1
    - Dst: JS_GetScript
      Src: /src/gpac/src/scenegraph/vrml_js.c:1081,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1083,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1084,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:1088,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/vrml_js.c:1089,1
    - Dst: NewJSField
      Src: /src/gpac/src/scenegraph/vrml_js.c:1090,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1094,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1099,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1100,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:1102,1
    - Dst: atoi
      Src: /src/gpac/src/scenegraph/vrml_js.c:1103,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1104,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scenegraph/vrml_js.c:1112,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1118,1
    - Dst: gf_sg_proto_create_instance
      Src: /src/gpac/src/scenegraph/vrml_js.c:1122,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1124,1
    - Dst: gf_sg_proto_load_code
      Src: /src/gpac/src/scenegraph/vrml_js.c:1128,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_js.c:1129,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1130,1
    - Dst: gf_node_mpeg4_type_by_class_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:1136,1
    - Dst: gf_node_x3d_type_by_class_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:1140,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scenegraph/vrml_js.c:1145,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1147,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scenegraph/vrml_js.c:1150,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1153,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:1155,1
    - Dst: node_get_binding
      Src: /src/gpac/src/scenegraph/vrml_js.c:1155,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 68
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1156
      start: 1072
    functionDepth: 9
    functionLinenumber: 1072
    functionLinenumberEnd: 1156
    functionName: SFNodeConstructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - atoi
    - gf_sg_find_proto
    - gf_sg_proto_load_code
    - gf_node_unregister
    - JS_GetScript
    - JS_FreeCString
    - gf_node_init
    - JS_ToCString
    - JS_IsString
    - JS_DupValue
    - gf_sg_proto_create_instance
    - JS_NewObjectClass
    - NewJSField
    - strnicmp
    - gf_node_new
    - JS_IsException
    - JS_SetOpaque
    - gf_node_x3d_type_by_class_name
    - gf_node_mpeg4_type_by_class_name
    - JS_GetScriptStack
    - GF_JS_EXCEPTION
    - node_get_binding
    linkageType: ''
    returnType: JSValue
    signature: JSValue SFNodeConstructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1159,1
    - Dst: JS_ObjectDestroyed
      Src: /src/gpac/src/scenegraph/vrml_js.c:1160,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:1168,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:1168,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:1168,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_js.c:1170,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:1172,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - rt
    - obj
    - is_js_call
    argTypes:
    - JSRuntime*
    - JSValue
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1173
      start: 1157
    functionDepth: 3
    functionLinenumber: 1157
    functionLinenumberEnd: 1173
    functionName: node_finalize_ex
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_class_name
    - gf_node_get_name
    - JS_GetOpaque
    - GF_LOG
    - gf_node_unregister
    - JS_ObjectDestroyed
    linkageType: ''
    returnType: void
    signature: void node_finalize_ex(JSRuntime *rt, JSValue obj, Bool is_js_call)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: node_finalize_ex
      Src: /src/gpac/src/scenegraph/vrml_js.c:1177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1179
      start: 1175
    functionDepth: 4
    functionLinenumber: 1175
    functionLinenumberEnd: 1179
    functionName: node_finalize
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 1
    functionsReached:
    - node_finalize_ex
    linkageType: ''
    returnType: void
    signature: void node_finalize(JSRuntime *rt, JSValue val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1189,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1190,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1194,1
    - Dst: gf_node_get_name_and_id
      Src: /src/gpac/src/scenegraph/vrml_js.c:1196,1
    - Dst: snprintf
      Src: /src/gpac/src/scenegraph/vrml_js.c:1199,1
    - Dst: snprintf
      Src: /src/gpac/src/scenegraph/vrml_js.c:1201,1
    - Dst: strncat
      Src: /src/gpac/src/scenegraph/vrml_js.c:1204,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:1204,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1205,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1206
      start: 1181
    functionDepth: 2
    functionLinenumber: 1181
    functionLinenumberEnd: 1206
    functionName: node_toString
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - snprintf
    - gf_node_get_class_name
    - JS_GetOpaque
    - JS_NewString
    - strncat
    - gf_node_get_name_and_id
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue node_toString(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1212,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1213,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1215,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1216,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/vrml_js.c:1216,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1217
      start: 1208
    functionDepth: 1
    functionLinenumber: 1208
    functionLinenumberEnd: 1217
    functionName: node_getTime
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_node_get_scene_time
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    linkageType: ''
    returnType: JSValue
    signature: JSValue node_getTime(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1229,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1230,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:1231,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1233,1
    - Dst: JS_GetScriptStack
      Src: /src/gpac/src/scenegraph/vrml_js.c:1234,1
    - Dst: JS_AtomToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1236,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1237,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:1239,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1240,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:1241,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:1243,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1244,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:1245,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:1248,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:1248,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1249,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:1250,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:1252,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:1252,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1253,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:1254,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:1259,1
    - Dst: atoi
      Src: /src/gpac/src/scenegraph/vrml_js.c:1260,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:1261,1
    - Dst: gf_sg_script_to_qjs_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:1262,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1263,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:1266,1
    - Dst: gf_sg_script_to_qjs_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:1267,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1268,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:1272,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/vrml_js.c:1275,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:1276,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:1280,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:1281,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:1282,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:1283,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:1285,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1285,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:1286,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1286,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:1287,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1287,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:1288,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1288,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1289,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1293,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 61
    argCount: 4
    argNames:
    - c
    - obj
    - atom
    - receiver
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1295
      start: 1219
    functionDepth: 5
    functionLinenumber: 1219
    functionLinenumberEnd: 1295
    functionName: node_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - gf_assert
    - JS_DupValue
    - JS_NewFloat64
    - JS_GetOpaque
    - gf_node_get_field_by_name
    - gf_sg_script_to_qjs_field
    - FIX2FLT
    - JS_AtomToCString
    - ScriptAction
    - strcmp
    - strnicmp
    - atoi
    - JS_GetScriptStack
    - gf_node_get_field
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue node_getProperty(JSContext *c, JSValueConst obj, JSAtom atom,
      JSValueConst receiver)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1306,1
    - Dst: JS_AtomToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1308,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:1311,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:1315,1
    - Dst: atoi
      Src: /src/gpac/src/scenegraph/vrml_js.c:1316,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1317,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:1318,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:1322,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:1326,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:1327,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1334,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:1335,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:1335,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:1339,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scenegraph/vrml_js.c:1341,1
    - Dst: gf_sg_proto_mark_field_loaded
      Src: /src/gpac/src/scenegraph/vrml_js.c:1342,1
    - Dst: gf_sg_script_to_node_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:1344,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 6
    argNames:
    - c
    - obj
    - atom
    - value
    - receiver
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1346
      start: 1297
    functionDepth: 5
    functionLinenumber: 1297
    functionLinenumberEnd: 1346
    functionName: node_setProperty
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_assert
    - JS_DupValue
    - JS_DefinePropertyValue
    - JS_GetOpaque
    - gf_node_get_field_by_name
    - gf_sg_script_to_node_field
    - JS_AtomToCString
    - strnicmp
    - atoi
    - gf_node_get_field
    - gf_sg_proto_mark_field_loaded
    - JS_FreeCString
    linkageType: ''
    returnType: int
    signature: int node_setProperty(JSContext *c, JSValueConst obj, JSAtom atom, JSValueConst
      value, JSValueConst receiver, int flags)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1353,1
    - Dst: JS_ObjectDestroyed
      Src: /src/gpac/src/scenegraph/vrml_js.c:1354,1
    - Dst: gf_sg_vrml_field_pointer_del
      Src: /src/gpac/src/scenegraph/vrml_js.c:1357,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:1358,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1359
      start: 1350
    functionDepth: 2
    functionLinenumber: 1350
    functionLinenumberEnd: 1359
    functionName: field_finalize
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ObjectDestroyed
    - JS_GetAnyOpaque
    - gf_sg_vrml_field_pointer_del
    linkageType: ''
    returnType: void
    signature: void field_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewJSField
      Src: /src/gpac/src/scenegraph/vrml_js.c:1369,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scenegraph/vrml_js.c:1370,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:1376,1
    - Dst: MIN
      Src: /src/gpac/src/scenegraph/vrml_js.c:1377,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1379,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 6
    argNames:
    - c
    - obj
    - w
    - h
    - nbComp
    - pixels
    argTypes:
    - JSContext*
    - JSValue
    - u32
    - u32
    - u32
    - MFInt32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1381
      start: 1364
    functionDepth: 2
    functionLinenumber: 1364
    functionLinenumberEnd: 1381
    functionName: SFImage_Create
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_SetOpaque
    - NewJSField
    - MIN
    - gf_sg_vrml_field_pointer_new
    - gf_malloc
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE *SFImage_Create(JSContext *c, JSValue obj, u32 w, u32 h, u32
      nbComp, MFInt32 *pixels)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1388,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/scenegraph/vrml_js.c:1389,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/scenegraph/vrml_js.c:1389,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/scenegraph/vrml_js.c:1389,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:1389,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1390,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1392,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1393,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:1395,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/vrml_js.c:1396,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:1397,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:1398,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:1399,1
    - Dst: SFImage_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1400,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1402
      start: 1383
    functionDepth: 3
    functionLinenumber: 1383
    functionLinenumberEnd: 1402
    functionName: SFImageConstructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_GetOpaque
    - JS_IsException
    - SFImage_Create
    - JS_IsInteger
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - JS_IsObject
    linkageType: ''
    returnType: JSValue
    signature: JSValue SFImageConstructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetScriptStack
      Src: /src/gpac/src/scenegraph/vrml_js.c:1407,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1408,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1409,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:1413,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:1414,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:1415,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:1419,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/scenegraph/vrml_js.c:1422,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:1422,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 3
    argNames:
    - c
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1430
      start: 1404
    functionDepth: 1
    functionLinenumber: 1404
    functionLinenumberEnd: 1430
    functionName: image_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_GetOpaque
    - JS_SetPropertyUint32
    - JS_GetScriptStack
    - GF_JS_EXCEPTION
    - JS_NewInt32
    linkageType: ''
    returnType: JSValue
    signature: JSValue image_getProperty(JSContext *c, JSValueConst this_val, int
      magic)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1437,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1438,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:1443,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:1447,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:1452,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:1456,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:1461,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:1465,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1474,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1475,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:1477,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:1479,1
    - Dst: MAX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1480,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:1488,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 53
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1490
      start: 1432
    functionDepth: 11
    functionLinenumber: 1432
    functionLinenumberEnd: 1490
    functionName: image_setProperty
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_GetOpaque
    - Script_FieldChanged
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - MAX
    - gf_malloc
    linkageType: ''
    returnType: JSValue
    signature: JSValue image_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewJSField
      Src: /src/gpac/src/scenegraph/vrml_js.c:1497,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scenegraph/vrml_js.c:1498,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1503,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - c
    - obj
    - x
    - y
    argTypes:
    - JSContext*
    - JSValue
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1505
      start: 1493
    functionDepth: 2
    functionLinenumber: 1493
    functionLinenumberEnd: 1505
    functionName: SFVec2f_Create
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_pointer_new
    - JS_SetOpaque
    - NewJSField
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE *SFVec2f_Create(JSContext *c, JSValue obj, Fixed x, Fixed
      y)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:1510,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1512,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1513,1
    - Dst: SFVec2f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1514,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1514,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1514,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1516
      start: 1507
    functionDepth: 3
    functionLinenumber: 1507
    functionLinenumberEnd: 1516
    functionName: SFVec2fConstructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - SFVec2f_Create
    - JS_NewObjectClass
    - FLT2FIX
    - JS_ToFloat64
    linkageType: ''
    returnType: JSValue
    signature: JSValue SFVec2fConstructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1520,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1521,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1525,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:1525,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1527,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:1527,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1532
      start: 1518
    functionDepth: 1
    functionLinenumber: 1518
    functionLinenumberEnd: 1532
    functionName: vec2f_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec2f_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1539,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1540,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1542,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:1543,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1548,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1553,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:1560,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1562
      start: 1534
    functionDepth: 11
    functionLinenumber: 1534
    functionLinenumberEnd: 1562
    functionName: vec2f_setProperty
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_GetOpaque
    - GF_LOG
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - Script_FieldChanged
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec2f_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1570,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1571,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:1575,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1576,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1577,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1578,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1587,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:1587,1
    - Dst: gf_v2d_len
      Src: /src/gpac/src/scenegraph/vrml_js.c:1587,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1589,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1590,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:1590,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1590,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1590,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1593,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:1596,1
    - Dst: SFVec2f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1599,1
    - Dst: SFVec2f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1602,1
    - Dst: SFVec2f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1605,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1608,1
    - Dst: SFVec2f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1609,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1609,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1609,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1612,1
    - Dst: SFVec2f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1613,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1613,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1613,1
    - Dst: gf_v2d_len
      Src: /src/gpac/src/scenegraph/vrml_js.c:1616,1
    - Dst: SFVec2f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1617,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1617,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1617,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 50
    argCount: 5
    argNames:
    - c
    - obj
    - argc
    - argv
    - op
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1621
      start: 1564
    functionDepth: 3
    functionLinenumber: 1564
    functionLinenumberEnd: 1621
    functionName: vec2f_operand
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_v2d_len
    - JS_NewObjectClass
    - JS_NewFloat64
    - JS_GetOpaque
    - SFVec2f_Create
    - gf_divfix
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - JS_IsObject
    - gf_mulfix
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec2f_operand(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv, u32 op)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vec2f_operand
      Src: /src/gpac/src/scenegraph/vrml_js.c:1625,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1626
      start: 1623
    functionDepth: 4
    functionLinenumber: 1623
    functionLinenumberEnd: 1626
    functionName: vec2f_add
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - vec2f_operand
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec2f_add(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vec2f_operand
      Src: /src/gpac/src/scenegraph/vrml_js.c:1629,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1630
      start: 1627
    functionDepth: 4
    functionLinenumber: 1627
    functionLinenumberEnd: 1630
    functionName: vec2f_subtract
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - vec2f_operand
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec2f_subtract(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vec2f_operand
      Src: /src/gpac/src/scenegraph/vrml_js.c:1633,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1634
      start: 1631
    functionDepth: 4
    functionLinenumber: 1631
    functionLinenumberEnd: 1634
    functionName: vec2f_negate
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - vec2f_operand
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec2f_negate(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vec2f_operand
      Src: /src/gpac/src/scenegraph/vrml_js.c:1637,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1638
      start: 1635
    functionDepth: 4
    functionLinenumber: 1635
    functionLinenumberEnd: 1638
    functionName: vec2f_multiply
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - vec2f_operand
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec2f_multiply(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vec2f_operand
      Src: /src/gpac/src/scenegraph/vrml_js.c:1641,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1642
      start: 1639
    functionDepth: 4
    functionLinenumber: 1639
    functionLinenumberEnd: 1642
    functionName: vec2f_divide
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - vec2f_operand
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec2f_divide(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vec2f_operand
      Src: /src/gpac/src/scenegraph/vrml_js.c:1645,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1646
      start: 1643
    functionDepth: 4
    functionLinenumber: 1643
    functionLinenumberEnd: 1646
    functionName: vec2f_length
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - vec2f_operand
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec2f_length(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vec2f_operand
      Src: /src/gpac/src/scenegraph/vrml_js.c:1649,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1650
      start: 1647
    functionDepth: 4
    functionLinenumber: 1647
    functionLinenumberEnd: 1650
    functionName: vec2f_normalize
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - vec2f_operand
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec2f_normalize(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vec2f_operand
      Src: /src/gpac/src/scenegraph/vrml_js.c:1653,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1654
      start: 1651
    functionDepth: 4
    functionLinenumber: 1651
    functionLinenumberEnd: 1654
    functionName: vec2f_dot
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - vec2f_operand
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec2f_dot(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewJSField
      Src: /src/gpac/src/scenegraph/vrml_js.c:1662,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scenegraph/vrml_js.c:1663,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1669,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 5
    argNames:
    - c
    - obj
    - x
    - y
    - z
    argTypes:
    - JSContext*
    - JSValue
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1671
      start: 1658
    functionDepth: 2
    functionLinenumber: 1658
    functionLinenumberEnd: 1671
    functionName: SFVec3f_Create
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_pointer_new
    - JS_SetOpaque
    - NewJSField
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE *SFVec3f_Create(JSContext *c, JSValue obj, Fixed x, Fixed
      y, Fixed z)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:1676,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1678,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1679,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1680,1
    - Dst: SFVec3f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1681,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1681,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1681,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1681,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1683
      start: 1673
    functionDepth: 3
    functionLinenumber: 1673
    functionLinenumberEnd: 1683
    functionName: SFVec3fConstructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_NewObjectClass
    - SFVec3f_Create
    - JS_ToFloat64
    linkageType: ''
    returnType: JSValue
    signature: JSValue SFVec3fConstructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1687,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1688,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1692,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:1692,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1694,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:1694,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1696,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:1696,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1699
      start: 1685
    functionDepth: 1
    functionLinenumber: 1685
    functionLinenumberEnd: 1699
    functionName: vec3f_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec3f_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1706,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1707,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1709,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:1710,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1716,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1721,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1726,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:1733,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1735
      start: 1701
    functionDepth: 11
    functionLinenumber: 1701
    functionLinenumberEnd: 1735
    functionName: vec3f_setProperty
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_GetOpaque
    - GF_LOG
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - Script_FieldChanged
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec3f_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1744,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1745,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:1749,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1750,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1751,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1752,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1763,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1765,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:1765,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/scenegraph/vrml_js.c:1765,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1768,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1770,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:1770,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/scenegraph/vrml_js.c:1770,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:1773,1
    - Dst: SFVec3f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1776,1
    - Dst: SFVec3f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1779,1
    - Dst: SFVec3f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1782,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1785,1
    - Dst: SFVec3f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1786,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1786,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1786,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1786,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1789,1
    - Dst: SFVec3f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1790,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1790,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1790,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1790,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/scenegraph/vrml_js.c:1794,1
    - Dst: SFVec3f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1795,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/scenegraph/vrml_js.c:1798,1
    - Dst: SFVec3f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1799,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 58
    argCount: 5
    argNames:
    - c
    - obj
    - argc
    - argv
    - op
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1803
      start: 1738
    functionDepth: 3
    functionLinenumber: 1738
    functionLinenumberEnd: 1803
    functionName: vec3f_operand
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_vec_len
    - gf_vec_dot
    - JS_NewObjectClass
    - gf_vec_cross
    - JS_NewFloat64
    - JS_GetOpaque
    - gf_divfix
    - SFVec3f_Create
    - gf_vec_norm
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - JS_IsObject
    - gf_mulfix
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec3f_operand(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv, u32 op)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vec3f_operand
      Src: /src/gpac/src/scenegraph/vrml_js.c:1807,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1808
      start: 1805
    functionDepth: 4
    functionLinenumber: 1805
    functionLinenumberEnd: 1808
    functionName: vec3f_add
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - vec3f_operand
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec3f_add(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vec3f_operand
      Src: /src/gpac/src/scenegraph/vrml_js.c:1811,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1812
      start: 1809
    functionDepth: 4
    functionLinenumber: 1809
    functionLinenumberEnd: 1812
    functionName: vec3f_subtract
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - vec3f_operand
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec3f_subtract(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vec3f_operand
      Src: /src/gpac/src/scenegraph/vrml_js.c:1815,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1816
      start: 1813
    functionDepth: 4
    functionLinenumber: 1813
    functionLinenumberEnd: 1816
    functionName: vec3f_negate
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - vec3f_operand
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec3f_negate(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vec3f_operand
      Src: /src/gpac/src/scenegraph/vrml_js.c:1819,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1820
      start: 1817
    functionDepth: 4
    functionLinenumber: 1817
    functionLinenumberEnd: 1820
    functionName: vec3f_multiply
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - vec3f_operand
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec3f_multiply(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vec3f_operand
      Src: /src/gpac/src/scenegraph/vrml_js.c:1823,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1824
      start: 1821
    functionDepth: 4
    functionLinenumber: 1821
    functionLinenumberEnd: 1824
    functionName: vec3f_divide
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - vec3f_operand
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec3f_divide(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vec3f_operand
      Src: /src/gpac/src/scenegraph/vrml_js.c:1827,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1828
      start: 1825
    functionDepth: 4
    functionLinenumber: 1825
    functionLinenumberEnd: 1828
    functionName: vec3f_length
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - vec3f_operand
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec3f_length(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vec3f_operand
      Src: /src/gpac/src/scenegraph/vrml_js.c:1831,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1832
      start: 1829
    functionDepth: 4
    functionLinenumber: 1829
    functionLinenumberEnd: 1832
    functionName: vec3f_normalize
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - vec3f_operand
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec3f_normalize(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vec3f_operand
      Src: /src/gpac/src/scenegraph/vrml_js.c:1835,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1836
      start: 1833
    functionDepth: 4
    functionLinenumber: 1833
    functionLinenumberEnd: 1836
    functionName: vec3f_dot
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - vec3f_operand
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec3f_dot(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vec3f_operand
      Src: /src/gpac/src/scenegraph/vrml_js.c:1839,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1840
      start: 1837
    functionDepth: 4
    functionLinenumber: 1837
    functionLinenumberEnd: 1840
    functionName: vec3f_cross
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - vec3f_operand
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec3f_cross(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewJSField
      Src: /src/gpac/src/scenegraph/vrml_js.c:1848,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scenegraph/vrml_js.c:1849,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1856,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 6
    argNames:
    - c
    - obj
    - x
    - y
    - z
    - q
    argTypes:
    - JSContext*
    - JSValue
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1858
      start: 1844
    functionDepth: 2
    functionLinenumber: 1844
    functionLinenumberEnd: 1858
    functionName: SFRotation_Create
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_pointer_new
    - JS_SetOpaque
    - NewJSField
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE *SFRotation_Create(JSContext *c, JSValue obj, Fixed x, Fixed
      y, Fixed z, Fixed q)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:1866,1
    - Dst: SFRotation_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1869,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1869,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1869,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1869,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/scenegraph/vrml_js.c:1872,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1873,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1874,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1875,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1876,1
    - Dst: SFRotation_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1877,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1877,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1877,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1877,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1877,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1882,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:1883,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1883,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1884,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1885,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/scenegraph/vrml_js.c:1888,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1889,1
    - Dst: SFRotation_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1890,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1890,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:1894,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1895,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1896,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/scenegraph/vrml_js.c:1898,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/scenegraph/vrml_js.c:1899,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1900,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/scenegraph/vrml_js.c:1900,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1900,1
    - Dst: gf_atan2
      Src: /src/gpac/src/scenegraph/vrml_js.c:1901,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/scenegraph/vrml_js.c:1901,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1901,1
    - Dst: SFRotation_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1902,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1902,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1902,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1903,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1903,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1904,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1904,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1905,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 42
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1907
      start: 1860
    functionDepth: 3
    functionLinenumber: 1860
    functionLinenumberEnd: 1907
    functionName: SFRotationConstructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_NewObjectClass
    - gf_vec_len
    - gf_vec_dot
    - JS_IsNumber
    - JS_GetOpaque
    - gf_divfix
    - gf_atan2
    - SFRotation_Create
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - JS_IsObject
    - gf_mulfix
    - gf_sqrt
    linkageType: ''
    returnType: JSValue
    signature: JSValue SFRotationConstructor(JSContext *c, JSValueConst new_target,
      int argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1911,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1912,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1915,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:1915,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1917,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:1917,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1919,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:1919,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1921,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:1921,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1924
      start: 1909
    functionDepth: 1
    functionLinenumber: 1909
    functionLinenumberEnd: 1924
    functionName: rot_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue rot_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1931,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1932,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1934,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:1935,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1941,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1946,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1951,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1956,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:1963,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1965
      start: 1926
    functionDepth: 11
    functionLinenumber: 1926
    functionLinenumberEnd: 1965
    functionName: rot_setProperty
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_GetOpaque
    - GF_LOG
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - Script_FieldChanged
    linkageType: ''
    returnType: JSValue
    signature: JSValue rot_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1971,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1972,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:1974,1
    - Dst: SFVec3f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1975,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1977
      start: 1967
    functionDepth: 3
    functionLinenumber: 1967
    functionLinenumberEnd: 1977
    functionName: rot_getAxis
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_NewObjectClass
    - SFVec3f_Create
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue rot_getAxis(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1982,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1983,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:1985,1
    - Dst: SFRotation_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1986,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1988
      start: 1978
    functionDepth: 3
    functionLinenumber: 1978
    functionLinenumberEnd: 1988
    functionName: rot_inverse
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_NewObjectClass
    - SFRotation_Create
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue rot_inverse(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:1996,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1997,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1998,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1999,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2001,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2002,1
    - Dst: gf_quat_from_rotation
      Src: /src/gpac/src/scenegraph/vrml_js.c:2005,1
    - Dst: gf_quat_from_rotation
      Src: /src/gpac/src/scenegraph/vrml_js.c:2006,1
    - Dst: gf_quat_multiply
      Src: /src/gpac/src/scenegraph/vrml_js.c:2007,1
    - Dst: gf_quat_to_rotation
      Src: /src/gpac/src/scenegraph/vrml_js.c:2008,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:2010,1
    - Dst: SFRotation_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:2011,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2013
      start: 1990
    functionDepth: 3
    functionLinenumber: 1990
    functionLinenumberEnd: 2013
    functionName: rot_multiply
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_GetOpaque
    - SFRotation_Create
    - GF_JS_EXCEPTION
    - gf_quat_from_rotation
    - JS_IsObject
    - gf_quat_multiply
    - gf_quat_to_rotation
    linkageType: ''
    returnType: JSValue
    signature: JSValue rot_multiply(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:2021,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2022,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2024,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2025,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2028,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2029,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/scenegraph/vrml_js.c:2032,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/scenegraph/vrml_js.c:2033,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/scenegraph/vrml_js.c:2034,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:2035,1
    - Dst: SFVec3f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:2036,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2038
      start: 2015
    functionDepth: 3
    functionLinenumber: 2015
    functionLinenumberEnd: 2038
    functionName: rot_multVec
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_GetOpaque
    - gf_mx_add_rotation
    - gf_mx_init
    - SFVec3f_Create
    - GF_JS_EXCEPTION
    - JS_IsObject
    - gf_mx_apply_vec
    linkageType: ''
    returnType: JSValue
    signature: JSValue rot_multVec(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:2044,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2045,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2046,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2047,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2050,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2051,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2057,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2059
      start: 2039
    functionDepth: 11
    functionLinenumber: 2039
    functionLinenumberEnd: 2059
    functionName: rot_setAxis
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - Script_FieldChanged
    - JS_IsObject
    - JS_GetOpaque
    linkageType: ''
    returnType: JSValue
    signature: JSValue rot_setAxis(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:2068,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2069,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2070,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2071,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2074,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2075,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2078,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2078,1
    - Dst: gf_quat_from_rotation
      Src: /src/gpac/src/scenegraph/vrml_js.c:2080,1
    - Dst: gf_quat_from_rotation
      Src: /src/gpac/src/scenegraph/vrml_js.c:2081,1
    - Dst: gf_quat_slerp
      Src: /src/gpac/src/scenegraph/vrml_js.c:2082,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2082,1
    - Dst: gf_quat_to_rotation
      Src: /src/gpac/src/scenegraph/vrml_js.c:2083,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:2084,1
    - Dst: SFRotation_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:2085,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2087
      start: 2060
    functionDepth: 3
    functionLinenumber: 2060
    functionLinenumberEnd: 2087
    functionName: rot_slerp
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_quat_slerp
    - JS_NewObjectClass
    - JS_GetOpaque
    - SFRotation_Create
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - gf_quat_from_rotation
    - JS_IsObject
    - gf_quat_to_rotation
    linkageType: ''
    returnType: JSValue
    signature: JSValue rot_slerp(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewJSField
      Src: /src/gpac/src/scenegraph/vrml_js.c:2094,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scenegraph/vrml_js.c:2095,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 5
    argNames:
    - c
    - obj
    - r
    - g
    - b
    argTypes:
    - JSContext*
    - JSValue
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2103
      start: 2090
    functionDepth: 2
    functionLinenumber: 2090
    functionLinenumberEnd: 2103
    functionName: SFColor_Create
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_pointer_new
    - JS_SetOpaque
    - NewJSField
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE *SFColor_Create(JSContext *c, JSValue obj, Fixed r, Fixed
      g, Fixed b)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:2107,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2109,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2110,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2111,1
    - Dst: SFColor_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:2112,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2112,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2112,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2112,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2114
      start: 2104
    functionDepth: 3
    functionLinenumber: 2104
    functionLinenumberEnd: 2114
    functionName: SFColorConstructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_NewObjectClass
    - SFColor_Create
    - JS_ToFloat64
    linkageType: ''
    returnType: JSValue
    signature: JSValue SFColorConstructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2117,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2118,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2121,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:2121,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2123,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:2123,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2126,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:2126,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2132
      start: 2115
    functionDepth: 1
    functionLinenumber: 2115
    functionLinenumberEnd: 2132
    functionName: color_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue color_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2139,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2140,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2142,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:2143,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2149,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2154,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2159,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2166,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2168
      start: 2134
    functionDepth: 11
    functionLinenumber: 2134
    functionLinenumberEnd: 2168
    functionName: color_setProperty
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_GetOpaque
    - GF_LOG
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - Script_FieldChanged
    linkageType: ''
    returnType: JSValue
    signature: JSValue color_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2174,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2175,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2179,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2179,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2180,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2180,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2181,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2181,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2183,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2184,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2185,1
    - Dst: SFColor_fromHSV
      Src: /src/gpac/src/scenegraph/vrml_js.c:2186,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:2187,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2188,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2190
      start: 2170
    functionDepth: 11
    functionLinenumber: 2170
    functionLinenumberEnd: 2190
    functionName: color_setHSV
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_GetOpaque
    - gf_sg_vrml_field_copy
    - JS_ToFloat64
    - SFColor_fromHSV
    - GF_JS_EXCEPTION
    - Script_FieldChanged
    linkageType: ''
    returnType: JSValue
    signature: JSValue color_setHSV(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2197,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2198,1
    - Dst: SFColor_toHSV
      Src: /src/gpac/src/scenegraph/vrml_js.c:2202,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/scenegraph/vrml_js.c:2203,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/vrml_js.c:2204,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/scenegraph/vrml_js.c:2206,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2206,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:2206,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/scenegraph/vrml_js.c:2207,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2207,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:2207,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/scenegraph/vrml_js.c:2208,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2208,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:2208,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2210
      start: 2192
    functionDepth: 2
    functionLinenumber: 2192
    functionLinenumberEnd: 2210
    functionName: color_getHSV
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - SFColor_toHSV
    - JS_NewFloat64
    - JS_GetOpaque
    - JS_IsException
    - JS_SetPropertyUint32
    - GF_JS_EXCEPTION
    - JS_NewArray
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue color_getHSV(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:2216,1
    - Dst: NewJSField
      Src: /src/gpac/src/scenegraph/vrml_js.c:2217,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2220,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:2223,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:2227,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2227,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2228,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:2230,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2233,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 7
    argNames:
    - c
    - new_target
    - argc
    - argv
    - mf_class_id
    - sf_class_id
    - fieldType
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - JSClassID
    - JSClassID
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2238
      start: 2212
    functionDepth: 2
    functionLinenumber: 2212
    functionLinenumberEnd: 2238
    functionName: genmf_Constructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_DupValue
    - JS_GetOpaque
    - JS_SetOpaque
    - NewJSField
    - JS_IsObject
    - gf_realloc
    linkageType: ''
    returnType: JSValue
    signature: JSValue genmf_Constructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv, JSClassID mf_class_id, JSClassID sf_class_id, u32
      fieldType)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: genmf_Constructor
      Src: /src/gpac/src/scenegraph/vrml_js.c:2242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2243
      start: 2240
    functionDepth: 3
    functionLinenumber: 2240
    functionLinenumberEnd: 2243
    functionName: MFBoolConstructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - genmf_Constructor
    linkageType: ''
    returnType: JSValue
    signature: JSValue MFBoolConstructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: genmf_Constructor
      Src: /src/gpac/src/scenegraph/vrml_js.c:2246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2247
      start: 2244
    functionDepth: 3
    functionLinenumber: 2244
    functionLinenumberEnd: 2247
    functionName: MFInt32Constructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - genmf_Constructor
    linkageType: ''
    returnType: JSValue
    signature: JSValue MFInt32Constructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: genmf_Constructor
      Src: /src/gpac/src/scenegraph/vrml_js.c:2250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2251
      start: 2248
    functionDepth: 3
    functionLinenumber: 2248
    functionLinenumberEnd: 2251
    functionName: MFFloatConstructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - genmf_Constructor
    linkageType: ''
    returnType: JSValue
    signature: JSValue MFFloatConstructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: genmf_Constructor
      Src: /src/gpac/src/scenegraph/vrml_js.c:2254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2255
      start: 2252
    functionDepth: 3
    functionLinenumber: 2252
    functionLinenumberEnd: 2255
    functionName: MFTimeConstructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - genmf_Constructor
    linkageType: ''
    returnType: JSValue
    signature: JSValue MFTimeConstructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: genmf_Constructor
      Src: /src/gpac/src/scenegraph/vrml_js.c:2258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2259
      start: 2256
    functionDepth: 3
    functionLinenumber: 2256
    functionLinenumberEnd: 2259
    functionName: MFStringConstructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - genmf_Constructor
    linkageType: ''
    returnType: JSValue
    signature: JSValue MFStringConstructor(JSContext *c, JSValueConst new_target,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: genmf_Constructor
      Src: /src/gpac/src/scenegraph/vrml_js.c:2262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2263
      start: 2260
    functionDepth: 3
    functionLinenumber: 2260
    functionLinenumberEnd: 2263
    functionName: MFURLConstructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - genmf_Constructor
    linkageType: ''
    returnType: JSValue
    signature: JSValue MFURLConstructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: genmf_Constructor
      Src: /src/gpac/src/scenegraph/vrml_js.c:2266,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2267
      start: 2264
    functionDepth: 3
    functionLinenumber: 2264
    functionLinenumberEnd: 2267
    functionName: MFNodeConstructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - genmf_Constructor
    linkageType: ''
    returnType: JSValue
    signature: JSValue MFNodeConstructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2273,1
    - Dst: JS_ObjectDestroyed
      Src: /src/gpac/src/scenegraph/vrml_js.c:2275,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:2278,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/scenegraph/vrml_js.c:2283,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:2284,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/vrml_js.c:2288,1
    - Dst: gf_sg_vrml_field_pointer_del
      Src: /src/gpac/src/scenegraph/vrml_js.c:2291,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:2293,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - rt
    - obj
    - is_js_call
    argTypes:
    - JSRuntime*
    - JSValue
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2294
      start: 2269
    functionDepth: 4
    functionLinenumber: 2269
    functionLinenumberEnd: 2294
    functionName: array_finalize_ex
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - JS_FreeValueRT
    - gf_node_unregister_children
    - JS_ObjectDestroyed
    - JS_GetAnyOpaque
    - gf_sg_vrml_field_pointer_del
    linkageType: ''
    returnType: void
    signature: void array_finalize_ex(JSRuntime *rt, JSValue obj, Bool is_js_call)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: array_finalize_ex
      Src: /src/gpac/src/scenegraph/vrml_js.c:2298,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2299
      start: 2296
    functionDepth: 5
    functionLinenumber: 2296
    functionLinenumberEnd: 2299
    functionName: array_finalize
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - array_finalize_ex
    linkageType: ''
    returnType: void
    signature: void array_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2306,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/scenegraph/vrml_js.c:2308,1
    - Dst: JS_AtomToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2310,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:2313,1
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2314,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2316,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:2318,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/scenegraph/vrml_js.c:2318,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:2320,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:2322,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:2323,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2325,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/scenegraph/vrml_js.c:2330,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2332,1
    - Dst: node_get_binding
      Src: /src/gpac/src/scenegraph/vrml_js.c:2332,1
    - Dst: JS_GetScriptStack
      Src: /src/gpac/src/scenegraph/vrml_js.c:2332,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2338,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 4
    argNames:
    - c
    - obj
    - atom
    - receiver
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2341
      start: 2302
    functionDepth: 3
    functionLinenumber: 2302
    functionLinenumberEnd: 2341
    functionName: array_getElement
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - gf_node_list_get_count
    - gf_node_list_get_child
    - JS_AtomIsArrayIndex
    - JS_AtomToCString
    - strcmp
    - JS_NewCFunction
    - JS_GetScriptStack
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - node_get_binding
    - JS_GetAnyOpaque
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue array_getElement(JSContext *c, JSValueConst obj, JSAtom atom,
      JSValueConst receiver)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsInteger
      Src: /src/gpac/src/scenegraph/vrml_js.c:2349,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:2351,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/vrml_js.c:2356,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scenegraph/vrml_js.c:2359,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2363,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:2365,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/scenegraph/vrml_js.c:2390,1
    - Dst: gf_node_list_del_child_idx
      Src: /src/gpac/src/scenegraph/vrml_js.c:2392,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_js.c:2393,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:2397,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:2403,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_js.c:2404,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:2409,1
    - Dst: SFVec2f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:2410,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2421,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2425,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:2429,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scenegraph/vrml_js.c:2434,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 84
    argCount: 3
    argNames:
    - c
    - ptr
    - value
    argTypes:
    - JSContext*
    - GF_JSField*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2437
      start: 2344
    functionDepth: 4
    functionLinenumber: 2344
    functionLinenumberEnd: 2437
    functionName: array_setLength
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_NewObjectClass
    - gf_sg_vrml_get_sf_type
    - JS_NewFloat64
    - gf_sg_vrml_mf_append
    - JS_FreeValue
    - GF_LOG
    - SFVec2f_Create
    - gf_node_list_del_child_idx
    - JS_IsInteger
    - JS_NewString
    - gf_node_unregister_children
    - JS_ToInt32
    - JS_NewInt32
    - gf_node_unregister
    - gf_node_list_get_count
    - gf_sg_vrml_mf_reset
    - gf_realloc
    linkageType: ''
    returnType: int
    signature: int array_setLength(JSContext *c, GF_JSField *ptr, JSValueConst value)
  - BBCount: 63
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2452,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/scenegraph/vrml_js.c:2455,1
    - Dst: JS_AtomToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2457,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:2458,1
    - Dst: array_setLength
      Src: /src/gpac/src/scenegraph/vrml_js.c:2459,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2461,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/scenegraph/vrml_js.c:2467,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:2469,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:2492,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/scenegraph/vrml_js.c:2499,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:2502,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2506,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2510,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:2516,1
    - Dst: gf_sg_vrml_mf_insert
      Src: /src/gpac/src/scenegraph/vrml_js.c:2523,1
    - Dst: gf_sg_vrml_mf_insert
      Src: /src/gpac/src/scenegraph/vrml_js.c:2529,1
    - Dst: gf_sg_vrml_mf_insert
      Src: /src/gpac/src/scenegraph/vrml_js.c:2537,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:2543,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/vrml_js.c:2544,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2545,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:2547,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2548,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/scenegraph/vrml_js.c:2550,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/scenegraph/vrml_js.c:2552,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/scenegraph/vrml_js.c:2554,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/scenegraph/vrml_js.c:2556,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2558,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2560,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2571,1
    - Dst: gf_node_list_del_child_idx
      Src: /src/gpac/src/scenegraph/vrml_js.c:2577,1
    - Dst: gf_node_list_insert_child
      Src: /src/gpac/src/scenegraph/vrml_js.c:2581,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/vrml_js.c:2582,1
    - Dst: node_get_binding
      Src: /src/gpac/src/scenegraph/vrml_js.c:2585,1
    - Dst: JS_GetScriptStack
      Src: /src/gpac/src/scenegraph/vrml_js.c:2585,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_js.c:2588,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2590,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2595,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2596,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/scenegraph/vrml_js.c:2604,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:2607,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2611,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2612,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2615,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:2620,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2623,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:2624,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2625,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:2630,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2633,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:2634,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2636,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2640,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:2641,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2644,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:2645,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2648,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:2649,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2652,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:2653,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2657,1
    CyclomaticComplexity: 65
    EdgeCount: 65
    ICount: 194
    argCount: 6
    argNames:
    - c
    - obj
    - atom
    - value
    - receiver
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2659
      start: 2440
    functionDepth: 11
    functionLinenumber: 2440
    functionLinenumberEnd: 2659
    functionName: array_setElement
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_IsNumber
    - gf_node_list_insert_child
    - array_setLength
    - gf_node_list_del_child_idx
    - JS_IsInteger
    - JS_AtomToCString
    - gf_sg_vrml_field_copy
    - JS_ToFloat64
    - gf_node_unregister
    - Script_FieldChanged
    - JS_FreeCString
    - gf_realloc
    - JS_ToCString
    - JS_IsString
    - JS_DupValue
    - gf_strdup
    - gf_sg_vrml_mf_insert
    - JS_NewFloat64
    - JS_GetOpaque
    - JS_AtomIsArrayIndex
    - JS_NewString
    - JS_IsUndefined
    - JS_ToBool
    - gf_sg_vrml_is_sf_field
    - JS_NewInt32
    - JS_IsBool
    - FLT2FIX
    - JS_NewObjectClass
    - JS_IsNull
    - JS_ToInt32
    - gf_node_list_get_count
    - JS_FreeValue
    - JS_NewBool
    - strcmp
    - JS_GetScriptStack
    - gf_node_register
    - node_get_binding
    - JS_GetAnyOpaque
    linkageType: ''
    returnType: int
    signature: int array_setElement(JSContext *c, JSValueConst obj, JSAtom atom, JSValueConst
      value, JSValueConst receiver, int flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: genmf_Constructor
      Src: /src/gpac/src/scenegraph/vrml_js.c:2665,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2666
      start: 2663
    functionDepth: 3
    functionLinenumber: 2663
    functionLinenumberEnd: 2666
    functionName: MFVec2fConstructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - genmf_Constructor
    linkageType: ''
    returnType: JSValue
    signature: JSValue MFVec2fConstructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: genmf_Constructor
      Src: /src/gpac/src/scenegraph/vrml_js.c:2671,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2672
      start: 2669
    functionDepth: 3
    functionLinenumber: 2669
    functionLinenumberEnd: 2672
    functionName: MFVec3fConstructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - genmf_Constructor
    linkageType: ''
    returnType: JSValue
    signature: JSValue MFVec3fConstructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: genmf_Constructor
      Src: /src/gpac/src/scenegraph/vrml_js.c:2677,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2678
      start: 2675
    functionDepth: 3
    functionLinenumber: 2675
    functionLinenumberEnd: 2678
    functionName: MFRotationConstructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - genmf_Constructor
    linkageType: ''
    returnType: JSValue
    signature: JSValue MFRotationConstructor(JSContext *c, JSValueConst new_target,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: genmf_Constructor
      Src: /src/gpac/src/scenegraph/vrml_js.c:2683,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2684
      start: 2681
    functionDepth: 3
    functionLinenumber: 2681
    functionLinenumberEnd: 2684
    functionName: MFColorConstructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - genmf_Constructor
    linkageType: ''
    returnType: JSValue
    signature: JSValue MFColorConstructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2694,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2696,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:2697,1
    - Dst: gf_sg_js_event_add_listener
      Src: /src/gpac/src/scenegraph/vrml_js.c:2699,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - c
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2700
      start: 2691
    functionDepth: 7
    functionLinenumber: 2691
    functionLinenumberEnd: 2700
    functionName: vrml_event_add_listener
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_assert
    - gf_sg_js_event_add_listener
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue vrml_event_add_listener(JSContext *c, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2705,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2706,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:2707,1
    - Dst: gf_sg_js_event_remove_listener
      Src: /src/gpac/src/scenegraph/vrml_js.c:2709,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - c
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2710
      start: 2702
    functionDepth: 6
    functionLinenumber: 2702
    functionLinenumberEnd: 2710
    functionName: vrml_event_remove_listener
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_assert
    - gf_sg_js_event_remove_listener
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue vrml_event_remove_listener(JSContext *c, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2829,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:2831,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2832,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_js.c:2837,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2839,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2840,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:2846,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2848,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2850
      start: 2826
    functionDepth: 1
    functionLinenumber: 2826
    functionLinenumberEnd: 2850
    functionName: field_gc_mark
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - JS_IsUndefined
    - gf_list_enum
    - JS_GetAnyOpaque
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: void field_gc_mark(JSRuntime *rt, JSValueConst val, JS_MarkFunc *mark_func)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _class
    - ','
    - _name
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2860
      start: 2852
    functionDepth: 0
    functionLinenumber: 2852
    functionLinenumberEnd: 2860
    functionName: SETUP_JSCLASS_BASIC
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SETUP_JSCLASS_BASIC(_class, _name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - _class
    - ','
    - _name
    - ','
    - _proto_funcs
    - ','
    - _construct
    - ','
    - _finalize
    - ','
    - _exotic
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2878
      start: 2860
    functionDepth: 0
    functionLinenumber: 2860
    functionLinenumberEnd: 2878
    functionName: SETUP_JSCLASS
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SETUP_JSCLASS(_class, _name, _proto_funcs, _construct, _finalize, _exotic)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:2880,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/scenegraph/vrml_js.c:2881,1
    - Dst: SETUP_JSCLASS_BASIC
      Src: /src/gpac/src/scenegraph/vrml_js.c:2883,1
    - Dst: SETUP_JSCLASS_BASIC
      Src: /src/gpac/src/scenegraph/vrml_js.c:2884,1
    - Dst: SETUP_JSCLASS_BASIC
      Src: /src/gpac/src/scenegraph/vrml_js.c:2885,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/vrml_js.c:2887,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/vrml_js.c:2888,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/vrml_js.c:2889,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/vrml_js.c:2890,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/vrml_js.c:2891,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/vrml_js.c:2892,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/vrml_js.c:2894,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/vrml_js.c:2895,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/vrml_js.c:2896,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/vrml_js.c:2897,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/vrml_js.c:2898,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/vrml_js.c:2899,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/vrml_js.c:2900,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/vrml_js.c:2901,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/vrml_js.c:2902,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/vrml_js.c:2903,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/vrml_js.c:2904,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:2907,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:2907,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:2908,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:2908,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:2909,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:2909,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2912,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:2914,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:2915,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:2916,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:2917,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:2920,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/scenegraph/vrml_js.c:2921,1
    - Dst: countof
      Src: /src/gpac/src/scenegraph/vrml_js.c:2921,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:2922,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:2926,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:2927,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:2929,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:2930,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 36
    argCount: 2
    argNames:
    - sc
    - script
    argTypes:
    - GF_ScriptPriv*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2932
      start: 2878
    functionDepth: 1
    functionLinenumber: 2878
    functionLinenumberEnd: 2932
    functionName: vrml_js_init_api
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - SETUP_JSCLASS
    - JS_GetGlobalObject
    - JS_NewObjectClass
    - JS_SetPropertyFunctionList
    - JS_SetOpaque
    - SETUP_JSCLASS_BASIC
    - countof
    - JS_NewCFunction
    - JS_SetPropertyStr
    - JS_GetRuntime
    linkageType: ''
    returnType: void
    signature: void vrml_js_init_api(GF_ScriptPriv *sc, GF_Node *script)
  - BBCount: 61
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:2948,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/vrml_js.c:2949,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/scenegraph/vrml_js.c:2954,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2955,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:2959,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2960,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2964,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2965,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2966,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2971,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2973,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2980,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:2983,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:2984,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:2985,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2986,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2988,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2992,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:2993,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:2994,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2996,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2997,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3002,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scenegraph/vrml_js.c:3003,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3005,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3007,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:3008,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3009,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3012,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3013,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:3014,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3015,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3017,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scenegraph/vrml_js.c:3022,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3023,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3024,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:3025,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3027,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3028,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:3036,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3040,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:3042,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3043,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3048,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:3050,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3051,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3056,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:3058,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3059,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3064,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:3066,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3067,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3071,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:3073,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3074,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_js.c:3081,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3085,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/vrml_js.c:3086,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3087,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/vrml_js.c:3091,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3092,1
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3099,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/vrml_js.c:3107,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3112,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scenegraph/vrml_js.c:3117,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/vrml_js.c:3118,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3120,1
    - Dst: JSScript_NodeModified
      Src: /src/gpac/src/scenegraph/vrml_js.c:3122,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scenegraph/vrml_js.c:3130,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3131,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/scenegraph/vrml_js.c:3139,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:3142,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:3147,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:3148,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:3152,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3159,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:3160,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:3161,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:3162,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3165,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:3171,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3172,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:3173,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3175,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3180,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:3182,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3186,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:3188,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3192,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:3194,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3198,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:3200,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3208,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 229
    argCount: 5
    argNames:
    - c
    - val
    - field
    - owner
    - parent
    argTypes:
    - JSContext*
    - JSValue
    - GF_FieldInfo*
    - GF_Node*
    - GF_JSField*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3209
      start: 2936
    functionDepth: 11
    functionLinenumber: 2936
    functionLinenumberEnd: 3209
    functionName: gf_sg_script_to_node_field
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_node_list_add_child_last
    - gf_sg_vrml_field_copy
    - JS_ToFloat64
    - JSScript_NodeModified
    - gf_node_unregister
    - Script_FieldChanged
    - JS_FreeCString
    - gf_sg_vrml_mf_alloc
    - JS_ToCString
    - gf_strdup
    - JS_GetOpaque
    - JS_IsUndefined
    - JS_ToBool
    - gf_node_unregister_children
    - JS_IsObject
    - gf_sg_vrml_mf_reset
    - FLT2FIX
    - JS_IsNull
    - JS_ToInt32
    - strcmp
    - gf_node_register
    - JS_GetAnyOpaque
    linkageType: ''
    returnType: void
    signature: void gf_sg_script_to_node_field(JSContext *c, JSValue val, GF_FieldInfo
      *field, GF_Node *owner, GF_JSField *parent)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:3216,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3218,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:3224,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/scenegraph/vrml_js.c:3230,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:3238,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:3246,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:3246,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:3254,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3262,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_js.c:3272,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3273,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3275,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:3292,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:3293,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3294,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/scenegraph/vrml_js.c:3298,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:3300,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:3300,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/scenegraph/vrml_js.c:3306,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3307,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/scenegraph/vrml_js.c:3309,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3309,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3313,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/scenegraph/vrml_js.c:3317,1
    - Dst: node_get_binding
      Src: /src/gpac/src/scenegraph/vrml_js.c:3317,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:3322,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:3322,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 81
    argCount: 5
    argNames:
    - priv
    - obj
    - jsf
    - field
    - parent
    argTypes:
    - GF_ScriptPriv*
    - JSValue
    - GF_JSField*
    - GF_FieldInfo*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3328
      start: 3212
    functionDepth: 3
    functionLinenumber: 3212
    functionLinenumberEnd: 3328
    functionName: gf_sg_script_update_cached_object
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - gf_node_list_get_count
    - JS_NewFloat64
    - JS_GetOpaque
    - JS_FreeValue
    - GF_LOG
    - JS_GetPropertyUint32
    - JS_SetPropertyUint32
    - sprintf
    - JS_NewString
    - JS_NewBool
    - JS_ToInt32
    - JS_GetPropertyStr
    - gf_sg_vrml_is_sf_field
    - JS_SetPropertyStr
    - JS_NewInt32
    - node_get_binding
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void gf_sg_script_update_cached_object(GF_ScriptPriv *priv, JSValue
      obj, GF_JSField *jsf, GF_FieldInfo *field, GF_Node *parent)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _class
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3344
      start: 3337
    functionDepth: 0
    functionLinenumber: 3337
    functionLinenumberEnd: 3344
    functionName: SETUP_MF_FIELD
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SETUP_MF_FIELD(_class)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 1
    argNames:
    - mftype
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3356
      start: 3345
    functionDepth: 0
    functionLinenumber: 3345
    functionLinenumberEnd: 3356
    functionName: get_sf_class
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_JSClass
    signature: GF_JSClass *get_sf_class(u32 mftype)
  - BBCount: 62
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewBool
      Src: /src/gpac/src/scenegraph/vrml_js.c:3368,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:3370,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:3372,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:3372,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:3374,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3376,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_js.c:3382,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3383,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3385,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_js.c:3395,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:3406,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:3406,1
    - Dst: JS_GetScript
      Src: /src/gpac/src/scenegraph/vrml_js.c:3406,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_js.c:3406,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3408,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3418,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:3421,1
    - Dst: gf_sg_script_update_cached_object
      Src: /src/gpac/src/scenegraph/vrml_js.c:3433,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3434,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:3442,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:3442,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:3448,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:3452,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:3456,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:3460,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:3464,1
    - Dst: node_get_binding
      Src: /src/gpac/src/scenegraph/vrml_js.c:3470,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3471,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3475,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3483,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3485,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/scenegraph/vrml_js.c:3487,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3494,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3496,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:3498,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3505,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3507,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:3509,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:3509,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3516,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3518,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:3520,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3527,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3529,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3533,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3540,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3542,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_js.c:3546,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3547,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3549,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3559,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3562,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:3564,1
    - Dst: SFVec2f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:3565,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3575,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3578,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:3580,1
    - Dst: SFVec3f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:3581,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3591,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3594,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:3596,1
    - Dst: SFRotation_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:3597,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3607,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3610,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:3612,1
    - Dst: SFColor_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:3613,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3623,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:3624,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/vrml_js.c:3634,1
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3639,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:3640,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3643,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:3651,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_js.c:3655,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:3657,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_js.c:3661,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:3663,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_js.c:3666,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:3668,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scenegraph/vrml_js.c:3673,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:3674,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_js.c:3675,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scenegraph/vrml_js.c:3679,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_js.c:3680,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:3682,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scenegraph/vrml_js.c:3682,1
    - Dst: get_sf_class
      Src: /src/gpac/src/scenegraph/vrml_js.c:3690,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3695,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scenegraph/vrml_js.c:3700,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_js.c:3701,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3707,1
    CyclomaticComplexity: 74
    EdgeCount: 74
    ICount: 259
    argCount: 4
    argNames:
    - priv
    - field
    - parent
    - force_evaluate
    argTypes:
    - GF_ScriptPriv*
    - GF_FieldInfo*
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3708
      start: 3358
    functionDepth: 4
    functionLinenumber: 3358
    functionLinenumberEnd: 3708
    functionName: gf_sg_script_to_qjs_field
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 3
    functionsReached:
    - gf_free
    - SFColor_Create
    - GF_SAFEALLOC
    - gf_list_find
    - gf_list_count
    - gf_node_get_log_name
    - JS_GetScript
    - FIX2FLT
    - gf_realloc
    - JS_DupValue
    - gf_assert
    - gf_list_new
    - get_sf_class
    - JS_NewFloat64
    - gf_node_get_name
    - JS_GetOpaque
    - sprintf
    - JS_NewString
    - gf_sg_script_update_cached_object
    - gf_list_add
    - JS_NewInt32
    - JS_NewObjectClass
    - JS_IsNull
    - GF_LOG
    - SFVec2f_Create
    - SFVec3f_Create
    - SFRotation_Create
    - gf_list_enum
    - SETUP_MF_FIELD
    - JS_FreeValue
    - JS_SetOpaque
    - JS_NewBool
    - node_get_binding
    - JS_GetAnyOpaque
    linkageType: ''
    returnType: JSValue
    signature: JSValue gf_sg_script_to_qjs_field(GF_ScriptPriv *priv, GF_FieldInfo
      *field, GF_Node *parent, Bool force_evaluate)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_get_rt
      Src: /src/gpac/src/scenegraph/vrml_js.c:3712,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_js.c:3715,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/scenegraph/vrml_js.c:3717,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:3718,1
    - Dst: array_finalize_ex
      Src: /src/gpac/src/scenegraph/vrml_js.c:3730,1
    - Dst: node_finalize_ex
      Src: /src/gpac/src/scenegraph/vrml_js.c:3732,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3736,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - priv
    argTypes:
    - GF_ScriptPriv*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3738
      start: 3710
    functionDepth: 5
    functionLinenumber: 3710
    functionLinenumberEnd: 3738
    functionName: JS_ReleaseRootObjects
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_list_pop_back
    - JS_FreeValue
    - gf_list_count
    - gf_js_get_rt
    - array_finalize_ex
    - node_finalize_ex
    linkageType: ''
    returnType: void
    signature: void JS_ReleaseRootObjects(GF_ScriptPriv *priv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:3746,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:3746,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:3751,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3753,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3755,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3756,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3758,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3759,1
    - Dst: JS_ReleaseRootObjects
      Src: /src/gpac/src/scenegraph/vrml_js.c:3763,1
    - Dst: gf_sg_js_dom_pre_destroy
      Src: /src/gpac/src/scenegraph/vrml_js.c:3766,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/scenegraph/vrml_js.c:3766,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3769,1
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3772,1
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3774,1
    - Dst: gf_fs_unload_js_api
      Src: /src/gpac/src/scenegraph/vrml_js.c:3780,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:3784,1
    - Dst: gf_js_delete_context
      Src: /src/gpac/src/scenegraph/vrml_js.c:3786,1
    - Dst: dom_js_unload
      Src: /src/gpac/src/scenegraph/vrml_js.c:3789,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/vrml_js.c:3792,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/vrml_js.c:3797,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3798
      start: 3740
    functionDepth: 6
    functionLinenumber: 3740
    functionLinenumberEnd: 3798
    functionName: JS_PreDestroy
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_fs_unload_js_api
    - JS_ReleaseRootObjects
    - gf_sg_js_dom_pre_destroy
    - JS_FreeValue
    - GF_LOG
    - dom_js_unload
    - gf_node_get_log_name
    - gf_js_lock
    - JS_GetContextOpaque
    - gf_list_del_item
    - JS_GetRuntime
    - gf_list_del
    - gf_js_delete_context
    linkageType: ''
    returnType: void
    signature: void JS_PreDestroy(GF_Node *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_js.c:3810,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:3816,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/scenegraph/vrml_js.c:3820,1
    - Dst: JS_NewAtom
      Src: /src/gpac/src/scenegraph/vrml_js.c:3822,1
    - Dst: JS_DefinePropertyGetSet
      Src: /src/gpac/src/scenegraph/vrml_js.c:3823,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/scenegraph/vrml_js.c:3824,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:3828,1
    - Dst: gf_sg_script_to_qjs_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:3829,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:3830,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - priv
    - sc
    argTypes:
    - GF_ScriptPriv*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3834
      start: 3801
    functionDepth: 5
    functionLinenumber: 3801
    functionLinenumberEnd: 3834
    functionName: JS_InitScriptFields
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - JS_NewCFunction2
    - gf_sg_script_to_qjs_field
    - JS_DefinePropertyGetSet
    - gf_node_get_field
    - JS_SetPropertyStr
    - JS_NewAtom
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void JS_InitScriptFields(GF_ScriptPriv *priv, GF_Node *sc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_js.c:3845,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_js.c:3848,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:3852,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/vrml_js.c:3853,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - node
    - priv
    argTypes:
    - GF_Node*
    - GF_ScriptPriv*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3858
      start: 3837
    functionDepth: 11
    functionLinenumber: 3837
    functionLinenumberEnd: 3858
    functionName: gf_js_vrml_flush_event_out
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_node_event_out
    - gf_node_get_field
    - gf_node_changed
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_js_vrml_flush_event_out(GF_Node *node, GF_ScriptPriv *priv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_js.c:3875,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/vrml_js.c:3876,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:3883,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:3885,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:3886,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/vrml_js.c:3886,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:3886,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:3887,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3888,1
    - Dst: gf_sg_script_to_qjs_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:3892,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_js.c:3894,1
    - Dst: gf_sg_script_to_qjs_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:3899,1
    - Dst: JS_Call
      Src: /src/gpac/src/scenegraph/vrml_js.c:3901,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/vrml_js.c:3902,1
    - Dst: js_dump_error
      Src: /src/gpac/src/scenegraph/vrml_js.c:3903,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3906,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3907,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3908,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3909,1
    - Dst: js_std_loop
      Src: /src/gpac/src/scenegraph/vrml_js.c:3911,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:3912,1
    - Dst: gf_js_vrml_flush_event_out
      Src: /src/gpac/src/scenegraph/vrml_js.c:3914,1
    - Dst: do_js_gc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3916,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 2
    argNames:
    - node
    - in_field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3917
      start: 3860
    functionDepth: 12
    functionLinenumber: 3860
    functionLinenumberEnd: 3917
    functionName: JS_EventIn
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_js_vrml_flush_event_out
    - JS_IsNull
    - JS_IsFunction
    - JS_Call
    - JS_FreeValue
    - JS_IsException
    - gf_sg_script_to_qjs_field
    - JS_IsUndefined
    - memset
    - gf_js_lock
    - JS_GetPropertyStr
    - do_js_gc
    - gf_node_get_scene_time
    - js_dump_error
    - js_std_loop
    linkageType: ''
    returnType: void
    signature: void JS_EventIn(GF_Node *node, GF_FieldInfo *in_field)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_load_data
      Src: /src/gpac/src/scenegraph/vrml_js.c:3931,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/scenegraph/vrml_js.c:3936,1
    - Dst: JS_DetectModule
      Src: /src/gpac/src/scenegraph/vrml_js.c:3936,1
    - Dst: JS_Eval
      Src: /src/gpac/src/scenegraph/vrml_js.c:3947,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/vrml_js.c:3948,1
    - Dst: js_dump_error
      Src: /src/gpac/src/scenegraph/vrml_js.c:3950,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3953,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:3958,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:3959,1
    - Dst: JS_Call
      Src: /src/gpac/src/scenegraph/vrml_js.c:3960,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/vrml_js.c:3961,1
    - Dst: js_dump_error
      Src: /src/gpac/src/scenegraph/vrml_js.c:3962,1
    - Dst: gf_js_vrml_flush_event_out
      Src: /src/gpac/src/scenegraph/vrml_js.c:3964,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3965,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3967,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:3969,1
    - Dst: js_std_loop
      Src: /src/gpac/src/scenegraph/vrml_js.c:3971,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 33
    argCount: 4
    argNames:
    - script
    - file
    - primary_script
    - rval
    argTypes:
    - M_Script*
    - char*
    - Bool
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3973
      start: 3919
    functionDepth: 12
    functionLinenumber: 3919
    functionLinenumberEnd: 3973
    functionName: vrml_js_load_script
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_Eval
    - JS_DetectModule
    - JS_IsFunction
    - JS_IsException
    - JS_FreeValue
    - JS_Call
    - js_std_loop
    - JS_GetPropertyStr
    - js_dump_error
    - gf_opts_get_bool
    - gf_js_vrml_flush_event_out
    - gf_file_load_data
    linkageType: ''
    returnType: Bool
    signature: Bool vrml_js_load_script(M_Script *script, char *file, Bool primary_script,
      JSValue *rval)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_get_cache_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:3995,1
    - Dst: vrml_js_load_script
      Src: /src/gpac/src/scenegraph/vrml_js.c:4001,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4003,1
    - Dst: svg_js_load_script
      Src: /src/gpac/src/scenegraph/vrml_js.c:4009,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/scenegraph/vrml_js.c:4015,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:4016,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/scenegraph/vrml_js.c:4020,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:4021,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:4024,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/scenegraph/vrml_js.c:4024,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 2
    argNames:
    - usr_cbk
    - parameter
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4026
      start: 3990
    functionDepth: 13
    functionLinenumber: 3990
    functionLinenumberEnd: 4026
    functionName: async_script_sess_io
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_FreeValue
    - gf_dm_sess_get_cache_name
    - svg_js_load_script
    - vrml_js_load_script
    - GF_LOG
    - gf_error_to_string
    - gf_dm_sess_del
    linkageType: ''
    returnType: void
    signature: void async_script_sess_io(void *usr_cbk, GF_NETIO_Parameter *parameter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_js.c:4035,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/scenegraph/vrml_js.c:4040,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:4042,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/scenegraph/vrml_js.c:4045,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 5
    argNames:
    - dnld_man
    - url
    - type
    - script
    - rval
    argTypes:
    - GF_DownloadManager*
    - char*
    - u32
    - GF_Node*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4049
      start: 4029
    functionDepth: 1
    functionLinenumber: 4029
    functionLinenumberEnd: 4049
    functionName: vrml_svg_js_async_load
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_dm_sess_process
    - gf_dm_sess_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vrml_svg_js_async_load(GF_DownloadManager *dnld_man, char *url,
      u32 type, GF_Node *script, JSValue *rval)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/vrml_js.c:4065,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:4074,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:4074,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/scenegraph/vrml_js.c:4075,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:4077,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/vrml_js.c:4082,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:4083,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/scenegraph/vrml_js.c:4086,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:4087,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:4088,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/vrml_js.c:4092,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:4092,1
    - Dst: vrml_js_load_script
      Src: /src/gpac/src/scenegraph/vrml_js.c:4093,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:4094,1
    - Dst: vrml_svg_js_async_load
      Src: /src/gpac/src/scenegraph/vrml_js.c:4099,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:4100,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/vrml_js.c:4108,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 43
    argCount: 4
    argNames:
    - node
    - opt_file
    - no_complain
    - rval
    argTypes:
    - GF_Node*
    - char*
    - Bool
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4110
      start: 4054
    functionDepth: 13
    functionLinenumber: 4054
    functionLinenumberEnd: 4110
    functionName: JSScriptFromFile
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_strdup
    - vrml_js_load_script
    - gf_url_concatenate
    - strstr
    - vrml_svg_js_async_load
    - ScriptAction
    - gf_file_ext_start
    - strnicmp
    linkageType: ''
    returnType: Bool
    signature: Bool JSScriptFromFile(GF_Node *node, const char *opt_file, Bool no_complain,
      JSValue *rval)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_js.c:4128,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/vrml_js.c:4133,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:4135,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:4136,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:4137,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:4138,1
    - Dst: gf_js_create_context
      Src: /src/gpac/src/scenegraph/vrml_js.c:4145,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:4147,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:4151,1
    - Dst: JS_SetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:4153,1
    - Dst: vrml_js_init_api
      Src: /src/gpac/src/scenegraph/vrml_js.c:4154,1
    - Dst: qjs_init_all_modules
      Src: /src/gpac/src/scenegraph/vrml_js.c:4156,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:4158,1
    - Dst: dom_js_load
      Src: /src/gpac/src/scenegraph/vrml_js.c:4161,1
    - Dst: dom_js_define_event
      Src: /src/gpac/src/scenegraph/vrml_js.c:4163,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4164,1
    - Dst: qjs_module_init_xhr_global
      Src: /src/gpac/src/scenegraph/vrml_js.c:4168,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_js.c:4171,1
    - Dst: JS_InitScriptFields
      Src: /src/gpac/src/scenegraph/vrml_js.c:4174,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:4175,1
    - Dst: JSScriptFromFile
      Src: /src/gpac/src/scenegraph/vrml_js.c:4181,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:4182,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:4186,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/scenegraph/vrml_js.c:4188,1
    - Dst: JS_DetectModule
      Src: /src/gpac/src/scenegraph/vrml_js.c:4188,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/vrml_js.c:4188,1
    - Dst: JS_Eval
      Src: /src/gpac/src/scenegraph/vrml_js.c:4191,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/vrml_js.c:4191,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/vrml_js.c:4192,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:4193,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:4194,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:4194,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:4197,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/vrml_js.c:4197,1
    - Dst: JS_Call
      Src: /src/gpac/src/scenegraph/vrml_js.c:4198,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/vrml_js.c:4199,1
    - Dst: js_dump_error
      Src: /src/gpac/src/scenegraph/vrml_js.c:4200,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4202,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4203,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4204,1
    - Dst: gf_js_vrml_flush_event_out
      Src: /src/gpac/src/scenegraph/vrml_js.c:4206,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4208,1
    - Dst: js_dump_error
      Src: /src/gpac/src/scenegraph/vrml_js.c:4210,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4213,1
    - Dst: js_std_loop
      Src: /src/gpac/src/scenegraph/vrml_js.c:4214,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:4216,1
    - Dst: do_js_gc
      Src: /src/gpac/src/scenegraph/vrml_js.c:4218,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 73
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4219
      start: 4113
    functionDepth: 14
    functionLinenumber: 4113
    functionLinenumberEnd: 4219
    functionName: JSScript_LoadVRML
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - vrml_js_init_api
    - strchr
    - js_std_loop
    - JS_DupValue
    - gf_list_new
    - JS_DetectModule
    - dom_js_load
    - qjs_module_init_xhr_global
    - JS_NewFloat64
    - JS_IsUndefined
    - qjs_init_all_modules
    - gf_list_add
    - js_dump_error
    - JS_InitScriptFields
    - JS_SetContextOpaque
    - JSScriptFromFile
    - gf_js_create_context
    - GF_LOG
    - JS_IsFunction
    - dom_js_define_event
    - strnicmp
    - JS_GetPropertyStr
    - gf_node_get_scene_time
    - strlen
    - gf_js_vrml_flush_event_out
    - do_js_gc
    - JS_Eval
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - gf_js_lock
    - gf_opts_get_bool
    linkageType: ''
    returnType: void
    signature: void JSScript_LoadVRML(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JSScript_LoadVRML
      Src: /src/gpac/src/scenegraph/vrml_js.c:4232,1
    - Dst: JSScript_LoadSVG
      Src: /src/gpac/src/scenegraph/vrml_js.c:4237,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4243
      start: 4221
    functionDepth: 15
    functionLinenumber: 4221
    functionLinenumberEnd: 4243
    functionName: JSScript_Load
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JSScript_LoadVRML
    - JSScript_LoadSVG
    linkageType: ''
    returnType: void
    signature: void JSScript_Load(GF_Node *node)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/scenegraph/vrml_js.c:4253,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_js.c:4254,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_js.c:4257,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:4258,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:4274,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/vrml_js.c:4277,1
    - Dst: svg_free_node_binding
      Src: /src/gpac/src/scenegraph/vrml_js.c:4280,1
    - Dst: JS_VALUE_HAS_REF_COUNT
      Src: /src/gpac/src/scenegraph/vrml_js.c:4289,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/scenegraph/vrml_js.c:4290,1
    - Dst: JS_ObjectDestroyed
      Src: /src/gpac/src/scenegraph/vrml_js.c:4294,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/scenegraph/vrml_js.c:4294,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4295,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:4296,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:4297,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_js.c:4299,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_js.c:4308,1
    - Dst: get_sf_class
      Src: /src/gpac/src/scenegraph/vrml_js.c:4316,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:4322,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4330,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:4332,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_js.c:4342,1
    - Dst: JS_GetScript
      Src: /src/gpac/src/scenegraph/vrml_js.c:4352,1
    - Dst: gf_sg_script_update_cached_object
      Src: /src/gpac/src/scenegraph/vrml_js.c:4353,1
    - Dst: JS_GetScriptStack
      Src: /src/gpac/src/scenegraph/vrml_js.c:4353,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 70
    argCount: 4
    argNames:
    - sg
    - node
    - info
    - script
    argTypes:
    - GF_SceneGraph*
    - GF_Node*
    - GF_FieldInfo*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4359
      start: 4246
    functionDepth: 4
    functionLinenumber: 4246
    functionLinenumberEnd: 4359
    functionName: JSScript_NodeModified
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_count
    - gf_node_unregister
    - JS_GetScript
    - gf_list_get
    - gf_assert
    - get_sf_class
    - JS_GetOpaque
    - svg_free_node_binding
    - JS_IsUndefined
    - JS_VALUE_HAS_REF_COUNT
    - gf_sg_script_update_cached_object
    - JS_GetRuntime
    - gf_node_get_private
    - JS_VALUE_GET_PTR
    - gf_list_del_item
    - gf_list_enum
    - JS_FreeValue
    - JS_GetScriptStack
    - JS_ObjectDestroyed
    linkageType: ''
    returnType: void
    signature: void JSScript_NodeModified(GF_SceneGraph *sg, GF_Node *node, GF_FieldInfo
      *info, GF_Node *script)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:4378,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:4378,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:4382,1
    - Dst: JS_GetScriptStack
      Src: /src/gpac/src/scenegraph/vrml_js.c:4384,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:4385,1
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:4387,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:4390,1
    - Dst: gf_dom_new_event
      Src: /src/gpac/src/scenegraph/vrml_js.c:4394,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:4395,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/vrml_js.c:4395,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:4396,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:4397,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:4403,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:4405,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:4408,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/vrml_js.c:4410,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:4410,1
    - Dst: JS_Call
      Src: /src/gpac/src/scenegraph/vrml_js.c:4413,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:4415,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:4416,1
    - Dst: JS_Call
      Src: /src/gpac/src/scenegraph/vrml_js.c:4417,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4421,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/vrml_js.c:4423,1
    - Dst: js_dump_error
      Src: /src/gpac/src/scenegraph/vrml_js.c:4424,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4426,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4427,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:4430,1
    - Dst: js_std_loop
      Src: /src/gpac/src/scenegraph/vrml_js.c:4432,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:4433,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 47
    argCount: 3
    argNames:
    - node
    - event
    - observer
    argTypes:
    - GF_Node*
    - GF_DOM_Event*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4436
      start: 4362
    functionDepth: 2
    functionLinenumber: 4362
    functionLinenumberEnd: 4436
    functionName: gf_sg_handle_dom_event_for_vrml
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_IsNull
    - JS_IsFunction
    - JS_Call
    - GF_LOG
    - JS_SetOpaque
    - JS_FreeValue
    - JS_IsException
    - JS_IsUndefined
    - gf_js_lock
    - JS_GetPropertyStr
    - JS_GetScriptStack
    - js_dump_error
    - gf_dom_new_event
    - JS_GetAnyOpaque
    - js_std_loop
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_handle_dom_event_for_vrml(GF_Node *node, GF_DOM_Event
      *event, GF_Node *observer)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - scene
    - script_act
    - cbk
    argTypes:
    - GF_SceneGraph*
    - gf_sg_script_action
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4456
      start: 4445
    functionDepth: 0
    functionLinenumber: 4445
    functionLinenumberEnd: 4456
    functionName: gf_sg_set_script_action
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_sg_set_script_action(GF_SceneGraph *scene, gf_sg_script_action
      script_act, void *cbk)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:4464,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:4472,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/vrml_js.c:4473,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:4473,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4474,1
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/vrml_js.c:4475,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - c
    - obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4479
      start: 4460
    functionDepth: 2
    functionLinenumber: 4460
    functionLinenumberEnd: 4479
    functionName: gf_sg_js_get_node
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 1
    functionsReached:
    - JS_IsNull
    - JS_GetOpaque
    - JS_FreeValue
    - JS_IsUndefined
    - dom_get_element
    - JS_GetPropertyStr
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sg_js_get_node(JSContext *c, JSValue obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4491
      start: 4483
    functionDepth: 0
    functionLinenumber: 4483
    functionLinenumberEnd: 4491
    functionName: gf_sg_has_scripting
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_has_scripting()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bifs_get_node_type
      Src: /src/gpac/src/scenegraph/vrml_tools.c:46,1
    - Dst: gf_x3d_get_node_type
      Src: /src/gpac/src/scenegraph/vrml_tools.c:58,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - tag
    - NDTType
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 37
    functionDepth: 3
    functionLinenumber: 37
    functionLinenumberEnd: 62
    functionName: gf_node_in_table_by_tag
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 1
    functionsReached:
    - gf_x3d_get_node_type
    - gf_bifs_get_node_type
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_in_table_by_tag(u32 tag, u32 NDTType)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_tools.c:90,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/vrml_tools.c:91,1
    - Dst: GF_Node*::sgprivate::scenegraph::on_node_modified
      Src: /src/gpac/src/scenegraph/vrml_tools.c:100,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 65
    functionDepth: 11
    functionLinenumber: 65
    functionLinenumberEnd: 102
    functionName: Node_on_add_children
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - gf_node_changed
    - gf_node_event_out
    - GF_Node*::sgprivate::scenegraph::on_node_modified
    linkageType: ''
    returnType: void
    signature: void Node_on_add_children(GF_Node *node, GF_Route *route)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_list_del_child
      Src: /src/gpac/src/scenegraph/vrml_tools.c:114,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_tools.c:115,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/vrml_tools.c:119,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_tools.c:132,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/vrml_tools.c:133,1
    - Dst: GF_Node*::sgprivate::scenegraph::on_node_modified
      Src: /src/gpac/src/scenegraph/vrml_tools.c:143,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 31
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 104
    functionDepth: 11
    functionLinenumber: 104
    functionLinenumberEnd: 145
    functionName: Node_on_remove_children
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    - gf_node_list_del_child
    - gf_node_unregister_children
    - gf_node_unregister
    - gf_node_changed
    - GF_Node*::sgprivate::scenegraph::on_node_modified
    linkageType: ''
    returnType: void
    signature: void Node_on_remove_children(GF_Node *node, GF_Route *route)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - pNode
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 156
    functionName: gf_sg_vrml_parent_setup
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 48
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_sg_vrml_parent_setup(GF_Node *pNode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/vrml_tools.c:161,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/vrml_tools.c:162,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/vrml_tools.c:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - pNode
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 158
    functionDepth: 4
    functionLinenumber: 158
    functionLinenumberEnd: 164
    functionName: gf_sg_vrml_parent_destroy
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 48
    functionsReached:
    - gf_node_unregister_children
    linkageType: ''
    returnType: void
    signature: void gf_sg_vrml_parent_destroy(GF_Node *pNode)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_tools.c:170,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_tools.c:171,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:172,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - scene
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 166
    functionDepth: 2
    functionLinenumber: 166
    functionLinenumberEnd: 175
    functionName: gf_sg_delete_all_protos
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_sg_proto_del
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_delete_all_protos(GF_SceneGraph *scene)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - scene
    - (*GetExternProtoLib)(void *SceneCallback, MFURL *lib_url)
    argTypes:
    - GF_SceneGraph*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 182
    functionName: gf_sg_set_proto_loader
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_set_proto_loader(GF_SceneGraph *scene, GF_SceneGraph
      *(*GetExternProtoLib)(void *SceneCallback, MFURL *lib_url))
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_tools.c:191,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_tools.c:194,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 184
    functionDepth: 1
    functionLinenumber: 184
    functionLinenumberEnd: 202
    functionName: gf_sg_get_next_available_route_id
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_get_next_available_route_id(GF_SceneGraph *sg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAX
      Src: /src/gpac/src/scenegraph/vrml_tools.c:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sg
    - ID
    argTypes:
    - GF_SceneGraph*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 204
    functionDepth: 1
    functionLinenumber: 204
    functionLinenumberEnd: 208
    functionName: gf_sg_set_max_defined_route_id
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - MAX
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_set_max_defined_route_id(GF_SceneGraph *sg, u32 ID)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_tools.c:215,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_tools.c:218,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_tools.c:221,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_tools.c:223,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 227
    functionName: gf_sg_get_next_available_proto_id
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_get_next_available_proto_id(GF_SceneGraph *sg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scenegraph/vrml_tools.c:235,1
    - Dst: gf_node_list_insert_child
      Src: /src/gpac/src/scenegraph/vrml_tools.c:237,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - parent
    - new_child
    - Position
    argTypes:
    - GF_Node*
    - GF_Node*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 230
    functionDepth: 2
    functionLinenumber: 230
    functionLinenumberEnd: 240
    functionName: gf_node_insert_child
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 1
    functionsReached:
    - gf_node_list_insert_child
    - gf_node_list_add_child
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_insert_child(GF_Node *parent, GF_Node *new_child,
      s32 Position)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_list_del_child
      Src: /src/gpac/src/scenegraph/vrml_tools.c:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - parent
    - toremove_child
    argTypes:
    - GF_Node*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 249
    functionName: gf_node_remove_child
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - gf_node_list_del_child
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_node_remove_child(GF_Node *parent, GF_Node *toremove_child)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_Node*::sgprivate::scenegraph::script_load
      Src: /src/gpac/src/scenegraph/vrml_tools.c:255,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 256
    functionName: gf_sg_script_load
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 2
    functionsReached:
    - GF_Node*::sgprivate::scenegraph::script_load
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_script_load(GF_Node *n)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_tools.c:264,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_tools.c:268,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:271,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_tools.c:275,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_tools.c:276,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:278,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 3
    argNames:
    - sg
    - ProtoID
    - name
    argTypes:
    - GF_SceneGraph*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 258
    functionDepth: 1
    functionLinenumber: 258
    functionLinenumberEnd: 282
    functionName: gf_sg_find_proto
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 6
    functionsReached:
    - gf_assert
    - gf_list_get
    - gf_list_count
    - stricmp
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sg_find_proto(GF_SceneGraph *sg, u32 ProtoID, char *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:288,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 291
    functionName: NewSFBool
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: SFBool
    signature: SFBool *NewSFBool()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:294,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 292
    functionDepth: 0
    functionLinenumber: 292
    functionLinenumberEnd: 297
    functionName: NewSFFloat
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: SFFloat
    signature: SFFloat *NewSFFloat()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:300,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:301,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 298
    functionDepth: 0
    functionLinenumber: 298
    functionLinenumberEnd: 303
    functionName: NewSFDouble
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: SFDouble
    signature: SFDouble *NewSFDouble()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:306,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:307,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 309
    functionName: NewSFTime
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: SFTime
    signature: SFTime *NewSFTime()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:312,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:313,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 310
    functionDepth: 0
    functionLinenumber: 310
    functionLinenumberEnd: 315
    functionName: NewSFInt32
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: SFInt32
    signature: SFInt32 *NewSFInt32()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:318,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 321
    functionName: NewSFString
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: SFString
    signature: SFString *NewSFString()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:324,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:325,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 327
    functionName: NewSFVec3f
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: SFVec3f
    signature: SFVec3f *NewSFVec3f()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:330,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 333
    functionName: NewSFVec3d
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: SFVec3d
    signature: SFVec3d *NewSFVec3d()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:336,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 339
    functionName: NewSFVec2f
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: SFVec2f
    signature: SFVec2f *NewSFVec2f()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:342,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:343,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 340
    functionDepth: 0
    functionLinenumber: 340
    functionLinenumberEnd: 345
    functionName: NewSFVec2d
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: SFVec2d
    signature: SFVec2d *NewSFVec2d()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:348,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:349,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 346
    functionDepth: 0
    functionLinenumber: 346
    functionLinenumberEnd: 351
    functionName: NewSFColor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: SFColor
    signature: SFColor *NewSFColor()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:354,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:355,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 352
    functionDepth: 0
    functionLinenumber: 352
    functionLinenumberEnd: 357
    functionName: NewSFColorRGBA
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: SFColorRGBA
    signature: SFColorRGBA *NewSFColorRGBA()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:360,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:361,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 358
    functionDepth: 0
    functionLinenumber: 358
    functionLinenumberEnd: 363
    functionName: NewSFRotation
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: SFRotation
    signature: SFRotation *NewSFRotation()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:366,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:367,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 364
    functionDepth: 0
    functionLinenumber: 364
    functionLinenumberEnd: 369
    functionName: NewSFImage
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: SFImage
    signature: SFImage *NewSFImage()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:372,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:373,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 370
    functionDepth: 0
    functionLinenumber: 370
    functionLinenumberEnd: 375
    functionName: NewSFURL
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: SFURL
    signature: SFURL *NewSFURL()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:378,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:379,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_tools.c:380,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 376
    functionDepth: 1
    functionLinenumber: 376
    functionLinenumberEnd: 382
    functionName: NewSFCommandBuffer
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: SFCommandBuffer
    signature: SFCommandBuffer *NewSFCommandBuffer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:385,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:386,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 383
    functionDepth: 0
    functionLinenumber: 383
    functionLinenumberEnd: 388
    functionName: NewSFScript
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: SFScript
    signature: SFScript *NewSFScript()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_tools.c:392,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 389
    functionDepth: 1
    functionLinenumber: 389
    functionLinenumberEnd: 394
    functionName: NewSFAttrRef
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: SFAttrRef
    signature: SFAttrRef *NewSFAttrRef()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:397,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:398,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 395
    functionDepth: 0
    functionLinenumber: 395
    functionLinenumberEnd: 400
    functionName: NewMFBool
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: MFBool
    signature: MFBool *NewMFBool()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:403,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:404,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 401
    functionDepth: 0
    functionLinenumber: 401
    functionLinenumberEnd: 406
    functionName: NewMFFloat
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: MFFloat
    signature: MFFloat *NewMFFloat()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:409,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:410,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 407
    functionDepth: 0
    functionLinenumber: 407
    functionLinenumberEnd: 412
    functionName: NewMFTime
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: MFTime
    signature: MFTime *NewMFTime()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:415,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:416,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 413
    functionDepth: 0
    functionLinenumber: 413
    functionLinenumberEnd: 418
    functionName: NewMFInt32
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: MFInt32
    signature: MFInt32 *NewMFInt32()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:421,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:422,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 419
    functionDepth: 0
    functionLinenumber: 419
    functionLinenumberEnd: 424
    functionName: NewMFString
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: MFString
    signature: MFString *NewMFString()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:427,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 425
    functionDepth: 0
    functionLinenumber: 425
    functionLinenumberEnd: 430
    functionName: NewMFVec3f
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: MFVec3f
    signature: MFVec3f *NewMFVec3f()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:433,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:434,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 431
    functionDepth: 0
    functionLinenumber: 431
    functionLinenumberEnd: 436
    functionName: NewMFVec3d
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: MFVec3d
    signature: MFVec3d *NewMFVec3d()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:439,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:440,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 442
      start: 437
    functionDepth: 0
    functionLinenumber: 437
    functionLinenumberEnd: 442
    functionName: NewMFVec2f
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: MFVec2f
    signature: MFVec2f *NewMFVec2f()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:445,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:446,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 443
    functionDepth: 0
    functionLinenumber: 443
    functionLinenumberEnd: 448
    functionName: NewMFVec2d
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: MFVec2d
    signature: MFVec2d *NewMFVec2d()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:451,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:452,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 454
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 454
    functionName: NewMFColor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: MFColor
    signature: MFColor *NewMFColor()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:457,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:458,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 455
    functionDepth: 0
    functionLinenumber: 455
    functionLinenumberEnd: 460
    functionName: NewMFColorRGBA
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: MFColorRGBA
    signature: MFColorRGBA *NewMFColorRGBA()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:463,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 461
    functionDepth: 0
    functionLinenumber: 461
    functionLinenumberEnd: 466
    functionName: NewMFRotation
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: MFRotation
    signature: MFRotation *NewMFRotation()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:469,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:470,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 467
    functionDepth: 0
    functionLinenumber: 467
    functionLinenumberEnd: 472
    functionName: NewMFURL
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: MFURL
    signature: MFURL *NewMFURL()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:475,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:476,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 473
    functionDepth: 0
    functionLinenumber: 473
    functionLinenumberEnd: 478
    functionName: NewMFScript
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: MFScript
    signature: MFScript *NewMFScript()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_tools.c:482,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 484
      start: 479
    functionDepth: 1
    functionLinenumber: 479
    functionLinenumberEnd: 484
    functionName: NewMFAttrRef
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: MFAttrRef
    signature: MFAttrRef *NewMFAttrRef()
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: NewSFBool
      Src: /src/gpac/src/scenegraph/vrml_tools.c:491,1
    - Dst: NewSFFloat
      Src: /src/gpac/src/scenegraph/vrml_tools.c:493,1
    - Dst: NewSFDouble
      Src: /src/gpac/src/scenegraph/vrml_tools.c:495,1
    - Dst: NewSFTime
      Src: /src/gpac/src/scenegraph/vrml_tools.c:497,1
    - Dst: NewSFInt32
      Src: /src/gpac/src/scenegraph/vrml_tools.c:499,1
    - Dst: NewSFString
      Src: /src/gpac/src/scenegraph/vrml_tools.c:501,1
    - Dst: NewSFVec3f
      Src: /src/gpac/src/scenegraph/vrml_tools.c:503,1
    - Dst: NewSFVec2f
      Src: /src/gpac/src/scenegraph/vrml_tools.c:505,1
    - Dst: NewSFVec3d
      Src: /src/gpac/src/scenegraph/vrml_tools.c:507,1
    - Dst: NewSFVec2d
      Src: /src/gpac/src/scenegraph/vrml_tools.c:509,1
    - Dst: NewSFColor
      Src: /src/gpac/src/scenegraph/vrml_tools.c:511,1
    - Dst: NewSFColorRGBA
      Src: /src/gpac/src/scenegraph/vrml_tools.c:513,1
    - Dst: NewSFRotation
      Src: /src/gpac/src/scenegraph/vrml_tools.c:515,1
    - Dst: NewSFImage
      Src: /src/gpac/src/scenegraph/vrml_tools.c:517,1
    - Dst: NewSFAttrRef
      Src: /src/gpac/src/scenegraph/vrml_tools.c:519,1
    - Dst: NewMFBool
      Src: /src/gpac/src/scenegraph/vrml_tools.c:521,1
    - Dst: NewMFFloat
      Src: /src/gpac/src/scenegraph/vrml_tools.c:523,1
    - Dst: NewMFTime
      Src: /src/gpac/src/scenegraph/vrml_tools.c:525,1
    - Dst: NewMFInt32
      Src: /src/gpac/src/scenegraph/vrml_tools.c:527,1
    - Dst: NewMFString
      Src: /src/gpac/src/scenegraph/vrml_tools.c:529,1
    - Dst: NewMFVec3f
      Src: /src/gpac/src/scenegraph/vrml_tools.c:531,1
    - Dst: NewMFVec2f
      Src: /src/gpac/src/scenegraph/vrml_tools.c:533,1
    - Dst: NewMFVec3d
      Src: /src/gpac/src/scenegraph/vrml_tools.c:535,1
    - Dst: NewMFVec2d
      Src: /src/gpac/src/scenegraph/vrml_tools.c:537,1
    - Dst: NewMFColor
      Src: /src/gpac/src/scenegraph/vrml_tools.c:539,1
    - Dst: NewMFColorRGBA
      Src: /src/gpac/src/scenegraph/vrml_tools.c:541,1
    - Dst: NewMFRotation
      Src: /src/gpac/src/scenegraph/vrml_tools.c:544,1
    - Dst: NewMFAttrRef
      Src: /src/gpac/src/scenegraph/vrml_tools.c:546,1
    - Dst: NewSFCommandBuffer
      Src: /src/gpac/src/scenegraph/vrml_tools.c:550,1
    - Dst: NewSFURL
      Src: /src/gpac/src/scenegraph/vrml_tools.c:553,1
    - Dst: NewMFURL
      Src: /src/gpac/src/scenegraph/vrml_tools.c:555,1
    - Dst: NewSFScript
      Src: /src/gpac/src/scenegraph/vrml_tools.c:558,1
    - Dst: NewMFScript
      Src: /src/gpac/src/scenegraph/vrml_tools.c:560,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 71
    argCount: 1
    argNames:
    - FieldType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 486
    functionDepth: 2
    functionLinenumber: 486
    functionLinenumberEnd: 563
    functionName: gf_sg_vrml_field_pointer_new
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 17
    functionsReached:
    - NewSFScript
    - NewSFFloat
    - NewMFTime
    - NewSFVec3f
    - NewSFColor
    - NewSFRotation
    - NewMFString
    - NewMFVec3d
    - NewMFBool
    - NewSFVec2d
    - NewSFCommandBuffer
    - NewSFURL
    - NewMFColor
    - NewSFAttrRef
    - NewMFInt32
    - NewMFRotation
    - NewMFURL
    - NewMFColorRGBA
    - NewMFVec2d
    - NewMFVec3f
    - NewSFDouble
    - NewSFVec2f
    - NewSFString
    - NewSFBool
    - NewSFColorRGBA
    - NewMFVec2f
    - NewSFVec3d
    - NewMFScript
    - NewMFAttrRef
    - NewMFFloat
    - NewSFImage
    - NewSFTime
    - NewSFInt32
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sg_vrml_field_pointer_new(u32 FieldType)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:566,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFInt32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 565
    functionDepth: 0
    functionLinenumber: 565
    functionLinenumberEnd: 567
    functionName: gf_sg_mfint32_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 59
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sg_mfint32_del(MFInt32 par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:569,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFFloat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 568
    functionDepth: 0
    functionLinenumber: 568
    functionLinenumberEnd: 570
    functionName: gf_sg_mffloat_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 72
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sg_mffloat_del(MFFloat par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:572,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFDouble
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 571
    functionDepth: 0
    functionLinenumber: 571
    functionLinenumberEnd: 573
    functionName: gf_sg_mfdouble_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 9
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sg_mfdouble_del(MFDouble par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:575,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFBool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 574
    functionDepth: 0
    functionLinenumber: 574
    functionLinenumberEnd: 576
    functionName: gf_sg_mfbool_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sg_mfbool_del(MFBool par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:578,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFColor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 577
    functionDepth: 0
    functionLinenumber: 577
    functionLinenumberEnd: 579
    functionName: gf_sg_mfcolor_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 13
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sg_mfcolor_del(MFColor par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:581,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFColorRGBA
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 580
    functionDepth: 0
    functionLinenumber: 580
    functionLinenumberEnd: 582
    functionName: gf_sg_mfcolorrgba_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sg_mfcolorrgba_del(MFColorRGBA par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:584,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFRotation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 585
      start: 583
    functionDepth: 0
    functionLinenumber: 583
    functionLinenumberEnd: 585
    functionName: gf_sg_mfrotation_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 7
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sg_mfrotation_del(MFRotation par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:587,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFTime
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 586
    functionDepth: 0
    functionLinenumber: 586
    functionLinenumberEnd: 588
    functionName: gf_sg_mftime_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sg_mftime_del(MFTime par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:590,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFVec2f
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 591
      start: 589
    functionDepth: 0
    functionLinenumber: 589
    functionLinenumberEnd: 591
    functionName: gf_sg_mfvec2f_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 21
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sg_mfvec2f_del(MFVec2f par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:593,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFVec2d
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 594
      start: 592
    functionDepth: 0
    functionLinenumber: 592
    functionLinenumberEnd: 594
    functionName: gf_sg_mfvec2d_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sg_mfvec2d_del(MFVec2d par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:596,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFVec3f
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 595
    functionDepth: 0
    functionLinenumber: 595
    functionLinenumberEnd: 597
    functionName: gf_sg_mfvec3f_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 25
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sg_mfvec3f_del(MFVec3f par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:599,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFVec3d
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 600
      start: 598
    functionDepth: 0
    functionLinenumber: 598
    functionLinenumberEnd: 600
    functionName: gf_sg_mfvec3d_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 3
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sg_mfvec3d_del(MFVec3d par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:602,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFVec4f
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 601
    functionDepth: 0
    functionLinenumber: 601
    functionLinenumberEnd: 603
    functionName: gf_sg_mfvec4f_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 5
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sg_mfvec4f_del(MFVec4f par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:605,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFAttrRef
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 604
    functionDepth: 0
    functionLinenumber: 604
    functionLinenumberEnd: 606
    functionName: gf_sg_mfattrref_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sg_mfattrref_del(MFAttrRef par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:608,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - im
    argTypes:
    - SFImage
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 607
    functionDepth: 0
    functionLinenumber: 607
    functionLinenumberEnd: 609
    functionName: gf_sg_sfimage_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 3
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sg_sfimage_del(SFImage im)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:611,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - par
    argTypes:
    - SFString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 610
    functionDepth: 0
    functionLinenumber: 610
    functionLinenumberEnd: 612
    functionName: gf_sg_sfstring_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 54
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sg_sfstring_del(SFString par)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_tools.c:617,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_tools.c:618,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:619,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:621,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:622,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - cb
    argTypes:
    - SFCommandBuffer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 623
      start: 614
    functionDepth: 1
    functionLinenumber: 614
    functionLinenumberEnd: 623
    functionName: gf_sg_sfcommand_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_sg_command_del
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_sg_sfcommand_del(SFCommandBuffer cb)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:646,1
    - Dst: gf_sg_sfimage_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:649,1
    - Dst: gf_node_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:654,1
    - Dst: gf_sg_sfcommand_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:657,1
    - Dst: gf_sg_mfbool_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:661,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:664,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:667,1
    - Dst: gf_sg_mftime_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:670,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:673,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:676,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:679,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:682,1
    - Dst: gf_sg_mfvec3d_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:685,1
    - Dst: gf_sg_mfvec2d_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:688,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:691,1
    - Dst: gf_sg_mfcolorrgba_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:694,1
    - Dst: gf_sg_mfrotation_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:698,1
    - Dst: gf_sg_sfurl_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:701,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:704,1
    - Dst: gf_sg_mfattrref_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:707,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_tools.c:711,1
    - Dst: gf_sg_mfscript_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:714,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_tools.c:720,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:724,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 93
    argCount: 2
    argNames:
    - field
    - FieldType
    argTypes:
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 725
      start: 625
    functionDepth: 7
    functionLinenumber: 625
    functionLinenumberEnd: 725
    functionName: gf_sg_vrml_field_pointer_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 7
    functionsReached:
    - gf_free
    - gf_sg_mfint32_del
    - gf_sg_mfvec2d_del
    - gf_sg_mftime_del
    - gf_sg_sfimage_del
    - gf_sg_sfcommand_del
    - gf_sg_mfvec3f_del
    - gf_assert
    - gf_sg_mfbool_del
    - gf_sg_mfstring_del
    - gf_node_del
    - gf_sg_mfcolor_del
    - gf_sg_mfattrref_del
    - gf_sg_mfscript_del
    - gf_sg_mfvec3d_del
    - gf_sg_mfcolorrgba_del
    - gf_sg_mfvec2f_del
    - gf_sg_mfurl_del
    - gf_sg_mfdouble_del
    - gf_sg_mffloat_del
    - gf_sg_sfurl_del
    - gf_sg_mfrotation_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_vrml_field_pointer_del(void *field, u32 FieldType)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - EventType
    - forX3D
    argTypes:
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 746
      start: 731
    functionDepth: 0
    functionLinenumber: 731
    functionLinenumberEnd: 746
    functionName: gf_sg_vrml_get_event_type_name
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sg_vrml_get_event_type_name(u32 EventType, Bool forX3D)
  - BBCount: 41
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 83
    argCount: 1
    argNames:
    - FieldType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 834
      start: 748
    functionDepth: 0
    functionLinenumber: 748
    functionLinenumberEnd: 834
    functionName: gf_sg_vrml_get_field_type_name
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sg_vrml_get_field_type_name(u32 FieldType)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:838,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:839,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:840,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:841,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:842,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:843,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:844,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:845,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:846,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:847,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:848,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:849,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:850,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:851,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:852,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:853,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:855,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:856,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:857,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:858,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:859,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:860,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:861,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:862,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:863,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:864,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:865,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:866,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:867,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:868,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:869,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:870,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 66
    argCount: 1
    argNames:
    - fieldType
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 873
      start: 836
    functionDepth: 0
    functionLinenumber: 836
    functionLinenumberEnd: 873
    functionName: gf_sg_field_type_by_name
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - stricmp
    linkageType: ''
    returnType: u32
    signature: u32 gf_sg_field_type_by_name(char *fieldType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:878,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - url
    argTypes:
    - SFURL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 879
      start: 877
    functionDepth: 0
    functionLinenumber: 877
    functionLinenumberEnd: 879
    functionName: gf_sg_sfurl_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 4
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sg_sfurl_del(SFURL url)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - FieldType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 887
      start: 881
    functionDepth: 0
    functionLinenumber: 881
    functionLinenumberEnd: 887
    functionName: gf_sg_vrml_is_sf_field
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 25
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_vrml_is_sf_field(u32 FieldType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:893,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:895,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 896
      start: 889
    functionDepth: 0
    functionLinenumber: 889
    functionLinenumberEnd: 896
    functionName: gf_sg_mfstring_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 30
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sg_mfstring_del(MFString par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_sfurl_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:904,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:906,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - url
    argTypes:
    - MFURL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 907
      start: 899
    functionDepth: 1
    functionLinenumber: 899
    functionLinenumberEnd: 907
    functionName: gf_sg_mfurl_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 33
    functionsReached:
    - gf_free
    - gf_sg_sfurl_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_mfurl_del(MFURL url)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:912,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:914,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - sc
    argTypes:
    - MFScript
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 915
      start: 908
    functionDepth: 0
    functionLinenumber: 908
    functionLinenumberEnd: 915
    functionName: gf_sg_mfscript_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 3
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sg_mfscript_del(MFScript sc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:921,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:923,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:926,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - MFURL*
    - MFURL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 928
      start: 918
    functionDepth: 1
    functionLinenumber: 918
    functionLinenumberEnd: 928
    functionName: gf_sg_vrml_copy_mfurl
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_mf_reset
    - gf_strdup
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void gf_sg_vrml_copy_mfurl(MFURL *dst, MFURL *src)
  - BBCount: 33
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 51
    argCount: 1
    argNames:
    - FieldType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 988
      start: 933
    functionDepth: 0
    functionLinenumber: 933
    functionLinenumberEnd: 988
    functionName: gf_sg_vrml_get_sf_size
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_sg_vrml_get_sf_size(u32 FieldType)
  - BBCount: 38
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 59
    argCount: 1
    argNames:
    - FieldType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1054
      start: 990
    functionDepth: 0
    functionLinenumber: 990
    functionLinenumberEnd: 1054
    functionName: gf_sg_vrml_get_sf_type
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 26
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_vrml_get_sf_type(u32 FieldType)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1068,1
    - Dst: gf_sg_vrml_get_sf_size
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1071,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1078,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1079,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1080,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1088,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1089,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1095,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1103,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1107,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1109,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 42
    argCount: 4
    argNames:
    - mf
    - FieldType
    - new_ptr
    - InsertAt
    argTypes:
    - void*
    - u32
    - void**
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1113
      start: 1061
    functionDepth: 1
    functionLinenumber: 1061
    functionLinenumberEnd: 1113
    functionName: gf_sg_vrml_mf_insert
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 2
    functionsReached:
    - gf_free
    - memcpy
    - gf_sg_vrml_get_sf_size
    - memset
    - gf_sg_vrml_is_sf_field
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_vrml_mf_insert(void *mf, u32 FieldType, void **new_ptr,
      u32 InsertAt)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1123,1
    - Dst: gf_sg_vrml_get_sf_size
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1124,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1128,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1131,1
    - Dst: gf_sg_mfscript_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1134,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1137,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 25
    argCount: 2
    argNames:
    - mf
    - FieldType
    argTypes:
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1144
      start: 1116
    functionDepth: 2
    functionLinenumber: 1116
    functionLinenumberEnd: 1144
    functionName: gf_sg_vrml_mf_reset
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 7
    functionsReached:
    - gf_free
    - gf_sg_mfurl_del
    - gf_sg_vrml_get_sf_size
    - gf_sg_vrml_is_sf_field
    - gf_sg_mfstring_del
    - gf_sg_mfscript_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_vrml_mf_reset(void *mf, u32 FieldType)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1155,1
    - Dst: gf_sg_vrml_get_sf_size
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1159,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1166,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1168,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1169,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 3
    argNames:
    - mf
    - FieldType
    - NbItems
    argTypes:
    - void*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1173
      start: 1149
    functionDepth: 3
    functionLinenumber: 1149
    functionLinenumberEnd: 1173
    functionName: gf_sg_vrml_mf_alloc
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 9
    functionsReached:
    - gf_sg_vrml_get_sf_size
    - memset
    - gf_sg_vrml_is_sf_field
    - gf_sg_vrml_mf_reset
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_vrml_mf_alloc(void *mf, u32 FieldType, u32 NbItems)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1182,1
    - Dst: gf_sg_vrml_get_sf_size
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1186,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 4
    argNames:
    - mf
    - FieldType
    - new_ptr
    - ItemPos
    argTypes:
    - void*
    - u32
    - void**
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1193
      start: 1175
    functionDepth: 1
    functionLinenumber: 1175
    functionLinenumberEnd: 1193
    functionName: gf_sg_vrml_mf_get_item
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 10
    functionsReached:
    - gf_sg_vrml_get_sf_size
    - gf_sg_vrml_is_sf_field
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_vrml_mf_get_item(void *mf, u32 FieldType, void **new_ptr,
      u32 ItemPos)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_mf_insert
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1201,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - mf
    - FieldType
    - new_ptr
    argTypes:
    - void*
    - u32
    - void**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1202
      start: 1196
    functionDepth: 2
    functionLinenumber: 1196
    functionLinenumberEnd: 1202
    functionName: gf_sg_vrml_mf_append
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 4
    functionsReached:
    - gf_sg_vrml_mf_insert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_vrml_mf_append(void *mf, u32 FieldType, void **new_ptr)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_get_sf_size
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1214,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1222,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1228,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1233,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1236,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 3
    argNames:
    - mf
    - FieldType
    - RemoveFrom
    argTypes:
    - void*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1240
      start: 1206
    functionDepth: 1
    functionLinenumber: 1206
    functionLinenumberEnd: 1240
    functionName: gf_sg_vrml_mf_remove
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 2
    functionsReached:
    - gf_free
    - memcpy
    - gf_sg_vrml_get_sf_size
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_vrml_mf_remove(void *mf, u32 FieldType, u32 RemoveFrom)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1257,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1258,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1259,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1261,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1262,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1267,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1268,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1275,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1277,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1288,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1290,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1292,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1293,1
    - Dst: VRML_FieldCopyCast
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1294,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1299,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1301,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1304,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1305,1
    - Dst: VRML_FieldCopyCast
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1306,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 59
    argCount: 4
    argNames:
    - dest
    - dst_field_type
    - orig
    - ori_field_type
    argTypes:
    - void*
    - u32
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1309
      start: 1244
    functionDepth: 4
    functionLinenumber: 1244
    functionLinenumberEnd: 1309
    functionName: VRML_FieldCopyCast
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_mf_get_item
    - VRML_FieldCopyCast
    - sprintf
    - gf_sg_vrml_is_sf_field
    - gf_sg_vrml_mf_alloc
    linkageType: ''
    returnType: void
    signature: void VRML_FieldCopyCast(void *dest, u32 dst_field_type, void *orig,
      u32 ori_field_type)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1321,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1324,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1327,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1330,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1333,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1336,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1339,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1342,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1345,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1348,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1350,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1355,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1358,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1363,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1368,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1369,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1377,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1378,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1379,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1382,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1385,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1387,1
    - Dst: gf_sg_vrml_command_clone
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1388,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1389,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1397,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1400,1
    - Dst: gf_sg_vrml_get_sf_size
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1414,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1416,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1420,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1428,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1429,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1430,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1433,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1434,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1435,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 111
    argCount: 4
    argNames:
    - dest
    - orig
    - field_type
    - inScene
    argTypes:
    - void*
    - void*
    - u32
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1439
      start: 1311
    functionDepth: 4
    functionLinenumber: 1311
    functionLinenumberEnd: 1439
    functionName: gf_sg_vrml_field_clone
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_list_get
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_mf_alloc
    - memcpy
    - gf_sg_vrml_mf_get_item
    - gf_sg_vrml_command_clone
    - gf_sg_vrml_get_sf_size
    - gf_list_count
    - gf_sg_vrml_field_copy
    - gf_list_add
    - gf_sg_vrml_mf_reset
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_vrml_field_clone(void *dest, void *orig, u32 field_type,
      GF_SceneGraph *inScene)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_field_clone
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1444,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - dest
    - orig
    - field_type
    argTypes:
    - void*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1445
      start: 1441
    functionDepth: 5
    functionLinenumber: 1441
    functionLinenumberEnd: 1445
    functionName: gf_sg_vrml_field_copy
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 11
    functionsReached:
    - gf_sg_vrml_field_clone
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_vrml_field_copy(void *dest, void *orig, u32 field_type)
  - BBCount: 51
    BranchProfiles: []
    Callsites:
    - Dst: memcmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1458,1
    - Dst: memcmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1469,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1491,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1502,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1531,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1533,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1534,1
    - Dst: gf_sg_vrml_field_equal
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1535,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 107
    argCount: 3
    argNames:
    - dest
    - orig
    - field_type
    argTypes:
    - void*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1544
      start: 1447
    functionDepth: 2
    functionLinenumber: 1447
    functionLinenumberEnd: 1544
    functionName: gf_sg_vrml_field_equal
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 3
    functionsReached:
    - memcmp
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_mf_get_item
    - strcmp
    - gf_sg_vrml_field_equal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_vrml_field_equal(void *dest, void *orig, u32 field_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - val
    argTypes:
    - SFColor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1557
      start: 1548
    functionDepth: 0
    functionLinenumber: 1548
    functionLinenumberEnd: 1557
    functionName: SFColorRGBA::gf_sg_sfcolor_to_rgba
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT SFColorRGBA gf_sg_sfcolor_to_rgba(SFColor val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1563,1
    - Dst: gf_sg_proto_get_num_fields
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1564,1
    - Dst: gf_sg_script_get_num_fields
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1566,1
    - Dst: gf_sg_script_get_num_fields
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1569,1
    - Dst: gf_sg_mpeg4_node_get_field_count
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1571,1
    - Dst: gf_sg_x3d_node_get_field_count
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1573,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - Node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1576
      start: 1560
    functionDepth: 2
    functionLinenumber: 1560
    functionLinenumberEnd: 1576
    functionName: gf_node_get_num_fields_in_mode
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 37
    functionsReached:
    - gf_sg_script_get_num_fields
    - gf_assert
    - gf_sg_x3d_node_get_field_count
    - gf_sg_mpeg4_node_get_field_count
    - gf_sg_proto_get_num_fields
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_get_num_fields_in_mode(GF_Node *Node, u8 IndexMode)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: InitColorInterpolator
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1615,1
    - Dst: InitCoordinateInterpolator
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1620,1
    - Dst: InitCoordinateInterpolator2D
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1622,1
    - Dst: InitNormalInterpolator
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1627,1
    - Dst: InitOrientationInterpolator
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1632,1
    - Dst: InitPositionInterpolator
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1637,1
    - Dst: InitPositionInterpolator2D
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1642,1
    - Dst: InitScalarInterpolator
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1647,1
    - Dst: InitValuator
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1649,1
    - Dst: PA_Init
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1651,1
    - Dst: PA2D_Init
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1654,1
    - Dst: SA_Init
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1657,1
    - Dst: InitPositionInterpolator4D
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1660,1
    - Dst: InitCoordinateInterpolator4D
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1662,1
    - Dst: InitBooleanFilter
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1671,1
    - Dst: InitBooleanSequencer
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1674,1
    - Dst: InitBooleanToggle
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1677,1
    - Dst: InitBooleanTrigger
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1680,1
    - Dst: InitIntegerSequencer
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1683,1
    - Dst: InitIntegerTrigger
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1686,1
    - Dst: InitTimeTrigger
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1689,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 66
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1694
      start: 1608
    functionDepth: 7
    functionLinenumber: 1608
    functionLinenumberEnd: 1694
    functionName: gf_sg_vrml_node_init
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 1
    functionsReached:
    - InitBooleanTrigger
    - PA_Init
    - InitCoordinateInterpolator4D
    - InitPositionInterpolator2D
    - InitPositionInterpolator
    - SA_Init
    - InitCoordinateInterpolator2D
    - InitIntegerSequencer
    - InitTimeTrigger
    - InitColorInterpolator
    - InitScalarInterpolator
    - InitBooleanFilter
    - InitBooleanToggle
    - InitCoordinateInterpolator
    - InitBooleanSequencer
    - InitIntegerTrigger
    - InitOrientationInterpolator
    - InitPositionInterpolator4D
    - PA2D_Init
    - InitValuator
    - InitNormalInterpolator
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sg_vrml_node_init(GF_Node *node)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: PA_Modified
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1732,1
    - Dst: PA2D_Modified
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1735,1
    - Dst: SA_Modified
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1738,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 43
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1742
      start: 1696
    functionDepth: 2
    functionLinenumber: 1696
    functionLinenumberEnd: 1742
    functionName: gf_sg_vrml_node_changed
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 1
    functionsReached:
    - PA_Modified
    - PA2D_Modified
    - SA_Modified
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sg_vrml_node_changed(GF_Node *node, GF_FieldInfo *field)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1751,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1752,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1754,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1755,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1757,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1757,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1758,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1760,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1761,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1763,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1764,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1766,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1766,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1766,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1767,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1769,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1770,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1772,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1772,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1772,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1772,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1773,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1775,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1776,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1778,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1778,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1778,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1778,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1779,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1781,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1781,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1781,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1781,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1781,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1782,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1784,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1784,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1784,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1784,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1784,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1785,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1787,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1788,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1792,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1794,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1795,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1806,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1808,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1813,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1817,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1821,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1825,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1829,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 81
    argCount: 2
    argNames:
    - n
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1838
      start: 1745
    functionDepth: 1
    functionLinenumber: 1745
    functionLinenumberEnd: 1838
    functionName: gf_node_vrml_dump_attribute
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 1
    functionsReached:
    - strcat
    - gf_strdup
    - strcpy
    - sprintf
    - gf_malloc
    - FIX2FLT
    linkageType: ''
    returnType: char
    signature: char *gf_node_vrml_dump_attribute(GF_Node *n, GF_FieldInfo *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_proto_get_root_tag
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1849,1
    - Dst: gf_node_in_table_by_tag
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1852,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - node
    - NDTType
    argTypes:
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1856
      start: 1844
    functionDepth: 4
    functionLinenumber: 1844
    functionLinenumberEnd: 1856
    functionName: gf_node_in_table
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 1
    functionsReached:
    - gf_sg_proto_get_root_tag
    - gf_node_in_table_by_tag
    linkageType: ''
    returnType: Bool
    signature: Bool gf_node_in_table(GF_Node *node, u32 NDTType)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionName: script_get_nb_static_field
    functionSourceFile: /src/gpac/src/scenegraph/vrml_script.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 script_get_nb_static_field(GF_Node *node)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_ScriptPriv*::JS_PreDestroy
      Src: /src/gpac/src/scenegraph/vrml_script.c:48,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_script.c:51,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_script.c:52,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/vrml_script.c:53,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_script.c:59,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/vrml_script.c:62,1
    - Dst: gf_sg_vrml_field_pointer_del
      Src: /src/gpac/src/scenegraph/vrml_script.c:65,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_script.c:69,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_script.c:70,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/vrml_script.c:72,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_script.c:73,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 3
    argNames:
    - node
    - eff
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 40
    functionDepth: 8
    functionLinenumber: 40
    functionLinenumberEnd: 74
    functionName: Script_PreDestroy
    functionSourceFile: /src/gpac/src/scenegraph/vrml_script.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_pointer_del
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_node_unregister_children
    - gf_node_unregister
    - gf_list_del
    - GF_ScriptPriv*::JS_PreDestroy
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void Script_PreDestroy(GF_Node *node, void *eff, Bool is_destroy)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: script_get_nb_static_field
      Src: /src/gpac/src/scenegraph/vrml_script.c:90,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_script.c:91,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 93
    functionName: gf_sg_script_get_num_fields
    functionSourceFile: /src/gpac/src/scenegraph/vrml_script.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - script_get_nb_static_field
    linkageType: ''
    returnType: u32
    signature: u32 gf_sg_script_get_num_fields(GF_Node *node, u8 IndexMode)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: script_get_nb_static_field
      Src: /src/gpac/src/scenegraph/vrml_script.c:100,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_script.c:103,1
    - Dst: gf_sg_mpeg4_node_get_field_count
      Src: /src/gpac/src/scenegraph/vrml_script.c:124,1
    - Dst: gf_sg_mpeg4_node_get_field_index
      Src: /src/gpac/src/scenegraph/vrml_script.c:127,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 28
    argCount: 4
    argNames:
    - node
    - inField
    - IndexMode
    - allField
    argTypes:
    - GF_Node*
    - u32
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 128
    functionName: gf_sg_script_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/vrml_script.c
    functionUses: 2
    functionsReached:
    - gf_sg_mpeg4_node_get_field_index
    - script_get_nb_static_field
    - gf_sg_mpeg4_node_get_field_count
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_script_get_field_index(GF_Node *node, u32 inField,
      u8 IndexMode, u32 *allField)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/scenegraph/vrml_script.c:139,1
    - Dst: script_get_nb_static_field
      Src: /src/gpac/src/scenegraph/vrml_script.c:140,1
    - Dst: gf_sg_mpeg4_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_script.c:144,1
    - Dst: gf_sg_x3d_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_script.c:146,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_script.c:153,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 2
    argNames:
    - node
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 131
    functionDepth: 2
    functionLinenumber: 131
    functionLinenumberEnd: 174
    functionName: gf_sg_script_get_field
    functionSourceFile: /src/gpac/src/scenegraph/vrml_script.c
    functionUses: 1
    functionsReached:
    - gf_sg_mpeg4_node_get_field
    - gf_list_get
    - script_get_nb_static_field
    - gf_sg_x3d_node_get_field
    - gf_node_get_private
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sg_script_get_field(GF_Node *node, GF_FieldInfo *info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_script.c:181,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_script.c:183,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_script.c:186,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/scenegraph/vrml_script.c:188,1
    - Dst: script_get_nb_static_field
      Src: /src/gpac/src/scenegraph/vrml_script.c:192,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 176
    functionDepth: 2
    functionLinenumber: 176
    functionLinenumberEnd: 195
    functionName: gf_sg_script_init
    functionSourceFile: /src/gpac/src/scenegraph/vrml_script.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - script_get_nb_static_field
    - gf_node_set_private
    linkageType: ''
    returnType: void
    signature: void gf_sg_script_init(GF_Node *node)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/scenegraph/vrml_script.c:210,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_script.c:212,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_script.c:214,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_script.c:218,1
    - Dst: script_get_nb_static_field
      Src: /src/gpac/src/scenegraph/vrml_script.c:239,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_script.c:239,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_script.c:240,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scenegraph/vrml_script.c:244,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 197
    functionDepth: 3
    functionLinenumber: 197
    functionLinenumberEnd: 248
    functionName: GF_ScriptField *gf_sg_script_field_new(GF_Node *node, u32 eventType,
      u32 fieldType, const char *name)
    functionSourceFile: /src/gpac/src/scenegraph/vrml_script.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - GF_LOG
    - script_get_nb_static_field
    - gf_list_count
    - gf_list_add
    - gf_sg_vrml_field_pointer_new
    - gf_node_get_private
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ScriptField *gf_sg_script_field_new(GF_Node *node, u32
      eventType, u32 fieldType, const char *name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_script.c:261,1
    - Dst: gf_sg_script_field_new
      Src: /src/gpac/src/scenegraph/vrml_script.c:275,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - dest
    - orig
    argTypes:
    - GF_Node*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 278
    functionName: gf_sg_script_prepare_clone
    functionSourceFile: /src/gpac/src/scenegraph/vrml_script.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    - gf_sg_script_field_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sg_script_prepare_clone(GF_Node *dest, GF_Node *orig)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_script.c:284,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - field
    - info
    argTypes:
    - GF_ScriptField*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 280
    functionDepth: 0
    functionLinenumber: 280
    functionLinenumberEnd: 303
    functionName: gf_sg_script_field_get_info
    functionSourceFile: /src/gpac/src/scenegraph/vrml_script.c
    functionUses: 1
    functionsReached:
    - memset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_script_field_get_info(GF_ScriptField *field, GF_FieldInfo
      *info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ScriptPriv*::JS_EventIn
      Src: /src/gpac/src/scenegraph/vrml_script.c:309,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - node
    - in_field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 305
    functionDepth: 13
    functionLinenumber: 305
    functionLinenumberEnd: 310
    functionName: gf_sg_script_event_in
    functionSourceFile: /src/gpac/src/scenegraph/vrml_script.c
    functionUses: 4
    functionsReached:
    - GF_ScriptPriv*::JS_EventIn
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_script_event_in(GF_Node *node, GF_FieldInfo *in_field)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 41
    functionName: JSVAL_CHECK_STRING
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSVAL_CHECK_STRING(_v)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:67,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:68,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:69,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - c
    - obj
    argTypes:
    - JSContext*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 71
    functionName: gf_mse_is_mse_object
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_InstanceOf
    linkageType: ''
    returnType: Bool
    signature: Bool gf_mse_is_mse_object(JSContext *c, JSObject *obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:76,1
    - Dst: assert
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:77,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:78,1
    - Dst: assert
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (scene)
      pos:
        line_end: 78
        line_start: 78
        source_file: /src/gpac/src/scenegraph/html5_mse_js.c
    - condition: (global)
      pos:
        line_end: 76
        line_start: 76
        source_file: /src/gpac/src/scenegraph/html5_mse_js.c
    constantsTouched: []
    func_position:
      end: 81
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 81
    functionName: GF_SceneGraph *mediasource_get_scenegraph(JSContext *c)
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached:
    - SMJS_GET_PRIVATE
    - JS_GetGlobalObject
    - assert
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE GF_SceneGraph *mediasource_get_scenegraph(JSContext *c)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: mediasource_get_scenegraph
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:85,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:86,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:88,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:90,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:92,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:94,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:96,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 4
    argNames:
    - c
    - obj
    - target
    - sg
    argTypes:
    - JSContext*
    - JSObject*
    - GF_DOMEventTarget**
    - GF_SceneGraph**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 102
    functionName: gf_mse_get_event_target
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 1
    functionsReached:
    - SMJS_GET_PRIVATE
    - GF_JS_InstanceOf
    - mediasource_get_scenegraph
    linkageType: ''
    returnType: void
    signature: void gf_mse_get_event_target(JSContext *c, JSObject *obj, GF_DOMEventTarget
      **target, GF_SceneGraph **sg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:106,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:108,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:109,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - c
    - ms_obj
    - sb
    argTypes:
    - JSContext*
    - JSObject*
    - GF_HTML_SourceBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 111
    functionName: mediasource_sourceBuffer_initjs
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_PRIVATE
    - JS_NewObject
    linkageType: ''
    returnType: void
    signature: void mediasource_sourceBuffer_initjs(JSContext *c, JSObject *ms_obj,
      GF_HTML_SourceBuffer *sb)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSVAL_CHECK_STRING
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:122,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:123,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:125,1
    - Dst: mediasource_get_scenegraph
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:127,1
    - Dst: assert
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:128,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:130,1
    - Dst: GF_SceneGraph*::script_action
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:134,1
    - Dst: gf_term_is_type_supported
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:135,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:140,1
    - Dst: BOOLEAN_TO_JSVAL
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:140,1
    - Dst: SMJS_FREE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:141,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (sg)
      pos:
        line_end: 127
        line_start: 127
        source_file: /src/gpac/src/scenegraph/html5_mse_js.c
    constantsTouched: []
    func_position:
      end: 143
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 143
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - SMJS_FREE
    - mediasource_get_scenegraph
    - assert
    - strlen
    - GF_SceneGraph*::script_action
    - BOOLEAN_TO_JSVAL
    - dom_throw_exception
    - gf_term_is_type_supported
    - JSVAL_CHECK_STRING
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(mediasource_is_type_supported)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:156,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:157,1
    - Dst: JSVAL_CHECK_STRING
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:159,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:161,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:163,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:164,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:168,1
    - Dst: assert
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:176,1
    - Dst: gf_mse_source_buffer_new
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:184,1
    - Dst: assert
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:185,1
    - Dst: gf_mse_source_buffer_load_parser
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:186,1
    - Dst: gf_mse_mediasource_add_source_buffer
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:188,1
    - Dst: mediasource_sourceBuffer_initjs
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:189,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:190,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:190,1
    - Dst: gf_mse_source_buffer_del
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:192,1
    - Dst: SMJS_FREE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:197,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:200,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 46
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (ms->service)
      pos:
        line_end: 175
        line_start: 175
        source_file: /src/gpac/src/scenegraph/html5_mse_js.c
    - condition: (sb)
      pos:
        line_end: 184
        line_start: 184
        source_file: /src/gpac/src/scenegraph/html5_mse_js.c
    constantsTouched: []
    func_position:
      end: 204
      start: 145
    functionDepth: 2
    functionLinenumber: 145
    functionLinenumberEnd: 204
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - SMJS_CHARS
    - SMJS_FREE
    - gf_mse_mediasource_add_source_buffer
    - gf_mse_source_buffer_load_parser
    - assert
    - gf_mse_source_buffer_del
    - GF_JS_InstanceOf
    - dom_throw_exception
    - gf_mse_source_buffer_new
    - OBJECT_TO_JSVAL
    - mediasource_sourceBuffer_initjs
    - SMJS_GET_PRIVATE
    - JSVAL_CHECK_STRING
    - strlen
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(mediasource_addSourceBuffer)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:213,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:214,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:216,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:218,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:220,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:220,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:221,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:223,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:224,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:225,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:227,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:229,1
    - Dst: gf_mse_remove_source_buffer
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:231,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:233,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 206
    functionDepth: 1
    functionLinenumber: 206
    functionLinenumberEnd: 237
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached:
    - JSVAL_IS_OBJECT
    - GF_JS_InstanceOf
    - dom_throw_exception
    - JSVAL_TO_OBJECT
    - JSVAL_IS_NULL
    - SMJS_GET_PRIVATE
    - gf_mse_remove_source_buffer
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(mediasource_removeSourceBuffer)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:245,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:246,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:248,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:250,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:253,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:255,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:256,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:258,1
    - Dst: JSVAL_CHECK_STRING
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:263,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:264,1
    - Dst: SMJS_CHARS
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:266,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:267,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:267,1
    - Dst: SMJS_FREE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:268,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:269,1
    - Dst: SMJS_FREE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:271,1
    - Dst: gf_mse_mediasource_end
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:273,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 239
    functionDepth: 1
    functionLinenumber: 239
    functionLinenumberEnd: 275
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached:
    - gf_mse_mediasource_end
    - gf_list_get
    - SMJS_FREE
    - gf_list_count
    - GF_JS_InstanceOf
    - dom_throw_exception
    - strcmp
    - SMJS_GET_PRIVATE
    - JSVAL_CHECK_STRING
    - SMJS_CHARS
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(mediasource_endOfStream)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_OBJ_CONSTRUCTOR
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:280,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:282,1
    - Dst: gf_mse_media_source_new
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:284,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:287,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:289,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:290,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:292,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:293,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:295,1
    - Dst: OBJECT_TO_JSVAL
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:295,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 277
    functionDepth: 1
    functionLinenumber: 277
    functionLinenumberEnd: 297
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - GF_JS_InstanceOf
    - SMJS_OBJ_CONSTRUCTOR
    - JS_NewObject
    - OBJECT_TO_JSVAL
    - gf_mse_media_source_new
    - SMJS_SET_PRIVATE
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(media_source_constructor)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mse_mediasource_open
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:501,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:504,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:504,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:505,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:507,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:508,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:510,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:512,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:515,1
    - Dst: gf_mse_source_buffer_append_arraybuffer
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:519,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 490
    functionDepth: 1
    functionLinenumber: 490
    functionLinenumberEnd: 521
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached:
    - gf_mse_source_buffer_append_arraybuffer
    - gf_mse_mediasource_open
    - JSVAL_IS_OBJECT
    - GF_JS_InstanceOf
    - dom_throw_exception
    - JSVAL_TO_OBJECT
    - JSVAL_IS_NULL
    - SMJS_GET_PRIVATE
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(sourcebuffer_appendBuffer)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 523
    functionDepth: 0
    functionLinenumber: 523
    functionLinenumberEnd: 529
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(sourcebuffer_appendStream)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:535,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:536,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:539,1
    - Dst: gf_mse_source_buffer_abort
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:541,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 531
    functionDepth: 1
    functionLinenumber: 531
    functionLinenumberEnd: 545
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached:
    - dom_throw_exception
    - gf_list_find
    - gf_mse_source_buffer_abort
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(sourcebuffer_abort)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSVAL_IS_NUMBER
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:553,1
    - Dst: JSVAL_IS_NUMBER
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:553,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:554,1
    - Dst: JS_ValueToNumber
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:556,1
    - Dst: JS_ValueToNumber
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:557,1
    - Dst: dom_throw_exception
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:559,1
    - Dst: gf_mse_mediasource_open
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:562,1
    - Dst: gf_mse_remove
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:564,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 547
    functionDepth: 1
    functionLinenumber: 547
    functionLinenumberEnd: 566
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached:
    - gf_mse_mediasource_open
    - JS_ValueToNumber
    - dom_throw_exception
    - JSVAL_IS_NUMBER
    - gf_mse_remove
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(sourcebuffer_remove)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:718,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:719,1
    - Dst: JSVAL_IS_OBJECT
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:719,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:722,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:723,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:727,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:728,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:729,1
    - Dst: SMJS_SET_RVAL
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:730,1
    - Dst: STRING_TO_JSVAL
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:730,1
    - Dst: JS_NewStringCopyZ
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:730,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 732
      start: 711
    functionDepth: 0
    functionLinenumber: 711
    functionLinenumberEnd: 732
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached:
    - SMJS_SET_RVAL
    - gf_strdup
    - JSVAL_IS_OBJECT
    - sprintf
    - STRING_TO_JSVAL
    - GF_JS_InstanceOf
    - JSVAL_TO_OBJECT
    - JSVAL_IS_NULL
    - SMJS_GET_PRIVATE
    - JS_NewStringCopyZ
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(html_url_createObjectURL)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:737,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - data
    - length
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 746
      start: 734
    functionDepth: 1
    functionLinenumber: 734
    functionLinenumberEnd: 746
    functionName: gf_arraybuffer_new
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_HTML_ArrayBuffer
    signature: GF_HTML_ArrayBuffer *gf_arraybuffer_new(char *data, u32 length)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_arraybuffer_new
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:753,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:754,1
    - Dst: SMJS_SET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:758,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 4
    argNames:
    - c
    - data
    - length
    - parent
    argTypes:
    - JSContext*
    - char*
    - u32
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 762
      start: 748
    functionDepth: 2
    functionLinenumber: 748
    functionLinenumberEnd: 762
    functionName: gf_arraybuffer_js_new
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObject
    - SMJS_SET_PRIVATE
    - gf_arraybuffer_new
    linkageType: ''
    returnType: JSObject
    signature: JSObject *gf_arraybuffer_js_new(JSContext *c, char *data, u32 length,
      JSObject *parent)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetParent
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:771,1
    - Dst: SMJS_GET_PRIVATE
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:773,1
    - Dst: xhr_del_array_buffer
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:774,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:786,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:787,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:788,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 2
    argNames:
    - buffer
    - del_js
    argTypes:
    - GF_HTML_ArrayBuffer*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 791
      start: 766
    functionDepth: 0
    functionLinenumber: 766
    functionLinenumberEnd: 791
    functionName: gf_arraybuffer_del
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached:
    - SMJS_GET_PRIVATE
    - gf_free
    - JS_GetParent
    - xhr_del_array_buffer
    linkageType: ''
    returnType: void
    signature: void gf_arraybuffer_del(GF_HTML_ArrayBuffer *buffer, Bool del_js)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: SMJS_OBJ_CONSTRUCTOR
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:797,1
    - Dst: GF_JS_InstanceOf
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:799,1
    - Dst: JSVAL_IS_NULL
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:803,1
    - Dst: JSVAL_IS_INT
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:803,1
    - Dst: JSVAL_TO_INT
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:804,1
    - Dst: gf_arraybuffer_js_new
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:807,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:807,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 810
      start: 793
    functionDepth: 3
    functionLinenumber: 793
    functionLinenumberEnd: 810
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached:
    - gf_arraybuffer_js_new
    - GF_JS_InstanceOf
    - JSVAL_IS_INT
    - JSVAL_TO_INT
    - SMJS_OBJ_CONSTRUCTOR
    - JSVAL_IS_NULL
    - gf_malloc
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(arraybuffer_constructor)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_js_event_add_listener
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:836,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 837
      start: 833
    functionDepth: 7
    functionLinenumber: 833
    functionLinenumberEnd: 837
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached:
    - gf_sg_js_event_add_listener
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(mse_event_add_listener)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_js_event_remove_listener
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:842,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 839
    functionDepth: 6
    functionLinenumber: 839
    functionLinenumberEnd: 843
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached:
    - gf_sg_js_event_remove_listener
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(mse_event_remove_listener)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 849
      start: 845
    functionDepth: 0
    functionLinenumber: 845
    functionLinenumberEnd: 849
    functionName: SMJS_FUNCTION
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSBool
    signature: JSBool SMJS_FUNCTION(mse_event_dispatch)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:857,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:863,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:864,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:867,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:877,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:878,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:879,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:880,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:881,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:882,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:883,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:886,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:887,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:889,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:890,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:893,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:909,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:910,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:911,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:912,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:913,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:914,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:915,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:916,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:918,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:919,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:922,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:929,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:930,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:931,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:932,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:934,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:935,1
    - Dst: JS_SETUP_CLASS
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:938,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:944,1
    - Dst: SMJS_FUNCTION_SPEC
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:945,1
    - Dst: GF_JS_InitClass
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:947,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/html5_mse_js.c:948,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 3
    argNames:
    - js_ctx
    - global
    - _html_media_rt
    argTypes:
    - JSContext*
    - JSObject*
    - GF_HTML_MediaRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 951
      start: 851
    functionDepth: 1
    functionLinenumber: 851
    functionLinenumberEnd: 951
    functionName: html_media_source_init_js_api
    functionSourceFile: /src/gpac/src/scenegraph/html5_mse_js.c
    functionUses: 1
    functionsReached:
    - GF_JS_InitClass
    - GF_LOG
    - JS_SETUP_CLASS
    - SMJS_FUNCTION_SPEC
    linkageType: ''
    returnType: void
    signature: void html_media_source_init_js_api(JSContext *js_ctx, JSObject *global,
      GF_HTML_MediaRuntime *_html_media_rt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/commands.c:38,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/commands.c:42,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/commands.c:43,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - graph
    - tag
    argTypes:
    - GF_SceneGraph*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 45
    functionName: gf_sg_command_new
    functionSourceFile: /src/gpac/src/scenegraph/commands.c
    functionUses: 17
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sg_command_new(GF_SceneGraph *graph, u32 tag)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:58,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:59,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/commands.c:60,1
    - Dst: gf_node_try_destroy
      Src: /src/gpac/src/scenegraph/commands.c:64,1
    - Dst: gf_node_try_destroy
      Src: /src/gpac/src/scenegraph/commands.c:72,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:74,1
    - Dst: gf_sg_vrml_field_pointer_del
      Src: /src/gpac/src/scenegraph/commands.c:79,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:82,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:87,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:88,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/commands.c:89,1
    - Dst: gf_node_try_destroy
      Src: /src/gpac/src/scenegraph/commands.c:92,1
    - Dst: gf_node_try_destroy
      Src: /src/gpac/src/scenegraph/commands.c:98,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:100,1
    - Dst: gf_svg_delete_attribute_value
      Src: /src/gpac/src/scenegraph/commands.c:103,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:105,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/commands.c:109,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/commands.c:113,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/scenegraph/commands.c:114,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/commands.c:116,1
    - Dst: gf_node_try_destroy
      Src: /src/gpac/src/scenegraph/commands.c:120,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:123,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:124,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/commands.c:125,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:126,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:127,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 65
    argCount: 1
    argNames:
    - com
    argTypes:
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 47
    functionDepth: 8
    functionLinenumber: 47
    functionLinenumberEnd: 128
    functionName: gf_sg_command_del
    functionSourceFile: /src/gpac/src/scenegraph/commands.c
    functionUses: 7
    functionsReached:
    - gf_free
    - gf_sg_vrml_field_pointer_del
    - gf_list_get
    - gf_node_try_destroy
    - gf_list_count
    - gf_sg_proto_del
    - gf_list_del
    - gf_list_enum
    - gf_list_rem
    - gf_svg_delete_attribute_value
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_command_del(GF_Command *com)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_FieldInfo*::on_event_in
      Src: /src/gpac/src/scenegraph/commands.c:134,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scenegraph/commands.c:137,1
    - Dst: gf_sg_script_event_in
      Src: /src/gpac/src/scenegraph/commands.c:138,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/commands.c:142,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 130
    functionDepth: 14
    functionLinenumber: 130
    functionLinenumberEnd: 147
    functionName: SG_CheckFieldChange
    functionSourceFile: /src/gpac/src/scenegraph/commands.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_node_event_out
    - gf_sg_script_event_in
    - GF_FieldInfo*::on_event_in
    - gf_node_changed
    linkageType: ''
    returnType: void
    signature: void SG_CheckFieldChange(GF_Node *node, GF_FieldInfo *field)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_deactivate
      Src: /src/gpac/src/scenegraph/commands.c:154,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/commands.c:155,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:158,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - container
    - child
    argTypes:
    - GF_Node*
    - GF_ChildNodeItem*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 150
    functionDepth: 12
    functionLinenumber: 150
    functionLinenumberEnd: 160
    functionName: gf_node_unregister_children_deactivate
    functionSourceFile: /src/gpac/src/scenegraph/commands.c
    functionUses: 0
    functionsReached:
    - gf_node_deactivate
    - gf_node_unregister
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_node_unregister_children_deactivate(GF_Node *container, GF_ChildNodeItem
      *child)
  - BBCount: 168
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/commands.c:188,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:190,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/commands.c:191,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:195,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:196,1
    - Dst: gf_sg_route_del
      Src: /src/gpac/src/scenegraph/commands.c:198,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:201,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:202,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/scenegraph/commands.c:204,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/commands.c:211,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:214,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:215,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/commands.c:216,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/commands.c:217,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/commands.c:218,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:226,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:227,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/scenegraph/commands.c:228,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/commands.c:239,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/commands.c:240,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/commands.c:247,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:249,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/commands.c:253,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/commands.c:259,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:267,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/commands.c:280,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:282,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:283,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/scenegraph/commands.c:284,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/commands.c:285,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:288,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/scenegraph/commands.c:293,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:294,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:296,1
    - Dst: gf_sg_vrml_command_clone
      Src: /src/gpac/src/scenegraph/commands.c:297,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/commands.c:298,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/commands.c:306,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scenegraph/commands.c:307,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/commands.c:310,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/commands.c:312,1
    - Dst: SG_CheckFieldChange
      Src: /src/gpac/src/scenegraph/commands.c:316,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/commands.c:325,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/commands.c:326,1
    - Dst: gf_node_replace_child
      Src: /src/gpac/src/scenegraph/commands.c:333,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:334,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/commands.c:344,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scenegraph/commands.c:347,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/commands.c:349,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/commands.c:350,1
    - Dst: SG_CheckFieldChange
      Src: /src/gpac/src/scenegraph/commands.c:353,1
    - Dst: gf_sg_route_find
      Src: /src/gpac/src/scenegraph/commands.c:361,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/commands.c:362,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/commands.c:363,1
    - Dst: gf_sg_route_del
      Src: /src/gpac/src/scenegraph/commands.c:369,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/scenegraph/commands.c:371,1
    - Dst: gf_sg_route_set_id
      Src: /src/gpac/src/scenegraph/commands.c:372,1
    - Dst: gf_sg_route_set_name
      Src: /src/gpac/src/scenegraph/commands.c:374,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:375,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/scenegraph/commands.c:382,1
    - Dst: gf_sg_route_del_by_id
      Src: /src/gpac/src/scenegraph/commands.c:387,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:391,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:392,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/commands.c:394,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/commands.c:396,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/commands.c:399,1
    - Dst: gf_node_replace_child
      Src: /src/gpac/src/scenegraph/commands.c:400,1
    - Dst: gf_sg_vrml_mf_remove
      Src: /src/gpac/src/scenegraph/commands.c:407,1
    - Dst: SG_CheckFieldChange
      Src: /src/gpac/src/scenegraph/commands.c:410,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:415,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:416,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scenegraph/commands.c:418,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:419,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/commands.c:421,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:422,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/commands.c:429,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/commands.c:430,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/scenegraph/commands.c:432,1
    - Dst: gf_sg_route_set_id
      Src: /src/gpac/src/scenegraph/commands.c:433,1
    - Dst: gf_sg_route_set_name
      Src: /src/gpac/src/scenegraph/commands.c:435,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:436,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:444,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:445,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/commands.c:446,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scenegraph/commands.c:452,1
    - Dst: gf_sg_vrml_mf_insert
      Src: /src/gpac/src/scenegraph/commands.c:454,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/commands.c:457,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/commands.c:458,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scenegraph/commands.c:462,1
    - Dst: gf_node_list_insert_child
      Src: /src/gpac/src/scenegraph/commands.c:464,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:466,1
    - Dst: SG_CheckFieldChange
      Src: /src/gpac/src/scenegraph/commands.c:469,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:474,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:475,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/commands.c:476,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/commands.c:477,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/commands.c:478,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scenegraph/commands.c:487,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/scenegraph/commands.c:488,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:494,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:495,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/commands.c:496,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/scenegraph/commands.c:498,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:508,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/commands.c:511,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/commands.c:515,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/commands.c:519,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/commands.c:522,1
    - Dst: floor
      Src: /src/gpac/src/scenegraph/commands.c:532,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/commands.c:532,1
    - Dst: floor
      Src: /src/gpac/src/scenegraph/commands.c:535,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/scenegraph/commands.c:545,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/commands.c:547,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/commands.c:552,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/commands.c:554,1
    - Dst: gf_node_replace_child
      Src: /src/gpac/src/scenegraph/commands.c:565,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:566,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/commands.c:577,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scenegraph/commands.c:580,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/commands.c:582,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/commands.c:583,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/commands.c:592,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:594,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/commands.c:598,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/commands.c:604,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:612,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/commands.c:619,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scenegraph/commands.c:620,1
    - Dst: gf_sg_vrml_field_clone
      Src: /src/gpac/src/scenegraph/commands.c:623,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/commands.c:625,1
    - Dst: SG_CheckFieldChange
      Src: /src/gpac/src/scenegraph/commands.c:630,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:651,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/scenegraph/commands.c:652,1
    - Dst: gf_node_deactivate
      Src: /src/gpac/src/scenegraph/commands.c:653,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:656,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/scenegraph/commands.c:657,1
    - Dst: gf_node_replace_child
      Src: /src/gpac/src/scenegraph/commands.c:659,1
    - Dst: gf_node_deactivate
      Src: /src/gpac/src/scenegraph/commands.c:660,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:664,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scenegraph/commands.c:668,1
    - Dst: gf_node_list_insert_child
      Src: /src/gpac/src/scenegraph/commands.c:670,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:672,1
    - Dst: gf_node_activate
      Src: /src/gpac/src/scenegraph/commands.c:673,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:674,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/commands.c:677,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:682,1
    - Dst: gf_node_unregister_children_deactivate
      Src: /src/gpac/src/scenegraph/commands.c:688,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scenegraph/commands.c:690,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:691,1
    - Dst: gf_node_activate
      Src: /src/gpac/src/scenegraph/commands.c:692,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/scenegraph/commands.c:694,1
    - Dst: gf_node_activate
      Src: /src/gpac/src/scenegraph/commands.c:695,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/scenegraph/commands.c:698,1
    - Dst: gf_node_replace_child
      Src: /src/gpac/src/scenegraph/commands.c:699,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:700,1
    - Dst: gf_node_deactivate
      Src: /src/gpac/src/scenegraph/commands.c:701,1
    - Dst: gf_node_activate
      Src: /src/gpac/src/scenegraph/commands.c:702,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:705,1
    - Dst: gf_node_unregister_children_deactivate
      Src: /src/gpac/src/scenegraph/commands.c:709,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/commands.c:715,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:718,1
    - Dst: gf_node_activate
      Src: /src/gpac/src/scenegraph/commands.c:719,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:726,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/commands.c:732,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/commands.c:733,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/commands.c:738,1
    - Dst: gf_mx2d_decompose
      Src: /src/gpac/src/scenegraph/commands.c:742,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/commands.c:743,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/scenegraph/commands.c:748,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/scenegraph/commands.c:749,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/scenegraph/commands.c:750,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/scenegraph/commands.c:754,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/scenegraph/commands.c:755,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/scenegraph/commands.c:756,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:759,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:767,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/commands.c:769,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/scenegraph/commands.c:772,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/commands.c:772,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:775,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/commands.c:782,1
    - Dst: gf_mx2d_decompose
      Src: /src/gpac/src/scenegraph/commands.c:787,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/commands.c:788,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/scenegraph/commands.c:793,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/scenegraph/commands.c:794,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/scenegraph/commands.c:795,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/scenegraph/commands.c:798,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/scenegraph/commands.c:799,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/scenegraph/commands.c:800,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:803,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/commands.c:805,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/scenegraph/commands.c:809,1
    - Dst: gf_svg_attributes_add
      Src: /src/gpac/src/scenegraph/commands.c:811,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/scenegraph/commands.c:814,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:817,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/commands.c:822,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/commands.c:823,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/commands.c:824,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/commands.c:826,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:834,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/commands.c:836,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/scenegraph/commands.c:839,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/commands.c:839,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/commands.c:842,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/scenegraph/commands.c:844,1
    - Dst: gf_svg_attributes_add
      Src: /src/gpac/src/scenegraph/commands.c:846,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:849,1
    - Dst: gf_node_activate
      Src: /src/gpac/src/scenegraph/commands.c:856,1
    - Dst: gf_node_deactivate
      Src: /src/gpac/src/scenegraph/commands.c:859,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:860,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/commands.c:865,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/scenegraph/commands.c:870,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:882,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:883,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/commands.c:884,1
    - Dst: gf_sg_script_load
      Src: /src/gpac/src/scenegraph/commands.c:885,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/commands.c:887,1
    CyclomaticComplexity: 195
    EdgeCount: 195
    ICount: 619
    argCount: 3
    argNames:
    - graph
    - com
    - time_offset
    argTypes:
    - GF_SceneGraph*
    - GF_Command*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 893
      start: 164
    functionDepth: 15
    functionLinenumber: 164
    functionLinenumberEnd: 893
    functionName: gf_sg_command_apply
    functionSourceFile: /src/gpac/src/scenegraph/commands.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_sg_vrml_mf_get_item
    - gf_node_list_insert_child
    - gf_mx2d_init
    - gf_mx2d_add_scale
    - gf_list_count
    - gf_sg_proto_del
    - gf_sg_vrml_field_copy
    - memset
    - gf_node_get_field
    - gf_sg_find_proto
    - gf_sg_route_del_by_id
    - gf_node_unregister
    - gf_node_unregister_children_deactivate
    - FIX2FLT
    - gf_sg_vrml_mf_alloc
    - gf_node_activate
    - gf_list_get
    - gf_list_new
    - gf_strdup
    - gf_sg_vrml_mf_insert
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_field_clone
    - gf_dom_add_text_node
    - gf_svg_attributes_copy
    - gf_sg_vrml_command_clone
    - gf_node_replace_child
    - gf_node_deactivate
    - gf_node_unregister_children
    - gf_sg_route_new
    - gf_sg_route_find
    - gf_list_add
    - gf_sg_vrml_is_sf_field
    - floor
    - gf_sg_vrml_mf_reset
    - gf_node_list_add_child
    - gf_mx2d_decompose
    - SG_CheckFieldChange
    - gf_sg_find_node
    - gf_node_replace
    - gf_sg_vrml_mf_append
    - gf_node_list_get_child
    - GF_LOG
    - gf_node_get_attribute_by_tag
    - gf_sg_route_del
    - strstr
    - gf_dom_event_fire
    - gf_sg_script_load
    - gf_sg_route_set_name
    - gf_node_get_graph
    - gf_list_del_item
    - gf_sg_vrml_mf_remove
    - gf_list_enum
    - gf_node_changed
    - gf_malloc
    - gf_list_del
    - gf_mx2d_add_translation
    - gf_node_event_out
    - gf_node_dirty_set
    - gf_node_get_field_by_name
    - gf_svg_attributes_add
    - gf_sg_route_set_id
    - gf_sg_command_del
    - gf_node_register
    - gf_node_insert_child
    - gf_mx2d_add_rotation
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_command_apply(GF_SceneGraph *graph, GF_Command *com,
      Double time_offset)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/commands.c:899,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/commands.c:901,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 903
      start: 895
    functionDepth: 1
    functionLinenumber: 895
    functionLinenumberEnd: 903
    functionName: GF_CommandField *gf_sg_command_field_new(GF_Command *com)
    functionSourceFile: /src/gpac/src/scenegraph/commands.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_CommandField *gf_sg_command_field_new(GF_Command *com)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/commands.c:912,1
    - Dst: gf_sg_command_apply
      Src: /src/gpac/src/scenegraph/commands.c:913,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - graph
    - comList
    - time_offset
    argTypes:
    - GF_SceneGraph*
    - GF_List*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 917
      start: 906
    functionDepth: 16
    functionLinenumber: 906
    functionLinenumberEnd: 917
    functionName: gf_sg_command_apply_list
    functionSourceFile: /src/gpac/src/scenegraph/commands.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_sg_command_apply
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_command_apply_list(GF_SceneGraph *graph, GF_List *comList,
      Double time_offset)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:926,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scenegraph/commands.c:927,1
    - Dst: gf_node_clone
      Src: /src/gpac/src/scenegraph/commands.c:933,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:936,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/commands.c:940,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/commands.c:954,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/commands.c:955,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:957,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:959,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scenegraph/commands.c:960,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scenegraph/commands.c:968,1
    - Dst: gf_sg_vrml_field_clone
      Src: /src/gpac/src/scenegraph/commands.c:969,1
    - Dst: gf_node_clone
      Src: /src/gpac/src/scenegraph/commands.c:974,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:977,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/commands.c:986,1
    - Dst: gf_node_clone
      Src: /src/gpac/src/scenegraph/commands.c:988,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:991,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 67
    argCount: 3
    argNames:
    - com
    - inGraph
    - force_clone
    argTypes:
    - GF_Command*
    - GF_SceneGraph*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1003
      start: 920
    functionDepth: 7
    functionLinenumber: 920
    functionLinenumberEnd: 1003
    functionName: gf_sg_vrml_command_clone
    functionSourceFile: /src/gpac/src/scenegraph/commands.c
    functionUses: 2
    functionsReached:
    - gf_node_clone
    - gf_strdup
    - gf_list_get
    - gf_sg_vrml_field_clone
    - memcpy
    - gf_sg_command_field_new
    - gf_list_count
    - gf_sg_vrml_field_pointer_new
    - gf_node_register
    - gf_malloc
    - gf_sg_command_new
    linkageType: ''
    returnType: GF_Command
    signature: GF_Command *gf_sg_vrml_command_clone(GF_Command *com, GF_SceneGraph
      *inGraph, Bool force_clone)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ABS
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:37,1
    - Dst: ABS
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:38,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:39,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:39,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:39,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:42,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:43,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:44,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:47,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:48,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:49,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:58,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 3
    argNames:
    - kv1
    - kv2
    - fraction
    argTypes:
    - SFRotation
    - SFRotation
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 65
    functionName: gf_sg_sfrotation_interpolate
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - ABS
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sg_sfrotation_interpolate(SFRotation kv1, SFRotation kv2,
      Fixed fraction)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - keyValue1
    - keyValue2
    - fraction
    argTypes:
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionName: Interpolate
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 3
    functionsReached:
    - gf_mulfix
    linkageType: ''
    returnType: Fixed
    signature: Fixed Interpolate(Fixed keyValue1, Fixed keyValue2, Fixed fraction)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:77,1
    - Dst: ABS
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:78,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:79,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - key1
    - key2
    - fraction
    argTypes:
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 80
    functionName: GetInterpolateFraction
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 3
    functionsReached:
    - gf_divfix
    - gf_assert
    - ABS
    linkageType: ''
    returnType: Fixed
    signature: Fixed GetInterpolateFraction(Fixed key1, Fixed key2, Fixed fraction)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:94,1
    - Dst: GetInterpolateFraction
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:109,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:111,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:114,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:122,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 30
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 82
    functionDepth: 5
    functionLinenumber: 82
    functionLinenumberEnd: 123
    functionName: CI2D_SetFraction
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - GetInterpolateFraction
    - Interpolate
    - gf_node_event_out
    - gf_sg_vrml_mf_alloc
    linkageType: ''
    returnType: void
    signature: void CI2D_SetFraction(GF_Node *n, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:132,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - M_CoordinateInterpolator2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 125
    functionDepth: 4
    functionLinenumber: 125
    functionLinenumberEnd: 137
    functionName: InitCoordinateInterpolator2D
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 1
    functionsReached:
    - gf_sg_vrml_mf_alloc
    linkageType: ''
    returnType: Bool
    signature: Bool InitCoordinateInterpolator2D(M_CoordinateInterpolator2D *node)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:149,1
    - Dst: GetInterpolateFraction
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:163,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:165,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:168,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:171,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 31
    argCount: 4
    argNames:
    - fraction
    - vals
    - key
    - keyValue
    argTypes:
    - Fixed
    - MFVec3f*
    - MFFloat*
    - MFVec3f*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 139
    functionDepth: 4
    functionLinenumber: 139
    functionLinenumberEnd: 179
    functionName: CI_SetFraction
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - GetInterpolateFraction
    - Interpolate
    - gf_sg_vrml_mf_alloc
    linkageType: ''
    returnType: Bool
    signature: Bool CI_SetFraction(Fixed fraction, MFVec3f *vals, MFFloat *key, MFVec3f
      *keyValue)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CI_SetFraction
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:186,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:187,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 182
    functionDepth: 5
    functionLinenumber: 182
    functionLinenumberEnd: 188
    functionName: CoordInt_SetFraction
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    - CI_SetFraction
    linkageType: ''
    returnType: void
    signature: void CoordInt_SetFraction(GF_Node *n, GF_Route *route)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CI_SetFraction
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - n
    argTypes:
    - M_CoordinateInterpolator*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 190
    functionDepth: 5
    functionLinenumber: 190
    functionLinenumberEnd: 195
    functionName: InitCoordinateInterpolator
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 1
    functionsReached:
    - CI_SetFraction
    linkageType: ''
    returnType: Bool
    signature: Bool InitCoordinateInterpolator(M_CoordinateInterpolator *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CI_SetFraction
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:202,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:205,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:207,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 197
    functionDepth: 5
    functionLinenumber: 197
    functionLinenumberEnd: 208
    functionName: NormInt_SetFraction
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - gf_vec_norm
    - gf_node_event_out
    - CI_SetFraction
    linkageType: ''
    returnType: void
    signature: void NormInt_SetFraction(GF_Node *n, GF_Route *route)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CI_SetFraction
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - n
    argTypes:
    - M_NormalInterpolator*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 210
    functionDepth: 5
    functionLinenumber: 210
    functionLinenumberEnd: 215
    functionName: InitNormalInterpolator
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 1
    functionsReached:
    - CI_SetFraction
    linkageType: ''
    returnType: Bool
    signature: Bool InitNormalInterpolator(M_NormalInterpolator *n)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GetInterpolateFraction
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:238,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:239,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:242,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:245,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:251,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 217
    functionDepth: 5
    functionLinenumber: 217
    functionLinenumberEnd: 252
    functionName: ColorInt_SetFraction
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - GetInterpolateFraction
    - Interpolate
    - gf_node_event_out
    linkageType: ''
    returnType: void
    signature: void ColorInt_SetFraction(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - M_ColorInterpolator*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 259
    functionName: InitColorInterpolator
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool InitColorInterpolator(M_ColorInterpolator *node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GetInterpolateFraction
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:282,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:283,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:284,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:288,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 23
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 262
    functionDepth: 5
    functionLinenumber: 262
    functionLinenumberEnd: 289
    functionName: PosInt2D_SetFraction
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - GetInterpolateFraction
    - Interpolate
    - gf_node_event_out
    linkageType: ''
    returnType: void
    signature: void PosInt2D_SetFraction(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - M_PositionInterpolator2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 291
    functionDepth: 0
    functionLinenumber: 291
    functionLinenumberEnd: 296
    functionName: InitPositionInterpolator2D
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool InitPositionInterpolator2D(M_PositionInterpolator2D *node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GetInterpolateFraction
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:318,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:319,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:320,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:321,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:325,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 298
    functionDepth: 5
    functionLinenumber: 298
    functionLinenumberEnd: 326
    functionName: PosInt_SetFraction
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - GetInterpolateFraction
    - Interpolate
    - gf_node_event_out
    linkageType: ''
    returnType: void
    signature: void PosInt_SetFraction(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - M_PositionInterpolator*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 333
    functionName: InitPositionInterpolator
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool InitPositionInterpolator(M_PositionInterpolator *node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GetInterpolateFraction
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:355,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:356,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:360,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 335
    functionDepth: 5
    functionLinenumber: 335
    functionLinenumberEnd: 361
    functionName: ScalarInt_SetFraction
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - GetInterpolateFraction
    - Interpolate
    - gf_node_event_out
    linkageType: ''
    returnType: void
    signature: void ScalarInt_SetFraction(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - M_ScalarInterpolator*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 362
    functionDepth: 0
    functionLinenumber: 362
    functionLinenumberEnd: 367
    functionName: InitScalarInterpolator
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool InitScalarInterpolator(M_ScalarInterpolator *node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GetInterpolateFraction
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:390,1
    - Dst: gf_sg_sfrotation_interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:391,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:395,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 370
    functionDepth: 5
    functionLinenumber: 370
    functionLinenumberEnd: 396
    functionName: OrientInt_SetFraction
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - GetInterpolateFraction
    - gf_sg_sfrotation_interpolate
    - gf_node_event_out
    linkageType: ''
    returnType: void
    signature: void OrientInt_SetFraction(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - M_OrientationInterpolator*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 398
    functionDepth: 0
    functionLinenumber: 398
    functionLinenumberEnd: 403
    functionName: InitOrientationInterpolator
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool InitOrientationInterpolator(M_OrientationInterpolator *node)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:417,1
    - Dst: GetInterpolateFraction
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:432,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:434,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:437,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:440,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:443,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:451,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 32
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 405
    functionDepth: 5
    functionLinenumber: 405
    functionLinenumberEnd: 452
    functionName: CI4D_SetFraction
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - GetInterpolateFraction
    - Interpolate
    - gf_node_event_out
    - gf_sg_vrml_mf_alloc
    linkageType: ''
    returnType: void
    signature: void CI4D_SetFraction(GF_Node *n, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:460,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - M_CoordinateInterpolator4D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 465
      start: 454
    functionDepth: 4
    functionLinenumber: 454
    functionLinenumberEnd: 465
    functionName: InitCoordinateInterpolator4D
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 1
    functionsReached:
    - gf_sg_vrml_mf_alloc
    linkageType: ''
    returnType: Bool
    signature: Bool InitCoordinateInterpolator4D(M_CoordinateInterpolator4D *node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GetInterpolateFraction
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:487,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:488,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:489,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:490,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:491,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:495,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 25
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 467
    functionDepth: 5
    functionLinenumber: 467
    functionLinenumberEnd: 496
    functionName: PI4D_SetFraction
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - GetInterpolateFraction
    - Interpolate
    - gf_node_event_out
    linkageType: ''
    returnType: void
    signature: void PI4D_SetFraction(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - M_PositionInterpolator4D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 498
    functionDepth: 0
    functionLinenumber: 498
    functionLinenumberEnd: 503
    functionName: InitPositionInterpolator4D
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool InitPositionInterpolator4D(M_PositionInterpolator4D *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:514,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:518,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:521,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 522
      start: 509
    functionDepth: 5
    functionLinenumber: 509
    functionLinenumberEnd: 522
    functionName: BooleanFilter_setValue
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    linkageType: ''
    returnType: void
    signature: void BooleanFilter_setValue(GF_Node *n, GF_Route *route)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 524
    functionDepth: 0
    functionLinenumber: 524
    functionLinenumberEnd: 528
    functionName: InitBooleanFilter
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void InitBooleanFilter(GF_Node *n)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:549,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 530
    functionDepth: 5
    functionLinenumber: 530
    functionLinenumberEnd: 550
    functionName: BooleanSequencer_setFraction
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    linkageType: ''
    returnType: void
    signature: void BooleanSequencer_setFraction(GF_Node *n, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:562,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 552
    functionDepth: 5
    functionLinenumber: 552
    functionLinenumberEnd: 563
    functionName: BooleanSequencer_setNext
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    linkageType: ''
    returnType: void
    signature: void BooleanSequencer_setNext(GF_Node *n, GF_Route *route)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:577,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 578
      start: 565
    functionDepth: 5
    functionLinenumber: 565
    functionLinenumberEnd: 578
    functionName: BooleanSequencer_setPrevious
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    linkageType: ''
    returnType: void
    signature: void BooleanSequencer_setPrevious(GF_Node *n, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:582,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:583,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - n
    - eff
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 585
      start: 579
    functionDepth: 2
    functionLinenumber: 579
    functionLinenumberEnd: 585
    functionName: DestroyBooleanSequencer
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void DestroyBooleanSequencer(GF_Node *n, void *eff, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:592,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 586
    functionDepth: 0
    functionLinenumber: 586
    functionLinenumberEnd: 595
    functionName: InitBooleanSequencer
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 1
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void InitBooleanSequencer(GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:602,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 597
    functionDepth: 5
    functionLinenumber: 597
    functionLinenumberEnd: 604
    functionName: BooleanToggle_setValue
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    linkageType: ''
    returnType: void
    signature: void BooleanToggle_setValue(GF_Node *n, GF_Route *route)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 605
    functionDepth: 0
    functionLinenumber: 605
    functionLinenumberEnd: 609
    functionName: InitBooleanToggle
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void InitBooleanToggle(GF_Node *n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:615,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 616
      start: 611
    functionDepth: 5
    functionLinenumber: 611
    functionLinenumberEnd: 616
    functionName: BooleanTrigger_setTime
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    linkageType: ''
    returnType: void
    signature: void BooleanTrigger_setTime(GF_Node *n, GF_Route *route)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 621
      start: 617
    functionDepth: 0
    functionLinenumber: 617
    functionLinenumberEnd: 621
    functionName: InitBooleanTrigger
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void InitBooleanTrigger(GF_Node *n)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:642,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 623
    functionDepth: 5
    functionLinenumber: 623
    functionLinenumberEnd: 643
    functionName: IntegerSequencer_setFraction
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    linkageType: ''
    returnType: void
    signature: void IntegerSequencer_setFraction(GF_Node *n, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:655,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 645
    functionDepth: 5
    functionLinenumber: 645
    functionLinenumberEnd: 656
    functionName: IntegerSequencer_setNext
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    linkageType: ''
    returnType: void
    signature: void IntegerSequencer_setNext(GF_Node *n, GF_Route *route)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:670,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 658
    functionDepth: 5
    functionLinenumber: 658
    functionLinenumberEnd: 671
    functionName: IntegerSequencer_setPrevious
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    linkageType: ''
    returnType: void
    signature: void IntegerSequencer_setPrevious(GF_Node *n, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:675,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:676,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - n
    - eff
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 678
      start: 672
    functionDepth: 2
    functionLinenumber: 672
    functionLinenumberEnd: 678
    functionName: DestroyIntegerSequencer
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void DestroyIntegerSequencer(GF_Node *n, void *eff, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:685,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 679
    functionDepth: 0
    functionLinenumber: 679
    functionLinenumberEnd: 688
    functionName: InitIntegerSequencer
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 1
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void InitIntegerSequencer(GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:695,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 697
      start: 690
    functionDepth: 5
    functionLinenumber: 690
    functionLinenumberEnd: 697
    functionName: IntegerTrigger_setTrigger
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    linkageType: ''
    returnType: void
    signature: void IntegerTrigger_setTrigger(GF_Node *n, GF_Route *route)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 702
      start: 698
    functionDepth: 0
    functionLinenumber: 698
    functionLinenumberEnd: 702
    functionName: InitIntegerTrigger
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void InitIntegerTrigger(GF_Node *n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:707,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_interpolators.c:708,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - n
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 704
    functionDepth: 5
    functionLinenumber: 704
    functionLinenumberEnd: 709
    functionName: TimeTrigger_setTrigger
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    - gf_node_get_scene_time
    linkageType: ''
    returnType: void
    signature: void TimeTrigger_setTrigger(GF_Node *n, GF_Route *route)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 714
      start: 710
    functionDepth: 0
    functionLinenumber: 710
    functionLinenumberEnd: 714
    functionName: InitTimeTrigger
    functionSourceFile: /src/gpac/src/scenegraph/vrml_interpolators.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void InitTimeTrigger(GF_Node *n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: JSVAL_CHECK_STRING
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSVAL_CHECK_STRING(_v)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - svg_js
    argTypes:
    - struct __tag_svg_script_ctx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 96
    functionName: svg_mark_gc
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void svg_mark_gc(struct __tag_svg_script_ctx *svg_js)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/svg_js.c:101,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:102,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/svg_js.c:103,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/svg_js.c:107,1
    - Dst: gf_js_call_gc
      Src: /src/gpac/src/scenegraph/svg_js.c:113,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - svg_js
    - node
    argTypes:
    - struct __tag_svg_script_ctx*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 98
    functionDepth: 3
    functionLinenumber: 98
    functionLinenumberEnd: 114
    functionName: svg_free_node_binding
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 1
    functionsReached:
    - JS_FreeValue
    - JS_SetOpaque
    - JS_IsUndefined
    - gf_node_unregister
    - gf_js_call_gc
    linkageType: ''
    returnType: void
    signature: void svg_free_node_binding(struct __tag_svg_script_ctx *svg_js, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SceneGraph*::svg_js::script_execute
      Src: /src/gpac/src/scenegraph/svg_js.c:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - svg_js
    - sg
    - com
    argTypes:
    - struct __tag_svg_script_ctx*
    - GF_SceneGraph*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 120
    functionName: svg_exec_script
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - GF_SceneGraph*::svg_js::script_execute
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_exec_script(struct __tag_svg_script_ctx *svg_js, GF_SceneGraph
      *sg, const char *com)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: struct __tag_svg_script_ctx*::handler_execute
      Src: /src/gpac/src/scenegraph/svg_js.c:124,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_js.c:127,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - svg_js
    - hdl
    - event
    - observer
    - iri
    argTypes:
    - struct __tag_svg_script_ctx*
    - GF_Node*
    - GF_DOM_Event*
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 128
    functionName: svgjs_handler_execute
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 2
    functionsReached:
    - struct __tag_svg_script_ctx*::handler_execute
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void svgjs_handler_execute(struct __tag_svg_script_ctx *svg_js, GF_Node
      *hdl, GF_DOM_Event *event, GF_Node *observer, const char *iri)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _sg
    - ','
    - _msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 145
    functionName: _ScriptMessage
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _ScriptMessage(_sg, _msg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SceneGraph*::script_action
      Src: /src/gpac/src/scenegraph/svg_js.c:149,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - scene
    - type
    - node
    - param
    argTypes:
    - GF_SceneGraph*
    - u32
    - GF_Node*
    - GF_JSAPIParam*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 151
    functionName: ScriptAction
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 7
    functionsReached:
    - GF_SceneGraph*::script_action
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE ScriptAction(GF_SceneGraph *scene, u32 type, GF_Node *node,
      GF_JSAPIParam *param)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:193,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:195,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:197,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:200,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:201,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 204
    functionName: svg_nav_to_location
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_GetOpaque
    - ScriptAction
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_nav_to_location(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/svg_js.c:213,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/svg_js.c:214,1
    - Dst: dom_get_doc
      Src: /src/gpac/src/scenegraph/svg_js.c:217,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/svg_js.c:218,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:220,1
    - Dst: gf_sm_load_svg_from_string
      Src: /src/gpac/src/scenegraph/svg_js.c:223,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:224,1
    - Dst: dom_element_construct
      Src: /src/gpac/src/scenegraph/svg_js.c:225,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 207
    functionDepth: 5
    functionLinenumber: 207
    functionLinenumberEnd: 226
    functionName: svg_parse_xml
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - dom_get_doc
    - dom_element_construct
    - js_throw_err
    - JS_IsObject
    - gf_sm_load_svg_from_string
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_parse_xml(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/svg_js.c:230,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/svg_js.c:231,1
    - Dst: DEFCONST
      Src: /src/gpac/src/scenegraph/svg_js.c:235,1
    - Dst: DEFCONST
      Src: /src/gpac/src/scenegraph/svg_js.c:236,1
    - Dst: DEFCONST
      Src: /src/gpac/src/scenegraph/svg_js.c:237,1
    - Dst: DEFCONST
      Src: /src/gpac/src/scenegraph/svg_js.c:238,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/svg_js.c:240,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/svg_js.c:241,1
    - Dst: DEFCONST
      Src: /src/gpac/src/scenegraph/svg_js.c:242,1
    - Dst: DEFCONST
      Src: /src/gpac/src/scenegraph/svg_js.c:243,1
    - Dst: DEFCONST
      Src: /src/gpac/src/scenegraph/svg_js.c:244,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/svg_js.c:246,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/svg_js.c:247,1
    - Dst: DEFCONST
      Src: /src/gpac/src/scenegraph/svg_js.c:248,1
    - Dst: DEFCONST
      Src: /src/gpac/src/scenegraph/svg_js.c:249,1
    - Dst: DEFCONST
      Src: /src/gpac/src/scenegraph/svg_js.c:250,1
    - Dst: DEFCONST
      Src: /src/gpac/src/scenegraph/svg_js.c:251,1
    - Dst: DEFCONST
      Src: /src/gpac/src/scenegraph/svg_js.c:252,1
    - Dst: DEFCONST
      Src: /src/gpac/src/scenegraph/svg_js.c:253,1
    - Dst: DEFCONST
      Src: /src/gpac/src/scenegraph/svg_js.c:254,1
    - Dst: DEFCONST
      Src: /src/gpac/src/scenegraph/svg_js.c:255,1
    - Dst: DEFCONST
      Src: /src/gpac/src/scenegraph/svg_js.c:256,1
    - Dst: DEFCONST
      Src: /src/gpac/src/scenegraph/svg_js.c:257,1
    - Dst: DEFCONST
      Src: /src/gpac/src/scenegraph/svg_js.c:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 22
    argCount: 2
    argNames:
    - c
    - global
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 228
    functionDepth: 1
    functionLinenumber: 228
    functionLinenumberEnd: 259
    functionName: svg_define_udom_exception
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_SetPropertyStr
    - DEFCONST
    - JS_NewObject
    linkageType: ''
    returnType: void
    signature: void svg_define_udom_exception(JSContext *c, JSValue global)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _code
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 234
    functionName: DEFCONST
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEFCONST(_name, _code)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:263,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:264,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/svg_js.c:273,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 261
    functionDepth: 1
    functionLinenumber: 261
    functionLinenumberEnd: 278
    functionName: global_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_DupValue
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue global_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:288,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_js.c:290,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_js.c:291,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_js.c:292,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/svg_js.c:295,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/svg_js.c:296,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/svg_js.c:297,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/svg_js.c:298,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/svg_js.c:299,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/svg_js.c:300,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/svg_js.c:301,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:304,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 29
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 281
    functionDepth: 1
    functionLinenumber: 281
    functionLinenumberEnd: 307
    functionName: dom_imp_has_feature
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - stricmp
    - strchr
    - strlen
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue dom_imp_has_feature(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_js.c:315,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_js.c:317,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_js.c:319,1
    - Dst: get_corresponding_use
      Src: /src/gpac/src/scenegraph/svg_js.c:320,1
    - Dst: get_corresponding_use
      Src: /src/gpac/src/scenegraph/svg_js.c:325,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/scenegraph/svg_js.c:325,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 309
    functionDepth: 1
    functionLinenumber: 309
    functionLinenumberEnd: 326
    functionName: get_corresponding_use
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_node_get_parent
    - gf_list_get
    - get_corresponding_use
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *get_corresponding_use(GF_Node *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_doc
      Src: /src/gpac/src/scenegraph/svg_js.c:330,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:331,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/scenegraph/svg_js.c:334,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 328
    functionDepth: 2
    functionLinenumber: 328
    functionLinenumberEnd: 337
    functionName: svg_doc_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_GetGlobalObject
    - dom_get_doc
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_doc_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:342,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scenegraph/svg_js.c:348,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/svg_js.c:350,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:355,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:356,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:357,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:357,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:359,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:361,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:362,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:363,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:363,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:365,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:367,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:368,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/svg_js.c:369,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_js.c:370,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:371,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:372,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:374,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:377,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:379,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:380,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/svg_js.c:381,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_js.c:382,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:383,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:384,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:385,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:386,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:388,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:391,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:393,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/svg_js.c:393,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/scenegraph/svg_js.c:398,1
    - Dst: dom_element_construct
      Src: /src/gpac/src/scenegraph/svg_js.c:401,1
    - Dst: get_corresponding_use
      Src: /src/gpac/src/scenegraph/svg_js.c:408,1
    - Dst: dom_element_construct
      Src: /src/gpac/src/scenegraph/svg_js.c:409,1
    - Dst: dom_element_construct
      Src: /src/gpac/src/scenegraph/svg_js.c:411,1
    - Dst: dom_element_construct
      Src: /src/gpac/src/scenegraph/svg_js.c:415,1
    - Dst: get_corresponding_use
      Src: /src/gpac/src/scenegraph/svg_js.c:415,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 75
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 339
    functionDepth: 5
    functionLinenumber: 339
    functionLinenumberEnd: 420
    functionName: svg_element_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - dom_element_construct
    - JS_NewFloat64
    - gf_node_get_name
    - JS_SetOpaque
    - JS_NewString
    - get_corresponding_use
    - dom_get_element
    - ScriptAction
    - gf_node_get_scene_time
    - GF_JS_EXCEPTION
    - gf_node_get_parent
    - gf_malloc
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_element_getProperty(JSContext *c, JSValueConst obj, int
      magic)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:426,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:427,1
    - Dst: JSVAL_CHECK_STRING
      Src: /src/gpac/src/scenegraph/svg_js.c:431,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:432,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scenegraph/svg_js.c:435,1
    - Dst: gf_sg_get_next_available_node_id
      Src: /src/gpac/src/scenegraph/svg_js.c:436,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scenegraph/svg_js.c:437,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/svg_js.c:438,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_js.c:439,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_js.c:440,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/svg_js.c:442,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_js.c:443,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_js.c:444,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:446,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:452,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:453,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:455,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/svg_js.c:457,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:459,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:465,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:466,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:468,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:469,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:475,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:476,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:479,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 55
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 422
    functionDepth: 5
    functionLinenumber: 422
    functionLinenumberEnd: 487
    functionName: svg_element_setProperty
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - gf_strdup
    - FLT2FIX
    - js_throw_err
    - gf_node_get_attribute_by_tag
    - gf_node_get_id
    - gf_node_set_id
    - dom_get_element
    - ScriptAction
    - gf_sg_get_next_available_node_id
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - JSVAL_CHECK_STRING
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_element_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:491,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - c
    - obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 489
    functionDepth: 2
    functionLinenumber: 489
    functionLinenumberEnd: 508
    functionName: svg_udom_smil_check_instance
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - dom_get_element
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *svg_udom_smil_check_instance(JSContext *c, JSValue obj)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: svg_udom_smil_check_instance
      Src: /src/gpac/src/scenegraph/svg_js.c:520,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:529,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_js.c:532,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/svg_js.c:534,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:540,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/svg_js.c:542,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_js.c:545,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_js.c:547,1
    - Dst: GF_SMIL_TIME_IS_CLOCK
      Src: /src/gpac/src/scenegraph/svg_js.c:548,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/scenegraph/svg_js.c:554,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/svg_js.c:557,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 5
    argNames:
    - c
    - obj
    - argc
    - argv
    - is_end
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 512
    functionDepth: 11
    functionLinenumber: 512
    functionLinenumberEnd: 559
    functionName: svg_udom_smil_time_insert
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_get
    - GF_SMIL_TIME_IS_CLOCK
    - js_throw_err
    - GF_SAFEALLOC
    - gf_list_count
    - svg_udom_smil_check_instance
    - JS_ToFloat64
    - gf_node_get_scene_time
    - GF_JS_EXCEPTION
    - gf_node_changed
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_smil_time_insert(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv, Bool is_end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: svg_udom_smil_time_insert
      Src: /src/gpac/src/scenegraph/svg_js.c:563,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 561
    functionDepth: 12
    functionLinenumber: 561
    functionLinenumberEnd: 564
    functionName: svg_udom_smil_begin
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - svg_udom_smil_time_insert
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_smil_begin(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: svg_udom_smil_time_insert
      Src: /src/gpac/src/scenegraph/svg_js.c:567,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 568
      start: 565
    functionDepth: 12
    functionLinenumber: 565
    functionLinenumberEnd: 568
    functionName: svg_udom_smil_end
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - svg_udom_smil_time_insert
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_smil_end(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:574,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:575,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scenegraph/svg_js.c:577,1
    - Dst: gf_svg_is_animation_tag
      Src: /src/gpac/src/scenegraph/svg_js.c:578,1
    - Dst: gf_smil_timing_pause
      Src: /src/gpac/src/scenegraph/svg_js.c:580,1
    - Dst: gf_svg_is_timing_tag
      Src: /src/gpac/src/scenegraph/svg_js.c:581,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:582,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:584,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 589
      start: 571
    functionDepth: 2
    functionLinenumber: 571
    functionLinenumberEnd: 589
    functionName: svg_udom_smil_pause
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_smil_timing_pause
    - dom_get_element
    - ScriptAction
    - gf_svg_is_timing_tag
    - GF_JS_EXCEPTION
    - gf_svg_is_animation_tag
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_smil_pause(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:594,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:595,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scenegraph/svg_js.c:597,1
    - Dst: gf_svg_is_animation_tag
      Src: /src/gpac/src/scenegraph/svg_js.c:598,1
    - Dst: gf_smil_timing_resume
      Src: /src/gpac/src/scenegraph/svg_js.c:600,1
    - Dst: gf_svg_is_timing_tag
      Src: /src/gpac/src/scenegraph/svg_js.c:601,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:602,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:604,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 591
    functionDepth: 2
    functionLinenumber: 591
    functionLinenumberEnd: 609
    functionName: svg_udom_smil_resume
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_smil_timing_resume
    - dom_get_element
    - ScriptAction
    - gf_svg_is_timing_tag
    - GF_JS_EXCEPTION
    - gf_svg_is_animation_tag
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_smil_resume(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:614,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:615,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scenegraph/svg_js.c:617,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:619,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 611
    functionDepth: 2
    functionLinenumber: 611
    functionLinenumberEnd: 624
    functionName: svg_udom_smil_restart
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - dom_get_element
    - gf_node_get_tag
    - GF_JS_EXCEPTION
    - ScriptAction
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_smil_restart(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:630,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:632,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:633,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scenegraph/svg_js.c:635,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/svg_js.c:638,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:639,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:640,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 645
      start: 626
    functionDepth: 2
    functionLinenumber: 626
    functionLinenumberEnd: 645
    functionName: svg_udom_smil_set_speed
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - FLT2FIX
    - dom_get_element
    - memset
    - ScriptAction
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_smil_set_speed(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 74
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:654,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:655,1
    - Dst: JSVAL_CHECK_STRING
      Src: /src/gpac/src/scenegraph/svg_js.c:659,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:662,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:664,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:665,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:669,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_js.c:671,1
    - Dst: gf_dom_flatten_textContent
      Src: /src/gpac/src/scenegraph/svg_js.c:672,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/svg_js.c:673,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_js.c:674,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:676,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/svg_js.c:679,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:682,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:684,1
    - Dst: gf_svg_dump_attribute
      Src: /src/gpac/src/scenegraph/svg_js.c:743,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/svg_js.c:744,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_js.c:745,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:771,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 100
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 775
      start: 647
    functionDepth: 5
    functionLinenumber: 647
    functionLinenumberEnd: 775
    functionName: svg_udom_get_trait
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - gf_node_get_field_by_name
    - JS_NewString
    - gf_dom_flatten_textContent
    - dom_get_element
    - gf_svg_dump_attribute
    - strcmp
    - GF_JS_EXCEPTION
    - JSVAL_CHECK_STRING
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_get_trait(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:782,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:783,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/svg_js.c:785,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:785,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:786,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:787,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/src/scenegraph/svg_js.c:789,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:790,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:791,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:802,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:802,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:805,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 810
      start: 777
    functionDepth: 4
    functionLinenumber: 777
    functionLinenumberEnd: 810
    functionName: svg_udom_get_float_trait
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - gf_node_get_attribute_by_name
    - JS_NewFloat64
    - FIX2FLT
    - dom_get_element
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_get_float_trait(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:817,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:818,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/svg_js.c:820,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:820,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:821,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/svg_js.c:823,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:824,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:825,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_js.c:828,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:829,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/svg_js.c:830,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_js.c:831,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/scenegraph/svg_js.c:832,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:834,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 838
      start: 812
    functionDepth: 5
    functionLinenumber: 812
    functionLinenumberEnd: 838
    functionName: svg_udom_get_matrix_trait
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - JS_NewObjectClass
    - gf_mx2d_copy
    - JS_SetOpaque
    - gf_node_get_field_by_name
    - dom_get_element
    - GF_JS_EXCEPTION
    - gf_mx2d_init
    - gf_malloc
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_get_matrix_trait(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:845,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:846,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/svg_js.c:848,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:848,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:849,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/svg_js.c:851,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:852,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:853,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_js.c:859,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/svg_js.c:861,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/svg_js.c:863,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:864,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:865,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:866,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:867,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:868,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 872
      start: 840
    functionDepth: 5
    functionLinenumber: 840
    functionLinenumberEnd: 872
    functionName: svg_udom_get_rect_trait
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - JS_NewObjectClass
    - js_throw_err
    - GF_SAFEALLOC
    - JS_SetOpaque
    - gf_node_get_field_by_name
    - FIX2FLT
    - dom_get_element
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_get_rect_trait(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:879,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:880,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/svg_js.c:882,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:882,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:883,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/svg_js.c:885,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:886,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:887,1
    - Dst: svg_new_path_object
      Src: /src/gpac/src/scenegraph/svg_js.c:890,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 893
      start: 874
    functionDepth: 5
    functionLinenumber: 874
    functionLinenumberEnd: 893
    functionName: svg_udom_get_path_trait
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - svg_new_path_object
    - JS_ToCString
    - JS_IsString
    - gf_node_get_field_by_name
    - dom_get_element
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_get_path_trait(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:903,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:904,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/svg_js.c:906,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:906,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:907,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/svg_js.c:909,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:910,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:911,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_js.c:920,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/svg_js.c:922,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/svg_js.c:924,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:925,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:926,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:927,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:928,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_js.c:936,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/svg_js.c:938,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/svg_js.c:940,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:941,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:942,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:943,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:944,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 45
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 951
      start: 895
    functionDepth: 5
    functionLinenumber: 895
    functionLinenumberEnd: 951
    functionName: svg_udom_get_rgb_color_trait
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - JS_NewObjectClass
    - js_throw_err
    - GF_SAFEALLOC
    - JS_SetOpaque
    - gf_node_get_field_by_name
    - FIX2FLT
    - dom_get_element
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_get_rgb_color_trait(JSContext *c, JSValueConst obj,
      int argc, JSValueConst *argv)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:958,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:959,1
    - Dst: JSVAL_CHECK_STRING
      Src: /src/gpac/src/scenegraph/svg_js.c:962,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:962,1
    - Dst: JSVAL_CHECK_STRING
      Src: /src/gpac/src/scenegraph/svg_js.c:964,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:964,1
    - Dst: JSVAL_CHECK_STRING
      Src: /src/gpac/src/scenegraph/svg_js.c:965,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:965,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:966,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:967,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:968,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:970,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:971,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:973,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:976,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:977,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:978,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_js.c:980,1
    - Dst: dom_node_set_textContent
      Src: /src/gpac/src/scenegraph/svg_js.c:981,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:982,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:983,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:984,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/svg_js.c:987,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:988,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:989,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:992,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:993,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/scenegraph/svg_js.c:995,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:996,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/svg_js.c:998,1
    - Dst: dom_node_changed
      Src: /src/gpac/src/scenegraph/svg_js.c:999,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1001
      start: 953
    functionDepth: 12
    functionLinenumber: 953
    functionLinenumberEnd: 1001
    functionName: svg_udom_set_trait
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - gf_svg_parse_attribute
    - dom_node_changed
    - js_throw_err
    - dom_node_set_textContent
    - gf_node_get_field_by_name
    - dom_get_element
    - strcmp
    - GF_JS_EXCEPTION
    - JSVAL_CHECK_STRING
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_set_trait(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:1010,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1011,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1012,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/svg_js.c:1013,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1013,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/scenegraph/svg_js.c:1014,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1014,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1014,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:1016,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/svg_js.c:1017,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:1018,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1019,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1030,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_js.c:1038,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_js.c:1039,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/svg_js.c:1040,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_js.c:1041,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_js.c:1043,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/svg_js.c:1045,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1048,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_js.c:1049,1
    - Dst: dom_node_changed
      Src: /src/gpac/src/scenegraph/svg_js.c:1055,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 45
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1057
      start: 1003
    functionDepth: 12
    functionLinenumber: 1003
    functionLinenumberEnd: 1057
    functionName: svg_udom_set_float_trait
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_ToCString
    - JS_IsString
    - gf_list_get
    - gf_free
    - js_throw_err
    - JS_IsNumber
    - GF_SAFEALLOC
    - dom_node_changed
    - gf_node_get_field_by_name
    - dom_get_element
    - gf_list_count
    - JS_ToFloat64
    - gf_list_add
    - gf_list_rem
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_set_float_trait(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:1066,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1069,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/svg_js.c:1070,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1070,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/svg_js.c:1071,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/svg_js.c:1071,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1071,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1073,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1074,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:1076,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/svg_js.c:1077,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:1078,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1079,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/scenegraph/svg_js.c:1082,1
    - Dst: dom_node_changed
      Src: /src/gpac/src/scenegraph/svg_js.c:1083,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1087
      start: 1059
    functionDepth: 12
    functionLinenumber: 1059
    functionLinenumberEnd: 1087
    functionName: svg_udom_set_matrix_trait
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - gf_mx2d_copy
    - dom_node_changed
    - JS_IsNull
    - JS_GetOpaque
    - gf_node_get_field_by_name
    - dom_get_element
    - GF_JS_EXCEPTION
    - JS_IsObject
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_set_matrix_trait(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:1095,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1096,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1098,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/svg_js.c:1099,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/svg_js.c:1100,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/svg_js.c:1100,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1100,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1102,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1103,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:1105,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/svg_js.c:1106,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:1107,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1108,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1112,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1113,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1114,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1115,1
    - Dst: dom_node_changed
      Src: /src/gpac/src/scenegraph/svg_js.c:1116,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1120
      start: 1089
    functionDepth: 12
    functionLinenumber: 1089
    functionLinenumberEnd: 1120
    functionName: svg_udom_set_rect_trait
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_ToCString
    - JS_IsString
    - dom_node_changed
    - JS_IsNull
    - JS_GetOpaque
    - gf_node_get_field_by_name
    - dom_get_element
    - GF_JS_EXCEPTION
    - JS_IsObject
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_set_rect_trait(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:1128,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1129,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1131,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/svg_js.c:1132,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1132,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/svg_js.c:1133,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/svg_js.c:1133,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1133,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1134,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1135,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:1137,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/svg_js.c:1138,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:1139,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1140,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_js.c:1148,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_js.c:1149,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/svg_js.c:1150,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_js.c:1151,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_js.c:1153,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_js.c:1154,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/svg_js.c:1155,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_js.c:1156,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_js.c:1160,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_js.c:1162,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_js.c:1177,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1178,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1179,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_js.c:1180,1
    - Dst: dom_node_changed
      Src: /src/gpac/src/scenegraph/svg_js.c:1182,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 52
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1187
      start: 1122
    functionDepth: 12
    functionLinenumber: 1122
    functionLinenumberEnd: 1187
    functionName: svg_udom_set_path_trait
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - JS_IsString
    - gf_list_get
    - FLT2FIX
    - dom_node_changed
    - JS_IsNull
    - JS_GetOpaque
    - gf_node_get_field_by_name
    - dom_get_element
    - gf_list_count
    - gf_list_add
    - gf_list_rem
    - GF_JS_EXCEPTION
    - JS_IsObject
    - gf_malloc
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_set_path_trait(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:1195,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1196,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1198,1
    - Dst: JS_IsString
      Src: /src/gpac/src/scenegraph/svg_js.c:1199,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1199,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/svg_js.c:1200,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1200,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1201,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1202,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:1204,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/svg_js.c:1205,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:1206,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1207,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1214,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1215,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1216,1
    - Dst: dom_node_changed
      Src: /src/gpac/src/scenegraph/svg_js.c:1217,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1225,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1226,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1227,1
    - Dst: dom_node_changed
      Src: /src/gpac/src/scenegraph/svg_js.c:1228,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 37
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1233
      start: 1189
    functionDepth: 12
    functionLinenumber: 1189
    functionLinenumberEnd: 1233
    functionName: svg_udom_set_rgb_color_trait
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_ToCString
    - JS_IsString
    - dom_node_changed
    - JS_GetOpaque
    - gf_node_get_field_by_name
    - dom_get_element
    - GF_JS_EXCEPTION
    - JS_IsObject
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_set_rgb_color_trait(JSContext *c, JSValueConst obj,
      int argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:1238,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1239,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:1242,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_js.c:1244,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1245,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/svg_js.c:1246,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1248,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1250,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1251,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1252,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1253,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 5
    argNames:
    - c
    - obj
    - argc
    - argv
    - get_screen
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1261
      start: 1235
    functionDepth: 2
    functionLinenumber: 1235
    functionLinenumberEnd: 1261
    functionName: svg_get_bbox
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_SetOpaque
    - dom_get_element
    - ScriptAction
    - GF_JS_EXCEPTION
    - gf_malloc
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_get_bbox(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv, Bool get_screen)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: svg_get_bbox
      Src: /src/gpac/src/scenegraph/svg_js.c:1265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1266
      start: 1263
    functionDepth: 3
    functionLinenumber: 1263
    functionLinenumberEnd: 1266
    functionName: svg_udom_get_local_bbox
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - svg_get_bbox
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_get_local_bbox(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: svg_get_bbox
      Src: /src/gpac/src/scenegraph/svg_js.c:1269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1270
      start: 1267
    functionDepth: 3
    functionLinenumber: 1267
    functionLinenumberEnd: 1270
    functionName: svg_udom_get_screen_bbox
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - svg_get_bbox
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_get_screen_bbox(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:1275,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1276,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:1278,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_js.c:1279,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1280,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/svg_js.c:1281,1
    - Dst: gf_mx2d_from_mx
      Src: /src/gpac/src/scenegraph/svg_js.c:1282,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1283,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1286,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1287
      start: 1272
    functionDepth: 2
    functionLinenumber: 1272
    functionLinenumberEnd: 1287
    functionName: svg_udom_get_screen_ctm
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - gf_mx2d_from_mx
    - JS_SetOpaque
    - dom_get_element
    - ScriptAction
    - GF_JS_EXCEPTION
    - gf_malloc
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_get_screen_ctm(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:1294,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1295,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1296,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_js.c:1298,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/svg_js.c:1299,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1301,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1302,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1303,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1304,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1305,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1306,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1307,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1308,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1309,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1310,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1311,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1312,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/svg_js.c:1313,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1314,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1316
      start: 1289
    functionDepth: 2
    functionLinenumber: 1289
    functionLinenumberEnd: 1316
    functionName: svg_udom_create_matrix_components
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_NewObjectClass
    - js_throw_err
    - GF_SAFEALLOC
    - JS_SetOpaque
    - dom_get_element
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_create_matrix_components(JSContext *c, JSValueConst
      obj, int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:1322,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1323,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_js.c:1325,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/svg_js.c:1326,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/svg_js.c:1327,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1328,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1330
      start: 1318
    functionDepth: 2
    functionLinenumber: 1318
    functionLinenumberEnd: 1330
    functionName: svg_udom_create_rect
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - js_throw_err
    - GF_SAFEALLOC
    - JS_SetOpaque
    - dom_get_element
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_create_rect(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:1336,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1337,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_js.c:1339,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/svg_js.c:1340,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/svg_js.c:1341,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1342,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1344
      start: 1332
    functionDepth: 2
    functionLinenumber: 1332
    functionLinenumberEnd: 1344
    functionName: svg_udom_create_point
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - js_throw_err
    - GF_SAFEALLOC
    - JS_SetOpaque
    - dom_get_element
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_create_point(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:1350,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1351,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_js.c:1353,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/svg_js.c:1354,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/svg_js.c:1355,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1356,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1358
      start: 1346
    functionDepth: 2
    functionLinenumber: 1346
    functionLinenumberEnd: 1358
    functionName: svg_udom_create_path
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - js_throw_err
    - GF_SAFEALLOC
    - JS_SetOpaque
    - dom_get_element
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_create_path(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:1364,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1365,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_js.c:1367,1
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/svg_js.c:1368,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:1370,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:1371,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:1372,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/svg_js.c:1373,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1374,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1376
      start: 1360
    functionDepth: 2
    functionLinenumber: 1360
    functionLinenumberEnd: 1376
    functionName: svg_udom_create_color
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - js_throw_err
    - GF_SAFEALLOC
    - JS_SetOpaque
    - dom_get_element
    - JS_ToInt32
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_create_color(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:1383,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1384,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1385,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/svg_js.c:1387,1
    - Dst: gf_path_iterator_new
      Src: /src/gpac/src/scenegraph/svg_js.c:1391,1
    - Dst: gf_path_iterator_get_length
      Src: /src/gpac/src/scenegraph/svg_js.c:1393,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1394,1
    - Dst: gf_path_iterator_del
      Src: /src/gpac/src/scenegraph/svg_js.c:1395,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1399,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1400
      start: 1378
    functionDepth: 5
    functionLinenumber: 1378
    functionLinenumberEnd: 1400
    functionName: svg_path_get_total_length
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - gf_path_iterator_new
    - gf_path_iterator_get_length
    - JS_NewFloat64
    - gf_node_get_field_by_name
    - gf_path_iterator_del
    - dom_get_element
    - GF_JS_EXCEPTION
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_path_get_total_length(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:1405,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1406,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/svg_js.c:1407,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1407,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:1409,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:1410,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1413
      start: 1402
    functionDepth: 2
    functionLinenumber: 1402
    functionLinenumberEnd: 1413
    functionName: svg_udom_move_focus
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - dom_get_element
    - ScriptAction
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - JS_IsObject
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_move_focus(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:1418,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1419,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/svg_js.c:1420,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1420,1
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:1422,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1424,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:1425,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1428
      start: 1415
    functionDepth: 2
    functionLinenumber: 1415
    functionLinenumberEnd: 1428
    functionName: svg_udom_set_focus
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - dom_get_element
    - ScriptAction
    - JS_IsObject
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_set_focus(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:1433,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1434,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:1436,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1437,1
    - Dst: dom_element_construct
      Src: /src/gpac/src/scenegraph/svg_js.c:1440,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1443
      start: 1430
    functionDepth: 5
    functionLinenumber: 1430
    functionLinenumberEnd: 1443
    functionName: svg_udom_get_focus
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - dom_get_element
    - ScriptAction
    - GF_JS_EXCEPTION
    - dom_element_construct
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_get_focus(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/svg_js.c:1447,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1448,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1450,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/svg_js.c:1450,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1451
      start: 1445
    functionDepth: 2
    functionLinenumber: 1445
    functionLinenumberEnd: 1451
    functionName: svg_udom_get_time
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - dom_get_element
    - gf_node_get_scene_time
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_udom_get_time(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/scenegraph/svg_js.c:1456,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1457
      start: 1454
    functionDepth: 2
    functionLinenumber: 1454
    functionLinenumberEnd: 1457
    functionName: svg_connection_create
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_connection_create(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1462,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_js.c:1463,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1464
      start: 1459
    functionDepth: 1
    functionLinenumber: 1459
    functionLinenumberEnd: 1464
    functionName: baseCI_finalize
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_GetAnyOpaque
    linkageType: ''
    returnType: void
    signature: void baseCI_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1468,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1469,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:1471,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:1472,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:1473,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1475,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1477
      start: 1466
    functionDepth: 1
    functionLinenumber: 1466
    functionLinenumberEnd: 1477
    functionName: rgb_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_NewInt32
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue rgb_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1480,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1481,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:1484,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1484,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:1485,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1485,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:1486,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1486,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1488,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1490
      start: 1478
    functionDepth: 1
    functionLinenumber: 1478
    functionLinenumberEnd: 1490
    functionName: rgb_setProperty
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_ToInt32
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue rgb_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1494,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1495,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:1498,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1499,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1501,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1502,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1503,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1504,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1507,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1508,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1509,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1510,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1512,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1514
      start: 1492
    functionDepth: 1
    functionLinenumber: 1492
    functionLinenumberEnd: 1514
    functionName: rect_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - JS_GetOpaque
    - ScriptAction
    - GF_JS_EXCEPTION
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue rect_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1519,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1520,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1521,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1521,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1536,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1538
      start: 1516
    functionDepth: 1
    functionLinenumber: 1516
    functionLinenumberEnd: 1538
    functionName: rect_setProperty
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    linkageType: ''
    returnType: JSValue
    signature: JSValue rect_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1542,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1543,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:1547,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1548,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1550,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1551,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1554,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1555,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1556,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1558
      start: 1540
    functionDepth: 1
    functionLinenumber: 1540
    functionLinenumberEnd: 1558
    functionName: point_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - JS_GetOpaque
    - ScriptAction
    - GF_JS_EXCEPTION
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue point_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1562,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1563,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1566,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1566,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1575,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1579,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1580,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:1581,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1584
      start: 1560
    functionDepth: 1
    functionLinenumber: 1560
    functionLinenumberEnd: 1584
    functionName: point_setProperty
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_GetOpaque
    - ScriptAction
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue point_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_js.c:1593,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1594,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_js.c:1597,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_js.c:1598,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_js.c:1599,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_js.c:1600,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_js.c:1601,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_js.c:1603,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1604,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1605,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/svg_js.c:1608,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1609,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - c
    - d
    argTypes:
    - JSContext*
    - SVG_PathData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1612
      start: 1586
    functionDepth: 1
    functionLinenumber: 1586
    functionLinenumberEnd: 1612
    functionName: svg_new_path_object
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 1
    functionsReached:
    - JS_NewObjectClass
    - gf_list_get
    - GF_SAFEALLOC
    - JS_SetOpaque
    - gf_list_count
    - GF_JS_EXCEPTION
    - gf_malloc
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_new_path_object(JSContext *c, SVG_PathData *d)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1616,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_js.c:1618,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_js.c:1619,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_js.c:1620,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1622
      start: 1614
    functionDepth: 1
    functionLinenumber: 1614
    functionLinenumberEnd: 1622
    functionName: pathCI_finalize
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_free
    linkageType: ''
    returnType: void
    signature: void pathCI_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1626,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1627,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:1629,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1631,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1633
      start: 1624
    functionDepth: 1
    functionLinenumber: 1624
    functionLinenumberEnd: 1633
    functionName: path_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_NewInt32
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1638,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1639,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:1640,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1640,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:1643,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:1644,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:1647,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:1650,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:1652,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1654,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1655
      start: 1635
    functionDepth: 1
    functionLinenumber: 1635
    functionLinenumberEnd: 1655
    functionName: svg_path_get_segment
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_NewInt32
    - JS_ToInt32
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_path_get_segment(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1661,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1662,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/scenegraph/svg_js.c:1664,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/scenegraph/svg_js.c:1664,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1664,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:1665,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1665,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:1666,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1666,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1696,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1700,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1705,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1709,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1714,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1720,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1724,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1729,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1731,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 77
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1732
      start: 1657
    functionDepth: 1
    functionLinenumber: 1657
    functionLinenumberEnd: 1732
    functionName: svg_path_get_segment_param
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - JS_GetOpaque
    - JS_IsInteger
    - JS_ToInt32
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_path_get_segment_param(JSContext *c, JSValueConst obj,
      int argc, JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_js.c:1760,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 2
    argNames:
    - p
    - nb_pts
    argTypes:
    - pathCI*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1762
      start: 1734
    functionDepth: 0
    functionLinenumber: 1734
    functionLinenumberEnd: 1762
    functionName: svg_path_realloc_pts
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: u32
    signature: u32 svg_path_realloc_pts(pathCI *p, u32 nb_pts)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1770,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1771,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1773,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1773,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1774,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1774,1
    - Dst: svg_path_realloc_pts
      Src: /src/gpac/src/scenegraph/svg_js.c:1775,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_js.c:1778,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1782
      start: 1764
    functionDepth: 1
    functionLinenumber: 1764
    functionLinenumberEnd: 1782
    functionName: svg_path_move_to
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - svg_path_realloc_pts
    - JS_GetOpaque
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - gf_realloc
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_path_move_to(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1789,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1790,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1792,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1792,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1793,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1793,1
    - Dst: svg_path_realloc_pts
      Src: /src/gpac/src/scenegraph/svg_js.c:1795,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_js.c:1798,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1802
      start: 1784
    functionDepth: 1
    functionLinenumber: 1784
    functionLinenumberEnd: 1802
    functionName: svg_path_line_to
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - svg_path_realloc_pts
    - JS_GetOpaque
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - gf_realloc
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_path_line_to(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1810,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1811,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1813,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1813,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1814,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1814,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1815,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1815,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1816,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1816,1
    - Dst: svg_path_realloc_pts
      Src: /src/gpac/src/scenegraph/svg_js.c:1817,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_js.c:1822,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1826
      start: 1804
    functionDepth: 1
    functionLinenumber: 1804
    functionLinenumberEnd: 1826
    functionName: svg_path_quad_to
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - svg_path_realloc_pts
    - JS_GetOpaque
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - gf_realloc
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_path_quad_to(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1834,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1835,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1837,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1837,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1838,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1838,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1839,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1839,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1840,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1840,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1841,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1841,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1842,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1842,1
    - Dst: svg_path_realloc_pts
      Src: /src/gpac/src/scenegraph/svg_js.c:1843,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_js.c:1850,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1854
      start: 1828
    functionDepth: 1
    functionLinenumber: 1828
    functionLinenumberEnd: 1854
    functionName: svg_path_curve_to
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - svg_path_realloc_pts
    - JS_GetOpaque
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - gf_realloc
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_path_curve_to(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1858,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1859,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_js.c:1861,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1865
      start: 1856
    functionDepth: 1
    functionLinenumber: 1856
    functionLinenumberEnd: 1865
    functionName: svg_path_close
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - gf_realloc
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_path_close(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1870,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1871,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1874,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1874,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1875,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1875,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1876,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1876,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1877,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1877,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1878,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1878,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1879,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1879,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1881,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1883
      start: 1868
    functionDepth: 1
    functionLinenumber: 1868
    functionLinenumberEnd: 1883
    functionName: matrix_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue matrix_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1888,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1889,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1890,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1890,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1894,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1897,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1900,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1903,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1906,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1909,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1914,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1915
      start: 1885
    functionDepth: 1
    functionLinenumber: 1885
    functionLinenumberEnd: 1915
    functionName: matrix_setProperty
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - FLT2FIX
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    linkageType: ''
    returnType: JSValue
    signature: JSValue matrix_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1920,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1921,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:1922,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1922,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1925,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1925,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1926,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1926,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1927,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1927,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1928,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1928,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1929,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1929,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1930,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_js.c:1930,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1932,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1933
      start: 1917
    functionDepth: 1
    functionLinenumber: 1917
    functionLinenumberEnd: 1933
    functionName: svg_mx2d_get_component
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - JS_GetOpaque
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_mx2d_get_component(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1938,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1939,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1940,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1941,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/scenegraph/svg_js.c:1943,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/svg_js.c:1944,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1945
      start: 1935
    functionDepth: 1
    functionLinenumber: 1935
    functionLinenumberEnd: 1945
    functionName: svg_mx2d_multiply
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_mx2d_add_matrix
    - GF_JS_EXCEPTION
    - JS_DupValue
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_mx2d_multiply(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1949,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1950,1
    - Dst: gf_mx2d_inverse
      Src: /src/gpac/src/scenegraph/svg_js.c:1951,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/svg_js.c:1952,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1953
      start: 1947
    functionDepth: 1
    functionLinenumber: 1947
    functionLinenumberEnd: 1953
    functionName: svg_mx2d_inverse
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_DupValue
    - GF_JS_EXCEPTION
    - gf_mx2d_inverse
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_mx2d_inverse(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1959,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1960,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1962,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1962,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1962,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_js.c:1964,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1965,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1966,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/scenegraph/svg_js.c:1967,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/svg_js.c:1968,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1969
      start: 1955
    functionDepth: 1
    functionLinenumber: 1955
    functionLinenumberEnd: 1969
    functionName: svg_mx2d_translate
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_DupValue
    - JS_GetOpaque
    - gf_mx2d_pre_multiply
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - gf_mx2d_init
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_mx2d_translate(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1975,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1976,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1977,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1977,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_js.c:1979,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1980,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/scenegraph/svg_js.c:1981,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/svg_js.c:1982,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1983
      start: 1971
    functionDepth: 1
    functionLinenumber: 1971
    functionLinenumberEnd: 1983
    functionName: svg_mx2d_scale
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_DupValue
    - JS_GetOpaque
    - gf_mx2d_pre_multiply
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - gf_mx2d_init
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_mx2d_scale(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:1990,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1991,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/svg_js.c:1992,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/svg_js.c:1992,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_js.c:1994,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/scenegraph/svg_js.c:1995,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_js.c:1995,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_js.c:1995,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/scenegraph/svg_js.c:1996,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/svg_js.c:1997,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1998
      start: 1985
    functionDepth: 1
    functionLinenumber: 1985
    functionLinenumberEnd: 1998
    functionName: svg_mx2d_rotate
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_DupValue
    - JS_GetOpaque
    - gf_mx2d_pre_multiply
    - JS_ToFloat64
    - gf_mulfix
    - GF_JS_EXCEPTION
    - gf_mx2d_init
    - gf_mx2d_add_rotation
    linkageType: ''
    returnType: JSValue
    signature: JSValue svg_mx2d_rotate(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/svg_js.c:2011,1
    - Dst: html_get_element_class
      Src: /src/gpac/src/scenegraph/svg_js.c:2012,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2018
      start: 2005
    functionDepth: 1
    functionLinenumber: 2005
    functionLinenumberEnd: 2018
    functionName: svg_get_element_class
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - html_get_element_class
    - gf_assert
    linkageType: ''
    returnType: JSClassID
    signature: JSClassID svg_get_element_class(GF_Node *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2026
      start: 2019
    functionDepth: 0
    functionLinenumber: 2019
    functionLinenumberEnd: 2026
    functionName: svg_get_document_class
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSClassID
    signature: JSClassID svg_get_document_class(GF_SceneGraph *sg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:2030,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - c
    - obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2033
      start: 2028
    functionDepth: 1
    functionLinenumber: 2028
    functionLinenumberEnd: 2033
    functionName: is_svg_document_class
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 1
    functionsReached:
    - JS_GetOpaque
    linkageType: ''
    returnType: Bool
    signature: Bool is_svg_document_class(JSContext *c, JSValue obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:2037,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - c
    - obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2040
      start: 2035
    functionDepth: 1
    functionLinenumber: 2035
    functionLinenumberEnd: 2040
    functionName: is_svg_element_class
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 1
    functionsReached:
    - JS_GetOpaque
    linkageType: ''
    returnType: Bool
    signature: Bool is_svg_element_class(JSContext *c, JSValue obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - _class
    - ','
    - _name
    - ','
    - _proto_funcs
    - ','
    - _construct
    - ','
    - _finalize
    - ','
    - _proto_class_id
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2057
      start: 2042
    functionDepth: 0
    functionLinenumber: 2042
    functionLinenumberEnd: 2057
    functionName: SETUP_JSCLASS
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SETUP_JSCLASS(_class, _name, _proto_funcs, _construct, _finalize, _proto_class_id)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/scenegraph/svg_js.c:2210,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/scenegraph/svg_js.c:2211,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/svg_js.c:2213,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/svg_js.c:2214,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:2215,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/svg_js.c:2216,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/svg_js.c:2218,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/scenegraph/svg_js.c:2218,1
    - Dst: dom_js_load
      Src: /src/gpac/src/scenegraph/svg_js.c:2221,1
    - Dst: qjs_module_init_xhr_global
      Src: /src/gpac/src/scenegraph/svg_js.c:2224,1
    - Dst: svg_define_udom_exception
      Src: /src/gpac/src/scenegraph/svg_js.c:2227,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/svg_js.c:2228,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/svg_js.c:2229,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/scenegraph/svg_js.c:2229,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/svg_js.c:2230,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/svg_js.c:2233,1
    - Dst: dom_js_get_document_proto
      Src: /src/gpac/src/scenegraph/svg_js.c:2233,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/svg_js.c:2235,1
    - Dst: dom_js_get_element_proto
      Src: /src/gpac/src/scenegraph/svg_js.c:2235,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/svg_js.c:2237,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/svg_js.c:2238,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/svg_js.c:2239,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/svg_js.c:2240,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/svg_js.c:2242,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/svg_js.c:2245,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:2245,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/svg_js.c:2246,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:2246,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/svg_js.c:2247,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:2247,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/svg_js.c:2248,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:2248,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/svg_js.c:2249,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/svg_js.c:2249,1
    - Dst: dom_js_define_document
      Src: /src/gpac/src/scenegraph/svg_js.c:2256,1
    - Dst: dom_js_define_event
      Src: /src/gpac/src/scenegraph/svg_js.c:2258,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/svg_js.c:2260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 30
    argCount: 1
    argNames:
    - scene
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2261
      start: 2207
    functionDepth: 3
    functionLinenumber: 2207
    functionLinenumberEnd: 2261
    functionName: svg_init_js_api
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - SETUP_JSCLASS
    - JS_GetGlobalObject
    - JS_NewObjectClass
    - dom_js_get_element_proto
    - dom_js_load
    - qjs_module_init_xhr_global
    - dom_js_define_document
    - JS_FreeValue
    - JS_SetOpaque
    - dom_js_define_event
    - dom_js_get_document_proto
    - JS_NewInt32
    - JS_NewCFunction
    - JS_NewObject
    - JS_SetPropertyStr
    - JS_GetRuntime
    - svg_define_udom_exception
    linkageType: ''
    returnType: void
    signature: void svg_init_js_api(GF_SceneGraph *scene)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2268
      start: 2265
    functionDepth: 0
    functionLinenumber: 2265
    functionLinenumberEnd: 2268
    functionName: svg_script_get_context
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSContext
    signature: JSContext *svg_script_get_context(GF_SceneGraph *sg)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_js.c:2276,1
    - Dst: strcpy
      Src: /src/gpac/src/scenegraph/svg_js.c:2279,1
    - Dst: strcat
      Src: /src/gpac/src/scenegraph/svg_js.c:2280,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/svg_js.c:2284,1
    - Dst: dom_get_evt_private
      Src: /src/gpac/src/scenegraph/svg_js.c:2286,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:2287,1
    - Dst: JS_Eval
      Src: /src/gpac/src/scenegraph/svg_js.c:2288,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_js.c:2288,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:2289,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_js.c:2294,1
    - Dst: JS_LookupProperty
      Src: /src/gpac/src/scenegraph/svg_js.c:2297,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/svg_js.c:2303,1
    - Dst: js_dump_error
      Src: /src/gpac/src/scenegraph/svg_js.c:2304,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/svg_js.c:2307,1
    - Dst: gf_js_call_gc
      Src: /src/gpac/src/scenegraph/svg_js.c:2310,1
    - Dst: js_std_loop
      Src: /src/gpac/src/scenegraph/svg_js.c:2313,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/svg_js.c:2314,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 3
    argNames:
    - sg
    - utf8_script
    - event
    argTypes:
    - GF_SceneGraph*
    - char*
    - GF_DOM_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2317
      start: 2270
    functionDepth: 2
    functionLinenumber: 2270
    functionLinenumberEnd: 2317
    functionName: svg_script_execute
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - strcat
    - JS_LookupProperty
    - JS_Eval
    - JS_IsException
    - JS_FreeValue
    - strcpy
    - JS_SetOpaque
    - gf_js_lock
    - js_dump_error
    - dom_get_evt_private
    - strchr
    - strlen
    - js_std_loop
    - gf_js_call_gc
    linkageType: ''
    returnType: Bool
    signature: Bool svg_script_execute(GF_SceneGraph *sg, char *utf8_script, GF_DOM_Event
      *event)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_js_dom_pre_destroy
      Src: /src/gpac/src/scenegraph/svg_js.c:2325,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/scenegraph/svg_js.c:2325,1
    - Dst: gf_js_delete_context
      Src: /src/gpac/src/scenegraph/svg_js.c:2326,1
    - Dst: dom_js_unload
      Src: /src/gpac/src/scenegraph/svg_js.c:2327,1
    - Dst: html_media_js_api_del
      Src: /src/gpac/src/scenegraph/svg_js.c:2330,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_js.c:2333,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - svg_js
    - scenegraph
    argTypes:
    - GF_SVGJS*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2336
      start: 2323
    functionDepth: 4
    functionLinenumber: 2323
    functionLinenumberEnd: 2336
    functionName: gf_svg_script_context_del
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_sg_js_dom_pre_destroy
    - dom_js_unload
    - html_media_js_api_del
    - JS_GetRuntime
    - gf_js_delete_context
    linkageType: ''
    returnType: void
    signature: void gf_svg_script_context_del(GF_SVGJS *svg_js, GF_SceneGraph *scenegraph)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/svg_js.c:2343,1
    - Dst: gf_sg_js_dom_pre_destroy
      Src: /src/gpac/src/scenegraph/svg_js.c:2349,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/scenegraph/svg_js.c:2349,1
    - Dst: gf_svg_script_context_del
      Src: /src/gpac/src/scenegraph/svg_js.c:2352,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - n
    - eff
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2356
      start: 2338
    functionDepth: 5
    functionLinenumber: 2338
    functionLinenumberEnd: 2356
    functionName: svg_script_predestroy
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - gf_svg_script_context_del
    - JS_GetRuntime
    - gf_list_del_item
    - gf_sg_js_dom_pre_destroy
    linkageType: ''
    returnType: void
    signature: void svg_script_predestroy(GF_Node *n, void *eff, Bool is_destroy)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_js.c:2367,1
    - Dst: gf_js_create_context
      Src: /src/gpac/src/scenegraph/svg_js.c:2372,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_js.c:2374,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/svg_js.c:2378,1
    - Dst: svg_init_js_api
      Src: /src/gpac/src/scenegraph/svg_js.c:2382,1
    - Dst: html_media_init_js_api
      Src: /src/gpac/src/scenegraph/svg_js.c:2386,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/svg_js.c:2393,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2396
      start: 2358
    functionDepth: 4
    functionLinenumber: 2358
    functionLinenumberEnd: 2396
    functionName: JSScript_CreateSVGContext
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - svg_init_js_api
    - gf_js_create_context
    - GF_SAFEALLOC
    - gf_js_lock
    - html_media_init_js_api
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err JSScript_CreateSVGContext(GF_SceneGraph *sg)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2412
      start: 2398
    functionDepth: 0
    functionLinenumber: 2398
    functionLinenumberEnd: 2412
    functionName: svg_get_text_child
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_DOMText
    signature: GF_DOMText *svg_get_text_child(GF_Node *node)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/svg_js.c:2426,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/scenegraph/svg_js.c:2428,1
    - Dst: GF_SceneGraph*::script_action
      Src: /src/gpac/src/scenegraph/svg_js.c:2432,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/scenegraph/svg_js.c:2435,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_js.c:2436,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/scenegraph/svg_js.c:2441,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_js.c:2442,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/scenegraph/svg_js.c:2448,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/svg_js.c:2453,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/scenegraph/svg_js.c:2455,1
    - Dst: JS_DetectModule
      Src: /src/gpac/src/scenegraph/svg_js.c:2455,1
    - Dst: JS_Eval
      Src: /src/gpac/src/scenegraph/svg_js.c:2460,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/svg_js.c:2461,1
    - Dst: js_dump_error
      Src: /src/gpac/src/scenegraph/svg_js.c:2462,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/svg_js.c:2465,1
    - Dst: gf_js_call_gc
      Src: /src/gpac/src/scenegraph/svg_js.c:2467,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/svg_js.c:2470,1
    - Dst: gf_dom_listener_process_add
      Src: /src/gpac/src/scenegraph/svg_js.c:2472,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_js.c:2474,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 42
    argCount: 2
    argNames:
    - script
    - file
    argTypes:
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2476
      start: 2414
    functionDepth: 5
    functionLinenumber: 2414
    functionLinenumberEnd: 2476
    functionName: svg_js_load_script
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 1
    functionsReached:
    - gf_free
    - JS_Eval
    - JS_DetectModule
    - gf_file_exists
    - gf_dom_add_text_node
    - JS_IsException
    - JS_FreeValue
    - gf_dom_listener_process_add
    - gf_js_call_gc
    - GF_SceneGraph*::script_action
    - strnicmp
    - gf_js_lock
    - js_dump_error
    - gf_opts_get_bool
    - gf_file_load_data
    linkageType: ''
    returnType: Bool
    signature: Bool svg_js_load_script(GF_Node *script, char *file)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JSScript_CreateSVGContext
      Src: /src/gpac/src/scenegraph/svg_js.c:2489,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_js.c:2493,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/svg_js.c:2501,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:2509,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:2516,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_js.c:2520,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/svg_js.c:2520,1
    - Dst: svg_js_load_script
      Src: /src/gpac/src/scenegraph/svg_js.c:2521,1
    - Dst: vrml_svg_js_async_load
      Src: /src/gpac/src/scenegraph/svg_js.c:2526,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/svg_js.c:2533,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_js.c:2536,1
    - Dst: svg_get_text_child
      Src: /src/gpac/src/scenegraph/svg_js.c:2544,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_js.c:2546,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/scenegraph/svg_js.c:2548,1
    - Dst: JS_DetectModule
      Src: /src/gpac/src/scenegraph/svg_js.c:2548,1
    - Dst: JS_Eval
      Src: /src/gpac/src/scenegraph/svg_js.c:2553,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_js.c:2553,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/svg_js.c:2554,1
    - Dst: js_dump_error
      Src: /src/gpac/src/scenegraph/svg_js.c:2555,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/svg_js.c:2557,1
    - Dst: gf_dom_listener_process_add
      Src: /src/gpac/src/scenegraph/svg_js.c:2558,1
    - Dst: js_std_loop
      Src: /src/gpac/src/scenegraph/svg_js.c:2559,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 50
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2561
      start: 2482
    functionDepth: 6
    functionLinenumber: 2482
    functionLinenumberEnd: 2561
    functionName: JSScript_LoadSVG
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 1
    functionsReached:
    - gf_free
    - svg_js_load_script
    - JSScript_CreateSVGContext
    - js_std_loop
    - svg_get_text_child
    - JS_DetectModule
    - gf_list_add
    - js_dump_error
    - gf_node_get_attribute_by_tag
    - strstr
    - ScriptAction
    - strnicmp
    - strlen
    - JS_Eval
    - JS_IsException
    - JS_FreeValue
    - gf_dom_listener_process_add
    - vrml_svg_js_async_load
    - gf_opts_get_bool
    linkageType: ''
    returnType: void
    signature: void JSScript_LoadSVG(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/src/scenegraph/svg_js.c:2571,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - name
    - rp
    - data
    argTypes:
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2572
      start: 2569
    functionDepth: 0
    functionLinenumber: 2569
    functionLinenumberEnd: 2572
    functionName: dump_root
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void dump_root(const char *name, void *rp, void *data)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/svg_js.c:2601,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/svg_js.c:2601,1
    - Dst: svg_get_text_child
      Src: /src/gpac/src/scenegraph/svg_js.c:2602,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/scenegraph/svg_js.c:2612,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/svg_js.c:2616,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/svg_js.c:2617,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_js.c:2623,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/svg_js.c:2624,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/svg_js.c:2628,1
    - Dst: dom_get_evt_private
      Src: /src/gpac/src/scenegraph/svg_js.c:2629,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/svg_js.c:2632,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:2635,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/svg_js.c:2642,1
    - Dst: dom_element_construct
      Src: /src/gpac/src/scenegraph/svg_js.c:2646,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/svg_js.c:2652,1
    - Dst: JS_EvalThis
      Src: /src/gpac/src/scenegraph/svg_js.c:2653,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_js.c:2653,1
    - Dst: JS_EvalThis
      Src: /src/gpac/src/scenegraph/svg_js.c:2657,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_js.c:2657,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/svg_js.c:2660,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/svg_js.c:2660,1
    - Dst: gf_dom_new_event
      Src: /src/gpac/src/scenegraph/svg_js.c:2664,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:2665,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/svg_js.c:2668,1
    - Dst: JS_Call
      Src: /src/gpac/src/scenegraph/svg_js.c:2669,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/scenegraph/svg_js.c:2671,1
    - Dst: JS_Call
      Src: /src/gpac/src/scenegraph/svg_js.c:2672,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/svg_js.c:2673,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/svg_js.c:2675,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/scenegraph/svg_js.c:2677,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/svg_js.c:2678,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/scenegraph/svg_js.c:2679,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/scenegraph/svg_js.c:2680,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/svg_js.c:2681,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/svg_js.c:2684,1
    - Dst: svg_script_execute
      Src: /src/gpac/src/scenegraph/svg_js.c:2686,1
    - Dst: JS_EvalThis
      Src: /src/gpac/src/scenegraph/svg_js.c:2691,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_js.c:2691,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/svg_js.c:2693,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/svg_js.c:2697,1
    - Dst: js_dump_error
      Src: /src/gpac/src/scenegraph/svg_js.c:2698,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/svg_js.c:2701,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/svg_js.c:2704,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:2706,1
    - Dst: gf_js_call_gc
      Src: /src/gpac/src/scenegraph/svg_js.c:2711,1
    - Dst: js_std_loop
      Src: /src/gpac/src/scenegraph/svg_js.c:2717,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/svg_js.c:2720,1
    - Dst: fprintf
      Src: /src/gpac/src/scenegraph/svg_js.c:2725,1
    - Dst: fprintf
      Src: /src/gpac/src/scenegraph/svg_js.c:2728,1
    - Dst: fprintf
      Src: /src/gpac/src/scenegraph/svg_js.c:2732,1
    - Dst: JS_DumpNamedRoots
      Src: /src/gpac/src/scenegraph/svg_js.c:2733,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/scenegraph/svg_js.c:2733,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_js.c:2738,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 115
    argCount: 4
    argNames:
    - node
    - event
    - observer
    - utf8_script
    argTypes:
    - GF_Node*
    - GF_DOM_Event*
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2742
      start: 2584
    functionDepth: 5
    functionLinenumber: 2584
    functionLinenumberEnd: 2742
    functionName: svg_script_execute_handler
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_GetGlobalObject
    - gf_log_tool_level_on
    - dom_get_evt_private
    - JS_FreeCString
    - js_std_loop
    - fprintf
    - svg_get_text_child
    - JS_ToCString
    - dom_element_construct
    - svg_script_execute
    - JS_IsUndefined
    - js_dump_error
    - JS_GetRuntime
    - JS_DumpNamedRoots
    - GF_LOG
    - JS_EvalThis
    - JS_GetPropertyStr
    - strlen
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_SetOpaque
    - gf_js_lock
    - gf_dom_new_event
    - gf_js_call_gc
    linkageType: ''
    returnType: Bool
    signature: Bool svg_script_execute_handler(GF_Node *node, GF_DOM_Event *event,
      GF_Node *observer, char *utf8_script)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/svg_js.c:2755,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/svg_js.c:2755,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/svg_js.c:2762,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/svg_js.c:2770,1
    - Dst: gf_dom_new_event
      Src: /src/gpac/src/scenegraph/svg_js.c:2773,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/svg_js.c:2774,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/svg_js.c:2777,1
    - Dst: JS_Call
      Src: /src/gpac/src/scenegraph/svg_js.c:2778,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/scenegraph/svg_js.c:2780,1
    - Dst: JS_Call
      Src: /src/gpac/src/scenegraph/svg_js.c:2781,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/svg_js.c:2782,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/svg_js.c:2785,1
    - Dst: js_dump_error
      Src: /src/gpac/src/scenegraph/svg_js.c:2786,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/svg_js.c:2789,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/svg_js.c:2790,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/svg_js.c:2792,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_js.c:2795,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 3
    argNames:
    - node
    - event
    - observer
    argTypes:
    - GF_Node*
    - GF_DOM_Event*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2798
      start: 2744
    functionDepth: 2
    functionLinenumber: 2744
    functionLinenumberEnd: 2798
    functionName: svg_execute_handler
    functionSourceFile: /src/gpac/src/scenegraph/svg_js.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_SetOpaque
    - GF_LOG
    - JS_IsUndefined
    - gf_js_lock
    - JS_GetPropertyStr
    - js_dump_error
    - gf_dom_new_event
    linkageType: ''
    returnType: void
    signature: void svg_execute_handler(GF_Node *node, GF_DOM_Event *event, GF_Node
      *observer)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_codec.c:38,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_codec.c:41,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_codec.c:43,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 50
    functionName: gf_odf_codec_new
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 3
    functionsReached:
    - gf_list_new
    - gf_malloc
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_odf_codec_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_codec.c:57,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_codec.c:58,1
    - Dst: gf_odf_delete_command
      Src: /src/gpac/src/odf/odf_codec.c:59,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_codec.c:60,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_codec.c:62,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/odf_codec.c:63,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_codec.c:64,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - codec
    argTypes:
    - GF_ODCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 65
    functionName: gf_odf_codec_del
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 3
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_odf_delete_command
    - gf_bs_del
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_codec_del(GF_ODCodec *codec)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_codec.c:76,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - codec
    - command
    argTypes:
    - GF_ODCodec*
    - GF_ODCom*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 77
    functionName: gf_odf_codec_add_com
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 2
    functionsReached:
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_codec_add_com(GF_ODCodec *codec, GF_ODCom *command)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/odf_codec.c:91,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_codec.c:96,1
    - Dst: gf_odf_write_command
      Src: /src/gpac/src/odf/odf_codec.c:97,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_codec.c:100,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/odf_codec.c:106,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_codec.c:110,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_codec.c:111,1
    - Dst: gf_odf_delete_command
      Src: /src/gpac/src/odf/odf_codec.c:112,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_codec.c:113,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/odf/odf_codec.c:117,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 33
    argCount: 2
    argNames:
    - codec
    - cleanup_type
    argTypes:
    - GF_ODCodec*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 120
    functionName: gf_odf_codec_encode
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 2
    functionsReached:
    - gf_list_get
    - gf_bs_new
    - gf_list_reset
    - gf_odf_delete_command
    - gf_odf_write_command
    - gf_bs_align
    - gf_bs_del
    - gf_list_count
    - gf_list_enum
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_codec_encode(GF_ODCodec *codec, u32 cleanup_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/odf_codec.c:126,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/odf_codec.c:127,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 3
    argNames:
    - codec
    - outAU
    - au_length
    argTypes:
    - GF_ODCodec*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 130
    functionName: gf_odf_codec_get_au
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 2
    functionsReached:
    - gf_bs_get_content
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_codec_get_au(GF_ODCodec *codec, u8 **outAU, u32 *au_length)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_codec.c:145,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/odf_codec.c:150,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 3
    argNames:
    - codec
    - au
    - au_length
    argTypes:
    - GF_ODCodec*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 153
    functionName: gf_odf_codec_set_au
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_bs_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_codec_set_au(GF_ODCodec *codec, const u8 *au, u32
      au_length)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/odf_codec.c:165,1
    - Dst: gf_odf_parse_command
      Src: /src/gpac/src/odf/odf_codec.c:167,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_codec.c:169,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_codec.c:170,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_codec.c:172,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/odf_codec.c:175,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/odf_codec.c:185,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_codec.c:188,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_codec.c:189,1
    - Dst: gf_odf_delete_command
      Src: /src/gpac/src/odf/odf_codec.c:190,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_codec.c:191,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 1
    argNames:
    - codec
    argTypes:
    - GF_ODCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 194
    functionName: gf_odf_codec_decode
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 3
    functionsReached:
    - gf_list_get
    - gf_odf_size_field_size
    - gf_odf_delete_command
    - gf_bs_align
    - gf_bs_del
    - gf_list_count
    - gf_list_add
    - gf_list_rem
    - gf_bs_available
    - gf_odf_parse_command
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_codec_decode(GF_ODCodec *codec)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_codec.c:202,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_codec.c:203,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - codec
    argTypes:
    - GF_ODCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 205
    functionName: gf_odf_codec_get_com
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 3
    functionsReached:
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_odf_codec_get_com(GF_ODCodec *codec)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_create_command
      Src: /src/gpac/src/odf/odf_codec.c:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - tag
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 222
    functionName: gf_odf_com_new
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 2
    functionsReached:
    - gf_odf_create_command
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_odf_com_new(u8 tag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_delete_command
      Src: /src/gpac/src/odf/odf_codec.c:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - com
    argTypes:
    - GF_ODCom**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 232
    functionName: gf_odf_com_del
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 3
    functionsReached:
    - gf_odf_delete_command
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_com_del(GF_ODCom **com)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_create_descriptor
      Src: /src/gpac/src/odf/odf_codec.c:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 240
    functionDepth: 1
    functionLinenumber: 240
    functionLinenumberEnd: 247
    functionName: GF_Descriptor *gf_odf_desc_new(u8 tag)
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 0
    functionsReached:
    - gf_odf_create_descriptor
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_Descriptor *gf_odf_desc_new(u8 tag)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_codec.c:253,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - desc
    argTypes:
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 250
    functionDepth: 1
    functionLinenumber: 250
    functionLinenumberEnd: 254
    functionName: gf_odf_desc_del
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 44
    functionsReached:
    - gf_odf_delete_descriptor
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_desc_del(GF_Descriptor *desc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_codec.c:264,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_codec.c:265,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_codec.c:266,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_codec.c:267,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - descList
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 257
    functionDepth: 1
    functionLinenumber: 257
    functionLinenumberEnd: 271
    functionName: gf_odf_desc_list_del
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_odf_delete_descriptor
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_desc_list_del(GF_List *descList)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/odf/odf_codec.c:279,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/odf/odf_codec.c:280,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/odf/odf_codec.c:281,1
    - Dst: gf_odf_new_slc
      Src: /src/gpac/src/odf/odf_codec.c:282,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - sl_predefined
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 275
    functionDepth: 1
    functionLinenumber: 275
    functionLinenumberEnd: 284
    functionName: gf_odf_desc_esd_new
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 18
    functionsReached:
    - gf_odf_desc_new
    - gf_odf_new_slc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_odf_desc_esd_new(u32 sl_predefined)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/odf_codec.c:297,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/odf_codec.c:301,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_codec.c:303,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/odf_codec.c:312,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - raw_desc
    - descSize
    - outDesc
    argTypes:
    - u8*
    - u32
    - GF_Descriptor**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 289
    functionDepth: 1
    functionLinenumber: 289
    functionLinenumberEnd: 314
    functionName: gf_odf_desc_read
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 2
    functionsReached:
    - gf_odf_size_field_size
    - gf_odf_parse_descriptor
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_desc_read(u8 *raw_desc, u32 descSize, GF_Descriptor
      **outDesc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_codec.c:325,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - desc
    - bs
    argTypes:
    - GF_Descriptor*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 318
    functionDepth: 1
    functionLinenumber: 318
    functionLinenumberEnd: 329
    functionName: gf_odf_desc_write_bs
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 0
    functionsReached:
    - gf_odf_write_descriptor
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_desc_write_bs(GF_Descriptor *desc, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/odf_codec.c:340,1
    - Dst: gf_odf_desc_write_bs
      Src: /src/gpac/src/odf/odf_codec.c:343,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/odf_codec.c:346,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/odf_codec.c:347,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - desc
    - outEncDesc
    - outSize
    argTypes:
    - GF_Descriptor*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 331
    functionDepth: 2
    functionLinenumber: 331
    functionLinenumberEnd: 349
    functionName: gf_odf_desc_write
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 4
    functionsReached:
    - gf_bs_get_content
    - gf_bs_del
    - gf_bs_new
    - gf_odf_desc_write_bs
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_desc_write(GF_Descriptor *desc, u8 **outEncDesc, u32
      *outSize)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_codec.c:361,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_codec.c:364,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - desc
    argTypes:
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 353
    functionDepth: 1
    functionLinenumber: 353
    functionLinenumberEnd: 367
    functionName: gf_odf_desc_size
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 3
    functionsReached:
    - gf_odf_size_field_size
    - gf_odf_size_descriptor
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_desc_size(GF_Descriptor *desc)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_write
      Src: /src/gpac/src/odf/odf_codec.c:387,1
    - Dst: gf_odf_desc_read
      Src: /src/gpac/src/odf/odf_codec.c:389,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_codec.c:390,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 2
    argNames:
    - inDesc
    - outDesc
    argTypes:
    - GF_Descriptor*
    - GF_Descriptor**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 370
    functionDepth: 3
    functionLinenumber: 370
    functionLinenumberEnd: 398
    functionName: gf_odf_desc_copy
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 15
    functionsReached:
    - gf_free
    - gf_odf_desc_write
    - gf_odf_desc_read
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_desc_copy(GF_Descriptor *inDesc, GF_Descriptor **outDesc)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: AddDescriptorToOD
      Src: /src/gpac/src/odf/odf_codec.c:424,1
    - Dst: AddDescriptorToIOD
      Src: /src/gpac/src/odf/odf_codec.c:426,1
    - Dst: AddDescriptorToESD
      Src: /src/gpac/src/odf/odf_codec.c:428,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_codec.c:440,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_codec.c:446,1
    - Dst: AddDescriptorToIsomIOD
      Src: /src/gpac/src/odf/odf_codec.c:453,1
    - Dst: AddDescriptorToIsomOD
      Src: /src/gpac/src/odf/odf_codec.c:455,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_codec.c:459,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_codec.c:465,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_codec.c:466,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 46
    argCount: 2
    argNames:
    - parentDesc
    - newDesc
    argTypes:
    - GF_Descriptor*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 407
    functionDepth: 1
    functionLinenumber: 407
    functionLinenumberEnd: 471
    functionName: gf_odf_desc_add_desc
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 6
    functionsReached:
    - gf_list_new
    - AddDescriptorToOD
    - AddDescriptorToIsomOD
    - AddDescriptorToESD
    - AddDescriptorToIsomIOD
    - gf_list_add
    - AddDescriptorToIOD
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_desc_add_desc(GF_Descriptor *parentDesc, GF_Descriptor
      *newDesc)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/odf_codec.c:496,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/odf_codec.c:501,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_codec.c:503,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_codec.c:504,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/odf_codec.c:509,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 3
    argNames:
    - raw_list
    - raw_size
    - descList
    argTypes:
    - u8*
    - u32
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 512
      start: 486
    functionDepth: 1
    functionLinenumber: 486
    functionLinenumberEnd: 512
    functionName: gf_odf_desc_list_read
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 1
    functionsReached:
    - gf_odf_size_field_size
    - gf_bs_new
    - gf_odf_parse_descriptor
    - gf_bs_del
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_desc_list_read(u8 *raw_list, u32 raw_size, GF_List
      *descList)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/odf_codec.c:525,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_codec.c:528,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/odf_codec.c:530,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/odf_codec.c:534,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/odf_codec.c:535,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 3
    argNames:
    - descList
    - outEncList
    - outSize
    argTypes:
    - GF_List*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 537
      start: 515
    functionDepth: 1
    functionLinenumber: 515
    functionLinenumberEnd: 537
    functionName: gf_odf_desc_list_write
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 1
    functionsReached:
    - gf_odf_write_descriptor_list
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_desc_list_write(GF_List *descList, u8 **outEncList,
      u32 *outSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_codec.c:542,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - descList
    - outSize
    argTypes:
    - GF_List*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 543
      start: 539
    functionDepth: 1
    functionLinenumber: 539
    functionLinenumberEnd: 543
    functionName: gf_odf_desc_list_size
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 1
    functionsReached:
    - gf_odf_size_descriptor_list
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_desc_list_size(GF_List *descList, u32 *outSize)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_codec.c:552,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_codec.c:557,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_codec.c:563,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_codec.c:566,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_codec.c:569,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/odf/odf_codec.c:572,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_codec.c:577,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_codec.c:578,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_codec.c:590,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/odf/odf_codec.c:593,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_codec.c:605,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/odf/odf_codec.c:608,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_codec.c:618,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/odf/odf_codec.c:624,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_codec.c:625,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_codec.c:628,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_codec.c:631,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_codec.c:632,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_codec.c:634,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/odf/odf_codec.c:642,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_codec.c:644,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_codec.c:651,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_codec.c:657,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_codec.c:660,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_codec.c:661,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_codec.c:662,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_codec.c:665,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/odf/odf_codec.c:667,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_codec.c:679,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_codec.c:680,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_codec.c:683,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/odf/odf_codec.c:685,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_codec.c:689,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_codec.c:690,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/odf/odf_codec.c:693,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_codec.c:700,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_codec.c:706,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_codec.c:709,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_codec.c:712,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/odf/odf_codec.c:713,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/odf/odf_codec.c:714,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/odf/odf_codec.c:716,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_codec.c:718,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/odf/odf_codec.c:720,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_codec.c:722,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 144
    argCount: 2
    argNames:
    - codec
    - command
    argTypes:
    - GF_ODCodec*
    - GF_ODCom*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 736
      start: 547
    functionDepth: 4
    functionLinenumber: 547
    functionLinenumberEnd: 736
    functionName: gf_odf_codec_apply_com
    functionSourceFile: /src/gpac/src/odf/odf_codec.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_pop_back
    - gf_list_transfer
    - gf_odf_desc_del
    - gf_odf_desc_copy
    - gf_list_count
    - gf_odf_com_del
    - gf_list_add
    - gf_odf_com_new
    - gf_list_enum
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_codec_apply_com(GF_ODCodec *codec, GF_ODCom *command)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_command.c:41,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_command.c:47,1
    - Dst: gf_odf_create_command
      Src: /src/gpac/src/odf/odf_command.c:54,1
    - Dst: gf_odf_read_command
      Src: /src/gpac/src/odf/odf_command.c:62,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_command.c:66,1
    - Dst: gf_odf_delete_command
      Src: /src/gpac/src/odf/odf_command.c:69,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 3
    argNames:
    - bs
    - com
    - com_size
    argTypes:
    - GF_BitStream*
    - GF_ODCom**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 73
    functionName: gf_odf_parse_command
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 1
    functionsReached:
    - gf_odf_size_field_size
    - gf_odf_delete_command
    - gf_odf_create_command
    - gf_bs_read_int
    - gf_odf_read_command
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_parse_command(GF_BitStream *bs, GF_ODCom **com, u32 *com_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_command.c:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 84
    functionName: gf_odf_new_base_command
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_ODCom
    signature: GF_ODCom *gf_odf_new_base_command()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_command.c:88,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_command.c:89,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - bcRemove
    argTypes:
    - GF_BaseODCom*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 91
    functionName: gf_odf_del_base_command
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_base_command(GF_BaseODCom *bcRemove)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_command.c:98,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_command.c:100,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - bs
    - bcRem
    - gf_odf_size_command
    argTypes:
    - GF_BitStream*
    - GF_BaseODCom*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 102
    functionName: gf_odf_read_base_command
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_base_command(GF_BitStream *bs, GF_BaseODCom *bcRem,
      u32 gf_odf_size_command)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - bcRem
    - outSize
    argTypes:
    - GF_BaseODCom*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 108
    functionName: gf_odf_size_base_command
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_base_command(GF_BaseODCom *bcRem, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_base_command
      Src: /src/gpac/src/odf/odf_command.c:115,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_command.c:117,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_command.c:119,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - bcRem
    argTypes:
    - GF_BitStream*
    - GF_BaseODCom*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 121
    functionName: gf_odf_write_base_command
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_odf_write_base_descriptor
    - gf_odf_size_base_command
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_base_command(GF_BitStream *bs, GF_BaseODCom *bcRem)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_command.c:126,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 132
    functionName: gf_odf_new_od_remove
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_ODCom
    signature: GF_ODCom *gf_odf_new_od_remove()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_command.c:136,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_command.c:137,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ODRemove
    argTypes:
    - GF_ODRemove*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 139
    functionName: gf_odf_del_od_remove
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_od_remove(GF_ODRemove *ODRemove)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_command.c:146,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_command.c:150,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:154,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - bs
    - odRem
    - gf_odf_size_command
    argTypes:
    - GF_BitStream*
    - GF_ODRemove*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 157
    functionName: gf_odf_read_od_remove
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - gf_malloc
    - gf_bs_align
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_od_remove(GF_BitStream *bs, GF_ODRemove *odRem,
      u32 gf_odf_size_command)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - odRem
    - outSize
    argTypes:
    - GF_ODRemove*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 168
    functionName: gf_odf_size_od_remove
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_od_remove(GF_ODRemove *odRem, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_od_remove
      Src: /src/gpac/src/odf/odf_command.c:176,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_command.c:178,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_command.c:182,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:185,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - bs
    - odRem
    argTypes:
    - GF_BitStream*
    - GF_ODRemove*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 187
    functionName: gf_odf_write_od_remove
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_bs_align
    - gf_bs_write_int
    - gf_odf_size_od_remove
    - gf_odf_write_base_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_od_remove(GF_BitStream *bs, GF_ODRemove *odRem)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_command.c:193,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_command.c:196,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_command.c:198,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 191
    functionDepth: 1
    functionLinenumber: 191
    functionLinenumberEnd: 203
    functionName: gf_odf_new_od_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_ODCom
    signature: GF_ODCom *gf_odf_new_od_update()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_command.c:209,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_command.c:210,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_command.c:211,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_command.c:213,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_command.c:216,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_command.c:217,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - ODUpdate
    argTypes:
    - GF_ODUpdate*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 205
    functionDepth: 1
    functionLinenumber: 205
    functionLinenumberEnd: 219
    functionName: gf_odf_del_od_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_odf_delete_descriptor
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_od_update(GF_ODUpdate *ODUpdate)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_command.c:233,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_command.c:236,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - odUp
    - desc
    argTypes:
    - GF_ODUpdate*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 239
    functionName: AddToODUpdate
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_odf_delete_descriptor
    - gf_list_add
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AddToODUpdate(GF_ODUpdate *odUp, GF_Descriptor *desc)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/odf_command.c:249,1
    - Dst: AddToODUpdate
      Src: /src/gpac/src/odf/odf_command.c:251,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_command.c:253,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:256,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - bs
    - odUp
    - gf_odf_size_command
    argTypes:
    - GF_BitStream*
    - GF_ODUpdate*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 241
    functionDepth: 2
    functionLinenumber: 241
    functionLinenumberEnd: 259
    functionName: gf_odf_read_od_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - AddToODUpdate
    - gf_odf_parse_descriptor
    - gf_odf_size_field_size
    - gf_bs_align
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_od_update(GF_BitStream *bs, GF_ODUpdate *odUp, u32
      gf_odf_size_command)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_command.c:268,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_command.c:269,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_command.c:270,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - odUp
    - outSize
    argTypes:
    - GF_ODUpdate*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 260
    functionDepth: 1
    functionLinenumber: 260
    functionLinenumberEnd: 273
    functionName: gf_odf_size_od_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_odf_size_field_size
    - gf_odf_size_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_od_update(GF_ODUpdate *odUp, u32 *outSize)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_od_update
      Src: /src/gpac/src/odf/odf_command.c:281,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_command.c:283,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_command.c:287,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_command.c:288,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:292,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - bs
    - odUp
    argTypes:
    - GF_BitStream*
    - GF_ODUpdate*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 274
    functionDepth: 2
    functionLinenumber: 274
    functionLinenumberEnd: 294
    functionName: gf_odf_write_od_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_bs_align
    - gf_odf_size_od_update
    - gf_odf_write_descriptor
    - gf_odf_write_base_descriptor
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_od_update(GF_BitStream *bs, GF_ODUpdate *odUp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_command.c:299,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_command.c:302,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_command.c:304,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 309
    functionName: gf_odf_new_esd_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_ODCom
    signature: GF_ODCom *gf_odf_new_esd_update()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_command.c:315,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_command.c:316,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_command.c:317,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_command.c:319,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_command.c:322,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_command.c:323,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - ESDUpdate
    argTypes:
    - GF_ESDUpdate*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 311
    functionDepth: 1
    functionLinenumber: 311
    functionLinenumberEnd: 325
    functionName: gf_odf_del_esd_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_odf_delete_descriptor
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_esd_update(GF_ESDUpdate *ESDUpdate)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_command.c:335,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_command.c:338,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - esdUp
    - desc
    argTypes:
    - GF_ESDUpdate*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 327
    functionDepth: 1
    functionLinenumber: 327
    functionLinenumberEnd: 341
    functionName: AddToESDUpdate
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_odf_delete_descriptor
    - gf_list_add
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AddToESDUpdate(GF_ESDUpdate *esdUp, GF_Descriptor *desc)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_command.c:350,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/odf_command.c:354,1
    - Dst: AddToESDUpdate
      Src: /src/gpac/src/odf/odf_command.c:356,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_command.c:358,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:367,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 23
    argCount: 3
    argNames:
    - bs
    - esdUp
    - gf_odf_size_command
    argTypes:
    - GF_BitStream*
    - GF_ESDUpdate*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 343
    functionDepth: 2
    functionLinenumber: 343
    functionLinenumberEnd: 370
    functionName: gf_odf_read_esd_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - AddToESDUpdate
    - gf_odf_size_field_size
    - gf_odf_parse_descriptor
    - gf_bs_align
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_esd_update(GF_BitStream *bs, GF_ESDUpdate *esdUp,
      u32 gf_odf_size_command)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_command.c:383,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_command.c:384,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_command.c:385,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - esdUp
    - outSize
    argTypes:
    - GF_ESDUpdate*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 374
    functionDepth: 1
    functionLinenumber: 374
    functionLinenumberEnd: 392
    functionName: gf_odf_size_esd_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_odf_size_field_size
    - gf_odf_size_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_esd_update(GF_ESDUpdate *esdUp, u32 *outSize)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_esd_update
      Src: /src/gpac/src/odf/odf_command.c:400,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_command.c:402,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_command.c:405,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_command.c:407,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_command.c:408,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:412,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - bs
    - esdUp
    argTypes:
    - GF_BitStream*
    - GF_ESDUpdate*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 393
    functionDepth: 2
    functionLinenumber: 393
    functionLinenumberEnd: 414
    functionName: gf_odf_write_esd_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_bs_align
    - gf_odf_size_esd_update
    - gf_odf_write_descriptor
    - gf_odf_write_base_descriptor
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_esd_update(GF_BitStream *bs, GF_ESDUpdate *esdUp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_command.c:419,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 425
      start: 417
    functionDepth: 0
    functionLinenumber: 417
    functionLinenumberEnd: 425
    functionName: gf_odf_new_esd_remove
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_ODCom
    signature: GF_ODCom *gf_odf_new_esd_remove()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_command.c:430,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_command.c:431,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ESDRemove
    argTypes:
    - GF_ESDRemove*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 427
    functionDepth: 0
    functionLinenumber: 427
    functionLinenumberEnd: 433
    functionName: gf_odf_del_esd_remove
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_esd_remove(GF_ESDRemove *ESDRemove)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_command.c:441,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_command.c:442,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_command.c:453,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_command.c:456,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:459,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 3
    argNames:
    - bs
    - esdRem
    - gf_odf_size_command
    argTypes:
    - GF_BitStream*
    - GF_ESDRemove*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 461
      start: 436
    functionDepth: 1
    functionLinenumber: 436
    functionLinenumberEnd: 461
    functionName: gf_odf_read_esd_remove
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_int
    - gf_bs_align
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_esd_remove(GF_BitStream *bs, GF_ESDRemove *esdRem,
      u32 gf_odf_size_command)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - esdRem
    - outSize
    argTypes:
    - GF_ESDRemove*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 468
      start: 463
    functionDepth: 0
    functionLinenumber: 463
    functionLinenumberEnd: 468
    functionName: gf_odf_size_esd_remove
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_esd_remove(GF_ESDRemove *esdRem, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_esd_remove
      Src: /src/gpac/src/odf/odf_command.c:475,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_command.c:477,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_command.c:480,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_command.c:481,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_command.c:483,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:486,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - bs
    - esdRem
    argTypes:
    - GF_BitStream*
    - GF_ESDRemove*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 469
    functionDepth: 1
    functionLinenumber: 469
    functionLinenumberEnd: 488
    functionName: gf_odf_write_esd_remove
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_bs_align
    - gf_odf_write_base_descriptor
    - gf_bs_write_int
    - gf_odf_size_esd_remove
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_esd_remove(GF_BitStream *bs, GF_ESDRemove *esdRem)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_command.c:494,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 492
    functionDepth: 0
    functionLinenumber: 492
    functionLinenumberEnd: 500
    functionName: gf_odf_new_ipmp_remove
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_ODCom
    signature: GF_ODCom *gf_odf_new_ipmp_remove()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_command.c:505,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_command.c:506,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - IPMPDRemove
    argTypes:
    - GF_IPMPRemove*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 502
    functionDepth: 0
    functionLinenumber: 502
    functionLinenumberEnd: 508
    functionName: gf_odf_del_ipmp_remove
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_ipmp_remove(GF_IPMPRemove *IPMPDRemove)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_command.c:520,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_command.c:524,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:527,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - bs
    - ipmpRem
    - gf_odf_size_command
    argTypes:
    - GF_BitStream*
    - GF_IPMPRemove*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 510
    functionDepth: 1
    functionLinenumber: 510
    functionLinenumberEnd: 529
    functionName: gf_odf_read_ipmp_remove
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - gf_malloc
    - gf_bs_align
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_ipmp_remove(GF_BitStream *bs, GF_IPMPRemove *ipmpRem,
      u32 gf_odf_size_command)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ipmpRem
    - outSize
    argTypes:
    - GF_IPMPRemove*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 537
      start: 531
    functionDepth: 0
    functionLinenumber: 531
    functionLinenumberEnd: 537
    functionName: gf_odf_size_ipmp_remove
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_ipmp_remove(GF_IPMPRemove *ipmpRem, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_ipmp_remove
      Src: /src/gpac/src/odf/odf_command.c:544,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_command.c:546,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_command.c:550,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:553,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - bs
    - ipmpRem
    argTypes:
    - GF_BitStream*
    - GF_IPMPRemove*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 538
    functionDepth: 1
    functionLinenumber: 538
    functionLinenumberEnd: 555
    functionName: gf_odf_write_ipmp_remove
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_bs_align
    - gf_odf_size_ipmp_remove
    - gf_bs_write_int
    - gf_odf_write_base_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_ipmp_remove(GF_BitStream *bs, GF_IPMPRemove *ipmpRem)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_command.c:559,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_command.c:561,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_command.c:563,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 568
      start: 557
    functionDepth: 1
    functionLinenumber: 557
    functionLinenumberEnd: 568
    functionName: gf_odf_new_ipmp_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_ODCom
    signature: GF_ODCom *gf_odf_new_ipmp_update()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_command.c:574,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_command.c:575,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_command.c:576,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_command.c:578,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_command.c:581,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_command.c:582,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - IPMPDUpdate
    argTypes:
    - GF_IPMPUpdate*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 570
    functionDepth: 1
    functionLinenumber: 570
    functionLinenumberEnd: 584
    functionName: gf_odf_del_ipmp_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_odf_delete_descriptor
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_ipmp_update(GF_IPMPUpdate *IPMPDUpdate)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_command.c:593,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_command.c:595,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - ipmpUp
    - desc
    argTypes:
    - GF_IPMPUpdate*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 586
    functionDepth: 1
    functionLinenumber: 586
    functionLinenumberEnd: 598
    functionName: AddToIPMPDUpdate
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_odf_delete_descriptor
    - gf_list_add
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AddToIPMPDUpdate(GF_IPMPUpdate *ipmpUp, GF_Descriptor *desc)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/odf_command.c:608,1
    - Dst: AddToIPMPDUpdate
      Src: /src/gpac/src/odf/odf_command.c:610,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_command.c:612,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:615,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - bs
    - ipmpUp
    - gf_odf_size_command
    argTypes:
    - GF_BitStream*
    - GF_IPMPUpdate*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 618
      start: 600
    functionDepth: 2
    functionLinenumber: 600
    functionLinenumberEnd: 618
    functionName: gf_odf_read_ipmp_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - AddToIPMPDUpdate
    - gf_odf_parse_descriptor
    - gf_odf_size_field_size
    - gf_bs_align
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_ipmp_update(GF_BitStream *bs, GF_IPMPUpdate *ipmpUp,
      u32 gf_odf_size_command)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_command.c:629,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_command.c:630,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_command.c:631,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ipmpUp
    - outSize
    argTypes:
    - GF_IPMPUpdate*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 621
    functionDepth: 1
    functionLinenumber: 621
    functionLinenumberEnd: 634
    functionName: gf_odf_size_ipmp_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_odf_size_field_size
    - gf_odf_size_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_ipmp_update(GF_IPMPUpdate *ipmpUp, u32 *outSize)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_ipmp_update
      Src: /src/gpac/src/odf/odf_command.c:642,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_command.c:644,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_command.c:648,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_command.c:649,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:653,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - bs
    - ipmpUp
    argTypes:
    - GF_BitStream*
    - GF_IPMPUpdate*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 655
      start: 635
    functionDepth: 2
    functionLinenumber: 635
    functionLinenumberEnd: 655
    functionName: gf_odf_write_ipmp_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_bs_align
    - gf_odf_write_descriptor
    - gf_odf_write_base_descriptor
    - gf_list_enum
    - gf_odf_size_ipmp_update
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_ipmp_update(GF_BitStream *bs, GF_IPMPUpdate *ipmpUp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/oci_codec.c:68,1
    - Dst: memset
      Src: /src/gpac/src/odf/oci_codec.c:70,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/oci_codec.c:72,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - EventID
    argTypes:
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 74
    functionName: gf_oci_event_new
    functionSourceFile: /src/gpac/src/odf/oci_codec.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_oci_event_new(u16 EventID)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/oci_codec.c:81,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/oci_codec.c:82,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/oci_codec.c:83,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/oci_codec.c:84,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/oci_codec.c:86,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/oci_codec.c:87,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - event
    argTypes:
    - OCIEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 88
    functionName: gf_oci_event_del
    functionSourceFile: /src/gpac/src/odf/oci_codec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_odf_delete_descriptor
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_oci_event_del(OCIEvent *event)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 6
    argNames:
    - event
    - Hours
    - Minutes
    - Seconds
    - HundredSeconds
    - IsAbsoluteTime
    argTypes:
    - OCIEvent*
    - u8
    - u8
    - u8
    - u8
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 102
    functionName: gf_oci_event_set_start_time
    functionSourceFile: /src/gpac/src/odf/oci_codec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_oci_event_set_start_time(OCIEvent *event, u8 Hours, u8
      Minutes, u8 Seconds, u8 HundredSeconds, u8 IsAbsoluteTime)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 5
    argNames:
    - event
    - Hours
    - Minutes
    - Seconds
    - HundredSeconds
    argTypes:
    - OCIEvent*
    - u8
    - u8
    - u8
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 115
    functionName: gf_oci_event_set_duration
    functionSourceFile: /src/gpac/src/odf/oci_codec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_oci_event_set_duration(OCIEvent *event, u8 Hours, u8 Minutes,
      u8 Seconds, u8 HundredSeconds)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - oci_desc
    argTypes:
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 122
    functionName: OCI_IsOCIDesc
    functionSourceFile: /src/gpac/src/odf/oci_codec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u8
    signature: u8 OCI_IsOCIDesc(GF_Descriptor *oci_desc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: OCI_IsOCIDesc
      Src: /src/gpac/src/odf/oci_codec.c:128,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/oci_codec.c:130,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - event
    - oci_desc
    argTypes:
    - OCIEvent*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 132
    functionName: gf_oci_event_add_desc
    functionSourceFile: /src/gpac/src/odf/oci_codec.c
    functionUses: 0
    functionsReached:
    - OCI_IsOCIDesc
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_oci_event_add_desc(OCIEvent *event, GF_Descriptor *oci_desc)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - event
    - ID
    argTypes:
    - OCIEvent*
    - u16*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 140
    functionName: gf_oci_event_get_id
    functionSourceFile: /src/gpac/src/odf/oci_codec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_oci_event_get_id(OCIEvent *event, u16 *ID)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 6
    argNames:
    - event
    - Hours
    - Minutes
    - Seconds
    - HundredSeconds
    - IsAbsoluteTime
    argTypes:
    - OCIEvent*
    - u8*
    - u8*
    - u8*
    - u8*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 154
    functionName: gf_oci_event_get_start_time
    functionSourceFile: /src/gpac/src/odf/oci_codec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_oci_event_get_start_time(OCIEvent *event, u8 *Hours, u8
      *Minutes, u8 *Seconds, u8 *HundredSeconds, u8 *IsAbsoluteTime)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 5
    argNames:
    - event
    - Hours
    - Minutes
    - Seconds
    - HundredSeconds
    argTypes:
    - OCIEvent*
    - u8*
    - u8*
    - u8*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 167
    functionName: gf_oci_event_get_duration
    functionSourceFile: /src/gpac/src/odf/oci_codec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_oci_event_get_duration(OCIEvent *event, u8 *Hours, u8
      *Minutes, u8 *Seconds, u8 *HundredSeconds)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/oci_codec.c:173,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - event
    argTypes:
    - OCIEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 174
    functionName: gf_oci_event_get_desc_count
    functionSourceFile: /src/gpac/src/odf/oci_codec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_oci_event_get_desc_count(OCIEvent *event)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/oci_codec.c:179,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/oci_codec.c:180,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 181
    functionName: GF_Descriptor *gf_oci_event_get_desc(OCIEvent *event, u32 DescIndex)
    functionSourceFile: /src/gpac/src/odf/oci_codec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_Descriptor *gf_oci_event_get_desc(OCIEvent *event, u32
      DescIndex)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/oci_codec.c:186,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/oci_codec.c:187,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - event
    - DescIndex
    argTypes:
    - OCIEvent*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 188
    functionName: gf_oci_event_rem_desc
    functionSourceFile: /src/gpac/src/odf/oci_codec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_oci_event_rem_desc(OCIEvent *event, u32 DescIndex)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/oci_codec.c:197,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/oci_codec.c:201,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - IsEncoder
    - Version
    argTypes:
    - u8
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 192
    functionDepth: 1
    functionLinenumber: 192
    functionLinenumberEnd: 203
    functionName: gf_oci_codec_new
    functionSourceFile: /src/gpac/src/odf/oci_codec.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_oci_codec_new(u8 IsEncoder, u8 Version)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/oci_codec.c:210,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/oci_codec.c:211,1
    - Dst: gf_oci_event_del
      Src: /src/gpac/src/odf/oci_codec.c:212,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/oci_codec.c:213,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/oci_codec.c:215,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/oci_codec.c:216,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - codec
    argTypes:
    - OCICodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 205
    functionDepth: 2
    functionLinenumber: 205
    functionLinenumberEnd: 217
    functionName: gf_oci_codec_del
    functionSourceFile: /src/gpac/src/odf/oci_codec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_oci_event_del
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_oci_codec_del(OCICodec *codec)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/oci_codec.c:224,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - codec
    - event
    argTypes:
    - OCICodec*
    - OCIEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 225
    functionName: gf_oci_codec_add_event
    functionSourceFile: /src/gpac/src/odf/oci_codec.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_oci_codec_add_event(OCICodec *codec, OCIEvent *event)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/oci_codec.c:244,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/oci_codec.c:246,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/oci_codec.c:247,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/oci_codec.c:249,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/oci_codec.c:250,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/oci_codec.c:251,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/oci_codec.c:253,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/oci_codec.c:254,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/oci_codec.c:255,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/oci_codec.c:256,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 32
    argCount: 2
    argNames:
    - bs
    - size
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 227
    functionDepth: 1
    functionLinenumber: 227
    functionLinenumberEnd: 261
    functionName: WriteSevenBitLength
    functionSourceFile: /src/gpac/src/odf/oci_codec.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteSevenBitLength(GF_BitStream *bs, u32 size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/oci_codec.c:278,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/oci_codec.c:281,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/oci_codec.c:287,1
    - Dst: WriteSevenBitLength
      Src: /src/gpac/src/odf/oci_codec.c:289,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/oci_codec.c:293,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/oci_codec.c:294,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/oci_codec.c:295,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/oci_codec.c:297,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/oci_codec.c:298,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/oci_codec.c:299,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/oci_codec.c:300,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/oci_codec.c:302,1
    - Dst: gf_oci_event_del
      Src: /src/gpac/src/odf/oci_codec.c:303,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/oci_codec.c:306,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/oci_codec.c:308,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/oci_codec.c:309,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/oci_codec.c:314,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/oci_codec.c:316,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/oci_codec.c:317,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/oci_codec.c:318,1
    - Dst: gf_oci_event_del
      Src: /src/gpac/src/odf/oci_codec.c:319,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 46
    argCount: 3
    argNames:
    - codec
    - outAU
    - au_length
    argTypes:
    - OCICodec*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 263
    functionDepth: 2
    functionLinenumber: 263
    functionLinenumberEnd: 322
    functionName: gf_oci_codec_encode
    functionSourceFile: /src/gpac/src/odf/oci_codec.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_align
    - gf_bs_del
    - gf_list_count
    - gf_bs_write_data
    - gf_oci_event_del
    - gf_odf_write_descriptor_list
    - gf_list_enum
    - gf_odf_size_descriptor_list
    - gf_list_rem
    - WriteSevenBitLength
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_oci_codec_encode(OCICodec *codec, u8 **outAU, u32 *au_length)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/oci_codec.c:337,1
    - Dst: gf_oci_event_new
      Src: /src/gpac/src/odf/oci_codec.c:342,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/oci_codec.c:350,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/oci_codec.c:355,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/oci_codec.c:362,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/oci_codec.c:363,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/oci_codec.c:364,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/oci_codec.c:365,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/oci_codec.c:370,1
    - Dst: OCI_IsOCIDesc
      Src: /src/gpac/src/odf/oci_codec.c:373,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/oci_codec.c:374,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/oci_codec.c:378,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/oci_codec.c:379,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/oci_codec.c:387,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/oci_codec.c:399,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/oci_codec.c:403,1
    - Dst: gf_oci_event_del
      Src: /src/gpac/src/odf/oci_codec.c:404,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/oci_codec.c:406,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/oci_codec.c:407,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/oci_codec.c:408,1
    - Dst: gf_oci_event_del
      Src: /src/gpac/src/odf/oci_codec.c:409,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 69
    argCount: 3
    argNames:
    - codec
    - au
    - au_length
    argTypes:
    - OCICodec*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 325
    functionDepth: 2
    functionLinenumber: 325
    functionLinenumberEnd: 412
    functionName: gf_oci_codec_decode
    functionSourceFile: /src/gpac/src/odf/oci_codec.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_list_get
    - gf_odf_size_field_size
    - gf_bs_new
    - gf_odf_parse_descriptor
    - gf_oci_event_new
    - gf_bs_del
    - gf_list_count
    - gf_oci_event_del
    - OCI_IsOCIDesc
    - gf_list_add
    - gf_bs_read_int
    - gf_odf_delete_descriptor
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_oci_codec_decode(OCICodec *codec, u8 *au, u32 au_length)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/oci_codec.c:420,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/oci_codec.c:421,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - codec
    argTypes:
    - OCICodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 415
    functionDepth: 1
    functionLinenumber: 415
    functionLinenumberEnd: 423
    functionName: gf_oci_codec_get_event
    functionSourceFile: /src/gpac/src/odf/oci_codec.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_oci_codec_get_event(OCICodec *codec)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:37,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/odf_code.c:38,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:40,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:42,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 4
    argNames:
    - bs
    - string
    - isUTF8
    - read
    argTypes:
    - GF_BitStream*
    - char**
    - Bool
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 45
    functionName: OD_ReadUTF8String
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_available
    - gf_bs_read_data
    - gf_malloc
    - gf_bs_read_int
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE OD_ReadUTF8String(GF_BitStream *bs, char **string, Bool isUTF8,
      u32 *read)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:49,1
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/src/odf/odf_code.c:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - string
    - isUTF8
    argTypes:
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionName: OD_SizeUTF8String
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - strlen
    - gf_utf8_wcslen
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE OD_SizeUTF8String(char *string, Bool isUTF8)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:57,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:58,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:59,1
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/src/odf/odf_code.c:61,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:62,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:63,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - bs
    - string
    - isUTF8
    argTypes:
    - GF_BitStream*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 65
    functionName: OD_WriteUTF8String
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_int
    - strlen
    - gf_utf8_wcslen
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE OD_WriteUTF8String(GF_BitStream *bs, char *string, Bool isUTF8)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:79,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:84,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:89,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:91,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 3
    argNames:
    - bs
    - string
    - readBytes
    argTypes:
    - GF_BitStream*
    - char**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 95
    functionName: gf_odf_read_url_string
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_data
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_url_string(GF_BitStream *bs, char **string, u32
      *readBytes)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:103,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:106,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:108,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:109,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:111,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:113,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - bs
    - string
    argTypes:
    - GF_BitStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 115
    functionName: gf_odf_write_url_string
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_int
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_url_string(GF_BitStream *bs, char *string)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - string
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 122
    functionName: gf_odf_size_url_string
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: u32
    signature: u32 gf_odf_size_url_string(char *string)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:126,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:128,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:129,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:130,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 134
    functionName: gf_odf_new_esd
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_esd()
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:141,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:144,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:148,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:152,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:156,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:160,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:164,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:168,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:170,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:172,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:174,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 46
    argCount: 1
    argNames:
    - esd
    argTypes:
    - GF_ESD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 176
    functionName: gf_odf_del_esd
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_delete_descriptor
    - gf_odf_delete_descriptor_list
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_esd(GF_ESD *esd)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:195,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:218,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:222,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:233,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 50
    argCount: 2
    argNames:
    - esd
    - desc
    argTypes:
    - GF_ESD*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 239
    functionName: AddDescriptorToESD
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 1
    functionsReached:
    - gf_list_add
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AddDescriptorToESD(GF_ESD *esd, GF_Descriptor *desc)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:250,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:251,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:252,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:253,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:254,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:258,1
    - Dst: gf_odf_read_url_string
      Src: /src/gpac/src/odf/odf_code.c:263,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:268,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/odf_code.c:274,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:279,1
    - Dst: AddDescriptorToESD
      Src: /src/gpac/src/odf/odf_code.c:284,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/odf/odf_code.c:286,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:289,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 49
    argCount: 3
    argNames:
    - bs
    - esd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_ESD*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 241
    functionDepth: 2
    functionLinenumber: 241
    functionLinenumberEnd: 298
    functionName: gf_odf_read_esd
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_field_size
    - gf_odf_desc_del
    - gf_odf_parse_descriptor
    - AddDescriptorToESD
    - gf_bs_read_int
    - gf_odf_read_url_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_esd(GF_BitStream *bs, GF_ESD *esd, u32 DescSize)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_url_string
      Src: /src/gpac/src/odf/odf_code.c:310,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:314,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:316,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:319,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:321,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:324,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:326,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:329,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:331,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:334,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:336,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:339,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:341,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:344,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:346,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:348,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 54
    argCount: 2
    argNames:
    - esd
    - outSize
    argTypes:
    - GF_ESD*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 300
    functionDepth: 1
    functionLinenumber: 300
    functionLinenumberEnd: 349
    functionName: gf_odf_size_esd
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_url_string
    - gf_odf_size_field_size
    - gf_odf_size_descriptor_list
    - gf_odf_size_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_esd(GF_ESD *esd, u32 *outSize)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:357,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:359,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:362,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:363,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:364,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:365,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:366,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:369,1
    - Dst: gf_odf_write_url_string
      Src: /src/gpac/src/odf/odf_code.c:372,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:378,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_code.c:381,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_code.c:385,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_code.c:389,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_code.c:393,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:397,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:399,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_code.c:402,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_code.c:406,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:409,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 62
    argCount: 2
    argNames:
    - bs
    - esd
    argTypes:
    - GF_BitStream*
    - GF_ESD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 351
    functionDepth: 2
    functionLinenumber: 351
    functionLinenumberEnd: 410
    functionName: gf_odf_write_esd
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_descriptor
    - gf_bs_write_int
    - gf_odf_write_descriptor
    - gf_odf_write_base_descriptor
    - gf_odf_write_descriptor_list
    - gf_odf_write_url_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_esd(GF_BitStream *bs, GF_ESD *esd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:414,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:416,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:418,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:419,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:420,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:422,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 425
      start: 412
    functionDepth: 1
    functionLinenumber: 412
    functionLinenumberEnd: 425
    functionName: gf_odf_new_iod
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_iod()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:431,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:432,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:434,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:436,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:438,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:440,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:441,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 1
    argNames:
    - iod
    argTypes:
    - GF_InitialObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 427
    functionDepth: 1
    functionLinenumber: 427
    functionLinenumberEnd: 443
    functionName: gf_odf_del_iod
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_delete_descriptor
    - gf_odf_delete_descriptor_list
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_iod(GF_InitialObjectDescriptor *iod)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:451,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:457,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/odf/odf_code.c:461,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:468,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:469,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 22
    argCount: 2
    argNames:
    - iod
    - desc
    argTypes:
    - GF_InitialObjectDescriptor*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 445
    functionDepth: 2
    functionLinenumber: 445
    functionLinenumberEnd: 471
    functionName: AddDescriptorToIOD
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 1
    functionsReached:
    - gf_list_add
    - gf_odf_desc_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AddDescriptorToIOD(GF_InitialObjectDescriptor *iod, GF_Descriptor
      *desc)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:480,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:481,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:482,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:483,1
    - Dst: gf_odf_read_url_string
      Src: /src/gpac/src/odf/odf_code.c:487,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:491,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:492,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:493,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:494,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:495,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/odf_code.c:501,1
    - Dst: AddDescriptorToIOD
      Src: /src/gpac/src/odf/odf_code.c:504,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:506,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:509,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 37
    argCount: 3
    argNames:
    - bs
    - iod
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_InitialObjectDescriptor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 473
    functionDepth: 3
    functionLinenumber: 473
    functionLinenumberEnd: 513
    functionName: gf_odf_read_iod
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_field_size
    - gf_odf_parse_descriptor
    - AddDescriptorToIOD
    - gf_bs_read_int
    - gf_odf_delete_descriptor
    - gf_odf_read_url_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_iod(GF_BitStream *bs, GF_InitialObjectDescriptor
      *iod, u32 DescSize)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_url_string
      Src: /src/gpac/src/odf/odf_code.c:523,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:526,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:528,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:530,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:534,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:538,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:540,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 2
    argNames:
    - iod
    - outSize
    argTypes:
    - GF_InitialObjectDescriptor*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 543
      start: 515
    functionDepth: 1
    functionLinenumber: 515
    functionLinenumberEnd: 543
    functionName: gf_odf_size_iod
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_url_string
    - gf_odf_size_descriptor
    - gf_odf_size_field_size
    - gf_odf_size_descriptor_list
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_iod(GF_InitialObjectDescriptor *iod, u32 *outSize)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:551,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:553,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:556,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:557,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:558,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:559,1
    - Dst: gf_odf_write_url_string
      Src: /src/gpac/src/odf/odf_code.c:562,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:564,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:565,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:566,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:567,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:568,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:569,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:571,1
    - Dst: gf_odf_write_descriptor_list_filter
      Src: /src/gpac/src/odf/odf_code.c:573,1
    - Dst: gf_odf_write_descriptor_list_filter
      Src: /src/gpac/src/odf/odf_code.c:575,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_code.c:578,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:582,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 40
    argCount: 2
    argNames:
    - bs
    - iod
    argTypes:
    - GF_BitStream*
    - GF_InitialObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 583
      start: 545
    functionDepth: 2
    functionLinenumber: 545
    functionLinenumberEnd: 583
    functionName: gf_odf_write_iod
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_descriptor
    - gf_odf_write_descriptor_list_filter
    - gf_bs_write_int
    - gf_odf_write_descriptor
    - gf_odf_write_base_descriptor
    - gf_odf_write_descriptor_list
    - gf_odf_write_url_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_iod(GF_BitStream *bs, GF_InitialObjectDescriptor
      *iod)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/odf_code.c:590,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:594,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:595,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:596,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:597,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 587
    functionDepth: 1
    functionLinenumber: 587
    functionLinenumberEnd: 601
    functionName: gf_odf_new_od
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_od()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:607,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:608,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:610,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:612,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:614,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:616,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - od
    argTypes:
    - GF_ObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 618
      start: 603
    functionDepth: 1
    functionLinenumber: 603
    functionLinenumberEnd: 618
    functionName: gf_odf_del_od
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_delete_descriptor_list
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_od(GF_ObjectDescriptor *od)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:627,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:633,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:640,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:645,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 2
    argNames:
    - od
    - desc
    argTypes:
    - GF_ObjectDescriptor*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 650
      start: 620
    functionDepth: 1
    functionLinenumber: 620
    functionLinenumberEnd: 650
    functionName: AddDescriptorToOD
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 1
    functionsReached:
    - gf_list_add
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AddDescriptorToOD(GF_ObjectDescriptor *od, GF_Descriptor *desc)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:659,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:660,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:661,1
    - Dst: gf_odf_read_url_string
      Src: /src/gpac/src/odf/odf_code.c:666,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/odf_code.c:673,1
    - Dst: AddDescriptorToOD
      Src: /src/gpac/src/odf/odf_code.c:676,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/odf/odf_code.c:678,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:681,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 3
    argNames:
    - bs
    - od
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_ObjectDescriptor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 685
      start: 652
    functionDepth: 2
    functionLinenumber: 652
    functionLinenumberEnd: 685
    functionName: gf_odf_read_od
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_field_size
    - gf_odf_desc_del
    - AddDescriptorToOD
    - gf_odf_parse_descriptor
    - gf_bs_read_int
    - gf_odf_read_url_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_od(GF_BitStream *bs, GF_ObjectDescriptor *od, u32
      DescSize)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_url_string
      Src: /src/gpac/src/odf/odf_code.c:694,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:696,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:698,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:700,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:703,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - od
    - outSize
    argTypes:
    - GF_ObjectDescriptor*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 704
      start: 687
    functionDepth: 1
    functionLinenumber: 687
    functionLinenumberEnd: 704
    functionName: gf_odf_size_od
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_url_string
    - gf_odf_size_descriptor_list
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_od(GF_ObjectDescriptor *od, u32 *outSize)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:712,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:714,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:717,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:718,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:719,1
    - Dst: gf_odf_write_url_string
      Src: /src/gpac/src/odf/odf_code.c:722,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:724,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:726,1
    - Dst: gf_odf_write_descriptor_list_filter
      Src: /src/gpac/src/odf/odf_code.c:728,1
    - Dst: gf_odf_write_descriptor_list_filter
      Src: /src/gpac/src/odf/odf_code.c:730,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:733,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 2
    argNames:
    - bs
    - od
    argTypes:
    - GF_BitStream*
    - GF_ObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 734
      start: 706
    functionDepth: 2
    functionLinenumber: 706
    functionLinenumberEnd: 734
    functionName: gf_odf_write_od
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_descriptor
    - gf_odf_write_descriptor_list_filter
    - gf_bs_write_int
    - gf_odf_write_base_descriptor
    - gf_odf_write_descriptor_list
    - gf_odf_write_url_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_od(GF_BitStream *bs, GF_ObjectDescriptor *od)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:738,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:740,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:742,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:743,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:744,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:745,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:746,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 756
      start: 736
    functionDepth: 1
    functionLinenumber: 736
    functionLinenumberEnd: 756
    functionName: gf_odf_new_isom_iod
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_isom_iod()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:762,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:763,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:765,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:767,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:769,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:771,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:773,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:774,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 1
    argNames:
    - iod
    argTypes:
    - GF_IsomInitialObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 776
      start: 758
    functionDepth: 1
    functionLinenumber: 758
    functionLinenumberEnd: 776
    functionName: gf_odf_del_isom_iod
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_delete_descriptor
    - gf_odf_delete_descriptor_list
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_isom_iod(GF_IsomInitialObjectDescriptor *iod)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:788,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:789,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:793,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:794,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:799,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/odf/odf_code.c:803,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:811,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:813,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 2
    argNames:
    - iod
    - desc
    argTypes:
    - GF_IsomInitialObjectDescriptor*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 815
      start: 778
    functionDepth: 2
    functionLinenumber: 778
    functionLinenumberEnd: 815
    functionName: AddDescriptorToIsomIOD
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_add
    - gf_odf_desc_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AddDescriptorToIsomIOD(GF_IsomInitialObjectDescriptor *iod,
      GF_Descriptor *desc)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:824,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:825,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:826,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:827,1
    - Dst: gf_odf_read_url_string
      Src: /src/gpac/src/odf/odf_code.c:832,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:836,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:837,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:838,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:839,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:840,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/odf_code.c:846,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/odf/odf_code.c:848,1
    - Dst: AddDescriptorToIsomIOD
      Src: /src/gpac/src/odf/odf_code.c:852,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/odf/odf_code.c:854,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:857,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 40
    argCount: 3
    argNames:
    - bs
    - iod
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_IsomInitialObjectDescriptor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 861
      start: 817
    functionDepth: 3
    functionLinenumber: 817
    functionLinenumberEnd: 861
    functionName: gf_odf_read_isom_iod
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_field_size
    - gf_odf_desc_del
    - gf_odf_parse_descriptor
    - AddDescriptorToIsomIOD
    - gf_bs_read_int
    - gf_odf_read_url_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_isom_iod(GF_BitStream *bs, GF_IsomInitialObjectDescriptor
      *iod, u32 DescSize)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_url_string
      Src: /src/gpac/src/odf/odf_code.c:870,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:873,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:875,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:877,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:879,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:884,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:886,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:888,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 2
    argNames:
    - iod
    - outSize
    argTypes:
    - GF_IsomInitialObjectDescriptor*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 889
      start: 863
    functionDepth: 1
    functionLinenumber: 863
    functionLinenumberEnd: 889
    functionName: gf_odf_size_isom_iod
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_url_string
    - gf_odf_size_descriptor
    - gf_odf_size_field_size
    - gf_odf_size_descriptor_list
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_isom_iod(GF_IsomInitialObjectDescriptor *iod, u32
      *outSize)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:897,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:899,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:902,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:903,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:904,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:905,1
    - Dst: gf_odf_write_url_string
      Src: /src/gpac/src/odf/odf_code.c:908,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:910,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:911,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:912,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:913,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:914,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:915,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:917,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:919,1
    - Dst: gf_odf_write_descriptor_list_filter
      Src: /src/gpac/src/odf/odf_code.c:921,1
    - Dst: gf_odf_write_descriptor_list_filter
      Src: /src/gpac/src/odf/odf_code.c:923,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_code.c:926,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:930,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 46
    argCount: 2
    argNames:
    - bs
    - iod
    argTypes:
    - GF_BitStream*
    - GF_IsomInitialObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 933
      start: 891
    functionDepth: 2
    functionLinenumber: 891
    functionLinenumberEnd: 933
    functionName: gf_odf_write_isom_iod
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_descriptor
    - gf_odf_write_descriptor_list_filter
    - gf_bs_write_int
    - gf_odf_write_descriptor
    - gf_odf_write_base_descriptor
    - gf_odf_write_descriptor_list
    - gf_odf_write_url_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_isom_iod(GF_BitStream *bs, GF_IsomInitialObjectDescriptor
      *iod)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:938,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:942,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:943,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:944,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:945,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:946,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 950
      start: 936
    functionDepth: 1
    functionLinenumber: 936
    functionLinenumberEnd: 950
    functionName: gf_odf_new_isom_od
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_isom_od()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:956,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:957,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:959,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:961,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:963,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:965,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:967,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 1
    argNames:
    - od
    argTypes:
    - GF_IsomObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 969
      start: 952
    functionDepth: 1
    functionLinenumber: 952
    functionLinenumberEnd: 969
    functionName: gf_odf_del_isom_od
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_delete_descriptor_list
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_isom_od(GF_IsomObjectDescriptor *od)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:978,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:984,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:993,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:994,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:998,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:999,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:1004,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 2
    argNames:
    - od
    - desc
    argTypes:
    - GF_IsomObjectDescriptor*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1009
      start: 971
    functionDepth: 1
    functionLinenumber: 971
    functionLinenumberEnd: 1009
    functionName: AddDescriptorToIsomOD
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_add
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AddDescriptorToIsomOD(GF_IsomObjectDescriptor *od, GF_Descriptor
      *desc)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1018,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1019,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1020,1
    - Dst: gf_odf_read_url_string
      Src: /src/gpac/src/odf/odf_code.c:1025,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1032,1
    - Dst: AddDescriptorToIsomOD
      Src: /src/gpac/src/odf/odf_code.c:1035,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1037,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:1040,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 3
    argNames:
    - bs
    - od
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_IsomObjectDescriptor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1044
      start: 1011
    functionDepth: 2
    functionLinenumber: 1011
    functionLinenumberEnd: 1044
    functionName: gf_odf_read_isom_od
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_field_size
    - gf_odf_parse_descriptor
    - AddDescriptorToIsomOD
    - gf_bs_read_int
    - gf_odf_delete_descriptor
    - gf_odf_read_url_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_isom_od(GF_BitStream *bs, GF_IsomObjectDescriptor
      *od, u32 DescSize)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_url_string
      Src: /src/gpac/src/odf/odf_code.c:1053,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1055,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1057,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1059,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1061,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1064,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - od
    - outSize
    argTypes:
    - GF_IsomObjectDescriptor*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1065
      start: 1046
    functionDepth: 1
    functionLinenumber: 1046
    functionLinenumberEnd: 1065
    functionName: gf_odf_size_isom_od
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_url_string
    - gf_odf_size_descriptor_list
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_isom_od(GF_IsomObjectDescriptor *od, u32 *outSize)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1073,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1075,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1078,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1079,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1080,1
    - Dst: gf_odf_write_url_string
      Src: /src/gpac/src/odf/odf_code.c:1083,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1085,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1087,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1089,1
    - Dst: gf_odf_write_descriptor_list_filter
      Src: /src/gpac/src/odf/odf_code.c:1091,1
    - Dst: gf_odf_write_descriptor_list_filter
      Src: /src/gpac/src/odf/odf_code.c:1093,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1096,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 2
    argNames:
    - bs
    - od
    argTypes:
    - GF_BitStream*
    - GF_IsomObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1099
      start: 1067
    functionDepth: 2
    functionLinenumber: 1067
    functionLinenumberEnd: 1099
    functionName: gf_odf_write_isom_od
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_descriptor
    - gf_odf_write_descriptor_list_filter
    - gf_bs_write_int
    - gf_odf_write_base_descriptor
    - gf_odf_write_descriptor_list
    - gf_odf_write_url_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_isom_od(GF_BitStream *bs, GF_IsomObjectDescriptor
      *od)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/odf_code.c:1106,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:1109,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1112
      start: 1103
    functionDepth: 1
    functionLinenumber: 1103
    functionLinenumberEnd: 1112
    functionName: gf_odf_new_dcd
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_dcd()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1119,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1123,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1126,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1128,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 1
    argNames:
    - dcd
    argTypes:
    - GF_DecoderConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1130
      start: 1114
    functionDepth: 1
    functionLinenumber: 1114
    functionLinenumberEnd: 1130
    functionName: gf_odf_del_dcd
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_delete_descriptor
    - gf_odf_delete_descriptor_list
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_dcd(GF_DecoderConfig *dcd)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1138,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1139,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1140,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1141,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1142,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1143,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1144,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1149,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1155,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:1162,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1164,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1172,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1177,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:1180,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 44
    argCount: 3
    argNames:
    - bs
    - dcd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_DecoderConfig*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1184
      start: 1132
    functionDepth: 1
    functionLinenumber: 1132
    functionLinenumberEnd: 1184
    functionName: gf_odf_read_dcd
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_field_size
    - gf_odf_parse_descriptor
    - gf_list_add
    - gf_bs_read_int
    - gf_odf_delete_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_dcd(GF_BitStream *bs, GF_DecoderConfig *dcd, u32
      DescSize)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_codecid_oti
      Src: /src/gpac/src/odf/odf_code.c:1197,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/odf_code.c:1200,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/odf/odf_code.c:1200,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/odf/odf_code.c:1200,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1210,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:1212,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1214,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 2
    argNames:
    - dcd
    - outSize
    argTypes:
    - GF_DecoderConfig*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1217
      start: 1188
    functionDepth: 1
    functionLinenumber: 1188
    functionLinenumberEnd: 1217
    functionName: gf_odf_size_dcd
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_odf_size_field_size
    - gf_odf_size_descriptor
    - GF_LOG
    - gf_codecid_oti
    - gf_codecid_name
    - gf_odf_size_descriptor_list
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_dcd(GF_DecoderConfig *dcd, u32 *outSize)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_codecid_oti
      Src: /src/gpac/src/odf/odf_code.c:1227,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/odf_code.c:1230,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/odf/odf_code.c:1230,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/odf/odf_code.c:1230,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1234,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1236,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1239,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1240,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1241,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1242,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1243,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1244,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1245,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1248,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1251,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 2
    argNames:
    - bs
    - dcd
    argTypes:
    - GF_BitStream*
    - GF_DecoderConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1253
      start: 1219
    functionDepth: 1
    functionLinenumber: 1219
    functionLinenumberEnd: 1253
    functionName: gf_odf_write_dcd
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_odf_size_descriptor
    - GF_LOG
    - gf_bs_write_int
    - gf_codecid_oti
    - gf_odf_write_descriptor
    - gf_odf_write_base_descriptor
    - gf_odf_write_descriptor_list
    - gf_codecid_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_dcd(GF_BitStream *bs, GF_DecoderConfig *dcd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1258,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1266
      start: 1256
    functionDepth: 0
    functionLinenumber: 1256
    functionLinenumberEnd: 1266
    functionName: gf_odf_new_default
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_default()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1272,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1273,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - dd
    argTypes:
    - GF_DefaultDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1275
      start: 1268
    functionDepth: 0
    functionLinenumber: 1268
    functionLinenumberEnd: 1275
    functionName: gf_odf_del_default
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_default(GF_DefaultDescriptor *dd)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1285,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:1287,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1292,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 3
    argNames:
    - bs
    - dd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_DefaultDescriptor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1298
      start: 1277
    functionDepth: 1
    functionLinenumber: 1277
    functionLinenumberEnd: 1298
    functionName: gf_odf_read_default
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_default(GF_BitStream *bs, GF_DefaultDescriptor *dd,
      u32 DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dd
    - outSize
    argTypes:
    - GF_DefaultDescriptor*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1305
      start: 1300
    functionDepth: 0
    functionLinenumber: 1300
    functionLinenumberEnd: 1305
    functionName: gf_odf_size_default
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_default(GF_DefaultDescriptor *dd, u32 *outSize)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1313,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1315,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:1319,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - bs
    - dd
    argTypes:
    - GF_BitStream*
    - GF_DefaultDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1322
      start: 1307
    functionDepth: 1
    functionLinenumber: 1307
    functionLinenumberEnd: 1322
    functionName: gf_odf_write_default
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_default(GF_BitStream *bs, GF_DefaultDescriptor
      *dd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1326,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1331
      start: 1324
    functionDepth: 0
    functionLinenumber: 1324
    functionLinenumberEnd: 1331
    functionName: gf_odf_new_esd_inc
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_esd_inc()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1336,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - esd_inc
    argTypes:
    - GF_ES_ID_Inc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1338
      start: 1333
    functionDepth: 0
    functionLinenumber: 1333
    functionLinenumberEnd: 1338
    functionName: gf_odf_del_esd_inc
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_esd_inc(GF_ES_ID_Inc *esd_inc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1344,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - bs
    - esd_inc
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_ES_ID_Inc*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1348
      start: 1339
    functionDepth: 1
    functionLinenumber: 1339
    functionLinenumberEnd: 1348
    functionName: gf_odf_read_esd_inc
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_esd_inc(GF_BitStream *bs, GF_ES_ID_Inc *esd_inc,
      u32 DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - esd_inc
    - outSize
    argTypes:
    - GF_ES_ID_Inc*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1354
      start: 1349
    functionDepth: 0
    functionLinenumber: 1349
    functionLinenumberEnd: 1354
    functionName: gf_odf_size_esd_inc
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_esd_inc(GF_ES_ID_Inc *esd_inc, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1361,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1363,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1365,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - esd_inc
    argTypes:
    - GF_BitStream*
    - GF_ES_ID_Inc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1367
      start: 1355
    functionDepth: 1
    functionLinenumber: 1355
    functionLinenumberEnd: 1367
    functionName: gf_odf_write_esd_inc
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_esd_inc(GF_BitStream *bs, GF_ES_ID_Inc *esd_inc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1371,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1376
      start: 1369
    functionDepth: 0
    functionLinenumber: 1369
    functionLinenumberEnd: 1376
    functionName: gf_odf_new_esd_ref
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_esd_ref()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1381,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - esd_ref
    argTypes:
    - GF_ES_ID_Ref*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1383
      start: 1378
    functionDepth: 0
    functionLinenumber: 1378
    functionLinenumberEnd: 1383
    functionName: gf_odf_del_esd_ref
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_esd_ref(GF_ES_ID_Ref *esd_ref)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1389,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - bs
    - esd_ref
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_ES_ID_Ref*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1393
      start: 1384
    functionDepth: 1
    functionLinenumber: 1384
    functionLinenumberEnd: 1393
    functionName: gf_odf_read_esd_ref
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_esd_ref(GF_BitStream *bs, GF_ES_ID_Ref *esd_ref,
      u32 DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - esd_ref
    - outSize
    argTypes:
    - GF_ES_ID_Ref*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1400
      start: 1395
    functionDepth: 0
    functionLinenumber: 1395
    functionLinenumberEnd: 1400
    functionName: gf_odf_size_esd_ref
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_esd_ref(GF_ES_ID_Ref *esd_ref, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1407,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1409,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1412,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - esd_ref
    argTypes:
    - GF_BitStream*
    - GF_ES_ID_Ref*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1414
      start: 1401
    functionDepth: 1
    functionLinenumber: 1401
    functionLinenumberEnd: 1414
    functionName: gf_odf_write_esd_ref
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_esd_ref(GF_BitStream *bs, GF_ES_ID_Ref *esd_ref)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1420,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:1423,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1426
      start: 1418
    functionDepth: 0
    functionLinenumber: 1418
    functionLinenumberEnd: 1426
    functionName: gf_odf_new_segment
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_segment()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1432,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1433,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - sd
    argTypes:
    - GF_Segment*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1435
      start: 1428
    functionDepth: 0
    functionLinenumber: 1428
    functionLinenumberEnd: 1435
    functionName: gf_odf_del_segment
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_segment(GF_Segment *sd)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/odf/odf_code.c:1442,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/odf/odf_code.c:1443,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1445,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1448,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:1450,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 3
    argNames:
    - bs
    - sd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_Segment*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1456
      start: 1437
    functionDepth: 1
    functionLinenumber: 1437
    functionLinenumberEnd: 1456
    functionName: gf_odf_read_segment
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_data
    - gf_bs_read_double
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_segment(GF_BitStream *bs, GF_Segment *sd, u32 DescSize)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:1462,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - sd
    - outSize
    argTypes:
    - GF_Segment*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1464
      start: 1458
    functionDepth: 0
    functionLinenumber: 1458
    functionLinenumberEnd: 1464
    functionName: gf_odf_size_segment
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_segment(GF_Segment *sd, u32 *outSize)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1471,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1473,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/odf/odf_code.c:1475,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/odf/odf_code.c:1476,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1478,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:1478,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:1479,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:1479,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1481,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - bs
    - sd
    argTypes:
    - GF_BitStream*
    - GF_Segment*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1484
      start: 1466
    functionDepth: 1
    functionLinenumber: 1466
    functionLinenumberEnd: 1484
    functionName: gf_odf_write_segment
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_descriptor
    - gf_bs_write_int
    - gf_bs_write_data
    - gf_odf_write_base_descriptor
    - strlen
    - gf_bs_write_double
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_segment(GF_BitStream *bs, GF_Segment *sd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/odf_code.c:1491,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1495
      start: 1488
    functionDepth: 1
    functionLinenumber: 1488
    functionLinenumberEnd: 1495
    functionName: gf_odf_new_lang
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_lang()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1500,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1501,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ld
    argTypes:
    - GF_Language*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1503
      start: 1497
    functionDepth: 0
    functionLinenumber: 1497
    functionLinenumberEnd: 1503
    functionName: gf_odf_del_lang
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_lang(GF_Language *ld)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1510,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - bs
    - ld
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_Language*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1514
      start: 1505
    functionDepth: 1
    functionLinenumber: 1505
    functionLinenumberEnd: 1514
    functionName: gf_odf_read_lang
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_lang(GF_BitStream *bs, GF_Language *ld, u32 DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ld
    - outSize
    argTypes:
    - GF_Language*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1521
      start: 1516
    functionDepth: 0
    functionLinenumber: 1516
    functionLinenumberEnd: 1521
    functionName: gf_odf_size_lang
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_lang(GF_Language *ld, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1529,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1531,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1533,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - ld
    argTypes:
    - GF_BitStream*
    - GF_Language*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1535
      start: 1523
    functionDepth: 1
    functionLinenumber: 1523
    functionLinenumberEnd: 1535
    functionName: gf_odf_write_lang
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_lang(GF_BitStream *bs, GF_Language *ld)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/odf_code.c:1542,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1546
      start: 1539
    functionDepth: 1
    functionLinenumber: 1539
    functionLinenumberEnd: 1546
    functionName: gf_odf_new_auxvid
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_auxvid()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1551,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ld
    argTypes:
    - GF_AuxVideoDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1553
      start: 1548
    functionDepth: 0
    functionLinenumber: 1548
    functionLinenumberEnd: 1553
    functionName: gf_odf_del_auxvid
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_auxvid(GF_AuxVideoDescriptor *ld)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1560,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1561,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1562,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1566,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1567,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1571,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1572,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1573,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1574,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1579,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 3
    argNames:
    - bs
    - ld
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_AuxVideoDescriptor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1583
      start: 1555
    functionDepth: 1
    functionLinenumber: 1555
    functionLinenumberEnd: 1583
    functionName: gf_odf_read_auxvid
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_auxvid(GF_BitStream *bs, GF_AuxVideoDescriptor *ld,
      u32 DescSize)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - ld
    - outSize
    argTypes:
    - GF_AuxVideoDescriptor*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1600
      start: 1585
    functionDepth: 0
    functionLinenumber: 1585
    functionLinenumberEnd: 1600
    functionName: gf_odf_size_auxvid
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_auxvid(GF_AuxVideoDescriptor *ld, u32 *outSize)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1607,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1609,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1612,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1613,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1614,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1617,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1618,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1621,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1622,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1623,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1624,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 2
    argNames:
    - bs
    - ld
    argTypes:
    - GF_BitStream*
    - GF_AuxVideoDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1628
      start: 1602
    functionDepth: 1
    functionLinenumber: 1602
    functionLinenumberEnd: 1628
    functionName: gf_odf_write_auxvid
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_auxvid(GF_BitStream *bs, GF_AuxVideoDescriptor
      *ld)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1634,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:1636,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1639
      start: 1632
    functionDepth: 0
    functionLinenumber: 1632
    functionLinenumberEnd: 1639
    functionName: gf_odf_new_muxinfo
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_muxinfo()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1644,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1645,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1646,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1647,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1648,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1649,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 1
    argNames:
    - mi
    argTypes:
    - GF_MuxInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1651
      start: 1641
    functionDepth: 0
    functionLinenumber: 1641
    functionLinenumberEnd: 1651
    functionName: gf_odf_del_muxinfo
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_muxinfo(GF_MuxInfo *mi)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - mi
    - outSize
    argTypes:
    - GF_MuxInfo*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1657
      start: 1653
    functionDepth: 0
    functionLinenumber: 1653
    functionLinenumberEnd: 1657
    functionName: gf_odf_size_muxinfo
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_muxinfo(GF_MuxInfo *mi, u32 *outSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - bs
    - mi
    argTypes:
    - GF_BitStream*
    - GF_MuxInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1661
      start: 1658
    functionDepth: 0
    functionLinenumber: 1658
    functionLinenumberEnd: 1661
    functionName: gf_odf_write_muxinfo
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_muxinfo(GF_BitStream *bs, GF_MuxInfo *mi)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1665,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:1667,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1670
      start: 1663
    functionDepth: 0
    functionLinenumber: 1663
    functionLinenumberEnd: 1670
    functionName: gf_odf_New_ElemMask
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_New_ElemMask()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1674,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1675,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - desc
    argTypes:
    - GF_ElementaryMask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1677
      start: 1672
    functionDepth: 0
    functionLinenumber: 1672
    functionLinenumberEnd: 1677
    functionName: gf_odf_del_ElemMask
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_ElemMask(GF_ElementaryMask *desc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1681,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:1683,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1686
      start: 1679
    functionDepth: 0
    functionLinenumber: 1679
    functionLinenumberEnd: 1686
    functionName: gf_odf_new_bifs_cfg
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_bifs_cfg()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:1691,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_code.c:1693,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1694,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1695,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_code.c:1697,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1699,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - desc
    argTypes:
    - GF_BIFSConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1701
      start: 1688
    functionDepth: 1
    functionLinenumber: 1688
    functionLinenumberEnd: 1701
    functionName: gf_odf_del_bifs_cfg
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_bifs_cfg(GF_BIFSConfig *desc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1705,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:1707,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1710
      start: 1703
    functionDepth: 0
    functionLinenumber: 1703
    functionLinenumberEnd: 1710
    functionName: gf_odf_new_laser_cfg
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_laser_cfg()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1714,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - desc
    argTypes:
    - GF_LASERConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1716
      start: 1712
    functionDepth: 0
    functionLinenumber: 1712
    functionLinenumberEnd: 1716
    functionName: gf_odf_del_laser_cfg
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_laser_cfg(GF_LASERConfig *desc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1720,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:1722,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1725
      start: 1718
    functionDepth: 0
    functionLinenumber: 1718
    functionLinenumberEnd: 1725
    functionName: gf_odf_new_ui_cfg
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_ui_cfg()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1729,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1730,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1731,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - desc
    argTypes:
    - GF_UIConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1733
      start: 1727
    functionDepth: 0
    functionLinenumber: 1727
    functionLinenumberEnd: 1733
    functionName: gf_odf_del_ui_cfg
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_ui_cfg(GF_UIConfig *desc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1739,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:1742,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1745
      start: 1737
    functionDepth: 0
    functionLinenumber: 1737
    functionLinenumberEnd: 1745
    functionName: gf_odf_new_mediatime
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_mediatime()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1749,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - mt
    argTypes:
    - GF_MediaTime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1751
      start: 1746
    functionDepth: 0
    functionLinenumber: 1746
    functionLinenumberEnd: 1751
    functionName: gf_odf_del_mediatime
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_mediatime(GF_MediaTime *mt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/odf/odf_code.c:1755,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - bs
    - mt
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_MediaTime*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1757
      start: 1752
    functionDepth: 1
    functionLinenumber: 1752
    functionLinenumberEnd: 1757
    functionName: gf_odf_read_mediatime
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_double
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_mediatime(GF_BitStream *bs, GF_MediaTime *mt, u32
      DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - mt
    - outSize
    argTypes:
    - GF_MediaTime*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1763
      start: 1758
    functionDepth: 0
    functionLinenumber: 1758
    functionLinenumberEnd: 1763
    functionName: gf_odf_size_mediatime
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_mediatime(GF_MediaTime *mt, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1769,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1771,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/odf/odf_code.c:1773,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - mt
    argTypes:
    - GF_BitStream*
    - GF_MediaTime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1775
      start: 1764
    functionDepth: 1
    functionLinenumber: 1764
    functionLinenumberEnd: 1775
    functionName: gf_odf_write_mediatime
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_double
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_mediatime(GF_BitStream *bs, GF_MediaTime *mt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1779,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1788
      start: 1777
    functionDepth: 0
    functionLinenumber: 1777
    functionLinenumberEnd: 1788
    functionName: gf_odf_new_cc
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_cc()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1793,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1794,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ccd
    argTypes:
    - GF_CCDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1796
      start: 1790
    functionDepth: 0
    functionLinenumber: 1790
    functionLinenumberEnd: 1796
    functionName: gf_odf_del_cc
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_cc(GF_CCDescriptor *ccd)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1803,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1804,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1809,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:1811,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - bs
    - ccd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_CCDescriptor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1816
      start: 1798
    functionDepth: 1
    functionLinenumber: 1798
    functionLinenumberEnd: 1816
    functionName: gf_odf_read_cc
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_data
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_cc(GF_BitStream *bs, GF_CCDescriptor *ccd, u32 DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ccd
    - outSize
    argTypes:
    - GF_CCDescriptor*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1823
      start: 1818
    functionDepth: 0
    functionLinenumber: 1818
    functionLinenumberEnd: 1823
    functionName: gf_odf_size_cc
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_cc(GF_CCDescriptor *ccd, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1831,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1833,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1835,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1836,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:1837,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - bs
    - ccd
    argTypes:
    - GF_BitStream*
    - GF_CCDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1839
      start: 1825
    functionDepth: 1
    functionLinenumber: 1825
    functionLinenumberEnd: 1839
    functionName: gf_odf_write_cc
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_int
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_cc(GF_BitStream *bs, GF_CCDescriptor *ccd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1843,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:1845,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1848
      start: 1841
    functionDepth: 0
    functionLinenumber: 1841
    functionLinenumberEnd: 1848
    functionName: gf_odf_new_cc_date
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_cc_date()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1854,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - cdd
    argTypes:
    - GF_CC_Date*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1856
      start: 1851
    functionDepth: 0
    functionLinenumber: 1851
    functionLinenumberEnd: 1856
    functionName: gf_odf_del_cc_date
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_cc_date(GF_CC_Date *cdd)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:1863,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - bs
    - cdd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_CC_Date*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1867
      start: 1858
    functionDepth: 1
    functionLinenumber: 1858
    functionLinenumberEnd: 1867
    functionName: gf_odf_read_cc_date
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_cc_date(GF_BitStream *bs, GF_CC_Date *cdd, u32 DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - cdd
    - outSize
    argTypes:
    - GF_CC_Date*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1874
      start: 1869
    functionDepth: 0
    functionLinenumber: 1869
    functionLinenumberEnd: 1874
    functionName: gf_odf_size_cc_date
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_cc_date(GF_CC_Date *cdd, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1882,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1884,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:1887,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - cdd
    argTypes:
    - GF_BitStream*
    - GF_CC_Date*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1889
      start: 1876
    functionDepth: 1
    functionLinenumber: 1876
    functionLinenumberEnd: 1889
    functionName: gf_odf_write_cc_date
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_cc_date(GF_BitStream *bs, GF_CC_Date *cdd)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1893,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:1896,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1898,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1903
      start: 1891
    functionDepth: 1
    functionLinenumber: 1891
    functionLinenumberEnd: 1903
    functionName: gf_odf_new_cc_name
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_cc_name()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_code.c:1912,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1913,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1914,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_code.c:1916,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1917,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - cnd
    argTypes:
    - GF_CC_Name*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1919
      start: 1905
    functionDepth: 1
    functionLinenumber: 1905
    functionLinenumberEnd: 1919
    functionName: gf_odf_del_cc_name
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_enum
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_cc_name(GF_CC_Name *cnd)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1927,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1930,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:1932,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1933,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1934,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1935,1
    - Dst: OD_ReadUTF8String
      Src: /src/gpac/src/odf/odf_code.c:1938,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1940,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:1944,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 3
    argNames:
    - bs
    - cnd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_CC_Name*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1949
      start: 1921
    functionDepth: 2
    functionLinenumber: 1921
    functionLinenumberEnd: 1949
    functionName: gf_odf_read_cc_name
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - OD_ReadUTF8String
    - gf_free
    - memset
    - gf_list_add
    - gf_bs_read_int
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_cc_name(GF_BitStream *bs, GF_CC_Name *cnd, u32 DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_code.c:1959,1
    - Dst: OD_SizeUTF8String
      Src: /src/gpac/src/odf/odf_code.c:1960,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - cnd
    - outSize
    argTypes:
    - GF_CC_Name*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1963
      start: 1951
    functionDepth: 2
    functionLinenumber: 1951
    functionLinenumberEnd: 1963
    functionName: gf_odf_size_cc_name
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - OD_SizeUTF8String
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_cc_name(GF_CC_Name *cnd, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1972,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1974,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1976,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:1976,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_code.c:1979,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1980,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1981,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1982,1
    - Dst: OD_WriteUTF8String
      Src: /src/gpac/src/odf/odf_code.c:1983,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - bs
    - cnd
    argTypes:
    - GF_BitStream*
    - GF_CC_Name*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1986
      start: 1965
    functionDepth: 2
    functionLinenumber: 1965
    functionLinenumberEnd: 1986
    functionName: gf_odf_write_cc_name
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_descriptor
    - gf_bs_write_int
    - gf_list_count
    - gf_odf_write_base_descriptor
    - OD_WriteUTF8String
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_cc_name(GF_BitStream *bs, GF_CC_Name *cnd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1991,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2003
      start: 1989
    functionDepth: 0
    functionLinenumber: 1989
    functionLinenumberEnd: 2003
    functionName: gf_odf_new_ci
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_ci()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2010,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2011,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - cid
    argTypes:
    - GF_CIDesc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2013
      start: 2006
    functionDepth: 0
    functionLinenumber: 2006
    functionLinenumberEnd: 2013
    functionName: gf_odf_del_ci
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_ci(GF_CIDesc *cid)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2021,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2024,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2025,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2026,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2027,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2031,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2035,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2037,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:2040,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 3
    argNames:
    - bs
    - cid
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_CIDesc*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2045
      start: 2016
    functionDepth: 1
    functionLinenumber: 2016
    functionLinenumberEnd: 2045
    functionName: gf_odf_read_ci
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_data
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_ci(GF_BitStream *bs, GF_CIDesc *cid, u32 DescSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:2055,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - cid
    - outSize
    argTypes:
    - GF_CIDesc*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2057
      start: 2047
    functionDepth: 0
    functionLinenumber: 2047
    functionLinenumberEnd: 2057
    functionName: gf_odf_size_ci
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_ci(GF_CIDesc *cid, u32 *outSize)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2065,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2067,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2070,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2071,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2072,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2073,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2074,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2077,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2081,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:2082,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - bs
    - cid
    argTypes:
    - GF_BitStream*
    - GF_CIDesc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2085
      start: 2059
    functionDepth: 1
    functionLinenumber: 2059
    functionLinenumberEnd: 2085
    functionName: gf_odf_write_ci
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_int
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_ci(GF_BitStream *bs, GF_CIDesc *cid)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2089,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:2092,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2094,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:2097,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2099,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2100,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2108
      start: 2087
    functionDepth: 1
    functionLinenumber: 2087
    functionLinenumberEnd: 2108
    functionName: gf_odf_new_exp_text
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_exp_text()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2114,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_code.c:2115,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2117,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2118,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_code.c:2120,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_code.c:2122,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2124,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_code.c:2125,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2127,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2128,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_code.c:2130,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_code.c:2132,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2134,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2135,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 1
    argNames:
    - etd
    argTypes:
    - GF_ExpandedTextual*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2137
      start: 2110
    functionDepth: 1
    functionLinenumber: 2110
    functionLinenumberEnd: 2137
    functionName: gf_odf_del_exp_text
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_exp_text(GF_ExpandedTextual *etd)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2146,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2147,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2148,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2149,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2155,1
    - Dst: OD_ReadUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2158,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2160,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:2163,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2168,1
    - Dst: OD_ReadUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2171,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:2173,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2177,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2182,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2189,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:2191,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 53
    argCount: 3
    argNames:
    - bs
    - etd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_ExpandedTextual*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2196
      start: 2139
    functionDepth: 2
    functionLinenumber: 2139
    functionLinenumberEnd: 2196
    functionName: gf_odf_read_exp_text
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - OD_ReadUTF8String
    - gf_bs_read_data
    - gf_list_add
    - gf_bs_read_int
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_exp_text(GF_BitStream *bs, GF_ExpandedTextual *etd,
      u32 DescSize)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2205,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2205,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2207,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_code.c:2209,1
    - Dst: OD_SizeUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2210,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_code.c:2211,1
    - Dst: OD_SizeUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2212,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:2217,1
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/src/odf/odf_code.c:2219,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 36
    argCount: 2
    argNames:
    - etd
    - outSize
    argTypes:
    - GF_ExpandedTextual*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2238
      start: 2199
    functionDepth: 2
    functionLinenumber: 2199
    functionLinenumberEnd: 2238
    functionName: gf_odf_size_exp_text
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_utf8_wcslen
    - gf_list_count
    - OD_SizeUTF8String
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_exp_text(GF_ExpandedTextual *etd, u32 *outSize)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2246,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2246,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2248,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2250,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2253,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2254,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2255,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2256,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2256,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2258,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_code.c:2260,1
    - Dst: OD_WriteUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2261,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_code.c:2262,1
    - Dst: OD_WriteUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2263,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:2267,1
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/src/odf/odf_code.c:2269,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2277,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2281,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:2282,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 40
    argCount: 2
    argNames:
    - bs
    - etd
    argTypes:
    - GF_BitStream*
    - GF_ExpandedTextual*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2284
      start: 2240
    functionDepth: 2
    functionLinenumber: 2240
    functionLinenumberEnd: 2284
    functionName: gf_odf_write_exp_text
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_odf_size_descriptor
    - gf_bs_write_int
    - gf_utf8_wcslen
    - gf_list_count
    - gf_bs_write_data
    - gf_odf_write_base_descriptor
    - OD_WriteUTF8String
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_exp_text(GF_BitStream *bs, GF_ExpandedTextual *etd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2288,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2299
      start: 2286
    functionDepth: 0
    functionLinenumber: 2286
    functionLinenumberEnd: 2299
    functionName: gf_odf_new_pl_ext
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_pl_ext()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2305,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - pld
    argTypes:
    - GF_PLExt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2307
      start: 2301
    functionDepth: 0
    functionLinenumber: 2301
    functionLinenumberEnd: 2307
    functionName: gf_odf_del_pl_ext
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_pl_ext(GF_PLExt *pld)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2314,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2315,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2316,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2317,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2318,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2319,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2320,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - bs
    - pld
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_PLExt*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2325
      start: 2309
    functionDepth: 1
    functionLinenumber: 2309
    functionLinenumberEnd: 2325
    functionName: gf_odf_read_pl_ext
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_pl_ext(GF_BitStream *bs, GF_PLExt *pld, u32 DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - pld
    - outSize
    argTypes:
    - GF_PLExt*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2333
      start: 2327
    functionDepth: 0
    functionLinenumber: 2327
    functionLinenumberEnd: 2333
    functionName: gf_odf_size_pl_ext
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_pl_ext(GF_PLExt *pld, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2341,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2343,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2346,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2347,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2348,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2349,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2350,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2351,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2352,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - bs
    - pld
    argTypes:
    - GF_BitStream*
    - GF_PLExt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2354
      start: 2335
    functionDepth: 1
    functionLinenumber: 2335
    functionLinenumberEnd: 2354
    functionName: gf_odf_write_pl_ext
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_pl_ext(GF_BitStream *bs, GF_PLExt *pld)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2358,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2363
      start: 2356
    functionDepth: 0
    functionLinenumber: 2356
    functionLinenumberEnd: 2363
    functionName: gf_odf_new_ipi_ptr
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_ipi_ptr()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2368,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ipid
    argTypes:
    - GF_IPIPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2370
      start: 2365
    functionDepth: 0
    functionLinenumber: 2365
    functionLinenumberEnd: 2370
    functionName: gf_odf_del_ipi_ptr
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_ipi_ptr(GF_IPIPtr *ipid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2377,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - bs
    - ipid
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_IPIPtr*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2381
      start: 2372
    functionDepth: 1
    functionLinenumber: 2372
    functionLinenumberEnd: 2381
    functionName: gf_odf_read_ipi_ptr
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_ipi_ptr(GF_BitStream *bs, GF_IPIPtr *ipid, u32 DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ipid
    - outSize
    argTypes:
    - GF_IPIPtr*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2388
      start: 2383
    functionDepth: 0
    functionLinenumber: 2383
    functionLinenumberEnd: 2388
    functionName: gf_odf_size_ipi_ptr
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_ipi_ptr(GF_IPIPtr *ipid, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2395,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2397,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2399,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - ipid
    argTypes:
    - GF_BitStream*
    - GF_IPIPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2401
      start: 2390
    functionDepth: 1
    functionLinenumber: 2390
    functionLinenumberEnd: 2401
    functionName: gf_odf_write_ipi_ptr
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_ipi_ptr(GF_BitStream *bs, GF_IPIPtr *ipid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/odf_code.c:2406,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:2409,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2412
      start: 2403
    functionDepth: 1
    functionLinenumber: 2403
    functionLinenumberEnd: 2412
    functionName: gf_odf_new_ipmp
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_ipmp()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2416,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2419,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_code.c:2420,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_code.c:2421,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/odf/odf_code.c:2422,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_code.c:2425,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2426,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ipmp
    argTypes:
    - GF_IPMP_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2428
      start: 2413
    functionDepth: 1
    functionLinenumber: 2413
    functionLinenumberEnd: 2428
    functionName: gf_odf_del_ipmp
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_ipmpx_data_del
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_ipmp(GF_IPMP_Descriptor *ipmp)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2436,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2437,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2445,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/odf_code.c:2446,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:2447,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2448,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2451,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/odf_code.c:2458,1
    - Dst: gf_ipmpx_data_parse
      Src: /src/gpac/src/odf/odf_code.c:2459,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:2461,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/odf_code.c:2462,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2467,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:2469,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2478,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:2480,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 48
    argCount: 3
    argNames:
    - bs
    - ipmp
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_IPMP_Descriptor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2485
      start: 2430
    functionDepth: 1
    functionLinenumber: 2430
    functionLinenumberEnd: 2485
    functionName: gf_odf_read_ipmp
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_ipmpx_data_parse
    - gf_bs_get_position
    - gf_list_add
    - gf_bs_read_int
    - gf_bs_available
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_ipmp(GF_BitStream *bs, GF_IPMP_Descriptor *ipmp,
      u32 DescSize)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_code.c:2500,1
    - Dst: gf_ipmpx_data_full_size
      Src: /src/gpac/src/odf/odf_code.c:2501,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:2507,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - ipmp
    - outSize
    argTypes:
    - GF_IPMP_Descriptor*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2512
      start: 2487
    functionDepth: 1
    functionLinenumber: 2487
    functionLinenumberEnd: 2512
    functionName: gf_odf_size_ipmp
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_ipmpx_data_full_size
    - gf_list_enum
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_ipmp(GF_IPMP_Descriptor *ipmp, u32 *outSize)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2520,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2522,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2524,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2525,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2529,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:2530,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2531,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2532,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_code.c:2535,1
    - Dst: gf_ipmpx_data_write
      Src: /src/gpac/src/odf/odf_code.c:2536,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:2541,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:2541,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:2543,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 2
    argNames:
    - bs
    - ipmp
    argTypes:
    - GF_BitStream*
    - GF_IPMP_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2546
      start: 2514
    functionDepth: 1
    functionLinenumber: 2514
    functionLinenumberEnd: 2546
    functionName: gf_odf_write_ipmp
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_descriptor
    - gf_bs_write_int
    - gf_bs_write_data
    - gf_ipmpx_data_write
    - gf_odf_write_base_descriptor
    - gf_list_enum
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_ipmp(GF_BitStream *bs, GF_IPMP_Descriptor *ipmp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/odf_code.c:2551,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2555
      start: 2548
    functionDepth: 1
    functionLinenumber: 2548
    functionLinenumberEnd: 2555
    functionName: gf_odf_new_ipmp_ptr
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_ipmp_ptr()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2559,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ipmpd
    argTypes:
    - GF_IPMPPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2561
      start: 2556
    functionDepth: 0
    functionLinenumber: 2556
    functionLinenumberEnd: 2561
    functionName: gf_odf_del_ipmp_ptr
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_ipmp_ptr(GF_IPMPPtr *ipmpd)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2567,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2570,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2571,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - bs
    - ipmpd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_IPMPPtr*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2576
      start: 2563
    functionDepth: 1
    functionLinenumber: 2563
    functionLinenumberEnd: 2576
    functionName: gf_odf_read_ipmp_ptr
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_ipmp_ptr(GF_BitStream *bs, GF_IPMPPtr *ipmpd, u32
      DescSize)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ipmpd
    - outSize
    argTypes:
    - GF_IPMPPtr*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2583
      start: 2577
    functionDepth: 0
    functionLinenumber: 2577
    functionLinenumberEnd: 2583
    functionName: gf_odf_size_ipmp_ptr
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_ipmp_ptr(GF_IPMPPtr *ipmpd, u32 *outSize)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2590,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2592,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2594,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2596,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2597,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - bs
    - ipmpd
    argTypes:
    - GF_BitStream*
    - GF_IPMPPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2600
      start: 2584
    functionDepth: 1
    functionLinenumber: 2584
    functionLinenumberEnd: 2600
    functionName: gf_odf_write_ipmp_ptr
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_ipmp_ptr(GF_BitStream *bs, GF_IPMPPtr *ipmpd)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2604,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:2607,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2609,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2616
      start: 2602
    functionDepth: 1
    functionLinenumber: 2602
    functionLinenumberEnd: 2616
    functionName: gf_odf_new_kw
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_kw()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2622,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_code.c:2623,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2625,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_code.c:2627,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2628,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_code.c:2631,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2632,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - kwd
    argTypes:
    - GF_KeyWord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2634
      start: 2618
    functionDepth: 1
    functionLinenumber: 2618
    functionLinenumberEnd: 2634
    functionName: gf_odf_del_kw
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_kw(GF_KeyWord *kwd)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2642,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2643,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2644,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2645,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2649,1
    - Dst: OD_ReadUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2651,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2653,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2654,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2659,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2660,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:2663,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2665,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 3
    argNames:
    - bs
    - kwd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_KeyWord*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2671
      start: 2636
    functionDepth: 2
    functionLinenumber: 2636
    functionLinenumberEnd: 2671
    functionName: gf_odf_read_kw
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - OD_ReadUTF8String
    - gf_list_add
    - gf_bs_read_int
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_kw(GF_BitStream *bs, GF_KeyWord *kwd, u32 DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_code.c:2682,1
    - Dst: OD_SizeUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2683,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - kwd
    - outSize
    argTypes:
    - GF_KeyWord*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2686
      start: 2674
    functionDepth: 2
    functionLinenumber: 2674
    functionLinenumberEnd: 2686
    functionName: gf_odf_size_kw
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - OD_SizeUTF8String
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_kw(GF_KeyWord *kwd, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2694,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2696,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2699,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2700,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2701,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2702,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2702,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_code.c:2705,1
    - Dst: OD_WriteUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2706,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - bs
    - kwd
    argTypes:
    - GF_BitStream*
    - GF_KeyWord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2709
      start: 2687
    functionDepth: 2
    functionLinenumber: 2687
    functionLinenumberEnd: 2709
    functionName: gf_odf_write_kw
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_descriptor
    - gf_bs_write_int
    - gf_list_count
    - gf_odf_write_base_descriptor
    - OD_WriteUTF8String
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_kw(GF_BitStream *bs, GF_KeyWord *kwd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2713,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:2715,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2718
      start: 2711
    functionDepth: 0
    functionLinenumber: 2711
    functionLinenumberEnd: 2718
    functionName: gf_odf_new_oci_date
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_oci_date()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2723,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ocd
    argTypes:
    - GF_OCI_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2725
      start: 2720
    functionDepth: 0
    functionLinenumber: 2720
    functionLinenumberEnd: 2725
    functionName: gf_odf_del_oci_date
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_oci_date(GF_OCI_Data *ocd)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:2732,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - bs
    - ocd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_OCI_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2736
      start: 2727
    functionDepth: 1
    functionLinenumber: 2727
    functionLinenumberEnd: 2736
    functionName: gf_odf_read_oci_date
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_oci_date(GF_BitStream *bs, GF_OCI_Data *ocd, u32
      DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ocd
    - outSize
    argTypes:
    - GF_OCI_Data*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2743
      start: 2738
    functionDepth: 0
    functionLinenumber: 2738
    functionLinenumberEnd: 2743
    functionName: gf_odf_size_oci_date
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_oci_date(GF_OCI_Data *ocd, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2751,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2753,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:2755,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - ocd
    argTypes:
    - GF_BitStream*
    - GF_OCI_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2757
      start: 2745
    functionDepth: 1
    functionLinenumber: 2745
    functionLinenumberEnd: 2757
    functionName: gf_odf_write_oci_date
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_oci_date(GF_BitStream *bs, GF_OCI_Data *ocd)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2761,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:2764,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2766,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2771
      start: 2759
    functionDepth: 1
    functionLinenumber: 2759
    functionLinenumberEnd: 2771
    functionName: gf_odf_new_oci_name
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_oci_name()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_code.c:2779,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2780,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2781,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_code.c:2783,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2784,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ocn
    argTypes:
    - GF_OCICreators*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2786
      start: 2772
    functionDepth: 1
    functionLinenumber: 2772
    functionLinenumberEnd: 2786
    functionName: gf_odf_del_oci_name
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_enum
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_oci_name(GF_OCICreators *ocn)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2795,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2798,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2800,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2801,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2802,1
    - Dst: OD_ReadUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2804,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2806,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:2810,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 3
    argNames:
    - bs
    - ocn
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_OCICreators*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2815
      start: 2788
    functionDepth: 2
    functionLinenumber: 2788
    functionLinenumberEnd: 2815
    functionName: gf_odf_read_oci_name
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - OD_ReadUTF8String
    - gf_list_add
    - gf_bs_read_int
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_oci_name(GF_BitStream *bs, GF_OCICreators *ocn,
      u32 DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_code.c:2825,1
    - Dst: OD_SizeUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2826,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ocn
    - outSize
    argTypes:
    - GF_OCICreators*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2829
      start: 2817
    functionDepth: 2
    functionLinenumber: 2817
    functionLinenumberEnd: 2829
    functionName: gf_odf_size_oci_name
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - OD_SizeUTF8String
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_oci_name(GF_OCICreators *ocn, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2839,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2841,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2843,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2843,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_code.c:2846,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2847,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2848,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2849,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2850,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:2850,1
    - Dst: OD_WriteUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2851,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - bs
    - ocn
    argTypes:
    - GF_BitStream*
    - GF_OCICreators*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2854
      start: 2831
    functionDepth: 2
    functionLinenumber: 2831
    functionLinenumberEnd: 2854
    functionName: gf_odf_write_oci_name
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_descriptor
    - gf_bs_write_int
    - gf_list_count
    - gf_odf_write_base_descriptor
    - OD_WriteUTF8String
    - gf_list_enum
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_oci_name(GF_BitStream *bs, GF_OCICreators *ocn)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2859,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2864
      start: 2857
    functionDepth: 0
    functionLinenumber: 2857
    functionLinenumberEnd: 2864
    functionName: gf_odf_new_pl_idx
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_pl_idx()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2869,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - plid
    argTypes:
    - GF_PL_IDX*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2871
      start: 2866
    functionDepth: 0
    functionLinenumber: 2866
    functionLinenumberEnd: 2871
    functionName: gf_odf_del_pl_idx
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_pl_idx(GF_PL_IDX *plid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2878,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - bs
    - plid
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_PL_IDX*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2882
      start: 2873
    functionDepth: 1
    functionLinenumber: 2873
    functionLinenumberEnd: 2882
    functionName: gf_odf_read_pl_idx
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_pl_idx(GF_BitStream *bs, GF_PL_IDX *plid, u32 DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - plid
    - outSize
    argTypes:
    - GF_PL_IDX*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2888
      start: 2883
    functionDepth: 0
    functionLinenumber: 2883
    functionLinenumberEnd: 2888
    functionName: gf_odf_size_pl_idx
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_pl_idx(GF_PL_IDX *plid, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2894,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2896,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2898,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - plid
    argTypes:
    - GF_BitStream*
    - GF_PL_IDX*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2900
      start: 2889
    functionDepth: 1
    functionLinenumber: 2889
    functionLinenumberEnd: 2900
    functionName: gf_odf_write_pl_idx
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_pl_idx(GF_BitStream *bs, GF_PL_IDX *plid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2905,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2914
      start: 2903
    functionDepth: 0
    functionLinenumber: 2903
    functionLinenumberEnd: 2914
    functionName: gf_odf_new_rating
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_rating()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2920,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2921,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - rd
    argTypes:
    - GF_Rating*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2923
      start: 2916
    functionDepth: 0
    functionLinenumber: 2916
    functionLinenumberEnd: 2923
    functionName: gf_odf_del_rating
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_rating(GF_Rating *rd)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2930,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2931,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2936,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:2938,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - bs
    - rd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_Rating*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2942
      start: 2925
    functionDepth: 1
    functionLinenumber: 2925
    functionLinenumberEnd: 2942
    functionName: gf_odf_read_rating
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_data
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_rating(GF_BitStream *bs, GF_Rating *rd, u32 DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - rd
    - outSize
    argTypes:
    - GF_Rating*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2950
      start: 2944
    functionDepth: 0
    functionLinenumber: 2944
    functionLinenumberEnd: 2950
    functionName: gf_odf_size_rating
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_rating(GF_Rating *rd, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2957,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2959,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2961,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2962,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:2963,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - bs
    - rd
    argTypes:
    - GF_BitStream*
    - GF_Rating*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2965
      start: 2952
    functionDepth: 1
    functionLinenumber: 2952
    functionLinenumberEnd: 2965
    functionName: gf_odf_write_rating
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_int
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_rating(GF_BitStream *bs, GF_Rating *rd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2970,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2977
      start: 2968
    functionDepth: 0
    functionLinenumber: 2968
    functionLinenumberEnd: 2977
    functionName: gf_odf_new_reg
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_reg()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2983,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2984,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - reg
    argTypes:
    - GF_Registration*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2986
      start: 2979
    functionDepth: 0
    functionLinenumber: 2979
    functionLinenumberEnd: 2986
    functionName: gf_odf_del_reg
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_reg(GF_Registration *reg)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2993,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2996,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:2998,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - bs
    - reg
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_Registration*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3002
      start: 2988
    functionDepth: 1
    functionLinenumber: 2988
    functionLinenumberEnd: 3002
    functionName: gf_odf_read_reg
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_data
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_reg(GF_BitStream *bs, GF_Registration *reg, u32
      DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - reg
    - outSize
    argTypes:
    - GF_Registration*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3011
      start: 3005
    functionDepth: 0
    functionLinenumber: 3005
    functionLinenumberEnd: 3011
    functionName: gf_odf_size_reg
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_reg(GF_Registration *reg, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3019,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3021,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:3024,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:3025,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - bs
    - reg
    argTypes:
    - GF_BitStream*
    - GF_Registration*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3027
      start: 3013
    functionDepth: 1
    functionLinenumber: 3013
    functionLinenumberEnd: 3027
    functionName: gf_odf_write_reg
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_int
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_reg(GF_BitStream *bs, GF_Registration *reg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:3031,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3040
      start: 3029
    functionDepth: 0
    functionLinenumber: 3029
    functionLinenumberEnd: 3040
    functionName: gf_odf_new_short_text
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_short_text()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3046,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3047,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3048,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - std
    argTypes:
    - GF_ShortTextual*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3050
      start: 3042
    functionDepth: 0
    functionLinenumber: 3042
    functionLinenumberEnd: 3050
    functionName: gf_odf_del_short_text
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_short_text(GF_ShortTextual *std)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:3058,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:3059,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:3060,1
    - Dst: OD_ReadUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3063,1
    - Dst: OD_ReadUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3066,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - bs
    - std
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_ShortTextual*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3071
      start: 3052
    functionDepth: 2
    functionLinenumber: 3052
    functionLinenumberEnd: 3071
    functionName: gf_odf_read_short_text
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - OD_ReadUTF8String
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_short_text(GF_BitStream *bs, GF_ShortTextual *std,
      u32 DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: OD_SizeUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3077,1
    - Dst: OD_SizeUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3077,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - std
    - outSize
    argTypes:
    - GF_ShortTextual*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3079
      start: 3073
    functionDepth: 2
    functionLinenumber: 3073
    functionLinenumberEnd: 3079
    functionName: gf_odf_size_short_text
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - OD_SizeUTF8String
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_short_text(GF_ShortTextual *std, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3087,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3089,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:3091,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:3092,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:3093,1
    - Dst: OD_WriteUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3094,1
    - Dst: OD_WriteUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3095,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - bs
    - std
    argTypes:
    - GF_BitStream*
    - GF_ShortTextual*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3097
      start: 3081
    functionDepth: 2
    functionLinenumber: 3081
    functionLinenumberEnd: 3097
    functionName: gf_odf_write_short_text
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    - OD_WriteUTF8String
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_short_text(GF_BitStream *bs, GF_ShortTextual *std)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:3101,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:3104,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3106,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3112
      start: 3099
    functionDepth: 1
    functionLinenumber: 3099
    functionLinenumberEnd: 3112
    functionName: gf_odf_new_smpte_camera
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_smpte_camera()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_code.c:3121,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3122,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_code.c:3124,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3125,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - cpd
    argTypes:
    - GF_SMPTECamera*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3127
      start: 3114
    functionDepth: 1
    functionLinenumber: 3114
    functionLinenumberEnd: 3127
    functionName: gf_odf_del_smpte_camera
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_enum
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_smpte_camera(GF_SMPTECamera *cpd)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:3134,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:3135,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:3139,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:3141,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:3142,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:3144,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - bs
    - cpd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_SMPTECamera*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3149
      start: 3128
    functionDepth: 1
    functionLinenumber: 3128
    functionLinenumberEnd: 3149
    functionName: gf_odf_read_smpte_camera
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_list_add
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_smpte_camera(GF_BitStream *bs, GF_SMPTECamera *cpd,
      u32 DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:3154,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - cpd
    - outSize
    argTypes:
    - GF_SMPTECamera*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3156
      start: 3151
    functionDepth: 1
    functionLinenumber: 3151
    functionLinenumberEnd: 3156
    functionName: gf_odf_size_smpte_camera
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_smpte_camera(GF_SMPTECamera *cpd, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3165,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3167,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:3169,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:3170,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:3170,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_code.c:3173,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:3174,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:3175,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - bs
    - cpd
    argTypes:
    - GF_BitStream*
    - GF_SMPTECamera*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3178
      start: 3158
    functionDepth: 1
    functionLinenumber: 3158
    functionLinenumberEnd: 3178
    functionName: gf_odf_write_smpte_camera
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_descriptor
    - gf_bs_write_int
    - gf_list_count
    - gf_odf_write_base_descriptor
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_smpte_camera(GF_BitStream *bs, GF_SMPTECamera *cpd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:3182,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3189
      start: 3180
    functionDepth: 0
    functionLinenumber: 3180
    functionLinenumberEnd: 3189
    functionName: gf_odf_new_sup_cid
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_sup_cid()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3195,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3196,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3197,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - scid
    argTypes:
    - GF_SCIDesc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3199
      start: 3191
    functionDepth: 0
    functionLinenumber: 3191
    functionLinenumberEnd: 3199
    functionName: gf_odf_del_sup_cid
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_sup_cid(GF_SCIDesc *scid)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:3207,1
    - Dst: OD_ReadUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3209,1
    - Dst: OD_ReadUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3212,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - bs
    - scid
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_SCIDesc*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3217
      start: 3201
    functionDepth: 2
    functionLinenumber: 3201
    functionLinenumberEnd: 3217
    functionName: gf_odf_read_sup_cid
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - OD_ReadUTF8String
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_sup_cid(GF_BitStream *bs, GF_SCIDesc *scid, u32
      DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: OD_SizeUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3223,1
    - Dst: OD_SizeUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3223,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - scid
    - outSize
    argTypes:
    - GF_SCIDesc*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3225
      start: 3220
    functionDepth: 2
    functionLinenumber: 3220
    functionLinenumberEnd: 3225
    functionName: gf_odf_size_sup_cid
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - OD_SizeUTF8String
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_sup_cid(GF_SCIDesc *scid, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3231,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3233,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:3235,1
    - Dst: OD_WriteUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3236,1
    - Dst: OD_WriteUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3237,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - bs
    - scid
    argTypes:
    - GF_BitStream*
    - GF_SCIDesc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3239
      start: 3226
    functionDepth: 2
    functionLinenumber: 3226
    functionLinenumberEnd: 3239
    functionName: gf_odf_write_sup_cid
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    - OD_WriteUTF8String
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_sup_cid(GF_BitStream *bs, GF_SCIDesc *scid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:3245,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:3247,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3250
      start: 3243
    functionDepth: 1
    functionLinenumber: 3243
    functionLinenumberEnd: 3250
    functionName: gf_odf_new_ipmp_tool_list
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_ipmp_tool_list()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:3256,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_code.c:3257,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_code.c:3258,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3259,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_code.c:3261,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3262,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ipmptl
    argTypes:
    - GF_IPMP_ToolList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3264
      start: 3252
    functionDepth: 1
    functionLinenumber: 3252
    functionLinenumberEnd: 3264
    functionName: gf_odf_del_ipmp_tool_list
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_odf_delete_descriptor
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_ipmp_tool_list(GF_IPMP_ToolList *ipmptl)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3275,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:3278,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:3280,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - bs
    - ipmptl
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_IPMP_ToolList*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3284
      start: 3266
    functionDepth: 1
    functionLinenumber: 3266
    functionLinenumberEnd: 3284
    functionName: gf_odf_read_ipmp_tool_list
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_parse_descriptor
    - gf_list_add
    - gf_odf_size_field_size
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_ipmp_tool_list(GF_BitStream *bs, GF_IPMP_ToolList
      *ipmptl, u32 DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:3291,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ipmptl
    - outSize
    argTypes:
    - GF_IPMP_ToolList*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3292
      start: 3287
    functionDepth: 1
    functionLinenumber: 3287
    functionLinenumberEnd: 3292
    functionName: gf_odf_size_ipmp_tool_list
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_descriptor_list
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_ipmp_tool_list(GF_IPMP_ToolList *ipmptl, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3299,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3301,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:3303,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - bs
    - ipmptl
    argTypes:
    - GF_BitStream*
    - GF_IPMP_ToolList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3304
      start: 3294
    functionDepth: 1
    functionLinenumber: 3294
    functionLinenumberEnd: 3304
    functionName: gf_odf_write_ipmp_tool_list
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_write_descriptor_list
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_ipmp_tool_list(GF_BitStream *bs, GF_IPMP_ToolList
      *ipmptl)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:3308,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:3310,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3313
      start: 3306
    functionDepth: 0
    functionLinenumber: 3306
    functionLinenumberEnd: 3313
    functionName: gf_odf_new_ipmp_tool
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_ipmp_tool()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3318,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3319,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ipmpt
    argTypes:
    - GF_IPMP_Tool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3321
      start: 3315
    functionDepth: 0
    functionLinenumber: 3315
    functionLinenumberEnd: 3321
    functionName: gf_odf_del_ipmp_tool
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_ipmp_tool(GF_IPMP_Tool *ipmpt)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:3328,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:3329,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:3330,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:3331,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:3336,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:3342,1
    - Dst: gf_ipmpx_array_size
      Src: /src/gpac/src/odf/odf_code.c:3352,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:3356,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:3357,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 38
    argCount: 3
    argNames:
    - bs
    - ipmpt
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_IPMP_Tool*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3365
      start: 3323
    functionDepth: 1
    functionLinenumber: 3323
    functionLinenumberEnd: 3365
    functionName: gf_odf_read_ipmp_tool
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_ipmpx_array_size
    - gf_malloc
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_ipmp_tool(GF_BitStream *bs, GF_IPMP_Tool *ipmpt,
      u32 DescSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:3375,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:3376,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ipmpt
    - outSize
    argTypes:
    - GF_IPMP_Tool*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3379
      start: 3368
    functionDepth: 1
    functionLinenumber: 3368
    functionLinenumberEnd: 3379
    functionName: gf_odf_size_ipmp_tool
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_field_size
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_ipmp_tool(GF_IPMP_Tool *ipmpt, u32 *outSize)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3386,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3388,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:3391,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:3392,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:3393,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:3394,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:3398,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:3399,1
    - Dst: gf_ipmpx_write_array
      Src: /src/gpac/src/odf/odf_code.c:3401,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:3401,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - bs
    - ipmpt
    argTypes:
    - GF_BitStream*
    - GF_IPMP_Tool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3403
      start: 3381
    functionDepth: 1
    functionLinenumber: 3381
    functionLinenumberEnd: 3403
    functionName: gf_odf_write_ipmp_tool
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_descriptor
    - gf_bs_write_int
    - gf_ipmpx_write_array
    - gf_bs_write_data
    - gf_odf_write_base_descriptor
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_ipmp_tool(GF_BitStream *bs, GF_IPMP_Tool *ipmpt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/slc.c:34,1
    - Dst: memset
      Src: /src/gpac/src/odf/slc.c:36,1
    - Dst: gf_odf_slc_set_pref
      Src: /src/gpac/src/odf/slc.c:39,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - predef
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 43
    functionName: gf_odf_new_slc
    functionSourceFile: /src/gpac/src/odf/slc.c
    functionUses: 1
    functionsReached:
    - memset
    - gf_malloc
    - gf_odf_slc_set_pref
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_slc(u8 predef)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/slc.c:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - sl
    argTypes:
    - GF_SLConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 53
    functionName: gf_odf_del_slc
    functionSourceFile: /src/gpac/src/odf/slc.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_slc(GF_SLConfig *sl)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 53
    argCount: 1
    argNames:
    - sl
    argTypes:
    - GF_SLConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 122
    functionName: gf_odf_slc_set_pref
    functionSourceFile: /src/gpac/src/odf/slc.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_slc_set_pref(GF_SLConfig *sl)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - sl
    argTypes:
    - GF_SLConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 136
    functionName: GetTSbytesLen
    functionSourceFile: /src/gpac/src/odf/slc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 GetTSbytesLen(GF_SLConfig *sl)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_slc_set_pref
      Src: /src/gpac/src/odf/slc.c:151,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:154,1
    - Dst: gf_odf_slc_set_pref
      Src: /src/gpac/src/odf/slc.c:160,1
    - Dst: gf_odf_slc_set_pref
      Src: /src/gpac/src/odf/slc.c:166,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/slc.c:169,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:171,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:172,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:173,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:174,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:175,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:176,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:177,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:178,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:179,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:180,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:182,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:184,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:186,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:188,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:189,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:190,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:192,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:195,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:200,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:201,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:202,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/odf/slc.c:206,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/odf/slc.c:207,1
    - Dst: GetTSbytesLen
      Src: /src/gpac/src/odf/slc.c:208,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 65
    argCount: 3
    argNames:
    - bs
    - sl
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_SLConfig*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 213
    functionName: gf_odf_read_slc
    functionSourceFile: /src/gpac/src/odf/slc.c
    functionUses: 0
    functionsReached:
    - GetTSbytesLen
    - gf_bs_read_long_int
    - gf_bs_read_int
    - gf_bs_available
    - gf_odf_slc_set_pref
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_slc(GF_BitStream *bs, GF_SLConfig *sl, u32 DescSize)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GetTSbytesLen
      Src: /src/gpac/src/odf/slc.c:226,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - sl
    - outSize
    argTypes:
    - GF_SLConfig*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 228
    functionName: gf_odf_size_slc
    functionSourceFile: /src/gpac/src/odf/slc.c
    functionUses: 0
    functionsReached:
    - GetTSbytesLen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_slc(GF_SLConfig *sl, u32 *outSize)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/slc.c:239,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/slc.c:241,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:244,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:246,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:247,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:248,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:249,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:250,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:251,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:252,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:253,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:254,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:255,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:256,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:257,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:258,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:259,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:260,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:261,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:262,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:263,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:266,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:267,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:268,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/odf/slc.c:271,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/odf/slc.c:272,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 40
    argCount: 2
    argNames:
    - bs
    - sl
    argTypes:
    - GF_BitStream*
    - GF_SLConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 233
    functionDepth: 1
    functionLinenumber: 233
    functionLinenumberEnd: 276
    functionName: gf_odf_write_slc
    functionSourceFile: /src/gpac/src/odf/slc.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    - gf_bs_write_long_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_slc(GF_BitStream *bs, GF_SLConfig *sl)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/slc.c:289,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:293,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:294,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:295,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:296,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:298,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:299,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:302,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:304,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:305,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/odf/slc.c:307,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:309,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:310,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:312,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:313,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:315,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/odf/slc.c:316,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/odf/slc.c:317,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:318,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/slc.c:319,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/slc.c:323,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/slc.c:327,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/slc.c:329,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/slc.c:330,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/slc.c:331,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 54
    argCount: 6
    argNames:
    - slConfig
    - Header
    - PDU
    - size
    - outPacket
    - OutSize
    argTypes:
    - GF_SLConfig*
    - GF_SLHeader*
    - u8*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 281
    functionDepth: 1
    functionLinenumber: 281
    functionLinenumberEnd: 332
    functionName: gf_sl_packetize
    functionSourceFile: /src/gpac/src/odf/slc.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_align
    - gf_bs_del
    - gf_bs_write_data
    - gf_bs_write_long_int
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_sl_packetize(GF_SLConfig* slConfig,\n                     GF_SLHeader
      *Header,\n                     u8 *PDU,\n                     u32 size,\n                     u8
      **outPacket,\n                     u32 *OutSize)"
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 48
    argCount: 2
    argNames:
    - slConfig
    - Header
    argTypes:
    - GF_SLConfig*
    - GF_SLHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 336
    functionDepth: 0
    functionLinenumber: 336
    functionLinenumberEnd: 372
    functionName: gf_sl_get_header_size
    functionSourceFile: /src/gpac/src/odf/slc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sl_get_header_size(GF_SLConfig* slConfig, GF_SLHeader
      *Header)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/odf/slc.c:382,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/slc.c:384,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:387,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:388,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:393,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:394,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:396,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:397,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:401,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:403,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:404,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/odf/slc.c:406,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:408,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:409,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:411,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:412,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:414,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/odf/slc.c:415,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/odf/slc.c:416,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:417,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/slc.c:418,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/slc.c:421,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/slc.c:422,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/slc.c:423,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 59
    argCount: 5
    argNames:
    - slConfig
    - Header
    - PDU
    - PDULength
    - HeaderLen
    argTypes:
    - GF_SLConfig*
    - GF_SLHeader*
    - u8*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 375
    functionDepth: 1
    functionLinenumber: 375
    functionLinenumberEnd: 424
    functionName: gf_odf_sl_depacketize
    functionSourceFile: /src/gpac/src/odf/slc.c
    functionUses: 1
    functionsReached:
    - gf_bs_new
    - gf_bs_read_long_int
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_del
    - memset
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_sl_depacketize (GF_SLConfig *slConfig, GF_SLHeader
      *Header, const u8 *PDU, u32 PDULength, u32 *HeaderLen)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewQoS
      Src: /src/gpac/src/odf/qos.c:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 40
    functionName: GF_QoS_Default *gf_odf_qos_new(u8 tag)
    functionSourceFile: /src/gpac/src/odf/qos.c
    functionUses: 0
    functionsReached:
    - NewQoS
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_QoS_Default *gf_odf_qos_new(u8 tag)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_delete_qos_qual
      Src: /src/gpac/src/odf/qos.c:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - qos
    argTypes:
    - GF_QoS_Default**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 48
    functionName: gf_odf_qos_del
    functionSourceFile: /src/gpac/src/odf/qos.c
    functionUses: 0
    functionsReached:
    - gf_odf_delete_qos_qual
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_qos_del(GF_QoS_Default **qos)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/qos.c:62,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/qos.c:66,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - desc
    - qualif
    argTypes:
    - GF_QoS_Descriptor*
    - GF_QoS_Default*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 67
    functionName: gf_odf_qos_add_qualif
    functionSourceFile: /src/gpac/src/odf/qos.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_qos_add_qualif(GF_QoS_Descriptor *desc, GF_QoS_Default
      *qualif)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/qos.c:79,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/qos.c:84,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/qos.c:85,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 1
    argNames:
    - qos
    argTypes:
    - GF_QoS_Default*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 88
    functionName: gf_odf_delete_qos_qual
    functionSourceFile: /src/gpac/src/odf/qos.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_odf_delete_qos_qual(GF_QoS_Default *qos)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 1
    argNames:
    - qos
    argTypes:
    - GF_QoS_Default*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 115
    functionName: gf_odf_size_qos_qual
    functionSourceFile: /src/gpac/src/odf/qos.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_qos_qual(GF_QoS_Default *qos)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_qos_qual
      Src: /src/gpac/src/odf/qos.c:122,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/qos.c:124,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/qos.c:129,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/qos.c:133,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/odf/qos.c:138,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/qos.c:142,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/qos.c:146,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/qos.c:150,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/qos.c:154,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/qos.c:163,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 39
    argCount: 2
    argNames:
    - bs
    - qos
    argTypes:
    - GF_BitStream*
    - GF_QoS_Default*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 167
    functionName: gf_odf_write_qos_qual
    functionSourceFile: /src/gpac/src/odf/qos.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_qos_qual
    - gf_bs_write_int
    - gf_bs_write_data
    - gf_odf_write_base_descriptor
    - gf_bs_write_float
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_qos_qual(GF_BitStream *bs, GF_QoS_Default *qos)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/qos.c:177,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/qos.c:183,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/qos.c:186,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/qos.c:192,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/qos.c:193,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/qos.c:193,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/qos.c:201,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/qos.c:202,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/qos.c:207,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/qos.c:208,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/qos.c:213,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/odf/qos.c:214,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/qos.c:219,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/qos.c:220,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/qos.c:225,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/qos.c:226,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/qos.c:231,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/qos.c:232,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/qos.c:237,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/qos.c:238,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/qos.c:248,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/qos.c:252,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/qos.c:253,1
    - Dst: gf_odf_delete_qos_qual
      Src: /src/gpac/src/odf/qos.c:261,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 79
    argCount: 3
    argNames:
    - bs
    - qos_qual
    - qual_size
    argTypes:
    - GF_BitStream*
    - GF_QoS_Default**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 267
    functionName: gf_odf_parse_qos
    functionSourceFile: /src/gpac/src/odf/qos.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - GF_LOG
    - gf_bs_read_float
    - gf_bs_read_int
    - gf_bs_available
    - gf_odf_delete_qos_qual
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_parse_qos(GF_BitStream *bs, GF_QoS_Default **qos_qual,
      u32 *qual_size)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/qos.c:276,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/qos.c:282,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/qos.c:288,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/qos.c:294,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/qos.c:300,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/qos.c:306,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/qos.c:312,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/qos.c:323,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 48
    argCount: 1
    argNames:
    - tag
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 330
    functionName: NewQoS
    functionSourceFile: /src/gpac/src/odf/qos.c
    functionUses: 1
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_QoS_Default
    signature: GF_QoS_Default *NewQoS(u8 tag)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/qos.c:337,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/qos.c:339,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 335
    functionDepth: 1
    functionLinenumber: 335
    functionLinenumberEnd: 343
    functionName: gf_odf_new_qos
    functionSourceFile: /src/gpac/src/odf/qos.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_qos()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/qos.c:352,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/qos.c:353,1
    - Dst: gf_odf_delete_qos_qual
      Src: /src/gpac/src/odf/qos.c:354,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/qos.c:355,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/qos.c:357,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/qos.c:358,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - qos
    argTypes:
    - GF_QoS_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 348
    functionDepth: 1
    functionLinenumber: 348
    functionLinenumberEnd: 360
    functionName: gf_odf_del_qos
    functionSourceFile: /src/gpac/src/odf/qos.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_odf_delete_qos_qual
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_qos(GF_QoS_Descriptor *qos)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/qos.c:373,1
    - Dst: gf_odf_parse_qos
      Src: /src/gpac/src/odf/qos.c:383,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/qos.c:386,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 3
    argNames:
    - bs
    - qos
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_QoS_Descriptor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 366
    functionDepth: 2
    functionLinenumber: 366
    functionLinenumberEnd: 392
    functionName: gf_odf_read_qos
    functionSourceFile: /src/gpac/src/odf/qos.c
    functionUses: 0
    functionsReached:
    - gf_odf_parse_qos
    - gf_list_add
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_qos(GF_BitStream *bs, GF_QoS_Descriptor *qos, u32
      DescSize)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/qos.c:411,1
    - Dst: gf_odf_size_qos_qual
      Src: /src/gpac/src/odf/qos.c:412,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/qos.c:414,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - qos
    - outSize
    argTypes:
    - GF_QoS_Descriptor*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 400
    functionDepth: 1
    functionLinenumber: 400
    functionLinenumberEnd: 417
    functionName: gf_odf_size_qos
    functionSourceFile: /src/gpac/src/odf/qos.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_odf_size_field_size
    - gf_odf_size_qos_qual
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_qos(GF_QoS_Descriptor *qos, u32 *outSize)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/qos.c:428,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/qos.c:430,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/qos.c:433,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/qos.c:438,1
    - Dst: gf_odf_write_qos_qual
      Src: /src/gpac/src/odf/qos.c:439,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - bs
    - qos
    argTypes:
    - GF_BitStream*
    - GF_QoS_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 422
    functionDepth: 2
    functionLinenumber: 422
    functionLinenumberEnd: 444
    functionName: gf_odf_write_qos
    functionSourceFile: /src/gpac/src/odf/qos.c
    functionUses: 0
    functionsReached:
    - gf_odf_write_qos_qual
    - gf_odf_size_descriptor
    - gf_bs_write_int
    - gf_odf_write_base_descriptor
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_qos(GF_BitStream *bs, GF_QoS_Descriptor *qos)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ind_buf
    - ','
    - indent
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 40
    functionName: GF_IPMPX_FORMAT_INDENT
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GF_IPMPX_FORMAT_INDENT( ind_buf, indent )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_FORMAT_INDENT
      Src: /src/gpac/src/odf/ipmpx_dump.c:44,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:46,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - trace
    - name
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 50
    functionName: StartList
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_FORMAT_INDENT
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void StartList(FILE *trace, const char *name, u32 indent, Bool XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_FORMAT_INDENT
      Src: /src/gpac/src/odf/ipmpx_dump.c:54,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:56,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - trace
    - name
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 60
    functionName: EndList
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_FORMAT_INDENT
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void EndList(FILE *trace, const char *name, u32 indent, Bool XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_FORMAT_INDENT
      Src: /src/gpac/src/odf/ipmpx_dump.c:65,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:67,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:69,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - trace
    - descName
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 73
    functionName: StartElement
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_FORMAT_INDENT
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void StartElement(FILE *trace, const char *descName, u32 indent, Bool
      XMTDump)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:79,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:81,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - trace
    - XMTDump
    - has_children
    argTypes:
    - FILE*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 84
    functionName: EndAttributes
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void EndAttributes(FILE *trace, Bool XMTDump, Bool has_children)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_FORMAT_INDENT
      Src: /src/gpac/src/odf/ipmpx_dump.c:89,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:91,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:93,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - trace
    - descName
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 97
    functionName: EndElement
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_FORMAT_INDENT
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void EndElement(FILE *trace, const char *descName, u32 indent, Bool
      XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_FORMAT_INDENT
      Src: /src/gpac/src/odf/ipmpx_dump.c:102,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:104,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:106,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - trace
    - attName
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 108
    functionName: StartAttribute
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_FORMAT_INDENT
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void StartAttribute(FILE *trace, const char *attName, u32 indent, Bool
      XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:112,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:114,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - trace
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 116
    functionName: EndAttribute
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void EndAttribute(FILE *trace, u32 indent, Bool XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:121,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:122,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:123,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - trace
    - attName
    - val
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 124
    functionName: DumpInt
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - StartAttribute
    - EndAttribute
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void DumpInt(FILE *trace, char *attName, u32  val, u32 indent, Bool
      XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:129,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:130,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - trace
    - attName
    - val
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - u64
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 132
    functionName: DumpLargeInt
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - StartAttribute
    - EndAttribute
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void DumpLargeInt(FILE *trace, char *attName, u64  val, u32 indent,
      Bool XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:138,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:139,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - trace
    - attName
    - val
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 141
    functionName: DumpBool
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - StartAttribute
    - EndAttribute
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void DumpBool(FILE *trace, char *attName, u32  val, u32 indent, Bool
      XMTDump)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:149,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:150,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:159,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:162,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:164,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:165,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:168,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:169,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 28
    argCount: 6
    argNames:
    - trace
    - name
    - data
    - dataLength
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - char*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 170
    functionName: DumpData
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - StartAttribute
    - EndAttribute
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void DumpData(FILE *trace, const char *name, char *data, u32 dataLength,
      u32 indent, Bool XMTDump)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:175,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:176,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:179,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:180,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:182,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:183,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:186,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:187,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 6
    argNames:
    - trace
    - name
    - data
    - dataLength
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - u16*
    - u16
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 188
    functionName: DumpData_16
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - StartAttribute
    - EndAttribute
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void DumpData_16(FILE *trace, char *name, u16 *data, u16 dataLength,
      u32 indent, Bool XMTDump)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:193,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:194,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:198,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:200,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:202,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 5
    argNames:
    - trace
    - name
    - data
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 203
    functionName: DumpBin128
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - StartAttribute
    - EndAttribute
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void DumpBin128(FILE *trace, char *name, char *data, u32 indent, Bool
      XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:210,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:211,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:212,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:213,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 5
    argNames:
    - trace
    - name
    - data
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 206
    functionDepth: 1
    functionLinenumber: 206
    functionLinenumberEnd: 214
    functionName: DumpDate
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - StartAttribute
    - EndAttribute
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void DumpDate(FILE *trace, char *name, char *data, u32 indent, Bool
      XMTDump)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:220,1
    - Dst: DumpData
      Src: /src/gpac/src/odf/ipmpx_dump.c:222,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:224,1
    - Dst: DumpData
      Src: /src/gpac/src/odf/ipmpx_dump.c:226,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 5
    argNames:
    - _p
    - attName
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_ByteArray*
    - char*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 229
    functionName: gf_ipmpx_dump_ByteArray
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - EndAttributes
    - DumpData
    - StartElement
    linkageType: ''
    returnType: void
    signature: void gf_ipmpx_dump_ByteArray(GF_IPMPX_ByteArray *_p, const char *attName,
      FILE *trace, u32 indent, Bool XMTDump)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:238,1
    - Dst: DumpData
      Src: /src/gpac/src/odf/ipmpx_dump.c:239,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:240,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:241,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:247,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:249,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:251,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:253,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:254,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:256,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 4
    argNames:
    - ipa
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Authentication*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 232
    functionDepth: 1
    functionLinenumber: 232
    functionLinenumberEnd: 260
    functionName: gf_ipmpx_dump_AUTH
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - DumpData
    - StartElement
    - EndAttributes
    - gf_ipmpx_dump_ByteArray
    - DumpInt
    - EndElement
    linkageType: ''
    returnType: void
    signature: void gf_ipmpx_dump_AUTH(GF_IPMPX_Authentication *ipa, FILE *trace,
      u32 indent, Bool XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:266,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:267,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:268,1
    - Dst: EndLeafAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:269,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:271,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:272,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 262
    functionDepth: 0
    functionLinenumber: 262
    functionLinenumberEnd: 275
    functionName: gf_ipmpx_dump_BaseData
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - DumpInt
    - EndLeafAttribute
    - StartElement
    linkageType: ''
    returnType: void
    signature: void gf_ipmpx_dump_BaseData(GF_IPMPX_Data *_p, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:281,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:283,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:284,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:285,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 277
    functionDepth: 1
    functionLinenumber: 277
    functionLinenumberEnd: 289
    functionName: gf_ipmpx_dump_OpaqueData
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - StartElement
    - gf_ipmpx_dump_ByteArray
    - EndAttributes
    - gf_ipmpx_dump_BaseData
    - EndElement
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_OpaqueData(GF_IPMPX_Data *_p, FILE *trace, u32
      indent, Bool XMTDump)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:295,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/ipmpx_dump.c:298,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/ipmpx_dump.c:299,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/ipmpx_dump.c:300,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/ipmpx_dump.c:301,1
    - Dst: DumpLargeInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:303,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:304,1
    - Dst: DumpLargeInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:305,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:306,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:308,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:309,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:310,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:311,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:314,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 291
    functionDepth: 2
    functionLinenumber: 291
    functionLinenumberEnd: 316
    functionName: gf_ipmpx_dump_KeyData
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - DumpBool
    - StartElement
    - EndAttributes
    - gf_ipmpx_dump_BaseData
    - gf_ipmpx_dump_ByteArray
    - DumpInt
    - EndElement
    - DumpLargeInt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_KeyData(GF_IPMPX_Data *_p, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:320,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/ipmpx_dump.c:322,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:323,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:324,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:325,1
    - Dst: gf_ipmpx_dump_data
      Src: /src/gpac/src/odf/ipmpx_dump.c:326,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:327,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:329,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 317
    functionDepth: 1
    functionLinenumber: 317
    functionLinenumberEnd: 331
    functionName: gf_ipmpx_dump_SecureContainer
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - DumpBool
    - gf_ipmpx_dump_data
    - StartElement
    - gf_ipmpx_dump_ByteArray
    - EndAttributes
    - gf_ipmpx_dump_BaseData
    - EndElement
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_SecureContainer(GF_IPMPX_Data *_p, FILE *trace,
      u32 indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:335,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:337,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:338,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:339,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:340,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:342,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 332
    functionDepth: 1
    functionLinenumber: 332
    functionLinenumberEnd: 344
    functionName: gf_ipmpx_dump_InitAuthentication
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - StartElement
    - EndAttributes
    - gf_ipmpx_dump_BaseData
    - DumpInt
    - EndElement
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_InitAuthentication(GF_IPMPX_Data *_p, FILE *trace,
      u32 indent, Bool XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:350,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:352,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:353,1
    - Dst: StartList
      Src: /src/gpac/src/odf/ipmpx_dump.c:355,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_dump.c:358,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_dump.c:359,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:360,1
    - Dst: DumpBin128
      Src: /src/gpac/src/odf/ipmpx_dump.c:362,1
    - Dst: DumpDate
      Src: /src/gpac/src/odf/ipmpx_dump.c:363,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:364,1
    - Dst: StartList
      Src: /src/gpac/src/odf/ipmpx_dump.c:365,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_dump.c:367,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_dump.c:368,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:369,1
    - Dst: DumpDate
      Src: /src/gpac/src/odf/ipmpx_dump.c:371,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:372,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:373,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:374,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:375,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:377,1
    - Dst: EndList
      Src: /src/gpac/src/odf/ipmpx_dump.c:380,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:382,1
    - Dst: EndList
      Src: /src/gpac/src/odf/ipmpx_dump.c:385,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:388,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 37
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 346
    functionDepth: 2
    functionLinenumber: 346
    functionLinenumberEnd: 390
    functionName: gf_ipmpx_dump_TrustSecurityMetadata
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - StartElement
    - EndList
    - gf_list_count
    - EndAttributes
    - gf_ipmpx_dump_BaseData
    - gf_ipmpx_dump_ByteArray
    - DumpInt
    - DumpBin128
    - EndElement
    - StartList
    - DumpDate
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_TrustSecurityMetadata(GF_IPMPX_Data *_p, FILE
      *trace, u32 indent, Bool XMTDump)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:396,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/ipmpx_dump.c:398,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_dump.c:399,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:399,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:401,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:402,1
    - Dst: StartList
      Src: /src/gpac/src/odf/ipmpx_dump.c:404,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_dump.c:405,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_dump.c:408,1
    - Dst: gf_ipmpx_dump_AUTH
      Src: /src/gpac/src/odf/ipmpx_dump.c:409,1
    - Dst: EndList
      Src: /src/gpac/src/odf/ipmpx_dump.c:412,1
    - Dst: StartList
      Src: /src/gpac/src/odf/ipmpx_dump.c:414,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_dump.c:415,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_dump.c:418,1
    - Dst: gf_ipmpx_dump_AUTH
      Src: /src/gpac/src/odf/ipmpx_dump.c:419,1
    - Dst: EndList
      Src: /src/gpac/src/odf/ipmpx_dump.c:422,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:424,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_dump.c:426,1
    - Dst: StartList
      Src: /src/gpac/src/odf/ipmpx_dump.c:430,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_dump.c:432,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:434,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:436,1
    - Dst: DumpData
      Src: /src/gpac/src/odf/ipmpx_dump.c:437,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:438,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:439,1
    - Dst: EndList
      Src: /src/gpac/src/odf/ipmpx_dump.c:442,1
    - Dst: gf_ipmpx_dump_AUTH
      Src: /src/gpac/src/odf/ipmpx_dump.c:446,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:450,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:452,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:454,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:455,1
    - Dst: gf_ipmpx_dump_data
      Src: /src/gpac/src/odf/ipmpx_dump.c:457,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:458,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:459,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:463,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 62
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 465
      start: 392
    functionDepth: 2
    functionLinenumber: 392
    functionLinenumberEnd: 465
    functionName: gf_ipmpx_dump_MutualAuthentication
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - DumpBool
    - gf_ipmpx_dump_AUTH
    - gf_fprintf
    - gf_ipmpx_dump_data
    - DumpData
    - StartElement
    - EndList
    - gf_list_count
    - EndAttributes
    - gf_ipmpx_dump_BaseData
    - gf_ipmpx_dump_ByteArray
    - DumpInt
    - EndElement
    - StartAttribute
    - StartList
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_MutualAuthentication(GF_IPMPX_Data *_p, FILE *trace,
      u32 indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:470,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:472,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:473,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/ipmpx_dump.c:474,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:476,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 467
    functionDepth: 1
    functionLinenumber: 467
    functionLinenumberEnd: 478
    functionName: gf_ipmpx_dump_GetToolsResponse
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - StartElement
    - EndAttributes
    - DumpDescList
    - gf_ipmpx_dump_BaseData
    - EndElement
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_GetToolsResponse(GF_IPMPX_Data *_p, FILE *trace,
      u32 indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:484,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:486,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:487,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:488,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:489,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:490,1
    - Dst: StartList
      Src: /src/gpac/src/odf/ipmpx_dump.c:492,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_dump.c:494,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_dump.c:495,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:496,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:498,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:499,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:500,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:501,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:502,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:503,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:505,1
    - Dst: EndList
      Src: /src/gpac/src/odf/ipmpx_dump.c:508,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:511,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 27
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 480
    functionDepth: 1
    functionLinenumber: 480
    functionLinenumberEnd: 513
    functionName: gf_ipmpx_dump_ParametricDescription
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - StartElement
    - EndList
    - gf_list_count
    - EndAttributes
    - gf_ipmpx_dump_ByteArray
    - gf_ipmpx_dump_BaseData
    - DumpInt
    - EndElement
    - StartList
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_ParametricDescription(GF_IPMPX_Data *_p, FILE
      *trace, u32 indent, Bool XMTDump)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:517,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:519,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:520,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:521,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:523,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:524,1
    - Dst: gf_ipmpx_dump_data
      Src: /src/gpac/src/odf/ipmpx_dump.c:526,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:527,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:530,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 514
    functionDepth: 1
    functionLinenumber: 514
    functionLinenumberEnd: 532
    functionName: gf_ipmpx_dump_ToolParamCapabilitiesQuery
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - gf_ipmpx_dump_data
    - StartElement
    - EndAttributes
    - gf_ipmpx_dump_BaseData
    - EndElement
    - StartAttribute
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_ToolParamCapabilitiesQuery(GF_IPMPX_Data *_p,
      FILE *trace, u32 indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:536,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/ipmpx_dump.c:538,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:539,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:540,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:542,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 544
      start: 533
    functionDepth: 1
    functionLinenumber: 533
    functionLinenumberEnd: 544
    functionName: gf_ipmpx_dump_ToolParamCapabilitiesResponse
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - DumpBool
    - StartElement
    - EndAttributes
    - gf_ipmpx_dump_BaseData
    - EndElement
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_ToolParamCapabilitiesResponse(GF_IPMPX_Data *_p,
      FILE *trace, u32 indent, Bool XMTDump)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:548,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:550,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:551,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:552,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:554,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:555,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/odf/ipmpx_dump.c:557,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:558,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:561,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 545
    functionDepth: 1
    functionLinenumber: 545
    functionLinenumberEnd: 563
    functionName: gf_ipmpx_dump_ConnectTool
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - StartElement
    - EndAttributes
    - gf_ipmpx_dump_BaseData
    - EndElement
    - StartAttribute
    - gf_odf_dump_desc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_ConnectTool(GF_IPMPX_Data *_p, FILE *trace, u32
      indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:567,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:569,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:570,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:571,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:573,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 564
    functionDepth: 1
    functionLinenumber: 564
    functionLinenumberEnd: 575
    functionName: gf_ipmpx_dump_DisconnectTool
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - StartElement
    - EndAttributes
    - gf_ipmpx_dump_BaseData
    - DumpInt
    - EndElement
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_DisconnectTool(GF_IPMPX_Data *_p, FILE *trace,
      u32 indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:579,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:581,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:582,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:583,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:584,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:586,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 576
    functionDepth: 1
    functionLinenumber: 576
    functionLinenumberEnd: 588
    functionName: gf_ipmpx_dump_GetToolContext
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - StartElement
    - EndAttributes
    - gf_ipmpx_dump_BaseData
    - DumpInt
    - EndElement
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_GetToolContext(GF_IPMPX_Data *_p, FILE *trace,
      u32 indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:592,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:594,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:595,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:596,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:597,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:598,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:600,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 589
    functionDepth: 1
    functionLinenumber: 589
    functionLinenumberEnd: 602
    functionName: gf_ipmpx_dump_GetToolContextResponse
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - StartElement
    - EndAttributes
    - gf_ipmpx_dump_BaseData
    - DumpInt
    - EndElement
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_GetToolContextResponse(GF_IPMPX_Data *_p, FILE
      *trace, u32 indent, Bool XMTDump)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:607,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:609,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:610,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:611,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:614,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:615,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:617,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:618,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:621,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:622,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:623,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:624,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:626,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 603
    functionDepth: 1
    functionLinenumber: 603
    functionLinenumberEnd: 628
    functionName: gf_ipmpx_dump_AddToolNotificationListener
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - StartElement
    - EndAttributes
    - gf_ipmpx_dump_BaseData
    - EndAttribute
    - DumpInt
    - EndElement
    - StartAttribute
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_AddToolNotificationListener(GF_IPMPX_Data *_p,
      FILE *trace, u32 indent, Bool XMTDump)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:633,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:635,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:636,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:639,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:640,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:642,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:643,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/ipmpx_dump.c:646,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/ipmpx_dump.c:647,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:648,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:649,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:651,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 653
      start: 629
    functionDepth: 1
    functionLinenumber: 629
    functionLinenumberEnd: 653
    functionName: gf_ipmpx_dump_RemoveToolNotificationListener
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - StartElement
    - EndAttributes
    - gf_ipmpx_dump_BaseData
    - EndAttribute
    - EndElement
    - StartAttribute
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_RemoveToolNotificationListener(GF_IPMPX_Data *_p,
      FILE *trace, u32 indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:657,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:659,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:660,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:661,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:662,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:663,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:664,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:666,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 668
      start: 654
    functionDepth: 1
    functionLinenumber: 654
    functionLinenumberEnd: 668
    functionName: gf_ipmpx_dump_NotifyToolEvent
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - StartElement
    - EndAttributes
    - gf_ipmpx_dump_BaseData
    - DumpInt
    - EndElement
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_NotifyToolEvent(GF_IPMPX_Data *_p, FILE *trace,
      u32 indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:672,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/ipmpx_dump.c:674,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:675,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:676,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:678,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 680
      start: 669
    functionDepth: 1
    functionLinenumber: 669
    functionLinenumberEnd: 680
    functionName: gf_ipmpx_dump_CanProcess
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - DumpBool
    - StartElement
    - EndAttributes
    - gf_ipmpx_dump_BaseData
    - EndElement
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_CanProcess(GF_IPMPX_Data *_p, FILE *trace, u32
      indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:684,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:686,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:687,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:688,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:689,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:690,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:692,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 694
      start: 681
    functionDepth: 1
    functionLinenumber: 681
    functionLinenumberEnd: 694
    functionName: gf_ipmpx_dump_ToolAPI_Config
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - StartElement
    - EndAttributes
    - gf_ipmpx_dump_ByteArray
    - gf_ipmpx_dump_BaseData
    - DumpInt
    - EndElement
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_ToolAPI_Config(GF_IPMPX_Data *_p, FILE *trace,
      u32 indent, Bool XMTDump)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:698,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:700,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:701,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:704,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:705,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:706,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:708,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:709,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:710,1
    - Dst: DumpData
      Src: /src/gpac/src/odf/ipmpx_dump.c:716,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:720,1
    - Dst: DumpData
      Src: /src/gpac/src/odf/ipmpx_dump.c:723,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:725,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:726,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:728,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 33
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 695
    functionDepth: 1
    functionLinenumber: 695
    functionLinenumberEnd: 730
    functionName: gf_ipmpx_dump_WatermarkingInit
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - DumpData
    - StartElement
    - EndAttributes
    - gf_ipmpx_dump_BaseData
    - DumpInt
    - EndElement
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_WatermarkingInit(GF_IPMPX_Data *_p, FILE *trace,
      u32 indent, Bool XMTDump)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:734,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:736,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:737,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:738,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:739,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:740,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:741,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:743,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 745
      start: 731
    functionDepth: 1
    functionLinenumber: 731
    functionLinenumberEnd: 745
    functionName: gf_ipmpx_dump_SendWatermark
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - StartElement
    - EndAttributes
    - gf_ipmpx_dump_ByteArray
    - gf_ipmpx_dump_BaseData
    - DumpInt
    - EndElement
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_SendWatermark(GF_IPMPX_Data *_p, FILE *trace,
      u32 indent, Bool XMTDump)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:751,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:753,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:754,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:755,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:756,1
    - Dst: DumpData_16
      Src: /src/gpac/src/odf/ipmpx_dump.c:757,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:758,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:759,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_dump.c:761,1
    - Dst: StartList
      Src: /src/gpac/src/odf/ipmpx_dump.c:763,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_dump.c:766,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:767,1
    - Dst: DumpBin128
      Src: /src/gpac/src/odf/ipmpx_dump.c:769,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:770,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:772,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:773,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:774,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:776,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:778,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:781,1
    - Dst: EndList
      Src: /src/gpac/src/odf/ipmpx_dump.c:784,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_dump.c:787,1
    - Dst: StartList
      Src: /src/gpac/src/odf/ipmpx_dump.c:789,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_dump.c:792,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:793,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:795,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:796,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:797,1
    - Dst: DumpData_16
      Src: /src/gpac/src/odf/ipmpx_dump.c:798,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:799,1
    - Dst: gf_ipmpx_dump_ByteArray
      Src: /src/gpac/src/odf/ipmpx_dump.c:801,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:804,1
    - Dst: EndList
      Src: /src/gpac/src/odf/ipmpx_dump.c:807,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:811,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 58
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 813
      start: 747
    functionDepth: 2
    functionLinenumber: 747
    functionLinenumberEnd: 813
    functionName: gf_ipmpx_dump_SelectiveDecryptionInit
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - StartElement
    - EndList
    - gf_list_count
    - EndAttributes
    - gf_ipmpx_dump_BaseData
    - gf_ipmpx_dump_ByteArray
    - DumpInt
    - DumpBin128
    - DumpData_16
    - EndElement
    - StartList
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_SelectiveDecryptionInit(GF_IPMPX_Data *_p, FILE
      *trace, u32 indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:818,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:820,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:821,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/ipmpx_dump.c:822,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/ipmpx_dump.c:823,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/ipmpx_dump.c:824,1
    - Dst: gf_ipmpx_dump_BaseData
      Src: /src/gpac/src/odf/ipmpx_dump.c:825,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/ipmpx_dump.c:827,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 829
      start: 815
    functionDepth: 1
    functionLinenumber: 815
    functionLinenumberEnd: 829
    functionName: gf_ipmpx_dump_ISMACryp
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 0
    functionsReached:
    - DumpBool
    - StartElement
    - EndAttributes
    - gf_ipmpx_dump_BaseData
    - DumpInt
    - EndElement
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_ISMACryp(GF_IPMPX_Data *_p, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_ipmpx_dump_OpaqueData
      Src: /src/gpac/src/odf/ipmpx_dump.c:836,1
    - Dst: gf_ipmpx_dump_KeyData
      Src: /src/gpac/src/odf/ipmpx_dump.c:838,1
    - Dst: gf_ipmpx_dump_SecureContainer
      Src: /src/gpac/src/odf/ipmpx_dump.c:840,1
    - Dst: gf_ipmpx_dump_InitAuthentication
      Src: /src/gpac/src/odf/ipmpx_dump.c:842,1
    - Dst: gf_ipmpx_dump_TrustSecurityMetadata
      Src: /src/gpac/src/odf/ipmpx_dump.c:844,1
    - Dst: gf_ipmpx_dump_MutualAuthentication
      Src: /src/gpac/src/odf/ipmpx_dump.c:846,1
    - Dst: gf_ipmpx_dump_GetToolsResponse
      Src: /src/gpac/src/odf/ipmpx_dump.c:848,1
    - Dst: gf_ipmpx_dump_ParametricDescription
      Src: /src/gpac/src/odf/ipmpx_dump.c:850,1
    - Dst: gf_ipmpx_dump_ToolParamCapabilitiesQuery
      Src: /src/gpac/src/odf/ipmpx_dump.c:852,1
    - Dst: gf_ipmpx_dump_ToolParamCapabilitiesResponse
      Src: /src/gpac/src/odf/ipmpx_dump.c:854,1
    - Dst: gf_ipmpx_dump_GetToolContext
      Src: /src/gpac/src/odf/ipmpx_dump.c:856,1
    - Dst: gf_ipmpx_dump_GetToolContextResponse
      Src: /src/gpac/src/odf/ipmpx_dump.c:858,1
    - Dst: gf_ipmpx_dump_ConnectTool
      Src: /src/gpac/src/odf/ipmpx_dump.c:860,1
    - Dst: gf_ipmpx_dump_DisconnectTool
      Src: /src/gpac/src/odf/ipmpx_dump.c:862,1
    - Dst: gf_ipmpx_dump_AddToolNotificationListener
      Src: /src/gpac/src/odf/ipmpx_dump.c:864,1
    - Dst: gf_ipmpx_dump_RemoveToolNotificationListener
      Src: /src/gpac/src/odf/ipmpx_dump.c:866,1
    - Dst: gf_ipmpx_dump_NotifyToolEvent
      Src: /src/gpac/src/odf/ipmpx_dump.c:868,1
    - Dst: gf_ipmpx_dump_CanProcess
      Src: /src/gpac/src/odf/ipmpx_dump.c:870,1
    - Dst: gf_ipmpx_dump_ISMACryp
      Src: /src/gpac/src/odf/ipmpx_dump.c:872,1
    - Dst: gf_ipmpx_dump_ToolAPI_Config
      Src: /src/gpac/src/odf/ipmpx_dump.c:874,1
    - Dst: gf_ipmpx_dump_WatermarkingInit
      Src: /src/gpac/src/odf/ipmpx_dump.c:877,1
    - Dst: gf_ipmpx_dump_SendWatermark
      Src: /src/gpac/src/odf/ipmpx_dump.c:880,1
    - Dst: gf_ipmpx_dump_SelectiveDecryptionInit
      Src: /src/gpac/src/odf/ipmpx_dump.c:882,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 56
    argCount: 4
    argNames:
    - _p
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPX_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 893
      start: 831
    functionDepth: 3
    functionLinenumber: 831
    functionLinenumberEnd: 893
    functionName: gf_ipmpx_dump_data
    functionSourceFile: /src/gpac/src/odf/ipmpx_dump.c
    functionUses: 3
    functionsReached:
    - gf_ipmpx_dump_OpaqueData
    - gf_ipmpx_dump_ConnectTool
    - gf_ipmpx_dump_InitAuthentication
    - gf_ipmpx_dump_RemoveToolNotificationListener
    - gf_ipmpx_dump_SelectiveDecryptionInit
    - gf_ipmpx_dump_AddToolNotificationListener
    - gf_ipmpx_dump_NotifyToolEvent
    - gf_ipmpx_dump_GetToolContext
    - gf_ipmpx_dump_ToolParamCapabilitiesResponse
    - gf_ipmpx_dump_CanProcess
    - gf_ipmpx_dump_GetToolsResponse
    - gf_ipmpx_dump_MutualAuthentication
    - gf_ipmpx_dump_ParametricDescription
    - gf_ipmpx_dump_ToolAPI_Config
    - gf_ipmpx_dump_SendWatermark
    - gf_ipmpx_dump_KeyData
    - gf_ipmpx_dump_SecureContainer
    - gf_ipmpx_dump_TrustSecurityMetadata
    - gf_ipmpx_dump_GetToolContextResponse
    - gf_ipmpx_dump_DisconnectTool
    - gf_ipmpx_dump_WatermarkingInit
    - gf_ipmpx_dump_ToolParamCapabilitiesQuery
    - gf_ipmpx_dump_ISMACryp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_dump_data(GF_IPMPX_Data *_p, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - size_desc
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 46
    functionName: gf_odf_size_field_size
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 25
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 gf_odf_size_field_size(u32 size_desc)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:61,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:67,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:70,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/descriptors.c:78,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:79,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/descriptors.c:79,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:83,1
    - Dst: gf_odf_create_descriptor
      Src: /src/gpac/src/odf/descriptors.c:85,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/odf/descriptors.c:99,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/descriptors.c:100,1
    - Dst: gf_odf_read_descriptor
      Src: /src/gpac/src/odf/descriptors.c:106,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/descriptors.c:119,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:122,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/odf/descriptors.c:122,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/descriptors.c:123,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 54
    argCount: 3
    argNames:
    - bs
    - desc
    - desc_size
    argTypes:
    - GF_BitStream*
    - GF_Descriptor**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 127
    functionName: gf_odf_parse_descriptor
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 13
    functionsReached:
    - gf_odf_size_field_size
    - GF_LOG
    - gf_bs_read_int
    - gf_odf_create_descriptor
    - gf_error_to_string
    - gf_bs_available
    - gf_odf_delete_descriptor
    - gf_odf_read_descriptor
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_parse_descriptor(GF_BitStream *bs, GF_Descriptor **desc,
      u32 *desc_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/descriptors.c:139,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/descriptors.c:140,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/descriptors.c:143,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - descList
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 145
    functionName: gf_odf_delete_descriptor_list
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 6
    functionsReached:
    - gf_odf_delete_descriptor
    - gf_list_enum
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_delete_descriptor_list(GF_List *descList)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:163,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:165,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:167,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:168,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:170,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:171,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:172,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:174,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:175,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:176,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:177,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 3
    argNames:
    - bs
    - tag
    - size
    argTypes:
    - GF_BitStream*
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 182
    functionName: gf_odf_write_base_descriptor
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 43
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_base_descriptor(GF_BitStream *bs, u8 tag, u32 size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:191,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:193,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/descriptors.c:195,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/descriptors.c:197,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - descList
    - outSize
    argTypes:
    - GF_List*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 201
    functionName: gf_odf_size_descriptor_list
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 9
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_odf_size_field_size
    - gf_odf_size_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_descriptor_list(GF_List *descList, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:209,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:211,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/descriptors.c:213,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - bs
    - descList
    argTypes:
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 203
    functionDepth: 1
    functionLinenumber: 203
    functionLinenumberEnd: 218
    functionName: gf_odf_write_descriptor_list
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 9
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_odf_write_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_descriptor_list(GF_BitStream *bs, GF_List *descList)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:226,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:228,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/descriptors.c:230,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - bs
    - descList
    - only_tag
    argTypes:
    - GF_BitStream*
    - GF_List*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 220
    functionDepth: 1
    functionLinenumber: 220
    functionLinenumberEnd: 235
    functionName: gf_odf_write_descriptor_list_filter
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 4
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_odf_write_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_descriptor_list_filter(GF_BitStream *bs, GF_List
      *descList, u8 only_tag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - bs
    - array_size
    argTypes:
    - GF_BitStream*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 239
    functionDepth: 1
    functionLinenumber: 239
    functionLinenumberEnd: 252
    functionName: gf_ipmpx_array_size
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: u32
    signature: u32 gf_ipmpx_array_size(GF_BitStream *bs, u32 *array_size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:271,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:273,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:274,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:276,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:277,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:278,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:280,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:281,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:282,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:283,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/descriptors.c:287,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 32
    argCount: 3
    argNames:
    - bs
    - data
    - data_len
    argTypes:
    - GF_BitStream*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 254
    functionDepth: 1
    functionLinenumber: 254
    functionLinenumberEnd: 288
    functionName: gf_ipmpx_write_array
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_int
    linkageType: ''
    returnType: void
    signature: void gf_ipmpx_write_array(GF_BitStream *bs, u8 *data, u32 data_len)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/odf/descriptors.c:305,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:310,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/odf/descriptors.c:312,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:315,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:317,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:319,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:320,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:321,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:323,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:325,1
    - Dst: gf_odf_New_ElemMask
      Src: /src/gpac/src/odf/descriptors.c:327,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:328,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:329,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:331,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/descriptors.c:333,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/odf/descriptors.c:334,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/descriptors.c:334,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:335,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:338,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:339,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:341,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:342,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/descriptors.c:344,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/odf/descriptors.c:345,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/descriptors.c:345,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:346,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:348,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 45
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 294
    functionDepth: 1
    functionLinenumber: 294
    functionLinenumberEnd: 350
    functionName: GF_BIFSConfig *gf_odf_get_bifs_config(GF_DefaultDescriptor *dsi,
      u32 oti)
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_bs_new
    - GF_LOG
    - gf_bs_get_size
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_del
    - gf_odf_desc_new
    - gf_list_add
    - gf_bs_read_int
    - gf_odf_New_ElemMask
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_BIFSConfig *gf_odf_get_bifs_config(GF_DefaultDescriptor
      *dsi, u32 oti)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/odf/descriptors.c:360,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:363,1
    - Dst: memset
      Src: /src/gpac/src/odf/descriptors.c:364,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:366,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:367,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:368,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:369,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:370,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:371,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:372,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:372,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:374,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:375,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:377,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:378,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:379,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:380,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:381,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:383,1
    - Dst: gf_bs_read_vluimsbf5
      Src: /src/gpac/src/odf/descriptors.c:384,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:386,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:391,1
    - Dst: gf_bs_read_vluimsbf5
      Src: /src/gpac/src/odf/descriptors.c:392,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:394,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:398,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 43
    argCount: 2
    argNames:
    - dsi
    - cfg
    argTypes:
    - GF_DefaultDescriptor*
    - GF_LASERConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 353
    functionDepth: 1
    functionLinenumber: 353
    functionLinenumberEnd: 400
    functionName: gf_odf_get_laser_config
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_bs_new
    - gf_bs_del
    - memset
    - gf_bs_read_int
    - gf_bs_read_vluimsbf5
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_get_laser_config(GF_DefaultDescriptor *dsi, GF_LASERConfig
      *cfg)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/odf/descriptors.c:408,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:410,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:411,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/descriptors.c:412,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:413,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/descriptors.c:416,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/descriptors.c:416,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:417,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:418,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:420,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 2
    argNames:
    - dsi
    - cfg
    argTypes:
    - GF_DefaultDescriptor*
    - GF_UIConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 403
    functionDepth: 1
    functionLinenumber: 403
    functionLinenumberEnd: 422
    functionName: gf_odf_get_ui_config
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_del
    - memset
    - gf_bs_read_int
    - stricmp
    - gf_bs_available
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_get_ui_config(GF_DefaultDescriptor *dsi, GF_UIConfig
      *cfg)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:436,1
    - Dst: strlen
      Src: /src/gpac/src/odf/descriptors.c:437,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:438,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:439,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/descriptors.c:440,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:443,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:444,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/descriptors.c:447,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/odf/descriptors.c:449,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/descriptors.c:450,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:451,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 2
    argNames:
    - cfg
    - out_dsi
    argTypes:
    - GF_UIConfig*
    - GF_DefaultDescriptor**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 454
      start: 425
    functionDepth: 1
    functionLinenumber: 425
    functionLinenumberEnd: 454
    functionName: gf_odf_encode_ui_config
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_del
    - gf_bs_write_data
    - gf_odf_desc_new
    - stricmp
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_encode_ui_config(GF_UIConfig *cfg, GF_DefaultDescriptor
      **out_dsi)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:461,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:463,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:464,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 457
    functionDepth: 1
    functionLinenumber: 457
    functionLinenumberEnd: 470
    functionName: GF_AVCConfig *gf_odf_avc_cfg_new()
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AVCConfig *gf_odf_avc_cfg_new()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:476,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:477,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/descriptors.c:478,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:479,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:480,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/descriptors.c:482,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:485,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:486,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/descriptors.c:487,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:488,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:489,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/descriptors.c:491,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:495,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:496,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/descriptors.c:497,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:498,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:499,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/descriptors.c:501,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:504,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_AVCConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 505
      start: 472
    functionDepth: 1
    functionLinenumber: 472
    functionLinenumberEnd: 505
    functionName: gf_odf_avc_cfg_del
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 14
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_avc_cfg_del(GF_AVCConfig *cfg)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:514,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:517,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:518,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:519,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:520,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:521,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:522,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:523,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:524,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:527,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/odf/descriptors.c:529,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/odf/descriptors.c:531,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/descriptors.c:533,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:535,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:537,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:540,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/odf/descriptors.c:542,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/odf/descriptors.c:544,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/descriptors.c:546,1
    - Dst: gf_avcc_use_extensions
      Src: /src/gpac/src/odf/descriptors.c:548,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:550,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:551,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:552,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:553,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:554,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:555,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:557,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:559,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:562,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/odf/descriptors.c:564,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/odf/descriptors.c:566,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/descriptors.c:568,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 57
    argCount: 2
    argNames:
    - cfg
    - bs
    argTypes:
    - GF_AVCConfig*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 507
    functionDepth: 1
    functionLinenumber: 507
    functionLinenumberEnd: 572
    functionName: gf_odf_avc_cfg_write_bs
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_avcc_use_extensions
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_list_count
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_avc_cfg_write_bs(GF_AVCConfig *cfg, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:577,1
    - Dst: gf_odf_avc_cfg_write_bs
      Src: /src/gpac/src/odf/descriptors.c:578,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/descriptors.c:581,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:582,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - cfg
    - outData
    - outSize
    argTypes:
    - GF_AVCConfig*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 574
    functionDepth: 2
    functionLinenumber: 574
    functionLinenumberEnd: 584
    functionName: gf_odf_avc_cfg_write
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 2
    functionsReached:
    - gf_bs_get_content
    - gf_odf_avc_cfg_write_bs
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_avc_cfg_write(GF_AVCConfig *cfg, u8 **outData, u32
      *outSize)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_avc_cfg_new
      Src: /src/gpac/src/odf/descriptors.c:590,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:591,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:592,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:593,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:594,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:595,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:596,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:597,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:598,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:599,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:602,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/descriptors.c:603,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:604,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:605,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:606,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:609,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:611,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:612,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/descriptors.c:616,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:618,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:619,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/descriptors.c:622,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:623,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:625,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:628,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/descriptors.c:629,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:630,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:631,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:632,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:635,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:637,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:638,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/descriptors.c:642,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:644,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:645,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/descriptors.c:648,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:649,1
    - Dst: gf_avcc_use_extensions
      Src: /src/gpac/src/odf/descriptors.c:651,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:652,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:653,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:654,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:655,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:656,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:657,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:659,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:661,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:664,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/descriptors.c:665,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:666,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:667,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:668,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:671,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:673,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:674,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/descriptors.c:678,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:680,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:681,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/descriptors.c:684,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:685,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:691,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 93
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 693
      start: 586
    functionDepth: 2
    functionLinenumber: 586
    functionLinenumberEnd: 693
    functionName: GF_AVCConfig *gf_odf_avc_cfg_read(u8 *dsi, u32 dsi_size)
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_list_new
    - gf_bs_new
    - gf_odf_avc_cfg_del
    - GF_SAFEALLOC
    - GF_LOG
    - gf_avcc_use_extensions
    - gf_bs_del
    - gf_list_add
    - gf_bs_read_int
    - gf_odf_avc_cfg_new
    - gf_bs_available
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AVCConfig *gf_odf_avc_cfg_read(u8 *dsi, u32 dsi_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/descriptors.c:698,1
    - Dst: memset
      Src: /src/gpac/src/odf/descriptors.c:700,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 703
      start: 696
    functionDepth: 0
    functionLinenumber: 696
    functionLinenumberEnd: 703
    functionName: gf_odf_new_tx3g
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_tx3g()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:708,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:709,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:710,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - sd
    argTypes:
    - GF_TextSampleDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 712
      start: 704
    functionDepth: 0
    functionLinenumber: 704
    functionLinenumberEnd: 712
    functionName: gf_odf_del_tx3g
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_tx3g(GF_TextSampleDescriptor *sd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_new_tx3g
      Src: /src/gpac/src/odf/descriptors.c:723,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:724,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:726,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:727,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:728,1
    - Dst: gpp_read_rgba
      Src: /src/gpac/src/odf/descriptors.c:729,1
    - Dst: gpp_read_box
      Src: /src/gpac/src/odf/descriptors.c:730,1
    - Dst: gpp_read_style
      Src: /src/gpac/src/odf/descriptors.c:731,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/odf/descriptors.c:732,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/descriptors.c:733,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/odf/descriptors.c:736,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/odf/descriptors.c:737,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/descriptors.c:738,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/descriptors.c:739,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:742,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 747
      start: 714
    functionDepth: 3
    functionLinenumber: 714
    functionLinenumberEnd: 747
    functionName: GF_TextSampleDescriptor *gf_odf_tx3g_read(u8 *dsi, u32 dsi_size)
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_data
    - gf_bs_new
    - gf_bs_del
    - gpp_read_box
    - gf_bs_read_int
    - gf_bs_read_u8
    - gf_odf_new_tx3g
    - gf_bs_read_u16
    - gpp_read_rgba
    - gpp_read_style
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_TextSampleDescriptor *gf_odf_tx3g_read(u8 *dsi, u32 dsi_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:756,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/odf/descriptors.c:758,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:759,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:760,1
    - Dst: gpp_write_rgba
      Src: /src/gpac/src/odf/descriptors.c:761,1
    - Dst: gpp_write_box
      Src: /src/gpac/src/odf/descriptors.c:762,1
    - Dst: gpp_write_style
      Src: /src/gpac/src/odf/descriptors.c:763,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/odf/descriptors.c:765,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/odf/descriptors.c:767,1
    - Dst: strlen
      Src: /src/gpac/src/odf/descriptors.c:769,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:770,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/descriptors.c:771,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:773,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/descriptors.c:776,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:777,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 3
    argNames:
    - a
    - outData
    - outSize
    argTypes:
    - GF_TextSampleDescriptor*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 782
      start: 749
    functionDepth: 3
    functionLinenumber: 749
    functionLinenumberEnd: 782
    functionName: gf_odf_tx3g_write
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_u16
    - strlen
    - gpp_write_rgba
    - gf_bs_write_data
    - gf_bs_del
    - gpp_write_box
    - gf_bs_write_u32
    - gf_bs_write_u8
    - gpp_write_style
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_tx3g_write(GF_TextSampleDescriptor *a, u8 **outData,
      u32 *outSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/descriptors.c:787,1
    - Dst: memset
      Src: /src/gpac/src/odf/descriptors.c:789,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:791,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 797
      start: 785
    functionDepth: 1
    functionLinenumber: 785
    functionLinenumberEnd: 797
    functionName: gf_odf_new_text_cfg
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_new_text_cfg()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:802,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:803,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/descriptors.c:804,1
    - Dst: gf_odf_del_tx3g
      Src: /src/gpac/src/odf/descriptors.c:805,1
    - Dst: memset
      Src: /src/gpac/src/odf/descriptors.c:808,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - desc
    argTypes:
    - GF_TextConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 811
      start: 799
    functionDepth: 1
    functionLinenumber: 799
    functionLinenumberEnd: 811
    functionName: ResetTextConfig
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_odf_del_tx3g
    - gf_list_count
    - memset
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void ResetTextConfig(GF_TextConfig *desc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ResetTextConfig
      Src: /src/gpac/src/odf/descriptors.c:815,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/descriptors.c:816,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:817,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - desc
    argTypes:
    - GF_TextConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 813
    functionDepth: 2
    functionLinenumber: 813
    functionLinenumberEnd: 819
    functionName: gf_odf_del_text_cfg
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_free
    - ResetTextConfig
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_del_text_cfg(GF_TextConfig *desc)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: ResetTextConfig
      Src: /src/gpac/src/odf/descriptors.c:838,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:839,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:842,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:843,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:844,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:845,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:846,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:847,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:849,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:851,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:853,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:854,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:855,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:856,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:857,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:859,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:860,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:868,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/descriptors.c:871,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:873,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/odf/descriptors.c:875,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/descriptors.c:883,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/descriptors.c:893,1
    - Dst: gf_strdup
      Src: /src/gpac/src/odf/descriptors.c:896,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:899,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/odf/descriptors.c:900,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:906,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:907,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:908,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:909,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:915,1
    - Dst: ResetTextConfig
      Src: /src/gpac/src/odf/descriptors.c:916,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 74
    argCount: 4
    argNames:
    - data
    - data_len
    - codecid
    - cfg
    argTypes:
    - u8*
    - u32
    - u32
    - GF_TextConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 918
      start: 823
    functionDepth: 4
    functionLinenumber: 823
    functionLinenumberEnd: 918
    functionName: gf_odf_get_text_config
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_strdup
    - ResetTextConfig
    - gf_bs_new
    - gf_isom_box_del
    - gf_bs_del
    - gf_list_add
    - gf_bs_read_int
    - gf_bs_available
    - gf_malloc
    - gf_isom_box_parse
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_get_text_config(u8 *data, u32 data_len, u32 codecid,
      GF_TextConfig *cfg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:926,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:928,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 931
      start: 922
    functionDepth: 1
    functionLinenumber: 922
    functionLinenumberEnd: 931
    functionName: GF_HEVCConfig *gf_odf_hevc_cfg_new()
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_HEVCConfig *gf_odf_hevc_cfg_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:937,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:938,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/descriptors.c:939,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:941,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:942,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/descriptors.c:943,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:944,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:945,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/descriptors.c:947,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:948,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/descriptors.c:950,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:951,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_HEVCConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 952
      start: 933
    functionDepth: 1
    functionLinenumber: 933
    functionLinenumberEnd: 952
    functionName: gf_odf_hevc_cfg_del
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 13
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_hevc_cfg_del(GF_HEVCConfig *cfg)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:959,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:962,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:965,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:966,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:967,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:968,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:969,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:970,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:971,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:972,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/odf/descriptors.c:974,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:975,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:978,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:979,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:981,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:982,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:985,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:986,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:987,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:988,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:989,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:990,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:991,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:993,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:995,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:998,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:999,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1000,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1002,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:1007,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:1009,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1011,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1012,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1013,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1014,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:1018,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1020,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/odf/descriptors.c:1022,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/descriptors.c:1024,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 55
    argCount: 2
    argNames:
    - cfg
    - bs
    argTypes:
    - GF_HEVCConfig*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1028
      start: 954
    functionDepth: 1
    functionLinenumber: 954
    functionLinenumberEnd: 1028
    functionName: gf_odf_hevc_cfg_write_bs
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 3
    functionsReached:
    - gf_list_get
    - gf_bs_write_int
    - gf_list_count
    - gf_bs_write_data
    - gf_bs_write_long_int
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_hevc_cfg_write_bs(GF_HEVCConfig *cfg, GF_BitStream
      *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:1034,1
    - Dst: gf_odf_hevc_cfg_write_bs
      Src: /src/gpac/src/odf/descriptors.c:1037,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/descriptors.c:1039,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:1041,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - cfg
    - outData
    - outSize
    argTypes:
    - GF_HEVCConfig*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1043
      start: 1030
    functionDepth: 2
    functionLinenumber: 1030
    functionLinenumberEnd: 1043
    functionName: gf_odf_hevc_cfg_write
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 2
    functionsReached:
    - gf_bs_get_content
    - gf_odf_hevc_cfg_write_bs
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_hevc_cfg_write(GF_HEVCConfig *cfg, u8 **outData, u32
      *outSize)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_hevc_cfg_new
      Src: /src/gpac/src/odf/descriptors.c:1049,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1053,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1056,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1057,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1058,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1059,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1061,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1062,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1063,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1064,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/odf/descriptors.c:1066,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1067,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1070,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1071,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1073,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1074,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1077,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1078,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1079,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1080,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1081,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1082,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1083,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1085,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1087,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1090,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1091,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1093,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1095,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:1099,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:1101,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:1104,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:1105,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1107,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1108,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1109,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1110,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1113,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/descriptors.c:1114,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:1115,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:1116,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:1119,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:1121,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/descriptors.c:1126,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/descriptors.c:1127,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:1128,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 65
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1132
      start: 1045
    functionDepth: 2
    functionLinenumber: 1045
    functionLinenumberEnd: 1132
    functionName: GF_HEVCConfig *gf_odf_hevc_cfg_read_bs(GF_BitStream *bs, Bool is_lhvc)
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_odf_hevc_cfg_del
    - gf_malloc
    - gf_list_new
    - gf_bs_read_data
    - GF_SAFEALLOC
    - GF_LOG
    - gf_bs_read_long_int
    - gf_list_add
    - gf_bs_read_int
    - gf_bs_available
    - gf_odf_hevc_cfg_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_HEVCConfig *gf_odf_hevc_cfg_read_bs(GF_BitStream *bs,
      Bool is_lhvc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:1137,1
    - Dst: gf_odf_hevc_cfg_read_bs
      Src: /src/gpac/src/odf/descriptors.c:1138,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:1139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1141
      start: 1134
    functionDepth: 1
    functionLinenumber: 1134
    functionLinenumberEnd: 1141
    functionName: GF_HEVCConfig *gf_odf_hevc_cfg_read(u8 *dsi, u32 dsi_size, Bool
      is_lhvc)
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_odf_hevc_cfg_read_bs
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_HEVCConfig *gf_odf_hevc_cfg_read(u8 *dsi, u32 dsi_size,
      Bool is_lhvc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:1147,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:1149,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1154
      start: 1143
    functionDepth: 1
    functionLinenumber: 1143
    functionLinenumberEnd: 1154
    functionName: GF_VVCConfig *gf_odf_vvc_cfg_new()
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_VVCConfig *gf_odf_vvc_cfg_new()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:1160,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:1161,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/descriptors.c:1162,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:1164,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:1165,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/descriptors.c:1166,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1167,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1168,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/descriptors.c:1170,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1171,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/descriptors.c:1173,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1175,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1177,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1178,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_VVCConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1179
      start: 1156
    functionDepth: 1
    functionLinenumber: 1156
    functionLinenumberEnd: 1179
    functionName: gf_odf_vvc_cfg_del
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 7
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_vvc_cfg_del(GF_VVCConfig *cfg)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:1186,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1190,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1191,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1192,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1197,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1198,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1199,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1200,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1201,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1202,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1208,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1209,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1210,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1211,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:1212,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1213,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1214,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/descriptors.c:1217,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1218,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1220,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1225,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1228,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:1232,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:1235,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/odf/descriptors.c:1237,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/odf/descriptors.c:1241,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/odf/descriptors.c:1242,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/odf/descriptors.c:1243,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1245,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:1250,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:1252,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1254,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1255,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1256,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1259,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:1265,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1269,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/odf/descriptors.c:1271,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/descriptors.c:1273,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 72
    argCount: 2
    argNames:
    - cfg
    - bs
    argTypes:
    - GF_VVCConfig*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1277
      start: 1181
    functionDepth: 1
    functionLinenumber: 1181
    functionLinenumberEnd: 1277
    functionName: gf_odf_vvc_cfg_write_bs
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 3
    functionsReached:
    - gf_list_get
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_list_count
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_vvc_cfg_write_bs(GF_VVCConfig *cfg, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:1283,1
    - Dst: gf_odf_vvc_cfg_write_bs
      Src: /src/gpac/src/odf/descriptors.c:1286,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/descriptors.c:1288,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:1290,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - cfg
    - outData
    - outSize
    argTypes:
    - GF_VVCConfig*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1292
      start: 1279
    functionDepth: 2
    functionLinenumber: 1279
    functionLinenumberEnd: 1292
    functionName: gf_odf_vvc_cfg_write
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_content
    - gf_odf_vvc_cfg_write_bs
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_vvc_cfg_write(GF_VVCConfig *cfg, u8 **outData, u32
      *outSize)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_vvc_cfg_new
      Src: /src/gpac/src/odf/descriptors.c:1298,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1300,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1301,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1302,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1307,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1308,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1309,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1310,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1311,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1312,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1315,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1316,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1317,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1318,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/odf/descriptors.c:1319,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1320,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1321,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/descriptors.c:1324,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1326,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:1327,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/descriptors.c:1330,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1331,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1334,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1339,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1343,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/odf/descriptors.c:1347,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/odf/descriptors.c:1350,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/descriptors.c:1352,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1354,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1355,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:1356,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/odf/descriptors.c:1361,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/odf/descriptors.c:1366,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/odf/descriptors.c:1367,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/odf/descriptors.c:1368,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1371,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:1376,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:1378,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:1379,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1382,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1383,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1384,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:1395,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:1396,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:1399,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1400,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1405,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1411,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/descriptors.c:1412,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:1413,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:1414,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/odf/descriptors.c:1418,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:1421,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:1423,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:1424,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/descriptors.c:1429,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1431,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:1432,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:1433,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/descriptors.c:1436,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:1437,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 119
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1441
      start: 1294
    functionDepth: 2
    functionLinenumber: 1294
    functionLinenumberEnd: 1441
    functionName: GF_VVCConfig *gf_odf_vvc_cfg_read_bs(GF_BitStream *bs)
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_read_data
    - gf_list_new
    - gf_bs_read_u32
    - gf_odf_vvc_cfg_del
    - GF_SAFEALLOC
    - GF_LOG
    - gf_bs_available
    - gf_odf_vvc_cfg_new
    - gf_list_add
    - gf_bs_read_int
    - gf_bs_read_u8
    - gf_bs_read_u16
    - gf_malloc
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_VVCConfig *gf_odf_vvc_cfg_read_bs(GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:1446,1
    - Dst: gf_odf_vvc_cfg_read_bs
      Src: /src/gpac/src/odf/descriptors.c:1447,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:1448,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1450
      start: 1443
    functionDepth: 1
    functionLinenumber: 1443
    functionLinenumberEnd: 1450
    functionName: GF_VVCConfig *gf_odf_vvc_cfg_read(u8 *dsi, u32 dsi_size)
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_odf_vvc_cfg_read_bs
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_VVCConfig *gf_odf_vvc_cfg_read(u8 *dsi, u32 dsi_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:1456,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:1461,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1463
      start: 1452
    functionDepth: 1
    functionLinenumber: 1452
    functionLinenumberEnd: 1463
    functionName: GF_AV1Config *gf_odf_av1_cfg_new()
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AV1Config *gf_odf_av1_cfg_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:1469,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:1470,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1471,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/descriptors.c:1472,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1473,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/descriptors.c:1475,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1476,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_AV1Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1477
      start: 1465
    functionDepth: 1
    functionLinenumber: 1465
    functionLinenumberEnd: 1477
    functionName: gf_odf_av1_cfg_del
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 6
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_av1_cfg_del(GF_AV1Config *cfg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1483,1
    - Dst: gf_assert
      Src: /src/gpac/src/odf/descriptors.c:1484,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1485,1
    - Dst: gf_assert
      Src: /src/gpac/src/odf/descriptors.c:1486,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1487,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1488,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1489,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1490,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1491,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1492,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1493,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1494,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1495,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1496,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1497,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1498,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:1499,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:1500,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/descriptors.c:1501,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 2
    argNames:
    - cfg
    - bs
    argTypes:
    - GF_AV1Config*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1504
      start: 1479
    functionDepth: 1
    functionLinenumber: 1479
    functionLinenumberEnd: 1504
    functionName: gf_odf_av1_cfg_write_bs
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_assert
    - gf_bs_write_int
    - gf_list_count
    - gf_bs_write_data
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_av1_cfg_write_bs(GF_AV1Config *cfg, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:1509,1
    - Dst: gf_odf_av1_cfg_write_bs
      Src: /src/gpac/src/odf/descriptors.c:1512,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/descriptors.c:1514,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:1516,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - cfg
    - outData
    - outSize
    argTypes:
    - GF_AV1Config*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1518
      start: 1506
    functionDepth: 2
    functionLinenumber: 1506
    functionLinenumberEnd: 1518
    functionName: gf_odf_av1_cfg_write
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_content
    - gf_odf_av1_cfg_write_bs
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_av1_cfg_write(GF_AV1Config *cfg, u8 **outData, u32
      *outSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:1524,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1529
      start: 1520
    functionDepth: 1
    functionLinenumber: 1520
    functionLinenumberEnd: 1529
    functionName: GF_VPConfig *gf_odf_vp_cfg_new()
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_VPConfig *gf_odf_vp_cfg_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1537,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1541,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_VPConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1542
      start: 1531
    functionDepth: 0
    functionLinenumber: 1531
    functionLinenumberEnd: 1542
    functionName: gf_odf_vp_cfg_del
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 3
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_vp_cfg_del(GF_VPConfig *cfg)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1547,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1548,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1549,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1550,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1551,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1552,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1553,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1554,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:1558,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1561,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 3
    argNames:
    - cfg
    - bs
    - is_v0
    argTypes:
    - GF_VPConfig*
    - GF_BitStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1565
      start: 1544
    functionDepth: 1
    functionLinenumber: 1544
    functionLinenumberEnd: 1565
    functionName: gf_odf_vp_cfg_write_bs
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_vp_cfg_write_bs(GF_VPConfig *cfg, GF_BitStream *bs,
      Bool is_v0)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:1571,1
    - Dst: gf_odf_vp_cfg_write_bs
      Src: /src/gpac/src/odf/descriptors.c:1574,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/descriptors.c:1576,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:1578,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - cfg
    - outData
    - outSize
    - is_v0
    argTypes:
    - GF_VPConfig*
    - u8**
    - u32*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1580
      start: 1567
    functionDepth: 2
    functionLinenumber: 1567
    functionLinenumberEnd: 1580
    functionName: gf_odf_vp_cfg_write
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_content
    - gf_odf_vp_cfg_write_bs
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_vp_cfg_write(GF_VPConfig *cfg, u8 **outData, u32 *outSize,
      Bool is_v0)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_vp_cfg_new
      Src: /src/gpac/src/odf/descriptors.c:1585,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1587,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1588,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1590,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1591,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1592,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1594,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1595,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1596,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1601,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:1605,1
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:1606,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1611
      start: 1582
    functionDepth: 1
    functionLinenumber: 1582
    functionLinenumberEnd: 1611
    functionName: GF_VPConfig *gf_odf_vp_cfg_read_bs(GF_BitStream *bs, Bool is_v0)
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_odf_vp_cfg_del
    - GF_LOG
    - gf_odf_vp_cfg_new
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_VPConfig *gf_odf_vp_cfg_read_bs(GF_BitStream *bs, Bool
      is_v0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:1616,1
    - Dst: gf_odf_vp_cfg_read_bs
      Src: /src/gpac/src/odf/descriptors.c:1617,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:1618,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1620
      start: 1613
    functionDepth: 1
    functionLinenumber: 1613
    functionLinenumberEnd: 1620
    functionName: GF_VPConfig *gf_odf_vp_cfg_read(u8 *dsi, u32 dsi_size)
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_odf_vp_cfg_read_bs
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_VPConfig *gf_odf_vp_cfg_read(u8 *dsi, u32 dsi_size)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/descriptors.c:1630,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:1633,1
    - Dst: gf_odf_av1_cfg_new
      Src: /src/gpac/src/odf/descriptors.c:1635,1
    - Dst: gf_av1_init_state
      Src: /src/gpac/src/odf/descriptors.c:1636,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1639,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1640,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1641,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1642,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1643,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1644,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1645,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1646,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1647,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1648,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1649,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1651,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1652,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1654,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1656,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:1662,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:1663,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1664,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/descriptors.c:1673,1
    - Dst: gf_av1_parse_obu
      Src: /src/gpac/src/odf/descriptors.c:1675,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:1676,1
    - Dst: gf_assert
      Src: /src/gpac/src/odf/descriptors.c:1679,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/descriptors.c:1679,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:1680,1
    - Dst: av1_is_obu_header
      Src: /src/gpac/src/odf/descriptors.c:1682,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:1683,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:1685,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/descriptors.c:1687,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1689,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/odf/descriptors.c:1692,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/descriptors.c:1693,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:1696,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:1699,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/odf/descriptors.c:1704,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/descriptors.c:1705,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1706,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 73
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1711
      start: 1622
    functionDepth: 2
    functionLinenumber: 1622
    functionLinenumberEnd: 1711
    functionName: GF_AV1Config *gf_odf_av1_cfg_read_bs_size(GF_BitStream *bs, u32
      size)
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_read_data
    - gf_av1_parse_obu
    - gf_assert
    - gf_bs_seek
    - GF_SAFEALLOC
    - gf_odf_av1_cfg_new
    - GF_LOG
    - gf_bs_align
    - gf_av1_init_state
    - gf_bs_get_position
    - gf_av1_reset_state
    - av1_is_obu_header
    - gf_bs_read_int
    - gf_odf_av1_cfg_del
    - gf_list_add
    - gf_bs_available
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AV1Config *gf_odf_av1_cfg_read_bs_size(GF_BitStream *bs,
      u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_av1_cfg_read_bs_size
      Src: /src/gpac/src/odf/descriptors.c:1716,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1718
      start: 1713
    functionDepth: 0
    functionLinenumber: 1713
    functionLinenumberEnd: 1718
    functionName: GF_AV1Config *gf_odf_av1_cfg_read_bs(GF_BitStream *bs)
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_odf_av1_cfg_read_bs_size
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AV1Config *gf_odf_av1_cfg_read_bs(GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:1722,1
    - Dst: gf_odf_av1_cfg_read_bs
      Src: /src/gpac/src/odf/descriptors.c:1723,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:1724,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1726
      start: 1719
    functionDepth: 1
    functionLinenumber: 1719
    functionLinenumberEnd: 1726
    functionName: GF_AV1Config *gf_odf_av1_cfg_read(u8 *dsi, u32 dsi_size)
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_odf_av1_cfg_read_bs
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AV1Config *gf_odf_av1_cfg_read(u8 *dsi, u32 dsi_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:1734,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1737
      start: 1730
    functionDepth: 1
    functionLinenumber: 1730
    functionLinenumberEnd: 1737
    functionName: GF_AVS3VConfig *gf_odf_avs3v_cfg_new()
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AVS3VConfig *gf_odf_avs3v_cfg_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1743,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1744,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_AVS3VConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1745
      start: 1739
    functionDepth: 0
    functionLinenumber: 1739
    functionLinenumberEnd: 1745
    functionName: gf_odf_avs3v_cfg_del
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 2
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_avs3v_cfg_del(GF_AVS3VConfig *cfg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1750,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1751,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/descriptors.c:1752,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1753,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1754,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - cfg
    - bs
    argTypes:
    - GF_AVS3VConfig*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1757
      start: 1747
    functionDepth: 1
    functionLinenumber: 1747
    functionLinenumberEnd: 1757
    functionName: gf_odf_avs3v_cfg_write_bs
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_avs3v_cfg_write_bs(GF_AVS3VConfig *cfg, GF_BitStream
      *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:1763,1
    - Dst: gf_odf_avs3v_cfg_write_bs
      Src: /src/gpac/src/odf/descriptors.c:1766,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/descriptors.c:1768,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:1770,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - cfg
    - outData
    - outSize
    argTypes:
    - GF_AVS3VConfig*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1772
      start: 1759
    functionDepth: 2
    functionLinenumber: 1759
    functionLinenumberEnd: 1772
    functionName: gf_odf_avs3v_cfg_write
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_content
    - gf_odf_avs3v_cfg_write_bs
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_avs3v_cfg_write(GF_AVS3VConfig *cfg, u8 **outData,
      u32 *outSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_avs3v_cfg_new
      Src: /src/gpac/src/odf/descriptors.c:1777,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1779,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1780,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/descriptors.c:1781,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:1783,1
    - Dst: gf_odf_avs3v_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:1784,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/descriptors.c:1787,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1788,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1789,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1792
      start: 1774
    functionDepth: 1
    functionLinenumber: 1774
    functionLinenumberEnd: 1792
    functionName: GF_AVS3VConfig *gf_odf_avs3v_cfg_read_bs(GF_BitStream *bs)
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - GF_LOG
    - gf_odf_avs3v_cfg_new
    - gf_bs_read_int
    - gf_odf_avs3v_cfg_del
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AVS3VConfig *gf_odf_avs3v_cfg_read_bs(GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:1797,1
    - Dst: gf_odf_avs3v_cfg_read_bs
      Src: /src/gpac/src/odf/descriptors.c:1798,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:1799,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1801
      start: 1794
    functionDepth: 1
    functionLinenumber: 1794
    functionLinenumberEnd: 1801
    functionName: GF_AVS3VConfig *gf_odf_avs3v_cfg_read(u8 *dsi, u32 dsi_size)
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_odf_avs3v_cfg_read_bs
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AVS3VConfig *gf_odf_avs3v_cfg_read(u8 *dsi, u32 dsi_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:1808,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/odf/descriptors.c:1810,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/odf/descriptors.c:1811,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1812,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1813,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1814,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1815,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1816,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1817,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1818,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:1819,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/odf/descriptors.c:1822,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:1823,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1827
      start: 1804
    functionDepth: 1
    functionLinenumber: 1804
    functionLinenumberEnd: 1827
    functionName: GF_DOVIDecoderConfigurationRecord *gf_odf_dovi_cfg_read_bs(GF_BitStream
      *bs)
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_SAFEALLOC
    - GF_LOG
    - gf_bs_read_int
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_DOVIDecoderConfigurationRecord *gf_odf_dovi_cfg_read_bs(GF_BitStream
      *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:1832,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_DOVIDecoderConfigurationRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1833
      start: 1829
    functionDepth: 0
    functionLinenumber: 1829
    functionLinenumberEnd: 1833
    functionName: gf_odf_dovi_cfg_del
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 2
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_dovi_cfg_del(GF_DOVIDecoderConfigurationRecord *cfg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:1838,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:1839,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1840,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1841,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1842,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1843,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1844,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1845,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1846,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/odf/descriptors.c:1847,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/odf/descriptors.c:1848,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/odf/descriptors.c:1849,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/odf/descriptors.c:1850,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 2
    argNames:
    - cfg
    - bs
    argTypes:
    - GF_DOVIDecoderConfigurationRecord*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1852
      start: 1835
    functionDepth: 1
    functionLinenumber: 1835
    functionLinenumberEnd: 1852
    functionName: gf_odf_dovi_cfg_write_bs
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_bs_write_u8
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_dovi_cfg_write_bs(GF_DOVIDecoderConfigurationRecord
      *cfg, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1862,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1863,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1865,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1866,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1867,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1868,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1869,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1870,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1871,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1873,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1875,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1879,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1880,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1881,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1882,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1883,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1884,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1885,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 2
    argNames:
    - cfg
    - bs
    argTypes:
    - GF_AC3Config*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1888
      start: 1855
    functionDepth: 1
    functionLinenumber: 1855
    functionLinenumberEnd: 1888
    functionName: gf_odf_ac3_cfg_write_bs
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_ac3_cfg_write_bs(GF_AC3Config *cfg, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:1893,1
    - Dst: gf_odf_ac3_cfg_write_bs
      Src: /src/gpac/src/odf/descriptors.c:1894,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1897,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:1898,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:1899,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/descriptors.c:1901,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:1903,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - cfg
    - data
    - size
    argTypes:
    - GF_AC3Config*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1905
      start: 1890
    functionDepth: 2
    functionLinenumber: 1890
    functionLinenumberEnd: 1905
    functionName: gf_odf_ac3_cfg_write
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_bs_new
    - gf_bs_get_content
    - gf_odf_ac3_cfg_write_bs
    - gf_bs_write_int
    - gf_bs_del
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_ac3_cfg_write(GF_AC3Config *cfg, u8 **data, u32 *size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/odf/descriptors.c:1911,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1916,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1917,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1919,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1920,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1921,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1922,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1923,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1924,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1925,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1926,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1927,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1929,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1931,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1936,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1937,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1938,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1939,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1940,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1941,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1942,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 36
    argCount: 3
    argNames:
    - bs
    - is_ec3
    - cfg
    argTypes:
    - GF_BitStream*
    - Bool
    - GF_AC3Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1945
      start: 1907
    functionDepth: 1
    functionLinenumber: 1907
    functionLinenumberEnd: 1945
    functionName: gf_odf_ac3_cfg_parse_bs
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - memset
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_ac3_cfg_parse_bs(GF_BitStream *bs, Bool is_ec3, GF_AC3Config
      *cfg)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:1953,1
    - Dst: gf_odf_ac3_cfg_parse_bs
      Src: /src/gpac/src/odf/descriptors.c:1954,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/descriptors.c:1955,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1956,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:1957,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/odf/descriptors.c:1958,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:1960,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 4
    argNames:
    - dsi
    - dsi_len
    - is_ec3
    - cfg
    argTypes:
    - u8*
    - u32
    - Bool
    - GF_AC3Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1962
      start: 1947
    functionDepth: 2
    functionLinenumber: 1947
    functionLinenumberEnd: 1962
    functionName: gf_odf_ac3_cfg_parse
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_del
    - gf_bs_read_int
    - gf_odf_ac3_cfg_parse_bs
    - gf_bs_read_u8
    - gf_bs_available
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_ac3_cfg_parse(u8 *dsi, u32 dsi_len, Bool is_ec3, GF_AC3Config
      *cfg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - bs
    - ','
    - value
    - ','
    - nbits
    - ','
    - size
    - ','
    - mode
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1968
      start: 1964
    functionDepth: 0
    functionLinenumber: 1964
    functionLinenumberEnd: 1968
    functionName: GF_AC4_SSS
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GF_AC4_SSS(bs, value, nbits, size, mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - bs
    - ','
    - size
    - ','
    - mode
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1973
      start: 1969
    functionDepth: 0
    functionLinenumber: 1969
    functionLinenumberEnd: 1973
    functionName: GF_AC4_ALLIGN
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GF_AC4_ALLIGN(bs, size, mode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:1978,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/odf/descriptors.c:1980,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:1984,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:1987,1
    - Dst: MIN
      Src: /src/gpac/src/odf/descriptors.c:1989,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/odf/descriptors.c:1989,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/odf/descriptors.c:1989,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:1993,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:1994,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 4
    argNames:
    - info
    - bs
    - size
    - desc_mode
    argTypes:
    - GF_AC4AlternativeInfo*
    - GF_BitStream*
    - u64*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1997
      start: 1974
    functionDepth: 1
    functionLinenumber: 1974
    functionLinenumberEnd: 1997
    functionName: gf_odf_ac4_cfg_alternative_info
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - GF_AC4_SSS
    - GF_ARRAY_LENGTH
    - MIN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_ac4_cfg_alternative_info(GF_AC4AlternativeInfo *info,
      GF_BitStream *bs, u64 *size, u8 desc_mode)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2003,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2004,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2006,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2009,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2011,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2013,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2015,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2017,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2019,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2020,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2021,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2022,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 5
    argNames:
    - s
    - bs
    - b_channel_coded
    - size
    - desc_mode
    argTypes:
    - GF_AC4SubStream*
    - GF_BitStream*
    - u8
    - u64*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2025
      start: 1999
    functionDepth: 1
    functionLinenumber: 1999
    functionLinenumberEnd: 2025
    functionName: gf_odf_ac4_cfg_substream_dsi
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - GF_AC4_SSS
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_ac4_cfg_substream_dsi(GF_AC4SubStream *s, GF_BitStream
      *bs, u8 b_channel_coded, u64 *size, u8 desc_mode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2031,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2033,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2034,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2036,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2038,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 4
    argNames:
    - g
    - bs
    - size
    - desc_mode
    argTypes:
    - GF_AC4SubStreamGroupV1*
    - GF_BitStream*
    - u64*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2043
      start: 2027
    functionDepth: 1
    functionLinenumber: 2027
    functionLinenumberEnd: 2043
    functionName: gf_odf_ac4_cfg_content_type
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - GF_AC4_SSS
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_ac4_cfg_content_type(GF_AC4SubStreamGroupV1 *g, GF_BitStream
      *bs, u64 *size, u8 desc_mode)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2053,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2054,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2055,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2056,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:2059,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:2063,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:2065,1
    - Dst: gf_odf_ac4_cfg_substream_dsi
      Src: /src/gpac/src/odf/descriptors.c:2067,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:2069,1
    - Dst: gf_odf_ac4_cfg_content_type
      Src: /src/gpac/src/odf/descriptors.c:2072,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 4
    argNames:
    - g
    - bs
    - size
    - desc_mode
    argTypes:
    - GF_AC4SubStreamGroupV1*
    - GF_BitStream*
    - u64*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2074
      start: 2045
    functionDepth: 2
    functionLinenumber: 2045
    functionLinenumberEnd: 2074
    functionName: gf_odf_ac4_cfg_substream_group_dsi
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_new
    - GF_SAFEALLOC
    - gf_odf_ac4_cfg_substream_dsi
    - GF_AC4_SSS
    - gf_list_add
    - gf_odf_ac4_cfg_content_type
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_ac4_cfg_substream_group_dsi(GF_AC4SubStreamGroupV1 *g,
      GF_BitStream *bs, u64 *size, u8 desc_mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2078,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2079,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2080,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - bitr
    - bs
    - size
    - desc_mode
    argTypes:
    - GF_AC4BitrateDsi*
    - GF_BitStream*
    - u64*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2082
      start: 2076
    functionDepth: 1
    functionLinenumber: 2076
    functionLinenumberEnd: 2082
    functionName: gf_odf_ac4_cfg_bitrate_dsi
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - GF_AC4_SSS
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_ac4_cfg_bitrate_dsi(GF_AC4BitrateDsi *bitr, GF_BitStream
      *bs, u64 *size, u8 desc_mode)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2089,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2093,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2094,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2096,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2098,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2099,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2100,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2101,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2103,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2105,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2107,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2108,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2110,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2113,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2115,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2117,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2120,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2122,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2123,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2125,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:2130,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:2135,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:2136,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:2139,1
    - Dst: gf_odf_ac4_cfg_substream_group_dsi
      Src: /src/gpac/src/odf/descriptors.c:2142,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2145,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:2156,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:2158,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:2165,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:2166,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:2168,1
    - Dst: gf_odf_ac4_cfg_substream_group_dsi
      Src: /src/gpac/src/odf/descriptors.c:2170,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2174,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2176,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2180,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2181,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2184,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/odf/descriptors.c:2185,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/odf/descriptors.c:2185,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2186,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2187,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2190,1
    - Dst: gf_odf_ac4_cfg_bitrate_dsi
      Src: /src/gpac/src/odf/descriptors.c:2192,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2194,1
    - Dst: GF_AC4_ALLIGN
      Src: /src/gpac/src/odf/descriptors.c:2196,1
    - Dst: gf_odf_ac4_cfg_alternative_info
      Src: /src/gpac/src/odf/descriptors.c:2197,1
    - Dst: GF_AC4_ALLIGN
      Src: /src/gpac/src/odf/descriptors.c:2199,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2205,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2206,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2207,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2213,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2215,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2218,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 118
    argCount: 4
    argNames:
    - p
    - bs
    - size
    - desc_mode
    argTypes:
    - GF_AC4PresentationV1*
    - GF_BitStream*
    - u64*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2222
      start: 2084
    functionDepth: 3
    functionLinenumber: 2084
    functionLinenumberEnd: 2222
    functionName: gf_odf_ac4_cfg_presentation_v1_dsi
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_odf_ac4_cfg_substream_group_dsi
    - gf_list_get
    - gf_list_new
    - gf_odf_ac4_cfg_alternative_info
    - GF_SAFEALLOC
    - gf_bs_write_int
    - gf_list_add
    - GF_AC4_SSS
    - gf_bs_read_int
    - gf_odf_ac4_cfg_bitrate_dsi
    - GF_AC4_ALLIGN
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_ac4_cfg_presentation_v1_dsi(GF_AC4PresentationV1 *p,
      GF_BitStream *bs, u64 *size, u8 desc_mode)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2238,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2239,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2240,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2241,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:2246,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:2258,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:2261,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:2264,1
    - Dst: gf_odf_ac4_presentation_deep_copy
      Src: /src/gpac/src/odf/descriptors.c:2265,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:2270,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2277,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2279,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2281,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2282,1
    - Dst: GF_AC4_SSS
      Src: /src/gpac/src/odf/descriptors.c:2285,1
    - Dst: gf_odf_ac4_cfg_bitrate_dsi
      Src: /src/gpac/src/odf/descriptors.c:2291,1
    - Dst: GF_AC4_ALLIGN
      Src: /src/gpac/src/odf/descriptors.c:2292,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:2295,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:2300,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:2301,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:2303,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:2304,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:2306,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/descriptors.c:2310,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:2313,1
    - Dst: gf_odf_ac4_cfg_presentation_v1_dsi
      Src: /src/gpac/src/odf/descriptors.c:2315,1
    - Dst: gf_odf_ac4_cfg_presentation_v1_dsi
      Src: /src/gpac/src/odf/descriptors.c:2317,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/descriptors.c:2320,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/descriptors.c:2323,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:2324,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:2328,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:2331,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:2333,1
    - Dst: gf_odf_ac4_cfg_presentation_v1_dsi
      Src: /src/gpac/src/odf/descriptors.c:2335,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:2339,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/descriptors.c:2340,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:2342,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:2344,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/descriptors.c:2345,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/descriptors.c:2347,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/descriptors.c:2348,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:2350,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2351,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:2354,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:2358,1
    - Dst: gf_odf_ac4_cfg_presentation_v1_dsi
      Src: /src/gpac/src/odf/descriptors.c:2361,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 122
    argCount: 4
    argNames:
    - dsi
    - bs
    - size
    - desc_mode
    argTypes:
    - GF_AC4StreamInfo*
    - GF_BitStream*
    - u64*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2373
      start: 2226
    functionDepth: 4
    functionLinenumber: 2226
    functionLinenumberEnd: 2373
    functionName: gf_odf_ac4_cfg_dsi_v1
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - GF_SAFEALLOC
    - GF_AC4_SSS
    - gf_bs_available
    - gf_odf_ac4_cfg_presentation_v1_dsi
    - gf_list_get
    - gf_list_new
    - gf_bs_get_content
    - gf_list_add
    - gf_odf_ac4_cfg_bitrate_dsi
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_bs_del
    - gf_odf_ac4_presentation_deep_copy
    - gf_bs_read_int
    - GF_AC4_ALLIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_ac4_cfg_dsi_v1(GF_AC4StreamInfo *dsi, GF_BitStream *bs,
      u64 *size, u8 desc_mode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:2381,1
    - Dst: gf_odf_ac4_cfg_dsi_v1
      Src: /src/gpac/src/odf/descriptors.c:2384,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - cfg
    - bs
    argTypes:
    - GF_AC4Config*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2386
      start: 2375
    functionDepth: 5
    functionLinenumber: 2375
    functionLinenumberEnd: 2386
    functionName: gf_odf_ac4_cfg_write_bs
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_odf_ac4_cfg_dsi_v1
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_ac4_cfg_write_bs(GF_AC4Config *cfg, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:2391,1
    - Dst: gf_odf_ac4_cfg_write_bs
      Src: /src/gpac/src/odf/descriptors.c:2392,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/descriptors.c:2393,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:2394,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - cfg
    - data
    - size
    argTypes:
    - GF_AC4Config*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2396
      start: 2388
    functionDepth: 6
    functionLinenumber: 2388
    functionLinenumberEnd: 2396
    functionName: gf_odf_ac4_cfg_write
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_content
    - gf_odf_ac4_cfg_write_bs
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_ac4_cfg_write(GF_AC4Config *cfg, u8 **data, u32 *size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/descriptors.c:2402,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/descriptors.c:2403,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:2405,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/odf/descriptors.c:2408,1
    - Dst: gf_odf_ac4_cfg_dsi_v1
      Src: /src/gpac/src/odf/descriptors.c:2409,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - cfg
    argTypes:
    - GF_BitStream*
    - GF_AC4Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2413
      start: 2398
    functionDepth: 5
    functionLinenumber: 2398
    functionLinenumberEnd: 2413
    functionName: gf_odf_ac4_cfg_parse_bs
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_bs_seek
    - GF_LOG
    - gf_odf_ac4_cfg_dsi_v1
    - gf_bs_get_position
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_ac4_cfg_parse_bs(GF_BitStream *bs, GF_AC4Config *cfg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:2421,1
    - Dst: gf_odf_ac4_cfg_parse_bs
      Src: /src/gpac/src/odf/descriptors.c:2422,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:2423,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - dsi
    - dsi_len
    - cfg
    argTypes:
    - u8*
    - u32
    - GF_AC4Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2425
      start: 2415
    functionDepth: 6
    functionLinenumber: 2415
    functionLinenumberEnd: 2425
    functionName: gf_odf_ac4_cfg_parse
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_odf_ac4_cfg_parse_bs
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_ac4_cfg_parse(u8 *dsi, u32 dsi_len, GF_AC4Config *cfg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:2433,1
    - Dst: gf_odf_ac4_cfg_dsi_v1
      Src: /src/gpac/src/odf/descriptors.c:2436,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_AC4Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2439
      start: 2427
    functionDepth: 5
    functionLinenumber: 2427
    functionLinenumberEnd: 2439
    functionName: gf_odf_ac4_cfg_size
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_odf_ac4_cfg_dsi_v1
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_ac4_cfg_size(GF_AC4Config *cfg)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/odf/descriptors.c:2452,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:2458,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:2459,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:2460,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:2462,1
    - Dst: gf_odf_ac4_presentation_deep_copy
      Src: /src/gpac/src/odf/descriptors.c:2463,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:2464,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - GF_AC4Config*
    - GF_AC4Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2466
      start: 2441
    functionDepth: 1
    functionLinenumber: 2441
    functionLinenumberEnd: 2466
    functionName: gf_odf_ac4_cfg_deep_copy
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 3
    functionsReached:
    - gf_list_new
    - gf_list_get
    - GF_SAFEALLOC
    - memcpy
    - gf_list_count
    - gf_odf_ac4_presentation_deep_copy
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_ac4_cfg_deep_copy(GF_AC4Config *dst, GF_AC4Config
      *src)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/odf/descriptors.c:2478,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:2484,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:2485,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:2486,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:2488,1
    - Dst: memcpy
      Src: /src/gpac/src/odf/descriptors.c:2489,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:2490,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:2496,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:2497,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:2498,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:2500,1
    - Dst: memcpy
      Src: /src/gpac/src/odf/descriptors.c:2501,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:2502,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 2
    argNames:
    - pres_dst
    - pres_src
    argTypes:
    - GF_AC4PresentationV1*
    - GF_AC4PresentationV1*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2505
      start: 2468
    functionDepth: 1
    functionLinenumber: 2468
    functionLinenumberEnd: 2505
    functionName: gf_odf_ac4_presentation_deep_copy
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 2
    functionsReached:
    - gf_list_new
    - gf_list_get
    - GF_SAFEALLOC
    - memcpy
    - gf_list_count
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void gf_odf_ac4_presentation_deep_copy(GF_AC4PresentationV1 *pres_dst,
      GF_AC4PresentationV1 *pres_src)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:2521,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/odf/descriptors.c:2523,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/odf/descriptors.c:2527,1
    - Dst: gf_list_find
      Src: /src/gpac/src/odf/descriptors.c:2529,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:2530,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/descriptors.c:2533,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2536,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/odf/descriptors.c:2539,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:2542,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:2543,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2548,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/descriptors.c:2550,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2553,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/descriptors.c:2556,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/descriptors.c:2558,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 31
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_AC4Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2561
      start: 2507
    functionDepth: 1
    functionLinenumber: 2507
    functionLinenumberEnd: 2561
    functionName: gf_odf_ac4_cfg_clean_list
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_list_pop_back
    - gf_list_get
    - gf_list_find
    - gf_list_count
    - gf_list_add
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_ac4_cfg_clean_list(GF_AC4Config *cfg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_ac4_cfg_clean_list
      Src: /src/gpac/src/odf/descriptors.c:2567,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2568,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_AC4Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2569
      start: 2563
    functionDepth: 2
    functionLinenumber: 2563
    functionLinenumberEnd: 2569
    functionName: gf_odf_ac4_cfg_del
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_odf_ac4_cfg_clean_list
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_ac4_cfg_del(GF_AC4Config *cfg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/odf/descriptors.c:2574,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/odf/descriptors.c:2575,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/odf/descriptors.c:2576,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/odf/descriptors.c:2577,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/odf/descriptors.c:2578,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/odf/descriptors.c:2579,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/odf/descriptors.c:2580,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/odf/descriptors.c:2582,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/odf/descriptors.c:2583,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/descriptors.c:2584,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - bs
    - cfg
    argTypes:
    - GF_BitStream*
    - GF_OpusConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2587
      start: 2571
    functionDepth: 1
    functionLinenumber: 2571
    functionLinenumberEnd: 2587
    functionName: gf_odf_opus_cfg_parse_bs
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - memset
    - gf_bs_read_u16_le
    - gf_bs_read_u8
    - gf_bs_read_u32_le
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_opus_cfg_parse_bs(GF_BitStream *bs, GF_OpusConfig
      *cfg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:2595,1
    - Dst: gf_odf_opus_cfg_parse_bs
      Src: /src/gpac/src/odf/descriptors.c:2596,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:2597,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - dsi
    - dsi_len
    - cfg
    argTypes:
    - u8*
    - u32
    - GF_OpusConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2599
      start: 2589
    functionDepth: 2
    functionLinenumber: 2589
    functionLinenumberEnd: 2599
    functionName: gf_odf_opus_cfg_parse
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_odf_opus_cfg_parse_bs
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_opus_cfg_parse(u8 *dsi, u32 dsi_len, GF_OpusConfig
      *cfg)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:2605,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:2606,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/odf/descriptors.c:2607,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/odf/descriptors.c:2608,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/odf/descriptors.c:2609,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:2610,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:2612,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:2613,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/descriptors.c:2614,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - cfg
    - bs
    argTypes:
    - GF_OpusConfig*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2617
      start: 2601
    functionDepth: 1
    functionLinenumber: 2601
    functionLinenumberEnd: 2617
    functionName: gf_odf_opus_cfg_write_bs
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32_le
    - gf_bs_write_u16_le
    - gf_bs_write_data
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_opus_cfg_write_bs(GF_OpusConfig *cfg, GF_BitStream
      *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:2622,1
    - Dst: gf_odf_opus_cfg_write_bs
      Src: /src/gpac/src/odf/descriptors.c:2623,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/descriptors.c:2625,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:2626,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - cfg
    - data
    - size
    argTypes:
    - GF_OpusConfig*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2628
      start: 2619
    functionDepth: 2
    functionLinenumber: 2619
    functionLinenumberEnd: 2628
    functionName: gf_odf_opus_cfg_write
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 3
    functionsReached:
    - gf_bs_get_content
    - gf_odf_opus_cfg_write_bs
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_opus_cfg_write(GF_OpusConfig *cfg, u8 **data, u32
      *size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:2634,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:2638,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2640,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2644
      start: 2630
    functionDepth: 1
    functionLinenumber: 2630
    functionLinenumberEnd: 2644
    functionName: GF_IAConfig *gf_odf_iamf_cfg_new()
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_IAConfig *gf_odf_iamf_cfg_new()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/descriptors.c:2653,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:2655,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:2659,1
    - Dst: gf_odf_iamf_cfg_new
      Src: /src/gpac/src/odf/descriptors.c:2661,1
    - Dst: gf_iamf_init_state
      Src: /src/gpac/src/odf/descriptors.c:2662,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/odf/descriptors.c:2664,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:2666,1
    - Dst: gf_odf_iamf_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:2667,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2668,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/odf/descriptors.c:2673,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/descriptors.c:2681,1
    - Dst: gf_iamf_parse_obu
      Src: /src/gpac/src/odf/descriptors.c:2683,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:2684,1
    - Dst: gf_assert
      Src: /src/gpac/src/odf/descriptors.c:2687,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/descriptors.c:2687,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:2688,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:2690,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/descriptors.c:2692,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2694,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/odf/descriptors.c:2697,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/descriptors.c:2698,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:2701,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:2704,1
    - Dst: gf_iamf_reset_state
      Src: /src/gpac/src/odf/descriptors.c:2710,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/descriptors.c:2711,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2712,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 55
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2717
      start: 2646
    functionDepth: 1
    functionLinenumber: 2646
    functionLinenumberEnd: 2717
    functionName: GF_IAConfig *gf_odf_iamf_cfg_read_bs_size(GF_BitStream *bs, u32
      size)
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_read_data
    - gf_assert
    - gf_odf_iamf_cfg_del
    - GF_SAFEALLOC
    - gf_bs_seek
    - GF_LOG
    - gf_av1_leb128_read
    - gf_iamf_init_state
    - gf_odf_iamf_cfg_new
    - gf_bs_get_position
    - gf_iamf_parse_obu
    - gf_bs_align
    - gf_list_add
    - gf_bs_read_u8
    - gf_bs_available
    - gf_iamf_reset_state
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_IAConfig *gf_odf_iamf_cfg_read_bs_size(GF_BitStream *bs,
      u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_iamf_cfg_read_bs_size
      Src: /src/gpac/src/odf/descriptors.c:2721,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2722
      start: 2719
    functionDepth: 0
    functionLinenumber: 2719
    functionLinenumberEnd: 2722
    functionName: GF_IAConfig *gf_odf_iamf_cfg_read_bs(GF_BitStream *bs)
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_odf_iamf_cfg_read_bs_size
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_IAConfig *gf_odf_iamf_cfg_read_bs(GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:2727,1
    - Dst: gf_odf_iamf_cfg_read_bs
      Src: /src/gpac/src/odf/descriptors.c:2728,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:2729,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2731
      start: 2724
    functionDepth: 1
    functionLinenumber: 2724
    functionLinenumberEnd: 2731
    functionName: GF_IAConfig *gf_odf_iamf_cfg_read(u8 *dsi, u32 dsi_size)
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_odf_iamf_cfg_read_bs
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_IAConfig *gf_odf_iamf_cfg_read(u8 *dsi, u32 dsi_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:2737,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:2738,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2739,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/descriptors.c:2740,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2741,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/descriptors.c:2743,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2744,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_IAConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2745
      start: 2733
    functionDepth: 1
    functionLinenumber: 2733
    functionLinenumberEnd: 2745
    functionName: gf_odf_iamf_cfg_del
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 4
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_iamf_cfg_del(GF_IAConfig *cfg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:2754,1
    - Dst: gf_av1_leb128_write
      Src: /src/gpac/src/odf/descriptors.c:2755,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:2756,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:2757,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/descriptors.c:2758,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - cfg
    - bs
    argTypes:
    - GF_IAConfig*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2763
      start: 2747
    functionDepth: 1
    functionLinenumber: 2747
    functionLinenumberEnd: 2763
    functionName: gf_odf_iamf_cfg_write_bs
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_list_count
    - gf_bs_write_data
    - gf_av1_leb128_write
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_iamf_cfg_write_bs(GF_IAConfig *cfg, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/descriptors.c:2768,1
    - Dst: gf_odf_iamf_cfg_write_bs
      Src: /src/gpac/src/odf/descriptors.c:2771,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/descriptors.c:2773,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:2775,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - cfg
    - outData
    - outSize
    argTypes:
    - GF_IAConfig*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2777
      start: 2765
    functionDepth: 2
    functionLinenumber: 2765
    functionLinenumberEnd: 2777
    functionName: gf_odf_iamf_cfg_write
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_odf_iamf_cfg_write_bs
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_iamf_cfg_write(GF_IAConfig *cfg, u8 **outData, u32
      *outSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_av1_leb128_size
      Src: /src/gpac/src/odf/descriptors.c:2786,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_IAConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2792
      start: 2779
    functionDepth: 1
    functionLinenumber: 2779
    functionLinenumberEnd: 2792
    functionName: gf_odf_iamf_cfg_size
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_av1_leb128_size
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_iamf_cfg_size(GF_IAConfig *cfg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ind_buf
    - ','
    - indent
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 44
    functionName: OD_FORMAT_INDENT
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OD_FORMAT_INDENT( ind_buf, indent )
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_dump_od_update
      Src: /src/gpac/src/odf/odf_dump.c:49,1
    - Dst: gf_odf_dump_od_remove
      Src: /src/gpac/src/odf/odf_dump.c:51,1
    - Dst: gf_odf_dump_esd_update
      Src: /src/gpac/src/odf/odf_dump.c:53,1
    - Dst: gf_odf_dump_esd_remove
      Src: /src/gpac/src/odf/odf_dump.c:55,1
    - Dst: gf_odf_dump_ipmp_update
      Src: /src/gpac/src/odf/odf_dump.c:58,1
    - Dst: gf_odf_dump_ipmp_remove
      Src: /src/gpac/src/odf/odf_dump.c:60,1
    - Dst: gf_odf_dump_base_command
      Src: /src/gpac/src/odf/odf_dump.c:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 4
    argNames:
    - com
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_ODCom*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 68
    functionName: gf_odf_dump_com
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 0
    functionsReached:
    - gf_odf_dump_od_update
    - gf_odf_dump_ipmp_update
    - gf_odf_dump_esd_remove
    - gf_odf_dump_od_remove
    - gf_odf_dump_ipmp_remove
    - gf_odf_dump_esd_update
    - gf_odf_dump_base_command
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_dump_com(GF_ODCom *com, FILE *trace, u32 indent, Bool
      XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_codec_new
      Src: /src/gpac/src/odf/odf_dump.c:75,1
    - Dst: gf_odf_codec_set_au
      Src: /src/gpac/src/odf/odf_dump.c:76,1
    - Dst: gf_odf_codec_decode
      Src: /src/gpac/src/odf/odf_dump.c:77,1
    - Dst: gf_odf_codec_get_com
      Src: /src/gpac/src/odf/odf_dump.c:80,1
    - Dst: gf_odf_dump_com
      Src: /src/gpac/src/odf/odf_dump.c:83,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/odf/odf_dump.c:84,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/odf/odf_dump.c:86,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 5
    argNames:
    - data
    - dataLength
    - trace
    - indent
    - XMTDump
    argTypes:
    - char*
    - u32
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 72
    functionDepth: 2
    functionLinenumber: 72
    functionLinenumberEnd: 88
    functionName: gf_odf_dump_au
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 0
    functionsReached:
    - gf_odf_codec_decode
    - gf_odf_codec_get_com
    - gf_odf_com_del
    - gf_odf_codec_new
    - gf_odf_codec_set_au
    - gf_odf_codec_del
    - gf_odf_dump_com
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_au(char *data, u32 dataLength, FILE *trace, u32
      indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_dump.c:97,1
    - Dst: gf_odf_dump_com
      Src: /src/gpac/src/odf/odf_dump.c:98,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - commandList
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_List*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 91
    functionDepth: 2
    functionLinenumber: 91
    functionLinenumberEnd: 101
    functionName: gf_odf_dump_com_list
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_odf_dump_com
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_dump_com_list(GF_List *commandList, FILE *trace, u32
      indent, Bool XMTDump)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_dump_iod
      Src: /src/gpac/src/odf/odf_dump.c:109,1
    - Dst: gf_odf_dump_esd
      Src: /src/gpac/src/odf/odf_dump.c:111,1
    - Dst: gf_odf_dump_dcd
      Src: /src/gpac/src/odf/odf_dump.c:113,1
    - Dst: gf_odf_dump_slc
      Src: /src/gpac/src/odf/odf_dump.c:115,1
    - Dst: gf_odf_dump_isom_iod
      Src: /src/gpac/src/odf/odf_dump.c:117,1
    - Dst: gf_odf_dump_isom_od
      Src: /src/gpac/src/odf/odf_dump.c:119,1
    - Dst: gf_odf_dump_od
      Src: /src/gpac/src/odf/odf_dump.c:121,1
    - Dst: gf_odf_dump_esd_inc
      Src: /src/gpac/src/odf/odf_dump.c:123,1
    - Dst: gf_odf_dump_esd_ref
      Src: /src/gpac/src/odf/odf_dump.c:125,1
    - Dst: gf_odf_dump_cc
      Src: /src/gpac/src/odf/odf_dump.c:128,1
    - Dst: gf_odf_dump_cc_date
      Src: /src/gpac/src/odf/odf_dump.c:130,1
    - Dst: gf_odf_dump_cc_name
      Src: /src/gpac/src/odf/odf_dump.c:132,1
    - Dst: gf_odf_dump_ci
      Src: /src/gpac/src/odf/odf_dump.c:134,1
    - Dst: gf_odf_dump_exp_text
      Src: /src/gpac/src/odf/odf_dump.c:136,1
    - Dst: gf_odf_dump_pl_ext
      Src: /src/gpac/src/odf/odf_dump.c:138,1
    - Dst: gf_odf_dump_ipi_ptr
      Src: /src/gpac/src/odf/odf_dump.c:141,1
    - Dst: gf_odf_dump_ipmp
      Src: /src/gpac/src/odf/odf_dump.c:143,1
    - Dst: gf_odf_dump_ipmp_ptr
      Src: /src/gpac/src/odf/odf_dump.c:145,1
    - Dst: gf_odf_dump_kw
      Src: /src/gpac/src/odf/odf_dump.c:147,1
    - Dst: gf_odf_dump_lang
      Src: /src/gpac/src/odf/odf_dump.c:150,1
    - Dst: gf_odf_dump_oci_date
      Src: /src/gpac/src/odf/odf_dump.c:152,1
    - Dst: gf_odf_dump_oci_name
      Src: /src/gpac/src/odf/odf_dump.c:154,1
    - Dst: gf_odf_dump_pl_idx
      Src: /src/gpac/src/odf/odf_dump.c:156,1
    - Dst: gf_odf_dump_qos
      Src: /src/gpac/src/odf/odf_dump.c:158,1
    - Dst: gf_odf_dump_rating
      Src: /src/gpac/src/odf/odf_dump.c:160,1
    - Dst: gf_odf_dump_reg
      Src: /src/gpac/src/odf/odf_dump.c:162,1
    - Dst: gf_odf_dump_short_text
      Src: /src/gpac/src/odf/odf_dump.c:164,1
    - Dst: gf_odf_dump_smpte_camera
      Src: /src/gpac/src/odf/odf_dump.c:166,1
    - Dst: gf_odf_dump_sup_cid
      Src: /src/gpac/src/odf/odf_dump.c:168,1
    - Dst: gf_odf_dump_segment
      Src: /src/gpac/src/odf/odf_dump.c:170,1
    - Dst: gf_odf_dump_mediatime
      Src: /src/gpac/src/odf/odf_dump.c:172,1
    - Dst: gf_odf_dump_ipmp_tool_list
      Src: /src/gpac/src/odf/odf_dump.c:174,1
    - Dst: gf_odf_dump_ipmp_tool
      Src: /src/gpac/src/odf/odf_dump.c:176,1
    - Dst: gf_odf_dump_txtcfg
      Src: /src/gpac/src/odf/odf_dump.c:179,1
    - Dst: gf_odf_dump_muxinfo
      Src: /src/gpac/src/odf/odf_dump.c:181,1
    - Dst: gf_odf_dump_bifs_cfg
      Src: /src/gpac/src/odf/odf_dump.c:183,1
    - Dst: gf_odf_dump_laser_cfg
      Src: /src/gpac/src/odf/odf_dump.c:185,1
    - Dst: gf_odf_dump_ui_cfg
      Src: /src/gpac/src/odf/odf_dump.c:187,1
    - Dst: gf_odf_dump_aux_vid
      Src: /src/gpac/src/odf/odf_dump.c:189,1
    - Dst: gf_odf_dump_default
      Src: /src/gpac/src/odf/odf_dump.c:191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 86
    argCount: 4
    argNames:
    - desc
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_Descriptor*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 194
    functionName: gf_odf_dump_desc
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 4
    functionsReached:
    - gf_odf_dump_od
    - gf_odf_dump_iod
    - gf_odf_dump_laser_cfg
    - gf_odf_dump_cc
    - gf_odf_dump_mediatime
    - gf_odf_dump_ci
    - gf_odf_dump_exp_text
    - gf_odf_dump_oci_date
    - gf_odf_dump_muxinfo
    - gf_odf_dump_slc
    - gf_odf_dump_rating
    - gf_odf_dump_default
    - gf_odf_dump_isom_iod
    - gf_odf_dump_smpte_camera
    - gf_odf_dump_ipmp
    - gf_odf_dump_kw
    - gf_odf_dump_lang
    - gf_odf_dump_isom_od
    - gf_odf_dump_oci_name
    - gf_odf_dump_esd
    - gf_odf_dump_cc_date
    - gf_odf_dump_esd_inc
    - gf_odf_dump_cc_name
    - gf_odf_dump_pl_idx
    - gf_odf_dump_esd_ref
    - gf_odf_dump_ipmp_ptr
    - gf_odf_dump_ui_cfg
    - gf_odf_dump_ipi_ptr
    - gf_odf_dump_qos
    - gf_odf_dump_aux_vid
    - gf_odf_dump_txtcfg
    - gf_odf_dump_bifs_cfg
    - gf_odf_dump_reg
    - gf_odf_dump_segment
    - gf_odf_dump_dcd
    - gf_odf_dump_ipmp_tool
    - gf_odf_dump_sup_cid
    - gf_odf_dump_short_text
    - gf_odf_dump_pl_ext
    - gf_odf_dump_ipmp_tool_list
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_dump_desc(GF_Descriptor *desc, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: OD_FORMAT_INDENT
      Src: /src/gpac/src/odf/odf_dump.c:201,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:204,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:206,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - trace
    - descName
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 198
    functionDepth: 1
    functionLinenumber: 198
    functionLinenumberEnd: 208
    functionName: StartDescDump
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 0
    functionsReached:
    - OD_FORMAT_INDENT
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void StartDescDump(FILE *trace, const char *descName, u32 indent, Bool
      XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: OD_FORMAT_INDENT
      Src: /src/gpac/src/odf/odf_dump.c:213,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:216,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:218,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - trace
    - descName
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 220
    functionName: EndDescDump
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 0
    functionsReached:
    - OD_FORMAT_INDENT
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void EndDescDump(FILE *trace, const char *descName, u32 indent, Bool
      XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: OD_FORMAT_INDENT
      Src: /src/gpac/src/odf/odf_dump.c:228,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:229,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - trace
    - eltName
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 231
    functionName: StartSubElement
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 0
    functionsReached:
    - OD_FORMAT_INDENT
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void StartSubElement(FILE *trace, const char *eltName, u32 indent,
      Bool XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:236,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - trace
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 237
    functionName: EndSubElement
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void EndSubElement(FILE *trace, u32 indent, Bool XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:241,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - trace
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 239
    functionDepth: 1
    functionLinenumber: 239
    functionLinenumberEnd: 242
    functionName: EndAttributes
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 25
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void EndAttributes(FILE *trace, u32 indent, Bool XMTDump)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: OD_FORMAT_INDENT
      Src: /src/gpac/src/odf/odf_dump.c:247,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:250,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:252,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:254,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 5
    argNames:
    - trace
    - attName
    - indent
    - XMTDump
    - IsList
    argTypes:
    - FILE*
    - char*
    - u32
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 244
    functionDepth: 1
    functionLinenumber: 244
    functionLinenumberEnd: 256
    functionName: StartElement
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 26
    functionsReached:
    - OD_FORMAT_INDENT
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void StartElement(FILE *trace, const char *attName, u32 indent, Bool
      XMTDump, Bool IsList)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: OD_FORMAT_INDENT
      Src: /src/gpac/src/odf/odf_dump.c:261,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:263,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:265,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 5
    argNames:
    - trace
    - attName
    - indent
    - XMTDump
    - IsList
    argTypes:
    - FILE*
    - char*
    - u32
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 258
    functionDepth: 1
    functionLinenumber: 258
    functionLinenumberEnd: 267
    functionName: EndElement
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 24
    functionsReached:
    - OD_FORMAT_INDENT
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void EndElement(FILE *trace, const char *attName, u32 indent, Bool
      XMTDump, Bool IsList)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: OD_FORMAT_INDENT
      Src: /src/gpac/src/odf/odf_dump.c:272,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:274,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:276,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - trace
    - attName
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 269
    functionDepth: 1
    functionLinenumber: 269
    functionLinenumberEnd: 278
    functionName: StartAttribute
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 12
    functionsReached:
    - OD_FORMAT_INDENT
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void StartAttribute(FILE *trace, const char *attName, u32 indent, Bool
      XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:282,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:284,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - trace
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 286
    functionName: EndAttribute
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 9
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void EndAttribute(FILE *trace, u32 indent, Bool XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:291,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:292,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:293,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - trace
    - attName
    - val
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 288
    functionDepth: 1
    functionLinenumber: 288
    functionLinenumberEnd: 294
    functionName: DumpInt
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 17
    functionsReached:
    - StartAttribute
    - EndAttribute
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void DumpInt(FILE *trace, const char *attName, u32  val, u32 indent,
      Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:298,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:299,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:300,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 5
    argNames:
    - trace
    - attName
    - val
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 296
    functionDepth: 1
    functionLinenumber: 296
    functionLinenumberEnd: 301
    functionName: DumpIntForce
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 0
    functionsReached:
    - StartAttribute
    - EndAttribute
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void DumpIntForce(FILE *trace, const char *attName, u32  val, u32 indent,
      Bool XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:305,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:307,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:309,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:311,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 6
    argNames:
    - trace
    - attName
    - val
    - indent
    - XMTDump
    - single_byte
    argTypes:
    - FILE*
    - char*
    - u32
    - u32
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 303
    functionDepth: 1
    functionLinenumber: 303
    functionLinenumberEnd: 312
    functionName: DumpIntHex
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 0
    functionsReached:
    - StartAttribute
    - EndAttribute
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void DumpIntHex(FILE *trace, const char *attName, u32  val, u32 indent,
      Bool XMTDump, Bool single_byte)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:317,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:318,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 5
    argNames:
    - trace
    - attName
    - val
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - Float
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 315
    functionDepth: 1
    functionLinenumber: 315
    functionLinenumberEnd: 320
    functionName: DumpFloat
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 0
    functionsReached:
    - StartAttribute
    - EndAttribute
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void DumpFloat(FILE *trace, const char *attName, Float val, u32 indent,
      Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:324,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:325,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 5
    argNames:
    - trace
    - attName
    - val
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - Double
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 322
    functionDepth: 1
    functionLinenumber: 322
    functionLinenumberEnd: 327
    functionName: DumpDouble
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 0
    functionsReached:
    - StartAttribute
    - EndAttribute
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void DumpDouble(FILE *trace, const char *attName, Double val, u32 indent,
      Bool XMTDump)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:332,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:333,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:337,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:339,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:341,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 5
    argNames:
    - trace
    - name
    - data
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 328
    functionDepth: 1
    functionLinenumber: 328
    functionLinenumberEnd: 342
    functionName: DumpBin128
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 2
    functionsReached:
    - StartAttribute
    - EndAttribute
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void DumpBin128(FILE *trace, const char *name, char *data, u32 indent,
      Bool XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:350,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:351,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:352,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - trace
    - attName
    - val
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 346
    functionDepth: 1
    functionLinenumber: 346
    functionLinenumberEnd: 353
    functionName: DumpBool
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 6
    functionsReached:
    - StartAttribute
    - EndAttribute
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void DumpBool(FILE *trace, const char *attName, u32  val, u32 indent,
      Bool XMTDump)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:358,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:359,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:360,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:361,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:362,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 5
    argNames:
    - trace
    - attName
    - val
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 355
    functionDepth: 1
    functionLinenumber: 355
    functionLinenumberEnd: 363
    functionName: DumpString
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 0
    functionsReached:
    - StartAttribute
    - EndAttribute
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void DumpString(FILE *trace, const char *attName, char *val, u32 indent,
      Bool XMTDump)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:369,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:370,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:372,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:373,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:375,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 6
    argNames:
    - trace
    - name
    - data
    - dataLength
    - indent
    - XMTDump
    argTypes:
    - FILE*
    - char*
    - char*
    - u64
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 365
    functionDepth: 1
    functionLinenumber: 365
    functionLinenumberEnd: 376
    functionName: DumpData
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 4
    functionsReached:
    - StartAttribute
    - EndAttribute
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void DumpData(FILE *trace, const char *name, char *data, u64 dataLength,
      u32 indent, Bool XMTDump)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_dump.c:383,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:385,1
    - Dst: OD_FORMAT_INDENT
      Src: /src/gpac/src/odf/odf_dump.c:387,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_dump.c:389,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:391,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/odf/odf_dump.c:392,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:395,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 6
    argNames:
    - list
    - trace
    - indent
    - ListName
    - XMTDump
    - no_skip_empty
    argTypes:
    - GF_List*
    - FILE*
    - u32
    - char*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 378
    functionDepth: 2
    functionLinenumber: 378
    functionLinenumberEnd: 397
    functionName: DumpDescList
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_fprintf
    - StartElement
    - gf_list_count
    - EndElement
    - gf_odf_dump_desc
    - OD_FORMAT_INDENT
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpDescList(GF_List *list, FILE *trace, u32 indent, const char
      *ListName, Bool XMTDump, Bool no_skip_empty)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_dump.c:407,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_dump.c:410,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:415,1
    - Dst: OD_FORMAT_INDENT
      Src: /src/gpac/src/odf/odf_dump.c:417,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_dump.c:419,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:422,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/odf/odf_dump.c:423,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:427,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 6
    argNames:
    - list
    - trace
    - indent
    - ListName
    - XMTDump
    - tag_only
    argTypes:
    - GF_List*
    - FILE*
    - u32
    - char*
    - Bool
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 400
    functionDepth: 2
    functionLinenumber: 400
    functionLinenumberEnd: 429
    functionName: DumpDescListFilter
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_fprintf
    - StartElement
    - gf_list_count
    - EndElement
    - gf_odf_dump_desc
    - OD_FORMAT_INDENT
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpDescListFilter(GF_List *list, FILE *trace, u32 indent, const
      char *ListName, Bool XMTDump, u8 tag_only)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:433,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:436,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:438,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:439,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:440,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:442,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:443,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:446,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:448,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:450,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:451,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:452,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:453,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:454,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:455,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:457,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:460,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:461,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:462,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:466,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:470,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:471,1
    - Dst: DumpDescListFilter
      Src: /src/gpac/src/odf/odf_dump.c:472,1
    - Dst: DumpDescListFilter
      Src: /src/gpac/src/odf/odf_dump.c:473,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:475,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:478,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/odf/odf_dump.c:479,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:480,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:485,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:488,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 47
    argCount: 4
    argNames:
    - iod
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_InitialObjectDescriptor*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 431
    functionDepth: 3
    functionLinenumber: 431
    functionLinenumberEnd: 490
    functionName: gf_odf_dump_iod
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - gf_odf_dump_desc
    - DumpString
    - DumpBool
    - gf_fprintf
    - StartElement
    - EndAttributes
    - StartSubElement
    - EndAttribute
    - DumpInt
    - EndSubElement
    - DumpDescList
    - EndElement
    - EndDescDump
    - StartAttribute
    - DumpDescListFilter
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_iod(GF_InitialObjectDescriptor *iod, FILE *trace,
      u32 indent, Bool XMTDump)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:496,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:499,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:501,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:502,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:503,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:505,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:506,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:508,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:512,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:513,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:514,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:518,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:519,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:520,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:523,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:524,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:527,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:530,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:531,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:532,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:535,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/odf/odf_dump.c:536,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:537,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:540,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/odf/odf_dump.c:541,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:542,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:544,1
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:545,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:546,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:547,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:548,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:551,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/odf/odf_dump.c:552,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:553,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:556,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:557,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:560,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/odf/odf_dump.c:561,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:562,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:565,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/odf/odf_dump.c:566,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:567,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:571,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/odf/odf_dump.c:572,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:573,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_dump.c:578,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_dump.c:580,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:586,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/odf/odf_dump.c:589,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/odf/odf_dump.c:591,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:593,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/odf/odf_dump.c:594,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:595,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:600,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 97
    argCount: 4
    argNames:
    - esd
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_ESD*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 492
    functionDepth: 3
    functionLinenumber: 492
    functionLinenumberEnd: 602
    functionName: gf_odf_dump_esd
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - gf_list_insert
    - gf_odf_dump_desc
    - DumpString
    - gf_fprintf
    - StartElement
    - EndAttributes
    - StartSubElement
    - EndAttribute
    - DumpInt
    - EndSubElement
    - EndElement
    - DumpDescList
    - EndDescDump
    - StartAttribute
    - gf_list_enum
    - StartDescDump
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_esd(GF_ESD *esd, FILE *trace, u32 indent, Bool XMTDump)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:607,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:611,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:612,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:614,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:615,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:616,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_dump.c:618,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:620,1
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:623,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:624,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:625,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_dump.c:627,1
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:628,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:629,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:630,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:631,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:632,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:633,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:635,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:637,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:641,1
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:643,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:644,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:645,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:647,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:648,1
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:653,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:656,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:657,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:659,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:665,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:669,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 62
    argCount: 4
    argNames:
    - dsi
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_BIFSConfig*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 604
    functionDepth: 2
    functionLinenumber: 604
    functionLinenumberEnd: 671
    functionName: gf_odf_dump_bifs_cfg
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - DumpString
    - DumpBool
    - gf_list_count
    - EndAttributes
    - DumpInt
    - EndSubElement
    - EndDescDump
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_bifs_cfg(GF_BIFSConfig *dsi, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/odf_dump.c:678,1
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:680,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:684,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:684,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:685,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:685,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:687,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:687,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:688,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:688,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:691,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:691,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:693,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/odf_dump.c:695,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:700,1
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:702,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:703,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:703,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:704,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:706,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:707,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:707,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:710,1
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:714,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:717,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:717,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:718,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:718,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:720,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:727,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:731,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/odf_dump.c:733,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 47
    argCount: 5
    argNames:
    - dsi
    - trace
    - indent
    - XMTDump
    - oti
    argTypes:
    - GF_DefaultDescriptor*
    - FILE*
    - u32
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 673
    functionDepth: 2
    functionLinenumber: 673
    functionLinenumberEnd: 735
    functionName: DumpRawBIFSConfig
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 0
    functionsReached:
    - DumpBool
    - gf_bs_new
    - gf_bs_del
    - EndAttributes
    - DumpInt
    - gf_bs_read_int
    - EndSubElement
    - EndDescDump
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpRawBIFSConfig(GF_DefaultDescriptor *dsi, FILE *trace, u32
      indent, Bool XMTDump, u32 oti)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:739,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:743,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:744,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:745,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:746,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:747,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:748,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:749,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:750,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:751,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 4
    argNames:
    - dsi
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_LASERConfig*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 737
    functionDepth: 1
    functionLinenumber: 737
    functionLinenumberEnd: 753
    functionName: gf_odf_dump_laser_cfg
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_laser_cfg(GF_LASERConfig *dsi, FILE *trace, u32
      indent, Bool XMTDump)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:762,1
    - Dst: DumpIntHex
      Src: /src/gpac/src/odf/odf_dump.c:764,1
    - Dst: DumpIntHex
      Src: /src/gpac/src/odf/odf_dump.c:765,1
    - Dst: DumpIntHex
      Src: /src/gpac/src/odf/odf_dump.c:766,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:767,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:768,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:769,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:770,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:771,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:772,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:773,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:774,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:776,1
    - Dst: OD_FORMAT_INDENT
      Src: /src/gpac/src/odf/odf_dump.c:778,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_dump.c:780,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_dump.c:784,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:785,1
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:786,1
    - Dst: DumpIntHex
      Src: /src/gpac/src/odf/odf_dump.c:788,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:789,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:790,1
    - Dst: DumpIntHex
      Src: /src/gpac/src/odf/odf_dump.c:791,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:792,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:793,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:794,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:795,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:796,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:797,1
    - Dst: DumpIntHex
      Src: /src/gpac/src/odf/odf_dump.c:798,1
    - Dst: strcpy
      Src: /src/gpac/src/odf/odf_dump.c:799,1
    - Dst: strcat
      Src: /src/gpac/src/odf/odf_dump.c:800,1
    - Dst: strcat
      Src: /src/gpac/src/odf/odf_dump.c:801,1
    - Dst: strcat
      Src: /src/gpac/src/odf/odf_dump.c:802,1
    - Dst: strcat
      Src: /src/gpac/src/odf/odf_dump.c:803,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_dump.c:804,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:804,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:807,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:808,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:812,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:816,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:819,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 63
    argCount: 4
    argNames:
    - desc
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_TextConfig*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 821
      start: 756
    functionDepth: 2
    functionLinenumber: 756
    functionLinenumberEnd: 821
    functionName: gf_odf_dump_txtcfg
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 2
    functionsReached:
    - strcat
    - gf_list_get
    - DumpString
    - gf_fprintf
    - DumpIntHex
    - strcpy
    - StartElement
    - gf_list_count
    - DumpInt
    - EndElement
    - EndDescDump
    - StartDescDump
    - OD_FORMAT_INDENT
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_dump_txtcfg(GF_TextConfig *desc, FILE *trace, u32
      indent, Bool XMTDump)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:828,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:830,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_dump.c:832,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:835,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:837,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_dump.c:840,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/odf_dump.c:842,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:844,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:845,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:846,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:848,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:850,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:851,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:852,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:852,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:853,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_dump.c:855,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:856,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_dump.c:857,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:857,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:858,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:861,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:862,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/odf_dump.c:863,1
    - Dst: DumpData
      Src: /src/gpac/src/odf/odf_dump.c:865,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:870,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:871,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 4
    argNames:
    - uid
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_UIConfig*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 873
      start: 823
    functionDepth: 2
    functionLinenumber: 823
    functionLinenumberEnd: 873
    functionName: gf_odf_dump_ui_cfg
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_data
    - DumpString
    - gf_bs_new
    - gf_fprintf
    - DumpData
    - gf_bs_del
    - EndAttributes
    - EndAttribute
    - gf_bs_read_int
    - stricmp
    - EndDescDump
    - StartAttribute
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_ui_cfg(GF_UIConfig *uid, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/odf_dump.c:882,1
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:884,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:886,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:887,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:889,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_dump.c:891,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/odf_dump.c:891,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:892,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:894,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:895,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:896,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/odf_dump.c:898,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_dump.c:900,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:903,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:904,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:905,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:907,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:909,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:910,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_dump.c:911,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:911,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:912,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_dump.c:914,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:915,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_dump.c:916,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:916,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:917,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:920,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:921,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/odf_dump.c:924,1
    - Dst: DumpData
      Src: /src/gpac/src/odf/odf_dump.c:925,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:930,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:931,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/odf_dump.c:932,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 54
    argCount: 5
    argNames:
    - dsi
    - trace
    - indent
    - XMTDump
    - oti
    argTypes:
    - GF_DefaultDescriptor*
    - FILE*
    - u32
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 934
      start: 875
    functionDepth: 2
    functionLinenumber: 875
    functionLinenumberEnd: 934
    functionName: DumpRawUIConfig
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - EndDescDump
    - DumpString
    - gf_bs_new
    - gf_fprintf
    - DumpData
    - gf_bs_get_position
    - gf_bs_del
    - EndAttributes
    - EndAttribute
    - gf_bs_read_int
    - stricmp
    - gf_bs_available
    - StartAttribute
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpRawUIConfig(GF_DefaultDescriptor *dsi, FILE *trace, u32
      indent, Bool XMTDump, u32 oti)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: DumpRawBIFSConfig
      Src: /src/gpac/src/odf/odf_dump.c:940,1
    - Dst: DumpRawUIConfig
      Src: /src/gpac/src/odf/odf_dump.c:943,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/odf/odf_dump.c:946,1
    - Dst: gf_odf_get_text_config
      Src: /src/gpac/src/odf/odf_dump.c:947,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/odf/odf_dump.c:948,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/odf/odf_dump.c:949,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/odf/odf_dump.c:955,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 6
    argNames:
    - dsi
    - trace
    - indent
    - XMTDump
    - streamType
    - oti
    argTypes:
    - GF_DefaultDescriptor*
    - FILE*
    - u32
    - Bool
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 956
      start: 936
    functionDepth: 5
    functionLinenumber: 936
    functionLinenumberEnd: 956
    functionName: OD_DumpDSI
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 0
    functionsReached:
    - DumpRawUIConfig
    - gf_odf_desc_del
    - gf_odf_desc_new
    - DumpRawBIFSConfig
    - gf_odf_get_text_config
    - gf_odf_dump_desc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err OD_DumpDSI(GF_DefaultDescriptor *dsi, FILE *trace, u32 indent,
      Bool XMTDump, u32 streamType, u32 oti)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:960,1
    - Dst: DumpIntForce
      Src: /src/gpac/src/odf/odf_dump.c:963,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:964,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:965,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:966,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:967,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:968,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:969,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:974,1
    - Dst: OD_DumpDSI
      Src: /src/gpac/src/odf/odf_dump.c:975,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:976,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:979,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/odf/odf_dump.c:980,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:981,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:984,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:986,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 27
    argCount: 4
    argNames:
    - dcd
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_DecoderConfig*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 989
      start: 958
    functionDepth: 6
    functionLinenumber: 958
    functionLinenumberEnd: 989
    functionName: gf_odf_dump_dcd
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - gf_odf_dump_desc
    - StartElement
    - DumpIntForce
    - EndAttributes
    - DumpDescList
    - DumpInt
    - OD_DumpDSI
    - EndElement
    - EndDescDump
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_dcd(GF_DecoderConfig *dcd, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:994,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:995,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:999,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1000,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1001,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1003,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:1006,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:1007,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:1008,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:1009,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:1010,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:1011,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:1012,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1013,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1014,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1015,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1016,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1017,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1018,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1019,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1020,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1021,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1023,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1027,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1028,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1029,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1030,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1031,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1034,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1035,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1036,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1037,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:1040,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1043,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 52
    argCount: 4
    argNames:
    - sl
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_SLConfig*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1045
      start: 991
    functionDepth: 2
    functionLinenumber: 991
    functionLinenumberEnd: 1045
    functionName: gf_odf_dump_slc
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - DumpBool
    - EndAttributes
    - StartSubElement
    - DumpInt
    - EndSubElement
    - EndElement
    - EndDescDump
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_slc(GF_SLConfig *sl, FILE *trace, u32 indent, Bool
      XMTDump)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1050,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1053,1
    - Dst: DumpData
      Src: /src/gpac/src/odf/odf_dump.c:1054,1
    - Dst: DumpData
      Src: /src/gpac/src/odf/odf_dump.c:1056,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1060,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1062,1
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1065,1
    - Dst: DumpData
      Src: /src/gpac/src/odf/odf_dump.c:1067,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1069,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 4
    argNames:
    - dd
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_DefaultDescriptor*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1072
      start: 1047
    functionDepth: 2
    functionLinenumber: 1047
    functionLinenumberEnd: 1072
    functionName: gf_odf_dump_default
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - DumpString
    - DumpData
    - EndSubElement
    - EndDescDump
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_default(GF_DefaultDescriptor *dd, FILE *trace, u32
      indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1077,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1079,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1081,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1082,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - esd_inc
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_ES_ID_Inc*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1084
      start: 1075
    functionDepth: 2
    functionLinenumber: 1075
    functionLinenumberEnd: 1084
    functionName: gf_odf_dump_esd_inc
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - EndDescDump
    - EndAttributes
    - StartDescDump
    - DumpInt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_esd_inc(GF_ES_ID_Inc *esd_inc, FILE *trace, u32
      indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1088,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1090,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1092,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1093,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - esd_ref
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_ES_ID_Ref*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1095
      start: 1086
    functionDepth: 2
    functionLinenumber: 1086
    functionLinenumberEnd: 1095
    functionName: gf_odf_dump_esd_ref
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - EndDescDump
    - EndAttributes
    - StartDescDump
    - DumpInt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_esd_ref(GF_ES_ID_Ref *esd_ref, FILE *trace, u32
      indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1101,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1102,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1103,1
    - Dst: DumpData
      Src: /src/gpac/src/odf/odf_dump.c:1104,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1105,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - ccd
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_CCDescriptor*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1108
      start: 1099
    functionDepth: 2
    functionLinenumber: 1099
    functionLinenumberEnd: 1108
    functionName: gf_odf_dump_cc
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - DumpData
    - EndAttributes
    - DumpInt
    - EndDescDump
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_cc(GF_CCDescriptor *ccd, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1112,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1113,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1114,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - cdd
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_CC_Date*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1117
      start: 1110
    functionDepth: 2
    functionLinenumber: 1110
    functionLinenumberEnd: 1117
    functionName: gf_odf_dump_cc_date
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - EndDescDump
    - EndAttributes
    - StartDescDump
    - DumpString
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_cc_date(GF_CC_Date *cdd, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1124,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1125,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_dump.c:1128,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1129,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1130,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:1131,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1132,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1133,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1136,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 4
    argNames:
    - cnd
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_CC_Name*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1138
      start: 1119
    functionDepth: 2
    functionLinenumber: 1119
    functionLinenumberEnd: 1138
    functionName: gf_odf_dump_cc_name
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - DumpString
    - DumpBool
    - EndAttributes
    - StartSubElement
    - DumpInt
    - EndSubElement
    - EndDescDump
    - gf_list_enum
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_cc_name(GF_CC_Name *cnd, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1142,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:1143,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1144,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1147,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1148,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1149,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1152,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1153,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1154,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1155,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1159,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 4
    argNames:
    - cid
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_CIDesc*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1161
      start: 1140
    functionDepth: 2
    functionLinenumber: 1140
    functionLinenumberEnd: 1161
    functionName: gf_odf_dump_ci
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - DumpString
    - DumpBool
    - EndAttributes
    - StartSubElement
    - DumpInt
    - EndSubElement
    - EndDescDump
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_ci(GF_CIDesc *cid, FILE *trace, u32 indent, Bool
      XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1168,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1170,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:1171,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1172,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1173,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_dump.c:1175,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_dump.c:1177,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_dump.c:1178,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1180,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1181,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1182,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1183,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1186,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 4
    argNames:
    - etd
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_ExpandedTextual*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1188
      start: 1164
    functionDepth: 2
    functionLinenumber: 1164
    functionLinenumberEnd: 1188
    functionName: gf_odf_dump_exp_text
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - DumpString
    - DumpBool
    - gf_list_count
    - EndAttributes
    - StartSubElement
    - DumpInt
    - EndSubElement
    - EndDescDump
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_exp_text(GF_ExpandedTextual *etd, FILE *trace, u32
      indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1192,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1194,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1195,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1196,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1197,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1198,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1199,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1200,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 4
    argNames:
    - pld
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_PLExt*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1204
      start: 1190
    functionDepth: 2
    functionLinenumber: 1190
    functionLinenumberEnd: 1204
    functionName: gf_odf_dump_pl_ext
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - EndSubElement
    - StartDescDump
    - DumpInt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_pl_ext(GF_PLExt *pld, FILE *trace, u32 indent, Bool
      XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1208,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1210,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - ipid
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPIPtr*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1214
      start: 1206
    functionDepth: 2
    functionLinenumber: 1206
    functionLinenumberEnd: 1214
    functionName: gf_odf_dump_ipi_ptr
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - EndSubElement
    - StartDescDump
    - DumpInt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_ipi_ptr(GF_IPIPtr *ipid, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1219,1
    - Dst: DumpIntHex
      Src: /src/gpac/src/odf/odf_dump.c:1222,1
    - Dst: DumpIntHex
      Src: /src/gpac/src/odf/odf_dump.c:1223,1
    - Dst: DumpIntHex
      Src: /src/gpac/src/odf/odf_dump.c:1227,1
    - Dst: DumpBin128
      Src: /src/gpac/src/odf/odf_dump.c:1229,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1230,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1231,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1232,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:1235,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_dump.c:1237,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_dump.c:1239,1
    - Dst: gf_ipmpx_dump_data
      Src: /src/gpac/src/odf/odf_dump.c:1240,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:1243,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1247,1
    - Dst: DumpData
      Src: /src/gpac/src/odf/odf_dump.c:1249,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1252,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 4
    argNames:
    - ipmp
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMP_Descriptor*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1254
      start: 1216
    functionDepth: 4
    functionLinenumber: 1216
    functionLinenumberEnd: 1254
    functionName: gf_odf_dump_ipmp
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - DumpString
    - gf_ipmpx_dump_data
    - DumpIntHex
    - DumpData
    - StartElement
    - gf_list_count
    - EndAttributes
    - DumpInt
    - DumpBin128
    - EndElement
    - EndDescDump
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_ipmp(GF_IPMP_Descriptor *ipmp, FILE *trace, u32
      indent, Bool XMTDump)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1258,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1261,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1262,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1263,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1265,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1269,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1271,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 4
    argNames:
    - ipmpd
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPPtr*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1273
      start: 1256
    functionDepth: 2
    functionLinenumber: 1256
    functionLinenumberEnd: 1273
    functionName: gf_odf_dump_ipmp_ptr
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - EndDescDump
    - EndSubElement
    - StartDescDump
    - DumpInt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_ipmp_ptr(GF_IPMPPtr *ipmpd, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1280,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1282,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:1283,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1284,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_dump.c:1287,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1288,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1289,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1290,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1293,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 4
    argNames:
    - kwd
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_KeyWord*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1295
      start: 1275
    functionDepth: 2
    functionLinenumber: 1275
    functionLinenumberEnd: 1295
    functionName: gf_odf_dump_kw
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - DumpString
    - DumpBool
    - EndAttributes
    - StartSubElement
    - DumpInt
    - EndSubElement
    - EndDescDump
    - gf_list_enum
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_kw(GF_KeyWord *kwd, FILE *trace, u32 indent, Bool
      XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1300,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1306,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1308,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1309,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 4
    argNames:
    - ld
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_Language*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1311
      start: 1297
    functionDepth: 2
    functionLinenumber: 1297
    functionLinenumberEnd: 1311
    functionName: gf_odf_dump_lang
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - EndDescDump
    - EndSubElement
    - StartDescDump
    - DumpString
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_lang(GF_Language *ld, FILE *trace, u32 indent, Bool
      XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1316,1
    - Dst: DumpIntHex
      Src: /src/gpac/src/odf/odf_dump.c:1319,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1320,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1321,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1322,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1323,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1324,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1325,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1326,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1327,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1329,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1330,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - ld
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_AuxVideoDescriptor*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1332
      start: 1314
    functionDepth: 2
    functionLinenumber: 1314
    functionLinenumberEnd: 1332
    functionName: gf_odf_dump_aux_vid
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - DumpIntHex
    - EndSubElement
    - DumpInt
    - EndDescDump
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_aux_vid(GF_AuxVideoDescriptor *ld, FILE *trace,
      u32 indent, Bool XMTDump)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1338,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1341,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1345,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1346,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1347,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1349,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1350,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1353,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1356,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1358,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1359,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1360,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1361,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1362,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:1363,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1365,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1368,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1369,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1370,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:1374,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_dump.c:1378,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:1379,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:1381,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:1383,1
    - Dst: DumpDescListFilter
      Src: /src/gpac/src/odf/odf_dump.c:1384,1
    - Dst: DumpDescListFilter
      Src: /src/gpac/src/odf/odf_dump.c:1385,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:1387,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:1390,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/odf/odf_dump.c:1391,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:1392,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:1397,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1400,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 51
    argCount: 4
    argNames:
    - iod
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IsomInitialObjectDescriptor*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1402
      start: 1334
    functionDepth: 3
    functionLinenumber: 1334
    functionLinenumberEnd: 1402
    functionName: gf_odf_dump_isom_iod
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - gf_odf_dump_desc
    - DumpString
    - DumpBool
    - gf_fprintf
    - StartElement
    - gf_list_count
    - EndAttributes
    - StartSubElement
    - EndAttribute
    - DumpInt
    - EndSubElement
    - DumpDescList
    - EndElement
    - EndDescDump
    - StartAttribute
    - DumpDescListFilter
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_isom_iod(GF_IsomInitialObjectDescriptor *iod, FILE
      *trace, u32 indent, Bool XMTDump)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1406,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1408,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1410,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1411,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1412,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1414,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1415,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1417,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1419,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1420,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1421,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:1425,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:1429,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:1430,1
    - Dst: DumpDescListFilter
      Src: /src/gpac/src/odf/odf_dump.c:1431,1
    - Dst: DumpDescListFilter
      Src: /src/gpac/src/odf/odf_dump.c:1432,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:1434,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:1438,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1441,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 34
    argCount: 4
    argNames:
    - od
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_ObjectDescriptor*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1443
      start: 1404
    functionDepth: 3
    functionLinenumber: 1404
    functionLinenumberEnd: 1443
    functionName: gf_odf_dump_od
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - DumpString
    - gf_fprintf
    - StartElement
    - EndAttributes
    - StartSubElement
    - EndAttribute
    - DumpInt
    - EndSubElement
    - DumpDescList
    - EndElement
    - EndDescDump
    - StartAttribute
    - DumpDescListFilter
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_od(GF_ObjectDescriptor *od, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1447,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1449,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1451,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1452,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1453,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1455,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1456,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1458,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1460,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1461,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1462,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:1466,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_dump.c:1470,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:1471,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:1473,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:1475,1
    - Dst: DumpDescListFilter
      Src: /src/gpac/src/odf/odf_dump.c:1476,1
    - Dst: DumpDescListFilter
      Src: /src/gpac/src/odf/odf_dump.c:1477,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:1478,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:1482,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1485,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 38
    argCount: 4
    argNames:
    - od
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IsomObjectDescriptor*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1487
      start: 1445
    functionDepth: 3
    functionLinenumber: 1445
    functionLinenumberEnd: 1487
    functionName: gf_odf_dump_isom_od
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - DumpString
    - gf_fprintf
    - StartElement
    - gf_list_count
    - EndAttributes
    - StartSubElement
    - EndAttribute
    - DumpInt
    - EndSubElement
    - DumpDescList
    - EndElement
    - EndDescDump
    - StartAttribute
    - DumpDescListFilter
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_isom_od(GF_IsomObjectDescriptor *od, FILE *trace,
      u32 indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1492,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1494,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1496,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - ocd
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_OCI_Data*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1498
      start: 1490
    functionDepth: 2
    functionLinenumber: 1490
    functionLinenumberEnd: 1498
    functionName: gf_odf_dump_oci_date
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - EndSubElement
    - StartDescDump
    - DumpString
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_oci_date(GF_OCI_Data *ocd, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1505,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_dump.c:1508,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1509,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1510,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:1511,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1512,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1513,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1516,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - ocn
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_OCICreators*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1518
      start: 1500
    functionDepth: 2
    functionLinenumber: 1500
    functionLinenumberEnd: 1518
    functionName: gf_odf_dump_oci_name
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - DumpString
    - DumpBool
    - StartSubElement
    - DumpInt
    - EndSubElement
    - EndDescDump
    - gf_list_enum
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_oci_name(GF_OCICreators *ocn, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1522,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1524,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1526,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - plid
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_PL_IDX*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1528
      start: 1520
    functionDepth: 2
    functionLinenumber: 1520
    functionLinenumberEnd: 1528
    functionName: gf_odf_dump_pl_idx
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - EndSubElement
    - StartDescDump
    - DumpInt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_pl_idx(GF_PL_IDX *plid, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1532,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1536,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1537,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1538,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_dump.c:1542,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1545,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1546,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1547,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1550,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1551,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1552,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1555,1
    - Dst: DumpFloat
      Src: /src/gpac/src/odf/odf_dump.c:1556,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1557,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1560,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1561,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1562,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1565,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1566,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1567,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1570,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1571,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1572,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1575,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1576,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1577,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1580,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1581,1
    - Dst: DumpData
      Src: /src/gpac/src/odf/odf_dump.c:1582,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1583,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1589,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 57
    argCount: 4
    argNames:
    - qos
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_QoS_Descriptor*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1591
      start: 1530
    functionDepth: 2
    functionLinenumber: 1530
    functionLinenumberEnd: 1591
    functionName: gf_odf_dump_qos
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - DumpFloat
    - DumpData
    - StartSubElement
    - EndSubElement
    - DumpInt
    - EndDescDump
    - gf_list_enum
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_qos(GF_QoS_Descriptor *qos, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1595,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1597,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1598,1
    - Dst: DumpData
      Src: /src/gpac/src/odf/odf_dump.c:1599,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1601,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - rd
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_Rating*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1603
      start: 1593
    functionDepth: 2
    functionLinenumber: 1593
    functionLinenumberEnd: 1603
    functionName: gf_odf_dump_rating
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - EndSubElement
    - StartDescDump
    - DumpInt
    - DumpData
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_rating(GF_Rating *rd, FILE *trace, u32 indent, Bool
      XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1607,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1609,1
    - Dst: DumpData
      Src: /src/gpac/src/odf/odf_dump.c:1610,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1612,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - reg
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_Registration*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1614
      start: 1605
    functionDepth: 2
    functionLinenumber: 1605
    functionLinenumberEnd: 1614
    functionName: gf_odf_dump_reg
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - EndSubElement
    - StartDescDump
    - DumpInt
    - DumpData
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_reg(GF_Registration *reg, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1618,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1620,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:1621,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1622,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1623,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1624,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1625,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1626,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1628,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 4
    argNames:
    - std
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_ShortTextual*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1630
      start: 1616
    functionDepth: 2
    functionLinenumber: 1616
    functionLinenumberEnd: 1630
    functionName: gf_odf_dump_short_text
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - DumpString
    - DumpBool
    - EndAttributes
    - StartSubElement
    - DumpInt
    - EndSubElement
    - EndDescDump
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_short_text(GF_ShortTextual *std, FILE *trace, u32
      indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1637,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1639,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1640,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_dump.c:1643,1
    - Dst: StartSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1644,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1645,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1646,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1647,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1650,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 4
    argNames:
    - cpd
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_SMPTECamera*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1652
      start: 1632
    functionDepth: 2
    functionLinenumber: 1632
    functionLinenumberEnd: 1652
    functionName: gf_odf_dump_smpte_camera
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - EndAttributes
    - StartSubElement
    - DumpInt
    - EndSubElement
    - EndDescDump
    - gf_list_enum
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_smpte_camera(GF_SMPTECamera *cpd, FILE *trace, u32
      indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1656,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1658,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1659,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1660,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1662,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - scid
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_SCIDesc*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1664
      start: 1654
    functionDepth: 2
    functionLinenumber: 1654
    functionLinenumberEnd: 1664
    functionName: gf_odf_dump_sup_cid
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - EndSubElement
    - StartDescDump
    - DumpInt
    - DumpString
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_sup_cid(GF_SCIDesc *scid, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1669,1
    - Dst: DumpDouble
      Src: /src/gpac/src/odf/odf_dump.c:1671,1
    - Dst: DumpDouble
      Src: /src/gpac/src/odf/odf_dump.c:1672,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1673,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1676,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1678,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - sd
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_Segment*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1680
      start: 1667
    functionDepth: 2
    functionLinenumber: 1667
    functionLinenumberEnd: 1680
    functionName: gf_odf_dump_segment
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - DumpString
    - EndSubElement
    - EndDescDump
    - StartDescDump
    - DumpDouble
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_segment(GF_Segment *sd, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1684,1
    - Dst: DumpDouble
      Src: /src/gpac/src/odf/odf_dump.c:1686,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1688,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - mt
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_MediaTime*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1690
      start: 1682
    functionDepth: 2
    functionLinenumber: 1682
    functionLinenumberEnd: 1690
    functionName: gf_odf_dump_mediatime
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - EndSubElement
    - StartDescDump
    - DumpDouble
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_mediatime(GF_MediaTime *mt, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_url_get_absolute_path
      Src: /src/gpac/src/odf/odf_dump.c:1696,1
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1699,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1702,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_dump.c:1703,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1705,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1707,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1708,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1709,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1710,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:1712,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:1713,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1714,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1715,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1718,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1719,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1722,1
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1726,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1729,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_dump.c:1730,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1732,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1734,1
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1736,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1737,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1738,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1739,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:1741,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:1742,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1743,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1744,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1747,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1748,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1749,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:1752,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 68
    argCount: 4
    argNames:
    - mi
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_MuxInfo*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1754
      start: 1694
    functionDepth: 2
    functionLinenumber: 1694
    functionLinenumberEnd: 1754
    functionName: gf_odf_dump_muxinfo
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - gf_free
    - DumpString
    - DumpBool
    - gf_url_get_absolute_path
    - EndAttributes
    - DumpInt
    - EndSubElement
    - EndElement
    - EndDescDump
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_muxinfo(GF_MuxInfo *mi, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1759,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1760,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:1762,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1764,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - tl
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMP_ToolList*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1766
      start: 1757
    functionDepth: 3
    functionLinenumber: 1757
    functionLinenumberEnd: 1766
    functionName: gf_odf_dump_ipmp_tool_list
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - EndDescDump
    - EndAttributes
    - DumpDescList
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_ipmp_tool_list(GF_IPMP_ToolList *tl, FILE *trace,
      u32 indent, Bool XMTDump)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1770,1
    - Dst: DumpBin128
      Src: /src/gpac/src/odf/odf_dump.c:1772,1
    - Dst: DumpString
      Src: /src/gpac/src/odf/odf_dump.c:1773,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:1775,1
    - Dst: gf_ipmpx_dump_data
      Src: /src/gpac/src/odf/odf_dump.c:1777,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:1779,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1781,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1783,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 4
    argNames:
    - t
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMP_Tool*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1785
      start: 1768
    functionDepth: 4
    functionLinenumber: 1768
    functionLinenumberEnd: 1785
    functionName: gf_odf_dump_ipmp_tool
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - DumpString
    - gf_ipmpx_dump_data
    - StartElement
    - EndAttributes
    - EndElement
    - DumpBin128
    - EndDescDump
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_ipmp_tool(GF_IPMP_Tool*t, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1792,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1793,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:1795,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1797,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:1799,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 4
    argNames:
    - com
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_ODUpdate*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1802
      start: 1789
    functionDepth: 3
    functionLinenumber: 1789
    functionLinenumberEnd: 1802
    functionName: gf_odf_dump_od_update
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - EndDescDump
    - EndAttributes
    - DumpDescList
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_od_update(GF_ODUpdate *com, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1809,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1811,1
    - Dst: OD_FORMAT_INDENT
      Src: /src/gpac/src/odf/odf_dump.c:1814,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1815,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1818,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1819,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1822,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1824,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1826,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 4
    argNames:
    - com
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_ODRemove*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1829
      start: 1804
    functionDepth: 2
    functionLinenumber: 1804
    functionLinenumberEnd: 1829
    functionName: gf_odf_dump_od_remove
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - gf_fprintf
    - EndAttribute
    - EndSubElement
    - StartAttribute
    - StartDescDump
    - OD_FORMAT_INDENT
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_od_remove(GF_ODRemove *com, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1834,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1835,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1836,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1837,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1838,1
    - Dst: OD_FORMAT_INDENT
      Src: /src/gpac/src/odf/odf_dump.c:1841,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1842,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:1845,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1848,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1850,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 4
    argNames:
    - com
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_ESDUpdate*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1853
      start: 1831
    functionDepth: 3
    functionLinenumber: 1831
    functionLinenumberEnd: 1853
    functionName: gf_odf_dump_esd_update
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - gf_fprintf
    - EndAttributes
    - DumpDescList
    - EndAttribute
    - EndDescDump
    - StartAttribute
    - StartDescDump
    - OD_FORMAT_INDENT
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_esd_update(GF_ESDUpdate *com, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1860,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1861,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1862,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1863,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1864,1
    - Dst: OD_FORMAT_INDENT
      Src: /src/gpac/src/odf/odf_dump.c:1867,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1868,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1871,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1872,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1873,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1876,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1878,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1880,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 4
    argNames:
    - com
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_ESDRemove*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1883
      start: 1855
    functionDepth: 2
    functionLinenumber: 1855
    functionLinenumberEnd: 1883
    functionName: gf_odf_dump_esd_remove
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - gf_fprintf
    - EndAttribute
    - EndSubElement
    - StartAttribute
    - StartDescDump
    - OD_FORMAT_INDENT
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_esd_remove(GF_ESDRemove *com, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1889,1
    - Dst: EndAttributes
      Src: /src/gpac/src/odf/odf_dump.c:1890,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:1892,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1894,1
    - Dst: DumpDescList
      Src: /src/gpac/src/odf/odf_dump.c:1896,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 4
    argNames:
    - com
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPUpdate*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1899
      start: 1886
    functionDepth: 3
    functionLinenumber: 1886
    functionLinenumberEnd: 1899
    functionName: gf_odf_dump_ipmp_update
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - EndDescDump
    - EndAttributes
    - DumpDescList
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_ipmp_update(GF_IPMPUpdate *com, FILE *trace, u32
      indent, Bool XMTDump)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1905,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1908,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1910,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1911,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1913,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1915,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 4
    argNames:
    - com
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_IPMPRemove*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1917
      start: 1901
    functionDepth: 2
    functionLinenumber: 1901
    functionLinenumberEnd: 1917
    functionName: gf_odf_dump_ipmp_remove
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - gf_fprintf
    - EndAttribute
    - EndSubElement
    - StartAttribute
    - StartDescDump
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_ipmp_remove(GF_IPMPRemove *com, FILE *trace, u32
      indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1921,1
    - Dst: DumpData
      Src: /src/gpac/src/odf/odf_dump.c:1924,1
    - Dst: EndSubElement
      Src: /src/gpac/src/odf/odf_dump.c:1926,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - com
    - trace
    - indent
    - XMTDump
    argTypes:
    - GF_BaseODCom*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1928
      start: 1919
    functionDepth: 2
    functionLinenumber: 1919
    functionLinenumberEnd: 1928
    functionName: gf_odf_dump_base_command
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 1
    functionsReached:
    - StartDescDump
    - EndSubElement
    - DumpData
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_dump_base_command(GF_BaseODCom *com, FILE *trace, u32
      indent, Bool XMTDump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StartDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1938,1
    - Dst: gf_oci_event_get_id
      Src: /src/gpac/src/odf/odf_dump.c:1940,1
    - Dst: DumpInt
      Src: /src/gpac/src/odf/odf_dump.c:1941,1
    - Dst: gf_oci_event_get_start_time
      Src: /src/gpac/src/odf/odf_dump.c:1943,1
    - Dst: DumpBool
      Src: /src/gpac/src/odf/odf_dump.c:1944,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1945,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1946,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1947,1
    - Dst: gf_oci_event_get_duration
      Src: /src/gpac/src/odf/odf_dump.c:1949,1
    - Dst: StartAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1950,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/odf/odf_dump.c:1951,1
    - Dst: EndAttribute
      Src: /src/gpac/src/odf/odf_dump.c:1952,1
    - Dst: StartElement
      Src: /src/gpac/src/odf/odf_dump.c:1954,1
    - Dst: gf_oci_event_get_desc_count
      Src: /src/gpac/src/odf/odf_dump.c:1955,1
    - Dst: gf_oci_event_get_desc
      Src: /src/gpac/src/odf/odf_dump.c:1956,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/odf/odf_dump.c:1957,1
    - Dst: EndElement
      Src: /src/gpac/src/odf/odf_dump.c:1959,1
    - Dst: EndDescDump
      Src: /src/gpac/src/odf/odf_dump.c:1961,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 4
    argNames:
    - ev
    - trace
    - indent
    - XMTDump
    argTypes:
    - OCIEvent*
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1964
      start: 1931
    functionDepth: 2
    functionLinenumber: 1931
    functionLinenumberEnd: 1964
    functionName: gf_oci_dump_event
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 0
    functionsReached:
    - gf_odf_dump_desc
    - gf_oci_event_get_desc_count
    - DumpBool
    - gf_fprintf
    - gf_oci_event_get_duration
    - StartElement
    - gf_oci_event_get_start_time
    - gf_oci_event_get_desc
    - EndAttribute
    - DumpInt
    - gf_oci_event_get_id
    - EndElement
    - EndDescDump
    - StartAttribute
    - StartDescDump
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_oci_dump_event(OCIEvent *ev, FILE *trace, u32 indent,
      Bool XMTDump)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_oci_codec_new
      Src: /src/gpac/src/odf/odf_dump.c:1971,1
    - Dst: gf_oci_codec_decode
      Src: /src/gpac/src/odf/odf_dump.c:1974,1
    - Dst: gf_oci_codec_get_event
      Src: /src/gpac/src/odf/odf_dump.c:1978,1
    - Dst: gf_oci_dump_event
      Src: /src/gpac/src/odf/odf_dump.c:1980,1
    - Dst: gf_oci_codec_del
      Src: /src/gpac/src/odf/odf_dump.c:1983,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 6
    argNames:
    - version
    - au
    - au_length
    - trace
    - indent
    - XMTDump
    argTypes:
    - u8
    - u8*
    - u32
    - FILE*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1985
      start: 1967
    functionDepth: 3
    functionLinenumber: 1967
    functionLinenumberEnd: 1985
    functionName: gf_oci_dump_au
    functionSourceFile: /src/gpac/src/odf/odf_dump.c
    functionUses: 0
    functionsReached:
    - gf_oci_codec_get_event
    - gf_oci_codec_decode
    - gf_oci_dump_event
    - gf_oci_codec_del
    - gf_oci_codec_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_oci_dump_au(u8 version, u8 *au, u32 au_length, FILE *trace,
      u32 indent, Bool XMTDump)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:36,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:37,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:38,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:39,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:40,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:41,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:42,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:43,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:44,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:45,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:46,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:47,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:48,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:49,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:50,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:51,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:52,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:53,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:54,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:55,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:56,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:57,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:58,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:59,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:60,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:61,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:62,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:63,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:64,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:65,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:66,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:67,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:68,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 68
    argCount: 1
    argNames:
    - dataName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 70
    functionName: gf_ipmpx_get_tag
    functionSourceFile: /src/gpac/src/odf/ipmpx_parse.c
    functionUses: 0
    functionsReached:
    - stricmp
    linkageType: ''
    returnType: u8
    signature: u8 gf_ipmpx_get_tag(char *dataName)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:76,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:76,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:79,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:82,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:85,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:85,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:86,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:89,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:92,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:95,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:98,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:98,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:99,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:100,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:100,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:101,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:101,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:101,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:105,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:105,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:108,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:111,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:112,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:118,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:121,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:124,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:128,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:128,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:131,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:131,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:134,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:137,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 91
    argCount: 2
    argNames:
    - p
    - fieldName
    argTypes:
    - GF_IPMPX_Data*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 143
    functionName: gf_ipmpx_get_field_type
    functionSourceFile: /src/gpac/src/odf/ipmpx_parse.c
    functionUses: 0
    functionsReached:
    - stricmp
    linkageType: ''
    returnType: u32
    signature: u32 gf_ipmpx_get_field_type(GF_IPMPX_Data *p, char *fieldName)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/odf/ipmpx_parse.c:153,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/ipmpx_parse.c:154,1
    - Dst: memcpy
      Src: /src/gpac/src/odf/ipmpx_parse.c:155,1
    - Dst: strlen
      Src: /src/gpac/src/odf/ipmpx_parse.c:159,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_parse.c:160,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/ipmpx_parse.c:162,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/ipmpx_parse.c:167,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 3
    argNames:
    - val
    - out_data
    - out_data_size
    argTypes:
    - char*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 170
    functionName: GF_IPMPX_ParseBinData
    functionSourceFile: /src/gpac/src/odf/ipmpx_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - sscanf
    - memcpy
    - strlen
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void GF_IPMPX_ParseBinData(char *val, u8 **out_data, u32 *out_data_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:175,1
    - Dst: strlen
      Src: /src/gpac/src/odf/ipmpx_parse.c:177,1
    - Dst: atoi
      Src: /src/gpac/src/odf/ipmpx_parse.c:179,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/ipmpx_parse.c:180,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_parse.c:181,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_parse.c:182,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_parse.c:183,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_parse.c:184,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/ipmpx_parse.c:185,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/ipmpx_parse.c:193,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - val
    - data
    argTypes:
    - char*
    - bin128*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 197
    functionName: GF_IPMPX_ParseBin128
    functionSourceFile: /src/gpac/src/odf/ipmpx_parse.c
    functionUses: 0
    functionsReached:
    - sscanf
    - gf_bs_new
    - gf_bs_write_int
    - gf_bs_del
    - strnicmp
    - atoi
    - strlen
    linkageType: ''
    returnType: void
    signature: void GF_IPMPX_ParseBin128(char *val, bin128 *data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/odf/ipmpx_parse.c:201,1
    - Dst: strnicmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:201,1
    - Dst: atoi
      Src: /src/gpac/src/odf/ipmpx_parse.c:203,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/ipmpx_parse.c:204,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_parse.c:205,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_parse.c:206,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/ipmpx_parse.c:207,1
    - Dst: memcpy
      Src: /src/gpac/src/odf/ipmpx_parse.c:210,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - val
    - date
    argTypes:
    - char*
    - GF_IPMPX_Date*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 212
    functionName: GF_IPMPX_ParseDate
    functionSourceFile: /src/gpac/src/odf/ipmpx_parse.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - memcpy
    - gf_bs_write_int
    - gf_bs_del
    - strnicmp
    - atoi
    - strlen
    linkageType: ''
    returnType: void
    signature: void GF_IPMPX_ParseDate(char *val, GF_IPMPX_Date *date)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/odf/ipmpx_parse.c:219,1
    - Dst: strnicmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:236,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/ipmpx_parse.c:237,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/ipmpx_parse.c:241,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 3
    argNames:
    - val
    - eventType
    - eventTypeCount
    argTypes:
    - char*
    - GF_IPMPX_ListenType*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 250
    functionName: GF_IPMPX_ParseEventType
    functionSourceFile: /src/gpac/src/odf/ipmpx_parse.c
    functionUses: 0
    functionsReached:
    - strnicmp
    - sscanf
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GF_IPMPX_ParseEventType(char *val, GF_IPMPX_ListenType *eventType,
      u8 *eventTypeCount)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/ipmpx_parse.c:256,1
    - Dst: strlen
      Src: /src/gpac/src/odf/ipmpx_parse.c:259,1
    - Dst: strnicmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:276,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/ipmpx_parse.c:277,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/ipmpx_parse.c:281,1
    - Dst: gf_realloc
      Src: /src/gpac/src/odf/ipmpx_parse.c:288,1
    - Dst: gf_realloc
      Src: /src/gpac/src/odf/ipmpx_parse.c:292,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 38
    argCount: 3
    argNames:
    - val
    - outData
    - outDataSize
    argTypes:
    - char*
    - u16**
    - u16*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 295
    functionName: gf_ipmpx_data_parse_16
    functionSourceFile: /src/gpac/src/odf/ipmpx_parse.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - sscanf
    - strnicmp
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_data_parse_16(char *val, u16 **outData, u16 *outDataSize)
  - BBCount: 66
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:301,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:302,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:308,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:309,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:309,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:313,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:314,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:314,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:318,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:319,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:319,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:323,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:324,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:324,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:328,1
    - Dst: GET_U32
      Src: /src/gpac/src/odf/ipmpx_parse.c:329,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:331,1
    - Dst: GET_U32
      Src: /src/gpac/src/odf/ipmpx_parse.c:332,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:334,1
    - Dst: GET_U64
      Src: /src/gpac/src/odf/ipmpx_parse.c:335,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:337,1
    - Dst: GET_U64
      Src: /src/gpac/src/odf/ipmpx_parse.c:338,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:346,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/odf/ipmpx_parse.c:346,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:352,1
    - Dst: GET_U32
      Src: /src/gpac/src/odf/ipmpx_parse.c:352,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:353,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:353,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:359,1
    - Dst: GF_IPMPX_ParseBin128
      Src: /src/gpac/src/odf/ipmpx_parse.c:360,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:363,1
    - Dst: GF_IPMPX_ParseDate
      Src: /src/gpac/src/odf/ipmpx_parse.c:364,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:372,1
    - Dst: GF_IPMPX_ParseDate
      Src: /src/gpac/src/odf/ipmpx_parse.c:373,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:376,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:376,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:377,1
    - Dst: GET_U32
      Src: /src/gpac/src/odf/ipmpx_parse.c:377,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:383,1
    - Dst: GET_U16
      Src: /src/gpac/src/odf/ipmpx_parse.c:383,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:389,1
    - Dst: GF_IPMPX_ParseBinData
      Src: /src/gpac/src/odf/ipmpx_parse.c:391,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:400,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:400,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:401,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:401,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:407,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/odf/ipmpx_parse.c:407,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:413,1
    - Dst: GET_U16
      Src: /src/gpac/src/odf/ipmpx_parse.c:413,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:419,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:419,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:420,1
    - Dst: GET_U16
      Src: /src/gpac/src/odf/ipmpx_parse.c:420,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:426,1
    - Dst: GET_U16
      Src: /src/gpac/src/odf/ipmpx_parse.c:426,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:427,1
    - Dst: GET_U16
      Src: /src/gpac/src/odf/ipmpx_parse.c:427,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:428,1
    - Dst: GET_U16
      Src: /src/gpac/src/odf/ipmpx_parse.c:428,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:434,1
    - Dst: GF_IPMPX_ParseEventType
      Src: /src/gpac/src/odf/ipmpx_parse.c:434,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:435,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:435,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:441,1
    - Dst: GF_IPMPX_ParseEventType
      Src: /src/gpac/src/odf/ipmpx_parse.c:441,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:447,1
    - Dst: GET_U16
      Src: /src/gpac/src/odf/ipmpx_parse.c:447,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:448,1
    - Dst: GET_U16
      Src: /src/gpac/src/odf/ipmpx_parse.c:448,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:449,1
    - Dst: GET_U16
      Src: /src/gpac/src/odf/ipmpx_parse.c:449,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:450,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:450,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:456,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/odf/ipmpx_parse.c:456,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:462,1
    - Dst: GET_U32
      Src: /src/gpac/src/odf/ipmpx_parse.c:462,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:463,1
    - Dst: GET_U32
      Src: /src/gpac/src/odf/ipmpx_parse.c:463,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:470,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:470,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:471,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:471,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:472,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:472,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:473,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:473,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:474,1
    - Dst: GET_U32
      Src: /src/gpac/src/odf/ipmpx_parse.c:474,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:475,1
    - Dst: GET_U16
      Src: /src/gpac/src/odf/ipmpx_parse.c:475,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:476,1
    - Dst: GET_U16
      Src: /src/gpac/src/odf/ipmpx_parse.c:476,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:477,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:477,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:478,1
    - Dst: GF_IPMPX_ParseBinData
      Src: /src/gpac/src/odf/ipmpx_parse.c:480,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:482,1
    - Dst: GF_IPMPX_ParseBinData
      Src: /src/gpac/src/odf/ipmpx_parse.c:484,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:486,1
    - Dst: GET_U16
      Src: /src/gpac/src/odf/ipmpx_parse.c:486,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:493,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:493,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:494,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:494,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:500,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:500,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:501,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:501,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:502,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:502,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:503,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:503,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:504,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:504,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:505,1
    - Dst: gf_ipmpx_data_parse_16
      Src: /src/gpac/src/odf/ipmpx_parse.c:507,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:514,1
    - Dst: GF_IPMPX_ParseBin128
      Src: /src/gpac/src/odf/ipmpx_parse.c:515,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:518,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:518,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:519,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:519,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:520,1
    - Dst: GET_U16
      Src: /src/gpac/src/odf/ipmpx_parse.c:520,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:521,1
    - Dst: GET_U16
      Src: /src/gpac/src/odf/ipmpx_parse.c:521,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:527,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:527,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:528,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:528,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:529,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:529,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:530,1
    - Dst: gf_ipmpx_data_parse_16
      Src: /src/gpac/src/odf/ipmpx_parse.c:532,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:539,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:539,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:540,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:540,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:541,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/odf/ipmpx_parse.c:541,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:542,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/ipmpx_parse.c:542,1
    CyclomaticComplexity: 68
    EdgeCount: 68
    ICount: 221
    argCount: 3
    argNames:
    - _p
    - fieldName
    - val
    argTypes:
    - GF_IPMPX_Data*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 547
      start: 297
    functionDepth: 2
    functionLinenumber: 297
    functionLinenumberEnd: 547
    functionName: gf_ipmpx_set_field
    functionSourceFile: /src/gpac/src/odf/ipmpx_parse.c
    functionUses: 0
    functionsReached:
    - GET_U8
    - GF_IPMPX_ParseBin128
    - GET_U16
    - GF_IPMPX_ParseBinData
    - gf_ipmpx_data_parse_16
    - GET_U64
    - stricmp
    - GF_IPMPX_ParseEventType
    - GET_BOOL
    - GF_IPMPX_ParseDate
    - GET_U32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_set_field(GF_IPMPX_Data *_p, char *fieldName, char
      *val)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/odf/ipmpx_parse.c:555,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/ipmpx_parse.c:564,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/ipmpx_parse.c:572,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:583,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/ipmpx_parse.c:583,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:584,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/ipmpx_parse.c:584,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:588,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/ipmpx_parse.c:588,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:589,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/ipmpx_parse.c:589,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:590,1
    - Dst: GF_IPMPX_AUTH_Delete
      Src: /src/gpac/src/odf/ipmpx_parse.c:591,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/odf/ipmpx_parse.c:597,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:609,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/ipmpx_parse.c:609,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:617,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/odf/ipmpx_parse.c:618,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/ipmpx_parse.c:627,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/ipmpx_parse.c:628,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 88
    argCount: 3
    argNames:
    - _p
    - fieldName
    - sp
    argTypes:
    - GF_IPMPX_Data*
    - char*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 549
    functionDepth: 1
    functionLinenumber: 549
    functionLinenumberEnd: 634
    functionName: gf_ipmpx_set_sub_data
    functionSourceFile: /src/gpac/src/odf/ipmpx_parse.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_ipmpx_data_del
    - GF_IPMPX_AUTH_Delete
    - stricmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_set_sub_data(GF_IPMPX_Data *_p, char *fieldName, GF_IPMPX_Data
      *sp)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/ipmpx_parse.c:640,1
    - Dst: strlen
      Src: /src/gpac/src/odf/ipmpx_parse.c:641,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/ipmpx_parse.c:642,1
    - Dst: memcpy
      Src: /src/gpac/src/odf/ipmpx_parse.c:643,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:648,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:649,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:652,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:655,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:658,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:659,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:662,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:665,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:666,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:667,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:668,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/ipmpx_parse.c:669,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:674,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:677,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:678,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:679,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:680,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:681,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:684,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:688,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:689,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:692,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/ipmpx_parse.c:695,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_parse.c:699,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_parse.c:700,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_parse.c:704,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_parse.c:705,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 91
    argCount: 3
    argNames:
    - p
    - field
    - str
    argTypes:
    - GF_IPMPX_Data*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 636
    functionDepth: 1
    functionLinenumber: 636
    functionLinenumberEnd: 709
    functionName: gf_ipmpx_set_byte_array
    functionSourceFile: /src/gpac/src/odf/ipmpx_parse.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_free
    - memcpy
    - gf_list_add
    - stricmp
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_set_byte_array(GF_IPMPX_Data *p, char *field, char
      *str)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:41,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:42,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:43,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:44,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:45,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:46,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:49,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:50,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:53,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:54,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:55,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:56,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:57,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:58,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:59,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:60,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:61,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:62,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:63,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:66,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:69,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:72,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:75,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:78,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 69
    argCount: 2
    argNames:
    - desc
    - fieldName
    argTypes:
    - GF_Descriptor*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 82
    functionName: gf_odf_get_field_type
    functionSourceFile: /src/gpac/src/odf/odf_parse.c
    functionUses: 0
    functionsReached:
    - stricmp
    linkageType: ''
    returnType: GF_ODF_FieldType
    signature: GF_ODF_FieldType gf_odf_get_field_type(GF_Descriptor *desc, char *fieldName)
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:86,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:87,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:88,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:89,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:90,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:91,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:92,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:93,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:94,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:95,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:96,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:96,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:97,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:98,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:99,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:100,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:101,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:102,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:103,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:104,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:105,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:106,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:109,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:110,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:111,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:112,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:113,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:114,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:115,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:116,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:117,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:118,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:119,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:120,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:121,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:122,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:123,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:124,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:125,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:126,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:127,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:128,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:129,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:130,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 88
    argCount: 1
    argNames:
    - descName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 133
    functionName: gf_odf_get_tag_by_name
    functionSourceFile: /src/gpac/src/odf/odf_parse.c
    functionUses: 0
    functionsReached:
    - stricmp
    linkageType: ''
    returnType: u32
    signature: u32 gf_odf_get_tag_by_name(char *descName)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_parse.c:141,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_parse.c:142,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_parse.c:144,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:149,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - val
    - out_data
    - out_data_size
    argTypes:
    - u8*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 152
    functionName: OD_ParseBinData
    functionSourceFile: /src/gpac/src/odf/odf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - sscanf
    - strlen
    linkageType: ''
    returnType: void
    signature: void OD_ParseBinData(u8 *val, u8 **out_data, u32 *out_data_size)
  - BBCount: 121
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:161,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:162,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:168,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:168,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:168,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:169,1
    - Dst: gf_strdup
      Src: /src/gpac/src/odf/odf_parse.c:170,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:173,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/odf/odf_parse.c:174,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:180,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:181,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:187,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:188,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:194,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:195,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:201,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:202,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:208,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:209,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:220,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:220,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:220,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:221,1
    - Dst: gf_strdup
      Src: /src/gpac/src/odf/odf_parse.c:222,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:230,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:231,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:234,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:238,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:242,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:246,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:250,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:254,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:258,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:262,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:266,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:270,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:274,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:278,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:282,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:286,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:290,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:294,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:298,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:302,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:308,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:309,1
    - Dst: gf_stream_type_by_name
      Src: /src/gpac/src/odf/odf_parse.c:312,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:317,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/odf/odf_parse.c:318,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:320,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:320,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:321,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:321,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:322,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:322,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:328,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:328,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:329,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:331,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:331,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:332,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:332,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:332,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:333,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:333,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:334,1
    - Dst: gf_strdup
      Src: /src/gpac/src/odf/odf_parse.c:335,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:339,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:340,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:341,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:349,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:349,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:350,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/odf/odf_parse.c:350,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:351,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/odf/odf_parse.c:351,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:352,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/odf/odf_parse.c:352,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:353,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:353,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/odf/odf_parse.c:353,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:354,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/odf/odf_parse.c:354,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:355,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/odf/odf_parse.c:355,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:356,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/odf/odf_parse.c:356,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:357,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:357,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:358,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:358,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:359,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:359,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:360,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:360,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:361,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:361,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:362,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:362,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:363,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:363,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:364,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:364,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:365,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:365,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:366,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:366,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:367,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:367,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:368,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:368,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:369,1
    - Dst: GET_U64
      Src: /src/gpac/src/odf/odf_parse.c:369,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:370,1
    - Dst: GET_U64
      Src: /src/gpac/src/odf/odf_parse.c:370,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:371,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:377,1
    - Dst: GET_U32
      Src: /src/gpac/src/odf/odf_parse.c:378,1
    - Dst: gf_strdup
      Src: /src/gpac/src/odf/odf_parse.c:379,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:382,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:388,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:389,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:389,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:390,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:390,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:391,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:391,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:392,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:395,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:395,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/odf/odf_parse.c:395,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:396,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:396,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:397,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:397,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:398,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:399,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:400,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/odf/odf_parse.c:400,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:401,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/odf/odf_parse.c:401,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:407,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:407,1
    - Dst: GET_STRING
      Src: /src/gpac/src/odf/odf_parse.c:407,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:408,1
    - Dst: GET_STRING
      Src: /src/gpac/src/odf/odf_parse.c:408,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:409,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:409,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:410,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:410,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:411,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:411,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:412,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:413,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:416,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:416,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:419,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:422,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:422,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:424,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:426,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:426,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:428,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:430,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:430,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:432,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:434,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:434,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:435,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:435,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:438,1
    - Dst: GET_STRING
      Src: /src/gpac/src/odf/odf_parse.c:438,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:439,1
    - Dst: GET_STRING
      Src: /src/gpac/src/odf/odf_parse.c:439,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:440,1
    - Dst: atof
      Src: /src/gpac/src/odf/odf_parse.c:442,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:449,1
    - Dst: OD_ParseBinData
      Src: /src/gpac/src/odf/odf_parse.c:452,1
    - Dst: strnicmp
      Src: /src/gpac/src/odf/odf_parse.c:454,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/odf/odf_parse.c:455,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_parse.c:457,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:459,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_parse.c:460,1
    - Dst: strnicmp
      Src: /src/gpac/src/odf/odf_parse.c:461,1
    - Dst: OD_ParseBinData
      Src: /src/gpac/src/odf/odf_parse.c:465,1
    - Dst: strnicmp
      Src: /src/gpac/src/odf/odf_parse.c:467,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/odf/odf_parse.c:468,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:477,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:477,1
    - Dst: GET_DOUBLE
      Src: /src/gpac/src/odf/odf_parse.c:477,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:478,1
    - Dst: GET_DOUBLE
      Src: /src/gpac/src/odf/odf_parse.c:478,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:479,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:479,1
    - Dst: GET_STRING
      Src: /src/gpac/src/odf/odf_parse.c:479,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:485,1
    - Dst: GET_STRING
      Src: /src/gpac/src/odf/odf_parse.c:485,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:486,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:486,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:487,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:487,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:488,1
    - Dst: OD_ParseBinData
      Src: /src/gpac/src/odf/odf_parse.c:491,1
    - Dst: strnicmp
      Src: /src/gpac/src/odf/odf_parse.c:493,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/odf/odf_parse.c:494,1
    - Dst: OD_ParseUIConfig
      Src: /src/gpac/src/odf/odf_parse.c:498,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:509,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:509,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:515,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:515,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:521,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:521,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:522,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:522,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:523,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:523,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:524,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:524,1
    - Dst: GET_U32
      Src: /src/gpac/src/odf/odf_parse.c:524,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:525,1
    - Dst: GET_U32
      Src: /src/gpac/src/odf/odf_parse.c:525,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:526,1
    - Dst: GET_U32
      Src: /src/gpac/src/odf/odf_parse.c:526,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:527,1
    - Dst: GET_U32
      Src: /src/gpac/src/odf/odf_parse.c:527,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:528,1
    - Dst: GET_U32
      Src: /src/gpac/src/odf/odf_parse.c:529,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:532,1
    - Dst: GET_U32
      Src: /src/gpac/src/odf/odf_parse.c:533,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:536,1
    - Dst: GET_S16
      Src: /src/gpac/src/odf/odf_parse.c:537,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:540,1
    - Dst: GET_S32
      Src: /src/gpac/src/odf/odf_parse.c:541,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:549,1
    - Dst: GET_U32
      Src: /src/gpac/src/odf/odf_parse.c:549,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:550,1
    - Dst: GET_S32
      Src: /src/gpac/src/odf/odf_parse.c:550,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:551,1
    - Dst: GET_S32
      Src: /src/gpac/src/odf/odf_parse.c:551,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:552,1
    - Dst: GET_S32
      Src: /src/gpac/src/odf/odf_parse.c:552,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:553,1
    - Dst: GET_S32
      Src: /src/gpac/src/odf/odf_parse.c:553,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:554,1
    - Dst: GET_S32
      Src: /src/gpac/src/odf/odf_parse.c:554,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:555,1
    - Dst: GET_S32
      Src: /src/gpac/src/odf/odf_parse.c:555,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:556,1
    - Dst: GET_S32
      Src: /src/gpac/src/odf/odf_parse.c:556,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:557,1
    - Dst: GET_S32
      Src: /src/gpac/src/odf/odf_parse.c:557,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:558,1
    - Dst: GET_S32
      Src: /src/gpac/src/odf/odf_parse.c:558,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:559,1
    - Dst: GET_U32
      Src: /src/gpac/src/odf/odf_parse.c:559,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:560,1
    - Dst: strcpy
      Src: /src/gpac/src/odf/odf_parse.c:562,1
    - Dst: strlwr
      Src: /src/gpac/src/odf/odf_parse.c:563,1
    - Dst: strstr
      Src: /src/gpac/src/odf/odf_parse.c:564,1
    - Dst: strstr
      Src: /src/gpac/src/odf/odf_parse.c:565,1
    - Dst: strstr
      Src: /src/gpac/src/odf/odf_parse.c:566,1
    - Dst: strstr
      Src: /src/gpac/src/odf/odf_parse.c:567,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:570,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:570,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_parse.c:573,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:579,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:580,1
    - Dst: gf_realloc
      Src: /src/gpac/src/odf/odf_parse.c:583,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:588,1
    - Dst: GET_U32
      Src: /src/gpac/src/odf/odf_parse.c:588,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:589,1
    - Dst: GET_STRING
      Src: /src/gpac/src/odf/odf_parse.c:589,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:596,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:596,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:597,1
    - Dst: GET_U16
      Src: /src/gpac/src/odf/odf_parse.c:597,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:598,1
    - Dst: GET_U16
      Src: /src/gpac/src/odf/odf_parse.c:598,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:599,1
    - Dst: gf_bin128_parse
      Src: /src/gpac/src/odf/odf_parse.c:601,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:603,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:603,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:604,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:604,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:610,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:610,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:611,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:611,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:612,1
    - Dst: sscanf
      Src: /src/gpac/src/odf/odf_parse.c:612,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:619,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_parse.c:620,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:633,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:633,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:634,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:634,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:635,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:635,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:636,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:636,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:637,1
    - Dst: GET_U8
      Src: /src/gpac/src/odf/odf_parse.c:637,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:638,1
    - Dst: GET_U16
      Src: /src/gpac/src/odf/odf_parse.c:638,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:639,1
    - Dst: GET_U16
      Src: /src/gpac/src/odf/odf_parse.c:639,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:640,1
    - Dst: GET_U16
      Src: /src/gpac/src/odf/odf_parse.c:640,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:641,1
    - Dst: GET_U16
      Src: /src/gpac/src/odf/odf_parse.c:641,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:647,1
    - Dst: gf_bin128_parse
      Src: /src/gpac/src/odf/odf_parse.c:649,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:651,1
    - Dst: GET_STRING
      Src: /src/gpac/src/odf/odf_parse.c:651,1
    CyclomaticComplexity: 144
    EdgeCount: 144
    ICount: 461
    argCount: 3
    argNames:
    - desc
    - fieldName
    - val
    argTypes:
    - GF_Descriptor*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 657
    functionName: gf_odf_set_field
    functionSourceFile: /src/gpac/src/odf/odf_parse.c
    functionUses: 0
    functionsReached:
    - strcpy
    - gf_stream_type_by_name
    - GET_STRING
    - GET_U32
    - gf_realloc
    - gf_bin128_parse
    - gf_strdup
    - OD_ParseUIConfig
    - atof
    - OD_ParseBinData
    - strlwr
    - stricmp
    - GET_BOOL
    - sscanf
    - strstr
    - GET_S16
    - strnicmp
    - GET_DOUBLE
    - strlen
    - gf_malloc
    - GET_U8
    - GET_U16
    - GET_U64
    - GET_S32
    - gf_file_load_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_set_field(GF_Descriptor *desc, char *fieldName, char
      *val)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/odf/odf_parse.c:663,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/odf/odf_parse.c:670,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_parse.c:672,1
    - Dst: gf_token_get
      Src: /src/gpac/src/odf/odf_parse.c:677,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/odf_parse.c:683,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_parse.c:685,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_parse.c:686,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_parse.c:686,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_parse.c:687,1
    - Dst: stricmp
      Src: /src/gpac/src/odf/odf_parse.c:694,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_parse.c:695,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_parse.c:697,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/odf_parse.c:706,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/odf/odf_parse.c:707,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_parse.c:708,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/odf/odf_parse.c:709,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/odf_parse.c:717,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/odf/odf_parse.c:718,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_parse.c:719,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/odf/odf_parse.c:720,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/odf_parse.c:721,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/odf_parse.c:723,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 58
    argCount: 3
    argNames:
    - val
    - out_data
    - out_data_size
    argTypes:
    - u8*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 727
      start: 660
    functionDepth: 1
    functionLinenumber: 660
    functionLinenumberEnd: 727
    functionName: OD_ParseUIConfig
    functionSourceFile: /src/gpac/src/odf/odf_parse.c
    functionUses: 1
    functionsReached:
    - gf_bs_new
    - gf_bs_seek
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_token_get
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_bs_del
    - strnicmp
    - stricmp
    - strlen
    linkageType: ''
    returnType: Bool
    signature: Bool OD_ParseUIConfig(u8 *val, u8 **out_data, u32 *out_data_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - __ptr
    - ','
    - __stname
    - ','
    - __tag
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 38
    functionName: GF_IPMPX_DATA_ALLOC
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GF_IPMPX_DATA_ALLOC(__ptr, __stname, __tag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __ar
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 40
    functionName: GF_IPMPX_DELETE_ARRAY
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GF_IPMPX_DELETE_ARRAY(__ar)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - size_desc
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 47
    functionName: get_field_size
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 get_field_size(u32 size_desc)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:62,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:64,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:65,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:67,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:68,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:69,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:71,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:72,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:73,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:74,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 2
    argNames:
    - bs
    - size
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 76
    functionName: write_var_size
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: void
    signature: void write_var_size(GF_BitStream *bs, u32 size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:84,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/ipmpx_code.c:89,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/ipmpx_code.c:90,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/ipmpx_code.c:91,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 94
    functionName: GF_IPMPX_GetByteArray
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_data
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_IPMPX_ByteArray
    signature: GF_IPMPX_ByteArray *GF_IPMPX_GetByteArray(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_field_size
      Src: /src/gpac/src/odf/ipmpx_code.c:99,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ba
    argTypes:
    - GF_IPMPX_ByteArray*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 100
    functionName: GF_IPMPX_GetByteArraySize
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - get_field_size
    linkageType: ''
    returnType: u32
    signature: u32 GF_IPMPX_GetByteArraySize(GF_IPMPX_ByteArray *ba)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: write_var_size
      Src: /src/gpac/src/odf/ipmpx_code.c:105,1
    - Dst: write_var_size
      Src: /src/gpac/src/odf/ipmpx_code.c:107,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/ipmpx_code.c:108,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - ba
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_ByteArray*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 102
    functionDepth: 2
    functionLinenumber: 102
    functionLinenumberEnd: 110
    functionName: GF_IPMPX_WriteByteArray
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - write_var_size
    linkageType: ''
    returnType: void
    signature: void GF_IPMPX_WriteByteArray(GF_BitStream *bs, GF_IPMPX_ByteArray *ba)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:119,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:120,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:121,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:127,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:128,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - auth
    argTypes:
    - GF_IPMPX_Authentication*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 132
    functionName: GF_IPMPX_AUTH_Delete
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 1
    functionsReached:
    - GF_IPMPX_DELETE_ARRAY
    - gf_free
    linkageType: ''
    returnType: void
    signature: void GF_IPMPX_AUTH_Delete(GF_IPMPX_Authentication *auth)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:142,1
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:143,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - auth
    argTypes:
    - GF_IPMPX_Authentication*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 157
    functionName: GF_IPMPX_AUTH_Size
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_GetByteArraySize
    linkageType: ''
    returnType: u32
    signature: u32 GF_IPMPX_AUTH_Size(GF_IPMPX_Authentication *auth)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_AUTH_Size
      Src: /src/gpac/src/odf/ipmpx_code.c:161,1
    - Dst: get_field_size
      Src: /src/gpac/src/odf/ipmpx_code.c:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - auth
    argTypes:
    - GF_IPMPX_Authentication*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 159
    functionDepth: 3
    functionLinenumber: 159
    functionLinenumberEnd: 165
    functionName: GF_IPMPX_AUTH_FullSize
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_AUTH_Size
    - get_field_size
    linkageType: ''
    returnType: u32
    signature: u32 GF_IPMPX_AUTH_FullSize(GF_IPMPX_Authentication *auth)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:172,1
    - Dst: GF_IPMPX_AUTH_Size
      Src: /src/gpac/src/odf/ipmpx_code.c:174,1
    - Dst: write_var_size
      Src: /src/gpac/src/odf/ipmpx_code.c:175,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:181,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:182,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:184,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:186,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:188,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/ipmpx_code.c:195,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 2
    argNames:
    - bs
    - auth
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Authentication*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 167
    functionDepth: 3
    functionLinenumber: 167
    functionLinenumberEnd: 202
    functionName: WriteGF_IPMPX_AUTH
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - GF_IPMPX_AUTH_Size
    - GF_IPMPX_WriteByteArray
    - gf_bs_write_data
    - write_var_size
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_AUTH(GF_BitStream *bs, GF_IPMPX_Authentication
      *auth)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:208,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:211,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:222,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/ipmpx_code.c:226,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/ipmpx_code.c:227,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:236,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:239,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:240,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:242,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:244,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:246,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 44
    argCount: 2
    argNames:
    - bs
    - auth
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Authentication**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 204
    functionDepth: 2
    functionLinenumber: 204
    functionLinenumberEnd: 255
    functionName: GF_IPMPX_AUTH_Parse
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - GF_SAFEALLOC
    - GF_IPMPX_GetByteArray
    - gf_bs_read_int
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GF_IPMPX_AUTH_Parse(GF_BitStream *bs, GF_IPMPX_Authentication
      **auth)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_ipmpx_data_size
      Src: /src/gpac/src/odf/ipmpx_code.c:264,1
    - Dst: get_field_size
      Src: /src/gpac/src/odf/ipmpx_code.c:266,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 260
    functionDepth: 1
    functionLinenumber: 260
    functionLinenumberEnd: 269
    functionName: gf_ipmpx_data_full_size
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 1
    functionsReached:
    - get_field_size
    - gf_ipmpx_data_size
    linkageType: ''
    returnType: u32
    signature: u32 gf_ipmpx_data_full_size(GF_IPMPX_Data *p)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:279,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:282,1
    - Dst: gf_ipmpx_data_new
      Src: /src/gpac/src/odf/ipmpx_code.c:289,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:291,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:292,1
    - Dst: GF_IPMPX_ReadData
      Src: /src/gpac/src/odf/ipmpx_code.c:293,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/odf/ipmpx_code.c:295,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 2
    argNames:
    - bs
    - out_data
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 271
    functionDepth: 1
    functionLinenumber: 271
    functionLinenumberEnd: 300
    functionName: gf_ipmpx_data_parse
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 1
    functionsReached:
    - gf_ipmpx_data_new
    - gf_ipmpx_data_del
    - GF_IPMPX_ReadData
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_data_parse(GF_BitStream *bs, GF_IPMPX_Data **out_data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_ipmpx_data_size
      Src: /src/gpac/src/odf/ipmpx_code.c:307,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:309,1
    - Dst: write_var_size
      Src: /src/gpac/src/odf/ipmpx_code.c:310,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:311,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:312,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - bs
    - p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 302
    functionDepth: 2
    functionLinenumber: 302
    functionLinenumberEnd: 314
    functionName: GF_IPMPX_WriteBase
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - write_var_size
    - gf_ipmpx_data_size
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GF_IPMPX_WriteBase(GF_BitStream *bs, GF_IPMPX_Data *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 317
    functionDepth: 1
    functionLinenumber: 317
    functionLinenumberEnd: 322
    functionName: NewGF_IPMPX_InitAuthentication
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_InitAuthentication()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 327
    functionName: DelGF_IPMPX_InitAuthentication
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_InitAuthentication(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:331,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:332,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 328
    functionDepth: 1
    functionLinenumber: 328
    functionLinenumberEnd: 334
    functionName: ReadGF_IPMPX_InitAuthentication
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_InitAuthentication(GF_BitStream *bs, GF_IPMPX_Data
      *_p, u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 335
    functionDepth: 0
    functionLinenumber: 335
    functionLinenumberEnd: 338
    functionName: SizeGF_IPMPX_InitAuthentication
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_InitAuthentication(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:342,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:343,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 339
    functionDepth: 1
    functionLinenumber: 339
    functionLinenumberEnd: 345
    functionName: WriteGF_IPMPX_InitAuthentication
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_InitAuthentication(GF_BitStream *bs, GF_IPMPX_Data
      *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:351,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/ipmpx_code.c:352,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/ipmpx_code.c:353,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/ipmpx_code.c:354,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 348
    functionDepth: 1
    functionLinenumber: 348
    functionLinenumberEnd: 356
    functionName: NewGF_IPMPX_MutualAuthentication
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_MutualAuthentication()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:361,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:362,1
    - Dst: GF_IPMPX_AUTH_Delete
      Src: /src/gpac/src/odf/ipmpx_code.c:363,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/ipmpx_code.c:365,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - algos
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 358
    functionDepth: 2
    functionLinenumber: 358
    functionLinenumberEnd: 366
    functionName: delete_algo_list
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - GF_IPMPX_AUTH_Delete
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void delete_algo_list(GF_List *algos)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: delete_algo_list
      Src: /src/gpac/src/odf/ipmpx_code.c:370,1
    - Dst: delete_algo_list
      Src: /src/gpac/src/odf/ipmpx_code.c:371,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:372,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:373,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:374,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/odf/ipmpx_code.c:375,1
    - Dst: GF_IPMPX_AUTH_Delete
      Src: /src/gpac/src/odf/ipmpx_code.c:376,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:377,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:378,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/ipmpx_code.c:379,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:380,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/ipmpx_code.c:382,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:383,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 367
    functionDepth: 3
    functionLinenumber: 367
    functionLinenumberEnd: 384
    functionName: DelGF_IPMPX_MutualAuthentication
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - delete_algo_list
    - gf_list_count
    - GF_IPMPX_DELETE_ARRAY
    - gf_ipmpx_data_del
    - GF_IPMPX_AUTH_Delete
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_MutualAuthentication(GF_IPMPX_Data *_p)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:392,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:393,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:394,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:395,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:396,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:397,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:400,1
    - Dst: GF_IPMPX_AUTH_Parse
      Src: /src/gpac/src/odf/ipmpx_code.c:403,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/ipmpx_code.c:405,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:409,1
    - Dst: GF_IPMPX_AUTH_Parse
      Src: /src/gpac/src/odf/ipmpx_code.c:412,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/ipmpx_code.c:414,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:417,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:420,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:423,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:424,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:426,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/ipmpx_code.c:427,1
    - Dst: GF_IPMPX_AUTH_Parse
      Src: /src/gpac/src/odf/ipmpx_code.c:431,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:435,1
    - Dst: gf_ipmpx_data_parse
      Src: /src/gpac/src/odf/ipmpx_code.c:440,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:442,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 54
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 385
    functionDepth: 3
    functionLinenumber: 385
    functionLinenumberEnd: 445
    functionName: ReadGF_IPMPX_MutualAuthentication
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_AUTH_Parse
    - gf_ipmpx_data_parse
    - GF_IPMPX_GetByteArray
    - gf_list_add
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_MutualAuthentication(GF_BitStream *bs, GF_IPMPX_Data
      *_p, u32 size)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:451,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:455,1
    - Dst: GF_IPMPX_AUTH_FullSize
      Src: /src/gpac/src/odf/ipmpx_code.c:456,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:459,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:463,1
    - Dst: GF_IPMPX_AUTH_FullSize
      Src: /src/gpac/src/odf/ipmpx_code.c:464,1
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:467,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:469,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:476,1
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:477,1
    - Dst: GF_IPMPX_AUTH_FullSize
      Src: /src/gpac/src/odf/ipmpx_code.c:482,1
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:486,1
    - Dst: gf_ipmpx_data_full_size
      Src: /src/gpac/src/odf/ipmpx_code.c:488,1
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:489,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 37
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 446
    functionDepth: 4
    functionLinenumber: 446
    functionLinenumberEnd: 492
    functionName: SizeGF_IPMPX_MutualAuthentication
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_count
    - gf_ipmpx_data_full_size
    - GF_IPMPX_GetByteArraySize
    - GF_IPMPX_AUTH_FullSize
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_MutualAuthentication(GF_IPMPX_Data *_p)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:498,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:498,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:499,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:499,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:500,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:501,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:502,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:503,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:505,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:507,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:509,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:511,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:513,1
    - Dst: WriteGF_IPMPX_AUTH
      Src: /src/gpac/src/odf/ipmpx_code.c:514,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:517,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:519,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:521,1
    - Dst: WriteGF_IPMPX_AUTH
      Src: /src/gpac/src/odf/ipmpx_code.c:522,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:525,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:527,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:531,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:533,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:534,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:536,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:537,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:542,1
    - Dst: WriteGF_IPMPX_AUTH
      Src: /src/gpac/src/odf/ipmpx_code.c:543,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:547,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:548,1
    - Dst: gf_ipmpx_data_write
      Src: /src/gpac/src/odf/ipmpx_code.c:550,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:551,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 50
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 554
      start: 493
    functionDepth: 4
    functionLinenumber: 493
    functionLinenumberEnd: 554
    functionName: WriteGF_IPMPX_MutualAuthentication
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_bs_write_int
    - gf_list_count
    - GF_IPMPX_WriteByteArray
    - gf_ipmpx_data_write
    - WriteGF_IPMPX_AUTH
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_MutualAuthentication(GF_BitStream *bs, GF_IPMPX_Data
      *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:559,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/ipmpx_code.c:560,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 562
      start: 556
    functionDepth: 1
    functionLinenumber: 556
    functionLinenumberEnd: 562
    functionName: NewGF_IPMPX_TrustSecurityMetadata
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_TrustSecurityMetadata()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:566,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:567,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/ipmpx_code.c:568,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:569,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:570,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/ipmpx_code.c:571,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:572,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:573,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/ipmpx_code.c:575,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:576,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/ipmpx_code.c:578,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:579,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 563
    functionDepth: 1
    functionLinenumber: 563
    functionLinenumberEnd: 580
    functionName: DelGF_IPMPX_TrustSecurityMetadata
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - GF_IPMPX_DELETE_ARRAY
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_TrustSecurityMetadata(GF_IPMPX_Data *_p)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:585,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/ipmpx_code.c:587,1
    - Dst: memset
      Src: /src/gpac/src/odf/ipmpx_code.c:589,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/ipmpx_code.c:592,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/ipmpx_code.c:593,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/ipmpx_code.c:594,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/ipmpx_code.c:595,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:596,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/ipmpx_code.c:599,1
    - Dst: memset
      Src: /src/gpac/src/odf/ipmpx_code.c:601,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/ipmpx_code.c:604,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:605,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:606,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:608,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/ipmpx_code.c:610,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:611,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:612,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:613,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 618
      start: 581
    functionDepth: 2
    functionLinenumber: 581
    functionLinenumberEnd: 618
    functionName: ReadGF_IPMPX_TrustSecurityMetadata
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_list_new
    - GF_IPMPX_GetByteArray
    - memset
    - gf_list_add
    - gf_bs_read_int
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_TrustSecurityMetadata(GF_BitStream *bs, GF_IPMPX_Data
      *_p, u32 size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:624,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:625,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:627,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:628,1
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:630,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 635
      start: 619
    functionDepth: 2
    functionLinenumber: 619
    functionLinenumberEnd: 635
    functionName: SizeGF_IPMPX_TrustSecurityMetadata
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - GF_IPMPX_GetByteArraySize
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_TrustSecurityMetadata(GF_IPMPX_Data *_p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:641,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:642,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:644,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/ipmpx_code.c:645,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/ipmpx_code.c:646,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:647,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:648,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:651,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:652,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:653,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:654,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/ipmpx_code.c:656,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:657,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:658,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:659,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 636
    functionDepth: 3
    functionLinenumber: 636
    functionLinenumberEnd: 664
    functionName: WriteGF_IPMPX_TrustSecurityMetadata
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_bs_write_int
    - gf_list_count
    - GF_IPMPX_WriteByteArray
    - gf_bs_write_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_TrustSecurityMetadata(GF_BitStream *bs, GF_IPMPX_Data
      *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:669,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 666
    functionDepth: 1
    functionLinenumber: 666
    functionLinenumberEnd: 671
    functionName: NewGF_IPMPX_SecureContainer
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_SecureContainer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:675,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:676,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/odf/ipmpx_code.c:677,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:678,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 672
    functionDepth: 1
    functionLinenumber: 672
    functionLinenumberEnd: 679
    functionName: DelGF_IPMPX_SecureContainer
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DELETE_ARRAY
    - gf_free
    - gf_ipmpx_data_del
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_SecureContainer(GF_IPMPX_Data *_p)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:684,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:685,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:686,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:687,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:689,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:690,1
    - Dst: gf_ipmpx_data_parse
      Src: /src/gpac/src/odf/ipmpx_code.c:692,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:694,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 697
      start: 680
    functionDepth: 2
    functionLinenumber: 680
    functionLinenumberEnd: 697
    functionName: ReadGF_IPMPX_SecureContainer
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_ipmpx_data_parse
    - GF_IPMPX_GetByteArray
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_SecureContainer(GF_BitStream *bs, GF_IPMPX_Data
      *_p, u32 size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:704,1
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:705,1
    - Dst: gf_ipmpx_data_full_size
      Src: /src/gpac/src/odf/ipmpx_code.c:707,1
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:708,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 698
    functionDepth: 2
    functionLinenumber: 698
    functionLinenumberEnd: 711
    functionName: SizeGF_IPMPX_SecureContainer
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_ipmpx_data_full_size
    - GF_IPMPX_GetByteArraySize
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_SecureContainer(GF_IPMPX_Data *_p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:716,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:717,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:718,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:719,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:721,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:722,1
    - Dst: gf_ipmpx_data_write
      Src: /src/gpac/src/odf/ipmpx_code.c:724,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:726,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 712
    functionDepth: 3
    functionLinenumber: 712
    functionLinenumberEnd: 729
    functionName: WriteGF_IPMPX_SecureContainer
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_WriteByteArray
    - gf_bs_write_int
    - gf_ipmpx_data_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_SecureContainer(GF_BitStream *bs, GF_IPMPX_Data
      *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:734,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/ipmpx_code.c:735,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 737
      start: 731
    functionDepth: 1
    functionLinenumber: 731
    functionLinenumberEnd: 737
    functionName: NewGF_IPMPX_GetToolsResponse
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_GetToolsResponse()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:741,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:743,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/ipmpx_code.c:744,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/odf/ipmpx_code.c:745,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/ipmpx_code.c:747,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:748,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 749
      start: 738
    functionDepth: 2
    functionLinenumber: 738
    functionLinenumberEnd: 749
    functionName: DelGF_IPMPX_GetToolsResponse
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_odf_desc_del
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_GetToolsResponse(GF_IPMPX_Data *_p)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/ipmpx_code.c:758,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/ipmpx_code.c:759,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/ipmpx_code.c:761,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/ipmpx_code.c:762,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 766
      start: 750
    functionDepth: 2
    functionLinenumber: 750
    functionLinenumberEnd: 766
    functionName: ReadGF_IPMPX_GetToolsResponse
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_parse_descriptor
    - gf_list_add
    - gf_bs_get_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_GetToolsResponse(GF_BitStream *bs, GF_IPMPX_Data
      *_p, u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/ipmpx_code.c:771,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 773
      start: 767
    functionDepth: 2
    functionLinenumber: 767
    functionLinenumberEnd: 773
    functionName: SizeGF_IPMPX_GetToolsResponse
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_descriptor_list
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_GetToolsResponse(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:778,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:779,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/ipmpx_code.c:780,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 783
      start: 774
    functionDepth: 1
    functionLinenumber: 774
    functionLinenumberEnd: 783
    functionName: WriteGF_IPMPX_GetToolsResponse
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_odf_write_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_GetToolsResponse(GF_BitStream *bs, GF_IPMPX_Data
      *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:787,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/ipmpx_code.c:788,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 790
      start: 784
    functionDepth: 1
    functionLinenumber: 784
    functionLinenumberEnd: 790
    functionName: NewGF_IPMPX_ParametricDescription
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_ParametricDescription()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:794,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:795,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:796,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/ipmpx_code.c:797,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:798,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:799,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:800,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:801,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:802,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:803,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/ipmpx_code.c:805,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:806,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 807
      start: 791
    functionDepth: 1
    functionLinenumber: 791
    functionLinenumberEnd: 807
    functionName: DelGF_IPMPX_ParametricDescription
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - GF_IPMPX_DELETE_ARRAY
    - gf_list_count
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_ParametricDescription(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:812,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:813,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:814,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:815,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/ipmpx_code.c:817,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/ipmpx_code.c:818,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:820,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:821,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:822,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:823,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:824,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 808
    functionDepth: 2
    functionLinenumber: 808
    functionLinenumberEnd: 827
    functionName: ReadGF_IPMPX_ParametricDescription
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - GF_IPMPX_GetByteArray
    - gf_list_add
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_ParametricDescription(GF_BitStream *bs, GF_IPMPX_Data
      *_p, u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:832,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:834,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:835,1
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:836,1
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:837,1
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:838,1
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:839,1
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:840,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 828
    functionDepth: 2
    functionLinenumber: 828
    functionLinenumberEnd: 843
    functionName: SizeGF_IPMPX_ParametricDescription
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - GF_IPMPX_GetByteArraySize
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_ParametricDescription(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:848,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:849,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:850,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:851,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:851,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:853,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:854,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:855,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:856,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:857,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:858,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:859,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 862
      start: 844
    functionDepth: 3
    functionLinenumber: 844
    functionLinenumberEnd: 862
    functionName: WriteGF_IPMPX_ParametricDescription
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_WriteByteArray
    - gf_list_count
    - gf_bs_write_int
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_ParametricDescription(GF_BitStream *bs, GF_IPMPX_Data
      *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:866,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 868
      start: 863
    functionDepth: 1
    functionLinenumber: 863
    functionLinenumberEnd: 868
    functionName: NewGF_IPMPX_ToolParamCapabilitiesQuery
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_ToolParamCapabilitiesQuery()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/odf/ipmpx_code.c:872,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:873,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 874
      start: 869
    functionDepth: 1
    functionLinenumber: 869
    functionLinenumberEnd: 874
    functionName: DelGF_IPMPX_ToolParamCapabilitiesQuery
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_ipmpx_data_del
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_ToolParamCapabilitiesQuery(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_ipmpx_data_parse
      Src: /src/gpac/src/odf/ipmpx_code.c:878,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 879
      start: 875
    functionDepth: 2
    functionLinenumber: 875
    functionLinenumberEnd: 879
    functionName: ReadGF_IPMPX_ToolParamCapabilitiesQuery
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_ipmpx_data_parse
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_ToolParamCapabilitiesQuery(GF_BitStream *bs, GF_IPMPX_Data
      *_p, u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_ipmpx_data_full_size
      Src: /src/gpac/src/odf/ipmpx_code.c:883,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 884
      start: 880
    functionDepth: 2
    functionLinenumber: 880
    functionLinenumberEnd: 884
    functionName: SizeGF_IPMPX_ToolParamCapabilitiesQuery
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_ipmpx_data_full_size
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_ToolParamCapabilitiesQuery(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_ipmpx_data_write
      Src: /src/gpac/src/odf/ipmpx_code.c:888,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 889
      start: 885
    functionDepth: 1
    functionLinenumber: 885
    functionLinenumberEnd: 889
    functionName: WriteGF_IPMPX_ToolParamCapabilitiesQuery
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_ipmpx_data_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_ToolParamCapabilitiesQuery(GF_BitStream *bs, GF_IPMPX_Data
      *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:893,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 895
      start: 890
    functionDepth: 1
    functionLinenumber: 890
    functionLinenumberEnd: 895
    functionName: NewGF_IPMPX_ToolParamCapabilitiesResponse
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_ToolParamCapabilitiesResponse()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:898,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 899
      start: 896
    functionDepth: 0
    functionLinenumber: 896
    functionLinenumberEnd: 899
    functionName: DelGF_IPMPX_ToolParamCapabilitiesResponse
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_ToolParamCapabilitiesResponse(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:903,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:904,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 906
      start: 900
    functionDepth: 1
    functionLinenumber: 900
    functionLinenumberEnd: 906
    functionName: ReadGF_IPMPX_ToolParamCapabilitiesResponse
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_ToolParamCapabilitiesResponse(GF_BitStream *bs,
      GF_IPMPX_Data *_p, u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 910
      start: 907
    functionDepth: 0
    functionLinenumber: 907
    functionLinenumberEnd: 910
    functionName: SizeGF_IPMPX_ToolParamCapabilitiesResponse
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_ToolParamCapabilitiesResponse(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:914,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:915,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 917
      start: 911
    functionDepth: 1
    functionLinenumber: 911
    functionLinenumberEnd: 917
    functionName: WriteGF_IPMPX_ToolParamCapabilitiesResponse
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_ToolParamCapabilitiesResponse(GF_BitStream *bs,
      GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:922,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 924
      start: 919
    functionDepth: 1
    functionLinenumber: 919
    functionLinenumberEnd: 924
    functionName: NewGF_IPMPX_ConnectTool
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_ConnectTool()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/odf/ipmpx_code.c:928,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:929,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 930
      start: 925
    functionDepth: 2
    functionLinenumber: 925
    functionLinenumberEnd: 930
    functionName: DelGF_IPMPX_ConnectTool
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_desc_del
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_ConnectTool(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/ipmpx_code.c:935,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 936
      start: 931
    functionDepth: 2
    functionLinenumber: 931
    functionLinenumberEnd: 936
    functionName: ReadGF_IPMPX_ConnectTool
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_parse_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_ConnectTool(GF_BitStream *bs, GF_IPMPX_Data *_p,
      u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/ipmpx_code.c:941,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/ipmpx_code.c:942,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 944
      start: 937
    functionDepth: 1
    functionLinenumber: 937
    functionLinenumberEnd: 944
    functionName: SizeGF_IPMPX_ConnectTool
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_field_size
    - gf_odf_size_descriptor
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_ConnectTool(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/ipmpx_code.c:948,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 950
      start: 945
    functionDepth: 1
    functionLinenumber: 945
    functionLinenumberEnd: 950
    functionName: WriteGF_IPMPX_ConnectTool
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_write_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_ConnectTool(GF_BitStream *bs, GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:954,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 956
      start: 951
    functionDepth: 1
    functionLinenumber: 951
    functionLinenumberEnd: 956
    functionName: NewGF_IPMPX_DisconnectTool
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_DisconnectTool()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:959,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 960
      start: 957
    functionDepth: 0
    functionLinenumber: 957
    functionLinenumberEnd: 960
    functionName: DelGF_IPMPX_DisconnectTool
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_DisconnectTool(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:964,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 966
      start: 961
    functionDepth: 1
    functionLinenumber: 961
    functionLinenumberEnd: 966
    functionName: ReadGF_IPMPX_DisconnectTool
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_DisconnectTool(GF_BitStream *bs, GF_IPMPX_Data
      *_p, u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 970
      start: 967
    functionDepth: 0
    functionLinenumber: 967
    functionLinenumberEnd: 970
    functionName: SizeGF_IPMPX_DisconnectTool
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_DisconnectTool(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:974,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 976
      start: 971
    functionDepth: 1
    functionLinenumber: 971
    functionLinenumberEnd: 976
    functionName: WriteGF_IPMPX_DisconnectTool
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_DisconnectTool(GF_BitStream *bs, GF_IPMPX_Data
      *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:981,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 978
    functionDepth: 1
    functionLinenumber: 978
    functionLinenumberEnd: 983
    functionName: NewGF_IPMPX_GetToolContext
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_GetToolContext()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:986,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 987
      start: 984
    functionDepth: 0
    functionLinenumber: 984
    functionLinenumberEnd: 987
    functionName: DelGF_IPMPX_GetToolContext
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_GetToolContext(GF_IPMPX_Data *_p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:992,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:993,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:994,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:995,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 998
      start: 988
    functionDepth: 1
    functionLinenumber: 988
    functionLinenumberEnd: 998
    functionName: ReadGF_IPMPX_GetToolContext
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_GetToolContext(GF_BitStream *bs, GF_IPMPX_Data
      *_p, u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1003
      start: 999
    functionDepth: 0
    functionLinenumber: 999
    functionLinenumberEnd: 1003
    functionName: SizeGF_IPMPX_GetToolContext
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_GetToolContext(GF_IPMPX_Data *_p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1007,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1008,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1009,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1010,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1012
      start: 1004
    functionDepth: 1
    functionLinenumber: 1004
    functionLinenumberEnd: 1012
    functionName: WriteGF_IPMPX_GetToolContext
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_GetToolContext(GF_BitStream *bs, GF_IPMPX_Data
      *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:1016,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 1013
    functionDepth: 1
    functionLinenumber: 1013
    functionLinenumberEnd: 1018
    functionName: NewGF_IPMPX_GetToolContextResponse
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_GetToolContextResponse()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1021,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1022
      start: 1019
    functionDepth: 0
    functionLinenumber: 1019
    functionLinenumberEnd: 1022
    functionName: DelGF_IPMPX_GetToolContextResponse
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_GetToolContextResponse(GF_IPMPX_Data *_p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1027,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1028,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1029,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1030,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1031,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1033
      start: 1023
    functionDepth: 1
    functionLinenumber: 1023
    functionLinenumberEnd: 1033
    functionName: ReadGF_IPMPX_GetToolContextResponse
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_GetToolContextResponse(GF_BitStream *bs, GF_IPMPX_Data
      *_p, u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1038
      start: 1034
    functionDepth: 0
    functionLinenumber: 1034
    functionLinenumberEnd: 1038
    functionName: SizeGF_IPMPX_GetToolContextResponse
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_GetToolContextResponse(GF_IPMPX_Data *_p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1042,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1043,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1044,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1045,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1046,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1048
      start: 1039
    functionDepth: 1
    functionLinenumber: 1039
    functionLinenumberEnd: 1048
    functionName: WriteGF_IPMPX_GetToolContextResponse
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_GetToolContextResponse(GF_BitStream *bs, GF_IPMPX_Data
      *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:1054,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1056
      start: 1051
    functionDepth: 1
    functionLinenumber: 1051
    functionLinenumberEnd: 1056
    functionName: NewGF_IPMPX_AddToolNotificationListener
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_AddToolNotificationListener()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1059,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1060
      start: 1057
    functionDepth: 0
    functionLinenumber: 1057
    functionLinenumberEnd: 1060
    functionName: DelGF_IPMPX_AddToolNotificationListener
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_AddToolNotificationListener(GF_IPMPX_Data *_p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1065,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1066,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1067,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/odf/ipmpx_code.c:1068,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1070,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1072
      start: 1061
    functionDepth: 1
    functionLinenumber: 1061
    functionLinenumberEnd: 1072
    functionName: ReadGF_IPMPX_AddToolNotificationListener
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_ARRAY_LENGTH
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_AddToolNotificationListener(GF_BitStream *bs, GF_IPMPX_Data
      *_p, u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1077
      start: 1073
    functionDepth: 0
    functionLinenumber: 1073
    functionLinenumberEnd: 1077
    functionName: SizeGF_IPMPX_AddToolNotificationListener
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_AddToolNotificationListener(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1082,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1083,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1084,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1085,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1087
      start: 1078
    functionDepth: 1
    functionLinenumber: 1078
    functionLinenumberEnd: 1087
    functionName: WriteGF_IPMPX_AddToolNotificationListener
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_AddToolNotificationListener(GF_BitStream *bs,
      GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:1091,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1093
      start: 1088
    functionDepth: 1
    functionLinenumber: 1088
    functionLinenumberEnd: 1093
    functionName: NewGF_IPMPX_RemoveToolNotificationListener
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_RemoveToolNotificationListener()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1096,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1097
      start: 1094
    functionDepth: 0
    functionLinenumber: 1094
    functionLinenumberEnd: 1097
    functionName: DelGF_IPMPX_RemoveToolNotificationListener
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_RemoveToolNotificationListener(GF_IPMPX_Data *_p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1104,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/odf/ipmpx_code.c:1105,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1109,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1111
      start: 1098
    functionDepth: 1
    functionLinenumber: 1098
    functionLinenumberEnd: 1111
    functionName: ReadGF_IPMPX_RemoveToolNotificationListener
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_ARRAY_LENGTH
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_RemoveToolNotificationListener(GF_BitStream *bs,
      GF_IPMPX_Data *_p, u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1116
      start: 1112
    functionDepth: 0
    functionLinenumber: 1112
    functionLinenumberEnd: 1116
    functionName: SizeGF_IPMPX_RemoveToolNotificationListener
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_RemoveToolNotificationListener(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1121,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1124
      start: 1117
    functionDepth: 1
    functionLinenumber: 1117
    functionLinenumberEnd: 1124
    functionName: WriteGF_IPMPX_RemoveToolNotificationListener
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_RemoveToolNotificationListener(GF_BitStream *bs,
      GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:1129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1131
      start: 1126
    functionDepth: 1
    functionLinenumber: 1126
    functionLinenumberEnd: 1131
    functionName: NewGF_IPMPX_NotifyToolEvent
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_NotifyToolEvent()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1135
      start: 1132
    functionDepth: 0
    functionLinenumber: 1132
    functionLinenumberEnd: 1135
    functionName: DelGF_IPMPX_NotifyToolEvent
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_NotifyToolEvent(GF_IPMPX_Data *_p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1140,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1141,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1143,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1144,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1145,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1147,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1148,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1150
      start: 1136
    functionDepth: 1
    functionLinenumber: 1136
    functionLinenumberEnd: 1150
    functionName: ReadGF_IPMPX_NotifyToolEvent
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_NotifyToolEvent(GF_BitStream *bs, GF_IPMPX_Data
      *_p, u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1155
      start: 1151
    functionDepth: 0
    functionLinenumber: 1151
    functionLinenumberEnd: 1155
    functionName: SizeGF_IPMPX_NotifyToolEvent
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_NotifyToolEvent(GF_IPMPX_Data *_p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1159,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1160,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1162,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1163,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1164,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1166,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1167,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1169
      start: 1156
    functionDepth: 1
    functionLinenumber: 1156
    functionLinenumberEnd: 1169
    functionName: WriteGF_IPMPX_NotifyToolEvent
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_NotifyToolEvent(GF_BitStream *bs, GF_IPMPX_Data
      *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:1173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1175
      start: 1170
    functionDepth: 1
    functionLinenumber: 1170
    functionLinenumberEnd: 1175
    functionName: NewGF_IPMPX_CanProcess
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_CanProcess()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1179
      start: 1176
    functionDepth: 0
    functionLinenumber: 1176
    functionLinenumberEnd: 1179
    functionName: DelGF_IPMPX_CanProcess
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_CanProcess(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1183,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1186
      start: 1180
    functionDepth: 1
    functionLinenumber: 1180
    functionLinenumberEnd: 1186
    functionName: ReadGF_IPMPX_CanProcess
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_CanProcess(GF_BitStream *bs, GF_IPMPX_Data *_p,
      u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1190
      start: 1187
    functionDepth: 0
    functionLinenumber: 1187
    functionLinenumberEnd: 1190
    functionName: SizeGF_IPMPX_CanProcess
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_CanProcess(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1194,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1197
      start: 1191
    functionDepth: 1
    functionLinenumber: 1191
    functionLinenumberEnd: 1197
    functionName: WriteGF_IPMPX_CanProcess
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_CanProcess(GF_BitStream *bs, GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:1201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - tag
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1203
      start: 1198
    functionDepth: 1
    functionLinenumber: 1198
    functionLinenumberEnd: 1203
    functionName: NewGF_IPMPX_OpaqueData
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_OpaqueData(u8 tag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:1207,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1209
      start: 1204
    functionDepth: 1
    functionLinenumber: 1204
    functionLinenumberEnd: 1209
    functionName: DelGF_IPMPX_OpaqueData
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DELETE_ARRAY
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_OpaqueData(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:1213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1215
      start: 1210
    functionDepth: 2
    functionLinenumber: 1210
    functionLinenumberEnd: 1215
    functionName: ReadGF_IPMPX_OpaqueData
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_GetByteArray
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_OpaqueData(GF_BitStream *bs, GF_IPMPX_Data *_p,
      u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:1219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1220
      start: 1216
    functionDepth: 2
    functionLinenumber: 1216
    functionLinenumberEnd: 1220
    functionName: SizeGF_IPMPX_OpaqueData
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_GetByteArraySize
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_OpaqueData(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:1224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1226
      start: 1221
    functionDepth: 3
    functionLinenumber: 1221
    functionLinenumberEnd: 1226
    functionName: WriteGF_IPMPX_OpaqueData
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_WriteByteArray
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_OpaqueData(GF_BitStream *bs, GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:1230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1232
      start: 1227
    functionDepth: 1
    functionLinenumber: 1227
    functionLinenumberEnd: 1232
    functionName: NewGF_IPMPX_KeyData
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_KeyData()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:1236,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:1237,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1239
      start: 1233
    functionDepth: 1
    functionLinenumber: 1233
    functionLinenumberEnd: 1239
    functionName: DelGF_IPMPX_KeyData
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DELETE_ARRAY
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_KeyData(GF_IPMPX_Data *_p)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:1243,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1245,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1246,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1247,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1248,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1249,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1250,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1251,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1252,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1253,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:1254,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1256
      start: 1240
    functionDepth: 2
    functionLinenumber: 1240
    functionLinenumberEnd: 1256
    functionName: ReadGF_IPMPX_KeyData
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_GetByteArray
    - gf_bs_read_long_int
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_KeyData(GF_BitStream *bs, GF_IPMPX_Data *_p, u32
      size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:1261,1
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:1267,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1269
      start: 1257
    functionDepth: 2
    functionLinenumber: 1257
    functionLinenumberEnd: 1269
    functionName: SizeGF_IPMPX_KeyData
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_GetByteArraySize
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_KeyData(GF_IPMPX_Data *_p)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:1273,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1274,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1275,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1276,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1277,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1278,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1279,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1280,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1281,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1282,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:1283,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1285
      start: 1270
    functionDepth: 3
    functionLinenumber: 1270
    functionLinenumberEnd: 1285
    functionName: WriteGF_IPMPX_KeyData
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_WriteByteArray
    - gf_bs_write_int
    - gf_bs_write_long_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_KeyData(GF_BitStream *bs, GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:1290,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/ipmpx_code.c:1291,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/ipmpx_code.c:1292,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1294
      start: 1287
    functionDepth: 1
    functionLinenumber: 1287
    functionLinenumberEnd: 1294
    functionName: NewGF_IPMPX_SelectiveDecryptionInit
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_SelectiveDecryptionInit()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:1298,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:1299,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/ipmpx_code.c:1300,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:1301,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1302,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/ipmpx_code.c:1304,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:1305,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:1306,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/ipmpx_code.c:1307,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:1308,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1309,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1310,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/ipmpx_code.c:1312,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1313,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1314,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1315
      start: 1295
    functionDepth: 1
    functionLinenumber: 1295
    functionLinenumberEnd: 1315
    functionName: DelGF_IPMPX_SelectiveDecryptionInit
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - GF_IPMPX_DELETE_ARRAY
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_SelectiveDecryptionInit(GF_IPMPX_Data *_p)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1321,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1322,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1323,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1324,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1325,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:1329,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/ipmpx_code.c:1332,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/ipmpx_code.c:1334,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1335,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1336,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1337,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1339,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1340,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1341,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:1343,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1346,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1347,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1350,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:1353,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/ipmpx_code.c:1356,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1358,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1359,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1360,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1361,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1362,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1363,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1365,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1366,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1367,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1369,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/ipmpx_code.c:1370,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1371,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:1373,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1377,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/ipmpx_code.c:1378,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1379,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 59
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1382
      start: 1316
    functionDepth: 2
    functionLinenumber: 1316
    functionLinenumberEnd: 1382
    functionName: ReadGF_IPMPX_SelectiveDecryptionInit
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - GF_SAFEALLOC
    - GF_IPMPX_GetByteArray
    - gf_list_add
    - gf_bs_read_int
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_SelectiveDecryptionInit(GF_BitStream *bs, GF_IPMPX_Data
      *_p, u32 size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:1389,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:1390,1
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:1393,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:1403,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:1404,1
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:1409,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1414
      start: 1383
    functionDepth: 2
    functionLinenumber: 1383
    functionLinenumberEnd: 1414
    functionName: SizeGF_IPMPX_SelectiveDecryptionInit
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - GF_IPMPX_GetByteArraySize
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_SelectiveDecryptionInit(GF_IPMPX_Data *_p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1420,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1421,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1422,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1423,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:1425,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1426,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:1428,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/ipmpx_code.c:1429,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1430,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1431,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1432,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:1434,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1436,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1437,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1438,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1441,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1442,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1444,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1445,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:1447,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1448,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:1450,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1451,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1452,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1453,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1454,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1455,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1456,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1458,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1459,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1460,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1462,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1463,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:1465,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 51
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1470
      start: 1415
    functionDepth: 3
    functionLinenumber: 1415
    functionLinenumberEnd: 1470
    functionName: WriteGF_IPMPX_SelectiveDecryptionInit
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_bs_write_int
    - gf_list_count
    - GF_IPMPX_WriteByteArray
    - gf_bs_write_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_SelectiveDecryptionInit(GF_BitStream *bs, GF_IPMPX_Data
      *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:1474,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - tag
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1476
      start: 1471
    functionDepth: 1
    functionLinenumber: 1471
    functionLinenumberEnd: 1476
    functionName: NewGF_IPMPX_WatermarkingInit
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_WatermarkingInit(u8 tag)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1480,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1481,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1482,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1483
      start: 1477
    functionDepth: 0
    functionLinenumber: 1477
    functionLinenumberEnd: 1483
    functionName: DelGF_IPMPX_WatermarkingInit
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_WatermarkingInit(GF_IPMPX_Data *_p)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1489,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1490,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1491,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1492,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1495,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1496,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1497,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1499,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1500,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1501,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1507,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/ipmpx_code.c:1508,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/ipmpx_code.c:1509,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1513,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1517,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/ipmpx_code.c:1518,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/ipmpx_code.c:1519,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 34
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1522
      start: 1484
    functionDepth: 1
    functionLinenumber: 1484
    functionLinenumberEnd: 1522
    functionName: ReadGF_IPMPX_WatermarkingInit
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_data
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_WatermarkingInit(GF_BitStream *bs, GF_IPMPX_Data
      *_p, u32 size)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1541
      start: 1523
    functionDepth: 0
    functionLinenumber: 1523
    functionLinenumberEnd: 1541
    functionName: SizeGF_IPMPX_WatermarkingInit
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_WatermarkingInit(GF_IPMPX_Data *_p)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1546,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1547,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1548,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1549,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1552,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1553,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1554,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1556,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1557,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1558,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1564,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/ipmpx_code.c:1565,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1569,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1573,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/ipmpx_code.c:1574,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 32
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1577
      start: 1542
    functionDepth: 1
    functionLinenumber: 1542
    functionLinenumberEnd: 1577
    functionName: WriteGF_IPMPX_WatermarkingInit
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_WatermarkingInit(GF_BitStream *bs, GF_IPMPX_Data
      *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:1581,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - tag
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1583
      start: 1578
    functionDepth: 1
    functionLinenumber: 1578
    functionLinenumberEnd: 1583
    functionName: NewGF_IPMPX_SendWatermark
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_SendWatermark(u8 tag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:1587,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:1588,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1589,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1590
      start: 1584
    functionDepth: 1
    functionLinenumber: 1584
    functionLinenumberEnd: 1590
    functionName: DelGF_IPMPX_SendWatermark
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DELETE_ARRAY
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_SendWatermark(GF_IPMPX_Data *_p)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1595,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1596,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1597,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1598,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:1599,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:1600,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1602
      start: 1591
    functionDepth: 2
    functionLinenumber: 1591
    functionLinenumberEnd: 1602
    functionName: ReadGF_IPMPX_SendWatermark
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_GetByteArray
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_SendWatermark(GF_BitStream *bs, GF_IPMPX_Data *_p,
      u32 size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:1608,1
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:1609,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1611
      start: 1603
    functionDepth: 2
    functionLinenumber: 1603
    functionLinenumberEnd: 1611
    functionName: SizeGF_IPMPX_SendWatermark
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_GetByteArraySize
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_SendWatermark(GF_IPMPX_Data *_p)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1616,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1617,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1618,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1619,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:1620,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:1621,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1623
      start: 1612
    functionDepth: 3
    functionLinenumber: 1612
    functionLinenumberEnd: 1623
    functionName: WriteGF_IPMPX_SendWatermark
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_WriteByteArray
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_SendWatermark(GF_BitStream *bs, GF_IPMPX_Data
      *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:1628,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1630
      start: 1625
    functionDepth: 1
    functionLinenumber: 1625
    functionLinenumberEnd: 1630
    functionName: NewGF_IPMPX_ToolAPI_Config
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_ToolAPI_Config()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:1634,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1635,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1636
      start: 1631
    functionDepth: 1
    functionLinenumber: 1631
    functionLinenumberEnd: 1636
    functionName: DelGF_IPMPX_ToolAPI_Config
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DELETE_ARRAY
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_ToolAPI_Config(GF_IPMPX_Data *_p)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1641,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1642,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1643,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1644,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1645,1
    - Dst: GF_IPMPX_GetByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:1646,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1648
      start: 1637
    functionDepth: 2
    functionLinenumber: 1637
    functionLinenumberEnd: 1648
    functionName: ReadGF_IPMPX_ToolAPI_Config
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_GetByteArray
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_ToolAPI_Config(GF_BitStream *bs, GF_IPMPX_Data
      *_p, u32 size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_GetByteArraySize
      Src: /src/gpac/src/odf/ipmpx_code.c:1656,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1658
      start: 1649
    functionDepth: 2
    functionLinenumber: 1649
    functionLinenumberEnd: 1658
    functionName: SizeGF_IPMPX_ToolAPI_Config
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_GetByteArraySize
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_ToolAPI_Config(GF_IPMPX_Data *_p)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1662,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1663,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1664,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1665,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1666,1
    - Dst: GF_IPMPX_WriteByteArray
      Src: /src/gpac/src/odf/ipmpx_code.c:1667,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1669
      start: 1659
    functionDepth: 3
    functionLinenumber: 1659
    functionLinenumberEnd: 1669
    functionName: WriteGF_IPMPX_ToolAPI_Config
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_WriteByteArray
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_ToolAPI_Config(GF_BitStream *bs, GF_IPMPX_Data
      *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:1674,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1676
      start: 1671
    functionDepth: 1
    functionLinenumber: 1671
    functionLinenumberEnd: 1676
    functionName: NewGF_IPMPX_ISMACryp
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - GF_IPMPX_DATA_ALLOC
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *NewGF_IPMPX_ISMACryp()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1680,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1681
      start: 1677
    functionDepth: 0
    functionLinenumber: 1677
    functionLinenumberEnd: 1681
    functionName: DelGF_IPMPX_ISMACryp
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void DelGF_IPMPX_ISMACryp(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1685,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1686,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1687,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1688,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1689,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - bs
    - _p
    - size
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1691
      start: 1682
    functionDepth: 1
    functionLinenumber: 1682
    functionLinenumberEnd: 1691
    functionName: ReadGF_IPMPX_ISMACryp
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ReadGF_IPMPX_ISMACryp(GF_BitStream *bs, GF_IPMPX_Data *_p, u32
      size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1695
      start: 1692
    functionDepth: 0
    functionLinenumber: 1692
    functionLinenumberEnd: 1695
    functionName: SizeGF_IPMPX_ISMACryp
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 SizeGF_IPMPX_ISMACryp(GF_IPMPX_Data *_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1699,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1700,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1701,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1702,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/ipmpx_code.c:1703,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1705
      start: 1696
    functionDepth: 1
    functionLinenumber: 1696
    functionLinenumberEnd: 1705
    functionName: WriteGF_IPMPX_ISMACryp
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err WriteGF_IPMPX_ISMACryp(GF_BitStream *bs, GF_IPMPX_Data *_p)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: NewGF_IPMPX_OpaqueData
      Src: /src/gpac/src/odf/ipmpx_code.c:1712,1
    - Dst: NewGF_IPMPX_KeyData
      Src: /src/gpac/src/odf/ipmpx_code.c:1714,1
    - Dst: NewGF_IPMPX_SecureContainer
      Src: /src/gpac/src/odf/ipmpx_code.c:1716,1
    - Dst: NewGF_IPMPX_AddToolNotificationListener
      Src: /src/gpac/src/odf/ipmpx_code.c:1718,1
    - Dst: NewGF_IPMPX_RemoveToolNotificationListener
      Src: /src/gpac/src/odf/ipmpx_code.c:1720,1
    - Dst: NewGF_IPMPX_InitAuthentication
      Src: /src/gpac/src/odf/ipmpx_code.c:1722,1
    - Dst: NewGF_IPMPX_MutualAuthentication
      Src: /src/gpac/src/odf/ipmpx_code.c:1724,1
    - Dst: NewGF_IPMPX_ParametricDescription
      Src: /src/gpac/src/odf/ipmpx_code.c:1726,1
    - Dst: NewGF_IPMPX_ToolParamCapabilitiesQuery
      Src: /src/gpac/src/odf/ipmpx_code.c:1728,1
    - Dst: NewGF_IPMPX_ToolParamCapabilitiesResponse
      Src: /src/gpac/src/odf/ipmpx_code.c:1730,1
    - Dst: NewGF_IPMPX_GetToolsResponse
      Src: /src/gpac/src/odf/ipmpx_code.c:1732,1
    - Dst: NewGF_IPMPX_GetToolContext
      Src: /src/gpac/src/odf/ipmpx_code.c:1734,1
    - Dst: NewGF_IPMPX_GetToolContextResponse
      Src: /src/gpac/src/odf/ipmpx_code.c:1736,1
    - Dst: NewGF_IPMPX_ConnectTool
      Src: /src/gpac/src/odf/ipmpx_code.c:1738,1
    - Dst: NewGF_IPMPX_DisconnectTool
      Src: /src/gpac/src/odf/ipmpx_code.c:1740,1
    - Dst: NewGF_IPMPX_NotifyToolEvent
      Src: /src/gpac/src/odf/ipmpx_code.c:1742,1
    - Dst: NewGF_IPMPX_CanProcess
      Src: /src/gpac/src/odf/ipmpx_code.c:1744,1
    - Dst: NewGF_IPMPX_TrustSecurityMetadata
      Src: /src/gpac/src/odf/ipmpx_code.c:1746,1
    - Dst: NewGF_IPMPX_ISMACryp
      Src: /src/gpac/src/odf/ipmpx_code.c:1748,1
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:1752,1
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:1758,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/ipmpx_code.c:1759,1
    - Dst: GF_IPMPX_DATA_ALLOC
      Src: /src/gpac/src/odf/ipmpx_code.c:1765,1
    - Dst: NewGF_IPMPX_ToolAPI_Config
      Src: /src/gpac/src/odf/ipmpx_code.c:1769,1
    - Dst: NewGF_IPMPX_SelectiveDecryptionInit
      Src: /src/gpac/src/odf/ipmpx_code.c:1771,1
    - Dst: NewGF_IPMPX_WatermarkingInit
      Src: /src/gpac/src/odf/ipmpx_code.c:1774,1
    - Dst: NewGF_IPMPX_SendWatermark
      Src: /src/gpac/src/odf/ipmpx_code.c:1777,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/ipmpx_code.c:1781,1
    - Dst: memset
      Src: /src/gpac/src/odf/ipmpx_code.c:1783,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/ipmpx_code.c:1789,1
    - Dst: memset
      Src: /src/gpac/src/odf/ipmpx_code.c:1791,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/ipmpx_code.c:1798,1
    - Dst: memset
      Src: /src/gpac/src/odf/ipmpx_code.c:1800,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/ipmpx_code.c:1806,1
    - Dst: memset
      Src: /src/gpac/src/odf/ipmpx_code.c:1808,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/ipmpx_code.c:1814,1
    - Dst: memset
      Src: /src/gpac/src/odf/ipmpx_code.c:1816,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 102
    argCount: 1
    argNames:
    - tag
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1829
      start: 1707
    functionDepth: 2
    functionLinenumber: 1707
    functionLinenumberEnd: 1829
    functionName: gf_ipmpx_data_new
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 1
    functionsReached:
    - NewGF_IPMPX_ConnectTool
    - NewGF_IPMPX_ToolParamCapabilitiesResponse
    - NewGF_IPMPX_ParametricDescription
    - memset
    - NewGF_IPMPX_AddToolNotificationListener
    - gf_list_new
    - NewGF_IPMPX_ToolAPI_Config
    - GF_IPMPX_DATA_ALLOC
    - NewGF_IPMPX_OpaqueData
    - NewGF_IPMPX_KeyData
    - NewGF_IPMPX_ISMACryp
    - NewGF_IPMPX_NotifyToolEvent
    - NewGF_IPMPX_GetToolContextResponse
    - NewGF_IPMPX_DisconnectTool
    - NewGF_IPMPX_SecureContainer
    - NewGF_IPMPX_ToolParamCapabilitiesQuery
    - NewGF_IPMPX_WatermarkingInit
    - NewGF_IPMPX_GetToolContext
    - gf_malloc
    - NewGF_IPMPX_InitAuthentication
    - NewGF_IPMPX_SendWatermark
    - NewGF_IPMPX_RemoveToolNotificationListener
    - NewGF_IPMPX_TrustSecurityMetadata
    - NewGF_IPMPX_MutualAuthentication
    - NewGF_IPMPX_SelectiveDecryptionInit
    - NewGF_IPMPX_GetToolsResponse
    - NewGF_IPMPX_CanProcess
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *gf_ipmpx_data_new(u8 tag)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: DelGF_IPMPX_OpaqueData
      Src: /src/gpac/src/odf/ipmpx_code.c:1837,1
    - Dst: DelGF_IPMPX_KeyData
      Src: /src/gpac/src/odf/ipmpx_code.c:1840,1
    - Dst: DelGF_IPMPX_SecureContainer
      Src: /src/gpac/src/odf/ipmpx_code.c:1843,1
    - Dst: DelGF_IPMPX_AddToolNotificationListener
      Src: /src/gpac/src/odf/ipmpx_code.c:1846,1
    - Dst: DelGF_IPMPX_RemoveToolNotificationListener
      Src: /src/gpac/src/odf/ipmpx_code.c:1849,1
    - Dst: DelGF_IPMPX_InitAuthentication
      Src: /src/gpac/src/odf/ipmpx_code.c:1852,1
    - Dst: DelGF_IPMPX_MutualAuthentication
      Src: /src/gpac/src/odf/ipmpx_code.c:1855,1
    - Dst: DelGF_IPMPX_ParametricDescription
      Src: /src/gpac/src/odf/ipmpx_code.c:1858,1
    - Dst: DelGF_IPMPX_ToolParamCapabilitiesQuery
      Src: /src/gpac/src/odf/ipmpx_code.c:1861,1
    - Dst: DelGF_IPMPX_ToolParamCapabilitiesResponse
      Src: /src/gpac/src/odf/ipmpx_code.c:1864,1
    - Dst: DelGF_IPMPX_GetToolsResponse
      Src: /src/gpac/src/odf/ipmpx_code.c:1867,1
    - Dst: DelGF_IPMPX_GetToolContext
      Src: /src/gpac/src/odf/ipmpx_code.c:1870,1
    - Dst: DelGF_IPMPX_GetToolContextResponse
      Src: /src/gpac/src/odf/ipmpx_code.c:1873,1
    - Dst: DelGF_IPMPX_ConnectTool
      Src: /src/gpac/src/odf/ipmpx_code.c:1876,1
    - Dst: DelGF_IPMPX_DisconnectTool
      Src: /src/gpac/src/odf/ipmpx_code.c:1879,1
    - Dst: DelGF_IPMPX_NotifyToolEvent
      Src: /src/gpac/src/odf/ipmpx_code.c:1882,1
    - Dst: DelGF_IPMPX_CanProcess
      Src: /src/gpac/src/odf/ipmpx_code.c:1885,1
    - Dst: DelGF_IPMPX_TrustSecurityMetadata
      Src: /src/gpac/src/odf/ipmpx_code.c:1888,1
    - Dst: DelGF_IPMPX_ToolAPI_Config
      Src: /src/gpac/src/odf/ipmpx_code.c:1891,1
    - Dst: DelGF_IPMPX_ISMACryp
      Src: /src/gpac/src/odf/ipmpx_code.c:1894,1
    - Dst: DelGF_IPMPX_SelectiveDecryptionInit
      Src: /src/gpac/src/odf/ipmpx_code.c:1897,1
    - Dst: DelGF_IPMPX_WatermarkingInit
      Src: /src/gpac/src/odf/ipmpx_code.c:1901,1
    - Dst: DelGF_IPMPX_SendWatermark
      Src: /src/gpac/src/odf/ipmpx_code.c:1905,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/ipmpx_code.c:1915,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/ipmpx_code.c:1916,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/ipmpx_code.c:1917,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/odf/ipmpx_code.c:1918,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/ipmpx_code.c:1920,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1921,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:1927,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1928,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:1934,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:1935,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:1936,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:1937,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:1938,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1939,1
    - Dst: GF_IPMPX_AUTH_Delete
      Src: /src/gpac/src/odf/ipmpx_code.c:1944,1
    - Dst: GF_IPMPX_AUTH_Delete
      Src: /src/gpac/src/odf/ipmpx_code.c:1948,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:1954,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1955,1
    - Dst: GF_IPMPX_DELETE_ARRAY
      Src: /src/gpac/src/odf/ipmpx_code.c:1961,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1962,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1963,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/ipmpx_code.c:1969,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 124
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1972
      start: 1831
    functionDepth: 4
    functionLinenumber: 1831
    functionLinenumberEnd: 1972
    functionName: gf_ipmpx_data_del
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 7
    functionsReached:
    - gf_free
    - DelGF_IPMPX_WatermarkingInit
    - DelGF_IPMPX_SendWatermark
    - gf_list_count
    - DelGF_IPMPX_MutualAuthentication
    - DelGF_IPMPX_TrustSecurityMetadata
    - DelGF_IPMPX_GetToolsResponse
    - gf_list_get
    - DelGF_IPMPX_RemoveToolNotificationListener
    - DelGF_IPMPX_OpaqueData
    - DelGF_IPMPX_AddToolNotificationListener
    - DelGF_IPMPX_ToolParamCapabilitiesQuery
    - GF_IPMPX_DELETE_ARRAY
    - GF_IPMPX_AUTH_Delete
    - DelGF_IPMPX_ToolParamCapabilitiesResponse
    - DelGF_IPMPX_CanProcess
    - DelGF_IPMPX_GetToolContextResponse
    - DelGF_IPMPX_KeyData
    - DelGF_IPMPX_ToolAPI_Config
    - DelGF_IPMPX_SecureContainer
    - DelGF_IPMPX_ISMACryp
    - DelGF_IPMPX_ConnectTool
    - DelGF_IPMPX_DisconnectTool
    - gf_list_del
    - DelGF_IPMPX_ParametricDescription
    - DelGF_IPMPX_SelectiveDecryptionInit
    - gf_ipmpx_data_del
    - gf_list_rem
    - DelGF_IPMPX_NotifyToolEvent
    - DelGF_IPMPX_InitAuthentication
    - DelGF_IPMPX_GetToolContext
    linkageType: ''
    returnType: void
    signature: void gf_ipmpx_data_del(GF_IPMPX_Data *_p)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: ReadGF_IPMPX_OpaqueData
      Src: /src/gpac/src/odf/ipmpx_code.c:1979,1
    - Dst: ReadGF_IPMPX_KeyData
      Src: /src/gpac/src/odf/ipmpx_code.c:1981,1
    - Dst: ReadGF_IPMPX_SecureContainer
      Src: /src/gpac/src/odf/ipmpx_code.c:1983,1
    - Dst: ReadGF_IPMPX_AddToolNotificationListener
      Src: /src/gpac/src/odf/ipmpx_code.c:1985,1
    - Dst: ReadGF_IPMPX_RemoveToolNotificationListener
      Src: /src/gpac/src/odf/ipmpx_code.c:1987,1
    - Dst: ReadGF_IPMPX_InitAuthentication
      Src: /src/gpac/src/odf/ipmpx_code.c:1989,1
    - Dst: ReadGF_IPMPX_MutualAuthentication
      Src: /src/gpac/src/odf/ipmpx_code.c:1991,1
    - Dst: ReadGF_IPMPX_ParametricDescription
      Src: /src/gpac/src/odf/ipmpx_code.c:1993,1
    - Dst: ReadGF_IPMPX_ToolParamCapabilitiesQuery
      Src: /src/gpac/src/odf/ipmpx_code.c:1995,1
    - Dst: ReadGF_IPMPX_ToolParamCapabilitiesResponse
      Src: /src/gpac/src/odf/ipmpx_code.c:1997,1
    - Dst: ReadGF_IPMPX_GetToolsResponse
      Src: /src/gpac/src/odf/ipmpx_code.c:1999,1
    - Dst: ReadGF_IPMPX_GetToolContext
      Src: /src/gpac/src/odf/ipmpx_code.c:2001,1
    - Dst: ReadGF_IPMPX_GetToolContextResponse
      Src: /src/gpac/src/odf/ipmpx_code.c:2003,1
    - Dst: ReadGF_IPMPX_ConnectTool
      Src: /src/gpac/src/odf/ipmpx_code.c:2005,1
    - Dst: ReadGF_IPMPX_DisconnectTool
      Src: /src/gpac/src/odf/ipmpx_code.c:2007,1
    - Dst: ReadGF_IPMPX_NotifyToolEvent
      Src: /src/gpac/src/odf/ipmpx_code.c:2009,1
    - Dst: ReadGF_IPMPX_CanProcess
      Src: /src/gpac/src/odf/ipmpx_code.c:2011,1
    - Dst: ReadGF_IPMPX_TrustSecurityMetadata
      Src: /src/gpac/src/odf/ipmpx_code.c:2013,1
    - Dst: ReadGF_IPMPX_ToolAPI_Config
      Src: /src/gpac/src/odf/ipmpx_code.c:2015,1
    - Dst: ReadGF_IPMPX_ISMACryp
      Src: /src/gpac/src/odf/ipmpx_code.c:2017,1
    - Dst: ReadGF_IPMPX_SelectiveDecryptionInit
      Src: /src/gpac/src/odf/ipmpx_code.c:2019,1
    - Dst: ReadGF_IPMPX_WatermarkingInit
      Src: /src/gpac/src/odf/ipmpx_code.c:2022,1
    - Dst: ReadGF_IPMPX_SendWatermark
      Src: /src/gpac/src/odf/ipmpx_code.c:2025,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 56
    argCount: 3
    argNames:
    - bs
    - _p
    - read
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2036
      start: 1974
    functionDepth: 4
    functionLinenumber: 1974
    functionLinenumberEnd: 2036
    functionName: GF_IPMPX_ReadData
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 1
    functionsReached:
    - ReadGF_IPMPX_ToolAPI_Config
    - ReadGF_IPMPX_TrustSecurityMetadata
    - ReadGF_IPMPX_MutualAuthentication
    - ReadGF_IPMPX_ParametricDescription
    - ReadGF_IPMPX_ToolParamCapabilitiesQuery
    - ReadGF_IPMPX_SecureContainer
    - ReadGF_IPMPX_ConnectTool
    - ReadGF_IPMPX_ToolParamCapabilitiesResponse
    - ReadGF_IPMPX_InitAuthentication
    - ReadGF_IPMPX_NotifyToolEvent
    - ReadGF_IPMPX_ISMACryp
    - ReadGF_IPMPX_RemoveToolNotificationListener
    - ReadGF_IPMPX_OpaqueData
    - ReadGF_IPMPX_AddToolNotificationListener
    - ReadGF_IPMPX_SendWatermark
    - ReadGF_IPMPX_GetToolsResponse
    - ReadGF_IPMPX_CanProcess
    - ReadGF_IPMPX_GetToolContextResponse
    - ReadGF_IPMPX_DisconnectTool
    - ReadGF_IPMPX_SelectiveDecryptionInit
    - ReadGF_IPMPX_KeyData
    - ReadGF_IPMPX_GetToolContext
    - ReadGF_IPMPX_WatermarkingInit
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err GF_IPMPX_ReadData(GF_BitStream *bs, GF_IPMPX_Data *_p, u32 read)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: SizeGF_IPMPX_OpaqueData
      Src: /src/gpac/src/odf/ipmpx_code.c:2043,1
    - Dst: SizeGF_IPMPX_KeyData
      Src: /src/gpac/src/odf/ipmpx_code.c:2045,1
    - Dst: SizeGF_IPMPX_SecureContainer
      Src: /src/gpac/src/odf/ipmpx_code.c:2047,1
    - Dst: SizeGF_IPMPX_AddToolNotificationListener
      Src: /src/gpac/src/odf/ipmpx_code.c:2049,1
    - Dst: SizeGF_IPMPX_RemoveToolNotificationListener
      Src: /src/gpac/src/odf/ipmpx_code.c:2051,1
    - Dst: SizeGF_IPMPX_InitAuthentication
      Src: /src/gpac/src/odf/ipmpx_code.c:2053,1
    - Dst: SizeGF_IPMPX_MutualAuthentication
      Src: /src/gpac/src/odf/ipmpx_code.c:2055,1
    - Dst: SizeGF_IPMPX_ParametricDescription
      Src: /src/gpac/src/odf/ipmpx_code.c:2057,1
    - Dst: SizeGF_IPMPX_ToolParamCapabilitiesQuery
      Src: /src/gpac/src/odf/ipmpx_code.c:2059,1
    - Dst: SizeGF_IPMPX_ToolParamCapabilitiesResponse
      Src: /src/gpac/src/odf/ipmpx_code.c:2061,1
    - Dst: SizeGF_IPMPX_GetToolsResponse
      Src: /src/gpac/src/odf/ipmpx_code.c:2063,1
    - Dst: SizeGF_IPMPX_GetToolContext
      Src: /src/gpac/src/odf/ipmpx_code.c:2065,1
    - Dst: SizeGF_IPMPX_GetToolContextResponse
      Src: /src/gpac/src/odf/ipmpx_code.c:2067,1
    - Dst: SizeGF_IPMPX_ConnectTool
      Src: /src/gpac/src/odf/ipmpx_code.c:2069,1
    - Dst: SizeGF_IPMPX_DisconnectTool
      Src: /src/gpac/src/odf/ipmpx_code.c:2071,1
    - Dst: SizeGF_IPMPX_NotifyToolEvent
      Src: /src/gpac/src/odf/ipmpx_code.c:2073,1
    - Dst: SizeGF_IPMPX_CanProcess
      Src: /src/gpac/src/odf/ipmpx_code.c:2075,1
    - Dst: SizeGF_IPMPX_TrustSecurityMetadata
      Src: /src/gpac/src/odf/ipmpx_code.c:2077,1
    - Dst: SizeGF_IPMPX_ToolAPI_Config
      Src: /src/gpac/src/odf/ipmpx_code.c:2079,1
    - Dst: SizeGF_IPMPX_ISMACryp
      Src: /src/gpac/src/odf/ipmpx_code.c:2081,1
    - Dst: SizeGF_IPMPX_SelectiveDecryptionInit
      Src: /src/gpac/src/odf/ipmpx_code.c:2083,1
    - Dst: SizeGF_IPMPX_WatermarkingInit
      Src: /src/gpac/src/odf/ipmpx_code.c:2086,1
    - Dst: SizeGF_IPMPX_SendWatermark
      Src: /src/gpac/src/odf/ipmpx_code.c:2089,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 56
    argCount: 1
    argNames:
    - _p
    argTypes:
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2100
      start: 2038
    functionDepth: 5
    functionLinenumber: 2038
    functionLinenumberEnd: 2100
    functionName: gf_ipmpx_data_size
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 2
    functionsReached:
    - SizeGF_IPMPX_DisconnectTool
    - SizeGF_IPMPX_GetToolContextResponse
    - SizeGF_IPMPX_OpaqueData
    - SizeGF_IPMPX_InitAuthentication
    - SizeGF_IPMPX_ISMACryp
    - SizeGF_IPMPX_RemoveToolNotificationListener
    - SizeGF_IPMPX_WatermarkingInit
    - SizeGF_IPMPX_TrustSecurityMetadata
    - SizeGF_IPMPX_CanProcess
    - SizeGF_IPMPX_ConnectTool
    - SizeGF_IPMPX_AddToolNotificationListener
    - SizeGF_IPMPX_ToolAPI_Config
    - SizeGF_IPMPX_GetToolsResponse
    - SizeGF_IPMPX_GetToolContext
    - SizeGF_IPMPX_SelectiveDecryptionInit
    - SizeGF_IPMPX_SecureContainer
    - SizeGF_IPMPX_NotifyToolEvent
    - SizeGF_IPMPX_ParametricDescription
    - SizeGF_IPMPX_ToolParamCapabilitiesQuery
    - SizeGF_IPMPX_KeyData
    - SizeGF_IPMPX_SendWatermark
    - SizeGF_IPMPX_ToolParamCapabilitiesResponse
    - SizeGF_IPMPX_MutualAuthentication
    linkageType: ''
    returnType: u32
    signature: u32 gf_ipmpx_data_size(GF_IPMPX_Data *_p)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: GF_IPMPX_WriteBase
      Src: /src/gpac/src/odf/ipmpx_code.c:2106,1
    - Dst: WriteGF_IPMPX_OpaqueData
      Src: /src/gpac/src/odf/ipmpx_code.c:2111,1
    - Dst: WriteGF_IPMPX_KeyData
      Src: /src/gpac/src/odf/ipmpx_code.c:2113,1
    - Dst: WriteGF_IPMPX_SecureContainer
      Src: /src/gpac/src/odf/ipmpx_code.c:2115,1
    - Dst: WriteGF_IPMPX_AddToolNotificationListener
      Src: /src/gpac/src/odf/ipmpx_code.c:2117,1
    - Dst: WriteGF_IPMPX_RemoveToolNotificationListener
      Src: /src/gpac/src/odf/ipmpx_code.c:2119,1
    - Dst: WriteGF_IPMPX_InitAuthentication
      Src: /src/gpac/src/odf/ipmpx_code.c:2121,1
    - Dst: WriteGF_IPMPX_MutualAuthentication
      Src: /src/gpac/src/odf/ipmpx_code.c:2123,1
    - Dst: WriteGF_IPMPX_ParametricDescription
      Src: /src/gpac/src/odf/ipmpx_code.c:2125,1
    - Dst: WriteGF_IPMPX_ToolParamCapabilitiesQuery
      Src: /src/gpac/src/odf/ipmpx_code.c:2127,1
    - Dst: WriteGF_IPMPX_ToolParamCapabilitiesResponse
      Src: /src/gpac/src/odf/ipmpx_code.c:2129,1
    - Dst: WriteGF_IPMPX_GetToolsResponse
      Src: /src/gpac/src/odf/ipmpx_code.c:2131,1
    - Dst: WriteGF_IPMPX_GetToolContext
      Src: /src/gpac/src/odf/ipmpx_code.c:2133,1
    - Dst: WriteGF_IPMPX_GetToolContextResponse
      Src: /src/gpac/src/odf/ipmpx_code.c:2135,1
    - Dst: WriteGF_IPMPX_ConnectTool
      Src: /src/gpac/src/odf/ipmpx_code.c:2137,1
    - Dst: WriteGF_IPMPX_DisconnectTool
      Src: /src/gpac/src/odf/ipmpx_code.c:2139,1
    - Dst: WriteGF_IPMPX_NotifyToolEvent
      Src: /src/gpac/src/odf/ipmpx_code.c:2141,1
    - Dst: WriteGF_IPMPX_CanProcess
      Src: /src/gpac/src/odf/ipmpx_code.c:2143,1
    - Dst: WriteGF_IPMPX_TrustSecurityMetadata
      Src: /src/gpac/src/odf/ipmpx_code.c:2145,1
    - Dst: WriteGF_IPMPX_ToolAPI_Config
      Src: /src/gpac/src/odf/ipmpx_code.c:2147,1
    - Dst: WriteGF_IPMPX_ISMACryp
      Src: /src/gpac/src/odf/ipmpx_code.c:2149,1
    - Dst: WriteGF_IPMPX_SelectiveDecryptionInit
      Src: /src/gpac/src/odf/ipmpx_code.c:2151,1
    - Dst: WriteGF_IPMPX_WatermarkingInit
      Src: /src/gpac/src/odf/ipmpx_code.c:2154,1
    - Dst: WriteGF_IPMPX_SendWatermark
      Src: /src/gpac/src/odf/ipmpx_code.c:2157,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 61
    argCount: 2
    argNames:
    - bs
    - _p
    argTypes:
    - GF_BitStream*
    - GF_IPMPX_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2168
      start: 2102
    functionDepth: 5
    functionLinenumber: 2102
    functionLinenumberEnd: 2168
    functionName: gf_ipmpx_data_write
    functionSourceFile: /src/gpac/src/odf/ipmpx_code.c
    functionUses: 4
    functionsReached:
    - WriteGF_IPMPX_ISMACryp
    - GF_IPMPX_WriteBase
    - WriteGF_IPMPX_InitAuthentication
    - WriteGF_IPMPX_GetToolsResponse
    - WriteGF_IPMPX_ToolParamCapabilitiesQuery
    - WriteGF_IPMPX_OpaqueData
    - WriteGF_IPMPX_AddToolNotificationListener
    - WriteGF_IPMPX_ToolParamCapabilitiesResponse
    - WriteGF_IPMPX_KeyData
    - WriteGF_IPMPX_RemoveToolNotificationListener
    - WriteGF_IPMPX_DisconnectTool
    - WriteGF_IPMPX_TrustSecurityMetadata
    - WriteGF_IPMPX_GetToolContextResponse
    - WriteGF_IPMPX_SecureContainer
    - WriteGF_IPMPX_WatermarkingInit
    - WriteGF_IPMPX_MutualAuthentication
    - WriteGF_IPMPX_ToolAPI_Config
    - WriteGF_IPMPX_SendWatermark
    - WriteGF_IPMPX_ConnectTool
    - WriteGF_IPMPX_ParametricDescription
    - WriteGF_IPMPX_CanProcess
    - WriteGF_IPMPX_GetToolContext
    - WriteGF_IPMPX_NotifyToolEvent
    - WriteGF_IPMPX_SelectiveDecryptionInit
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ipmpx_data_write(GF_BitStream *bs, GF_IPMPX_Data *_p)
  - BBCount: 53
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_new_iod
      Src: /src/gpac/src/odf/desc_private.c:38,1
    - Dst: gf_odf_new_od
      Src: /src/gpac/src/odf/desc_private.c:40,1
    - Dst: gf_odf_new_esd
      Src: /src/gpac/src/odf/desc_private.c:42,1
    - Dst: gf_odf_new_dcd
      Src: /src/gpac/src/odf/desc_private.c:44,1
    - Dst: gf_odf_new_slc
      Src: /src/gpac/src/odf/desc_private.c:47,1
    - Dst: gf_odf_new_muxinfo
      Src: /src/gpac/src/odf/desc_private.c:49,1
    - Dst: gf_odf_new_bifs_cfg
      Src: /src/gpac/src/odf/desc_private.c:51,1
    - Dst: gf_odf_new_ui_cfg
      Src: /src/gpac/src/odf/desc_private.c:53,1
    - Dst: gf_odf_new_text_cfg
      Src: /src/gpac/src/odf/desc_private.c:55,1
    - Dst: gf_odf_new_tx3g
      Src: /src/gpac/src/odf/desc_private.c:57,1
    - Dst: gf_odf_New_ElemMask
      Src: /src/gpac/src/odf/desc_private.c:59,1
    - Dst: gf_odf_new_laser_cfg
      Src: /src/gpac/src/odf/desc_private.c:61,1
    - Dst: gf_odf_new_default
      Src: /src/gpac/src/odf/desc_private.c:64,1
    - Dst: gf_odf_new_auxvid
      Src: /src/gpac/src/odf/desc_private.c:70,1
    - Dst: gf_odf_new_segment
      Src: /src/gpac/src/odf/desc_private.c:73,1
    - Dst: gf_odf_new_isom_iod
      Src: /src/gpac/src/odf/desc_private.c:77,1
    - Dst: gf_odf_new_isom_od
      Src: /src/gpac/src/odf/desc_private.c:79,1
    - Dst: gf_odf_new_esd_inc
      Src: /src/gpac/src/odf/desc_private.c:81,1
    - Dst: gf_odf_new_esd_ref
      Src: /src/gpac/src/odf/desc_private.c:83,1
    - Dst: gf_odf_new_lang
      Src: /src/gpac/src/odf/desc_private.c:85,1
    - Dst: gf_odf_new_lang
      Src: /src/gpac/src/odf/desc_private.c:87,1
    - Dst: gf_odf_new_mediatime
      Src: /src/gpac/src/odf/desc_private.c:93,1
    - Dst: gf_odf_new_ci
      Src: /src/gpac/src/odf/desc_private.c:95,1
    - Dst: gf_odf_new_sup_cid
      Src: /src/gpac/src/odf/desc_private.c:97,1
    - Dst: gf_odf_new_ipi_ptr
      Src: /src/gpac/src/odf/desc_private.c:99,1
    - Dst: gf_odf_new_ipi_ptr
      Src: /src/gpac/src/odf/desc_private.c:102,1
    - Dst: gf_odf_new_ipmp_ptr
      Src: /src/gpac/src/odf/desc_private.c:108,1
    - Dst: gf_odf_new_ipmp
      Src: /src/gpac/src/odf/desc_private.c:110,1
    - Dst: gf_odf_new_qos
      Src: /src/gpac/src/odf/desc_private.c:112,1
    - Dst: gf_odf_new_reg
      Src: /src/gpac/src/odf/desc_private.c:114,1
    - Dst: gf_odf_new_cc
      Src: /src/gpac/src/odf/desc_private.c:116,1
    - Dst: gf_odf_new_kw
      Src: /src/gpac/src/odf/desc_private.c:118,1
    - Dst: gf_odf_new_rating
      Src: /src/gpac/src/odf/desc_private.c:120,1
    - Dst: gf_odf_new_short_text
      Src: /src/gpac/src/odf/desc_private.c:122,1
    - Dst: gf_odf_new_exp_text
      Src: /src/gpac/src/odf/desc_private.c:124,1
    - Dst: gf_odf_new_cc_name
      Src: /src/gpac/src/odf/desc_private.c:126,1
    - Dst: gf_odf_new_cc_date
      Src: /src/gpac/src/odf/desc_private.c:128,1
    - Dst: gf_odf_new_oci_name
      Src: /src/gpac/src/odf/desc_private.c:130,1
    - Dst: gf_odf_new_oci_date
      Src: /src/gpac/src/odf/desc_private.c:132,1
    - Dst: gf_odf_new_smpte_camera
      Src: /src/gpac/src/odf/desc_private.c:134,1
    - Dst: gf_odf_new_pl_ext
      Src: /src/gpac/src/odf/desc_private.c:136,1
    - Dst: gf_odf_new_pl_idx
      Src: /src/gpac/src/odf/desc_private.c:138,1
    - Dst: gf_odf_new_ipmp_tool_list
      Src: /src/gpac/src/odf/desc_private.c:141,1
    - Dst: gf_odf_new_ipmp_tool
      Src: /src/gpac/src/odf/desc_private.c:143,1
    - Dst: gf_odf_new_default
      Src: /src/gpac/src/odf/desc_private.c:155,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 114
    argCount: 1
    argNames:
    - tag
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 160
    functionName: gf_odf_create_descriptor
    functionSourceFile: /src/gpac/src/odf/desc_private.c
    functionUses: 2
    functionsReached:
    - gf_odf_new_segment
    - gf_odf_new_esd
    - gf_odf_new_rating
    - gf_odf_new_mediatime
    - gf_odf_new_muxinfo
    - gf_odf_new_ui_cfg
    - gf_odf_new_ipmp
    - gf_odf_new_cc
    - gf_odf_new_smpte_camera
    - gf_odf_new_ipmp_tool
    - gf_odf_new_pl_ext
    - gf_odf_new_exp_text
    - gf_odf_new_text_cfg
    - gf_odf_new_bifs_cfg
    - gf_odf_new_esd_inc
    - gf_odf_New_ElemMask
    - gf_odf_new_laser_cfg
    - gf_odf_new_kw
    - gf_odf_new_cc_date
    - gf_odf_new_ipmp_ptr
    - gf_odf_new_oci_date
    - gf_odf_new_qos
    - gf_odf_new_slc
    - gf_odf_new_ci
    - gf_odf_new_pl_idx
    - gf_odf_new_ipmp_tool_list
    - gf_odf_new_lang
    - gf_odf_new_oci_name
    - gf_odf_new_isom_iod
    - gf_odf_new_tx3g
    - gf_odf_new_isom_od
    - gf_odf_new_esd_ref
    - gf_odf_new_od
    - gf_odf_new_ipi_ptr
    - gf_odf_new_reg
    - gf_odf_new_cc_name
    - gf_odf_new_sup_cid
    - gf_odf_new_short_text
    - gf_odf_new_default
    - gf_odf_new_iod
    - gf_odf_new_auxvid
    - gf_odf_new_dcd
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_odf_create_descriptor(u8 tag)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_del_iod
      Src: /src/gpac/src/odf/desc_private.c:169,1
    - Dst: gf_odf_del_od
      Src: /src/gpac/src/odf/desc_private.c:171,1
    - Dst: gf_odf_del_esd
      Src: /src/gpac/src/odf/desc_private.c:173,1
    - Dst: gf_odf_del_dcd
      Src: /src/gpac/src/odf/desc_private.c:175,1
    - Dst: gf_odf_del_slc
      Src: /src/gpac/src/odf/desc_private.c:177,1
    - Dst: gf_odf_del_isom_iod
      Src: /src/gpac/src/odf/desc_private.c:180,1
    - Dst: gf_odf_del_isom_od
      Src: /src/gpac/src/odf/desc_private.c:182,1
    - Dst: gf_odf_del_segment
      Src: /src/gpac/src/odf/desc_private.c:185,1
    - Dst: gf_odf_del_muxinfo
      Src: /src/gpac/src/odf/desc_private.c:188,1
    - Dst: gf_odf_del_bifs_cfg
      Src: /src/gpac/src/odf/desc_private.c:190,1
    - Dst: gf_odf_del_ui_cfg
      Src: /src/gpac/src/odf/desc_private.c:192,1
    - Dst: gf_odf_del_text_cfg
      Src: /src/gpac/src/odf/desc_private.c:194,1
    - Dst: gf_odf_del_tx3g
      Src: /src/gpac/src/odf/desc_private.c:196,1
    - Dst: gf_odf_del_ElemMask
      Src: /src/gpac/src/odf/desc_private.c:198,1
    - Dst: gf_odf_del_laser_cfg
      Src: /src/gpac/src/odf/desc_private.c:200,1
    - Dst: gf_odf_del_auxvid
      Src: /src/gpac/src/odf/desc_private.c:203,1
    - Dst: gf_odf_del_lang
      Src: /src/gpac/src/odf/desc_private.c:207,1
    - Dst: gf_odf_del_esd_inc
      Src: /src/gpac/src/odf/desc_private.c:210,1
    - Dst: gf_odf_del_esd_ref
      Src: /src/gpac/src/odf/desc_private.c:212,1
    - Dst: gf_odf_del_mediatime
      Src: /src/gpac/src/odf/desc_private.c:216,1
    - Dst: gf_odf_del_cc
      Src: /src/gpac/src/odf/desc_private.c:218,1
    - Dst: gf_odf_del_cc_date
      Src: /src/gpac/src/odf/desc_private.c:220,1
    - Dst: gf_odf_del_cc_name
      Src: /src/gpac/src/odf/desc_private.c:222,1
    - Dst: gf_odf_del_ci
      Src: /src/gpac/src/odf/desc_private.c:224,1
    - Dst: gf_odf_del_exp_text
      Src: /src/gpac/src/odf/desc_private.c:226,1
    - Dst: gf_odf_del_pl_ext
      Src: /src/gpac/src/odf/desc_private.c:228,1
    - Dst: gf_odf_del_ipi_ptr
      Src: /src/gpac/src/odf/desc_private.c:231,1
    - Dst: gf_odf_del_ipmp
      Src: /src/gpac/src/odf/desc_private.c:233,1
    - Dst: gf_odf_del_ipmp_ptr
      Src: /src/gpac/src/odf/desc_private.c:235,1
    - Dst: gf_odf_del_kw
      Src: /src/gpac/src/odf/desc_private.c:237,1
    - Dst: gf_odf_del_oci_date
      Src: /src/gpac/src/odf/desc_private.c:239,1
    - Dst: gf_odf_del_oci_name
      Src: /src/gpac/src/odf/desc_private.c:241,1
    - Dst: gf_odf_del_pl_idx
      Src: /src/gpac/src/odf/desc_private.c:243,1
    - Dst: gf_odf_del_qos
      Src: /src/gpac/src/odf/desc_private.c:245,1
    - Dst: gf_odf_del_rating
      Src: /src/gpac/src/odf/desc_private.c:247,1
    - Dst: gf_odf_del_reg
      Src: /src/gpac/src/odf/desc_private.c:249,1
    - Dst: gf_odf_del_short_text
      Src: /src/gpac/src/odf/desc_private.c:251,1
    - Dst: gf_odf_del_smpte_camera
      Src: /src/gpac/src/odf/desc_private.c:253,1
    - Dst: gf_odf_del_sup_cid
      Src: /src/gpac/src/odf/desc_private.c:255,1
    - Dst: gf_odf_del_ipmp_tool_list
      Src: /src/gpac/src/odf/desc_private.c:258,1
    - Dst: gf_odf_del_ipmp_tool
      Src: /src/gpac/src/odf/desc_private.c:260,1
    - Dst: gf_odf_del_default
      Src: /src/gpac/src/odf/desc_private.c:265,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 90
    argCount: 1
    argNames:
    - desc
    argTypes:
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 165
    functionDepth: 3
    functionLinenumber: 165
    functionLinenumberEnd: 268
    functionName: gf_odf_delete_descriptor
    functionSourceFile: /src/gpac/src/odf/desc_private.c
    functionUses: 20
    functionsReached:
    - gf_odf_del_default
    - gf_odf_del_rating
    - gf_odf_del_qos
    - gf_odf_del_text_cfg
    - gf_odf_del_tx3g
    - gf_odf_del_esd
    - gf_odf_del_slc
    - gf_odf_del_smpte_camera
    - gf_odf_del_auxvid
    - gf_odf_del_ipmp_tool_list
    - gf_odf_del_ElemMask
    - gf_odf_del_lang
    - gf_odf_del_oci_date
    - gf_odf_del_oci_name
    - gf_odf_del_pl_ext
    - gf_odf_del_esd_inc
    - gf_odf_del_cc_name
    - gf_odf_del_cc_date
    - gf_odf_del_ipmp_ptr
    - gf_odf_del_segment
    - gf_odf_del_mediatime
    - gf_odf_del_pl_idx
    - gf_odf_del_ci
    - gf_odf_del_sup_cid
    - gf_odf_del_ipi_ptr
    - gf_odf_del_isom_od
    - gf_odf_del_ui_cfg
    - gf_odf_del_cc
    - gf_odf_del_kw
    - gf_odf_del_iod
    - gf_odf_del_reg
    - gf_odf_del_laser_cfg
    - gf_odf_del_esd_ref
    - gf_odf_del_ipmp
    - gf_odf_del_ipmp_tool
    - gf_odf_del_exp_text
    - gf_odf_del_od
    - gf_odf_del_muxinfo
    - gf_odf_del_bifs_cfg
    - gf_odf_del_isom_iod
    - gf_odf_del_short_text
    - gf_odf_del_dcd
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_delete_descriptor(GF_Descriptor *desc)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_read_iod
      Src: /src/gpac/src/odf/desc_private.c:280,1
    - Dst: gf_odf_read_esd
      Src: /src/gpac/src/odf/desc_private.c:282,1
    - Dst: gf_odf_read_dcd
      Src: /src/gpac/src/odf/desc_private.c:284,1
    - Dst: gf_odf_read_slc
      Src: /src/gpac/src/odf/desc_private.c:286,1
    - Dst: gf_odf_read_od
      Src: /src/gpac/src/odf/desc_private.c:288,1
    - Dst: gf_odf_read_isom_iod
      Src: /src/gpac/src/odf/desc_private.c:292,1
    - Dst: gf_odf_read_isom_od
      Src: /src/gpac/src/odf/desc_private.c:294,1
    - Dst: gf_odf_read_esd_inc
      Src: /src/gpac/src/odf/desc_private.c:296,1
    - Dst: gf_odf_read_esd_ref
      Src: /src/gpac/src/odf/desc_private.c:298,1
    - Dst: gf_odf_read_segment
      Src: /src/gpac/src/odf/desc_private.c:301,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/desc_private.c:303,1
    - Dst: gf_odf_read_auxvid
      Src: /src/gpac/src/odf/desc_private.c:307,1
    - Dst: gf_odf_read_lang
      Src: /src/gpac/src/odf/desc_private.c:311,1
    - Dst: gf_odf_read_mediatime
      Src: /src/gpac/src/odf/desc_private.c:315,1
    - Dst: gf_odf_read_ipmp
      Src: /src/gpac/src/odf/desc_private.c:317,1
    - Dst: gf_odf_read_ipmp_ptr
      Src: /src/gpac/src/odf/desc_private.c:319,1
    - Dst: gf_odf_read_cc
      Src: /src/gpac/src/odf/desc_private.c:322,1
    - Dst: gf_odf_read_cc_date
      Src: /src/gpac/src/odf/desc_private.c:324,1
    - Dst: gf_odf_read_cc_name
      Src: /src/gpac/src/odf/desc_private.c:326,1
    - Dst: gf_odf_read_ci
      Src: /src/gpac/src/odf/desc_private.c:328,1
    - Dst: gf_odf_read_exp_text
      Src: /src/gpac/src/odf/desc_private.c:330,1
    - Dst: gf_odf_read_pl_ext
      Src: /src/gpac/src/odf/desc_private.c:332,1
    - Dst: gf_odf_read_ipi_ptr
      Src: /src/gpac/src/odf/desc_private.c:335,1
    - Dst: gf_odf_read_kw
      Src: /src/gpac/src/odf/desc_private.c:337,1
    - Dst: gf_odf_read_oci_date
      Src: /src/gpac/src/odf/desc_private.c:339,1
    - Dst: gf_odf_read_oci_name
      Src: /src/gpac/src/odf/desc_private.c:341,1
    - Dst: gf_odf_read_pl_idx
      Src: /src/gpac/src/odf/desc_private.c:343,1
    - Dst: gf_odf_read_qos
      Src: /src/gpac/src/odf/desc_private.c:345,1
    - Dst: gf_odf_read_rating
      Src: /src/gpac/src/odf/desc_private.c:347,1
    - Dst: gf_odf_read_reg
      Src: /src/gpac/src/odf/desc_private.c:349,1
    - Dst: gf_odf_read_short_text
      Src: /src/gpac/src/odf/desc_private.c:351,1
    - Dst: gf_odf_read_smpte_camera
      Src: /src/gpac/src/odf/desc_private.c:353,1
    - Dst: gf_odf_read_sup_cid
      Src: /src/gpac/src/odf/desc_private.c:355,1
    - Dst: gf_odf_read_ipmp_tool_list
      Src: /src/gpac/src/odf/desc_private.c:358,1
    - Dst: gf_odf_read_ipmp_tool
      Src: /src/gpac/src/odf/desc_private.c:360,1
    - Dst: gf_odf_read_default
      Src: /src/gpac/src/odf/desc_private.c:366,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 80
    argCount: 3
    argNames:
    - bs
    - desc
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_Descriptor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 276
    functionDepth: 4
    functionLinenumber: 276
    functionLinenumberEnd: 369
    functionName: gf_odf_read_descriptor_internal
    functionSourceFile: /src/gpac/src/odf/desc_private.c
    functionUses: 0
    functionsReached:
    - gf_odf_read_ipmp_tool_list
    - gf_odf_read_ci
    - gf_odf_read_lang
    - gf_odf_read_od
    - gf_odf_read_ipmp_ptr
    - gf_odf_read_segment
    - gf_odf_read_cc_date
    - gf_odf_read_smpte_camera
    - gf_odf_read_reg
    - gf_odf_read_pl_idx
    - gf_odf_read_kw
    - gf_odf_read_sup_cid
    - gf_odf_read_short_text
    - gf_odf_read_dcd
    - gf_odf_read_qos
    - gf_odf_read_auxvid
    - gf_odf_read_mediatime
    - gf_odf_read_ipmp
    - gf_odf_read_isom_od
    - gf_odf_read_esd_inc
    - GF_LOG
    - gf_odf_read_exp_text
    - gf_odf_read_pl_ext
    - gf_odf_read_rating
    - gf_odf_read_ipmp_tool
    - gf_odf_read_ipi_ptr
    - gf_odf_read_esd_ref
    - gf_odf_read_cc
    - gf_odf_read_slc
    - gf_odf_read_isom_iod
    - gf_odf_read_cc_name
    - gf_odf_read_oci_date
    - gf_odf_read_iod
    - gf_odf_read_default
    - gf_odf_read_esd
    - gf_odf_read_oci_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_descriptor_internal(GF_BitStream *bs, GF_Descriptor
      *desc, u32 DescSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_cookie
      Src: /src/gpac/src/odf/desc_private.c:373,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/odf/desc_private.c:377,1
    - Dst: gf_odf_read_descriptor_internal
      Src: /src/gpac/src/odf/desc_private.c:378,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/odf/desc_private.c:379,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - bs
    - desc
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_Descriptor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 371
    functionDepth: 5
    functionLinenumber: 371
    functionLinenumberEnd: 381
    functionName: gf_odf_read_descriptor
    functionSourceFile: /src/gpac/src/odf/desc_private.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_cookie
    - gf_odf_read_descriptor_internal
    - gf_bs_set_cookie
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_descriptor(GF_BitStream *bs, GF_Descriptor *desc,
      u32 DescSize)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_size_iod
      Src: /src/gpac/src/odf/desc_private.c:392,1
    - Dst: gf_odf_size_esd
      Src: /src/gpac/src/odf/desc_private.c:394,1
    - Dst: gf_odf_size_dcd
      Src: /src/gpac/src/odf/desc_private.c:396,1
    - Dst: gf_odf_size_slc
      Src: /src/gpac/src/odf/desc_private.c:398,1
    - Dst: gf_odf_size_od
      Src: /src/gpac/src/odf/desc_private.c:401,1
    - Dst: gf_odf_size_isom_iod
      Src: /src/gpac/src/odf/desc_private.c:403,1
    - Dst: gf_odf_size_isom_od
      Src: /src/gpac/src/odf/desc_private.c:405,1
    - Dst: gf_odf_size_esd_inc
      Src: /src/gpac/src/odf/desc_private.c:407,1
    - Dst: gf_odf_size_esd_ref
      Src: /src/gpac/src/odf/desc_private.c:409,1
    - Dst: gf_odf_size_segment
      Src: /src/gpac/src/odf/desc_private.c:412,1
    - Dst: gf_odf_size_muxinfo
      Src: /src/gpac/src/odf/desc_private.c:414,1
    - Dst: gf_odf_size_auxvid
      Src: /src/gpac/src/odf/desc_private.c:417,1
    - Dst: gf_odf_size_lang
      Src: /src/gpac/src/odf/desc_private.c:421,1
    - Dst: gf_odf_size_mediatime
      Src: /src/gpac/src/odf/desc_private.c:425,1
    - Dst: gf_odf_size_cc
      Src: /src/gpac/src/odf/desc_private.c:427,1
    - Dst: gf_odf_size_cc_date
      Src: /src/gpac/src/odf/desc_private.c:429,1
    - Dst: gf_odf_size_cc_name
      Src: /src/gpac/src/odf/desc_private.c:431,1
    - Dst: gf_odf_size_ci
      Src: /src/gpac/src/odf/desc_private.c:433,1
    - Dst: gf_odf_size_exp_text
      Src: /src/gpac/src/odf/desc_private.c:435,1
    - Dst: gf_odf_size_pl_ext
      Src: /src/gpac/src/odf/desc_private.c:437,1
    - Dst: gf_odf_size_ipi_ptr
      Src: /src/gpac/src/odf/desc_private.c:440,1
    - Dst: gf_odf_size_ipmp
      Src: /src/gpac/src/odf/desc_private.c:442,1
    - Dst: gf_odf_size_ipmp_ptr
      Src: /src/gpac/src/odf/desc_private.c:444,1
    - Dst: gf_odf_size_kw
      Src: /src/gpac/src/odf/desc_private.c:446,1
    - Dst: gf_odf_size_oci_date
      Src: /src/gpac/src/odf/desc_private.c:448,1
    - Dst: gf_odf_size_oci_name
      Src: /src/gpac/src/odf/desc_private.c:450,1
    - Dst: gf_odf_size_pl_idx
      Src: /src/gpac/src/odf/desc_private.c:452,1
    - Dst: gf_odf_size_qos
      Src: /src/gpac/src/odf/desc_private.c:454,1
    - Dst: gf_odf_size_rating
      Src: /src/gpac/src/odf/desc_private.c:456,1
    - Dst: gf_odf_size_reg
      Src: /src/gpac/src/odf/desc_private.c:458,1
    - Dst: gf_odf_size_short_text
      Src: /src/gpac/src/odf/desc_private.c:460,1
    - Dst: gf_odf_size_smpte_camera
      Src: /src/gpac/src/odf/desc_private.c:462,1
    - Dst: gf_odf_size_sup_cid
      Src: /src/gpac/src/odf/desc_private.c:464,1
    - Dst: gf_odf_size_ipmp_tool_list
      Src: /src/gpac/src/odf/desc_private.c:468,1
    - Dst: gf_odf_size_ipmp_tool
      Src: /src/gpac/src/odf/desc_private.c:470,1
    - Dst: gf_odf_size_default
      Src: /src/gpac/src/odf/desc_private.c:479,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 82
    argCount: 2
    argNames:
    - desc
    - outSize
    argTypes:
    - GF_Descriptor*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 388
    functionDepth: 3
    functionLinenumber: 388
    functionLinenumberEnd: 482
    functionName: gf_odf_size_descriptor
    functionSourceFile: /src/gpac/src/odf/desc_private.c
    functionUses: 45
    functionsReached:
    - gf_odf_size_slc
    - gf_odf_size_ipmp_tool
    - gf_odf_size_iod
    - gf_odf_size_auxvid
    - gf_odf_size_sup_cid
    - gf_odf_size_kw
    - gf_odf_size_reg
    - gf_odf_size_dcd
    - gf_odf_size_ipmp_tool_list
    - gf_odf_size_esd
    - gf_odf_size_segment
    - gf_odf_size_cc_name
    - gf_odf_size_od
    - gf_odf_size_ci
    - gf_odf_size_esd_ref
    - gf_odf_size_cc
    - gf_odf_size_muxinfo
    - gf_odf_size_ipmp_ptr
    - gf_odf_size_mediatime
    - gf_odf_size_isom_od
    - gf_odf_size_oci_name
    - gf_odf_size_default
    - gf_odf_size_isom_iod
    - gf_odf_size_pl_idx
    - gf_odf_size_cc_date
    - gf_odf_size_oci_date
    - gf_odf_size_short_text
    - gf_odf_size_ipmp
    - gf_odf_size_pl_ext
    - gf_odf_size_rating
    - gf_odf_size_smpte_camera
    - gf_odf_size_lang
    - gf_odf_size_qos
    - gf_odf_size_esd_inc
    - gf_odf_size_exp_text
    - gf_odf_size_ipi_ptr
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_size_descriptor(GF_Descriptor *desc, u32 *outSize)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_write_iod
      Src: /src/gpac/src/odf/desc_private.c:493,1
    - Dst: gf_odf_write_esd
      Src: /src/gpac/src/odf/desc_private.c:495,1
    - Dst: gf_odf_write_dcd
      Src: /src/gpac/src/odf/desc_private.c:497,1
    - Dst: gf_odf_write_slc
      Src: /src/gpac/src/odf/desc_private.c:499,1
    - Dst: gf_odf_write_esd_inc
      Src: /src/gpac/src/odf/desc_private.c:501,1
    - Dst: gf_odf_write_esd_ref
      Src: /src/gpac/src/odf/desc_private.c:503,1
    - Dst: gf_odf_write_isom_iod
      Src: /src/gpac/src/odf/desc_private.c:507,1
    - Dst: gf_odf_write_isom_od
      Src: /src/gpac/src/odf/desc_private.c:509,1
    - Dst: gf_odf_write_od
      Src: /src/gpac/src/odf/desc_private.c:511,1
    - Dst: gf_odf_write_segment
      Src: /src/gpac/src/odf/desc_private.c:513,1
    - Dst: gf_odf_write_muxinfo
      Src: /src/gpac/src/odf/desc_private.c:515,1
    - Dst: gf_odf_write_auxvid
      Src: /src/gpac/src/odf/desc_private.c:518,1
    - Dst: gf_odf_write_lang
      Src: /src/gpac/src/odf/desc_private.c:522,1
    - Dst: gf_odf_write_mediatime
      Src: /src/gpac/src/odf/desc_private.c:526,1
    - Dst: gf_odf_write_cc
      Src: /src/gpac/src/odf/desc_private.c:528,1
    - Dst: gf_odf_write_cc_date
      Src: /src/gpac/src/odf/desc_private.c:530,1
    - Dst: gf_odf_write_cc_name
      Src: /src/gpac/src/odf/desc_private.c:532,1
    - Dst: gf_odf_write_ci
      Src: /src/gpac/src/odf/desc_private.c:534,1
    - Dst: gf_odf_write_exp_text
      Src: /src/gpac/src/odf/desc_private.c:537,1
    - Dst: gf_odf_write_pl_ext
      Src: /src/gpac/src/odf/desc_private.c:539,1
    - Dst: gf_odf_write_ipi_ptr
      Src: /src/gpac/src/odf/desc_private.c:542,1
    - Dst: gf_odf_write_ipmp
      Src: /src/gpac/src/odf/desc_private.c:544,1
    - Dst: gf_odf_write_ipmp_ptr
      Src: /src/gpac/src/odf/desc_private.c:546,1
    - Dst: gf_odf_write_kw
      Src: /src/gpac/src/odf/desc_private.c:548,1
    - Dst: gf_odf_write_oci_date
      Src: /src/gpac/src/odf/desc_private.c:550,1
    - Dst: gf_odf_write_oci_name
      Src: /src/gpac/src/odf/desc_private.c:552,1
    - Dst: gf_odf_write_pl_idx
      Src: /src/gpac/src/odf/desc_private.c:554,1
    - Dst: gf_odf_write_qos
      Src: /src/gpac/src/odf/desc_private.c:556,1
    - Dst: gf_odf_write_rating
      Src: /src/gpac/src/odf/desc_private.c:558,1
    - Dst: gf_odf_write_reg
      Src: /src/gpac/src/odf/desc_private.c:560,1
    - Dst: gf_odf_write_short_text
      Src: /src/gpac/src/odf/desc_private.c:562,1
    - Dst: gf_odf_write_smpte_camera
      Src: /src/gpac/src/odf/desc_private.c:564,1
    - Dst: gf_odf_write_sup_cid
      Src: /src/gpac/src/odf/desc_private.c:566,1
    - Dst: gf_odf_write_ipmp_tool_list
      Src: /src/gpac/src/odf/desc_private.c:569,1
    - Dst: gf_odf_write_ipmp_tool
      Src: /src/gpac/src/odf/desc_private.c:571,1
    - Dst: gf_odf_write_default
      Src: /src/gpac/src/odf/desc_private.c:577,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 80
    argCount: 2
    argNames:
    - bs
    - desc
    argTypes:
    - GF_BitStream*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 488
    functionDepth: 3
    functionLinenumber: 488
    functionLinenumberEnd: 580
    functionName: gf_odf_write_descriptor
    functionSourceFile: /src/gpac/src/odf/desc_private.c
    functionUses: 12
    functionsReached:
    - gf_odf_write_ipmp_tool
    - gf_odf_write_isom_od
    - gf_odf_write_iod
    - gf_odf_write_esd
    - gf_odf_write_od
    - gf_odf_write_cc
    - gf_odf_write_oci_date
    - gf_odf_write_oci_name
    - gf_odf_write_cc_name
    - gf_odf_write_cc_date
    - gf_odf_write_muxinfo
    - gf_odf_write_mediatime
    - gf_odf_write_smpte_camera
    - gf_odf_write_default
    - gf_odf_write_segment
    - gf_odf_write_ipmp_ptr
    - gf_odf_write_ci
    - gf_odf_write_auxvid
    - gf_odf_write_reg
    - gf_odf_write_ipmp_tool_list
    - gf_odf_write_esd_inc
    - gf_odf_write_isom_iod
    - gf_odf_write_ipmp
    - gf_odf_write_qos
    - gf_odf_write_slc
    - gf_odf_write_esd_ref
    - gf_odf_write_pl_idx
    - gf_odf_write_rating
    - gf_odf_write_short_text
    - gf_odf_write_sup_cid
    - gf_odf_write_ipi_ptr
    - gf_odf_write_lang
    - gf_odf_write_dcd
    - gf_odf_write_pl_ext
    - gf_odf_write_exp_text
    - gf_odf_write_kw
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_write_descriptor(GF_BitStream *bs, GF_Descriptor *desc)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_new_od_update
      Src: /src/gpac/src/odf/desc_private.c:590,1
    - Dst: gf_odf_new_od_remove
      Src: /src/gpac/src/odf/desc_private.c:592,1
    - Dst: gf_odf_new_esd_update
      Src: /src/gpac/src/odf/desc_private.c:594,1
    - Dst: gf_odf_new_esd_remove
      Src: /src/gpac/src/odf/desc_private.c:596,1
    - Dst: gf_odf_new_esd_remove
      Src: /src/gpac/src/odf/desc_private.c:599,1
    - Dst: gf_odf_new_ipmp_update
      Src: /src/gpac/src/odf/desc_private.c:606,1
    - Dst: gf_odf_new_ipmp_remove
      Src: /src/gpac/src/odf/desc_private.c:608,1
    - Dst: gf_odf_new_base_command
      Src: /src/gpac/src/odf/desc_private.c:615,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 32
    argCount: 1
    argNames:
    - tag
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 585
    functionDepth: 2
    functionLinenumber: 585
    functionLinenumberEnd: 624
    functionName: gf_odf_create_command
    functionSourceFile: /src/gpac/src/odf/desc_private.c
    functionUses: 2
    functionsReached:
    - gf_odf_new_od_update
    - gf_odf_new_od_remove
    - gf_odf_new_esd_remove
    - gf_odf_new_ipmp_remove
    - gf_odf_new_esd_update
    - gf_odf_new_base_command
    - gf_odf_new_ipmp_update
    linkageType: ''
    returnType: GF_ODCom
    signature: GF_ODCom *gf_odf_create_command(u8 tag)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_del_od_update
      Src: /src/gpac/src/odf/desc_private.c:634,1
    - Dst: gf_odf_del_od_remove
      Src: /src/gpac/src/odf/desc_private.c:636,1
    - Dst: gf_odf_del_esd_update
      Src: /src/gpac/src/odf/desc_private.c:639,1
    - Dst: gf_odf_del_esd_remove
      Src: /src/gpac/src/odf/desc_private.c:642,1
    - Dst: gf_odf_del_ipmp_update
      Src: /src/gpac/src/odf/desc_private.c:645,1
    - Dst: gf_odf_del_ipmp_remove
      Src: /src/gpac/src/odf/desc_private.c:647,1
    - Dst: gf_odf_del_base_command
      Src: /src/gpac/src/odf/desc_private.c:650,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 1
    argNames:
    - com
    argTypes:
    - GF_ODCom*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 630
    functionDepth: 2
    functionLinenumber: 630
    functionLinenumberEnd: 657
    functionName: gf_odf_delete_command
    functionSourceFile: /src/gpac/src/odf/desc_private.c
    functionUses: 5
    functionsReached:
    - gf_odf_del_ipmp_update
    - gf_odf_del_ipmp_remove
    - gf_odf_del_esd_update
    - gf_odf_del_od_remove
    - gf_odf_del_esd_remove
    - gf_odf_del_od_update
    - gf_odf_del_base_command
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_delete_command(GF_ODCom *com)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_read_od_update
      Src: /src/gpac/src/odf/desc_private.c:667,1
    - Dst: gf_odf_read_od_remove
      Src: /src/gpac/src/odf/desc_private.c:669,1
    - Dst: gf_odf_read_esd_update
      Src: /src/gpac/src/odf/desc_private.c:671,1
    - Dst: gf_odf_read_esd_remove
      Src: /src/gpac/src/odf/desc_private.c:674,1
    - Dst: gf_odf_read_ipmp_update
      Src: /src/gpac/src/odf/desc_private.c:677,1
    - Dst: gf_odf_read_ipmp_remove
      Src: /src/gpac/src/odf/desc_private.c:679,1
    - Dst: gf_odf_read_base_command
      Src: /src/gpac/src/odf/desc_private.c:681,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 3
    argNames:
    - bs
    - com
    - gf_odf_size_command
    argTypes:
    - GF_BitStream*
    - GF_ODCom*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 663
    functionDepth: 3
    functionLinenumber: 663
    functionLinenumberEnd: 688
    functionName: gf_odf_read_command
    functionSourceFile: /src/gpac/src/odf/desc_private.c
    functionUses: 1
    functionsReached:
    - gf_odf_read_od_remove
    - gf_odf_read_base_command
    - gf_odf_read_esd_update
    - gf_odf_read_ipmp_remove
    - gf_odf_read_ipmp_update
    - gf_odf_read_od_update
    - gf_odf_read_esd_remove
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_read_command(GF_BitStream *bs, GF_ODCom *com, u32 gf_odf_size_command)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_write_od_update
      Src: /src/gpac/src/odf/desc_private.c:699,1
    - Dst: gf_odf_write_od_remove
      Src: /src/gpac/src/odf/desc_private.c:701,1
    - Dst: gf_odf_write_esd_update
      Src: /src/gpac/src/odf/desc_private.c:704,1
    - Dst: gf_odf_write_esd_remove
      Src: /src/gpac/src/odf/desc_private.c:707,1
    - Dst: gf_odf_write_ipmp_update
      Src: /src/gpac/src/odf/desc_private.c:710,1
    - Dst: gf_odf_write_ipmp_remove
      Src: /src/gpac/src/odf/desc_private.c:712,1
    - Dst: gf_odf_write_base_command
      Src: /src/gpac/src/odf/desc_private.c:715,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 2
    argNames:
    - bs
    - com
    argTypes:
    - GF_BitStream*
    - GF_ODCom*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 721
      start: 695
    functionDepth: 3
    functionLinenumber: 695
    functionLinenumberEnd: 721
    functionName: gf_odf_write_command
    functionSourceFile: /src/gpac/src/odf/desc_private.c
    functionUses: 1
    functionsReached:
    - gf_odf_write_base_command
    - gf_odf_write_od_update
    - gf_odf_write_ipmp_update
    - gf_odf_write_esd_update
    - gf_odf_write_ipmp_remove
    - gf_odf_write_esd_remove
    - gf_odf_write_od_remove
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_odf_write_command(GF_BitStream *bs, GF_ODCom *com)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/hc_flash_shape.c:61,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/hc_flash_shape.c:62,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/hc_flash_shape.c:63,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/hc_flash_shape.c:64,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/hc_flash_shape.c:66,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/hc_flash_shape.c:68,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - stack
    argTypes:
    - FSStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 70
    functionName: clean_paths
    functionSourceFile: /src/gpac/src/compositor/hc_flash_shape.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - mesh_free
    - gf_path_del
    - gf_list_count
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void clean_paths(FSStack *stack)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/hc_flash_shape.c:75,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/hc_flash_shape.c:77,1
    - Dst: gf_path_new
      Src: /src/gpac/src/compositor/hc_flash_shape.c:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - st
    - line_col
    - fill_col
    - width
    argTypes:
    - FSStack*
    - u32
    - u32
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 83
    functionName: new_fs_item
    functionSourceFile: /src/gpac/src/compositor/hc_flash_shape.c
    functionUses: 0
    functionsReached:
    - gf_path_new
    - gf_list_add
    - GF_SAFEALLOC
    linkageType: ''
    returnType: FSItem
    signature: FSItem *new_fs_item(FSStack *st, u32 line_col, u32 fill_col, Fixed
      width)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 86
    functionName: SFCOL_MAKE_ARGB
    functionSourceFile: /src/gpac/src/compositor/hc_flash_shape.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SFCOL_MAKE_ARGB(c)
  - BBCount: 56
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_field
      Src: /src/gpac/src/compositor/hc_flash_shape.c:103,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/compositor/hc_flash_shape.c:105,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/compositor/hc_flash_shape.c:107,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/compositor/hc_flash_shape.c:109,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/compositor/hc_flash_shape.c:111,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/compositor/hc_flash_shape.c:113,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/compositor/hc_flash_shape.c:115,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/compositor/hc_flash_shape.c:117,1
    - Dst: SFCOL_MAKE_ARGB
      Src: /src/gpac/src/compositor/hc_flash_shape.c:185,1
    - Dst: SFCOL_MAKE_ARGB
      Src: /src/gpac/src/compositor/hc_flash_shape.c:197,1
    - Dst: new_fs_item
      Src: /src/gpac/src/compositor/hc_flash_shape.c:206,1
    - Dst: new_fs_item
      Src: /src/gpac/src/compositor/hc_flash_shape.c:210,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:218,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:219,1
    - Dst: new_fs_item
      Src: /src/gpac/src/compositor/hc_flash_shape.c:228,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:229,1
    - Dst: new_fs_item
      Src: /src/gpac/src/compositor/hc_flash_shape.c:233,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:234,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:242,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:243,1
    - Dst: new_fs_item
      Src: /src/gpac/src/compositor/hc_flash_shape.c:251,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:252,1
    - Dst: new_fs_item
      Src: /src/gpac/src/compositor/hc_flash_shape.c:256,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:257,1
    - Dst: gf_path_add_cubic_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:269,1
    - Dst: gf_path_add_cubic_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:270,1
    - Dst: new_fs_item
      Src: /src/gpac/src/compositor/hc_flash_shape.c:279,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:280,1
    - Dst: new_fs_item
      Src: /src/gpac/src/compositor/hc_flash_shape.c:284,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:285,1
    - Dst: gf_path_add_cubic_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:297,1
    - Dst: gf_path_add_cubic_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:298,1
    - Dst: new_fs_item
      Src: /src/gpac/src/compositor/hc_flash_shape.c:307,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:308,1
    - Dst: new_fs_item
      Src: /src/gpac/src/compositor/hc_flash_shape.c:312,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:313,1
    - Dst: gf_path_add_quadratic_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:323,1
    - Dst: gf_path_add_quadratic_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:324,1
    - Dst: new_fs_item
      Src: /src/gpac/src/compositor/hc_flash_shape.c:332,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:333,1
    - Dst: new_fs_item
      Src: /src/gpac/src/compositor/hc_flash_shape.c:337,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:338,1
    - Dst: gf_path_add_quadratic_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:348,1
    - Dst: gf_path_add_quadratic_to
      Src: /src/gpac/src/compositor/hc_flash_shape.c:349,1
    - Dst: gf_path_close
      Src: /src/gpac/src/compositor/hc_flash_shape.c:355,1
    - Dst: gf_path_close
      Src: /src/gpac/src/compositor/hc_flash_shape.c:356,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/hc_flash_shape.c:363,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/hc_flash_shape.c:364,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/hc_flash_shape.c:365,1
    - Dst: gf_rect_union
      Src: /src/gpac/src/compositor/hc_flash_shape.c:366,1
    CyclomaticComplexity: 76
    EdgeCount: 76
    ICount: 238
    argCount: 2
    argNames:
    - st
    - node
    argTypes:
    - FSStack*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 87
    functionDepth: 3
    functionLinenumber: 87
    functionLinenumberEnd: 368
    functionName: build_shape
    functionSourceFile: /src/gpac/src/compositor/hc_flash_shape.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_path_add_quadratic_to
    - gf_path_add_cubic_to
    - gf_path_add_move_to
    - gf_list_count
    - gf_rect_union
    - new_fs_item
    - gf_node_get_field
    - SFCOL_MAKE_ARGB
    - gf_path_add_line_to
    - gf_path_close
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void build_shape(FSStack *st, GF_Node *node)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/hc_flash_shape.c:374,1
    - Dst: clean_paths
      Src: /src/gpac/src/compositor/hc_flash_shape.c:378,1
    - Dst: drawable_del
      Src: /src/gpac/src/compositor/hc_flash_shape.c:379,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/hc_flash_shape.c:380,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/hc_flash_shape.c:381,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/hc_flash_shape.c:385,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/hc_flash_shape.c:386,1
    - Dst: clean_paths
      Src: /src/gpac/src/compositor/hc_flash_shape.c:388,1
    - Dst: build_shape
      Src: /src/gpac/src/compositor/hc_flash_shape.c:389,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/hc_flash_shape.c:395,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/hc_flash_shape.c:396,1
    - Dst: memset
      Src: /src/gpac/src/compositor/hc_flash_shape.c:398,1
    - Dst: visual_2d_draw_path
      Src: /src/gpac/src/compositor/hc_flash_shape.c:406,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/hc_flash_shape.c:413,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/hc_flash_shape.c:414,1
    - Dst: memset
      Src: /src/gpac/src/compositor/hc_flash_shape.c:415,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/hc_flash_shape.c:424,1
    - Dst: mesh_from_path
      Src: /src/gpac/src/compositor/hc_flash_shape.c:425,1
    - Dst: visual_3d_draw_2d_with_aspect
      Src: /src/gpac/src/compositor/hc_flash_shape.c:428,1
    - Dst: drawable_init_context_mpeg4
      Src: /src/gpac/src/compositor/hc_flash_shape.c:445,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/hc_flash_shape.c:452,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 67
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 370
    functionDepth: 4
    functionLinenumber: 370
    functionLinenumberEnd: 458
    functionName: fs_traverse
    functionSourceFile: /src/gpac/src/compositor/hc_flash_shape.c
    functionUses: 0
    functionsReached:
    - gf_free
    - mesh_from_path
    - gf_list_get
    - drawable_init_context_mpeg4
    - drawable_del
    - visual_3d_draw_2d_with_aspect
    - build_shape
    - drawable_finalize_sort
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_list_count
    - memset
    - new_mesh
    - visual_2d_draw_path
    - gf_node_get_private
    - clean_paths
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void fs_traverse(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/hc_flash_shape.c:465,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/hc_flash_shape.c:467,1
    - Dst: drawable_new
      Src: /src/gpac/src/compositor/hc_flash_shape.c:470,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/hc_flash_shape.c:473,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/hc_flash_shape.c:475,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/hc_flash_shape.c:476,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 461
    functionDepth: 2
    functionLinenumber: 461
    functionLinenumberEnd: 477
    functionName: compositor_init_hc_flashshape
    functionSourceFile: /src/gpac/src/compositor/hc_flash_shape.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - drawable_new
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_hc_flashshape(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_apply_point
      Src: /src/gpac/src/compositor/svg_media.c:46,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 5
    argNames:
    - tr_state
    - atts
    - cx
    - cy
    - angle
    argTypes:
    - GF_TraverseState*
    - SVGAllAttributes*
    - Fixed*
    - Fixed*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 65
    functionName: svg_video_get_transform_behavior
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_apply_point
    linkageType: ''
    returnType: Bool
    signature: Bool svg_video_get_transform_behavior(GF_TraverseState *tr_state, SVGAllAttributes
      *atts, Fixed *cx, Fixed *cy, Fixed *angle)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_TraverseState*::visual::DrawBitmap
      Src: /src/gpac/src/compositor/svg_media.c:71,1
    - Dst: visual_2d_texture_path
      Src: /src/gpac/src/compositor/svg_media.c:72,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - tr_state
    argTypes:
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 74
    functionName: SVG_Draw_bitmap
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - GF_TraverseState*::visual::DrawBitmap
    - visual_2d_texture_path
    linkageType: ''
    returnType: void
    signature: void SVG_Draw_bitmap(GF_TraverseState *tr_state)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_media.c:86,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_media.c:88,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/svg_media.c:103,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/svg_media.c:104,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_media.c:130,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_media.c:131,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_media.c:135,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_media.c:140,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_media.c:145,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_media.c:150,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/svg_media.c:192,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/svg_media.c:193,1
    - Dst: gf_path_add_rect_center
      Src: /src/gpac/src/compositor/svg_media.c:194,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/svg_media.c:195,1
    - Dst: gf_rect_equal
      Src: /src/gpac/src/compositor/svg_media.c:196,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/svg_media.c:197,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/svg_media.c:199,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_media.c:201,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 107
    argCount: 2
    argNames:
    - stack
    - tr_state
    argTypes:
    - SVG_video_stack*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 76
    functionDepth: 2
    functionLinenumber: 76
    functionLinenumberEnd: 202
    functionName: SVG_Build_Bitmap_Graph
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_path_add_rect_center
    - INT2FIX
    - gf_svg_flatten_attributes
    - drawable_reset_path
    - drawable_mark_modified
    - gf_divfix
    - gf_rect_equal
    - gf_node_dirty_clear
    - gf_mulfix
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void SVG_Build_Bitmap_Graph(SVG_video_stack *stack, GF_TraverseState
      *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_open
      Src: /src/gpac/src/compositor/svg_media.c:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - stack
    argTypes:
    - SVG_video_stack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 204
    functionDepth: 1
    functionLinenumber: 204
    functionLinenumberEnd: 207
    functionName: svg_open_texture
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - gf_sc_texture_open
    linkageType: ''
    returnType: void
    signature: void svg_open_texture(SVG_video_stack *stack)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_stop_no_unregister
      Src: /src/gpac/src/compositor/svg_media.c:213,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_media.c:216,1
    - Dst: gf_sc_texture_play_from_to
      Src: /src/gpac/src/compositor/svg_media.c:221,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - stack
    - atts
    argTypes:
    - SVG_video_stack*
    - SVGAllAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 226
    functionName: svg_play_texture
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - gf_svg_flatten_attributes
    - gf_sc_texture_stop_no_unregister
    - gf_sc_texture_play_from_to
    linkageType: ''
    returnType: void
    signature: void svg_play_texture(SVG_video_stack *stack, SVGAllAttributes *atts)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_media.c:232,1
    - Dst: gf_sc_texture_destroy
      Src: /src/gpac/src/compositor/svg_media.c:242,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/compositor/svg_media.c:243,1
    - Dst: drawable_del
      Src: /src/gpac/src/compositor/svg_media.c:245,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/svg_media.c:247,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_media.c:249,1
    - Dst: SVG_Draw_bitmap
      Src: /src/gpac/src/compositor/svg_media.c:254,1
    - Dst: svg_drawable_pick
      Src: /src/gpac/src/compositor/svg_media.c:258,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/svg_media.c:264,1
    - Dst: mesh_from_path
      Src: /src/gpac/src/compositor/svg_media.c:265,1
    - Dst: compositor_3d_draw_bitmap
      Src: /src/gpac/src/compositor/svg_media.c:267,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_media.c:273,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_media.c:274,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_media.c:277,1
    - Dst: gf_mo_url_changed
      Src: /src/gpac/src/compositor/svg_media.c:278,1
    - Dst: gf_sc_get_mfurl_from_xlink
      Src: /src/gpac/src/compositor/svg_media.c:280,1
    - Dst: svg_audio_smil_evaluate_ex
      Src: /src/gpac/src/compositor/svg_media.c:285,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/svg_media.c:286,1
    - Dst: svg_play_texture
      Src: /src/gpac/src/compositor/svg_media.c:291,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_media.c:293,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_media.c:296,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_media.c:299,1
    - Dst: SVG_Build_Bitmap_Graph
      Src: /src/gpac/src/compositor/svg_media.c:300,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_media.c:300,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_media.c:305,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/svg_media.c:306,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_media.c:307,1
    - Dst: svg_video_get_transform_behavior
      Src: /src/gpac/src/compositor/svg_media.c:309,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/svg_media.c:311,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/svg_media.c:312,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_media.c:315,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/compositor/svg_media.c:316,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/svg_media.c:317,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/svg_media.c:319,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_media.c:322,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_media.c:325,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_media.c:329,1
    - Dst: drawable_init_context_svg
      Src: /src/gpac/src/compositor/svg_media.c:331,1
    - Dst: svg_video_get_transform_behavior
      Src: /src/gpac/src/compositor/svg_media.c:334,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/svg_media.c:335,1
    - Dst: gf_path_add_rect_center
      Src: /src/gpac/src/compositor/svg_media.c:336,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/svg_media.c:336,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/svg_media.c:336,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_media.c:338,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_media.c:341,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/compositor/svg_media.c:342,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/compositor/svg_media.c:359,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/svg_media.c:359,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/svg_media.c:365,1
    - Dst: mesh_from_path
      Src: /src/gpac/src/compositor/svg_media.c:366,1
    - Dst: compositor_3d_draw_bitmap
      Src: /src/gpac/src/compositor/svg_media.c:368,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/svg_media.c:373,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_media.c:376,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_media.c:377,1
    - Dst: svg_traverse_audio_ex
      Src: /src/gpac/src/compositor/svg_media.c:380,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_media.c:382,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 114
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 228
    functionDepth: 3
    functionLinenumber: 228
    functionLinenumberEnd: 384
    functionName: svg_traverse_bitmap
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - gf_free
    - mesh_from_path
    - gf_path_add_rect_center
    - svg_video_get_transform_behavior
    - svg_drawable_pick
    - gf_node_dirty_get
    - compositor_svg_is_display_off
    - gf_node_dirty_clear
    - gf_node_unregister
    - compositor_svg_restore_parent_transformation
    - gf_sc_get_mfurl_from_xlink
    - svg_audio_smil_evaluate_ex
    - drawable_del
    - compositor_3d_draw_bitmap
    - compositor_svg_traverse_base
    - memcpy
    - SVG_Draw_bitmap
    - gf_mx2d_apply_rect
    - new_mesh
    - gf_node_get_private
    - gf_sc_texture_destroy
    - gf_svg_flatten_attributes
    - drawable_reset_path
    - drawable_finalize_sort
    - GF_COL_ARGB
    - SVG_Build_Bitmap_Graph
    - gf_mx2d_copy
    - gf_mo_url_changed
    - INT2FIX
    - gf_sg_mfurl_del
    - svg_play_texture
    - FIX2INT
    - svg_traverse_audio_ex
    - compositor_svg_apply_local_transformation
    - drawable_init_context_svg
    - gf_mx2d_init
    - gf_mx2d_add_rotation
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void svg_traverse_bitmap(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_media.c:392,1
    - Dst: gf_sc_texture_play_from_to
      Src: /src/gpac/src/compositor/svg_media.c:396,1
    - Dst: gf_sc_texture_update_frame
      Src: /src/gpac/src/compositor/svg_media.c:399,1
    - Dst: gf_node_dirty_parents
      Src: /src/gpac/src/compositor/svg_media.c:403,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/svg_media.c:404,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 390
    functionDepth: 2
    functionLinenumber: 390
    functionLinenumberEnd: 406
    functionName: SVG_Update_image
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - gf_sc_texture_update_frame
    - gf_sc_invalidate
    - gf_node_dirty_parents
    - gf_node_get_private
    - gf_sc_texture_play_from_to
    linkageType: ''
    returnType: void
    signature: void SVG_Update_image(GF_TextureHandler *txh)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: svg_traverse_bitmap
      Src: /src/gpac/src/compositor/svg_media.c:410,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 408
    functionDepth: 4
    functionLinenumber: 408
    functionLinenumberEnd: 411
    functionName: svg_traverse_image
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - svg_traverse_bitmap
    linkageType: ''
    returnType: void
    signature: void svg_traverse_image(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_media.c:416,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_media.c:418,1
    - Dst: drawable_new
      Src: /src/gpac/src/compositor/svg_media.c:421,1
    - Dst: gf_sc_texture_setup
      Src: /src/gpac/src/compositor/svg_media.c:425,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/svg_media.c:430,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_media.c:432,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_media.c:433,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 413
    functionDepth: 2
    functionLinenumber: 413
    functionLinenumberEnd: 434
    functionName: compositor_init_svg_image
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_dirty_set
    - GF_LOG
    - gf_node_set_private
    - drawable_new
    - gf_node_set_callback_function
    - gf_sc_texture_setup
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_image(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_media.c:442,1
    - Dst: svg_open_texture
      Src: /src/gpac/src/compositor/svg_media.c:445,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/compositor/svg_media.c:453,1
    - Dst: svg_play_texture
      Src: /src/gpac/src/compositor/svg_media.c:459,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/svg_media.c:460,1
    - Dst: gf_sc_texture_update_frame
      Src: /src/gpac/src/compositor/svg_media.c:467,1
    - Dst: gf_smil_timing_is_active
      Src: /src/gpac/src/compositor/svg_media.c:474,1
    - Dst: gf_sc_texture_stop_no_unregister
      Src: /src/gpac/src/compositor/svg_media.c:475,1
    - Dst: gf_mo_has_audio
      Src: /src/gpac/src/compositor/svg_media.c:483,1
    - Dst: gf_node_new
      Src: /src/gpac/src/compositor/svg_media.c:488,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/svg_media.c:488,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/svg_media.c:489,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/compositor/svg_media.c:490,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/compositor/svg_media.c:491,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/compositor/svg_media.c:492,1
    - Dst: compositor_init_svg_audio
      Src: /src/gpac/src/compositor/svg_media.c:495,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/svg_media.c:504,1
    - Dst: gf_sc_texture_stop_no_unregister
      Src: /src/gpac/src/compositor/svg_media.c:508,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 48
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 439
    functionDepth: 5
    functionLinenumber: 439
    functionLinenumberEnd: 510
    functionName: SVG_Update_video
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - compositor_init_svg_audio
    - svg_open_texture
    - gf_node_get_attribute_by_tag
    - gf_smil_timing_is_active
    - gf_svg_attributes_copy
    - svg_play_texture
    - gf_sc_texture_update_frame
    - gf_node_new
    - gf_sc_invalidate
    - gf_node_get_graph
    - gf_node_register
    - gf_node_get_private
    - gf_sc_texture_stop_no_unregister
    - gf_mo_has_audio
    linkageType: ''
    returnType: void
    signature: void SVG_Update_video(GF_TextureHandler *txh)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_media.c:514,1
    - Dst: gf_smil_get_element
      Src: /src/gpac/src/compositor/svg_media.c:514,1
    - Dst: svg_play_texture
      Src: /src/gpac/src/compositor/svg_media.c:520,1
    - Dst: gf_smil_get_media_duration
      Src: /src/gpac/src/compositor/svg_media.c:523,1
    - Dst: gf_mo_get_duration
      Src: /src/gpac/src/compositor/svg_media.c:524,1
    - Dst: gf_smil_set_media_duration
      Src: /src/gpac/src/compositor/svg_media.c:529,1
    - Dst: gf_sc_texture_restart
      Src: /src/gpac/src/compositor/svg_media.c:537,1
    - Dst: svg_audio_smil_evaluate_ex
      Src: /src/gpac/src/compositor/svg_media.c:542,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 28
    argCount: 3
    argNames:
    - rti
    - normalized_scene_time
    - status
    argTypes:
    - SMIL_Timing_RTI*
    - Fixed
    - GF_SGSMILTimingEvalState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 543
      start: 512
    functionDepth: 4
    functionLinenumber: 512
    functionLinenumberEnd: 543
    functionName: svg_video_smil_evaluate
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - gf_smil_get_element
    - svg_audio_smil_evaluate_ex
    - gf_smil_set_media_duration
    - gf_smil_get_media_duration
    - svg_play_texture
    - gf_sc_texture_restart
    - gf_mo_get_duration
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void svg_video_smil_evaluate(SMIL_Timing_RTI *rti, Fixed normalized_scene_time,
      GF_SGSMILTimingEvalState status)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: svg_traverse_bitmap
      Src: /src/gpac/src/compositor/svg_media.c:547,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 545
    functionDepth: 4
    functionLinenumber: 545
    functionLinenumberEnd: 548
    functionName: svg_traverse_video
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - svg_traverse_bitmap
    linkageType: ''
    returnType: void
    signature: void svg_traverse_video(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_media.c:553,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_media.c:555,1
    - Dst: drawable_new
      Src: /src/gpac/src/compositor/svg_media.c:558,1
    - Dst: gf_sc_texture_setup
      Src: /src/gpac/src/compositor/svg_media.c:562,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/svg_media.c:567,1
    - Dst: gf_smil_set_evaluation_callback
      Src: /src/gpac/src/compositor/svg_media.c:569,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_media.c:571,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_media.c:572,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 550
    functionDepth: 2
    functionLinenumber: 550
    functionLinenumberEnd: 573
    functionName: compositor_init_svg_video
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_dirty_set
    - GF_LOG
    - gf_node_set_private
    - drawable_new
    - gf_node_set_callback_function
    - gf_sc_texture_setup
    - gf_smil_set_evaluation_callback
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_video(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_media.c:577,1
    - Dst: gf_mo_pause
      Src: /src/gpac/src/compositor/svg_media.c:579,1
    - Dst: gf_mo_resume
      Src: /src/gpac/src/compositor/svg_media.c:580,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - n
    - pause
    argTypes:
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 581
      start: 575
    functionDepth: 2
    functionLinenumber: 575
    functionLinenumberEnd: 581
    functionName: svg_pause_video
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    - gf_mo_resume
    - gf_mo_pause
    linkageType: ''
    returnType: void
    signature: void svg_pause_video(GF_Node *n, Bool pause)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_media.c:587,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_media.c:588,1
    - Dst: svg_audio_smil_evaluate_ex
      Src: /src/gpac/src/compositor/svg_media.c:592,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/svg_media.c:593,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/svg_media.c:597,1
    - Dst: gf_sc_texture_stop
      Src: /src/gpac/src/compositor/svg_media.c:598,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/svg_media.c:601,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/svg_media.c:603,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 583
    functionDepth: 3
    functionLinenumber: 583
    functionLinenumberEnd: 604
    functionName: compositor_svg_video_modified
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - gf_sc_texture_stop
    - svg_audio_smil_evaluate_ex
    - gf_node_dirty_set
    - gf_node_dirty_get
    - gf_sc_next_frame_state
    - gf_node_unregister
    - gf_sg_vrml_mf_reset
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void compositor_svg_video_modified(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_smil_get_element
      Src: /src/gpac/src/compositor/svg_media.c:617,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_media.c:619,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_media.c:627,1
    - Dst: gf_sc_audio_open
      Src: /src/gpac/src/compositor/svg_media.c:631,1
    - Dst: gf_mo_set_speed
      Src: /src/gpac/src/compositor/svg_media.c:636,1
    - Dst: gf_smil_get_media_duration
      Src: /src/gpac/src/compositor/svg_media.c:643,1
    - Dst: gf_mo_get_duration
      Src: /src/gpac/src/compositor/svg_media.c:644,1
    - Dst: gf_smil_set_media_duration
      Src: /src/gpac/src/compositor/svg_media.c:649,1
    - Dst: gf_sc_audio_restart
      Src: /src/gpac/src/compositor/svg_media.c:654,1
    - Dst: gf_sc_audio_stop
      Src: /src/gpac/src/compositor/svg_media.c:657,1
    - Dst: gf_sc_audio_stop
      Src: /src/gpac/src/compositor/svg_media.c:661,1
    - Dst: gf_sc_audio_stop
      Src: /src/gpac/src/compositor/svg_media.c:666,1
    - Dst: gf_sc_audio_unregister
      Src: /src/gpac/src/compositor/svg_media.c:667,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 48
    argCount: 5
    argNames:
    - rti
    - normalized_scene_time
    - status
    - slave_audio
    - video
    argTypes:
    - SMIL_Timing_RTI*
    - Fixed
    - u32
    - GF_Node*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 672
      start: 611
    functionDepth: 4
    functionLinenumber: 611
    functionLinenumberEnd: 672
    functionName: svg_audio_smil_evaluate_ex
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 3
    functionsReached:
    - gf_smil_get_element
    - gf_sc_audio_open
    - gf_svg_flatten_attributes
    - gf_smil_set_media_duration
    - gf_sc_audio_restart
    - gf_smil_get_media_duration
    - gf_sc_audio_unregister
    - gf_mo_set_speed
    - gf_mo_get_duration
    - gf_sc_audio_stop
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void svg_audio_smil_evaluate_ex(SMIL_Timing_RTI *rti, Fixed normalized_scene_time,
      u32 status, GF_Node *slave_audio, GF_Node *video)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: svg_audio_smil_evaluate_ex
      Src: /src/gpac/src/compositor/svg_media.c:676,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - rti
    - normalized_scene_time
    - status
    argTypes:
    - SMIL_Timing_RTI*
    - Fixed
    - GF_SGSMILTimingEvalState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 677
      start: 674
    functionDepth: 5
    functionLinenumber: 674
    functionLinenumberEnd: 677
    functionName: svg_audio_smil_evaluate
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - svg_audio_smil_evaluate_ex
    linkageType: ''
    returnType: void
    signature: void svg_audio_smil_evaluate(SMIL_Timing_RTI *rti, Fixed normalized_scene_time,
      GF_SGSMILTimingEvalState status)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_media.c:686,1
    - Dst: gf_sc_audio_predestroy
      Src: /src/gpac/src/compositor/svg_media.c:689,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/compositor/svg_media.c:690,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_media.c:691,1
    - Dst: gf_sc_audio_register
      Src: /src/gpac/src/compositor/svg_media.c:695,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_media.c:701,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_media.c:702,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_media.c:707,1
    - Dst: gf_sc_audio_stop
      Src: /src/gpac/src/compositor/svg_media.c:711,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_media.c:715,1
    - Dst: gf_sc_get_mfurl_from_xlink
      Src: /src/gpac/src/compositor/svg_media.c:716,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_media.c:718,1
    - Dst: gf_sc_audio_open
      Src: /src/gpac/src/compositor/svg_media.c:721,1
    - Dst: gf_mo_set_speed
      Src: /src/gpac/src/compositor/svg_media.c:727,1
    - Dst: gf_sc_audio_unregister
      Src: /src/gpac/src/compositor/svg_media.c:730,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_media.c:738,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_media.c:747,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 45
    argCount: 4
    argNames:
    - node
    - rs
    - is_destroy
    - props
    argTypes:
    - GF_Node*
    - void*
    - Bool
    - SVGPropertiesPointers*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 680
    functionDepth: 2
    functionLinenumber: 680
    functionLinenumberEnd: 750
    functionName: svg_traverse_audio_ex
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_sc_get_mfurl_from_xlink
    - gf_sc_audio_predestroy
    - gf_sc_audio_open
    - gf_svg_flatten_attributes
    - gf_sc_audio_register
    - gf_sg_mfurl_del
    - compositor_svg_traverse_base
    - gf_node_dirty_get
    - compositor_svg_is_display_off
    - gf_sc_audio_unregister
    - gf_mo_set_speed
    - gf_node_dirty_clear
    - memcpy
    - gf_sc_audio_stop
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void svg_traverse_audio_ex(GF_Node *node, void *rs, Bool is_destroy,
      SVGPropertiesPointers *props)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: svg_traverse_audio_ex
      Src: /src/gpac/src/compositor/svg_media.c:753,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 751
    functionDepth: 3
    functionLinenumber: 751
    functionLinenumberEnd: 754
    functionName: svg_traverse_audio
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - svg_traverse_audio_ex
    linkageType: ''
    returnType: void
    signature: void svg_traverse_audio(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_media.c:759,1
    - Dst: gf_sc_audio_setup
      Src: /src/gpac/src/compositor/svg_media.c:761,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/svg_media.c:764,1
    - Dst: gf_smil_set_evaluation_callback
      Src: /src/gpac/src/compositor/svg_media.c:767,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_media.c:769,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_media.c:770,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - compositor
    - node
    - slaved_timing
    argTypes:
    - GF_Compositor*
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 771
      start: 756
    functionDepth: 2
    functionLinenumber: 756
    functionLinenumberEnd: 771
    functionName: compositor_init_svg_audio
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_dirty_set
    - gf_node_set_private
    - gf_sc_audio_setup
    - gf_node_set_callback_function
    - gf_smil_set_evaluation_callback
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_audio(GF_Compositor *compositor, GF_Node *node,
      Bool slaved_timing)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_media.c:775,1
    - Dst: gf_mo_pause
      Src: /src/gpac/src/compositor/svg_media.c:777,1
    - Dst: gf_mo_resume
      Src: /src/gpac/src/compositor/svg_media.c:778,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - n
    - pause
    argTypes:
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 779
      start: 773
    functionDepth: 2
    functionLinenumber: 773
    functionLinenumberEnd: 779
    functionName: svg_pause_audio
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    - gf_mo_resume
    - gf_mo_pause
    linkageType: ''
    returnType: void
    signature: void svg_pause_audio(GF_Node *n, Bool pause)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_media.c:783,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 785
      start: 781
    functionDepth: 2
    functionLinenumber: 781
    functionLinenumberEnd: 785
    functionName: compositor_svg_get_image_texture
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: GF_TextureHandler
    signature: GF_TextureHandler *compositor_svg_get_image_texture(GF_Node *node)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_media.c:800,1
    - Dst: gf_smil_get_element
      Src: /src/gpac/src/compositor/svg_media.c:800,1
    - Dst: gf_mo_play
      Src: /src/gpac/src/compositor/svg_media.c:805,1
    - Dst: gf_mo_is_done
      Src: /src/gpac/src/compositor/svg_media.c:808,1
    - Dst: gf_smil_get_media_duration
      Src: /src/gpac/src/compositor/svg_media.c:808,1
    - Dst: gf_mo_get_duration
      Src: /src/gpac/src/compositor/svg_media.c:809,1
    - Dst: gf_smil_set_media_duration
      Src: /src/gpac/src/compositor/svg_media.c:810,1
    - Dst: gf_mo_set_flag
      Src: /src/gpac/src/compositor/svg_media.c:816,1
    - Dst: gf_mo_stop
      Src: /src/gpac/src/compositor/svg_media.c:817,1
    - Dst: gf_mo_restart
      Src: /src/gpac/src/compositor/svg_media.c:820,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 3
    argNames:
    - rti
    - normalized_scene_time
    - status
    argTypes:
    - SMIL_Timing_RTI*
    - Fixed
    - GF_SGSMILTimingEvalState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 825
      start: 798
    functionDepth: 4
    functionLinenumber: 798
    functionLinenumberEnd: 825
    functionName: svg_updates_smil_evaluate
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - gf_mo_play
    - gf_smil_get_element
    - gf_smil_set_media_duration
    - gf_mo_is_done
    - gf_smil_get_media_duration
    - gf_mo_stop
    - gf_mo_restart
    - gf_mo_get_duration
    - gf_mo_set_flag
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void svg_updates_smil_evaluate(SMIL_Timing_RTI *rti, Fixed normalized_scene_time,
      GF_SGSMILTimingEvalState status)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_media.c:830,1
    - Dst: gf_mo_set_flag
      Src: /src/gpac/src/compositor/svg_media.c:839,1
    - Dst: gf_mo_stop
      Src: /src/gpac/src/compositor/svg_media.c:840,1
    - Dst: gf_mo_unregister
      Src: /src/gpac/src/compositor/svg_media.c:842,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_media.c:844,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_media.c:851,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_media.c:852,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_media.c:855,1
    - Dst: gf_sc_get_mfurl_from_xlink
      Src: /src/gpac/src/compositor/svg_media.c:868,1
    - Dst: gf_mo_register
      Src: /src/gpac/src/compositor/svg_media.c:870,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/compositor/svg_media.c:871,1
    - Dst: gf_mo_stop
      Src: /src/gpac/src/compositor/svg_media.c:875,1
    - Dst: gf_mo_unregister
      Src: /src/gpac/src/compositor/svg_media.c:876,1
    - Dst: gf_mo_play
      Src: /src/gpac/src/compositor/svg_media.c:879,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_media.c:882,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_media.c:884,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 43
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 886
      start: 827
    functionDepth: 2
    functionLinenumber: 827
    functionLinenumberEnd: 886
    functionName: svg_traverse_updates
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sc_get_mfurl_from_xlink
    - gf_mo_play
    - gf_mo_register
    - gf_svg_flatten_attributes
    - gf_mo_stop
    - compositor_svg_traverse_base
    - gf_node_dirty_get
    - gf_sg_mfurl_del
    - memcpy
    - gf_mo_unregister
    - gf_node_dirty_clear
    - gf_mo_set_flag
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void svg_traverse_updates(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_media.c:891,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_media.c:893,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/svg_media.c:898,1
    - Dst: gf_smil_set_evaluation_callback
      Src: /src/gpac/src/compositor/svg_media.c:900,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_media.c:902,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_media.c:903,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 905
      start: 888
    functionDepth: 2
    functionLinenumber: 888
    functionLinenumberEnd: 905
    functionName: compositor_init_svg_updates
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_dirty_set
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    - gf_smil_set_evaluation_callback
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_updates(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:45,1
    - Dst: PreDestroyBindable
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:47,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:48,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:50,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:51,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:52,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:53,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:55,1
    - Dst: drawable_del
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:57,1
    - Dst: gf_sc_texture_destroy
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:58,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:60,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 63
    functionName: DestroyBackground2D
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background2d.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sc_texture_destroy
    - gf_list_get
    - drawable_del
    - mesh_free
    - PreDestroyBindable
    - gf_list_count
    - gf_list_rem
    - gf_node_get_private
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void DestroyBackground2D(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:69,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:71,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:74,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:78,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:80,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - bck
    - back
    argTypes:
    - Background2DStack*
    - M_Background2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 81
    functionName: b2D_new_status
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background2d.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB_FIXED
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_add
    - gf_mx2d_init
    linkageType: ''
    returnType: void
    signature: void b2D_new_status(Background2DStack *bck, M_Background2D*back)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:88,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:90,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:92,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - stack
    - background_stack
    argTypes:
    - Background2DStack*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 96
    functionName: b2d_get_status
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background2d.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: BackgroundStatus
    signature: BackgroundStatus *b2d_get_status(Background2DStack *stack, GF_List
      *background_stack)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:103,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - bck
    argTypes:
    - M_Background2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 105
    functionName: back_use_texture
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background2d.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: Bool
    signature: Bool back_use_texture(M_Background2D *bck)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:115,1
    - Dst: back_use_texture
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:122,1
    - Dst: GF_TraverseState*::visual::DrawBitmap
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:134,1
    - Dst: gf_path_reset
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:136,1
    - Dst: gf_path_add_rect_center
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:137,1
    - Dst: visual_2d_texture_path
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:143,1
    - Dst: compositor_2d_hybgl_clear_surface
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:168,1
    - Dst: GF_TraverseState*::visual::ClearSurface
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:188,1
    - Dst: gf_irect_intersect
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:198,1
    - Dst: GF_TraverseState*::visual::ClearSurface
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:200,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 64
    argCount: 2
    argNames:
    - ctx
    - tr_state
    argTypes:
    - DrawableContext*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 107
    functionDepth: 2
    functionLinenumber: 107
    functionLinenumberEnd: 206
    functionName: DrawBackground2D_2D
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background2d.c
    functionUses: 0
    functionsReached:
    - gf_path_add_rect_center
    - GF_TraverseState*::visual::DrawBitmap
    - compositor_2d_hybgl_clear_surface
    - back_use_texture
    - gf_path_reset
    - gf_irect_intersect
    - gf_node_get_private
    - visual_2d_texture_path
    - GF_TraverseState*::visual::ClearSurface
    linkageType: ''
    returnType: void
    signature: void DrawBackground2D_2D(DrawableContext *ctx, GF_TraverseState *tr_state)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: back_use_texture
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:211,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:216,1
    - Dst: gf_sc_texture_set_blend_mode
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:218,1
    - Dst: gf_sc_texture_is_transparent
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:218,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - bck
    - txh
    argTypes:
    - M_Background2D*
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 221
    functionName: back_texture_enabled
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background2d.c
    functionUses: 0
    functionsReached:
    - gf_sc_texture_is_transparent
    - gf_sc_invalidate
    - back_use_texture
    - gf_sc_texture_set_blend_mode
    linkageType: ''
    returnType: Bool
    signature: Bool back_texture_enabled(M_Background2D *bck, GF_TextureHandler *txh)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: back_texture_enabled
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:228,1
    - Dst: visual_3d_set_background_state
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:230,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:232,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:233,1
    - Dst: visual_3d_clear
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:237,1
    - Dst: visual_3d_set_background_state
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:239,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:244,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:245,1
    - Dst: visual_3d_set_material_2d
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:247,1
    - Dst: visual_3d_set_state
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:249,1
    - Dst: gf_sc_texture_enable
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:250,1
    - Dst: visual_3d_set_material_2d
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:251,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:256,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:257,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:258,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:259,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:260,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:261,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:262,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:266,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:270,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:271,1
    - Dst: gf_tan
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:271,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:273,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:275,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:277,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:279,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:281,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:284,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:296,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:299,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:300,1
    - Dst: gf_sc_texture_disable
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:302,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:306,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:307,1
    - Dst: visual_3d_set_background_state
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:309,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 63
    argCount: 3
    argNames:
    - bck
    - st
    - tr_state
    argTypes:
    - M_Background2D*
    - Background2DStack*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 223
    functionDepth: 2
    functionLinenumber: 223
    functionLinenumberEnd: 310
    functionName: DrawBackground2D_3D
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background2d.c
    functionUses: 0
    functionsReached:
    - visual_3d_mesh_paint
    - gf_mx_copy
    - visual_3d_set_state
    - gf_mx_init
    - new_mesh
    - gf_mx_add_matrix
    - gf_mx_add_scale
    - gf_mulfix
    - gf_sc_texture_enable
    - gf_tan
    - gf_sc_texture_disable
    - gf_muldiv
    - visual_3d_clear
    - visual_3d_set_background_state
    - mesh_set_vertex
    - mesh_set_triangle
    - gf_mx_add_translation
    - visual_3d_set_material_2d
    - back_texture_enabled
    linkageType: ''
    returnType: void
    signature: void DrawBackground2D_3D(M_Background2D *bck, Background2DStack *st,
      GF_TraverseState *tr_state)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:318,1
    - Dst: DestroyBackground2D
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:322,1
    - Dst: DrawBackground2D_2D
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:334,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:342,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:345,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:346,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:347,1
    - Dst: b2D_new_status
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:348,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:351,1
    - Dst: Bindable_SetIsBound
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:354,1
    - Dst: M_Background2D*::on_set_bind
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:357,1
    - Dst: back_use_texture
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:361,1
    - Dst: gf_sc_texture_play
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:361,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:363,1
    - Dst: b2d_get_status
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:368,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:371,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:375,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:378,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:384,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:385,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:386,1
    - Dst: back_use_texture
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:390,1
    - Dst: DrawBackground2D_3D
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:415,1
    - Dst: DrawBackground2D_2D
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:418,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 77
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 313
    functionDepth: 3
    functionLinenumber: 313
    functionLinenumberEnd: 419
    functionName: TraverseBackground2D
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background2d.c
    functionUses: 0
    functionsReached:
    - Bindable_SetIsBound
    - b2d_get_status
    - b2D_new_status
    - DestroyBackground2D
    - gf_list_get
    - M_Background2D*::on_set_bind
    - GF_COL_ARGB_FIXED
    - gf_node_dirty_get
    - gf_list_find
    - gf_node_dirty_clear
    - FIX2INT
    - gf_sc_texture_play
    - gf_list_add
    - back_use_texture
    - gf_sc_invalidate
    - DrawBackground2D_3D
    - gf_node_get_private
    - DrawBackground2D_2D
    linkageType: ''
    returnType: void
    signature: void TraverseBackground2D(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:424,1
    - Dst: Bindable_OnSetBind
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:425,1
    - Dst: Background2DStack*::txh::compositor::video_out::Blit
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:428,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 422
    functionDepth: 2
    functionLinenumber: 422
    functionLinenumberEnd: 432
    functionName: b2D_set_bind
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background2d.c
    functionUses: 0
    functionsReached:
    - Background2DStack*::txh::compositor::video_out::Blit
    - Bindable_OnSetBind
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void b2D_set_bind(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:436,1
    - Dst: b2d_get_status
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:437,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - node
    - from_stack
    argTypes:
    - M_Background2D*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 434
    functionDepth: 2
    functionLinenumber: 434
    functionLinenumberEnd: 443
    functionName: b2d_get_context
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background2d.c
    functionUses: 0
    functionsReached:
    - b2d_get_status
    - gf_node_get_private
    linkageType: ''
    returnType: DrawableContext
    signature: DrawableContext *b2d_get_context(M_Background2D *node, GF_List *from_stack)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_update_frame
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:449,1
    - Dst: gf_mo_get_loop
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:459,1
    - Dst: gf_sc_texture_restart
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:460,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 9
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 461
      start: 447
    functionDepth: 1
    functionLinenumber: 447
    functionLinenumberEnd: 461
    functionName: UpdateBackgroundTexture
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background2d.c
    functionUses: 0
    functionsReached:
    - gf_sc_texture_restart
    - gf_sc_texture_update_frame
    - gf_mo_get_loop
    linkageType: ''
    returnType: void
    signature: void UpdateBackgroundTexture(GF_TextureHandler *txh)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:466,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:468,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:472,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:473,1
    - Dst: drawable_stack_new
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:475,1
    - Dst: gf_sc_texture_setup
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:480,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:485,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:486,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 463
    functionDepth: 2
    functionLinenumber: 463
    functionLinenumberEnd: 487
    functionName: compositor_init_background2d
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background2d.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - drawable_stack_new
    - gf_node_set_callback_function
    - gf_sc_texture_setup
    linkageType: ''
    returnType: void
    signature: void compositor_init_background2d(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:492,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:496,1
    - Dst: gf_sc_texture_check_url_change
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:500,1
    - Dst: gf_sc_texture_stop
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:501,1
    - Dst: gf_sc_texture_play
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:502,1
    - Dst: gf_sc_texture_play
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:507,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:508,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 509
      start: 489
    functionDepth: 2
    functionLinenumber: 489
    functionLinenumberEnd: 509
    functionName: compositor_background2d_modified
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background2d.c
    functionUses: 0
    functionsReached:
    - gf_sc_texture_stop
    - gf_sc_texture_check_url_change
    - gf_node_dirty_set
    - gf_sc_texture_play
    - gf_sc_invalidate
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void compositor_background2d_modified(GF_Node *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:514,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_background2d.c:518,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 512
    functionDepth: 2
    functionLinenumber: 512
    functionLinenumberEnd: 524
    functionName: compositor_background_transparent
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background2d.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_node_get_private
    linkageType: ''
    returnType: Bool
    signature: Bool compositor_background_transparent(GF_Node *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_register
      Src: /src/gpac/src/compositor/compositor_node_init.c:36,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor_node_init.c:38,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/compositor/compositor_node_init.c:38,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/compositor_node_init.c:41,1
    - Dst: compositor_init_bitwrapper
      Src: /src/gpac/src/compositor/compositor_node_init.c:42,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - compositor
    - node
    - url
    argTypes:
    - GF_Compositor*
    - GF_Node*
    - MFURL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 34
    functionDepth: 2
    functionLinenumber: 34
    functionLinenumberEnd: 45
    functionName: compositor_init_afx_node
    functionSourceFile: /src/gpac/src/compositor/compositor_node_init.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_mo_register
    - gf_node_get_class_name
    - GF_LOG
    - compositor_init_bitwrapper
    linkageType: ''
    returnType: void
    signature: void compositor_init_afx_node(GF_Compositor *compositor, GF_Node *node,
      MFURL *url)
  - BBCount: 164
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/compositor_node_init.c:49,1
    - Dst: compositor_init_animationstream
      Src: /src/gpac/src/compositor/compositor_node_init.c:52,1
    - Dst: compositor_init_audiobuffer
      Src: /src/gpac/src/compositor/compositor_node_init.c:55,1
    - Dst: compositor_init_audiosource
      Src: /src/gpac/src/compositor/compositor_node_init.c:58,1
    - Dst: compositor_init_audioclip
      Src: /src/gpac/src/compositor/compositor_node_init.c:64,1
    - Dst: compositor_init_timesensor
      Src: /src/gpac/src/compositor/compositor_node_init.c:70,1
    - Dst: compositor_init_imagetexture
      Src: /src/gpac/src/compositor/compositor_node_init.c:77,1
    - Dst: compositor_init_pixeltexture
      Src: /src/gpac/src/compositor/compositor_node_init.c:84,1
    - Dst: compositor_init_movietexture
      Src: /src/gpac/src/compositor/compositor_node_init.c:90,1
    - Dst: compositor_init_background2d
      Src: /src/gpac/src/compositor/compositor_node_init.c:94,1
    - Dst: compositor_init_bitmap
      Src: /src/gpac/src/compositor/compositor_node_init.c:97,1
    - Dst: compositor_init_colortransform
      Src: /src/gpac/src/compositor/compositor_node_init.c:100,1
    - Dst: compositor_init_circle
      Src: /src/gpac/src/compositor/compositor_node_init.c:103,1
    - Dst: compositor_init_curve2d
      Src: /src/gpac/src/compositor/compositor_node_init.c:106,1
    - Dst: compositor_init_curve2d
      Src: /src/gpac/src/compositor/compositor_node_init.c:109,1
    - Dst: compositor_init_ellipse
      Src: /src/gpac/src/compositor/compositor_node_init.c:112,1
    - Dst: compositor_init_orderedgroup
      Src: /src/gpac/src/compositor/compositor_node_init.c:115,1
    - Dst: compositor_init_pointset2d
      Src: /src/gpac/src/compositor/compositor_node_init.c:118,1
    - Dst: compositor_init_transform2d
      Src: /src/gpac/src/compositor/compositor_node_init.c:121,1
    - Dst: compositor_init_transformmatrix2d
      Src: /src/gpac/src/compositor/compositor_node_init.c:124,1
    - Dst: compositor_init_lineprops
      Src: /src/gpac/src/compositor/compositor_node_init.c:127,1
    - Dst: compositor_init_lineprops
      Src: /src/gpac/src/compositor/compositor_node_init.c:130,1
    - Dst: compositor_init_viewport
      Src: /src/gpac/src/compositor/compositor_node_init.c:133,1
    - Dst: compositor_init_indexed_line_set2d
      Src: /src/gpac/src/compositor/compositor_node_init.c:137,1
    - Dst: compositor_init_indexed_face_set2d
      Src: /src/gpac/src/compositor/compositor_node_init.c:140,1
    - Dst: compositor_init_sound2d
      Src: /src/gpac/src/compositor/compositor_node_init.c:144,1
    - Dst: compositor_init_linear_gradient
      Src: /src/gpac/src/compositor/compositor_node_init.c:148,1
    - Dst: compositor_init_radial_gradient
      Src: /src/gpac/src/compositor/compositor_node_init.c:151,1
    - Dst: compositor_init_compositetexture2d
      Src: /src/gpac/src/compositor/compositor_node_init.c:155,1
    - Dst: compositor_init_mattetexture
      Src: /src/gpac/src/compositor/compositor_node_init.c:158,1
    - Dst: compositor_init_form
      Src: /src/gpac/src/compositor/compositor_node_init.c:162,1
    - Dst: compositor_init_layer2d
      Src: /src/gpac/src/compositor/compositor_node_init.c:165,1
    - Dst: compositor_init_layout
      Src: /src/gpac/src/compositor/compositor_node_init.c:168,1
    - Dst: compositor_init_path_layout
      Src: /src/gpac/src/compositor/compositor_node_init.c:171,1
    - Dst: compositor_init_anchor
      Src: /src/gpac/src/compositor/compositor_node_init.c:180,1
    - Dst: compositor_init_disc_sensor
      Src: /src/gpac/src/compositor/compositor_node_init.c:183,1
    - Dst: compositor_init_plane_sensor2d
      Src: /src/gpac/src/compositor/compositor_node_init.c:186,1
    - Dst: compositor_init_proximity_sensor2d
      Src: /src/gpac/src/compositor/compositor_node_init.c:189,1
    - Dst: compositor_init_touch_sensor
      Src: /src/gpac/src/compositor/compositor_node_init.c:195,1
    - Dst: compositor_init_group
      Src: /src/gpac/src/compositor/compositor_node_init.c:202,1
    - Dst: compositor_init_rectangle
      Src: /src/gpac/src/compositor/compositor_node_init.c:208,1
    - Dst: compositor_init_shape
      Src: /src/gpac/src/compositor/compositor_node_init.c:214,1
    - Dst: compositor_init_switch
      Src: /src/gpac/src/compositor/compositor_node_init.c:220,1
    - Dst: compositor_init_text
      Src: /src/gpac/src/compositor/compositor_node_init.c:227,1
    - Dst: compositor_init_background
      Src: /src/gpac/src/compositor/compositor_node_init.c:235,1
    - Dst: compositor_init_cylinder_sensor
      Src: /src/gpac/src/compositor/compositor_node_init.c:241,1
    - Dst: compositor_init_plane_sensor
      Src: /src/gpac/src/compositor/compositor_node_init.c:247,1
    - Dst: compositor_init_proximity_sensor
      Src: /src/gpac/src/compositor/compositor_node_init.c:253,1
    - Dst: compositor_init_sphere_sensor
      Src: /src/gpac/src/compositor/compositor_node_init.c:259,1
    - Dst: compositor_init_visibility_sensor
      Src: /src/gpac/src/compositor/compositor_node_init.c:265,1
    - Dst: compositor_init_box
      Src: /src/gpac/src/compositor/compositor_node_init.c:271,1
    - Dst: compositor_init_cone
      Src: /src/gpac/src/compositor/compositor_node_init.c:277,1
    - Dst: compositor_init_cylinder
      Src: /src/gpac/src/compositor/compositor_node_init.c:283,1
    - Dst: compositor_init_elevation_grid
      Src: /src/gpac/src/compositor/compositor_node_init.c:289,1
    - Dst: compositor_init_extrusion
      Src: /src/gpac/src/compositor/compositor_node_init.c:295,1
    - Dst: compositor_init_ifs
      Src: /src/gpac/src/compositor/compositor_node_init.c:301,1
    - Dst: compositor_init_ils
      Src: /src/gpac/src/compositor/compositor_node_init.c:307,1
    - Dst: compositor_init_point_set
      Src: /src/gpac/src/compositor/compositor_node_init.c:313,1
    - Dst: compositor_init_sphere
      Src: /src/gpac/src/compositor/compositor_node_init.c:319,1
    - Dst: compositor_init_billboard
      Src: /src/gpac/src/compositor/compositor_node_init.c:325,1
    - Dst: compositor_init_collision
      Src: /src/gpac/src/compositor/compositor_node_init.c:331,1
    - Dst: compositor_init_lod
      Src: /src/gpac/src/compositor/compositor_node_init.c:337,1
    - Dst: compositor_init_transform
      Src: /src/gpac/src/compositor/compositor_node_init.c:343,1
    - Dst: compositor_init_sound
      Src: /src/gpac/src/compositor/compositor_node_init.c:349,1
    - Dst: compositor_init_viewpoint
      Src: /src/gpac/src/compositor/compositor_node_init.c:355,1
    - Dst: compositor_init_navigation_info
      Src: /src/gpac/src/compositor/compositor_node_init.c:361,1
    - Dst: compositor_init_fog
      Src: /src/gpac/src/compositor/compositor_node_init.c:367,1
    - Dst: compositor_init_directional_light
      Src: /src/gpac/src/compositor/compositor_node_init.c:373,1
    - Dst: compositor_init_point_light
      Src: /src/gpac/src/compositor/compositor_node_init.c:379,1
    - Dst: compositor_init_spot_light
      Src: /src/gpac/src/compositor/compositor_node_init.c:385,1
    - Dst: compositor_init_non_linear_deformer
      Src: /src/gpac/src/compositor/compositor_node_init.c:389,1
    - Dst: compositor_init_layer3d
      Src: /src/gpac/src/compositor/compositor_node_init.c:393,1
    - Dst: compositor_init_compositetexture3d
      Src: /src/gpac/src/compositor/compositor_node_init.c:396,1
    - Dst: compositor_init_envtest
      Src: /src/gpac/src/compositor/compositor_node_init.c:400,1
    - Dst: compositor_init_static_group
      Src: /src/gpac/src/compositor/compositor_node_init.c:408,1
    - Dst: compositor_init_disk2d
      Src: /src/gpac/src/compositor/compositor_node_init.c:411,1
    - Dst: compositor_init_arc2d
      Src: /src/gpac/src/compositor/compositor_node_init.c:415,1
    - Dst: compositor_init_polyline2d
      Src: /src/gpac/src/compositor/compositor_node_init.c:418,1
    - Dst: compositor_init_triangle_set2d
      Src: /src/gpac/src/compositor/compositor_node_init.c:421,1
    - Dst: compositor_init_polypoint2d
      Src: /src/gpac/src/compositor/compositor_node_init.c:426,1
    - Dst: compositor_init_lineset
      Src: /src/gpac/src/compositor/compositor_node_init.c:429,1
    - Dst: compositor_init_triangle_set
      Src: /src/gpac/src/compositor/compositor_node_init.c:432,1
    - Dst: compositor_init_triangle_strip_set
      Src: /src/gpac/src/compositor/compositor_node_init.c:435,1
    - Dst: compositor_init_triangle_fan_set
      Src: /src/gpac/src/compositor/compositor_node_init.c:438,1
    - Dst: compositor_init_indexed_triangle_fan_set
      Src: /src/gpac/src/compositor/compositor_node_init.c:441,1
    - Dst: compositor_init_indexed_triangle_strip_set
      Src: /src/gpac/src/compositor/compositor_node_init.c:444,1
    - Dst: compositor_init_indexed_triangle_set
      Src: /src/gpac/src/compositor/compositor_node_init.c:447,1
    - Dst: gf_sc_init_hardcoded_proto
      Src: /src/gpac/src/compositor/compositor_node_init.c:454,1
    - Dst: compositor_init_afx_node
      Src: /src/gpac/src/compositor/compositor_node_init.c:458,1
    - Dst: compositor_init_afx_node
      Src: /src/gpac/src/compositor/compositor_node_init.c:461,1
    - Dst: compositor_init_svg_svg
      Src: /src/gpac/src/compositor/compositor_node_init.c:469,1
    - Dst: compositor_init_svg_g
      Src: /src/gpac/src/compositor/compositor_node_init.c:472,1
    - Dst: compositor_init_svg_defs
      Src: /src/gpac/src/compositor/compositor_node_init.c:478,1
    - Dst: compositor_init_svg_switch
      Src: /src/gpac/src/compositor/compositor_node_init.c:483,1
    - Dst: compositor_init_svg_rect
      Src: /src/gpac/src/compositor/compositor_node_init.c:486,1
    - Dst: compositor_init_svg_path
      Src: /src/gpac/src/compositor/compositor_node_init.c:489,1
    - Dst: compositor_init_svg_circle
      Src: /src/gpac/src/compositor/compositor_node_init.c:492,1
    - Dst: compositor_init_svg_ellipse
      Src: /src/gpac/src/compositor/compositor_node_init.c:495,1
    - Dst: compositor_init_svg_line
      Src: /src/gpac/src/compositor/compositor_node_init.c:498,1
    - Dst: compositor_init_svg_polyline
      Src: /src/gpac/src/compositor/compositor_node_init.c:501,1
    - Dst: compositor_init_svg_polygon
      Src: /src/gpac/src/compositor/compositor_node_init.c:504,1
    - Dst: compositor_init_svg_a
      Src: /src/gpac/src/compositor/compositor_node_init.c:507,1
    - Dst: compositor_init_svg_clip_path
      Src: /src/gpac/src/compositor/compositor_node_init.c:510,1
    - Dst: compositor_init_svg_linearGradient
      Src: /src/gpac/src/compositor/compositor_node_init.c:514,1
    - Dst: compositor_init_svg_radialGradient
      Src: /src/gpac/src/compositor/compositor_node_init.c:517,1
    - Dst: compositor_init_svg_solidColor
      Src: /src/gpac/src/compositor/compositor_node_init.c:520,1
    - Dst: compositor_init_svg_stop
      Src: /src/gpac/src/compositor/compositor_node_init.c:523,1
    - Dst: compositor_init_svg_text
      Src: /src/gpac/src/compositor/compositor_node_init.c:527,1
    - Dst: compositor_init_svg_tspan
      Src: /src/gpac/src/compositor/compositor_node_init.c:530,1
    - Dst: compositor_init_svg_textarea
      Src: /src/gpac/src/compositor/compositor_node_init.c:533,1
    - Dst: compositor_init_svg_tbreak
      Src: /src/gpac/src/compositor/compositor_node_init.c:536,1
    - Dst: compositor_init_svg_image
      Src: /src/gpac/src/compositor/compositor_node_init.c:540,1
    - Dst: compositor_init_svg_video
      Src: /src/gpac/src/compositor/compositor_node_init.c:543,1
    - Dst: compositor_init_svg_audio
      Src: /src/gpac/src/compositor/compositor_node_init.c:546,1
    - Dst: compositor_init_svg_font
      Src: /src/gpac/src/compositor/compositor_node_init.c:551,1
    - Dst: compositor_init_svg_glyph
      Src: /src/gpac/src/compositor/compositor_node_init.c:555,1
    - Dst: compositor_init_svg_font_face_uri
      Src: /src/gpac/src/compositor/compositor_node_init.c:558,1
    - Dst: compositor_init_svg_use
      Src: /src/gpac/src/compositor/compositor_node_init.c:562,1
    - Dst: compositor_init_svg_animation
      Src: /src/gpac/src/compositor/compositor_node_init.c:565,1
    - Dst: compositor_init_svg_foreign_object
      Src: /src/gpac/src/compositor/compositor_node_init.c:568,1
    - Dst: compositor_init_svg_filter
      Src: /src/gpac/src/compositor/compositor_node_init.c:573,1
    - Dst: compositor_init_svg_updates
      Src: /src/gpac/src/compositor/compositor_node_init.c:578,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor_node_init.c:583,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/compositor/compositor_node_init.c:583,1
    CyclomaticComplexity: 123
    EdgeCount: 123
    ICount: 410
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 47
    functionDepth: 3
    functionLinenumber: 47
    functionLinenumberEnd: 586
    functionName: gf_sc_on_node_init
    functionSourceFile: /src/gpac/src/compositor/compositor_node_init.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - compositor_init_indexed_triangle_strip_set
    - compositor_init_disc_sensor
    - compositor_init_ellipse
    - compositor_init_svg_switch
    - compositor_init_shape
    - compositor_init_ifs
    - compositor_init_proximity_sensor2d
    - compositor_init_orderedgroup
    - compositor_init_indexed_triangle_set
    - compositor_init_svg_tspan
    - compositor_init_svg_image
    - compositor_init_spot_light
    - compositor_init_radial_gradient
    - compositor_init_arc2d
    - compositor_init_svg_svg
    - compositor_init_background2d
    - compositor_init_layer3d
    - compositor_init_svg_defs
    - compositor_init_triangle_set
    - compositor_init_svg_line
    - compositor_init_directional_light
    - compositor_init_svg_polygon
    - compositor_init_plane_sensor
    - compositor_init_layer2d
    - compositor_init_svg_filter
    - compositor_init_imagetexture
    - compositor_init_svg_polyline
    - compositor_init_audiosource
    - compositor_init_anchor
    - compositor_init_svg_rect
    - gf_node_get_class_name
    - compositor_init_timesensor
    - compositor_init_static_group
    - compositor_init_svg_updates
    - compositor_init_text
    - compositor_init_mattetexture
    - compositor_init_transform
    - compositor_init_circle
    - compositor_init_lineprops
    - compositor_init_pixeltexture
    - compositor_init_indexed_face_set2d
    - compositor_init_disk2d
    - compositor_init_extrusion
    - compositor_init_svg_path
    - compositor_init_visibility_sensor
    - compositor_init_indexed_triangle_fan_set
    - compositor_init_svg_font
    - compositor_init_svg_linearGradient
    - compositor_init_linear_gradient
    - compositor_init_elevation_grid
    - compositor_init_svg_audio
    - compositor_init_triangle_fan_set
    - compositor_init_plane_sensor2d
    - compositor_init_box
    - compositor_init_svg_animation
    - compositor_init_proximity_sensor
    - compositor_init_cylinder_sensor
    - gf_sc_init_hardcoded_proto
    - compositor_init_svg_tbreak
    - compositor_init_group
    - compositor_init_ils
    - compositor_init_cylinder
    - compositor_init_sound2d
    - compositor_init_lod
    - compositor_init_compositetexture3d
    - compositor_init_point_light
    - compositor_init_sphere_sensor
    - compositor_init_lineset
    - compositor_init_background
    - compositor_init_billboard
    - compositor_init_animationstream
    - compositor_init_svg_text
    - compositor_init_afx_node
    - compositor_init_compositetexture2d
    - compositor_init_sound
    - compositor_init_audiobuffer
    - compositor_init_svg_glyph
    - compositor_init_svg_radialGradient
    - compositor_init_svg_clip_path
    - compositor_init_svg_circle
    - compositor_init_touch_sensor
    - compositor_init_form
    - compositor_init_viewpoint
    - compositor_init_pointset2d
    - compositor_init_fog
    - compositor_init_layout
    - compositor_init_triangle_set2d
    - compositor_init_curve2d
    - compositor_init_svg_stop
    - compositor_init_viewport
    - compositor_init_transformmatrix2d
    - compositor_init_path_layout
    - compositor_init_movietexture
    - compositor_init_point_set
    - compositor_init_non_linear_deformer
    - compositor_init_rectangle
    - compositor_init_collision
    - compositor_init_svg_textarea
    - compositor_init_indexed_line_set2d
    - compositor_init_navigation_info
    - compositor_init_svg_video
    - compositor_init_svg_use
    - compositor_init_transform2d
    - compositor_init_svg_foreign_object
    - compositor_init_colortransform
    - compositor_init_svg_solidColor
    - compositor_init_svg_a
    - compositor_init_polypoint2d
    - compositor_init_switch
    - GF_LOG
    - compositor_init_svg_font_face_uri
    - compositor_init_audioclip
    - compositor_init_bitmap
    - compositor_init_svg_ellipse
    - compositor_init_svg_g
    - compositor_init_triangle_strip_set
    - compositor_init_polyline2d
    - compositor_init_cone
    - compositor_init_envtest
    - compositor_init_sphere
    linkageType: ''
    returnType: void
    signature: void gf_sc_on_node_init(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor_node_init.c:593,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/compositor_node_init.c:596,1
    - Dst: compositor_animationstream_modified
      Src: /src/gpac/src/compositor/compositor_node_init.c:599,1
    - Dst: compositor_audiobuffer_modified
      Src: /src/gpac/src/compositor/compositor_node_init.c:602,1
    - Dst: compositor_audiosource_modified
      Src: /src/gpac/src/compositor/compositor_node_init.c:605,1
    - Dst: compositor_audioclip_modified
      Src: /src/gpac/src/compositor/compositor_node_init.c:611,1
    - Dst: compositor_timesensor_modified
      Src: /src/gpac/src/compositor/compositor_node_init.c:617,1
    - Dst: compositor_imagetexture_modified
      Src: /src/gpac/src/compositor/compositor_node_init.c:624,1
    - Dst: compositor_movietexture_modified
      Src: /src/gpac/src/compositor/compositor_node_init.c:631,1
    - Dst: compositor_background2d_modified
      Src: /src/gpac/src/compositor/compositor_node_init.c:635,1
    - Dst: compositor_background_modified
      Src: /src/gpac/src/compositor/compositor_node_init.c:642,1
    - Dst: compositor_layout_modified
      Src: /src/gpac/src/compositor/compositor_node_init.c:646,1
    - Dst: compositor_envtest_modified
      Src: /src/gpac/src/compositor/compositor_node_init.c:649,1
    - Dst: compositor_svg_video_modified
      Src: /src/gpac/src/compositor/compositor_node_init.c:656,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/compositor_node_init.c:663,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor_node_init.c:664,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 53
    argCount: 2
    argNames:
    - compositor
    - byObj
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 588
    functionDepth: 4
    functionLinenumber: 588
    functionLinenumberEnd: 667
    functionName: gf_sc_invalidate
    functionSourceFile: /src/gpac/src/compositor/compositor_node_init.c
    functionUses: 5
    functionsReached:
    - gf_node_get_tag
    - compositor_background2d_modified
    - compositor_timesensor_modified
    - gf_node_dirty_set
    - compositor_layout_modified
    - compositor_imagetexture_modified
    - gf_sc_next_frame_state
    - compositor_movietexture_modified
    - compositor_audiosource_modified
    - compositor_svg_video_modified
    - compositor_audiobuffer_modified
    - compositor_envtest_modified
    - compositor_audioclip_modified
    - compositor_animationstream_modified
    - compositor_background_modified
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_invalidate(GF_Compositor *compositor, GF_Node *byObj)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/compositor/font_engine.c:55,1
    - Dst: gf_module_load
      Src: /src/gpac/src/compositor/font_engine.c:57,1
    - Dst: GF_FontReader*::init_font_engine
      Src: /src/gpac/src/compositor/font_engine.c:58,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/font_engine.c:61,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/font_engine.c:63,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/font_engine.c:68,1
    - Dst: gf_font_manager_set_font
      Src: /src/gpac/src/compositor/font_engine.c:69,1
    - Dst: gf_path_new
      Src: /src/gpac/src/compositor/font_engine.c:72,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/font_engine.c:73,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/font_engine.c:74,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/font_engine.c:75,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/font_engine.c:76,1
    - Dst: gf_path_close
      Src: /src/gpac/src/compositor/font_engine.c:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 83
    functionName: GF_FontManager *gf_font_manager_new()
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - GF_FontReader*::init_font_engine
    - GF_SAFEALLOC
    - gf_path_new
    - GF_LOG
    - gf_module_load
    - gf_path_add_line_to
    - gf_path_add_move_to
    - gf_font_manager_set_font
    - gf_opts_get_bool
    - gf_path_close
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FontManager *gf_font_manager_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/font_engine.c:88,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/font_engine.c:89,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/font_engine.c:90,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/font_engine.c:92,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/font_engine.c:96,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - font
    argTypes:
    - GF_Font*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 99
    functionName: gf_font_predestroy
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_node_dirty_set
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_font_predestroy(GF_Font *font)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_font_predestroy
      Src: /src/gpac/src/compositor/font_engine.c:103,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/font_engine.c:109,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/font_engine.c:110,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/font_engine.c:114,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/font_engine.c:115,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - font
    argTypes:
    - GF_Font*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 101
    functionDepth: 2
    functionLinenumber: 101
    functionLinenumberEnd: 116
    functionName: gf_font_del
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_font_predestroy
    - gf_path_del
    linkageType: ''
    returnType: void
    signature: void gf_font_del(GF_Font *font)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_FontManager*::reader::shutdown_font_engine
      Src: /src/gpac/src/compositor/font_engine.c:123,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/compositor/font_engine.c:124,1
    - Dst: gf_font_del
      Src: /src/gpac/src/compositor/font_engine.c:130,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/font_engine.c:133,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/font_engine.c:134,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/font_engine.c:135,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - fm
    argTypes:
    - GF_FontManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 119
    functionDepth: 3
    functionLinenumber: 119
    functionLinenumberEnd: 136
    functionName: gf_font_manager_del
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_FontManager*::reader::shutdown_font_engine
    - gf_modules_close_interface
    - gf_path_del
    - gf_font_del
    linkageType: ''
    returnType: void
    signature: void gf_font_manager_del(GF_FontManager *fm)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/font_engine.c:148,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - fm
    - font
    argTypes:
    - GF_FontManager*
    - GF_Font*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 150
    functionName: gf_font_manager_register_font
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_font_manager_register_font(GF_FontManager *fm, GF_Font *font)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_font_predestroy
      Src: /src/gpac/src/compositor/font_engine.c:168,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - fm
    - font
    argTypes:
    - GF_FontManager*
    - GF_Font*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 152
    functionDepth: 2
    functionLinenumber: 152
    functionLinenumberEnd: 170
    functionName: gf_font_manager_unregister_font
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - gf_font_predestroy
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_font_manager_unregister_font(GF_FontManager *fm, GF_Font
      *font)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/compositor/font_engine.c:192,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/font_engine.c:193,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/font_engine.c:197,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/font_engine.c:197,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/font_engine.c:198,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/font_engine.c:202,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/font_engine.c:202,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/font_engine.c:203,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/font_engine.c:209,1
    - Dst: GF_Font*::get_alias
      Src: /src/gpac/src/compositor/font_engine.c:211,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/font_engine.c:217,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/font_engine.c:217,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/font_engine.c:217,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/font_engine.c:257,1
    - Dst: GF_FontManager*::reader::set_font
      Src: /src/gpac/src/compositor/font_engine.c:278,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/font_engine.c:280,1
    - Dst: GF_FontManager*::reader::get_font_info
      Src: /src/gpac/src/compositor/font_engine.c:284,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/font_engine.c:286,1
    - Dst: GF_Font*::get_alias
      Src: /src/gpac/src/compositor/font_engine.c:307,1
    - Dst: GF_FontManager*::reader::set_font
      Src: /src/gpac/src/compositor/font_engine.c:317,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 116
    argCount: 5
    argNames:
    - fm
    - alt_fonts
    - nb_fonts
    - styles
    - check_only
    argTypes:
    - GF_FontManager*
    - char**
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 320
    functionName: gf_font_manager_set_font_ex
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - ABS
    - GF_SAFEALLOC
    - GF_FontManager*::reader::set_font
    - GF_Font*::get_alias
    - strncmp
    - GF_FontManager*::reader::get_font_info
    - gf_opts_get_key
    - stricmp
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_font_manager_set_font_ex(GF_FontManager *fm, char **alt_fonts,
      u32 nb_fonts, u32 styles, Bool check_only)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_font_manager_set_font_ex
      Src: /src/gpac/src/compositor/font_engine.c:323,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - fm
    - alt_fonts
    - nb_fonts
    - styles
    argTypes:
    - GF_FontManager*
    - char**
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 321
    functionDepth: 2
    functionLinenumber: 321
    functionLinenumberEnd: 324
    functionName: gf_font_manager_set_font
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 1
    functionsReached:
    - gf_font_manager_set_font_ex
    linkageType: ''
    returnType: GF_Font
    signature: GF_Font *gf_font_manager_set_font(GF_FontManager *fm, char **alt_fonts,
      u32 nb_fonts, u32 styles)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/font_engine.c:335,1
    - Dst: gf_path_new
      Src: /src/gpac/src/compositor/font_engine.c:341,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/font_engine.c:342,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:342,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/font_engine.c:343,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:343,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/font_engine.c:344,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:344,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/font_engine.c:345,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:345,1
    - Dst: gf_path_close
      Src: /src/gpac/src/compositor/font_engine.c:346,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/font_engine.c:349,1
    - Dst: GF_Font*::load_glyph
      Src: /src/gpac/src/compositor/font_engine.c:361,1
    - Dst: GF_FontManager*::reader::load_glyph
      Src: /src/gpac/src/compositor/font_engine.c:365,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:379,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:380,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:381,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 58
    argCount: 3
    argNames:
    - fm
    - font
    - name
    argTypes:
    - GF_FontManager*
    - GF_Font*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 326
    functionDepth: 1
    functionLinenumber: 326
    functionLinenumberEnd: 384
    functionName: gf_font_get_glyph
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - GF_Font*::load_glyph
    - INT2FIX
    - GF_FontManager*::reader::load_glyph
    - GF_SAFEALLOC
    - gf_path_new
    - gf_path_add_move_to
    - gf_path_add_line_to
    - gf_path_close
    linkageType: ''
    returnType: GF_Glyph
    signature: GF_Glyph *gf_font_get_glyph(GF_FontManager *fm, GF_Font *font, u32
      name)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/compositor/font_engine.c:394,1
    - Dst: get_glyphs
      Src: /src/gpac/src/compositor/font_engine.c:398,1
    - Dst: reader::get_glyphs
      Src: /src/gpac/src/compositor/font_engine.c:400,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/font_engine.c:404,1
    - Dst: get_glyphs
      Src: /src/gpac/src/compositor/font_engine.c:408,1
    - Dst: reader::get_glyphs
      Src: /src/gpac/src/compositor/font_engine.c:410,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/font_engine.c:414,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/font_engine.c:426,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/font_engine.c:428,1
    - Dst: memset
      Src: /src/gpac/src/compositor/font_engine.c:429,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/font_engine.c:432,1
    - Dst: memset
      Src: /src/gpac/src/compositor/font_engine.c:433,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/font_engine.c:436,1
    - Dst: memset
      Src: /src/gpac/src/compositor/font_engine.c:437,1
    - Dst: gf_font_get_glyph
      Src: /src/gpac/src/compositor/font_engine.c:441,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/font_engine.c:445,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 55
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 386
    functionDepth: 2
    functionLinenumber: 386
    functionLinenumberEnd: 448
    functionName: GF_TextSpan *gf_font_manager_create_span(GF_FontManager *fm, GF_Font
      *font, char *text, Fixed font_size, Bool needs_x_offset, Bool needs_y_offset,
      Bool needs_rotate, const char *xml_lang, Bool fliped_text, u32 styles, GF_Node
      *user)
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - GF_SAFEALLOC
    - get_glyphs
    - memset
    - reader::get_glyphs
    - gf_list_add
    - gf_font_get_glyph
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_TextSpan *gf_font_manager_create_span(GF_FontManager *fm,
      GF_Font *font, char *text, Fixed font_size, Bool needs_x_offset, Bool needs_y_offset,
      Bool needs_rotate, const char *xml_lang, Bool fliped_text, u32 styles, GF_Node
      *user)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/font_engine.c:477,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/font_engine.c:479,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/font_engine.c:480,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/font_engine.c:481,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/font_engine.c:482,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/font_engine.c:486,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/font_engine.c:488,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/font_engine.c:489,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/font_engine.c:490,1
    - Dst: gf_sc_texture_destroy
      Src: /src/gpac/src/compositor/font_engine.c:493,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/font_engine.c:494,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/font_engine.c:495,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/font_engine.c:497,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/font_engine.c:501,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 28
    argCount: 2
    argNames:
    - fm
    - span
    argTypes:
    - GF_FontManager*
    - GF_TextSpan*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 475
    functionDepth: 1
    functionLinenumber: 475
    functionLinenumberEnd: 502
    functionName: gf_font_manager_delete_span
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sc_texture_destroy
    - mesh_free
    - gf_path_del
    - gf_list_del_item
    linkageType: ''
    returnType: void
    signature: void gf_font_manager_delete_span(GF_FontManager *fm, GF_TextSpan *span)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/font_engine.c:534,1
    - Dst: gf_rect_center
      Src: /src/gpac/src/compositor/font_engine.c:536,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/font_engine.c:571,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/compositor/font_engine.c:572,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/font_engine.c:573,1
    - Dst: gf_rect_union
      Src: /src/gpac/src/compositor/font_engine.c:575,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 52
    argCount: 1
    argNames:
    - span
    argTypes:
    - GF_TextSpan*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 504
    functionDepth: 1
    functionLinenumber: 504
    functionLinenumberEnd: 577
    functionName: gf_font_manager_refresh_span_bounds
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_apply_rect
    - gf_rect_center
    - gf_rect_union
    - gf_mulfix
    - gf_mx2d_init
    - gf_mx2d_add_rotation
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_font_manager_refresh_span_bounds(GF_TextSpan *span)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_new
      Src: /src/gpac/src/compositor/font_engine.c:587,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/font_engine.c:589,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/font_engine.c:590,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/font_engine.c:591,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/font_engine.c:592,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/font_engine.c:594,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/font_engine.c:595,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:600,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:602,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/font_engine.c:605,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/font_engine.c:606,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/font_engine.c:611,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/compositor/font_engine.c:613,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/font_engine.c:616,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/font_engine.c:618,1
    - Dst: gf_path_add_subpath
      Src: /src/gpac/src/compositor/font_engine.c:619,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:623,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:625,1
    - Dst: gf_mx2d_apply_point
      Src: /src/gpac/src/compositor/font_engine.c:631,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 42
    argCount: 1
    argNames:
    - span
    argTypes:
    - GF_TextSpan*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 582
    functionDepth: 1
    functionLinenumber: 582
    functionLinenumberEnd: 634
    functionName: gf_font_span_create_path
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_add_translation
    - INT2FIX
    - gf_path_add_subpath
    - gf_path_new
    - gf_mx2d_add_rotation
    - gf_divfix
    - gf_mx2d_add_scale
    - gf_mx2d_apply_point
    - gf_mx2d_init
    - gf_mulfix
    linkageType: ''
    returnType: GF_Path
    signature: GF_Path *gf_font_span_create_path(GF_TextSpan *span)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/font_engine.c:641,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - span
    argTypes:
    - GF_TextSpan*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 638
    functionDepth: 1
    functionLinenumber: 638
    functionLinenumberEnd: 642
    functionName: span_alloc_extensions
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void span_alloc_extensions(GF_TextSpan *span)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: span_alloc_extensions
      Src: /src/gpac/src/compositor/font_engine.c:647,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/font_engine.c:648,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/font_engine.c:649,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/font_engine.c:650,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/font_engine.c:651,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/font_engine.c:652,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/font_engine.c:653,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/font_engine.c:654,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/font_engine.c:657,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - span
    argTypes:
    - GF_TextSpan*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 645
    functionDepth: 2
    functionLinenumber: 645
    functionLinenumberEnd: 658
    functionName: span_build_mesh
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - mesh_set_vertex
    - span_alloc_extensions
    - mesh_set_triangle
    - new_mesh
    - mesh_update_bounds
    linkageType: ''
    returnType: void
    signature: void span_build_mesh(GF_TextSpan *span)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: span_alloc_extensions
      Src: /src/gpac/src/compositor/font_engine.c:677,1
    - Dst: span_build_mesh
      Src: /src/gpac/src/compositor/font_engine.c:686,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:696,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:697,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/font_engine.c:700,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/font_engine.c:702,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/font_engine.c:702,1
    - Dst: MIN
      Src: /src/gpac/src/compositor/font_engine.c:703,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/font_engine.c:703,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/font_engine.c:703,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/font_engine.c:705,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/font_engine.c:705,1
    - Dst: MAX
      Src: /src/gpac/src/compositor/font_engine.c:706,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/font_engine.c:706,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/font_engine.c:706,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/font_engine.c:711,1
    - Dst: gf_ceil
      Src: /src/gpac/src/compositor/font_engine.c:711,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/font_engine.c:711,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/font_engine.c:717,1
    - Dst: gf_ceil
      Src: /src/gpac/src/compositor/font_engine.c:717,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/font_engine.c:717,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/font_engine.c:724,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:724,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/font_engine.c:725,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:725,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/font_engine.c:729,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/font_engine.c:732,1
    - Dst: gf_sc_texture_destroy
      Src: /src/gpac/src/compositor/font_engine.c:737,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/font_engine.c:738,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/font_engine.c:739,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/font_engine.c:741,1
    - Dst: gf_sc_texture_setup
      Src: /src/gpac/src/compositor/font_engine.c:743,1
    - Dst: gf_sc_texture_allocate
      Src: /src/gpac/src/compositor/font_engine.c:744,1
    - Dst: gf_sc_texture_get_stencil
      Src: /src/gpac/src/compositor/font_engine.c:745,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/compositor/font_engine.c:746,1
    - Dst: gf_evg_surface_new
      Src: /src/gpac/src/compositor/font_engine.c:756,1
    - Dst: gf_sc_texture_release
      Src: /src/gpac/src/compositor/font_engine.c:758,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/font_engine.c:761,1
    - Dst: memset
      Src: /src/gpac/src/compositor/font_engine.c:762,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/compositor/font_engine.c:764,1
    - Dst: gf_evg_surface_attach_to_texture
      Src: /src/gpac/src/compositor/font_engine.c:765,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/compositor/font_engine.c:767,1
    - Dst: gf_evg_stencil_set_brush_color
      Src: /src/gpac/src/compositor/font_engine.c:768,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/font_engine.c:773,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/font_engine.c:774,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/font_engine.c:775,1
    - Dst: gf_evg_surface_set_matrix
      Src: /src/gpac/src/compositor/font_engine.c:778,1
    - Dst: gf_evg_surface_set_raster_level
      Src: /src/gpac/src/compositor/font_engine.c:779,1
    - Dst: gf_font_span_create_path
      Src: /src/gpac/src/compositor/font_engine.c:780,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/font_engine.c:781,1
    - Dst: gf_evg_surface_fill
      Src: /src/gpac/src/compositor/font_engine.c:783,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/font_engine.c:784,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/compositor/font_engine.c:785,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/font_engine.c:786,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/font_engine.c:789,1
    - Dst: gf_path_new
      Src: /src/gpac/src/compositor/font_engine.c:793,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/font_engine.c:794,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/font_engine.c:795,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/font_engine.c:796,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/font_engine.c:797,1
    - Dst: gf_path_close
      Src: /src/gpac/src/compositor/font_engine.c:798,1
    - Dst: gf_sc_texture_set_stencil
      Src: /src/gpac/src/compositor/font_engine.c:800,1
    - Dst: gf_sc_texture_set_data
      Src: /src/gpac/src/compositor/font_engine.c:801,1
    - Dst: gf_sc_texture_set_blend_mode
      Src: /src/gpac/src/compositor/font_engine.c:804,1
    - Dst: span_build_mesh
      Src: /src/gpac/src/compositor/font_engine.c:805,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 111
    argCount: 4
    argNames:
    - compositor
    - span
    - for_3d
    - tr_state
    argTypes:
    - GF_Compositor*
    - GF_TextSpan*
    - Bool
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 808
      start: 666
    functionDepth: 8
    functionLinenumber: 666
    functionLinenumberEnd: 808
    functionName: span_setup_texture
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_evg_stencil_delete
    - GF_SAFEALLOC
    - gf_evg_stencil_new
    - span_alloc_extensions
    - gf_mx2d_add_scale
    - gf_path_add_move_to
    - memset
    - MAX
    - gf_path_close
    - gf_sc_texture_release
    - gf_path_del
    - gf_ceil
    - gf_font_span_create_path
    - gf_sc_texture_allocate
    - gf_evg_surface_set_path
    - gf_sc_texture_get_stencil
    - gf_evg_stencil_set_texture
    - gf_sc_texture_set_blend_mode
    - gf_mulfix
    - gf_evg_surface_set_raster_level
    - gf_sc_texture_destroy
    - gf_sc_texture_set_stencil
    - gf_path_new
    - gf_divfix
    - gf_evg_surface_fill
    - MIN
    - gf_evg_surface_delete
    - gf_evg_surface_attach_to_texture
    - gf_sc_texture_setup
    - gf_evg_stencil_set_brush_color
    - gf_malloc
    - gf_sc_texture_set_data
    - gf_mx2d_add_translation
    - INT2FIX
    - mesh_free
    - gf_path_add_line_to
    - gf_evg_surface_set_matrix
    - FIX2INT
    - gf_mx2d_init
    - gf_evg_surface_new
    - span_build_mesh
    linkageType: ''
    returnType: Bool
    signature: Bool span_setup_texture(GF_Compositor *compositor, GF_TextSpan *span,
      Bool for_3d, GF_TraverseState *tr_state)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: span_alloc_extensions
      Src: /src/gpac/src/compositor/font_engine.c:815,1
    - Dst: gf_font_span_create_path
      Src: /src/gpac/src/compositor/font_engine.c:817,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/font_engine.c:818,1
    - Dst: mesh_from_path
      Src: /src/gpac/src/compositor/font_engine.c:819,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/font_engine.c:820,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/font_engine.c:823,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - span
    - tr_state
    argTypes:
    - GF_TextSpan*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 824
      start: 813
    functionDepth: 2
    functionLinenumber: 813
    functionLinenumberEnd: 824
    functionName: span_fill_3d
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - mesh_from_path
    - span_alloc_extensions
    - gf_path_del
    - gf_font_span_create_path
    - visual_3d_mesh_paint
    - new_mesh
    linkageType: ''
    returnType: void
    signature: void span_fill_3d(GF_TextSpan *span, GF_TraverseState *tr_state)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: span_alloc_extensions
      Src: /src/gpac/src/compositor/font_engine.c:828,1
    - Dst: gf_font_span_create_path
      Src: /src/gpac/src/compositor/font_engine.c:830,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/font_engine.c:831,1
    - Dst: gf_path_get_outline
      Src: /src/gpac/src/compositor/font_engine.c:834,1
    - Dst: gf_mesh_tesselate_path
      Src: /src/gpac/src/compositor/font_engine.c:835,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/font_engine.c:836,1
    - Dst: mesh_get_outline
      Src: /src/gpac/src/compositor/font_engine.c:838,1
    - Dst: mesh_get_outline
      Src: /src/gpac/src/compositor/font_engine.c:842,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/font_engine.c:844,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/font_engine.c:847,1
    - Dst: visual_3d_mesh_strike
      Src: /src/gpac/src/compositor/font_engine.c:849,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 4
    argNames:
    - span
    - tr_state
    - asp
    - vect_outline
    argTypes:
    - GF_TextSpan*
    - GF_TraverseState*
    - DrawAspect2D*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 851
      start: 826
    functionDepth: 2
    functionLinenumber: 826
    functionLinenumberEnd: 851
    functionName: span_strike_3d
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - span_alloc_extensions
    - gf_path_del
    - gf_font_span_create_path
    - visual_3d_mesh_paint
    - new_mesh
    - mesh_get_outline
    - visual_3d_mesh_strike
    - gf_path_get_outline
    - gf_mesh_tesselate_path
    linkageType: ''
    returnType: void
    signature: void span_strike_3d(GF_TextSpan *span, GF_TraverseState *tr_state,
      DrawAspect2D *asp, Bool vect_outline)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: visual_3d_set_state
      Src: /src/gpac/src/compositor/font_engine.c:864,1
    - Dst: visual_3d_setup_appearance
      Src: /src/gpac/src/compositor/font_engine.c:868,1
    - Dst: memset
      Src: /src/gpac/src/compositor/font_engine.c:872,1
    - Dst: gf_sg_sfcolor_to_rgba
      Src: /src/gpac/src/compositor/font_engine.c:885,1
    - Dst: visual_3d_setup_appearance
      Src: /src/gpac/src/compositor/font_engine.c:892,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:902,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/compositor/font_engine.c:902,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:903,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/compositor/font_engine.c:903,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:904,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/compositor/font_engine.c:904,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/font_engine.c:905,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/compositor/font_engine.c:906,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/compositor/font_engine.c:907,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/compositor/font_engine.c:908,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/compositor/font_engine.c:909,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/font_engine.c:909,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:913,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/compositor/font_engine.c:913,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:914,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/compositor/font_engine.c:914,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:915,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/compositor/font_engine.c:915,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:916,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/font_engine.c:916,1
    - Dst: visual_3d_setup_texture
      Src: /src/gpac/src/compositor/font_engine.c:922,1
    - Dst: visual_3d_enable_antialias
      Src: /src/gpac/src/compositor/font_engine.c:935,1
    - Dst: visual_3d_set_material_2d_argb
      Src: /src/gpac/src/compositor/font_engine.c:937,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/font_engine.c:940,1
    - Dst: visual_3d_fill_rect
      Src: /src/gpac/src/compositor/font_engine.c:942,1
    - Dst: visual_3d_set_material_2d_argb
      Src: /src/gpac/src/compositor/font_engine.c:946,1
    - Dst: visual_3d_setup_appearance
      Src: /src/gpac/src/compositor/font_engine.c:948,1
    - Dst: span_setup_texture
      Src: /src/gpac/src/compositor/font_engine.c:951,1
    - Dst: gf_sc_texture_enable
      Src: /src/gpac/src/compositor/font_engine.c:952,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/font_engine.c:955,1
    - Dst: gf_sc_texture_disable
      Src: /src/gpac/src/compositor/font_engine.c:956,1
    - Dst: span_fill_3d
      Src: /src/gpac/src/compositor/font_engine.c:961,1
    - Dst: visual_3d_disable_texture
      Src: /src/gpac/src/compositor/font_engine.c:969,1
    - Dst: visual_3d_set_state
      Src: /src/gpac/src/compositor/font_engine.c:971,1
    - Dst: drawable_compute_line_scale
      Src: /src/gpac/src/compositor/font_engine.c:975,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/font_engine.c:977,1
    - Dst: visual_3d_set_2d_strike
      Src: /src/gpac/src/compositor/font_engine.c:978,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/font_engine.c:981,1
    - Dst: span_strike_3d
      Src: /src/gpac/src/compositor/font_engine.c:982,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/font_engine.c:985,1
    - Dst: span_strike_3d
      Src: /src/gpac/src/compositor/font_engine.c:986,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 106
    argCount: 5
    argNames:
    - spans
    - tr_state
    - asp
    - text_hl
    - force_texturing
    argTypes:
    - GF_List*
    - GF_TraverseState*
    - DrawAspect2D*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 990
      start: 854
    functionDepth: 9
    functionLinenumber: 854
    functionLinenumberEnd: 990
    functionName: gf_font_spans_draw_3d
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - visual_3d_mesh_paint
    - memset
    - drawable_compute_line_scale
    - visual_3d_setup_appearance
    - visual_3d_enable_antialias
    - GF_COL_G
    - gf_list_get
    - GF_COL_A
    - visual_3d_set_state
    - gf_sg_sfcolor_to_rgba
    - visual_3d_set_material_2d_argb
    - span_setup_texture
    - visual_3d_setup_texture
    - GF_COL_B
    - visual_3d_fill_rect
    - gf_sc_texture_enable
    - gf_sc_texture_disable
    - gf_divfix
    - GF_COL_ARGB
    - GF_COL_R
    - gf_list_enum
    - span_fill_3d
    - visual_3d_set_2d_strike
    - INT2FIX
    - visual_3d_disable_texture
    - span_strike_3d
    linkageType: ''
    returnType: void
    signature: void gf_font_spans_draw_3d(GF_List *spans, GF_TraverseState *tr_state,
      DrawAspect2D *asp, u32 text_hl, Bool force_texturing)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/font_engine.c:1003,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/font_engine.c:1008,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/font_engine.c:1009,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/font_engine.c:1015,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/compositor/font_engine.c:1041,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/compositor/font_engine.c:1044,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/compositor/font_engine.c:1054,1
    - Dst: gf_mx2d_inverse
      Src: /src/gpac/src/compositor/font_engine.c:1056,1
    - Dst: visual_2d_texture_path_extended
      Src: /src/gpac/src/compositor/font_engine.c:1058,1
    - Dst: visual_2d_draw_path_extended
      Src: /src/gpac/src/compositor/font_engine.c:1059,1
    - Dst: visual_2d_draw_path
      Src: /src/gpac/src/compositor/font_engine.c:1061,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/font_engine.c:1071,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 63
    argCount: 4
    argNames:
    - tr_state
    - span
    - ctx
    - bounds
    argTypes:
    - GF_TraverseState*
    - GF_TextSpan*
    - DrawableContext*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1073
      start: 995
    functionDepth: 1
    functionLinenumber: 995
    functionLinenumberEnd: 1073
    functionName: gf_font_span_draw_2d
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_add_matrix
    - visual_2d_draw_path
    - visual_2d_draw_path_extended
    - gf_divfix
    - visual_2d_texture_path_extended
    - gf_mx2d_inverse
    - gf_mulfix
    - gf_mx2d_copy
    - gf_mx2d_add_rotation
    linkageType: ''
    returnType: void
    signature: void gf_font_span_draw_2d(GF_TraverseState *tr_state, GF_TextSpan *span,
      DrawableContext *ctx, GF_Rect *bounds)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/font_engine.c:1082,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/font_engine.c:1083,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/font_engine.c:1093,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/font_engine.c:1094,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/font_engine.c:1095,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/compositor/font_engine.c:1096,1
    - Dst: visual_2d_draw_path
      Src: /src/gpac/src/compositor/font_engine.c:1104,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/font_engine.c:1107,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 4
    argNames:
    - tr_state
    - span
    - ctx
    - is_strikeout
    argTypes:
    - GF_TraverseState*
    - GF_TextSpan*
    - DrawableContext*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1109
      start: 1075
    functionDepth: 1
    functionLinenumber: 1075
    functionLinenumberEnd: 1109
    functionName: gf_font_underline_span
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_add_translation
    - visual_2d_draw_path
    - gf_mx2d_add_scale
    - gf_mx2d_init
    - gf_mx2d_pre_multiply
    - gf_mx2d_copy
    - gf_mulfix
    linkageType: ''
    returnType: void
    signature: void gf_font_underline_span(GF_TraverseState *tr_state, GF_TextSpan
      *span, DrawableContext *ctx, Bool is_strikeout)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/font_engine.c:1115,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/compositor/font_engine.c:1116,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/compositor/font_engine.c:1117,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/compositor/font_engine.c:1118,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/compositor/font_engine.c:1119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - col
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1120
      start: 1112
    functionDepth: 1
    functionLinenumber: 1112
    functionLinenumberEnd: 1120
    functionName: col_reverse_video
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_COL_A
    - GF_COL_ARGB
    - GF_COL_R
    linkageType: ''
    returnType: u32
    signature: u32 col_reverse_video(u32 col)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/font_engine.c:1132,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/font_engine.c:1137,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 1
    argNames:
    - tr_state
    argTypes:
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1155
      start: 1123
    functionDepth: 1
    functionLinenumber: 1123
    functionLinenumberEnd: 1155
    functionName: font_get_sel_rect
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - gf_mx_apply_vec
    linkageType: ''
    returnType: GF_Rect
    signature: GF_Rect font_get_sel_rect(GF_TraverseState *tr_state)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/font_engine.c:1170,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/font_engine.c:1171,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/font_engine.c:1172,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/font_engine.c:1173,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/font_engine.c:1183,1
    - Dst: font_get_sel_rect
      Src: /src/gpac/src/compositor/font_engine.c:1188,1
    - Dst: gf_rect_overlaps
      Src: /src/gpac/src/compositor/font_engine.c:1222,1
    - Dst: gf_rect_overlaps
      Src: /src/gpac/src/compositor/font_engine.c:1245,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/font_engine.c:1257,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/compositor/font_engine.c:1258,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/compositor/font_engine.c:1259,1
    - Dst: visual_2d_fill_rect
      Src: /src/gpac/src/compositor/font_engine.c:1261,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/font_engine.c:1268,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/font_engine.c:1277,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 100
    argCount: 6
    argNames:
    - span
    - tr_state
    - ctx
    - has_more_spans
    - first_span
    - rc
    argTypes:
    - GF_TextSpan*
    - GF_TraverseState*
    - DrawableContext*
    - Bool
    - Bool
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1284
      start: 1157
    functionDepth: 2
    functionLinenumber: 1157
    functionLinenumberEnd: 1284
    functionName: gf_font_spans_select
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_add_matrix
    - gf_mx2d_add_rotation
    - gf_mx2d_init
    - visual_2d_fill_rect
    - font_get_sel_rect
    - gf_mulfix
    - gf_mx2d_copy
    - gf_rect_overlaps
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void gf_font_spans_select(GF_TextSpan *span, GF_TraverseState *tr_state,
      DrawableContext *ctx, Bool has_more_spans, Bool first_span, GF_Rect *rc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/font_engine.c:1290,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/font_engine.c:1292,1
    - Dst: gf_font_spans_select
      Src: /src/gpac/src/compositor/font_engine.c:1293,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - node
    - spans
    - tr_state
    argTypes:
    - GF_Node*
    - GF_List*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1295
      start: 1286
    functionDepth: 3
    functionLinenumber: 1286
    functionLinenumberEnd: 1295
    functionName: gf_font_spans_get_selection
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_font_spans_select
    linkageType: ''
    returnType: void
    signature: void gf_font_spans_get_selection(GF_Node *node, GF_List *spans, GF_TraverseState
      *tr_state)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/font_engine.c:1322,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/compositor/font_engine.c:1324,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/compositor/font_engine.c:1325,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/compositor/font_engine.c:1326,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/compositor/font_engine.c:1327,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/font_engine.c:1331,1
    - Dst: memset
      Src: /src/gpac/src/compositor/font_engine.c:1334,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/font_engine.c:1335,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/font_engine.c:1338,1
    - Dst: gf_font_spans_select
      Src: /src/gpac/src/compositor/font_engine.c:1340,1
    - Dst: visual_2d_fill_rect
      Src: /src/gpac/src/compositor/font_engine.c:1342,1
    - Dst: span_setup_texture
      Src: /src/gpac/src/compositor/font_engine.c:1344,1
    - Dst: visual_2d_texture_path_text
      Src: /src/gpac/src/compositor/font_engine.c:1345,1
    - Dst: gf_font_span_draw_2d
      Src: /src/gpac/src/compositor/font_engine.c:1347,1
    - Dst: gf_font_underline_span
      Src: /src/gpac/src/compositor/font_engine.c:1349,1
    - Dst: gf_font_underline_span
      Src: /src/gpac/src/compositor/font_engine.c:1350,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 44
    argCount: 5
    argNames:
    - spans
    - tr_state
    - hl_color
    - force_texture_text
    - bounds
    argTypes:
    - GF_List*
    - GF_TraverseState*
    - u32
    - Bool
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1354
      start: 1298
    functionDepth: 9
    functionLinenumber: 1298
    functionLinenumberEnd: 1354
    functionName: gf_font_spans_draw_2d
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - gf_list_get
    - GF_COL_B
    - gf_font_underline_span
    - gf_font_spans_select
    - GF_COL_A
    - gf_font_span_draw_2d
    - GF_COL_ARGB
    - gf_list_count
    - GF_COL_R
    - memset
    - visual_2d_fill_rect
    - span_setup_texture
    - visual_2d_texture_path_text
    linkageType: ''
    returnType: void
    signature: void gf_font_spans_draw_2d(GF_List *spans, GF_TraverseState *tr_state,
      u32 hl_color, Bool force_texture_text, GF_Rect *bounds)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/font_engine.c:1375,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/font_engine.c:1383,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/compositor/font_engine.c:1384,1
    - Dst: gf_mx_apply_ray
      Src: /src/gpac/src/compositor/font_engine.c:1385,1
    - Dst: compositor_get_2d_plane_intersection
      Src: /src/gpac/src/compositor/font_engine.c:1387,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/font_engine.c:1394,1
    - Dst: gf_mx2d_inverse
      Src: /src/gpac/src/compositor/font_engine.c:1395,1
    - Dst: gf_mx2d_apply_coords
      Src: /src/gpac/src/compositor/font_engine.c:1398,1
    - Dst: memset
      Src: /src/gpac/src/compositor/font_engine.c:1402,1
    - Dst: drawable_get_aspect_2d_svg
      Src: /src/gpac/src/compositor/font_engine.c:1403,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/font_engine.c:1409,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/font_engine.c:1439,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/font_engine.c:1440,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/font_engine.c:1443,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/font_engine.c:1444,1
    - Dst: svg_drawable_is_over
      Src: /src/gpac/src/compositor/font_engine.c:1447,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/font_engine.c:1472,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/font_engine.c:1473,1
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/compositor/font_engine.c:1477,1
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/compositor/font_engine.c:1478,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/font_engine.c:1487,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/font_engine.c:1488,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/font_engine.c:1500,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/font_engine.c:1501,1
    - Dst: compositor_is_composite_texture
      Src: /src/gpac/src/compositor/font_engine.c:1504,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/font_engine.c:1512,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/font_engine.c:1513,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/font_engine.c:1515,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/font_engine.c:1515,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 120
    argCount: 6
    argNames:
    - node
    - spans
    - tr_state
    - node_bounds
    - use_dom_events
    - drawable
    argTypes:
    - GF_Node*
    - GF_List*
    - GF_TraverseState*
    - GF_Rect*
    - Bool
    - Drawable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1517
      start: 1356
    functionDepth: 1
    functionLinenumber: 1356
    functionLinenumberEnd: 1517
    functionName: gf_font_spans_pick
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - compositor_get_2d_plane_intersection
    - memset
    - gf_mx_copy
    - gf_mx_apply_ray
    - drawable_get_aspect_2d_svg
    - gf_list_get
    - gf_list_add
    - gf_list_reset
    - gf_mx_from_mx2d
    - gf_divfix
    - gf_mx2d_apply_coords
    - svg_drawable_is_over
    - gf_mx2d_copy
    - INT2FIX
    - gf_node_dirty_set
    - gf_sc_next_frame_state
    - gf_mx2d_inverse
    - compositor_is_composite_texture
    - gf_mx_inverse
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void gf_font_spans_pick(GF_Node *node, GF_List *spans, GF_TraverseState
      *tr_state, GF_Rect *node_bounds, Bool use_dom_events, Drawable *drawable)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 11
    argNames:
    - fm
    - font
    - text
    - font_size
    - needs_x_offset
    - needs_y_offset
    - needs_rotate
    - xml_lang
    - fliped_text
    - styles
    - user
    argTypes:
    - GF_FontManager*
    - GF_Font*
    - char*
    - Fixed
    - Bool
    - Bool
    - Bool
    - char*
    - Bool
    - u32
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1525
      start: 1522
    functionDepth: 0
    functionLinenumber: 1522
    functionLinenumberEnd: 1525
    functionName: gf_font_manager_create_span
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_TextSpan
    signature: GF_TextSpan *gf_font_manager_create_span(GF_FontManager *fm, GF_Font
      *font, char *text, Fixed font_size, Bool needs_x_offset, Bool needs_y_offset,
      Bool needs_rotate, const char *xml_lang, Bool fliped_text, u32 styles, GF_Node
      *user)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - fm
    - span
    argTypes:
    - GF_FontManager*
    - GF_TextSpan*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1528
      start: 1526
    functionDepth: 0
    functionLinenumber: 1526
    functionLinenumberEnd: 1528
    functionName: gf_font_manager_delete_span
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_font_manager_delete_span(GF_FontManager *fm, GF_TextSpan *span)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - span
    argTypes:
    - GF_TextSpan*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1531
      start: 1529
    functionDepth: 0
    functionLinenumber: 1529
    functionLinenumberEnd: 1531
    functionName: gf_font_manager_refresh_span_bounds
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_font_manager_refresh_span_bounds(GF_TextSpan *span)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - fm
    - font
    argTypes:
    - GF_FontManager*
    - GF_Font*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1535
      start: 1532
    functionDepth: 0
    functionLinenumber: 1532
    functionLinenumberEnd: 1535
    functionName: gf_font_manager_register_font
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_font_manager_register_font(GF_FontManager *fm, GF_Font *font)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - fm
    - font
    argTypes:
    - GF_FontManager*
    - GF_Font*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1539
      start: 1536
    functionDepth: 0
    functionLinenumber: 1536
    functionLinenumberEnd: 1539
    functionName: gf_font_manager_unregister_font
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_font_manager_unregister_font(GF_FontManager *fm, GF_Font
      *font)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - fm
    - alt_fonts
    - nb_fonts
    - styles
    argTypes:
    - GF_FontManager*
    - char**
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1543
      start: 1540
    functionDepth: 0
    functionLinenumber: 1540
    functionLinenumberEnd: 1543
    functionName: gf_font_manager_set_font
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Font
    signature: GF_Font *gf_font_manager_set_font(GF_FontManager *fm, char **alt_fonts,
      u32 nb_fonts, u32 styles)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - fm
    - alt_fonts
    - nb_fonts
    - styles
    - check_only
    argTypes:
    - GF_FontManager*
    - char**
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1547
      start: 1544
    functionDepth: 0
    functionLinenumber: 1544
    functionLinenumberEnd: 1547
    functionName: gf_font_manager_set_font_ex
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Font
    signature: GF_Font *gf_font_manager_set_font_ex(GF_FontManager *fm, char **alt_fonts,
      u32 nb_fonts, u32 styles, Bool check_only)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - span
    argTypes:
    - GF_TextSpan*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1551
      start: 1548
    functionDepth: 0
    functionLinenumber: 1548
    functionLinenumberEnd: 1551
    functionName: gf_font_span_create_path
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_Path
    signature: GF_Path *gf_font_span_create_path(GF_TextSpan *span)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - spans
    - tr_state
    - hl_color
    - force_texture_text
    - bounds
    argTypes:
    - GF_List*
    - GF_TraverseState*
    - u32
    - Bool
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1557
      start: 1555
    functionDepth: 0
    functionLinenumber: 1555
    functionLinenumberEnd: 1557
    functionName: gf_font_spans_draw_2d
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_font_spans_draw_2d(GF_List *spans, GF_TraverseState *tr_state,
      u32 hl_color, Bool force_texture_text, GF_Rect *bounds)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - spans
    - tr_state
    - asp
    - text_hl
    - force_texturing
    argTypes:
    - GF_List*
    - GF_TraverseState*
    - DrawAspect2D*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1560
      start: 1558
    functionDepth: 0
    functionLinenumber: 1558
    functionLinenumberEnd: 1560
    functionName: gf_font_spans_draw_3d
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_font_spans_draw_3d(GF_List *spans, GF_TraverseState *tr_state,
      DrawAspect2D *asp, u32 text_hl, Bool force_texturing)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - node
    - spans
    - tr_state
    argTypes:
    - GF_Node*
    - GF_List*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1563
      start: 1561
    functionDepth: 0
    functionLinenumber: 1561
    functionLinenumberEnd: 1563
    functionName: gf_font_spans_get_selection
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_font_spans_get_selection(GF_Node *node, GF_List *spans, GF_TraverseState
      *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 6
    argNames:
    - node
    - spans
    - tr_state
    - node_bounds
    - use_dom_events
    - drawable
    argTypes:
    - GF_Node*
    - GF_List*
    - GF_TraverseState*
    - GF_Rect*
    - Bool
    - Drawable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1566
      start: 1564
    functionDepth: 0
    functionLinenumber: 1564
    functionLinenumberEnd: 1566
    functionName: gf_font_spans_pick
    functionSourceFile: /src/gpac/src/compositor/font_engine.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_font_spans_pick(GF_Node *node, GF_List *spans, GF_TraverseState
      *tr_state, GF_Rect *node_bounds, Bool use_dom_events, Drawable *drawable)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/mesh_tesselate.c:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - which
    argTypes:
    - GLenum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: mesh_tess_begin
    functionSourceFile: /src/gpac/src/compositor/mesh_tesselate.c
    functionUses: 0
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: void
    signature: void mesh_tess_begin(GLenum which)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 62
    functionName: mesh_tess_end
    functionSourceFile: /src/gpac/src/compositor/mesh_tesselate.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void mesh_tess_end(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mesh_tesselate.c:66,1
    - Dst: gluErrorString
      Src: /src/gpac/src/compositor/mesh_tesselate.c:66,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - error_code
    argTypes:
    - GLenum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 67
    functionName: mesh_tess_error
    functionSourceFile: /src/gpac/src/compositor/mesh_tesselate.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gluErrorString
    linkageType: ''
    returnType: void
    signature: void mesh_tess_error(GLenum error_code)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - flag
    argTypes:
    - GLenum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: mesh_tess_edgeflag
    functionSourceFile: /src/gpac/src/compositor/mesh_tesselate.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void mesh_tess_edgeflag(GLenum flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesh_set_index
      Src: /src/gpac/src/compositor/mesh_tesselate.c:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - vertexData
    - user_data
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 76
    functionName: mesh_tess_vertex
    functionSourceFile: /src/gpac/src/compositor/mesh_tesselate.c
    functionUses: 0
    functionsReached:
    - mesh_set_index
    linkageType: ''
    returnType: void
    signature: void mesh_tess_vertex(void *vertexData, void *user_data)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mesh_tesselate.c:93,1
    - Dst: MESH_GET_COLOR
      Src: /src/gpac/src/compositor/mesh_tesselate.c:96,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh_tesselate.c:98,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh_tesselate.c:99,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh_tesselate.c:100,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mesh_tesselate.c:111,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/mesh_tesselate.c:114,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh_tesselate.c:115,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh_tesselate.c:116,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh_tesselate.c:117,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mesh_tesselate.c:125,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh_tesselate.c:127,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh_tesselate.c:128,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh_tesselate.c:133,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mesh_tesselate.c:134,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh_tesselate.c:136,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mesh_tesselate.c:136,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mesh_tesselate.c:136,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mesh_tesselate.c:136,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 42
    argCount: 5
    argNames:
    - coords
    - vertex_data
    - weight
    - out_data
    - user_data
    argTypes:
    - GLdouble[]
    - void*[]
    - GLfloat[]
    - void**
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 138
    functionName: mesh_tess_combine
    functionSourceFile: /src/gpac/src/compositor/mesh_tesselate.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_malloc
    - mesh_set_vertex
    - MESH_GET_COLOR
    - MESH_GET_NORMAL
    - gf_list_add
    - gf_mulfix
    linkageType: ''
    returnType: void
    signature: void mesh_tess_combine(GLdouble coords[3], void* vertex_data[4], GLfloat
      weight[4], void** out_data, void *user_data)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh_tesselate.c:149,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mesh_tesselate.c:151,1
    - Dst: gluNewTess
      Src: /src/gpac/src/compositor/mesh_tesselate.c:152,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh_tesselate.c:154,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mesh_tesselate.c:157,1
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/mesh_tesselate.c:159,1
    - Dst: gluTessCallback
      Src: /src/gpac/src/compositor/mesh_tesselate.c:164,1
    - Dst: gluTessCallback
      Src: /src/gpac/src/compositor/mesh_tesselate.c:165,1
    - Dst: gluTessCallback
      Src: /src/gpac/src/compositor/mesh_tesselate.c:166,1
    - Dst: gluTessCallback
      Src: /src/gpac/src/compositor/mesh_tesselate.c:167,1
    - Dst: gluTessCallback
      Src: /src/gpac/src/compositor/mesh_tesselate.c:168,1
    - Dst: gluTessCallback
      Src: /src/gpac/src/compositor/mesh_tesselate.c:169,1
    - Dst: gluTessProperty
      Src: /src/gpac/src/compositor/mesh_tesselate.c:171,1
    - Dst: gluTessBeginPolygon
      Src: /src/gpac/src/compositor/mesh_tesselate.c:173,1
    - Dst: gluTessNormal
      Src: /src/gpac/src/compositor/mesh_tesselate.c:174,1
    - Dst: gf_path_flatten
      Src: /src/gpac/src/compositor/mesh_tesselate.c:176,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/mesh_tesselate.c:177,1
    - Dst: gluTessBeginContour
      Src: /src/gpac/src/compositor/mesh_tesselate.c:188,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh_tesselate.c:192,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh_tesselate.c:193,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh_tesselate.c:195,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mesh_tesselate.c:197,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh_tesselate.c:198,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mesh_tesselate.c:200,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mesh_tesselate.c:201,1
    - Dst: gluTessVertex
      Src: /src/gpac/src/compositor/mesh_tesselate.c:202,1
    - Dst: gluTessEndContour
      Src: /src/gpac/src/compositor/mesh_tesselate.c:204,1
    - Dst: gluTessEndPolygon
      Src: /src/gpac/src/compositor/mesh_tesselate.c:208,1
    - Dst: gluDeleteTess
      Src: /src/gpac/src/compositor/mesh_tesselate.c:210,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mesh_tesselate.c:212,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mesh_tesselate.c:213,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/mesh_tesselate.c:214,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh_tesselate.c:215,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mesh_tesselate.c:217,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh_tesselate.c:218,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/compositor/mesh_tesselate.c:225,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/mesh_tesselate.c:228,1
    - Dst: mesh_tess_error
      Src: /src/gpac/src/compositor/mesh_tesselate.c:229,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 67
    argCount: 3
    argNames:
    - mesh
    - path
    - outline_style
    argTypes:
    - GF_Mesh*
    - GF_Path*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 233
    functionName: gf_mesh_tesselate_path
    functionSourceFile: /src/gpac/src/compositor/mesh_tesselate.c
    functionUses: 1
    functionsReached:
    - gf_free
    - mesh_tess_error
    - gluTessProperty
    - gluTessEndContour
    - gf_list_count
    - memset
    - gf_bbox_refresh
    - gluTessBeginPolygon
    - gluTessBeginContour
    - FIX2FLT
    - gf_sys_is_cov_mode
    - gf_list_new
    - gf_list_get
    - mesh_reset
    - gf_list_add
    - gluTessNormal
    - gluTessEndPolygon
    - gf_divfix
    - gluNewTess
    - gf_malloc
    - gluDeleteTess
    - gf_list_del
    - gluTessVertex
    - gf_path_flatten
    - mesh_set_vertex
    - gluTessCallback
    - gf_list_rem
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void gf_mesh_tesselate_path(GF_Mesh *mesh, GF_Path *path, u32 outline_style)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - mesh
    - path
    - outline_style
    argTypes:
    - GF_Mesh*
    - GF_Path*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 237
    functionName: gf_mesh_tesselate_path
    functionSourceFile: /src/gpac/src/compositor/mesh_tesselate.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_mesh_tesselate_path(GF_Mesh *mesh, GF_Path *path, u32 outline_style)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - pt
    - ','
    - apt
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 248
    functionName: GetPoint2D
    functionSourceFile: /src/gpac/src/compositor/mesh_tesselate.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GetPoint2D(pt, apt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - delta
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 255
    functionName: ConvCompare
    functionSourceFile: /src/gpac/src/compositor/mesh_tesselate.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ConvCompare(delta)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - delta
    - ','
    - pprev
    - ','
    - pcur
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 263
    functionName: ConvGetPointDelta
    functionSourceFile: /src/gpac/src/compositor/mesh_tesselate.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ConvGetPointDelta(delta, pprev, pcur )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - p
    - ','
    - q
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 264
    functionName: ConvCross
    functionSourceFile: /src/gpac/src/compositor/mesh_tesselate.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ConvCross(p, q)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GetPoint2D
      Src: /src/gpac/src/compositor/mesh_tesselate.c:297,1
    - Dst: ConvGetPointDelta
      Src: /src/gpac/src/compositor/mesh_tesselate.c:299,1
    - Dst: ConvCompare
      Src: /src/gpac/src/compositor/mesh_tesselate.c:302,1
    - Dst: ConvGetPointDelta
      Src: /src/gpac/src/compositor/mesh_tesselate.c:305,1
    - Dst: GetPoint2D
      Src: /src/gpac/src/compositor/mesh_tesselate.c:313,1
    - Dst: ConvCompare
      Src: /src/gpac/src/compositor/mesh_tesselate.c:316,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 3
    argNames:
    - pts
    - len
    - direction
    argTypes:
    - GF_Vertex*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 284
    functionDepth: 1
    functionLinenumber: 284
    functionLinenumberEnd: 330
    functionName: polygon_check_convexity
    functionSourceFile: /src/gpac/src/compositor/mesh_tesselate.c
    functionUses: 0
    functionsReached:
    - ConvGetPointDelta
    - GetPoint2D
    - ConvCompare
    linkageType: ''
    returnType: u32
    signature: u32 polygon_check_convexity(GF_Vertex *pts, u32 len, u32 direction)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/mesh_tesselate.c:349,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/mesh_tesselate.c:354,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/mesh_tesselate.c:355,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/mesh_tesselate.c:360,1
    - Dst: polygon_check_convexity
      Src: /src/gpac/src/compositor/mesh_tesselate.c:364,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/mesh_tesselate.c:373,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh_tesselate.c:377,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh_tesselate.c:387,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mesh_tesselate.c:389,1
    - Dst: gluNewTess
      Src: /src/gpac/src/compositor/mesh_tesselate.c:390,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh_tesselate.c:392,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mesh_tesselate.c:395,1
    - Dst: gluTessCallback
      Src: /src/gpac/src/compositor/mesh_tesselate.c:398,1
    - Dst: gluTessCallback
      Src: /src/gpac/src/compositor/mesh_tesselate.c:399,1
    - Dst: gluTessCallback
      Src: /src/gpac/src/compositor/mesh_tesselate.c:400,1
    - Dst: gluTessCallback
      Src: /src/gpac/src/compositor/mesh_tesselate.c:401,1
    - Dst: gluTessCallback
      Src: /src/gpac/src/compositor/mesh_tesselate.c:402,1
    - Dst: gluTessCallback
      Src: /src/gpac/src/compositor/mesh_tesselate.c:403,1
    - Dst: gluTessBeginPolygon
      Src: /src/gpac/src/compositor/mesh_tesselate.c:405,1
    - Dst: gluTessBeginContour
      Src: /src/gpac/src/compositor/mesh_tesselate.c:406,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh_tesselate.c:410,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mesh_tesselate.c:412,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/mesh_tesselate.c:413,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mesh_tesselate.c:415,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mesh_tesselate.c:416,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mesh_tesselate.c:417,1
    - Dst: gluTessVertex
      Src: /src/gpac/src/compositor/mesh_tesselate.c:418,1
    - Dst: gluTessEndContour
      Src: /src/gpac/src/compositor/mesh_tesselate.c:421,1
    - Dst: gluTessEndPolygon
      Src: /src/gpac/src/compositor/mesh_tesselate.c:422,1
    - Dst: gluDeleteTess
      Src: /src/gpac/src/compositor/mesh_tesselate.c:423,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mesh_tesselate.c:425,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mesh_tesselate.c:426,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/mesh_tesselate.c:427,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh_tesselate.c:428,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mesh_tesselate.c:430,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh_tesselate.c:431,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 73
    argCount: 2
    argNames:
    - dest
    - orig
    argTypes:
    - GF_Mesh*
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 333
    functionDepth: 2
    functionLinenumber: 333
    functionLinenumberEnd: 433
    functionName: TesselateFaceMesh
    functionSourceFile: /src/gpac/src/compositor/mesh_tesselate.c
    functionUses: 0
    functionsReached:
    - gf_free
    - mesh_set_vertex_vx
    - gluTessEndContour
    - gf_list_count
    - memset
    - gluTessBeginPolygon
    - gluTessBeginContour
    - FIX2FLT
    - gf_list_new
    - gf_list_get
    - gf_list_add
    - polygon_check_convexity
    - gluTessEndPolygon
    - MESH_GET_NORMAL
    - gluNewTess
    - gf_malloc
    - gluDeleteTess
    - gf_list_del
    - gluTessVertex
    - ABS
    - mesh_set_triangle
    - gluTessCallback
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void TesselateFaceMesh(GF_Mesh *dest, GF_Mesh *orig)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh_tesselate.c:447,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mesh_tesselate.c:449,1
    - Dst: gluNewTess
      Src: /src/gpac/src/compositor/mesh_tesselate.c:450,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh_tesselate.c:452,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mesh_tesselate.c:455,1
    - Dst: gluTessCallback
      Src: /src/gpac/src/compositor/mesh_tesselate.c:458,1
    - Dst: gluTessCallback
      Src: /src/gpac/src/compositor/mesh_tesselate.c:459,1
    - Dst: gluTessCallback
      Src: /src/gpac/src/compositor/mesh_tesselate.c:460,1
    - Dst: gluTessCallback
      Src: /src/gpac/src/compositor/mesh_tesselate.c:461,1
    - Dst: gluTessCallback
      Src: /src/gpac/src/compositor/mesh_tesselate.c:462,1
    - Dst: gluTessCallback
      Src: /src/gpac/src/compositor/mesh_tesselate.c:463,1
    - Dst: gluTessBeginPolygon
      Src: /src/gpac/src/compositor/mesh_tesselate.c:465,1
    - Dst: gluTessBeginContour
      Src: /src/gpac/src/compositor/mesh_tesselate.c:466,1
    - Dst: gluTessEndContour
      Src: /src/gpac/src/compositor/mesh_tesselate.c:477,1
    - Dst: gluTessBeginContour
      Src: /src/gpac/src/compositor/mesh_tesselate.c:478,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh_tesselate.c:481,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mesh_tesselate.c:483,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/mesh_tesselate.c:484,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mesh_tesselate.c:486,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mesh_tesselate.c:487,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mesh_tesselate.c:488,1
    - Dst: gluTessVertex
      Src: /src/gpac/src/compositor/mesh_tesselate.c:489,1
    - Dst: gluTessEndContour
      Src: /src/gpac/src/compositor/mesh_tesselate.c:492,1
    - Dst: gluTessEndPolygon
      Src: /src/gpac/src/compositor/mesh_tesselate.c:493,1
    - Dst: gluDeleteTess
      Src: /src/gpac/src/compositor/mesh_tesselate.c:494,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mesh_tesselate.c:496,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mesh_tesselate.c:497,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/mesh_tesselate.c:498,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh_tesselate.c:499,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mesh_tesselate.c:501,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh_tesselate.c:502,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 49
    argCount: 4
    argNames:
    - dest
    - orig
    - nbFaces
    - ptsPerFaces
    argTypes:
    - GF_Mesh*
    - GF_Mesh*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 439
    functionDepth: 1
    functionLinenumber: 439
    functionLinenumberEnd: 503
    functionName: TesselateFaceMeshComplex
    functionSourceFile: /src/gpac/src/compositor/mesh_tesselate.c
    functionUses: 0
    functionsReached:
    - gf_free
    - mesh_set_vertex_vx
    - gluTessEndContour
    - gf_list_count
    - memset
    - gluTessBeginPolygon
    - gluTessBeginContour
    - FIX2FLT
    - gf_list_new
    - gf_list_get
    - gf_list_add
    - gluTessEndPolygon
    - gluNewTess
    - gf_malloc
    - gf_list_del
    - gluDeleteTess
    - gluTessVertex
    - gluTessCallback
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void TesselateFaceMeshComplex(GF_Mesh *dest, GF_Mesh *orig, u32 nbFaces,
      u32 *ptsPerFaces)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:58,1
    - Dst: drawable_del
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:61,1
    - Dst: ostgl_delete_context
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:64,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:67,1
    - Dst: gf_sc_texture_destroy
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:69,1
    - Dst: BindableStackDelete
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:71,1
    - Dst: BindableStackDelete
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:73,1
    - Dst: BindableStackDelete
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:75,1
    - Dst: BindableStackDelete
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:77,1
    - Dst: visual_del
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:79,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:83,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 56
    functionDepth: 2
    functionLinenumber: 56
    functionLinenumberEnd: 84
    functionName: DestroyLayer3D
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layer_3d.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sc_texture_destroy
    - visual_del
    - drawable_del
    - BindableStackDelete
    - gf_node_get_private
    - ostgl_delete_context
    linkageType: ''
    returnType: void
    signature: void DestroyLayer3D(GF_Node *node)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:96,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:97,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:99,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:100,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:102,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:104,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:105,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:107,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:108,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:110,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:112,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:113,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:115,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:116,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:118,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:120,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:121,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:123,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:124,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:126,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 41
    argCount: 3
    argNames:
    - n
    - tr_state
    - force_traverse
    argTypes:
    - GF_Node*
    - GF_TraverseState*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 86
    functionDepth: 6
    functionLinenumber: 86
    functionLinenumberEnd: 129
    functionName: l3d_CheckBindables
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layer_3d.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_node_event_out
    - gf_node_traverse
    - gf_node_unregister
    - gf_node_register
    linkageType: ''
    returnType: void
    signature: void l3d_CheckBindables(GF_Node *n, GF_TraverseState *tr_state, Bool
      force_traverse)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_TraverseState*::visual::DrawBitmap
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:135,1
    - Dst: visual_2d_texture_path
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - node
    - tr_state
    argTypes:
    - GF_Node*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 139
    functionName: layer3d_draw_2d
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layer_3d.c
    functionUses: 0
    functionsReached:
    - GF_TraverseState*::visual::DrawBitmap
    - visual_2d_texture_path
    linkageType: ''
    returnType: void
    signature: void layer3d_draw_2d(GF_Node *node, GF_TraverseState *tr_state)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:146,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:147,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:149,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:150,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:168,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:171,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 4
    argNames:
    - st
    - tr_state
    - prev_cam
    - rc
    argTypes:
    - Layer3DStack*
    - GF_TraverseState*
    - Bool
    - GF_Rect
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 184
    functionName: layer3d_setup_clip
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layer_3d.c
    functionUses: 0
    functionsReached:
    - gf_divfix
    - INT2FIX
    linkageType: ''
    returnType: void
    signature: void layer3d_setup_clip(Layer3DStack *st, GF_TraverseState *tr_state,
      Bool prev_cam, GF_Rect rc)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:200,1
    - Dst: DestroyLayer3D
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:206,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:211,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:213,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:217,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:218,1
    - Dst: visual_get_size_info
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:220,1
    - Dst: gf_rect_center
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:225,1
    - Dst: gf_bbox_from_rect
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:247,1
    - Dst: drawable_init_context_mpeg4
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:262,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:266,1
    - Dst: layer3d_draw_2d
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:275,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:290,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:291,1
    - Dst: gf_mx_apply_rect
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:297,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:300,1
    - Dst: gf_mx_apply_rect
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:302,1
    - Dst: gf_mx_apply_rect
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:306,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:309,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:317,1
    - Dst: l3d_CheckBindables
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:318,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:320,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:327,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:338,1
    - Dst: layer3d_setup_clip
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:340,1
    - Dst: visual_2d_flush_hybgl_canvas
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:344,1
    - Dst: visual_3d_clear_all_lights
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:350,1
    - Dst: visual_3d_init_draw
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:356,1
    - Dst: visual_3d_check_collisions
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:358,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:363,1
    - Dst: group_3d_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:367,1
    - Dst: visual_3d_flush_contexts
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:369,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:371,1
    - Dst: visual_3d_remove_last_light
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:375,1
    - Dst: gf_sc_copy_to_stencil
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:388,1
    - Dst: gf_get_tinygl_depth
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:391,1
    - Dst: gf_sc_texture_set_stencil
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:394,1
    - Dst: gf_sc_texture_get_stencil
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:394,1
    - Dst: drawable_init_context_mpeg4
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:402,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:408,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:414,1
    - Dst: layer3d_setup_clip
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:423,1
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:432,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:434,1
    - Dst: gf_sc_pick_in_clipper
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:435,1
    - Dst: compositor_get_2d_plane_intersection
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:444,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:446,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:447,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:451,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:452,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:454,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:455,1
    - Dst: visual_3d_setup_projection
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:458,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:460,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:461,1
    - Dst: gf_mx_apply_vec_4x4
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:467,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:472,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:473,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:474,1
    - Dst: gf_mx_apply_vec_4x4
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:480,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:485,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:486,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:487,1
    - Dst: gf_ray
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:488,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:490,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:491,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:491,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:491,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:492,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:492,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:492,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:493,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:493,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:493,1
    - Dst: group_3d_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:495,1
    - Dst: visual_3d_projection_matrix_modified
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:514,1
    - Dst: visual_3d_set_viewport
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:516,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:528,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:529,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:534,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:535,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 236
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 537
      start: 186
    functionDepth: 7
    functionLinenumber: 186
    functionLinenumberEnd: 537
    functionName: TraverseLayer3D
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layer_3d.c
    functionUses: 0
    functionsReached:
    - gf_get_tinygl_depth
    - gf_bbox_from_rect
    - gf_node_dirty_get
    - layer3d_draw_2d
    - visual_3d_remove_last_light
    - gf_node_dirty_clear
    - gf_list_count
    - gf_sc_pick_in_clipper
    - compositor_get_2d_plane_intersection
    - gf_mx_copy
    - FIX2FLT
    - group_3d_traverse
    - drawable_init_context_mpeg4
    - layer3d_setup_clip
    - gf_list_new
    - visual_get_size_info
    - memcpy
    - gf_mx2d_apply_rect
    - visual_3d_check_collisions
    - gf_mx_init
    - gf_sc_invalidate
    - visual_2d_flush_hybgl_canvas
    - gf_sc_texture_get_stencil
    - gf_node_get_private
    - gf_mulfix
    - gf_ray
    - gf_sc_texture_set_stencil
    - visual_3d_clear_all_lights
    - drawable_finalize_sort
    - visual_3d_setup_projection
    - GF_LOG
    - gf_mx_from_mx2d
    - gf_divfix
    - gf_muldiv
    - gf_rect_center
    - DestroyLayer3D
    - gf_mx_apply_rect
    - visual_3d_set_viewport
    - gf_mx2d_copy
    - visual_3d_flush_contexts
    - gf_list_del
    - INT2FIX
    - gf_node_dirty_set
    - gf_mx_apply_vec_4x4
    - visual_3d_init_draw
    - gf_sc_copy_to_stencil
    - visual_3d_projection_matrix_modified
    - gf_mx_inverse
    - gf_mx_apply_vec
    - l3d_CheckBindables
    linkageType: ''
    returnType: void
    signature: void TraverseLayer3D(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_check_gl_support
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:543,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:544,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:548,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:550,1
    - Dst: visual_new
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:553,1
    - Dst: camera_invalidate
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:558,1
    - Dst: drawable_new
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:562,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:566,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:567,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 568
      start: 539
    functionDepth: 2
    functionLinenumber: 539
    functionLinenumberEnd: 568
    functionName: compositor_init_layer3d
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layer_3d.c
    functionUses: 1
    functionsReached:
    - visual_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - camera_invalidate
    - drawable_new
    - gf_node_set_callback_function
    - gf_sc_check_gl_support
    linkageType: ''
    returnType: void
    signature: void compositor_init_layer3d(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:572,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 574
      start: 570
    functionDepth: 2
    functionLinenumber: 570
    functionLinenumberEnd: 574
    functionName: compositor_layer3d_get_camera
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layer_3d.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: GF_Camera
    signature: GF_Camera *compositor_layer3d_get_camera(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:578,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:579,1
    - Dst: Bindable_SetSetBind
      Src: /src/gpac/src/compositor/mpeg4_layer_3d.c:580,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - node
    - do_bind
    - nav_value
    argTypes:
    - GF_Node*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 576
    functionDepth: 2
    functionLinenumber: 576
    functionLinenumberEnd: 582
    functionName: compositor_layer3d_bind_camera
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layer_3d.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_node_get_private
    - Bindable_SetSetBind
    linkageType: ''
    returnType: void
    signature: void compositor_layer3d_bind_camera(GF_Node *node, Bool do_bind, u32
      nav_value)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:41,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:43,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:44,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:45,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:59,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:61,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:65,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:67,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 71
    functionName: ils2d_check_changes
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c
    functionUses: 0
    functionsReached:
    - drawable_reset_path
    - drawable_mark_modified
    - gf_node_dirty_get
    - gf_path_add_move_to
    - gf_node_dirty_clear
    - gf_path_add_line_to
    linkageType: ''
    returnType: void
    signature: void ils2d_check_changes(GF_Node *node, Drawable *stack, GF_TraverseState
      *tr_state)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: visual_2d_draw_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:97,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:101,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:101,1
    - Dst: gf_path_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:110,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:111,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:120,1
    - Dst: visual_2d_draw_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:122,1
    - Dst: gf_path_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:126,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:129,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:135,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:138,1
    - Dst: gf_path_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:147,1
    - Dst: gf_path_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:149,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:154,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:159,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:167,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:176,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:179,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:181,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:184,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:186,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:189,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:191,1
    - Dst: gf_evg_stencil_set_linear_gradient
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:195,1
    - Dst: gf_evg_stencil_set_gradient_interpolation
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:196,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:200,1
    - Dst: gf_evg_stencil_set_vertex_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:202,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:204,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:213,1
    - Dst: gf_evg_stencil_set_vertex_colors
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:215,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:216,1
    - Dst: gf_evg_stencil_set_matrix
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:221,1
    - Dst: gf_evg_stencil_set_auto_matrix
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:222,1
    - Dst: visual_2d_draw_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:223,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:224,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:231,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 130
    argCount: 2
    argNames:
    - node
    - tr_state
    argTypes:
    - GF_Node*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 73
    functionDepth: 3
    functionLinenumber: 73
    functionLinenumberEnd: 232
    functionName: ILS2D_Draw
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_evg_stencil_delete
    - gf_evg_stencil_new
    - gf_path_add_move_to
    - GF_COL_A
    - gf_evg_stencil_set_gradient_interpolation
    - gf_path_del
    - gf_evg_stencil_set_auto_matrix
    - gf_evg_stencil_set_matrix
    - visual_2d_draw_path
    - GF_COL_ARGB_FIXED
    - gf_evg_stencil_set_vertex_colors
    - gf_path_new
    - gf_malloc
    - INT2FIX
    - gf_evg_stencil_set_vertex_path
    - gf_evg_stencil_set_linear_gradient
    - gf_path_reset
    - gf_path_add_line_to
    linkageType: ''
    returnType: void
    signature: void ILS2D_Draw(GF_Node *node, GF_TraverseState *tr_state)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:239,1
    - Dst: drawable_node_del
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:243,1
    - Dst: ils2d_check_changes
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:249,1
    - Dst: ILS2D_Draw
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:253,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:258,1
    - Dst: mesh_new_ils
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:259,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:263,1
    - Dst: drawable_get_aspect_2d_mpeg4
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:264,1
    - Dst: visual_3d_mesh_strike
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:266,1
    - Dst: visual_3d_draw_2d
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:268,1
    - Dst: vrml_drawable_pick
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:273,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:276,1
    - Dst: drawable_init_context_mpeg4
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:283,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:287,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 43
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 235
    functionDepth: 4
    functionLinenumber: 235
    functionLinenumberEnd: 292
    functionName: TraverseILS2D
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c
    functionUses: 0
    functionsReached:
    - drawable_node_del
    - ils2d_check_changes
    - drawable_init_context_mpeg4
    - drawable_finalize_sort
    - visual_3d_draw_2d
    - ILS2D_Draw
    - mesh_new_ils
    - new_mesh
    - memset
    - visual_3d_mesh_strike
    - vrml_drawable_pick
    - gf_node_get_private
    - drawable_get_aspect_2d_mpeg4
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void TraverseILS2D(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:298,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:299,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 294
    functionDepth: 6
    functionLinenumber: 294
    functionLinenumberEnd: 301
    functionName: ILS2D_SetColorIndex
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_copy
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: void
    signature: void ILS2D_SetColorIndex(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:307,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 303
    functionDepth: 6
    functionLinenumber: 303
    functionLinenumberEnd: 310
    functionName: ILS2D_SetCoordIndex
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_copy
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: void
    signature: void ILS2D_SetCoordIndex(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: drawable_stack_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:315,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:317,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:322,1
    - Dst: ILS2D_SetCoordIndex
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:323,1
    - Dst: ILS2D_SetColorIndex
      Src: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c:324,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 312
    functionDepth: 7
    functionLinenumber: 312
    functionLinenumberEnd: 328
    functionName: compositor_init_indexed_line_set2d
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_ils2d.c
    functionUses: 1
    functionsReached:
    - ILS2D_SetColorIndex
    - drawable_stack_new
    - gf_node_set_callback_function
    - gf_sys_is_cov_mode
    - ILS2D_SetCoordIndex
    linkageType: ''
    returnType: void
    signature: void compositor_init_indexed_line_set2d(GF_Compositor *compositor,
      GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/object_manager.c:36,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/object_manager.c:40,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/object_manager.c:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 44
    functionName: GF_ObjectManager *gf_odm_new()
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ObjectManager *gf_odm_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/compositor/object_manager.c:52,1
    - Dst: MS_Stop
      Src: /src/gpac/src/compositor/object_manager.c:53,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/object_manager.c:56,1
    - Dst: gf_list_last
      Src: /src/gpac/src/compositor/object_manager.c:59,1
    - Dst: gf_odm_remove_mediacontrol
      Src: /src/gpac/src/compositor/object_manager.c:61,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/object_manager.c:64,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - odm
    - signal_reset
    argTypes:
    - GF_ObjectManager*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 67
    functionName: gf_odm_reset_media_control
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - gf_odm_remove_mediacontrol
    - gf_list_last
    - gf_list_rem_last
    - MS_Stop
    linkageType: ''
    returnType: void
    signature: void gf_odm_reset_media_control(GF_ObjectManager *odm, Bool signal_reset)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_reset_media_control
      Src: /src/gpac/src/compositor/object_manager.c:88,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/object_manager.c:89,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/object_manager.c:90,1
    - Dst: gf_input_sensor_delete
      Src: /src/gpac/src/compositor/object_manager.c:93,1
    - Dst: gf_sema_del
      Src: /src/gpac/src/compositor/object_manager.c:96,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/compositor/object_manager.c:98,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/object_manager.c:100,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/compositor/object_manager.c:101,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/compositor/object_manager.c:102,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/object_manager.c:103,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/object_manager.c:105,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/compositor/object_manager.c:109,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/object_manager.c:111,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 33
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 70
    functionDepth: 2
    functionLinenumber: 70
    functionLinenumberEnd: 112
    functionName: gf_odm_del
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_odf_desc_del
    - gf_input_sensor_delete
    - gf_sema_del
    - gf_list_count
    - gf_filter_pid_set_udta
    - gf_odm_reset_media_control
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_odm_del(GF_ObjectManager *odm)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:118,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:119,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/object_manager.c:127,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/object_manager.c:128,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/object_manager.c:132,1
    - Dst: gf_odm_setup_object
      Src: /src/gpac/src/compositor/object_manager.c:138,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 3
    argNames:
    - odm
    - pid
    - register_only
    argTypes:
    - GF_ObjectManager*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 139
    functionName: gf_odm_register_pid
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_pid_get_property
    - GF_SAFEALLOC
    - gf_odm_setup_object
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void gf_odm_register_pid(GF_ObjectManager *odm, GF_FilterPid *pid,
      Bool register_only)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_stop
      Src: /src/gpac/src/compositor/object_manager.c:154,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/object_manager.c:162,1
    - Dst: gf_filter_pid_exec_event
      Src: /src/gpac/src/compositor/object_manager.c:164,1
    - Dst: gf_scene_disconnect
      Src: /src/gpac/src/compositor/object_manager.c:166,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/object_manager.c:175,1
    - Dst: gf_filter_pid_exec_event
      Src: /src/gpac/src/compositor/object_manager.c:178,1
    - Dst: gf_mo_event_target_count
      Src: /src/gpac/src/compositor/object_manager.c:190,1
    - Dst: gf_event_target_get_node
      Src: /src/gpac/src/compositor/object_manager.c:192,1
    - Dst: gf_mo_event_target_get
      Src: /src/gpac/src/compositor/object_manager.c:192,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/object_manager.c:193,1
    - Dst: InputSensorModified
      Src: /src/gpac/src/compositor/object_manager.c:197,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:218,1
    - Dst: gf_scene_get_root_scene
      Src: /src/gpac/src/compositor/object_manager.c:228,1
    - Dst: gf_scene_ns_del
      Src: /src/gpac/src/compositor/object_manager.c:230,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/object_manager.c:241,1
    - Dst: gf_scene_reset_addon
      Src: /src/gpac/src/compositor/object_manager.c:242,1
    - Dst: gf_filter_forward_gf_event
      Src: /src/gpac/src/compositor/object_manager.c:248,1
    - Dst: gf_scene_remove_object
      Src: /src/gpac/src/compositor/object_manager.c:250,1
    - Dst: gf_scene_del
      Src: /src/gpac/src/compositor/object_manager.c:252,1
    - Dst: gf_odm_del
      Src: /src/gpac/src/compositor/object_manager.c:254,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/object_manager.c:264,1
    - Dst: gf_scene_del
      Src: /src/gpac/src/compositor/object_manager.c:265,1
    - Dst: gf_odm_del
      Src: /src/gpac/src/compositor/object_manager.c:269,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 91
    argCount: 2
    argNames:
    - odm
    - do_remove
    argTypes:
    - GF_ObjectManager*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 145
    functionDepth: 3
    functionLinenumber: 145
    functionLinenumberEnd: 270
    functionName: gf_odm_disconnect
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_scene_ns_del
    - gf_scene_remove_object
    - gf_odm_del
    - gf_event_target_get_node
    - gf_scene_get_root_scene
    - gf_sc_send_event
    - GF_FEVT_INIT
    - gf_filter_forward_gf_event
    - gf_filter_pid_exec_event
    - gf_mo_event_target_get
    - gf_list_del_item
    - gf_list_enum
    - gf_scene_reset_addon
    - gf_scene_disconnect
    - InputSensorModified
    - gf_scene_del
    - gf_odm_stop
    - gf_mo_event_target_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odm_disconnect(GF_ObjectManager *odm, u32 do_remove)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/object_manager.c:288,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/object_manager.c:290,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 20
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 272
    functionDepth: 1
    functionLinenumber: 272
    functionLinenumberEnd: 297
    functionName: gf_odm_should_auto_select
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: Bool
    signature: Bool gf_odm_should_auto_select(GF_ObjectManager *odm)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:304,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:310,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:325,1
    - Dst: gf_scene_new
      Src: /src/gpac/src/compositor/object_manager.c:332,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/object_manager.c:338,1
    - Dst: gf_scene_ns_connect_object
      Src: /src/gpac/src/compositor/object_manager.c:347,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 4
    argNames:
    - odm
    - parent_ns
    - remote_url
    - for_addon
    argTypes:
    - GF_ObjectManager*
    - GF_SceneNamespace*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 300
    functionDepth: 1
    functionLinenumber: 300
    functionLinenumberEnd: 348
    functionName: gf_odm_setup_remote_object
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - strnicmp
    - gf_scene_new
    - gf_scene_ns_connect_object
    linkageType: ''
    returnType: void
    signature: void gf_odm_setup_remote_object(GF_ObjectManager *odm, GF_SceneNamespace
      *parent_ns, char *remote_url, Bool for_addon)
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:357,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/object_manager.c:377,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:380,1
    - Dst: gf_odm_setup_pid
      Src: /src/gpac/src/compositor/object_manager.c:382,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:384,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/compositor/object_manager.c:384,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/compositor/object_manager.c:384,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:399,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:401,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:403,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:406,1
    - Dst: gf_odm_set_timeshift_depth
      Src: /src/gpac/src/compositor/object_manager.c:410,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:414,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:419,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/object_manager.c:426,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/object_manager.c:430,1
    - Dst: gf_filter_pid_is_sparse
      Src: /src/gpac/src/compositor/object_manager.c:435,1
    - Dst: gf_scene_setup_object
      Src: /src/gpac/src/compositor/object_manager.c:445,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:449,1
    - Dst: gf_event_target_get_node
      Src: /src/gpac/src/compositor/object_manager.c:454,1
    - Dst: gf_mo_event_target_get
      Src: /src/gpac/src/compositor/object_manager.c:454,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/object_manager.c:455,1
    - Dst: gf_filter_pid_exec_event
      Src: /src/gpac/src/compositor/object_manager.c:458,1
    - Dst: gf_odm_start
      Src: /src/gpac/src/compositor/object_manager.c:461,1
    - Dst: gf_filter_forward_gf_event
      Src: /src/gpac/src/compositor/object_manager.c:468,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:473,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/object_manager.c:478,1
    - Dst: gf_odm_start
      Src: /src/gpac/src/compositor/object_manager.c:488,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/object_manager.c:492,1
    - Dst: gf_odm_start
      Src: /src/gpac/src/compositor/object_manager.c:494,1
    - Dst: gf_odm_start
      Src: /src/gpac/src/compositor/object_manager.c:499,1
    - Dst: gf_odm_should_auto_select
      Src: /src/gpac/src/compositor/object_manager.c:508,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:520,1
    - Dst: gf_odm_start
      Src: /src/gpac/src/compositor/object_manager.c:522,1
    - Dst: gf_odm_start
      Src: /src/gpac/src/compositor/object_manager.c:527,1
    - Dst: gf_odm_stop
      Src: /src/gpac/src/compositor/object_manager.c:528,1
    - Dst: strchr
      Src: /src/gpac/src/compositor/object_manager.c:548,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/object_manager.c:549,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:556,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/object_manager.c:557,1
    - Dst: gf_scene_select_object
      Src: /src/gpac/src/compositor/object_manager.c:564,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/object_manager.c:571,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:575,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/object_manager.c:576,1
    - Dst: atoi
      Src: /src/gpac/src/compositor/object_manager.c:577,1
    CyclomaticComplexity: 65
    EdgeCount: 65
    ICount: 160
    argCount: 3
    argNames:
    - odm
    - parent_ns
    - for_pid
    argTypes:
    - GF_ObjectManager*
    - GF_SceneNamespace*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 350
    functionDepth: 2
    functionLinenumber: 350
    functionLinenumberEnd: 582
    functionName: gf_odm_setup_object
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - gf_odm_should_auto_select
    - gf_odm_setup_pid
    - gf_scene_setup_object
    - gf_scene_select_object
    - gf_event_target_get_node
    - atoi
    - gf_odm_start
    - strchr
    - gf_filter_pid_get_name
    - gf_assert
    - gf_sc_send_event
    - GF_FEVT_INIT
    - strncmp
    - gf_filter_forward_gf_event
    - gf_filter_pid_exec_event
    - GF_LOG
    - strstr
    - gf_mo_event_target_get
    - gf_error_to_string
    - gf_filter_pid_send_event
    - gf_filter_pid_get_property
    - gf_odm_set_timeshift_depth
    - strcmp
    - gf_filter_pid_is_sparse
    - gf_odm_stop
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odm_setup_object(GF_ObjectManager *odm, GF_SceneNamespace
      *parent_ns, GF_FilterPid *for_pid)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/object_manager.c:605,1
    - Dst: gf_filter_pid_get_statistics
      Src: /src/gpac/src/compositor/object_manager.c:607,1
    - Dst: gf_filter_pid_get_packet_count
      Src: /src/gpac/src/compositor/object_manager.c:608,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:612,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:613,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:643,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:650,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/object_manager.c:658,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/object_manager.c:659,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/object_manager.c:665,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/object_manager.c:666,1
    - Dst: gf_scene_get_root_scene
      Src: /src/gpac/src/compositor/object_manager.c:689,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/compositor/object_manager.c:692,1
    - Dst: gf_clock_attach
      Src: /src/gpac/src/compositor/object_manager.c:696,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/compositor/object_manager.c:706,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:715,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:717,1
    - Dst: gf_odm_update_duration
      Src: /src/gpac/src/compositor/object_manager.c:725,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 101
    argCount: 2
    argNames:
    - odm
    - pid
    argTypes:
    - GF_ObjectManager*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 585
    functionDepth: 1
    functionLinenumber: 585
    functionLinenumberEnd: 728
    functionName: gf_odm_setup_pid
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_filter_pid_get_packet_count
    - gf_filter_pid_get_property
    - gf_clock_attach
    - GF_LOG
    - gf_scene_get_root_scene
    - gf_odm_update_duration
    - gf_list_count
    - gf_fatal_assert
    - gf_filter_pid_get_statistics
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odm_setup_pid(GF_ObjectManager *odm, GF_FilterPid *pid)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/compositor/object_manager.c:735,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/compositor/object_manager.c:741,1
    - Dst: gf_scene_set_duration
      Src: /src/gpac/src/compositor/object_manager.c:746,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:749,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - odm
    - pid
    argTypes:
    - GF_ObjectManager*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 755
      start: 730
    functionDepth: 1
    functionLinenumber: 730
    functionLinenumberEnd: 755
    functionName: gf_odm_update_duration
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - gf_filter_release_property
    - gf_filter_pid_get_info
    - gf_filter_pid_get_property
    - gf_scene_set_duration
    linkageType: ''
    returnType: void
    signature: void gf_odm_update_duration(GF_ObjectManager *odm, GF_FilterPid *pid)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/object_manager.c:766,1
    - Dst: strrchr
      Src: /src/gpac/src/compositor/object_manager.c:769,1
    - Dst: gf_odm_find_segment
      Src: /src/gpac/src/compositor/object_manager.c:772,1
    - Dst: gf_odm_play
      Src: /src/gpac/src/compositor/object_manager.c:780,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 781
      start: 759
    functionDepth: 1
    functionLinenumber: 759
    functionLinenumberEnd: 781
    functionName: gf_odm_start
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - gf_odm_play
    - gf_assert
    - gf_odm_find_segment
    - strrchr
    linkageType: ''
    returnType: void
    signature: void gf_odm_start(GF_ObjectManager *odm)
  - BBCount: 47
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/compositor/object_manager.c:801,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/object_manager.c:804,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/object_manager.c:806,1
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/object_manager.c:814,1
    - Dst: gf_odm_shares_clock
      Src: /src/gpac/src/compositor/object_manager.c:815,1
    - Dst: gf_clock_reset
      Src: /src/gpac/src/compositor/object_manager.c:825,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/object_manager.c:831,1
    - Dst: gf_clock_media_time
      Src: /src/gpac/src/compositor/object_manager.c:849,1
    - Dst: gf_clock_is_started
      Src: /src/gpac/src/compositor/object_manager.c:865,1
    - Dst: gf_clock_time_absolute
      Src: /src/gpac/src/compositor/object_manager.c:869,1
    - Dst: gf_scene_adjust_time_for_addon
      Src: /src/gpac/src/compositor/object_manager.c:873,1
    - Dst: gf_odm_shares_clock
      Src: /src/gpac/src/compositor/object_manager.c:887,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/object_manager.c:897,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/object_manager.c:897,1
    - Dst: gf_odm_get_mediacontrol
      Src: /src/gpac/src/compositor/object_manager.c:901,1
    - Dst: MC_GetRange
      Src: /src/gpac/src/compositor/object_manager.c:909,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/object_manager.c:913,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/object_manager.c:914,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/object_manager.c:914,1
    - Dst: gf_clock_set_speed
      Src: /src/gpac/src/compositor/object_manager.c:923,1
    - Dst: ceil
      Src: /src/gpac/src/compositor/object_manager.c:957,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:961,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/compositor/object_manager.c:961,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/object_manager.c:961,1
    - Dst: gf_clock_buffer_on
      Src: /src/gpac/src/compositor/object_manager.c:971,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/object_manager.c:977,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/object_manager.c:978,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/object_manager.c:981,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/object_manager.c:984,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/object_manager.c:986,1
    - Dst: gf_clock_buffer_on
      Src: /src/gpac/src/compositor/object_manager.c:995,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/object_manager.c:998,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/object_manager.c:999,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/object_manager.c:1002,1
    - Dst: gf_odm_service_media_event
      Src: /src/gpac/src/compositor/object_manager.c:1018,1
    - Dst: gf_odm_service_media_event
      Src: /src/gpac/src/compositor/object_manager.c:1019,1
    - Dst: gf_odm_pause
      Src: /src/gpac/src/compositor/object_manager.c:1029,1
    CyclomaticComplexity: 75
    EdgeCount: 75
    ICount: 171
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1031
      start: 783
    functionDepth: 1
    functionLinenumber: 783
    functionLinenumberEnd: 1031
    functionName: gf_odm_play
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - gf_list_find
    - gf_list_count
    - gf_odm_get_media_clock
    - FIX2FLT
    - gf_filter_pid_get_name
    - gf_odm_get_mediacontrol
    - gf_list_get
    - gf_clock_is_started
    - GF_FEVT_INIT
    - gf_list_add
    - gf_odm_pause
    - gf_clock_media_time
    - gf_clock_buffer_on
    - GF_LOG
    - gf_clock_reset
    - gf_odm_shares_clock
    - gf_odm_service_media_event
    - gf_filter_pid_send_event
    - gf_clock_time
    - ceil
    - ABS
    - gf_clock_time_absolute
    - gf_scene_adjust_time_for_addon
    - MC_GetRange
    - gf_filter_pck_unref
    - gf_clock_set_speed
    linkageType: ''
    returnType: void
    signature: void gf_odm_play(GF_ObjectManager *odm)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1063,1
    - Dst: gf_odm_stop
      Src: /src/gpac/src/compositor/object_manager.c:1064,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/object_manager.c:1071,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:1072,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/compositor/object_manager.c:1072,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/object_manager.c:1072,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/object_manager.c:1074,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/object_manager.c:1075,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1077,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/object_manager.c:1081,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/object_manager.c:1082,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/object_manager.c:1090,1
    - Dst: gf_clock_buffer_off
      Src: /src/gpac/src/compositor/object_manager.c:1093,1
    - Dst: gf_scene_buffering_info
      Src: /src/gpac/src/compositor/object_manager.c:1097,1
    - Dst: gf_odm_service_media_event
      Src: /src/gpac/src/compositor/object_manager.c:1101,1
    - Dst: gf_clock_reset
      Src: /src/gpac/src/compositor/object_manager.c:1105,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1112,1
    - Dst: MS_Stop
      Src: /src/gpac/src/compositor/object_manager.c:1113,1
    - Dst: gf_odm_get_mediacontrol
      Src: /src/gpac/src/compositor/object_manager.c:1116,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 56
    argCount: 2
    argNames:
    - odm
    - force_close
    argTypes:
    - GF_ObjectManager*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1120
      start: 1033
    functionDepth: 1
    functionLinenumber: 1033
    functionLinenumberEnd: 1120
    functionName: gf_odm_stop
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 3
    functionsReached:
    - gf_scene_buffering_info
    - gf_assert
    - gf_odm_get_mediacontrol
    - GF_LOG
    - gf_clock_reset
    - GF_FEVT_INIT
    - gf_clock_buffer_off
    - MS_Stop
    - gf_odm_service_media_event
    - gf_list_del_item
    - gf_filter_pid_send_event
    - gf_clock_time
    - gf_list_enum
    - gf_odm_stop
    - gf_filter_pid_get_name
    linkageType: ''
    returnType: void
    signature: void gf_odm_stop(GF_ObjectManager *odm, Bool force_close)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_check_segment_switch
      Src: /src/gpac/src/compositor/object_manager.c:1127,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/object_manager.c:1135,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/object_manager.c:1137,1
    - Dst: gf_odm_check_buffering
      Src: /src/gpac/src/compositor/object_manager.c:1153,1
    - Dst: gf_scene_mpeg4_inline_check_restart
      Src: /src/gpac/src/compositor/object_manager.c:1158,1
    - Dst: gf_odm_service_media_event
      Src: /src/gpac/src/compositor/object_manager.c:1162,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/object_manager.c:1166,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/compositor/object_manager.c:1169,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/compositor/object_manager.c:1171,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/object_manager.c:1177,1
    - Dst: gf_filter_pid_exec_event
      Src: /src/gpac/src/compositor/object_manager.c:1179,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/compositor/object_manager.c:1181,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/object_manager.c:1184,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/compositor/object_manager.c:1185,1
    - Dst: gf_filter_remove_src
      Src: /src/gpac/src/compositor/object_manager.c:1188,1
    - Dst: gf_odm_signal_eos_reached
      Src: /src/gpac/src/compositor/object_manager.c:1193,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 49
    argCount: 2
    argNames:
    - odm
    - pid
    argTypes:
    - GF_ObjectManager*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1195
      start: 1122
    functionDepth: 1
    functionLinenumber: 1122
    functionLinenumberEnd: 1195
    functionName: gf_odm_on_eos
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_get_info
    - gf_filter_pid_exec_event
    - gf_odm_check_buffering
    - GF_FEVT_INIT
    - gf_odm_check_segment_switch
    - gf_scene_mpeg4_inline_check_restart
    - gf_list_count
    - gf_filter_remove_src
    - gf_odm_service_media_event
    - gf_filter_release_property
    - gf_filter_pid_set_udta
    - gf_odm_signal_eos_reached
    linkageType: ''
    returnType: void
    signature: void gf_odm_on_eos(GF_ObjectManager *odm, GF_FilterPid *pid)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_is_root
      Src: /src/gpac/src/compositor/object_manager.c:1199,1
    - Dst: gf_scene_check_clocks
      Src: /src/gpac/src/compositor/object_manager.c:1203,1
    - Dst: gf_sc_is_over
      Src: /src/gpac/src/compositor/object_manager.c:1207,1
    - Dst: gf_odm_service_media_event
      Src: /src/gpac/src/compositor/object_manager.c:1210,1
    - Dst: gf_sc_check_end_of_scene
      Src: /src/gpac/src/compositor/object_manager.c:1214,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/object_manager.c:1217,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1220
      start: 1197
    functionDepth: 1
    functionLinenumber: 1197
    functionLinenumberEnd: 1220
    functionName: gf_odm_signal_eos_reached
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - gf_sc_send_event
    - gf_scene_check_clocks
    - gf_sc_check_end_of_scene
    - gf_sc_is_over
    - gf_odm_service_media_event
    - gf_scene_is_root
    linkageType: ''
    returnType: void
    signature: void gf_odm_signal_eos_reached(GF_ObjectManager *odm)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_set_timeshift_depth
      Src: /src/gpac/src/compositor/object_manager.c:1233,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - odm
    - stream_timeshift
    argTypes:
    - GF_ObjectManager*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1234
      start: 1223
    functionDepth: 1
    functionLinenumber: 1223
    functionLinenumberEnd: 1234
    functionName: gf_odm_set_timeshift_depth
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - gf_scene_set_timeshift_depth
    linkageType: ''
    returnType: void
    signature: void gf_odm_set_timeshift_depth(GF_ObjectManager *odm, u32 stream_timeshift)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1244
      start: 1237
    functionDepth: 0
    functionLinenumber: 1237
    functionLinenumberEnd: 1244
    functionName: gf_odm_get_media_clock
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Clock
    signature: GF_Clock *gf_odm_get_media_clock(GF_ObjectManager *odm)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - odm
    - ck
    argTypes:
    - GF_ObjectManager*
    - GF_Clock*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1251
      start: 1247
    functionDepth: 0
    functionLinenumber: 1247
    functionLinenumberEnd: 1251
    functionName: gf_odm_shares_clock
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_odm_shares_clock(GF_ObjectManager *odm, GF_Clock *ck)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:1274,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/compositor/object_manager.c:1274,1
    - Dst: gf_scene_get_root_scene
      Src: /src/gpac/src/compositor/object_manager.c:1278,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:1280,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/compositor/object_manager.c:1280,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/object_manager.c:1280,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/object_manager.c:1282,1
    - Dst: gf_clock_pause
      Src: /src/gpac/src/compositor/object_manager.c:1283,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/object_manager.c:1286,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1290,1
    - Dst: gf_clock_pause
      Src: /src/gpac/src/compositor/object_manager.c:1291,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/object_manager.c:1298,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1310,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/object_manager.c:1313,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1318
      start: 1254
    functionDepth: 5
    functionLinenumber: 1254
    functionLinenumberEnd: 1318
    functionName: gf_odm_pause
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - gf_node_event_out
    - GF_LOG
    - GF_FEVT_INIT
    - gf_clock_pause
    - gf_filter_pid_send_event
    - gf_clock_time
    - gf_list_enum
    - gf_scene_get_root_scene
    - gf_filter_pid_get_name
    linkageType: ''
    returnType: void
    signature: void gf_odm_pause(GF_ObjectManager *odm)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_get_mediacontrol
      Src: /src/gpac/src/compositor/object_manager.c:1343,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:1346,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/compositor/object_manager.c:1346,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/object_manager.c:1346,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/object_manager.c:1348,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/object_manager.c:1353,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/object_manager.c:1353,1
    - Dst: gf_clock_resume
      Src: /src/gpac/src/compositor/object_manager.c:1356,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/object_manager.c:1358,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1361,1
    - Dst: gf_clock_resume
      Src: /src/gpac/src/compositor/object_manager.c:1362,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/object_manager.c:1367,1
    - Dst: gf_clock_set_speed
      Src: /src/gpac/src/compositor/object_manager.c:1373,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1378,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/object_manager.c:1381,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 39
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1385
      start: 1320
    functionDepth: 5
    functionLinenumber: 1320
    functionLinenumberEnd: 1385
    functionName: gf_odm_resume
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - ABS
    - gf_node_event_out
    - gf_filter_pid_send_event
    - gf_odm_get_mediacontrol
    - GF_LOG
    - gf_clock_set_speed
    - GF_FEVT_INIT
    - gf_clock_resume
    - gf_clock_time
    - gf_list_enum
    - gf_filter_pid_get_name
    linkageType: ''
    returnType: void
    signature: void gf_odm_resume(GF_ObjectManager *odm)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_clock_set_speed
      Src: /src/gpac/src/compositor/object_manager.c:1398,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/object_manager.c:1400,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/object_manager.c:1403,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/object_manager.c:1404,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/object_manager.c:1404,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/object_manager.c:1407,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1410,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/object_manager.c:1413,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 3
    argNames:
    - odm
    - speed
    - adjust_clock_speed
    argTypes:
    - GF_ObjectManager*
    - Fixed
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1415
      start: 1387
    functionDepth: 1
    functionLinenumber: 1387
    functionLinenumberEnd: 1415
    functionName: gf_odm_set_speed
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - ABS
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_list_enum
    - FIX2FLT
    - gf_clock_set_speed
    linkageType: ''
    returnType: void
    signature: void gf_odm_set_speed(GF_ObjectManager *odm, Fixed speed, Bool adjust_clock_speed)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1422,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/object_manager.c:1424,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - odm
    - descName
    argTypes:
    - GF_ObjectManager*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1427
      start: 1417
    functionDepth: 1
    functionLinenumber: 1417
    functionLinenumberEnd: 1427
    functionName: gf_odm_find_segment
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    - stricmp
    linkageType: ''
    returnType: GF_Segment
    signature: GF_Segment *gf_odm_find_segment(GF_ObjectManager *odm, char *descName)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1434,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/compositor/object_manager.c:1437,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/object_manager.c:1441,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - odm
    - seg
    - list
    argTypes:
    - GF_ObjectManager*
    - GF_Segment*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1442
      start: 1429
    functionDepth: 1
    functionLinenumber: 1429
    functionLinenumberEnd: 1442
    functionName: gf_odm_insert_segment
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_enum
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void gf_odm_insert_segment(GF_ObjectManager *odm, GF_Segment *seg,
      GF_List *list)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/compositor/object_manager.c:1455,1
    - Dst: strcpy
      Src: /src/gpac/src/compositor/object_manager.c:1458,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/object_manager.c:1460,1
    - Dst: strcpy
      Src: /src/gpac/src/compositor/object_manager.c:1461,1
    - Dst: strcpy
      Src: /src/gpac/src/compositor/object_manager.c:1463,1
    - Dst: gf_odm_find_segment
      Src: /src/gpac/src/compositor/object_manager.c:1464,1
    - Dst: gf_odm_find_segment
      Src: /src/gpac/src/compositor/object_manager.c:1466,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/object_manager.c:1469,1
    - Dst: strcpy
      Src: /src/gpac/src/compositor/object_manager.c:1471,1
    - Dst: gf_odm_find_segment
      Src: /src/gpac/src/compositor/object_manager.c:1472,1
    - Dst: gf_odm_find_segment
      Src: /src/gpac/src/compositor/object_manager.c:1478,1
    - Dst: gf_odm_insert_segment
      Src: /src/gpac/src/compositor/object_manager.c:1480,1
    - Dst: gf_odm_insert_segment
      Src: /src/gpac/src/compositor/object_manager.c:1484,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1486,1
    - Dst: gf_odm_insert_segment
      Src: /src/gpac/src/compositor/object_manager.c:1492,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 46
    argCount: 3
    argNames:
    - odm
    - list
    - url
    argTypes:
    - GF_ObjectManager*
    - GF_List*
    - MFURL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1495
      start: 1445
    functionDepth: 2
    functionLinenumber: 1445
    functionLinenumberEnd: 1495
    functionName: gf_odm_init_segments
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - gf_odm_find_segment
    - strcpy
    - strstr
    - gf_odm_insert_segment
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void gf_odm_init_segments(GF_ObjectManager *odm, GF_List *list, MFURL
      *url)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/compositor/object_manager.c:1502,1
    - Dst: gf_filter_pid_get_first_packet_cts
      Src: /src/gpac/src/compositor/object_manager.c:1505,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/compositor/object_manager.c:1507,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:1511,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/compositor/object_manager.c:1516,1
    - Dst: gf_clock_set_time
      Src: /src/gpac/src/compositor/object_manager.c:1522,1
    - Dst: gf_filter_pid_first_packet_is_blocking_ref
      Src: /src/gpac/src/compositor/object_manager.c:1529,1
    - Dst: gf_clock_buffer_off
      Src: /src/gpac/src/compositor/object_manager.c:1542,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/src/compositor/object_manager.c:1543,1
    - Dst: gf_clock_buffer_off
      Src: /src/gpac/src/compositor/object_manager.c:1558,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 51
    argCount: 5
    argNames:
    - scene
    - odm
    - pid
    - check_full_buffer
    - signal_eob
    argTypes:
    - GF_Scene*
    - GF_ObjectManager*
    - GF_FilterPid*
    - Bool
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1561
      start: 1499
    functionDepth: 1
    functionLinenumber: 1499
    functionLinenumberEnd: 1561
    functionName: odm_update_buffer
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_drop_packet
    - gf_filter_pid_first_packet_is_blocking_ref
    - GF_LOG
    - gf_filter_pid_get_first_packet_cts
    - gf_clock_buffer_off
    - gf_clock_set_time
    - gf_filter_pid_has_seen_eos
    - gf_filter_pid_get_timescale
    - gf_filter_pid_query_buffer_duration
    linkageType: ''
    returnType: Bool
    signature: Bool odm_update_buffer(GF_Scene *scene, GF_ObjectManager *odm, GF_FilterPid
      *pid, Bool check_full_buffer, Bool *signal_eob)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/object_manager.c:1576,1
    - Dst: gf_odm_check_clock_mediatime
      Src: /src/gpac/src/compositor/object_manager.c:1584,1
    - Dst: gf_filter_pid_first_packet_is_empty
      Src: /src/gpac/src/compositor/object_manager.c:1590,1
    - Dst: gf_filter_pid_get_first_packet_cts
      Src: /src/gpac/src/compositor/object_manager.c:1591,1
    - Dst: gf_filter_pid_get_clock_info
      Src: /src/gpac/src/compositor/object_manager.c:1594,1
    - Dst: gf_clock_set_time
      Src: /src/gpac/src/compositor/object_manager.c:1598,1
    - Dst: gf_clock_set_time
      Src: /src/gpac/src/compositor/object_manager.c:1602,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/compositor/object_manager.c:1602,1
    - Dst: gf_filter_pid_first_packet_is_blocking_ref
      Src: /src/gpac/src/compositor/object_manager.c:1604,1
    - Dst: odm_update_buffer
      Src: /src/gpac/src/compositor/object_manager.c:1607,1
    - Dst: odm_update_buffer
      Src: /src/gpac/src/compositor/object_manager.c:1614,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1616,1
    - Dst: odm_update_buffer
      Src: /src/gpac/src/compositor/object_manager.c:1617,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1625,1
    - Dst: odm_update_buffer
      Src: /src/gpac/src/compositor/object_manager.c:1630,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/src/compositor/object_manager.c:1632,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/compositor/object_manager.c:1633,1
    - Dst: gf_clock_buffer_on
      Src: /src/gpac/src/compositor/object_manager.c:1635,1
    - Dst: gf_scene_buffering_info
      Src: /src/gpac/src/compositor/object_manager.c:1644,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/object_manager.c:1654,1
    - Dst: gf_timestamp_to_clocktime
      Src: /src/gpac/src/compositor/object_manager.c:1658,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:1661,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/compositor/object_manager.c:1665,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/compositor/object_manager.c:1667,1
    - Dst: gf_timestamp_to_clocktime
      Src: /src/gpac/src/compositor/object_manager.c:1669,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/object_manager.c:1672,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/object_manager.c:1672,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:1674,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/object_manager.c:1678,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:1690,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/object_manager.c:1692,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/object_manager.c:1694,1
    - Dst: gf_clock_set_time
      Src: /src/gpac/src/compositor/object_manager.c:1701,1
    - Dst: gf_clock_set_time
      Src: /src/gpac/src/compositor/object_manager.c:1703,1
    - Dst: gf_clock_to_media_time
      Src: /src/gpac/src/compositor/object_manager.c:1708,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/compositor/object_manager.c:1710,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/compositor/object_manager.c:1715,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:1719,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/object_manager.c:1719,1
    - Dst: gf_odm_service_media_event
      Src: /src/gpac/src/compositor/object_manager.c:1723,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 120
    argCount: 2
    argNames:
    - odm
    - pid
    argTypes:
    - GF_ObjectManager*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1726
      start: 1564
    functionDepth: 2
    functionLinenumber: 1564
    functionLinenumberEnd: 1726
    functionName: gf_odm_check_buffering
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_get_first_packet_cts
    - gf_list_count
    - gf_clock_to_media_time
    - gf_filter_pid_query_buffer_duration
    - gf_assert
    - gf_list_get
    - gf_filter_pid_has_seen_eos
    - odm_update_buffer
    - gf_filter_pid_get_timescale
    - gf_filter_pid_first_packet_is_blocking_ref
    - gf_filter_pid_get_clock_info
    - gf_clock_buffer_on
    - GF_LOG
    - gf_odm_service_media_event
    - gf_filter_pid_first_packet_is_empty
    - gf_clock_time
    - gf_list_enum
    - gf_timestamp_rescale
    - gf_scene_buffering_info
    - ABS
    - gf_timestamp_to_clocktime
    - gf_clock_set_time
    - FIX2INT
    - gf_odm_check_clock_mediatime
    linkageType: ''
    returnType: Bool
    signature: Bool gf_odm_check_buffering(GF_ObjectManager *odm, GF_FilterPid *pid)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/compositor/object_manager.c:1745,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1754,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/compositor/object_manager.c:1756,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 5
    argNames:
    - scene_ns
    - odm
    - media_event
    - min_time
    - min_buffer
    argTypes:
    - GF_SceneNamespace*
    - GF_ObjectManager*
    - GF_DOMMediaEvent*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1764
      start: 1729
    functionDepth: 1
    functionLinenumber: 1729
    functionLinenumberEnd: 1764
    functionName: gf_odm_collect_buffer_info
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    - gf_filter_pid_query_buffer_duration
    linkageType: ''
    returnType: void
    signature: void gf_odm_collect_buffer_info(GF_SceneNamespace *scene_ns, GF_ObjectManager
      *odm, GF_DOMMediaEvent *media_event, u32 *min_time, u32 *min_buffer)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_event_target_count
      Src: /src/gpac/src/compositor/object_manager.c:1776,1
    - Dst: gf_mo_event_target_count
      Src: /src/gpac/src/compositor/object_manager.c:1785,1
    - Dst: memset
      Src: /src/gpac/src/compositor/object_manager.c:1793,1
    - Dst: gf_odm_collect_buffer_info
      Src: /src/gpac/src/compositor/object_manager.c:1807,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1811,1
    - Dst: gf_odm_collect_buffer_info
      Src: /src/gpac/src/compositor/object_manager.c:1813,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/object_manager.c:1825,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/object_manager.c:1838,1
    - Dst: gf_sc_queue_dom_event_on_target
      Src: /src/gpac/src/compositor/object_manager.c:1840,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/object_manager.c:1843,1
    - Dst: gf_sc_queue_dom_event
      Src: /src/gpac/src/compositor/object_manager.c:1844,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 52
    argCount: 7
    argNames:
    - odm
    - event_type
    - loaded_size
    - total_size
    - bytes_per_sec
    - buffer_level_plus_one
    - min_buffer_time
    argTypes:
    - GF_ObjectManager*
    - GF_EventType
    - u64
    - u64
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1847
      start: 1767
    functionDepth: 2
    functionLinenumber: 1767
    functionLinenumberEnd: 1847
    functionName: gf_odm_service_media_event_with_download
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - INT2FIX
    - gf_sc_queue_dom_event
    - gf_odm_collect_buffer_info
    - memset
    - gf_sc_queue_dom_event_on_target
    - gf_sg_get_root_node
    - gf_list_enum
    - gf_mo_event_target_count
    linkageType: ''
    returnType: void
    signature: void gf_odm_service_media_event_with_download(GF_ObjectManager *odm,
      GF_EventType event_type, u64 loaded_size, u64 total_size, u32 bytes_per_sec,
      u32 buffer_level_plus_one, u32 min_buffer_time)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_service_media_event_with_download
      Src: /src/gpac/src/compositor/object_manager.c:1851,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - odm
    - event_type
    argTypes:
    - GF_ObjectManager*
    - GF_EventType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1852
      start: 1849
    functionDepth: 3
    functionLinenumber: 1849
    functionLinenumberEnd: 1852
    functionName: gf_odm_service_media_event
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 5
    functionsReached:
    - gf_odm_service_media_event_with_download
    linkageType: ''
    returnType: void
    signature: void gf_odm_service_media_event(GF_ObjectManager *odm, GF_EventType
      event_type)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/compositor/object_manager.c:1863,1
    - Dst: gf_odm_stop
      Src: /src/gpac/src/compositor/object_manager.c:1866,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1868
      start: 1854
    functionDepth: 4
    functionLinenumber: 1854
    functionLinenumberEnd: 1868
    functionName: gf_odm_stop_or_destroy
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - gf_odm_stop
    - gf_odm_disconnect
    linkageType: ''
    returnType: Bool
    signature: Bool gf_odm_stop_or_destroy(GF_ObjectManager *odm)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_statistics
      Src: /src/gpac/src/compositor/object_manager.c:1874,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 3
    argNames:
    - pid
    - info
    - scalable_addon
    argTypes:
    - GF_FilterPid*
    - GF_MediaInfo*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1890
      start: 1871
    functionDepth: 1
    functionLinenumber: 1871
    functionLinenumberEnd: 1890
    functionName: get_codec_stats
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_statistics
    linkageType: ''
    returnType: void
    signature: void get_codec_stats(GF_FilterPid *pid, GF_MediaInfo *info, Bool scalable_addon)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/object_manager.c:1902,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/object_manager.c:1921,1
    - Dst: gf_filter_pid_get_statistics
      Src: /src/gpac/src/compositor/object_manager.c:1923,1
    - Dst: gf_filter_pid_set_rt_stats
      Src: /src/gpac/src/compositor/object_manager.c:1924,1
    - Dst: gf_filter_pid_share_origin
      Src: /src/gpac/src/compositor/object_manager.c:1925,1
    - Dst: gf_filter_pid_first_pid_for_source
      Src: /src/gpac/src/compositor/object_manager.c:1927,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/object_manager.c:1931,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/object_manager.c:1933,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/object_manager.c:1934,1
    - Dst: gf_filter_pid_first_pid_for_source
      Src: /src/gpac/src/compositor/object_manager.c:1936,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:1940,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:1942,1
    - Dst: gf_clock_media_time
      Src: /src/gpac/src/compositor/object_manager.c:1958,1
    - Dst: gf_clock_media_time
      Src: /src/gpac/src/compositor/object_manager.c:1965,1
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/object_manager.c:1982,1
    - Dst: gf_clock_is_started
      Src: /src/gpac/src/compositor/object_manager.c:1990,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/compositor/object_manager.c:1998,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:2004,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/compositor/object_manager.c:2011,1
    - Dst: gf_filter_pid_get_filter_name
      Src: /src/gpac/src/compositor/object_manager.c:2022,1
    - Dst: gf_filter_pid_get_buffer_occupancy
      Src: /src/gpac/src/compositor/object_manager.c:2025,1
    - Dst: get_codec_stats
      Src: /src/gpac/src/compositor/object_manager.c:2027,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:2029,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:2032,1
    - Dst: gf_sg_get_scene_size_info
      Src: /src/gpac/src/compositor/object_manager.c:2038,1
    - Dst: gf_mo_get_visual_info
      Src: /src/gpac/src/compositor/object_manager.c:2042,1
    - Dst: gf_mo_get_audio_info
      Src: /src/gpac/src/compositor/object_manager.c:2045,1
    - Dst: gf_mo_get_visual_info
      Src: /src/gpac/src/compositor/object_manager.c:2049,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:2056,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:2058,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:2060,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:2064,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:2066,1
    CyclomaticComplexity: 59
    EdgeCount: 59
    ICount: 159
    argCount: 2
    argNames:
    - odm
    - info
    argTypes:
    - GF_ObjectManager*
    - GF_MediaInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2076
      start: 1892
    functionDepth: 2
    functionLinenumber: 1892
    functionLinenumberEnd: 2076
    functionName: gf_odm_get_object_info
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - memset
    - gf_filter_pid_set_rt_stats
    - gf_odm_get_media_clock
    - gf_filter_pid_get_statistics
    - gf_filter_get_name
    - gf_sys_is_cov_mode
    - gf_filter_pid_query_buffer_duration
    - gf_list_get
    - gf_clock_is_started
    - gf_clock_media_time
    - gf_filter_pid_get_filter_name
    - gf_filter_pid_first_pid_for_source
    - gf_mo_get_visual_info
    - gf_filter_pid_get_buffer_occupancy
    - gf_filter_pid_share_origin
    - gf_filter_pid_get_property
    - get_codec_stats
    - gf_mo_get_audio_info
    - gf_sg_get_scene_size_info
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odm_get_object_info(GF_ObjectManager *odm, GF_MediaInfo
      *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/compositor/object_manager.c:2089,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/compositor/object_manager.c:2092,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/compositor/object_manager.c:2095,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/compositor/object_manager.c:2097,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/compositor/object_manager.c:2101,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/object_manager.c:2110,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/object_manager.c:2111,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2114
      start: 2079
    functionDepth: 1
    functionLinenumber: 2079
    functionLinenumberEnd: 2114
    functionName: gf_odm_check_clock_mediatime
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - gf_filter_pck_get_property
    - gf_list_get
    - gf_filter_pid_get_timescale
    - gf_list_count
    - gf_filter_pck_get_cts
    - gf_filter_pid_get_packet
    - gf_timestamp_rescale
    linkageType: ''
    returnType: void
    signature: void gf_odm_check_clock_mediatime(GF_ObjectManager *odm)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:40,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/compositor_2d.c:40,1
    - Dst: gf_evg_surface_clear
      Src: /src/gpac/src/compositor/compositor_2d.c:49,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/compositor_2d.c:52,1
    - Dst: ra_union_rect
      Src: /src/gpac/src/compositor/compositor_2d.c:54,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:57,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/compositor/compositor_2d.c:57,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:58,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/compositor/compositor_2d.c:58,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:59,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/compositor/compositor_2d.c:59,1
    - Dst: visual_3d_clear
      Src: /src/gpac/src/compositor/compositor_2d.c:60,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 4
    argNames:
    - visual
    - rc
    - BackColor
    - is_offscreen_clear
    argTypes:
    - GF_VisualManager*
    - GF_IRect*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 37
    functionDepth: 3
    functionLinenumber: 37
    functionLinenumberEnd: 62
    functionName: compositor_2d_hybgl_clear_surface
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 1
    functionsReached:
    - GF_COL_G
    - INT2FIX
    - GF_COL_B
    - GF_COL_A
    - visual_3d_clear
    - GF_COL_R
    - ra_union_rect
    - gf_evg_surface_clear
    linkageType: ''
    returnType: void
    signature: void compositor_2d_hybgl_clear_surface(GF_VisualManager *visual, GF_IRect
      *rc, u32 BackColor, u32 is_offscreen_clear)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_set_data
      Src: /src/gpac/src/compositor/compositor_2d.c:76,1
    - Dst: gf_sc_texture_set_data
      Src: /src/gpac/src/compositor/compositor_2d.c:81,1
    - Dst: memset
      Src: /src/gpac/src/compositor/compositor_2d.c:90,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/compositor_2d.c:94,1
    - Dst: visual_3d_set_state
      Src: /src/gpac/src/compositor/compositor_2d.c:96,1
    - Dst: visual_3d_enable_antialias
      Src: /src/gpac/src/compositor/compositor_2d.c:97,1
    - Dst: gf_sc_texture_set_blend_mode
      Src: /src/gpac/src/compositor/compositor_2d.c:98,1
    - Dst: gf_sc_texture_enable
      Src: /src/gpac/src/compositor/compositor_2d.c:101,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:107,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:108,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:110,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:111,1
    - Dst: mesh_new_rectangle
      Src: /src/gpac/src/compositor/compositor_2d.c:112,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:114,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:114,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:115,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:115,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:115,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/compositor_2d.c:117,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:117,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/compositor_2d.c:118,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:118,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/compositor_2d.c:119,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:119,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/compositor_2d.c:120,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:120,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/compositor_2d.c:136,1
    - Dst: gf_sc_texture_disable
      Src: /src/gpac/src/compositor/compositor_2d.c:137,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:141,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:142,1
    - Dst: mesh_new_rectangle
      Src: /src/gpac/src/compositor/compositor_2d.c:143,1
    - Dst: memset
      Src: /src/gpac/src/compositor/compositor_2d.c:153,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 70
    argCount: 2
    argNames:
    - compositor
    - area
    argTypes:
    - GF_Compositor*
    - GF_IRect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 160
    functionName: compositor_2d_hybgl_flush_video
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached:
    - gf_sc_texture_set_data
    - visual_3d_enable_antialias
    - mesh_new_rectangle
    - INT2FIX
    - gf_sc_texture_enable
    - gf_sc_texture_disable
    - visual_3d_set_state
    - gf_divfix
    - visual_3d_mesh_paint
    - gf_mx_init
    - memset
    - gf_sc_texture_set_blend_mode
    linkageType: ''
    returnType: void
    signature: void compositor_2d_hybgl_flush_video(GF_Compositor *compositor, GF_IRect
      *area)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_enable
      Src: /src/gpac/src/compositor/compositor_2d.c:173,1
    - Dst: mesh_new_rectangle
      Src: /src/gpac/src/compositor/compositor_2d.c:181,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/compositor_2d.c:183,1
    - Dst: gf_sc_texture_disable
      Src: /src/gpac/src/compositor/compositor_2d.c:184,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - visual
    - tr_state
    - ctx
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    - DrawableContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 188
    functionName: compositor_2d_hybgl_draw_bitmap
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached:
    - gf_sc_texture_disable
    - mesh_new_rectangle
    - visual_3d_mesh_paint
    - gf_sc_texture_enable
    linkageType: ''
    returnType: Bool
    signature: Bool compositor_2d_hybgl_draw_bitmap(GF_VisualManager *visual, GF_TraverseState
      *tr_state, DrawableContext *ctx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor_2d.c:196,1
    - Dst: gf_sc_texture_release
      Src: /src/gpac/src/compositor/compositor_2d.c:200,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor_2d.c:202,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/compositor_2d.c:206,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/compositor_2d.c:210,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 192
    functionDepth: 1
    functionLinenumber: 192
    functionLinenumberEnd: 213
    functionName: compositor_2d_reset_gl_auto
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sc_texture_release
    - mesh_free
    linkageType: ''
    returnType: void
    signature: void compositor_2d_reset_gl_auto(GF_Compositor *compositor)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: visual_3d_setup
      Src: /src/gpac/src/compositor/compositor_2d.c:220,1
    - Dst: glViewport
      Src: /src/gpac/src/compositor/compositor_2d.c:224,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:227,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:228,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:231,1
    - Dst: camera_update
      Src: /src/gpac/src/compositor/compositor_2d.c:234,1
    - Dst: visual_3d_projection_matrix_modified
      Src: /src/gpac/src/compositor/compositor_2d.c:236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 238
    functionName: compositor_2d_setup_opengl
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - glViewport
    - visual_3d_setup
    - visual_3d_projection_matrix_modified
    - camera_update
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err compositor_2d_setup_opengl(GF_VisualManager *visual)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/compositor_2d.c:249,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/compositor_2d.c:256,1
    - Dst: gf_sc_texture_release
      Src: /src/gpac/src/compositor/compositor_2d.c:259,1
    - Dst: memset
      Src: /src/gpac/src/compositor/compositor_2d.c:268,1
    - Dst: gf_sc_texture_allocate
      Src: /src/gpac/src/compositor/compositor_2d.c:269,1
    - Dst: gf_sc_texture_set_data
      Src: /src/gpac/src/compositor/compositor_2d.c:270,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/compositor_2d.c:273,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/compositor_2d.c:276,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:278,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:279,1
    - Dst: mesh_new_rectangle
      Src: /src/gpac/src/compositor/compositor_2d.c:280,1
    - Dst: mesh_new_rectangle
      Src: /src/gpac/src/compositor/compositor_2d.c:281,1
    - Dst: memset
      Src: /src/gpac/src/compositor/compositor_2d.c:286,1
    - Dst: gf_evg_surface_attach_to_buffer
      Src: /src/gpac/src/compositor/compositor_2d.c:288,1
    - Dst: compositor_2d_setup_opengl
      Src: /src/gpac/src/compositor/compositor_2d.c:295,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 42
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 243
    functionDepth: 5
    functionLinenumber: 243
    functionLinenumberEnd: 300
    functionName: c2d_video_access_hybrid_opengl
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached:
    - gf_sc_texture_set_data
    - mesh_new_rectangle
    - INT2FIX
    - GF_SAFEALLOC
    - gf_evg_surface_attach_to_buffer
    - gf_sc_texture_release
    - compositor_2d_setup_opengl
    - gf_sc_texture_allocate
    - new_mesh
    - memset
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err c2d_video_access_hybrid_opengl(GF_VisualManager *visual)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_Compositor*::video_out::LockBackBuffer
      Src: /src/gpac/src/compositor/compositor_2d.c:310,1
    - Dst: gf_evg_surface_attach_to_buffer
      Src: /src/gpac/src/compositor/compositor_2d.c:314,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor_2d.c:322,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor_2d.c:325,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/compositor/compositor_2d.c:325,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/compositor/compositor_2d.c:325,1
    - Dst: GF_Compositor*::video_out::LockBackBuffer
      Src: /src/gpac/src/compositor/compositor_2d.c:327,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 303
    functionDepth: 5
    functionLinenumber: 303
    functionLinenumberEnd: 334
    functionName: c2d_get_video_access_normal
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached:
    - gf_pixel_fmt_name
    - gf_evg_surface_attach_to_buffer
    - GF_LOG
    - GF_Compositor*::video_out::LockBackBuffer
    - gf_error_to_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err c2d_get_video_access_normal(GF_VisualManager *visual)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c2d_video_access_hybrid_opengl
      Src: /src/gpac/src/compositor/compositor_2d.c:342,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 336
    functionDepth: 6
    functionLinenumber: 336
    functionLinenumberEnd: 347
    functionName: compositor_2d_get_video_access
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached:
    - c2d_video_access_hybrid_opengl
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err compositor_2d_get_video_access(GF_VisualManager *visual)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c2d_get_video_access_normal
      Src: /src/gpac/src/compositor/compositor_2d.c:352,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 349
    functionDepth: 6
    functionLinenumber: 349
    functionLinenumberEnd: 356
    functionName: compositor_2d_check_attached
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached:
    - c2d_get_video_access_normal
    linkageType: ''
    returnType: Bool
    signature: Bool compositor_2d_check_attached(GF_VisualManager *visual)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/compositor/compositor_2d.c:373,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/compositor/compositor_2d.c:374,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/compositor/compositor_2d.c:375,1
    - Dst: memset
      Src: /src/gpac/src/compositor/compositor_2d.c:377,1
    - Dst: GF_VisualManager*::compositor::video_out::Blit
      Src: /src/gpac/src/compositor/compositor_2d.c:403,1
    - Dst: visual_2d_clear_surface
      Src: /src/gpac/src/compositor/compositor_2d.c:407,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 39
    argCount: 4
    argNames:
    - visual
    - rc
    - BackColor
    - offscreen_clear
    argTypes:
    - GF_VisualManager*
    - GF_IRect*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 358
    functionDepth: 1
    functionLinenumber: 358
    functionLinenumberEnd: 408
    functionName: compositor_2d_clear_surface
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - visual_2d_clear_surface
    - GF_COL_R
    - memset
    - GF_VisualManager*::compositor::video_out::Blit
    linkageType: ''
    returnType: void
    signature: void compositor_2d_clear_surface(GF_VisualManager *visual, GF_IRect
      *rc, u32 BackColor, u32 offscreen_clear)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: compositor_2d_hybgl_flush_video
      Src: /src/gpac/src/compositor/compositor_2d.c:421,1
    - Dst: GF_Compositor*::video_out::LockOSContext
      Src: /src/gpac/src/compositor/compositor_2d.c:427,1
    - Dst: GF_Compositor*::video_out::LockBackBuffer
      Src: /src/gpac/src/compositor/compositor_2d.c:430,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 412
    functionDepth: 2
    functionLinenumber: 412
    functionLinenumberEnd: 433
    functionName: compositor_2d_release_video_access
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached:
    - GF_Compositor*::video_out::LockBackBuffer
    - compositor_2d_hybgl_flush_video
    - GF_Compositor*::video_out::LockOSContext
    linkageType: ''
    returnType: void
    signature: void compositor_2d_release_video_access(GF_VisualManager *visual)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor_2d.c:441,1
    - Dst: gf_mo_get_object_time
      Src: /src/gpac/src/compositor/compositor_2d.c:446,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor_2d.c:448,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor_2d.c:451,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - txh
    - push_time
    argTypes:
    - GF_TextureHandler*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 435
    functionDepth: 1
    functionLinenumber: 435
    functionLinenumberEnd: 453
    functionName: store_blit_times
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_sys_clock
    - gf_mo_get_object_time
    linkageType: ''
    returnType: void
    signature: void store_blit_times(GF_TextureHandler *txh, u32 push_time)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:489,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:492,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/compositor_2d.c:522,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/compositor_2d.c:522,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/compositor_2d.c:523,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/compositor_2d.c:523,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/compositor_2d.c:560,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:560,1
    - Dst: CEILING
      Src: /src/gpac/src/compositor/compositor_2d.c:562,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/compositor_2d.c:564,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:564,1
    - Dst: CEILING
      Src: /src/gpac/src/compositor/compositor_2d.c:566,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/compositor_2d.c:568,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:568,1
    - Dst: ROUND_FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:569,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/compositor_2d.c:571,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:571,1
    - Dst: ROUND_FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:572,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 97
    argCount: 8
    argNames:
    - visual
    - txh
    - clip
    - unclip
    - src
    - dst
    - disable_blit
    - has_scale
    argTypes:
    - GF_VisualManager*
    - GF_TextureHandler*
    - GF_IRect*
    - GF_Rect*
    - GF_Window*
    - GF_Window*
    - Bool*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 455
    functionDepth: 1
    functionLinenumber: 455
    functionLinenumberEnd: 588
    functionName: compositor_texture_rectangles
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - gf_divfix
    - CEILING
    - FIX2INT
    - ROUND_FIX
    linkageType: ''
    returnType: Bool
    signature: Bool compositor_texture_rectangles(GF_VisualManager *visual, GF_TextureHandler
      *txh, GF_IRect *clip, GF_Rect *unclip, GF_Window *src, GF_Window *dst, Bool
      *disable_blit, Bool *has_scale)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 534
    functionDepth: 0
    functionLinenumber: 534
    functionLinenumberEnd: 536
    functionName: ROUND_FIX
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ROUND_FIX(_v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 539
      start: 536
    functionDepth: 0
    functionLinenumber: 536
    functionLinenumberEnd: 539
    functionName: CEILING
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CEILING(_v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 540
    functionDepth: 0
    functionLinenumber: 540
    functionLinenumberEnd: 545
    functionName: ROUND_FIX
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ROUND_FIX(_v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 545
    functionDepth: 0
    functionLinenumber: 545
    functionLinenumberEnd: 550
    functionName: CEILING
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CEILING(_v)
  - BBCount: 62
    BranchProfiles: []
    Callsites:
    - Dst: compositor_texture_rectangles
      Src: /src/gpac/src/compositor/compositor_2d.c:615,1
    - Dst: gf_pixel_fmt_is_yuv
      Src: /src/gpac/src/compositor/compositor_2d.c:658,1
    - Dst: memset
      Src: /src/gpac/src/compositor/compositor_2d.c:708,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/compositor/compositor_2d.c:713,1
    - Dst: GF_TextureHandler*::frame_ifce::get_plane
      Src: /src/gpac/src/compositor/compositor_2d.c:724,1
    - Dst: GF_TextureHandler*::frame_ifce::get_plane
      Src: /src/gpac/src/compositor/compositor_2d.c:726,1
    - Dst: GF_TextureHandler*::frame_ifce::get_plane
      Src: /src/gpac/src/compositor/compositor_2d.c:727,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/compositor_2d.c:737,1
    - Dst: GF_VisualManager*::ClearSurface
      Src: /src/gpac/src/compositor/compositor_2d.c:762,1
    - Dst: visual_2d_get_drawable_context
      Src: /src/gpac/src/compositor/compositor_2d.c:770,1
    - Dst: gf_sc_texture_check_pause_on_first_load
      Src: /src/gpac/src/compositor/compositor_2d.c:776,1
    - Dst: visual_2d_release_raster
      Src: /src/gpac/src/compositor/compositor_2d.c:788,1
    - Dst: GF_VisualManager*::compositor::video_out::Flush
      Src: /src/gpac/src/compositor/compositor_2d.c:789,1
    - Dst: visual_2d_init_raster
      Src: /src/gpac/src/compositor/compositor_2d.c:790,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor_2d.c:794,1
    - Dst: GF_VisualManager*::compositor::video_out::Blit
      Src: /src/gpac/src/compositor/compositor_2d.c:795,1
    - Dst: store_blit_times
      Src: /src/gpac/src/compositor/compositor_2d.c:798,1
    - Dst: gf_sc_texture_check_pause_on_first_load
      Src: /src/gpac/src/compositor/compositor_2d.c:804,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor_2d.c:807,1
    - Dst: visual_2d_release_raster
      Src: /src/gpac/src/compositor/compositor_2d.c:813,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor_2d.c:816,1
    - Dst: GF_VisualManager*::compositor::video_out::Blit
      Src: /src/gpac/src/compositor/compositor_2d.c:817,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor_2d.c:823,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor_2d.c:828,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor_2d.c:831,1
    - Dst: store_blit_times
      Src: /src/gpac/src/compositor/compositor_2d.c:834,1
    - Dst: gf_sc_texture_check_pause_on_first_load
      Src: /src/gpac/src/compositor/compositor_2d.c:839,1
    - Dst: visual_2d_init_raster
      Src: /src/gpac/src/compositor/compositor_2d.c:844,1
    - Dst: GF_VisualManager*::compositor::video_out::LockBackBuffer
      Src: /src/gpac/src/compositor/compositor_2d.c:851,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor_2d.c:854,1
    - Dst: gf_stretch_bits
      Src: /src/gpac/src/compositor/compositor_2d.c:856,1
    - Dst: store_blit_times
      Src: /src/gpac/src/compositor/compositor_2d.c:860,1
    - Dst: GF_VisualManager*::compositor::video_out::LockBackBuffer
      Src: /src/gpac/src/compositor/compositor_2d.c:861,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor_2d.c:864,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/compositor/compositor_2d.c:864,1
    - Dst: visual_2d_init_raster
      Src: /src/gpac/src/compositor/compositor_2d.c:867,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor_2d.c:873,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/compositor/compositor_2d.c:873,1
    - Dst: visual_2d_init_raster
      Src: /src/gpac/src/compositor/compositor_2d.c:876,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor_2d.c:880,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor_2d.c:883,1
    - Dst: visual_2d_init_raster
      Src: /src/gpac/src/compositor/compositor_2d.c:887,1
    CyclomaticComplexity: 73
    EdgeCount: 73
    ICount: 227
    argCount: 8
    argNames:
    - visual
    - txh
    - ctx
    - clip
    - unclip
    - alpha
    - tr_state
    - force_soft_blt
    argTypes:
    - GF_VisualManager*
    - GF_TextureHandler*
    - DrawableContext*
    - GF_IRect*
    - GF_Rect*
    - u8
    - GF_TraverseState*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 889
      start: 590
    functionDepth: 2
    functionLinenumber: 590
    functionLinenumberEnd: 889
    functionName: compositor_2d_draw_bitmap_ex
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached:
    - visual_2d_get_drawable_context
    - GF_SAFEALLOC
    - visual_2d_init_raster
    - compositor_texture_rectangles
    - memset
    - GF_VisualManager*::compositor::video_out::LockBackBuffer
    - visual_2d_release_raster
    - GF_VisualManager*::compositor::video_out::Blit
    - gf_sc_texture_check_pause_on_first_load
    - gf_sys_clock
    - gf_pixel_fmt_is_yuv
    - GF_VisualManager*::ClearSurface
    - GF_TextureHandler*::frame_ifce::get_plane
    - GF_LOG
    - GF_VisualManager*::compositor::video_out::Flush
    - gf_error_to_string
    - gf_sc_next_frame_state
    - gf_stretch_bits
    - store_blit_times
    - gf_pixel_get_size_info
    linkageType: ''
    returnType: Bool
    signature: Bool compositor_2d_draw_bitmap_ex(GF_VisualManager *visual, GF_TextureHandler
      *txh, DrawableContext *ctx, GF_IRect *clip, GF_Rect *unclip, u8 alpha, GF_TraverseState
      *tr_state, Bool force_soft_blt)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/compositor_2d.c:916,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/compositor_2d.c:918,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/src/compositor/compositor_2d.c:929,1
    - Dst: GF_VisualManager*::compositor::video_out::BlitTexture
      Src: /src/gpac/src/compositor/compositor_2d.c:941,1
    - Dst: compositor_2d_draw_bitmap_ex
      Src: /src/gpac/src/compositor/compositor_2d.c:950,1
    - Dst: gf_irect_intersect
      Src: /src/gpac/src/compositor/compositor_2d.c:964,1
    - Dst: GF_VisualManager*::compositor::video_out::BlitTexture
      Src: /src/gpac/src/compositor/compositor_2d.c:967,1
    - Dst: compositor_2d_draw_bitmap_ex
      Src: /src/gpac/src/compositor/compositor_2d.c:975,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 63
    argCount: 3
    argNames:
    - visual
    - tr_state
    - ctx
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    - DrawableContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 893
    functionDepth: 3
    functionLinenumber: 893
    functionLinenumberEnd: 983
    functionName: compositor_2d_draw_bitmap
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached:
    - gf_sc_set_option
    - GF_COL_A
    - GF_VisualManager*::compositor::video_out::BlitTexture
    - gf_irect_intersect
    - compositor_2d_draw_bitmap_ex
    linkageType: ''
    returnType: Bool
    signature: Bool compositor_2d_draw_bitmap(GF_VisualManager *visual, GF_TraverseState
      *tr_state, DrawableContext *ctx)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/compositor_2d.c:1055,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1055,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1055,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/compositor_2d.c:1057,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1057,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1057,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/compositor_2d.c:1063,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/compositor_2d.c:1063,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1063,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/compositor_2d.c:1064,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/compositor_2d.c:1064,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1064,1
    - Dst: memset
      Src: /src/gpac/src/compositor/compositor_2d.c:1081,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor_2d.c:1107,1
    - Dst: GF_Compositor*::video_out::ProcessEvent
      Src: /src/gpac/src/compositor/compositor_2d.c:1111,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor_2d.c:1116,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/compositor/compositor_2d.c:1116,1
    - Dst: compositor_2d_set_aspect_ratio
      Src: /src/gpac/src/compositor/compositor_2d.c:1117,1
    - Dst: memset
      Src: /src/gpac/src/compositor/compositor_2d.c:1121,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/compositor_2d.c:1125,1
    - Dst: gf_opengl_init
      Src: /src/gpac/src/compositor/compositor_2d.c:1133,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1137,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1138,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1140,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1141,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor_2d.c:1143,1
    - Dst: compositor_set_ar_scale
      Src: /src/gpac/src/compositor/compositor_2d.c:1146,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 133
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1148
      start: 986
    functionDepth: 1
    functionLinenumber: 986
    functionLinenumberEnd: 1148
    functionName: compositor_2d_set_aspect_ratio
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 1
    functionsReached:
    - INT2FIX
    - gf_opengl_init
    - gf_sc_send_event
    - GF_LOG
    - gf_divfix
    - compositor_2d_set_aspect_ratio
    - FIX2INT
    - memset
    - GF_Compositor*::video_out::ProcessEvent
    - gf_error_to_string
    - compositor_set_ar_scale
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err compositor_2d_set_aspect_ratio(GF_Compositor *compositor)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/compositor_2d.c:1156,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/compositor_2d.c:1159,1
    - Dst: memset
      Src: /src/gpac/src/compositor/compositor_2d.c:1162,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1170,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1171,1
    - Dst: gf_sg_get_scene_size_info
      Src: /src/gpac/src/compositor/compositor_2d.c:1174,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1175,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1176,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1182,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1183,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1184,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1185,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/compositor_2d.c:1193,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/compositor_2d.c:1193,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/compositor_2d.c:1196,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/compositor_2d.c:1197,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/compositor_2d.c:1197,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 37
    argCount: 6
    argNames:
    - compositor
    - subscene
    - old_z
    - old_tx
    - old_ty
    - is_resize
    argTypes:
    - GF_Compositor*
    - GF_SceneGraph*
    - Fixed
    - Fixed
    - Fixed
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1201
      start: 1150
    functionDepth: 9
    functionLinenumber: 1150
    functionLinenumberEnd: 1201
    functionName: compositor_send_resize_event
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - INT2FIX
    - gf_dom_event_fire
    - memset
    - gf_sg_get_scene_size_info
    - gf_sg_get_root_node
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void compositor_send_resize_event(GF_Compositor *compositor, GF_SceneGraph
      *subscene, Fixed old_z, Fixed old_tx, Fixed old_ty, Bool is_resize)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor_2d.c:1207,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/compositor_2d.c:1217,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/compositor_2d.c:1218,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/compositor_2d.c:1219,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1226,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1227,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/compositor_2d.c:1228,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/compositor_2d.c:1229,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/compositor_2d.c:1234,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/compositor/compositor_2d.c:1238,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/compositor_2d.c:1241,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/compositor/compositor_2d.c:1244,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/compositor_2d.c:1248,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/compositor_2d.c:1248,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/compositor_2d.c:1248,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/compositor_2d.c:1250,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/compositor/compositor_2d.c:1251,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/compositor_2d.c:1254,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1254,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_2d.c:1254,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor_2d.c:1257,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/compositor_2d.c:1257,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/compositor_2d.c:1257,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/compositor_2d.c:1257,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor_2d.c:1260,1
    - Dst: compositor_send_resize_event
      Src: /src/gpac/src/compositor/compositor_2d.c:1265,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor_2d.c:1266,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 49
    argCount: 5
    argNames:
    - compositor
    - zoom
    - tx
    - ty
    - is_resize
    argTypes:
    - GF_Compositor*
    - Fixed
    - Fixed
    - Fixed
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1267
      start: 1202
    functionDepth: 10
    functionLinenumber: 1202
    functionLinenumberEnd: 1267
    functionName: compositor_2d_set_user_transform
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_add_translation
    - INT2FIX
    - gf_mx2d_add_rotation
    - GF_LOG
    - gf_divfix
    - gf_mx2d_add_scale
    - gf_sc_next_frame_state
    - compositor_send_resize_event
    - gf_mx2d_init
    - gf_sc_lock
    - gf_mulfix
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void compositor_2d_set_user_transform(GF_Compositor *compositor, Fixed
      zoom, Fixed tx, Fixed ty, Bool is_resize)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/compositor_2d.c:1288,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/compositor/compositor_2d.c:1289,1
    - Dst: gf_mx_apply_rect
      Src: /src/gpac/src/compositor/compositor_2d.c:1290,1
    - Dst: gf_mx_apply_rect
      Src: /src/gpac/src/compositor/compositor_2d.c:1291,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/compositor_2d.c:1296,1
    - Dst: gf_mx2d_inverse
      Src: /src/gpac/src/compositor/compositor_2d.c:1297,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/compositor_2d.c:1298,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/compositor_2d.c:1321,1
    - Dst: gf_mx_apply_rect
      Src: /src/gpac/src/compositor/compositor_2d.c:1329,1
    - Dst: gf_mx_apply_rect
      Src: /src/gpac/src/compositor/compositor_2d.c:1332,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/compositor_2d.c:1336,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 53
    argCount: 5
    argNames:
    - tr_state
    - this_clip
    - need_restore
    - original
    - for_layer
    argTypes:
    - GF_TraverseState*
    - GF_Rect
    - Bool*
    - GF_Rect*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1341
      start: 1271
    functionDepth: 1
    functionLinenumber: 1271
    functionLinenumberEnd: 1341
    functionName: compositor_2d_update_clipper
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_apply_rect
    - gf_mx2d_inverse
    - gf_mx_apply_rect
    - gf_mx_inverse
    - gf_mx_copy
    - gf_mx2d_copy
    linkageType: ''
    returnType: GF_Rect
    signature: GF_Rect compositor_2d_update_clipper(GF_TraverseState *tr_state, GF_Rect
      this_clip, Bool *need_restore, GF_Rect *original, Bool for_layer)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_irect_overlaps
      Src: /src/gpac/src/compositor/compositor_2d.c:1361,1
    - Dst: gf_irect_inside
      Src: /src/gpac/src/compositor/compositor_2d.c:1368,1
    - Dst: ra_union_rect
      Src: /src/gpac/src/compositor/compositor_2d.c:1380,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 27
    argCount: 3
    argNames:
    - visual
    - ctx
    - tr_state
    argTypes:
    - GF_VisualManager*
    - DrawableContext*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1384
      start: 1345
    functionDepth: 1
    functionLinenumber: 1345
    functionLinenumberEnd: 1384
    functionName: visual_2d_overlaps_overlay
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached:
    - gf_irect_inside
    - gf_irect_overlaps
    - ra_union_rect
    linkageType: ''
    returnType: Bool
    signature: Bool visual_2d_overlaps_overlay(GF_VisualManager *visual, DrawableContext
      *ctx, GF_TraverseState *tr_state)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ra_refresh
      Src: /src/gpac/src/compositor/compositor_2d.c:1401,1
    - Dst: gf_irect_overlaps
      Src: /src/gpac/src/compositor/compositor_2d.c:1409,1
    - Dst: gf_irect_inside
      Src: /src/gpac/src/compositor/compositor_2d.c:1414,1
    - Dst: gf_irect_intersect
      Src: /src/gpac/src/compositor/compositor_2d.c:1416,1
    - Dst: compositor_2d_draw_bitmap_ex
      Src: /src/gpac/src/compositor/compositor_2d.c:1417,1
    - Dst: gf_irect_intersect
      Src: /src/gpac/src/compositor/compositor_2d.c:1421,1
    - Dst: call_drawable_draw
      Src: /src/gpac/src/compositor/compositor_2d.c:1424,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 2
    argNames:
    - visual
    - tr_state
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1433
      start: 1386
    functionDepth: 3
    functionLinenumber: 1386
    functionLinenumberEnd: 1433
    functionName: visual_2d_flush_overlay_areas
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached:
    - gf_irect_inside
    - call_drawable_draw
    - gf_irect_overlaps
    - ra_refresh
    - gf_irect_intersect
    - compositor_2d_draw_bitmap_ex
    linkageType: ''
    returnType: void
    signature: void visual_2d_flush_overlay_areas(GF_VisualManager *visual, GF_TraverseState
      *tr_state)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/compositor_2d.c:1447,1
    - Dst: GF_VisualManager*::compositor::video_out::Blit
      Src: /src/gpac/src/compositor/compositor_2d.c:1455,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor_2d.c:1456,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/compositor/compositor_2d.c:1456,1
    - Dst: ra_del
      Src: /src/gpac/src/compositor/compositor_2d.c:1458,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor_2d.c:1459,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1461
      start: 1435
    functionDepth: 1
    functionLinenumber: 1435
    functionLinenumberEnd: 1461
    functionName: visual_2d_draw_overlays
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - ra_del
    - memset
    - gf_error_to_string
    - GF_VisualManager*::compositor::video_out::Blit
    linkageType: ''
    returnType: void
    signature: void visual_2d_draw_overlays(GF_VisualManager *visual)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1466
      start: 1463
    functionDepth: 0
    functionLinenumber: 1463
    functionLinenumberEnd: 1466
    functionName: compositor_2d_init_callbacks
    functionSourceFile: /src/gpac/src/compositor/compositor_2d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void compositor_2d_init_callbacks(GF_Compositor *compositor)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:38,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:42,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:43,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 4
    argNames:
    - compositor
    - viewpoint_idx
    - outName
    - is_bound
    argTypes:
    - GF_Compositor*
    - u32
    - char**
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 31
    functionDepth: 2
    functionLinenumber: 31
    functionLinenumberEnd: 69
    functionName: gf_sc_get_viewpoint
    functionSourceFile: /src/gpac/src/compositor/mpeg4_viewport.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_node_get_tag
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_get_viewpoint(GF_Compositor *compositor, u32 viewpoint_idx,
      const char **outName, Bool *is_bound)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:78,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:84,1
    - Dst: Bindable_GetIsBound
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:85,1
    - Dst: Bindable_SetSetBind
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:86,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:91,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:92,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:107,1
    - Dst: Bindable_GetIsBound
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:108,1
    - Dst: Bindable_SetSetBind
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:109,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 36
    argCount: 3
    argNames:
    - compositor
    - viewpoint_idx
    - viewpoint_name
    argTypes:
    - GF_Compositor*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 71
    functionDepth: 2
    functionLinenumber: 71
    functionLinenumberEnd: 117
    functionName: gf_sc_set_viewpoint
    functionSourceFile: /src/gpac/src/compositor/mpeg4_viewport.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_list_get
    - Bindable_SetSetBind
    - gf_list_count
    - Bindable_GetIsBound
    - stricmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_set_viewpoint(GF_Compositor *compositor, u32 viewpoint_idx,
      const char *viewpoint_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __comp
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 123
    functionName: VPCHANGED
    functionSourceFile: /src/gpac/src/compositor/mpeg4_viewport.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VPCHANGED(__comp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:127,1
    - Dst: PreDestroyBindable
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:128,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:129,1
    - Dst: VPCHANGED
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:130,1
    - Dst: gf_sc_get_compositor
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:130,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 125
    functionDepth: 2
    functionLinenumber: 125
    functionLinenumberEnd: 132
    functionName: DestroyViewStack
    functionSourceFile: /src/gpac/src/compositor/mpeg4_viewport.c
    functionUses: 0
    functionsReached:
    - gf_free
    - PreDestroyBindable
    - gf_sc_get_compositor
    - VPCHANGED
    - gf_node_get_private
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void DestroyViewStack(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_get_compositor
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:136,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:137,1
    - Dst: Bindable_OnSetBind
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:138,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:140,1
    - Dst: VPCHANGED
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:142,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 134
    functionDepth: 5
    functionLinenumber: 134
    functionLinenumberEnd: 145
    functionName: viewport_set_bind
    functionSourceFile: /src/gpac/src/compositor/mpeg4_viewport.c
    functionUses: 0
    functionsReached:
    - gf_node_dirty_set
    - gf_sc_get_compositor
    - Bindable_OnSetBind
    - gf_sc_invalidate
    - VPCHANGED
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void viewport_set_bind(GF_Node *node, GF_Route *route)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:156,1
    - Dst: DestroyViewStack
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:161,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:170,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:171,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:172,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:173,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:175,1
    - Dst: Bindable_SetIsBound
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:176,1
    - Dst: gf_inline_is_default_viewpoint
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:178,1
    - Dst: Bindable_SetSetBindEx
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:178,1
    - Dst: VPCHANGED
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:180,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:182,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:189,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:208,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:210,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:211,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:212,1
    - Dst: gf_rect_center
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:217,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:223,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:223,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:224,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:227,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:233,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:233,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:234,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:237,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:251,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:252,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:256,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:257,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:276,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:278,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:281,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:281,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:281,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:283,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:285,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:285,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:285,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:286,1
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:296,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:297,1
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:301,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:306,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 116
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 148
    functionDepth: 5
    functionLinenumber: 148
    functionLinenumberEnd: 307
    functionName: TraverseViewport
    functionSourceFile: /src/gpac/src/compositor/mpeg4_viewport.c
    functionUses: 0
    functionsReached:
    - gf_list_find
    - gf_mx2d_add_scale
    - gf_node_dirty_clear
    - Bindable_SetSetBindEx
    - gf_list_get
    - gf_mx_add_matrix
    - gf_list_add
    - gf_sc_invalidate
    - DestroyViewStack
    - VPCHANGED
    - gf_node_get_private
    - gf_mulfix
    - Bindable_SetIsBound
    - gf_mx_from_mx2d
    - gf_divfix
    - gf_muldiv
    - gf_rect_center
    - gf_mx2d_add_translation
    - gf_inline_is_default_viewpoint
    - gf_mx2d_pre_multiply
    - gf_mx2d_init
    - gf_mx2d_add_rotation
    linkageType: ''
    returnType: void
    signature: void TraverseViewport(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:312,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:314,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:318,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:320,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:321,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 309
    functionDepth: 2
    functionLinenumber: 309
    functionLinenumberEnd: 323
    functionName: compositor_init_viewport
    functionSourceFile: /src/gpac/src/compositor/mpeg4_viewport.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_viewport(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_get_compositor
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:330,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:331,1
    - Dst: Bindable_OnSetBind
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:335,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:336,1
    - Dst: VPCHANGED
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:338,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:340,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 328
    functionDepth: 5
    functionLinenumber: 328
    functionLinenumberEnd: 341
    functionName: viewpoint_set_bind
    functionSourceFile: /src/gpac/src/compositor/mpeg4_viewport.c
    functionUses: 0
    functionsReached:
    - gf_node_dirty_set
    - gf_sc_get_compositor
    - Bindable_OnSetBind
    - gf_sc_invalidate
    - VPCHANGED
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void viewpoint_set_bind(GF_Node *node, GF_Route *route)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:350,1
    - Dst: DestroyViewStack
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:353,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:361,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:362,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:363,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:364,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:366,1
    - Dst: Bindable_SetIsBound
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:367,1
    - Dst: gf_inline_is_default_viewpoint
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:369,1
    - Dst: Bindable_SetSetBind
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:369,1
    - Dst: VPCHANGED
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:371,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:373,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:374,1
    - Dst: gf_mx_equal
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:382,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:383,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:384,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:393,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:396,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:402,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:403,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:404,1
    - Dst: gf_mx_decompose
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:405,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:410,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:412,1
    - Dst: visual_3d_viewpoint_change
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:414,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 51
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 343
    functionDepth: 5
    functionLinenumber: 343
    functionLinenumberEnd: 416
    functionName: TraverseViewpoint
    functionSourceFile: /src/gpac/src/compositor/mpeg4_viewport.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_node_dirty_get
    - gf_list_find
    - gf_node_dirty_clear
    - gf_mx_copy
    - gf_list_get
    - gf_mx_add_rotation
    - Bindable_SetSetBind
    - gf_list_add
    - gf_sc_invalidate
    - DestroyViewStack
    - VPCHANGED
    - gf_node_get_private
    - Bindable_SetIsBound
    - gf_mx_equal
    - gf_node_dirty_set
    - gf_mx_add_translation
    - visual_3d_viewpoint_change
    - gf_inline_is_default_viewpoint
    - gf_mx_apply_vec
    - gf_mx_decompose
    linkageType: ''
    returnType: void
    signature: void TraverseViewpoint(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:421,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:423,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:427,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:428,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:429,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:430,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 418
    functionDepth: 2
    functionLinenumber: 418
    functionLinenumberEnd: 432
    functionName: compositor_init_viewpoint
    functionSourceFile: /src/gpac/src/compositor/mpeg4_viewport.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_mx_init
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_viewpoint(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:439,1
    - Dst: Bindable_OnSetBind
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:440,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:441,1
    - Dst: gf_sc_get_compositor
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:441,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 436
    functionDepth: 5
    functionLinenumber: 436
    functionLinenumberEnd: 443
    functionName: navinfo_set_bind
    functionSourceFile: /src/gpac/src/compositor/mpeg4_viewport.c
    functionUses: 0
    functionsReached:
    - Bindable_OnSetBind
    - gf_node_get_private
    - gf_sc_invalidate
    - gf_sc_get_compositor
    linkageType: ''
    returnType: void
    signature: void navinfo_set_bind(GF_Node *node, GF_Route *route)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:452,1
    - Dst: DestroyViewStack
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:458,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:465,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:474,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:475,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:476,1
    - Dst: Bindable_SetIsBound
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:477,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:479,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:480,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:481,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:483,1
    - Dst: gf_mx_equal
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:491,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:492,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:493,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:499,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:500,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:506,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:512,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:513,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:514,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:515,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:516,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:526,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:527,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:528,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:529,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:531,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:532,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:533,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:534,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:535,1
    - Dst: MAX
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:539,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 85
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 551
      start: 445
    functionDepth: 5
    functionLinenumber: 445
    functionLinenumberEnd: 551
    functionName: TraverseNavigationInfo
    functionSourceFile: /src/gpac/src/compositor/mpeg4_viewport.c
    functionUses: 0
    functionsReached:
    - Bindable_SetIsBound
    - gf_vec_len
    - gf_list_get
    - gf_mx_apply_vec
    - gf_node_dirty_set
    - gf_vec_diff
    - gf_node_dirty_get
    - gf_list_find
    - gf_node_dirty_clear
    - gf_list_add
    - gf_sc_invalidate
    - stricmp
    - gf_mx_copy
    - DestroyViewStack
    - gf_node_get_private
    - gf_mulfix
    - MAX
    - gf_mx_equal
    linkageType: ''
    returnType: void
    signature: void TraverseNavigationInfo(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:556,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:558,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:562,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:563,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:564,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:568,1
    - Dst: navinfo_set_bind
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:569,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 553
    functionDepth: 6
    functionLinenumber: 553
    functionLinenumberEnd: 572
    functionName: compositor_init_navigation_info
    functionSourceFile: /src/gpac/src/compositor/mpeg4_viewport.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    - navinfo_set_bind
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: void
    signature: void compositor_init_navigation_info(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:579,1
    - Dst: Bindable_OnSetBind
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:580,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:581,1
    - Dst: gf_sc_get_compositor
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:581,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 577
    functionDepth: 5
    functionLinenumber: 577
    functionLinenumberEnd: 582
    functionName: fog_set_bind
    functionSourceFile: /src/gpac/src/compositor/mpeg4_viewport.c
    functionUses: 0
    functionsReached:
    - Bindable_OnSetBind
    - gf_node_get_private
    - gf_sc_invalidate
    - gf_sc_get_compositor
    linkageType: ''
    returnType: void
    signature: void fog_set_bind(GF_Node *node, GF_Route *route)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:592,1
    - Dst: DestroyViewStack
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:595,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:602,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:603,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:604,1
    - Dst: Bindable_SetIsBound
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:605,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:607,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:608,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:610,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:612,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:618,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:625,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:627,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:633,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:634,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:636,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:637,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:638,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:639,1
    - Dst: gf_invfix
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:641,1
    - Dst: visual_3d_set_fog
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:642,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 43
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 584
    functionDepth: 5
    functionLinenumber: 584
    functionLinenumberEnd: 643
    functionName: TraverseFog
    functionSourceFile: /src/gpac/src/compositor/mpeg4_viewport.c
    functionUses: 0
    functionsReached:
    - Bindable_SetIsBound
    - gf_vec_len
    - gf_list_get
    - gf_mx_apply_vec
    - gf_vec_diff
    - gf_list_find
    - gf_list_add
    - gf_sc_invalidate
    - gf_invfix
    - gf_mx_copy
    - DestroyViewStack
    - gf_node_get_private
    - visual_3d_set_fog
    linkageType: ''
    returnType: void
    signature: void TraverseFog(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:648,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:650,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:654,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:655,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_viewport.c:656,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 645
    functionDepth: 2
    functionLinenumber: 645
    functionLinenumberEnd: 658
    functionName: compositor_init_fog
    functionSourceFile: /src/gpac/src/compositor/mpeg4_viewport.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_fog(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/navigate.c:36,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/navigate.c:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - compositor
    - cam
    argTypes:
    - GF_Compositor*
    - GF_Camera*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 33
    functionDepth: 5
    functionLinenumber: 33
    functionLinenumberEnd: 38
    functionName: camera_changed
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - gf_node_dirty_set
    - gf_sc_invalidate
    linkageType: ''
    returnType: void
    signature: void camera_changed(GF_Compositor *compositor, GF_Camera *cam)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compositor_2d_set_user_transform
      Src: /src/gpac/src/compositor/navigate.c:44,1
    - Dst: camera_changed
      Src: /src/gpac/src/compositor/navigate.c:46,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - visual
    - zoom
    - dx
    - dy
    argTypes:
    - GF_VisualManager*
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 42
    functionDepth: 11
    functionLinenumber: 42
    functionLinenumberEnd: 48
    functionName: nav_set_zoom_trans_2d
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - camera_changed
    - compositor_2d_set_user_transform
    linkageType: ''
    returnType: void
    signature: void nav_set_zoom_trans_2d(GF_VisualManager *visual, Fixed zoom, Fixed
      dx, Fixed dy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/navigate.c:56,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/navigate.c:57,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/compositor/navigate.c:58,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/navigate.c:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - mx
    - axis_pt
    - axis
    - angle
    argTypes:
    - GF_Matrix*
    - SFVec3f
    - SFVec3f
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 60
    functionName: gf_mx_rotation_matrix
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - gf_mx_add_translation
    - gf_mx_add_rotation
    - gf_mx_init
    linkageType: ''
    returnType: void
    signature: void gf_mx_rotation_matrix(GF_Matrix *mx, SFVec3f axis_pt, SFVec3f
      axis, Fixed angle)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_rotation_matrix
      Src: /src/gpac/src/compositor/navigate.c:66,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/navigate.c:67,1
    - Dst: camera_changed
      Src: /src/gpac/src/compositor/navigate.c:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - compositor
    - cam
    - dx
    argTypes:
    - GF_Compositor*
    - GF_Camera*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 62
    functionDepth: 6
    functionLinenumber: 62
    functionLinenumberEnd: 69
    functionName: view_orbit_x
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - gf_mx_rotation_matrix
    - gf_mx_apply_vec
    - camera_changed
    linkageType: ''
    returnType: void
    signature: void view_orbit_x(GF_Compositor *compositor, GF_Camera *cam, Fixed
      dx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: camera_get_right_dir
      Src: /src/gpac/src/compositor/navigate.c:75,1
    - Dst: gf_mx_rotation_matrix
      Src: /src/gpac/src/compositor/navigate.c:76,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/navigate.c:77,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/navigate.c:79,1
    - Dst: camera_get_pos_dir
      Src: /src/gpac/src/compositor/navigate.c:79,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/navigate.c:80,1
    - Dst: camera_changed
      Src: /src/gpac/src/compositor/navigate.c:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - compositor
    - cam
    - dy
    argTypes:
    - GF_Compositor*
    - GF_Camera*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 70
    functionDepth: 6
    functionLinenumber: 70
    functionLinenumberEnd: 82
    functionName: view_orbit_y
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - gf_mx_rotation_matrix
    - gf_vec_cross
    - camera_get_pos_dir
    - camera_get_right_dir
    - gf_vec_norm
    - camera_changed
    - gf_mx_apply_vec
    linkageType: ''
    returnType: void
    signature: void view_orbit_y(GF_Compositor *compositor, GF_Camera *cam, Fixed
      dy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_rotation_matrix
      Src: /src/gpac/src/compositor/navigate.c:88,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/navigate.c:89,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/navigate.c:90,1
    - Dst: camera_changed
      Src: /src/gpac/src/compositor/navigate.c:91,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - compositor
    - cam
    - dx
    argTypes:
    - GF_Compositor*
    - GF_Camera*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 84
    functionDepth: 6
    functionLinenumber: 84
    functionLinenumberEnd: 92
    functionName: view_exam_x
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - gf_mx_rotation_matrix
    - gf_mx_apply_vec
    - camera_changed
    linkageType: ''
    returnType: void
    signature: void view_exam_x(GF_Compositor *compositor, GF_Camera *cam, Fixed dx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: camera_get_right_dir
      Src: /src/gpac/src/compositor/navigate.c:99,1
    - Dst: gf_mx_rotation_matrix
      Src: /src/gpac/src/compositor/navigate.c:100,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/navigate.c:101,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/navigate.c:102,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/navigate.c:104,1
    - Dst: camera_get_pos_dir
      Src: /src/gpac/src/compositor/navigate.c:104,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/navigate.c:105,1
    - Dst: camera_changed
      Src: /src/gpac/src/compositor/navigate.c:106,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - compositor
    - cam
    - dy
    argTypes:
    - GF_Compositor*
    - GF_Camera*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 94
    functionDepth: 6
    functionLinenumber: 94
    functionLinenumberEnd: 107
    functionName: view_exam_y
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - gf_mx_rotation_matrix
    - gf_vec_cross
    - camera_get_pos_dir
    - camera_get_right_dir
    - gf_vec_norm
    - camera_changed
    - gf_mx_apply_vec
    linkageType: ''
    returnType: void
    signature: void view_exam_y(GF_Compositor *compositor, GF_Camera *cam, Fixed dy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/navigate.c:114,1
    - Dst: gf_mx_rotation_matrix
      Src: /src/gpac/src/compositor/navigate.c:115,1
    - Dst: camera_get_pos_dir
      Src: /src/gpac/src/compositor/navigate.c:115,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/navigate.c:116,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/navigate.c:117,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/navigate.c:118,1
    - Dst: camera_changed
      Src: /src/gpac/src/compositor/navigate.c:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - compositor
    - cam
    - dd
    argTypes:
    - GF_Compositor*
    - GF_Camera*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 109
    functionDepth: 6
    functionLinenumber: 109
    functionLinenumberEnd: 120
    functionName: view_roll
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - gf_mx_rotation_matrix
    - gf_vec_add
    - camera_get_pos_dir
    - gf_vec_diff
    - gf_vec_norm
    - camera_changed
    - gf_mx_apply_vec
    linkageType: ''
    returnType: void
    signature: void view_roll(GF_Compositor *compositor, GF_Camera *cam, Fixed dd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: camera_get_pos_dir
      Src: /src/gpac/src/compositor/navigate.c:126,1
    - Dst: camera_get_right_dir
      Src: /src/gpac/src/compositor/navigate.c:127,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/navigate.c:129,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/navigate.c:130,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/navigate.c:131,1
    - Dst: camera_changed
      Src: /src/gpac/src/compositor/navigate.c:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - compositor
    - cam
    argTypes:
    - GF_Compositor*
    - GF_Camera*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 122
    functionDepth: 6
    functionLinenumber: 122
    functionLinenumberEnd: 134
    functionName: update_pan_up
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - gf_vec_cross
    - camera_get_right_dir
    - camera_get_pos_dir
    - gf_vec_norm
    - camera_changed
    linkageType: ''
    returnType: void
    signature: void update_pan_up(GF_Compositor *compositor, GF_Camera *cam)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_rotation_matrix
      Src: /src/gpac/src/compositor/navigate.c:140,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/navigate.c:141,1
    - Dst: update_pan_up
      Src: /src/gpac/src/compositor/navigate.c:143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - compositor
    - cam
    - dx
    argTypes:
    - GF_Compositor*
    - GF_Camera*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 136
    functionDepth: 7
    functionLinenumber: 136
    functionLinenumberEnd: 144
    functionName: view_pan_x
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - gf_mx_rotation_matrix
    - gf_mx_apply_vec
    - update_pan_up
    linkageType: ''
    returnType: void
    signature: void view_pan_x(GF_Compositor *compositor, GF_Camera *cam, Fixed dx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_rotation_matrix
      Src: /src/gpac/src/compositor/navigate.c:150,1
    - Dst: camera_get_right_dir
      Src: /src/gpac/src/compositor/navigate.c:150,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/navigate.c:151,1
    - Dst: update_pan_up
      Src: /src/gpac/src/compositor/navigate.c:164,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - compositor
    - cam
    - dy
    argTypes:
    - GF_Compositor*
    - GF_Camera*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 145
    functionDepth: 7
    functionLinenumber: 145
    functionLinenumberEnd: 165
    functionName: view_pan_y
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - gf_mx_rotation_matrix
    - gf_mx_apply_vec
    - update_pan_up
    - camera_get_right_dir
    linkageType: ''
    returnType: void
    signature: void view_pan_y(GF_Compositor *compositor, GF_Camera *cam, Fixed dy)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/navigate.c:175,1
    - Dst: camera_get_right_dir
      Src: /src/gpac/src/compositor/navigate.c:175,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/navigate.c:176,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/navigate.c:177,1
    - Dst: camera_changed
      Src: /src/gpac/src/compositor/navigate.c:178,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - compositor
    - cam
    - dx
    argTypes:
    - GF_Compositor*
    - GF_Camera*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 170
    functionDepth: 6
    functionLinenumber: 170
    functionLinenumberEnd: 179
    functionName: view_translate_x
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - gf_vec_add
    - camera_changed
    - gf_vec_scale
    - camera_get_right_dir
    linkageType: ''
    returnType: void
    signature: void view_translate_x(GF_Compositor *compositor, GF_Camera *cam, Fixed
      dx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/navigate.c:185,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/navigate.c:186,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/navigate.c:187,1
    - Dst: camera_changed
      Src: /src/gpac/src/compositor/navigate.c:188,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - compositor
    - cam
    - dy
    argTypes:
    - GF_Compositor*
    - GF_Camera*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 180
    functionDepth: 6
    functionLinenumber: 180
    functionLinenumberEnd: 189
    functionName: view_translate_y
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - gf_vec_add
    - camera_changed
    - gf_vec_scale
    linkageType: ''
    returnType: void
    signature: void view_translate_y(GF_Compositor *compositor, GF_Camera *cam, Fixed
      dy)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:196,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/navigate.c:197,1
    - Dst: camera_get_target_dir
      Src: /src/gpac/src/compositor/navigate.c:197,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/navigate.c:198,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/navigate.c:199,1
    - Dst: camera_changed
      Src: /src/gpac/src/compositor/navigate.c:200,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - compositor
    - cam
    - dz
    argTypes:
    - GF_Compositor*
    - GF_Camera*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 191
    functionDepth: 6
    functionLinenumber: 191
    functionLinenumberEnd: 201
    functionName: view_translate_z
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - gf_vec_add
    - gf_vec_scale
    - camera_get_target_dir
    - camera_changed
    - gf_mulfix
    linkageType: ''
    returnType: void
    signature: void view_translate_z(GF_Compositor *compositor, GF_Camera *cam, Fixed
      dz)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/navigate.c:207,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/navigate.c:212,1
    - Dst: camera_changed
      Src: /src/gpac/src/compositor/navigate.c:214,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 3
    argNames:
    - compositor
    - cam
    - z
    argTypes:
    - GF_Compositor*
    - GF_Camera*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 203
    functionDepth: 6
    functionLinenumber: 203
    functionLinenumberEnd: 215
    functionName: view_zoom
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - gf_divfix
    - camera_changed
    linkageType: ''
    returnType: void
    signature: void view_zoom(GF_Compositor *compositor, GF_Camera *cam, Fixed z)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/navigate.c:227,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/compositor/navigate.c:230,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/navigate.c:231,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/navigate.c:233,1
    - Dst: memset
      Src: /src/gpac/src/compositor/navigate.c:236,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/navigate.c:237,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/navigate.c:240,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/navigate.c:241,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/navigate.c:246,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/navigate.c:258,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/navigate.c:258,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/navigate.c:259,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/navigate.c:261,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/navigate.c:262,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/navigate.c:263,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/navigate.c:265,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/navigate.c:270,1
    - Dst: camera_get_pos_dir
      Src: /src/gpac/src/compositor/navigate.c:270,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/navigate.c:271,1
    - Dst: camera_set_vectors
      Src: /src/gpac/src/compositor/navigate.c:273,1
    - Dst: camera_move_to
      Src: /src/gpac/src/compositor/navigate.c:275,1
    - Dst: camera_stop_anim
      Src: /src/gpac/src/compositor/navigate.c:277,1
    - Dst: camera_set_vectors
      Src: /src/gpac/src/compositor/navigate.c:278,1
    - Dst: camera_changed
      Src: /src/gpac/src/compositor/navigate.c:284,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/navigate.c:285,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 54
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 217
    functionDepth: 6
    functionLinenumber: 217
    functionLinenumberEnd: 287
    functionName: gf_sc_fit_world_to_screen
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - gf_vec_add
    - camera_get_pos_dir
    - gf_node_dirty_get
    - gf_list_count
    - memset
    - gf_vec_len
    - gf_mx_init
    - camera_move_to
    - gf_sg_get_root_node
    - gf_mx_p
    - gf_sin
    - gf_node_traverse
    - gf_vec_scale
    - gf_divfix
    - gf_mx_v
    - camera_changed
    - gf_vec_diff
    - camera_set_vectors
    - camera_stop_anim
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sc_fit_world_to_screen(GF_Compositor *compositor)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: view_pan_x
      Src: /src/gpac/src/compositor/navigate.c:299,1
    - Dst: view_pan_y
      Src: /src/gpac/src/compositor/navigate.c:300,1
    - Dst: view_translate_z
      Src: /src/gpac/src/compositor/navigate.c:301,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:301,1
    - Dst: view_pan_x
      Src: /src/gpac/src/compositor/navigate.c:304,1
    - Dst: view_zoom
      Src: /src/gpac/src/compositor/navigate.c:305,1
    - Dst: view_pan_y
      Src: /src/gpac/src/compositor/navigate.c:306,1
    - Dst: view_pan_x
      Src: /src/gpac/src/compositor/navigate.c:309,1
    - Dst: view_translate_z
      Src: /src/gpac/src/compositor/navigate.c:310,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:310,1
    - Dst: view_pan_y
      Src: /src/gpac/src/compositor/navigate.c:311,1
    - Dst: view_translate_x
      Src: /src/gpac/src/compositor/navigate.c:314,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:314,1
    - Dst: view_translate_z
      Src: /src/gpac/src/compositor/navigate.c:315,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:315,1
    - Dst: view_translate_y
      Src: /src/gpac/src/compositor/navigate.c:316,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:316,1
    - Dst: view_translate_z
      Src: /src/gpac/src/compositor/navigate.c:320,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:320,1
    - Dst: view_roll
      Src: /src/gpac/src/compositor/navigate.c:321,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:321,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/navigate.c:323,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/navigate.c:323,1
    - Dst: view_exam_x
      Src: /src/gpac/src/compositor/navigate.c:324,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:324,1
    - Dst: view_exam_y
      Src: /src/gpac/src/compositor/navigate.c:326,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:326,1
    - Dst: view_translate_z
      Src: /src/gpac/src/compositor/navigate.c:332,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:332,1
    - Dst: view_orbit_x
      Src: /src/gpac/src/compositor/navigate.c:334,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:334,1
    - Dst: view_orbit_y
      Src: /src/gpac/src/compositor/navigate.c:335,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:335,1
    - Dst: view_pan_x
      Src: /src/gpac/src/compositor/navigate.c:339,1
    - Dst: view_pan_y
      Src: /src/gpac/src/compositor/navigate.c:340,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 54
    argCount: 5
    argNames:
    - compositor
    - cam
    - keys
    - dx
    - dy
    argTypes:
    - GF_Compositor*
    - GF_Camera*
    - u32
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 289
    functionDepth: 8
    functionLinenumber: 289
    functionLinenumberEnd: 343
    functionName: handle_mouse_move_3d
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - view_translate_x
    - ABS
    - view_exam_x
    - view_roll
    - view_exam_y
    - view_orbit_y
    - view_translate_z
    - view_zoom
    - view_pan_y
    - view_translate_y
    - view_orbit_x
    - view_pan_x
    - gf_mulfix
    linkageType: ''
    returnType: void
    signature: void handle_mouse_move_3d(GF_Compositor *compositor, GF_Camera *cam,
      u32 keys, Fixed dx, Fixed dy)
  - BBCount: 95
    BranchProfiles: []
    Callsites:
    - Dst: compositor_layer3d_get_camera
      Src: /src/gpac/src/compositor/navigate.c:357,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/navigate.c:371,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/navigate.c:371,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/navigate.c:371,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/navigate.c:372,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/navigate.c:372,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/navigate.c:372,1
    - Dst: gf_mx_get_yaw_pitch_roll
      Src: /src/gpac/src/compositor/navigate.c:401,1
    - Dst: camera_get_orientation
      Src: /src/gpac/src/compositor/navigate.c:419,1
    - Dst: camera_changed
      Src: /src/gpac/src/compositor/navigate.c:422,1
    - Dst: camera_jump
      Src: /src/gpac/src/compositor/navigate.c:429,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/navigate.c:430,1
    - Dst: gf_sc_fit_world_to_screen
      Src: /src/gpac/src/compositor/navigate.c:433,1
    - Dst: handle_mouse_move_3d
      Src: /src/gpac/src/compositor/navigate.c:459,1
    - Dst: view_pan_y
      Src: /src/gpac/src/compositor/navigate.c:470,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:470,1
    - Dst: view_zoom
      Src: /src/gpac/src/compositor/navigate.c:473,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:473,1
    - Dst: view_translate_z
      Src: /src/gpac/src/compositor/navigate.c:480,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:480,1
    - Dst: nav_set_zoom_trans_2d
      Src: /src/gpac/src/compositor/navigate.c:482,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/navigate.c:482,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/navigate.c:491,1
    - Dst: view_translate_z
      Src: /src/gpac/src/compositor/navigate.c:493,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:493,1
    - Dst: nav_set_zoom_trans_2d
      Src: /src/gpac/src/compositor/navigate.c:495,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:495,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/navigate.c:499,1
    - Dst: view_roll
      Src: /src/gpac/src/compositor/navigate.c:500,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:500,1
    - Dst: compositor_3d_reset_camera
      Src: /src/gpac/src/compositor/navigate.c:510,1
    - Dst: gf_sc_reset_graphics
      Src: /src/gpac/src/compositor/navigate.c:524,1
    - Dst: camera_jump
      Src: /src/gpac/src/compositor/navigate.c:531,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/navigate.c:532,1
    - Dst: compositor_3d_reset_camera
      Src: /src/gpac/src/compositor/navigate.c:544,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/navigate.c:560,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/navigate.c:562,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/navigate.c:562,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/navigate.c:562,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/navigate.c:563,1
    - Dst: view_pan_x
      Src: /src/gpac/src/compositor/navigate.c:572,1
    - Dst: view_translate_x
      Src: /src/gpac/src/compositor/navigate.c:573,1
    - Dst: view_roll
      Src: /src/gpac/src/compositor/navigate.c:576,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:576,1
    - Dst: view_exam_x
      Src: /src/gpac/src/compositor/navigate.c:577,1
    - Dst: view_translate_x
      Src: /src/gpac/src/compositor/navigate.c:580,1
    - Dst: view_orbit_x
      Src: /src/gpac/src/compositor/navigate.c:581,1
    - Dst: view_translate_x
      Src: /src/gpac/src/compositor/navigate.c:584,1
    - Dst: view_pan_x
      Src: /src/gpac/src/compositor/navigate.c:587,1
    - Dst: view_translate_x
      Src: /src/gpac/src/compositor/navigate.c:591,1
    - Dst: view_pan_x
      Src: /src/gpac/src/compositor/navigate.c:592,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/navigate.c:601,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/navigate.c:602,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/navigate.c:602,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/navigate.c:604,1
    - Dst: view_translate_z
      Src: /src/gpac/src/compositor/navigate.c:611,1
    - Dst: view_translate_y
      Src: /src/gpac/src/compositor/navigate.c:612,1
    - Dst: view_translate_z
      Src: /src/gpac/src/compositor/navigate.c:615,1
    - Dst: view_exam_y
      Src: /src/gpac/src/compositor/navigate.c:616,1
    - Dst: view_translate_y
      Src: /src/gpac/src/compositor/navigate.c:619,1
    - Dst: view_orbit_y
      Src: /src/gpac/src/compositor/navigate.c:620,1
    - Dst: view_translate_y
      Src: /src/gpac/src/compositor/navigate.c:623,1
    - Dst: view_pan_y
      Src: /src/gpac/src/compositor/navigate.c:624,1
    - Dst: view_translate_z
      Src: /src/gpac/src/compositor/navigate.c:627,1
    - Dst: view_zoom
      Src: /src/gpac/src/compositor/navigate.c:630,1
    - Dst: view_pan_y
      Src: /src/gpac/src/compositor/navigate.c:631,1
    - Dst: view_pan_y
      Src: /src/gpac/src/compositor/navigate.c:635,1
    - Dst: view_translate_z
      Src: /src/gpac/src/compositor/navigate.c:636,1
    - Dst: view_zoom
      Src: /src/gpac/src/compositor/navigate.c:643,1
    - Dst: view_zoom
      Src: /src/gpac/src/compositor/navigate.c:649,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/navigate.c:657,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/navigate.c:665,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/navigate.c:672,1
    - Dst: gf_atan2
      Src: /src/gpac/src/compositor/navigate.c:691,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:691,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:691,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:691,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:691,1
    - Dst: gf_atan2
      Src: /src/gpac/src/compositor/navigate.c:693,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:693,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:693,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:693,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:693,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/navigate.c:706,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/compositor/navigate.c:707,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/compositor/navigate.c:708,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/navigate.c:710,1
    - Dst: update_pan_up
      Src: /src/gpac/src/compositor/navigate.c:713,1
    CyclomaticComplexity: 91
    EdgeCount: 91
    ICount: 336
    argCount: 2
    argNames:
    - compositor
    - ev
    argTypes:
    - GF_Compositor*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 718
      start: 345
    functionDepth: 12
    functionLinenumber: 345
    functionLinenumberEnd: 718
    functionName: compositor_handle_navigation_3d
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - gf_sc_reset_graphics
    - view_exam_y
    - view_translate_y
    - view_orbit_x
    - FIX2FLT
    - compositor_layer3d_get_camera
    - gf_mx_add_rotation
    - handle_mouse_move_3d
    - gf_mx_init
    - gf_sc_fit_world_to_screen
    - view_translate_z
    - gf_sc_invalidate
    - camera_get_orientation
    - view_pan_x
    - view_orbit_y
    - gf_mulfix
    - FLT2FIX
    - view_exam_x
    - GF_LOG
    - gf_divfix
    - gf_atan2
    - camera_changed
    - compositor_3d_reset_camera
    - nav_set_zoom_trans_2d
    - view_translate_x
    - INT2FIX
    - ABS
    - update_pan_up
    - view_roll
    - camera_jump
    - view_pan_y
    - view_zoom
    - gf_mx_get_yaw_pitch_roll
    - gf_mx_apply_vec
    linkageType: ''
    returnType: Bool
    signature: Bool compositor_handle_navigation_3d(GF_Compositor *compositor, GF_Event
      *ev)
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/navigate.c:744,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/navigate.c:745,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/navigate.c:759,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/navigate.c:782,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/navigate.c:783,1
    - Dst: nav_set_zoom_trans_2d
      Src: /src/gpac/src/compositor/navigate.c:784,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/navigate.c:798,1
    - Dst: MIN
      Src: /src/gpac/src/compositor/navigate.c:799,1
    - Dst: nav_set_zoom_trans_2d
      Src: /src/gpac/src/compositor/navigate.c:800,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/navigate.c:803,1
    - Dst: nav_set_zoom_trans_2d
      Src: /src/gpac/src/compositor/navigate.c:805,1
    - Dst: nav_set_zoom_trans_2d
      Src: /src/gpac/src/compositor/navigate.c:812,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/navigate.c:820,1
    - Dst: nav_set_zoom_trans_2d
      Src: /src/gpac/src/compositor/navigate.c:821,1
    - Dst: gf_asin
      Src: /src/gpac/src/compositor/navigate.c:825,1
    - Dst: gf_asin
      Src: /src/gpac/src/compositor/navigate.c:827,1
    - Dst: nav_set_zoom_trans_2d
      Src: /src/gpac/src/compositor/navigate.c:828,1
    - Dst: nav_set_zoom_trans_2d
      Src: /src/gpac/src/compositor/navigate.c:843,1
    - Dst: nav_set_zoom_trans_2d
      Src: /src/gpac/src/compositor/navigate.c:846,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/navigate.c:851,1
    - Dst: gf_asin
      Src: /src/gpac/src/compositor/navigate.c:857,1
    - Dst: nav_set_zoom_trans_2d
      Src: /src/gpac/src/compositor/navigate.c:858,1
    - Dst: gf_sc_reset_graphics
      Src: /src/gpac/src/compositor/navigate.c:868,1
    - Dst: nav_set_zoom_trans_2d
      Src: /src/gpac/src/compositor/navigate.c:875,1
    - Dst: nav_set_zoom_trans_2d
      Src: /src/gpac/src/compositor/navigate.c:882,1
    - Dst: nav_set_zoom_trans_2d
      Src: /src/gpac/src/compositor/navigate.c:886,1
    - Dst: nav_set_zoom_trans_2d
      Src: /src/gpac/src/compositor/navigate.c:897,1
    - Dst: nav_set_zoom_trans_2d
      Src: /src/gpac/src/compositor/navigate.c:899,1
    - Dst: nav_set_zoom_trans_2d
      Src: /src/gpac/src/compositor/navigate.c:904,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 167
    argCount: 2
    argNames:
    - visual
    - ev
    argTypes:
    - GF_VisualManager*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 911
      start: 723
    functionDepth: 12
    functionLinenumber: 723
    functionLinenumberEnd: 911
    functionName: compositor_handle_navigation_2d
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - nav_set_zoom_trans_2d
    - gf_sc_reset_graphics
    - INT2FIX
    - ABS
    - MIN
    - gf_asin
    - gf_mulfix
    linkageType: ''
    returnType: Bool
    signature: Bool compositor_handle_navigation_2d(GF_VisualManager *visual, GF_Event
      *ev)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: compositor_layer3d_get_camera
      Src: /src/gpac/src/compositor/navigate.c:920,1
    - Dst: handle_mouse_move_3d
      Src: /src/gpac/src/compositor/navigate.c:947,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 949
      start: 913
    functionDepth: 9
    functionLinenumber: 913
    functionLinenumberEnd: 949
    functionName: compositor_handle_auto_navigation
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - compositor_layer3d_get_camera
    - handle_mouse_move_3d
    linkageType: ''
    returnType: void
    signature: void compositor_handle_auto_navigation(GF_Compositor *compositor)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: compositor_handle_navigation_3d
      Src: /src/gpac/src/compositor/navigate.c:956,1
    - Dst: compositor_handle_navigation_2d
      Src: /src/gpac/src/compositor/navigate.c:958,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - compositor
    - ev
    argTypes:
    - GF_Compositor*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 959
      start: 951
    functionDepth: 13
    functionLinenumber: 951
    functionLinenumberEnd: 959
    functionName: compositor_handle_navigation
    functionSourceFile: /src/gpac/src/compositor/navigate.c
    functionUses: 0
    functionsReached:
    - compositor_handle_navigation_3d
    - compositor_handle_navigation_2d
    linkageType: ''
    returnType: Bool
    signature: Bool compositor_handle_navigation(GF_Compositor *compositor, GF_Event
      *ev)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/clock.c:32,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/compositor/clock.c:34,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 39
    functionName: gf_clock_new
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 0
    functionsReached:
    - gf_mx_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Clock
    signature: GF_Clock *gf_clock_new(GF_Compositor *compositor)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_del
      Src: /src/gpac/src/compositor/clock.c:43,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/clock.c:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ck
    argTypes:
    - GF_Clock*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 45
    functionName: gf_clock_del
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void gf_clock_del(GF_Clock *ck)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/clock.c:52,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 3
    argNames:
    - Clocks
    - clock_id
    - ES_ID
    argTypes:
    - GF_List*
    - u16
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 60
    functionName: gf_clock_find
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_Clock
    signature: GF_Clock *gf_clock_find(GF_List *Clocks, u16 clock_id, u16 ES_ID)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/clock.c:71,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/clock.c:76,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/clock.c:79,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 2
    argNames:
    - scene
    - clock_id
    argTypes:
    - GF_Scene*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 84
    functionName: gf_ck_look_for_clock_dep
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_Clock
    signature: GF_Clock *gf_ck_look_for_clock_dep(GF_Scene *scene, u16 clock_id)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/clock.c:99,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/clock.c:106,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/clock.c:108,1
    - Dst: gf_clock_del
      Src: /src/gpac/src/compositor/clock.c:109,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 4
    argNames:
    - clocks
    - scene
    - new_ck
    - Clock_ESID
    argTypes:
    - GF_List*
    - GF_Scene*
    - GF_Clock*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 113
    functionName: gf_ck_resolve_clock_dep
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_clock_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_ck_resolve_clock_dep(GF_List *clocks, GF_Scene *scene, GF_Clock
      *new_ck, u16 Clock_ESID)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_clock_find
      Src: /src/gpac/src/compositor/clock.c:118,1
    - Dst: gf_ck_look_for_clock_dep
      Src: /src/gpac/src/compositor/clock.c:123,1
    - Dst: gf_clock_new
      Src: /src/gpac/src/compositor/clock.c:125,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/clock.c:127,1
    - Dst: gf_ck_resolve_clock_dep
      Src: /src/gpac/src/compositor/clock.c:131,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 5
    argNames:
    - clocks
    - scene
    - clock_id
    - ES_ID
    - hasOCR
    argTypes:
    - GF_List*
    - GF_Scene*
    - u16
    - u16
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 115
    functionDepth: 2
    functionLinenumber: 115
    functionLinenumberEnd: 134
    functionName: gf_clock_attach
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 1
    functionsReached:
    - gf_clock_new
    - gf_ck_look_for_clock_dep
    - gf_clock_find
    - gf_list_add
    - gf_ck_resolve_clock_dep
    linkageType: ''
    returnType: GF_Clock
    signature: GF_Clock *gf_clock_attach(GF_List *clocks, GF_Scene *scene, u16 clock_id,
      u16 ES_ID, s32 hasOCR)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - ck
    argTypes:
    - GF_Clock*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 151
    functionName: gf_clock_reset
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_clock_reset(GF_Clock *ck)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/compositor/clock.c:156,1
    - Dst: gf_sc_get_clock
      Src: /src/gpac/src/compositor/clock.c:162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - ck
    - ref_TS
    - timescale
    argTypes:
    - GF_Clock*
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 164
    functionName: gf_clock_set_time
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 2
    functionsReached:
    - gf_timestamp_rescale
    - gf_sc_get_clock
    linkageType: ''
    returnType: void
    signature: void gf_clock_set_time(GF_Clock *ck, u64 ref_TS, u32 timescale)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/compositor/clock.c:170,1
    - Dst: gf_sc_get_clock
      Src: /src/gpac/src/compositor/clock.c:172,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/clock.c:174,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ck
    argTypes:
    - GF_Clock*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 175
    functionName: gf_clock_pause
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    - gf_sc_get_clock
    linkageType: ''
    returnType: void
    signature: void gf_clock_pause(GF_Clock *ck)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/compositor/clock.c:179,1
    - Dst: gf_sc_get_clock
      Src: /src/gpac/src/compositor/clock.c:187,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/clock.c:188,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - ck
    argTypes:
    - GF_Clock*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 189
    functionName: gf_clock_resume
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    - gf_sc_get_clock
    linkageType: ''
    returnType: void
    signature: void gf_clock_resume(GF_Clock *ck)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_get_clock
      Src: /src/gpac/src/compositor/clock.c:197,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/clock.c:201,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/clock.c:204,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - ck
    argTypes:
    - GF_Clock*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 192
    functionDepth: 1
    functionLinenumber: 192
    functionLinenumberEnd: 220
    functionName: gf_clock_real_time
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 0
    functionsReached:
    - FIX2INT
    - gf_sc_get_clock
    linkageType: ''
    returnType: u32
    signature: u32 gf_clock_real_time(GF_Clock *ck)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_clock_real_time
      Src: /src/gpac/src/compositor/clock.c:225,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ck
    argTypes:
    - GF_Clock*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 222
    functionDepth: 2
    functionLinenumber: 222
    functionLinenumberEnd: 228
    functionName: gf_clock_time
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 10
    functionsReached:
    - gf_clock_real_time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_clock_time(GF_Clock *ck)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ck
    - clock_val
    argTypes:
    - GF_Clock*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 241
    functionName: gf_clock_to_media_time
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 gf_clock_to_media_time(GF_Clock *ck, u32 clock_val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/clock.c:248,1
    - Dst: gf_clock_to_media_time
      Src: /src/gpac/src/compositor/clock.c:249,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - ck
    argTypes:
    - GF_Clock*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 243
    functionDepth: 3
    functionLinenumber: 243
    functionLinenumberEnd: 250
    functionName: gf_clock_media_time
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 2
    functionsReached:
    - gf_clock_time
    - gf_clock_to_media_time
    linkageType: ''
    returnType: u64
    signature: u64 gf_clock_media_time(GF_Clock *ck)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/clock.c:255,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 1
    argNames:
    - ck
    argTypes:
    - GF_Clock*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 256
    functionName: gf_clock_elapsed_time
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 0
    functionsReached:
    - gf_sys_clock
    linkageType: ''
    returnType: u32
    signature: u32 gf_clock_elapsed_time(GF_Clock *ck)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    argCount: 1
    argNames:
    - ck
    argTypes:
    - GF_Clock*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 262
    functionName: gf_clock_is_started
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_clock_is_started(GF_Clock *ck)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/compositor/clock.c:267,1
    - Dst: gf_clock_pause
      Src: /src/gpac/src/compositor/clock.c:268,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/clock.c:270,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ck
    argTypes:
    - GF_Clock*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 265
    functionDepth: 2
    functionLinenumber: 265
    functionLinenumberEnd: 271
    functionName: gf_clock_buffer_on
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 2
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    - gf_clock_pause
    linkageType: ''
    returnType: void
    signature: void gf_clock_buffer_on(GF_Clock *ck)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/compositor/clock.c:275,1
    - Dst: gf_clock_resume
      Src: /src/gpac/src/compositor/clock.c:280,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/clock.c:282,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ck
    argTypes:
    - GF_Clock*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 273
    functionDepth: 2
    functionLinenumber: 273
    functionLinenumberEnd: 283
    functionName: gf_clock_buffer_off
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 2
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    - gf_clock_resume
    linkageType: ''
    returnType: void
    signature: void gf_clock_buffer_off(GF_Clock *ck)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_get_clock
      Src: /src/gpac/src/compositor/clock.c:290,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/clock.c:292,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ck
    - speed
    argTypes:
    - GF_Clock*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 286
    functionDepth: 3
    functionLinenumber: 286
    functionLinenumberEnd: 295
    functionName: gf_clock_set_speed
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 3
    functionsReached:
    - gf_clock_time
    - gf_sc_get_clock
    linkageType: ''
    returnType: void
    signature: void gf_clock_set_speed(GF_Clock *ck, Fixed speed)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ck
    - ms_delay
    argTypes:
    - GF_Clock*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 297
    functionDepth: 0
    functionLinenumber: 297
    functionLinenumberEnd: 300
    functionName: gf_clock_set_audio_delay
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_clock_set_audio_delay(GF_Clock *ck, s32 ms_delay)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/compositor/clock.c:308,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ts
    - timescale
    argTypes:
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 302
    functionDepth: 1
    functionLinenumber: 302
    functionLinenumberEnd: 311
    functionName: gf_timestamp_to_clocktime
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 1
    functionsReached:
    - gf_timestamp_rescale
    linkageType: ''
    returnType: u32
    signature: u32 gf_timestamp_to_clocktime(u64 ts, u32 timescale)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/clock.c:318,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ck
    argTypes:
    - GF_Clock*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 313
    functionDepth: 3
    functionLinenumber: 313
    functionLinenumberEnd: 320
    functionName: gf_clock_time_absolute
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 1
    functionsReached:
    - gf_clock_time
    linkageType: ''
    returnType: u64
    signature: u64 gf_clock_time_absolute(GF_Clock *ck)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - ck
    - ck_time
    - ts
    argTypes:
    - GF_Clock*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 344
    functionName: gf_clock_diff
    functionSourceFile: /src/gpac/src/compositor/clock.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 gf_clock_diff(GF_Clock *ck, u32 ck_time, u32 ts)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:45,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:47,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:47,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:49,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:50,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - ray
    - res
    argTypes:
    - GF_Ray*
    - SFVec3f*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 52
    functionName: compositor_get_2d_plane_intersection
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 2
    functionsReached:
    - gf_vec_dot
    - gf_vec_add
    - gf_divfix
    - gf_vec_scale
    linkageType: ''
    returnType: Bool
    signature: Bool compositor_get_2d_plane_intersection(GF_Ray *ray, SFVec3f *res)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:74,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:82,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:87,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:93,1
    - Dst: drawable_compute_line_scale
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:96,1
    - Dst: drawable_compute_line_scale
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:102,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:105,1
    - Dst: visual_3d_register_context
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:123,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:126,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:129,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:138,1
    - Dst: visual_3d_vrml_drawable_collide
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:141,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 65
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 59
    functionDepth: 6
    functionLinenumber: 59
    functionLinenumberEnd: 148
    functionName: TraverseShape
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - visual_3d_register_context
    - gf_node_traverse
    - gf_node_dirty_clear
    - drawable_compute_line_scale
    - visual_3d_vrml_drawable_collide
    - gf_mulfix
    linkageType: ''
    returnType: void
    signature: void TraverseShape(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 2
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: compositor_init_shape
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_shape(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:157,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:159,1
    - Dst: gf_path_add_ellipse
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:160,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:161,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 164
    functionName: circle_check_changes
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 0
    functionsReached:
    - gf_path_add_ellipse
    - drawable_reset_path
    - drawable_mark_modified
    - gf_node_dirty_get
    - gf_node_dirty_clear
    linkageType: ''
    returnType: void
    signature: void circle_check_changes(GF_Node *node, Drawable *stack, GF_TraverseState
      *tr_state)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:168,1
    - Dst: drawable_node_del
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:172,1
    - Dst: circle_check_changes
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:176,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:183,1
    - Dst: mesh_new_ellipse
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:184,1
    - Dst: visual_3d_draw_2d
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:186,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:190,1
    - Dst: vrml_drawable_pick
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:193,1
    - Dst: drawable_init_context_mpeg4
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:199,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:201,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 165
    functionDepth: 2
    functionLinenumber: 165
    functionLinenumberEnd: 204
    functionName: TraverseCircle
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 0
    functionsReached:
    - drawable_node_del
    - drawable_init_context_mpeg4
    - drawable_finalize_sort
    - mesh_new_ellipse
    - visual_3d_draw_2d
    - new_mesh
    - vrml_drawable_pick
    - gf_node_get_private
    - circle_check_changes
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void TraverseCircle(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_stack_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:208,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 206
    functionDepth: 2
    functionLinenumber: 206
    functionLinenumberEnd: 210
    functionName: compositor_init_circle
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_stack_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_circle(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:214,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:215,1
    - Dst: gf_path_add_ellipse
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:216,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:217,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:218,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 220
    functionName: ellipse_check_changes
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 0
    functionsReached:
    - gf_path_add_ellipse
    - drawable_reset_path
    - drawable_mark_modified
    - gf_node_dirty_get
    - gf_node_dirty_clear
    linkageType: ''
    returnType: void
    signature: void ellipse_check_changes(GF_Node *node, Drawable *stack, GF_TraverseState
      *tr_state)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:224,1
    - Dst: drawable_node_del
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:228,1
    - Dst: ellipse_check_changes
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:232,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:238,1
    - Dst: mesh_new_ellipse
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:239,1
    - Dst: visual_3d_draw_2d
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:241,1
    - Dst: vrml_drawable_pick
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:245,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:248,1
    - Dst: drawable_init_context_mpeg4
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:254,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:256,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 221
    functionDepth: 2
    functionLinenumber: 221
    functionLinenumberEnd: 259
    functionName: TraverseEllipse
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 0
    functionsReached:
    - drawable_node_del
    - drawable_init_context_mpeg4
    - drawable_finalize_sort
    - mesh_new_ellipse
    - visual_3d_draw_2d
    - new_mesh
    - ellipse_check_changes
    - vrml_drawable_pick
    - gf_node_get_private
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void TraverseEllipse(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_stack_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:263,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:264,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 261
    functionDepth: 2
    functionLinenumber: 261
    functionLinenumberEnd: 265
    functionName: compositor_init_ellipse
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_stack_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_ellipse(GF_Compositor  *compositor, GF_Node *node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:285,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:286,1
    - Dst: gf_rect_pixelize
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:287,1
    - Dst: gf_irect_intersect
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:288,1
    - Dst: GF_TraverseState*::visual::DrawBitmap
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:290,1
    - Dst: visual_2d_draw_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:297,1
    - Dst: GF_TraverseState*::visual::DrawBitmap
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:300,1
    - Dst: visual_2d_texture_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:306,1
    - Dst: visual_2d_draw_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:307,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 1
    argNames:
    - tr_state
    argTypes:
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 308
    functionName: compositor_2d_draw_rectangle
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 0
    functionsReached:
    - visual_2d_draw_path
    - GF_TraverseState*::visual::DrawBitmap
    - gf_mx2d_apply_rect
    - gf_rect_pixelize
    - gf_irect_intersect
    - visual_2d_texture_path
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void compositor_2d_draw_rectangle(GF_TraverseState *tr_state)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:314,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:315,1
    - Dst: gf_path_add_rect_center
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:316,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:317,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:318,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 310
    functionDepth: 1
    functionLinenumber: 310
    functionLinenumberEnd: 320
    functionName: rectangle_check_changes
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 0
    functionsReached:
    - gf_path_add_rect_center
    - drawable_reset_path
    - drawable_mark_modified
    - gf_node_dirty_get
    - gf_node_dirty_clear
    linkageType: ''
    returnType: void
    signature: void rectangle_check_changes(GF_Node *node, Drawable *stack, GF_TraverseState
      *tr_state)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_get_handler
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:334,1
    - Dst: gf_mo_get_srd_info
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:337,1
    - Dst: gf_mo_hint_gaze
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:352,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:369,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:376,1
    - Dst: gf_sc_texture_play
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:380,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:386,1
    - Dst: gf_sc_texture_stop_no_unregister
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:387,1
    - Dst: gf_mo_hint_quality_degradation
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:393,1
    - Dst: gf_mo_hint_quality_degradation
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:396,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 62
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 322
    functionDepth: 1
    functionLinenumber: 322
    functionLinenumberEnd: 400
    functionName: rectangle_check_adaptation
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 0
    functionsReached:
    - gf_mo_hint_gaze
    - gf_mo_hint_quality_degradation
    - GF_LOG
    - gf_sc_texture_get_handler
    - gf_sc_texture_play
    - gf_sc_texture_stop_no_unregister
    - gf_mo_get_srd_info
    linkageType: ''
    returnType: Bool
    signature: Bool rectangle_check_adaptation(GF_Node *node, Drawable *stack, GF_TraverseState
      *tr_state)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:405,1
    - Dst: drawable_node_del
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:409,1
    - Dst: rectangle_check_changes
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:413,1
    - Dst: rectangle_check_adaptation
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:415,1
    - Dst: compositor_2d_draw_rectangle
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:420,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:425,1
    - Dst: mesh_new_rectangle
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:426,1
    - Dst: visual_3d_draw_2d
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:428,1
    - Dst: vrml_drawable_pick
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:432,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:435,1
    - Dst: drawable_init_context_mpeg4
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:446,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:455,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:470,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 49
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 402
    functionDepth: 2
    functionLinenumber: 402
    functionLinenumberEnd: 471
    functionName: TraverseRectangle
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 0
    functionsReached:
    - rectangle_check_adaptation
    - drawable_node_del
    - compositor_2d_draw_rectangle
    - mesh_new_rectangle
    - drawable_init_context_mpeg4
    - GF_COL_A
    - rectangle_check_changes
    - drawable_finalize_sort
    - visual_3d_draw_2d
    - new_mesh
    - vrml_drawable_pick
    - gf_node_get_private
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void TraverseRectangle(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_stack_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:475,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:477,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 473
    functionDepth: 2
    functionLinenumber: 473
    functionLinenumberEnd: 478
    functionName: compositor_init_rectangle
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_stack_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_rectangle(GF_Compositor  *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - nbPts
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 481
    functionDepth: 0
    functionLinenumber: 481
    functionLinenumberEnd: 482
    functionName: CHECK_VALID_C2D
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_VALID_C2D(nbPts)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _i
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 484
      start: 483
    functionDepth: 0
    functionLinenumber: 483
    functionLinenumberEnd: 484
    functionName: GET_IDX
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_IDX(_i)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:495,1
    - Dst: GET_IDX
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:512,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:514,1
    - Dst: CHECK_VALID_C2D
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:523,1
    - Dst: GET_IDX
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:524,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:525,1
    - Dst: CHECK_VALID_C2D
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:530,1
    - Dst: GET_IDX
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:531,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:532,1
    - Dst: CHECK_VALID_C2D
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:538,1
    - Dst: GET_IDX
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:539,1
    - Dst: GET_IDX
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:540,1
    - Dst: GET_IDX
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:541,1
    - Dst: gf_path_add_cubic_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:542,1
    - Dst: CHECK_VALID_C2D
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:549,1
    - Dst: GET_IDX
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:552,1
    - Dst: GET_IDX
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:553,1
    - Dst: gf_path_add_cubic_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:554,1
    - Dst: CHECK_VALID_C2D
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:565,1
    - Dst: GET_IDX
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:566,1
    - Dst: GET_IDX
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:567,1
    - Dst: GET_IDX
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:568,1
    - Dst: gf_path_add_arc_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:569,1
    - Dst: gf_path_close
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:576,1
    - Dst: CHECK_VALID_C2D
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:580,1
    - Dst: GET_IDX
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:581,1
    - Dst: GET_IDX
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:582,1
    - Dst: gf_path_add_quadratic_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:583,1
    - Dst: gf_path_add_bezier
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:599,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:602,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:603,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 93
    argCount: 4
    argNames:
    - node
    - stack
    - tr_state
    - idx
    argTypes:
    - GF_Node*
    - Drawable*
    - GF_TraverseState*
    - MFInt32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 485
    functionDepth: 1
    functionLinenumber: 485
    functionLinenumberEnd: 604
    functionName: curve2d_check_changes
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 0
    functionsReached:
    - gf_path_add_arc_to
    - gf_path_add_quadratic_to
    - drawable_reset_path
    - drawable_mark_modified
    - CHECK_VALID_C2D
    - gf_path_add_move_to
    - gf_node_dirty_clear
    - gf_path_add_bezier
    - gf_path_add_cubic_to
    - gf_path_add_line_to
    - gf_path_close
    - GET_IDX
    linkageType: ''
    returnType: void
    signature: void curve2d_check_changes(GF_Node *node, Drawable *stack, GF_TraverseState
      *tr_state, MFInt32 *idx)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:609,1
    - Dst: drawable_node_del
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:613,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:616,1
    - Dst: curve2d_check_changes
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:617,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:624,1
    - Dst: mesh_from_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:625,1
    - Dst: visual_3d_draw_2d
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:627,1
    - Dst: vrml_drawable_pick
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:631,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:634,1
    - Dst: drawable_init_context_mpeg4
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:640,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:642,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 645
      start: 606
    functionDepth: 2
    functionLinenumber: 606
    functionLinenumberEnd: 645
    functionName: TraverseCurve2D
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 0
    functionsReached:
    - drawable_node_del
    - mesh_from_path
    - drawable_init_context_mpeg4
    - drawable_finalize_sort
    - gf_node_dirty_get
    - visual_3d_draw_2d
    - new_mesh
    - vrml_drawable_pick
    - curve2d_check_changes
    - gf_node_get_private
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void TraverseCurve2D(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_stack_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:649,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:650,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 651
      start: 647
    functionDepth: 2
    functionLinenumber: 647
    functionLinenumberEnd: 651
    functionName: compositor_init_curve2d
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_stack_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_curve2d(GF_Compositor  *compositor, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:667,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:667,1
    - Dst: gf_v2d_len
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:667,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - mat
    - w
    - h
    argTypes:
    - GF_Matrix2D*
    - Fixed*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 668
      start: 662
    functionDepth: 1
    functionLinenumber: 662
    functionLinenumberEnd: 668
    functionName: get_point_size
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_v2d_len
    - gf_divfix
    linkageType: ''
    returnType: void
    signature: void get_point_size(GF_Matrix2D *mat, Fixed *w, Fixed *h)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:676,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:679,1
    - Dst: get_point_size
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:681,1
    - Dst: gf_path_add_rect
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:684,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:688,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:689,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 690
      start: 670
    functionDepth: 2
    functionLinenumber: 670
    functionLinenumberEnd: 690
    functionName: pointset2d_check_changes
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 0
    functionsReached:
    - drawable_reset_path
    - drawable_mark_modified
    - gf_node_dirty_get
    - gf_path_add_rect
    - gf_node_dirty_clear
    - get_point_size
    linkageType: ''
    returnType: void
    signature: void pointset2d_check_changes(GF_Node *node, Drawable *stack, GF_TraverseState
      *tr_state)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: visual_2d_draw_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:707,1
    - Dst: get_point_size
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:711,1
    - Dst: gf_path_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:713,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:714,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:714,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:717,1
    - Dst: gf_path_add_rect_center
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:718,1
    - Dst: visual_2d_draw_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:719,1
    - Dst: gf_path_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:720,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:723,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - node
    - tr_state
    argTypes:
    - GF_Node*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 724
      start: 692
    functionDepth: 2
    functionLinenumber: 692
    functionLinenumberEnd: 724
    functionName: PointSet2D_Draw
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 0
    functionsReached:
    - GF_COL_ARGB_FIXED
    - gf_path_add_rect_center
    - INT2FIX
    - GF_COL_A
    - gf_path_new
    - gf_path_del
    - get_point_size
    - gf_path_reset
    - visual_2d_draw_path
    linkageType: ''
    returnType: void
    signature: void PointSet2D_Draw(GF_Node *node, GF_TraverseState *tr_state)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:730,1
    - Dst: drawable_node_del
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:734,1
    - Dst: pointset2d_check_changes
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:740,1
    - Dst: PointSet2D_Draw
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:744,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:751,1
    - Dst: mesh_new_ps
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:752,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:754,1
    - Dst: drawable_get_aspect_2d_mpeg4
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:755,1
    - Dst: visual_3d_set_material_2d_argb
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:756,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:757,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:762,1
    - Dst: drawable_init_context_mpeg4
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:770,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:772,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 39
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 777
      start: 726
    functionDepth: 3
    functionLinenumber: 726
    functionLinenumberEnd: 777
    functionName: TraversePointSet2D
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 0
    functionsReached:
    - drawable_node_del
    - PointSet2D_Draw
    - drawable_init_context_mpeg4
    - drawable_finalize_sort
    - visual_3d_mesh_paint
    - mesh_new_ps
    - new_mesh
    - memset
    - visual_3d_set_material_2d_argb
    - pointset2d_check_changes
    - gf_node_get_private
    - drawable_get_aspect_2d_mpeg4
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void TraversePointSet2D(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_stack_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:782,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:784,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 785
      start: 780
    functionDepth: 2
    functionLinenumber: 780
    functionLinenumberEnd: 785
    functionName: compositor_init_pointset2d
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_stack_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_pointset2d(GF_Compositor  *compositor, GF_Node
      *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:793,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:803,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 804
      start: 787
    functionDepth: 6
    functionLinenumber: 787
    functionLinenumberEnd: 804
    functionName: TraverseBitWrapper
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 0
    functionsReached:
    - gf_node_set_private
    - gf_node_traverse
    linkageType: ''
    returnType: void
    signature: void TraverseBitWrapper(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:811,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:811,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:812,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:815,1
    - Dst: TraverseBitWrapper
      Src: /src/gpac/src/compositor/mpeg4_geometry_2d.c:816,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 806
    functionDepth: 7
    functionLinenumber: 806
    functionLinenumberEnd: 819
    functionName: compositor_init_bitwrapper
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_2d.c
    functionUses: 1
    functionsReached:
    - gf_node_set_private
    - gf_node_set_callback_function
    - TraverseBitWrapper
    - gf_node_get_private
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: void
    signature: void compositor_init_bitwrapper(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/compositor/scene_ns.c:39,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/compositor/scene_ns.c:41,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene_ns.c:43,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/compositor/scene_ns.c:43,1
    - Dst: gf_scene_message
      Src: /src/gpac/src/compositor/scene_ns.c:46,1
    - Dst: gf_odm_service_media_event
      Src: /src/gpac/src/compositor/scene_ns.c:50,1
    - Dst: snprintf
      Src: /src/gpac/src/compositor/scene_ns.c:55,1
    - Dst: gf_scene_message
      Src: /src/gpac/src/compositor/scene_ns.c:56,1
    - Dst: gf_odm_service_media_event
      Src: /src/gpac/src/compositor/scene_ns.c:59,1
    - Dst: gf_scene_notify_event
      Src: /src/gpac/src/compositor/scene_ns.c:65,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene_ns.c:70,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/scene_ns.c:72,1
    - Dst: gf_scene_get_root_scene
      Src: /src/gpac/src/compositor/scene_ns.c:83,1
    - Dst: gf_scene_ns_del
      Src: /src/gpac/src/compositor/scene_ns.c:87,1
    - Dst: gf_filter_send_gf_event
      Src: /src/gpac/src/compositor/scene_ns.c:93,1
    - Dst: gf_scene_remove_object
      Src: /src/gpac/src/compositor/scene_ns.c:99,1
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/compositor/scene_ns.c:100,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 51
    argCount: 3
    argNames:
    - failed_filter
    - udta
    - err
    argTypes:
    - GF_Filter*
    - void*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 32
    functionDepth: 4
    functionLinenumber: 32
    functionLinenumberEnd: 106
    functionName: scene_ns_on_setup_error
    functionSourceFile: /src/gpac/src/compositor/scene_ns.c
    functionUses: 0
    functionsReached:
    - gf_scene_ns_del
    - gf_scene_remove_object
    - gf_list_get
    - gf_scene_notify_event
    - snprintf
    - GF_LOG
    - gf_filter_send_gf_event
    - gf_scene_message
    - gf_list_count
    - gf_odm_service_media_event
    - gf_fatal_assert
    - gf_error_to_string
    - gf_scene_get_root_scene
    - gf_odm_disconnect
    linkageType: ''
    returnType: Bool
    signature: Bool scene_ns_on_setup_error(GF_Filter *failed_filter, void *udta,
      GF_Err err)
  - BBCount: 70
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene_ns.c:122,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene_ns.c:126,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/scene_ns.c:139,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/scene_ns.c:143,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/scene_ns.c:146,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/scene_ns.c:150,1
    - Dst: gf_sc_set_fps
      Src: /src/gpac/src/compositor/scene_ns.c:153,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene_ns.c:157,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene_ns.c:166,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/scene_ns.c:171,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene_ns.c:195,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/scene_ns.c:196,1
    - Dst: gf_filter_pid_is_filter_in_parents
      Src: /src/gpac/src/compositor/scene_ns.c:211,1
    - Dst: strrchr
      Src: /src/gpac/src/compositor/scene_ns.c:236,1
    - Dst: strchr
      Src: /src/gpac/src/compositor/scene_ns.c:238,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/scene_ns.c:242,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/scene_ns.c:243,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/scene_ns.c:244,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/scene_ns.c:245,1
    - Dst: atoi
      Src: /src/gpac/src/compositor/scene_ns.c:245,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/scene_ns.c:247,1
    - Dst: atoi
      Src: /src/gpac/src/compositor/scene_ns.c:276,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene_ns.c:291,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/scene_ns.c:292,1
    - Dst: gf_filter_pid_is_filter_in_parents
      Src: /src/gpac/src/compositor/scene_ns.c:304,1
    - Dst: gf_odm_new
      Src: /src/gpac/src/compositor/scene_ns.c:320,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/scene_ns.c:322,1
    - Dst: gf_filter_pid_is_sparse
      Src: /src/gpac/src/compositor/scene_ns.c:338,1
    - Dst: gf_odm_register_pid
      Src: /src/gpac/src/compositor/scene_ns.c:343,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/compositor/scene_ns.c:345,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/scene_ns.c:347,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene_ns.c:361,1
    - Dst: gf_odm_setup_object
      Src: /src/gpac/src/compositor/scene_ns.c:362,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene_ns.c:373,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/scene_ns.c:377,1
    CyclomaticComplexity: 110
    EdgeCount: 110
    ICount: 217
    argCount: 4
    argNames:
    - scene
    - sns
    - pid
    - is_in_iod
    argTypes:
    - GF_Scene*
    - GF_SceneNamespace*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 109
    functionDepth: 3
    functionLinenumber: 109
    functionLinenumberEnd: 379
    functionName: gf_scene_insert_pid
    functionSourceFile: /src/gpac/src/compositor/scene_ns.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_get_property
    - strrchr
    - gf_odm_new
    - gf_odm_setup_object
    - GF_LOG
    - gf_sc_send_event
    - gf_filter_pid_is_filter_in_parents
    - strstr
    - gf_list_count
    - gf_odm_register_pid
    - strnicmp
    - atoi
    - gf_list_add
    - gf_filter_pid_set_udta
    - gf_filter_pid_is_sparse
    - strchr
    - gf_sc_set_fps
    linkageType: ''
    returnType: void
    signature: void gf_scene_insert_pid(GF_Scene *scene, GF_SceneNamespace *sns, GF_FilterPid
      *pid, Bool is_in_iod)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/scene_ns.c:386,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene_ns.c:388,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/compositor/scene_ns.c:392,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/scene_ns.c:393,1
    - Dst: strchr
      Src: /src/gpac/src/compositor/scene_ns.c:394,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene_ns.c:396,1
    - Dst: gf_scene_get_root_scene
      Src: /src/gpac/src/compositor/scene_ns.c:401,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/scene_ns.c:402,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 4
    argNames:
    - scene
    - owner
    - url
    - parent_url
    argTypes:
    - GF_Scene*
    - GF_ObjectManager*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 381
    functionDepth: 1
    functionLinenumber: 381
    functionLinenumberEnd: 405
    functionName: gf_scene_ns_new
    functionSourceFile: /src/gpac/src/compositor/scene_ns.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_strdup
    - GF_SAFEALLOC
    - GF_LOG
    - gf_url_concatenate
    - gf_list_add
    - strchr
    - gf_scene_get_root_scene
    linkageType: ''
    returnType: GF_SceneNamespace
    signature: GF_SceneNamespace *gf_scene_ns_new(GF_Scene *scene, GF_ObjectManager
      *owner, const char *url, const char *parent_url)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/scene_ns.c:411,1
    - Dst: gf_filter_remove_src
      Src: /src/gpac/src/compositor/scene_ns.c:414,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene_ns.c:417,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/compositor/scene_ns.c:418,1
    - Dst: gf_clock_del
      Src: /src/gpac/src/compositor/scene_ns.c:419,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/scene_ns.c:421,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene_ns.c:423,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene_ns.c:424,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene_ns.c:425,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - sns
    - root_scene
    argTypes:
    - GF_SceneNamespace*
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 409
    functionDepth: 1
    functionLinenumber: 409
    functionLinenumberEnd: 426
    functionName: gf_scene_ns_del
    functionSourceFile: /src/gpac/src/compositor/scene_ns.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_filter_remove_src
    - gf_list_count
    - gf_list_del_item
    - gf_clock_del
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_scene_ns_del(GF_SceneNamespace *sns, GF_Scene *root_scene)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/compositor/scene_ns.c:432,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - filter
    - callback
    - reschedule_ms
    argTypes:
    - GF_Filter*
    - void*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 429
    functionDepth: 4
    functionLinenumber: 429
    functionLinenumberEnd: 434
    functionName: scene_ns_remove_object
    functionSourceFile: /src/gpac/src/compositor/scene_ns.c
    functionUses: 0
    functionsReached:
    - gf_odm_disconnect
    linkageType: ''
    returnType: Bool
    signature: Bool scene_ns_remove_object(GF_Filter *filter, void *callback, u32
      *reschedule_ms)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_section_count
      Src: /src/gpac/src/compositor/scene_ns.c:451,1
    - Dst: gf_opts_get_section_name
      Src: /src/gpac/src/compositor/scene_ns.c:455,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/scene_ns.c:456,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/scene_ns.c:457,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/scene_ns.c:458,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/scene_ns.c:459,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/scene_ns.c:460,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/scene_ns.c:462,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/scene_ns.c:463,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/scene_ns.c:465,1
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/compositor/scene_ns.c:466,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/scene_ns.c:468,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/compositor/scene_ns.c:469,1
    - Dst: gf_opts_del_section
      Src: /src/gpac/src/compositor/scene_ns.c:470,1
    - Dst: strchr
      Src: /src/gpac/src/compositor/scene_ns.c:479,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene_ns.c:482,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/scene_ns.c:484,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/scene_ns.c:485,1
    - Dst: gf_scene_ns_new
      Src: /src/gpac/src/compositor/scene_ns.c:494,1
    - Dst: gf_scene_message
      Src: /src/gpac/src/compositor/scene_ns.c:497,1
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/compositor/scene_ns.c:498,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/scene_ns.c:503,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene_ns.c:506,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/scene_ns.c:509,1
    - Dst: gf_odm_service_media_event
      Src: /src/gpac/src/compositor/scene_ns.c:510,1
    - Dst: gf_odm_service_media_event
      Src: /src/gpac/src/compositor/scene_ns.c:511,1
    - Dst: gf_filter_get_id
      Src: /src/gpac/src/compositor/scene_ns.c:523,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/compositor/scene_ns.c:526,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/compositor/scene_ns.c:527,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/scene_ns.c:528,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/scene_ns.c:529,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/scene_ns.c:530,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/scene_ns.c:531,1
    - Dst: gf_filter_lock_all
      Src: /src/gpac/src/compositor/scene_ns.c:535,1
    - Dst: gf_filter_connect_source
      Src: /src/gpac/src/compositor/scene_ns.c:536,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene_ns.c:537,1
    - Dst: gf_filter_lock_all
      Src: /src/gpac/src/compositor/scene_ns.c:546,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene_ns.c:549,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/scene_ns.c:550,1
    - Dst: gf_scene_notify_event
      Src: /src/gpac/src/compositor/scene_ns.c:566,1
    - Dst: gf_scene_message
      Src: /src/gpac/src/compositor/scene_ns.c:567,1
    - Dst: gf_filter_post_task
      Src: /src/gpac/src/compositor/scene_ns.c:575,1
    - Dst: gf_filter_post_task
      Src: /src/gpac/src/compositor/scene_ns.c:577,1
    - Dst: gf_filter_remove
      Src: /src/gpac/src/compositor/scene_ns.c:580,1
    - Dst: gf_filter_set_source_restricted
      Src: /src/gpac/src/compositor/scene_ns.c:586,1
    - Dst: gf_filter_set_setup_failure_callback
      Src: /src/gpac/src/compositor/scene_ns.c:588,1
    - Dst: gf_filter_lock_all
      Src: /src/gpac/src/compositor/scene_ns.c:590,1
    - Dst: gf_odm_service_media_event
      Src: /src/gpac/src/compositor/scene_ns.c:593,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 126
    argCount: 5
    argNames:
    - scene
    - odm
    - serviceURL
    - parent_url
    - addon_parent_ns
    argTypes:
    - GF_Scene*
    - GF_ObjectManager*
    - char*
    - char*
    - GF_SceneNamespace*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 594
      start: 437
    functionDepth: 4
    functionLinenumber: 437
    functionLinenumberEnd: 594
    functionName: gf_scene_ns_connect_object
    functionSourceFile: /src/gpac/src/compositor/scene_ns.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_opts_del_section
    - gf_filter_get_sep
    - gf_list_count
    - gf_scene_message
    - gf_opts_get_key
    - gf_filter_set_setup_failure_callback
    - gf_net_get_ntp
    - strchr
    - gf_list_get
    - gf_assert
    - gf_strdup
    - gf_scene_notify_event
    - sprintf
    - gf_filter_set_source_restricted
    - gf_filter_get_id
    - strncmp
    - stricmp
    - gf_dynstrcat
    - gf_opts_get_section_name
    - gf_filter_remove
    - sscanf
    - gf_filter_post_task
    - gf_odm_service_media_event
    - gf_filter_connect_source
    - gf_odm_disconnect
    - gf_scene_ns_new
    - gf_filter_lock_all
    - gf_file_delete
    - strcmp
    - gf_opts_get_section_count
    linkageType: ''
    returnType: void
    signature: void gf_scene_ns_connect_object(GF_Scene *scene, GF_ObjectManager *odm,
      char *serviceURL, char *parent_url, GF_SceneNamespace *addon_parent_ns)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_inline.c:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - scene
    argTypes:
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 46
    functionDepth: 5
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionName: gf_inline_restart
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - gf_sc_invalidate
    linkageType: ''
    returnType: void
    signature: void gf_inline_restart(GF_Scene *scene)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/mpeg4_inline.c:57,1
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/mpeg4_inline.c:58,1
    - Dst: gf_scene_get_media_object_ex
      Src: /src/gpac/src/compositor/mpeg4_inline.c:61,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_inline.c:64,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_inline.c:68,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_inline.c:73,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_inline.c:77,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/mpeg4_inline.c:79,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_inline.c:80,1
    - Dst: gf_mo_play
      Src: /src/gpac/src/compositor/mpeg4_inline.c:83,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 1
    argNames:
    - root
    argTypes:
    - M_Inline*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 53
    functionDepth: 5
    functionLinenumber: 53
    functionLinenumberEnd: 86
    functionName: gf_inline_set_scene
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - gf_mo_play
    - gf_node_set_private
    - gf_list_find
    - gf_scene_get_media_object_ex
    - gf_node_get_graph
    - gf_sc_invalidate
    - gf_list_add
    - gf_sg_vrml_mf_reset
    - gf_sg_get_private
    linkageType: ''
    returnType: Bool
    signature: Bool gf_inline_set_scene(M_Inline *root)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_inline.c:93,1
    - Dst: gf_mo_get_od_id
      Src: /src/gpac/src/compositor/mpeg4_inline.c:95,1
    - Dst: gf_mo_is_same_url
      Src: /src/gpac/src/compositor/mpeg4_inline.c:105,1
    - Dst: gf_scene_notify_event
      Src: /src/gpac/src/compositor/mpeg4_inline.c:110,1
    - Dst: gf_node_dirty_parents
      Src: /src/gpac/src/compositor/mpeg4_inline.c:111,1
    - Dst: gf_mo_event_target_remove_by_node
      Src: /src/gpac/src/compositor/mpeg4_inline.c:112,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_inline.c:115,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_inline.c:121,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_inline.c:123,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_inline.c:124,1
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/compositor/mpeg4_inline.c:135,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_inline.c:138,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_inline.c:139,1
    - Dst: gf_mo_del
      Src: /src/gpac/src/compositor/mpeg4_inline.c:140,1
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/compositor/mpeg4_inline.c:147,1
    - Dst: gf_odm_stop_or_destroy
      Src: /src/gpac/src/compositor/mpeg4_inline.c:149,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/compositor/mpeg4_inline.c:166,1
    - Dst: gf_inline_set_scene
      Src: /src/gpac/src/compositor/mpeg4_inline.c:167,1
    - Dst: gf_node_dirty_parents
      Src: /src/gpac/src/compositor/mpeg4_inline.c:169,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 56
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 88
    functionDepth: 6
    functionLinenumber: 88
    functionLinenumberEnd: 172
    functionName: gf_inline_on_modified
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_scene_notify_event
    - gf_mo_del
    - gf_odm_stop_or_destroy
    - gf_inline_set_scene
    - gf_mo_get_od_id
    - gf_node_set_private
    - gf_mo_is_same_url
    - gf_node_dirty_parents
    - gf_list_del_item
    - gf_mo_event_target_remove_by_node
    - gf_node_get_parent
    - gf_sg_vrml_mf_reset
    - gf_node_get_private
    - gf_odm_disconnect
    linkageType: ''
    returnType: void
    signature: void gf_inline_on_modified(GF_Node *node)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_check_segment_switch
      Src: /src/gpac/src/compositor/mpeg4_inline.c:178,1
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/mpeg4_inline.c:182,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_inline.c:187,1
    - Dst: gf_clock_time_absolute
      Src: /src/gpac/src/compositor/mpeg4_inline.c:194,1
    - Dst: MC_GetRange
      Src: /src/gpac/src/compositor/mpeg4_inline.c:198,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_inline.c:205,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 1
    argNames:
    - scene
    argTypes:
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 174
    functionDepth: 5
    functionLinenumber: 174
    functionLinenumberEnd: 210
    functionName: gf_inline_check_restart
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - gf_clock_time_absolute
    - MC_GetRange
    - gf_odm_check_segment_switch
    - gf_list_count
    - gf_sc_invalidate
    - gf_odm_get_media_clock
    linkageType: ''
    returnType: void
    signature: void gf_inline_check_restart(GF_Scene *scene)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_inline_check_restart
      Src: /src/gpac/src/compositor/mpeg4_inline.c:214,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_inline.c:217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - scene
    argTypes:
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 212
    functionDepth: 6
    functionLinenumber: 212
    functionLinenumberEnd: 220
    functionName: gf_scene_mpeg4_inline_check_restart
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 1
    functionsReached:
    - gf_sc_invalidate
    - gf_inline_check_restart
    linkageType: ''
    returnType: void
    signature: void gf_scene_mpeg4_inline_check_restart(GF_Scene *scene)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_restart_dynamic
      Src: /src/gpac/src/compositor/mpeg4_inline.c:239,1
    - Dst: gf_odm_stop
      Src: /src/gpac/src/compositor/mpeg4_inline.c:247,1
    - Dst: gf_scene_disconnect
      Src: /src/gpac/src/compositor/mpeg4_inline.c:249,1
    - Dst: gf_odm_start
      Src: /src/gpac/src/compositor/mpeg4_inline.c:252,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 1
    argNames:
    - scene
    argTypes:
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 222
    functionDepth: 2
    functionLinenumber: 222
    functionLinenumberEnd: 254
    functionName: gf_scene_mpeg4_inline_restart
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - gf_scene_restart_dynamic
    - gf_scene_disconnect
    - gf_odm_stop
    - gf_odm_start
    linkageType: ''
    returnType: void
    signature: void gf_scene_mpeg4_inline_restart(GF_Scene *scene)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_inline.c:259,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_inline.c:266,1
    - Dst: gf_scene_notify_event
      Src: /src/gpac/src/compositor/mpeg4_inline.c:268,1
    - Dst: gf_mo_event_target_remove_by_node
      Src: /src/gpac/src/compositor/mpeg4_inline.c:270,1
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/mpeg4_inline.c:281,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/mpeg4_inline.c:281,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_inline.c:282,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_inline.c:283,1
    - Dst: gf_odm_reset_media_control
      Src: /src/gpac/src/compositor/mpeg4_inline.c:285,1
    - Dst: gf_mo_del
      Src: /src/gpac/src/compositor/mpeg4_inline.c:288,1
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/compositor/mpeg4_inline.c:290,1
    - Dst: gf_odm_stop
      Src: /src/gpac/src/compositor/mpeg4_inline.c:292,1
    - Dst: gf_scene_disconnect
      Src: /src/gpac/src/compositor/mpeg4_inline.c:293,1
    - Dst: gf_inline_set_scene
      Src: /src/gpac/src/compositor/mpeg4_inline.c:307,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_inline.c:308,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/mpeg4_inline.c:312,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_inline.c:313,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/mpeg4_inline.c:315,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/mpeg4_inline.c:327,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_inline.c:330,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_inline.c:335,1
    - Dst: gf_sc_traverse_subscene
      Src: /src/gpac/src/compositor/mpeg4_inline.c:339,1
    - Dst: gf_inline_check_restart
      Src: /src/gpac/src/compositor/mpeg4_inline.c:343,1
    - Dst: gf_inline_on_modified
      Src: /src/gpac/src/compositor/mpeg4_inline.c:350,1
    - Dst: gf_scene_mpeg4_inline_restart
      Src: /src/gpac/src/compositor/mpeg4_inline.c:355,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/mpeg4_inline.c:356,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 72
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 256
    functionDepth: 7
    functionLinenumber: 256
    functionLinenumberEnd: 360
    functionName: gf_inline_traverse
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - gf_inline_set_scene
    - gf_inline_check_restart
    - gf_node_dirty_clear
    - gf_inline_on_modified
    - gf_scene_notify_event
    - gf_sc_traverse_subscene
    - gf_scene_mpeg4_inline_restart
    - gf_sc_invalidate
    - gf_mo_event_target_remove_by_node
    - gf_sg_vrml_mf_reset
    - gf_node_get_private
    - gf_mo_del
    - gf_node_get_graph
    - gf_list_del_item
    - gf_odm_reset_media_control
    - gf_sg_get_private
    - strlen
    - gf_odm_disconnect
    - gf_node_dirty_set
    - gf_scene_disconnect
    - gf_odm_stop
    linkageType: ''
    returnType: void
    signature: void gf_inline_traverse(GF_Node *n, void *rs, Bool is_destroy)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_inline.c:368,1
    - Dst: gf_sc_uri_is_hardcoded_proto
      Src: /src/gpac/src/compositor/mpeg4_inline.c:370,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - compositor
    - url
    argTypes:
    - GF_Compositor*
    - MFURL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 363
    functionDepth: 1
    functionLinenumber: 363
    functionLinenumberEnd: 374
    functionName: gf_inline_is_hardcoded_proto
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - gf_sc_uri_is_hardcoded_proto
    - strstr
    linkageType: ''
    returnType: Bool
    signature: Bool gf_inline_is_hardcoded_proto(GF_Compositor *compositor, MFURL
      *url)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_inline.c:385,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/compositor/mpeg4_inline.c:386,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_inline.c:390,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_inline.c:391,1
    - Dst: gf_mo_del
      Src: /src/gpac/src/compositor/mpeg4_inline.c:392,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:395,1
    - Dst: gf_inline_is_hardcoded_proto
      Src: /src/gpac/src/compositor/mpeg4_inline.c:402,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_inline.c:405,1
    - Dst: gf_mo_get_od_id
      Src: /src/gpac/src/compositor/mpeg4_inline.c:409,1
    - Dst: gf_mo_get_od_id
      Src: /src/gpac/src/compositor/mpeg4_inline.c:410,1
    - Dst: gf_mo_get_od_id
      Src: /src/gpac/src/compositor/mpeg4_inline.c:410,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_inline.c:422,1
    - Dst: gf_mo_get_od_id
      Src: /src/gpac/src/compositor/mpeg4_inline.c:427,1
    - Dst: gf_mo_is_same_url
      Src: /src/gpac/src/compositor/mpeg4_inline.c:429,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/compositor/mpeg4_inline.c:433,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/compositor/mpeg4_inline.c:434,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_inline.c:435,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:436,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:437,1
    - Dst: gf_inline_is_hardcoded_proto
      Src: /src/gpac/src/compositor/mpeg4_inline.c:452,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_inline.c:455,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/mpeg4_inline.c:458,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_inline.c:460,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_inline.c:462,1
    - Dst: gf_scene_get_media_object
      Src: /src/gpac/src/compositor/mpeg4_inline.c:463,1
    - Dst: gf_mo_play
      Src: /src/gpac/src/compositor/mpeg4_inline.c:465,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 81
    argCount: 2
    argNames:
    - _is
    - lib_url
    argTypes:
    - void*
    - MFURL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 376
    functionDepth: 3
    functionLinenumber: 376
    functionLinenumberEnd: 469
    functionName: gf_inline_get_proto_lib
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_mo_play
    - gf_list_pop_back
    - gf_mo_del
    - gf_scene_get_media_object
    - gf_mo_get_od_id
    - gf_url_concatenate
    - gf_list_count
    - gf_inline_is_hardcoded_proto
    - gf_mo_is_same_url
    - strcmp
    - gf_list_del_item
    - gf_list_add
    - stricmp
    - gf_sg_vrml_mf_reset
    - gf_list_enum
    linkageType: ''
    returnType: GF_SceneGraph
    signature: GF_SceneGraph *gf_inline_get_proto_lib(void *_is, MFURL *lib_url)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/mpeg4_inline.c:475,1
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/mpeg4_inline.c:476,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/compositor/mpeg4_inline.c:479,1
    - Dst: strrchr
      Src: /src/gpac/src/compositor/mpeg4_inline.c:483,1
    - Dst: strrchr
      Src: /src/gpac/src/compositor/mpeg4_inline.c:488,1
    - Dst: strrchr
      Src: /src/gpac/src/compositor/mpeg4_inline.c:490,1
    - Dst: gf_odm_find_segment
      Src: /src/gpac/src/compositor/mpeg4_inline.c:495,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_inline.c:497,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 20
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 472
    functionDepth: 2
    functionLinenumber: 472
    functionLinenumberEnd: 498
    functionName: gf_inline_is_default_viewpoint
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 2
    functionsReached:
    - gf_odm_find_segment
    - strrchr
    - gf_node_get_name
    - strcmp
    - gf_node_get_graph
    - gf_sg_get_private
    linkageType: ''
    returnType: Bool
    signature: Bool gf_inline_is_default_viewpoint(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_inline.c:503,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - scene
    - node
    argTypes:
    - GF_Scene*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 501
    functionDepth: 2
    functionLinenumber: 501
    functionLinenumberEnd: 504
    functionName: gf_init_inline
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void gf_init_inline(GF_Scene *scene, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_inline.c:515,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/mpeg4_inline.c:517,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/mpeg4_inline.c:517,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_inline.c:518,1
    - Dst: strcpy
      Src: /src/gpac/src/compositor/mpeg4_inline.c:519,1
    - Dst: strcat
      Src: /src/gpac/src/compositor/mpeg4_inline.c:520,1
    - Dst: strcat
      Src: /src/gpac/src/compositor/mpeg4_inline.c:521,1
    - Dst: gf_sha1_csum
      Src: /src/gpac/src/compositor/mpeg4_inline.c:522,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/mpeg4_inline.c:522,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:523,1
    - Dst: strcpy
      Src: /src/gpac/src/compositor/mpeg4_inline.c:525,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:529,1
    - Dst: strcat
      Src: /src/gpac/src/compositor/mpeg4_inline.c:530,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_inline.c:532,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 1
    argNames:
    - storage
    argTypes:
    - M_Storage*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 506
    functionDepth: 2
    functionLinenumber: 506
    functionLinenumberEnd: 533
    functionName: storage_get_section
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_free
    - gf_strdup
    - strcpy
    - strlen
    - sprintf
    - gf_sha1_csum
    - gf_node_get_private
    - gf_malloc
    linkageType: ''
    returnType: char
    signature: char *storage_get_section(M_Storage *storage)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:540,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:543,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:546,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:549,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inline.c:550,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:553,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inline.c:554,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inline.c:555,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:558,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inline.c:559,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inline.c:560,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inline.c:561,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:564,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_inline.c:565,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 3
    argNames:
    - ptr
    - fieldType
    - opt
    argTypes:
    - void*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 535
    functionDepth: 1
    functionLinenumber: 535
    functionLinenumberEnd: 570
    functionName: storage_parse_sf
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_free
    - gf_strdup
    - sscanf
    linkageType: ''
    returnType: void
    signature: void storage_parse_sf(void *ptr, u32 fieldType, char *opt)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: storage_get_section
      Src: /src/gpac/src/compositor/mpeg4_inline.c:578,1
    - Dst: gf_opts_get_key_count
      Src: /src/gpac/src/compositor/mpeg4_inline.c:581,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:582,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/mpeg4_inline.c:585,1
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/compositor/mpeg4_inline.c:586,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:587,1
    - Dst: gf_opts_del_section
      Src: /src/gpac/src/compositor/mpeg4_inline.c:589,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:590,1
    - Dst: gf_opts_get_key_count
      Src: /src/gpac/src/compositor/mpeg4_inline.c:594,1
    - Dst: gf_opts_del_section
      Src: /src/gpac/src/compositor/mpeg4_inline.c:596,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:597,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:603,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/mpeg4_inline.c:604,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/compositor/mpeg4_inline.c:607,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/compositor/mpeg4_inline.c:609,1
    - Dst: storage_parse_sf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:610,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/compositor/mpeg4_inline.c:612,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_inline.c:615,1
    - Dst: strchr
      Src: /src/gpac/src/compositor/mpeg4_inline.c:617,1
    - Dst: strchr
      Src: /src/gpac/src/compositor/mpeg4_inline.c:618,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/compositor/mpeg4_inline.c:622,1
    - Dst: storage_parse_sf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:623,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/mpeg4_inline.c:628,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:630,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 49
    argCount: 1
    argNames:
    - storage
    argTypes:
    - M_Storage*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 572
    functionDepth: 11
    functionLinenumber: 572
    functionLinenumberEnd: 631
    functionName: gf_storage_load
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_opts_del_section
    - sscanf
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_mf_append
    - gf_opts_get_key_count
    - gf_node_changed
    - sprintf
    - storage_parse_sf
    - gf_opts_get_key
    - gf_node_get_field
    - gf_sg_vrml_is_sf_field
    - storage_get_section
    - gf_net_get_ntp
    - gf_sg_vrml_mf_reset
    - strchr
    linkageType: ''
    returnType: void
    signature: void gf_storage_load(M_Storage *storage)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:638,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_inline.c:639,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:641,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_inline.c:642,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:644,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_inline.c:645,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:647,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_inline.c:647,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_inline.c:648,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:650,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_inline.c:650,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_inline.c:650,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_inline.c:651,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:653,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_inline.c:653,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_inline.c:653,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_inline.c:653,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_inline.c:654,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_inline.c:656,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 26
    argCount: 2
    argNames:
    - ptr
    - fieldType
    argTypes:
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 662
      start: 633
    functionDepth: 1
    functionLinenumber: 633
    functionLinenumberEnd: 662
    functionName: storage_serialize_sf
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - sprintf
    - FIX2FLT
    linkageType: ''
    returnType: char
    signature: char *storage_serialize_sf(void *ptr, u32 fieldType)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: storage_get_section
      Src: /src/gpac/src/compositor/mpeg4_inline.c:668,1
    - Dst: gf_opts_del_section
      Src: /src/gpac/src/compositor/mpeg4_inline.c:671,1
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/compositor/mpeg4_inline.c:676,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:678,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/compositor/mpeg4_inline.c:679,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/compositor/mpeg4_inline.c:681,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:687,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/compositor/mpeg4_inline.c:690,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/compositor/mpeg4_inline.c:692,1
    - Dst: storage_serialize_sf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:693,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/compositor/mpeg4_inline.c:700,1
    - Dst: storage_serialize_sf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:701,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/mpeg4_inline.c:704,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/mpeg4_inline.c:704,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/mpeg4_inline.c:704,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_inline.c:706,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/mpeg4_inline.c:706,1
    - Dst: strcat
      Src: /src/gpac/src/compositor/mpeg4_inline.c:709,1
    - Dst: strcat
      Src: /src/gpac/src/compositor/mpeg4_inline.c:710,1
    - Dst: strcat
      Src: /src/gpac/src/compositor/mpeg4_inline.c:711,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:712,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/compositor/mpeg4_inline.c:716,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:717,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:720,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 46
    argCount: 1
    argNames:
    - storage
    argTypes:
    - M_Storage*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 721
      start: 664
    functionDepth: 3
    functionLinenumber: 664
    functionLinenumberEnd: 721
    functionName: gf_storage_save
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - strcat
    - gf_free
    - gf_opts_del_section
    - gf_opts_set_key
    - gf_sg_vrml_mf_get_item
    - sprintf
    - gf_node_get_field
    - gf_sg_vrml_is_sf_field
    - storage_serialize_sf
    - storage_get_section
    - gf_net_get_ntp
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void gf_storage_save(M_Storage *storage)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_inline.c:727,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_inline.c:734,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 736
      start: 724
    functionDepth: 2
    functionLinenumber: 724
    functionLinenumberEnd: 736
    functionName: gf_storage_traverse
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    - gf_list_del_item
    linkageType: ''
    returnType: void
    signature: void gf_storage_traverse(GF_Node *n, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_storage_load
      Src: /src/gpac/src/compositor/mpeg4_inline.c:740,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - n
    - _route
    argTypes:
    - GF_Node*
    - struct _route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 741
      start: 738
    functionDepth: 12
    functionLinenumber: 738
    functionLinenumberEnd: 741
    functionName: on_force_restore
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - gf_storage_load
    linkageType: ''
    returnType: void
    signature: void on_force_restore(GF_Node *n, struct _route *_route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_storage_save
      Src: /src/gpac/src/compositor/mpeg4_inline.c:744,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - n
    - _route
    argTypes:
    - GF_Node*
    - struct _route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 745
      start: 742
    functionDepth: 4
    functionLinenumber: 742
    functionLinenumberEnd: 745
    functionName: on_force_save
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - gf_storage_save
    linkageType: ''
    returnType: void
    signature: void on_force_save(GF_Node *n, struct _route *_route)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/compositor/mpeg4_inline.c:752,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_inline.c:757,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_inline.c:758,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_inline.c:767,1
    - Dst: gf_storage_load
      Src: /src/gpac/src/compositor/mpeg4_inline.c:768,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/mpeg4_inline.c:771,1
    - Dst: on_force_save
      Src: /src/gpac/src/compositor/mpeg4_inline.c:773,1
    - Dst: on_force_restore
      Src: /src/gpac/src/compositor/mpeg4_inline.c:774,1
    - Dst: storage_parse_sf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:775,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 2
    argNames:
    - scene
    - node
    argTypes:
    - GF_Scene*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 779
      start: 747
    functionDepth: 13
    functionLinenumber: 747
    functionLinenumberEnd: 779
    functionName: gf_scene_init_storage
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - gf_node_set_private
    - gf_storage_load
    - storage_parse_sf
    - gf_list_add
    - gf_node_set_callback_function
    - on_force_restore
    - on_force_save
    - strlen
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: void
    signature: void gf_scene_init_storage(GF_Scene *scene, GF_Node *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/mpeg4_inline.c:789,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_inline.c:791,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_inline.c:793,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_inline.c:795,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - sg
    - sensor
    argTypes:
    - GF_SceneGraph*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 800
      start: 785
    functionDepth: 1
    functionLinenumber: 785
    functionLinenumberEnd: 800
    functionName: gf_scene_get_keynav
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_sg_get_private
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *gf_scene_get_keynav(GF_SceneGraph *sg, GF_Node *sensor)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/compositor/mpeg4_background.c:44,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - url
    argTypes:
    - MFURL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: back_use_texture
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background.c
    functionUses: 3
    functionsReached:
    - strlen
    linkageType: ''
    returnType: Bool
    signature: Bool back_use_texture(MFURL *url)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_update_frame
      Src: /src/gpac/src/compositor/mpeg4_background.c:50,1
    - Dst: gf_mo_get_loop
      Src: /src/gpac/src/compositor/mpeg4_background.c:52,1
    - Dst: gf_sc_texture_restart
      Src: /src/gpac/src/compositor/mpeg4_background.c:52,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 53
    functionName: UpdateBackgroundTexture
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background.c
    functionUses: 0
    functionsReached:
    - gf_sc_texture_restart
    - gf_sc_texture_update_frame
    - gf_mo_get_loop
    linkageType: ''
    returnType: void
    signature: void UpdateBackgroundTexture(GF_TextureHandler *txh)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: back_use_texture
      Src: /src/gpac/src/compositor/mpeg4_background.c:58,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_background.c:63,1
    - Dst: gf_sc_texture_set_blend_mode
      Src: /src/gpac/src/compositor/mpeg4_background.c:65,1
    - Dst: gf_sc_texture_is_transparent
      Src: /src/gpac/src/compositor/mpeg4_background.c:65,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - url
    - txh
    argTypes:
    - MFURL*
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 56
    functionDepth: 5
    functionLinenumber: 56
    functionLinenumberEnd: 68
    functionName: back_gf_sc_texture_enabled
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background.c
    functionUses: 0
    functionsReached:
    - gf_sc_texture_is_transparent
    - gf_sc_invalidate
    - back_use_texture
    - gf_sc_texture_set_blend_mode
    linkageType: ''
    returnType: Bool
    signature: Bool back_gf_sc_texture_enabled(MFURL *url, GF_TextureHandler *txh)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_check_url_change
      Src: /src/gpac/src/compositor/mpeg4_background.c:74,1
    - Dst: gf_sc_texture_stop
      Src: /src/gpac/src/compositor/mpeg4_background.c:75,1
    - Dst: gf_sc_texture_play
      Src: /src/gpac/src/compositor/mpeg4_background.c:76,1
    - Dst: gf_sc_texture_play
      Src: /src/gpac/src/compositor/mpeg4_background.c:80,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - txh
    - url
    argTypes:
    - GF_TextureHandler*
    - MFURL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 81
    functionName: back_check_gf_sc_texture_change
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background.c
    functionUses: 0
    functionsReached:
    - gf_sc_texture_stop
    - gf_sc_texture_check_url_change
    - gf_sc_texture_play
    linkageType: ''
    returnType: void
    signature: void back_check_gf_sc_texture_change(GF_TextureHandler *txh, MFURL
      *url)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_background.c:85,1
    - Dst: PreDestroyBindable
      Src: /src/gpac/src/compositor/mpeg4_background.c:86,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_background.c:87,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/mpeg4_background.c:89,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/mpeg4_background.c:90,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_background.c:92,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_background.c:93,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_background.c:94,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_background.c:95,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/mpeg4_background.c:97,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/mpeg4_background.c:98,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/mpeg4_background.c:99,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/mpeg4_background.c:100,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/mpeg4_background.c:101,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/mpeg4_background.c:102,1
    - Dst: gf_sc_texture_destroy
      Src: /src/gpac/src/compositor/mpeg4_background.c:105,1
    - Dst: gf_sc_texture_destroy
      Src: /src/gpac/src/compositor/mpeg4_background.c:106,1
    - Dst: gf_sc_texture_destroy
      Src: /src/gpac/src/compositor/mpeg4_background.c:107,1
    - Dst: gf_sc_texture_destroy
      Src: /src/gpac/src/compositor/mpeg4_background.c:108,1
    - Dst: gf_sc_texture_destroy
      Src: /src/gpac/src/compositor/mpeg4_background.c:109,1
    - Dst: gf_sc_texture_destroy
      Src: /src/gpac/src/compositor/mpeg4_background.c:110,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_background.c:112,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 24
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 83
    functionDepth: 3
    functionLinenumber: 83
    functionLinenumberEnd: 113
    functionName: DestroyBackground
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sc_texture_destroy
    - mesh_free
    - PreDestroyBindable
    - gf_sg_vrml_mf_reset
    - gf_node_get_private
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void DestroyBackground(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - res
    - ','
    - col
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 116
    functionName: COL_TO_RGBA
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: COL_TO_RGBA(res, col)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/mpeg4_background.c:130,1
    - Dst: COL_TO_RGBA
      Src: /src/gpac/src/compositor/mpeg4_background.c:137,1
    - Dst: COL_TO_RGBA
      Src: /src/gpac/src/compositor/mpeg4_background.c:139,1
    - Dst: MESH_MAKE_COL
      Src: /src/gpac/src/compositor/mpeg4_background.c:143,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/mpeg4_background.c:149,1
    - Dst: COL_TO_RGBA
      Src: /src/gpac/src/compositor/mpeg4_background.c:184,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_background.c:197,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_background.c:198,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_background.c:199,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_background.c:200,1
    - Dst: MESH_MAKE_COL
      Src: /src/gpac/src/compositor/mpeg4_background.c:203,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mpeg4_background.c:205,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/compositor/mpeg4_background.c:206,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_background.c:206,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_background.c:212,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mpeg4_background.c:212,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_background.c:213,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mpeg4_background.c:213,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/mpeg4_background.c:214,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_background.c:215,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mpeg4_background.c:216,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/mpeg4_background.c:217,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background.c:221,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background.c:222,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background.c:224,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background.c:229,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background.c:230,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background.c:232,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/mpeg4_background.c:243,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background.c:246,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background.c:248,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/mpeg4_background.c:252,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 110
    argCount: 4
    argNames:
    - mesh
    - angles
    - color
    - ground_dome
    argTypes:
    - GF_Mesh*
    - MFFloat*
    - MFColor*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 253
    functionName: back_build_dome
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background.c
    functionUses: 0
    functionsReached:
    - gf_sin
    - gf_vec_scale
    - mesh_set_vertex_vx
    - mesh_update_bounds
    - gf_divfix
    - mesh_set_triangle
    - COL_TO_RGBA
    - MESH_MAKE_COL
    - MESH_SET_NORMAL
    - gf_vec_norm
    - mesh_reset
    - gf_mulfix
    - gf_cos
    - gf_sqrt
    linkageType: ''
    returnType: void
    signature: void back_build_dome(GF_Mesh *mesh, MFFloat *angles, MFColor *color,
      Bool ground_dome)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_enable
      Src: /src/gpac/src/compositor/mpeg4_background.c:257,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/mpeg4_background.c:259,1
    - Dst: gf_sc_texture_disable
      Src: /src/gpac/src/compositor/mpeg4_background.c:260,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - tr_state
    - txh
    - mesh
    argTypes:
    - GF_TraverseState*
    - GF_TextureHandler*
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 263
    functionName: back_draw_texture
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background.c
    functionUses: 0
    functionsReached:
    - gf_sc_texture_disable
    - visual_3d_mesh_paint
    - gf_sc_texture_enable
    linkageType: ''
    returnType: void
    signature: void back_draw_texture(GF_TraverseState *tr_state, GF_TextureHandler
      *txh, GF_Mesh *mesh)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: DestroyBackground
      Src: /src/gpac/src/compositor/mpeg4_background.c:277,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_background.c:283,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_background.c:285,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/mpeg4_background.c:293,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_background.c:294,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/mpeg4_background.c:295,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_background.c:296,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_background.c:298,1
    - Dst: Bindable_SetIsBound
      Src: /src/gpac/src/compositor/mpeg4_background.c:299,1
    - Dst: back_use_texture
      Src: /src/gpac/src/compositor/mpeg4_background.c:303,1
    - Dst: gf_sc_texture_play
      Src: /src/gpac/src/compositor/mpeg4_background.c:303,1
    - Dst: back_use_texture
      Src: /src/gpac/src/compositor/mpeg4_background.c:304,1
    - Dst: gf_sc_texture_play
      Src: /src/gpac/src/compositor/mpeg4_background.c:304,1
    - Dst: back_use_texture
      Src: /src/gpac/src/compositor/mpeg4_background.c:305,1
    - Dst: gf_sc_texture_play
      Src: /src/gpac/src/compositor/mpeg4_background.c:305,1
    - Dst: back_use_texture
      Src: /src/gpac/src/compositor/mpeg4_background.c:306,1
    - Dst: gf_sc_texture_play
      Src: /src/gpac/src/compositor/mpeg4_background.c:306,1
    - Dst: back_use_texture
      Src: /src/gpac/src/compositor/mpeg4_background.c:307,1
    - Dst: gf_sc_texture_play
      Src: /src/gpac/src/compositor/mpeg4_background.c:307,1
    - Dst: back_use_texture
      Src: /src/gpac/src/compositor/mpeg4_background.c:308,1
    - Dst: gf_sc_texture_play
      Src: /src/gpac/src/compositor/mpeg4_background.c:308,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_background.c:311,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_background.c:318,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_background.c:320,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/mpeg4_background.c:321,1
    - Dst: back_gf_sc_texture_enabled
      Src: /src/gpac/src/compositor/mpeg4_background.c:328,1
    - Dst: back_gf_sc_texture_enabled
      Src: /src/gpac/src/compositor/mpeg4_background.c:329,1
    - Dst: back_gf_sc_texture_enabled
      Src: /src/gpac/src/compositor/mpeg4_background.c:330,1
    - Dst: back_gf_sc_texture_enabled
      Src: /src/gpac/src/compositor/mpeg4_background.c:331,1
    - Dst: back_gf_sc_texture_enabled
      Src: /src/gpac/src/compositor/mpeg4_background.c:332,1
    - Dst: back_gf_sc_texture_enabled
      Src: /src/gpac/src/compositor/mpeg4_background.c:333,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_background.c:341,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/compositor/mpeg4_background.c:341,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_background.c:342,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/compositor/mpeg4_background.c:342,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_background.c:343,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/compositor/mpeg4_background.c:343,1
    - Dst: visual_3d_clear
      Src: /src/gpac/src/compositor/mpeg4_background.c:345,1
    - Dst: gf_mx_apply_vec_4x4
      Src: /src/gpac/src/compositor/mpeg4_background.c:354,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_background.c:356,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_background.c:357,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_background.c:358,1
    - Dst: visual_3d_set_background_state
      Src: /src/gpac/src/compositor/mpeg4_background.c:362,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_background.c:366,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_background.c:367,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mpeg4_background.c:370,1
    - Dst: back_build_dome
      Src: /src/gpac/src/compositor/mpeg4_background.c:371,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/mpeg4_background.c:374,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/mpeg4_background.c:375,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/mpeg4_background.c:384,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/mpeg4_background.c:386,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/mpeg4_background.c:388,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_background.c:390,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_background.c:395,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_background.c:396,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mpeg4_background.c:399,1
    - Dst: back_build_dome
      Src: /src/gpac/src/compositor/mpeg4_background.c:400,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/mpeg4_background.c:403,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/mpeg4_background.c:404,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/mpeg4_background.c:411,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/mpeg4_background.c:413,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/mpeg4_background.c:414,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_background.c:415,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_background.c:420,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_background.c:421,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/mpeg4_background.c:423,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/mpeg4_background.c:424,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/mpeg4_background.c:430,1
    - Dst: visual_3d_enable_antialias
      Src: /src/gpac/src/compositor/mpeg4_background.c:432,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/mpeg4_background.c:434,1
    - Dst: back_draw_texture
      Src: /src/gpac/src/compositor/mpeg4_background.c:436,1
    - Dst: back_draw_texture
      Src: /src/gpac/src/compositor/mpeg4_background.c:437,1
    - Dst: back_draw_texture
      Src: /src/gpac/src/compositor/mpeg4_background.c:438,1
    - Dst: back_draw_texture
      Src: /src/gpac/src/compositor/mpeg4_background.c:439,1
    - Dst: back_draw_texture
      Src: /src/gpac/src/compositor/mpeg4_background.c:440,1
    - Dst: back_draw_texture
      Src: /src/gpac/src/compositor/mpeg4_background.c:441,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_background.c:443,1
    - Dst: visual_3d_set_background_state
      Src: /src/gpac/src/compositor/mpeg4_background.c:447,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 130
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 265
    functionDepth: 6
    functionLinenumber: 265
    functionLinenumberEnd: 448
    functionName: TraverseBackground
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background.c
    functionUses: 0
    functionsReached:
    - gf_list_find
    - visual_3d_mesh_paint
    - gf_node_dirty_clear
    - back_use_texture
    - gf_mx_copy
    - DestroyBackground
    - visual_3d_enable_antialias
    - GF_COL_G
    - gf_list_get
    - gf_mx_init
    - new_mesh
    - gf_mx_add_matrix
    - gf_list_add
    - gf_sc_invalidate
    - gf_mx_add_scale
    - gf_node_get_private
    - Bindable_SetIsBound
    - GF_COL_B
    - gf_divfix
    - visual_3d_clear
    - GF_COL_R
    - visual_3d_set_background_state
    - gf_sc_texture_play
    - INT2FIX
    - back_gf_sc_texture_enabled
    - back_draw_texture
    - back_build_dome
    - gf_mx_apply_vec_4x4
    - gf_mx_add_translation
    linkageType: ''
    returnType: void
    signature: void TraverseBackground(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_background.c:453,1
    - Dst: Bindable_OnSetBind
      Src: /src/gpac/src/compositor/mpeg4_background.c:454,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_background.c:456,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 451
    functionDepth: 5
    functionLinenumber: 451
    functionLinenumberEnd: 457
    functionName: back_set_bind
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background.c
    functionUses: 0
    functionsReached:
    - Bindable_OnSetBind
    - gf_node_get_private
    - gf_sc_invalidate
    linkageType: ''
    returnType: void
    signature: void back_set_bind(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_background.c:462,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_background.c:464,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_background.c:469,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/mpeg4_background.c:472,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mpeg4_background.c:475,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:476,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:477,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:478,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:479,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background.c:480,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background.c:481,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/mpeg4_background.c:482,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mpeg4_background.c:484,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:485,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:486,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:487,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:488,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background.c:489,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background.c:490,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/mpeg4_background.c:491,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mpeg4_background.c:493,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:494,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:495,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:496,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:497,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background.c:498,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background.c:499,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/mpeg4_background.c:500,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mpeg4_background.c:502,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:503,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:504,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:505,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:506,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background.c:507,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background.c:508,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/mpeg4_background.c:509,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mpeg4_background.c:511,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:512,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:513,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:514,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:515,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background.c:516,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background.c:517,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/mpeg4_background.c:518,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mpeg4_background.c:520,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:521,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:522,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:523,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mpeg4_background.c:524,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background.c:525,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mpeg4_background.c:526,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/mpeg4_background.c:527,1
    - Dst: gf_sc_texture_setup
      Src: /src/gpac/src/compositor/mpeg4_background.c:530,1
    - Dst: gf_sc_texture_setup
      Src: /src/gpac/src/compositor/mpeg4_background.c:532,1
    - Dst: gf_sc_texture_setup
      Src: /src/gpac/src/compositor/mpeg4_background.c:534,1
    - Dst: gf_sc_texture_setup
      Src: /src/gpac/src/compositor/mpeg4_background.c:536,1
    - Dst: gf_sc_texture_setup
      Src: /src/gpac/src/compositor/mpeg4_background.c:538,1
    - Dst: gf_sc_texture_setup
      Src: /src/gpac/src/compositor/mpeg4_background.c:540,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_background.c:543,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_background.c:544,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 72
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 459
    functionDepth: 2
    functionLinenumber: 459
    functionLinenumberEnd: 546
    functionName: compositor_init_background
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - mesh_set_vertex
    - GF_LOG
    - gf_node_set_private
    - mesh_set_triangle
    - gf_mx_init
    - new_mesh
    - gf_node_set_callback_function
    - gf_sc_texture_setup
    - mesh_update_bounds
    linkageType: ''
    returnType: void
    signature: void compositor_init_background(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_background.c:551,1
    - Dst: gf_sg_vrml_field_equal
      Src: /src/gpac/src/compositor/mpeg4_background.c:554,1
    - Dst: gf_sg_vrml_field_equal
      Src: /src/gpac/src/compositor/mpeg4_background.c:555,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/mpeg4_background.c:558,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_background.c:560,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_background.c:561,1
    - Dst: gf_sg_vrml_field_equal
      Src: /src/gpac/src/compositor/mpeg4_background.c:563,1
    - Dst: gf_sg_vrml_field_equal
      Src: /src/gpac/src/compositor/mpeg4_background.c:564,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/mpeg4_background.c:567,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_background.c:569,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_background.c:570,1
    - Dst: back_check_gf_sc_texture_change
      Src: /src/gpac/src/compositor/mpeg4_background.c:573,1
    - Dst: back_check_gf_sc_texture_change
      Src: /src/gpac/src/compositor/mpeg4_background.c:574,1
    - Dst: back_check_gf_sc_texture_change
      Src: /src/gpac/src/compositor/mpeg4_background.c:575,1
    - Dst: back_check_gf_sc_texture_change
      Src: /src/gpac/src/compositor/mpeg4_background.c:576,1
    - Dst: back_check_gf_sc_texture_change
      Src: /src/gpac/src/compositor/mpeg4_background.c:577,1
    - Dst: back_check_gf_sc_texture_change
      Src: /src/gpac/src/compositor/mpeg4_background.c:578,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_background.c:581,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 548
    functionDepth: 6
    functionLinenumber: 548
    functionLinenumberEnd: 582
    functionName: compositor_background_modified
    functionSourceFile: /src/gpac/src/compositor/mpeg4_background.c
    functionUses: 1
    functionsReached:
    - mesh_free
    - gf_sg_vrml_field_copy
    - gf_sc_invalidate
    - back_check_gf_sc_texture_change
    - gf_sg_vrml_field_equal
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void compositor_background_modified(GF_Node *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:48,1
    - Dst: gf_sc_unregister_time_node
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:50,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:52,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ts
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 45
    functionDepth: 2
    functionLinenumber: 45
    functionLinenumberEnd: 54
    functionName: timesensor_destroy
    functionSourceFile: /src/gpac/src/compositor/mpeg4_timesensor.c
    functionUses: 0
    functionsReached:
    - gf_sc_unregister_time_node
    - gf_free
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void timesensor_destroy(GF_Node *ts, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:61,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - stack
    - ts
    argTypes:
    - TimeSensorStack*
    - M_TimeSensor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 57
    functionDepth: 5
    functionLinenumber: 57
    functionLinenumberEnd: 65
    functionName: timesensor_deactivate
    functionSourceFile: /src/gpac/src/compositor/mpeg4_timesensor.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_node_event_out
    linkageType: ''
    returnType: void
    signature: void timesensor_deactivate(TimeSensorStack *stack, M_TimeSensor *ts)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:74,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:78,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:79,1
    - Dst: timesensor_deactivate
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:80,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:91,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:108,1
    - Dst: fmod
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:108,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:112,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:124,1
    - Dst: fmod
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:124,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:127,1
    - Dst: timesensor_deactivate
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:128,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:134,1
    - Dst: timesensor_deactivate
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:135,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:141,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:152,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:154,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:156,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:165,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 74
    argCount: 1
    argNames:
    - st
    argTypes:
    - GF_TimeNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 67
    functionDepth: 6
    functionLinenumber: 67
    functionLinenumberEnd: 167
    functionName: timesensor_update_time
    functionSourceFile: /src/gpac/src/compositor/mpeg4_timesensor.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_node_event_out
    - fmod
    - gf_node_get_scene_time
    - gf_node_get_private
    - timesensor_deactivate
    linkageType: ''
    returnType: void
    signature: void timesensor_update_time(GF_TimeNode *st)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:172,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:174,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:182,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:184,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:185,1
    - Dst: gf_sc_register_time_node
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:188,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 169
    functionDepth: 2
    functionLinenumber: 169
    functionLinenumberEnd: 189
    functionName: compositor_init_timesensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_timesensor.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_sc_register_time_node
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_timesensor(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:195,1
    - Dst: timesensor_update_time
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:198,1
    - Dst: gf_sc_register_time_node
      Src: /src/gpac/src/compositor/mpeg4_timesensor.c:205,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - t
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 192
    functionDepth: 7
    functionLinenumber: 192
    functionLinenumberEnd: 208
    functionName: compositor_timesensor_modified
    functionSourceFile: /src/gpac/src/compositor/mpeg4_timesensor.c
    functionUses: 1
    functionsReached:
    - gf_sc_register_time_node
    - gf_node_get_private
    - timesensor_update_time
    linkageType: ''
    returnType: void
    signature: void compositor_timesensor_modified(GF_Node *t)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sound.c:44,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_sound.c:47,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_sound.c:58,1
    - Dst: gf_mx2d_apply_coords
      Src: /src/gpac/src/compositor/mpeg4_sound.c:61,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_sound.c:65,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 40
    functionDepth: 6
    functionLinenumber: 40
    functionLinenumberEnd: 69
    functionName: TraverseSound2D
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sound.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_apply_vec
    - gf_node_traverse
    - gf_mx2d_apply_coords
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void TraverseSound2D(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - vol
    argTypes:
    - GF_Node*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 78
    functionName: SND2D_GetChannelVolume
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sound.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool SND2D_GetChannelVolume(GF_Node *node, Fixed *vol)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_sound.c:84,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_sound.c:86,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_sound.c:91,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_sound.c:92,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 93
    functionName: compositor_init_sound2d
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sound.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void compositor_init_sound2d(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sqrt
      Src: /src/gpac/src/compositor/mpeg4_sound.c:102,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:102,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/compositor/mpeg4_sound.c:106,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:106,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/mpeg4_sound.c:113,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:113,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:115,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:116,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/compositor/mpeg4_sound.c:118,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/compositor/mpeg4_sound.c:118,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:118,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/compositor/mpeg4_sound.c:119,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/compositor/mpeg4_sound.c:119,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:119,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:125,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:126,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/mpeg4_sound.c:128,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:131,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:132,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:134,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:134,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:134,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/compositor/mpeg4_sound.c:134,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:134,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:134,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:134,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:135,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:136,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:138,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:139,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:141,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:141,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:141,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/compositor/mpeg4_sound.c:141,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:141,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:141,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:141,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:142,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:143,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:146,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/compositor/mpeg4_sound.c:146,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:146,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:146,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:146,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:147,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/compositor/mpeg4_sound.c:147,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:147,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:147,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:147,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/compositor/mpeg4_sound.c:150,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/compositor/mpeg4_sound.c:154,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:154,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:154,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/compositor/mpeg4_sound.c:155,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:155,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:155,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:156,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_sound.c:158,1
    - Dst: pow
      Src: /src/gpac/src/compositor/mpeg4_sound.c:158,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_sound.c:158,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 37
    argCount: 5
    argNames:
    - min_b
    - min_f
    - max_b
    - max_f
    - pos
    argTypes:
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - SFVec3f
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 159
    functionName: snd_compute_gain
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sound.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - ABS
    - gf_divfix
    - pow
    - gf_mulfix
    - FIX2FLT
    - gf_sqrt
    linkageType: ''
    returnType: Fixed
    signature: Fixed snd_compute_gain(Fixed min_b, Fixed min_f, Fixed max_b, Fixed
      max_f, SFVec3f pos)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sound.c:177,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_sound.c:180,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_sound.c:189,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_sound.c:199,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_sound.c:200,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/compositor/mpeg4_sound.c:201,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_sound.c:204,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_sound.c:208,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mpeg4_sound.c:211,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/mpeg4_sound.c:212,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:214,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mpeg4_sound.c:214,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:216,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/compositor/mpeg4_sound.c:217,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:217,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:217,1
    - Dst: gf_vec_equal
      Src: /src/gpac/src/compositor/mpeg4_sound.c:219,1
    - Dst: snd_compute_gain
      Src: /src/gpac/src/compositor/mpeg4_sound.c:220,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:221,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_sound.c:230,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mpeg4_sound.c:231,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mpeg4_sound.c:232,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_sound.c:233,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_sound.c:234,1
    - Dst: gf_acos
      Src: /src/gpac/src/compositor/mpeg4_sound.c:236,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mpeg4_sound.c:236,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mpeg4_sound.c:238,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mpeg4_sound.c:239,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mpeg4_sound.c:241,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:242,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:243,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:245,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sound.c:246,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_sound.c:252,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 61
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 173
    functionDepth: 6
    functionLinenumber: 173
    functionLinenumberEnd: 256
    functionName: TraverseSound
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sound.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_vec_len
    - gf_vec_dot
    - gf_mx_apply_vec
    - gf_node_traverse
    - gf_vec_equal
    - gf_vec_cross
    - gf_sin
    - gf_vec_diff
    - gf_divfix
    - gf_vec_norm
    - gf_mx_inverse
    - snd_compute_gain
    - gf_mx_copy
    - gf_acos
    - gf_node_get_private
    - gf_mulfix
    - gf_sqrt
    linkageType: ''
    returnType: void
    signature: void TraverseSound(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sound.c:261,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - node
    - vol
    argTypes:
    - GF_Node*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 257
    functionDepth: 2
    functionLinenumber: 257
    functionLinenumberEnd: 272
    functionName: SND_GetChannelVolume
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sound.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: Bool
    signature: Bool SND_GetChannelVolume(GF_Node *node, Fixed *vol)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_sound.c:277,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_sound.c:279,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_sound.c:284,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_sound.c:285,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 274
    functionDepth: 2
    functionLinenumber: 274
    functionLinenumberEnd: 286
    functionName: compositor_init_sound
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sound.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void compositor_init_sound(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_text.c:64,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_text.c:65,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/mpeg4_text.c:66,1
    - Dst: gf_font_manager_delete_span
      Src: /src/gpac/src/compositor/mpeg4_text.c:67,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/mpeg4_text.c:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - compositor
    - stack
    argTypes:
    - GF_Compositor*
    - TextStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 61
    functionDepth: 2
    functionLinenumber: 61
    functionLinenumberEnd: 71
    functionName: text_clean_paths
    functionSourceFile: /src/gpac/src/compositor/mpeg4_text.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - drawable_reset_path
    - gf_list_count
    - gf_font_manager_delete_span
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void text_clean_paths(GF_Compositor *compositor, TextStack *stack)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_text.c:86,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_text.c:87,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:92,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:92,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:93,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:93,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:94,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:94,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:95,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:95,1
    - Dst: gf_font_manager_set_font
      Src: /src/gpac/src/compositor/mpeg4_text.c:98,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_text.c:104,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_text.c:107,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_text.c:110,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/mpeg4_text.c:124,1
    - Dst: gf_font_manager_create_span
      Src: /src/gpac/src/compositor/mpeg4_text.c:126,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_text.c:146,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/mpeg4_text.c:147,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_text.c:151,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_text.c:171,1
    - Dst: parent_node_start_group
      Src: /src/gpac/src/compositor/mpeg4_text.c:174,1
    - Dst: parent_node_end_text_group
      Src: /src/gpac/src/compositor/mpeg4_text.c:177,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_text.c:180,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/mpeg4_text.c:181,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_text.c:183,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_text.c:185,1
    - Dst: parent_node_start_group
      Src: /src/gpac/src/compositor/mpeg4_text.c:194,1
    - Dst: parent_node_end_text_group
      Src: /src/gpac/src/compositor/mpeg4_text.c:196,1
    - Dst: gf_font_manager_delete_span
      Src: /src/gpac/src/compositor/mpeg4_text.c:200,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 103
    argCount: 3
    argNames:
    - st
    - txt
    - tr_state
    argTypes:
    - TextStack*
    - M_Text*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 74
    functionDepth: 3
    functionLinenumber: 74
    functionLinenumberEnd: 202
    functionName: build_text_split
    functionSourceFile: /src/gpac/src/compositor/mpeg4_text.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - INT2FIX
    - memcpy
    - parent_node_end_text_group
    - gf_divfix
    - strstr
    - gf_font_manager_create_span
    - strcmp
    - gf_list_add
    - gf_font_manager_set_font
    - parent_node_start_group
    - gf_font_manager_delete_span
    - strlen
    linkageType: ''
    returnType: void
    signature: void build_text_split(TextStack *st, M_Text *txt, GF_TraverseState
      *tr_state)
  - BBCount: 56
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_text.c:219,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_text.c:220,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:227,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:227,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:228,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:228,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:229,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:229,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:230,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:230,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:231,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:231,1
    - Dst: gf_font_manager_set_font
      Src: /src/gpac/src/compositor/mpeg4_text.c:234,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/compositor/mpeg4_text.c:238,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_text.c:238,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_text.c:238,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/compositor/mpeg4_text.c:239,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_text.c:239,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_text.c:239,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_text.c:240,1
    - Dst: gf_font_manager_create_span
      Src: /src/gpac/src/compositor/mpeg4_text.c:246,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/mpeg4_text.c:266,1
    - Dst: gf_font_manager_create_span
      Src: /src/gpac/src/compositor/mpeg4_text.c:279,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_text.c:330,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_text.c:336,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_text.c:345,1
    - Dst: gf_font_manager_delete_span
      Src: /src/gpac/src/compositor/mpeg4_text.c:351,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_text.c:357,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_text.c:362,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_text.c:371,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_text.c:380,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_text.c:395,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_text.c:400,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_text.c:409,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_text.c:431,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_text.c:433,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_text.c:441,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_text.c:443,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_text.c:477,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_text.c:480,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_text.c:481,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_text.c:484,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_text.c:485,1
    - Dst: gf_rect_union
      Src: /src/gpac/src/compositor/mpeg4_text.c:494,1
    CyclomaticComplexity: 80
    EdgeCount: 80
    ICount: 249
    argCount: 3
    argNames:
    - st
    - txt
    - tr_state
    argTypes:
    - TextStack*
    - M_Text*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 205
    functionDepth: 3
    functionLinenumber: 205
    functionLinenumberEnd: 496
    functionName: build_text
    functionSourceFile: /src/gpac/src/compositor/mpeg4_text.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - INT2FIX
    - gf_divfix
    - gf_muldiv
    - strlen
    - strstr
    - gf_list_count
    - gf_font_manager_create_span
    - gf_rect_union
    - strcmp
    - gf_list_add
    - gf_font_manager_set_font
    - gf_font_manager_delete_span
    - gf_mulfix
    linkageType: ''
    returnType: void
    signature: void build_text(TextStack *st, M_Text *txt, GF_TraverseState *tr_state)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:507,1
    - Dst: strchr
      Src: /src/gpac/src/compositor/mpeg4_text.c:508,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/mpeg4_text.c:511,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_text.c:513,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/mpeg4_text.c:514,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:518,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/mpeg4_text.c:519,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 5
    argNames:
    - node
    - st
    - force_texture
    - hl_color
    - asp
    argTypes:
    - GF_Node*
    - TextStack*
    - Bool*
    - u32*
    - DrawAspect2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 498
    functionDepth: 0
    functionLinenumber: 498
    functionLinenumberEnd: 527
    functionName: text_get_draw_opt
    functionSourceFile: /src/gpac/src/compositor/mpeg4_text.c
    functionUses: 0
    functionsReached:
    - sscanf
    - strstr
    - strnicmp
    - strchr
    - strlen
    linkageType: ''
    returnType: void
    signature: void text_get_draw_opt(GF_Node *node, TextStack *st, Bool *force_texture,
      u32 *hl_color, DrawAspect2D *asp)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_text.c:539,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - tr_state
    argTypes:
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 533
    functionDepth: 2
    functionLinenumber: 533
    functionLinenumberEnd: 541
    functionName: text_is_3d_material
    functionSourceFile: /src/gpac/src/compositor/mpeg4_text.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    linkageType: ''
    returnType: Bool
    signature: Bool text_is_3d_material(GF_TraverseState *tr_state)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: text_is_3d_material
      Src: /src/gpac/src/compositor/mpeg4_text.c:549,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_text.c:552,1
    - Dst: drawable_get_aspect_2d_mpeg4
      Src: /src/gpac/src/compositor/mpeg4_text.c:554,1
    - Dst: text_get_draw_opt
      Src: /src/gpac/src/compositor/mpeg4_text.c:556,1
    - Dst: gf_font_spans_draw_3d
      Src: /src/gpac/src/compositor/mpeg4_text.c:557,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - tr_state
    - node
    - st
    argTypes:
    - GF_TraverseState*
    - GF_Node*
    - TextStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 543
    functionDepth: 10
    functionLinenumber: 543
    functionLinenumberEnd: 558
    functionName: text_draw_3d
    functionSourceFile: /src/gpac/src/compositor/mpeg4_text.c
    functionUses: 0
    functionsReached:
    - text_is_3d_material
    - gf_font_spans_draw_3d
    - memset
    - text_get_draw_opt
    - drawable_get_aspect_2d_mpeg4
    linkageType: ''
    returnType: void
    signature: void text_draw_3d(GF_TraverseState *tr_state, GF_Node *node, TextStack
      *st)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_text.c:569,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/mpeg4_text.c:571,1
    - Dst: text_get_draw_opt
      Src: /src/gpac/src/compositor/mpeg4_text.c:573,1
    - Dst: gf_font_spans_draw_2d
      Src: /src/gpac/src/compositor/mpeg4_text.c:576,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - node
    - tr_state
    argTypes:
    - GF_Node*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 578
      start: 565
    functionDepth: 10
    functionLinenumber: 565
    functionLinenumberEnd: 578
    functionName: text_draw_2d
    functionSourceFile: /src/gpac/src/compositor/mpeg4_text.c
    functionUses: 0
    functionsReached:
    - text_get_draw_opt
    - gf_node_get_private
    - GF_COL_A
    - gf_font_spans_draw_2d
    linkageType: ''
    returnType: void
    signature: void text_draw_2d(GF_Node *node, GF_TraverseState *tr_state)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_text.c:584,1
    - Dst: text_clean_paths
      Src: /src/gpac/src/compositor/mpeg4_text.c:585,1
    - Dst: build_text
      Src: /src/gpac/src/compositor/mpeg4_text.c:586,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_text.c:587,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/mpeg4_text.c:588,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/mpeg4_text.c:592,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_text.c:594,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_text.c:595,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - TextStack*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 582
    functionDepth: 4
    functionLinenumber: 582
    functionLinenumberEnd: 597
    functionName: text_check_changes
    functionSourceFile: /src/gpac/src/compositor/mpeg4_text.c
    functionUses: 0
    functionsReached:
    - build_text
    - INT2FIX
    - drawable_mark_modified
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - text_clean_paths
    linkageType: ''
    returnType: void
    signature: void text_check_changes(GF_Node *node, TextStack *stack, GF_TraverseState
      *tr_state)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_text.c:604,1
    - Dst: gf_sc_get_compositor
      Src: /src/gpac/src/compositor/mpeg4_text.c:608,1
    - Dst: text_clean_paths
      Src: /src/gpac/src/compositor/mpeg4_text.c:609,1
    - Dst: drawable_del_ex
      Src: /src/gpac/src/compositor/mpeg4_text.c:610,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_text.c:611,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_text.c:612,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_text.c:619,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_text.c:620,1
    - Dst: text_clean_paths
      Src: /src/gpac/src/compositor/mpeg4_text.c:621,1
    - Dst: build_text_split
      Src: /src/gpac/src/compositor/mpeg4_text.c:622,1
    - Dst: text_check_changes
      Src: /src/gpac/src/compositor/mpeg4_text.c:626,1
    - Dst: text_draw_2d
      Src: /src/gpac/src/compositor/mpeg4_text.c:630,1
    - Dst: text_draw_3d
      Src: /src/gpac/src/compositor/mpeg4_text.c:634,1
    - Dst: gf_font_spans_pick
      Src: /src/gpac/src/compositor/mpeg4_text.c:639,1
    - Dst: gf_font_spans_get_selection
      Src: /src/gpac/src/compositor/mpeg4_text.c:647,1
    - Dst: drawable_init_context_mpeg4
      Src: /src/gpac/src/compositor/mpeg4_text.c:660,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/mpeg4_text.c:665,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_text.c:682,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_text.c:693,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/mpeg4_text.c:694,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/mpeg4_text.c:696,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 72
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 698
      start: 600
    functionDepth: 11
    functionLinenumber: 600
    functionLinenumberEnd: 698
    functionName: Text_Traverse
    functionSourceFile: /src/gpac/src/compositor/mpeg4_text.c
    functionUses: 0
    functionsReached:
    - gf_free
    - text_check_changes
    - gf_node_dirty_get
    - text_draw_3d
    - gf_node_dirty_clear
    - gf_font_spans_get_selection
    - text_clean_paths
    - drawable_init_context_mpeg4
    - gf_list_get
    - GF_COL_A
    - gf_sc_get_compositor
    - gf_node_get_private
    - drawable_finalize_sort
    - drawable_del_ex
    - build_text_split
    - gf_font_spans_pick
    - gf_list_enum
    - gf_list_del
    - text_draw_2d
    linkageType: ''
    returnType: void
    signature: void Text_Traverse(GF_Node *n, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_text.c:704,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_text.c:706,1
    - Dst: drawable_init_ex
      Src: /src/gpac/src/compositor/mpeg4_text.c:709,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_text.c:713,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_text.c:717,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_text.c:718,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 701
    functionDepth: 2
    functionLinenumber: 701
    functionLinenumberEnd: 719
    functionName: compositor_init_text
    functionSourceFile: /src/gpac/src/compositor/mpeg4_text.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - drawable_init_ex
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_text(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_text.c:726,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_text.c:729,1
    - Dst: text_clean_paths
      Src: /src/gpac/src/compositor/mpeg4_text.c:732,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/mpeg4_text.c:733,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_text.c:734,1
    - Dst: build_text
      Src: /src/gpac/src/compositor/mpeg4_text.c:735,1
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/mpeg4_text.c:744,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_text.c:745,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_text.c:747,1
    - Dst: gf_font_span_create_path
      Src: /src/gpac/src/compositor/mpeg4_text.c:748,1
    - Dst: mesh_extrude_path_ext
      Src: /src/gpac/src/compositor/mpeg4_text.c:749,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/mpeg4_text.c:750,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/mpeg4_text.c:752,1
    - Dst: gf_mesh_build_aabbtree
      Src: /src/gpac/src/compositor/mpeg4_text.c:753,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 10
    argNames:
    - node
    - tr_state
    - mesh
    - thespine
    - creaseAngle
    - begin_cap
    - end_cap
    - spine_ori
    - spine_scale
    - txAlongSpine
    argTypes:
    - GF_Node*
    - GF_TraverseState*
    - GF_Mesh*
    - MFVec3f*
    - Fixed
    - Bool
    - Bool
    - MFRotation*
    - MFVec2f*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 722
    functionDepth: 4
    functionLinenumber: 722
    functionLinenumberEnd: 754
    functionName: compositor_extrude_text
    functionSourceFile: /src/gpac/src/compositor/mpeg4_text.c
    functionUses: 0
    functionsReached:
    - build_text
    - gf_list_get
    - gf_mesh_build_aabbtree
    - drawable_reset_path
    - gf_node_dirty_get
    - gf_path_del
    - gf_font_span_create_path
    - mesh_extrude_path_ext
    - gf_node_dirty_clear
    - gf_list_count
    - text_clean_paths
    - mesh_reset
    - gf_node_get_private
    - mesh_update_bounds
    linkageType: ''
    returnType: void
    signature: void compositor_extrude_text(GF_Node *node, GF_TraverseState *tr_state,
      GF_Mesh *mesh, MFVec3f *thespine, Fixed creaseAngle, Bool begin_cap, Bool end_cap,
      MFRotation *spine_ori, MFVec2f *spine_scale, Bool txAlongSpine)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: update_texture_void
    functionSourceFile: /src/gpac/src/compositor/texturing.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void update_texture_void(GF_TextureHandler *txh)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/texturing.c:39,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/texturing.c:43,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/compositor/texturing.c:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - txh
    - compositor
    - owner
    argTypes:
    - GF_TextureHandler*
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 48
    functionName: gf_sc_texture_setup
    functionSourceFile: /src/gpac/src/compositor/texturing.c
    functionUses: 5
    functionsReached:
    - gf_list_insert
    - memset
    - gf_list_find
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_texture_setup(GF_TextureHandler *txh, GF_Compositor
      *compositor, GF_Node *owner)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_try_lock
      Src: /src/gpac/src/compositor/texturing.c:56,1
    - Dst: gf_sc_texture_release
      Src: /src/gpac/src/compositor/texturing.c:59,1
    - Dst: gf_sc_texture_stop
      Src: /src/gpac/src/compositor/texturing.c:60,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/texturing.c:61,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/texturing.c:64,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 66
    functionName: gf_sc_texture_destroy
    functionSourceFile: /src/gpac/src/compositor/texturing.c
    functionUses: 6
    functionsReached:
    - gf_sc_texture_stop
    - gf_sc_texture_release
    - gf_mx_try_lock
    - gf_mx_v
    - gf_list_del_item
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_texture_destroy(GF_TextureHandler *txh)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_url_changed
      Src: /src/gpac/src/compositor/texturing.c:72,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - txh
    - url
    argTypes:
    - GF_TextureHandler*
    - MFURL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 73
    functionName: gf_sc_texture_check_url_change
    functionSourceFile: /src/gpac/src/compositor/texturing.c
    functionUses: 2
    functionsReached:
    - gf_mo_url_changed
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_texture_check_url_change(GF_TextureHandler *txh, MFURL
      *url)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_release
      Src: /src/gpac/src/compositor/texturing.c:81,1
    - Dst: gf_mo_register
      Src: /src/gpac/src/compositor/texturing.c:84,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - txh
    - url
    - lock_scene_timeline
    argTypes:
    - GF_TextureHandler*
    - MFURL*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 92
    functionName: gf_sc_texture_open
    functionSourceFile: /src/gpac/src/compositor/texturing.c
    functionUses: 1
    functionsReached:
    - gf_sc_texture_release
    - gf_mo_register
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_texture_open(GF_TextureHandler *txh, MFURL *url, Bool
      lock_scene_timeline)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_open
      Src: /src/gpac/src/compositor/texturing.c:100,1
    - Dst: gf_mo_play
      Src: /src/gpac/src/compositor/texturing.c:106,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 6
    argNames:
    - txh
    - url
    - start_offset
    - end_offset
    - can_loop
    - lock_scene_timeline
    argTypes:
    - GF_TextureHandler*
    - MFURL*
    - Double
    - Double
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 94
    functionDepth: 2
    functionLinenumber: 94
    functionLinenumberEnd: 112
    functionName: gf_sc_texture_play_from_to
    functionSourceFile: /src/gpac/src/compositor/texturing.c
    functionUses: 2
    functionsReached:
    - gf_mo_play
    - gf_sc_texture_open
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_texture_play_from_to(GF_TextureHandler *txh, MFURL
      *url, Double start_offset, Double end_offset, Bool can_loop, Bool lock_scene_timeline)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/texturing.c:121,1
    - Dst: gf_sc_texture_play_from_to
      Src: /src/gpac/src/compositor/texturing.c:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - txh
    - url
    argTypes:
    - GF_TextureHandler*
    - MFURL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 114
    functionDepth: 3
    functionLinenumber: 114
    functionLinenumberEnd: 126
    functionName: gf_sc_texture_play
    functionSourceFile: /src/gpac/src/compositor/texturing.c
    functionUses: 5
    functionsReached:
    - gf_node_get_scene_time
    - gf_sc_texture_play_from_to
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_texture_play(GF_TextureHandler *txh, MFURL *url)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_release_data
      Src: /src/gpac/src/compositor/texturing.c:135,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/texturing.c:139,1
    - Dst: gf_mo_stop
      Src: /src/gpac/src/compositor/texturing.c:140,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 129
    functionDepth: 5
    functionLinenumber: 129
    functionLinenumberEnd: 145
    functionName: gf_sc_texture_stop_no_unregister
    functionSourceFile: /src/gpac/src/compositor/texturing.c
    functionUses: 3
    functionsReached:
    - gf_mo_stop
    - gf_mo_release_data
    - gf_sc_invalidate
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_texture_stop_no_unregister(GF_TextureHandler *txh)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_release_data
      Src: /src/gpac/src/compositor/texturing.c:153,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/texturing.c:157,1
    - Dst: gf_mo_stop
      Src: /src/gpac/src/compositor/texturing.c:158,1
    - Dst: gf_mo_unregister
      Src: /src/gpac/src/compositor/texturing.c:166,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 147
    functionDepth: 5
    functionLinenumber: 147
    functionLinenumberEnd: 168
    functionName: gf_sc_texture_stop
    functionSourceFile: /src/gpac/src/compositor/texturing.c
    functionUses: 4
    functionsReached:
    - gf_mo_stop
    - gf_mo_release_data
    - gf_sc_invalidate
    - gf_mo_unregister
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_texture_stop(GF_TextureHandler *txh)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_release_stream
      Src: /src/gpac/src/compositor/texturing.c:174,1
    - Dst: gf_mo_restart
      Src: /src/gpac/src/compositor/texturing.c:176,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 177
    functionName: gf_sc_texture_restart
    functionSourceFile: /src/gpac/src/compositor/texturing.c
    functionUses: 3
    functionsReached:
    - gf_mo_restart
    - gf_sc_texture_release_stream
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_texture_restart(GF_TextureHandler *txh)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_allocate
      Src: /src/gpac/src/compositor/texturing.c:183,1
    - Dst: gf_mo_get_visual_info
      Src: /src/gpac/src/compositor/texturing.c:186,1
    - Dst: gf_sc_texture_configure_conversion
      Src: /src/gpac/src/compositor/texturing.c:187,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/compositor/texturing.c:189,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 2
    argNames:
    - txh
    - private_media
    argTypes:
    - GF_TextureHandler*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 209
    functionName: setup_texture_object
    functionSourceFile: /src/gpac/src/compositor/texturing.c
    functionUses: 0
    functionsReached:
    - gf_pixel_get_size_info
    - gf_mo_get_visual_info
    - gf_sc_texture_configure_conversion
    - gf_sc_texture_allocate
    linkageType: ''
    returnType: void
    signature: void setup_texture_object(GF_TextureHandler *txh, Bool private_media)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_release_data
      Src: /src/gpac/src/compositor/texturing.c:235,1
    - Dst: gf_sc_texture_release
      Src: /src/gpac/src/compositor/texturing.c:244,1
    - Dst: gf_mo_fetch_data
      Src: /src/gpac/src/compositor/texturing.c:249,1
    - Dst: gf_sc_texture_release
      Src: /src/gpac/src/compositor/texturing.c:261,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/texturing.c:270,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/compositor/texturing.c:280,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/texturing.c:286,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/texturing.c:287,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/texturing.c:288,1
    - Dst: gf_sc_texture_stop_no_unregister
      Src: /src/gpac/src/compositor/texturing.c:290,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/texturing.c:299,1
    - Dst: gf_mo_release_data
      Src: /src/gpac/src/compositor/texturing.c:309,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/texturing.c:312,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/texturing.c:318,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/texturing.c:318,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/texturing.c:318,1
    - Dst: gf_mo_is_muted
      Src: /src/gpac/src/compositor/texturing.c:323,1
    - Dst: setup_texture_object
      Src: /src/gpac/src/compositor/texturing.c:336,1
    - Dst: gf_sc_texture_set_data
      Src: /src/gpac/src/compositor/texturing.c:342,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/texturing.c:345,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 97
    argCount: 2
    argNames:
    - txh
    - disable_resync
    argTypes:
    - GF_TextureHandler*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 212
    functionDepth: 6
    functionLinenumber: 212
    functionLinenumberEnd: 346
    functionName: gf_sc_texture_update_frame
    functionSourceFile: /src/gpac/src/compositor/texturing.c
    functionUses: 4
    functionsReached:
    - gf_sc_texture_set_data
    - gf_sc_texture_release
    - GF_LOG
    - gf_mo_is_muted
    - gf_mo_fetch_data
    - setup_texture_object
    - gf_sc_invalidate
    - gf_clock_time
    - gf_mo_release_data
    - gf_sys_clock
    - gf_sc_texture_stop_no_unregister
    - gf_filter_pid_query_buffer_duration
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_texture_update_frame(GF_TextureHandler *txh, Bool disable_resync)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_release_data
      Src: /src/gpac/src/compositor/texturing.c:354,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 348
    functionDepth: 1
    functionLinenumber: 348
    functionLinenumberEnd: 363
    functionName: gf_sc_texture_release_stream
    functionSourceFile: /src/gpac/src/compositor/texturing.c
    functionUses: 1
    functionsReached:
    - gf_mo_release_data
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_texture_release_stream(GF_TextureHandler *txh)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/texturing.c:370,1
    - Dst: it_get_texture
      Src: /src/gpac/src/compositor/texturing.c:374,1
    - Dst: mt_get_texture
      Src: /src/gpac/src/compositor/texturing.c:376,1
    - Dst: pt_get_texture
      Src: /src/gpac/src/compositor/texturing.c:378,1
    - Dst: compositor_get_composite_texture
      Src: /src/gpac/src/compositor/texturing.c:382,1
    - Dst: compositor_mpeg4_get_gradient_texture
      Src: /src/gpac/src/compositor/texturing.c:385,1
    - Dst: gf_sc_texture_get_handler
      Src: /src/gpac/src/compositor/texturing.c:389,1
    - Dst: it_get_texture
      Src: /src/gpac/src/compositor/texturing.c:397,1
    - Dst: mt_get_texture
      Src: /src/gpac/src/compositor/texturing.c:399,1
    - Dst: pt_get_texture
      Src: /src/gpac/src/compositor/texturing.c:401,1
    - Dst: compositor_svg_get_gradient_texture
      Src: /src/gpac/src/compositor/texturing.c:408,1
    - Dst: compositor_svg_get_image_texture
      Src: /src/gpac/src/compositor/texturing.c:411,1
    - Dst: gf_sc_hardcoded_proto_get_texture_handler
      Src: /src/gpac/src/compositor/texturing.c:416,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 366
    functionDepth: 3
    functionLinenumber: 366
    functionLinenumberEnd: 421
    functionName: GF_TextureHandler *gf_sc_texture_get_handler(GF_Node *n)
    functionSourceFile: /src/gpac/src/compositor/texturing.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - compositor_get_composite_texture
    - gf_sc_hardcoded_proto_get_texture_handler
    - pt_get_texture
    - compositor_svg_get_image_texture
    - it_get_texture
    - mt_get_texture
    - gf_sc_texture_get_handler
    - compositor_svg_get_gradient_texture
    - compositor_mpeg4_get_gradient_texture
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_TextureHandler *gf_sc_texture_get_handler(GF_Node *n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 90
    functionName: swap_16
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: swap_16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 91
    functionName: swap_32
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: swap_32(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 92
    functionName: swap_64
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: swap_64(x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/audio_mixer.c:101,1
    - Dst: memset
      Src: /src/gpac/src/compositor/audio_mixer.c:103,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/compositor/audio_mixer.c:104,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/audio_mixer.c:105,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/compositor/audio_mixer.c:110,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 116
    functionName: GF_AudioMixer *gf_mixer_new(struct _audio_render *ar)
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - memset
    - gf_mx_new
    - gf_malloc
    - gf_audio_fmt_bit_depth
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AudioMixer *gf_mixer_new(struct _audio_render *ar)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - am
    argTypes:
    - GF_AudioMixer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionName: gf_mixer_must_reconfig
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_mixer_must_reconfig(GF_AudioMixer *am)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/audio_mixer.c:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - am
    - max_speed
    argTypes:
    - GF_AudioMixer*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: gf_mixer_set_max_speed
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    linkageType: ''
    returnType: void
    signature: void gf_mixer_set_max_speed(GF_AudioMixer *am, Double max_speed)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mixer_remove_all
      Src: /src/gpac/src/compositor/audio_mixer.c:131,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/audio_mixer.c:132,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/compositor/audio_mixer.c:133,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/audio_mixer.c:134,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/audio_mixer.c:135,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - am
    argTypes:
    - GF_AudioMixer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 128
    functionDepth: 1
    functionLinenumber: 128
    functionLinenumberEnd: 136
    functionName: gf_mixer_del
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mixer_remove_all
    - gf_list_del
    - gf_mx_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mixer_del(GF_AudioMixer *am)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:141,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/audio_mixer.c:142,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/audio_mixer.c:143,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/audio_mixer.c:144,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/audio_mixer.c:146,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/audio_mixer.c:148,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:151,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - am
    argTypes:
    - GF_AudioMixer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 152
    functionName: gf_mixer_remove_all
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_mixer_lock
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_mixer_remove_all(GF_AudioMixer *am)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/audio_mixer.c:158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - am
    - ifce
    argTypes:
    - GF_AudioMixer*
    - GF_AudioInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 162
    functionName: gf_mixer_is_src_present
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: Bool
    signature: Bool gf_mixer_is_src_present(GF_AudioMixer *am, GF_AudioInterface *ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/audio_mixer.c:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - am
    argTypes:
    - GF_AudioMixer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 166
    functionName: gf_mixer_get_src_count
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: u32
    signature: u32 gf_mixer_get_src_count(GF_AudioMixer *am)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_mixer.c:171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - am
    - num_channels
    argTypes:
    - GF_AudioMixer*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 177
    functionName: gf_mixer_force_channel_out
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mixer_force_channel_out(GF_AudioMixer *am, u32 num_channels)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - am
    argTypes:
    - GF_AudioMixer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionName: gf_mixer_get_block_align
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_mixer_get_block_align(GF_AudioMixer *am)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/compositor/audio_mixer.c:189,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/audio_mixer.c:191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - am
    - lockIt
    argTypes:
    - GF_AudioMixer*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 193
    functionName: gf_mixer_lock
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mixer_lock(GF_AudioMixer *am, Bool lockIt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - am
    argTypes:
    - GF_AudioMixer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 199
    functionName: gf_mixer_empty
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mixer_empty(GF_AudioMixer *am)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - am
    argTypes:
    - GF_AudioMixer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 205
    functionName: gf_mixer_buffering
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mixer_buffering(GF_AudioMixer *am)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/audio_mixer.c:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - am
    argTypes:
    - GF_AudioMixer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 211
    functionName: gf_mixer_is_eos
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mixer_is_eos(GF_AudioMixer *am)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mixer_is_src_present
      Src: /src/gpac/src/compositor/audio_mixer.c:217,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:218,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/audio_mixer.c:219,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:221,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_mixer.c:222,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/audio_mixer.c:226,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:229,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - am
    - src
    argTypes:
    - GF_AudioMixer*
    - GF_AudioInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 213
    functionDepth: 2
    functionLinenumber: 213
    functionLinenumberEnd: 230
    functionName: gf_mixer_add_input
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - GF_LOG
    - gf_mixer_is_src_present
    - gf_list_add
    - gf_mixer_lock
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mixer_add_input(GF_AudioMixer *am, GF_AudioInterface *src)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:236,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/audio_mixer.c:237,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/audio_mixer.c:239,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/audio_mixer.c:241,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/audio_mixer.c:243,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/audio_mixer.c:245,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/audio_mixer.c:248,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:250,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 2
    argNames:
    - am
    - src
    argTypes:
    - GF_AudioMixer*
    - GF_AudioInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 232
    functionDepth: 1
    functionLinenumber: 232
    functionLinenumberEnd: 251
    functionName: gf_mixer_remove_input
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_mixer_lock
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_mixer_remove_input(GF_AudioMixer *am, GF_AudioInterface *src)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_AudioMixer*::ar::audio_out::QueryOutputSampleRate
      Src: /src/gpac/src/compositor/audio_mixer.c:259,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 4
    argNames:
    - am
    - out_sr
    - out_ch
    - out_fmt
    argTypes:
    - GF_AudioMixer*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 262
    functionName: get_best_samplerate
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - GF_AudioMixer*::ar::audio_out::QueryOutputSampleRate
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err get_best_samplerate(GF_AudioMixer *am, u32 *out_sr, u32 *out_ch,
      u32 *out_fmt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - am
    - outSR
    - outCH
    - outFMT
    - outChCfg
    argTypes:
    - GF_AudioMixer*
    - u32*
    - u32*
    - u32*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 264
    functionDepth: 0
    functionLinenumber: 264
    functionLinenumberEnd: 271
    functionName: gf_mixer_get_config
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mixer_get_config(GF_AudioMixer *am, u32 *outSR, u32 *outCH,
      u32 *outFMT, u64 *outChCfg)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_mixer.c:280,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_mixer.c:284,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:287,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/compositor/audio_mixer.c:289,1
    - Dst: get_best_samplerate
      Src: /src/gpac/src/compositor/audio_mixer.c:292,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:301,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 5
    argNames:
    - am
    - outSR
    - outCH
    - outFMT
    - outChCfg
    argTypes:
    - GF_AudioMixer*
    - u32
    - u32
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 273
    functionDepth: 1
    functionLinenumber: 273
    functionLinenumberEnd: 303
    functionName: gf_mixer_set_config
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_mixer_lock
    - gf_audio_fmt_bit_depth
    - get_best_samplerate
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mixer_set_config(GF_AudioMixer *am, u32 outSR, u32 outCH,
      u32 outFMT, u64 outChCfg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 305
    functionDepth: 0
    functionLinenumber: 305
    functionLinenumberEnd: 313
    functionName: make_s24_int
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE make_s24_int(u8 *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 315
    functionDepth: 0
    functionLinenumber: 315
    functionLinenumberEnd: 323
    functionName: make_s24_be_int
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE make_s24_be_int(u8 *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap_32
      Src: /src/gpac/src/compositor/audio_mixer.c:332,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - data
    - nb_ch
    - sample_offset
    - channel
    - planar_stride
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 328
    functionDepth: 1
    functionLinenumber: 328
    functionLinenumberEnd: 336
    functionName: input_sample_s32
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - swap_32
    linkageType: ''
    returnType: s32
    signature: s32 input_sample_s32(u8 *data, u32 nb_ch, u32 sample_offset, u32 channel,
      u32 planar_stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap_32
      Src: /src/gpac/src/compositor/audio_mixer.c:341,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - data
    - nb_ch
    - sample_offset
    - channel
    - planar_stride
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 337
    functionDepth: 1
    functionLinenumber: 337
    functionLinenumberEnd: 345
    functionName: input_sample_s32p
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - swap_32
    linkageType: ''
    returnType: s32
    signature: s32 input_sample_s32p(u8 *data, u32 nb_ch, u32 sample_offset, u32 channel,
      u32 planar_stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap_32
      Src: /src/gpac/src/compositor/audio_mixer.c:350,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - data
    - nb_ch
    - sample_offset
    - channel
    - planar_stride
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 346
    functionDepth: 1
    functionLinenumber: 346
    functionLinenumberEnd: 354
    functionName: input_sample_s32_be
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - swap_32
    linkageType: ''
    returnType: s32
    signature: s32 input_sample_s32_be(u8 *data, u32 nb_ch, u32 sample_offset, u32
      channel, u32 planar_stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: make_s24_int
      Src: /src/gpac/src/compositor/audio_mixer.c:357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - data
    - nb_ch
    - sample_offset
    - channel
    - planar_stride
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 355
    functionDepth: 1
    functionLinenumber: 355
    functionLinenumberEnd: 358
    functionName: input_sample_s24
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - make_s24_int
    linkageType: ''
    returnType: s32
    signature: s32 input_sample_s24(u8 *data, u32 nb_ch, u32 sample_offset, u32 channel,
      u32 planar_stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: make_s24_int
      Src: /src/gpac/src/compositor/audio_mixer.c:361,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - data
    - nb_ch
    - sample_offset
    - channel
    - planar_stride
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 362
    functionName: input_sample_s24p
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - make_s24_int
    linkageType: ''
    returnType: s32
    signature: s32 input_sample_s24p(u8 *data, u32 nb_ch, u32 sample_offset, u32 channel,
      u32 planar_stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: make_s24_be_int
      Src: /src/gpac/src/compositor/audio_mixer.c:365,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - data
    - nb_ch
    - sample_offset
    - channel
    - planar_stride
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 363
    functionDepth: 1
    functionLinenumber: 363
    functionLinenumberEnd: 366
    functionName: input_sample_s24_be
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - make_s24_be_int
    linkageType: ''
    returnType: s32
    signature: s32 input_sample_s24_be(u8 *data, u32 nb_ch, u32 sample_offset, u32
      channel, u32 planar_stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 369
    functionDepth: 0
    functionLinenumber: 369
    functionLinenumberEnd: 374
    functionName: TRUNC_FLT_DBL
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRUNC_FLT_DBL(_a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap_32
      Src: /src/gpac/src/compositor/audio_mixer.c:378,1
    - Dst: TRUNC_FLT_DBL
      Src: /src/gpac/src/compositor/audio_mixer.c:381,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - data
    - nb_ch
    - sample_offset
    - channel
    - planar_stride
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 374
    functionDepth: 1
    functionLinenumber: 374
    functionLinenumberEnd: 382
    functionName: input_sample_flt
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - TRUNC_FLT_DBL
    - swap_32
    linkageType: ''
    returnType: s32
    signature: s32 input_sample_flt(u8 *data, u32 nb_ch, u32 sample_offset, u32 channel,
      u32 planar_stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap_32
      Src: /src/gpac/src/compositor/audio_mixer.c:387,1
    - Dst: TRUNC_FLT_DBL
      Src: /src/gpac/src/compositor/audio_mixer.c:390,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - data
    - nb_ch
    - sample_offset
    - channel
    - planar_stride
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 383
    functionDepth: 1
    functionLinenumber: 383
    functionLinenumberEnd: 391
    functionName: input_sample_fltp
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - TRUNC_FLT_DBL
    - swap_32
    linkageType: ''
    returnType: s32
    signature: s32 input_sample_fltp(u8 *data, u32 nb_ch, u32 sample_offset, u32 channel,
      u32 planar_stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap_32
      Src: /src/gpac/src/compositor/audio_mixer.c:396,1
    - Dst: TRUNC_FLT_DBL
      Src: /src/gpac/src/compositor/audio_mixer.c:399,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - data
    - nb_ch
    - sample_offset
    - channel
    - planar_stride
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 392
    functionDepth: 1
    functionLinenumber: 392
    functionLinenumberEnd: 400
    functionName: input_sample_flt_be
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - TRUNC_FLT_DBL
    - swap_32
    linkageType: ''
    returnType: s32
    signature: s32 input_sample_flt_be(u8 *data, u32 nb_ch, u32 sample_offset, u32
      channel, u32 planar_stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap_64
      Src: /src/gpac/src/compositor/audio_mixer.c:405,1
    - Dst: TRUNC_FLT_DBL
      Src: /src/gpac/src/compositor/audio_mixer.c:408,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - data
    - nb_ch
    - sample_offset
    - channel
    - planar_stride
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 401
    functionDepth: 1
    functionLinenumber: 401
    functionLinenumberEnd: 409
    functionName: input_sample_dbl
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - TRUNC_FLT_DBL
    - swap_64
    linkageType: ''
    returnType: s32
    signature: s32 input_sample_dbl(u8 *data, u32 nb_ch, u32 sample_offset, u32 channel,
      u32 planar_stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap_64
      Src: /src/gpac/src/compositor/audio_mixer.c:414,1
    - Dst: TRUNC_FLT_DBL
      Src: /src/gpac/src/compositor/audio_mixer.c:417,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - data
    - nb_ch
    - sample_offset
    - channel
    - planar_stride
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 410
    functionDepth: 1
    functionLinenumber: 410
    functionLinenumberEnd: 418
    functionName: input_sample_dblp
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - TRUNC_FLT_DBL
    - swap_64
    linkageType: ''
    returnType: s32
    signature: s32 input_sample_dblp(u8 *data, u32 nb_ch, u32 sample_offset, u32 channel,
      u32 planar_stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap_64
      Src: /src/gpac/src/compositor/audio_mixer.c:423,1
    - Dst: TRUNC_FLT_DBL
      Src: /src/gpac/src/compositor/audio_mixer.c:426,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - data
    - nb_ch
    - sample_offset
    - channel
    - planar_stride
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 427
      start: 419
    functionDepth: 1
    functionLinenumber: 419
    functionLinenumberEnd: 427
    functionName: input_sample_dbl_be
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - TRUNC_FLT_DBL
    - swap_64
    linkageType: ''
    returnType: s32
    signature: s32 input_sample_dbl_be(u8 *data, u32 nb_ch, u32 sample_offset, u32
      channel, u32 planar_stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap_16
      Src: /src/gpac/src/compositor/audio_mixer.c:433,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - data
    - nb_ch
    - sample_offset
    - channel
    - planar_stride
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 429
    functionDepth: 1
    functionLinenumber: 429
    functionLinenumberEnd: 437
    functionName: input_sample_s16
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - swap_16
    linkageType: ''
    returnType: s32
    signature: s32 input_sample_s16(u8 *data, u32 nb_ch, u32 sample_offset, u32 channel,
      u32 planar_stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap_16
      Src: /src/gpac/src/compositor/audio_mixer.c:442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - data
    - nb_ch
    - sample_offset
    - channel
    - planar_stride
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 438
    functionDepth: 1
    functionLinenumber: 438
    functionLinenumberEnd: 446
    functionName: input_sample_s16_be
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - swap_16
    linkageType: ''
    returnType: s32
    signature: s32 input_sample_s16_be(u8 *data, u32 nb_ch, u32 sample_offset, u32
      channel, u32 planar_stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap_16
      Src: /src/gpac/src/compositor/audio_mixer.c:452,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - data
    - nb_ch
    - sample_offset
    - channel
    - planar_stride
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 448
    functionDepth: 1
    functionLinenumber: 448
    functionLinenumberEnd: 456
    functionName: input_sample_s16p
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - swap_16
    linkageType: ''
    returnType: s32
    signature: s32 input_sample_s16p(u8 *data, u32 nb_ch, u32 sample_offset, u32 channel,
      u32 planar_stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - data
    - nb_ch
    - sample_offset
    - channel
    - planar_stride
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 457
    functionDepth: 0
    functionLinenumber: 457
    functionLinenumberEnd: 462
    functionName: input_sample_u8
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 input_sample_u8(u8 *data, u32 nb_ch, u32 sample_offset, u32 channel,
      u32 planar_stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - data
    - nb_ch
    - sample_offset
    - channel
    - planar_stride
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 468
      start: 463
    functionDepth: 0
    functionLinenumber: 463
    functionLinenumberEnd: 468
    functionName: input_sample_u8p
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 input_sample_u8p(u8 *data, u32 nb_ch, u32 sample_offset, u32 channel,
      u32 planar_stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - data
    - nb_ch
    - sample_offset
    - channel
    - planar_stride
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 469
    functionDepth: 0
    functionLinenumber: 469
    functionLinenumberEnd: 472
    functionName: input_sample_null
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 input_sample_null(u8 *data, u32 nb_ch, u32 sample_offset, u32 channel,
      u32 planar_stride)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/compositor/audio_mixer.c:476,1
    - Dst: gf_audio_fmt_is_planar
      Src: /src/gpac/src/compositor/audio_mixer.c:478,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_mixer.c:532,1
    - Dst: gf_audio_fmt_sname
      Src: /src/gpac/src/compositor/audio_mixer.c:532,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 61
    argCount: 1
    argNames:
    - in
    argTypes:
    - MixerInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 474
    functionDepth: 1
    functionLinenumber: 474
    functionLinenumberEnd: 536
    functionName: gf_am_configure_source
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - gf_audio_fmt_is_planar
    - gf_audio_fmt_sname
    - GF_LOG
    - gf_audio_fmt_bit_depth
    linkageType: ''
    returnType: void
    signature: void gf_am_configure_source(MixerInput *in)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:543,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:545,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:551,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/audio_mixer.c:563,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/audio_mixer.c:564,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/audio_mixer.c:567,1
    - Dst: MixerInput*::src::GetConfig
      Src: /src/gpac/src/compositor/audio_mixer.c:568,1
    - Dst: gf_am_configure_source
      Src: /src/gpac/src/compositor/audio_mixer.c:618,1
    - Dst: memset
      Src: /src/gpac/src/compositor/audio_mixer.c:624,1
    - Dst: gf_mixer_set_config
      Src: /src/gpac/src/compositor/audio_mixer.c:649,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:655,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 110
    argCount: 1
    argNames:
    - am
    argTypes:
    - GF_AudioMixer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 538
    functionDepth: 2
    functionLinenumber: 538
    functionLinenumberEnd: 657
    functionName: gf_mixer_reconfig
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_assert
    - gf_am_configure_source
    - MixerInput*::src::GetConfig
    - gf_list_count
    - memset
    - gf_mixer_set_config
    - gf_mixer_lock
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mixer_reconfig(GF_AudioMixer *am)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - in_ch
    - out_ch_layout
    argTypes:
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 659
    functionDepth: 0
    functionLinenumber: 659
    functionLinenumberEnd: 671
    functionName: get_channel_out_pos
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE get_channel_out_pos(u32 in_ch, u64 out_ch_layout)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/compositor/audio_mixer.c:727,1
    - Dst: get_channel_out_pos
      Src: /src/gpac/src/compositor/audio_mixer.c:736,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/audio_mixer.c:737,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/audio_mixer.c:750,1
    - Dst: get_channel_out_pos
      Src: /src/gpac/src/compositor/audio_mixer.c:759,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 92
    argCount: 6
    argNames:
    - inChan
    - nb_in
    - in_ch_layout
    - forced_layout
    - nb_out
    - out_ch_layout
    argTypes:
    - s32*
    - u32
    - u64
    - Bool
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 786
      start: 674
    functionDepth: 1
    functionLinenumber: 674
    functionLinenumberEnd: 786
    functionName: gf_mixer_map_channels
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_assert
    - get_channel_out_pos
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gf_mixer_map_channels(s32 *inChan, u32 nb_in, u64 in_ch_layout,
      Bool forced_layout, u32 nb_out, u64 out_ch_layout)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: MixerInput*::src::FetchFrame
      Src: /src/gpac/src/compositor/audio_mixer.c:802,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/audio_mixer.c:820,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/audio_mixer.c:825,1
    - Dst: memset
      Src: /src/gpac/src/compositor/audio_mixer.c:832,1
    - Dst: memset
      Src: /src/gpac/src/compositor/audio_mixer.c:833,1
    - Dst: MixerInput*::get_sample
      Src: /src/gpac/src/compositor/audio_mixer.c:878,1
    - Dst: MixerInput*::get_sample
      Src: /src/gpac/src/compositor/audio_mixer.c:880,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/audio_mixer.c:885,1
    - Dst: gf_mixer_map_channels
      Src: /src/gpac/src/compositor/audio_mixer.c:891,1
    - Dst: MIN
      Src: /src/gpac/src/compositor/audio_mixer.c:916,1
    - Dst: MixerInput*::get_sample
      Src: /src/gpac/src/compositor/audio_mixer.c:929,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 113
    argCount: 3
    argNames:
    - am
    - in
    - audio_delay
    argTypes:
    - GF_AudioMixer*
    - MixerInput*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 790
    functionDepth: 2
    functionLinenumber: 790
    functionLinenumberEnd: 943
    functionName: gf_mixer_fetch_input
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - gf_mixer_map_channels
    - MixerInput*::src::FetchFrame
    - MIN
    - FIX2INT
    - memset
    - MixerInput*::get_sample
    linkageType: ''
    returnType: void
    signature: void gf_mixer_fetch_input(GF_AudioMixer *am, MixerInput *in, u32 audio_delay)
  - BBCount: 75
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/audio_mixer.c:958,1
    - Dst: gf_mixer_reconfig
      Src: /src/gpac/src/compositor/audio_mixer.c:961,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:963,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/audio_mixer.c:964,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:966,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/audio_mixer.c:974,1
    - Dst: src::GetConfig
      Src: /src/gpac/src/compositor/audio_mixer.c:976,1
    - Dst: gf_mixer_reconfig
      Src: /src/gpac/src/compositor/audio_mixer.c:982,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:983,1
    - Dst: gf_mixer_reconfig
      Src: /src/gpac/src/compositor/audio_mixer.c:986,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:987,1
    - Dst: src::IsMuted
      Src: /src/gpac/src/compositor/audio_mixer.c:992,1
    - Dst: src::GetSpeed
      Src: /src/gpac/src/compositor/audio_mixer.c:998,1
    - Dst: src::GetChannelVolume
      Src: /src/gpac/src/compositor/audio_mixer.c:999,1
    - Dst: src::FetchFrame
      Src: /src/gpac/src/compositor/audio_mixer.c:1011,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/audio_mixer.c:1022,1
    - Dst: src::ReleaseFrame
      Src: /src/gpac/src/compositor/audio_mixer.c:1026,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_mixer.c:1034,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:1037,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/audio_mixer.c:1050,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/audio_mixer.c:1058,1
    - Dst: MixerInput*::src::IsMuted
      Src: /src/gpac/src/compositor/audio_mixer.c:1059,1
    - Dst: gf_am_configure_source
      Src: /src/gpac/src/compositor/audio_mixer.c:1060,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/audio_mixer.c:1064,1
    - Dst: memset
      Src: /src/gpac/src/compositor/audio_mixer.c:1065,1
    - Dst: MixerInput*::src::GetSpeed
      Src: /src/gpac/src/compositor/audio_mixer.c:1069,1
    - Dst: MixerInput*::src::GetConfig
      Src: /src/gpac/src/compositor/audio_mixer.c:1079,1
    - Dst: gf_mixer_reconfig
      Src: /src/gpac/src/compositor/audio_mixer.c:1084,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/audio_mixer.c:1097,1
    - Dst: MixerInput*::src::GetChannelVolume
      Src: /src/gpac/src/compositor/audio_mixer.c:1100,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:1115,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/audio_mixer.c:1130,1
    - Dst: gf_mixer_fetch_input
      Src: /src/gpac/src/compositor/audio_mixer.c:1133,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/audio_mixer.c:1139,1
    - Dst: MixerInput*::src::ReleaseFrame
      Src: /src/gpac/src/compositor/audio_mixer.c:1140,1
    - Dst: memset
      Src: /src/gpac/src/compositor/audio_mixer.c:1148,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/audio_mixer.c:1154,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:1172,1
    - Dst: swap_32
      Src: /src/gpac/src/compositor/audio_mixer.c:1184,1
    - Dst: swap_32
      Src: /src/gpac/src/compositor/audio_mixer.c:1200,1
    - Dst: swap_32
      Src: /src/gpac/src/compositor/audio_mixer.c:1215,1
    - Dst: swap_32
      Src: /src/gpac/src/compositor/audio_mixer.c:1236,1
    - Dst: swap_32
      Src: /src/gpac/src/compositor/audio_mixer.c:1255,1
    - Dst: swap_32
      Src: /src/gpac/src/compositor/audio_mixer.c:1275,1
    - Dst: swap_64
      Src: /src/gpac/src/compositor/audio_mixer.c:1294,1
    - Dst: swap_64
      Src: /src/gpac/src/compositor/audio_mixer.c:1313,1
    - Dst: swap_64
      Src: /src/gpac/src/compositor/audio_mixer.c:1332,1
    - Dst: swap_16
      Src: /src/gpac/src/compositor/audio_mixer.c:1394,1
    - Dst: swap_16
      Src: /src/gpac/src/compositor/audio_mixer.c:1412,1
    - Dst: swap_16
      Src: /src/gpac/src/compositor/audio_mixer.c:1430,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_mixer.c:1469,1
    CyclomaticComplexity: 139
    EdgeCount: 139
    ICount: 418
    argCount: 4
    argNames:
    - am
    - buffer
    - buffer_size
    - delay
    argTypes:
    - GF_AudioMixer*
    - void*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1471
      start: 945
    functionDepth: 3
    functionLinenumber: 945
    functionLinenumberEnd: 1471
    functionName: gf_mixer_get_output
    functionSourceFile: /src/gpac/src/compositor/audio_mixer.c
    functionUses: 0
    functionsReached:
    - gf_am_configure_source
    - src::GetSpeed
    - gf_list_count
    - memset
    - gf_mixer_fetch_input
    - gf_realloc
    - gf_list_get
    - gf_assert
    - memcpy
    - src::GetConfig
    - MixerInput*::src::IsMuted
    - src::IsMuted
    - MixerInput*::src::GetSpeed
    - GF_LOG
    - MixerInput*::src::GetConfig
    - MixerInput*::src::GetChannelVolume
    - src::FetchFrame
    - gf_mixer_reconfig
    - swap_16
    - MixerInput*::src::ReleaseFrame
    - src::ReleaseFrame
    - gf_mixer_lock
    - src::GetChannelVolume
    - swap_32
    - swap_64
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mixer_get_output(GF_AudioMixer *am, void *buffer, u32
      buffer_size, u32 delay)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:43,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:47,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:49,1
    - Dst: drawable_reset_group_highlight
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:51,1
    - Dst: gf_sc_anchor_get_handler
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:64,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:66,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:67,1
    - Dst: compositor_mpeg4_get_sensor_handler_ex
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:73,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:75,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:76,1
    - Dst: group_2d_cache_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:91,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:98,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:112,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:120,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:128,1
    - Dst: gf_rect_from_bbox
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:136,1
    - Dst: gf_rect_union
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:140,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:158,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:159,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:165,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:170,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:185,1
    - Dst: group_2d_cache_evaluate
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:188,1
    - Dst: drawable_check_focus_highlight
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:192,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:197,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 107
    argCount: 3
    argNames:
    - node
    - group
    - tr_state
    argTypes:
    - GF_Node*
    - GroupingNode2D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 34
    functionDepth: 6
    functionLinenumber: 34
    functionLinenumberEnd: 207
    functionName: group_2d_traverse
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_sc_anchor_get_handler
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_list_count
    - gf_sys_clock
    - gf_list_new
    - gf_assert
    - compositor_mpeg4_get_sensor_handler_ex
    - gf_list_add
    - gf_rect_from_bbox
    - gf_node_traverse
    - gf_list_reset
    - group_2d_cache_traverse
    - gf_rect_union
    - drawable_check_focus_highlight
    - gf_node_list_get_count
    - drawable_reset_group_highlight
    - group_2d_cache_evaluate
    linkageType: ''
    returnType: void
    signature: void group_2d_traverse(GF_Node *node, GroupingNode2D *group, GF_TraverseState
      *tr_state)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:221,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:226,1
    - Dst: drawable_reset_group_highlight
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:228,1
    - Dst: gf_sc_anchor_get_handler
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:237,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:239,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:240,1
    - Dst: compositor_mpeg4_get_sensor_handler_ex
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:246,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:248,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:249,1
    - Dst: group_2d_cache_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:263,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:270,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:288,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:295,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:297,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:298,1
    - Dst: gf_rect_from_bbox
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:306,1
    - Dst: gf_rect_union
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:310,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:326,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:327,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:333,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:337,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:339,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:340,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:353,1
    - Dst: group_2d_cache_evaluate
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:356,1
    - Dst: drawable_check_focus_highlight
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:360,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:363,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:365,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:366,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 106
    argCount: 4
    argNames:
    - node
    - group
    - tr_state
    - positions
    argTypes:
    - GF_Node*
    - GroupingNode2D*
    - GF_TraverseState*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 210
    functionDepth: 6
    functionLinenumber: 210
    functionLinenumberEnd: 374
    functionName: group_2d_traverse_with_order
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - drawable_reset_group_highlight
    - gf_list_new
    - gf_rect_from_bbox
    - gf_sc_anchor_get_handler
    - gf_node_traverse
    - group_2d_cache_traverse
    - gf_node_list_get_child
    - gf_node_dirty_get
    - compositor_mpeg4_get_sensor_handler_ex
    - group_2d_cache_evaluate
    - gf_node_dirty_clear
    - gf_rect_union
    - gf_list_count
    - gf_list_add
    - drawable_check_focus_highlight
    - gf_node_list_get_count
    - gf_sys_clock
    linkageType: ''
    returnType: void
    signature: void group_2d_traverse_with_order(GF_Node *node, GroupingNode2D *group,
      GF_TraverseState *tr_state, u32 *positions)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:384,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:386,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 382
    functionDepth: 2
    functionLinenumber: 382
    functionLinenumberEnd: 387
    functionName: group_3d_delete
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void group_3d_delete(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:392,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:393,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 389
    functionDepth: 2
    functionLinenumber: 389
    functionLinenumberEnd: 395
    functionName: group_3d_new
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping.c
    functionUses: 0
    functionsReached:
    - gf_node_set_private
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GroupingNode
    signature: GroupingNode *group_3d_new(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:400,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 398
    functionDepth: 2
    functionLinenumber: 398
    functionLinenumberEnd: 412
    functionName: get_light_type
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    linkageType: ''
    returnType: u32
    signature: u32 get_light_type(GF_Node *n)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:423,1
    - Dst: group_3d_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:435,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:440,1
    - Dst: compositor_mpeg4_get_sensor_handler_ex
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:452,1
    - Dst: get_light_type
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:456,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:466,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:473,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:477,1
    - Dst: visual_3d_node_cull
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:485,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:497,1
    - Dst: compositor_mpeg4_get_sensor_handler_ex
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:501,1
    - Dst: GF_SensorHandler*::IsEnabled
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:502,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:503,1
    - Dst: get_light_type
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:516,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:516,1
    - Dst: get_light_type
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:528,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:530,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:532,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:533,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:535,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:547,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:553,1
    - Dst: gf_bbox_from_rect
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:560,1
    - Dst: gf_bbox_union
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:565,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:577,1
    - Dst: drawable3d_check_focus_highlight
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:582,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:588,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:597,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:598,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:599,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:600,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:601,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 135
    argCount: 3
    argNames:
    - node
    - group
    - tr_state
    argTypes:
    - GF_Node*
    - GroupingNode*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 414
    functionDepth: 6
    functionLinenumber: 414
    functionLinenumberEnd: 606
    functionName: group_3d_traverse
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping.c
    functionUses: 2
    functionsReached:
    - gf_node_get_tag
    - GF_SensorHandler*::IsEnabled
    - gf_free
    - visual_3d_node_cull
    - gf_bbox_from_rect
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_list_count
    - group_3d_traverse
    - gf_list_new
    - gf_list_get
    - memcpy
    - compositor_mpeg4_get_sensor_handler_ex
    - gf_list_add
    - gf_bbox_union
    - get_light_type
    - gf_node_traverse
    - gf_node_list_get_count
    - gf_malloc
    - gf_list_del
    - drawable3d_check_focus_highlight
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void group_3d_traverse(GF_Node *node, GroupingNode *group, GF_TraverseState
      *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:619,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - group
    argTypes:
    - ParentNode2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 620
      start: 617
    functionDepth: 1
    functionLinenumber: 617
    functionLinenumberEnd: 620
    functionName: parent_node_setup
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    linkageType: ''
    returnType: void
    signature: void parent_node_setup(ParentNode2D *group)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: parent_node_reset
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:625,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:626,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - group
    argTypes:
    - ParentNode2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 627
      start: 622
    functionDepth: 1
    functionLinenumber: 622
    functionLinenumberEnd: 627
    functionName: parent_node_predestroy
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping.c
    functionUses: 0
    functionsReached:
    - parent_node_reset
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void parent_node_predestroy(ParentNode2D *group)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:631,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:632,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:633,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:634,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - group
    argTypes:
    - ParentNode2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 629
    functionDepth: 1
    functionLinenumber: 629
    functionLinenumberEnd: 636
    functionName: parent_node_reset
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void parent_node_reset(ParentNode2D *group)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:642,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:646,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:648,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:653,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - group
    - n
    - discardable
    argTypes:
    - ParentNode2D*
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 654
      start: 638
    functionDepth: 1
    functionLinenumber: 638
    functionLinenumberEnd: 654
    functionName: parent_node_start_group
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_list_add
    - gf_list_last
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void parent_node_start_group(ParentNode2D *group, GF_Node *n, Bool
      discardable)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:658,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - group
    - bounds
    argTypes:
    - ParentNode2D*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 656
    functionDepth: 1
    functionLinenumber: 656
    functionLinenumberEnd: 664
    functionName: parent_node_end_group
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping.c
    functionUses: 0
    functionsReached:
    - gf_list_last
    linkageType: ''
    returnType: void
    signature: void parent_node_end_group(ParentNode2D *group, GF_Rect *bounds)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:668,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - group
    - bounds
    - ascent
    - descent
    - text_split_idx
    argTypes:
    - ParentNode2D*
    - GF_Rect*
    - Fixed
    - Fixed
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 674
      start: 666
    functionDepth: 1
    functionLinenumber: 666
    functionLinenumberEnd: 674
    functionName: parent_node_end_text_group
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping.c
    functionUses: 1
    functionsReached:
    - gf_list_last
    linkageType: ''
    returnType: void
    signature: void parent_node_end_text_group(ParentNode2D *group, GF_Rect *bounds,
      Fixed ascent, Fixed descent, u32 text_split_idx)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:684,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:687,1
    - Dst: compositor_mpeg4_get_sensor_handler_ex
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:699,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:712,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:714,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:723,1
    - Dst: compositor_mpeg4_get_sensor_handler_ex
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:729,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:730,1
    - Dst: parent_node_start_group
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:746,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:750,1
    - Dst: gf_rect_from_bbox
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:755,1
    - Dst: parent_node_end_group
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:759,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:766,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 53
    argCount: 3
    argNames:
    - node
    - group
    - tr_state
    argTypes:
    - GF_Node*
    - ParentNode2D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 769
      start: 678
    functionDepth: 6
    functionLinenumber: 678
    functionLinenumberEnd: 769
    functionName: parent_node_traverse
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_list_new
    - gf_rect_from_bbox
    - gf_node_traverse
    - gf_node_dirty_get
    - compositor_mpeg4_get_sensor_handler_ex
    - gf_node_dirty_clear
    - gf_list_add
    - parent_node_start_group
    - parent_node_end_group
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void parent_node_traverse(GF_Node *node, ParentNode2D *group, GF_TraverseState
      *tr_state)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:784,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:785,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:786,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:787,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:792,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:793,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:794,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:795,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:796,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:797,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - cg
    - tr_state
    argTypes:
    - ChildGroup*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 800
      start: 772
    functionDepth: 6
    functionLinenumber: 772
    functionLinenumberEnd: 800
    functionName: parent_node_child_traverse
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_add_matrix
    - gf_mx2d_add_translation
    - gf_node_traverse
    - gf_mx_add_translation
    - gf_mx2d_init
    - gf_mx_copy
    - gf_mx2d_copy
    linkageType: ''
    returnType: void
    signature: void parent_node_child_traverse(ChildGroup *cg, GF_TraverseState *tr_state)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:810,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:811,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:812,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:813,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:814,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:820,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:821,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:822,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/mpeg4_grouping.c:823,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 3
    argNames:
    - cg
    - tr_state
    - mat2D
    argTypes:
    - ChildGroup*
    - GF_TraverseState*
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 826
      start: 802
    functionDepth: 6
    functionLinenumber: 802
    functionLinenumberEnd: 826
    functionName: parent_node_child_traverse_matrix
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping.c
    functionUses: 0
    functionsReached:
    - gf_node_traverse
    - gf_mx_from_mx2d
    - gf_mx_add_matrix
    - gf_mx_copy
    - gf_mx2d_pre_multiply
    - gf_mx2d_copy
    linkageType: ''
    returnType: void
    signature: void parent_node_child_traverse_matrix(ChildGroup *cg, GF_TraverseState
      *tr_state, GF_Matrix2D *mat2D)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/media_object.c:51,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/media_object.c:52,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/compositor/media_object.c:62,1
    - Dst: get_sync_reference
      Src: /src/gpac/src/compositor/media_object.c:63,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/compositor/media_object.c:68,1
    - Dst: get_sync_reference
      Src: /src/gpac/src/compositor/media_object.c:69,1
    - Dst: gf_scene_get_media_object
      Src: /src/gpac/src/compositor/media_object.c:83,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 44
    argCount: 5
    argNames:
    - scene
    - iri
    - o_type
    - orig_ref
    - post_pone
    argTypes:
    - GF_Scene*
    - XMLRI*
    - u32
    - GF_Node*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 35
    functionDepth: 5
    functionLinenumber: 35
    functionLinenumberEnd: 86
    functionName: get_sync_reference
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 1
    functionsReached:
    - gf_scene_get_media_object
    - get_sync_reference
    - gf_sg_find_node_by_name
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: GF_MediaObject
    signature: GF_MediaObject *get_sync_reference(GF_Scene *scene, XMLRI *iri, u32
      o_type, GF_Node *orig_ref, Bool *post_pone)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/media_object.c:100,1
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/media_object.c:102,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/media_object.c:108,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/compositor/media_object.c:152,1
    - Dst: get_sync_reference
      Src: /src/gpac/src/compositor/media_object.c:153,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/compositor/media_object.c:160,1
    - Dst: get_sync_reference
      Src: /src/gpac/src/compositor/media_object.c:161,1
    - Dst: gf_scene_get_media_object_ex
      Src: /src/gpac/src/compositor/media_object.c:187,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 71
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 90
    functionDepth: 6
    functionLinenumber: 90
    functionLinenumberEnd: 189
    functionName: GF_MediaObject *gf_mo_register(GF_Node *node, MFURL *url, Bool lock_timelines,
      Bool force_new_res)
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_node_get_attribute_by_tag
    - gf_scene_get_media_object_ex
    - gf_node_get_graph
    - get_sync_reference
    - gf_sg_get_private
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_MediaObject *gf_mo_register(GF_Node *node, MFURL *url,
      Bool lock_timelines, Bool force_new_res)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_event_target_remove_by_node
      Src: /src/gpac/src/compositor/media_object.c:195,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - node
    - mo
    argTypes:
    - GF_Node*
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 191
    functionDepth: 1
    functionLinenumber: 191
    functionLinenumberEnd: 197
    functionName: gf_mo_unregister
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 2
    functionsReached:
    - gf_mo_event_target_remove_by_node
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_unregister(GF_Node *node, GF_MediaObject *mo)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/media_object.c:202,1
    - Dst: memset
      Src: /src/gpac/src/compositor/media_object.c:203,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/media_object.c:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 209
    functionName: gf_mo_new
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_MediaObject
    signature: GF_MediaObject *gf_mo_new()
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 17
    argCount: 5
    argNames:
    - srd_map
    - width
    - height
    - min_x
    - min_y
    argTypes:
    - GF_PropertyValue*
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 232
    functionName: compositor_get_srdmap_size
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void compositor_get_srdmap_size(const GF_PropertyValue *srd_map, u32
      *width, u32 *height, u32 *min_x, u32 *min_y)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_update_caps
      Src: /src/gpac/src/compositor/media_object.c:240,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/media_object.c:251,1
    - Dst: compositor_get_srdmap_size
      Src: /src/gpac/src/compositor/media_object.c:253,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 28
    argCount: 8
    argNames:
    - mo
    - width
    - height
    - stride
    - pixel_ar
    - pixelFormat
    - is_flipped
    - for_texture
    argTypes:
    - GF_MediaObject*
    - u32*
    - u32*
    - u32*
    - u32*
    - u32*
    - Bool*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 255
    functionName: gf_mo_get_visual_info_ex
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - compositor_get_srdmap_size
    - gf_mo_update_caps
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_get_visual_info_ex(GF_MediaObject *mo, u32 *width,
      u32 *height, u32 *stride, u32 *pixel_ar, u32 *pixelFormat, Bool *is_flipped,
      Bool for_texture)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_get_visual_info_ex
      Src: /src/gpac/src/compositor/media_object.c:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - mo
    - width
    - height
    - stride
    - pixel_ar
    - pixelFormat
    - is_flipped
    argTypes:
    - GF_MediaObject*
    - u32*
    - u32*
    - u32*
    - u32*
    - u32*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 256
    functionDepth: 2
    functionLinenumber: 256
    functionLinenumberEnd: 260
    functionName: gf_mo_get_visual_info
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 2
    functionsReached:
    - gf_mo_get_visual_info_ex
    linkageType: ''
    returnType: Bool
    signature: Bool gf_mo_get_visual_info(GF_MediaObject *mo, u32 *width, u32 *height,
      u32 *stride, u32 *pixel_ar, u32 *pixelFormat, Bool *is_flipped)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - mo
    - nb_views
    argTypes:
    - GF_MediaObject*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 265
    functionName: gf_mo_get_nb_views
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_get_nb_views(GF_MediaObject *mo, u32 *nb_views)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/compositor/media_object.c:273,1
    - Dst: gf_mo_update_caps
      Src: /src/gpac/src/compositor/media_object.c:276,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/media_object.c:287,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 31
    argCount: 6
    argNames:
    - mo
    - sample_rate
    - bits_per_sample
    - num_channels
    - channel_config
    - forced_layout
    argTypes:
    - GF_MediaObject*
    - u32*
    - u32*
    - u32*
    - u64*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 297
    functionName: gf_mo_get_audio_info
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_filter_pid_get_packet
    - gf_mo_update_caps
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_get_audio_info(GF_MediaObject *mo, u32 *sample_rate,
      u32 *bits_per_sample, u32 *num_channels, u64 *channel_config, Bool *forced_layout)
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: UPDATE_CAP
      Src: /src/gpac/src/compositor/media_object.c:321,1
    - Dst: UPDATE_CAP
      Src: /src/gpac/src/compositor/media_object.c:322,1
    - Dst: UPDATE_CAP
      Src: /src/gpac/src/compositor/media_object.c:323,1
    - Dst: UPDATE_CAP
      Src: /src/gpac/src/compositor/media_object.c:324,1
    - Dst: UPDATE_CAP
      Src: /src/gpac/src/compositor/media_object.c:325,1
    - Dst: UPDATE_CAP
      Src: /src/gpac/src/compositor/media_object.c:327,1
    - Dst: UPDATE_CAP
      Src: /src/gpac/src/compositor/media_object.c:330,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/media_object.c:334,1
    - Dst: gf_prop_matrix_decompose
      Src: /src/gpac/src/compositor/media_object.c:339,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/media_object.c:356,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/media_object.c:384,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/media_object.c:393,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/media_object.c:394,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/media_object.c:414,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/media_object.c:416,1
    - Dst: gf_sg_reset
      Src: /src/gpac/src/compositor/media_object.c:419,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/media_object.c:421,1
    - Dst: gf_scene_regenerate
      Src: /src/gpac/src/compositor/media_object.c:424,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/media_object.c:436,1
    - Dst: compositor_get_srdmap_size
      Src: /src/gpac/src/compositor/media_object.c:437,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/media_object.c:439,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/media_object.c:443,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/media_object.c:445,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/media_object.c:447,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/media_object.c:449,1
    - Dst: UPDATE_CAP
      Src: /src/gpac/src/compositor/media_object.c:453,1
    - Dst: UPDATE_CAP
      Src: /src/gpac/src/compositor/media_object.c:454,1
    - Dst: UPDATE_CAP
      Src: /src/gpac/src/compositor/media_object.c:455,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/media_object.c:458,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/compositor/media_object.c:464,1
    - Dst: gf_audio_fmt_is_planar
      Src: /src/gpac/src/compositor/media_object.c:465,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/media_object.c:475,1
    - Dst: memset
      Src: /src/gpac/src/compositor/media_object.c:481,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/media_object.c:483,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 171
    argCount: 2
    argNames:
    - mo
    - check_unchanged
    argTypes:
    - GF_MediaObject*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 300
    functionDepth: 5
    functionLinenumber: 300
    functionLinenumberEnd: 488
    functionName: gf_mo_update_caps_ex
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached:
    - gf_prop_matrix_decompose
    - gf_list_get
    - gf_filter_pid_get_property
    - gf_scene_regenerate
    - gf_sc_send_event
    - GF_LOG
    - gf_list_count
    - gf_sg_reset
    - gf_audio_fmt_is_planar
    - memset
    - UPDATE_CAP
    - compositor_get_srdmap_size
    - gf_audio_fmt_bit_depth
    linkageType: ''
    returnType: void
    signature: void gf_mo_update_caps_ex(GF_MediaObject *mo, Bool check_unchanged)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _code
    - ','
    - _field
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 308
    functionDepth: 0
    functionLinenumber: 308
    functionLinenumberEnd: 318
    functionName: UPDATE_CAP
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: UPDATE_CAP(_code, _field)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_update_caps_ex
      Src: /src/gpac/src/compositor/media_object.c:491,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 489
    functionDepth: 6
    functionLinenumber: 489
    functionLinenumberEnd: 493
    functionName: gf_mo_update_caps
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 2
    functionsReached:
    - gf_mo_update_caps_ex
    linkageType: ''
    returnType: void
    signature: void gf_mo_update_caps(GF_MediaObject *mo)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_timestamp_to_clocktime
      Src: /src/gpac/src/compositor/media_object.c:507,1
    - Dst: gf_scene_adjust_timestamp_for_addon
      Src: /src/gpac/src/compositor/media_object.c:514,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 4
    argNames:
    - mo
    - ts
    - timescale
    - discard
    argTypes:
    - GF_MediaObject*
    - u64
    - u32
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 520
      start: 494
    functionDepth: 2
    functionLinenumber: 494
    functionLinenumberEnd: 520
    functionName: convert_ts_to_ms
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached:
    - gf_scene_adjust_timestamp_for_addon
    - gf_timestamp_to_clocktime
    linkageType: ''
    returnType: u32
    signature: u32 convert_ts_to_ms(GF_MediaObject *mo, u64 ts, u32 timescale, Bool
      *discard)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/src/compositor/media_object.c:532,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/media_object.c:536,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/media_object.c:539,1
    - Dst: memset
      Src: /src/gpac/src/compositor/media_object.c:540,1
    - Dst: atoi
      Src: /src/gpac/src/compositor/media_object.c:541,1
    - Dst: GF_4CC
      Src: /src/gpac/src/compositor/media_object.c:546,1
    - Dst: GF_4CC
      Src: /src/gpac/src/compositor/media_object.c:547,1
    - Dst: gf_scene_register_associated_media
      Src: /src/gpac/src/compositor/media_object.c:551,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/media_object.c:554,1
    - Dst: memset
      Src: /src/gpac/src/compositor/media_object.c:557,1
    - Dst: atoi
      Src: /src/gpac/src/compositor/media_object.c:558,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/compositor/media_object.c:559,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/compositor/media_object.c:560,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/compositor/media_object.c:561,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/compositor/media_object.c:562,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/compositor/media_object.c:563,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/compositor/media_object.c:564,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/compositor/media_object.c:565,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/compositor/media_object.c:566,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/compositor/media_object.c:567,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/compositor/media_object.c:569,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/compositor/media_object.c:571,1
    - Dst: gf_scene_notify_associated_media_timeline
      Src: /src/gpac/src/compositor/media_object.c:573,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 44
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 523
    functionDepth: 1
    functionLinenumber: 523
    functionLinenumberEnd: 577
    functionName: check_temi
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_filter_pck_enum_properties
    - gf_bs_new
    - gf_bs_del
    - memset
    - strncmp
    - gf_scene_notify_associated_media_timeline
    - atoi
    - gf_scene_register_associated_media
    - gf_bs_read_int
    - GF_4CC
    - gf_bs_read_u64
    - strlen
    linkageType: ''
    returnType: void
    signature: void check_temi(GF_MediaObject *mo)
  - BBCount: 88
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/media_object.c:609,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/compositor/media_object.c:616,1
    - Dst: gf_odm_check_buffering
      Src: /src/gpac/src/compositor/media_object.c:620,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/compositor/media_object.c:636,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/compositor/media_object.c:638,1
    - Dst: mediasensor_update_timing
      Src: /src/gpac/src/compositor/media_object.c:642,1
    - Dst: gf_odm_on_eos
      Src: /src/gpac/src/compositor/media_object.c:644,1
    - Dst: gf_odm_signal_eos_reached
      Src: /src/gpac/src/compositor/media_object.c:645,1
    - Dst: gf_odm_check_clock_mediatime
      Src: /src/gpac/src/compositor/media_object.c:653,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/compositor/media_object.c:654,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/compositor/media_object.c:655,1
    - Dst: check_temi
      Src: /src/gpac/src/compositor/media_object.c:656,1
    - Dst: gf_clock_is_started
      Src: /src/gpac/src/compositor/media_object.c:666,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/media_object.c:668,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/compositor/media_object.c:675,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/compositor/media_object.c:676,1
    - Dst: convert_ts_to_ms
      Src: /src/gpac/src/compositor/media_object.c:678,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/compositor/media_object.c:678,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/compositor/media_object.c:680,1
    - Dst: gf_filter_pid_get_first_packet_cts
      Src: /src/gpac/src/compositor/media_object.c:698,1
    - Dst: convert_ts_to_ms
      Src: /src/gpac/src/compositor/media_object.c:699,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/compositor/media_object.c:702,1
    - Dst: mediasensor_update_timing
      Src: /src/gpac/src/compositor/media_object.c:706,1
    - Dst: gf_odm_on_eos
      Src: /src/gpac/src/compositor/media_object.c:708,1
    - Dst: gf_filter_pid_try_pull
      Src: /src/gpac/src/compositor/media_object.c:719,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/media_object.c:722,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/media_object.c:726,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/media_object.c:742,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/media_object.c:742,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/media_object.c:745,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/media_object.c:749,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/media_object.c:762,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/media_object.c:780,1
    - Dst: gf_clock_is_started
      Src: /src/gpac/src/compositor/media_object.c:793,1
    - Dst: gf_clock_diff
      Src: /src/gpac/src/compositor/media_object.c:796,1
    - Dst: gf_clock_diff
      Src: /src/gpac/src/compositor/media_object.c:796,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/media_object.c:801,1
    - Dst: gf_clock_diff
      Src: /src/gpac/src/compositor/media_object.c:809,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/media_object.c:812,1
    - Dst: gf_filter_pid_first_packet_is_empty
      Src: /src/gpac/src/compositor/media_object.c:815,1
    - Dst: gf_clock_diff
      Src: /src/gpac/src/compositor/media_object.c:820,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/media_object.c:827,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/compositor/media_object.c:834,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/compositor/media_object.c:835,1
    - Dst: gf_odm_check_clock_mediatime
      Src: /src/gpac/src/compositor/media_object.c:836,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/compositor/media_object.c:837,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/compositor/media_object.c:838,1
    - Dst: check_temi
      Src: /src/gpac/src/compositor/media_object.c:839,1
    - Dst: convert_ts_to_ms
      Src: /src/gpac/src/compositor/media_object.c:841,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/compositor/media_object.c:841,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/compositor/media_object.c:843,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/media_object.c:849,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/media_object.c:849,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/media_object.c:850,1
    - Dst: gf_filter_pid_get_first_packet_cts
      Src: /src/gpac/src/compositor/media_object.c:857,1
    - Dst: convert_ts_to_ms
      Src: /src/gpac/src/compositor/media_object.c:858,1
    - Dst: gf_scene_notify_event
      Src: /src/gpac/src/compositor/media_object.c:876,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/compositor/media_object.c:881,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/compositor/media_object.c:893,1
    - Dst: gf_clock_diff
      Src: /src/gpac/src/compositor/media_object.c:895,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/media_object.c:896,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/compositor/media_object.c:899,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/compositor/media_object.c:902,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/compositor/media_object.c:902,1
    - Dst: gf_clock_diff
      Src: /src/gpac/src/compositor/media_object.c:903,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/media_object.c:906,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/compositor/media_object.c:917,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/compositor/media_object.c:917,1
    - Dst: gf_clock_to_media_time
      Src: /src/gpac/src/compositor/media_object.c:921,1
    - Dst: mediasensor_update_timing
      Src: /src/gpac/src/compositor/media_object.c:937,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/media_object.c:940,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/media_object.c:940,1
    - Dst: gf_filter_pid_get_packet_count
      Src: /src/gpac/src/compositor/media_object.c:940,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/compositor/media_object.c:940,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/compositor/media_object.c:942,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/compositor/media_object.c:948,1
    - Dst: gf_net_get_ntp_diff_ms
      Src: /src/gpac/src/compositor/media_object.c:953,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/compositor/media_object.c:954,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/compositor/media_object.c:958,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/media_object.c:959,1
    - Dst: gf_clock_is_started
      Src: /src/gpac/src/compositor/media_object.c:982,1
    CyclomaticComplexity: 122
    EdgeCount: 122
    ICount: 329
    argCount: 10
    argNames:
    - mo
    - resync
    - upload_time_ms
    - eos
    - timestamp
    - size
    - ms_until_pres
    - ms_until_next
    - outFrame
    - planar_size
    argTypes:
    - GF_MediaObject*
    - GF_MOFetchMode
    - u32
    - Bool*
    - u32*
    - u32*
    - s32*
    - s32*
    - GF_FilterFrameInterface**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1014
      start: 579
    functionDepth: 3
    functionLinenumber: 579
    functionLinenumberEnd: 1014
    functionName: gf_mo_fetch_data
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_get_first_packet_cts
    - convert_ts_to_ms
    - gf_clock_to_media_time
    - gf_filter_pck_get_frame_interface
    - gf_filter_pid_get_packet
    - gf_odm_signal_eos_reached
    - gf_clock_diff
    - gf_assert
    - gf_clock_is_started
    - gf_scene_notify_event
    - gf_odm_on_eos
    - gf_net_get_ntp_diff_ms
    - gf_odm_check_buffering
    - mediasensor_update_timing
    - gf_filter_release_property
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_duration
    - gf_net_get_utc
    - gf_filter_pck_get_property
    - gf_filter_pid_get_packet_count
    - gf_filter_pck_ref
    - gf_filter_pid_drop_packet
    - check_temi
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_filter_pck_get_timescale
    - gf_filter_pid_first_packet_is_empty
    - gf_filter_pid_is_eos
    - gf_clock_time
    - gf_timestamp_rescale
    - ABS
    - gf_filter_pid_get_info_str
    - gf_filter_pck_unref
    - FIX2INT
    - gf_fatal_assert
    - gf_filter_pid_try_pull
    - gf_odm_check_clock_mediatime
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_mo_fetch_data(GF_MediaObject *mo, GF_MOFetchMode resync,
      u32 upload_time_ms, Bool *eos, u32 *timestamp, u32 *size, s32 *ms_until_pres,
      s32 *ms_until_next, GF_FilterFrameInterface **outFrame, u32 *planar_size)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/media_object.c:1030,1
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/src/compositor/media_object.c:1052,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/compositor/media_object.c:1056,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/media_object.c:1058,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/media_object.c:1058,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 35
    argCount: 3
    argNames:
    - mo
    - nb_bytes
    - drop_mode
    argTypes:
    - GF_MediaObject*
    - u32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1063
      start: 1017
    functionDepth: 3
    functionLinenumber: 1017
    functionLinenumberEnd: 1063
    functionName: gf_mo_release_data
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 4
    functionsReached:
    - gf_assert
    - gf_filter_pck_is_blocking_ref
    - GF_LOG
    - gf_filter_pck_unref
    - gf_clock_time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_release_data(GF_MediaObject *mo, u32 nb_bytes, s32
      drop_mode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_clock_real_time
      Src: /src/gpac/src/compositor/media_object.c:1071,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/media_object.c:1073,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - mo
    - obj_time
    argTypes:
    - GF_MediaObject*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1079
      start: 1065
    functionDepth: 3
    functionLinenumber: 1065
    functionLinenumberEnd: 1079
    functionName: gf_mo_get_object_time
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 1
    functionsReached:
    - gf_clock_time
    - gf_clock_real_time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_get_object_time(GF_MediaObject *mo, u32 *obj_time)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/media_object.c:1116,1
    - Dst: gf_odm_start
      Src: /src/gpac/src/compositor/media_object.c:1118,1
    - Dst: mediacontrol_restart
      Src: /src/gpac/src/compositor/media_object.c:1122,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 44
    argCount: 4
    argNames:
    - mo
    - clipBegin
    - clipEnd
    - can_loop
    argTypes:
    - GF_MediaObject*
    - Double
    - Double
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1127
      start: 1081
    functionDepth: 2
    functionLinenumber: 1081
    functionLinenumberEnd: 1127
    functionName: gf_mo_play
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 5
    functionsReached:
    - gf_odm_start
    - gf_assert
    - mediacontrol_restart
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_play(GF_MediaObject *mo, Double clipBegin, Double clipEnd,
      Bool can_loop)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/compositor/media_object.c:1144,1
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/compositor/media_object.c:1150,1
    - Dst: gf_odm_stop_or_destroy
      Src: /src/gpac/src/compositor/media_object.c:1153,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 27
    argCount: 1
    argNames:
    - _mo
    argTypes:
    - GF_MediaObject**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1162
      start: 1129
    functionDepth: 5
    functionLinenumber: 1129
    functionLinenumberEnd: 1162
    functionName: gf_mo_stop
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 4
    functionsReached:
    - gf_odm_stop_or_destroy
    - gf_odm_disconnect
    - gf_filter_pck_unref
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_stop(GF_MediaObject **_mo)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_get_mediacontrol
      Src: /src/gpac/src/compositor/media_object.c:1170,1
    - Dst: gf_odm_shares_clock
      Src: /src/gpac/src/compositor/media_object.c:1174,1
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/media_object.c:1174,1
    - Dst: mediacontrol_restart
      Src: /src/gpac/src/compositor/media_object.c:1183,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1184
      start: 1164
    functionDepth: 1
    functionLinenumber: 1164
    functionLinenumberEnd: 1184
    functionName: gf_mo_restart
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 2
    functionsReached:
    - mediacontrol_restart
    - gf_odm_get_media_clock
    - gf_odm_shares_clock
    - gf_odm_get_mediacontrol
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_restart(GF_MediaObject *mo)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/compositor/media_object.c:1202,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/media_object.c:1205,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/media_object.c:1207,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/media_object.c:1209,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/media_object.c:1216,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/media_object.c:1220,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/media_object.c:1221,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/media_object.c:1223,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 45
    argCount: 1
    argNames:
    - url
    argTypes:
    - MFURL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1240
      start: 1186
    functionDepth: 0
    functionLinenumber: 1186
    functionLinenumberEnd: 1240
    functionName: gf_mo_get_od_id
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_strdup
    - sscanf
    - sprintf
    - strnicmp
    - stricmp
    - strlen
    linkageType: ''
    returnType: u32
    signature: u32 gf_mo_get_od_id(MFURL *url)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/compositor/media_object.c:1251,1
    - Dst: strcpy
      Src: /src/gpac/src/compositor/media_object.c:1253,1
    - Dst: strrchr
      Src: /src/gpac/src/compositor/media_object.c:1266,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/media_object.c:1269,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/media_object.c:1275,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/media_object.c:1275,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/media_object.c:1281,1
    - Dst: gf_odm_find_segment
      Src: /src/gpac/src/compositor/media_object.c:1285,1
    - Dst: gf_scene_get_root_scene
      Src: /src/gpac/src/compositor/media_object.c:1290,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/media_object.c:1292,1
    - Dst: gf_filter_is_supported_source
      Src: /src/gpac/src/compositor/media_object.c:1294,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/media_object.c:1306,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/media_object.c:1308,1
    - Dst: strrchr
      Src: /src/gpac/src/compositor/media_object.c:1315,1
    - Dst: strcpy
      Src: /src/gpac/src/compositor/media_object.c:1319,1
    - Dst: strrchr
      Src: /src/gpac/src/compositor/media_object.c:1320,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/media_object.c:1322,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 65
    argCount: 4
    argNames:
    - obj
    - an_url
    - keep_fragment
    - obj_hint_type
    argTypes:
    - GF_MediaObject*
    - MFURL*
    - Bool*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1325
      start: 1243
    functionDepth: 2
    functionLinenumber: 1243
    functionLinenumberEnd: 1325
    functionName: gf_mo_is_same_url
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 2
    functionsReached:
    - gf_odm_find_segment
    - gf_filter_is_supported_source
    - strrchr
    - gf_sg_find_node_by_name
    - strcpy
    - strncmp
    - stricmp
    - gf_list_enum
    - strlen
    - gf_scene_get_root_scene
    linkageType: ''
    returnType: Bool
    signature: Bool gf_mo_is_same_url(GF_MediaObject *obj, MFURL *an_url, Bool *keep_fragment,
      u32 obj_hint_type)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_get_od_id
      Src: /src/gpac/src/compositor/media_object.c:1333,1
    - Dst: gf_mo_is_same_url
      Src: /src/gpac/src/compositor/media_object.c:1335,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 2
    argNames:
    - mo
    - url
    argTypes:
    - GF_MediaObject*
    - MFURL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1344
      start: 1327
    functionDepth: 3
    functionLinenumber: 1327
    functionLinenumberEnd: 1344
    functionName: gf_mo_url_changed
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 2
    functionsReached:
    - gf_mo_get_od_id
    - gf_mo_is_same_url
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_url_changed(GF_MediaObject *mo, MFURL *url)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: mediacontrol_pause
      Src: /src/gpac/src/compositor/media_object.c:1351,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1353
      start: 1346
    functionDepth: 1
    functionLinenumber: 1346
    functionLinenumberEnd: 1353
    functionName: gf_mo_pause
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 2
    functionsReached:
    - mediacontrol_pause
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_pause(GF_MediaObject *mo)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: mediacontrol_resume
      Src: /src/gpac/src/compositor/media_object.c:1360,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1362
      start: 1355
    functionDepth: 1
    functionLinenumber: 1355
    functionLinenumberEnd: 1362
    functionName: gf_mo_resume
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 2
    functionsReached:
    - mediacontrol_resume
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_resume(GF_MediaObject *mo)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_get_mediacontrol
      Src: /src/gpac/src/compositor/media_object.c:1383,1
    - Dst: gf_odm_set_speed
      Src: /src/gpac/src/compositor/media_object.c:1392,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 2
    argNames:
    - mo
    - speed
    argTypes:
    - GF_MediaObject*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1393
      start: 1364
    functionDepth: 2
    functionLinenumber: 1364
    functionLinenumberEnd: 1393
    functionName: gf_mo_set_speed
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 2
    functionsReached:
    - gf_odm_set_speed
    - gf_odm_get_mediacontrol
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_set_speed(GF_MediaObject *mo, Fixed speed)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1399
      start: 1395
    functionDepth: 0
    functionLinenumber: 1395
    functionLinenumberEnd: 1399
    functionName: gf_mo_get_current_speed
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_get_current_speed(GF_MediaObject *mo)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1405
      start: 1401
    functionDepth: 0
    functionLinenumber: 1401
    functionLinenumberEnd: 1405
    functionName: gf_mo_get_min_frame_dur
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_get_min_frame_dur(GF_MediaObject *mo)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - mo
    - ts
    argTypes:
    - GF_MediaObject*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1410
      start: 1406
    functionDepth: 0
    functionLinenumber: 1406
    functionLinenumberEnd: 1410
    functionName: gf_mo_map_timestamp_to_sys_clock
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_map_timestamp_to_sys_clock(GF_MediaObject *mo, u32
      ts)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1415
      start: 1412
    functionDepth: 0
    functionLinenumber: 1412
    functionLinenumberEnd: 1415
    functionName: gf_mo_is_buffering
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_mo_is_buffering(GF_MediaObject *mo)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_get_mediacontrol
      Src: /src/gpac/src/compositor/media_object.c:1427,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - mo
    - in_speed
    argTypes:
    - GF_MediaObject*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1433
      start: 1417
    functionDepth: 1
    functionLinenumber: 1417
    functionLinenumberEnd: 1433
    functionName: gf_mo_get_speed
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached:
    - gf_odm_get_mediacontrol
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_get_speed(GF_MediaObject *mo, Fixed in_speed)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_get_mediacontrol
      Src: /src/gpac/src/compositor/media_object.c:1446,1
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/media_object.c:1451,1
    - Dst: gf_odm_shares_clock
      Src: /src/gpac/src/compositor/media_object.c:1452,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - mo
    - in_loop
    argTypes:
    - GF_MediaObject*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1462
      start: 1435
    functionDepth: 1
    functionLinenumber: 1435
    functionLinenumberEnd: 1462
    functionName: gf_mo_get_loop
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 2
    functionsReached:
    - gf_odm_get_media_clock
    - gf_odm_shares_clock
    - gf_odm_get_mediacontrol
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_get_loop(GF_MediaObject *mo, Bool in_loop)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1470
      start: 1464
    functionDepth: 0
    functionLinenumber: 1464
    functionLinenumberEnd: 1470
    functionName: gf_mo_get_duration
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_get_duration(GF_MediaObject *mo)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_get_mediacontrol
      Src: /src/gpac/src/compositor/media_object.c:1489,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 17
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1501
      start: 1472
    functionDepth: 1
    functionLinenumber: 1472
    functionLinenumberEnd: 1501
    functionName: gf_mo_should_deactivate
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached:
    - gf_odm_get_mediacontrol
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_should_deactivate(GF_MediaObject *mo)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1511
      start: 1503
    functionDepth: 0
    functionLinenumber: 1503
    functionLinenumberEnd: 1511
    functionName: gf_mo_is_muted
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_is_muted(GF_MediaObject *mo)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_clock_is_started
      Src: /src/gpac/src/compositor/media_object.c:1516,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1518
      start: 1513
    functionDepth: 1
    functionLinenumber: 1513
    functionLinenumberEnd: 1518
    functionName: gf_mo_is_started
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached:
    - gf_clock_is_started
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_is_started(GF_MediaObject *mo)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/media_object.c:1537,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/media_object.c:1538,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1542
      start: 1520
    functionDepth: 3
    functionLinenumber: 1520
    functionLinenumberEnd: 1542
    functionName: gf_mo_is_done
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 1
    functionsReached:
    - gf_clock_time
    - gf_odm_get_media_clock
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_is_done(GF_MediaObject *mo)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_clock_set_audio_delay
      Src: /src/gpac/src/compositor/media_object.c:1550,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - mo
    - ms_drift
    argTypes:
    - GF_MediaObject*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1551
      start: 1545
    functionDepth: 1
    functionLinenumber: 1545
    functionLinenumberEnd: 1551
    functionName: gf_mo_adjust_clock
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached:
    - gf_clock_set_audio_delay
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_adjust_clock(GF_MediaObject *mo, s32 ms_drift)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - mo
    - flag
    - set_on
    argTypes:
    - GF_MediaObject*
    - GF_MOUserFlags
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1562
      start: 1553
    functionDepth: 0
    functionLinenumber: 1553
    functionLinenumberEnd: 1562
    functionName: gf_mo_set_flag
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_set_flag(GF_MediaObject *mo, GF_MOUserFlags flag, Bool
      set_on)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/compositor/media_object.c:1577,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/media_object.c:1579,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/media_object.c:1580,1
    - Dst: strchr
      Src: /src/gpac/src/compositor/media_object.c:1587,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/media_object.c:1588,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 25
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1594
      start: 1564
    functionDepth: 1
    functionLinenumber: 1564
    functionLinenumberEnd: 1594
    functionName: gf_mo_has_audio
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - strchr
    - strcmp
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_has_audio(GF_MediaObject *mo)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1601
      start: 1596
    functionDepth: 0
    functionLinenumber: 1596
    functionLinenumberEnd: 1601
    functionName: GF_SceneGraph *gf_mo_get_scenegraph(GF_MediaObject *mo)
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_SceneGraph *gf_mo_get_scenegraph(GF_MediaObject *mo)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dom_event_get_target_from_node
      Src: /src/gpac/src/compositor/media_object.c:1610,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/media_object.c:1611,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1616
      start: 1604
    functionDepth: 3
    functionLinenumber: 1604
    functionLinenumberEnd: 1616
    functionName: GF_DOMEventTarget *gf_mo_event_target_add_node(GF_MediaObject *mo,
      GF_Node *n)
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_dom_event_get_target_from_node
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_DOMEventTarget *gf_mo_event_target_add_node(GF_MediaObject
      *mo, GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/media_object.c:1621,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - mo
    - i
    argTypes:
    - GF_MediaObject*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1623
      start: 1618
    functionDepth: 1
    functionLinenumber: 1618
    functionLinenumberEnd: 1623
    functionName: gf_mo_event_target_remove_by_index
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached:
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mo_event_target_remove_by_index(GF_MediaObject *mo, u32 i)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/media_object.c:1629,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - mo
    - i
    argTypes:
    - GF_MediaObject*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1633
      start: 1625
    functionDepth: 1
    functionLinenumber: 1625
    functionLinenumberEnd: 1633
    functionName: gf_mo_event_target_enum_node
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *gf_mo_event_target_enum_node(GF_MediaObject *mo, u32 *i)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/media_object.c:1638,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/media_object.c:1640,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - mo
    - node
    argTypes:
    - GF_MediaObject*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1646
      start: 1635
    functionDepth: 1
    functionLinenumber: 1635
    functionLinenumberEnd: 1646
    functionName: gf_mo_event_target_find_by_node
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: s32
    signature: s32 gf_mo_event_target_find_by_node(GF_MediaObject *mo, GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/media_object.c:1652,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/media_object.c:1654,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/media_object.c:1656,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - mo
    - node
    argTypes:
    - GF_MediaObject*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1663
      start: 1648
    functionDepth: 1
    functionLinenumber: 1648
    functionLinenumberEnd: 1663
    functionName: gf_mo_event_target_remove_by_node
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_del_item
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_event_target_remove_by_node(GF_MediaObject *mo, GF_Node
      *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - target
    argTypes:
    - GF_DOMEventTarget*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1672
      start: 1665
    functionDepth: 0
    functionLinenumber: 1665
    functionLinenumberEnd: 1672
    functionName: gf_event_target_get_node
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_event_target_get_node(GF_DOMEventTarget *target)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/media_object.c:1677,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1679
      start: 1674
    functionDepth: 1
    functionLinenumber: 1674
    functionLinenumberEnd: 1679
    functionName: GF_DOMEventTarget *gf_mo_event_target_get(GF_MediaObject *mo, u32
      i)
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_DOMEventTarget *gf_mo_event_target_get(GF_MediaObject
      *mo, u32 i)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/media_object.c:1683,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1684
      start: 1681
    functionDepth: 1
    functionLinenumber: 1681
    functionLinenumberEnd: 1684
    functionName: gf_mo_event_target_reset
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached:
    - gf_list_reset
    linkageType: ''
    returnType: void
    signature: void gf_mo_event_target_reset(GF_MediaObject *mo)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/media_object.c:1689,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1690
      start: 1686
    functionDepth: 1
    functionLinenumber: 1686
    functionLinenumberEnd: 1690
    functionName: gf_mo_event_target_count
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: u32
    signature: u32 gf_mo_event_target_count(GF_MediaObject *mo)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/media_object.c:1694,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/media_object.c:1694,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/media_object.c:1695,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/compositor/media_object.c:1696,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/compositor/media_object.c:1697,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/media_object.c:1698,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1699
      start: 1692
    functionDepth: 2
    functionLinenumber: 1692
    functionLinenumberEnd: 1699
    functionName: gf_mo_del
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 3
    functionsReached:
    - gf_free
    - gf_assert
    - gf_sg_mfurl_del
    - gf_filter_pck_unref
    - gf_list_count
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_mo_del(GF_MediaObject *mo)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/media_object.c:1708,1
    - Dst: gf_sg_get_scene_size_info
      Src: /src/gpac/src/compositor/media_object.c:1721,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - mo
    - vr_info
    argTypes:
    - GF_MediaObject*
    - GF_MediaObjectVRInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1726
      start: 1702
    functionDepth: 1
    functionLinenumber: 1702
    functionLinenumberEnd: 1726
    functionName: gf_mo_get_srd_info
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 1
    functionsReached:
    - memset
    - gf_sg_get_scene_size_info
    linkageType: ''
    returnType: Bool
    signature: Bool gf_mo_get_srd_info(GF_MediaObject *mo, GF_MediaObjectVRInfo *vr_info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/media_object.c:1736,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/media_object.c:1738,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - mo
    - quality_degradation
    argTypes:
    - GF_MediaObject*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1742
      start: 1729
    functionDepth: 1
    functionLinenumber: 1729
    functionLinenumberEnd: 1742
    functionName: gf_mo_hint_quality_degradation
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 1
    functionsReached:
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: void
    signature: void gf_mo_hint_quality_degradation(GF_MediaObject *mo, u32 quality_degradation)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/media_object.c:1752,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/media_object.c:1763,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 5
    argNames:
    - mo
    - min_x
    - max_x
    - min_y
    - max_y
    argTypes:
    - GF_MediaObject*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1765
      start: 1744
    functionDepth: 1
    functionLinenumber: 1744
    functionLinenumberEnd: 1765
    functionName: gf_mo_hint_visible_rect
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached:
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: void
    signature: void gf_mo_hint_visible_rect(GF_MediaObject *mo, u32 min_x, u32 max_x,
      u32 min_y, u32 max_y)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/media_object.c:1775,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/media_object.c:1783,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 3
    argNames:
    - mo
    - gaze_x
    - gaze_y
    argTypes:
    - GF_MediaObject*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1785
      start: 1767
    functionDepth: 1
    functionLinenumber: 1767
    functionLinenumberEnd: 1785
    functionName: gf_mo_hint_gaze
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 1
    functionsReached:
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: void
    signature: void gf_mo_hint_gaze(GF_MediaObject *mo, u32 gaze_x, u32 gaze_y)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_clock_time_absolute
      Src: /src/gpac/src/compositor/scene.c:51,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 1
    argNames:
    - _is
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 42
    functionDepth: 4
    functionLinenumber: 42
    functionLinenumberEnd: 58
    functionName: gf_scene_get_time
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached:
    - gf_clock_time_absolute
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_get_time(void *_is)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_service_media_event
      Src: /src/gpac/src/compositor/scene.c:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - scene
    - type
    argTypes:
    - GF_Scene*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 4
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: inline_on_media_event
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_odm_service_media_event
    linkageType: ''
    returnType: void
    signature: void inline_on_media_event(GF_Scene *scene, u32 type)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/scene.c:75,1
    - Dst: gf_filter_ui_event
      Src: /src/gpac/src/compositor/scene.c:82,1
    - Dst: gf_filter_send_gf_event
      Src: /src/gpac/src/compositor/scene.c:84,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 5
    argNames:
    - scene
    - service
    - message
    - error
    - no_filtering
    argTypes:
    - GF_Scene*
    - char*
    - char*
    - GF_Err
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 86
    functionName: gf_scene_message_ex
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_filter_send_gf_event
    - gf_filter_ui_event
    linkageType: ''
    returnType: void
    signature: void gf_scene_message_ex(GF_Scene *scene, const char *service, const
      char *message, GF_Err error, Bool no_filtering)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_message_ex
      Src: /src/gpac/src/compositor/scene.c:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - scene
    - service
    - message
    - error
    argTypes:
    - GF_Scene*
    - char*
    - char*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: gf_scene_message
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 2
    functionsReached:
    - gf_scene_message_ex
    linkageType: ''
    returnType: void
    signature: void gf_scene_message(GF_Scene *scene, const char *service, const char
      *message, GF_Err error)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/scene.c:97,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/scene.c:97,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:98,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:100,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/compositor/scene.c:105,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/compositor/scene.c:106,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:108,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/compositor/scene.c:112,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/compositor/scene.c:120,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:125,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:127,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 2
    argNames:
    - node
    - the_url
    argTypes:
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 94
    functionDepth: 5
    functionLinenumber: 94
    functionLinenumberEnd: 129
    functionName: gf_scene_resolve_xlink
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_node_get_attribute_by_tag
    - gf_url_concatenate
    - gf_node_get_graph
    - gf_node_get_parent
    - gf_sg_get_private
    linkageType: ''
    returnType: char
    signature: char *gf_scene_resolve_xlink(GF_Node *node, char *the_url)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_get_root_scene
      Src: /src/gpac/src/compositor/scene.c:137,1
    - Dst: gf_scene_message_ex
      Src: /src/gpac/src/compositor/scene.c:140,1
    - Dst: gf_scene_resolve_xlink
      Src: /src/gpac/src/compositor/scene.c:149,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/scene.c:156,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/compositor/scene.c:160,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/compositor/scene.c:164,1
    - Dst: gf_filter_send_gf_event
      Src: /src/gpac/src/compositor/scene.c:171,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/scene.c:175,1
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/scene.c:186,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/scene.c:186,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:189,1
    - Dst: gf_filter_relocate_url
      Src: /src/gpac/src/compositor/scene.c:195,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:197,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/compositor/scene.c:198,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/scene.c:204,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/scene.c:205,1
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/scene.c:206,1
    - Dst: gf_clock_pause
      Src: /src/gpac/src/compositor/scene.c:207,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/scene.c:212,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/scene.c:213,1
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/scene.c:214,1
    - Dst: gf_clock_resume
      Src: /src/gpac/src/compositor/scene.c:215,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/scene.c:220,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/scene.c:221,1
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/scene.c:222,1
    - Dst: gf_clock_resume
      Src: /src/gpac/src/compositor/scene.c:226,1
    - Dst: gf_scene_restart_dynamic
      Src: /src/gpac/src/compositor/scene.c:227,1
    - Dst: gf_clock_pause
      Src: /src/gpac/src/compositor/scene.c:228,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/scene.c:235,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/scene.c:236,1
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/scene.c:237,1
    - Dst: gf_clock_set_speed
      Src: /src/gpac/src/compositor/scene.c:240,1
    - Dst: gf_sc_script_action
      Src: /src/gpac/src/compositor/scene.c:248,1
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/scene.c:252,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/scene.c:252,1
    - Dst: gf_filter_send_gf_event
      Src: /src/gpac/src/compositor/scene.c:258,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 104
    argCount: 4
    argNames:
    - opaque
    - type
    - n
    - param
    argTypes:
    - void*
    - GF_JSAPIActionType
    - GF_Node*
    - GF_JSAPIParam*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 131
    functionDepth: 6
    functionLinenumber: 131
    functionLinenumberEnd: 265
    functionName: gf_scene_script_action
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_opts_set_key
    - gf_clock_pause
    - gf_opts_get_key
    - gf_sc_script_action
    - gf_clock_resume
    - gf_scene_restart_dynamic
    - gf_scene_get_root_scene
    - gf_strdup
    - gf_scene_message_ex
    - gf_sg_get_root_node
    - gf_node_get_private
    - gf_filter_send_gf_event
    - gf_node_get_graph
    - gf_filter_relocate_url
    - gf_sg_get_private
    - gf_filter_get_download_manager
    - gf_url_concatenate
    - gf_scene_resolve_xlink
    - gf_clock_set_speed
    linkageType: ''
    returnType: Bool
    signature: Bool gf_scene_script_action(void *opaque, GF_JSAPIActionType type,
      GF_Node *n, GF_JSAPIParam *param)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - scene
    argTypes:
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 273
    functionName: gf_scene_is_root
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_scene_is_root(GF_Scene *scene)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 1
    argNames:
    - scene
    argTypes:
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 280
    functionName: gf_scene_get_root_scene
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: GF_Scene
    signature: GF_Scene *gf_scene_get_root_scene(GF_Scene *scene)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/scene.c:290,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/scene.c:293,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/scene.c:294,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/scene.c:295,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/scene.c:296,1
    - Dst: gf_sg_new_subscene
      Src: /src/gpac/src/compositor/scene.c:299,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/scene.c:300,1
    - Dst: gf_sg_new
      Src: /src/gpac/src/compositor/scene.c:303,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/scene.c:306,1
    - Dst: gf_sg_set_private
      Src: /src/gpac/src/compositor/scene.c:309,1
    - Dst: gf_sg_set_node_callback
      Src: /src/gpac/src/compositor/scene.c:310,1
    - Dst: gf_sg_set_scene_time_callback
      Src: /src/gpac/src/compositor/scene.c:311,1
    - Dst: gf_sg_set_script_action
      Src: /src/gpac/src/compositor/scene.c:313,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/scene.c:320,1
    - Dst: gf_sg_set_proto_loader
      Src: /src/gpac/src/compositor/scene.c:321,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/scene.c:323,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/scene.c:324,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/scene.c:325,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 33
    argCount: 2
    argNames:
    - compositor
    - parentScene
    argTypes:
    - GF_Compositor*
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 284
    functionDepth: 1
    functionLinenumber: 284
    functionLinenumberEnd: 330
    functionName: gf_scene_new
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 2
    functionsReached:
    - gf_sg_new
    - gf_list_new
    - gf_assert
    - GF_SAFEALLOC
    - gf_sg_set_proto_loader
    - gf_sg_new_subscene
    - gf_sg_set_scene_time_callback
    - gf_sg_set_private
    - gf_sg_set_script_action
    - gf_sg_set_node_callback
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_scene_new(GF_Compositor *compositor, GF_Scene *parentScene)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SFURL_RESET
      Src: /src/gpac/src/compositor/scene.c:337,1
    - Dst: SFURL_RESET
      Src: /src/gpac/src/compositor/scene.c:338,1
    - Dst: SFURL_RESET
      Src: /src/gpac/src/compositor/scene.c:339,1
    - Dst: SFURL_RESET
      Src: /src/gpac/src/compositor/scene.c:340,1
    - Dst: SFURL_RESET
      Src: /src/gpac/src/compositor/scene.c:341,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - scene
    argTypes:
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 332
    functionDepth: 1
    functionLinenumber: 332
    functionLinenumberEnd: 342
    functionName: gf_scene_reset_urls
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - SFURL_RESET
    linkageType: ''
    returnType: void
    signature: void gf_scene_reset_urls(GF_Scene *scene)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __url
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 336
    functionName: SFURL_RESET
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SFURL_RESET(__url)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/scene.c:347,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/scene.c:348,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene.c:348,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/scene.c:349,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene.c:352,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/scene.c:353,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/scene.c:354,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:355,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/scene.c:357,1
    - Dst: gf_sc_node_destroy
      Src: /src/gpac/src/compositor/scene.c:360,1
    - Dst: gf_sg_del
      Src: /src/gpac/src/compositor/scene.c:363,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene.c:368,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/scene.c:369,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/scene.c:371,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/scene.c:372,1
    - Dst: gf_mo_del
      Src: /src/gpac/src/compositor/scene.c:373,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/scene.c:375,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/scene.c:377,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/scene.c:378,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/scene.c:381,1
    - Dst: gf_scene_reset_urls
      Src: /src/gpac/src/compositor/scene.c:383,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:385,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:386,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene.c:389,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/compositor/scene.c:390,1
    - Dst: gf_scene_ns_del
      Src: /src/gpac/src/compositor/scene.c:391,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/scene.c:393,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene.c:397,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/compositor/scene.c:398,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/scene.c:399,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/scene.c:401,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:407,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 40
    argCount: 1
    argNames:
    - scene
    argTypes:
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 344
    functionDepth: 3
    functionLinenumber: 344
    functionLinenumberEnd: 408
    functionName: gf_scene_del
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_scene_ns_del
    - gf_assert
    - gf_list_get
    - gf_list_pop_back
    - gf_mo_del
    - gf_node_set_private
    - gf_list_count
    - gf_sc_node_destroy
    - gf_scene_reset_urls
    - gf_sg_del
    - gf_list_del
    - gf_sg_vrml_mf_reset
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_del(GF_Scene *scene)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:415,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 410
    functionDepth: 1
    functionLinenumber: 410
    functionLinenumberEnd: 419
    functionName: GF_ObjectManager *gf_scene_find_odm(GF_Scene *scene, u16 OD_ID)
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ObjectManager *gf_scene_find_odm(GF_Scene *scene, u16
      OD_ID)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene.c:428,1
    - Dst: gf_mo_event_target_count
      Src: /src/gpac/src/compositor/scene.c:434,1
    - Dst: gf_mo_event_target_remove_by_index
      Src: /src/gpac/src/compositor/scene.c:435,1
    - Dst: gf_event_target_get_node
      Src: /src/gpac/src/compositor/scene.c:437,1
    - Dst: gf_mo_event_target_get
      Src: /src/gpac/src/compositor/scene.c:437,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/scene.c:439,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/scene.c:444,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:456,1
    - Dst: gf_mo_event_target_count
      Src: /src/gpac/src/compositor/scene.c:460,1
    - Dst: gf_event_target_get_node
      Src: /src/gpac/src/compositor/scene.c:461,1
    - Dst: gf_mo_event_target_get
      Src: /src/gpac/src/compositor/scene.c:461,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/scene.c:463,1
    - Dst: InputSensorModified
      Src: /src/gpac/src/compositor/scene.c:468,1
    - Dst: gf_mo_event_target_remove_by_index
      Src: /src/gpac/src/compositor/scene.c:473,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:482,1
    - Dst: gf_mo_event_target_reset
      Src: /src/gpac/src/compositor/scene.c:483,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene.c:487,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/scene.c:488,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/scene.c:489,1
    - Dst: gf_storage_save
      Src: /src/gpac/src/compositor/scene.c:490,1
    - Dst: gf_sc_set_scene
      Src: /src/gpac/src/compositor/scene.c:495,1
    - Dst: gf_scene_reset_addons
      Src: /src/gpac/src/compositor/scene.c:498,1
    - Dst: gf_sc_node_destroy
      Src: /src/gpac/src/compositor/scene.c:502,1
    - Dst: gf_sg_reset
      Src: /src/gpac/src/compositor/scene.c:503,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:511,1
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/compositor/scene.c:512,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:518,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/scene.c:519,1
    - Dst: gf_mo_event_target_reset
      Src: /src/gpac/src/compositor/scene.c:520,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene.c:525,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/scene.c:526,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/scene.c:528,1
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/compositor/scene.c:530,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene.c:534,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/scene.c:535,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/scene.c:536,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:537,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene.c:543,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/scene.c:544,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/scene.c:545,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/scene.c:547,1
    - Dst: gf_mo_del
      Src: /src/gpac/src/compositor/scene.c:548,1
    - Dst: gf_scene_reset_urls
      Src: /src/gpac/src/compositor/scene.c:552,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 88
    argCount: 2
    argNames:
    - scene
    - for_shutdown
    argTypes:
    - GF_Scene*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 421
    functionDepth: 5
    functionLinenumber: 421
    functionLinenumberEnd: 555
    functionName: gf_scene_disconnect
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 3
    functionsReached:
    - gf_node_get_tag
    - gf_free
    - gf_storage_save
    - gf_list_count
    - gf_sc_node_destroy
    - gf_event_target_get_node
    - gf_scene_reset_addons
    - gf_list_get
    - gf_mo_event_target_reset
    - gf_sg_vrml_mf_reset
    - gf_mo_del
    - GF_LOG
    - gf_node_set_private
    - gf_mo_event_target_remove_by_index
    - gf_mo_event_target_get
    - gf_list_enum
    - gf_odm_disconnect
    - InputSensorModified
    - gf_sg_reset
    - gf_scene_reset_urls
    - gf_sc_set_scene
    - gf_list_rem
    - gf_mo_event_target_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_disconnect(GF_Scene *scene, Bool for_shutdown)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_new
      Src: /src/gpac/src/compositor/scene.c:563,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/scene.c:575,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/scene.c:577,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/scene.c:579,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene.c:589,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/scene.c:590,1
    - Dst: gf_odm_setup_remote_object
      Src: /src/gpac/src/compositor/scene.c:592,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 7
    argNames:
    - scene
    - mo
    - lock_timelines
    - sync_ref
    - keep_fragment
    - original_parent_scene
    - for_addon
    argTypes:
    - GF_Scene*
    - GF_MediaObject*
    - Bool
    - GF_MediaObject*
    - Bool
    - GF_Scene*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 593
      start: 557
    functionDepth: 2
    functionLinenumber: 557
    functionLinenumberEnd: 593
    functionName: gf_scene_insert_object
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_odm_setup_remote_object
    - gf_odm_new
    - GF_LOG
    - gf_list_add
    - stricmp
    linkageType: ''
    returnType: void
    signature: void gf_scene_insert_object(GF_Scene *scene, GF_MediaObject *mo, Bool
      lock_timelines, GF_MediaObject *sync_ref, Bool keep_fragment, GF_Scene *original_parent_scene,
      Bool for_addon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:598,1
    - Dst: gf_scene_insert_object
      Src: /src/gpac/src/compositor/scene.c:604,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - scene
    - mo
    argTypes:
    - GF_Scene*
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 595
    functionDepth: 3
    functionLinenumber: 595
    functionLinenumberEnd: 605
    functionName: gf_scene_reinsert_object
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_scene_insert_object
    linkageType: ''
    returnType: void
    signature: void gf_scene_reinsert_object(GF_Scene *scene, GF_MediaObject *mo)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/scene.c:613,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene.c:615,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:619,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/scene.c:626,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/compositor/scene.c:635,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:649,1
    - Dst: gf_scene_reinsert_object
      Src: /src/gpac/src/compositor/scene.c:661,1
    - Dst: gf_mo_event_target_count
      Src: /src/gpac/src/compositor/scene.c:672,1
    - Dst: gf_mo_event_target_remove_by_index
      Src: /src/gpac/src/compositor/scene.c:673,1
    - Dst: gf_event_target_get_node
      Src: /src/gpac/src/compositor/scene.c:675,1
    - Dst: gf_mo_event_target_get
      Src: /src/gpac/src/compositor/scene.c:675,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/scene.c:677,1
    - Dst: gf_mo_stop
      Src: /src/gpac/src/compositor/scene.c:682,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/scene.c:683,1
    - Dst: gf_sc_mo_destroyed
      Src: /src/gpac/src/compositor/scene.c:686,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/scene.c:695,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/scene.c:697,1
    - Dst: gf_mo_del
      Src: /src/gpac/src/compositor/scene.c:698,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 63
    argCount: 3
    argNames:
    - scene
    - odm
    - for_shutdown
    argTypes:
    - GF_Scene*
    - GF_ObjectManager*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 703
      start: 608
    functionDepth: 6
    functionLinenumber: 608
    functionLinenumberEnd: 703
    functionName: gf_scene_remove_object
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 2
    functionsReached:
    - gf_node_get_tag
    - gf_sc_mo_destroyed
    - gf_mo_del
    - gf_mo_stop
    - GF_LOG
    - gf_scene_reinsert_object
    - gf_node_set_private
    - gf_filter_pck_unref
    - gf_mo_event_target_remove_by_index
    - gf_sg_vrml_mf_reset
    - gf_mo_event_target_get
    - gf_event_target_get_node
    - gf_list_del_item
    - stricmp
    - gf_list_enum
    - gf_list_rem
    - gf_mo_event_target_count
    linkageType: ''
    returnType: void
    signature: void gf_scene_remove_object(GF_Scene *scene, GF_ObjectManager *odm,
      u32 for_shutdown)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/compositor/scene.c:728,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:734,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/compositor/scene.c:736,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:747,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/compositor/scene.c:755,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:761,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/compositor/scene.c:763,1
    - Dst: gf_odm_service_media_event_with_download
      Src: /src/gpac/src/compositor/scene.c:779,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/scene.c:793,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 74
    argCount: 2
    argNames:
    - scene
    - rebuffer_done
    argTypes:
    - GF_Scene*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 794
      start: 707
    functionDepth: 3
    functionLinenumber: 707
    functionLinenumberEnd: 794
    functionName: gf_scene_buffering_info
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 2
    functionsReached:
    - gf_odm_service_media_event_with_download
    - gf_list_enum
    - gf_sc_send_event
    - gf_filter_pid_query_buffer_duration
    linkageType: ''
    returnType: void
    signature: void gf_scene_buffering_info(GF_Scene *scene, Bool rebuffer_done)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/scene.c:809,1
    - Dst: memset
      Src: /src/gpac/src/compositor/scene.c:812,1
    - Dst: gf_sg_get_scene_size_info
      Src: /src/gpac/src/compositor/scene.c:815,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:817,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:818,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/scene.c:822,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/scene.c:840,1
    - Dst: gf_sc_queue_dom_event
      Src: /src/gpac/src/compositor/scene.c:842,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/scene.c:847,1
    - Dst: gf_sc_queue_dom_event
      Src: /src/gpac/src/compositor/scene.c:849,1
    - Dst: gf_mo_event_target_count
      Src: /src/gpac/src/compositor/scene.c:853,1
    - Dst: gf_event_target_get_node
      Src: /src/gpac/src/compositor/scene.c:855,1
    - Dst: gf_mo_event_target_get
      Src: /src/gpac/src/compositor/scene.c:855,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/scene.c:857,1
    - Dst: gf_sc_queue_dom_event
      Src: /src/gpac/src/compositor/scene.c:859,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 50
    argCount: 6
    argNames:
    - scene
    - event_type
    - n
    - _event
    - code
    - no_queuing
    argTypes:
    - GF_Scene*
    - u32
    - GF_Node*
    - void*
    - GF_Err
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 864
      start: 798
    functionDepth: 9
    functionLinenumber: 798
    functionLinenumberEnd: 864
    functionName: gf_scene_notify_event
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 5
    functionsReached:
    - gf_node_get_tag
    - gf_sc_queue_dom_event
    - INT2FIX
    - gf_dom_event_fire
    - memset
    - gf_mo_event_target_get
    - gf_event_target_get_node
    - gf_sg_get_scene_size_info
    - gf_sg_get_root_node
    - gf_mo_event_target_count
    linkageType: ''
    returnType: void
    signature: void gf_scene_notify_event(GF_Scene *scene, u32 event_type, GF_Node
      *n, void *_event, GF_Err code, Bool no_queuing)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/scene.c:874,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/scene.c:875,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:883,1
    - Dst: strchr
      Src: /src/gpac/src/compositor/scene.c:886,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:887,1
    - Dst: gf_sg_get_scene_size_info
      Src: /src/gpac/src/compositor/scene.c:893,1
    - Dst: gf_sc_set_scene
      Src: /src/gpac/src/compositor/scene.c:897,1
    - Dst: gf_mo_event_target_count
      Src: /src/gpac/src/compositor/scene.c:901,1
    - Dst: gf_node_dirty_parents
      Src: /src/gpac/src/compositor/scene.c:903,1
    - Dst: gf_event_target_get_node
      Src: /src/gpac/src/compositor/scene.c:903,1
    - Dst: gf_mo_event_target_get
      Src: /src/gpac/src/compositor/scene.c:903,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/scene.c:905,1
    - Dst: gf_sg_get_scene_size_info
      Src: /src/gpac/src/compositor/scene.c:909,1
    - Dst: gf_sc_set_size
      Src: /src/gpac/src/compositor/scene.c:910,1
    - Dst: gf_scene_notify_event
      Src: /src/gpac/src/compositor/scene.c:913,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 1
    argNames:
    - scene
    argTypes:
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 915
      start: 867
    functionDepth: 10
    functionLinenumber: 867
    functionLinenumberEnd: 915
    functionName: gf_scene_attach_to_compositor
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_scene_notify_event
    - gf_sc_set_size
    - gf_mo_event_target_get
    - gf_event_target_get_node
    - gf_sc_invalidate
    - gf_node_dirty_parents
    - gf_sg_get_scene_size_info
    - gf_sg_get_root_node
    - strchr
    - gf_sc_set_scene
    - gf_mo_event_target_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_attach_to_compositor(GF_Scene *scene)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:921,1
    - Dst: gf_mo_is_same_url
      Src: /src/gpac/src/compositor/scene.c:923,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 10
    argCount: 3
    argNames:
    - scene
    - urls
    - type
    argTypes:
    - GF_Scene*
    - MFURL*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 927
      start: 917
    functionDepth: 3
    functionLinenumber: 917
    functionLinenumberEnd: 927
    functionName: IS_CheckExistingObject
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_mo_is_same_url
    linkageType: ''
    returnType: GF_MediaObject
    signature: GF_MediaObject *IS_CheckExistingObject(GF_Scene *scene, MFURL *urls,
      u32 type)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - type
    - hint_type
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 936
      start: 929
    functionDepth: 0
    functionLinenumber: 929
    functionLinenumberEnd: 936
    functionName: is_match_obj_type
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE is_match_obj_type(u32 type, u32 hint_type)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_get_od_id
      Src: /src/gpac/src/compositor/scene.c:947,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:959,1
    - Dst: is_match_obj_type
      Src: /src/gpac/src/compositor/scene.c:971,1
    - Dst: gf_mo_is_same_url
      Src: /src/gpac/src/compositor/scene.c:973,1
    - Dst: gf_mo_event_target_find_by_node
      Src: /src/gpac/src/compositor/scene.c:999,1
    - Dst: gf_mo_event_target_add_node
      Src: /src/gpac/src/compositor/scene.c:1000,1
    - Dst: gf_mo_event_target_find_by_node
      Src: /src/gpac/src/compositor/scene.c:1004,1
    - Dst: gf_mo_new
      Src: /src/gpac/src/compositor/scene.c:1019,1
    - Dst: gf_mo_event_target_add_node
      Src: /src/gpac/src/compositor/scene.c:1025,1
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/scene.c:1027,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/scene.c:1027,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/scene.c:1036,1
    - Dst: gf_sg_vrml_copy_mfurl
      Src: /src/gpac/src/compositor/scene.c:1038,1
    - Dst: gf_scene_insert_object
      Src: /src/gpac/src/compositor/scene.c:1039,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/scene.c:1041,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/scene.c:1046,1
    - Dst: gf_mo_event_target_reset
      Src: /src/gpac/src/compositor/scene.c:1047,1
    - Dst: gf_mo_del
      Src: /src/gpac/src/compositor/scene.c:1048,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene.c:1053,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/scene.c:1054,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 74
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1062
      start: 938
    functionDepth: 3
    functionLinenumber: 938
    functionLinenumberEnd: 1062
    functionName: GF_MediaObject *gf_scene_get_media_object_ex(GF_Scene *scene, MFURL
      *url, u32 obj_type_hint, Bool lock_timelines, GF_MediaObject *sync_ref, Bool
      force_new_if_not_attached, GF_Node *node, GF_Scene *parent_scene_addon)
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_mo_event_target_add_node
    - gf_sg_vrml_copy_mfurl
    - gf_list_get
    - gf_scene_insert_object
    - gf_mo_del
    - gf_mo_event_target_reset
    - gf_mo_get_od_id
    - gf_mo_event_target_find_by_node
    - gf_list_find
    - gf_list_count
    - gf_mo_is_same_url
    - is_match_obj_type
    - gf_node_get_graph
    - gf_list_add
    - gf_list_del_item
    - gf_list_enum
    - gf_sg_get_private
    - gf_mo_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_MediaObject *gf_scene_get_media_object_ex(GF_Scene *scene,
      MFURL *url, u32 obj_type_hint, Bool lock_timelines, GF_MediaObject *sync_ref,
      Bool force_new_if_not_attached, GF_Node *node, GF_Scene *parent_scene_addon)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_get_media_object_ex
      Src: /src/gpac/src/compositor/scene.c:1066,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - scene
    - url
    - obj_type_hint
    - lock_timelines
    argTypes:
    - GF_Scene*
    - MFURL*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1067
      start: 1064
    functionDepth: 0
    functionLinenumber: 1064
    functionLinenumberEnd: 1067
    functionName: gf_scene_get_media_object
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 2
    functionsReached:
    - gf_scene_get_media_object_ex
    linkageType: ''
    returnType: GF_MediaObject
    signature: GF_MediaObject *gf_scene_get_media_object(GF_Scene *scene, MFURL *url,
      u32 obj_type_hint, Bool lock_timelines)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_get_visual_info_ex
      Src: /src/gpac/src/compositor/scene.c:1073,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 22
    argCount: 3
    argNames:
    - mo
    - w
    - h
    argTypes:
    - GF_MediaObject*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1096
      start: 1070
    functionDepth: 2
    functionLinenumber: 1070
    functionLinenumberEnd: 1096
    functionName: gf_scene_get_video_size
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_mo_get_visual_info_ex
    linkageType: ''
    returnType: void
    signature: void gf_scene_get_video_size(GF_MediaObject *mo, u32 *w, u32 *h)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene.c:1105,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:1111,1
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/compositor/scene.c:1133,1
    - Dst: gf_mo_new
      Src: /src/gpac/src/compositor/scene.c:1140,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/scene.c:1141,1
    - Dst: gf_mo_update_caps
      Src: /src/gpac/src/compositor/scene.c:1154,1
    - Dst: gf_odm_start
      Src: /src/gpac/src/compositor/scene.c:1157,1
    - Dst: gf_odm_set_speed
      Src: /src/gpac/src/compositor/scene.c:1158,1
    - Dst: gf_scene_force_size_to_video
      Src: /src/gpac/src/compositor/scene.c:1161,1
    - Dst: gf_scene_get_video_size
      Src: /src/gpac/src/compositor/scene.c:1165,1
    - Dst: gf_sc_set_size
      Src: /src/gpac/src/compositor/scene.c:1166,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/scene.c:1169,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 63
    argCount: 2
    argNames:
    - scene
    - odm
    argTypes:
    - GF_Scene*
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1170
      start: 1099
    functionDepth: 7
    functionLinenumber: 1099
    functionLinenumberEnd: 1170
    functionName: gf_scene_setup_object
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached:
    - gf_odm_set_speed
    - GF_LOG
    - gf_sc_set_size
    - gf_odm_disconnect
    - gf_list_add
    - gf_mo_update_caps
    - gf_scene_force_size_to_video
    - gf_sc_invalidate
    - gf_odm_start
    - gf_list_enum
    - gf_scene_get_video_size
    - gf_mo_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_setup_object(GF_Scene *scene, GF_ObjectManager *odm)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/scene.c:1186,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:1189,1
    - Dst: gf_odm_shares_clock
      Src: /src/gpac/src/compositor/scene.c:1190,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:1204,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/scene.c:1207,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/scene.c:1218,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 1
    argNames:
    - scene
    argTypes:
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1220
      start: 1172
    functionDepth: 5
    functionLinenumber: 1172
    functionLinenumberEnd: 1220
    functionName: gf_scene_set_duration
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached:
    - gf_node_event_out
    - gf_sc_send_event
    - gf_odm_shares_clock
    - gf_odm_get_media_clock
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_set_duration(GF_Scene *scene)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/scene.c:1230,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:1233,1
    - Dst: gf_odm_shares_clock
      Src: /src/gpac/src/compositor/scene.c:1234,1
    - Dst: gf_scene_notify_event
      Src: /src/gpac/src/compositor/scene.c:1246,1
    - Dst: gf_scene_notify_event
      Src: /src/gpac/src/compositor/scene.c:1249,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - scene
    argTypes:
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1251
      start: 1222
    functionDepth: 10
    functionLinenumber: 1222
    functionLinenumberEnd: 1251
    functionName: gf_scene_set_timeshift_depth
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    - gf_scene_notify_event
    - gf_odm_shares_clock
    - gf_odm_get_media_clock
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_set_timeshift_depth(GF_Scene *scene)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:1260,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/scene.c:1262,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 14
    argCount: 3
    argNames:
    - scene
    - ODID
    - url
    argTypes:
    - GF_Scene*
    - u16
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1268
      start: 1254
    functionDepth: 1
    functionLinenumber: 1254
    functionLinenumberEnd: 1268
    functionName: gf_scene_find_object
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - stricmp
    linkageType: ''
    returnType: GF_MediaObject
    signature: GF_MediaObject *gf_scene_find_object(GF_Scene *scene, u16 ODID, char
      *url)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/scene.c:1275,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/scene.c:1276,1
    - Dst: gf_sc_register_extra_graph
      Src: /src/gpac/src/compositor/scene.c:1279,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/scene.c:1282,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/scene.c:1283,1
    - Dst: gf_sc_register_extra_graph
      Src: /src/gpac/src/compositor/scene.c:1286,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - scene
    - extra_scene
    - do_remove
    argTypes:
    - GF_Scene*
    - GF_SceneGraph*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1289
      start: 1271
    functionDepth: 1
    functionLinenumber: 1271
    functionLinenumberEnd: 1289
    functionName: gf_scene_register_extra_graph
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_sc_register_extra_graph
    - gf_list_find
    - gf_list_add
    - gf_list_del_item
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_register_extra_graph(GF_Scene *scene, GF_SceneGraph
      *extra_scene, Bool do_remove)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene.c:1297,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/scene.c:1298,1
    - Dst: gf_scene_get_video_size
      Src: /src/gpac/src/compositor/scene.c:1302,1
    - Dst: gf_scene_force_size
      Src: /src/gpac/src/compositor/scene.c:1303,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:1312,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/scene.c:1316,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:1318,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:1318,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/scene.c:1320,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:1321,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/scene.c:1326,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:1328,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/scene.c:1330,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:1331,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/scene.c:1334,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 38
    argCount: 2
    argNames:
    - scene
    - mo
    argTypes:
    - GF_Scene*
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1336
      start: 1291
    functionDepth: 11
    functionLinenumber: 1291
    functionLinenumberEnd: 1336
    functionName: gf_scene_force_size_to_video
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached:
    - INT2FIX
    - gf_filter_pid_get_property
    - gf_sg_find_node_by_name
    - gf_list_count
    - gf_scene_force_size
    - gf_node_changed
    - gf_scene_get_video_size
    linkageType: ''
    returnType: void
    signature: void gf_scene_force_size_to_video(GF_Scene *scene, GF_MediaObject *mo)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: IS_CheckExistingObject
      Src: /src/gpac/src/compositor/scene.c:1352,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:1354,1
    - Dst: gf_sg_get_scene_size_info
      Src: /src/gpac/src/compositor/scene.c:1357,1
    - Dst: gf_scene_get_video_size
      Src: /src/gpac/src/compositor/scene.c:1360,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/scene.c:1363,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:1363,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:1363,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/scene.c:1364,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:1364,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:1364,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:1369,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:1370,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/scene.c:1372,1
    - Dst: gf_scene_set_addon_layout_info
      Src: /src/gpac/src/compositor/scene.c:1374,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 1
    argNames:
    - scene
    argTypes:
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1376
      start: 1340
    functionDepth: 4
    functionLinenumber: 1340
    functionLinenumberEnd: 1376
    functionName: IS_UpdateVideoPos
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - IS_CheckExistingObject
    - INT2FIX
    - gf_scene_set_addon_layout_info
    - gf_sg_find_node_by_name
    - gf_node_dirty_set
    - gf_divfix
    - gf_sg_get_scene_size_info
    - gf_scene_get_video_size
    linkageType: ''
    returnType: void
    signature: void IS_UpdateVideoPos(GF_Scene *scene)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/compositor/scene.c:1380,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/compositor/scene.c:1382,1
    - Dst: gf_sg_get_next_available_node_id
      Src: /src/gpac/src/compositor/scene.c:1382,1
    - Dst: gf_node_init
      Src: /src/gpac/src/compositor/scene.c:1383,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - sg
    - tag
    - def_name
    argTypes:
    - GF_SceneGraph*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1386
      start: 1378
    functionDepth: 9
    functionLinenumber: 1378
    functionLinenumberEnd: 1386
    functionName: is_create_node
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_node_init
    - gf_node_set_id
    - gf_sg_get_next_available_node_id
    - gf_node_new
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *is_create_node(GF_SceneGraph *sg, u32 tag, const char *def_name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/compositor/scene.c:1394,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 8
    argCount: 2
    argNames:
    - url
    - odm
    argTypes:
    - SFURL*
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1395
      start: 1388
    functionDepth: 0
    functionLinenumber: 1388
    functionLinenumberEnd: 1395
    functionName: is_odm_url
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - stricmp
    linkageType: ''
    returnType: Bool
    signature: Bool is_odm_url(SFURL *url, GF_ObjectManager *odm)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene.c:1407,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/scene.c:1409,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/scene.c:1416,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/scene.c:1431,1
    - Dst: gf_odm_stop
      Src: /src/gpac/src/compositor/scene.c:1442,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:1450,1
    - Dst: gf_scene_get_video_size
      Src: /src/gpac/src/compositor/scene.c:1458,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/compositor/scene.c:1461,1
    - Dst: gf_scene_force_size
      Src: /src/gpac/src/compositor/scene.c:1462,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:1471,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/scene.c:1481,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/scene.c:1488,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/compositor/scene.c:1489,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:1491,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/scene.c:1493,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 85
    argCount: 5
    argNames:
    - scene
    - media_url
    - node
    - node_url
    - type
    argTypes:
    - GF_Scene*
    - SFURL*
    - GF_Node*
    - MFURL*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1496
      start: 1397
    functionDepth: 11
    functionLinenumber: 1397
    functionLinenumberEnd: 1496
    functionName: set_media_url
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_sg_set_scene_size_info
    - gf_free
    - gf_list_get
    - gf_strdup
    - gf_filter_pid_get_property
    - gf_sg_vrml_mf_append
    - gf_list_count
    - gf_scene_get_video_size
    - strcmp
    - gf_scene_force_size
    - gf_sg_vrml_mf_reset
    - gf_node_changed
    - gf_odm_stop
    linkageType: ''
    returnType: void
    signature: void set_media_url(GF_Scene *scene, SFURL *media_url, GF_Node *node,  MFURL
      *node_url, u32 type)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:1504,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene.c:1508,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/scene.c:1511,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/compositor/scene.c:1514,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/scene.c:1518,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/scene.c:1521,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/scene.c:1522,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/scene.c:1524,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 2
    argNames:
    - param
    - field
    argTypes:
    - void*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1531
      start: 1498
    functionDepth: 1
    functionLinenumber: 1498
    functionLinenumberEnd: 1531
    functionName: scene_video_mouse_move
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_get_property_str
    - gf_sg_find_node_by_name
    - GF_FEVT_INIT
    - gf_list_count
    - FIX2INT
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: void
    signature: void scene_video_mouse_move(void *param, GF_FieldInfo *field)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/compositor/scene.c:1539,1
    - Dst: gf_sg_proto_new
      Src: /src/gpac/src/compositor/scene.c:1542,1
    - Dst: gf_sg_proto_get_extern_url
      Src: /src/gpac/src/compositor/scene.c:1543,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/scene.c:1545,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene.c:1547,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:1551,1
    - Dst: gf_sg_proto_create_instance
      Src: /src/gpac/src/compositor/scene.c:1553,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/compositor/scene.c:1555,1
    - Dst: gf_sg_get_next_available_node_id
      Src: /src/gpac/src/compositor/scene.c:1555,1
    - Dst: gf_node_init
      Src: /src/gpac/src/compositor/scene.c:1556,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 3
    argNames:
    - sg
    - name
    - def_name
    argTypes:
    - GF_SceneGraph*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1559
      start: 1533
    functionDepth: 9
    functionLinenumber: 1533
    functionLinenumberEnd: 1559
    functionName: load_vr_proto_node
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_node_init
    - gf_strdup
    - gf_sg_proto_create_instance
    - GF_LOG
    - gf_node_set_id
    - gf_sg_get_next_available_node_id
    - gf_sg_find_proto
    - gf_sg_proto_get_extern_url
    - gf_malloc
    - gf_sg_proto_new
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *load_vr_proto_node(GF_SceneGraph *sg, const char *name, const
      char *def_name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1570,1
    - Dst: transform2d_set_untransform
      Src: /src/gpac/src/compositor/scene.c:1571,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:1572,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1573,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1576,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:1577,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1578,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1580,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:1581,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1582,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1584,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1586,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1589,1
    - Dst: gf_scene_get_time
      Src: /src/gpac/src/compositor/scene.c:1590,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1592,1
    - Dst: load_vr_proto_node
      Src: /src/gpac/src/compositor/scene.c:1598,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1600,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1604,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1606,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1609,1
    - Dst: load_vr_proto_node
      Src: /src/gpac/src/compositor/scene.c:1612,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1614,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1617,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1619,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1621,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 49
    argCount: 6
    argNames:
    - scene
    - root
    - tr_name
    - texture_name
    - name_geo
    - is_untransform
    argTypes:
    - GF_Scene*
    - GF_Node*
    - char*
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1623
      start: 1563
    functionDepth: 10
    functionLinenumber: 1563
    functionLinenumberEnd: 1623
    functionName: create_movie
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached:
    - transform2d_set_untransform
    - is_create_node
    - load_vr_proto_node
    - gf_node_register
    - gf_node_list_add_child
    - gf_scene_get_time
    linkageType: ''
    returnType: void
    signature: void create_movie(GF_Scene *scene, GF_Node *root, const char *tr_name,
      const char *texture_name, const char *name_geo, Bool is_untransform)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene.c:1638,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:1640,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1647,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/src/compositor/scene.c:1648,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1649,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1653,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:1654,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1655,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1660,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:1669,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1670,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1672,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:1673,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:1674,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:1675,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:1676,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:1680,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1681,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1685,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:1686,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1687,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1689,1
    - Dst: gf_scene_get_time
      Src: /src/gpac/src/compositor/scene.c:1690,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1692,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1696,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:1697,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1698,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1702,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:1703,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1704,1
    - Dst: gf_sg_route_new_to_callback
      Src: /src/gpac/src/compositor/scene.c:1705,1
    - Dst: create_movie
      Src: /src/gpac/src/compositor/scene.c:1707,1
    - Dst: create_movie
      Src: /src/gpac/src/compositor/scene.c:1708,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/scene.c:1716,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1717,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:1718,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1719,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/scene.c:1723,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1724,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:1725,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1726,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/scene.c:1729,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1730,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:1731,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1732,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/scene.c:1735,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1736,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:1737,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1738,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1740,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:1741,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1742,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1744,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:1745,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1746,1
    - Dst: load_vr_proto_node
      Src: /src/gpac/src/compositor/scene.c:1751,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:1752,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1753,1
    - Dst: memset
      Src: /src/gpac/src/compositor/scene.c:1757,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/scene.c:1761,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/scene.c:1772,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene.c:1776,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/scene.c:1778,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/scene.c:1781,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:1782,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1785,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:1786,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1787,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:1789,1
    - Dst: gf_scene_get_time
      Src: /src/gpac/src/compositor/scene.c:1790,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:1792,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:1794,1
    - Dst: set_media_url
      Src: /src/gpac/src/compositor/scene.c:1797,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:1800,1
    - Dst: set_media_url
      Src: /src/gpac/src/compositor/scene.c:1801,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:1818,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:1840,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/scene.c:1842,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/scene.c:1843,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/scene.c:1844,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:1845,1
    - Dst: create_movie
      Src: /src/gpac/src/compositor/scene.c:1847,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/scene.c:1850,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/scene.c:1851,1
    - Dst: gf_sg_get_scene_size_info
      Src: /src/gpac/src/compositor/scene.c:1859,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:1861,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/scene.c:1865,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/scene.c:1866,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/scene.c:1867,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:1870,1
    - Dst: set_media_url
      Src: /src/gpac/src/compositor/scene.c:1873,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:1880,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/scene.c:1881,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:1885,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:1886,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:1888,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/scene.c:1891,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:1893,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:1894,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:1894,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:1896,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:1897,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:1897,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:1899,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/scene.c:1902,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:1907,1
    - Dst: set_media_url
      Src: /src/gpac/src/compositor/scene.c:1908,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:1910,1
    - Dst: set_media_url
      Src: /src/gpac/src/compositor/scene.c:1911,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:1916,1
    - Dst: set_media_url
      Src: /src/gpac/src/compositor/scene.c:1917,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:1919,1
    - Dst: set_media_url
      Src: /src/gpac/src/compositor/scene.c:1920,1
    - Dst: gf_sc_set_scene
      Src: /src/gpac/src/compositor/scene.c:1925,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/scene.c:1929,1
    - Dst: IS_UpdateVideoPos
      Src: /src/gpac/src/compositor/scene.c:1931,1
    - Dst: gf_scene_notify_event
      Src: /src/gpac/src/compositor/scene.c:1933,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/scene.c:1935,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 211
    argCount: 1
    argNames:
    - scene
    argTypes:
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1937
      start: 1628
    functionDepth: 12
    functionLinenumber: 1628
    functionLinenumberEnd: 1937
    functionName: gf_scene_regenerate
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached:
    - gf_free
    - set_media_url
    - gf_list_count
    - memset
    - gf_scene_get_time
    - gf_strdup
    - gf_list_get
    - gf_assert
    - gf_sc_send_event
    - gf_sg_find_node_by_name
    - gf_scene_notify_event
    - sprintf
    - IS_UpdateVideoPos
    - gf_sc_invalidate
    - gf_sg_get_root_node
    - gf_node_list_add_child
    - gf_sg_route_new_to_callback
    - GF_LOG
    - load_vr_proto_node
    - gf_list_enum
    - gf_node_changed
    - create_movie
    - INT2FIX
    - gf_sg_set_root_node
    - is_create_node
    - gf_sg_get_scene_size_info
    - gf_node_register
    - gf_sc_set_scene
    linkageType: ''
    returnType: void
    signature: void gf_scene_regenerate(GF_Scene *scene)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:1941,1
    - Dst: memset
      Src: /src/gpac/src/compositor/scene.c:1945,1
    - Dst: gf_scene_register_associated_media
      Src: /src/gpac/src/compositor/scene.c:1947,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/scene.c:1949,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/scene.c:1951,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - scene
    - show_addons
    argTypes:
    - GF_Scene*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1952
      start: 1939
    functionDepth: 11
    functionLinenumber: 1939
    functionLinenumberEnd: 1952
    functionName: gf_scene_toggle_addons
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_sg_find_node_by_name
    - memset
    - gf_scene_register_associated_media
    - gf_sg_vrml_mf_reset
    - gf_node_changed
    linkageType: ''
    returnType: void
    signature: void gf_scene_toggle_addons(GF_Scene *scene, Bool show_addons)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - scene
    argTypes:
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1957
      start: 1956
    functionDepth: 0
    functionLinenumber: 1956
    functionLinenumberEnd: 1957
    functionName: gf_scene_regenerate
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_regenerate(GF_Scene *scene)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - scene
    - from_time
    - restart_only
    - disable_addon_check
    argTypes:
    - GF_Scene*
    - s64
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1959
      start: 1958
    functionDepth: 0
    functionLinenumber: 1958
    functionLinenumberEnd: 1959
    functionName: gf_scene_restart_dynamic
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_restart_dynamic(GF_Scene *scene, s64 from_time,
      Bool restart_only, Bool disable_addon_check)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - scene
    - odm
    argTypes:
    - GF_Scene*
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1961
      start: 1960
    functionDepth: 0
    functionLinenumber: 1960
    functionLinenumberEnd: 1961
    functionName: gf_scene_select_object
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_select_object(GF_Scene *scene, GF_ObjectManager
      *odm)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - scene
    - show_addons
    argTypes:
    - GF_Scene*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1963
      start: 1962
    functionDepth: 0
    functionLinenumber: 1962
    functionLinenumberEnd: 1963
    functionName: gf_scene_toggle_addons
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_toggle_addons(GF_Scene *scene, Bool show_addons)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - subscene
    argTypes:
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1965
      start: 1964
    functionDepth: 0
    functionLinenumber: 1964
    functionLinenumberEnd: 1965
    functionName: gf_scene_resume_live
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_resume_live(GF_Scene *subscene)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - scene
    - position
    - size_factor
    argTypes:
    - GF_Scene*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1967
      start: 1966
    functionDepth: 0
    functionLinenumber: 1966
    functionLinenumberEnd: 1967
    functionName: gf_scene_set_addon_layout_info
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_set_addon_layout_info(GF_Scene *scene, u32 position,
      u32 size_factor)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - scene
    - odm
    - set_on
    - absolute_clock_time
    argTypes:
    - GF_Scene*
    - GF_ObjectManager*
    - Bool
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1969
      start: 1968
    functionDepth: 0
    functionLinenumber: 1968
    functionLinenumberEnd: 1969
    functionName: gf_scene_select_main_addon
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_select_main_addon(GF_Scene *scene, GF_ObjectManager
      *odm, Bool set_on, u64 absolute_clock_time)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: is_odm_url
      Src: /src/gpac/src/compositor/scene.c:1979,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/compositor/scene.c:1981,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:1986,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/scene.c:1990,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/compositor/scene.c:1991,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/scene.c:1992,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/scene.c:1993,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 3
    argNames:
    - url
    - odm
    - n
    argTypes:
    - SFURL*
    - GF_ObjectManager*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1995
      start: 1975
    functionDepth: 11
    functionLinenumber: 1975
    functionLinenumberEnd: 1995
    functionName: check_odm_deactivate
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_free
    - is_odm_url
    - gf_node_get_field_by_name
    - gf_node_get_scene_time
    - gf_sg_vrml_mf_reset
    - gf_node_changed
    linkageType: ''
    returnType: Bool
    signature: Bool check_odm_deactivate(SFURL *url, GF_ObjectManager *odm, GF_Node
      *n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/compositor/scene.c:2001,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/scene.c:2002,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/compositor/scene.c:2003,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/scene.c:2004,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/scene.c:2005,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2006
      start: 1997
    functionDepth: 11
    functionLinenumber: 1997
    functionLinenumberEnd: 2006
    functionName: odm_deactivate
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_mf_reset
    - gf_node_get_field_by_name
    - gf_node_changed
    - gf_node_get_scene_time
    linkageType: ''
    returnType: void
    signature: void odm_deactivate(GF_Node *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/compositor/scene.c:2013,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/scene.c:2014,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/compositor/scene.c:2016,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:2018,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/compositor/scene.c:2020,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/compositor/scene.c:2022,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/scene.c:2026,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - url
    - n
    argTypes:
    - SFURL*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2027
      start: 2008
    functionDepth: 11
    functionLinenumber: 2008
    functionLinenumberEnd: 2027
    functionName: odm_activate
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_sg_vrml_mf_append
    - gf_node_get_field_by_name
    - gf_sg_vrml_mf_reset
    - gf_node_changed
    linkageType: ''
    returnType: void
    signature: void odm_activate(SFURL *url, GF_Node *n)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/scene.c:2035,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:2041,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/scene.c:2045,1
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/compositor/scene.c:2053,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene.c:2056,1
    - Dst: gf_clock_media_time
      Src: /src/gpac/src/compositor/scene.c:2067,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:2073,1
    - Dst: gf_odm_setup_object
      Src: /src/gpac/src/compositor/scene.c:2080,1
    - Dst: gf_scene_regenerate
      Src: /src/gpac/src/compositor/scene.c:2085,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/scene.c:2087,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 49
    argCount: 2
    argNames:
    - scene
    - service_id
    argTypes:
    - GF_Scene*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2088
      start: 2030
    functionDepth: 13
    functionLinenumber: 2030
    functionLinenumberEnd: 2088
    functionName: gf_scene_set_service_id
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_scene_regenerate
    - gf_odm_setup_object
    - GF_LOG
    - gf_list_enum
    - gf_clock_media_time
    - gf_sc_lock
    - gf_odm_disconnect
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_set_service_id(GF_Scene *scene, u32 service_id)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_set_service_id
      Src: /src/gpac/src/compositor/scene.c:2103,1
    - Dst: check_odm_deactivate
      Src: /src/gpac/src/compositor/scene.c:2110,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2110,1
    - Dst: check_odm_deactivate
      Src: /src/gpac/src/compositor/scene.c:2111,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2111,1
    - Dst: check_odm_deactivate
      Src: /src/gpac/src/compositor/scene.c:2112,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2112,1
    - Dst: check_odm_deactivate
      Src: /src/gpac/src/compositor/scene.c:2113,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2113,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/scene.c:2117,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/scene.c:2122,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/scene.c:2130,1
    - Dst: gf_odm_stop
      Src: /src/gpac/src/compositor/scene.c:2134,1
    - Dst: gf_odm_play
      Src: /src/gpac/src/compositor/scene.c:2136,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2143,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/scene.c:2152,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/scene.c:2153,1
    - Dst: gf_clock_media_time
      Src: /src/gpac/src/compositor/scene.c:2160,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2166,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:2168,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/compositor/scene.c:2171,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:2174,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:2179,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:2180,1
    - Dst: gf_scene_get_time
      Src: /src/gpac/src/compositor/scene.c:2182,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/scene.c:2183,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2188,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:2190,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/compositor/scene.c:2193,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:2195,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:2198,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:2199,1
    - Dst: gf_scene_get_time
      Src: /src/gpac/src/compositor/scene.c:2201,1
    - Dst: gf_scene_force_size_to_video
      Src: /src/gpac/src/compositor/scene.c:2202,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/scene.c:2203,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2209,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:2211,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/compositor/scene.c:2214,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:2216,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:2219,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:2220,1
    - Dst: gf_scene_get_time
      Src: /src/gpac/src/compositor/scene.c:2222,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/scene.c:2223,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 124
    argCount: 2
    argNames:
    - scene
    - odm
    argTypes:
    - GF_Scene*
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2226
      start: 2092
    functionDepth: 14
    functionLinenumber: 2092
    functionLinenumberEnd: 2226
    functionName: gf_scene_select_object
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_filter_pid_get_property
    - gf_sg_find_node_by_name
    - check_odm_deactivate
    - gf_scene_set_service_id
    - gf_odm_play
    - GF_FEVT_INIT
    - gf_sg_vrml_field_copy
    - gf_clock_media_time
    - gf_scene_force_size_to_video
    - gf_filter_pid_send_event
    - gf_node_changed
    - gf_odm_stop
    - gf_scene_get_time
    - gf_sg_vrml_mf_alloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_select_object(GF_Scene *scene, GF_ObjectManager
      *odm)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2231,1
    - Dst: odm_deactivate
      Src: /src/gpac/src/compositor/scene.c:2237,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2237,1
    - Dst: odm_deactivate
      Src: /src/gpac/src/compositor/scene.c:2238,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2238,1
    - Dst: odm_deactivate
      Src: /src/gpac/src/compositor/scene.c:2239,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2239,1
    - Dst: gf_scene_regenerate
      Src: /src/gpac/src/compositor/scene.c:2244,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/scene.c:2251,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/scene.c:2256,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/scene.c:2257,1
    - Dst: gf_clock_media_time
      Src: /src/gpac/src/compositor/scene.c:2261,1
    - Dst: odm_activate
      Src: /src/gpac/src/compositor/scene.c:2266,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2266,1
    - Dst: odm_activate
      Src: /src/gpac/src/compositor/scene.c:2267,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2267,1
    - Dst: odm_activate
      Src: /src/gpac/src/compositor/scene.c:2268,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2268,1
    - Dst: odm_activate
      Src: /src/gpac/src/compositor/scene.c:2269,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2269,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/scene.c:2271,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/scene.c:2272,1
    - Dst: memset
      Src: /src/gpac/src/compositor/scene.c:2275,1
    - Dst: gf_scene_notify_event
      Src: /src/gpac/src/compositor/scene.c:2278,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 35
    argCount: 4
    argNames:
    - scene
    - odm
    - set_on
    - absolute_clock_time
    argTypes:
    - GF_Scene*
    - GF_ObjectManager*
    - Bool
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2280
      start: 2228
    functionDepth: 13
    functionLinenumber: 2228
    functionLinenumberEnd: 2280
    functionName: gf_scene_select_main_addon
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - odm_deactivate
    - gf_scene_notify_event
    - gf_scene_regenerate
    - gf_sg_find_node_by_name
    - odm_activate
    - gf_sg_vrml_field_copy
    - memset
    - gf_clock_media_time
    - gf_sg_vrml_mf_reset
    - gf_node_changed
    - gf_sys_clock
    linkageType: ''
    returnType: void
    signature: void gf_scene_select_main_addon(GF_Scene *scene, GF_ObjectManager *odm,
      Bool set_on, u64 absolute_clock_time)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: IS_CheckExistingObject
      Src: /src/gpac/src/compositor/scene.c:2294,1
    - Dst: gf_scene_get_video_size
      Src: /src/gpac/src/compositor/scene.c:2300,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2319,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:2321,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:2322,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/scene.c:2323,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2325,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:2329,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:2330,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:2333,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:2334,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:2337,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:2338,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:2341,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:2342,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/scene.c:2345,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 56
    argCount: 3
    argNames:
    - scene
    - position
    - size_factor
    argTypes:
    - GF_Scene*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2346
      start: 2282
    functionDepth: 4
    functionLinenumber: 2282
    functionLinenumberEnd: 2346
    functionName: gf_scene_set_addon_layout_info
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached:
    - IS_CheckExistingObject
    - INT2FIX
    - gf_sg_find_node_by_name
    - gf_node_dirty_set
    - gf_scene_get_video_size
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_set_addon_layout_info(GF_Scene *scene, u32 position,
      u32 size_factor)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: mediacontrol_resume
      Src: /src/gpac/src/compositor/scene.c:2352,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - subscene
    argTypes:
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2353
      start: 2348
    functionDepth: 1
    functionLinenumber: 2348
    functionLinenumberEnd: 2353
    functionName: gf_scene_resume_live
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - mediacontrol_resume
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_resume_live(GF_Scene *subscene)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:2372,1
    - Dst: gf_scene_select_main_addon
      Src: /src/gpac/src/compositor/scene.c:2381,1
    - Dst: gf_clock_time_absolute
      Src: /src/gpac/src/compositor/scene.c:2381,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/scene.c:2385,1
    - Dst: gf_scene_select_main_addon
      Src: /src/gpac/src/compositor/scene.c:2392,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/scene.c:2398,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:2400,1
    - Dst: gf_odm_shares_clock
      Src: /src/gpac/src/compositor/scene.c:2405,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/scene.c:2413,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/scene.c:2416,1
    - Dst: gf_odm_stop
      Src: /src/gpac/src/compositor/scene.c:2419,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/scene.c:2420,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene.c:2426,1
    - Dst: gf_clock_reset
      Src: /src/gpac/src/compositor/scene.c:2428,1
    - Dst: gf_clock_set_time
      Src: /src/gpac/src/compositor/scene.c:2431,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene.c:2433,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/scene.c:2433,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene.c:2437,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:2439,1
    - Dst: gf_odm_shares_clock
      Src: /src/gpac/src/compositor/scene.c:2440,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/scene.c:2441,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:2448,1
    - Dst: gf_scene_restart_dynamic
      Src: /src/gpac/src/compositor/scene.c:2456,1
    - Dst: gf_odm_start
      Src: /src/gpac/src/compositor/scene.c:2458,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/scene.c:2461,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2465,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2466,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2467,1
    - Dst: gf_scene_get_time
      Src: /src/gpac/src/compositor/scene.c:2469,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/scene.c:2470,1
    - Dst: gf_scene_get_time
      Src: /src/gpac/src/compositor/scene.c:2473,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/scene.c:2474,1
    - Dst: gf_scene_get_time
      Src: /src/gpac/src/compositor/scene.c:2477,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/scene.c:2478,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 97
    argCount: 4
    argNames:
    - scene
    - from_time
    - restart_only
    - disable_addon_check
    argTypes:
    - GF_Scene*
    - s64
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2481
      start: 2355
    functionDepth: 11
    functionLinenumber: 2355
    functionLinenumberEnd: 2481
    functionName: gf_scene_restart_dynamic
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_scene_restart_dynamic
    - gf_odm_start
    - gf_scene_get_time
    - gf_sys_clock
    - gf_list_new
    - gf_scene_select_main_addon
    - gf_sg_find_node_by_name
    - gf_list_add
    - GF_LOG
    - gf_clock_reset
    - gf_odm_shares_clock
    - gf_clock_time
    - gf_list_enum
    - gf_node_changed
    - gf_list_del
    - gf_clock_time_absolute
    - gf_clock_set_time
    - gf_odm_stop
    linkageType: ''
    returnType: void
    signature: void gf_scene_restart_dynamic(GF_Scene *scene, s64 from_time, Bool
      restart_only, Bool disable_addon_check)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene.c:2494,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/scene.c:2507,1
    - Dst: MAX
      Src: /src/gpac/src/compositor/scene.c:2509,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:2511,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/scene.c:2512,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/compositor/scene.c:2520,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/scene.c:2522,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/scene.c:2524,1
    - Dst: gf_sc_set_scene_size
      Src: /src/gpac/src/compositor/scene.c:2530,1
    - Dst: gf_sc_set_size
      Src: /src/gpac/src/compositor/scene.c:2532,1
    - Dst: gf_sc_set_size
      Src: /src/gpac/src/compositor/scene.c:2535,1
    - Dst: MAX
      Src: /src/gpac/src/compositor/scene.c:2539,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/compositor/scene.c:2540,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/compositor/scene.c:2543,1
    - Dst: gf_sc_set_scene
      Src: /src/gpac/src/compositor/scene.c:2544,1
    - Dst: gf_sc_set_size
      Src: /src/gpac/src/compositor/scene.c:2545,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/compositor/scene.c:2555,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/compositor/scene.c:2557,1
    - Dst: gf_sg_get_scene_size_info
      Src: /src/gpac/src/compositor/scene.c:2562,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/compositor/scene.c:2564,1
    - Dst: memset
      Src: /src/gpac/src/compositor/scene.c:2567,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:2569,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:2570,1
    - Dst: gf_scene_notify_event
      Src: /src/gpac/src/compositor/scene.c:2574,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/compositor/scene.c:2584,1
    - Dst: gf_sg_use_pixel_metrics
      Src: /src/gpac/src/compositor/scene.c:2584,1
    - Dst: gf_sc_set_scene_size
      Src: /src/gpac/src/compositor/scene.c:2587,1
    - Dst: gf_sc_set_size
      Src: /src/gpac/src/compositor/scene.c:2588,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/compositor/scene.c:2594,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/compositor/scene.c:2596,1
    - Dst: gf_scene_regenerate
      Src: /src/gpac/src/compositor/scene.c:2599,1
    - Dst: IS_UpdateVideoPos
      Src: /src/gpac/src/compositor/scene.c:2602,1
    - Dst: gf_scene_notify_event
      Src: /src/gpac/src/compositor/scene.c:2607,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 92
    argCount: 3
    argNames:
    - scene
    - width
    - height
    argTypes:
    - GF_Scene*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2608
      start: 2486
    functionDepth: 13
    functionLinenumber: 2486
    functionLinenumberEnd: 2608
    functionName: gf_scene_force_size
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 2
    functionsReached:
    - gf_sg_set_scene_size_info
    - INT2FIX
    - gf_filter_pid_get_property
    - gf_sg_find_node_by_name
    - gf_scene_notify_event
    - gf_scene_regenerate
    - GF_LOG
    - gf_sc_set_size
    - gf_sg_use_pixel_metrics
    - memset
    - gf_filter_get_ipid
    - IS_UpdateVideoPos
    - gf_sc_set_scene_size
    - gf_sg_get_scene_size_info
    - MAX
    - gf_node_changed
    - gf_sc_set_scene
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_force_size(GF_Scene *scene, u32 width, u32 height)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/scene.c:2619,1
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/scene.c:2621,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/scene.c:2625,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/scene.c:2625,1
    - Dst: gf_filter_ui_event
      Src: /src/gpac/src/compositor/scene.c:2627,1
    - Dst: gf_mo_event_target_enum_node
      Src: /src/gpac/src/compositor/scene.c:2635,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/scene.c:2636,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/scene.c:2641,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/compositor/scene.c:2642,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:2643,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 2
    argNames:
    - caller
    - evt
    argTypes:
    - GF_Node*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2653
      start: 2611
    functionDepth: 4
    functionLinenumber: 2611
    functionLinenumberEnd: 2653
    functionName: gf_scene_process_anchor
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_strdup
    - gf_mo_event_target_enum_node
    - gf_filter_ui_event
    - gf_node_get_graph
    - stricmp
    - gf_sg_vrml_mf_reset
    - gf_sg_get_private
    - gf_sg_vrml_mf_alloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_process_anchor(GF_Node *caller, GF_Event *evt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/scene.c:2659,1
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/scene.c:2661,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2664
      start: 2655
    functionDepth: 1
    functionLinenumber: 2655
    functionLinenumberEnd: 2664
    functionName: GF_Compositor *gf_sc_get_compositor(GF_Node *node)
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_node_get_graph
    - gf_sg_get_private
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_Compositor *gf_sc_get_compositor(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/scene.c:2668,1
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/scene.c:2669,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2672
      start: 2666
    functionDepth: 1
    functionLinenumber: 2666
    functionLinenumberEnd: 2672
    functionName: gf_scene_get_fragment_uri
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_node_get_graph
    - gf_sg_get_private
    linkageType: ''
    returnType: char
    signature: char *gf_scene_get_fragment_uri(GF_Node *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/scene.c:2675,1
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/scene.c:2676,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:2679,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:2682,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - node
    - uri
    argTypes:
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2683
      start: 2673
    functionDepth: 1
    functionLinenumber: 2673
    functionLinenumberEnd: 2683
    functionName: gf_scene_set_fragment_uri
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_node_get_graph
    - gf_sg_get_private
    linkageType: ''
    returnType: void
    signature: void gf_scene_set_fragment_uri(GF_Node *node, const char *uri)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/scene.c:2690,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/scene.c:2701,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/scene.c:2704,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2705
      start: 2686
    functionDepth: 2
    functionLinenumber: 2686
    functionLinenumberEnd: 2705
    functionName: gf_scene_get_subscene_root
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_sg_get_root_node
    - gf_node_get_private
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *gf_scene_get_subscene_root(GF_Node *node)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_check_clocks
      Src: /src/gpac/src/compositor/scene.c:2717,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:2720,1
    - Dst: gf_scene_check_clocks
      Src: /src/gpac/src/compositor/scene.c:2730,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:2747,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 56
    argCount: 3
    argNames:
    - ns
    - scene
    - check_buffering
    argTypes:
    - GF_SceneNamespace*
    - GF_Scene*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2771
      start: 2708
    functionDepth: 1
    functionLinenumber: 2708
    functionLinenumberEnd: 2771
    functionName: gf_scene_check_clocks
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 2
    functionsReached:
    - gf_list_enum
    - gf_scene_check_clocks
    linkageType: ''
    returnType: Bool
    signature: Bool gf_scene_check_clocks(GF_SceneNamespace *ns, GF_Scene *scene,
      Bool check_buffering)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/scene.c:2775,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2778
      start: 2773
    functionDepth: 1
    functionLinenumber: 2773
    functionLinenumberEnd: 2778
    functionName: gf_scene_get_service_url
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_sg_get_private
    linkageType: ''
    returnType: char
    signature: char *gf_scene_get_service_url(GF_SceneGraph *sg)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/scene.c:2783,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene.c:2788,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/scene.c:2790,1
    - Dst: gf_scene_is_over
      Src: /src/gpac/src/compositor/scene.c:2792,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2795
      start: 2780
    functionDepth: 1
    functionLinenumber: 2780
    functionLinenumberEnd: 2795
    functionName: gf_scene_is_over
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_sg_get_private
    - gf_scene_is_over
    linkageType: ''
    returnType: Bool
    signature: Bool gf_scene_is_over(GF_SceneGraph *sg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/scene.c:2799,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:2801,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - sg
    - i
    argTypes:
    - GF_SceneGraph*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2802
      start: 2797
    functionDepth: 1
    functionLinenumber: 2797
    functionLinenumberEnd: 2802
    functionName: gf_scene_enum_extra_scene
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_sg_get_private
    linkageType: ''
    returnType: GF_SceneGraph
    signature: GF_SceneGraph *gf_scene_enum_extra_scene(GF_SceneGraph *sg, u32 *i)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/scene.c:2806,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2809
      start: 2804
    functionDepth: 1
    functionLinenumber: 2804
    functionLinenumberEnd: 2809
    functionName: gf_scene_is_dynamic_scene
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_sg_get_private
    linkageType: ''
    returnType: Bool
    signature: Bool gf_scene_is_dynamic_scene(GF_SceneGraph *sg)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_node_destroy
      Src: /src/gpac/src/compositor/scene.c:2826,1
    - Dst: gf_sg_reset
      Src: /src/gpac/src/compositor/scene.c:2827,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:2830,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/src/compositor/scene.c:2831,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:2832,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:2834,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:2835,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:2836,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/scene.c:2839,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/src/compositor/scene.c:2846,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/scene.c:2848,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:2854,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:2855,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:2856,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:2858,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:2860,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:2863,1
    - Dst: gf_scene_get_time
      Src: /src/gpac/src/compositor/scene.c:2864,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:2866,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:2868,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:2870,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/scene.c:2872,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/compositor/scene.c:2873,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/compositor/scene.c:2874,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:2876,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:2877,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:2878,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/scene.c:2880,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/compositor/scene.c:2881,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/compositor/scene.c:2882,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/src/compositor/scene.c:2895,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/compositor/scene.c:2898,1
    - Dst: gf_scene_attach_to_compositor
      Src: /src/gpac/src/compositor/scene.c:2900,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/scene.c:2904,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 62
    argCount: 3
    argNames:
    - scene
    - url
    - parent_path
    argTypes:
    - GF_Scene*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2906
      start: 2813
    functionDepth: 11
    functionLinenumber: 2813
    functionLinenumberEnd: 2906
    functionName: gf_scene_generate_views
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_node_list_add_child
    - gf_sg_set_scene_size_info
    - gf_sc_set_option
    - gf_sg_set_root_node
    - is_create_node
    - gf_sg_vrml_mf_append
    - gf_sc_send_event
    - strstr
    - gf_url_concatenate
    - gf_sc_node_destroy
    - gf_sg_reset
    - gf_sg_vrml_mf_reset
    - gf_url_colon_suffix
    - gf_node_register
    - gf_scene_get_time
    - gf_scene_attach_to_compositor
    linkageType: ''
    returnType: void
    signature: void gf_scene_generate_views(GF_Scene *scene, char *url, char *parent_path)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_node_destroy
      Src: /src/gpac/src/compositor/scene.c:2920,1
    - Dst: gf_sg_reset
      Src: /src/gpac/src/compositor/scene.c:2921,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:2924,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/src/compositor/scene.c:2925,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:2926,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/scene.c:2928,1
    - Dst: strchr
      Src: /src/gpac/src/compositor/scene.c:2937,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/scene.c:2944,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:2951,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:2952,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:2953,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:2954,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:2956,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:2957,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:2965,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:2966,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:2967,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/scene.c:2968,1
    - Dst: is_create_node
      Src: /src/gpac/src/compositor/scene.c:2970,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/scene.c:2971,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/scene.c:2972,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/scene.c:2974,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/compositor/scene.c:2975,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/compositor/scene.c:2976,1
    - Dst: gf_ceil
      Src: /src/gpac/src/compositor/scene.c:2990,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/compositor/scene.c:2990,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/compositor/scene.c:2999,1
    - Dst: gf_scene_attach_to_compositor
      Src: /src/gpac/src/compositor/scene.c:3001,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/scene.c:3005,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 75
    argCount: 3
    argNames:
    - scene
    - url
    - parent_path
    argTypes:
    - GF_Scene*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3007
      start: 2908
    functionDepth: 11
    functionLinenumber: 2908
    functionLinenumberEnd: 3007
    functionName: gf_scene_generate_mosaic
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_node_list_add_child
    - gf_sg_set_scene_size_info
    - INT2FIX
    - gf_sg_set_root_node
    - is_create_node
    - gf_sg_vrml_mf_append
    - gf_sc_send_event
    - gf_ceil
    - strstr
    - gf_url_concatenate
    - gf_sc_node_destroy
    - gf_sg_reset
    - gf_sg_vrml_mf_reset
    - gf_node_register
    - strchr
    - gf_scene_attach_to_compositor
    - gf_sqrt
    linkageType: ''
    returnType: void
    signature: void gf_scene_generate_mosaic(GF_Scene *scene, char *url, char *parent_path)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_remove_object
      Src: /src/gpac/src/compositor/scene.c:3015,1
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/compositor/scene.c:3016,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:3020,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:3021,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - addon
    - disconnect
    argTypes:
    - GF_AddonMedia*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3022
      start: 3010
    functionDepth: 7
    functionLinenumber: 3010
    functionLinenumberEnd: 3022
    functionName: gf_scene_reset_addon
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached:
    - gf_scene_remove_object
    - gf_free
    - gf_odm_disconnect
    linkageType: ''
    returnType: void
    signature: void gf_scene_reset_addon(GF_AddonMedia *addon, Bool disconnect)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene.c:3026,1
    - Dst: gf_list_last
      Src: /src/gpac/src/compositor/scene.c:3027,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/scene.c:3028,1
    - Dst: gf_scene_reset_addon
      Src: /src/gpac/src/compositor/scene.c:3030,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - scene
    argTypes:
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3032
      start: 3024
    functionDepth: 8
    functionLinenumber: 3024
    functionLinenumberEnd: 3032
    functionName: gf_scene_reset_addons
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_last
    - gf_list_rem_last
    - gf_scene_reset_addon
    linkageType: ''
    returnType: void
    signature: void gf_scene_reset_addons(GF_Scene *scene)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_get_media_object_ex
      Src: /src/gpac/src/compositor/scene.c:3050,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene.c:3053,1
    - Dst: gf_scene_select_object
      Src: /src/gpac/src/compositor/scene.c:3064,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - scene
    - addon
    argTypes:
    - GF_Scene*
    - GF_AddonMedia*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3066
      start: 3034
    functionDepth: 1
    functionLinenumber: 3034
    functionLinenumberEnd: 3066
    functionName: load_associated_media
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_scene_select_object
    - gf_scene_get_media_object_ex
    linkageType: ''
    returnType: void
    signature: void load_associated_media(GF_Scene *scene, GF_AddonMedia *addon)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene.c:3079,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/scene.c:3082,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/scene.c:3085,1
    - Dst: gf_scene_toggle_addons
      Src: /src/gpac/src/compositor/scene.c:3095,1
    - Dst: gf_scene_remove_object
      Src: /src/gpac/src/compositor/scene.c:3096,1
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/compositor/scene.c:3097,1
    - Dst: load_associated_media
      Src: /src/gpac/src/compositor/scene.c:3124,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/scene.c:3127,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/scene.c:3128,1
    - Dst: gf_scene_reset_addon
      Src: /src/gpac/src/compositor/scene.c:3129,1
    - Dst: gf_scene_toggle_addons
      Src: /src/gpac/src/compositor/scene.c:3130,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/scene.c:3131,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/scene.c:3133,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/scene.c:3142,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/scene.c:3147,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene.c:3149,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/scene.c:3153,1
    - Dst: gf_scene_get_time
      Src: /src/gpac/src/compositor/scene.c:3158,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/scene.c:3163,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/compositor/scene.c:3192,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/scene.c:3197,1
    - Dst: load_associated_media
      Src: /src/gpac/src/compositor/scene.c:3201,1
    - Dst: memset
      Src: /src/gpac/src/compositor/scene.c:3204,1
    - Dst: gf_scene_notify_event
      Src: /src/gpac/src/compositor/scene.c:3209,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 110
    argCount: 2
    argNames:
    - scene
    - addon_info
    argTypes:
    - GF_Scene*
    - GF_AssociatedContentLocation*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3212
      start: 3069
    functionDepth: 12
    functionLinenumber: 3069
    functionLinenumberEnd: 3212
    functionName: gf_scene_register_associated_media
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 2
    functionsReached:
    - gf_scene_remove_object
    - gf_free
    - GF_SAFEALLOC
    - gf_list_count
    - gf_scene_toggle_addons
    - memset
    - gf_scene_get_time
    - gf_list_get
    - gf_strdup
    - gf_sc_send_event
    - gf_scene_notify_event
    - gf_list_add
    - load_associated_media
    - GF_LOG
    - gf_sys_is_test_mode
    - strlen
    - gf_odm_disconnect
    - gf_scene_reset_addon
    - strcmp
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_register_associated_media(GF_Scene *scene, GF_AssociatedContentLocation
      *addon_info)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/scene.c:3219,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/scene.c:3221,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/scene.c:3230,1
    - Dst: gf_scene_reset_addon
      Src: /src/gpac/src/compositor/scene.c:3236,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/scene.c:3237,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene.c:3251,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/scene.c:3261,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/scene.c:3262,1
    - Dst: load_associated_media
      Src: /src/gpac/src/compositor/scene.c:3267,1
    - Dst: gf_scene_set_timeshift_depth
      Src: /src/gpac/src/compositor/scene.c:3278,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/scene.c:3284,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/scene.c:3286,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 56
    argCount: 2
    argNames:
    - scene
    - addon_time
    argTypes:
    - GF_Scene*
    - GF_AssociatedContentTiming*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3288
      start: 3214
    functionDepth: 11
    functionLinenumber: 3214
    functionLinenumberEnd: 3288
    functionName: gf_scene_notify_associated_media_timeline
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_assert
    - gf_scene_reset_addon
    - load_associated_media
    - GF_LOG
    - gf_scene_set_timeshift_depth
    - GF_FEVT_INIT
    - gf_list_count
    - gf_filter_pid_send_event
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_scene_notify_associated_media_timeline(GF_Scene *scene, GF_AssociatedContentTiming
      *addon_time)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene.c:3303,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/scene.c:3311,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene.c:3318,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/scene.c:3320,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:3323,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/scene.c:3325,1
    - Dst: gf_odm_stop
      Src: /src/gpac/src/compositor/scene.c:3327,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:3331,1
    - Dst: gf_odm_start
      Src: /src/gpac/src/compositor/scene.c:3332,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/scene.c:3334,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 3
    argNames:
    - addon
    - cts
    - dts
    argTypes:
    - GF_AddonMedia*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3336
      start: 3292
    functionDepth: 2
    functionLinenumber: 3292
    functionLinenumberEnd: 3336
    functionName: gf_scene_check_addon_restart
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_list_new
    - GF_LOG
    - gf_list_add
    - gf_odm_start
    - gf_list_enum
    - gf_odm_stop
    - gf_list_del
    linkageType: ''
    returnType: Bool
    signature: Bool gf_scene_check_addon_restart(GF_AddonMedia *addon, u64 cts, u64
      dts)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/scene.c:3356,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - addon
    - clock_time
    - timestamp_based
    argTypes:
    - GF_AddonMedia*
    - Double
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3358
      start: 3338
    functionDepth: 1
    functionLinenumber: 3338
    functionLinenumberEnd: 3358
    functionName: gf_scene_adjust_time_for_addon
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: Double
    signature: Double gf_scene_adjust_time_for_addon(GF_AddonMedia *addon, Double
      clock_time, u8 *timestamp_based)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/scene.c:3363,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - addon
    - orig_ts
    argTypes:
    - GF_AddonMedia*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3375
      start: 3360
    functionDepth: 1
    functionLinenumber: 3360
    functionLinenumberEnd: 3375
    functionName: gf_scene_adjust_timestamp_for_addon
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: s64
    signature: s64 gf_scene_adjust_timestamp_for_addon(GF_AddonMedia *addon, u64 orig_ts)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/scene.c:3386,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/scene.c:3390,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:3394,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/scene.c:3395,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/scene.c:3401,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/scene.c:3403,1
    - Dst: gf_scene_switch_quality
      Src: /src/gpac/src/compositor/scene.c:3406,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 2
    argNames:
    - scene
    - up
    argTypes:
    - GF_Scene*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3408
      start: 3377
    functionDepth: 1
    functionLinenumber: 3377
    functionLinenumberEnd: 3408
    functionName: gf_scene_switch_quality
    functionSourceFile: /src/gpac/src/compositor/scene.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    - gf_scene_switch_quality
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_switch_quality(GF_Scene *scene, Bool up)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:39,1
    - Dst: gf_sc_check_focus_upon_destroy
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:41,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:42,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 37
    functionDepth: 7
    functionLinenumber: 37
    functionLinenumberEnd: 46
    functionName: TraverseGroup
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_3d.c
    functionUses: 0
    functionsReached:
    - gf_free
    - group_2d_traverse
    - gf_node_get_private
    - gf_sc_check_focus_upon_destroy
    linkageType: ''
    returnType: void
    signature: void TraverseGroup(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:51,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:53,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 48
    functionDepth: 2
    functionLinenumber: 48
    functionLinenumberEnd: 55
    functionName: compositor_init_group
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_3d.c
    functionUses: 1
    functionsReached:
    - gf_node_set_private
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void compositor_init_group(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compositor_init_group
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 3
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: compositor_init_static_group
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_3d.c
    functionUses: 1
    functionsReached:
    - compositor_init_group
    linkageType: ''
    returnType: void
    signature: void compositor_init_static_group(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:66,1
    - Dst: gf_sc_check_focus_upon_destroy
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:68,1
    - Dst: group_3d_delete
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:69,1
    - Dst: group_3d_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 64
    functionDepth: 7
    functionLinenumber: 64
    functionLinenumberEnd: 73
    functionName: TraverseGroup
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_3d.c
    functionUses: 0
    functionsReached:
    - group_3d_traverse
    - group_3d_delete
    - gf_node_get_private
    - gf_sc_check_focus_upon_destroy
    linkageType: ''
    returnType: void
    signature: void TraverseGroup(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: group_3d_new
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:77,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 75
    functionDepth: 3
    functionLinenumber: 75
    functionLinenumberEnd: 79
    functionName: compositor_init_group
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_3d.c
    functionUses: 2
    functionsReached:
    - group_3d_new
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_group(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: group_3d_new
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:89,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 87
    functionDepth: 3
    functionLinenumber: 87
    functionLinenumberEnd: 91
    functionName: compositor_init_static_group
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_3d.c
    functionUses: 1
    functionsReached:
    - group_3d_new
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_static_group(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:101,1
    - Dst: gf_sc_check_focus_upon_destroy
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:104,1
    - Dst: group_3d_delete
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:105,1
    - Dst: group_3d_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:110,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:122,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:125,1
    - Dst: group_3d_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:127,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:130,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:131,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 94
    functionDepth: 7
    functionLinenumber: 94
    functionLinenumberEnd: 143
    functionName: TraverseCollision
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_3d.c
    functionUses: 0
    functionsReached:
    - group_3d_delete
    - gf_node_event_out
    - gf_node_traverse
    - gf_sc_check_focus_upon_destroy
    - gf_node_get_scene_time
    - gf_node_get_private
    - group_3d_traverse
    linkageType: ''
    returnType: void
    signature: void TraverseCollision(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: group_3d_new
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:147,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 145
    functionDepth: 3
    functionLinenumber: 145
    functionLinenumberEnd: 149
    functionName: compositor_init_collision
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_3d.c
    functionUses: 1
    functionsReached:
    - group_3d_new
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_collision(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:162,1
    - Dst: gf_sc_check_focus_upon_destroy
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:163,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 160
    functionDepth: 2
    functionLinenumber: 160
    functionLinenumberEnd: 165
    functionName: DestroyTransform
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_3d.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_private
    - gf_sc_check_focus_upon_destroy
    linkageType: ''
    returnType: void
    signature: void DestroyTransform(GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:170,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:173,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:174,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - compositor
    - node
    - children
    argTypes:
    - GF_Compositor*
    - GF_Node*
    - GF_ChildNodeItem**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 167
    functionDepth: 2
    functionLinenumber: 167
    functionLinenumberEnd: 175
    functionName: NewTransformStack
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_3d.c
    functionUses: 0
    functionsReached:
    - gf_node_set_private
    - gf_mx_init
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void NewTransformStack(GF_Compositor *compositor, GF_Node *node, GF_ChildNodeItem
      **children)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:180,1
    - Dst: DestroyTransform
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:185,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:190,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:192,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:194,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:197,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:199,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:202,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:204,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:206,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:208,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:213,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:214,1
    - Dst: group_3d_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:217,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:219,1
    - Dst: gf_mx_apply_bbox
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:221,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 31
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 177
    functionDepth: 7
    functionLinenumber: 177
    functionLinenumberEnd: 222
    functionName: TraverseTransform
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_3d.c
    functionUses: 0
    functionsReached:
    - gf_node_dirty_get
    - gf_mx_add_rotation
    - gf_mx_add_translation
    - gf_mx_init
    - gf_mx_add_matrix
    - gf_mx_apply_bbox
    - DestroyTransform
    - gf_mx_copy
    - gf_mx_add_scale
    - gf_node_get_private
    - group_3d_traverse
    linkageType: ''
    returnType: void
    signature: void TraverseTransform(GF_Node *n, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewTransformStack
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:226,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 224
    functionDepth: 3
    functionLinenumber: 224
    functionLinenumberEnd: 229
    functionName: compositor_init_transform
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_3d.c
    functionUses: 1
    functionsReached:
    - NewTransformStack
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_transform(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:235,1
    - Dst: DestroyTransform
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:240,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:246,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:252,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:253,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:255,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:259,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:260,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:261,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:262,1
    - Dst: gf_mx_rotate_vector
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:263,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:264,1
    - Dst: gf_mx_rotate_vector
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:267,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:268,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:269,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:270,1
    - Dst: gf_mx_rotation_matrix_from_vectors
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:272,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:273,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:277,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:279,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:280,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:281,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:282,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:286,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:287,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:288,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:289,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:291,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:292,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:293,1
    - Dst: gf_acos
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:294,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:295,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:296,1
    - Dst: gf_vec_rev
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:296,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:297,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:301,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:302,1
    - Dst: group_3d_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:305,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:307,1
    - Dst: gf_mx_apply_bbox
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:309,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 55
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 232
    functionDepth: 7
    functionLinenumber: 232
    functionLinenumberEnd: 310
    functionName: TraverseBillboard
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_3d.c
    functionUses: 0
    functionsReached:
    - gf_mx_rotation_matrix_from_vectors
    - gf_vec_add
    - gf_vec_norm
    - gf_mx_copy
    - group_3d_traverse
    - gf_vec_len
    - gf_vec_dot
    - gf_mx_add_rotation
    - gf_mx_init
    - gf_mx_add_matrix
    - DestroyTransform
    - gf_node_get_private
    - gf_vec_scale
    - gf_vec_rev
    - gf_vec_cross
    - gf_vec_diff
    - gf_mx_apply_bbox
    - gf_mx_rotate_vector
    - gf_mx_inverse
    - gf_acos
    - gf_mx_apply_vec
    linkageType: ''
    returnType: void
    signature: void TraverseBillboard(GF_Node *n, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewTransformStack
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:314,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:315,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 312
    functionDepth: 3
    functionLinenumber: 312
    functionLinenumberEnd: 317
    functionName: compositor_init_billboard
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_3d.c
    functionUses: 1
    functionsReached:
    - NewTransformStack
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_billboard(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:330,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:333,1
    - Dst: gf_sc_check_focus_upon_destroy
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:334,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:339,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:352,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:361,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:362,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:363,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:364,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:365,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:373,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:374,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:389,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:394,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:394,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 56
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 319
    functionDepth: 6
    functionLinenumber: 319
    functionLinenumberEnd: 395
    functionName: TraverseLOD
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_3d.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_tag
    - gf_vec_len
    - gf_mx_apply_vec
    - gf_node_traverse
    - gf_node_list_get_child
    - gf_vec_diff
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_mx_inverse
    - gf_mx_copy
    - gf_node_list_get_count
    - gf_node_get_private
    - gf_sc_check_focus_upon_destroy
    linkageType: ''
    returnType: void
    signature: void TraverseLOD(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:399,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:401,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_3d.c:402,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 397
    functionDepth: 2
    functionLinenumber: 397
    functionLinenumberEnd: 403
    functionName: compositor_init_lod
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_3d.c
    functionUses: 1
    functionsReached:
    - gf_node_set_private
    - gf_node_set_callback_function
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void compositor_init_lod(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_get_compositor
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:41,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:45,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:46,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:48,1
    - Dst: compositor_compositetexture_sensor_delete
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:50,1
    - Dst: gf_sg_unregister_event_type
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:54,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:54,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - node
    - hdl
    argTypes:
    - GF_Node*
    - GF_SensorHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 57
    functionName: mpeg4_sensor_deleted
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_sc_get_compositor
    - gf_sg_unregister_event_type
    - gf_node_get_graph
    - gf_list_del_item
    - gf_list_enum
    - compositor_compositetexture_sensor_delete
    linkageType: ''
    returnType: void
    signature: void mpeg4_sensor_deleted(GF_Node *node, GF_SensorHandler *hdl)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_register_event_type
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:63,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 59
    functionDepth: 2
    functionLinenumber: 59
    functionLinenumberEnd: 65
    functionName: mpeg4_sensor_created
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_sg_register_event_type
    - gf_node_get_graph
    linkageType: ''
    returnType: void
    signature: void mpeg4_sensor_created(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:79,1
    - Dst: mpeg4_sensor_deleted
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:83,1
    - Dst: gf_sc_check_focus_upon_destroy
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:84,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:85,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:86,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:90,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:92,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:103,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:106,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:109,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 77
    functionDepth: 7
    functionLinenumber: 77
    functionLinenumberEnd: 110
    functionName: TraverseAnchor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_tag
    - gf_node_dirty_get
    - strlen
    - gf_node_dirty_clear
    - group_2d_traverse
    - gf_node_get_private
    - mpeg4_sensor_deleted
    - gf_list_del
    - gf_sc_check_focus_upon_destroy
    linkageType: ''
    returnType: void
    signature: void TraverseAnchor(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:117,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:140,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:140,1
    - Dst: Bindable_SetSetBind
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:142,1
    - Dst: gf_scene_process_anchor
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:146,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 32
    argCount: 3
    argNames:
    - node
    - st
    - compositor
    argTypes:
    - GF_Node*
    - AnchorStack*
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 112
    functionDepth: 5
    functionLinenumber: 112
    functionLinenumberEnd: 151
    functionName: anchor_activation
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_sg_find_node_by_name
    - Bindable_SetSetBind
    - gf_node_get_graph
    - gf_scene_process_anchor
    linkageType: ''
    returnType: void
    signature: void anchor_activation(GF_Node *node, AnchorStack *st, GF_Compositor
      *compositor)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:157,1
    - Dst: anchor_activation
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:165,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:169,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:181,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:182,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 30
    argCount: 5
    argNames:
    - sh
    - is_over
    - is_cancel
    - ev
    - compositor
    argTypes:
    - GF_SensorHandler*
    - Bool
    - Bool
    - GF_Event*
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 153
    functionDepth: 6
    functionLinenumber: 153
    functionLinenumberEnd: 188
    functionName: OnAnchor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_sc_send_event
    - anchor_activation
    - gf_node_get_private
    - strlen
    linkageType: ''
    returnType: Bool
    signature: Bool OnAnchor(GF_SensorHandler *sh, Bool is_over, Bool is_cancel, GF_Event
      *ev, GF_Compositor *compositor)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 190
    functionDepth: 2
    functionLinenumber: 190
    functionLinenumberEnd: 194
    functionName: anchor_is_enabled
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: Bool
    signature: Bool anchor_is_enabled(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:198,1
    - Dst: anchor_activation
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:201,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 196
    functionDepth: 6
    functionLinenumber: 196
    functionLinenumberEnd: 202
    functionName: on_activate_anchor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - anchor_activation
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void on_activate_anchor(GF_Node *node, GF_Route *route)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 204
    functionDepth: 2
    functionLinenumber: 204
    functionLinenumberEnd: 208
    functionName: gf_sc_anchor_get_handler
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 2
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: GF_SensorHandler
    signature: GF_SensorHandler *gf_sc_anchor_get_handler(GF_Node *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:214,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:216,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:223,1
    - Dst: mpeg4_sensor_created
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:227,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:228,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:229,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 211
    functionDepth: 3
    functionLinenumber: 211
    functionLinenumberEnd: 230
    functionName: compositor_init_anchor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - mpeg4_sensor_created
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_anchor(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:244,1
    - Dst: mpeg4_sensor_deleted
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:245,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:246,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 241
    functionDepth: 3
    functionLinenumber: 241
    functionLinenumberEnd: 248
    functionName: DestroyDiscSensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_private
    - mpeg4_sensor_deleted
    linkageType: ''
    returnType: void
    signature: void DestroyDiscSensor(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 254
    functionName: ds_is_enabled
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool ds_is_enabled(GF_Node *n)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:261,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:271,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:274,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:280,1
    - Dst: gf_atan2
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:281,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:283,1
    - Dst: gf_mx_apply_ray
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:292,1
    - Dst: compositor_get_2d_plane_intersection
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:293,1
    - Dst: gf_atan2
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:295,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:302,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:305,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:312,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:341,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 77
    argCount: 5
    argNames:
    - sh
    - is_over
    - is_cancel
    - ev
    - compositor
    argTypes:
    - GF_SensorHandler*
    - Bool
    - Bool
    - GF_Event*
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 257
    functionDepth: 5
    functionLinenumber: 257
    functionLinenumberEnd: 346
    functionName: OnDiscSensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    - gf_atan2
    - compositor_get_2d_plane_intersection
    - gf_mx_copy
    - gf_mx_apply_ray
    - gf_node_get_private
    linkageType: ''
    returnType: Bool
    signature: Bool OnDiscSensor(GF_SensorHandler *sh, Bool is_over, Bool is_cancel,
      GF_Event *ev, GF_Compositor *compositor)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:350,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 348
    functionDepth: 2
    functionLinenumber: 348
    functionLinenumberEnd: 352
    functionName: disc_sensor_get_handler
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: GF_SensorHandler
    signature: GF_SensorHandler *disc_sensor_get_handler(GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:357,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:359,1
    - Dst: mpeg4_sensor_created
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:367,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:368,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:369,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 354
    functionDepth: 3
    functionLinenumber: 354
    functionLinenumberEnd: 370
    functionName: compositor_init_disc_sensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 1
    functionsReached:
    - mpeg4_sensor_created
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_disc_sensor(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:384,1
    - Dst: mpeg4_sensor_deleted
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:385,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:386,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 381
    functionDepth: 3
    functionLinenumber: 381
    functionLinenumberEnd: 388
    functionName: DestroyPlaneSensor2D
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_private
    - mpeg4_sensor_deleted
    linkageType: ''
    returnType: void
    signature: void DestroyPlaneSensor2D(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 390
    functionDepth: 0
    functionLinenumber: 390
    functionLinenumberEnd: 394
    functionName: ps2D_is_enabled
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool ps2D_is_enabled(GF_Node *n)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:400,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:410,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:414,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:419,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:423,1
    - Dst: gf_mx_apply_ray
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:432,1
    - Dst: compositor_get_2d_plane_intersection
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:434,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:438,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:455,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:462,1
    - Dst: gf_sg_use_pixel_metrics
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:468,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:468,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:469,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:469,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:500,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:503,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 100
    argCount: 5
    argNames:
    - sh
    - is_over
    - is_cancel
    - ev
    - compositor
    argTypes:
    - GF_SensorHandler*
    - Bool
    - Bool
    - GF_Event*
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 509
      start: 396
    functionDepth: 5
    functionLinenumber: 396
    functionLinenumberEnd: 509
    functionName: OnPlaneSensor2D
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    - INT2FIX
    - gf_divfix
    - gf_sg_use_pixel_metrics
    - compositor_get_2d_plane_intersection
    - gf_node_get_graph
    - gf_mx_copy
    - gf_mx_apply_ray
    - gf_node_get_private
    linkageType: ''
    returnType: Bool
    signature: Bool OnPlaneSensor2D(GF_SensorHandler *sh, Bool is_over, Bool is_cancel,
      GF_Event *ev, GF_Compositor *compositor)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:513,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 511
    functionDepth: 2
    functionLinenumber: 511
    functionLinenumberEnd: 515
    functionName: plane_sensor2d_get_handler
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: GF_SensorHandler
    signature: GF_SensorHandler *plane_sensor2d_get_handler(GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:520,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:522,1
    - Dst: mpeg4_sensor_created
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:530,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:531,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:532,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 517
    functionDepth: 3
    functionLinenumber: 517
    functionLinenumberEnd: 533
    functionName: compositor_init_plane_sensor2d
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 1
    functionsReached:
    - mpeg4_sensor_created
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_plane_sensor2d(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:546,1
    - Dst: mpeg4_sensor_deleted
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:547,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:548,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 543
    functionDepth: 3
    functionLinenumber: 543
    functionLinenumberEnd: 550
    functionName: DestroyProximitySensor2D
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_private
    - mpeg4_sensor_deleted
    linkageType: ''
    returnType: void
    signature: void DestroyProximitySensor2D(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 555
    functionName: prox2D_is_enabled
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool prox2D_is_enabled(GF_Node *n)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 4
    argNames:
    - st
    - ps
    - X
    - Y
    argTypes:
    - Prox2DStack*
    - M_ProximitySensor2D*
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 564
    functionName: prox2D_is_in_sensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool prox2D_is_in_sensor(Prox2DStack *st, M_ProximitySensor2D *ps,
      Fixed X, Fixed Y)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:569,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:571,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:574,1
    - Dst: prox2D_is_in_sensor
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:576,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:579,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:583,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:585,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:593,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:595,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 5
    argNames:
    - sh
    - is_over
    - is_cancel
    - ev
    - compositor
    argTypes:
    - GF_SensorHandler*
    - Bool
    - Bool
    - GF_Event*
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 599
      start: 566
    functionDepth: 5
    functionLinenumber: 566
    functionLinenumberEnd: 599
    functionName: OnProximitySensor2D
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_node_event_out
    - prox2D_is_in_sensor
    - gf_node_get_scene_time
    - gf_node_get_private
    linkageType: ''
    returnType: Bool
    signature: Bool OnProximitySensor2D(GF_SensorHandler *sh, Bool is_over, Bool is_cancel,
      GF_Event *ev, GF_Compositor *compositor)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:603,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 601
    functionDepth: 2
    functionLinenumber: 601
    functionLinenumberEnd: 605
    functionName: proximity_sensor2d_get_handler
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: GF_SensorHandler
    signature: GF_SensorHandler *proximity_sensor2d_get_handler(GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:611,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:613,1
    - Dst: mpeg4_sensor_created
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:621,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:622,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:623,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 608
    functionDepth: 3
    functionLinenumber: 608
    functionLinenumberEnd: 624
    functionName: compositor_init_proximity_sensor2d
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 1
    functionsReached:
    - mpeg4_sensor_created
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_proximity_sensor2d(GF_Compositor *compositor,
      GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:636,1
    - Dst: mpeg4_sensor_deleted
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:637,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:638,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 640
      start: 633
    functionDepth: 3
    functionLinenumber: 633
    functionLinenumberEnd: 640
    functionName: DestroyTouchSensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_private
    - mpeg4_sensor_deleted
    linkageType: ''
    returnType: void
    signature: void DestroyTouchSensor(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 645
      start: 642
    functionDepth: 0
    functionLinenumber: 642
    functionLinenumberEnd: 645
    functionName: ts_is_enabled
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool ts_is_enabled(GF_Node *n)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:666,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:667,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:669,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:676,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:684,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:694,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:696,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:698,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 45
    argCount: 5
    argNames:
    - sh
    - is_over
    - is_cancel
    - ev
    - compositor
    argTypes:
    - GF_SensorHandler*
    - Bool
    - Bool
    - GF_Event*
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 702
      start: 647
    functionDepth: 5
    functionLinenumber: 647
    functionLinenumberEnd: 702
    functionName: OnTouchSensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    - gf_node_get_scene_time
    linkageType: ''
    returnType: Bool
    signature: Bool OnTouchSensor(GF_SensorHandler *sh, Bool is_over, Bool is_cancel,
      GF_Event *ev, GF_Compositor *compositor)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:706,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 708
      start: 704
    functionDepth: 2
    functionLinenumber: 704
    functionLinenumberEnd: 708
    functionName: touch_sensor_get_handler
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: GF_SensorHandler
    signature: GF_SensorHandler *touch_sensor_get_handler(GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:714,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:716,1
    - Dst: mpeg4_sensor_created
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:724,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:725,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:726,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 727
      start: 711
    functionDepth: 3
    functionLinenumber: 711
    functionLinenumberEnd: 727
    functionName: compositor_init_touch_sensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 1
    functionsReached:
    - mpeg4_sensor_created
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_touch_sensor(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:742,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:743,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:744,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:749,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:750,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:753,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:754,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:766,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:767,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:768,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:775,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:778,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:780,1
    - Dst: camera_get_orientation
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:781,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:787,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:791,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:792,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:793,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 49
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 731
    functionDepth: 5
    functionLinenumber: 731
    functionLinenumberEnd: 795
    functionName: TraverseProximitySensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_vec_add
    - gf_node_event_out
    - gf_vec_diff
    - gf_bbox_refresh
    - gf_mx_inverse
    - gf_node_get_scene_time
    - gf_mx_copy
    - camera_get_orientation
    - gf_mx_apply_vec
    linkageType: ''
    returnType: void
    signature: void TraverseProximitySensor(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:799,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 800
      start: 797
    functionDepth: 2
    functionLinenumber: 797
    functionLinenumberEnd: 800
    functionName: compositor_init_proximity_sensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_proximity_sensor(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:815,1
    - Dst: mpeg4_sensor_deleted
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:816,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:817,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 812
    functionDepth: 3
    functionLinenumber: 812
    functionLinenumberEnd: 819
    functionName: DestroyPlaneSensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_private
    - mpeg4_sensor_deleted
    linkageType: ''
    returnType: void
    signature: void DestroyPlaneSensor(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 825
      start: 821
    functionDepth: 0
    functionLinenumber: 821
    functionLinenumberEnd: 825
    functionName: ps_is_enabled
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool ps_is_enabled(GF_Node *n)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:831,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:840,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:843,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:850,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:851,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:854,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:856,1
    - Dst: gf_mx_apply_ray
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:864,1
    - Dst: gf_plane_intersect_line
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:865,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:867,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:869,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:880,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:887,1
    - Dst: gf_sg_use_pixel_metrics
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:893,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:893,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:894,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:894,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:927,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 97
    argCount: 5
    argNames:
    - sh
    - is_over
    - is_cancel
    - ev
    - compositor
    argTypes:
    - GF_SensorHandler*
    - Bool
    - Bool
    - GF_Event*
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 932
      start: 827
    functionDepth: 5
    functionLinenumber: 827
    functionLinenumberEnd: 932
    functionName: OnPlaneSensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_vec_dot
    - gf_node_event_out
    - INT2FIX
    - gf_plane_intersect_line
    - gf_vec_diff
    - gf_divfix
    - gf_sg_use_pixel_metrics
    - gf_node_get_graph
    - gf_mx_copy
    - gf_mx_apply_ray
    - gf_node_get_private
    linkageType: ''
    returnType: Bool
    signature: Bool OnPlaneSensor(GF_SensorHandler *sh, Bool is_over, Bool is_cancel,
      GF_Event *ev, GF_Compositor *compositor)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:936,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 938
      start: 934
    functionDepth: 2
    functionLinenumber: 934
    functionLinenumberEnd: 938
    functionName: plane_sensor_get_handler
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: GF_SensorHandler
    signature: GF_SensorHandler *plane_sensor_get_handler(GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:943,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:945,1
    - Dst: mpeg4_sensor_created
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:953,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:954,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:955,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 956
      start: 940
    functionDepth: 3
    functionLinenumber: 940
    functionLinenumberEnd: 956
    functionName: compositor_init_plane_sensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 1
    functionsReached:
    - mpeg4_sensor_created
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_plane_sensor(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:971,1
    - Dst: mpeg4_sensor_deleted
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:972,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:973,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 975
      start: 968
    functionDepth: 3
    functionLinenumber: 968
    functionLinenumberEnd: 975
    functionName: DestroyCylinderSensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_private
    - mpeg4_sensor_deleted
    linkageType: ''
    returnType: void
    signature: void DestroyCylinderSensor(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 981
      start: 977
    functionDepth: 0
    functionLinenumber: 977
    functionLinenumberEnd: 981
    functionName: cs_is_enabled
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool cs_is_enabled(GF_Node *n)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:987,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:995,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:998,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1009,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1012,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1013,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1014,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1015,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1016,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1019,1
    - Dst: gf_acos
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1022,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1023,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1041,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1052,1
    - Dst: gf_mx_apply_ray
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1056,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1059,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1059,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1060,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1060,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1063,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1063,1
    - Dst: gf_plane_intersect_line
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1066,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1075,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1077,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1081,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1082,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1083,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1084,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1085,1
    - Dst: gf_acos
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1085,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1085,1
    - Dst: fabs
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1086,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1094,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1103,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1130,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 136
    argCount: 5
    argNames:
    - sh
    - is_over
    - is_cancel
    - ev
    - compositor
    argTypes:
    - GF_SensorHandler*
    - Bool
    - Bool
    - GF_Event*
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1135
      start: 983
    functionDepth: 5
    functionLinenumber: 983
    functionLinenumberEnd: 1135
    functionName: OnCylinderSensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_vec_dot
    - gf_vec_add
    - gf_node_event_out
    - ABS
    - gf_vec_len
    - gf_vec_cross
    - gf_plane_intersect_line
    - gf_node_get_private
    - gf_vec_diff
    - gf_mx_apply_ray
    - gf_vec_norm
    - fabs
    - gf_mx_copy
    - gf_acos
    - gf_mx_apply_vec
    - gf_mulfix
    linkageType: ''
    returnType: Bool
    signature: Bool OnCylinderSensor(GF_SensorHandler *sh, Bool is_over, Bool is_cancel,
      GF_Event *ev, GF_Compositor *compositor)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1141
      start: 1137
    functionDepth: 2
    functionLinenumber: 1137
    functionLinenumberEnd: 1141
    functionName: cylinder_sensor_get_handler
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: GF_SensorHandler
    signature: GF_SensorHandler *cylinder_sensor_get_handler(GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1146,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1148,1
    - Dst: mpeg4_sensor_created
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1156,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1157,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1158,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1159
      start: 1143
    functionDepth: 3
    functionLinenumber: 1143
    functionLinenumberEnd: 1159
    functionName: compositor_init_cylinder_sensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 1
    functionsReached:
    - mpeg4_sensor_created
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_cylinder_sensor(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1174,1
    - Dst: mpeg4_sensor_deleted
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1175,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1176,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1178
      start: 1171
    functionDepth: 3
    functionLinenumber: 1171
    functionLinenumberEnd: 1178
    functionName: DestroySphereSensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_private
    - mpeg4_sensor_deleted
    linkageType: ''
    returnType: void
    signature: void DestroySphereSensor(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1184
      start: 1180
    functionDepth: 0
    functionLinenumber: 1180
    functionLinenumberEnd: 1184
    functionName: sphere_is_enabled
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool sphere_is_enabled(GF_Node *n)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1190,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1199,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1202,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1209,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1210,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1212,1
    - Dst: gf_invfix
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1212,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1215,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1226,1
    - Dst: gf_mx_apply_ray
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1229,1
    - Dst: gf_ray_hit_sphere
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1230,1
    - Dst: gf_closest_point_to_line
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1233,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1237,1
    - Dst: gf_invfix
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1237,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1238,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1239,1
    - Dst: gf_asin
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1243,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1244,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1246,1
    - Dst: gf_quat_from_rotation
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1250,1
    - Dst: gf_quat_from_rotation
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1252,1
    - Dst: gf_quat_multiply
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1253,1
    - Dst: gf_quat_to_rotation
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1255,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1256,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1263,1
    - Dst: gf_quat_from_rotation
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1279,1
    - Dst: gf_quat_from_rotation
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1280,1
    - Dst: gf_quat_multiply
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1281,1
    - Dst: gf_quat_to_rotation
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1282,1
    - Dst: gf_quat_from_rotation
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1296,1
    - Dst: gf_quat_from_rotation
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1297,1
    - Dst: gf_quat_multiply
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1298,1
    - Dst: gf_quat_to_rotation
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1299,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1308,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 111
    argCount: 5
    argNames:
    - sh
    - is_over
    - is_cancel
    - ev
    - compositor
    argTypes:
    - GF_SensorHandler*
    - Bool
    - Bool
    - GF_Event*
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1313
      start: 1186
    functionDepth: 5
    functionLinenumber: 1186
    functionLinenumberEnd: 1313
    functionName: OnSphereSensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_vec_len
    - gf_vec_dot
    - gf_node_event_out
    - gf_quat_multiply
    - gf_vec_scale
    - gf_vec_cross
    - gf_quat_to_rotation
    - gf_node_get_private
    - gf_asin
    - gf_vec_norm
    - gf_invfix
    - gf_quat_from_rotation
    - gf_mx_apply_ray
    - gf_mx_apply_vec
    - gf_closest_point_to_line
    - gf_ray_hit_sphere
    linkageType: ''
    returnType: Bool
    signature: Bool OnSphereSensor(GF_SensorHandler *sh, Bool is_over, Bool is_cancel,
      GF_Event *ev, GF_Compositor *compositor)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1317,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1319
      start: 1315
    functionDepth: 2
    functionLinenumber: 1315
    functionLinenumberEnd: 1319
    functionName: sphere_get_handler
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: GF_SensorHandler
    signature: GF_SensorHandler *sphere_get_handler(GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1324,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1326,1
    - Dst: mpeg4_sensor_created
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1334,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1335,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1336,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1337
      start: 1321
    functionDepth: 3
    functionLinenumber: 1321
    functionLinenumberEnd: 1337
    functionName: compositor_init_sphere_sensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 1
    functionsReached:
    - mpeg4_sensor_created
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_sphere_sensor(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1348,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1349,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1350,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1357,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1359,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1360,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1361,1
    - Dst: visual_3d_node_cull
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1364,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1369,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1370,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1371,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1375,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1376,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1377,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1380
      start: 1339
    functionDepth: 5
    functionLinenumber: 1339
    functionLinenumberEnd: 1380
    functionName: TraverseVisibilitySensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_vec_add
    - gf_node_event_out
    - gf_vec_scale
    - visual_3d_node_cull
    - gf_vec_diff
    - gf_bbox_refresh
    - gf_node_get_scene_time
    linkageType: ''
    returnType: void
    signature: void TraverseVisibilitySensor(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1384,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1385
      start: 1382
    functionDepth: 2
    functionLinenumber: 1382
    functionLinenumberEnd: 1385
    functionName: compositor_init_visibility_sensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_visibility_sensor(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compositor_mpeg4_get_sensor_handler_ex
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1391,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1392
      start: 1389
    functionDepth: 1
    functionLinenumber: 1389
    functionLinenumberEnd: 1392
    functionName: compositor_mpeg4_get_sensor_handler
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - compositor_mpeg4_get_sensor_handler_ex
    linkageType: ''
    returnType: GF_SensorHandler
    signature: GF_SensorHandler *compositor_mpeg4_get_sensor_handler(GF_Node *n)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1397,1
    - Dst: gf_sc_anchor_get_handler
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1401,1
    - Dst: gf_sc_anchor_get_handler
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1406,1
    - Dst: disc_sensor_get_handler
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1410,1
    - Dst: plane_sensor2d_get_handler
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1413,1
    - Dst: proximity_sensor2d_get_handler
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1416,1
    - Dst: touch_sensor_get_handler
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1419,1
    - Dst: touch_sensor_get_handler
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1423,1
    - Dst: cylinder_sensor_get_handler
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1428,1
    - Dst: plane_sensor_get_handler
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1431,1
    - Dst: sphere_get_handler
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1434,1
    - Dst: cylinder_sensor_get_handler
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1438,1
    - Dst: plane_sensor_get_handler
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1441,1
    - Dst: sphere_get_handler
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1444,1
    - Dst: GF_SensorHandler*::IsEnabled
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1451,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 51
    argCount: 2
    argNames:
    - n
    - skip_anchors
    argTypes:
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1453
      start: 1393
    functionDepth: 3
    functionLinenumber: 1393
    functionLinenumberEnd: 1453
    functionName: compositor_mpeg4_get_sensor_handler_ex
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 5
    functionsReached:
    - gf_node_get_tag
    - GF_SensorHandler*::IsEnabled
    - gf_sc_anchor_get_handler
    - cylinder_sensor_get_handler
    - touch_sensor_get_handler
    - plane_sensor2d_get_handler
    - proximity_sensor2d_get_handler
    - sphere_get_handler
    - plane_sensor_get_handler
    - disc_sensor_get_handler
    linkageType: ''
    returnType: GF_SensorHandler
    signature: GF_SensorHandler *compositor_mpeg4_get_sensor_handler_ex(GF_Node *n,
      Bool skip_anchors)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compositor_mpeg4_get_sensor_handler
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1457,1
    - Dst: GF_SensorHandler*::IsEnabled
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1458,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1460
      start: 1455
    functionDepth: 2
    functionLinenumber: 1455
    functionLinenumberEnd: 1460
    functionName: compositor_mpeg4_is_sensor_node
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - compositor_mpeg4_get_sensor_handler
    - GF_SensorHandler*::IsEnabled
    linkageType: ''
    returnType: Bool
    signature: Bool compositor_mpeg4_is_sensor_node(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1465,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1466,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1468
      start: 1462
    functionDepth: 2
    functionLinenumber: 1462
    functionLinenumberEnd: 1468
    functionName: traverse_envtest
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    - gf_list_del_item
    linkageType: ''
    returnType: void
    signature: void traverse_envtest(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1478,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1480,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1494,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1499,1
    - Dst: strcpy
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1504,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1508,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1513,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1517,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1522,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1526,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1531,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1535,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1540,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1544,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1545,1
    - Dst: strcpy
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1546,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1550,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1551,1
    - Dst: strcpy
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1552,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1556,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1557,1
    - Dst: strcpy
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1558,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1562,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1563,1
    - Dst: strcpy
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1564,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1570,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1574,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1578,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1580,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1581,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 102
    argCount: 2
    argNames:
    - node
    - _route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1582
      start: 1470
    functionDepth: 5
    functionLinenumber: 1470
    functionLinenumberEnd: 1582
    functionName: envtest_evaluate
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_node_event_out
    - sscanf
    - strcpy
    - sprintf
    - strcmp
    - gf_opts_get_key
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void envtest_evaluate(GF_Node *node, GF_Route *_route)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1587,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1589,1
    - Dst: envtest_evaluate
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1598,1
    - Dst: envtest_evaluate
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1603,1
    - Dst: envtest_evaluate
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1607,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 2
    argNames:
    - compositor
    - param_type
    argTypes:
    - GF_Compositor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1612
      start: 1584
    functionDepth: 6
    functionLinenumber: 1584
    functionLinenumberEnd: 1612
    functionName: compositor_evaluate_envtests
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - envtest_evaluate
    linkageType: ''
    returnType: void
    signature: void compositor_evaluate_envtests(GF_Compositor *compositor, u32 param_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: envtest_evaluate
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1616,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1617
      start: 1614
    functionDepth: 6
    functionLinenumber: 1614
    functionLinenumberEnd: 1617
    functionName: compositor_envtest_modified
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 1
    functionsReached:
    - envtest_evaluate
    linkageType: ''
    returnType: void
    signature: void compositor_envtest_modified(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1622,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1623,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1624,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1629,1
    - Dst: compositor_envtest_modified
      Src: /src/gpac/src/compositor/mpeg4_sensors.c:1630,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1633
      start: 1619
    functionDepth: 7
    functionLinenumber: 1619
    functionLinenumberEnd: 1633
    functionName: compositor_init_envtest
    functionSourceFile: /src/gpac/src/compositor/mpeg4_sensors.c
    functionUses: 1
    functionsReached:
    - gf_node_set_private
    - compositor_envtest_modified
    - gf_list_add
    - gf_node_set_callback_function
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: void
    signature: void compositor_init_envtest(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_fetch_data
      Src: /src/gpac/src/compositor/audio_input.c:57,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/audio_input.c:60,1
    - Dst: gf_mo_is_started
      Src: /src/gpac/src/compositor/audio_input.c:66,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_input.c:67,1
    - Dst: gf_mo_adjust_clock
      Src: /src/gpac/src/compositor/audio_input.c:69,1
    - Dst: gf_mo_is_buffering
      Src: /src/gpac/src/compositor/audio_input.c:73,1
    - Dst: gf_mo_release_data
      Src: /src/gpac/src/compositor/audio_input.c:79,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_input.c:87,1
    - Dst: gf_mo_get_current_speed
      Src: /src/gpac/src/compositor/audio_input.c:91,1
    - Dst: gf_mo_get_object_time
      Src: /src/gpac/src/compositor/audio_input.c:93,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/audio_input.c:111,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/audio_input.c:112,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_input.c:114,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_input.c:118,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_input.c:137,1
    - Dst: gf_mo_release_data
      Src: /src/gpac/src/compositor/audio_input.c:139,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/audio_input.c:147,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/audio_input.c:147,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_input.c:151,1
    - Dst: gf_mo_release_data
      Src: /src/gpac/src/compositor/audio_input.c:152,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_input.c:165,1
    - Dst: gf_mo_adjust_clock
      Src: /src/gpac/src/compositor/audio_input.c:166,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 101
    argCount: 4
    argNames:
    - callback
    - size
    - planar_size
    - audio_delay_ms
    argTypes:
    - void*
    - u32*
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 40
    functionDepth: 5
    functionLinenumber: 40
    functionLinenumberEnd: 171
    functionName: gf_audio_input_fetch_frame
    functionSourceFile: /src/gpac/src/compositor/audio_input.c
    functionUses: 0
    functionsReached:
    - gf_mo_get_current_speed
    - ABS
    - gf_mo_get_object_time
    - gf_mo_is_started
    - GF_LOG
    - gf_mo_fetch_data
    - FIX2INT
    - gf_mo_adjust_clock
    - gf_sc_invalidate
    - gf_mo_is_buffering
    - gf_mo_release_data
    linkageType: ''
    returnType: u8
    signature: u8 *gf_audio_input_fetch_frame(void *callback, u32 *size, u32 *planar_size,
      u32 audio_delay_ms)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_release_data
      Src: /src/gpac/src/compositor/audio_input.c:177,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - callback
    - nb_bytes
    argTypes:
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 173
    functionDepth: 4
    functionLinenumber: 173
    functionLinenumberEnd: 179
    functionName: gf_audio_input_release_frame
    functionSourceFile: /src/gpac/src/compositor/audio_input.c
    functionUses: 0
    functionsReached:
    - gf_mo_release_data
    linkageType: ''
    returnType: void
    signature: void gf_audio_input_release_frame(void *callback, u32 nb_bytes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_get_current_speed
      Src: /src/gpac/src/compositor/audio_input.c:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - callback
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 185
    functionName: gf_audio_input_get_speed
    functionSourceFile: /src/gpac/src/compositor/audio_input.c
    functionUses: 0
    functionsReached:
    - gf_mo_get_current_speed
    linkageType: ''
    returnType: Fixed
    signature: Fixed gf_audio_input_get_speed(void *callback)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_AudioInput*::snd::GetChannelVolume
      Src: /src/gpac/src/compositor/audio_input.c:191,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - callback
    - vol
    argTypes:
    - void*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 199
    functionName: gf_audio_input_get_volume
    functionSourceFile: /src/gpac/src/compositor/audio_input.c
    functionUses: 0
    functionsReached:
    - GF_AudioInput*::snd::GetChannelVolume
    linkageType: ''
    returnType: Bool
    signature: Bool gf_audio_input_get_volume(void *callback, Fixed *vol)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_check_buffering
      Src: /src/gpac/src/compositor/audio_input.c:207,1
    - Dst: gf_mo_is_muted
      Src: /src/gpac/src/compositor/audio_input.c:210,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - callback
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 201
    functionDepth: 3
    functionLinenumber: 201
    functionLinenumberEnd: 211
    functionName: gf_audio_input_is_muted
    functionSourceFile: /src/gpac/src/compositor/audio_input.c
    functionUses: 0
    functionsReached:
    - gf_mo_is_muted
    - gf_odm_check_buffering
    linkageType: ''
    returnType: Bool
    signature: Bool gf_audio_input_is_muted(void *callback)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_get_audio_info
      Src: /src/gpac/src/compositor/audio_input.c:220,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 17
    argCount: 2
    argNames:
    - aifc
    - for_recf
    argTypes:
    - GF_AudioInterface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 213
    functionDepth: 2
    functionLinenumber: 213
    functionLinenumberEnd: 235
    functionName: gf_audio_input_get_config
    functionSourceFile: /src/gpac/src/compositor/audio_input.c
    functionUses: 0
    functionsReached:
    - gf_mo_get_audio_info
    linkageType: ''
    returnType: Bool
    signature: Bool gf_audio_input_get_config(GF_AudioInterface *aifc, Bool for_recf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/audio_input.c:240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 3
    argNames:
    - ai
    - compositor
    - node
    argTypes:
    - GF_AudioInput*
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 256
    functionName: gf_sc_audio_setup
    functionSourceFile: /src/gpac/src/compositor/audio_input.c
    functionUses: 1
    functionsReached:
    - memset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_audio_setup(GF_AudioInput *ai, GF_Compositor *compositor,
      GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_audio_stop
      Src: /src/gpac/src/compositor/audio_input.c:260,1
    - Dst: gf_sc_audio_unregister
      Src: /src/gpac/src/compositor/audio_input.c:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ai
    argTypes:
    - GF_AudioInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 258
    functionDepth: 1
    functionLinenumber: 258
    functionLinenumberEnd: 262
    functionName: gf_sc_audio_predestroy
    functionSourceFile: /src/gpac/src/compositor/audio_input.c
    functionUses: 1
    functionsReached:
    - gf_sc_audio_stop
    - gf_sc_audio_unregister
    linkageType: ''
    returnType: void
    signature: void gf_sc_audio_predestroy(GF_AudioInput *ai)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_register
      Src: /src/gpac/src/compositor/audio_input.c:270,1
    - Dst: gf_mo_play
      Src: /src/gpac/src/compositor/audio_input.c:275,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 5
    argNames:
    - ai
    - url
    - clipBegin
    - clipEnd
    - lock_timeline
    argTypes:
    - GF_AudioInput*
    - MFURL*
    - Double
    - Double
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 264
    functionDepth: 3
    functionLinenumber: 264
    functionLinenumberEnd: 283
    functionName: gf_sc_audio_open
    functionSourceFile: /src/gpac/src/compositor/audio_input.c
    functionUses: 2
    functionsReached:
    - gf_mo_play
    - gf_mo_register
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_audio_open(GF_AudioInput *ai, MFURL *url, Double clipBegin,
      Double clipEnd, Bool lock_timeline)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_input.c:291,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/audio_input.c:293,1
    - Dst: gf_mo_stop
      Src: /src/gpac/src/compositor/audio_input.c:295,1
    - Dst: gf_mo_unregister
      Src: /src/gpac/src/compositor/audio_input.c:297,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_input.c:300,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - ai
    argTypes:
    - GF_AudioInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 285
    functionDepth: 6
    functionLinenumber: 285
    functionLinenumberEnd: 302
    functionName: gf_sc_audio_stop
    functionSourceFile: /src/gpac/src/compositor/audio_input.c
    functionUses: 3
    functionsReached:
    - gf_mo_stop
    - gf_assert
    - gf_mixer_lock
    - gf_mo_unregister
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_audio_stop(GF_AudioInput *ai)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_release_data
      Src: /src/gpac/src/compositor/audio_input.c:308,1
    - Dst: gf_mo_restart
      Src: /src/gpac/src/compositor/audio_input.c:312,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ai
    argTypes:
    - GF_AudioInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 304
    functionDepth: 4
    functionLinenumber: 304
    functionLinenumberEnd: 313
    functionName: gf_sc_audio_restart
    functionSourceFile: /src/gpac/src/compositor/audio_input.c
    functionUses: 1
    functionsReached:
    - gf_mo_release_data
    - gf_mo_restart
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_audio_restart(GF_AudioInput *ai)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_url_changed
      Src: /src/gpac/src/compositor/audio_input.c:319,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ai
    - url
    argTypes:
    - GF_AudioInput*
    - MFURL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 315
    functionDepth: 4
    functionLinenumber: 315
    functionLinenumberEnd: 320
    functionName: gf_sc_audio_check_url
    functionSourceFile: /src/gpac/src/compositor/audio_input.c
    functionUses: 0
    functionsReached:
    - gf_mo_url_changed
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_audio_check_url(GF_AudioInput *ai, MFURL *url)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_ar_remove_src
      Src: /src/gpac/src/compositor/audio_input.c:341,1
    - Dst: GF_TraverseState*::audio_parent::add_source
      Src: /src/gpac/src/compositor/audio_input.c:344,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/audio_input.c:352,1
    - Dst: gf_sc_ar_add_src
      Src: /src/gpac/src/compositor/audio_input.c:355,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 2
    argNames:
    - ai
    - tr_state
    argTypes:
    - GF_AudioInput*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 322
    functionDepth: 5
    functionLinenumber: 322
    functionLinenumberEnd: 359
    functionName: gf_sc_audio_register
    functionSourceFile: /src/gpac/src/compositor/audio_input.c
    functionUses: 1
    functionsReached:
    - gf_sc_ar_add_src
    - GF_TraverseState*::audio_parent::add_source
    - gf_sc_ar_remove_src
    - gf_sc_invalidate
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_audio_register(GF_AudioInput *ai, GF_TraverseState
      *tr_state)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_ar_remove_src
      Src: /src/gpac/src/compositor/audio_input.c:368,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/audio_input.c:371,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ai
    argTypes:
    - GF_AudioInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 361
    functionDepth: 5
    functionLinenumber: 361
    functionLinenumberEnd: 373
    functionName: gf_sc_audio_unregister
    functionSourceFile: /src/gpac/src/compositor/audio_input.c
    functionUses: 3
    functionsReached:
    - gf_sc_invalidate
    - gf_sc_ar_remove_src
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_audio_unregister(GF_AudioInput *ai)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 68
    functionName: CHECK_GL_EXT
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_GL_EXT(name)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: glGetString
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:80,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:82,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:84,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:85,1
    - Dst: memset
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:89,1
    - Dst: CHECK_GL_EXT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:91,1
    - Dst: CHECK_GL_EXT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:91,1
    - Dst: CHECK_GL_EXT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:91,1
    - Dst: CHECK_GL_EXT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:93,1
    - Dst: CHECK_GL_EXT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:95,1
    - Dst: CHECK_GL_EXT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:97,1
    - Dst: CHECK_GL_EXT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:99,1
    - Dst: CHECK_GL_EXT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:99,1
    - Dst: CHECK_GL_EXT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:101,1
    - Dst: CHECK_GL_EXT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:105,1
    - Dst: CHECK_GL_EXT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:107,1
    - Dst: CHECK_GL_EXT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:107,1
    - Dst: CHECK_GL_EXT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:115,1
    - Dst: CHECK_GL_EXT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:122,1
    - Dst: CHECK_GL_EXT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:122,1
    - Dst: CHECK_GL_EXT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:127,1
    - Dst: glGetIntegerv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:135,1
    - Dst: CHECK_GL_EXT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:137,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:152,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:168,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:177,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:178,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:182,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:183,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 75
    argCount: 2
    argNames:
    - compositor
    - has_gl_context
    argTypes:
    - GF_Compositor*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 188
    functionName: gf_sc_load_opengl_extensions
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_opts_set_key
    - gf_file_exists
    - GF_LOG
    - glGetIntegerv
    - CHECK_GL_EXT
    - memset
    - gf_opts_get_key
    - glGetString
    linkageType: ''
    returnType: void
    signature: void gf_sc_load_opengl_extensions(GF_Compositor *compositor, Bool has_gl_context)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:363,1
    - Dst: glShaderSource
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:364,1
    - Dst: glCompileShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:365,1
    - Dst: glGetShaderiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:367,1
    - Dst: glGetShaderiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:369,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:371,1
    - Dst: glGetInfoLogARB
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:373,1
    - Dst: glGetShaderInfoLog
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:375,1
    - Dst: glGetInfoLogARB
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:377,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:379,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:380,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:381,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 3
    argNames:
    - shader_id
    - name
    - source
    argTypes:
    - GF_SHADERID
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 356
    functionDepth: 1
    functionLinenumber: 356
    functionLinenumberEnd: 385
    functionName: visual_3d_compile_shader
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - glGetInfoLogARB
    - glGetShaderInfoLog
    - glGetShaderiv
    - GF_LOG
    - strlen
    - glCompileShader
    - glShaderSource
    - gf_malloc
    linkageType: ''
    returnType: Bool
    signature: Bool visual_3d_compile_shader(GF_SHADERID shader_id, const char *name,
      const char *source)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_load_data
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:392,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:394,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:394,1
    - Dst: glCreateShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:396,1
    - Dst: visual_3d_compile_shader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:397,1
    - Dst: glDeleteShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:398,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:401,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - src_path
    - shader_type
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 386
    functionDepth: 2
    functionLinenumber: 386
    functionLinenumberEnd: 404
    functionName: visual_3d_shader_from_source_file
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - glDeleteShader
    - GF_LOG
    - glCreateShader
    - visual_3d_compile_shader
    - gf_error_to_string
    - gf_file_load_data
    linkageType: ''
    returnType: GF_SHADERID
    signature: GF_SHADERID visual_3d_shader_from_source_file(const char *src_path,
      u32 shader_type)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:418,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:419,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:422,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:423,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:424,1
    - Dst: strcat
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:425,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:429,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:430,1
    - Dst: strcat
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:431,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:435,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:436,1
    - Dst: strcat
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:437,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:442,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:443,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:444,1
    - Dst: strcat
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:445,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:450,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:451,1
    - Dst: strcat
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:452,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:455,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:456,1
    - Dst: strcat
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:457,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:463,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:466,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:466,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:470,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:473,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:475,1
    - Dst: gf_gl_txw_insert_fragment_shader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:478,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:483,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:486,1
    - Dst: glCreateShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:488,1
    - Dst: visual_3d_compile_shader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:490,1
    - Dst: glDeleteShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:491,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:495,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:496,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:497,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 63
    argCount: 4
    argNames:
    - src_path
    - shader_type
    - flags
    - pixfmt
    argTypes:
    - char*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 412
    functionDepth: 2
    functionLinenumber: 412
    functionLinenumberEnd: 500
    functionName: visual_3d_shader_with_flags
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - strcat
    - glDeleteShader
    - gf_strdup
    - gf_gl_txw_insert_fragment_shader
    - gf_free
    - gf_file_load_data
    - GF_LOG
    - glCreateShader
    - sprintf
    - strstr
    - visual_3d_compile_shader
    - gf_error_to_string
    - gf_dynstrcat
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: GF_SHADERID
    signature: GF_SHADERID visual_3d_shader_with_flags(const char *src_path, u32 shader_type,
      u32 flags, u32 pixfmt)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: glCreateProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:510,1
    - Dst: glCreateShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:514,1
    - Dst: visual_3d_compile_shader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:515,1
    - Dst: glCreateShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:520,1
    - Dst: visual_3d_compile_shader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:521,1
    - Dst: glCreateShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:524,1
    - Dst: visual_3d_compile_shader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:525,1
    - Dst: glCreateShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:528,1
    - Dst: visual_3d_compile_shader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:529,1
    - Dst: glCreateShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:532,1
    - Dst: visual_3d_compile_shader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:533,1
    - Dst: glCreateShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:536,1
    - Dst: visual_3d_compile_shader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:537,1
    - Dst: visual_3d_shader_from_source_file
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:541,1
    - Dst: glAttachShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:548,1
    - Dst: glAttachShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:549,1
    - Dst: glLinkProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:550,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:552,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:556,1
    - Dst: glGetProgramInfoLog
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:557,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:558,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:561,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:565,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 58
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 569
      start: 502
    functionDepth: 3
    functionLinenumber: 502
    functionLinenumberEnd: 569
    functionName: visual_3d_init_stereo_shaders
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glGetProgramInfoLog
    - glCreateProgram
    - GF_LOG
    - glCreateShader
    - glGetProgramiv
    - visual_3d_compile_shader
    - visual_3d_shader_from_source_file
    - glLinkProgram
    - GL_CHECK_ERR
    - glAttachShader
    linkageType: ''
    returnType: void
    signature: void visual_3d_init_stereo_shaders(GF_VisualManager *visual)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 571
    functionDepth: 0
    functionLinenumber: 571
    functionLinenumberEnd: 572
    functionName: DEL_SHADER
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEL_SHADER(_a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 572
    functionDepth: 0
    functionLinenumber: 572
    functionLinenumberEnd: 573
    functionName: DEL_PROGRAM
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEL_PROGRAM(_a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:579,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:581,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - glsl_program
    - uniform_name
    argTypes:
    - GF_SHADERID
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 577
    functionDepth: 1
    functionLinenumber: 577
    functionLinenumberEnd: 584
    functionName: gf_glGetUniformLocation
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - glGetUniformLocation
    linkageType: ''
    returnType: GLint
    signature: GLint gf_glGetUniformLocation(GF_SHADERID glsl_program, const char
      *uniform_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:591,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:593,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - glsl_program
    - attrib_name
    argTypes:
    - GF_SHADERID
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 596
      start: 589
    functionDepth: 1
    functionLinenumber: 589
    functionLinenumberEnd: 596
    functionName: gf_glGetAttribLocation
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - glGetAttribLocation
    linkageType: ''
    returnType: GLint
    signature: GLint gf_glGetAttribLocation(GF_SHADERID glsl_program, const char *attrib_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:604,1
    - Dst: glValidateProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:605,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:606,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:607,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:608,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:609,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:610,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:611,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:612,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:613,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:614,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - progObj
    argTypes:
    - GF_SHADERID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 615
      start: 601
    functionDepth: 1
    functionLinenumber: 601
    functionLinenumberEnd: 615
    functionName: gf_glQueryProgram
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - GL_CHECK_ERR
    - glValidateProgram
    - printf
    - glGetProgramiv
    linkageType: ''
    returnType: void
    signature: void gf_glQueryProgram(GF_SHADERID progObj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:622,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:624,1
    - Dst: glGetUniformfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:627,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:628,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:630,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - progObj
    - name
    - index
    argTypes:
    - GF_SHADERID
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 617
    functionDepth: 1
    functionLinenumber: 617
    functionLinenumberEnd: 631
    functionName: gf_glQueryUniform
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glGetUniformfv
    - GF_LOG
    - glGetUniformLocation
    linkageType: ''
    returnType: void
    signature: void gf_glQueryUniform(GF_SHADERID progObj, const char *name, int index)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:639,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:641,1
    - Dst: glGetVertexAttribfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:644,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:645,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:647,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - progObj
    - name
    - index
    - param
    argTypes:
    - GF_SHADERID
    - char*
    - int
    - GLenum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 648
      start: 634
    functionDepth: 1
    functionLinenumber: 634
    functionLinenumberEnd: 648
    functionName: gf_glQueryAttrib
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - glGetVertexAttribfv
    - glGetAttribLocation
    linkageType: ''
    returnType: void
    signature: void gf_glQueryAttrib(GF_SHADERID progObj, const char *name, int index,
      GLenum param)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:657,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:658,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:659,1
    - Dst: glGetActiveUniform
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:665,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:667,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:668,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:671,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:674,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:677,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:680,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:683,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:688,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:693,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:696,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:699,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:702,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:706,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 47
    argCount: 1
    argNames:
    - progObj
    argTypes:
    - GF_SHADERID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 707
      start: 650
    functionDepth: 0
    functionLinenumber: 650
    functionLinenumberEnd: 707
    functionName: gf_glQueryUniforms
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - printf
    - glGetActiveUniform
    - glGetProgramiv
    - glGetUniformLocation
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void gf_glQueryUniforms(GF_SHADERID progObj)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:716,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:717,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:718,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:719,1
    - Dst: glGetActiveAttrib
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:725,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:727,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:728,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:731,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:734,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:737,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:740,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:743,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:748,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:753,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:756,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:759,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:762,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:766,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 48
    argCount: 1
    argNames:
    - progObj
    argTypes:
    - GF_SHADERID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 767
      start: 709
    functionDepth: 0
    functionLinenumber: 709
    functionLinenumberEnd: 767
    functionName: gf_glQueryAttributes
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - printf
    - glGetActiveAttrib
    - glGetProgramiv
    - gf_malloc
    - glGetAttribLocation
    linkageType: ''
    returnType: void
    signature: void gf_glQueryAttributes(GF_SHADERID progObj)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:775,1
    - Dst: glGetError
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:780,1
    - Dst: glCreateProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:781,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:783,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:784,1
    - Dst: visual_3d_shader_with_flags
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:787,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:789,1
    - Dst: DEL_PROGRAM
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:790,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:791,1
    - Dst: visual_3d_shader_with_flags
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:797,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:799,1
    - Dst: DEL_PROGRAM
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:800,1
    - Dst: DEL_SHADER
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:801,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:802,1
    - Dst: glAttachShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:805,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:806,1
    - Dst: glAttachShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:807,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:808,1
    - Dst: glLinkProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:810,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:811,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:813,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:817,1
    - Dst: glGetProgramInfoLog
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:818,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:819,1
    - Dst: DEL_PROGRAM
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:820,1
    - Dst: DEL_SHADER
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:821,1
    - Dst: DEL_SHADER
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:822,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:823,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:826,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 50
    argCount: 3
    argNames:
    - visual
    - flags
    - pix_fmt
    argTypes:
    - GF_VisualManager*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 828
      start: 770
    functionDepth: 3
    functionLinenumber: 770
    functionLinenumberEnd: 828
    functionName: visual_3d_build_program
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - visual_3d_shader_with_flags
    - glGetProgramInfoLog
    - glCreateProgram
    - DEL_PROGRAM
    - GF_SAFEALLOC
    - GF_LOG
    - DEL_SHADER
    - glGetProgramiv
    - glLinkProgram
    - glGetError
    - GL_CHECK_ERR
    - glAttachShader
    linkageType: ''
    returnType: GF_GLProgInstance
    signature: GF_GLProgInstance *visual_3d_build_program(GF_VisualManager *visual,
      u32 flags, u32 pix_fmt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:833,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:835,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:837,1
    - Dst: visual_3d_build_program
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:841,1
    - Dst: glDeleteShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:844,1
    - Dst: glDeleteShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:845,1
    - Dst: glDeleteProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:846,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:847,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 849
      start: 830
    functionDepth: 4
    functionLinenumber: 830
    functionLinenumberEnd: 849
    functionName: visual_3d_init_generic_shaders
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - glDeleteProgram
    - glDeleteShader
    - gf_file_exists
    - visual_3d_build_program
    - gf_list_count
    linkageType: ''
    returnType: Bool
    signature: Bool visual_3d_init_generic_shaders(GF_VisualManager *visual)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: visual_3d_init_generic_shaders
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:861,1
    - Dst: gf_sc_reset_graphics
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:867,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:869,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 872
      start: 851
    functionDepth: 5
    functionLinenumber: 851
    functionLinenumberEnd: 872
    functionName: visual_3d_init_shaders
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_sc_reset_graphics
    - visual_3d_init_generic_shaders
    - gf_sc_next_frame_state
    linkageType: ''
    returnType: void
    signature: void visual_3d_init_shaders(GF_VisualManager *visual)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: DEL_SHADER
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:883,1
    - Dst: DEL_SHADER
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:884,1
    - Dst: DEL_PROGRAM
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:885,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:888,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:889,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:893,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:897,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:898,1
    - Dst: DEL_SHADER
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:899,1
    - Dst: DEL_SHADER
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:900,1
    - Dst: DEL_PROGRAM
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:901,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:902,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 905
      start: 877
    functionDepth: 1
    functionLinenumber: 877
    functionLinenumberEnd: 905
    functionName: visual_3d_reset_graphics
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - DEL_PROGRAM
    - mesh_free
    - DEL_SHADER
    - gf_list_count
    - glDeleteTextures
    linkageType: ''
    returnType: void
    signature: void visual_3d_reset_graphics(GF_VisualManager *visual)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:913,1
    - Dst: glScissor
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:930,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:932,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 2
    argNames:
    - visual
    - tr_state
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 935
      start: 907
    functionDepth: 0
    functionLinenumber: 907
    functionLinenumberEnd: 935
    functionName: visual_3d_set_clipper_scissor
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glDisable
    - glScissor
    - glEnable
    linkageType: ''
    returnType: void
    signature: void visual_3d_set_clipper_scissor(GF_VisualManager *visual, GF_TraverseState
      *tr_state)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:948,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:950,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:953,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:956,1
    - Dst: glUniformMatrix4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:957,1
    - Dst: glUniformMatrix4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:959,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:961,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - program
    - mat
    - name
    argTypes:
    - GF_SHADERID
    - Fixed*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 962
      start: 940
    functionDepth: 1
    functionLinenumber: 940
    functionLinenumberEnd: 962
    functionName: visual_3d_load_matrix_shaders
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - glUniformMatrix4fv
    - glGetUniformLocation
    - GL_CHECK_ERR
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void visual_3d_load_matrix_shaders(GF_SHADERID program, Fixed *mat,
      const char *name)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:974,1
    - Dst: glGenTextures
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:975,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:999,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1000,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1001,1
    - Dst: mesh_new_rectangle
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1002,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1006,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1007,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1018,1
    - Dst: visual_3d_init_stereo_shaders
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1020,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 40
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1024
      start: 966
    functionDepth: 4
    functionLinenumber: 966
    functionLinenumberEnd: 1024
    functionName: visual_3d_init_autostereo
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - mesh_new_rectangle
    - visual_3d_init_stereo_shaders
    - INT2FIX
    - GF_LOG
    - new_mesh
    - glGenTextures
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err visual_3d_init_autostereo(GF_VisualManager *visual)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: glFlush
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1035,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1037,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1040,1
    - Dst: glBindTexture
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1043,1
    - Dst: glTexParameterf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1046,1
    - Dst: glTexParameterf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1047,1
    - Dst: glTexParameterf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1048,1
    - Dst: glTexParameterf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1049,1
    - Dst: glTexEnvf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1050,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1051,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1053,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1054,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1055,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1056,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1057,1
    - Dst: glCopyTexImage2D
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1060,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1061,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1064,1
    - Dst: glClear
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1067,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1068,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1071,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1072,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1075,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1076,1
    - Dst: glViewport
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1079,1
    - Dst: glUseProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1085,1
    - Dst: gf_mx_ortho
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1088,1
    - Dst: visual_3d_load_matrix_shaders
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1089,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1094,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1095,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1099,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1101,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1102,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1104,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1107,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1110,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1111,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1113,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1117,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1118,1
    - Dst: glActiveTexture
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1121,1
    - Dst: glTexParameterf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1124,1
    - Dst: glTexParameterf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1125,1
    - Dst: glTexParameterf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1126,1
    - Dst: glTexParameterf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1127,1
    - Dst: glTexEnvf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1128,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1131,1
    - Dst: glBindTexture
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1133,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1135,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1137,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1139,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1144,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1146,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1149,1
    - Dst: glDisableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1154,1
    - Dst: glDisableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1155,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1156,1
    - Dst: glUseProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1158,1
    - Dst: glActiveTexture
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1162,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1163,1
    - Dst: glBindTexture
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1165,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1166,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1169,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 82
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1172
      start: 1026
    functionDepth: 2
    functionLinenumber: 1026
    functionLinenumberEnd: 1172
    functionName: visual_3d_end_auto_stereo_pass
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glPixelStorei
    - visual_3d_load_matrix_shaders
    - GL_CHECK_ERR
    - glActiveTexture
    - glGetAttribLocation
    - glCopyTexImage2D
    - glBindTexture
    - glViewport
    - glDisable
    - sprintf
    - glTexParameteri
    - glEnableVertexAttribArray
    - glGetUniformLocation
    - glVertexAttribPointer
    - glDrawElements
    - glUniform1i
    - glEnable
    - glFlush
    - INT2FIX
    - gf_mx_ortho
    - glDisableVertexAttribArray
    - glTexParameterf
    - glClear
    - glTexEnvf
    - glUseProgram
    linkageType: ''
    returnType: void
    signature: void visual_3d_end_auto_stereo_pass(GF_VisualManager *visual)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1180,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1181,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1182,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1184,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1187,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1188,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1189,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1191,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1196,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1199,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1201,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1204,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1206,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1212
      start: 1175
    functionDepth: 0
    functionLinenumber: 1175
    functionLinenumberEnd: 1212
    functionName: visual_3d_setup_quality
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glDisable
    - glEnable
    - glHint
    linkageType: ''
    returnType: void
    signature: void visual_3d_setup_quality(GF_VisualManager *visual)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: glClear
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1219,1
    - Dst: glBlendFunc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1224,1
    - Dst: glDepthFunc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1225,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1227,1
    - Dst: glFrontFace
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1228,1
    - Dst: glCullFace
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1229,1
    - Dst: glClearDepthx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1232,1
    - Dst: glLightModelx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1233,1
    - Dst: glMaterialx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1234,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1234,1
    - Dst: glBlendFunc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1235,1
    - Dst: glClearDepthf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1237,1
    - Dst: glClearDepth
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1239,1
    - Dst: glLightModeli
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1240,1
    - Dst: glLightModeli
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1241,1
    - Dst: glMaterialf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1242,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1247,1
    - Dst: glShadeModel
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1248,1
    - Dst: glGetIntegerv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1249,1
    - Dst: glGetIntegerv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1254,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1259,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1260,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1261,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1262,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1263,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1264,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1265,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1269,1
    - Dst: visual_3d_setup_quality
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1272,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1274,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1275,1
    - Dst: glClear
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1282,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 44
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1283
      start: 1214
    functionDepth: 1
    functionLinenumber: 1214
    functionLinenumberEnd: 1283
    functionName: visual_3d_setup
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - glCullFace
    - glLightModelx
    - glClearDepthf
    - glFrontFace
    - glGetIntegerv
    - glDepthFunc
    - glMaterialx
    - glDisable
    - glShadeModel
    - glBlendFunc
    - glClear
    - glClearDepthx
    - glClearDepth
    - visual_3d_setup_quality
    - glMaterialf
    - glLightModeli
    - glEnable
    linkageType: ''
    returnType: void
    signature: void visual_3d_setup(GF_VisualManager *visual)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1289,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1290,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1291,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1293,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1295,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1297,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1298,1
    - Dst: visual_3d_setup_quality
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1300,1
    - Dst: visual_3d_enable_depth_buffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - visual
    - 'on'
    argTypes:
    - GF_VisualManager*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1305
      start: 1285
    functionDepth: 1
    functionLinenumber: 1285
    functionLinenumberEnd: 1305
    functionName: visual_3d_set_background_state
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 2
    functionsReached:
    - visual_3d_enable_depth_buffer
    - visual_3d_setup_quality
    - glDisable
    - glHint
    linkageType: ''
    returnType: void
    signature: void visual_3d_set_background_state(GF_VisualManager *visual, Bool
      on)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1314,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1317,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1319,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1322,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1324,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - visual
    - bOn
    argTypes:
    - GF_VisualManager*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1338
      start: 1309
    functionDepth: 0
    functionLinenumber: 1309
    functionLinenumberEnd: 1338
    functionName: visual_3d_enable_antialias
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 3
    functionsReached:
    - glDisable
    - glEnable
    linkageType: ''
    returnType: void
    signature: void visual_3d_enable_antialias(GF_VisualManager *visual, Bool bOn)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1343,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1345,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - visual
    - 'on'
    argTypes:
    - GF_VisualManager*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1347
      start: 1340
    functionDepth: 0
    functionLinenumber: 1340
    functionLinenumberEnd: 1347
    functionName: visual_3d_enable_depth_buffer
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 1
    functionsReached:
    - glDisable
    - glEnable
    linkageType: ''
    returnType: void
    signature: void visual_3d_enable_depth_buffer(GF_VisualManager *visual, Bool on)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: glViewport
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1351,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1351,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1351,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1351,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1351,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - visual
    - vp
    argTypes:
    - GF_VisualManager*
    - GF_Rect
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1352
      start: 1349
    functionDepth: 1
    functionLinenumber: 1349
    functionLinenumberEnd: 1352
    functionName: visual_3d_set_viewport
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 1
    functionsReached:
    - FIX2INT
    - glViewport
    linkageType: ''
    returnType: void
    signature: void visual_3d_set_viewport(GF_VisualManager *visual, GF_Rect vp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1358,1
    - Dst: glScissor
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1359,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1359,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1359,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1359,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1359,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1361,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - visual
    - vp
    argTypes:
    - GF_VisualManager*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1364
      start: 1354
    functionDepth: 1
    functionLinenumber: 1354
    functionLinenumberEnd: 1364
    functionName: visual_3d_set_scissor
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - FIX2INT
    - glDisable
    - glScissor
    - glEnable
    linkageType: ''
    returnType: void
    signature: void visual_3d_set_scissor(GF_VisualManager *visual, GF_Rect *vp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: glClear
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1368,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1369
      start: 1366
    functionDepth: 0
    functionLinenumber: 1366
    functionLinenumberEnd: 1369
    functionName: visual_3d_clear_depth
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glClear
    linkageType: ''
    returnType: void
    signature: void visual_3d_clear_depth(GF_VisualManager *visual)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bbox_get_vertices
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1380,1
    - Dst: gf_plane_get_distance
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1385,1
    - Dst: gf_plane_get_distance
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1390,1
    - Dst: visual_3d_draw_aabb_node
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1399,1
    - Dst: visual_3d_draw_aabb_node
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1400,1
    - Dst: PTR_TO_U_CAST
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1412,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1416,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1418,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 7
    argNames:
    - tr_state
    - mesh
    - prim_type
    - fplanes
    - p_indices
    - n
    - idx_addr
    argTypes:
    - GF_TraverseState*
    - GF_Mesh*
    - u32
    - GF_Plane*
    - u32*
    - AABBNode*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1421
      start: 1371
    functionDepth: 1
    functionLinenumber: 1371
    functionLinenumberEnd: 1421
    functionName: visual_3d_draw_aabb_node
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 1
    functionsReached:
    - gf_bbox_get_vertices
    - gf_plane_get_distance
    - PTR_TO_U_CAST
    - glDrawElements
    - visual_3d_draw_aabb_node
    linkageType: ''
    returnType: void
    signature: void visual_3d_draw_aabb_node(GF_TraverseState *tr_state, GF_Mesh *mesh,
      u32 prim_type, GF_Plane *fplanes, u32 *p_indices, AABBNode *n, void *idx_addr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: glLoadIdentity
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1433,1
    - Dst: glLoadMatrixx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1437,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1439,1
    - Dst: glLoadMatrixf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1440,1
    - Dst: glLoadMatrixf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1442,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - visual
    - mat
    argTypes:
    - GF_VisualManager*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1444
      start: 1425
    functionDepth: 1
    functionLinenumber: 1425
    functionLinenumberEnd: 1444
    functionName: visual_3d_matrix_load
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glLoadMatrixx
    - glLoadMatrixf
    - glLoadIdentity
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void visual_3d_matrix_load(GF_VisualManager *visual, Fixed *mat)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: glMatrixMode
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1452,1
    - Dst: visual_3d_matrix_load
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1453,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1454,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1457,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1458,1
    - Dst: visual_3d_matrix_load
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1459,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - tr_state
    argTypes:
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1460
      start: 1446
    functionDepth: 2
    functionLinenumber: 1446
    functionLinenumberEnd: 1460
    functionName: visual_3d_update_matrices
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_mx_add_matrix
    - visual_3d_matrix_load
    - glMatrixMode
    - gf_mx_copy
    linkageType: ''
    returnType: void
    signature: void visual_3d_update_matrices(GF_TraverseState *tr_state)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1472,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1473,1
    - Dst: visual_3d_matrix_load
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1486,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1488,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1490,1
    - Dst: gf_mx_apply_plane
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1492,1
    - Dst: glClipPlanex
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1500,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1502,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1503,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1504,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1505,1
    - Dst: glClipPlanef
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1508,1
    - Dst: glClipPlane
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1510,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1514,1
    - Dst: visual_3d_update_matrices
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1517,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 2
    argNames:
    - visual
    - tr_state
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1523
      start: 1463
    functionDepth: 3
    functionLinenumber: 1463
    functionLinenumberEnd: 1523
    functionName: visual_3d_set_clippers
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_mx_apply_plane
    - glClipPlanex
    - glClipPlanef
    - gf_mx_add_matrix
    - gf_mx_inverse
    - gf_mx_copy
    - visual_3d_matrix_load
    - visual_3d_update_matrices
    - glClipPlane
    - FIX2FLT
    - glEnable
    linkageType: ''
    returnType: void
    signature: void visual_3d_set_clippers(GF_VisualManager *visual, GF_TraverseState
      *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1530,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1533
      start: 1525
    functionDepth: 0
    functionLinenumber: 1525
    functionLinenumberEnd: 1533
    functionName: visual_3d_reset_clippers
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glDisable
    linkageType: ''
    returnType: void
    signature: void visual_3d_reset_clippers(GF_VisualManager *visual)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1541,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1543,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1544
      start: 1536
    functionDepth: 0
    functionLinenumber: 1536
    functionLinenumberEnd: 1544
    functionName: visual_3d_reset_lights
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glDisable
    linkageType: ''
    returnType: void
    signature: void visual_3d_reset_lights(GF_VisualManager *visual)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1563,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1565,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1566,1
    - Dst: visual_3d_matrix_load
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1568,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1570,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1581,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1582,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1583,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1584,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1586,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1587,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1588,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1589,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1590,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1592,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1594,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1595,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1596,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1597,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1597,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1599,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1600,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1602,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1603,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1604,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1606,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1607,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1608,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1609,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1611,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1612,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1613,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1614,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1615,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1617,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1619,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1620,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1621,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1622,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1630,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1631,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1632,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1633,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1641,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1646,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1647,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1648,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1649,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1650,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1651,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1652,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1654,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1655,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1656,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1657,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1658,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1660,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1665,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1668,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1669,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1669,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1671,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1672,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1673,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1675,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1676,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1677,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1678,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1680,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1681,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1681,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1682,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1682,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1683,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1683,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1684,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1685,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1686,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1688,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1689,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1690,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1691,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1692,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1694,1
    - Dst: cos
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1700,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1703,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1704,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1704,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1716,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1717,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1718,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1719,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1720,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1721,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1722,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1724,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1725,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1726,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1727,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1728,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1730,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1732,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1733,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1733,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1735,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1736,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1738,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1739,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1740,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1742,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1743,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1743,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1744,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1744,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1745,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1745,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1746,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1747,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1748,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1750,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1751,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1752,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1753,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1754,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1756,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1758,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1759,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1765,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 181
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1767
      start: 1547
    functionDepth: 2
    functionLinenumber: 1547
    functionLinenumberEnd: 1767
    functionName: visual_3d_set_lights
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glLightx
    - INT2FIX
    - gf_divfix
    - gf_mx_init
    - gf_mx_add_matrix
    - cos
    - glLightxv
    - gf_mx_copy
    - gf_cos
    - glLightfv
    - visual_3d_matrix_load
    - glLightf
    - gf_mulfix
    - FIX2FLT
    - glEnable
    linkageType: ''
    returnType: void
    signature: void visual_3d_set_lights(GF_VisualManager *visual)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1776,1
    - Dst: glFogx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1777,1
    - Dst: glFogx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1778,1
    - Dst: glFogx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1779,1
    - Dst: glFogx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1780,1
    - Dst: glFogx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1781,1
    - Dst: glFogx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1782,1
    - Dst: glFogxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1787,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1788,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1791,1
    - Dst: glFogf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1794,1
    - Dst: glFogf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1795,1
    - Dst: glFogf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1796,1
    - Dst: glFogi
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1798,1
    - Dst: glFogi
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1799,1
    - Dst: glFogi
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1800,1
    - Dst: glFogf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1803,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1803,1
    - Dst: glFogf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1804,1
    - Dst: glFogf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1805,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1805,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1806,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1807,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1808,1
    - Dst: glFogfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1810,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1811,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 39
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1816
      start: 1769
    functionDepth: 1
    functionLinenumber: 1769
    functionLinenumberEnd: 1816
    functionName: visual_3d_enable_fog
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glFogfv
    - glFogxv
    - glEnable
    - glFogf
    - glFogi
    - glFogx
    - FIX2FLT
    - glHint
    linkageType: ''
    returnType: void
    signature: void visual_3d_enable_fog(GF_VisualManager *visual)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: glBindBuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1843,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1852,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1854,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1864,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1865,1
    - Dst: gf_mx_apply_plane
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1868,1
    - Dst: gf_plane_get_p_vertex_idx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1869,1
    - Dst: visual_3d_draw_aabb_node
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1872,1
    - Dst: visual_3d_draw_aabb_node
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1873,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1877,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 34
    argCount: 2
    argNames:
    - tr_state
    - mesh
    argTypes:
    - GF_TraverseState*
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1879
      start: 1821
    functionDepth: 2
    functionLinenumber: 1821
    functionLinenumberEnd: 1879
    functionName: visual_3d_do_draw_mesh
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_mx_apply_plane
    - glDrawElements
    - gf_plane_get_p_vertex_idx
    - gf_mx_inverse
    - gf_mx_copy
    - visual_3d_draw_aabb_node
    - glBindBuffer
    linkageType: ''
    returnType: void
    signature: void visual_3d_do_draw_mesh(GF_TraverseState *tr_state, GF_Mesh *mesh)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: glGenBuffers
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1895,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1897,1
    - Dst: glBufferData
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1898,1
    - Dst: glGenBuffers
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1904,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1906,1
    - Dst: glBufferData
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1907,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1915,1
    - Dst: glBufferSubData
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1921,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1924,1
    - Dst: glBufferData
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1925,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1927,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 39
    argCount: 3
    argNames:
    - compositor
    - mesh
    - base_address
    argTypes:
    - GF_Compositor*
    - GF_Mesh*
    - void**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1933
      start: 1881
    functionDepth: 0
    functionLinenumber: 1881
    functionLinenumberEnd: 1933
    functionName: visual_3d_bind_buffer
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glGenBuffers
    - glBindBuffer
    - glBufferData
    - glBufferSubData
    linkageType: ''
    returnType: Bool
    signature: Bool visual_3d_bind_buffer(GF_Compositor *compositor, GF_Mesh *mesh,
      void **base_address)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: visual_3d_load_matrix_shaders
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1944,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1948,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1949,1
    - Dst: visual_3d_load_matrix_shaders
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1950,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - tr_state
    argTypes:
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1951
      start: 1938
    functionDepth: 2
    functionLinenumber: 1938
    functionLinenumberEnd: 1951
    functionName: visual_3d_update_matrices_shaders
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_mx_copy
    - gf_mx_add_matrix
    - visual_3d_load_matrix_shaders
    linkageType: ''
    returnType: void
    signature: void visual_3d_update_matrices_shaders(GF_TraverseState *tr_state)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1964,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1966,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1967,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1972,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1974,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1975,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1980,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1981,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1982,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1983,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1986,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1987,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1994,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1997,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1998,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2001,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2002,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2005,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2007,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2014,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2015,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2016,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2017,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2019,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2020,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2021,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2023,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2024,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2026,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2030,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2031,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2032,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2036,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2037,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2038,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2039,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2042,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2043,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2045,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2051,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2053,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2054,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2055,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2056,1
    - Dst: glUniform3fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2058,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2060,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2061,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2062,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2064,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2065,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2067,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2069,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2070,1
    - Dst: glUniform1f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2072,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2074,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2075,1
    - Dst: glUniform1f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2077,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2082,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2083,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2084,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2086,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2087,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2089,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2090,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2092,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2093,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2094,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2096,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2097,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2099,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 112
    argCount: 1
    argNames:
    - tr_state
    argTypes:
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2100
      start: 1953
    functionDepth: 1
    functionLinenumber: 1953
    functionLinenumberEnd: 2100
    functionName: visual_3d_set_lights_shaders
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glUniform1f
    - gf_vec_diff
    - gf_mx_init
    - sprintf
    - gf_mx_add_matrix
    - gf_vec_norm
    - glGetUniformLocation
    - glUniform3fv
    - gf_mx_copy
    - GL_CHECK_ERR
    - gf_mx_apply_vec
    - glUniform4fv
    - glUniform1i
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void visual_3d_set_lights_shaders(GF_TraverseState *tr_state)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2106,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2108,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2110,1
    - Dst: glUniform3fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2112,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2114,1
    - Dst: glUniform1f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2116,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2118,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2120,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2122,1
    - Dst: glUniform1f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2124,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2126,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2128,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2131,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2132
      start: 2102
    functionDepth: 1
    functionLinenumber: 2102
    functionLinenumberEnd: 2132
    functionName: visual_3d_set_fog_shaders
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glUniform1f
    - glGetUniformLocation
    - GL_CHECK_ERR
    - glUniform3fv
    - glUniform1i
    linkageType: ''
    returnType: void
    signature: void visual_3d_set_fog_shaders(GF_VisualManager *visual)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2144,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2145,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2147,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2148,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2150,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2152,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2161,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2163,1
    - Dst: gf_mx_apply_plane
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2166,1
    - Dst: gf_mx_apply_plane
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2168,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2171,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2172,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2178,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 2
    argNames:
    - visual
    - tr_state
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2181
      start: 2134
    functionDepth: 1
    functionLinenumber: 2134
    functionLinenumberEnd: 2181
    functionName: visual_3d_set_clippers_shaders
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_mx_apply_plane
    - sprintf
    - gf_mx_add_matrix
    - glGetUniformLocation
    - gf_mx_inverse
    - gf_mx_copy
    - glUniform4fv
    - glUniform1i
    linkageType: ''
    returnType: void
    signature: void visual_3d_set_clippers_shaders(GF_VisualManager *visual, GF_TraverseState
      *tr_state)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2190,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2192,1
    - Dst: visual_3d_build_program
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2198,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2200,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 3
    argNames:
    - root_visual
    - flags
    - pix_fmt
    argTypes:
    - GF_VisualManager*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2203
      start: 2183
    functionDepth: 4
    functionLinenumber: 2183
    functionLinenumberEnd: 2203
    functionName: visual_3d_check_program_exists
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_add
    - visual_3d_build_program
    linkageType: ''
    returnType: GF_GLProgInstance
    signature: GF_GLProgInstance *visual_3d_check_program_exists(GF_VisualManager
      *root_visual, u32 flags, u32 pix_fmt)
  - BBCount: 75
    BranchProfiles: []
    Callsites:
    - Dst: visual_3d_check_program_exists
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2255,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2263,1
    - Dst: glUseProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2266,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2267,1
    - Dst: visual_3d_bind_buffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2269,1
    - Dst: glUseProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2270,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2275,1
    - Dst: visual_3d_update_matrices_shaders
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2277,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2282,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2286,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2287,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2289,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2291,1
    - Dst: visual_3d_set_clipper_scissor
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2295,1
    - Dst: visual_3d_set_clippers_shaders
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2298,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2302,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2303,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2304,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2305,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2308,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2309,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2311,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2313,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2314,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2320,1
    - Dst: glUniform1f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2322,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2322,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2327,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2329,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2333,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2335,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2336,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2338,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2340,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2341,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2345,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2347,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2348,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2352,1
    - Dst: glUniform1f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2354,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2355,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2366,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2367,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2368,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2369,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2377,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2380,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2383,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2386,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2391,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2394,1
    - Dst: glUniform1f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2396,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2396,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2398,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2403,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2408,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2410,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2412,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2414,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2416,1
    - Dst: visual_3d_set_fog_shaders
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2420,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2426,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2428,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2429,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2431,1
    - Dst: gf_mx_transpose
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2434,1
    - Dst: visual_3d_load_matrix_shaders
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2436,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2438,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2441,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2443,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2445,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2447,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2449,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2451,1
    - Dst: visual_3d_set_lights_shaders
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2452,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2453,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2460,1
    - Dst: glUniformMatrix4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2462,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2463,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2465,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2466,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2468,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2469,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2473,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2475,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2476,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2477,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2481,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2493,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2495,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2503,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2504,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2507,1
    - Dst: glLineWidth
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2510,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2517,1
    - Dst: glFrontFace
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2519,1
    - Dst: glFrontFace
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2521,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2524,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2528,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2536,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2547,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2549,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2550,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2552,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2553,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2555,1
    - Dst: glUniformMatrix4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2557,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2558,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2560,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2561,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2571,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2573,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2574,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2580,1
    - Dst: glUniform3fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2581,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2583,1
    - Dst: glUniform1f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2584,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2586,1
    - Dst: glUniform1f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2587,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2589,1
    - Dst: glUniform1f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2590,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2593,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2594,1
    - Dst: visual_3d_do_draw_mesh
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2600,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2602,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2606,1
    - Dst: glDisableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2608,1
    - Dst: glDisableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2609,1
    - Dst: glDisableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2610,1
    - Dst: glDisableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2611,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2615,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2616,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2617,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2621,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2629,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2631,1
    - Dst: glUseProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2632,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2633,1
    CyclomaticComplexity: 95
    EdgeCount: 95
    ICount: 304
    argCount: 2
    argNames:
    - tr_state
    - mesh
    argTypes:
    - GF_TraverseState*
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2634
      start: 2205
    functionDepth: 5
    functionLinenumber: 2205
    functionLinenumberEnd: 2634
    functionName: visual_3d_draw_mesh_shader_only
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glLineWidth
    - visual_3d_load_matrix_shaders
    - visual_3d_set_clippers_shaders
    - glUniformMatrix4fv
    - gf_mx_transpose
    - gf_mx_copy
    - GL_CHECK_ERR
    - visual_3d_check_program_exists
    - glUniform4fv
    - glUniform3fv
    - FIX2FLT
    - glGetAttribLocation
    - glUniform1f
    - gf_assert
    - visual_3d_bind_buffer
    - glFrontFace
    - glDisable
    - gf_mx_init
    - gf_mx_add_matrix
    - visual_3d_set_lights_shaders
    - visual_3d_do_draw_mesh
    - glEnableVertexAttribArray
    - visual_3d_set_fog_shaders
    - glGetUniformLocation
    - glVertexAttribPointer
    - glUniform1i
    - glBindBuffer
    - glEnable
    - glDisableVertexAttribArray
    - visual_3d_update_matrices_shaders
    - gf_mx_inverse
    - visual_3d_set_clipper_scissor
    - glUseProgram
    linkageType: ''
    returnType: void
    signature: void visual_3d_draw_mesh_shader_only(GF_TraverseState *tr_state, GF_Mesh
      *mesh)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2659,1
    - Dst: glGetError
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2663,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2664,1
    - Dst: visual_3d_draw_mesh_shader_only
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2667,1
    - Dst: visual_3d_draw_mesh_shader_only
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2673,1
    - Dst: visual_3d_bind_buffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2683,1
    - Dst: glUseProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2685,1
    - Dst: visual_3d_set_lights
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2693,1
    - Dst: visual_3d_update_matrices
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2696,1
    - Dst: visual_3d_enable_fog
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2700,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2702,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2703,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2705,1
    - Dst: visual_3d_set_clipper_scissor
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2710,1
    - Dst: visual_3d_set_clippers
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2712,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2714,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2716,1
    - Dst: glPushMatrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2719,1
    - Dst: glScalef
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2720,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2721,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2723,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2732,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2734,1
    - Dst: visual_3d_enable_antialias
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2735,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2739,1
    - Dst: visual_3d_enable_antialias
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2740,1
    - Dst: glColor4x
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2743,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2743,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2743,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2743,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2743,1
    - Dst: glColor4f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2745,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2745,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2745,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2745,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2745,1
    - Dst: glColor4f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2747,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2754,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2762,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2763,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2764,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2765,1
    - Dst: glMaterialxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2786,1
    - Dst: glMaterialfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2788,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2790,1
    - Dst: glMaterialx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2793,1
    - Dst: glMaterialf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2795,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2795,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2797,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2802,1
    - Dst: glColorMaterial
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2804,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2806,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2812,1
    - Dst: glColorPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2817,1
    - Dst: glColorPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2819,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2831,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2833,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2834,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2835,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2836,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2838,1
    - Dst: glColorPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2839,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2842,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2844,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2845,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2846,1
    - Dst: glColorPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2848,1
    - Dst: glColorPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2851,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2858,1
    - Dst: glColorPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2859,1
    - Dst: glColorPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2862,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2866,1
    - Dst: glColorPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2868,1
    - Dst: glColorPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2870,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2880,1
    - Dst: visual_3d_matrix_load
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2882,1
    - Dst: glLoadIdentity
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2884,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2886,1
    - Dst: glTexCoordPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2890,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2891,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2893,1
    - Dst: glPushMatrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2894,1
    - Dst: glScalef
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2895,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2896,1
    - Dst: glTexCoordPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2897,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2898,1
    - Dst: glClientActiveTexture
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2905,1
    - Dst: glTexCoordPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2906,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2907,1
    - Dst: glTexCoordPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2912,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2913,1
    - Dst: glNormal3x
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2920,1
    - Dst: glNormal3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2922,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2924,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2925,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2926,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2927,1
    - Dst: glLineWidth
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2930,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2936,1
    - Dst: glNormalPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2951,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2957,1
    - Dst: glFrontFace
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2958,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2960,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2965,1
    - Dst: visual_3d_do_draw_mesh
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2966,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2967,1
    - Dst: glDisableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2969,1
    - Dst: glDisableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2970,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2971,1
    - Dst: glDisableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2973,1
    - Dst: glDisableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2974,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2977,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2980,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2982,1
    - Dst: glPopMatrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2983,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2984,1
    - Dst: glPopMatrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2986,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2991,1
    - Dst: visual_3d_reset_lights
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2993,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2995,1
    - Dst: visual_3d_reset_clippers
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2998,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3002,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3005,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 221
    argCount: 2
    argNames:
    - tr_state
    - mesh
    argTypes:
    - GF_TraverseState*
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3007
      start: 2641
    functionDepth: 6
    functionLinenumber: 2641
    functionLinenumberEnd: 3007
    functionName: visual_3d_draw_mesh
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - glNormal3f
    - glLineWidth
    - glColorMaterial
    - visual_3d_set_lights
    - glMaterialfv
    - glUseProgram
    - glClientActiveTexture
    - glEnableClientState
    - glNormalPointer
    - GL_CHECK_ERR
    - glPopMatrix
    - visual_3d_update_matrices
    - visual_3d_set_clippers
    - FIX2FLT
    - glMaterialxv
    - visual_3d_enable_antialias
    - visual_3d_bind_buffer
    - glFrontFace
    - glColorPointer
    - glMaterialx
    - glMatrixMode
    - glDisable
    - glColor4x
    - glDisableClientState
    - visual_3d_do_draw_mesh
    - visual_3d_draw_mesh_shader_only
    - visual_3d_matrix_load
    - glLoadIdentity
    - visual_3d_enable_fog
    - GF_LOG
    - visual_3d_reset_lights
    - glGetError
    - gf_malloc
    - glBindBuffer
    - glEnable
    - glNormal3x
    - glPushMatrix
    - glTexCoordPointer
    - glColor4f
    - FIX2INT
    - visual_3d_reset_clippers
    - glMaterialf
    - visual_3d_set_clipper_scissor
    - glVertexPointer
    - glScalef
    linkageType: ''
    returnType: void
    signature: void visual_3d_draw_mesh(GF_TraverseState *tr_state, GF_Mesh *mesh)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: glColor4x
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3014,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3014,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3014,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3014,1
    - Dst: glColor4f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3016,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3016,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3016,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3016,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - col
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3021
      start: 3009
    functionDepth: 1
    functionLinenumber: 3009
    functionLinenumberEnd: 3021
    functionName: visual_3d_set_debug_color
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - glColor4f
    - glColor4x
    - GF_COL_R
    linkageType: ''
    returnType: void
    signature: void visual_3d_set_debug_color(u32 col)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3037,1
    - Dst: visual_3d_set_debug_color
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3040,1
    - Dst: visual_3d_update_matrices
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3046,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3055,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3056,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3057,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3063,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3064,1
    - Dst: glBegin
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3066,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3067,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3067,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3067,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3067,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3068,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3068,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3068,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3068,1
    - Dst: glEnd
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3069,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3077,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3078,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3079,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3080,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3081,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3082,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3089,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3090,1
    - Dst: glBegin
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3092,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3093,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3093,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3093,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3093,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3094,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3094,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3094,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3094,1
    - Dst: glEnd
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3095,1
    - Dst: glDisableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3101,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 49
    argCount: 2
    argNames:
    - tr_state
    - mesh
    argTypes:
    - GF_TraverseState*
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3105
      start: 3026
    functionDepth: 3
    functionLinenumber: 3026
    functionLinenumberEnd: 3105
    functionName: visual_3d_draw_normals
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_vec_add
    - gf_vec_scale
    - glVertex3f
    - visual_3d_set_debug_color
    - glEnd
    - glDisableClientState
    - MESH_GET_NORMAL
    - glBegin
    - glEnableClientState
    - glDrawElements
    - glVertexPointer
    - visual_3d_update_matrices
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void visual_3d_draw_normals(GF_TraverseState *tr_state, GF_Mesh *mesh)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: visual_3d_draw_aabb_nodeBounds
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3112,1
    - Dst: visual_3d_draw_aabb_nodeBounds
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3113,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3117,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3118,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3119,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3121,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3122,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3123,1
    - Dst: visual_3d_draw_mesh
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3125,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3127,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - tr_state
    - node
    argTypes:
    - GF_TraverseState*
    - AABBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3129
      start: 3109
    functionDepth: 7
    functionLinenumber: 3109
    functionLinenumberEnd: 3129
    functionName: visual_3d_draw_aabb_nodeBounds
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 1
    functionsReached:
    - gf_vec_add
    - gf_vec_scale
    - gf_vec_diff
    - visual_3d_draw_mesh
    - gf_mx_add_translation
    - gf_mx_copy
    - gf_mx_add_scale
    - visual_3d_draw_aabb_nodeBounds
    linkageType: ''
    returnType: void
    signature: void visual_3d_draw_aabb_nodeBounds(GF_TraverseState *tr_state, AABBNode
      *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: visual_3d_set_debug_color
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3137,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3140,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3145,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3146,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3147,1
    - Dst: visual_3d_draw_mesh
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3149,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3150,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - tr_state
    - box
    - is_debug
    argTypes:
    - GF_TraverseState*
    - GF_BBox*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3151
      start: 3131
    functionDepth: 7
    functionLinenumber: 3131
    functionLinenumberEnd: 3151
    functionName: visual_3d_draw_bbox
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_vec_diff
    - visual_3d_draw_mesh
    - gf_mx_add_translation
    - visual_3d_set_debug_color
    - gf_mx_copy
    - gf_mx_add_scale
    linkageType: ''
    returnType: void
    signature: void visual_3d_draw_bbox(GF_TraverseState *tr_state, GF_BBox *box,
      Bool is_debug)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: visual_3d_set_debug_color
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3155,1
    - Dst: visual_3d_draw_aabb_nodeBounds
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3158,1
    - Dst: visual_3d_draw_bbox
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3160,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - tr_state
    - mesh
    argTypes:
    - GF_TraverseState*
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3162
      start: 3153
    functionDepth: 8
    functionLinenumber: 3153
    functionLinenumberEnd: 3162
    functionName: visual_3d_draw_bounds
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - visual_3d_draw_bbox
    - visual_3d_draw_aabb_nodeBounds
    - visual_3d_set_debug_color
    linkageType: ''
    returnType: void
    signature: void visual_3d_draw_bounds(GF_TraverseState *tr_state, GF_Mesh *mesh)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3170,1
    - Dst: glGetError
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3172,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3174,1
    - Dst: visual_3d_draw_mesh
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3176,1
    - Dst: visual_3d_update_matrices
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3185,1
    - Dst: visual_3d_draw_normals
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3188,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3192,1
    - Dst: visual_3d_set_debug_color
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3193,1
    - Dst: visual_3d_update_matrices
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3196,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3199,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3201,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3202,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3204,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3205,1
    - Dst: glDisableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3207,1
    - Dst: visual_3d_draw_bounds
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3213,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3215,1
    - Dst: glGetError
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3217,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 2
    argNames:
    - tr_state
    - mesh
    argTypes:
    - GF_TraverseState*
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3218
      start: 3164
    functionDepth: 9
    functionLinenumber: 3164
    functionLinenumberEnd: 3218
    functionName: visual_3d_mesh_paint
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 9
    functionsReached:
    - glDrawElements
    - visual_3d_draw_bounds
    - GF_LOG
    - visual_3d_draw_mesh
    - glDisable
    - visual_3d_set_debug_color
    - glDisableClientState
    - glGetError
    - glEnableClientState
    - visual_3d_draw_normals
    - glVertexPointer
    - GL_CHECK_ERR
    - visual_3d_update_matrices
    linkageType: ''
    returnType: void
    signature: void visual_3d_mesh_paint(GF_TraverseState *tr_state, GF_Mesh *mesh)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3322,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3323,1
    - Dst: glDisableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3325,1
    - Dst: glNormal3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3326,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3327,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3329,1
    - Dst: glNormalPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3330,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3334,1
    - Dst: glFrontFace
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3335,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3337,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3341,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3342,1
    - Dst: glPolygonStipple
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3346,1
    - Dst: glPolygonStipple
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3349,1
    - Dst: glPolygonStipple
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3352,1
    - Dst: glPolygonStipple
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3355,1
    - Dst: glPolygonStipple
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3358,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3361,1
    - Dst: glColor3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3364,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3364,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3364,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3364,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3365,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3367,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 44
    argCount: 4
    argNames:
    - tr_state
    - mesh
    - hatchStyle
    - hatchColor
    argTypes:
    - GF_TraverseState*
    - GF_Mesh*
    - u32
    - SFColor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3368
      start: 3318
    functionDepth: 1
    functionLinenumber: 3318
    functionLinenumberEnd: 3368
    functionName: visual_3d_mesh_hatch
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glNormal3f
    - glPixelStorei
    - glPolygonStipple
    - glFrontFace
    - glNormalPointer
    - glDisable
    - glDisableClientState
    - glColor3f
    - glEnableClientState
    - glDrawElements
    - glVertexPointer
    - FIX2FLT
    - glEnable
    linkageType: ''
    returnType: void
    signature: void visual_3d_mesh_hatch(GF_TraverseState *tr_state, GF_Mesh *mesh,
      u32 hatchStyle, SFColor hatchColor)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3379,1
    - Dst: glLineWidth
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3382,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3382,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3408,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3410,1
    - Dst: glLineStipple
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3411,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3412,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3413,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3416,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 36
    argCount: 5
    argNames:
    - tr_state
    - mesh
    - width
    - line_scale
    - dash_style
    argTypes:
    - GF_TraverseState*
    - GF_Mesh*
    - Fixed
    - Fixed
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3417
      start: 3372
    functionDepth: 10
    functionLinenumber: 3372
    functionLinenumberEnd: 3417
    functionName: visual_3d_mesh_strike
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 2
    functionsReached:
    - glLineWidth
    - visual_3d_mesh_paint
    - glDisable
    - FIX2INT
    - glLineStipple
    - gf_mulfix
    - FIX2FLT
    - glEnable
    linkageType: ''
    returnType: void
    signature: void visual_3d_mesh_strike(GF_TraverseState *tr_state, GF_Mesh *mesh,
      Fixed width, Fixed line_scale, u32 dash_style)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: glClearColorx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3423,1
    - Dst: glClearColor
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3425,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3425,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3425,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3425,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3425,1
    - Dst: glClear
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3427,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - visual
    - color
    - alpha
    argTypes:
    - GF_VisualManager*
    - SFColor
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3428
      start: 3420
    functionDepth: 1
    functionLinenumber: 3420
    functionLinenumberEnd: 3428
    functionName: visual_3d_clear
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 3
    functionsReached:
    - glClearColorx
    - glClearColor
    - FIX2FLT
    - glClear
    linkageType: ''
    returnType: void
    signature: void visual_3d_clear(GF_VisualManager *visual, SFColor color, Fixed
      alpha)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3437,1
    - Dst: glNormal3x
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3440,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3441,1
    - Dst: glColor4x
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3442,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3456,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3457,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3458,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3462,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3463,1
    - Dst: glDisableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3465,1
    - Dst: glNormal3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3468,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3470,1
    - Dst: glColor4f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3471,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3471,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3471,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3471,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3471,1
    - Dst: glColor3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3473,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3473,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3473,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3473,1
    - Dst: glBegin
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3475,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3476,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3476,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3476,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3477,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3477,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3477,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3478,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3478,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3478,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3479,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3479,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3479,1
    - Dst: glEnd
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3480,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3482,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3485,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 39
    argCount: 3
    argNames:
    - visual
    - rc
    - color
    argTypes:
    - GF_VisualManager*
    - GF_Rect
    - SFColorRGBA
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3487
      start: 3431
    functionDepth: 1
    functionLinenumber: 3431
    functionLinenumberEnd: 3487
    functionName: visual_3d_fill_rect
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 1
    functionsReached:
    - glNormal3f
    - glVertex3f
    - glNormal3x
    - glColor4x
    - glDisable
    - glDisableClientState
    - glColor4f
    - glEnd
    - glColor3f
    - glBegin
    - glEnableClientState
    - glDrawElements
    - glVertexPointer
    - FIX2FLT
    - glEnable
    linkageType: ''
    returnType: void
    signature: void visual_3d_fill_rect(GF_VisualManager *visual, GF_Rect rc, SFColorRGBA
      color)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3512,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3518,1
    - Dst: glReadPixels
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3526,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3529,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3530,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3536,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3544,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3559,1
    - Dst: glReadPixels
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3565,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3572,1
    - Dst: glReadPixels
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3573,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3596,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3614,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3615,1
    - Dst: compositor_3d_enable_fbo
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3623,1
    - Dst: glReadPixels
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3625,1
    - Dst: compositor_3d_enable_fbo
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3627,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3643,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3644,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3645,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 82
    argCount: 3
    argNames:
    - compositor
    - fb
    - depth_dump_mode
    argTypes:
    - GF_Compositor*
    - GF_VideoSurface*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3649
      start: 3491
    functionDepth: 1
    functionLinenumber: 3491
    functionLinenumberEnd: 3649
    functionName: compositor_3d_get_screen_buffer
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - compositor_3d_enable_fbo
    - memcpy
    - glReadPixels
    - gf_malloc
    - FIX2FLT
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err compositor_3d_get_screen_buffer(GF_Compositor *compositor, GF_VideoSurface
      *fb, u32 depth_dump_mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - framebuffer
    argTypes:
    - GF_Compositor*
    - GF_VideoSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3655
      start: 3651
    functionDepth: 0
    functionLinenumber: 3651
    functionLinenumberEnd: 3655
    functionName: compositor_3d_release_screen_buffer
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err compositor_3d_release_screen_buffer(GF_Compositor *compositor,
      GF_VideoSurface *framebuffer)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3671,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3674,1
    - Dst: glBindTexture
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3675,1
    - Dst: glGetTexImage
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3676,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3677,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3680,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3683,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3684,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3685,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3687,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 4
    argNames:
    - compositor
    - fb
    - view_idx
    - depth_dump_mode
    argTypes:
    - GF_Compositor*
    - GF_VideoSurface*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3692
      start: 3657
    functionDepth: 0
    functionLinenumber: 3657
    functionLinenumberEnd: 3692
    functionName: compositor_3d_get_offscreen_buffer
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - glBindTexture
    - memcpy
    - glDisable
    - glGetTexImage
    - gf_malloc
    - glEnable
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err compositor_3d_get_offscreen_buffer(GF_Compositor *compositor,
      GF_VideoSurface *fb, u32 view_idx, u32 depth_dump_mode)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_get_data
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3711,1
    - Dst: glPointSize
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3717,1
    - Dst: glDepthMask
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3718,1
    - Dst: glPointParameterfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3720,1
    - Dst: glPointParameterf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3721,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3722,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3723,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3727,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3730,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3730,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3731,1
    - Dst: glBegin
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3733,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3736,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3736,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3737,1
    - Dst: glColor4f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3749,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3750,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3750,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3750,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3750,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3751,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3753,1
    - Dst: glEnd
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3755,1
    - Dst: glDepthMask
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3757,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3763,1
    - Dst: gf_sc_texture_get_data
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3767,1
    - Dst: glDepthMask
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3773,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3774,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3775,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3776,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3777,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3778,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3779,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3782,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3784,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3787,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3787,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3788,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3794,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3794,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3795,1
    - Dst: glEnd
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3807,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3811,1
    - Dst: glEnd
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3818,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3821,1
    - Dst: glBegin
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3836,1
    - Dst: glColor3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3840,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3841,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3841,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3841,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3841,1
    - Dst: glColor3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3850,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3851,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3851,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3851,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3851,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3853,1
    - Dst: glEnd
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3856,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3859,1
    - Dst: glColor3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3869,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3872,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3875,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3878,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3878,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3879,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3885,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3885,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3886,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3889,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3889,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3889,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3890,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3895,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3896,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3899,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3908,1
    - Dst: gf_sc_texture_get_data
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3911,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3920,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3921,1
    - Dst: gf_sc_texture_enable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3930,1
    - Dst: visual_3d_draw_mesh
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3931,1
    - Dst: visual_3d_disable_texture
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3932,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 192
    argCount: 4
    argNames:
    - visual
    - stack
    - txh
    - tr_state
    argTypes:
    - GF_VisualManager*
    - Drawable*
    - GF_TextureHandler*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3936
      start: 3694
    functionDepth: 7
    functionLinenumber: 3694
    functionLinenumberEnd: 3936
    functionName: visual_3d_point_sprite
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glPointParameterfv
    - glDepthMask
    - gf_sc_texture_get_data
    - FIX2FLT
    - glDisable
    - new_mesh
    - gf_mulfix
    - FLT2FIX
    - gf_sc_texture_enable
    - gf_divfix
    - glEnd
    - glPointParameterf
    - glEnable
    - INT2FIX
    - glVertex3f
    - mesh_set_vertex
    - visual_3d_disable_texture
    - visual_3d_draw_mesh
    - mesh_set_triangle
    - glColor4f
    - glColor3f
    - glBegin
    - glPointSize
    linkageType: ''
    returnType: void
    signature: void visual_3d_point_sprite(GF_VisualManager *visual, Drawable *stack,
      GF_TextureHandler *txh, GF_TraverseState *tr_state)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3943,1
    - Dst: glGenTextures
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3947,1
    - Dst: glBindTexture
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3949,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3950,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3951,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3952,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3953,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3954,1
    - Dst: glGenFramebuffers
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3957,1
    - Dst: glBindFramebuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3959,1
    - Dst: glFramebufferTexture2D
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3960,1
    - Dst: glGenRenderbuffers
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3963,1
    - Dst: glBindRenderbuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3965,1
    - Dst: glRenderbufferStorage
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3967,1
    - Dst: glRenderbufferStorage
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3969,1
    - Dst: glFramebufferRenderbuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3971,1
    - Dst: glCheckFramebufferStatus
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3973,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3978,1
    - Dst: glBindFramebuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3982,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 5
    argNames:
    - width
    - height
    - fbo_id
    - tx_id
    - depth_id
    argTypes:
    - u32
    - u32
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3986
      start: 3940
    functionDepth: 1
    functionLinenumber: 3940
    functionLinenumberEnd: 3986
    functionName: compositor_3d_setup_fbo
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glGenRenderbuffers
    - glFramebufferRenderbuffer
    - glCheckFramebufferStatus
    - glBindFramebuffer
    - glBindTexture
    - GF_LOG
    - glTexImage2D
    - glRenderbufferStorage
    - glTexParameteri
    - glGenFramebuffers
    - glFramebufferTexture2D
    - glBindRenderbuffer
    - glGenTextures
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err compositor_3d_setup_fbo(u32 width, u32 height, u32 *fbo_id,
      u32 *tx_id, u32 *depth_id)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: glBindFramebuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3992,1
    - Dst: glDeleteFramebuffers
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3993,1
    - Dst: glDeleteRenderbuffers
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3997,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:4001,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 4
    argNames:
    - fbo_id
    - fbo_tx_id
    - fbo_depth_id
    - keep_tx_id
    argTypes:
    - u32*
    - u32*
    - u32*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4005
      start: 3988
    functionDepth: 0
    functionLinenumber: 3988
    functionLinenumberEnd: 4005
    functionName: compositor_3d_delete_fbo
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glDeleteRenderbuffers
    - glDeleteTextures
    - glDeleteFramebuffers
    - glBindFramebuffer
    linkageType: ''
    returnType: void
    signature: void compositor_3d_delete_fbo(u32 *fbo_id, u32 *fbo_tx_id, u32 *fbo_depth_id,
      Bool keep_tx_id)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4010
      start: 4007
    functionDepth: 0
    functionLinenumber: 4007
    functionLinenumberEnd: 4010
    functionName: compositor_3d_get_fbo_pixfmt
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 compositor_3d_get_fbo_pixfmt()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: glBindFramebuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:4015,1
    - Dst: glBindTexture
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:4017,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - compositor
    - enable
    argTypes:
    - GF_Compositor*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4020
      start: 4012
    functionDepth: 0
    functionLinenumber: 4012
    functionLinenumberEnd: 4020
    functionName: compositor_3d_enable_fbo
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 1
    functionsReached:
    - glBindTexture
    - glBindFramebuffer
    linkageType: ''
    returnType: void
    signature: void compositor_3d_enable_fbo(GF_Compositor *compositor, Bool enable)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: glGetError
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:4024,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4025
      start: 4022
    functionDepth: 0
    functionLinenumber: 4022
    functionLinenumberEnd: 4025
    functionName: visual_3d_clean_state
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glGetError
    linkageType: ''
    returnType: void
    signature: void visual_3d_clean_state(GF_VisualManager *visual)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_filters.c:92,1
    - Dst: MIN
      Src: /src/gpac/src/compositor/svg_filters.c:117,1
    - Dst: MAX
      Src: /src/gpac/src/compositor/svg_filters.c:117,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_filters.c:124,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/svg_filters.c:124,1
    - Dst: pow
      Src: /src/gpac/src/compositor/svg_filters.c:124,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/svg_filters.c:124,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/svg_filters.c:124,1
    - Dst: MIN
      Src: /src/gpac/src/compositor/svg_filters.c:125,1
    - Dst: MAX
      Src: /src/gpac/src/compositor/svg_filters.c:125,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_filters.c:129,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_filters.c:130,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/svg_filters.c:135,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/svg_filters.c:137,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_filters.c:139,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_filters.c:140,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_filters.c:141,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/svg_filters.c:141,1
    - Dst: MIN
      Src: /src/gpac/src/compositor/svg_filters.c:142,1
    - Dst: MAX
      Src: /src/gpac/src/compositor/svg_filters.c:142,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_filters.c:146,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_filters.c:147,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/svg_filters.c:151,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_filters.c:159,1
    - Dst: MIN
      Src: /src/gpac/src/compositor/svg_filters.c:161,1
    - Dst: MAX
      Src: /src/gpac/src/compositor/svg_filters.c:161,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 105
    argCount: 3
    argNames:
    - node
    - source
    - region
    argTypes:
    - GF_Node*
    - GF_TextureHandler*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 46
    functionDepth: 2
    functionLinenumber: 46
    functionLinenumberEnd: 168
    functionName: apply_feComponentTransfer
    functionSourceFile: /src/gpac/src/compositor/svg_filters.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - FLT2FIX
    - gf_list_get
    - INT2FIX
    - MIN
    - gf_list_count
    - FIX2INT
    - MAX
    - pow
    - gf_mulfix
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void apply_feComponentTransfer(GF_Node *node, GF_TextureHandler *source,
      GF_Rect *region)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_filters.c:175,1
    - Dst: apply_feComponentTransfer
      Src: /src/gpac/src/compositor/svg_filters.c:177,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - node
    - source
    - region
    argTypes:
    - GF_Node*
    - GF_TextureHandler*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 170
    functionDepth: 3
    functionLinenumber: 170
    functionLinenumberEnd: 182
    functionName: svg_filter_apply
    functionSourceFile: /src/gpac/src/compositor/svg_filters.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - apply_feComponentTransfer
    linkageType: ''
    returnType: void
    signature: void svg_filter_apply(GF_Node *node, GF_TextureHandler *source, GF_Rect
      *region)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_filters.c:203,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/svg_filters.c:204,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_filters.c:207,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_filters.c:208,1
    - Dst: gf_node_allow_cyclic_traverse
      Src: /src/gpac/src/compositor/svg_filters.c:210,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_filters.c:213,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/svg_filters.c:217,1
    - Dst: gf_rect_pixelize
      Src: /src/gpac/src/compositor/svg_filters.c:218,1
    - Dst: gf_rect_ft
      Src: /src/gpac/src/compositor/svg_filters.c:221,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_filters.c:225,1
    - Dst: drawable_init_context_svg
      Src: /src/gpac/src/compositor/svg_filters.c:232,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/svg_filters.c:248,1
    - Dst: memset
      Src: /src/gpac/src/compositor/svg_filters.c:250,1
    - Dst: gf_path_reset
      Src: /src/gpac/src/compositor/svg_filters.c:254,1
    - Dst: gf_path_add_rect_center
      Src: /src/gpac/src/compositor/svg_filters.c:256,1
    - Dst: gf_evg_surface_new
      Src: /src/gpac/src/compositor/svg_filters.c:264,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_filters.c:267,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_filters.c:268,1
    - Dst: gf_evg_surface_attach_to_buffer
      Src: /src/gpac/src/compositor/svg_filters.c:271,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_filters.c:284,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_filters.c:285,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_filters.c:286,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/svg_filters.c:287,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/svg_filters.c:290,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/svg_filters.c:300,1
    - Dst: gf_node_allow_cyclic_traverse
      Src: /src/gpac/src/compositor/svg_filters.c:322,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_filters.c:323,1
    - Dst: drawable_reset_bounds
      Src: /src/gpac/src/compositor/svg_filters.c:327,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/compositor/svg_filters.c:337,1
    - Dst: gf_sc_texture_set_data
      Src: /src/gpac/src/compositor/svg_filters.c:349,1
    - Dst: gf_sc_texture_push_image
      Src: /src/gpac/src/compositor/svg_filters.c:352,1
    - Dst: gf_sc_texture_push_image
      Src: /src/gpac/src/compositor/svg_filters.c:355,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_filters.c:365,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/svg_filters.c:368,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_filters.c:369,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/svg_filters.c:370,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_filters.c:371,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/svg_filters.c:372,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_filters.c:373,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/svg_filters.c:374,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_filters.c:375,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/svg_filters.c:382,1
    - Dst: svg_filter_apply
      Src: /src/gpac/src/compositor/svg_filters.c:384,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/svg_filters.c:390,1
    - Dst: mesh_from_path
      Src: /src/gpac/src/compositor/svg_filters.c:391,1
    - Dst: visual_3d_draw_from_context
      Src: /src/gpac/src/compositor/svg_filters.c:393,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_filters.c:400,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/svg_filters.c:401,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_filters.c:402,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 137
    argCount: 3
    argNames:
    - filter
    - node
    - tr_state
    argTypes:
    - GF_Node*
    - GF_Node*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 188
    functionDepth: 6
    functionLinenumber: 188
    functionLinenumberEnd: 403
    functionName: svg_draw_filter
    functionSourceFile: /src/gpac/src/compositor/svg_filters.c
    functionUses: 0
    functionsReached:
    - gf_path_add_rect_center
    - mesh_from_path
    - gf_mx2d_add_scale
    - memset
    - gf_realloc
    - gf_assert
    - gf_mx2d_apply_rect
    - visual_3d_draw_from_context
    - new_mesh
    - gf_node_get_private
    - gf_mulfix
    - gf_node_traverse
    - gf_svg_flatten_attributes
    - gf_rect_ft
    - gf_sc_texture_push_image
    - gf_evg_surface_attach_to_buffer
    - drawable_finalize_sort
    - gf_divfix
    - gf_evg_surface_delete
    - svg_filter_apply
    - gf_mx2d_copy
    - gf_node_allow_cyclic_traverse
    - gf_sc_texture_set_data
    - gf_mx2d_add_translation
    - INT2FIX
    - gf_rect_pixelize
    - drawable_init_context_svg
    - gf_path_reset
    - gf_mx2d_init
    - gf_evg_surface_new
    - drawable_reset_bounds
    linkageType: ''
    returnType: void
    signature: void svg_draw_filter(GF_Node *filter, GF_Node *node, GF_TraverseState
      *tr_state)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_filters.c:408,1
    - Dst: drawable_del
      Src: /src/gpac/src/compositor/svg_filters.c:410,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_filters.c:411,1
    - Dst: gf_sc_texture_release
      Src: /src/gpac/src/compositor/svg_filters.c:413,1
    - Dst: gf_sc_texture_destroy
      Src: /src/gpac/src/compositor/svg_filters.c:414,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_filters.c:415,1
    - Dst: GF_TraverseState*::visual::DrawBitmap
      Src: /src/gpac/src/compositor/svg_filters.c:420,1
    - Dst: visual_2d_texture_path
      Src: /src/gpac/src/compositor/svg_filters.c:421,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 405
    functionDepth: 2
    functionLinenumber: 405
    functionLinenumberEnd: 424
    functionName: svg_traverse_filter
    functionSourceFile: /src/gpac/src/compositor/svg_filters.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sc_texture_destroy
    - drawable_del
    - gf_sc_texture_release
    - GF_TraverseState*::visual::DrawBitmap
    - gf_node_get_private
    - visual_2d_texture_path
    linkageType: ''
    returnType: void
    signature: void svg_traverse_filter(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_filters.c:429,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_filters.c:431,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_filters.c:434,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_filters.c:435,1
    - Dst: gf_sc_texture_setup
      Src: /src/gpac/src/compositor/svg_filters.c:438,1
    - Dst: drawable_new
      Src: /src/gpac/src/compositor/svg_filters.c:439,1
    - Dst: gf_sc_texture_allocate
      Src: /src/gpac/src/compositor/svg_filters.c:443,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 426
    functionDepth: 2
    functionLinenumber: 426
    functionLinenumberEnd: 444
    functionName: compositor_init_svg_filter
    functionSourceFile: /src/gpac/src/compositor/svg_filters.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_sc_texture_allocate
    - drawable_new
    - gf_node_set_callback_function
    - gf_sc_texture_setup
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_filter(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 2
    argNames:
    - mesh
    - node
    argTypes:
    - GF_Mesh*
    - AABBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 72
    functionName: update_node_bounds
    functionSourceFile: /src/gpac/src/compositor/mesh_collide.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE update_node_bounds(GF_Mesh *mesh, AABBNode *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - v
    argTypes:
    - SFVec3f
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 81
    functionName: gf_vec_main_axis
    functionSourceFile: /src/gpac/src/compositor/mesh_collide.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gf_vec_main_axis(SFVec3f v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/mesh_collide.c:88,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/mesh_collide.c:89,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/mesh_collide.c:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - mesh
    - tri_idx
    - axis
    argTypes:
    - GF_Mesh*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 92
    functionName: tri_get_center
    functionSourceFile: /src/gpac/src/compositor/mesh_collide.c
    functionUses: 0
    functionsReached:
    - gf_vec_add
    - gf_vec_scale
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE tri_get_center(GF_Mesh *mesh, u32 tri_idx, u32 axis)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/mesh_collide.c:100,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/mesh_collide.c:101,1
    - Dst: tri_get_center
      Src: /src/gpac/src/compositor/mesh_collide.c:109,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - mesh
    - node
    - axis
    argTypes:
    - GF_Mesh*
    - AABBNode*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 94
    functionDepth: 2
    functionLinenumber: 94
    functionLinenumberEnd: 120
    functionName: aabb_split
    functionSourceFile: /src/gpac/src/compositor/mesh_collide.c
    functionUses: 0
    functionsReached:
    - gf_vec_add
    - gf_vec_scale
    - tri_get_center
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE aabb_split(GF_Mesh *mesh, AABBNode *node, u32 axis)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh_collide.c:141,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/mesh_collide.c:142,1
    - Dst: gf_vec_main_axis
      Src: /src/gpac/src/compositor/mesh_collide.c:143,1
    - Dst: aabb_split
      Src: /src/gpac/src/compositor/mesh_collide.c:147,1
    - Dst: aabb_split
      Src: /src/gpac/src/compositor/mesh_collide.c:151,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh_collide.c:152,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh_collide.c:152,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh_collide.c:152,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh_collide.c:153,1
    - Dst: aabb_split
      Src: /src/gpac/src/compositor/mesh_collide.c:154,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh_collide.c:155,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh_collide.c:155,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh_collide.c:155,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh_collide.c:156,1
    - Dst: aabb_split
      Src: /src/gpac/src/compositor/mesh_collide.c:157,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh_collide.c:158,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh_collide.c:158,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh_collide.c:158,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh_collide.c:159,1
    - Dst: aabb_split
      Src: /src/gpac/src/compositor/mesh_collide.c:164,1
    - Dst: aabb_split
      Src: /src/gpac/src/compositor/mesh_collide.c:181,1
    - Dst: tri_get_center
      Src: /src/gpac/src/compositor/mesh_collide.c:192,1
    - Dst: tri_get_center
      Src: /src/gpac/src/compositor/mesh_collide.c:193,1
    - Dst: tri_get_center
      Src: /src/gpac/src/compositor/mesh_collide.c:194,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/mesh_collide.c:196,1
    - Dst: gf_invfix
      Src: /src/gpac/src/compositor/mesh_collide.c:196,1
    - Dst: tri_get_center
      Src: /src/gpac/src/compositor/mesh_collide.c:201,1
    - Dst: tri_get_center
      Src: /src/gpac/src/compositor/mesh_collide.c:202,1
    - Dst: tri_get_center
      Src: /src/gpac/src/compositor/mesh_collide.c:203,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh_collide.c:204,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh_collide.c:205,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh_collide.c:206,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/mesh_collide.c:208,1
    - Dst: gf_invfix
      Src: /src/gpac/src/compositor/mesh_collide.c:208,1
    - Dst: gf_vec_main_axis
      Src: /src/gpac/src/compositor/mesh_collide.c:209,1
    - Dst: aabb_split
      Src: /src/gpac/src/compositor/mesh_collide.c:210,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mesh_collide.c:227,1
    - Dst: update_node_bounds
      Src: /src/gpac/src/compositor/mesh_collide.c:231,1
    - Dst: mesh_subdivide_aabbtree
      Src: /src/gpac/src/compositor/mesh_collide.c:232,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mesh_collide.c:235,1
    - Dst: update_node_bounds
      Src: /src/gpac/src/compositor/mesh_collide.c:239,1
    - Dst: mesh_subdivide_aabbtree
      Src: /src/gpac/src/compositor/mesh_collide.c:240,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 101
    argCount: 3
    argNames:
    - mesh
    - node
    - aab_par
    argTypes:
    - GF_Mesh*
    - AABBNode*
    - AABSplitParams*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 122
    functionDepth: 3
    functionLinenumber: 122
    functionLinenumberEnd: 243
    functionName: mesh_subdivide_aabbtree
    functionSourceFile: /src/gpac/src/compositor/mesh_collide.c
    functionUses: 1
    functionsReached:
    - INT2FIX
    - gf_vec_scale
    - GF_SAFEALLOC
    - aabb_split
    - gf_vec_diff
    - gf_divfix
    - update_node_bounds
    - mesh_subdivide_aabbtree
    - gf_vec_main_axis
    - gf_invfix
    - gf_mulfix
    - tri_get_center
    linkageType: ''
    returnType: void
    signature: void mesh_subdivide_aabbtree(GF_Mesh *mesh, AABBNode *node, AABSplitParams
      *aab_par)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/mesh_collide.c:251,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh_collide.c:259,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mesh_collide.c:262,1
    - Dst: mesh_subdivide_aabbtree
      Src: /src/gpac/src/compositor/mesh_collide.c:271,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mesh_collide.c:273,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 1
    argNames:
    - mesh
    argTypes:
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 246
    functionDepth: 4
    functionLinenumber: 246
    functionLinenumberEnd: 274
    functionName: gf_mesh_build_aabbtree
    functionSourceFile: /src/gpac/src/compositor/mesh_collide.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - GF_LOG
    - mesh_subdivide_aabbtree
    - memset
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void gf_mesh_build_aabbtree(GF_Mesh *mesh)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh_collide.c:282,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh_collide.c:283,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mesh_collide.c:285,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mesh_collide.c:287,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh_collide.c:289,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh_collide.c:291,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mesh_collide.c:291,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mesh_collide.c:293,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh_collide.c:295,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mesh_collide.c:295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 6
    argNames:
    - ray
    - v0
    - v1
    - v2
    - u
    - v
    argTypes:
    - GF_Ray*
    - GF_Vec*
    - GF_Vec*
    - GF_Vec*
    - Fixed*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 277
    functionDepth: 1
    functionLinenumber: 277
    functionLinenumberEnd: 296
    functionName: ray_hit_triangle_get_u_v
    functionSourceFile: /src/gpac/src/compositor/mesh_collide.c
    functionUses: 0
    functionsReached:
    - gf_vec_diff
    - gf_divfix
    - gf_vec_cross
    - gf_vec_dot
    linkageType: ''
    returnType: void
    signature: void ray_hit_triangle_get_u_v(GF_Ray *ray, GF_Vec *v0, GF_Vec *v1,
      GF_Vec *v2, Fixed *u, Fixed *v)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_ray_hit_box
      Src: /src/gpac/src/compositor/mesh_collide.c:306,1
    - Dst: gf_mesh_aabb_ray_hit
      Src: /src/gpac/src/compositor/mesh_collide.c:311,1
    - Dst: gf_mesh_aabb_ray_hit
      Src: /src/gpac/src/compositor/mesh_collide.c:312,1
    - Dst: gf_ray_hit_triangle
      Src: /src/gpac/src/compositor/mesh_collide.c:326,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/mesh_collide.c:340,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/mesh_collide.c:341,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh_collide.c:346,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh_collide.c:347,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mesh_collide.c:348,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh_collide.c:349,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/mesh_collide.c:351,1
    - Dst: ray_hit_triangle_get_u_v
      Src: /src/gpac/src/compositor/mesh_collide.c:356,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 41
    argCount: 7
    argNames:
    - mesh
    - n
    - ray
    - closest
    - outPoint
    - outNormal
    - outTexCoords
    argTypes:
    - GF_Mesh*
    - AABBNode*
    - GF_Ray*
    - Fixed*
    - SFVec3f*
    - SFVec3f*
    - SFVec2f*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 298
    functionDepth: 2
    functionLinenumber: 298
    functionLinenumberEnd: 362
    functionName: gf_mesh_aabb_ray_hit
    functionSourceFile: /src/gpac/src/compositor/mesh_collide.c
    functionUses: 1
    functionsReached:
    - gf_vec_add
    - gf_vec_scale
    - gf_vec_cross
    - gf_vec_diff
    - ray_hit_triangle_get_u_v
    - gf_ray_hit_triangle
    - gf_vec_norm
    - MESH_GET_NORMAL
    - gf_mesh_aabb_ray_hit
    - gf_ray_hit_box
    linkageType: ''
    returnType: Bool
    signature: Bool gf_mesh_aabb_ray_hit(GF_Mesh *mesh, AABBNode *n, GF_Ray *ray,
      Fixed *closest, SFVec3f *outPoint, SFVec3f *outNormal, SFVec2f *outTexCoords)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_mesh_aabb_ray_hit
      Src: /src/gpac/src/compositor/mesh_collide.c:375,1
    - Dst: gf_ray_hit_box
      Src: /src/gpac/src/compositor/mesh_collide.c:379,1
    - Dst: gf_ray_hit_triangle
      Src: /src/gpac/src/compositor/mesh_collide.c:388,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/mesh_collide.c:401,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/mesh_collide.c:402,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh_collide.c:408,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh_collide.c:409,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mesh_collide.c:410,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh_collide.c:411,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/mesh_collide.c:413,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 50
    argCount: 5
    argNames:
    - mesh
    - ray
    - outPoint
    - outNormal
    - outTexCoords
    argTypes:
    - GF_Mesh*
    - GF_Ray*
    - SFVec3f*
    - SFVec3f*
    - SFVec2f*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 364
    functionDepth: 3
    functionLinenumber: 364
    functionLinenumberEnd: 431
    functionName: gf_mesh_intersect_ray
    functionSourceFile: /src/gpac/src/compositor/mesh_collide.c
    functionUses: 0
    functionsReached:
    - gf_vec_add
    - gf_vec_scale
    - gf_vec_cross
    - gf_vec_diff
    - gf_ray_hit_triangle
    - gf_vec_norm
    - MESH_GET_NORMAL
    - gf_mesh_aabb_ray_hit
    - gf_ray_hit_box
    linkageType: ''
    returnType: Bool
    signature: Bool gf_mesh_intersect_ray(GF_Mesh *mesh, GF_Ray *ray, SFVec3f *outPoint,
      SFVec3f *outNormal, SFVec2f *outTexCoords)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh_collide.c:439,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh_collide.c:440,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mesh_collide.c:442,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mesh_collide.c:444,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/mesh_collide.c:445,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh_collide.c:447,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh_collide.c:449,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mesh_collide.c:449,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mesh_collide.c:452,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh_collide.c:454,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mesh_collide.c:454,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh_collide.c:457,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mesh_collide.c:457,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 5
    argNames:
    - ray
    - v0
    - v1
    - v2
    - dist
    argTypes:
    - GF_Ray*
    - SFVec3f*
    - SFVec3f*
    - SFVec3f*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 459
      start: 434
    functionDepth: 1
    functionLinenumber: 434
    functionLinenumberEnd: 459
    functionName: mesh_collide_triangle
    functionSourceFile: /src/gpac/src/compositor/mesh_collide.c
    functionUses: 0
    functionsReached:
    - gf_vec_dot
    - ABS
    - gf_vec_cross
    - gf_vec_diff
    - gf_divfix
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE mesh_collide_triangle(GF_Ray *ray, SFVec3f *v0, SFVec3f *v1,
      SFVec3f *v2, Fixed *dist)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh_collide.c:469,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh_collide.c:472,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh_collide.c:477,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh_collide.c:480,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh_collide.c:485,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh_collide.c:488,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 4
    argNames:
    - sc
    - sq_rad
    - bmin
    - bmax
    argTypes:
    - SFVec3f
    - Fixed
    - SFVec3f
    - SFVec3f
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 462
    functionDepth: 0
    functionLinenumber: 462
    functionLinenumberEnd: 491
    functionName: sphere_box_overlap
    functionSourceFile: /src/gpac/src/compositor/mesh_collide.c
    functionUses: 0
    functionsReached:
    - gf_mulfix
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE sphere_box_overlap(SFVec3f sc, Fixed sq_rad, SFVec3f bmin,
      SFVec3f bmax)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: sphere_box_overlap
      Src: /src/gpac/src/compositor/mesh_collide.c:500,1
    - Dst: gf_mesh_closest_face_aabb
      Src: /src/gpac/src/compositor/mesh_collide.c:502,1
    - Dst: gf_mesh_closest_face_aabb
      Src: /src/gpac/src/compositor/mesh_collide.c:503,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh_collide.c:512,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh_collide.c:513,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mesh_collide.c:514,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh_collide.c:515,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/mesh_collide.c:517,1
    - Dst: gf_vec_rev
      Src: /src/gpac/src/compositor/mesh_collide.c:522,1
    - Dst: mesh_collide_triangle
      Src: /src/gpac/src/compositor/mesh_collide.c:523,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/mesh_collide.c:541,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/mesh_collide.c:542,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 40
    argCount: 7
    argNames:
    - mesh
    - node
    - pos
    - min_dist
    - min_sq_dist
    - min_col_dist
    - outPoint
    argTypes:
    - GF_Mesh*
    - AABBNode*
    - SFVec3f
    - Fixed
    - Fixed
    - Fixed*
    - SFVec3f*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 493
    functionDepth: 2
    functionLinenumber: 493
    functionLinenumberEnd: 545
    functionName: gf_mesh_closest_face_aabb
    functionSourceFile: /src/gpac/src/compositor/mesh_collide.c
    functionUses: 1
    functionsReached:
    - gf_vec_add
    - gf_vec_rev
    - gf_mesh_closest_face_aabb
    - gf_vec_cross
    - gf_vec_scale
    - gf_vec_diff
    - gf_vec_norm
    - MESH_GET_NORMAL
    - sphere_box_overlap
    - mesh_collide_triangle
    linkageType: ''
    returnType: Bool
    signature: Bool gf_mesh_closest_face_aabb(GF_Mesh *mesh, AABBNode *node, SFVec3f
      pos, Fixed min_dist, Fixed min_sq_dist, Fixed *min_col_dist, SFVec3f *outPoint)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh_collide.c:556,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/mesh_collide.c:557,1
    - Dst: gf_mesh_closest_face_aabb
      Src: /src/gpac/src/compositor/mesh_collide.c:562,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh_collide.c:573,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh_collide.c:574,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mesh_collide.c:575,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh_collide.c:576,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/mesh_collide.c:578,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mesh_collide.c:584,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mesh_collide.c:585,1
    - Dst: fabs
      Src: /src/gpac/src/compositor/mesh_collide.c:586,1
    - Dst: gf_vec_rev
      Src: /src/gpac/src/compositor/mesh_collide.c:590,1
    - Dst: mesh_collide_triangle
      Src: /src/gpac/src/compositor/mesh_collide.c:591,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/mesh_collide.c:609,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/mesh_collide.c:610,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 49
    argCount: 4
    argNames:
    - mesh
    - pos
    - min_dist
    - outPoint
    argTypes:
    - GF_Mesh*
    - SFVec3f
    - Fixed
    - SFVec3f*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 613
      start: 547
    functionDepth: 3
    functionLinenumber: 547
    functionLinenumberEnd: 613
    functionName: gf_mesh_closest_face
    functionSourceFile: /src/gpac/src/compositor/mesh_collide.c
    functionUses: 0
    functionsReached:
    - gf_vec_len
    - gf_vec_dot
    - gf_vec_add
    - gf_vec_rev
    - gf_mesh_closest_face_aabb
    - gf_vec_cross
    - gf_vec_scale
    - gf_vec_diff
    - gf_vec_norm
    - MESH_GET_NORMAL
    - fabs
    - mesh_collide_triangle
    linkageType: ''
    returnType: Bool
    signature: Bool gf_mesh_closest_face(GF_Mesh *mesh, SFVec3f pos, Fixed min_dist,
      SFVec3f *outPoint)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/bindable.c:34,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/bindable.c:35,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 1
    argNames:
    - bindable
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 30
    functionDepth: 2
    functionLinenumber: 30
    functionLinenumberEnd: 61
    functionName: Bindable_GetStack
    functionSourceFile: /src/gpac/src/compositor/bindable.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_node_get_private
    linkageType: ''
    returnType: GF_List
    signature: GF_List *Bindable_GetStack(GF_Node *bindable)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/bindable.c:66,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 1
    argNames:
    - bindable
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 63
    functionDepth: 2
    functionLinenumber: 63
    functionLinenumberEnd: 94
    functionName: Bindable_GetIsBound
    functionSourceFile: /src/gpac/src/compositor/bindable.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    linkageType: ''
    returnType: Bool
    signature: Bool Bindable_GetIsBound(GF_Node *bindable)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/bindable.c:100,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/bindable.c:108,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/bindable.c:115,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/bindable.c:127,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/bindable.c:141,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/bindable.c:148,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/bindable.c:159,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/bindable.c:160,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/bindable.c:162,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 67
    argCount: 2
    argNames:
    - bindable
    - val
    argTypes:
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 96
    functionDepth: 5
    functionLinenumber: 96
    functionLinenumberEnd: 163
    functionName: Bindable_SetIsBound
    functionSourceFile: /src/gpac/src/compositor/bindable.c
    functionUses: 6
    functionsReached:
    - gf_node_get_tag
    - gf_node_event_out_str
    - gf_node_dirty_set
    - gf_node_get_scene_time
    linkageType: ''
    returnType: void
    signature: void Bindable_SetIsBound(GF_Node *bindable, Bool val)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/bindable.c:169,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 1
    argNames:
    - bindable
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 166
    functionDepth: 2
    functionLinenumber: 166
    functionLinenumberEnd: 197
    functionName: Bindable_GetSetBind
    functionSourceFile: /src/gpac/src/compositor/bindable.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    linkageType: ''
    returnType: Bool
    signature: Bool Bindable_GetSetBind(GF_Node *bindable)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/bindable.c:202,1
    - Dst: on_set_bind
      Src: /src/gpac/src/compositor/bindable.c:205,1
    - Dst: on_set_bind
      Src: /src/gpac/src/compositor/bindable.c:209,1
    - Dst: on_set_bind
      Src: /src/gpac/src/compositor/bindable.c:216,1
    - Dst: on_set_bind
      Src: /src/gpac/src/compositor/bindable.c:223,1
    - Dst: on_set_bind
      Src: /src/gpac/src/compositor/bindable.c:230,1
    - Dst: on_set_bind
      Src: /src/gpac/src/compositor/bindable.c:237,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 3
    argNames:
    - bindable
    - val
    - stack
    argTypes:
    - GF_Node*
    - Bool
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 199
    functionDepth: 2
    functionLinenumber: 199
    functionLinenumberEnd: 242
    functionName: Bindable_SetSetBindEx
    functionSourceFile: /src/gpac/src/compositor/bindable.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - on_set_bind
    linkageType: ''
    returnType: void
    signature: void Bindable_SetSetBindEx(GF_Node *bindable, Bool val, GF_List *stack)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Bindable_SetSetBindEx
      Src: /src/gpac/src/compositor/bindable.c:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - bindable
    - val
    argTypes:
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 243
    functionDepth: 3
    functionLinenumber: 243
    functionLinenumberEnd: 246
    functionName: Bindable_SetSetBind
    functionSourceFile: /src/gpac/src/compositor/bindable.c
    functionUses: 4
    functionsReached:
    - Bindable_SetSetBindEx
    linkageType: ''
    returnType: void
    signature: void Bindable_SetSetBind(GF_Node *bindable, Bool val)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: Bindable_GetSetBind
      Src: /src/gpac/src/compositor/bindable.c:255,1
    - Dst: Bindable_GetIsBound
      Src: /src/gpac/src/compositor/bindable.c:256,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/bindable.c:262,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/bindable.c:265,1
    - Dst: Bindable_SetIsBound
      Src: /src/gpac/src/compositor/bindable.c:268,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/bindable.c:269,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/bindable.c:270,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/bindable.c:271,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/bindable.c:272,1
    - Dst: Bindable_SetIsBound
      Src: /src/gpac/src/compositor/bindable.c:273,1
    - Dst: Bindable_SetIsBound
      Src: /src/gpac/src/compositor/bindable.c:276,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/bindable.c:279,1
    - Dst: Bindable_SetIsBound
      Src: /src/gpac/src/compositor/bindable.c:280,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/bindable.c:282,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/compositor/bindable.c:283,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/bindable.c:288,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/bindable.c:290,1
    - Dst: gf_sc_get_compositor
      Src: /src/gpac/src/compositor/bindable.c:290,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 34
    argCount: 3
    argNames:
    - bindable
    - stack_list
    - for_stack
    argTypes:
    - GF_Node*
    - GF_List*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 248
    functionDepth: 6
    functionLinenumber: 248
    functionLinenumberEnd: 291
    functionName: Bindable_OnSetBind
    functionSourceFile: /src/gpac/src/compositor/bindable.c
    functionUses: 6
    functionsReached:
    - Bindable_SetIsBound
    - gf_list_insert
    - Bindable_GetSetBind
    - gf_list_get
    - gf_node_dirty_set
    - gf_list_count
    - gf_sc_get_compositor
    - Bindable_GetIsBound
    - gf_list_add
    - gf_list_del_item
    - gf_sc_invalidate
    - gf_list_enum
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void Bindable_OnSetBind(GF_Node *bindable, GF_List *stack_list, GF_List
      *for_stack)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/bindable.c:295,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/bindable.c:297,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/bindable.c:298,1
    - Dst: Bindable_GetStack
      Src: /src/gpac/src/compositor/bindable.c:299,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/bindable.c:301,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/bindable.c:304,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - stack
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 293
    functionDepth: 3
    functionLinenumber: 293
    functionLinenumberEnd: 305
    functionName: BindableStackDelete
    functionSourceFile: /src/gpac/src/compositor/bindable.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - Bindable_GetStack
    - gf_list_count
    - gf_list_del_item
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void BindableStackDelete(GF_List *stack)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Bindable_GetIsBound
      Src: /src/gpac/src/compositor/bindable.c:309,1
    - Dst: Bindable_SetIsBound
      Src: /src/gpac/src/compositor/bindable.c:310,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/bindable.c:312,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/bindable.c:313,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/bindable.c:314,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/bindable.c:315,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/bindable.c:317,1
    - Dst: Bindable_SetSetBind
      Src: /src/gpac/src/compositor/bindable.c:318,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - bindable
    - stack_list
    argTypes:
    - GF_Node*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 307
    functionDepth: 6
    functionLinenumber: 307
    functionLinenumberEnd: 321
    functionName: PreDestroyBindable
    functionSourceFile: /src/gpac/src/compositor/bindable.c
    functionUses: 3
    functionsReached:
    - Bindable_SetIsBound
    - gf_list_get
    - Bindable_SetSetBind
    - gf_list_count
    - Bindable_GetIsBound
    - gf_list_del_item
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void PreDestroyBindable(GF_Node *bindable, GF_List *stack_list)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/x3d_geometry.c:35,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/x3d_geometry.c:37,1
    - Dst: gf_path_add_ellipse
      Src: /src/gpac/src/compositor/x3d_geometry.c:38,1
    - Dst: gf_path_add_ellipse
      Src: /src/gpac/src/compositor/x3d_geometry.c:40,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/x3d_geometry.c:41,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/x3d_geometry.c:42,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 44
    functionName: disk2d_check_changes
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - gf_path_add_ellipse
    - drawable_reset_path
    - drawable_mark_modified
    - gf_node_dirty_get
    - gf_node_dirty_clear
    linkageType: ''
    returnType: void
    signature: void disk2d_check_changes(GF_Node *node, Drawable *stack, GF_TraverseState
      *tr_state)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/x3d_geometry.c:49,1
    - Dst: drawable_node_del
      Src: /src/gpac/src/compositor/x3d_geometry.c:53,1
    - Dst: disk2d_check_changes
      Src: /src/gpac/src/compositor/x3d_geometry.c:57,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/x3d_geometry.c:63,1
    - Dst: mesh_from_path
      Src: /src/gpac/src/compositor/x3d_geometry.c:65,1
    - Dst: visual_3d_draw_2d
      Src: /src/gpac/src/compositor/x3d_geometry.c:67,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/x3d_geometry.c:71,1
    - Dst: vrml_drawable_pick
      Src: /src/gpac/src/compositor/x3d_geometry.c:74,1
    - Dst: drawable_init_context_mpeg4
      Src: /src/gpac/src/compositor/x3d_geometry.c:80,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/x3d_geometry.c:82,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 46
    functionDepth: 2
    functionLinenumber: 46
    functionLinenumberEnd: 85
    functionName: TraverseDisk2D
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - drawable_node_del
    - mesh_from_path
    - drawable_init_context_mpeg4
    - disk2d_check_changes
    - drawable_finalize_sort
    - visual_3d_draw_2d
    - new_mesh
    - vrml_drawable_pick
    - gf_node_get_private
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void TraverseDisk2D(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_stack_new
      Src: /src/gpac/src/compositor/x3d_geometry.c:89,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/x3d_geometry.c:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 87
    functionDepth: 2
    functionLinenumber: 87
    functionLinenumberEnd: 91
    functionName: compositor_init_disk2d
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_stack_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_disk2d(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/x3d_geometry.c:95,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/x3d_geometry.c:96,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/x3d_geometry.c:97,1
    - Dst: gf_path_add_arc
      Src: /src/gpac/src/compositor/x3d_geometry.c:99,1
    - Dst: gf_path_add_arc
      Src: /src/gpac/src/compositor/x3d_geometry.c:102,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/x3d_geometry.c:102,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/x3d_geometry.c:104,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/x3d_geometry.c:105,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 107
    functionName: arc2d_check_changes
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_path_add_arc
    - drawable_reset_path
    - drawable_mark_modified
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - stricmp
    linkageType: ''
    returnType: void
    signature: void arc2d_check_changes(GF_Node *node, Drawable *stack, GF_TraverseState
      *tr_state)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/x3d_geometry.c:112,1
    - Dst: drawable_node_del
      Src: /src/gpac/src/compositor/x3d_geometry.c:115,1
    - Dst: arc2d_check_changes
      Src: /src/gpac/src/compositor/x3d_geometry.c:119,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/x3d_geometry.c:125,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/x3d_geometry.c:126,1
    - Dst: mesh_get_outline
      Src: /src/gpac/src/compositor/x3d_geometry.c:127,1
    - Dst: mesh_from_path
      Src: /src/gpac/src/compositor/x3d_geometry.c:129,1
    - Dst: visual_3d_draw_2d
      Src: /src/gpac/src/compositor/x3d_geometry.c:132,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/x3d_geometry.c:136,1
    - Dst: gf_bbox_from_rect
      Src: /src/gpac/src/compositor/x3d_geometry.c:138,1
    - Dst: vrml_drawable_pick
      Src: /src/gpac/src/compositor/x3d_geometry.c:142,1
    - Dst: drawable_init_context_mpeg4
      Src: /src/gpac/src/compositor/x3d_geometry.c:148,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/x3d_geometry.c:150,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 34
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 109
    functionDepth: 3
    functionLinenumber: 109
    functionLinenumberEnd: 153
    functionName: TraverseArc2D
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - drawable_node_del
    - mesh_from_path
    - drawable_init_context_mpeg4
    - arc2d_check_changes
    - drawable_finalize_sort
    - gf_bbox_from_rect
    - visual_3d_draw_2d
    - new_mesh
    - mesh_get_outline
    - vrml_drawable_pick
    - gf_node_get_private
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void TraverseArc2D(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_stack_new
      Src: /src/gpac/src/compositor/x3d_geometry.c:157,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/x3d_geometry.c:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 155
    functionDepth: 2
    functionLinenumber: 155
    functionLinenumberEnd: 159
    functionName: compositor_init_arc2d
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_stack_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_arc2d(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/x3d_geometry.c:163,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/x3d_geometry.c:166,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/x3d_geometry.c:169,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/x3d_geometry.c:171,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/x3d_geometry.c:174,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/x3d_geometry.c:175,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 177
    functionName: polyline2d_check_changes
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - drawable_reset_path
    - drawable_mark_modified
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_path_add_move_to
    - gf_path_add_line_to
    linkageType: ''
    returnType: void
    signature: void polyline2d_check_changes(GF_Node *node, Drawable *stack, GF_TraverseState
      *tr_state)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/x3d_geometry.c:182,1
    - Dst: drawable_node_del
      Src: /src/gpac/src/compositor/x3d_geometry.c:185,1
    - Dst: polyline2d_check_changes
      Src: /src/gpac/src/compositor/x3d_geometry.c:189,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/x3d_geometry.c:195,1
    - Dst: mesh_get_outline
      Src: /src/gpac/src/compositor/x3d_geometry.c:196,1
    - Dst: visual_3d_draw_2d
      Src: /src/gpac/src/compositor/x3d_geometry.c:198,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/x3d_geometry.c:202,1
    - Dst: vrml_drawable_pick
      Src: /src/gpac/src/compositor/x3d_geometry.c:205,1
    - Dst: drawable_init_context_mpeg4
      Src: /src/gpac/src/compositor/x3d_geometry.c:211,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/x3d_geometry.c:213,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 179
    functionDepth: 2
    functionLinenumber: 179
    functionLinenumberEnd: 216
    functionName: TraversePolyline2D
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - drawable_node_del
    - drawable_init_context_mpeg4
    - drawable_finalize_sort
    - visual_3d_draw_2d
    - new_mesh
    - mesh_get_outline
    - polyline2d_check_changes
    - vrml_drawable_pick
    - gf_node_get_private
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void TraversePolyline2D(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_stack_new
      Src: /src/gpac/src/compositor/x3d_geometry.c:220,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/x3d_geometry.c:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 218
    functionDepth: 2
    functionLinenumber: 218
    functionLinenumberEnd: 222
    functionName: compositor_init_polyline2d
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_stack_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_polyline2d(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/x3d_geometry.c:226,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/x3d_geometry.c:229,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/x3d_geometry.c:233,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/x3d_geometry.c:234,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/x3d_geometry.c:235,1
    - Dst: gf_path_close
      Src: /src/gpac/src/compositor/x3d_geometry.c:236,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/x3d_geometry.c:238,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/x3d_geometry.c:239,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 241
    functionName: triangleset2d_check_changes
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - drawable_reset_path
    - drawable_mark_modified
    - gf_node_dirty_get
    - gf_path_add_move_to
    - gf_node_dirty_clear
    - gf_path_add_line_to
    - gf_path_close
    linkageType: ''
    returnType: void
    signature: void triangleset2d_check_changes(GF_Node *node, Drawable *stack, GF_TraverseState
      *tr_state)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/x3d_geometry.c:246,1
    - Dst: drawable_node_del
      Src: /src/gpac/src/compositor/x3d_geometry.c:250,1
    - Dst: triangleset2d_check_changes
      Src: /src/gpac/src/compositor/x3d_geometry.c:254,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/x3d_geometry.c:265,1
    - Dst: MESH_MAKE_COL
      Src: /src/gpac/src/compositor/x3d_geometry.c:269,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/x3d_geometry.c:284,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/x3d_geometry.c:285,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/x3d_geometry.c:286,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/x3d_geometry.c:287,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/x3d_geometry.c:288,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/x3d_geometry.c:289,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/x3d_geometry.c:291,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/x3d_geometry.c:293,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/x3d_geometry.c:297,1
    - Dst: visual_3d_draw_2d
      Src: /src/gpac/src/compositor/x3d_geometry.c:299,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/x3d_geometry.c:303,1
    - Dst: vrml_drawable_pick
      Src: /src/gpac/src/compositor/x3d_geometry.c:306,1
    - Dst: drawable_init_context_mpeg4
      Src: /src/gpac/src/compositor/x3d_geometry.c:312,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/x3d_geometry.c:314,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 61
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 243
    functionDepth: 2
    functionLinenumber: 243
    functionLinenumberEnd: 317
    functionName: TraverseTriangleSet2D
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - drawable_node_del
    - drawable_init_context_mpeg4
    - triangleset2d_check_changes
    - gf_vec_cross
    - drawable_finalize_sort
    - mesh_set_vertex_vx
    - gf_vec_diff
    - gf_path_get_bounds
    - visual_3d_draw_2d
    - mesh_set_triangle
    - new_mesh
    - MESH_MAKE_COL
    - vrml_drawable_pick
    - gf_node_get_private
    - mesh_update_bounds
    linkageType: ''
    returnType: void
    signature: void TraverseTriangleSet2D(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_stack_new
      Src: /src/gpac/src/compositor/x3d_geometry.c:321,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/x3d_geometry.c:322,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 319
    functionDepth: 2
    functionLinenumber: 319
    functionLinenumberEnd: 323
    functionName: compositor_init_triangle_set2d
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_stack_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_triangle_set2d(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesh_set_point
      Src: /src/gpac/src/compositor/x3d_geometry.c:337,1
    - Dst: mesh_set_index
      Src: /src/gpac/src/compositor/x3d_geometry.c:338,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable3D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 327
    functionDepth: 1
    functionLinenumber: 327
    functionLinenumberEnd: 340
    functionName: build_polypoint2d
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - mesh_set_point
    - mesh_set_index
    linkageType: ''
    returnType: void
    signature: void build_polypoint2d(GF_Node *node, Drawable3D *stack, GF_TraverseState
      *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_base_traverse
      Src: /src/gpac/src/compositor/x3d_geometry.c:344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 342
    functionDepth: 1
    functionLinenumber: 342
    functionLinenumberEnd: 345
    functionName: TraversePolypoint2D
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - drawable_3d_base_traverse
    linkageType: ''
    returnType: void
    signature: void TraversePolypoint2D(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/x3d_geometry.c:349,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/x3d_geometry.c:350,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 347
    functionDepth: 2
    functionLinenumber: 347
    functionLinenumberEnd: 351
    functionName: compositor_init_polypoint2d
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_3d_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_polypoint2d(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/x3d_geometry.c:368,1
    - Dst: memset
      Src: /src/gpac/src/compositor/x3d_geometry.c:376,1
    - Dst: gf_sg_sfcolor_to_rgba
      Src: /src/gpac/src/compositor/x3d_geometry.c:386,1
    - Dst: MESH_MAKE_COL
      Src: /src/gpac/src/compositor/x3d_geometry.c:388,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/x3d_geometry.c:390,1
    - Dst: mesh_set_index
      Src: /src/gpac/src/compositor/x3d_geometry.c:392,1
    - Dst: mesh_set_index
      Src: /src/gpac/src/compositor/x3d_geometry.c:393,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/x3d_geometry.c:400,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 40
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable3D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 353
    functionDepth: 2
    functionLinenumber: 353
    functionLinenumberEnd: 401
    functionName: build_line_set
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - mesh_set_index
    - mesh_set_vertex_vx
    - gf_sg_sfcolor_to_rgba
    - MESH_MAKE_COL
    - memset
    - mesh_update_bounds
    linkageType: ''
    returnType: void
    signature: void build_line_set(GF_Node *node, Drawable3D *stack, GF_TraverseState
      *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_base_traverse
      Src: /src/gpac/src/compositor/x3d_geometry.c:405,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 403
    functionDepth: 1
    functionLinenumber: 403
    functionLinenumberEnd: 406
    functionName: TraverseLineSet
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - drawable_3d_base_traverse
    linkageType: ''
    returnType: void
    signature: void TraverseLineSet(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/x3d_geometry.c:411,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/x3d_geometry.c:412,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 409
    functionDepth: 2
    functionLinenumber: 409
    functionLinenumberEnd: 413
    functionName: compositor_init_lineset
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_3d_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_lineset(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/x3d_geometry.c:426,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/x3d_geometry.c:431,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/x3d_geometry.c:444,1
    - Dst: memset
      Src: /src/gpac/src/compositor/x3d_geometry.c:461,1
    - Dst: gf_sg_sfcolor_to_rgba
      Src: /src/gpac/src/compositor/x3d_geometry.c:475,1
    - Dst: MESH_MAKE_COL
      Src: /src/gpac/src/compositor/x3d_geometry.c:477,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/x3d_geometry.c:481,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/x3d_geometry.c:482,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/x3d_geometry.c:504,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/x3d_geometry.c:507,1
    - Dst: mesh_generate_tex_coords
      Src: /src/gpac/src/compositor/x3d_geometry.c:509,1
    - Dst: mesh_recompute_normals
      Src: /src/gpac/src/compositor/x3d_geometry.c:514,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/x3d_geometry.c:516,1
    - Dst: gf_mesh_build_aabbtree
      Src: /src/gpac/src/compositor/x3d_geometry.c:517,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 96
    argCount: 9
    argNames:
    - mesh
    - _coords
    - _color
    - _txcoords
    - _normal
    - indices
    - normalPerVertex
    - ccw
    - solid
    argTypes:
    - GF_Mesh*
    - GF_Node*
    - GF_Node*
    - GF_Node*
    - GF_Node*
    - MFInt32*
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 415
    functionDepth: 5
    functionLinenumber: 415
    functionLinenumberEnd: 518
    functionName: BuildTriangleSet
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_mesh_build_aabbtree
    - mesh_recompute_normals
    - mesh_set_vertex_vx
    - gf_sg_sfcolor_to_rgba
    - mesh_set_triangle
    - mesh_generate_tex_coords
    - MESH_MAKE_COL
    - memset
    - MESH_SET_NORMAL
    - gf_vec_norm
    - mesh_reset
    - mesh_update_bounds
    linkageType: ''
    returnType: void
    signature: void BuildTriangleSet(GF_Mesh *mesh, GF_Node *_coords, GF_Node *_color,
      GF_Node *_txcoords, GF_Node *_normal, MFInt32 *indices, Bool normalPerVertex,
      Bool ccw, Bool solid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BuildTriangleSet
      Src: /src/gpac/src/compositor/x3d_geometry.c:524,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable3D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 520
    functionDepth: 6
    functionLinenumber: 520
    functionLinenumberEnd: 525
    functionName: build_triangle_set
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - BuildTriangleSet
    linkageType: ''
    returnType: void
    signature: void build_triangle_set(GF_Node *node, Drawable3D *stack, GF_TraverseState
      *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_base_traverse
      Src: /src/gpac/src/compositor/x3d_geometry.c:529,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 527
    functionDepth: 1
    functionLinenumber: 527
    functionLinenumberEnd: 530
    functionName: TraverseTriangleSet
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - drawable_3d_base_traverse
    linkageType: ''
    returnType: void
    signature: void TraverseTriangleSet(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/x3d_geometry.c:535,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/x3d_geometry.c:536,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 537
      start: 533
    functionDepth: 2
    functionLinenumber: 533
    functionLinenumberEnd: 537
    functionName: compositor_init_triangle_set
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_3d_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_triangle_set(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BuildTriangleSet
      Src: /src/gpac/src/compositor/x3d_geometry.c:544,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable3D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 540
    functionDepth: 6
    functionLinenumber: 540
    functionLinenumberEnd: 545
    functionName: build_indexed_triangle_set
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - BuildTriangleSet
    linkageType: ''
    returnType: void
    signature: void build_indexed_triangle_set(GF_Node *node, Drawable3D *stack, GF_TraverseState
      *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_base_traverse
      Src: /src/gpac/src/compositor/x3d_geometry.c:549,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 547
    functionDepth: 1
    functionLinenumber: 547
    functionLinenumberEnd: 550
    functionName: TraverseIndexedTriangleSet
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - drawable_3d_base_traverse
    linkageType: ''
    returnType: void
    signature: void TraverseIndexedTriangleSet(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/x3d_geometry.c:556,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/x3d_geometry.c:557,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 552
    functionDepth: 6
    functionLinenumber: 552
    functionLinenumberEnd: 559
    functionName: ITS_SetIndex
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_copy
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: void
    signature: void ITS_SetIndex(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/x3d_geometry.c:564,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/x3d_geometry.c:565,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/x3d_geometry.c:569,1
    - Dst: ITS_SetIndex
      Src: /src/gpac/src/compositor/x3d_geometry.c:570,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 574
      start: 561
    functionDepth: 7
    functionLinenumber: 561
    functionLinenumberEnd: 574
    functionName: compositor_init_indexed_triangle_set
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 1
    functionsReached:
    - ITS_SetIndex
    - gf_node_set_callback_function
    - drawable_3d_new
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: void
    signature: void compositor_init_indexed_triangle_set(GF_Compositor *compositor,
      GF_Node *node)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/x3d_geometry.c:588,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/x3d_geometry.c:593,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/x3d_geometry.c:606,1
    - Dst: memset
      Src: /src/gpac/src/compositor/x3d_geometry.c:616,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/x3d_geometry.c:627,1
    - Dst: gf_sg_sfcolor_to_rgba
      Src: /src/gpac/src/compositor/x3d_geometry.c:641,1
    - Dst: MESH_MAKE_COL
      Src: /src/gpac/src/compositor/x3d_geometry.c:643,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/x3d_geometry.c:648,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/x3d_geometry.c:649,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/x3d_geometry.c:673,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/x3d_geometry.c:674,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/x3d_geometry.c:676,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/x3d_geometry.c:685,1
    - Dst: mesh_generate_tex_coords
      Src: /src/gpac/src/compositor/x3d_geometry.c:690,1
    - Dst: mesh_recompute_normals
      Src: /src/gpac/src/compositor/x3d_geometry.c:700,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/x3d_geometry.c:705,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/x3d_geometry.c:706,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/x3d_geometry.c:707,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/x3d_geometry.c:728,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/x3d_geometry.c:730,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/x3d_geometry.c:732,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/x3d_geometry.c:733,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/x3d_geometry.c:735,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/x3d_geometry.c:736,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/x3d_geometry.c:741,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/x3d_geometry.c:742,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/x3d_geometry.c:743,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/x3d_geometry.c:744,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/x3d_geometry.c:746,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/x3d_geometry.c:759,1
    - Dst: gf_mesh_build_aabbtree
      Src: /src/gpac/src/compositor/x3d_geometry.c:760,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 157
    argCount: 10
    argNames:
    - mesh
    - _coords
    - _color
    - _txcoords
    - _normal
    - stripList
    - indices
    - normalPerVertex
    - ccw
    - solid
    argTypes:
    - GF_Mesh*
    - GF_Node*
    - GF_Node*
    - GF_Node*
    - GF_Node*
    - MFInt32*
    - MFInt32*
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 761
      start: 577
    functionDepth: 5
    functionLinenumber: 577
    functionLinenumberEnd: 761
    functionName: BuildTriangleStripSet
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_vec_add
    - gf_vec_scale
    - mesh_recompute_normals
    - gf_mesh_build_aabbtree
    - mesh_set_vertex_vx
    - GF_LOG
    - gf_sg_sfcolor_to_rgba
    - mesh_set_triangle
    - mesh_generate_tex_coords
    - MESH_MAKE_COL
    - memset
    - MESH_SET_NORMAL
    - gf_vec_norm
    - mesh_reset
    - MESH_GET_NORMAL
    - mesh_update_bounds
    linkageType: ''
    returnType: void
    signature: void BuildTriangleStripSet(GF_Mesh *mesh, GF_Node *_coords, GF_Node
      *_color, GF_Node *_txcoords, GF_Node *_normal, MFInt32 *stripList, MFInt32 *indices,
      Bool normalPerVertex, Bool ccw, Bool solid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BuildTriangleStripSet
      Src: /src/gpac/src/compositor/x3d_geometry.c:767,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable3D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 763
    functionDepth: 6
    functionLinenumber: 763
    functionLinenumberEnd: 768
    functionName: build_triangle_strip_set
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - BuildTriangleStripSet
    linkageType: ''
    returnType: void
    signature: void build_triangle_strip_set(GF_Node *node, Drawable3D *stack, GF_TraverseState
      *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_base_traverse
      Src: /src/gpac/src/compositor/x3d_geometry.c:772,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 773
      start: 770
    functionDepth: 1
    functionLinenumber: 770
    functionLinenumberEnd: 773
    functionName: TraverseTriangleStripSet
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - drawable_3d_base_traverse
    linkageType: ''
    returnType: void
    signature: void TraverseTriangleStripSet(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/x3d_geometry.c:777,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/x3d_geometry.c:778,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 779
      start: 775
    functionDepth: 2
    functionLinenumber: 775
    functionLinenumberEnd: 779
    functionName: compositor_init_triangle_strip_set
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_3d_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_triangle_strip_set(GF_Compositor *compositor,
      GF_Node *node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/compositor/x3d_geometry.c:796,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/compositor/x3d_geometry.c:806,1
    - Dst: BuildTriangleStripSet
      Src: /src/gpac/src/compositor/x3d_geometry.c:809,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/x3d_geometry.c:810,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable3D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 811
      start: 781
    functionDepth: 6
    functionLinenumber: 781
    functionLinenumberEnd: 811
    functionName: build_indexed_triangle_strip_set
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - BuildTriangleStripSet
    - gf_sg_vrml_mf_reset
    - gf_sg_vrml_mf_append
    linkageType: ''
    returnType: void
    signature: void build_indexed_triangle_strip_set(GF_Node *node, Drawable3D *stack,
      GF_TraverseState *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_base_traverse
      Src: /src/gpac/src/compositor/x3d_geometry.c:815,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 816
      start: 813
    functionDepth: 1
    functionLinenumber: 813
    functionLinenumberEnd: 816
    functionName: TraverseIndexedTriangleStripSet
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - drawable_3d_base_traverse
    linkageType: ''
    returnType: void
    signature: void TraverseIndexedTriangleStripSet(GF_Node *node, void *rs, Bool
      is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/x3d_geometry.c:822,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/x3d_geometry.c:823,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 825
      start: 818
    functionDepth: 6
    functionLinenumber: 818
    functionLinenumberEnd: 825
    functionName: ITSS_SetIndex
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_copy
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: void
    signature: void ITSS_SetIndex(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/x3d_geometry.c:830,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/x3d_geometry.c:831,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/x3d_geometry.c:835,1
    - Dst: ITSS_SetIndex
      Src: /src/gpac/src/compositor/x3d_geometry.c:836,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 827
    functionDepth: 7
    functionLinenumber: 827
    functionLinenumberEnd: 839
    functionName: compositor_init_indexed_triangle_strip_set
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 1
    functionsReached:
    - ITSS_SetIndex
    - gf_node_set_callback_function
    - drawable_3d_new
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: void
    signature: void compositor_init_indexed_triangle_strip_set(GF_Compositor *compositor,
      GF_Node *node)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/x3d_geometry.c:852,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/x3d_geometry.c:857,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/x3d_geometry.c:870,1
    - Dst: memset
      Src: /src/gpac/src/compositor/x3d_geometry.c:881,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/x3d_geometry.c:892,1
    - Dst: gf_sg_sfcolor_to_rgba
      Src: /src/gpac/src/compositor/x3d_geometry.c:905,1
    - Dst: MESH_MAKE_COL
      Src: /src/gpac/src/compositor/x3d_geometry.c:907,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/x3d_geometry.c:912,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/x3d_geometry.c:913,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/x3d_geometry.c:935,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/x3d_geometry.c:943,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/x3d_geometry.c:944,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/x3d_geometry.c:948,1
    - Dst: mesh_generate_tex_coords
      Src: /src/gpac/src/compositor/x3d_geometry.c:953,1
    - Dst: mesh_recompute_normals
      Src: /src/gpac/src/compositor/x3d_geometry.c:959,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/x3d_geometry.c:974,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/x3d_geometry.c:979,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/x3d_geometry.c:980,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/x3d_geometry.c:981,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/x3d_geometry.c:982,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/x3d_geometry.c:983,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/x3d_geometry.c:988,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/x3d_geometry.c:990,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/x3d_geometry.c:996,1
    - Dst: gf_mesh_build_aabbtree
      Src: /src/gpac/src/compositor/x3d_geometry.c:997,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 140
    argCount: 10
    argNames:
    - mesh
    - _coords
    - _color
    - _txcoords
    - _normal
    - fanList
    - indices
    - normalPerVertex
    - ccw
    - solid
    argTypes:
    - GF_Mesh*
    - GF_Node*
    - GF_Node*
    - GF_Node*
    - GF_Node*
    - MFInt32*
    - MFInt32*
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 998
      start: 842
    functionDepth: 5
    functionLinenumber: 842
    functionLinenumberEnd: 998
    functionName: BuildTriangleFanSet
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_vec_add
    - gf_mesh_build_aabbtree
    - mesh_recompute_normals
    - mesh_set_vertex_vx
    - GF_LOG
    - gf_sg_sfcolor_to_rgba
    - mesh_set_triangle
    - mesh_generate_tex_coords
    - MESH_MAKE_COL
    - memset
    - MESH_SET_NORMAL
    - gf_vec_norm
    - mesh_reset
    - MESH_GET_NORMAL
    - mesh_update_bounds
    linkageType: ''
    returnType: void
    signature: void BuildTriangleFanSet(GF_Mesh *mesh, GF_Node *_coords, GF_Node *_color,
      GF_Node *_txcoords, GF_Node *_normal, MFInt32 *fanList, MFInt32 *indices, Bool
      normalPerVertex, Bool ccw, Bool solid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BuildTriangleFanSet
      Src: /src/gpac/src/compositor/x3d_geometry.c:1004,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable3D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1005
      start: 1000
    functionDepth: 6
    functionLinenumber: 1000
    functionLinenumberEnd: 1005
    functionName: build_triangle_fan_set
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - BuildTriangleFanSet
    linkageType: ''
    returnType: void
    signature: void build_triangle_fan_set(GF_Node *node, Drawable3D *stack, GF_TraverseState
      *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_base_traverse
      Src: /src/gpac/src/compositor/x3d_geometry.c:1009,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1010
      start: 1007
    functionDepth: 1
    functionLinenumber: 1007
    functionLinenumberEnd: 1010
    functionName: TraverseTriangleFanSet
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - drawable_3d_base_traverse
    linkageType: ''
    returnType: void
    signature: void TraverseTriangleFanSet(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/x3d_geometry.c:1014,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/x3d_geometry.c:1015,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1016
      start: 1012
    functionDepth: 2
    functionLinenumber: 1012
    functionLinenumberEnd: 1016
    functionName: compositor_init_triangle_fan_set
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_3d_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_triangle_fan_set(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/x3d_geometry.c:1023,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/compositor/x3d_geometry.c:1033,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/compositor/x3d_geometry.c:1043,1
    - Dst: BuildTriangleFanSet
      Src: /src/gpac/src/compositor/x3d_geometry.c:1046,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/x3d_geometry.c:1047,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable3D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1048
      start: 1018
    functionDepth: 6
    functionLinenumber: 1018
    functionLinenumberEnd: 1048
    functionName: build_indexed_triangle_fan_set
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_mf_reset
    - BuildTriangleFanSet
    - gf_sg_vrml_mf_append
    - gf_node_dirty_clear
    linkageType: ''
    returnType: void
    signature: void build_indexed_triangle_fan_set(GF_Node *node, Drawable3D *stack,
      GF_TraverseState *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_base_traverse
      Src: /src/gpac/src/compositor/x3d_geometry.c:1052,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1053
      start: 1050
    functionDepth: 1
    functionLinenumber: 1050
    functionLinenumberEnd: 1053
    functionName: TraverseIndexedTriangleFanSet
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - drawable_3d_base_traverse
    linkageType: ''
    returnType: void
    signature: void TraverseIndexedTriangleFanSet(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/x3d_geometry.c:1059,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/x3d_geometry.c:1060,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1062
      start: 1055
    functionDepth: 6
    functionLinenumber: 1055
    functionLinenumberEnd: 1062
    functionName: ITFS_SetIndex
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_copy
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: void
    signature: void ITFS_SetIndex(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/x3d_geometry.c:1067,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/x3d_geometry.c:1068,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/x3d_geometry.c:1072,1
    - Dst: ITFS_SetIndex
      Src: /src/gpac/src/compositor/x3d_geometry.c:1073,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1076
      start: 1064
    functionDepth: 7
    functionLinenumber: 1064
    functionLinenumberEnd: 1076
    functionName: compositor_init_indexed_triangle_fan_set
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 1
    functionsReached:
    - ITFS_SetIndex
    - gf_node_set_callback_function
    - drawable_3d_new
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: void
    signature: void compositor_init_indexed_triangle_fan_set(GF_Compositor *compositor,
      GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:97,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:98,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:100,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:102,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - priv
    - fieldType
    - fieldName
    argTypes:
    - GF_InputSensorCtx*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 95
    functionDepth: 3
    functionLinenumber: 95
    functionLinenumberEnd: 104
    functionName: add_field
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - memset
    - gf_list_add
    - gf_sg_vrml_field_pointer_new
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void add_field(GF_InputSensorCtx *priv, u32 fieldType, const char *fieldName)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: add_field
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:110,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - dev
    - fieldType
    - fieldName
    argTypes:
    - GF_InputSensorDevice*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 106
    functionDepth: 4
    functionLinenumber: 106
    functionLinenumberEnd: 112
    functionName: isdev_add_field
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - add_field
    linkageType: ''
    returnType: void
    signature: void isdev_add_field(GF_InputSensorDevice *dev, u32 fieldType, const
      char *fieldName)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:125,1
    - Dst: IS_ProcessData
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:127,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - dev
    - data
    - data_len
    argTypes:
    - struct __input_device*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 130
    functionName: isdev_dispatch_frame
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - IS_ProcessData
    linkageType: ''
    returnType: void
    signature: void isdev_dispatch_frame(struct __input_device *dev, const u8 *data,
      u32 data_len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:135,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:137,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - scene
    - for_odm
    argTypes:
    - GF_Scene*
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 141
    functionName: locate_is_ctx_for_odm
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_InputSensorCtx
    signature: GF_InputSensorCtx *locate_is_ctx_for_odm(GF_Scene *scene, GF_ObjectManager
      *for_odm)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:158,1
    - Dst: locate_is_ctx_for_odm
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:161,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:164,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:168,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:169,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:173,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:174,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:176,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:178,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:180,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:183,1
    - Dst: add_field
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:185,1
    - Dst: add_field
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:186,1
    - Dst: add_field
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:187,1
    - Dst: add_field
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:188,1
    - Dst: add_field
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:189,1
    - Dst: add_field
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:190,1
    - Dst: add_field
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:191,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:193,1
    - Dst: add_field
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:195,1
    - Dst: add_field
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:196,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:204,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:208,1
    - Dst: add_field
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:210,1
    - Dst: add_field
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:211,1
    - Dst: add_field
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:212,1
    - Dst: add_field
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:213,1
    - Dst: add_field
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:214,1
    - Dst: gf_modules_count
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:219,1
    - Dst: gf_modules_load
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:221,1
    - Dst: GF_InputSensorDevice*::RegisterDevice
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:224,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:228,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:231,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:238,1
    - Dst: isdev_add_field
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:239,1
    - Dst: isdev_dispatch_frame
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:240,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:244,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 82
    argCount: 2
    argNames:
    - odm
    - esd
    argTypes:
    - GF_ObjectManager*
    - GF_ESD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 143
    functionDepth: 5
    functionLinenumber: 143
    functionLinenumberEnd: 246
    functionName: gf_input_sensor_setup_object
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_sys_is_cov_mode
    - gf_list_new
    - add_field
    - gf_utf8_mbstowcs
    - gf_list_add
    - stricmp
    - gf_crc_32
    - gf_modules_count
    - isdev_add_field
    - locate_is_ctx_for_odm
    - gf_modules_close_interface
    - gf_modules_load
    - isdev_dispatch_frame
    - gf_bs_del
    - gf_bs_read_int
    - GF_InputSensorDevice*::RegisterDevice
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_input_sensor_setup_object(GF_ObjectManager *odm, GF_ESD *esd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: locate_is_ctx_for_odm
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:251,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:254,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:256,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:257,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:258,1
    - Dst: gf_sg_vrml_field_pointer_del
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:259,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:260,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:262,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:263,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:264,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 248
    functionDepth: 8
    functionLinenumber: 248
    functionLinenumberEnd: 265
    functionName: gf_input_sensor_delete
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 1
    functionsReached:
    - gf_sg_vrml_field_pointer_del
    - gf_free
    - gf_list_get
    - locate_is_ctx_for_odm
    - gf_list_count
    - gf_list_del_item
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_input_sensor_delete(GF_ObjectManager *odm)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:279,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:281,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:283,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:288,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:291,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:291,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:294,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:297,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:300,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:300,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:301,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:301,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:304,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:304,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:305,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:305,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:306,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:306,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:309,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:309,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:310,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:310,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:311,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:311,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:315,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:315,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:316,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:316,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:317,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:317,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:318,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:318,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:324,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:325,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:326,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:328,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:329,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:332,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:336,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:344,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:351,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:352,1
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:359,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:362,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:364,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:365,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:366,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:368,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:385,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:387,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:388,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:389,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:397,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:401,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:402,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:403,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:406,1
    - Dst: gf_scene_get_time
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:407,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:409,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:410,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:411,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:413,1
    - Dst: gf_sg_command_apply
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:414,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:418,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 123
    argCount: 3
    argNames:
    - is_ctx
    - inBuffer
    - inBufferLength
    argTypes:
    - GF_InputSensorCtx*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 269
    functionDepth: 16
    functionLinenumber: 269
    functionLinenumberEnd: 420
    functionName: IS_ProcessData
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_bs_read_double
    - gf_bs_new
    - gf_utf8_wcslen
    - gf_list_count
    - gf_sg_vrml_field_copy
    - gf_bs_available
    - gf_scene_get_time
    - gf_list_get
    - gf_assert
    - gf_utf8_wcstombs
    - memcpy
    - FLT2FIX
    - gf_bs_read_float
    - gf_list_enum
    - gf_sc_lock
    - gf_malloc
    - gf_bs_del
    - gf_bs_read_int
    - gf_sg_command_apply
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err IS_ProcessData(GF_InputSensorCtx *is_ctx, const char *inBuffer,
      u32 inBufferLength)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_unregister
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:431,1
    - Dst: locate_is_ctx_for_odm
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:438,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:441,1
    - Dst: gf_mo_stop
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:445,1
    - Dst: GF_InputSensorCtx*::io_dev::Stop
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:449,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 2
    argNames:
    - node
    - st
    argTypes:
    - GF_Node*
    - ISStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 451
      start: 426
    functionDepth: 6
    functionLinenumber: 426
    functionLinenumberEnd: 451
    functionName: InputSensorUnregister
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - locate_is_ctx_for_odm
    - gf_mo_stop
    - gf_mo_unregister
    - gf_list_del_item
    - GF_InputSensorCtx*::io_dev::Stop
    linkageType: ''
    returnType: void
    signature: void InputSensorUnregister(GF_Node *node, ISStack *st)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:458,1
    - Dst: locate_is_ctx_for_odm
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:463,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:466,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:467,1
    - Dst: gf_mo_play
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:470,1
    - Dst: gf_sc_unqueue_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:472,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:476,1
    - Dst: GF_InputSensorCtx*::io_dev::Start
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:479,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 453
    functionDepth: 3
    functionLinenumber: 453
    functionLinenumberEnd: 483
    functionName: InputSensorRegister
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_mo_play
    - locate_is_ctx_for_odm
    - gf_list_find
    - gf_sc_unqueue_node_traverse
    - gf_list_add
    - gf_list_enum
    - gf_node_get_private
    - GF_InputSensorCtx*::io_dev::Start
    linkageType: ''
    returnType: void
    signature: void InputSensorRegister(GF_Node *n)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:487,1
    - Dst: InputSensorUnregister
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:492,1
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:493,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:493,1
    - Dst: gf_sc_unqueue_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:494,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:495,1
    - Dst: gf_mo_register
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:498,1
    - Dst: InputSensorRegister
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:500,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 485
    functionDepth: 7
    functionLinenumber: 485
    functionLinenumberEnd: 502
    functionName: TraverseInputSensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mo_register
    - gf_sc_unqueue_node_traverse
    - InputSensorRegister
    - gf_node_get_graph
    - InputSensorUnregister
    - gf_node_get_private
    - gf_sg_get_private
    linkageType: ''
    returnType: void
    signature: void TraverseInputSensor(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:508,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:510,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:514,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:515,1
    - Dst: gf_sc_queue_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:517,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - scene
    - node
    argTypes:
    - GF_Scene*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 505
    functionDepth: 2
    functionLinenumber: 505
    functionLinenumberEnd: 518
    functionName: InitInputSensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_sc_queue_node_traverse
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void InitInputSensor(GF_Scene *scene, GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:524,1
    - Dst: gf_mo_register
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:526,1
    - Dst: InputSensorUnregister
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:529,1
    - Dst: InputSensorRegister
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:533,1
    - Dst: InputSensorUnregister
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:537,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 540
      start: 521
    functionDepth: 7
    functionLinenumber: 521
    functionLinenumberEnd: 540
    functionName: InputSensorModified
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 2
    functionsReached:
    - InputSensorRegister
    - InputSensorUnregister
    - gf_node_get_private
    - gf_mo_register
    linkageType: ''
    returnType: void
    signature: void InputSensorModified(GF_Node *node)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:560,1
    - Dst: gf_sc_map_point
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:587,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:588,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:589,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:591,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:595,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:597,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:598,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:598,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:599,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:599,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:601,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:602,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:603,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:604,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:605,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:606,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:608,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:610,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:611,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:611,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:614,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:615,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:616,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:620,1
    - Dst: IS_ProcessData
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:622,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:625,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 68
    argCount: 2
    argNames:
    - compositor
    - event
    argTypes:
    - GF_Compositor*
    - GF_EventMouse*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 547
    functionDepth: 17
    functionLinenumber: 547
    functionLinenumberEnd: 626
    functionName: gf_sc_input_sensor_mouse_input
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_free
    - IS_ProcessData
    - gf_sc_map_point
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_divfix
    - gf_bs_align
    - gf_bs_del
    - gf_list_count
    - gf_list_enum
    - FIX2FLT
    - gf_bs_write_float
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_input_sensor_mouse_input(GF_Compositor *compositor,
      GF_EventMouse *event)
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:644,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:644,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:646,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:652,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:752,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:753,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:754,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:755,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:756,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:757,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:758,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:759,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:760,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:761,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:762,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:763,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:764,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:765,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:767,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:768,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:769,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:773,1
    - Dst: IS_ProcessData
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:775,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:778,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:782,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:787,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:791,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:795,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:797,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:798,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:800,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:803,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:807,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:809,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:810,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:812,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:816,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:820,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:824,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:828,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:832,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:837,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:841,1
    CyclomaticComplexity: 63
    EdgeCount: 63
    ICount: 197
    argCount: 4
    argNames:
    - compositor
    - key_code
    - hw_code
    - isKeyUp
    argTypes:
    - GF_Compositor*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 628
    functionDepth: 17
    functionLinenumber: 628
    functionLinenumberEnd: 847
    functionName: gf_sc_input_sensor_keyboard_input
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_tag
    - IS_ProcessData
    - gf_utf8_wcstombs
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - memcpy
    - gf_node_event_out_str
    - gf_bs_align
    - gf_bs_del
    - gf_list_count
    - memset
    - gf_list_enum
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_input_sensor_keyboard_input(GF_Compositor *compositor,
      u32 key_code, u32 hw_code, Bool isKeyUp)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:862,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:862,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:866,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:872,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:873,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:874,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:875,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:876,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:877,1
    - Dst: IS_ProcessData
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:879,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:881,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:889,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:894,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:897,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:904,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:906,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:908,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:909,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:912,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:914,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:916,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:917,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:923,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:925,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:927,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:928,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 65
    argCount: 2
    argNames:
    - compositor
    - character
    argTypes:
    - GF_Compositor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 932
      start: 849
    functionDepth: 17
    functionLinenumber: 849
    functionLinenumberEnd: 932
    functionName: gf_sc_input_sensor_string_input
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_tag
    - gf_strdup
    - IS_ProcessData
    - gf_utf8_wcstombs
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_node_event_out_str
    - gf_bs_align
    - gf_bs_del
    - gf_list_count
    - gf_list_enum
    - gf_node_get_private
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_input_sensor_string_input(GF_Compositor *compositor,
      u32 character)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:939,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:940,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 942
      start: 936
    functionDepth: 2
    functionLinenumber: 936
    functionLinenumberEnd: 942
    functionName: DestroyKeySensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    - gf_list_del_item
    linkageType: ''
    returnType: void
    signature: void DestroyKeySensor(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:945,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:946,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:948,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:950,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - scene
    - node
    argTypes:
    - GF_Scene*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 951
      start: 943
    functionDepth: 2
    functionLinenumber: 943
    functionLinenumberEnd: 951
    functionName: InitKeySensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_node_set_private
    - gf_list_add
    - gf_list_new
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void InitKeySensor(GF_Scene *scene, GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:956,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:957,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:958,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 960
      start: 953
    functionDepth: 2
    functionLinenumber: 953
    functionLinenumberEnd: 960
    functionName: DestroyStringSensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_private
    - gf_list_del_item
    linkageType: ''
    returnType: void
    signature: void DestroyStringSensor(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:964,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:966,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:970,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:971,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:974,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:976,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - scene
    - node
    argTypes:
    - GF_Scene*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 977
      start: 961
    functionDepth: 2
    functionLinenumber: 961
    functionLinenumberEnd: 977
    functionName: InitStringSensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_list_add
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void InitStringSensor(GF_Scene *scene, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - compositor
    - event
    argTypes:
    - GF_Compositor*
    - GF_EventMouse*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 985
      start: 982
    functionDepth: 0
    functionLinenumber: 982
    functionLinenumberEnd: 985
    functionName: gf_sc_input_sensor_mouse_input
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_input_sensor_mouse_input(GF_Compositor *compositor,
      GF_EventMouse *event)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - compositor
    - key_code
    - hw_code
    - isKeyUp
    argTypes:
    - GF_Compositor*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 990
      start: 986
    functionDepth: 0
    functionLinenumber: 986
    functionLinenumberEnd: 990
    functionName: gf_sc_input_sensor_keyboard_input
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_input_sensor_keyboard_input(GF_Compositor *compositor,
      u32 key_code, u32 hw_code, Bool isKeyUp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - compositor
    - character
    argTypes:
    - GF_Compositor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 994
      start: 991
    functionDepth: 0
    functionLinenumber: 991
    functionLinenumberEnd: 994
    functionName: gf_sc_input_sensor_string_input
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_input_sensor_string_input(GF_Compositor *compositor,
      u32 character)
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:55,1
    - Dst: parent_node_predestroy
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:60,1
    - Dst: gf_path_iterator_del
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:61,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:62,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:68,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:79,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:80,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:83,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:84,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:90,1
    - Dst: gf_path_iterator_del
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:91,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:98,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:106,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:120,1
    - Dst: gf_path_iterator_new
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:127,1
    - Dst: parent_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:136,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:142,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:145,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:147,1
    - Dst: gf_path_iterator_get_length
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:149,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:151,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:161,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:165,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:170,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:171,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:176,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:180,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:181,1
    - Dst: parent_node_child_traverse_matrix
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:195,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:204,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:206,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:213,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:219,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:225,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:227,1
    - Dst: gf_path_iterator_get_transform
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:231,1
    - Dst: parent_node_child_traverse_matrix
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:234,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:238,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:243,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:244,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:247,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:248,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:253,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:254,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:264,1
    - Dst: parent_node_child_traverse_matrix
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:265,1
    - Dst: parent_node_reset
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:268,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 172
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 43
    functionDepth: 7
    functionLinenumber: 43
    functionLinenumberEnd: 269
    functionName: TraversePathLayout
    functionSourceFile: /src/gpac/src/compositor/mpeg4_path_layout.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_tag
    - gf_path_iterator_get_length
    - gf_node_dirty_get
    - parent_node_predestroy
    - gf_list_count
    - gf_mx_copy
    - gf_path_iterator_new
    - gf_list_get
    - gf_path_iterator_get_transform
    - gf_mx_init
    - gf_node_get_private
    - gf_mulfix
    - gf_node_traverse
    - gf_path_iterator_del
    - gf_mx2d_copy
    - parent_node_traverse
    - gf_mx2d_add_translation
    - parent_node_child_traverse_matrix
    - parent_node_reset
    - gf_mx2d_init
    linkageType: ''
    returnType: void
    signature: void TraversePathLayout(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:274,1
    - Dst: parent_node_setup
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:277,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:278,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_path_layout.c:279,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 271
    functionDepth: 2
    functionLinenumber: 271
    functionLinenumberEnd: 280
    functionName: compositor_init_path_layout
    functionSourceFile: /src/gpac/src/compositor/mpeg4_path_layout.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - gf_node_set_private
    - parent_node_setup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void compositor_init_path_layout(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: visual_2d_texture_path
      Src: /src/gpac/src/compositor/drawable.c:35,1
    - Dst: visual_2d_draw_path
      Src: /src/gpac/src/compositor/drawable.c:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - drawable
    - tr_state
    argTypes:
    - Drawable*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionName: drawable_draw
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 1
    functionsReached:
    - visual_2d_draw_path
    - visual_2d_texture_path
    linkageType: ''
    returnType: void
    signature: void drawable_draw(Drawable *drawable, GF_TraverseState *tr_state)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/drawable.c:42,1
    - Dst: gf_node_allow_cyclic_traverse
      Src: /src/gpac/src/compositor/drawable.c:47,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/drawable.c:48,1
    - Dst: drawable_draw
      Src: /src/gpac/src/compositor/drawable.c:50,1
    - Dst: gf_evg_surface_set_mask_mode
      Src: /src/gpac/src/compositor/drawable.c:53,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - ctx
    - tr_state
    - set_cyclic
    argTypes:
    - DrawableContext*
    - GF_TraverseState*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 39
    functionDepth: 6
    functionLinenumber: 39
    functionLinenumberEnd: 54
    functionName: call_drawable_draw
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 1
    functionsReached:
    - gf_evg_surface_set_mask_mode
    - gf_node_traverse
    - drawable_draw
    - gf_node_allow_cyclic_traverse
    linkageType: ''
    returnType: void
    signature: void call_drawable_draw(DrawableContext *ctx, GF_TraverseState *tr_state,
      Bool set_cyclic)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: visual_3d_vrml_drawable_pick
      Src: /src/gpac/src/compositor/drawable.c:70,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/drawable.c:74,1
    - Dst: gf_mx2d_inverse
      Src: /src/gpac/src/compositor/drawable.c:75,1
    - Dst: gf_mx2d_apply_coords
      Src: /src/gpac/src/compositor/drawable.c:78,1
    - Dst: memset
      Src: /src/gpac/src/compositor/drawable.c:80,1
    - Dst: drawable_get_aspect_2d_mpeg4
      Src: /src/gpac/src/compositor/drawable.c:81,1
    - Dst: gf_path_point_over
      Src: /src/gpac/src/compositor/drawable.c:88,1
    - Dst: drawable_get_strikeinfo
      Src: /src/gpac/src/compositor/drawable.c:94,1
    - Dst: gf_path_point_over
      Src: /src/gpac/src/compositor/drawable.c:95,1
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/compositor/drawable.c:106,1
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/compositor/drawable.c:107,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/drawable.c:109,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/drawable.c:114,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/drawable.c:115,1
    - Dst: compositor_is_composite_texture
      Src: /src/gpac/src/compositor/drawable.c:118,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/drawable.c:127,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/drawable.c:128,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/drawable.c:130,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/drawable.c:130,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 51
    argCount: 2
    argNames:
    - drawable
    - tr_state
    argTypes:
    - Drawable*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 132
    functionName: vrml_drawable_pick
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 10
    functionsReached:
    - gf_list_get
    - gf_list_reset
    - drawable_get_strikeinfo
    - gf_mx_from_mx2d
    - visual_3d_vrml_drawable_pick
    - gf_mx2d_apply_coords
    - gf_divfix
    - gf_mx2d_inverse
    - compositor_is_composite_texture
    - memset
    - gf_list_count
    - gf_path_point_over
    - gf_list_add
    - gf_mx2d_copy
    - drawable_get_aspect_2d_mpeg4
    linkageType: ''
    returnType: void
    signature: void vrml_drawable_pick(Drawable *drawable, GF_TraverseState *tr_state)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_new
      Src: /src/gpac/src/compositor/drawable.c:137,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/drawable.c:138,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/drawable.c:141,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - tmp
    argTypes:
    - Drawable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 143
    functionName: drawable_init_ex
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 1
    functionsReached:
    - gf_path_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void drawable_init_ex(Drawable *tmp)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/drawable.c:148,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/drawable.c:150,1
    - Dst: gf_path_new
      Src: /src/gpac/src/compositor/drawable.c:153,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/drawable.c:155,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/drawable.c:158,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/drawable.c:162,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/drawable.c:163,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/drawable.c:164,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/drawable.c:165,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 169
    functionName: drawable_new
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 5
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - gf_path_new
    - GF_LOG
    - gf_path_del
    linkageType: ''
    returnType: Drawable
    signature: Drawable *drawable_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/compositor/drawable.c:187,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - dr
    - visual
    argTypes:
    - Drawable*
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 192
    functionName: drawable_reset_bounds
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void drawable_reset_bounds(Drawable *dr, GF_VisualManager *visual)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_visual_is_registered
      Src: /src/gpac/src/compositor/drawable.c:205,1
    - Dst: ra_add
      Src: /src/gpac/src/compositor/drawable.c:211,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/drawable.c:214,1
    - Dst: ra_add
      Src: /src/gpac/src/compositor/drawable.c:220,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/drawable.c:223,1
    - Dst: visual_2d_drawable_delete
      Src: /src/gpac/src/compositor/drawable.c:225,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/drawable.c:228,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/drawable.c:231,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/drawable.c:246,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/drawable.c:249,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/drawable.c:256,1
    - Dst: delete_strikeinfo2d
      Src: /src/gpac/src/compositor/drawable.c:257,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/drawable.c:261,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 53
    argCount: 3
    argNames:
    - dr
    - compositor
    - no_free
    argTypes:
    - Drawable*
    - GF_Compositor*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 262
    functionName: drawable_del_ex
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 1
    functionsReached:
    - gf_free
    - mesh_free
    - ra_add
    - delete_strikeinfo2d
    - gf_path_del
    - gf_sc_next_frame_state
    - gf_sc_visual_is_registered
    - gf_list_del_item
    - visual_2d_drawable_delete
    linkageType: ''
    returnType: void
    signature: void drawable_del_ex(Drawable *dr, GF_Compositor *compositor, Bool
      no_free)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_get_compositor
      Src: /src/gpac/src/compositor/drawable.c:266,1
    - Dst: drawable_del_ex
      Src: /src/gpac/src/compositor/drawable.c:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dr
    argTypes:
    - Drawable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 264
    functionDepth: 2
    functionLinenumber: 264
    functionLinenumberEnd: 268
    functionName: drawable_del
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 5
    functionsReached:
    - gf_sc_get_compositor
    - drawable_del_ex
    linkageType: ''
    returnType: void
    signature: void drawable_del(Drawable *dr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_del
      Src: /src/gpac/src/compositor/drawable.c:271,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/drawable.c:271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 269
    functionDepth: 3
    functionLinenumber: 269
    functionLinenumberEnd: 272
    functionName: drawable_node_del
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 10
    functionsReached:
    - gf_node_get_private
    - drawable_del
    linkageType: ''
    returnType: void
    signature: void drawable_node_del(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_new
      Src: /src/gpac/src/compositor/drawable.c:276,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/drawable.c:278,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 274
    functionDepth: 2
    functionLinenumber: 274
    functionLinenumberEnd: 280
    functionName: drawable_stack_new
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 11
    functionsReached:
    - drawable_new
    - gf_node_set_private
    linkageType: ''
    returnType: Drawable
    signature: Drawable *drawable_stack_new(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/drawable.c:300,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/drawable.c:305,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/compositor/drawable.c:305,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/drawable.c:317,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 44
    argCount: 2
    argNames:
    - ctx
    - visual
    argTypes:
    - struct _drawable_context*
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 282
    functionDepth: 2
    functionLinenumber: 282
    functionLinenumberEnd: 330
    functionName: drawable_check_alloc_bounds
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_node_get_class_name
    - GF_SAFEALLOC
    linkageType: ''
    returnType: BoundInfo
    signature: BoundInfo *drawable_check_alloc_bounds(struct _drawable_context *ctx,
      GF_VisualManager *visual)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/drawable.c:335,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/drawable.c:335,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - tr_state
    - n
    argTypes:
    - GF_TraverseState*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 332
    functionDepth: 2
    functionLinenumber: 332
    functionLinenumberEnd: 336
    functionName: drawable_reset_group_highlight
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 2
    functionsReached:
    - gf_node_set_private
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void drawable_reset_group_highlight(GF_TraverseState *tr_state, GF_Node
      *n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_reset_group_highlight
      Src: /src/gpac/src/compositor/drawable.c:345,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - drawable
    - tr_state
    argTypes:
    - Drawable*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 338
    functionDepth: 3
    functionLinenumber: 338
    functionLinenumberEnd: 346
    functionName: drawable_mark_modified
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 12
    functionsReached:
    - drawable_reset_group_highlight
    linkageType: ''
    returnType: void
    signature: void drawable_mark_modified(Drawable *drawable, GF_TraverseState *tr_state)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/drawable.c:375,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/compositor/drawable.c:375,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/drawable.c:379,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 34
    argCount: 3
    argNames:
    - drawable
    - on_visual
    - mode2d
    argTypes:
    - Drawable*
    - GF_VisualManager*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 349
    functionDepth: 2
    functionLinenumber: 349
    functionLinenumberEnd: 395
    functionName: drawable_flush_bounds
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_node_get_class_name
    linkageType: ''
    returnType: Bool
    signature: Bool drawable_flush_bounds(Drawable *drawable, GF_VisualManager *on_visual,
      u32 mode2d)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 18
    argCount: 2
    argNames:
    - ctx
    - visual
    argTypes:
    - struct _drawable_context*
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 402
    functionDepth: 0
    functionLinenumber: 402
    functionLinenumberEnd: 434
    functionName: drawable_has_same_bounds
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool drawable_has_same_bounds(struct _drawable_context *ctx, GF_VisualManager
      *visual)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 3
    argNames:
    - drawable
    - rc
    - visual
    argTypes:
    - Drawable*
    - GF_IRect*
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 440
    functionDepth: 0
    functionLinenumber: 440
    functionLinenumberEnd: 462
    functionName: drawable_get_previous_bound
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool drawable_get_previous_bound(Drawable *drawable, GF_IRect *rc,
      GF_VisualManager *visual)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/drawable.c:469,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 466
    functionDepth: 1
    functionLinenumber: 466
    functionLinenumberEnd: 471
    functionName: NewDrawableContext
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: DrawableContext
    signature: DrawableContext *NewDrawableContext()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawctx_reset
      Src: /src/gpac/src/compositor/drawable.c:474,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/drawable.c:475,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - DrawableContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 472
    functionDepth: 1
    functionLinenumber: 472
    functionLinenumberEnd: 476
    functionName: DeleteDrawableContext
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 0
    functionsReached:
    - gf_free
    - drawctx_reset
    linkageType: ''
    returnType: void
    signature: void DeleteDrawableContext(DrawableContext *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/compositor/drawable.c:480,1
    - Dst: memset
      Src: /src/gpac/src/compositor/drawable.c:481,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - DrawableContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 495
      start: 477
    functionDepth: 0
    functionLinenumber: 477
    functionLinenumberEnd: 495
    functionName: drawctx_reset
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 1
    functionsReached:
    - gf_free
    - memset
    linkageType: ''
    returnType: void
    signature: void drawctx_reset(DrawableContext *ctx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: drawable_has_same_bounds
      Src: /src/gpac/src/compositor/drawable.c:519,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 22
    argCount: 2
    argNames:
    - ctx
    - visual
    argTypes:
    - DrawableContext*
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 497
    functionDepth: 1
    functionLinenumber: 497
    functionLinenumberEnd: 528
    functionName: drawctx_update_info
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 0
    functionsReached:
    - drawable_has_same_bounds
    linkageType: ''
    returnType: void
    signature: void drawctx_update_info(DrawableContext *ctx, GF_VisualManager *visual)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/drawable.c:533,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/drawable.c:537,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/drawable.c:538,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 531
    functionDepth: 2
    functionLinenumber: 531
    functionLinenumberEnd: 545
    functionName: drawable_lineprops_dirty
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 0
    functionsReached:
    - gf_node_dirty_get
    - gf_node_get_private
    - gf_node_dirty_clear
    linkageType: ''
    returnType: Bool
    signature: Bool drawable_lineprops_dirty(GF_Node *node)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_get_handler
      Src: /src/gpac/src/compositor/drawable.c:565,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/drawable.c:574,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/drawable.c:584,1
    - Dst: gf_cmx_apply
      Src: /src/gpac/src/compositor/drawable.c:586,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/drawable.c:593,1
    - Dst: gf_cmx_apply
      Src: /src/gpac/src/compositor/drawable.c:595,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/drawable.c:604,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/drawable.c:608,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/drawable.c:613,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/drawable.c:617,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/drawable.c:627,1
    - Dst: drawable_lineprops_dirty
      Src: /src/gpac/src/compositor/drawable.c:638,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/drawable.c:643,1
    - Dst: gf_cmx_apply
      Src: /src/gpac/src/compositor/drawable.c:646,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/drawable.c:652,1
    - Dst: gf_cmx_apply
      Src: /src/gpac/src/compositor/drawable.c:655,1
    - Dst: gf_sc_texture_get_handler
      Src: /src/gpac/src/compositor/drawable.c:671,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 107
    argCount: 3
    argNames:
    - node
    - asp
    - tr_state
    argTypes:
    - GF_Node*
    - DrawAspect2D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 673
      start: 547
    functionDepth: 3
    functionLinenumber: 547
    functionLinenumberEnd: 673
    functionName: drawable_get_aspect_2d_mpeg4
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 4
    functionsReached:
    - gf_node_get_tag
    - GF_COL_ARGB_FIXED
    - gf_cmx_apply
    - GF_COL_A
    - drawable_lineprops_dirty
    - gf_divfix
    - FIX2INT
    - gf_sc_texture_get_handler
    linkageType: ''
    returnType: u32
    signature: u32 drawable_get_aspect_2d_mpeg4(GF_Node *node, DrawAspect2D *asp,
      GF_TraverseState *tr_state)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/drawable.c:681,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/drawable.c:681,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/drawable.c:684,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - skipFill
    argTypes:
    - DrawableContext*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 687
      start: 677
    functionDepth: 1
    functionLinenumber: 677
    functionLinenumberEnd: 687
    functionName: check_transparent_skip
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 0
    functionsReached:
    - GF_COL_A
    linkageType: ''
    returnType: Bool
    signature: Bool check_transparent_skip(DrawableContext *ctx, Bool skipFill)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/drawable.c:705,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/drawable.c:706,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/drawable.c:730,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 30
    argCount: 3
    argNames:
    - ctx
    - drawable
    - tr_state
    argTypes:
    - DrawableContext*
    - Drawable*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 749
      start: 690
    functionDepth: 1
    functionLinenumber: 690
    functionLinenumberEnd: 749
    functionName: drawable_check_texture_dirty
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 0
    functionsReached:
    - GF_COL_A
    linkageType: ''
    returnType: void
    signature: void drawable_check_texture_dirty(DrawableContext *ctx, Drawable *drawable,
      GF_TraverseState *tr_state)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/drawable.c:758,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/drawable.c:762,1
    - Dst: visual_2d_get_drawable_context
      Src: /src/gpac/src/compositor/drawable.c:767,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/drawable.c:781,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/drawable.c:788,1
    - Dst: gf_cmx_copy
      Src: /src/gpac/src/compositor/drawable.c:790,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/drawable.c:796,1
    - Dst: drawable_get_aspect_2d_mpeg4
      Src: /src/gpac/src/compositor/drawable.c:806,1
    - Dst: drawable_check_texture_dirty
      Src: /src/gpac/src/compositor/drawable.c:808,1
    - Dst: check_transparent_skip
      Src: /src/gpac/src/compositor/drawable.c:812,1
    - Dst: visual_2d_remove_last_context
      Src: /src/gpac/src/compositor/drawable.c:813,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/drawable.c:814,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 46
    argCount: 2
    argNames:
    - drawable
    - tr_state
    argTypes:
    - Drawable*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 829
      start: 753
    functionDepth: 4
    functionLinenumber: 753
    functionLinenumberEnd: 829
    functionName: drawable_init_context_mpeg4
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 13
    functionsReached:
    - gf_node_get_tag
    - gf_assert
    - visual_2d_get_drawable_context
    - gf_cmx_copy
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_dirty_get
    - visual_2d_remove_last_context
    - check_transparent_skip
    - drawable_check_texture_dirty
    - drawable_get_aspect_2d_mpeg4
    linkageType: ''
    returnType: DrawableContext
    signature: DrawableContext *drawable_init_context_mpeg4(Drawable *drawable, GF_TraverseState
      *tr_state)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/drawable.c:837,1
    - Dst: gf_irect_intersect
      Src: /src/gpac/src/compositor/drawable.c:840,1
    - Dst: gf_irect_union
      Src: /src/gpac/src/compositor/drawable.c:849,1
    - Dst: visual_2d_overlaps_overlay
      Src: /src/gpac/src/compositor/drawable.c:872,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/drawable.c:875,1
    - Dst: call_drawable_draw
      Src: /src/gpac/src/compositor/drawable.c:879,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 39
    argCount: 2
    argNames:
    - ctx
    - tr_state
    argTypes:
    - struct _drawable_context*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 890
      start: 832
    functionDepth: 7
    functionLinenumber: 832
    functionLinenumberEnd: 890
    functionName: drawable_finalize_end
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_irect_union
    - call_drawable_draw
    - gf_irect_intersect
    - visual_2d_overlaps_overlay
    - gf_mx2d_copy
    linkageType: ''
    returnType: Bool
    signature: Bool drawable_finalize_end(struct _drawable_context *ctx, GF_TraverseState
      *tr_state)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: drawable_check_alloc_bounds
      Src: /src/gpac/src/compositor/drawable.c:895,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - visual
    argTypes:
    - struct _drawable_context*
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 899
      start: 892
    functionDepth: 3
    functionLinenumber: 892
    functionLinenumberEnd: 899
    functionName: drawable_check_bounds
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 0
    functionsReached:
    - drawable_check_alloc_bounds
    linkageType: ''
    returnType: void
    signature: void drawable_check_bounds(struct _drawable_context *ctx, GF_VisualManager
      *visual)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_apply_rect
      Src: /src/gpac/src/compositor/drawable.c:908,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/drawable.c:911,1
    - Dst: MAX
      Src: /src/gpac/src/compositor/drawable.c:913,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/drawable.c:913,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/drawable.c:913,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - tr_state
    - asp
    argTypes:
    - GF_TraverseState*
    - DrawAspect2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 914
      start: 901
    functionDepth: 1
    functionLinenumber: 901
    functionLinenumberEnd: 914
    functionName: drawable_compute_line_scale
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 2
    functionsReached:
    - MAX
    - gf_divfix
    - gf_mx2d_apply_rect
    - gf_mx_apply_rect
    linkageType: ''
    returnType: void
    signature: void drawable_compute_line_scale(GF_TraverseState *tr_state, DrawAspect2D
      *asp)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: drawable_check_bounds
      Src: /src/gpac/src/compositor/drawable.c:923,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/drawable.c:928,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/drawable.c:931,1
    - Dst: drawable_compute_line_scale
      Src: /src/gpac/src/compositor/drawable.c:938,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/drawable.c:946,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/drawable.c:946,1
    - Dst: gf_v2d_len
      Src: /src/gpac/src/compositor/drawable.c:946,1
    - Dst: drawable_get_strikeinfo
      Src: /src/gpac/src/compositor/drawable.c:951,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/drawable.c:953,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/drawable.c:954,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/drawable.c:956,1
    - Dst: gf_rect_pixelize
      Src: /src/gpac/src/compositor/drawable.c:974,1
    - Dst: drawable_finalize_end
      Src: /src/gpac/src/compositor/drawable.c:979,1
    - Dst: drawable_check_focus_highlight
      Src: /src/gpac/src/compositor/drawable.c:981,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 47
    argCount: 4
    argNames:
    - ctx
    - tr_state
    - orig_bounds
    - skip_focus
    argTypes:
    - DrawableContext*
    - GF_TraverseState*
    - GF_Rect*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 986
      start: 916
    functionDepth: 8
    functionLinenumber: 916
    functionLinenumberEnd: 986
    functionName: drawable_finalize_sort_ex
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_v2d_len
    - drawable_get_strikeinfo
    - gf_divfix
    - gf_mx2d_apply_rect
    - gf_rect_pixelize
    - drawable_finalize_end
    - drawable_check_bounds
    - drawable_compute_line_scale
    - drawable_check_focus_highlight
    - gf_mulfix
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void drawable_finalize_sort_ex(DrawableContext *ctx, GF_TraverseState
      *tr_state, GF_Rect *orig_bounds, Bool skip_focus)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_finalize_sort_ex
      Src: /src/gpac/src/compositor/drawable.c:990,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - tr_state
    - orig_bounds
    argTypes:
    - struct _drawable_context*
    - GF_TraverseState*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 991
      start: 988
    functionDepth: 9
    functionLinenumber: 988
    functionLinenumberEnd: 991
    functionName: drawable_finalize_sort
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 15
    functionsReached:
    - drawable_finalize_sort_ex
    linkageType: ''
    returnType: void
    signature: void drawable_finalize_sort(struct _drawable_context *ctx, GF_TraverseState
      *tr_state, GF_Rect *orig_bounds)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/drawable.c:1010,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/drawable.c:1011,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/drawable.c:1019,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/drawable.c:1024,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/drawable.c:1025,1
    - Dst: gf_sc_get_nodes_bounds
      Src: /src/gpac/src/compositor/drawable.c:1031,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/drawable.c:1034,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/drawable.c:1039,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/drawable.c:1041,1
    - Dst: gf_path_reset
      Src: /src/gpac/src/compositor/drawable.c:1042,1
    - Dst: gf_path_add_rect
      Src: /src/gpac/src/compositor/drawable.c:1043,1
    - Dst: visual_2d_get_drawable_context
      Src: /src/gpac/src/compositor/drawable.c:1045,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/drawable.c:1064,1
    - Dst: visual_3d_draw_2d_with_aspect
      Src: /src/gpac/src/compositor/drawable.c:1065,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/drawable.c:1069,1
    - Dst: drawable_finalize_sort_ex
      Src: /src/gpac/src/compositor/drawable.c:1070,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 55
    argCount: 3
    argNames:
    - node
    - tr_state
    - orig_bounds
    argTypes:
    - GF_Node*
    - GF_TraverseState*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1071
      start: 994
    functionDepth: 9
    functionLinenumber: 994
    functionLinenumberEnd: 1071
    functionName: drawable_check_focus_highlight
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 3
    functionsReached:
    - gf_sc_get_nodes_bounds
    - gf_list_get
    - visual_2d_get_drawable_context
    - visual_3d_draw_2d_with_aspect
    - drawable_reset_path
    - gf_node_set_private
    - gf_path_add_rect
    - gf_mx2d_init
    - gf_list_count
    - gf_path_reset
    - drawable_finalize_sort_ex
    - gf_mx2d_copy
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void drawable_check_focus_highlight(GF_Node *node, GF_TraverseState
      *tr_state, GF_Rect *orig_bounds)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: visual_2d_draw_path
      Src: /src/gpac/src/compositor/drawable.c:1079,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1080
      start: 1074
    functionDepth: 1
    functionLinenumber: 1074
    functionLinenumberEnd: 1080
    functionName: drawable_traverse_focus
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 0
    functionsReached:
    - visual_2d_draw_path
    linkageType: ''
    returnType: void
    signature: void drawable_traverse_focus(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/drawable.c:1085,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/drawable.c:1087,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/drawable.c:1089,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - info
    argTypes:
    - StrikeInfo2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1090
      start: 1083
    functionDepth: 1
    functionLinenumber: 1083
    functionLinenumberEnd: 1090
    functionName: delete_strikeinfo2d
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_path_del
    - mesh_free
    linkageType: ''
    returnType: void
    signature: void delete_strikeinfo2d(StrikeInfo2D *info)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/drawable.c:1105,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/drawable.c:1117,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/drawable.c:1118,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/drawable.c:1120,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/drawable.c:1124,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/drawable.c:1133,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/drawable.c:1147,1
    - Dst: drawable_compute_line_scale
      Src: /src/gpac/src/compositor/drawable.c:1153,1
    - Dst: drawable_lineprops_dirty
      Src: /src/gpac/src/compositor/drawable.c:1162,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/drawable.c:1174,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/drawable.c:1177,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/drawable.c:1182,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/drawable.c:1184,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/drawable.c:1188,1
    - Dst: gf_path_get_outline
      Src: /src/gpac/src/compositor/drawable.c:1193,1
    - Dst: gf_path_get_outline
      Src: /src/gpac/src/compositor/drawable.c:1196,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/drawable.c:1203,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 86
    argCount: 7
    argNames:
    - compositor
    - drawable
    - asp
    - appear
    - path
    - svg_flags
    - tr_state
    argTypes:
    - GF_Compositor*
    - Drawable*
    - DrawAspect2D*
    - GF_Node*
    - GF_Path*
    - u32
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1209
      start: 1093
    functionDepth: 3
    functionLinenumber: 1093
    functionLinenumberEnd: 1209
    functionName: drawable_get_strikeinfo
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 2
    functionsReached:
    - gf_node_get_tag
    - gf_free
    - gf_path_get_outline
    - mesh_free
    - GF_SAFEALLOC
    - drawable_lineprops_dirty
    - gf_path_del
    - gf_divfix
    - gf_list_add
    - gf_list_del_item
    - drawable_compute_line_scale
    - gf_mulfix
    linkageType: ''
    returnType: StrikeInfo2D
    signature: StrikeInfo2D *drawable_get_strikeinfo(GF_Compositor *compositor, Drawable
      *drawable, DrawAspect2D *asp, GF_Node *appear, GF_Path *path, u32 svg_flags,
      GF_TraverseState *tr_state)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/drawable.c:1215,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/drawable.c:1218,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/drawable.c:1226,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - st
    argTypes:
    - Drawable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1230
      start: 1211
    functionDepth: 1
    functionLinenumber: 1211
    functionLinenumberEnd: 1230
    functionName: drawable_reset_path_outline
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 0
    functionsReached:
    - gf_path_del
    - mesh_free
    linkageType: ''
    returnType: void
    signature: void drawable_reset_path_outline(Drawable *st)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: drawable_reset_path_outline
      Src: /src/gpac/src/compositor/drawable.c:1234,1
    - Dst: gf_path_reset
      Src: /src/gpac/src/compositor/drawable.c:1235,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/drawable.c:1238,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - st
    argTypes:
    - Drawable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1242
      start: 1232
    functionDepth: 2
    functionLinenumber: 1232
    functionLinenumberEnd: 1242
    functionName: drawable_reset_path
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 15
    functionsReached:
    - drawable_reset_path_outline
    - mesh_free
    - gf_path_reset
    linkageType: ''
    returnType: void
    signature: void drawable_reset_path(Drawable *st)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/drawable.c:1253,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/drawable.c:1256,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/drawable.c:1260,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/drawable.c:1275,1
    - Dst: delete_strikeinfo2d
      Src: /src/gpac/src/compositor/drawable.c:1276,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/drawable.c:1280,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1282
      start: 1246
    functionDepth: 2
    functionLinenumber: 1246
    functionLinenumberEnd: 1282
    functionName: DestroyLineProps
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_assert
    - delete_strikeinfo2d
    - gf_list_enum
    - gf_node_get_private
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void DestroyLineProps(GF_Node *n, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/drawable.c:1287,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/drawable.c:1289,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/drawable.c:1294,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/drawable.c:1295,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1296
      start: 1284
    functionDepth: 2
    functionLinenumber: 1284
    functionLinenumberEnd: 1296
    functionName: compositor_init_lineprops
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void compositor_init_lineprops(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - asp
    - tr_state
    argTypes:
    - GF_Node*
    - DrawAspect2D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1306
      start: 1303
    functionDepth: 0
    functionLinenumber: 1303
    functionLinenumberEnd: 1306
    functionName: drawable_get_aspect_2d_svg
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool drawable_get_aspect_2d_svg(GF_Node *node, DrawAspect2D *asp, GF_TraverseState
      *tr_state)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/drawable.c:1322,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/drawable.c:1323,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/drawable.c:1332,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/drawable.c:1333,1
    - Dst: gf_node_register_iri
      Src: /src/gpac/src/compositor/drawable.c:1337,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/drawable.c:1338,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/drawable.c:1344,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/drawable.c:1345,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/drawable.c:1349,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/drawable.c:1351,1
    - Dst: compositor_svg_solid_color_dirty
      Src: /src/gpac/src/compositor/drawable.c:1353,1
    - Dst: MIN
      Src: /src/gpac/src/compositor/drawable.c:1358,1
    - Dst: MAX
      Src: /src/gpac/src/compositor/drawable.c:1358,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/drawable.c:1359,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/drawable.c:1361,1
    - Dst: gf_sc_texture_get_handler
      Src: /src/gpac/src/compositor/drawable.c:1367,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/drawable.c:1376,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/drawable.c:1378,1
    - Dst: gf_cmx_apply
      Src: /src/gpac/src/compositor/drawable.c:1385,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/drawable.c:1393,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/drawable.c:1394,1
    - Dst: gf_node_register_iri
      Src: /src/gpac/src/compositor/drawable.c:1398,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/drawable.c:1399,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/drawable.c:1405,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/drawable.c:1409,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/drawable.c:1411,1
    - Dst: compositor_svg_solid_color_dirty
      Src: /src/gpac/src/compositor/drawable.c:1413,1
    - Dst: MIN
      Src: /src/gpac/src/compositor/drawable.c:1418,1
    - Dst: MAX
      Src: /src/gpac/src/compositor/drawable.c:1418,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/drawable.c:1420,1
    - Dst: gf_sc_texture_get_handler
      Src: /src/gpac/src/compositor/drawable.c:1426,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/drawable.c:1434,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/drawable.c:1436,1
    - Dst: gf_cmx_apply
      Src: /src/gpac/src/compositor/drawable.c:1443,1
    - Dst: gf_cmx_apply
      Src: /src/gpac/src/compositor/drawable.c:1457,1
    - Dst: gf_cmx_apply
      Src: /src/gpac/src/compositor/drawable.c:1458,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 121
    argCount: 3
    argNames:
    - node
    - asp
    - tr_state
    argTypes:
    - GF_Node*
    - DrawAspect2D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1461
      start: 1310
    functionDepth: 6
    functionLinenumber: 1310
    functionLinenumberEnd: 1461
    functionName: drawable_get_aspect_2d_svg
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 1
    functionsReached:
    - gf_free
    - GF_COL_ARGB_FIXED
    - gf_node_get_tag
    - gf_cmx_apply
    - gf_node_traverse
    - gf_svg_flatten_attributes
    - gf_sg_find_node_by_name
    - gf_node_register_iri
    - MIN
    - gf_sc_texture_get_handler
    - gf_node_get_graph
    - compositor_svg_solid_color_dirty
    - MAX
    - gf_mulfix
    linkageType: ''
    returnType: Bool
    signature: Bool drawable_get_aspect_2d_svg(GF_Node *node, DrawAspect2D *asp, GF_TraverseState
      *tr_state)
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 29
    argCount: 1
    argNames:
    - flags
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1495
      start: 1463
    functionDepth: 0
    functionLinenumber: 1463
    functionLinenumberEnd: 1495
    functionName: svg_appearance_flag_dirty
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool svg_appearance_flag_dirty(u32 flags)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/drawable.c:1500,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/drawable.c:1503,1
    - Dst: drawable_init_context_mpeg4
      Src: /src/gpac/src/compositor/drawable.c:1510,1
    - Dst: visual_2d_get_drawable_context
      Src: /src/gpac/src/compositor/drawable.c:1520,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/drawable.c:1523,1
    - Dst: svg_appearance_flag_dirty
      Src: /src/gpac/src/compositor/drawable.c:1528,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/drawable.c:1530,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/compositor/drawable.c:1530,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/drawable.c:1545,1
    - Dst: gf_cmx_copy
      Src: /src/gpac/src/compositor/drawable.c:1547,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/drawable.c:1550,1
    - Dst: gf_sc_texture_get_handler
      Src: /src/gpac/src/compositor/drawable.c:1553,1
    - Dst: drawable_get_aspect_2d_svg
      Src: /src/gpac/src/compositor/drawable.c:1562,1
    - Dst: drawable_check_texture_dirty
      Src: /src/gpac/src/compositor/drawable.c:1573,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 60
    argCount: 3
    argNames:
    - drawable
    - tr_state
    - clip_path
    argTypes:
    - Drawable*
    - GF_TraverseState*
    - SVG_ClipPath*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1586
      start: 1497
    functionDepth: 5
    functionLinenumber: 1497
    functionLinenumberEnd: 1586
    functionName: drawable_init_context_svg
    functionSourceFile: /src/gpac/src/compositor/drawable.c
    functionUses: 2
    functionsReached:
    - gf_node_get_tag
    - drawable_init_context_mpeg4
    - gf_assert
    - visual_2d_get_drawable_context
    - svg_appearance_flag_dirty
    - gf_cmx_copy
    - gf_sg_find_node_by_name
    - GF_SAFEALLOC
    - drawable_get_aspect_2d_svg
    - GF_LOG
    - gf_node_get_log_name
    - gf_sc_texture_get_handler
    - drawable_check_texture_dirty
    - gf_mx2d_copy
    linkageType: ''
    returnType: DrawableContext
    signature: DrawableContext *drawable_init_context_svg(Drawable *drawable, GF_TraverseState
      *tr_state, SVG_ClipPath *clip_path)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_paint_servers.c:53,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_paint_servers.c:55,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_paint_servers.c:56,1
    - Dst: gf_sc_texture_destroy
      Src: /src/gpac/src/compositor/svg_paint_servers.c:57,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_paint_servers.c:58,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 60
    functionName: SVG_DestroyPaintServer
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sc_texture_destroy
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void SVG_DestroyPaintServer(GF_Node *node)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/compositor/svg_paint_servers.c:71,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/svg_paint_servers.c:75,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/svg_paint_servers.c:76,1
    - Dst: gf_node_register_iri
      Src: /src/gpac/src/compositor/svg_paint_servers.c:80,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_paint_servers.c:81,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_paint_servers.c:93,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 48
    argCount: 2
    argNames:
    - node
    - all_atts
    argTypes:
    - GF_Node*
    - SVGAllAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 63
    functionDepth: 5
    functionLinenumber: 63
    functionLinenumberEnd: 109
    functionName: svg_copy_gradient_attributes_from
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_svg_flatten_attributes
    - gf_sg_find_node_by_name
    - gf_node_get_attribute_by_tag
    - gf_node_register_iri
    - gf_node_get_graph
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *svg_copy_gradient_attributes_from(GF_Node *node, SVGAllAttributes
      *all_atts)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_paint_servers.c:121,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_paint_servers.c:123,1
    - Dst: svg_copy_gradient_attributes_from
      Src: /src/gpac/src/compositor/svg_paint_servers.c:124,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_paint_servers.c:125,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_paint_servers.c:129,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_paint_servers.c:132,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_paint_servers.c:141,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_paint_servers.c:143,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_paint_servers.c:144,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_paint_servers.c:146,1
    - Dst: gf_node_animation_count
      Src: /src/gpac/src/compositor/svg_paint_servers.c:149,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/compositor/svg_paint_servers.c:158,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/svg_paint_servers.c:159,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/svg_paint_servers.c:160,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_paint_servers.c:170,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_paint_servers.c:172,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_paint_servers.c:173,1
    - Dst: gf_node_animation_count
      Src: /src/gpac/src/compositor/svg_paint_servers.c:175,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_paint_servers.c:178,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_paint_servers.c:180,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/svg_paint_servers.c:188,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/svg_paint_servers.c:190,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/svg_paint_servers.c:193,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_paint_servers.c:211,1
    - Dst: gf_sc_texture_allocate
      Src: /src/gpac/src/compositor/svg_paint_servers.c:219,1
    - Dst: gf_sc_texture_get_stencil
      Src: /src/gpac/src/compositor/svg_paint_servers.c:220,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/compositor/svg_paint_servers.c:221,1
    - Dst: gf_sc_texture_set_stencil
      Src: /src/gpac/src/compositor/svg_paint_servers.c:223,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/svg_paint_servers.c:227,1
    - Dst: gf_evg_stencil_set_gradient_interpolation
      Src: /src/gpac/src/compositor/svg_paint_servers.c:233,1
    - Dst: gf_evg_stencil_set_gradient_mode
      Src: /src/gpac/src/compositor/svg_paint_servers.c:234,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_paint_servers.c:241,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 97
    argCount: 3
    argNames:
    - node
    - tr_state
    - real_traverse
    argTypes:
    - GF_Node*
    - GF_TraverseState*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 111
    functionDepth: 6
    functionLinenumber: 111
    functionLinenumberEnd: 243
    functionName: svg_gradient_traverse
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_tag
    - gf_evg_stencil_new
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - GF_COL_A
    - gf_evg_stencil_set_gradient_interpolation
    - compositor_svg_traverse_base
    - memcpy
    - gf_sc_texture_allocate
    - gf_sc_texture_get_stencil
    - gf_node_get_private
    - GF_COL_ARGB_FIXED
    - gf_sc_texture_set_stencil
    - gf_svg_flatten_attributes
    - gf_node_animation_count
    - svg_copy_gradient_attributes_from
    - gf_node_list_get_count
    - gf_malloc
    - gf_evg_stencil_set_gradient_mode
    linkageType: ''
    returnType: void
    signature: void svg_gradient_traverse(GF_Node *node, GF_TraverseState *tr_state,
      Bool real_traverse)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_paint_servers.c:252,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_paint_servers.c:260,1
    - Dst: gf_svg_properties_init_pointers
      Src: /src/gpac/src/compositor/svg_paint_servers.c:262,1
    - Dst: svg_gradient_traverse
      Src: /src/gpac/src/compositor/svg_paint_servers.c:265,1
    - Dst: gf_svg_properties_reset_pointers
      Src: /src/gpac/src/compositor/svg_paint_servers.c:267,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_paint_servers.c:268,1
    - Dst: svg_gradient_traverse
      Src: /src/gpac/src/compositor/svg_paint_servers.c:272,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 3
    argNames:
    - st
    - children
    - linear
    argTypes:
    - SVG_GradientStack*
    - GF_ChildNodeItem*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 246
    functionDepth: 7
    functionLinenumber: 246
    functionLinenumberEnd: 274
    functionName: svg_update_gradient
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - svg_gradient_traverse
    - gf_node_dirty_get
    - gf_svg_properties_init_pointers
    - gf_svg_properties_reset_pointers
    linkageType: ''
    returnType: void
    signature: void svg_update_gradient(SVG_GradientStack *st, GF_ChildNodeItem *children,
      Bool linear)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SVG_DestroyPaintServer
      Src: /src/gpac/src/compositor/svg_paint_servers.c:282,1
    - Dst: svg_gradient_traverse
      Src: /src/gpac/src/compositor/svg_paint_servers.c:286,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 277
    functionDepth: 7
    functionLinenumber: 277
    functionLinenumberEnd: 287
    functionName: svg_traverse_gradient
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 0
    functionsReached:
    - svg_gradient_traverse
    - SVG_DestroyPaintServer
    linkageType: ''
    returnType: void
    signature: void svg_traverse_gradient(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_paint_servers.c:295,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 53
    argCount: 2
    argNames:
    - txh
    - all_atts
    argTypes:
    - GF_TextureHandler*
    - SVGAllAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 292
    functionDepth: 2
    functionLinenumber: 292
    functionLinenumberEnd: 340
    functionName: compositor_svg_get_gradient_bounds
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    linkageType: ''
    returnType: GF_Rect
    signature: GF_Rect compositor_svg_get_gradient_bounds(GF_TextureHandler *txh,
      SVGAllAttributes *all_atts)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_paint_servers.c:354,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/svg_paint_servers.c:360,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/compositor/svg_paint_servers.c:361,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_paint_servers.c:365,1
    - Dst: gf_sc_texture_get_stencil
      Src: /src/gpac/src/compositor/svg_paint_servers.c:368,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/compositor/svg_paint_servers.c:372,1
    - Dst: gf_evg_surface_new
      Src: /src/gpac/src/compositor/svg_paint_servers.c:374,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/svg_paint_servers.c:376,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/svg_paint_servers.c:385,1
    - Dst: memset
      Src: /src/gpac/src/compositor/svg_paint_servers.c:387,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/compositor/svg_paint_servers.c:389,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/svg_paint_servers.c:392,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/compositor/svg_paint_servers.c:394,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_paint_servers.c:400,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/svg_paint_servers.c:401,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/compositor/svg_paint_servers.c:402,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_paint_servers.c:407,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/svg_paint_servers.c:409,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/compositor/svg_paint_servers.c:410,1
    - Dst: gf_evg_surface_attach_to_texture
      Src: /src/gpac/src/compositor/svg_paint_servers.c:413,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/svg_paint_servers.c:415,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/compositor/svg_paint_servers.c:416,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/svg_paint_servers.c:420,1
    - Dst: gf_path_new
      Src: /src/gpac/src/compositor/svg_paint_servers.c:422,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/svg_paint_servers.c:423,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/svg_paint_servers.c:424,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/svg_paint_servers.c:425,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/svg_paint_servers.c:426,1
    - Dst: gf_path_close
      Src: /src/gpac/src/compositor/svg_paint_servers.c:427,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_paint_servers.c:429,1
    - Dst: GF_TextureHandler*::compute_gradient_matrix
      Src: /src/gpac/src/compositor/svg_paint_servers.c:430,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_paint_servers.c:432,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_paint_servers.c:436,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/svg_paint_servers.c:438,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/svg_paint_servers.c:439,1
    - Dst: compositor_svg_get_gradient_bounds
      Src: /src/gpac/src/compositor/svg_paint_servers.c:441,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/svg_paint_servers.c:443,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/svg_paint_servers.c:444,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_paint_servers.c:444,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_paint_servers.c:444,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/svg_paint_servers.c:445,1
    - Dst: gf_evg_stencil_set_matrix
      Src: /src/gpac/src/compositor/svg_paint_servers.c:448,1
    - Dst: gf_evg_stencil_set_auto_matrix
      Src: /src/gpac/src/compositor/svg_paint_servers.c:449,1
    - Dst: gf_evg_surface_set_raster_level
      Src: /src/gpac/src/compositor/svg_paint_servers.c:450,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/svg_paint_servers.c:451,1
    - Dst: gf_evg_surface_fill
      Src: /src/gpac/src/compositor/svg_paint_servers.c:452,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/compositor/svg_paint_servers.c:453,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/svg_paint_servers.c:454,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/svg_paint_servers.c:455,1
    - Dst: gf_sc_texture_set_data
      Src: /src/gpac/src/compositor/svg_paint_servers.c:482,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 108
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 484
      start: 342
    functionDepth: 8
    functionLinenumber: 342
    functionLinenumberEnd: 484
    functionName: compositor_svg_build_gradient_texture
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_evg_stencil_delete
    - GF_TextureHandler*::compute_gradient_matrix
    - gf_evg_stencil_new
    - gf_list_find
    - gf_mx2d_init
    - gf_path_add_move_to
    - gf_mx2d_add_scale
    - memset
    - gf_path_close
    - gf_path_del
    - gf_evg_stencil_set_auto_matrix
    - gf_evg_stencil_set_matrix
    - gf_evg_surface_set_path
    - gf_evg_stencil_set_texture
    - gf_sc_texture_get_stencil
    - gf_node_get_private
    - gf_evg_surface_set_raster_level
    - gf_list_insert
    - gf_svg_flatten_attributes
    - gf_path_new
    - gf_divfix
    - gf_evg_surface_fill
    - gf_evg_surface_delete
    - gf_evg_surface_attach_to_texture
    - compositor_svg_get_gradient_bounds
    - gf_mx2d_copy
    - gf_malloc
    - gf_sc_texture_set_data
    - gf_mx2d_add_translation
    - INT2FIX
    - gf_path_add_line_to
    - gf_evg_surface_new
    linkageType: ''
    returnType: void
    signature: void compositor_svg_build_gradient_texture(GF_TextureHandler *txh)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_paint_servers.c:492,1
    - Dst: svg_update_gradient
      Src: /src/gpac/src/compositor/svg_paint_servers.c:494,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 495
      start: 489
    functionDepth: 8
    functionLinenumber: 489
    functionLinenumberEnd: 495
    functionName: SVG_UpdateLinearGradient
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    - svg_update_gradient
    linkageType: ''
    returnType: void
    signature: void SVG_UpdateLinearGradient(GF_TextureHandler *txh)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_paint_servers.c:504,1
    - Dst: gf_sc_texture_get_stencil
      Src: /src/gpac/src/compositor/svg_paint_servers.c:507,1
    - Dst: svg_update_gradient
      Src: /src/gpac/src/compositor/svg_paint_servers.c:510,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_paint_servers.c:512,1
    - Dst: svg_copy_gradient_attributes_from
      Src: /src/gpac/src/compositor/svg_paint_servers.c:515,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_paint_servers.c:517,1
    - Dst: compositor_svg_get_gradient_bounds
      Src: /src/gpac/src/compositor/svg_paint_servers.c:526,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/svg_paint_servers.c:527,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_paint_servers.c:527,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_paint_servers.c:527,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_paint_servers.c:533,1
    - Dst: gf_evg_stencil_set_gradient_mode
      Src: /src/gpac/src/compositor/svg_paint_servers.c:560,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/svg_paint_servers.c:565,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/svg_paint_servers.c:566,1
    - Dst: gf_evg_stencil_set_linear_gradient
      Src: /src/gpac/src/compositor/svg_paint_servers.c:568,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 53
    argCount: 4
    argNames:
    - txh
    - bounds
    - mat
    - for_3d
    argTypes:
    - GF_TextureHandler*
    - GF_Rect*
    - GF_Matrix2D*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 569
      start: 498
    functionDepth: 8
    functionLinenumber: 498
    functionLinenumberEnd: 569
    functionName: SVG_LG_ComputeMatrix
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_copy
    - gf_mx2d_add_translation
    - gf_svg_flatten_attributes
    - svg_update_gradient
    - gf_evg_stencil_set_linear_gradient
    - gf_divfix
    - gf_mx2d_init
    - gf_mx2d_add_scale
    - gf_evg_stencil_set_gradient_mode
    - compositor_svg_get_gradient_bounds
    - svg_copy_gradient_attributes_from
    - gf_sc_texture_get_stencil
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void SVG_LG_ComputeMatrix(GF_TextureHandler *txh, GF_Rect *bounds,
      GF_Matrix2D *mat, Bool for_3d)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_paint_servers.c:574,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_paint_servers.c:576,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_paint_servers.c:590,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_paint_servers.c:591,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 571
    functionDepth: 2
    functionLinenumber: 571
    functionLinenumberEnd: 592
    functionName: compositor_init_svg_linearGradient
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_linearGradient(GF_Compositor *compositor,
      GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_paint_servers.c:599,1
    - Dst: svg_update_gradient
      Src: /src/gpac/src/compositor/svg_paint_servers.c:601,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 596
    functionDepth: 8
    functionLinenumber: 596
    functionLinenumberEnd: 602
    functionName: SVG_UpdateRadialGradient
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    - svg_update_gradient
    linkageType: ''
    returnType: void
    signature: void SVG_UpdateRadialGradient(GF_TextureHandler *txh)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_paint_servers.c:611,1
    - Dst: gf_sc_texture_get_stencil
      Src: /src/gpac/src/compositor/svg_paint_servers.c:616,1
    - Dst: svg_update_gradient
      Src: /src/gpac/src/compositor/svg_paint_servers.c:619,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_paint_servers.c:621,1
    - Dst: svg_copy_gradient_attributes_from
      Src: /src/gpac/src/compositor/svg_paint_servers.c:624,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_paint_servers.c:626,1
    - Dst: compositor_svg_get_gradient_bounds
      Src: /src/gpac/src/compositor/svg_paint_servers.c:635,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/svg_paint_servers.c:636,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_paint_servers.c:636,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_paint_servers.c:636,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/svg_paint_servers.c:637,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_paint_servers.c:637,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_paint_servers.c:637,1
    - Dst: gf_mx2d_inverse
      Src: /src/gpac/src/compositor/svg_paint_servers.c:639,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_paint_servers.c:644,1
    - Dst: gf_evg_stencil_set_gradient_mode
      Src: /src/gpac/src/compositor/svg_paint_servers.c:665,1
    - Dst: gf_v2d_distance
      Src: /src/gpac/src/compositor/svg_paint_servers.c:686,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/compositor/svg_paint_servers.c:688,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/compositor/svg_paint_servers.c:689,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/svg_paint_servers.c:697,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/svg_paint_servers.c:698,1
    - Dst: gf_evg_stencil_set_radial_gradient
      Src: /src/gpac/src/compositor/svg_paint_servers.c:700,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 67
    argCount: 4
    argNames:
    - txh
    - bounds
    - mat
    - for_3d
    argTypes:
    - GF_TextureHandler*
    - GF_Rect*
    - GF_Matrix2D*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 701
      start: 604
    functionDepth: 8
    functionLinenumber: 604
    functionLinenumberEnd: 701
    functionName: SVG_RG_ComputeMatrix
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_copy
    - gf_mx2d_add_translation
    - gf_svg_flatten_attributes
    - svg_update_gradient
    - gf_evg_stencil_set_radial_gradient
    - gf_divfix
    - gf_muldiv
    - gf_mx2d_init
    - gf_mx2d_add_scale
    - gf_mx2d_inverse
    - gf_v2d_distance
    - gf_evg_stencil_set_gradient_mode
    - compositor_svg_get_gradient_bounds
    - svg_copy_gradient_attributes_from
    - gf_sc_texture_get_stencil
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void SVG_RG_ComputeMatrix(GF_TextureHandler *txh, GF_Rect *bounds,
      GF_Matrix2D *mat, Bool for_3d)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_paint_servers.c:706,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_paint_servers.c:708,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_paint_servers.c:721,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_paint_servers.c:722,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 703
    functionDepth: 2
    functionLinenumber: 703
    functionLinenumberEnd: 723
    functionName: compositor_init_svg_radialGradient
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_radialGradient(GF_Compositor *compositor,
      GF_Node *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: SVG_DestroyPaintServer
      Src: /src/gpac/src/compositor/svg_paint_servers.c:737,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_paint_servers.c:741,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_paint_servers.c:742,1
    - Dst: compositor_svg_traverse_children
      Src: /src/gpac/src/compositor/svg_paint_servers.c:747,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_paint_servers.c:749,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 4
    argNames:
    - node
    - rs
    - is_destroy
    - is_solid_color
    argTypes:
    - GF_Node*
    - void*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 726
    functionDepth: 3
    functionLinenumber: 726
    functionLinenumberEnd: 751
    functionName: svg_traverse_PaintServer
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 0
    functionsReached:
    - gf_svg_flatten_attributes
    - compositor_svg_traverse_base
    - memcpy
    - SVG_DestroyPaintServer
    - compositor_svg_traverse_children
    linkageType: ''
    returnType: void
    signature: void svg_traverse_PaintServer(GF_Node *node, void *rs, Bool is_destroy,
      Bool is_solid_color)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_paint_servers.c:761,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_paint_servers.c:764,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_paint_servers.c:765,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 767
      start: 759
    functionDepth: 2
    functionLinenumber: 759
    functionLinenumberEnd: 767
    functionName: compositor_svg_solid_color_dirty
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 1
    functionsReached:
    - gf_node_dirty_get
    - gf_node_get_private
    - gf_node_dirty_clear
    linkageType: ''
    returnType: Bool
    signature: Bool compositor_svg_solid_color_dirty(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_paint_servers.c:772,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_paint_servers.c:773,1
    - Dst: svg_traverse_PaintServer
      Src: /src/gpac/src/compositor/svg_paint_servers.c:776,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 777
      start: 769
    functionDepth: 4
    functionLinenumber: 769
    functionLinenumberEnd: 777
    functionName: svg_traverse_solidColor
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_private
    - svg_traverse_PaintServer
    linkageType: ''
    returnType: void
    signature: void svg_traverse_solidColor(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_paint_servers.c:783,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_paint_servers.c:785,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_paint_servers.c:786,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 787
      start: 780
    functionDepth: 2
    functionLinenumber: 780
    functionLinenumberEnd: 787
    functionName: compositor_init_svg_solidColor
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 1
    functionsReached:
    - gf_node_set_private
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_solidColor(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: svg_traverse_PaintServer
      Src: /src/gpac/src/compositor/svg_paint_servers.c:791,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 792
      start: 789
    functionDepth: 4
    functionLinenumber: 789
    functionLinenumberEnd: 792
    functionName: svg_traverse_stop
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 0
    functionsReached:
    - svg_traverse_PaintServer
    linkageType: ''
    returnType: void
    signature: void svg_traverse_stop(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_paint_servers.c:796,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 797
      start: 794
    functionDepth: 2
    functionLinenumber: 794
    functionLinenumberEnd: 797
    functionName: compositor_init_svg_stop
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_stop(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_paint_servers.c:801,1
    - Dst: SVG_GradientStack*::txh::update_texture_fcnt
      Src: /src/gpac/src/compositor/svg_paint_servers.c:802,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 804
      start: 799
    functionDepth: 2
    functionLinenumber: 799
    functionLinenumberEnd: 804
    functionName: compositor_svg_get_gradient_texture
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 1
    functionsReached:
    - SVG_GradientStack*::txh::update_texture_fcnt
    - gf_node_get_private
    linkageType: ''
    returnType: GF_TextureHandler
    signature: GF_TextureHandler *compositor_svg_get_gradient_texture(GF_Node *node)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_paint_servers.c:816,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_paint_servers.c:819,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_paint_servers.c:827,1
    - Dst: GF_TraverseState*::visual::CheckAttached
      Src: /src/gpac/src/compositor/svg_paint_servers.c:831,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_paint_servers.c:838,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_paint_servers.c:843,1
    - Dst: gf_evg_surface_get_mask_mode
      Src: /src/gpac/src/compositor/svg_paint_servers.c:846,1
    - Dst: gf_evg_surface_set_mask_mode
      Src: /src/gpac/src/compositor/svg_paint_servers.c:848,1
    - Dst: gf_svg_properties_init_pointers
      Src: /src/gpac/src/compositor/svg_paint_servers.c:852,1
    - Dst: compositor_svg_traverse_children
      Src: /src/gpac/src/compositor/svg_paint_servers.c:854,1
    - Dst: gf_svg_properties_reset_pointers
      Src: /src/gpac/src/compositor/svg_paint_servers.c:856,1
    - Dst: gf_evg_surface_set_mask_mode
      Src: /src/gpac/src/compositor/svg_paint_servers.c:859,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_paint_servers.c:866,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 41
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 867
      start: 807
    functionDepth: 2
    functionLinenumber: 807
    functionLinenumberEnd: 867
    functionName: svg_traverse_clip_path
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_svg_properties_init_pointers
    - gf_svg_properties_reset_pointers
    - gf_evg_surface_set_mask_mode
    - compositor_svg_traverse_children
    - GF_TraverseState*::visual::CheckAttached
    - gf_mx2d_copy
    - gf_node_get_private
    - gf_evg_surface_get_mask_mode
    linkageType: ''
    returnType: void
    signature: void svg_traverse_clip_path(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_paint_servers.c:872,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_paint_servers.c:874,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_paint_servers.c:875,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 876
      start: 869
    functionDepth: 2
    functionLinenumber: 869
    functionLinenumberEnd: 876
    functionName: compositor_init_svg_clip_path
    functionSourceFile: /src/gpac/src/compositor/svg_paint_servers.c
    functionUses: 1
    functionsReached:
    - gf_node_set_private
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_clip_path(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - __name
    - ','
    - __index
    - ','
    - __type
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 47
    functionName: CHECK_FIELD
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_FIELD(__name, __index, __type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/hardcoded_protos.c:72,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:74,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:77,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:80,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:83,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:86,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:89,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:92,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 2
    argNames:
    - node
    - path_ext
    argTypes:
    - GF_Node*
    - PathExtrusion*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 98
    functionName: PathExtrusion_GetNode
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - memset
    - CHECK_FIELD
    linkageType: ''
    returnType: Bool
    signature: Bool PathExtrusion_GetNode(GF_Node *node, PathExtrusion *path_ext)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:104,1
    - Dst: drawable_3d_del
      Src: /src/gpac/src/compositor/hardcoded_protos.c:107,1
    - Dst: PathExtrusion_GetNode
      Src: /src/gpac/src/compositor/hardcoded_protos.c:110,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/hardcoded_protos.c:114,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/hardcoded_protos.c:118,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/hardcoded_protos.c:121,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/hardcoded_protos.c:123,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:131,1
    - Dst: mesh_extrude_path
      Src: /src/gpac/src/compositor/hardcoded_protos.c:133,1
    - Dst: compositor_extrude_text
      Src: /src/gpac/src/compositor/hardcoded_protos.c:136,1
    - Dst: visual_3d_draw
      Src: /src/gpac/src/compositor/hardcoded_protos.c:142,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 100
    functionDepth: 6
    functionLinenumber: 100
    functionLinenumberEnd: 146
    functionName: TraversePathExtrusion
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_node_traverse
    - compositor_extrude_text
    - PathExtrusion_GetNode
    - visual_3d_draw
    - gf_node_dirty_get
    - drawable_3d_del
    - gf_node_dirty_clear
    - mesh_extrude_path
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void TraversePathExtrusion(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/hardcoded_protos.c:150,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/hardcoded_protos.c:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 148
    functionDepth: 2
    functionLinenumber: 148
    functionLinenumberEnd: 152
    functionName: compositor_init_path_extrusion
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - gf_node_set_callback_function
    - drawable_3d_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_path_extrusion(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/hardcoded_protos.c:173,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:175,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:178,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:181,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:184,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:187,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:190,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:193,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:196,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:199,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 23
    argCount: 2
    argNames:
    - node
    - path_ext
    argTypes:
    - GF_Node*
    - PlanarExtrusion*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 206
    functionName: PlanarExtrusion_GetNode
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - memset
    - CHECK_FIELD
    linkageType: ''
    returnType: Bool
    signature: Bool PlanarExtrusion_GetNode(GF_Node *node, PlanarExtrusion *path_ext)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:212,1
    - Dst: drawable_3d_del
      Src: /src/gpac/src/compositor/hardcoded_protos.c:215,1
    - Dst: PlanarExtrusion_GetNode
      Src: /src/gpac/src/compositor/hardcoded_protos.c:219,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/hardcoded_protos.c:223,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/hardcoded_protos.c:236,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/hardcoded_protos.c:237,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/hardcoded_protos.c:239,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/hardcoded_protos.c:241,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:249,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/hardcoded_protos.c:255,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:263,1
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/hardcoded_protos.c:271,1
    - Dst: gf_path_flatten
      Src: /src/gpac/src/compositor/hardcoded_protos.c:272,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/hardcoded_protos.c:273,1
    - Dst: gf_path_flatten
      Src: /src/gpac/src/compositor/hardcoded_protos.c:274,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/hardcoded_protos.c:275,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/compositor/hardcoded_protos.c:281,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/hardcoded_protos.c:288,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/hardcoded_protos.c:289,1
    - Dst: mesh_extrude_path_ext
      Src: /src/gpac/src/compositor/hardcoded_protos.c:294,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/compositor/hardcoded_protos.c:305,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/compositor/hardcoded_protos.c:307,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/hardcoded_protos.c:313,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/hardcoded_protos.c:314,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/hardcoded_protos.c:321,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/hardcoded_protos.c:330,1
    - Dst: gf_sg_sfrotation_interpolate
      Src: /src/gpac/src/compositor/hardcoded_protos.c:333,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/hardcoded_protos.c:338,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/hardcoded_protos.c:347,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/hardcoded_protos.c:350,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/hardcoded_protos.c:351,1
    - Dst: mesh_extrude_path_ext
      Src: /src/gpac/src/compositor/hardcoded_protos.c:356,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/hardcoded_protos.c:360,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/hardcoded_protos.c:361,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/hardcoded_protos.c:364,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/hardcoded_protos.c:366,1
    - Dst: gf_mesh_build_aabbtree
      Src: /src/gpac/src/compositor/hardcoded_protos.c:367,1
    - Dst: visual_3d_draw
      Src: /src/gpac/src/compositor/hardcoded_protos.c:371,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 143
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 208
    functionDepth: 6
    functionLinenumber: 208
    functionLinenumberEnd: 375
    functionName: TraversePlanarExtrusion
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - PlanarExtrusion_GetNode
    - gf_sg_vrml_mf_alloc
    - gf_vec_len
    - mesh_reset
    - gf_sg_vrml_mf_reset
    - gf_node_get_private
    - gf_mulfix
    - mesh_update_bounds
    - gf_node_traverse
    - visual_3d_draw
    - gf_divfix
    - gf_sg_sfrotation_interpolate
    - gf_mesh_build_aabbtree
    - gf_path_flatten
    - gf_vec_diff
    - drawable_3d_del
    - mesh_extrude_path_ext
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void TraversePlanarExtrusion(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/hardcoded_protos.c:379,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/hardcoded_protos.c:380,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 377
    functionDepth: 2
    functionLinenumber: 377
    functionLinenumberEnd: 381
    functionName: compositor_init_planar_extrusion
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - gf_node_set_callback_function
    - drawable_3d_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_planar_extrusion(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/hardcoded_protos.c:401,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:404,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:407,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:410,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - node
    - pc
    argTypes:
    - GF_Node*
    - PlaneClipper*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 398
    functionDepth: 1
    functionLinenumber: 398
    functionLinenumberEnd: 413
    functionName: PlaneClipper_GetNode
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - memset
    - CHECK_FIELD
    linkageType: ''
    returnType: Bool
    signature: Bool PlaneClipper_GetNode(GF_Node *node, PlaneClipper *pc)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:418,1
    - Dst: group_3d_delete
      Src: /src/gpac/src/compositor/hardcoded_protos.c:422,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/hardcoded_protos.c:426,1
    - Dst: PlaneClipper_GetNode
      Src: /src/gpac/src/compositor/hardcoded_protos.c:427,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/hardcoded_protos.c:428,1
    - Dst: group_3d_traverse
      Src: /src/gpac/src/compositor/hardcoded_protos.c:432,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:438,1
    - Dst: visual_3d_set_clip_plane
      Src: /src/gpac/src/compositor/hardcoded_protos.c:439,1
    - Dst: group_3d_traverse
      Src: /src/gpac/src/compositor/hardcoded_protos.c:442,1
    - Dst: visual_3d_reset_clip_plane
      Src: /src/gpac/src/compositor/hardcoded_protos.c:443,1
    - Dst: gf_mx_apply_plane
      Src: /src/gpac/src/compositor/hardcoded_protos.c:447,1
    - Dst: group_3d_traverse
      Src: /src/gpac/src/compositor/hardcoded_protos.c:450,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 416
    functionDepth: 7
    functionLinenumber: 416
    functionLinenumberEnd: 455
    functionName: TraversePlaneClipper
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - group_3d_delete
    - gf_mx_apply_plane
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - visual_3d_set_clip_plane
    - gf_mx_copy
    - visual_3d_reset_clip_plane
    - gf_node_get_private
    - PlaneClipper_GetNode
    - group_3d_traverse
    linkageType: ''
    returnType: void
    signature: void TraversePlaneClipper(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PlaneClipper_GetNode
      Src: /src/gpac/src/compositor/hardcoded_protos.c:460,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/hardcoded_protos.c:462,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/hardcoded_protos.c:464,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:468,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/hardcoded_protos.c:469,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/hardcoded_protos.c:471,1
    - Dst: gf_node_proto_set_grouping
      Src: /src/gpac/src/compositor/hardcoded_protos.c:474,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 457
    functionDepth: 2
    functionLinenumber: 457
    functionLinenumberEnd: 476
    functionName: compositor_init_plane_clipper
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_dirty_set
    - GF_LOG
    - gf_node_set_private
    - gf_node_proto_set_grouping
    - gf_node_set_callback_function
    - PlaneClipper_GetNode
    linkageType: ''
    returnType: void
    signature: void compositor_init_plane_clipper(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/hardcoded_protos.c:506,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:509,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:512,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:515,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - node
    - og
    argTypes:
    - GF_Node*
    - OffscreenGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 519
      start: 503
    functionDepth: 1
    functionLinenumber: 503
    functionLinenumberEnd: 519
    functionName: OffscreenGroup_GetNode
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - memset
    - CHECK_FIELD
    linkageType: ''
    returnType: Bool
    signature: Bool OffscreenGroup_GetNode(GF_Node *node, OffscreenGroup *og)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:524,1
    - Dst: group_cache_del
      Src: /src/gpac/src/compositor/hardcoded_protos.c:528,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/hardcoded_protos.c:529,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/hardcoded_protos.c:534,1
    - Dst: OffscreenGroup_GetNode
      Src: /src/gpac/src/compositor/hardcoded_protos.c:535,1
    - Dst: group_cache_new
      Src: /src/gpac/src/compositor/hardcoded_protos.c:540,1
    - Dst: group_cache_del
      Src: /src/gpac/src/compositor/hardcoded_protos.c:545,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/hardcoded_protos.c:549,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/hardcoded_protos.c:551,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/hardcoded_protos.c:555,1
    - Dst: group_cache_traverse
      Src: /src/gpac/src/compositor/hardcoded_protos.c:558,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/hardcoded_protos.c:560,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/hardcoded_protos.c:561,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/compositor/hardcoded_protos.c:564,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/compositor/hardcoded_protos.c:565,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/compositor/hardcoded_protos.c:569,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/hardcoded_protos.c:575,1
    - Dst: group_cache_draw
      Src: /src/gpac/src/compositor/hardcoded_protos.c:581,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/hardcoded_protos.c:582,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/hardcoded_protos.c:584,1
    - Dst: vrml_drawable_pick
      Src: /src/gpac/src/compositor/hardcoded_protos.c:590,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 62
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 593
      start: 522
    functionDepth: 7
    functionLinenumber: 522
    functionLinenumberEnd: 593
    functionName: TraverseOffscreenGroup
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - gf_free
    - group_cache_del
    - gf_node_dirty_set
    - gf_node_dirty_get
    - OffscreenGroup_GetNode
    - gf_node_dirty_clear
    - group_cache_draw
    - gf_node_unregister_children
    - group_2d_traverse
    - group_cache_traverse
    - gf_node_get_field
    - vrml_drawable_pick
    - group_cache_new
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void TraverseOffscreenGroup(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: OffscreenGroup_GetNode
      Src: /src/gpac/src/compositor/hardcoded_protos.c:598,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/hardcoded_protos.c:600,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/hardcoded_protos.c:602,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:605,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/hardcoded_protos.c:606,1
    - Dst: gf_node_proto_set_grouping
      Src: /src/gpac/src/compositor/hardcoded_protos.c:609,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 611
      start: 595
    functionDepth: 2
    functionLinenumber: 595
    functionLinenumberEnd: 611
    functionName: compositor_init_offscreen_group
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - OffscreenGroup_GetNode
    - gf_node_proto_set_grouping
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_offscreen_group(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/hardcoded_protos.c:633,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:636,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:639,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:642,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - node
    - dg
    argTypes:
    - GF_Node*
    - DepthGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 646
      start: 630
    functionDepth: 1
    functionLinenumber: 630
    functionLinenumberEnd: 646
    functionName: DepthGroup_GetNode
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - memset
    - CHECK_FIELD
    linkageType: ''
    returnType: Bool
    signature: Bool DepthGroup_GetNode(GF_Node *node, DepthGroup *dg)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:655,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/hardcoded_protos.c:659,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/hardcoded_protos.c:664,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/hardcoded_protos.c:666,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/hardcoded_protos.c:668,1
    - Dst: DepthGroup_GetNode
      Src: /src/gpac/src/compositor/hardcoded_protos.c:671,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/hardcoded_protos.c:679,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/hardcoded_protos.c:682,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:689,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/hardcoded_protos.c:690,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/hardcoded_protos.c:691,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/hardcoded_protos.c:692,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/hardcoded_protos.c:693,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:694,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/hardcoded_protos.c:700,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 707
      start: 649
    functionDepth: 7
    functionLinenumber: 649
    functionLinenumberEnd: 707
    functionName: TraverseDepthGroup
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_dirty_set
    - gf_node_dirty_get
    - DepthGroup_GetNode
    - gf_mx_init
    - gf_node_dirty_clear
    - gf_mx_add_matrix
    - group_2d_traverse
    - gf_mx_copy
    - gf_node_get_private
    - gf_mulfix
    linkageType: ''
    returnType: void
    signature: void TraverseDepthGroup(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: DepthGroup_GetNode
      Src: /src/gpac/src/compositor/hardcoded_protos.c:712,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/hardcoded_protos.c:714,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/hardcoded_protos.c:716,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:719,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/hardcoded_protos.c:720,1
    - Dst: gf_node_proto_set_grouping
      Src: /src/gpac/src/compositor/hardcoded_protos.c:722,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/hardcoded_protos.c:723,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 725
      start: 709
    functionDepth: 2
    functionLinenumber: 709
    functionLinenumberEnd: 725
    functionName: compositor_init_depth_group
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - GF_LOG
    - DepthGroup_GetNode
    - gf_node_set_private
    - gf_node_proto_set_grouping
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_depth_group(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/hardcoded_protos.c:730,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/hardcoded_protos.c:733,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/compositor/hardcoded_protos.c:742,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/compositor/hardcoded_protos.c:746,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/compositor/hardcoded_protos.c:749,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/hardcoded_protos.c:754,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/hardcoded_protos.c:756,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 28
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 728
    functionDepth: 5
    functionLinenumber: 728
    functionLinenumberEnd: 758
    functionName: TraverseDepthViewPoint
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - gf_node_dirty_set
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_node_get_field
    - gf_sc_invalidate
    linkageType: ''
    returnType: void
    signature: void TraverseDepthViewPoint(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/hardcoded_protos.c:764,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 766
      start: 761
    functionDepth: 2
    functionLinenumber: 761
    functionLinenumberEnd: 766
    functionName: compositor_init_depth_viewpoint
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_depth_viewpoint(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/hardcoded_protos.c:783,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:787,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:790,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:793,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:796,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 2
    argNames:
    - node
    - ic2d
    argTypes:
    - GF_Node*
    - IndexedCurve2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 800
      start: 780
    functionDepth: 1
    functionLinenumber: 780
    functionLinenumberEnd: 800
    functionName: IndexedCurve2D_GetNode
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - memset
    - CHECK_FIELD
    linkageType: ''
    returnType: Bool
    signature: Bool IndexedCurve2D_GetNode(GF_Node *node, IndexedCurve2D *ic2d)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:809,1
    - Dst: drawable_node_del
      Src: /src/gpac/src/compositor/hardcoded_protos.c:812,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/hardcoded_protos.c:816,1
    - Dst: IndexedCurve2D_GetNode
      Src: /src/gpac/src/compositor/hardcoded_protos.c:817,1
    - Dst: curve2d_check_changes
      Src: /src/gpac/src/compositor/hardcoded_protos.c:819,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/hardcoded_protos.c:826,1
    - Dst: mesh_from_path
      Src: /src/gpac/src/compositor/hardcoded_protos.c:827,1
    - Dst: visual_3d_draw_2d
      Src: /src/gpac/src/compositor/hardcoded_protos.c:829,1
    - Dst: vrml_drawable_pick
      Src: /src/gpac/src/compositor/hardcoded_protos.c:833,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/hardcoded_protos.c:836,1
    - Dst: drawable_init_context_mpeg4
      Src: /src/gpac/src/compositor/hardcoded_protos.c:842,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/hardcoded_protos.c:844,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 33
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 804
    functionDepth: 10
    functionLinenumber: 804
    functionLinenumberEnd: 847
    functionName: TraverseIndexedCurve2D
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - drawable_node_del
    - mesh_from_path
    - IndexedCurve2D_GetNode
    - drawable_init_context_mpeg4
    - drawable_finalize_sort
    - gf_node_dirty_get
    - visual_3d_draw_2d
    - new_mesh
    - vrml_drawable_pick
    - curve2d_check_changes
    - gf_node_get_private
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void TraverseIndexedCurve2D(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_stack_new
      Src: /src/gpac/src/compositor/hardcoded_protos.c:851,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/hardcoded_protos.c:852,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 853
      start: 849
    functionDepth: 3
    functionLinenumber: 849
    functionLinenumberEnd: 853
    functionName: compositor_init_idx_curve2d
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - gf_node_set_callback_function
    - drawable_stack_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_idx_curve2d(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/hardcoded_protos.c:875,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:878,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - node
    - tr
    argTypes:
    - GF_Node*
    - Untransform*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 882
      start: 872
    functionDepth: 1
    functionLinenumber: 872
    functionLinenumberEnd: 882
    functionName: Untransform_GetNode
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - memset
    - CHECK_FIELD
    linkageType: ''
    returnType: Bool
    signature: Bool Untransform_GetNode(GF_Node *node, Untransform *tr)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:896,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/hardcoded_protos.c:897,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:899,1
    - Dst: camera_invalidate
      Src: /src/gpac/src/compositor/hardcoded_protos.c:901,1
    - Dst: camera_update
      Src: /src/gpac/src/compositor/hardcoded_protos.c:905,1
    - Dst: visual_3d_set_viewport
      Src: /src/gpac/src/compositor/hardcoded_protos.c:909,1
    - Dst: visual_3d_projection_matrix_modified
      Src: /src/gpac/src/compositor/hardcoded_protos.c:910,1
    - Dst: gf_node_traverse_children
      Src: /src/gpac/src/compositor/hardcoded_protos.c:912,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:914,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:915,1
    - Dst: visual_3d_projection_matrix_modified
      Src: /src/gpac/src/compositor/hardcoded_protos.c:917,1
    - Dst: visual_3d_set_viewport
      Src: /src/gpac/src/compositor/hardcoded_protos.c:919,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/hardcoded_protos.c:923,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/hardcoded_protos.c:924,1
    - Dst: gf_node_traverse_children
      Src: /src/gpac/src/compositor/hardcoded_protos.c:931,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:933,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:934,1
    - Dst: gf_node_traverse_children
      Src: /src/gpac/src/compositor/hardcoded_protos.c:942,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:944,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:945,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:952,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/hardcoded_protos.c:953,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/hardcoded_protos.c:955,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:957,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 46
    argCount: 3
    argNames:
    - node
    - rs
    - grp
    argTypes:
    - GF_Node*
    - void*
    - GroupingNode2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 959
      start: 885
    functionDepth: 7
    functionLinenumber: 885
    functionLinenumberEnd: 959
    functionName: TraverseUntransformEx
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - memcpy
    - gf_mx_init
    - camera_invalidate
    - gf_mx2d_init
    - group_2d_traverse
    - visual_3d_set_viewport
    - visual_3d_projection_matrix_modified
    - gf_node_traverse_children
    - camera_update
    - gf_mx_copy
    - gf_mx2d_copy
    linkageType: ''
    returnType: void
    signature: void TraverseUntransformEx(GF_Node *node, void *rs, GroupingNode2D
      *grp)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:962,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/hardcoded_protos.c:966,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/hardcoded_protos.c:970,1
    - Dst: Untransform_GetNode
      Src: /src/gpac/src/compositor/hardcoded_protos.c:971,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/hardcoded_protos.c:972,1
    - Dst: TraverseUntransformEx
      Src: /src/gpac/src/compositor/hardcoded_protos.c:975,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 976
      start: 960
    functionDepth: 8
    functionLinenumber: 960
    functionLinenumberEnd: 976
    functionName: TraverseUntransform
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - TraverseUntransformEx
    - Untransform_GetNode
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void TraverseUntransform(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Untransform_GetNode
      Src: /src/gpac/src/compositor/hardcoded_protos.c:981,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/hardcoded_protos.c:983,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/hardcoded_protos.c:985,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:988,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/hardcoded_protos.c:989,1
    - Dst: gf_node_proto_set_grouping
      Src: /src/gpac/src/compositor/hardcoded_protos.c:991,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 993
      start: 978
    functionDepth: 2
    functionLinenumber: 978
    functionLinenumberEnd: 993
    functionName: compositor_init_untransform
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_proto_set_grouping
    - gf_node_set_callback_function
    - Untransform_GetNode
    linkageType: ''
    returnType: void
    signature: void compositor_init_untransform(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1015,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1018,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1021,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - node
    - sg
    argTypes:
    - GF_Node*
    - StyleGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1025
      start: 1012
    functionDepth: 1
    functionLinenumber: 1012
    functionLinenumberEnd: 1025
    functionName: StyleGroup_GetNode
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - memset
    - CHECK_FIELD
    linkageType: ''
    returnType: Bool
    signature: Bool StyleGroup_GetNode(GF_Node *node, StyleGroup *sg)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1031,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1035,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1040,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1042,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1044,1
    - Dst: StyleGroup_GetNode
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1047,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1053,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1058
      start: 1028
    functionDepth: 7
    functionLinenumber: 1028
    functionLinenumberEnd: 1058
    functionName: TraverseStyleGroup
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_dirty_set
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - group_2d_traverse
    - StyleGroup_GetNode
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void TraverseStyleGroup(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: StyleGroup_GetNode
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1063,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1065,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1067,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1070,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1071,1
    - Dst: gf_node_proto_set_grouping
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1073,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1075,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1077
      start: 1060
    functionDepth: 2
    functionLinenumber: 1060
    functionLinenumberEnd: 1077
    functionName: compositor_init_style_group
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_proto_set_grouping
    - gf_node_set_callback_function
    - StyleGroup_GetNode
    linkageType: ''
    returnType: void
    signature: void compositor_init_style_group(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1098,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1101,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1105,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1109,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - node
    - ts
    argTypes:
    - GF_Node*
    - TestSensor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1113
      start: 1095
    functionDepth: 1
    functionLinenumber: 1095
    functionLinenumberEnd: 1113
    functionName: TestSensor_GetNode
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - memset
    - CHECK_FIELD
    linkageType: ''
    returnType: Bool
    signature: Bool TestSensor_GetNode(GF_Node *node, TestSensor *ts)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1118,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1124
      start: 1116
    functionDepth: 2
    functionLinenumber: 1116
    functionLinenumberEnd: 1124
    functionName: TraverseTestSensor
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void TraverseTestSensor(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1130,1
    - Dst: TestSensor_GetNode
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1131,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1139,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1141,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - struct _route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1142
      start: 1126
    functionDepth: 5
    functionLinenumber: 1126
    functionLinenumberEnd: 1142
    functionName: TestSensor_OnTrigger
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - TestSensor_GetNode
    - gf_node_get_private
    - gf_node_get_field
    - gf_node_event_out
    linkageType: ''
    returnType: void
    signature: void TestSensor_OnTrigger(GF_Node *node, struct _route *route)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: TestSensor_GetNode
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1147,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1150,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1152,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1155,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1156,1
    - Dst: gf_node_set_proto_eventin_handler
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1159,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1161,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1161,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1164,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1166
      start: 1144
    functionDepth: 2
    functionLinenumber: 1144
    functionLinenumberEnd: 1166
    functionName: compositor_init_test_sensor
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - TestSensor_GetNode
    - gf_node_set_private
    - GF_LOG
    - gf_node_set_proto_eventin_handler
    - gf_node_set_callback_function
    - gf_error_to_string
    linkageType: ''
    returnType: void
    signature: void compositor_init_test_sensor(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1188,1
    - Dst: CHECK_FIELD
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - node
    - tx
    argTypes:
    - GF_Node*
    - CustomTexture*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1196
      start: 1185
    functionDepth: 1
    functionLinenumber: 1185
    functionLinenumberEnd: 1196
    functionName: CustomTexture_GetNode
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - memset
    - CHECK_FIELD
    linkageType: ''
    returnType: Bool
    signature: Bool CustomTexture_GetNode(GF_Node *node, CustomTexture *tx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1200,1
    - Dst: gf_sc_texture_destroy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1204,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1205,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1208
      start: 1198
    functionDepth: 2
    functionLinenumber: 1198
    functionLinenumberEnd: 1208
    functionName: TraverseCustomTexture
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sc_texture_destroy
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void TraverseCustomTexture(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1219,1
    - Dst: gf_sc_texture_allocate
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1223,1
    - Dst: gf_sc_texture_get_gl_id
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1230,1
    - Dst: gf_sc_texture_set_data
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1239,1
    - Dst: gf_sc_texture_push_image
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1242,1
    - Dst: gf_sc_texture_get_gl_id
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1245,1
    - Dst: CustomTexture_GetNode
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1251,1
    - Dst: memset
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1255,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1256,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1257,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1258,1
    - Dst: glBindTexture
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1261,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1262,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1266
      start: 1214
    functionDepth: 2
    functionLinenumber: 1214
    functionLinenumberEnd: 1266
    functionName: CustomTexture_update
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - gf_sc_texture_set_data
    - gf_sc_texture_push_image
    - glBindTexture
    - gf_sc_texture_allocate
    - CustomTexture_GetNode
    - memset
    - glTexImage2D
    - gf_sc_texture_get_gl_id
    - gf_node_get_private
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void CustomTexture_update(GF_TextureHandler *txh)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: CustomTexture_GetNode
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1271,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1273,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1275,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1278,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1279,1
    - Dst: gf_sc_check_gl_support
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1282,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1284,1
    - Dst: gf_sc_texture_setup
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1288,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1292,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1294
      start: 1268
    functionDepth: 2
    functionLinenumber: 1268
    functionLinenumberEnd: 1294
    functionName: compositor_init_custom_texture
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - CustomTexture_GetNode
    - gf_node_set_callback_function
    - gf_sc_texture_setup
    - gf_sc_check_gl_support
    linkageType: ''
    returnType: void
    signature: void compositor_init_custom_texture(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1305,1
    - Dst: drawable_3d_del
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1308,1
    - Dst: gf_sc_texture_get_handler
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1315,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1318,1
    - Dst: gf_mo_get_srd_info
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1319,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1333,1
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1335,1
    - Dst: MAX
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1337,1
    - Dst: mesh_new_sphere
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1345,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1345,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1351,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1358,1
    - Dst: gf_plane_get_distance
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1384,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1399,1
    - Dst: visual_3d_setup_ray
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1417,1
    - Dst: visual_3d_vrml_drawable_pick
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1418,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1420,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1432,1
    - Dst: gf_sc_texture_play_from_to
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1436,1
    - Dst: visual_3d_enable_depth_buffer
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1443,1
    - Dst: visual_3d_enable_antialias
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1444,1
    - Dst: visual_3d_draw
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1449,1
    - Dst: visual_3d_enable_depth_buffer
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1451,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1455,1
    - Dst: gf_sc_texture_stop_no_unregister
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1456,1
    - Dst: visual_3d_enable_depth_buffer
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1461,1
    - Dst: visual_3d_enable_antialias
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1462,1
    - Dst: visual_3d_draw
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1463,1
    - Dst: visual_3d_enable_depth_buffer
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1464,1
    - Dst: gf_mo_hint_quality_degradation
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1468,1
    - Dst: gf_mo_hint_quality_degradation
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1470,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 131
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1479
      start: 1298
    functionDepth: 6
    functionLinenumber: 1298
    functionLinenumberEnd: 1479
    functionName: TraverseVRGeometry
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_sc_texture_get_handler
    - MAX
    - gf_filter_pid_get_name
    - visual_3d_enable_antialias
    - gf_mo_get_srd_info
    - gf_plane_get_distance
    - mesh_reset
    - gf_node_get_private
    - visual_3d_setup_ray
    - visual_3d_enable_depth_buffer
    - visual_3d_draw
    - GF_LOG
    - visual_3d_vrml_drawable_pick
    - gf_sc_texture_stop_no_unregister
    - mesh_new_sphere
    - gf_sc_texture_play_from_to
    - INT2FIX
    - gf_mo_hint_quality_degradation
    - drawable_3d_del
    linkageType: ''
    returnType: void
    signature: void TraverseVRGeometry(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1484,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1485,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1486
      start: 1482
    functionDepth: 2
    functionLinenumber: 1482
    functionLinenumberEnd: 1486
    functionName: compositor_init_vr_geometry
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - gf_node_set_callback_function
    - drawable_3d_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_vr_geometry(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1498,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1505,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1506,1
    - Dst: gf_atan2
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1521,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1526,1
    - Dst: visual_3d_enable_depth_buffer
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1528,1
    - Dst: visual_3d_projection_matrix_modified
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1533,1
    - Dst: visual_3d_set_viewport
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1542,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1544,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1545,1
    - Dst: visual_3d_projection_matrix_modified
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1547,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1549,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1550,1
    - Dst: visual_3d_projection_matrix_modified
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1555,1
    - Dst: visual_3d_set_viewport
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1570,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1573,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1574,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1575,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1577,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1579,1
    - Dst: visual_3d_projection_matrix_modified
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1580,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1582,1
    - Dst: visual_3d_projection_matrix_modified
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1587,1
    - Dst: visual_3d_set_viewport
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1601,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1603,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1605,1
    - Dst: visual_3d_set_viewport
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1613,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1615,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1616,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1618,1
    - Dst: visual_3d_set_viewport
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1623,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1625,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1626,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1627,1
    - Dst: visual_3d_set_viewport
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1631,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1633,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1634,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1636,1
    - Dst: visual_3d_projection_matrix_modified
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1640,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1644,1
    - Dst: visual_3d_set_viewport
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1645,1
    - Dst: visual_3d_enable_depth_buffer
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1646,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 104
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1649
      start: 1489
    functionDepth: 6
    functionLinenumber: 1489
    functionLinenumberEnd: 1649
    functionName: TraverseVRHUD
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - visual_3d_enable_depth_buffer
    - gf_node_traverse
    - gf_mx_add_rotation
    - gf_mx_init
    - gf_atan2
    - gf_vec_norm
    - visual_3d_projection_matrix_modified
    - gf_mx_copy
    - visual_3d_set_viewport
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void TraverseVRHUD(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1654,1
    - Dst: gf_sg_get_parent
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1655,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1657,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1659,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1661,1
    - Dst: gf_node_proto_set_grouping
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1662,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1663,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1665
      start: 1651
    functionDepth: 2
    functionLinenumber: 1651
    functionLinenumberEnd: 1665
    functionName: compositor_init_vrhud
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - gf_sg_find_node_by_name
    - GF_LOG
    - gf_node_set_private
    - gf_sg_get_parent
    - gf_node_get_graph
    - gf_node_set_callback_function
    - gf_node_proto_set_grouping
    linkageType: ''
    returnType: void
    signature: void compositor_init_vrhud(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1674,1
    - Dst: drawable_3d_del
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1677,1
    - Dst: gf_sc_texture_get_handler
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1684,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1687,1
    - Dst: gf_mo_get_srd_info
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1688,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1691,1
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1693,1
    - Dst: MAX
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1695,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1703,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1704,1
    - Dst: mesh_new_spherical_srd
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1708,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1708,1
    - Dst: mesh_new_sphere
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1710,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1710,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1714,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1720,1
    - Dst: visual_3d_enable_depth_buffer
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1724,1
    - Dst: visual_3d_enable_antialias
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1725,1
    - Dst: visual_3d_draw
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1726,1
    - Dst: visual_3d_enable_depth_buffer
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1727,1
    - Dst: get_tx_coords_from_angle
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1732,1
    - Dst: get_tx_coords_from_angle
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1733,1
    - Dst: gf_mo_hint_visible_rect
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1735,1
    - Dst: visual_3d_setup_ray
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1747,1
    - Dst: visual_3d_vrml_drawable_pick
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1748,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1753,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1754,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1757,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1758,1
    - Dst: gf_mo_hint_gaze
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1775,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1779,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 82
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1790
      start: 1669
    functionDepth: 2
    functionLinenumber: 1669
    functionLinenumberEnd: 1790
    functionName: TraverseSRDSphere
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - get_tx_coords_from_angle
    - mesh_new_spherical_srd
    - gf_node_dirty_get
    - gf_mo_hint_visible_rect
    - gf_node_dirty_clear
    - gf_sc_texture_get_handler
    - MAX
    - gf_filter_pid_get_name
    - visual_3d_enable_antialias
    - gf_mo_get_srd_info
    - mesh_reset
    - gf_node_get_private
    - visual_3d_setup_ray
    - visual_3d_enable_depth_buffer
    - visual_3d_draw
    - GF_LOG
    - visual_3d_vrml_drawable_pick
    - mesh_new_sphere
    - gf_mo_hint_gaze
    - INT2FIX
    - gf_filter_pid_get_property
    - drawable_3d_del
    - FIX2INT
    linkageType: ''
    returnType: void
    signature: void TraverseSRDSphere(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1793,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1794,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1795
      start: 1791
    functionDepth: 2
    functionLinenumber: 1791
    functionLinenumberEnd: 1795
    functionName: compositor_init_srd_sphere
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 0
    functionsReached:
    - gf_node_set_callback_function
    - drawable_3d_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_srd_sphere(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_proto
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1807,1
    - Dst: gf_sg_proto_get_extern_url
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1809,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1816,1
    - Dst: compositor_init_path_extrusion
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1817,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1820,1
    - Dst: compositor_init_planar_extrusion
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1821,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1824,1
    - Dst: compositor_init_plane_clipper
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1825,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1828,1
    - Dst: compositor_init_vr_geometry
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1829,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1832,1
    - Dst: compositor_init_vrhud
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1833,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1836,1
    - Dst: compositor_init_srd_sphere
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1837,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1841,1
    - Dst: compositor_init_offscreen_group
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1842,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1845,1
    - Dst: compositor_init_depth_group
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1846,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1849,1
    - Dst: compositor_init_depth_viewpoint
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1850,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1853,1
    - Dst: compositor_init_idx_curve2d
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1854,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1857,1
    - Dst: compositor_init_untransform
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1858,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1861,1
    - Dst: compositor_init_hc_flashshape
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1863,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1867,1
    - Dst: compositor_init_style_group
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1868,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1871,1
    - Dst: compositor_init_test_sensor
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1872,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1875,1
    - Dst: compositor_init_custom_texture
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1876,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1884,1
    - Dst: GF_HardcodedProto*::can_load_proto
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1885,1
    - Dst: GF_HardcodedProto*::init
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1885,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 77
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1892
      start: 1800
    functionDepth: 4
    functionLinenumber: 1800
    functionLinenumberEnd: 1892
    functionName: gf_sc_init_hardcoded_proto
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 1
    functionsReached:
    - compositor_init_plane_clipper
    - compositor_init_depth_group
    - compositor_init_idx_curve2d
    - compositor_init_srd_sphere
    - compositor_init_untransform
    - GF_HardcodedProto*::can_load_proto
    - compositor_init_path_extrusion
    - compositor_init_custom_texture
    - compositor_init_test_sensor
    - gf_sg_proto_get_extern_url
    - gf_list_enum
    - GF_HardcodedProto*::init
    - compositor_init_vr_geometry
    - compositor_init_vrhud
    - compositor_init_style_group
    - compositor_init_offscreen_group
    - compositor_init_planar_extrusion
    - strcmp
    - gf_node_get_proto
    - compositor_init_hc_flashshape
    - compositor_init_depth_viewpoint
    linkageType: ''
    returnType: void
    signature: void gf_sc_init_hardcoded_proto(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1900,1
    - Dst: GF_HardcodedProto*::can_load_proto
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1901,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - compositor
    - uri
    argTypes:
    - GF_Compositor*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1907
      start: 1894
    functionDepth: 1
    functionLinenumber: 1894
    functionLinenumberEnd: 1907
    functionName: gf_sc_uri_is_hardcoded_proto
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    - GF_HardcodedProto*::can_load_proto
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sc_uri_is_hardcoded_proto(GF_Compositor *compositor, const
      char *uri)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_proto
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1916,1
    - Dst: gf_sg_proto_get_extern_url
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1918,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1922,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/hardcoded_protos.c:1923,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1928
      start: 1909
    functionDepth: 2
    functionLinenumber: 1909
    functionLinenumberEnd: 1928
    functionName: gf_sc_hardcoded_proto_get_texture_handler
    functionSourceFile: /src/gpac/src/compositor/hardcoded_protos.c
    functionUses: 1
    functionsReached:
    - gf_sg_proto_get_extern_url
    - strcmp
    - gf_node_get_private
    - gf_node_get_proto
    linkageType: ''
    returnType: GF_TextureHandler
    signature: GF_TextureHandler *gf_sc_hardcoded_proto_get_texture_handler(GF_Node
      *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_surface_new
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:38,1
    - Dst: GF_VisualManager*::GetSurfaceAccess
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:41,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 42
    functionName: visual_2d_init_raster
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d_draw.c
    functionUses: 1
    functionsReached:
    - gf_evg_surface_new
    - GF_VisualManager*::GetSurfaceAccess
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err visual_2d_init_raster(GF_VisualManager *visual)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_VisualManager*::ReleaseSurfaceAccess
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionName: visual_2d_release_raster
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d_draw.c
    functionUses: 1
    functionsReached:
    - GF_VisualManager*::ReleaseSurfaceAccess
    linkageType: ''
    returnType: void
    signature: void visual_2d_release_raster(GF_VisualManager *visual)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_VisualManager*::CheckAttached
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:57,1
    - Dst: gf_evg_surface_clear
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:65,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 4
    argNames:
    - visual
    - rc
    - BackColor
    - is_offscreen
    argTypes:
    - GF_VisualManager*
    - GF_IRect*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 52
    functionDepth: 3
    functionLinenumber: 52
    functionLinenumberEnd: 66
    functionName: visual_2d_clear_surface
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d_draw.c
    functionUses: 1
    functionsReached:
    - GF_VisualManager*::CheckAttached
    - gf_evg_surface_clear
    linkageType: ''
    returnType: void
    signature: void visual_2d_clear_surface(GF_VisualManager *visual, GF_IRect *rc,
      u32 BackColor, u32 is_offscreen)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:75,1
    - Dst: gf_path_new
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:78,1
    - Dst: gf_path_add_rect_center
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:79,1
    - Dst: gf_path_get_outline
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:80,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:81,1
    - Dst: gf_evg_surface_set_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:82,1
    - Dst: gf_evg_surface_set_clipper
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:83,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:84,1
    - Dst: gf_evg_stencil_set_brush_color
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:85,1
    - Dst: gf_evg_surface_fill
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:86,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - visual
    - ctx
    argTypes:
    - GF_VisualManager*
    - struct _drawable_context*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 68
    functionDepth: 8
    functionLinenumber: 68
    functionLinenumberEnd: 88
    functionName: draw_clipper
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d_draw.c
    functionUses: 0
    functionsReached:
    - gf_evg_surface_set_clipper
    - gf_path_add_rect_center
    - gf_path_new
    - gf_path_del
    - gf_evg_surface_fill
    - gf_evg_surface_set_matrix
    - memset
    - gf_path_get_outline
    - gf_evg_surface_set_path
    - gf_evg_stencil_set_brush_color
    linkageType: ''
    returnType: void
    signature: void draw_clipper(GF_VisualManager *visual, struct _drawable_context
      *ctx)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:98,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:98,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:98,1
    - Dst: gf_evg_surface_set_clipper
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:101,1
    - Dst: gf_evg_surface_fill
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:102,1
    - Dst: gf_evg_surface_clear
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:104,1
    - Dst: gf_irect_intersect
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:119,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:121,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:121,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:121,1
    - Dst: gf_evg_surface_set_clipper
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:123,1
    - Dst: gf_evg_surface_fill
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:124,1
    - Dst: gf_evg_surface_clear
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:126,1
    - Dst: ra_union_rect
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:140,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 37
    argCount: 5
    argNames:
    - visual
    - ctx
    - stencil
    - tr_state
    - is_erase
    argTypes:
    - GF_VisualManager*
    - DrawableContext*
    - GF_EVGStencil*
    - GF_TraverseState*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 90
    functionDepth: 8
    functionLinenumber: 90
    functionLinenumberEnd: 143
    functionName: visual_2d_fill_path
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d_draw.c
    functionUses: 0
    functionsReached:
    - gf_evg_surface_set_clipper
    - gf_node_get_class_name
    - GF_LOG
    - gf_irect_intersect
    - gf_evg_surface_fill
    - gf_node_get_log_name
    - ra_union_rect
    - gf_evg_surface_clear
    linkageType: ''
    returnType: void
    signature: void visual_2d_fill_path(GF_VisualManager *visual, DrawableContext
      *ctx, GF_EVGStencil * stencil, GF_TraverseState *tr_state, Bool is_erase)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_surface_set_raster_level
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:148,1
    - Dst: gf_evg_surface_set_raster_level
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:152,1
    - Dst: gf_evg_surface_set_raster_level
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:156,1
    - Dst: gf_evg_surface_set_raster_level
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:158,1
    - Dst: gf_evg_surface_set_raster_level
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:163,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 4
    argNames:
    - compositor
    - rend
    - forText
    - no_antialias
    argTypes:
    - GF_Compositor*
    - GF_EVGSurface*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 167
    functionName: visual_2d_set_options
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d_draw.c
    functionUses: 0
    functionsReached:
    - gf_evg_surface_set_raster_level
    linkageType: ''
    returnType: void
    signature: void visual_2d_set_options(GF_Compositor *compositor, GF_EVGSurface
      *rend, Bool forText, Bool no_antialias)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:176,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:185,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:186,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:195,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:203,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:203,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:203,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:204,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:205,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:206,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:206,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:206,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:207,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:207,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:207,1
    - Dst: gf_mx2d_inverse
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:209,1
    - Dst: tr_mx2d_get_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:213,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:214,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:215,1
    - Dst: gf_mx2d_inverse
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:216,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 42
    argCount: 6
    argNames:
    - __appear
    - txh
    - mat
    - line_texture
    - final_width
    - final_height
    argTypes:
    - GF_Node*
    - GF_TextureHandler*
    - GF_Matrix2D*
    - Bool
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 171
    functionDepth: 2
    functionLinenumber: 171
    functionLinenumberEnd: 219
    functionName: visual_2d_get_texture_transform
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d_draw.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - tr_mx2d_get_matrix
    - gf_mx2d_add_translation
    - gf_mx2d_add_rotation
    - gf_mx2d_add_scale
    - gf_mx2d_inverse
    - gf_mx2d_init
    - gf_mulfix
    linkageType: ''
    returnType: void
    signature: void visual_2d_get_texture_transform(GF_Node *__appear, GF_TextureHandler
      *txh, GF_Matrix2D *mat, Bool line_texture, Fixed final_width, Fixed final_height)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:230,1
    - Dst: GF_TextureHandler*::compute_gradient_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:234,1
    - Dst: GF_TextureHandler*::compute_gradient_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:236,1
    - Dst: gf_sc_texture_get_stencil
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:238,1
    - Dst: visual_2d_get_texture_transform
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:244,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:244,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:244,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:245,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:250,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:251,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:252,1
    - Dst: gf_evg_stencil_set_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:254,1
    - Dst: gf_evg_stencil_set_auto_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:255,1
    - Dst: gf_evg_stencil_set_color_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:256,1
    - Dst: gf_evg_stencil_set_alpha
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:260,1
    - Dst: gf_evg_stencil_set_alpha
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:262,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:262,1
    - Dst: gf_evg_surface_set_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:264,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:267,1
    - Dst: visual_2d_fill_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:268,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:269,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 7
    argNames:
    - visual
    - path
    - txh
    - ctx
    - tr_state
    - ext_mx
    - orig_bounds
    argTypes:
    - GF_VisualManager*
    - GF_Path*
    - GF_TextureHandler*
    - struct _drawable_context*
    - GF_TraverseState*
    - GF_Matrix2D*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 222
    functionDepth: 9
    functionLinenumber: 222
    functionLinenumberEnd: 272
    functionName: visual_2d_draw_gradient
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d_draw.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_add_matrix
    - gf_mx2d_add_translation
    - INT2FIX
    - visual_2d_get_texture_transform
    - GF_TextureHandler*::compute_gradient_matrix
    - GF_COL_A
    - gf_evg_stencil_set_auto_matrix
    - gf_evg_stencil_set_matrix
    - gf_evg_surface_set_path
    - gf_evg_stencil_set_color_matrix
    - gf_evg_surface_set_matrix
    - visual_2d_fill_path
    - gf_sc_texture_get_stencil
    - gf_evg_stencil_set_alpha
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void visual_2d_draw_gradient(GF_VisualManager *visual, GF_Path *path,
      GF_TextureHandler *txh, struct _drawable_context *ctx, GF_TraverseState *tr_state,
      GF_Matrix2D *ext_mx, GF_Rect *orig_bounds)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_VisualManager*::CheckAttached
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:285,1
    - Dst: gf_sc_texture_get_stencil
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:288,1
    - Dst: visual_2d_set_options
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:291,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:297,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:297,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:298,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:298,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:300,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:301,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:304,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:307,1
    - Dst: gf_evg_stencil_set_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:310,1
    - Dst: gf_evg_stencil_set_auto_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:311,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:313,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:314,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:315,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:316,1
    - Dst: gf_evg_stencil_set_alpha
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:320,1
    - Dst: gf_evg_stencil_set_alpha
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:322,1
    - Dst: memset
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:323,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:324,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:325,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:326,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:327,1
    - Dst: gf_evg_stencil_set_color_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:329,1
    - Dst: gf_evg_surface_set_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:332,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:336,1
    - Dst: visual_2d_fill_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:338,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:339,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 38
    argCount: 6
    argNames:
    - visual
    - txt_ctx
    - path
    - object_bounds
    - txh
    - tr_state
    argTypes:
    - GF_VisualManager*
    - DrawableContext*
    - GF_Path*
    - GF_Rect*
    - GF_TextureHandler*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 276
    functionDepth: 9
    functionLinenumber: 276
    functionLinenumberEnd: 341
    functionName: visual_2d_texture_path_text
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d_draw.c
    functionUses: 1
    functionsReached:
    - gf_mx2d_add_scale
    - memset
    - visual_2d_set_options
    - gf_mx2d_add_matrix
    - GF_COL_G
    - GF_COL_A
    - gf_evg_stencil_set_auto_matrix
    - gf_evg_stencil_set_matrix
    - gf_evg_surface_set_path
    - GF_VisualManager*::CheckAttached
    - gf_sc_texture_get_stencil
    - gf_evg_stencil_set_alpha
    - GF_COL_B
    - gf_divfix
    - gf_evg_stencil_set_color_matrix
    - GF_COL_R
    - visual_2d_fill_path
    - gf_mx2d_add_translation
    - INT2FIX
    - gf_evg_surface_set_matrix
    - gf_mx2d_init
    linkageType: ''
    returnType: void
    signature: 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)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:362,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:367,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:368,1
    - Dst: gf_irect_intersect
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:378,1
    - Dst: compositor_2d_hybgl_flush_video
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:384,1
    - Dst: gf_irect_inside
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:388,1
    - Dst: gf_evg_surface_clear
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:396,1
    - Dst: visual_2d_draw_path_extended
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:400,1
    - Dst: gf_evg_surface_clear
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:402,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 52
    argCount: 4
    argNames:
    - visual
    - txh
    - ctx
    - tr_state
    argTypes:
    - GF_VisualManager*
    - GF_TextureHandler*
    - struct _drawable_context*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 346
    functionDepth: 3
    functionLinenumber: 346
    functionLinenumberEnd: 418
    functionName: visual_2d_flush_hybgl_canvas
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d_draw.c
    functionUses: 1
    functionsReached:
    - gf_irect_inside
    - GF_COL_A
    - visual_2d_draw_path_extended
    - compositor_2d_hybgl_flush_video
    - gf_evg_surface_clear
    - gf_irect_intersect
    linkageType: ''
    returnType: void
    signature: void visual_2d_flush_hybgl_canvas(GF_VisualManager *visual, GF_TextureHandler
      *txh, struct _drawable_context *ctx, GF_TraverseState *tr_state)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: visual_2d_flush_hybgl_canvas
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:427,1
    - Dst: gf_cmx_copy
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:431,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:432,1
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:437,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:439,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:440,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:441,1
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:443,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:444,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:447,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:448,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:449,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:450,1
    - Dst: visual_3d_set_clipper_2d
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:451,1
    - Dst: gf_node_allow_cyclic_traverse
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:453,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:454,1
    - Dst: gf_cmx_init
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:458,1
    - Dst: visual_3d_reset_clipper_2d
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:462,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:463,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 31
    argCount: 7
    argNames:
    - visual
    - path
    - txh
    - ctx
    - orig_bounds
    - ext_mx
    - tr_state
    argTypes:
    - GF_VisualManager*
    - GF_Path*
    - GF_TextureHandler*
    - struct _drawable_context*
    - GF_Rect*
    - GF_Matrix2D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 420
    functionDepth: 6
    functionLinenumber: 420
    functionLinenumberEnd: 464
    functionName: visual_2d_texture_path_opengl_auto
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d_draw.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - gf_node_traverse
    - gf_cmx_copy
    - gf_mx_from_mx2d
    - gf_mx_init
    - gf_mx_add_translation
    - visual_3d_set_clipper_2d
    - gf_mx_add_matrix
    - gf_mx_add_scale
    - gf_mx_copy
    - visual_2d_flush_hybgl_canvas
    - visual_3d_reset_clipper_2d
    - gf_cmx_init
    - gf_node_allow_cyclic_traverse
    linkageType: ''
    returnType: void
    signature: void visual_2d_texture_path_opengl_auto(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)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: GF_VisualManager*::CheckAttached
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:476,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:481,1
    - Dst: visual_2d_draw_gradient
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:490,1
    - Dst: visual_2d_texture_path_opengl_auto
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:497,1
    - Dst: visual_2d_fill_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:504,1
    - Dst: gf_mo_get_visual_info
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:508,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:510,1
    - Dst: compositor_texture_rectangles
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:513,1
    - Dst: gf_sc_texture_push_image
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:517,1
    - Dst: gf_sc_texture_get_stencil
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:518,1
    - Dst: visual_2d_set_options
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:521,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:527,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:534,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:535,1
    - Dst: visual_2d_get_texture_transform
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:541,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:542,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:547,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:549,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:552,1
    - Dst: gf_evg_stencil_set_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:555,1
    - Dst: gf_evg_stencil_set_auto_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:556,1
    - Dst: gf_evg_stencil_set_mapping
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:564,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:567,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:568,1
    - Dst: gf_evg_stencil_set_alpha
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:570,1
    - Dst: gf_evg_stencil_set_color_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:571,1
    - Dst: gf_evg_surface_set_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:573,1
    - Dst: gf_evg_surface_set_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:575,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:580,1
    - Dst: visual_2d_fill_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:581,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:582,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 75
    argCount: 7
    argNames:
    - visual
    - path
    - txh
    - ctx
    - orig_bounds
    - ext_mx
    - tr_state
    argTypes:
    - GF_VisualManager*
    - GF_Path*
    - GF_TextureHandler*
    - struct _drawable_context*
    - GF_Rect*
    - GF_Matrix2D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 468
    functionDepth: 10
    functionLinenumber: 468
    functionLinenumberEnd: 587
    functionName: visual_2d_texture_path_extended
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d_draw.c
    functionUses: 1
    functionsReached:
    - visual_2d_get_texture_transform
    - compositor_texture_rectangles
    - gf_mx2d_add_scale
    - visual_2d_set_options
    - gf_mx2d_add_matrix
    - visual_2d_draw_gradient
    - GF_COL_A
    - gf_evg_stencil_set_auto_matrix
    - gf_evg_stencil_set_matrix
    - gf_evg_surface_set_path
    - gf_sc_texture_get_stencil
    - GF_VisualManager*::CheckAttached
    - gf_evg_stencil_set_alpha
    - gf_sc_texture_push_image
    - visual_2d_texture_path_opengl_auto
    - gf_evg_stencil_set_mapping
    - gf_mo_get_visual_info
    - gf_evg_stencil_set_color_matrix
    - visual_2d_fill_path
    - gf_mx2d_add_translation
    - gf_node_dirty_set
    - gf_evg_surface_set_matrix
    - gf_mx2d_init
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: 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)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_VisualManager*::CheckAttached
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:594,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:601,1
    - Dst: visual_2d_draw_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:602,1
    - Dst: visual_2d_texture_path_extended
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:607,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 4
    argNames:
    - visual
    - path
    - ctx
    - tr_state
    argTypes:
    - GF_VisualManager*
    - GF_Path*
    - struct _drawable_context*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 608
      start: 589
    functionDepth: 11
    functionLinenumber: 589
    functionLinenumberEnd: 608
    functionName: visual_2d_texture_path
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d_draw.c
    functionUses: 6
    functionsReached:
    - visual_2d_texture_path_extended
    - GF_VisualManager*::CheckAttached
    - visual_2d_draw_path
    - GF_COL_A
    linkageType: ''
    returnType: void
    signature: void visual_2d_texture_path(GF_VisualManager *visual, GF_Path *path,
      struct _drawable_context *ctx, GF_TraverseState *tr_state)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: GF_VisualManager*::CheckAttached
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:619,1
    - Dst: draw_clipper
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:622,1
    - Dst: visual_2d_set_options
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:627,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:630,1
    - Dst: gf_evg_stencil_set_brush_color
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:634,1
    - Dst: gf_evg_surface_set_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:647,1
    - Dst: gf_evg_surface_clear
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:653,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:658,1
    - Dst: visual_2d_fill_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:659,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:660,1
    - Dst: gf_evg_stencil_set_brush_color
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:674,1
    - Dst: drawable_get_strikeinfo
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:677,1
    - Dst: visual_2d_texture_path_extended
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:680,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:682,1
    - Dst: visual_2d_fill_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:683,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:687,1
    - Dst: draw_clipper
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:695,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 59
    argCount: 9
    argNames:
    - visual
    - path
    - ctx
    - brush
    - pen
    - tr_state
    - orig_bounds
    - ext_mx
    - is_erase
    argTypes:
    - GF_VisualManager*
    - GF_Path*
    - DrawableContext*
    - GF_EVGStencil*
    - GF_EVGStencil*
    - GF_TraverseState*
    - GF_Rect*
    - GF_Matrix2D*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 613
    functionDepth: 11
    functionLinenumber: 613
    functionLinenumberEnd: 696
    functionName: visual_2d_draw_path_extended
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d_draw.c
    functionUses: 2
    functionsReached:
    - GF_COL_A
    - drawable_get_strikeinfo
    - gf_evg_surface_clear
    - gf_path_del
    - visual_2d_texture_path_extended
    - gf_evg_surface_set_path
    - gf_evg_surface_set_matrix
    - visual_2d_fill_path
    - visual_2d_set_options
    - GF_VisualManager*::CheckAttached
    - gf_evg_stencil_set_brush_color
    - draw_clipper
    linkageType: ''
    returnType: void
    signature: void visual_2d_draw_path_extended(GF_VisualManager *visual, GF_Path
      *path, DrawableContext *ctx, GF_EVGStencil * brush, GF_EVGStencil * pen, GF_TraverseState
      *tr_state, GF_Rect *orig_bounds, GF_Matrix2D *ext_mx, Bool is_erase)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: visual_2d_draw_path_extended
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:700,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - visual
    - path
    - ctx
    - brush
    - pen
    - tr_state
    argTypes:
    - GF_VisualManager*
    - GF_Path*
    - DrawableContext*
    - GF_EVGStencil*
    - GF_EVGStencil*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 701
      start: 698
    functionDepth: 12
    functionLinenumber: 698
    functionLinenumberEnd: 701
    functionName: visual_2d_draw_path
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d_draw.c
    functionUses: 9
    functionsReached:
    - visual_2d_draw_path_extended
    linkageType: ''
    returnType: void
    signature: void visual_2d_draw_path(GF_VisualManager *visual, GF_Path *path, DrawableContext
      *ctx, GF_EVGStencil * brush, GF_EVGStencil * pen, GF_TraverseState *tr_state)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_VisualManager*::CheckAttached
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:711,1
    - Dst: draw_clipper
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:716,1
    - Dst: visual_2d_set_options
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:721,1
    - Dst: gf_evg_surface_set_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:724,1
    - Dst: gf_evg_surface_set_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:728,1
    - Dst: gf_path_new
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:731,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:732,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:733,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:734,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:735,1
    - Dst: gf_path_close
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:736,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:741,1
    - Dst: gf_evg_stencil_set_brush_color
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:742,1
    - Dst: visual_2d_fill_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:743,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:744,1
    - Dst: memset
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:749,1
    - Dst: gf_evg_stencil_set_brush_color
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:753,1
    - Dst: gf_path_get_outline
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:754,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:756,1
    - Dst: visual_2d_fill_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:757,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:758,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:759,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:762,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 45
    argCount: 6
    argNames:
    - visual
    - ctx
    - _rc
    - color
    - strike_color
    - tr_state
    argTypes:
    - GF_VisualManager*
    - DrawableContext*
    - GF_Rect*
    - u32
    - u32
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 703
    functionDepth: 9
    functionLinenumber: 703
    functionLinenumberEnd: 763
    functionName: visual_2d_fill_rect
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d_draw.c
    functionUses: 2
    functionsReached:
    - gf_path_new
    - gf_path_del
    - gf_path_add_line_to
    - gf_evg_surface_set_matrix
    - gf_path_add_move_to
    - gf_evg_surface_set_path
    - memset
    - visual_2d_fill_path
    - gf_path_get_outline
    - visual_2d_set_options
    - GF_VisualManager*::CheckAttached
    - gf_path_close
    - gf_evg_stencil_set_brush_color
    - draw_clipper
    linkageType: ''
    returnType: void
    signature: void visual_2d_fill_rect(GF_VisualManager *visual, DrawableContext
      *ctx, GF_Rect *_rc, u32 color, u32 strike_color, GF_TraverseState *tr_state)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_VisualManager*::CheckAttached
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:777,1
    - Dst: visual_2d_set_options
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:782,1
    - Dst: gf_evg_surface_set_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:783,1
    - Dst: gf_evg_surface_set_raster_level
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:785,1
    - Dst: gf_evg_surface_set_matrix
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:786,1
    - Dst: gf_path_new
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:788,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:789,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:789,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:789,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:790,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:790,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:790,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:791,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:791,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:791,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:792,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:792,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:792,1
    - Dst: gf_path_close
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:793,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:796,1
    - Dst: gf_evg_stencil_set_brush_color
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:797,1
    - Dst: gf_evg_surface_set_clipper
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:799,1
    - Dst: gf_evg_surface_fill
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:800,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:802,1
    - Dst: memset
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:806,1
    - Dst: gf_path_get_outline
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:810,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:813,1
    - Dst: gf_evg_stencil_set_brush_color
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:814,1
    - Dst: gf_evg_surface_set_clipper
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:816,1
    - Dst: gf_evg_surface_fill
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:817,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:819,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:820,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:822,1
    - Dst: ra_union_rect
      Src: /src/gpac/src/compositor/visual_manager_2d_draw.c:825,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 42
    argCount: 4
    argNames:
    - visual
    - rc
    - fill
    - strike
    argTypes:
    - GF_VisualManager*
    - GF_IRect*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 766
    functionDepth: 8
    functionLinenumber: 766
    functionLinenumberEnd: 827
    functionName: visual_2d_fill_irect
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d_draw.c
    functionUses: 0
    functionsReached:
    - gf_evg_surface_set_clipper
    - ra_union_rect
    - INT2FIX
    - gf_path_new
    - gf_path_del
    - gf_evg_surface_fill
    - gf_path_add_line_to
    - gf_evg_surface_set_matrix
    - gf_path_add_move_to
    - gf_evg_surface_set_path
    - memset
    - gf_path_get_outline
    - visual_2d_set_options
    - GF_VisualManager*::CheckAttached
    - gf_path_close
    - gf_evg_stencil_set_brush_color
    - gf_evg_surface_set_raster_level
    linkageType: ''
    returnType: void
    signature: void visual_2d_fill_irect(GF_VisualManager *visual, GF_IRect *rc, u32
      fill, u32 strike)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/compositor/svg_font.c:55,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/compositor/svg_font.c:66,1
    - Dst: gf_utf8_reorder_bidi
      Src: /src/gpac/src/compositor/svg_font.c:73,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_font.c:87,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_font.c:89,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_font.c:94,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_font.c:102,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_font.c:109,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_font.c:111,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/svg_font.c:112,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/svg_font.c:112,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/svg_font.c:122,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/svg_font.c:125,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/svg_font.c:128,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/svg_font.c:131,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 96
    argCount: 6
    argNames:
    - udta
    - utf_string
    - glyph_buffer
    - io_glyph_buffer_size
    - lang
    - is_rtl
    argTypes:
    - void*
    - char*
    - u32*
    - u32*
    - char*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 44
    functionDepth: 2
    functionLinenumber: 44
    functionLinenumberEnd: 163
    functionName: svg_font_get_glyphs
    functionSourceFile: /src/gpac/src/compositor/svg_font.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_list_get
    - gf_svg_flatten_attributes
    - gf_utf8_mbstowcs
    - strstr
    - gf_list_count
    - strcmp
    - gf_utf8_reorder_bidi
    - stricmp
    - gf_node_get_private
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_font_get_glyphs(void *udta, const char *utf_string, u32
      *glyph_buffer, u32 *io_glyph_buffer_size, const char *lang, Bool *is_rtl)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_font.c:171,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_font.c:172,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - udta
    - glyph_name
    argTypes:
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 166
    functionDepth: 2
    functionLinenumber: 166
    functionLinenumberEnd: 181
    functionName: svg_font_load_glyph
    functionSourceFile: /src/gpac/src/compositor/svg_font.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_node_get_private
    linkageType: ''
    returnType: GF_Glyph
    signature: GF_Glyph *svg_font_load_glyph(void *udta, u32 glyph_name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_font.c:186,1
    - Dst: gf_font_manager_unregister_font
      Src: /src/gpac/src/compositor/svg_font.c:188,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_font.c:189,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_font.c:190,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 183
    functionDepth: 3
    functionLinenumber: 183
    functionLinenumberEnd: 193
    functionName: svg_traverse_font
    functionSourceFile: /src/gpac/src/compositor/svg_font.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_font_manager_unregister_font
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void svg_traverse_font(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/svg_font.c:198,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/svg_font.c:199,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_font.c:199,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_font.c:200,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/svg_font.c:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 3
    argNames:
    - handler
    - event
    - observer
    argTypes:
    - GF_Node*
    - GF_DOM_Event*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 195
    functionDepth: 2
    functionLinenumber: 195
    functionLinenumberEnd: 207
    functionName: svg_font_on_load
    functionSourceFile: /src/gpac/src/compositor/svg_font.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_assert
    - gf_node_get_private
    - gf_sc_next_frame_state
    linkageType: ''
    returnType: void
    signature: void svg_font_on_load(GF_Node *handler, GF_DOM_Event *event, GF_Node
      *observer)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/compositor/svg_font.c:215,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_font.c:218,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_font.c:220,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_font.c:224,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_font.c:226,1
    - Dst: gf_font_manager_register_font
      Src: /src/gpac/src/compositor/svg_font.c:229,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_font.c:231,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_font.c:240,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_font.c:241,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/svg_font.c:242,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/svg_font.c:244,1
    - Dst: gf_ceil
      Src: /src/gpac/src/compositor/svg_font.c:244,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/svg_font.c:249,1
    - Dst: gf_ceil
      Src: /src/gpac/src/compositor/svg_font.c:249,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/svg_font.c:251,1
    - Dst: gf_ceil
      Src: /src/gpac/src/compositor/svg_font.c:251,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/svg_font.c:252,1
    - Dst: gf_ceil
      Src: /src/gpac/src/compositor/svg_font.c:252,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_font.c:312,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/svg_font.c:313,1
    - Dst: gf_ceil
      Src: /src/gpac/src/compositor/svg_font.c:313,1
    - Dst: gf_dom_listener_build
      Src: /src/gpac/src/compositor/svg_font.c:318,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 94
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 209
    functionDepth: 2
    functionLinenumber: 209
    functionLinenumberEnd: 320
    functionName: compositor_init_svg_font
    functionSourceFile: /src/gpac/src/compositor/svg_font.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_font_manager_register_font
    - gf_free
    - gf_strdup
    - gf_dom_listener_build
    - gf_svg_flatten_attributes
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_ceil
    - FIX2INT
    - gf_node_set_callback_function
    - gf_node_get_parent
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_font(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_font.c:328,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_font.c:329,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_font.c:344,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 323
    functionDepth: 2
    functionLinenumber: 323
    functionLinenumberEnd: 346
    functionName: svg_traverse_glyph
    functionSourceFile: /src/gpac/src/compositor/svg_font.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void svg_traverse_glyph(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/compositor/svg_font.c:358,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/compositor/svg_font.c:361,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_font.c:362,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_font.c:363,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_font.c:366,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_font.c:368,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_font.c:369,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_font.c:376,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/compositor/svg_font.c:379,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/svg_font.c:387,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_font.c:389,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/svg_font.c:396,1
    - Dst: gf_ceil
      Src: /src/gpac/src/compositor/svg_font.c:396,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/svg_font.c:399,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/svg_font.c:400,1
    - Dst: gf_ceil
      Src: /src/gpac/src/compositor/svg_font.c:400,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/svg_font.c:401,1
    - Dst: gf_ceil
      Src: /src/gpac/src/compositor/svg_font.c:401,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_font.c:416,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_font.c:417,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 60
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 348
    functionDepth: 2
    functionLinenumber: 348
    functionLinenumberEnd: 418
    functionName: compositor_init_svg_glyph
    functionSourceFile: /src/gpac/src/compositor/svg_font.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_svg_flatten_attributes
    - GF_SAFEALLOC
    - memcpy
    - gf_node_set_private
    - gf_utf8_mbstowcs
    - gf_ceil
    - FIX2INT
    - gf_node_set_callback_function
    - gf_node_get_parent
    - gf_node_get_private
    - gf_malloc
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_glyph(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_font.c:434,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/svg_font.c:438,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/svg_font.c:438,1
    - Dst: strchr
      Src: /src/gpac/src/compositor/svg_font.c:441,1
    - Dst: gf_mo_load_xlink_resource
      Src: /src/gpac/src/compositor/svg_font.c:444,1
    - Dst: gf_mo_get_scenegraph
      Src: /src/gpac/src/compositor/svg_font.c:450,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/svg_font.c:455,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_font.c:462,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_font.c:466,1
    - Dst: gf_mo_is_done
      Src: /src/gpac/src/compositor/svg_font.c:474,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 2
    argNames:
    - node
    - st
    argTypes:
    - GF_Node*
    - FontURIStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 429
    functionDepth: 4
    functionLinenumber: 429
    functionLinenumberEnd: 477
    functionName: svg_font_uri_check
    functionSourceFile: /src/gpac/src/compositor/svg_font.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_svg_flatten_attributes
    - gf_sg_find_node_by_name
    - gf_mo_is_done
    - gf_mo_get_scenegraph
    - gf_mo_load_xlink_resource
    - gf_node_get_graph
    - strchr
    - gf_node_get_private
    linkageType: ''
    returnType: Bool
    signature: Bool svg_font_uri_check(GF_Node *node, FontURIStack *st)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_font.c:482,1
    - Dst: svg_font_uri_check
      Src: /src/gpac/src/compositor/svg_font.c:483,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - udta
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 479
    functionDepth: 5
    functionLinenumber: 479
    functionLinenumberEnd: 487
    functionName: svg_font_uri_get_alias
    functionSourceFile: /src/gpac/src/compositor/svg_font.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    - svg_font_uri_check
    linkageType: ''
    returnType: GF_Font
    signature: GF_Font *svg_font_uri_get_alias(void *udta)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_font.c:492,1
    - Dst: gf_font_manager_unregister_font
      Src: /src/gpac/src/compositor/svg_font.c:494,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_font.c:495,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_font.c:496,1
    - Dst: gf_mo_unload_xlink_resource
      Src: /src/gpac/src/compositor/svg_font.c:497,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_font.c:498,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 501
      start: 489
    functionDepth: 3
    functionLinenumber: 489
    functionLinenumberEnd: 501
    functionName: svg_traverse_font_face_uri
    functionSourceFile: /src/gpac/src/compositor/svg_font.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_font_manager_unregister_font
    - gf_mo_unload_xlink_resource
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void svg_traverse_font_face_uri(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/compositor/svg_font.c:512,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_font.c:513,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/compositor/svg_font.c:515,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_font.c:516,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_font.c:519,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_font.c:523,1
    - Dst: gf_compositor_svg_set_font
      Src: /src/gpac/src/compositor/svg_font.c:527,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_font.c:531,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_font.c:533,1
    - Dst: gf_font_manager_register_font
      Src: /src/gpac/src/compositor/svg_font.c:537,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_font.c:539,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_font.c:542,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_font.c:544,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_font.c:545,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/svg_font.c:555,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_font.c:556,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_font.c:557,1
    - Dst: svg_font_uri_check
      Src: /src/gpac/src/compositor/svg_font.c:561,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 562
      start: 503
    functionDepth: 5
    functionLinenumber: 503
    functionLinenumberEnd: 562
    functionName: compositor_init_svg_font_face_uri
    functionSourceFile: /src/gpac/src/compositor/svg_font.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_font_manager_register_font
    - gf_free
    - gf_strdup
    - gf_svg_flatten_attributes
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_compositor_svg_set_font
    - svg_font_uri_check
    - gf_node_set_callback_function
    - gf_node_get_parent
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_font_face_uri(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_base.c:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - children
    - tr_state
    argTypes:
    - GF_ChildNodeItem*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 37
    functionDepth: 6
    functionLinenumber: 37
    functionLinenumberEnd: 43
    functionName: compositor_svg_traverse_children
    functionSourceFile: /src/gpac/src/compositor/svg_base.c
    functionUses: 2
    functionsReached:
    - gf_node_traverse
    linkageType: ''
    returnType: void
    signature: void compositor_svg_traverse_children(GF_ChildNodeItem *children, GF_TraverseState
      *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - props
    argTypes:
    - SVGPropertiesPointers*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: compositor_svg_is_display_off
    functionSourceFile: /src/gpac/src/compositor/svg_base.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool compositor_svg_is_display_off(SVGPropertiesPointers *props)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/svg_base.c:56,1
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/compositor/svg_base.c:59,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/svg_base.c:61,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/svg_base.c:62,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/svg_base.c:63,1
    - Dst: gf_mx_add_matrix_2d
      Src: /src/gpac/src/compositor/svg_base.c:64,1
    - Dst: gf_mx_add_matrix_2d
      Src: /src/gpac/src/compositor/svg_base.c:69,1
    - Dst: gf_mx_add_matrix_2d
      Src: /src/gpac/src/compositor/svg_base.c:73,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_base.c:78,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_base.c:81,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/compositor/svg_base.c:84,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/compositor/svg_base.c:87,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 27
    argCount: 4
    argNames:
    - tr_state
    - atts
    - backup_matrix_2d
    - backup_matrix
    argTypes:
    - GF_TraverseState*
    - SVGAllAttributes*
    - GF_Matrix2D*
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 89
    functionName: compositor_svg_apply_local_transformation
    functionSourceFile: /src/gpac/src/compositor/svg_base.c
    functionUses: 1
    functionsReached:
    - gf_mx_add_matrix_2d
    - gf_mx_from_mx2d
    - gf_mx_add_translation
    - gf_mx_init
    - gf_mx_copy
    - gf_mx2d_pre_multiply
    - gf_mx_add_scale
    - gf_mx2d_copy
    linkageType: ''
    returnType: void
    signature: void compositor_svg_apply_local_transformation(GF_TraverseState *tr_state,
      SVGAllAttributes *atts, GF_Matrix2D *backup_matrix_2d, GF_Matrix *backup_matrix)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/svg_base.c:95,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_base.c:99,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - tr_state
    - backup_matrix_2d
    - backup_matrix
    argTypes:
    - GF_TraverseState*
    - GF_Matrix2D*
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 100
    functionName: compositor_svg_restore_parent_transformation
    functionSourceFile: /src/gpac/src/compositor/svg_base.c
    functionUses: 1
    functionsReached:
    - gf_mx2d_copy
    - gf_mx_copy
    linkageType: ''
    returnType: void
    signature: void compositor_svg_restore_parent_transformation(GF_TraverseState
      *tr_state, GF_Matrix2D *backup_matrix_2d, GF_Matrix *backup_matrix)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_PROP
      Src: /src/gpac/src/compositor/svg_base.c:108,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/compositor/svg_base.c:109,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/compositor/svg_base.c:110,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/compositor/svg_base.c:111,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/compositor/svg_base.c:112,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/compositor/svg_base.c:113,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/compositor/svg_base.c:114,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/compositor/svg_base.c:115,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/compositor/svg_base.c:116,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/compositor/svg_base.c:117,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/compositor/svg_base.c:118,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/compositor/svg_base.c:119,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/compositor/svg_base.c:120,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/compositor/svg_base.c:121,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/compositor/svg_base.c:122,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/compositor/svg_base.c:123,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/compositor/svg_base.c:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 2
    argNames:
    - all_atts
    - render_svg_props
    argTypes:
    - SVGAllAttributes*
    - SVGPropertiesPointers*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 125
    functionName: gf_svg_apply_inheritance_no_inheritance
    functionSourceFile: /src/gpac/src/compositor/svg_base.c
    functionUses: 0
    functionsReached:
    - CHECK_PROP
    linkageType: ''
    returnType: void
    signature: void gf_svg_apply_inheritance_no_inheritance(SVGAllAttributes *all_atts,
      SVGPropertiesPointers *render_svg_props)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 106
    functionName: CHECK_PROP
    functionSourceFile: /src/gpac/src/compositor/svg_base.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_PROP(a, b)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_base.c:237,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_base.c:240,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/svg_base.c:243,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/svg_base.c:246,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/svg_base.c:247,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/svg_base.c:252,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/svg_base.c:259,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/svg_base.c:268,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/svg_base.c:275,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_base.c:291,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_base.c:295,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/svg_base.c:298,1
    - Dst: gf_lang_find
      Src: /src/gpac/src/compositor/svg_base.c:299,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_base.c:306,1
    - Dst: gf_lang_find
      Src: /src/gpac/src/compositor/svg_base.c:307,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_base.c:316,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_base.c:320,1
    - Dst: strchr
      Src: /src/gpac/src/compositor/svg_base.c:321,1
    - Dst: gf_filter_is_supported_mime
      Src: /src/gpac/src/compositor/svg_base.c:323,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_base.c:330,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_base.c:333,1
    - Dst: gf_font_manager_set_font_ex
      Src: /src/gpac/src/compositor/svg_base.c:334,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 91
    argCount: 2
    argNames:
    - compositor
    - atts
    argTypes:
    - GF_Compositor*
    - SVGAllAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 230
    functionDepth: 2
    functionLinenumber: 230
    functionLinenumberEnd: 341
    functionName: compositor_svg_evaluate_conditional
    functionSourceFile: /src/gpac/src/compositor/svg_base.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_lang_find
    - gf_list_count
    - gf_filter_is_supported_mime
    - strnicmp
    - strcmp
    - gf_opts_get_key
    - stricmp
    - strchr
    - gf_font_manager_set_font_ex
    linkageType: ''
    returnType: Bool
    signature: Bool compositor_svg_evaluate_conditional(GF_Compositor *compositor,
      SVGAllAttributes *atts)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: compositor_svg_evaluate_conditional
      Src: /src/gpac/src/compositor/svg_base.c:350,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_base.c:354,1
    - Dst: gf_svg_apply_inheritance
      Src: /src/gpac/src/compositor/svg_base.c:359,1
    - Dst: gf_svg_apply_animations
      Src: /src/gpac/src/compositor/svg_base.c:360,1
    - Dst: gf_svg_apply_animations
      Src: /src/gpac/src/compositor/svg_base.c:363,1
    - Dst: gf_svg_apply_inheritance
      Src: /src/gpac/src/compositor/svg_base.c:364,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_base.c:369,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 5
    argNames:
    - node
    - atts
    - tr_state
    - backup_props
    - backup_flags
    argTypes:
    - GF_Node*
    - SVGAllAttributes*
    - GF_TraverseState*
    - SVGPropertiesPointers*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 343
    functionDepth: 4
    functionLinenumber: 343
    functionLinenumberEnd: 373
    functionName: compositor_svg_traverse_base
    functionSourceFile: /src/gpac/src/compositor/svg_base.c
    functionUses: 5
    functionsReached:
    - gf_svg_apply_inheritance
    - memcpy
    - gf_node_dirty_get
    - compositor_svg_evaluate_conditional
    - gf_svg_apply_animations
    linkageType: ''
    returnType: Bool
    signature: "Bool compositor_svg_traverse_base(GF_Node *node, SVGAllAttributes
      *atts, GF_TraverseState *tr_state,\n                                  SVGPropertiesPointers
      *backup_props, u32 *backup_flags)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_text.c:45,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_text.c:46,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/svg_text.c:47,1
    - Dst: gf_font_manager_delete_span
      Src: /src/gpac/src/compositor/svg_text.c:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - st
    argTypes:
    - SVG_TextStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 50
    functionName: svg_reset_text_stack
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_font_manager_delete_span
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void svg_reset_text_stack(SVG_TextStack *st)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/svg_text.c:59,1
    - Dst: gf_font_manager_refresh_span_bounds
      Src: /src/gpac/src/compositor/svg_text.c:60,1
    - Dst: gf_rect_union
      Src: /src/gpac/src/compositor/svg_text.c:61,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - st
    argTypes:
    - SVG_TextStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 63
    functionName: svg_update_bounds
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 0
    functionsReached:
    - gf_font_manager_refresh_span_bounds
    - gf_list_enum
    - gf_rect_union
    linkageType: ''
    returnType: void
    signature: void svg_update_bounds(SVG_TextStack *st)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_font_spans_draw_3d
      Src: /src/gpac/src/compositor/svg_text.c:69,1
    - Dst: drawable_check_focus_highlight
      Src: /src/gpac/src/compositor/svg_text.c:71,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/svg_text.c:87,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/svg_text.c:94,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 3
    argNames:
    - ctx
    - st
    - tr_state
    argTypes:
    - DrawableContext*
    - SVG_TextStack*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 65
    functionDepth: 10
    functionLinenumber: 65
    functionLinenumberEnd: 95
    functionName: svg_finalize_sort
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 0
    functionsReached:
    - drawable_check_focus_highlight
    - gf_list_enum
    - gf_font_spans_draw_3d
    - drawable_finalize_sort
    linkageType: ''
    returnType: void
    signature: void svg_finalize_sort(DrawableContext *ctx, SVG_TextStack *st, GF_TraverseState
      * tr_state)
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 53
    argCount: 1
    argNames:
    - tr_state
    argTypes:
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 155
    functionName: svg_get_font_styles
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 svg_get_font_styles(GF_TraverseState * tr_state)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/compositor/svg_text.c:166,1
    - Dst: strchr
      Src: /src/gpac/src/compositor/svg_text.c:168,1
    - Dst: strchr
      Src: /src/gpac/src/compositor/svg_text.c:172,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/svg_text.c:175,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/svg_text.c:180,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/svg_text.c:184,1
    - Dst: gf_font_manager_set_font_ex
      Src: /src/gpac/src/compositor/svg_text.c:197,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_text.c:199,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 40
    argCount: 4
    argNames:
    - fm
    - a_font
    - styles
    - check_only
    argTypes:
    - GF_FontManager*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 158
    functionDepth: 2
    functionLinenumber: 158
    functionLinenumberEnd: 203
    functionName: gf_compositor_svg_set_font
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_strdup
    - strchr
    - gf_font_manager_set_font_ex
    - strlen
    linkageType: ''
    returnType: GF_Font
    signature: GF_Font *gf_compositor_svg_set_font(GF_FontManager *fm, char *a_font,
      u32 styles, Bool check_only)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_compositor_svg_set_font
      Src: /src/gpac/src/compositor/svg_text.c:207,1
    - Dst: svg_get_font_styles
      Src: /src/gpac/src/compositor/svg_text.c:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - tr_state
    - fm
    argTypes:
    - GF_TraverseState*
    - GF_FontManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 205
    functionDepth: 3
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionName: svg_set_font
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 2
    functionsReached:
    - gf_compositor_svg_set_font
    - svg_get_font_styles
    linkageType: ''
    returnType: GF_Font
    signature: GF_Font *svg_set_font(GF_TraverseState * tr_state, GF_FontManager *fm)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - tr_state
    - width
    argTypes:
    - GF_TraverseState*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 235
    functionName: svg_apply_text_anchor
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void svg_apply_text_anchor(GF_TraverseState * tr_state, Fixed *width)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/compositor/svg_text.c:246,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/svg_text.c:247,1
    - Dst: gf_font_manager_create_span
      Src: /src/gpac/src/compositor/svg_text.c:308,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_text.c:309,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 64
    argCount: 10
    argNames:
    - fm
    - font
    - font_size
    - x_offsets
    - y_offsets
    - rotate
    - atts
    - textContent
    - lang
    - tr_state
    argTypes:
    - GF_FontManager*
    - GF_Font*
    - Fixed
    - Bool
    - Bool
    - Bool
    - SVGAllAttributes*
    - char*
    - char*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 237
    functionDepth: 1
    functionLinenumber: 237
    functionLinenumberEnd: 312
    functionName: svg_get_text_span
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_font_manager_create_span
    - strlen
    - gf_free
    linkageType: ''
    returnType: GF_TextSpan
    signature: GF_TextSpan *svg_get_text_span(GF_FontManager *fm, GF_Font *font, Fixed
      font_size, Bool x_offsets, Bool y_offsets, Bool rotate, SVGAllAttributes *atts,
      char *textContent, const char *lang, GF_TraverseState *tr_state)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_text.c:326,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_text.c:344,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_text.c:352,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/svg_text.c:354,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 1
    argNames:
    - tr_state
    argTypes:
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 322
    functionDepth: 1
    functionLinenumber: 322
    functionLinenumberEnd: 355
    functionName: svg_text_area_reset_state
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_list_reset
    linkageType: ''
    returnType: void
    signature: void svg_text_area_reset_state(GF_TraverseState *tr_state)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_text.c:361,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_text.c:363,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/svg_text.c:369,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/svg_text.c:373,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - tr_state
    - span
    - first_glyph
    - last_glyph
    argTypes:
    - GF_TraverseState*
    - GF_TextSpan*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 357
    functionDepth: 1
    functionLinenumber: 357
    functionLinenumberEnd: 375
    functionName: svg_text_area_queue_state
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void svg_text_area_queue_state(GF_TraverseState *tr_state, GF_TextSpan
      *span, u32 first_glyph, u32 last_glyph)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_text.c:380,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_text.c:384,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - tr_state
    - diff
    argTypes:
    - GF_TraverseState*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 377
    functionDepth: 1
    functionLinenumber: 377
    functionLinenumberEnd: 390
    functionName: svg_text_area_apply_diff_baselines
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void svg_text_area_apply_diff_baselines(GF_TraverseState *tr_state,
      Fixed diff)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: svg_set_font
      Src: /src/gpac/src/compositor/svg_text.c:409,1
    - Dst: svg_get_text_span
      Src: /src/gpac/src/compositor/svg_text.c:412,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_text.c:420,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/svg_text.c:420,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_text.c:425,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/svg_text.c:425,1
    - Dst: svg_text_area_reset_state
      Src: /src/gpac/src/compositor/svg_text.c:468,1
    - Dst: svg_text_area_apply_diff_baselines
      Src: /src/gpac/src/compositor/svg_text.c:482,1
    - Dst: svg_text_area_queue_state
      Src: /src/gpac/src/compositor/svg_text.c:501,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/svg_text.c:506,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 83
    argCount: 4
    argNames:
    - node
    - atts
    - tr_state
    - spans
    argTypes:
    - GF_Node*
    - SVGAllAttributes*
    - GF_TraverseState*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 393
    functionDepth: 4
    functionLinenumber: 393
    functionLinenumberEnd: 507
    functionName: svg_traverse_dom_text_area
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - svg_text_area_apply_diff_baselines
    - svg_text_area_queue_state
    - svg_set_font
    - svg_text_area_reset_state
    - gf_list_add
    - svg_get_text_span
    - gf_mulfix
    linkageType: ''
    returnType: void
    signature: void svg_traverse_dom_text_area(GF_Node *node, SVGAllAttributes *atts,
      GF_TraverseState *tr_state, GF_List *spans)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: svg_set_font
      Src: /src/gpac/src/compositor/svg_text.c:523,1
    - Dst: svg_get_text_span
      Src: /src/gpac/src/compositor/svg_text.c:526,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/svg_text.c:537,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/svg_text.c:541,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_text.c:557,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/svg_text.c:558,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/svg_text.c:563,1
    - Dst: gf_list_last
      Src: /src/gpac/src/compositor/svg_text.c:565,1
    - Dst: gf_font_manager_delete_span
      Src: /src/gpac/src/compositor/svg_text.c:572,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 47
    argCount: 3
    argNames:
    - node
    - atts
    - tr_state
    argTypes:
    - GF_Node*
    - SVGAllAttributes*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 509
    functionDepth: 4
    functionLinenumber: 509
    functionLinenumberEnd: 573
    functionName: get_domtext_width
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 0
    functionsReached:
    - svg_set_font
    - gf_list_count
    - gf_list_add
    - svg_get_text_span
    - gf_font_manager_delete_span
    - gf_list_last
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void get_domtext_width(GF_Node *node, SVGAllAttributes *atts, GF_TraverseState
      *tr_state)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_text.c:584,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_text.c:585,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_text.c:590,1
    - Dst: get_domtext_width
      Src: /src/gpac/src/compositor/svg_text.c:592,1
    - Dst: get_tspan_width
      Src: /src/gpac/src/compositor/svg_text.c:595,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_text.c:603,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - node
    - rs
    argTypes:
    - GF_Node*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 575
    functionDepth: 5
    functionLinenumber: 575
    functionLinenumberEnd: 605
    functionName: get_tspan_width
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - get_domtext_width
    - gf_svg_flatten_attributes
    - compositor_svg_traverse_base
    - memcpy
    - get_tspan_width
    linkageType: ''
    returnType: void
    signature: void get_tspan_width(GF_Node *node, void *rs)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: svg_traverse_dom_text_area
      Src: /src/gpac/src/compositor/svg_text.c:621,1
    - Dst: svg_set_font
      Src: /src/gpac/src/compositor/svg_text.c:628,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/svg_text.c:633,1
    - Dst: svg_get_text_span
      Src: /src/gpac/src/compositor/svg_text.c:638,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_text.c:653,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_text.c:660,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_text.c:667,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_text.c:675,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_text.c:676,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_text.c:692,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_text.c:697,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_text.c:706,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_text.c:718,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_text.c:719,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/svg_text.c:732,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 92
    argCount: 5
    argNames:
    - node
    - atts
    - tr_state
    - spans
    - anchor_node
    argTypes:
    - GF_Node*
    - SVGAllAttributes*
    - GF_TraverseState*
    - GF_List*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 734
      start: 607
    functionDepth: 5
    functionLinenumber: 607
    functionLinenumberEnd: 734
    functionName: svg_traverse_domtext
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - svg_set_font
    - gf_sc_next_frame_state
    - svg_traverse_dom_text_area
    - gf_list_add
    - svg_get_text_span
    - gf_mulfix
    linkageType: ''
    returnType: void
    signature: void svg_traverse_domtext(GF_Node *node, SVGAllAttributes *atts, GF_TraverseState
      *tr_state, GF_List *spans, GF_Node *anchor_node)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_text.c:742,1
    - Dst: get_domtext_width
      Src: /src/gpac/src/compositor/svg_text.c:744,1
    - Dst: get_tspan_width
      Src: /src/gpac/src/compositor/svg_text.c:747,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_text.c:756,1
    - Dst: compositor_svg_evaluate_conditional
      Src: /src/gpac/src/compositor/svg_text.c:757,1
    - Dst: svg_compute_text_width
      Src: /src/gpac/src/compositor/svg_text.c:758,1
    - Dst: svg_compute_text_width
      Src: /src/gpac/src/compositor/svg_text.c:762,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 3
    argNames:
    - node
    - atts
    - tr_state
    argTypes:
    - GF_Node*
    - SVGAllAttributes*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 770
      start: 737
    functionDepth: 6
    functionLinenumber: 737
    functionLinenumberEnd: 770
    functionName: svg_compute_text_width
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - get_domtext_width
    - gf_svg_flatten_attributes
    - compositor_svg_evaluate_conditional
    - svg_compute_text_width
    - get_tspan_width
    linkageType: ''
    returnType: void
    signature: void svg_compute_text_width(GF_Node *node, SVGAllAttributes *atts,
      GF_TraverseState *tr_state )
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_text.c:776,1
    - Dst: svg_traverse_domtext
      Src: /src/gpac/src/compositor/svg_text.c:778,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/svg_text.c:782,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_text.c:783,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_text.c:792,1
    - Dst: compositor_svg_evaluate_conditional
      Src: /src/gpac/src/compositor/svg_text.c:793,1
    - Dst: svg_traverse_text_block
      Src: /src/gpac/src/compositor/svg_text.c:794,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_text.c:797,1
    - Dst: svg_traverse_domtext
      Src: /src/gpac/src/compositor/svg_text.c:798,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 4
    argNames:
    - node
    - atts
    - tr_state
    - spans
    argTypes:
    - GF_Node*
    - SVGAllAttributes*
    - GF_TraverseState*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 806
      start: 772
    functionDepth: 6
    functionLinenumber: 772
    functionLinenumberEnd: 806
    functionName: svg_traverse_text_block
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_node_traverse
    - gf_svg_flatten_attributes
    - gf_node_dirty_set
    - svg_traverse_domtext
    - svg_traverse_text_block
    - compositor_svg_evaluate_conditional
    linkageType: ''
    returnType: void
    signature: void svg_traverse_text_block(GF_Node *node, SVGAllAttributes *atts,
      GF_TraverseState *tr_state, GF_List *spans)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_font_spans_draw_2d
      Src: /src/gpac/src/compositor/svg_text.c:810,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - st
    - tr_state
    argTypes:
    - SVG_TextStack*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 811
      start: 808
    functionDepth: 10
    functionLinenumber: 808
    functionLinenumberEnd: 811
    functionName: svg_text_draw_2d
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 0
    functionsReached:
    - gf_font_spans_draw_2d
    linkageType: ''
    returnType: void
    signature: void svg_text_draw_2d(SVG_TextStack *st, GF_TraverseState *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/svg_text.c:821,1
    - Dst: gf_font_manager_refresh_span_bounds
      Src: /src/gpac/src/compositor/svg_text.c:826,1
    - Dst: gf_rect_union
      Src: /src/gpac/src/compositor/svg_text.c:827,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - st
    - tr_state
    argTypes:
    - SVG_TextStack*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 829
      start: 814
    functionDepth: 2
    functionLinenumber: 814
    functionLinenumberEnd: 829
    functionName: svg_text_area_shift_bounds
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 0
    functionsReached:
    - gf_font_manager_refresh_span_bounds
    - gf_list_enum
    - gf_rect_union
    linkageType: ''
    returnType: void
    signature: void svg_text_area_shift_bounds(SVG_TextStack *st, GF_TraverseState
      *tr_state)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_text.c:840,1
    - Dst: drawable_del
      Src: /src/gpac/src/compositor/svg_text.c:847,1
    - Dst: svg_reset_text_stack
      Src: /src/gpac/src/compositor/svg_text.c:848,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/svg_text.c:849,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_text.c:850,1
    - Dst: svg_text_draw_2d
      Src: /src/gpac/src/compositor/svg_text.c:855,1
    - Dst: gf_font_spans_get_selection
      Src: /src/gpac/src/compositor/svg_text.c:860,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_text.c:864,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_text.c:866,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_text.c:875,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_text.c:876,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_text.c:883,1
    - Dst: gf_font_spans_pick
      Src: /src/gpac/src/compositor/svg_text.c:885,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_text.c:890,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_text.c:892,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_text.c:897,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_text.c:898,1
    - Dst: gf_font_spans_get_selection
      Src: /src/gpac/src/compositor/svg_text.c:905,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_text.c:906,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_text.c:913,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_text.c:918,1
    - Dst: svg_reset_text_stack
      Src: /src/gpac/src/compositor/svg_text.c:924,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_text.c:931,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_text.c:933,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_text.c:935,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/svg_text.c:939,1
    - Dst: svg_compute_text_width
      Src: /src/gpac/src/compositor/svg_text.c:943,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_text.c:948,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_text.c:950,1
    - Dst: svg_apply_text_anchor
      Src: /src/gpac/src/compositor/svg_text.c:951,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_text.c:955,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_text.c:957,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_text.c:959,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_text.c:966,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_text.c:970,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/svg_text.c:979,1
    - Dst: svg_traverse_text_block
      Src: /src/gpac/src/compositor/svg_text.c:988,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_text.c:992,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/svg_text.c:993,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_text.c:998,1
    - Dst: gf_list_last
      Src: /src/gpac/src/compositor/svg_text.c:999,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/svg_text.c:1000,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_text.c:1001,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/svg_text.c:1003,1
    - Dst: svg_update_bounds
      Src: /src/gpac/src/compositor/svg_text.c:1006,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_text.c:1010,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_text.c:1014,1
    - Dst: drawable_init_context_svg
      Src: /src/gpac/src/compositor/svg_text.c:1017,1
    - Dst: svg_finalize_sort
      Src: /src/gpac/src/compositor/svg_text.c:1019,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_text.c:1024,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_text.c:1026,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_text.c:1029,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_text.c:1038,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_text.c:1039,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 154
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1041
      start: 832
    functionDepth: 11
    functionLinenumber: 832
    functionLinenumberEnd: 1041
    functionName: svg_traverse_text
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_tag
    - drawable_mark_modified
    - gf_node_dirty_get
    - compositor_svg_is_display_off
    - svg_text_draw_2d
    - gf_node_dirty_clear
    - gf_list_count
    - svg_update_bounds
    - gf_font_spans_get_selection
    - svg_apply_text_anchor
    - compositor_svg_restore_parent_transformation
    - svg_compute_text_width
    - gf_list_new
    - gf_list_get
    - drawable_del
    - compositor_svg_traverse_base
    - memcpy
    - gf_node_get_private
    - gf_list_rem_last
    - gf_node_traverse
    - gf_svg_flatten_attributes
    - drawable_reset_path
    - gf_font_spans_pick
    - gf_list_last
    - gf_list_del
    - svg_reset_text_stack
    - svg_finalize_sort
    - svg_traverse_text_block
    - compositor_svg_apply_local_transformation
    - drawable_init_context_svg
    linkageType: ''
    returnType: void
    signature: void svg_traverse_text(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_text.c:1047,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_text.c:1049,1
    - Dst: drawable_new
      Src: /src/gpac/src/compositor/svg_text.c:1052,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/svg_text.c:1055,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_text.c:1056,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_text.c:1057,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1058
      start: 1044
    functionDepth: 2
    functionLinenumber: 1044
    functionLinenumberEnd: 1058
    functionName: compositor_init_svg_text
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - drawable_new
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_text(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_text.c:1068,1
    - Dst: drawable_del
      Src: /src/gpac/src/compositor/svg_text.c:1075,1
    - Dst: svg_reset_text_stack
      Src: /src/gpac/src/compositor/svg_text.c:1076,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/svg_text.c:1077,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_text.c:1078,1
    - Dst: svg_text_draw_2d
      Src: /src/gpac/src/compositor/svg_text.c:1082,1
    - Dst: gf_font_spans_get_selection
      Src: /src/gpac/src/compositor/svg_text.c:1086,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_text.c:1090,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_text.c:1092,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_text.c:1102,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_text.c:1103,1
    - Dst: gf_font_spans_pick
      Src: /src/gpac/src/compositor/svg_text.c:1108,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_text.c:1113,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_text.c:1115,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_text.c:1120,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_text.c:1125,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_text.c:1130,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/svg_text.c:1138,1
    - Dst: svg_reset_text_stack
      Src: /src/gpac/src/compositor/svg_text.c:1146,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_text.c:1150,1
    - Dst: svg_traverse_domtext
      Src: /src/gpac/src/compositor/svg_text.c:1152,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/svg_text.c:1155,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_text.c:1156,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_text.c:1161,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_text.c:1169,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/svg_text.c:1170,1
    - Dst: svg_update_bounds
      Src: /src/gpac/src/compositor/svg_text.c:1175,1
    - Dst: svg_text_area_shift_bounds
      Src: /src/gpac/src/compositor/svg_text.c:1182,1
    - Dst: svg_update_bounds
      Src: /src/gpac/src/compositor/svg_text.c:1184,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_text.c:1187,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_text.c:1191,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_text.c:1199,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_text.c:1205,1
    - Dst: drawable_init_context_svg
      Src: /src/gpac/src/compositor/svg_text.c:1210,1
    - Dst: svg_finalize_sort
      Src: /src/gpac/src/compositor/svg_text.c:1212,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_text.c:1215,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_text.c:1219,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_text.c:1228,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_text.c:1229,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 129
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1231
      start: 1061
    functionDepth: 11
    functionLinenumber: 1061
    functionLinenumberEnd: 1231
    functionName: svg_traverse_tspan
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_tag
    - drawable_mark_modified
    - gf_node_dirty_get
    - compositor_svg_is_display_off
    - svg_text_draw_2d
    - gf_node_dirty_clear
    - svg_update_bounds
    - gf_font_spans_get_selection
    - compositor_svg_restore_parent_transformation
    - drawable_del
    - svg_text_area_shift_bounds
    - compositor_svg_traverse_base
    - memcpy
    - gf_node_get_private
    - gf_node_traverse
    - gf_svg_flatten_attributes
    - svg_traverse_domtext
    - gf_font_spans_pick
    - gf_list_del
    - gf_node_dirty_set
    - svg_reset_text_stack
    - svg_finalize_sort
    - compositor_svg_apply_local_transformation
    - drawable_init_context_svg
    linkageType: ''
    returnType: void
    signature: void svg_traverse_tspan(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_text.c:1236,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_text.c:1238,1
    - Dst: drawable_new
      Src: /src/gpac/src/compositor/svg_text.c:1241,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/svg_text.c:1244,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_text.c:1245,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_text.c:1246,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1247
      start: 1233
    functionDepth: 2
    functionLinenumber: 1233
    functionLinenumberEnd: 1247
    functionName: compositor_init_svg_tspan
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - drawable_new
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_tspan(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_text.c:1258,1
    - Dst: drawable_del
      Src: /src/gpac/src/compositor/svg_text.c:1264,1
    - Dst: svg_reset_text_stack
      Src: /src/gpac/src/compositor/svg_text.c:1265,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/svg_text.c:1266,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_text.c:1267,1
    - Dst: svg_text_draw_2d
      Src: /src/gpac/src/compositor/svg_text.c:1272,1
    - Dst: gf_font_spans_get_selection
      Src: /src/gpac/src/compositor/svg_text.c:1277,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_text.c:1281,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_text.c:1284,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_text.c:1294,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_text.c:1295,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_text.c:1303,1
    - Dst: gf_font_spans_pick
      Src: /src/gpac/src/compositor/svg_text.c:1304,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_text.c:1309,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_text.c:1312,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_text.c:1313,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_text.c:1321,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_text.c:1326,1
    - Dst: svg_reset_text_stack
      Src: /src/gpac/src/compositor/svg_text.c:1331,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_text.c:1332,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/svg_text.c:1333,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/svg_text.c:1334,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/svg_text.c:1350,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_text.c:1362,1
    - Dst: svg_traverse_dom_text_area
      Src: /src/gpac/src/compositor/svg_text.c:1364,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/svg_text.c:1368,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_text.c:1369,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_text.c:1374,1
    - Dst: svg_text_area_reset_state
      Src: /src/gpac/src/compositor/svg_text.c:1390,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/svg_text.c:1391,1
    - Dst: svg_text_area_shift_bounds
      Src: /src/gpac/src/compositor/svg_text.c:1414,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_text.c:1423,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_text.c:1429,1
    - Dst: svg_update_bounds
      Src: /src/gpac/src/compositor/svg_text.c:1443,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_text.c:1447,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_text.c:1450,1
    - Dst: drawable_init_context_svg
      Src: /src/gpac/src/compositor/svg_text.c:1454,1
    - Dst: svg_finalize_sort
      Src: /src/gpac/src/compositor/svg_text.c:1456,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_text.c:1460,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_text.c:1466,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_text.c:1478,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_text.c:1479,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 182
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1481
      start: 1250
    functionDepth: 11
    functionLinenumber: 1250
    functionLinenumberEnd: 1481
    functionName: svg_traverse_textArea
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_tag
    - drawable_mark_modified
    - gf_node_dirty_get
    - compositor_svg_is_display_off
    - svg_text_draw_2d
    - gf_node_dirty_clear
    - svg_update_bounds
    - gf_font_spans_get_selection
    - compositor_svg_restore_parent_transformation
    - gf_list_new
    - drawable_del
    - svg_text_area_shift_bounds
    - compositor_svg_traverse_base
    - memcpy
    - svg_traverse_dom_text_area
    - gf_node_get_private
    - gf_node_traverse
    - gf_svg_flatten_attributes
    - drawable_reset_path
    - svg_text_area_reset_state
    - gf_font_spans_pick
    - gf_list_del
    - gf_node_dirty_set
    - svg_reset_text_stack
    - svg_finalize_sort
    - compositor_svg_apply_local_transformation
    - drawable_init_context_svg
    linkageType: ''
    returnType: void
    signature: void svg_traverse_textArea(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_text.c:1486,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_text.c:1488,1
    - Dst: drawable_new
      Src: /src/gpac/src/compositor/svg_text.c:1491,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/svg_text.c:1494,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_text.c:1495,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_text.c:1496,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1497
      start: 1483
    functionDepth: 2
    functionLinenumber: 1483
    functionLinenumberEnd: 1497
    functionName: compositor_init_svg_textarea
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - drawable_new
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_textarea(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_text.c:1509,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_text.c:1510,1
    - Dst: svg_text_area_reset_state
      Src: /src/gpac/src/compositor/svg_text.c:1513,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_text.c:1526,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1528
      start: 1499
    functionDepth: 5
    functionLinenumber: 1499
    functionLinenumberEnd: 1528
    functionName: svg_traverse_tbreak
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 0
    functionsReached:
    - compositor_svg_traverse_base
    - svg_text_area_reset_state
    - memcpy
    - gf_svg_flatten_attributes
    linkageType: ''
    returnType: void
    signature: void svg_traverse_tbreak(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_text.c:1532,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1533
      start: 1530
    functionDepth: 2
    functionLinenumber: 1530
    functionLinenumberEnd: 1533
    functionName: compositor_init_svg_tbreak
    functionSourceFile: /src/gpac/src/compositor/svg_text.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_tbreak(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_layout.c:58,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layout.c:59,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/mpeg4_layout.c:60,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_layout.c:61,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - st
    argTypes:
    - LayoutStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 63
    functionName: layout_reset_lines
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layout.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void layout_reset_lines(LayoutStack *st)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_layout.c:68,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_layout.c:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - st
    argTypes:
    - LayoutStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 72
    functionName: new_line_info
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layout.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - GF_SAFEALLOC
    linkageType: ''
    returnType: LineInfo
    signature: LineInfo *new_line_info(LayoutStack *st)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_layout.c:87,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_layout.c:88,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_layout.c:89,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_layout.c:90,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_layout.c:91,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 2
    argNames:
    - l
    - i
    argTypes:
    - M_Layout*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 93
    functionName: get_justify
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layout.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: u32
    signature: u32 get_justify(M_Layout *l, u32 i)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: layout_reset_lines
      Src: /src/gpac/src/compositor/mpeg4_layout.c:104,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_layout.c:106,1
    - Dst: new_line_info
      Src: /src/gpac/src/compositor/mpeg4_layout.c:109,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layout.c:114,1
    - Dst: new_line_info
      Src: /src/gpac/src/compositor/mpeg4_layout.c:119,1
    - Dst: new_line_info
      Src: /src/gpac/src/compositor/mpeg4_layout.c:141,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 61
    argCount: 2
    argNames:
    - st
    - l
    argTypes:
    - LayoutStack*
    - M_Layout*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 165
    functionName: get_lines_info
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layout.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - layout_reset_lines
    - gf_list_get
    - new_line_info
    linkageType: ''
    returnType: void
    signature: void get_lines_info(LayoutStack *st, M_Layout *l)
  - BBCount: 53
    BranchProfiles: []
    Callsites:
    - Dst: get_lines_info
      Src: /src/gpac/src/compositor/mpeg4_layout.c:174,1
    - Dst: get_justify
      Src: /src/gpac/src/compositor/mpeg4_layout.c:175,1
    - Dst: get_justify
      Src: /src/gpac/src/compositor/mpeg4_layout.c:176,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_layout.c:179,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layout.c:182,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layout.c:192,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layout.c:199,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layout.c:215,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layout.c:232,1
    - Dst: MAX
      Src: /src/gpac/src/compositor/mpeg4_layout.c:234,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layout.c:258,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layout.c:260,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_layout.c:271,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_layout.c:273,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layout.c:285,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layout.c:296,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layout.c:302,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layout.c:326,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layout.c:343,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layout.c:345,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_layout.c:356,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layout.c:358,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_layout.c:359,1
    CyclomaticComplexity: 69
    EdgeCount: 69
    ICount: 183
    argCount: 2
    argNames:
    - st
    - l
    argTypes:
    - LayoutStack*
    - M_Layout*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 168
    functionDepth: 3
    functionLinenumber: 168
    functionLinenumberEnd: 367
    functionName: layout_justify
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layout.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - get_justify
    - gf_list_count
    - MAX
    - get_lines_info
    - gf_mulfix
    linkageType: ''
    returnType: void
    signature: void layout_justify(LayoutStack *st, M_Layout *l)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: get_justify
      Src: /src/gpac/src/compositor/mpeg4_layout.c:381,1
    - Dst: get_justify
      Src: /src/gpac/src/compositor/mpeg4_layout.c:433,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 91
    argCount: 2
    argNames:
    - st
    - l
    argTypes:
    - LayoutStack*
    - M_Layout*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 369
    functionDepth: 1
    functionLinenumber: 369
    functionLinenumberEnd: 462
    functionName: layout_setup_scroll_bounds
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layout.c
    functionUses: 0
    functionsReached:
    - get_justify
    linkageType: ''
    returnType: void
    signature: void layout_setup_scroll_bounds(LayoutStack *st, M_Layout *l)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: layout_setup_scroll_bounds
      Src: /src/gpac/src/compositor/mpeg4_layout.c:478,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_layout.c:482,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/mpeg4_layout.c:485,1
    - Dst: layout_setup_scroll_bounds
      Src: /src/gpac/src/compositor/mpeg4_layout.c:502,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_layout.c:504,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_layout.c:504,1
    - Dst: layout_setup_scroll_bounds
      Src: /src/gpac/src/compositor/mpeg4_layout.c:506,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_layout.c:527,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_layout.c:528,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_layout.c:547,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layout.c:549,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/mpeg4_layout.c:561,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_layout.c:586,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_layout.c:611,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 108
    argCount: 3
    argNames:
    - tr_state
    - st
    - l
    argTypes:
    - GF_TraverseState*
    - LayoutStack*
    - M_Layout*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 465
    functionDepth: 5
    functionLinenumber: 465
    functionLinenumberEnd: 612
    functionName: layout_scroll
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layout.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_list_get
    - INT2FIX
    - ABS
    - gf_divfix
    - layout_setup_scroll_bounds
    - gf_list_count
    - gf_sc_invalidate
    - gf_node_get_scene_time
    - gf_list_enum
    - gf_mulfix
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void layout_scroll(GF_TraverseState *tr_state, LayoutStack *st, M_Layout
      *l)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_layout.c:625,1
    - Dst: layout_reset_lines
      Src: /src/gpac/src/compositor/mpeg4_layout.c:629,1
    - Dst: parent_node_predestroy
      Src: /src/gpac/src/compositor/mpeg4_layout.c:630,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_layout.c:631,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_layout.c:632,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_layout.c:637,1
    - Dst: visual_get_size_info
      Src: /src/gpac/src/compositor/mpeg4_layout.c:642,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_layout.c:643,1
    - Dst: gf_rect_center
      Src: /src/gpac/src/compositor/mpeg4_layout.c:648,1
    - Dst: drawable_reset_group_highlight
      Src: /src/gpac/src/compositor/mpeg4_layout.c:652,1
    - Dst: gf_sc_pick_in_clipper
      Src: /src/gpac/src/compositor/mpeg4_layout.c:656,1
    - Dst: gf_bbox_from_rect
      Src: /src/gpac/src/compositor/mpeg4_layout.c:662,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_layout.c:668,1
    - Dst: compositor_2d_update_clipper
      Src: /src/gpac/src/compositor/mpeg4_layout.c:674,1
    - Dst: gf_rect_pixelize
      Src: /src/gpac/src/compositor/mpeg4_layout.c:676,1
    - Dst: gf_irect_intersect
      Src: /src/gpac/src/compositor/mpeg4_layout.c:677,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_layout.c:681,1
    - Dst: parent_node_reset
      Src: /src/gpac/src/compositor/mpeg4_layout.c:683,1
    - Dst: parent_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_layout.c:692,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_layout.c:700,1
    - Dst: layout_justify
      Src: /src/gpac/src/compositor/mpeg4_layout.c:706,1
    - Dst: layout_setup_scroll_bounds
      Src: /src/gpac/src/compositor/mpeg4_layout.c:710,1
    - Dst: gf_bbox_from_rect
      Src: /src/gpac/src/compositor/mpeg4_layout.c:723,1
    - Dst: layout_scroll
      Src: /src/gpac/src/compositor/mpeg4_layout.c:730,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_layout.c:733,1
    - Dst: parent_node_child_traverse
      Src: /src/gpac/src/compositor/mpeg4_layout.c:734,1
    - Dst: drawable_check_focus_highlight
      Src: /src/gpac/src/compositor/mpeg4_layout.c:741,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 92
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 746
      start: 615
    functionDepth: 10
    functionLinenumber: 615
    functionLinenumberEnd: 746
    functionName: TraverseLayout
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layout.c
    functionUses: 0
    functionsReached:
    - gf_free
    - layout_reset_lines
    - gf_node_dirty_get
    - gf_bbox_from_rect
    - parent_node_predestroy
    - gf_sc_pick_in_clipper
    - visual_get_size_info
    - layout_justify
    - layout_setup_scroll_bounds
    - compositor_2d_update_clipper
    - gf_node_get_private
    - gf_mulfix
    - GF_LOG
    - gf_rect_center
    - drawable_check_focus_highlight
    - gf_list_enum
    - parent_node_traverse
    - gf_list_del
    - drawable_reset_group_highlight
    - parent_node_reset
    - gf_rect_pixelize
    - layout_scroll
    - parent_node_child_traverse
    - gf_irect_intersect
    linkageType: ''
    returnType: void
    signature: void TraverseLayout(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_layout.c:754,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_layout.c:800,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 53
    argCount: 5
    argNames:
    - sh
    - is_over
    - is_cancel
    - ev
    - compositor
    argTypes:
    - GF_SensorHandler*
    - Bool
    - Bool
    - GF_Event*
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 802
      start: 748
    functionDepth: 5
    functionLinenumber: 748
    functionLinenumberEnd: 802
    functionName: OnLayout
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layout.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    - gf_sc_invalidate
    linkageType: ''
    returnType: Bool
    signature: Bool OnLayout(GF_SensorHandler *sh, Bool is_over, Bool is_cancel, GF_Event
      *ev, GF_Compositor *compositor)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 809
      start: 804
    functionDepth: 0
    functionLinenumber: 804
    functionLinenumberEnd: 809
    functionName: layout_is_enabled
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layout.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool layout_is_enabled(GF_Node *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_layout.c:814,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_layout.c:816,1
    - Dst: parent_node_setup
      Src: /src/gpac/src/compositor/mpeg4_layout.c:820,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_layout.c:821,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_layout.c:822,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_layout.c:823,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/mpeg4_layout.c:828,1
    - Dst: OnLayout
      Src: /src/gpac/src/compositor/mpeg4_layout.c:829,1
    - Dst: layout_is_enabled
      Src: /src/gpac/src/compositor/mpeg4_layout.c:830,1
    - Dst: compositor_mpeg4_layout_get_sensor_handler
      Src: /src/gpac/src/compositor/mpeg4_layout.c:831,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 835
      start: 811
    functionDepth: 6
    functionLinenumber: 811
    functionLinenumberEnd: 835
    functionName: compositor_init_layout
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layout.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - OnLayout
    - parent_node_setup
    - layout_is_enabled
    - gf_node_set_callback_function
    - compositor_mpeg4_layout_get_sensor_handler
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: void
    signature: void compositor_init_layout(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_layout.c:839,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/mpeg4_layout.c:848,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_layout.c:849,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 850
      start: 837
    functionDepth: 5
    functionLinenumber: 837
    functionLinenumberEnd: 850
    functionName: compositor_layout_modified
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layout.c
    functionUses: 1
    functionsReached:
    - gf_node_dirty_set
    - gf_node_get_private
    - gf_sc_invalidate
    linkageType: ''
    returnType: void
    signature: void compositor_layout_modified(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_layout.c:856,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 858
      start: 852
    functionDepth: 2
    functionLinenumber: 852
    functionLinenumberEnd: 858
    functionName: compositor_mpeg4_layout_get_sensor_handler
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layout.c
    functionUses: 1
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: GF_SensorHandler
    signature: GF_SensorHandler *compositor_mpeg4_layout_get_sensor_handler(GF_Node
      *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_textures.c:52,1
    - Dst: gf_sc_texture_destroy
      Src: /src/gpac/src/compositor/mpeg4_textures.c:53,1
    - Dst: gf_sc_unregister_time_node
      Src: /src/gpac/src/compositor/mpeg4_textures.c:54,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_textures.c:55,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 49
    functionDepth: 2
    functionLinenumber: 49
    functionLinenumberEnd: 57
    functionName: movietexture_destroy
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 0
    functionsReached:
    - gf_sc_unregister_time_node
    - gf_sc_texture_destroy
    - gf_node_get_private
    - gf_free
    linkageType: ''
    returnType: void
    signature: void movietexture_destroy(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_get_speed
      Src: /src/gpac/src/compositor/mpeg4_textures.c:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - stack
    - mt
    argTypes:
    - MovieTextureStack*
    - M_MovieTexture*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 2
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: movietexture_get_speed
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 0
    functionsReached:
    - gf_mo_get_speed
    linkageType: ''
    returnType: Fixed
    signature: Fixed movietexture_get_speed(MovieTextureStack *stack, M_MovieTexture
      *mt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_get_loop
      Src: /src/gpac/src/compositor/mpeg4_textures.c:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - stack
    - mt
    argTypes:
    - MovieTextureStack*
    - M_MovieTexture*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 2
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: movietexture_get_loop
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 0
    functionsReached:
    - gf_mo_get_loop
    linkageType: ''
    returnType: Bool
    signature: Bool movietexture_get_loop(MovieTextureStack *stack, M_MovieTexture
      *mt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_textures.c:69,1
    - Dst: gf_sc_texture_play_from_to
      Src: /src/gpac/src/compositor/mpeg4_textures.c:72,1
    - Dst: gf_mo_get_loop
      Src: /src/gpac/src/compositor/mpeg4_textures.c:72,1
    - Dst: gf_mo_resume
      Src: /src/gpac/src/compositor/mpeg4_textures.c:74,1
    - Dst: gf_mo_set_speed
      Src: /src/gpac/src/compositor/mpeg4_textures.c:76,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - stack
    - mt
    - scene_time
    argTypes:
    - MovieTextureStack*
    - M_MovieTexture*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 66
    functionDepth: 5
    functionLinenumber: 66
    functionLinenumberEnd: 77
    functionName: movietexture_activate
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    - gf_mo_get_loop
    - gf_mo_set_speed
    - gf_mo_resume
    - gf_sc_texture_play_from_to
    linkageType: ''
    returnType: void
    signature: void movietexture_activate(MovieTextureStack *stack, M_MovieTexture
      *mt, Double scene_time)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_textures.c:81,1
    - Dst: gf_sc_texture_stop_no_unregister
      Src: /src/gpac/src/compositor/mpeg4_textures.c:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - stack
    - mt
    argTypes:
    - MovieTextureStack*
    - M_MovieTexture*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 78
    functionDepth: 6
    functionLinenumber: 78
    functionLinenumberEnd: 87
    functionName: movietexture_deactivate
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    - gf_sc_texture_stop_no_unregister
    linkageType: ''
    returnType: void
    signature: void movietexture_deactivate(MovieTextureStack *stack, M_MovieTexture
      *mt)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_textures.c:91,1
    - Dst: gf_sc_texture_update_frame
      Src: /src/gpac/src/compositor/mpeg4_textures.c:98,1
    - Dst: movietexture_get_loop
      Src: /src/gpac/src/compositor/mpeg4_textures.c:101,1
    - Dst: gf_sc_texture_restart
      Src: /src/gpac/src/compositor/mpeg4_textures.c:102,1
    - Dst: gf_mo_should_deactivate
      Src: /src/gpac/src/compositor/mpeg4_textures.c:105,1
    - Dst: movietexture_deactivate
      Src: /src/gpac/src/compositor/mpeg4_textures.c:106,1
    - Dst: gf_mo_get_duration
      Src: /src/gpac/src/compositor/mpeg4_textures.c:112,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_textures.c:113,1
    - Dst: gf_mo_pause
      Src: /src/gpac/src/compositor/mpeg4_textures.c:116,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_textures.c:119,1
    - Dst: gf_node_dirty_parents
      Src: /src/gpac/src/compositor/mpeg4_textures.c:124,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 27
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 88
    functionDepth: 7
    functionLinenumber: 88
    functionLinenumberEnd: 126
    functionName: movietexture_update
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 0
    functionsReached:
    - movietexture_deactivate
    - gf_node_event_out
    - gf_mo_pause
    - movietexture_get_loop
    - gf_mo_should_deactivate
    - gf_sc_texture_update_frame
    - gf_sc_texture_restart
    - gf_mo_get_duration
    - gf_sc_invalidate
    - gf_node_dirty_parents
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void movietexture_update(GF_TextureHandler *txh)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_textures.c:132,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/mpeg4_textures.c:138,1
    - Dst: gf_sc_texture_play
      Src: /src/gpac/src/compositor/mpeg4_textures.c:149,1
    - Dst: gf_mo_resume
      Src: /src/gpac/src/compositor/mpeg4_textures.c:151,1
    - Dst: movietexture_get_speed
      Src: /src/gpac/src/compositor/mpeg4_textures.c:156,1
    - Dst: movietexture_deactivate
      Src: /src/gpac/src/compositor/mpeg4_textures.c:159,1
    - Dst: movietexture_activate
      Src: /src/gpac/src/compositor/mpeg4_textures.c:168,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 25
    argCount: 1
    argNames:
    - st
    argTypes:
    - GF_TimeNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 128
    functionDepth: 7
    functionLinenumber: 128
    functionLinenumberEnd: 172
    functionName: movietexture_update_time
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 0
    functionsReached:
    - movietexture_deactivate
    - movietexture_activate
    - gf_sc_texture_play
    - gf_mo_resume
    - gf_node_get_scene_time
    - gf_node_get_private
    - movietexture_get_speed
    linkageType: ''
    returnType: void
    signature: void movietexture_update_time(GF_TimeNode *st)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_textures.c:177,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_textures.c:179,1
    - Dst: gf_sc_texture_setup
      Src: /src/gpac/src/compositor/mpeg4_textures.c:182,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_textures.c:192,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_textures.c:195,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_textures.c:196,1
    - Dst: gf_sc_register_time_node
      Src: /src/gpac/src/compositor/mpeg4_textures.c:198,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 174
    functionDepth: 2
    functionLinenumber: 174
    functionLinenumberEnd: 199
    functionName: compositor_init_movietexture
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_sc_register_time_node
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    - gf_sc_texture_setup
    linkageType: ''
    returnType: void
    signature: void compositor_init_movietexture(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_textures.c:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 201
    functionDepth: 2
    functionLinenumber: 201
    functionLinenumberEnd: 205
    functionName: mt_get_texture
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 1
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: GF_TextureHandler
    signature: GF_TextureHandler *mt_get_texture(GF_Node *node)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_textures.c:210,1
    - Dst: gf_sc_texture_check_url_change
      Src: /src/gpac/src/compositor/mpeg4_textures.c:214,1
    - Dst: gf_sc_texture_stop
      Src: /src/gpac/src/compositor/mpeg4_textures.c:215,1
    - Dst: gf_sc_texture_play
      Src: /src/gpac/src/compositor/mpeg4_textures.c:216,1
    - Dst: movietexture_update_time
      Src: /src/gpac/src/compositor/mpeg4_textures.c:220,1
    - Dst: gf_sc_register_time_node
      Src: /src/gpac/src/compositor/mpeg4_textures.c:225,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 207
    functionDepth: 8
    functionLinenumber: 207
    functionLinenumberEnd: 226
    functionName: compositor_movietexture_modified
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 1
    functionsReached:
    - gf_sc_texture_stop
    - gf_sc_register_time_node
    - gf_sc_texture_check_url_change
    - movietexture_update_time
    - gf_sc_texture_play
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void compositor_movietexture_modified(GF_Node *node)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_textures.c:231,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_textures.c:234,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_textures.c:240,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/mpeg4_textures.c:241,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/mpeg4_textures.c:242,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_textures.c:246,1
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/compositor/mpeg4_textures.c:247,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/compositor/mpeg4_textures.c:251,1
    - Dst: gf_opts_del_section
      Src: /src/gpac/src/compositor/mpeg4_textures.c:252,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_textures.c:255,1
    - Dst: gf_sc_texture_destroy
      Src: /src/gpac/src/compositor/mpeg4_textures.c:258,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_textures.c:259,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 228
    functionDepth: 2
    functionLinenumber: 228
    functionLinenumberEnd: 261
    functionName: imagetexture_destroy
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_free
    - gf_sc_texture_destroy
    - gf_opts_del_section
    - sscanf
    - sprintf
    - gf_file_delete
    - gf_opts_get_key
    - gf_net_get_ntp
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void imagetexture_destroy(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_textures.c:265,1
    - Dst: gf_sc_texture_play
      Src: /src/gpac/src/compositor/mpeg4_textures.c:270,1
    - Dst: gf_sc_texture_update_frame
      Src: /src/gpac/src/compositor/mpeg4_textures.c:272,1
    - Dst: gf_node_dirty_parents
      Src: /src/gpac/src/compositor/mpeg4_textures.c:280,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_textures.c:281,1
    - Dst: gf_scene_get_service_url
      Src: /src/gpac/src/compositor/mpeg4_textures.c:297,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/mpeg4_textures.c:297,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/compositor/mpeg4_textures.c:298,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_textures.c:300,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/compositor/mpeg4_textures.c:304,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_textures.c:306,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/compositor/mpeg4_textures.c:306,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_textures.c:308,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_textures.c:310,1
    - Dst: gf_img_jpeg_dec
      Src: /src/gpac/src/compositor/mpeg4_textures.c:317,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_textures.c:320,1
    - Dst: gf_img_jpeg_dec
      Src: /src/gpac/src/compositor/mpeg4_textures.c:324,1
    - Dst: gf_sc_texture_allocate
      Src: /src/gpac/src/compositor/mpeg4_textures.c:326,1
    - Dst: gf_sc_texture_set_data
      Src: /src/gpac/src/compositor/mpeg4_textures.c:327,1
    - Dst: gf_img_png_dec
      Src: /src/gpac/src/compositor/mpeg4_textures.c:335,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_textures.c:337,1
    - Dst: gf_img_png_dec
      Src: /src/gpac/src/compositor/mpeg4_textures.c:338,1
    - Dst: gf_sc_texture_allocate
      Src: /src/gpac/src/compositor/mpeg4_textures.c:340,1
    - Dst: gf_sc_texture_set_data
      Src: /src/gpac/src/compositor/mpeg4_textures.c:341,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/mpeg4_textures.c:357,1
    - Dst: strcpy
      Src: /src/gpac/src/compositor/mpeg4_textures.c:359,1
    - Dst: strcpy
      Src: /src/gpac/src/compositor/mpeg4_textures.c:361,1
    - Dst: gf_get_default_cache_directory
      Src: /src/gpac/src/compositor/mpeg4_textures.c:361,1
    - Dst: strcat
      Src: /src/gpac/src/compositor/mpeg4_textures.c:363,1
    - Dst: gf_scene_get_service_url
      Src: /src/gpac/src/compositor/mpeg4_textures.c:364,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/mpeg4_textures.c:364,1
    - Dst: gf_sha1_csum
      Src: /src/gpac/src/compositor/mpeg4_textures.c:366,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/mpeg4_textures.c:366,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_textures.c:370,1
    - Dst: strcat
      Src: /src/gpac/src/compositor/mpeg4_textures.c:371,1
    - Dst: strcat
      Src: /src/gpac/src/compositor/mpeg4_textures.c:373,1
    - Dst: strcat
      Src: /src/gpac/src/compositor/mpeg4_textures.c:375,1
    - Dst: gf_fopen
      Src: /src/gpac/src/compositor/mpeg4_textures.c:376,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/compositor/mpeg4_textures.c:378,1
    - Dst: gf_fclose
      Src: /src/gpac/src/compositor/mpeg4_textures.c:379,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_textures.c:385,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/compositor/mpeg4_textures.c:386,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/compositor/mpeg4_textures.c:387,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/compositor/mpeg4_textures.c:388,1
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/compositor/mpeg4_textures.c:393,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_textures.c:395,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/compositor/mpeg4_textures.c:396,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/compositor/mpeg4_textures.c:398,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_textures.c:404,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 104
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 263
    functionDepth: 7
    functionLinenumber: 263
    functionLinenumberEnd: 409
    functionName: imagetexture_update
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_free
    - gf_img_jpeg_dec
    - gf_opts_set_key
    - strcpy
    - gf_sha1_csum
    - gf_fwrite
    - gf_sc_texture_update_frame
    - gf_fopen
    - gf_opts_get_key
    - gf_net_get_ntp
    - gf_get_default_cache_directory
    - strcat
    - sprintf
    - gf_sc_texture_allocate
    - gf_sc_invalidate
    - gf_scene_get_service_url
    - GF_LOG
    - gf_sc_texture_play
    - gf_node_get_graph
    - gf_error_to_string
    - gf_malloc
    - gf_img_png_dec
    - strlen
    - gf_sc_texture_set_data
    - gf_fclose
    - gf_url_concatenate
    - gf_node_dirty_parents
    - gf_file_load_data
    linkageType: ''
    returnType: void
    signature: void imagetexture_update(GF_TextureHandler *txh)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_textures.c:414,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_textures.c:416,1
    - Dst: gf_sc_texture_setup
      Src: /src/gpac/src/compositor/mpeg4_textures.c:419,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_textures.c:421,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_textures.c:422,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_textures.c:425,1
    - Dst: gf_scene_get_service_url
      Src: /src/gpac/src/compositor/mpeg4_textures.c:438,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/mpeg4_textures.c:438,1
    - Dst: gf_opts_get_section_count
      Src: /src/gpac/src/compositor/mpeg4_textures.c:439,1
    - Dst: gf_opts_get_section_name
      Src: /src/gpac/src/compositor/mpeg4_textures.c:442,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/mpeg4_textures.c:443,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/mpeg4_textures.c:444,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/mpeg4_textures.c:445,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/mpeg4_textures.c:446,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/mpeg4_textures.c:447,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/mpeg4_textures.c:448,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/compositor/mpeg4_textures.c:449,1
    - Dst: gf_opts_del_section
      Src: /src/gpac/src/compositor/mpeg4_textures.c:450,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 41
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 411
    functionDepth: 2
    functionLinenumber: 411
    functionLinenumberEnd: 456
    functionName: compositor_init_imagetexture
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - stricmp
    - gf_opts_del_section
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - strncmp
    - gf_file_delete
    - gf_node_get_graph
    - gf_node_set_callback_function
    - gf_sc_texture_setup
    - gf_opts_get_key
    - gf_scene_get_service_url
    - gf_opts_get_section_name
    - gf_opts_get_section_count
    linkageType: ''
    returnType: void
    signature: void compositor_init_imagetexture(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_textures.c:460,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 461
      start: 458
    functionDepth: 2
    functionLinenumber: 458
    functionLinenumberEnd: 461
    functionName: it_get_texture
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 1
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: GF_TextureHandler
    signature: GF_TextureHandler *it_get_texture(GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_textures.c:466,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_textures.c:469,1
    - Dst: gf_sc_texture_check_url_change
      Src: /src/gpac/src/compositor/mpeg4_textures.c:480,1
    - Dst: gf_sc_texture_stop
      Src: /src/gpac/src/compositor/mpeg4_textures.c:481,1
    - Dst: gf_sc_texture_play
      Src: /src/gpac/src/compositor/mpeg4_textures.c:482,1
    - Dst: gf_sc_texture_play
      Src: /src/gpac/src/compositor/mpeg4_textures.c:487,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 462
    functionDepth: 6
    functionLinenumber: 462
    functionLinenumberEnd: 488
    functionName: compositor_imagetexture_modified
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_sc_texture_stop
    - gf_sc_texture_check_url_change
    - gf_sc_texture_play
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void compositor_imagetexture_modified(GF_Node *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_textures.c:501,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_textures.c:502,1
    - Dst: gf_sc_texture_destroy
      Src: /src/gpac/src/compositor/mpeg4_textures.c:503,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_textures.c:504,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 498
    functionDepth: 2
    functionLinenumber: 498
    functionLinenumberEnd: 506
    functionName: pixeltexture_destroy
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sc_texture_destroy
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void pixeltexture_destroy(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_textures.c:511,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_textures.c:513,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_textures.c:514,1
    - Dst: gf_sc_texture_allocate
      Src: /src/gpac/src/compositor/mpeg4_textures.c:546,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_textures.c:550,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_textures.c:551,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/mpeg4_textures.c:555,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/mpeg4_textures.c:560,1
    - Dst: gf_sc_texture_set_data
      Src: /src/gpac/src/compositor/mpeg4_textures.c:570,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 48
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 507
    functionDepth: 2
    functionLinenumber: 507
    functionLinenumberEnd: 571
    functionName: pixeltexture_update
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sc_texture_set_data
    - memcpy
    - gf_node_dirty_get
    - gf_sc_texture_allocate
    - gf_node_dirty_clear
    - gf_node_get_private
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void pixeltexture_update(GF_TextureHandler *txh)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_textures.c:576,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_textures.c:578,1
    - Dst: gf_sc_texture_setup
      Src: /src/gpac/src/compositor/mpeg4_textures.c:581,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_textures.c:585,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_textures.c:586,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 573
    functionDepth: 2
    functionLinenumber: 573
    functionLinenumberEnd: 590
    functionName: compositor_init_pixeltexture
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    - gf_sc_texture_setup
    linkageType: ''
    returnType: void
    signature: void compositor_init_pixeltexture(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_textures.c:594,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 596
      start: 592
    functionDepth: 2
    functionLinenumber: 592
    functionLinenumberEnd: 596
    functionName: pt_get_texture
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 1
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: GF_TextureHandler
    signature: GF_TextureHandler *pt_get_texture(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 598
    functionDepth: 0
    functionLinenumber: 598
    functionLinenumberEnd: 601
    functionName: matte_update
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void matte_update(GF_TextureHandler *txh)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_textures.c:606,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_textures.c:608,1
    - Dst: gf_sc_texture_setup
      Src: /src/gpac/src/compositor/mpeg4_textures.c:611,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_textures.c:614,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_textures.c:615,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 616
      start: 603
    functionDepth: 2
    functionLinenumber: 603
    functionLinenumberEnd: 616
    functionName: compositor_init_mattetexture
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    - gf_sc_texture_setup
    linkageType: ''
    returnType: void
    signature: void compositor_init_mattetexture(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_textures.c:620,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_textures.c:623,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 47
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 618
    functionDepth: 2
    functionLinenumber: 618
    functionLinenumberEnd: 679
    functionName: gf_sc_mo_destroyed
    functionSourceFile: /src/gpac/src/compositor/mpeg4_textures.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void gf_sc_mo_destroyed(GF_Node *n)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 12
    argCount: 2
    argNames:
    - rc1
    - rc2
    argTypes:
    - GF_IRect*
    - GF_IRect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 43
    functionName: gf_irect_overlaps
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_irect_overlaps(GF_IRect *rc1, GF_IRect *rc2)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_irect_overlaps
      Src: /src/gpac/src/compositor/visual_manager_2d.c:48,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - rc1
    - rc2
    argTypes:
    - GF_IRect*
    - GF_IRect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 66
    functionName: gf_irect_intersect
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.c
    functionUses: 8
    functionsReached:
    - gf_irect_overlaps
    linkageType: ''
    returnType: void
    signature: void gf_irect_intersect(GF_IRect *rc1, GF_IRect *rc2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:72,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:73,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:74,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - rc
    argTypes:
    - GF_IRect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 77
    functionName: gf_rect_ft
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.c
    functionUses: 1
    functionsReached:
    - INT2FIX
    linkageType: ''
    returnType: GF_Rect
    signature: GF_Rect gf_rect_ft(GF_IRect *rc)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: NewDrawableContext
      Src: /src/gpac/src/compositor/visual_manager_2d.c:86,1
    - Dst: drawctx_reset
      Src: /src/gpac/src/compositor/visual_manager_2d.c:88,1
    - Dst: drawctx_reset
      Src: /src/gpac/src/compositor/visual_manager_2d.c:96,1
    - Dst: drawctx_reset
      Src: /src/gpac/src/compositor/visual_manager_2d.c:104,1
    - Dst: NewDrawableContext
      Src: /src/gpac/src/compositor/visual_manager_2d.c:109,1
    - Dst: drawctx_reset
      Src: /src/gpac/src/compositor/visual_manager_2d.c:111,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/visual_manager_2d.c:120,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 36
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 79
    functionDepth: 2
    functionLinenumber: 79
    functionLinenumberEnd: 130
    functionName: visual_2d_get_drawable_context
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.c
    functionUses: 4
    functionsReached:
    - drawctx_reset
    - NewDrawableContext
    - gf_malloc
    linkageType: ''
    returnType: DrawableContext
    signature: DrawableContext *visual_2d_get_drawable_context(GF_VisualManager *visual)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/visual_manager_2d.c:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 136
    functionName: visual_2d_remove_last_context
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.c
    functionUses: 1
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: void
    signature: void visual_2d_remove_last_context(GF_VisualManager *visual)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_2d.c:154,1
    - Dst: GF_VisualManager*::compositor::video_out::Blit
      Src: /src/gpac/src/compositor/visual_manager_2d.c:168,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 26
    argCount: 2
    argNames:
    - visual
    - drawable
    argTypes:
    - GF_VisualManager*
    - struct _drawable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 170
    functionName: visual_2d_drawable_delete
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.c
    functionUses: 1
    functionsReached:
    - gf_free
    - GF_VisualManager*::compositor::video_out::Blit
    linkageType: ''
    returnType: void
    signature: void visual_2d_drawable_delete(GF_VisualManager *visual, struct _drawable
      *drawable)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/visual_manager_2d.c:178,1
    - Dst: gf_rect_pixelize
      Src: /src/gpac/src/compositor/visual_manager_2d.c:179,1
    - Dst: gf_irect_overlaps
      Src: /src/gpac/src/compositor/visual_manager_2d.c:180,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - tr_state
    - bounds
    argTypes:
    - GF_TraverseState*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 182
    functionName: visual_2d_node_cull
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_apply_rect
    - gf_rect_pixelize
    - gf_irect_overlaps
    linkageType: ''
    returnType: Bool
    signature: Bool visual_2d_node_cull(GF_TraverseState *tr_state, GF_Rect *bounds)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_rect_center
      Src: /src/gpac/src/compositor/visual_manager_2d.c:199,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:199,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:199,1
    - Dst: gf_rect_center
      Src: /src/gpac/src/compositor/visual_manager_2d.c:201,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:201,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:201,1
    - Dst: gf_rect_center
      Src: /src/gpac/src/compositor/visual_manager_2d.c:203,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:203,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:203,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:207,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:208,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/visual_manager_2d.c:211,1
    - Dst: gf_rect_pixelize
      Src: /src/gpac/src/compositor/visual_manager_2d.c:213,1
    - Dst: gf_rect_center
      Src: /src/gpac/src/compositor/visual_manager_2d.c:219,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:219,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:219,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:221,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:222,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:226,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:227,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/visual_manager_2d.c:233,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_2d.c:236,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/visual_manager_2d.c:236,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/visual_manager_2d.c:241,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:243,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:244,1
    - Dst: gf_rect_pixelize
      Src: /src/gpac/src/compositor/visual_manager_2d.c:248,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 44
    argCount: 2
    argNames:
    - visual
    - tr_state
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 185
    functionDepth: 6
    functionLinenumber: 185
    functionLinenumberEnd: 251
    functionName: visual_2d_setup_projection
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - INT2FIX
    - gf_node_traverse
    - gf_rect_pixelize
    - gf_mx2d_add_scale
    - gf_rect_center
    - gf_list_count
    - gf_mx_init
    linkageType: ''
    returnType: void
    signature: void visual_2d_setup_projection(GF_VisualManager *visual, GF_TraverseState
      *tr_state)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/visual_manager_2d.c:270,1
    - Dst: visual_2d_setup_projection
      Src: /src/gpac/src/compositor/visual_manager_2d.c:272,1
    - Dst: visual_2d_init_raster
      Src: /src/gpac/src/compositor/visual_manager_2d.c:280,1
    - Dst: drawable_flush_bounds
      Src: /src/gpac/src/compositor/visual_manager_2d.c:303,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_2d.c:304,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/compositor/visual_manager_2d.c:304,1
    - Dst: drawable_reset_bounds
      Src: /src/gpac/src/compositor/visual_manager_2d.c:307,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_2d.c:313,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_2d.c:323,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/visual_manager_2d.c:328,1
    - Dst: b2d_get_context
      Src: /src/gpac/src/compositor/visual_manager_2d.c:330,1
    - Dst: gf_rect_ft
      Src: /src/gpac/src/compositor/visual_manager_2d.c:339,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_2d.c:342,1
    - Dst: GF_VisualManager*::ClearSurface
      Src: /src/gpac/src/compositor/visual_manager_2d.c:346,1
    - Dst: GF_VisualManager*::ClearSurface
      Src: /src/gpac/src/compositor/visual_manager_2d.c:351,1
    - Dst: GF_VisualManager*::ClearSurface
      Src: /src/gpac/src/compositor/visual_manager_2d.c:354,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 76
    argCount: 2
    argNames:
    - visual
    - tr_state
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 253
    functionDepth: 7
    functionLinenumber: 253
    functionLinenumberEnd: 359
    functionName: visual_2d_init_draw
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.c
    functionUses: 0
    functionsReached:
    - visual_2d_setup_projection
    - gf_free
    - gf_list_get
    - gf_node_traverse
    - gf_node_get_class_name
    - gf_rect_ft
    - GF_LOG
    - visual_2d_init_raster
    - b2d_get_context
    - GF_VisualManager*::ClearSurface
    - memset
    - drawable_flush_bounds
    - drawable_reset_bounds
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err visual_2d_init_draw(GF_VisualManager *visual, GF_TraverseState
      *tr_state)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 6
    argCount: 2
    argNames:
    - rc1
    - rc2
    argTypes:
    - GF_IRect*
    - GF_IRect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 364
    functionDepth: 0
    functionLinenumber: 364
    functionLinenumberEnd: 370
    functionName: gf_irect_inside
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_irect_inside(GF_IRect *rc1, GF_IRect *rc2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ra
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 375
    functionName: ra_clear
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ra_clear(ra)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ra
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 377
    functionDepth: 0
    functionLinenumber: 377
    functionLinenumberEnd: 378
    functionName: ra_is_empty
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ra_is_empty(ra)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/visual_manager_2d.c:385,1
    - Dst: gf_irect_overlaps
      Src: /src/gpac/src/compositor/visual_manager_2d.c:388,1
    - Dst: gf_irect_union
      Src: /src/gpac/src/compositor/visual_manager_2d.c:389,1
    - Dst: ra_add
      Src: /src/gpac/src/compositor/visual_manager_2d.c:393,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ra
    - rc
    argTypes:
    - GF_RectArray*
    - GF_IRect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 381
    functionDepth: 1
    functionLinenumber: 381
    functionLinenumberEnd: 394
    functionName: ra_union_rect
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.c
    functionUses: 4
    functionsReached:
    - gf_assert
    - gf_irect_overlaps
    - gf_irect_union
    - ra_add
    linkageType: ''
    returnType: void
    signature: void ra_union_rect(GF_RectArray *ra, GF_IRect *rc)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 14
    argCount: 2
    argNames:
    - rc1
    - rc2
    argTypes:
    - GF_IRect*
    - GF_IRect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 402
    functionDepth: 0
    functionLinenumber: 402
    functionLinenumberEnd: 414
    functionName: gf_irect_relation
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_irect_relation(GF_IRect *rc1, GF_IRect *rc2)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_irect_relation
      Src: /src/gpac/src/compositor/visual_manager_2d.c:423,1
    - Dst: gf_irect_union
      Src: /src/gpac/src/compositor/visual_manager_2d.c:427,1
    - Dst: memmove
      Src: /src/gpac/src/compositor/visual_manager_2d.c:438,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 1
    argNames:
    - ra
    argTypes:
    - GF_RectArray*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 417
    functionDepth: 1
    functionLinenumber: 417
    functionLinenumberEnd: 449
    functionName: ra_refresh
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.c
    functionUses: 1
    functionsReached:
    - gf_irect_relation
    - memmove
    - gf_irect_union
    linkageType: ''
    returnType: void
    signature: void ra_refresh(GF_RectArray *ra)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/visual_manager_2d.c:459,1
    - Dst: gf_irect_relation
      Src: /src/gpac/src/compositor/visual_manager_2d.c:480,1
    - Dst: gf_irect_union
      Src: /src/gpac/src/compositor/visual_manager_2d.c:483,1
    - Dst: gf_irect_inside
      Src: /src/gpac/src/compositor/visual_manager_2d.c:499,1
    - Dst: memmove
      Src: /src/gpac/src/compositor/visual_manager_2d.c:503,1
    - Dst: ra_add
      Src: /src/gpac/src/compositor/visual_manager_2d.c:512,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 36
    argCount: 4
    argNames:
    - ra
    - ctx
    - ctx_idx
    - first_opaque
    argTypes:
    - GF_RectArray*
    - DrawableContext*
    - u32
    - DrawableContext**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 451
    functionDepth: 1
    functionLinenumber: 451
    functionLinenumberEnd: 518
    functionName: register_context_rect
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.c
    functionUses: 0
    functionsReached:
    - gf_irect_inside
    - gf_assert
    - memmove
    - gf_irect_union
    - ra_add
    - gf_irect_relation
    linkageType: ''
    returnType: u32
    signature: u32 register_context_rect(GF_RectArray *ra, DrawableContext *ctx, u32
      ctx_idx, DrawableContext **first_opaque)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_irect_relation
      Src: /src/gpac/src/compositor/visual_manager_2d.c:531,1
    - Dst: gf_irect_union
      Src: /src/gpac/src/compositor/visual_manager_2d.c:534,1
    - Dst: ra_add
      Src: /src/gpac/src/compositor/visual_manager_2d.c:544,1
    - Dst: ra_add
      Src: /src/gpac/src/compositor/visual_manager_2d.c:551,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - ra
    - rc
    argTypes:
    - GF_RectArray*
    - GF_IRect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 521
    functionDepth: 1
    functionLinenumber: 521
    functionLinenumberEnd: 558
    functionName: register_dirty_rect
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.c
    functionUses: 0
    functionsReached:
    - gf_irect_relation
    - gf_irect_union
    - ra_add
    linkageType: ''
    returnType: void
    signature: void register_dirty_rect(GF_RectArray *ra, GF_IRect *rc)
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: visual_2d_flush_overlay_areas
      Src: /src/gpac/src/compositor/visual_manager_2d.c:582,1
    - Dst: visual_2d_release_raster
      Src: /src/gpac/src/compositor/visual_manager_2d.c:584,1
    - Dst: visual_clean_contexts
      Src: /src/gpac/src/compositor/visual_manager_2d.c:585,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/visual_manager_2d.c:600,1
    - Dst: b2d_get_context
      Src: /src/gpac/src/compositor/visual_manager_2d.c:609,1
    - Dst: drawctx_update_info
      Src: /src/gpac/src/compositor/visual_manager_2d.c:634,1
    - Dst: register_context_rect
      Src: /src/gpac/src/compositor/visual_manager_2d.c:637,1
    - Dst: drawable_get_previous_bound
      Src: /src/gpac/src/compositor/visual_manager_2d.c:654,1
    - Dst: gf_irect_intersect
      Src: /src/gpac/src/compositor/visual_manager_2d.c:656,1
    - Dst: register_dirty_rect
      Src: /src/gpac/src/compositor/visual_manager_2d.c:657,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_2d.c:663,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/compositor/visual_manager_2d.c:663,1
    - Dst: drawable_reset_bounds
      Src: /src/gpac/src/compositor/visual_manager_2d.c:666,1
    - Dst: GF_VisualManager*::compositor::video_out::Blit
      Src: /src/gpac/src/compositor/visual_manager_2d.c:671,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_2d.c:677,1
    - Dst: ra_clear
      Src: /src/gpac/src/compositor/visual_manager_2d.c:686,1
    - Dst: ra_add
      Src: /src/gpac/src/compositor/visual_manager_2d.c:687,1
    - Dst: ra_refresh
      Src: /src/gpac/src/compositor/visual_manager_2d.c:692,1
    - Dst: GF_VisualManager*::ClearSurface
      Src: /src/gpac/src/compositor/visual_manager_2d.c:695,1
    - Dst: ra_is_empty
      Src: /src/gpac/src/compositor/visual_manager_2d.c:700,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_2d.c:707,1
    - Dst: ra_add
      Src: /src/gpac/src/compositor/visual_manager_2d.c:714,1
    - Dst: irect_rect_equal
      Src: /src/gpac/src/compositor/visual_manager_2d.c:721,1
    - Dst: drawable_check_bounds
      Src: /src/gpac/src/compositor/visual_manager_2d.c:729,1
    - Dst: gf_rect_ft
      Src: /src/gpac/src/compositor/visual_manager_2d.c:741,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_2d.c:749,1
    - Dst: compositor_2d_hybgl_clear_surface
      Src: /src/gpac/src/compositor/visual_manager_2d.c:760,1
    - Dst: GF_VisualManager*::ClearSurface
      Src: /src/gpac/src/compositor/visual_manager_2d.c:773,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/compositor/visual_manager_2d.c:791,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_2d.c:792,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_2d.c:793,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_2d.c:796,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/visual_manager_2d.c:797,1
    - Dst: visual_2d_overlaps_overlay
      Src: /src/gpac/src/compositor/visual_manager_2d.c:818,1
    - Dst: call_drawable_draw
      Src: /src/gpac/src/compositor/visual_manager_2d.c:819,1
    - Dst: visual_2d_flush_overlay_areas
      Src: /src/gpac/src/compositor/visual_manager_2d.c:824,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/visual_manager_2d.c:832,1
    - Dst: GF_VisualManager*::compositor::video_out::FlushRectangles
      Src: /src/gpac/src/compositor/visual_manager_2d.c:836,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_2d.c:838,1
    - Dst: ra_clear
      Src: /src/gpac/src/compositor/visual_manager_2d.c:843,1
    - Dst: visual_2d_release_raster
      Src: /src/gpac/src/compositor/visual_manager_2d.c:844,1
    - Dst: visual_clean_contexts
      Src: /src/gpac/src/compositor/visual_manager_2d.c:845,1
    CyclomaticComplexity: 67
    EdgeCount: 67
    ICount: 198
    argCount: 2
    argNames:
    - visual
    - tr_state
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 848
      start: 561
    functionDepth: 7
    functionLinenumber: 561
    functionLinenumberEnd: 848
    functionName: visual_2d_terminate_draw
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_class_name
    - ra_add
    - ra_is_empty
    - gf_log_tool_level_on
    - visual_2d_flush_overlay_areas
    - visual_2d_release_raster
    - GF_VisualManager*::compositor::video_out::Blit
    - drawctx_update_info
    - compositor_2d_hybgl_clear_surface
    - gf_list_get
    - gf_assert
    - call_drawable_draw
    - visual_clean_contexts
    - GF_VisualManager*::ClearSurface
    - drawable_get_previous_bound
    - gf_node_traverse
    - gf_rect_ft
    - GF_VisualManager*::compositor::video_out::FlushRectangles
    - GF_LOG
    - drawable_check_bounds
    - ra_clear
    - gf_malloc
    - register_context_rect
    - register_dirty_rect
    - b2d_get_context
    - irect_rect_equal
    - ra_refresh
    - visual_2d_overlaps_overlay
    - gf_irect_intersect
    - drawable_reset_bounds
    linkageType: ''
    returnType: Bool
    signature: Bool visual_2d_terminate_draw(GF_VisualManager *visual, GF_TraverseState
      *tr_state)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/visual_manager_2d.c:857,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/visual_manager_2d.c:860,1
    - Dst: compositor_3d_enable_fbo
      Src: /src/gpac/src/compositor/visual_manager_2d.c:865,1
    - Dst: visual_2d_init_draw
      Src: /src/gpac/src/compositor/visual_manager_2d.c:869,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/visual_manager_2d.c:871,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_2d.c:872,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/compositor/visual_manager_2d.c:872,1
    - Dst: compositor_3d_enable_fbo
      Src: /src/gpac/src/compositor/visual_manager_2d.c:875,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/visual_manager_2d.c:882,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_2d.c:887,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/compositor/visual_manager_2d.c:887,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_2d.c:891,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/visual_manager_2d.c:894,1
    - Dst: gf_sc_traverse_subscene
      Src: /src/gpac/src/compositor/visual_manager_2d.c:895,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_2d.c:898,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/visual_manager_2d.c:902,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/visual_manager_2d.c:907,1
    - Dst: visual_2d_terminate_draw
      Src: /src/gpac/src/compositor/visual_manager_2d.c:908,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/visual_manager_2d.c:912,1
    - Dst: compositor_3d_enable_fbo
      Src: /src/gpac/src/compositor/visual_manager_2d.c:918,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 40
    argCount: 4
    argNames:
    - visual
    - root
    - tr_state
    - is_root_visual
    argTypes:
    - GF_VisualManager*
    - GF_Node*
    - GF_TraverseState*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 922
      start: 850
    functionDepth: 8
    functionLinenumber: 850
    functionLinenumberEnd: 922
    functionName: visual_2d_draw_frame
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.c
    functionUses: 0
    functionsReached:
    - gf_node_traverse
    - gf_node_get_class_name
    - compositor_3d_enable_fbo
    - GF_LOG
    - gf_sc_traverse_subscene
    - visual_2d_terminate_draw
    - gf_list_enum
    - visual_2d_init_draw
    - gf_error_to_string
    - gf_mx2d_copy
    - gf_sys_clock
    linkageType: ''
    returnType: Bool
    signature: Bool visual_2d_draw_frame(GF_VisualManager *visual, GF_Node *root,
      GF_TraverseState *tr_state, Bool is_root_visual)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/visual_manager_2d.c:930,1
    - Dst: visual_2d_setup_projection
      Src: /src/gpac/src/compositor/visual_manager_2d.c:932,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:935,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_2d.c:936,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/visual_manager_2d.c:946,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_2d.c:952,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/visual_manager_2d.c:958,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_2d.c:959,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/visual_manager_2d.c:960,1
    - Dst: gf_sc_traverse_subscene
      Src: /src/gpac/src/compositor/visual_manager_2d.c:961,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/visual_manager_2d.c:964,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 28
    argCount: 4
    argNames:
    - visual
    - tr_state
    - ev
    - children
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    - GF_Event*
    - GF_ChildNodeItem*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 965
      start: 925
    functionDepth: 7
    functionLinenumber: 925
    functionLinenumberEnd: 965
    functionName: visual_2d_pick_node
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.c
    functionUses: 0
    functionsReached:
    - visual_2d_setup_projection
    - INT2FIX
    - gf_node_traverse
    - gf_list_reset
    - gf_sc_traverse_subscene
    - gf_sg_get_root_node
    - gf_mx2d_copy
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void visual_2d_pick_node(GF_VisualManager *visual, GF_TraverseState
      *tr_state, GF_Event *ev, GF_ChildNodeItem *children)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/offscreen_cache.c:51,1
    - Dst: mesh_from_path
      Src: /src/gpac/src/compositor/offscreen_cache.c:53,1
    - Dst: visual_3d_draw_2d_with_aspect
      Src: /src/gpac/src/compositor/offscreen_cache.c:54,1
    - Dst: GF_TraverseState*::visual::DrawBitmap
      Src: /src/gpac/src/compositor/offscreen_cache.c:59,1
    - Dst: visual_2d_texture_path
      Src: /src/gpac/src/compositor/offscreen_cache.c:60,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - cache
    - tr_state
    argTypes:
    - GroupCache*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 41
    functionDepth: 12
    functionLinenumber: 41
    functionLinenumberEnd: 63
    functionName: group_cache_draw
    functionSourceFile: /src/gpac/src/compositor/offscreen_cache.c
    functionUses: 1
    functionsReached:
    - mesh_from_path
    - visual_3d_draw_2d_with_aspect
    - GF_TraverseState*::visual::DrawBitmap
    - new_mesh
    - visual_2d_texture_path
    linkageType: ''
    returnType: void
    signature: void group_cache_draw(GroupCache *cache, GF_TraverseState *tr_state)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/offscreen_cache.c:68,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/offscreen_cache.c:70,1
    - Dst: gf_sc_texture_setup
      Src: /src/gpac/src/compositor/offscreen_cache.c:73,1
    - Dst: drawable_new
      Src: /src/gpac/src/compositor/offscreen_cache.c:74,1
    - Dst: gf_sc_texture_allocate
      Src: /src/gpac/src/compositor/offscreen_cache.c:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 81
    functionName: group_cache_new
    functionSourceFile: /src/gpac/src/compositor/offscreen_cache.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - GF_LOG
    - gf_sc_texture_allocate
    - drawable_new
    - gf_sc_texture_setup
    linkageType: ''
    returnType: GroupCache
    signature: GroupCache *group_cache_new(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: drawable_del
      Src: /src/gpac/src/compositor/offscreen_cache.c:85,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/offscreen_cache.c:86,1
    - Dst: gf_sc_texture_release
      Src: /src/gpac/src/compositor/offscreen_cache.c:87,1
    - Dst: gf_sc_texture_destroy
      Src: /src/gpac/src/compositor/offscreen_cache.c:88,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/offscreen_cache.c:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - cache
    argTypes:
    - GroupCache*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 83
    functionDepth: 3
    functionLinenumber: 83
    functionLinenumberEnd: 90
    functionName: group_cache_del
    functionSourceFile: /src/gpac/src/compositor/offscreen_cache.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_sc_texture_release
    - drawable_del
    - gf_sc_texture_destroy
    linkageType: ''
    returnType: void
    signature: void group_cache_del(GroupCache *cache)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/compositor/offscreen_cache.c:104,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/offscreen_cache.c:111,1
    - Dst: memset
      Src: /src/gpac/src/compositor/offscreen_cache.c:112,1
    - Dst: gf_path_reset
      Src: /src/gpac/src/compositor/offscreen_cache.c:114,1
    - Dst: gf_path_add_rect_center
      Src: /src/gpac/src/compositor/offscreen_cache.c:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 5
    argNames:
    - cache
    - path_bounds
    - pix_bounds
    - compositor
    - for_gl
    argTypes:
    - GroupCache*
    - GF_Rect*
    - GF_IRect*
    - GF_Compositor*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 123
    functionName: group_cache_setup
    functionSourceFile: /src/gpac/src/compositor/offscreen_cache.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_path_add_rect_center
    - memset
    - gf_path_reset
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void group_cache_setup(GroupCache *cache, GF_Rect *path_bounds, GF_IRect
      *pix_bounds, GF_Compositor *compositor, Bool for_gl)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/offscreen_cache.c:138,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/offscreen_cache.c:156,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/compositor/offscreen_cache.c:156,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/offscreen_cache.c:161,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/offscreen_cache.c:162,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/offscreen_cache.c:180,1
    - Dst: gf_rect_union
      Src: /src/gpac/src/compositor/offscreen_cache.c:182,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/offscreen_cache.c:189,1
    - Dst: drawable_init_context_mpeg4
      Src: /src/gpac/src/compositor/offscreen_cache.c:200,1
    - Dst: drawable_init_context_svg
      Src: /src/gpac/src/compositor/offscreen_cache.c:204,1
    - Dst: gf_evg_surface_new
      Src: /src/gpac/src/compositor/offscreen_cache.c:217,1
    - Dst: gf_mx2d_from_mx
      Src: /src/gpac/src/compositor/offscreen_cache.c:221,1
    - Dst: MAX
      Src: /src/gpac/src/compositor/offscreen_cache.c:240,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/offscreen_cache.c:243,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/offscreen_cache.c:244,1
    - Dst: gf_rect_pixelize
      Src: /src/gpac/src/compositor/offscreen_cache.c:246,1
    - Dst: group_cache_setup
      Src: /src/gpac/src/compositor/offscreen_cache.c:255,1
    - Dst: gf_evg_surface_attach_to_buffer
      Src: /src/gpac/src/compositor/offscreen_cache.c:259,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/offscreen_cache.c:270,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/offscreen_cache.c:270,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/offscreen_cache.c:271,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/offscreen_cache.c:271,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/offscreen_cache.c:272,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/offscreen_cache.c:273,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/offscreen_cache.c:275,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/offscreen_cache.c:286,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/offscreen_cache.c:309,1
    - Dst: drawable_reset_bounds
      Src: /src/gpac/src/compositor/offscreen_cache.c:315,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/offscreen_cache.c:324,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/compositor/offscreen_cache.c:330,1
    - Dst: gf_sc_texture_set_data
      Src: /src/gpac/src/compositor/offscreen_cache.c:345,1
    - Dst: gf_sc_texture_push_image
      Src: /src/gpac/src/compositor/offscreen_cache.c:346,1
    - Dst: drawable_init_context_mpeg4
      Src: /src/gpac/src/compositor/offscreen_cache.c:354,1
    - Dst: drawable_init_context_svg
      Src: /src/gpac/src/compositor/offscreen_cache.c:358,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/offscreen_cache.c:365,1
    - Dst: drawable_check_texture_dirty
      Src: /src/gpac/src/compositor/offscreen_cache.c:375,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/offscreen_cache.c:377,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/offscreen_cache.c:380,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/offscreen_cache.c:381,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/offscreen_cache.c:383,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/offscreen_cache.c:387,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/offscreen_cache.c:388,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/offscreen_cache.c:389,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/offscreen_cache.c:389,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/offscreen_cache.c:389,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/compositor/offscreen_cache.c:390,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/offscreen_cache.c:400,1
    - Dst: mesh_from_path
      Src: /src/gpac/src/compositor/offscreen_cache.c:401,1
    - Dst: visual_3d_draw_from_context
      Src: /src/gpac/src/compositor/offscreen_cache.c:403,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/offscreen_cache.c:407,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/offscreen_cache.c:413,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 187
    argCount: 6
    argNames:
    - node
    - cache
    - tr_state
    - force_recompute
    - is_mpeg4
    - auto_fit_vp
    argTypes:
    - GF_Node*
    - GroupCache*
    - GF_TraverseState*
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 125
    functionDepth: 10
    functionLinenumber: 125
    functionLinenumberEnd: 416
    functionName: group_cache_traverse
    functionSourceFile: /src/gpac/src/compositor/offscreen_cache.c
    functionUses: 1
    functionsReached:
    - mesh_from_path
    - gf_node_dirty_get
    - gf_mx2d_add_scale
    - gf_node_get_log_name
    - MAX
    - drawable_check_texture_dirty
    - drawable_init_context_mpeg4
    - gf_mx2d_apply_rect
    - visual_3d_draw_from_context
    - new_mesh
    - GF_COL_ARGB_FIXED
    - gf_node_traverse
    - gf_sc_texture_push_image
    - gf_evg_surface_attach_to_buffer
    - GF_LOG
    - drawable_finalize_sort
    - gf_divfix
    - gf_rect_union
    - gf_evg_surface_delete
    - gf_mx2d_copy
    - gf_sc_texture_set_data
    - gf_mx2d_add_translation
    - INT2FIX
    - gf_mx2d_from_mx
    - group_cache_setup
    - gf_rect_pixelize
    - drawable_init_context_svg
    - gf_mx2d_pre_multiply
    - gf_mx2d_init
    - gf_evg_surface_new
    - drawable_reset_bounds
    linkageType: ''
    returnType: Bool
    signature: Bool group_cache_traverse(GF_Node *node, GroupCache *cache, GF_TraverseState
      *tr_state, Bool force_recompute, Bool is_mpeg4, Bool auto_fit_vp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/offscreen_cache.c:429,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/offscreen_cache.c:431,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/compositor/offscreen_cache.c:434,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/offscreen_cache.c:439,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/offscreen_cache.c:443,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/compositor/offscreen_cache.c:444,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/offscreen_cache.c:446,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/offscreen_cache.c:450,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/offscreen_cache.c:453,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - node
    - group
    - tr_state
    argTypes:
    - GF_Node*
    - GroupingNode2D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 422
    functionDepth: 2
    functionLinenumber: 422
    functionLinenumberEnd: 455
    functionName: group_cache_insert_entry
    functionSourceFile: /src/gpac/src/compositor/offscreen_cache.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_get
    - GF_LOG
    - gf_list_count
    - gf_node_get_log_name
    - gf_list_add
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void group_cache_insert_entry(GF_Node *node, GroupingNode2D *group,
      GF_TraverseState *tr_state)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/offscreen_cache.c:465,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/offscreen_cache.c:468,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/offscreen_cache.c:472,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/compositor/offscreen_cache.c:492,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/offscreen_cache.c:495,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/compositor/offscreen_cache.c:496,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/offscreen_cache.c:498,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/offscreen_cache.c:500,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/offscreen_cache.c:502,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/offscreen_cache.c:505,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 3
    argNames:
    - compositor
    - node
    - group
    argTypes:
    - GF_Compositor*
    - GF_Node*
    - GroupingNode2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 458
    functionDepth: 2
    functionLinenumber: 458
    functionLinenumberEnd: 508
    functionName: gf_cache_remove_entry
    functionSourceFile: /src/gpac/src/compositor/offscreen_cache.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - GF_LOG
    - FIX2FLT
    - gf_list_count
    - gf_node_get_log_name
    - gf_fatal_assert
    - gf_list_del_item
    - gf_list_rem
    linkageType: ''
    returnType: Bool
    signature: Bool gf_cache_remove_entry(GF_Compositor *compositor, GF_Node *node,
      GroupingNode2D *group)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/offscreen_cache.c:514,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/compositor/offscreen_cache.c:524,1
    - Dst: group_cache_draw
      Src: /src/gpac/src/compositor/offscreen_cache.c:526,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/offscreen_cache.c:540,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/compositor/offscreen_cache.c:540,1
    - Dst: group_cache_del
      Src: /src/gpac/src/compositor/offscreen_cache.c:545,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/offscreen_cache.c:550,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/compositor/offscreen_cache.c:550,1
    - Dst: gf_cache_remove_entry
      Src: /src/gpac/src/compositor/offscreen_cache.c:586,1
    - Dst: group_cache_del
      Src: /src/gpac/src/compositor/offscreen_cache.c:587,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/offscreen_cache.c:593,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/compositor/offscreen_cache.c:593,1
    - Dst: MAX
      Src: /src/gpac/src/compositor/offscreen_cache.c:606,1
    - Dst: gf_cache_remove_entry
      Src: /src/gpac/src/compositor/offscreen_cache.c:616,1
    - Dst: group_cache_del
      Src: /src/gpac/src/compositor/offscreen_cache.c:617,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/offscreen_cache.c:623,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/compositor/offscreen_cache.c:623,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/offscreen_cache.c:631,1
    - Dst: group_cache_new
      Src: /src/gpac/src/compositor/offscreen_cache.c:635,1
    - Dst: group_cache_traverse
      Src: /src/gpac/src/compositor/offscreen_cache.c:640,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 96
    argCount: 3
    argNames:
    - node
    - group
    - tr_state
    argTypes:
    - GF_Node*
    - GroupingNode2D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 512
    functionDepth: 13
    functionLinenumber: 512
    functionLinenumberEnd: 642
    functionName: group_2d_cache_traverse
    functionSourceFile: /src/gpac/src/compositor/offscreen_cache.c
    functionUses: 2
    functionsReached:
    - gf_cache_remove_entry
    - GF_LOG
    - gf_node_dirty_get
    - group_cache_draw
    - gf_node_get_log_name
    - gf_fatal_assert
    - gf_list_add
    - group_cache_traverse
    - MAX
    - group_cache_del
    - group_cache_new
    linkageType: ''
    returnType: Bool
    signature: Bool group_2d_cache_traverse(GF_Node *node, GroupingNode2D *group,
      GF_TraverseState *tr_state)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/compositor/offscreen_cache.c:665,1
    - Dst: ra_init
      Src: /src/gpac/src/compositor/offscreen_cache.c:668,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/offscreen_cache.c:679,1
    - Dst: gf_rect_union
      Src: /src/gpac/src/compositor/offscreen_cache.c:682,1
    - Dst: ra_union_rect
      Src: /src/gpac/src/compositor/offscreen_cache.c:691,1
    - Dst: ra_del
      Src: /src/gpac/src/compositor/offscreen_cache.c:708,1
    - Dst: ra_refresh
      Src: /src/gpac/src/compositor/offscreen_cache.c:712,1
    - Dst: ra_del
      Src: /src/gpac/src/compositor/offscreen_cache.c:717,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/offscreen_cache.c:720,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/offscreen_cache.c:720,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/offscreen_cache.c:731,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/offscreen_cache.c:731,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/offscreen_cache.c:744,1
    - Dst: group_cache_insert_entry
      Src: /src/gpac/src/compositor/offscreen_cache.c:756,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/offscreen_cache.c:758,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/offscreen_cache.c:760,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/compositor/offscreen_cache.c:760,1
    - Dst: group_cache_del
      Src: /src/gpac/src/compositor/offscreen_cache.c:780,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/offscreen_cache.c:784,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/offscreen_cache.c:789,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/compositor/offscreen_cache.c:790,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/offscreen_cache.c:792,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/offscreen_cache.c:797,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/offscreen_cache.c:800,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 87
    argCount: 5
    argNames:
    - node
    - group
    - tr_state
    - first_child
    - skip_first_child
    argTypes:
    - GF_Node*
    - GroupingNode2D*
    - GF_TraverseState*
    - DrawableContext*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 804
      start: 645
    functionDepth: 4
    functionLinenumber: 645
    functionLinenumberEnd: 804
    functionName: group_cache_compute_stats
    functionSourceFile: /src/gpac/src/compositor/offscreen_cache.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - ra_init
    - GF_COL_A
    - group_cache_insert_entry
    - GF_LOG
    - gf_rect_union
    - ra_del
    - FIX2INT
    - gf_node_get_log_name
    - ra_refresh
    - gf_list_add
    - gf_list_del_item
    - ra_union_rect
    - gf_list_count
    - gf_node_get_parent
    - group_cache_del
    - FIX2FLT
    linkageType: ''
    returnType: Bool
    signature: Bool group_cache_compute_stats(GF_Node *node, GroupingNode2D *group,
      GF_TraverseState *tr_state, DrawableContext *first_child, Bool skip_first_child)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: group_cache_compute_stats
      Src: /src/gpac/src/compositor/offscreen_cache.c:828,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/offscreen_cache.c:830,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/offscreen_cache.c:841,1
    - Dst: gf_cache_remove_entry
      Src: /src/gpac/src/compositor/offscreen_cache.c:849,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/offscreen_cache.c:852,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/offscreen_cache.c:854,1
    - Dst: gf_cache_remove_entry
      Src: /src/gpac/src/compositor/offscreen_cache.c:858,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/offscreen_cache.c:859,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 33
    argCount: 6
    argNames:
    - node
    - group
    - tr_state
    - first_child
    - skip_first_child
    - last_cache_idx
    argTypes:
    - GF_Node*
    - GroupingNode2D*
    - GF_TraverseState*
    - DrawableContext*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 862
      start: 807
    functionDepth: 5
    functionLinenumber: 807
    functionLinenumberEnd: 862
    functionName: group_2d_cache_evaluate
    functionSourceFile: /src/gpac/src/compositor/offscreen_cache.c
    functionUses: 2
    functionsReached:
    - gf_list_get
    - INT2FIX
    - gf_cache_remove_entry
    - group_cache_compute_stats
    - GF_LOG
    - gf_list_count
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void group_2d_cache_evaluate(GF_Node *node, GroupingNode2D *group,
      GF_TraverseState *tr_state, DrawableContext *first_child, Bool skip_first_child,
      u32 last_cache_idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_cache_remove_entry
      Src: /src/gpac/src/compositor/offscreen_cache.c:868,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - compositor
    - memory
    argTypes:
    - GF_Compositor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 873
      start: 864
    functionDepth: 3
    functionLinenumber: 864
    functionLinenumberEnd: 873
    functionName: compositor_set_cache_memory
    functionSourceFile: /src/gpac/src/compositor/offscreen_cache.c
    functionUses: 0
    functionsReached:
    - gf_cache_remove_entry
    linkageType: ''
    returnType: void
    signature: void compositor_set_cache_memory(GF_Compositor *compositor, u32 memory)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_get_compositor
      Src: /src/gpac/src/compositor/offscreen_cache.c:880,1
    - Dst: gf_cache_remove_entry
      Src: /src/gpac/src/compositor/offscreen_cache.c:881,1
    - Dst: group_cache_del
      Src: /src/gpac/src/compositor/offscreen_cache.c:886,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - node
    - group
    argTypes:
    - GF_Node*
    - GroupingNode2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 888
      start: 877
    functionDepth: 4
    functionLinenumber: 877
    functionLinenumberEnd: 888
    functionName: group_2d_destroy_svg
    functionSourceFile: /src/gpac/src/compositor/offscreen_cache.c
    functionUses: 0
    functionsReached:
    - gf_sc_get_compositor
    - group_cache_del
    - gf_cache_remove_entry
    linkageType: ''
    returnType: void
    signature: void group_2d_destroy_svg(GF_Node *node, GroupingNode2D *group)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: group_2d_destroy_svg
      Src: /src/gpac/src/compositor/offscreen_cache.c:892,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/offscreen_cache.c:893,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - node
    - group
    argTypes:
    - GF_Node*
    - GroupingNode2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 894
      start: 890
    functionDepth: 5
    functionLinenumber: 890
    functionLinenumberEnd: 894
    functionName: group_2d_destroy
    functionSourceFile: /src/gpac/src/compositor/offscreen_cache.c
    functionUses: 0
    functionsReached:
    - group_2d_destroy_svg
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void group_2d_destroy(GF_Node *node, GroupingNode2D *group)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:51,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:52,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:54,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:55,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:57,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:59,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:60,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:62,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:63,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:65,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 3
    argNames:
    - n
    - tr_state
    - force_traverse
    argTypes:
    - GF_Node*
    - GF_TraverseState*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 46
    functionDepth: 6
    functionLinenumber: 46
    functionLinenumberEnd: 67
    functionName: l2d_CheckBindables
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layer_2d.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_node_event_out
    - gf_node_traverse
    - gf_node_unregister
    - gf_node_register
    linkageType: ''
    returnType: void
    signature: void l2d_CheckBindables(GF_Node *n, GF_TraverseState *tr_state, Bool
      force_traverse)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:89,1
    - Dst: BindableStackDelete
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:93,1
    - Dst: BindableStackDelete
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:94,1
    - Dst: group_2d_destroy
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:95,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:96,1
    - Dst: l2d_CheckBindables
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:118,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:120,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:122,1
    - Dst: visual_get_size_info
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:126,1
    - Dst: gf_rect_center
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:130,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:142,1
    - Dst: compositor_2d_update_clipper
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:143,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:145,1
    - Dst: visual_3d_reset_clipper_2d
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:149,1
    - Dst: visual_3d_set_clipper_2d
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:151,1
    - Dst: gf_bbox_from_rect
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:156,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:157,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:164,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:169,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:173,1
    - Dst: visual_3d_flush_contexts
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:175,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:178,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:178,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:179,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:182,1
    - Dst: visual_3d_reset_clipper_2d
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:184,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:189,1
    - Dst: visual_3d_set_clipper_2d
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:190,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:195,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:201,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:206,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:209,1
    - Dst: gf_rect_intersect
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:211,1
    - Dst: gf_rect_pixelize
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:219,1
    - Dst: gf_irect_intersect
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:220,1
    - Dst: Bindable_GetIsBound
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:224,1
    - Dst: b2d_get_context
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:227,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:228,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:235,1
    - Dst: visual_2d_get_drawable_context
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:239,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:241,1
    - Dst: drawable_check_bounds
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:248,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:257,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:266,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:266,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:272,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:275,1
    - Dst: gf_sc_pick_in_clipper
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:281,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:287,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:290,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:292,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:293,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:295,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:301,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:304,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:306,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:307,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:309,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:316,1
    - Dst: gf_bbox_from_rect
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:320,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:326,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:332,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:350,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 191
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 69
    functionDepth: 7
    functionLinenumber: 69
    functionLinenumberEnd: 352
    functionName: TraverseLayer2D
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layer_2d.c
    functionUses: 0
    functionsReached:
    - gf_free
    - visual_2d_get_drawable_context
    - gf_node_get_class_name
    - gf_bbox_from_rect
    - visual_3d_set_clipper_2d
    - gf_mx2d_init
    - gf_list_count
    - gf_sc_pick_in_clipper
    - gf_mx_copy
    - group_2d_destroy
    - visual_3d_reset_clipper_2d
    - gf_list_get
    - gf_list_new
    - gf_assert
    - visual_get_size_info
    - gf_mx2d_apply_rect
    - gf_sc_invalidate
    - compositor_2d_update_clipper
    - gf_node_get_private
    - gf_node_traverse
    - GF_LOG
    - gf_rect_center
    - Bindable_GetIsBound
    - drawable_check_bounds
    - gf_mx2d_copy
    - visual_3d_flush_contexts
    - gf_list_del
    - gf_rect_intersect
    - l2d_CheckBindables
    - BindableStackDelete
    - gf_rect_pixelize
    - b2d_get_context
    - group_2d_traverse
    - gf_irect_intersect
    linkageType: ''
    returnType: void
    signature: void TraverseLayer2D(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:357,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:359,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:363,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:364,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:367,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_layer_2d.c:368,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 354
    functionDepth: 2
    functionLinenumber: 354
    functionLinenumberEnd: 369
    functionName: compositor_init_layer2d
    functionSourceFile: /src/gpac/src/compositor/mpeg4_layer_2d.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_layer2d(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_forward_gf_event
      Src: /src/gpac/src/compositor/compositor.c:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - compositor
    - evt
    argTypes:
    - GF_Compositor*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: gf_sc_send_event
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 13
    functionsReached:
    - gf_filter_forward_gf_event
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_send_event(GF_Compositor *compositor, GF_Event *evt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:53,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - compositor
    - state
    argTypes:
    - GF_Compositor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 69
    functionName: gf_sc_next_frame_state
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 9
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void gf_sc_next_frame_state(GF_Compositor *compositor, u32 state)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:77,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/compositor.c:86,1
    - Dst: GF_Compositor*::video_out::SetFullScreen
      Src: /src/gpac/src/compositor/compositor.c:92,1
    - Dst: GF_Compositor*::video_out::SetFullScreen
      Src: /src/gpac/src/compositor/compositor.c:94,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/compositor/compositor.c:96,1
    - Dst: memset
      Src: /src/gpac/src/compositor/compositor.c:102,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/compositor.c:106,1
    - Dst: GF_Compositor*::video_out::SetFullScreen
      Src: /src/gpac/src/compositor/compositor.c:108,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:110,1
    - Dst: gf_sc_reset_graphics
      Src: /src/gpac/src/compositor/compositor.c:113,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 72
    functionDepth: 2
    functionLinenumber: 72
    functionLinenumberEnd: 114
    functionName: gf_sc_set_fullscreen
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_sc_reset_graphics
    - gf_sc_send_event
    - GF_LOG
    - GF_Compositor*::video_out::SetFullScreen
    - memset
    - gf_mx_v
    linkageType: ''
    returnType: void
    signature: void gf_sc_set_fullscreen(GF_Compositor *compositor)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/compositor.c:140,1
    - Dst: GF_Compositor*::video_out::ProcessEvent
      Src: /src/gpac/src/compositor/compositor.c:155,1
    - Dst: gf_opengl_init
      Src: /src/gpac/src/compositor/compositor.c:158,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/compositor.c:165,1
    - Dst: gf_sc_set_size
      Src: /src/gpac/src/compositor/compositor.c:171,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/compositor.c:176,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:183,1
    - Dst: GF_Compositor*::video_out::ProcessEvent
      Src: /src/gpac/src/compositor/compositor.c:203,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:218,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:223,1
    - Dst: gf_sc_set_fullscreen
      Src: /src/gpac/src/compositor/compositor.c:237,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:238,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:245,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/compositor.c:245,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:246,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/compositor.c:246,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:247,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/compositor.c:247,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:255,1
    - Dst: GF_Compositor*::video_out::ProcessEvent
      Src: /src/gpac/src/compositor/compositor.c:257,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:263,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 103
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 123
    functionDepth: 3
    functionLinenumber: 123
    functionLinenumberEnd: 265
    functionName: gf_sc_reconfig_task
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_opengl_init
    - gf_sc_send_event
    - PROP_UINT
    - gf_sc_set_size
    - GF_LOG
    - gf_sc_set_fullscreen
    - gf_sc_lock
    - gf_sc_next_frame_state
    - memset
    - GF_Compositor*::video_out::ProcessEvent
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: void
    signature: void gf_sc_reconfig_task(GF_Compositor *compositor)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/compositor/compositor.c:270,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/compositor/compositor.c:271,1
    - Dst: gf_sc_release_screen_buffer
      Src: /src/gpac/src/compositor/compositor.c:274,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - filter
    - pid
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 268
    functionDepth: 1
    functionLinenumber: 268
    functionLinenumberEnd: 281
    functionName: gf_sc_frame_ifce_done
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_sc_release_screen_buffer
    - gf_filter_pck_get_frame_interface
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void gf_sc_frame_ifce_done(GF_Filter *filter, GF_FilterPid *pid, GF_FilterPacket
      *pck)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_get_screen_buffer
      Src: /src/gpac/src/compositor/compositor.c:291,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - frame_ifce
    - plane_idx
    - outPlane
    - outStride
    argTypes:
    - GF_FilterFrameInterface*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 283
    functionDepth: 1
    functionLinenumber: 283
    functionLinenumberEnd: 296
    functionName: gf_sc_frame_ifce_get_plane
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_sc_get_screen_buffer
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sc_frame_ifce_get_plane(GF_FilterFrameInterface *frame_ifce,
      u32 plane_idx, const u8 **outPlane, u32 *outStride)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: compositor_3d_get_fbo_pixfmt
      Src: /src/gpac/src/compositor/compositor.c:304,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/compositor.c:307,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 5
    argNames:
    - frame_ifce
    - plane_idx
    - gl_tex_format
    - gl_tex_id
    - texcoordmatrix
    argTypes:
    - GF_FilterFrameInterface*
    - u32
    - u32*
    - u32*
    - GF_Matrix_unexposed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 298
    functionDepth: 1
    functionLinenumber: 298
    functionLinenumberEnd: 309
    functionName: gf_sc_frame_ifce_get_gl_texture
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - compositor_3d_get_fbo_pixfmt
    - gf_mx_add_scale
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sc_frame_ifce_get_gl_texture(GF_FilterFrameInterface *frame_ifce,
      u32 plane_idx, u32 *gl_tex_format, u32 *gl_tex_id, GF_Matrix_unexposed * texcoordmatrix)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:317,1
    - Dst: GF_Compositor*::video_out::Flush
      Src: /src/gpac/src/compositor/compositor.c:321,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:323,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - compositor
    - locked
    argTypes:
    - GF_Compositor*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 312
    functionDepth: 1
    functionLinenumber: 312
    functionLinenumberEnd: 324
    functionName: gf_sc_flush_video
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - GF_Compositor*::video_out::Flush
    - gf_sc_lock
    linkageType: ''
    returnType: void
    signature: void gf_sc_flush_video(GF_Compositor *compositor, Bool locked)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_ar_send_or_reconfig
      Src: /src/gpac/src/compositor/compositor.c:333,1
    - Dst: gf_sc_flush_video
      Src: /src/gpac/src/compositor/compositor.c:341,1
    - Dst: gf_sc_render_frame
      Src: /src/gpac/src/compositor/compositor.c:345,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 3
    argNames:
    - compositor
    - no_flush
    - ms_till_next
    argTypes:
    - GF_Compositor*
    - Bool
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 328
    functionDepth: 2
    functionLinenumber: 328
    functionLinenumberEnd: 359
    functionName: gf_sc_draw_frame
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_sc_render_frame
    - gf_sc_ar_send_or_reconfig
    - gf_sc_flush_video
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_draw_frame(GF_Compositor *compositor, Bool no_flush,
      s32 *ms_till_next)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_try_lock
      Src: /src/gpac/src/compositor/compositor.c:367,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/compositor.c:369,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 363
    functionDepth: 0
    functionLinenumber: 363
    functionLinenumberEnd: 371
    functionName: gf_sc_reset_graphics
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 4
    functionsReached:
    - gf_mx_v
    - gf_mx_try_lock
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_reset_graphics(GF_Compositor *compositor)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 373
    functionDepth: 0
    functionLinenumber: 373
    functionLinenumberEnd: 378
    functionName: gf_sc_reset_framerate
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_sc_reset_framerate(GF_Compositor *compositor)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - vout
    - os_handle
    - os_display
    - init_flags
    argTypes:
    - struct _video_out*
    - void*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 390
    functionDepth: 0
    functionLinenumber: 390
    functionLinenumberEnd: 393
    functionName: nullvout_setup
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nullvout_setup(struct _video_out *vout, void *os_handle, void
      *os_display, u32 init_flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - vout
    argTypes:
    - struct _video_out*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 394
    functionDepth: 0
    functionLinenumber: 394
    functionLinenumberEnd: 397
    functionName: nullvout_shutdown
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void nullvout_shutdown(struct _video_out *vout)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - vout
    - dest
    argTypes:
    - struct _video_out*
    - GF_Window*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 398
    functionDepth: 0
    functionLinenumber: 398
    functionLinenumberEnd: 401
    functionName: nullvout_flush
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nullvout_flush(struct _video_out *vout, GF_Window *dest)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - vout
    - fs_on
    - new_disp_width
    - new_disp_height
    argTypes:
    - struct _video_out*
    - Bool
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 402
    functionDepth: 0
    functionLinenumber: 402
    functionLinenumberEnd: 405
    functionName: nullvout_fullscreen
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nullvout_fullscreen(struct _video_out *vout, Bool fs_on, u32
      *new_disp_width, u32 *new_disp_height)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - vout
    - event
    argTypes:
    - struct _video_out*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 406
    functionDepth: 0
    functionLinenumber: 406
    functionLinenumberEnd: 409
    functionName: nullvout_evt
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nullvout_evt(struct _video_out *vout, GF_Event *event)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - vout
    - video_info
    - do_lock
    argTypes:
    - struct _video_out*
    - GF_VideoSurface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 410
    functionDepth: 0
    functionLinenumber: 410
    functionLinenumberEnd: 413
    functionName: nullvout_lock
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nullvout_lock(struct _video_out *vout, GF_VideoSurface *video_info,
      Bool do_lock)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - vout
    - video_src
    - src_wnd
    - dst_wnd
    - overlay_type
    argTypes:
    - struct _video_out*
    - GF_VideoSurface*
    - GF_Window*
    - GF_Window*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 414
    functionDepth: 0
    functionLinenumber: 414
    functionLinenumberEnd: 417
    functionName: nullvout_blit
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nullvout_blit(struct _video_out *vout, GF_VideoSurface *video_src,
      GF_Window *src_wnd, GF_Window *dst_wnd, u32 overlay_type)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:441,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/compositor.c:441,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:442,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/compositor.c:442,1
    - Dst: compositor_3d_setup_fbo
      Src: /src/gpac/src/compositor/compositor.c:448,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - vout
    - evt
    argTypes:
    - struct _video_out*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 430
    functionDepth: 2
    functionLinenumber: 430
    functionLinenumberEnd: 452
    functionName: gl_vout_evt
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_property
    - PROP_UINT
    - compositor_3d_setup_fbo
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gl_vout_evt(struct _video_out *vout, GF_Event *evt)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/compositor.c:479,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/compositor/compositor.c:482,1
    - Dst: gf_filter_pck_new_clone
      Src: /src/gpac/src/compositor/compositor.c:485,1
    - Dst: gf_pixel_get_bytes_per_pixel
      Src: /src/gpac/src/compositor/compositor.c:494,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 3
    argNames:
    - vout
    - vi
    - do_lock
    argTypes:
    - struct _video_out*
    - GF_VideoSurface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 465
    functionDepth: 1
    functionLinenumber: 465
    functionLinenumberEnd: 499
    functionName: rawvout_lock
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_clone
    - memset
    - gf_pixel_get_size_info
    - gf_pixel_get_bytes_per_pixel
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rawvout_lock(struct _video_out *vout, GF_VideoSurface *vi, Bool
      do_lock)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/compositor/compositor.c:515,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:516,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/compositor/compositor.c:516,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:521,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/compositor.c:521,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:522,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/compositor.c:522,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:523,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/compositor.c:523,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/compositor.c:528,1
    - Dst: memset
      Src: /src/gpac/src/compositor/compositor.c:531,1
    - Dst: compositor_3d_setup_fbo
      Src: /src/gpac/src/compositor/compositor.c:535,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 2
    argNames:
    - vout
    - evt
    argTypes:
    - struct _video_out*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 540
      start: 501
    functionDepth: 2
    functionLinenumber: 501
    functionLinenumberEnd: 540
    functionName: rawvout_evt
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - PROP_UINT
    - gf_pixel_fmt_name
    - GF_LOG
    - compositor_3d_setup_fbo
    - memset
    - gf_pixel_get_size_info
    - gf_filter_pid_set_property
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rawvout_evt(struct _video_out *vout, GF_Event *evt)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/compositor/compositor.c:565,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/compositor/compositor.c:569,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/compositor/compositor.c:585,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/compositor/compositor.c:592,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:593,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/compositor.c:593,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:594,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/compositor.c:594,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:595,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/compositor.c:595,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/compositor.c:601,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 42
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 553
    functionDepth: 1
    functionLinenumber: 553
    functionLinenumberEnd: 605
    functionName: gf_sc_setup_passthrough
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - gf_pixel_get_size_info
    - gf_filter_pck_get_timescale
    - gf_filter_pid_set_property
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void gf_sc_setup_passthrough(GF_Compositor *compositor)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/compositor.c:618,1
    - Dst: nullvout_setup
      Src: /src/gpac/src/compositor/compositor.c:619,1
    - Dst: nullvout_fullscreen
      Src: /src/gpac/src/compositor/compositor.c:620,1
    - Dst: nullvout_evt
      Src: /src/gpac/src/compositor/compositor.c:621,1
    - Dst: nullvout_lock
      Src: /src/gpac/src/compositor/compositor.c:622,1
    - Dst: nullvout_blit
      Src: /src/gpac/src/compositor/compositor.c:623,1
    - Dst: gf_filter_request_opengl
      Src: /src/gpac/src/compositor/compositor.c:627,1
    - Dst: gf_sc_load_opengl_extensions
      Src: /src/gpac/src/compositor/compositor.c:630,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:634,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/compositor.c:645,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/compositor.c:646,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/compositor.c:649,1
    - Dst: atoi
      Src: /src/gpac/src/compositor/compositor.c:651,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:655,1
    - Dst: gf_sc_load_opengl_extensions
      Src: /src/gpac/src/compositor/compositor.c:659,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:661,1
    - Dst: gf_module_load
      Src: /src/gpac/src/compositor/compositor.c:669,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:672,1
    - Dst: gpac_force_step_mode
      Src: /src/gpac/src/compositor/compositor.c:679,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/compositor.c:685,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/compositor.c:686,1
    - Dst: GF_Compositor*::video_out::Setup
      Src: /src/gpac/src/compositor/compositor.c:691,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:693,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/compositor/compositor.c:693,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/compositor.c:696,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/compositor/compositor.c:697,1
    - Dst: memset
      Src: /src/gpac/src/compositor/compositor.c:701,1
    - Dst: GF_Compositor*::video_out::ProcessEvent
      Src: /src/gpac/src/compositor/compositor.c:712,1
    - Dst: gf_filter_register_opengl_provider
      Src: /src/gpac/src/compositor/compositor.c:713,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 78
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 715
      start: 607
    functionDepth: 2
    functionLinenumber: 607
    functionLinenumberEnd: 715
    functionName: gf_sc_load_driver
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - GF_Compositor*::video_out::Setup
    - nullvout_fullscreen
    - gf_opts_set_key
    - memset
    - nullvout_evt
    - gf_opts_get_key
    - atoi
    - gf_sys_is_cov_mode
    - gf_filter_register_opengl_provider
    - gf_module_load
    - GF_Compositor*::video_out::ProcessEvent
    - gpac_force_step_mode
    - sscanf
    - nullvout_blit
    - GF_LOG
    - gf_sc_load_opengl_extensions
    - gf_error_to_string
    - gf_filter_request_opengl
    - nullvout_setup
    - nullvout_lock
    - strcmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sc_load_driver(GF_Compositor *compositor)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_load_driver
      Src: /src/gpac/src/compositor/compositor.c:735,1
    - Dst: gf_filter_request_opengl
      Src: /src/gpac/src/compositor/compositor.c:745,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 31
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 718
    functionDepth: 3
    functionLinenumber: 718
    functionLinenumberEnd: 751
    functionName: gf_sc_check_video_driver
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_filter_request_opengl
    - gf_sc_load_driver
    linkageType: ''
    returnType: void
    signature: void gf_sc_check_video_driver(GF_Compositor *compositor)
  - BBCount: 50
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_new
      Src: /src/gpac/src/compositor/compositor.c:759,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:763,1
    - Dst: gf_modules_count
      Src: /src/gpac/src/compositor/compositor.c:765,1
    - Dst: gf_modules_load
      Src: /src/gpac/src/compositor/compositor.c:766,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/compositor.c:767,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/compositor.c:772,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/compositor.c:773,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/compositor.c:774,1
    - Dst: atoi
      Src: /src/gpac/src/compositor/compositor.c:775,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/compositor.c:789,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/compositor/compositor.c:790,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/compositor/compositor.c:795,1
    - Dst: gf_sc_load_driver
      Src: /src/gpac/src/compositor/compositor.c:801,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:809,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:811,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/compositor.c:814,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:817,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:819,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:822,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:825,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:827,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:829,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:831,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:833,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:835,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:838,1
    - Dst: visual_new
      Src: /src/gpac/src/compositor/compositor.c:842,1
    - Dst: compositor_2d_init_callbacks
      Src: /src/gpac/src/compositor/compositor.c:849,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/compositor.c:859,1
    - Dst: drawable_new
      Src: /src/gpac/src/compositor/compositor.c:864,1
    - Dst: gf_node_new
      Src: /src/gpac/src/compositor/compositor.c:867,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/compositor.c:869,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/compositor.c:870,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/compositor.c:879,1
    - Dst: mesh_new_unit_bbox
      Src: /src/gpac/src/compositor/compositor.c:881,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/compositor.c:882,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:887,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:889,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:891,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:900,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:902,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:904,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/compositor/compositor.c:906,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:910,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:912,1
    - Dst: gf_sc_ar_load
      Src: /src/gpac/src/compositor/compositor.c:918,1
    - Dst: gf_sc_reset_framerate
      Src: /src/gpac/src/compositor/compositor.c:920,1
    - Dst: gf_filter_get_font_manager
      Src: /src/gpac/src/compositor/compositor.c:921,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:924,1
    - Dst: gf_th_id
      Src: /src/gpac/src/compositor/compositor.c:929,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:932,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:934,1
    - Dst: gf_modules_count
      Src: /src/gpac/src/compositor/compositor.c:936,1
    - Dst: gf_modules_load
      Src: /src/gpac/src/compositor/compositor.c:937,1
    - Dst: GF_CompositorExt*::process
      Src: /src/gpac/src/compositor/compositor.c:940,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/compositor/compositor.c:941,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/compositor.c:944,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/compositor.c:946,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:950,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:951,1
    - Dst: gf_sc_recompute_ar
      Src: /src/gpac/src/compositor/compositor.c:960,1
    - Dst: gf_sc_load_opengl_extensions
      Src: /src/gpac/src/compositor/compositor.c:964,1
    - Dst: gf_sc_reload_config
      Src: /src/gpac/src/compositor/compositor.c:967,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:970,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 188
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 972
      start: 754
    functionDepth: 4
    functionLinenumber: 754
    functionLinenumberEnd: 972
    functionName: gf_sc_load
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_opts_set_key
    - gf_filter_get_font_manager
    - GF_SAFEALLOC
    - gf_list_count
    - gf_opts_get_key
    - atoi
    - gf_node_set_callback_function
    - gf_mx_new
    - compositor_2d_init_callbacks
    - gf_sc_reset_framerate
    - gf_list_new
    - gf_sc_reload_config
    - gf_mx_init
    - new_mesh
    - drawable_new
    - gf_list_add
    - gf_node_register
    - gf_sc_recompute_ar
    - gf_sc_load_driver
    - gf_modules_count
    - mesh_new_unit_bbox
    - sscanf
    - GF_LOG
    - gf_sc_ar_load
    - gf_modules_load
    - gf_modules_close_interface
    - GF_CompositorExt*::process
    - gf_node_new
    - gf_sc_load_opengl_extensions
    - gf_list_del
    - gf_th_id
    - visual_new
    - gf_opts_get_bool
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sc_load(GF_Compositor *compositor)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:979,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:981,1
    - Dst: compositor_2d_reset_gl_auto
      Src: /src/gpac/src/compositor/compositor.c:984,1
    - Dst: gf_sc_texture_cleanup_hw
      Src: /src/gpac/src/compositor/compositor.c:986,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:989,1
    - Dst: GF_Compositor*::video_out::Shutdown
      Src: /src/gpac/src/compositor/compositor.c:990,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/compositor/compositor.c:991,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:993,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/compositor.c:996,1
    - Dst: drawable_del_ex
      Src: /src/gpac/src/compositor/compositor.c:997,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor.c:999,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor.c:1000,1
    - Dst: visual_del
      Src: /src/gpac/src/compositor/compositor.c:1002,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1003,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1004,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1005,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1006,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1007,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1008,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1009,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1010,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1011,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1012,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1015,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1016,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1018,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor.c:1020,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/compositor.c:1024,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor.c:1026,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor.c:1027,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor.c:1029,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:1031,1
    - Dst: gf_sc_ar_del
      Src: /src/gpac/src/compositor/compositor.c:1033,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:1038,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:1039,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/compositor/compositor.c:1040,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1042,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/compositor/compositor.c:1044,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:1045,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:1046,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/compositor.c:1047,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor.c:1048,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:1050,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:1051,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/compositor.c:1052,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor.c:1053,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/compositor.c:1056,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/compositor/compositor.c:1057,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1059,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1060,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1063,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1064,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1067,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1068,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1069,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1070,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1071,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1072,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:1076,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:1077,1
    - Dst: GF_CompositorExt*::process
      Src: /src/gpac/src/compositor/compositor.c:1078,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:1085,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:1086,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/compositor/compositor.c:1087,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1089,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1090,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:1092,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/compositor/compositor.c:1093,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor.c:1094,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:1095,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 111
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1096
      start: 974
    functionDepth: 3
    functionLinenumber: 974
    functionLinenumberEnd: 1096
    functionName: gf_sc_unload
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - gf_node_unregister
    - visual_del
    - gf_list_get
    - GF_Compositor*::video_out::Shutdown
    - gf_sc_ar_del
    - gf_mx_p
    - GF_LOG
    - gf_modules_close_interface
    - drawable_del_ex
    - GF_CompositorExt*::process
    - gf_mx_v
    - gf_sc_texture_cleanup_hw
    - gf_sc_lock
    - gf_list_del
    - mesh_free
    - compositor_2d_reset_gl_auto
    - gf_list_rem
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void gf_sc_unload(GF_Compositor *compositor)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_reset_framerate
      Src: /src/gpac/src/compositor/compositor.c:1108,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:1111,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/compositor.c:1111,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - compositor
    - fps
    argTypes:
    - GF_Compositor*
    - GF_Fraction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1115
      start: 1098
    functionDepth: 1
    functionLinenumber: 1098
    functionLinenumberEnd: 1115
    functionName: gf_sc_set_fps
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - gf_sc_reset_framerate
    - gf_filter_pid_set_property
    - PROP_UINT
    linkageType: ''
    returnType: void
    signature: void gf_sc_set_fps(GF_Compositor *compositor, GF_Fraction fps)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_ar_control
      Src: /src/gpac/src/compositor/compositor.c:1129,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 16
    argCount: 2
    argNames:
    - compositor
    - PlayState
    argTypes:
    - GF_Compositor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1132
      start: 1117
    functionDepth: 1
    functionLinenumber: 1117
    functionLinenumberEnd: 1132
    functionName: gf_sc_set_play_state
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_sc_ar_control
    linkageType: ''
    returnType: void
    signature: void gf_sc_set_play_state(GF_Compositor *compositor, u32 PlayState)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_ar_get_clock
      Src: /src/gpac/src/compositor/compositor.c:1138,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1141
      start: 1134
    functionDepth: 1
    functionLinenumber: 1134
    functionLinenumberEnd: 1141
    functionName: gf_sc_get_clock
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 5
    functionsReached:
    - gf_sc_ar_get_clock
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_get_clock(GF_Compositor *compositor)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 4
    argNames:
    - compositor
    - Width
    - Height
    - force_size
    argTypes:
    - GF_Compositor*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1163
      start: 1143
    functionDepth: 0
    functionLinenumber: 1143
    functionLinenumberEnd: 1163
    functionName: gf_sc_set_scene_size
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_set_scene_size(GF_Compositor *compositor, u32 Width,
      u32 Height, Bool force_size)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/compositor.c:1185,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/compositor.c:1185,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/compositor.c:1188,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/compositor.c:1188,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 2
    argNames:
    - compositor
    - length
    argTypes:
    - GF_Compositor*
    - SVG_Length*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1199
      start: 1166
    functionDepth: 1
    functionLinenumber: 1166
    functionLinenumberEnd: 1199
    functionName: gf_sc_svg_convert_length_to_display
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_svg_convert_length_to_display(GF_Compositor *compositor,
      SVG_Length *length)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_muldiv
      Src: /src/gpac/src/compositor/compositor.c:1204,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/compositor/compositor.c:1205,1
    - Dst: compositor_2d_set_user_transform
      Src: /src/gpac/src/compositor/compositor.c:1211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - compositor
    - scaleX
    - scaleY
    argTypes:
    - GF_Compositor*
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1212
      start: 1202
    functionDepth: 11
    functionLinenumber: 1202
    functionLinenumberEnd: 1212
    functionName: compositor_set_ar_scale
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - gf_muldiv
    - compositor_2d_set_user_transform
    linkageType: ''
    returnType: void
    signature: void compositor_set_ar_scale(GF_Compositor *compositor, Fixed scaleX,
      Fixed scaleY)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/compositor.c:1224,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor.c:1231,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/compositor/compositor.c:1237,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/compositor.c:1241,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/compositor.c:1242,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1246,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1247,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:1249,1
    - Dst: compositor_3d_delete_fbo
      Src: /src/gpac/src/compositor/compositor.c:1251,1
    - Dst: memset
      Src: /src/gpac/src/compositor/compositor.c:1254,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:1256,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:1257,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:1259,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/compositor.c:1262,1
    - Dst: gf_cmx_init
      Src: /src/gpac/src/compositor/compositor.c:1263,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/compositor.c:1278,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/compositor.c:1291,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/compositor.c:1292,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/compositor.c:1295,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/compositor.c:1297,1
    - Dst: compositor_set_ar_scale
      Src: /src/gpac/src/compositor/compositor.c:1302,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 54
    argCount: 2
    argNames:
    - compositor
    - has_scene
    argTypes:
    - GF_Compositor*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1303
      start: 1214
    functionDepth: 12
    functionLinenumber: 1214
    functionLinenumberEnd: 1303
    functionName: gf_sc_reset
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_assert
    - gf_list_reset
    - gf_mx2d_init
    - gf_evg_surface_delete
    - compositor_3d_delete_fbo
    - memset
    - gf_list_enum
    - gf_cmx_init
    - gf_list_del
    - compositor_set_ar_scale
    linkageType: ''
    returnType: void
    signature: void gf_sc_reset(GF_Compositor *compositor, Bool has_scene)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:1312,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:1314,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:1316,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:1320,1
    - Dst: gf_sc_ar_reset
      Src: /src/gpac/src/compositor/compositor.c:1321,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:1324,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/compositor/compositor.c:1325,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:1326,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:1327,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/compositor.c:1328,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor.c:1329,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/compositor.c:1331,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:1333,1
    - Dst: gf_sc_reset
      Src: /src/gpac/src/compositor/compositor.c:1335,1
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/compositor.c:1341,1
    - Dst: gf_sg_get_scene_size_info
      Src: /src/gpac/src/compositor/compositor.c:1356,1
    - Dst: gf_scene_is_dynamic_scene
      Src: /src/gpac/src/compositor/compositor.c:1361,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/compositor.c:1377,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/compositor.c:1379,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/compositor/compositor.c:1386,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/compositor/compositor.c:1388,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/compositor/compositor.c:1390,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/compositor.c:1400,1
    - Dst: gf_sc_svg_convert_length_to_display
      Src: /src/gpac/src/compositor/compositor.c:1400,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/compositor.c:1403,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/compositor.c:1404,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/compositor.c:1410,1
    - Dst: gf_sc_svg_convert_length_to_display
      Src: /src/gpac/src/compositor/compositor.c:1410,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/compositor.c:1413,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/compositor.c:1414,1
    - Dst: gf_sc_focus_switch_ring
      Src: /src/gpac/src/compositor/compositor.c:1423,1
    - Dst: gf_scene_get_keynav
      Src: /src/gpac/src/compositor/compositor.c:1427,1
    - Dst: gf_sc_change_key_navigator
      Src: /src/gpac/src/compositor/compositor.c:1428,1
    - Dst: gf_sc_set_scene_size
      Src: /src/gpac/src/compositor/compositor.c:1439,1
    - Dst: gf_sc_set_size
      Src: /src/gpac/src/compositor/compositor.c:1459,1
    - Dst: gf_sc_ar_reset
      Src: /src/gpac/src/compositor/compositor.c:1463,1
    - Dst: gf_sc_reset_framerate
      Src: /src/gpac/src/compositor/compositor.c:1467,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:1469,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:1471,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/compositor.c:1485,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/compositor.c:1489,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 134
    argCount: 2
    argNames:
    - compositor
    - scene_graph
    argTypes:
    - GF_Compositor*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1492
      start: 1305
    functionDepth: 13
    functionLinenumber: 1305
    functionLinenumberEnd: 1492
    functionName: gf_sc_set_scene
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 4
    functionsReached:
    - gf_free
    - gf_node_get_tag
    - gf_sc_svg_convert_length_to_display
    - gf_sc_set_size
    - gf_scene_is_dynamic_scene
    - gf_scene_get_keynav
    - gf_list_count
    - gf_sc_reset
    - gf_sc_reset_framerate
    - gf_list_get
    - gf_sc_send_event
    - gf_sc_focus_switch_ring
    - gf_sc_set_scene_size
    - gf_sg_get_root_node
    - gf_mx_p
    - gf_node_get_attribute_by_tag
    - GF_LOG
    - gf_mx_v
    - gf_sc_lock
    - gf_sg_get_private
    - gf_sc_change_key_navigator
    - gf_sc_ar_reset
    - gf_sc_next_frame_state
    - FIX2INT
    - gf_sg_get_scene_size_info
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sc_set_scene(GF_Compositor *compositor, GF_SceneGraph *scene_graph)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/compositor/compositor.c:1499,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/compositor.c:1501,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - compositor
    - doLock
    argTypes:
    - GF_Compositor*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1503
      start: 1494
    functionDepth: 0
    functionLinenumber: 1494
    functionLinenumberEnd: 1503
    functionName: gf_sc_lock
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 7
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_lock(GF_Compositor *compositor, Bool doLock)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:1510,1
    - Dst: gf_mx_try_lock
      Src: /src/gpac/src/compositor/compositor.c:1526,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/compositor.c:1531,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:1538,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/compositor.c:1547,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/compositor.c:1551,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 34
    argCount: 3
    argNames:
    - compositor
    - NewWidth
    - NewHeight
    argTypes:
    - GF_Compositor*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1555
      start: 1505
    functionDepth: 2
    functionLinenumber: 1505
    functionLinenumberEnd: 1555
    functionName: gf_sc_set_size
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 7
    functionsReached:
    - gf_assert
    - gf_sc_send_event
    - GF_LOG
    - gf_mx_try_lock
    - gf_sg_get_root_node
    - gf_sc_lock
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_set_size(GF_Compositor *compositor, u32 NewWidth, u32
      NewHeight)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:1561,1
    - Dst: gf_sc_set_fps
      Src: /src/gpac/src/compositor/compositor.c:1563,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:1575,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:1601,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:1609,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:1628,1
    - Dst: gf_sc_reset_graphics
      Src: /src/gpac/src/compositor/compositor.c:1674,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:1675,1
    - Dst: gf_sc_ar_set_volume
      Src: /src/gpac/src/compositor/compositor.c:1678,1
    - Dst: gf_sc_ar_set_pan
      Src: /src/gpac/src/compositor/compositor.c:1679,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:1681,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 93
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1682
      start: 1557
    functionDepth: 2
    functionLinenumber: 1557
    functionLinenumberEnd: 1682
    functionName: gf_sc_reload_config
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - gf_sc_reset_graphics
    - gf_sc_ar_set_volume
    - gf_sc_set_fps
    - GF_LOG
    - gf_sc_next_frame_state
    - gf_sc_ar_set_pan
    - gf_sc_lock
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_reload_config(GF_Compositor *compositor)
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:1690,1
    - Dst: gf_sc_set_play_state
      Src: /src/gpac/src/compositor/compositor.c:1695,1
    - Dst: gf_sc_ar_set_volume
      Src: /src/gpac/src/compositor/compositor.c:1698,1
    - Dst: gf_sc_ar_set_pan
      Src: /src/gpac/src/compositor/compositor.c:1701,1
    - Dst: gf_sc_ar_mute
      Src: /src/gpac/src/compositor/compositor.c:1704,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:1708,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:1715,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:1719,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:1723,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:1727,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:1735,1
    - Dst: gf_sc_reset_graphics
      Src: /src/gpac/src/compositor/compositor.c:1738,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:1740,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:1744,1
    - Dst: compositor_2d_set_user_transform
      Src: /src/gpac/src/compositor/compositor.c:1747,1
    - Dst: gf_sc_set_size
      Src: /src/gpac/src/compositor/compositor.c:1748,1
    - Dst: GF_Compositor*::video_out::ProcessEvent
      Src: /src/gpac/src/compositor/compositor.c:1756,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:1758,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:1762,1
    - Dst: gf_sc_reload_config
      Src: /src/gpac/src/compositor/compositor.c:1772,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:1773,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:1780,1
    - Dst: gf_sc_reset_graphics
      Src: /src/gpac/src/compositor/compositor.c:1794,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:1796,1
    - Dst: compositor_2d_set_user_transform
      Src: /src/gpac/src/compositor/compositor.c:1808,1
    - Dst: compositor_3d_reset_camera
      Src: /src/gpac/src/compositor/compositor.c:1810,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:1812,1
    - Dst: gf_sc_navigation_supported
      Src: /src/gpac/src/compositor/compositor.c:1815,1
    - Dst: compositor_3d_get_camera
      Src: /src/gpac/src/compositor/compositor.c:1820,1
    - Dst: compositor_3d_get_camera
      Src: /src/gpac/src/compositor/compositor.c:1832,1
    - Dst: gf_sc_reset_graphics
      Src: /src/gpac/src/compositor/compositor.c:1872,1
    - Dst: compositor_3d_get_camera
      Src: /src/gpac/src/compositor/compositor.c:1880,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:1884,1
    - Dst: compositor_set_cache_memory
      Src: /src/gpac/src/compositor/compositor.c:1891,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/compositor/compositor.c:1903,1
    - Dst: gf_dm_set_data_rate
      Src: /src/gpac/src/compositor/compositor.c:1905,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 188
    argCount: 3
    argNames:
    - compositor
    - type
    - value
    argTypes:
    - GF_Compositor*
    - GF_CompositorOption
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1914
      start: 1686
    functionDepth: 11
    functionLinenumber: 1686
    functionLinenumberEnd: 1914
    functionName: gf_sc_set_option
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 9
    functionsReached:
    - gf_sc_reset_graphics
    - gf_filter_get_download_manager
    - gf_sc_ar_set_volume
    - gf_sc_navigation_supported
    - gf_sc_set_size
    - gf_sc_reload_config
    - gf_sc_set_play_state
    - gf_sc_next_frame_state
    - gf_sc_ar_set_pan
    - compositor_2d_set_user_transform
    - GF_Compositor*::video_out::ProcessEvent
    - gf_sc_ar_mute
    - compositor_3d_get_camera
    - compositor_set_cache_memory
    - gf_dm_set_data_rate
    - gf_sc_lock
    - compositor_3d_reset_camera
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_set_option(GF_Compositor *compositor, GF_CompositorOption
      type, u32 value)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:1923,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:1925,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/compositor.c:1928,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/compositor.c:1931,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 2
    argNames:
    - compositor
    - scene_graph
    argTypes:
    - GF_Compositor*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1961
      start: 1919
    functionDepth: 2
    functionLinenumber: 1919
    functionLinenumberEnd: 1961
    functionName: gf_sc_is_over
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_node_get_tag
    - gf_list_get
    - gf_node_get_graph
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_is_over(GF_Compositor *compositor, GF_SceneGraph *scene_graph)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_is_over
      Src: /src/gpac/src/compositor/compositor.c:1974,1
    - Dst: compositor_3d_get_camera
      Src: /src/gpac/src/compositor/compositor.c:2017,1
    - Dst: compositor_3d_get_camera
      Src: /src/gpac/src/compositor/compositor.c:2030,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 85
    argCount: 2
    argNames:
    - compositor
    - type
    argTypes:
    - GF_Compositor*
    - GF_CompositorOption
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2062
      start: 1963
    functionDepth: 3
    functionLinenumber: 1963
    functionLinenumberEnd: 2062
    functionName: gf_sc_get_option
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 5
    functionsReached:
    - gf_sc_is_over
    - compositor_3d_get_camera
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_get_option(GF_Compositor *compositor, GF_CompositorOption
      type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor.c:2070,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor.c:2071,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - compositor
    - X
    - Y
    - bifsX
    - bifsY
    argTypes:
    - GF_Compositor*
    - s32
    - s32
    - Fixed*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2072
      start: 2064
    functionDepth: 1
    functionLinenumber: 2064
    functionLinenumberEnd: 2072
    functionName: gf_sc_map_point
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - INT2FIX
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_map_point(GF_Compositor *compositor, s32 X, s32 Y,
      Fixed *bifsX, Fixed *bifsY)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/compositor/compositor.c:2080,1
    - Dst: compositor_3d_get_screen_buffer
      Src: /src/gpac/src/compositor/compositor.c:2084,1
    - Dst: GF_Compositor*::video_out::LockBackBuffer
      Src: /src/gpac/src/compositor/compositor.c:2090,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/compositor.c:2092,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 3
    argNames:
    - compositor
    - framebuffer
    - depth_dump_mode
    argTypes:
    - GF_Compositor*
    - GF_VideoSurface*
    - GF_CompositorGrabMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2094
      start: 2075
    functionDepth: 2
    functionLinenumber: 2075
    functionLinenumberEnd: 2094
    functionName: gf_sc_get_screen_buffer
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 3
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    - GF_Compositor*::video_out::LockBackBuffer
    - compositor_3d_get_screen_buffer
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_get_screen_buffer(GF_Compositor *compositor, GF_VideoSurface
      *framebuffer, GF_CompositorGrabMode depth_dump_mode)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/compositor/compositor.c:2103,1
    - Dst: compositor_3d_get_offscreen_buffer
      Src: /src/gpac/src/compositor/compositor.c:2104,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/compositor.c:2105,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 4
    argNames:
    - compositor
    - framebuffer
    - view_idx
    - depth_dump_mode
    argTypes:
    - GF_Compositor*
    - GF_VideoSurface*
    - u32
    - GF_CompositorGrabMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2110
      start: 2096
    functionDepth: 1
    functionLinenumber: 2096
    functionLinenumberEnd: 2110
    functionName: gf_sc_get_offscreen_buffer
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    - compositor_3d_get_offscreen_buffer
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_get_offscreen_buffer(GF_Compositor *compositor, GF_VideoSurface
      *framebuffer, u32 view_idx, GF_CompositorGrabMode depth_dump_mode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: compositor_3d_release_screen_buffer
      Src: /src/gpac/src/compositor/compositor.c:2121,1
    - Dst: GF_Compositor*::video_out::LockBackBuffer
      Src: /src/gpac/src/compositor/compositor.c:2124,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/compositor.c:2126,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - compositor
    - framebuffer
    argTypes:
    - GF_Compositor*
    - GF_VideoSurface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2128
      start: 2113
    functionDepth: 1
    functionLinenumber: 2113
    functionLinenumberEnd: 2128
    functionName: gf_sc_release_screen_buffer
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 3
    functionsReached:
    - GF_Compositor*::video_out::LockBackBuffer
    - gf_mx_v
    - compositor_3d_release_screen_buffer
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_release_screen_buffer(GF_Compositor *compositor, GF_VideoSurface
      *framebuffer)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/compositor/compositor.c:2136,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/compositor.c:2162,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/compositor.c:2169,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 35
    argCount: 2
    argNames:
    - compositor
    - absoluteFPS
    argTypes:
    - GF_Compositor*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2175
      start: 2130
    functionDepth: 1
    functionLinenumber: 2130
    functionLinenumberEnd: 2175
    functionName: gf_sc_get_fps
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 3
    functionsReached:
    - gf_mx_p
    - gf_assert
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_get_fps(GF_Compositor *compositor, Bool absoluteFPS)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/compositor.c:2183,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - compositor
    - tn
    argTypes:
    - GF_Compositor*
    - GF_TimeNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2185
      start: 2177
    functionDepth: 1
    functionLinenumber: 2177
    functionLinenumberEnd: 2185
    functionName: gf_sc_register_time_node
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 4
    functionsReached:
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_register_time_node(GF_Compositor *compositor, GF_TimeNode
      *tn)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/compositor.c:2190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - compositor
    - tn
    argTypes:
    - GF_Compositor*
    - GF_TimeNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2191
      start: 2187
    functionDepth: 1
    functionLinenumber: 2187
    functionLinenumberEnd: 2191
    functionName: gf_sc_unregister_time_node
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 2
    functionsReached:
    - gf_list_del_item
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_unregister_time_node(GF_Compositor *compositor, GF_TimeNode
      *tn)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/compositor/compositor.c:2210,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:2211,1
    - Dst: gf_sc_ar_control
      Src: /src/gpac/src/compositor/compositor.c:2215,1
    - Dst: compositor_3d_set_aspect_ratio
      Src: /src/gpac/src/compositor/compositor.c:2222,1
    - Dst: gf_sc_load_opengl_extensions
      Src: /src/gpac/src/compositor/compositor.c:2223,1
    - Dst: visual_3d_init_shaders
      Src: /src/gpac/src/compositor/compositor.c:2225,1
    - Dst: compositor_2d_set_aspect_ratio
      Src: /src/gpac/src/compositor/compositor.c:2259,1
    - Dst: gf_sc_load_opengl_extensions
      Src: /src/gpac/src/compositor/compositor.c:2262,1
    - Dst: visual_3d_init_shaders
      Src: /src/gpac/src/compositor/compositor.c:2264,1
    - Dst: ra_init
      Src: /src/gpac/src/compositor/compositor.c:2267,1
    - Dst: gf_sc_ar_control
      Src: /src/gpac/src/compositor/compositor.c:2274,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/compositor/compositor.c:2277,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:2278,1
    - Dst: compositor_evaluate_envtests
      Src: /src/gpac/src/compositor/compositor.c:2283,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:2292,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/compositor.c:2292,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:2293,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/compositor.c:2293,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:2294,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/compositor/compositor.c:2294,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:2296,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/compositor.c:2296,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 67
    argCount: 2
    argNames:
    - compositor
    - top_node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2299
      start: 2193
    functionDepth: 7
    functionLinenumber: 2193
    functionLinenumberEnd: 2299
    functionName: gf_sc_recompute_ar
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - ra_init
    - PROP_UINT
    - PROP_FRAC
    - gf_log_tool_level_on
    - compositor_2d_set_aspect_ratio
    - compositor_evaluate_envtests
    - gf_sc_ar_control
    - compositor_3d_set_aspect_ratio
    - gf_sc_load_opengl_extensions
    - gf_filter_pid_set_property
    - gf_sys_clock
    - visual_3d_init_shaders
    linkageType: ''
    returnType: void
    signature: void gf_sc_recompute_ar(GF_Compositor *compositor, GF_Node *top_node)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor.c:2316,1
    - Dst: MIN
      Src: /src/gpac/src/compositor/compositor.c:2316,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/compositor.c:2318,1
    - Dst: gf_sg_use_pixel_metrics
      Src: /src/gpac/src/compositor/compositor.c:2337,1
    - Dst: gf_sg_use_pixel_metrics
      Src: /src/gpac/src/compositor/compositor.c:2345,1
    - Dst: gf_sg_use_pixel_metrics
      Src: /src/gpac/src/compositor/compositor.c:2352,1
    - Dst: gf_sc_check_video_driver
      Src: /src/gpac/src/compositor/compositor.c:2399,1
    - Dst: camera_set_2d
      Src: /src/gpac/src/compositor/compositor.c:2407,1
    - Dst: camera_invalidate
      Src: /src/gpac/src/compositor/compositor.c:2409,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:2416,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 70
    argCount: 2
    argNames:
    - compositor
    - top_node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2424
      start: 2303
    functionDepth: 4
    functionLinenumber: 2303
    functionLinenumberEnd: 2424
    functionName: gf_sc_setup_root_visual
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - INT2FIX
    - GF_LOG
    - gf_sg_use_pixel_metrics
    - MIN
    - camera_invalidate
    - gf_sc_check_video_driver
    - camera_set_2d
    linkageType: ''
    returnType: void
    signature: void gf_sc_setup_root_visual(GF_Compositor *compositor, GF_Node *top_node)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/compositor.c:2431,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:2453,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:2455,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/compositor.c:2456,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:2458,1
    - Dst: gf_sc_setup_passthrough
      Src: /src/gpac/src/compositor/compositor.c:2464,1
    - Dst: visual_draw_frame
      Src: /src/gpac/src/compositor/compositor.c:2468,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/compositor.c:2486,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:2488,1
    - Dst: compositor_send_resize_event
      Src: /src/gpac/src/compositor/compositor.c:2492,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 48
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2499
      start: 2427
    functionDepth: 10
    functionLinenumber: 2427
    functionLinenumberEnd: 2499
    functionName: gf_sc_draw_scene
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_sc_setup_passthrough
    - gf_list_get
    - gf_node_traverse
    - gf_list_reset
    - GF_LOG
    - gf_list_count
    - compositor_send_resize_event
    - visual_draw_frame
    - gf_sg_get_root_node
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sc_draw_scene(GF_Compositor *compositor)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:2511,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:2513,1
    - Dst: gf_sc_texture_release_stream
      Src: /src/gpac/src/compositor/compositor.c:2514,1
    - Dst: gf_sc_texture_reset
      Src: /src/gpac/src/compositor/compositor.c:2516,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - compositor
    - frame_drawn
    argTypes:
    - GF_Compositor*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2520
      start: 2507
    functionDepth: 2
    functionLinenumber: 2507
    functionLinenumberEnd: 2520
    functionName: compositor_release_textures
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_sc_texture_release_stream
    - gf_sc_texture_reset
    linkageType: ''
    returnType: void
    signature: void compositor_release_textures(GF_Compositor *compositor, Bool frame_drawn)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2531
      start: 2522
    functionDepth: 0
    functionLinenumber: 2522
    functionLinenumberEnd: 2531
    functionName: gf_sc_invalidate_next_frame
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_invalidate_next_frame(GF_Compositor *compositor)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2537
      start: 2533
    functionDepth: 0
    functionLinenumber: 2533
    functionLinenumberEnd: 2537
    functionName: gf_sc_frame_was_produced
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_frame_was_produced(GF_Compositor *compositor)
  - BBCount: 119
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:2554,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:2557,1
    - Dst: gf_sc_texture_cleanup_hw
      Src: /src/gpac/src/compositor/compositor.c:2559,1
    - Dst: GF_Compositor*::video_out::ProcessEvent
      Src: /src/gpac/src/compositor/compositor.c:2563,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:2567,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:2569,1
    - Dst: GF_CompositorExt*::process
      Src: /src/gpac/src/compositor/compositor.c:2570,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:2575,1
    - Dst: gf_sc_ar_get_clock
      Src: /src/gpac/src/compositor/compositor.c:2577,1
    - Dst: gf_sc_reconfig_task
      Src: /src/gpac/src/compositor/compositor.c:2582,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:2585,1
    - Dst: gf_sc_draw_scene
      Src: /src/gpac/src/compositor/compositor.c:2586,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:2597,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:2606,1
    - Dst: visual_reset_graphics
      Src: /src/gpac/src/compositor/compositor.c:2607,1
    - Dst: compositor_3d_delete_fbo
      Src: /src/gpac/src/compositor/compositor.c:2610,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:2617,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/compositor/compositor.c:2620,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/compositor.c:2624,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:2625,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:2626,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/compositor.c:2627,1
    - Dst: gf_sg_fire_dom_event
      Src: /src/gpac/src/compositor/compositor.c:2631,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/compositor.c:2635,1
    - Dst: gf_sc_exec_event
      Src: /src/gpac/src/compositor/compositor.c:2638,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor.c:2640,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:2643,1
    - Dst: gf_sc_ar_get_clock
      Src: /src/gpac/src/compositor/compositor.c:2648,1
    - Dst: compositor_handle_auto_navigation
      Src: /src/gpac/src/compositor/compositor.c:2665,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:2674,1
    - Dst: gf_smil_notify_timed_elements
      Src: /src/gpac/src/compositor/compositor.c:2676,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:2677,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/compositor.c:2681,1
    - Dst: gf_smil_notify_timed_elements
      Src: /src/gpac/src/compositor/compositor.c:2682,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:2683,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:2689,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:2696,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:2699,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:2701,1
    - Dst: GF_TimeNode*::UpdateTimeNode
      Src: /src/gpac/src/compositor/compositor.c:2702,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/compositor.c:2706,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:2714,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:2720,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:2729,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:2731,1
    - Dst: gf_sc_texture_reset
      Src: /src/gpac/src/compositor/compositor.c:2738,1
    - Dst: GF_TextureHandler*::update_texture_fcnt
      Src: /src/gpac/src/compositor/compositor.c:2739,1
    - Dst: gf_mo_get_min_frame_dur
      Src: /src/gpac/src/compositor/compositor.c:2742,1
    - Dst: gf_mo_map_timestamp_to_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:2746,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:2757,1
    - Dst: gf_mo_is_buffering
      Src: /src/gpac/src/compositor/compositor.c:2779,1
    - Dst: gf_mo_get_min_frame_dur
      Src: /src/gpac/src/compositor/compositor.c:2780,1
    - Dst: compositor_release_textures
      Src: /src/gpac/src/compositor/compositor.c:2790,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:2791,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:2798,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:2816,1
    - Dst: gf_sg_activate_routes
      Src: /src/gpac/src/compositor/compositor.c:2819,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/compositor.c:2823,1
    - Dst: gf_sg_activate_routes
      Src: /src/gpac/src/compositor/compositor.c:2824,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:2829,1
    - Dst: gf_sc_setup_root_visual
      Src: /src/gpac/src/compositor/compositor.c:2840,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/compositor.c:2840,1
    - Dst: gf_sc_recompute_ar
      Src: /src/gpac/src/compositor/compositor.c:2843,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/compositor.c:2843,1
    - Dst: compositor_release_textures
      Src: /src/gpac/src/compositor/compositor.c:2846,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:2847,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:2852,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:2856,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:2858,1
    - Dst: gf_sc_texture_reset
      Src: /src/gpac/src/compositor/compositor.c:2863,1
    - Dst: GF_TextureHandler*::update_texture_fcnt
      Src: /src/gpac/src/compositor/compositor.c:2864,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:2867,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/compositor.c:2868,1
    - Dst: compositor_release_textures
      Src: /src/gpac/src/compositor/compositor.c:2877,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:2878,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:2882,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:2912,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:2947,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:2964,1
    - Dst: gf_sc_draw_scene
      Src: /src/gpac/src/compositor/compositor.c:2965,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:2968,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:2996,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/compositor/compositor.c:3010,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:3042,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/compositor.c:3042,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:3043,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/compositor.c:3043,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:3044,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:3045,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:3048,1
    - Dst: PROP_VEC2I_INT
      Src: /src/gpac/src/compositor/compositor.c:3048,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/compositor.c:3049,1
    - Dst: PROP_VEC2I_INT
      Src: /src/gpac/src/compositor/compositor.c:3049,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/compositor/compositor.c:3054,1
    - Dst: gf_filter_pck_new_frame_interface
      Src: /src/gpac/src/compositor/compositor.c:3064,1
    - Dst: gf_sc_get_screen_buffer
      Src: /src/gpac/src/compositor/compositor.c:3075,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/compositor/compositor.c:3082,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/compositor.c:3085,1
    - Dst: gf_sc_release_screen_buffer
      Src: /src/gpac/src/compositor/compositor.c:3092,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:3097,1
    - Dst: compositor_release_textures
      Src: /src/gpac/src/compositor/compositor.c:3098,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:3099,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/compositor/compositor.c:3103,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/compositor/compositor.c:3104,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/compositor/compositor.c:3113,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/compositor/compositor.c:3116,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/compositor/compositor.c:3120,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/compositor/compositor.c:3126,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/compositor/compositor.c:3130,1
    - Dst: gf_sc_ar_update_video_clock
      Src: /src/gpac/src/compositor/compositor.c:3132,1
    - Dst: gf_mo_is_buffering
      Src: /src/gpac/src/compositor/compositor.c:3139,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/compositor/compositor.c:3142,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/compositor.c:3145,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:3163,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:3166,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/compositor/compositor.c:3180,1
    - Dst: compositor_release_textures
      Src: /src/gpac/src/compositor/compositor.c:3186,1
    - Dst: gf_sc_flush_video
      Src: /src/gpac/src/compositor/compositor.c:3192,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:3196,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:3197,1
    - Dst: visual_2d_draw_overlays
      Src: /src/gpac/src/compositor/compositor.c:3200,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:3204,1
    - Dst: compositor_release_textures
      Src: /src/gpac/src/compositor/compositor.c:3205,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:3209,1
    - Dst: gf_sc_reset_graphics
      Src: /src/gpac/src/compositor/compositor.c:3210,1
    - Dst: compositor_release_textures
      Src: /src/gpac/src/compositor/compositor.c:3217,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/compositor.c:3242,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/compositor.c:3258,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:3261,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:3291,1
    - Dst: gf_sleep
      Src: /src/gpac/src/compositor/compositor.c:3303,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:3312,1
    - Dst: MIN
      Src: /src/gpac/src/compositor/compositor.c:3317,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:3318,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/compositor/compositor.c:3320,1
    - Dst: gf_sleep
      Src: /src/gpac/src/compositor/compositor.c:3324,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/compositor/compositor.c:3325,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:3329,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:3335,1
    - Dst: gf_sleep
      Src: /src/gpac/src/compositor/compositor.c:3341,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:3342,1
    CyclomaticComplexity: 171
    EdgeCount: 171
    ICount: 523
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3345
      start: 2540
    functionDepth: 11
    functionLinenumber: 2540
    functionLinenumberEnd: 3345
    functionName: gf_sc_render_frame
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - gf_free
    - GF_TimeNode*::UpdateTimeNode
    - gf_sc_reset_graphics
    - compositor_handle_auto_navigation
    - gf_smil_notify_timed_elements
    - gf_list_find
    - gf_sc_ar_get_clock
    - gf_sc_texture_reset
    - gf_list_count
    - gf_mo_is_buffering
    - gf_sc_release_screen_buffer
    - gf_sc_reconfig_task
    - gf_sys_clock
    - gf_mo_get_min_frame_dur
    - gf_list_get
    - gf_assert
    - GF_TextureHandler*::update_texture_fcnt
    - compositor_release_textures
    - memcpy
    - visual_2d_draw_overlays
    - GF_Compositor*::video_out::ProcessEvent
    - gf_filter_pck_get_cts
    - gf_sc_recompute_ar
    - gf_sg_get_root_node
    - gf_sg_fire_dom_event
    - gf_filter_pck_new_frame_interface
    - gf_filter_pck_get_duration
    - gf_sc_setup_root_visual
    - gf_filter_pck_discard
    - gf_mx_p
    - gf_filter_pck_new_alloc
    - gf_sc_ar_update_video_clock
    - gf_mo_map_timestamp_to_sys_clock
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_dom_event_fire
    - gf_sleep
    - MIN
    - GF_CompositorExt*::process
    - gf_mx_v
    - gf_sc_texture_cleanup_hw
    - gf_sc_flush_video
    - gf_list_enum
    - gf_sc_lock
    - gf_filter_pid_set_property
    - PROP_VEC2I_INT
    - gf_timestamp_rescale
    - gf_sys_clock_high_res
    - gf_sg_activate_routes
    - gf_filter_pck_new_shared
    - PROP_UINT
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_sc_exec_event
    - gf_sc_next_frame_state
    - compositor_3d_delete_fbo
    - gf_sc_draw_scene
    - visual_reset_graphics
    - gf_sc_get_screen_buffer
    - gf_list_rem
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void gf_sc_render_frame(GF_Compositor *compositor)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/compositor.c:3351,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - compositor
    - visual
    argTypes:
    - GF_Compositor*
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3355
      start: 3347
    functionDepth: 1
    functionLinenumber: 3347
    functionLinenumberEnd: 3355
    functionName: gf_sc_visual_is_registered
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sc_visual_is_registered(GF_Compositor *compositor, GF_VisualManager
      *visual)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_visual_is_registered
      Src: /src/gpac/src/compositor/compositor.c:3359,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/compositor.c:3360,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - compositor
    - visual
    argTypes:
    - GF_Compositor*
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3361
      start: 3357
    functionDepth: 2
    functionLinenumber: 3357
    functionLinenumberEnd: 3361
    functionName: gf_sc_visual_register
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_sc_visual_is_registered
    linkageType: ''
    returnType: void
    signature: void gf_sc_visual_register(GF_Compositor *compositor, GF_VisualManager
      *visual)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/compositor.c:3365,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - compositor
    - visual
    argTypes:
    - GF_Compositor*
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3366
      start: 3363
    functionDepth: 1
    functionLinenumber: 3363
    functionLinenumberEnd: 3366
    functionName: gf_sc_visual_unregister
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_list_del_item
    linkageType: ''
    returnType: void
    signature: void gf_sc_visual_unregister(GF_Compositor *compositor, GF_VisualManager
      *visual)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/compositor.c:3383,1
    - Dst: gf_scene_is_over
      Src: /src/gpac/src/compositor/compositor.c:3386,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/compositor.c:3390,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/compositor.c:3396,1
    - Dst: gf_sg_use_pixel_metrics
      Src: /src/gpac/src/compositor/compositor.c:3400,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/compositor.c:3401,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/compositor.c:3428,1
    - Dst: gf_node_new
      Src: /src/gpac/src/compositor/compositor.c:3429,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/compositor.c:3430,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/src/compositor/compositor.c:3431,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/compositor/compositor.c:3432,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/compositor.c:3433,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/compositor.c:3434,1
    - Dst: gf_node_init
      Src: /src/gpac/src/compositor/compositor.c:3436,1
    - Dst: gf_sg_get_scene_size_info
      Src: /src/gpac/src/compositor/compositor.c:3441,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/compositor.c:3445,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/compositor.c:3456,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/compositor.c:3460,1
    - Dst: MIN
      Src: /src/gpac/src/compositor/compositor.c:3467,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/compositor.c:3468,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/compositor.c:3472,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/compositor.c:3479,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/compositor.c:3480,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor.c:3488,1
    - Dst: MIN
      Src: /src/gpac/src/compositor/compositor.c:3488,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/compositor.c:3492,1
    - Dst: gf_invfix
      Src: /src/gpac/src/compositor/compositor.c:3494,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/compositor.c:3495,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/compositor.c:3503,1
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/compositor/compositor.c:3505,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/compositor.c:3509,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/compositor.c:3510,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/compositor.c:3511,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/compositor.c:3517,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/compositor/compositor.c:3518,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/compositor.c:3519,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/compositor.c:3520,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 94
    argCount: 4
    argNames:
    - compositor
    - inline_parent
    - subscene
    - rs
    argTypes:
    - GF_Compositor*
    - GF_Node*
    - GF_SceneGraph*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3527
      start: 3368
    functionDepth: 9
    functionLinenumber: 3368
    functionLinenumberEnd: 3527
    functionName: gf_sc_traverse_subscene_ex
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_mx2d_add_scale
    - gf_mx_copy
    - gf_node_unregister
    - gf_node_init
    - gf_sg_use_pixel_metrics
    - gf_mx_add_matrix
    - gf_node_register
    - gf_sg_get_root_node
    - gf_node_list_add_child
    - gf_node_traverse
    - gf_mx_from_mx2d
    - gf_divfix
    - MIN
    - gf_node_new
    - gf_node_get_graph
    - gf_mx2d_copy
    - gf_mx2d_add_translation
    - INT2FIX
    - gf_sg_set_root_node
    - gf_scene_is_over
    - gf_sg_get_scene_size_info
    - gf_invfix
    - gf_mx2d_pre_multiply
    - gf_mx2d_init
    linkageType: ''
    returnType: void
    signature: void gf_sc_traverse_subscene_ex(GF_Compositor *compositor, GF_Node
      *inline_parent, GF_SceneGraph *subscene, void *rs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_input_sensor_mouse_input
      Src: /src/gpac/src/compositor/compositor.c:3536,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/compositor/compositor.c:3546,1
    - Dst: gf_sc_exec_event
      Src: /src/gpac/src/compositor/compositor.c:3547,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:3548,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - compositor
    - event
    - from_user
    argTypes:
    - GF_Compositor*
    - GF_Event*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3552
      start: 3530
    functionDepth: 18
    functionLinenumber: 3530
    functionLinenumberEnd: 3552
    functionName: gf_sc_handle_event_intern
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_sc_lock
    - gf_sc_exec_event
    - gf_sc_input_sensor_mouse_input
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sc_handle_event_intern(GF_Compositor *compositor, GF_Event
      *event, Bool from_user)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_traverse_subscene_ex
      Src: /src/gpac/src/compositor/compositor.c:3559,1
    - Dst: gf_scene_enum_extra_scene
      Src: /src/gpac/src/compositor/compositor.c:3561,1
    - Dst: gf_sc_traverse_subscene_ex
      Src: /src/gpac/src/compositor/compositor.c:3562,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - compositor
    - inline_parent
    - subscene
    - rs
    argTypes:
    - GF_Compositor*
    - GF_Node*
    - GF_SceneGraph*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3564
      start: 3554
    functionDepth: 10
    functionLinenumber: 3554
    functionLinenumberEnd: 3564
    functionName: gf_sc_traverse_subscene
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 3
    functionsReached:
    - gf_sc_traverse_subscene_ex
    - gf_scene_enum_extra_scene
    linkageType: ''
    returnType: void
    signature: void gf_sc_traverse_subscene(GF_Compositor *compositor, GF_Node *inline_parent,
      GF_SceneGraph *subscene, void *rs)
  - BBCount: 53
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/compositor/compositor.c:3571,1
    - Dst: gf_sc_reset_graphics
      Src: /src/gpac/src/compositor/compositor.c:3583,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:3601,1
    - Dst: GF_Compositor*::video_out::ProcessEvent
      Src: /src/gpac/src/compositor/compositor.c:3605,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:3611,1
    - Dst: gf_mx_try_lock
      Src: /src/gpac/src/compositor/compositor.c:3615,1
    - Dst: gf_sc_reset_graphics
      Src: /src/gpac/src/compositor/compositor.c:3617,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/compositor.c:3623,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/compositor.c:3628,1
    - Dst: gf_mx_try_lock
      Src: /src/gpac/src/compositor/compositor.c:3636,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:3663,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:3664,1
    - Dst: gf_mo_update_caps_ex
      Src: /src/gpac/src/compositor/compositor.c:3666,1
    - Dst: gf_scene_force_size_to_video
      Src: /src/gpac/src/compositor/compositor.c:3671,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:3675,1
    - Dst: gf_sc_input_sensor_keyboard_input
      Src: /src/gpac/src/compositor/compositor.c:3711,1
    - Dst: gf_sc_handle_event_intern
      Src: /src/gpac/src/compositor/compositor.c:3713,1
    - Dst: gf_sc_input_sensor_string_input
      Src: /src/gpac/src/compositor/compositor.c:3719,1
    - Dst: gf_sc_handle_event_intern
      Src: /src/gpac/src/compositor/compositor.c:3721,1
    - Dst: gf_sc_handle_event_intern
      Src: /src/gpac/src/compositor/compositor.c:3731,1
    - Dst: gf_sc_paste_text
      Src: /src/gpac/src/compositor/compositor.c:3734,1
    - Dst: gf_sc_has_text_selection
      Src: /src/gpac/src/compositor/compositor.c:3737,1
    - Dst: gf_sc_get_selected_text
      Src: /src/gpac/src/compositor/compositor.c:3738,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/compositor.c:3739,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/compositor.c:3748,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/compositor.c:3751,1
    CyclomaticComplexity: 61
    EdgeCount: 61
    ICount: 147
    argCount: 3
    argNames:
    - compositor
    - event
    - from_user
    argTypes:
    - GF_Compositor*
    - GF_Event*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3755
      start: 3566
    functionDepth: 19
    functionLinenumber: 3566
    functionLinenumberEnd: 3755
    functionName: gf_sc_on_event_ex
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_sc_reset_graphics
    - gf_sc_get_selected_text
    - gf_opts_set_key
    - gf_sc_handle_event_intern
    - gf_list_count
    - gf_scene_force_size_to_video
    - gf_list_get
    - gf_sc_input_sensor_keyboard_input
    - gf_strdup
    - gf_sc_send_event
    - GF_Compositor*::video_out::ProcessEvent
    - gf_sc_input_sensor_string_input
    - gf_mo_update_caps_ex
    - gf_mx_try_lock
    - gf_mx_v
    - gf_sc_has_text_selection
    - gf_sc_lock
    - gf_sc_next_frame_state
    - gf_sc_paste_text
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sc_on_event_ex(GF_Compositor *compositor , GF_Event *event,
      Bool from_user)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_on_event_ex
      Src: /src/gpac/src/compositor/compositor.c:3760,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - cbck
    - event
    argTypes:
    - void*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3761
      start: 3757
    functionDepth: 20
    functionLinenumber: 3757
    functionLinenumberEnd: 3761
    functionName: gf_sc_on_event
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 3
    functionsReached:
    - gf_sc_on_event_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_on_event(void *cbck, GF_Event *event)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_Compositor*::video_out::ProcessEvent
      Src: /src/gpac/src/compositor/compositor.c:3770,1
    - Dst: gf_sc_on_event_ex
      Src: /src/gpac/src/compositor/compositor.c:3773,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - compositor
    - event
    argTypes:
    - GF_Compositor*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3775
      start: 3763
    functionDepth: 20
    functionLinenumber: 3763
    functionLinenumberEnd: 3775
    functionName: gf_sc_user_event
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 14
    functionsReached:
    - GF_Compositor*::video_out::ProcessEvent
    - gf_sc_on_event_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_user_event(GF_Compositor *compositor, GF_Event *event)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:3780,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/compositor.c:3781,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/compositor.c:3782,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/compositor.c:3782,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:3783,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - compositor
    - extra_scene
    - do_remove
    argTypes:
    - GF_Compositor*
    - GF_SceneGraph*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3784
      start: 3777
    functionDepth: 1
    functionLinenumber: 3777
    functionLinenumberEnd: 3784
    functionName: gf_sc_register_extra_graph
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 2
    functionsReached:
    - gf_list_add
    - gf_list_find
    - gf_sc_lock
    - gf_list_del_item
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_register_extra_graph(GF_Compositor *compositor, GF_SceneGraph
      *extra_scene, Bool do_remove)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: compositor_2d_set_user_transform
      Src: /src/gpac/src/compositor/compositor.c:3793,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/compositor.c:3796,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/compositor.c:3799,1
    - Dst: compositor_2d_set_user_transform
      Src: /src/gpac/src/compositor/compositor.c:3800,1
    - Dst: compositor_2d_set_user_transform
      Src: /src/gpac/src/compositor/compositor.c:3807,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/compositor.c:3811,1
    - Dst: compositor_svg_get_viewport
      Src: /src/gpac/src/compositor/compositor.c:3818,1
    - Dst: gf_rect_center
      Src: /src/gpac/src/compositor/compositor.c:3820,1
    - Dst: memset
      Src: /src/gpac/src/compositor/compositor.c:3839,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/compositor.c:3847,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/compositor.c:3848,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/compositor.c:3853,1
    - Dst: gf_svg_properties_init_pointers
      Src: /src/gpac/src/compositor/compositor.c:3855,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/compositor.c:3857,1
    - Dst: gf_svg_properties_reset_pointers
      Src: /src/gpac/src/compositor/compositor.c:3858,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor.c:3859,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/compositor.c:3863,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/compositor.c:3863,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/compositor/compositor.c:3868,1
    - Dst: gf_bbox_from_rect
      Src: /src/gpac/src/compositor/compositor.c:3871,1
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/compositor/compositor.c:3873,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/compositor.c:3875,1
    - Dst: gf_bbox_from_rect
      Src: /src/gpac/src/compositor/compositor.c:3876,1
    - Dst: strrchr
      Src: /src/gpac/src/compositor/compositor.c:3885,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/compositor.c:3887,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/compositor.c:3887,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/compositor.c:3888,1
    - Dst: on_set_bind
      Src: /src/gpac/src/compositor/compositor.c:3890,1
    - Dst: gf_sc_get_fps
      Src: /src/gpac/src/compositor/compositor.c:3897,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/compositor.c:3903,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/compositor.c:3909,1
    - Dst: svg_pause_audio
      Src: /src/gpac/src/compositor/compositor.c:3913,1
    - Dst: svg_pause_video
      Src: /src/gpac/src/compositor/compositor.c:3916,1
    - Dst: svg_pause_animation
      Src: /src/gpac/src/compositor/compositor.c:3919,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/compositor.c:3929,1
    - Dst: svg_pause_audio
      Src: /src/gpac/src/compositor/compositor.c:3933,1
    - Dst: svg_pause_video
      Src: /src/gpac/src/compositor/compositor.c:3936,1
    - Dst: svg_pause_animation
      Src: /src/gpac/src/compositor/compositor.c:3939,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 144
    argCount: 4
    argNames:
    - compositor
    - type
    - n
    - param
    argTypes:
    - GF_Compositor*
    - GF_JSAPIActionType
    - GF_Node*
    - GF_JSAPIParam*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3955
      start: 3786
    functionDepth: 11
    functionLinenumber: 3786
    functionLinenumberEnd: 3955
    functionName: gf_sc_script_action
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_node_get_tag
    - GF_SAFEALLOC
    - gf_bbox_from_rect
    - memset
    - FIX2FLT
    - strrchr
    - gf_sg_find_node_by_name
    - gf_mx2d_apply_rect
    - compositor_2d_set_user_transform
    - svg_pause_animation
    - gf_sg_get_root_node
    - gf_mulfix
    - gf_node_traverse
    - gf_sc_get_fps
    - gf_mx_from_mx2d
    - gf_divfix
    - gf_rect_center
    - gf_node_get_graph
    - gf_node_get_scene_time
    - svg_pause_video
    - compositor_svg_get_viewport
    - svg_pause_audio
    - on_set_bind
    - gf_svg_properties_init_pointers
    - gf_svg_properties_reset_pointers
    - gf_mx2d_pre_multiply
    - gf_mx2d_init
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sc_script_action(GF_Compositor *compositor, GF_JSAPIActionType
      type, GF_Node *n, GF_JSAPIParam *param)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/compositor.c:3964,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/compositor/compositor.c:3965,1
    - Dst: gf_mx_apply_ray
      Src: /src/gpac/src/compositor/compositor.c:3967,1
    - Dst: compositor_get_2d_plane_intersection
      Src: /src/gpac/src/compositor/compositor.c:3968,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/compositor.c:3977,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 18
    argCount: 2
    argNames:
    - tr_state
    - clip
    argTypes:
    - GF_TraverseState*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3985
      start: 3957
    functionDepth: 2
    functionLinenumber: 3957
    functionLinenumberEnd: 3985
    functionName: gf_sc_pick_in_clipper
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 3
    functionsReached:
    - gf_mx2d_apply_rect
    - compositor_get_2d_plane_intersection
    - gf_mx_inverse
    - gf_mx_copy
    - gf_mx_apply_ray
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sc_pick_in_clipper(GF_TraverseState *tr_state, GF_Rect *clip)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3991
      start: 3987
    functionDepth: 0
    functionLinenumber: 3987
    functionLinenumberEnd: 3991
    functionName: gf_sc_has_text_selection
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_has_text_selection(GF_Compositor *compositor)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:4000,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor.c:4004,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/compositor.c:4009,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor.c:4014,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/compositor.c:4015,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/compositor/compositor.c:4016,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:4019,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4022
      start: 3993
    functionDepth: 6
    functionLinenumber: 3993
    functionLinenumberEnd: 4022
    functionName: gf_sc_get_selected_text
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_node_traverse
    - gf_utf8_wcstombs
    - gf_sc_lock
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sc_get_selected_text(GF_Compositor *compositor)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_get_compositor
      Src: /src/gpac/src/compositor/compositor.c:4027,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/compositor.c:4034,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/compositor.c:4035,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4039
      start: 4025
    functionDepth: 1
    functionLinenumber: 4025
    functionLinenumberEnd: 4039
    functionName: gf_sc_check_focus_upon_destroy
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 6
    functionsReached:
    - gf_sc_get_compositor
    - gf_list_reset
    linkageType: ''
    returnType: void
    signature: void gf_sc_check_focus_upon_destroy(GF_Node *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - compositor
    - frame_pending
    argTypes:
    - GF_Compositor*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4051
      start: 4042
    functionDepth: 0
    functionLinenumber: 4042
    functionLinenumberEnd: 4051
    functionName: gf_sc_set_system_pending_frame
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_sc_set_system_pending_frame(GF_Compositor *compositor, Bool
      frame_pending)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/compositor/compositor.c:4057,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:4059,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:4061,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/compositor.c:4064,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/compositor.c:4068,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:4070,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/compositor.c:4073,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/compositor.c:4075,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - compositor
    - evt
    argTypes:
    - GF_Compositor*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4076
      start: 4053
    functionDepth: 1
    functionLinenumber: 4053
    functionLinenumberEnd: 4076
    functionName: gf_sc_queue_event
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_count
    - gf_mx_v
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void gf_sc_queue_event(GF_Compositor *compositor, GF_Event *evt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/compositor/compositor.c:4084,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:4086,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:4088,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/compositor.c:4091,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/compositor.c:4095,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:4097,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/compositor.c:4101,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/compositor.c:4103,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 3
    argNames:
    - compositor
    - node
    - evt
    argTypes:
    - GF_Compositor*
    - GF_Node*
    - GF_DOM_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4104
      start: 4080
    functionDepth: 1
    functionLinenumber: 4080
    functionLinenumberEnd: 4104
    functionName: gf_sc_queue_dom_event
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 2
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_count
    - gf_mx_v
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void gf_sc_queue_dom_event(GF_Compositor *compositor, GF_Node *node,
      GF_DOM_Event *evt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/compositor/compositor.c:4110,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:4112,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:4114,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/compositor.c:4120,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/compositor.c:4125,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:4127,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/compositor.c:4132,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/compositor.c:4134,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 4
    argNames:
    - compositor
    - evt
    - target
    - sg
    argTypes:
    - GF_Compositor*
    - GF_DOM_Event*
    - GF_DOMEventTarget*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4135
      start: 4106
    functionDepth: 1
    functionLinenumber: 4106
    functionLinenumberEnd: 4135
    functionName: gf_sc_queue_dom_event_on_target
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_count
    - gf_mx_v
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void gf_sc_queue_dom_event_on_target(GF_Compositor *compositor, GF_DOM_Event
      *evt, GF_DOMEventTarget *target, GF_SceneGraph *sg)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:4139,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:4142,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/compositor.c:4146,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/compositor.c:4154,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/compositor.c:4159,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor.c:4162,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 23
    argCount: 3
    argNames:
    - evq
    - node
    - sg
    argTypes:
    - GF_List*
    - GF_Node*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4165
      start: 4137
    functionDepth: 1
    functionLinenumber: 4137
    functionLinenumberEnd: 4165
    functionName: sc_cleanup_event_queue
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_node_get_graph
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void sc_cleanup_event_queue(GF_List *evq, GF_Node *node, GF_SceneGraph
      *sg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/compositor/compositor.c:4169,1
    - Dst: sc_cleanup_event_queue
      Src: /src/gpac/src/compositor/compositor.c:4170,1
    - Dst: sc_cleanup_event_queue
      Src: /src/gpac/src/compositor/compositor.c:4171,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/compositor/compositor.c:4172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - compositor
    - node
    - sg
    argTypes:
    - GF_Compositor*
    - GF_Node*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4173
      start: 4167
    functionDepth: 2
    functionLinenumber: 4167
    functionLinenumberEnd: 4173
    functionName: gf_sc_node_destroy
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 4
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    - sc_cleanup_event_queue
    linkageType: ''
    returnType: void
    signature: void gf_sc_node_destroy(GF_Compositor *compositor, GF_Node *node, GF_SceneGraph
      *sg)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: compositor_3d_get_camera
      Src: /src/gpac/src/compositor/compositor.c:4181,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:4186,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:4191,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:4192,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:4193,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:4194,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:4195,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:4196,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:4197,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 34
    argCount: 2
    argNames:
    - compositor
    - type
    argTypes:
    - GF_Compositor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4209
      start: 4175
    functionDepth: 1
    functionLinenumber: 4175
    functionLinenumberEnd: 4209
    functionName: gf_sc_navigation_supported
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - stricmp
    - gf_list_get
    - compositor_3d_get_camera
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_navigation_supported(GF_Compositor *compositor, u32
      type)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:4218,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:4219,1
    - Dst: gf_scene_check_clocks
      Src: /src/gpac/src/compositor/compositor.c:4223,1
    - Dst: gf_sc_get_option
      Src: /src/gpac/src/compositor/compositor.c:4227,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 14
    argCount: 2
    argNames:
    - compositor
    - skip_interactions
    argTypes:
    - GF_Compositor*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4228
      start: 4212
    functionDepth: 4
    functionLinenumber: 4212
    functionLinenumberEnd: 4228
    functionName: gf_sc_check_end_of_scene
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_sc_get_option
    - gf_scene_check_clocks
    linkageType: ''
    returnType: u32
    signature: u32 gf_sc_check_end_of_scene(GF_Compositor *compositor, Bool skip_interactions)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:4232,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/compositor.c:4233,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/compositor.c:4234,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:4235,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4236
      start: 4230
    functionDepth: 1
    functionLinenumber: 4230
    functionLinenumberEnd: 4236
    functionName: gf_sc_queue_node_traverse
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - gf_list_add
    - gf_sc_lock
    linkageType: ''
    returnType: void
    signature: void gf_sc_queue_node_traverse(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:4239,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/compositor.c:4241,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:4242,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/compositor.c:4243,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:4247,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4248
      start: 4237
    functionDepth: 1
    functionLinenumber: 4237
    functionLinenumberEnd: 4248
    functionName: gf_sc_unqueue_node_traverse
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_sc_lock
    - gf_list_del_item
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_sc_unqueue_node_traverse(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/compositor/compositor.c:4255,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/compositor/compositor.c:4273,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/compositor/compositor.c:4275,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/compositor/compositor.c:4288,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 33
    argCount: 4
    argNames:
    - compositor
    - cts
    - obj_time
    - from_filter
    argTypes:
    - GF_Compositor*
    - u32
    - u32
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4294
      start: 4250
    functionDepth: 1
    functionLinenumber: 4250
    functionLinenumberEnd: 4294
    functionName: gf_sc_sys_frame_pending
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_filter_ask_rt_reschedule
    - gf_filter_post_process_task
    linkageType: ''
    returnType: void
    signature: void gf_sc_sys_frame_pending(GF_Compositor *compositor, u32 cts, u32
      obj_time, GF_Filter *from_filter)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/compositor.c:4300,1
    - Dst: gf_odm_check_buffering
      Src: /src/gpac/src/compositor/compositor.c:4303,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/compositor.c:4305,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:4316,1
    - Dst: gf_clock_reset
      Src: /src/gpac/src/compositor/compositor.c:4319,1
    - Dst: gf_clock_set_time
      Src: /src/gpac/src/compositor/compositor.c:4320,1
    - Dst: gf_sc_sys_frame_pending
      Src: /src/gpac/src/compositor/compositor.c:4324,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/compositor/compositor.c:4330,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/compositor/compositor.c:4331,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 6
    argNames:
    - scene
    - odm
    - for_pid
    - from_filter
    - cts_in_ms
    - dur_in_ms
    argTypes:
    - GF_Scene*
    - GF_ObjectManager*
    - GF_FilterPid*
    - GF_Filter*
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4334
      start: 4297
    functionDepth: 3
    functionLinenumber: 4297
    functionLinenumberEnd: 4334
    functionName: gf_sc_check_sys_frame
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_clock_reset
    - gf_odm_check_buffering
    - gf_list_count
    - gf_clock_set_time
    - gf_clock_time
    - gf_timestamp_rescale
    - gf_sc_sys_frame_pending
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sc_check_sys_frame(GF_Scene *scene, GF_ObjectManager *odm,
      GF_FilterPid *for_pid, GF_Filter *from_filter, u64 cts_in_ms, u32 dur_in_ms)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4354
      start: 4337
    functionDepth: 0
    functionLinenumber: 4337
    functionLinenumberEnd: 4354
    functionName: gf_sc_check_gl_support
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sc_check_gl_support(GF_Compositor *compositor)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_clock_media_time
      Src: /src/gpac/src/compositor/compositor.c:4362,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - sc
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4363
      start: 4356
    functionDepth: 4
    functionLinenumber: 4356
    functionLinenumberEnd: 4363
    functionName: gf_sc_get_time_in_ms
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 3
    functionsReached:
    - gf_clock_media_time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_get_time_in_ms(GF_Compositor *sc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_switch_quality
      Src: /src/gpac/src/compositor/compositor.c:4369,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - up
    argTypes:
    - GF_Compositor*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4370
      start: 4365
    functionDepth: 2
    functionLinenumber: 4365
    functionLinenumberEnd: 4370
    functionName: gf_sc_switch_quality
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - gf_scene_switch_quality
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_switch_quality(GF_Compositor *compositor, Bool up)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_toggle_addons
      Src: /src/gpac/src/compositor/compositor.c:4377,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - compositor
    - show_addons
    argTypes:
    - GF_Compositor*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4379
      start: 4372
    functionDepth: 12
    functionLinenumber: 4372
    functionLinenumberEnd: 4379
    functionName: gf_sc_toggle_addons
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 2
    functionsReached:
    - gf_scene_toggle_addons
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_toggle_addons(GF_Compositor *compositor, Bool show_addons)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_get_time_in_ms
      Src: /src/gpac/src/compositor/compositor.c:4392,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/compositor.c:4395,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/compositor.c:4400,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/compositor.c:4401,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/compositor.c:4410,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/compositor.c:4414,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/compositor.c:4416,1
    - Dst: gf_clock_set_speed
      Src: /src/gpac/src/compositor/compositor.c:4418,1
    - Dst: gf_odm_set_speed
      Src: /src/gpac/src/compositor/compositor.c:4421,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/compositor.c:4426,1
    - Dst: gf_odm_set_speed
      Src: /src/gpac/src/compositor/compositor.c:4427,1
    - Dst: gf_scene_restart_dynamic
      Src: /src/gpac/src/compositor/compositor.c:4436,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/compositor.c:4445,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/compositor.c:4448,1
    - Dst: gf_media_get_reduced_frame_rate
      Src: /src/gpac/src/compositor/compositor.c:4450,1
    - Dst: gf_sc_set_fps
      Src: /src/gpac/src/compositor/compositor.c:4451,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 49
    argCount: 2
    argNames:
    - compositor
    - speed
    argTypes:
    - GF_Compositor*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4453
      start: 4383
    functionDepth: 5
    functionLinenumber: 4383
    functionLinenumberEnd: 4453
    functionName: gf_sc_set_speed
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 2
    functionsReached:
    - gf_sc_get_time_in_ms
    - gf_odm_set_speed
    - gf_filter_pid_get_property
    - gf_media_get_reduced_frame_rate
    - gf_scene_restart_dynamic
    - gf_list_enum
    - gf_sc_set_fps
    - gf_mulfix
    - FIX2FLT
    - gf_clock_set_speed
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_set_speed(GF_Compositor *compositor, Fixed speed)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_is_supported_source
      Src: /src/gpac/src/compositor/compositor.c:4464,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 6
    argCount: 3
    argNames:
    - compositor
    - fileName
    - use_parent_url
    argTypes:
    - GF_Compositor*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4465
      start: 4455
    functionDepth: 1
    functionLinenumber: 4455
    functionLinenumberEnd: 4465
    functionName: gf_sc_is_supported_url
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 2
    functionsReached:
    - gf_filter_is_supported_source
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_is_supported_url(GF_Compositor *compositor, const char
      *fileName, Bool use_parent_url)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_has_scripting
      Src: /src/gpac/src/compositor/compositor.c:4474,1
    - Dst: gf_sc_check_end_of_scene
      Src: /src/gpac/src/compositor/compositor.c:4476,1
    - Dst: gf_sc_check_end_of_scene
      Src: /src/gpac/src/compositor/compositor.c:4478,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/compositor/compositor.c:4497,1
    - Dst: gf_dm_get_data_rate
      Src: /src/gpac/src/compositor/compositor.c:4499,1
    - Dst: gf_sc_get_option
      Src: /src/gpac/src/compositor/compositor.c:4509,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 37
    argCount: 2
    argNames:
    - compositor
    - type
    argTypes:
    - GF_Compositor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4511
      start: 4469
    functionDepth: 5
    functionLinenumber: 4469
    functionLinenumberEnd: 4511
    functionName: gf_sc_get_option_internal
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_download_manager
    - gf_sc_get_option
    - gf_sc_check_end_of_scene
    - gf_sg_has_scripting
    - gf_dm_get_data_rate
    linkageType: ''
    returnType: u32
    signature: u32 gf_sc_get_option_internal(GF_Compositor *compositor, u32 type)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor.c:4519,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/compositor/compositor.c:4524,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/compositor.c:4525,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 15
    argCount: 2
    argNames:
    - compositor
    - toURL
    argTypes:
    - GF_Compositor*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4528
      start: 4513
    functionDepth: 1
    functionLinenumber: 4513
    functionLinenumberEnd: 4528
    functionName: gf_sc_navigate_to
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 3
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_url_concatenate
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_navigate_to(GF_Compositor *compositor, const char *toURL)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:4543,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/compositor.c:4545,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/compositor.c:4547,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/compositor.c:4558,1
    - Dst: mediacontrol_resume
      Src: /src/gpac/src/compositor/compositor.c:4562,1
    - Dst: mediacontrol_pause
      Src: /src/gpac/src/compositor/compositor.c:4563,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/compositor.c:4567,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/compositor.c:4569,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:4575,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 35
    argCount: 3
    argNames:
    - compositor
    - ms_diff
    - force_resume_pause
    argTypes:
    - GF_Compositor*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4579
      start: 4531
    functionDepth: 2
    functionLinenumber: 4531
    functionLinenumberEnd: 4579
    functionName: gf_sc_step_clocks_intern
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - mediacontrol_resume
    - gf_sc_next_frame_state
    - gf_list_enum
    - gf_sc_lock
    - mediacontrol_pause
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sc_step_clocks_intern(GF_Compositor *compositor, u32 ms_diff,
      Bool force_resume_pause)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: mediacontrol_pause
      Src: /src/gpac/src/compositor/compositor.c:4598,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/src/compositor/compositor.c:4608,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/src/compositor/compositor.c:4610,1
    - Dst: mediacontrol_pause
      Src: /src/gpac/src/compositor/compositor.c:4615,1
    - Dst: gf_sc_step_clocks_intern
      Src: /src/gpac/src/compositor/compositor.c:4620,1
    - Dst: mediacontrol_pause
      Src: /src/gpac/src/compositor/compositor.c:4635,1
    - Dst: mediacontrol_resume
      Src: /src/gpac/src/compositor/compositor.c:4637,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 43
    argCount: 4
    argNames:
    - compositor
    - PlayState
    - reset_audio
    - pause_clocks
    argTypes:
    - GF_Compositor*
    - u32
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4640
      start: 4582
    functionDepth: 12
    functionLinenumber: 4582
    functionLinenumberEnd: 4640
    functionName: gf_sc_set_play_state_internal
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - mediacontrol_resume
    - gf_sc_set_option
    - gf_sc_step_clocks_intern
    - mediacontrol_pause
    linkageType: ''
    returnType: void
    signature: void gf_sc_set_play_state_internal(GF_Compositor *compositor, u32 PlayState,
      Bool reset_audio, Bool pause_clocks)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_get_option_internal
      Src: /src/gpac/src/compositor/compositor.c:4651,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/compositor/compositor.c:4660,1
    - Dst: gf_sc_set_play_state_internal
      Src: /src/gpac/src/compositor/compositor.c:4669,1
    - Dst: gf_sc_set_play_state_internal
      Src: /src/gpac/src/compositor/compositor.c:4672,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:4674,1
    - Dst: gf_scene_restart_dynamic
      Src: /src/gpac/src/compositor/compositor.c:4675,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:4676,1
    - Dst: gf_sc_set_play_state_internal
      Src: /src/gpac/src/compositor/compositor.c:4681,1
    - Dst: gf_odm_stop
      Src: /src/gpac/src/compositor/compositor.c:4683,1
    - Dst: gf_scene_disconnect
      Src: /src/gpac/src/compositor/compositor.c:4684,1
    - Dst: gf_odm_start
      Src: /src/gpac/src/compositor/compositor.c:4688,1
    - Dst: gf_sc_set_play_state_internal
      Src: /src/gpac/src/compositor/compositor.c:4689,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/src/compositor/compositor.c:4691,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 3
    argNames:
    - compositor
    - from_time
    - pause_at_first_frame
    argTypes:
    - GF_Compositor*
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4693
      start: 4644
    functionDepth: 13
    functionLinenumber: 4644
    functionLinenumberEnd: 4693
    functionName: gf_sc_play_from_time
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 2
    functionsReached:
    - gf_sc_set_option
    - gf_sc_get_option_internal
    - gf_scene_disconnect
    - gf_odm_stop
    - gf_sc_set_play_state_internal
    - gf_scene_restart_dynamic
    - gf_sc_lock
    - gf_timestamp_rescale
    - gf_odm_start
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_play_from_time(GF_Compositor *compositor, u64 from_time,
      u32 pause_at_first_frame)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/compositor/compositor.c:4701,1
    - Dst: gf_sc_set_play_state_internal
      Src: /src/gpac/src/compositor/compositor.c:4710,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/compositor.c:4718,1
    - Dst: gf_sc_play_from_time
      Src: /src/gpac/src/compositor/compositor.c:4719,1
    - Dst: gf_sc_disconnect
      Src: /src/gpac/src/compositor/compositor.c:4726,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:4728,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/compositor.c:4730,1
    - Dst: gf_scene_new
      Src: /src/gpac/src/compositor/compositor.c:4733,1
    - Dst: gf_odm_new
      Src: /src/gpac/src/compositor/compositor.c:4734,1
    - Dst: gf_sc_set_play_state_internal
      Src: /src/gpac/src/compositor/compositor.c:4747,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/compositor.c:4751,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/compositor.c:4753,1
    - Dst: gf_scene_generate_views
      Src: /src/gpac/src/compositor/compositor.c:4754,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/compositor.c:4757,1
    - Dst: gf_scene_generate_mosaic
      Src: /src/gpac/src/compositor/compositor.c:4758,1
    - Dst: gf_scene_ns_connect_object
      Src: /src/gpac/src/compositor/compositor.c:4762,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 46
    argCount: 6
    argNames:
    - compositor
    - URL
    - startTime
    - pause_at_first_frame
    - secondary_scene
    - parent_path
    argTypes:
    - GF_Compositor*
    - char*
    - u64
    - u32
    - Bool
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4763
      start: 4695
    functionDepth: 14
    functionLinenumber: 4695
    functionLinenumberEnd: 4763
    functionName: gf_sc_connect_from_time
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 5
    functionsReached:
    - gf_assert
    - gf_scene_generate_views
    - gf_scene_generate_mosaic
    - gf_scene_new
    - gf_odm_new
    - GF_LOG
    - gf_scene_ns_connect_object
    - gf_sc_play_from_time
    - strcmp
    - strnicmp
    - gf_sc_disconnect
    - gf_sc_set_play_state_internal
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_connect_from_time(GF_Compositor *compositor, const
      char *URL, u64 startTime, u32 pause_at_first_frame, Bool secondary_scene, const
      char *parent_path)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_set_play_state_internal
      Src: /src/gpac/src/compositor/compositor.c:4769,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:4773,1
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/compositor/compositor.c:4775,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/compositor.c:4776,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4778
      start: 4765
    functionDepth: 13
    functionLinenumber: 4765
    functionLinenumberEnd: 4778
    functionName: gf_sc_disconnect
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 5
    functionsReached:
    - gf_sc_set_play_state_internal
    - gf_sc_lock
    - gf_odm_disconnect
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_disconnect(GF_Compositor *compositor)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/compositor.c:4793,1
    - Dst: check_in_scene
      Src: /src/gpac/src/compositor/compositor.c:4795,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - scene
    - odm
    argTypes:
    - GF_Scene*
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4798
      start: 4783
    functionDepth: 1
    functionLinenumber: 4783
    functionLinenumberEnd: 4798
    functionName: check_in_scene
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - check_in_scene
    - gf_list_enum
    linkageType: ''
    returnType: Bool
    signature: Bool check_in_scene(GF_Scene *scene, GF_ObjectManager *odm)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: check_in_scene
      Src: /src/gpac/src/compositor/compositor.c:4819,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/compositor/compositor.c:4835,1
    - Dst: strcpy
      Src: /src/gpac/src/compositor/compositor.c:4838,1
    - Dst: strlwr
      Src: /src/gpac/src/compositor/compositor.c:4839,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/compositor.c:4840,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/compositor.c:4841,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/compositor.c:4841,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/compositor.c:4842,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/compositor.c:4842,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/compositor.c:4842,1
    - Dst: gf_sm_dumper_new
      Src: /src/gpac/src/compositor/compositor.c:4845,1
    - Dst: gf_sm_dump_graph
      Src: /src/gpac/src/compositor/compositor.c:4848,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:4849,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:4850,1
    - Dst: gf_sm_dumper_set_extra_graph
      Src: /src/gpac/src/compositor/compositor.c:4851,1
    - Dst: gf_sm_dump_graph
      Src: /src/gpac/src/compositor/compositor.c:4852,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/compositor.c:4855,1
    - Dst: gf_sm_dumper_set_extra_graph
      Src: /src/gpac/src/compositor/compositor.c:4856,1
    - Dst: gf_sm_dump_get_name
      Src: /src/gpac/src/compositor/compositor.c:4857,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/compositor.c:4861,1
    - Dst: gf_sm_dump_get_name
      Src: /src/gpac/src/compositor/compositor.c:4861,1
    - Dst: gf_sm_dumper_del
      Src: /src/gpac/src/compositor/compositor.c:4862,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 52
    argCount: 6
    argNames:
    - compositor
    - rad_name
    - filename
    - xml_dump
    - skip_protos
    - scene_od
    argTypes:
    - GF_Compositor*
    - char*
    - char**
    - Bool
    - Bool
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4867
      start: 4800
    functionDepth: 2
    functionLinenumber: 4800
    functionLinenumberEnd: 4867
    functionName: gf_sc_dump_scene_ex
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_strdup
    - gf_sm_dump_graph
    - strcpy
    - strlwr
    - check_in_scene
    - gf_list_count
    - gf_file_ext_start
    - strcmp
    - strncmp
    - gf_sm_dumper_set_extra_graph
    - gf_sm_dumper_new
    - gf_sm_dumper_del
    - gf_sm_dump_get_name
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_dump_scene_ex(GF_Compositor *compositor, char *rad_name,
      char **filename, Bool xml_dump, Bool skip_protos, GF_ObjectManager *scene_od)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_dump_scene_ex
      Src: /src/gpac/src/compositor/compositor.c:4871,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - compositor
    - rad_name
    - filename
    - xml_dump
    - skip_protos
    argTypes:
    - GF_Compositor*
    - char*
    - char**
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4872
      start: 4868
    functionDepth: 3
    functionLinenumber: 4868
    functionLinenumberEnd: 4872
    functionName: gf_sc_dump_scene
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 2
    functionsReached:
    - gf_sc_dump_scene_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_dump_scene(GF_Compositor *compositor, char *rad_name,
      char **filename, Bool xml_dump, Bool skip_protos)
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:4889,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:4889,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/compositor.c:4892,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/compositor.c:4894,1
    - Dst: svg_exec_script
      Src: /src/gpac/src/compositor/compositor.c:4898,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/compositor.c:4908,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/compositor.c:4911,1
    - Dst: memset
      Src: /src/gpac/src/compositor/compositor.c:4913,1
    - Dst: gf_scene_register_associated_media
      Src: /src/gpac/src/compositor/compositor.c:4916,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/compositor.c:4920,1
    - Dst: memset
      Src: /src/gpac/src/compositor/compositor.c:4925,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/compositor.c:4927,1
    - Dst: strchr
      Src: /src/gpac/src/compositor/compositor.c:4931,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/compositor.c:4936,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/compositor.c:4938,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/compositor.c:4944,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:4945,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:4947,1
    - Dst: gf_scene_register_associated_media
      Src: /src/gpac/src/compositor/compositor.c:4963,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/compositor.c:4967,1
    - Dst: atoi
      Src: /src/gpac/src/compositor/compositor.c:4968,1
    - Dst: gf_scene_select_object
      Src: /src/gpac/src/compositor/compositor.c:4969,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:4969,1
    - Dst: memset
      Src: /src/gpac/src/compositor/compositor.c:4975,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/compositor.c:4976,1
    - Dst: gf_scene_new
      Src: /src/gpac/src/compositor/compositor.c:4983,1
    - Dst: gf_odm_new
      Src: /src/gpac/src/compositor/compositor.c:4984,1
    - Dst: gf_sm_new
      Src: /src/gpac/src/compositor/compositor.c:4988,1
    - Dst: gf_sm_new
      Src: /src/gpac/src/compositor/compositor.c:4991,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:4994,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:5000,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/compositor.c:5003,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/compositor.c:5010,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/compositor.c:5012,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/compositor.c:5014,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/compositor/compositor.c:5017,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/compositor.c:5019,1
    - Dst: gf_sg_get_max_node_id
      Src: /src/gpac/src/compositor/compositor.c:5027,1
    - Dst: gf_scene_get_time
      Src: /src/gpac/src/compositor/compositor.c:5034,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:5037,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:5037,1
    - Dst: gf_scene_get_time
      Src: /src/gpac/src/compositor/compositor.c:5039,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:5041,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:5041,1
    - Dst: gf_scene_get_time
      Src: /src/gpac/src/compositor/compositor.c:5043,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:5045,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:5045,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:5046,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:5046,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:5047,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:5047,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:5048,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:5048,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:5049,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/compositor.c:5049,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/compositor.c:5050,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/compositor.c:5051,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/compositor.c:5051,1
    - Dst: gf_scene_get_time
      Src: /src/gpac/src/compositor/compositor.c:5054,1
    - Dst: gf_scene_get_time
      Src: /src/gpac/src/compositor/compositor.c:5059,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/src/compositor/compositor.c:5063,1
    - Dst: gf_sm_load_string
      Src: /src/gpac/src/compositor/compositor.c:5064,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/src/compositor/compositor.c:5065,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:5068,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:5070,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:5071,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:5073,1
    - Dst: gf_sg_command_apply_list
      Src: /src/gpac/src/compositor/compositor.c:5074,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/compositor/compositor.c:5084,1
    - Dst: gf_scene_attach_to_compositor
      Src: /src/gpac/src/compositor/compositor.c:5085,1
    - Dst: gf_sm_del
      Src: /src/gpac/src/compositor/compositor.c:5087,1
    CyclomaticComplexity: 75
    EdgeCount: 75
    ICount: 179
    argCount: 3
    argNames:
    - compositor
    - type
    - com
    argTypes:
    - GF_Compositor*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5092
      start: 4876
    functionDepth: 17
    functionLinenumber: 4876
    functionLinenumberEnd: 5092
    functionName: gf_sc_scene_update
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 4
    functionsReached:
    - gf_node_get_tag
    - gf_sm_load_init
    - gf_list_count
    - memset
    - gf_scene_select_object
    - atoi
    - gf_opts_get_key
    - strchr
    - gf_scene_get_time
    - gf_scene_attach_to_compositor
    - gf_sg_set_scene_size_info
    - gf_list_get
    - strncmp
    - gf_sg_get_max_node_id
    - stricmp
    - gf_sg_get_root_node
    - gf_sm_load_string
    - svg_exec_script
    - sscanf
    - gf_scene_new
    - gf_odm_new
    - strnicmp
    - gf_scene_register_associated_media
    - gf_sm_new
    - gf_sm_load_done
    - gf_sm_del
    - gf_sg_command_apply_list
    - gf_filter_pid_get_property
    - gf_sm_stream_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_scene_update(GF_Compositor *compositor, char *type,
      char *com)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_set_service_id
      Src: /src/gpac/src/compositor/compositor.c:5098,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - compositor
    - service_id
    argTypes:
    - GF_Compositor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5099
      start: 5094
    functionDepth: 14
    functionLinenumber: 5094
    functionLinenumberEnd: 5099
    functionName: gf_sc_select_service
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - gf_scene_set_service_id
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_select_service(GF_Compositor *compositor, u32 service_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5107
      start: 5102
    functionDepth: 0
    functionLinenumber: 5102
    functionLinenumberEnd: 5107
    functionName: gf_sc_get_url
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sc_get_url(GF_Compositor *compositor)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:5117,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5122
      start: 5109
    functionDepth: 1
    functionLinenumber: 5109
    functionLinenumberEnd: 5122
    functionName: gf_sc_get_main_pid
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sc_get_main_pid(GF_Compositor *compositor)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/compositor.c:5132,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/compositor.c:5136,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/compositor.c:5150,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 2
    argNames:
    - compositor
    - descriptions
    argTypes:
    - GF_Compositor*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5157
      start: 5124
    functionDepth: 2
    functionLinenumber: 5124
    functionLinenumberEnd: 5157
    functionName: gf_sc_get_world_info
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sc_get_world_info(GF_Compositor *compositor, GF_List
      *descriptions)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_get_media_object
      Src: /src/gpac/src/compositor/compositor.c:5173,1
    - Dst: gf_scene_select_object
      Src: /src/gpac/src/compositor/compositor.c:5178,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/compositor.c:5181,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/compositor.c:5182,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/compositor.c:5183,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 3
    argNames:
    - compositor
    - url
    - auto_play
    argTypes:
    - GF_Compositor*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5188
      start: 5159
    functionDepth: 3
    functionLinenumber: 5159
    functionLinenumberEnd: 5188
    functionName: gf_sc_add_object
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_scene_get_media_object
    - gf_scene_select_object
    - gf_list_del_item
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_add_object(GF_Compositor *compositor, const char *url,
      Bool auto_play)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - compositor
    - nb_frames_drawn
    argTypes:
    - GF_Compositor*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5200
      start: 5191
    functionDepth: 0
    functionLinenumber: 5191
    functionLinenumberEnd: 5200
    functionName: gf_sc_get_simulation_frame_rate
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_get_simulation_frame_rate(GF_Compositor *compositor,
      u32 *nb_frames_drawn)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/compositor.c:5208,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:5210,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/compositor.c:5211,1
    - Dst: gf_clock_elapsed_time
      Src: /src/gpac/src/compositor/compositor.c:5212,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5215
      start: 5202
    functionDepth: 1
    functionLinenumber: 5202
    functionLinenumberEnd: 5215
    functionName: gf_sc_get_elapsed_time_in_ms
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_clock_elapsed_time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_get_elapsed_time_in_ms(GF_Compositor *compositor)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_find_object
      Src: /src/gpac/src/compositor/compositor.c:5230,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5233
      start: 5217
    functionDepth: 2
    functionLinenumber: 5217
    functionLinenumberEnd: 5233
    functionName: gf_sc_get_current_service_id
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - gf_scene_find_object
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_get_current_service_id(GF_Compositor *compositor)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_Compositor*::video_out::ProcessEvent
      Src: /src/gpac/src/compositor/events.c:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 43
    functionName: gf_sc_reset_collide_cursor
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - GF_Compositor*::video_out::ProcessEvent
    linkageType: ''
    returnType: void
    signature: void gf_sc_reset_collide_cursor(GF_Compositor *compositor)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 2
    argNames:
    - compositor
    - event
    argTypes:
    - GF_Compositor*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 68
    functionName: exec_text_selection
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool exec_text_selection(GF_Compositor *compositor, GF_Event *event)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: memmove
      Src: /src/gpac/src/compositor/events.c:78,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/events.c:85,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/events.c:92,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/compositor/events.c:94,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/events.c:97,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/events.c:98,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/events.c:104,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/events.c:106,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/events.c:110,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/events.c:116,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:122,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/compositor/events.c:125,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/events.c:127,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/events.c:130,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 44
    argCount: 2
    argNames:
    - compositor
    - final_flush
    argTypes:
    - GF_Compositor*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 70
    functionDepth: 11
    functionLinenumber: 70
    functionLinenumberEnd: 133
    functionName: flush_text_node_edit
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_node_event_out
    - memmove
    - gf_utf8_wcstombs
    - gf_node_dirty_set
    - gf_node_set_private
    - gf_sc_next_frame_state
    - memset
    - gf_node_get_field
    - gf_node_changed
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void flush_text_node_edit(GF_Compositor *compositor, Bool final_flush)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/compositor/events.c:143,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/events.c:146,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/events.c:148,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/compositor/events.c:149,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/events.c:156,1
    - Dst: memmove
      Src: /src/gpac/src/compositor/events.c:157,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/events.c:158,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/events.c:159,1
    - Dst: flush_text_node_edit
      Src: /src/gpac/src/compositor/events.c:163,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/events.c:164,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 2
    argNames:
    - compositor
    - text
    argTypes:
    - GF_Compositor*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 136
    functionDepth: 12
    functionLinenumber: 136
    functionLinenumberEnd: 167
    functionName: gf_sc_paste_text
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 2
    functionsReached:
    - gf_free
    - memmove
    - flush_text_node_edit
    - memcpy
    - gf_utf8_mbstowcs
    - strlen
    - gf_sc_lock
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_paste_text(GF_Compositor *compositor, const char *text)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/compositor/events.c:216,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/events.c:234,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/events.c:235,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/events.c:237,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/events.c:248,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/events.c:260,1
    - Dst: gf_node_new
      Src: /src/gpac/src/compositor/events.c:275,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/events.c:275,1
    - Dst: gf_node_init
      Src: /src/gpac/src/compositor/events.c:277,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/events.c:278,1
    - Dst: gf_node_list_find_child
      Src: /src/gpac/src/compositor/events.c:280,1
    - Dst: gf_node_list_insert_child
      Src: /src/gpac/src/compositor/events.c:284,1
    - Dst: gf_node_list_insert_child
      Src: /src/gpac/src/compositor/events.c:290,1
    - Dst: gf_node_new
      Src: /src/gpac/src/compositor/events.c:291,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/events.c:291,1
    - Dst: gf_node_init
      Src: /src/gpac/src/compositor/events.c:292,1
    - Dst: gf_node_list_insert_child
      Src: /src/gpac/src/compositor/events.c:293,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/events.c:294,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/events.c:298,1
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/src/compositor/events.c:301,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/events.c:302,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/compositor/events.c:304,1
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/src/compositor/events.c:310,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/events.c:311,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/compositor/events.c:313,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/events.c:317,1
    - Dst: gf_node_list_del_child
      Src: /src/gpac/src/compositor/events.c:328,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/events.c:329,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/events.c:330,1
    - Dst: flush_text_node_edit
      Src: /src/gpac/src/compositor/events.c:335,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/events.c:337,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/events.c:338,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/events.c:340,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/events.c:340,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/events.c:340,1
    - Dst: strcat
      Src: /src/gpac/src/compositor/events.c:341,1
    - Dst: gf_node_list_del_child
      Src: /src/gpac/src/compositor/events.c:343,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/events.c:344,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/compositor/events.c:357,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/events.c:357,1
    - Dst: flush_text_node_edit
      Src: /src/gpac/src/compositor/events.c:369,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/events.c:372,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/events.c:374,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/events.c:375,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/compositor/events.c:378,1
    - Dst: memmove
      Src: /src/gpac/src/compositor/events.c:381,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/compositor/events.c:386,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/events.c:396,1
    - Dst: flush_text_node_edit
      Src: /src/gpac/src/compositor/events.c:404,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 185
    argCount: 2
    argNames:
    - compositor
    - cmd_type
    argTypes:
    - GF_Compositor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 168
    functionDepth: 12
    functionLinenumber: 168
    functionLinenumberEnd: 406
    functionName: load_text_node
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_free
    - gf_node_list_insert_child
    - gf_node_list_find_child
    - gf_utf8_wcslen
    - gf_node_unregister
    - gf_realloc
    - gf_node_init
    - strcat
    - gf_strdup
    - gf_utf8_wcstombs
    - gf_dom_add_text_node
    - gf_utf8_mbstowcs
    - memmove
    - gf_sg_vrml_mf_append
    - flush_text_node_edit
    - gf_node_list_del_child
    - gf_node_new
    - gf_node_get_graph
    - gf_malloc
    - strlen
    - gf_node_register
    linkageType: ''
    returnType: Bool
    signature: Bool load_text_node(GF_Compositor *compositor, u32 cmd_type)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: load_text_node
      Src: /src/gpac/src/compositor/events.c:413,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:427,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/events.c:434,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/events.c:435,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/events.c:441,1
    - Dst: memmove
      Src: /src/gpac/src/compositor/events.c:443,1
    - Dst: load_text_node
      Src: /src/gpac/src/compositor/events.c:467,1
    - Dst: load_text_node
      Src: /src/gpac/src/compositor/events.c:482,1
    - Dst: load_text_node
      Src: /src/gpac/src/compositor/events.c:493,1
    - Dst: memmove
      Src: /src/gpac/src/compositor/events.c:501,1
    - Dst: flush_text_node_edit
      Src: /src/gpac/src/compositor/events.c:504,1
    - Dst: load_text_node
      Src: /src/gpac/src/compositor/events.c:506,1
    - Dst: memmove
      Src: /src/gpac/src/compositor/events.c:512,1
    - Dst: flush_text_node_edit
      Src: /src/gpac/src/compositor/events.c:514,1
    - Dst: flush_text_node_edit
      Src: /src/gpac/src/compositor/events.c:520,1
    - Dst: load_text_node
      Src: /src/gpac/src/compositor/events.c:523,1
    - Dst: memmove
      Src: /src/gpac/src/compositor/events.c:530,1
    - Dst: memmove
      Src: /src/gpac/src/compositor/events.c:531,1
    - Dst: flush_text_node_edit
      Src: /src/gpac/src/compositor/events.c:538,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 118
    argCount: 2
    argNames:
    - compositor
    - event
    argTypes:
    - GF_Compositor*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 539
      start: 408
    functionDepth: 13
    functionLinenumber: 408
    functionLinenumberEnd: 539
    functionName: exec_text_input
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - memmove
    - flush_text_node_edit
    - gf_dom_event_fire
    - load_text_node
    - memset
    - gf_sg_get_root_node
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void exec_text_input(GF_Compositor *compositor, GF_Event *event)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:544,1
    - Dst: GF_Compositor*::video_out::ProcessEvent
      Src: /src/gpac/src/compositor/events.c:548,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/src/compositor/events.c:551,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - compositor
    - do_show
    argTypes:
    - GF_Compositor*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 541
    functionDepth: 21
    functionLinenumber: 541
    functionLinenumberEnd: 552
    functionName: toggle_keyboard
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_sc_user_event
    - GF_Compositor*::video_out::ProcessEvent
    linkageType: ''
    returnType: void
    signature: void toggle_keyboard(GF_Compositor * compositor, Bool do_show)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: toggle_keyboard
      Src: /src/gpac/src/compositor/events.c:562,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/events.c:567,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/events.c:578,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/events.c:578,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/events.c:580,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/events.c:580,1
    - Dst: toggle_keyboard
      Src: /src/gpac/src/compositor/events.c:583,1
    - Dst: toggle_keyboard
      Src: /src/gpac/src/compositor/events.c:587,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/events.c:596,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:611,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/events.c:614,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/events.c:618,1
    - Dst: toggle_keyboard
      Src: /src/gpac/src/compositor/events.c:622,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 58
    argCount: 2
    argNames:
    - compositor
    - check_focus_node
    argTypes:
    - GF_Compositor*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 554
    functionDepth: 22
    functionLinenumber: 554
    functionLinenumberEnd: 625
    functionName: hit_node_editable
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_svg_flatten_attributes
    - gf_dom_event_fire
    - strstr
    - memset
    - toggle_keyboard
    linkageType: ''
    returnType: Bool
    signature: Bool hit_node_editable(GF_Compositor *compositor, Bool check_focus_node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/compositor/events.c:634,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/compositor/events.c:637,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/events.c:639,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/events.c:641,1
    - Dst: get_parent_focus
      Src: /src/gpac/src/compositor/events.c:646,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - node
    - hit_use_stack
    - cur_idx
    argTypes:
    - GF_Node*
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 647
      start: 628
    functionDepth: 5
    functionLinenumber: 628
    functionLinenumberEnd: 647
    functionName: get_parent_focus
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 1
    functionsReached:
    - gf_node_get_parent
    - gf_list_get
    - get_parent_focus
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *get_parent_focus(GF_Node *node, GF_List *hit_use_stack, u32
      cur_idx)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/events.c:665,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/events.c:666,1
    - Dst: gf_list_last
      Src: /src/gpac/src/compositor/events.c:672,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:673,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/events.c:674,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/events.c:675,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:687,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:696,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:704,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:715,1
    - Dst: get_parent_focus
      Src: /src/gpac/src/compositor/events.c:720,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/events.c:720,1
    - Dst: gf_sc_focus_switch_ring
      Src: /src/gpac/src/compositor/events.c:721,1
    - Dst: gf_sc_focus_switch_ring
      Src: /src/gpac/src/compositor/events.c:722,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:729,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:739,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:746,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:753,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/events.c:754,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/events.c:755,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:760,1
    - Dst: gf_sc_focus_switch_ring
      Src: /src/gpac/src/compositor/events.c:765,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:771,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/events.c:772,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/events.c:773,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:780,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/events.c:780,1
    - Dst: GF_Compositor*::video_out::ProcessEvent
      Src: /src/gpac/src/compositor/events.c:786,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:792,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/events.c:809,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/events.c:810,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/events.c:817,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:830,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/events.c:837,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/events.c:838,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 154
    argCount: 2
    argNames:
    - compositor
    - event
    argTypes:
    - GF_Compositor*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 846
      start: 651
    functionDepth: 9
    functionLinenumber: 651
    functionLinenumberEnd: 846
    functionName: exec_event_dom
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - get_parent_focus
    - gf_dom_event_fire
    - FIX2INT
    - memset
    - gf_dom_event_fire_ex
    - gf_list_count
    - gf_sc_focus_switch_ring
    - GF_Compositor*::video_out::ProcessEvent
    - gf_sg_get_root_node
    - gf_list_last
    linkageType: ''
    returnType: Bool
    signature: Bool exec_event_dom(GF_Compositor *compositor, GF_Event *event)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: compositor_compositetexture_handle_event
      Src: /src/gpac/src/compositor/events.c:864,1
    - Dst: compositor_compositetexture_handle_event
      Src: /src/gpac/src/compositor/events.c:874,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/events.c:880,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/events.c:882,1
    - Dst: GF_SensorHandler*::OnUserEvent
      Src: /src/gpac/src/compositor/events.c:885,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/events.c:886,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/events.c:897,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/events.c:905,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/events.c:908,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/compositor/events.c:909,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/events.c:910,1
    - Dst: gf_scene_get_keynav
      Src: /src/gpac/src/compositor/events.c:912,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/events.c:912,1
    - Dst: gf_sc_change_key_navigator
      Src: /src/gpac/src/compositor/events.c:913,1
    - Dst: GF_SensorHandler*::OnUserEvent
      Src: /src/gpac/src/compositor/events.c:917,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/events.c:924,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/events.c:930,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/events.c:932,1
    - Dst: GF_SensorHandler*::OnUserEvent
      Src: /src/gpac/src/compositor/events.c:933,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/events.c:936,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/events.c:939,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/events.c:941,1
    - Dst: GF_Compositor*::video_out::ProcessEvent
      Src: /src/gpac/src/compositor/events.c:997,1
    - Dst: gf_sc_reset_collide_cursor
      Src: /src/gpac/src/compositor/events.c:1001,1
    - Dst: gf_sg_activate_routes
      Src: /src/gpac/src/compositor/events.c:1008,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/events.c:1010,1
    - Dst: gf_sg_activate_routes
      Src: /src/gpac/src/compositor/events.c:1011,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 120
    argCount: 2
    argNames:
    - compositor
    - ev
    argTypes:
    - GF_Compositor*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1016
      start: 851
    functionDepth: 3
    functionLinenumber: 851
    functionLinenumberEnd: 1016
    functionName: gf_sc_exec_event_vrml
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_list_get
    - gf_sg_activate_routes
    - gf_sc_change_key_navigator
    - gf_list_reset
    - gf_node_get_id
    - gf_sc_reset_collide_cursor
    - gf_scene_get_keynav
    - gf_list_count
    - GF_Compositor*::video_out::ProcessEvent
    - gf_list_add
    - gf_list_del_item
    - gf_node_get_graph
    - GF_SensorHandler*::OnUserEvent
    - gf_list_enum
    - compositor_compositetexture_handle_event
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sc_exec_event_vrml(GF_Compositor *compositor, GF_Event *ev)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/events.c:1027,1
    - Dst: compositor_mpeg4_layout_get_sensor_handler
      Src: /src/gpac/src/compositor/events.c:1031,1
    - Dst: compositor_mpeg4_get_sensor_handler
      Src: /src/gpac/src/compositor/events.c:1034,1
    - Dst: compositor_mpeg4_get_sensor_handler
      Src: /src/gpac/src/compositor/events.c:1040,1
    - Dst: GF_SensorHandler*::OnUserEvent
      Src: /src/gpac/src/compositor/events.c:1046,1
    - Dst: compositor_mpeg4_get_sensor_handler
      Src: /src/gpac/src/compositor/events.c:1049,1
    - Dst: GF_SensorHandler*::OnUserEvent
      Src: /src/gpac/src/compositor/events.c:1051,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 4
    argNames:
    - compositor
    - node
    - ev
    - is_focus_out
    argTypes:
    - GF_Compositor*
    - GF_Node*
    - GF_Event*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1057
      start: 1019
    functionDepth: 3
    functionLinenumber: 1019
    functionLinenumberEnd: 1057
    functionName: exec_vrml_key_event
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - compositor_mpeg4_get_sensor_handler
    - GF_SensorHandler*::OnUserEvent
    - compositor_mpeg4_layout_get_sensor_handler
    linkageType: ''
    returnType: Bool
    signature: Bool exec_vrml_key_event(GF_Compositor *compositor, GF_Node *node,
      GF_Event *ev, Bool is_focus_out)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: hit_node_editable
      Src: /src/gpac/src/compositor/events.c:1090,1
    - Dst: exec_text_input
      Src: /src/gpac/src/compositor/events.c:1092,1
    - Dst: gf_sc_focus_switch_ring
      Src: /src/gpac/src/compositor/events.c:1097,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/events.c:1097,1
    - Dst: flush_text_node_edit
      Src: /src/gpac/src/compositor/events.c:1102,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/events.c:1106,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/events.c:1108,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/events.c:1113,1
    - Dst: visual_3d_pick_node
      Src: /src/gpac/src/compositor/events.c:1133,1
    - Dst: visual_2d_pick_node
      Src: /src/gpac/src/compositor/events.c:1136,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/events.c:1138,1
    - Dst: exec_text_selection
      Src: /src/gpac/src/compositor/events.c:1140,1
    - Dst: exec_event_dom
      Src: /src/gpac/src/compositor/events.c:1144,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/events.c:1147,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/events.c:1147,1
    - Dst: gf_sc_exec_event_vrml
      Src: /src/gpac/src/compositor/events.c:1151,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 69
    argCount: 4
    argNames:
    - visual
    - tr_state
    - ev
    - children
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    - GF_Event*
    - GF_ChildNodeItem*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1155
      start: 1061
    functionDepth: 23
    functionLinenumber: 1061
    functionLinenumberEnd: 1155
    functionName: visual_execute_event
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - gf_free
    - exec_text_input
    - gf_list_reset
    - flush_text_node_edit
    - visual_2d_pick_node
    - gf_sc_next_frame_state
    - gf_sc_focus_switch_ring
    - visual_3d_pick_node
    - gf_list_count
    - gf_sc_exec_event_vrml
    - hit_node_editable
    - gf_sg_get_root_node
    - exec_event_dom
    - exec_text_selection
    linkageType: ''
    returnType: Bool
    signature: Bool visual_execute_event(GF_VisualManager *visual, GF_TraverseState
      *tr_state, GF_Event *ev, GF_ChildNodeItem *children)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/events.c:1170,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/events.c:1193,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:1201,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/events.c:1205,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/events.c:1210,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/events.c:1214,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 52
    argCount: 2
    argNames:
    - compositor
    - key_code
    argTypes:
    - GF_Compositor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1220
      start: 1157
    functionDepth: 9
    functionLinenumber: 1157
    functionLinenumberEnd: 1220
    functionName: gf_sc_svg_focus_navigate
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - gf_svg_flatten_attributes
    - gf_sg_find_node_by_name
    - gf_dom_event_fire
    - memset
    - gf_sc_invalidate
    linkageType: ''
    returnType: u32
    signature: u32 gf_sc_svg_focus_navigate(GF_Compositor *compositor, u32 key_code)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/events.c:1227,1
    - Dst: gf_dom_listener_count
      Src: /src/gpac/src/compositor/events.c:1246,1
    - Dst: gf_dom_listener_get
      Src: /src/gpac/src/compositor/events.c:1249,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/compositor/events.c:1250,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 1
    argNames:
    - elt
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1266
      start: 1224
    functionDepth: 5
    functionLinenumber: 1224
    functionLinenumberEnd: 1266
    functionName: is_focus_target
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_dom_listener_get
    - gf_dom_listener_count
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: Bool
    signature: Bool is_focus_target(GF_Node *elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __child
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1281
      start: 1269
    functionDepth: 0
    functionLinenumber: 1269
    functionLinenumberEnd: 1281
    functionName: CALL_SET_FOCUS
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CALL_SET_FOCUS(__child)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/events.c:1284,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/compositor/events.c:1286,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/compositor/events.c:1288,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - compositor
    - elt
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1291
      start: 1282
    functionDepth: 1
    functionLinenumber: 1282
    functionLinenumberEnd: 1291
    functionName: rebuild_focus_ancestor
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_node_get_parent
    - gf_list_reset
    linkageType: ''
    returnType: void
    signature: void rebuild_focus_ancestor(GF_Compositor *compositor, GF_Node *elt)
  - BBCount: 99
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1306,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/events.c:1308,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1316,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1325,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1335,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/events.c:1362,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1364,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1386,1
    - Dst: CALL_SET_FOCUS
      Src: /src/gpac/src/compositor/events.c:1391,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1394,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1402,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/events.c:1409,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/events.c:1409,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/events.c:1411,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/events.c:1411,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1423,1
    - Dst: compositor_mpeg4_layout_get_sensor_handler
      Src: /src/gpac/src/compositor/events.c:1426,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1427,1
    - Dst: gf_node_proto_is_grouping
      Src: /src/gpac/src/compositor/events.c:1435,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/events.c:1439,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1441,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/compositor/events.c:1445,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1446,1
    - Dst: CALL_SET_FOCUS
      Src: /src/gpac/src/compositor/events.c:1451,1
    - Dst: gf_node_get_proto_root
      Src: /src/gpac/src/compositor/events.c:1451,1
    - Dst: CALL_SET_FOCUS
      Src: /src/gpac/src/compositor/events.c:1459,1
    - Dst: gf_scene_get_subscene_root
      Src: /src/gpac/src/compositor/events.c:1459,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/events.c:1466,1
    - Dst: set_focus
      Src: /src/gpac/src/compositor/events.c:1467,1
    - Dst: set_focus
      Src: /src/gpac/src/compositor/events.c:1468,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1470,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/events.c:1473,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1474,1
    - Dst: CALL_SET_FOCUS
      Src: /src/gpac/src/compositor/events.c:1481,1
    - Dst: compositor_mpeg4_get_sensor_handler
      Src: /src/gpac/src/compositor/events.c:1488,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1489,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1499,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1509,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/events.c:1512,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1515,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1522,1
    - Dst: is_focus_target
      Src: /src/gpac/src/compositor/events.c:1527,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1528,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1537,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1541,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1554,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1559,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/events.c:1562,1
    - Dst: rebuild_focus_ancestor
      Src: /src/gpac/src/compositor/events.c:1565,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1566,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1579,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1584,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/events.c:1587,1
    - Dst: rebuild_focus_ancestor
      Src: /src/gpac/src/compositor/events.c:1590,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1591,1
    - Dst: compositor_svg_get_xlink_resource_node
      Src: /src/gpac/src/compositor/events.c:1602,1
    - Dst: compositor_svg_get_xlink_resource_node
      Src: /src/gpac/src/compositor/events.c:1605,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1617,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/events.c:1620,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/compositor/events.c:1621,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/compositor/events.c:1624,1
    - Dst: set_focus
      Src: /src/gpac/src/compositor/events.c:1625,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1627,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/events.c:1633,1
    - Dst: set_focus
      Src: /src/gpac/src/compositor/events.c:1636,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1638,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/events.c:1645,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/events.c:1646,1
    - Dst: set_focus
      Src: /src/gpac/src/compositor/events.c:1647,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1650,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/events.c:1653,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/events.c:1654,1
    - Dst: set_focus
      Src: /src/gpac/src/compositor/events.c:1656,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1658,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/events.c:1663,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1664,1
    CyclomaticComplexity: 87
    EdgeCount: 87
    ICount: 307
    argCount: 4
    argNames:
    - compositor
    - elt
    - current_focus
    - prev_focus
    argTypes:
    - GF_Compositor*
    - GF_Node*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1666
      start: 1294
    functionDepth: 6
    functionLinenumber: 1294
    functionLinenumberEnd: 1666
    functionName: set_focus
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - is_focus_target
    - gf_scene_get_subscene_root
    - gf_sg_find_node_by_name
    - compositor_mpeg4_get_sensor_handler
    - gf_list_add
    - rebuild_focus_ancestor
    - gf_node_get_private
    - gf_list_rem_last
    - gf_svg_flatten_attributes
    - gf_node_list_get_child
    - gf_node_set_cyclic_traverse_flag
    - gf_node_get_proto_root
    - strstr
    - compositor_svg_get_xlink_resource_node
    - set_focus
    - compositor_mpeg4_layout_get_sensor_handler
    - gf_node_list_get_count
    - gf_node_get_field_by_name
    - gf_node_proto_is_grouping
    - CALL_SET_FOCUS
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *set_focus(GF_Compositor *compositor, GF_Node *elt, Bool current_focus,
      Bool prev_focus)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/compositor/events.c:1676,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/events.c:1679,1
    - Dst: gf_node_proto_is_grouping
      Src: /src/gpac/src/compositor/events.c:1712,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/compositor/events.c:1714,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/events.c:1727,1
    - Dst: browse_parent_for_focus
      Src: /src/gpac/src/compositor/events.c:1728,1
    - Dst: gf_node_list_find_child
      Src: /src/gpac/src/compositor/events.c:1735,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/events.c:1740,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/events.c:1743,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/events.c:1744,1
    - Dst: browse_parent_for_focus
      Src: /src/gpac/src/compositor/events.c:1748,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/compositor/events.c:1755,1
    - Dst: set_focus
      Src: /src/gpac/src/compositor/events.c:1757,1
    - Dst: set_focus
      Src: /src/gpac/src/compositor/events.c:1765,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/events.c:1773,1
    - Dst: browse_parent_for_focus
      Src: /src/gpac/src/compositor/events.c:1774,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 77
    argCount: 3
    argNames:
    - compositor
    - elt
    - prev_focus
    argTypes:
    - GF_Compositor*
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1775
      start: 1668
    functionDepth: 7
    functionLinenumber: 1668
    functionLinenumberEnd: 1775
    functionName: browse_parent_for_focus
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_node_list_get_child
    - gf_node_get_field_by_name
    - gf_node_list_find_child
    - browse_parent_for_focus
    - set_focus
    - gf_node_proto_is_grouping
    - gf_list_last
    - gf_list_rem_last
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *browse_parent_for_focus(GF_Compositor *compositor, GF_Node
      *elt, Bool prev_focus)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/events.c:1798,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/events.c:1799,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/events.c:1806,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/events.c:1807,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/events.c:1809,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/events.c:1809,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/events.c:1815,1
    - Dst: set_focus
      Src: /src/gpac/src/compositor/events.c:1819,1
    - Dst: browse_parent_for_focus
      Src: /src/gpac/src/compositor/events.c:1820,1
    - Dst: set_focus
      Src: /src/gpac/src/compositor/events.c:1823,1
    - Dst: browse_parent_for_focus
      Src: /src/gpac/src/compositor/events.c:1824,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/events.c:1827,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/events.c:1828,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/events.c:1832,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:1842,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:1843,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:1851,1
    - Dst: exec_vrml_key_event
      Src: /src/gpac/src/compositor/events.c:1855,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:1865,1
    - Dst: exec_vrml_key_event
      Src: /src/gpac/src/compositor/events.c:1869,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/events.c:1874,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/events.c:1875,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/events.c:1877,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/events.c:1880,1
    - Dst: hit_node_editable
      Src: /src/gpac/src/compositor/events.c:1882,1
    - Dst: exec_text_input
      Src: /src/gpac/src/compositor/events.c:1884,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/events.c:1886,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 80
    argCount: 4
    argNames:
    - compositor
    - move_prev
    - focus
    - force_focus
    argTypes:
    - GF_Compositor*
    - Bool
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1889
      start: 1777
    functionDepth: 23
    functionLinenumber: 1777
    functionLinenumberEnd: 1889
    functionName: gf_sc_focus_switch_ring
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 3
    functionsReached:
    - gf_node_get_tag
    - exec_text_input
    - gf_list_new
    - gf_list_get
    - gf_list_reset
    - gf_node_dirty_set
    - browse_parent_for_focus
    - gf_list_count
    - set_focus
    - memset
    - gf_dom_event_fire_ex
    - gf_list_add
    - exec_vrml_key_event
    - gf_sc_invalidate
    - hit_node_editable
    - gf_sg_get_root_node
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_focus_switch_ring(GF_Compositor *compositor, Bool move_prev,
      GF_Node *focus, u32 force_focus)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: exec_text_input
      Src: /src/gpac/src/compositor/events.c:1898,1
    - Dst: exec_event_dom
      Src: /src/gpac/src/compositor/events.c:1904,1
    - Dst: exec_vrml_key_event
      Src: /src/gpac/src/compositor/events.c:1907,1
    - Dst: exec_text_input
      Src: /src/gpac/src/compositor/events.c:1914,1
    - Dst: gf_sc_change_key_navigator
      Src: /src/gpac/src/compositor/events.c:1918,1
    - Dst: gf_sc_focus_switch_ring
      Src: /src/gpac/src/compositor/events.c:1924,1
    - Dst: gf_sc_svg_focus_navigate
      Src: /src/gpac/src/compositor/events.c:1931,1
    - Dst: gf_sc_change_key_navigator
      Src: /src/gpac/src/compositor/events.c:1951,1
    - Dst: visual_execute_event
      Src: /src/gpac/src/compositor/events.c:1962,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 56
    argCount: 4
    argNames:
    - compositor
    - tr_state
    - ev
    - children
    argTypes:
    - GF_Compositor*
    - GF_TraverseState*
    - GF_Event*
    - GF_ChildNodeItem*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1963
      start: 1891
    functionDepth: 24
    functionLinenumber: 1891
    functionLinenumberEnd: 1963
    functionName: gf_sc_execute_event
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - gf_sc_svg_focus_navigate
    - exec_text_input
    - gf_sc_change_key_navigator
    - gf_sc_focus_switch_ring
    - exec_vrml_key_event
    - exec_event_dom
    - visual_execute_event
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sc_execute_event(GF_Compositor *compositor, GF_TraverseState
      *tr_state, GF_Event *ev, GF_ChildNodeItem *children)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_forward_gf_event
      Src: /src/gpac/src/compositor/events.c:1967,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/events.c:1975,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/events.c:1981,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - compositor
    - ev
    - consumed
    argTypes:
    - GF_Compositor*
    - GF_Event*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1986
      start: 1965
    functionDepth: 2
    functionLinenumber: 1965
    functionLinenumberEnd: 1986
    functionName: forward_event
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - gf_sys_clock
    - gf_filter_forward_gf_event
    - gf_sc_send_event
    linkageType: ''
    returnType: Bool
    signature: Bool forward_event(GF_Compositor *compositor, GF_Event *ev, Bool consumed)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/events.c:2005,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/events.c:2010,1
    - Dst: gf_sc_execute_event
      Src: /src/gpac/src/compositor/events.c:2027,1
    - Dst: forward_event
      Src: /src/gpac/src/compositor/events.c:2046,1
    - Dst: forward_event
      Src: /src/gpac/src/compositor/events.c:2050,1
    - Dst: compositor_handle_navigation
      Src: /src/gpac/src/compositor/events.c:2056,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 48
    argCount: 2
    argNames:
    - compositor
    - evt
    argTypes:
    - GF_Compositor*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2059
      start: 1989
    functionDepth: 25
    functionLinenumber: 1989
    functionLinenumberEnd: 2059
    functionName: gf_sc_exec_event
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 2
    functionsReached:
    - FIX2INT
    - gf_sc_execute_event
    - forward_event
    - compositor_handle_navigation
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sc_exec_event(GF_Compositor *compositor, GF_Event *evt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/events.c:2067,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/events.c:2072,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/events.c:2078,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/compositor/events.c:2082,1
    - Dst: gf_sc_focus_switch_ring
      Src: /src/gpac/src/compositor/events.c:2084,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - sr
    - n
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2086
      start: 2061
    functionDepth: 24
    functionLinenumber: 2061
    functionLinenumberEnd: 2086
    functionName: gf_sc_change_key_navigator
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 3
    functionsReached:
    - gf_sc_focus_switch_ring
    - gf_node_get_parent
    - gf_node_event_out
    - gf_list_reset
    linkageType: ''
    returnType: void
    signature: void gf_sc_change_key_navigator(GF_Compositor *sr, GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - sr
    - n
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2093
      start: 2088
    functionDepth: 0
    functionLinenumber: 2088
    functionLinenumberEnd: 2093
    functionName: gf_sc_key_navigator_del
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_sc_key_navigator_del(GF_Compositor *sr, GF_Node *n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - cam
    argTypes:
    - GF_Camera*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 40
    functionName: camera_invalidate
    functionSourceFile: /src/gpac/src/compositor/camera.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void camera_invalidate(GF_Camera *cam)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/camera.c:81,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/camera.c:82,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/camera.c:83,1
    - Dst: sqrt
      Src: /src/gpac/src/compositor/camera.c:84,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/camera.c:88,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/camera.c:88,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/camera.c:89,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/camera.c:90,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/camera.c:91,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/camera.c:93,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/camera.c:94,1
    - Dst: gf_plane_get_p_vertex_idx
      Src: /src/gpac/src/compositor/camera.c:99,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 41
    argCount: 2
    argNames:
    - cam
    - mx
    argTypes:
    - GF_Camera*
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 101
    functionName: camera_frustum_from_matrix
    functionSourceFile: /src/gpac/src/compositor/camera.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_vec_len
    - gf_vec_scale
    - gf_plane_get_p_vertex_idx
    - sqrt
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void camera_frustum_from_matrix(GF_Camera *cam, GF_Matrix *mx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/camera.c:109,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/camera.c:110,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/camera.c:111,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/camera.c:111,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/camera.c:112,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/camera.c:113,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/camera.c:118,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/camera.c:131,1
    - Dst: gf_quat_from_axis_cos
      Src: /src/gpac/src/compositor/camera.c:132,1
    - Dst: gf_quat_multiply
      Src: /src/gpac/src/compositor/camera.c:142,1
    - Dst: gf_quat_multiply
      Src: /src/gpac/src/compositor/camera.c:143,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/camera.c:149,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/camera.c:151,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/camera.c:158,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/camera.c:164,1
    - Dst: gf_quat_from_axis_cos
      Src: /src/gpac/src/compositor/camera.c:166,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/camera.c:166,1
    - Dst: gf_quat_multiply
      Src: /src/gpac/src/compositor/camera.c:173,1
    - Dst: gf_quat_to_rotation
      Src: /src/gpac/src/compositor/camera.c:174,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 51
    argCount: 3
    argNames:
    - pos
    - target
    - up
    argTypes:
    - SFVec3f
    - SFVec3f
    - SFVec3f
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 175
    functionName: camera_get_orientation
    functionSourceFile: /src/gpac/src/compositor/camera.c
    functionUses: 2
    functionsReached:
    - gf_vec_dot
    - gf_vec_scale
    - gf_vec_cross
    - gf_vec_diff
    - gf_quat_from_axis_cos
    - gf_vec_norm
    - gf_quat_multiply
    - gf_quat_to_rotation
    linkageType: ''
    returnType: SFRotation
    signature: SFRotation camera_get_orientation(SFVec3f pos, SFVec3f target, SFVec3f
      up)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/camera.c:185,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/camera.c:193,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/camera.c:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - cam
    argTypes:
    - GF_Camera*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 197
    functionName: camera_set_2d
    functionSourceFile: /src/gpac/src/compositor/camera.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - INT2FIX
    linkageType: ''
    returnType: void
    signature: void camera_set_2d(GF_Camera *cam)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/camera.c:207,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/camera.c:208,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:222,1
    - Dst: gf_tan
      Src: /src/gpac/src/compositor/camera.c:222,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/camera.c:223,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:225,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:229,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:230,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/camera.c:232,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/camera.c:233,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/camera.c:234,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/camera.c:235,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/camera.c:236,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/camera.c:237,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/compositor/camera.c:239,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/camera.c:242,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/camera.c:243,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/camera.c:244,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/camera.c:245,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/camera.c:247,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/camera.c:248,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:249,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/camera.c:249,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/camera.c:251,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/camera.c:252,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/camera.c:253,1
    - Dst: gf_mx_lookat
      Src: /src/gpac/src/compositor/camera.c:256,1
    - Dst: gf_mx_perspective
      Src: /src/gpac/src/compositor/camera.c:258,1
    - Dst: gf_mx_lookat
      Src: /src/gpac/src/compositor/camera.c:261,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/camera.c:265,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/camera.c:266,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:271,1
    - Dst: gf_tan
      Src: /src/gpac/src/compositor/camera.c:271,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:272,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/camera.c:279,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/camera.c:280,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/camera.c:281,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/camera.c:282,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/camera.c:283,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/camera.c:284,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/camera.c:290,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/camera.c:291,1
    - Dst: gf_mx_ortho
      Src: /src/gpac/src/compositor/camera.c:294,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/camera.c:297,1
    - Dst: gf_mx_lookat
      Src: /src/gpac/src/compositor/camera.c:300,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/camera.c:304,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/camera.c:305,1
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/compositor/camera.c:311,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/camera.c:313,1
    - Dst: gf_mx_add_matrix_2d
      Src: /src/gpac/src/compositor/camera.c:316,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/camera.c:318,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/camera.c:319,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/compositor/camera.c:327,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/camera.c:341,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/camera.c:342,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:343,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/camera.c:343,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/camera.c:345,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/camera.c:346,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/camera.c:347,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/camera.c:348,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/camera.c:350,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/camera.c:351,1
    - Dst: gf_atan2
      Src: /src/gpac/src/compositor/camera.c:352,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/compositor/camera.c:353,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/camera.c:354,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/camera.c:357,1
    - Dst: gf_mx_lookat
      Src: /src/gpac/src/compositor/camera.c:359,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/camera.c:364,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/camera.c:365,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:366,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/camera.c:366,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/camera.c:368,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/camera.c:369,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/camera.c:370,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/camera.c:371,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/camera.c:373,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/camera.c:374,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/camera.c:376,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/camera.c:376,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:376,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/camera.c:377,1
    - Dst: gf_mx_lookat
      Src: /src/gpac/src/compositor/camera.c:379,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/camera.c:381,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/camera.c:384,1
    - Dst: gf_mx_add_matrix_4x4
      Src: /src/gpac/src/compositor/camera.c:385,1
    - Dst: camera_frustum_from_matrix
      Src: /src/gpac/src/compositor/camera.c:386,1
    - Dst: gf_mx_inverse_4x4
      Src: /src/gpac/src/compositor/camera.c:388,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 135
    argCount: 7
    argNames:
    - cam
    - user_transform
    - center_coords
    - horizontal_shift
    - nominal_view_distance
    - view_distance_offset
    - camlay
    argTypes:
    - GF_Camera*
    - GF_Matrix2D*
    - Bool
    - Fixed
    - Fixed
    - Fixed
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 199
    functionDepth: 2
    functionLinenumber: 199
    functionLinenumberEnd: 390
    functionName: camera_update_stereo
    functionSourceFile: /src/gpac/src/compositor/camera.c
    functionUses: 0
    functionsReached:
    - gf_vec_add
    - gf_vec_norm
    - gf_bbox_refresh
    - gf_mx_copy
    - camera_frustum_from_matrix
    - gf_mx_perspective
    - gf_vec_len
    - gf_mx_add_rotation
    - gf_mx_init
    - gf_mx_inverse_4x4
    - gf_mx_add_matrix
    - gf_mx_add_scale
    - gf_mulfix
    - gf_mx_lookat
    - gf_vec_scale
    - gf_tan
    - gf_mx_from_mx2d
    - gf_divfix
    - gf_muldiv
    - gf_atan2
    - gf_mx_ortho
    - INT2FIX
    - gf_vec_cross
    - gf_vec_diff
    - gf_mx_add_translation
    - gf_mx_add_matrix_2d
    - gf_mx_add_matrix_4x4
    - gf_mx_apply_vec
    linkageType: ''
    returnType: void
    signature: void camera_update_stereo(GF_Camera *cam, GF_Matrix2D *user_transform,
      Bool center_coords, Fixed horizontal_shift, Fixed nominal_view_distance, Fixed
      view_distance_offset, u32 camlay)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: camera_update_stereo
      Src: /src/gpac/src/compositor/camera.c:394,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - cam
    - user_transform
    - center_coords
    argTypes:
    - GF_Camera*
    - GF_Matrix2D*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 392
    functionDepth: 3
    functionLinenumber: 392
    functionLinenumberEnd: 395
    functionName: camera_update
    functionSourceFile: /src/gpac/src/compositor/camera.c
    functionUses: 2
    functionsReached:
    - camera_update_stereo
    linkageType: ''
    returnType: void
    signature: void camera_update(GF_Camera *cam, GF_Matrix2D *user_transform, Bool
      center_coords)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/camera.c:404,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/camera.c:405,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:407,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:408,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:408,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:409,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:409,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:410,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/camera.c:411,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/camera.c:412,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/camera.c:413,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:414,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:415,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:415,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:416,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:417,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:417,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/camera.c:418,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 20
    argCount: 4
    argNames:
    - cam
    - pos
    - ori
    - fov
    argTypes:
    - GF_Camera*
    - SFVec3f
    - SFRotation
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 396
    functionDepth: 1
    functionLinenumber: 396
    functionLinenumberEnd: 420
    functionName: camera_set_vectors
    functionSourceFile: /src/gpac/src/compositor/camera.c
    functionUses: 1
    functionsReached:
    - gf_sin
    - gf_vec_add
    - gf_vec_scale
    - gf_vec_norm
    - gf_mulfix
    - gf_cos
    linkageType: ''
    returnType: void
    signature: void camera_set_vectors(GF_Camera *cam, SFVec3f pos, SFRotation ori,
      Fixed fov)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: camera_get_orientation
      Src: /src/gpac/src/compositor/camera.c:461,1
    - Dst: camera_get_orientation
      Src: /src/gpac/src/compositor/camera.c:465,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 4
    argNames:
    - cam
    - pos
    - target
    - up
    argTypes:
    - GF_Camera*
    - SFVec3f
    - SFVec3f
    - SFVec3f
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 457
    functionDepth: 2
    functionLinenumber: 457
    functionLinenumberEnd: 471
    functionName: camera_move_to
    functionSourceFile: /src/gpac/src/compositor/camera.c
    functionUses: 1
    functionsReached:
    - camera_get_orientation
    linkageType: ''
    returnType: void
    signature: void camera_move_to(GF_Camera *cam, SFVec3f pos, SFVec3f target, SFVec3f
      up)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - cam
    argTypes:
    - GF_Camera*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 473
    functionDepth: 0
    functionLinenumber: 473
    functionLinenumberEnd: 476
    functionName: camera_stop_anim
    functionSourceFile: /src/gpac/src/compositor/camera.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void camera_stop_anim(GF_Camera *cam)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - cam
    argTypes:
    - GF_Camera*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 486
      start: 478
    functionDepth: 0
    functionLinenumber: 478
    functionLinenumberEnd: 486
    functionName: camera_jump
    functionSourceFile: /src/gpac/src/compositor/camera.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void camera_jump(GF_Camera *cam)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_get_clock
      Src: /src/gpac/src/compositor/camera.c:496,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/camera.c:514,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:516,1
    - Dst: camera_set_vectors
      Src: /src/gpac/src/compositor/camera.c:534,1
    - Dst: camera_get_orientation
      Src: /src/gpac/src/compositor/camera.c:547,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/camera.c:551,1
    - Dst: gf_sg_sfrotation_interpolate
      Src: /src/gpac/src/compositor/camera.c:562,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/camera.c:563,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/camera.c:564,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/camera.c:565,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:566,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/camera.c:567,1
    - Dst: camera_set_vectors
      Src: /src/gpac/src/compositor/camera.c:568,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 62
    argCount: 2
    argNames:
    - cam
    - _compositor
    argTypes:
    - GF_Camera*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 489
    functionDepth: 2
    functionLinenumber: 489
    functionLinenumberEnd: 571
    functionName: camera_animate
    functionSourceFile: /src/gpac/src/compositor/camera.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_vec_add
    - gf_vec_scale
    - gf_vec_diff
    - camera_set_vectors
    - camera_get_orientation
    - gf_sc_get_clock
    - gf_sg_sfrotation_interpolate
    - gf_mulfix
    linkageType: ''
    returnType: Bool
    signature: Bool camera_animate(GF_Camera *cam, void *_compositor)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/camera.c:577,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/camera.c:578,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - cam
    argTypes:
    - GF_Camera*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 574
    functionDepth: 1
    functionLinenumber: 574
    functionLinenumberEnd: 580
    functionName: camera_get_pos_dir
    functionSourceFile: /src/gpac/src/compositor/camera.c
    functionUses: 5
    functionsReached:
    - gf_vec_diff
    - gf_vec_norm
    linkageType: ''
    returnType: SFVec3f
    signature: SFVec3f camera_get_pos_dir(GF_Camera *cam)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/camera.c:584,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/camera.c:585,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - cam
    argTypes:
    - GF_Camera*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 581
    functionDepth: 1
    functionLinenumber: 581
    functionLinenumberEnd: 587
    functionName: camera_get_target_dir
    functionSourceFile: /src/gpac/src/compositor/camera.c
    functionUses: 1
    functionsReached:
    - gf_vec_diff
    - gf_vec_norm
    linkageType: ''
    returnType: SFVec3f
    signature: SFVec3f camera_get_target_dir(GF_Camera *cam)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: camera_get_pos_dir
      Src: /src/gpac/src/compositor/camera.c:591,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/camera.c:592,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/camera.c:593,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - cam
    argTypes:
    - GF_Camera*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 588
    functionDepth: 2
    functionLinenumber: 588
    functionLinenumberEnd: 595
    functionName: camera_get_right_dir
    functionSourceFile: /src/gpac/src/compositor/camera.c
    functionUses: 5
    functionsReached:
    - gf_vec_norm
    - gf_vec_cross
    - camera_get_pos_dir
    linkageType: ''
    returnType: SFVec3f
    signature: SFVec3f camera_get_right_dir(GF_Camera *cam)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_grouping.c:68,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_grouping.c:78,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_grouping.c:91,1
    - Dst: gf_scene_get_fragment_uri
      Src: /src/gpac/src/compositor/svg_grouping.c:94,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/svg_grouping.c:97,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/svg_grouping.c:98,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/svg_grouping.c:100,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/svg_grouping.c:101,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/svg_grouping.c:102,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/svg_grouping.c:103,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/svg_grouping.c:104,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/svg_grouping.c:108,1
    - Dst: gf_svg_parse_transformlist
      Src: /src/gpac/src/compositor/svg_grouping.c:109,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_grouping.c:111,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/svg_grouping.c:117,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/svg_grouping.c:117,1
    - Dst: memset
      Src: /src/gpac/src/compositor/svg_grouping.c:121,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_grouping.c:126,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_grouping.c:127,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/svg_grouping.c:128,1
    - Dst: gf_sc_get_nodes_bounds
      Src: /src/gpac/src/compositor/svg_grouping.c:129,1
    - Dst: gf_mx2d_from_mx
      Src: /src/gpac/src/compositor/svg_grouping.c:130,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/svg_grouping.c:131,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_grouping.c:142,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_grouping.c:146,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_grouping.c:158,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_grouping.c:186,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_grouping.c:186,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_grouping.c:187,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_grouping.c:188,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_grouping.c:191,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_grouping.c:193,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_grouping.c:196,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_grouping.c:196,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_grouping.c:197,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_grouping.c:198,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_grouping.c:201,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_grouping.c:203,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_grouping.c:208,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_grouping.c:209,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/compositor/svg_grouping.c:210,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/compositor/svg_grouping.c:211,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_grouping.c:215,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_grouping.c:216,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/svg_grouping.c:251,1
    - Dst: gf_rect_pixelize
      Src: /src/gpac/src/compositor/svg_grouping.c:265,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/compositor/svg_grouping.c:270,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 176
    argCount: 4
    argNames:
    - node
    - stack
    - tr_state
    - atts
    argTypes:
    - GF_Node*
    - SVGsvgStack*
    - GF_TraverseState*
    - SVGAllAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 58
    functionDepth: 3
    functionLinenumber: 58
    functionLinenumberEnd: 271
    functionName: svg_recompute_viewport_transformation
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_mx2d_add_matrix
    - gf_sg_find_node_by_name
    - gf_mx2d_apply_rect
    - gf_mx_init
    - strncmp
    - gf_mulfix
    - FLT2FIX
    - gf_sc_get_nodes_bounds
    - sscanf
    - gf_svg_parse_transformlist
    - GF_LOG
    - gf_divfix
    - gf_muldiv
    - gf_node_get_graph
    - gf_mx2d_copy
    - gf_scene_get_fragment_uri
    - gf_mx2d_add_translation
    - gf_mx2d_from_mx
    - gf_rect_pixelize
    - gf_mx2d_init
    linkageType: ''
    returnType: void
    signature: void svg_recompute_viewport_transformation(GF_Node *node, SVGsvgStack
      *stack, GF_TraverseState *tr_state, SVGAllAttributes *atts)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:291,1
    - Dst: gf_svg_properties_reset_pointers
      Src: /src/gpac/src/compositor/svg_grouping.c:295,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_grouping.c:296,1
    - Dst: gf_sc_check_focus_upon_destroy
      Src: /src/gpac/src/compositor/svg_grouping.c:298,1
    - Dst: drawable_del
      Src: /src/gpac/src/compositor/svg_grouping.c:299,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_grouping.c:300,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:312,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_grouping.c:313,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_grouping.c:321,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:322,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_grouping.c:328,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_grouping.c:329,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/svg_grouping.c:334,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_grouping.c:340,1
    - Dst: drawable_reset_group_highlight
      Src: /src/gpac/src/compositor/svg_grouping.c:341,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_grouping.c:342,1
    - Dst: svg_recompute_viewport_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:351,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_grouping.c:354,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/svg_grouping.c:375,1
    - Dst: drawable_new
      Src: /src/gpac/src/compositor/svg_grouping.c:388,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/svg_grouping.c:392,1
    - Dst: gf_path_add_rect
      Src: /src/gpac/src/compositor/svg_grouping.c:393,1
    - Dst: drawable_init_context_svg
      Src: /src/gpac/src/compositor/svg_grouping.c:396,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/svg_grouping.c:403,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/svg_grouping.c:416,1
    - Dst: gf_mx_add_matrix_2d
      Src: /src/gpac/src/compositor/svg_grouping.c:420,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/compositor/svg_grouping.c:424,1
    - Dst: memset
      Src: /src/gpac/src/compositor/svg_grouping.c:435,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/svg_grouping.c:438,1
    - Dst: memset
      Src: /src/gpac/src/compositor/svg_grouping.c:445,1
    - Dst: gf_scene_notify_event
      Src: /src/gpac/src/compositor/svg_grouping.c:454,1
    - Dst: gf_sc_get_nodes_bounds
      Src: /src/gpac/src/compositor/svg_grouping.c:459,1
    - Dst: compositor_svg_traverse_children
      Src: /src/gpac/src/compositor/svg_grouping.c:461,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/svg_grouping.c:467,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_grouping.c:470,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_grouping.c:471,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:472,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 140
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 479
      start: 273
    functionDepth: 10
    functionLinenumber: 273
    functionLinenumberEnd: 479
    functionName: svg_traverse_svg
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_free
    - compositor_svg_is_display_off
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - memset
    - gf_mx_copy
    - drawable_del
    - gf_scene_notify_event
    - compositor_svg_traverse_base
    - memcpy
    - drawable_new
    - gf_node_get_private
    - gf_sc_check_focus_upon_destroy
    - gf_sc_get_nodes_bounds
    - GF_COL_ARGB_FIXED
    - gf_svg_flatten_attributes
    - drawable_reset_path
    - drawable_finalize_sort
    - gf_path_add_rect
    - gf_dom_event_fire
    - svg_recompute_viewport_transformation
    - gf_mx2d_copy
    - drawable_reset_group_highlight
    - gf_mx2d_add_translation
    - gf_svg_properties_reset_pointers
    - compositor_svg_traverse_children
    - drawable_init_context_svg
    - gf_mx_add_matrix_2d
    - gf_mx2d_pre_multiply
    linkageType: ''
    returnType: void
    signature: void svg_traverse_svg(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_grouping.c:486,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_grouping.c:488,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/svg_grouping.c:492,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/svg_grouping.c:492,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_grouping.c:495,1
    - Dst: gf_svg_properties_init_pointers
      Src: /src/gpac/src/compositor/svg_grouping.c:496,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_grouping.c:498,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_grouping.c:500,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_grouping.c:501,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 481
    functionDepth: 2
    functionLinenumber: 481
    functionLinenumberEnd: 502
    functionName: compositor_init_svg_svg
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_svg_properties_init_pointers
    - gf_node_get_graph
    - gf_node_set_callback_function
    - gf_sg_get_root_node
    - gf_mx2d_init
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_svg(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_grouping.c:507,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:508,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - n
    - rc
    argTypes:
    - GF_Node*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 514
      start: 504
    functionDepth: 2
    functionLinenumber: 504
    functionLinenumberEnd: 514
    functionName: compositor_svg_get_viewport
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_node_get_private
    linkageType: ''
    returnType: Bool
    signature: Bool compositor_svg_get_viewport(GF_Node *n, GF_Rect *rc)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:539,1
    - Dst: group_2d_destroy_svg
      Src: /src/gpac/src/compositor/svg_grouping.c:541,1
    - Dst: group_cache_del
      Src: /src/gpac/src/compositor/svg_grouping.c:543,1
    - Dst: drawable_del
      Src: /src/gpac/src/compositor/svg_grouping.c:545,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_grouping.c:546,1
    - Dst: gf_sc_check_focus_upon_destroy
      Src: /src/gpac/src/compositor/svg_grouping.c:547,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:556,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_grouping.c:562,1
    - Dst: gf_evg_surface_set_mask_mode
      Src: /src/gpac/src/compositor/svg_grouping.c:566,1
    - Dst: group_cache_draw
      Src: /src/gpac/src/compositor/svg_grouping.c:570,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:574,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_grouping.c:576,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_grouping.c:579,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:585,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:590,1
    - Dst: gf_sc_get_nodes_bounds
      Src: /src/gpac/src/compositor/svg_grouping.c:592,1
    - Dst: svg_draw_filter
      Src: /src/gpac/src/compositor/svg_grouping.c:603,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:607,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_grouping.c:614,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_grouping.c:616,1
    - Dst: drawable_reset_group_highlight
      Src: /src/gpac/src/compositor/svg_grouping.c:617,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_grouping.c:629,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_grouping.c:631,1
    - Dst: group_cache_new
      Src: /src/gpac/src/compositor/svg_grouping.c:636,1
    - Dst: group_2d_cache_traverse
      Src: /src/gpac/src/compositor/svg_grouping.c:644,1
    - Dst: group_cache_traverse
      Src: /src/gpac/src/compositor/svg_grouping.c:646,1
    - Dst: group_2d_cache_traverse
      Src: /src/gpac/src/compositor/svg_grouping.c:652,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_grouping.c:653,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/svg_grouping.c:660,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_grouping.c:661,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_grouping.c:666,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/svg_grouping.c:676,1
    - Dst: group_2d_cache_evaluate
      Src: /src/gpac/src/compositor/svg_grouping.c:679,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/svg_grouping.c:686,1
    - Dst: gf_path_reset
      Src: /src/gpac/src/compositor/svg_grouping.c:694,1
    - Dst: gf_path_add_rect
      Src: /src/gpac/src/compositor/svg_grouping.c:695,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/svg_grouping.c:696,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/svg_grouping.c:696,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/svg_grouping.c:697,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/svg_grouping.c:697,1
    - Dst: drawable_init_context_svg
      Src: /src/gpac/src/compositor/svg_grouping.c:699,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/svg_grouping.c:702,1
    - Dst: compositor_svg_traverse_children
      Src: /src/gpac/src/compositor/svg_grouping.c:704,1
    - Dst: drawable_init_context_svg
      Src: /src/gpac/src/compositor/svg_grouping.c:706,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/svg_grouping.c:709,1
    - Dst: compositor_svg_traverse_children
      Src: /src/gpac/src/compositor/svg_grouping.c:711,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_grouping.c:715,1
    - Dst: drawable_check_focus_highlight
      Src: /src/gpac/src/compositor/svg_grouping.c:717,1
    - Dst: compositor_svg_traverse_children
      Src: /src/gpac/src/compositor/svg_grouping.c:724,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:726,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:727,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 124
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 526
    functionDepth: 14
    functionLinenumber: 526
    functionLinenumberEnd: 729
    functionName: svg_traverse_g
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_free
    - svg_draw_filter
    - compositor_svg_is_display_off
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_list_count
    - compositor_svg_restore_parent_transformation
    - gf_sys_clock
    - drawable_del
    - gf_sg_find_node_by_name
    - compositor_svg_traverse_base
    - memcpy
    - group_2d_destroy_svg
    - gf_node_get_private
    - gf_mulfix
    - gf_sc_check_focus_upon_destroy
    - gf_sc_get_nodes_bounds
    - gf_node_traverse
    - gf_svg_flatten_attributes
    - drawable_finalize_sort
    - group_2d_cache_traverse
    - gf_path_add_rect
    - group_cache_draw
    - drawable_check_focus_highlight
    - group_cache_del
    - gf_evg_surface_set_mask_mode
    - drawable_reset_group_highlight
    - INT2FIX
    - group_2d_cache_evaluate
    - group_cache_traverse
    - compositor_svg_apply_local_transformation
    - drawable_init_context_svg
    - gf_path_reset
    - compositor_svg_traverse_children
    - group_cache_new
    linkageType: ''
    returnType: void
    signature: void svg_traverse_g(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_grouping.c:735,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_grouping.c:737,1
    - Dst: drawable_new
      Src: /src/gpac/src/compositor/svg_grouping.c:738,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_grouping.c:742,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 743
      start: 732
    functionDepth: 2
    functionLinenumber: 732
    functionLinenumberEnd: 743
    functionName: compositor_init_svg_g
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - drawable_new
    - gf_node_set_private
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_g(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_check_focus_upon_destroy
      Src: /src/gpac/src/compositor/svg_grouping.c:758,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:761,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_grouping.c:763,1
    - Dst: compositor_svg_traverse_children
      Src: /src/gpac/src/compositor/svg_grouping.c:768,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:771,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 773
      start: 747
    functionDepth: 7
    functionLinenumber: 747
    functionLinenumberEnd: 773
    functionName: svg_traverse_defs
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_svg_flatten_attributes
    - compositor_svg_traverse_base
    - memcpy
    - compositor_svg_traverse_children
    - gf_sc_check_focus_upon_destroy
    linkageType: ''
    returnType: void
    signature: void svg_traverse_defs(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_grouping.c:778,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 779
      start: 776
    functionDepth: 2
    functionLinenumber: 776
    functionLinenumberEnd: 779
    functionName: compositor_init_svg_defs
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_defs(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:790,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_grouping.c:796,1
    - Dst: gf_sc_check_focus_upon_destroy
      Src: /src/gpac/src/compositor/svg_grouping.c:797,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:801,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_grouping.c:802,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:808,1
    - Dst: compositor_svg_evaluate_conditional
      Src: /src/gpac/src/compositor/svg_grouping.c:809,1
    - Dst: drawable_reset_group_highlight
      Src: /src/gpac/src/compositor/svg_grouping.c:816,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_grouping.c:817,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_grouping.c:820,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_grouping.c:823,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:824,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:830,1
    - Dst: gf_sc_get_nodes_bounds
      Src: /src/gpac/src/compositor/svg_grouping.c:832,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/compositor/svg_grouping.c:834,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_grouping.c:835,1
    - Dst: drawable_check_focus_highlight
      Src: /src/gpac/src/compositor/svg_grouping.c:837,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:839,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:842,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 40
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 844
      start: 784
    functionDepth: 10
    functionLinenumber: 784
    functionLinenumberEnd: 844
    functionName: svg_traverse_switch
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_free
    - drawable_reset_group_highlight
    - gf_sc_get_nodes_bounds
    - gf_node_traverse
    - gf_svg_flatten_attributes
    - gf_node_list_get_child
    - compositor_svg_traverse_base
    - gf_node_dirty_get
    - compositor_svg_is_display_off
    - memcpy
    - gf_node_dirty_clear
    - compositor_svg_apply_local_transformation
    - drawable_check_focus_highlight
    - compositor_svg_evaluate_conditional
    - gf_node_get_private
    - compositor_svg_restore_parent_transformation
    - gf_sc_check_focus_upon_destroy
    linkageType: ''
    returnType: void
    signature: void svg_traverse_switch(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_grouping.c:849,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_grouping.c:851,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_grouping.c:855,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_grouping.c:856,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 857
      start: 846
    functionDepth: 2
    functionLinenumber: 846
    functionLinenumberEnd: 857
    functionName: compositor_init_svg_switch
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_switch(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_check_focus_upon_destroy
      Src: /src/gpac/src/compositor/svg_grouping.c:870,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:874,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_grouping.c:876,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_grouping.c:879,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:885,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:890,1
    - Dst: gf_sc_get_nodes_bounds
      Src: /src/gpac/src/compositor/svg_grouping.c:892,1
    - Dst: compositor_svg_traverse_children
      Src: /src/gpac/src/compositor/svg_grouping.c:894,1
    - Dst: drawable_check_focus_highlight
      Src: /src/gpac/src/compositor/svg_grouping.c:896,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:898,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:899,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 859
    functionDepth: 10
    functionLinenumber: 859
    functionLinenumberEnd: 901
    functionName: svg_traverse_a
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_sc_get_nodes_bounds
    - gf_svg_flatten_attributes
    - compositor_svg_traverse_base
    - compositor_svg_is_display_off
    - memcpy
    - drawable_check_focus_highlight
    - compositor_svg_apply_local_transformation
    - compositor_svg_traverse_children
    - compositor_svg_restore_parent_transformation
    - gf_sc_check_focus_upon_destroy
    linkageType: ''
    returnType: void
    signature: void svg_traverse_a(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_set_fragment_uri
      Src: /src/gpac/src/compositor/svg_grouping.c:905,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/svg_grouping.c:907,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/svg_grouping.c:907,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/svg_grouping.c:907,1
    - Dst: compositor_2d_set_user_transform
      Src: /src/gpac/src/compositor/svg_grouping.c:912,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/svg_grouping.c:913,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 3
    argNames:
    - handler
    - compositor
    - url
    argTypes:
    - GF_Node*
    - GF_Compositor*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 914
      start: 903
    functionDepth: 11
    functionLinenumber: 903
    functionLinenumberEnd: 914
    functionName: svg_a_set_view
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_node_dirty_set
    - gf_scene_set_fragment_uri
    - compositor_2d_set_user_transform
    - gf_node_get_graph
    - gf_sc_invalidate
    - gf_sg_get_root_node
    linkageType: ''
    returnType: void
    signature: void svg_a_set_view(GF_Node *handler, GF_Compositor *compositor, const
      char *url)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/svg_grouping.c:925,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_grouping.c:925,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:927,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:929,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/compositor/svg_grouping.c:939,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/svg_grouping.c:943,1
    - Dst: gf_scene_resolve_xlink
      Src: /src/gpac/src/compositor/svg_grouping.c:950,1
    - Dst: gf_scene_process_anchor
      Src: /src/gpac/src/compositor/svg_grouping.c:961,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_grouping.c:962,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/svg_grouping.c:965,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/svg_grouping.c:965,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_grouping.c:968,1
    - Dst: svg_a_set_view
      Src: /src/gpac/src/compositor/svg_grouping.c:970,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_grouping.c:971,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_grouping.c:980,1
    - Dst: gf_smil_timing_insert_clock
      Src: /src/gpac/src/compositor/svg_grouping.c:990,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/svg_grouping.c:990,1
    - Dst: svg_a_set_view
      Src: /src/gpac/src/compositor/svg_grouping.c:994,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/compositor/svg_grouping.c:994,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 68
    argCount: 3
    argNames:
    - handler
    - event
    - observer
    argTypes:
    - GF_Node*
    - GF_DOM_Event*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 997
      start: 916
    functionDepth: 12
    functionLinenumber: 916
    functionLinenumberEnd: 997
    functionName: svg_a_handle_event
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_free
    - gf_assert
    - gf_svg_flatten_attributes
    - gf_sc_send_event
    - gf_node_get_name
    - gf_sg_find_node_by_name
    - gf_smil_timing_insert_clock
    - svg_a_set_view
    - gf_scene_resolve_xlink
    - gf_node_get_graph
    - gf_node_get_scene_time
    - gf_scene_process_anchor
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void svg_a_handle_event(GF_Node *handler, GF_DOM_Event *event, GF_Node
      *observer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_grouping.c:1002,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_grouping.c:1003,1
    - Dst: gf_dom_listener_build
      Src: /src/gpac/src/compositor/svg_grouping.c:1006,1
    - Dst: gf_dom_listener_build
      Src: /src/gpac/src/compositor/svg_grouping.c:1011,1
    - Dst: gf_dom_listener_build
      Src: /src/gpac/src/compositor/svg_grouping.c:1016,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1020
      start: 999
    functionDepth: 2
    functionLinenumber: 999
    functionLinenumberEnd: 1020
    functionName: compositor_init_svg_a
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - gf_node_set_private
    - gf_dom_listener_build
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_a(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:1044,1
    - Dst: gf_mo_unload_xlink_resource
      Src: /src/gpac/src/compositor/svg_grouping.c:1049,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_grouping.c:1050,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:1055,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_grouping.c:1058,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_grouping.c:1061,1
    - Dst: drawable_reset_group_highlight
      Src: /src/gpac/src/compositor/svg_grouping.c:1062,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/svg_grouping.c:1069,1
    - Dst: gf_mo_load_xlink_resource
      Src: /src/gpac/src/compositor/svg_grouping.c:1071,1
    - Dst: gf_mo_unload_xlink_resource
      Src: /src/gpac/src/compositor/svg_grouping.c:1073,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_grouping.c:1078,1
    - Dst: gf_mo_get_scenegraph
      Src: /src/gpac/src/compositor/svg_grouping.c:1088,1
    - Dst: strchr
      Src: /src/gpac/src/compositor/svg_grouping.c:1090,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/svg_grouping.c:1096,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/svg_grouping.c:1099,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/svg_grouping.c:1105,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/svg_grouping.c:1106,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_grouping.c:1108,1
    - Dst: gf_sc_svg_convert_length_to_display
      Src: /src/gpac/src/compositor/svg_grouping.c:1115,1
    - Dst: gf_sc_svg_convert_length_to_display
      Src: /src/gpac/src/compositor/svg_grouping.c:1116,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:1125,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_grouping.c:1126,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_grouping.c:1127,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/svg_grouping.c:1128,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:1130,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_grouping.c:1133,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:1136,1
    - Dst: gf_mx_add_matrix_2d
      Src: /src/gpac/src/compositor/svg_grouping.c:1140,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/compositor/svg_grouping.c:1143,1
    - Dst: drawable_check_focus_highlight
      Src: /src/gpac/src/compositor/svg_grouping.c:1146,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_grouping.c:1148,1
    - Dst: gf_sc_traverse_subscene
      Src: /src/gpac/src/compositor/svg_grouping.c:1150,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:1152,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/svg_grouping.c:1155,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/svg_grouping.c:1156,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:1163,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 101
    argCount: 4
    argNames:
    - node
    - rs
    - is_destroy
    - is_foreign_object
    argTypes:
    - GF_Node*
    - void*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1165
      start: 1033
    functionDepth: 11
    functionLinenumber: 1033
    functionLinenumberEnd: 1165
    functionName: svg_traverse_resource
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sc_svg_convert_length_to_display
    - gf_mo_unload_xlink_resource
    - gf_node_dirty_get
    - compositor_svg_is_display_off
    - gf_node_dirty_clear
    - strchr
    - compositor_svg_restore_parent_transformation
    - gf_sg_find_node_by_name
    - compositor_svg_traverse_base
    - gf_sc_traverse_subscene
    - gf_mx2d_apply_rect
    - memcpy
    - gf_list_add
    - gf_sg_get_root_node
    - gf_node_get_private
    - gf_list_rem_last
    - gf_node_traverse
    - gf_svg_flatten_attributes
    - gf_mo_get_scenegraph
    - gf_mo_load_xlink_resource
    - gf_node_get_graph
    - drawable_check_focus_highlight
    - drawable_reset_group_highlight
    - compositor_svg_apply_local_transformation
    - gf_mx_add_matrix_2d
    - gf_mx2d_pre_multiply
    - gf_mx2d_init
    linkageType: ''
    returnType: void
    signature: void svg_traverse_resource(GF_Node *node, void *rs, Bool is_destroy,
      Bool is_foreign_object)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: svg_traverse_resource
      Src: /src/gpac/src/compositor/svg_grouping.c:1169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1170
      start: 1167
    functionDepth: 12
    functionLinenumber: 1167
    functionLinenumberEnd: 1170
    functionName: svg_traverse_use
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - svg_traverse_resource
    linkageType: ''
    returnType: void
    signature: void svg_traverse_use(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_grouping.c:1175,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_grouping.c:1177,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_grouping.c:1178,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/svg_grouping.c:1180,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1181
      start: 1172
    functionDepth: 2
    functionLinenumber: 1172
    functionLinenumberEnd: 1181
    functionName: compositor_init_svg_use
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - gf_node_dirty_set
    - gf_node_set_private
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_use(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_resume
      Src: /src/gpac/src/compositor/svg_grouping.c:1193,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_grouping.c:1194,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:1198,1
    - Dst: gf_mo_play
      Src: /src/gpac/src/compositor/svg_grouping.c:1203,1
    - Dst: gf_mo_load_xlink_resource
      Src: /src/gpac/src/compositor/svg_grouping.c:1207,1
    - Dst: gf_mo_unload_xlink_resource
      Src: /src/gpac/src/compositor/svg_grouping.c:1209,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_grouping.c:1215,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 3
    argNames:
    - node
    - stack
    - normalized_scene_time
    argTypes:
    - GF_Node*
    - SVGlinkStack*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1218
      start: 1189
    functionDepth: 3
    functionLinenumber: 1189
    functionLinenumberEnd: 1218
    functionName: svg_animation_smil_update
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_mo_play
    - gf_svg_flatten_attributes
    - gf_mo_unload_xlink_resource
    - gf_node_dirty_get
    - gf_mo_load_xlink_resource
    - gf_node_dirty_clear
    - gf_mo_resume
    linkageType: ''
    returnType: void
    signature: void svg_animation_smil_update(GF_Node *node, SVGlinkStack *stack,
      Fixed normalized_scene_time)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_smil_get_element
      Src: /src/gpac/src/compositor/svg_grouping.c:1223,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:1224,1
    - Dst: svg_animation_smil_update
      Src: /src/gpac/src/compositor/svg_grouping.c:1227,1
    - Dst: gf_mo_stop
      Src: /src/gpac/src/compositor/svg_grouping.c:1231,1
    - Dst: gf_mo_unload_xlink_resource
      Src: /src/gpac/src/compositor/svg_grouping.c:1238,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/svg_grouping.c:1242,1
    - Dst: gf_mo_restart
      Src: /src/gpac/src/compositor/svg_grouping.c:1250,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:1258,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 3
    argNames:
    - rti
    - normalized_scene_time
    - status
    argTypes:
    - SMIL_Timing_RTI*
    - Fixed
    - GF_SGSMILTimingEvalState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1261
      start: 1220
    functionDepth: 6
    functionLinenumber: 1220
    functionLinenumberEnd: 1261
    functionName: svg_animation_smil_evaluate
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_smil_get_element
    - gf_svg_flatten_attributes
    - gf_mo_stop
    - gf_mo_unload_xlink_resource
    - gf_node_dirty_set
    - gf_mo_restart
    - svg_animation_smil_update
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void svg_animation_smil_evaluate(SMIL_Timing_RTI *rti, Fixed normalized_scene_time,
      GF_SGSMILTimingEvalState status)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:1278,1
    - Dst: gf_mo_unload_xlink_resource
      Src: /src/gpac/src/compositor/svg_grouping.c:1281,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_grouping.c:1282,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:1285,1
    - Dst: svg_animation_smil_update
      Src: /src/gpac/src/compositor/svg_grouping.c:1292,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_grouping.c:1304,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_grouping.c:1307,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:1312,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_grouping.c:1315,1
    - Dst: gf_mx_add_matrix_2d
      Src: /src/gpac/src/compositor/svg_grouping.c:1320,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/compositor/svg_grouping.c:1323,1
    - Dst: gf_sc_svg_convert_length_to_display
      Src: /src/gpac/src/compositor/svg_grouping.c:1336,1
    - Dst: gf_sc_svg_convert_length_to_display
      Src: /src/gpac/src/compositor/svg_grouping.c:1337,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/svg_grouping.c:1344,1
    - Dst: gf_rect_pixelize
      Src: /src/gpac/src/compositor/svg_grouping.c:1346,1
    - Dst: gf_irect_intersect
      Src: /src/gpac/src/compositor/svg_grouping.c:1347,1
    - Dst: gf_mo_get_scenegraph
      Src: /src/gpac/src/compositor/svg_grouping.c:1350,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/svg_grouping.c:1354,1
    - Dst: gf_sc_traverse_subscene
      Src: /src/gpac/src/compositor/svg_grouping.c:1359,1
    - Dst: gf_mo_pause
      Src: /src/gpac/src/compositor/svg_grouping.c:1364,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:1373,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:1376,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 76
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1378
      start: 1264
    functionDepth: 11
    functionLinenumber: 1264
    functionLinenumberEnd: 1378
    functionName: svg_traverse_animation
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sc_svg_convert_length_to_display
    - gf_mo_unload_xlink_resource
    - compositor_svg_is_display_off
    - gf_mx2d_init
    - compositor_svg_restore_parent_transformation
    - compositor_svg_traverse_base
    - gf_sc_traverse_subscene
    - gf_mx2d_apply_rect
    - memcpy
    - gf_sg_get_root_node
    - gf_node_get_private
    - gf_svg_flatten_attributes
    - gf_mo_get_scenegraph
    - svg_animation_smil_update
    - gf_mo_pause
    - gf_rect_pixelize
    - compositor_svg_apply_local_transformation
    - gf_mx_add_matrix_2d
    - gf_mx2d_pre_multiply
    - gf_irect_intersect
    linkageType: ''
    returnType: void
    signature: void svg_traverse_animation(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_grouping.c:1384,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_grouping.c:1386,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_grouping.c:1387,1
    - Dst: gf_smil_set_evaluation_callback
      Src: /src/gpac/src/compositor/svg_grouping.c:1389,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/svg_grouping.c:1392,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1393
      start: 1380
    functionDepth: 2
    functionLinenumber: 1380
    functionLinenumberEnd: 1393
    functionName: compositor_init_svg_animation
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_dirty_set
    - gf_node_set_private
    - gf_node_set_callback_function
    - gf_smil_set_evaluation_callback
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_animation(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:1397,1
    - Dst: gf_mo_pause
      Src: /src/gpac/src/compositor/svg_grouping.c:1399,1
    - Dst: gf_mo_resume
      Src: /src/gpac/src/compositor/svg_grouping.c:1400,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - n
    - pause
    argTypes:
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1401
      start: 1395
    functionDepth: 2
    functionLinenumber: 1395
    functionLinenumberEnd: 1401
    functionName: svg_pause_animation
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - gf_node_get_private
    - gf_mo_resume
    - gf_mo_pause
    linkageType: ''
    returnType: void
    signature: void svg_pause_animation(GF_Node *n, Bool pause)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: svg_traverse_resource
      Src: /src/gpac/src/compositor/svg_grouping.c:1405,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1406
      start: 1403
    functionDepth: 12
    functionLinenumber: 1403
    functionLinenumberEnd: 1406
    functionName: svg_traverse_foreign_object
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - svg_traverse_resource
    linkageType: ''
    returnType: void
    signature: void svg_traverse_foreign_object(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_grouping.c:1411,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_grouping.c:1413,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_grouping.c:1414,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/svg_grouping.c:1416,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1417
      start: 1408
    functionDepth: 2
    functionLinenumber: 1408
    functionLinenumberEnd: 1417
    functionName: compositor_init_svg_foreign_object
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - gf_node_dirty_set
    - gf_node_set_private
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_foreign_object(GF_Compositor *compositor,
      GF_Node *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_grouping.c:1422,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:1424,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/svg_grouping.c:1425,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:1427,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/svg_grouping.c:1429,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - node
    - xlink
    argTypes:
    - GF_Node*
    - XMLRI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1433
      start: 1419
    functionDepth: 2
    functionLinenumber: 1419
    functionLinenumberEnd: 1433
    functionName: compositor_svg_get_xlink_resource_node
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_sg_get_root_node
    - gf_node_get_private
    - gf_sg_find_node_by_name
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *compositor_svg_get_xlink_resource_node(GF_Node *node, XMLRI
      *xlink)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:1440,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1442
      start: 1436
    functionDepth: 2
    functionLinenumber: 1436
    functionLinenumberEnd: 1442
    functionName: gf_sc_animation_get_scenegraph
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: GF_SceneGraph
    signature: GF_SceneGraph *gf_sc_animation_get_scenegraph(GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - m
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 52
    functionName: MESH_CHECK_VERTEX
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MESH_CHECK_VERTEX(m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - m
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 58
    functionName: MESH_CHECK_IDX
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MESH_CHECK_IDX(m)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: del_aabb_node
      Src: /src/gpac/src/compositor/mesh.c:62,1
    - Dst: del_aabb_node
      Src: /src/gpac/src/compositor/mesh.c:63,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:64,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - AABBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 65
    functionName: del_aabb_node
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 1
    functionsReached:
    - gf_free
    - del_aabb_node
    linkageType: ''
    returnType: void
    signature: void del_aabb_node(AABBNode *node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/mesh.c:73,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mesh.c:74,1
    - Dst: del_aabb_node
      Src: /src/gpac/src/compositor/mesh.c:75,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:77,1
    - Dst: glDeleteBuffers
      Src: /src/gpac/src/compositor/mesh.c:82,1
    - Dst: glDeleteBuffers
      Src: /src/gpac/src/compositor/mesh.c:86,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 1
    argNames:
    - mesh
    argTypes:
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 67
    functionDepth: 2
    functionLinenumber: 67
    functionLinenumberEnd: 89
    functionName: mesh_reset
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 9
    functionsReached:
    - gf_free
    - memset
    - glDeleteBuffers
    - del_aabb_node
    linkageType: ''
    returnType: void
    signature: void mesh_reset(GF_Mesh *mesh)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:93,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:94,1
    - Dst: del_aabb_node
      Src: /src/gpac/src/compositor/mesh.c:95,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:97,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:98,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - mesh
    argTypes:
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 91
    functionDepth: 2
    functionLinenumber: 91
    functionLinenumberEnd: 99
    functionName: mesh_free
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 14
    functionsReached:
    - gf_free
    - del_aabb_node
    linkageType: ''
    returnType: void
    signature: void mesh_free(GF_Mesh *mesh)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:103,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mesh.c:105,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:107,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:109,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 112
    functionName: new_mesh
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 26
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_Mesh
    signature: GF_Mesh *new_mesh()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/mesh.c:118,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/mesh.c:122,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - m
    argTypes:
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 124
    functionName: mesh_fit_alloc
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void mesh_fit_alloc(GF_Mesh *m)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: mesh_fit_alloc
      Src: /src/gpac/src/compositor/mesh.c:134,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/compositor/mesh.c:151,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 1
    argNames:
    - mesh
    argTypes:
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 152
    functionName: mesh_update_bounds
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 10
    functionsReached:
    - mesh_fit_alloc
    - gf_bbox_refresh
    linkageType: ''
    returnType: void
    signature: void mesh_update_bounds(GF_Mesh *mesh)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/mesh.c:158,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/mesh.c:161,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/mesh.c:165,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/mesh.c:168,1
    - Dst: del_aabb_node
      Src: /src/gpac/src/compositor/mesh.c:174,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:176,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - dest
    - orig
    argTypes:
    - GF_Mesh*
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 154
    functionDepth: 2
    functionLinenumber: 154
    functionLinenumberEnd: 178
    functionName: mesh_clone
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memcpy
    - del_aabb_node
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void mesh_clone(GF_Mesh *dest, GF_Mesh *orig)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:191,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 8
    argNames:
    - x
    - y
    - z
    - nx
    - ny
    - nz
    - u
    - v
    argTypes:
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 202
    functionName: set_vertex
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 6
    functionsReached:
    - MESH_SET_NORMAL
    - gf_vec_norm
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE set_vertex(Fixed x, Fixed y, Fixed z, Fixed nx, Fixed ny,
      Fixed nz, Fixed u, Fixed v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MESH_CHECK_VERTEX
      Src: /src/gpac/src/compositor/mesh.c:205,1
    - Dst: set_vertex
      Src: /src/gpac/src/compositor/mesh.c:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 9
    argNames:
    - mesh
    - x
    - y
    - z
    - nx
    - ny
    - nz
    - u
    - v
    argTypes:
    - GF_Mesh*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 203
    functionDepth: 2
    functionLinenumber: 203
    functionLinenumberEnd: 208
    functionName: mesh_set_vertex
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 6
    functionsReached:
    - MESH_CHECK_VERTEX
    - set_vertex
    linkageType: ''
    returnType: void
    signature: void mesh_set_vertex(GF_Mesh *mesh, Fixed x, Fixed y, Fixed z, Fixed
      nx, Fixed ny, Fixed nz, Fixed u, Fixed v)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: MESH_CHECK_VERTEX
      Src: /src/gpac/src/compositor/mesh.c:213,1
    - Dst: MESH_MAKE_COL
      Src: /src/gpac/src/compositor/mesh.c:217,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:218,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:219,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 5
    argNames:
    - mesh
    - pt
    - nor
    - tx
    - col
    argTypes:
    - GF_Mesh*
    - SFVec3f
    - SFVec3f
    - SFVec2f
    - SFColorRGBA
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 221
    functionName: mesh_set_vertex_v
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - MESH_MAKE_COL
    - MESH_SET_NORMAL
    - gf_vec_norm
    - MESH_CHECK_VERTEX
    linkageType: ''
    returnType: void
    signature: void mesh_set_vertex_v(GF_Mesh *mesh, SFVec3f pt, SFVec3f nor, SFVec2f
      tx, SFColorRGBA col)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MESH_CHECK_VERTEX
      Src: /src/gpac/src/compositor/mesh.c:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - mesh
    - vx
    argTypes:
    - GF_Mesh*
    - GF_Vertex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 228
    functionName: mesh_set_vertex_vx
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 8
    functionsReached:
    - MESH_CHECK_VERTEX
    linkageType: ''
    returnType: void
    signature: void mesh_set_vertex_vx(GF_Mesh *mesh, GF_Vertex *vx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MESH_CHECK_VERTEX
      Src: /src/gpac/src/compositor/mesh.c:232,1
    - Dst: MESH_MAKE_COL
      Src: /src/gpac/src/compositor/mesh.c:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 5
    argNames:
    - mesh
    - x
    - y
    - z
    - col
    argTypes:
    - GF_Mesh*
    - Fixed
    - Fixed
    - Fixed
    - SFColorRGBA
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 230
    functionDepth: 1
    functionLinenumber: 230
    functionLinenumberEnd: 240
    functionName: mesh_set_point
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 1
    functionsReached:
    - MESH_MAKE_COL
    - MESH_CHECK_VERTEX
    linkageType: ''
    returnType: void
    signature: void mesh_set_point(GF_Mesh *mesh, Fixed x, Fixed y, Fixed z, SFColorRGBA
      col)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MESH_CHECK_IDX
      Src: /src/gpac/src/compositor/mesh.c:243,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - mesh
    - idx
    argTypes:
    - GF_Mesh*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 241
    functionDepth: 1
    functionLinenumber: 241
    functionLinenumberEnd: 246
    functionName: mesh_set_index
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 3
    functionsReached:
    - MESH_CHECK_IDX
    linkageType: ''
    returnType: void
    signature: void mesh_set_index(GF_Mesh *mesh, u32 idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesh_set_index
      Src: /src/gpac/src/compositor/mesh.c:249,1
    - Dst: mesh_set_index
      Src: /src/gpac/src/compositor/mesh.c:250,1
    - Dst: mesh_set_index
      Src: /src/gpac/src/compositor/mesh.c:251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - mesh
    - v1_idx
    - v2_idx
    - v3_idx
    argTypes:
    - GF_Mesh*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 247
    functionDepth: 2
    functionLinenumber: 247
    functionLinenumberEnd: 252
    functionName: mesh_set_triangle
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 10
    functionsReached:
    - mesh_set_index
    linkageType: ''
    returnType: void
    signature: void mesh_set_triangle(GF_Mesh *mesh, u32 v1_idx, u32 v2_idx, u32 v3_idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesh_set_index
      Src: /src/gpac/src/compositor/mesh.c:255,1
    - Dst: mesh_set_index
      Src: /src/gpac/src/compositor/mesh.c:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - mesh
    - v1_idx
    - v2_idx
    argTypes:
    - GF_Mesh*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 253
    functionDepth: 2
    functionLinenumber: 253
    functionLinenumberEnd: 257
    functionName: mesh_set_line
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - mesh_set_index
    linkageType: ''
    returnType: void
    signature: void mesh_set_line(GF_Mesh *mesh, u32 v1_idx, u32 v2_idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:266,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:267,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mesh.c:268,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:269,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:270,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:271,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:272,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - mesh
    argTypes:
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 259
    functionDepth: 1
    functionLinenumber: 259
    functionLinenumberEnd: 274
    functionName: mesh_recompute_normals
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 3
    functionsReached:
    - MESH_SET_NORMAL
    - gf_vec_diff
    - gf_vec_norm
    - gf_vec_cross
    linkageType: ''
    returnType: void
    signature: void mesh_recompute_normals(GF_Mesh *mesh)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mesh.c:282,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mesh.c:289,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - mesh
    - __texCoords
    argTypes:
    - GF_Mesh*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 296
    functionName: mesh_generate_tex_coords
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 3
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void mesh_generate_tex_coords(GF_Mesh *mesh, GF_Node *__texCoords)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/mesh.c:306,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:308,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:309,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:310,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:311,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:312,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:313,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:315,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:316,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:317,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:318,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:319,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:320,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:322,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:323,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:324,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:325,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:326,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:327,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:329,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:330,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:331,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:332,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:333,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:334,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:336,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:337,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:338,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:339,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:340,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:341,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:343,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:344,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:345,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:346,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:347,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:348,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/compositor/mesh.c:358,1
    - Dst: gf_mesh_build_aabbtree
      Src: /src/gpac/src/compositor/mesh.c:359,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 47
    argCount: 2
    argNames:
    - mesh
    - size
    argTypes:
    - GF_Mesh*
    - SFVec3f
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 300
    functionDepth: 5
    functionLinenumber: 300
    functionLinenumberEnd: 360
    functionName: mesh_new_box
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - gf_mesh_build_aabbtree
    - mesh_set_vertex
    - mesh_set_triangle
    - gf_bbox_refresh
    - mesh_reset
    linkageType: ''
    returnType: void
    signature: void mesh_new_box(GF_Mesh *mesh, SFVec3f size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/mesh.c:367,1
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/mesh.c:369,1
    - Dst: mesh_set_point
      Src: /src/gpac/src/compositor/mesh.c:371,1
    - Dst: mesh_set_point
      Src: /src/gpac/src/compositor/mesh.c:372,1
    - Dst: mesh_set_point
      Src: /src/gpac/src/compositor/mesh.c:373,1
    - Dst: mesh_set_point
      Src: /src/gpac/src/compositor/mesh.c:374,1
    - Dst: mesh_set_point
      Src: /src/gpac/src/compositor/mesh.c:375,1
    - Dst: mesh_set_point
      Src: /src/gpac/src/compositor/mesh.c:376,1
    - Dst: mesh_set_point
      Src: /src/gpac/src/compositor/mesh.c:377,1
    - Dst: mesh_set_point
      Src: /src/gpac/src/compositor/mesh.c:378,1
    - Dst: mesh_set_line
      Src: /src/gpac/src/compositor/mesh.c:380,1
    - Dst: mesh_set_line
      Src: /src/gpac/src/compositor/mesh.c:381,1
    - Dst: mesh_set_line
      Src: /src/gpac/src/compositor/mesh.c:382,1
    - Dst: mesh_set_line
      Src: /src/gpac/src/compositor/mesh.c:383,1
    - Dst: mesh_set_line
      Src: /src/gpac/src/compositor/mesh.c:384,1
    - Dst: mesh_set_line
      Src: /src/gpac/src/compositor/mesh.c:385,1
    - Dst: mesh_set_line
      Src: /src/gpac/src/compositor/mesh.c:386,1
    - Dst: mesh_set_line
      Src: /src/gpac/src/compositor/mesh.c:387,1
    - Dst: mesh_set_line
      Src: /src/gpac/src/compositor/mesh.c:388,1
    - Dst: mesh_set_line
      Src: /src/gpac/src/compositor/mesh.c:389,1
    - Dst: mesh_set_line
      Src: /src/gpac/src/compositor/mesh.c:390,1
    - Dst: mesh_set_line
      Src: /src/gpac/src/compositor/mesh.c:391,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/compositor/mesh.c:392,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 26
    argCount: 1
    argNames:
    - mesh
    argTypes:
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 362
    functionDepth: 3
    functionLinenumber: 362
    functionLinenumberEnd: 393
    functionName: mesh_new_unit_bbox
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 1
    functionsReached:
    - memset
    - mesh_set_point
    - mesh_reset
    - gf_bbox_refresh
    - mesh_set_line
    linkageType: ''
    returnType: void
    signature: void mesh_new_unit_bbox(GF_Mesh *mesh)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:404,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mesh.c:404,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:405,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mesh.c:405,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 5
    argNames:
    - height
    - radius
    - numFacets
    - coords
    - texcoords
    argTypes:
    - Fixed
    - Fixed
    - s32
    - SFVec3f*
    - SFVec2f*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 396
    functionDepth: 0
    functionLinenumber: 396
    functionLinenumberEnd: 410
    functionName: compute_cylinder
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - gf_sin
    - gf_mulfix
    - gf_cos
    linkageType: ''
    returnType: void
    signature: void compute_cylinder(Fixed height, Fixed radius, s32 numFacets, SFVec3f
      *coords, SFVec2f *texcoords)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/mesh.c:419,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:424,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:425,1
    - Dst: compute_cylinder
      Src: /src/gpac/src/compositor/mesh.c:427,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:432,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:437,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:444,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:445,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:450,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:455,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:459,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:460,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:467,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:470,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mesh.c:472,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mesh.c:472,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:473,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:476,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mesh.c:478,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mesh.c:478,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:479,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:486,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:490,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mesh.c:492,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mesh.c:492,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:493,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:495,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mesh.c:497,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mesh.c:497,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:498,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:500,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:501,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/compositor/mesh.c:509,1
    - Dst: gf_mesh_build_aabbtree
      Src: /src/gpac/src/compositor/mesh.c:511,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 56
    argCount: 7
    argNames:
    - mesh
    - height
    - radius
    - bottom
    - side
    - top
    - low_res
    argTypes:
    - GF_Mesh*
    - Fixed
    - Fixed
    - Bool
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 512
      start: 413
    functionDepth: 5
    functionLinenumber: 413
    functionLinenumberEnd: 512
    functionName: mesh_new_cylinder
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sin
    - gf_mesh_build_aabbtree
    - mesh_set_vertex
    - mesh_set_triangle
    - compute_cylinder
    - mesh_reset
    - gf_bbox_refresh
    - gf_malloc
    - gf_cos
    linkageType: ''
    returnType: void
    signature: void mesh_new_cylinder(GF_Mesh *mesh, Fixed height, Fixed radius, Bool
      bottom, Bool side, Bool top, Bool low_res)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/mesh.c:521,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:526,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:527,1
    - Dst: compute_cylinder
      Src: /src/gpac/src/compositor/mesh.c:529,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/compositor/mesh.c:532,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:536,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:541,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:545,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:549,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:551,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:555,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:562,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:565,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mesh.c:567,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mesh.c:567,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:570,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:572,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mesh.c:574,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mesh.c:574,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:575,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:577,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:578,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/compositor/mesh.c:586,1
    - Dst: gf_mesh_build_aabbtree
      Src: /src/gpac/src/compositor/mesh.c:588,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 43
    argCount: 6
    argNames:
    - mesh
    - height
    - radius
    - bottom
    - side
    - low_res
    argTypes:
    - GF_Mesh*
    - Fixed
    - Fixed
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 515
    functionDepth: 5
    functionLinenumber: 515
    functionLinenumberEnd: 590
    functionName: mesh_new_cone
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sin
    - gf_mesh_build_aabbtree
    - mesh_set_vertex
    - gf_muldiv
    - mesh_set_triangle
    - compute_cylinder
    - mesh_reset
    - gf_bbox_refresh
    - gf_malloc
    - gf_cos
    linkageType: ''
    returnType: void
    signature: void mesh_new_cone(GF_Mesh *mesh, Fixed height, Fixed radius, Bool
      bottom, Bool side, Bool low_res)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mesh.c:603,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/compositor/mesh.c:604,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:604,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:611,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mesh.c:611,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:612,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mesh.c:612,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:613,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:614,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:615,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 39
    argCount: 5
    argNames:
    - radius
    - coords
    - texcoords
    - num_steps
    - sphere_angles
    argTypes:
    - Fixed
    - SFVec3f*
    - SFVec2f*
    - u32
    - GF_MeshSphereAngles*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 592
    functionDepth: 0
    functionLinenumber: 592
    functionLinenumberEnd: 637
    functionName: compute_sphere
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - gf_sin
    - gf_mulfix
    - gf_cos
    - gf_sqrt
    linkageType: ''
    returnType: void
    signature: void compute_sphere(Fixed radius, SFVec3f *coords, SFVec2f *texcoords,
      u32 num_steps, GF_MeshSphereAngles *sphere_angles)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:652,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:653,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/mesh.c:657,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:661,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:662,1
    - Dst: compute_sphere
      Src: /src/gpac/src/compositor/mesh.c:663,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:669,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:673,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:678,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:679,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:685,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:688,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:692,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:693,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:697,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:698,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/compositor/mesh.c:707,1
    - Dst: gf_mesh_build_aabbtree
      Src: /src/gpac/src/compositor/mesh.c:709,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 50
    argCount: 4
    argNames:
    - mesh
    - radius
    - low_res
    - sphere_angles
    argTypes:
    - GF_Mesh*
    - Fixed
    - Bool
    - GF_MeshSphereAngles*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 710
      start: 639
    functionDepth: 5
    functionLinenumber: 639
    functionLinenumberEnd: 710
    functionName: mesh_new_sphere
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_mesh_build_aabbtree
    - mesh_set_vertex
    - gf_divfix
    - mesh_set_triangle
    - FIX2INT
    - gf_bbox_refresh
    - compute_sphere
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void mesh_new_sphere(GF_Mesh *mesh, Fixed radius, Bool low_res, GF_MeshSphereAngles
      *sphere_angles)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/mesh.c:718,1
    - Dst: compositor_get_srdmap_size
      Src: /src/gpac/src/compositor/mesh.c:720,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh.c:728,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh.c:729,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh.c:730,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh.c:731,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:733,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:734,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:735,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:736,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh.c:739,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh.c:740,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh.c:741,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh.c:742,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mesh.c:774,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mesh.c:775,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/compositor/mesh.c:776,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:776,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/compositor/mesh.c:777,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:777,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:779,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:780,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:781,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:782,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:798,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mesh.c:798,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:799,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mesh.c:799,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:801,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mesh.c:801,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:802,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mesh.c:802,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:804,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mesh.c:804,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:805,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mesh.c:805,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:807,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mesh.c:807,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:808,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mesh.c:808,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:810,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:811,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:812,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:813,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:815,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:816,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/mesh.c:821,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 53
    argCount: 4
    argNames:
    - mesh
    - radius
    - srd_map
    - srd_ref
    argTypes:
    - GF_Mesh*
    - Fixed
    - GF_PropertyValue*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 822
      start: 712
    functionDepth: 3
    functionLinenumber: 712
    functionLinenumberEnd: 822
    functionName: mesh_new_spherical_srd
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 1
    functionsReached:
    - gf_sin
    - INT2FIX
    - mesh_set_vertex
    - mesh_update_bounds
    - gf_divfix
    - mesh_set_triangle
    - mesh_reset
    - compositor_get_srdmap_size
    - gf_mulfix
    - gf_cos
    - gf_sqrt
    linkageType: ''
    returnType: void
    signature: void mesh_new_spherical_srd(GF_Mesh *mesh, Fixed radius, const GF_PropertyValue
      *srd_map, const GF_PropertyValue *srd_ref)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/mesh.c:842,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:883,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:884,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:885,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:886,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:888,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:889,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/compositor/mesh.c:899,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 50
    argCount: 5
    argNames:
    - mesh
    - size
    - orig
    - flip
    - rotate
    argTypes:
    - GF_Mesh*
    - SFVec2f
    - SFVec2f*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 900
      start: 823
    functionDepth: 3
    functionLinenumber: 823
    functionLinenumberEnd: 900
    functionName: mesh_new_rectangle_ex
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - gf_bbox_refresh
    - mesh_reset
    - mesh_set_triangle
    - mesh_set_vertex
    linkageType: ''
    returnType: void
    signature: void mesh_new_rectangle_ex(GF_Mesh *mesh, SFVec2f size, SFVec2f *orig,
      u32 flip, u32 rotate)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesh_new_rectangle_ex
      Src: /src/gpac/src/compositor/mesh.c:904,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - mesh
    - size
    - orig
    - flip
    argTypes:
    - GF_Mesh*
    - SFVec2f
    - SFVec2f*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 905
      start: 902
    functionDepth: 4
    functionLinenumber: 902
    functionLinenumberEnd: 905
    functionName: mesh_new_rectangle
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 5
    functionsReached:
    - mesh_new_rectangle_ex
    linkageType: ''
    returnType: void
    signature: void mesh_new_rectangle(GF_Mesh *mesh, SFVec2f size, SFVec2f *orig,
      Bool flip)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: compositor_get_srdmap_size
      Src: /src/gpac/src/compositor/mesh.c:914,1
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/mesh.c:932,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh.c:934,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh.c:935,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh.c:936,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh.c:937,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:939,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:940,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:941,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:942,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh.c:944,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh.c:945,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh.c:946,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh.c:947,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:966,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:967,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:968,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:969,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:971,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:972,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/mesh.c:977,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 44
    argCount: 6
    argNames:
    - mesh
    - size
    - flip
    - rotate
    - srd_map
    - srd_ref
    argTypes:
    - GF_Mesh*
    - SFVec2f
    - u32
    - u32
    - GF_PropertyValue*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 978
      start: 907
    functionDepth: 3
    functionLinenumber: 907
    functionLinenumberEnd: 978
    functionName: mesh_new_planar_srd
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - mesh_set_vertex
    - mesh_set_triangle
    - mesh_reset
    - compositor_get_srdmap_size
    - gf_mulfix
    - mesh_update_bounds
    linkageType: ''
    returnType: void
    signature: void mesh_new_planar_srd(GF_Mesh *mesh, SFVec2f size, u32 flip, u32
      rotate, const GF_PropertyValue *srd_map, const GF_PropertyValue *srd_ref)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/mesh.c:993,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:996,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mesh.c:998,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mesh.c:999,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:1001,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:1001,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:1001,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:1005,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:1007,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:1008,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/compositor/mesh.c:1017,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 4
    argNames:
    - mesh
    - a_dia
    - b_dia
    - low_res
    argTypes:
    - GF_Mesh*
    - Fixed
    - Fixed
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 982
    functionDepth: 3
    functionLinenumber: 982
    functionLinenumberEnd: 1018
    functionName: mesh_new_ellipse
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 2
    functionsReached:
    - gf_sin
    - mesh_set_vertex
    - mesh_set_triangle
    - mesh_reset
    - gf_bbox_refresh
    - gf_mulfix
    - gf_cos
    linkageType: ''
    returnType: void
    signature: void mesh_new_ellipse(GF_Mesh *mesh, Fixed a_dia, Fixed b_dia, Bool
      low_res)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_flatten
      Src: /src/gpac/src/compositor/mesh.c:1027,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/mesh.c:1028,1
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/mesh.c:1030,1
    - Dst: gf_polygone2d_get_convexity
      Src: /src/gpac/src/compositor/mesh.c:1032,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:1046,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:1046,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:1046,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:1052,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:1052,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:1052,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:1058,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:1060,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/compositor/mesh.c:1069,1
    - Dst: gf_mesh_tesselate_path
      Src: /src/gpac/src/compositor/mesh.c:1077,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 41
    argCount: 3
    argNames:
    - mesh
    - path
    - make_ccw
    argTypes:
    - GF_Mesh*
    - GF_Path*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1079
      start: 1020
    functionDepth: 3
    functionLinenumber: 1020
    functionLinenumberEnd: 1079
    functionName: mesh_from_path_intern
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - gf_polygone2d_get_convexity
    - mesh_set_vertex
    - gf_path_flatten
    - gf_divfix
    - mesh_set_triangle
    - mesh_reset
    - gf_bbox_refresh
    - gf_mesh_tesselate_path
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void mesh_from_path_intern(GF_Mesh *mesh, GF_Path *path, Bool make_ccw)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesh_from_path_intern
      Src: /src/gpac/src/compositor/mesh.c:1083,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - mesh
    - path
    argTypes:
    - GF_Mesh*
    - GF_Path*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1084
      start: 1081
    functionDepth: 4
    functionLinenumber: 1081
    functionLinenumberEnd: 1084
    functionName: mesh_from_path
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 10
    functionsReached:
    - mesh_from_path_intern
    linkageType: ''
    returnType: void
    signature: void mesh_from_path(GF_Mesh *mesh, GF_Path *path)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/mesh.c:1090,1
    - Dst: gf_path_flatten
      Src: /src/gpac/src/compositor/mesh.c:1095,1
    - Dst: mesh_set_line
      Src: /src/gpac/src/compositor/mesh.c:1102,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/mesh.c:1103,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/mesh.c:1107,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - mesh
    - path
    argTypes:
    - GF_Mesh*
    - GF_Path*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1108
      start: 1087
    functionDepth: 3
    functionLinenumber: 1087
    functionLinenumberEnd: 1108
    functionName: mesh_get_outline
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 3
    functionsReached:
    - mesh_set_vertex
    - gf_path_flatten
    - mesh_reset
    - mesh_set_line
    - mesh_update_bounds
    linkageType: ''
    returnType: void
    signature: void mesh_get_outline(GF_Mesh *mesh, GF_Path *path)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - res
    - ','
    - col
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1115
      start: 1114
    functionDepth: 0
    functionLinenumber: 1114
    functionLinenumberEnd: 1115
    functionName: COL_TO_RGBA
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: COL_TO_RGBA(res, col)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - thecol
    - ','
    - index
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1122
      start: 1117
    functionDepth: 0
    functionLinenumber: 1117
    functionLinenumberEnd: 1122
    functionName: MESH_GET_COL
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MESH_GET_COL(thecol, index)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mesh.c:1138,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mesh.c:1164,1
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/mesh.c:1177,1
    - Dst: MESH_GET_COL
      Src: /src/gpac/src/compositor/mesh.c:1185,1
    - Dst: gf_vec_equal
      Src: /src/gpac/src/compositor/mesh.c:1194,1
    - Dst: mesh_set_line
      Src: /src/gpac/src/compositor/mesh.c:1195,1
    - Dst: MESH_GET_COL
      Src: /src/gpac/src/compositor/mesh.c:1204,1
    - Dst: MESH_GET_COL
      Src: /src/gpac/src/compositor/mesh.c:1213,1
    - Dst: mesh_set_point
      Src: /src/gpac/src/compositor/mesh.c:1226,1
    - Dst: mesh_set_line
      Src: /src/gpac/src/compositor/mesh.c:1232,1
    - Dst: gf_vec_equal
      Src: /src/gpac/src/compositor/mesh.c:1238,1
    - Dst: mesh_set_line
      Src: /src/gpac/src/compositor/mesh.c:1239,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/mesh.c:1245,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 99
    argCount: 7
    argNames:
    - mesh
    - __coord
    - coordIndex
    - __color
    - colorIndex
    - colorPerVertex
    - do_close
    argTypes:
    - GF_Mesh*
    - GF_Node*
    - MFInt32*
    - GF_Node*
    - MFInt32*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1246
      start: 1122
    functionDepth: 3
    functionLinenumber: 1122
    functionLinenumberEnd: 1246
    functionName: mesh_new_ils
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_vec_equal
    - MESH_GET_COL
    - mesh_set_point
    - mesh_reset
    - mesh_set_line
    - mesh_update_bounds
    linkageType: ''
    returnType: void
    signature: void mesh_new_ils(GF_Mesh *mesh, GF_Node *__coord, MFInt32 *coordIndex,
      GF_Node *__color, MFInt32 *colorIndex, Bool colorPerVertex, Bool do_close)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mesh.c:1261,1
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/mesh.c:1271,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mesh.c:1277,1
    - Dst: MESH_GET_COL
      Src: /src/gpac/src/compositor/mesh.c:1295,1
    - Dst: mesh_set_point
      Src: /src/gpac/src/compositor/mesh.c:1304,1
    - Dst: mesh_set_index
      Src: /src/gpac/src/compositor/mesh.c:1305,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/mesh.c:1307,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 3
    argNames:
    - mesh
    - __coord
    - __color
    argTypes:
    - GF_Mesh*
    - GF_Node*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1308
      start: 1248
    functionDepth: 3
    functionLinenumber: 1248
    functionLinenumberEnd: 1308
    functionName: mesh_new_ps
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - mesh_set_index
    - MESH_GET_COL
    - mesh_set_point
    - mesh_reset
    - mesh_update_bounds
    linkageType: ''
    returnType: void
    signature: void mesh_new_ps(GF_Mesh *mesh, GF_Node *__coord, GF_Node *__color)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/mesh.c:1335,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - fi
    - pt_index
    argTypes:
    - struct face_info*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1339
      start: 1331
    functionDepth: 0
    functionLinenumber: 1331
    functionLinenumberEnd: 1339
    functionName: register_point_in_face
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void register_point_in_face(struct face_info *fi, u32 pt_index)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/mesh.c:1345,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - pi
    - face_index
    argTypes:
    - struct pt_info*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1349
      start: 1341
    functionDepth: 0
    functionLinenumber: 1341
    functionLinenumberEnd: 1349
    functionName: register_face_in_point
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void register_face_in_point(struct pt_info *pi, u32 face_index)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mesh.c:1364,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/mesh.c:1365,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:1369,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 7
    argNames:
    - pts
    - nb_pts
    - faces
    - nb_faces
    - pt_idx_in_face
    - face_idx
    - creaseAngleCos
    argTypes:
    - struct pt_info*
    - u32
    - struct face_info*
    - u32
    - u32
    - u32
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1371
      start: 1351
    functionDepth: 1
    functionLinenumber: 1351
    functionLinenumberEnd: 1371
    functionName: smooth_face_normals
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - gf_vec_dot
    - gf_vec_add
    - gf_vec_norm
    linkageType: ''
    returnType: GFINLINE
    signature: "GFINLINE smooth_face_normals(struct pt_info *pts, u32 nb_pts, struct
      face_info *faces, u32 nb_faces,\n        u32 pt_idx_in_face, u32 face_idx, Fixed
      creaseAngleCos)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - idx
    - ','
    - array
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1379
      start: 1374
    functionDepth: 0
    functionLinenumber: 1374
    functionLinenumberEnd: 1379
    functionName: GET_IDX
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_IDX(idx, array)
  - BBCount: 64
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mesh.c:1410,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mesh.c:1418,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mesh.c:1424,1
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/mesh.c:1448,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mesh.c:1449,1
    - Dst: mesh_set_point
      Src: /src/gpac/src/compositor/mesh.c:1454,1
    - Dst: mesh_set_point
      Src: /src/gpac/src/compositor/mesh.c:1455,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/mesh.c:1457,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:1458,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mesh.c:1477,1
    - Dst: MESH_GET_COL
      Src: /src/gpac/src/compositor/mesh.c:1494,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:1524,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mesh.c:1526,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:1534,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mesh.c:1535,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:1536,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mesh.c:1537,1
    - Dst: GET_IDX
      Src: /src/gpac/src/compositor/mesh.c:1545,1
    - Dst: MESH_GET_COL
      Src: /src/gpac/src/compositor/mesh.c:1547,1
    - Dst: GET_IDX
      Src: /src/gpac/src/compositor/mesh.c:1551,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:1559,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:1561,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mesh.c:1562,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/mesh.c:1563,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:1564,1
    - Dst: GET_IDX
      Src: /src/gpac/src/compositor/mesh.c:1574,1
    - Dst: MESH_GET_COL
      Src: /src/gpac/src/compositor/mesh.c:1576,1
    - Dst: GET_IDX
      Src: /src/gpac/src/compositor/mesh.c:1580,1
    - Dst: register_point_in_face
      Src: /src/gpac/src/compositor/mesh.c:1598,1
    - Dst: register_face_in_point
      Src: /src/gpac/src/compositor/mesh.c:1599,1
    - Dst: GET_IDX
      Src: /src/gpac/src/compositor/mesh.c:1604,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:1608,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:1610,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:1611,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:1612,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:1613,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:1614,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:1615,1
    - Dst: mesh_set_vertex_v
      Src: /src/gpac/src/compositor/mesh.c:1618,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mesh.c:1629,1
    - Dst: smooth_face_normals
      Src: /src/gpac/src/compositor/mesh.c:1633,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:1634,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:1639,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:1640,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:1643,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:1644,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:1651,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:1652,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mesh.c:1653,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:1655,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:1657,1
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/mesh.c:1662,1
    - Dst: TesselateFaceMesh
      Src: /src/gpac/src/compositor/mesh.c:1668,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/mesh.c:1669,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:1671,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/mesh.c:1672,1
    - Dst: gf_mesh_build_aabbtree
      Src: /src/gpac/src/compositor/mesh.c:1674,1
    - Dst: mesh_generate_tex_coords
      Src: /src/gpac/src/compositor/mesh.c:1678,1
    CyclomaticComplexity: 97
    EdgeCount: 97
    ICount: 252
    argCount: 12
    argNames:
    - mesh
    - __coord
    - coordIndex
    - __color
    - colorIndex
    - colorPerVertex
    - __normal
    - normalIndex
    - normalPerVertex
    - __texCoords
    - texCoordIndex
    - creaseAngle
    argTypes:
    - GF_Mesh*
    - GF_Node*
    - MFInt32*
    - GF_Node*
    - MFInt32*
    - Bool
    - GF_Node*
    - MFInt32*
    - Bool
    - GF_Node*
    - MFInt32*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1680
      start: 1379
    functionDepth: 5
    functionLinenumber: 1379
    functionLinenumberEnd: 1680
    functionName: mesh_new_ifs_intern
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_free
    - memset
    - gf_vec_norm
    - smooth_face_normals
    - gf_cos
    - gf_vec_len
    - register_face_in_point
    - MESH_GET_COL
    - new_mesh
    - mesh_set_point
    - mesh_reset
    - TesselateFaceMesh
    - GET_IDX
    - mesh_update_bounds
    - register_point_in_face
    - mesh_set_vertex_v
    - gf_divfix
    - mesh_generate_tex_coords
    - gf_malloc
    - gf_vec_cross
    - mesh_free
    - gf_mesh_build_aabbtree
    - gf_vec_diff
    - MESH_SET_NORMAL
    linkageType: ''
    returnType: void
    signature: "void mesh_new_ifs_intern(GF_Mesh *mesh, GF_Node *__coord, MFInt32
      *coordIndex,\n                         GF_Node *__color, MFInt32 *colorIndex,
      Bool colorPerVertex,\n                         GF_Node *__normal, MFInt32 *normalIndex,
      Bool normalPerVertex,\n                         GF_Node *__texCoords, MFInt32
      *texCoordIndex,\n                         Fixed creaseAngle)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesh_new_ifs_intern
      Src: /src/gpac/src/compositor/mesh.c:1685,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - mesh
    - node
    argTypes:
    - GF_Mesh*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1690
      start: 1682
    functionDepth: 6
    functionLinenumber: 1682
    functionLinenumberEnd: 1690
    functionName: mesh_new_ifs2d
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - mesh_new_ifs_intern
    linkageType: ''
    returnType: void
    signature: void mesh_new_ifs2d(GF_Mesh *mesh, GF_Node *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: mesh_new_ifs_intern
      Src: /src/gpac/src/compositor/mesh.c:1695,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - mesh
    - node
    argTypes:
    - GF_Mesh*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1700
      start: 1692
    functionDepth: 6
    functionLinenumber: 1692
    functionLinenumberEnd: 1700
    functionName: mesh_new_ifs
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - mesh_new_ifs_intern
    linkageType: ''
    returnType: void
    signature: void mesh_new_ifs(GF_Mesh *mesh, GF_Node *node)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/mesh.c:1720,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mesh.c:1723,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mesh.c:1724,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mesh.c:1730,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh.c:1764,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh.c:1765,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/mesh.c:1767,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:1774,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:1775,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:1777,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:1778,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mesh.c:1779,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:1780,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:1781,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:1782,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:1783,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:1784,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/mesh.c:1788,1
    - Dst: gf_mesh_build_aabbtree
      Src: /src/gpac/src/compositor/mesh.c:1791,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:1797,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:1799,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mesh.c:1801,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:1802,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mesh.c:1804,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mesh.c:1805,1
    - Dst: MESH_GET_COL
      Src: /src/gpac/src/compositor/mesh.c:1816,1
    - Dst: MESH_MAKE_COL
      Src: /src/gpac/src/compositor/mesh.c:1818,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:1825,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:1826,1
    - Dst: MESH_GET_COL
      Src: /src/gpac/src/compositor/mesh.c:1841,1
    - Dst: MESH_MAKE_COL
      Src: /src/gpac/src/compositor/mesh.c:1843,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh.c:1847,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mesh.c:1848,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:1858,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:1859,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/mesh.c:1864,1
    - Dst: register_point_in_face
      Src: /src/gpac/src/compositor/mesh.c:1865,1
    - Dst: register_face_in_point
      Src: /src/gpac/src/compositor/mesh.c:1866,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/mesh.c:1868,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:1876,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:1877,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:1878,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:1879,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mesh.c:1880,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:1881,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mesh.c:1885,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:1889,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:1890,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:1893,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:1894,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mesh.c:1895,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:1896,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:1897,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:1898,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:1899,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:1900,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mesh.c:1912,1
    - Dst: smooth_face_normals
      Src: /src/gpac/src/compositor/mesh.c:1916,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:1917,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:1922,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:1923,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:1926,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:1927,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/mesh.c:1938,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/mesh.c:1939,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/mesh.c:1940,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/mesh.c:1941,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:1942,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:1943,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/mesh.c:1945,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:1949,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/mesh.c:1954,1
    - Dst: gf_mesh_build_aabbtree
      Src: /src/gpac/src/compositor/mesh.c:1960,1
    CyclomaticComplexity: 59
    EdgeCount: 59
    ICount: 208
    argCount: 2
    argNames:
    - mesh
    - node
    argTypes:
    - GF_Mesh*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1961
      start: 1702
    functionDepth: 5
    functionLinenumber: 1702
    functionLinenumberEnd: 1961
    functionName: mesh_new_elevation_grid
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_free
    - mesh_set_vertex_vx
    - memset
    - gf_vec_norm
    - smooth_face_normals
    - gf_cos
    - register_face_in_point
    - MESH_GET_COL
    - new_mesh
    - MESH_MAKE_COL
    - mesh_reset
    - mesh_update_bounds
    - register_point_in_face
    - gf_malloc
    - INT2FIX
    - gf_vec_cross
    - gf_mesh_build_aabbtree
    - mesh_free
    - gf_vec_diff
    - mesh_set_triangle
    - MESH_SET_NORMAL
    linkageType: ''
    returnType: void
    signature: void mesh_new_elevation_grid(GF_Mesh *mesh, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - FACE_IDX
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1985
      start: 1975
    functionDepth: 0
    functionLinenumber: 1975
    functionLinenumberEnd: 1985
    functionName: REGISTER_POINT_FACE
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: REGISTER_POINT_FACE(FACE_IDX)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1987
      start: 1986
    functionDepth: 0
    functionLinenumber: 1986
    functionLinenumberEnd: 1987
    functionName: NEAR_ZERO
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NEAR_ZERO(__x)
  - BBCount: 74
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_equal
      Src: /src/gpac/src/compositor/mesh.c:2009,1
    - Dst: gf_path_flatten
      Src: /src/gpac/src/compositor/mesh.c:2012,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mesh.c:2014,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/mesh.c:2025,1
    - Dst: NEAR_ZERO
      Src: /src/gpac/src/compositor/mesh.c:2042,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:2044,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mesh.c:2045,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:2051,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mesh.c:2052,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:2053,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mesh.c:2054,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:2060,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mesh.c:2061,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:2062,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mesh.c:2063,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:2077,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/mesh.c:2078,1
    - Dst: gf_vec_equal
      Src: /src/gpac/src/compositor/mesh.c:2086,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:2098,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:2099,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mesh.c:2100,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:2129,1
    - Dst: NEAR_ZERO
      Src: /src/gpac/src/compositor/mesh.c:2130,1
    - Dst: gf_asin
      Src: /src/gpac/src/compositor/mesh.c:2133,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mesh.c:2134,1
    - Dst: NEAR_ZERO
      Src: /src/gpac/src/compositor/mesh.c:2137,1
    - Dst: gf_acos
      Src: /src/gpac/src/compositor/mesh.c:2140,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:2140,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mesh.c:2141,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:2142,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/mesh.c:2143,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/mesh.c:2143,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mesh.c:2145,1
    - Dst: NEAR_ZERO
      Src: /src/gpac/src/compositor/mesh.c:2146,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mesh.c:2150,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2152,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2153,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2155,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2156,1
    - Dst: NEAR_ZERO
      Src: /src/gpac/src/compositor/mesh.c:2159,1
    - Dst: gf_asin
      Src: /src/gpac/src/compositor/mesh.c:2162,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mesh.c:2163,1
    - Dst: NEAR_ZERO
      Src: /src/gpac/src/compositor/mesh.c:2166,1
    - Dst: gf_acos
      Src: /src/gpac/src/compositor/mesh.c:2169,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:2169,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mesh.c:2170,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:2171,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/mesh.c:2172,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/mesh.c:2172,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mesh.c:2174,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mesh.c:2175,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2176,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2177,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2179,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2180,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/mesh.c:2192,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:2197,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:2199,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:2200,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mesh.c:2201,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:2205,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:2206,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:2207,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mesh.c:2208,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:2212,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:2214,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mesh.c:2219,1
    - Dst: gf_vec_rev
      Src: /src/gpac/src/compositor/mesh.c:2220,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mesh.c:2226,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:2227,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:2228,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:2229,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:2239,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mesh.c:2259,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:2260,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:2261,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:2262,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/mesh.c:2267,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/compositor/mesh.c:2268,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mesh.c:2269,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mesh.c:2270,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mesh.c:2271,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:2274,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:2295,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:2297,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:2298,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2309,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2310,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2312,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2312,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2312,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2313,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2313,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2313,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2314,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2314,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2314,1
    - Dst: REGISTER_POINT_FACE
      Src: /src/gpac/src/compositor/mesh.c:2319,1
    - Dst: REGISTER_POINT_FACE
      Src: /src/gpac/src/compositor/mesh.c:2321,1
    - Dst: register_point_in_face
      Src: /src/gpac/src/compositor/mesh.c:2326,1
    - Dst: register_face_in_point
      Src: /src/gpac/src/compositor/mesh.c:2327,1
    - Dst: register_point_in_face
      Src: /src/gpac/src/compositor/mesh.c:2331,1
    - Dst: register_face_in_point
      Src: /src/gpac/src/compositor/mesh.c:2332,1
    - Dst: REGISTER_POINT_FACE
      Src: /src/gpac/src/compositor/mesh.c:2338,1
    - Dst: REGISTER_POINT_FACE
      Src: /src/gpac/src/compositor/mesh.c:2340,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/mesh.c:2347,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:2356,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/mesh.c:2357,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:2363,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:2364,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:2365,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mesh.c:2366,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/compositor/mesh.c:2367,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:2368,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:2370,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:2385,1
    - Dst: gf_polygone2d_get_convexity
      Src: /src/gpac/src/compositor/mesh.c:2387,1
    - Dst: gf_vec_rev
      Src: /src/gpac/src/compositor/mesh.c:2393,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:2397,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/mesh.c:2402,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/mesh.c:2402,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:2416,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:2417,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2424,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2425,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2427,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2427,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2427,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2428,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2428,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2428,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2429,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2429,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2429,1
    - Dst: REGISTER_POINT_FACE
      Src: /src/gpac/src/compositor/mesh.c:2430,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mesh.c:2445,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:2446,1
    - Dst: gf_polygone2d_get_convexity
      Src: /src/gpac/src/compositor/mesh.c:2447,1
    - Dst: gf_vec_rev
      Src: /src/gpac/src/compositor/mesh.c:2451,1
    - Dst: gf_vec_rev
      Src: /src/gpac/src/compositor/mesh.c:2452,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/mesh.c:2458,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/mesh.c:2458,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:2473,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mesh.c:2474,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2481,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2482,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2484,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2484,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2484,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2485,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2485,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2485,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2486,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2486,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mesh.c:2486,1
    - Dst: REGISTER_POINT_FACE
      Src: /src/gpac/src/compositor/mesh.c:2488,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mesh.c:2500,1
    - Dst: smooth_face_normals
      Src: /src/gpac/src/compositor/mesh.c:2504,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mesh.c:2505,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:2510,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:2511,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:2514,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:2515,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/mesh.c:2528,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/mesh.c:2529,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/mesh.c:2530,1
    - Dst: mesh_set_vertex_vx
      Src: /src/gpac/src/compositor/mesh.c:2531,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:2532,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/mesh.c:2533,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/mesh.c:2535,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:2540,1
    - Dst: TesselateFaceMeshComplex
      Src: /src/gpac/src/compositor/mesh.c:2548,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:2549,1
    - Dst: TesselateFaceMesh
      Src: /src/gpac/src/compositor/mesh.c:2552,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/mesh.c:2554,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mesh.c:2559,1
    - Dst: TesselateFaceMeshComplex
      Src: /src/gpac/src/compositor/mesh.c:2566,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:2567,1
    - Dst: TesselateFaceMesh
      Src: /src/gpac/src/compositor/mesh.c:2570,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/mesh.c:2572,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:2574,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mesh.c:2575,1
    CyclomaticComplexity: 116
    EdgeCount: 116
    ICount: 480
    argCount: 13
    argNames:
    - mesh
    - path
    - thespine
    - creaseAngle
    - min_cx
    - min_cy
    - width_cx
    - width_cy
    - begin_cap
    - end_cap
    - spine_ori
    - spine_scale
    - tx_along_spine
    argTypes:
    - GF_Mesh*
    - GF_Path*
    - MFVec3f*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Bool
    - Bool
    - MFRotation*
    - MFVec2f*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2585
      start: 1988
    functionDepth: 3
    functionLinenumber: 1988
    functionLinenumberEnd: 2585
    functionName: mesh_extrude_path_intern
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_polygone2d_get_convexity
    - mesh_set_vertex_vx
    - memset
    - gf_vec_norm
    - smooth_face_normals
    - gf_cos
    - gf_vec_len
    - gf_assert
    - gf_vec_dot
    - register_face_in_point
    - gf_mx_add_rotation
    - gf_mx_init
    - new_mesh
    - TesselateFaceMeshComplex
    - TesselateFaceMesh
    - gf_mulfix
    - gf_sin
    - gf_vec_equal
    - register_point_in_face
    - gf_divfix
    - gf_asin
    - REGISTER_POINT_FACE
    - gf_malloc
    - ABS
    - gf_vec_rev
    - gf_vec_cross
    - mesh_free
    - gf_path_flatten
    - gf_vec_diff
    - NEAR_ZERO
    - mesh_set_triangle
    - MESH_SET_NORMAL
    - gf_acos
    - gf_mx_apply_vec
    linkageType: ''
    returnType: void
    signature: void mesh_extrude_path_intern(GF_Mesh *mesh, GF_Path *path, MFVec3f
      *thespine, Fixed creaseAngle, Fixed min_cx, Fixed min_cy, Fixed width_cx, Fixed
      width_cy, Bool begin_cap, Bool end_cap, MFRotation *spine_ori, MFVec2f *spine_scale,
      Bool tx_along_spine)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesh_extrude_path_intern
      Src: /src/gpac/src/compositor/mesh.c:2589,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 13
    argNames:
    - mesh
    - path
    - thespine
    - creaseAngle
    - min_cx
    - min_cy
    - width_cx
    - width_cy
    - begin_cap
    - end_cap
    - spine_ori
    - spine_scale
    - tx_along_spine
    argTypes:
    - GF_Mesh*
    - GF_Path*
    - MFVec3f*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Bool
    - Bool
    - MFRotation*
    - MFVec2f*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2590
      start: 2587
    functionDepth: 4
    functionLinenumber: 2587
    functionLinenumberEnd: 2590
    functionName: mesh_extrude_path_ext
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 2
    functionsReached:
    - mesh_extrude_path_intern
    linkageType: ''
    returnType: void
    signature: void mesh_extrude_path_ext(GF_Mesh *mesh, GF_Path *path, MFVec3f *thespine,
      Fixed creaseAngle, Fixed min_cx, Fixed min_cy, Fixed width_cx, Fixed width_cy,
      Bool begin_cap, Bool end_cap, MFRotation *spine_ori, MFVec2f *spine_scale, Bool
      tx_along_spine)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/mesh.c:2595,1
    - Dst: mesh_extrude_path_intern
      Src: /src/gpac/src/compositor/mesh.c:2596,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/mesh.c:2597,1
    - Dst: gf_mesh_build_aabbtree
      Src: /src/gpac/src/compositor/mesh.c:2598,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 9
    argNames:
    - mesh
    - path
    - thespine
    - creaseAngle
    - begin_cap
    - end_cap
    - spine_ori
    - spine_scale
    - tx_along_spine
    argTypes:
    - GF_Mesh*
    - GF_Path*
    - MFVec3f*
    - Fixed
    - Bool
    - Bool
    - MFRotation*
    - MFVec2f*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2599
      start: 2592
    functionDepth: 5
    functionLinenumber: 2592
    functionLinenumberEnd: 2599
    functionName: mesh_extrude_path
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 1
    functionsReached:
    - mesh_extrude_path_intern
    - mesh_update_bounds
    - gf_mesh_build_aabbtree
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void mesh_extrude_path(GF_Mesh *mesh, GF_Path *path, MFVec3f *thespine,
      Fixed creaseAngle, Bool begin_cap, Bool end_cap, MFRotation *spine_ori, MFVec2f
      *spine_scale, Bool tx_along_spine)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/mesh.c:2607,1
    - Dst: gf_path_new
      Src: /src/gpac/src/compositor/mesh.c:2608,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/mesh.c:2609,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/mesh.c:2611,1
    - Dst: mesh_extrude_path
      Src: /src/gpac/src/compositor/mesh.c:2614,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/mesh.c:2615,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/mesh.c:2617,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - mesh
    - node
    argTypes:
    - GF_Mesh*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2619
      start: 2601
    functionDepth: 6
    functionLinenumber: 2601
    functionLinenumberEnd: 2619
    functionName: mesh_new_extrusion
    functionSourceFile: /src/gpac/src/compositor/mesh.c
    functionUses: 0
    functionsReached:
    - mesh_extrude_path
    - gf_path_new
    - gf_path_del
    - gf_path_add_move_to
    - mesh_reset
    - gf_path_add_line_to
    - mesh_update_bounds
    linkageType: ''
    returnType: void
    signature: void mesh_new_extrusion(GF_Mesh *mesh, GF_Node *node)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_get_handler
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:57,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:64,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:73,1
    - Dst: gf_node_get_num_instances
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:80,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:80,1
    - Dst: gf_mo_get_visual_info_ex
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:87,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:102,1
    - Dst: compositor_adjust_scale
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:115,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:118,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:118,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:119,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:119,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:124,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:124,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:130,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:131,1
    - Dst: gf_rect_center
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:134,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:136,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:142,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:145,1
    - Dst: gf_path_add_rect_center
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:146,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 68
    argCount: 5
    argNames:
    - node
    - st
    - tr_state
    - out_rc
    - notify_changes
    argTypes:
    - GF_Node*
    - BitmapStack*
    - GF_TraverseState*
    - GF_Rect*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 46
    functionDepth: 3
    functionLinenumber: 46
    functionLinenumberEnd: 147
    functionName: Bitmap_BuildGraph
    functionSourceFile: /src/gpac/src/compositor/mpeg4_bitmap.c
    functionUses: 0
    functionsReached:
    - gf_path_add_rect_center
    - INT2FIX
    - mesh_free
    - drawable_reset_path
    - gf_node_dirty_set
    - gf_node_dirty_get
    - gf_divfix
    - gf_node_get_num_instances
    - gf_node_dirty_clear
    - compositor_adjust_scale
    - gf_sc_texture_get_handler
    - gf_rect_center
    - gf_mulfix
    - gf_mo_get_visual_info_ex
    linkageType: ''
    returnType: void
    signature: void Bitmap_BuildGraph(GF_Node *node, BitmapStack *st, GF_TraverseState
      *tr_state, GF_Rect *out_rc, Bool notify_changes)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:156,1
    - Dst: Bitmap_BuildGraph
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:160,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:162,1
    - Dst: drawable_get_aspect_2d_mpeg4
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:163,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:172,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:175,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:176,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:177,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:178,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:179,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:180,1
    - Dst: compositor_3d_draw_bitmap
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:186,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 26
    argCount: 2
    argNames:
    - node
    - tr_state
    argTypes:
    - GF_Node*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 151
    functionDepth: 4
    functionLinenumber: 151
    functionLinenumberEnd: 189
    functionName: draw_bitmap_3d
    functionSourceFile: /src/gpac/src/compositor/mpeg4_bitmap.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - compositor_3d_draw_bitmap
    - FIX2INT
    - memset
    - gf_node_get_private
    - Bitmap_BuildGraph
    - drawable_get_aspect_2d_mpeg4
    linkageType: ''
    returnType: void
    signature: void draw_bitmap_3d(GF_Node *node, GF_TraverseState *tr_state)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:196,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:208,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:211,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:212,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:213,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:214,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:215,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:216,1
    - Dst: GF_TraverseState*::visual::DrawBitmap
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:224,1
    - Dst: gf_rect_center
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:226,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:227,1
    - Dst: gf_mx2d_inverse
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:228,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:229,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:231,1
    - Dst: gf_path_add_rect_center
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:232,1
    - Dst: visual_2d_texture_path
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:236,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 34
    argCount: 2
    argNames:
    - node
    - tr_state
    argTypes:
    - GF_Node*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 192
    functionDepth: 12
    functionLinenumber: 192
    functionLinenumberEnd: 239
    functionName: draw_bitmap_2d
    functionSourceFile: /src/gpac/src/compositor/mpeg4_bitmap.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_path_add_rect_center
    - drawable_reset_path
    - GF_TraverseState*::visual::DrawBitmap
    - gf_mx2d_apply_rect
    - gf_rect_center
    - FIX2INT
    - gf_mx2d_inverse
    - gf_mx2d_copy
    - gf_node_get_private
    - visual_2d_texture_path
    linkageType: ''
    returnType: void
    signature: void draw_bitmap_2d(GF_Node *node, GF_TraverseState *tr_state)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:246,1
    - Dst: drawable_del_ex
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:250,1
    - Dst: gf_sc_get_compositor
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:250,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:251,1
    - Dst: rectangle_check_adaptation
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:254,1
    - Dst: draw_bitmap_2d
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:259,1
    - Dst: draw_bitmap_3d
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:263,1
    - Dst: vrml_drawable_pick
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:268,1
    - Dst: Bitmap_BuildGraph
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:271,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:289,1
    - Dst: Bitmap_BuildGraph
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:290,1
    - Dst: drawable_init_context_mpeg4
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:293,1
    - Dst: visual_2d_remove_last_context
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:295,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:311,1
    - Dst: visual_2d_remove_last_context
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:314,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:323,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:325,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:331,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 62
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 241
    functionDepth: 13
    functionLinenumber: 241
    functionLinenumberEnd: 332
    functionName: TraverseBitmap
    functionSourceFile: /src/gpac/src/compositor/mpeg4_bitmap.c
    functionUses: 0
    functionsReached:
    - gf_free
    - rectangle_check_adaptation
    - drawable_init_context_mpeg4
    - gf_node_get_tag
    - GF_COL_A
    - drawable_finalize_sort
    - draw_bitmap_2d
    - drawable_del_ex
    - visual_2d_remove_last_context
    - gf_sc_get_compositor
    - memset
    - vrml_drawable_pick
    - draw_bitmap_3d
    - gf_node_get_private
    - Bitmap_BuildGraph
    linkageType: ''
    returnType: void
    signature: void TraverseBitmap(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:338,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:340,1
    - Dst: drawable_init_ex
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:343,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:346,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_bitmap.c:347,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 335
    functionDepth: 2
    functionLinenumber: 335
    functionLinenumberEnd: 348
    functionName: compositor_init_bitmap
    functionSourceFile: /src/gpac/src/compositor/mpeg4_bitmap.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - drawable_init_ex
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_bitmap(GF_Compositor  *compositor, GF_Node *node)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/compositor_3d.c:88,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_3d.c:88,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_3d.c:88,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/compositor_3d.c:89,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_3d.c:89,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_3d.c:89,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_3d.c:93,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_3d.c:94,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_3d.c:96,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_3d.c:97,1
    - Dst: compositor_set_ar_scale
      Src: /src/gpac/src/compositor/compositor_3d.c:99,1
    - Dst: GF_Compositor*::video_out::ProcessEvent
      Src: /src/gpac/src/compositor/compositor_3d.c:115,1
    - Dst: gf_sc_reset_graphics
      Src: /src/gpac/src/compositor/compositor_3d.c:116,1
    - Dst: gf_opengl_init
      Src: /src/gpac/src/compositor/compositor_3d.c:120,1
    - Dst: GF_Compositor*::video_out::LockBackBuffer
      Src: /src/gpac/src/compositor/compositor_3d.c:127,1
    - Dst: ostgl_create_context
      Src: /src/gpac/src/compositor/compositor_3d.c:148,1
    - Dst: ostgl_make_current
      Src: /src/gpac/src/compositor/compositor_3d.c:149,1
    - Dst: GF_Compositor*::video_out::LockBackBuffer
      Src: /src/gpac/src/compositor/compositor_3d.c:151,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 94
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 38
    functionDepth: 12
    functionLinenumber: 38
    functionLinenumberEnd: 157
    functionName: compositor_3d_set_aspect_ratio
    functionSourceFile: /src/gpac/src/compositor/compositor_3d.c
    functionUses: 1
    functionsReached:
    - gf_sc_reset_graphics
    - INT2FIX
    - gf_opengl_init
    - gf_divfix
    - GF_Compositor*::video_out::ProcessEvent
    - GF_Compositor*::video_out::LockBackBuffer
    - ostgl_make_current
    - ostgl_create_context
    - compositor_set_ar_scale
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err compositor_3d_set_aspect_ratio(GF_Compositor *compositor)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: compositor_layer3d_get_camera
      Src: /src/gpac/src/compositor/compositor_3d.c:164,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 160
    functionDepth: 3
    functionLinenumber: 160
    functionLinenumberEnd: 170
    functionName: compositor_3d_get_camera
    functionSourceFile: /src/gpac/src/compositor/compositor_3d.c
    functionUses: 3
    functionsReached:
    - compositor_layer3d_get_camera
    linkageType: ''
    returnType: GF_Camera
    signature: GF_Camera *compositor_3d_get_camera(GF_Compositor *compositor)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: compositor_3d_get_camera
      Src: /src/gpac/src/compositor/compositor_3d.c:174,1
    - Dst: camera_reset_viewpoint
      Src: /src/gpac/src/compositor/compositor_3d.c:176,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/compositor_3d.c:177,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/compositor_3d.c:179,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 172
    functionDepth: 5
    functionLinenumber: 172
    functionLinenumberEnd: 180
    functionName: compositor_3d_reset_camera
    functionSourceFile: /src/gpac/src/compositor/compositor_3d.c
    functionUses: 2
    functionsReached:
    - gf_node_dirty_set
    - gf_sc_invalidate
    - camera_reset_viewpoint
    - compositor_3d_get_camera
    linkageType: ''
    returnType: void
    signature: void compositor_3d_reset_camera(GF_Compositor *compositor)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_convert
      Src: /src/gpac/src/compositor/compositor_3d.c:196,1
    - Dst: visual_3d_point_sprite
      Src: /src/gpac/src/compositor/compositor_3d.c:197,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/compositor_3d.c:202,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/compositor_3d.c:204,1
    - Dst: visual_3d_set_state
      Src: /src/gpac/src/compositor/compositor_3d.c:206,1
    - Dst: visual_3d_enable_antialias
      Src: /src/gpac/src/compositor/compositor_3d.c:207,1
    - Dst: visual_3d_set_material_2d_argb
      Src: /src/gpac/src/compositor/compositor_3d.c:209,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/compositor/compositor_3d.c:209,1
    - Dst: gf_sc_texture_set_blend_mode
      Src: /src/gpac/src/compositor/compositor_3d.c:212,1
    - Dst: gf_sc_texture_is_transparent
      Src: /src/gpac/src/compositor/compositor_3d.c:213,1
    - Dst: gf_sc_texture_set_blend_mode
      Src: /src/gpac/src/compositor/compositor_3d.c:214,1
    - Dst: visual_3d_set_state
      Src: /src/gpac/src/compositor/compositor_3d.c:216,1
    - Dst: gf_sc_texture_enable
      Src: /src/gpac/src/compositor/compositor_3d.c:220,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/compositor_3d.c:229,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/compositor_3d.c:234,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/compositor_3d.c:235,1
    - Dst: mesh_new_planar_srd
      Src: /src/gpac/src/compositor/compositor_3d.c:240,1
    - Dst: mesh_new_rectangle_ex
      Src: /src/gpac/src/compositor/compositor_3d.c:243,1
    - Dst: mesh_new_rectangle
      Src: /src/gpac/src/compositor/compositor_3d.c:246,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_3d.c:255,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/compositor_3d.c:255,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/compositor_3d.c:258,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/compositor_3d.c:259,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/compositor_3d.c:263,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/compositor_3d.c:265,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/compositor_3d.c:265,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/compositor_3d.c:267,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/compositor_3d.c:268,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/compositor_3d.c:269,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/compositor_3d.c:270,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/compositor_3d.c:272,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/compositor_3d.c:276,1
    - Dst: gf_sc_texture_disable
      Src: /src/gpac/src/compositor/compositor_3d.c:278,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 73
    argCount: 7
    argNames:
    - stack
    - asp
    - tr_state
    - width
    - height
    - bmp_scale_x
    - bmp_scale_y
    argTypes:
    - Drawable*
    - DrawAspect2D*
    - GF_TraverseState*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 182
    functionDepth: 10
    functionLinenumber: 182
    functionLinenumberEnd: 281
    functionName: compositor_3d_draw_bitmap
    functionSourceFile: /src/gpac/src/compositor/compositor_3d.c
    functionUses: 2
    functionsReached:
    - mesh_new_rectangle
    - mesh_new_rectangle_ex
    - visual_3d_mesh_paint
    - gf_sc_texture_convert
    - gf_mx_copy
    - visual_3d_enable_antialias
    - GF_COL_A
    - visual_3d_set_state
    - mesh_new_planar_srd
    - gf_mx_init
    - new_mesh
    - gf_mx_add_matrix
    - visual_3d_set_material_2d_argb
    - gf_sc_texture_set_blend_mode
    - gf_mulfix
    - gf_sc_texture_enable
    - gf_sc_texture_disable
    - gf_sc_texture_is_transparent
    - gf_divfix
    - GF_COL_ARGB
    - INT2FIX
    - gf_filter_pid_get_property
    - visual_3d_point_sprite
    - gf_mx_add_translation
    linkageType: ''
    returnType: void
    signature: void compositor_3d_draw_bitmap(Drawable *stack, DrawAspect2D *asp,
      GF_TraverseState *tr_state, Fixed width, Fixed height, Fixed bmp_scale_x, Fixed
      bmp_scale_y)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:45,1
    - Dst: gf_sc_check_focus_upon_destroy
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:52,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:53,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:57,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:73,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:79,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:87,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:99,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:103,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:104,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:114,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:115,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 53
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 37
    functionDepth: 6
    functionLinenumber: 37
    functionLinenumberEnd: 117
    functionName: TraverseSwitch
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_2d.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_tag
    - gf_node_traverse
    - gf_node_list_get_child
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_node_list_get_count
    - gf_node_get_private
    - gf_sc_check_focus_upon_destroy
    linkageType: ''
    returnType: void
    signature: void TraverseSwitch(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:121,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:123,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 119
    functionDepth: 2
    functionLinenumber: 119
    functionLinenumberEnd: 125
    functionName: compositor_init_switch
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_2d.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - gf_node_set_private
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void compositor_init_switch(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:144,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:149,1
    - Dst: gf_mx_add_matrix_2d
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:151,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:152,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:153,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:158,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:159,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:161,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:163,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Transform2DStack*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 138
    functionDepth: 7
    functionLinenumber: 138
    functionLinenumberEnd: 164
    functionName: traverse_transform
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_2d.c
    functionUses: 0
    functionsReached:
    - gf_mx_copy
    - group_2d_traverse
    - gf_mx_add_matrix_2d
    - gf_mx2d_pre_multiply
    - gf_mx2d_copy
    linkageType: ''
    returnType: void
    signature: void traverse_transform(GF_Node *node, Transform2DStack *stack, GF_TraverseState
      *tr_state)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:176,1
    - Dst: gf_sc_check_focus_upon_destroy
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:180,1
    - Dst: group_2d_destroy
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:181,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:182,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:188,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:189,1
    - Dst: gf_mx2d_add_scale_at
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:192,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:196,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:201,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:203,1
    - Dst: TraverseUntransformEx
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:208,1
    - Dst: traverse_transform
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:210,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 173
    functionDepth: 8
    functionLinenumber: 173
    functionLinenumberEnd: 212
    functionName: TraverseTransform2D
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_2d.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx2d_add_translation
    - traverse_transform
    - gf_node_dirty_get
    - gf_mx2d_add_scale_at
    - gf_mx2d_init
    - gf_node_dirty_clear
    - TraverseUntransformEx
    - group_2d_destroy
    - gf_node_get_private
    - gf_mx2d_add_rotation
    - gf_sc_check_focus_upon_destroy
    linkageType: ''
    returnType: void
    signature: void TraverseTransform2D(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:216,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 213
    functionDepth: 2
    functionLinenumber: 213
    functionLinenumberEnd: 219
    functionName: transform2d_set_untransform
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_2d.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void transform2d_set_untransform(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:224,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:226,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:230,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:232,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:233,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 221
    functionDepth: 2
    functionLinenumber: 221
    functionLinenumberEnd: 234
    functionName: compositor_init_transform2d
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_2d.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    - gf_mx2d_init
    linkageType: ''
    returnType: void
    signature: void compositor_init_transform2d(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - n
    - mat
    argTypes:
    - GF_Node*
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 236
    functionDepth: 1
    functionLinenumber: 236
    functionLinenumberEnd: 246
    functionName: tr_mx2d_get_matrix
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_2d.c
    functionUses: 1
    functionsReached:
    - gf_mx2d_init
    linkageType: ''
    returnType: void
    signature: void tr_mx2d_get_matrix(GF_Node *n, GF_Matrix2D *mat)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:252,1
    - Dst: gf_sc_check_focus_upon_destroy
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:256,1
    - Dst: group_2d_destroy
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:257,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:258,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:262,1
    - Dst: tr_mx2d_get_matrix
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:264,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:272,1
    - Dst: traverse_transform
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:274,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 16
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 250
    functionDepth: 8
    functionLinenumber: 250
    functionLinenumberEnd: 275
    functionName: TraverseTransformMatrix2D
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_2d.c
    functionUses: 0
    functionsReached:
    - gf_free
    - tr_mx2d_get_matrix
    - traverse_transform
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - group_2d_destroy
    - gf_node_get_private
    - gf_sc_check_focus_upon_destroy
    linkageType: ''
    returnType: void
    signature: void TraverseTransformMatrix2D(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:281,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:284,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:285,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:286,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 278
    functionDepth: 2
    functionLinenumber: 278
    functionLinenumberEnd: 287
    functionName: compositor_init_transformmatrix2d
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_2d.c
    functionUses: 1
    functionsReached:
    - gf_node_set_private
    - gf_mx2d_init
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void compositor_init_transformmatrix2d(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:301,1
    - Dst: gf_sc_check_focus_upon_destroy
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:306,1
    - Dst: group_2d_destroy
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:307,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:308,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:312,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:318,1
    - Dst: gf_cmx_set
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:319,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:325,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:337,1
    - Dst: gf_cmx_copy
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:340,1
    - Dst: gf_cmx_multiply
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:341,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:344,1
    - Dst: gf_cmx_copy
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:346,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 297
    functionDepth: 7
    functionLinenumber: 297
    functionLinenumberEnd: 349
    functionName: TraverseColorTransform
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_2d.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_cmx_copy
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - group_2d_traverse
    - gf_cmx_multiply
    - gf_cmx_set
    - group_2d_destroy
    - gf_node_get_private
    - gf_sc_check_focus_upon_destroy
    linkageType: ''
    returnType: void
    signature: void TraverseColorTransform(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:354,1
    - Dst: gf_cmx_init
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:357,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:358,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:359,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 351
    functionDepth: 2
    functionLinenumber: 351
    functionLinenumberEnd: 360
    functionName: compositor_init_colortransform
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_2d.c
    functionUses: 1
    functionsReached:
    - gf_node_set_private
    - gf_cmx_init
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void compositor_init_colortransform(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - elem1
    - elem2
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 375
    functionDepth: 0
    functionLinenumber: 375
    functionLinenumberEnd: 383
    functionName: compare_priority
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_2d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 compare_priority(const void* elem1, const void* elem2)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:391,1
    - Dst: gf_sc_check_focus_upon_destroy
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:396,1
    - Dst: group_2d_destroy
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:397,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:398,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:399,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:404,1
    - Dst: group_2d_traverse
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:405,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:411,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:412,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:413,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:414,1
    - Dst: qsort
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:419,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:421,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:423,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:426,1
    - Dst: group_2d_traverse_with_order
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:428,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 386
    functionDepth: 7
    functionLinenumber: 386
    functionLinenumberEnd: 430
    functionName: TraverseOrderedGroup
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_2d.c
    functionUses: 0
    functionsReached:
    - gf_free
    - qsort
    - group_2d_traverse_with_order
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - group_2d_traverse
    - gf_node_list_get_count
    - group_2d_destroy
    - gf_node_get_private
    - gf_malloc
    - gf_sc_check_focus_upon_destroy
    linkageType: ''
    returnType: void
    signature: void TraverseOrderedGroup(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:435,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:438,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_grouping_2d.c:439,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 432
    functionDepth: 2
    functionLinenumber: 432
    functionLinenumberEnd: 440
    functionName: compositor_init_orderedgroup
    functionSourceFile: /src/gpac/src/compositor/mpeg4_grouping_2d.c
    functionUses: 1
    functionsReached:
    - gf_node_set_private
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void compositor_init_orderedgroup(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:41,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:42,1
    - Dst: visual_3d_has_inactive_light
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:46,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:54,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:56,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:57,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:58,1
    - Dst: visual_3d_node_cull
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:59,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:66,1
    - Dst: visual_3d_add_spot_light
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:68,1
    - Dst: visual_3d_has_inactive_light
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:71,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 74
    functionName: TraverseSpotLight
    functionSourceFile: /src/gpac/src/compositor/mpeg4_lighting.c
    functionUses: 0
    functionsReached:
    - gf_free
    - visual_3d_has_inactive_light
    - gf_vec_add
    - visual_3d_add_spot_light
    - visual_3d_node_cull
    - gf_vec_diff
    - gf_bbox_refresh
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void TraverseSpotLight(GF_Node *n, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:78,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:80,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 76
    functionDepth: 2
    functionLinenumber: 76
    functionLinenumberEnd: 83
    functionName: compositor_init_spot_light
    functionSourceFile: /src/gpac/src/compositor/mpeg4_lighting.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - gf_node_set_private
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void compositor_init_spot_light(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:91,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:92,1
    - Dst: visual_3d_has_inactive_light
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:96,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:104,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:106,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:107,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:108,1
    - Dst: visual_3d_node_cull
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:109,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:115,1
    - Dst: visual_3d_add_point_light
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:117,1
    - Dst: visual_3d_has_inactive_light
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:120,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 85
    functionDepth: 2
    functionLinenumber: 85
    functionLinenumberEnd: 123
    functionName: TraversePointLight
    functionSourceFile: /src/gpac/src/compositor/mpeg4_lighting.c
    functionUses: 0
    functionsReached:
    - gf_free
    - visual_3d_has_inactive_light
    - gf_vec_add
    - visual_3d_add_point_light
    - visual_3d_node_cull
    - gf_vec_diff
    - gf_bbox_refresh
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void TraversePointLight(GF_Node *n, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:127,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:129,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 125
    functionDepth: 2
    functionLinenumber: 125
    functionLinenumberEnd: 132
    functionName: compositor_init_point_light
    functionSourceFile: /src/gpac/src/compositor/mpeg4_lighting.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - gf_node_set_private
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void compositor_init_point_light(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:137,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:142,1
    - Dst: visual_3d_has_inactive_light
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:146,1
    - Dst: visual_3d_add_directional_light
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:155,1
    - Dst: visual_3d_remove_last_light
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:157,1
    - Dst: visual_3d_has_inactive_light
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:159,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 135
    functionDepth: 2
    functionLinenumber: 135
    functionLinenumberEnd: 161
    functionName: TraverseDirectionalLight
    functionSourceFile: /src/gpac/src/compositor/mpeg4_lighting.c
    functionUses: 0
    functionsReached:
    - gf_free
    - visual_3d_has_inactive_light
    - visual_3d_add_directional_light
    - visual_3d_remove_last_light
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void TraverseDirectionalLight(GF_Node *n, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:165,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:167,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_lighting.c:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 163
    functionDepth: 2
    functionLinenumber: 163
    functionLinenumberEnd: 169
    functionName: compositor_init_directional_light
    functionSourceFile: /src/gpac/src/compositor/mpeg4_lighting.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - gf_node_set_private
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void compositor_init_directional_light(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_audio_open
      Src: /src/gpac/src/compositor/mpeg4_audio.c:34,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_audio.c:39,1
    - Dst: gf_mo_set_speed
      Src: /src/gpac/src/compositor/mpeg4_audio.c:41,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_audio.c:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - st
    - ac
    argTypes:
    - AudioClipStack*
    - M_AudioClip*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 32
    functionDepth: 5
    functionLinenumber: 32
    functionLinenumberEnd: 44
    functionName: audioclip_activate
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 0
    functionsReached:
    - gf_sc_invalidate
    - gf_node_event_out
    - gf_sc_audio_open
    - gf_mo_set_speed
    linkageType: ''
    returnType: void
    signature: void audioclip_activate(AudioClipStack *st, M_AudioClip *ac)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_audio_stop
      Src: /src/gpac/src/compositor/mpeg4_audio.c:48,1
    - Dst: gf_sc_audio_unregister
      Src: /src/gpac/src/compositor/mpeg4_audio.c:49,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_audio.c:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - st
    - ac
    argTypes:
    - AudioClipStack*
    - M_AudioClip*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 46
    functionDepth: 7
    functionLinenumber: 46
    functionLinenumberEnd: 54
    functionName: audioclip_deactivate
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 0
    functionsReached:
    - gf_sc_audio_stop
    - gf_node_event_out
    - gf_sc_audio_unregister
    linkageType: ''
    returnType: void
    signature: void audioclip_deactivate(AudioClipStack *st, M_AudioClip *ac)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_audio.c:60,1
    - Dst: gf_sc_audio_predestroy
      Src: /src/gpac/src/compositor/mpeg4_audio.c:63,1
    - Dst: gf_sc_unregister_time_node
      Src: /src/gpac/src/compositor/mpeg4_audio.c:65,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_audio.c:67,1
    - Dst: gf_mo_get_loop
      Src: /src/gpac/src/compositor/mpeg4_audio.c:74,1
    - Dst: gf_sc_audio_restart
      Src: /src/gpac/src/compositor/mpeg4_audio.c:75,1
    - Dst: gf_mo_should_deactivate
      Src: /src/gpac/src/compositor/mpeg4_audio.c:76,1
    - Dst: audioclip_deactivate
      Src: /src/gpac/src/compositor/mpeg4_audio.c:78,1
    - Dst: gf_sc_audio_register
      Src: /src/gpac/src/compositor/mpeg4_audio.c:82,1
    - Dst: gf_mo_get_duration
      Src: /src/gpac/src/compositor/mpeg4_audio.c:85,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_audio.c:86,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 56
    functionDepth: 8
    functionLinenumber: 56
    functionLinenumberEnd: 92
    functionName: audioclip_traverse
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sc_audio_predestroy
    - gf_sc_audio_restart
    - gf_mo_get_loop
    - gf_node_event_out
    - gf_sc_unregister_time_node
    - gf_sc_audio_register
    - gf_mo_should_deactivate
    - gf_mo_get_duration
    - audioclip_deactivate
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void audioclip_traverse(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_audio.c:98,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/mpeg4_audio.c:108,1
    - Dst: audioclip_deactivate
      Src: /src/gpac/src/compositor/mpeg4_audio.c:113,1
    - Dst: audioclip_activate
      Src: /src/gpac/src/compositor/mpeg4_audio.c:117,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 1
    argNames:
    - tn
    argTypes:
    - GF_TimeNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 94
    functionDepth: 8
    functionLinenumber: 94
    functionLinenumberEnd: 118
    functionName: audioclip_update_time
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 0
    functionsReached:
    - audioclip_deactivate
    - audioclip_activate
    - gf_node_get_private
    - gf_node_get_scene_time
    linkageType: ''
    returnType: void
    signature: void audioclip_update_time(GF_TimeNode *tn)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_audio.c:124,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_audio.c:126,1
    - Dst: gf_sc_audio_setup
      Src: /src/gpac/src/compositor/mpeg4_audio.c:129,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_audio.c:135,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_audio.c:136,1
    - Dst: gf_sc_register_time_node
      Src: /src/gpac/src/compositor/mpeg4_audio.c:137,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 121
    functionDepth: 2
    functionLinenumber: 121
    functionLinenumberEnd: 138
    functionName: compositor_init_audioclip
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 1
    functionsReached:
    - gf_sc_register_time_node
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_sc_audio_setup
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_audioclip(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_audio.c:144,1
    - Dst: gf_sc_audio_check_url
      Src: /src/gpac/src/compositor/mpeg4_audio.c:151,1
    - Dst: gf_sc_audio_stop
      Src: /src/gpac/src/compositor/mpeg4_audio.c:152,1
    - Dst: gf_sc_audio_open
      Src: /src/gpac/src/compositor/mpeg4_audio.c:153,1
    - Dst: gf_sc_audio_unregister
      Src: /src/gpac/src/compositor/mpeg4_audio.c:155,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_audio.c:156,1
    - Dst: audioclip_update_time
      Src: /src/gpac/src/compositor/mpeg4_audio.c:162,1
    - Dst: gf_sc_register_time_node
      Src: /src/gpac/src/compositor/mpeg4_audio.c:169,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 141
    functionDepth: 9
    functionLinenumber: 141
    functionLinenumberEnd: 172
    functionName: compositor_audioclip_modified
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 1
    functionsReached:
    - gf_sc_register_time_node
    - gf_sc_audio_open
    - gf_sc_audio_unregister
    - gf_sc_audio_check_url
    - audioclip_update_time
    - gf_sc_audio_stop
    - gf_sc_invalidate
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void compositor_audioclip_modified(GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_audio_open
      Src: /src/gpac/src/compositor/mpeg4_audio.c:177,1
    - Dst: gf_mo_set_speed
      Src: /src/gpac/src/compositor/mpeg4_audio.c:180,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_audio.c:182,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - st
    - as
    argTypes:
    - AudioSourceStack*
    - M_AudioSource*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 175
    functionDepth: 5
    functionLinenumber: 175
    functionLinenumberEnd: 183
    functionName: audiosource_activate
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 0
    functionsReached:
    - gf_sc_invalidate
    - gf_sc_audio_open
    - gf_mo_set_speed
    linkageType: ''
    returnType: void
    signature: void audiosource_activate(AudioSourceStack *st, M_AudioSource *as)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_audio_stop
      Src: /src/gpac/src/compositor/mpeg4_audio.c:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - st
    - as
    argTypes:
    - AudioSourceStack*
    - M_AudioSource*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 185
    functionDepth: 7
    functionLinenumber: 185
    functionLinenumberEnd: 190
    functionName: audiosource_deactivate
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 0
    functionsReached:
    - gf_sc_audio_stop
    linkageType: ''
    returnType: void
    signature: void audiosource_deactivate(AudioSourceStack *st, M_AudioSource *as)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_audio.c:196,1
    - Dst: gf_sc_audio_predestroy
      Src: /src/gpac/src/compositor/mpeg4_audio.c:200,1
    - Dst: gf_sc_unregister_time_node
      Src: /src/gpac/src/compositor/mpeg4_audio.c:202,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_audio.c:204,1
    - Dst: gf_mo_get_loop
      Src: /src/gpac/src/compositor/mpeg4_audio.c:211,1
    - Dst: gf_sc_audio_restart
      Src: /src/gpac/src/compositor/mpeg4_audio.c:212,1
    - Dst: gf_mo_should_deactivate
      Src: /src/gpac/src/compositor/mpeg4_audio.c:213,1
    - Dst: audiosource_deactivate
      Src: /src/gpac/src/compositor/mpeg4_audio.c:215,1
    - Dst: gf_sc_audio_register
      Src: /src/gpac/src/compositor/mpeg4_audio.c:219,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 192
    functionDepth: 8
    functionLinenumber: 192
    functionLinenumberEnd: 224
    functionName: audiosource_traverse
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sc_audio_predestroy
    - gf_sc_audio_restart
    - gf_mo_get_loop
    - gf_sc_unregister_time_node
    - gf_sc_audio_register
    - gf_mo_should_deactivate
    - gf_node_get_private
    - audiosource_deactivate
    linkageType: ''
    returnType: void
    signature: void audiosource_traverse(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_audio.c:230,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/mpeg4_audio.c:236,1
    - Dst: AudioSourceStack*::input::input_ifce::GetSpeed
      Src: /src/gpac/src/compositor/mpeg4_audio.c:239,1
    - Dst: audiosource_deactivate
      Src: /src/gpac/src/compositor/mpeg4_audio.c:241,1
    - Dst: audiosource_activate
      Src: /src/gpac/src/compositor/mpeg4_audio.c:245,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 1
    argNames:
    - tn
    argTypes:
    - GF_TimeNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 226
    functionDepth: 8
    functionLinenumber: 226
    functionLinenumberEnd: 246
    functionName: audiosource_update_time
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 0
    functionsReached:
    - AudioSourceStack*::input::input_ifce::GetSpeed
    - audiosource_deactivate
    - gf_node_get_scene_time
    - gf_node_get_private
    - audiosource_activate
    linkageType: ''
    returnType: void
    signature: void audiosource_update_time(GF_TimeNode *tn)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_audio.c:252,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_audio.c:254,1
    - Dst: gf_sc_audio_setup
      Src: /src/gpac/src/compositor/mpeg4_audio.c:257,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_audio.c:262,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_audio.c:263,1
    - Dst: gf_sc_register_time_node
      Src: /src/gpac/src/compositor/mpeg4_audio.c:264,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 249
    functionDepth: 2
    functionLinenumber: 249
    functionLinenumberEnd: 265
    functionName: compositor_init_audiosource
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 1
    functionsReached:
    - gf_sc_register_time_node
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_sc_audio_setup
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_audiosource(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_audio.c:271,1
    - Dst: gf_sc_audio_check_url
      Src: /src/gpac/src/compositor/mpeg4_audio.c:275,1
    - Dst: gf_sc_audio_stop
      Src: /src/gpac/src/compositor/mpeg4_audio.c:276,1
    - Dst: gf_sc_audio_unregister
      Src: /src/gpac/src/compositor/mpeg4_audio.c:278,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_audio.c:279,1
    - Dst: gf_sc_audio_open
      Src: /src/gpac/src/compositor/mpeg4_audio.c:281,1
    - Dst: audiosource_update_time
      Src: /src/gpac/src/compositor/mpeg4_audio.c:286,1
    - Dst: gf_sc_register_time_node
      Src: /src/gpac/src/compositor/mpeg4_audio.c:292,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 268
    functionDepth: 9
    functionLinenumber: 268
    functionLinenumberEnd: 295
    functionName: compositor_audiosource_modified
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 1
    functionsReached:
    - audiosource_update_time
    - gf_sc_register_time_node
    - gf_sc_audio_open
    - gf_sc_audio_unregister
    - gf_sc_audio_check_url
    - gf_sc_audio_stop
    - gf_sc_invalidate
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void compositor_audiosource_modified(GF_Node *node)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_audio.c:330,1
    - Dst: gf_sc_audio_unregister
      Src: /src/gpac/src/compositor/mpeg4_audio.c:335,1
    - Dst: gf_sc_unregister_time_node
      Src: /src/gpac/src/compositor/mpeg4_audio.c:337,1
    - Dst: gf_mixer_del
      Src: /src/gpac/src/compositor/mpeg4_audio.c:339,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_audio.c:340,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_audio.c:341,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_audio.c:342,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_audio.c:349,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/mpeg4_audio.c:353,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_audio.c:356,1
    - Dst: gf_mixer_get_src_count
      Src: /src/gpac/src/compositor/mpeg4_audio.c:358,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_audio.c:358,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_audio.c:359,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_audio.c:362,1
    - Dst: gf_mixer_is_src_present
      Src: /src/gpac/src/compositor/mpeg4_audio.c:363,1
    - Dst: gf_mixer_remove_all
      Src: /src/gpac/src/compositor/mpeg4_audio.c:371,1
    - Dst: gf_mixer_force_channel_out
      Src: /src/gpac/src/compositor/mpeg4_audio.c:372,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_audio.c:375,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_audio.c:376,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/mpeg4_audio.c:377,1
    - Dst: gf_mixer_add_input
      Src: /src/gpac/src/compositor/mpeg4_audio.c:378,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/mpeg4_audio.c:381,1
    - Dst: gf_sc_audio_register
      Src: /src/gpac/src/compositor/mpeg4_audio.c:386,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 44
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 324
    functionDepth: 6
    functionLinenumber: 324
    functionLinenumberEnd: 390
    functionName: audiobuffer_traverse
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_node_traverse
    - gf_sc_unregister_time_node
    - gf_sc_audio_register
    - gf_mixer_remove_all
    - gf_sc_audio_unregister
    - gf_list_count
    - gf_mixer_is_src_present
    - gf_mixer_get_src_count
    - gf_mixer_lock
    - gf_list_rem
    - gf_mixer_del
    - gf_mixer_force_channel_out
    - gf_node_get_private
    - gf_mixer_add_input
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void audiobuffer_traverse(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_audio.c:397,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_audio.c:399,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - st
    - ab
    argTypes:
    - AudioBufferStack*
    - M_AudioBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 394
    functionDepth: 5
    functionLinenumber: 394
    functionLinenumberEnd: 402
    functionName: audiobuffer_activate
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    - gf_sc_invalidate
    linkageType: ''
    returnType: void
    signature: void audiobuffer_activate(AudioBufferStack *st, M_AudioBuffer *ab)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_audio.c:407,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - st
    - ab
    argTypes:
    - AudioBufferStack*
    - M_AudioBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 404
    functionDepth: 5
    functionLinenumber: 404
    functionLinenumberEnd: 409
    functionName: audiobuffer_deactivate
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    linkageType: ''
    returnType: void
    signature: void audiobuffer_deactivate(AudioBufferStack *st, M_AudioBuffer *ab)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_audio.c:415,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/mpeg4_audio.c:420,1
    - Dst: audiobuffer_deactivate
      Src: /src/gpac/src/compositor/mpeg4_audio.c:425,1
    - Dst: audiobuffer_deactivate
      Src: /src/gpac/src/compositor/mpeg4_audio.c:430,1
    - Dst: audiobuffer_activate
      Src: /src/gpac/src/compositor/mpeg4_audio.c:434,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 1
    argNames:
    - tn
    argTypes:
    - GF_TimeNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 435
      start: 411
    functionDepth: 6
    functionLinenumber: 411
    functionLinenumberEnd: 435
    functionName: audiobuffer_update_time
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 0
    functionsReached:
    - audiobuffer_activate
    - gf_node_get_private
    - audiobuffer_deactivate
    - gf_node_get_scene_time
    linkageType: ''
    returnType: void
    signature: void audiobuffer_update_time(GF_TimeNode *tn)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_audio.c:443,1
    - Dst: ceil
      Src: /src/gpac/src/compositor/mpeg4_audio.c:449,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_audio.c:449,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/compositor/mpeg4_audio.c:449,1
    - Dst: gf_mixer_get_block_align
      Src: /src/gpac/src/compositor/mpeg4_audio.c:450,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_audio.c:453,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_audio.c:454,1
    - Dst: gf_mixer_get_output
      Src: /src/gpac/src/compositor/mpeg4_audio.c:464,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/compositor/mpeg4_audio.c:467,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 4
    argNames:
    - callback
    - size
    - planar_stride
    - audio_delay_ms
    argTypes:
    - void*
    - u32*
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 440
    functionDepth: 4
    functionLinenumber: 440
    functionLinenumberEnd: 474
    functionName: audiobuffer_fetch_frame
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 0
    functionsReached:
    - gf_mixer_get_output
    - FIX2FLT
    - gf_mixer_get_block_align
    - memset
    - gf_fatal_assert
    - gf_node_get_private
    - gf_malloc
    - gf_audio_fmt_bit_depth
    - ceil
    linkageType: ''
    returnType: u8
    signature: u8 *audiobuffer_fetch_frame(void *callback, u32 *size, u32 *planar_stride,
      u32 audio_delay_ms)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_audio.c:478,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/compositor/mpeg4_audio.c:480,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_audio.c:486,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - callback
    - nb_bytes
    argTypes:
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 476
    functionDepth: 2
    functionLinenumber: 476
    functionLinenumberEnd: 494
    functionName: audiobuffer_release_frame
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_node_get_private
    - gf_fatal_assert
    linkageType: ''
    returnType: void
    signature: void audiobuffer_release_frame(void *callback, u32 nb_bytes)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - callback
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 501
      start: 497
    functionDepth: 0
    functionLinenumber: 497
    functionLinenumberEnd: 501
    functionName: audiobuffer_get_speed
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Fixed
    signature: Fixed audiobuffer_get_speed(void *callback)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_AudioInput*::snd::GetChannelVolume
      Src: /src/gpac/src/compositor/mpeg4_audio.c:507,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - callback
    - vol
    argTypes:
    - void*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 503
    functionDepth: 0
    functionLinenumber: 503
    functionLinenumberEnd: 513
    functionName: audiobuffer_get_volume
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 0
    functionsReached:
    - GF_AudioInput*::snd::GetChannelVolume
    linkageType: ''
    returnType: Bool
    signature: Bool audiobuffer_get_volume(void *callback, Fixed *vol)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_audio.c:517,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - callback
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 519
      start: 515
    functionDepth: 2
    functionLinenumber: 515
    functionLinenumberEnd: 519
    functionName: audiobuffer_is_muted
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: Bool
    signature: Bool audiobuffer_is_muted(void *callback)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_audio.c:523,1
    - Dst: gf_mixer_must_reconfig
      Src: /src/gpac/src/compositor/mpeg4_audio.c:525,1
    - Dst: gf_mixer_reconfig
      Src: /src/gpac/src/compositor/mpeg4_audio.c:527,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_audio.c:528,1
    - Dst: gf_mixer_get_config
      Src: /src/gpac/src/compositor/mpeg4_audio.c:533,1
    - Dst: gf_mixer_set_config
      Src: /src/gpac/src/compositor/mpeg4_audio.c:562,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/mpeg4_audio.c:565,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 47
    argCount: 2
    argNames:
    - aifc
    - for_reconf
    argTypes:
    - GF_AudioInterface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 574
      start: 521
    functionDepth: 3
    functionLinenumber: 521
    functionLinenumberEnd: 574
    functionName: audiobuffer_get_config
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mixer_get_config
    - gf_mixer_reconfig
    - gf_assert
    - gf_mixer_set_config
    - gf_node_get_private
    - gf_mixer_must_reconfig
    linkageType: ''
    returnType: Bool
    signature: Bool audiobuffer_get_config(GF_AudioInterface *aifc, Bool for_reconf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_audio.c:581,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - _this
    - src
    argTypes:
    - GF_AudioGroup*
    - GF_AudioInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 576
    functionDepth: 1
    functionLinenumber: 576
    functionLinenumberEnd: 582
    functionName: audiobuffer_add_source
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void audiobuffer_add_source(GF_AudioGroup *_this, GF_AudioInput *src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_audio.c:587,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 3
    argNames:
    - ai
    - compositor
    - node
    argTypes:
    - GF_AudioInput*
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 585
    functionDepth: 0
    functionLinenumber: 585
    functionLinenumberEnd: 601
    functionName: setup_audiobuffer
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: void setup_audiobuffer(GF_AudioInput *ai, GF_Compositor *compositor,
      GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_audio.c:606,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_audio.c:608,1
    - Dst: setup_audiobuffer
      Src: /src/gpac/src/compositor/mpeg4_audio.c:613,1
    - Dst: gf_mixer_new
      Src: /src/gpac/src/compositor/mpeg4_audio.c:620,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_audio.c:621,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_audio.c:623,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_audio.c:624,1
    - Dst: gf_sc_register_time_node
      Src: /src/gpac/src/compositor/mpeg4_audio.c:625,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 603
    functionDepth: 2
    functionLinenumber: 603
    functionLinenumberEnd: 626
    functionName: compositor_init_audiobuffer
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - gf_sc_register_time_node
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - setup_audiobuffer
    - gf_node_set_callback_function
    - gf_mixer_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_audiobuffer(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_audio.c:632,1
    - Dst: audiobuffer_update_time
      Src: /src/gpac/src/compositor/mpeg4_audio.c:637,1
    - Dst: gf_sc_register_time_node
      Src: /src/gpac/src/compositor/mpeg4_audio.c:641,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 644
      start: 629
    functionDepth: 7
    functionLinenumber: 629
    functionLinenumberEnd: 644
    functionName: compositor_audiobuffer_modified
    functionSourceFile: /src/gpac/src/compositor/mpeg4_audio.c
    functionUses: 1
    functionsReached:
    - audiobuffer_update_time
    - gf_sc_register_time_node
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void compositor_audiobuffer_modified(GF_Node *node)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_get_mediacontrol
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:47,1
    - Dst: gf_inline_restart
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:59,1
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:66,1
    - Dst: gf_odm_shares_clock
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:67,1
    - Dst: gf_scene_restart_dynamic
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:69,1
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:74,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:83,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:87,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:90,1
    - Dst: gf_odm_shares_clock
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:91,1
    - Dst: gf_odm_stop
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:94,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:95,1
    - Dst: gf_clock_reset
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:99,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:106,1
    - Dst: gf_odm_start
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:108,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:110,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 49
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 33
    functionDepth: 6
    functionLinenumber: 33
    functionLinenumberEnd: 111
    functionName: mediacontrol_restart
    functionSourceFile: /src/gpac/src/compositor/mpeg4_mediacontrol.c
    functionUses: 2
    functionsReached:
    - gf_list_new
    - gf_odm_get_media_clock
    - gf_list_del
    - gf_clock_reset
    - gf_odm_shares_clock
    - gf_list_count
    - gf_list_add
    - gf_inline_restart
    - gf_scene_restart_dynamic
    - gf_list_enum
    - gf_odm_stop
    - gf_odm_start
    - gf_odm_get_mediacontrol
    linkageType: ''
    returnType: void
    signature: void mediacontrol_restart(GF_ObjectManager *odm)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_get_od_id
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:117,1
    - Dst: gf_mo_get_od_id
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:117,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:119,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:126,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 16
    argCount: 2
    argNames:
    - old_url
    - new_url
    argTypes:
    - MFURL*
    - MFURL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 130
    functionName: MC_URLChanged
    functionSourceFile: /src/gpac/src/compositor/mpeg4_mediacontrol.c
    functionUses: 0
    functionsReached:
    - gf_mo_get_od_id
    - strcmp
    - strlen
    linkageType: ''
    returnType: Bool
    signature: Bool MC_URLChanged(MFURL *old_url, MFURL *new_url)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:146,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:151,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:152,1
    - Dst: gf_odm_shares_clock
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:152,1
    - Dst: gf_odm_resume
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:154,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:159,1
    - Dst: gf_odm_shares_clock
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:160,1
    - Dst: gf_clock_resume
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:166,1
    - Dst: gf_scene_select_main_addon
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:168,1
    - Dst: mediacontrol_resume
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:172,1
    - Dst: gf_odm_resume
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:174,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 30
    argCount: 2
    argNames:
    - odm
    - resume_to_live
    argTypes:
    - GF_ObjectManager*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 136
    functionDepth: 6
    functionLinenumber: 136
    functionLinenumberEnd: 177
    functionName: mediacontrol_resume
    functionSourceFile: /src/gpac/src/compositor/mpeg4_mediacontrol.c
    functionUses: 5
    functionsReached:
    - gf_assert
    - gf_scene_select_main_addon
    - gf_odm_resume
    - mediacontrol_resume
    - gf_clock_resume
    - gf_odm_shares_clock
    - gf_odm_get_media_clock
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void mediacontrol_resume(GF_ObjectManager *odm, Bool resume_to_live)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:191,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:199,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:200,1
    - Dst: gf_odm_shares_clock
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:200,1
    - Dst: gf_odm_pause
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:202,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:207,1
    - Dst: gf_odm_shares_clock
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:208,1
    - Dst: gf_clock_pause
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:214,1
    - Dst: gf_scene_select_main_addon
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:215,1
    - Dst: gf_clock_time_absolute
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:215,1
    - Dst: mediacontrol_pause
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:219,1
    - Dst: gf_odm_pause
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:221,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 31
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 181
    functionDepth: 6
    functionLinenumber: 181
    functionLinenumberEnd: 224
    functionName: mediacontrol_pause
    functionSourceFile: /src/gpac/src/compositor/mpeg4_mediacontrol.c
    functionUses: 4
    functionsReached:
    - gf_assert
    - gf_clock_time_absolute
    - gf_scene_select_main_addon
    - gf_odm_shares_clock
    - gf_clock_pause
    - gf_odm_get_media_clock
    - gf_odm_pause
    - gf_list_enum
    - mediacontrol_pause
    linkageType: ''
    returnType: void
    signature: void mediacontrol_pause(GF_ObjectManager *odm)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:238,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:243,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:247,1
    - Dst: gf_clock_time_absolute
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:248,1
    - Dst: gf_clock_set_speed
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:249,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:254,1
    - Dst: gf_scene_select_main_addon
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:256,1
    - Dst: gf_scene_restart_dynamic
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:261,1
    - Dst: gf_clock_set_speed
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:264,1
    - Dst: gf_odm_set_speed
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:265,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:269,1
    - Dst: gf_odm_shares_clock
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:270,1
    - Dst: mediacontrol_set_speed
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:273,1
    - Dst: gf_odm_set_speed
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:275,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 37
    argCount: 2
    argNames:
    - odm
    - speed
    argTypes:
    - GF_ObjectManager*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 228
    functionDepth: 4
    functionLinenumber: 228
    functionLinenumberEnd: 278
    functionName: mediacontrol_set_speed
    functionSourceFile: /src/gpac/src/compositor/mpeg4_mediacontrol.c
    functionUses: 1
    functionsReached:
    - gf_assert
    - gf_clock_time_absolute
    - gf_scene_select_main_addon
    - gf_odm_set_speed
    - mediacontrol_set_speed
    - gf_odm_shares_clock
    - gf_odm_get_media_clock
    - gf_scene_restart_dynamic
    - gf_list_enum
    - gf_mulfix
    - gf_clock_set_speed
    linkageType: ''
    returnType: void
    signature: void mediacontrol_set_speed(GF_ObjectManager *odm, Fixed speed)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:287,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:289,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:300,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 3
    argNames:
    - ctrl
    - start_range
    - end_range
    argTypes:
    - MediaControlStack*
    - Double*
    - Double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 282
    functionDepth: 1
    functionLinenumber: 282
    functionLinenumberEnd: 323
    functionName: MC_GetRange
    functionSourceFile: /src/gpac/src/compositor/mpeg4_mediacontrol.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void MC_GetRange(MediaControlStack *ctrl, Double *start_range, Double
      *end_range)
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:331,1
    - Dst: gf_odm_remove_mediacontrol
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:338,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:343,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:344,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:345,1
    - Dst: MC_URLChanged
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:359,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:361,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:364,1
    - Dst: gf_scene_get_media_object
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:367,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:374,1
    - Dst: gf_odm_remove_mediacontrol
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:377,1
    - Dst: gf_odm_set_mediacontrol
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:380,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:382,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:382,1
    - Dst: gf_odm_init_segments
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:383,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:387,1
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:395,1
    - Dst: mediacontrol_resume
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:400,1
    - Dst: gf_odm_remove_mediacontrol
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:407,1
    - Dst: gf_scene_get_media_object
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:412,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:414,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:420,1
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:425,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:431,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:435,1
    - Dst: gf_odm_set_mediacontrol
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:436,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:438,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:438,1
    - Dst: gf_odm_init_segments
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:439,1
    - Dst: gf_odm_switch_mediacontrol
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:453,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:479,1
    - Dst: mediacontrol_restart
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:480,1
    - Dst: mediacontrol_pause
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:482,1
    - Dst: mediacontrol_pause
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:492,1
    - Dst: mediacontrol_resume
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:497,1
    - Dst: mediacontrol_set_speed
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:504,1
    - Dst: mediacontrol_restart
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:525,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 161
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 326
    functionDepth: 7
    functionLinenumber: 326
    functionLinenumberEnd: 530
    functionName: RenderMediaControl
    functionSourceFile: /src/gpac/src/compositor/mpeg4_mediacontrol.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_find
    - MC_URLChanged
    - gf_list_count
    - gf_sg_vrml_field_copy
    - gf_odm_get_media_clock
    - gf_scene_get_media_object
    - mediacontrol_set_speed
    - gf_sc_invalidate
    - gf_sg_vrml_mf_reset
    - gf_node_get_private
    - mediacontrol_pause
    - mediacontrol_resume
    - gf_list_del
    - mediacontrol_restart
    - gf_odm_set_mediacontrol
    - gf_odm_init_segments
    - gf_odm_remove_mediacontrol
    - gf_odm_switch_mediacontrol
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void RenderMediaControl(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:535,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:537,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:543,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:546,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:547,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - scene
    - node
    argTypes:
    - GF_Scene*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 532
    functionDepth: 2
    functionLinenumber: 532
    functionLinenumberEnd: 548
    functionName: InitMediaControl
    functionSourceFile: /src/gpac/src/compositor/mpeg4_mediacontrol.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void InitMediaControl(GF_Scene *scene, GF_Node *node)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:553,1
    - Dst: MC_URLChanged
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:557,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:575,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:575,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:575,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:577,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 578
      start: 551
    functionDepth: 5
    functionLinenumber: 551
    functionLinenumberEnd: 578
    functionName: MC_Modified
    functionSourceFile: /src/gpac/src/compositor/mpeg4_mediacontrol.c
    functionUses: 0
    functionsReached:
    - gf_node_dirty_set
    - MC_URLChanged
    - gf_node_get_graph
    - gf_sc_invalidate
    - gf_sg_get_root_node
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void MC_Modified(GF_Node *node)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:584,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:584,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:592,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:602,1
    - Dst: gf_odm_get_mediacontrol
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:609,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 23
    argCount: 2
    argNames:
    - odm
    - ctrl
    argTypes:
    - GF_ObjectManager*
    - MediaControlStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 610
      start: 581
    functionDepth: 5
    functionLinenumber: 581
    functionLinenumberEnd: 610
    functionName: gf_odm_set_mediacontrol
    functionSourceFile: /src/gpac/src/compositor/mpeg4_mediacontrol.c
    functionUses: 1
    functionsReached:
    - gf_list_find
    - gf_list_add
    - gf_node_event_out
    - gf_odm_get_mediacontrol
    linkageType: ''
    returnType: void
    signature: void gf_odm_set_mediacontrol(GF_ObjectManager *odm, MediaControlStack
      *ctrl)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:617,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 620
      start: 614
    functionDepth: 1
    functionLinenumber: 614
    functionLinenumberEnd: 620
    functionName: gf_odm_get_mediacontrol
    functionSourceFile: /src/gpac/src/compositor/mpeg4_mediacontrol.c
    functionUses: 10
    functionsReached:
    - gf_odm_get_media_clock
    linkageType: ''
    returnType: MediaControlStack
    signature: MediaControlStack *gf_odm_get_mediacontrol(GF_ObjectManager *odm)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:625,1
    - Dst: mediacontrol_resume
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:630,1
    - Dst: gf_odm_set_mediacontrol
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:631,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - odm
    - ctrl
    argTypes:
    - GF_ObjectManager*
    - MediaControlStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 633
      start: 623
    functionDepth: 7
    functionLinenumber: 623
    functionLinenumberEnd: 633
    functionName: gf_odm_remove_mediacontrol
    functionSourceFile: /src/gpac/src/compositor/mpeg4_mediacontrol.c
    functionUses: 2
    functionsReached:
    - gf_odm_set_mediacontrol
    - mediacontrol_resume
    - gf_list_del_item
    linkageType: ''
    returnType: void
    signature: void gf_odm_remove_mediacontrol(GF_ObjectManager *odm, MediaControlStack
      *ctrl)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:643,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:647,1
    - Dst: gf_odm_set_mediacontrol
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:652,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - odm
    - ctrl
    argTypes:
    - GF_ObjectManager*
    - MediaControlStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 654
      start: 635
    functionDepth: 6
    functionLinenumber: 635
    functionLinenumberEnd: 654
    functionName: gf_odm_switch_mediacontrol
    functionSourceFile: /src/gpac/src/compositor/mpeg4_mediacontrol.c
    functionUses: 1
    functionsReached:
    - gf_odm_set_mediacontrol
    - gf_list_enum
    - gf_node_event_out
    linkageType: ''
    returnType: Bool
    signature: Bool gf_odm_switch_mediacontrol(GF_ObjectManager *odm, MediaControlStack
      *ctrl)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_get_mediacontrol
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:660,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:665,1
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:671,1
    - Dst: gf_clock_time_absolute
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:672,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:674,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:685,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:690,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:706,1
    - Dst: mediacontrol_restart
      Src: /src/gpac/src/compositor/mpeg4_mediacontrol.c:710,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 31
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 713
      start: 656
    functionDepth: 7
    functionLinenumber: 656
    functionLinenumberEnd: 713
    functionName: gf_odm_check_segment_switch
    functionSourceFile: /src/gpac/src/compositor/mpeg4_mediacontrol.c
    functionUses: 2
    functionsReached:
    - gf_list_get
    - gf_clock_time_absolute
    - mediacontrol_restart
    - gf_list_count
    - gf_odm_get_media_clock
    - gf_odm_get_mediacontrol
    linkageType: ''
    returnType: Bool
    signature: Bool gf_odm_check_segment_switch(GF_ObjectManager *odm)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:38,1
    - Dst: drawable_3d_del
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:41,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:44,1
    - Dst: mesh_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:45,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:46,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:46,1
    - Dst: build_shape
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:47,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:48,1
    - Dst: visual_3d_draw
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:52,1
    - Dst: drawable3d_check_focus_highlight
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:53,1
    - Dst: visual_3d_vrml_drawable_pick
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:59,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 35
    functionDepth: 4
    functionLinenumber: 35
    functionLinenumberEnd: 68
    functionName: drawable_3d_base_traverse
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 8
    functionsReached:
    - visual_3d_draw
    - gf_node_get_class_name
    - build_shape
    - GF_LOG
    - gf_node_dirty_get
    - visual_3d_vrml_drawable_pick
    - drawable3d_check_focus_highlight
    - drawable_3d_del
    - gf_node_dirty_clear
    - mesh_reset
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void drawable_3d_base_traverse(GF_Node *n, void *rs, Bool is_destroy,
      void (*build_shape)(GF_Node*,Drawable3D *,GF_TraverseState *) )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesh_new_box
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - n
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable3D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 6
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: build_shape_box
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - mesh_new_box
    linkageType: ''
    returnType: void
    signature: void build_shape_box(GF_Node *n, Drawable3D *stack, GF_TraverseState
      *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_base_traverse
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 75
    functionDepth: 5
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionName: TraverseBox
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - drawable_3d_base_traverse
    linkageType: ''
    returnType: void
    signature: void TraverseBox(GF_Node *n, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:82,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionName: compositor_init_box
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_3d_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_box(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesh_new_cone
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - n
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable3D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 86
    functionDepth: 6
    functionLinenumber: 86
    functionLinenumberEnd: 90
    functionName: build_shape_cone
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - mesh_new_cone
    linkageType: ''
    returnType: void
    signature: void build_shape_cone(GF_Node *n, Drawable3D *stack, GF_TraverseState
      *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_base_traverse
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 92
    functionDepth: 5
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionName: TraverseCone
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - drawable_3d_base_traverse
    linkageType: ''
    returnType: void
    signature: void TraverseCone(GF_Node *n, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:99,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 97
    functionDepth: 2
    functionLinenumber: 97
    functionLinenumberEnd: 101
    functionName: compositor_init_cone
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_3d_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_cone(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesh_new_cylinder
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - n
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable3D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 103
    functionDepth: 6
    functionLinenumber: 103
    functionLinenumberEnd: 107
    functionName: build_shape_cylinder
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - mesh_new_cylinder
    linkageType: ''
    returnType: void
    signature: void build_shape_cylinder(GF_Node *n, Drawable3D *stack, GF_TraverseState
      *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_base_traverse
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 109
    functionDepth: 5
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionName: TraverseCylinder
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - drawable_3d_base_traverse
    linkageType: ''
    returnType: void
    signature: void TraverseCylinder(GF_Node *n, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:116,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 114
    functionDepth: 2
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionName: compositor_init_cylinder
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_3d_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_cylinder(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesh_new_sphere
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - n
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable3D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 120
    functionDepth: 6
    functionLinenumber: 120
    functionLinenumberEnd: 124
    functionName: build_shape_sphere
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - mesh_new_sphere
    linkageType: ''
    returnType: void
    signature: void build_shape_sphere(GF_Node *n, Drawable3D *stack, GF_TraverseState
      *tr_state)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: camera_get_target_dir
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:136,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:140,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:141,1
    - Dst: gf_atan2
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:147,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 52
    argCount: 5
    argNames:
    - tr_state
    - txh
    - horizontal
    - min_coord
    - max_coord
    argTypes:
    - GF_TraverseState*
    - GF_TextureHandler*
    - Bool
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 126
    functionDepth: 2
    functionLinenumber: 126
    functionLinenumberEnd: 187
    functionName: get_tx_coords_from_angle
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 1
    functionsReached:
    - gf_vec_dot
    - camera_get_target_dir
    - gf_vec_norm
    - gf_atan2
    linkageType: ''
    returnType: void
    signature: void get_tx_coords_from_angle(GF_TraverseState *tr_state, GF_TextureHandler
      *txh, Bool horizontal, u32 *min_coord, u32 *max_coord)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_base_traverse
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:192,1
    - Dst: gf_sc_texture_get_handler
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:197,1
    - Dst: gf_mo_get_srd_info
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:201,1
    - Dst: get_tx_coords_from_angle
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:206,1
    - Dst: get_tx_coords_from_angle
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:207,1
    - Dst: gf_mo_hint_visible_rect
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:209,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:210,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 189
    functionDepth: 5
    functionLinenumber: 189
    functionLinenumberEnd: 212
    functionName: TraverseSphere
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - get_tx_coords_from_angle
    - drawable_3d_base_traverse
    - GF_LOG
    - gf_mo_hint_visible_rect
    - gf_sc_texture_get_handler
    - gf_mo_get_srd_info
    linkageType: ''
    returnType: void
    signature: void TraverseSphere(GF_Node *n, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:216,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 214
    functionDepth: 2
    functionLinenumber: 214
    functionLinenumberEnd: 218
    functionName: compositor_init_sphere
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_3d_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_sphere(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesh_new_ps
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - n
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable3D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 220
    functionDepth: 4
    functionLinenumber: 220
    functionLinenumberEnd: 224
    functionName: build_shape_point_set
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - mesh_new_ps
    linkageType: ''
    returnType: void
    signature: void build_shape_point_set(GF_Node *n, Drawable3D *stack, GF_TraverseState
      *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_base_traverse
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 225
    functionDepth: 5
    functionLinenumber: 225
    functionLinenumberEnd: 228
    functionName: TraversePointSet
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - drawable_3d_base_traverse
    linkageType: ''
    returnType: void
    signature: void TraversePointSet(GF_Node *n, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:232,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 230
    functionDepth: 2
    functionLinenumber: 230
    functionLinenumberEnd: 234
    functionName: compositor_init_point_set
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_3d_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_point_set(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesh_new_ifs
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - n
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable3D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 236
    functionDepth: 7
    functionLinenumber: 236
    functionLinenumberEnd: 239
    functionName: build_shape_ifs
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - mesh_new_ifs
    linkageType: ''
    returnType: void
    signature: void build_shape_ifs(GF_Node *n, Drawable3D *stack, GF_TraverseState
      *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_base_traverse
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 240
    functionDepth: 5
    functionLinenumber: 240
    functionLinenumberEnd: 243
    functionName: TraverseIFS
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - drawable_3d_base_traverse
    linkageType: ''
    returnType: void
    signature: void TraverseIFS(GF_Node *n, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:249,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:250,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 245
    functionDepth: 6
    functionLinenumber: 245
    functionLinenumberEnd: 252
    functionName: IFS_SetColorIndex
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_copy
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: void
    signature: void IFS_SetColorIndex(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:258,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:259,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 254
    functionDepth: 6
    functionLinenumber: 254
    functionLinenumberEnd: 261
    functionName: IFS_SetCoordIndex
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_copy
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: void
    signature: void IFS_SetCoordIndex(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:267,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:268,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 263
    functionDepth: 6
    functionLinenumber: 263
    functionLinenumberEnd: 270
    functionName: IFS_SetNormalIndex
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_copy
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: void
    signature: void IFS_SetNormalIndex(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:276,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 272
    functionDepth: 6
    functionLinenumber: 272
    functionLinenumberEnd: 279
    functionName: IFS_SetTexCoordIndex
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_copy
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: void
    signature: void IFS_SetTexCoordIndex(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:284,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:285,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:292,1
    - Dst: IFS_SetCoordIndex
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:293,1
    - Dst: IFS_SetColorIndex
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:294,1
    - Dst: IFS_SetNormalIndex
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:295,1
    - Dst: IFS_SetTexCoordIndex
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:296,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 281
    functionDepth: 7
    functionLinenumber: 281
    functionLinenumberEnd: 300
    functionName: compositor_init_ifs
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 1
    functionsReached:
    - IFS_SetColorIndex
    - drawable_3d_new
    - gf_node_set_callback_function
    - IFS_SetNormalIndex
    - IFS_SetTexCoordIndex
    - gf_sys_is_cov_mode
    - IFS_SetCoordIndex
    linkageType: ''
    returnType: void
    signature: void compositor_init_ifs(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesh_new_ils
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:305,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - n
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable3D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 302
    functionDepth: 4
    functionLinenumber: 302
    functionLinenumberEnd: 306
    functionName: build_shape_ils
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - mesh_new_ils
    linkageType: ''
    returnType: void
    signature: void build_shape_ils(GF_Node *n, Drawable3D *stack, GF_TraverseState
      *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_base_traverse
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:310,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 308
    functionDepth: 5
    functionLinenumber: 308
    functionLinenumberEnd: 311
    functionName: TraverseILS
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - drawable_3d_base_traverse
    linkageType: ''
    returnType: void
    signature: void TraverseILS(GF_Node *n, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:317,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:318,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 313
    functionDepth: 6
    functionLinenumber: 313
    functionLinenumberEnd: 320
    functionName: ILS_SetColorIndex
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_copy
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: void
    signature: void ILS_SetColorIndex(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:326,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:327,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 322
    functionDepth: 6
    functionLinenumber: 322
    functionLinenumberEnd: 329
    functionName: ILS_SetCoordIndex
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_copy
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: void
    signature: void ILS_SetCoordIndex(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:334,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:335,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:340,1
    - Dst: ILS_SetCoordIndex
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:341,1
    - Dst: ILS_SetColorIndex
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:342,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 331
    functionDepth: 7
    functionLinenumber: 331
    functionLinenumberEnd: 346
    functionName: compositor_init_ils
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 1
    functionsReached:
    - drawable_3d_new
    - ILS_SetCoordIndex
    - gf_node_set_callback_function
    - ILS_SetColorIndex
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: void
    signature: void compositor_init_ils(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesh_new_elevation_grid
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:351,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - n
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable3D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 349
    functionDepth: 6
    functionLinenumber: 349
    functionLinenumberEnd: 352
    functionName: build_shape_elevation_grid
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - mesh_new_elevation_grid
    linkageType: ''
    returnType: void
    signature: void build_shape_elevation_grid(GF_Node *n, Drawable3D *stack, GF_TraverseState
      *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_base_traverse
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:356,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 354
    functionDepth: 5
    functionLinenumber: 354
    functionLinenumberEnd: 357
    functionName: TraverseElevationGrid
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - drawable_3d_base_traverse
    linkageType: ''
    returnType: void
    signature: void TraverseElevationGrid(GF_Node *n, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:363,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:364,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 359
    functionDepth: 6
    functionLinenumber: 359
    functionLinenumberEnd: 366
    functionName: ElevationGrid_SetHeight
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_copy
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: void
    signature: void ElevationGrid_SetHeight(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:371,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:372,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:375,1
    - Dst: ElevationGrid_SetHeight
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:376,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 368
    functionDepth: 7
    functionLinenumber: 368
    functionLinenumberEnd: 379
    functionName: compositor_init_elevation_grid
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 1
    functionsReached:
    - ElevationGrid_SetHeight
    - gf_node_set_callback_function
    - drawable_3d_new
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: void
    signature: void compositor_init_elevation_grid(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mesh_new_extrusion
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - n
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable3D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 381
    functionDepth: 7
    functionLinenumber: 381
    functionLinenumberEnd: 384
    functionName: build_shape_extrusion
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - mesh_new_extrusion
    linkageType: ''
    returnType: void
    signature: void build_shape_extrusion(GF_Node *n, Drawable3D *stack, GF_TraverseState
      *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_base_traverse
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:388,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 386
    functionDepth: 5
    functionLinenumber: 386
    functionLinenumberEnd: 389
    functionName: TraverseExtrusion
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - drawable_3d_base_traverse
    linkageType: ''
    returnType: void
    signature: void TraverseExtrusion(GF_Node *n, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:395,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:396,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 391
    functionDepth: 6
    functionLinenumber: 391
    functionLinenumberEnd: 398
    functionName: Extrusion_SetCrossSection
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_copy
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: void
    signature: void Extrusion_SetCrossSection(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:403,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:404,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 399
    functionDepth: 6
    functionLinenumber: 399
    functionLinenumberEnd: 406
    functionName: Extrusion_SetOrientation
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_copy
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: void
    signature: void Extrusion_SetOrientation(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:411,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:412,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 407
    functionDepth: 6
    functionLinenumber: 407
    functionLinenumberEnd: 414
    functionName: Extrusion_SetScale
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_copy
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: void
    signature: void Extrusion_SetScale(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:419,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:420,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 415
    functionDepth: 6
    functionLinenumber: 415
    functionLinenumberEnd: 422
    functionName: Extrusion_SetSpine
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_copy
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: void
    signature: void Extrusion_SetSpine(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:426,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:427,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:434,1
    - Dst: Extrusion_SetCrossSection
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:435,1
    - Dst: Extrusion_SetOrientation
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:436,1
    - Dst: Extrusion_SetScale
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:437,1
    - Dst: Extrusion_SetSpine
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:438,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 442
      start: 423
    functionDepth: 7
    functionLinenumber: 423
    functionLinenumberEnd: 442
    functionName: compositor_init_extrusion
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 1
    functionsReached:
    - Extrusion_SetCrossSection
    - drawable_3d_new
    - Extrusion_SetSpine
    - gf_node_set_callback_function
    - Extrusion_SetScale
    - Extrusion_SetOrientation
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: void
    signature: void compositor_init_extrusion(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:491,1
    - Dst: gf_vec_equal
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:494,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:496,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:497,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:498,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:498,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:498,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:500,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:500,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:501,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:501,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:502,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:502,1
    - Dst: gf_atan2
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:503,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:503,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:503,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:504,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:505,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 2
    argNames:
    - nld
    - mx
    argTypes:
    - M_NonLinearDeformer*
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 483
    functionDepth: 1
    functionLinenumber: 483
    functionLinenumberEnd: 507
    functionName: NLD_GetMatrix
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - gf_vec_len
    - gf_vec_dot
    - gf_vec_equal
    - gf_divfix
    - gf_mx_add_rotation
    - gf_mx_init
    - gf_atan2
    - gf_vec_norm
    - gf_mulfix
    - gf_sqrt
    linkageType: ''
    returnType: Bool
    signature: Bool NLD_GetMatrix(M_NonLinearDeformer *nld, GF_Matrix *mx)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 6
    argNames:
    - nld
    - frac
    - f_min
    - min
    - f_max
    - max
    argTypes:
    - M_NonLinearDeformer*
    - Fixed
    - Fixed*
    - Fixed*
    - Fixed*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 509
    functionDepth: 0
    functionLinenumber: 509
    functionLinenumberEnd: 535
    functionName: NLD_GetKey
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE NLD_GetKey(M_NonLinearDeformer *nld, Fixed frac, Fixed *f_min,
      Fixed *min, Fixed *f_max, Fixed *max)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: NLD_GetMatrix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:543,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:554,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:555,1
    - Dst: gf_mx_rotate_vector
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:556,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:557,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:569,1
    - Dst: NLD_GetKey
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:570,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:574,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:575,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:577,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:582,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:583,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:584,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:586,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:587,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:588,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:589,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:593,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:594,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:595,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:595,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:596,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:596,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:597,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:599,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:599,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:600,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:600,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:601,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:602,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:606,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:607,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:608,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:608,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:609,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:609,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:610,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:612,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:612,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:613,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:613,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:614,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:615,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:619,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:620,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:622,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:623,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:624,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:629,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:631,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:632,1
    - Dst: gf_mx_rotate_vector
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:633,1
    - Dst: MESH_SET_NORMAL
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:634,1
    - Dst: mesh_update_bounds
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:637,1
    - Dst: gf_mesh_build_aabbtree
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:638,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 89
    argCount: 2
    argNames:
    - nld
    - mesh
    argTypes:
    - M_NonLinearDeformer*
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 639
      start: 537
    functionDepth: 5
    functionLinenumber: 537
    functionLinenumberEnd: 639
    functionName: NLD_Apply
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - gf_sin
    - NLD_GetKey
    - gf_mesh_build_aabbtree
    - gf_divfix
    - gf_mx_rotate_vector
    - MESH_SET_NORMAL
    - gf_vec_norm
    - MESH_GET_NORMAL
    - gf_mx_inverse
    - NLD_GetMatrix
    - gf_mx_apply_vec
    - gf_mulfix
    - gf_cos
    - mesh_update_bounds
    linkageType: ''
    returnType: void
    signature: void NLD_Apply(M_NonLinearDeformer *nld, GF_Mesh *mesh)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:644,1
    - Dst: mesh_clone
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:649,1
    - Dst: NLD_Apply
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:651,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - n
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable3D*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 641
    functionDepth: 6
    functionLinenumber: 641
    functionLinenumberEnd: 652
    functionName: build_shape_nld
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    - mesh_clone
    - NLD_Apply
    linkageType: ''
    returnType: void
    signature: void build_shape_nld(GF_Node *n, Drawable3D *stack, GF_TraverseState
      *tr_state)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:660,1
    - Dst: drawable_3d_base_traverse
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:663,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 654
    functionDepth: 6
    functionLinenumber: 654
    functionLinenumberEnd: 664
    functionName: TraverseNonLinearDeformer
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 0
    functionsReached:
    - drawable_3d_base_traverse
    - gf_node_traverse
    linkageType: ''
    returnType: void
    signature: void TraverseNonLinearDeformer(GF_Node *n, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_3d_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:668,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_geometry_3d.c:669,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 666
    functionDepth: 2
    functionLinenumber: 666
    functionLinenumberEnd: 670
    functionName: compositor_init_non_linear_deformer
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_3d.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_3d_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_non_linear_deformer(GF_Compositor *compositor,
      GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - drawable
    - x
    - y
    - asp
    - tr_state
    - glyph_rc
    argTypes:
    - Drawable*
    - Fixed
    - Fixed
    - DrawAspect2D*
    - GF_TraverseState*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionName: svg_drawable_is_over
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool svg_drawable_is_over(Drawable *drawable, Fixed x, Fixed y, DrawAspect2D
      *asp, GF_TraverseState *tr_state, GF_Rect *glyph_rc)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/svg_geometry.c:56,1
    - Dst: gf_path_point_over
      Src: /src/gpac/src/compositor/svg_geometry.c:140,1
    - Dst: drawable_get_strikeinfo
      Src: /src/gpac/src/compositor/svg_geometry.c:148,1
    - Dst: gf_path_point_over
      Src: /src/gpac/src/compositor/svg_geometry.c:150,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 91
    argCount: 6
    argNames:
    - drawable
    - x
    - y
    - asp
    - tr_state
    - glyph_rc
    argTypes:
    - Drawable*
    - Fixed
    - Fixed
    - DrawAspect2D*
    - GF_TraverseState*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 40
    functionDepth: 4
    functionLinenumber: 40
    functionLinenumberEnd: 155
    functionName: svg_drawable_is_over
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 1
    functionsReached:
    - drawable_get_strikeinfo
    - gf_path_point_over
    - gf_path_get_bounds
    linkageType: ''
    returnType: Bool
    signature: Bool svg_drawable_is_over(Drawable *drawable, Fixed x, Fixed y, DrawAspect2D
      *asp, GF_TraverseState *tr_state, GF_Rect *glyph_rc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_geometry.c:161,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/svg_geometry.c:162,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_geometry.c:164,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/svg_geometry.c:165,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - compositor
    - tr_state
    argTypes:
    - GF_Compositor*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 167
    functionName: svg_clone_use_stack
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_add
    - gf_list_reset
    linkageType: ''
    returnType: void
    signature: void svg_clone_use_stack(GF_Compositor *compositor, GF_TraverseState
      *tr_state)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/svg_geometry.c:186,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/compositor/svg_geometry.c:187,1
    - Dst: gf_mx_apply_ray
      Src: /src/gpac/src/compositor/svg_geometry.c:188,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/svg_geometry.c:195,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/svg_geometry.c:197,1
    - Dst: gf_bbox_from_rect
      Src: /src/gpac/src/compositor/svg_geometry.c:198,1
    - Dst: gf_bbox_plane_relation
      Src: /src/gpac/src/compositor/svg_geometry.c:200,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_geometry.c:201,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/compositor/svg_geometry.c:201,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/compositor/svg_geometry.c:201,1
    - Dst: compositor_get_2d_plane_intersection
      Src: /src/gpac/src/compositor/svg_geometry.c:206,1
    - Dst: svg_drawable_is_over
      Src: /src/gpac/src/compositor/svg_geometry.c:207,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_geometry.c:214,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_geometry.c:215,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/svg_geometry.c:219,1
    - Dst: gf_plane_get_distance
      Src: /src/gpac/src/compositor/svg_geometry.c:222,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_geometry.c:223,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/compositor/svg_geometry.c:223,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/compositor/svg_geometry.c:223,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/svg_geometry.c:228,1
    - Dst: gf_vec_lensq
      Src: /src/gpac/src/compositor/svg_geometry.c:229,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_geometry.c:231,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/compositor/svg_geometry.c:231,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/compositor/svg_geometry.c:231,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/svg_geometry.c:231,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/svg_geometry.c:231,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/svg_geometry.c:239,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_geometry.c:240,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/svg_geometry.c:242,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_geometry.c:242,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/svg_geometry.c:245,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/svg_geometry.c:246,1
    - Dst: svg_clone_use_stack
      Src: /src/gpac/src/compositor/svg_geometry.c:253,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_geometry.c:260,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/compositor/svg_geometry.c:260,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/compositor/svg_geometry.c:260,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/svg_geometry.c:261,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/svg_geometry.c:261,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/svg_geometry.c:261,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 59
    argCount: 3
    argNames:
    - drawable
    - tr_state
    - asp
    argTypes:
    - Drawable*
    - GF_TraverseState*
    - DrawAspect2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 171
    functionDepth: 2
    functionLinenumber: 171
    functionLinenumberEnd: 262
    functionName: svg_drawable_3d_pick
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 0
    functionsReached:
    - gf_bbox_plane_relation
    - svg_clone_use_stack
    - gf_node_get_class_name
    - gf_bbox_from_rect
    - gf_list_count
    - compositor_get_2d_plane_intersection
    - gf_mx_copy
    - gf_mx_apply_ray
    - gf_vec_lensq
    - FIX2FLT
    - gf_vec_dot
    - gf_plane_get_distance
    - gf_list_get
    - gf_node_get_name
    - gf_list_add
    - gf_list_reset
    - GF_LOG
    - svg_drawable_is_over
    - gf_divfix
    - gf_vec_diff
    - gf_mx_inverse
    - gf_mx_apply_vec
    linkageType: ''
    returnType: void
    signature: void svg_drawable_3d_pick(Drawable *drawable, GF_TraverseState *tr_state,
      DrawAspect2D *asp)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_geometry.c:280,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_geometry.c:282,1
    - Dst: gf_svg_apply_inheritance
      Src: /src/gpac/src/compositor/svg_geometry.c:283,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_geometry.c:284,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_geometry.c:286,1
    - Dst: memset
      Src: /src/gpac/src/compositor/svg_geometry.c:288,1
    - Dst: drawable_get_aspect_2d_svg
      Src: /src/gpac/src/compositor/svg_geometry.c:289,1
    - Dst: svg_drawable_3d_pick
      Src: /src/gpac/src/compositor/svg_geometry.c:293,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_geometry.c:294,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_geometry.c:295,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_geometry.c:299,1
    - Dst: gf_mx2d_inverse
      Src: /src/gpac/src/compositor/svg_geometry.c:300,1
    - Dst: gf_mx2d_apply_coords
      Src: /src/gpac/src/compositor/svg_geometry.c:303,1
    - Dst: svg_drawable_is_over
      Src: /src/gpac/src/compositor/svg_geometry.c:305,1
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/compositor/svg_geometry.c:313,1
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/compositor/svg_geometry.c:314,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_geometry.c:320,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_geometry.c:321,1
    - Dst: svg_clone_use_stack
      Src: /src/gpac/src/compositor/svg_geometry.c:322,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/svg_geometry.c:328,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_geometry.c:329,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/svg_geometry.c:331,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_geometry.c:331,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_geometry.c:334,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/compositor/svg_geometry.c:334,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/svg_geometry.c:334,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/svg_geometry.c:334,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_geometry.c:337,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_geometry.c:338,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 46
    argCount: 3
    argNames:
    - node
    - drawable
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 266
    functionDepth: 3
    functionLinenumber: 266
    functionLinenumberEnd: 339
    functionName: svg_drawable_pick
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 1
    functionsReached:
    - gf_svg_apply_inheritance
    - svg_clone_use_stack
    - compositor_svg_is_display_off
    - gf_list_count
    - memset
    - gf_node_get_log_name
    - compositor_svg_restore_parent_transformation
    - svg_drawable_3d_pick
    - FIX2FLT
    - drawable_get_aspect_2d_svg
    - gf_list_get
    - memcpy
    - gf_list_add
    - gf_svg_flatten_attributes
    - gf_list_reset
    - GF_LOG
    - gf_mx_from_mx2d
    - svg_drawable_is_over
    - gf_mx2d_apply_coords
    - gf_divfix
    - gf_mx2d_copy
    - gf_mx2d_inverse
    - compositor_svg_apply_local_transformation
    linkageType: ''
    returnType: void
    signature: void svg_drawable_pick(GF_Node *node, Drawable *drawable, GF_TraverseState
      *tr_state)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_geometry.c:350,1
    - Dst: drawable_node_del
      Src: /src/gpac/src/compositor/svg_geometry.c:359,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/svg_geometry.c:362,1
    - Dst: svg_drawable_pick
      Src: /src/gpac/src/compositor/svg_geometry.c:366,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_geometry.c:371,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_geometry.c:372,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_geometry.c:376,1
    - Dst: rebuild_path
      Src: /src/gpac/src/compositor/svg_geometry.c:378,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_geometry.c:379,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/svg_geometry.c:380,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/svg_geometry.c:386,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/svg_geometry.c:391,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_geometry.c:397,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/svg_geometry.c:399,1
    - Dst: memset
      Src: /src/gpac/src/compositor/svg_geometry.c:401,1
    - Dst: drawable_get_aspect_2d_svg
      Src: /src/gpac/src/compositor/svg_geometry.c:402,1
    - Dst: drawable_get_strikeinfo
      Src: /src/gpac/src/compositor/svg_geometry.c:404,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/svg_geometry.c:406,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_geometry.c:410,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/svg_geometry.c:412,1
    - Dst: gf_sc_get_nodes_bounds
      Src: /src/gpac/src/compositor/svg_geometry.c:413,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_geometry.c:415,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_geometry.c:419,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_geometry.c:421,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_geometry.c:424,1
    - Dst: drawable_init_context_svg
      Src: /src/gpac/src/compositor/svg_geometry.c:426,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/svg_geometry.c:430,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/svg_geometry.c:445,1
    - Dst: mesh_from_path
      Src: /src/gpac/src/compositor/svg_geometry.c:446,1
    - Dst: visual_3d_draw_from_context
      Src: /src/gpac/src/compositor/svg_geometry.c:448,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/svg_geometry.c:453,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_geometry.c:456,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_geometry.c:460,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 89
    argCount: 5
    argNames:
    - node
    - rs
    - is_destroy
    - is_svg_rect
    - is_svg_path
    argTypes:
    - GF_Node*
    - void*
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 341
    functionDepth: 10
    functionLinenumber: 341
    functionLinenumberEnd: 462
    functionName: svg_drawable_traverse
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 0
    functionsReached:
    - drawable_node_del
    - mesh_from_path
    - svg_drawable_pick
    - drawable_mark_modified
    - gf_node_dirty_get
    - compositor_svg_is_display_off
    - drawable_get_strikeinfo
    - gf_node_dirty_clear
    - memset
    - compositor_svg_restore_parent_transformation
    - drawable_get_aspect_2d_svg
    - gf_assert
    - GF_COL_A
    - compositor_svg_traverse_base
    - memcpy
    - gf_mx2d_apply_rect
    - visual_3d_draw_from_context
    - new_mesh
    - gf_node_get_private
    - gf_sc_get_nodes_bounds
    - gf_svg_flatten_attributes
    - drawable_finalize_sort
    - compositor_svg_apply_local_transformation
    - drawable_init_context_svg
    - rebuild_path
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: "void svg_drawable_traverse(GF_Node *node, void *rs, Bool is_destroy,\n
      \                                 void (*rebuild_path)(GF_Node *, Drawable *,
      SVGAllAttributes *),\n                                  Bool is_svg_rect, Bool
      is_svg_path)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_atan2
      Src: /src/gpac/src/compositor/svg_geometry.c:475,1
    - Dst: gf_atan2
      Src: /src/gpac/src/compositor/svg_geometry.c:476,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_geometry.c:484,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/svg_geometry.c:484,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_geometry.c:485,1
    - Dst: gf_sin
      Src: /src/gpac/src/compositor/svg_geometry.c:485,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/svg_geometry.c:486,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 7
    argNames:
    - gp
    - end_x
    - end_y
    - cx
    - cy
    - rx
    - ry
    argTypes:
    - GF_Path*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 464
    functionDepth: 1
    functionLinenumber: 464
    functionLinenumberEnd: 489
    functionName: svg_rect_add_arc
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 0
    functionsReached:
    - gf_sin
    - gf_atan2
    - gf_path_add_line_to
    - gf_mulfix
    - gf_cos
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_rect_add_arc(GF_Path *gp, Fixed end_x, Fixed end_y, Fixed
      cx, Fixed cy, Fixed rx, Fixed ry)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/svg_geometry.c:500,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/svg_geometry.c:510,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/svg_geometry.c:513,1
    - Dst: svg_rect_add_arc
      Src: /src/gpac/src/compositor/svg_geometry.c:517,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/svg_geometry.c:520,1
    - Dst: svg_rect_add_arc
      Src: /src/gpac/src/compositor/svg_geometry.c:524,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/svg_geometry.c:527,1
    - Dst: svg_rect_add_arc
      Src: /src/gpac/src/compositor/svg_geometry.c:531,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/svg_geometry.c:534,1
    - Dst: svg_rect_add_arc
      Src: /src/gpac/src/compositor/svg_geometry.c:538,1
    - Dst: gf_path_close
      Src: /src/gpac/src/compositor/svg_geometry.c:540,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/svg_geometry.c:542,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/svg_geometry.c:543,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/svg_geometry.c:544,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/svg_geometry.c:545,1
    - Dst: gf_path_close
      Src: /src/gpac/src/compositor/svg_geometry.c:546,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 42
    argCount: 3
    argNames:
    - node
    - stack
    - atts
    argTypes:
    - GF_Node*
    - Drawable*
    - SVGAllAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 491
    functionDepth: 3
    functionLinenumber: 491
    functionLinenumberEnd: 548
    functionName: svg_rect_rebuild
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 0
    functionsReached:
    - drawable_reset_path
    - gf_path_add_move_to
    - svg_rect_add_arc
    - gf_path_add_line_to
    - gf_path_close
    linkageType: ''
    returnType: void
    signature: void svg_rect_rebuild(GF_Node *node, Drawable *stack, SVGAllAttributes
      *atts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: svg_drawable_traverse
      Src: /src/gpac/src/compositor/svg_geometry.c:552,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 553
      start: 550
    functionDepth: 11
    functionLinenumber: 550
    functionLinenumberEnd: 553
    functionName: svg_traverse_rect
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 0
    functionsReached:
    - svg_drawable_traverse
    linkageType: ''
    returnType: void
    signature: void svg_traverse_rect(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_stack_new
      Src: /src/gpac/src/compositor/svg_geometry.c:557,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_geometry.c:558,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 555
    functionDepth: 3
    functionLinenumber: 555
    functionLinenumberEnd: 559
    functionName: compositor_init_svg_rect
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_stack_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_rect(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/svg_geometry.c:564,1
    - Dst: gf_path_add_ellipse
      Src: /src/gpac/src/compositor/svg_geometry.c:565,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - node
    - stack
    - atts
    argTypes:
    - GF_Node*
    - Drawable*
    - SVGAllAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 561
    functionDepth: 3
    functionLinenumber: 561
    functionLinenumberEnd: 566
    functionName: svg_circle_rebuild
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 0
    functionsReached:
    - gf_path_add_ellipse
    - drawable_reset_path
    linkageType: ''
    returnType: void
    signature: void svg_circle_rebuild(GF_Node *node, Drawable *stack, SVGAllAttributes
      *atts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: svg_drawable_traverse
      Src: /src/gpac/src/compositor/svg_geometry.c:570,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 568
    functionDepth: 11
    functionLinenumber: 568
    functionLinenumberEnd: 571
    functionName: svg_traverse_circle
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 0
    functionsReached:
    - svg_drawable_traverse
    linkageType: ''
    returnType: void
    signature: void svg_traverse_circle(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_stack_new
      Src: /src/gpac/src/compositor/svg_geometry.c:575,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_geometry.c:576,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 573
    functionDepth: 3
    functionLinenumber: 573
    functionLinenumberEnd: 577
    functionName: compositor_init_svg_circle
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_stack_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_circle(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/svg_geometry.c:581,1
    - Dst: gf_path_add_ellipse
      Src: /src/gpac/src/compositor/svg_geometry.c:582,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - node
    - stack
    - atts
    argTypes:
    - GF_Node*
    - Drawable*
    - SVGAllAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 579
    functionDepth: 3
    functionLinenumber: 579
    functionLinenumberEnd: 586
    functionName: svg_ellipse_rebuild
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 0
    functionsReached:
    - gf_path_add_ellipse
    - drawable_reset_path
    linkageType: ''
    returnType: void
    signature: void svg_ellipse_rebuild(GF_Node *node, Drawable *stack, SVGAllAttributes
      *atts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: svg_drawable_traverse
      Src: /src/gpac/src/compositor/svg_geometry.c:589,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 587
    functionDepth: 11
    functionLinenumber: 587
    functionLinenumberEnd: 590
    functionName: svg_traverse_ellipse
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 0
    functionsReached:
    - svg_drawable_traverse
    linkageType: ''
    returnType: void
    signature: void svg_traverse_ellipse(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_stack_new
      Src: /src/gpac/src/compositor/svg_geometry.c:594,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_geometry.c:595,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 596
      start: 592
    functionDepth: 3
    functionLinenumber: 592
    functionLinenumberEnd: 596
    functionName: compositor_init_svg_ellipse
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_stack_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_ellipse(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/svg_geometry.c:600,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/svg_geometry.c:601,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/svg_geometry.c:602,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - node
    - stack
    - atts
    argTypes:
    - GF_Node*
    - Drawable*
    - SVGAllAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 598
    functionDepth: 3
    functionLinenumber: 598
    functionLinenumberEnd: 603
    functionName: svg_line_rebuild
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 0
    functionsReached:
    - gf_path_add_line_to
    - drawable_reset_path
    - gf_path_add_move_to
    linkageType: ''
    returnType: void
    signature: void svg_line_rebuild(GF_Node *node, Drawable *stack, SVGAllAttributes
      *atts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: svg_drawable_traverse
      Src: /src/gpac/src/compositor/svg_geometry.c:606,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 604
    functionDepth: 11
    functionLinenumber: 604
    functionLinenumberEnd: 607
    functionName: svg_traverse_line
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 0
    functionsReached:
    - svg_drawable_traverse
    linkageType: ''
    returnType: void
    signature: void svg_traverse_line(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_stack_new
      Src: /src/gpac/src/compositor/svg_geometry.c:611,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_geometry.c:612,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 613
      start: 609
    functionDepth: 3
    functionLinenumber: 609
    functionLinenumberEnd: 613
    functionName: compositor_init_svg_line
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_stack_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_line(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/svg_geometry.c:618,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_geometry.c:620,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_geometry.c:625,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/svg_geometry.c:626,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_geometry.c:628,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/svg_geometry.c:629,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/svg_geometry.c:632,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - node
    - stack
    - atts
    argTypes:
    - GF_Node*
    - Drawable*
    - SVGAllAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 615
    functionDepth: 3
    functionLinenumber: 615
    functionLinenumberEnd: 634
    functionName: svg_polyline_rebuild
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - drawable_reset_path
    - gf_path_add_move_to
    - gf_list_count
    - gf_path_add_line_to
    linkageType: ''
    returnType: void
    signature: void svg_polyline_rebuild(GF_Node *node, Drawable *stack, SVGAllAttributes
      *atts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: svg_drawable_traverse
      Src: /src/gpac/src/compositor/svg_geometry.c:637,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 638
      start: 635
    functionDepth: 11
    functionLinenumber: 635
    functionLinenumberEnd: 638
    functionName: svg_traverse_polyline
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 0
    functionsReached:
    - svg_drawable_traverse
    linkageType: ''
    returnType: void
    signature: void svg_traverse_polyline(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_stack_new
      Src: /src/gpac/src/compositor/svg_geometry.c:642,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_geometry.c:643,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 644
      start: 640
    functionDepth: 3
    functionLinenumber: 640
    functionLinenumberEnd: 644
    functionName: compositor_init_svg_polyline
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_stack_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_polyline(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/svg_geometry.c:649,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_geometry.c:651,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_geometry.c:656,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/svg_geometry.c:657,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/svg_geometry.c:659,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/svg_geometry.c:660,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/svg_geometry.c:663,1
    - Dst: gf_path_close
      Src: /src/gpac/src/compositor/svg_geometry.c:666,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - node
    - stack
    - atts
    argTypes:
    - GF_Node*
    - Drawable*
    - SVGAllAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 646
    functionDepth: 3
    functionLinenumber: 646
    functionLinenumberEnd: 667
    functionName: svg_polygon_rebuild
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - drawable_reset_path
    - gf_path_add_move_to
    - gf_list_count
    - gf_path_add_line_to
    - gf_path_close
    linkageType: ''
    returnType: void
    signature: void svg_polygon_rebuild(GF_Node *node, Drawable *stack, SVGAllAttributes
      *atts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: svg_drawable_traverse
      Src: /src/gpac/src/compositor/svg_geometry.c:670,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 668
    functionDepth: 11
    functionLinenumber: 668
    functionLinenumberEnd: 671
    functionName: svg_traverse_polygon
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 0
    functionsReached:
    - svg_drawable_traverse
    linkageType: ''
    returnType: void
    signature: void svg_traverse_polygon(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_stack_new
      Src: /src/gpac/src/compositor/svg_geometry.c:675,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_geometry.c:676,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 677
      start: 673
    functionDepth: 3
    functionLinenumber: 673
    functionLinenumberEnd: 677
    functionName: compositor_init_svg_polygon
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_stack_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_polygon(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_reset_path_outline
      Src: /src/gpac/src/compositor/svg_geometry.c:683,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/svg_geometry.c:686,1
    - Dst: gf_svg_path_build
      Src: /src/gpac/src/compositor/svg_geometry.c:687,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - node
    - stack
    - atts
    argTypes:
    - GF_Node*
    - Drawable*
    - SVGAllAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 680
    functionDepth: 3
    functionLinenumber: 680
    functionLinenumberEnd: 689
    functionName: svg_path_rebuild
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 0
    functionsReached:
    - drawable_reset_path_outline
    - gf_svg_path_build
    - drawable_reset_path
    linkageType: ''
    returnType: void
    signature: void svg_path_rebuild(GF_Node *node, Drawable *stack, SVGAllAttributes
      *atts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: svg_drawable_traverse
      Src: /src/gpac/src/compositor/svg_geometry.c:693,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 694
      start: 691
    functionDepth: 11
    functionLinenumber: 691
    functionLinenumberEnd: 694
    functionName: svg_traverse_path
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 0
    functionsReached:
    - svg_drawable_traverse
    linkageType: ''
    returnType: void
    signature: void svg_traverse_path(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: drawable_stack_new
      Src: /src/gpac/src/compositor/svg_geometry.c:698,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/svg_geometry.c:699,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_geometry.c:701,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 702
      start: 696
    functionDepth: 3
    functionLinenumber: 696
    functionLinenumberEnd: 702
    functionName: compositor_init_svg_path
    functionSourceFile: /src/gpac/src/compositor/svg_geometry.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - gf_path_del
    - drawable_stack_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_svg_path(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:38,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:43,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:45,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:46,1
    - Dst: gf_mo_register
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:54,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:59,1
    - Dst: gf_odm_init_segments
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:60,1
    - Dst: gf_clock_media_time
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:87,1
    - Dst: mediasensor_update_timing
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:88,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:93,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:95,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 46
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 33
    functionDepth: 4
    functionLinenumber: 33
    functionLinenumberEnd: 97
    functionName: RenderMediaSensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_mediasensor.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mo_register
    - gf_sc_send_event
    - mediasensor_update_timing
    - memset
    - gf_odm_init_segments
    - gf_list_add
    - gf_list_del_item
    - gf_clock_media_time
    - gf_node_get_private
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void RenderMediaSensor(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:102,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:104,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:110,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:111,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:112,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - scene
    - node
    argTypes:
    - GF_Scene*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 99
    functionDepth: 2
    functionLinenumber: 99
    functionLinenumberEnd: 114
    functionName: InitMediaSensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_mediasensor.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void InitMediaSensor(GF_Scene *scene, GF_Node *node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:119,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:122,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:122,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:127,1
    - Dst: gf_mo_unregister
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:129,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:132,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:137,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 117
    functionDepth: 5
    functionLinenumber: 117
    functionLinenumberEnd: 138
    functionName: MS_Modified
    functionSourceFile: /src/gpac/src/compositor/mpeg4_mediasensor.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    - gf_mo_unregister
    - gf_list_count
    - gf_sc_invalidate
    - gf_list_del_item
    - gf_node_get_private
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void MS_Modified(GF_Node *node)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:145,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:154,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:156,1
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:162,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:168,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:170,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:172,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:180,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:182,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:193,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:202,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:204,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:208,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:216,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:221,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:223,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:239,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:242,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:244,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:245,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:246,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:247,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:250,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:253,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:261,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:269,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:271,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 104
    argCount: 2
    argNames:
    - odm
    - is_eos
    argTypes:
    - GF_ObjectManager*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 140
    functionDepth: 5
    functionLinenumber: 140
    functionLinenumberEnd: 275
    functionName: mediasensor_update_timing
    functionSourceFile: /src/gpac/src/compositor/mpeg4_mediasensor.c
    functionUses: 2
    functionsReached:
    - gf_list_get
    - gf_node_event_out
    - gf_strdup
    - GF_LOG
    - gf_list_count
    - gf_odm_get_media_clock
    - gf_sg_vrml_mf_reset
    - gf_sg_vrml_mf_alloc
    linkageType: ''
    returnType: void
    signature: void mediasensor_update_timing(GF_ObjectManager *odm, Bool is_eos)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:281,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_mediasensor.c:283,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - st
    argTypes:
    - MediaSensorStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 277
    functionDepth: 5
    functionLinenumber: 277
    functionLinenumberEnd: 286
    functionName: MS_Stop
    functionSourceFile: /src/gpac/src/compositor/mpeg4_mediasensor.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - gf_node_event_out
    linkageType: ''
    returnType: void
    signature: void MS_Stop(MediaSensorStack *st)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:54,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:56,1
    - Dst: gf_mx2d_add_scale_at
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:60,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:61,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:62,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:68,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - transform
    - mat
    argTypes:
    - GF_Node*
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 81
    functionName: GradientGetMatrix
    functionSourceFile: /src/gpac/src/compositor/mpeg4_gradients.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_mx2d_add_translation
    - gf_mx2d_add_scale_at
    - gf_mx2d_init
    - gf_mx2d_add_rotation
    linkageType: ''
    returnType: void
    signature: void GradientGetMatrix(GF_Node *transform, GF_Matrix2D *mat)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:86,1
    - Dst: gf_sc_texture_destroy
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:87,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:88,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:89,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 83
    functionDepth: 2
    functionLinenumber: 83
    functionLinenumberEnd: 91
    functionName: DestroyGradient
    functionSourceFile: /src/gpac/src/compositor/mpeg4_gradients.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sc_texture_destroy
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void DestroyGradient(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:100,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:102,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:109,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:109,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:110,1
    - Dst: gf_sc_texture_allocate
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:111,1
    - Dst: gf_sc_texture_get_stencil
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:114,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:115,1
    - Dst: gf_sc_texture_set_stencil
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:117,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:119,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:124,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:127,1
    - Dst: gf_evg_stencil_set_gradient_interpolation
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:130,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:131,1
    - Dst: gf_evg_stencil_set_gradient_mode
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:132,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 93
    functionDepth: 3
    functionLinenumber: 93
    functionLinenumberEnd: 133
    functionName: UpdateLinearGradient
    functionSourceFile: /src/gpac/src/compositor/mpeg4_gradients.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_COL_ARGB_FIXED
    - gf_sc_texture_set_stencil
    - gf_evg_stencil_set_gradient_interpolation
    - gf_node_dirty_set
    - gf_evg_stencil_new
    - gf_node_dirty_get
    - gf_sc_texture_allocate
    - gf_node_dirty_clear
    - gf_evg_stencil_set_gradient_mode
    - gf_node_get_parent
    - gf_sc_texture_get_stencil
    - gf_node_get_private
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void UpdateLinearGradient(GF_TextureHandler *txh)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_get_stencil
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:141,1
    - Dst: GradientGetMatrix
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:150,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:153,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:153,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:153,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:156,1
    - Dst: gf_evg_stencil_set_linear_gradient
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:158,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 4
    argNames:
    - txh
    - bounds
    - mat
    - for_3d
    argTypes:
    - GF_TextureHandler*
    - GF_Rect*
    - GF_Matrix2D*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 136
    functionDepth: 3
    functionLinenumber: 136
    functionLinenumberEnd: 159
    functionName: LG_ComputeMatrix
    functionSourceFile: /src/gpac/src/compositor/mpeg4_gradients.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_add_translation
    - gf_evg_stencil_set_linear_gradient
    - gf_divfix
    - gf_mx2d_add_scale
    - GradientGetMatrix
    - gf_sc_texture_get_stencil
    linkageType: ''
    returnType: void
    signature: void LG_ComputeMatrix(GF_TextureHandler *txh, GF_Rect *bounds, GF_Matrix2D
      *mat, Bool for_3d)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:179,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:185,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:186,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:198,1
    - Dst: gf_evg_surface_new
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:200,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:202,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:209,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:215,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:217,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:220,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:223,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:227,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:229,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:235,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:236,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:237,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:243,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:244,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:245,1
    - Dst: gf_evg_surface_attach_to_texture
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:248,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:250,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:251,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:256,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:258,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:259,1
    - Dst: gf_evg_stencil_set_linear_gradient
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:267,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:269,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:272,1
    - Dst: gf_evg_stencil_set_gradient_interpolation
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:274,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:275,1
    - Dst: gf_evg_stencil_set_gradient_mode
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:276,1
    - Dst: gf_path_new
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:279,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:280,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:280,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:280,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:281,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:281,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:281,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:282,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:282,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:282,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:283,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:283,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:283,1
    - Dst: gf_path_close
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:284,1
    - Dst: GradientGetMatrix
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:287,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:293,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:293,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:293,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:295,1
    - Dst: gf_evg_stencil_set_matrix
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:296,1
    - Dst: gf_evg_stencil_set_auto_matrix
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:297,1
    - Dst: gf_evg_surface_set_raster_level
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:299,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:300,1
    - Dst: gf_evg_surface_fill
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:301,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:302,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:303,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:304,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:305,1
    - Dst: gf_sc_texture_set_data
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:334,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 129
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 163
    functionDepth: 8
    functionLinenumber: 163
    functionLinenumberEnd: 335
    functionName: BuildLinearGradientTexture
    functionSourceFile: /src/gpac/src/compositor/mpeg4_gradients.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_evg_stencil_delete
    - gf_evg_stencil_new
    - gf_list_find
    - gf_mx2d_add_scale
    - gf_path_add_move_to
    - memset
    - gf_path_close
    - gf_evg_stencil_set_gradient_interpolation
    - gf_path_del
    - gf_evg_stencil_set_auto_matrix
    - gf_evg_stencil_set_matrix
    - gf_evg_surface_set_path
    - gf_evg_stencil_set_texture
    - gf_node_get_private
    - gf_evg_surface_set_raster_level
    - gf_list_insert
    - GF_COL_ARGB_FIXED
    - gf_path_new
    - gf_evg_surface_fill
    - gf_evg_surface_delete
    - gf_evg_surface_attach_to_texture
    - gf_malloc
    - gf_sc_texture_set_data
    - gf_mx2d_add_translation
    - INT2FIX
    - gf_evg_stencil_set_linear_gradient
    - GradientGetMatrix
    - gf_evg_stencil_set_gradient_mode
    - gf_path_add_line_to
    - gf_evg_surface_new
    linkageType: ''
    returnType: void
    signature: void BuildLinearGradientTexture(GF_TextureHandler *txh)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:340,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:342,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:354,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:355,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 337
    functionDepth: 2
    functionLinenumber: 337
    functionLinenumberEnd: 356
    functionName: compositor_init_linear_gradient
    functionSourceFile: /src/gpac/src/compositor/mpeg4_gradients.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void compositor_init_linear_gradient(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:375,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:381,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:382,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:391,1
    - Dst: gf_evg_surface_new
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:393,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:395,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:402,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:408,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:410,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:414,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:418,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:422,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:424,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:430,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:431,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:432,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:438,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:439,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:440,1
    - Dst: gf_evg_surface_attach_to_texture
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:443,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:445,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:446,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:451,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:453,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:454,1
    - Dst: gf_evg_stencil_set_radial_gradient
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:468,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:471,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:474,1
    - Dst: gf_evg_stencil_set_gradient_interpolation
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:476,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:477,1
    - Dst: gf_evg_stencil_set_gradient_mode
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:478,1
    - Dst: gf_path_new
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:481,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:482,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:482,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:482,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:483,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:483,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:483,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:484,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:484,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:484,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:485,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:485,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:485,1
    - Dst: gf_path_close
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:486,1
    - Dst: GradientGetMatrix
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:489,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:494,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:494,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:494,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:496,1
    - Dst: gf_evg_stencil_set_matrix
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:497,1
    - Dst: gf_evg_stencil_set_auto_matrix
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:498,1
    - Dst: gf_evg_surface_set_raster_level
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:500,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:501,1
    - Dst: gf_evg_surface_fill
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:502,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:503,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:504,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:505,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:506,1
    - Dst: gf_sc_texture_set_data
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:540,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 135
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 542
      start: 359
    functionDepth: 8
    functionLinenumber: 359
    functionLinenumberEnd: 542
    functionName: BuildRadialGradientTexture
    functionSourceFile: /src/gpac/src/compositor/mpeg4_gradients.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_evg_stencil_delete
    - gf_evg_stencil_new
    - gf_list_find
    - gf_mx2d_add_scale
    - gf_path_add_move_to
    - memset
    - gf_path_close
    - gf_evg_stencil_set_gradient_interpolation
    - gf_path_del
    - gf_evg_stencil_set_auto_matrix
    - gf_evg_stencil_set_matrix
    - gf_evg_surface_set_path
    - gf_evg_stencil_set_texture
    - gf_node_get_private
    - gf_evg_surface_set_raster_level
    - gf_list_insert
    - GF_COL_ARGB_FIXED
    - gf_evg_stencil_set_radial_gradient
    - gf_path_new
    - gf_evg_surface_fill
    - gf_evg_surface_delete
    - gf_evg_surface_attach_to_texture
    - gf_malloc
    - gf_sc_texture_set_data
    - gf_mx2d_add_translation
    - INT2FIX
    - GradientGetMatrix
    - gf_evg_stencil_set_gradient_mode
    - gf_path_add_line_to
    - gf_evg_surface_new
    linkageType: ''
    returnType: void
    signature: void BuildRadialGradientTexture(GF_TextureHandler *txh)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:551,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:553,1
    - Dst: gf_sc_texture_allocate
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:559,1
    - Dst: gf_sc_texture_get_stencil
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:561,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:562,1
    - Dst: gf_sc_texture_set_stencil
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:564,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:566,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:578,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:581,1
    - Dst: gf_evg_stencil_set_gradient_interpolation
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:583,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:584,1
    - Dst: gf_evg_stencil_set_gradient_mode
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:586,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 544
    functionDepth: 3
    functionLinenumber: 544
    functionLinenumberEnd: 588
    functionName: UpdateRadialGradient
    functionSourceFile: /src/gpac/src/compositor/mpeg4_gradients.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_COL_ARGB_FIXED
    - gf_sc_texture_set_stencil
    - gf_evg_stencil_set_gradient_interpolation
    - gf_evg_stencil_new
    - gf_node_dirty_get
    - gf_sc_texture_allocate
    - gf_node_dirty_clear
    - gf_evg_stencil_set_gradient_mode
    - gf_sc_texture_get_stencil
    - gf_node_get_private
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void UpdateRadialGradient(GF_TextureHandler *txh)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_get_stencil
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:600,1
    - Dst: GradientGetMatrix
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:603,1
    - Dst: gf_evg_stencil_set_radial_gradient
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:605,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:608,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:608,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:608,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:611,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 4
    argNames:
    - txh
    - bounds
    - mat
    - for_3d
    argTypes:
    - GF_TextureHandler*
    - GF_Rect*
    - GF_Matrix2D*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 590
    functionDepth: 3
    functionLinenumber: 590
    functionLinenumberEnd: 612
    functionName: RG_ComputeMatrix
    functionSourceFile: /src/gpac/src/compositor/mpeg4_gradients.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_add_translation
    - gf_evg_stencil_set_radial_gradient
    - gf_divfix
    - gf_mx2d_add_scale
    - GradientGetMatrix
    - gf_sc_texture_get_stencil
    linkageType: ''
    returnType: void
    signature: void RG_ComputeMatrix(GF_TextureHandler *txh, GF_Rect *bounds, GF_Matrix2D
      *mat, Bool for_3d)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:618,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:620,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:632,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:633,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 615
    functionDepth: 2
    functionLinenumber: 615
    functionLinenumberEnd: 634
    functionName: compositor_init_radial_gradient
    functionSourceFile: /src/gpac/src/compositor/mpeg4_gradients.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void compositor_init_radial_gradient(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:638,1
    - Dst: GradientStack*::txh::update_texture_fcnt
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:639,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 641
      start: 636
    functionDepth: 2
    functionLinenumber: 636
    functionLinenumberEnd: 641
    functionName: compositor_mpeg4_get_gradient_texture
    functionSourceFile: /src/gpac/src/compositor/mpeg4_gradients.c
    functionUses: 1
    functionsReached:
    - GradientStack*::txh::update_texture_fcnt
    - gf_node_get_private
    linkageType: ''
    returnType: GF_TextureHandler
    signature: GF_TextureHandler *compositor_mpeg4_get_gradient_texture(GF_Node *node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:649,1
    - Dst: BuildRadialGradientTexture
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:652,1
    - Dst: BuildLinearGradientTexture
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:655,1
    - Dst: compositor_svg_build_gradient_texture
      Src: /src/gpac/src/compositor/mpeg4_gradients.c:662,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 666
      start: 647
    functionDepth: 9
    functionLinenumber: 647
    functionLinenumberEnd: 666
    functionName: compositor_gradient_update
    functionSourceFile: /src/gpac/src/compositor/mpeg4_gradients.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - compositor_svg_build_gradient_texture
    - BuildLinearGradientTexture
    - BuildRadialGradientTexture
    linkageType: ''
    returnType: void
    signature: void compositor_gradient_update(GF_TextureHandler *txh)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_form.c:53,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_form.c:54,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/compositor/mpeg4_form.c:55,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_form.c:56,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_form.c:57,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - st
    argTypes:
    - FormStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 59
    functionName: form_reset
    functionSourceFile: /src/gpac/src/compositor/mpeg4_form.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void form_reset(FormStack *st)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_form.c:64,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_form.c:66,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_form.c:69,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_form.c:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - st
    argTypes:
    - FormStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 72
    functionName: form_new_group
    functionSourceFile: /src/gpac/src/compositor/mpeg4_form.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_new
    - gf_list_add
    - GF_SAFEALLOC
    linkageType: ''
    returnType: FormGroup
    signature: FormGroup *form_new_group(FormStack *st)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_form.c:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - st
    - i
    argTypes:
    - FormStack*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: form_get_group
    functionSourceFile: /src/gpac/src/compositor/mpeg4_form.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE *form_get_group(FormStack *st, u32 i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_form.c:83,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_form.c:84,1
    - Dst: gf_rect_union
      Src: /src/gpac/src/compositor/mpeg4_form.c:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - fg
    argTypes:
    - FormGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 88
    functionName: fg_compute_bounds
    functionSourceFile: /src/gpac/src/compositor/mpeg4_form.c
    functionUses: 0
    functionsReached:
    - gf_rect_union
    - memset
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void fg_compute_bounds(FormGroup *fg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_form.c:96,1
    - Dst: fg_compute_bounds
      Src: /src/gpac/src/compositor/mpeg4_form.c:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - fg
    argTypes:
    - FormGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 101
    functionName: fg_update_bounds
    functionSourceFile: /src/gpac/src/compositor/mpeg4_form.c
    functionUses: 0
    functionsReached:
    - fg_compute_bounds
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void fg_update_bounds(FormGroup *fg)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/compositor/mpeg4_form.c:118,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/mpeg4_form.c:121,1
    - Dst: shin_apply
      Src: /src/gpac/src/compositor/mpeg4_form.c:122,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/mpeg4_form.c:126,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_form.c:127,1
    - Dst: sh_apply
      Src: /src/gpac/src/compositor/mpeg4_form.c:128,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_form.c:128,1
    - Dst: sh_apply
      Src: /src/gpac/src/compositor/mpeg4_form.c:130,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/mpeg4_form.c:135,1
    - Dst: svin_apply
      Src: /src/gpac/src/compositor/mpeg4_form.c:136,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/mpeg4_form.c:140,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_form.c:141,1
    - Dst: sv_apply
      Src: /src/gpac/src/compositor/mpeg4_form.c:142,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_form.c:142,1
    - Dst: sv_apply
      Src: /src/gpac/src/compositor/mpeg4_form.c:144,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/mpeg4_form.c:149,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_form.c:150,1
    - Dst: al_apply
      Src: /src/gpac/src/compositor/mpeg4_form.c:151,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_form.c:151,1
    - Dst: al_apply
      Src: /src/gpac/src/compositor/mpeg4_form.c:153,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/mpeg4_form.c:158,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_form.c:159,1
    - Dst: ar_apply
      Src: /src/gpac/src/compositor/mpeg4_form.c:160,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_form.c:160,1
    - Dst: ar_apply
      Src: /src/gpac/src/compositor/mpeg4_form.c:162,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/mpeg4_form.c:167,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_form.c:168,1
    - Dst: at_apply
      Src: /src/gpac/src/compositor/mpeg4_form.c:169,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_form.c:169,1
    - Dst: at_apply
      Src: /src/gpac/src/compositor/mpeg4_form.c:171,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/mpeg4_form.c:176,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_form.c:177,1
    - Dst: ab_apply
      Src: /src/gpac/src/compositor/mpeg4_form.c:178,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_form.c:178,1
    - Dst: ab_apply
      Src: /src/gpac/src/compositor/mpeg4_form.c:180,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/mpeg4_form.c:185,1
    - Dst: ah_apply
      Src: /src/gpac/src/compositor/mpeg4_form.c:186,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/mpeg4_form.c:190,1
    - Dst: av_apply
      Src: /src/gpac/src/compositor/mpeg4_form.c:191,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 67
    argCount: 4
    argNames:
    - st
    - constraint
    - group_idx
    - count
    argTypes:
    - FormStack*
    - char*
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 194
    functionName: form_apply
    functionSourceFile: /src/gpac/src/compositor/mpeg4_form.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - sscanf
    - ar_apply
    - at_apply
    - ab_apply
    - ah_apply
    - av_apply
    - svin_apply
    - strnicmp
    - shin_apply
    - sv_apply
    - sh_apply
    - strlen
    - al_apply
    linkageType: ''
    returnType: void
    signature: void form_apply(FormStack *st, const char *constraint, u32 *group_idx,
      u32 count)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_form.c:219,1
    - Dst: form_reset
      Src: /src/gpac/src/compositor/mpeg4_form.c:223,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_form.c:224,1
    - Dst: parent_node_predestroy
      Src: /src/gpac/src/compositor/mpeg4_form.c:225,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_form.c:226,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_form.c:230,1
    - Dst: visual_get_size_info
      Src: /src/gpac/src/compositor/mpeg4_form.c:232,1
    - Dst: gf_rect_center
      Src: /src/gpac/src/compositor/mpeg4_form.c:236,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_form.c:239,1
    - Dst: gf_bbox_from_rect
      Src: /src/gpac/src/compositor/mpeg4_form.c:245,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_form.c:253,1
    - Dst: parent_node_reset
      Src: /src/gpac/src/compositor/mpeg4_form.c:255,1
    - Dst: parent_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_form.c:265,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_form.c:273,1
    - Dst: form_reset
      Src: /src/gpac/src/compositor/mpeg4_form.c:278,1
    - Dst: form_new_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:279,1
    - Dst: form_new_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:284,1
    - Dst: fg_compute_bounds
      Src: /src/gpac/src/compositor/mpeg4_form.c:287,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_form.c:292,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_form.c:293,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_form.c:294,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_form.c:297,1
    - Dst: form_apply
      Src: /src/gpac/src/compositor/mpeg4_form.c:309,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_form.c:315,1
    - Dst: fg_compute_bounds
      Src: /src/gpac/src/compositor/mpeg4_form.c:316,1
    - Dst: gf_rect_union
      Src: /src/gpac/src/compositor/mpeg4_form.c:317,1
    - Dst: form_reset
      Src: /src/gpac/src/compositor/mpeg4_form.c:322,1
    - Dst: gf_sc_pick_in_clipper
      Src: /src/gpac/src/compositor/mpeg4_form.c:330,1
    - Dst: gf_bbox_from_rect
      Src: /src/gpac/src/compositor/mpeg4_form.c:336,1
    - Dst: compositor_2d_update_clipper
      Src: /src/gpac/src/compositor/mpeg4_form.c:345,1
    - Dst: gf_rect_pixelize
      Src: /src/gpac/src/compositor/mpeg4_form.c:347,1
    - Dst: gf_irect_intersect
      Src: /src/gpac/src/compositor/mpeg4_form.c:348,1
    - Dst: visual_3d_reset_clipper_2d
      Src: /src/gpac/src/compositor/mpeg4_form.c:353,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_form.c:357,1
    - Dst: parent_node_child_traverse
      Src: /src/gpac/src/compositor/mpeg4_form.c:358,1
    - Dst: visual_3d_reset_clipper_2d
      Src: /src/gpac/src/compositor/mpeg4_form.c:363,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_form.c:372,1
    - Dst: parent_node_child_traverse
      Src: /src/gpac/src/compositor/mpeg4_form.c:373,1
    - Dst: parent_node_reset
      Src: /src/gpac/src/compositor/mpeg4_form.c:380,1
    - Dst: form_reset
      Src: /src/gpac/src/compositor/mpeg4_form.c:381,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 126
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 204
    functionDepth: 7
    functionLinenumber: 204
    functionLinenumberEnd: 382
    functionName: TraverseForm
    functionSourceFile: /src/gpac/src/compositor/mpeg4_form.c
    functionUses: 0
    functionsReached:
    - gf_free
    - form_reset
    - gf_bbox_from_rect
    - gf_node_dirty_get
    - parent_node_predestroy
    - gf_list_count
    - memset
    - gf_sc_pick_in_clipper
    - visual_3d_reset_clipper_2d
    - gf_list_get
    - visual_get_size_info
    - gf_list_add
    - compositor_2d_update_clipper
    - gf_node_get_private
    - form_apply
    - GF_LOG
    - fg_compute_bounds
    - gf_rect_center
    - gf_rect_union
    - gf_list_enum
    - parent_node_traverse
    - gf_list_del
    - parent_node_reset
    - gf_rect_pixelize
    - form_new_group
    - parent_node_child_traverse
    - gf_irect_intersect
    linkageType: ''
    returnType: void
    signature: void TraverseForm(GF_Node *n, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_form.c:387,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_form.c:389,1
    - Dst: parent_node_setup
      Src: /src/gpac/src/compositor/mpeg4_form.c:393,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_form.c:394,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_form.c:395,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_form.c:396,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 384
    functionDepth: 2
    functionLinenumber: 384
    functionLinenumberEnd: 397
    functionName: compositor_init_form
    functionSourceFile: /src/gpac/src/compositor/mpeg4_form.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - parent_node_setup
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_form(GF_Compositor *compositor, GF_Node *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:415,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:425,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:427,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:428,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:428,1
    - Dst: fg_update_bounds
      Src: /src/gpac/src/compositor/mpeg4_form.c:431,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:431,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 3
    argNames:
    - st
    - group_idx
    - count
    argTypes:
    - FormStack*
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 405
    functionDepth: 3
    functionLinenumber: 405
    functionLinenumberEnd: 433
    functionName: shin_apply
    functionSourceFile: /src/gpac/src/compositor/mpeg4_form.c
    functionUses: 1
    functionsReached:
    - fg_update_bounds
    - form_get_group
    linkageType: ''
    returnType: void
    signature: void shin_apply(FormStack *st, u32 *group_idx, u32 count)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:443,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:444,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:447,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:458,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:459,1
    - Dst: fg_update_bounds
      Src: /src/gpac/src/compositor/mpeg4_form.c:462,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:462,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 4
    argNames:
    - st
    - space
    - group_idx
    - count
    argTypes:
    - FormStack*
    - Fixed
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 435
    functionDepth: 3
    functionLinenumber: 435
    functionLinenumberEnd: 464
    functionName: sh_apply
    functionSourceFile: /src/gpac/src/compositor/mpeg4_form.c
    functionUses: 1
    functionsReached:
    - fg_update_bounds
    - form_get_group
    linkageType: ''
    returnType: void
    signature: void sh_apply(FormStack *st, Fixed space, u32 *group_idx, u32 count)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:475,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:485,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:487,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:488,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:488,1
    - Dst: fg_update_bounds
      Src: /src/gpac/src/compositor/mpeg4_form.c:491,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:491,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 3
    argNames:
    - st
    - group_idx
    - count
    argTypes:
    - FormStack*
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 466
    functionDepth: 3
    functionLinenumber: 466
    functionLinenumberEnd: 493
    functionName: svin_apply
    functionSourceFile: /src/gpac/src/compositor/mpeg4_form.c
    functionUses: 1
    functionsReached:
    - fg_update_bounds
    - form_get_group
    linkageType: ''
    returnType: void
    signature: void svin_apply(FormStack *st, u32 *group_idx, u32 count)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:504,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:505,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:508,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:517,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:517,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:519,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:519,1
    - Dst: fg_update_bounds
      Src: /src/gpac/src/compositor/mpeg4_form.c:521,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:521,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 4
    argNames:
    - st
    - space
    - group_idx
    - count
    argTypes:
    - FormStack*
    - Fixed
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 495
    functionDepth: 3
    functionLinenumber: 495
    functionLinenumberEnd: 523
    functionName: sv_apply
    functionSourceFile: /src/gpac/src/compositor/mpeg4_form.c
    functionUses: 1
    functionsReached:
    - fg_update_bounds
    - form_get_group
    linkageType: ''
    returnType: void
    signature: void sv_apply(FormStack *st, Fixed space, u32 *group_idx, u32 count)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:532,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:538,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:548,1
    - Dst: fg_update_bounds
      Src: /src/gpac/src/compositor/mpeg4_form.c:549,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:549,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 4
    argNames:
    - st
    - space
    - group_idx
    - count
    argTypes:
    - FormStack*
    - Fixed
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 551
      start: 525
    functionDepth: 3
    functionLinenumber: 525
    functionLinenumberEnd: 551
    functionName: al_apply
    functionSourceFile: /src/gpac/src/compositor/mpeg4_form.c
    functionUses: 1
    functionsReached:
    - fg_update_bounds
    - form_get_group
    linkageType: ''
    returnType: void
    signature: void al_apply(FormStack *st, Fixed space, u32 *group_idx, u32 count)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:560,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:568,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:578,1
    - Dst: fg_update_bounds
      Src: /src/gpac/src/compositor/mpeg4_form.c:580,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:580,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 4
    argNames:
    - st
    - space
    - group_idx
    - count
    argTypes:
    - FormStack*
    - Fixed
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 553
    functionDepth: 3
    functionLinenumber: 553
    functionLinenumberEnd: 582
    functionName: ar_apply
    functionSourceFile: /src/gpac/src/compositor/mpeg4_form.c
    functionUses: 1
    functionsReached:
    - fg_update_bounds
    - form_get_group
    linkageType: ''
    returnType: void
    signature: void ar_apply(FormStack *st, Fixed space, u32 *group_idx, u32 count)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:591,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:597,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:608,1
    - Dst: fg_update_bounds
      Src: /src/gpac/src/compositor/mpeg4_form.c:609,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:609,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 4
    argNames:
    - st
    - space
    - group_idx
    - count
    argTypes:
    - FormStack*
    - Fixed
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 611
      start: 584
    functionDepth: 3
    functionLinenumber: 584
    functionLinenumberEnd: 611
    functionName: at_apply
    functionSourceFile: /src/gpac/src/compositor/mpeg4_form.c
    functionUses: 1
    functionsReached:
    - fg_update_bounds
    - form_get_group
    linkageType: ''
    returnType: void
    signature: void at_apply(FormStack *st, Fixed space, u32 *group_idx, u32 count)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:620,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:627,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:637,1
    - Dst: fg_update_bounds
      Src: /src/gpac/src/compositor/mpeg4_form.c:639,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:639,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 4
    argNames:
    - st
    - space
    - group_idx
    - count
    argTypes:
    - FormStack*
    - Fixed
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 641
      start: 613
    functionDepth: 3
    functionLinenumber: 613
    functionLinenumberEnd: 641
    functionName: ab_apply
    functionSourceFile: /src/gpac/src/compositor/mpeg4_form.c
    functionUses: 1
    functionsReached:
    - fg_update_bounds
    - form_get_group
    linkageType: ''
    returnType: void
    signature: void ab_apply(FormStack *st, Fixed space, u32 *group_idx, u32 count)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:651,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:663,1
    - Dst: fg_update_bounds
      Src: /src/gpac/src/compositor/mpeg4_form.c:665,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:665,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 3
    argNames:
    - st
    - group_idx
    - count
    argTypes:
    - FormStack*
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 643
    functionDepth: 3
    functionLinenumber: 643
    functionLinenumberEnd: 667
    functionName: ah_apply
    functionSourceFile: /src/gpac/src/compositor/mpeg4_form.c
    functionUses: 1
    functionsReached:
    - fg_update_bounds
    - form_get_group
    linkageType: ''
    returnType: void
    signature: void ah_apply(FormStack *st, u32 *group_idx, u32 count)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:677,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:689,1
    - Dst: fg_update_bounds
      Src: /src/gpac/src/compositor/mpeg4_form.c:691,1
    - Dst: form_get_group
      Src: /src/gpac/src/compositor/mpeg4_form.c:691,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 3
    argNames:
    - st
    - group_idx
    - count
    argTypes:
    - FormStack*
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 693
      start: 669
    functionDepth: 3
    functionLinenumber: 669
    functionLinenumberEnd: 693
    functionName: av_apply
    functionSourceFile: /src/gpac/src/compositor/mpeg4_form.c
    functionUses: 1
    functionsReached:
    - fg_update_bounds
    - form_get_group
    linkageType: ''
    returnType: void
    signature: void av_apply(FormStack *st, u32 *group_idx, u32 count)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/mpeg4_composite.c:84,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/mpeg4_composite.c:86,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_composite.c:89,1
    - Dst: compositor_texture_rectangles
      Src: /src/gpac/src/compositor/mpeg4_composite.c:91,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_composite.c:94,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_composite.c:105,1
    - Dst: gf_stretch_bits
      Src: /src/gpac/src/compositor/mpeg4_composite.c:112,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 45
    argCount: 3
    argNames:
    - visual
    - tr_state
    - ctx
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    - struct _drawable_context*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 61
    functionDepth: 2
    functionLinenumber: 61
    functionLinenumberEnd: 114
    functionName: composite2d_draw_bitmap
    functionSourceFile: /src/gpac/src/compositor/mpeg4_composite.c
    functionUses: 0
    functionsReached:
    - GF_COL_A
    - compositor_texture_rectangles
    - gf_stretch_bits
    - memset
    - gf_node_get_private
    linkageType: ''
    returnType: Bool
    signature: Bool composite2d_draw_bitmap(GF_VisualManager *visual, GF_TraverseState
      *tr_state, struct _drawable_context *ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_composite.c:121,1
    - Dst: gf_sc_visual_unregister
      Src: /src/gpac/src/compositor/mpeg4_composite.c:123,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_composite.c:134,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_composite.c:136,1
    - Dst: visual_del
      Src: /src/gpac/src/compositor/mpeg4_composite.c:141,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_composite.c:142,1
    - Dst: gf_sc_texture_destroy
      Src: /src/gpac/src/compositor/mpeg4_composite.c:144,1
    - Dst: ostgl_delete_context
      Src: /src/gpac/src/compositor/mpeg4_composite.c:146,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_composite.c:149,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_composite.c:150,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/mpeg4_composite.c:152,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_composite.c:153,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_composite.c:155,1
    - Dst: gf_node_traverse_children
      Src: /src/gpac/src/compositor/mpeg4_composite.c:157,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 116
    functionDepth: 7
    functionLinenumber: 116
    functionLinenumberEnd: 159
    functionName: composite_traverse
    functionSourceFile: /src/gpac/src/compositor/mpeg4_composite.c
    functionUses: 0
    functionsReached:
    - gf_free
    - visual_del
    - gf_sc_texture_destroy
    - gf_sc_visual_unregister
    - gf_node_traverse_children
    - gf_list_del
    - gf_list_enum
    - gf_node_get_private
    - ostgl_delete_context
    linkageType: ''
    returnType: void
    signature: void composite_traverse(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_composite.c:165,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_composite.c:170,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_composite.c:171,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_composite.c:174,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/mpeg4_composite.c:176,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/mpeg4_composite.c:177,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_composite.c:179,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_composite.c:182,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_composite.c:183,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_composite.c:186,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/mpeg4_composite.c:188,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/mpeg4_composite.c:189,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_composite.c:191,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_composite.c:195,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_composite.c:196,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_composite.c:199,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/mpeg4_composite.c:201,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/mpeg4_composite.c:202,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_composite.c:204,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_composite.c:208,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_composite.c:209,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_composite.c:212,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/mpeg4_composite.c:214,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/mpeg4_composite.c:215,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_composite.c:217,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_composite.c:226,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_composite.c:227,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_composite.c:230,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/mpeg4_composite.c:232,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/mpeg4_composite.c:233,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_composite.c:235,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_composite.c:239,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_composite.c:240,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_composite.c:243,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/mpeg4_composite.c:245,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/mpeg4_composite.c:246,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_composite.c:248,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 82
    argCount: 3
    argNames:
    - n
    - tr_state
    - force_check
    argTypes:
    - GF_Node*
    - GF_TraverseState*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 161
    functionDepth: 6
    functionLinenumber: 161
    functionLinenumberEnd: 256
    functionName: composite_do_bindable
    functionSourceFile: /src/gpac/src/compositor/mpeg4_composite.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_list_get
    - gf_node_event_out
    - gf_node_traverse
    - gf_node_dirty_get
    - gf_node_unregister
    - gf_node_register
    linkageType: ''
    returnType: Bool
    signature: Bool composite_do_bindable(GF_Node *n, GF_TraverseState *tr_state,
      Bool force_check)
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_composite.c:269,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_composite.c:279,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_composite.c:283,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_composite.c:291,1
    - Dst: ostgl_delete_context
      Src: /src/gpac/src/compositor/mpeg4_composite.c:354,1
    - Dst: gf_sc_texture_release
      Src: /src/gpac/src/compositor/mpeg4_composite.c:356,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_composite.c:357,1
    - Dst: ostgl_delete_context
      Src: /src/gpac/src/compositor/mpeg4_composite.c:374,1
    - Dst: gf_sc_texture_release
      Src: /src/gpac/src/compositor/mpeg4_composite.c:376,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_composite.c:378,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_composite.c:397,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_composite.c:398,1
    - Dst: gf_sc_texture_allocate
      Src: /src/gpac/src/compositor/mpeg4_composite.c:401,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/compositor/mpeg4_composite.c:427,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_composite.c:438,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_composite.c:448,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_composite.c:449,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/compositor/mpeg4_composite.c:453,1
    - Dst: ostgl_create_context
      Src: /src/gpac/src/compositor/mpeg4_composite.c:457,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_composite.c:458,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/compositor/mpeg4_composite.c:458,1
    - Dst: gf_sc_texture_setup_fbo
      Src: /src/gpac/src/compositor/mpeg4_composite.c:464,1
    - Dst: gf_sc_texture_set_stencil
      Src: /src/gpac/src/compositor/mpeg4_composite.c:470,1
    - Dst: gf_sc_texture_get_stencil
      Src: /src/gpac/src/compositor/mpeg4_composite.c:492,1
    - Dst: ostgl_make_current
      Src: /src/gpac/src/compositor/mpeg4_composite.c:497,1
    - Dst: gf_sc_texture_enable_fbo
      Src: /src/gpac/src/compositor/mpeg4_composite.c:500,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_composite.c:505,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/mpeg4_composite.c:515,1
    - Dst: gf_cmx_init
      Src: /src/gpac/src/compositor/mpeg4_composite.c:516,1
    - Dst: gf_sg_use_pixel_metrics
      Src: /src/gpac/src/compositor/mpeg4_composite.c:520,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/mpeg4_composite.c:520,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_composite.c:521,1
    - Dst: MIN
      Src: /src/gpac/src/compositor/mpeg4_composite.c:521,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_composite.c:522,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_composite.c:523,1
    - Dst: composite_do_bindable
      Src: /src/gpac/src/compositor/mpeg4_composite.c:525,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_composite.c:528,1
    - Dst: visual_draw_frame
      Src: /src/gpac/src/compositor/mpeg4_composite.c:530,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_composite.c:539,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_composite.c:540,1
    - Dst: gf_sc_texture_enable_fbo
      Src: /src/gpac/src/compositor/mpeg4_composite.c:557,1
    - Dst: gf_sc_copy_to_texture
      Src: /src/gpac/src/compositor/mpeg4_composite.c:563,1
    - Dst: gf_sc_copy_to_texture
      Src: /src/gpac/src/compositor/mpeg4_composite.c:569,1
    - Dst: gf_sc_texture_push_image
      Src: /src/gpac/src/compositor/mpeg4_composite.c:572,1
    - Dst: gf_sc_copy_to_stencil
      Src: /src/gpac/src/compositor/mpeg4_composite.c:576,1
    - Dst: gf_get_tinygl_depth
      Src: /src/gpac/src/compositor/mpeg4_composite.c:579,1
    - Dst: gf_sc_texture_set_stencil
      Src: /src/gpac/src/compositor/mpeg4_composite.c:585,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_composite.c:587,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_composite.c:589,1
    CyclomaticComplexity: 80
    EdgeCount: 80
    ICount: 212
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 258
    functionDepth: 7
    functionLinenumber: 258
    functionLinenumberEnd: 590
    functionName: composite_update
    functionSourceFile: /src/gpac/src/compositor/mpeg4_composite.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_get_tinygl_depth
    - gf_evg_stencil_new
    - gf_node_dirty_get
    - gf_mx2d_init
    - gf_node_dirty_clear
    - gf_sc_texture_enable_fbo
    - memset
    - gf_list_count
    - visual_draw_frame
    - gf_4cc_to_str
    - gf_list_get
    - gf_sc_texture_setup_fbo
    - gf_sc_texture_release
    - gf_sg_use_pixel_metrics
    - gf_sc_texture_allocate
    - composite_do_bindable
    - gf_sc_invalidate
    - gf_sc_texture_get_stencil
    - gf_evg_stencil_set_texture
    - gf_node_get_private
    - ostgl_delete_context
    - gf_sc_texture_set_stencil
    - gf_sc_texture_push_image
    - GF_LOG
    - MIN
    - gf_node_get_graph
    - gf_malloc
    - INT2FIX
    - gf_sc_copy_to_texture
    - gf_sc_copy_to_stencil
    - ostgl_make_current
    - ostgl_create_context
    - gf_cmx_init
    linkageType: ''
    returnType: void
    signature: void composite_update(GF_TextureHandler *txh)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_composite.c:597,1
    - Dst: gf_sc_texture_get_stencil
      Src: /src/gpac/src/compositor/mpeg4_composite.c:600,1
    - Dst: gf_evg_surface_attach_to_texture
      Src: /src/gpac/src/compositor/mpeg4_composite.c:602,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 593
    functionDepth: 5
    functionLinenumber: 593
    functionLinenumberEnd: 605
    functionName: composite_get_video_access
    functionSourceFile: /src/gpac/src/compositor/mpeg4_composite.c
    functionUses: 0
    functionsReached:
    - gf_sc_texture_get_stencil
    - gf_node_get_private
    - gf_evg_surface_attach_to_texture
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err composite_get_video_access(GF_VisualManager *visual)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 607
    functionDepth: 0
    functionLinenumber: 607
    functionLinenumberEnd: 609
    functionName: composite_release_video_access
    functionSourceFile: /src/gpac/src/compositor/mpeg4_composite.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void composite_release_video_access(GF_VisualManager *visual)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 614
      start: 611
    functionDepth: 0
    functionLinenumber: 611
    functionLinenumberEnd: 614
    functionName: composite_check_visual_attached
    functionSourceFile: /src/gpac/src/compositor/mpeg4_composite.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool composite_check_visual_attached(GF_VisualManager *visual)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_composite.c:620,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_composite.c:623,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_composite.c:627,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_composite.c:629,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_composite.c:632,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_composite.c:634,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_composite.c:635,1
    - Dst: gf_sc_texture_setup
      Src: /src/gpac/src/compositor/mpeg4_composite.c:636,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_composite.c:638,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_composite.c:639,1
    - Dst: visual_new
      Src: /src/gpac/src/compositor/mpeg4_composite.c:647,1
    - Dst: gf_evg_surface_new
      Src: /src/gpac/src/compositor/mpeg4_composite.c:654,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_composite.c:659,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_composite.c:660,1
    - Dst: gf_sc_visual_register
      Src: /src/gpac/src/compositor/mpeg4_composite.c:661,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 662
      start: 616
    functionDepth: 3
    functionLinenumber: 616
    functionLinenumberEnd: 662
    functionName: compositor_init_compositetexture2d
    functionSourceFile: /src/gpac/src/compositor/mpeg4_composite.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - visual_new
    - GF_LOG
    - gf_node_set_private
    - gf_sc_visual_register
    - gf_list_add
    - gf_list_del_item
    - gf_sc_texture_setup
    - gf_node_set_callback_function
    - gf_evg_surface_new
    linkageType: ''
    returnType: void
    signature: void compositor_init_compositetexture2d(GF_Compositor *compositor,
      GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_check_gl_support
      Src: /src/gpac/src/compositor/mpeg4_composite.c:671,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_composite.c:672,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_composite.c:676,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_composite.c:678,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_composite.c:681,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_composite.c:683,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_composite.c:687,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_composite.c:689,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_composite.c:690,1
    - Dst: gf_sc_texture_setup
      Src: /src/gpac/src/compositor/mpeg4_composite.c:691,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_composite.c:693,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_composite.c:694,1
    - Dst: visual_new
      Src: /src/gpac/src/compositor/mpeg4_composite.c:702,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_composite.c:711,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_composite.c:712,1
    - Dst: gf_sc_visual_register
      Src: /src/gpac/src/compositor/mpeg4_composite.c:713,1
    - Dst: camera_invalidate
      Src: /src/gpac/src/compositor/mpeg4_composite.c:715,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 38
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 716
      start: 666
    functionDepth: 3
    functionLinenumber: 666
    functionLinenumberEnd: 716
    functionName: compositor_init_compositetexture3d
    functionSourceFile: /src/gpac/src/compositor/mpeg4_composite.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - visual_new
    - GF_LOG
    - gf_node_set_private
    - gf_sc_visual_register
    - camera_invalidate
    - gf_list_add
    - gf_list_del_item
    - gf_sc_texture_setup
    - gf_node_set_callback_function
    - gf_sc_check_gl_support
    linkageType: ''
    returnType: void
    signature: void compositor_init_compositetexture3d(GF_Compositor *compositor,
      GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_composite.c:721,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 719
    functionDepth: 2
    functionLinenumber: 719
    functionLinenumberEnd: 723
    functionName: compositor_get_composite_texture
    functionSourceFile: /src/gpac/src/compositor/mpeg4_composite.c
    functionUses: 1
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: GF_TextureHandler
    signature: GF_TextureHandler *compositor_get_composite_texture(GF_Node *node)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_composite.c:742,1
    - Dst: gf_sc_texture_get_transform
      Src: /src/gpac/src/compositor/mpeg4_composite.c:755,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/mpeg4_composite.c:758,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/mpeg4_composite.c:766,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/mpeg4_composite.c:767,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_composite.c:770,1
    - Dst: gf_sg_use_pixel_metrics
      Src: /src/gpac/src/compositor/mpeg4_composite.c:775,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/mpeg4_composite.c:775,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_composite.c:776,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_composite.c:777,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/mpeg4_composite.c:780,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/mpeg4_composite.c:782,1
    - Dst: compositor_mpeg4_get_sensor_handler_ex
      Src: /src/gpac/src/compositor/mpeg4_composite.c:787,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_composite.c:788,1
    - Dst: gf_node_register
      Src: /src/gpac/src/compositor/mpeg4_composite.c:804,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_composite.c:813,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_composite.c:814,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/mpeg4_composite.c:820,1
    - Dst: gf_sc_exec_event_vrml
      Src: /src/gpac/src/compositor/mpeg4_composite.c:821,1
    - Dst: visual_execute_event
      Src: /src/gpac/src/compositor/mpeg4_composite.c:823,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_composite.c:834,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/mpeg4_composite.c:835,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/mpeg4_composite.c:867,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 113
    argCount: 4
    argNames:
    - compositor
    - composite_appear
    - ev
    - is_flush
    argTypes:
    - GF_Compositor*
    - GF_Node*
    - GF_Event*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 875
      start: 725
    functionDepth: 24
    functionLinenumber: 725
    functionLinenumberEnd: 875
    functionName: compositor_compositetexture_handle_event
    functionSourceFile: /src/gpac/src/compositor/mpeg4_composite.c
    functionUses: 1
    functionsReached:
    - gf_sc_texture_get_transform
    - INT2FIX
    - gf_list_reset
    - gf_node_get_private
    - compositor_mpeg4_get_sensor_handler_ex
    - gf_mx_init
    - gf_sg_use_pixel_metrics
    - FIX2INT
    - memset
    - gf_sc_exec_event_vrml
    - gf_node_get_graph
    - gf_list_add
    - gf_node_register
    - gf_mx_copy
    - gf_node_unregister
    - gf_mx2d_init
    - gf_mx_apply_vec
    - visual_execute_event
    linkageType: ''
    returnType: Bool
    signature: Bool compositor_compositetexture_handle_event(GF_Compositor *compositor,
      GF_Node *composite_appear, GF_Event *ev, Bool is_flush)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_composite.c:879,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_composite.c:880,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_composite.c:881,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_composite.c:883,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_composite.c:885,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - composite_appear
    - hdl
    argTypes:
    - GF_Node*
    - GF_SensorHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 886
      start: 877
    functionDepth: 2
    functionLinenumber: 877
    functionLinenumberEnd: 886
    functionName: compositor_compositetexture_sensor_delete
    functionSourceFile: /src/gpac/src/compositor/mpeg4_composite.c
    functionUses: 1
    functionsReached:
    - gf_node_get_private
    - gf_list_del_item
    linkageType: ''
    returnType: void
    signature: void compositor_compositetexture_sensor_delete(GF_Node *composite_appear,
      GF_SensorHandler *hdl)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_composite.c:891,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_composite.c:895,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_composite.c:896,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_composite.c:897,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - node
    - sx
    - sy
    argTypes:
    - GF_Node*
    - Fixed*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 903
      start: 889
    functionDepth: 2
    functionLinenumber: 889
    functionLinenumberEnd: 903
    functionName: compositor_adjust_scale
    functionSourceFile: /src/gpac/src/compositor/mpeg4_composite.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_divfix
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void compositor_adjust_scale(GF_Node *node, Fixed *sx, Fixed *sy)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_composite.c:911,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_composite.c:918,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - appear
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 924
      start: 905
    functionDepth: 2
    functionLinenumber: 905
    functionLinenumberEnd: 924
    functionName: compositor_is_composite_texture
    functionSourceFile: /src/gpac/src/compositor/mpeg4_composite.c
    functionUses: 2
    functionsReached:
    - gf_node_get_tag
    linkageType: ''
    returnType: Bool
    signature: Bool compositor_is_composite_texture(GF_Node *appear)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/scene_node_init.c:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 48
    functionDepth: 2
    functionLinenumber: 48
    functionLinenumberEnd: 52
    functionName: TraverseWorldInfo
    functionSourceFile: /src/gpac/src/compositor/scene_node_init.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void TraverseWorldInfo(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/scene_node_init.c:57,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/scene_node_init.c:58,1
    - Dst: gf_sc_key_navigator_del
      Src: /src/gpac/src/compositor/scene_node_init.c:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 61
    functionName: TraverseKeyNavigator
    functionSourceFile: /src/gpac/src/compositor/scene_node_init.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    - gf_list_del_item
    - gf_sc_key_navigator_del
    linkageType: ''
    returnType: void
    signature: void TraverseKeyNavigator(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/scene_node_init.c:66,1
    - Dst: gf_sc_change_key_navigator
      Src: /src/gpac/src/compositor/scene_node_init.c:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - node
    - _route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 63
    functionDepth: 25
    functionLinenumber: 63
    functionLinenumberEnd: 69
    functionName: on_kn_set_focus
    functionSourceFile: /src/gpac/src/compositor/scene_node_init.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    - gf_sc_change_key_navigator
    linkageType: ''
    returnType: void
    signature: void on_kn_set_focus(GF_Node*node, GF_Route *_route)
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/scene_node_init.c:80,1
    - Dst: gf_sc_get_fps
      Src: /src/gpac/src/compositor/scene_node_init.c:84,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/src/compositor/scene_node_init.c:110,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/src/compositor/scene_node_init.c:118,1
    - Dst: gf_sc_get_fps
      Src: /src/gpac/src/compositor/scene_node_init.c:137,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/src/compositor/scene_node_init.c:140,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/src/compositor/scene_node_init.c:144,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/src/compositor/scene_node_init.c:148,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/src/compositor/scene_node_init.c:152,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/src/compositor/scene_node_init.c:156,1
    - Dst: gf_sys_get_battery_state
      Src: /src/gpac/src/compositor/scene_node_init.c:160,1
    - Dst: gf_sys_get_battery_state
      Src: /src/gpac/src/compositor/scene_node_init.c:164,1
    - Dst: gf_sys_get_battery_state
      Src: /src/gpac/src/compositor/scene_node_init.c:168,1
    - Dst: gf_sc_get_option
      Src: /src/gpac/src/compositor/scene_node_init.c:173,1
    - Dst: gf_sc_get_option
      Src: /src/gpac/src/compositor/scene_node_init.c:176,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/scene_node_init.c:181,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 124
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 71
    functionDepth: 5
    functionLinenumber: 71
    functionLinenumberEnd: 182
    functionName: evaluate_scene_cap
    functionSourceFile: /src/gpac/src/compositor/scene_node_init.c
    functionUses: 0
    functionsReached:
    - gf_sys_get_rti
    - gf_sc_get_option
    - gf_node_event_out
    - gf_sc_get_fps
    - gf_node_get_private
    - gf_sys_get_battery_state
    linkageType: ''
    returnType: void
    signature: void evaluate_scene_cap(GF_Node *node, GF_Route *route)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/scene_node_init.c:188,1
    - Dst: evaluate_scene_cap
      Src: /src/gpac/src/compositor/scene_node_init.c:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - scene
    - node
    argTypes:
    - GF_Scene*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 184
    functionDepth: 6
    functionLinenumber: 184
    functionLinenumberEnd: 191
    functionName: InitTermCap
    functionSourceFile: /src/gpac/src/compositor/scene_node_init.c
    functionUses: 0
    functionsReached:
    - evaluate_scene_cap
    - gf_node_set_private
    linkageType: ''
    returnType: void
    signature: void InitTermCap(GF_Scene *scene, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/scene_node_init.c:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 197
    functionDepth: 2
    functionLinenumber: 197
    functionLinenumberEnd: 201
    functionName: svg_traverse_title
    functionSourceFile: /src/gpac/src/compositor/scene_node_init.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void svg_traverse_title(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/scene_node_init.c:211,1
    - Dst: gf_init_inline
      Src: /src/gpac/src/compositor/scene_node_init.c:218,1
    - Dst: InitMediaControl
      Src: /src/gpac/src/compositor/scene_node_init.c:223,1
    - Dst: InitMediaSensor
      Src: /src/gpac/src/compositor/scene_node_init.c:226,1
    - Dst: InitInputSensor
      Src: /src/gpac/src/compositor/scene_node_init.c:229,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/scene_node_init.c:242,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/scene_node_init.c:243,1
    - Dst: InitKeySensor
      Src: /src/gpac/src/compositor/scene_node_init.c:248,1
    - Dst: InitStringSensor
      Src: /src/gpac/src/compositor/scene_node_init.c:251,1
    - Dst: InitTermCap
      Src: /src/gpac/src/compositor/scene_node_init.c:256,1
    - Dst: gf_scene_init_storage
      Src: /src/gpac/src/compositor/scene_node_init.c:260,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/scene_node_init.c:264,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/scene_node_init.c:265,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/scene_node_init.c:266,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/scene_node_init.c:269,1
    - Dst: on_kn_set_focus
      Src: /src/gpac/src/compositor/scene_node_init.c:270,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/scene_node_init.c:280,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/scene_node_init.c:281,1
    - Dst: gf_sc_on_node_init
      Src: /src/gpac/src/compositor/scene_node_init.c:286,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 57
    argCount: 2
    argNames:
    - _scene
    - node
    argTypes:
    - void*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 206
    functionDepth: 26
    functionLinenumber: 206
    functionLinenumberEnd: 289
    functionName: gf_scene_on_node_init
    functionSourceFile: /src/gpac/src/compositor/scene_node_init.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - on_kn_set_focus
    - gf_init_inline
    - InitMediaControl
    - InitMediaSensor
    - gf_sc_on_node_init
    - gf_node_set_private
    - gf_scene_init_storage
    - InitTermCap
    - InitInputSensor
    - InitKeySensor
    - gf_list_add
    - gf_node_set_callback_function
    - InitStringSensor
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: void
    signature: void gf_scene_on_node_init(void *_scene, GF_Node *node)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/scene_node_init.c:296,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/scene_node_init.c:300,1
    - Dst: gf_inline_on_modified
      Src: /src/gpac/src/compositor/scene_node_init.c:306,1
    - Dst: MC_Modified
      Src: /src/gpac/src/compositor/scene_node_init.c:311,1
    - Dst: MS_Modified
      Src: /src/gpac/src/compositor/scene_node_init.c:314,1
    - Dst: InputSensorModified
      Src: /src/gpac/src/compositor/scene_node_init.c:317,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/scene_node_init.c:325,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 2
    argNames:
    - _is
    - node
    argTypes:
    - void*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 291
    functionDepth: 8
    functionLinenumber: 291
    functionLinenumberEnd: 328
    functionName: gf_scene_on_node_modified
    functionSourceFile: /src/gpac/src/compositor/scene_node_init.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - MC_Modified
    - InputSensorModified
    - gf_inline_on_modified
    - gf_sc_invalidate
    - MS_Modified
    linkageType: ''
    returnType: void
    signature: void gf_scene_on_node_modified(void *_is, GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_node_destroy
      Src: /src/gpac/src/compositor/scene_node_init.c:334,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - _is
    - node
    argTypes:
    - void*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 330
    functionDepth: 3
    functionLinenumber: 330
    functionLinenumberEnd: 335
    functionName: gf_scene_on_node_destroyed
    functionSourceFile: /src/gpac/src/compositor/scene_node_init.c
    functionUses: 0
    functionsReached:
    - gf_sc_node_destroy
    linkageType: ''
    returnType: void
    signature: void gf_scene_on_node_destroyed(void *_is, GF_Node *node)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_on_node_modified
      Src: /src/gpac/src/compositor/scene_node_init.c:342,1
    - Dst: gf_scene_on_node_destroyed
      Src: /src/gpac/src/compositor/scene_node_init.c:345,1
    - Dst: gf_scene_on_node_init
      Src: /src/gpac/src/compositor/scene_node_init.c:348,1
    - Dst: gf_mo_event_target_enum_node
      Src: /src/gpac/src/compositor/scene_node_init.c:357,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/scene_node_init.c:358,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 4
    argNames:
    - _is
    - type
    - n
    - param
    argTypes:
    - void*
    - GF_SGNodeCbkType
    - GF_Node*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 337
    functionDepth: 27
    functionLinenumber: 337
    functionLinenumberEnd: 364
    functionName: gf_scene_node_callback
    functionSourceFile: /src/gpac/src/compositor/scene_node_init.c
    functionUses: 0
    functionsReached:
    - gf_scene_on_node_modified
    - gf_node_dirty_set
    - gf_scene_on_node_init
    - gf_mo_event_target_enum_node
    - gf_scene_on_node_destroyed
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_scene_node_callback(void *_is, GF_SGNodeCbkType type,
      GF_Node *n, void *param)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 103
    functionName: GL_CHECK_ERR
    functionSourceFile: /src/gpac/src/compositor/gl_inc.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GL_CHECK_ERR()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ret
    - ','
    - funname
    - ','
    - args
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 135
    functionName: GLDECL
    functionSourceFile: /src/gpac/src/compositor/gl_inc.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GLDECL(ret, funname, args)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - funname
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 137
    functionName: GLDECL_FUNC
    functionSourceFile: /src/gpac/src/compositor/gl_inc.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GLDECL_FUNC(funname)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - funname
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 138
    functionName: GLDECL_FUNC_STATIC
    functionSourceFile: /src/gpac/src/compositor/gl_inc.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GLDECL_FUNC_STATIC(funname)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - funname
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 139
    functionName: GLDECL_EXTERN
    functionSourceFile: /src/gpac/src/compositor/gl_inc.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GLDECL_EXTERN(funname)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - funname
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 147
    functionName: GET_GLFUN
    functionSourceFile: /src/gpac/src/compositor/gl_inc.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_GLFUN(funname)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - funname
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 153
    functionName: GET_GLFUN
    functionSourceFile: /src/gpac/src/compositor/gl_inc.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_GLFUN(funname)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/visual_manager_3d.c:38,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:40,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/visual_manager_3d.c:43,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/visual_manager_3d.c:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 46
    functionName: drawable_3d_new
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 22
    functionsReached:
    - new_mesh
    - GF_LOG
    - gf_node_set_private
    - GF_SAFEALLOC
    linkageType: ''
    returnType: Drawable3D
    signature: Drawable3D *drawable_3d_new(GF_Node *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/visual_manager_3d.c:49,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/visual_manager_3d.c:51,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d.c:52,1
    - Dst: gf_sc_check_focus_upon_destroy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:54,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 47
    functionDepth: 3
    functionLinenumber: 47
    functionLinenumberEnd: 55
    functionName: drawable_3d_del
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 5
    functionsReached:
    - gf_free
    - gf_node_get_private
    - mesh_free
    - gf_sc_check_focus_upon_destroy
    linkageType: ''
    returnType: void
    signature: void drawable_3d_del(GF_Node *n)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/visual_manager_3d.c:75,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/visual_manager_3d.c:77,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/visual_manager_3d.c:79,1
    - Dst: gf_path_reset
      Src: /src/gpac/src/compositor/visual_manager_3d.c:80,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:84,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/visual_manager_3d.c:85,1
    - Dst: gf_node_traverse_children
      Src: /src/gpac/src/compositor/visual_manager_3d.c:91,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:94,1
    - Dst: visual_3d_draw_bbox
      Src: /src/gpac/src/compositor/visual_manager_3d.c:99,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 3
    argNames:
    - node
    - tr_state
    - orig_bounds
    argTypes:
    - GF_Node*
    - GF_TraverseState*
    - GF_BBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 58
    functionDepth: 8
    functionLinenumber: 58
    functionLinenumberEnd: 100
    functionName: drawable3d_check_focus_highlight
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 2
    functionsReached:
    - drawable_reset_path
    - gf_node_set_private
    - gf_mx_init
    - visual_3d_draw_bbox
    - gf_node_traverse_children
    - gf_path_reset
    - gf_mx_copy
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void drawable3d_check_focus_highlight(GF_Node *node, GF_TraverseState
      *tr_state, GF_BBox *orig_bounds)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:115,1
    - Dst: MIN
      Src: /src/gpac/src/compositor/visual_manager_3d.c:115,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:122,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:123,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:124,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:125,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:129,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:130,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:132,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:133,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:137,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:138,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:144,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:145,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:152,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:153,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:158,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:161,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 53
    argCount: 2
    argNames:
    - visual
    - tr_state
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 172
    functionName: visual_3d_setup_traversing_state
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 0
    functionsReached:
    - gf_divfix
    - INT2FIX
    - MIN
    linkageType: ''
    returnType: void
    signature: void visual_3d_setup_traversing_state(GF_VisualManager *visual, GF_TraverseState
      *tr_state)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:204,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/compositor/visual_manager_3d.c:206,1
    - Dst: MAX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:207,1
    - Dst: MAX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:208,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:209,1
    - Dst: gf_tan
      Src: /src/gpac/src/compositor/visual_manager_3d.c:209,1
    - Dst: gf_sg_use_pixel_metrics
      Src: /src/gpac/src/compositor/visual_manager_3d.c:222,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/visual_manager_3d.c:222,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/visual_manager_3d.c:224,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/visual_manager_3d.c:225,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/visual_manager_3d.c:226,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/visual_manager_3d.c:227,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:235,1
    - Dst: gf_tan
      Src: /src/gpac/src/compositor/visual_manager_3d.c:235,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:237,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:247,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:247,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:248,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:257,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:265,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:265,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:268,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:269,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:272,1
    - Dst: gf_tan
      Src: /src/gpac/src/compositor/visual_manager_3d.c:272,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/compositor/visual_manager_3d.c:274,1
    - Dst: gf_atan2
      Src: /src/gpac/src/compositor/visual_manager_3d.c:275,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/visual_manager_3d.c:286,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/visual_manager_3d.c:287,1
    - Dst: camera_reset_viewpoint
      Src: /src/gpac/src/compositor/visual_manager_3d.c:303,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/visual_manager_3d.c:304,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/visual_manager_3d.c:305,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 74
    argCount: 7
    argNames:
    - tr_state
    - vp
    - animate_change
    - fieldOfView
    - position
    - orientation
    - local_center
    argTypes:
    - GF_TraverseState*
    - GF_Node*
    - Bool
    - Fixed
    - SFVec3f
    - SFRotation
    - SFVec3f
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 175
    functionDepth: 5
    functionLinenumber: 175
    functionLinenumberEnd: 306
    functionName: visual_3d_viewpoint_change
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_vec_len
    - INT2FIX
    - gf_tan
    - gf_vec_diff
    - gf_node_dirty_set
    - gf_divfix
    - gf_muldiv
    - gf_mx_init
    - gf_sg_use_pixel_metrics
    - gf_atan2
    - gf_mx_add_scale
    - gf_node_get_graph
    - gf_sc_invalidate
    - MAX
    - gf_mx_apply_vec
    - gf_mulfix
    - camera_reset_viewpoint
    linkageType: ''
    returnType: void
    signature: void visual_3d_viewpoint_change(GF_TraverseState *tr_state, GF_Node
      *vp, Bool animate_change, Fixed fieldOfView, SFVec3f position, SFRotation orientation,
      SFVec3f local_center)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/visual_manager_3d.c:318,1
    - Dst: Bindable_GetIsBound
      Src: /src/gpac/src/compositor/visual_manager_3d.c:319,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_3d.c:320,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:336,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:336,1
    - Dst: gf_atan2
      Src: /src/gpac/src/compositor/visual_manager_3d.c:338,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:338,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:344,1
    - Dst: visual_3d_viewpoint_change
      Src: /src/gpac/src/compositor/visual_manager_3d.c:349,1
    - Dst: camera_stop_anim
      Src: /src/gpac/src/compositor/visual_manager_3d.c:352,1
    - Dst: camera_reset_viewpoint
      Src: /src/gpac/src/compositor/visual_manager_3d.c:353,1
    - Dst: gf_sc_fit_world_to_screen
      Src: /src/gpac/src/compositor/visual_manager_3d.c:355,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/visual_manager_3d.c:357,1
    - Dst: camera_update_stereo
      Src: /src/gpac/src/compositor/visual_manager_3d.c:386,1
    - Dst: camera_update
      Src: /src/gpac/src/compositor/visual_manager_3d.c:389,1
    - Dst: visual_3d_projection_matrix_modified
      Src: /src/gpac/src/compositor/visual_manager_3d.c:395,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/visual_manager_3d.c:396,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 57
    argCount: 2
    argNames:
    - tr_state
    - is_layer
    argTypes:
    - GF_TraverseState*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 308
    functionDepth: 7
    functionLinenumber: 308
    functionLinenumberEnd: 403
    functionName: visual_3d_setup_projection
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_list_get
    - INT2FIX
    - gf_node_traverse
    - camera_update_stereo
    - gf_divfix
    - gf_mx_init
    - gf_atan2
    - gf_sc_fit_world_to_screen
    - visual_3d_viewpoint_change
    - Bindable_GetIsBound
    - visual_3d_projection_matrix_modified
    - gf_sc_invalidate
    - camera_stop_anim
    - camera_update
    - camera_reset_viewpoint
    linkageType: ''
    returnType: void
    signature: void visual_3d_setup_projection(GF_TraverseState *tr_state, Bool is_layer)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: visual_3d_clear_depth
      Src: /src/gpac/src/compositor/visual_manager_3d.c:417,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:422,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:423,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:424,1
    - Dst: visual_3d_clear
      Src: /src/gpac/src/compositor/visual_manager_3d.c:425,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/visual_manager_3d.c:429,1
    - Dst: Bindable_GetIsBound
      Src: /src/gpac/src/compositor/visual_manager_3d.c:430,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_3d.c:431,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:439,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:440,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:441,1
    - Dst: visual_3d_clear
      Src: /src/gpac/src/compositor/visual_manager_3d.c:451,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 2
    argNames:
    - tr_state
    - layer_type
    argTypes:
    - GF_TraverseState*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 405
    functionDepth: 6
    functionLinenumber: 405
    functionLinenumberEnd: 455
    functionName: visual_3d_draw_background
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - INT2FIX
    - gf_node_traverse
    - visual_3d_clear_depth
    - visual_3d_clear
    - Bindable_GetIsBound
    linkageType: ''
    returnType: void
    signature: void visual_3d_draw_background(GF_TraverseState *tr_state, u32 layer_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:464,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:467,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:468,1
    - Dst: gf_mx_perspective
      Src: /src/gpac/src/compositor/visual_manager_3d.c:470,1
    - Dst: visual_3d_projection_matrix_modified
      Src: /src/gpac/src/compositor/visual_manager_3d.c:471,1
    - Dst: gf_mx_lookat
      Src: /src/gpac/src/compositor/visual_manager_3d.c:474,1
    - Dst: visual_3d_draw_background
      Src: /src/gpac/src/compositor/visual_manager_3d.c:476,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:479,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:480,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 2
    argNames:
    - tr_state
    - layer_type
    argTypes:
    - GF_TraverseState*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 460
    functionDepth: 7
    functionLinenumber: 460
    functionLinenumberEnd: 483
    functionName: visual_3d_draw_background_on_axis
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 0
    functionsReached:
    - gf_mx_perspective
    - gf_mx_lookat
    - visual_3d_draw_background
    - gf_divfix
    - visual_3d_projection_matrix_modified
    - gf_mx_copy
    linkageType: ''
    returnType: void
    signature: void visual_3d_draw_background_on_axis(GF_TraverseState *tr_state,
      u32 layer_type)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/visual_manager_3d.c:496,1
    - Dst: Bindable_GetIsBound
      Src: /src/gpac/src/compositor/visual_manager_3d.c:497,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_3d.c:498,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:504,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:505,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:506,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:535,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:536,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:537,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:538,1
    - Dst: camera_animate
      Src: /src/gpac/src/compositor/visual_manager_3d.c:543,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/visual_manager_3d.c:544,1
    - Dst: visual_3d_enable_depth_buffer
      Src: /src/gpac/src/compositor/visual_manager_3d.c:551,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:564,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:565,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:568,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:570,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:573,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:575,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:584,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:585,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:594,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:595,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:596,1
    - Dst: visual_3d_set_viewport
      Src: /src/gpac/src/compositor/visual_manager_3d.c:597,1
    - Dst: visual_3d_clear
      Src: /src/gpac/src/compositor/visual_manager_3d.c:598,1
    - Dst: visual_3d_set_viewport
      Src: /src/gpac/src/compositor/visual_manager_3d.c:601,1
    - Dst: visual_3d_set_scissor
      Src: /src/gpac/src/compositor/visual_manager_3d.c:603,1
    - Dst: visual_3d_draw_background_on_axis
      Src: /src/gpac/src/compositor/visual_manager_3d.c:606,1
    - Dst: visual_3d_setup_projection
      Src: /src/gpac/src/compositor/visual_manager_3d.c:610,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:624,1
    - Dst: visual_3d_set_viewport
      Src: /src/gpac/src/compositor/visual_manager_3d.c:630,1
    - Dst: visual_3d_set_scissor
      Src: /src/gpac/src/compositor/visual_manager_3d.c:632,1
    - Dst: visual_3d_draw_background_on_axis
      Src: /src/gpac/src/compositor/visual_manager_3d.c:635,1
    - Dst: visual_3d_setup_projection
      Src: /src/gpac/src/compositor/visual_manager_3d.c:639,1
    - Dst: visual_3d_set_viewport
      Src: /src/gpac/src/compositor/visual_manager_3d.c:644,1
    - Dst: visual_3d_draw_background_on_axis
      Src: /src/gpac/src/compositor/visual_manager_3d.c:647,1
    - Dst: visual_3d_setup_projection
      Src: /src/gpac/src/compositor/visual_manager_3d.c:651,1
    - Dst: visual_3d_clear_depth
      Src: /src/gpac/src/compositor/visual_manager_3d.c:654,1
    - Dst: visual_3d_draw_background
      Src: /src/gpac/src/compositor/visual_manager_3d.c:660,1
    - Dst: visual_3d_enable_headlight
      Src: /src/gpac/src/compositor/visual_manager_3d.c:665,1
    - Dst: visual_3d_set_scissor
      Src: /src/gpac/src/compositor/visual_manager_3d.c:669,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 112
    argCount: 2
    argNames:
    - tr_state
    - layer_type
    argTypes:
    - GF_TraverseState*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 485
    functionDepth: 8
    functionLinenumber: 485
    functionLinenumberEnd: 670
    functionName: visual_3d_init_draw
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_list_get
    - visual_3d_enable_depth_buffer
    - gf_node_traverse
    - INT2FIX
    - gf_node_dirty_set
    - visual_3d_setup_projection
    - visual_3d_draw_background
    - gf_divfix
    - camera_animate
    - visual_3d_draw_background_on_axis
    - visual_3d_clear_depth
    - visual_3d_clear
    - Bindable_GetIsBound
    - visual_3d_set_scissor
    - visual_3d_set_viewport
    - gf_mulfix
    - visual_3d_enable_headlight
    linkageType: ''
    returnType: void
    signature: void visual_3d_init_draw(GF_TraverseState *tr_state, u32 layer_type)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/visual_manager_3d.c:682,1
    - Dst: gf_sc_texture_get_handler
      Src: /src/gpac/src/compositor/visual_manager_3d.c:700,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/visual_manager_3d.c:706,1
    - Dst: gf_sc_texture_get_handler
      Src: /src/gpac/src/compositor/visual_manager_3d.c:707,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/visual_manager_3d.c:716,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 34
    argCount: 2
    argNames:
    - tr_state
    - geom
    argTypes:
    - GF_TraverseState*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 673
    functionDepth: 2
    functionLinenumber: 673
    functionLinenumberEnd: 719
    functionName: visual_3d_has_alpha
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_sc_texture_get_handler
    - gf_node_get_private
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE visual_3d_has_alpha(GF_TraverseState *tr_state, GF_Node *geom)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/visual_manager_3d.c:728,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/visual_manager_3d.c:730,1
    - Dst: visual_3d_has_alpha
      Src: /src/gpac/src/compositor/visual_manager_3d.c:734,1
    - Dst: visual_3d_set_clipper_2d
      Src: /src/gpac/src/compositor/visual_manager_3d.c:738,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_3d.c:741,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/visual_manager_3d.c:747,1
    - Dst: visual_3d_reset_clipper_2d
      Src: /src/gpac/src/compositor/visual_manager_3d.c:752,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/visual_manager_3d.c:756,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:758,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/visual_manager_3d.c:762,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:766,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:768,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/visual_manager_3d.c:774,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/visual_manager_3d.c:775,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:776,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/visual_manager_3d.c:777,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:784,1
    - Dst: gf_mx_apply_bbox
      Src: /src/gpac/src/compositor/visual_manager_3d.c:789,1
    - Dst: gf_mx_apply_bbox
      Src: /src/gpac/src/compositor/visual_manager_3d.c:790,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/visual_manager_3d.c:798,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/visual_manager_3d.c:800,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/compositor/visual_manager_3d.c:802,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/visual_manager_3d.c:806,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 53
    argCount: 2
    argNames:
    - tr_state
    - geometry
    argTypes:
    - GF_TraverseState*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 807
      start: 721
    functionDepth: 6
    functionLinenumber: 721
    functionLinenumberEnd: 807
    functionName: visual_3d_register_context
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 1
    functionsReached:
    - gf_list_insert
    - gf_assert
    - gf_list_new
    - gf_node_traverse
    - gf_list_get
    - GF_SAFEALLOC
    - GF_LOG
    - memcpy
    - visual_3d_set_clipper_2d
    - gf_node_dirty_clear
    - visual_3d_reset_clipper_2d
    - gf_mx_apply_bbox
    - gf_list_count
    - gf_list_add
    - gf_list_enum
    - gf_node_get_private
    - visual_3d_has_alpha
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void visual_3d_register_context(GF_TraverseState *tr_state, GF_Node
      *geometry)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/visual_manager_3d.c:816,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/visual_manager_3d.c:819,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/visual_manager_3d.c:824,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:826,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:828,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_3d.c:829,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:831,1
    - Dst: visual_3d_set_clipper_2d
      Src: /src/gpac/src/compositor/visual_manager_3d.c:836,1
    - Dst: visual_3d_set_clip_plane
      Src: /src/gpac/src/compositor/visual_manager_3d.c:841,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:844,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:846,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_3d.c:856,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/visual_manager_3d.c:862,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/visual_manager_3d.c:868,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/visual_manager_3d.c:869,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_3d.c:870,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d.c:871,1
    - Dst: visual_3d_reset_clipper_2d
      Src: /src/gpac/src/compositor/visual_manager_3d.c:874,1
    - Dst: visual_3d_reset_clip_plane
      Src: /src/gpac/src/compositor/visual_manager_3d.c:875,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/visual_manager_3d.c:878,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d.c:879,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/visual_manager_3d.c:882,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 46
    argCount: 2
    argNames:
    - visual
    - tr_state
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 883
      start: 809
    functionDepth: 6
    functionLinenumber: 809
    functionLinenumberEnd: 883
    functionName: visual_3d_flush_contexts
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_node_traverse
    - gf_list_reset
    - memcpy
    - visual_3d_set_clipper_2d
    - gf_node_dirty_clear
    - gf_list_count
    - gf_mx_add_matrix
    - visual_3d_set_clip_plane
    - gf_mx_copy
    - visual_3d_reset_clip_plane
    - gf_list_enum
    - visual_3d_reset_clipper_2d
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void visual_3d_flush_contexts(GF_VisualManager *visual, GF_TraverseState
      *tr_state)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: visual_3d_init_draw
      Src: /src/gpac/src/compositor/visual_manager_3d.c:891,1
    - Dst: visual_3d_check_collisions
      Src: /src/gpac/src/compositor/visual_manager_3d.c:895,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/visual_manager_3d.c:899,1
    - Dst: Bindable_GetIsBound
      Src: /src/gpac/src/compositor/visual_manager_3d.c:901,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_3d.c:901,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_3d.c:907,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_3d.c:912,1
    - Dst: visual_3d_flush_contexts
      Src: /src/gpac/src/compositor/visual_manager_3d.c:915,1
    - Dst: visual_3d_clear_all_lights
      Src: /src/gpac/src/compositor/visual_manager_3d.c:918,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - tr_state
    - root_node
    argTypes:
    - GF_TraverseState*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 919
      start: 884
    functionDepth: 9
    functionLinenumber: 884
    functionLinenumberEnd: 919
    functionName: visual_3d_draw_node
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_node_traverse
    - visual_3d_clear_all_lights
    - visual_3d_init_draw
    - visual_3d_check_collisions
    - Bindable_GetIsBound
    - visual_3d_flush_contexts
    linkageType: ''
    returnType: void
    signature: void visual_3d_draw_node(GF_TraverseState *tr_state, GF_Node *root_node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_rect_center
      Src: /src/gpac/src/compositor/visual_manager_3d.c:926,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:926,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:926,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:928,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:929,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:933,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:934,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/visual_manager_3d.c:940,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_3d.c:943,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/visual_manager_3d.c:943,1
    - Dst: gf_rect_pixelize
      Src: /src/gpac/src/compositor/visual_manager_3d.c:947,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/visual_manager_3d.c:949,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 2
    argNames:
    - visual
    - tr_state
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 950
      start: 921
    functionDepth: 6
    functionLinenumber: 921
    functionLinenumberEnd: 950
    functionName: visual_3d_setup_clipper
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - INT2FIX
    - gf_node_traverse
    - gf_rect_pixelize
    - gf_mx_init
    - gf_rect_center
    - gf_list_count
    linkageType: ''
    returnType: void
    signature: void visual_3d_setup_clipper(GF_VisualManager *visual, GF_TraverseState
      *tr_state)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/visual_manager_3d.c:955,1
    - Dst: compositor_3d_enable_fbo
      Src: /src/gpac/src/compositor/visual_manager_3d.c:959,1
    - Dst: visual_3d_setup
      Src: /src/gpac/src/compositor/visual_manager_3d.c:961,1
    - Dst: visual_3d_setup_traversing_state
      Src: /src/gpac/src/compositor/visual_manager_3d.c:965,1
    - Dst: visual_3d_setup_clipper
      Src: /src/gpac/src/compositor/visual_manager_3d.c:970,1
    - Dst: visual_3d_init_autostereo
      Src: /src/gpac/src/compositor/visual_manager_3d.c:973,1
    - Dst: visual_3d_init_shaders
      Src: /src/gpac/src/compositor/visual_manager_3d.c:978,1
    - Dst: visual_3d_draw_node
      Src: /src/gpac/src/compositor/visual_manager_3d.c:984,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/visual_manager_3d.c:988,1
    - Dst: gf_sc_traverse_subscene
      Src: /src/gpac/src/compositor/visual_manager_3d.c:990,1
    - Dst: visual_3d_end_auto_stereo_pass
      Src: /src/gpac/src/compositor/visual_manager_3d.c:994,1
    - Dst: visual_3d_draw_node
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1001,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1003,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1003,1
    - Dst: compositor_3d_enable_fbo
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1006,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 4
    argNames:
    - visual
    - root
    - tr_state
    - is_root_visual
    argTypes:
    - GF_VisualManager*
    - GF_Node*
    - GF_TraverseState*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1009
      start: 952
    functionDepth: 11
    functionLinenumber: 952
    functionLinenumberEnd: 1009
    functionName: visual_3d_draw_frame
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 0
    functionsReached:
    - visual_3d_setup_traversing_state
    - visual_3d_draw_node
    - visual_3d_end_auto_stereo_pass
    - compositor_3d_enable_fbo
    - gf_sc_traverse_subscene
    - visual_3d_setup_clipper
    - GF_LOG
    - visual_3d_setup
    - visual_3d_init_autostereo
    - gf_list_enum
    - gf_sys_clock
    - visual_3d_init_shaders
    linkageType: ''
    returnType: Bool
    signature: Bool visual_3d_draw_frame(GF_VisualManager *visual, GF_Node *root,
      GF_TraverseState *tr_state, Bool is_root_visual)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_Compositor*::video_out::ProcessEvent
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1017,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1019
      start: 1011
    functionDepth: 0
    functionLinenumber: 1011
    functionLinenumberEnd: 1019
    functionName: reset_collide_cursor
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 1
    functionsReached:
    - GF_Compositor*::video_out::ProcessEvent
    linkageType: ''
    returnType: void
    signature: void reset_collide_cursor(GF_Compositor *compositor)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_equal
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1037,1
    - Dst: reset_collide_cursor
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1038,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1047,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1048,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1049,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1066,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1067,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1069,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1072,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1084,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1084,1
    - Dst: fabs
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1088,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1089,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1091,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1092,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1093,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1093,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1093,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1094,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1094,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1094,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1094,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1096,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1097,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1098,1
    - Dst: GF_TraverseState*::visual::compositor::video_out::ProcessEvent
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1110,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1117,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1122,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1122,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1122,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1128,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1129,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1130,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1131,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1132,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1132,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1132,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1133,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1133,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1133,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1135,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1136,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1138,1
    - Dst: reset_collide_cursor
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1145,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1147,1
    - Dst: visual_3d_setup_projection
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1150,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 102
    argCount: 3
    argNames:
    - tr_state
    - on_node
    - node_list
    argTypes:
    - GF_TraverseState*
    - GF_Node*
    - GF_ChildNodeItem*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1151
      start: 1021
    functionDepth: 8
    functionLinenumber: 1021
    functionLinenumberEnd: 1151
    functionName: visual_3d_check_collisions
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 2
    functionsReached:
    - gf_vec_len
    - gf_vec_add
    - gf_vec_equal
    - gf_node_traverse
    - gf_vec_scale
    - ABS
    - GF_TraverseState*::visual::compositor::video_out::ProcessEvent
    - visual_3d_setup_projection
    - gf_vec_diff
    - GF_LOG
    - gf_vec_norm
    - fabs
    - reset_collide_cursor
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void visual_3d_check_collisions(GF_TraverseState *tr_state, GF_Node
      *on_node, GF_ChildNodeItem *node_list)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1177,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1182,1
    - Dst: gf_mx_apply_bbox_sphere
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1188,1
    - Dst: gf_bbox_point_inside
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1192,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1194,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1199,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1201,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1203,1
    - Dst: gf_plane_get_distance
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1219,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1222,1
    - Dst: gf_mx_apply_bbox
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1229,1
    - Dst: gf_bbox_get_vertices
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1231,1
    - Dst: gf_plane_get_distance
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1239,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1242,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1242,1
    - Dst: gf_plane_get_distance
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1248,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1251,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1251,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1258,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 68
    argCount: 3
    argNames:
    - tr_state
    - bbox
    - skip_near
    argTypes:
    - GF_TraverseState*
    - GF_BBox*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1261
      start: 1163
    functionDepth: 1
    functionLinenumber: 1163
    functionLinenumberEnd: 1261
    functionName: visual_3d_node_cull
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 4
    functionsReached:
    - gf_vec_len
    - gf_assert
    - gf_plane_get_distance
    - gf_mx_apply_bbox_sphere
    - gf_bbox_get_vertices
    - gf_bbox_point_inside
    - GF_LOG
    - gf_vec_diff
    - gf_mx_apply_bbox
    - FIX2FLT
    linkageType: ''
    returnType: Bool
    signature: Bool visual_3d_node_cull(GF_TraverseState *tr_state, GF_BBox *bbox,
      Bool skip_near)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1269,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1270,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1275,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1276,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1282,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1282,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1282,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1283,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1284,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1284,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1284,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1285,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1292,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1293,1
    - Dst: gf_mx_apply_vec_4x4
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1308,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1310,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1311,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1312,1
    - Dst: gf_mx_apply_vec_4x4
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1318,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1320,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1321,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1322,1
    - Dst: gf_ray
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1324,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 46
    argCount: 4
    argNames:
    - visual
    - tr_state
    - ix
    - iy
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1329
      start: 1263
    functionDepth: 1
    functionLinenumber: 1263
    functionLinenumberEnd: 1329
    functionName: visual_3d_setup_ray
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 2
    functionsReached:
    - INT2FIX
    - gf_mx_apply_vec_4x4
    - gf_divfix
    - gf_mulfix
    - gf_ray
    linkageType: ''
    returnType: Bool
    signature: Bool visual_3d_setup_ray(GF_VisualManager *visual, GF_TraverseState
      *tr_state, s32 ix, s32 iy)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: visual_3d_setup_traversing_state
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1334,1
    - Dst: visual_3d_setup_projection
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1335,1
    - Dst: visual_3d_setup_ray
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1338,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1341,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1342,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1342,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1342,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1343,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1343,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1343,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1348,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1353,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1357,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1357,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 4
    argNames:
    - visual
    - tr_state
    - ev
    - children
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    - GF_Event*
    - GF_ChildNodeItem*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1359
      start: 1331
    functionDepth: 8
    functionLinenumber: 1331
    functionLinenumberEnd: 1359
    functionName: visual_3d_pick_node
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 1
    functionsReached:
    - visual_3d_setup_ray
    - visual_3d_setup_traversing_state
    - gf_node_traverse
    - gf_list_reset
    - visual_3d_setup_projection
    - GF_LOG
    - gf_sg_get_root_node
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void visual_3d_pick_node(GF_VisualManager *visual, GF_TraverseState
      *tr_state, GF_Event *ev, GF_ChildNodeItem *children)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1378,1
    - Dst: visual_3d_node_cull
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1384,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1391,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1392,1
    - Dst: gf_mx_apply_ray
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1393,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1400,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1402,1
    - Dst: gf_bbox_from_rect
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1406,1
    - Dst: gf_bbox_plane_relation
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1408,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1409,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1409,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1409,1
    - Dst: compositor_get_2d_plane_intersection
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1416,1
    - Dst: gf_path_point_over
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1417,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1420,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1421,1
    - Dst: memset
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1424,1
    - Dst: drawable_get_aspect_2d_mpeg4
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1425,1
    - Dst: drawable_get_strikeinfo
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1427,1
    - Dst: gf_path_point_over
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1428,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1431,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1432,1
    - Dst: gf_mesh_intersect_ray
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1438,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1445,1
    - Dst: gf_plane_get_distance
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1448,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1449,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1449,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1449,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1454,1
    - Dst: gf_vec_lensq
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1455,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1457,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1457,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1457,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1457,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1457,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1462,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1464,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1464,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1467,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1468,1
    - Dst: compositor_is_composite_texture
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1475,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1482,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1482,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1482,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1483,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1483,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1483,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 91
    argCount: 4
    argNames:
    - n
    - tr_state
    - mesh
    - drawable
    argTypes:
    - GF_Node*
    - GF_TraverseState*
    - GF_Mesh*
    - Drawable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1484
      start: 1363
    functionDepth: 4
    functionLinenumber: 1363
    functionLinenumberEnd: 1484
    functionName: visual_3d_vrml_drawable_pick
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 4
    functionsReached:
    - gf_bbox_plane_relation
    - visual_3d_node_cull
    - gf_node_get_class_name
    - drawable_get_strikeinfo
    - gf_bbox_from_rect
    - gf_list_count
    - compositor_get_2d_plane_intersection
    - memset
    - gf_path_point_over
    - gf_mx_copy
    - gf_mx_apply_ray
    - gf_vec_lensq
    - drawable_get_aspect_2d_mpeg4
    - FIX2FLT
    - gf_vec_dot
    - gf_plane_get_distance
    - gf_list_get
    - gf_mesh_intersect_ray
    - gf_node_get_name
    - gf_list_add
    - gf_list_reset
    - GF_LOG
    - gf_divfix
    - gf_vec_diff
    - compositor_is_composite_texture
    - gf_mx_inverse
    - gf_mx_apply_vec
    linkageType: ''
    returnType: void
    signature: void visual_3d_vrml_drawable_pick(GF_Node *n, GF_TraverseState *tr_state,
      GF_Mesh *mesh, Drawable *drawable)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1493,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1501,1
    - Dst: visual_3d_node_cull
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1512,1
    - Dst: camera_get_target_dir
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1521,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1522,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1523,1
    - Dst: camera_get_right_dir
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1524,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1525,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1526,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1528,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1529,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1531,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1532,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1533,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1534,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1536,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1537,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1538,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1539,1
    - Dst: gf_mesh_closest_face
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1543,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1545,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1546,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1547,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1554,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1555,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1556,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1557,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1558,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1558,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1558,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1559,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1560,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1560,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1560,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1565,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1565,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1565,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1573,1
    - Dst: gf_mx_apply_ray
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1574,1
    - Dst: gf_mesh_intersect_ray
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1576,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1579,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1580,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1581,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1586,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1587,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1587,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1587,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1588,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1589,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1589,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1589,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1592,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1592,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1592,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 72
    argCount: 2
    argNames:
    - node
    - tr_state
    argTypes:
    - GF_Node*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1596
      start: 1487
    functionDepth: 4
    functionLinenumber: 1487
    functionLinenumberEnd: 1596
    functionName: visual_3d_vrml_drawable_collide
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_vec_add
    - visual_3d_node_cull
    - gf_mesh_closest_face
    - gf_log_tool_level_on
    - gf_vec_norm
    - gf_mx_copy
    - gf_mx_apply_ray
    - FIX2FLT
    - gf_vec_len
    - gf_mesh_intersect_ray
    - camera_get_right_dir
    - gf_node_get_private
    - gf_vec_scale
    - GF_LOG
    - camera_get_target_dir
    - gf_vec_diff
    - gf_mx_inverse
    - gf_mx_apply_vec
    linkageType: ''
    returnType: void
    signature: void visual_3d_vrml_drawable_collide(GF_Node *node, GF_TraverseState
      *tr_state)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1605,1
    - Dst: visual_3d_set_material_2d_argb
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1606,1
    - Dst: gf_sc_texture_set_blend_mode
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1607,1
    - Dst: visual_3d_set_state
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1609,1
    - Dst: gf_sc_texture_set_blend_mode
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1610,1
    - Dst: gf_rect_from_bbox
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1615,1
    - Dst: gf_sc_texture_enable_ex
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1616,1
    - Dst: gf_sc_texture_enable
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1619,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - tr_state
    - asp
    - mesh
    argTypes:
    - GF_TraverseState*
    - DrawAspect2D*
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1624
      start: 1601
    functionDepth: 1
    functionLinenumber: 1601
    functionLinenumberEnd: 1624
    functionName: visual_3d_setup_texture_2d
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 0
    functionsReached:
    - gf_sc_texture_enable_ex
    - gf_rect_from_bbox
    - GF_COL_A
    - gf_sc_texture_enable
    - visual_3d_set_state
    - visual_3d_set_material_2d_argb
    - gf_sc_texture_set_blend_mode
    linkageType: ''
    returnType: GF_TextureHandler
    signature: GF_TextureHandler *visual_3d_setup_texture_2d(GF_TraverseState *tr_state,
      DrawAspect2D *asp, GF_Mesh *mesh)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1632,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1633,1
    - Dst: gf_sc_texture_set_blend_mode
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1640,1
    - Dst: visual_3d_set_material_2d
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1643,1
    - Dst: gf_sc_texture_set_blend_mode
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1644,1
    - Dst: visual_3d_set_state
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1646,1
    - Dst: gf_sc_texture_set_blend_mode
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1647,1
    - Dst: gf_sc_texture_enable
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1650,1
    - Dst: visual_3d_set_material_2d_argb
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1655,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 2
    argNames:
    - tr_state
    - asp
    argTypes:
    - GF_TraverseState*
    - DrawAspect2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1656
      start: 1626
    functionDepth: 2
    functionLinenumber: 1626
    functionLinenumberEnd: 1656
    functionName: visual_3d_set_2d_strike
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_sc_texture_enable
    - visual_3d_set_state
    - visual_3d_set_material_2d
    - visual_3d_set_material_2d_argb
    - gf_sc_texture_set_blend_mode
    linkageType: ''
    returnType: void
    signature: void visual_3d_set_2d_strike(GF_TraverseState *tr_state, DrawAspect2D
      *asp)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: visual_3d_setup_texture_2d
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1664,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1667,1
    - Dst: visual_3d_set_material_2d_argb
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1671,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1672,1
    - Dst: visual_3d_set_material_2d_argb
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1674,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1677,1
    - Dst: gf_sc_texture_disable
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1680,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1688,1
    - Dst: drawable_get_strikeinfo
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1690,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1695,1
    - Dst: gf_mesh_tesselate_path
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1698,1
    - Dst: mesh_get_outline
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1701,1
    - Dst: visual_3d_set_2d_strike
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1704,1
    - Dst: visual_3d_mesh_strike
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1708,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1710,1
    - Dst: gf_sc_texture_disable
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1713,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 43
    argCount: 3
    argNames:
    - st
    - tr_state
    - asp
    argTypes:
    - Drawable*
    - GF_TraverseState*
    - DrawAspect2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1716
      start: 1659
    functionDepth: 11
    functionLinenumber: 1659
    functionLinenumberEnd: 1716
    functionName: visual_3d_draw_2d_with_aspect
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 3
    functionsReached:
    - GF_COL_A
    - gf_sc_texture_disable
    - drawable_get_strikeinfo
    - visual_3d_mesh_paint
    - visual_3d_setup_texture_2d
    - new_mesh
    - mesh_get_outline
    - visual_3d_set_material_2d_argb
    - visual_3d_mesh_strike
    - gf_mesh_tesselate_path
    - visual_3d_set_2d_strike
    linkageType: ''
    returnType: void
    signature: void visual_3d_draw_2d_with_aspect(Drawable *st, GF_TraverseState *tr_state,
      DrawAspect2D *asp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1722,1
    - Dst: drawable_get_aspect_2d_mpeg4
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1723,1
    - Dst: visual_3d_draw_2d_with_aspect
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1724,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - st
    - tr_state
    argTypes:
    - Drawable*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1725
      start: 1719
    functionDepth: 12
    functionLinenumber: 1719
    functionLinenumberEnd: 1725
    functionName: visual_3d_draw_2d
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 10
    functionsReached:
    - memset
    - visual_3d_draw_2d_with_aspect
    - drawable_get_aspect_2d_mpeg4
    linkageType: ''
    returnType: void
    signature: void visual_3d_draw_2d(Drawable *st, GF_TraverseState *tr_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1732,1
    - Dst: visual_3d_draw_2d_with_aspect
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1733,1
    - Dst: drawable_check_focus_highlight
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1735,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - tr_state
    argTypes:
    - DrawableContext*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1736
      start: 1729
    functionDepth: 12
    functionLinenumber: 1729
    functionLinenumberEnd: 1736
    functionName: visual_3d_draw_from_context
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 3
    functionsReached:
    - drawable_check_focus_highlight
    - visual_3d_draw_2d_with_aspect
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void visual_3d_draw_from_context(DrawableContext *ctx, GF_TraverseState
      *tr_state)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: visual_3d_set_material_2d
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1751,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1757,1
    - Dst: visual_3d_set_material_2d
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1766,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1770,1
    - Dst: gf_cmx_apply_fixed
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1789,1
    - Dst: visual_3d_set_material_2d
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1790,1
    - Dst: gf_cmx_apply_fixed
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1798,1
    - Dst: gf_cmx_apply_fixed
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1799,1
    - Dst: gf_cmx_apply_fixed
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1800,1
    - Dst: visual_3d_enable_antialias
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1814,1
    - Dst: visual_3d_set_state
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1819,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1821,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1822,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1823,1
    - Dst: visual_3d_set_material
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1825,1
    - Dst: visual_3d_set_material
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1831,1
    - Dst: visual_3d_set_material
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1837,1
    - Dst: visual_3d_set_material
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1844,1
    - Dst: visual_3d_set_shininess
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1846,1
    - Dst: gf_cmx_apply_fixed
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1858,1
    - Dst: visual_3d_set_state
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1861,1
    - Dst: gf_sc_texture_get_handler
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1870,1
    - Dst: gf_sc_texture_set_blend_mode
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1872,1
    - Dst: visual_3d_set_state
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1873,1
    - Dst: visual_3d_set_state
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1874,1
    - Dst: visual_3d_set_state
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1880,1
    - Dst: visual_3d_set_material_2d
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1881,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 108
    argCount: 3
    argNames:
    - tr_state
    - mesh_type
    - diffuse_alpha
    argTypes:
    - GF_TraverseState*
    - u32
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1891
      start: 1739
    functionDepth: 2
    functionLinenumber: 1739
    functionLinenumberEnd: 1891
    functionName: visual_3d_setup_material
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_cmx_apply_fixed
    - visual_3d_enable_antialias
    - visual_3d_set_state
    - visual_3d_set_material_2d
    - visual_3d_set_material
    - gf_sc_texture_get_handler
    - visual_3d_set_shininess
    - gf_sc_texture_set_blend_mode
    - gf_mulfix
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE visual_3d_setup_material(GF_TraverseState *tr_state, u32 mesh_type,
      Fixed *diffuse_alpha)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_reset
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1900,1
    - Dst: gf_sc_texture_get_handler
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1902,1
    - Dst: gf_sc_texture_set_blend_mode
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1907,1
    - Dst: gf_sc_texture_is_transparent
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1907,1
    - Dst: gf_sc_texture_enable
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1908,1
    - Dst: visual_3d_set_material_2d
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1917,1
    - Dst: visual_3d_set_material
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1921,1
    - Dst: visual_3d_set_material
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1928,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 33
    argCount: 2
    argNames:
    - tr_state
    - diffuse_alpha
    argTypes:
    - GF_TraverseState*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1938
      start: 1893
    functionDepth: 3
    functionLinenumber: 1893
    functionLinenumberEnd: 1938
    functionName: visual_3d_setup_texture
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 1
    functionsReached:
    - gf_sc_texture_enable
    - gf_sc_texture_is_transparent
    - visual_3d_set_material_2d
    - gf_sc_texture_get_handler
    - visual_3d_set_material
    - gf_sc_texture_set_blend_mode
    - gf_node_dirty_reset
    linkageType: ''
    returnType: Bool
    signature: Bool visual_3d_setup_texture(GF_TraverseState *tr_state, Fixed diffuse_alpha)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_disable
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1944,1
    - Dst: gf_sc_texture_get_handler
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1944,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - tr_state
    argTypes:
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1948
      start: 1940
    functionDepth: 1
    functionLinenumber: 1940
    functionLinenumberEnd: 1948
    functionName: visual_3d_disable_texture
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 2
    functionsReached:
    - gf_sc_texture_disable
    - gf_sc_texture_get_handler
    linkageType: ''
    returnType: void
    signature: void visual_3d_disable_texture(GF_TraverseState *tr_state)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: visual_3d_setup_material
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1954,1
    - Dst: visual_3d_setup_texture
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1956,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - tr_state
    argTypes:
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1958
      start: 1950
    functionDepth: 4
    functionLinenumber: 1950
    functionLinenumberEnd: 1958
    functionName: visual_3d_setup_appearance
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 1
    functionsReached:
    - visual_3d_setup_material
    - visual_3d_setup_texture
    linkageType: ''
    returnType: Bool
    signature: Bool visual_3d_setup_appearance(GF_TraverseState *tr_state)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1967,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1968,1
    - Dst: gf_mx_apply_bbox
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1970,1
    - Dst: gf_mx_apply_bbox_4x4
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1972,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1975,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1976,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1977,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1978,1
    - Dst: gf_rect_pixelize
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1980,1
    - Dst: gf_rect_center
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1982,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1982,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1982,1
    - Dst: gf_rect_pixelize
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1983,1
    - Dst: gf_irect_intersect
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1985,1
    - Dst: gf_irect_union
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1986,1
    - Dst: visual_3d_setup_material
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1989,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1990,1
    - Dst: visual_3d_setup_appearance
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1992,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1993,1
    - Dst: visual_3d_disable_texture
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1994,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/visual_manager_3d.c:1997,1
    - Dst: visual_3d_mesh_hatch
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2000,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 30
    argCount: 2
    argNames:
    - tr_state
    - mesh
    argTypes:
    - GF_TraverseState*
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2004
      start: 1961
    functionDepth: 10
    functionLinenumber: 1961
    functionLinenumberEnd: 2004
    functionName: visual_3d_draw
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 5
    functionsReached:
    - gf_node_get_tag
    - INT2FIX
    - gf_irect_union
    - visual_3d_mesh_hatch
    - visual_3d_disable_texture
    - visual_3d_mesh_paint
    - gf_rect_pixelize
    - gf_rect_center
    - gf_mx_add_matrix
    - gf_mx_apply_bbox
    - visual_3d_setup_material
    - gf_mx_apply_bbox_4x4
    - gf_mx_copy
    - visual_3d_setup_appearance
    - gf_irect_intersect
    - gf_mulfix
    linkageType: ''
    returnType: void
    signature: void visual_3d_draw(GF_TraverseState *tr_state, GF_Mesh *mesh)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2009
      start: 2006
    functionDepth: 0
    functionLinenumber: 2006
    functionLinenumberEnd: 2009
    functionName: visual_3d_projection_matrix_modified
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void visual_3d_projection_matrix_modified(GF_VisualManager *visual)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: visual_3d_add_directional_light
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2026,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - visual
    - bOn
    - cam
    argTypes:
    - GF_VisualManager*
    - Bool
    - GF_Camera*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2027
      start: 2011
    functionDepth: 1
    functionLinenumber: 2011
    functionLinenumberEnd: 2027
    functionName: visual_3d_enable_headlight
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 1
    functionsReached:
    - visual_3d_add_directional_light
    linkageType: ''
    returnType: void
    signature: void visual_3d_enable_headlight(GF_VisualManager *visual, Bool bOn,
      GF_Camera *cam)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - visual
    - col
    - alpha
    argTypes:
    - GF_VisualManager*
    - SFColor
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2040
      start: 2029
    functionDepth: 0
    functionLinenumber: 2029
    functionLinenumberEnd: 2040
    functionName: visual_3d_set_material_2d
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void visual_3d_set_material_2d(GF_VisualManager *visual, SFColor col,
      Fixed alpha)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2044,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2048,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2048,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2049,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2049,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2050,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2050,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2051,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - visual
    - col
    argTypes:
    - GF_VisualManager*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2053
      start: 2042
    functionDepth: 1
    functionLinenumber: 2042
    functionLinenumberEnd: 2053
    functionName: visual_3d_set_material_2d_argb
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 6
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - INT2FIX
    - GF_COL_A
    - GF_COL_R
    linkageType: ''
    returnType: void
    signature: void visual_3d_set_material_2d_argb(GF_VisualManager *visual, u32 col)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_apply_rect
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2058,1
    - Dst: gf_rect_pixelize
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2059,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - visual
    - clip
    - mx_at_clipper
    argTypes:
    - GF_VisualManager*
    - GF_Rect
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2061
      start: 2055
    functionDepth: 1
    functionLinenumber: 2055
    functionLinenumberEnd: 2061
    functionName: visual_3d_set_clipper_2d
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 4
    functionsReached:
    - gf_rect_pixelize
    - gf_mx_apply_rect
    linkageType: ''
    returnType: void
    signature: void visual_3d_set_clipper_2d(GF_VisualManager *visual, GF_Rect clip,
      GF_Matrix *mx_at_clipper)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2066
      start: 2063
    functionDepth: 0
    functionLinenumber: 2063
    functionLinenumberEnd: 2066
    functionName: visual_3d_reset_clipper_2d
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void visual_3d_reset_clipper_2d(GF_VisualManager *visual)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2071,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - visual
    - p
    - mx_at_clipper
    - is_2d_clip
    argTypes:
    - GF_VisualManager*
    - GF_Plane
    - GF_Matrix*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2076
      start: 2068
    functionDepth: 1
    functionLinenumber: 2068
    functionLinenumberEnd: 2076
    functionName: visual_3d_set_clip_plane
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 2
    functionsReached:
    - gf_vec_norm
    linkageType: ''
    returnType: void
    signature: void visual_3d_set_clip_plane(GF_VisualManager *visual, GF_Plane p,
      GF_Matrix *mx_at_clipper, Bool is_2d_clip)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2082
      start: 2078
    functionDepth: 0
    functionLinenumber: 2078
    functionLinenumberEnd: 2082
    functionName: visual_3d_reset_clip_plane
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void visual_3d_reset_clip_plane(GF_VisualManager *visual)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - visual
    - material_type
    - rgba
    argTypes:
    - GF_VisualManager*
    - u32
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2093
      start: 2084
    functionDepth: 0
    functionLinenumber: 2084
    functionLinenumberEnd: 2093
    functionName: visual_3d_set_material
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void visual_3d_set_material(GF_VisualManager *visual, u32 material_type,
      Fixed *rgba)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - visual
    - shininess
    argTypes:
    - GF_VisualManager*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2098
      start: 2095
    functionDepth: 0
    functionLinenumber: 2095
    functionLinenumberEnd: 2098
    functionName: visual_3d_set_shininess
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void visual_3d_set_shininess(GF_VisualManager *visual, Fixed shininess)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - visual
    - flag_mask
    - setOn
    argTypes:
    - GF_VisualManager*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2105
      start: 2100
    functionDepth: 0
    functionLinenumber: 2100
    functionLinenumberEnd: 2105
    functionName: visual_3d_set_state
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void visual_3d_set_state(GF_VisualManager *visual, u32 flag_mask, Bool
      setOn)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2111,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - visual
    - mx
    argTypes:
    - GF_VisualManager*
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2112
      start: 2108
    functionDepth: 1
    functionLinenumber: 2108
    functionLinenumberEnd: 2112
    functionName: visual_3d_set_texture_matrix
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 0
    functionsReached:
    - gf_mx_copy
    linkageType: ''
    returnType: void
    signature: void visual_3d_set_texture_matrix(GF_VisualManager *visual, GF_Matrix
      *mx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2118
      start: 2115
    functionDepth: 0
    functionLinenumber: 2115
    functionLinenumberEnd: 2118
    functionName: visual_3d_has_inactive_light
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void visual_3d_has_inactive_light(GF_VisualManager *visual)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 7
    argNames:
    - visual
    - ambientIntensity
    - attenuation
    - color
    - intensity
    - location
    - light_mx
    argTypes:
    - GF_VisualManager*
    - Fixed
    - SFVec3f
    - SFColor
    - Fixed
    - SFVec3f
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2132
      start: 2120
    functionDepth: 0
    functionLinenumber: 2120
    functionLinenumberEnd: 2132
    functionName: visual_3d_add_point_light
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 1
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: Bool
    signature: Bool visual_3d_add_point_light(GF_VisualManager *visual, Fixed ambientIntensity,
      SFVec3f attenuation, SFColor color, Fixed intensity, SFVec3f location, GF_Matrix
      *light_mx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2147,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 10
    argNames:
    - visual
    - ambientIntensity
    - attenuation
    - beamWidth
    - color
    - cutOffAngle
    - direction
    - intensity
    - location
    - light_mx
    argTypes:
    - GF_VisualManager*
    - Fixed
    - SFVec3f
    - Fixed
    - SFColor
    - Fixed
    - SFVec3f
    - Fixed
    - SFVec3f
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2150
      start: 2134
    functionDepth: 0
    functionLinenumber: 2134
    functionLinenumberEnd: 2150
    functionName: visual_3d_add_spot_light
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 1
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: Bool
    signature: "Bool visual_3d_add_spot_light(GF_VisualManager *visual, Fixed ambientIntensity,
      SFVec3f attenuation, Fixed beamWidth,\n                              SFColor
      color, Fixed cutOffAngle, SFVec3f direction, Fixed intensity, SFVec3f location,
      GF_Matrix *light_mx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2161,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2163,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 6
    argNames:
    - visual
    - ambientIntensity
    - color
    - intensity
    - direction
    - light_mx
    argTypes:
    - GF_VisualManager*
    - Fixed
    - SFColor
    - Fixed
    - SFVec3f
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2172
      start: 2152
    functionDepth: 1
    functionLinenumber: 2152
    functionLinenumberEnd: 2172
    functionName: visual_3d_add_directional_light
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 2
    functionsReached:
    - memcpy
    - gf_mx_init
    linkageType: ''
    returnType: Bool
    signature: Bool visual_3d_add_directional_light(GF_VisualManager *visual, Fixed
      ambientIntensity, SFColor color, Fixed intensity, SFVec3f direction, GF_Matrix
      *light_mx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2180
      start: 2175
    functionDepth: 0
    functionLinenumber: 2175
    functionLinenumberEnd: 2180
    functionName: visual_3d_remove_last_light
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void visual_3d_remove_last_light(GF_VisualManager *visual)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2186
      start: 2182
    functionDepth: 0
    functionLinenumber: 2182
    functionLinenumberEnd: 2186
    functionName: visual_3d_clear_all_lights
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void visual_3d_clear_all_lights(GF_VisualManager *visual)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2191,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2192,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/visual_manager_3d.c:2193,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 5
    argNames:
    - visual
    - type
    - color
    - density
    - visibility
    argTypes:
    - GF_VisualManager*
    - char*
    - SFColor
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2198
      start: 2188
    functionDepth: 0
    functionLinenumber: 2188
    functionLinenumberEnd: 2198
    functionName: visual_3d_set_fog
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 1
    functionsReached:
    - stricmp
    linkageType: ''
    returnType: void
    signature: void visual_3d_set_fog(GF_VisualManager *visual, const char *type,
      SFColor color, Fixed density, Fixed visibility)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:42,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:46,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:47,1
    - Dst: drawable_mark_modified
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:48,1
    - Dst: gf_path_close
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:59,1
    - Dst: gf_path_add_move_to_vec
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:63,1
    - Dst: gf_path_add_line_to_vec
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:65,1
    - Dst: gf_path_close
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:68,1
    - Dst: gf_path_add_move_to_vec
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:70,1
    - Dst: gf_path_add_line_to_vec
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:72,1
    - Dst: gf_path_close
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:74,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 3
    argNames:
    - node
    - stack
    - tr_state
    argTypes:
    - GF_Node*
    - Drawable*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 33
    functionDepth: 4
    functionLinenumber: 33
    functionLinenumberEnd: 76
    functionName: ifs2d_check_changes
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c
    functionUses: 0
    functionsReached:
    - drawable_reset_path
    - drawable_mark_modified
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_path_close
    - gf_path_add_line_to_vec
    - gf_path_add_move_to_vec
    linkageType: ''
    returnType: void
    signature: void ifs2d_check_changes(GF_Node *node, Drawable *stack, GF_TraverseState
      *tr_state)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: visual_2d_texture_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:101,1
    - Dst: visual_2d_draw_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:102,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:113,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:113,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:115,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:115,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:116,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:118,1
    - Dst: visual_2d_texture_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:120,1
    - Dst: visual_2d_draw_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:121,1
    - Dst: gf_path_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:127,1
    - Dst: gf_path_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:132,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:134,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:139,1
    - Dst: gf_path_close
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:144,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:148,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:148,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:150,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:150,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:151,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:153,1
    - Dst: visual_2d_texture_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:156,1
    - Dst: visual_2d_draw_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:157,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:164,1
    - Dst: visual_2d_texture_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:170,1
    - Dst: visual_2d_draw_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:171,1
    - Dst: gf_path_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:176,1
    - Dst: gf_path_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:181,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:184,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:189,1
    - Dst: gf_path_close
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:196,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:199,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:199,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:201,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:209,1
    - Dst: gf_evg_stencil_set_vertex_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:225,1
    - Dst: gf_evg_stencil_set_vertex_colors
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:226,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:228,1
    - Dst: gf_evg_stencil_set_vertex_center
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:235,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:235,1
    - Dst: gf_evg_stencil_set_matrix
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:237,1
    - Dst: visual_2d_draw_path
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:240,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:242,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:248,1
    - Dst: gf_path_del
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:252,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 129
    argCount: 2
    argNames:
    - node
    - tr_state
    argTypes:
    - GF_Node*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 79
    functionDepth: 13
    functionLinenumber: 79
    functionLinenumberEnd: 256
    functionName: IFS2D_Draw
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_evg_stencil_delete
    - gf_evg_stencil_new
    - gf_path_add_move_to
    - gf_path_close
    - GF_COL_A
    - gf_path_del
    - gf_evg_stencil_set_matrix
    - visual_2d_draw_path
    - GF_COL_ARGB_FIXED
    - gf_evg_stencil_set_vertex_colors
    - gf_evg_stencil_set_vertex_center
    - gf_path_new
    - gf_malloc
    - INT2FIX
    - gf_evg_stencil_set_vertex_path
    - gf_path_reset
    - gf_path_add_line_to
    - visual_2d_texture_path
    linkageType: ''
    returnType: void
    signature: void IFS2D_Draw(GF_Node *node, GF_TraverseState *tr_state)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:262,1
    - Dst: drawable_node_del
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:266,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:270,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:270,1
    - Dst: ifs2d_check_changes
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:273,1
    - Dst: IFS2D_Draw
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:277,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:285,1
    - Dst: mesh_new_ifs2d
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:286,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:289,1
    - Dst: drawable_get_aspect_2d_mpeg4
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:290,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:291,1
    - Dst: drawable_get_strikeinfo
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:293,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:295,1
    - Dst: mesh_new_ils
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:296,1
    - Dst: visual_3d_mesh_strike
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:298,1
    - Dst: visual_3d_draw_2d_with_aspect
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:300,1
    - Dst: vrml_drawable_pick
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:306,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:309,1
    - Dst: drawable_init_context_mpeg4
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:316,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:318,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 47
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 258
    functionDepth: 14
    functionLinenumber: 258
    functionLinenumberEnd: 321
    functionName: TraverseIFS2D
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - drawable_node_del
    - IFS2D_Draw
    - drawable_init_context_mpeg4
    - visual_3d_draw_2d_with_aspect
    - GF_COL_A
    - drawable_finalize_sort
    - drawable_get_strikeinfo
    - mesh_new_ils
    - new_mesh
    - memset
    - visual_3d_mesh_strike
    - vrml_drawable_pick
    - mesh_new_ifs2d
    - ifs2d_check_changes
    - gf_node_get_private
    - drawable_get_aspect_2d_mpeg4
    - gf_path_get_bounds
    linkageType: ''
    returnType: void
    signature: void TraverseIFS2D(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:327,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:328,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 323
    functionDepth: 6
    functionLinenumber: 323
    functionLinenumberEnd: 330
    functionName: IFS2D_SetColorIndex
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_copy
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: void
    signature: void IFS2D_SetColorIndex(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:336,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:337,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 332
    functionDepth: 6
    functionLinenumber: 332
    functionLinenumberEnd: 339
    functionName: IFS2D_SetCoordIndex
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_copy
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: void
    signature: void IFS2D_SetCoordIndex(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: drawable_stack_new
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:344,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:346,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:351,1
    - Dst: IFS2D_SetCoordIndex
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:352,1
    - Dst: IFS2D_SetColorIndex
      Src: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c:353,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 341
    functionDepth: 7
    functionLinenumber: 341
    functionLinenumberEnd: 357
    functionName: compositor_init_indexed_face_set2d
    functionSourceFile: /src/gpac/src/compositor/mpeg4_geometry_ifs2d.c
    functionUses: 1
    functionsReached:
    - IFS2D_SetColorIndex
    - drawable_stack_new
    - IFS2D_SetCoordIndex
    - gf_node_set_callback_function
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: void
    signature: void compositor_init_indexed_face_set2d(GF_Compositor *compositor,
      GF_Node *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:45,1
    - Dst: gf_sc_unregister_time_node
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:48,1
    - Dst: gf_mo_set_flag
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:51,1
    - Dst: gf_mo_stop
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:52,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:54,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:55,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 41
    functionDepth: 6
    functionLinenumber: 41
    functionLinenumberEnd: 57
    functionName: animationstream_destroy
    functionSourceFile: /src/gpac/src/compositor/mpeg4_animstream.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sc_unregister_time_node
    - gf_mo_stop
    - gf_mo_set_flag
    - gf_sg_vrml_mf_reset
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void animationstream_destroy(GF_Node *node, void *rs, Bool is_destroy)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:63,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:64,1
    - Dst: gf_mo_register
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:65,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:66,1
    - Dst: gf_mo_play
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:70,1
    - Dst: gf_mo_set_speed
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:71,1
    - Dst: gf_mo_url_changed
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:76,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:77,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:78,1
    - Dst: gf_mo_set_flag
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:81,1
    - Dst: gf_mo_stop
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:82,1
    - Dst: gf_mo_unregister
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:84,1
    - Dst: gf_mo_register
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:86,1
    - Dst: gf_mo_play
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:89,1
    - Dst: gf_mo_set_speed
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:90,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:92,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 2
    argNames:
    - stack
    - as
    argTypes:
    - AnimationStreamStack*
    - M_AnimationStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 60
    functionDepth: 6
    functionLinenumber: 60
    functionLinenumberEnd: 94
    functionName: animationstream_check_url
    functionSourceFile: /src/gpac/src/compositor/mpeg4_animstream.c
    functionUses: 0
    functionsReached:
    - gf_mo_play
    - gf_mo_url_changed
    - gf_mo_register
    - gf_mo_stop
    - gf_mo_unregister
    - gf_mo_set_speed
    - gf_sg_vrml_field_copy
    - gf_sc_invalidate
    - gf_mo_set_flag
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: void
    signature: void animationstream_check_url(AnimationStreamStack *stack, M_AnimationStream
      *as)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_get_speed
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - stack
    - as
    argTypes:
    - AnimationStreamStack*
    - M_AnimationStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: animationstream_get_speed
    functionSourceFile: /src/gpac/src/compositor/mpeg4_animstream.c
    functionUses: 0
    functionsReached:
    - gf_mo_get_speed
    linkageType: ''
    returnType: Fixed
    signature: Fixed animationstream_get_speed(AnimationStreamStack *stack, M_AnimationStream
      *as)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mo_get_loop
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - stack
    - as
    argTypes:
    - AnimationStreamStack*
    - M_AnimationStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 100
    functionDepth: 2
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionName: animationstream_get_loop
    functionSourceFile: /src/gpac/src/compositor/mpeg4_animstream.c
    functionUses: 0
    functionsReached:
    - gf_mo_get_loop
    linkageType: ''
    returnType: Bool
    signature: Bool animationstream_get_loop(AnimationStreamStack *stack, M_AnimationStream
      *as)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: animationstream_check_url
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:107,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:109,1
    - Dst: gf_mo_play
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:111,1
    - Dst: gf_mo_set_speed
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - stack
    - as
    argTypes:
    - AnimationStreamStack*
    - M_AnimationStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 105
    functionDepth: 7
    functionLinenumber: 105
    functionLinenumberEnd: 113
    functionName: animationstream_activate
    functionSourceFile: /src/gpac/src/compositor/mpeg4_animstream.c
    functionUses: 0
    functionsReached:
    - gf_mo_play
    - gf_node_event_out
    - animationstream_check_url
    - gf_mo_set_speed
    linkageType: ''
    returnType: void
    signature: void animationstream_activate(AnimationStreamStack *stack, M_AnimationStream
      *as)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:120,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:126,1
    - Dst: gf_mo_url_changed
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:129,1
    - Dst: gf_mo_set_flag
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:130,1
    - Dst: gf_mo_stop
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:131,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:135,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 17
    argCount: 2
    argNames:
    - stack
    - as
    argTypes:
    - AnimationStreamStack*
    - M_AnimationStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 115
    functionDepth: 6
    functionLinenumber: 115
    functionLinenumberEnd: 136
    functionName: animationstream_deactivate
    functionSourceFile: /src/gpac/src/compositor/mpeg4_animstream.c
    functionUses: 0
    functionsReached:
    - gf_mo_url_changed
    - gf_node_event_out
    - gf_mo_stop
    - gf_list_count
    - gf_sc_invalidate
    - gf_mo_set_flag
    linkageType: ''
    returnType: void
    signature: void animationstream_deactivate(AnimationStreamStack *stack, M_AnimationStream
      *as)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:142,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:148,1
    - Dst: animationstream_get_speed
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:152,1
    - Dst: animationstream_deactivate
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:155,1
    - Dst: gf_mo_is_done
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:158,1
    - Dst: animationstream_get_loop
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:159,1
    - Dst: gf_mo_restart
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:160,1
    - Dst: gf_mo_should_deactivate
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:161,1
    - Dst: animationstream_deactivate
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:162,1
    - Dst: animationstream_activate
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:170,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 23
    argCount: 1
    argNames:
    - st
    argTypes:
    - GF_TimeNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 138
    functionDepth: 8
    functionLinenumber: 138
    functionLinenumberEnd: 171
    functionName: animationstream_update_time
    functionSourceFile: /src/gpac/src/compositor/mpeg4_animstream.c
    functionUses: 0
    functionsReached:
    - animationstream_deactivate
    - animationstream_get_loop
    - gf_mo_is_done
    - gf_mo_restart
    - gf_mo_should_deactivate
    - animationstream_get_speed
    - gf_node_get_scene_time
    - animationstream_activate
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void animationstream_update_time(GF_TimeNode *st)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:177,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:179,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:186,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:187,1
    - Dst: gf_sc_register_time_node
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:189,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 174
    functionDepth: 2
    functionLinenumber: 174
    functionLinenumberEnd: 190
    functionName: compositor_init_animationstream
    functionSourceFile: /src/gpac/src/compositor/mpeg4_animstream.c
    functionUses: 1
    functionsReached:
    - gf_sc_register_time_node
    - GF_SAFEALLOC
    - GF_LOG
    - gf_node_set_private
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void compositor_init_animationstream(GF_Compositor *compositor, GF_Node
      *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:197,1
    - Dst: animationstream_update_time
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:202,1
    - Dst: animationstream_check_url
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:205,1
    - Dst: gf_sc_register_time_node
      Src: /src/gpac/src/compositor/mpeg4_animstream.c:208,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 194
    functionDepth: 9
    functionLinenumber: 194
    functionLinenumberEnd: 211
    functionName: compositor_animationstream_modified
    functionSourceFile: /src/gpac/src/compositor/mpeg4_animstream.c
    functionUses: 1
    functionsReached:
    - animationstream_update_time
    - gf_sc_register_time_node
    - gf_node_get_private
    - animationstream_check_url
    linkageType: ''
    returnType: void
    signature: void compositor_animationstream_modified(GF_Node *node)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/svg_external.c:45,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/svg_external.c:45,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/svg_external.c:48,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/compositor/svg_external.c:50,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_external.c:60,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/svg_external.c:66,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/svg_external.c:67,1
    - Dst: gf_node_store_embedded_data
      Src: /src/gpac/src/compositor/svg_external.c:68,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/svg_external.c:70,1
    - Dst: gf_scene_resolve_xlink
      Src: /src/gpac/src/compositor/svg_external.c:73,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 2
    argNames:
    - node
    - mfurl
    argTypes:
    - GF_Node*
    - MFURL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 37
    functionDepth: 6
    functionLinenumber: 37
    functionLinenumberEnd: 75
    functionName: gf_sc_get_mfurl_from_xlink
    functionSourceFile: /src/gpac/src/compositor/svg_external.c
    functionUses: 3
    functionsReached:
    - gf_strdup
    - gf_node_store_embedded_data
    - GF_SAFEALLOC
    - gf_node_get_attribute_by_tag
    - gf_scene_resolve_xlink
    - strncmp
    - gf_node_get_graph
    - gf_opts_get_key
    - gf_sg_vrml_mf_reset
    - gf_sg_get_private
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sc_get_mfurl_from_xlink(GF_Node *node, MFURL *mfurl)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/svg_external.c:84,1
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/svg_external.c:85,1
    - Dst: memset
      Src: /src/gpac/src/compositor/svg_external.c:113,1
    - Dst: gf_sc_get_mfurl_from_xlink
      Src: /src/gpac/src/compositor/svg_external.c:116,1
    - Dst: gf_scene_get_media_object_ex
      Src: /src/gpac/src/compositor/svg_external.c:121,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/svg_external.c:122,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 37
    argCount: 5
    argNames:
    - elt
    - xlinkp
    - syncp
    - use_sync
    - primary_resource
    argTypes:
    - GF_Node*
    - XLinkAttributesPointers*
    - SMILSyncAttributesPointers*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 79
    functionDepth: 7
    functionLinenumber: 79
    functionLinenumberEnd: 127
    functionName: gf_svg_get_subscene
    functionSourceFile: /src/gpac/src/compositor/svg_external.c
    functionUses: 0
    functionsReached:
    - gf_sc_get_mfurl_from_xlink
    - gf_scene_get_media_object_ex
    - memset
    - gf_node_get_graph
    - gf_sg_vrml_mf_reset
    - gf_sg_get_private
    linkageType: ''
    returnType: GF_Scene
    signature: GF_Scene *gf_svg_get_subscene(GF_Node *elt, XLinkAttributesPointers
      *xlinkp, SMILSyncAttributesPointers *syncp, Bool use_sync, Bool primary_resource)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/svg_external.c:136,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/svg_external.c:136,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_external.c:139,1
    - Dst: gf_svg_get_subscene
      Src: /src/gpac/src/compositor/svg_external.c:159,1
    - Dst: gf_mo_play
      Src: /src/gpac/src/compositor/svg_external.c:163,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 129
    functionDepth: 8
    functionLinenumber: 129
    functionLinenumberEnd: 166
    functionName: GF_MediaObject *gf_mo_load_xlink_resource(GF_Node *node, Bool primary_resource,
      Double clipBegin, Double clipEnd)
    functionSourceFile: /src/gpac/src/compositor/svg_external.c
    functionUses: 0
    functionsReached:
    - gf_mo_play
    - gf_svg_flatten_attributes
    - gf_node_get_graph
    - gf_svg_get_subscene
    - gf_sg_get_private
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_MediaObject *gf_mo_load_xlink_resource(GF_Node *node,
      Bool primary_resource, Double clipBegin, Double clipEnd)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/compositor/svg_external.c:180,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - node
    - mo
    argTypes:
    - GF_Node*
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 168
    functionDepth: 4
    functionLinenumber: 168
    functionLinenumberEnd: 184
    functionName: gf_mo_unload_xlink_resource
    functionSourceFile: /src/gpac/src/compositor/svg_external.c
    functionUses: 5
    functionsReached:
    - gf_odm_disconnect
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mo_unload_xlink_resource(GF_Node *node, GF_MediaObject
      *mo)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/texturing_gl.c:104,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 107
    functionName: gf_sc_texture_allocate
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 12
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sc_texture_allocate(GF_TextureHandler *txh)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/compositor/texturing_gl.c:133,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/texturing_gl.c:134,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 138
    functionName: gf_sc_texture_configure_conversion
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 1
    functionsReached:
    - gf_pixel_get_size_info
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sc_texture_configure_conversion(GF_TextureHandler *txh)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: compositor_3d_delete_fbo
      Src: /src/gpac/src/compositor/texturing_gl.c:147,1
    - Dst: gf_gl_txw_reset
      Src: /src/gpac/src/compositor/texturing_gl.c:149,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/texturing_gl.c:153,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/texturing_gl.c:156,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/texturing_gl.c:159,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - tx_io
    argTypes:
    - struct __texture_wrapper*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 160
    functionName: release_txio
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - compositor_3d_delete_fbo
    - gf_gl_txw_reset
    linkageType: ''
    returnType: void
    signature: void release_txio(struct __texture_wrapper *tx_io)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_TextureHandler*::compositor::video_out::ReleaseTexture
      Src: /src/gpac/src/compositor/texturing_gl.c:165,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/texturing_gl.c:170,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/texturing_gl.c:173,1
    - Dst: gf_th_id
      Src: /src/gpac/src/compositor/texturing_gl.c:177,1
    - Dst: release_txio
      Src: /src/gpac/src/compositor/texturing_gl.c:178,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/texturing_gl.c:180,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/texturing_gl.c:184,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 162
    functionDepth: 2
    functionLinenumber: 162
    functionLinenumberEnd: 186
    functionName: gf_sc_texture_release
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 9
    functionsReached:
    - gf_th_id
    - gf_evg_stencil_delete
    - release_txio
    - GF_TextureHandler*::compositor::video_out::ReleaseTexture
    - gf_list_add
    - gf_sc_lock
    linkageType: ''
    returnType: void
    signature: void gf_sc_texture_release(GF_TextureHandler *txh)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/texturing_gl.c:190,1
    - Dst: gf_list_last
      Src: /src/gpac/src/compositor/texturing_gl.c:191,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/texturing_gl.c:192,1
    - Dst: release_txio
      Src: /src/gpac/src/compositor/texturing_gl.c:194,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 188
    functionDepth: 2
    functionLinenumber: 188
    functionLinenumberEnd: 196
    functionName: gf_sc_texture_cleanup_hw
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_list_last
    - gf_list_rem_last
    - release_txio
    linkageType: ''
    returnType: void
    signature: void gf_sc_texture_cleanup_hw(GF_Compositor *compositor)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/compositor/texturing_gl.c:212,1
    - Dst: memset
      Src: /src/gpac/src/compositor/texturing_gl.c:213,1
    - Dst: GF_TextureHandler*::frame_ifce::get_plane
      Src: /src/gpac/src/compositor/texturing_gl.c:228,1
    - Dst: GF_TextureHandler*::frame_ifce::get_plane
      Src: /src/gpac/src/compositor/texturing_gl.c:229,1
    - Dst: GF_TextureHandler*::frame_ifce::get_plane
      Src: /src/gpac/src/compositor/texturing_gl.c:230,1
    - Dst: gf_stretch_bits
      Src: /src/gpac/src/compositor/texturing_gl.c:234,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/texturing_gl.c:236,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/compositor/texturing_gl.c:236,1
    - Dst: gf_gl_txw_upload
      Src: /src/gpac/src/compositor/texturing_gl.c:246,1
    - Dst: gf_sc_texture_release_stream
      Src: /src/gpac/src/compositor/texturing_gl.c:250,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 200
    functionDepth: 2
    functionLinenumber: 200
    functionLinenumberEnd: 255
    functionName: gf_sc_texture_set_data
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 12
    functionsReached:
    - gf_gl_txw_upload
    - gf_sc_texture_release_stream
    - GF_LOG
    - gf_stretch_bits
    - memset
    - gf_error_to_string
    - GF_TextureHandler*::frame_ifce::get_plane
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sc_texture_set_data(GF_TextureHandler *txh)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/texturing_gl.c:261,1
    - Dst: gf_gl_txw_reset
      Src: /src/gpac/src/compositor/texturing_gl.c:262,1
    - Dst: compositor_3d_delete_fbo
      Src: /src/gpac/src/compositor/texturing_gl.c:265,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/texturing_gl.c:272,1
    - Dst: GF_TextureHandler*::compositor::video_out::ReleaseTexture
      Src: /src/gpac/src/compositor/texturing_gl.c:278,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 257
    functionDepth: 1
    functionLinenumber: 257
    functionLinenumberEnd: 281
    functionName: gf_sc_texture_reset
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 2
    functionsReached:
    - gf_free
    - GF_LOG
    - GF_TextureHandler*::compositor::video_out::ReleaseTexture
    - compositor_3d_delete_fbo
    - gf_gl_txw_reset
    linkageType: ''
    returnType: void
    signature: void gf_sc_texture_reset(GF_TextureHandler *txh)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - txh
    - mode
    argTypes:
    - GF_TextureHandler*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 285
    functionDepth: 0
    functionLinenumber: 285
    functionLinenumberEnd: 288
    functionName: gf_sc_texture_set_blend_mode
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_sc_texture_set_blend_mode(GF_TextureHandler *txh, u32 mode)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: glEnable
      Src: /src/gpac/src/compositor/texturing_gl.c:296,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/texturing_gl.c:300,1
    - Dst: GLTEXENV
      Src: /src/gpac/src/compositor/texturing_gl.c:301,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/texturing_gl.c:304,1
    - Dst: GLTEXENV
      Src: /src/gpac/src/compositor/texturing_gl.c:305,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/texturing_gl.c:308,1
    - Dst: GLTEXENV
      Src: /src/gpac/src/compositor/texturing_gl.c:310,1
    - Dst: GLTEXENV
      Src: /src/gpac/src/compositor/texturing_gl.c:312,1
    - Dst: GLTEXENV
      Src: /src/gpac/src/compositor/texturing_gl.c:318,1
    - Dst: GLTEXENV
      Src: /src/gpac/src/compositor/texturing_gl.c:320,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/texturing_gl.c:325,1
    - Dst: gf_gl_txw_bind
      Src: /src/gpac/src/compositor/texturing_gl.c:330,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 36
    argCount: 5
    argNames:
    - txh
    - transparent
    - blend_mode
    - no_bind
    - glsl_prog_id
    argTypes:
    - GF_TextureHandler*
    - Bool
    - u32
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 290
    functionDepth: 1
    functionLinenumber: 290
    functionLinenumberEnd: 332
    functionName: tx_bind_with_mode
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 0
    functionsReached:
    - GLTEXENV
    - gf_gl_txw_bind
    - glEnable
    linkageType: ''
    returnType: void
    signature: void tx_bind_with_mode(GF_TextureHandler *txh, Bool transparent, u32
      blend_mode, Bool no_bind, u32 glsl_prog_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tx_bind_with_mode
      Src: /src/gpac/src/compositor/texturing_gl.c:337,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 334
    functionDepth: 2
    functionLinenumber: 334
    functionLinenumberEnd: 338
    functionName: tx_bind
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 0
    functionsReached:
    - tx_bind_with_mode
    linkageType: ''
    returnType: void
    signature: void tx_bind(GF_TextureHandler *txh)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: glBindTexture
      Src: /src/gpac/src/compositor/texturing_gl.c:346,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/texturing_gl.c:350,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/texturing_gl.c:354,1
    - Dst: gf_sc_texture_check_pause_on_first_load
      Src: /src/gpac/src/compositor/texturing_gl.c:356,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 340
    functionDepth: 1
    functionLinenumber: 340
    functionLinenumberEnd: 358
    functionName: gf_sc_texture_disable
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 8
    functionsReached:
    - glBindTexture
    - gf_sc_texture_check_pause_on_first_load
    - glDisable
    linkageType: ''
    returnType: void
    signature: void gf_sc_texture_disable(GF_TextureHandler *txh)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_parent_count
      Src: /src/gpac/src/compositor/texturing_gl.c:374,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/texturing_gl.c:377,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/compositor/texturing_gl.c:380,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/texturing_gl.c:381,1
    - Dst: gf_node_get_parent_count
      Src: /src/gpac/src/compositor/texturing_gl.c:382,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/compositor/texturing_gl.c:384,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/texturing_gl.c:385,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/texturing_gl.c:385,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 20
    argCount: 2
    argNames:
    - compositor
    - txh
    argTypes:
    - GF_Compositor*
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 361
    functionDepth: 2
    functionLinenumber: 361
    functionLinenumberEnd: 391
    functionName: tx_can_use_rect_ext
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_node_get_parent
    - gf_node_get_parent_count
    linkageType: ''
    returnType: Bool
    signature: Bool tx_can_use_rect_ext(GF_Compositor *compositor, GF_TextureHandler
      *txh)
  - BBCount: 50
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/texturing_gl.c:406,1
    - Dst: gf_get_next_pow2
      Src: /src/gpac/src/compositor/texturing_gl.c:410,1
    - Dst: gf_get_next_pow2
      Src: /src/gpac/src/compositor/texturing_gl.c:411,1
    - Dst: tx_can_use_rect_ext
      Src: /src/gpac/src/compositor/texturing_gl.c:428,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/texturing_gl.c:514,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/compositor/texturing_gl.c:514,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/texturing_gl.c:528,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/texturing_gl.c:530,1
    - Dst: gf_gl_txw_setup
      Src: /src/gpac/src/compositor/texturing_gl.c:539,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 111
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 542
      start: 394
    functionDepth: 3
    functionLinenumber: 394
    functionLinenumberEnd: 542
    functionName: tx_setup_format
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_filter_pid_get_property
    - tx_can_use_rect_ext
    - gf_node_dirty_set
    - GF_LOG
    - gf_get_next_pow2
    - gf_gl_txw_setup
    linkageType: ''
    returnType: Bool
    signature: Bool tx_setup_format(GF_TextureHandler *txh)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - txh
    - pix_format
    argTypes:
    - GF_TextureHandler*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 544
    functionDepth: 0
    functionLinenumber: 544
    functionLinenumberEnd: 552
    functionName: gf_sc_texture_get_data
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_sc_texture_get_data(GF_TextureHandler *txh, u32 *pix_format)
  - BBCount: 58
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/texturing_gl.c:602,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/texturing_gl.c:609,1
    - Dst: gf_get_next_pow2
      Src: /src/gpac/src/compositor/texturing_gl.c:643,1
    - Dst: gf_get_next_pow2
      Src: /src/gpac/src/compositor/texturing_gl.c:644,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/texturing_gl.c:645,1
    - Dst: memset
      Src: /src/gpac/src/compositor/texturing_gl.c:646,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/texturing_gl.c:647,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/texturing_gl.c:648,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/texturing_gl.c:650,1
    - Dst: memset
      Src: /src/gpac/src/compositor/texturing_gl.c:651,1
    - Dst: memset
      Src: /src/gpac/src/compositor/texturing_gl.c:658,1
    - Dst: memset
      Src: /src/gpac/src/compositor/texturing_gl.c:659,1
    - Dst: gf_stretch_bits
      Src: /src/gpac/src/compositor/texturing_gl.c:689,1
    - Dst: gf_stretch_bits
      Src: /src/gpac/src/compositor/texturing_gl.c:700,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/texturing_gl.c:702,1
    - Dst: gf_stretch_bits
      Src: /src/gpac/src/compositor/texturing_gl.c:707,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 155
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 556
    functionDepth: 1
    functionLinenumber: 556
    functionLinenumberEnd: 735
    functionName: gf_sc_texture_convert
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 1
    functionsReached:
    - INT2FIX
    - memcpy
    - gf_stretch_bits
    - memset
    - gf_get_next_pow2
    - gf_malloc
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sc_texture_convert(GF_TextureHandler *txh)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/texturing_gl.c:751,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/compositor/texturing_gl.c:755,1
    - Dst: GF_TextureHandler*::frame_ifce::get_plane
      Src: /src/gpac/src/compositor/texturing_gl.c:773,1
    - Dst: GF_TextureHandler*::frame_ifce::get_plane
      Src: /src/gpac/src/compositor/texturing_gl.c:775,1
    - Dst: GF_TextureHandler*::frame_ifce::get_plane
      Src: /src/gpac/src/compositor/texturing_gl.c:777,1
    - Dst: GF_TextureHandler*::frame_ifce::get_plane
      Src: /src/gpac/src/compositor/texturing_gl.c:779,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/compositor/texturing_gl.c:786,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/texturing_gl.c:787,1
    - Dst: gf_evg_stencil_set_texture_planes
      Src: /src/gpac/src/compositor/texturing_gl.c:794,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/texturing_gl.c:813,1
    - Dst: gf_gl_txw_reset
      Src: /src/gpac/src/compositor/texturing_gl.c:818,1
    - Dst: gf_gl_txw_reset
      Src: /src/gpac/src/compositor/texturing_gl.c:825,1
    - Dst: gf_sc_texture_convert
      Src: /src/gpac/src/compositor/texturing_gl.c:830,1
    - Dst: tx_setup_format
      Src: /src/gpac/src/compositor/texturing_gl.c:839,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/texturing_gl.c:840,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/texturing_gl.c:845,1
    - Dst: tx_bind
      Src: /src/gpac/src/compositor/texturing_gl.c:846,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/texturing_gl.c:847,1
    - Dst: gf_sc_texture_get_data
      Src: /src/gpac/src/compositor/texturing_gl.c:850,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/texturing_gl.c:853,1
    - Dst: gf_sc_texture_check_pause_on_first_load
      Src: /src/gpac/src/compositor/texturing_gl.c:855,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/compositor/texturing_gl.c:858,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/compositor/texturing_gl.c:864,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/texturing_gl.c:871,1
    - Dst: gf_gl_txw_upload
      Src: /src/gpac/src/compositor/texturing_gl.c:872,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/texturing_gl.c:873,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/texturing_gl.c:877,1
    - Dst: gf_mo_get_object_time
      Src: /src/gpac/src/compositor/texturing_gl.c:885,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/texturing_gl.c:886,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 107
    argCount: 3
    argNames:
    - txh
    - generate_mipmaps
    - for2d
    argTypes:
    - GF_TextureHandler*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 893
      start: 739
    functionDepth: 4
    functionLinenumber: 739
    functionLinenumberEnd: 893
    functionName: gf_sc_texture_push_image
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 5
    functionsReached:
    - gf_gl_txw_upload
    - GF_SAFEALLOC
    - gf_mo_get_object_time
    - gf_evg_stencil_new
    - GF_LOG
    - gf_filter_abort
    - GL_CHECK_ERR
    - gf_sc_texture_convert
    - gf_sc_texture_check_pause_on_first_load
    - gf_gl_txw_reset
    - glTexImage2D
    - gf_evg_stencil_set_texture_planes
    - tx_bind
    - gf_sc_texture_get_data
    - GF_TextureHandler*::frame_ifce::get_plane
    - tx_setup_format
    - gf_sys_clock
    - glDeleteTextures
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sc_texture_push_image(GF_TextureHandler *txh, Bool generate_mipmaps,
      Bool for2d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 898
    functionDepth: 0
    functionLinenumber: 898
    functionLinenumberEnd: 901
    functionName: gf_sc_texture_get_gl_id
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_sc_texture_get_gl_id(GF_TextureHandler *txh)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tx_setup_format
      Src: /src/gpac/src/compositor/texturing_gl.c:908,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/texturing_gl.c:911,1
    - Dst: tx_bind
      Src: /src/gpac/src/compositor/texturing_gl.c:913,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/texturing_gl.c:915,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/compositor/texturing_gl.c:918,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/compositor/texturing_gl.c:919,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/compositor/texturing_gl.c:920,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/compositor/texturing_gl.c:921,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/compositor/texturing_gl.c:922,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/texturing_gl.c:924,1
    - Dst: compositor_3d_enable_fbo
      Src: /src/gpac/src/compositor/texturing_gl.c:926,1
    - Dst: glCopyTexImage2D
      Src: /src/gpac/src/compositor/texturing_gl.c:927,1
    - Dst: compositor_3d_enable_fbo
      Src: /src/gpac/src/compositor/texturing_gl.c:928,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/texturing_gl.c:931,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/texturing_gl.c:933,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 934
      start: 904
    functionDepth: 4
    functionLinenumber: 904
    functionLinenumberEnd: 934
    functionName: gf_sc_copy_to_texture
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 1
    functionsReached:
    - glPixelStorei
    - compositor_3d_enable_fbo
    - glDisable
    - glTexParameteri
    - tx_bind
    - GL_CHECK_ERR
    - tx_setup_format
    - glCopyTexImage2D
    linkageType: ''
    returnType: void
    signature: void gf_sc_copy_to_texture(GF_TextureHandler *txh)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compositor_3d_setup_fbo
      Src: /src/gpac/src/compositor/texturing_gl.c:939,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 940
      start: 936
    functionDepth: 2
    functionLinenumber: 936
    functionLinenumberEnd: 940
    functionName: gf_sc_texture_setup_fbo
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 1
    functionsReached:
    - compositor_3d_setup_fbo
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sc_texture_setup_fbo(GF_TextureHandler *txh)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: glBindFramebuffer
      Src: /src/gpac/src/compositor/texturing_gl.c:946,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/texturing_gl.c:947,1
    - Dst: glBindTexture
      Src: /src/gpac/src/compositor/texturing_gl.c:949,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - txh
    - enable
    argTypes:
    - GF_TextureHandler*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 951
      start: 942
    functionDepth: 1
    functionLinenumber: 942
    functionLinenumberEnd: 951
    functionName: gf_sc_texture_enable_fbo
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 1
    functionsReached:
    - glBindTexture
    - GL_CHECK_ERR
    - glBindFramebuffer
    linkageType: ''
    returnType: void
    signature: void gf_sc_texture_enable_fbo(GF_TextureHandler *txh, Bool enable)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/texturing_gl.c:967,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/compositor/texturing_gl.c:967,1
    - Dst: compositor_3d_enable_fbo
      Src: /src/gpac/src/compositor/texturing_gl.c:969,1
    - Dst: glReadPixels
      Src: /src/gpac/src/compositor/texturing_gl.c:972,1
    - Dst: glReadPixels
      Src: /src/gpac/src/compositor/texturing_gl.c:974,1
    - Dst: glReadPixels
      Src: /src/gpac/src/compositor/texturing_gl.c:979,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/texturing_gl.c:995,1
    - Dst: glReadPixels
      Src: /src/gpac/src/compositor/texturing_gl.c:996,1
    - Dst: compositor_3d_enable_fbo
      Src: /src/gpac/src/compositor/texturing_gl.c:1019,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/texturing_gl.c:1022,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/texturing_gl.c:1025,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/texturing_gl.c:1026,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/texturing_gl.c:1027,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/texturing_gl.c:1029,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1032
      start: 958
    functionDepth: 1
    functionLinenumber: 958
    functionLinenumberEnd: 1032
    functionName: gf_sc_copy_to_stencil
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_4cc_to_str
    - GF_LOG
    - compositor_3d_enable_fbo
    - memcpy
    - glReadPixels
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void gf_sc_copy_to_stencil(GF_TextureHandler *txh)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: glReadPixels
      Src: /src/gpac/src/compositor/texturing_gl.c:1037,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1038
      start: 1035
    functionDepth: 0
    functionLinenumber: 1035
    functionLinenumberEnd: 1038
    functionName: gf_get_tinygl_depth
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 2
    functionsReached:
    - glReadPixels
    linkageType: ''
    returnType: void
    signature: void gf_get_tinygl_depth(GF_TextureHandler *txh)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/texturing_gl.c:1049,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/texturing_gl.c:1062,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/texturing_gl.c:1063,1
    - Dst: gf_mo_get_nb_views
      Src: /src/gpac/src/compositor/texturing_gl.c:1068,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/texturing_gl.c:1072,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/texturing_gl.c:1078,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/texturing_gl.c:1080,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/texturing_gl.c:1086,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/texturing_gl.c:1088,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/texturing_gl.c:1096,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/texturing_gl.c:1098,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/texturing_gl.c:1106,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/texturing_gl.c:1106,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/texturing_gl.c:1106,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/texturing_gl.c:1113,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/texturing_gl.c:1123,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/texturing_gl.c:1129,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/texturing_gl.c:1132,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/compositor/texturing_gl.c:1133,1
    - Dst: fabs
      Src: /src/gpac/src/compositor/texturing_gl.c:1134,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/compositor/texturing_gl.c:1134,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/texturing_gl.c:1135,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/texturing_gl.c:1137,1
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/compositor/texturing_gl.c:1140,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/texturing_gl.c:1141,1
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/compositor/texturing_gl.c:1143,1
    - Dst: memset
      Src: /src/gpac/src/compositor/texturing_gl.c:1151,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/texturing_gl.c:1160,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/texturing_gl.c:1162,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 89
    argCount: 4
    argNames:
    - txh
    - tx_transform
    - mx
    - for_picking
    argTypes:
    - GF_TextureHandler*
    - GF_Node*
    - GF_Matrix*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1174
      start: 1043
    functionDepth: 2
    functionLinenumber: 1043
    functionLinenumberEnd: 1174
    functionName: gf_sc_texture_get_transform
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_mx2d_add_translation
    - INT2FIX
    - gf_mx_from_mx2d
    - gf_mx_add_translation
    - gf_mx_init
    - gf_mx2d_add_scale
    - gf_mx_add_matrix
    - memset
    - gf_mo_get_nb_views
    - fabs
    - gf_mx_copy
    - gf_mx_add_scale
    - gf_mx2d_init
    - gf_mx2d_add_rotation
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sc_texture_get_transform(GF_TextureHandler *txh, GF_Node *tx_transform,
      GF_Matrix *mx, Bool for_picking)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/compositor/texturing_gl.c:1186,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1189
      start: 1176
    functionDepth: 0
    functionLinenumber: 1176
    functionLinenumberEnd: 1189
    functionName: gf_sc_texture_is_transparent
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 4
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sc_texture_is_transparent(GF_TextureHandler *txh)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_needs_reload
      Src: /src/gpac/src/compositor/texturing_gl.c:1223,1
    - Dst: compositor_gradient_update
      Src: /src/gpac/src/compositor/texturing_gl.c:1224,1
    - Dst: glGetError
      Src: /src/gpac/src/compositor/texturing_gl.c:1230,1
    - Dst: gf_sc_texture_push_image
      Src: /src/gpac/src/compositor/texturing_gl.c:1231,1
    - Dst: glGetError
      Src: /src/gpac/src/compositor/texturing_gl.c:1232,1
    - Dst: glGetError
      Src: /src/gpac/src/compositor/texturing_gl.c:1238,1
    - Dst: GF_TextureHandler*::compute_gradient_matrix
      Src: /src/gpac/src/compositor/texturing_gl.c:1242,1
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/compositor/texturing_gl.c:1243,1
    - Dst: visual_3d_set_texture_matrix
      Src: /src/gpac/src/compositor/texturing_gl.c:1244,1
    - Dst: gf_sc_texture_get_transform
      Src: /src/gpac/src/compositor/texturing_gl.c:1246,1
    - Dst: visual_3d_set_texture_matrix
      Src: /src/gpac/src/compositor/texturing_gl.c:1247,1
    - Dst: visual_3d_set_texture_matrix
      Src: /src/gpac/src/compositor/texturing_gl.c:1249,1
    - Dst: visual_3d_check_program_exists
      Src: /src/gpac/src/compositor/texturing_gl.c:1257,1
    - Dst: glUseProgram
      Src: /src/gpac/src/compositor/texturing_gl.c:1260,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/texturing_gl.c:1261,1
    - Dst: tx_bind_with_mode
      Src: /src/gpac/src/compositor/texturing_gl.c:1262,1
    - Dst: tx_bind
      Src: /src/gpac/src/compositor/texturing_gl.c:1266,1
    - Dst: glGetError
      Src: /src/gpac/src/compositor/texturing_gl.c:1269,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 56
    argCount: 3
    argNames:
    - txh
    - tx_transform
    - bounds
    argTypes:
    - GF_TextureHandler*
    - GF_Node*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1272
      start: 1193
    functionDepth: 10
    functionLinenumber: 1193
    functionLinenumberEnd: 1272
    functionName: gf_sc_texture_enable_ex
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 1
    functionsReached:
    - gf_sc_texture_get_transform
    - GF_TextureHandler*::compute_gradient_matrix
    - gf_sc_texture_push_image
    - tx_bind_with_mode
    - gf_mx_from_mx2d
    - visual_3d_set_texture_matrix
    - GL_CHECK_ERR
    - gf_sc_texture_needs_reload
    - glGetError
    - tx_bind
    - glUseProgram
    - visual_3d_check_program_exists
    - compositor_gradient_update
    linkageType: ''
    returnType: u32
    signature: u32 gf_sc_texture_enable_ex(GF_TextureHandler *txh, GF_Node *tx_transform,
      GF_Rect *bounds)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_texture_enable_ex
      Src: /src/gpac/src/compositor/texturing_gl.c:1276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - txh
    - tx_transform
    argTypes:
    - GF_TextureHandler*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1277
      start: 1274
    functionDepth: 11
    functionLinenumber: 1274
    functionLinenumberEnd: 1277
    functionName: gf_sc_texture_enable
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 10
    functionsReached:
    - gf_sc_texture_enable_ex
    linkageType: ''
    returnType: u32
    signature: u32 gf_sc_texture_enable(GF_TextureHandler *txh, GF_Node *tx_transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1285
      start: 1282
    functionDepth: 0
    functionLinenumber: 1282
    functionLinenumberEnd: 1285
    functionName: gf_sc_texture_needs_reload
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sc_texture_needs_reload(GF_TextureHandler *txh)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - txh
    argTypes:
    - GF_TextureHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1291
      start: 1288
    functionDepth: 0
    functionLinenumber: 1288
    functionLinenumberEnd: 1291
    functionName: gf_sc_texture_get_stencil
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: GF_EVGStencil
    signature: GF_EVGStencil * gf_sc_texture_get_stencil(GF_TextureHandler *txh)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - txh
    - stencil
    argTypes:
    - GF_TextureHandler*
    - GF_EVGStencil*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1297
      start: 1293
    functionDepth: 0
    functionLinenumber: 1293
    functionLinenumberEnd: 1297
    functionName: gf_sc_texture_set_stencil
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_sc_texture_set_stencil(GF_TextureHandler *txh, GF_EVGStencil
      * stencil)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sc_ar_control
      Src: /src/gpac/src/compositor/texturing_gl.c:1309,1
    - Dst: gf_sc_ar_control
      Src: /src/gpac/src/compositor/texturing_gl.c:1314,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 2
    argNames:
    - txh
    - do_freeze
    argTypes:
    - GF_TextureHandler*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1317
      start: 1299
    functionDepth: 1
    functionLinenumber: 1299
    functionLinenumberEnd: 1317
    functionName: gf_sc_texture_check_pause_on_first_load
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 3
    functionsReached:
    - gf_sc_ar_control
    linkageType: ''
    returnType: void
    signature: void gf_sc_texture_check_pause_on_first_load(GF_TextureHandler *txh,
      Bool do_freeze)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - rc1
    - ','
    - rc2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: irect_rect_equal
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: irect_rect_equal(rc1, rc2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ra
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 60
    functionName: ra_init
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ra_init(ra)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ra
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 62
    functionName: ra_del
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ra_del(ra)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ra
    - ','
    - rc
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 72
    functionName: ra_add
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ra_add(ra, rc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - visual
    - tr_state
    - ctx
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    - struct _drawable_context*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: visual_draw_bitmap_stub
    functionSourceFile: /src/gpac/src/compositor/visual_manager.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool visual_draw_bitmap_stub(GF_VisualManager *visual, GF_TraverseState
      *tr_state, struct _drawable_context *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/visual_manager.c:45,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager.c:47,1
    - Dst: ra_init
      Src: /src/gpac/src/compositor/visual_manager.c:53,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/visual_manager.c:55,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/visual_manager.c:56,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/compositor/visual_manager.c:59,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/visual_manager.c:65,1
    - Dst: visual_draw_bitmap_stub
      Src: /src/gpac/src/compositor/visual_manager.c:66,1
    - Dst: visual_reset_graphics
      Src: /src/gpac/src/compositor/visual_manager.c:67,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/visual_manager.c:74,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/visual_manager.c:75,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/visual_manager.c:77,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/visual_manager.c:78,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 1
    argNames:
    - compositor
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 82
    functionName: visual_new
    functionSourceFile: /src/gpac/src/compositor/visual_manager.c
    functionUses: 4
    functionsReached:
    - gf_list_new
    - ra_init
    - GF_SAFEALLOC
    - GF_LOG
    - gf_evg_stencil_new
    - visual_draw_bitmap_stub
    - visual_reset_graphics
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_VisualManager
    signature: GF_VisualManager *visual_new(GF_Compositor *compositor)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ra_del
      Src: /src/gpac/src/compositor/visual_manager.c:86,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/compositor/visual_manager.c:88,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/compositor/visual_manager.c:90,1
    - Dst: DeleteDrawableContext
      Src: /src/gpac/src/compositor/visual_manager.c:96,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager.c:101,1
    - Dst: BindableStackDelete
      Src: /src/gpac/src/compositor/visual_manager.c:105,1
    - Dst: BindableStackDelete
      Src: /src/gpac/src/compositor/visual_manager.c:106,1
    - Dst: visual_3d_reset_graphics
      Src: /src/gpac/src/compositor/visual_manager.c:110,1
    - Dst: ra_del
      Src: /src/gpac/src/compositor/visual_manager.c:111,1
    - Dst: BindableStackDelete
      Src: /src/gpac/src/compositor/visual_manager.c:114,1
    - Dst: BindableStackDelete
      Src: /src/gpac/src/compositor/visual_manager.c:115,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/visual_manager.c:118,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/visual_manager.c:119,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager.c:121,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 84
    functionDepth: 4
    functionLinenumber: 84
    functionLinenumberEnd: 122
    functionName: visual_del
    functionSourceFile: /src/gpac/src/compositor/visual_manager.c
    functionUses: 3
    functionsReached:
    - gf_free
    - gf_evg_stencil_delete
    - BindableStackDelete
    - DeleteDrawableContext
    - ra_del
    - gf_evg_surface_delete
    - visual_3d_reset_graphics
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void visual_del(GF_VisualManager *visual)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager.c:133,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager.c:134,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager.c:142,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager.c:143,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager.c:148,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager.c:150,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 3
    argNames:
    - tr_state
    - surf_width
    - surf_height
    argTypes:
    - GF_TraverseState*
    - Fixed*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 154
    functionName: visual_get_size_info
    functionSourceFile: /src/gpac/src/compositor/visual_manager.c
    functionUses: 4
    functionsReached:
    - gf_divfix
    - INT2FIX
    linkageType: ''
    returnType: Bool
    signature: Bool visual_get_size_info(GF_TraverseState *tr_state, Fixed *surf_width,
      Fixed *surf_height)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_dirty_reset
      Src: /src/gpac/src/compositor/visual_manager.c:165,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/visual_manager.c:180,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/visual_manager.c:182,1
    - Dst: gf_node_dirty_reset
      Src: /src/gpac/src/compositor/visual_manager.c:186,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 156
    functionDepth: 3
    functionLinenumber: 156
    functionLinenumberEnd: 192
    functionName: visual_clean_contexts
    functionSourceFile: /src/gpac/src/compositor/visual_manager.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_node_dirty_reset
    linkageType: ''
    returnType: void
    signature: void visual_clean_contexts(GF_VisualManager *visual)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: visual_3d_draw_frame
      Src: /src/gpac/src/compositor/visual_manager.c:198,1
    - Dst: visual_clean_contexts
      Src: /src/gpac/src/compositor/visual_manager.c:199,1
    - Dst: visual_3d_clean_state
      Src: /src/gpac/src/compositor/visual_manager.c:203,1
    - Dst: visual_2d_draw_frame
      Src: /src/gpac/src/compositor/visual_manager.c:205,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - visual
    - root
    - tr_state
    - is_root_visual
    argTypes:
    - GF_VisualManager*
    - GF_Node*
    - GF_TraverseState*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 194
    functionDepth: 12
    functionLinenumber: 194
    functionLinenumberEnd: 206
    functionName: visual_draw_frame
    functionSourceFile: /src/gpac/src/compositor/visual_manager.c
    functionUses: 2
    functionsReached:
    - visual_2d_draw_frame
    - visual_clean_contexts
    - visual_3d_draw_frame
    - visual_3d_clean_state
    linkageType: ''
    returnType: Bool
    signature: Bool visual_draw_frame(GF_VisualManager *visual, GF_Node *root, GF_TraverseState
      *tr_state, Bool is_root_visual)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/compositor/visual_manager.c:217,1
    - Dst: gf_sc_get_nodes_bounds
      Src: /src/gpac/src/compositor/visual_manager.c:220,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/visual_manager.c:228,1
    - Dst: gf_rect_center
      Src: /src/gpac/src/compositor/visual_manager.c:241,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/visual_manager.c:245,1
    - Dst: gf_rect_center
      Src: /src/gpac/src/compositor/visual_manager.c:246,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/visual_manager.c:254,1
    - Dst: gf_rect_center
      Src: /src/gpac/src/compositor/visual_manager.c:255,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager.c:261,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/compositor/visual_manager.c:264,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/visual_manager.c:268,1
    - Dst: gf_rect_union
      Src: /src/gpac/src/compositor/visual_manager.c:269,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/visual_manager.c:276,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/compositor/visual_manager.c:278,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/visual_manager.c:281,1
    - Dst: gf_rect_center
      Src: /src/gpac/src/compositor/visual_manager.c:282,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/visual_manager.c:288,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/compositor/visual_manager.c:291,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/visual_manager.c:295,1
    - Dst: gf_rect_union
      Src: /src/gpac/src/compositor/visual_manager.c:296,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/visual_manager.c:302,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/visual_manager.c:304,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 73
    argCount: 4
    argNames:
    - self
    - children
    - tr_state
    - child_idx
    argTypes:
    - GF_Node*
    - GF_ChildNodeItem*
    - GF_TraverseState*
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 208
    functionDepth: 6
    functionLinenumber: 208
    functionLinenumberEnd: 307
    functionName: gf_sc_get_nodes_bounds
    functionSourceFile: /src/gpac/src/compositor/visual_manager.c
    functionUses: 8
    functionsReached:
    - gf_node_get_tag
    - gf_sc_get_nodes_bounds
    - gf_mx2d_add_matrix
    - gf_node_traverse
    - gf_node_get_attribute_by_tag
    - gf_mx2d_apply_rect
    - gf_mx2d_init
    - gf_rect_center
    - gf_rect_union
    - gf_mx2d_pre_multiply
    - gf_mx2d_copy
    linkageType: ''
    returnType: void
    signature: void gf_sc_get_nodes_bounds(GF_Node *self, GF_ChildNodeItem *children,
      GF_TraverseState *tr_state, s32 *child_idx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: visual_3d_reset_graphics
      Src: /src/gpac/src/compositor/visual_manager.c:314,1
    - Dst: compositor_2d_reset_gl_auto
      Src: /src/gpac/src/compositor/visual_manager.c:316,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 309
    functionDepth: 2
    functionLinenumber: 309
    functionLinenumberEnd: 318
    functionName: visual_reset_graphics
    functionSourceFile: /src/gpac/src/compositor/visual_manager.c
    functionUses: 2
    functionsReached:
    - visual_3d_reset_graphics
    - compositor_2d_reset_gl_auto
    linkageType: ''
    returnType: void
    signature: void visual_reset_graphics(GF_VisualManager *visual)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/compositor/audio_render.c:33,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/audio_render.c:34,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_render.c:39,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_render.c:41,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - filter
    - pid
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 43
    functionName: gf_ar_rcfg_done
    functionSourceFile: /src/gpac/src/compositor/audio_render.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_data
    - gf_assert
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void gf_ar_rcfg_done(GF_Filter *filter, GF_FilterPid *pid, GF_FilterPacket
      *pck)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_audio_fmt_get_cicp_layout
      Src: /src/gpac/src/compositor/audio_render.c:57,1
    - Dst: gf_audio_fmt_get_layout_from_cicp
      Src: /src/gpac/src/compositor/audio_render.c:58,1
    - Dst: gf_mixer_get_config
      Src: /src/gpac/src/compositor/audio_render.c:65,1
    - Dst: gf_mixer_set_config
      Src: /src/gpac/src/compositor/audio_render.c:74,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/compositor/audio_render.c:87,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_render.c:93,1
    - Dst: gf_audio_fmt_name
      Src: /src/gpac/src/compositor/audio_render.c:93,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/audio_render.c:96,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/audio_render.c:96,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/audio_render.c:97,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/audio_render.c:97,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/audio_render.c:98,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/audio_render.c:98,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/audio_render.c:99,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/audio_render.c:99,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/audio_render.c:100,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/compositor/audio_render.c:100,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/audio_render.c:101,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/audio_render.c:101,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/audio_render.c:102,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/audio_render.c:102,1
    - Dst: gf_filter_pid_set_max_buffer
      Src: /src/gpac/src/compositor/audio_render.c:104,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/compositor/audio_render.c:113,1
    - Dst: gf_filter_pck_set_readonly
      Src: /src/gpac/src/compositor/audio_render.c:116,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/compositor/audio_render.c:117,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 57
    argCount: 1
    argNames:
    - ar
    argTypes:
    - GF_AudioRenderer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 45
    functionDepth: 2
    functionLinenumber: 45
    functionLinenumberEnd: 121
    functionName: gf_ar_setup_output_format
    functionSourceFile: /src/gpac/src/compositor/audio_render.c
    functionUses: 0
    functionsReached:
    - gf_mixer_get_config
    - gf_filter_pck_new_shared
    - gf_audio_fmt_get_cicp_layout
    - PROP_UINT
    - gf_filter_pck_set_readonly
    - GF_LOG
    - gf_audio_fmt_name
    - gf_filter_pid_set_max_buffer
    - gf_filter_pck_send
    - gf_mixer_set_config
    - PROP_LONGUINT
    - gf_filter_pid_set_property
    - gf_audio_fmt_bit_depth
    - gf_audio_fmt_get_layout_from_cicp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ar_setup_output_format(GF_AudioRenderer *ar)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_render.c:126,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/compositor/audio_render.c:129,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/audio_render.c:131,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/audio_render.c:132,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_render.c:134,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/compositor/audio_render.c:134,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/audio_render.c:140,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/audio_render.c:142,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/compositor/audio_render.c:145,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_render.c:146,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/compositor/audio_render.c:146,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_render.c:150,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 4
    argNames:
    - ar
    - DoFreeze
    - for_reconfig
    - reset_hw_buffer
    argTypes:
    - GF_AudioRenderer*
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 151
    functionName: gf_ar_pause
    functionSourceFile: /src/gpac/src/compositor/audio_render.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GF_FEVT_INIT
    - gf_mixer_lock
    - gf_filter_pid_send_event
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: void
    signature: void gf_ar_pause(GF_AudioRenderer *ar, Bool DoFreeze, Bool for_reconfig,
      Bool reset_hw_buffer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/audio_render.c:157,1
    - Dst: memset
      Src: /src/gpac/src/compositor/audio_render.c:158,1
    - Dst: gf_mixer_new
      Src: /src/gpac/src/compositor/audio_render.c:162,1
    - Dst: MIN
      Src: /src/gpac/src/compositor/audio_render.c:164,1
    - Dst: MIN
      Src: /src/gpac/src/compositor/audio_render.c:165,1
    - Dst: gf_ar_setup_output_format
      Src: /src/gpac/src/compositor/audio_render.c:167,1
    - Dst: gf_mixer_set_max_speed
      Src: /src/gpac/src/compositor/audio_render.c:169,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - compositor
    - init_flags
    argTypes:
    - GF_Compositor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 154
    functionDepth: 3
    functionLinenumber: 154
    functionLinenumberEnd: 172
    functionName: gf_sc_ar_load
    functionSourceFile: /src/gpac/src/compositor/audio_render.c
    functionUses: 1
    functionsReached:
    - gf_ar_setup_output_format
    - MIN
    - memset
    - gf_mixer_set_max_speed
    - gf_mixer_new
    - gf_malloc
    linkageType: ''
    returnType: GF_AudioRenderer
    signature: GF_AudioRenderer *gf_sc_ar_load(GF_Compositor *compositor, u32 init_flags)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_render.c:178,1
    - Dst: gf_sc_ar_control
      Src: /src/gpac/src/compositor/audio_render.c:180,1
    - Dst: gf_mixer_del
      Src: /src/gpac/src/compositor/audio_render.c:182,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/audio_render.c:183,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_render.c:184,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ar
    argTypes:
    - GF_AudioRenderer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 174
    functionDepth: 2
    functionLinenumber: 174
    functionLinenumberEnd: 185
    functionName: gf_sc_ar_del
    functionSourceFile: /src/gpac/src/compositor/audio_render.c
    functionUses: 1
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_sc_ar_control
    - gf_mixer_del
    linkageType: ''
    returnType: void
    signature: void gf_sc_ar_del(GF_AudioRenderer *ar)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mixer_remove_all
      Src: /src/gpac/src/compositor/audio_render.c:192,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ar
    argTypes:
    - GF_AudioRenderer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 188
    functionDepth: 2
    functionLinenumber: 188
    functionLinenumberEnd: 200
    functionName: gf_sc_ar_reset
    functionSourceFile: /src/gpac/src/compositor/audio_render.c
    functionUses: 1
    functionsReached:
    - gf_mixer_remove_all
    linkageType: ''
    returnType: void
    signature: void gf_sc_ar_reset(GF_AudioRenderer *ar)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_ar_pause
      Src: /src/gpac/src/compositor/audio_render.c:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ar
    - PauseType
    argTypes:
    - GF_AudioRenderer*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 202
    functionDepth: 2
    functionLinenumber: 202
    functionLinenumberEnd: 205
    functionName: gf_sc_ar_control
    functionSourceFile: /src/gpac/src/compositor/audio_render.c
    functionUses: 4
    functionsReached:
    - gf_ar_pause
    linkageType: ''
    returnType: void
    signature: void gf_sc_ar_control(GF_AudioRenderer *ar, u32 PauseType)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/audio_render.c:212,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/audio_render.c:212,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ar
    - Volume
    argTypes:
    - GF_AudioRenderer*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 213
    functionName: gf_sc_ar_set_volume
    functionSourceFile: /src/gpac/src/compositor/audio_render.c
    functionUses: 2
    functionsReached:
    - gf_filter_pid_set_property
    - PROP_UINT
    linkageType: ''
    returnType: void
    signature: void gf_sc_ar_set_volume(GF_AudioRenderer *ar, u32 Volume)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/audio_render.c:218,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/audio_render.c:218,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ar
    - mute
    argTypes:
    - GF_AudioRenderer*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 219
    functionName: gf_sc_ar_mute
    functionSourceFile: /src/gpac/src/compositor/audio_render.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_set_property
    - PROP_UINT
    linkageType: ''
    returnType: void
    signature: void gf_sc_ar_mute(GF_AudioRenderer *ar, Bool mute)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/audio_render.c:226,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/audio_render.c:226,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ar
    - Balance
    argTypes:
    - GF_AudioRenderer*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 227
    functionName: gf_sc_ar_set_pan
    functionSourceFile: /src/gpac/src/compositor/audio_render.c
    functionUses: 2
    functionsReached:
    - gf_filter_pid_set_property
    - PROP_UINT
    linkageType: ''
    returnType: void
    signature: void gf_sc_ar_set_pan(GF_AudioRenderer *ar, u32 Balance)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: compositor_setup_aout
      Src: /src/gpac/src/compositor/audio_render.c:237,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_render.c:241,1
    - Dst: gf_mixer_add_input
      Src: /src/gpac/src/compositor/audio_render.c:242,1
    - Dst: gf_mixer_reconfig
      Src: /src/gpac/src/compositor/audio_render.c:244,1
    - Dst: gf_mixer_empty
      Src: /src/gpac/src/compositor/audio_render.c:247,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/audio_render.c:249,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/audio_render.c:250,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_render.c:254,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - ar
    - source
    argTypes:
    - GF_AudioRenderer*
    - GF_AudioInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 231
    functionDepth: 3
    functionLinenumber: 231
    functionLinenumberEnd: 255
    functionName: gf_sc_ar_add_src
    functionSourceFile: /src/gpac/src/compositor/audio_render.c
    functionUses: 1
    functionsReached:
    - gf_mixer_reconfig
    - compositor_setup_aout
    - GF_FEVT_INIT
    - gf_mixer_lock
    - gf_filter_pid_send_event
    - gf_mixer_empty
    - gf_mixer_add_input
    linkageType: ''
    returnType: void
    signature: void gf_sc_ar_add_src(GF_AudioRenderer *ar, GF_AudioInterface *source)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mixer_remove_input
      Src: /src/gpac/src/compositor/audio_render.c:260,1
    - Dst: gf_mixer_empty
      Src: /src/gpac/src/compositor/audio_render.c:261,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/audio_render.c:263,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/audio_render.c:264,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ar
    - source
    argTypes:
    - GF_AudioRenderer*
    - GF_AudioInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 257
    functionDepth: 2
    functionLinenumber: 257
    functionLinenumberEnd: 267
    functionName: gf_sc_ar_remove_src
    functionSourceFile: /src/gpac/src/compositor/audio_render.c
    functionUses: 2
    functionsReached:
    - gf_mixer_empty
    - GF_FEVT_INIT
    - gf_mixer_remove_input
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: void
    signature: void gf_sc_ar_remove_src(GF_AudioRenderer *ar, GF_AudioInterface *source)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/compositor/audio_render.c:274,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/compositor/audio_render.c:274,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ar
    - priority
    argTypes:
    - GF_AudioRenderer*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 271
    functionDepth: 1
    functionLinenumber: 271
    functionLinenumberEnd: 275
    functionName: gf_sc_ar_set_priority
    functionSourceFile: /src/gpac/src/compositor/audio_render.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_property
    - PROP_UINT
    linkageType: ''
    returnType: void
    signature: void gf_sc_ar_set_priority(GF_AudioRenderer *ar, u32 priority)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ar
    - video_ts
    argTypes:
    - GF_AudioRenderer*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 281
    functionName: gf_sc_ar_update_video_clock
    functionSourceFile: /src/gpac/src/compositor/audio_render.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_sc_ar_update_video_clock(GF_AudioRenderer *ar, u32 video_ts)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/compositor/audio_render.c:286,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/compositor/audio_render.c:287,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - filter
    - pid
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 283
    functionDepth: 1
    functionLinenumber: 283
    functionLinenumberEnd: 294
    functionName: gf_ar_pck_done
    functionSourceFile: /src/gpac/src/compositor/audio_render.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_udta
    - gf_filter_pck_get_data
    linkageType: ''
    returnType: void
    signature: void gf_ar_pck_done(GF_Filter *filter, GF_FilterPid *pid, GF_FilterPacket
      *pck)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/compositor/audio_render.c:299,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_render.c:315,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/compositor/audio_render.c:334,1
    - Dst: gf_filter_pck_new_alloc_destructor
      Src: /src/gpac/src/compositor/audio_render.c:337,1
    - Dst: gf_filter_get_clock_hint
      Src: /src/gpac/src/compositor/audio_render.c:342,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_render.c:358,1
    - Dst: gf_mixer_get_output
      Src: /src/gpac/src/compositor/audio_render.c:359,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_render.c:360,1
    - Dst: gf_mixer_buffering
      Src: /src/gpac/src/compositor/audio_render.c:367,1
    - Dst: gf_mixer_is_eos
      Src: /src/gpac/src/compositor/audio_render.c:368,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/compositor/audio_render.c:373,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/compositor/audio_render.c:374,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/compositor/audio_render.c:378,1
    - Dst: gf_mixer_buffering
      Src: /src/gpac/src/compositor/audio_render.c:384,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/compositor/audio_render.c:394,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/compositor/audio_render.c:396,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/compositor/audio_render.c:397,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/compositor/audio_render.c:399,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_render.c:400,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/compositor/audio_render.c:403,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 88
    argCount: 1
    argNames:
    - ar
    argTypes:
    - GF_AudioRenderer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 296
    functionDepth: 4
    functionLinenumber: 296
    functionLinenumberEnd: 415
    functionName: gf_ar_send_packets
    functionSourceFile: /src/gpac/src/compositor/audio_render.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_clock_hint
    - gf_filter_pck_truncate
    - gf_filter_pck_set_cts
    - GF_LOG
    - gf_mixer_is_eos
    - gf_filter_pck_set_duration
    - gf_filter_pid_would_block
    - gf_filter_pid_set_eos
    - gf_filter_pck_new_alloc_destructor
    - gf_mixer_lock
    - gf_filter_pck_set_sap
    - gf_mixer_buffering
    - gf_filter_pck_discard
    - gf_mixer_get_output
    - gf_sys_clock_high_res
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void gf_ar_send_packets(GF_AudioRenderer *ar)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/audio_render.c:422,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_render.c:424,1
    - Dst: gf_ar_pause
      Src: /src/gpac/src/compositor/audio_render.c:428,1
    - Dst: gf_ar_setup_output_format
      Src: /src/gpac/src/compositor/audio_render.c:431,1
    - Dst: gf_ar_pause
      Src: /src/gpac/src/compositor/audio_render.c:434,1
    - Dst: gf_mixer_lock
      Src: /src/gpac/src/compositor/audio_render.c:437,1
    - Dst: gf_ar_send_packets
      Src: /src/gpac/src/compositor/audio_render.c:439,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - ar
    argTypes:
    - GF_AudioRenderer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 418
    functionDepth: 5
    functionLinenumber: 418
    functionLinenumberEnd: 440
    functionName: gf_sc_ar_send_or_reconfig
    functionSourceFile: /src/gpac/src/compositor/audio_render.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_mixer_lock
    - gf_ar_setup_output_format
    - gf_ar_send_packets
    - gf_ar_pause
    linkageType: ''
    returnType: void
    signature: void gf_sc_ar_send_or_reconfig(GF_AudioRenderer *ar)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ar
    argTypes:
    - GF_AudioRenderer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 443
    functionDepth: 0
    functionLinenumber: 443
    functionLinenumberEnd: 449
    functionName: gf_sc_ar_get_delay
    functionSourceFile: /src/gpac/src/compositor/audio_render.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_sc_ar_get_delay(GF_AudioRenderer *ar)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ar
    argTypes:
    - GF_AudioRenderer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 452
    functionDepth: 0
    functionLinenumber: 452
    functionLinenumberEnd: 455
    functionName: gf_sc_ar_get_clock
    functionSourceFile: /src/gpac/src/compositor/audio_render.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_sc_ar_get_clock(GF_AudioRenderer *ar)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _codec
    - ','
    - _val
    - ','
    - _nbBits
    - ','
    - _str
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 43
    functionName: GF_LSR_READ_INT
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GF_LSR_READ_INT(_codec, _val, _nbBits, _str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:57,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:59,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:60,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:61,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:62,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:63,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 67
    functionName: GF_LASeRCodec *gf_laser_decoder_new(GF_SceneGraph *graph)
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_LASeRCodec *gf_laser_decoder_new(GF_SceneGraph *graph)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:73,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:74,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:75,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:76,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:78,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:79,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:80,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:81,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:82,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:83,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:85,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:87,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:88,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:89,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:90,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:94,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:95,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:96,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:97,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:98,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 1
    argNames:
    - codec
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 99
    functionName: gf_laser_decoder_del
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - gf_list_last
    - gf_list_rem_last
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_laser_decoder_del(GF_LASeRCodec *codec)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/laser/lsr_dec.c:105,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - codec
    - ESID
    argTypes:
    - GF_LASeRCodec*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 109
    functionName: lsr_get_stream
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: LASeRStreamInfo
    signature: LASeRStreamInfo *lsr_get_stream(GF_LASeRCodec *codec, u16 ESID)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: lsr_get_stream
      Src: /src/gpac/src/laser/lsr_dec.c:117,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:118,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/laser/lsr_dec.c:121,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:123,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:124,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:125,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:126,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:127,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:128,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:129,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:130,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:134,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:136,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:138,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:139,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:140,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:141,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:142,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:144,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/laser/lsr_dec.c:145,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 32
    argCount: 4
    argNames:
    - codec
    - ESID
    - dsi
    - dsi_len
    argTypes:
    - GF_LASeRCodec*
    - u16
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 147
    functionName: gf_laser_decoder_configure_stream
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_list_add
    - gf_bs_read_int
    - lsr_get_stream
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_laser_decoder_configure_stream(GF_LASeRCodec *codec, u16
      ESID, u8 *dsi, u32 dsi_len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:153,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:155,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:157,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - codec
    - ESID
    argTypes:
    - GF_LASeRCodec*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 163
    functionName: gf_laser_decoder_remove_stream
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_laser_decoder_remove_stream(GF_LASeRCodec *codec, u16
      ESID)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:172,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - co
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 175
    functionName: lsr_end_of_stream
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void lsr_end_of_stream(void *co)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - codec
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 181
    functionName: gf_laser_decode_has_conditionnals
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_laser_decode_has_conditionnals(GF_LASeRCodec *codec)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: lsr_get_stream
      Src: /src/gpac/src/laser/lsr_dec.c:189,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:196,1
    - Dst: gf_divfix
      Src: /src/gpac/src/laser/lsr_dec.c:198,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:198,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/laser/lsr_dec.c:200,1
    - Dst: gf_bs_set_eos_callback
      Src: /src/gpac/src/laser/lsr_dec.c:201,1
    - Dst: lsr_decode_laser_unit
      Src: /src/gpac/src/laser/lsr_dec.c:203,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/laser/lsr_dec.c:204,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 4
    argNames:
    - codec
    - ESID
    - data
    - data_len
    argTypes:
    - GF_LASeRCodec*
    - u16
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 207
    functionName: gf_laser_decode_au
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_bs_set_eos_callback
    - INT2FIX
    - gf_bs_new
    - lsr_decode_laser_unit
    - gf_divfix
    - gf_bs_del
    - lsr_get_stream
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_laser_decode_au(GF_LASeRCodec *codec, u16 ESID, const
      u8 *data, u32 data_len)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: lsr_get_stream
      Src: /src/gpac/src/laser/lsr_dec.c:216,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:223,1
    - Dst: gf_divfix
      Src: /src/gpac/src/laser/lsr_dec.c:225,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:225,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/laser/lsr_dec.c:227,1
    - Dst: gf_bs_set_eos_callback
      Src: /src/gpac/src/laser/lsr_dec.c:228,1
    - Dst: lsr_decode_laser_unit
      Src: /src/gpac/src/laser/lsr_dec.c:230,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/laser/lsr_dec.c:231,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:235,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:236,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_dec.c:237,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/laser/lsr_dec.c:238,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:240,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:242,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 5
    argNames:
    - codec
    - ESID
    - data
    - data_len
    - com_list
    argTypes:
    - GF_LASeRCodec*
    - u16
    - u8*
    - u32
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 209
    functionDepth: 2
    functionLinenumber: 209
    functionLinenumberEnd: 247
    functionName: gf_laser_decode_command_list
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_bs_set_eos_callback
    - INT2FIX
    - gf_assert
    - gf_bs_new
    - lsr_decode_laser_unit
    - gf_sg_find_node
    - gf_divfix
    - gf_bs_del
    - gf_list_count
    - gf_node_register
    - lsr_get_stream
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_laser_decode_command_list(GF_LASeRCodec *codec, u16 ESID,
      u8 *data, u32 data_len, GF_List *com_list)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - codec
    - st_cbk
    argTypes:
    - GF_LASeRCodec*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 254
    functionName: gf_laser_decoder_set_clock
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_laser_decoder_set_clock(GF_LASeRCodec *codec, Double (*GetSceneTime)(void
      *st_cbk), void *st_cbk )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:261,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:266,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:267,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - lsr
    - name
    argTypes:
    - GF_LASeRCodec*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 269
    functionName: lsr_read_vluimsbf5
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_read_int
    linkageType: ''
    returnType: u32
    signature: u32 lsr_read_vluimsbf5(GF_LASeRCodec *lsr, const char *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:275,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:280,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:281,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - lsr
    - name
    argTypes:
    - GF_LASeRCodec*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 270
    functionDepth: 1
    functionLinenumber: 270
    functionLinenumberEnd: 283
    functionName: lsr_read_vluimsbf8
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_read_int
    linkageType: ''
    returnType: u32
    signature: u32 lsr_read_vluimsbf8(GF_LASeRCodec *lsr, const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:287,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:289,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/laser/lsr_dec.c:290,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/laser/lsr_dec.c:293,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:294,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - lsr
    - name
    argTypes:
    - GF_LASeRCodec*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 285
    functionDepth: 2
    functionLinenumber: 285
    functionLinenumberEnd: 299
    functionName: lsr_read_extension
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - lsr_read_vluimsbf5
    - gf_bs_read_int
    - gf_bs_available
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void lsr_read_extension(GF_LASeRCodec *lsr, const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:304,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:305,1
    - Dst: gf_bs_is_align
      Src: /src/gpac/src/laser/lsr_dec.c:306,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:307,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/laser/lsr_dec.c:311,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:315,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 4
    argNames:
    - lsr
    - out_data
    - out_len
    - name
    argTypes:
    - GF_LASeRCodec*
    - char**
    - u32*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 301
    functionDepth: 2
    functionLinenumber: 301
    functionLinenumberEnd: 320
    functionName: lsr_read_extend_class
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - lsr_read_vluimsbf5
    - gf_bs_read_int
    - gf_bs_is_align
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: void
    signature: void lsr_read_extend_class(GF_LASeRCodec *lsr, char **out_data, u32
      *out_len, const char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:325,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:329,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/laser/lsr_dec.c:330,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:334,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/laser/lsr_dec.c:335,1
    - Dst: lsr_read_extend_class
      Src: /src/gpac/src/laser/lsr_dec.c:339,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:343,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/laser/lsr_dec.c:344,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 322
    functionDepth: 3
    functionLinenumber: 322
    functionLinenumberEnd: 347
    functionName: lsr_read_private_element_container
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_vluimsbf5
    - lsr_read_extend_class
    - GF_LSR_READ_INT
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: void
    signature: void lsr_read_private_element_container(GF_LASeRCodec *lsr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:354,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:355,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/laser/lsr_dec.c:356,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/laser/lsr_dec.c:359,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/laser/lsr_dec.c:363,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:368,1
    - Dst: privateAttribute
      Src: /src/gpac/src/laser/lsr_dec.c:370,1
    - Dst: uint
      Src: /src/gpac/src/laser/lsr_dec.c:375,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/laser/lsr_dec.c:376,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/laser/lsr_dec.c:381,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/laser/lsr_dec.c:385,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:386,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 349
    functionDepth: 2
    functionLinenumber: 349
    functionLinenumberEnd: 388
    functionName: lsr_read_private_attribute_container
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - privateAttribute
    - GF_LSR_READ_INT
    - gf_bs_align
    - uint
    - lsr_read_vluimsbf5
    - gf_bs_available
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: void
    signature: void lsr_read_private_attribute_container(GF_LASeRCodec *lsr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:393,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:396,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:397,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:398,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:399,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - lsr
    - node
    - skippable
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 390
    functionDepth: 2
    functionLinenumber: 390
    functionLinenumberEnd: 403
    functionName: lsr_read_any_attribute
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_vluimsbf5
    - GF_LSR_READ_INT
    linkageType: ''
    returnType: void
    signature: void lsr_read_any_attribute(GF_LASeRCodec *lsr, GF_Node *node, Bool
      skippable)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:408,1
    - Dst: lsr_read_private_attribute_container
      Src: /src/gpac/src/laser/lsr_dec.c:409,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 405
    functionDepth: 3
    functionLinenumber: 405
    functionLinenumberEnd: 410
    functionName: lsr_read_object_content
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - lsr_read_private_attribute_container
    linkageType: ''
    returnType: void
    signature: void lsr_read_object_content(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:416,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:418,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:420,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:421,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/laser/lsr_dec.c:424,1
    - Dst: sprintf
      Src: /src/gpac/src/laser/lsr_dec.c:427,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:428,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:430,1
    - Dst: gf_node_register_iri
      Src: /src/gpac/src/laser/lsr_dec.c:436,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - lsr
    - href
    - name
    argTypes:
    - GF_LASeRCodec*
    - XMLRI*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 412
    functionDepth: 2
    functionLinenumber: 412
    functionLinenumberEnd: 437
    functionName: lsr_read_codec_IDREF
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_sg_find_node
    - GF_LSR_READ_INT
    - sprintf
    - gf_node_register_iri
    - lsr_read_vluimsbf5
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void lsr_read_codec_IDREF(GF_LASeRCodec *lsr, XMLRI *href, const char
      *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:442,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:444,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:446,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:447,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - name
    argTypes:
    - GF_LASeRCodec*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 439
    functionDepth: 2
    functionLinenumber: 439
    functionLinenumberEnd: 450
    functionName: lsr_read_codec_IDREF_command
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_vluimsbf5
    - GF_LSR_READ_INT
    linkageType: ''
    returnType: u32
    signature: u32 lsr_read_codec_IDREF_command(GF_LASeRCodec *lsr, const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:455,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:461,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:467,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - lsr
    - name
    argTypes:
    - GF_LASeRCodec*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 452
    functionDepth: 1
    functionLinenumber: 452
    functionLinenumberEnd: 470
    functionName: lsr_read_fixed_16_8
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - GF_LSR_READ_INT
    linkageType: ''
    returnType: Fixed
    signature: Fixed lsr_read_fixed_16_8(GF_LASeRCodec *lsr, const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:475,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:480,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - lsr
    - n
    - name
    argTypes:
    - GF_LASeRCodec*
    - SVG_Number*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 472
    functionDepth: 2
    functionLinenumber: 472
    functionLinenumberEnd: 482
    functionName: lsr_read_fixed_16_8i
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - lsr_read_fixed_16_8
    linkageType: ''
    returnType: void
    signature: void lsr_read_fixed_16_8i(GF_LASeRCodec *lsr, SVG_Number *n, const
      char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:491,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:492,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:493,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - lsr
    - idx
    - color
    argTypes:
    - GF_LASeRCodec*
    - u32
    - SVG_Color*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 495
      start: 485
    functionDepth: 1
    functionLinenumber: 485
    functionLinenumberEnd: 495
    functionName: lsr_get_color
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    linkageType: ''
    returnType: void
    signature: void lsr_get_color(GF_LASeRCodec *lsr, u32 idx, SVG_Color *color)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:501,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:503,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:507,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - lsr
    - li
    - name
    argTypes:
    - GF_LASeRCodec*
    - SVG_Number*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 509
      start: 498
    functionDepth: 2
    functionLinenumber: 498
    functionLinenumberEnd: 509
    functionName: lsr_read_line_increment_type
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - lsr_read_fixed_16_8
    linkageType: ''
    returnType: void
    signature: void lsr_read_line_increment_type(GF_LASeRCodec *lsr, SVG_Number *li,
      const char *name)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_align
      Src: /src/gpac/src/laser/lsr_dec.c:514,1
    - Dst: lsr_read_vluimsbf8
      Src: /src/gpac/src/laser/lsr_dec.c:515,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:517,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/laser/lsr_dec.c:520,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:524,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/laser/lsr_dec.c:529,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/laser/lsr_dec.c:533,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:538,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:542,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 3
    argNames:
    - lsr
    - str
    - name
    argTypes:
    - GF_LASeRCodec*
    - char**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 543
      start: 511
    functionDepth: 2
    functionLinenumber: 511
    functionLinenumberEnd: 543
    functionName: lsr_read_byte_align_string
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_read_data
    - GF_LOG
    - gf_bs_align
    - lsr_read_vluimsbf8
    - gf_bs_read_int
    - gf_bs_available
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void lsr_read_byte_align_string(GF_LASeRCodec *lsr, char **str, const
      char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:548,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/laser/lsr_dec.c:550,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 551
      start: 545
    functionDepth: 3
    functionLinenumber: 545
    functionLinenumberEnd: 551
    functionName: lsr_read_text_content
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_dom_add_text_node
    - lsr_read_byte_align_string
    linkageType: ''
    returnType: void
    signature: void lsr_read_text_content(GF_LASeRCodec *lsr, GF_Node *elt)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:561,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:562,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:563,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:564,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:567,1
    - Dst: strchr
      Src: /src/gpac/src/laser/lsr_dec.c:570,1
    - Dst: strchr
      Src: /src/gpac/src/laser/lsr_dec.c:572,1
    - Dst: strchr
      Src: /src/gpac/src/laser/lsr_dec.c:573,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:577,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:579,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:581,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:586,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:586,1
    - Dst: strchr
      Src: /src/gpac/src/laser/lsr_dec.c:590,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:593,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:595,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:597,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:602,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:602,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:611,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:613,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:615,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:620,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:620,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:630,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 74
    argCount: 5
    argNames:
    - lsr
    - l
    - name
    - is_iri
    - is_font
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    - char*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 553
    functionDepth: 3
    functionLinenumber: 553
    functionLinenumberEnd: 631
    functionName: lsr_read_byte_align_string_list
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - GF_SAFEALLOC
    - gf_list_count
    - gf_list_add
    - lsr_read_byte_align_string
    - strchr
    - gf_list_last
    - gf_list_rem_last
    linkageType: ''
    returnType: void
    signature: void lsr_read_byte_align_string_list(GF_LASeRCodec *lsr, GF_List *l,
      const char *name, Bool is_iri, Bool is_font)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:636,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:641,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:644,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:645,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:650,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/laser/lsr_dec.c:651,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:653,1
    - Dst: strlen
      Src: /src/gpac/src/laser/lsr_dec.c:656,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:657,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:660,1
    - Dst: strcpy
      Src: /src/gpac/src/laser/lsr_dec.c:666,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:667,1
    - Dst: strcat
      Src: /src/gpac/src/laser/lsr_dec.c:669,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/laser/lsr_dec.c:670,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:674,1
    - Dst: lsr_read_codec_IDREF
      Src: /src/gpac/src/laser/lsr_dec.c:675,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:677,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:680,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:681,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:683,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:684,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 52
    argCount: 3
    argNames:
    - lsr
    - iri
    - name
    argTypes:
    - GF_LASeRCodec*
    - XMLRI*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 687
      start: 633
    functionDepth: 3
    functionLinenumber: 633
    functionLinenumberEnd: 687
    functionName: lsr_read_any_uri
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - strcat
    - gf_bs_read_data
    - strcpy
    - GF_LSR_READ_INT
    - lsr_read_vluimsbf5
    - lsr_read_byte_align_string
    - gf_bs_available
    - lsr_read_codec_IDREF
    - strlen
    linkageType: ''
    returnType: void
    signature: void lsr_read_any_uri(GF_LASeRCodec *lsr, XMLRI *iri, const char *name)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:692,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:694,1
    - Dst: lsr_get_color
      Src: /src/gpac/src/laser/lsr_dec.c:695,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:699,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:702,1
    - Dst: memset
      Src: /src/gpac/src/laser/lsr_dec.c:719,1
    - Dst: lsr_read_any_uri
      Src: /src/gpac/src/laser/lsr_dec.c:721,1
    - Dst: gf_node_unregister_iri
      Src: /src/gpac/src/laser/lsr_dec.c:722,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/laser/lsr_dec.c:723,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:739,1
    - Dst: gf_svg_get_system_paint_server_type
      Src: /src/gpac/src/laser/lsr_dec.c:742,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:743,1
    - Dst: lsr_read_extension
      Src: /src/gpac/src/laser/lsr_dec.c:748,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 57
    argCount: 3
    argNames:
    - lsr
    - paint
    - name
    argTypes:
    - GF_LASeRCodec*
    - SVG_Paint*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 752
      start: 689
    functionDepth: 4
    functionLinenumber: 689
    functionLinenumberEnd: 752
    functionName: lsr_read_paint
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - lsr_read_extension
    - gf_svg_get_system_paint_server_type
    - GF_LSR_READ_INT
    - gf_node_unregister_iri
    - memset
    - gf_list_del_item
    - lsr_read_byte_align_string
    - lsr_read_any_uri
    - lsr_get_color
    linkageType: ''
    returnType: void
    signature: void lsr_read_paint(GF_LASeRCodec *lsr, SVG_Paint *paint, const char
      *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:757,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:760,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:761,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - lsr
    - elt
    - tag
    - name
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 754
    functionDepth: 5
    functionLinenumber: 754
    functionLinenumberEnd: 763
    functionName: lsr_read_string_attribute
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - lsr_read_byte_align_string
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_string_attribute(GF_LASeRCodec *lsr, GF_Node *elt, u32
      tag, char *name)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:769,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:773,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/laser/lsr_dec.c:774,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:776,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:779,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:780,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:784,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:786,1
    - Dst: atoi
      Src: /src/gpac/src/laser/lsr_dec.c:793,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:795,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:797,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:804,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:808,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:811,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:818,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:826,1
    - Dst: gf_node_dom_listener_add
      Src: /src/gpac/src/laser/lsr_dec.c:840,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_dec.c:842,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:843,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:849,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:851,1
    - Dst: lsr_setup_smil_anim
      Src: /src/gpac/src/laser/lsr_dec.c:852,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:853,1
    - Dst: gf_node_init
      Src: /src/gpac/src/laser/lsr_dec.c:856,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 69
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 859
      start: 764
    functionDepth: 9
    functionLinenumber: 764
    functionLinenumberEnd: 859
    functionName: lsr_read_id
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_init
    - gf_list_get
    - gf_assert
    - gf_node_get_attribute_by_tag
    - gf_node_set_id
    - GF_LSR_READ_INT
    - gf_node_dom_listener_add
    - gf_list_count
    - lsr_read_vluimsbf5
    - atoi
    - lsr_setup_smil_anim
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void lsr_read_id(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_divfix
      Src: /src/gpac/src/laser/lsr_dec.c:874,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:874,1
    - Dst: gf_divfix
      Src: /src/gpac/src/laser/lsr_dec.c:875,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:875,1
    - Dst: gf_divfix
      Src: /src/gpac/src/laser/lsr_dec.c:878,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:878,1
    - Dst: gf_divfix
      Src: /src/gpac/src/laser/lsr_dec.c:879,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:879,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 3
    argNames:
    - lsr
    - val
    - nb_bits
    argTypes:
    - GF_LASeRCodec*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 893
      start: 861
    functionDepth: 1
    functionLinenumber: 861
    functionLinenumberEnd: 893
    functionName: lsr_translate_coords
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_divfix
    - INT2FIX
    linkageType: ''
    returnType: Fixed
    signature: Fixed lsr_translate_coords(GF_LASeRCodec *lsr, u32 val, u32 nb_bits)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:903,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:905,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - lsr
    - val
    argTypes:
    - GF_LASeRCodec*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 907
      start: 895
    functionDepth: 1
    functionLinenumber: 895
    functionLinenumberEnd: 907
    functionName: lsr_translate_scale
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    linkageType: ''
    returnType: Fixed
    signature: Fixed lsr_translate_scale(GF_LASeRCodec *lsr, u32 val)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/laser/lsr_dec.c:911,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:913,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:915,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:917,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:919,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:920,1
    - Dst: lsr_read_extension
      Src: /src/gpac/src/laser/lsr_dec.c:923,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:927,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:929,1
    - Dst: lsr_translate_scale
      Src: /src/gpac/src/laser/lsr_dec.c:930,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:931,1
    - Dst: lsr_translate_scale
      Src: /src/gpac/src/laser/lsr_dec.c:932,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:936,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:938,1
    - Dst: lsr_translate_scale
      Src: /src/gpac/src/laser/lsr_dec.c:939,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:940,1
    - Dst: lsr_translate_scale
      Src: /src/gpac/src/laser/lsr_dec.c:941,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:944,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:946,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:947,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:948,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:949,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 42
    argCount: 2
    argNames:
    - lsr
    - mx
    argTypes:
    - GF_LASeRCodec*
    - SVG_Transform*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 953
      start: 908
    functionDepth: 3
    functionLinenumber: 908
    functionLinenumberEnd: 953
    functionName: lsr_read_matrix
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_extension
    - GF_LSR_READ_INT
    - lsr_translate_coords
    - gf_mx2d_init
    - lsr_translate_scale
    - lsr_read_fixed_16_8
    linkageType: ''
    returnType: void
    signature: void lsr_read_matrix(GF_LASeRCodec *lsr, SVG_Transform *mx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:958,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:959,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - lsr
    - name
    argTypes:
    - GF_LASeRCodec*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 960
      start: 955
    functionDepth: 1
    functionLinenumber: 955
    functionLinenumberEnd: 960
    functionName: lsr_read_fixed_clamp
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - GF_LSR_READ_INT
    linkageType: ''
    returnType: Fixed
    signature: Fixed lsr_read_fixed_clamp(GF_LASeRCodec *lsr, const char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:967,1
    - Dst: gf_node_unregister_iri
      Src: /src/gpac/src/laser/lsr_dec.c:971,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:973,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:975,1
    - Dst: lsr_read_codec_IDREF
      Src: /src/gpac/src/laser/lsr_dec.c:978,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - lsr
    - foc
    - name
    argTypes:
    - GF_LASeRCodec*
    - SVG_Focus*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 980
      start: 962
    functionDepth: 3
    functionLinenumber: 962
    functionLinenumberEnd: 980
    functionName: lsr_read_focus
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_unregister_iri
    - GF_LSR_READ_INT
    - lsr_read_codec_IDREF
    linkageType: ''
    returnType: void
    signature: void lsr_read_focus(GF_LASeRCodec *lsr, SVG_Focus *foc, const char
      *name)
  - BBCount: 58
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1075,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/laser/lsr_dec.c:1080,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1085,1
    - Dst: memset
      Src: /src/gpac/src/laser/lsr_dec.c:1086,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1090,1
    - Dst: memset
      Src: /src/gpac/src/laser/lsr_dec.c:1091,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 105
    argCount: 5
    argNames:
    - lsr
    - elt
    - base
    - reset_fill
    - reset_stroke
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - SVG_Element*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1099
      start: 982
    functionDepth: 5
    functionLinenumber: 982
    functionLinenumberEnd: 1099
    functionName: lsr_restore_base
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memset
    - gf_svg_attributes_copy
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_restore_base(GF_LASeRCodec *lsr, SVG_Element *elt, SVG_Element
      *base, Bool reset_fill, Bool reset_stroke)
  - BBCount: 22
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 45
    argCount: 1
    argNames:
    - lsr_k
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1150
      start: 1102
    functionDepth: 0
    functionLinenumber: 1102
    functionLinenumberEnd: 1150
    functionName: lsr_to_dom_key
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 lsr_to_dom_key(u32 lsr_k)
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/laser/lsr_dec.c:1155,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1157,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:1161,1
    - Dst: strchr
      Src: /src/gpac/src/laser/lsr_dec.c:1164,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/src/laser/lsr_dec.c:1168,1
    - Dst: strchr
      Src: /src/gpac/src/laser/lsr_dec.c:1171,1
    - Dst: atoi
      Src: /src/gpac/src/laser/lsr_dec.c:1174,1
    - Dst: gf_dom_get_key_type
      Src: /src/gpac/src/laser/lsr_dec.c:1176,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/src/laser/lsr_dec.c:1179,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1181,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1185,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:1287,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:1295,1
    - Dst: lsr_to_dom_key
      Src: /src/gpac/src/laser/lsr_dec.c:1296,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 144
    argCount: 2
    argNames:
    - lsr
    - evtType
    argTypes:
    - GF_LASeRCodec*
    - XMLEV_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1300
      start: 1152
    functionDepth: 3
    functionLinenumber: 1152
    functionLinenumberEnd: 1300
    functionName: lsr_read_event_type
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_dom_event_type_by_name
    - GF_LSR_READ_INT
    - memset
    - lsr_read_vluimsbf5
    - atoi
    - lsr_to_dom_key
    - lsr_read_byte_align_string
    - strchr
    - gf_dom_get_key_type
    linkageType: ''
    returnType: void
    signature: void lsr_read_event_type(GF_LASeRCodec *lsr, XMLEV_Event *evtType)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:1307,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1314,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1317,1
    - Dst: lsr_read_codec_IDREF
      Src: /src/gpac/src/laser/lsr_dec.c:1322,1
    - Dst: gf_node_unregister_iri
      Src: /src/gpac/src/laser/lsr_dec.c:1323,1
    - Dst: lsr_read_event_type
      Src: /src/gpac/src/laser/lsr_dec.c:1330,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/laser/lsr_dec.c:1333,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1336,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1339,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:1340,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 38
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1346
      start: 1302
    functionDepth: 4
    functionLinenumber: 1302
    functionLinenumberEnd: 1346
    functionName: lsr_read_smil_time
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_event_type
    - GF_SAFEALLOC
    - GF_LSR_READ_INT
    - gf_node_unregister_iri
    - lsr_read_vluimsbf5
    - gf_node_get_scene_time
    - lsr_read_codec_IDREF
    linkageType: ''
    returnType: SMIL_Time
    signature: SMIL_Time *lsr_read_smil_time(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1355,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1359,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:1363,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:1364,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:1365,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1366,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1367,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1370,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:1372,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:1375,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:1381,1
    - Dst: lsr_read_smil_time
      Src: /src/gpac/src/laser/lsr_dec.c:1383,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:1384,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 35
    argCount: 6
    argNames:
    - lsr
    - n
    - tag
    - times
    - name
    - skipable
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - u32
    - SMIL_Times*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1387
      start: 1348
    functionDepth: 5
    functionLinenumber: 1348
    functionLinenumberEnd: 1387
    functionName: lsr_read_smil_times
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_attribute_by_tag
    - GF_SAFEALLOC
    - GF_LSR_READ_INT
    - lsr_read_smil_time
    - gf_list_count
    - lsr_read_vluimsbf5
    - gf_list_add
    - gf_list_last
    - gf_list_rem_last
    linkageType: ''
    returnType: void
    signature: void lsr_read_smil_times(GF_LASeRCodec *lsr, GF_Node *n, u32 tag, SMIL_Times
      *times, const char *name, Bool skipable)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1395,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1399,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1406,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1408,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1412,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:1413,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 6
    argNames:
    - lsr
    - n
    - tag
    - smil
    - name
    - skipable
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - u32
    - SMIL_Duration*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1419
      start: 1389
    functionDepth: 5
    functionLinenumber: 1389
    functionLinenumberEnd: 1419
    functionName: lsr_read_duration_ex
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_vluimsbf5
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_duration_ex(GF_LASeRCodec *lsr, GF_Node *n, u32 tag,
      SMIL_Duration *smil, const char *name, Bool skipable)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lsr_read_duration_ex
      Src: /src/gpac/src/laser/lsr_dec.c:1422,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1423
      start: 1420
    functionDepth: 6
    functionLinenumber: 1420
    functionLinenumberEnd: 1423
    functionName: lsr_read_duration
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_duration_ex
    linkageType: ''
    returnType: void
    signature: void lsr_read_duration(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 83
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1431,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1433,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1436,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1442,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:1443,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1445,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1447,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1450,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1451,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1454,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1455,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1458,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1459,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1462,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1463,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1466,1
    - Dst: lsr_read_byte_align_string_list
      Src: /src/gpac/src/laser/lsr_dec.c:1467,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:1472,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1474,1
    - Dst: gf_lsr_rare_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:1479,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1483,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:1489,1
    - Dst: lsr_read_fixed_clamp
      Src: /src/gpac/src/laser/lsr_dec.c:1493,1
    - Dst: lsr_read_paint
      Src: /src/gpac/src/laser/lsr_dec.c:1496,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1499,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1502,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1505,1
    - Dst: lsr_read_fixed_clamp
      Src: /src/gpac/src/laser/lsr_dec.c:1509,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1512,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1515,1
    - Dst: lsr_read_line_increment_type
      Src: /src/gpac/src/laser/lsr_dec.c:1518,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1521,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1524,1
    - Dst: lsr_read_paint
      Src: /src/gpac/src/laser/lsr_dec.c:1527,1
    - Dst: lsr_read_fixed_clamp
      Src: /src/gpac/src/laser/lsr_dec.c:1531,1
    - Dst: lsr_read_paint
      Src: /src/gpac/src/laser/lsr_dec.c:1534,1
    - Dst: lsr_read_fixed_clamp
      Src: /src/gpac/src/laser/lsr_dec.c:1538,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1544,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:1549,1
    - Dst: gf_realloc
      Src: /src/gpac/src/laser/lsr_dec.c:1550,1
    - Dst: gf_realloc
      Src: /src/gpac/src/laser/lsr_dec.c:1551,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:1557,1
    - Dst: lsr_read_fixed_16_8i
      Src: /src/gpac/src/laser/lsr_dec.c:1565,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1569,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1572,1
    - Dst: lsr_read_fixed_16_8i
      Src: /src/gpac/src/laser/lsr_dec.c:1575,1
    - Dst: lsr_read_fixed_clamp
      Src: /src/gpac/src/laser/lsr_dec.c:1579,1
    - Dst: lsr_read_fixed_16_8i
      Src: /src/gpac/src/laser/lsr_dec.c:1582,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1585,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1588,1
    - Dst: lsr_read_paint
      Src: /src/gpac/src/laser/lsr_dec.c:1591,1
    - Dst: lsr_read_fixed_clamp
      Src: /src/gpac/src/laser/lsr_dec.c:1595,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1598,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1601,1
    - Dst: lsr_read_byte_align_string_list
      Src: /src/gpac/src/laser/lsr_dec.c:1604,1
    - Dst: lsr_read_byte_align_string_list
      Src: /src/gpac/src/laser/lsr_dec.c:1607,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:1611,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1614,1
    - Dst: lsr_read_byte_align_string_list
      Src: /src/gpac/src/laser/lsr_dec.c:1620,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:1623,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:1627,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1630,1
    - Dst: lsr_read_focus
      Src: /src/gpac/src/laser/lsr_dec.c:1634,1
    - Dst: lsr_read_focus
      Src: /src/gpac/src/laser/lsr_dec.c:1637,1
    - Dst: lsr_read_focus
      Src: /src/gpac/src/laser/lsr_dec.c:1640,1
    - Dst: lsr_read_focus
      Src: /src/gpac/src/laser/lsr_dec.c:1643,1
    - Dst: lsr_read_focus
      Src: /src/gpac/src/laser/lsr_dec.c:1646,1
    - Dst: lsr_read_focus
      Src: /src/gpac/src/laser/lsr_dec.c:1649,1
    - Dst: lsr_read_focus
      Src: /src/gpac/src/laser/lsr_dec.c:1652,1
    - Dst: lsr_read_focus
      Src: /src/gpac/src/laser/lsr_dec.c:1655,1
    - Dst: lsr_read_focus
      Src: /src/gpac/src/laser/lsr_dec.c:1658,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1661,1
    - Dst: lsr_read_focus
      Src: /src/gpac/src/laser/lsr_dec.c:1664,1
    - Dst: lsr_read_matrix
      Src: /src/gpac/src/laser/lsr_dec.c:1667,1
    - Dst: lsr_read_byte_align_string_list
      Src: /src/gpac/src/laser/lsr_dec.c:1670,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1674,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1679,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1685,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:1686,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:1687,1
    - Dst: lsr_read_fixed_16_8i
      Src: /src/gpac/src/laser/lsr_dec.c:1692,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1695,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1698,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:1701,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1705,1
    - Dst: lsr_read_any_uri
      Src: /src/gpac/src/laser/lsr_dec.c:1708,1
    - Dst: lsr_read_any_uri
      Src: /src/gpac/src/laser/lsr_dec.c:1711,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1715,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1719,1
    - Dst: lsr_read_smil_times
      Src: /src/gpac/src/laser/lsr_dec.c:1722,1
    - Dst: lsr_read_duration_ex
      Src: /src/gpac/src/laser/lsr_dec.c:1725,1
    - Dst: lsr_read_duration_ex
      Src: /src/gpac/src/laser/lsr_dec.c:1728,1
    CyclomaticComplexity: 92
    EdgeCount: 92
    ICount: 290
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1733
      start: 1425
    functionDepth: 6
    functionLinenumber: 1425
    functionLinenumberEnd: 1733
    functionName: lsr_read_rare_full
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_lsr_rare_type_to_attribute
    - GF_LSR_READ_INT
    - lsr_read_duration_ex
    - lsr_read_fixed_clamp
    - lsr_read_vluimsbf5
    - lsr_read_smil_times
    - gf_realloc
    - gf_list_get
    - gf_strdup
    - lsr_read_paint
    - lsr_read_focus
    - lsr_read_matrix
    - lsr_read_fixed_16_8i
    - gf_node_get_attribute_by_tag
    - lsr_read_any_uri
    - lsr_read_fixed_16_8
    - lsr_read_line_increment_type
    - gf_bs_read_int
    - lsr_read_byte_align_string_list
    - lsr_read_byte_align_string
    linkageType: ''
    returnType: void
    signature: void lsr_read_rare_full(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _a
    - ','
    - _b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1736
      start: 1735
    functionDepth: 0
    functionLinenumber: 1735
    functionLinenumberEnd: 1736
    functionName: lsr_read_rare
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: lsr_read_rare(_a, _b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1740,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1743,1
    - Dst: lsr_read_paint
      Src: /src/gpac/src/laser/lsr_dec.c:1744,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1746
      start: 1737
    functionDepth: 5
    functionLinenumber: 1737
    functionLinenumberEnd: 1746
    functionName: lsr_read_fill
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_paint
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_fill(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1751,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1754,1
    - Dst: lsr_read_paint
      Src: /src/gpac/src/laser/lsr_dec.c:1755,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1757
      start: 1748
    functionDepth: 5
    functionLinenumber: 1748
    functionLinenumberEnd: 1757
    functionName: lsr_read_stroke
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_paint
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_stroke(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1761,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1764,1
    - Dst: lsr_read_any_uri
      Src: /src/gpac/src/laser/lsr_dec.c:1765,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1767
      start: 1758
    functionDepth: 5
    functionLinenumber: 1758
    functionLinenumberEnd: 1767
    functionName: lsr_read_href
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_any_uri
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_href(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1772,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1775,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1776,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1778
      start: 1769
    functionDepth: 5
    functionLinenumber: 1769
    functionLinenumberEnd: 1778
    functionName: lsr_read_accumulate
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_accumulate(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1782,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1785,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1786,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1788
      start: 1779
    functionDepth: 5
    functionLinenumber: 1779
    functionLinenumberEnd: 1788
    functionName: lsr_read_additive
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_additive(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1793,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1796,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1797,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1799
      start: 1789
    functionDepth: 5
    functionLinenumber: 1789
    functionLinenumberEnd: 1799
    functionName: lsr_read_calc_mode
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_calc_mode(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1805,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1809,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:1811,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:1812,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1816,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1817,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:1820,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - lsr
    - n
    - skippable
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1822
      start: 1801
    functionDepth: 5
    functionLinenumber: 1801
    functionLinenumberEnd: 1822
    functionName: lsr_read_attribute_name_ex
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_lsr_anim_type_to_attribute
    - lsr_read_vluimsbf5
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_attribute_name_ex(GF_LASeRCodec *lsr, GF_Node *n, Bool
      skippable)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lsr_read_attribute_name_ex
      Src: /src/gpac/src/laser/lsr_dec.c:1825,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1826
      start: 1823
    functionDepth: 6
    functionLinenumber: 1823
    functionLinenumberEnd: 1826
    functionName: lsr_read_attribute_name
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_attribute_name_ex
    linkageType: ''
    returnType: void
    signature: void lsr_read_attribute_name(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1833,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1834,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1837,1
    - Dst: gf_svg_delete_attribute_value
      Src: /src/gpac/src/laser/lsr_dec.c:1840,1
    - Dst: gf_svg_delete_attribute_value
      Src: /src/gpac/src/laser/lsr_dec.c:1843,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1846,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1849,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1852,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:1858,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/laser/lsr_dec.c:1859,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1860,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:1862,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1867,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1870,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1875,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1876,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/laser/lsr_dec.c:1882,1
    - Dst: gf_node_unregister_iri
      Src: /src/gpac/src/laser/lsr_dec.c:1883,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1884,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1885,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 55
    argCount: 3
    argNames:
    - lsr
    - val
    - coded_type
    argTypes:
    - GF_LASeRCodec*
    - SMIL_AnimateValue*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1891
      start: 1828
    functionDepth: 5
    functionLinenumber: 1828
    functionLinenumberEnd: 1891
    functionName: lsr_delete_anim_value
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_list_count
    - gf_node_unregister_iri
    - gf_list_del_item
    - gf_list_del
    - gf_svg_delete_attribute_value
    linkageType: ''
    returnType: void
    signature: void lsr_delete_anim_value(GF_LASeRCodec *lsr, SMIL_AnimateValue *val,
      u32 coded_type)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:1902,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:1907,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:1912,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:1913,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:1920,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1923,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:1926,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:1936,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:1941,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:1942,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:1943,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:1944,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:1945,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:1947,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:1948,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1949,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:1950,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:1952,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:1961,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:1963,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:1964,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:1974,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:1977,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:1978,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1985,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:1986,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:1988,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:1990,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2005,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/laser/lsr_dec.c:2007,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2014,1
    - Dst: lsr_delete_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:2021,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 109
    argCount: 3
    argNames:
    - lsr
    - val
    - coded_type
    argTypes:
    - GF_LASeRCodec*
    - SMIL_AnimateValue*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2022
      start: 1893
    functionDepth: 6
    functionLinenumber: 1893
    functionLinenumberEnd: 2022
    functionName: lsr_translate_anim_value
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_insert
    - gf_list_get
    - gf_list_new
    - GF_SAFEALLOC
    - gf_list_count
    - gf_list_rem_last
    - gf_list_add
    - lsr_delete_anim_value
    - gf_list_rem
    - gf_mx2d_init
    - gf_list_last
    - gf_malloc
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void lsr_translate_anim_value(GF_LASeRCodec *lsr, SMIL_AnimateValue
      *val, u32 coded_type)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2049,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/laser/lsr_dec.c:2052,1
    - Dst: lsr_delete_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:2053,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:2055,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:2056,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:2060,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2061,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2067,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2069,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2074,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2079,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2080,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2086,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2089,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:2092,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2093,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2099,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2100,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2105,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2106,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2107,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2108,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2109,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2111,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:2112,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2113,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:2114,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:2116,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2117,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2123,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2125,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2127,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2128,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:2135,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2136,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:2138,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2141,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2146,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2153,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2154,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/laser/lsr_dec.c:2158,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2161,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2163,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:2168,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 121
    argCount: 3
    argNames:
    - lsr
    - val
    - coded_type
    argTypes:
    - GF_LASeRCodec*
    - SMIL_AnimateValues*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2169
      start: 2025
    functionDepth: 6
    functionLinenumber: 2025
    functionLinenumberEnd: 2169
    functionName: lsr_translate_anim_values
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_insert
    - gf_list_new
    - gf_list_pop_back
    - gf_list_get
    - GF_SAFEALLOC
    - gf_list_count
    - lsr_delete_anim_value
    - gf_list_add
    - gf_list_rem_last
    - gf_list_rem
    - gf_mx2d_init
    - gf_list_last
    - gf_malloc
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void lsr_translate_anim_values(GF_LASeRCodec *lsr, SMIL_AnimateValues
      *val, u32 coded_type)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2174,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2176,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/laser/lsr_dec.c:2180,1
    - Dst: atoi
      Src: /src/gpac/src/laser/lsr_dec.c:2180,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/laser/lsr_dec.c:2182,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2185,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 4
    argNames:
    - lsr
    - anim
    - times
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - GF_List*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2198
      start: 2171
    functionDepth: 1
    functionLinenumber: 2171
    functionLinenumberEnd: 2198
    functionName: lsr_init_smil_times
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_sg_find_node_by_name
    - gf_sg_find_node
    - gf_list_count
    - atoi
    linkageType: ''
    returnType: Bool
    signature: Bool lsr_init_smil_times(GF_LASeRCodec *lsr, SVG_Element *anim, GF_List
      *times, SVG_Element *parent)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2212,1
    - Dst: lsr_init_smil_times
      Src: /src/gpac/src/laser/lsr_dec.c:2213,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2216,1
    - Dst: lsr_init_smil_times
      Src: /src/gpac/src/laser/lsr_dec.c:2217,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2223,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2234,1
    - Dst: gf_node_register_iri
      Src: /src/gpac/src/laser/lsr_dec.c:2243,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2258,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2266,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2278,1
    - Dst: lsr_translate_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:2285,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2288,1
    - Dst: lsr_translate_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:2295,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2298,1
    - Dst: lsr_translate_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:2305,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2308,1
    - Dst: lsr_translate_anim_values
      Src: /src/gpac/src/laser/lsr_dec.c:2316,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 98
    argCount: 3
    argNames:
    - lsr
    - anim
    - anim_parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2321
      start: 2200
    functionDepth: 7
    functionLinenumber: 2200
    functionLinenumberEnd: 2321
    functionName: lsr_setup_smil_anim
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 1
    functionsReached:
    - gf_node_get_attribute_by_tag
    - lsr_init_smil_times
    - lsr_translate_anim_values
    - gf_node_register_iri
    - lsr_translate_anim_value
    linkageType: ''
    returnType: Bool
    signature: Bool lsr_setup_smil_anim(GF_LASeRCodec *lsr, SVG_Element *anim, SVG_Element
      *anim_parent)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2327,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2330,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2332,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2335
      start: 2323
    functionDepth: 5
    functionLinenumber: 2323
    functionLinenumberEnd: 2335
    functionName: lsr_read_anim_fill
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_anim_fill(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2339,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2342,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2343,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:2347,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2350
      start: 2336
    functionDepth: 5
    functionLinenumber: 2336
    functionLinenumberEnd: 2350
    functionName: lsr_read_anim_repeatCount
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_fixed_16_8
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_anim_repeatCount(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2354,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2357,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2358,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2363,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2368
      start: 2351
    functionDepth: 5
    functionLinenumber: 2351
    functionLinenumberEnd: 2368
    functionName: lsr_read_repeat_duration
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_vluimsbf5
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_repeat_duration(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2372,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2375,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2377,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2379
      start: 2369
    functionDepth: 5
    functionLinenumber: 2369
    functionLinenumberEnd: 2379
    functionName: lsr_read_anim_restart
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_anim_restart(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2394,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2395,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:2400,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2401,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2409,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:2418,1
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/laser/lsr_dec.c:2423,1
    - Dst: lsr_read_path_type
      Src: /src/gpac/src/laser/lsr_dec.c:2427,1
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/laser/lsr_dec.c:2433,1
    - Dst: lsr_read_point_sequence
      Src: /src/gpac/src/laser/lsr_dec.c:2437,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2442,1
    - Dst: lsr_read_fixed_clamp
      Src: /src/gpac/src/laser/lsr_dec.c:2451,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2455,1
    - Dst: lsr_read_paint
      Src: /src/gpac/src/laser/lsr_dec.c:2463,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2467,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2471,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:2477,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2483,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2485,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2489,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2490,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:2499,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2505,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2507,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:2511,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2512,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2521,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2526,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:2527,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2528,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:2529,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2532,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2536,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2543,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2551,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2553,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:2554,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2559,1
    - Dst: lsr_read_any_uri
      Src: /src/gpac/src/laser/lsr_dec.c:2563,1
    - Dst: lsr_read_extension
      Src: /src/gpac/src/laser/lsr_dec.c:2567,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 162
    argCount: 3
    argNames:
    - lsr
    - coded_type
    - name
    argTypes:
    - GF_LASeRCodec*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2571
      start: 2381
    functionDepth: 5
    functionLinenumber: 2381
    functionLinenumberEnd: 2571
    functionName: lsr_read_an_anim_value
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_extension
    - gf_list_new
    - gf_list_get
    - gf_strdup
    - GF_SAFEALLOC
    - lsr_read_path_type
    - lsr_read_point_sequence
    - lsr_read_paint
    - GF_LSR_READ_INT
    - gf_svg_create_attribute_value
    - lsr_read_fixed_clamp
    - lsr_read_vluimsbf5
    - gf_list_add
    - lsr_read_byte_align_string
    - lsr_translate_coords
    - lsr_read_any_uri
    - gf_malloc
    - lsr_read_fixed_16_8
    linkageType: ''
    returnType: void
    signature: void *lsr_read_an_anim_value(GF_LASeRCodec *lsr, u32 coded_type, const
      char *name)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:2599,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2606,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2613,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2616,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2619,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2622,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/laser/lsr_dec.c:2623,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2624,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:2626,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/laser/lsr_dec.c:2627,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:2627,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2631,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2638,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/laser/lsr_dec.c:2639,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:2639,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2648,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2653,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2655,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2659,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/laser/lsr_dec.c:2660,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2661,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:2663,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2671,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2677,1
    - Dst: lsr_delete_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:2684,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 106
    argCount: 3
    argNames:
    - lsr
    - val
    - transform_type
    argTypes:
    - GF_LASeRCodec*
    - SMIL_AnimateValue*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2685
      start: 2573
    functionDepth: 6
    functionLinenumber: 2573
    functionLinenumberEnd: 2685
    functionName: lsr_translate_anim_trans_value
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_pop_back
    - INT2FIX
    - GF_SAFEALLOC
    - GF_LOG
    - gf_muldiv
    - gf_list_count
    - lsr_delete_anim_value
    - gf_malloc
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void lsr_translate_anim_trans_value(GF_LASeRCodec *lsr, SMIL_AnimateValue
      *val, u32 transform_type)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:2721,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2726,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/laser/lsr_dec.c:2729,1
    - Dst: lsr_delete_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:2730,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2735,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2742,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2745,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2752,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2754,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2756,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2758,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:2759,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:2760,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2761,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:2763,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2766,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/laser/lsr_dec.c:2768,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:2768,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:2769,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:2770,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2774,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2780,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:2781,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:2783,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2786,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2792,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2794,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2799,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:2800,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:2801,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2802,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:2804,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:2805,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:2807,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:2810,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 122
    argCount: 3
    argNames:
    - lsr
    - val
    - transform_type
    argTypes:
    - GF_LASeRCodec*
    - SMIL_AnimateValues*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2814
      start: 2687
    functionDepth: 6
    functionLinenumber: 2687
    functionLinenumberEnd: 2814
    functionName: lsr_translate_anim_trans_values
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_insert
    - gf_list_get
    - gf_list_pop_back
    - INT2FIX
    - gf_malloc
    - GF_SAFEALLOC
    - GF_LOG
    - gf_muldiv
    - gf_list_count
    - lsr_delete_anim_value
    - gf_list_rem
    - gf_list_last
    - gf_list_rem_last
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void lsr_translate_anim_trans_values(GF_LASeRCodec *lsr, SMIL_AnimateValues
      *val, u32 transform_type)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2819,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2822,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2824,1
    - Dst: lsr_read_an_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:2825,1
    - Dst: lsr_translate_anim_trans_value
      Src: /src/gpac/src/laser/lsr_dec.c:2829,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 5
    argNames:
    - lsr
    - n
    - tag
    - name
    - tr_type
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - u32
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2832
      start: 2816
    functionDepth: 7
    functionLinenumber: 2816
    functionLinenumberEnd: 2832
    functionName: lsr_read_anim_value_ex
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_translate_anim_trans_value
    - lsr_read_an_anim_value
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_anim_value_ex(GF_LASeRCodec *lsr, GF_Node *n, u32 tag,
      const char *name, u32 *tr_type)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2841,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2844,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2847,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2851,1
    - Dst: lsr_read_an_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:2853,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2854,1
    - Dst: lsr_translate_anim_trans_values
      Src: /src/gpac/src/laser/lsr_dec.c:2858,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - lsr
    - n
    - tr_type
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2860
      start: 2834
    functionDepth: 7
    functionLinenumber: 2834
    functionLinenumberEnd: 2860
    functionName: lsr_read_anim_values_ex
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_an_anim_value
    - gf_node_get_attribute_by_tag
    - GF_LSR_READ_INT
    - lsr_read_vluimsbf5
    - gf_list_add
    - lsr_translate_anim_trans_values
    linkageType: ''
    returnType: void
    signature: void lsr_read_anim_values_ex(GF_LASeRCodec *lsr, GF_Node *n, u32 *tr_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _a
    - ','
    - _b
    - ','
    - _c
    - ','
    - _d
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2862
      start: 2861
    functionDepth: 0
    functionLinenumber: 2861
    functionLinenumberEnd: 2862
    functionName: lsr_read_anim_value
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: lsr_read_anim_value(_a, _b, _c, _d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _a
    - ','
    - _b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2863
      start: 2862
    functionDepth: 0
    functionLinenumber: 2862
    functionLinenumberEnd: 2863
    functionName: lsr_read_anim_values
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: lsr_read_anim_values(_a, _b)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2868,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2873,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2875,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2880,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:2881,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2884
      start: 2864
    functionDepth: 1
    functionLinenumber: 2864
    functionLinenumberEnd: 2884
    functionName: lsr_read_fraction_12_item
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - GF_LSR_READ_INT
    - GF_SAFEALLOC
    linkageType: ''
    returnType: Fixed
    signature: Fixed *lsr_read_fraction_12_item(GF_LASeRCodec *lsr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2890,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2893,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2895,1
    - Dst: lsr_read_fraction_12_item
      Src: /src/gpac/src/laser/lsr_dec.c:2897,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2898,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - lsr
    - elt
    - tag
    - name
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2901
      start: 2886
    functionDepth: 5
    functionLinenumber: 2886
    functionLinenumberEnd: 2901
    functionName: lsr_read_fraction_12
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_attribute_by_tag
    - lsr_read_fraction_12_item
    - GF_LSR_READ_INT
    - lsr_read_vluimsbf5
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void lsr_read_fraction_12(GF_LASeRCodec *lsr, GF_Node *elt, u32 tag,
      const char *name)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2905,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2910,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2913,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:2914,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:2915,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2916,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2919,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2922,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:2927,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2928,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2935,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:2939,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2941,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 5
    argNames:
    - lsr
    - n
    - tag
    - coords
    - name
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - u32
    - SVG_Coordinates*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2945
      start: 2902
    functionDepth: 5
    functionLinenumber: 2902
    functionLinenumberEnd: 2945
    functionName: lsr_read_float_list
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_node_get_attribute_by_tag
    - GF_LSR_READ_INT
    - gf_list_count
    - lsr_read_vluimsbf5
    - gf_list_add
    - gf_list_last
    - gf_list_rem_last
    - lsr_read_fixed_16_8
    linkageType: ''
    returnType: void
    signature: void lsr_read_float_list(GF_LASeRCodec *lsr, GF_Node *n, u32 tag, SVG_Coordinates*coords,
      const char *name)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2951,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:2952,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:2953,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2954,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2956,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2959,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2963,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2965,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2969,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2970,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:2971,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2972,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:2973,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2980,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2985,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2987,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2988,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:2989,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2990,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:2991,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2993,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2994,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2996,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:3000,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3001,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:3002,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3004,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:3005,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 56
    argCount: 3
    argNames:
    - lsr
    - pts
    - name
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3012
      start: 2947
    functionDepth: 2
    functionLinenumber: 2947
    functionLinenumberEnd: 3012
    functionName: lsr_read_point_sequence
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_malloc
    - GF_LSR_READ_INT
    - gf_list_count
    - lsr_read_vluimsbf5
    - gf_list_add
    - lsr_translate_coords
    - gf_list_last
    - gf_list_rem_last
    linkageType: ''
    returnType: void
    signature: void lsr_read_point_sequence(GF_LASeRCodec *lsr, GF_List *pts, const
      char *name)
  - BBCount: 48
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:3019,1
    - Dst: lsr_read_point_sequence
      Src: /src/gpac/src/laser/lsr_dec.c:3020,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3024,1
    - Dst: gf_path_reset
      Src: /src/gpac/src/laser/lsr_dec.c:3027,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3030,1
    - Dst: gf_path_add_move_to_vec
      Src: /src/gpac/src/laser/lsr_dec.c:3033,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:3037,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:3040,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3042,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3050,1
    - Dst: gf_path_add_line_to_vec
      Src: /src/gpac/src/laser/lsr_dec.c:3052,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3057,1
    - Dst: gf_path_add_move_to_vec
      Src: /src/gpac/src/laser/lsr_dec.c:3059,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3064,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3065,1
    - Dst: gf_path_add_quadratic_to_vec
      Src: /src/gpac/src/laser/lsr_dec.c:3067,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3073,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3074,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3075,1
    - Dst: gf_path_add_cubic_to_vec
      Src: /src/gpac/src/laser/lsr_dec.c:3077,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3086,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3087,1
    - Dst: gf_path_add_cubic_to_vec
      Src: /src/gpac/src/laser/lsr_dec.c:3089,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3098,1
    - Dst: gf_path_add_quadratic_to_vec
      Src: /src/gpac/src/laser/lsr_dec.c:3100,1
    - Dst: gf_path_close
      Src: /src/gpac/src/laser/lsr_dec.c:3105,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:3116,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3117,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:3118,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:3119,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:3121,1
    - Dst: lsr_read_point_sequence
      Src: /src/gpac/src/laser/lsr_dec.c:3129,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:3130,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:3131,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:3132,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:3133,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:3136,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:3138,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3143,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:3179,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 166
    argCount: 5
    argNames:
    - lsr
    - n
    - tag
    - path
    - name
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - u32
    - SVG_PathData*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3182
      start: 3013
    functionDepth: 5
    functionLinenumber: 3013
    functionLinenumberEnd: 3182
    functionName: lsr_read_path_type
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 1
    functionsReached:
    - gf_free
    - lsr_read_point_sequence
    - GF_LSR_READ_INT
    - gf_list_count
    - lsr_read_vluimsbf5
    - gf_path_close
    - gf_list_new
    - gf_list_get
    - gf_path_add_quadratic_to_vec
    - gf_list_add
    - gf_list_rem_last
    - gf_node_get_attribute_by_tag
    - GF_LOG
    - gf_path_add_cubic_to_vec
    - gf_list_last
    - gf_path_add_line_to_vec
    - gf_list_del
    - gf_path_add_move_to_vec
    - gf_malloc
    - gf_path_reset
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void lsr_read_path_type(GF_LASeRCodec *lsr, GF_Node *n, u32 tag, SVG_PathData
      *path, const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3187,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3190,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3191,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3194,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:3197,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3201
      start: 3184
    functionDepth: 5
    functionLinenumber: 3184
    functionLinenumberEnd: 3201
    functionName: lsr_read_rotate_type
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_fixed_16_8
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_rotate_type(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3205,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3208,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3209,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3212
      start: 3202
    functionDepth: 5
    functionLinenumber: 3202
    functionLinenumberEnd: 3212
    functionName: lsr_read_sync_behavior
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_sync_behavior(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3216,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3219,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3220,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:3223,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:3224,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3228
      start: 3213
    functionDepth: 5
    functionLinenumber: 3213
    functionLinenumberEnd: 3228
    functionName: lsr_read_sync_tolerance
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_vluimsbf5
    - INT2FIX
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_sync_tolerance(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3232,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3235,1
    - Dst: lsr_read_any_uri
      Src: /src/gpac/src/laser/lsr_dec.c:3236,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3238
      start: 3229
    functionDepth: 5
    functionLinenumber: 3229
    functionLinenumberEnd: 3238
    functionName: lsr_read_sync_reference
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_any_uri
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_sync_reference(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3244,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3252,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:3253,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - lsr
    - coord
    - skipable
    - name
    argTypes:
    - GF_LASeRCodec*
    - SVG_Number*
    - Bool
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3254
      start: 3240
    functionDepth: 1
    functionLinenumber: 3240
    functionLinenumberEnd: 3254
    functionName: lsr_read_coordinate
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_translate_coords
    - GF_LSR_READ_INT
    linkageType: ''
    returnType: void
    signature: void lsr_read_coordinate(GF_LASeRCodec *lsr, SVG_Number *coord, Bool
      skipable, const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3260,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3263,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3266,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:3267,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 5
    argNames:
    - lsr
    - n
    - tag
    - skipable
    - name
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - u32
    - Bool
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3268
      start: 3255
    functionDepth: 5
    functionLinenumber: 3255
    functionLinenumberEnd: 3268
    functionName: lsr_read_coordinate_ptr
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_translate_coords
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_coordinate_ptr(GF_LASeRCodec *lsr, GF_Node *n, u32 tag,
      Bool skipable, const char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3274,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:3276,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3279,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:3284,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3289,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:3290,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:3291,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 4
    argNames:
    - lsr
    - elt
    - tag
    - name
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3294
      start: 3270
    functionDepth: 5
    functionLinenumber: 3270
    functionLinenumberEnd: 3294
    functionName: lsr_read_coord_list
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_get_attribute_by_tag
    - GF_LSR_READ_INT
    - lsr_read_vluimsbf5
    - gf_list_add
    - lsr_translate_coords
    linkageType: ''
    returnType: void
    signature: void lsr_read_coord_list(GF_LASeRCodec *lsr, GF_Node *elt, u32 tag,
      const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3300,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3302,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3303,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3305
      start: 3296
    functionDepth: 5
    functionLinenumber: 3296
    functionLinenumberEnd: 3305
    functionName: lsr_read_transform_behavior
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_transform_behavior(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3310,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3313,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:3314,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3316
      start: 3307
    functionDepth: 5
    functionLinenumber: 3307
    functionLinenumberEnd: 3316
    functionName: lsr_read_content_type
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - lsr_read_byte_align_string
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_content_type(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3320,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3323,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3324,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3326,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:3329,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:3332,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:3338,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3341
      start: 3317
    functionDepth: 5
    functionLinenumber: 3317
    functionLinenumberEnd: 3341
    functionName: lsr_read_script_type
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_LSR_READ_INT
    - lsr_read_byte_align_string
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_script_type(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3345,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:3349,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3351,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 3
    argNames:
    - lsr
    - n
    - name
    argTypes:
    - GF_LASeRCodec*
    - SVG_Number*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3375
      start: 3342
    functionDepth: 1
    functionLinenumber: 3342
    functionLinenumberEnd: 3375
    functionName: lsr_read_value_with_units
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - GF_LSR_READ_INT
    linkageType: ''
    returnType: void
    signature: void lsr_read_value_with_units(GF_LASeRCodec *lsr, SVG_Number *n, const
      char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3382,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3384,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3385,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3387,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:3388,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 4
    argNames:
    - lsr
    - elt
    - tag
    - name
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3393
      start: 3378
    functionDepth: 5
    functionLinenumber: 3378
    functionLinenumberEnd: 3393
    functionName: lsr_read_clip_time
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_vluimsbf5
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_clip_time(GF_LASeRCodec *lsr, GF_Node *elt, u32 tag,
      const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3399,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3401,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3402,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3403
      start: 3395
    functionDepth: 5
    functionLinenumber: 3395
    functionLinenumberEnd: 3403
    functionName: lsr_read_attribute_type
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_attribute_type(GF_LASeRCodec *lsr, GF_Node *elt)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3411,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3414,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3417,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3418,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3419,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 41
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3452
      start: 3405
    functionDepth: 5
    functionLinenumber: 3405
    functionLinenumberEnd: 3452
    functionName: lsr_read_preserve_aspect_ratio
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_preserve_aspect_ratio(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3457,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3460,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3463
      start: 3454
    functionDepth: 5
    functionLinenumber: 3454
    functionLinenumberEnd: 3463
    functionName: lsr_read_eRR
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_eRR(GF_LASeRCodec *lsr, GF_Node *elt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3468,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3471,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3474
      start: 3465
    functionDepth: 5
    functionLinenumber: 3465
    functionLinenumberEnd: 3474
    functionName: lsr_read_lsr_enabled
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_lsr_enabled(GF_LASeRCodec *lsr, GF_Node *elt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3479,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3480,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:3481,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3482,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:3483,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:3484,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3485,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3488,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:3489,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:3491,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3492,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3493,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3495
      start: 3476
    functionDepth: 10
    functionLinenumber: 3476
    functionLinenumberEnd: 3495
    functionName: lsr_read_a
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - gf_node_get_attribute_by_tag
    - lsr_read_eRR
    - lsr_read_rare_full
    - lsr_read_id
    - GF_LSR_READ_INT
    - lsr_read_group_content
    - gf_node_new
    - lsr_read_byte_align_string
    - lsr_read_fill
    - lsr_read_any_attribute
    - lsr_read_href
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_a(GF_LASeRCodec *lsr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3501,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3502,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:3503,1
    - Dst: lsr_read_attribute_name
      Src: /src/gpac/src/laser/lsr_dec.c:3504,1
    - Dst: lsr_read_accumulate
      Src: /src/gpac/src/laser/lsr_dec.c:3506,1
    - Dst: lsr_read_additive
      Src: /src/gpac/src/laser/lsr_dec.c:3507,1
    - Dst: lsr_read_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:3508,1
    - Dst: lsr_read_calc_mode
      Src: /src/gpac/src/laser/lsr_dec.c:3509,1
    - Dst: lsr_read_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:3510,1
    - Dst: lsr_read_fraction_12
      Src: /src/gpac/src/laser/lsr_dec.c:3511,1
    - Dst: lsr_read_fraction_12
      Src: /src/gpac/src/laser/lsr_dec.c:3512,1
    - Dst: lsr_read_anim_values
      Src: /src/gpac/src/laser/lsr_dec.c:3513,1
    - Dst: lsr_read_attribute_type
      Src: /src/gpac/src/laser/lsr_dec.c:3514,1
    - Dst: lsr_read_smil_times
      Src: /src/gpac/src/laser/lsr_dec.c:3515,1
    - Dst: lsr_read_duration
      Src: /src/gpac/src/laser/lsr_dec.c:3516,1
    - Dst: lsr_read_anim_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3517,1
    - Dst: lsr_read_anim_repeatCount
      Src: /src/gpac/src/laser/lsr_dec.c:3518,1
    - Dst: lsr_read_repeat_duration
      Src: /src/gpac/src/laser/lsr_dec.c:3519,1
    - Dst: lsr_read_anim_restart
      Src: /src/gpac/src/laser/lsr_dec.c:3520,1
    - Dst: lsr_read_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:3521,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:3522,1
    - Dst: lsr_read_lsr_enabled
      Src: /src/gpac/src/laser/lsr_dec.c:3523,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3524,1
    - Dst: lsr_setup_smil_anim
      Src: /src/gpac/src/laser/lsr_dec.c:3526,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:3527,1
    - Dst: lsr_read_group_content_post_init
      Src: /src/gpac/src/laser/lsr_dec.c:3528,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3530,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 3
    argNames:
    - lsr
    - parent
    - is_animateColor
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3533
      start: 3499
    functionDepth: 10
    functionLinenumber: 3499
    functionLinenumberEnd: 3533
    functionName: lsr_read_animate
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_additive
    - lsr_read_group_content_post_init
    - lsr_read_duration
    - lsr_read_fraction_12
    - lsr_read_repeat_duration
    - lsr_read_attribute_type
    - lsr_read_rare
    - lsr_read_href
    - lsr_read_smil_times
    - lsr_read_lsr_enabled
    - lsr_read_anim_fill
    - lsr_read_anim_value
    - lsr_read_id
    - gf_list_add
    - lsr_read_any_attribute
    - lsr_read_group_content
    - lsr_read_accumulate
    - lsr_read_anim_values
    - gf_node_new
    - lsr_read_attribute_name
    - lsr_read_anim_repeatCount
    - lsr_read_calc_mode
    - lsr_read_anim_restart
    - lsr_setup_smil_anim
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_animate(GF_LASeRCodec *lsr, SVG_Element *parent,
      Bool is_animateColor)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3539,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3540,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:3541,1
    - Dst: lsr_read_accumulate
      Src: /src/gpac/src/laser/lsr_dec.c:3542,1
    - Dst: lsr_read_additive
      Src: /src/gpac/src/laser/lsr_dec.c:3543,1
    - Dst: lsr_read_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:3544,1
    - Dst: lsr_read_calc_mode
      Src: /src/gpac/src/laser/lsr_dec.c:3545,1
    - Dst: lsr_read_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:3546,1
    - Dst: lsr_read_fraction_12
      Src: /src/gpac/src/laser/lsr_dec.c:3547,1
    - Dst: lsr_read_fraction_12
      Src: /src/gpac/src/laser/lsr_dec.c:3548,1
    - Dst: lsr_read_anim_values
      Src: /src/gpac/src/laser/lsr_dec.c:3549,1
    - Dst: lsr_read_attribute_type
      Src: /src/gpac/src/laser/lsr_dec.c:3550,1
    - Dst: lsr_read_smil_times
      Src: /src/gpac/src/laser/lsr_dec.c:3551,1
    - Dst: lsr_read_duration
      Src: /src/gpac/src/laser/lsr_dec.c:3552,1
    - Dst: lsr_read_anim_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3553,1
    - Dst: lsr_read_anim_repeatCount
      Src: /src/gpac/src/laser/lsr_dec.c:3554,1
    - Dst: lsr_read_repeat_duration
      Src: /src/gpac/src/laser/lsr_dec.c:3555,1
    - Dst: lsr_read_anim_restart
      Src: /src/gpac/src/laser/lsr_dec.c:3556,1
    - Dst: lsr_read_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:3557,1
    - Dst: lsr_read_float_list
      Src: /src/gpac/src/laser/lsr_dec.c:3558,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3559,1
    - Dst: lsr_read_path_type
      Src: /src/gpac/src/laser/lsr_dec.c:3560,1
    - Dst: lsr_read_rotate_type
      Src: /src/gpac/src/laser/lsr_dec.c:3562,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:3563,1
    - Dst: lsr_read_lsr_enabled
      Src: /src/gpac/src/laser/lsr_dec.c:3564,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3565,1
    - Dst: lsr_setup_smil_anim
      Src: /src/gpac/src/laser/lsr_dec.c:3567,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:3568,1
    - Dst: lsr_read_group_content_post_init
      Src: /src/gpac/src/laser/lsr_dec.c:3569,1
    - Dst: lsr_read_group_content_post_init
      Src: /src/gpac/src/laser/lsr_dec.c:3571,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 34
    argCount: 2
    argNames:
    - lsr
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3574
      start: 3536
    functionDepth: 10
    functionLinenumber: 3536
    functionLinenumberEnd: 3574
    functionName: lsr_read_animateMotion
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_float_list
    - lsr_read_additive
    - lsr_read_path_type
    - lsr_read_group_content_post_init
    - GF_LSR_READ_INT
    - lsr_read_duration
    - lsr_read_fraction_12
    - lsr_read_repeat_duration
    - lsr_read_attribute_type
    - lsr_read_rare
    - lsr_read_href
    - lsr_read_smil_times
    - lsr_read_lsr_enabled
    - lsr_read_anim_fill
    - lsr_read_anim_value
    - lsr_read_id
    - lsr_read_rotate_type
    - gf_list_add
    - lsr_read_any_attribute
    - lsr_read_accumulate
    - lsr_read_anim_values
    - gf_node_new
    - lsr_read_anim_repeatCount
    - lsr_read_calc_mode
    - lsr_read_anim_restart
    - lsr_setup_smil_anim
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_animateMotion(GF_LASeRCodec *lsr, SVG_Element *parent)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3582,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3583,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:3584,1
    - Dst: lsr_read_attribute_name
      Src: /src/gpac/src/laser/lsr_dec.c:3585,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3588,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3609,1
    - Dst: lsr_read_accumulate
      Src: /src/gpac/src/laser/lsr_dec.c:3613,1
    - Dst: lsr_read_additive
      Src: /src/gpac/src/laser/lsr_dec.c:3614,1
    - Dst: lsr_read_anim_value_ex
      Src: /src/gpac/src/laser/lsr_dec.c:3615,1
    - Dst: lsr_read_calc_mode
      Src: /src/gpac/src/laser/lsr_dec.c:3616,1
    - Dst: lsr_read_anim_value_ex
      Src: /src/gpac/src/laser/lsr_dec.c:3617,1
    - Dst: lsr_read_fraction_12
      Src: /src/gpac/src/laser/lsr_dec.c:3618,1
    - Dst: lsr_read_fraction_12
      Src: /src/gpac/src/laser/lsr_dec.c:3619,1
    - Dst: lsr_read_anim_values_ex
      Src: /src/gpac/src/laser/lsr_dec.c:3620,1
    - Dst: lsr_read_attribute_type
      Src: /src/gpac/src/laser/lsr_dec.c:3621,1
    - Dst: lsr_read_smil_times
      Src: /src/gpac/src/laser/lsr_dec.c:3623,1
    - Dst: lsr_read_duration
      Src: /src/gpac/src/laser/lsr_dec.c:3624,1
    - Dst: lsr_read_anim_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3625,1
    - Dst: lsr_read_anim_repeatCount
      Src: /src/gpac/src/laser/lsr_dec.c:3626,1
    - Dst: lsr_read_repeat_duration
      Src: /src/gpac/src/laser/lsr_dec.c:3627,1
    - Dst: lsr_read_anim_restart
      Src: /src/gpac/src/laser/lsr_dec.c:3628,1
    - Dst: lsr_read_anim_value_ex
      Src: /src/gpac/src/laser/lsr_dec.c:3629,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:3631,1
    - Dst: lsr_read_lsr_enabled
      Src: /src/gpac/src/laser/lsr_dec.c:3632,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3633,1
    - Dst: lsr_setup_smil_anim
      Src: /src/gpac/src/laser/lsr_dec.c:3635,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:3636,1
    - Dst: lsr_read_group_content_post_init
      Src: /src/gpac/src/laser/lsr_dec.c:3637,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3639,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 54
    argCount: 2
    argNames:
    - lsr
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3642
      start: 3577
    functionDepth: 10
    functionLinenumber: 3577
    functionLinenumberEnd: 3642
    functionName: lsr_read_animateTransform
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_additive
    - lsr_read_group_content_post_init
    - GF_LSR_READ_INT
    - lsr_read_duration
    - lsr_read_fraction_12
    - lsr_read_repeat_duration
    - lsr_read_attribute_type
    - lsr_read_rare
    - lsr_read_href
    - lsr_read_smil_times
    - lsr_read_lsr_enabled
    - lsr_read_anim_fill
    - lsr_read_id
    - gf_list_add
    - lsr_read_any_attribute
    - lsr_read_group_content
    - lsr_read_accumulate
    - gf_node_get_attribute_by_tag
    - lsr_read_anim_values_ex
    - lsr_read_anim_value_ex
    - gf_node_new
    - lsr_read_attribute_name
    - lsr_read_anim_repeatCount
    - lsr_read_calc_mode
    - lsr_read_anim_restart
    - lsr_setup_smil_anim
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_animateTransform(GF_LASeRCodec *lsr, SVG_Element
      *parent)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3646,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3647,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:3648,1
    - Dst: lsr_read_smil_times
      Src: /src/gpac/src/laser/lsr_dec.c:3649,1
    - Dst: lsr_read_duration
      Src: /src/gpac/src/laser/lsr_dec.c:3650,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:3651,1
    - Dst: lsr_read_anim_repeatCount
      Src: /src/gpac/src/laser/lsr_dec.c:3652,1
    - Dst: lsr_read_repeat_duration
      Src: /src/gpac/src/laser/lsr_dec.c:3653,1
    - Dst: lsr_read_anim_restart
      Src: /src/gpac/src/laser/lsr_dec.c:3654,1
    - Dst: lsr_read_sync_behavior
      Src: /src/gpac/src/laser/lsr_dec.c:3655,1
    - Dst: lsr_read_sync_tolerance
      Src: /src/gpac/src/laser/lsr_dec.c:3656,1
    - Dst: lsr_read_content_type
      Src: /src/gpac/src/laser/lsr_dec.c:3657,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:3658,1
    - Dst: lsr_read_clip_time
      Src: /src/gpac/src/laser/lsr_dec.c:3660,1
    - Dst: lsr_read_clip_time
      Src: /src/gpac/src/laser/lsr_dec.c:3661,1
    - Dst: lsr_read_sync_reference
      Src: /src/gpac/src/laser/lsr_dec.c:3662,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3663,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3664,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 2
    argNames:
    - lsr
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3666
      start: 3644
    functionDepth: 10
    functionLinenumber: 3644
    functionLinenumberEnd: 3666
    functionName: lsr_read_audio
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_clip_time
    - lsr_read_anim_repeatCount
    - lsr_read_eRR
    - lsr_read_id
    - lsr_read_sync_tolerance
    - lsr_read_duration
    - lsr_read_group_content
    - lsr_read_anim_restart
    - gf_node_new
    - lsr_read_repeat_duration
    - lsr_read_content_type
    - lsr_read_any_attribute
    - lsr_read_rare
    - lsr_read_href
    - lsr_read_smil_times
    - lsr_read_sync_behavior
    - lsr_read_sync_reference
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_audio(GF_LASeRCodec *lsr, SVG_Element *parent)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3669,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3670,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:3671,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3672,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:3673,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3674,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3675,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3676,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3677,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3678,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3680
      start: 3667
    functionDepth: 10
    functionLinenumber: 3667
    functionLinenumberEnd: 3680
    functionName: lsr_read_circle
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - lsr_read_rare_full
    - lsr_read_id
    - lsr_read_coordinate_ptr
    - gf_node_new
    - lsr_read_fill
    - lsr_read_any_attribute
    - lsr_read_group_content
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_circle(GF_LASeRCodec *lsr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3683,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3684,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:3685,1
    - Dst: lsr_read_smil_times
      Src: /src/gpac/src/laser/lsr_dec.c:3686,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:3687,1
    - Dst: lsr_read_lsr_enabled
      Src: /src/gpac/src/laser/lsr_dec.c:3688,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3689,1
    - Dst: lsr_read_command_list
      Src: /src/gpac/src/laser/lsr_dec.c:3690,1
    - Dst: gf_node_init
      Src: /src/gpac/src/laser/lsr_dec.c:3693,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3695
      start: 3681
    functionDepth: 10
    functionLinenumber: 3681
    functionLinenumberEnd: 3695
    functionName: lsr_read_conditional
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_init
    - lsr_read_lsr_enabled
    - lsr_read_command_list
    - lsr_read_eRR
    - lsr_read_id
    - gf_node_new
    - lsr_read_any_attribute
    - lsr_read_rare
    - lsr_read_smil_times
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_conditional(GF_LASeRCodec *lsr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3698,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3699,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:3700,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3701,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3702,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:3703,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3704,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3707
      start: 3696
    functionDepth: 10
    functionLinenumber: 3696
    functionLinenumberEnd: 3707
    functionName: lsr_read_cursorManager
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_id
    - lsr_read_group_content
    - lsr_read_coordinate_ptr
    - gf_node_new
    - lsr_read_any_attribute
    - lsr_read_rare
    - lsr_read_href
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_cursorManager(GF_LASeRCodec *lsr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3711,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3712,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:3713,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3714,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3715,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - node_tag
    argTypes:
    - GF_LASeRCodec*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3717
      start: 3709
    functionDepth: 10
    functionLinenumber: 3709
    functionLinenumberEnd: 3717
    functionName: lsr_read_data
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_id
    - gf_node_new
    - lsr_read_any_attribute
    - lsr_read_rare
    - lsr_read_group_content
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_data(GF_LASeRCodec *lsr, u32 node_tag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3721,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3722,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:3723,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3724,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:3725,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3726,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3727,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3729
      start: 3719
    functionDepth: 10
    functionLinenumber: 3719
    functionLinenumberEnd: 3729
    functionName: lsr_read_defs
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - lsr_read_id
    - gf_node_new
    - lsr_read_fill
    - lsr_read_any_attribute
    - lsr_read_rare
    - lsr_read_group_content
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_defs(GF_LASeRCodec *lsr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3732,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3733,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:3734,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3735,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:3736,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3737,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3738,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3739,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3740,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3741,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3742,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3744
      start: 3730
    functionDepth: 10
    functionLinenumber: 3730
    functionLinenumberEnd: 3744
    functionName: lsr_read_ellipse
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - lsr_read_rare_full
    - lsr_read_id
    - lsr_read_coordinate_ptr
    - gf_node_new
    - lsr_read_fill
    - lsr_read_any_attribute
    - lsr_read_group_content
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_ellipse(GF_LASeRCodec *lsr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3748,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3749,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:3750,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3751,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:3752,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:3753,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3754,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3755,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3756,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3757,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3759,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3769,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3771
      start: 3745
    functionDepth: 10
    functionLinenumber: 3745
    functionLinenumberEnd: 3771
    functionName: lsr_read_foreignObject
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - lsr_read_eRR
    - lsr_read_rare_full
    - lsr_read_id
    - GF_LSR_READ_INT
    - lsr_read_coordinate_ptr
    - gf_node_new
    - lsr_read_fill
    - lsr_read_any_attribute
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_foreignObject(GF_LASeRCodec *lsr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3776,1
    - Dst: lsr_restore_base
      Src: /src/gpac/src/laser/lsr_dec.c:3779,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:3781,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3783,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3785,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:3786,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3787,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:3788,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:3789,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3790,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3793,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 2
    argNames:
    - lsr
    - is_same
    argTypes:
    - GF_LASeRCodec*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3795
      start: 3774
    functionDepth: 10
    functionLinenumber: 3774
    functionLinenumberEnd: 3795
    functionName: lsr_read_g
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - GF_LOG
    - lsr_read_eRR
    - lsr_read_rare_full
    - lsr_read_id
    - lsr_restore_base
    - gf_node_new
    - lsr_read_fill
    - lsr_read_any_attribute
    - lsr_read_group_content
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_g(GF_LASeRCodec *lsr, Bool is_same)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3801,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3803,1
    - Dst: lsr_read_fixed_clamp
      Src: /src/gpac/src/laser/lsr_dec.c:3805,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3808
      start: 3797
    functionDepth: 5
    functionLinenumber: 3797
    functionLinenumberEnd: 3808
    functionName: lsr_read_opacity
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_fixed_clamp
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_opacity(GF_LASeRCodec *lsr, GF_Node *elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3811,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3812,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:3813,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:3814,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3815,1
    - Dst: lsr_read_opacity
      Src: /src/gpac/src/laser/lsr_dec.c:3816,1
    - Dst: lsr_read_preserve_aspect_ratio
      Src: /src/gpac/src/laser/lsr_dec.c:3818,1
    - Dst: lsr_read_content_type
      Src: /src/gpac/src/laser/lsr_dec.c:3819,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3820,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3821,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3822,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:3823,1
    - Dst: lsr_read_transform_behavior
      Src: /src/gpac/src/laser/lsr_dec.c:3824,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3825,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3826,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3828
      start: 3809
    functionDepth: 10
    functionLinenumber: 3809
    functionLinenumberEnd: 3828
    functionName: lsr_read_image
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_preserve_aspect_ratio
    - lsr_read_opacity
    - lsr_read_transform_behavior
    - lsr_read_eRR
    - lsr_read_rare_full
    - lsr_read_id
    - lsr_read_group_content
    - lsr_read_coordinate_ptr
    - gf_node_new
    - lsr_read_content_type
    - lsr_read_any_attribute
    - lsr_read_href
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_image(GF_LASeRCodec *lsr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3831,1
    - Dst: lsr_restore_base
      Src: /src/gpac/src/laser/lsr_dec.c:3835,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:3837,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3839,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3841,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:3842,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3843,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:3844,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3846,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3847,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3848,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3849,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3851,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3854,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 2
    argNames:
    - lsr
    - is_same
    argTypes:
    - GF_LASeRCodec*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3856
      start: 3829
    functionDepth: 10
    functionLinenumber: 3829
    functionLinenumberEnd: 3856
    functionName: lsr_read_line
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - GF_LOG
    - lsr_read_rare_full
    - lsr_read_id
    - lsr_read_coordinate_ptr
    - lsr_restore_base
    - gf_node_new
    - lsr_read_fill
    - lsr_read_any_attribute
    - lsr_read_group_content
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_line(GF_LASeRCodec *lsr, Bool is_same)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3862,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3864,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3865,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3867
      start: 3858
    functionDepth: 5
    functionLinenumber: 3858
    functionLinenumberEnd: 3867
    functionName: lsr_read_gradient_units
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    linkageType: ''
    returnType: void
    signature: void lsr_read_gradient_units(GF_LASeRCodec *lsr, GF_Node *elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3870,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3871,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:3872,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3873,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:3874,1
    - Dst: lsr_read_gradient_units
      Src: /src/gpac/src/laser/lsr_dec.c:3875,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3876,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3877,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3878,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3879,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3880,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3881,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3883
      start: 3868
    functionDepth: 10
    functionLinenumber: 3868
    functionLinenumberEnd: 3883
    functionName: lsr_read_linearGradient
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - lsr_read_gradient_units
    - lsr_read_id
    - lsr_read_coordinate_ptr
    - gf_node_new
    - lsr_read_fill
    - lsr_read_any_attribute
    - lsr_read_rare
    - lsr_read_group_content
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_linearGradient(GF_LASeRCodec *lsr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3886,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3887,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:3888,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:3889,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3890,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3891,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3893
      start: 3884
    functionDepth: 10
    functionLinenumber: 3884
    functionLinenumberEnd: 3893
    functionName: lsr_read_mpath
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_id
    - lsr_read_group_content
    - gf_node_new
    - lsr_read_any_attribute
    - lsr_read_rare
    - lsr_read_href
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_mpath(GF_LASeRCodec *lsr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3897,1
    - Dst: lsr_restore_base
      Src: /src/gpac/src/laser/lsr_dec.c:3901,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:3903,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3905,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3906,1
    - Dst: lsr_read_path_type
      Src: /src/gpac/src/laser/lsr_dec.c:3907,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3909,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:3910,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3911,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:3912,1
    - Dst: lsr_read_path_type
      Src: /src/gpac/src/laser/lsr_dec.c:3913,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3914,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3917,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:3918,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3920,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3923,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 2
    argNames:
    - lsr
    - same_type
    argTypes:
    - GF_LASeRCodec*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3925
      start: 3894
    functionDepth: 10
    functionLinenumber: 3894
    functionLinenumberEnd: 3925
    functionName: lsr_read_path
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - lsr_read_path_type
    - gf_node_get_attribute_by_tag
    - GF_LOG
    - lsr_read_id
    - lsr_read_rare_full
    - GF_LSR_READ_INT
    - lsr_restore_base
    - gf_node_new
    - lsr_read_fill
    - lsr_read_any_attribute
    - lsr_read_group_content
    - lsr_read_fixed_16_8
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_path(GF_LASeRCodec *lsr, u32 same_type)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3929,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3931,1
    - Dst: lsr_restore_base
      Src: /src/gpac/src/laser/lsr_dec.c:3935,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:3937,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3939,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3940,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:3941,1
    - Dst: lsr_read_point_sequence
      Src: /src/gpac/src/laser/lsr_dec.c:3942,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3944,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:3945,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3946,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:3947,1
    - Dst: lsr_read_point_sequence
      Src: /src/gpac/src/laser/lsr_dec.c:3948,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3949,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3952,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 3
    argNames:
    - lsr
    - is_polyline
    - same_type
    argTypes:
    - GF_LASeRCodec*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3954
      start: 3926
    functionDepth: 10
    functionLinenumber: 3926
    functionLinenumberEnd: 3954
    functionName: lsr_read_polygon
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - gf_node_get_attribute_by_tag
    - GF_LOG
    - lsr_read_point_sequence
    - lsr_read_id
    - lsr_read_rare_full
    - lsr_restore_base
    - gf_node_new
    - lsr_read_fill
    - lsr_read_any_attribute
    - lsr_read_group_content
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_polygon(GF_LASeRCodec *lsr, Bool is_polyline, u32
      same_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3957,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3958,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:3959,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3960,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:3961,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3962,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3963,1
    - Dst: lsr_read_gradient_units
      Src: /src/gpac/src/laser/lsr_dec.c:3964,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3965,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3966,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3967,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3969
      start: 3955
    functionDepth: 10
    functionLinenumber: 3955
    functionLinenumberEnd: 3969
    functionName: lsr_read_radialGradient
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - lsr_read_gradient_units
    - lsr_read_id
    - lsr_read_coordinate_ptr
    - gf_node_new
    - lsr_read_fill
    - lsr_read_any_attribute
    - lsr_read_rare
    - lsr_read_group_content
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_radialGradient(GF_LASeRCodec *lsr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:3972,1
    - Dst: lsr_restore_base
      Src: /src/gpac/src/laser/lsr_dec.c:3976,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:3978,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3980,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3981,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3982,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3983,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3984,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3985,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3987,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:3988,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3989,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:3990,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3991,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3992,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3993,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3994,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3995,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3996,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3997,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4000,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 30
    argCount: 2
    argNames:
    - lsr
    - same_type
    argTypes:
    - GF_LASeRCodec*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4002
      start: 3970
    functionDepth: 10
    functionLinenumber: 3970
    functionLinenumberEnd: 4002
    functionName: lsr_read_rect
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - GF_LOG
    - lsr_read_id
    - lsr_read_rare_full
    - lsr_read_coordinate_ptr
    - lsr_restore_base
    - gf_node_new
    - lsr_read_fill
    - lsr_read_any_attribute
    - lsr_read_group_content
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_rect(GF_LASeRCodec *lsr, u32 same_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:4007,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4008,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:4009,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4010,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4011,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:4012,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4013,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4017,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:4018,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:4020,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4023,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4024,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4026
      start: 4004
    functionDepth: 10
    functionLinenumber: 4004
    functionLinenumberEnd: 4026
    functionName: lsr_read_rectClip
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - lsr_read_coordinate
    - gf_node_get_attribute_by_tag
    - lsr_read_eRR
    - lsr_read_rare_full
    - lsr_read_id
    - GF_LSR_READ_INT
    - gf_node_new
    - lsr_read_fill
    - lsr_read_any_attribute
    - lsr_read_group_content
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_rectClip(GF_LASeRCodec *lsr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:4030,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4031,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:4032,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:4033,1
    - Dst: lsr_read_script_type
      Src: /src/gpac/src/laser/lsr_dec.c:4034,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:4035,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4036,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4037,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4039
      start: 4028
    functionDepth: 10
    functionLinenumber: 4028
    functionLinenumberEnd: 4039
    functionName: lsr_read_script
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_script_type
    - lsr_read_eRR
    - lsr_read_id
    - lsr_read_group_content
    - gf_node_new
    - lsr_read_any_attribute
    - lsr_read_rare
    - lsr_read_href
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_script(GF_LASeRCodec *lsr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:4044,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4045,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:4046,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4047,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4048,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:4049,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4050,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4053,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4054,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4056,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4058,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4062,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4063,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4065
      start: 4041
    functionDepth: 10
    functionLinenumber: 4041
    functionLinenumberEnd: 4065
    functionName: lsr_read_selector
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - gf_node_get_attribute_by_tag
    - lsr_read_eRR
    - lsr_read_rare_full
    - lsr_read_id
    - GF_LSR_READ_INT
    - gf_node_new
    - lsr_read_fill
    - lsr_read_any_attribute
    - lsr_read_group_content
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_selector(GF_LASeRCodec *lsr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:4069,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4070,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:4071,1
    - Dst: lsr_read_attribute_name
      Src: /src/gpac/src/laser/lsr_dec.c:4072,1
    - Dst: lsr_read_attribute_type
      Src: /src/gpac/src/laser/lsr_dec.c:4073,1
    - Dst: lsr_read_smil_times
      Src: /src/gpac/src/laser/lsr_dec.c:4075,1
    - Dst: lsr_read_duration
      Src: /src/gpac/src/laser/lsr_dec.c:4076,1
    - Dst: lsr_read_anim_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4077,1
    - Dst: lsr_read_anim_repeatCount
      Src: /src/gpac/src/laser/lsr_dec.c:4078,1
    - Dst: lsr_read_repeat_duration
      Src: /src/gpac/src/laser/lsr_dec.c:4079,1
    - Dst: lsr_read_anim_restart
      Src: /src/gpac/src/laser/lsr_dec.c:4080,1
    - Dst: lsr_read_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:4081,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:4082,1
    - Dst: lsr_read_lsr_enabled
      Src: /src/gpac/src/laser/lsr_dec.c:4083,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4084,1
    - Dst: lsr_setup_smil_anim
      Src: /src/gpac/src/laser/lsr_dec.c:4086,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:4087,1
    - Dst: lsr_read_group_content_post_init
      Src: /src/gpac/src/laser/lsr_dec.c:4088,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4090,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 2
    argNames:
    - lsr
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4093
      start: 4067
    functionDepth: 10
    functionLinenumber: 4067
    functionLinenumberEnd: 4093
    functionName: lsr_read_set
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_group_content_post_init
    - lsr_read_duration
    - lsr_read_repeat_duration
    - lsr_read_attribute_type
    - lsr_read_rare
    - lsr_read_href
    - lsr_read_smil_times
    - lsr_read_lsr_enabled
    - lsr_read_anim_fill
    - lsr_read_anim_value
    - lsr_read_id
    - gf_list_add
    - lsr_read_any_attribute
    - lsr_read_group_content
    - gf_node_new
    - lsr_read_attribute_name
    - lsr_read_anim_repeatCount
    - lsr_read_anim_restart
    - lsr_setup_smil_anim
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_set(GF_LASeRCodec *lsr, SVG_Element *parent)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:4098,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4099,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:4100,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4101,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4102,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4103,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4107,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:4108,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:4110,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:4113,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4114,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4117
      start: 4095
    functionDepth: 10
    functionLinenumber: 4095
    functionLinenumberEnd: 4117
    functionName: lsr_read_simpleLayout
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - lsr_read_coordinate
    - gf_node_get_attribute_by_tag
    - lsr_read_eRR
    - lsr_read_rare_full
    - lsr_read_id
    - GF_LSR_READ_INT
    - gf_node_new
    - lsr_read_fill
    - lsr_read_any_attribute
    - lsr_read_group_content
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_simpleLayout(GF_LASeRCodec *lsr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:4122,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4123,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:4124,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4125,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4126,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4128,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:4129,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4130,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4133
      start: 4119
    functionDepth: 10
    functionLinenumber: 4119
    functionLinenumberEnd: 4133
    functionName: lsr_read_stop
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - gf_node_get_attribute_by_tag
    - lsr_read_id
    - gf_node_new
    - lsr_read_fill
    - lsr_read_any_attribute
    - lsr_read_rare
    - lsr_read_group_content
    - lsr_read_fixed_16_8
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_stop(GF_LASeRCodec *lsr)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:4139,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4140,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:4141,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4142,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4143,1
    - Dst: lsr_read_string_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4144,1
    - Dst: lsr_read_string_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4145,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:4146,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4147,1
    - Dst: lsr_read_value_with_units
      Src: /src/gpac/src/laser/lsr_dec.c:4148,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4149,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4151,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4152,1
    - Dst: lsr_read_preserve_aspect_ratio
      Src: /src/gpac/src/laser/lsr_dec.c:4156,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4159,1
    - Dst: lsr_read_duration_ex
      Src: /src/gpac/src/laser/lsr_dec.c:4161,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4162,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4166,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4168,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4169,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4185,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4187,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4189,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:4190,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4193,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4195,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4196,1
    - Dst: lsr_read_string_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4199,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4201,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4203,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:4204,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:4205,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:4206,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:4207,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4211,1
    - Dst: lsr_read_value_with_units
      Src: /src/gpac/src/laser/lsr_dec.c:4212,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4214,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4216,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4217,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4220,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:4225,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/src/laser/lsr_dec.c:4226,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4229,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 85
    argCount: 2
    argNames:
    - lsr
    - init_node
    argTypes:
    - GF_LASeRCodec*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4231
      start: 4134
    functionDepth: 10
    functionLinenumber: 4134
    functionLinenumberEnd: 4231
    functionName: lsr_read_svg
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - lsr_read_preserve_aspect_ratio
    - gf_sg_set_root_node
    - gf_node_get_attribute_by_tag
    - lsr_read_eRR
    - lsr_read_id
    - lsr_read_value_with_units
    - GF_LSR_READ_INT
    - lsr_read_duration_ex
    - lsr_read_group_content
    - lsr_read_vluimsbf5
    - gf_node_new
    - gf_node_register
    - lsr_read_fill
    - lsr_read_any_attribute
    - lsr_read_rare
    - lsr_read_string_attribute
    - lsr_read_fixed_16_8
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_svg(GF_LASeRCodec *lsr, Bool init_node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:4235,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4236,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:4237,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4238,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4239,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:4240,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4241,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4244
      start: 4233
    functionDepth: 10
    functionLinenumber: 4233
    functionLinenumberEnd: 4244
    functionName: lsr_read_switch
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - lsr_read_eRR
    - lsr_read_rare_full
    - lsr_read_id
    - gf_node_new
    - lsr_read_fill
    - lsr_read_any_attribute
    - lsr_read_group_content
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_switch(GF_LASeRCodec *lsr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:4251,1
    - Dst: lsr_restore_base
      Src: /src/gpac/src/laser/lsr_dec.c:4254,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:4256,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4258,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4259,1
    - Dst: lsr_read_coord_list
      Src: /src/gpac/src/laser/lsr_dec.c:4260,1
    - Dst: lsr_read_coord_list
      Src: /src/gpac/src/laser/lsr_dec.c:4261,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4263,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:4264,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4265,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4266,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4268,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4270,1
    - Dst: lsr_read_float_list
      Src: /src/gpac/src/laser/lsr_dec.c:4273,1
    - Dst: lsr_read_coord_list
      Src: /src/gpac/src/laser/lsr_dec.c:4274,1
    - Dst: lsr_read_coord_list
      Src: /src/gpac/src/laser/lsr_dec.c:4275,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4276,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4279,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 30
    argCount: 2
    argNames:
    - lsr
    - same_type
    argTypes:
    - GF_LASeRCodec*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4281
      start: 4247
    functionDepth: 10
    functionLinenumber: 4247
    functionLinenumberEnd: 4281
    functionName: lsr_read_text
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - lsr_read_float_list
    - gf_node_get_attribute_by_tag
    - GF_LOG
    - lsr_read_id
    - lsr_read_rare_full
    - GF_LSR_READ_INT
    - lsr_restore_base
    - gf_node_new
    - lsr_read_fill
    - lsr_read_any_attribute
    - lsr_read_group_content
    - lsr_read_coord_list
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_text(GF_LASeRCodec *lsr, u32 same_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:4285,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4286,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:4287,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4288,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4289,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4290,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4293
      start: 4283
    functionDepth: 10
    functionLinenumber: 4283
    functionLinenumberEnd: 4293
    functionName: lsr_read_tspan
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - lsr_read_id
    - gf_node_new
    - lsr_read_fill
    - lsr_read_any_attribute
    - lsr_read_rare
    - lsr_read_group_content
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_tspan(GF_LASeRCodec *lsr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:4299,1
    - Dst: lsr_restore_base
      Src: /src/gpac/src/laser/lsr_dec.c:4302,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:4304,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4306,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:4307,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4309,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:4310,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4311,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4312,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:4313,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4315,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4317,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4318,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4320,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4321,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:4322,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4323,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4326,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 28
    argCount: 2
    argNames:
    - lsr
    - is_same
    argTypes:
    - GF_LASeRCodec*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4328
      start: 4295
    functionDepth: 10
    functionLinenumber: 4295
    functionLinenumberEnd: 4328
    functionName: lsr_read_use
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_stroke
    - gf_node_get_attribute_by_tag
    - GF_LOG
    - lsr_read_eRR
    - lsr_read_id
    - lsr_read_rare_full
    - GF_LSR_READ_INT
    - lsr_read_group_content
    - lsr_read_coordinate_ptr
    - lsr_restore_base
    - gf_node_new
    - lsr_read_fill
    - lsr_read_any_attribute
    - lsr_read_href
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_use(GF_LASeRCodec *lsr, Bool is_same)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:4334,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4335,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:4336,1
    - Dst: lsr_read_smil_times
      Src: /src/gpac/src/laser/lsr_dec.c:4337,1
    - Dst: lsr_read_duration
      Src: /src/gpac/src/laser/lsr_dec.c:4338,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:4339,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4340,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4341,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4343,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4344,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4346,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:4349,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:4350,1
    - Dst: lsr_read_preserve_aspect_ratio
      Src: /src/gpac/src/laser/lsr_dec.c:4353,1
    - Dst: lsr_read_anim_repeatCount
      Src: /src/gpac/src/laser/lsr_dec.c:4354,1
    - Dst: lsr_read_repeat_duration
      Src: /src/gpac/src/laser/lsr_dec.c:4355,1
    - Dst: lsr_read_anim_restart
      Src: /src/gpac/src/laser/lsr_dec.c:4356,1
    - Dst: lsr_read_sync_behavior
      Src: /src/gpac/src/laser/lsr_dec.c:4357,1
    - Dst: lsr_read_sync_tolerance
      Src: /src/gpac/src/laser/lsr_dec.c:4358,1
    - Dst: lsr_read_transform_behavior
      Src: /src/gpac/src/laser/lsr_dec.c:4359,1
    - Dst: lsr_read_content_type
      Src: /src/gpac/src/laser/lsr_dec.c:4360,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4361,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4362,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4363,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:4364,1
    - Dst: lsr_read_clip_time
      Src: /src/gpac/src/laser/lsr_dec.c:4366,1
    - Dst: lsr_read_clip_time
      Src: /src/gpac/src/laser/lsr_dec.c:4367,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4369,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4371,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4372,1
    - Dst: lsr_read_sync_reference
      Src: /src/gpac/src/laser/lsr_dec.c:4375,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4376,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4377,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 42
    argCount: 2
    argNames:
    - lsr
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4379
      start: 4330
    functionDepth: 10
    functionLinenumber: 4330
    functionLinenumberEnd: 4379
    functionName: lsr_read_video
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - lsr_read_transform_behavior
    - lsr_read_rare_full
    - GF_LSR_READ_INT
    - lsr_read_duration
    - lsr_read_repeat_duration
    - lsr_read_href
    - lsr_read_smil_times
    - lsr_read_clip_time
    - lsr_read_id
    - lsr_read_content_type
    - lsr_read_any_attribute
    - lsr_read_group_content
    - lsr_read_sync_behavior
    - lsr_read_sync_reference
    - gf_node_get_attribute_by_tag
    - lsr_read_sync_tolerance
    - lsr_read_coordinate_ptr
    - gf_node_new
    - lsr_read_preserve_aspect_ratio
    - lsr_read_anim_repeatCount
    - lsr_read_eRR
    - lsr_read_anim_restart
    - lsr_read_byte_align_string
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_video(GF_LASeRCodec *lsr, SVG_Element *parent)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/laser/lsr_dec.c:4387,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4391,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:4392,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4393,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4395,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4396,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4398,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4400,1
    - Dst: lsr_read_event_type
      Src: /src/gpac/src/laser/lsr_dec.c:4401,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4405,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4407,1
    - Dst: lsr_read_any_uri
      Src: /src/gpac/src/laser/lsr_dec.c:4409,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4411,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4414,1
    - Dst: lsr_read_codec_IDREF
      Src: /src/gpac/src/laser/lsr_dec.c:4415,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4419,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4421,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4422,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4424,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4426,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4427,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4429,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4431,1
    - Dst: lsr_read_codec_IDREF
      Src: /src/gpac/src/laser/lsr_dec.c:4432,1
    - Dst: lsr_read_lsr_enabled
      Src: /src/gpac/src/laser/lsr_dec.c:4436,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4437,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4438,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:4470,1
    - Dst: gf_node_dom_listener_add
      Src: /src/gpac/src/laser/lsr_dec.c:4473,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 78
    argCount: 2
    argNames:
    - lsr
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4477
      start: 4381
    functionDepth: 10
    functionLinenumber: 4381
    functionLinenumberEnd: 4477
    functionName: lsr_read_listener
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_lsr_enabled
    - gf_node_get_attribute_by_tag
    - lsr_read_event_type
    - lsr_read_any_uri
    - lsr_read_id
    - GF_LSR_READ_INT
    - gf_node_dom_listener_add
    - gf_node_new
    - gf_list_add
    - lsr_read_codec_IDREF
    - lsr_read_any_attribute
    - lsr_read_rare
    - lsr_read_group_content
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_listener(GF_LASeRCodec *lsr, SVG_Element *parent)
  - BBCount: 58
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4483,1
    - Dst: lsr_read_a
      Src: /src/gpac/src/laser/lsr_dec.c:4487,1
    - Dst: lsr_read_animate
      Src: /src/gpac/src/laser/lsr_dec.c:4490,1
    - Dst: lsr_read_animate
      Src: /src/gpac/src/laser/lsr_dec.c:4493,1
    - Dst: lsr_read_animateMotion
      Src: /src/gpac/src/laser/lsr_dec.c:4496,1
    - Dst: lsr_read_animateTransform
      Src: /src/gpac/src/laser/lsr_dec.c:4499,1
    - Dst: lsr_read_audio
      Src: /src/gpac/src/laser/lsr_dec.c:4502,1
    - Dst: lsr_read_circle
      Src: /src/gpac/src/laser/lsr_dec.c:4505,1
    - Dst: lsr_read_conditional
      Src: /src/gpac/src/laser/lsr_dec.c:4508,1
    - Dst: lsr_read_cursorManager
      Src: /src/gpac/src/laser/lsr_dec.c:4511,1
    - Dst: lsr_read_defs
      Src: /src/gpac/src/laser/lsr_dec.c:4514,1
    - Dst: lsr_read_data
      Src: /src/gpac/src/laser/lsr_dec.c:4517,1
    - Dst: lsr_read_ellipse
      Src: /src/gpac/src/laser/lsr_dec.c:4520,1
    - Dst: lsr_read_foreignObject
      Src: /src/gpac/src/laser/lsr_dec.c:4523,1
    - Dst: lsr_read_g
      Src: /src/gpac/src/laser/lsr_dec.c:4526,1
    - Dst: lsr_read_image
      Src: /src/gpac/src/laser/lsr_dec.c:4529,1
    - Dst: lsr_read_line
      Src: /src/gpac/src/laser/lsr_dec.c:4532,1
    - Dst: lsr_read_linearGradient
      Src: /src/gpac/src/laser/lsr_dec.c:4535,1
    - Dst: lsr_read_data
      Src: /src/gpac/src/laser/lsr_dec.c:4538,1
    - Dst: lsr_read_mpath
      Src: /src/gpac/src/laser/lsr_dec.c:4541,1
    - Dst: lsr_read_path
      Src: /src/gpac/src/laser/lsr_dec.c:4544,1
    - Dst: lsr_read_polygon
      Src: /src/gpac/src/laser/lsr_dec.c:4547,1
    - Dst: lsr_read_polygon
      Src: /src/gpac/src/laser/lsr_dec.c:4550,1
    - Dst: lsr_read_radialGradient
      Src: /src/gpac/src/laser/lsr_dec.c:4553,1
    - Dst: lsr_read_rect
      Src: /src/gpac/src/laser/lsr_dec.c:4556,1
    - Dst: lsr_read_rectClip
      Src: /src/gpac/src/laser/lsr_dec.c:4559,1
    - Dst: lsr_read_g
      Src: /src/gpac/src/laser/lsr_dec.c:4562,1
    - Dst: lsr_read_line
      Src: /src/gpac/src/laser/lsr_dec.c:4565,1
    - Dst: lsr_read_path
      Src: /src/gpac/src/laser/lsr_dec.c:4568,1
    - Dst: lsr_read_path
      Src: /src/gpac/src/laser/lsr_dec.c:4571,1
    - Dst: lsr_read_polygon
      Src: /src/gpac/src/laser/lsr_dec.c:4574,1
    - Dst: lsr_read_polygon
      Src: /src/gpac/src/laser/lsr_dec.c:4577,1
    - Dst: lsr_read_polygon
      Src: /src/gpac/src/laser/lsr_dec.c:4580,1
    - Dst: lsr_read_polygon
      Src: /src/gpac/src/laser/lsr_dec.c:4583,1
    - Dst: lsr_read_polygon
      Src: /src/gpac/src/laser/lsr_dec.c:4586,1
    - Dst: lsr_read_polygon
      Src: /src/gpac/src/laser/lsr_dec.c:4589,1
    - Dst: lsr_read_rect
      Src: /src/gpac/src/laser/lsr_dec.c:4592,1
    - Dst: lsr_read_rect
      Src: /src/gpac/src/laser/lsr_dec.c:4595,1
    - Dst: lsr_read_text
      Src: /src/gpac/src/laser/lsr_dec.c:4598,1
    - Dst: lsr_read_text
      Src: /src/gpac/src/laser/lsr_dec.c:4601,1
    - Dst: lsr_read_use
      Src: /src/gpac/src/laser/lsr_dec.c:4604,1
    - Dst: lsr_read_script
      Src: /src/gpac/src/laser/lsr_dec.c:4607,1
    - Dst: lsr_read_selector
      Src: /src/gpac/src/laser/lsr_dec.c:4610,1
    - Dst: lsr_read_set
      Src: /src/gpac/src/laser/lsr_dec.c:4613,1
    - Dst: lsr_read_simpleLayout
      Src: /src/gpac/src/laser/lsr_dec.c:4616,1
    - Dst: lsr_read_stop
      Src: /src/gpac/src/laser/lsr_dec.c:4619,1
    - Dst: lsr_read_switch
      Src: /src/gpac/src/laser/lsr_dec.c:4622,1
    - Dst: lsr_read_text
      Src: /src/gpac/src/laser/lsr_dec.c:4625,1
    - Dst: lsr_read_data
      Src: /src/gpac/src/laser/lsr_dec.c:4628,1
    - Dst: lsr_read_tspan
      Src: /src/gpac/src/laser/lsr_dec.c:4631,1
    - Dst: lsr_read_use
      Src: /src/gpac/src/laser/lsr_dec.c:4634,1
    - Dst: lsr_read_video
      Src: /src/gpac/src/laser/lsr_dec.c:4637,1
    - Dst: lsr_read_listener
      Src: /src/gpac/src/laser/lsr_dec.c:4640,1
    - Dst: lsr_read_extend_class
      Src: /src/gpac/src/laser/lsr_dec.c:4643,1
    - Dst: lsr_read_private_element_container
      Src: /src/gpac/src/laser/lsr_dec.c:4646,1
    - Dst: lsr_read_text_content
      Src: /src/gpac/src/laser/lsr_dec.c:4649,1
    - Dst: memset
      Src: /src/gpac/src/laser/lsr_dec.c:4656,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/laser/lsr_dec.c:4658,1
    CyclomaticComplexity: 60
    EdgeCount: 60
    ICount: 178
    argCount: 2
    argNames:
    - lsr
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4661
      start: 4479
    functionDepth: 11
    functionLinenumber: 4479
    functionLinenumberEnd: 4661
    functionName: lsr_read_scene_content_model
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_a
    - lsr_read_animate
    - lsr_read_mpath
    - lsr_read_switch
    - lsr_read_tspan
    - GF_LSR_READ_INT
    - lsr_read_listener
    - memset
    - lsr_read_polygon
    - lsr_read_set
    - lsr_read_rect
    - lsr_read_text_content
    - lsr_read_video
    - lsr_read_data
    - lsr_read_rectClip
    - lsr_read_simpleLayout
    - lsr_read_conditional
    - lsr_read_linearGradient
    - lsr_read_image
    - lsr_read_circle
    - lsr_read_line
    - gf_dom_event_fire
    - lsr_read_use
    - lsr_read_animateTransform
    - lsr_read_defs
    - lsr_read_text
    - lsr_read_foreignObject
    - lsr_read_animateMotion
    - lsr_read_cursorManager
    - lsr_read_path
    - lsr_read_extend_class
    - lsr_read_private_element_container
    - lsr_read_radialGradient
    - lsr_read_audio
    - lsr_read_script
    - lsr_read_stop
    - lsr_read_selector
    - lsr_read_g
    - lsr_read_ellipse
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_scene_content_model(GF_LASeRCodec *lsr, SVG_Element
      *parent)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4667,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4669,1
    - Dst: lsr_read_conditional
      Src: /src/gpac/src/laser/lsr_dec.c:4672,1
    - Dst: lsr_read_cursorManager
      Src: /src/gpac/src/laser/lsr_dec.c:4675,1
    - Dst: lsr_read_extend_class
      Src: /src/gpac/src/laser/lsr_dec.c:4678,1
    - Dst: lsr_read_private_element_container
      Src: /src/gpac/src/laser/lsr_dec.c:4681,1
    - Dst: lsr_read_rectClip
      Src: /src/gpac/src/laser/lsr_dec.c:4684,1
    - Dst: lsr_read_simpleLayout
      Src: /src/gpac/src/laser/lsr_dec.c:4687,1
    - Dst: lsr_read_selector
      Src: /src/gpac/src/laser/lsr_dec.c:4690,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4694,1
    - Dst: lsr_read_a
      Src: /src/gpac/src/laser/lsr_dec.c:4697,1
    - Dst: lsr_read_animate
      Src: /src/gpac/src/laser/lsr_dec.c:4700,1
    - Dst: lsr_read_animate
      Src: /src/gpac/src/laser/lsr_dec.c:4703,1
    - Dst: lsr_read_animateMotion
      Src: /src/gpac/src/laser/lsr_dec.c:4706,1
    - Dst: lsr_read_animateTransform
      Src: /src/gpac/src/laser/lsr_dec.c:4709,1
    - Dst: lsr_read_audio
      Src: /src/gpac/src/laser/lsr_dec.c:4712,1
    - Dst: lsr_read_circle
      Src: /src/gpac/src/laser/lsr_dec.c:4715,1
    - Dst: lsr_read_defs
      Src: /src/gpac/src/laser/lsr_dec.c:4718,1
    - Dst: lsr_read_data
      Src: /src/gpac/src/laser/lsr_dec.c:4721,1
    - Dst: lsr_read_ellipse
      Src: /src/gpac/src/laser/lsr_dec.c:4724,1
    - Dst: lsr_read_foreignObject
      Src: /src/gpac/src/laser/lsr_dec.c:4727,1
    - Dst: lsr_read_g
      Src: /src/gpac/src/laser/lsr_dec.c:4730,1
    - Dst: lsr_read_image
      Src: /src/gpac/src/laser/lsr_dec.c:4733,1
    - Dst: lsr_read_line
      Src: /src/gpac/src/laser/lsr_dec.c:4736,1
    - Dst: lsr_read_linearGradient
      Src: /src/gpac/src/laser/lsr_dec.c:4739,1
    - Dst: lsr_read_data
      Src: /src/gpac/src/laser/lsr_dec.c:4742,1
    - Dst: lsr_read_mpath
      Src: /src/gpac/src/laser/lsr_dec.c:4745,1
    - Dst: lsr_read_path
      Src: /src/gpac/src/laser/lsr_dec.c:4748,1
    - Dst: lsr_read_polygon
      Src: /src/gpac/src/laser/lsr_dec.c:4751,1
    - Dst: lsr_read_polygon
      Src: /src/gpac/src/laser/lsr_dec.c:4754,1
    - Dst: lsr_read_radialGradient
      Src: /src/gpac/src/laser/lsr_dec.c:4757,1
    - Dst: lsr_read_rect
      Src: /src/gpac/src/laser/lsr_dec.c:4760,1
    - Dst: lsr_read_script
      Src: /src/gpac/src/laser/lsr_dec.c:4763,1
    - Dst: lsr_read_set
      Src: /src/gpac/src/laser/lsr_dec.c:4766,1
    - Dst: lsr_read_stop
      Src: /src/gpac/src/laser/lsr_dec.c:4769,1
    - Dst: lsr_read_svg
      Src: /src/gpac/src/laser/lsr_dec.c:4772,1
    - Dst: lsr_read_switch
      Src: /src/gpac/src/laser/lsr_dec.c:4775,1
    - Dst: lsr_read_text
      Src: /src/gpac/src/laser/lsr_dec.c:4778,1
    - Dst: lsr_read_data
      Src: /src/gpac/src/laser/lsr_dec.c:4781,1
    - Dst: lsr_read_tspan
      Src: /src/gpac/src/laser/lsr_dec.c:4784,1
    - Dst: lsr_read_use
      Src: /src/gpac/src/laser/lsr_dec.c:4787,1
    - Dst: lsr_read_video
      Src: /src/gpac/src/laser/lsr_dec.c:4790,1
    - Dst: lsr_read_listener
      Src: /src/gpac/src/laser/lsr_dec.c:4793,1
    - Dst: memset
      Src: /src/gpac/src/laser/lsr_dec.c:4799,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/laser/lsr_dec.c:4801,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 137
    argCount: 2
    argNames:
    - lsr
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4804
      start: 4663
    functionDepth: 11
    functionLinenumber: 4663
    functionLinenumberEnd: 4804
    functionName: lsr_read_update_content_model
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_a
    - lsr_read_animate
    - lsr_read_mpath
    - lsr_read_switch
    - lsr_read_tspan
    - GF_LSR_READ_INT
    - lsr_read_listener
    - memset
    - lsr_read_polygon
    - lsr_read_set
    - lsr_read_rect
    - lsr_read_video
    - lsr_read_rectClip
    - lsr_read_simpleLayout
    - lsr_read_data
    - lsr_read_conditional
    - lsr_read_image
    - lsr_read_linearGradient
    - lsr_read_circle
    - lsr_read_line
    - lsr_read_svg
    - gf_dom_event_fire
    - lsr_read_use
    - lsr_read_animateTransform
    - lsr_read_defs
    - lsr_read_text
    - lsr_read_foreignObject
    - lsr_read_animateMotion
    - lsr_read_cursorManager
    - lsr_read_private_element_container
    - lsr_read_extend_class
    - lsr_read_path
    - lsr_read_radialGradient
    - lsr_read_audio
    - lsr_read_script
    - lsr_read_stop
    - lsr_read_selector
    - lsr_read_g
    - lsr_read_ellipse
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *lsr_read_update_content_model(GF_LASeRCodec *lsr, SVG_Element
      *parent)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: lsr_read_object_content
      Src: /src/gpac/src/laser/lsr_dec.c:4811,1
    - Dst: gf_node_init
      Src: /src/gpac/src/laser/lsr_dec.c:4816,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4818,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:4821,1
    - Dst: lsr_read_scene_content_model
      Src: /src/gpac/src/laser/lsr_dec.c:4825,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:4827,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/laser/lsr_dec.c:4828,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:4829,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/laser/lsr_dec.c:4829,1
    - Dst: gf_node_init
      Src: /src/gpac/src/laser/lsr_dec.c:4837,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 3
    argNames:
    - lsr
    - elt
    - skip_object_content
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4838
      start: 4806
    functionDepth: 12
    functionLinenumber: 4806
    functionLinenumberEnd: 4838
    functionName: lsr_read_group_content
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 31
    functionsReached:
    - gf_node_init
    - gf_node_get_class_name
    - GF_LOG
    - GF_LSR_READ_INT
    - gf_node_list_add_child_last
    - lsr_read_vluimsbf5
    - lsr_read_scene_content_model
    - gf_node_register
    - lsr_read_object_content
    linkageType: ''
    returnType: void
    signature: void lsr_read_group_content(GF_LASeRCodec *lsr, GF_Node *elt, Bool
      skip_object_content)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: lsr_read_object_content
      Src: /src/gpac/src/laser/lsr_dec.c:4844,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4846,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:4849,1
    - Dst: lsr_read_scene_content_model
      Src: /src/gpac/src/laser/lsr_dec.c:4853,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:4855,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/laser/lsr_dec.c:4856,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:4857,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/laser/lsr_dec.c:4857,1
    - Dst: gf_node_init
      Src: /src/gpac/src/laser/lsr_dec.c:4863,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 3
    argNames:
    - lsr
    - elt
    - skip_init
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4864
      start: 4840
    functionDepth: 12
    functionLinenumber: 4840
    functionLinenumberEnd: 4864
    functionName: lsr_read_group_content_post_init
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 4
    functionsReached:
    - gf_node_init
    - gf_node_get_class_name
    - GF_LOG
    - GF_LSR_READ_INT
    - gf_node_list_add_child_last
    - lsr_read_vluimsbf5
    - lsr_read_scene_content_model
    - gf_node_register
    - lsr_read_object_content
    linkageType: ''
    returnType: void
    signature: void lsr_read_group_content_post_init(GF_LASeRCodec *lsr, SVG_Element
      *elt, Bool skip_init)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:4876,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:4881,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:4882,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:4886,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:4888,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:4890,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:4897,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:4902,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:4903,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:4907,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:4908,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:4915,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:4919,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:4921,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:4926,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:4930,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:4936,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:4941,1
    - Dst: lsr_read_fraction_12_item
      Src: /src/gpac/src/laser/lsr_dec.c:4942,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:4943,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:4949,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:4954,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:4955,1
    - Dst: lsr_read_fixed_clamp
      Src: /src/gpac/src/laser/lsr_dec.c:4959,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:4960,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:4967,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:4972,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:4976,1
    - Dst: lsr_read_smil_time
      Src: /src/gpac/src/laser/lsr_dec.c:4976,1
    - Dst: lsr_read_extension
      Src: /src/gpac/src/laser/lsr_dec.c:4981,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 104
    argCount: 8
    argNames:
    - lsr
    - node
    - fieldType
    - rep_val
    - idx
    - is_insert
    - is_com
    - single_field_type
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - u32
    - void*
    - u32
    - Bool
    - Bool
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4985
      start: 4866
    functionDepth: 5
    functionLinenumber: 4866
    functionLinenumberEnd: 4985
    functionName: lsr_read_update_value_indexed
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_extension
    - gf_list_new
    - lsr_read_coordinate
    - GF_SAFEALLOC
    - lsr_read_fraction_12_item
    - lsr_read_smil_time
    - lsr_read_fixed_clamp
    - gf_list_add
    - gf_malloc
    - lsr_read_fixed_16_8
    linkageType: ''
    returnType: void
    signature: void *lsr_read_update_value_indexed(GF_LASeRCodec *lsr, GF_Node*node,
      u32 fieldType, void *rep_val, u32 idx, Bool is_insert, Bool is_com, u32 *single_field_type)
  - BBCount: 65
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4994,1
    - Dst: lsr_read_paint
      Src: /src/gpac/src/laser/lsr_dec.c:4997,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:5011,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:5012,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:5016,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:5018,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5022,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5025,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5027,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:5031,1
    - Dst: lsr_read_matrix
      Src: /src/gpac/src/laser/lsr_dec.c:5036,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5052,1
    - Dst: lsr_read_fixed_clamp
      Src: /src/gpac/src/laser/lsr_dec.c:5056,1
    - Dst: lsr_read_value_with_units
      Src: /src/gpac/src/laser/lsr_dec.c:5062,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:5064,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5068,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5071,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5073,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:5077,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:5086,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5091,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5094,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5096,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:5100,1
    - Dst: lsr_read_float_list
      Src: /src/gpac/src/laser/lsr_dec.c:5105,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5111,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5116,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5117,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:5119,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:5123,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:5127,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:5131,1
    - Dst: lsr_read_any_uri
      Src: /src/gpac/src/laser/lsr_dec.c:5139,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5145,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5147,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5149,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5151,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:5175,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:5178,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:5180,1
    - Dst: lsr_read_point_sequence
      Src: /src/gpac/src/laser/lsr_dec.c:5184,1
    - Dst: lsr_read_path_type
      Src: /src/gpac/src/laser/lsr_dec.c:5187,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5193,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5197,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5198,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:5199,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:5201,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:5203,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5210,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5213,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5215,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5219,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5226,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5228,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:5230,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/laser/lsr_dec.c:5235,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 223
    argCount: 6
    argNames:
    - lsr
    - node
    - att_tag
    - fieldType
    - val
    - node_tag
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - u32
    - u32
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5237
      start: 4987
    functionDepth: 11
    functionLinenumber: 4987
    functionLinenumberEnd: 5237
    functionName: lsr_read_update_value
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_float_list
    - gf_free
    - gf_list_get
    - gf_strdup
    - lsr_read_coordinate
    - lsr_read_path_type
    - lsr_read_paint
    - lsr_read_point_sequence
    - lsr_read_any_uri
    - GF_LOG
    - GF_LSR_READ_INT
    - gf_node_changed
    - lsr_read_matrix
    - lsr_read_fixed_clamp
    - lsr_read_vluimsbf5
    - lsr_read_byte_align_string
    - lsr_read_value_with_units
    - lsr_read_fixed_16_8
    linkageType: ''
    returnType: void
    signature: void lsr_read_update_value(GF_LASeRCodec *lsr, GF_Node *node, u32 att_tag,
      u32 fieldType, void *val, u32 node_tag)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5242,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5245,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5247,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5248,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5251,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5254
      start: 5239
    functionDepth: 2
    functionLinenumber: 5239
    functionLinenumberEnd: 5254
    functionName: lsr_get_attribute_name
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_vluimsbf5
    - GF_LSR_READ_INT
    linkageType: ''
    returnType: u32
    signature: u32 lsr_get_attribute_name(GF_LASeRCodec *lsr)
  - BBCount: 95
    BranchProfiles: []
    Callsites:
    - Dst: lsr_get_attribute_name
      Src: /src/gpac/src/laser/lsr_dec.c:5268,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5272,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5273,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5276,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5277,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5278,1
    - Dst: lsr_read_codec_IDREF_command
      Src: /src/gpac/src/laser/lsr_dec.c:5280,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/laser/lsr_dec.c:5281,1
    - Dst: lsr_read_codec_IDREF_command
      Src: /src/gpac/src/laser/lsr_dec.c:5286,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/laser/lsr_dec.c:5288,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5295,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:5299,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5305,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5309,1
    - Dst: lsr_read_update_content_model
      Src: /src/gpac/src/laser/lsr_dec.c:5314,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/laser/lsr_dec.c:5316,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5317,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5320,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5323,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/laser/lsr_dec.c:5325,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5328,1
    - Dst: gf_node_list_insert_child
      Src: /src/gpac/src/laser/lsr_dec.c:5330,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5331,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/laser/lsr_dec.c:5335,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/laser/lsr_dec.c:5337,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/laser/lsr_dec.c:5339,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5340,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/laser/lsr_dec.c:5344,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/laser/lsr_dec.c:5352,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/laser/lsr_dec.c:5353,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5364,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5372,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5383,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/laser/lsr_dec.c:5386,1
    - Dst: gf_xml_get_attribute_type
      Src: /src/gpac/src/laser/lsr_dec.c:5389,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5392,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5395,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5398,1
    - Dst: gf_dom_new_text_node
      Src: /src/gpac/src/laser/lsr_dec.c:5402,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5403,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:5404,1
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/laser/lsr_dec.c:5407,1
    - Dst: lsr_read_update_value
      Src: /src/gpac/src/laser/lsr_dec.c:5408,1
    - Dst: lsr_read_update_value_indexed
      Src: /src/gpac/src/laser/lsr_dec.c:5411,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5442,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:5443,1
    - Dst: lsr_read_update_value
      Src: /src/gpac/src/laser/lsr_dec.c:5451,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_dec.c:5453,1
    - Dst: gf_mx2d_decompose
      Src: /src/gpac/src/laser/lsr_dec.c:5463,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/laser/lsr_dec.c:5464,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/laser/lsr_dec.c:5469,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/laser/lsr_dec.c:5470,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/laser/lsr_dec.c:5471,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/laser/lsr_dec.c:5474,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/laser/lsr_dec.c:5475,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/laser/lsr_dec.c:5476,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/laser/lsr_dec.c:5478,1
    - Dst: gf_dom_new_text_node
      Src: /src/gpac/src/laser/lsr_dec.c:5485,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5486,1
    - Dst: gf_node_list_insert_child
      Src: /src/gpac/src/laser/lsr_dec.c:5487,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/laser/lsr_dec.c:5489,1
    - Dst: gf_sg_parent_reset
      Src: /src/gpac/src/laser/lsr_dec.c:5494,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/laser/lsr_dec.c:5495,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:5497,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/laser/lsr_dec.c:5498,1
    - Dst: lsr_read_update_value
      Src: /src/gpac/src/laser/lsr_dec.c:5500,1
    - Dst: lsr_read_update_value_indexed
      Src: /src/gpac/src/laser/lsr_dec.c:5505,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/laser/lsr_dec.c:5512,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:5514,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:5516,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:5517,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:5518,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:5519,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/laser/lsr_dec.c:5521,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:5522,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:5523,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/laser/lsr_dec.c:5527,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/laser/lsr_dec.c:5528,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:5529,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:5530,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:5533,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:5534,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:5536,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:5537,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:5538,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:5539,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:5540,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:5541,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:5542,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:5543,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/laser/lsr_dec.c:5545,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:5563,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/laser/lsr_dec.c:5564,1
    - Dst: gf_sg_vrml_mf_insert
      Src: /src/gpac/src/laser/lsr_dec.c:5571,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:5577,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/laser/lsr_dec.c:5578,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:5581,1
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/laser/lsr_dec.c:5589,1
    - Dst: lsr_read_update_value
      Src: /src/gpac/src/laser/lsr_dec.c:5590,1
    - Dst: lsr_read_update_value_indexed
      Src: /src/gpac/src/laser/lsr_dec.c:5592,1
    - Dst: gf_svg_attributes_add
      Src: /src/gpac/src/laser/lsr_dec.c:5594,1
    - Dst: gf_svg_delete_attribute_value
      Src: /src/gpac/src/laser/lsr_dec.c:5595,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/laser/lsr_dec.c:5595,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5601,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/laser/lsr_dec.c:5603,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5604,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5606,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/laser/lsr_dec.c:5609,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5611,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5615,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/laser/lsr_dec.c:5616,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/laser/lsr_dec.c:5617,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/laser/lsr_dec.c:5619,1
    - Dst: gf_svg_attributes_add
      Src: /src/gpac/src/laser/lsr_dec.c:5621,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5626,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5632,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5640,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/laser/lsr_dec.c:5642,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5643,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5645,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/laser/lsr_dec.c:5646,1
    - Dst: lsr_read_update_content_model
      Src: /src/gpac/src/laser/lsr_dec.c:5652,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5653,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5654,1
    - Dst: lsr_read_update_content_model
      Src: /src/gpac/src/laser/lsr_dec.c:5659,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5660,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/laser/lsr_dec.c:5661,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5671,1
    - Dst: gf_node_list_del_child_idx
      Src: /src/gpac/src/laser/lsr_dec.c:5675,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/laser/lsr_dec.c:5676,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/laser/lsr_dec.c:5678,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5682,1
    - Dst: lsr_read_update_content_model
      Src: /src/gpac/src/laser/lsr_dec.c:5684,1
    - Dst: gf_node_list_insert_child
      Src: /src/gpac/src/laser/lsr_dec.c:5687,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/laser/lsr_dec.c:5689,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5691,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/laser/lsr_dec.c:5696,1
    - Dst: lsr_read_update_content_model
      Src: /src/gpac/src/laser/lsr_dec.c:5700,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/laser/lsr_dec.c:5701,1
    CyclomaticComplexity: 101
    EdgeCount: 101
    ICount: 395
    argCount: 3
    argNames:
    - lsr
    - com_list
    - com_type
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5706
      start: 5256
    functionDepth: 12
    functionLinenumber: 5256
    functionLinenumberEnd: 5706
    functionName: lsr_read_add_replace_insert
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - lsr_read_update_content_model
    - lsr_read_update_value_indexed
    - gf_node_list_insert_child
    - GF_LSR_READ_INT
    - gf_sg_command_field_new
    - gf_mx2d_init
    - gf_mx2d_add_scale
    - gf_node_list_add_child_last
    - gf_node_list_del_child_idx
    - lsr_read_vluimsbf5
    - gf_node_get_field
    - gf_node_unregister
    - gf_sg_command_new
    - gf_svg_delete_attribute_value
    - lsr_read_update_value
    - gf_assert
    - gf_list_get
    - gf_sg_vrml_mf_insert
    - gf_lsr_anim_type_to_attribute
    - gf_dom_add_text_node
    - gf_svg_attributes_copy
    - gf_sg_parent_reset
    - gf_node_unregister_children
    - gf_list_add
    - gf_node_list_add_child
    - gf_mx2d_decompose
    - lsr_read_any_attribute
    - lsr_get_attribute_name
    - gf_list_insert
    - gf_xml_get_attribute_type
    - gf_sg_find_node
    - gf_node_replace
    - gf_node_list_get_child
    - gf_node_get_attribute_by_tag
    - lsr_read_codec_IDREF_command
    - gf_node_get_graph
    - gf_node_changed
    - gf_list_del
    - gf_mx2d_add_translation
    - gf_list_pop_front
    - gf_svg_attributes_add
    - gf_svg_create_attribute_value
    - lsr_read_byte_align_string
    - gf_sg_command_del
    - gf_node_register
    - gf_dom_new_text_node
    - gf_mx2d_add_rotation
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsr_read_add_replace_insert(GF_LASeRCodec *lsr, GF_List *com_list,
      u32 com_type)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: lsr_get_attribute_name
      Src: /src/gpac/src/laser/lsr_dec.c:5714,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5717,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5718,1
    - Dst: lsr_read_codec_IDREF_command
      Src: /src/gpac/src/laser/lsr_dec.c:5719,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5721,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/laser/lsr_dec.c:5724,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5725,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/laser/lsr_dec.c:5726,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5729,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5731,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/laser/lsr_dec.c:5735,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5738,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/laser/lsr_dec.c:5740,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/laser/lsr_dec.c:5745,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5750,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/laser/lsr_dec.c:5751,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/laser/lsr_dec.c:5756,1
    - Dst: gf_node_list_del_child
      Src: /src/gpac/src/laser/lsr_dec.c:5758,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/laser/lsr_dec.c:5760,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/laser/lsr_dec.c:5763,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 45
    argCount: 2
    argNames:
    - lsr
    - com_list
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5767
      start: 5708
    functionDepth: 4
    functionLinenumber: 5708
    functionLinenumberEnd: 5767
    functionName: lsr_read_delete
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_sg_find_node
    - gf_node_replace
    - gf_node_list_get_child
    - gf_lsr_anim_type_to_attribute
    - gf_node_list_del_child
    - GF_LSR_READ_INT
    - gf_sg_command_field_new
    - lsr_read_vluimsbf5
    - lsr_read_codec_IDREF_command
    - gf_list_add
    - gf_node_get_field
    - gf_node_register
    - gf_node_unregister
    - lsr_read_any_attribute
    - gf_sg_command_new
    - lsr_get_attribute_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsr_read_delete(GF_LASeRCodec *lsr, GF_List *com_list)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: lsr_read_event_type
      Src: /src/gpac/src/laser/lsr_dec.c:5775,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5778,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5780,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5781,1
    - Dst: lsr_to_dom_key
      Src: /src/gpac/src/laser/lsr_dec.c:5789,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5796,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:5798,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:5799,1
    - Dst: lsr_read_codec_IDREF_command
      Src: /src/gpac/src/laser/lsr_dec.c:5801,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5803,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:5805,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5807,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/laser/lsr_dec.c:5811,1
    - Dst: memset
      Src: /src/gpac/src/laser/lsr_dec.c:5814,1
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_dec.c:5817,1
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_dec.c:5818,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/laser/lsr_dec.c:5819,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/laser/lsr_dec.c:5822,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5823,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/laser/lsr_dec.c:5824,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5827,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5829,1
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_dec.c:5833,1
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_dec.c:5834,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 56
    argCount: 2
    argNames:
    - lsr
    - com_list
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5837
      start: 5769
    functionDepth: 9
    functionLinenumber: 5769
    functionLinenumberEnd: 5837
    functionName: lsr_read_send_event
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_coordinate
    - lsr_read_event_type
    - gf_sg_find_node
    - GF_LSR_READ_INT
    - gf_dom_event_fire
    - FIX2INT
    - memset
    - lsr_read_vluimsbf5
    - lsr_read_codec_IDREF_command
    - gf_list_add
    - lsr_to_dom_key
    - lsr_read_byte_align_string
    - gf_node_register
    - lsr_read_any_attribute
    - gf_sg_command_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsr_read_send_event(GF_LASeRCodec *lsr, GF_List *com_list)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5842,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5845,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5846,1
    - Dst: lsr_get_attribute_name
      Src: /src/gpac/src/laser/lsr_dec.c:5848,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:5851,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5852,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - lsr
    - com_list
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5854
      start: 5839
    functionDepth: 3
    functionLinenumber: 5839
    functionLinenumberEnd: 5854
    functionName: lsr_read_save
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - lsr_read_vluimsbf5
    - lsr_read_byte_align_string
    - lsr_read_any_attribute
    - lsr_get_attribute_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsr_read_save(GF_LASeRCodec *lsr, GF_List *com_list)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:5858,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5859,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - lsr
    - com_list
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5861
      start: 5856
    functionDepth: 3
    functionLinenumber: 5856
    functionLinenumberEnd: 5861
    functionName: lsr_read_restore
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_any_attribute
    - lsr_read_byte_align_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsr_read_restore(GF_LASeRCodec *lsr, GF_List *com_list)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/laser/lsr_dec.c:5866,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_dec.c:5869,1
    - Dst: lsr_get_stream
      Src: /src/gpac/src/laser/lsr_dec.c:5871,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:5878,1
    - Dst: gf_divfix
      Src: /src/gpac/src/laser/lsr_dec.c:5880,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:5880,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/laser/lsr_dec.c:5882,1
    - Dst: lsr_read_command_list
      Src: /src/gpac/src/laser/lsr_dec.c:5884,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/laser/lsr_dec.c:5885,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - node
    - par
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5887
      start: 5863
    functionDepth: 2
    functionLinenumber: 5863
    functionLinenumberEnd: 5887
    functionName: lsr_exec_command_list
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_command_list
    - gf_assert
    - INT2FIX
    - gf_bs_new
    - gf_divfix
    - gf_bs_del
    - gf_node_get_private
    - lsr_get_stream
    linkageType: ''
    returnType: void
    signature: void lsr_exec_command_list(GF_Node *node, void *par, Bool is_destroy)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: gf_dom_add_updates_node
      Src: /src/gpac/src/laser/lsr_dec.c:5897,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/laser/lsr_dec.c:5898,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/laser/lsr_dec.c:5899,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5901,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/laser/lsr_dec.c:5902,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:5907,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/laser/lsr_dec.c:5911,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5920,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5924,1
    - Dst: lsr_read_add_replace_insert
      Src: /src/gpac/src/laser/lsr_dec.c:5929,1
    - Dst: lsr_read_delete
      Src: /src/gpac/src/laser/lsr_dec.c:5932,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5936,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5937,1
    - Dst: lsr_read_svg
      Src: /src/gpac/src/laser/lsr_dec.c:5939,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5942,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/laser/lsr_dec.c:5943,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5945,1
    - Dst: gf_sg_reset
      Src: /src/gpac/src/laser/lsr_dec.c:5947,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/laser/lsr_dec.c:5948,1
    - Dst: lsr_read_svg
      Src: /src/gpac/src/laser/lsr_dec.c:5949,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:5955,1
    - Dst: lsr_read_send_event
      Src: /src/gpac/src/laser/lsr_dec.c:5958,1
    - Dst: lsr_read_restore
      Src: /src/gpac/src/laser/lsr_dec.c:5961,1
    - Dst: lsr_read_save
      Src: /src/gpac/src/laser/lsr_dec.c:5964,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5969,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5970,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5973,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5974,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5977,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5978,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5981,1
    - Dst: lsr_read_codec_IDREF_command
      Src: /src/gpac/src/laser/lsr_dec.c:5985,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/laser/lsr_dec.c:5987,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/laser/lsr_dec.c:5989,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5992,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5996,1
    - Dst: gf_node_activate
      Src: /src/gpac/src/laser/lsr_dec.c:5999,1
    - Dst: gf_node_deactivate
      Src: /src/gpac/src/laser/lsr_dec.c:6002,1
    - Dst: lsr_read_private_element_container
      Src: /src/gpac/src/laser/lsr_dec.c:6006,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/laser/lsr_dec.c:6035,1
    - Dst: lsr_read_object_content
      Src: /src/gpac/src/laser/lsr_dec.c:6036,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 144
    argCount: 4
    argNames:
    - lsr
    - com_list
    - cond
    - first_imp
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    - SVG_Element*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6046
      start: 5889
    functionDepth: 13
    functionLinenumber: 5889
    functionLinenumberEnd: 6046
    functionName: lsr_read_command_list
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 2
    functionsReached:
    - gf_bs_read_data
    - gf_dom_add_updates_node
    - GF_LSR_READ_INT
    - lsr_read_vluimsbf5
    - gf_node_set_callback_function
    - lsr_read_object_content
    - gf_sg_command_new
    - gf_node_activate
    - gf_sg_set_scene_size_info
    - lsr_read_delete
    - gf_node_deactivate
    - gf_list_add
    - lsr_read_save
    - lsr_read_any_attribute
    - gf_sg_find_node
    - gf_node_set_private
    - lsr_read_svg
    - gf_bs_align
    - lsr_read_codec_IDREF_command
    - gf_malloc
    - lsr_read_add_replace_insert
    - lsr_read_send_event
    - lsr_read_private_element_container
    - lsr_read_restore
    - gf_sg_reset
    - lsr_read_byte_align_string
    - gf_node_register
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsr_read_command_list(GF_LASeRCodec *lsr, GF_List *com_list,
      SVG_Element *cond, Bool first_imp)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6059,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6060,1
    - Dst: lsr_read_extension
      Src: /src/gpac/src/laser/lsr_dec.c:6061,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:6066,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:6068,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:6069,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:6070,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:6071,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6083,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6086,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/laser/lsr_dec.c:6087,1
    - Dst: gf_realloc
      Src: /src/gpac/src/laser/lsr_dec.c:6088,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6093,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6094,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6095,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/laser/lsr_dec.c:6101,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6105,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6108,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:6111,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:6112,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/laser/lsr_dec.c:6116,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6120,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6123,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:6126,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6133,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/laser/lsr_dec.c:6136,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6137,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6142,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:6143,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6145,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6147,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6151,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:6153,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6162,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6164,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:6165,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6168,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6170,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/laser/lsr_dec.c:6171,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6173,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6175,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:6176,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/laser/lsr_dec.c:6179,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6183,1
    - Dst: lsr_read_command_list
      Src: /src/gpac/src/laser/lsr_dec.c:6186,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6187,1
    - Dst: lsr_read_extension
      Src: /src/gpac/src/laser/lsr_dec.c:6188,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 107
    argCount: 2
    argNames:
    - lsr
    - com_list
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6190
      start: 6048
    functionDepth: 14
    functionLinenumber: 6048
    functionLinenumberEnd: 6190
    functionName: lsr_decode_laser_unit
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 2
    functionsReached:
    - gf_free
    - lsr_read_extension
    - lsr_read_command_list
    - gf_get_bit_size
    - GF_LSR_READ_INT
    - gf_bs_get_bit_offset
    - gf_list_count
    - lsr_read_vluimsbf5
    - gf_list_add
    - lsr_read_byte_align_string
    - gf_bs_available
    - gf_list_last
    - gf_list_rem_last
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsr_decode_laser_unit(GF_LASeRCodec *lsr, GF_List *com_list)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _codec
    - ','
    - _val
    - ','
    - _nbBits
    - ','
    - _str
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 42
    functionName: GF_LSR_WRITE_INT
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GF_LSR_WRITE_INT(_codec, _val, _nbBits, _str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_enc.c:52,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_enc.c:54,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_enc.c:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 58
    functionName: GF_LASeRCodec *gf_laser_encoder_new(GF_SceneGraph *graph)
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_LASeRCodec *gf_laser_encoder_new(GF_SceneGraph *graph)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:64,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_enc.c:65,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_enc.c:66,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_enc.c:67,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_enc.c:69,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_enc.c:70,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:71,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_enc.c:72,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_enc.c:73,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_enc.c:74,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_enc.c:76,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_enc.c:77,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - codec
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 78
    functionName: gf_laser_encoder_del
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - gf_list_last
    - gf_list_rem_last
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_laser_encoder_del(GF_LASeRCodec *codec)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/laser/lsr_enc.c:85,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - codec
    - ESID
    argTypes:
    - GF_LASeRCodec*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 89
    functionName: lsr_get_stream
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 4
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: LASeRStreamInfo
    signature: LASeRStreamInfo *lsr_get_stream(GF_LASeRCodec *codec, u16 ESID)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: lsr_get_stream
      Src: /src/gpac/src/laser/lsr_enc.c:95,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_enc.c:96,1
    - Dst: memcpy
      Src: /src/gpac/src/laser/lsr_enc.c:99,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_enc.c:106,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 3
    argNames:
    - codec
    - ESID
    - cfg
    argTypes:
    - GF_LASeRCodec*
    - u16
    - GF_LASERConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 108
    functionName: gf_laser_encoder_new_stream
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_list_add
    - lsr_get_stream
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_laser_encoder_new_stream(GF_LASeRCodec *codec, u16 ESID,
      GF_LASERConfig *cfg)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: lsr_get_stream
      Src: /src/gpac/src/laser/lsr_enc.c:116,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/laser/lsr_enc.c:119,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:120,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:121,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:122,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:123,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:124,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:125,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:127,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:128,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:130,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:132,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:134,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:136,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:137,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:138,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:139,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:140,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:141,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:143,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:145,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/laser/lsr_enc.c:146,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/laser/lsr_enc.c:147,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/laser/lsr_enc.c:148,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 34
    argCount: 4
    argNames:
    - codec
    - ESID
    - out_data
    - out_data_length
    argTypes:
    - GF_LASeRCodec*
    - u16
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 150
    functionName: gf_laser_encoder_get_config
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_align
    - gf_bs_del
    - lsr_get_stream
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_laser_encoder_get_config(GF_LASeRCodec *codec, u16 ESID,
      u8 **out_data, u32 *out_data_length)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: lsr_get_stream
      Src: /src/gpac/src/laser/lsr_enc.c:158,1
    - Dst: gf_divfix
      Src: /src/gpac/src/laser/lsr_enc.c:165,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_enc.c:165,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_enc.c:167,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/laser/lsr_enc.c:169,1
    - Dst: lsr_write_laser_unit
      Src: /src/gpac/src/laser/lsr_enc.c:170,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/laser/lsr_enc.c:172,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/laser/lsr_enc.c:173,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/laser/lsr_enc.c:175,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 6
    argNames:
    - codec
    - ESID
    - command_list
    - reset_context
    - out_data
    - out_data_length
    argTypes:
    - GF_LASeRCodec*
    - u16
    - GF_List*
    - Bool
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 178
    functionName: gf_laser_encode_au
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - gf_bs_new
    - gf_bs_get_content
    - gf_divfix
    - gf_bs_align
    - gf_bs_del
    - lsr_get_stream
    - lsr_write_laser_unit
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_laser_encode_au(GF_LASeRCodec *codec, u16 ESID, GF_List
      *command_list, Bool reset_context, u8 **out_data, u32 *out_data_length)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:184,1
    - Dst: gf_divfix
      Src: /src/gpac/src/laser/lsr_enc.c:190,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_enc.c:190,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_enc.c:192,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/laser/lsr_enc.c:194,1
    - Dst: lsr_write_laser_unit
      Src: /src/gpac/src/laser/lsr_enc.c:195,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/laser/lsr_enc.c:196,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/laser/lsr_enc.c:197,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - codec
    - out_data
    - out_data_length
    argTypes:
    - GF_LASeRCodec*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 200
    functionName: gf_laser_encoder_get_rap
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - INT2FIX
    - gf_bs_new
    - gf_bs_get_content
    - gf_divfix
    - gf_bs_del
    - lsr_write_laser_unit
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_laser_encoder_get_rap(GF_LASeRCodec *codec, u8 **out_data,
      u32 *out_data_length)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/laser/lsr_enc.c:205,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_enc.c:208,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:212,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:214,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:215,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - lsr
    - val
    - name
    argTypes:
    - GF_LASeRCodec*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 216
    functionName: lsr_write_vluimsbf5
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_assert
    - gf_bs_write_int
    - gf_get_bit_size
    linkageType: ''
    returnType: void
    signature: void lsr_write_vluimsbf5(GF_LASeRCodec *lsr, u32 val, const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/laser/lsr_enc.c:221,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_enc.c:226,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:230,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:232,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:233,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 4
    argNames:
    - lsr
    - val
    - extra_words
    - name
    argTypes:
    - GF_LASeRCodec*
    - u32
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 234
    functionName: lsr_write_vluimsbf5_ex
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_assert
    - gf_bs_write_int
    - gf_get_bit_size
    linkageType: ''
    returnType: void
    signature: void lsr_write_vluimsbf5_ex(GF_LASeRCodec *lsr, u32 val, u32 extra_words,
      const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/laser/lsr_enc.c:239,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - val
    - extra_words
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 236
    functionDepth: 1
    functionLinenumber: 236
    functionLinenumberEnd: 244
    functionName: lsr_get_vluimsbf5_size
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_get_bit_size
    linkageType: ''
    returnType: u32
    signature: u32 lsr_get_vluimsbf5_size(u32 val, u32 extra_words)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/laser/lsr_enc.c:249,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_enc.c:252,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:257,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:259,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:260,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - lsr
    - val
    - name
    argTypes:
    - GF_LASeRCodec*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 246
    functionDepth: 1
    functionLinenumber: 246
    functionLinenumberEnd: 261
    functionName: lsr_write_vluimsbf8
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_assert
    - gf_bs_write_int
    - gf_get_bit_size
    linkageType: ''
    returnType: void
    signature: void lsr_write_vluimsbf8(GF_LASeRCodec *lsr, u32 val, const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/laser/lsr_enc.c:265,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:266,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/laser/lsr_enc.c:267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - lsr
    - data
    - len
    - name
    argTypes:
    - GF_LASeRCodec*
    - char*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 263
    functionDepth: 2
    functionLinenumber: 263
    functionLinenumberEnd: 268
    functionName: lsr_write_extension
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - strlen
    - lsr_write_vluimsbf5
    linkageType: ''
    returnType: void
    signature: void lsr_write_extension(GF_LASeRCodec *lsr, char *data, u32 len, const
      char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_id
      Src: /src/gpac/src/laser/lsr_enc.c:274,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/laser/lsr_enc.c:276,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/laser/lsr_enc.c:277,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_enc.c:282,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:284,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:285,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 3
    argNames:
    - lsr
    - href
    - name
    argTypes:
    - GF_LASeRCodec*
    - XMLRI*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 270
    functionDepth: 2
    functionLinenumber: 270
    functionLinenumberEnd: 286
    functionName: lsr_write_codec_IDREF
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_sg_find_node_by_name
    - gf_node_get_id
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_codec_IDREF(GF_LASeRCodec *lsr, XMLRI *href, const char
      *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_id
      Src: /src/gpac/src/laser/lsr_enc.c:290,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_enc.c:291,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:292,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:293,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - lsr
    - href
    - name
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 288
    functionDepth: 2
    functionLinenumber: 288
    functionLinenumberEnd: 294
    functionName: lsr_write_codec_IDREF_Node
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_node_get_id
    - gf_assert
    - GF_LSR_WRITE_INT
    - lsr_write_vluimsbf5
    linkageType: ''
    returnType: void
    signature: void lsr_write_codec_IDREF_Node(GF_LASeRCodec *lsr, GF_Node *href,
      const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_id
      Src: /src/gpac/src/laser/lsr_enc.c:300,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_enc.c:301,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/laser/lsr_enc.c:303,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_enc.c:306,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - lsr
    - href
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 296
    functionDepth: 2
    functionLinenumber: 296
    functionLinenumberEnd: 309
    functionName: lsr_get_IDREF_nb_bits
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_node_get_id
    - gf_assert
    - gf_get_bit_size
    linkageType: ''
    returnType: u32
    signature: u32 lsr_get_IDREF_nb_bits(GF_LASeRCodec *lsr, GF_Node *href)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_enc.c:318,1
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_enc.c:324,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:328,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - lsr
    - fix
    - name
    argTypes:
    - GF_LASeRCodec*
    - Fixed
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 311
    functionDepth: 1
    functionLinenumber: 311
    functionLinenumberEnd: 329
    functionName: lsr_write_fixed_16_8
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - FIX2INT
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_fixed_16_8(GF_LASeRCodec *lsr, Fixed fix, const char
      *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:333,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:335,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:336,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - lsr
    - n
    - name
    argTypes:
    - GF_LASeRCodec*
    - SVG_Number*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 330
    functionDepth: 2
    functionLinenumber: 330
    functionLinenumberEnd: 338
    functionName: lsr_write_fixed_16_8i
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    - lsr_write_fixed_16_8
    linkageType: ''
    returnType: void
    signature: void lsr_write_fixed_16_8i(GF_LASeRCodec *lsr, SVG_Number *n, const
      char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:344,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:346,1
    - Dst: strcmp
      Src: /src/gpac/src/laser/lsr_enc.c:347,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - lsr
    - font
    argTypes:
    - GF_LASeRCodec*
    - SVG_FontFamily*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 340
    functionDepth: 1
    functionLinenumber: 340
    functionLinenumberEnd: 350
    functionName: lsr_get_font_index
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: s32
    signature: s32 lsr_get_font_index(GF_LASeRCodec *lsr, SVG_FontFamily *font)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_enc.c:357,1
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_enc.c:358,1
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_enc.c:359,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - lsr
    - color
    argTypes:
    - GF_LASeRCodec*
    - SVG_Color*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 352
    functionDepth: 1
    functionLinenumber: 352
    functionLinenumberEnd: 365
    functionName: lsr_get_col_index
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - FIX2INT
    linkageType: ''
    returnType: s32
    signature: s32 lsr_get_col_index(GF_LASeRCodec *lsr, SVG_Color *color)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:370,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:371,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:373,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:374,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:376,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:377,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - lsr
    - li
    - name
    argTypes:
    - GF_LASeRCodec*
    - SVG_Number*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 367
    functionDepth: 2
    functionLinenumber: 367
    functionLinenumberEnd: 379
    functionName: lsr_write_line_increment_type
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    - lsr_write_fixed_16_8
    linkageType: ''
    returnType: void
    signature: void lsr_write_line_increment_type(GF_LASeRCodec *lsr, SVG_Number *li,
      const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/laser/lsr_enc.c:383,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/laser/lsr_enc.c:384,1
    - Dst: lsr_write_vluimsbf8
      Src: /src/gpac/src/laser/lsr_enc.c:385,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/laser/lsr_enc.c:386,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:387,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - lsr
    - str
    - name
    argTypes:
    - GF_LASeRCodec*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 381
    functionDepth: 2
    functionLinenumber: 381
    functionLinenumberEnd: 388
    functionName: lsr_write_byte_align_string
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_align
    - lsr_write_vluimsbf8
    - gf_bs_write_data
    - strlen
    linkageType: ''
    returnType: void
    signature: void lsr_write_byte_align_string(GF_LASeRCodec *lsr, char *str, const
      char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:392,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:397,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:400,1
    - Dst: strncat
      Src: /src/gpac/src/laser/lsr_enc.c:402,1
    - Dst: strlen
      Src: /src/gpac/src/laser/lsr_enc.c:402,1
    - Dst: strcat
      Src: /src/gpac/src/laser/lsr_enc.c:403,1
    - Dst: lsr_write_byte_align_string
      Src: /src/gpac/src/laser/lsr_enc.c:405,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 4
    argNames:
    - lsr
    - l
    - name
    - is_iri
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 389
    functionDepth: 3
    functionLinenumber: 389
    functionLinenumberEnd: 406
    functionName: lsr_write_byte_align_string_list
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_list_get
    - lsr_write_byte_align_string
    - strncat
    - gf_list_count
    - strlen
    linkageType: ''
    returnType: void
    signature: void lsr_write_byte_align_string_list(GF_LASeRCodec *lsr, GF_List *l,
      const char *name, Bool is_iri)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/laser/lsr_enc.c:415,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:423,1
    - Dst: strnicmp
      Src: /src/gpac/src/laser/lsr_enc.c:425,1
    - Dst: lsr_write_byte_align_string
      Src: /src/gpac/src/laser/lsr_enc.c:426,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:427,1
    - Dst: strchr
      Src: /src/gpac/src/laser/lsr_enc.c:430,1
    - Dst: lsr_write_byte_align_string
      Src: /src/gpac/src/laser/lsr_enc.c:432,1
    - Dst: strlen
      Src: /src/gpac/src/laser/lsr_enc.c:434,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:435,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:436,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/laser/lsr_enc.c:437,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:440,1
    - Dst: lsr_write_codec_IDREF
      Src: /src/gpac/src/laser/lsr_enc.c:441,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:443,1
    - Dst: lsr_write_codec_IDREF
      Src: /src/gpac/src/laser/lsr_enc.c:445,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 3
    argNames:
    - lsr
    - iri
    - name
    argTypes:
    - GF_LASeRCodec*
    - XMLRI*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 408
    functionDepth: 3
    functionLinenumber: 408
    functionLinenumberEnd: 446
    functionName: lsr_write_any_uri
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_sg_find_node_by_name
    - lsr_write_byte_align_string
    - lsr_write_vluimsbf5
    - gf_bs_write_data
    - GF_LSR_WRITE_INT
    - strnicmp
    - lsr_write_codec_IDREF
    - strchr
    - strlen
    linkageType: ''
    returnType: void
    signature: void lsr_write_any_uri(GF_LASeRCodec *lsr, XMLRI *iri, const char *name)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:452,1
    - Dst: lsr_get_col_index
      Src: /src/gpac/src/laser/lsr_enc.c:453,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:456,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:458,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:460,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:464,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:465,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:468,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:469,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:473,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:474,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:476,1
    - Dst: lsr_write_byte_align_string
      Src: /src/gpac/src/laser/lsr_enc.c:477,1
    - Dst: gf_svg_get_system_paint_server_name
      Src: /src/gpac/src/laser/lsr_enc.c:477,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:481,1
    - Dst: lsr_write_any_uri
      Src: /src/gpac/src/laser/lsr_enc.c:482,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:486,1
    - Dst: lsr_write_extension
      Src: /src/gpac/src/laser/lsr_enc.c:487,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 39
    argCount: 3
    argNames:
    - lsr
    - paint
    - name
    argTypes:
    - GF_LASeRCodec*
    - SVG_Paint*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 448
    functionDepth: 4
    functionLinenumber: 448
    functionLinenumberEnd: 491
    functionName: lsr_write_paint
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_any_uri
    - lsr_write_byte_align_string
    - GF_LOG
    - lsr_get_col_index
    - gf_svg_get_system_paint_server_name
    - GF_LSR_WRITE_INT
    - lsr_write_extension
    linkageType: ''
    returnType: void
    signature: void lsr_write_paint(GF_LASeRCodec *lsr, SVG_Paint *paint, const char
      *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 494
    functionDepth: 0
    functionLinenumber: 494
    functionLinenumberEnd: 497
    functionName: lsr_write_private_element_container
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void lsr_write_private_element_container(GF_LASeRCodec *lsr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 499
    functionDepth: 0
    functionLinenumber: 499
    functionLinenumberEnd: 502
    functionName: lsr_write_private_att_class
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void lsr_write_private_att_class(GF_LASeRCodec *lsr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:507,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:508,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/laser/lsr_enc.c:510,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - lsr
    - data
    - len
    - name
    argTypes:
    - GF_LASeRCodec*
    - char*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 504
    functionDepth: 2
    functionLinenumber: 504
    functionLinenumberEnd: 513
    functionName: lsr_write_extend_class
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    - gf_bs_write_int
    - lsr_write_vluimsbf5
    linkageType: ''
    returnType: void
    signature: void lsr_write_extend_class(GF_LASeRCodec *lsr, char *data, u32 len,
      const char *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - lsr
    - index
    - name
    argTypes:
    - GF_LASeRCodec*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 515
    functionDepth: 0
    functionLinenumber: 515
    functionLinenumberEnd: 517
    functionName: lsr_write_private_attr_container
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void lsr_write_private_attr_container(GF_LASeRCodec *lsr, u32 index,
      const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:521,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:522,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:524,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:525,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - l1
    - l2
    argTypes:
    - GF_List*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 519
    functionDepth: 1
    functionLinenumber: 519
    functionLinenumberEnd: 529
    functionName: lsr_float_list_equal
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: Bool
    signature: Bool lsr_float_list_equal(GF_List *l1, GF_List *l2)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:537,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:539,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - lsr
    - node
    - skippable
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 534
    functionDepth: 1
    functionLinenumber: 534
    functionLinenumberEnd: 548
    functionName: lsr_write_any_attribute
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_any_attribute(GF_LASeRCodec *lsr, SVG_Element *node,
      Bool skippable)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:553,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:555,1
    - Dst: lsr_write_private_att_class
      Src: /src/gpac/src/laser/lsr_enc.c:557,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 550
    functionDepth: 1
    functionLinenumber: 550
    functionLinenumberEnd: 560
    functionName: lsr_write_private_attributes
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_private_att_class
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_private_attributes(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:564,1
    - Dst: lsr_write_byte_align_string
      Src: /src/gpac/src/laser/lsr_enc.c:565,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:567,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - lsr
    - class_attr
    - name
    argTypes:
    - GF_LASeRCodec*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 569
      start: 561
    functionDepth: 3
    functionLinenumber: 561
    functionLinenumberEnd: 569
    functionName: lsr_write_string_attribute
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_byte_align_string
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_string_attribute(GF_LASeRCodec *lsr, char *class_attr,
      char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_id
      Src: /src/gpac/src/laser/lsr_enc.c:572,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:574,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:575,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:578,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:579,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:580,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:583,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:585,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 570
    functionDepth: 2
    functionLinenumber: 570
    functionLinenumberEnd: 587
    functionName: lsr_write_id
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_node_get_id
    - GF_LSR_WRITE_INT
    - lsr_write_vluimsbf5
    linkageType: ''
    returnType: void
    signature: void lsr_write_id(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_enc.c:595,1
    - Dst: gf_divfix
      Src: /src/gpac/src/laser/lsr_enc.c:595,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:598,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/laser/lsr_enc.c:598,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:608,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/laser/lsr_enc.c:608,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_enc.c:611,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:616,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/laser/lsr_enc.c:616,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_enc.c:619,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 3
    argNames:
    - lsr
    - x
    - nb_bits
    argTypes:
    - GF_LASeRCodec*
    - Fixed
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 621
      start: 589
    functionDepth: 1
    functionLinenumber: 589
    functionLinenumberEnd: 621
    functionName: lsr_translate_coords
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 6
    functionsReached:
    - gf_assert
    - GF_LOG
    - gf_divfix
    - FIX2INT
    - FIX2FLT
    linkageType: ''
    returnType: u32
    signature: u32 lsr_translate_coords(GF_LASeRCodec *lsr, Fixed x, u32 nb_bits)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ABS
      Src: /src/gpac/src/laser/lsr_enc.c:627,1
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_enc.c:630,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:631,1
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_enc.c:634,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:636,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - lsr
    - v
    argTypes:
    - GF_LASeRCodec*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 639
      start: 623
    functionDepth: 1
    functionLinenumber: 623
    functionLinenumberEnd: 639
    functionName: lsr_translate_scale
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 1
    functionsReached:
    - FIX2INT
    - GF_LOG
    - ABS
    linkageType: ''
    returnType: u32
    signature: u32 lsr_translate_scale(GF_LASeRCodec *lsr, Fixed v)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:644,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:645,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:646,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:647,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:648,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:650,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:654,1
    - Dst: lsr_translate_scale
      Src: /src/gpac/src/laser/lsr_enc.c:655,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:656,1
    - Dst: lsr_translate_scale
      Src: /src/gpac/src/laser/lsr_enc.c:657,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:658,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:660,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:663,1
    - Dst: lsr_translate_scale
      Src: /src/gpac/src/laser/lsr_enc.c:664,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:665,1
    - Dst: lsr_translate_scale
      Src: /src/gpac/src/laser/lsr_enc.c:666,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:667,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:669,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:673,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_enc.c:674,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:675,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_enc.c:676,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:677,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:679,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 39
    argCount: 2
    argNames:
    - lsr
    - mx
    argTypes:
    - GF_LASeRCodec*
    - SVG_Transform*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 683
      start: 640
    functionDepth: 2
    functionLinenumber: 640
    functionLinenumberEnd: 683
    functionName: lsr_write_matrix
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_translate_coords
    - GF_LSR_WRITE_INT
    - lsr_write_fixed_16_8
    - lsr_translate_scale
    linkageType: ''
    returnType: void
    signature: void lsr_write_matrix(GF_LASeRCodec *lsr, SVG_Transform *mx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:694,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - lsr
    - f
    - name
    argTypes:
    - GF_LASeRCodec*
    - Fixed
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 695
      start: 685
    functionDepth: 1
    functionLinenumber: 685
    functionLinenumberEnd: 695
    functionName: lsr_write_fixed_clamp
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_fixed_clamp(GF_LASeRCodec *lsr, Fixed f, const char
      *name)
  - BBCount: 23
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 46
    argCount: 1
    argNames:
    - dom_k
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 745
      start: 697
    functionDepth: 0
    functionLinenumber: 697
    functionLinenumberEnd: 745
    functionName: dom_to_lsr_key
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 dom_to_lsr_key(u32 dom_k)
  - BBCount: 52
    BranchProfiles: []
    Callsites:
    - Dst: dom_to_lsr_key
      Src: /src/gpac/src/laser/lsr_enc.c:754,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:767,1
    - Dst: sprintf
      Src: /src/gpac/src/laser/lsr_enc.c:770,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/src/laser/lsr_enc.c:770,1
    - Dst: gf_dom_get_key_name
      Src: /src/gpac/src/laser/lsr_enc.c:770,1
    - Dst: sprintf
      Src: /src/gpac/src/laser/lsr_enc.c:772,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/src/laser/lsr_enc.c:772,1
    - Dst: sprintf
      Src: /src/gpac/src/laser/lsr_enc.c:775,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/src/laser/lsr_enc.c:775,1
    - Dst: lsr_write_byte_align_string
      Src: /src/gpac/src/laser/lsr_enc.c:777,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:779,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:782,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:785,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:788,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:792,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:795,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:798,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:802,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:805,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:808,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:811,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:814,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:818,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:821,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:824,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:827,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:830,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:833,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:836,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:839,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:842,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:845,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:848,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:851,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:854,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:857,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:860,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:863,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:866,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:869,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:872,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:875,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:878,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:881,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:882,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:891,1
    - Dst: dom_to_lsr_key
      Src: /src/gpac/src/laser/lsr_enc.c:891,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 146
    argCount: 3
    argNames:
    - lsr
    - evtType
    - evtParam
    argTypes:
    - GF_LASeRCodec*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 895
      start: 746
    functionDepth: 3
    functionLinenumber: 746
    functionLinenumberEnd: 895
    functionName: lsr_write_event_type
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_byte_align_string
    - GF_LOG
    - dom_to_lsr_key
    - sprintf
    - gf_dom_event_get_name
    - lsr_write_vluimsbf5
    - gf_dom_get_key_name
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_event_type(GF_LASeRCodec *lsr, u32 evtType, u32 evtParam)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:901,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/laser/lsr_enc.c:902,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:904,1
    - Dst: lsr_write_codec_IDREF
      Src: /src/gpac/src/laser/lsr_enc.c:908,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:910,1
    - Dst: lsr_write_event_type
      Src: /src/gpac/src/laser/lsr_enc.c:912,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:914,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:917,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:920,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:925,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:927,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:929,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 2
    argNames:
    - lsr
    - t
    argTypes:
    - GF_LASeRCodec*
    - SMIL_Time*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 930
      start: 897
    functionDepth: 4
    functionLinenumber: 897
    functionLinenumberEnd: 930
    functionName: lsr_write_smil_time
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_node_get_id
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    - lsr_write_codec_IDREF
    - lsr_write_event_type
    linkageType: ''
    returnType: void
    signature: void lsr_write_smil_time(GF_LASeRCodec *lsr, SMIL_Time *t)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:939,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:943,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:951,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:954,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:955,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:957,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:959,1
    - Dst: lsr_write_smil_time
      Src: /src/gpac/src/laser/lsr_enc.c:960,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 26
    argCount: 4
    argNames:
    - lsr
    - l
    - name
    - skipable
    argTypes:
    - GF_LASeRCodec*
    - GF_List**
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 962
      start: 933
    functionDepth: 5
    functionLinenumber: 933
    functionLinenumberEnd: 962
    functionName: lsr_write_smil_times
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - lsr_write_vluimsbf5
    - gf_list_count
    - GF_LSR_WRITE_INT
    - lsr_write_smil_time
    linkageType: ''
    returnType: void
    signature: void lsr_write_smil_times(GF_LASeRCodec *lsr, GF_List **l, const char
      *name, Bool skipable)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:968,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:971,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:976,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:977,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:979,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:981,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:982,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 4
    argNames:
    - lsr
    - v
    - name
    - skipable
    argTypes:
    - GF_LASeRCodec*
    - SMIL_Duration*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 984
      start: 964
    functionDepth: 2
    functionLinenumber: 964
    functionLinenumberEnd: 984
    functionName: lsr_write_duration_ex
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    - lsr_write_vluimsbf5
    linkageType: ''
    returnType: void
    signature: void lsr_write_duration_ex(GF_LASeRCodec *lsr, SMIL_Duration *v, const
      char *name, Bool skipable)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 986
      start: 985
    functionDepth: 0
    functionLinenumber: 985
    functionLinenumberEnd: 986
    functionName: lsr_write_duration
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: lsr_write_duration(a, b, c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:990,1
    - Dst: lsr_write_codec_IDREF
      Src: /src/gpac/src/laser/lsr_enc.c:991,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:993,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:994,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - lsr
    - foc
    - name
    argTypes:
    - GF_LASeRCodec*
    - SVG_Focus*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 996
      start: 987
    functionDepth: 3
    functionLinenumber: 987
    functionLinenumberEnd: 996
    functionName: lsr_write_focus
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    - lsr_write_codec_IDREF
    linkageType: ''
    returnType: void
    signature: void lsr_write_focus(GF_LASeRCodec *lsr, SVG_Focus *foc, const char
      *name)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:1008,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_enc.c:1015,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_enc.c:1025,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/laser/lsr_enc.c:1028,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_enc.c:1034,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_enc.c:1041,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_enc.c:1046,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_enc.c:1053,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_enc.c:1058,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_enc.c:1065,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_enc.c:1070,1
    - Dst: gf_lsr_same_rare
      Src: /src/gpac/src/laser/lsr_enc.c:1074,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 72
    argCount: 6
    argNames:
    - lsr
    - atts
    - base
    - same_fill
    - same_stroke
    - no_stroke_check
    argTypes:
    - GF_LASeRCodec*
    - SVGAllAttributes*
    - SVG_Element*
    - Bool*
    - Bool*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1075
      start: 998
    functionDepth: 3
    functionLinenumber: 998
    functionLinenumberEnd: 1075
    functionName: lsr_elt_has_same_base
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_lsr_same_rare
    - gf_svg_flatten_attributes
    - gf_svg_attributes_equal
    linkageType: ''
    returnType: Bool
    signature: Bool lsr_elt_has_same_base(GF_LASeRCodec *lsr, SVGAllAttributes *atts,
      SVG_Element *base, Bool *same_fill, Bool *same_stroke, Bool no_stroke_check)
  - BBCount: 116
    BranchProfiles: []
    Callsites:
    - Dst: gf_lsr_rare_type_from_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:1086,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1091,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1094,1
    - Dst: gf_lsr_rare_type_from_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:1098,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:1116,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:1117,1
    - Dst: strlen
      Src: /src/gpac/src/laser/lsr_enc.c:1118,1
    - Dst: lsr_get_vluimsbf5_size
      Src: /src/gpac/src/laser/lsr_enc.c:1125,1
    - Dst: gf_bs_get_bit_position
      Src: /src/gpac/src/laser/lsr_enc.c:1126,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1139,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1140,1
    - Dst: lsr_write_vluimsbf5_ex
      Src: /src/gpac/src/laser/lsr_enc.c:1142,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:1144,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1146,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1150,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1151,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1154,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1155,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1158,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1159,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1162,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1163,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1166,1
    - Dst: lsr_write_byte_align_string_list
      Src: /src/gpac/src/laser/lsr_enc.c:1167,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1170,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1175,1
    - Dst: lsr_write_byte_align_string
      Src: /src/gpac/src/laser/lsr_enc.c:1178,1
    - Dst: lsr_write_fixed_clamp
      Src: /src/gpac/src/laser/lsr_enc.c:1182,1
    - Dst: lsr_write_paint
      Src: /src/gpac/src/laser/lsr_enc.c:1185,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1188,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1191,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1194,1
    - Dst: lsr_write_fixed_clamp
      Src: /src/gpac/src/laser/lsr_enc.c:1197,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1200,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1203,1
    - Dst: lsr_write_line_increment_type
      Src: /src/gpac/src/laser/lsr_enc.c:1206,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1209,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1212,1
    - Dst: lsr_write_paint
      Src: /src/gpac/src/laser/lsr_enc.c:1215,1
    - Dst: lsr_write_fixed_clamp
      Src: /src/gpac/src/laser/lsr_enc.c:1218,1
    - Dst: lsr_write_paint
      Src: /src/gpac/src/laser/lsr_enc.c:1221,1
    - Dst: lsr_write_fixed_clamp
      Src: /src/gpac/src/laser/lsr_enc.c:1224,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1231,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1233,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:1234,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:1236,1
    - Dst: lsr_write_fixed_16_8i
      Src: /src/gpac/src/laser/lsr_enc.c:1242,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1246,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1249,1
    - Dst: lsr_write_fixed_16_8i
      Src: /src/gpac/src/laser/lsr_enc.c:1252,1
    - Dst: lsr_write_fixed_clamp
      Src: /src/gpac/src/laser/lsr_enc.c:1255,1
    - Dst: lsr_write_fixed_16_8i
      Src: /src/gpac/src/laser/lsr_enc.c:1258,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1261,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1264,1
    - Dst: lsr_write_paint
      Src: /src/gpac/src/laser/lsr_enc.c:1267,1
    - Dst: lsr_write_fixed_clamp
      Src: /src/gpac/src/laser/lsr_enc.c:1270,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1273,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1276,1
    - Dst: lsr_write_byte_align_string_list
      Src: /src/gpac/src/laser/lsr_enc.c:1279,1
    - Dst: lsr_write_byte_align_string_list
      Src: /src/gpac/src/laser/lsr_enc.c:1282,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:1287,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_enc.c:1288,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:1292,1
    - Dst: strchr
      Src: /src/gpac/src/laser/lsr_enc.c:1294,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1297,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1301,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1305,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1309,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1313,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1317,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1321,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1325,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1329,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1333,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1337,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1341,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1345,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1349,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1353,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1357,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1361,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1365,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1369,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1373,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1377,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1381,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1385,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1389,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1393,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1397,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1401,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1405,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1409,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1413,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1417,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1421,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1425,1
    - Dst: stricmp
      Src: /src/gpac/src/laser/lsr_enc.c:1429,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:1434,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1436,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_enc.c:1438,1
    - Dst: lsr_write_byte_align_string_list
      Src: /src/gpac/src/laser/lsr_enc.c:1443,1
    - Dst: lsr_write_byte_align_string
      Src: /src/gpac/src/laser/lsr_enc.c:1446,1
    - Dst: lsr_write_byte_align_string
      Src: /src/gpac/src/laser/lsr_enc.c:1449,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1452,1
    - Dst: lsr_write_focus
      Src: /src/gpac/src/laser/lsr_enc.c:1455,1
    - Dst: lsr_write_focus
      Src: /src/gpac/src/laser/lsr_enc.c:1458,1
    - Dst: lsr_write_focus
      Src: /src/gpac/src/laser/lsr_enc.c:1461,1
    - Dst: lsr_write_focus
      Src: /src/gpac/src/laser/lsr_enc.c:1464,1
    - Dst: lsr_write_focus
      Src: /src/gpac/src/laser/lsr_enc.c:1467,1
    - Dst: lsr_write_focus
      Src: /src/gpac/src/laser/lsr_enc.c:1470,1
    - Dst: lsr_write_focus
      Src: /src/gpac/src/laser/lsr_enc.c:1473,1
    - Dst: lsr_write_focus
      Src: /src/gpac/src/laser/lsr_enc.c:1476,1
    - Dst: lsr_write_focus
      Src: /src/gpac/src/laser/lsr_enc.c:1479,1
    - Dst: lsr_write_focus
      Src: /src/gpac/src/laser/lsr_enc.c:1482,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1486,1
    - Dst: lsr_get_font_index
      Src: /src/gpac/src/laser/lsr_enc.c:1490,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1492,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1494,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1495,1
    - Dst: lsr_write_fixed_16_8i
      Src: /src/gpac/src/laser/lsr_enc.c:1500,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1503,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1506,1
    - Dst: lsr_write_byte_align_string
      Src: /src/gpac/src/laser/lsr_enc.c:1510,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1514,1
    - Dst: lsr_write_any_uri
      Src: /src/gpac/src/laser/lsr_enc.c:1517,1
    - Dst: lsr_write_any_uri
      Src: /src/gpac/src/laser/lsr_enc.c:1520,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1524,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1527,1
    - Dst: lsr_write_smil_times
      Src: /src/gpac/src/laser/lsr_enc.c:1530,1
    - Dst: lsr_write_duration_ex
      Src: /src/gpac/src/laser/lsr_enc.c:1533,1
    - Dst: lsr_write_duration_ex
      Src: /src/gpac/src/laser/lsr_enc.c:1536,1
    - Dst: lsr_write_matrix
      Src: /src/gpac/src/laser/lsr_enc.c:1539,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1542,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:1545,1
    CyclomaticComplexity: 129
    EdgeCount: 129
    ICount: 438
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1550
      start: 1077
    functionDepth: 6
    functionLinenumber: 1077
    functionLinenumberEnd: 1550
    functionName: lsr_write_rare
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_fixed_16_8i
    - gf_free
    - gf_lsr_rare_type_from_attribute
    - lsr_write_fixed_16_8
    - lsr_write_paint
    - gf_list_count
    - lsr_get_vluimsbf5_size
    - lsr_write_byte_align_string_list
    - strchr
    - gf_list_get
    - lsr_get_font_index
    - lsr_write_smil_times
    - lsr_write_line_increment_type
    - lsr_write_fixed_clamp
    - stricmp
    - lsr_write_focus
    - GF_LOG
    - lsr_write_vluimsbf5_ex
    - lsr_write_vluimsbf5
    - gf_malloc
    - strlen
    - lsr_write_duration_ex
    - lsr_write_matrix
    - lsr_write_any_uri
    - lsr_write_byte_align_string
    - gf_bs_get_bit_position
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_rare(GF_LASeRCodec *lsr, GF_Node *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1555,1
    - Dst: lsr_write_paint
      Src: /src/gpac/src/laser/lsr_enc.c:1556,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1558,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - lsr
    - n
    - atts
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - SVGAllAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1560
      start: 1552
    functionDepth: 5
    functionLinenumber: 1552
    functionLinenumberEnd: 1560
    functionName: lsr_write_fill
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    - lsr_write_paint
    linkageType: ''
    returnType: void
    signature: void lsr_write_fill(GF_LASeRCodec *lsr, SVG_Element *n, SVGAllAttributes
      *atts)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1565,1
    - Dst: lsr_write_paint
      Src: /src/gpac/src/laser/lsr_enc.c:1566,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1568,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - lsr
    - n
    - atts
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - SVGAllAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1570
      start: 1562
    functionDepth: 5
    functionLinenumber: 1562
    functionLinenumberEnd: 1570
    functionName: lsr_write_stroke
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    - lsr_write_paint
    linkageType: ''
    returnType: void
    signature: void lsr_write_stroke(GF_LASeRCodec *lsr, SVG_Element *n, SVGAllAttributes
      *atts)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/laser/lsr_enc.c:1576,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/laser/lsr_enc.c:1577,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1585,1
    - Dst: lsr_write_any_uri
      Src: /src/gpac/src/laser/lsr_enc.c:1586,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 18
    argCount: 2
    argNames:
    - lsr
    - iri
    argTypes:
    - GF_LASeRCodec*
    - XMLRI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1587
      start: 1571
    functionDepth: 4
    functionLinenumber: 1571
    functionLinenumberEnd: 1587
    functionName: lsr_write_href
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_node_get_id
    - GF_LSR_WRITE_INT
    - lsr_write_any_uri
    - gf_sg_find_node_by_name
    linkageType: ''
    returnType: void
    signature: void lsr_write_href(GF_LASeRCodec *lsr, XMLRI *iri)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1591,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1592,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - lsr
    - accum_type
    argTypes:
    - GF_LASeRCodec*
    - SMIL_Accumulate*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1593
      start: 1589
    functionDepth: 1
    functionLinenumber: 1589
    functionLinenumberEnd: 1593
    functionName: lsr_write_accumulate
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_accumulate(GF_LASeRCodec *lsr, SMIL_Accumulate *accum_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1596,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1597,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - lsr
    - add_type
    argTypes:
    - GF_LASeRCodec*
    - SMIL_Additive*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1598
      start: 1594
    functionDepth: 1
    functionLinenumber: 1594
    functionLinenumberEnd: 1598
    functionName: lsr_write_additive
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_additive(GF_LASeRCodec *lsr, SMIL_Additive *add_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1603,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1605,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 2
    argNames:
    - lsr
    - calc_mode
    argTypes:
    - GF_LASeRCodec*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1607
      start: 1599
    functionDepth: 1
    functionLinenumber: 1599
    functionLinenumberEnd: 1607
    functionName: lsr_write_calc_mode
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_calc_mode(GF_LASeRCodec *lsr, u8 *calc_mode)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1614,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_enc.c:1619,1
    - Dst: gf_xml_get_attribute_tag
      Src: /src/gpac/src/laser/lsr_enc.c:1620,1
    - Dst: gf_xml_get_attribute_type
      Src: /src/gpac/src/laser/lsr_enc.c:1621,1
    - Dst: gf_lsr_anim_type_from_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:1622,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:1624,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1625,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1627,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1628,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1629,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 4
    argNames:
    - lsr
    - anim_type
    - iri
    - name
    argTypes:
    - GF_LASeRCodec*
    - SMIL_AttributeName*
    - XMLRI*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1631
      start: 1609
    functionDepth: 3
    functionLinenumber: 1609
    functionLinenumberEnd: 1631
    functionName: lsr_write_animatable
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_xml_get_attribute_type
    - GF_LOG
    - GF_LSR_WRITE_INT
    - gf_xml_get_attribute_tag
    - gf_lsr_anim_type_from_attribute
    linkageType: ''
    returnType: void
    signature: void lsr_write_animatable(GF_LASeRCodec *lsr, SMIL_AttributeName *anim_type,
      XMLRI *iri, const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1635,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1636,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - lsr
    - animFreeze
    argTypes:
    - GF_LASeRCodec*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1637
      start: 1633
    functionDepth: 1
    functionLinenumber: 1633
    functionLinenumberEnd: 1637
    functionName: lsr_write_anim_fill
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_anim_fill(GF_LASeRCodec *lsr, u8 *animFreeze)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1640,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1644,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:1645,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1647,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - lsr
    - repeat
    argTypes:
    - GF_LASeRCodec*
    - SMIL_RepeatCount*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1650
      start: 1638
    functionDepth: 2
    functionLinenumber: 1638
    functionLinenumberEnd: 1650
    functionName: lsr_write_anim_repeat
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    - lsr_write_fixed_16_8
    linkageType: ''
    returnType: void
    signature: void lsr_write_anim_repeat(GF_LASeRCodec *lsr, SMIL_RepeatCount *repeat)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1653,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1658,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:1659,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1661,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - lsr
    - smil
    argTypes:
    - GF_LASeRCodec*
    - SMIL_Duration*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1664
      start: 1651
    functionDepth: 2
    functionLinenumber: 1651
    functionLinenumberEnd: 1664
    functionName: lsr_write_repeat_duration
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    - lsr_write_vluimsbf5
    linkageType: ''
    returnType: void
    signature: void lsr_write_repeat_duration(GF_LASeRCodec *lsr, SMIL_Duration *smil)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1667,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1670,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - lsr
    - animRestart
    argTypes:
    - GF_LASeRCodec*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1671
      start: 1665
    functionDepth: 1
    functionLinenumber: 1665
    functionLinenumberEnd: 1671
    functionName: lsr_write_anim_restart
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_anim_restart(GF_LASeRCodec *lsr, u8 *animRestart)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/laser/lsr_enc.c:1742,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 69
    argCount: 4
    argNames:
    - svg_type
    - transform_type
    - vals
    - a_val
    argTypes:
    - u32
    - u32
    - GF_List*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1759
      start: 1673
    functionDepth: 1
    functionLinenumber: 1673
    functionLinenumberEnd: 1759
    functionName: svg_type_to_lsr_anim
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: u32
    signature: u32 svg_type_to_lsr_anim(u32 svg_type, u32 transform_type, GF_List
      *vals, void *a_val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1763,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_enc.c:1765,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1766,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1767,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 4
    argNames:
    - lsr
    - val
    - skipable
    - name
    argTypes:
    - GF_LASeRCodec*
    - Fixed
    - Bool
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1769
      start: 1760
    functionDepth: 1
    functionLinenumber: 1760
    functionLinenumberEnd: 1769
    functionName: lsr_write_coordinate
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_translate_coords
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_coordinate(GF_LASeRCodec *lsr, Fixed val, Bool skipable,
      const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1774,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_enc.c:1776,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1777,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1778,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 4
    argNames:
    - lsr
    - val
    - skipable
    - name
    argTypes:
    - GF_LASeRCodec*
    - SVG_Coordinate*
    - Bool
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1780
      start: 1771
    functionDepth: 1
    functionLinenumber: 1771
    functionLinenumberEnd: 1780
    functionName: lsr_write_coordinate_ptr
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_translate_coords
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_coordinate_ptr(GF_LASeRCodec *lsr, SVG_Coordinate *val,
      Bool skipable, const char *name)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1789,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1799,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1800,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1803,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1811,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1812,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1814,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1817,1
    - Dst: lsr_write_byte_align_string
      Src: /src/gpac/src/laser/lsr_enc.c:1822,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/laser/lsr_enc.c:1827,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_enc.c:1827,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:1828,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:1830,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:1832,1
    - Dst: lsr_write_any_uri
      Src: /src/gpac/src/laser/lsr_enc.c:1836,1
    - Dst: lsr_write_path_type
      Src: /src/gpac/src/laser/lsr_enc.c:1839,1
    - Dst: lsr_write_point_sequence
      Src: /src/gpac/src/laser/lsr_enc.c:1842,1
    - Dst: lsr_write_fixed_clamp
      Src: /src/gpac/src/laser/lsr_enc.c:1845,1
    - Dst: lsr_write_paint
      Src: /src/gpac/src/laser/lsr_enc.c:1848,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:1851,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:1854,1
    - Dst: lsr_get_font_index
      Src: /src/gpac/src/laser/lsr_enc.c:1858,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:1860,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:1863,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:1869,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:1870,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:1872,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:1873,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:1882,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:1884,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:1888,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:1889,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:1890,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:1891,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:1892,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:1895,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:1896,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:1898,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:1899,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/laser/lsr_enc.c:1903,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_enc.c:1903,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:1905,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:1906,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:1908,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:1909,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:1914,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:1915,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:1916,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:1919,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:1920,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:1922,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:1923,1
    - Dst: lsr_write_coordinate
      Src: /src/gpac/src/laser/lsr_enc.c:1930,1
    - Dst: lsr_write_coordinate
      Src: /src/gpac/src/laser/lsr_enc.c:1931,1
    - Dst: lsr_write_coordinate
      Src: /src/gpac/src/laser/lsr_enc.c:1933,1
    - Dst: lsr_write_coordinate
      Src: /src/gpac/src/laser/lsr_enc.c:1934,1
    - Dst: lsr_write_extension
      Src: /src/gpac/src/laser/lsr_enc.c:1938,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 141
    argCount: 6
    argNames:
    - lsr
    - val
    - lsr_type
    - svg_type
    - transform_type
    - name
    argTypes:
    - GF_LASeRCodec*
    - void*
    - u32
    - u32
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1941
      start: 1782
    functionDepth: 5
    functionLinenumber: 1782
    functionLinenumberEnd: 1941
    functionName: lsr_write_an_anim_value
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - INT2FIX
    - lsr_write_any_uri
    - lsr_get_font_index
    - lsr_write_byte_align_string
    - GF_LOG
    - lsr_write_fixed_16_8
    - gf_muldiv
    - lsr_write_point_sequence
    - lsr_write_fixed_clamp
    - lsr_write_paint
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    - gf_list_count
    - lsr_write_path_type
    - lsr_write_extension
    - lsr_write_coordinate
    linkageType: ''
    returnType: void
    signature: void lsr_write_an_anim_value(GF_LASeRCodec *lsr, void *val, u32 lsr_type,
      u32 svg_type, u32 transform_type, const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1946,1
    - Dst: svg_type_to_lsr_anim
      Src: /src/gpac/src/laser/lsr_enc.c:1948,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:1950,1
    - Dst: gf_svg_attribute_type_to_string
      Src: /src/gpac/src/laser/lsr_enc.c:1950,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1951,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1953,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1954,1
    - Dst: lsr_write_an_anim_value
      Src: /src/gpac/src/laser/lsr_enc.c:1955,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - lsr
    - val
    - name
    argTypes:
    - GF_LASeRCodec*
    - SMIL_AnimateValue*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1958
      start: 1943
    functionDepth: 6
    functionLinenumber: 1943
    functionLinenumberEnd: 1958
    functionName: lsr_write_anim_value
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - svg_type_to_lsr_anim
    - lsr_write_an_anim_value
    - GF_LOG
    - GF_LSR_WRITE_INT
    - gf_svg_attribute_type_to_string
    linkageType: ''
    returnType: void
    signature: void lsr_write_anim_value(GF_LASeRCodec *lsr, SMIL_AnimateValue *val,
      const char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:1963,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1966,1
    - Dst: svg_type_to_lsr_anim
      Src: /src/gpac/src/laser/lsr_enc.c:1969,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:1971,1
    - Dst: gf_svg_attribute_type_to_string
      Src: /src/gpac/src/laser/lsr_enc.c:1971,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1972,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1974,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1975,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:1976,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:1978,1
    - Dst: lsr_write_an_anim_value
      Src: /src/gpac/src/laser/lsr_enc.c:1979,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - lsr
    - anims
    - name
    argTypes:
    - GF_LASeRCodec*
    - SMIL_AnimateValues*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1982
      start: 1960
    functionDepth: 6
    functionLinenumber: 1960
    functionLinenumberEnd: 1982
    functionName: lsr_write_anim_values
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - svg_type_to_lsr_anim
    - gf_list_get
    - lsr_write_an_anim_value
    - GF_LOG
    - lsr_write_vluimsbf5
    - gf_list_count
    - GF_LSR_WRITE_INT
    - gf_svg_attribute_type_to_string
    linkageType: ''
    returnType: void
    signature: void lsr_write_anim_values(GF_LASeRCodec *lsr, SMIL_AnimateValues *anims,
      const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:1987,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1989,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1992,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:1993,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:1995,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1997,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:1998,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/laser/lsr_enc.c:2000,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2001,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2002,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - lsr
    - l
    - name
    argTypes:
    - GF_LASeRCodec*
    - GF_List**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2005
      start: 1984
    functionDepth: 2
    functionLinenumber: 1984
    functionLinenumberEnd: 2005
    functionName: lsr_write_fraction_12
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - lsr_write_vluimsbf5
    - gf_list_count
    - GF_LSR_WRITE_INT
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void lsr_write_fraction_12(GF_LASeRCodec *lsr, GF_List **l, const char
      *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:2008,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2010,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2013,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:2014,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:2016,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:2017,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - lsr
    - l
    - name
    argTypes:
    - GF_LASeRCodec*
    - GF_List**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2019
      start: 2006
    functionDepth: 2
    functionLinenumber: 2006
    functionLinenumberEnd: 2019
    functionName: lsr_write_float_list
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - lsr_write_fixed_16_8
    - lsr_write_vluimsbf5
    - gf_list_count
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_float_list(GF_LASeRCodec *lsr, GF_List **l, const char
      *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_divfix
      Src: /src/gpac/src/laser/lsr_enc.c:2024,1
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_enc.c:2025,1
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_enc.c:2025,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/laser/lsr_enc.c:2026,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - lsr
    - v
    argTypes:
    - GF_LASeRCodec*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2027
      start: 2021
    functionDepth: 1
    functionLinenumber: 2021
    functionLinenumberEnd: 2027
    functionName: lsr_get_bit_size
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - FIX2INT
    - gf_divfix
    - gf_get_bit_size
    linkageType: ''
    returnType: u32
    signature: u32 lsr_get_bit_size(GF_LASeRCodec *lsr, Fixed v)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:2031,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:2032,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2035,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:2041,1
    - Dst: lsr_get_bit_size
      Src: /src/gpac/src/laser/lsr_enc.c:2042,1
    - Dst: lsr_get_bit_size
      Src: /src/gpac/src/laser/lsr_enc.c:2044,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2048,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:2050,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_enc.c:2051,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2052,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_enc.c:2053,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2054,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:2059,1
    - Dst: lsr_get_bit_size
      Src: /src/gpac/src/laser/lsr_enc.c:2061,1
    - Dst: lsr_get_bit_size
      Src: /src/gpac/src/laser/lsr_enc.c:2063,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2065,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_enc.c:2066,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2067,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_enc.c:2068,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2069,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:2074,1
    - Dst: lsr_get_bit_size
      Src: /src/gpac/src/laser/lsr_enc.c:2075,1
    - Dst: lsr_get_bit_size
      Src: /src/gpac/src/laser/lsr_enc.c:2077,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2082,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2083,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:2087,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_enc.c:2088,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2089,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_enc.c:2090,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2091,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 61
    argCount: 3
    argNames:
    - lsr
    - pts
    - name
    argTypes:
    - GF_LASeRCodec*
    - GF_List**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2097
      start: 2029
    functionDepth: 2
    functionLinenumber: 2029
    functionLinenumberEnd: 2097
    functionName: lsr_write_point_sequence
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - lsr_get_bit_size
    - lsr_write_vluimsbf5
    - gf_list_count
    - GF_LSR_WRITE_INT
    - lsr_translate_coords
    linkageType: ''
    returnType: void
    signature: void lsr_write_point_sequence(GF_LASeRCodec *lsr, GF_List **pts, const
      char *name)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:2105,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:2106,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_enc.c:2109,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_enc.c:2116,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_enc.c:2125,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_enc.c:2126,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_enc.c:2131,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_enc.c:2132,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_enc.c:2133,1
    - Dst: lsr_write_point_sequence
      Src: /src/gpac/src/laser/lsr_enc.c:2139,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_enc.c:2140,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:2142,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2147,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2154,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2157,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2163,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2168,1
    - Dst: lsr_write_point_sequence
      Src: /src/gpac/src/laser/lsr_enc.c:2175,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:2177,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:2178,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:2180,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2181,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 70
    argCount: 3
    argNames:
    - lsr
    - path
    - name
    argTypes:
    - GF_LASeRCodec*
    - SVG_PathData*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2184
      start: 2098
    functionDepth: 3
    functionLinenumber: 2098
    functionLinenumberEnd: 2184
    functionName: lsr_write_path_type
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - gf_list_get
    - lsr_write_point_sequence
    - lsr_write_vluimsbf5
    - gf_list_count
    - GF_LSR_WRITE_INT
    - gf_list_add
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void lsr_write_path_type(GF_LASeRCodec *lsr, SVG_PathData *path, const
      char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2188,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2192,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2193,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2195,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:2196,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - lsr
    - rotate
    - name
    argTypes:
    - GF_LASeRCodec*
    - SVG_Rotate*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2198
      start: 2186
    functionDepth: 2
    functionLinenumber: 2186
    functionLinenumberEnd: 2198
    functionName: lsr_write_rotate_type
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    - lsr_write_fixed_16_8
    linkageType: ''
    returnType: void
    signature: void lsr_write_rotate_type(GF_LASeRCodec *lsr, SVG_Rotate *rotate,
      const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2201,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_enc.c:2203,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2204,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - lsr
    - sync
    - name
    argTypes:
    - GF_LASeRCodec*
    - SMIL_SyncBehavior*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2205
      start: 2199
    functionDepth: 1
    functionLinenumber: 2199
    functionLinenumberEnd: 2205
    functionName: lsr_write_sync_behavior
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    - gf_assert
    linkageType: ''
    returnType: void
    signature: void lsr_write_sync_behavior(GF_LASeRCodec *lsr, SMIL_SyncBehavior
      *sync, const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2208,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_enc.c:2210,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2213,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2215,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:2216,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - lsr
    - sync
    - name
    argTypes:
    - GF_LASeRCodec*
    - SMIL_SyncTolerance*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2218
      start: 2206
    functionDepth: 2
    functionLinenumber: 2206
    functionLinenumberEnd: 2218
    functionName: lsr_write_sync_tolerance
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    - gf_assert
    - lsr_write_vluimsbf5
    linkageType: ''
    returnType: void
    signature: void lsr_write_sync_tolerance(GF_LASeRCodec *lsr, SMIL_SyncTolerance
      *sync, const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:2221,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2223,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2225,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:2226,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:2228,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_enc.c:2229,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2230,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - lsr
    - coords
    - name
    argTypes:
    - GF_LASeRCodec*
    - GF_List**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2233
      start: 2219
    functionDepth: 2
    functionLinenumber: 2219
    functionLinenumberEnd: 2233
    functionName: lsr_write_coord_list
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - lsr_write_vluimsbf5
    - gf_list_count
    - GF_LSR_WRITE_INT
    - lsr_translate_coords
    linkageType: ''
    returnType: void
    signature: void lsr_write_coord_list(GF_LASeRCodec *lsr, GF_List **coords, const
      char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2237,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2239,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - lsr
    - type
    argTypes:
    - GF_LASeRCodec*
    - SVG_TransformBehavior*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2240
      start: 2235
    functionDepth: 1
    functionLinenumber: 2235
    functionLinenumberEnd: 2240
    functionName: lsr_write_transform_behavior
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_transform_behavior(GF_LASeRCodec *lsr, SVG_TransformBehavior
      *type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2244,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2246,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - lsr
    - type
    argTypes:
    - GF_LASeRCodec*
    - SVG_GradientUnit*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2247
      start: 2242
    functionDepth: 1
    functionLinenumber: 2242
    functionLinenumberEnd: 2247
    functionName: lsr_write_gradient_units
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_gradient_units(GF_LASeRCodec *lsr, SVG_GradientUnit
      *type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2252,1
    - Dst: lsr_write_byte_align_string
      Src: /src/gpac/src/laser/lsr_enc.c:2253,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2255,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - lsr
    - type
    - name
    argTypes:
    - GF_LASeRCodec*
    - SVG_String*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2257
      start: 2249
    functionDepth: 3
    functionLinenumber: 2249
    functionLinenumberEnd: 2257
    functionName: lsr_write_content_type
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_byte_align_string
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_content_type(GF_LASeRCodec *lsr, SVG_String *type, const
      char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2260,1
    - Dst: strcmp
      Src: /src/gpac/src/laser/lsr_enc.c:2262,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2263,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2264,1
    - Dst: strcmp
      Src: /src/gpac/src/laser/lsr_enc.c:2265,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2266,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2267,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2269,1
    - Dst: lsr_write_byte_align_string
      Src: /src/gpac/src/laser/lsr_enc.c:2270,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - lsr
    - type
    argTypes:
    - GF_LASeRCodec*
    - SVG_String*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2272
      start: 2258
    functionDepth: 3
    functionLinenumber: 2258
    functionLinenumberEnd: 2272
    functionName: lsr_write_script_type
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_byte_align_string
    - GF_LSR_WRITE_INT
    - strcmp
    linkageType: ''
    returnType: void
    signature: void lsr_write_script_type(GF_LASeRCodec *lsr, SVG_String *type)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2279,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2280,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2289,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2292,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2295,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2298,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2301,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2304,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2307,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2310,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 3
    argNames:
    - lsr
    - n
    - name
    argTypes:
    - GF_LASeRCodec*
    - SVG_Number*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2313
      start: 2274
    functionDepth: 1
    functionLinenumber: 2274
    functionLinenumberEnd: 2313
    functionName: lsr_write_value_with_units
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_value_with_units(GF_LASeRCodec *lsr, SVG_Number *n,
      const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2319,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2321,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2322,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2323,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:2324,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - lsr
    - clock
    - name
    argTypes:
    - GF_LASeRCodec*
    - SVG_Clock*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2326
      start: 2316
    functionDepth: 2
    functionLinenumber: 2316
    functionLinenumberEnd: 2326
    functionName: lsr_write_clip_time
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    - lsr_write_vluimsbf5
    linkageType: ''
    returnType: void
    signature: void lsr_write_clip_time(GF_LASeRCodec *lsr, SVG_Clock *clock, const
      char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2331,1
    - Dst: lsr_write_href
      Src: /src/gpac/src/laser/lsr_enc.c:2333,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 3
    argNames:
    - lsr
    - href
    - parent
    argTypes:
    - GF_LASeRCodec*
    - XMLRI*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2335
      start: 2328
    functionDepth: 5
    functionLinenumber: 2328
    functionLinenumberEnd: 2335
    functionName: lsr_write_href_anim
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    - lsr_write_href
    linkageType: ''
    returnType: void
    signature: void lsr_write_href_anim(GF_LASeRCodec *lsr, XMLRI *href, SVG_Element
      *parent)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2340,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2342,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2343,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - lsr
    - atts
    argTypes:
    - GF_LASeRCodec*
    - SVGAllAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2345
      start: 2337
    functionDepth: 1
    functionLinenumber: 2337
    functionLinenumberEnd: 2345
    functionName: lsr_write_attribute_type
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_attribute_type(GF_LASeRCodec *lsr, SVGAllAttributes
      *atts)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2349,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2351,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2352,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2355,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2358,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2361,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2364,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2367,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2370,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2373,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2376,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2379,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2382,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 38
    argCount: 2
    argNames:
    - lsr
    - preserveAspectRatio
    argTypes:
    - GF_LASeRCodec*
    - SVG_PreserveAspectRatio*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2385
      start: 2347
    functionDepth: 1
    functionLinenumber: 2347
    functionLinenumberEnd: 2385
    functionName: lsr_write_preserve_aspect_ratio
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_preserve_aspect_ratio(GF_LASeRCodec *lsr, SVG_PreserveAspectRatio
      *preserveAspectRatio)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2389
      start: 2388
    functionDepth: 0
    functionLinenumber: 2388
    functionLinenumberEnd: 2389
    functionName: lsr_write_err
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: lsr_write_err()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2394,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2396,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2397,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:2398,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:2399,1
    - Dst: lsr_write_err
      Src: /src/gpac/src/laser/lsr_enc.c:2400,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2401,1
    - Dst: lsr_write_byte_align_string
      Src: /src/gpac/src/laser/lsr_enc.c:2402,1
    - Dst: lsr_write_href
      Src: /src/gpac/src/laser/lsr_enc.c:2403,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2404,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2405,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2406
      start: 2391
    functionDepth: 7
    functionLinenumber: 2391
    functionLinenumberEnd: 2406
    functionName: lsr_write_a
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_fill
    - lsr_write_byte_align_string
    - lsr_write_rare
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_href
    - lsr_write_stroke
    - lsr_write_err
    linkageType: ''
    returnType: void
    signature: void lsr_write_a(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2411,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2413,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2414,1
    - Dst: lsr_write_animatable
      Src: /src/gpac/src/laser/lsr_enc.c:2415,1
    - Dst: lsr_write_accumulate
      Src: /src/gpac/src/laser/lsr_enc.c:2417,1
    - Dst: lsr_write_additive
      Src: /src/gpac/src/laser/lsr_enc.c:2418,1
    - Dst: lsr_write_anim_value
      Src: /src/gpac/src/laser/lsr_enc.c:2419,1
    - Dst: lsr_write_calc_mode
      Src: /src/gpac/src/laser/lsr_enc.c:2420,1
    - Dst: lsr_write_anim_value
      Src: /src/gpac/src/laser/lsr_enc.c:2421,1
    - Dst: lsr_write_fraction_12
      Src: /src/gpac/src/laser/lsr_enc.c:2422,1
    - Dst: lsr_write_fraction_12
      Src: /src/gpac/src/laser/lsr_enc.c:2423,1
    - Dst: lsr_write_anim_values
      Src: /src/gpac/src/laser/lsr_enc.c:2424,1
    - Dst: lsr_write_attribute_type
      Src: /src/gpac/src/laser/lsr_enc.c:2425,1
    - Dst: lsr_write_smil_times
      Src: /src/gpac/src/laser/lsr_enc.c:2426,1
    - Dst: lsr_write_duration
      Src: /src/gpac/src/laser/lsr_enc.c:2427,1
    - Dst: lsr_write_anim_fill
      Src: /src/gpac/src/laser/lsr_enc.c:2428,1
    - Dst: lsr_write_anim_repeat
      Src: /src/gpac/src/laser/lsr_enc.c:2429,1
    - Dst: lsr_write_repeat_duration
      Src: /src/gpac/src/laser/lsr_enc.c:2430,1
    - Dst: lsr_write_anim_restart
      Src: /src/gpac/src/laser/lsr_enc.c:2431,1
    - Dst: lsr_write_anim_value
      Src: /src/gpac/src/laser/lsr_enc.c:2432,1
    - Dst: lsr_write_href_anim
      Src: /src/gpac/src/laser/lsr_enc.c:2433,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2434,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2436,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2437,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 3
    argNames:
    - lsr
    - elt
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2438
      start: 2408
    functionDepth: 7
    functionLinenumber: 2408
    functionLinenumberEnd: 2438
    functionName: lsr_write_animate
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_anim_values
    - lsr_write_any_attribute
    - lsr_write_animatable
    - lsr_write_anim_restart
    - lsr_write_attribute_type
    - lsr_write_fraction_12
    - lsr_write_group_content
    - lsr_write_smil_times
    - lsr_write_rare
    - lsr_write_additive
    - lsr_write_calc_mode
    - lsr_write_accumulate
    - gf_svg_flatten_attributes
    - lsr_write_anim_value
    - lsr_write_anim_repeat
    - lsr_write_id
    - lsr_write_duration
    - GF_LSR_WRITE_INT
    - lsr_write_href_anim
    - lsr_write_anim_fill
    - lsr_write_repeat_duration
    linkageType: ''
    returnType: void
    signature: void lsr_write_animate(GF_LASeRCodec *lsr, SVG_Element *elt, SVG_Element
      *parent)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2444,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2446,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2447,1
    - Dst: lsr_write_accumulate
      Src: /src/gpac/src/laser/lsr_enc.c:2448,1
    - Dst: lsr_write_additive
      Src: /src/gpac/src/laser/lsr_enc.c:2449,1
    - Dst: lsr_write_anim_value
      Src: /src/gpac/src/laser/lsr_enc.c:2450,1
    - Dst: lsr_write_calc_mode
      Src: /src/gpac/src/laser/lsr_enc.c:2451,1
    - Dst: lsr_write_anim_value
      Src: /src/gpac/src/laser/lsr_enc.c:2452,1
    - Dst: lsr_write_fraction_12
      Src: /src/gpac/src/laser/lsr_enc.c:2453,1
    - Dst: lsr_write_fraction_12
      Src: /src/gpac/src/laser/lsr_enc.c:2454,1
    - Dst: lsr_write_anim_values
      Src: /src/gpac/src/laser/lsr_enc.c:2455,1
    - Dst: lsr_write_attribute_type
      Src: /src/gpac/src/laser/lsr_enc.c:2456,1
    - Dst: lsr_write_smil_times
      Src: /src/gpac/src/laser/lsr_enc.c:2457,1
    - Dst: lsr_write_duration
      Src: /src/gpac/src/laser/lsr_enc.c:2458,1
    - Dst: lsr_write_anim_fill
      Src: /src/gpac/src/laser/lsr_enc.c:2459,1
    - Dst: lsr_write_anim_repeat
      Src: /src/gpac/src/laser/lsr_enc.c:2460,1
    - Dst: lsr_write_repeat_duration
      Src: /src/gpac/src/laser/lsr_enc.c:2461,1
    - Dst: lsr_write_anim_restart
      Src: /src/gpac/src/laser/lsr_enc.c:2462,1
    - Dst: lsr_write_anim_value
      Src: /src/gpac/src/laser/lsr_enc.c:2463,1
    - Dst: lsr_write_float_list
      Src: /src/gpac/src/laser/lsr_enc.c:2465,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2467,1
    - Dst: lsr_write_path_type
      Src: /src/gpac/src/laser/lsr_enc.c:2468,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2470,1
    - Dst: lsr_write_rotate_type
      Src: /src/gpac/src/laser/lsr_enc.c:2472,1
    - Dst: lsr_write_href_anim
      Src: /src/gpac/src/laser/lsr_enc.c:2474,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2475,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2476,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2477,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 32
    argCount: 3
    argNames:
    - lsr
    - elt
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2478
      start: 2441
    functionDepth: 7
    functionLinenumber: 2441
    functionLinenumberEnd: 2478
    functionName: lsr_write_animateMotion
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_anim_values
    - lsr_write_any_attribute
    - lsr_write_anim_restart
    - lsr_write_attribute_type
    - lsr_write_fraction_12
    - lsr_write_group_content
    - lsr_write_smil_times
    - lsr_write_additive
    - lsr_write_rare
    - lsr_write_calc_mode
    - lsr_write_accumulate
    - gf_svg_flatten_attributes
    - lsr_write_anim_value
    - lsr_write_anim_repeat
    - lsr_write_float_list
    - lsr_write_id
    - lsr_write_duration
    - GF_LSR_WRITE_INT
    - lsr_write_path_type
    - lsr_write_href_anim
    - lsr_write_anim_fill
    - lsr_write_rotate_type
    - lsr_write_repeat_duration
    linkageType: ''
    returnType: void
    signature: void lsr_write_animateMotion(GF_LASeRCodec *lsr, SVG_Element*elt, SVG_Element
      *parent)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2484,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2486,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2487,1
    - Dst: lsr_write_animatable
      Src: /src/gpac/src/laser/lsr_enc.c:2488,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2495,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2498,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2501,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2504,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2507,1
    - Dst: lsr_write_accumulate
      Src: /src/gpac/src/laser/lsr_enc.c:2511,1
    - Dst: lsr_write_additive
      Src: /src/gpac/src/laser/lsr_enc.c:2512,1
    - Dst: lsr_write_anim_value
      Src: /src/gpac/src/laser/lsr_enc.c:2513,1
    - Dst: lsr_write_calc_mode
      Src: /src/gpac/src/laser/lsr_enc.c:2514,1
    - Dst: lsr_write_anim_value
      Src: /src/gpac/src/laser/lsr_enc.c:2515,1
    - Dst: lsr_write_fraction_12
      Src: /src/gpac/src/laser/lsr_enc.c:2516,1
    - Dst: lsr_write_fraction_12
      Src: /src/gpac/src/laser/lsr_enc.c:2517,1
    - Dst: lsr_write_anim_values
      Src: /src/gpac/src/laser/lsr_enc.c:2518,1
    - Dst: lsr_write_attribute_type
      Src: /src/gpac/src/laser/lsr_enc.c:2519,1
    - Dst: lsr_write_smil_times
      Src: /src/gpac/src/laser/lsr_enc.c:2520,1
    - Dst: lsr_write_duration
      Src: /src/gpac/src/laser/lsr_enc.c:2521,1
    - Dst: lsr_write_anim_fill
      Src: /src/gpac/src/laser/lsr_enc.c:2522,1
    - Dst: lsr_write_anim_repeat
      Src: /src/gpac/src/laser/lsr_enc.c:2523,1
    - Dst: lsr_write_repeat_duration
      Src: /src/gpac/src/laser/lsr_enc.c:2524,1
    - Dst: lsr_write_anim_restart
      Src: /src/gpac/src/laser/lsr_enc.c:2525,1
    - Dst: lsr_write_anim_value
      Src: /src/gpac/src/laser/lsr_enc.c:2526,1
    - Dst: lsr_write_href_anim
      Src: /src/gpac/src/laser/lsr_enc.c:2528,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2529,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2530,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2531,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 43
    argCount: 3
    argNames:
    - lsr
    - elt
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2532
      start: 2480
    functionDepth: 7
    functionLinenumber: 2480
    functionLinenumberEnd: 2532
    functionName: lsr_write_animateTransform
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_anim_values
    - lsr_write_any_attribute
    - lsr_write_animatable
    - lsr_write_anim_restart
    - lsr_write_attribute_type
    - lsr_write_fraction_12
    - lsr_write_group_content
    - lsr_write_smil_times
    - lsr_write_rare
    - lsr_write_additive
    - lsr_write_calc_mode
    - lsr_write_accumulate
    - gf_svg_flatten_attributes
    - lsr_write_anim_value
    - lsr_write_anim_repeat
    - lsr_write_id
    - lsr_write_duration
    - GF_LSR_WRITE_INT
    - lsr_write_href_anim
    - lsr_write_anim_fill
    - lsr_write_repeat_duration
    linkageType: ''
    returnType: void
    signature: void lsr_write_animateTransform(GF_LASeRCodec *lsr, SVG_Element *elt,
      SVG_Element *parent)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2537,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2539,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2540,1
    - Dst: lsr_write_smil_times
      Src: /src/gpac/src/laser/lsr_enc.c:2541,1
    - Dst: lsr_write_duration
      Src: /src/gpac/src/laser/lsr_enc.c:2542,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2543,1
    - Dst: lsr_write_anim_repeat
      Src: /src/gpac/src/laser/lsr_enc.c:2544,1
    - Dst: lsr_write_repeat_duration
      Src: /src/gpac/src/laser/lsr_enc.c:2545,1
    - Dst: lsr_write_anim_restart
      Src: /src/gpac/src/laser/lsr_enc.c:2546,1
    - Dst: lsr_write_sync_behavior
      Src: /src/gpac/src/laser/lsr_enc.c:2547,1
    - Dst: lsr_write_sync_tolerance
      Src: /src/gpac/src/laser/lsr_enc.c:2548,1
    - Dst: lsr_write_content_type
      Src: /src/gpac/src/laser/lsr_enc.c:2549,1
    - Dst: lsr_write_href
      Src: /src/gpac/src/laser/lsr_enc.c:2550,1
    - Dst: lsr_write_clip_time
      Src: /src/gpac/src/laser/lsr_enc.c:2552,1
    - Dst: lsr_write_clip_time
      Src: /src/gpac/src/laser/lsr_enc.c:2553,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2554,1
    - Dst: lsr_write_any_uri
      Src: /src/gpac/src/laser/lsr_enc.c:2555,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2557,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2558,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2559
      start: 2534
    functionDepth: 7
    functionLinenumber: 2534
    functionLinenumberEnd: 2559
    functionName: lsr_write_audio
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_duration
    - lsr_write_any_uri
    - gf_svg_flatten_attributes
    - lsr_write_smil_times
    - lsr_write_clip_time
    - lsr_write_any_attribute
    - lsr_write_rare
    - GF_LSR_WRITE_INT
    - lsr_write_sync_tolerance
    - lsr_write_sync_behavior
    - lsr_write_anim_restart
    - lsr_write_href
    - lsr_write_anim_repeat
    - lsr_write_group_content
    - lsr_write_content_type
    - lsr_write_repeat_duration
    linkageType: ''
    returnType: void
    signature: void lsr_write_audio(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2563,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2565,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2566,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:2567,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:2568,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2569,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2570,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2571,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2572,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2573,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2574
      start: 2560
    functionDepth: 7
    functionLinenumber: 2560
    functionLinenumberEnd: 2574
    functionName: lsr_write_circle
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_fill
    - lsr_write_coordinate_ptr
    - lsr_write_rare
    - lsr_write_group_content
    - lsr_write_stroke
    linkageType: ''
    returnType: void
    signature: void lsr_write_circle(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2579,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2581,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2582,1
    - Dst: lsr_write_smil_times
      Src: /src/gpac/src/laser/lsr_enc.c:2583,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2584,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2585,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2586,1
    - Dst: lsr_write_command_list
      Src: /src/gpac/src/laser/lsr_enc.c:2588,1
    - Dst: lsr_write_private_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2589,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2590
      start: 2575
    functionDepth: 7
    functionLinenumber: 2575
    functionLinenumberEnd: 2590
    functionName: lsr_write_conditional
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_smil_times
    - lsr_write_rare
    - lsr_write_private_attributes
    - lsr_write_command_list
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: void
    signature: void lsr_write_conditional(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2595,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2597,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2598,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2599,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2600,1
    - Dst: lsr_write_href
      Src: /src/gpac/src/laser/lsr_enc.c:2601,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2602,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2603,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2604
      start: 2592
    functionDepth: 7
    functionLinenumber: 2592
    functionLinenumberEnd: 2604
    functionName: lsr_write_cursorManager
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_coordinate_ptr
    - lsr_write_rare
    - lsr_write_href
    - lsr_write_group_content
    linkageType: ''
    returnType: void
    signature: void lsr_write_cursorManager(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2608,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2609,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2610,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2611,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2612
      start: 2606
    functionDepth: 7
    functionLinenumber: 2606
    functionLinenumberEnd: 2612
    functionName: lsr_write_data
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_rare
    - lsr_write_any_attribute
    - lsr_write_group_content
    linkageType: ''
    returnType: void
    signature: void lsr_write_data(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2617,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2619,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2620,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:2621,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:2622,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2623,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2624,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2625
      start: 2614
    functionDepth: 7
    functionLinenumber: 2614
    functionLinenumberEnd: 2625
    functionName: lsr_write_defs
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_fill
    - lsr_write_rare
    - lsr_write_group_content
    - lsr_write_stroke
    linkageType: ''
    returnType: void
    signature: void lsr_write_defs(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2629,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2631,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2632,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:2633,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:2634,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2635,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2636,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2637,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2638,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2639,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2640,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2641
      start: 2626
    functionDepth: 7
    functionLinenumber: 2626
    functionLinenumberEnd: 2641
    functionName: lsr_write_ellipse
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_fill
    - lsr_write_coordinate_ptr
    - lsr_write_rare
    - lsr_write_group_content
    - lsr_write_stroke
    linkageType: ''
    returnType: void
    signature: void lsr_write_ellipse(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2645,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2647,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2648,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:2649,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:2650,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2651,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2652,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2653,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2654,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2655,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2657,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2667,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2668
      start: 2642
    functionDepth: 7
    functionLinenumber: 2642
    functionLinenumberEnd: 2668
    functionName: lsr_write_foreignObject
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_fill
    - lsr_write_coordinate_ptr
    - lsr_write_rare
    - GF_LSR_WRITE_INT
    - lsr_write_stroke
    linkageType: ''
    returnType: void
    signature: void lsr_write_foreignObject(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2676,1
    - Dst: lsr_elt_has_same_base
      Src: /src/gpac/src/laser/lsr_enc.c:2680,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2684,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2685,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2689,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2691,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2692,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:2693,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:2694,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2695,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2696,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2699,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - lsr
    - elt
    - ommit_tag
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2700
      start: 2671
    functionDepth: 7
    functionLinenumber: 2671
    functionLinenumberEnd: 2700
    functionName: lsr_write_g
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_fill
    - lsr_write_rare
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_stroke
    - lsr_elt_has_same_base
    linkageType: ''
    returnType: void
    signature: void lsr_write_g(GF_LASeRCodec *lsr, SVG_Element *elt, Bool ommit_tag)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2704,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2706,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2707,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2708,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2709,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2712,1
    - Dst: lsr_write_fixed_clamp
      Src: /src/gpac/src/laser/lsr_enc.c:2713,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2715,1
    - Dst: lsr_write_preserve_aspect_ratio
      Src: /src/gpac/src/laser/lsr_enc.c:2717,1
    - Dst: lsr_write_content_type
      Src: /src/gpac/src/laser/lsr_enc.c:2719,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2720,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2721,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2722,1
    - Dst: lsr_write_href
      Src: /src/gpac/src/laser/lsr_enc.c:2723,1
    - Dst: lsr_write_transform_behavior
      Src: /src/gpac/src/laser/lsr_enc.c:2724,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2725,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2726,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2727
      start: 2701
    functionDepth: 7
    functionLinenumber: 2701
    functionLinenumberEnd: 2727
    functionName: lsr_write_image
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_coordinate_ptr
    - lsr_write_rare
    - lsr_write_fixed_clamp
    - lsr_write_preserve_aspect_ratio
    - lsr_write_transform_behavior
    - GF_LSR_WRITE_INT
    - lsr_write_href
    - lsr_write_group_content
    - lsr_write_content_type
    linkageType: ''
    returnType: void
    signature: void lsr_write_image(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2733,1
    - Dst: lsr_elt_has_same_base
      Src: /src/gpac/src/laser/lsr_enc.c:2735,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2739,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2740,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2744,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2746,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2747,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:2748,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:2749,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2752,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2753,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2754,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2755,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2757,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2760,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 3
    argNames:
    - lsr
    - elt
    - ommit_tag
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2761
      start: 2728
    functionDepth: 7
    functionLinenumber: 2728
    functionLinenumberEnd: 2761
    functionName: lsr_write_line
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_fill
    - lsr_write_coordinate_ptr
    - lsr_write_rare
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_stroke
    - lsr_elt_has_same_base
    linkageType: ''
    returnType: void
    signature: void lsr_write_line(GF_LASeRCodec *lsr, SVG_Element *elt, Bool ommit_tag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2765,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2767,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2768,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:2769,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:2770,1
    - Dst: lsr_write_gradient_units
      Src: /src/gpac/src/laser/lsr_enc.c:2771,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2772,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2773,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2774,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2775,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2776,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2777,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2778
      start: 2762
    functionDepth: 7
    functionLinenumber: 2762
    functionLinenumberEnd: 2778
    functionName: lsr_write_linearGradient
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_fill
    - lsr_write_coordinate_ptr
    - lsr_write_rare
    - lsr_write_group_content
    - lsr_write_gradient_units
    - lsr_write_stroke
    linkageType: ''
    returnType: void
    signature: void lsr_write_linearGradient(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2782,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2784,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2785,1
    - Dst: lsr_write_href
      Src: /src/gpac/src/laser/lsr_enc.c:2786,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2787,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2788,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2789
      start: 2779
    functionDepth: 7
    functionLinenumber: 2779
    functionLinenumberEnd: 2789
    functionName: lsr_write_mpath
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_rare
    - lsr_write_href
    - lsr_write_group_content
    linkageType: ''
    returnType: void
    signature: void lsr_write_mpath(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2795,1
    - Dst: lsr_elt_has_same_base
      Src: /src/gpac/src/laser/lsr_enc.c:2797,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2801,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2802,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:2803,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2806,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2807,1
    - Dst: lsr_write_path_type
      Src: /src/gpac/src/laser/lsr_enc.c:2809,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2812,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2814,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2815,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:2816,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:2817,1
    - Dst: lsr_write_path_type
      Src: /src/gpac/src/laser/lsr_enc.c:2818,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2820,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:2821,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2823,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2825,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2828,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 31
    argCount: 3
    argNames:
    - lsr
    - elt
    - ommit_tag
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2829
      start: 2790
    functionDepth: 7
    functionLinenumber: 2790
    functionLinenumberEnd: 2829
    functionName: lsr_write_path
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_fill
    - lsr_write_rare
    - lsr_write_fixed_16_8
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_path_type
    - lsr_write_stroke
    - lsr_elt_has_same_base
    linkageType: ''
    returnType: void
    signature: void lsr_write_path(GF_LASeRCodec *lsr, SVG_Element *elt, Bool ommit_tag)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2836,1
    - Dst: lsr_elt_has_same_base
      Src: /src/gpac/src/laser/lsr_enc.c:2838,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2853,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2854,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:2855,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:2856,1
    - Dst: lsr_write_point_sequence
      Src: /src/gpac/src/laser/lsr_enc.c:2857,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2860,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2862,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2863,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:2864,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:2865,1
    - Dst: lsr_write_point_sequence
      Src: /src/gpac/src/laser/lsr_enc.c:2866,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2867,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2870,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 34
    argCount: 4
    argNames:
    - lsr
    - elt
    - is_polyline
    - ommit_tag
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2871
      start: 2830
    functionDepth: 7
    functionLinenumber: 2830
    functionLinenumberEnd: 2871
    functionName: lsr_write_polygon
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_fill
    - lsr_write_rare
    - lsr_write_point_sequence
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_stroke
    - lsr_elt_has_same_base
    linkageType: ''
    returnType: void
    signature: void lsr_write_polygon(GF_LASeRCodec *lsr, SVG_Element *elt, Bool is_polyline,
      Bool ommit_tag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2875,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2877,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2878,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:2879,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:2880,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2881,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2882,1
    - Dst: lsr_write_gradient_units
      Src: /src/gpac/src/laser/lsr_enc.c:2883,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2884,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2885,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2886,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2887
      start: 2872
    functionDepth: 7
    functionLinenumber: 2872
    functionLinenumberEnd: 2887
    functionName: lsr_write_radialGradient
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_fill
    - lsr_write_coordinate_ptr
    - lsr_write_rare
    - lsr_write_group_content
    - lsr_write_gradient_units
    - lsr_write_stroke
    linkageType: ''
    returnType: void
    signature: void lsr_write_radialGradient(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2893,1
    - Dst: lsr_elt_has_same_base
      Src: /src/gpac/src/laser/lsr_enc.c:2895,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2900,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2904,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2906,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:2907,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2908,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2909,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2910,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2911,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2914,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2915,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2916,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:2917,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:2918,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2919,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2920,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2921,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2922,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2923,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:2924,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2925,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2928,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 3
    argNames:
    - lsr
    - elt
    - ommit_tag
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2929
      start: 2888
    functionDepth: 7
    functionLinenumber: 2888
    functionLinenumberEnd: 2929
    functionName: lsr_write_rect
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_fill
    - lsr_write_coordinate_ptr
    - lsr_write_rare
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_stroke
    - lsr_elt_has_same_base
    linkageType: ''
    returnType: void
    signature: void lsr_write_rect(GF_LASeRCodec *lsr, SVG_Element *elt, Bool ommit_tag)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2934,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2936,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2937,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:2938,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:2939,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2940,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2942,1
    - Dst: lsr_write_coordinate
      Src: /src/gpac/src/laser/lsr_enc.c:2943,1
    - Dst: lsr_write_coordinate
      Src: /src/gpac/src/laser/lsr_enc.c:2944,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2946,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2948,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2949,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2950
      start: 2931
    functionDepth: 7
    functionLinenumber: 2931
    functionLinenumberEnd: 2950
    functionName: lsr_write_rectClip
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_fill
    - lsr_write_rare
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_stroke
    - lsr_write_coordinate
    linkageType: ''
    returnType: void
    signature: void lsr_write_rectClip(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2954,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2956,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2957,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2958,1
    - Dst: lsr_write_script_type
      Src: /src/gpac/src/laser/lsr_enc.c:2959,1
    - Dst: lsr_write_href
      Src: /src/gpac/src/laser/lsr_enc.c:2960,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2961,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2962,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2963
      start: 2951
    functionDepth: 7
    functionLinenumber: 2951
    functionLinenumberEnd: 2963
    functionName: lsr_write_script
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_script_type
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_rare
    - GF_LSR_WRITE_INT
    - lsr_write_href
    - lsr_write_group_content
    linkageType: ''
    returnType: void
    signature: void lsr_write_script(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2967,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2969,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2970,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:2971,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:2972,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2973,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2975,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2978,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2979,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2981,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:2982,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:2985,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:2986,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2987
      start: 2964
    functionDepth: 7
    functionLinenumber: 2964
    functionLinenumberEnd: 2987
    functionName: lsr_write_selector
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_fill
    - lsr_write_rare
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_stroke
    linkageType: ''
    returnType: void
    signature: void lsr_write_selector(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:2992,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:2994,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:2995,1
    - Dst: lsr_write_animatable
      Src: /src/gpac/src/laser/lsr_enc.c:2996,1
    - Dst: lsr_write_attribute_type
      Src: /src/gpac/src/laser/lsr_enc.c:2997,1
    - Dst: lsr_write_smil_times
      Src: /src/gpac/src/laser/lsr_enc.c:2998,1
    - Dst: lsr_write_duration
      Src: /src/gpac/src/laser/lsr_enc.c:2999,1
    - Dst: lsr_write_anim_fill
      Src: /src/gpac/src/laser/lsr_enc.c:3000,1
    - Dst: lsr_write_anim_repeat
      Src: /src/gpac/src/laser/lsr_enc.c:3001,1
    - Dst: lsr_write_repeat_duration
      Src: /src/gpac/src/laser/lsr_enc.c:3002,1
    - Dst: lsr_write_anim_restart
      Src: /src/gpac/src/laser/lsr_enc.c:3003,1
    - Dst: lsr_write_anim_value
      Src: /src/gpac/src/laser/lsr_enc.c:3004,1
    - Dst: lsr_write_href_anim
      Src: /src/gpac/src/laser/lsr_enc.c:3005,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3006,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:3007,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:3008,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 3
    argNames:
    - lsr
    - elt
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3009
      start: 2989
    functionDepth: 7
    functionLinenumber: 2989
    functionLinenumberEnd: 3009
    functionName: lsr_write_set
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_duration
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_smil_times
    - lsr_write_rare
    - lsr_write_animatable
    - lsr_write_anim_value
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_anim_restart
    - lsr_write_anim_repeat
    - lsr_write_attribute_type
    - lsr_write_href_anim
    - lsr_write_anim_fill
    - lsr_write_repeat_duration
    linkageType: ''
    returnType: void
    signature: void lsr_write_set(GF_LASeRCodec *lsr, SVG_Element *elt, SVG_Element
      *parent)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:3014,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:3016,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:3017,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:3018,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:3019,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3021,1
    - Dst: lsr_write_coordinate
      Src: /src/gpac/src/laser/lsr_enc.c:3022,1
    - Dst: lsr_write_coordinate
      Src: /src/gpac/src/laser/lsr_enc.c:3023,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3025,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3027,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:3029,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:3030,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3031
      start: 3011
    functionDepth: 7
    functionLinenumber: 3011
    functionLinenumberEnd: 3031
    functionName: lsr_write_simpleLayout
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_fill
    - lsr_write_rare
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_stroke
    - lsr_write_coordinate
    linkageType: ''
    returnType: void
    signature: void lsr_write_simpleLayout(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:3036,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:3038,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:3039,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:3040,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:3041,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:3042,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:3043,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:3044,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3045
      start: 3033
    functionDepth: 7
    functionLinenumber: 3033
    functionLinenumberEnd: 3045
    functionName: lsr_write_stop
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_fill
    - lsr_write_rare
    - lsr_write_fixed_16_8
    - lsr_write_group_content
    - lsr_write_stroke
    linkageType: ''
    returnType: void
    signature: void lsr_write_stop(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:3050,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:3052,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:3053,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:3054,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:3055,1
    - Dst: lsr_write_string_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:3056,1
    - Dst: lsr_write_string_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:3057,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3058,1
    - Dst: lsr_write_value_with_units
      Src: /src/gpac/src/laser/lsr_enc.c:3059,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3061,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3062,1
    - Dst: lsr_write_preserve_aspect_ratio
      Src: /src/gpac/src/laser/lsr_enc.c:3063,1
    - Dst: lsr_write_duration
      Src: /src/gpac/src/laser/lsr_enc.c:3067,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3069,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3073,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3076,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3079,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3082,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3086,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3089,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:3090,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3092,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3095,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3096,1
    - Dst: lsr_write_string_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:3098,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3100,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:3102,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:3103,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:3104,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:3105,1
    - Dst: lsr_write_value_with_units
      Src: /src/gpac/src/laser/lsr_enc.c:3107,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3109,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3111,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:3113,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:3114,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 61
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3115
      start: 3046
    functionDepth: 7
    functionLinenumber: 3046
    functionLinenumberEnd: 3115
    functionName: lsr_write_svg
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_duration
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_string_attribute
    - lsr_write_fill
    - lsr_write_rare
    - lsr_write_fixed_16_8
    - lsr_write_group_content
    - lsr_write_value_with_units
    - lsr_write_vluimsbf5
    - lsr_write_preserve_aspect_ratio
    - GF_LSR_WRITE_INT
    - lsr_write_stroke
    linkageType: ''
    returnType: void
    signature: void lsr_write_svg(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:3120,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:3122,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:3123,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:3124,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:3125,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3126,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:3127,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:3128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3129
      start: 3117
    functionDepth: 7
    functionLinenumber: 3117
    functionLinenumberEnd: 3129
    functionName: lsr_write_switch
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_fill
    - lsr_write_rare
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_stroke
    linkageType: ''
    returnType: void
    signature: void lsr_write_switch(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:3136,1
    - Dst: lsr_elt_has_same_base
      Src: /src/gpac/src/laser/lsr_enc.c:3138,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3141,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:3142,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:3143,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3146,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:3147,1
    - Dst: lsr_write_coord_list
      Src: /src/gpac/src/laser/lsr_enc.c:3149,1
    - Dst: lsr_write_coord_list
      Src: /src/gpac/src/laser/lsr_enc.c:3150,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3154,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:3155,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:3156,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:3157,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:3158,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3160,1
    - Dst: lsr_write_float_list
      Src: /src/gpac/src/laser/lsr_enc.c:3161,1
    - Dst: lsr_write_coord_list
      Src: /src/gpac/src/laser/lsr_enc.c:3162,1
    - Dst: lsr_write_coord_list
      Src: /src/gpac/src/laser/lsr_enc.c:3163,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:3164,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:3167,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 3
    argNames:
    - lsr
    - elt
    - ommit_tag
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3168
      start: 3131
    functionDepth: 7
    functionLinenumber: 3131
    functionLinenumberEnd: 3168
    functionName: lsr_write_text
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_coord_list
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_fill
    - lsr_write_rare
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_float_list
    - lsr_write_stroke
    - lsr_elt_has_same_base
    linkageType: ''
    returnType: void
    signature: void lsr_write_text(GF_LASeRCodec *lsr, SVG_Element *elt, Bool ommit_tag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:3173,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:3175,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:3176,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:3177,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:3178,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:3179,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:3180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3181
      start: 3170
    functionDepth: 7
    functionLinenumber: 3170
    functionLinenumberEnd: 3181
    functionName: lsr_write_tspan
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_fill
    - lsr_write_rare
    - lsr_write_group_content
    - lsr_write_stroke
    linkageType: ''
    returnType: void
    signature: void lsr_write_tspan(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:3187,1
    - Dst: lsr_elt_has_same_base
      Src: /src/gpac/src/laser/lsr_enc.c:3189,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3194,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:3195,1
    - Dst: lsr_write_href
      Src: /src/gpac/src/laser/lsr_enc.c:3196,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3199,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:3200,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:3201,1
    - Dst: lsr_write_fill
      Src: /src/gpac/src/laser/lsr_enc.c:3202,1
    - Dst: lsr_write_stroke
      Src: /src/gpac/src/laser/lsr_enc.c:3203,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3204,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3206,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3208,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:3210,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:3211,1
    - Dst: lsr_write_href
      Src: /src/gpac/src/laser/lsr_enc.c:3212,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:3213,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:3216,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 3
    argNames:
    - lsr
    - elt
    - ommit_tag
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3217
      start: 3183
    functionDepth: 7
    functionLinenumber: 3183
    functionLinenumberEnd: 3217
    functionName: lsr_write_use
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_attribute
    - gf_svg_flatten_attributes
    - lsr_write_fill
    - lsr_write_coordinate_ptr
    - lsr_write_rare
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_href
    - lsr_write_stroke
    - lsr_elt_has_same_base
    linkageType: ''
    returnType: void
    signature: void lsr_write_use(GF_LASeRCodec *lsr, SVG_Element *elt, Bool ommit_tag)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:3223,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:3231,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:3232,1
    - Dst: lsr_write_smil_times
      Src: /src/gpac/src/laser/lsr_enc.c:3233,1
    - Dst: lsr_write_duration
      Src: /src/gpac/src/laser/lsr_enc.c:3234,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3235,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:3236,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3238,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3240,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3241,1
    - Dst: lsr_write_preserve_aspect_ratio
      Src: /src/gpac/src/laser/lsr_enc.c:3243,1
    - Dst: lsr_write_anim_repeat
      Src: /src/gpac/src/laser/lsr_enc.c:3245,1
    - Dst: lsr_write_repeat_duration
      Src: /src/gpac/src/laser/lsr_enc.c:3246,1
    - Dst: lsr_write_anim_restart
      Src: /src/gpac/src/laser/lsr_enc.c:3247,1
    - Dst: lsr_write_sync_behavior
      Src: /src/gpac/src/laser/lsr_enc.c:3248,1
    - Dst: lsr_write_sync_tolerance
      Src: /src/gpac/src/laser/lsr_enc.c:3249,1
    - Dst: lsr_write_transform_behavior
      Src: /src/gpac/src/laser/lsr_enc.c:3250,1
    - Dst: lsr_write_content_type
      Src: /src/gpac/src/laser/lsr_enc.c:3251,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:3252,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:3253,1
    - Dst: lsr_write_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_enc.c:3254,1
    - Dst: lsr_write_href
      Src: /src/gpac/src/laser/lsr_enc.c:3255,1
    - Dst: lsr_write_clip_time
      Src: /src/gpac/src/laser/lsr_enc.c:3257,1
    - Dst: lsr_write_clip_time
      Src: /src/gpac/src/laser/lsr_enc.c:3258,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3260,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3261,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3263,1
    - Dst: lsr_write_any_uri
      Src: /src/gpac/src/laser/lsr_enc.c:3264,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:3266,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:3267,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 40
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3268
      start: 3219
    functionDepth: 7
    functionLinenumber: 3219
    functionLinenumberEnd: 3268
    functionName: lsr_write_video
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_any_attribute
    - lsr_write_coordinate_ptr
    - lsr_write_sync_tolerance
    - lsr_write_sync_behavior
    - lsr_write_anim_restart
    - lsr_write_group_content
    - lsr_write_smil_times
    - lsr_write_rare
    - lsr_write_transform_behavior
    - lsr_write_content_type
    - gf_svg_flatten_attributes
    - lsr_write_clip_time
    - lsr_write_preserve_aspect_ratio
    - lsr_write_href
    - lsr_write_anim_repeat
    - lsr_write_id
    - lsr_write_duration
    - lsr_write_any_uri
    - GF_LSR_WRITE_INT
    - lsr_write_repeat_duration
    linkageType: ''
    returnType: void
    signature: void lsr_write_video(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:3273,1
    - Dst: lsr_write_id
      Src: /src/gpac/src/laser/lsr_enc.c:3275,1
    - Dst: lsr_write_rare
      Src: /src/gpac/src/laser/lsr_enc.c:3276,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3278,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3279,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3281,1
    - Dst: lsr_write_event_type
      Src: /src/gpac/src/laser/lsr_enc.c:3282,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3284,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/laser/lsr_enc.c:3286,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3287,1
    - Dst: lsr_write_any_uri
      Src: /src/gpac/src/laser/lsr_enc.c:3288,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3290,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/laser/lsr_enc.c:3292,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3293,1
    - Dst: lsr_write_codec_IDREF
      Src: /src/gpac/src/laser/lsr_enc.c:3294,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:3297,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3299,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3302,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3303,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3305,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3306,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/laser/lsr_enc.c:3308,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3309,1
    - Dst: lsr_write_codec_IDREF
      Src: /src/gpac/src/laser/lsr_enc.c:3310,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3312,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3314,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:3316,1
    - Dst: lsr_write_group_content
      Src: /src/gpac/src/laser/lsr_enc.c:3317,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 43
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3318
      start: 3270
    functionDepth: 7
    functionLinenumber: 3270
    functionLinenumberEnd: 3318
    functionName: lsr_write_listener
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_id
    - lsr_write_any_uri
    - gf_svg_flatten_attributes
    - lsr_write_any_attribute
    - gf_node_get_id
    - GF_LOG
    - lsr_write_rare
    - GF_LSR_WRITE_INT
    - lsr_write_codec_IDREF
    - lsr_write_event_type
    - lsr_write_group_content
    linkageType: ''
    returnType: void
    signature: void lsr_write_listener(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/laser/lsr_enc.c:3322,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3326,1
    - Dst: lsr_write_a
      Src: /src/gpac/src/laser/lsr_enc.c:3327,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3330,1
    - Dst: lsr_write_animate
      Src: /src/gpac/src/laser/lsr_enc.c:3331,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3334,1
    - Dst: lsr_write_animate
      Src: /src/gpac/src/laser/lsr_enc.c:3335,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3338,1
    - Dst: lsr_write_animateMotion
      Src: /src/gpac/src/laser/lsr_enc.c:3339,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3342,1
    - Dst: lsr_write_animateTransform
      Src: /src/gpac/src/laser/lsr_enc.c:3343,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3346,1
    - Dst: lsr_write_audio
      Src: /src/gpac/src/laser/lsr_enc.c:3347,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3350,1
    - Dst: lsr_write_circle
      Src: /src/gpac/src/laser/lsr_enc.c:3351,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3354,1
    - Dst: lsr_write_cursorManager
      Src: /src/gpac/src/laser/lsr_enc.c:3355,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3358,1
    - Dst: lsr_write_defs
      Src: /src/gpac/src/laser/lsr_enc.c:3359,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3362,1
    - Dst: lsr_write_data
      Src: /src/gpac/src/laser/lsr_enc.c:3363,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3366,1
    - Dst: lsr_write_ellipse
      Src: /src/gpac/src/laser/lsr_enc.c:3367,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3370,1
    - Dst: lsr_write_foreignObject
      Src: /src/gpac/src/laser/lsr_enc.c:3371,1
    - Dst: lsr_write_g
      Src: /src/gpac/src/laser/lsr_enc.c:3376,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3379,1
    - Dst: lsr_write_image
      Src: /src/gpac/src/laser/lsr_enc.c:3380,1
    - Dst: lsr_write_line
      Src: /src/gpac/src/laser/lsr_enc.c:3384,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3387,1
    - Dst: lsr_write_linearGradient
      Src: /src/gpac/src/laser/lsr_enc.c:3388,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3391,1
    - Dst: lsr_write_data
      Src: /src/gpac/src/laser/lsr_enc.c:3392,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3395,1
    - Dst: lsr_write_mpath
      Src: /src/gpac/src/laser/lsr_enc.c:3396,1
    - Dst: lsr_write_path
      Src: /src/gpac/src/laser/lsr_enc.c:3400,1
    - Dst: lsr_write_polygon
      Src: /src/gpac/src/laser/lsr_enc.c:3404,1
    - Dst: lsr_write_polygon
      Src: /src/gpac/src/laser/lsr_enc.c:3408,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3411,1
    - Dst: lsr_write_radialGradient
      Src: /src/gpac/src/laser/lsr_enc.c:3412,1
    - Dst: lsr_write_rect
      Src: /src/gpac/src/laser/lsr_enc.c:3416,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3419,1
    - Dst: lsr_write_script
      Src: /src/gpac/src/laser/lsr_enc.c:3420,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3423,1
    - Dst: lsr_write_set
      Src: /src/gpac/src/laser/lsr_enc.c:3424,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3427,1
    - Dst: lsr_write_stop
      Src: /src/gpac/src/laser/lsr_enc.c:3428,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3431,1
    - Dst: lsr_write_switch
      Src: /src/gpac/src/laser/lsr_enc.c:3432,1
    - Dst: lsr_write_text
      Src: /src/gpac/src/laser/lsr_enc.c:3436,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3439,1
    - Dst: lsr_write_data
      Src: /src/gpac/src/laser/lsr_enc.c:3440,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3443,1
    - Dst: lsr_write_tspan
      Src: /src/gpac/src/laser/lsr_enc.c:3444,1
    - Dst: lsr_write_use
      Src: /src/gpac/src/laser/lsr_enc.c:3448,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3451,1
    - Dst: lsr_write_video
      Src: /src/gpac/src/laser/lsr_enc.c:3452,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3455,1
    - Dst: lsr_write_listener
      Src: /src/gpac/src/laser/lsr_enc.c:3456,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3459,1
    - Dst: lsr_write_conditional
      Src: /src/gpac/src/laser/lsr_enc.c:3460,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3463,1
    - Dst: lsr_write_rectClip
      Src: /src/gpac/src/laser/lsr_enc.c:3464,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3467,1
    - Dst: lsr_write_selector
      Src: /src/gpac/src/laser/lsr_enc.c:3468,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3471,1
    - Dst: lsr_write_simpleLayout
      Src: /src/gpac/src/laser/lsr_enc.c:3472,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3477,1
    - Dst: lsr_write_private_element_container
      Src: /src/gpac/src/laser/lsr_enc.c:3478,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3485,1
    - Dst: lsr_write_extend_class
      Src: /src/gpac/src/laser/lsr_enc.c:3486,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:3490,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/laser/lsr_enc.c:3490,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3491,1
    - Dst: lsr_write_byte_align_string
      Src: /src/gpac/src/laser/lsr_enc.c:3492,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 155
    argCount: 3
    argNames:
    - lsr
    - parent
    - node
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3496
      start: 3320
    functionDepth: 8
    functionLinenumber: 3320
    functionLinenumberEnd: 3496
    functionName: lsr_write_scene_content_model
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - lsr_write_a
    - gf_node_get_class_name
    - lsr_write_private_element_container
    - lsr_write_selector
    - lsr_write_path
    - lsr_write_text
    - lsr_write_ellipse
    - lsr_write_tspan
    - lsr_write_image
    - lsr_write_rect
    - lsr_write_animateTransform
    - lsr_write_foreignObject
    - lsr_write_switch
    - lsr_write_polygon
    - lsr_write_g
    - lsr_write_video
    - lsr_write_animate
    - lsr_write_line
    - lsr_write_extend_class
    - lsr_write_radialGradient
    - lsr_write_use
    - lsr_write_simpleLayout
    - GF_LOG
    - lsr_write_mpath
    - lsr_write_defs
    - lsr_write_animateMotion
    - lsr_write_set
    - lsr_write_audio
    - lsr_write_script
    - lsr_write_cursorManager
    - lsr_write_stop
    - lsr_write_rectClip
    - lsr_write_byte_align_string
    - lsr_write_conditional
    - lsr_write_linearGradient
    - GF_LSR_WRITE_INT
    - lsr_write_data
    - lsr_write_circle
    - lsr_write_listener
    linkageType: ''
    returnType: void
    signature: void lsr_write_scene_content_model(GF_LASeRCodec *lsr, SVG_Element
      *parent, void *node)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/laser/lsr_enc.c:3500,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3503,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3504,1
    - Dst: lsr_write_conditional
      Src: /src/gpac/src/laser/lsr_enc.c:3505,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3507,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3508,1
    - Dst: lsr_write_cursorManager
      Src: /src/gpac/src/laser/lsr_enc.c:3509,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3511,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3512,1
    - Dst: lsr_write_rectClip
      Src: /src/gpac/src/laser/lsr_enc.c:3513,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3515,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3516,1
    - Dst: lsr_write_selector
      Src: /src/gpac/src/laser/lsr_enc.c:3517,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3519,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3520,1
    - Dst: lsr_write_simpleLayout
      Src: /src/gpac/src/laser/lsr_enc.c:3521,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3523,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3526,1
    - Dst: lsr_write_a
      Src: /src/gpac/src/laser/lsr_enc.c:3527,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3530,1
    - Dst: lsr_write_animate
      Src: /src/gpac/src/laser/lsr_enc.c:3531,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3534,1
    - Dst: lsr_write_animate
      Src: /src/gpac/src/laser/lsr_enc.c:3535,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3538,1
    - Dst: lsr_write_animateMotion
      Src: /src/gpac/src/laser/lsr_enc.c:3539,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3542,1
    - Dst: lsr_write_animateTransform
      Src: /src/gpac/src/laser/lsr_enc.c:3543,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3546,1
    - Dst: lsr_write_audio
      Src: /src/gpac/src/laser/lsr_enc.c:3547,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3550,1
    - Dst: lsr_write_circle
      Src: /src/gpac/src/laser/lsr_enc.c:3551,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3554,1
    - Dst: lsr_write_defs
      Src: /src/gpac/src/laser/lsr_enc.c:3555,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3558,1
    - Dst: lsr_write_data
      Src: /src/gpac/src/laser/lsr_enc.c:3559,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3562,1
    - Dst: lsr_write_ellipse
      Src: /src/gpac/src/laser/lsr_enc.c:3563,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3566,1
    - Dst: lsr_write_foreignObject
      Src: /src/gpac/src/laser/lsr_enc.c:3567,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3570,1
    - Dst: lsr_write_g
      Src: /src/gpac/src/laser/lsr_enc.c:3571,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3574,1
    - Dst: lsr_write_image
      Src: /src/gpac/src/laser/lsr_enc.c:3575,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3578,1
    - Dst: lsr_write_line
      Src: /src/gpac/src/laser/lsr_enc.c:3579,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3582,1
    - Dst: lsr_write_linearGradient
      Src: /src/gpac/src/laser/lsr_enc.c:3583,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3586,1
    - Dst: lsr_write_data
      Src: /src/gpac/src/laser/lsr_enc.c:3587,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3590,1
    - Dst: lsr_write_mpath
      Src: /src/gpac/src/laser/lsr_enc.c:3591,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3594,1
    - Dst: lsr_write_path
      Src: /src/gpac/src/laser/lsr_enc.c:3595,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3598,1
    - Dst: lsr_write_polygon
      Src: /src/gpac/src/laser/lsr_enc.c:3599,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3602,1
    - Dst: lsr_write_polygon
      Src: /src/gpac/src/laser/lsr_enc.c:3603,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3606,1
    - Dst: lsr_write_radialGradient
      Src: /src/gpac/src/laser/lsr_enc.c:3607,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3610,1
    - Dst: lsr_write_rect
      Src: /src/gpac/src/laser/lsr_enc.c:3611,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3614,1
    - Dst: lsr_write_script
      Src: /src/gpac/src/laser/lsr_enc.c:3615,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3618,1
    - Dst: lsr_write_set
      Src: /src/gpac/src/laser/lsr_enc.c:3619,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3622,1
    - Dst: lsr_write_stop
      Src: /src/gpac/src/laser/lsr_enc.c:3623,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3626,1
    - Dst: lsr_write_svg
      Src: /src/gpac/src/laser/lsr_enc.c:3627,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3630,1
    - Dst: lsr_write_switch
      Src: /src/gpac/src/laser/lsr_enc.c:3631,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3634,1
    - Dst: lsr_write_text
      Src: /src/gpac/src/laser/lsr_enc.c:3635,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3638,1
    - Dst: lsr_write_data
      Src: /src/gpac/src/laser/lsr_enc.c:3639,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3642,1
    - Dst: lsr_write_tspan
      Src: /src/gpac/src/laser/lsr_enc.c:3643,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3646,1
    - Dst: lsr_write_use
      Src: /src/gpac/src/laser/lsr_enc.c:3647,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3650,1
    - Dst: lsr_write_video
      Src: /src/gpac/src/laser/lsr_enc.c:3651,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3654,1
    - Dst: lsr_write_listener
      Src: /src/gpac/src/laser/lsr_enc.c:3655,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:3658,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/laser/lsr_enc.c:3658,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 166
    argCount: 3
    argNames:
    - lsr
    - parent
    - node
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3663
      start: 3498
    functionDepth: 8
    functionLinenumber: 3498
    functionLinenumberEnd: 3663
    functionName: lsr_write_update_content_model
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - lsr_write_a
    - gf_node_get_class_name
    - lsr_write_selector
    - lsr_write_path
    - lsr_write_text
    - lsr_write_ellipse
    - lsr_write_tspan
    - lsr_write_image
    - lsr_write_rect
    - lsr_write_animateTransform
    - lsr_write_foreignObject
    - lsr_write_switch
    - lsr_write_polygon
    - lsr_write_g
    - lsr_write_video
    - lsr_write_animate
    - lsr_write_line
    - lsr_write_radialGradient
    - lsr_write_simpleLayout
    - lsr_write_use
    - GF_LOG
    - lsr_write_mpath
    - lsr_write_svg
    - lsr_write_defs
    - lsr_write_animateMotion
    - lsr_write_set
    - lsr_write_audio
    - lsr_write_script
    - lsr_write_cursorManager
    - lsr_write_stop
    - lsr_write_rectClip
    - lsr_write_conditional
    - lsr_write_linearGradient
    - GF_LSR_WRITE_INT
    - lsr_write_data
    - lsr_write_circle
    - lsr_write_listener
    linkageType: ''
    returnType: void
    signature: void lsr_write_update_content_model(GF_LASeRCodec *lsr, SVG_Element
      *parent, void *node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: lsr_write_private_attributes
      Src: /src/gpac/src/laser/lsr_enc.c:3669,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/laser/lsr_enc.c:3671,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3675,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3678,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:3679,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/laser/lsr_enc.c:3682,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3684,1
    - Dst: lsr_write_byte_align_string
      Src: /src/gpac/src/laser/lsr_enc.c:3685,1
    - Dst: lsr_write_scene_content_model
      Src: /src/gpac/src/laser/lsr_enc.c:3687,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:3688,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/laser/lsr_enc.c:3688,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 3
    argNames:
    - lsr
    - elt
    - skip_object_content
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3692
      start: 3665
    functionDepth: 9
    functionLinenumber: 3665
    functionLinenumberEnd: 3692
    functionName: lsr_write_group_content
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 32
    functionsReached:
    - gf_node_get_tag
    - lsr_write_scene_content_model
    - gf_node_get_class_name
    - lsr_write_byte_align_string
    - GF_LOG
    - lsr_write_vluimsbf5
    - lsr_write_private_attributes
    - GF_LSR_WRITE_INT
    - gf_node_list_get_count
    linkageType: ''
    returnType: void
    signature: void lsr_write_group_content(GF_LASeRCodec *lsr, SVG_Element *elt,
      Bool skip_object_content)
  - BBCount: 63
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_enc.c:3697,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:3697,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:3701,1
    - Dst: lsr_write_coordinate
      Src: /src/gpac/src/laser/lsr_enc.c:3702,1
    - Dst: lsr_write_coordinate
      Src: /src/gpac/src/laser/lsr_enc.c:3703,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:3708,1
    - Dst: lsr_write_smil_time
      Src: /src/gpac/src/laser/lsr_enc.c:3709,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:3714,1
    - Dst: lsr_write_fixed_clamp
      Src: /src/gpac/src/laser/lsr_enc.c:3715,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:3720,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:3721,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:3726,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3729,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3730,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3732,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3734,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3751,1
    - Dst: lsr_write_paint
      Src: /src/gpac/src/laser/lsr_enc.c:3754,1
    - Dst: lsr_write_matrix
      Src: /src/gpac/src/laser/lsr_enc.c:3757,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:3760,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:3761,1
    - Dst: lsr_write_coordinate
      Src: /src/gpac/src/laser/lsr_enc.c:3765,1
    - Dst: lsr_write_coordinate
      Src: /src/gpac/src/laser/lsr_enc.c:3766,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3769,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3770,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:3771,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3788,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3790,1
    - Dst: lsr_write_fixed_clamp
      Src: /src/gpac/src/laser/lsr_enc.c:3791,1
    - Dst: lsr_write_value_with_units
      Src: /src/gpac/src/laser/lsr_enc.c:3797,1
    - Dst: lsr_write_coordinate
      Src: /src/gpac/src/laser/lsr_enc.c:3799,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3804,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3806,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3807,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:3808,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3815,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3817,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3819,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3820,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3822,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:3823,1
    - Dst: lsr_write_coordinate
      Src: /src/gpac/src/laser/lsr_enc.c:3829,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3834,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3835,1
    - Dst: lsr_write_float_list
      Src: /src/gpac/src/laser/lsr_enc.c:3836,1
    - Dst: lsr_write_any_uri
      Src: /src/gpac/src/laser/lsr_enc.c:3841,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3843,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3844,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:3845,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/laser/lsr_enc.c:3845,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3847,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3852,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3853,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3854,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3856,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3858,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3859,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:3860,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/laser/lsr_enc.c:3860,1
    - Dst: lsr_write_byte_align_string
      Src: /src/gpac/src/laser/lsr_enc.c:3867,1
    - Dst: lsr_write_coordinate
      Src: /src/gpac/src/laser/lsr_enc.c:3870,1
    - Dst: lsr_write_coordinate
      Src: /src/gpac/src/laser/lsr_enc.c:3871,1
    - Dst: lsr_write_point_sequence
      Src: /src/gpac/src/laser/lsr_enc.c:3874,1
    - Dst: lsr_write_path_type
      Src: /src/gpac/src/laser/lsr_enc.c:3877,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3882,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3884,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3886,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:3888,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3898,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3899,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:3900,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:3901,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:3902,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:3903,1
    - Dst: lsr_write_fixed_16_8
      Src: /src/gpac/src/laser/lsr_enc.c:3904,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3911,1
    - Dst: lsr_get_font_index
      Src: /src/gpac/src/laser/lsr_enc.c:3913,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:3915,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3918,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:3919,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3928,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3930,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:3931,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:3934,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 215
    argCount: 7
    argNames:
    - lsr
    - elt
    - fieldType
    - att_tag
    - transformType
    - val
    - is_indexed
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    - u32
    - u32
    - u32
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3938
      start: 3694
    functionDepth: 5
    functionLinenumber: 3694
    functionLinenumberEnd: 3938
    functionName: lsr_write_update_value
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_write_fixed_16_8
    - lsr_write_paint
    - gf_list_count
    - lsr_write_smil_time
    - gf_assert
    - gf_list_get
    - lsr_get_font_index
    - gf_node_get_id
    - lsr_write_fixed_clamp
    - lsr_write_coordinate
    - GF_LOG
    - lsr_write_value_with_units
    - lsr_write_vluimsbf5
    - lsr_write_float_list
    - lsr_write_matrix
    - lsr_write_any_uri
    - lsr_write_byte_align_string
    - lsr_write_point_sequence
    - GF_LSR_WRITE_INT
    - lsr_write_path_type
    linkageType: ''
    returnType: void
    signature: void lsr_write_update_value(GF_LASeRCodec *lsr, SVG_Element *elt, u32
      fieldType, u32 att_tag, u32 transformType, void *val, Bool is_indexed)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3951,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:3952,1
    - Dst: gf_lsr_anim_type_from_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:3957,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_enc.c:3959,1
    - Dst: gf_svg_get_attribute_name
      Src: /src/gpac/src/laser/lsr_enc.c:3959,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/laser/lsr_enc.c:3959,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3962,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3963,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3964,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3968,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3969,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3970,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3973,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3978,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3980,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:3981,1
    - Dst: gf_lsr_anim_type_from_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:3987,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3988,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3989,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3990,1
    - Dst: lsr_write_codec_IDREF_Node
      Src: /src/gpac/src/laser/lsr_enc.c:3991,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3993,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3994,1
    - Dst: lsr_write_codec_IDREF_Node
      Src: /src/gpac/src/laser/lsr_enc.c:3997,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:3999,1
    - Dst: lsr_write_update_value
      Src: /src/gpac/src/laser/lsr_enc.c:4000,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4003,1
    - Dst: lsr_write_update_value
      Src: /src/gpac/src/laser/lsr_enc.c:4004,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4006,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:4008,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/laser/lsr_enc.c:4013,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4014,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:4016,1
    - Dst: lsr_write_update_content_model
      Src: /src/gpac/src/laser/lsr_enc.c:4019,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4024,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:4025,1
    - Dst: lsr_write_update_content_model
      Src: /src/gpac/src/laser/lsr_enc.c:4026,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4028,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 84
    argCount: 2
    argNames:
    - lsr
    - com
    argTypes:
    - GF_LASeRCodec*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4032
      start: 3940
    functionDepth: 9
    functionLinenumber: 3940
    functionLinenumberEnd: 4032
    functionName: lsr_write_add_replace_insert
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - lsr_write_any_attribute
    - gf_node_get_class_name
    - GF_LOG
    - gf_svg_get_attribute_name
    - lsr_write_codec_IDREF_Node
    - lsr_write_vluimsbf5
    - lsr_write_update_value
    - GF_LSR_WRITE_INT
    - gf_node_list_get_count
    - gf_lsr_anim_type_from_attribute
    - lsr_write_update_content_model
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsr_write_add_replace_insert(GF_LASeRCodec *lsr, GF_Command
      *com)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:4041,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/laser/lsr_enc.c:4047,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_enc.c:4049,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:4051,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:4055,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:4057,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4061,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:4062,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:4063,1
    - Dst: lsr_write_svg
      Src: /src/gpac/src/laser/lsr_enc.c:4064,1
    - Dst: lsr_write_add_replace_insert
      Src: /src/gpac/src/laser/lsr_enc.c:4069,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4074,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:4075,1
    - Dst: gf_lsr_anim_type_from_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:4078,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4079,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4080,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4081,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4083,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4086,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4088,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:4089,1
    - Dst: lsr_write_codec_IDREF_Node
      Src: /src/gpac/src/laser/lsr_enc.c:4091,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:4092,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4099,1
    - Dst: dom_to_lsr_key
      Src: /src/gpac/src/laser/lsr_enc.c:4107,1
    - Dst: lsr_write_event_type
      Src: /src/gpac/src/laser/lsr_enc.c:4113,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4116,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4117,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:4118,1
    - Dst: ABS
      Src: /src/gpac/src/laser/lsr_enc.c:4118,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4120,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4126,1
    - Dst: lsr_write_coordinate
      Src: /src/gpac/src/laser/lsr_enc.c:4127,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_enc.c:4127,1
    - Dst: lsr_write_coordinate
      Src: /src/gpac/src/laser/lsr_enc.c:4128,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_enc.c:4128,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4130,1
    - Dst: lsr_write_codec_IDREF_Node
      Src: /src/gpac/src/laser/lsr_enc.c:4132,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4134,1
    - Dst: lsr_write_byte_align_string
      Src: /src/gpac/src/laser/lsr_enc.c:4135,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4137,1
    - Dst: lsr_write_byte_align_string
      Src: /src/gpac/src/laser/lsr_enc.c:4138,1
    - Dst: gf_dom_get_key_name
      Src: /src/gpac/src/laser/lsr_enc.c:4138,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4140,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4142,1
    - Dst: lsr_get_IDREF_nb_bits
      Src: /src/gpac/src/laser/lsr_enc.c:4148,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4150,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4151,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:4152,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:4153,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:4154,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4155,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:4156,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4157,1
    - Dst: lsr_write_codec_IDREF_Node
      Src: /src/gpac/src/laser/lsr_enc.c:4158,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/laser/lsr_enc.c:4180,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/laser/lsr_enc.c:4181,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:4183,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/laser/lsr_enc.c:4185,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/laser/lsr_enc.c:4186,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_enc.c:4187,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 133
    argCount: 4
    argNames:
    - lsr
    - com_list
    - cond
    - first_implicit
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    - SVG_Element*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4190
      start: 4034
    functionDepth: 10
    functionLinenumber: 4034
    functionLinenumberEnd: 4190
    functionName: lsr_write_command_list
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 1
    functionsReached:
    - gf_free
    - lsr_write_any_attribute
    - gf_bs_new
    - gf_list_count
    - lsr_write_add_replace_insert
    - gf_assert
    - gf_list_get
    - gf_bs_get_content
    - lsr_write_codec_IDREF_Node
    - gf_lsr_anim_type_from_attribute
    - lsr_write_event_type
    - lsr_write_coordinate
    - lsr_write_svg
    - dom_to_lsr_key
    - lsr_write_vluimsbf5
    - gf_bs_align
    - gf_dom_get_key_name
    - gf_bs_write_data
    - lsr_get_IDREF_nb_bits
    - ABS
    - INT2FIX
    - lsr_write_byte_align_string
    - gf_bs_del
    - GF_LSR_WRITE_INT
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsr_write_command_list(GF_LASeRCodec *lsr, GF_List *com_list,
      SVG_Element *cond, Bool first_implicit)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/laser/lsr_enc.c:4194,1
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_enc.c:4195,1
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_enc.c:4196,1
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_enc.c:4197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - color
    argTypes:
    - GF_LASeRCodec*
    - SVG_Color*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4199
      start: 4192
    functionDepth: 1
    functionLinenumber: 4192
    functionLinenumberEnd: 4199
    functionName: lsr_add_color
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - FIX2INT
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void lsr_add_color(GF_LASeRCodec *lsr, SVG_Color *color)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: lsr_get_col_index
      Src: /src/gpac/src/laser/lsr_enc.c:4205,1
    - Dst: lsr_add_color
      Src: /src/gpac/src/laser/lsr_enc.c:4206,1
    - Dst: lsr_get_col_index
      Src: /src/gpac/src/laser/lsr_enc.c:4209,1
    - Dst: lsr_add_color
      Src: /src/gpac/src/laser/lsr_enc.c:4210,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 3
    argNames:
    - lsr
    - color
    - paint
    argTypes:
    - GF_LASeRCodec*
    - SVG_Color*
    - SVG_Paint*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4212
      start: 4201
    functionDepth: 2
    functionLinenumber: 4201
    functionLinenumberEnd: 4212
    functionName: lsr_check_col_index
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - lsr_get_col_index
    - lsr_add_color
    linkageType: ''
    returnType: void
    signature: void lsr_check_col_index(GF_LASeRCodec *lsr, SVG_Color *color, SVG_Paint
      *paint)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:4219,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:4221,1
    - Dst: strcmp
      Src: /src/gpac/src/laser/lsr_enc.c:4222,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_enc.c:4227,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_enc.c:4227,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 2
    argNames:
    - lsr
    - font
    argTypes:
    - GF_LASeRCodec*
    - SVG_FontFamily*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4229
      start: 4214
    functionDepth: 1
    functionLinenumber: 4214
    functionLinenumberEnd: 4229
    functionName: lsr_check_font_index
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_strdup
    - gf_list_count
    - strcmp
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void lsr_check_font_index(GF_LASeRCodec *lsr, SVG_FontFamily *font)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/laser/lsr_enc.c:4238,1
    - Dst: lsr_check_col_index
      Src: /src/gpac/src/laser/lsr_enc.c:4246,1
    - Dst: lsr_check_font_index
      Src: /src/gpac/src/laser/lsr_enc.c:4249,1
    - Dst: strcmp
      Src: /src/gpac/src/laser/lsr_enc.c:4255,1
    - Dst: strcmp
      Src: /src/gpac/src/laser/lsr_enc.c:4256,1
    - Dst: strcmp
      Src: /src/gpac/src/laser/lsr_enc.c:4257,1
    - Dst: strcmp
      Src: /src/gpac/src/laser/lsr_enc.c:4258,1
    - Dst: strcmp
      Src: /src/gpac/src/laser/lsr_enc.c:4259,1
    - Dst: strcmp
      Src: /src/gpac/src/laser/lsr_enc.c:4260,1
    - Dst: lsr_check_font_index
      Src: /src/gpac/src/laser/lsr_enc.c:4273,1
    - Dst: lsr_check_col_index
      Src: /src/gpac/src/laser/lsr_enc.c:4274,1
    - Dst: lsr_check_col_index
      Src: /src/gpac/src/laser/lsr_enc.c:4275,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:4280,1
    - Dst: lsr_check_font_index
      Src: /src/gpac/src/laser/lsr_enc.c:4282,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:4282,1
    - Dst: lsr_check_col_index
      Src: /src/gpac/src/laser/lsr_enc.c:4283,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:4283,1
    - Dst: lsr_check_col_index
      Src: /src/gpac/src/laser/lsr_enc.c:4284,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:4284,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:4298,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:4301,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:4302,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:4304,1
    - Dst: lsr_check_font_and_color
      Src: /src/gpac/src/laser/lsr_enc.c:4306,1
    - Dst: lsr_check_col_index
      Src: /src/gpac/src/laser/lsr_enc.c:4312,1
    - Dst: lsr_check_col_index
      Src: /src/gpac/src/laser/lsr_enc.c:4315,1
    - Dst: lsr_check_font_index
      Src: /src/gpac/src/laser/lsr_enc.c:4318,1
    - Dst: lsr_check_font_and_color
      Src: /src/gpac/src/laser/lsr_enc.c:4325,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 95
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4329
      start: 4231
    functionDepth: 3
    functionLinenumber: 4231
    functionLinenumberEnd: 4329
    functionName: lsr_check_font_and_color
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_list_get
    - lsr_check_font_index
    - lsr_check_font_and_color
    - gf_list_count
    - strcmp
    - lsr_check_col_index
    linkageType: ''
    returnType: void
    signature: void lsr_check_font_and_color(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/laser/lsr_enc.c:4339,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4341,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4343,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4345,1
    - Dst: lsr_write_extension
      Src: /src/gpac/src/laser/lsr_enc.c:4347,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_enc.c:4353,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:4355,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_enc.c:4356,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_enc.c:4357,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_enc.c:4358,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:4367,1
    - Dst: lsr_check_font_and_color
      Src: /src/gpac/src/laser/lsr_enc.c:4371,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/laser/lsr_enc.c:4371,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:4374,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:4376,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:4377,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:4378,1
    - Dst: lsr_check_col_index
      Src: /src/gpac/src/laser/lsr_enc.c:4379,1
    - Dst: lsr_check_font_index
      Src: /src/gpac/src/laser/lsr_enc.c:4380,1
    - Dst: lsr_check_font_and_color
      Src: /src/gpac/src/laser/lsr_enc.c:4381,1
    - Dst: lsr_check_font_and_color
      Src: /src/gpac/src/laser/lsr_enc.c:4385,1
    - Dst: lsr_check_font_and_color
      Src: /src/gpac/src/laser/lsr_enc.c:4390,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4398,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4400,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:4401,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4403,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4404,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4405,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/laser/lsr_enc.c:4408,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_enc.c:4412,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4414,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4416,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:4417,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_enc.c:4419,1
    - Dst: lsr_write_byte_align_string
      Src: /src/gpac/src/laser/lsr_enc.c:4420,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/laser/lsr_enc.c:4423,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4427,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4431,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:4436,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4438,1
    - Dst: lsr_write_vluimsbf5
      Src: /src/gpac/src/laser/lsr_enc.c:4442,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4443,1
    - Dst: lsr_write_any_attribute
      Src: /src/gpac/src/laser/lsr_enc.c:4444,1
    - Dst: lsr_write_svg
      Src: /src/gpac/src/laser/lsr_enc.c:4445,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/laser/lsr_enc.c:4445,1
    - Dst: lsr_write_command_list
      Src: /src/gpac/src/laser/lsr_enc.c:4447,1
    - Dst: GF_LSR_WRITE_INT
      Src: /src/gpac/src/laser/lsr_enc.c:4450,1
    - Dst: lsr_write_extension
      Src: /src/gpac/src/laser/lsr_enc.c:4452,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 86
    argCount: 3
    argNames:
    - lsr
    - com_list
    - reset_encoding_context
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4455
      start: 4331
    functionDepth: 11
    functionLinenumber: 4331
    functionLinenumberEnd: 4455
    functionName: lsr_write_laser_unit
    functionSourceFile: /src/gpac/src/laser/lsr_enc.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_list_get
    - lsr_write_any_attribute
    - gf_get_bit_size
    - lsr_write_byte_align_string
    - lsr_check_font_index
    - lsr_write_svg
    - lsr_check_font_and_color
    - lsr_write_vluimsbf5
    - gf_list_count
    - lsr_write_command_list
    - GF_LSR_WRITE_INT
    - lsr_check_col_index
    - lsr_write_extension
    - gf_sg_get_root_node
    - gf_list_last
    - gf_list_rem_last
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsr_write_laser_unit(GF_LASeRCodec *lsr, GF_List *com_list,
      Bool reset_encoding_context)
  - BBCount: 135
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 271
    argCount: 1
    argNames:
    - tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 308
    functionName: gf_lsr_anim_type_from_attribute
    functionSourceFile: /src/gpac/src/laser/lsr_tables.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 gf_lsr_anim_type_from_attribute(u32 tag)
  - BBCount: 70
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 141
    argCount: 1
    argNames:
    - tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 312
    functionDepth: 0
    functionLinenumber: 312
    functionLinenumberEnd: 453
    functionName: gf_lsr_rare_type_from_attribute
    functionSourceFile: /src/gpac/src/laser/lsr_tables.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 gf_lsr_rare_type_from_attribute(u32 tag)
  - BBCount: 135
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 271
    argCount: 1
    argNames:
    - tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 457
    functionDepth: 0
    functionLinenumber: 457
    functionLinenumberEnd: 728
    functionName: gf_lsr_anim_type_to_attribute
    functionSourceFile: /src/gpac/src/laser/lsr_tables.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 gf_lsr_anim_type_to_attribute(u32 tag)
  - BBCount: 65
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 131
    argCount: 1
    argNames:
    - tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 863
      start: 732
    functionDepth: 0
    functionLinenumber: 732
    functionLinenumberEnd: 863
    functionName: gf_lsr_rare_type_to_attribute
    functionSourceFile: /src/gpac/src/laser/lsr_tables.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 gf_lsr_rare_type_to_attribute(u32 tag)
  - BBCount: 64
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/laser/lsr_tables.c:871,1
    - Dst: memset
      Src: /src/gpac/src/laser/lsr_tables.c:872,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:878,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:884,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:890,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:896,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:902,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:908,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:914,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:920,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:926,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:932,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:938,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:944,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:950,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:956,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:962,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:968,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:974,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:980,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:986,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:992,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:998,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1004,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1010,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1016,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1022,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1028,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1034,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1040,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1046,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1052,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1058,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1064,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1070,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1076,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1082,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1088,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1094,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1100,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1106,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1112,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1118,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1124,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1130,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1136,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1142,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1148,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1154,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1160,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1166,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1172,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1178,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1184,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1190,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1196,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1202,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1208,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1214,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1220,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1226,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1232,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1238,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1244,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/laser/lsr_tables.c:1250,1
    CyclomaticComplexity: 63
    EdgeCount: 63
    ICount: 382
    argCount: 2
    argNames:
    - elt_atts
    - base_atts
    argTypes:
    - SVGAllAttributes*
    - SVGAllAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1253
      start: 867
    functionDepth: 3
    functionLinenumber: 867
    functionLinenumberEnd: 1253
    functionName: gf_lsr_same_rare
    functionSourceFile: /src/gpac/src/laser/lsr_tables.c
    functionUses: 1
    functionsReached:
    - memset
    - gf_svg_attributes_equal
    linkageType: ''
    returnType: u32
    signature: u32 gf_lsr_same_rare(SVGAllAttributes *elt_atts, SVGAllAttributes *base_atts)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _elem
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 40
    functionName: MPD_STORE_EXTENSION_ATTR
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MPD_STORE_EXTENSION_ATTR(_elem)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _elem
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 47
    functionName: MPD_STORE_EXTENSION_NODE
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MPD_STORE_EXTENSION_NODE(_elem)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _elem
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 65
    functionName: MPD_FREE_EXTENSION_NODE
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MPD_FREE_EXTENSION_NODE(_elem)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:68,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:69,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - attr
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 71
    functionName: gf_mpd_parse_bool
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: Bool
    signature: Bool gf_mpd_parse_bool(const char * const attr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - attr
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionName: gf_mpd_parse_string
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    linkageType: ''
    returnType: char
    signature: char *gf_mpd_parse_string(char *attr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:83,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:84,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 10
    argCount: 2
    argNames:
    - mpd
    - child
    argTypes:
    - GF_MPD*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 86
    functionName: gf_mpd_valid_child
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: Bool
    signature: Bool gf_mpd_valid_child(GF_MPD *mpd, GF_XMLNode *child)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:92,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:96,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - child
    argTypes:
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 101
    functionName: gf_mpd_parse_text_content
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_mpd_parse_string
    linkageType: ''
    returnType: char
    signature: char *gf_mpd_parse_text_content(GF_XMLNode *child)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - attr
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: gf_mpd_parse_int
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - atoi
    linkageType: ''
    returnType: u32
    signature: u32 gf_mpd_parse_int(const char * const attr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - attr
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 113
    functionName: gf_mpd_parse_long_int
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - sscanf
    linkageType: ''
    returnType: u64
    signature: u64 gf_mpd_parse_long_int(const char * const attr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: atof
      Src: /src/gpac/src/media_tools/mpd.c:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - attr
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: gf_mpd_parse_double
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - atof
    linkageType: ''
    returnType: Double
    signature: Double gf_mpd_parse_double(const char * const attr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:125,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/mpd.c:129,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:130,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:133,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - attr
    - sep
    - res
    argTypes:
    - char*
    - char
    - GF_MPD_Fractional*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 136
    functionName: gf_mpd_parse_frac
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - atoi
    - sscanf
    - snprintf
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_MPD_Fractional
    signature: GF_MPD_Fractional *gf_mpd_parse_frac(const char * const attr, const
      char sep, GF_MPD_Fractional *res)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:141,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:144,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - attr
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 147
    functionName: gf_mpd_parse_fraction
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - atoi
    - sscanf
    linkageType: ''
    returnType: GF_Fraction
    signature: GF_Fraction gf_mpd_parse_fraction(const char * const attr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_net_parse_date
      Src: /src/gpac/src/media_tools/mpd.c:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - attr
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 152
    functionName: gf_mpd_parse_date
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_net_parse_date
    linkageType: ''
    returnType: u64
    signature: u64 gf_mpd_parse_date(const char * const attr)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:164,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:176,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:179,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:182,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:187,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:188,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:189,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:190,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:191,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:192,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:193,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:194,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:195,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:196,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:204,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:206,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:212,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:214,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:220,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:221,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:225,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:226,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:229,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 76
    argCount: 1
    argNames:
    - duration
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 234
    functionName: gf_mpd_parse_duration
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - strchr
    - atoi
    - sscanf
    linkageType: ''
    returnType: u64
    signature: u64 gf_mpd_parse_duration(const char * const duration)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_parse_duration
      Src: /src/gpac/src/media_tools/mpd.c:238,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:242,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - duration
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 236
    functionDepth: 2
    functionLinenumber: 236
    functionLinenumberEnd: 245
    functionName: gf_mpd_parse_duration_u32
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_mpd_parse_duration
    linkageType: ''
    returnType: u32
    signature: u32 gf_mpd_parse_duration_u32(const char * const duration)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:250,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:252,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - attr
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 247
    functionDepth: 1
    functionLinenumber: 247
    functionLinenumberEnd: 254
    functionName: gf_mpd_parse_byte_range
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - sscanf
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_MPD_ByteRange
    signature: GF_MPD_ByteRange *gf_mpd_parse_byte_range(const char * const attr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:262,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:264,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:268,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:269,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:269,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:270,1
    - Dst: gf_mpd_parse_byte_range
      Src: /src/gpac/src/media_tools/mpd.c:270,1
    - Dst: gf_mpd_parse_text_content
      Src: /src/gpac/src/media_tools/mpd.c:272,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - container
    - node
    argTypes:
    - GF_List*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 256
    functionDepth: 2
    functionLinenumber: 256
    functionLinenumberEnd: 274
    functionName: gf_mpd_parse_base_url
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_mpd_parse_byte_range
    - gf_mpd_parse_string
    - gf_mpd_parse_text_content
    - strcmp
    - gf_list_add
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mpd_parse_base_url(GF_List *container, GF_XMLNode *node)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:283,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:287,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:288,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:289,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:290,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:291,1
    - Dst: MPD_STORE_EXTENSION_ATTR
      Src: /src/gpac/src/media_tools/mpd.c:293,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:298,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:301,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:302,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:304,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:306,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:307,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:309,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:311,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:312,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:314,1
    - Dst: MPD_STORE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:317,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:321,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 39
    argCount: 2
    argNames:
    - mpd
    - root
    argTypes:
    - GF_MPD*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 276
    functionDepth: 1
    functionLinenumber: 276
    functionLinenumberEnd: 322
    functionName: gf_mpd_parse_program_info
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_strdup
    - GF_SAFEALLOC
    - gf_mpd_parse_string
    - strcmp
    - gf_list_add
    - MPD_STORE_EXTENSION_ATTR
    - gf_list_enum
    - MPD_STORE_EXTENSION_NODE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mpd_parse_program_info(GF_MPD *mpd, GF_XMLNode *root)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:330,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:334,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:335,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:335,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:336,1
    - Dst: gf_mpd_parse_byte_range
      Src: /src/gpac/src/media_tools/mpd.c:336,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - root
    argTypes:
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 324
    functionDepth: 2
    functionLinenumber: 324
    functionLinenumberEnd: 339
    functionName: gf_mpd_parse_url
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_byte_range
    - GF_SAFEALLOC
    - gf_mpd_parse_string
    - strcmp
    - gf_list_enum
    linkageType: ''
    returnType: GF_MPD_URL
    signature: GF_MPD_URL *gf_mpd_parse_url(GF_XMLNode *root)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:350,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:351,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:351,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:352,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:352,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:353,1
    - Dst: gf_mpd_parse_byte_range
      Src: /src/gpac/src/media_tools/mpd.c:353,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:354,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:354,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:355,1
    - Dst: gf_mpd_parse_double
      Src: /src/gpac/src/media_tools/mpd.c:355,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:356,1
    - Dst: gf_mpd_parse_duration_u32
      Src: /src/gpac/src/media_tools/mpd.c:356,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:360,1
    - Dst: gf_mpd_valid_child
      Src: /src/gpac/src/media_tools/mpd.c:361,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:362,1
    - Dst: gf_mpd_parse_url
      Src: /src/gpac/src/media_tools/mpd.c:362,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:363,1
    - Dst: gf_mpd_parse_url
      Src: /src/gpac/src/media_tools/mpd.c:363,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 25
    argCount: 3
    argNames:
    - mpd
    - seg
    - root
    argTypes:
    - GF_MPD*
    - GF_MPD_SegmentBase*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 341
    functionDepth: 3
    functionLinenumber: 341
    functionLinenumberEnd: 365
    functionName: gf_mpd_parse_segment_base_generic
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_double
    - gf_mpd_parse_duration_u32
    - gf_mpd_parse_long_int
    - gf_mpd_parse_byte_range
    - gf_mpd_parse_int
    - gf_mpd_parse_url
    - gf_mpd_parse_bool
    - strcmp
    - gf_list_enum
    - gf_mpd_valid_child
    linkageType: ''
    returnType: void
    signature: void gf_mpd_parse_segment_base_generic(GF_MPD *mpd, GF_MPD_SegmentBase
      *seg, GF_XMLNode *root)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:374,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:376,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:379,1
    - Dst: gf_mpd_valid_child
      Src: /src/gpac/src/media_tools/mpd.c:380,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:381,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:383,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:386,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:389,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:390,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:391,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:392,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:393,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:394,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:395,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:399,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:400,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 35
    argCount: 2
    argNames:
    - mpd
    - root
    argTypes:
    - GF_MPD*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 367
    functionDepth: 1
    functionLinenumber: 367
    functionLinenumberEnd: 409
    functionName: gf_mpd_parse_segment_timeline
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_mpd_parse_long_int
    - GF_SAFEALLOC
    - gf_mpd_parse_int
    - strcmp
    - gf_list_add
    - gf_list_enum
    - gf_mpd_valid_child
    linkageType: ''
    returnType: GF_MPD_SegmentTimeline
    signature: GF_MPD_SegmentTimeline *gf_mpd_parse_segment_timeline(GF_MPD *mpd,
      GF_XMLNode *root)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:414,1
    - Dst: gf_mpd_parse_segment_base_generic
      Src: /src/gpac/src/media_tools/mpd.c:416,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - mpd
    - root
    argTypes:
    - GF_MPD*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 411
    functionDepth: 4
    functionLinenumber: 411
    functionLinenumberEnd: 418
    functionName: gf_mpd_parse_segment_base
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_segment_base_generic
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_MPD_SegmentBase
    signature: GF_MPD_SegmentBase *gf_mpd_parse_segment_base(GF_MPD *mpd, GF_XMLNode
      *root)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_parse_segment_base_generic
      Src: /src/gpac/src/media_tools/mpd.c:426,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:430,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:431,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:431,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:432,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:432,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:436,1
    - Dst: gf_mpd_valid_child
      Src: /src/gpac/src/media_tools/mpd.c:437,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:438,1
    - Dst: gf_mpd_parse_segment_timeline
      Src: /src/gpac/src/media_tools/mpd.c:438,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:439,1
    - Dst: gf_mpd_parse_url
      Src: /src/gpac/src/media_tools/mpd.c:439,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 3
    argNames:
    - mpd
    - seg
    - root
    argTypes:
    - GF_MPD*
    - GF_MPD_MultipleSegmentBase*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 420
    functionDepth: 4
    functionLinenumber: 420
    functionLinenumberEnd: 441
    functionName: gf_mpd_parse_multiple_segment_base
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_segment_timeline
    - gf_mpd_parse_segment_base_generic
    - gf_mpd_parse_int
    - gf_mpd_parse_url
    - strcmp
    - gf_list_enum
    - gf_mpd_valid_child
    linkageType: ''
    returnType: void
    signature: void gf_mpd_parse_multiple_segment_base(GF_MPD *mpd, GF_MPD_MultipleSegmentBase
      *seg, GF_XMLNode *root)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:447,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:448,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:452,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:457,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 6
    argNames:
    - media
    - start_range
    - end_range
    - index
    - idx_start_range
    - idx_end_range
    argTypes:
    - char*
    - u64
    - u64
    - char*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 459
      start: 444
    functionDepth: 1
    functionLinenumber: 444
    functionLinenumberEnd: 459
    functionName: gf_mpd_segmenturl_new
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_MPD_SegmentURL
    signature: GF_MPD_SegmentURL *gf_mpd_segmenturl_new(const char*media, u64 start_range,
      u64 end_range, const char *index, u64 idx_start_range, u64 idx_end_range)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:468,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:470,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:473,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:474,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:474,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:475,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:475,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:476,1
    - Dst: gf_mpd_parse_byte_range
      Src: /src/gpac/src/media_tools/mpd.c:476,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:477,1
    - Dst: gf_mpd_parse_byte_range
      Src: /src/gpac/src/media_tools/mpd.c:477,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:479,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:479,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:480,1
    - Dst: gf_bin128_parse
      Src: /src/gpac/src/media_tools/mpd.c:481,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:483,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:487,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:487,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:488,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:488,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:489,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:489,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:490,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:490,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:491,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:491,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:492,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:492,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:493,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:493,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:494,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:494,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 40
    argCount: 2
    argNames:
    - container
    - root
    argTypes:
    - GF_List*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 462
    functionDepth: 2
    functionLinenumber: 462
    functionLinenumberEnd: 496
    functionName: gf_mpd_parse_segment_url
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_long_int
    - GF_SAFEALLOC
    - gf_mpd_parse_byte_range
    - GF_LOG
    - gf_mpd_parse_int
    - gf_mpd_parse_string
    - strcmp
    - gf_list_add
    - gf_list_enum
    - gf_bin128_parse
    linkageType: ''
    returnType: void
    signature: void gf_mpd_parse_segment_url(GF_List *container, GF_XMLNode *root)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:505,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:507,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:510,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:511,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:511,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:512,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:512,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:514,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:514,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:515,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:515,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:516,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:516,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:517,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:517,1
    - Dst: gf_mpd_parse_multiple_segment_base
      Src: /src/gpac/src/media_tools/mpd.c:519,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:522,1
    - Dst: gf_mpd_valid_child
      Src: /src/gpac/src/media_tools/mpd.c:523,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:525,1
    - Dst: gf_mpd_parse_segment_url
      Src: /src/gpac/src/media_tools/mpd.c:525,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:527,1
    - Dst: gf_mpd_parse_segment_url
      Src: /src/gpac/src/media_tools/mpd.c:527,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:530,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpd.c:531,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 38
    argCount: 2
    argNames:
    - mpd
    - root
    argTypes:
    - GF_MPD*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 498
    functionDepth: 5
    functionLinenumber: 498
    functionLinenumberEnd: 535
    functionName: gf_mpd_parse_segment_list
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - gf_mpd_parse_int
    - gf_mpd_parse_multiple_segment_base
    - strstr
    - gf_mpd_parse_string
    - gf_list_count
    - strcmp
    - atoi
    - gf_mpd_parse_segment_url
    - gf_list_enum
    - gf_mpd_valid_child
    - gf_list_del
    linkageType: ''
    returnType: GF_MPD_SegmentList
    signature: GF_MPD_SegmentList *gf_mpd_parse_segment_list(GF_MPD *mpd, GF_XMLNode
      *root)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:543,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:547,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:548,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:548,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:549,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:549,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:550,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:550,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/mpd.c:551,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/mpd.c:551,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:552,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:553,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:555,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:555,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:556,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:557,1
    - Dst: gf_mpd_parse_multiple_segment_base
      Src: /src/gpac/src/media_tools/mpd.c:559,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 2
    argNames:
    - mpd
    - root
    argTypes:
    - GF_MPD*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 537
    functionDepth: 5
    functionLinenumber: 537
    functionLinenumberEnd: 561
    functionName: gf_mpd_parse_segment_template
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_mpd_parse_int
    - GF_LOG
    - gf_mpd_parse_multiple_segment_base
    - gf_mpd_parse_string
    - strcmp
    - stricmp
    - gf_list_enum
    linkageType: ''
    returnType: GF_MPD_SegmentTemplate
    signature: GF_MPD_SegmentTemplate *gf_mpd_parse_segment_template(GF_MPD *mpd,
      GF_XMLNode *root)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:568,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:571,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:572,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:572,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:573,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:573,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:574,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:574,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:576,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - comps
    - root
    argTypes:
    - GF_List*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 578
      start: 563
    functionDepth: 1
    functionLinenumber: 563
    functionLinenumberEnd: 578
    functionName: gf_mpd_parse_content_component
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - strcmp
    - atoi
    - gf_list_add
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mpd_parse_content_component(GF_List *comps, GF_XMLNode *root)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:584,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:587,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:588,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:588,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:589,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:589,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:591,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - comps
    - root
    argTypes:
    - GF_List*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 593
      start: 580
    functionDepth: 1
    functionLinenumber: 580
    functionLinenumberEnd: 593
    functionName: gf_mpd_parse_inband_event
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - strcmp
    - gf_list_add
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mpd_parse_inband_event(GF_List *comps, GF_XMLNode *root)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:603,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:606,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:607,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:607,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:608,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:608,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:609,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:609,1
    - Dst: MPD_STORE_EXTENSION_ATTR
      Src: /src/gpac/src/media_tools/mpd.c:611,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:615,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:617,1
    - Dst: gf_mpd_descriptor_free
      Src: /src/gpac/src/media_tools/mpd.c:618,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:624,1
    - Dst: MPD_STORE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:627,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 3
    argNames:
    - container
    - out_ptr
    - root
    argTypes:
    - GF_List*
    - GF_MPD_Descriptor**
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 595
    functionDepth: 1
    functionLinenumber: 595
    functionLinenumberEnd: 631
    functionName: gf_mpd_parse_descriptor_ex
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_mpd_descriptor_free
    - GF_SAFEALLOC
    - gf_mpd_parse_string
    - strcmp
    - gf_list_add
    - MPD_STORE_EXTENSION_ATTR
    - gf_list_enum
    - MPD_STORE_EXTENSION_NODE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mpd_parse_descriptor_ex(GF_List *container, GF_MPD_Descriptor
      **out_ptr, GF_XMLNode *root)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_parse_descriptor_ex
      Src: /src/gpac/src/media_tools/mpd.c:635,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - container
    - root
    argTypes:
    - GF_List*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 633
    functionDepth: 2
    functionLinenumber: 633
    functionLinenumberEnd: 636
    functionName: gf_mpd_parse_descriptor
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_descriptor_ex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mpd_parse_descriptor(GF_List *container, GF_XMLNode *root)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:645,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:648,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:649,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:649,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:650,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:650,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:651,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:652,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:653,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:655,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:655,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:656,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:656,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:657,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:657,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:661,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:663,1
    - Dst: gf_mpd_parse_descriptor_ex
      Src: /src/gpac/src/media_tools/mpd.c:664,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 30
    argCount: 1
    argNames:
    - root
    argTypes:
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 638
    functionDepth: 2
    functionLinenumber: 638
    functionLinenumberEnd: 667
    functionName: gf_mpd_parse_produce_ref_time
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_long_int
    - GF_SAFEALLOC
    - gf_mpd_parse_int
    - gf_mpd_parse_descriptor_ex
    - gf_mpd_parse_bool
    - gf_mpd_parse_string
    - strcmp
    - gf_list_enum
    linkageType: ''
    returnType: GF_MPD_ProducerReferenceTime
    signature: GF_MPD_ProducerReferenceTime *gf_mpd_parse_produce_ref_time(GF_XMLNode
      *root)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:671,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:671,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:672,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:672,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:673,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:673,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:674,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:675,1
    - Dst: gf_mpd_parse_frac
      Src: /src/gpac/src/media_tools/mpd.c:676,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:678,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:679,1
    - Dst: gf_mpd_parse_frac
      Src: /src/gpac/src/media_tools/mpd.c:680,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:682,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:682,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:683,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:683,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:684,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:684,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:685,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:685,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:686,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:686,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:687,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:688,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:689,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:691,1
    - Dst: gf_mpd_parse_double
      Src: /src/gpac/src/media_tools/mpd.c:691,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:692,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:692,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:693,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:694,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:695,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:697,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:697,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:698,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:698,1
    - Dst: MPD_STORE_EXTENSION_ATTR
      Src: /src/gpac/src/media_tools/mpd.c:702,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 49
    argCount: 5
    argNames:
    - mpd
    - com
    - root
    - att
    - index
    argTypes:
    - GF_MPD*
    - GF_MPD_CommonAttributes*
    - GF_XMLNode*
    - GF_XMLAttribute*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 705
      start: 669
    functionDepth: 2
    functionLinenumber: 669
    functionLinenumberEnd: 705
    functionName: gf_mpd_parse_common_representation_attr
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mpd_parse_double
    - gf_mpd_parse_int
    - gf_mpd_parse_frac
    - gf_mpd_parse_bool
    - gf_mpd_parse_string
    - strcmp
    - MPD_STORE_EXTENSION_ATTR
    linkageType: ''
    returnType: void
    signature: void gf_mpd_parse_common_representation_attr(GF_MPD *mpd, GF_MPD_CommonAttributes
      *com, GF_XMLNode *root, GF_XMLAttribute *att, u32 *index)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:709,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:710,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:712,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:713,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:715,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:716,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:718,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:719,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:721,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:722,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:724,1
    - Dst: gf_mpd_parse_produce_ref_time
      Src: /src/gpac/src/media_tools/mpd.c:725,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:727,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:728,1
    - Dst: MPD_STORE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:732,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 6
    argNames:
    - mpd
    - com
    - root
    - child
    - index
    - child_idx
    argTypes:
    - GF_MPD*
    - GF_MPD_CommonAttributes*
    - GF_XMLNode*
    - GF_XMLNode*
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 707
    functionDepth: 3
    functionLinenumber: 707
    functionLinenumberEnd: 735
    functionName: gf_mpd_parse_common_representation_child
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - strcmp
    - gf_mpd_parse_produce_ref_time
    - gf_list_add
    - gf_mpd_parse_descriptor
    - MPD_STORE_EXTENSION_NODE
    linkageType: ''
    returnType: void
    signature: void gf_mpd_parse_common_representation_child(GF_MPD *mpd, GF_MPD_CommonAttributes
      *com, GF_XMLNode *root, GF_XMLNode *child, u32 *index, u32 child_idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:739,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:740,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:741,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:742,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:743,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - com
    argTypes:
    - GF_MPD_CommonAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 745
      start: 737
    functionDepth: 1
    functionLinenumber: 737
    functionLinenumberEnd: 745
    functionName: gf_mpd_init_common_attributes
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    linkageType: ''
    returnType: void
    signature: void gf_mpd_init_common_attributes(GF_MPD_CommonAttributes *com)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:750,1
    - Dst: gf_mpd_init_common_attributes
      Src: /src/gpac/src/media_tools/mpd.c:752,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:753,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:754,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 757
      start: 747
    functionDepth: 2
    functionLinenumber: 747
    functionLinenumberEnd: 757
    functionName: gf_mpd_representation_new
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_mpd_init_common_attributes
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_MPD_Representation
    signature: GF_MPD_Representation *gf_mpd_representation_new()
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:764,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:768,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:769,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:769,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:770,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:770,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:771,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:771,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:772,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:772,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:773,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:773,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:774,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:774,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:775,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:775,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:776,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:776,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:777,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:777,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:778,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:778,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:779,1
    - Dst: gf_parse_lfrac
      Src: /src/gpac/src/media_tools/mpd.c:779,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:780,1
    - Dst: gf_parse_lfrac
      Src: /src/gpac/src/media_tools/mpd.c:780,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:781,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:781,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:782,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:782,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:783,1
    - Dst: gf_mpd_parse_fraction
      Src: /src/gpac/src/media_tools/mpd.c:783,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:784,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:784,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:785,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:785,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:786,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:786,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:787,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:787,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:788,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:788,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:789,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:789,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:790,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:790,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:791,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:791,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:792,1
    - Dst: gf_mpd_parse_double
      Src: /src/gpac/src/media_tools/mpd.c:792,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:793,1
    - Dst: gf_mpd_parse_double
      Src: /src/gpac/src/media_tools/mpd.c:793,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:794,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:794,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:795,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:795,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:796,1
    - Dst: gf_mpd_parse_double
      Src: /src/gpac/src/media_tools/mpd.c:796,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:797,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:797,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:798,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:798,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:799,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:799,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:800,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:800,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 72
    argCount: 2
    argNames:
    - mpd
    - root
    argTypes:
    - GF_MPD*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 803
      start: 759
    functionDepth: 1
    functionLinenumber: 759
    functionLinenumberEnd: 803
    functionName: gf_mpd_parse_dasher_context
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_double
    - gf_mpd_parse_long_int
    - GF_SAFEALLOC
    - gf_mpd_parse_int
    - gf_mpd_parse_fraction
    - gf_mpd_parse_bool
    - gf_mpd_parse_string
    - gf_parse_lfrac
    - strcmp
    - gf_list_enum
    linkageType: ''
    returnType: GF_DASH_SegmenterContext
    signature: GF_DASH_SegmenterContext *gf_mpd_parse_dasher_context(GF_MPD *mpd,
      GF_XMLNode *root)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:812,1
    - Dst: gf_mpd_valid_child
      Src: /src/gpac/src/media_tools/mpd.c:814,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:816,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:817,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:819,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:822,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:825,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:826,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:826,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:827,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:827,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:828,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:828,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:829,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:829,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:830,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:830,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:831,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:831,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:832,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:832,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:833,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:833,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:834,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:834,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 36
    argCount: 2
    argNames:
    - mpd
    - root
    argTypes:
    - GF_MPD*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 805
    functionDepth: 1
    functionLinenumber: 805
    functionLinenumberEnd: 839
    functionName: gf_mpd_parse_segments_context
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_mpd_parse_long_int
    - GF_SAFEALLOC
    - gf_mpd_parse_int
    - gf_mpd_parse_string
    - strcmp
    - gf_list_add
    - gf_list_enum
    - gf_mpd_valid_child
    linkageType: ''
    returnType: GF_List
    signature: GF_List *gf_mpd_parse_segments_context(GF_MPD *mpd, GF_XMLNode *root)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_representation_new
      Src: /src/gpac/src/media_tools/mpd.c:849,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:850,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:854,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:855,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:855,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:856,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:856,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:857,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:857,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:858,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:858,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:859,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:859,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:860,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:860,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:861,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:861,1
    - Dst: gf_mpd_parse_common_representation_attr
      Src: /src/gpac/src/media_tools/mpd.c:862,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:867,1
    - Dst: gf_mpd_valid_child
      Src: /src/gpac/src/media_tools/mpd.c:868,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:870,1
    - Dst: gf_mpd_parse_base_url
      Src: /src/gpac/src/media_tools/mpd.c:871,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:874,1
    - Dst: gf_mpd_parse_segment_base
      Src: /src/gpac/src/media_tools/mpd.c:876,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:878,1
    - Dst: gf_mpd_parse_segment_list
      Src: /src/gpac/src/media_tools/mpd.c:879,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:881,1
    - Dst: gf_mpd_parse_segment_template
      Src: /src/gpac/src/media_tools/mpd.c:883,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:891,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:892,1
    - Dst: gf_mpd_parse_dasher_context
      Src: /src/gpac/src/media_tools/mpd.c:893,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:895,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:896,1
    - Dst: gf_mpd_parse_segments_context
      Src: /src/gpac/src/media_tools/mpd.c:897,1
    - Dst: gf_mpd_parse_common_representation_child
      Src: /src/gpac/src/media_tools/mpd.c:899,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 59
    argCount: 3
    argNames:
    - mpd
    - container
    - root
    argTypes:
    - GF_MPD*
    - GF_List*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 904
      start: 841
    functionDepth: 6
    functionLinenumber: 841
    functionLinenumberEnd: 904
    functionName: gf_mpd_parse_representation
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_mpd_representation_new
    - gf_mpd_parse_segments_context
    - gf_mpd_parse_int
    - gf_mpd_parse_common_representation_attr
    - gf_mpd_parse_common_representation_child
    - gf_mpd_parse_string
    - gf_mpd_parse_segment_template
    - gf_mpd_parse_base_url
    - gf_mpd_parse_segment_base
    - strcmp
    - gf_list_add
    - gf_mpd_parse_segment_list
    - gf_mpd_parse_dasher_context
    - gf_list_enum
    - gf_mpd_valid_child
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mpd_parse_representation(GF_MPD *mpd, GF_List *container,
      GF_XMLNode *root)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:908,1
    - Dst: gf_mpd_init_common_attributes
      Src: /src/gpac/src/media_tools/mpd.c:910,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:911,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:912,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:913,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:914,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:915,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:916,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:917,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:918,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:919,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 924
      start: 906
    functionDepth: 2
    functionLinenumber: 906
    functionLinenumberEnd: 924
    functionName: gf_mpd_adaptation_set_new
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_mpd_init_common_attributes
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_MPD_AdaptationSet
    signature: GF_MPD_AdaptationSet *gf_mpd_adaptation_set_new()
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_adaptation_set_new
      Src: /src/gpac/src/media_tools/mpd.c:934,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:937,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:941,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:942,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:942,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:943,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:943,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:944,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:944,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:945,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:945,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:946,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:946,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:947,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:947,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:948,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:949,1
    - Dst: gf_mpd_parse_frac
      Src: /src/gpac/src/media_tools/mpd.c:950,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:952,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:952,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:953,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:953,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:954,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:954,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:955,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:955,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:956,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:956,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:957,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:957,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:958,1
    - Dst: gf_mpd_parse_frac
      Src: /src/gpac/src/media_tools/mpd.c:958,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:959,1
    - Dst: gf_mpd_parse_frac
      Src: /src/gpac/src/media_tools/mpd.c:959,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:960,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:960,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:961,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:961,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:962,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:962,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:963,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:964,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:965,1
    - Dst: gf_mpd_parse_common_representation_attr
      Src: /src/gpac/src/media_tools/mpd.c:967,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:972,1
    - Dst: gf_mpd_valid_child
      Src: /src/gpac/src/media_tools/mpd.c:973,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:974,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:975,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:978,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:979,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:982,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:983,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:986,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:987,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:990,1
    - Dst: gf_mpd_parse_base_url
      Src: /src/gpac/src/media_tools/mpd.c:991,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:994,1
    - Dst: gf_mpd_parse_content_component
      Src: /src/gpac/src/media_tools/mpd.c:995,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:997,1
    - Dst: gf_mpd_parse_inband_event
      Src: /src/gpac/src/media_tools/mpd.c:998,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1000,1
    - Dst: gf_mpd_parse_segment_base
      Src: /src/gpac/src/media_tools/mpd.c:1001,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1003,1
    - Dst: gf_mpd_parse_segment_list
      Src: /src/gpac/src/media_tools/mpd.c:1004,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1006,1
    - Dst: gf_mpd_parse_segment_template
      Src: /src/gpac/src/media_tools/mpd.c:1007,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1009,1
    - Dst: gf_mpd_parse_representation
      Src: /src/gpac/src/media_tools/mpd.c:1010,1
    - Dst: gf_mpd_parse_common_representation_child
      Src: /src/gpac/src/media_tools/mpd.c:1013,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 114
    argCount: 3
    argNames:
    - mpd
    - container
    - root
    argTypes:
    - GF_MPD*
    - GF_List*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 926
    functionDepth: 7
    functionLinenumber: 926
    functionLinenumberEnd: 1018
    functionName: gf_mpd_parse_adaptation_set
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mpd_parse_common_representation_attr
    - gf_mpd_parse_base_url
    - gf_mpd_parse_content_component
    - gf_mpd_parse_segment_list
    - gf_mpd_parse_descriptor
    - gf_mpd_parse_int
    - gf_mpd_parse_common_representation_child
    - gf_list_add
    - gf_mpd_valid_child
    - gf_mpd_adaptation_set_new
    - strstr
    - gf_mpd_parse_string
    - gf_mpd_parse_segment_template
    - gf_mpd_parse_segment_base
    - gf_list_enum
    - gf_mpd_parse_frac
    - gf_mpd_parse_bool
    - strcmp
    - gf_mpd_parse_inband_event
    - gf_mpd_parse_representation
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mpd_parse_adaptation_set(GF_MPD *mpd, GF_List *container,
      GF_XMLNode *root)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:1022,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1024,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1025,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1026,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1028
      start: 1020
    functionDepth: 1
    functionLinenumber: 1020
    functionLinenumberEnd: 1028
    functionName: gf_mpd_period_new
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_MPD_Period
    signature: GF_MPD_Period *gf_mpd_period_new()
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1038,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:1041,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:1043,1
    - Dst: gf_mpd_period_new
      Src: /src/gpac/src/media_tools/mpd.c:1048,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:1052,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:1056,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:1057,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:1057,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:1058,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1058,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1059,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:1059,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1060,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:1062,1
    - Dst: gf_mpd_parse_duration
      Src: /src/gpac/src/media_tools/mpd.c:1064,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1067,1
    - Dst: gf_mpd_parse_duration
      Src: /src/gpac/src/media_tools/mpd.c:1067,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1068,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:1068,1
    - Dst: MPD_STORE_EXTENSION_ATTR
      Src: /src/gpac/src/media_tools/mpd.c:1070,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:1076,1
    - Dst: gf_mpd_valid_child
      Src: /src/gpac/src/media_tools/mpd.c:1077,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1079,1
    - Dst: gf_mpd_parse_base_url
      Src: /src/gpac/src/media_tools/mpd.c:1080,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1083,1
    - Dst: gf_mpd_parse_segment_base
      Src: /src/gpac/src/media_tools/mpd.c:1084,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1086,1
    - Dst: gf_mpd_parse_segment_list
      Src: /src/gpac/src/media_tools/mpd.c:1087,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1089,1
    - Dst: gf_mpd_parse_segment_template
      Src: /src/gpac/src/media_tools/mpd.c:1090,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1092,1
    - Dst: gf_mpd_parse_adaptation_set
      Src: /src/gpac/src/media_tools/mpd.c:1093,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1096,1
    - Dst: MPD_STORE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:1099,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 68
    argCount: 2
    argNames:
    - mpd
    - root
    argTypes:
    - GF_MPD*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1104
      start: 1030
    functionDepth: 8
    functionLinenumber: 1030
    functionLinenumberEnd: 1104
    functionName: gf_mpd_parse_period
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_mpd_period_new
    - GF_LOG
    - gf_mpd_parse_bool
    - strstr
    - gf_mpd_parse_string
    - gf_mpd_parse_segment_template
    - gf_mpd_parse_base_url
    - gf_mpd_parse_segment_base
    - strcmp
    - gf_list_add
    - gf_mpd_parse_duration
    - MPD_STORE_EXTENSION_ATTR
    - gf_mpd_parse_segment_list
    - gf_mpd_parse_adaptation_set
    - gf_list_enum
    - gf_mpd_valid_child
    - MPD_STORE_EXTENSION_NODE
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mpd_parse_period(GF_MPD *mpd, GF_XMLNode *root)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:1110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1112
      start: 1106
    functionDepth: 1
    functionLinenumber: 1106
    functionLinenumberEnd: 1112
    functionName: gf_mpd_new
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 2
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_mpd_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:1117,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/mpd.c:1118,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/media_tools/mpd.c:1119,1
    - Dst: __destructor
      Src: /src/gpac/src/media_tools/mpd.c:1120,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpd.c:1122,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - list
    - reset_only
    argTypes:
    - GF_List*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1123
      start: 1114
    functionDepth: 1
    functionLinenumber: 1114
    functionLinenumberEnd: 1123
    functionName: gf_mpd_del_list
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - __destructor
    - gf_list_last
    - gf_list_rem_last
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_mpd_del_list(GF_List *list, void (*__destructor)(void *), Bool
      reset_only)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1128,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1129,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1130,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1131,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1132
      start: 1125
    functionDepth: 0
    functionLinenumber: 1125
    functionLinenumberEnd: 1132
    functionName: gf_mpd_base_url_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_mpd_base_url_free(void *_item)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1137,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1138,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1139,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1140
      start: 1134
    functionDepth: 0
    functionLinenumber: 1134
    functionLinenumberEnd: 1140
    functionName: gf_mpd_url_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_mpd_url_free(void *_item)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1144
      start: 1141
    functionDepth: 0
    functionLinenumber: 1141
    functionLinenumberEnd: 1144
    functionName: gf_mpd_string_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_mpd_string_free(void *_item)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1149,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1150,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1151,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1152,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1153,1
    - Dst: MPD_FREE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:1154,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1155,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1156
      start: 1146
    functionDepth: 1
    functionLinenumber: 1146
    functionLinenumberEnd: 1156
    functionName: gf_mpd_prog_info_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - MPD_FREE_EXTENSION_NODE
    linkageType: ''
    returnType: void
    signature: void gf_mpd_prog_info_free(void *_item)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1160,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1161,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1162,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1163,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1164,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1165,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - _ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1166
      start: 1157
    functionDepth: 0
    functionLinenumber: 1157
    functionLinenumberEnd: 1166
    functionName: gf_mpd_segment_url_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_mpd_segment_url_free(void *_ptr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_url_free
      Src: /src/gpac/src/media_tools/mpd.c:1170,1
    - Dst: gf_mpd_url_free
      Src: /src/gpac/src/media_tools/mpd.c:1171,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1172,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1173,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1174
      start: 1167
    functionDepth: 1
    functionLinenumber: 1167
    functionLinenumberEnd: 1174
    functionName: gf_mpd_segment_base_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_url_free
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_mpd_segment_base_free(void *_item)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1179
      start: 1176
    functionDepth: 0
    functionLinenumber: 1176
    functionLinenumberEnd: 1179
    functionName: gf_mpd_segment_entry_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_mpd_segment_entry_free(void *_item)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1183,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1185
      start: 1180
    functionDepth: 2
    functionLinenumber: 1180
    functionLinenumberEnd: 1185
    functionName: gf_mpd_segment_timeline_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mpd_del_list
    linkageType: ''
    returnType: void
    signature: void gf_mpd_segment_timeline_free(void *_item)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - list
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1191
      start: 1188
    functionDepth: 2
    functionLinenumber: 1188
    functionLinenumberEnd: 1191
    functionName: gf_mpd_segment_url_list_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_del_list
    linkageType: ''
    returnType: void
    signature: void gf_mpd_segment_url_list_free(GF_List *list)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1197,1
    - Dst: gf_mpd_url_free
      Src: /src/gpac/src/media_tools/mpd.c:1198,1
    - Dst: gf_mpd_url_free
      Src: /src/gpac/src/media_tools/mpd.c:1199,1
    - Dst: gf_mpd_url_free
      Src: /src/gpac/src/media_tools/mpd.c:1200,1
    - Dst: gf_mpd_segment_timeline_free
      Src: /src/gpac/src/media_tools/mpd.c:1201,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1202,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1203,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1204,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1205,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1206
      start: 1194
    functionDepth: 3
    functionLinenumber: 1194
    functionLinenumberEnd: 1206
    functionName: gf_mpd_segment_list_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mpd_del_list
    - gf_mpd_url_free
    - gf_mpd_segment_timeline_free
    linkageType: ''
    returnType: void
    signature: void gf_mpd_segment_list_free(void *_item)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_url_free
      Src: /src/gpac/src/media_tools/mpd.c:1211,1
    - Dst: gf_mpd_url_free
      Src: /src/gpac/src/media_tools/mpd.c:1212,1
    - Dst: gf_mpd_url_free
      Src: /src/gpac/src/media_tools/mpd.c:1213,1
    - Dst: gf_mpd_segment_timeline_free
      Src: /src/gpac/src/media_tools/mpd.c:1214,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1215,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1216,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1217,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1218,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1219,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1220
      start: 1208
    functionDepth: 3
    functionLinenumber: 1208
    functionLinenumberEnd: 1220
    functionName: gf_mpd_segment_template_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_url_free
    - gf_free
    - gf_mpd_segment_timeline_free
    linkageType: ''
    returnType: void
    signature: void gf_mpd_segment_template_free(void *_item)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:1225,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1227,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1228,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1229,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - id
    - schemeIdUri
    - value
    argTypes:
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1231
      start: 1223
    functionDepth: 1
    functionLinenumber: 1223
    functionLinenumberEnd: 1231
    functionName: gf_mpd_descriptor_new
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_MPD_Descriptor
    signature: GF_MPD_Descriptor *gf_mpd_descriptor_new(const char *id, const char
      *schemeIdUri, const char *value)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1236,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1237,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1238,1
    - Dst: MPD_FREE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:1239,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1241,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1242
      start: 1233
    functionDepth: 1
    functionLinenumber: 1233
    functionLinenumberEnd: 1242
    functionName: gf_mpd_descriptor_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 1
    functionsReached:
    - gf_free
    - MPD_FREE_EXTENSION_NODE
    linkageType: ''
    returnType: void
    signature: void gf_mpd_descriptor_free(void *item)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1247,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1248,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1249,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1250
      start: 1244
    functionDepth: 0
    functionLinenumber: 1244
    functionLinenumberEnd: 1250
    functionName: gf_mpd_content_component_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_mpd_content_component_free(void *item)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1254,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1255,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1256,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1257
      start: 1252
    functionDepth: 0
    functionLinenumber: 1252
    functionLinenumberEnd: 1257
    functionName: gf_mpd_inband_event_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_mpd_inband_event_free(void *item)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1262,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1263,1
    - Dst: gf_mpd_descriptor_free
      Src: /src/gpac/src/media_tools/mpd.c:1264,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1265,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1266
      start: 1259
    functionDepth: 2
    functionLinenumber: 1259
    functionLinenumberEnd: 1266
    functionName: gf_mpd_producer_reftime_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mpd_descriptor_free
    linkageType: ''
    returnType: void
    signature: void gf_mpd_producer_reftime_free(void *item)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1270,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1271,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1272,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1273,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1274,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1275,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1276,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1277,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1278,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1279,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1280,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1281,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_MPD_CommonAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1282
      start: 1268
    functionDepth: 2
    functionLinenumber: 1268
    functionLinenumberEnd: 1282
    functionName: gf_mpd_common_attributes_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mpd_del_list
    linkageType: ''
    returnType: void
    signature: void gf_mpd_common_attributes_free(GF_MPD_CommonAttributes *ptr)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_common_attributes_free
      Src: /src/gpac/src/media_tools/mpd.c:1287,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1288,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1289,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1290,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:1294,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:1296,1
    - Dst: gf_blob_unregister
      Src: /src/gpac/src/media_tools/mpd.c:1297,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1298,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1299,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1302,1
    - Dst: gf_blob_unregister
      Src: /src/gpac/src/media_tools/mpd.c:1305,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1306,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1308,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1310,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1311,1
    - Dst: gf_mpd_segment_base_free
      Src: /src/gpac/src/media_tools/mpd.c:1312,1
    - Dst: gf_mpd_segment_list_free
      Src: /src/gpac/src/media_tools/mpd.c:1313,1
    - Dst: gf_mpd_segment_template_free
      Src: /src/gpac/src/media_tools/mpd.c:1314,1
    - Dst: MPD_FREE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:1315,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:1317,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/mpd.c:1318,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1319,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1320,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1321,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpd.c:1323,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1327,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1329,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1330,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1331,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1332,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1333,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1334,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:1337,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/mpd.c:1338,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1339,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1340,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1341,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1342,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1343,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1344,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpd.c:1346,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1348,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1349,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpd.c:1350,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1351,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1352,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 81
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1353
      start: 1284
    functionDepth: 4
    functionLinenumber: 1284
    functionLinenumberEnd: 1353
    functionName: gf_mpd_representation_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mpd_segment_template_free
    - gf_fclose
    - gf_list_pop_back
    - sscanf
    - MPD_FREE_EXTENSION_NODE
    - gf_blob_unregister
    - gf_mpd_segment_base_free
    - gf_list_count
    - gf_mpd_segment_list_free
    - strnicmp
    - gf_mpd_common_attributes_free
    - gf_mpd_del_list
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_mpd_representation_free(void *_item)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_common_attributes_free
      Src: /src/gpac/src/media_tools/mpd.c:1358,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1359,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1360,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1361,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1362,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1363,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1364,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1365,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1366,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1367,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1368,1
    - Dst: gf_mpd_segment_base_free
      Src: /src/gpac/src/media_tools/mpd.c:1369,1
    - Dst: gf_mpd_segment_list_free
      Src: /src/gpac/src/media_tools/mpd.c:1370,1
    - Dst: gf_mpd_segment_template_free
      Src: /src/gpac/src/media_tools/mpd.c:1371,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1372,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1373,1
    - Dst: MPD_FREE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:1374,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1375,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1376
      start: 1355
    functionDepth: 4
    functionLinenumber: 1355
    functionLinenumberEnd: 1376
    functionName: gf_mpd_adaptation_set_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mpd_segment_template_free
    - MPD_FREE_EXTENSION_NODE
    - gf_mpd_segment_base_free
    - gf_mpd_segment_list_free
    - gf_mpd_common_attributes_free
    - gf_mpd_del_list
    linkageType: ''
    returnType: void
    signature: void gf_mpd_adaptation_set_free(void *_item)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1381,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1382,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1383,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1384,1
    - Dst: gf_mpd_segment_base_free
      Src: /src/gpac/src/media_tools/mpd.c:1385,1
    - Dst: gf_mpd_segment_list_free
      Src: /src/gpac/src/media_tools/mpd.c:1386,1
    - Dst: gf_mpd_segment_template_free
      Src: /src/gpac/src/media_tools/mpd.c:1387,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1389,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1390,1
    - Dst: MPD_FREE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:1391,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1392,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1393,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1394
      start: 1378
    functionDepth: 4
    functionLinenumber: 1378
    functionLinenumberEnd: 1394
    functionName: gf_mpd_period_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mpd_segment_template_free
    - MPD_FREE_EXTENSION_NODE
    - gf_mpd_segment_base_free
    - gf_mpd_segment_list_free
    - gf_mpd_del_list
    linkageType: ''
    returnType: void
    signature: void gf_mpd_period_free(void *_item)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/media_tools/mpd.c:1401,1
    - Dst: gf_mpd_string_free
      Src: /src/gpac/src/media_tools/mpd.c:1402,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1406,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1407,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1408,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1409,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1410,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1411,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1412,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1413,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1414,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1415,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1416,1
    - Dst: MPD_FREE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:1417,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1418,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 1
    argNames:
    - mpd
    argTypes:
    - GF_MPD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1419
      start: 1396
    functionDepth: 2
    functionLinenumber: 1396
    functionLinenumberEnd: 1419
    functionName: gf_mpd_del
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 2
    functionsReached:
    - gf_free
    - MPD_FREE_EXTENSION_NODE
    - gf_mpd_del_list
    - gf_mpd_string_free
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mpd_del(GF_MPD *mpd)
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:1434,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1435,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1436,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1436,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1440,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:1447,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1448,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1448,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1448,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:1457,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1460,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1460,1
    - Dst: gf_mpd_parse_period
      Src: /src/gpac/src/media_tools/mpd.c:1461,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:1465,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1466,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1467,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:1468,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1469,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1470,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:1471,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1472,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1473,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1474,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1475,1
    - Dst: gf_mpd_parse_date
      Src: /src/gpac/src/media_tools/mpd.c:1476,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1477,1
    - Dst: gf_mpd_parse_date
      Src: /src/gpac/src/media_tools/mpd.c:1478,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1479,1
    - Dst: gf_mpd_parse_date
      Src: /src/gpac/src/media_tools/mpd.c:1480,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1481,1
    - Dst: gf_mpd_parse_duration
      Src: /src/gpac/src/media_tools/mpd.c:1482,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1483,1
    - Dst: gf_mpd_parse_duration_u32
      Src: /src/gpac/src/media_tools/mpd.c:1484,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1485,1
    - Dst: gf_mpd_parse_duration_u32
      Src: /src/gpac/src/media_tools/mpd.c:1486,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1487,1
    - Dst: gf_mpd_parse_duration_u32
      Src: /src/gpac/src/media_tools/mpd.c:1488,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1489,1
    - Dst: gf_mpd_parse_duration_u32
      Src: /src/gpac/src/media_tools/mpd.c:1490,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1491,1
    - Dst: gf_mpd_parse_duration_u32
      Src: /src/gpac/src/media_tools/mpd.c:1492,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1493,1
    - Dst: gf_mpd_parse_duration_u32
      Src: /src/gpac/src/media_tools/mpd.c:1494,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1495,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:1496,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1497,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:1498,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1499,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:1500,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1501,1
    - Dst: gf_mpd_parse_duration_u32
      Src: /src/gpac/src/media_tools/mpd.c:1502,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1503,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:1504,1
    - Dst: MPD_STORE_EXTENSION_ATTR
      Src: /src/gpac/src/media_tools/mpd.c:1506,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:1514,1
    - Dst: gf_mpd_valid_child
      Src: /src/gpac/src/media_tools/mpd.c:1515,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1518,1
    - Dst: gf_mpd_parse_program_info
      Src: /src/gpac/src/media_tools/mpd.c:1519,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1521,1
    - Dst: gf_mpd_parse_text_content
      Src: /src/gpac/src/media_tools/mpd.c:1522,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:1523,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1524,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1524,1
    - Dst: gf_mpd_parse_period
      Src: /src/gpac/src/media_tools/mpd.c:1525,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1527,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:1528,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1529,1
    - Dst: gf_mpd_parse_base_url
      Src: /src/gpac/src/media_tools/mpd.c:1530,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1532,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:1533,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1534,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:1535,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1537,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:1538,1
    - Dst: MPD_STORE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:1540,1
    CyclomaticComplexity: 61
    EdgeCount: 61
    ICount: 141
    argCount: 3
    argNames:
    - root
    - mpd
    - default_base_url
    argTypes:
    - GF_XMLNode*
    - GF_MPD*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1546
      start: 1422
    functionDepth: 9
    functionLinenumber: 1422
    functionLinenumberEnd: 1546
    functionName: gf_mpd_complete_from_dom
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mpd_parse_duration_u32
    - gf_mpd_parse_text_content
    - gf_mpd_parse_base_url
    - gf_mpd_parse_program_info
    - gf_mpd_parse_descriptor
    - MPD_STORE_EXTENSION_ATTR
    - gf_mpd_parse_long_int
    - gf_mpd_parse_date
    - strncmp
    - gf_list_add
    - gf_mpd_valid_child
    - MPD_STORE_EXTENSION_NODE
    - GF_LOG
    - gf_mpd_parse_string
    - gf_list_enum
    - gf_mpd_parse_period
    - strcmp
    - gf_mpd_parse_duration
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mpd_complete_from_dom(GF_XMLNode *root, GF_MPD *mpd, const
      char *default_base_url)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:1550,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1551,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1552,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1553,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1554,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1555,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1556,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1557,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1558,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - mpd
    argTypes:
    - GF_MPD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1559
      start: 1548
    functionDepth: 1
    functionLinenumber: 1548
    functionLinenumberEnd: 1559
    functionName: gf_mpd_init_struct
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_list_new
    linkageType: ''
    returnType: void
    signature: void gf_mpd_init_struct(GF_MPD *mpd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_init_struct
      Src: /src/gpac/src/media_tools/mpd.c:1566,1
    - Dst: gf_mpd_complete_from_dom
      Src: /src/gpac/src/media_tools/mpd.c:1573,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - root
    - mpd
    - default_base_url
    argTypes:
    - GF_XMLNode*
    - GF_MPD*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1574
      start: 1561
    functionDepth: 10
    functionLinenumber: 1561
    functionLinenumberEnd: 1574
    functionName: gf_mpd_init_from_dom
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 1
    functionsReached:
    - gf_mpd_init_struct
    - gf_mpd_complete_from_dom
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mpd_init_from_dom(GF_XMLNode *root, GF_MPD *mpd, const
      char *default_base_url)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:1580,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:1582,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:1583,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:1584,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:1585,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:1596,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1599,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:1618,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:1620,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1623,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 55
    argCount: 3
    argNames:
    - pl
    - pe
    - bandwidth
    argTypes:
    - MasterPlaylist*
    - PlaylistElement*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1633
      start: 1577
    functionDepth: 1
    functionLinenumber: 1577
    functionLinenumberEnd: 1633
    functionName: group_to_codecs
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_strdup
    - strstr
    - gf_list_count
    - strcmp
    - strchr
    linkageType: ''
    returnType: char
    signature: char *group_to_codecs(MasterPlaylist *pl, PlaylistElement *pe, u32
      *bandwidth)
  - BBCount: 147
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_init_struct
      Src: /src/gpac/src/media_tools/mpd.c:1648,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:1653,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:1655,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1660,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:1672,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1675,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1676,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1677,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/mpd.c:1677,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1678,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/media_tools/mpd.c:1679,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1680,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/media_tools/mpd.c:1680,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1682,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1683,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:1684,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:1686,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1688,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1689,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1690,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:1691,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:1706,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:1712,1
    - Dst: gf_mpd_init_common_attributes
      Src: /src/gpac/src/media_tools/mpd.c:1715,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1716,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1717,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1718,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1719,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1720,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1721,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1722,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1723,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:1727,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:1731,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:1732,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:1737,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:1741,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:1747,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:1748,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1754,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:1755,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:1758,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:1761,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:1762,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:1780,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1783,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1785,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1787,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1789,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1791,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1793,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:1795,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1798,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:1799,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:1810,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1815,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1817,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1819,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:1833,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:1836,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:1838,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:1840,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:1843,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:1848,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/mpd.c:1850,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1865,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1871,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:1878,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1883,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:1885,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:1886,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1891,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1891,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1892,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1898,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpd.c:1913,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:1920,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:1921,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1922,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpd.c:1924,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:1928,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:1928,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:1929,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:1931,1
    - Dst: gf_dm_wget
      Src: /src/gpac/src/media_tools/mpd.c:1935,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:1945,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/media_tools/mpd.c:1945,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1947,1
    - Dst: gf_media_import
      Src: /src/gpac/src/media_tools/mpd.c:1950,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1954,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1955,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/mpd.c:1963,1
    - Dst: gf_fsize
      Src: /src/gpac/src/media_tools/mpd.c:1965,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpd.c:1966,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/media_tools/mpd.c:1978,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:1983,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:1984,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2001,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2002,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2005,1
    - Dst: gf_mpd_init_common_attributes
      Src: /src/gpac/src/media_tools/mpd.c:2007,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:2008,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:2009,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:2012,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:2019,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:2021,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2022,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:2025,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2026,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/mpd.c:2028,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/mpd.c:2029,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/mpd.c:2029,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2033,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2035,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2038,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2040,1
    - Dst: group_to_codecs
      Src: /src/gpac/src/media_tools/mpd.c:2043,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2067,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2070,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:2071,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2072,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:2073,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:2074,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/mpd.c:2093,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/mpd.c:2094,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:2096,1
    - Dst: gf_url_concatenate_parent
      Src: /src/gpac/src/media_tools/mpd.c:2099,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2108,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:2110,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:2115,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2117,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2119,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2124,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2128,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2131,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2132,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2138,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:2141,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2145,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2151,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:2155,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2165,1
    - Dst: strpbrk
      Src: /src/gpac/src/media_tools/mpd.c:2176,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2179,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2181,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2182,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:2185,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2187,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2188,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:2193,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:2194,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2195,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2197,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2200,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2202,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2205,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2207,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2209,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2219,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:2224,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2228,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2231,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2234,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2250,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2271,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:2273,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2275,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:2279,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpd.c:2297,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2303,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:2306,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2310,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2311,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:2318,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2324,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2330,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2332,1
    CyclomaticComplexity: 205
    EdgeCount: 205
    ICount: 574
    argCount: 14
    argNames:
    - pl
    - m3u8_file
    - src_base_url
    - mpd_file
    - title
    - update_interval
    - mimeTypeForM3U8Segments
    - do_import
    - use_mpd_templates
    - use_segment_timeline
    - is_end
    - max_dur
    - mpd
    - parse_sub_playlist
    argTypes:
    - MasterPlaylist*
    - char*
    - char*
    - char*
    - char*
    - Double
    - char*
    - Bool
    - Bool
    - Bool
    - Bool
    - u32
    - GF_MPD*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2336
      start: 1634
    functionDepth: 2
    functionLinenumber: 1634
    functionLinenumberEnd: 2336
    functionName: gf_m3u8_fill_mpd_struct
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - gf_file_exists
    - strpbrk
    - gf_list_count
    - memset
    - gf_fopen
    - atoi
    - strchr
    - gf_file_basename
    - gf_strdup
    - gf_list_new
    - gf_list_get
    - strrchr
    - memcpy
    - sprintf
    - strncmp
    - gf_fsize
    - gf_list_add
    - stricmp
    - gf_dynstrcat
    - gf_mpd_init_common_attributes
    - memmove
    - GF_LOG
    - gf_sys_is_test_mode
    - strstr
    - gf_mpd_init_struct
    - strlen
    - gf_malloc
    - gf_media_import
    - group_to_codecs
    - gf_fclose
    - gf_url_concatenate
    - gf_url_concatenate_parent
    - gf_gpac_version
    - strcmp
    - gf_file_delete
    - gf_file_ext_start
    - gf_dm_wget
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_m3u8_fill_mpd_struct(MasterPlaylist *pl, const char *m3u8_file,
      const char *src_base_url, const char *mpd_file, char *title, Double update_interval,
      char *mimeTypeForM3U8Segments, Bool do_import, Bool use_mpd_templates, Bool
      use_segment_timeline, Bool is_end, u32 max_dur, GF_MPD *mpd, Bool parse_sub_playlist)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_m3u8_parse_master_playlist
      Src: /src/gpac/src/media_tools/mpd.c:2355,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2357,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/mpd.c:2357,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/mpd.c:2358,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/media_tools/mpd.c:2362,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:2370,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:2371,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:2372,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:2374,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2382,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:2383,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:2397,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:2398,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:2400,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2402,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2403,1
    - Dst: GF_FileDownload*::new_session
      Src: /src/gpac/src/media_tools/mpd.c:2408,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2410,1
    - Dst: gf_m3u8_parse_sub_playlist
      Src: /src/gpac/src/media_tools/mpd.c:2415,1
    - Dst: GF_FileDownload*::get_cache_name
      Src: /src/gpac/src/media_tools/mpd.c:2415,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:2419,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2420,1
    - Dst: gf_dm_wget
      Src: /src/gpac/src/media_tools/mpd.c:2422,1
    - Dst: gf_m3u8_parse_sub_playlist
      Src: /src/gpac/src/media_tools/mpd.c:2424,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2428,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/media_tools/mpd.c:2431,1
    - Dst: gf_m3u8_parse_sub_playlist
      Src: /src/gpac/src/media_tools/mpd.c:2433,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2436,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2440,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2449,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/mpd.c:2450,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2471,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2474,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:2479,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:2482,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:2483,1
    - Dst: gf_m3u8_fill_mpd_struct
      Src: /src/gpac/src/media_tools/mpd.c:2485,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/mpd.c:2487,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 113
    argCount: 12
    argNames:
    - m3u8_file
    - base_url
    - mpd_file
    - reload_count
    - mimeTypeForM3U8Segments
    - do_import
    - use_mpd_templates
    - use_segment_timeline
    - getter
    - mpd
    - parse_sub_playlist
    - keep_files
    argTypes:
    - char*
    - char*
    - char*
    - u32
    - char*
    - Bool
    - Bool
    - Bool
    - GF_FileDownload*
    - GF_MPD*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2490
      start: 2338
    functionDepth: 3
    functionLinenumber: 2338
    functionLinenumberEnd: 2490
    functionName: gf_m3u8_to_mpd
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_m3u8_parse_sub_playlist
    - gf_assert
    - gf_list_get
    - GF_LOG
    - strlen
    - gf_url_concatenate
    - strstr
    - gf_m3u8_fill_mpd_struct
    - GF_FileDownload*::get_cache_name
    - gf_file_delete
    - gf_m3u8_master_playlist_del
    - strcmp
    - gf_error_to_string
    - gf_dm_wget
    - gf_m3u8_parse_master_playlist
    - gf_list_enum
    - GF_FileDownload*::new_session
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_m3u8_to_mpd(const char *m3u8_file, const char *base_url,\n
      \                     const char *mpd_file,\n                      u32 reload_count,
      char *mimeTypeForM3U8Segments, Bool do_import, Bool use_mpd_templates, Bool
      use_segment_timeline, GF_FileDownload *getter,\n                      GF_MPD
      *mpd, Bool parse_sub_playlist, Bool keep_files)"
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2509,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2513,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:2518,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:2520,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/media_tools/mpd.c:2523,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2525,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2526,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/media_tools/mpd.c:2529,1
    - Dst: gf_sha1_csum
      Src: /src/gpac/src/media_tools/mpd.c:2531,1
    - Dst: gf_url_is_local
      Src: /src/gpac/src/media_tools/mpd.c:2532,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/media_tools/mpd.c:2533,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2534,1
    - Dst: gf_sha1_file
      Src: /src/gpac/src/media_tools/mpd.c:2538,1
    - Dst: GF_FileDownload*::new_session
      Src: /src/gpac/src/media_tools/mpd.c:2541,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2543,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/mpd.c:2543,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2544,1
    - Dst: GF_FileDownload*::get_status
      Src: /src/gpac/src/media_tools/mpd.c:2548,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2551,1
    - Dst: GF_FileDownload*::get_cache_name
      Src: /src/gpac/src/media_tools/mpd.c:2558,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2560,1
    - Dst: gf_sha1_file
      Src: /src/gpac/src/media_tools/mpd.c:2563,1
    - Dst: memcmp
      Src: /src/gpac/src/media_tools/mpd.c:2565,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2566,1
    - Dst: gf_m3u8_parse_sub_playlist
      Src: /src/gpac/src/media_tools/mpd.c:2570,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2572,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2574,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/mpd.c:2575,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:2579,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:2580,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:2582,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2583,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/mpd.c:2584,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:2588,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:2588,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpd.c:2591,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2597,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:2598,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2599,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:2599,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/mpd.c:2600,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2604,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2613,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2615,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:2616,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2618,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2620,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2624,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:2627,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:2627,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2628,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2629,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2635,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:2652,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:2653,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2661,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:2666,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/mpd.c:2668,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2686,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:2691,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:2708,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2714,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:2718,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:2744,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:2749,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpd.c:2757,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2761,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:2768,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpd.c:2769,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2773,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/mpd.c:2777,1
    CyclomaticComplexity: 69
    EdgeCount: 69
    ICount: 222
    argCount: 6
    argNames:
    - rep
    - base_url
    - getter
    - is_static
    - duration
    - last_sig
    argTypes:
    - GF_MPD_Representation*
    - char*
    - GF_FileDownload*
    - Bool*
    - u64*
    - u8[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2780
      start: 2492
    functionDepth: 1
    functionLinenumber: 2492
    functionLinenumberEnd: 2780
    functionName: gf_m3u8_solve_representation_xlink
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memcmp
    - GF_SAFEALLOC
    - gf_file_exists
    - gf_sha1_csum
    - gf_list_count
    - GF_FileDownload*::get_status
    - GF_FileDownload*::get_cache_name
    - gf_assert
    - gf_list_get
    - gf_strdup
    - gf_list_new
    - gf_blob_get
    - memcpy
    - strncmp
    - gf_list_add
    - gf_blob_release
    - GF_FileDownload*::new_session
    - gf_m3u8_parse_sub_playlist
    - GF_LOG
    - strstr
    - gf_url_is_local
    - gf_error_to_string
    - gf_list_del
    - gf_url_concatenate
    - gf_sha1_file
    - gf_m3u8_master_playlist_del
    - strcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m3u8_solve_representation_xlink(GF_MPD_Representation
      *rep, const char *base_url, GF_FileDownload *getter, Bool *is_static, u64 *duration,
      u8 last_sig[GF_SHA1_DIGEST_SIZE])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_parse_segment_list
      Src: /src/gpac/src/media_tools/mpd.c:2785,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2786
      start: 2782
    functionDepth: 6
    functionLinenumber: 2782
    functionLinenumberEnd: 2786
    functionName: GF_MPD_SegmentList *gf_mpd_solve_segment_list_xlink(GF_MPD *mpd,
      GF_XMLNode *root)
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_segment_list
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_MPD_SegmentList *gf_mpd_solve_segment_list_xlink(GF_MPD
      *mpd, GF_XMLNode *root)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_segment_list_free
      Src: /src/gpac/src/media_tools/mpd.c:2791,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - segment_list
    argTypes:
    - GF_MPD_SegmentList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2792
      start: 2788
    functionDepth: 4
    functionLinenumber: 2788
    functionLinenumberEnd: 2792
    functionName: gf_mpd_delete_segment_list
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_segment_list_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mpd_delete_segment_list(GF_MPD_SegmentList *segment_list)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2797,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - out
    - indent
    argTypes:
    - FILE*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2798
      start: 2795
    functionDepth: 1
    functionLinenumber: 2795
    functionLinenumberEnd: 2798
    functionName: gf_mpd_lf
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gf_mpd_lf(FILE *out, s32 indent)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2804,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - out
    - indent
    argTypes:
    - FILE*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2808
      start: 2799
    functionDepth: 1
    functionLinenumber: 2799
    functionLinenumberEnd: 2808
    functionName: gf_mpd_nl
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gf_mpd_nl(FILE *out, s32 indent)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:2822,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/media_tools/mpd.c:2824,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2829,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2832,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - out
    - name
    - time
    argTypes:
    - FILE*
    - char*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2834
      start: 2811
    functionDepth: 1
    functionLinenumber: 2811
    functionLinenumberEnd: 2834
    functionName: gf_mpd_print_date
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_xml_dump_string
    - gf_fprintf
    - gf_gmtime
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_date(FILE *out, char *name, u64 time)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2845,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2847,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2848,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2849,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2850,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - out
    - name
    - duration_in_ms
    - UseHoursAndMinutes
    argTypes:
    - FILE*
    - char*
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2851
      start: 2836
    functionDepth: 1
    functionLinenumber: 2836
    functionLinenumberEnd: 2851
    functionName: gf_mpd_print_duration
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_duration(FILE *out, char *name, u64 duration_in_ms,
      Bool UseHoursAndMinutes)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:2855,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2856,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:2858,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2860,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:2862,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:2863,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - out
    - base_URL
    - indent
    argTypes:
    - FILE*
    - GF_MPD_BaseURL*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2864
      start: 2853
    functionDepth: 2
    functionLinenumber: 2853
    functionLinenumberEnd: 2864
    functionName: gf_mpd_print_base_url
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_xml_dump_string
    - gf_mpd_nl
    - gf_mpd_lf
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_base_url(FILE *out, GF_MPD_BaseURL *base_URL, s32
      indent)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:2872,1
    - Dst: gf_mpd_print_base_url
      Src: /src/gpac/src/media_tools/mpd.c:2873,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - out
    - base_URLs
    - indent
    argTypes:
    - FILE*
    - GF_List*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2875
      start: 2866
    functionDepth: 3
    functionLinenumber: 2866
    functionLinenumberEnd: 2875
    functionName: gf_mpd_print_base_urls
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_mpd_print_base_url
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_base_urls(FILE *out, GF_List *base_URLs, s32 indent)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:2879,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2880,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2881,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2882,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2883,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:2884,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - out
    - url
    - name
    - indent
    argTypes:
    - FILE*
    - GF_MPD_URL*
    - char*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2885
      start: 2877
    functionDepth: 2
    functionLinenumber: 2877
    functionLinenumberEnd: 2885
    functionName: gf_mpd_print_url
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_nl
    - gf_mpd_lf
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_url(FILE *out, GF_MPD_URL *url, char *name, s32 indent)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2889,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2890,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2892,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2893,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2896,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2897,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:2900,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 17
    argCount: 2
    argNames:
    - out
    - s
    argTypes:
    - FILE*
    - GF_MPD_SegmentBase*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2901
      start: 2887
    functionDepth: 2
    functionLinenumber: 2887
    functionLinenumberEnd: 2901
    functionName: gf_mpd_print_segment_base_attr
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_print_duration
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_segment_base_attr(FILE *out, GF_MPD_SegmentBase *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:2905,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2906,1
    - Dst: gf_mpd_print_segment_base_attr
      Src: /src/gpac/src/media_tools/mpd.c:2907,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2908,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:2909,1
    - Dst: gf_mpd_print_url
      Src: /src/gpac/src/media_tools/mpd.c:2911,1
    - Dst: gf_mpd_print_url
      Src: /src/gpac/src/media_tools/mpd.c:2912,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:2914,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2915,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:2916,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - out
    - s
    - indent
    argTypes:
    - FILE*
    - GF_MPD_SegmentBase*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2917
      start: 2903
    functionDepth: 3
    functionLinenumber: 2903
    functionLinenumberEnd: 2917
    functionName: gf_mpd_print_segment_base
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_mpd_nl
    - gf_mpd_print_segment_base_attr
    - gf_mpd_print_url
    - gf_mpd_lf
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_segment_base(FILE *out, GF_MPD_SegmentBase *s, s32
      indent)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:2925,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2926,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:2927,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2929,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:2930,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:2933,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2934,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2935,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2936,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2941,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2944,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2945,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2946,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:2947,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:2949,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2950,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2952,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2955,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2965,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2966,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2967,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:2968,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:2972,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2973,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:2974,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 52
    argCount: 4
    argNames:
    - out
    - tl
    - indent
    - tsb_first_entry
    argTypes:
    - FILE*
    - GF_MPD_SegmentTimeline*
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2975
      start: 2919
    functionDepth: 2
    functionLinenumber: 2919
    functionLinenumberEnd: 2975
    functionName: gf_mpd_print_segment_timeline
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_fprintf
    - gf_list_count
    - gf_mpd_nl
    - gf_mpd_lf
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_segment_timeline(FILE *out, GF_MPD_SegmentTimeline
      *tl, s32 indent, u32 tsb_first_entry)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2980,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:2981,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2983
      start: 2977
    functionDepth: 1
    functionLinenumber: 2977
    functionLinenumberEnd: 2983
    functionName: gf_mpd_segmentimeline_new
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_MPD_SegmentTimeline
    signature: GF_MPD_SegmentTimeline *gf_mpd_segmentimeline_new(void)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_print_segment_base_attr
      Src: /src/gpac/src/media_tools/mpd.c:2987,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2989,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2991,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2995,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2996,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:2997,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3000,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3001,1
    - Dst: gf_mpd_print_url
      Src: /src/gpac/src/media_tools/mpd.c:3003,1
    - Dst: gf_mpd_print_url
      Src: /src/gpac/src/media_tools/mpd.c:3004,1
    - Dst: gf_mpd_print_segment_timeline
      Src: /src/gpac/src/media_tools/mpd.c:3006,1
    - Dst: gf_mpd_print_url
      Src: /src/gpac/src/media_tools/mpd.c:3007,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 24
    argCount: 4
    argNames:
    - out
    - ms
    - indent
    - close_if_no_child
    argTypes:
    - FILE*
    - GF_MPD_MultipleSegmentBase*
    - s32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3009
      start: 2985
    functionDepth: 3
    functionLinenumber: 2985
    functionLinenumberEnd: 3009
    functionName: gf_mpd_print_multiple_segment_base
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_mpd_print_segment_timeline
    - gf_mpd_print_segment_base_attr
    - gf_mpd_print_url
    - gf_mpd_lf
    linkageType: ''
    returnType: u32
    signature: u32 gf_mpd_print_multiple_segment_base(FILE *out, GF_MPD_MultipleSegmentBase
      *ms, s32 indent, Bool close_if_no_child)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3013,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3014,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3016,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3018,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3021,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3022,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3023,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3024,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3025,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3026,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3027,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3028,1
    - Dst: gf_mpd_print_multiple_segment_base
      Src: /src/gpac/src/media_tools/mpd.c:3030,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:3037,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3038,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3040,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3043,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3046,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3048,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3052,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3053,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3054,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3055,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3056,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3057,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3060,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3062,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3064,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3067,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3068,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3071,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3072,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3073,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 67
    argCount: 3
    argNames:
    - out
    - s
    - indent
    argTypes:
    - FILE*
    - GF_MPD_SegmentList*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3074
      start: 3011
    functionDepth: 4
    functionLinenumber: 3011
    functionLinenumberEnd: 3074
    functionName: gf_mpd_print_segment_list
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_print_multiple_segment_base
    - gf_fprintf
    - gf_xml_dump_string
    - gf_mpd_nl
    - gf_list_enum
    - gf_mpd_lf
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_segment_list(FILE *out, GF_MPD_SegmentList *s, s32
      indent)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3078,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3079,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3081,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3082,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3083,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3084,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3085,1
    - Dst: gf_mpd_print_multiple_segment_base
      Src: /src/gpac/src/media_tools/mpd.c:3087,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3090,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3091,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3092,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 3
    argNames:
    - out
    - s
    - indent
    argTypes:
    - FILE*
    - GF_MPD_SegmentTemplate*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3093
      start: 3076
    functionDepth: 4
    functionLinenumber: 3076
    functionLinenumberEnd: 3093
    functionName: gf_mpd_print_segment_template
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_print_multiple_segment_base
    - gf_fprintf
    - gf_xml_dump_string
    - gf_mpd_nl
    - gf_mpd_lf
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_segment_template(FILE *out, GF_MPD_SegmentTemplate
      *s, s32 indent)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:3100,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:3101,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:3102,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3103,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3104,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 2
    argNames:
    - out
    - attributes
    argTypes:
    - FILE*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3106
      start: 3095
    functionDepth: 1
    functionLinenumber: 3095
    functionLinenumberEnd: 3106
    functionName: gf_mpd_extensible_print_attr
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_xml_dump_string
    - gf_list_enum
    - strcmp
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void gf_mpd_extensible_print_attr(FILE *out, GF_List *attributes)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:3113,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:3116,1
    - Dst: gf_xml_dom_serialize
      Src: /src/gpac/src/media_tools/mpd.c:3125,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3126,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3127,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:3128,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3129,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 5
    argNames:
    - out
    - children
    - indent
    - child_idx
    - is_final
    argTypes:
    - FILE*
    - GF_List*
    - s32
    - u32*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3135
      start: 3108
    functionDepth: 2
    functionLinenumber: 3108
    functionLinenumberEnd: 3135
    functionName: gf_mpd_extensible_print_nodes
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_serialize
    - gf_free
    - gf_list_get
    - gf_fprintf
    - gf_list_count
    - gf_mpd_nl
    - gf_mpd_lf
    linkageType: ''
    returnType: void
    signature: void gf_mpd_extensible_print_nodes(FILE *out, GF_List *children, s32
      indent, u32 *child_idx, Bool is_final)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3139,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3140,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3141,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3142,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3143,1
    - Dst: gf_mpd_extensible_print_attr
      Src: /src/gpac/src/media_tools/mpd.c:3145,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3149,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3150,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3151,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3152,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3153,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3154,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3156,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3157,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 4
    argNames:
    - out
    - desc
    - desc_name
    - indent
    argTypes:
    - FILE*
    - GF_MPD_Descriptor*
    - char*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3159
      start: 3137
    functionDepth: 3
    functionLinenumber: 3137
    functionLinenumberEnd: 3159
    functionName: gf_mpd_print_desc
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_xml_dump_string
    - gf_mpd_extensible_print_attr
    - gf_mpd_nl
    - gf_mpd_extensible_print_nodes
    - gf_mpd_lf
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_desc(FILE *out, GF_MPD_Descriptor *desc, char *desc_name,
      s32 indent)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:3164,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3165,1
    - Dst: gf_mpd_print_desc
      Src: /src/gpac/src/media_tools/mpd.c:3166,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 6
    argNames:
    - out
    - desc_list
    - desc_name
    - indent
    - x_children
    - child_idx
    argTypes:
    - FILE*
    - GF_List*
    - char*
    - s32
    - GF_List*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3168
      start: 3160
    functionDepth: 4
    functionLinenumber: 3160
    functionLinenumberEnd: 3168
    functionName: gf_mpd_print_descriptors
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_mpd_print_desc
    - gf_mpd_extensible_print_nodes
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_descriptors(FILE *out, GF_List *desc_list, char *desc_name,
      s32 indent, GF_List *x_children, u32 *child_idx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/media_tools/mpd.c:3176,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:3177,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:3178,1
    - Dst: gf_lang_find
      Src: /src/gpac/src/media_tools/mpd.c:3179,1
    - Dst: gf_lang_get_2cc
      Src: /src/gpac/src/media_tools/mpd.c:3181,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3186,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 3
    argNames:
    - out
    - attVal
    - attName
    argTypes:
    - FILE*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3187
      start: 3172
    functionDepth: 1
    functionLinenumber: 3172
    functionLinenumberEnd: 3187
    functionName: mpd_print_lang
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_lang_find
    - strcmp
    - gf_sys_old_arch_compat
    - gf_lang_get_2cc
    - strlen
    linkageType: ''
    returnType: void
    signature: void mpd_print_lang(FILE *out, const char *attVal, const char *attName)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:3193,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3194,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3195,1
    - Dst: mpd_print_lang
      Src: /src/gpac/src/media_tools/mpd.c:3196,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3197,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3198,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - out
    - content_component
    - indent
    argTypes:
    - FILE*
    - GF_List*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3200
      start: 3189
    functionDepth: 2
    functionLinenumber: 3189
    functionLinenumberEnd: 3200
    functionName: gf_mpd_print_content_component
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - mpd_print_lang
    - gf_mpd_nl
    - gf_list_enum
    - gf_mpd_lf
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_content_component(FILE *out, GF_List *content_component
      , s32 indent)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:3205,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3206,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3207,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3208,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - out
    - inband_event
    - indent
    argTypes:
    - FILE*
    - GF_List*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3210
      start: 3202
    functionDepth: 2
    functionLinenumber: 3202
    functionLinenumberEnd: 3210
    functionName: gf_mpd_print_inband_event
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_mpd_nl
    - gf_mpd_lf
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_inband_event(FILE *out, GF_List *inband_event, s32
      indent)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3215,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3217,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3218,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3219,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3220,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3222,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3223,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3224,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3226,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3227,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3229,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3231,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3232,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3233,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3234,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3235,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3237,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3238,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 39
    argCount: 2
    argNames:
    - out
    - ca
    argTypes:
    - FILE*
    - GF_MPD_CommonAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3240
      start: 3212
    functionDepth: 1
    functionLinenumber: 3212
    functionLinenumberEnd: 3240
    functionName: gf_mpd_print_common_attributes
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_xml_dump_string
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_common_attributes(FILE *out, GF_MPD_CommonAttributes
      *ca)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:3244,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:3245,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:3246,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:3247,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:3248,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:3251,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:3253,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3254,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3255,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3256,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3257,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3260,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3263,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3266,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3267,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3271,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3272,1
    - Dst: gf_mpd_print_desc
      Src: /src/gpac/src/media_tools/mpd.c:3273,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3274,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3275,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3277,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3278,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3285,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3286,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3287,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:3288,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3289,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3290,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3291,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3292,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3293,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3294,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3295,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3297,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3298,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3299,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 60
    argCount: 4
    argNames:
    - out
    - ca
    - indent
    - child_idx
    argTypes:
    - FILE*
    - GF_MPD_CommonAttributes*
    - s32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3302
      start: 3242
    functionDepth: 5
    functionLinenumber: 3242
    functionLinenumberEnd: 3302
    functionName: gf_mpd_print_common_children
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_mpd_print_descriptors
    - gf_fprintf
    - gf_list_count
    - gf_mpd_nl
    - gf_mpd_print_desc
    - gf_list_enum
    - gf_mpd_lf
    linkageType: ''
    returnType: u32
    signature: u32 gf_mpd_print_common_children(FILE *out, GF_MPD_CommonAttributes
      *ca, s32 indent, u32 *child_idx)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3306,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3307,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3308,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3309,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3310,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3312,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3313,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3314,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3315,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3316,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3319,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3322,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3325,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3327,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3329,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3330,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3331,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3332,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3333,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3334,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3335,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3336,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3337,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3338,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3340,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3341,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3344,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3346,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3349,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3351,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3353,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3356,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3359,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3362,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3363,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 50
    argCount: 3
    argNames:
    - out
    - dasher
    - indent
    argTypes:
    - FILE*
    - GF_DASH_SegmenterContext*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3364
      start: 3304
    functionDepth: 2
    functionLinenumber: 3304
    functionLinenumberEnd: 3364
    functionName: gf_mpd_print_dasher_context
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_nl
    - gf_mpd_lf
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_dasher_context(FILE *out, GF_DASH_SegmenterContext
      *dasher, s32 indent)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:3368,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3371,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3372,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:3374,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3375,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3376,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3377,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3378,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3379,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3380,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3381,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3383,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3384,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3387,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3388,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3392,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3393,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3396,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3397,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3398,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 3
    argNames:
    - out
    - segments
    - indent
    argTypes:
    - FILE*
    - GF_List*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3399
      start: 3366
    functionDepth: 2
    functionLinenumber: 3366
    functionLinenumberEnd: 3399
    functionName: gf_mpd_print_dasher_segments
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_fprintf
    - gf_list_count
    - gf_mpd_nl
    - gf_mpd_lf
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_dasher_segments(FILE *out, GF_List *segments, s32
      indent)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3405,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3406,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3407,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:3416,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/mpd.c:3417,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:3419,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/mpd.c:3420,1
    - Dst: gf_mpd_print_common_attributes
      Src: /src/gpac/src/media_tools/mpd.c:3424,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3427,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3428,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3429,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3430,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3432,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3433,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3436,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3438,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:3442,1
    - Dst: gf_mpd_extensible_print_attr
      Src: /src/gpac/src/media_tools/mpd.c:3446,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3448,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3449,1
    - Dst: gf_mpd_print_dasher_context
      Src: /src/gpac/src/media_tools/mpd.c:3453,1
    - Dst: gf_mpd_print_dasher_segments
      Src: /src/gpac/src/media_tools/mpd.c:3456,1
    - Dst: gf_mpd_print_common_children
      Src: /src/gpac/src/media_tools/mpd.c:3460,1
    - Dst: gf_mpd_print_base_urls
      Src: /src/gpac/src/media_tools/mpd.c:3462,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3464,1
    - Dst: gf_mpd_print_segment_base
      Src: /src/gpac/src/media_tools/mpd.c:3465,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3468,1
    - Dst: gf_mpd_print_segment_list
      Src: /src/gpac/src/media_tools/mpd.c:3469,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3472,1
    - Dst: gf_mpd_print_segment_template
      Src: /src/gpac/src/media_tools/mpd.c:3473,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3480,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3482,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3483,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3484,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 68
    argCount: 6
    argNames:
    - rep
    - out
    - write_context
    - indent
    - alt_mha_profile
    - skip_mime
    argTypes:
    - GF_MPD_Representation*
    - FILE*
    - Bool
    - s32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3485
      start: 3401
    functionDepth: 6
    functionLinenumber: 3401
    functionLinenumberEnd: 3485
    functionName: gf_mpd_print_representation
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_mpd_print_dasher_segments
    - snprintf
    - gf_fprintf
    - gf_mpd_print_segment_list
    - strcpy
    - gf_mpd_extensible_print_attr
    - gf_mpd_print_base_urls
    - strstr
    - gf_mpd_print_dasher_context
    - gf_mpd_print_common_children
    - gf_mpd_nl
    - gf_mpd_print_segment_base
    - gf_mpd_print_segment_template
    - gf_mpd_extensible_print_nodes
    - gf_mpd_print_common_attributes
    - gf_mpd_lf
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_representation(GF_MPD_Representation *rep, FILE *out,
      Bool write_context, s32 indent, u32 alt_mha_profile, Bool skip_mime)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_print_adaptation_set
      Src: /src/gpac/src/media_tools/mpd.c:3494,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/media_tools/mpd.c:3502,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:3503,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:3504,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:3507,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3514,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3515,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3517,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3519,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3521,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3523,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3524,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3525,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3526,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3527,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3528,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3529,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3530,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3533,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3535,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3539,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3541,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3544,1
    - Dst: mpd_print_lang
      Src: /src/gpac/src/media_tools/mpd.c:3545,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3546,1
    - Dst: gf_mpd_print_common_attributes
      Src: /src/gpac/src/media_tools/mpd.c:3548,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3550,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3551,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3553,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3554,1
    - Dst: gf_mpd_print_common_children
      Src: /src/gpac/src/media_tools/mpd.c:3556,1
    - Dst: gf_mpd_print_base_urls
      Src: /src/gpac/src/media_tools/mpd.c:3558,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:3560,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:3561,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:3562,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:3563,1
    - Dst: gf_mpd_print_content_component
      Src: /src/gpac/src/media_tools/mpd.c:3564,1
    - Dst: gf_mpd_print_inband_event
      Src: /src/gpac/src/media_tools/mpd.c:3565,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3568,1
    - Dst: gf_mpd_print_segment_base
      Src: /src/gpac/src/media_tools/mpd.c:3569,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3572,1
    - Dst: gf_mpd_print_segment_list
      Src: /src/gpac/src/media_tools/mpd.c:3573,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3576,1
    - Dst: gf_mpd_print_segment_template
      Src: /src/gpac/src/media_tools/mpd.c:3577,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:3581,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3582,1
    - Dst: gf_mpd_print_representation
      Src: /src/gpac/src/media_tools/mpd.c:3583,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3585,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3586,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3587,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3588,1
    - Dst: gf_mpd_print_adaptation_set
      Src: /src/gpac/src/media_tools/mpd.c:3594,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 99
    argCount: 5
    argNames:
    - as
    - out
    - write_context
    - indent
    - alt_mha_profile
    argTypes:
    - GF_MPD_AdaptationSet*
    - FILE*
    - Bool
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3597
      start: 3487
    functionDepth: 7
    functionLinenumber: 3487
    functionLinenumberEnd: 3597
    functionName: gf_mpd_print_adaptation_set
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 1
    functionsReached:
    - gf_mpd_print_segment_list
    - gf_xml_dump_string
    - gf_mpd_print_base_urls
    - gf_list_count
    - gf_mpd_print_content_component
    - gf_mpd_print_common_children
    - gf_mpd_print_representation
    - gf_list_get
    - gf_mpd_print_descriptors
    - gf_fprintf
    - gf_mpd_extensible_print_nodes
    - mpd_print_lang
    - gf_mpd_nl
    - gf_mpd_print_segment_base
    - gf_mpd_print_segment_template
    - gf_list_enum
    - gf_mpd_print_adaptation_set
    - gf_mpd_print_common_attributes
    - gf_mpd_lf
    - strcmp
    - gf_sys_old_arch_compat
    - gf_mpd_print_inband_event
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_adaptation_set(GF_MPD_AdaptationSet *as, FILE *out,
      Bool write_context, s32 indent, u32 alt_mha_profile)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3603,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3604,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3606,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3608,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3611,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:3613,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:3615,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3617,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3619,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3620,1
    - Dst: gf_mpd_print_base_urls
      Src: /src/gpac/src/media_tools/mpd.c:3622,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3625,1
    - Dst: gf_mpd_print_segment_base
      Src: /src/gpac/src/media_tools/mpd.c:3626,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3629,1
    - Dst: gf_mpd_print_segment_list
      Src: /src/gpac/src/media_tools/mpd.c:3630,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3633,1
    - Dst: gf_mpd_print_segment_template
      Src: /src/gpac/src/media_tools/mpd.c:3634,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:3638,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3639,1
    - Dst: gf_mpd_print_adaptation_set
      Src: /src/gpac/src/media_tools/mpd.c:3640,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3642,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3643,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3644,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3645,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 5
    argNames:
    - period
    - is_dynamic
    - out
    - write_context
    - indent
    argTypes:
    - GF_MPD_Period*
    - Bool
    - FILE*
    - Bool
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3646
      start: 3599
    functionDepth: 8
    functionLinenumber: 3599
    functionLinenumberEnd: 3646
    functionName: gf_mpd_print_period
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_print_segment_list
    - gf_fprintf
    - gf_xml_dump_string
    - gf_mpd_print_base_urls
    - gf_mpd_nl
    - gf_mpd_print_segment_base
    - gf_mpd_print_segment_template
    - gf_mpd_extensible_print_nodes
    - gf_list_enum
    - gf_mpd_print_adaptation_set
    - gf_mpd_print_duration
    - gf_mpd_lf
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_period(GF_MPD_Period const * const period, Bool is_dynamic,
      FILE *out, Bool write_context, s32 indent)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:3658,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/media_tools/mpd.c:3661,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/media_tools/mpd.c:3662,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3663,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/media_tools/mpd.c:3663,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:3666,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - mpd
    - out
    argTypes:
    - GF_MPD*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3669
      start: 3648
    functionDepth: 1
    functionLinenumber: 3648
    functionLinenumberEnd: 3669
    functionName: mpd_write_generation_comment
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_fprintf
    - GF_LOG
    - gf_sys_is_test_mode
    - gf_gpac_version
    - gf_gmtime
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mpd_write_generation_comment(GF_MPD const * const mpd, FILE
      *out)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3676,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3678,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3680,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3682,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3683,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3686,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3688,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3691,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3695,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3697,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3700,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3701,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3704,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3705,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3709,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:3710,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3714,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3717,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:3722,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:3723,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3724,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3726,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3730,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3732,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 50
    argCount: 15
    argNames:
    - out
    - rep
    - m3u8_name
    - codec_ext
    - g_type
    - g_id_pref
    - g2_type
    - g2_id_pref
    - set
    - max_alt_bandwidth
    - max_alt_width
    - max_alt_height
    - max_alt_fps
    - hls_version
    - prim_group_id
    argTypes:
    - FILE*
    - GF_MPD_Representation*
    - char*
    - char*
    - char*
    - char*
    - char*
    - char*
    - GF_MPD_AdaptationSet*
    - u32
    - u32
    - u32
    - Double
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3734
      start: 3671
    functionDepth: 1
    functionLinenumber: 3671
    functionLinenumberEnd: 3734
    functionName: gf_mpd_write_m3u8_playlist_tags_entry
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - strstr
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void gf_mpd_write_m3u8_playlist_tags_entry(FILE *out, const GF_MPD_Representation
      *rep, char *m3u8_name, const char *codec_ext, const char *g_type, const char
      *g_id_pref, const char *g2_type, const char *g2_id_pref, const GF_MPD_AdaptationSet
      *set, u32 max_alt_bandwidth, u32 max_alt_width, u32 max_alt_height, Double max_alt_fps,
      u32 hls_version, const char *prim_group_id)
  - BBCount: 67
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3770,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3772,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3774,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:3779,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:3780,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:3781,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:3783,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:3784,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:3785,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:3786,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:3789,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:3789,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3792,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3795,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:3798,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3799,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3802,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3804,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3806,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3809,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3810,1
    - Dst: gf_mpd_write_m3u8_playlist_tags_entry
      Src: /src/gpac/src/media_tools/mpd.c:3817,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:3837,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:3839,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:3850,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:3852,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:3873,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:3881,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:3882,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/mpd.c:3887,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/mpd.c:3891,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/mpd.c:3892,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/mpd.c:3893,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/mpd.c:3894,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/mpd.c:3899,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:3903,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:3904,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:3910,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:3911,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:3912,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:3918,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:3919,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:3921,1
    - Dst: gf_mpd_write_m3u8_playlist_tags_entry
      Src: /src/gpac/src/media_tools/mpd.c:3928,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:3929,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:3933,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:3938,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:3940,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:3943,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:3944,1
    CyclomaticComplexity: 103
    EdgeCount: 103
    ICount: 187
    argCount: 12
    argNames:
    - as
    - as_idx
    - rep
    - out
    - m3u8_name
    - period
    - nb_alt_media
    - nb_subs
    - nb_cc
    - forced_inf_ids
    - hls_version
    - prim_group_id
    argTypes:
    - GF_MPD_AdaptationSet*
    - u32
    - GF_MPD_Representation*
    - FILE*
    - char*
    - GF_MPD_Period*
    - u32
    - u32
    - u32
    - char*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3945
      start: 3736
    functionDepth: 2
    functionLinenumber: 3736
    functionLinenumberEnd: 3945
    functionName: gf_mpd_write_m3u8_playlist_tags
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fprintf
    - strstr
    - strncmp
    - strcmp
    - gf_dynstrcat
    - MAX
    - gf_list_enum
    - gf_mpd_write_m3u8_playlist_tags_entry
    - strlen
    linkageType: ''
    returnType: void
    signature: void gf_mpd_write_m3u8_playlist_tags(const GF_MPD_AdaptationSet *as,
      u32 as_idx, const GF_MPD_Representation *rep, FILE *out, char *m3u8_name, GF_MPD_Period
      *period, u32 nb_alt_media, u32 nb_subs, u32 nb_cc, const char *forced_inf_ids,
      u32 hls_version, const char *prim_group_id)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 20
    argCount: 3
    argNames:
    - period
    - as
    - rep
    argTypes:
    - GF_MPD_Period*
    - GF_MPD_AdaptationSet*
    - GF_MPD_Representation*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3962
      start: 3947
    functionDepth: 0
    functionLinenumber: 3947
    functionLinenumberEnd: 3962
    functionName: gf_mpd_m3u8_get_init_seg
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_mpd_m3u8_get_init_seg(const GF_MPD_Period *period, const GF_MPD_AdaptationSet
      *as, const GF_MPD_Representation *rep)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:3975,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:3979,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:3980,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3981,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:3985,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3989,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3991,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3992,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3994,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 36
    argCount: 4
    argNames:
    - out
    - rep
    - sctx
    - last_kms
    argTypes:
    - FILE*
    - GF_MPD_Representation*
    - GF_DASH_SegmentContext*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4003
      start: 3964
    functionDepth: 1
    functionLinenumber: 3964
    functionLinenumberEnd: 4003
    functionName: hls_insert_crypt_info
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - strcmp
    - strstr
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void hls_insert_crypt_info(FILE *out, GF_MPD_Representation *rep, GF_DASH_SegmentContext
      *sctx, const char **last_kms)
  - BBCount: 68
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:4014,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/mpd.c:4016,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/media_tools/mpd.c:4020,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpd.c:4021,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4025,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:4026,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4028,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4029,1
    - Dst: gf_ceil
      Src: /src/gpac/src/media_tools/mpd.c:4029,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4030,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4031,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4036,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4038,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4040,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4043,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4047,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4052,1
    - Dst: gf_mpd_print_date
      Src: /src/gpac/src/media_tools/mpd.c:4053,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4054,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4059,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:4066,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4071,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4073,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4077,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:4084,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:4085,1
    - Dst: hls_insert_crypt_info
      Src: /src/gpac/src/media_tools/mpd.c:4087,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:4107,1
    - Dst: gf_mpd_resolve_subnumber
      Src: /src/gpac/src/media_tools/mpd.c:4112,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4113,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4118,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4120,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4125,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4128,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4132,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4133,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpd.c:4138,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:4149,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:4155,1
    - Dst: gf_mpd_resolve_subnumber
      Src: /src/gpac/src/media_tools/mpd.c:4158,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4159,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4161,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4163,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4166,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:4172,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4175,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4178,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/mpd.c:4181,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4186,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:4188,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/mpd.c:4194,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:4200,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:4201,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4203,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4204,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpd.c:4210,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4219,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:4222,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4224,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4227,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:4246,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpd.c:4249,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:4256,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4259,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4261,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4265,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:4272,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:4273,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:4274,1
    - Dst: hls_insert_crypt_info
      Src: /src/gpac/src/media_tools/mpd.c:4279,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4283,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4284,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:4286,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4288,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4291,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4298,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpd.c:4301,1
    CyclomaticComplexity: 93
    EdgeCount: 93
    ICount: 230
    argCount: 8
    argNames:
    - mpd
    - period
    - as
    - rep
    - m3u8_name
    - hls_version
    - max_part_dur_session
    - force_base_url
    argTypes:
    - GF_MPD*
    - GF_MPD_Period*
    - GF_MPD_AdaptationSet*
    - GF_MPD_Representation*
    - char*
    - u32
    - Double
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4304
      start: 4005
    functionDepth: 2
    functionLinenumber: 4005
    functionLinenumberEnd: 4304
    functionName: gf_mpd_write_m3u8_playlist
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - gf_fopen
    - strchr
    - gf_file_basename
    - gf_mpd_print_date
    - fprintf
    - gf_list_get
    - gf_assert
    - gf_fprintf
    - gf_ceil
    - gf_file_temp
    - gf_dynstrcat
    - gf_mpd_resolve_subnumber
    - gf_list_enum
    - gf_list_last
    - gf_fclose
    - hls_insert_crypt_info
    - gf_url_concatenate
    - strcmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mpd_write_m3u8_playlist(const GF_MPD *mpd, const GF_MPD_Period
      *period, const GF_MPD_AdaptationSet *as, GF_MPD_Representation *rep, char *m3u8_name,
      u32 hls_version, Double max_part_dur_session, const char *force_base_url)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/mpd.c:4311,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/mpd.c:4315,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/mpd.c:4316,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:4318,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/mpd.c:4319,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:4321,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:4326,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:4328,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 3
    argNames:
    - mpd
    - rep
    - force_base_url
    argTypes:
    - GF_MPD*
    - GF_MPD_Representation*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4329
      start: 4306
    functionDepth: 1
    functionLinenumber: 4306
    functionLinenumberEnd: 4329
    functionName: get_rep_variant_filename
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_strdup
    - strcpy
    - gf_url_concatenate
    - gf_file_ext_start
    - gf_file_basename
    linkageType: ''
    returnType: char
    signature: char *get_rep_variant_filename(GF_MPD const * const mpd, GF_MPD_Representation
      *rep, const char * force_base_url)
  - BBCount: 76
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4359,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4360,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4365,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4368,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:4369,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:4373,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4375,1
    - Dst: gf_mpd_m3u8_get_init_seg
      Src: /src/gpac/src/media_tools/mpd.c:4377,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:4380,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:4392,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4399,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:4400,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:4401,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4415,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4416,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4418,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4421,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4422,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:4426,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/media_tools/mpd.c:4427,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:4430,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/mpd.c:4430,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:4432,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:4434,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpd.c:4436,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:4436,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:4440,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4448,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4452,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4457,1
    - Dst: ceil
      Src: /src/gpac/src/media_tools/mpd.c:4480,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4490,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4491,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4501,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:4503,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:4504,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:4509,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:4511,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4513,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:4514,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4522,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4524,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4525,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:4526,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/mpd.c:4533,1
    - Dst: gf_mpd_write_m3u8_playlist
      Src: /src/gpac/src/media_tools/mpd.c:4536,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:4539,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4553,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4562,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4574,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/mpd.c:4575,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:4578,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:4579,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4599,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4600,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/mpd.c:4603,1
    - Dst: get_rep_variant_filename
      Src: /src/gpac/src/media_tools/mpd.c:4606,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:4616,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4618,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4620,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:4621,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:4622,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4626,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/media_tools/mpd.c:4627,1
    - Dst: get_rep_variant_filename
      Src: /src/gpac/src/media_tools/mpd.c:4628,1
    - Dst: gf_mpd_write_m3u8_playlist_tags
      Src: /src/gpac/src/media_tools/mpd.c:4630,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4631,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4632,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:4634,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:4635,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpd.c:4639,1
    - Dst: gf_mpd_write_m3u8_playlist_tags
      Src: /src/gpac/src/media_tools/mpd.c:4643,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4644,1
    - Dst: gf_mpd_write_m3u8_playlist_tags
      Src: /src/gpac/src/media_tools/mpd.c:4647,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4648,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4651,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpd.c:4654,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4655,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4656,1
    CyclomaticComplexity: 131
    EdgeCount: 131
    ICount: 260
    argCount: 5
    argNames:
    - mpd
    - out
    - m3u8_name
    - period
    - mode
    argTypes:
    - GF_MPD*
    - FILE*
    - char*
    - GF_MPD_Period*
    - GF_M3U8WriteMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4658
      start: 4331
    functionDepth: 3
    functionLinenumber: 4331
    functionLinenumberEnd: 4658
    functionName: gf_mpd_write_m3u8_master_playlist
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mpd_write_m3u8_playlist_tags
    - gf_fileio_translate_url
    - gf_list_find
    - gf_list_count
    - gf_file_basename
    - get_rep_variant_filename
    - gf_list_get
    - gf_strdup
    - gf_list_new
    - strrchr
    - gf_fprintf
    - sprintf
    - strncmp
    - gf_list_add
    - GF_LOG
    - strstr
    - gf_mpd_m3u8_get_init_seg
    - gf_list_enum
    - strlen
    - gf_malloc
    - ceil
    - gf_list_del
    - gf_mpd_write_m3u8_playlist
    - gf_list_pop_front
    - strcmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mpd_write_m3u8_master_playlist(GF_MPD const * const mpd,
      FILE *out, const char* m3u8_name, GF_MPD_Period *period, GF_M3U8WriteMode mode)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:4670,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4673,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:4674,1
    - Dst: mpd_write_generation_comment
      Src: /src/gpac/src/media_tools/mpd.c:4675,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4677,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:4678,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4681,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:4684,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:4687,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4689,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:4690,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:4694,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4697,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:4701,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:4704,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4706,1
    - Dst: gf_mpd_print_date
      Src: /src/gpac/src/media_tools/mpd.c:4710,1
    - Dst: gf_mpd_print_date
      Src: /src/gpac/src/media_tools/mpd.c:4712,1
    - Dst: gf_mpd_print_date
      Src: /src/gpac/src/media_tools/mpd.c:4714,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:4716,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:4718,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:4720,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:4722,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:4724,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:4726,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:4729,1
    - Dst: gf_mpd_extensible_print_attr
      Src: /src/gpac/src/media_tools/mpd.c:4732,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4736,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4738,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4740,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4743,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:4744,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4748,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:4750,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:4752,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4753,1
    - Dst: mpd_print_lang
      Src: /src/gpac/src/media_tools/mpd.c:4754,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:4756,1
    - Dst: gf_mpd_extensible_print_attr
      Src: /src/gpac/src/media_tools/mpd.c:4758,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4759,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:4761,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:4763,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:4764,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:4765,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:4766,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:4769,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:4770,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:4771,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:4772,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:4775,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:4776,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:4777,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:4778,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:4780,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:4781,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4782,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:4783,1
    - Dst: gf_mpd_print_base_urls
      Src: /src/gpac/src/media_tools/mpd.c:4786,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:4788,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4791,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:4792,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:4793,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:4794,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:4795,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:4799,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:4800,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4801,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:4802,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:4803,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4804,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:4805,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:4806,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4807,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:4808,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:4809,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4810,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:4811,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4822,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:4825,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:4830,1
    - Dst: gf_mpd_print_period
      Src: /src/gpac/src/media_tools/mpd.c:4831,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4834,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:4835,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:4836,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4838,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:4839,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:4840,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4842,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:4843,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:4844,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:4846,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4849,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4851,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 149
    argCount: 3
    argNames:
    - mpd
    - out
    - compact
    argTypes:
    - GF_MPD*
    - FILE*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4854
      start: 4662
    functionDepth: 9
    functionLinenumber: 4662
    functionLinenumberEnd: 4854
    functionName: gf_mpd_write
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_mpd_print_descriptors
    - gf_fprintf
    - gf_xml_dump_string
    - GF_LOG
    - mpd_write_generation_comment
    - gf_mpd_print_date
    - gf_mpd_extensible_print_attr
    - mpd_print_lang
    - gf_mpd_print_base_urls
    - gf_mpd_print_period
    - gf_list_count
    - gf_mpd_nl
    - gf_mpd_extensible_print_nodes
    - gf_list_enum
    - gf_mpd_print_duration
    - gf_mpd_lf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mpd_write(GF_MPD const * const mpd, FILE *out, Bool compact)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:4861,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/mpd.c:4863,1
    - Dst: gf_mpd_write
      Src: /src/gpac/src/media_tools/mpd.c:4867,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpd.c:4868,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - mpd
    - file_name
    argTypes:
    - GF_MPD*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4870
      start: 4856
    functionDepth: 10
    functionLinenumber: 4856
    functionLinenumberEnd: 4870
    functionName: gf_mpd_write_file
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 1
    functionsReached:
    - gf_fopen
    - gf_fclose
    - strcmp
    - gf_mpd_write
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mpd_write_file(GF_MPD const * const mpd, const char *file_name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4878,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4880,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4882,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4884,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 4
    argNames:
    - mpd
    - period
    - set
    - rep
    argTypes:
    - GF_MPD*
    - GF_MPD_Period*
    - GF_MPD_AdaptationSet*
    - GF_MPD_Representation*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4888
      start: 4873
    functionDepth: 1
    functionLinenumber: 4873
    functionLinenumberEnd: 4888
    functionName: gf_mpd_get_base_url_count
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mpd_get_base_url_count(GF_MPD *mpd, GF_MPD_Period *period,
      GF_MPD_AdaptationSet *set, GF_MPD_Representation *rep)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4894,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/media_tools/mpd.c:4896,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:4911,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:4913,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4914,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 3
    argNames:
    - baseURLs
    - parent_url
    - base_url_index
    argTypes:
    - GF_List*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4918
      start: 4890
    functionDepth: 1
    functionLinenumber: 4890
    functionLinenumberEnd: 4918
    functionName: gf_mpd_get_base_url
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_get_bit_size
    - gf_url_concatenate
    - gf_list_count
    linkageType: ''
    returnType: char
    signature: char *gf_mpd_get_base_url(GF_List *baseURLs, char *parent_url, u32
      *base_url_index)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:4925,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:4930,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 15
    argCount: 1
    argNames:
    - print_fmt
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4935
      start: 4920
    functionDepth: 0
    functionLinenumber: 4920
    functionLinenumberEnd: 4935
    functionName: gf_mpd_check_print_format
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - strchr
    linkageType: ''
    returnType: Bool
    signature: Bool gf_mpd_check_print_format(const char *print_fmt)
  - BBCount: 127
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:4955,1
    - Dst: gf_mpd_get_base_url
      Src: /src/gpac/src/media_tools/mpd.c:4957,1
    - Dst: gf_mpd_get_base_url
      Src: /src/gpac/src/media_tools/mpd.c:4958,1
    - Dst: gf_mpd_get_base_url
      Src: /src/gpac/src/media_tools/mpd.c:4959,1
    - Dst: gf_mpd_get_base_url
      Src: /src/gpac/src/media_tools/mpd.c:4960,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:4961,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4973,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:5002,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:5004,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5006,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5022,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5053,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:5060,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:5062,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5064,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5073,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:5080,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5084,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5088,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:5092,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:5093,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:5096,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpd.c:5098,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:5102,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5103,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5115,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5119,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:5121,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5122,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5132,1
    - Dst: gf_mpd_resolve_segment_duration
      Src: /src/gpac/src/media_tools/mpd.c:5175,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5183,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5185,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5204,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5208,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpd.c:5212,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:5212,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:5212,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/mpd.c:5216,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:5217,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:5220,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:5225,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5227,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5228,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:5232,1
    - Dst: gf_mpd_check_print_format
      Src: /src/gpac/src/media_tools/mpd.c:5235,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:5236,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5237,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5238,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/mpd.c:5242,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/mpd.c:5245,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:5248,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5249,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5251,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5253,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:5255,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5256,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5257,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5262,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5264,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5266,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5267,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:5270,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5271,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:5274,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5275,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5283,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5284,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5289,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:5291,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5292,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5293,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5298,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5300,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5301,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:5303,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5304,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:5306,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5307,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5310,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:5311,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:5312,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5313,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5315,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:5316,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5317,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5319,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:5322,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5323,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5326,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5331,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5335,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5344,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5345,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:5357,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5358,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:5359,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5360,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:5365,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5366,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:5367,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5368,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:5372,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5374,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5375,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:5382,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:5384,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5385,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:5388,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5389,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5390,1
    CyclomaticComplexity: 149
    EdgeCount: 149
    ICount: 432
    argCount: 18
    argNames:
    - mpd
    - rep
    - set
    - period
    - mpd_url
    - base_url_index
    - resolve_type
    - item_index
    - nb_segments_removed
    - out_url
    - out_range_start
    - out_range_end
    - segment_duration_in_ms
    - is_in_base_url
    - out_key_url
    - out_key_iv
    - out_start_number
    - subseg_index
    argTypes:
    - GF_MPD*
    - GF_MPD_Representation*
    - GF_MPD_AdaptationSet*
    - GF_MPD_Period*
    - char*
    - u32
    - GF_MPD_URLResolveType
    - u32
    - u32
    - char**
    - u64*
    - u64*
    - u64*
    - Bool*
    - char**
    - bin128*
    - u32*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5392
      start: 4937
    functionDepth: 2
    functionLinenumber: 4937
    functionLinenumberEnd: 5392
    functionName: gf_mpd_resolve_url
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 1
    functionsReached:
    - gf_free
    - strcat
    - gf_strdup
    - gf_assert
    - gf_list_get
    - GF_LOG
    - memcpy
    - strcpy
    - strlen
    - sprintf
    - gf_url_concatenate
    - gf_list_count
    - strcmp
    - gf_mpd_resolve_segment_duration
    - gf_mpd_get_base_url
    - strchr
    - gf_mpd_check_print_format
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mpd_resolve_url(GF_MPD *mpd, GF_MPD_Representation *rep,
      GF_MPD_AdaptationSet *set, GF_MPD_Period *period, const char *mpd_url, u32 base_url_index,
      GF_MPD_URLResolveType resolve_type, u32 item_index, u32 nb_segments_removed,
      char **out_url, u64 *out_range_start, u64 *out_range_end, u64 *segment_duration_in_ms,
      Bool *is_in_base_url, char **out_key_url, bin128 *out_key_iv, u32 *out_start_number,
      s32 subseg_index)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5401,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5402,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - mpd
    argTypes:
    - GF_MPD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5407
      start: 5394
    functionDepth: 1
    functionLinenumber: 5394
    functionLinenumberEnd: 5407
    functionName: gf_mpd_get_duration
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mpd_get_duration(GF_MPD *mpd)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5474,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5478,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 74
    argCount: 7
    argNames:
    - rep
    - set
    - period
    - out_duration
    - out_timescale
    - out_pts_offset
    - out_segment_timeline
    argTypes:
    - GF_MPD_Representation*
    - GF_MPD_AdaptationSet*
    - GF_MPD_Period*
    - u64*
    - u32*
    - u64*
    - GF_MPD_SegmentTimeline**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5481
      start: 5409
    functionDepth: 1
    functionLinenumber: 5409
    functionLinenumberEnd: 5481
    functionName: gf_mpd_resolve_segment_duration
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mpd_resolve_segment_duration(GF_MPD_Representation *rep,
      GF_MPD_AdaptationSet *set, GF_MPD_Period *period, u64 *out_duration, u32 *out_timescale,
      u64 *out_pts_offset, GF_MPD_SegmentTimeline **out_segment_timeline)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5488,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5489,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - timeline
    - segment_index
    - segment_duration
    argTypes:
    - GF_MPD_SegmentTimeline*
    - u32
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5502
      start: 5483
    functionDepth: 1
    functionLinenumber: 5483
    functionLinenumberEnd: 5502
    functionName: gf_mpd_segment_timeline_start
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: u64
    signature: u64 gf_mpd_segment_timeline_start(GF_MPD_SegmentTimeline *timeline,
      u32 segment_index, u64 *segment_duration)
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5529,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5536,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5542,1
    - Dst: gf_mpd_segment_timeline_start
      Src: /src/gpac/src/media_tools/mpd.c:5547,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5554,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:5572,1
    - Dst: gf_mpd_segment_timeline_start
      Src: /src/gpac/src/media_tools/mpd.c:5599,1
    CyclomaticComplexity: 60
    EdgeCount: 60
    ICount: 118
    argCount: 7
    argNames:
    - in_segment_index
    - period
    - set
    - rep
    - out_segment_start_time
    - out_opt_segment_duration
    - out_opt_scale
    argTypes:
    - s32
    - GF_MPD_Period*
    - GF_MPD_AdaptationSet*
    - GF_MPD_Representation*
    - u64*
    - u64*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5611
      start: 5504
    functionDepth: 2
    functionLinenumber: 5504
    functionLinenumberEnd: 5611
    functionName: gf_mpd_get_segment_start_time_with_timescale
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_list_get
    - gf_mpd_segment_timeline_start
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_mpd_get_segment_start_time_with_timescale(s32 in_segment_index,\n\tGF_MPD_Period
      const * const period, GF_MPD_AdaptationSet const * const set, GF_MPD_Representation
      const * const rep,\n\tu64 *out_segment_start_time, u64 *out_opt_segment_duration,
      u32 *out_opt_scale)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5620,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5621,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:5625,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5633,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 3
    argNames:
    - seek_time
    - in_mpd
    - out_period
    argTypes:
    - Double
    - GF_MPD*
    - GF_MPD_Period**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5644
      start: 5614
    functionDepth: 1
    functionLinenumber: 5614
    functionLinenumberEnd: 5644
    functionName: mpd_seek_periods
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mpd_seek_periods(Double seek_time, GF_MPD const * const in_mpd,
      GF_MPD_Period **out_period)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_get_segment_start_time_with_timescale
      Src: /src/gpac/src/media_tools/mpd.c:5666,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 37
    argCount: 8
    argNames:
    - seek_time
    - seek_mode
    - in_period
    - in_set
    - in_rep
    - out_segment_index
    - out_opt_seek_time
    - out_seg_dur
    argTypes:
    - Double
    - MPDSeekMode
    - GF_MPD_Period*
    - GF_MPD_AdaptationSet*
    - GF_MPD_Representation*
    - u32*
    - Double*
    - Double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5699
      start: 5648
    functionDepth: 3
    functionLinenumber: 5648
    functionLinenumberEnd: 5699
    functionName: gf_mpd_seek_in_period
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_get_segment_start_time_with_timescale
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_mpd_seek_in_period(Double seek_time, MPDSeekMode seek_mode,\n\tGF_MPD_Period
      const * const in_period, GF_MPD_AdaptationSet const * const in_set, GF_MPD_Representation
      const * const in_rep,\n\tu32 *out_segment_index, Double *out_opt_seek_time,
      Double *out_seg_dur)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:5723,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:5725,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:5727,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5728,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:5729,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5734,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:5735,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5736,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:5737,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 3
    argNames:
    - mpd
    - container
    - root
    argTypes:
    - GF_MPD*
    - GF_List*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5741
      start: 5717
    functionDepth: 1
    functionLinenumber: 5717
    functionLinenumberEnd: 5741
    functionName: smooth_parse_chunk
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - sscanf
    - GF_SAFEALLOC
    - strcmp
    - gf_list_add
    - atoi
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err smooth_parse_chunk(GF_MPD *mpd, GF_List *container, GF_XMLNode
      *root)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:5746,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:5748,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5749,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:5756,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:5756,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:5756,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:5756,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpd.c:5757,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/mpd.c:5758,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5759,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:5760,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:5760,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5763,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 4
    argNames:
    - src_str
    - str_match
    - str_replace
    - output
    argTypes:
    - char*
    - char*
    - char*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5766
      start: 5743
    functionDepth: 0
    functionLinenumber: 5743
    functionLinenumberEnd: 5766
    functionName: smooth_replace_string
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - strcat
    - gf_strdup
    - strcpy
    - strlen
    - strstr
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err smooth_replace_string(char *src_str, char *str_match, char *str_replace,
      char **output)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:5777,1
    - Dst: gf_mpd_init_common_attributes
      Src: /src/gpac/src/media_tools/mpd.c:5779,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:5780,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:5781,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:5782,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:5785,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:5804,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5805,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:5805,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5806,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:5806,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5807,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:5808,1
    - Dst: ISBMFFI_ADD_KEYWORD
      Src: /src/gpac/src/media_tools/mpd.c:5809,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5811,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:5812,1
    - Dst: ISBMFFI_ADD_KEYWORD
      Src: /src/gpac/src/media_tools/mpd.c:5813,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5815,1
    - Dst: ISBMFFI_ADD_KEYWORD
      Src: /src/gpac/src/media_tools/mpd.c:5816,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5818,1
    - Dst: ISBMFFI_ADD_KEYWORD
      Src: /src/gpac/src/media_tools/mpd.c:5819,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5821,1
    - Dst: ISBMFFI_ADD_KEYWORD
      Src: /src/gpac/src/media_tools/mpd.c:5822,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5824,1
    - Dst: ISBMFFI_ADD_KEYWORD
      Src: /src/gpac/src/media_tools/mpd.c:5825,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5828,1
    - Dst: ISBMFFI_ADD_KEYWORD
      Src: /src/gpac/src/media_tools/mpd.c:5829,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5832,1
    - Dst: ISBMFFI_ADD_KEYWORD
      Src: /src/gpac/src/media_tools/mpd.c:5833,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5836,1
    - Dst: ISBMFFI_ADD_KEYWORD
      Src: /src/gpac/src/media_tools/mpd.c:5837,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:5843,1
    - Dst: ISBMFFI_ADD_KEYWORD
      Src: /src/gpac/src/media_tools/mpd.c:5846,1
    - Dst: ISBMFFI_ADD_KEYWORD_CONST
      Src: /src/gpac/src/media_tools/mpd.c:5849,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:5851,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:5852,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 58
    argCount: 4
    argNames:
    - mpd
    - container
    - root
    - timescale
    argTypes:
    - GF_MPD*
    - GF_List*
    - GF_XMLNode*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5856
      start: 5768
    functionDepth: 2
    functionLinenumber: 5768
    functionLinenumberEnd: 5856
    functionName: smooth_parse_quality_level
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_strdup
    - GF_SAFEALLOC
    - sprintf
    - ISBMFFI_ADD_KEYWORD_CONST
    - strcmp
    - gf_list_add
    - atoi
    - gf_dynstrcat
    - ISBMFFI_ADD_KEYWORD
    - gf_list_enum
    - gf_mpd_init_common_attributes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err smooth_parse_quality_level(GF_MPD *mpd, GF_List *container,
      GF_XMLNode *root, u32 timescale)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _value
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5795
      start: 5788
    functionDepth: 0
    functionLinenumber: 5788
    functionLinenumberEnd: 5795
    functionName: ISBMFFI_ADD_KEYWORD
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ISBMFFI_ADD_KEYWORD(_name, _value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _value
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5802
      start: 5796
    functionDepth: 0
    functionLinenumber: 5796
    functionLinenumberEnd: 5802
    functionName: ISBMFFI_ADD_KEYWORD_CONST
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ISBMFFI_ADD_KEYWORD_CONST(_name, _value)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:5865,1
    - Dst: gf_mpd_init_common_attributes
      Src: /src/gpac/src/media_tools/mpd.c:5868,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:5870,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:5872,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:5873,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:5874,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:5875,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:5876,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:5877,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:5878,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:5879,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:5885,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5886,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5887,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5888,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:5889,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5891,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:5891,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5892,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:5892,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5893,1
    - Dst: smooth_replace_string
      Src: /src/gpac/src/media_tools/mpd.c:5895,1
    - Dst: smooth_replace_string
      Src: /src/gpac/src/media_tools/mpd.c:5896,1
    - Dst: smooth_replace_string
      Src: /src/gpac/src/media_tools/mpd.c:5897,1
    - Dst: smooth_replace_string
      Src: /src/gpac/src/media_tools/mpd.c:5898,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:5901,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:5905,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:5908,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:5913,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5914,1
    - Dst: smooth_parse_quality_level
      Src: /src/gpac/src/media_tools/mpd.c:5915,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5917,1
    - Dst: smooth_parse_chunk
      Src: /src/gpac/src/media_tools/mpd.c:5918,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 56
    argCount: 4
    argNames:
    - mpd
    - container
    - root
    - timescale
    argTypes:
    - GF_MPD*
    - GF_List*
    - GF_XMLNode*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5923
      start: 5858
    functionDepth: 3
    functionLinenumber: 5858
    functionLinenumberEnd: 5923
    functionName: smooth_parse_stream_index
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - smooth_replace_string
    - GF_SAFEALLOC
    - smooth_parse_quality_level
    - smooth_parse_chunk
    - strcmp
    - gf_list_add
    - atoi
    - gf_list_enum
    - gf_mpd_init_common_attributes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err smooth_parse_stream_index(GF_MPD *mpd, GF_List *container, GF_XMLNode
      *root, u32 timescale)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_init_struct
      Src: /src/gpac/src/media_tools/mpd.c:5937,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:5947,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5948,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:5949,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5950,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:5951,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5952,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/mpd.c:5952,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5954,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:5955,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:5963,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:5965,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:5966,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:5970,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5971,1
    - Dst: smooth_parse_stream_index
      Src: /src/gpac/src/media_tools/mpd.c:5972,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 39
    argCount: 3
    argNames:
    - root
    - mpd
    - default_base_url
    argTypes:
    - GF_XMLNode*
    - GF_MPD*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5978
      start: 5925
    functionDepth: 4
    functionLinenumber: 5925
    functionLinenumberEnd: 5978
    functionName: gf_mpd_init_smooth_from_dom
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - sscanf
    - GF_SAFEALLOC
    - smooth_parse_stream_index
    - gf_mpd_init_struct
    - strcmp
    - atoi
    - gf_list_add
    - stricmp
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mpd_init_smooth_from_dom(GF_XMLNode *root, GF_MPD *mpd,
      const char *default_base_url)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/media_tools/mpd.c:5983,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/media_tools/mpd.c:5984,1
    - Dst: gf_mpd_init_smooth_from_dom
      Src: /src/gpac/src/media_tools/mpd.c:5986,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/mpd.c:5986,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:5988,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:5991,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/mpd.c:5993,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - smooth_file
    - mpd
    - default_base_url
    argTypes:
    - char*
    - GF_MPD*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5995
      start: 5980
    functionDepth: 5
    functionLinenumber: 5980
    functionLinenumberEnd: 5995
    functionName: gf_mpd_smooth_to_mpd
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 1
    functionsReached:
    - gf_xml_dom_parse
    - gf_xml_dom_get_root
    - GF_LOG
    - gf_xml_dom_new
    - gf_xml_dom_del
    - gf_mpd_init_smooth_from_dom
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mpd_smooth_to_mpd(char * smooth_file, GF_MPD *mpd, const
      char *default_base_url)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _nb_chars
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6012
      start: 5996
    functionDepth: 0
    functionLinenumber: 5996
    functionLinenumberEnd: 6012
    functionName: EXTRACT_FORMAT
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EXTRACT_FORMAT(_nb_chars)
  - BBCount: 68
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/media_tools/mpd.c:6033,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/mpd.c:6044,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/mpd.c:6045,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6062,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:6065,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:6069,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:6069,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:6072,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:6074,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6081,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6084,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:6086,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6090,1
    - Dst: EXTRACT_FORMAT
      Src: /src/gpac/src/media_tools/mpd.c:6091,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:6093,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6094,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6097,1
    - Dst: EXTRACT_FORMAT
      Src: /src/gpac/src/media_tools/mpd.c:6098,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6101,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6107,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6108,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:6109,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6110,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6113,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6114,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:6116,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6123,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6124,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6131,1
    - Dst: EXTRACT_FORMAT
      Src: /src/gpac/src/media_tools/mpd.c:6132,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6136,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:6141,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6142,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6145,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6146,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6149,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6152,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6155,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6156,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/mpd.c:6159,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6164,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6167,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6168,1
    - Dst: strncpy
      Src: /src/gpac/src/media_tools/mpd.c:6171,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6173,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6176,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6177,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6180,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6183,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6186,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6187,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6190,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6192,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6195,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6196,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6199,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6201,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6204,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6205,1
    - Dst: strncpy
      Src: /src/gpac/src/media_tools/mpd.c:6208,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6210,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:6218,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6219,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:6223,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:6223,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6225,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6227,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6232,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6234,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:6238,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6239,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:6242,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6243,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6248,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6249,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6250,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6253,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/mpd.c:6254,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:6262,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/media_tools/mpd.c:6266,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/media_tools/mpd.c:6267,1
    CyclomaticComplexity: 108
    EdgeCount: 108
    ICount: 220
    argCount: 12
    argNames:
    - seg_type
    - is_bs_switching
    - segment_name
    - rep_id
    - base_url
    - seg_rad_name
    - seg_ext
    - start_time
    - bandwidth
    - segment_number
    - use_segment_timeline
    - forced
    argTypes:
    - GF_DashTemplateSegmentType
    - Bool
    - char*
    - char*
    - char*
    - char*
    - char*
    - u64
    - u32
    - u32
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6274
      start: 6012
    functionDepth: 1
    functionLinenumber: 6012
    functionLinenumberEnd: 6274
    functionName: gf_media_mpd_format_segment_name
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_dir_exists
    - strrchr
    - GF_LOG
    - strcpy
    - sprintf
    - strstr
    - gf_mkdir
    - strncpy
    - strnicmp
    - EXTRACT_FORMAT
    - gf_sys_old_arch_compat
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_mpd_format_segment_name(GF_DashTemplateSegmentType
      seg_type, Bool is_bs_switching, char *segment_name, const char *rep_id, const
      char *base_url, const char *seg_rad_name, const char *seg_ext, u64 start_time,
      u32 bandwidth, u32 segment_number, Bool use_segment_timeline, Bool forced)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/media_tools/mpd.c:6282,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/media_tools/mpd.c:6283,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/mpd.c:6285,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:6286,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/mpd.c:6286,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/mpd.c:6289,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/mpd.c:6291,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:6292,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6295,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:6296,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/mpd.c:6297,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:6302,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6308,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:6313,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6314,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:6314,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6315,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:6315,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6316,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6316,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6317,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:6317,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:6325,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6327,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpd.c:6330,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/mpd.c:6332,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:6333,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpd.c:6336,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:6341,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6343,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:6346,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6347,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:6347,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6348,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:6348,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6349,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:6349,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/mpd.c:6357,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:6360,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 82
    argCount: 7
    argNames:
    - cues_file
    - stream_id
    - cues_timescale
    - use_edit_list
    - ts_offset
    - out_cues
    - nb_cues
    argTypes:
    - char*
    - u32
    - u32*
    - Bool*
    - s32*
    - GF_DASHCueInfo**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6364
      start: 6277
    functionDepth: 1
    functionLinenumber: 6277
    functionLinenumberEnd: 6364
    functionName: gf_mpd_load_cues
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_xml_dom_parse
    - sscanf
    - gf_xml_dom_get_root
    - GF_LOG
    - memset
    - gf_xml_dom_new
    - strcmp
    - atoi
    - gf_error_to_string
    - gf_list_enum
    - gf_xml_dom_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mpd_load_cues(const char *cues_file, u32 stream_id, u32 *cues_timescale,
      Bool *use_edit_list, s32 *ts_offset, GF_DASHCueInfo **out_cues, u32 *nb_cues)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:6371,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:6374,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:6375,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:6377,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:6386,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:6387,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:6389,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:6391,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:6393,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:6396,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:6400,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/media_tools/mpd.c:6401,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:6407,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/mpd.c:6408,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:6409,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:6410,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:6412,1
    - Dst: gf_mpd_print_adaptation_set
      Src: /src/gpac/src/media_tools/mpd.c:6422,1
    - Dst: gf_ftell
      Src: /src/gpac/src/media_tools/mpd.c:6423,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpd.c:6424,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/mpd.c:6425,1
    - Dst: gf_fread
      Src: /src/gpac/src/media_tools/mpd.c:6426,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpd.c:6429,1
    - Dst: gf_blob_register
      Src: /src/gpac/src/media_tools/mpd.c:6433,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/media_tools/mpd.c:6436,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/media_tools/mpd.c:6437,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/mpd.c:6438,1
    - Dst: gf_mpd_parse_adaptation_set
      Src: /src/gpac/src/media_tools/mpd.c:6439,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/mpd.c:6440,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:6441,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:6442,1
    - Dst: gf_blob_unregister
      Src: /src/gpac/src/media_tools/mpd.c:6443,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpd.c:6444,1
    - Dst: gf_mpd_representation_free
      Src: /src/gpac/src/media_tools/mpd.c:6447,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpd.c:6448,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpd.c:6452,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 61
    argCount: 1
    argNames:
    - mpd
    argTypes:
    - GF_MPD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6456
      start: 6366
    functionDepth: 8
    functionLinenumber: 6366
    functionLinenumberEnd: 6456
    functionName: gf_mpd_split_adaptation_sets
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_xml_dom_get_root
    - gf_mpd_representation_free
    - gf_list_count
    - memset
    - gf_list_get
    - gf_list_new
    - gf_fseek
    - gf_xml_dom_new
    - gf_list_add
    - gf_file_temp
    - gf_ftell
    - gf_xml_dom_parse
    - gf_fread
    - gf_mpd_parse_adaptation_set
    - gf_blob_register
    - gf_mpd_print_adaptation_set
    - gf_malloc
    - gf_list_del
    - gf_fclose
    - gf_blob_unregister
    - gf_xml_dom_del
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mpd_split_adaptation_sets(GF_MPD *mpd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:6460,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:6462,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6463,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - desclist
    - scheme_id
    argTypes:
    - GF_List*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6466
      start: 6458
    functionDepth: 1
    functionLinenumber: 6458
    functionLinenumberEnd: 6466
    functionName: gf_mpd_get_descriptor
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: GF_MPD_Descriptor
    signature: GF_MPD_Descriptor *gf_mpd_get_descriptor(GF_List *desclist, char *scheme_id)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:6473,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:6474,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:6476,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6479,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:6482,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6485,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6487,1
    - Dst: gf_mpd_check_print_format
      Src: /src/gpac/src/media_tools/mpd.c:6489,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:6490,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:6493,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6494,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:6495,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 3
    argNames:
    - llhas_template
    - segment_filename
    - part_idx
    argTypes:
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6497
      start: 6468
    functionDepth: 1
    functionLinenumber: 6468
    functionLinenumberEnd: 6497
    functionName: gf_mpd_resolve_subnumber
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 1
    functionsReached:
    - gf_strdup
    - sprintf
    - strstr
    - gf_dynstrcat
    - strchr
    - gf_mpd_check_print_format
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_mpd_resolve_subnumber(char *llhas_template, char *segment_filename,
      u32 part_idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - p
    argTypes:
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 39
    functionName: convert16
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE convert16 (u8 *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - p
    argTypes:
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 56
    functionName: convert32
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE convert32 (u8 *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionName: file_open
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - gf_fopen
    linkageType: ''
    returnType: FILE
    signature: FILE *file_open (const char *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - fd
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 152
    functionName: file_okay
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool file_okay (FILE *fd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - fd
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionName: file_close
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    linkageType: ''
    returnType: void
    signature: void file_close (FILE *fd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fread
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - fd
    - buffer
    - len
    argTypes:
    - FILE*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 165
    functionName: file_read_bytes
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - gf_fread
    linkageType: ''
    returnType: Bool
    signature: "Bool file_read_bytes(FILE *fd,\n                            u8 *buffer,\n
      \                           u32 len)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - fd
    - len
    argTypes:
    - FILE*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 171
    functionName: file_skip_bytes
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - gf_fseek
    linkageType: ''
    returnType: void
    signature: void file_skip_bytes (FILE *fd, s32 len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __f
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 174
    functionName: file_location
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: file_location(__f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - __f
    - ','
    - __off
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 175
    functionName: file_seek_to
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: file_seek_to(__f, __off)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fsize
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - fd
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 179
    functionName: file_size
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - gf_fsize
    linkageType: ''
    returnType: u64
    signature: u64 file_size(FILE *fd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:184,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - loc
    - ts
    argTypes:
    - s64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 190
    functionName: create_record
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: mpeg2ps_record_pes_t
    signature: mpeg2ps_record_pes_t *create_record (s64 loc, u64 ts)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: create_record
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:206,1
    - Dst: create_record
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:211,1
    - Dst: create_record
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:217,1
    - Dst: create_record
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:232,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 41
    argCount: 3
    argNames:
    - sptr
    - location
    - pTs
    argTypes:
    - mpeg2ps_stream_t*
    - s64
    - mpeg2ps_ts_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 193
    functionDepth: 2
    functionLinenumber: 193
    functionLinenumberEnd: 236
    functionName: mpeg2ps_record_pts
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - create_record
    linkageType: ''
    returnType: void
    signature: void mpeg2ps_record_pts (mpeg2ps_stream_t *sptr, s64 location, mpeg2ps_ts_t
      *pTs)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 76
    argCount: 8
    argNames:
    - pbuffer
    - buflen
    - have_mpeg2
    - height
    - width
    - frame_rate
    - bitrate
    - aspect_ratio
    argTypes:
    - unsigned char*
    - u32
    - s32*
    - u32*
    - u32*
    - Double*
    - Double*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 351
    functionName: MPEG12_ParseSeqHdr
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int MPEG12_ParseSeqHdr(unsigned char *pbuffer, u32 buflen, s32 *have_mpeg2,
      u32 *height, u32 *width,\n                       Double *frame_rate, Double
      *bitrate, u32 *aspect_ratio)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pbuffer
    argTypes:
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 354
    functionDepth: 0
    functionLinenumber: 354
    functionLinenumberEnd: 358
    functionName: MPEG12_PictHdrType
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 MPEG12_PictHdrType (unsigned char *pbuffer)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pbuffer
    argTypes:
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 361
    functionDepth: 0
    functionLinenumber: 361
    functionLinenumberEnd: 365
    functionName: MPEG12_PictHdrTempRef
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u16
    signature: u16 MPEG12_PictHdrTempRef(unsigned char *pbuffer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: convert16
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:376,1
    - Dst: convert16
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - pak
    argTypes:
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 369
    functionDepth: 1
    functionLinenumber: 369
    functionLinenumberEnd: 382
    functionName: read_pts
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - convert16
    linkageType: ''
    returnType: u64
    signature: u64 read_pts (u8 *pak)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:389,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:394,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - stream_id
    - substream
    argTypes:
    - u8
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 385
    functionDepth: 1
    functionLinenumber: 385
    functionLinenumberEnd: 397
    functionName: mpeg2ps_stream_create
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: mpeg2ps_stream_t
    signature: "mpeg2ps_stream_t *mpeg2ps_stream_create (u8 stream_id,\n        u8
      substream)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:405,1
    - Dst: file_close
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:408,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:411,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:412,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - sptr
    argTypes:
    - mpeg2ps_stream_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 399
    functionDepth: 2
    functionLinenumber: 399
    functionLinenumberEnd: 413
    functionName: mpeg2ps_stream_destroy
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - gf_free
    - file_close
    linkageType: ''
    returnType: void
    signature: void mpeg2ps_stream_destroy (mpeg2ps_stream_t *sptr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: file_skip_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:428,1
    - Dst: file_read_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:429,1
    - Dst: file_skip_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:438,1
    - Dst: file_skip_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:441,1
    - Dst: file_read_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:442,1
    - Dst: file_skip_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:445,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - fd
    - pak
    - read_from_start
    argTypes:
    - FILE*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 420
    functionDepth: 2
    functionLinenumber: 420
    functionLinenumberEnd: 446
    functionName: adv_past_pack_hdr
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - file_skip_bytes
    - file_read_bytes
    linkageType: ''
    returnType: void
    signature: "void adv_past_pack_hdr (FILE *fd,\n                               u8
      *pak,\n                               u32 read_from_start)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:460,1
    - Dst: file_read_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:461,1
    - Dst: gf_mv12_next_start_code
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:465,1
    - Dst: file_skip_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:471,1
    - Dst: file_read_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:492,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 37
    argCount: 3
    argNames:
    - fd
    - saved
    - len
    argTypes:
    - FILE*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 454
    functionDepth: 2
    functionLinenumber: 454
    functionLinenumberEnd: 499
    functionName: find_pack_start
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - file_skip_bytes
    - memcpy
    - gf_mv12_next_start_code
    - file_read_bytes
    linkageType: ''
    returnType: Bool
    signature: "Bool find_pack_start (FILE *fd,\n                             u8 *saved,\n
      \                            u32 len)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memmove
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:516,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:522,1
    - Dst: gf_fread
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:527,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - sptr
    - pes_len
    argTypes:
    - mpeg2ps_stream_t*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 505
    functionDepth: 1
    functionLinenumber: 505
    functionLinenumberEnd: 529
    functionName: copy_bytes_to_pes_buffer
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - gf_fread
    - memmove
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: "void copy_bytes_to_pes_buffer (mpeg2ps_stream_t *sptr,\n                                      u16
      pes_len)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: file_read_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:547,1
    - Dst: convert32
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:551,1
    - Dst: find_pack_start
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:556,1
    - Dst: adv_past_pack_hdr
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:563,1
    - Dst: file_skip_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:567,1
    - Dst: convert16
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:573,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 25
    argCount: 3
    argNames:
    - fd
    - stream_id
    - pes_len
    argTypes:
    - FILE*
    - u8*
    - u16*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 538
    functionDepth: 3
    functionLinenumber: 538
    functionLinenumberEnd: 577
    functionName: read_to_next_pes_header
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - adv_past_pack_hdr
    - find_pack_start
    - convert32
    - file_read_bytes
    - convert16
    - file_skip_bytes
    linkageType: ''
    returnType: Bool
    signature: "Bool read_to_next_pes_header (FILE *fd,\n                                     u8
      *stream_id,\n                                     u16 *pes_len)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: file_read_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:597,1
    - Dst: file_read_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:602,1
    - Dst: file_skip_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:613,1
    - Dst: file_read_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:614,1
    - Dst: file_read_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:622,1
    - Dst: read_pts
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:626,1
    - Dst: file_read_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:631,1
    - Dst: read_pts
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:637,1
    - Dst: read_pts
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:638,1
    - Dst: file_read_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:642,1
    - Dst: file_read_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:650,1
    - Dst: read_pts
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:651,1
    - Dst: file_read_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:659,1
    - Dst: read_pts
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:660,1
    - Dst: read_pts
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:661,1
    - Dst: file_skip_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:664,1
    - Dst: file_skip_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:666,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 76
    argCount: 5
    argNames:
    - fd
    - orig_pes_len
    - pes_left
    - have_ts
    - ts
    argTypes:
    - FILE*
    - u16
    - u16*
    - Bool*
    - mpeg2ps_ts_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 584
    functionDepth: 2
    functionLinenumber: 584
    functionLinenumberEnd: 671
    functionName: read_pes_header_data
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - file_skip_bytes
    - read_pts
    - file_read_bytes
    linkageType: ''
    returnType: Bool
    signature: "Bool read_pes_header_data (FILE *fd,\n                                  u16
      orig_pes_len,\n                                  u16 *pes_left,\n                                  Bool
      *have_ts,\n                                  mpeg2ps_ts_t *ts)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: read_to_next_pes_header
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:684,1
    - Dst: file_skip_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:689,1
    - Dst: file_location
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:692,1
    - Dst: read_pes_header_data
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:694,1
    - Dst: file_read_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:706,1
    - Dst: file_skip_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:709,1
    - Dst: file_skip_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:713,1
    - Dst: mpeg2ps_record_pts
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:717,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 4
    argNames:
    - sptr
    - pes_len
    - have_ts
    - found_loc
    argTypes:
    - mpeg2ps_stream_t*
    - u16*
    - Bool*
    - s64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 673
    functionDepth: 4
    functionLinenumber: 673
    functionLinenumberEnd: 723
    functionName: search_for_next_pes_header
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - mpeg2ps_record_pts
    - read_pes_header_data
    - read_to_next_pes_header
    - file_read_bytes
    - file_location
    - file_skip_bytes
    linkageType: ''
    returnType: Bool
    signature: "Bool search_for_next_pes_header (mpeg2ps_stream_t *sptr,\n                                        u16
      *pes_len,\n                                        Bool *have_ts,\n                                        s64
      *found_loc)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: search_for_next_pes_header
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:735,1
    - Dst: copy_bytes_to_pes_buffer
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:739,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - sptr
    argTypes:
    - mpeg2ps_stream_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 742
      start: 730
    functionDepth: 5
    functionLinenumber: 730
    functionLinenumberEnd: 742
    functionName: mpeg2ps_stream_read_next_pes_buffer
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - copy_bytes_to_pes_buffer
    - search_for_next_pes_header
    linkageType: ''
    returnType: Bool
    signature: Bool mpeg2ps_stream_read_next_pes_buffer (mpeg2ps_stream_t *sptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 764
      start: 763
    functionDepth: 0
    functionLinenumber: 763
    functionLinenumberEnd: 764
    functionName: IS_MPEG_START
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_MPEG_START(a)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: mpeg2ps_stream_read_next_pes_buffer
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:781,1
    - Dst: gf_mv12_next_start_code
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:785,1
    - Dst: IS_MPEG_START
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:789,1
    - Dst: mpeg2ps_stream_read_next_pes_buffer
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:796,1
    - Dst: gf_mv12_next_start_code
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:819,1
    - Dst: mpeg2ps_stream_read_next_pes_buffer
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:826,1
    - Dst: IS_MPEG_START
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:839,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 59
    argCount: 1
    argNames:
    - sptr
    argTypes:
    - mpeg2ps_stream_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 850
      start: 765
    functionDepth: 6
    functionLinenumber: 765
    functionLinenumberEnd: 850
    functionName: mpeg2ps_stream_find_mpeg_video_frame
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - mpeg2ps_stream_read_next_pes_buffer
    - IS_MPEG_START
    - gf_mv12_next_start_code
    linkageType: ''
    returnType: Bool
    signature: Bool mpeg2ps_stream_find_mpeg_video_frame (mpeg2ps_stream_t *sptr)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:857,1
    - Dst: mpeg2ps_stream_read_next_pes_buffer
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:862,1
    - Dst: gf_ac3_parser
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:866,1
    - Dst: mpeg2ps_stream_read_next_pes_buffer
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:877,1
    - Dst: mpeg2ps_stream_read_next_pes_buffer
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:890,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 1
    argNames:
    - sptr
    argTypes:
    - mpeg2ps_stream_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 896
      start: 852
    functionDepth: 6
    functionLinenumber: 852
    functionLinenumberEnd: 896
    functionName: mpeg2ps_stream_find_ac3_frame
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_ac3_parser
    - mpeg2ps_stream_read_next_pes_buffer
    linkageType: ''
    returnType: Bool
    signature: Bool mpeg2ps_stream_find_ac3_frame (mpeg2ps_stream_t *sptr)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: mpeg2ps_stream_read_next_pes_buffer
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:907,1
    - Dst: gf_mp3_get_next_header_mem
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:911,1
    - Dst: mpeg2ps_stream_read_next_pes_buffer
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:923,1
    - Dst: gf_mp3_frame_size
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:928,1
    - Dst: mpeg2ps_stream_read_next_pes_buffer
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:937,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 1
    argNames:
    - sptr
    argTypes:
    - mpeg2ps_stream_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 898
    functionDepth: 6
    functionLinenumber: 898
    functionLinenumberEnd: 943
    functionName: mpeg2ps_stream_find_mp3_frame
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - gf_mp3_frame_size
    - gf_mp3_get_next_header_mem
    - mpeg2ps_stream_read_next_pes_buffer
    linkageType: ''
    returnType: Bool
    signature: Bool mpeg2ps_stream_find_mp3_frame (mpeg2ps_stream_t *sptr)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: mpeg2ps_stream_find_mpeg_video_frame
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:956,1
    - Dst: mpeg2ps_stream_find_ac3_frame
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:967,1
    - Dst: mpeg2ps_stream_find_mp3_frame
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:975,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 4
    argNames:
    - sptr
    - buffer
    - buflen
    - advance_pointers
    argTypes:
    - mpeg2ps_stream_t*
    - u8**
    - u32*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 949
    functionDepth: 7
    functionLinenumber: 949
    functionLinenumberEnd: 983
    functionName: mpeg2ps_stream_read_frame
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - mpeg2ps_stream_find_ac3_frame
    - mpeg2ps_stream_find_mp3_frame
    - mpeg2ps_stream_find_mpeg_video_frame
    linkageType: ''
    returnType: Bool
    signature: "Bool mpeg2ps_stream_read_frame (mpeg2ps_stream_t *sptr,\n                                       u8
      **buffer,\n                                       u32 *buflen,\n                                       Bool
      advance_pointers)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: MPEG12_ParseSeqHdr
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:993,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1010,1
    - Dst: gf_mp3_num_channels
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1012,1
    - Dst: gf_mp3_sampling_rate
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1013,1
    - Dst: gf_mp3_window_size
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1014,1
    - Dst: gf_mp3_bit_rate
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1015,1
    - Dst: gf_mp3_layer
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1016,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1023,1
    - Dst: gf_ac3_parser
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1024,1
    - Dst: gf_ac3_get_bitrate
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1025,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 33
    argCount: 3
    argNames:
    - sptr
    - buffer
    - buflen
    argTypes:
    - mpeg2ps_stream_t*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1035
      start: 988
    functionDepth: 1
    functionLinenumber: 988
    functionLinenumberEnd: 1035
    functionName: get_info_from_frame
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - gf_mp3_num_channels
    - gf_mp3_bit_rate
    - gf_mp3_sampling_rate
    - gf_ac3_parser
    - gf_mp3_layer
    - gf_mp3_window_size
    - memset
    - GF_4CC
    - MPEG12_ParseSeqHdr
    - gf_ac3_get_bitrate
    linkageType: ''
    returnType: void
    signature: "void get_info_from_frame (mpeg2ps_stream_t *sptr,\n                                 u8
      *buffer,\n                                 u32 buflen)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - sptr
    argTypes:
    - mpeg2ps_stream_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1048
      start: 1041
    functionDepth: 0
    functionLinenumber: 1041
    functionLinenumberEnd: 1048
    functionName: clear_stream_buffer
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void clear_stream_buffer (mpeg2ps_stream_t *sptr)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 5
    argNames:
    - sptr
    - ts_type
    - ts
    - base_ts
    - frames_since_ts
    argTypes:
    - mpeg2ps_stream_t*
    - mpeg2ps_ts_type_t
    - u64
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1074
      start: 1054
    functionDepth: 0
    functionLinenumber: 1054
    functionLinenumberEnd: 1074
    functionName: convert_ts
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: "u64 convert_ts (mpeg2ps_stream_t *sptr,\n                       mpeg2ps_ts_type_t
      ts_type,\n                       u64 ts,\n                       u64 base_ts,\n
      \                      u32 frames_since_ts)"
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 3
    argNames:
    - ps
    - stream_id
    - substream
    argTypes:
    - mpeg2ps_t*
    - u8
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1102
      start: 1081
    functionDepth: 0
    functionLinenumber: 1081
    functionLinenumberEnd: 1102
    functionName: find_stream_from_id
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: mpeg2ps_stream_t
    signature: "mpeg2ps_stream_t *find_stream_from_id (mpeg2ps_t *ps,\n        u8
      stream_id,\n        u8 substream)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: find_stream_from_id
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1115,1
    - Dst: mpeg2ps_stream_create
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1120,1
    - Dst: mpeg2ps_stream_destroy
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1135,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 5
    argNames:
    - ps
    - stream_id
    - substream
    - first_loc
    - ts
    argTypes:
    - mpeg2ps_t*
    - u8
    - u8
    - s64
    - mpeg2ps_ts_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1142
      start: 1107
    functionDepth: 3
    functionLinenumber: 1107
    functionLinenumberEnd: 1142
    functionName: add_stream
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - mpeg2ps_stream_destroy
    - mpeg2ps_stream_create
    - find_stream_from_id
    linkageType: ''
    returnType: Bool
    signature: "Bool add_stream (mpeg2ps_t *ps,\n                        u8 stream_id,\n
      \                       u8 substream,\n                        s64 first_loc,\n
      \                       mpeg2ps_ts_t *ts)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: file_open
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1149,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ps
    - sptr
    argTypes:
    - mpeg2ps_t*
    - mpeg2ps_stream_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1150
      start: 1144
    functionDepth: 1
    functionLinenumber: 1144
    functionLinenumberEnd: 1150
    functionName: check_fd_for_stream
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - file_open
    linkageType: ''
    returnType: void
    signature: "void check_fd_for_stream (mpeg2ps_t *ps,\n                                 mpeg2ps_stream_t
      *sptr)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - sptr
    argTypes:
    - mpeg2ps_stream_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1171
      start: 1158
    functionDepth: 0
    functionLinenumber: 1158
    functionLinenumberEnd: 1171
    functionName: advance_frame
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void advance_frame (mpeg2ps_stream_t *sptr)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: file_seek_to
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1183,1
    - Dst: clear_stream_buffer
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1198,1
    - Dst: mpeg2ps_stream_read_frame
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1199,1
    - Dst: get_info_from_frame
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1207,1
    - Dst: advance_frame
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1213,1
    - Dst: mpeg2ps_stream_read_frame
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1215,1
    - Dst: clear_stream_buffer
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1239,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 42
    argCount: 1
    argNames:
    - ps
    argTypes:
    - mpeg2ps_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1243
      start: 1176
    functionDepth: 8
    functionLinenumber: 1176
    functionLinenumberEnd: 1243
    functionName: get_info_for_all_streams
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - get_info_from_frame
    - mpeg2ps_stream_read_frame
    - advance_frame
    - file_seek_to
    - clear_stream_buffer
    linkageType: ''
    returnType: void
    signature: void get_info_for_all_streams (mpeg2ps_t *ps)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1254,1
    - Dst: file_size
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1263,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1264,1
    - Dst: read_to_next_pes_header
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1272,1
    - Dst: file_location
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1276,1
    - Dst: read_pes_header_data
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1277,1
    - Dst: file_read_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1287,1
    - Dst: add_stream
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1300,1
    - Dst: file_skip_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1324,1
    - Dst: file_seek_to
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1333,1
    - Dst: read_to_next_pes_header
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1335,1
    - Dst: file_location
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1336,1
    - Dst: read_pes_header_data
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1338,1
    - Dst: file_read_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1346,1
    - Dst: file_skip_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1352,1
    - Dst: find_stream_from_id
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1358,1
    - Dst: add_stream
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1360,1
    - Dst: find_stream_from_id
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1361,1
    - Dst: file_skip_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1367,1
    - Dst: get_info_for_all_streams
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1375,1
    - Dst: file_seek_to
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1410,1
    - Dst: clear_stream_buffer
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1413,1
    - Dst: mpeg2ps_stream_read_frame
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1414,1
    - Dst: clear_stream_buffer
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1421,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1422,1
    - Dst: convert_ts
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1423,1
    - Dst: file_seek_to
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1433,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 120
    argCount: 1
    argNames:
    - ps
    argTypes:
    - mpeg2ps_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1434
      start: 1249
    functionDepth: 9
    functionLinenumber: 1249
    functionLinenumberEnd: 1434
    functionName: mpeg2ps_scan_file
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - add_stream
    - read_pes_header_data
    - mpeg2ps_stream_read_frame
    - find_stream_from_id
    - convert_ts
    - memset
    - read_to_next_pes_header
    - clear_stream_buffer
    - file_read_bytes
    - file_location
    - file_skip_bytes
    - MAX
    - file_seek_to
    - file_size
    - get_info_for_all_streams
    linkageType: ''
    returnType: void
    signature: void mpeg2ps_scan_file (mpeg2ps_t *ps)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ps
    argTypes:
    - mpeg2ps_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1442
      start: 1439
    functionDepth: 0
    functionLinenumber: 1439
    functionLinenumberEnd: 1442
    functionName: mpeg2ps_get_max_time_msec
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 mpeg2ps_get_max_time_msec (mpeg2ps_t *ps)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ps
    argTypes:
    - mpeg2ps_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1447
      start: 1444
    functionDepth: 0
    functionLinenumber: 1444
    functionLinenumberEnd: 1447
    functionName: mpeg2ps_get_video_stream_count
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 mpeg2ps_get_video_stream_count (mpeg2ps_t *ps)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1450
      start: 1449
    functionDepth: 0
    functionLinenumber: 1449
    functionLinenumberEnd: 1450
    functionName: NUM_ELEMENTS_IN_ARRAY
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NUM_ELEMENTS_IN_ARRAY(name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: NUM_ELEMENTS_IN_ARRAY
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1454,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ps
    - streamno
    argTypes:
    - mpeg2ps_t*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1457
      start: 1452
    functionDepth: 1
    functionLinenumber: 1452
    functionLinenumberEnd: 1457
    functionName: invalid_video_streamno
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - NUM_ELEMENTS_IN_ARRAY
    linkageType: ''
    returnType: Bool
    signature: Bool invalid_video_streamno (mpeg2ps_t *ps, u32 streamno)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: invalid_video_streamno
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1462,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ps
    - streamno
    argTypes:
    - mpeg2ps_t*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1469
      start: 1460
    functionDepth: 2
    functionLinenumber: 1460
    functionLinenumberEnd: 1469
    functionName: mpeg2ps_get_video_stream_name
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - invalid_video_streamno
    linkageType: ''
    returnType: char
    signature: char *mpeg2ps_get_video_stream_name (mpeg2ps_t *ps, u32 streamno)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: invalid_video_streamno
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1475,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ps
    - streamno
    argTypes:
    - mpeg2ps_t*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1479
      start: 1472
    functionDepth: 2
    functionLinenumber: 1472
    functionLinenumberEnd: 1479
    functionName: mpeg2ps_get_video_stream_type
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - invalid_video_streamno
    linkageType: ''
    returnType: mpeg2ps_video_type_t
    signature: "mpeg2ps_video_type_t mpeg2ps_get_video_stream_type (mpeg2ps_t *ps,\n
      \       u32 streamno)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: invalid_video_streamno
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1483,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ps
    - streamno
    argTypes:
    - mpeg2ps_t*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1487
      start: 1481
    functionDepth: 2
    functionLinenumber: 1481
    functionLinenumberEnd: 1487
    functionName: mpeg2ps_get_video_stream_width
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - invalid_video_streamno
    linkageType: ''
    returnType: u32
    signature: u32 mpeg2ps_get_video_stream_width (mpeg2ps_t *ps, u32 streamno)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: invalid_video_streamno
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1491,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ps
    - streamno
    argTypes:
    - mpeg2ps_t*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1495
      start: 1489
    functionDepth: 2
    functionLinenumber: 1489
    functionLinenumberEnd: 1495
    functionName: mpeg2ps_get_video_stream_height
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - invalid_video_streamno
    linkageType: ''
    returnType: u32
    signature: u32 mpeg2ps_get_video_stream_height (mpeg2ps_t *ps, u32 streamno)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: invalid_video_streamno
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1499,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ps
    - streamno
    argTypes:
    - mpeg2ps_t*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1503
      start: 1497
    functionDepth: 2
    functionLinenumber: 1497
    functionLinenumberEnd: 1503
    functionName: mpeg2ps_get_video_stream_aspect_ratio
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - invalid_video_streamno
    linkageType: ''
    returnType: u32
    signature: u32 mpeg2ps_get_video_stream_aspect_ratio (mpeg2ps_t *ps, u32 streamno)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: invalid_video_streamno
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1507,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ps
    - streamno
    argTypes:
    - mpeg2ps_t*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1511
      start: 1505
    functionDepth: 2
    functionLinenumber: 1505
    functionLinenumberEnd: 1511
    functionName: mpeg2ps_get_video_stream_bitrate
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - invalid_video_streamno
    linkageType: ''
    returnType: Double
    signature: Double mpeg2ps_get_video_stream_bitrate (mpeg2ps_t *ps, u32 streamno)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: invalid_video_streamno
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1515,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ps
    - streamno
    argTypes:
    - mpeg2ps_t*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1519
      start: 1513
    functionDepth: 2
    functionLinenumber: 1513
    functionLinenumberEnd: 1519
    functionName: mpeg2ps_get_video_stream_framerate
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - invalid_video_streamno
    linkageType: ''
    returnType: Double
    signature: Double mpeg2ps_get_video_stream_framerate (mpeg2ps_t *ps, u32 streamno)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: invalid_video_streamno
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1523,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ps
    - streamno
    argTypes:
    - mpeg2ps_t*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1527
      start: 1521
    functionDepth: 2
    functionLinenumber: 1521
    functionLinenumberEnd: 1527
    functionName: mpeg2ps_get_video_stream_id
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - invalid_video_streamno
    linkageType: ''
    returnType: u32
    signature: u32 mpeg2ps_get_video_stream_id(mpeg2ps_t *ps, u32 streamno)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: NUM_ELEMENTS_IN_ARRAY
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1531,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ps
    - streamno
    argTypes:
    - mpeg2ps_t*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1534
      start: 1529
    functionDepth: 1
    functionLinenumber: 1529
    functionLinenumberEnd: 1534
    functionName: invalid_audio_streamno
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - NUM_ELEMENTS_IN_ARRAY
    linkageType: ''
    returnType: Bool
    signature: Bool invalid_audio_streamno (mpeg2ps_t *ps, u32 streamno)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ps
    argTypes:
    - mpeg2ps_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1539
      start: 1536
    functionDepth: 0
    functionLinenumber: 1536
    functionLinenumberEnd: 1539
    functionName: mpeg2ps_get_audio_stream_count
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 mpeg2ps_get_audio_stream_count (mpeg2ps_t *ps)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: invalid_audio_streamno
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1545,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - ps
    - streamno
    argTypes:
    - mpeg2ps_t*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1564
      start: 1542
    functionDepth: 2
    functionLinenumber: 1542
    functionLinenumberEnd: 1564
    functionName: mpeg2ps_get_audio_stream_name
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - invalid_audio_streamno
    linkageType: ''
    returnType: char
    signature: "char *mpeg2ps_get_audio_stream_name (mpeg2ps_t *ps,\n        u32 streamno)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: invalid_audio_streamno
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1570,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ps
    - streamno
    argTypes:
    - mpeg2ps_t*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1581
      start: 1567
    functionDepth: 2
    functionLinenumber: 1567
    functionLinenumberEnd: 1581
    functionName: mpeg2ps_get_audio_stream_type
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - invalid_audio_streamno
    linkageType: ''
    returnType: mpeg2ps_audio_type_t
    signature: "mpeg2ps_audio_type_t mpeg2ps_get_audio_stream_type (mpeg2ps_t *ps,\n
      \       u32 streamno)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: invalid_audio_streamno
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1585,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ps
    - streamno
    argTypes:
    - mpeg2ps_t*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1589
      start: 1583
    functionDepth: 2
    functionLinenumber: 1583
    functionLinenumberEnd: 1589
    functionName: mpeg2ps_get_audio_stream_sample_freq
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - invalid_audio_streamno
    linkageType: ''
    returnType: u32
    signature: u32 mpeg2ps_get_audio_stream_sample_freq (mpeg2ps_t *ps, u32 streamno)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: invalid_audio_streamno
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1593,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ps
    - streamno
    argTypes:
    - mpeg2ps_t*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1597
      start: 1591
    functionDepth: 2
    functionLinenumber: 1591
    functionLinenumberEnd: 1597
    functionName: mpeg2ps_get_audio_stream_channels
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - invalid_audio_streamno
    linkageType: ''
    returnType: u32
    signature: u32 mpeg2ps_get_audio_stream_channels (mpeg2ps_t *ps, u32 streamno)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: invalid_audio_streamno
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1601,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ps
    - streamno
    argTypes:
    - mpeg2ps_t*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1605
      start: 1599
    functionDepth: 2
    functionLinenumber: 1599
    functionLinenumberEnd: 1605
    functionName: mpeg2ps_get_audio_stream_bitrate
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - invalid_audio_streamno
    linkageType: ''
    returnType: u32
    signature: u32 mpeg2ps_get_audio_stream_bitrate (mpeg2ps_t *ps, u32 streamno)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: invalid_audio_streamno
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1609,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ps
    - streamno
    argTypes:
    - mpeg2ps_t*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1613
      start: 1607
    functionDepth: 2
    functionLinenumber: 1607
    functionLinenumberEnd: 1613
    functionName: mpeg2ps_get_audio_stream_id
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - invalid_audio_streamno
    linkageType: ''
    returnType: u32
    signature: u32 mpeg2ps_get_audio_stream_id (mpeg2ps_t *ps, u32 streamno)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1619,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1624,1
    - Dst: file_open
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1625,1
    - Dst: file_okay
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1626,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1627,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1631,1
    - Dst: mpeg2ps_scan_file
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1632,1
    - Dst: mpeg2ps_close
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1634,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1638
      start: 1616
    functionDepth: 10
    functionLinenumber: 1616
    functionLinenumberEnd: 1638
    functionName: mpeg2ps_init
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - gf_free
    - file_open
    - file_okay
    - gf_strdup
    - GF_SAFEALLOC
    - mpeg2ps_scan_file
    - memset
    - mpeg2ps_close
    linkageType: ''
    returnType: mpeg2ps_t
    signature: mpeg2ps_t *mpeg2ps_init (const char *filename)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: mpeg2ps_stream_destroy
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1645,1
    - Dst: mpeg2ps_stream_destroy
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1649,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1653,1
    - Dst: file_close
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1654,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1655,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - ps
    argTypes:
    - mpeg2ps_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1656
      start: 1640
    functionDepth: 3
    functionLinenumber: 1640
    functionLinenumberEnd: 1656
    functionName: mpeg2ps_close
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 1
    functionsReached:
    - mpeg2ps_stream_destroy
    - gf_free
    - file_close
    linkageType: ''
    returnType: void
    signature: void mpeg2ps_close (mpeg2ps_t *ps)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: convert_ts
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1690,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 4
    argNames:
    - sptr
    - ts_type
    - base_dts
    - freq_ts
    argTypes:
    - mpeg2ps_stream_t*
    - mpeg2ps_ts_type_t
    - u64
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1691
      start: 1669
    functionDepth: 1
    functionLinenumber: 1669
    functionLinenumberEnd: 1691
    functionName: stream_convert_frame_ts_to_msec
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - convert_ts
    linkageType: ''
    returnType: u64
    signature: "u64 stream_convert_frame_ts_to_msec (mpeg2ps_stream_t *sptr,\n        mpeg2ps_ts_type_t
      ts_type,\n        u64 base_dts,\n        u32 *freq_ts)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: invalid_video_streamno
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1705,1
    - Dst: check_fd_for_stream
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1708,1
    - Dst: mpeg2ps_stream_find_mpeg_video_frame
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1713,1
    - Dst: MPEG12_PictHdrType
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1721,1
    - Dst: advance_frame
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1739,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 8
    argNames:
    - ps
    - streamno
    - buffer
    - buflen
    - frame_type
    - ts_type
    - decode_timestamp
    - compose_timestamp
    argTypes:
    - mpeg2ps_t*
    - u32
    - u8**
    - u32*
    - u8*
    - mpeg2ps_ts_type_t
    - u64*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1743
      start: 1696
    functionDepth: 7
    functionLinenumber: 1696
    functionLinenumberEnd: 1743
    functionName: mpeg2ps_get_video_frame
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - invalid_video_streamno
    - mpeg2ps_stream_find_mpeg_video_frame
    - MPEG12_PictHdrType
    - check_fd_for_stream
    - advance_frame
    linkageType: ''
    returnType: Bool
    signature: "Bool mpeg2ps_get_video_frame(mpeg2ps_t *ps, u32 streamno,\n                             u8
      **buffer,\n                             u32 *buflen,\n                             u8
      *frame_type,\n                             mpeg2ps_ts_type_t ts_type,\n                             u64
      *decode_timestamp, u64 *compose_timestamp)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: invalid_audio_streamno
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1755,1
    - Dst: check_fd_for_stream
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1758,1
    - Dst: mpeg2ps_stream_read_frame
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1761,1
    - Dst: stream_convert_frame_ts_to_msec
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1766,1
    - Dst: advance_frame
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1774,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 7
    argNames:
    - ps
    - streamno
    - buffer
    - buflen
    - ts_type
    - freq_timestamp
    - timestamp
    argTypes:
    - mpeg2ps_t*
    - u32
    - u8**
    - u32*
    - mpeg2ps_ts_type_t
    - u32*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1776
      start: 1747
    functionDepth: 8
    functionLinenumber: 1747
    functionLinenumberEnd: 1776
    functionName: mpeg2ps_get_audio_frame
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - invalid_audio_streamno
    - check_fd_for_stream
    - mpeg2ps_stream_read_frame
    - advance_frame
    - stream_convert_frame_ts_to_msec
    linkageType: ''
    returnType: Bool
    signature: "Bool mpeg2ps_get_audio_frame(mpeg2ps_t *ps, u32 streamno,\n                             u8
      **buffer,\n                             u32 *buflen,\n                             mpeg2ps_ts_type_t
      ts_type,\n                             u32 *freq_timestamp,\n                             u64
      *timestamp)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: file_size
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1781,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ps
    argTypes:
    - mpeg2ps_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1782
      start: 1779
    functionDepth: 2
    functionLinenumber: 1779
    functionLinenumberEnd: 1782
    functionName: mpeg2ps_get_ps_size
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - file_size
    linkageType: ''
    returnType: u64
    signature: u64 mpeg2ps_get_ps_size(mpeg2ps_t *ps)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: invalid_video_streamno
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1785,1
    - Dst: gf_ftell
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1786,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ps
    - streamno
    argTypes:
    - mpeg2ps_t*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1787
      start: 1783
    functionDepth: 2
    functionLinenumber: 1783
    functionLinenumberEnd: 1787
    functionName: mpeg2ps_get_video_pos
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - invalid_video_streamno
    - gf_ftell
    linkageType: ''
    returnType: s64
    signature: s64 mpeg2ps_get_video_pos(mpeg2ps_t *ps, u32 streamno)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: invalid_audio_streamno
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1790,1
    - Dst: gf_ftell
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1791,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ps
    - streamno
    argTypes:
    - mpeg2ps_t*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1792
      start: 1788
    functionDepth: 2
    functionLinenumber: 1788
    functionLinenumberEnd: 1792
    functionName: mpeg2ps_get_audio_pos
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - gf_ftell
    - invalid_audio_streamno
    linkageType: ''
    returnType: s64
    signature: s64 mpeg2ps_get_audio_pos(mpeg2ps_t *ps, u32 streamno)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: clear_stream_buffer
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1833,1
    - Dst: file_seek_to
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1834,1
    - Dst: search_for_next_pes_header
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1838,1
    - Dst: file_skip_bytes
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1845,1
    - Dst: mpeg2ps_record_pts
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1850,1
    - Dst: file_seek_to
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1860,1
    - Dst: file_seek_to
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1868,1
    - Dst: file_seek_to
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1875,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 7
    argNames:
    - ps
    - sptr
    - search_dts
    - start_dts
    - start_loc
    - end_dts
    - end_loc
    argTypes:
    - mpeg2ps_t*
    - mpeg2ps_stream_t*
    - u64
    - u64
    - u64
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1882
      start: 1804
    functionDepth: 5
    functionLinenumber: 1804
    functionLinenumberEnd: 1882
    functionName: mpeg2ps_binary_seek
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - mpeg2ps_record_pts
    - search_for_next_pes_header
    - file_skip_bytes
    - file_seek_to
    - clear_stream_buffer
    linkageType: ''
    returnType: void
    signature: "void mpeg2ps_binary_seek (mpeg2ps_t *ps,\n\t\t\t\t mpeg2ps_stream_t
      *sptr,\n\t\t\t\t u64 search_dts,\n\t\t\t\t u64 start_dts,\n\t\t\t\t u64 start_loc,\n\t\t\t\t
      u64 end_dts,\n\t\t\t\tu64 end_loc)"
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 2
    argNames:
    - sptr
    - dts
    argTypes:
    - mpeg2ps_stream_t*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1916
      start: 1886
    functionDepth: 0
    functionLinenumber: 1886
    functionLinenumberEnd: 1916
    functionName: search_for_ts
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: mpeg2ps_record_pes_t
    signature: "mpeg2ps_record_pes_t *search_for_ts (mpeg2ps_stream_t *sptr,\n\t\t\t\t
      \    u64 dts)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: check_fd_for_stream
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1934,1
    - Dst: clear_stream_buffer
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1935,1
    - Dst: file_seek_to
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1938,1
    - Dst: search_for_ts
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1947,1
    - Dst: file_seek_to
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1952,1
    - Dst: mpeg2ps_binary_seek
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1960,1
    - Dst: mpeg2ps_binary_seek
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1964,1
    - Dst: mpeg2ps_binary_seek
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1972,1
    - Dst: clear_stream_buffer
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1979,1
    - Dst: mpeg2ps_stream_read_frame
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1981,1
    - Dst: stream_convert_frame_ts_to_msec
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1984,1
    - Dst: advance_frame
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1989,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 35
    argCount: 3
    argNames:
    - ps
    - sptr
    - search_msec_timestamp
    argTypes:
    - mpeg2ps_t*
    - mpeg2ps_stream_t*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1994
      start: 1924
    functionDepth: 8
    functionLinenumber: 1924
    functionLinenumberEnd: 1994
    functionName: mpeg2ps_seek_frame
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - search_for_ts
    - mpeg2ps_binary_seek
    - check_fd_for_stream
    - mpeg2ps_stream_read_frame
    - advance_frame
    - file_seek_to
    - clear_stream_buffer
    - stream_convert_frame_ts_to_msec
    linkageType: ''
    returnType: Bool
    signature: "Bool mpeg2ps_seek_frame (mpeg2ps_t *ps,\n\t\t\t\tmpeg2ps_stream_t
      *sptr,\n\t\t\t\tu64 search_msec_timestamp)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: invalid_video_streamno
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:2006,1
    - Dst: mpeg2ps_seek_frame
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:2009,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - ps
    - streamno
    - msec_timestamp
    argTypes:
    - mpeg2ps_t*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2018
      start: 2001
    functionDepth: 9
    functionLinenumber: 2001
    functionLinenumberEnd: 2018
    functionName: mpeg2ps_seek_video_frame
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - mpeg2ps_seek_frame
    - invalid_video_streamno
    linkageType: ''
    returnType: Bool
    signature: "Bool mpeg2ps_seek_video_frame (mpeg2ps_t *ps, u32 streamno,\n\t\t\t
      \      u64 msec_timestamp)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: invalid_audio_streamno
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:2030,1
    - Dst: mpeg2ps_seek_frame
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:2033,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ps
    - streamno
    - msec_timestamp
    argTypes:
    - mpeg2ps_t*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2038
      start: 2023
    functionDepth: 9
    functionLinenumber: 2023
    functionLinenumberEnd: 2038
    functionName: mpeg2ps_seek_audio_frame
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached:
    - mpeg2ps_seek_frame
    - invalid_audio_streamno
    linkageType: ''
    returnType: Bool
    signature: "Bool mpeg2ps_seek_audio_frame (mpeg2ps_t *ps,\n\t\t\t       u32 streamno,\n\t\t\t
      \      u64 msec_timestamp)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ps
    argTypes:
    - mpeg2ps_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2043
      start: 2040
    functionDepth: 0
    functionLinenumber: 2040
    functionLinenumberEnd: 2043
    functionName: mpeg2ps_get_first_cts
    functionSourceFile: /src/gpac/src/media_tools/mpeg2_ps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 mpeg2ps_get_first_cts(mpeg2ps_t *ps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dvb_mpe.c:38,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dvb_mpe.c:39,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dvb_mpe.c:40,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dvb_mpe.c:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - list
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 45
    functionName: empty_list
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void empty_list(GF_List * list)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_process_int
      Src: /src/gpac/src/media_tools/dvb_mpe.c:61,1
    - Dst: gf_m2ts_process_mpe
      Src: /src/gpac/src/media_tools/dvb_mpe.c:68,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 3
    argNames:
    - ts
    - evt_type
    - par
    argTypes:
    - GF_M2TS_Demuxer*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 75
    functionName: on_dvb_mpe_section
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_process_int
    - gf_m2ts_process_mpe
    linkageType: ''
    returnType: void
    signature: void on_dvb_mpe_section(GF_M2TS_Demuxer *ts, u32 evt_type, void *par)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_gather_ipdatagram_information
      Src: /src/gpac/src/media_tools/dvb_mpe.c:81,1
    - Dst: gf_m2ts_process_ipdatagram
      Src: /src/gpac/src/media_tools/dvb_mpe.c:83,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ts
    - mff
    argTypes:
    - GF_M2TS_Demuxer*
    - MPE_FEC_FRAME*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 86
    functionName: on_dvb_mpe_fec_frame
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_process_ipdatagram
    - gf_m2ts_gather_ipdatagram_information
    linkageType: ''
    returnType: void
    signature: void on_dvb_mpe_fec_frame(GF_M2TS_Demuxer *ts, MPE_FEC_FRAME *mff)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - ts
    argTypes:
    - GF_M2TS_Demuxer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 92
    functionName: gf_dvb_mpe_init
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dvb_mpe_init(GF_M2TS_Demuxer *ts)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dvb_mpe.c:105,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dvb_mpe.c:106,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dvb_mpe.c:108,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dvb_mpe.c:109,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dvb_mpe.c:110,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dvb_mpe.c:111,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dvb_mpe.c:113,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dvb_mpe.c:114,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dvb_mpe.c:117,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dvb_mpe.c:121,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dvb_mpe.c:122,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dvb_mpe.c:123,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dvb_mpe.c:124,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dvb_mpe.c:126,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dvb_mpe.c:129,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 1
    argNames:
    - ts
    argTypes:
    - GF_M2TS_Demuxer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 131
    functionName: gf_dvb_mpe_shutdown
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dvb_mpe_shutdown(GF_M2TS_Demuxer *ts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dvb_mpe.c:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 144
    functionName: gf_dvb_mpe_section_new
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_dvb_mpe_section_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dvb_mpe.c:154,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dvb_mpe.c:156,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - es
    argTypes:
    - GF_M2TS_ES*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 159
    functionName: gf_dvb_mpe_section_del
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dvb_mpe_section_del(GF_M2TS_ES *es)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dvb_mpe.c:174,1
    - Dst: gf_m2ts_crc32_check
      Src: /src/gpac/src/media_tools/dvb_mpe.c:179,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:180,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:190,1
    - Dst: gf_m2ts_mpe_send_datagram
      Src: /src/gpac/src/media_tools/dvb_mpe.c:197,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dvb_mpe.c:213,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:217,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dvb_mpe.c:222,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dvb_mpe.c:223,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dvb_mpe.c:225,1
    - Dst: init_frame
      Src: /src/gpac/src/media_tools/dvb_mpe.c:248,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:249,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:251,1
    - Dst: setIpDatagram
      Src: /src/gpac/src/media_tools/dvb_mpe.c:265,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dvb_mpe.c:282,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dvb_mpe.c:291,1
    - Dst: on_dvb_mpe_fec_frame
      Src: /src/gpac/src/media_tools/dvb_mpe.c:300,1
    - Dst: resetMFF
      Src: /src/gpac/src/media_tools/dvb_mpe.c:301,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 96
    argCount: 5
    argNames:
    - ts
    - mpe
    - data
    - data_size
    - table_id
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_SECTION_MPE*
    - unsigned char*
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 164
    functionDepth: 2
    functionLinenumber: 164
    functionLinenumberEnd: 305
    functionName: gf_m2ts_process_mpe
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - gf_m2ts_crc32_check
    - gf_assert
    - gf_list_new
    - gf_list_get
    - init_frame
    - GF_SAFEALLOC
    - GF_LOG
    - gf_m2ts_mpe_send_datagram
    - gf_list_count
    - memset
    - resetMFF
    - setIpDatagram
    - on_dvb_mpe_fec_frame
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_process_mpe(GF_M2TS_Demuxer *ts, GF_M2TS_SECTION_MPE *mpe,
      unsigned char *data, u32 data_size, u8 table_id)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dvb_mpe.c:320,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dvb_mpe.c:327,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dvb_mpe.c:329,1
    - Dst: gf_m2ts_ipdatagram_reader
      Src: /src/gpac/src/media_tools/dvb_mpe.c:337,1
    - Dst: socket_simu
      Src: /src/gpac/src/media_tools/dvb_mpe.c:350,1
    - Dst: gf_m2ts_compare_ip
      Src: /src/gpac/src/media_tools/dvb_mpe.c:353,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:355,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dvb_mpe.c:362,1
    - Dst: empty_list
      Src: /src/gpac/src/media_tools/dvb_mpe.c:371,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dvb_mpe.c:372,1
    - Dst: gf_m2ts_Delete_IpPacket
      Src: /src/gpac/src/media_tools/dvb_mpe.c:374,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 38
    argCount: 2
    argNames:
    - mff
    - ts
    argTypes:
    - MPE_FEC_FRAME*
    - GF_M2TS_Demuxer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 307
    functionDepth: 2
    functionLinenumber: 307
    functionLinenumberEnd: 375
    functionName: gf_m2ts_process_ipdatagram
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_m2ts_Delete_IpPacket
    - socket_simu
    - GF_SAFEALLOC
    - GF_LOG
    - empty_list
    - gf_m2ts_ipdatagram_reader
    - gf_list_count
    - gf_m2ts_compare_ip
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_process_ipdatagram(MPE_FEC_FRAME *mff,GF_M2TS_Demuxer
      *ts)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:393,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:394,1
    - Dst: socket_simu
      Src: /src/gpac/src/media_tools/dvb_mpe.c:416,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:418,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 30
    argCount: 4
    argNames:
    - ts
    - mpe_pid
    - data
    - data_size
    argTypes:
    - GF_M2TS_Demuxer*
    - u32
    - unsigned char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 378
    functionDepth: 1
    functionLinenumber: 378
    functionLinenumberEnd: 419
    functionName: gf_m2ts_mpe_send_datagram
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - memcpy
    - GF_LOG
    - socket_simu
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_mpe_send_datagram(GF_M2TS_Demuxer *ts, u32 mpe_pid, unsigned
      char *data, u32 data_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - rx_ip_address
    - ip_address_bootstrap
    argTypes:
    - u8[]
    - u8[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 422
    functionDepth: 0
    functionLinenumber: 422
    functionLinenumberEnd: 431
    functionName: gf_m2ts_compare_ip
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_m2ts_compare_ip(u8 rx_ip_address[4], u8 ip_address_bootstrap[4])
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:446,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:447,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/dvb_mpe.c:464,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:465,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:469,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 29
    argCount: 3
    argNames:
    - datagram
    - ip_packet
    - offset
    argTypes:
    - u8*
    - GF_M2TS_IP_Packet*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 434
    functionDepth: 1
    functionLinenumber: 434
    functionLinenumberEnd: 473
    functionName: gf_m2ts_ipdatagram_reader
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - memcpy
    - GF_LOG
    - gf_malloc
    linkageType: ''
    returnType: u32
    signature: u32 gf_m2ts_ipdatagram_reader(u8 *datagram,GF_M2TS_IP_Packet *ip_packet,
      u32 offset)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dvb_mpe.c:492,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dvb_mpe.c:494,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 1
    argNames:
    - ip_packet
    argTypes:
    - GF_M2TS_IP_Packet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 495
      start: 475
    functionDepth: 0
    functionLinenumber: 475
    functionLinenumberEnd: 495
    functionName: gf_m2ts_Delete_IpPacket
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_Delete_IpPacket(GF_M2TS_IP_Packet *ip_packet)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dvb_mpe.c:503,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dvb_mpe.c:507,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dvb_mpe.c:508,1
    - Dst: section_DSMCC_INT
      Src: /src/gpac/src/media_tools/dvb_mpe.c:509,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 5
    argNames:
    - ts
    - ip_table
    - data
    - data_size
    - table_id
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_SECTION_ES*
    - unsigned char*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 512
      start: 499
    functionDepth: 1
    functionLinenumber: 499
    functionLinenumberEnd: 512
    functionName: gf_m2ts_process_int
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - gf_assert
    - section_DSMCC_INT
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_process_int(GF_M2TS_Demuxer *ts, GF_M2TS_SECTION_ES *ip_table,
      unsigned char *data, u32 data_size, u32 table_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dsmcc_pto_platform_descriptor_loop
      Src: /src/gpac/src/media_tools/dvb_mpe.c:528,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dvb_mpe.c:534,1
    - Dst: dsmcc_pto_descriptor_loop
      Src: /src/gpac/src/media_tools/dvb_mpe.c:536,1
    - Dst: dsmcc_pto_descriptor_loop
      Src: /src/gpac/src/media_tools/dvb_mpe.c:540,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dvb_mpe.c:543,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 3
    argNames:
    - ip_platform
    - data
    - data_size
    argTypes:
    - GF_M2TS_IP_PLATFORM*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 547
      start: 516
    functionDepth: 1
    functionLinenumber: 516
    functionLinenumberEnd: 547
    functionName: section_DSMCC_INT
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - dsmcc_pto_platform_descriptor_loop
    - gf_list_add
    - dsmcc_pto_descriptor_loop
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void section_DSMCC_INT(GF_M2TS_IP_PLATFORM* ip_platform,u8 *data, u32
      data_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dvb_mpe.c:556,1
    - Dst: platform_descriptorDSMCC_INT_UNT
      Src: /src/gpac/src/media_tools/dvb_mpe.c:563,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ip_platform
    - data
    argTypes:
    - GF_M2TS_IP_PLATFORM*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 569
      start: 552
    functionDepth: 1
    functionLinenumber: 552
    functionLinenumberEnd: 569
    functionName: dsmcc_pto_platform_descriptor_loop
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - gf_assert
    - platform_descriptorDSMCC_INT_UNT
    linkageType: ''
    returnType: u32
    signature: u32 dsmcc_pto_platform_descriptor_loop(GF_M2TS_IP_PLATFORM* ip_platform,
      u8 *data)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_ip_platform_descriptor
      Src: /src/gpac/src/media_tools/dvb_mpe.c:587,1
    - Dst: gf_ip_platform_provider_descriptor
      Src: /src/gpac/src/media_tools/dvb_mpe.c:592,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - ip_platform
    - data
    argTypes:
    - GF_M2TS_IP_PLATFORM*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 600
      start: 572
    functionDepth: 1
    functionLinenumber: 572
    functionLinenumberEnd: 600
    functionName: platform_descriptorDSMCC_INT_UNT
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - gf_ip_platform_descriptor
    - gf_ip_platform_provider_descriptor
    linkageType: ''
    returnType: u32
    signature: u32 platform_descriptorDSMCC_INT_UNT(GF_M2TS_IP_PLATFORM* ip_platform,
      u8 *data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dvb_mpe.c:606,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/dvb_mpe.c:608,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:609,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - ip_platform
    - data
    argTypes:
    - GF_M2TS_IP_PLATFORM*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 602
    functionDepth: 1
    functionLinenumber: 602
    functionLinenumberEnd: 612
    functionName: gf_ip_platform_descriptor
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - memcpy
    - gf_assert
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void gf_ip_platform_descriptor(GF_M2TS_IP_PLATFORM* ip_platform,u8
      * data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dvb_mpe.c:619,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/dvb_mpe.c:620,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:621,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - ip_platform
    - data
    argTypes:
    - GF_M2TS_IP_PLATFORM*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 614
    functionDepth: 1
    functionLinenumber: 614
    functionLinenumberEnd: 624
    functionName: gf_ip_platform_provider_descriptor
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - memcpy
    - gf_assert
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void gf_ip_platform_provider_descriptor(GF_M2TS_IP_PLATFORM* ip_platform,
      u8 * data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: descriptorDSMCC_INT_UNT
      Src: /src/gpac/src/media_tools/dvb_mpe.c:639,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - ip_str
    - data
    argTypes:
    - GF_M2TS_IP_Stream*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 645
      start: 629
    functionDepth: 1
    functionLinenumber: 629
    functionLinenumberEnd: 645
    functionName: dsmcc_pto_descriptor_loop
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - descriptorDSMCC_INT_UNT
    linkageType: ''
    returnType: u32
    signature: u32 dsmcc_pto_descriptor_loop ( GF_M2TS_IP_Stream *ip_str,u8 *data)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_target_ip
      Src: /src/gpac/src/media_tools/dvb_mpe.c:663,1
    - Dst: descriptorTime_slice_fec_identifier
      Src: /src/gpac/src/media_tools/dvb_mpe.c:669,1
    - Dst: descriptorLocation
      Src: /src/gpac/src/media_tools/dvb_mpe.c:674,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - ip_str
    - data
    argTypes:
    - GF_M2TS_IP_Stream*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 683
      start: 648
    functionDepth: 1
    functionLinenumber: 648
    functionLinenumberEnd: 683
    functionName: descriptorDSMCC_INT_UNT
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 2
    functionsReached:
    - gf_m2ts_target_ip
    - descriptorTime_slice_fec_identifier
    - descriptorLocation
    linkageType: ''
    returnType: u32
    signature: u32 descriptorDSMCC_INT_UNT(GF_M2TS_IP_Stream *ip_str,u8 *data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/dvb_mpe.c:694,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:695,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - ip_str
    - data
    argTypes:
    - GF_M2TS_IP_Stream*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 697
      start: 685
    functionDepth: 0
    functionLinenumber: 685
    functionLinenumberEnd: 697
    functionName: descriptorTime_slice_fec_identifier
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - memcpy
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void descriptorTime_slice_fec_identifier( GF_M2TS_IP_Stream *ip_str,u8
      * data)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - ip_str
    - data
    argTypes:
    - GF_M2TS_IP_Stream*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 707
      start: 699
    functionDepth: 0
    functionLinenumber: 699
    functionLinenumberEnd: 707
    functionName: descriptorLocation
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void descriptorLocation(GF_M2TS_IP_Stream *ip_str , u8 * data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dvb_mpe.c:713,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dvb_mpe.c:718,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:722,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dvb_mpe.c:725,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - ip_str
    - data
    argTypes:
    - GF_M2TS_IP_Stream*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 709
    functionDepth: 1
    functionLinenumber: 709
    functionLinenumberEnd: 729
    functionName: gf_m2ts_target_ip
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - memcpy
    - gf_list_new
    - gf_list_add
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_target_ip(GF_M2TS_IP_Stream* ip_str, u8 * data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getRowFromADT
      Src: /src/gpac/src/media_tools/dvb_mpe.c:744,1
    - Dst: encode_data
      Src: /src/gpac/src/media_tools/dvb_mpe.c:747,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:748,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:749,1
    - Dst: setRowRS
      Src: /src/gpac/src/media_tools/dvb_mpe.c:751,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - mff
    argTypes:
    - MPE_FEC_FRAME*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 733
    functionDepth: 1
    functionLinenumber: 733
    functionLinenumberEnd: 754
    functionName: encode_fec
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - setRowRS
    - encode_data
    - getRowFromADT
    linkageType: ''
    returnType: void
    signature: void encode_fec(MPE_FEC_FRAME * mff)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/dvb_mpe.c:765,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dvb_mpe.c:766,1
    - Dst: initialize_ecc
      Src: /src/gpac/src/media_tools/dvb_mpe.c:768,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dvb_mpe.c:770,1
    - Dst: getRowFromADT
      Src: /src/gpac/src/media_tools/dvb_mpe.c:776,1
    - Dst: getRowFromRS
      Src: /src/gpac/src/media_tools/dvb_mpe.c:777,1
    - Dst: encode_data
      Src: /src/gpac/src/media_tools/dvb_mpe.c:779,1
    - Dst: decode_data
      Src: /src/gpac/src/media_tools/dvb_mpe.c:781,1
    - Dst: check_syndrome
      Src: /src/gpac/src/media_tools/dvb_mpe.c:782,1
    - Dst: correct_errors_erasures
      Src: /src/gpac/src/media_tools/dvb_mpe.c:787,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:789,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:795,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:798,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 1
    argNames:
    - mff
    argTypes:
    - MPE_FEC_FRAME*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 799
      start: 757
    functionDepth: 1
    functionLinenumber: 757
    functionLinenumberEnd: 799
    functionName: decode_fec
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 0
    functionsReached:
    - initialize_ecc
    - GF_LOG
    - memcpy
    - getRowFromRS
    - check_syndrome
    - memset
    - decode_data
    - correct_errors_erasures
    - gf_malloc
    - encode_data
    - getRowFromADT
    linkageType: ''
    returnType: void
    signature: void decode_fec(MPE_FEC_FRAME * mff)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dvb_mpe.c:815,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dvb_mpe.c:818,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dvb_mpe.c:819,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dvb_mpe.c:820,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dvb_mpe.c:826,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dvb_mpe.c:829,1
    - Dst: gf_m2ts_ipdatagram_reader
      Src: /src/gpac/src/media_tools/dvb_mpe.c:839,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dvb_mpe.c:848,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dvb_mpe.c:851,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dvb_mpe.c:859,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dvb_mpe.c:862,1
    - Dst: gf_m2ts_compare_ip
      Src: /src/gpac/src/media_tools/dvb_mpe.c:864,1
    - Dst: empty_list
      Src: /src/gpac/src/media_tools/dvb_mpe.c:891,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dvb_mpe.c:892,1
    - Dst: gf_m2ts_Delete_IpPacket
      Src: /src/gpac/src/media_tools/dvb_mpe.c:894,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 57
    argCount: 2
    argNames:
    - mff
    - ts
    argTypes:
    - MPE_FEC_FRAME*
    - GF_M2TS_Demuxer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 896
      start: 802
    functionDepth: 2
    functionLinenumber: 802
    functionLinenumberEnd: 896
    functionName: gf_m2ts_gather_ipdatagram_information
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - gf_assert
    - gf_list_get
    - gf_m2ts_Delete_IpPacket
    - GF_SAFEALLOC
    - empty_list
    - gf_m2ts_ipdatagram_reader
    - gf_list_count
    - gf_m2ts_compare_ip
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_gather_ipdatagram_information(MPE_FEC_FRAME *mff,GF_M2TS_Demuxer
      *ts)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:908,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dvb_mpe.c:910,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dvb_mpe.c:911,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dvb_mpe.c:913,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:914,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dvb_mpe.c:916,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dvb_mpe.c:919,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:924,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:925,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:928,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:931,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:935,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:939,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:942,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:947,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:950,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:957,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:958,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:963,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:964,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:969,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:970,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:975,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:976,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:983,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:987,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:988,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:989,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:990,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:991,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:992,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 63
    argCount: 1
    argNames:
    - ts
    argTypes:
    - GF_M2TS_Demuxer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 994
      start: 898
    functionDepth: 1
    functionLinenumber: 898
    functionLinenumberEnd: 994
    functionName: gf_dvb_mpe_print_info
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_assert
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dvb_mpe_print_info(GF_M2TS_Demuxer *ts)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1005,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1007,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1009,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1010,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1012,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1021,1
    - Dst: gf_sk_new
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1025,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1027,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1031,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1033,1
    - Dst: gf_sk_setup_multicast
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1034,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1035,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1042,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1043,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1047,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1047,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1050,1
    - Dst: gf_sk_send
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1057,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1059,1
    - Dst: gf_sleep
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1061,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 48
    argCount: 3
    argNames:
    - ip_packet
    - ts
    - yield
    argTypes:
    - GF_M2TS_IP_Packet*
    - GF_M2TS_Demuxer*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1063
      start: 997
    functionDepth: 1
    functionLinenumber: 997
    functionLinenumberEnd: 1063
    functionName: socket_simu
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_list_get
    - gf_sk_new
    - gf_sk_bind
    - gf_sk_send
    - GF_SAFEALLOC
    - GF_LOG
    - sprintf
    - gf_sk_is_multicast_address
    - gf_sleep
    - gf_list_count
    - gf_sk_setup_multicast
    - gf_list_add
    - gf_error_to_string
    - GF_4CC
    linkageType: ''
    returnType: void
    signature: void socket_simu(GF_M2TS_IP_Packet *ip_packet, GF_M2TS_Demuxer *ts,
      Bool yield)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1073,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1078,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1079,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1082,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1085,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1086,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1091,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - mff
    - rows
    argTypes:
    - MPE_FEC_FRAME*
    - u32
    assertStmts:
    - condition: (mff != NULL)
      pos:
        line_end: 1072
        line_start: 1072
        source_file: /src/gpac/src/media_tools/dvb_mpe.c
    constantsTouched: []
    func_position:
      end: 1094
      start: 1071
    functionDepth: 1
    functionLinenumber: 1071
    functionLinenumberEnd: 1094
    functionName: init_frame
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - gf_calloc
    - gf_list_new
    - assert
    - GF_LOG
    linkageType: ''
    returnType: Bool
    signature: Bool init_frame(MPE_FEC_FRAME * mff, u32 rows)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1100,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1101,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1102,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1103,1
    - Dst: empty_list
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1107,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - mff
    argTypes:
    - MPE_FEC_FRAME*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1111
      start: 1096
    functionDepth: 2
    functionLinenumber: 1096
    functionLinenumberEnd: 1111
    functionName: resetMFF
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - memset
    - empty_list
    linkageType: ''
    returnType: void
    signature: void resetMFF(MPE_FEC_FRAME * mff)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - mff
    - index
    - adt_row
    argTypes:
    - MPE_FEC_FRAME*
    - u32
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1123
      start: 1114
    functionDepth: 0
    functionLinenumber: 1114
    functionLinenumberEnd: 1123
    functionName: getRowFromADT
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void getRowFromADT(MPE_FEC_FRAME * mff, u32 index, u8* adt_row)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - mff
    - index
    - rs_row
    argTypes:
    - MPE_FEC_FRAME*
    - u32
    - u8*
    assertStmts:
    - condition: (rs_row != NULL )
      pos:
        line_end: 1129
        line_start: 1129
        source_file: /src/gpac/src/media_tools/dvb_mpe.c
    constantsTouched: []
    func_position:
      end: 1136
      start: 1126
    functionDepth: 0
    functionLinenumber: 1126
    functionLinenumberEnd: 1136
    functionName: getRowFromRS
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - assert
    linkageType: ''
    returnType: void
    signature: void getRowFromRS (MPE_FEC_FRAME * mff, u32 index, u8* rs_row)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1142,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - mff
    - index
    - p_rs
    argTypes:
    - MPE_FEC_FRAME*
    - u32
    - u8*
    assertStmts:
    - condition: ( p_rs != NULL )
      pos:
        line_end: 1141
        line_start: 1141
        source_file: /src/gpac/src/media_tools/dvb_mpe.c
    constantsTouched: []
    func_position:
      end: 1149
      start: 1138
    functionDepth: 0
    functionLinenumber: 1138
    functionLinenumberEnd: 1149
    functionName: setRowRS
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - assert
    linkageType: ''
    returnType: void
    signature: void setRowRS(MPE_FEC_FRAME *mff, u32 index, u8 *p_rs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1153,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - mff
    - offset
    argTypes:
    - MPE_FEC_FRAME*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1156
      start: 1150
    functionDepth: 1
    functionLinenumber: 1150
    functionLinenumberEnd: 1156
    functionName: addPadding
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void addPadding(MPE_FEC_FRAME *mff , u32 offset)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1165,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1168,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1171,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - data
    - length
    argTypes:
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1176
      start: 1158
    functionDepth: 1
    functionLinenumber: 1158
    functionLinenumberEnd: 1176
    functionName: print_bytes2
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void print_bytes2(u8 * data, u32 length )
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1184,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1188,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1191,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1195,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1198,1
    - Dst: setErrorIndicator
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1200,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1203,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1207,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 4
    argNames:
    - mff
    - offset
    - dgram
    - length
    argTypes:
    - MPE_FEC_FRAME*
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1210
      start: 1180
    functionDepth: 1
    functionLinenumber: 1180
    functionLinenumberEnd: 1210
    functionName: setIpDatagram
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - GF_LOG
    - memcpy
    - setErrorIndicator
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void setIpDatagram(MPE_FEC_FRAME * mff, u32 offset, u8* dgram, u32
      length )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1215,1
    - Dst: setErrorIndicator
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1216,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1219,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1220,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - mff
    - offset
    - pds
    - length
    argTypes:
    - MPE_FEC_FRAME*
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1223
      start: 1212
    functionDepth: 1
    functionLinenumber: 1212
    functionLinenumberEnd: 1223
    functionName: setColRS
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 0
    functionsReached:
    - setErrorIndicator
    - GF_LOG
    - gf_assert
    - memcpy
    linkageType: ''
    returnType: void
    signature: void setColRS( MPE_FEC_FRAME * mff, u32 offset, u8 * pds, u32 length
      )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - mff
    - offset
    - pds
    - length
    argTypes:
    - MPE_FEC_FRAME*
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1228
      start: 1225
    functionDepth: 0
    functionLinenumber: 1225
    functionLinenumberEnd: 1228
    functionName: getColRS
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: void
    signature: void getColRS(MPE_FEC_FRAME * mff, u32 offset, u8 * pds, u32 length)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - mff
    - row
    - errPositions
    argTypes:
    - MPE_FEC_FRAME*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1244
      start: 1230
    functionDepth: 0
    functionLinenumber: 1230
    functionLinenumberEnd: 1244
    functionName: getErrorPositions
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void getErrorPositions(MPE_FEC_FRAME *mff, u32 row, u32 * errPositions)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1259,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1261,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - mff
    - row
    - errasures
    argTypes:
    - MPE_FEC_FRAME*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1263
      start: 1246
    functionDepth: 1
    functionLinenumber: 1246
    functionLinenumberEnd: 1263
    functionName: getErrasurePositions
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: u32
    signature: u32 getErrasurePositions( MPE_FEC_FRAME *mff , u32 row, u32 *errasures)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - data
    - offset
    - length
    argTypes:
    - u32*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1268
      start: 1265
    functionDepth: 0
    functionLinenumber: 1265
    functionLinenumberEnd: 1268
    functionName: setErrorIndicator
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 2
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: void setErrorIndicator(u32 * data , u32 offset, u32 length)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/html5_mse.c:35,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/html5_mse.c:37,1
    - Dst: gf_dom_event_target_new
      Src: /src/gpac/src/media_tools/html5_mse.c:39,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/html5_mse.c:40,1
    - Dst: gf_dom_event_target_new
      Src: /src/gpac/src/media_tools/html5_mse.c:42,1
    - Dst: gf_dom_event_target_new
      Src: /src/gpac/src/media_tools/html5_mse.c:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 47
    functionName: gf_mse_media_source_new
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - gf_dom_event_target_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_HTML_MediaSource
    signature: GF_HTML_MediaSource *gf_mse_media_source_new()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:64,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:65,1
    - Dst: GF_HTML_SourceBuffer*::parser::CloseService
      Src: /src/gpac/src/media_tools/html5_mse.c:69,1
    - Dst: gf_mse_source_buffer_del
      Src: /src/gpac/src/media_tools/html5_mse.c:72,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/html5_mse.c:74,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/html5_mse.c:76,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_mse.c:77,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_mse.c:78,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_mse.c:79,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 2
    argNames:
    - ms
    - del_js
    argTypes:
    - GF_HTML_MediaSource*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 82
    functionName: gf_mse_mediasource_del
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_mse_source_buffer_del
    - gf_list_del
    - GF_HTML_SourceBuffer*::parser::CloseService
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mse_mediasource_del(GF_HTML_MediaSource *ms, Bool del_js)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/html5_mse.c:88,1
    - Dst: assert
      Src: /src/gpac/src/media_tools/html5_mse.c:114,1
    - Dst: gf_sg_fire_dom_event
      Src: /src/gpac/src/media_tools/html5_mse.c:115,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - target
    - event_type
    argTypes:
    - GF_DOMEventTarget*
    - GF_EventType
    assertStmts:
    - condition: (sg)
      pos:
        line_end: 113
        line_start: 113
        source_file: /src/gpac/src/media_tools/html5_mse.c
    constantsTouched: []
    func_position:
      end: 116
      start: 84
    functionDepth: 6
    functionLinenumber: 84
    functionLinenumberEnd: 116
    functionName: gf_mse_fire_event
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_sg_fire_dom_event
    - assert
    linkageType: ''
    returnType: void
    signature: void gf_mse_fire_event(GF_DOMEventTarget *target, GF_EventType event_type)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/html5_mse.c:123,1
    - Dst: gf_event_target_get_node
      Src: /src/gpac/src/media_tools/html5_mse.c:128,1
    - Dst: gf_mo_event_target_get
      Src: /src/gpac/src/media_tools/html5_mse.c:128,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/media_tools/html5_mse.c:129,1
    - Dst: gf_mse_fire_event
      Src: /src/gpac/src/media_tools/html5_mse.c:130,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - ms
    - mo
    argTypes:
    - GF_HTML_MediaSource*
    - struct _mediaobj*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 118
    functionDepth: 7
    functionLinenumber: 118
    functionLinenumberEnd: 131
    functionName: gf_mse_mediasource_open
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 3
    functionsReached:
    - GF_LOG
    - gf_mo_event_target_get
    - gf_event_target_get_node
    - gf_node_get_graph
    - gf_mse_fire_event
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mse_mediasource_open(GF_HTML_MediaSource *ms, struct _mediaobj
      *mo)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mse_fire_event
      Src: /src/gpac/src/media_tools/html5_mse.c:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ms
    argTypes:
    - GF_HTML_MediaSource*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 133
    functionDepth: 7
    functionLinenumber: 133
    functionLinenumberEnd: 139
    functionName: gf_mse_mediasource_close
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached:
    - gf_mse_fire_event
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mse_mediasource_close(GF_HTML_MediaSource *ms)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mse_fire_event
      Src: /src/gpac/src/media_tools/html5_mse.c:146,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ms
    argTypes:
    - GF_HTML_MediaSource*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 141
    functionDepth: 7
    functionLinenumber: 141
    functionLinenumberEnd: 147
    functionName: gf_mse_mediasource_end
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 1
    functionsReached:
    - gf_mse_fire_event
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mse_mediasource_end(GF_HTML_MediaSource *ms)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/html5_mse.c:153,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/html5_mse.c:155,1
    - Dst: gf_html_timeranges_new
      Src: /src/gpac/src/media_tools/html5_mse.c:157,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/html5_mse.c:158,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/html5_mse.c:159,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/html5_mse.c:160,1
    - Dst: gf_th_new
      Src: /src/gpac/src/media_tools/html5_mse.c:161,1
    - Dst: gf_th_new
      Src: /src/gpac/src/media_tools/html5_mse.c:162,1
    - Dst: gf_dom_event_target_new
      Src: /src/gpac/src/media_tools/html5_mse.c:166,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 1
    argNames:
    - mediasource
    argTypes:
    - GF_HTML_MediaSource*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 149
    functionDepth: 2
    functionLinenumber: 149
    functionLinenumberEnd: 169
    functionName: gf_mse_source_buffer_new
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 1
    functionsReached:
    - gf_html_timeranges_new
    - gf_list_new
    - GF_SAFEALLOC
    - gf_dom_event_target_new
    - gf_th_new
    - sprintf
    linkageType: ''
    returnType: GF_HTML_SourceBuffer
    signature: GF_HTML_SourceBuffer *gf_mse_source_buffer_new(GF_HTML_MediaSource
      *mediasource)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_mse.c:173,1
    - Dst: gf_mse_fire_event
      Src: /src/gpac/src/media_tools/html5_mse.c:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ms
    - sb
    argTypes:
    - GF_HTML_MediaSource*
    - GF_HTML_SourceBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 171
    functionDepth: 7
    functionLinenumber: 171
    functionLinenumberEnd: 175
    functionName: gf_mse_mediasource_add_source_buffer
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 1
    functionsReached:
    - gf_mse_fire_event
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void gf_mse_mediasource_add_source_buffer(GF_HTML_MediaSource *ms,
      GF_HTML_SourceBuffer *sb)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/html5_mse.c:186,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/html5_mse.c:188,1
    - Dst: gf_mse_fire_event
      Src: /src/gpac/src/media_tools/html5_mse.c:189,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ms
    - sb
    argTypes:
    - GF_HTML_MediaSource*
    - GF_HTML_SourceBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 184
    functionDepth: 7
    functionLinenumber: 184
    functionLinenumberEnd: 191
    functionName: gf_mse_remove_active_source_buffer
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached:
    - gf_mse_fire_event
    - gf_list_find
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_mse_remove_active_source_buffer(GF_HTML_MediaSource *ms, GF_HTML_SourceBuffer
      *sb)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:195,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:196,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/html5_mse.c:197,1
    - Dst: gf_arraybuffer_del
      Src: /src/gpac/src/media_tools/html5_mse.c:198,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - input_buffer
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 193
    functionDepth: 1
    functionLinenumber: 193
    functionLinenumberEnd: 200
    functionName: gf_mse_reset_input_buffer
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_arraybuffer_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_mse_reset_input_buffer(GF_List *input_buffer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:206,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:212,1
    - Dst: gf_mse_reset_input_buffer
      Src: /src/gpac/src/media_tools/html5_mse.c:218,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - sb
    argTypes:
    - GF_HTML_SourceBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 203
    functionDepth: 2
    functionLinenumber: 203
    functionLinenumberEnd: 220
    functionName: gf_mse_source_buffer_reset_parser
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_mse_reset_input_buffer
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void gf_mse_source_buffer_reset_parser(GF_HTML_SourceBuffer *sb)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mse_fire_event
      Src: /src/gpac/src/media_tools/html5_mse.c:227,1
    - Dst: gf_mse_fire_event
      Src: /src/gpac/src/media_tools/html5_mse.c:228,1
    - Dst: gf_mse_source_buffer_reset_parser
      Src: /src/gpac/src/media_tools/html5_mse.c:230,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - sb
    argTypes:
    - GF_HTML_SourceBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 222
    functionDepth: 7
    functionLinenumber: 222
    functionLinenumberEnd: 234
    functionName: gf_mse_source_buffer_abort
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 1
    functionsReached:
    - gf_mse_fire_event
    - gf_mse_source_buffer_reset_parser
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mse_source_buffer_abort(GF_HTML_SourceBuffer *sb)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/html5_mse.c:238,1
    - Dst: gf_mse_source_buffer_abort
      Src: /src/gpac/src/media_tools/html5_mse.c:242,1
    - Dst: gf_mse_remove_active_source_buffer
      Src: /src/gpac/src/media_tools/html5_mse.c:244,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/html5_mse.c:245,1
    - Dst: gf_mse_fire_event
      Src: /src/gpac/src/media_tools/html5_mse.c:246,1
    - Dst: gf_mse_source_buffer_del
      Src: /src/gpac/src/media_tools/html5_mse.c:247,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - ms
    - sb
    argTypes:
    - GF_HTML_MediaSource*
    - GF_HTML_SourceBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 236
    functionDepth: 8
    functionLinenumber: 236
    functionLinenumberEnd: 250
    functionName: gf_mse_remove_source_buffer
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 1
    functionsReached:
    - gf_list_find
    - gf_mse_source_buffer_del
    - gf_mse_source_buffer_abort
    - gf_mse_remove_active_source_buffer
    - gf_mse_fire_event
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mse_remove_source_buffer(GF_HTML_MediaSource *ms, GF_HTML_SourceBuffer
      *sb)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_html_timeranges_del
      Src: /src/gpac/src/media_tools/html5_mse.c:269,1
    - Dst: gf_mse_reset_input_buffer
      Src: /src/gpac/src/media_tools/html5_mse.c:270,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/html5_mse.c:271,1
    - Dst: gf_arraybuffer_del
      Src: /src/gpac/src/media_tools/html5_mse.c:273,1
    - Dst: gf_html_tracklist_del
      Src: /src/gpac/src/media_tools/html5_mse.c:276,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:279,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:281,1
    - Dst: gf_th_del
      Src: /src/gpac/src/media_tools/html5_mse.c:282,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/html5_mse.c:284,1
    - Dst: gf_th_del
      Src: /src/gpac/src/media_tools/html5_mse.c:286,1
    - Dst: gf_th_del
      Src: /src/gpac/src/media_tools/html5_mse.c:287,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/html5_mse.c:289,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_mse.c:290,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - sb
    argTypes:
    - GF_HTML_SourceBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 266
    functionDepth: 2
    functionLinenumber: 266
    functionLinenumberEnd: 292
    functionName: gf_mse_source_buffer_del
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 3
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_odf_desc_del
    - gf_mse_reset_input_buffer
    - gf_list_count
    - gf_arraybuffer_del
    - gf_list_del
    - gf_th_del
    - gf_html_timeranges_del
    - gf_html_tracklist_del
    linkageType: ''
    returnType: void
    signature: void gf_mse_source_buffer_del(GF_HTML_SourceBuffer *sb)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mse_fire_event
      Src: /src/gpac/src/media_tools/html5_mse.c:299,1
    - Dst: gf_mse_fire_event
      Src: /src/gpac/src/media_tools/html5_mse.c:301,1
    - Dst: gf_mse_fire_event
      Src: /src/gpac/src/media_tools/html5_mse.c:302,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - sb
    - update
    argTypes:
    - GF_HTML_SourceBuffer*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 294
    functionDepth: 7
    functionLinenumber: 294
    functionLinenumberEnd: 304
    functionName: gf_mse_source_buffer_set_update
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached:
    - gf_mse_fire_event
    linkageType: ''
    returnType: void
    signature: void gf_mse_source_buffer_set_update(GF_HTML_SourceBuffer *sb, Bool
      update)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/media_tools/html5_mse.c:315,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/media_tools/html5_mse.c:321,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/html5_mse.c:322,1
    - Dst: gf_modules_load_by_name
      Src: /src/gpac/src/media_tools/html5_mse.c:325,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/html5_mse.c:339,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 2
    argNames:
    - sourcebuffer
    - mime
    argTypes:
    - GF_HTML_SourceBuffer*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 307
    functionDepth: 1
    functionLinenumber: 307
    functionLinenumberEnd: 345
    functionName: gf_mse_source_buffer_load_parser
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 1
    functionsReached:
    - gf_modules_load_by_name
    - strrchr
    - GF_LOG
    - gf_opts_get_key
    - strchr
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mse_source_buffer_load_parser(GF_HTML_SourceBuffer *sourcebuffer,
      const char *mime)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_html_media_track_new
      Src: /src/gpac/src/media_tools/html5_mse.c:365,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/html5_mse.c:369,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/html5_mse.c:370,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/media_tools/html5_mse.c:371,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_mse.c:373,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 2
    argNames:
    - sb
    - esd
    argTypes:
    - GF_HTML_SourceBuffer*
    - GF_ESD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 350
    functionDepth: 1
    functionLinenumber: 350
    functionLinenumberEnd: 376
    functionName: gf_mse_source_buffer_add_track
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - sprintf
    - gf_list_add
    - gf_html_media_track_new
    - gf_mx_new
    linkageType: ''
    returnType: GF_HTML_Track
    signature: GF_HTML_Track *gf_mse_source_buffer_add_track(GF_HTML_SourceBuffer
      *sb, GF_ESD *esd)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_HTML_SourceBuffer*::parser::GetServiceDescriptor
      Src: /src/gpac/src/media_tools/html5_mse.c:383,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:386,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:390,1
    - Dst: gf_mse_source_buffer_add_track
      Src: /src/gpac/src/media_tools/html5_mse.c:391,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 1
    argNames:
    - sb
    argTypes:
    - GF_HTML_SourceBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 380
    functionDepth: 2
    functionLinenumber: 380
    functionLinenumberEnd: 399
    functionName: gf_mse_source_buffer_setup_tracks
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_mse_source_buffer_add_track
    - GF_HTML_SourceBuffer*::parser::GetServiceDescriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mse_source_buffer_setup_tracks(GF_HTML_SourceBuffer *sb)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:411,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:412,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:414,1
    - Dst: gf_mse_source_buffer_add_track
      Src: /src/gpac/src/media_tools/html5_mse.c:422,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - sb
    - od
    argTypes:
    - GF_HTML_SourceBuffer*
    - GF_ObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 403
    functionDepth: 2
    functionLinenumber: 403
    functionLinenumberEnd: 431
    functionName: gf_mse_source_buffer_store_track_desc
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_mse_source_buffer_add_track
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mse_source_buffer_store_track_desc(GF_HTML_SourceBuffer *sb,
      GF_ObjectDescriptor *od)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 435
    functionDepth: 0
    functionLinenumber: 435
    functionLinenumberEnd: 436
    functionName: SECONDS_TO_TIMESCALE
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SECONDS_TO_TIMESCALE(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - u
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 436
    functionDepth: 0
    functionLinenumber: 436
    functionLinenumberEnd: 437
    functionName: TIMESCALE_TO_SECONDS
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TIMESCALE_TO_SECONDS(u)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_html_timeranges_new
      Src: /src/gpac/src/media_tools/html5_mse.c:447,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:448,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:450,1
    - Dst: gf_html_timeranges_add_end
      Src: /src/gpac/src/media_tools/html5_mse.c:453,1
    - Dst: gf_html_timeranges_add_start
      Src: /src/gpac/src/media_tools/html5_mse.c:456,1
    - Dst: gf_html_timeranges_add_end
      Src: /src/gpac/src/media_tools/html5_mse.c:464,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 1
    argNames:
    - track
    argTypes:
    - GF_HTML_Track*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 439
    functionDepth: 1
    functionLinenumber: 439
    functionLinenumberEnd: 467
    functionName: gf_mse_timeranges_from_track_packets
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached:
    - gf_html_timeranges_new
    - gf_list_get
    - gf_html_timeranges_add_end
    - gf_html_timeranges_add_start
    - gf_list_count
    linkageType: ''
    returnType: GF_HTML_MediaTimeRanges
    signature: GF_HTML_MediaTimeRanges *gf_mse_timeranges_from_track_packets(GF_HTML_Track
      *track)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:474,1
    - Dst: gf_html_timeranges_reset
      Src: /src/gpac/src/media_tools/html5_mse.c:475,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:478,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/html5_mse.c:479,1
    - Dst: gf_mse_timeranges_from_track_packets
      Src: /src/gpac/src/media_tools/html5_mse.c:480,1
    - Dst: gf_html_timeranges_intersection
      Src: /src/gpac/src/media_tools/html5_mse.c:483,1
    - Dst: gf_html_timeranges_del
      Src: /src/gpac/src/media_tools/html5_mse.c:484,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/html5_mse.c:485,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_mse.c:488,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/html5_mse.c:490,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_mse.c:493,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/html5_mse.c:495,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 1
    argNames:
    - sb
    argTypes:
    - GF_HTML_SourceBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 470
    functionDepth: 2
    functionLinenumber: 470
    functionLinenumberEnd: 497
    functionName: gf_mse_source_buffer_update_buffered
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_list_get
    - gf_html_timeranges_reset
    - gf_list_count
    - gf_html_timeranges_intersection
    - gf_mse_timeranges_from_track_packets
    - gf_mx_v
    - gf_html_timeranges_del
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_mse_source_buffer_update_buffered(GF_HTML_SourceBuffer *sb)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:506,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:507,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - sb
    - d
    argTypes:
    - GF_HTML_SourceBuffer*
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 499
    functionDepth: 1
    functionLinenumber: 499
    functionLinenumberEnd: 510
    functionName: gf_mse_source_buffer_set_timestampOffset
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void gf_mse_source_buffer_set_timestampOffset(GF_HTML_SourceBuffer
      *sb, double d)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - sb
    - new_timescale
    argTypes:
    - GF_HTML_SourceBuffer*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 526
      start: 512
    functionDepth: 0
    functionLinenumber: 512
    functionLinenumberEnd: 526
    functionName: gf_mse_source_buffer_set_timescale
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_mse_source_buffer_set_timescale(GF_HTML_SourceBuffer *sb, u32
      new_timescale)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_mse.c:529,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_mse.c:530,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - packet
    argTypes:
    - GF_MSE_Packet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 531
      start: 528
    functionDepth: 0
    functionLinenumber: 528
    functionLinenumberEnd: 531
    functionName: gf_mse_packet_del
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_mse_packet_del(GF_MSE_Packet *packet)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/html5_mse.c:542,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:543,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:546,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/html5_mse.c:551,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/html5_mse.c:555,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - track
    - packet
    argTypes:
    - GF_HTML_Track*
    - GF_MSE_Packet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 557
      start: 534
    functionDepth: 1
    functionLinenumber: 534
    functionLinenumberEnd: 557
    functionName: gf_mse_find_overlapped_packet
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_mx_p
    - gf_list_get
    - gf_mx_v
    linkageType: ''
    returnType: GF_MSE_Packet
    signature: "GF_MSE_Packet *gf_mse_find_overlapped_packet(GF_HTML_Track           *track,\n
      \       GF_MSE_Packet           *packet)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/html5_mse.c:566,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:568,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:569,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/html5_mse.c:573,1
    - Dst: TIMESCALE_TO_SECONDS
      Src: /src/gpac/src/media_tools/html5_mse.c:573,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:573,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/html5_mse.c:574,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/html5_mse.c:579,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - track
    - from
    - to
    argTypes:
    - GF_HTML_Track*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 560
    functionDepth: 1
    functionLinenumber: 560
    functionLinenumberEnd: 580
    functionName: gf_mse_remove_frames_from_to
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - TIMESCALE_TO_SECONDS
    - GF_LOG
    - gf_list_count
    - gf_mx_v
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: "void gf_mse_remove_frames_from_to(GF_HTML_Track *track,\n        u64
      \          from,\n        u64           to)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/html5_mse.c:588,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:590,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:592,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/html5_mse.c:594,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:600,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_mse.c:613,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:615,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:617,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/html5_mse.c:625,1
    - Dst: TIMESCALE_TO_SECONDS
      Src: /src/gpac/src/media_tools/html5_mse.c:625,1
    - Dst: TIMESCALE_TO_SECONDS
      Src: /src/gpac/src/media_tools/html5_mse.c:625,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:625,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/html5_mse.c:626,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 2
    argNames:
    - track
    - frame
    argTypes:
    - GF_HTML_Track*
    - GF_MSE_Packet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 627
      start: 583
    functionDepth: 1
    functionLinenumber: 583
    functionLinenumberEnd: 627
    functionName: gf_mse_track_buffer_add_packet
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_mx_p
    - gf_list_get
    - TIMESCALE_TO_SECONDS
    - GF_LOG
    - gf_list_count
    - gf_mx_v
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void gf_mse_track_buffer_add_packet(GF_HTML_Track *track, GF_MSE_Packet
      *frame)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_mse_source_buffer_set_timescale
      Src: /src/gpac/src/media_tools/html5_mse.c:642,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:646,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:648,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:676,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:678,1
    - Dst: gf_mse_process_coded_frame
      Src: /src/gpac/src/media_tools/html5_mse.c:687,1
    - Dst: SECONDS_TO_TIMESCALE
      Src: /src/gpac/src/media_tools/html5_mse.c:696,1
    - Dst: SECONDS_TO_TIMESCALE
      Src: /src/gpac/src/media_tools/html5_mse.c:701,1
    - Dst: gf_mse_find_overlapped_packet
      Src: /src/gpac/src/media_tools/html5_mse.c:716,1
    - Dst: gf_mse_remove_frames_from_to
      Src: /src/gpac/src/media_tools/html5_mse.c:718,1
    - Dst: SECONDS_TO_TIMESCALE
      Src: /src/gpac/src/media_tools/html5_mse.c:719,1
    - Dst: gf_mse_remove_frames_from_to
      Src: /src/gpac/src/media_tools/html5_mse.c:725,1
    - Dst: gf_mse_remove_frames_from_to
      Src: /src/gpac/src/media_tools/html5_mse.c:728,1
    - Dst: gf_mse_track_buffer_add_packet
      Src: /src/gpac/src/media_tools/html5_mse.c:737,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 87
    argCount: 4
    argNames:
    - sb
    - track
    - frame
    - stored
    argTypes:
    - GF_HTML_SourceBuffer*
    - GF_HTML_Track*
    - GF_MSE_Packet*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 761
      start: 629
    functionDepth: 2
    functionLinenumber: 629
    functionLinenumberEnd: 761
    functionName: gf_mse_process_coded_frame
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 1
    functionsReached:
    - gf_mse_track_buffer_add_packet
    - gf_list_get
    - gf_mse_process_coded_frame
    - gf_list_count
    - SECONDS_TO_TIMESCALE
    - gf_mse_find_overlapped_packet
    - gf_mse_source_buffer_set_timescale
    - gf_mse_remove_frames_from_to
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err gf_mse_process_coded_frame(GF_HTML_SourceBuffer    *sb,\n        GF_HTML_Track
      \          *track,\n        GF_MSE_Packet           *frame,\n        Bool *stored)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:780,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/html5_mse.c:781,1
    - Dst: assert
      Src: /src/gpac/src/media_tools/html5_mse.c:782,1
    - Dst: GF_HTML_SourceBuffer*::parser::ConnectService
      Src: /src/gpac/src/media_tools/html5_mse.c:788,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/html5_mse.c:792,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:797,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:803,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/html5_mse.c:804,1
    - Dst: assert
      Src: /src/gpac/src/media_tools/html5_mse.c:807,1
    - Dst: GF_HTML_SourceBuffer*::parser::ChannelGetSLP
      Src: /src/gpac/src/media_tools/html5_mse.c:808,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/html5_mse.c:812,1
    - Dst: assert
      Src: /src/gpac/src/media_tools/html5_mse.c:816,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/html5_mse.c:817,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/html5_mse.c:818,1
    - Dst: TIMESCALE_TO_SECONDS
      Src: /src/gpac/src/media_tools/html5_mse.c:818,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/html5_mse.c:819,1
    - Dst: gf_mse_process_coded_frame
      Src: /src/gpac/src/media_tools/html5_mse.c:821,1
    - Dst: GF_HTML_SourceBuffer*::parser::ChannelReleaseSLP
      Src: /src/gpac/src/media_tools/html5_mse.c:823,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_mse.c:826,1
    - Dst: gf_arraybuffer_del
      Src: /src/gpac/src/media_tools/html5_mse.c:830,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/html5_mse.c:837,1
    - Dst: gf_mse_source_buffer_set_update
      Src: /src/gpac/src/media_tools/html5_mse.c:840,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 50
    argCount: 1
    argNames:
    - par
    argTypes:
    - void*
    assertStmts:
    - condition: (buffer)
      pos:
        line_end: 781
        line_start: 781
        source_file: /src/gpac/src/media_tools/html5_mse.c
    - condition: (track->channel)
      pos:
        line_end: 806
        line_start: 806
        source_file: /src/gpac/src/media_tools/html5_mse.c
    - condition: (packet->is_new_data && packet->size)
      pos:
        line_end: 815
        line_start: 815
        source_file: /src/gpac/src/media_tools/html5_mse.c
    constantsTouched: []
    func_position:
      end: 845
      start: 770
    functionDepth: 8
    functionLinenumber: 770
    functionLinenumberEnd: 845
    functionName: gf_mse_parse_segment
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - GF_HTML_SourceBuffer*::parser::ChannelGetSLP
    - gf_mse_process_coded_frame
    - GF_SAFEALLOC
    - TIMESCALE_TO_SECONDS
    - GF_LOG
    - memcpy
    - assert
    - GF_HTML_SourceBuffer*::parser::ChannelReleaseSLP
    - gf_mse_source_buffer_set_update
    - gf_list_count
    - gf_arraybuffer_del
    - GF_HTML_SourceBuffer*::parser::ConnectService
    - gf_malloc
    - gf_list_rem
    linkageType: ''
    returnType: u32
    signature: u32 gf_mse_parse_segment(void *par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/media_tools/html5_mse.c:850,1
    - Dst: gf_mse_source_buffer_set_update
      Src: /src/gpac/src/media_tools/html5_mse.c:851,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/html5_mse.c:853,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/html5_mse.c:856,1
    - Dst: gf_isom_probe_file
      Src: /src/gpac/src/media_tools/html5_mse.c:859,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/html5_mse.c:861,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_mse.c:863,1
    - Dst: gf_th_new
      Src: /src/gpac/src/media_tools/html5_mse.c:867,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_mse.c:868,1
    - Dst: gf_th_run
      Src: /src/gpac/src/media_tools/html5_mse.c:869,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 2
    argNames:
    - sb
    - buffer
    argTypes:
    - GF_HTML_SourceBuffer*
    - GF_HTML_ArrayBuffer*
    assertStmts:
    - condition: (sb->parser)
      pos:
        line_end: 849
        line_start: 849
        source_file: /src/gpac/src/media_tools/html5_mse.c
    constantsTouched: []
    func_position:
      end: 871
      start: 848
    functionDepth: 8
    functionLinenumber: 848
    functionLinenumberEnd: 871
    functionName: gf_mse_source_buffer_append_arraybuffer
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 1
    functionsReached:
    - gf_isom_probe_file
    - gf_th_run
    - GF_LOG
    - gf_mse_source_buffer_set_update
    - assert
    - gf_th_new
    - sprintf
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void gf_mse_source_buffer_append_arraybuffer(GF_HTML_SourceBuffer *sb,
      GF_HTML_ArrayBuffer *buffer)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mse_source_buffer_set_update
      Src: /src/gpac/src/media_tools/html5_mse.c:884,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/html5_mse.c:886,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:888,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:890,1
    - Dst: gf_mse_source_buffer_set_timescale
      Src: /src/gpac/src/media_tools/html5_mse.c:891,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/html5_mse.c:893,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:894,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:896,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/html5_mse.c:903,1
    - Dst: SECONDS_TO_TIMESCALE
      Src: /src/gpac/src/media_tools/html5_mse.c:904,1
    - Dst: gf_mse_remove_frames_from_to
      Src: /src/gpac/src/media_tools/html5_mse.c:907,1
    - Dst: gf_mse_source_buffer_set_update
      Src: /src/gpac/src/media_tools/html5_mse.c:909,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 1
    argNames:
    - par
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 911
      start: 875
    functionDepth: 8
    functionLinenumber: 875
    functionLinenumberEnd: 911
    functionName: gf_mse_source_buffer_remove
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - GF_LOG
    - gf_mse_source_buffer_set_update
    - gf_list_count
    - gf_mx_v
    - SECONDS_TO_TIMESCALE
    - gf_mse_source_buffer_set_timescale
    - gf_mse_remove_frames_from_to
    linkageType: ''
    returnType: u32
    signature: u32 gf_mse_source_buffer_remove(void *par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_new
      Src: /src/gpac/src/media_tools/html5_mse.c:918,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_mse.c:919,1
    - Dst: gf_th_run
      Src: /src/gpac/src/media_tools/html5_mse.c:920,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - sb
    - start
    - end
    argTypes:
    - GF_HTML_SourceBuffer*
    - double
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 922
      start: 913
    functionDepth: 1
    functionLinenumber: 913
    functionLinenumberEnd: 922
    functionName: gf_mse_remove
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 1
    functionsReached:
    - gf_th_run
    - gf_list_add
    - gf_th_new
    linkageType: ''
    returnType: void
    signature: void gf_mse_remove(GF_HTML_SourceBuffer *sb, double start, double end)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:941,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:951,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/html5_mse.c:954,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/html5_mse.c:957,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/html5_mse.c:958,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/html5_mse.c:960,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/html5_mse.c:964,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/html5_mse.c:966,1
    - Dst: gf_mse_source_buffer_store_track_desc
      Src: /src/gpac/src/media_tools/html5_mse.c:983,1
    - Dst: gf_mse_source_buffer_set_update
      Src: /src/gpac/src/media_tools/html5_mse.c:987,1
    - Dst: gf_service_declare_media
      Src: /src/gpac/src/media_tools/html5_mse.c:991,1
    - Dst: gf_mse_source_buffer_setup_tracks
      Src: /src/gpac/src/media_tools/html5_mse.c:1001,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/src/media_tools/html5_mse.c:1006,1
    - Dst: gf_service_disconnect_ack
      Src: /src/gpac/src/media_tools/html5_mse.c:1008,1
    - Dst: gf_service_connect_ack
      Src: /src/gpac/src/media_tools/html5_mse.c:1014,1
    - Dst: gf_service_disconnect_ack
      Src: /src/gpac/src/media_tools/html5_mse.c:1016,1
    - Dst: gf_service_command
      Src: /src/gpac/src/media_tools/html5_mse.c:1021,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 77
    argCount: 2
    argNames:
    - parser
    - command
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1029
      start: 925
    functionDepth: 8
    functionLinenumber: 925
    functionLinenumberEnd: 1029
    functionName: gf_mse_proxy
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_service_disconnect_ack
    - GF_LOG
    - gf_mse_source_buffer_set_update
    - gf_mse_source_buffer_setup_tracks
    - gf_mse_source_buffer_store_track_desc
    - gf_service_connect_ack
    - gf_service_declare_media
    - gf_service_command
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mse_proxy(void *parser, void *command)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/html5_mse.c:1042,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:1043,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:1046,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:1047,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/html5_mse.c:1049,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_mse.c:1050,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_mse.c:1051,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/html5_mse.c:1054,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - track
    argTypes:
    - GF_HTML_Track*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1056
      start: 1039
    functionDepth: 1
    functionLinenumber: 1039
    functionLinenumberEnd: 1056
    functionName: gf_mse_track_buffer_release_packet
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_list_get
    - gf_list_count
    - gf_mx_v
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mse_track_buffer_release_packet(GF_HTML_Track *track)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/html5_mse.c:1067,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_mse.c:1068,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_mse.c:1069,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/html5_mse.c:1078,1
    - Dst: TIMESCALE_TO_SECONDS
      Src: /src/gpac/src/media_tools/html5_mse.c:1078,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/html5_mse.c:1085,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/html5_mse.c:1087,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 7
    argNames:
    - track
    - out_data_ptr
    - out_data_size
    - out_sl_hdr
    - sl_compressed
    - out_reception_status
    - is_new_data
    argTypes:
    - GF_HTML_Track*
    - char**
    - u32*
    - GF_SLHeader*
    - Bool*
    - GF_Err*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1089
      start: 1059
    functionDepth: 1
    functionLinenumber: 1059
    functionLinenumberEnd: 1089
    functionName: gf_mse_track_buffer_get_next_packet
    functionSourceFile: /src/gpac/src/media_tools/html5_mse.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - TIMESCALE_TO_SECONDS
    - GF_LOG
    - gf_list_count
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_mse_track_buffer_get_next_packet(GF_HTML_Track *track,\n
      \       char **out_data_ptr, u32 *out_data_size,\n        GF_SLHeader *out_sl_hdr,
      Bool *sl_compressed,\n        GF_Err *out_reception_status, Bool *is_new_data)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:274,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:275,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:276,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:277,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:279,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - files
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 272
    functionDepth: 1
    functionLinenumber: 272
    functionLinenumberEnd: 280
    functionName: gf_route_static_files_del
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_pop_back
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_route_static_files_del(GF_List *files)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/media_tools/route_dmx.c:285,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/media_tools/route_dmx.c:286,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:288,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:289,1
    - Dst: gf_route_static_files_del
      Src: /src/gpac/src/media_tools/route_dmx.c:290,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:291,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:292,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:293,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:294,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:296,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:297,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:298,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - routedmx
    - rs
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTESession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 282
    functionDepth: 2
    functionLinenumber: 282
    functionLinenumberEnd: 299
    functionName: gf_route_route_session_del
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_route_static_files_del
    - gf_sk_group_unregister
    - gf_sk_del
    - gf_list_count
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_route_route_session_del(GF_ROUTEDmx *routedmx, GF_ROUTESession
      *rs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:303,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:304,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:306,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:307,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:310,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:311,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 1
    argNames:
    - o
    argTypes:
    - GF_LCTObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 301
    functionDepth: 0
    functionLinenumber: 301
    functionLinenumberEnd: 312
    functionName: gf_route_lct_obj_del
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_route_lct_obj_del(GF_LCTObject *o)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/media_tools/route_dmx.c:317,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/media_tools/route_dmx.c:318,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:320,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:321,1
    - Dst: gf_route_lct_obj_del
      Src: /src/gpac/src/media_tools/route_dmx.c:322,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:324,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:326,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:327,1
    - Dst: gf_route_route_session_del
      Src: /src/gpac/src/media_tools/route_dmx.c:328,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:330,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:332,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:333,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:334,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:335,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:336,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:337,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:338,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 2
    argNames:
    - routedmx
    - s
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTEService*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 314
    functionDepth: 3
    functionLinenumber: 314
    functionLinenumberEnd: 339
    functionName: gf_route_service_del
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_sk_group_unregister
    - gf_sk_del
    - gf_list_count
    - gf_route_route_session_del
    - gf_list_del_item
    - gf_route_lct_obj_del
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_route_service_del(GF_ROUTEDmx *routedmx, GF_ROUTEService *s)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:346,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:347,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/media_tools/route_dmx.c:348,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/route_dmx.c:349,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/media_tools/route_dmx.c:350,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:352,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:353,1
    - Dst: gf_route_service_del
      Src: /src/gpac/src/media_tools/route_dmx.c:354,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:356,1
    - Dst: gf_sk_group_del
      Src: /src/gpac/src/media_tools/route_dmx.c:358,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:360,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:361,1
    - Dst: gf_route_lct_obj_del
      Src: /src/gpac/src/media_tools/route_dmx.c:362,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:364,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/route_dmx.c:366,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:367,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 1
    argNames:
    - routedmx
    argTypes:
    - GF_ROUTEDmx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 341
    functionDepth: 4
    functionLinenumber: 341
    functionLinenumberEnd: 368
    functionName: gf_route_dmx_del
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_sk_del
    - gf_route_service_del
    - gf_list_count
    - gf_sk_group_del
    - gf_bs_del
    - gf_route_lct_obj_del
    - gf_xml_dom_del
    - gf_list_del
    - gf_mx_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_dmx_del(GF_ROUTEDmx *routedmx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/media_tools/route_dmx.c:374,1
    - Dst: gf_sk_setup_multicast
      Src: /src/gpac/src/media_tools/route_dmx.c:375,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:377,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/media_tools/route_dmx.c:380,1
    - Dst: gf_sk_connect
      Src: /src/gpac/src/media_tools/route_dmx.c:383,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:385,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 5
    argNames:
    - routedmx
    - log_name
    - sock
    - dst_ip
    - dst_port
    argTypes:
    - GF_ROUTEDmx*
    - char*
    - GF_Socket*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 370
    functionDepth: 1
    functionLinenumber: 370
    functionLinenumberEnd: 389
    functionName: routedmx_setup_socket
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_sk_bind
    - GF_LOG
    - gf_sk_connect
    - gf_sk_is_multicast_address
    - gf_sk_setup_multicast
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err routedmx_setup_socket(GF_ROUTEDmx *routedmx, const char *log_name,
      GF_Socket *sock, const char *dst_ip, u32 dst_port)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:397,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:399,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/media_tools/route_dmx.c:405,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:407,1
    - Dst: gf_route_dmx_del
      Src: /src/gpac/src/media_tools/route_dmx.c:408,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:411,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:413,1
    - Dst: gf_route_dmx_del
      Src: /src/gpac/src/media_tools/route_dmx.c:414,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:417,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:419,1
    - Dst: gf_route_dmx_del
      Src: /src/gpac/src/media_tools/route_dmx.c:420,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/media_tools/route_dmx.c:423,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:425,1
    - Dst: gf_route_dmx_del
      Src: /src/gpac/src/media_tools/route_dmx.c:426,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/route_dmx.c:434,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:436,1
    - Dst: gf_route_dmx_del
      Src: /src/gpac/src/media_tools/route_dmx.c:437,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/route_dmx.c:440,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:442,1
    - Dst: gf_route_dmx_del
      Src: /src/gpac/src/media_tools/route_dmx.c:443,1
    - Dst: gf_sk_group_new
      Src: /src/gpac/src/media_tools/route_dmx.c:447,1
    - Dst: gf_route_dmx_del
      Src: /src/gpac/src/media_tools/route_dmx.c:449,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:450,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/route_dmx.c:454,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/media_tools/route_dmx.c:466,1
    - Dst: gf_route_dmx_del
      Src: /src/gpac/src/media_tools/route_dmx.c:468,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:469,1
    - Dst: gf_sk_has_nrt_netcap
      Src: /src/gpac/src/media_tools/route_dmx.c:472,1
    - Dst: gf_sk_set_usec_wait
      Src: /src/gpac/src/media_tools/route_dmx.c:475,1
    - Dst: routedmx_setup_socket
      Src: /src/gpac/src/media_tools/route_dmx.c:477,1
    - Dst: gf_route_dmx_del
      Src: /src/gpac/src/media_tools/route_dmx.c:479,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/media_tools/route_dmx.c:482,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/media_tools/route_dmx.c:485,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 79
    argCount: 6
    argNames:
    - ifce
    - sock_buffer_size
    - netcap_id
    - is_atsc
    - udta
    - log_name
    argTypes:
    - char*
    - u32
    - char*
    - Bool
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 391
    functionDepth: 5
    functionLinenumber: 391
    functionLinenumberEnd: 487
    functionName: gf_route_dmx_new_internal
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_sk_set_usec_wait
    - gf_list_new
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_sk_group_register
    - GF_LOG
    - gf_route_dmx_del
    - gf_sk_set_buffer_size
    - routedmx_setup_socket
    - gf_xml_dom_new
    - gf_sk_group_new
    - gf_sk_has_nrt_netcap
    - gf_mx_new
    - gf_sk_new_ex
    - gf_malloc
    linkageType: ''
    returnType: GF_ROUTEDmx
    signature: "GF_ROUTEDmx *gf_route_dmx_new_internal(const char *ifce, u32 sock_buffer_size,
      const char *netcap_id, Bool is_atsc,\n\t\t\t\t\t\t\t  void (*on_event)(void
      *udta, GF_ROUTEEventType evt, u32 evt_param, GF_ROUTEEventFileInfo *info),\n\t\t\t\t\t\t\t
      \ void *udta, const char *log_name)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/media_tools/route_dmx.c:493,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/media_tools/route_dmx.c:494,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:499,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/media_tools/route_dmx.c:501,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/media_tools/route_dmx.c:502,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 3
    argNames:
    - routedmx
    - s
    - do_register
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTEService*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 489
    functionDepth: 1
    functionLinenumber: 489
    functionLinenumberEnd: 504
    functionName: gf_route_register_service_sockets
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_sk_group_unregister
    - gf_list_enum
    - gf_sk_group_register
    linkageType: ''
    returnType: void
    signature: void gf_route_register_service_sockets(GF_ROUTEDmx *routedmx, GF_ROUTEService
      *s, Bool do_register)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/route_dmx.c:512,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/route_dmx.c:514,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:522,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:526,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:528,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:530,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:540,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:541,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:543,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:544,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:545,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/media_tools/route_dmx.c:550,1
    - Dst: gf_sk_has_nrt_netcap
      Src: /src/gpac/src/media_tools/route_dmx.c:551,1
    - Dst: gf_sk_set_usec_wait
      Src: /src/gpac/src/media_tools/route_dmx.c:554,1
    - Dst: routedmx_setup_socket
      Src: /src/gpac/src/media_tools/route_dmx.c:556,1
    - Dst: gf_route_service_del
      Src: /src/gpac/src/media_tools/route_dmx.c:558,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/media_tools/route_dmx.c:561,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/media_tools/route_dmx.c:568,1
    - Dst: gf_route_register_service_sockets
      Src: /src/gpac/src/media_tools/route_dmx.c:584,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/media_tools/route_dmx.c:590,1
    - Dst: GF_ROUTEDmx*::on_event
      Src: /src/gpac/src/media_tools/route_dmx.c:593,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 73
    argCount: 5
    argNames:
    - routedmx
    - dst_ip
    - dst_port
    - service_id
    - protocol_type
    argTypes:
    - GF_ROUTEDmx*
    - char*
    - u32
    - u32
    - GF_ServiceProtocolType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 596
      start: 506
    functionDepth: 4
    functionLinenumber: 506
    functionLinenumberEnd: 596
    functionName: gf_route_create_service
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_sk_set_usec_wait
    - gf_strdup
    - gf_list_new
    - GF_SAFEALLOC
    - gf_sk_group_register
    - GF_LOG
    - sprintf
    - gf_route_service_del
    - gf_sk_set_buffer_size
    - routedmx_setup_socket
    - gf_list_add
    - gf_sk_has_nrt_netcap
    - gf_sk_new_ex
    - gf_route_register_service_sockets
    - GF_ROUTEDmx*::on_event
    linkageType: ''
    returnType: GF_ROUTEService
    signature: GF_ROUTEService *gf_route_create_service(GF_ROUTEDmx *routedmx, const
      char *dst_ip, u32 dst_port, u32 service_id, GF_ServiceProtocolType protocol_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_route_dmx_new_internal
      Src: /src/gpac/src/media_tools/route_dmx.c:603,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 598
    functionDepth: 6
    functionLinenumber: 598
    functionLinenumberEnd: 604
    functionName: "GF_ROUTEDmx *gf_route_atsc_dmx_new(const char *ifce, u32 sock_buffer_size,\n\t\t\t\t\t\t\t\t
      \  void (*on_event)(void *udta, GF_ROUTEEventType evt, u32 evt_param, GF_ROUTEEventFileInfo
      *info),\n\t\t\t\t\t\t\t\t   void *udta)"
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_route_dmx_new_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT GF_ROUTEDmx *gf_route_atsc_dmx_new(const char *ifce, u32
      sock_buffer_size,\n\t\t\t\t\t\t\t\t   void (*on_event)(void *udta, GF_ROUTEEventType
      evt, u32 evt_param, GF_ROUTEEventFileInfo *info),\n\t\t\t\t\t\t\t\t   void *udta)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_route_dmx_new_internal
      Src: /src/gpac/src/media_tools/route_dmx.c:610,1
    - Dst: gf_route_create_service
      Src: /src/gpac/src/media_tools/route_dmx.c:612,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 614
      start: 605
    functionDepth: 6
    functionLinenumber: 605
    functionLinenumberEnd: 614
    functionName: "GF_ROUTEDmx *gf_route_dmx_new(const char *ip, u32 port, const char
      *ifce, u32 sock_buffer_size,\n\t\t\t\t\t\t\t  void (*on_event)(void *udta, GF_ROUTEEventType
      evt, u32 evt_param, GF_ROUTEEventFileInfo *info),\n\t\t\t\t\t\t\t  void *udta)"
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_route_dmx_new_internal
    - gf_route_create_service
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT GF_ROUTEDmx *gf_route_dmx_new(const char *ip, u32 port,
      const char *ifce, u32 sock_buffer_size,\n\t\t\t\t\t\t\t  void (*on_event)(void
      *udta, GF_ROUTEEventType evt, u32 evt_param, GF_ROUTEEventFileInfo *info),\n\t\t\t\t\t\t\t
      \ void *udta)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_route_dmx_new_internal
      Src: /src/gpac/src/media_tools/route_dmx.c:622,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 623
      start: 617
    functionDepth: 6
    functionLinenumber: 617
    functionLinenumberEnd: 623
    functionName: "GF_ROUTEDmx *gf_route_atsc_dmx_new_ex(const char *ifce, u32 sock_buffer_size,
      const char *netcap_id,\n\t\t\t\t\t\t\t\t   void (*on_event)(void *udta, GF_ROUTEEventType
      evt, u32 evt_param, GF_ROUTEEventFileInfo *info),\n\t\t\t\t\t\t\t\t   void *udta)"
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_route_dmx_new_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT GF_ROUTEDmx *gf_route_atsc_dmx_new_ex(const char *ifce,
      u32 sock_buffer_size, const char *netcap_id,\n\t\t\t\t\t\t\t\t   void (*on_event)(void
      *udta, GF_ROUTEEventType evt, u32 evt_param, GF_ROUTEEventFileInfo *info),\n\t\t\t\t\t\t\t\t
      \  void *udta)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_route_dmx_new_internal
      Src: /src/gpac/src/media_tools/route_dmx.c:629,1
    - Dst: gf_route_create_service
      Src: /src/gpac/src/media_tools/route_dmx.c:631,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 633
      start: 624
    functionDepth: 6
    functionLinenumber: 624
    functionLinenumberEnd: 633
    functionName: "GF_ROUTEDmx *gf_route_dmx_new_ex(const char *ip, u32 port, const
      char *ifce, u32 sock_buffer_size, const char *netcap_id,\n\t\t\t\t\t\t\t  void
      (*on_event)(void *udta, GF_ROUTEEventType evt, u32 evt_param, GF_ROUTEEventFileInfo
      *info),\n\t\t\t\t\t\t\t  void *udta)"
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_route_dmx_new_internal
    - gf_route_create_service
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT GF_ROUTEDmx *gf_route_dmx_new_ex(const char *ip, u32 port,
      const char *ifce, u32 sock_buffer_size, const char *netcap_id,\n\t\t\t\t\t\t\t
      \ void (*on_event)(void *udta, GF_ROUTEEventType evt, u32 evt_param, GF_ROUTEEventFileInfo
      *info),\n\t\t\t\t\t\t\t  void *udta)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_route_dmx_new_internal
      Src: /src/gpac/src/media_tools/route_dmx.c:637,1
    - Dst: gf_route_create_service
      Src: /src/gpac/src/media_tools/route_dmx.c:640,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 6
    argNames:
    - ip
    - port
    - ifce
    - sock_buffer_size
    - netcap_id
    - udta
    argTypes:
    - char*
    - u32
    - char*
    - u32
    - char*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 635
    functionDepth: 6
    functionLinenumber: 635
    functionLinenumberEnd: 642
    functionName: gf_dvb_mabr_dmx_new
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_route_dmx_new_internal
    - gf_route_create_service
    linkageType: ''
    returnType: GF_ROUTEDmx
    signature: GF_ROUTEDmx *gf_dvb_mabr_dmx_new(const char *ip, u32 port, const char
      *ifce, u32 sock_buffer_size, const char *netcap_id, void (*on_event)(void *udta,
      GF_ROUTEEventType evt, u32 evt_param, GF_ROUTEEventFileInfo *finfo), void *udta)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:660,1
    - Dst: gf_route_register_service_sockets
      Src: /src/gpac/src/media_tools/route_dmx.c:676,1
    - Dst: gf_route_register_service_sockets
      Src: /src/gpac/src/media_tools/route_dmx.c:683,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 38
    argCount: 3
    argNames:
    - routedmx
    - serviceID
    - tune_all_sls
    argTypes:
    - GF_ROUTEDmx*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 644
    functionDepth: 2
    functionLinenumber: 644
    functionLinenumberEnd: 688
    functionName: gf_route_atsc3_tune_in
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_route_register_service_sockets
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_atsc3_tune_in(GF_ROUTEDmx *routedmx, u32 serviceID,
      Bool tune_all_sls)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - routedmx
    - force_reorder
    - timeout_us
    argTypes:
    - GF_ROUTEDmx*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 697
      start: 690
    functionDepth: 0
    functionLinenumber: 690
    functionLinenumberEnd: 697
    functionName: gf_route_dmx_set_reorder
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_dmx_set_reorder(GF_ROUTEDmx *routedmx, Bool force_reorder,
      u32 timeout_us)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - routedmx
    - dispatch_mode
    argTypes:
    - GF_ROUTEDmx*
    - GF_RouteProgressiveDispatch
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 705
      start: 699
    functionDepth: 0
    functionLinenumber: 699
    functionLinenumberEnd: 705
    functionName: gf_route_set_dispatch_mode
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_set_dispatch_mode(GF_ROUTEDmx *routedmx, GF_RouteProgressiveDispatch
      dispatch_mode)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_clone
      Src: /src/gpac/src/media_tools/route_dmx.c:712,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:714,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:717,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:726,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:727,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/route_dmx.c:727,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:731,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:733,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:735,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:736,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:736,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:737,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:738,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:738,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:745,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:749,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:753,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:759,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:760,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:765,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:766,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:770,1
    - Dst: gf_route_service_del
      Src: /src/gpac/src/media_tools/route_dmx.c:771,1
    - Dst: gf_route_create_service
      Src: /src/gpac/src/media_tools/route_dmx.c:773,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:776,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:777,1
    - Dst: gf_route_service_del
      Src: /src/gpac/src/media_tools/route_dmx.c:778,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:780,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:782,1
    - Dst: GF_ROUTEDmx*::on_event
      Src: /src/gpac/src/media_tools/route_dmx.c:783,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 62
    argCount: 2
    argNames:
    - routedmx
    - root
    argTypes:
    - GF_ROUTEDmx*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 785
      start: 708
    functionDepth: 5
    functionLinenumber: 708
    functionLinenumberEnd: 785
    functionName: gf_route_dmx_process_slt
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_pop_back
    - sscanf
    - GF_LOG
    - gf_list_clone
    - gf_route_service_del
    - gf_list_count
    - strcmp
    - atoi
    - gf_list_del_item
    - gf_route_create_service
    - gf_list_enum
    - gf_list_del
    - GF_ROUTEDmx*::on_event
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_route_dmx_process_slt(GF_ROUTEDmx *routedmx, GF_XMLNode *root)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - status
    argTypes:
    - GF_LCTObjectStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 797
      start: 788
    functionDepth: 0
    functionLinenumber: 788
    functionLinenumberEnd: 797
    functionName: get_lct_obj_status_name
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *get_lct_obj_status_name(GF_LCTObjectStatus status)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:802,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:805,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:806,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:807,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/route_dmx.c:812,1
    - Dst: GF_ROUTEDmx*::on_event
      Src: /src/gpac/src/media_tools/route_dmx.c:815,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:819,1
    - Dst: get_lct_obj_status_name
      Src: /src/gpac/src/media_tools/route_dmx.c:819,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:834,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:835,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:847,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:851,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:853,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:854,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/route_dmx.c:854,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:855,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/media_tools/route_dmx.c:858,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:859,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:862,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:864,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:866,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:868,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:870,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 62
    argCount: 3
    argNames:
    - routedmx
    - s
    - obj
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTEService*
    - GF_LCTObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 874
      start: 800
    functionDepth: 1
    functionLinenumber: 800
    functionLinenumberEnd: 874
    functionName: gf_route_obj_to_reservoir
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_assert
    - gf_list_get
    - GF_LOG
    - gf_log_tool_level_on
    - gf_list_find
    - gf_list_count
    - memset
    - gf_mx_v
    - gf_list_add
    - gf_list_del_item
    - get_lct_obj_status_name
    - GF_ROUTEDmx*::on_event
    linkageType: ''
    returnType: void
    signature: void gf_route_obj_to_reservoir(GF_ROUTEDmx *routedmx, GF_ROUTEService
      *s, GF_LCTObject *obj)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:878,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:880,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:883,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:889,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:891,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:892,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/media_tools/route_dmx.c:896,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/media_tools/route_dmx.c:897,1
    - Dst: gf_route_static_files_del
      Src: /src/gpac/src/media_tools/route_dmx.c:908,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:909,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:910,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:911,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:912,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 35
    argCount: 3
    argNames:
    - routedmx
    - s
    - lc
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTEService*
    - GF_ROUTELCTChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 913
      start: 876
    functionDepth: 2
    functionLinenumber: 876
    functionLinenumberEnd: 913
    functionName: gf_route_lct_removed
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_route_obj_to_reservoir
    - gf_route_static_files_del
    - gf_sk_group_unregister
    - gf_sk_del
    - gf_list_count
    - gf_list_del_item
    linkageType: ''
    returnType: void
    signature: void gf_route_lct_removed(GF_ROUTEDmx *routedmx, GF_ROUTEService *s,
      GF_ROUTELCTChannel *lc)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:950,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/media_tools/route_dmx.c:953,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:965,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/route_dmx.c:968,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:974,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:976,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/route_dmx.c:983,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:992,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:1001,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1006,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:1032,1
    - Dst: GF_ROUTEDmx*::on_event
      Src: /src/gpac/src/media_tools/route_dmx.c:1040,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:1046,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 108
    argCount: 4
    argNames:
    - routedmx
    - s
    - obj
    - final_push
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTEService*
    - GF_LCTObject*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1049
      start: 915
    functionDepth: 2
    functionLinenumber: 915
    functionLinenumberEnd: 1049
    functionName: gf_route_dmx_push_object
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_assert
    - gf_route_obj_to_reservoir
    - GF_LOG
    - sprintf
    - memset
    - gf_mx_v
    - gf_crc_32
    - GF_ROUTEDmx*::on_event
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_route_dmx_push_object(GF_ROUTEDmx *routedmx, GF_ROUTEService
      *s, GF_LCTObject *obj, Bool final_push)
  - BBCount: 68
    BranchProfiles: []
    Callsites:
    - Dst: gf_crc_32
      Src: /src/gpac/src/media_tools/route_dmx.c:1057,1
    - Dst: isprint
      Src: /src/gpac/src/media_tools/route_dmx.c:1068,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1069,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/media_tools/route_dmx.c:1073,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/route_dmx.c:1074,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1075,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1078,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/route_dmx.c:1078,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/media_tools/route_dmx.c:1078,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1082,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1085,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1087,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:1095,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1097,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:1109,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1111,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1112,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1113,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:1113,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1114,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:1114,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1115,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:1115,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1116,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/route_dmx.c:1116,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1129,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1130,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1131,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1133,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1133,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:1157,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:1158,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1167,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/route_dmx.c:1172,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:1177,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/route_dmx.c:1178,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1179,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1185,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1186,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1187,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:1203,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:1216,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:1220,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:1224,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1237,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1238,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/route_dmx.c:1240,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:1248,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:1251,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1255,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/route_dmx.c:1259,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/media_tools/route_dmx.c:1267,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1277,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1279,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1282,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1282,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1295,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:1307,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:1308,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:1312,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:1317,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:1318,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1320,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/route_dmx.c:1328,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/route_dmx.c:1332,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:1346,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/route_dmx.c:1346,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/route_dmx.c:1347,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:1348,1
    CyclomaticComplexity: 105
    EdgeCount: 105
    ICount: 250
    argCount: 3
    argNames:
    - routedmx
    - s
    - fdt_obj
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTEService*
    - GF_LCTObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1352
      start: 1053
    functionDepth: 2
    functionLinenumber: 1053
    functionLinenumberEnd: 1352
    functionName: gf_route_dmx_process_dvb_flute_signaling
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_get_root
    - GF_SAFEALLOC
    - gf_list_find
    - gf_list_count
    - memset
    - atoi
    - gf_sys_clock
    - gf_realloc
    - gf_list_get
    - gf_list_pop_back
    - gf_route_obj_to_reservoir
    - strrchr
    - gf_strdup
    - gf_assert
    - gf_list_add
    - gf_crc_32
    - gf_mx_p
    - sscanf
    - GF_LOG
    - gf_xml_dom_parse_string
    - strstr
    - gf_xml_dom_get_error
    - gf_mx_v
    - gf_list_del_item
    - gf_error_to_string
    - gf_list_enum
    - gf_sys_clock_high_res
    - gf_malloc
    - strcmp
    - isprint
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_route_dmx_process_dvb_flute_signaling(GF_ROUTEDmx *routedmx,
      GF_ROUTEService *s, GF_LCTObject *fdt_obj)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:1361,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1362,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - n
    - att_name
    argTypes:
    - GF_XMLNode*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1365
      start: 1356
    functionDepth: 1
    functionLinenumber: 1356
    functionLinenumberEnd: 1365
    functionName: _xml_get_attr
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 5
    functionsReached:
    - gf_list_enum
    - strcmp
    linkageType: ''
    returnType: char
    signature: char *_xml_get_attr(const GF_XMLNode *n, const char *att_name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:1372,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1373,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - n
    - child_name
    argTypes:
    - GF_XMLNode*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1376
      start: 1367
    functionDepth: 1
    functionLinenumber: 1367
    functionLinenumberEnd: 1376
    functionName: _xml_get_child
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - strcmp
    linkageType: ''
    returnType: GF_XMLNode
    signature: GF_XMLNode *_xml_get_child(const GF_XMLNode *n, const char *child_name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:1382,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1384,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1385,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 2
    argNames:
    - n
    - child_name
    argTypes:
    - GF_XMLNode*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1390
      start: 1377
    functionDepth: 1
    functionLinenumber: 1377
    functionLinenumberEnd: 1390
    functionName: _xml_get_child_text
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - strcmp
    - gf_list_get
    linkageType: ''
    returnType: char
    signature: char *_xml_get_child_text(const GF_XMLNode *n, const char *child_name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:1396,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1397,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - n
    - child_name
    argTypes:
    - GF_XMLNode*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1400
      start: 1391
    functionDepth: 1
    functionLinenumber: 1391
    functionLinenumberEnd: 1400
    functionName: _xml_get_child_count
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - strcmp
    linkageType: ''
    returnType: u32
    signature: u32 _xml_get_child_count(const GF_XMLNode *n, const char *child_name)
  - BBCount: 67
    BranchProfiles: []
    Callsites:
    - Dst: gf_crc_32
      Src: /src/gpac/src/media_tools/route_dmx.c:1406,1
    - Dst: isprint
      Src: /src/gpac/src/media_tools/route_dmx.c:1412,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1413,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/media_tools/route_dmx.c:1418,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/route_dmx.c:1419,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1420,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1423,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/route_dmx.c:1423,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/media_tools/route_dmx.c:1423,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1426,1
    - Dst: gf_list_clone
      Src: /src/gpac/src/media_tools/route_dmx.c:1427,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:1428,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:1433,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1436,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1438,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:1447,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:1450,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1453,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:1454,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1455,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1459,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1461,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1465,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1467,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1475,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1477,1
    - Dst: _xml_get_child
      Src: /src/gpac/src/media_tools/route_dmx.c:1481,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:1482,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1483,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1485,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1491,1
    - Dst: _xml_get_child
      Src: /src/gpac/src/media_tools/route_dmx.c:1494,1
    - Dst: _xml_get_child_text
      Src: /src/gpac/src/media_tools/route_dmx.c:1497,1
    - Dst: _xml_get_child_text
      Src: /src/gpac/src/media_tools/route_dmx.c:1498,1
    - Dst: _xml_get_child_text
      Src: /src/gpac/src/media_tools/route_dmx.c:1499,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:1502,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/route_dmx.c:1504,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1508,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:1509,1
    - Dst: gf_list_clone
      Src: /src/gpac/src/media_tools/route_dmx.c:1512,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1515,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1516,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1518,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1520,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1526,1
    - Dst: gf_route_create_service
      Src: /src/gpac/src/media_tools/route_dmx.c:1527,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:1529,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:1531,1
    - Dst: gf_list_clone
      Src: /src/gpac/src/media_tools/route_dmx.c:1533,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:1534,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1535,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1537,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1538,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1539,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:1540,1
    - Dst: _xml_get_child
      Src: /src/gpac/src/media_tools/route_dmx.c:1551,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:1553,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:1554,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:1555,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:1560,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1562,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:1563,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:1565,1
    - Dst: _xml_get_child_text
      Src: /src/gpac/src/media_tools/route_dmx.c:1569,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:1572,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:1573,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1577,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1578,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1579,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1581,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:1587,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1588,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1589,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:1594,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:1596,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:1598,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1601,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:1603,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/media_tools/route_dmx.c:1607,1
    - Dst: gf_sk_has_nrt_netcap
      Src: /src/gpac/src/media_tools/route_dmx.c:1608,1
    - Dst: gf_sk_set_usec_wait
      Src: /src/gpac/src/media_tools/route_dmx.c:1611,1
    - Dst: routedmx_setup_socket
      Src: /src/gpac/src/media_tools/route_dmx.c:1613,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:1615,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:1616,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:1617,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:1618,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/media_tools/route_dmx.c:1621,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/media_tools/route_dmx.c:1624,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:1627,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:1632,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:1636,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:1647,1
    - Dst: _xml_get_child_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1651,1
    - Dst: gf_route_service_setup_dash
      Src: /src/gpac/src/media_tools/route_dmx.c:1673,1
    - Dst: _xml_get_child
      Src: /src/gpac/src/media_tools/route_dmx.c:1676,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:1677,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:1679,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:1680,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1681,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1683,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1685,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1688,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:1699,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:1700,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:1701,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:1703,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:1704,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:1706,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:1707,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:1708,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1712,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:1713,1
    - Dst: gf_route_lct_removed
      Src: /src/gpac/src/media_tools/route_dmx.c:1714,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:1716,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1719,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:1720,1
    - Dst: gf_route_route_session_del
      Src: /src/gpac/src/media_tools/route_dmx.c:1721,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:1723,1
    - Dst: gf_route_register_service_sockets
      Src: /src/gpac/src/media_tools/route_dmx.c:1726,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1731,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:1732,1
    - Dst: gf_route_service_del
      Src: /src/gpac/src/media_tools/route_dmx.c:1733,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:1735,1
    CyclomaticComplexity: 138
    EdgeCount: 138
    ICount: 265
    argCount: 3
    argNames:
    - routedmx
    - parent_s
    - object
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTEService*
    - GF_LCTObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1738
      start: 1403
    functionDepth: 5
    functionLinenumber: 1403
    functionLinenumberEnd: 1738
    functionName: gf_route_dmx_process_dvb_mcast_signaling
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_free
    - _xml_get_attr
    - gf_xml_dom_get_root
    - GF_SAFEALLOC
    - gf_sk_group_register
    - gf_sk_set_buffer_size
    - gf_list_count
    - gf_route_service_del
    - routedmx_setup_socket
    - atoi
    - gf_sk_has_nrt_netcap
    - _xml_get_child_text
    - gf_list_get
    - gf_strdup
    - gf_list_new
    - gf_route_service_setup_dash
    - gf_list_pop_back
    - gf_list_add
    - gf_route_create_service
    - gf_crc_32
    - gf_sk_set_usec_wait
    - sscanf
    - _xml_get_child_count
    - GF_LOG
    - gf_xml_dom_parse_string
    - gf_list_clone
    - strstr
    - gf_route_route_session_del
    - gf_xml_dom_get_error
    - gf_list_del_item
    - gf_error_to_string
    - gf_list_enum
    - gf_sk_new_ex
    - gf_list_del
    - _xml_get_child
    - gf_route_lct_removed
    - strcmp
    - isprint
    - gf_route_register_service_sockets
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_route_dmx_process_dvb_mcast_signaling(GF_ROUTEDmx *routedmx,
      GF_ROUTEService *parent_s, GF_LCTObject *object)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1746,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1748,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1750,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1752,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1754,1
    - Dst: gf_route_dmx_process_dvb_flute_signaling
      Src: /src/gpac/src/media_tools/route_dmx.c:1762,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:1765,1
    - Dst: gf_route_dmx_process_dvb_mcast_signaling
      Src: /src/gpac/src/media_tools/route_dmx.c:1770,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/media_tools/route_dmx.c:1779,1
    - Dst: gf_route_service_setup_dash
      Src: /src/gpac/src/media_tools/route_dmx.c:1791,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1799,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1807,1
    - Dst: gf_route_dmx_push_object
      Src: /src/gpac/src/media_tools/route_dmx.c:1816,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 66
    argCount: 3
    argNames:
    - routedmx
    - s
    - obj
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTEService*
    - GF_LCTObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1817
      start: 1740
    functionDepth: 6
    functionLinenumber: 1740
    functionLinenumberEnd: 1817
    functionName: gf_route_dmx_process_object
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_route_service_setup_dash
    - gf_route_obj_to_reservoir
    - gf_route_dmx_process_dvb_flute_signaling
    - GF_LOG
    - gf_route_dmx_push_object
    - strstr
    - gf_route_dmx_process_dvb_mcast_signaling
    - gf_crc_32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_route_dmx_process_object(GF_ROUTEDmx *routedmx, GF_ROUTEService
      *s, GF_LCTObject *obj)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/route_dmx.c:1823,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - GF_ROUTEService*
    - GF_LCTObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1837
      start: 1819
    functionDepth: 0
    functionLinenumber: 1819
    functionLinenumberEnd: 1837
    functionName: gf_route_service_flush_object
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_sys_clock
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_route_service_flush_object(GF_ROUTEService *s, GF_LCTObject
      *obj)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1843,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1846,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/media_tools/route_dmx.c:1869,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1875,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1879,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1883,1
    - Dst: gf_route_service_flush_object
      Src: /src/gpac/src/media_tools/route_dmx.c:1886,1
    - Dst: gf_route_dmx_process_object
      Src: /src/gpac/src/media_tools/route_dmx.c:1888,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:1890,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1892,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 40
    argCount: 6
    argNames:
    - routedmx
    - s
    - tsi
    - toi
    - in_order
    - in_obj
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTEService*
    - u32
    - u32
    - Bool
    - GF_LCTObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1899
      start: 1839
    functionDepth: 7
    functionLinenumber: 1839
    functionLinenumberEnd: 1899
    functionName: gf_route_service_purge_old_objects
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_route_obj_to_reservoir
    - GF_LOG
    - gf_route_service_flush_object
    - gf_list_count
    - gf_sys_clock_high_res
    - gf_route_dmx_process_object
    linkageType: ''
    returnType: void
    signature: void gf_route_service_purge_old_objects(GF_ROUTEDmx *routedmx, GF_ROUTEService
      *s, u32 tsi, u32 toi, Bool in_order, GF_LCTObject *in_obj)
  - BBCount: 73
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1919,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/route_dmx.c:1936,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/route_dmx.c:1937,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1945,1
    - Dst: GF_ROUTEDmx*::on_event
      Src: /src/gpac/src/media_tools/route_dmx.c:1946,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1948,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1954,1
    - Dst: gf_route_service_purge_old_objects
      Src: /src/gpac/src/media_tools/route_dmx.c:1956,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1960,1
    - Dst: gf_route_service_purge_old_objects
      Src: /src/gpac/src/media_tools/route_dmx.c:1962,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1967,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1969,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:1988,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:1989,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:1993,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2006,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2014,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2030,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:2035,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:2037,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2039,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/route_dmx.c:2043,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/media_tools/route_dmx.c:2052,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:2056,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:2057,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:2061,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2066,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:2070,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2079,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2081,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/route_dmx.c:2084,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:2085,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/route_dmx.c:2085,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:2086,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2088,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2092,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:2098,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:2099,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:2103,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2109,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:2115,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:2116,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:2120,1
    - Dst: gf_route_service_flush_object
      Src: /src/gpac/src/media_tools/route_dmx.c:2132,1
    - Dst: gf_route_dmx_process_object
      Src: /src/gpac/src/media_tools/route_dmx.c:2133,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:2136,1
    - Dst: gf_route_service_purge_old_objects
      Src: /src/gpac/src/media_tools/route_dmx.c:2139,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:2147,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:2148,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2152,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/route_dmx.c:2167,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/route_dmx.c:2168,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2176,1
    - Dst: GF_ROUTEDmx*::on_event
      Src: /src/gpac/src/media_tools/route_dmx.c:2177,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2180,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/media_tools/route_dmx.c:2184,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2188,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:2225,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/route_dmx.c:2227,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/route_dmx.c:2235,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/route_dmx.c:2236,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2242,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2250,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/route_dmx.c:2251,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:2265,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:2266,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:2275,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:2276,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:2280,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:2282,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:2283,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/route_dmx.c:2285,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2286,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:2289,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:2290,1
    - Dst: gf_route_dmx_push_object
      Src: /src/gpac/src/media_tools/route_dmx.c:2294,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2308,1
    - Dst: gf_route_service_flush_object
      Src: /src/gpac/src/media_tools/route_dmx.c:2323,1
    CyclomaticComplexity: 125
    EdgeCount: 125
    ICount: 353
    argCount: 14
    argNames:
    - routedmx
    - s
    - tsi
    - toi
    - start_offset
    - data
    - size
    - total_len
    - close_flag
    - in_order
    - rlct
    - gather_obj
    - flute_esi
    - fdt_symbol_length
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTEService*
    - u32
    - u32
    - u32
    - char*
    - u32
    - u32
    - Bool
    - Bool
    - GF_ROUTELCTChannel*
    - GF_LCTObject**
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2324
      start: 1901
    functionDepth: 8
    functionLinenumber: 1901
    functionLinenumberEnd: 2324
    functionName: gf_route_service_gather_object
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_list_find
    - gf_list_count
    - memset
    - gf_route_service_purge_old_objects
    - MAX
    - gf_sys_clock
    - gf_realloc
    - GF_ROUTEDmx*::on_event
    - gf_list_get
    - gf_list_pop_back
    - gf_assert
    - gf_route_obj_to_reservoir
    - memcpy
    - gf_route_service_flush_object
    - gf_list_add
    - gf_route_dmx_process_object
    - gf_mx_p
    - memmove
    - GF_LOG
    - gf_route_dmx_push_object
    - MIN
    - gf_mx_v
    - gf_sys_clock_high_res
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_route_service_gather_object(GF_ROUTEDmx *routedmx, GF_ROUTEService
      *s, u32 tsi, u32 toi, u32 start_offset, char *data, u32 size, u32 total_len,
      Bool close_flag, Bool in_order, GF_ROUTELCTChannel *rlct, GF_LCTObject **gather_obj,
      s32 flute_esi, u32 fdt_symbol_length)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/media_tools/route_dmx.c:2328,1
    - Dst: gf_route_register_service_sockets
      Src: /src/gpac/src/media_tools/route_dmx.c:2334,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/route_dmx.c:2342,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/route_dmx.c:2343,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2365,1
    - Dst: GF_ROUTEDmx*::on_event
      Src: /src/gpac/src/media_tools/route_dmx.c:2366,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2368,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 5
    argNames:
    - routedmx
    - s
    - content
    - content_location
    - file_type
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTEService*
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2371
      start: 2326
    functionDepth: 2
    functionLinenumber: 2326
    functionLinenumberEnd: 2371
    functionName: gf_route_service_setup_dash
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - strlen
    - memset
    - gf_route_register_service_sockets
    - GF_ROUTEDmx*::on_event
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_route_service_setup_dash(GF_ROUTEDmx *routedmx, GF_ROUTEService
      *s, char *content, char *content_location, u32 file_type)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/media_tools/route_dmx.c:2380,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/route_dmx.c:2381,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2383,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/route_dmx.c:2383,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/media_tools/route_dmx.c:2383,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2388,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2393,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2396,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2397,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2399,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:2399,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2402,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2402,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2404,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 26
    argCount: 6
    argNames:
    - routedmx
    - s
    - content
    - content_location
    - stsid_version
    - mpd_version
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTEService*
    - char*
    - char*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2408
      start: 2373
    functionDepth: 1
    functionLinenumber: 2373
    functionLinenumberEnd: 2408
    functionName: gf_route_service_parse_mbms_enveloppe
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_get_root
    - GF_LOG
    - gf_xml_dom_parse_string
    - gf_xml_dom_get_error
    - strcmp
    - atoi
    - gf_error_to_string
    - stricmp
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_route_service_parse_mbms_enveloppe(GF_ROUTEDmx *routedmx,
      GF_ROUTEService *s, char *content, char *content_location, u32 *stsid_version,
      u32 *mpd_version)
  - BBCount: 90
    BranchProfiles: []
    Callsites:
    - Dst: gf_crc_32
      Src: /src/gpac/src/media_tools/route_dmx.c:2421,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/route_dmx.c:2421,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2425,1
    - Dst: gf_list_clone
      Src: /src/gpac/src/media_tools/route_dmx.c:2427,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:2429,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2430,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:2431,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2432,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:2433,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:2433,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/media_tools/route_dmx.c:2441,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/route_dmx.c:2442,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2444,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/route_dmx.c:2444,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/media_tools/route_dmx.c:2444,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2445,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2446,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2450,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2457,1
    - Dst: _xml_get_child_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2458,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2461,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2462,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2463,1
    - Dst: gf_strict_atoui
      Src: /src/gpac/src/media_tools/route_dmx.c:2464,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2465,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2466,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2467,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2470,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2471,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2472,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2480,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:2481,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2483,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:2484,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2488,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:2489,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:2497,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:2498,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2500,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2501,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2502,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:2505,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2508,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:2509,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/media_tools/route_dmx.c:2512,1
    - Dst: gf_sk_has_nrt_netcap
      Src: /src/gpac/src/media_tools/route_dmx.c:2513,1
    - Dst: gf_sk_set_usec_wait
      Src: /src/gpac/src/media_tools/route_dmx.c:2516,1
    - Dst: routedmx_setup_socket
      Src: /src/gpac/src/media_tools/route_dmx.c:2517,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2519,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2520,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:2521,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2522,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2523,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2524,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2525,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/media_tools/route_dmx.c:2528,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/media_tools/route_dmx.c:2531,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2538,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2542,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2546,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2547,1
    - Dst: gf_strict_atoui
      Src: /src/gpac/src/media_tools/route_dmx.c:2548,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2549,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2550,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2551,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2557,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2558,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2559,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2564,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2565,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2569,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2570,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2571,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2577,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2579,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2582,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2583,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2584,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:2589,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2592,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2596,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:2597,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2601,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2604,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2606,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2611,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2612,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:2612,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2613,1
    - Dst: gf_strict_atoui
      Src: /src/gpac/src/media_tools/route_dmx.c:2614,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2618,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:2621,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2625,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2628,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2629,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2635,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2637,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2642,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2643,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2644,1
    - Dst: gf_strict_atoui
      Src: /src/gpac/src/media_tools/route_dmx.c:2645,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2649,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:2652,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2659,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2661,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/route_dmx.c:2662,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2665,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2666,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2673,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:2674,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:2679,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:2682,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2684,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2685,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2686,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:2689,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:2700,1
    - Dst: gf_list_clone
      Src: /src/gpac/src/media_tools/route_dmx.c:2702,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2703,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:2705,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/route_dmx.c:2707,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:2707,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:2708,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2710,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:2711,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2712,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/route_dmx.c:2713,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:2719,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:2721,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2723,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2724,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:2725,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:2727,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2729,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2731,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:2732,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:2734,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2736,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:2737,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:2739,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2744,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2745,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2747,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2749,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2751,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:2754,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:2756,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2760,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2763,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2765,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/route_dmx.c:2767,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/route_dmx.c:2771,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/route_dmx.c:2774,1
    - Dst: gf_mpd_check_print_format
      Src: /src/gpac/src/media_tools/route_dmx.c:2776,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/route_dmx.c:2777,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2779,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/route_dmx.c:2780,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/route_dmx.c:2785,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2796,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2798,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2803,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2804,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:2804,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2805,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:2805,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2806,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:2806,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2807,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2808,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2811,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:2811,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2814,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2819,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2821,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2826,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2830,1
    - Dst: _xml_get_child
      Src: /src/gpac/src/media_tools/route_dmx.c:2831,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:2833,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2835,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:2836,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2844,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:2845,1
    - Dst: gf_route_lct_removed
      Src: /src/gpac/src/media_tools/route_dmx.c:2846,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2848,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2850,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:2851,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:2852,1
    - Dst: gf_route_route_session_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2853,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2855,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2858,1
    CyclomaticComplexity: 147
    EdgeCount: 147
    ICount: 397
    argCount: 4
    argNames:
    - routedmx
    - s
    - content
    - content_location
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTEService*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2862
      start: 2412
    functionDepth: 3
    functionLinenumber: 2412
    functionLinenumberEnd: 2862
    functionName: gf_route_service_setup_stsid
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_free
    - _xml_get_attr
    - gf_xml_dom_get_root
    - GF_SAFEALLOC
    - gf_sk_group_register
    - gf_sk_del
    - gf_sk_set_buffer_size
    - gf_list_count
    - routedmx_setup_socket
    - atoi
    - strchr
    - gf_sk_has_nrt_netcap
    - gf_list_new
    - gf_list_get
    - gf_strdup
    - gf_list_pop_back
    - gf_route_obj_to_reservoir
    - gf_list_add
    - stricmp
    - gf_strict_atoui
    - gf_dynstrcat
    - gf_crc_32
    - gf_sk_set_usec_wait
    - _xml_get_child_count
    - sscanf
    - GF_LOG
    - gf_list_clone
    - gf_xml_dom_parse_string
    - strstr
    - gf_route_route_session_del
    - gf_xml_dom_get_error
    - gf_list_del_item
    - gf_error_to_string
    - gf_list_enum
    - gf_sk_new_ex
    - strlen
    - gf_list_del
    - _xml_get_child
    - gf_route_lct_removed
    - strcmp
    - gf_mpd_check_print_format
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_route_service_setup_stsid(GF_ROUTEDmx *routedmx, GF_ROUTEService
      *s, char *content, char *content_location)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:2876,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/route_dmx.c:2879,1
    - Dst: gf_gz_decompress_payload_ex
      Src: /src/gpac/src/media_tools/route_dmx.c:2881,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2883,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/route_dmx.c:2883,1
    - Dst: isprint
      Src: /src/gpac/src/media_tools/route_dmx.c:2895,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2896,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2900,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2903,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2904,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2906,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2910,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2912,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:2916,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2926,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/route_dmx.c:2928,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2929,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2937,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/route_dmx.c:2939,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/route_dmx.c:2940,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2942,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/route_dmx.c:2943,1
    - Dst: strncpy
      Src: /src/gpac/src/media_tools/route_dmx.c:2944,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2947,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/route_dmx.c:2948,1
    - Dst: strncpy
      Src: /src/gpac/src/media_tools/route_dmx.c:2949,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2954,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2960,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2961,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2965,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2965,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2968,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2970,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2972,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2976,1
    - Dst: gf_route_service_parse_mbms_enveloppe
      Src: /src/gpac/src/media_tools/route_dmx.c:2977,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2980,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/route_dmx.c:2980,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2981,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2984,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2985,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2986,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2987,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2988,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2989,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2990,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2994,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2994,1
    - Dst: gf_route_service_setup_dash
      Src: /src/gpac/src/media_tools/route_dmx.c:2996,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2998,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:3002,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:3002,1
    - Dst: gf_route_service_setup_stsid
      Src: /src/gpac/src/media_tools/route_dmx.c:3005,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:3007,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3011,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3014,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:3021,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/route_dmx.c:3022,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3024,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3030,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:3031,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3034,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 151
    argCount: 6
    argNames:
    - routedmx
    - s
    - object
    - cc
    - stsid_version
    - mpd_version
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTEService*
    - GF_LCTObject*
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3039
      start: 2864
    functionDepth: 4
    functionLinenumber: 2864
    functionLinenumberEnd: 3039
    functionName: gf_route_dmx_process_service_signaling
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - strchr
    - gf_realloc
    - gf_strdup
    - gf_route_service_setup_dash
    - memcpy
    - gf_gz_decompress_payload_ex
    - strncmp
    - GF_LOG
    - strstr
    - MIN
    - strncpy
    - strnicmp
    - gf_error_to_string
    - gf_list_enum
    - strlen
    - gf_route_service_setup_stsid
    - gf_route_service_parse_mbms_enveloppe
    - strcmp
    - isprint
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_route_dmx_process_service_signaling(GF_ROUTEDmx *routedmx,
      GF_ROUTEService *s, GF_LCTObject *object, u8 cc, u32 stsid_version, u32 mpd_version)
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_receive_no_select
      Src: /src/gpac/src/media_tools/route_dmx.c:3056,1
    - Dst: gf_sk_receive_no_select
      Src: /src/gpac/src/media_tools/route_dmx.c:3058,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:3062,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/media_tools/route_dmx.c:3066,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/media_tools/route_dmx.c:3069,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3073,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3074,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3075,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3076,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3077,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3078,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3079,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3080,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3081,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3082,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3083,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3086,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3090,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3094,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3098,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3102,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3106,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3110,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3115,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/route_dmx.c:3119,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/route_dmx.c:3120,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/route_dmx.c:3121,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3140,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3142,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3153,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3165,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3186,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/route_dmx.c:3193,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/route_dmx.c:3194,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/route_dmx.c:3197,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3202,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3203,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3207,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3208,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3212,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3214,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3220,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3223,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3225,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3230,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3234,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/route_dmx.c:3237,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/route_dmx.c:3240,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/route_dmx.c:3246,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3248,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3252,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/route_dmx.c:3255,1
    - Dst: gf_route_service_gather_object
      Src: /src/gpac/src/media_tools/route_dmx.c:3257,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:3262,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:3267,1
    - Dst: gf_route_dmx_process_service_signaling
      Src: /src/gpac/src/media_tools/route_dmx.c:3273,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:3281,1
    - Dst: gf_route_dmx_process_object
      Src: /src/gpac/src/media_tools/route_dmx.c:3284,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 196
    argCount: 3
    argNames:
    - routedmx
    - s
    - route_sess
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTEService*
    - GF_ROUTESession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3289
      start: 3044
    functionDepth: 9
    functionLinenumber: 3044
    functionLinenumberEnd: 3289
    functionName: dmx_process_service_route
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_bs_read_u32
    - gf_route_service_gather_object
    - gf_route_obj_to_reservoir
    - GF_LOG
    - gf_bs_read_long_int
    - gf_bs_get_position
    - gf_sk_receive_no_select
    - gf_bs_read_int
    - gf_route_dmx_process_service_signaling
    - gf_bs_read_u8
    - gf_list_enum
    - gf_bs_reassign_buffer
    - gf_sys_clock_high_res
    - gf_route_dmx_process_object
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dmx_process_service_route(GF_ROUTEDmx *routedmx, GF_ROUTEService
      *s, GF_ROUTESession *route_sess)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_receive_no_select
      Src: /src/gpac/src/media_tools/route_dmx.c:3304,1
    - Dst: gf_sk_receive_no_select
      Src: /src/gpac/src/media_tools/route_dmx.c:3306,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:3310,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/media_tools/route_dmx.c:3314,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/media_tools/route_dmx.c:3317,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3321,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3322,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3323,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3324,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3325,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3326,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3327,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3328,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3329,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3330,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3331,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3334,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3338,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3342,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3346,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3350,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3354,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3358,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/route_dmx.c:3362,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/route_dmx.c:3364,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/route_dmx.c:3365,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/route_dmx.c:3368,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/route_dmx.c:3369,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/route_dmx.c:3375,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/route_dmx.c:3376,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/route_dmx.c:3379,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3384,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3385,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3391,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3392,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3393,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3394,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3399,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3403,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/route_dmx.c:3406,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/route_dmx.c:3409,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/route_dmx.c:3416,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/route_dmx.c:3417,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/route_dmx.c:3418,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3431,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3433,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3435,1
    - Dst: gf_route_service_gather_object
      Src: /src/gpac/src/media_tools/route_dmx.c:3450,1
    - Dst: gf_route_dmx_process_object
      Src: /src/gpac/src/media_tools/route_dmx.c:3455,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 129
    argCount: 3
    argNames:
    - routedmx
    - s
    - route_sess
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTEService*
    - GF_ROUTESession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3459
      start: 3291
    functionDepth: 9
    functionLinenumber: 3291
    functionLinenumberEnd: 3459
    functionName: dmx_process_service_dvb_flute
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_bs_read_u32
    - gf_route_service_gather_object
    - GF_LOG
    - gf_bs_get_position
    - gf_sk_receive_no_select
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_bs_read_u8
    - gf_bs_reassign_buffer
    - gf_sys_clock_high_res
    - gf_list_enum
    - gf_route_dmx_process_object
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dmx_process_service_dvb_flute(GF_ROUTEDmx *routedmx, GF_ROUTEService
      *s, GF_ROUTESession *route_sess)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_receive_no_select
      Src: /src/gpac/src/media_tools/route_dmx.c:3470,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/media_tools/route_dmx.c:3476,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3484,1
    - Dst: gf_gz_decompress_payload_ex
      Src: /src/gpac/src/media_tools/route_dmx.c:3510,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3512,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/route_dmx.c:3512,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3518,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/media_tools/route_dmx.c:3521,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3523,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/route_dmx.c:3523,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/media_tools/route_dmx.c:3523,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/route_dmx.c:3527,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3529,1
    - Dst: gf_route_dmx_process_slt
      Src: /src/gpac/src/media_tools/route_dmx.c:3535,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 71
    argCount: 1
    argNames:
    - routedmx
    argTypes:
    - GF_ROUTEDmx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3543
      start: 3461
    functionDepth: 6
    functionLinenumber: 3461
    functionLinenumberEnd: 3543
    functionName: gf_route_dmx_process_lls
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_route_dmx_process_slt
    - gf_xml_dom_get_root
    - GF_LOG
    - gf_gz_decompress_payload_ex
    - gf_xml_dom_parse_string
    - gf_xml_dom_get_error
    - gf_sk_receive_no_select
    - gf_error_to_string
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_route_dmx_process_lls(GF_ROUTEDmx *routedmx)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_group_select
      Src: /src/gpac/src/media_tools/route_dmx.c:3552,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:3556,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:3558,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3562,1
    - Dst: gf_route_dmx_process_object
      Src: /src/gpac/src/media_tools/route_dmx.c:3565,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/media_tools/route_dmx.c:3577,1
    - Dst: gf_route_dmx_process_lls
      Src: /src/gpac/src/media_tools/route_dmx.c:3578,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:3583,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:3587,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:3590,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/media_tools/route_dmx.c:3598,1
    - Dst: GF_ROUTEService*::process_service
      Src: /src/gpac/src/media_tools/route_dmx.c:3599,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3612,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/media_tools/route_dmx.c:3613,1
    - Dst: GF_ROUTEService*::process_service
      Src: /src/gpac/src/media_tools/route_dmx.c:3614,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 67
    argCount: 1
    argNames:
    - routedmx
    argTypes:
    - GF_ROUTEDmx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3629
      start: 3545
    functionDepth: 7
    functionLinenumber: 3545
    functionLinenumberEnd: 3629
    functionName: gf_route_dmx_process
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_sk_group_select
    - gf_list_count
    - gf_route_dmx_process_lls
    - GF_ROUTEService*::process_service
    - gf_sk_group_sock_is_set
    - gf_list_enum
    - gf_route_dmx_process_object
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_dmx_process(GF_ROUTEDmx *routedmx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:3633,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:3635,1
    - Dst: gf_route_service_purge_old_objects
      Src: /src/gpac/src/media_tools/route_dmx.c:3638,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - routedmx
    argTypes:
    - GF_ROUTEDmx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3640
      start: 3631
    functionDepth: 8
    functionLinenumber: 3631
    functionLinenumberEnd: 3640
    functionName: gf_route_dmx_check_timeouts
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_route_service_purge_old_objects
    linkageType: ''
    returnType: void
    signature: void gf_route_dmx_check_timeouts(GF_ROUTEDmx *routedmx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - routedmx
    argTypes:
    - GF_ROUTEDmx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3645
      start: 3642
    functionDepth: 0
    functionLinenumber: 3642
    functionLinenumberEnd: 3645
    functionName: gf_route_dmx_has_active_multicast
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_route_dmx_has_active_multicast(GF_ROUTEDmx *routedmx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3652,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - routedmx
    - service_id
    argTypes:
    - GF_ROUTEDmx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3657
      start: 3647
    functionDepth: 1
    functionLinenumber: 3647
    functionLinenumberEnd: 3657
    functionName: gf_route_dmx_find_atsc3_service
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_dmx_find_atsc3_service(GF_ROUTEDmx *routedmx, u32
      service_id)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3665,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:3667,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - routedmx
    - service_id
    argTypes:
    - GF_ROUTEDmx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3672
      start: 3660
    functionDepth: 1
    functionLinenumber: 3660
    functionLinenumberEnd: 3672
    functionName: gf_route_dmx_get_object_count
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_dmx_get_object_count(GF_ROUTEDmx *routedmx, u32
      service_id)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3680,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3686,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/route_dmx.c:3687,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - routedmx
    - service_id
    argTypes:
    - GF_ROUTEDmx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3689
      start: 3675
    functionDepth: 1
    functionLinenumber: 3675
    functionLinenumberEnd: 3689
    functionName: gf_route_dmx_print_objects
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - fprintf
    linkageType: ''
    returnType: void
    signature: void gf_route_dmx_print_objects(GF_ROUTEDmx *routedmx, u32 service_id)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3698,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3706,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/route_dmx.c:3708,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:3730,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3733,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:3752,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:3759,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:3766,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:3771,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:3771,1
    - Dst: gf_route_dmx_keep_or_remove_object_by_name
      Src: /src/gpac/src/media_tools/route_dmx.c:3778,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3785,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 81
    argCount: 6
    argNames:
    - routedmx
    - service_id
    - fileName
    - purge_previous
    - is_remove
    - locate_only
    argTypes:
    - GF_ROUTEDmx*
    - u32
    - char*
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3790
      start: 3693
    functionDepth: 2
    functionLinenumber: 3693
    functionLinenumberEnd: 3790
    functionName: gf_route_dmx_keep_or_remove_object_by_name
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 1
    functionsReached:
    - gf_route_dmx_keep_or_remove_object_by_name
    - gf_route_obj_to_reservoir
    - sscanf
    - GF_LOG
    - strstr
    - strcmp
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_route_dmx_keep_or_remove_object_by_name(GF_ROUTEDmx *routedmx,
      u32 service_id, char *fileName, Bool purge_previous, Bool is_remove, Bool locate_only)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_route_dmx_keep_or_remove_object_by_name
      Src: /src/gpac/src/media_tools/route_dmx.c:3795,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - routedmx
    - service_id
    - fileName
    argTypes:
    - GF_ROUTEDmx*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3796
      start: 3792
    functionDepth: 3
    functionLinenumber: 3792
    functionLinenumberEnd: 3796
    functionName: gf_route_dmx_force_keep_object_by_name
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_route_dmx_keep_or_remove_object_by_name
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_dmx_force_keep_object_by_name(GF_ROUTEDmx *routedmx,
      u32 service_id, char *fileName)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_route_dmx_keep_or_remove_object_by_name
      Src: /src/gpac/src/media_tools/route_dmx.c:3801,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - routedmx
    - service_id
    - fileName
    - purge_previous
    argTypes:
    - GF_ROUTEDmx*
    - u32
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3802
      start: 3798
    functionDepth: 3
    functionLinenumber: 3798
    functionLinenumberEnd: 3802
    functionName: gf_route_dmx_remove_object_by_name
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_route_dmx_keep_or_remove_object_by_name
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_dmx_remove_object_by_name(GF_ROUTEDmx *routedmx,
      u32 service_id, char *fileName, Bool purge_previous)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3811,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3817,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 21
    argCount: 5
    argNames:
    - routedmx
    - service_id
    - tsi
    - toi
    - force_keep
    argTypes:
    - GF_ROUTEDmx*
    - u32
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3826
      start: 3804
    functionDepth: 1
    functionLinenumber: 3804
    functionLinenumberEnd: 3826
    functionName: gf_route_dmx_force_keep_object
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_dmx_force_keep_object(GF_ROUTEDmx *routedmx, u32
      service_id, u32 tsi, u32 toi, Bool force_keep)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3835,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3842,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:3854,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 22
    argCount: 2
    argNames:
    - routedmx
    - service_id
    argTypes:
    - GF_ROUTEDmx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3858
      start: 3829
    functionDepth: 2
    functionLinenumber: 3829
    functionLinenumberEnd: 3858
    functionName: gf_route_dmx_remove_first_object
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_route_obj_to_reservoir
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_dmx_remove_first_object(GF_ROUTEDmx *routedmx, u32
      service_id)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3866,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3873,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:3883,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 20
    argCount: 2
    argNames:
    - routedmx
    - service_id
    argTypes:
    - GF_ROUTEDmx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3885
      start: 3860
    functionDepth: 2
    functionLinenumber: 3860
    functionLinenumberEnd: 3885
    functionName: gf_route_dmx_purge_objects
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_route_obj_to_reservoir
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_dmx_purge_objects(GF_ROUTEDmx *routedmx, u32 service_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3892,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - routedmx
    - service_id
    - udta
    argTypes:
    - GF_ROUTEDmx*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3898
      start: 3887
    functionDepth: 1
    functionLinenumber: 3887
    functionLinenumberEnd: 3898
    functionName: gf_route_dmx_set_service_udta
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_dmx_set_service_udta(GF_ROUTEDmx *routedmx, u32
      service_id, void *udta)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3905,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - routedmx
    - service_id
    argTypes:
    - GF_ROUTEDmx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3911
      start: 3900
    functionDepth: 1
    functionLinenumber: 3900
    functionLinenumberEnd: 3911
    functionName: gf_route_dmx_get_service_udta
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_route_dmx_get_service_udta(GF_ROUTEDmx *routedmx, u32
      service_id)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - routedmx
    argTypes:
    - GF_ROUTEDmx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3917
      start: 3913
    functionDepth: 0
    functionLinenumber: 3913
    functionLinenumberEnd: 3917
    functionName: gf_route_dmx_get_first_packet_time
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_dmx_get_first_packet_time(GF_ROUTEDmx *routedmx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - routedmx
    argTypes:
    - GF_ROUTEDmx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3923
      start: 3919
    functionDepth: 0
    functionLinenumber: 3919
    functionLinenumberEnd: 3923
    functionName: gf_route_dmx_get_last_packet_time
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_dmx_get_last_packet_time(GF_ROUTEDmx *routedmx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - routedmx
    argTypes:
    - GF_ROUTEDmx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3929
      start: 3925
    functionDepth: 0
    functionLinenumber: 3925
    functionLinenumberEnd: 3929
    functionName: gf_route_dmx_get_nb_packets
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_dmx_get_nb_packets(GF_ROUTEDmx *routedmx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - routedmx
    argTypes:
    - GF_ROUTEDmx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3935
      start: 3931
    functionDepth: 0
    functionLinenumber: 3931
    functionLinenumberEnd: 3935
    functionName: gf_route_dmx_get_recv_bytes
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_dmx_get_recv_bytes(GF_ROUTEDmx *routedmx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - routedmx
    - tsi
    argTypes:
    - GF_ROUTEDmx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3941
      start: 3937
    functionDepth: 0
    functionLinenumber: 3937
    functionLinenumberEnd: 3941
    functionName: gf_route_dmx_debug_tsi
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_dmx_debug_tsi(GF_ROUTEDmx *routedmx, u32 tsi)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3951,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3958,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:3964,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:3971,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:3996,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:4000,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/route_dmx.c:4004,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:4015,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:4019,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/route_dmx.c:4038,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:4051,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 98
    argCount: 5
    argNames:
    - routedmx
    - service_id
    - finfo
    - br_start
    - br_end
    argTypes:
    - GF_ROUTEDmx*
    - u32
    - GF_ROUTEEventFileInfo*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4053
      start: 3943
    functionDepth: 1
    functionLinenumber: 3943
    functionLinenumberEnd: 4053
    functionName: gf_route_dmx_patch_frag_info
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - memmove
    - gf_mx_v
    - gf_list_enum
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_dmx_patch_frag_info(GF_ROUTEDmx *routedmx, u32 service_id,
      GF_ROUTEEventFileInfo *finfo, u32 br_start, u32 br_end)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:4061,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:4068,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:4074,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:4078,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:4084,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/route_dmx.c:4090,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:4101,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:4105,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:4110,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/route_dmx.c:4112,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:4114,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:4124,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 59
    argCount: 5
    argNames:
    - routedmx
    - service_id
    - finfo
    - br_start
    - br_size
    argTypes:
    - GF_ROUTEDmx*
    - u32
    - GF_ROUTEEventFileInfo*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4126
      start: 4055
    functionDepth: 1
    functionLinenumber: 4055
    functionLinenumberEnd: 4126
    functionName: gf_route_dmx_add_frag_hole
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_assert
    - memmove
    - gf_mx_v
    - gf_list_enum
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_route_dmx_add_frag_hole(GF_ROUTEDmx *routedmx, u32 service_id,
      GF_ROUTEEventFileInfo *finfo, u32 br_start, u32 br_size)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:4134,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:4140,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:4147,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:4149,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:4156,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:4159,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:4169,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 39
    argCount: 4
    argNames:
    - routedmx
    - service_id
    - finfo
    - new_size
    argTypes:
    - GF_ROUTEDmx*
    - u32
    - GF_ROUTEEventFileInfo*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4171
      start: 4127
    functionDepth: 1
    functionLinenumber: 4127
    functionLinenumberEnd: 4171
    functionName: gf_route_dmx_patch_blob_size
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_enum
    - gf_mx_v
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_dmx_patch_blob_size(GF_ROUTEDmx *routedmx, u32 service_id,
      GF_ROUTEEventFileInfo *finfo, u32 new_size)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:4180,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:4186,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 22
    argCount: 5
    argNames:
    - routedmx
    - service_id
    - tsi
    - toi
    - hint
    argTypes:
    - GF_ROUTEDmx*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4194
      start: 4173
    functionDepth: 1
    functionLinenumber: 4173
    functionLinenumberEnd: 4194
    functionName: gf_route_dmx_set_object_hint
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_dmx_set_object_hint(GF_ROUTEDmx *routedmx, u32 service_id,
      u32 tsi, u32 toi, u32 hint)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:4201,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:4209,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:4211,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:4212,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:4214,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:4216,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:4221,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/media_tools/route_dmx.c:4232,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:4235,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/media_tools/route_dmx.c:4251,1
    - Dst: gf_sk_set_usec_wait
      Src: /src/gpac/src/media_tools/route_dmx.c:4253,1
    - Dst: gf_sk_setup_multicast
      Src: /src/gpac/src/media_tools/route_dmx.c:4256,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:4258,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/media_tools/route_dmx.c:4261,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/media_tools/route_dmx.c:4262,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/media_tools/route_dmx.c:4280,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/media_tools/route_dmx.c:4281,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 67
    argCount: 6
    argNames:
    - routedmx
    - service_id
    - period_id
    - as_id
    - rep_id
    - is_selected
    argTypes:
    - GF_ROUTEDmx*
    - u32
    - char*
    - s32
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4288
      start: 4196
    functionDepth: 1
    functionLinenumber: 4196
    functionLinenumberEnd: 4288
    functionName: gf_route_dmx_mark_active_quality
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_sk_set_usec_wait
    - gf_list_get
    - gf_sk_group_register
    - GF_LOG
    - gf_sk_group_unregister
    - gf_sk_del
    - gf_sk_is_multicast_address
    - gf_sk_set_buffer_size
    - gf_list_count
    - gf_sk_setup_multicast
    - strcmp
    - gf_list_enum
    - gf_sk_new_ex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_route_dmx_mark_active_quality(GF_ROUTEDmx *routedmx, u32
      service_id, const char *period_id, s32 as_id, const char *rep_id, Bool is_selected)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:4293,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:4295,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:4299,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:4301,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - routedmx
    argTypes:
    - GF_ROUTEDmx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4304
      start: 4290
    functionDepth: 2
    functionLinenumber: 4290
    functionLinenumberEnd: 4304
    functionName: gf_route_dmx_reset_all
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_route_obj_to_reservoir
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void gf_route_dmx_reset_all(GF_ROUTEDmx *routedmx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:4311,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:4313,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 17
    argCount: 4
    argNames:
    - routedmx
    - service_id
    - base_uri
    - repair_server
    argTypes:
    - GF_ROUTEDmx*
    - u32
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4321
      start: 4306
    functionDepth: 1
    functionLinenumber: 4306
    functionLinenumberEnd: 4321
    functionName: gf_route_dmx_get_repair_info
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void gf_route_dmx_get_repair_info(GF_ROUTEDmx *routedmx, u32 service_id,
      const char **base_uri, const char **repair_server)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/route_dmx.c:4329,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - lct_obj
    - finfo
    argTypes:
    - struct __gf_lct_object*
    - GF_ROUTEEventFileInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4335
      start: 4323
    functionDepth: 0
    functionLinenumber: 4323
    functionLinenumberEnd: 4335
    functionName: gf_route_dmx_get_object_info
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: Bool
    signature: Bool gf_route_dmx_get_object_info(struct __gf_lct_object *lct_obj,
      GF_ROUTEEventFileInfo *finfo)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_hinter.c:49,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/src/media_tools/isom_hinter.c:54,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:76,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/isom_hinter.c:81,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/media_tools/isom_hinter.c:82,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 8
    argNames:
    - file
    - Track
    - avgSize
    - MaxSize
    - TimeDelta
    - maxCTSDelta
    - const_duration
    - bandwidth
    argTypes:
    - GF_ISOFile*
    - u32
    - u32*
    - u32*
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 35
    functionDepth: 5
    functionLinenumber: 35
    functionLinenumberEnd: 88
    functionName: gf_media_get_sample_average_infos
    functionSourceFile: /src/gpac/src/media_tools/isom_hinter.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_del
    - gf_isom_get_sample_count
    - gf_isom_get_media_duration
    - gf_isom_get_media_timescale
    - gf_isom_get_sample_info
    linkageType: ''
    returnType: void
    signature: void gf_media_get_sample_average_infos(GF_ISOFile *file, u32 Track,
      u32 *avgSize, u32 *MaxSize, u32 *TimeDelta, u32 *maxCTSDelta, u32 *const_duration,
      u32 *bandwidth)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_hinter.c:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - slc
    argTypes:
    - GF_SLConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 136
    functionName: InitSL_RTP
    functionSourceFile: /src/gpac/src/media_tools/isom_hinter.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: void InitSL_RTP(GF_SLConfig *slc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_hinter.c:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - slc
    argTypes:
    - GF_SLConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 143
    functionName: InitSL_NULL
    functionSourceFile: /src/gpac/src/media_tools/isom_hinter.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: void InitSL_NULL(GF_SLConfig *slc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/isom_hinter.c:152,1
    - Dst: gf_isom_rtp_packet_set_flags
      Src: /src/gpac/src/media_tools/isom_hinter.c:163,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - cbk
    - header
    argTypes:
    - void*
    - GF_RTPHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 147
    functionDepth: 4
    functionLinenumber: 147
    functionLinenumberEnd: 164
    functionName: MP4T_OnPacketDone
    functionSourceFile: /src/gpac/src/media_tools/isom_hinter.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_isom_rtp_packet_set_flags
    linkageType: ''
    returnType: void
    signature: void MP4T_OnPacketDone(void *cbk, GF_RTPHeader *header)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_hint_sample_data
      Src: /src/gpac/src/media_tools/isom_hinter.c:173,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - cbk
    - payload_size
    - offset_from_orig
    argTypes:
    - void*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 167
    functionDepth: 3
    functionLinenumber: 167
    functionLinenumberEnd: 176
    functionName: MP4T_OnDataRef
    functionSourceFile: /src/gpac/src/media_tools/isom_hinter.c
    functionUses: 0
    functionsReached:
    - gf_isom_hint_sample_data
    linkageType: ''
    returnType: void
    signature: void MP4T_OnDataRef(void *cbk, u32 payload_size, u32 offset_from_orig)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_hint_direct_data
      Src: /src/gpac/src/media_tools/isom_hinter.c:186,1
    - Dst: gf_isom_hint_sample_data
      Src: /src/gpac/src/media_tools/isom_hinter.c:188,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - cbk
    - data
    - data_size
    - is_header
    argTypes:
    - void*
    - u8*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 178
    functionDepth: 3
    functionLinenumber: 178
    functionLinenumberEnd: 190
    functionName: MP4T_OnData
    functionSourceFile: /src/gpac/src/media_tools/isom_hinter.c
    functionUses: 0
    functionsReached:
    - gf_isom_hint_sample_data
    - gf_isom_hint_direct_data
    linkageType: ''
    returnType: void
    signature: void MP4T_OnData(void *cbk, u8 *data, u32 data_size, Bool is_header)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/isom_hinter.c:200,1
    - Dst: gf_isom_end_hint_sample
      Src: /src/gpac/src/media_tools/isom_hinter.c:204,1
    - Dst: gf_isom_begin_hint_sample
      Src: /src/gpac/src/media_tools/isom_hinter.c:208,1
    - Dst: gf_isom_rtp_packet_begin
      Src: /src/gpac/src/media_tools/isom_hinter.c:215,1
    - Dst: gf_isom_rtp_packet_set_offset
      Src: /src/gpac/src/media_tools/isom_hinter.c:217,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 2
    argNames:
    - cbk
    - header
    argTypes:
    - void*
    - GF_RTPHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 193
    functionDepth: 8
    functionLinenumber: 193
    functionLinenumberEnd: 218
    functionName: MP4T_OnNewPacket
    functionSourceFile: /src/gpac/src/media_tools/isom_hinter.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_isom_rtp_packet_set_offset
    - gf_isom_end_hint_sample
    - gf_isom_rtp_packet_begin
    - gf_isom_begin_hint_sample
    linkageType: ''
    returnType: void
    signature: void MP4T_OnNewPacket(void *cbk, GF_RTPHeader *header)
  - BBCount: 93
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_hinter.c:238,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_hinter.c:240,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/src/media_tools/isom_hinter.c:245,1
    - Dst: gf_isom_get_edit
      Src: /src/gpac/src/media_tools/isom_hinter.c:249,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_hinter.c:251,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/media_tools/isom_hinter.c:255,1
    - Dst: gf_isom_is_track_enabled
      Src: /src/gpac/src/media_tools/isom_hinter.c:257,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/isom_hinter.c:274,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/src/media_tools/isom_hinter.c:287,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/isom_hinter.c:289,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/isom_hinter.c:294,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/media_tools/isom_hinter.c:308,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_hinter.c:341,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_hinter.c:344,1
    - Dst: gf_mp3_num_channels
      Src: /src/gpac/src/media_tools/isom_hinter.c:345,1
    - Dst: gf_isom_get_audio_info
      Src: /src/gpac/src/media_tools/isom_hinter.c:354,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:358,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/media_tools/isom_hinter.c:380,1
    - Dst: gf_isom_has_sync_shadows
      Src: /src/gpac/src/media_tools/isom_hinter.c:404,1
    - Dst: gf_isom_has_sample_dependency
      Src: /src/gpac/src/media_tools/isom_hinter.c:404,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:409,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/src/media_tools/isom_hinter.c:441,1
    - Dst: gf_isom_svc_config_get
      Src: /src/gpac/src/media_tools/isom_hinter.c:442,1
    - Dst: gf_isom_mvc_config_get
      Src: /src/gpac/src/media_tools/isom_hinter.c:443,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:460,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:461,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:462,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/src/media_tools/isom_hinter.c:470,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:482,1
    - Dst: gf_isom_vvc_config_get
      Src: /src/gpac/src/media_tools/isom_hinter.c:490,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:502,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_hinter.c:528,1
    - Dst: gf_isom_get_audio_info
      Src: /src/gpac/src/media_tools/isom_hinter.c:534,1
    - Dst: gf_isom_get_audio_info
      Src: /src/gpac/src/media_tools/isom_hinter.c:539,1
    - Dst: gf_isom_get_audio_info
      Src: /src/gpac/src/media_tools/isom_hinter.c:544,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_hinter.c:548,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_hinter.c:550,1
    - Dst: gf_mp3_num_channels
      Src: /src/gpac/src/media_tools/isom_hinter.c:551,1
    - Dst: gf_isom_get_audio_info
      Src: /src/gpac/src/media_tools/isom_hinter.c:554,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:562,1
    - Dst: gf_isom_get_data_reference
      Src: /src/gpac/src/media_tools/isom_hinter.c:575,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/isom_hinter.c:579,1
    - Dst: gf_isom_has_time_offset
      Src: /src/gpac/src/media_tools/isom_hinter.c:598,1
    - Dst: gf_media_get_sample_average_infos
      Src: /src/gpac/src/media_tools/isom_hinter.c:601,1
    - Dst: InitSL_RTP
      Src: /src/gpac/src/media_tools/isom_hinter.c:616,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/isom_hinter.c:618,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/media_tools/isom_hinter.c:629,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_hinter.c:629,1
    - Dst: gf_isom_has_sync_points
      Src: /src/gpac/src/media_tools/isom_hinter.c:634,1
    - Dst: gf_isom_get_ismacryp_info
      Src: /src/gpac/src/media_tools/isom_hinter.c:643,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/isom_hinter.c:648,1
    - Dst: gf_rtp_builder_new
      Src: /src/gpac/src/media_tools/isom_hinter.c:649,1
    - Dst: gf_rtp_builder_init
      Src: /src/gpac/src/media_tools/isom_hinter.c:656,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_hinter.c:664,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/media_tools/isom_hinter.c:666,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/src/media_tools/isom_hinter.c:668,1
    - Dst: gf_isom_setup_hint_track
      Src: /src/gpac/src/media_tools/isom_hinter.c:669,1
    - Dst: gf_isom_new_hint_description
      Src: /src/gpac/src/media_tools/isom_hinter.c:671,1
    - Dst: gf_isom_rtp_set_timescale
      Src: /src/gpac/src/media_tools/isom_hinter.c:672,1
    - Dst: gf_isom_set_extraction_slc
      Src: /src/gpac/src/media_tools/isom_hinter.c:677,1
    - Dst: gf_hinter_track_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:679,1
    - Dst: gf_isom_set_track_interleaving_group
      Src: /src/gpac/src/media_tools/isom_hinter.c:686,1
    - Dst: gf_isom_set_track_interleaving_group
      Src: /src/gpac/src/media_tools/isom_hinter.c:689,1
    - Dst: gf_isom_set_track_interleaving_group
      Src: /src/gpac/src/media_tools/isom_hinter.c:691,1
    - Dst: gf_isom_set_track_priority_in_group
      Src: /src/gpac/src/media_tools/isom_hinter.c:695,1
    - Dst: gf_isom_set_track_priority_in_group
      Src: /src/gpac/src/media_tools/isom_hinter.c:696,1
    CyclomaticComplexity: 106
    EdgeCount: 106
    ICount: 371
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 700
      start: 221
    functionDepth: 8
    functionLinenumber: 221
    functionLinenumberEnd: 700
    functionName: "GF_RTPHinter *gf_hinter_track_new(GF_ISOFile *file, u32 TrackNum,\n
      \                                 u32 Path_MTU, u32 max_ptime, u32 default_rtp_rate,
      u32 flags, u8 PayloadID,\n                                  Bool copy_media,
      u32 InterleaveGroupID, u8 InterleaveGroupPriority, GF_Err *e)"
    functionSourceFile: /src/gpac/src/media_tools/isom_hinter.c
    functionUses: 0
    functionsReached:
    - gf_odf_vvc_cfg_del
    - gf_odf_avc_cfg_del
    - gf_odf_desc_del
    - GF_SAFEALLOC
    - gf_isom_get_sample_count
    - gf_isom_vvc_config_get
    - gf_isom_rtp_set_timescale
    - gf_isom_get_track_id
    - gf_isom_get_track_by_id
    - gf_isom_mvc_config_get
    - gf_isom_hevc_config_get
    - gf_isom_svc_config_get
    - gf_hinter_track_del
    - gf_isom_sample_del
    - gf_rtp_builder_init
    - gf_isom_get_media_subtype
    - gf_isom_get_data_reference
    - gf_isom_get_audio_info
    - gf_m4v_get_config
    - gf_isom_get_media_type
    - gf_isom_setup_hint_track
    - gf_isom_get_sample
    - gf_isom_has_sync_points
    - gf_get_bit_size
    - gf_m4a_get_config
    - GF_LOG
    - gf_isom_remove_edits
    - gf_isom_get_esd
    - gf_isom_new_track
    - gf_isom_get_ismacryp_info
    - gf_isom_get_edits_count
    - gf_isom_has_time_offset
    - gf_isom_set_extraction_slc
    - gf_mp3_num_channels
    - gf_odf_hevc_cfg_del
    - gf_media_get_sample_average_infos
    - gf_isom_has_sync_shadows
    - gf_isom_has_sample_dependency
    - gf_isom_set_track_interleaving_group
    - gf_isom_avc_config_get
    - gf_isom_is_track_enabled
    - InitSL_RTP
    - gf_isom_set_track_priority_in_group
    - gf_rtp_builder_new
    - gf_isom_get_media_timescale
    - gf_isom_new_hint_description
    - gf_isom_get_edit
    - GF_4CC
    - gf_isom_get_sample_description_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT GF_RTPHinter *gf_hinter_track_new(GF_ISOFile *file, u32
      TrackNum,\n                                  u32 Path_MTU, u32 max_ptime, u32
      default_rtp_rate, u32 flags, u8 PayloadID,\n                                  Bool
      copy_media, u32 InterleaveGroupID, u8 InterleaveGroupPriority, GF_Err *e)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_rtp_set_time_offset
      Src: /src/gpac/src/media_tools/isom_hinter.c:707,1
    - Dst: gf_isom_rtp_set_time_sequence_offset
      Src: /src/gpac/src/media_tools/isom_hinter.c:709,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - tkHinter
    argTypes:
    - GF_RTPHinter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 710
      start: 702
    functionDepth: 6
    functionLinenumber: 702
    functionLinenumberEnd: 710
    functionName: gf_hinter_track_force_no_offsets
    functionSourceFile: /src/gpac/src/media_tools/isom_hinter.c
    functionUses: 1
    functionsReached:
    - gf_isom_rtp_set_time_offset
    - gf_isom_rtp_set_time_sequence_offset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hinter_track_force_no_offsets(GF_RTPHinter *tkHinter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - tkHinter
    argTypes:
    - GF_RTPHinter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 716
      start: 712
    functionDepth: 0
    functionLinenumber: 712
    functionLinenumberEnd: 716
    functionName: gf_hinter_track_get_bandwidth
    functionSourceFile: /src/gpac/src/media_tools/isom_hinter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hinter_track_get_bandwidth(GF_RTPHinter *tkHinter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - tkHinter
    argTypes:
    - GF_RTPHinter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 718
    functionDepth: 0
    functionLinenumber: 718
    functionLinenumberEnd: 722
    functionName: gf_hinter_track_get_flags
    functionSourceFile: /src/gpac/src/media_tools/isom_hinter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hinter_track_get_flags(GF_RTPHinter *tkHinter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_builder_get_payload_name
      Src: /src/gpac/src/media_tools/isom_hinter.c:727,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - tkHinter
    - payloadName
    argTypes:
    - GF_RTPHinter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 723
    functionDepth: 1
    functionLinenumber: 723
    functionLinenumberEnd: 728
    functionName: gf_hinter_track_get_payload_name
    functionSourceFile: /src/gpac/src/media_tools/isom_hinter.c
    functionUses: 1
    functionsReached:
    - gf_rtp_builder_get_payload_name
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hinter_track_get_payload_name(GF_RTPHinter *tkHinter,
      char *payloadName)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_builder_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:735,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_hinter.c:736,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - tkHinter
    argTypes:
    - GF_RTPHinter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 737
      start: 730
    functionDepth: 2
    functionLinenumber: 730
    functionLinenumberEnd: 737
    functionName: gf_hinter_track_del
    functionSourceFile: /src/gpac/src/media_tools/isom_hinter.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_rtp_builder_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hinter_track_del(GF_RTPHinter *tkHinter)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_hinter.c:751,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_hinter.c:757,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/isom_hinter.c:758,1
    - Dst: gf_isom_get_ismacryp_sample
      Src: /src/gpac/src/media_tools/isom_hinter.c:780,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_hinter.c:784,1
    - Dst: gf_rtp_builder_set_cryp_info
      Src: /src/gpac/src/media_tools/isom_hinter.c:787,1
    - Dst: gf_isom_ismacryp_delete_sample
      Src: /src/gpac/src/media_tools/isom_hinter.c:790,1
    - Dst: gf_isom_get_sample_padding_bits
      Src: /src/gpac/src/media_tools/isom_hinter.c:794,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/src/media_tools/isom_hinter.c:800,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_hinter.c:815,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_hinter.c:827,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_hinter.c:833,1
    - Dst: gf_rtp_builder_process
      Src: /src/gpac/src/media_tools/isom_hinter.c:835,1
    - Dst: gf_rtp_builder_process
      Src: /src/gpac/src/media_tools/isom_hinter.c:841,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/media_tools/isom_hinter.c:846,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:849,1
    - Dst: gf_rtp_builder_process
      Src: /src/gpac/src/media_tools/isom_hinter.c:855,1
    - Dst: gf_isom_end_hint_sample
      Src: /src/gpac/src/media_tools/isom_hinter.c:857,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 87
    argCount: 1
    argNames:
    - tkHint
    argTypes:
    - GF_RTPHinter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 859
      start: 739
    functionDepth: 8
    functionLinenumber: 739
    functionLinenumberEnd: 859
    functionName: gf_hinter_track_process
    functionSourceFile: /src/gpac/src/media_tools/isom_hinter.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_isom_last_error
    - gf_isom_get_sample_duration
    - gf_set_progress
    - gf_isom_get_sample_padding_bits
    - GF_LOG
    - gf_rtp_builder_process
    - gf_isom_get_sample_count
    - gf_isom_get_ismacryp_sample
    - gf_isom_sample_del
    - gf_rtp_builder_set_cryp_info
    - gf_isom_end_hint_sample
    - gf_isom_ismacryp_delete_sample
    - gf_isom_get_sample
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hinter_track_process(GF_RTPHinter *tkHint)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_hinter.c:866,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_hinter.c:868,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/media_tools/isom_hinter.c:869,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:871,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:872,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - sdpLine
    - nalus
    argTypes:
    - char**
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 875
      start: 861
    functionDepth: 1
    functionLinenumber: 861
    functionLinenumberEnd: 875
    functionName: write_nalu_config_array
    functionSourceFile: /src/gpac/src/media_tools/isom_hinter.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_dynstrcat
    - gf_base64_encode
    linkageType: ''
    returnType: u32
    signature: u32 write_nalu_config_array(char **sdpLine, GF_List *nalus)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_hinter.c:881,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_hinter.c:881,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_hinter.c:881,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_hinter.c:882,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_hinter.c:882,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:885,1
    - Dst: write_nalu_config_array
      Src: /src/gpac/src/media_tools/isom_hinter.c:888,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:889,1
    - Dst: write_nalu_config_array
      Src: /src/gpac/src/media_tools/isom_hinter.c:890,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:891,1
    - Dst: write_nalu_config_array
      Src: /src/gpac/src/media_tools/isom_hinter.c:892,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:893,1
    - Dst: write_nalu_config_array
      Src: /src/gpac/src/media_tools/isom_hinter.c:897,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:898,1
    - Dst: write_nalu_config_array
      Src: /src/gpac/src/media_tools/isom_hinter.c:899,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:900,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/isom_hinter.c:902,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 3
    argNames:
    - sdpLine
    - avcc
    - svcc
    argTypes:
    - char**
    - GF_AVCConfig*
    - GF_AVCConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 905
      start: 877
    functionDepth: 2
    functionLinenumber: 877
    functionLinenumberEnd: 905
    functionName: write_avc_config
    functionSourceFile: /src/gpac/src/media_tools/isom_hinter.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - write_nalu_config_array
    - strlen
    - gf_dynstrcat
    linkageType: ''
    returnType: void
    signature: void write_avc_config(char **sdpLine, GF_AVCConfig *avcc, GF_AVCConfig
      *svcc)
  - BBCount: 48
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sdp_clean_track
      Src: /src/gpac/src/media_tools/isom_hinter.c:918,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/isom_hinter.c:919,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/media_tools/isom_hinter.c:920,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/media_tools/isom_hinter.c:921,1
    - Dst: gf_rtp_builder_get_payload_name
      Src: /src/gpac/src/media_tools/isom_hinter.c:923,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:926,1
    - Dst: gf_isom_sdp_add_track_line
      Src: /src/gpac/src/media_tools/isom_hinter.c:927,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:929,1
    - Dst: gf_isom_sdp_add_track_line
      Src: /src/gpac/src/media_tools/isom_hinter.c:930,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:933,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:935,1
    - Dst: gf_isom_sdp_add_track_line
      Src: /src/gpac/src/media_tools/isom_hinter.c:937,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:940,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_hinter.c:940,1
    - Dst: gf_isom_sdp_add_track_line
      Src: /src/gpac/src/media_tools/isom_hinter.c:941,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:944,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_hinter.c:944,1
    - Dst: gf_isom_sdp_add_track_line
      Src: /src/gpac/src/media_tools/isom_hinter.c:945,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:949,1
    - Dst: gf_isom_sdp_add_track_line
      Src: /src/gpac/src/media_tools/isom_hinter.c:950,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:954,1
    - Dst: gf_isom_sdp_add_track_line
      Src: /src/gpac/src/media_tools/isom_hinter.c:955,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/src/media_tools/isom_hinter.c:963,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/isom_hinter.c:966,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/isom_hinter.c:967,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/src/media_tools/isom_hinter.c:972,1
    - Dst: gf_media_format_ttxt_sdp
      Src: /src/gpac/src/media_tools/isom_hinter.c:982,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:983,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/src/media_tools/isom_hinter.c:984,1
    - Dst: gf_isom_text_get_encoded_tx3g
      Src: /src/gpac/src/media_tools/isom_hinter.c:989,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_hinter.c:992,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/media_tools/isom_hinter.c:995,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_hinter.c:996,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:998,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:999,1
    - Dst: gf_isom_sdp_add_track_line
      Src: /src/gpac/src/media_tools/isom_hinter.c:1001,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_hinter.c:1002,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:1006,1
    - Dst: gf_isom_sdp_add_track_line
      Src: /src/gpac/src/media_tools/isom_hinter.c:1007,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/src/media_tools/isom_hinter.c:1011,1
    - Dst: gf_isom_svc_config_get
      Src: /src/gpac/src/media_tools/isom_hinter.c:1012,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:1016,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:1020,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/isom_hinter.c:1023,1
    - Dst: write_avc_config
      Src: /src/gpac/src/media_tools/isom_hinter.c:1024,1
    - Dst: gf_isom_sdp_add_track_line
      Src: /src/gpac/src/media_tools/isom_hinter.c:1025,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_hinter.c:1026,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:1027,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:1028,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/isom_hinter.c:1033,1
    - Dst: gf_rtp_builder_format_sdp
      Src: /src/gpac/src/media_tools/isom_hinter.c:1036,1
    - Dst: gf_rtp_builder_format_sdp
      Src: /src/gpac/src/media_tools/isom_hinter.c:1038,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:1040,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_hinter.c:1042,1
    - Dst: gf_isom_get_ismacryp_info
      Src: /src/gpac/src/media_tools/isom_hinter.c:1047,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/isom_hinter.c:1048,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/isom_hinter.c:1048,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/isom_hinter.c:1048,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:1049,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:1051,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:1053,1
    - Dst: gf_isom_sdp_add_track_line
      Src: /src/gpac/src/media_tools/isom_hinter.c:1055,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_hinter.c:1056,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_hinter.c:1065,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_hinter.c:1066,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_hinter.c:1067,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_hinter.c:1068,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_hinter.c:1069,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_hinter.c:1070,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/isom_hinter.c:1073,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/isom_hinter.c:1076,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/isom_hinter.c:1076,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:1078,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_hinter.c:1081,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_hinter.c:1082,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_hinter.c:1083,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_hinter.c:1084,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_hinter.c:1085,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:1086,1
    - Dst: gf_rtp_builder_format_sdp
      Src: /src/gpac/src/media_tools/isom_hinter.c:1089,1
    - Dst: gf_isom_sdp_add_track_line
      Src: /src/gpac/src/media_tools/isom_hinter.c:1090,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_hinter.c:1091,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_hinter.c:1092,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/media_tools/isom_hinter.c:1098,1
    - Dst: gf_isom_get_dims_description
      Src: /src/gpac/src/media_tools/isom_hinter.c:1100,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:1102,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:1103,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:1105,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:1106,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:1107,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:1109,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:1110,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:1111,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/isom_hinter.c:1113,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:1114,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:1115,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/isom_hinter.c:1117,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:1118,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:1119,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/isom_hinter.c:1121,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:1122,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/isom_hinter.c:1123,1
    - Dst: gf_isom_sdp_add_track_line
      Src: /src/gpac/src/media_tools/isom_hinter.c:1125,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_hinter.c:1126,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:1131,1
    - Dst: gf_isom_sdp_add_track_line
      Src: /src/gpac/src/media_tools/isom_hinter.c:1132,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/isom_hinter.c:1135,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:1138,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:1142,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:1144,1
    - Dst: gf_isom_sdp_add_track_line
      Src: /src/gpac/src/media_tools/isom_hinter.c:1147,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:1149,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/src/media_tools/isom_hinter.c:1151,1
    CyclomaticComplexity: 67
    EdgeCount: 67
    ICount: 197
    argCount: 2
    argNames:
    - tkHint
    - AddSystemInfo
    argTypes:
    - GF_RTPHinter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1153
      start: 907
    functionDepth: 7
    functionLinenumber: 907
    functionLinenumberEnd: 1153
    functionName: gf_hinter_track_finalize
    functionSourceFile: /src/gpac/src/media_tools/isom_hinter.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_odf_avc_cfg_del
    - gf_odf_desc_del
    - gf_bs_new
    - gf_isom_get_track_id
    - gf_isom_text_get_encoded_tx3g
    - gf_isom_svc_config_get
    - gf_strdup
    - snprintf
    - gf_bs_get_content
    - gf_rtp_builder_get_payload_name
    - sprintf
    - gf_isom_get_track_count
    - gf_dynstrcat
    - gf_isom_get_media_type
    - gf_rtp_builder_format_sdp
    - gf_isom_set_track_enabled
    - gf_media_format_ttxt_sdp
    - gf_isom_sdp_clean_track
    - gf_isom_is_video_handler_type
    - gf_bs_write_int
    - gf_isom_get_esd
    - MIN
    - gf_isom_get_ismacryp_info
    - gf_bs_write_data
    - gf_isom_get_dims_description
    - strnicmp
    - gf_isom_get_track_layout_info
    - strlen
    - gf_isom_sdp_add_track_line
    - gf_isom_avc_config_get
    - write_avc_config
    - gf_base64_encode
    - gf_bs_del
    - gf_isom_get_visual_info
    - gf_isom_get_sample_description_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hinter_track_finalize(GF_RTPHinter *tkHint, Bool AddSystemInfo)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_base64_encode
      Src: /src/gpac/src/media_tools/isom_hinter.c:1161,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/isom_hinter.c:1165,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/isom_hinter.c:1168,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/isom_hinter.c:1172,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 3
    argNames:
    - data
    - data_size
    - streamType
    argTypes:
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1177
      start: 1155
    functionDepth: 1
    functionLinenumber: 1155
    functionLinenumberEnd: 1177
    functionName: gf_hinter_can_embbed_data
    functionSourceFile: /src/gpac/src/media_tools/isom_hinter.c
    functionUses: 1
    functionsReached:
    - strlen
    - gf_base64_encode
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hinter_can_embbed_data(u8 *data, u32 data_size, u32 streamType)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sdp_clean
      Src: /src/gpac/src/media_tools/isom_hinter.c:1193,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:1197,1
    - Dst: gf_isom_sdp_add_line
      Src: /src/gpac/src/media_tools/isom_hinter.c:1198,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/media_tools/isom_hinter.c:1201,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:1202,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:1204,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/media_tools/isom_hinter.c:1204,1
    - Dst: gf_gpac_copyright
      Src: /src/gpac/src/media_tools/isom_hinter.c:1204,1
    - Dst: gf_isom_sdp_add_line
      Src: /src/gpac/src/media_tools/isom_hinter.c:1206,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/isom_hinter.c:1211,1
    - Dst: gf_isom_is_track_in_root_od
      Src: /src/gpac/src/media_tools/isom_hinter.c:1212,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/isom_hinter.c:1213,1
    - Dst: gf_isom_get_root_od
      Src: /src/gpac/src/media_tools/isom_hinter.c:1232,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_hinter.c:1239,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_hinter.c:1240,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:1241,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/isom_hinter.c:1242,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/isom_hinter.c:1248,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_hinter.c:1249,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_hinter.c:1250,1
    - Dst: gf_hinter_can_embbed_data
      Src: /src/gpac/src/media_tools/isom_hinter.c:1251,1
    - Dst: InitSL_NULL
      Src: /src/gpac/src/media_tools/isom_hinter.c:1252,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/isom_hinter.c:1255,1
    - Dst: gf_isom_set_extraction_slc
      Src: /src/gpac/src/media_tools/isom_hinter.c:1260,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/isom_hinter.c:1262,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_hinter.c:1263,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/isom_hinter.c:1265,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/media_tools/isom_hinter.c:1266,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_hinter.c:1275,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:1278,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_hinter.c:1285,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/isom_hinter.c:1289,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_hinter.c:1290,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_hinter.c:1291,1
    - Dst: gf_hinter_can_embbed_data
      Src: /src/gpac/src/media_tools/isom_hinter.c:1292,1
    - Dst: InitSL_NULL
      Src: /src/gpac/src/media_tools/isom_hinter.c:1293,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/isom_hinter.c:1294,1
    - Dst: gf_isom_set_extraction_slc
      Src: /src/gpac/src/media_tools/isom_hinter.c:1299,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/isom_hinter.c:1301,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_hinter.c:1302,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/isom_hinter.c:1304,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/media_tools/isom_hinter.c:1305,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_hinter.c:1314,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:1317,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_hinter.c:1324,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/isom_hinter.c:1330,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/isom_hinter.c:1331,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:1342,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_hinter.c:1346,1
    - Dst: gf_isom_sdp_add_line
      Src: /src/gpac/src/media_tools/isom_hinter.c:1347,1
    - Dst: gf_odf_desc_write
      Src: /src/gpac/src/media_tools/isom_hinter.c:1355,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_hinter.c:1356,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/isom_hinter.c:1359,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_hinter.c:1360,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/isom_hinter.c:1362,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/media_tools/isom_hinter.c:1363,1
    - Dst: gf_isom_sdp_add_line
      Src: /src/gpac/src/media_tools/isom_hinter.c:1366,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_hinter.c:1367,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_hinter.c:1369,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 156
    argCount: 3
    argNames:
    - file
    - IOD_Profile
    - bandwidth
    argTypes:
    - GF_ISOFile*
    - GF_SDP_IODProfile
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1372
      start: 1180
    functionDepth: 7
    functionLinenumber: 1180
    functionLinenumberEnd: 1372
    functionName: gf_hinter_finalize
    functionSourceFile: /src/gpac/src/media_tools/isom_hinter.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_isom_sdp_clean
    - gf_odf_desc_del
    - InitSL_NULL
    - strcpy
    - gf_isom_get_sample_count
    - gf_list_count
    - gf_isom_get_root_od
    - gf_hinter_can_embbed_data
    - gf_list_get
    - snprintf
    - gf_isom_sdp_add_line
    - gf_isom_sample_del
    - gf_isom_get_track_count
    - gf_list_add
    - gf_isom_is_track_in_root_od
    - gf_isom_get_media_type
    - gf_isom_get_sample
    - gf_odf_desc_write
    - GF_LOG
    - gf_sys_is_test_mode
    - gf_isom_get_esd
    - gf_isom_set_extraction_slc
    - strlen
    - gf_malloc
    - gf_gpac_copyright
    - gf_base64_encode
    - gf_gpac_version
    - gf_isom_get_media_timescale
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hinter_finalize(GF_ISOFile *file, GF_SDP_IODProfile IOD_Profile,
      u32 bandwidth)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/ait.c:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - service_id
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 50
    functionName: gf_ait_section_new
    functionSourceFile: /src/gpac/src/media_tools/ait.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_M2TS_ES
    signature: GF_M2TS_ES *gf_ait_section_new(u32 service_id)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: check_ait_already_received
      Src: /src/gpac/src/media_tools/ait.c:66,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/ait.c:68,1
    - Dst: gf_m2ts_decode_ait
      Src: /src/gpac/src/media_tools/ait.c:74,1
    - Dst: gf_m2ts_process_ait
      Src: /src/gpac/src/media_tools/ait.c:75,1
    - Dst: gf_ait_destroy
      Src: /src/gpac/src/media_tools/ait.c:76,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/ait.c:77,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - ts
    - evt_type
    - par
    argTypes:
    - GF_M2TS_Demuxer*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 81
    functionName: on_ait_section
    functionSourceFile: /src/gpac/src/media_tools/ait.c
    functionUses: 0
    functionsReached:
    - check_ait_already_received
    - gf_ait_destroy
    - gf_m2ts_process_ait
    - GF_SAFEALLOC
    - gf_m2ts_decode_ait
    - GF_M2TS_Demuxer*::on_event
    linkageType: ''
    returnType: void
    signature: void on_ait_section(GF_M2TS_Demuxer *ts, u32 evt_type, void *par)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/ait.c:92,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/ait.c:94,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:96,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/ait.c:99,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:101,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:105,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:106,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:107,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:108,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:110,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:112,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:114,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:116,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:119,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:121,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:124,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:125,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:127,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:129,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:132,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:133,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:134,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:135,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:136,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:137,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:138,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/ait.c:145,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/ait.c:148,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:152,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:153,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:154,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:155,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:156,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:163,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/ait.c:170,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:176,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/ait.c:177,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:178,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:179,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:180,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:181,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:182,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:183,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:184,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:185,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:186,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:189,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:192,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/ait.c:194,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:195,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/ait.c:195,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:196,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/ait.c:199,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/ait.c:207,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:213,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/ait.c:214,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:215,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:216,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/ait.c:217,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/ait.c:218,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/ait.c:220,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:221,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/ait.c:221,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:222,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:223,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/ait.c:226,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/ait.c:234,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:241,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/ait.c:242,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:243,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:244,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/ait.c:249,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:252,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:253,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:255,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:256,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:257,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:259,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/ait.c:267,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:270,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/ait.c:272,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/ait.c:273,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:275,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/ait.c:277,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:279,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/ait.c:280,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/ait.c:281,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:290,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/ait.c:293,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:294,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/ait.c:294,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:297,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:301,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:303,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:305,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:307,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/ait.c:310,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/ait.c:318,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:324,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/ait.c:325,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/ait.c:326,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/ait.c:327,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/ait.c:329,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:330,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/ait.c:330,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:331,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:332,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/ait.c:335,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/ait.c:343,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:349,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/ait.c:350,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:351,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/ait.c:352,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:353,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/ait.c:353,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:354,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/ait.c:357,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/ait.c:366,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:372,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/ait.c:373,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:374,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/ait.c:376,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:378,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/ait.c:380,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/ait.c:381,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/ait.c:386,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:387,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/ait.c:387,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:391,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:394,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:396,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/ait.c:399,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:406,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:408,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:410,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/ait.c:417,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/ait.c:421,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:426,1
    CyclomaticComplexity: 59
    EdgeCount: 59
    ICount: 292
    argCount: 4
    argNames:
    - ait
    - data
    - data_size
    - table_id
    argTypes:
    - GF_M2TS_AIT*
    - char*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 431
    functionName: gf_m2ts_decode_ait
    functionSourceFile: /src/gpac/src/media_tools/ait.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_bs_read_data
    - gf_list_new
    - gf_bs_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_bs_get_position
    - gf_calloc
    - gf_list_add
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_m2ts_decode_ait(GF_M2TS_AIT *ait, char  *data, u32 data_size,
      u32 table_id)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/ait.c:439,1
    - Dst: gf_m2ts_get_channel_application_info
      Src: /src/gpac/src/media_tools/ait.c:445,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/ait.c:448,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/ait.c:451,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/ait.c:453,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:458,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/ait.c:463,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/ait.c:466,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/ait.c:470,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/ait.c:471,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/ait.c:484,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/ait.c:492,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/ait.c:493,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/ait.c:498,1
    - Dst: gf_m2ts_get_dmscc_overlord
      Src: /src/gpac/src/media_tools/ait.c:506,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/ait.c:511,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/ait.c:512,1
    - Dst: gf_m2ts_init_dsmcc_overlord
      Src: /src/gpac/src/media_tools/ait.c:514,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/ait.c:516,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/ait.c:517,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/ait.c:517,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/ait.c:517,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/ait.c:518,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/media_tools/ait.c:519,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:521,1
    - Dst: gf_dir_cleanup
      Src: /src/gpac/src/media_tools/ait.c:523,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/ait.c:526,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/ait.c:527,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/ait.c:528,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/ait.c:552,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:562,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/ait.c:567,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/ait.c:567,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/ait.c:568,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/ait.c:569,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:574,1
    - Dst: gf_m2ts_get_dmscc_overlord
      Src: /src/gpac/src/media_tools/ait.c:580,1
    - Dst: gf_m2ts_is_dmscc_app
      Src: /src/gpac/src/media_tools/ait.c:582,1
    - Dst: gf_dir_cleanup
      Src: /src/gpac/src/media_tools/ait.c:583,1
    - Dst: gf_rmdir
      Src: /src/gpac/src/media_tools/ait.c:584,1
    - Dst: gf_m2ts_delete_dsmcc_overlord
      Src: /src/gpac/src/media_tools/ait.c:585,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 113
    argCount: 2
    argNames:
    - ts
    - ait
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_AIT*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 589
      start: 433
    functionDepth: 1
    functionLinenumber: 433
    functionLinenumberEnd: 589
    functionName: gf_m2ts_process_ait
    functionSourceFile: /src/gpac/src/media_tools/ait.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_list_count
    - memset
    - gf_list_new
    - gf_list_get
    - gf_strdup
    - sprintf
    - gf_list_add
    - gf_m2ts_is_dmscc_app
    - gf_m2ts_init_dsmcc_overlord
    - gf_rmdir
    - gf_m2ts_get_dmscc_overlord
    - GF_LOG
    - gf_mkdir
    - strlen
    - gf_calloc
    - gf_dir_cleanup
    - gf_m2ts_get_channel_application_info
    - gf_m2ts_delete_dsmcc_overlord
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_process_ait(GF_M2TS_Demuxer *ts, GF_M2TS_AIT* ait)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/ait.c:595,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/ait.c:597,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ChanAppInfo
    argTypes:
    - GF_M2TS_CHANNEL_APPLICATION_INFO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 591
    functionDepth: 1
    functionLinenumber: 591
    functionLinenumberEnd: 603
    functionName: gf_m2ts_is_dmscc_app
    functionSourceFile: /src/gpac/src/media_tools/ait.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: Bool
    signature: Bool gf_m2ts_is_dmscc_app(GF_M2TS_CHANNEL_APPLICATION_INFO* ChanAppInfo)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/ait.c:609,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/ait.c:612,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 620
      start: 605
    functionDepth: 1
    functionLinenumber: 605
    functionLinenumberEnd: 620
    functionName: GF_M2TS_CHANNEL_APPLICATION_INFO* gf_m2ts_get_channel_application_info(GF_List*
      ChannelAppList, u32 ait_service_id)
    functionSourceFile: /src/gpac/src/media_tools/ait.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_M2TS_CHANNEL_APPLICATION_INFO* gf_m2ts_get_channel_application_info(GF_List*
      ChannelAppList, u32 ait_service_id)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/ait.c:627,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/ait.c:632,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:635,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:637,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/ait.c:641,1
    - Dst: gf_m2ts_free_ait_application
      Src: /src/gpac/src/media_tools/ait.c:642,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/ait.c:643,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/ait.c:644,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:646,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:652,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 3
    argNames:
    - ChannelAppList
    - pid
    - data
    argTypes:
    - GF_List*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 622
    functionDepth: 1
    functionLinenumber: 622
    functionLinenumberEnd: 656
    functionName: check_ait_already_received
    functionSourceFile: /src/gpac/src/media_tools/ait.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_m2ts_free_ait_application
    - GF_LOG
    - gf_list_count
    - gf_list_rem
    linkageType: ''
    returnType: Bool
    signature: Bool check_ait_already_received(GF_List* ChannelAppList,u32 pid,char*
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/ait.c:666,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/ait.c:670,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/ait.c:673,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/ait.c:675,1
    - Dst: gf_ait_application_decode_destroy
      Src: /src/gpac/src/media_tools/ait.c:676,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/ait.c:677,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/ait.c:678,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/ait.c:680,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:681,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - ait
    argTypes:
    - GF_M2TS_AIT*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 682
      start: 658
    functionDepth: 1
    functionLinenumber: 658
    functionLinenumberEnd: 682
    functionName: gf_ait_destroy
    functionSourceFile: /src/gpac/src/media_tools/ait.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_ait_application_decode_destroy
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_ait_destroy(GF_M2TS_AIT* ait)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/ait.c:690,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:695,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/ait.c:699,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:700,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/ait.c:705,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:706,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:707,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/ait.c:712,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:717,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:723,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:726,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:728,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:730,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/ait.c:735,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:738,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/ait.c:743,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:744,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:745,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/ait.c:750,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:751,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/ait.c:756,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:760,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:763,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:765,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/ait.c:772,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/ait.c:773,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/ait.c:776,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:777,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 70
    argCount: 1
    argNames:
    - application_decode
    argTypes:
    - GF_M2TS_AIT_APPLICATION_DECODE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 778
      start: 684
    functionDepth: 1
    functionLinenumber: 684
    functionLinenumberEnd: 778
    functionName: gf_ait_application_decode_destroy
    functionSourceFile: /src/gpac/src/media_tools/ait.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - GF_LOG
    - gf_list_count
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_ait_application_decode_destroy(GF_M2TS_AIT_APPLICATION_DECODE*
      application_decode)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:783,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:786,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:790,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:792,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - Application
    argTypes:
    - GF_M2TS_AIT_APPLICATION*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 780
    functionDepth: 0
    functionLinenumber: 780
    functionLinenumberEnd: 793
    functionName: gf_m2ts_free_ait_application
    functionSourceFile: /src/gpac/src/media_tools/ait.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_free_ait_application(GF_M2TS_AIT_APPLICATION* Application)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/ait.c:797,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/ait.c:798,1
    - Dst: gf_m2ts_free_ait_application
      Src: /src/gpac/src/media_tools/ait.c:799,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/ait.c:800,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/ait.c:803,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/ait.c:804,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ChannelApp
    argTypes:
    - GF_M2TS_CHANNEL_APPLICATION_INFO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 805
      start: 795
    functionDepth: 1
    functionLinenumber: 795
    functionLinenumberEnd: 805
    functionName: gf_m2ts_delete_channel_application_info
    functionSourceFile: /src/gpac/src/media_tools/ait.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_m2ts_free_ait_application
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_delete_channel_application_info(GF_M2TS_CHANNEL_APPLICATION_INFO*
      ChannelApp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:82,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dsmcc.c:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 86
    functionName: GF_M2TS_DSMCC_OVERLORD* gf_m2ts_init_dsmcc_overlord(u32 service_id)
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_M2TS_DSMCC_OVERLORD* gf_m2ts_init_dsmcc_overlord(u32 service_id)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:93,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:99,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 106
    functionName: GF_M2TS_DSMCC_OVERLORD* gf_m2ts_get_dmscc_overlord(GF_List* Dsmcc_controller,u32
      service_id)
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_M2TS_DSMCC_OVERLORD* gf_m2ts_get_dmscc_overlord(GF_List*
      Dsmcc_controller,u32 service_id)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_get_dmscc_overlord
      Src: /src/gpac/src/media_tools/dsmcc.c:116,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:124,1
    - Dst: gf_m2ts_process_dsmcc
      Src: /src/gpac/src/media_tools/dsmcc.c:126,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/dsmcc.c:127,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dsmcc.c:128,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - ts
    - evt_type
    - par
    argTypes:
    - GF_M2TS_Demuxer*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 130
    functionName: on_dsmcc_section
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_process_dsmcc
    - gf_m2ts_get_dmscc_overlord
    - gf_assert
    - GF_SAFEALLOC
    - GF_M2TS_Demuxer*::on_event
    linkageType: ''
    returnType: void
    signature: void on_dsmcc_section(GF_M2TS_Demuxer *ts, u32 evt_type, void *par)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/dsmcc.c:140,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:142,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:143,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:144,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:145,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:147,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:150,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:152,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:155,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:158,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:160,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:162,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:166,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:168,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:171,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:177,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:182,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:188,1
    - Dst: gf_m2ts_dsmcc_download_data
      Src: /src/gpac/src/media_tools/dsmcc.c:189,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:194,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:199,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:205,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:207,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:210,1
    - Dst: gf_m2ts_dsmcc_section_delete
      Src: /src/gpac/src/media_tools/dsmcc.c:218,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 58
    argCount: 5
    argNames:
    - dsmcc_overlord
    - dsmcc
    - data
    - data_size
    - table_id
    argTypes:
    - GF_M2TS_DSMCC_OVERLORD*
    - GF_M2TS_DSMCC_SECTION*
    - char*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 221
    functionName: gf_m2ts_process_dsmcc
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_bs_new
    - GF_LOG
    - gf_bs_get_position
    - gf_m2ts_dsmcc_section_delete
    - gf_bs_read_int
    - gf_m2ts_dsmcc_download_data
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_process_dsmcc(GF_M2TS_DSMCC_OVERLORD* dsmcc_overlord,GF_M2TS_DSMCC_SECTION
      *dsmcc, char  *data, u32 data_size, u32 table_id)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:226,1
    - Dst: gf_m2ts_dsmcc_process_message_header
      Src: /src/gpac/src/media_tools/dsmcc.c:229,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:237,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:241,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:242,1
    - Dst: gf_m2ts_dsmcc_process_compatibility_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:243,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:244,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:245,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:246,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:253,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:257,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:258,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:259,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:260,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:261,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:262,1
    - Dst: gf_m2ts_dsmcc_process_compatibility_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:265,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:266,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:270,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:272,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:273,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:274,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:275,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:276,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:277,1
    - Dst: dsmcc_create_module_validation
      Src: /src/gpac/src/media_tools/dsmcc.c:278,1
    - Dst: dsmcc_create_module
      Src: /src/gpac/src/media_tools/dsmcc.c:280,1
    - Dst: dsmcc_get_biop_module_info
      Src: /src/gpac/src/media_tools/dsmcc.c:283,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:285,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:286,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:292,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:295,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:296,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:297,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:305,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:307,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:310,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:315,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:317,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:318,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:320,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:323,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:326,1
    - Dst: dsmcc_download_data_validation
      Src: /src/gpac/src/media_tools/dsmcc.c:328,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:332,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:335,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:336,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:337,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dsmcc.c:338,1
    - Dst: dsmcc_module_complete
      Src: /src/gpac/src/media_tools/dsmcc.c:343,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:354,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:356,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:357,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:358,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:365,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:367,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:368,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:369,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:370,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:371,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:372,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:374,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:375,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:384,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:386,1
    - Dst: gf_m2ts_dsmcc_process_compatibility_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:387,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:388,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:394,1
    - Dst: dsmcc_biop_get_ior
      Src: /src/gpac/src/media_tools/dsmcc.c:397,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:399,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:400,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:403,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:404,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:406,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:407,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:408,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:409,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:410,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:411,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:412,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:414,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:415,1
    - Dst: dsmcc_biop_get_context
      Src: /src/gpac/src/media_tools/dsmcc.c:416,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:417,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:419,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:420,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:423,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:424,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:425,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dsmcc.c:429,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dsmcc.c:430,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:439,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 168
    argCount: 5
    argNames:
    - dsmcc_overlord
    - dsmcc
    - data
    - bs
    - data_shift
    argTypes:
    - GF_M2TS_DSMCC_OVERLORD*
    - GF_M2TS_DSMCC_SECTION*
    - char*
    - GF_BitStream*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 447
    functionName: gf_m2ts_dsmcc_download_data
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_data
    - dsmcc_get_biop_module_info
    - gf_free
    - dsmcc_module_complete
    - GF_SAFEALLOC
    - gf_list_count
    - gf_list_get
    - gf_list_new
    - dsmcc_download_data_validation
    - memcpy
    - GF_LOG
    - dsmcc_create_module_validation
    - gf_bs_get_position
    - dsmcc_biop_get_ior
    - dsmcc_biop_get_context
    - gf_m2ts_dsmcc_process_compatibility_descriptor
    - gf_calloc
    - gf_bs_read_int
    - dsmcc_create_module
    - gf_m2ts_dsmcc_process_message_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_m2ts_dsmcc_download_data(GF_M2TS_DSMCC_OVERLORD *dsmcc_overlord,GF_M2TS_DSMCC_SECTION
      *dsmcc, char  *data, GF_BitStream *bs,u32* data_shift)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:458,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:460,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:463,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:464,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:467,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:469,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:471,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:473,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:476,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:477,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:478,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:481,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:482,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:484,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:485,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:489,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 31
    argCount: 5
    argNames:
    - MessageHeader
    - data
    - bs
    - data_shift
    - mode
    argTypes:
    - GF_M2TS_DSMCC_MESSAGE_DATA_HEADER*
    - char*
    - GF_BitStream*
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 452
    functionDepth: 1
    functionLinenumber: 452
    functionLinenumberEnd: 492
    functionName: gf_m2ts_dsmcc_process_message_header
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_data
    - GF_LOG
    - gf_bs_get_position
    - gf_calloc
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_m2ts_dsmcc_process_message_header(GF_M2TS_DSMCC_MESSAGE_DATA_HEADER
      *MessageHeader, char* data,GF_BitStream *bs,u32* data_shift,u32 mode)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:498,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:500,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:503,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:505,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:507,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:508,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:509,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:510,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:511,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:512,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:513,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:515,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:517,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:518,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:520,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:521,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:530,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:532,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 35
    argCount: 4
    argNames:
    - CompatibilityDesc
    - data
    - bs
    - data_shift
    argTypes:
    - GF_M2TS_DSMCC_COMPATIBILITY_DESCRIPTOR*
    - char*
    - GF_BitStream*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 537
      start: 494
    functionDepth: 1
    functionLinenumber: 494
    functionLinenumberEnd: 537
    functionName: gf_m2ts_dsmcc_process_compatibility_descriptor
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_data
    - GF_LOG
    - gf_bs_get_position
    - gf_calloc
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_m2ts_dsmcc_process_compatibility_descriptor(GF_M2TS_DSMCC_COMPATIBILITY_DESCRIPTOR
      *CompatibilityDesc, char* data,GF_BitStream *bs,u32* data_shift)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:546,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:549,1
    - Dst: dsmcc_module_delete
      Src: /src/gpac/src/media_tools/dsmcc.c:550,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dsmcc.c:551,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 4
    argNames:
    - InfoModules
    - downloadId
    - dsmcc_overlord
    - nb_module
    argTypes:
    - GF_M2TS_DSMCC_INFO_MODULES*
    - u32
    - GF_M2TS_DSMCC_OVERLORD*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 539
    functionDepth: 1
    functionLinenumber: 539
    functionLinenumberEnd: 559
    functionName: dsmcc_create_module_validation
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_list_get
    - gf_list_rem
    - dsmcc_module_delete
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dsmcc_create_module_validation(GF_M2TS_DSMCC_INFO_MODULES* InfoModules,
      u32 downloadId, GF_M2TS_DSMCC_OVERLORD* dsmcc_overlord,u32 nb_module)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 7
    argCount: 4
    argNames:
    - dsmcc_overlord
    - DownloadDataBlock
    - dsmcc_module
    - downloadId
    argTypes:
    - GF_M2TS_DSMCC_OVERLORD*
    - GF_M2TS_DSMCC_DOWNLOAD_DATA_BLOCK*
    - GF_M2TS_DSMCC_MODULE*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 584
    functionDepth: 0
    functionLinenumber: 584
    functionLinenumberEnd: 597
    functionName: dsmcc_download_data_validation
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dsmcc_download_data_validation(GF_M2TS_DSMCC_OVERLORD* dsmcc_overlord,GF_M2TS_DSMCC_DOWNLOAD_DATA_BLOCK*
      DownloadDataBlock,GF_M2TS_DSMCC_MODULE* dsmcc_module,u32 downloadId)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:604,1
    - Dst: gf_gz_decompress_payload_ex
      Src: /src/gpac/src/media_tools/dsmcc.c:613,1
    - Dst: dsmcc_process_biop_data
      Src: /src/gpac/src/media_tools/dsmcc.c:617,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:619,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:620,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:622,1
    - Dst: dsmcc_process_biop_data
      Src: /src/gpac/src/media_tools/dsmcc.c:627,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:630,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:631,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:633,1
    - Dst: dsmcc_module_delete
      Src: /src/gpac/src/media_tools/dsmcc.c:638,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dsmcc.c:639,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 35
    argCount: 3
    argNames:
    - dsmcc_overlord
    - dsmcc_module
    - moduleIndex
    argTypes:
    - GF_M2TS_DSMCC_OVERLORD*
    - GF_M2TS_DSMCC_MODULE*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 645
      start: 599
    functionDepth: 1
    functionLinenumber: 599
    functionLinenumberEnd: 645
    functionName: dsmcc_module_complete
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_gz_decompress_payload_ex
    - gf_list_count
    - gf_calloc
    - dsmcc_module_delete
    - dsmcc_process_biop_data
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dsmcc_module_complete(GF_M2TS_DSMCC_OVERLORD* dsmcc_overlord,GF_M2TS_DSMCC_MODULE*
      dsmcc_module,u32 moduleIndex)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:658,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:661,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:664,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - CompatibilityDesc
    argTypes:
    - GF_M2TS_DSMCC_COMPATIBILITY_DESCRIPTOR*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 668
      start: 649
    functionDepth: 0
    functionLinenumber: 649
    functionLinenumberEnd: 668
    functionName: gf_m2ts_dsmcc_delete_compatibility_descriptor
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_m2ts_dsmcc_delete_compatibility_descriptor(GF_M2TS_DSMCC_COMPATIBILITY_DESCRIPTOR
      *CompatibilityDesc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:673,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:674,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - MessageHeader
    argTypes:
    - GF_M2TS_DSMCC_MESSAGE_DATA_HEADER*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 677
      start: 670
    functionDepth: 0
    functionLinenumber: 670
    functionLinenumberEnd: 677
    functionName: gf_m2ts_dsmcc_delete_message_header
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_m2ts_dsmcc_delete_message_header(GF_M2TS_DSMCC_MESSAGE_DATA_HEADER
      *MessageHeader)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:693,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:695,1
    - Dst: gf_m2ts_dsmcc_delete_compatibility_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:703,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:706,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:708,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:715,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:717,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:723,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:730,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:732,1
    - Dst: gf_m2ts_dsmcc_delete_compatibility_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:738,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:740,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:742,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:747,1
    - Dst: gf_m2ts_dsmcc_delete_message_header
      Src: /src/gpac/src/media_tools/dsmcc.c:753,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:754,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:755,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 55
    argCount: 1
    argNames:
    - dsmcc
    argTypes:
    - GF_M2TS_DSMCC_SECTION*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 757
      start: 679
    functionDepth: 1
    functionLinenumber: 679
    functionLinenumberEnd: 757
    functionName: gf_m2ts_dsmcc_section_delete
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_m2ts_dsmcc_delete_compatibility_descriptor
    - gf_m2ts_dsmcc_delete_message_header
    - GF_LOG
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_m2ts_dsmcc_section_delete(GF_M2TS_DSMCC_SECTION *dsmcc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:762,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:763,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - dsmcc_module
    argTypes:
    - GF_M2TS_DSMCC_MODULE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 760
    functionDepth: 0
    functionLinenumber: 760
    functionLinenumberEnd: 765
    functionName: dsmcc_module_delete
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 2
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dsmcc_module_delete(GF_M2TS_DSMCC_MODULE* dsmcc_module)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/dsmcc.c:776,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:777,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dsmcc.c:778,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:780,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:781,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:782,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:783,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:785,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dsmcc.c:786,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:787,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:791,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:793,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:794,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:795,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:796,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:798,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:799,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:802,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:803,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dsmcc.c:804,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:805,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:809,1
    - Dst: dsmcc_biop_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:814,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:816,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:822,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:834,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:846,1
    - Dst: dsmcc_free_biop_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:854,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:858,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:861,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:862,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 68
    argCount: 3
    argNames:
    - dsmcc_module
    - data
    - data_size
    argTypes:
    - GF_M2TS_DSMCC_MODULE*
    - char*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 865
      start: 769
    functionDepth: 1
    functionLinenumber: 769
    functionLinenumberEnd: 865
    functionName: dsmcc_get_biop_module_info
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_bs_read_data
    - gf_list_new
    - dsmcc_biop_descriptor
    - gf_list_get
    - gf_bs_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_count
    - gf_calloc
    - gf_bs_read_int
    - gf_list_del
    - dsmcc_free_biop_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dsmcc_get_biop_module_info(GF_M2TS_DSMCC_MODULE* dsmcc_module,char*
      data,u8 data_size)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/dsmcc.c:878,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:880,1
    - Dst: dsmcc_process_biop_header
      Src: /src/gpac/src/media_tools/dsmcc.c:884,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:887,1
    - Dst: dsmcc_process_biop_file
      Src: /src/gpac/src/media_tools/dsmcc.c:888,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:889,1
    - Dst: dsmcc_process_biop_directory
      Src: /src/gpac/src/media_tools/dsmcc.c:890,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:891,1
    - Dst: dsmcc_process_biop_directory
      Src: /src/gpac/src/media_tools/dsmcc.c:892,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:896,1
    - Dst: dsmcc_process_biop_stream_message
      Src: /src/gpac/src/media_tools/dsmcc.c:897,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:898,1
    - Dst: dsmcc_process_biop_stream_event
      Src: /src/gpac/src/media_tools/dsmcc.c:899,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:901,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:904,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:907,1
    - Dst: dsmcc_free_biop_header
      Src: /src/gpac/src/media_tools/dsmcc.c:911,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 42
    argCount: 4
    argNames:
    - dsmcc_overlord
    - dsmcc_module
    - data
    - data_size
    argTypes:
    - GF_M2TS_DSMCC_OVERLORD*
    - GF_M2TS_DSMCC_MODULE*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 921
      start: 867
    functionDepth: 1
    functionLinenumber: 867
    functionLinenumberEnd: 921
    functionName: dsmcc_process_biop_data
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - dsmcc_free_biop_header
    - dsmcc_process_biop_stream_message
    - dsmcc_process_biop_file
    - gf_bs_new
    - dsmcc_process_biop_directory
    - GF_LOG
    - dsmcc_process_biop_header
    - gf_bs_get_position
    - dsmcc_process_biop_stream_event
    - strcmp
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dsmcc_process_biop_data(GF_M2TS_DSMCC_OVERLORD* dsmcc_overlord,GF_M2TS_DSMCC_MODULE*
      dsmcc_module,char* data,u32 data_size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:926,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:928,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:930,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:933,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:934,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:935,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:936,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:937,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:938,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:940,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:942,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:944,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:945,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:947,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 950
      start: 923
    functionDepth: 1
    functionLinenumber: 923
    functionLinenumberEnd: 950
    functionName: dsmcc_process_biop_header
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_data
    - GF_SAFEALLOC
    - GF_LOG
    - gf_calloc
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_M2TS_DSMCC_BIOP_HEADER
    signature: GF_M2TS_DSMCC_BIOP_HEADER * dsmcc_process_biop_header(GF_BitStream*
      bs)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:959,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:964,1
    - Dst: dsmcc_biop_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:969,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:972,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:974,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:980,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:989,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:996,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:998,1
    - Dst: dsmcc_biop_get_context
      Src: /src/gpac/src/media_tools/dsmcc.c:999,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1001,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1002,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1004,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1005,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1008,1
    - Dst: dsmcc_get_file
      Src: /src/gpac/src/media_tools/dsmcc.c:1009,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1012,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/dsmcc.c:1013,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/media_tools/dsmcc.c:1015,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/dsmcc.c:1016,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1017,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:1018,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1023,1
    - Dst: dsmcc_free_biop_file
      Src: /src/gpac/src/media_tools/dsmcc.c:1026,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 52
    argCount: 5
    argNames:
    - bs
    - BIOP_Header
    - dsmcc_overlord
    - moduleId
    - downloadId
    argTypes:
    - GF_BitStream*
    - GF_M2TS_DSMCC_BIOP_HEADER*
    - GF_M2TS_DSMCC_OVERLORD*
    - u16
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1029
      start: 952
    functionDepth: 1
    functionLinenumber: 952
    functionLinenumberEnd: 1029
    functionName: dsmcc_process_biop_file
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_data
    - dsmcc_get_file
    - gf_list_get
    - dsmcc_biop_descriptor
    - gf_fclose
    - dsmcc_biop_get_context
    - dsmcc_free_biop_file
    - GF_SAFEALLOC
    - GF_LOG
    - gf_fwrite
    - gf_list_count
    - gf_calloc
    - gf_fopen
    - strcmp
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dsmcc_process_biop_file(GF_BitStream* bs,GF_M2TS_DSMCC_BIOP_HEADER*
      BIOP_Header,GF_M2TS_DSMCC_OVERLORD*dsmcc_overlord,u16 moduleId,u32 downloadId)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1038,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1046,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dsmcc.c:1055,1
    - Dst: dsmcc_get_directory
      Src: /src/gpac/src/media_tools/dsmcc.c:1058,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1061,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1063,1
    - Dst: dsmcc_biop_get_context
      Src: /src/gpac/src/media_tools/dsmcc.c:1064,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1066,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1067,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1068,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1075,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1076,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1078,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1079,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1081,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1083,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1087,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1088,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1091,1
    - Dst: dsmcc_biop_get_ior
      Src: /src/gpac/src/media_tools/dsmcc.c:1093,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1095,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1099,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:1100,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1101,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dsmcc.c:1108,1
    - Dst: dsmcc_biop_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:1109,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1112,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1114,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1119,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1128,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:1135,1
    - Dst: dsmcc_check_element_validation
      Src: /src/gpac/src/media_tools/dsmcc.c:1136,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1138,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1139,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dsmcc.c:1140,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dsmcc.c:1141,1
    - Dst: dsmcc_get_file_namepath
      Src: /src/gpac/src/media_tools/dsmcc.c:1146,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/media_tools/dsmcc.c:1147,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1149,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dsmcc.c:1151,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:1153,1
    - Dst: dsmcc_check_element_validation
      Src: /src/gpac/src/media_tools/dsmcc.c:1154,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1156,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1157,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dsmcc.c:1158,1
    - Dst: dsmcc_get_file_namepath
      Src: /src/gpac/src/media_tools/dsmcc.c:1163,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dsmcc.c:1164,1
    - Dst: dsmcc_free_biop_directory
      Src: /src/gpac/src/media_tools/dsmcc.c:1168,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 104
    argCount: 4
    argNames:
    - bs
    - BIOP_Header
    - dsmcc_overlord
    - IsServiceGateway
    argTypes:
    - GF_BitStream*
    - GF_M2TS_DSMCC_BIOP_HEADER*
    - GF_M2TS_DSMCC_OVERLORD*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1171
      start: 1031
    functionDepth: 1
    functionLinenumber: 1031
    functionLinenumberEnd: 1171
    functionName: dsmcc_process_biop_directory
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_data
    - dsmcc_get_directory
    - GF_SAFEALLOC
    - gf_list_count
    - dsmcc_get_file_namepath
    - gf_strdup
    - gf_list_new
    - gf_list_get
    - gf_list_add
    - dsmcc_biop_descriptor
    - GF_LOG
    - gf_mkdir
    - dsmcc_biop_get_context
    - dsmcc_biop_get_ior
    - dsmcc_check_element_validation
    - gf_calloc
    - strcmp
    - gf_bs_read_int
    - dsmcc_free_biop_directory
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dsmcc_process_biop_directory(GF_BitStream* bs,GF_M2TS_DSMCC_BIOP_HEADER*
      BIOP_Header,GF_M2TS_DSMCC_OVERLORD*dsmcc_overlord,Bool IsServiceGateway)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1179,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1183,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1185,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1186,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1188,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1189,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1190,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1191,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1192,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1195,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1197,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1199,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1201,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1202,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1207,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1209,1
    - Dst: dsmcc_biop_get_context
      Src: /src/gpac/src/media_tools/dsmcc.c:1210,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1213,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1214,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1215,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1217,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1218,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1219,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1220,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1222,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1226,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1228,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1231,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1233,1
    - Dst: dsmcc_free_biop_stream_event
      Src: /src/gpac/src/media_tools/dsmcc.c:1237,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 55
    argCount: 3
    argNames:
    - bs
    - BIOP_Header
    - ServiceGateway
    argTypes:
    - GF_BitStream*
    - GF_M2TS_DSMCC_BIOP_HEADER*
    - GF_M2TS_DSMCC_SERVICE_GATEWAY*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1240
      start: 1173
    functionDepth: 1
    functionLinenumber: 1173
    functionLinenumberEnd: 1240
    functionName: dsmcc_process_biop_stream_event
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_data
    - dsmcc_biop_get_context
    - GF_SAFEALLOC
    - GF_LOG
    - gf_calloc
    - gf_bs_read_int
    - dsmcc_free_biop_stream_event
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dsmcc_process_biop_stream_event(GF_BitStream* bs,GF_M2TS_DSMCC_BIOP_HEADER*
      BIOP_Header,GF_M2TS_DSMCC_SERVICE_GATEWAY* ServiceGateway)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1247,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1251,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1253,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1254,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1256,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1257,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1258,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1259,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1260,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1262,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1264,1
    - Dst: dsmcc_biop_get_context
      Src: /src/gpac/src/media_tools/dsmcc.c:1265,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1268,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1269,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1270,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1272,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1273,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1274,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1275,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1277,1
    - Dst: dsmcc_free_biop_stream_message
      Src: /src/gpac/src/media_tools/dsmcc.c:1282,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 33
    argCount: 3
    argNames:
    - bs
    - BIOP_Header
    - ServiceGateway
    argTypes:
    - GF_BitStream*
    - GF_M2TS_DSMCC_BIOP_HEADER*
    - GF_M2TS_DSMCC_SERVICE_GATEWAY*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1285
      start: 1242
    functionDepth: 1
    functionLinenumber: 1242
    functionLinenumberEnd: 1285
    functionName: dsmcc_process_biop_stream_message
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_data
    - dsmcc_biop_get_context
    - GF_SAFEALLOC
    - GF_LOG
    - gf_calloc
    - gf_bs_read_int
    - dsmcc_free_biop_stream_message
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dsmcc_process_biop_stream_message(GF_BitStream* bs,GF_M2TS_DSMCC_BIOP_HEADER*
      BIOP_Header,GF_M2TS_DSMCC_SERVICE_GATEWAY* ServiceGateway)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1294,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1300,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1301,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dsmcc.c:1305,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 2
    argNames:
    - dsmcc_overlord
    - DownloadInfoIndication
    argTypes:
    - GF_M2TS_DSMCC_OVERLORD*
    - GF_M2TS_DSMCC_DOWNLOAD_INFO_RESP_INDIC*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1308
      start: 1290
    functionDepth: 1
    functionLinenumber: 1290
    functionLinenumberEnd: 1308
    functionName: dsmcc_create_module
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_calloc
    - gf_list_add
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_M2TS_DSMCC_MODULE
    signature: GF_M2TS_DSMCC_MODULE * dsmcc_create_module(GF_M2TS_DSMCC_OVERLORD*
      dsmcc_overlord, GF_M2TS_DSMCC_DOWNLOAD_INFO_RESP_INDIC* DownloadInfoIndication)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:1314,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1318,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1325,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1327,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1328,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1329,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dsmcc.c:1330,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1336,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1338,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1339,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1341,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dsmcc.c:1342,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1349,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1351,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1352,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1353,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dsmcc.c:1354,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1359,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1361,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1362,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:1366,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 41
    argCount: 3
    argNames:
    - bs
    - list
    - size
    argTypes:
    - GF_BitStream*
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1368
      start: 1310
    functionDepth: 1
    functionLinenumber: 1310
    functionLinenumberEnd: 1368
    functionName: dsmcc_biop_descriptor
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 3
    functionsReached:
    - gf_bs_read_data
    - GF_SAFEALLOC
    - GF_LOG
    - gf_bs_get_position
    - gf_calloc
    - gf_list_add
    - gf_bs_read_int
    linkageType: ''
    returnType: void
    signature: void dsmcc_biop_descriptor(GF_BitStream* bs,GF_List* list,u32 size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1375,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1376,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1378,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1379,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - bs
    - Context
    - serviceContextList_count
    argTypes:
    - GF_BitStream*
    - GF_M2TS_DSMCC_SERVICE_CONTEXT*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1382
      start: 1370
    functionDepth: 1
    functionLinenumber: 1370
    functionLinenumberEnd: 1382
    functionName: dsmcc_biop_get_context
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 5
    functionsReached:
    - gf_bs_read_data
    - gf_calloc
    - gf_bs_read_int
    linkageType: ''
    returnType: void
    signature: void dsmcc_biop_get_context(GF_BitStream* bs,GF_M2TS_DSMCC_SERVICE_CONTEXT*
      Context,u32 serviceContextList_count)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1388,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1392,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1393,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1394,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dsmcc.c:1395,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1398,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dsmcc.c:1399,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1400,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1401,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1402,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1404,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1407,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1413,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1414,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1416,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1419,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1420,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1421,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1422,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1424,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1427,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1429,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1432,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1434,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1438,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1440,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1443,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1444,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1445,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1447,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1449,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1452,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1454,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1457,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1458,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1460,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1463,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1465,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1468,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1469,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1472,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1473,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1481,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1482,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1484,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1487,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1488,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1490,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1493,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1494,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1495,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1496,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1497,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1498,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1499,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1500,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1501,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1503,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1506,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1507,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1509,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1511,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1512,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1514,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1516,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1517,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1520,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1522,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1523,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1530,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1534,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1536,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1537,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1539,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1540,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 149
    argCount: 2
    argNames:
    - bs
    - IOR
    argTypes:
    - GF_BitStream*
    - GF_M2TS_DSMCC_IOR*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1546
      start: 1384
    functionDepth: 1
    functionLinenumber: 1384
    functionLinenumberEnd: 1546
    functionName: dsmcc_biop_get_ior
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 2
    functionsReached:
    - gf_bs_read_data
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_calloc
    - gf_list_add
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dsmcc_biop_get_ior(GF_BitStream* bs,GF_M2TS_DSMCC_IOR* IOR)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1552,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1553,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1556,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:1557,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:1557,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 3
    argNames:
    - List
    - Parent_name
    - Name
    argTypes:
    - GF_List*
    - char*
    - GF_M2TS_DSMCC_BIOP_NAME
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1565
      start: 1548
    functionDepth: 1
    functionLinenumber: 1548
    functionLinenumberEnd: 1565
    functionName: dsmcc_check_element_validation
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dsmcc_check_element_validation(GF_List* List,char* Parent_name,GF_M2TS_DSMCC_BIOP_NAME
      Name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1570,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1573,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1577,1
    - Dst: dsmcc_get_directory
      Src: /src/gpac/src/media_tools/dsmcc.c:1579,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - List
    - objectKey_data
    argTypes:
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1586
      start: 1567
    functionDepth: 1
    functionLinenumber: 1567
    functionLinenumberEnd: 1586
    functionName: dsmcc_get_directory
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - dsmcc_get_directory
    - gf_list_get
    linkageType: ''
    returnType: GF_M2TS_DSMCC_DIR
    signature: GF_M2TS_DSMCC_DIR * dsmcc_get_directory(GF_List* List, u32 objectKey_data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1590,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1592,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 4
    argNames:
    - ServiceGateway_List
    - moduleId
    - downloadId
    - objectKey_data
    argTypes:
    - GF_List*
    - u16
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1598
      start: 1588
    functionDepth: 1
    functionLinenumber: 1588
    functionLinenumberEnd: 1598
    functionName: dsmcc_get_file
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_M2TS_DSMCC_FILE
    signature: GF_M2TS_DSMCC_FILE * dsmcc_get_file(GF_List* ServiceGateway_List, u16
      moduleId,u32 downloadId,u32 objectKey_data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1604,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dsmcc.c:1605,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dsmcc.c:1608,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dsmcc.c:1610,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1611,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - Dir
    - name
    argTypes:
    - GF_M2TS_DSMCC_DIR*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1615
      start: 1600
    functionDepth: 0
    functionLinenumber: 1600
    functionLinenumberEnd: 1615
    functionName: dsmcc_get_file_namepath
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_calloc
    - gf_strdup
    - sprintf
    linkageType: ''
    returnType: char
    signature: char * dsmcc_get_file_namepath(GF_M2TS_DSMCC_DIR* Dir,char* name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1623,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1626,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - module
    argTypes:
    - GF_M2TS_DSMCC_MODULE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1627
      start: 1620
    functionDepth: 0
    functionLinenumber: 1620
    functionLinenumberEnd: 1627
    functionName: dsmcc_delete_module
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void dsmcc_delete_module(GF_M2TS_DSMCC_MODULE* module)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1632,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1635,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - File
    argTypes:
    - GF_M2TS_DSMCC_FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1637
      start: 1629
    functionDepth: 0
    functionLinenumber: 1629
    functionLinenumberEnd: 1637
    functionName: dmscc_delete_file
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void dmscc_delete_file(GF_M2TS_DSMCC_FILE* File)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1644,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1647,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1650,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1652,1
    - Dst: dmscc_delete_file
      Src: /src/gpac/src/media_tools/dsmcc.c:1653,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dsmcc.c:1655,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1657,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1659,1
    - Dst: dmscc_delete_dir
      Src: /src/gpac/src/media_tools/dsmcc.c:1660,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dsmcc.c:1662,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1663,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - Dir
    argTypes:
    - GF_M2TS_DSMCC_DIR*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1664
      start: 1639
    functionDepth: 1
    functionLinenumber: 1639
    functionLinenumberEnd: 1664
    functionName: dmscc_delete_dir
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - dmscc_delete_dir
    - dmscc_delete_file
    - gf_list_count
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void dmscc_delete_dir(GF_M2TS_DSMCC_DIR* Dir)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1671,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1673,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1675,1
    - Dst: dmscc_delete_file
      Src: /src/gpac/src/media_tools/dsmcc.c:1676,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dsmcc.c:1678,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1680,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1682,1
    - Dst: dmscc_delete_dir
      Src: /src/gpac/src/media_tools/dsmcc.c:1683,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dsmcc.c:1685,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1686,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - Servicegateway
    argTypes:
    - GF_M2TS_DSMCC_SERVICE_GATEWAY*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1687
      start: 1666
    functionDepth: 2
    functionLinenumber: 1666
    functionLinenumberEnd: 1687
    functionName: dmscc_delete_servicegateway
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - dmscc_delete_dir
    - dmscc_delete_file
    - gf_list_count
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void dmscc_delete_servicegateway(GF_M2TS_DSMCC_SERVICE_GATEWAY* Servicegateway)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1693,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1695,1
    - Dst: dsmcc_delete_module
      Src: /src/gpac/src/media_tools/dsmcc.c:1696,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dsmcc.c:1698,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1700,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1702,1
    - Dst: dsmcc_delete_module
      Src: /src/gpac/src/media_tools/dsmcc.c:1703,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dsmcc.c:1705,1
    - Dst: dmscc_delete_servicegateway
      Src: /src/gpac/src/media_tools/dsmcc.c:1706,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1709,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1712,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - dsmcc_overlord
    argTypes:
    - GF_M2TS_DSMCC_OVERLORD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1713
      start: 1689
    functionDepth: 3
    functionLinenumber: 1689
    functionLinenumberEnd: 1713
    functionName: gf_m2ts_delete_dsmcc_overlord
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - dmscc_delete_servicegateway
    - gf_free
    - gf_list_get
    - dsmcc_delete_module
    - gf_list_count
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_delete_dsmcc_overlord(GF_M2TS_DSMCC_OVERLORD* dsmcc_overlord)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1717,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1718,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - BIOP_Header
    argTypes:
    - GF_M2TS_DSMCC_BIOP_HEADER*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1719
      start: 1715
    functionDepth: 0
    functionLinenumber: 1715
    functionLinenumberEnd: 1719
    functionName: dsmcc_free_biop_header
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void dsmcc_free_biop_header(GF_M2TS_DSMCC_BIOP_HEADER* BIOP_Header)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1723,1
    - Dst: dsmcc_free_biop_context
      Src: /src/gpac/src/media_tools/dsmcc.c:1724,1
    - Dst: dsmcc_free_biop_name
      Src: /src/gpac/src/media_tools/dsmcc.c:1725,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1726,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - BIOP_Directory
    argTypes:
    - GF_M2TS_DSMCC_BIOP_DIRECTORY*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1727
      start: 1721
    functionDepth: 1
    functionLinenumber: 1721
    functionLinenumberEnd: 1727
    functionName: dsmcc_free_biop_directory
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_free
    - dsmcc_free_biop_name
    - dsmcc_free_biop_context
    linkageType: ''
    returnType: void
    signature: void dsmcc_free_biop_directory(GF_M2TS_DSMCC_BIOP_DIRECTORY* BIOP_Directory)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dsmcc_free_biop_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:1731,1
    - Dst: dsmcc_free_biop_context
      Src: /src/gpac/src/media_tools/dsmcc.c:1732,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1734,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1736,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - BIOP_File
    argTypes:
    - GF_M2TS_DSMCC_BIOP_FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1737
      start: 1729
    functionDepth: 1
    functionLinenumber: 1729
    functionLinenumberEnd: 1737
    functionName: dsmcc_free_biop_file
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_free
    - dsmcc_free_biop_context
    - dsmcc_free_biop_descriptor
    linkageType: ''
    returnType: void
    signature: void dsmcc_free_biop_file(GF_M2TS_DSMCC_BIOP_FILE* BIOP_File)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1744,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1748,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1754,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1757,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1761,1
    - Dst: dsmcc_free_biop_context
      Src: /src/gpac/src/media_tools/dsmcc.c:1764,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1767,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 1
    argNames:
    - BIOP_StreamEvent
    argTypes:
    - GF_M2TS_DSMCC_BIOP_STREAM_EVENT*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1769
      start: 1739
    functionDepth: 1
    functionLinenumber: 1739
    functionLinenumberEnd: 1769
    functionName: dsmcc_free_biop_stream_event
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_free
    - dsmcc_free_biop_context
    linkageType: ''
    returnType: void
    signature: void dsmcc_free_biop_stream_event(GF_M2TS_DSMCC_BIOP_STREAM_EVENT*
      BIOP_StreamEvent)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1774,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1778,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1782,1
    - Dst: dsmcc_free_biop_context
      Src: /src/gpac/src/media_tools/dsmcc.c:1785,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - BIOP_StreamMessage
    argTypes:
    - GF_M2TS_DSMCC_BIOP_STREAM_MESSAGE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1786
      start: 1771
    functionDepth: 1
    functionLinenumber: 1771
    functionLinenumberEnd: 1786
    functionName: dsmcc_free_biop_stream_message
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_free
    - dsmcc_free_biop_context
    linkageType: ''
    returnType: void
    signature: void dsmcc_free_biop_stream_message(GF_M2TS_DSMCC_BIOP_STREAM_MESSAGE*
      BIOP_StreamMessage)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1793,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1796,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1804,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1806,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1808,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1810,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1822,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1825,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1828,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1831,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1840,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1844,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dsmcc.c:1845,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1846,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dsmcc.c:1848,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 44
    argCount: 1
    argNames:
    - IOR
    argTypes:
    - GF_M2TS_DSMCC_IOR*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1849
      start: 1788
    functionDepth: 1
    functionLinenumber: 1788
    functionLinenumberEnd: 1849
    functionName: dsmcc_free_biop_ior
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - GF_SAFEALLOC
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void dsmcc_free_biop_ior(GF_M2TS_DSMCC_IOR* IOR)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1853,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1855,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1861,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dsmcc.c:1862,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1863,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1868,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dsmcc.c:1869,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1870,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1876,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dsmcc.c:1877,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1879,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1881,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dsmcc.c:1892,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 1
    argNames:
    - list
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1893
      start: 1851
    functionDepth: 1
    functionLinenumber: 1851
    functionLinenumberEnd: 1893
    functionName: dsmcc_free_biop_descriptor
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void dsmcc_free_biop_descriptor(GF_List* list)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1902,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1905,1
    - Dst: dsmcc_free_biop_ior
      Src: /src/gpac/src/media_tools/dsmcc.c:1908,1
    - Dst: dsmcc_free_biop_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:1909,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - Name
    - nb_name
    argTypes:
    - GF_M2TS_DSMCC_BIOP_NAME*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1911
      start: 1896
    functionDepth: 2
    functionLinenumber: 1896
    functionLinenumberEnd: 1911
    functionName: dsmcc_free_biop_name
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_free
    - dsmcc_free_biop_ior
    - dsmcc_free_biop_descriptor
    linkageType: ''
    returnType: void
    signature: void dsmcc_free_biop_name(GF_M2TS_DSMCC_BIOP_NAME* Name, u32 nb_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1918,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1921,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - Context
    - serviceContextList_count
    argTypes:
    - GF_M2TS_DSMCC_SERVICE_CONTEXT*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1922
      start: 1913
    functionDepth: 0
    functionLinenumber: 1913
    functionLinenumberEnd: 1922
    functionName: dsmcc_free_biop_context
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 4
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void dsmcc_free_biop_context(GF_M2TS_DSMCC_SERVICE_CONTEXT* Context,u32
      serviceContextList_count)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/img.c:59,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/img.c:60,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/img.c:69,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/img.c:70,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/img.c:71,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/img.c:76,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/media_tools/img.c:77,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/img.c:78,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/img.c:79,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/img.c:83,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/img.c:85,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/img.c:86,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/img.c:88,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/img.c:104,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/img.c:105,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/img.c:106,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/img.c:107,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/img.c:108,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/img.c:119,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/img.c:120,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/img.c:121,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/img.c:122,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/img.c:123,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/img.c:124,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/img.c:125,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/img.c:131,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/img.c:131,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/img.c:131,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/img.c:132,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/img.c:132,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/img.c:133,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/img.c:135,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/img.c:135,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/img.c:136,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/img.c:136,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/img.c:138,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/img.c:139,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/img.c:145,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/img.c:146,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/img.c:156,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/img.c:161,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/img.c:163,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/img.c:164,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/img.c:168,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/img.c:172,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/img.c:173,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/img.c:181,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/img.c:182,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/img.c:183,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/media_tools/img.c:190,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/img.c:197,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/img.c:198,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/img.c:202,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/img.c:203,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/img.c:204,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/img.c:205,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/img.c:214,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 131
    argCount: 6
    argNames:
    - bs
    - codecid
    - width
    - height
    - dsi
    - dsi_len
    argTypes:
    - GF_BitStream*
    - u32*
    - u32*
    - u32*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 215
    functionName: gf_img_parse
    functionSourceFile: /src/gpac/src/media_tools/img.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_data
    - gf_bs_read_u32
    - gf_bs_seek
    - gf_bs_read_u16
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_u16
    - gf_bs_get_position
    - gf_bs_del
    - gf_bs_read_int
    - gf_bs_read_u8
    - gf_bs_available
    - gf_bs_write_u8
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_img_parse(GF_BitStream *bs, u32 *codecid, u32 *width,
      u32 *height, u8 **dsi, u32 *dsi_len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - cinfo
    - lev
    argTypes:
    - j_common_ptr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: gf_jpeg_nonfatal_error2
    functionSourceFile: /src/gpac/src/media_tools/img.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_jpeg_nonfatal_error2(j_common_ptr cinfo, int lev)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/img.c:246,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - cinfo
    argTypes:
    - j_common_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 240
    functionDepth: 1
    functionLinenumber: 240
    functionLinenumberEnd: 248
    functionName: gf_jpeg_output_message
    functionSourceFile: /src/gpac/src/media_tools/img.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void gf_jpeg_output_message (j_common_ptr cinfo)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_jpeg_output_message
      Src: /src/gpac/src/media_tools/img.c:254,1
    - Dst: longjmp
      Src: /src/gpac/src/media_tools/img.c:255,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - cinfo
    argTypes:
    - j_common_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 250
    functionDepth: 2
    functionLinenumber: 250
    functionLinenumberEnd: 257
    functionName: gf_jpeg_fatal_error
    functionSourceFile: /src/gpac/src/media_tools/img.c
    functionUses: 0
    functionsReached:
    - longjmp
    - gf_jpeg_output_message
    linkageType: ''
    returnType: void
    signature: void gf_jpeg_fatal_error(j_common_ptr cinfo)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - cinfo
    argTypes:
    - j_decompress_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 259
    functionName: gf_jpeg_stub
    functionSourceFile: /src/gpac/src/media_tools/img.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_jpeg_stub(j_decompress_ptr cinfo)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - cinfo
    argTypes:
    - j_decompress_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 262
    functionDepth: 0
    functionLinenumber: 262
    functionLinenumberEnd: 265
    functionName: gf_jpeg_fill_input_buffer
    functionSourceFile: /src/gpac/src/media_tools/img.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: boolean
    signature: boolean gf_jpeg_fill_input_buffer(j_decompress_ptr cinfo)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - cinfo
    - num_bytes
    argTypes:
    - j_decompress_ptr
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 281
    functionName: gf_jpeg_skip_input_data
    functionSourceFile: /src/gpac/src/media_tools/img.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_jpeg_skip_input_data(j_decompress_ptr cinfo, long num_bytes)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/media_tools/img.c:296,1
    - Dst: gf_jpeg_fatal_error
      Src: /src/gpac/src/media_tools/img.c:297,1
    - Dst: gf_jpeg_output_message
      Src: /src/gpac/src/media_tools/img.c:298,1
    - Dst: gf_jpeg_nonfatal_error2
      Src: /src/gpac/src/media_tools/img.c:299,1
    - Dst: gf_jpeg_fill_input_buffer
      Src: /src/gpac/src/media_tools/img.c:300,1
    - Dst: gf_jpeg_skip_input_data
      Src: /src/gpac/src/media_tools/img.c:301,1
    - Dst: jpeg_std_error
      Src: /src/gpac/src/media_tools/img.c:306,1
    - Dst: setjmp
      Src: /src/gpac/src/media_tools/img.c:310,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/img.c:311,1
    - Dst: jpeg_destroy_decompress
      Src: /src/gpac/src/media_tools/img.c:312,1
    - Dst: jpeg_create_decompress
      Src: /src/gpac/src/media_tools/img.c:317,1
    - Dst: jpeg_read_header
      Src: /src/gpac/src/media_tools/img.c:332,1
    - Dst: jpeg_destroy_decompress
      Src: /src/gpac/src/media_tools/img.c:336,1
    - Dst: jpeg_destroy_decompress
      Src: /src/gpac/src/media_tools/img.c:352,1
    - Dst: jpeg_destroy_decompress
      Src: /src/gpac/src/media_tools/img.c:357,1
    - Dst: jpeg_start_decompress
      Src: /src/gpac/src/media_tools/img.c:366,1
    - Dst: jpeg_destroy_decompress
      Src: /src/gpac/src/media_tools/img.c:367,1
    - Dst: jpeg_destroy_decompress
      Src: /src/gpac/src/media_tools/img.c:371,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/img.c:372,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/img.c:377,1
    - Dst: jpeg_read_scanlines
      Src: /src/gpac/src/media_tools/img.c:383,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/img.c:390,1
    - Dst: jpeg_finish_decompress
      Src: /src/gpac/src/media_tools/img.c:408,1
    - Dst: jpeg_destroy_decompress
      Src: /src/gpac/src/media_tools/img.c:409,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/img.c:411,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 102
    argCount: 8
    argNames:
    - jpg
    - jpg_size
    - width
    - height
    - pixel_format
    - dst
    - dst_size
    - dst_nb_comp
    argTypes:
    - u8*
    - u32
    - u32*
    - u32*
    - u32*
    - u8*
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 285
    functionDepth: 3
    functionLinenumber: 285
    functionLinenumberEnd: 414
    functionName: gf_img_jpeg_dec
    functionSourceFile: /src/gpac/src/media_tools/img.c
    functionUses: 2
    functionsReached:
    - jpeg_destroy_decompress
    - jpeg_read_header
    - gf_malloc
    - jpeg_finish_decompress
    - gf_free
    - setjmp
    - GF_LOG
    - memcpy
    - jpeg_start_decompress
    - gf_jpeg_output_message
    - gf_jpeg_skip_input_data
    - gf_sys_is_cov_mode
    - jpeg_read_scanlines
    - jpeg_create_decompress
    - jpeg_std_error
    - gf_jpeg_fatal_error
    - gf_jpeg_fill_input_buffer
    - gf_jpeg_nonfatal_error2
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_img_jpeg_dec(u8 *jpg, u32 jpg_size, u32 *width, u32 *height,
      u32 *pixel_format, u8 *dst, u32 *dst_size, u32 dst_nb_comp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - jpg
    - jpg_size
    - width
    - height
    - pixel_format
    - dst
    - dst_size
    - dst_nb_comp
    argTypes:
    - u8*
    - u32
    - u32*
    - u32*
    - u32*
    - u8*
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 417
    functionDepth: 0
    functionLinenumber: 417
    functionLinenumberEnd: 421
    functionName: gf_img_jpeg_dec
    functionSourceFile: /src/gpac/src/media_tools/img.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_img_jpeg_dec(u8 *jpg, u32 jpg_size, u32 *width, u32 *height,
      u32 *pixel_format, u8 *dst, u32 *dst_size, u32 dst_nb_comp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: png_get_io_ptr
      Src: /src/gpac/src/media_tools/img.c:438,1
    - Dst: png_error
      Src: /src/gpac/src/media_tools/img.c:441,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/img.c:443,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - png_ptr
    - data
    - length
    argTypes:
    - png_structp
    - png_bytep
    - png_size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 436
    functionDepth: 0
    functionLinenumber: 436
    functionLinenumberEnd: 446
    functionName: gf_png_user_read_data
    functionSourceFile: /src/gpac/src/media_tools/img.c
    functionUses: 0
    functionsReached:
    - png_error
    - memcpy
    - png_get_io_ptr
    linkageType: ''
    returnType: void
    signature: void gf_png_user_read_data(png_structp png_ptr, png_bytep data, png_size_t
      length)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: longjmp
      Src: /src/gpac/src/media_tools/img.c:450,1
    - Dst: png_jmpbuf
      Src: /src/gpac/src/media_tools/img.c:450,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - png_ptr
    - error_msg
    argTypes:
    - png_structp
    - png_const_charp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 447
    functionDepth: 0
    functionLinenumber: 447
    functionLinenumberEnd: 452
    functionName: gf_png_user_error_fn
    functionSourceFile: /src/gpac/src/media_tools/img.c
    functionUses: 0
    functionsReached:
    - png_jmpbuf
    - longjmp
    linkageType: ''
    returnType: void
    signature: void gf_png_user_error_fn(png_structp png_ptr,png_const_charp error_msg)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: png_sig_cmp
      Src: /src/gpac/src/media_tools/img.c:466,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/img.c:467,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/media_tools/img.c:476,1
    - Dst: gf_png_user_error_fn
      Src: /src/gpac/src/media_tools/img.c:477,1
    - Dst: png_create_read_struct
      Src: /src/gpac/src/media_tools/img.c:481,1
    - Dst: png_create_info_struct
      Src: /src/gpac/src/media_tools/img.c:483,1
    - Dst: png_destroy_read_struct
      Src: /src/gpac/src/media_tools/img.c:485,1
    - Dst: setjmp
      Src: /src/gpac/src/media_tools/img.c:488,1
    - Dst: png_jmpbuf
      Src: /src/gpac/src/media_tools/img.c:488,1
    - Dst: png_destroy_info_struct
      Src: /src/gpac/src/media_tools/img.c:489,1
    - Dst: png_destroy_read_struct
      Src: /src/gpac/src/media_tools/img.c:490,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/img.c:491,1
    - Dst: png_set_read_fn
      Src: /src/gpac/src/media_tools/img.c:494,1
    - Dst: png_set_error_fn
      Src: /src/gpac/src/media_tools/img.c:495,1
    - Dst: png_read_info
      Src: /src/gpac/src/media_tools/img.c:497,1
    - Dst: png_get_color_type
      Src: /src/gpac/src/media_tools/img.c:500,1
    - Dst: png_set_expand
      Src: /src/gpac/src/media_tools/img.c:501,1
    - Dst: png_read_update_info
      Src: /src/gpac/src/media_tools/img.c:502,1
    - Dst: png_get_tRNS
      Src: /src/gpac/src/media_tools/img.c:505,1
    - Dst: png_set_tRNS_to_alpha
      Src: /src/gpac/src/media_tools/img.c:507,1
    - Dst: png_read_update_info
      Src: /src/gpac/src/media_tools/img.c:508,1
    - Dst: png_get_image_width
      Src: /src/gpac/src/media_tools/img.c:510,1
    - Dst: png_get_image_height
      Src: /src/gpac/src/media_tools/img.c:511,1
    - Dst: png_get_color_type
      Src: /src/gpac/src/media_tools/img.c:513,1
    - Dst: png_destroy_info_struct
      Src: /src/gpac/src/media_tools/img.c:527,1
    - Dst: png_destroy_read_struct
      Src: /src/gpac/src/media_tools/img.c:528,1
    - Dst: png_get_rowbytes
      Src: /src/gpac/src/media_tools/img.c:533,1
    - Dst: png_get_image_height
      Src: /src/gpac/src/media_tools/img.c:533,1
    - Dst: png_destroy_info_struct
      Src: /src/gpac/src/media_tools/img.c:537,1
    - Dst: png_destroy_read_struct
      Src: /src/gpac/src/media_tools/img.c:538,1
    - Dst: png_get_rowbytes
      Src: /src/gpac/src/media_tools/img.c:545,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/img.c:546,1
    - Dst: png_get_image_height
      Src: /src/gpac/src/media_tools/img.c:546,1
    - Dst: png_get_image_height
      Src: /src/gpac/src/media_tools/img.c:547,1
    - Dst: png_read_image
      Src: /src/gpac/src/media_tools/img.c:550,1
    - Dst: png_read_end
      Src: /src/gpac/src/media_tools/img.c:551,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/img.c:552,1
    - Dst: png_destroy_info_struct
      Src: /src/gpac/src/media_tools/img.c:554,1
    - Dst: png_destroy_read_struct
      Src: /src/gpac/src/media_tools/img.c:555,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 81
    argCount: 7
    argNames:
    - png
    - png_size
    - width
    - height
    - pixel_format
    - dst
    - dst_size
    argTypes:
    - u8*
    - u32
    - u32*
    - u32*
    - u32*
    - u8*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 557
      start: 455
    functionDepth: 1
    functionLinenumber: 455
    functionLinenumberEnd: 557
    functionName: gf_img_png_dec
    functionSourceFile: /src/gpac/src/media_tools/img.c
    functionUses: 3
    functionsReached:
    - gf_free
    - png_read_info
    - png_read_image
    - png_set_error_fn
    - gf_sys_is_cov_mode
    - png_read_update_info
    - png_get_rowbytes
    - png_destroy_info_struct
    - png_get_color_type
    - png_get_tRNS
    - gf_png_user_error_fn
    - png_get_image_height
    - png_jmpbuf
    - png_create_read_struct
    - png_get_image_width
    - png_sig_cmp
    - GF_LOG
    - png_set_tRNS_to_alpha
    - png_set_expand
    - gf_malloc
    - png_create_info_struct
    - png_read_end
    - setjmp
    - png_destroy_read_struct
    - png_set_read_fn
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_img_png_dec(u8 *png, u32 png_size, u32 *width, u32 *height,
      u32 *pixel_format, u8 *dst, u32 *dst_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: png_get_io_ptr
      Src: /src/gpac/src/media_tools/img.c:562,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/img.c:563,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - png
    - data
    - size
    argTypes:
    - png_structp
    - png_bytep
    - png_size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 560
    functionDepth: 0
    functionLinenumber: 560
    functionLinenumberEnd: 565
    functionName: gf_png_write
    functionSourceFile: /src/gpac/src/media_tools/img.c
    functionUses: 0
    functionsReached:
    - memcpy
    - png_get_io_ptr
    linkageType: ''
    returnType: void
    signature: void gf_png_write(png_structp png, png_bytep data, png_size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - png
    argTypes:
    - png_structp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 568
      start: 566
    functionDepth: 0
    functionLinenumber: 566
    functionLinenumberEnd: 568
    functionName: gf_png_flush
    functionSourceFile: /src/gpac/src/media_tools/img.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_png_flush(png_structp png)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: png_create_write_struct
      Src: /src/gpac/src/media_tools/img.c:609,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/media_tools/img.c:615,1
    - Dst: gf_png_flush
      Src: /src/gpac/src/media_tools/img.c:616,1
    - Dst: png_create_info_struct
      Src: /src/gpac/src/media_tools/img.c:621,1
    - Dst: png_destroy_write_struct
      Src: /src/gpac/src/media_tools/img.c:623,1
    - Dst: setjmp
      Src: /src/gpac/src/media_tools/img.c:630,1
    - Dst: png_jmpbuf
      Src: /src/gpac/src/media_tools/img.c:630,1
    - Dst: png_destroy_write_struct
      Src: /src/gpac/src/media_tools/img.c:631,1
    - Dst: png_set_write_fn
      Src: /src/gpac/src/media_tools/img.c:637,1
    - Dst: png_set_IHDR
      Src: /src/gpac/src/media_tools/img.c:639,1
    - Dst: png_set_sBIT
      Src: /src/gpac/src/media_tools/img.c:647,1
    - Dst: png_set_text
      Src: /src/gpac/src/media_tools/img.c:665,1
    - Dst: png_write_info
      Src: /src/gpac/src/media_tools/img.c:668,1
    - Dst: png_set_shift
      Src: /src/gpac/src/media_tools/img.c:673,1
    - Dst: png_set_packing
      Src: /src/gpac/src/media_tools/img.c:676,1
    - Dst: png_set_bgr
      Src: /src/gpac/src/media_tools/img.c:680,1
    - Dst: png_set_filler
      Src: /src/gpac/src/media_tools/img.c:684,1
    - Dst: png_set_bgr
      Src: /src/gpac/src/media_tools/img.c:685,1
    - Dst: png_set_filler
      Src: /src/gpac/src/media_tools/img.c:688,1
    - Dst: png_set_bgr
      Src: /src/gpac/src/media_tools/img.c:691,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/img.c:694,1
    - Dst: png_write_image
      Src: /src/gpac/src/media_tools/img.c:698,1
    - Dst: png_write_end
      Src: /src/gpac/src/media_tools/img.c:699,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/img.c:700,1
    - Dst: png_destroy_write_struct
      Src: /src/gpac/src/media_tools/img.c:702,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 92
    argCount: 7
    argNames:
    - data
    - width
    - height
    - stride
    - pixel_format
    - dst
    - dst_size
    argTypes:
    - u8*
    - u32
    - u32
    - s32
    - u32
    - u8*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 571
    functionDepth: 1
    functionLinenumber: 571
    functionLinenumberEnd: 706
    functionName: gf_img_png_enc
    functionSourceFile: /src/gpac/src/media_tools/img.c
    functionUses: 2
    functionsReached:
    - gf_free
    - png_write_info
    - gf_sys_is_cov_mode
    - png_set_bgr
    - gf_png_flush
    - png_set_IHDR
    - png_write_end
    - png_set_filler
    - png_set_sBIT
    - png_create_write_struct
    - png_jmpbuf
    - png_write_image
    - png_destroy_write_struct
    - gf_malloc
    - png_set_packing
    - png_create_info_struct
    - png_set_text
    - png_set_write_fn
    - png_set_shift
    - setjmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_img_png_enc(u8 *data, u32 width, u32 height, s32 stride,
      u32 pixel_format, u8 *dst, u32 *dst_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - png
    - png_size
    - width
    - height
    - pixel_format
    - dst
    - dst_size
    argTypes:
    - u8*
    - u32
    - u32*
    - u32*
    - u32*
    - u8*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 713
      start: 709
    functionDepth: 0
    functionLinenumber: 709
    functionLinenumberEnd: 713
    functionName: gf_img_png_dec
    functionSourceFile: /src/gpac/src/media_tools/img.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_img_png_dec(u8 *png, u32 png_size, u32 *width, u32 *height,
      u32 *pixel_format, u8 *dst, u32 *dst_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - data
    - width
    - height
    - stride
    - pixel_format
    - dst
    - dst_size
    argTypes:
    - u8*
    - u32
    - u32
    - s32
    - u32
    - u8*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 718
      start: 714
    functionDepth: 0
    functionLinenumber: 714
    functionLinenumberEnd: 718
    functionName: gf_img_png_enc
    functionSourceFile: /src/gpac/src/media_tools/img.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_img_png_enc(u8 *data, u32 width, u32 height, s32 stride,
      u32 pixel_format, u8 *dst, u32 *dst_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/html5_media.c:37,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/html5_media.c:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - timescale
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 42
    functionName: gf_html_timeranges_new
    functionSourceFile: /src/gpac/src/media_tools/html5_media.c
    functionUses: 2
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_HTML_MediaTimeRanges
    signature: GF_HTML_MediaTimeRanges *gf_html_timeranges_new(u32 timescale)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/html5_media.c:48,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_media.c:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - timeranges
    - time
    argTypes:
    - GF_HTML_MediaTimeRanges*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 52
    functionName: gf_html_timeranges_add_time
    functionSourceFile: /src/gpac/src/media_tools/html5_media.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_html_timeranges_add_time(GF_HTML_MediaTimeRanges *timeranges,
      u64 time)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_html_timeranges_add_time
      Src: /src/gpac/src/media_tools/html5_media.c:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - timeranges
    - start
    argTypes:
    - GF_HTML_MediaTimeRanges*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: gf_html_timeranges_add_start
    functionSourceFile: /src/gpac/src/media_tools/html5_media.c
    functionUses: 1
    functionsReached:
    - gf_html_timeranges_add_time
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_html_timeranges_add_start(GF_HTML_MediaTimeRanges *timeranges,
      u64 start)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_html_timeranges_add_time
      Src: /src/gpac/src/media_tools/html5_media.c:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - timeranges
    - end
    argTypes:
    - GF_HTML_MediaTimeRanges*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 2
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: gf_html_timeranges_add_end
    functionSourceFile: /src/gpac/src/media_tools/html5_media.c
    functionUses: 1
    functionsReached:
    - gf_html_timeranges_add_time
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_html_timeranges_add_end(GF_HTML_MediaTimeRanges *timeranges,
      u64 end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_media.c:66,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_media.c:68,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_media.c:69,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/html5_media.c:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ranges
    argTypes:
    - GF_HTML_MediaTimeRanges*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 72
    functionName: gf_html_timeranges_reset
    functionSourceFile: /src/gpac/src/media_tools/html5_media.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_html_timeranges_reset(GF_HTML_MediaTimeRanges *ranges)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_html_timeranges_reset
      Src: /src/gpac/src/media_tools/html5_media.c:76,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/html5_media.c:77,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_media.c:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ranges
    argTypes:
    - GF_HTML_MediaTimeRanges*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 74
    functionDepth: 2
    functionLinenumber: 74
    functionLinenumberEnd: 80
    functionName: gf_html_timeranges_del
    functionSourceFile: /src/gpac/src/media_tools/html5_media.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_html_timeranges_reset
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_html_timeranges_del(GF_HTML_MediaTimeRanges *ranges)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/html5_media.c:85,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_media.c:87,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_media.c:89,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_media.c:90,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_media.c:93,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_media.c:95,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_media.c:97,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_media.c:102,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/html5_media.c:104,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - ranges
    argTypes:
    - GF_HTML_MediaTimeRanges*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 106
    functionName: gf_html_timeranges_merge
    functionSourceFile: /src/gpac/src/media_tools/html5_media.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_list_get
    - gf_list_count
    - gf_list_add
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_html_timeranges_merge(GF_HTML_MediaTimeRanges *ranges)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_html_timeranges_new
      Src: /src/gpac/src/media_tools/html5_media.c:113,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_media.c:117,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_media.c:119,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_media.c:136,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_media.c:137,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_media.c:139,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_media.c:140,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_media.c:143,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_media.c:144,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_media.c:152,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_media.c:154,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_media.c:187,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_media.c:195,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_media.c:196,1
    - Dst: gf_html_timeranges_merge
      Src: /src/gpac/src/media_tools/html5_media.c:200,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 71
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - GF_HTML_MediaTimeRanges*
    - GF_HTML_MediaTimeRanges*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 109
    functionDepth: 2
    functionLinenumber: 109
    functionLinenumberEnd: 202
    functionName: gf_html_timeranges_union
    functionSourceFile: /src/gpac/src/media_tools/html5_media.c
    functionUses: 0
    functionsReached:
    - gf_html_timeranges_new
    - gf_list_get
    - gf_list_count
    - gf_html_timeranges_merge
    - gf_list_add
    linkageType: ''
    returnType: GF_HTML_MediaTimeRanges
    signature: GF_HTML_MediaTimeRanges *gf_html_timeranges_union(GF_HTML_MediaTimeRanges
      *a, GF_HTML_MediaTimeRanges *b)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_html_timeranges_new
      Src: /src/gpac/src/media_tools/html5_media.c:209,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_media.c:212,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_media.c:213,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_media.c:218,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_media.c:219,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_media.c:221,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_media.c:222,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_media.c:233,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_media.c:235,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_media.c:240,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_media.c:248,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_media.c:250,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_media.c:256,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 50
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - GF_HTML_MediaTimeRanges*
    - GF_HTML_MediaTimeRanges*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 204
    functionDepth: 2
    functionLinenumber: 204
    functionLinenumberEnd: 268
    functionName: gf_html_timeranges_intersection
    functionSourceFile: /src/gpac/src/media_tools/html5_media.c
    functionUses: 1
    functionsReached:
    - gf_html_timeranges_new
    - gf_list_count
    - gf_list_get
    - gf_list_add
    linkageType: ''
    returnType: GF_HTML_MediaTimeRanges
    signature: GF_HTML_MediaTimeRanges *gf_html_timeranges_intersection(GF_HTML_MediaTimeRanges
      *a, GF_HTML_MediaTimeRanges *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_html_media_track_new
      Src: /src/gpac/src/media_tools/html5_media.c:275,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/html5_media.c:276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 8
    argNames:
    - tracklist
    - type
    - mime
    - enable_or_selected
    - id
    - kind
    - label
    - lang
    argTypes:
    - GF_HTML_TrackList*
    - GF_HTML_TrackType
    - char*
    - Bool
    - char*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 270
    functionDepth: 1
    functionLinenumber: 270
    functionLinenumberEnd: 278
    functionName: html_media_add_new_track_to_list
    functionSourceFile: /src/gpac/src/media_tools/html5_media.c
    functionUses: 1
    functionsReached:
    - gf_html_media_track_new
    - gf_list_add
    linkageType: ''
    returnType: GF_HTML_Track
    signature: "GF_HTML_Track *html_media_add_new_track_to_list(GF_HTML_TrackList
      *tracklist,\n        GF_HTML_TrackType type, const char *mime, Bool enable_or_selected,\n
      \       const char *id, const char *kind, const char *label, const char *lang)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_media.c:283,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_media.c:285,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/html5_media.c:286,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - tracklist
    - id
    argTypes:
    - GF_HTML_TrackList*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 280
    functionDepth: 1
    functionLinenumber: 280
    functionLinenumberEnd: 292
    functionName: html_media_tracklist_has_track
    functionSourceFile: /src/gpac/src/media_tools/html5_media.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: Bool
    signature: Bool html_media_tracklist_has_track(GF_HTML_TrackList *tracklist, const
      char *id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_media.c:298,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_media.c:301,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/html5_media.c:302,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - tracklist
    - id
    argTypes:
    - GF_HTML_TrackList*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 294
    functionDepth: 1
    functionLinenumber: 294
    functionLinenumberEnd: 308
    functionName: html_media_tracklist_get_track
    functionSourceFile: /src/gpac/src/media_tools/html5_media.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: GF_HTML_Track
    signature: GF_HTML_Track *html_media_tracklist_get_track(GF_HTML_TrackList *tracklist,
      const char *id)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_media.c:312,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_media.c:314,1
    - Dst: gf_html_track_del
      Src: /src/gpac/src/media_tools/html5_media.c:315,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/html5_media.c:316,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/html5_media.c:318,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - tlist
    argTypes:
    - GF_HTML_TrackList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 310
    functionDepth: 1
    functionLinenumber: 310
    functionLinenumberEnd: 319
    functionName: gf_html_tracklist_del
    functionSourceFile: /src/gpac/src/media_tools/html5_media.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_html_track_del
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_html_tracklist_del(GF_HTML_TrackList *tlist)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/html5_media.c:325,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/html5_media.c:328,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/html5_media.c:329,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/html5_media.c:330,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/html5_media.c:331,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/html5_media.c:332,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 7
    argNames:
    - type
    - mime
    - enable_or_selected
    - id
    - kind
    - label
    - lang
    argTypes:
    - GF_HTML_TrackType
    - char*
    - Bool
    - char*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 321
    functionDepth: 1
    functionLinenumber: 321
    functionLinenumberEnd: 336
    functionName: gf_html_media_track_new
    functionSourceFile: /src/gpac/src/media_tools/html5_media.c
    functionUses: 2
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_HTML_Track
    signature: "GF_HTML_Track *gf_html_media_track_new(GF_HTML_TrackType type, const
      char *mime, Bool enable_or_selected,\n                                       const
      char *id, const char *kind, const char *label, const char *lang)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_media.c:340,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_media.c:341,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_media.c:342,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_media.c:343,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_media.c:344,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/html5_media.c:347,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_media.c:348,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_media.c:350,1
    - Dst: gf_mse_packet_del
      Src: /src/gpac/src/media_tools/html5_media.c:351,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/html5_media.c:352,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/html5_media.c:354,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/html5_media.c:355,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/media_tools/html5_media.c:356,1
    - Dst: assert
      Src: /src/gpac/src/media_tools/html5_media.c:358,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_media.c:360,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 1
    argNames:
    - track
    argTypes:
    - GF_HTML_Track*
    assertStmts:
    - condition: (track->buffer == NULL)
      pos:
        line_end: 357
        line_start: 357
        source_file: /src/gpac/src/media_tools/html5_media.c
    constantsTouched: []
    func_position:
      end: 361
      start: 338
    functionDepth: 1
    functionLinenumber: 338
    functionLinenumberEnd: 361
    functionName: gf_html_track_del
    functionSourceFile: /src/gpac/src/media_tools/html5_media.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_list_get
    - assert
    - gf_list_count
    - gf_mx_v
    - gf_list_del
    - gf_mse_packet_del
    - gf_list_rem
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void gf_html_track_del(GF_HTML_Track *track)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/html5_media.c:366,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/html5_media.c:370,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/html5_media.c:371,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/html5_media.c:372,1
    - Dst: gf_html_timeranges_new
      Src: /src/gpac/src/media_tools/html5_media.c:373,1
    - Dst: gf_html_timeranges_new
      Src: /src/gpac/src/media_tools/html5_media.c:374,1
    - Dst: gf_html_timeranges_new
      Src: /src/gpac/src/media_tools/html5_media.c:375,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - media_node
    - mc
    argTypes:
    - GF_Node*
    - GF_HTML_MediaController*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 363
    functionDepth: 2
    functionLinenumber: 363
    functionLinenumberEnd: 377
    functionName: gf_html_media_element_new
    functionSourceFile: /src/gpac/src/media_tools/html5_media.c
    functionUses: 1
    functionsReached:
    - gf_html_timeranges_new
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_HTML_MediaElement
    signature: GF_HTML_MediaElement *gf_html_media_element_new(GF_Node *media_node,
      GF_HTML_MediaController *mc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_media.c:381,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_media.c:382,1
    - Dst: gf_html_tracklist_del
      Src: /src/gpac/src/media_tools/html5_media.c:383,1
    - Dst: gf_html_tracklist_del
      Src: /src/gpac/src/media_tools/html5_media.c:384,1
    - Dst: gf_html_tracklist_del
      Src: /src/gpac/src/media_tools/html5_media.c:385,1
    - Dst: gf_html_timeranges_del
      Src: /src/gpac/src/media_tools/html5_media.c:386,1
    - Dst: gf_html_timeranges_del
      Src: /src/gpac/src/media_tools/html5_media.c:387,1
    - Dst: gf_html_timeranges_del
      Src: /src/gpac/src/media_tools/html5_media.c:388,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_media.c:389,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - me
    argTypes:
    - GF_HTML_MediaElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 379
    functionDepth: 3
    functionLinenumber: 379
    functionLinenumberEnd: 390
    functionName: gf_html_media_element_del
    functionSourceFile: /src/gpac/src/media_tools/html5_media.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_html_timeranges_del
    - gf_html_tracklist_del
    linkageType: ''
    returnType: void
    signature: void gf_html_media_element_del(GF_HTML_MediaElement *me)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/html5_media.c:395,1
    - Dst: gf_html_timeranges_new
      Src: /src/gpac/src/media_tools/html5_media.c:397,1
    - Dst: gf_html_timeranges_new
      Src: /src/gpac/src/media_tools/html5_media.c:398,1
    - Dst: gf_html_timeranges_new
      Src: /src/gpac/src/media_tools/html5_media.c:399,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 392
    functionDepth: 2
    functionLinenumber: 392
    functionLinenumberEnd: 401
    functionName: gf_html_media_controller_new
    functionSourceFile: /src/gpac/src/media_tools/html5_media.c
    functionUses: 0
    functionsReached:
    - gf_html_timeranges_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_HTML_MediaController
    signature: GF_HTML_MediaController *gf_html_media_controller_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/html5_media.c:407,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/html5_media.c:409,1
    - Dst: gf_html_timeranges_del
      Src: /src/gpac/src/media_tools/html5_media.c:412,1
    - Dst: gf_html_timeranges_del
      Src: /src/gpac/src/media_tools/html5_media.c:413,1
    - Dst: gf_html_timeranges_del
      Src: /src/gpac/src/media_tools/html5_media.c:414,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/html5_media.c:415,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - mc
    argTypes:
    - GF_HTML_MediaController*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 403
    functionDepth: 3
    functionLinenumber: 403
    functionLinenumberEnd: 416
    functionName: gf_html_mediacontroller_del
    functionSourceFile: /src/gpac/src/media_tools/html5_media.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_html_timeranges_del
    linkageType: ''
    returnType: void
    signature: void gf_html_mediacontroller_del(GF_HTML_MediaController *mc)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - GF_M2TS_Time*
    - GF_M2TS_Time*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionName: gf_m2ts_time_less
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gf_m2ts_time_less(GF_M2TS_Time *a, GF_M2TS_Time *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - GF_M2TS_Time*
    - GF_M2TS_Time*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: gf_m2ts_time_equal
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gf_m2ts_time_equal(GF_M2TS_Time *a, GF_M2TS_Time *b)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - GF_M2TS_Time*
    - GF_M2TS_Time*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionName: gf_m2ts_time_less_or_equal
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gf_m2ts_time_less_or_equal(GF_M2TS_Time *a, GF_M2TS_Time *b)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - time
    - delta_inc_num
    - delta_inc_den
    argTypes:
    - GF_M2TS_Time*
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 98
    functionName: gf_m2ts_time_inc
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gf_m2ts_time_inc(GF_M2TS_Time *time, u64 delta_inc_num, u32
      delta_inc_den)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - GF_M2TS_Time*
    - GF_M2TS_Time*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 109
    functionName: gf_m2ts_time_diff_us
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gf_m2ts_time_diff_us(GF_M2TS_Time *a, GF_M2TS_Time *b)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:134,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:135,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/m2ts_mux.c:147,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:149,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:178,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:192,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/m2ts_mux.c:203,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:205,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:215,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:218,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:219,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:220,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:221,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:222,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:226,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:227,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:228,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:229,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:230,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:232,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/m2ts_mux.c:235,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:240,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/m2ts_mux.c:243,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:244,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:248,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:263,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 118
    argCount: 7
    argNames:
    - stream
    - table_id
    - table_id_extension
    - table_payload
    - table_payload_length
    - use_syntax_indicator
    - private_indicator
    argTypes:
    - GF_M2TS_Mux_Stream*
    - u8
    - u16
    - u8*
    - u32
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 264
    functionName: gf_m2ts_mux_table_update
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_del
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_crc_32
    linkageType: ''
    returnType: void
    signature: "void gf_m2ts_mux_table_update(GF_M2TS_Mux_Stream *stream, u8 table_id,
      u16 table_id_extension,\n                              u8 *table_payload, u32
      table_payload_length,\n                              Bool use_syntax_indicator,
      Bool private_indicator)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_M2TS_Mux_Stream*::process
      Src: /src/gpac/src/media_tools/m2ts_mux.c:272,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 2
    argNames:
    - mux
    - stream
    argTypes:
    - GF_M2TS_Mux*
    - GF_M2TS_Mux_Stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 296
    functionName: gf_m2ts_mux_table_update_bitrate
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - GF_M2TS_Mux_Stream*::process
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_mux_table_update_bitrate(GF_M2TS_Mux *mux, GF_M2TS_Mux_Stream
      *stream)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:321,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:322,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/m2ts_mux.c:335,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:337,1
    - Dst: gf_sl_get_header_size
      Src: /src/gpac/src/media_tools/m2ts_mux.c:353,1
    - Dst: gf_sl_get_header_size
      Src: /src/gpac/src/media_tools/m2ts_mux.c:360,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/m2ts_mux.c:376,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:378,1
    - Dst: gf_sl_packetize
      Src: /src/gpac/src/media_tools/m2ts_mux.c:383,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:394,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:397,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:398,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:399,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:400,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:401,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:405,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:406,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:407,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:408,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:409,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:411,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/m2ts_mux.c:415,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:416,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/m2ts_mux.c:418,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:423,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/m2ts_mux.c:426,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:427,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:431,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:447,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 108
    argCount: 8
    argNames:
    - stream
    - table_id
    - table_id_extension
    - table_payload
    - table_payload_length
    - use_syntax_indicator
    - private_indicator
    - increment_version_number
    argTypes:
    - GF_M2TS_Mux_Stream*
    - u8
    - u16
    - char*
    - u32
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 298
    functionDepth: 2
    functionLinenumber: 298
    functionLinenumberEnd: 450
    functionName: gf_m2ts_mux_table_update_mpeg4
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_del
    - gf_sl_get_header_size
    - gf_bs_write_data
    - gf_sl_packetize
    - gf_bs_write_u32
    - gf_crc_32
    linkageType: ''
    returnType: void
    signature: "void gf_m2ts_mux_table_update_mpeg4(GF_M2TS_Mux_Stream *stream, u8
      table_id, u16 table_id_extension,\n                                    char
      *table_payload, u32 table_payload_length,\n                                    Bool
      use_syntax_indicator, Bool private_indicator,\n                                    Bool
      increment_version_number)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:467,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:468,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:469,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:470,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:471,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:472,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:473,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:474,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:475,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:479,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:480,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:482,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:484,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:489,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:491,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:497,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:499,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:500,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:501,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:502,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:503,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/m2ts_mux.c:505,1
    - Dst: gf_bs_write_byte
      Src: /src/gpac/src/media_tools/m2ts_mux.c:508,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 39
    argCount: 10
    argNames:
    - prog
    - bs
    - pid
    - has_pcr
    - pcr_time
    - is_rap
    - padding_length
    - af_descriptors
    - af_descriptors_size
    - set_discontinuity
    argTypes:
    - GF_M2TS_Mux_Program*
    - GF_BitStream*
    - u16
    - Bool
    - u64
    - Bool
    - u32
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 452
    functionDepth: 1
    functionLinenumber: 452
    functionLinenumberEnd: 511
    functionName: gf_m2ts_add_adaptation
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_write_data
    - gf_bs_write_long_int
    - gf_bs_write_byte
    linkageType: ''
    returnType: u32
    signature: "u32 gf_m2ts_add_adaptation(GF_M2TS_Mux_Program *prog, GF_BitStream
      *bs, u16 pid,\n                                  Bool has_pcr, u64 pcr_time,\n
      \                                 Bool is_rap,\n                                  u32
      padding_length,\n                                  char *af_descriptors, u32
      af_descriptors_size, Bool set_discontinuity)"
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:531,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m2ts_mux.c:536,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m2ts_mux.c:567,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/media_tools/m2ts_mux.c:575,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:576,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:577,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:579,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:582,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:584,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:585,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:586,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:587,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:588,1
    - Dst: gf_m2ts_add_adaptation
      Src: /src/gpac/src/media_tools/m2ts_mux.c:595,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:601,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/m2ts_mux.c:604,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/m2ts_mux.c:607,1
    - Dst: gf_m2ts_time_inc
      Src: /src/gpac/src/media_tools/m2ts_mux.c:621,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 76
    argCount: 3
    argNames:
    - mux
    - stream
    - packet
    argTypes:
    - GF_M2TS_Mux*
    - GF_M2TS_Mux_Stream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 515
    functionDepth: 2
    functionLinenumber: 515
    functionLinenumberEnd: 629
    functionName: gf_m2ts_mux_table_get_next_packet
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_m2ts_add_adaptation
    - GF_LOG
    - gf_bs_write_int
    - memcpy
    - memset
    - gf_bs_reassign_buffer
    - gf_m2ts_time_inc
    - gf_bs_write_u8
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_mux_table_get_next_packet(GF_M2TS_Mux *mux, GF_M2TS_Mux_Stream
      *stream, char *packet)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:640,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/m2ts_mux.c:642,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:643,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/m2ts_mux.c:648,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:649,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:650,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:651,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:652,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:653,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m2ts_mux.c:655,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m2ts_mux.c:656,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:660,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:661,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:662,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:663,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m2ts_mux.c:664,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:665,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/m2ts_mux.c:666,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m2ts_mux.c:668,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:669,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/m2ts_mux.c:670,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:672,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/m2ts_mux.c:676,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:677,1
    - Dst: gf_m2ts_mux_table_update
      Src: /src/gpac/src/media_tools/m2ts_mux.c:678,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:681,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 48
    argCount: 2
    argNames:
    - muxer
    - stream
    argTypes:
    - GF_M2TS_Mux*
    - GF_M2TS_Mux_Stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 632
    functionDepth: 2
    functionLinenumber: 632
    functionLinenumberEnd: 688
    functionName: gf_m2ts_stream_process_sdt
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_m2ts_mux_table_update
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_u16
    - gf_bs_write_int
    - gf_bs_del
    - gf_bs_write_data
    - gf_bs_write_u8
    - strlen
    linkageType: ''
    returnType: u32
    signature: u32 gf_m2ts_stream_process_sdt(GF_M2TS_Mux *muxer, GF_M2TS_Mux_Stream
      *stream)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:698,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/m2ts_mux.c:701,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:702,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:703,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/m2ts_mux.c:706,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:707,1
    - Dst: gf_m2ts_mux_table_update
      Src: /src/gpac/src/media_tools/m2ts_mux.c:708,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:711,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - muxer
    - stream
    argTypes:
    - GF_M2TS_Mux*
    - GF_M2TS_Mux_Stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 718
      start: 690
    functionDepth: 2
    functionLinenumber: 690
    functionLinenumberEnd: 718
    functionName: gf_m2ts_stream_process_pat
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_m2ts_mux_table_update
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_u16
    - gf_bs_write_int
    - gf_bs_del
    linkageType: ''
    returnType: u32
    signature: u32 gf_m2ts_stream_process_pat(GF_M2TS_Mux *muxer, GF_M2TS_Mux_Stream
      *stream)
  - BBCount: 70
    BranchProfiles: []
    Callsites:
    - Dst: abort
      Src: /src/gpac/src/media_tools/m2ts_mux.c:734,1
    - Dst: gf_m2ts_program_stream_format_updated
      Src: /src/gpac/src/media_tools/m2ts_mux.c:738,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:742,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:743,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:744,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:745,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/m2ts_mux.c:749,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/m2ts_mux.c:750,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:756,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/m2ts_mux.c:766,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/m2ts_mux.c:771,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:778,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/media_tools/m2ts_mux.c:779,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/m2ts_mux.c:780,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:781,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:784,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:786,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:788,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:793,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:795,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/m2ts_mux.c:797,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:798,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/m2ts_mux.c:803,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/m2ts_mux.c:804,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:805,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:806,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/m2ts_mux.c:807,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/media_tools/m2ts_mux.c:898,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/media_tools/m2ts_mux.c:902,1
    - Dst: gf_odf_av1_cfg_read
      Src: /src/gpac/src/media_tools/m2ts_mux.c:906,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:910,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:911,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:912,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:913,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/m2ts_mux.c:922,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/m2ts_mux.c:924,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:934,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:937,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:938,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:939,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:943,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:944,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:945,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:946,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:947,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:952,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:953,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:954,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:955,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:956,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:957,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:958,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:962,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:963,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:964,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:965,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:966,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:967,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:968,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:969,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:970,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:971,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:972,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:973,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:974,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:975,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:976,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:977,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:978,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:979,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:980,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:985,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:986,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:988,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:989,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:990,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:993,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:994,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:995,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:998,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:999,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1002,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1003,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1004,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1008,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1009,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1010,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1013,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1014,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1015,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1018,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1019,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1020,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1023,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1024,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1025,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1026,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1027,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1028,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1028,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1032,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1033,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1034,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1034,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1037,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1038,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1039,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1039,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1040,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1041,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1042,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1045,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1046,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1047,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1047,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1050,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1051,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1052,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1052,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1053,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1054,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1055,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1056,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1059,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1060,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1061,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1061,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1064,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1065,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1066,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1066,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1067,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1068,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1069,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1070,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1073,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1074,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1075,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1075,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1080,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1082,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1083,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1085,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1086,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1087,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1089,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1090,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1091,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1099,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1100,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1101,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1108,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1109,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1110,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1111,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1112,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1113,1
    - Dst: gf_m2ts_find_stream
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1117,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1118,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1119,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1122,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1126,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1127,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1128,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1129,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1130,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1132,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1133,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1134,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1135,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1136,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1138,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1139,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1140,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1144,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1145,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1146,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1147,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1148,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1150,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1151,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1153,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1154,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1155,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1159,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1160,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1161,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1162,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1163,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1164,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1165,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1166,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1167,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1168,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1169,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1170,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1171,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1172,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1173,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1174,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1176,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1178,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1180,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1186,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1188,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1189,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1190,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1191,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1198,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1199,1
    - Dst: gf_m2ts_mux_table_update
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1201,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1204,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1206,1
    CyclomaticComplexity: 90
    EdgeCount: 90
    ICount: 396
    argCount: 2
    argNames:
    - muxer
    - stream
    argTypes:
    - GF_M2TS_Mux*
    - GF_M2TS_Mux_Stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1213
      start: 723
    functionDepth: 4
    functionLinenumber: 723
    functionLinenumberEnd: 1213
    functionName: gf_m2ts_stream_process_pmt
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_av1_cfg_read
    - gf_bs_new
    - gf_odf_avc_cfg_del
    - gf_bs_write_u16
    - gf_list_count
    - gf_odf_av1_cfg_del
    - gf_bs_write_long_int
    - gf_bs_write_u32
    - gf_odf_hevc_cfg_read
    - gf_m2ts_mux_table_update
    - gf_list_get
    - memcpy
    - gf_bs_get_content
    - gf_m2ts_find_stream
    - gf_odf_write_descriptor
    - gf_m2ts_program_stream_format_updated
    - abort
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_write_data
    - gf_list_enum
    - gf_odf_avc_cfg_read
    - gf_odf_hevc_cfg_del
    - gf_bs_del
    - GF_4CC
    - gf_bs_write_u8
    linkageType: ''
    returnType: u32
    signature: u32 gf_m2ts_stream_process_pmt(GF_M2TS_Mux *muxer, GF_M2TS_Mux_Stream
      *stream)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1220,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1226,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1227,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1243,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1247,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 33
    argCount: 5
    argNames:
    - stream
    - pck_flags
    - dts
    - cts
    - duration
    argTypes:
    - GF_M2TS_Mux_Stream*
    - u32
    - u64*
    - u64*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1261
      start: 1215
    functionDepth: 1
    functionLinenumber: 1215
    functionLinenumberEnd: 1261
    functionName: gf_m2ts_remap_timestamps_for_pes
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_timestamp_rescale
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_remap_timestamps_for_pes(GF_M2TS_Mux_Stream *stream, u32
      pck_flags, u64 *dts, u64 *cts, u32 *duration)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_time_inc
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1275,1
    - Dst: gf_m2ts_time_inc
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1276,1
    - Dst: gf_m2ts_time_diff_us
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1280,1
    - Dst: gf_m2ts_time_diff_us
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1288,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 2
    argNames:
    - muxer
    - stream
    argTypes:
    - GF_M2TS_Mux*
    - GF_M2TS_Mux_Stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1296
      start: 1263
    functionDepth: 1
    functionLinenumber: 1263
    functionLinenumberEnd: 1296
    functionName: gf_m2ts_adjust_next_stream_time_for_pcr
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_time_diff_us
    - gf_m2ts_time_inc
    linkageType: ''
    returnType: Bool
    signature: Bool gf_m2ts_adjust_next_stream_time_for_pcr(GF_M2TS_Mux *muxer, GF_M2TS_Mux_Stream
      *stream)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1304,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1305,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1308,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1309,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1312,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1313,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1316,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1317,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 2
    argNames:
    - bs
    - len
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1318
      start: 1299
    functionDepth: 1
    functionLinenumber: 1299
    functionLinenumberEnd: 1318
    functionName: id3_write_size
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: void
    signature: void id3_write_size(GF_BitStream *bs, u32 len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1322,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1323,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1324,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1325,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1326,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1327,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1328,1
    - Dst: id3_write_size
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1330,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1332,1
    - Dst: id3_write_size
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1333,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1334,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1335,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1336,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1337,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1338,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 2
    argNames:
    - input
    - len
    argTypes:
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1340
      start: 1320
    functionDepth: 2
    functionLinenumber: 1320
    functionLinenumberEnd: 1340
    functionName: m2ts_id3_tag_create
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - id3_write_size
    - gf_bs_get_content
    - gf_bs_del
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: void
    signature: void m2ts_id3_tag_create(u8 **input, u32 *len)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 3
    argNames:
    - stream
    - dts
    - pay_size
    argTypes:
    - GF_M2TS_Mux_Stream*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1375
      start: 1343
    functionDepth: 0
    functionLinenumber: 1343
    functionLinenumberEnd: 1375
    functionName: gf_m2ts_stream_get_reframe_overhead
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_m2ts_stream_get_reframe_overhead(GF_M2TS_Mux_Stream *stream,
      u32 dts, u32 pay_size)
  - BBCount: 62
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_adjust_next_stream_time_for_pcr
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1396,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1407,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1408,1
    - Dst: GF_M2TS_Mux_Stream*::ifce::input_ctrl
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1410,1
    - Dst: GF_M2TS_Mux_Stream*::ifce::input_ctrl
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1418,1
    - Dst: GF_M2TS_Mux_Stream*::ifce::input_ctrl
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1426,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1428,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1439,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1454,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1457,1
    - Dst: gf_rand
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1470,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1493,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1494,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1528,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1531,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1532,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1550,1
    - Dst: gf_m2ts_mux_table_update_mpeg4
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1559,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1563,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1566,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1580,1
    - Dst: gf_sl_packetize
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1594,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1598,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1600,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1610,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1611,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1612,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1624,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1626,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1627,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1628,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1629,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1630,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1633,1
    - Dst: gf_m4a_write_config_bs
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1634,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1636,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1639,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1640,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1641,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1642,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1644,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1650,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1653,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1658,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1659,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1660,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1661,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1662,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1680,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1683,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1686,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1687,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1688,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1689,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1691,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1692,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1693,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1695,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1697,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1699,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1700,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1701,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1702,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1705,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1706,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1707,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1714,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1716,1
    - Dst: gf_m4a_write_program_config_element_bs
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1717,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1718,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1721,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1724,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1725,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1726,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1727,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1728,1
    - Dst: m2ts_id3_tag_create
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1734,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1742,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1747,1
    - Dst: tx3g_format_time
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1749,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1750,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1751,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1752,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1753,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1754,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1756,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1760,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1767,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1768,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1769,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1770,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1771,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1772,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1773,1
    - Dst: gf_m2ts_remap_timestamps_for_pes
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1785,1
    - Dst: gf_m2ts_time_inc
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1806,1
    - Dst: gf_m2ts_adjust_next_stream_time_for_pcr
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1809,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1812,1
    CyclomaticComplexity: 76
    EdgeCount: 76
    ICount: 317
    argCount: 2
    argNames:
    - muxer
    - stream
    argTypes:
    - GF_M2TS_Mux*
    - GF_M2TS_Mux_Stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1839
      start: 1377
    functionDepth: 3
    functionLinenumber: 1377
    functionLinenumberEnd: 1839
    functionName: gf_m2ts_stream_process_pes
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - GF_M2TS_Mux_Stream*::ifce::input_ctrl
    - m2ts_id3_tag_create
    - strcat
    - gf_assert
    - gf_m2ts_remap_timestamps_for_pes
    - gf_bs_get_content
    - memcpy
    - gf_m2ts_mux_table_update_mpeg4
    - sprintf
    - gf_sl_packetize
    - gf_m4a_write_config_bs
    - gf_mx_p
    - gf_m2ts_adjust_next_stream_time_for_pcr
    - gf_utf8_is_legal
    - gf_m4a_get_config
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_mx_v
    - gf_rand
    - gf_m2ts_time_inc
    - gf_timestamp_rescale
    - strlen
    - gf_malloc
    - gf_m4a_write_program_config_element_bs
    - gf_bs_del
    - tx3g_format_time
    - gf_bs_write_u8
    linkageType: ''
    returnType: u32
    signature: u32 gf_m2ts_stream_process_pes(GF_M2TS_Mux *muxer, GF_M2TS_Mux_Stream
      *stream)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - stream
    argTypes:
    - GF_M2TS_Mux_Stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1857
      start: 1841
    functionDepth: 0
    functionLinenumber: 1841
    functionLinenumberEnd: 1857
    functionName: gf_m2ts_get_pcr
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gf_m2ts_get_pcr(GF_M2TS_Mux_Stream *stream)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: GF_M2TS_Mux_Stream*::ifce::input_ctrl
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1877,1
    - Dst: GF_M2TS_Mux_Stream*::ifce::input_ctrl
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1887,1
    - Dst: GF_M2TS_Mux_Stream*::ifce::input_ctrl
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1895,1
    - Dst: GF_M2TS_Mux_Stream*::ifce::input_ctrl
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1898,1
    - Dst: gf_m2ts_stream_get_reframe_overhead
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1925,1
    - Dst: gf_m2ts_stream_get_reframe_overhead
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1928,1
    - Dst: gf_m2ts_stream_get_reframe_overhead
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1930,1
    - Dst: gf_m2ts_remap_timestamps_for_pes
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1934,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 65
    argCount: 1
    argNames:
    - stream
    argTypes:
    - GF_M2TS_Mux_Stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1940
      start: 1859
    functionDepth: 2
    functionLinenumber: 1859
    functionLinenumberEnd: 1940
    functionName: gf_m2ts_stream_update_data_following
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - GF_M2TS_Mux_Stream*::ifce::input_ctrl
    - gf_m2ts_stream_get_reframe_overhead
    - gf_m2ts_remap_timestamps_for_pes
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_stream_update_data_following(GF_M2TS_Mux_Stream *stream)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1945,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 56
    argCount: 2
    argNames:
    - stream
    - payload_length
    argTypes:
    - GF_M2TS_Mux_Stream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2037
      start: 1943
    functionDepth: 1
    functionLinenumber: 1943
    functionLinenumberEnd: 2037
    functionName: gf_m2ts_stream_compute_pes_length
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: Bool
    signature: Bool gf_m2ts_stream_compute_pes_length(GF_M2TS_Mux_Stream *stream,
      u32 payload_length)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - stream
    argTypes:
    - GF_M2TS_Mux_Stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2053
      start: 2039
    functionDepth: 0
    functionLinenumber: 2039
    functionLinenumberEnd: 2053
    functionName: gf_m2ts_stream_get_pes_header_length
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_m2ts_stream_get_pes_header_length(GF_M2TS_Mux_Stream *stream)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2061,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2062,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2089,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2091,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2092,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2093,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2094,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2095,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2096,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2098,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2099,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2100,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2102,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2105,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2107,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2108,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2110,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2111,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2113,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2114,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2118,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2120,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2121,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2123,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2124,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2126,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2127,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2129,1
    - Dst: gf_m2ts_get_pcr
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2129,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 62
    argCount: 2
    argNames:
    - bs
    - stream
    argTypes:
    - GF_BitStream*
    - GF_M2TS_Mux_Stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2132
      start: 2055
    functionDepth: 1
    functionLinenumber: 2055
    functionLinenumberEnd: 2132
    functionName: gf_m2ts_stream_add_pes_header
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_write_long_int
    - gf_m2ts_get_pcr
    - gf_bs_write_u8
    linkageType: ''
    returnType: u32
    signature: u32 gf_m2ts_stream_add_pes_header(GF_BitStream *bs, GF_M2TS_Mux_Stream
      *stream)
  - BBCount: 60
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2140,1
    - Dst: gf_m2ts_stream_get_pes_header_length
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2148,1
    - Dst: gf_m2ts_stream_update_data_following
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2157,1
    - Dst: gf_m2ts_stream_get_pes_header_length
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2158,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2188,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2213,1
    - Dst: gf_m2ts_stream_compute_pes_length
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2214,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2219,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2265,1
    - Dst: gf_m2ts_get_pcr
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2266,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2267,1
    - Dst: gf_m2ts_time_diff_us
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2270,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2282,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2286,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2287,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2288,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2289,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2290,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2291,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2292,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2293,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2300,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2310,1
    - Dst: gf_m2ts_get_pcr
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2311,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2321,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2329,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2334,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2335,1
    - Dst: gf_m2ts_add_adaptation
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2342,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2346,1
    - Dst: gf_m2ts_stream_add_pes_header
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2357,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2364,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2371,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2373,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2380,1
    - Dst: gf_m2ts_time_inc
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2387,1
    - Dst: gf_m2ts_get_pcr
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2390,1
    - Dst: gf_m2ts_time_less
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2391,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2392,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2398,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2403,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2408,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2416,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2419,1
    - Dst: gf_m2ts_time_less
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2426,1
    - Dst: gf_m2ts_time_diff_us
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2427,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2428,1
    - Dst: GF_M2TS_Mux_Stream*::process
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2439,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2441,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2442,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2456,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2458,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2468,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2470,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2473,1
    CyclomaticComplexity: 75
    EdgeCount: 75
    ICount: 255
    argCount: 2
    argNames:
    - stream
    - packet
    argTypes:
    - GF_M2TS_Mux_Stream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2488
      start: 2134
    functionDepth: 3
    functionLinenumber: 2134
    functionLinenumberEnd: 2488
    functionName: gf_m2ts_mux_pes_get_next_packet
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_log_tool_level_on
    - gf_m2ts_time_less
    - memset
    - gf_m2ts_get_pcr
    - gf_assert
    - gf_m2ts_add_adaptation
    - memcpy
    - gf_m2ts_stream_get_pes_header_length
    - gf_m2ts_stream_compute_pes_length
    - gf_m2ts_time_diff_us
    - gf_m2ts_stream_update_data_following
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_get_position
    - gf_bs_reassign_buffer
    - gf_m2ts_time_inc
    - gf_sys_clock_high_res
    - GF_M2TS_Mux_Stream*::process
    - gf_bs_seek
    - gf_m2ts_stream_add_pes_header
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_mux_pes_get_next_packet(GF_M2TS_Mux_Stream *stream, char
      *packet)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2494,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2496,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - pid
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2503
      start: 2491
    functionDepth: 1
    functionLinenumber: 2491
    functionLinenumberEnd: 2503
    functionName: gf_m2ts_stream_new
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_M2TS_Mux_Stream
    signature: GF_M2TS_Mux_Stream *gf_m2ts_stream_new(u32 pid)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2516,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2523,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2528,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2530,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2538,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2539,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2546,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2548,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2554,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2561,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 58
    argCount: 3
    argNames:
    - _self
    - ctrl_type
    - param
    argTypes:
    - GF_ESInterface*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2567
      start: 2505
    functionDepth: 1
    functionLinenumber: 2505
    functionLinenumberEnd: 2567
    functionName: gf_m2ts_output_ctrl
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - GF_SAFEALLOC
    - GF_LOG
    - memcpy
    - gf_mx_v
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_m2ts_output_ctrl(GF_ESInterface *_self, u32 ctrl_type, void
      *param)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2572,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - stream
    argTypes:
    - GF_M2TS_Mux_Stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2578
      start: 2569
    functionDepth: 0
    functionLinenumber: 2569
    functionLinenumberEnd: 2578
    functionName: gf_m2ts_stream_set_default_slconfig
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_new
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_stream_set_default_slconfig(GF_M2TS_Mux_Stream *stream)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 4
    argNames:
    - program
    - pid
    - stream_id
    - out_stream
    argTypes:
    - GF_M2TS_Mux_Program*
    - u32
    - u32
    - GF_M2TS_Mux_Stream**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2598
      start: 2580
    functionDepth: 0
    functionLinenumber: 2580
    functionLinenumberEnd: 2598
    functionName: gf_m2ts_find_stream
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 gf_m2ts_find_stream(GF_M2TS_Mux_Program *program, u32 pid, u32
      stream_id, GF_M2TS_Mux_Stream **out_stream)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2608,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2610,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2612,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2614,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2616,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2618,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2620,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2622,1
    - Dst: gf_m2ts_find_stream
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2622,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2624,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2626,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2628,1
    - Dst: gf_m2ts_find_stream
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2628,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2630,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2632,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2634,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2638,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2639,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2641,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 1
    argNames:
    - stream
    argTypes:
    - GF_M2TS_Mux_Stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2642
      start: 2601
    functionDepth: 1
    functionLinenumber: 2601
    functionLinenumberEnd: 2642
    functionName: gf_m2ts_stream_add_hierarchy_descriptor
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_del
    - gf_m2ts_find_stream
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_stream_add_hierarchy_descriptor(GF_M2TS_Mux_Stream *stream)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2649,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2650,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2651,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2652,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2653,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2654,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2655,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2656,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2657,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2658,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2659,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2663,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2664,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2666,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 1
    argNames:
    - program
    argTypes:
    - GF_M2TS_Mux_Program*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2667
      start: 2644
    functionDepth: 1
    functionLinenumber: 2644
    functionLinenumberEnd: 2667
    functionName: gf_m2ts_stream_add_metadata_pointer_descriptor
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_bs_del
    - gf_list_add
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_stream_add_metadata_pointer_descriptor(GF_M2TS_Mux_Program
      *program)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2674,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2675,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2676,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2677,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2678,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2679,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2680,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2681,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2682,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2683,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2687,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2688,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2690,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 1
    argNames:
    - stream
    argTypes:
    - GF_M2TS_Mux_Stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2691
      start: 2669
    functionDepth: 1
    functionLinenumber: 2669
    functionLinenumberEnd: 2691
    functionName: gf_m2ts_stream_add_metadata_descriptor
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_bs_del
    - gf_list_add
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_stream_add_metadata_descriptor(GF_M2TS_Mux_Stream *stream)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - prog
    argTypes:
    - GF_M2TS_Mux_Program*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2697
      start: 2693
    functionDepth: 0
    functionLinenumber: 2693
    functionLinenumberEnd: 2697
    functionName: gf_m2ts_mux_program_get_pmt_pid
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_mux_program_get_pmt_pid(GF_M2TS_Mux_Program *prog)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - prog
    argTypes:
    - GF_M2TS_Mux_Program*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2703
      start: 2699
    functionDepth: 0
    functionLinenumber: 2699
    functionLinenumberEnd: 2703
    functionName: gf_m2ts_mux_program_get_pcr_pid
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_mux_program_get_pcr_pid(GF_M2TS_Mux_Program *prog)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - prog
    argTypes:
    - GF_M2TS_Mux_Program*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2715
      start: 2705
    functionDepth: 0
    functionLinenumber: 2705
    functionLinenumberEnd: 2715
    functionName: gf_m2ts_mux_program_get_stream_count
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_mux_program_get_stream_count(GF_M2TS_Mux_Program
      *prog)
  - BBCount: 63
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_stream_add_hierarchy_descriptor
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2748,1
    - Dst: gf_m2ts_stream_add_hierarchy_descriptor
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2757,1
    - Dst: gf_m2ts_find_stream
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2760,1
    - Dst: gf_m2ts_stream_add_hierarchy_descriptor
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2774,1
    - Dst: gf_m2ts_stream_set_default_slconfig
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2795,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2813,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2813,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2815,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2815,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2815,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2885,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2885,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2887,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2887,1
    - Dst: gf_m2ts_stream_set_default_slconfig
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2901,1
    - Dst: gf_m2ts_stream_set_default_slconfig
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2912,1
    - Dst: gf_m2ts_stream_add_metadata_pointer_descriptor
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2936,1
    - Dst: gf_m2ts_stream_add_metadata_descriptor
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2937,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2949,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2949,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 199
    argCount: 1
    argNames:
    - stream
    argTypes:
    - GF_M2TS_Mux_Stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2954
      start: 2717
    functionDepth: 2
    functionLinenumber: 2717
    functionLinenumberEnd: 2954
    functionName: gf_m2ts_program_stream_format_updated
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 1
    functionsReached:
    - gf_4cc_to_str
    - GF_LOG
    - gf_m2ts_stream_add_metadata_pointer_descriptor
    - gf_m2ts_find_stream
    - gf_m2ts_stream_add_hierarchy_descriptor
    - gf_m2ts_stream_add_metadata_descriptor
    - gf_codecid_name
    - gf_m2ts_stream_set_default_slconfig
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_program_stream_format_updated(GF_M2TS_Mux_Stream *stream)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_stream_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2961,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2966,1
    - Dst: gf_m2ts_program_stream_format_updated
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2989,1
    - Dst: gf_m2ts_stream_set_default_slconfig
      Src: /src/gpac/src/media_tools/m2ts_mux.c:2998,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3006,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 48
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3013
      start: 2956
    functionDepth: 3
    functionLinenumber: 2956
    functionLinenumberEnd: 3013
    functionName: GF_M2TS_Mux_Stream *gf_m2ts_program_stream_add(GF_M2TS_Mux_Program
      *program, struct __elementary_stream_ifce *ifce, u32 pid, Bool is_pcr, Bool
      force_pes, Bool needs_mutex)
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_m2ts_stream_new
    - gf_m2ts_program_stream_format_updated
    - gf_mx_new
    - gf_m2ts_stream_set_default_slconfig
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_M2TS_Mux_Stream *gf_m2ts_program_stream_add(GF_M2TS_Mux_Program
      *program, struct __elementary_stream_ifce *ifce, u32 pid, Bool is_pcr, Bool
      force_pes, Bool needs_mutex)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - _self
    - time_scale
    argTypes:
    - GF_ESInterface*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3025
      start: 3016
    functionDepth: 0
    functionLinenumber: 3016
    functionLinenumberEnd: 3025
    functionName: gf_m2ts_program_stream_update_ts_scale
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_m2ts_program_stream_update_ts_scale(GF_ESInterface *_self,
      u32 time_scale)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3037
      start: 3028
    functionDepth: 0
    functionLinenumber: 3028
    functionLinenumberEnd: 3037
    functionName: GF_M2TS_Mux_Program *gf_m2ts_mux_program_find(GF_M2TS_Mux *muxer,
      u32 program_number)
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_M2TS_Mux_Program *gf_m2ts_mux_program_find(GF_M2TS_Mux
      *muxer, u32 program_number)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - muxer
    argTypes:
    - GF_M2TS_Mux*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3050
      start: 3040
    functionDepth: 0
    functionLinenumber: 3040
    functionLinenumberEnd: 3050
    functionName: gf_m2ts_mux_program_count
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_mux_program_count(GF_M2TS_Mux *muxer)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3057,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3063,1
    - Dst: gf_m2ts_stream_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3073,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3084
      start: 3052
    functionDepth: 2
    functionLinenumber: 3052
    functionLinenumberEnd: 3084
    functionName: GF_M2TS_Mux_Program *gf_m2ts_mux_program_add(GF_M2TS_Mux *muxer,
      u32 program_number, u32 pmt_pid, u32 pmt_refresh_rate, u64 pcr_offset, u32 mpeg4_signaling,
      u32 pmt_version, Bool initial_disc, u64 force_first_pts)
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_m2ts_stream_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_M2TS_Mux_Program *gf_m2ts_mux_program_add(GF_M2TS_Mux
      *muxer, u32 program_number, u32 pmt_pid, u32 pmt_refresh_rate, u64 pcr_offset,
      u32 mpeg4_signaling, u32 pmt_version, Bool initial_disc, u64 force_first_pts)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3089,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3090,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3092,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3093,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - program
    - program_name
    - provider_name
    argTypes:
    - GF_M2TS_Mux_Program*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3096
      start: 3086
    functionDepth: 0
    functionLinenumber: 3086
    functionLinenumberEnd: 3096
    functionName: gf_m2ts_mux_program_set_name
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_mux_program_set_name(GF_M2TS_Mux_Program *program,
      const char *program_name, const char *provider_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - program
    argTypes:
    - GF_M2TS_Mux_Program*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3104
      start: 3098
    functionDepth: 0
    functionLinenumber: 3098
    functionLinenumberEnd: 3104
    functionName: gf_m2ts_mux_program_force_keep_ts
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_mux_program_force_keep_ts(GF_M2TS_Mux_Program *program)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3110,1
    - Dst: gf_m2ts_stream_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3113,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3115,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3126,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3127,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3128,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3129,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3130,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3131,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3132,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3133,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3134,1
    - Dst: gf_rand_init
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3136,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3139
      start: 3106
    functionDepth: 2
    functionLinenumber: 3106
    functionLinenumberEnd: 3139
    functionName: GF_M2TS_Mux *gf_m2ts_mux_new(u32 mux_rate, u32 pat_refresh_rate,
      Bool real_time)
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_write_int
    - gf_m2ts_stream_new
    - gf_rand_init
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_M2TS_Mux *gf_m2ts_mux_new(u32 mux_rate, u32 pat_refresh_rate,
      Bool real_time)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_stream_new
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3145,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - mux
    - refresh_rate_ms
    argTypes:
    - GF_M2TS_Mux*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3151
      start: 3141
    functionDepth: 2
    functionLinenumber: 3141
    functionLinenumberEnd: 3151
    functionName: gf_m2ts_mux_enable_sdt
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_stream_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_mux_enable_sdt(GF_M2TS_Mux *mux, u32 refresh_rate_ms)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - muxer
    - pcr_update_ms
    argTypes:
    - GF_M2TS_Mux*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3158
      start: 3154
    functionDepth: 0
    functionLinenumber: 3154
    functionLinenumberEnd: 3158
    functionName: gf_m2ts_mux_set_pcr_max_interval
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_mux_set_pcr_max_interval(GF_M2TS_Mux *muxer, u32
      pcr_update_ms)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3166,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3167,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3170,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3176,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3177,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3179,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3180,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3181,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3183,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3184,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3185,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3186,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3187,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3189,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3191,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 1
    argNames:
    - st
    argTypes:
    - GF_M2TS_Mux_Stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3192
      start: 3160
    functionDepth: 1
    functionLinenumber: 3160
    functionLinenumberEnd: 3192
    functionName: gf_m2ts_mux_stream_del
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - gf_list_last
    - gf_list_rem_last
    - gf_list_del
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_mux_stream_del(GF_M2TS_Mux_Stream *st)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3197,1
    - Dst: gf_m2ts_mux_stream_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3201,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3205,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3206,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3207,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3208,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3209,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3211,1
    - Dst: gf_m2ts_mux_stream_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3213,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3214,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3215,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3216,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 1
    argNames:
    - prog
    argTypes:
    - GF_M2TS_Mux_Program*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3217
      start: 3194
    functionDepth: 2
    functionLinenumber: 3194
    functionLinenumberEnd: 3217
    functionName: gf_m2ts_mux_program_del
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_m2ts_mux_stream_del
    - gf_odf_desc_del
    - gf_list_count
    - gf_list_last
    - gf_list_rem_last
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_mux_program_del(GF_M2TS_Mux_Program *prog)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_mux_stream_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3241,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - stream
    argTypes:
    - GF_M2TS_Mux_Stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3243
      start: 3219
    functionDepth: 2
    functionLinenumber: 3219
    functionLinenumberEnd: 3243
    functionName: gf_m2ts_program_stream_remove
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_mux_stream_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_program_stream_remove(GF_M2TS_Mux_Stream *stream)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_mux_program_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3250,1
    - Dst: gf_m2ts_mux_stream_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3253,1
    - Dst: gf_m2ts_mux_stream_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3254,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3255,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3257,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - mux
    argTypes:
    - GF_M2TS_Mux*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3258
      start: 3245
    functionDepth: 3
    functionLinenumber: 3245
    functionLinenumberEnd: 3258
    functionName: gf_m2ts_mux_del
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_m2ts_mux_program_del
    - gf_m2ts_mux_stream_del
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_mux_del(GF_M2TS_Mux *mux)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_mux_table_update_bitrate
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3265,1
    - Dst: gf_m2ts_mux_table_update_bitrate
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3267,1
    - Dst: gf_m2ts_mux_table_update_bitrate
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3292,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3308,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 2
    argNames:
    - mux
    - reset_time
    argTypes:
    - GF_M2TS_Mux*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3311
      start: 3260
    functionDepth: 1
    functionLinenumber: 3260
    functionLinenumberEnd: 3311
    functionName: gf_m2ts_mux_update_config
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_m2ts_mux_table_update_bitrate
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_mux_update_config(GF_M2TS_Mux *mux, Bool reset_time)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3316,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - muxer
    argTypes:
    - GF_M2TS_Mux*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3317
      start: 3313
    functionDepth: 1
    functionLinenumber: 3313
    functionLinenumberEnd: 3317
    functionName: gf_m2ts_get_sys_clock
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_get_sys_clock(GF_M2TS_Mux *muxer)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - muxer
    argTypes:
    - GF_M2TS_Mux*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3326
      start: 3319
    functionDepth: 0
    functionLinenumber: 3319
    functionLinenumberEnd: 3326
    functionName: gf_m2ts_get_ts_clock
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_get_ts_clock(GF_M2TS_Mux *muxer)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - muxer
    argTypes:
    - GF_M2TS_Mux*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3337
      start: 3328
    functionDepth: 0
    functionLinenumber: 3328
    functionLinenumberEnd: 3337
    functionName: gf_m2ts_get_ts_clock_90k
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_get_ts_clock_90k(GF_M2TS_Mux *muxer)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - muxer
    - au_pes_mode
    argTypes:
    - GF_M2TS_Mux*
    - GF_M2TS_PackMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3345
      start: 3339
    functionDepth: 0
    functionLinenumber: 3339
    functionLinenumberEnd: 3345
    functionName: gf_m2ts_mux_use_single_au_pes_mode
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_mux_use_single_au_pes_mode(GF_M2TS_Mux *muxer, GF_M2TS_PackMode
      au_pes_mode)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - muxer
    - init_pcr_value
    argTypes:
    - GF_M2TS_Mux*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3353
      start: 3347
    functionDepth: 0
    functionLinenumber: 3347
    functionLinenumberEnd: 3353
    functionName: gf_m2ts_mux_set_initial_pcr
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_mux_set_initial_pcr(GF_M2TS_Mux *muxer, u64 init_pcr_value)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - muxer
    - enable_forced_pcr
    argTypes:
    - GF_M2TS_Mux*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3361
      start: 3355
    functionDepth: 0
    functionLinenumber: 3355
    functionLinenumberEnd: 3361
    functionName: gf_m2ts_mux_enable_pcr_only_packets
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_mux_enable_pcr_only_packets(GF_M2TS_Mux *muxer, Bool
      enable_forced_pcr)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_time_less
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3384,1
    - Dst: gf_m2ts_time_inc
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3390,1
    - Dst: gf_m2ts_time_less
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3391,1
    - Dst: gf_m2ts_time_less
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3409,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 28
    argCount: 2
    argNames:
    - stream
    - muxer
    argTypes:
    - GF_M2TS_Mux_Stream*
    - GF_M2TS_Mux*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3423
      start: 3378
    functionDepth: 1
    functionLinenumber: 3378
    functionLinenumberEnd: 3423
    functionName: gf_m2ts_stream_too_early
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_time_less
    - gf_m2ts_time_inc
    linkageType: ''
    returnType: Bool
    signature: Bool gf_m2ts_stream_too_early(GF_M2TS_Mux_Stream *stream, GF_M2TS_Mux
      *muxer)
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3444,1
    - Dst: gf_m2ts_time_inc
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3449,1
    - Dst: gf_m2ts_time_inc
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3455,1
    - Dst: gf_m2ts_time_less
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3456,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3463,1
    - Dst: gf_m2ts_mux_update_config
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3480,1
    - Dst: GF_M2TS_Mux*::pat::process
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3506,1
    - Dst: gf_m2ts_time_less_or_equal
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3507,1
    - Dst: GF_M2TS_Mux*::sdt::process
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3523,1
    - Dst: gf_m2ts_time_less_or_equal
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3524,1
    - Dst: GF_M2TS_Mux_Program*::pmt::process
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3534,1
    - Dst: gf_m2ts_time_less_or_equal
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3535,1
    - Dst: GF_M2TS_Mux_Stream*::process
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3568,1
    - Dst: gf_m2ts_time_less_or_equal
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3569,1
    - Dst: GF_M2TS_Mux_Stream*::process
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3591,1
    - Dst: gf_m2ts_mux_process
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3614,1
    - Dst: gf_m2ts_time_less
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3618,1
    - Dst: gf_m2ts_stream_too_early
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3620,1
    - Dst: gf_m2ts_time_equal
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3629,1
    - Dst: gf_m2ts_time_less
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3639,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3664,1
    - Dst: gf_m2ts_mux_table_get_next_packet
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3670,1
    - Dst: gf_m2ts_mux_pes_get_next_packet
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3672,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3687,1
    - Dst: gf_m2ts_time_inc
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3696,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3699,1
    - Dst: gf_m2ts_time_inc
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3701,1
    - Dst: gf_m2ts_time_less_or_equal
      Src: /src/gpac/src/media_tools/m2ts_mux.c:3705,1
    CyclomaticComplexity: 84
    EdgeCount: 84
    ICount: 220
    argCount: 3
    argNames:
    - muxer
    - status
    - usec_till_next
    argTypes:
    - GF_M2TS_Mux*
    - GF_M2TSMuxState*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3723
      start: 3425
    functionDepth: 4
    functionLinenumber: 3425
    functionLinenumberEnd: 3723
    functionName: gf_m2ts_mux_process
    functionSourceFile: /src/gpac/src/media_tools/m2ts_mux.c
    functionUses: 1
    functionsReached:
    - gf_assert
    - gf_m2ts_mux_update_config
    - gf_m2ts_stream_too_early
    - gf_m2ts_time_inc
    - gf_m2ts_mux_process
    - GF_LOG
    - GF_M2TS_Mux*::sdt::process
    - gf_m2ts_time_less_or_equal
    - gf_m2ts_time_equal
    - gf_m2ts_mux_table_get_next_packet
    - gf_m2ts_time_less
    - GF_M2TS_Mux_Program*::pmt::process
    - GF_M2TS_Mux*::pat::process
    - gf_sys_clock_high_res
    - gf_m2ts_mux_pes_get_next_packet
    - GF_M2TS_Mux_Stream*::process
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_m2ts_mux_process(GF_M2TS_Mux *muxer, GF_M2TSMuxState
      *status, u32 *usec_till_next)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _bs
    - ','
    - _nBits
    - ','
    - _fname
    - ','
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: gf_bs_log
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: gf_bs_log(_bs, _nBits, _fname, _val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:47,1
    - Dst: gf_bs_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - bs
    - nBits
    - fname
    - idx1
    - idx2
    - idx3
    argTypes:
    - GF_BitStream*
    - u32
    - char*
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionName: gf_bs_read_int_log_idx3
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - gf_bs_log_idx
    linkageType: ''
    returnType: u32
    signature: u32 gf_bs_read_int_log_idx3(GF_BitStream *bs, u32 nBits, const char
      *fname, s32 idx1, s32 idx2, s32 idx3)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _bs
    - ','
    - _nBits
    - ','
    - _fname
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 53
    functionName: gf_bs_read_int_log
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: gf_bs_read_int_log(_bs, _nBits, _fname)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _bs
    - ','
    - _nBits
    - ','
    - _fname
    - ','
    - _idx
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 54
    functionName: gf_bs_read_int_log_idx
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: gf_bs_read_int_log_idx(_bs, _nBits, _fname, _idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - _bs
    - ','
    - _nBits
    - ','
    - _fname
    - ','
    - _idx1
    - ','
    - _idx2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 55
    functionName: gf_bs_read_int_log_idx2
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: gf_bs_read_int_log_idx2(_bs, _nBits, _fname, _idx1, _idx2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _bs
    - ','
    - _nbb
    - ','
    - _f
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: gf_bs_read_int_log
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: gf_bs_read_int_log(_bs, _nbb, _f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _bs
    - ','
    - _nbb
    - ','
    - _f
    - ','
    - _idx
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 64
    functionName: gf_bs_read_int_log_idx
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: gf_bs_read_int_log_idx(_bs, _nbb, _f, _idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - _bs
    - ','
    - _nbb
    - ','
    - _f
    - ','
    - _idx1
    - ','
    - _idx2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 65
    functionName: gf_bs_read_int_log_idx2
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: gf_bs_read_int_log_idx2(_bs, _nbb, _f, _idx1, _idx2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - _bs
    - ','
    - _nbb
    - ','
    - _f
    - ','
    - _idx1
    - ','
    - _idx2
    - ','
    - _idx3
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 66
    functionName: gf_bs_read_int_log_idx3
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: gf_bs_read_int_log_idx3(_bs, _nbb, _f, _idx1, _idx2, _idx3)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 2
    argNames:
    - width
    - height
    argTypes:
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 106
    functionName: gf_media_reduce_aspect_ratio
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_reduce_aspect_ratio(u32 *width, u32 *height)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - timescale
    - sample_dur
    argTypes:
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 122
    functionName: gf_media_get_reduced_frame_rate
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_get_reduced_frame_rate(u32 *timescale, u32 *sample_dur)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:196,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - video_pl
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 193
    functionDepth: 1
    functionLinenumber: 193
    functionLinenumberEnd: 202
    functionName: gf_m4v_get_profile_name
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 2
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_m4v_get_profile_name(u8 video_pl)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 4
    argNames:
    - pbuffer
    - buflen
    - optr
    - scode
    argTypes:
    - unsigned char*
    - u32
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 238
    functionName: gf_mv12_next_start_code
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 gf_mv12_next_start_code(unsigned char *pbuffer, u32 buflen, u32
      *optr, u32 *scode)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mv12_next_start_code
      Src: /src/gpac/src/media_tools/av_parsers.c:243,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - pbuffer
    - startoffset
    - buflen
    - slice_offset
    argTypes:
    - unsigned char*
    - u32
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 240
    functionDepth: 1
    functionLinenumber: 240
    functionLinenumberEnd: 251
    functionName: gf_mv12_next_slice_start
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_mv12_next_start_code
    linkageType: ''
    returnType: s32
    signature: s32 gf_mv12_next_slice_start(unsigned char *pbuffer, u32 startoffset,
      u32 buflen, u32 *slice_offset)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/av_parsers.c:273,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:275,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 268
    functionDepth: 1
    functionLinenumber: 268
    functionLinenumberEnd: 278
    functionName: GF_M4VParser *gf_m4v_parser_new(u8 *data, u64 data_size, Bool mpeg12video)
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_M4VParser *gf_m4v_parser_new(u8 *data, u64 data_size,
      Bool mpeg12video)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/av_parsers.c:283,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - mpeg12video
    argTypes:
    - GF_BitStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 280
    functionDepth: 1
    functionLinenumber: 280
    functionLinenumberEnd: 288
    functionName: gf_m4v_parser_bs_new
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_M4VParser
    signature: GF_M4VParser *gf_m4v_parser_bs_new(GF_BitStream *bs, Bool mpeg12video)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:293,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:294,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - m4v
    argTypes:
    - GF_M4VParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 290
    functionDepth: 1
    functionLinenumber: 290
    functionLinenumberEnd: 295
    functionName: gf_m4v_parser_del
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m4v_parser_del(GF_M4VParser *m4v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:300,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - m4v
    argTypes:
    - GF_M4VParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 297
    functionDepth: 0
    functionLinenumber: 297
    functionLinenumberEnd: 301
    functionName: gf_m4v_parser_del_no_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m4v_parser_del_no_bs(GF_M4VParser *m4v)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - m4v
    argTypes:
    - GF_M4VParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 307
    functionName: gf_m4v_parser_set_inspect
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m4v_parser_set_inspect(GF_M4VParser *m4v)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - m4v
    argTypes:
    - GF_M4VParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 308
    functionDepth: 0
    functionLinenumber: 308
    functionLinenumberEnd: 313
    functionName: gf_m4v_parser_get_obj_type
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m4v_parser_get_obj_type(GF_M4VParser *m4v)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:337,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:338,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:341,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:342,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:354,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:355,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 39
    argCount: 1
    argNames:
    - m4v
    argTypes:
    - GF_M4VParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 316
    functionDepth: 1
    functionLinenumber: 316
    functionLinenumberEnd: 357
    functionName: M4V_LoadObject
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_seek
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_bs_available
    linkageType: ''
    returnType: s32
    signature: s32 M4V_LoadObject(GF_M4VParser *m4v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:375,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:381,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:382,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - o_data
    - o_dataLen
    - PL
    argTypes:
    - u8**
    - u32*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 360
    functionDepth: 0
    functionLinenumber: 360
    functionLinenumberEnd: 384
    functionName: gf_m4v_rewrite_pl
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memcpy
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m4v_rewrite_pl(u8 **o_data, u32 *o_dataLen, u8 PL)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:388,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/media_tools/av_parsers.c:390,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - m4v
    - start
    argTypes:
    - GF_M4VParser*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 386
    functionDepth: 1
    functionLinenumber: 386
    functionLinenumberEnd: 394
    functionName: M4V_Reset
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_fatal_assert
    - gf_bs_seek
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err M4V_Reset(GF_M4VParser *m4v, u64 start)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - m4v
    - sc_type
    argTypes:
    - GF_M4VParser*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 396
    functionDepth: 0
    functionLinenumber: 396
    functionLinenumberEnd: 401
    functionName: gf_m4v_parser_reset
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_m4v_parser_reset(GF_M4VParser *m4v, u8 sc_type)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:411,1
    - Dst: M4V_LoadObject
      Src: /src/gpac/src/media_tools/av_parsers.c:416,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:420,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:488,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:506,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 101
    argCount: 2
    argNames:
    - m4v
    - dsi
    argTypes:
    - GF_M4VParser*
    - GF_M4VDecSpecInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 402
    functionDepth: 2
    functionLinenumber: 402
    functionLinenumberEnd: 511
    functionName: gf_m4v_parse_config_mpeg12
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - memset
    - M4V_LoadObject
    - gf_bs_get_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_m4v_parse_config_mpeg12(GF_M4VParser *m4v, GF_M4VDecSpecInfo
      *dsi)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - w
    - h
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 518
    functionDepth: 0
    functionLinenumber: 518
    functionLinenumberEnd: 525
    functionName: m4v_get_sar_idx
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u8
    signature: u8 m4v_get_sar_idx(u32 w, u32 h)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:533,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:537,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:538,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:539,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:540,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:541,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:543,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:545,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:546,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:551,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:552,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:553,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:554,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:554,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:556,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:557,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:558,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:560,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:562,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:577,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:578,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:581,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:582,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:583,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:584,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:585,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:586,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:590,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 58
    argCount: 2
    argNames:
    - m4v
    - dsi
    argTypes:
    - GF_M4VParser*
    - GF_M4VDecSpecInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 591
      start: 527
    functionDepth: 1
    functionLinenumber: 527
    functionLinenumberEnd: 591
    functionName: gf_m4v_parse_vol
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_bs_read_int
    - gf_bs_align
    linkageType: ''
    returnType: void
    signature: void gf_m4v_parse_vol(GF_M4VParser *m4v, GF_M4VDecSpecInfo *dsi)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:600,1
    - Dst: M4V_LoadObject
      Src: /src/gpac/src/media_tools/av_parsers.c:604,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:608,1
    - Dst: gf_m4v_parse_vol
      Src: /src/gpac/src/media_tools/av_parsers.c:612,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:614,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:623,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 2
    argNames:
    - m4v
    - dsi
    argTypes:
    - GF_M4VParser*
    - GF_M4VDecSpecInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 593
    functionDepth: 2
    functionLinenumber: 593
    functionLinenumberEnd: 632
    functionName: gf_m4v_parse_config_mpeg4
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - M4V_LoadObject
    - gf_bs_align
    - gf_bs_get_position
    - memset
    - gf_m4v_parse_vol
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_m4v_parse_config_mpeg4(GF_M4VParser *m4v, GF_M4VDecSpecInfo
      *dsi)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_m4v_parse_config_mpeg12
      Src: /src/gpac/src/media_tools/av_parsers.c:638,1
    - Dst: gf_m4v_parse_config_mpeg4
      Src: /src/gpac/src/media_tools/av_parsers.c:641,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - m4v
    - dsi
    argTypes:
    - GF_M4VParser*
    - GF_M4VDecSpecInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 634
    functionDepth: 3
    functionLinenumber: 634
    functionLinenumberEnd: 643
    functionName: gf_m4v_parse_config
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_m4v_parse_config_mpeg12
    - gf_m4v_parse_config_mpeg4
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m4v_parse_config(GF_M4VParser *m4v, GF_M4VDecSpecInfo
      *dsi)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: M4V_Reset
      Src: /src/gpac/src/media_tools/av_parsers.c:659,1
    - Dst: M4V_LoadObject
      Src: /src/gpac/src/media_tools/av_parsers.c:664,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:679,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:680,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:708,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 59
    argCount: 7
    argNames:
    - m4v
    - dsi
    - frame_type
    - time_inc
    - size
    - start
    - is_coded
    argTypes:
    - GF_M4VParser*
    - GF_M4VDecSpecInfo*
    - u8*
    - u32*
    - u64*
    - u64*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 716
      start: 645
    functionDepth: 2
    functionLinenumber: 645
    functionLinenumberEnd: 716
    functionName: gf_m4v_parse_frame_mpeg12
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - M4V_LoadObject
    - M4V_Reset
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_m4v_parse_frame_mpeg12(GF_M4VParser *m4v, GF_M4VDecSpecInfo
      *dsi, u8 *frame_type, u32 *time_inc, u64 *size, u64 *start, Bool *is_coded)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: M4V_Reset
      Src: /src/gpac/src/media_tools/av_parsers.c:735,1
    - Dst: M4V_LoadObject
      Src: /src/gpac/src/media_tools/av_parsers.c:739,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:754,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:757,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:762,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:765,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:775,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:777,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:778,1
    - Dst: gf_m4v_parse_vol
      Src: /src/gpac/src/media_tools/av_parsers.c:790,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:806,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 79
    argCount: 7
    argNames:
    - m4v
    - dsi
    - frame_type
    - time_inc
    - size
    - start
    - is_coded
    argTypes:
    - GF_M4VParser*
    - GF_M4VDecSpecInfo*
    - u8*
    - u32*
    - u64*
    - u64*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 815
      start: 718
    functionDepth: 2
    functionLinenumber: 718
    functionLinenumberEnd: 815
    functionName: gf_m4v_parse_frame_mpeg4
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - M4V_LoadObject
    - gf_bs_align
    - gf_bs_get_position
    - gf_m4v_parse_vol
    - gf_bs_read_int
    - M4V_Reset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_m4v_parse_frame_mpeg4(GF_M4VParser *m4v, GF_M4VDecSpecInfo
      *dsi, u8 *frame_type, u32 *time_inc, u64 *size, u64 *start, Bool *is_coded)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_m4v_parse_frame_mpeg12
      Src: /src/gpac/src/media_tools/av_parsers.c:821,1
    - Dst: gf_m4v_parse_frame_mpeg4
      Src: /src/gpac/src/media_tools/av_parsers.c:824,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 7
    argNames:
    - m4v
    - dsi
    - frame_type
    - time_inc
    - size
    - start
    - is_coded
    argTypes:
    - GF_M4VParser*
    - GF_M4VDecSpecInfo*
    - u8*
    - u32*
    - u64*
    - u64*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 826
      start: 817
    functionDepth: 3
    functionLinenumber: 817
    functionLinenumberEnd: 826
    functionName: gf_m4v_parse_frame
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_m4v_parse_frame_mpeg4
    - gf_m4v_parse_frame_mpeg12
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m4v_parse_frame(GF_M4VParser *m4v, GF_M4VDecSpecInfo *dsi,
      u8 *frame_type, u32 *time_inc, u64 *size, u64 *start, Bool *is_coded)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_m4v_parser_new
      Src: /src/gpac/src/media_tools/av_parsers.c:835,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:836,1
    - Dst: M4V_LoadObject
      Src: /src/gpac/src/media_tools/av_parsers.c:840,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:842,1
    - Dst: assert
      Src: /src/gpac/src/media_tools/av_parsers.c:846,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/av_parsers.c:847,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:853,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:854,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:855,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:856,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:857,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:857,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:858,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:858,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:859,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:860,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:862,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:862,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:864,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:866,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:867,1
    - Dst: m4v_get_sar_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:870,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:871,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:873,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:874,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:878,1
    - Dst: gf_bs_bits_available
      Src: /src/gpac/src/media_tools/av_parsers.c:887,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:888,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:889,1
    - Dst: gf_m4v_parser_del
      Src: /src/gpac/src/media_tools/av_parsers.c:892,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:893,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/av_parsers.c:894,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:895,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 54
    argCount: 4
    argNames:
    - o_data
    - o_dataLen
    - par_n
    - par_d
    argTypes:
    - u8**
    - u32*
    - s32
    - s32
    assertStmts:
    - condition: (size < (u64)1<<31)
      pos:
        line_end: 845
        line_start: 845
        source_file: /src/gpac/src/media_tools/av_parsers.c
    constantsTouched: []
    func_position:
      end: 897
      start: 828
    functionDepth: 2
    functionLinenumber: 828
    functionLinenumberEnd: 897
    functionName: gf_m4v_rewrite_par
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_m4v_parser_new
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - assert
    - M4V_LoadObject
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_bs_del
    - m4v_get_sar_idx
    - gf_bs_read_int
    - gf_m4v_parser_del
    - gf_bs_bits_available
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_m4v_rewrite_par(u8 **o_data, u32 *o_dataLen, s32 par_n, s32
      par_d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - m4v
    argTypes:
    - GF_M4VParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 903
      start: 899
    functionDepth: 0
    functionLinenumber: 899
    functionLinenumberEnd: 903
    functionName: gf_m4v_get_object_start
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m4v_get_object_start(GF_M4VParser *m4v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - m4v
    argTypes:
    - GF_M4VParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 909
      start: 906
    functionDepth: 0
    functionLinenumber: 906
    functionLinenumberEnd: 909
    functionName: gf_m4v_is_valid_object_type
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_m4v_is_valid_object_type(GF_M4VParser *m4v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_m4v_parser_new
      Src: /src/gpac/src/media_tools/av_parsers.c:919,1
    - Dst: gf_m4v_parse_config
      Src: /src/gpac/src/media_tools/av_parsers.c:920,1
    - Dst: gf_m4v_parser_del
      Src: /src/gpac/src/media_tools/av_parsers.c:922,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - rawdsi
    - rawdsi_size
    - dsi
    argTypes:
    - u8*
    - u32
    - GF_M4VDecSpecInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 924
      start: 913
    functionDepth: 4
    functionLinenumber: 913
    functionLinenumberEnd: 924
    functionName: gf_m4v_get_config
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 6
    functionsReached:
    - gf_m4v_parse_config
    - gf_m4v_parser_new
    - gf_m4v_parser_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m4v_get_config(u8 *rawdsi, u32 rawdsi_size, GF_M4VDecSpecInfo
      *dsi)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_m4v_parser_new
      Src: /src/gpac/src/media_tools/av_parsers.c:932,1
    - Dst: gf_m4v_parse_config
      Src: /src/gpac/src/media_tools/av_parsers.c:933,1
    - Dst: gf_m4v_parser_del
      Src: /src/gpac/src/media_tools/av_parsers.c:935,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - rawdsi
    - rawdsi_size
    - dsi
    argTypes:
    - u8*
    - u32
    - GF_M4VDecSpecInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 937
      start: 926
    functionDepth: 4
    functionLinenumber: 926
    functionLinenumberEnd: 937
    functionName: gf_mpegv12_get_config
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_m4v_parse_config
    - gf_m4v_parser_new
    - gf_m4v_parser_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mpegv12_get_config(u8 *rawdsi, u32 rawdsi_size, GF_M4VDecSpecInfo
      *dsi)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:995,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - objectType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1001
      start: 992
    functionDepth: 1
    functionLinenumber: 992
    functionLinenumberEnd: 1001
    functionName: gf_m4a_object_type_name
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_m4a_object_type_name(u32 objectType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:1084,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - audio_pl
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1090
      start: 1081
    functionDepth: 1
    functionLinenumber: 1081
    functionLinenumberEnd: 1090
    functionName: gf_m4a_get_profile_name
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_m4a_get_profile_name(u8 audio_pl)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_M4ADecSpecInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1121
      start: 1094
    functionDepth: 0
    functionLinenumber: 1094
    functionLinenumberEnd: 1121
    functionName: gf_m4a_get_profile
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m4a_get_profile(GF_M4ADecSpecInfo *cfg)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1131,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1132,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1133,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1134,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1135,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1136,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1137,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1138,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1139,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1140,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1142,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1144,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1146,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1148,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1150,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1151,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:1154,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:1155,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:1159,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:1160,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:1164,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:1165,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:1169,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:1172,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:1176,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:1177,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:1179,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1180,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:1181,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:1182,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 61
    argCount: 2
    argNames:
    - bs
    - cfg
    argTypes:
    - GF_BitStream*
    - GF_M4ADecSpecInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1188
      start: 1123
    functionDepth: 1
    functionLinenumber: 1123
    functionLinenumberEnd: 1188
    functionName: gf_m4a_parse_program_config_element
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_int_log_idx
    - gf_bs_read_int_log
    - gf_bs_align
    - gf_bs_available
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m4a_parse_program_config_element(GF_BitStream *bs, GF_M4ADecSpecInfo
      *cfg)
  - BBCount: 47
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:1194,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1195,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1198,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1200,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1202,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1208,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1220,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1222,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1227,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1229,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1232,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1253,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1254,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1255,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1256,1
    - Dst: gf_m4a_parse_program_config_element
      Src: /src/gpac/src/media_tools/av_parsers.c:1259,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1264,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1268,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1269,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1276,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1277,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1278,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1280,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1298,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1302,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:1309,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:1310,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1312,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1313,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1314,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1316,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1318,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1326,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1327,1
    - Dst: gf_m4a_get_profile
      Src: /src/gpac/src/media_tools/av_parsers.c:1336,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 123
    argCount: 3
    argNames:
    - bs
    - cfg
    - size_known
    argTypes:
    - GF_BitStream*
    - GF_M4ADecSpecInfo*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1338
      start: 1190
    functionDepth: 2
    functionLinenumber: 1190
    functionLinenumberEnd: 1338
    functionName: gf_m4a_parse_config
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_peek_bits
    - gf_bs_read_int_log
    - gf_m4a_get_profile
    - memset
    - gf_bs_available
    - gf_m4a_parse_program_config_element
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m4a_parse_config(GF_BitStream *bs, GF_M4ADecSpecInfo *cfg,
      Bool size_known)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:1345,1
    - Dst: gf_m4a_parse_config
      Src: /src/gpac/src/media_tools/av_parsers.c:1346,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:1347,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - dsi
    - dsi_size
    - cfg
    argTypes:
    - u8*
    - u32
    - GF_M4ADecSpecInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1349
      start: 1340
    functionDepth: 3
    functionLinenumber: 1340
    functionLinenumberEnd: 1349
    functionName: gf_m4a_get_config
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 7
    functionsReached:
    - gf_m4a_parse_config
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m4a_get_config(u8 *dsi, u32 dsi_size, GF_M4ADecSpecInfo
      *cfg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1354,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1357,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1361
      start: 1351
    functionDepth: 1
    functionLinenumber: 1351
    functionLinenumberEnd: 1361
    functionName: gf_latm_get_value
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: u32
    signature: u32 gf_latm_get_value(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - nb_chan
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1371
      start: 1363
    functionDepth: 0
    functionLinenumber: 1363
    functionLinenumberEnd: 1371
    functionName: gf_m4a_get_channel_cfg
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m4a_get_channel_cfg(u32 nb_chan)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1377,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1378,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1379,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1380,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1381,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1382,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1383,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1384,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1385,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1386,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1388,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1390,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1392,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1394,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1396,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1397,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1400,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1401,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1404,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1405,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1408,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1409,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1412,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1415,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1419,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1420,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:1422,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1423,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/av_parsers.c:1424,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 49
    argCount: 2
    argNames:
    - bs
    - cfg
    argTypes:
    - GF_BitStream*
    - GF_M4ADecSpecInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1426
      start: 1373
    functionDepth: 1
    functionLinenumber: 1373
    functionLinenumberEnd: 1426
    functionName: gf_m4a_write_program_config_element_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_int
    - gf_bs_align
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m4a_write_program_config_element_bs(GF_BitStream *bs,
      GF_M4ADecSpecInfo *cfg)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1448,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1449,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1452,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1454,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1456,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1460,1
    - Dst: gf_m4a_get_channel_cfg
      Src: /src/gpac/src/media_tools/av_parsers.c:1462,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:1464,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1467,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1476,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1478,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1480,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1500,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1502,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1504,1
    - Dst: gf_m4a_write_program_config_element_bs
      Src: /src/gpac/src/media_tools/av_parsers.c:1507,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1511,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 76
    argCount: 2
    argNames:
    - bs
    - cfg
    argTypes:
    - GF_BitStream*
    - GF_M4ADecSpecInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1520
      start: 1428
    functionDepth: 2
    functionLinenumber: 1428
    functionLinenumberEnd: 1520
    functionName: gf_m4a_write_config_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_m4a_write_program_config_element_bs
    - gf_m4a_get_channel_cfg
    - gf_bs_write_int
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m4a_write_config_bs(GF_BitStream *bs, GF_M4ADecSpecInfo
      *cfg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:1525,1
    - Dst: gf_m4a_write_config_bs
      Src: /src/gpac/src/media_tools/av_parsers.c:1526,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/av_parsers.c:1527,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:1528,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - cfg
    - dsi
    - dsi_size
    argTypes:
    - GF_M4ADecSpecInfo*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1530
      start: 1522
    functionDepth: 3
    functionLinenumber: 1522
    functionLinenumberEnd: 1530
    functionName: gf_m4a_write_config
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 3
    functionsReached:
    - gf_m4a_write_config_bs
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m4a_write_config(GF_M4ADecSpecInfo *cfg, u8 **dsi, u32
      *dsi_size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: log
      Src: /src/gpac/src/media_tools/av_parsers.c:1539,1
    - Dst: log
      Src: /src/gpac/src/media_tools/av_parsers.c:1539,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/av_parsers.c:1541,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1542,1
    - Dst: gf_bs_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1545,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1549,1
    - Dst: gf_bs_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1552,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - bs
    - n
    - fname
    argTypes:
    - GF_BitStream*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1555
      start: 1535
    functionDepth: 1
    functionLinenumber: 1535
    functionLinenumberEnd: 1555
    functionName: av1_read_ns
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_log
    - gf_assert
    - log
    - gf_bs_read_int
    linkageType: ''
    returnType: u32
    signature: u32 av1_read_ns(GF_BitStream *bs, u32 n, const char *fname)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1559,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1562,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1574,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1577,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1579,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1580,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1581,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1589,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1607,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1618,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1620,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1630,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1633,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 65
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1634
      start: 1557
    functionDepth: 1
    functionLinenumber: 1557
    functionLinenumberEnd: 1634
    functionName: av1_color_config
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: void
    signature: void av1_color_config(GF_BitStream *bs, AV1State *state)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1642,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:1651,1
    - Dst: gf_bs_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1652,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - bs
    - fname
    argTypes:
    - GF_BitStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1654
      start: 1637
    functionDepth: 1
    functionLinenumber: 1637
    functionLinenumberEnd: 1654
    functionName: av1_uvlc
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_log
    - gf_bs_read_int
    linkageType: ''
    returnType: u32
    signature: u32 av1_uvlc(GF_BitStream *bs, const char *fname)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1658,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:1660,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1662,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:1664,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1666,1
    - Dst: av1_uvlc
      Src: /src/gpac/src/media_tools/av_parsers.c:1668,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:1673,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1676
      start: 1656
    functionDepth: 2
    functionLinenumber: 1656
    functionLinenumberEnd: 1676
    functionName: timing_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - av1_uvlc
    - gf_bs_read_int_log
    linkageType: ''
    returnType: void
    signature: void timing_info(GF_BitStream *bs, AV1State *state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1679,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1680,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1681,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1682,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - state
    - bs
    argTypes:
    - AV1State*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1683
      start: 1678
    functionDepth: 1
    functionLinenumber: 1678
    functionLinenumberEnd: 1683
    functionName: decoder_model_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: void
    signature: void decoder_model_info(AV1State *state, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1687,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1688,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1689,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - bs
    - idx
    - buffer_delay_length_minus_1
    argTypes:
    - GF_BitStream*
    - u8
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1690
      start: 1685
    functionDepth: 1
    functionLinenumber: 1685
    functionLinenumberEnd: 1690
    functionName: operating_parameters_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: void
    signature: void operating_parameters_info(GF_BitStream *bs, const u8 idx, const
      u8 buffer_delay_length_minus_1)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1696,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1697,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1698,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1703,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1708,1
    - Dst: timing_info
      Src: /src/gpac/src/media_tools/av_parsers.c:1710,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1711,1
    - Dst: decoder_model_info
      Src: /src/gpac/src/media_tools/av_parsers.c:1713,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1719,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1720,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:1724,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:1726,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:1730,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:1735,1
    - Dst: operating_parameters_info
      Src: /src/gpac/src/media_tools/av_parsers.c:1737,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:1744,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:1746,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1766,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1767,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1768,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1769,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1774,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1777,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1778,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1780,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1781,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1782,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1797,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1798,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1799,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1800,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1801,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1803,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1804,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1810,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1816,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1821,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1826,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1833,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1841,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1842,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1843,1
    - Dst: av1_color_config
      Src: /src/gpac/src/media_tools/av_parsers.c:1844,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1845,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 115
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1846
      start: 1692
    functionDepth: 3
    functionLinenumber: 1692
    functionLinenumberEnd: 1846
    functionName: av1_parse_sequence_header_obu
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - operating_parameters_info
    - timing_info
    - av1_color_config
    - gf_bs_read_int_log_idx
    - gf_bs_read_int_log
    - decoder_model_info
    linkageType: ''
    returnType: void
    signature: void av1_parse_sequence_header_obu(GF_BitStream *bs, AV1State *state)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:1855,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:1857,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/av_parsers.c:1858,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1862
      start: 1852
    functionDepth: 1
    functionLinenumber: 1852
    functionLinenumberEnd: 1862
    functionName: gf_media_probe_ivf
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_available
    - gf_bs_peek_bits
    - GF_4CC
    linkageType: ''
    returnType: Bool
    signature: Bool gf_media_probe_ivf(GF_BitStream *bs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/av_parsers.c:1869,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:1873,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:1874,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:1874,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/av_parsers.c:1878,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/av_parsers.c:1879,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:1880,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/media_tools/av_parsers.c:1884,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:1886,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/media_tools/av_parsers.c:1890,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:1892,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/av_parsers.c:1896,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/media_tools/av_parsers.c:1898,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/media_tools/av_parsers.c:1899,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/media_tools/av_parsers.c:1901,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/media_tools/av_parsers.c:1902,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/media_tools/av_parsers.c:1904,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/media_tools/av_parsers.c:1905,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 7
    argNames:
    - bs
    - width
    - height
    - codec_fourcc
    - timebase_num
    - timebase_den
    - num_frames
    argTypes:
    - GF_BitStream*
    - u32*
    - u32*
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1908
      start: 1864
    functionDepth: 1
    functionLinenumber: 1864
    functionLinenumberEnd: 1908
    functionName: gf_media_parse_ivf_file_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_bs_read_u32
    - GF_LOG
    - gf_bs_read_u16_le
    - GF_4CC
    - gf_bs_available
    - gf_bs_read_u32_le
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_media_parse_ivf_file_header(GF_BitStream *bs, u32 *width,
      u32 *height, u32 *codec_fourcc, u32 *timebase_num, u32 *timebase_den, u32 *num_frames)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:1913,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/media_tools/av_parsers.c:1916,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:1918,1
    - Dst: gf_bs_read_u64_le
      Src: /src/gpac/src/media_tools/av_parsers.c:1923,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - bs
    - frame_size
    - pts
    argTypes:
    - GF_BitStream*
    - u64*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1926
      start: 1910
    functionDepth: 1
    functionLinenumber: 1910
    functionLinenumberEnd: 1926
    functionName: gf_media_parse_ivf_frame_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_available
    - GF_LOG
    - gf_bs_read_u64_le
    - gf_bs_read_u32_le
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_media_parse_ivf_frame_header(GF_BitStream *bs, u64 *frame_size,
      u64 *pts)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:1931,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/av_parsers.c:1934,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:1937,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:1942,1
    - Dst: gf_bs_mark_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:1945,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:1947,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:1956,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:1957,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:1964,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:1968,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:1970,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 5
    argNames:
    - bs
    - ivf_frame_size
    - num_frames_in_superframe
    - frame_sizes
    - superframe_index_size
    argTypes:
    - GF_BitStream*
    - u64
    - u32*
    - u32[]
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1973
      start: 1928
    functionDepth: 1
    functionLinenumber: 1928
    functionLinenumberEnd: 1973
    functionName: gf_vp9_parse_superframe
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_assert
    - gf_bs_seek
    - gf_bs_mark_overflow
    - gf_bs_get_position
    - memset
    - gf_bs_read_u8
    - gf_bs_is_overflow
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_vp9_parse_superframe(GF_BitStream *bs, u64 ivf_frame_size,
      u32 *num_frames_in_superframe, u32 frame_sizes[VP9_MAX_FRAMES_IN_SUPERFRAME],
      u32 *superframe_index_size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1978,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1982,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:1986,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1991
      start: 1976
    functionDepth: 1
    functionLinenumber: 1976
    functionLinenumberEnd: 1991
    functionName: vp9_frame_sync_code
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool vp9_frame_sync_code(GF_BitStream *bs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2013,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2020,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2025,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2028,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2029,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2031,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2033,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2045,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2047,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 2
    argNames:
    - bs
    - vp9_cfg
    argTypes:
    - GF_BitStream*
    - GF_VPConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2054
      start: 2008
    functionDepth: 1
    functionLinenumber: 2008
    functionLinenumberEnd: 2054
    functionName: vp9_color_config
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_read_int_log
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vp9_color_config(GF_BitStream *bs, GF_VPConfig *vp9_cfg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - FrameWidth
    - FrameHeight
    - Sb64Cols
    - Sb64Rows
    argTypes:
    - int
    - int
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2062
      start: 2056
    functionDepth: 0
    functionLinenumber: 2056
    functionLinenumberEnd: 2062
    functionName: vp9_compute_image_size
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void vp9_compute_image_size(int FrameWidth, int FrameHeight, int *Sb64Cols,
      int *Sb64Rows)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2066,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2067,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2070,1
    - Dst: vp9_compute_image_size
      Src: /src/gpac/src/media_tools/av_parsers.c:2074,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 5
    argNames:
    - bs
    - FrameWidth
    - FrameHeight
    - Sb64Cols
    - Sb64Rows
    argTypes:
    - GF_BitStream*
    - int*
    - int*
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2075
      start: 2064
    functionDepth: 1
    functionLinenumber: 2064
    functionLinenumberEnd: 2075
    functionName: vp9_frame_size
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - vp9_compute_image_size
    - gf_bs_read_int_log
    linkageType: ''
    returnType: void
    signature: void vp9_frame_size(GF_BitStream *bs, int *FrameWidth, int *FrameHeight,
      int *Sb64Cols, int *Sb64Rows)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2079,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2081,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2082,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 5
    argNames:
    - bs
    - FrameWidth
    - FrameHeight
    - renderWidth
    - renderHeight
    argTypes:
    - GF_BitStream*
    - int
    - int
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2090
      start: 2077
    functionDepth: 1
    functionLinenumber: 2077
    functionLinenumberEnd: 2090
    functionName: vp9_render_size
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: void
    signature: void vp9_render_size(GF_BitStream *bs, int FrameWidth, int FrameHeight,
      int *renderWidth, int *renderHeight)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:2093,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:2094,1
    - Dst: gf_bs_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:2096,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - bs
    - n
    - fname
    - idx
    argTypes:
    - GF_BitStream*
    - int
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2098
      start: 2092
    functionDepth: 1
    functionLinenumber: 2092
    functionLinenumberEnd: 2098
    functionName: vp9_s
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - gf_bs_log_idx
    linkageType: ''
    returnType: s64
    signature: s64 vp9_s(GF_BitStream *bs, int n, const char *fname, u32 idx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2102,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2103,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2104,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2106,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:2110,1
    - Dst: vp9_s
      Src: /src/gpac/src/media_tools/av_parsers.c:2112,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:2115,1
    - Dst: vp9_s
      Src: /src/gpac/src/media_tools/av_parsers.c:2117,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2121
      start: 2100
    functionDepth: 2
    functionLinenumber: 2100
    functionLinenumberEnd: 2121
    functionName: vp9_loop_filter_params
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - vp9_s
    - gf_bs_read_int_log_idx
    - gf_bs_read_int_log
    linkageType: ''
    returnType: void
    signature: void vp9_loop_filter_params(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2124,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2126,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2128
      start: 2123
    functionDepth: 1
    functionLinenumber: 2123
    functionLinenumberEnd: 2128
    functionName: vp9_delta_q
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: void
    signature: void vp9_delta_q(GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2132,1
    - Dst: vp9_delta_q
      Src: /src/gpac/src/media_tools/av_parsers.c:2133,1
    - Dst: vp9_delta_q
      Src: /src/gpac/src/media_tools/av_parsers.c:2134,1
    - Dst: vp9_delta_q
      Src: /src/gpac/src/media_tools/av_parsers.c:2135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2136
      start: 2130
    functionDepth: 2
    functionLinenumber: 2130
    functionLinenumberEnd: 2136
    functionName: vp9_quantization_params
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    - vp9_delta_q
    linkageType: ''
    returnType: void
    signature: void vp9_quantization_params(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2148,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2150,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2152
      start: 2146
    functionDepth: 1
    functionLinenumber: 2146
    functionLinenumberEnd: 2152
    functionName: vp9_read_prob
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: void
    signature: void vp9_read_prob(GF_BitStream *bs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2156,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2159,1
    - Dst: vp9_read_prob
      Src: /src/gpac/src/media_tools/av_parsers.c:2162,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2164,1
    - Dst: vp9_read_prob
      Src: /src/gpac/src/media_tools/av_parsers.c:2167,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2171,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2173,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2178,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2182,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2184,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 26
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2194
      start: 2154
    functionDepth: 2
    functionLinenumber: 2154
    functionLinenumberEnd: 2194
    functionName: vp9_segmentation_params
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    - vp9_read_prob
    linkageType: ''
    returnType: void
    signature: void vp9_segmentation_params(GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - Sb64Cols
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2202
      start: 2196
    functionDepth: 0
    functionLinenumber: 2196
    functionLinenumberEnd: 2202
    functionName: calc_min_log2_tile_cols
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int calc_min_log2_tile_cols(int Sb64Cols)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - Sb64Cols
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2210
      start: 2204
    functionDepth: 0
    functionLinenumber: 2204
    functionLinenumberEnd: 2210
    functionName: calc_max_log2_tile_cols
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int calc_max_log2_tile_cols(int Sb64Cols)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: calc_min_log2_tile_cols
      Src: /src/gpac/src/media_tools/av_parsers.c:2215,1
    - Dst: calc_max_log2_tile_cols
      Src: /src/gpac/src/media_tools/av_parsers.c:2216,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2219,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2225,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2227,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - bs
    - Sb64Cols
    argTypes:
    - GF_BitStream*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2230
      start: 2212
    functionDepth: 1
    functionLinenumber: 2212
    functionLinenumberEnd: 2230
    functionName: vp9_tile_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - calc_min_log2_tile_cols
    - calc_max_log2_tile_cols
    - gf_bs_read_int_log
    linkageType: ''
    returnType: void
    signature: void vp9_tile_info(GF_BitStream *bs, int Sb64Cols)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2238,1
    - Dst: vp9_frame_size
      Src: /src/gpac/src/media_tools/av_parsers.c:2246,1
    - Dst: vp9_compute_image_size
      Src: /src/gpac/src/media_tools/av_parsers.c:2249,1
    - Dst: vp9_render_size
      Src: /src/gpac/src/media_tools/av_parsers.c:2252,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 11
    argNames:
    - bs
    - refresh_frame_flags
    - ref_frame_idx
    - RefFrameWidth
    - RefFrameHeight
    - FrameWidth
    - FrameHeight
    - RenderWidth
    - RenderHeight
    - Sb64Cols
    - Sb64Rows
    argTypes:
    - GF_BitStream*
    - u8
    - u8*
    - int*
    - int*
    - int*
    - int*
    - int*
    - int*
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2253
      start: 2232
    functionDepth: 2
    functionLinenumber: 2232
    functionLinenumberEnd: 2253
    functionName: vp9_frame_size_with_refs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - vp9_compute_image_size
    - gf_bs_read_int_log
    - vp9_frame_size
    - vp9_render_size
    linkageType: ''
    returnType: void
    signature: "void vp9_frame_size_with_refs(GF_BitStream *bs, u8 refresh_frame_flags,
      u8 * ref_frame_idx, int * RefFrameWidth, int *RefFrameHeight,\n\tint *FrameWidth,
      int *FrameHeight, int *RenderWidth, int *RenderHeight, int *Sb64Cols, int *Sb64Rows)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2257,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2259,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2261
      start: 2255
    functionDepth: 1
    functionLinenumber: 2255
    functionLinenumberEnd: 2261
    functionName: vp9_read_interpolation_filter
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: void
    signature: void vp9_read_interpolation_filter(GF_BitStream *bs)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/av_parsers.c:2273,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2276,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2277,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2278,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2281,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2283,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2288,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2290,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2294,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2295,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2296,1
    - Dst: vp9_frame_sync_code
      Src: /src/gpac/src/media_tools/av_parsers.c:2298,1
    - Dst: vp9_color_config
      Src: /src/gpac/src/media_tools/av_parsers.c:2300,1
    - Dst: vp9_frame_size
      Src: /src/gpac/src/media_tools/av_parsers.c:2302,1
    - Dst: vp9_render_size
      Src: /src/gpac/src/media_tools/av_parsers.c:2303,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2313,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2318,1
    - Dst: vp9_frame_sync_code
      Src: /src/gpac/src/media_tools/av_parsers.c:2322,1
    - Dst: vp9_color_config
      Src: /src/gpac/src/media_tools/av_parsers.c:2326,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2337,1
    - Dst: vp9_frame_size
      Src: /src/gpac/src/media_tools/av_parsers.c:2338,1
    - Dst: vp9_render_size
      Src: /src/gpac/src/media_tools/av_parsers.c:2339,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2342,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:2345,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:2346,1
    - Dst: vp9_frame_size_with_refs
      Src: /src/gpac/src/media_tools/av_parsers.c:2348,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2349,1
    - Dst: vp9_read_interpolation_filter
      Src: /src/gpac/src/media_tools/av_parsers.c:2350,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2355,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2356,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2359,1
    - Dst: vp9_loop_filter_params
      Src: /src/gpac/src/media_tools/av_parsers.c:2365,1
    - Dst: vp9_quantization_params
      Src: /src/gpac/src/media_tools/av_parsers.c:2366,1
    - Dst: vp9_segmentation_params
      Src: /src/gpac/src/media_tools/av_parsers.c:2367,1
    - Dst: vp9_tile_info
      Src: /src/gpac/src/media_tools/av_parsers.c:2368,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2370,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 86
    argCount: 7
    argNames:
    - bs
    - vp9_cfg
    - key_frame
    - FrameWidth
    - FrameHeight
    - renderWidth
    - renderHeight
    argTypes:
    - GF_BitStream*
    - GF_VPConfig*
    - Bool*
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2381
      start: 2266
    functionDepth: 3
    functionLinenumber: 2266
    functionLinenumberEnd: 2381
    functionName: gf_vp9_parse_sample
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - vp9_frame_size_with_refs
    - gf_assert
    - GF_LOG
    - vp9_frame_sync_code
    - gf_bs_read_int_log_idx
    - gf_bs_read_int_log
    - vp9_frame_size
    - vp9_color_config
    - vp9_quantization_params
    - vp9_tile_info
    - vp9_loop_filter_params
    - vp9_read_interpolation_filter
    - vp9_segmentation_params
    - vp9_render_size
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_vp9_parse_sample(GF_BitStream *bs, GF_VPConfig *vp9_cfg,
      Bool *key_frame, u32 *FrameWidth, u32 *FrameHeight, u32 *renderWidth, u32 *renderHeight)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:2389,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:2390,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:2395,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:2398,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/av_parsers.c:2401,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/av_parsers.c:2403,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/av_parsers.c:2406,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/av_parsers.c:2408,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:2409,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:2410,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - mdcv_in
    - mdcv_out
    argTypes:
    - u8[]
    - u8[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2411
      start: 2384
    functionDepth: 1
    functionLinenumber: 2384
    functionLinenumberEnd: 2411
    functionName: gf_av1_format_mdcv_to_mpeg
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - gf_bs_read_u16
    - gf_bs_write_u32
    linkageType: ''
    returnType: void
    signature: void gf_av1_format_mdcv_to_mpeg(u8 mdcv_in[24], u8 mdcv_out[24])
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2416,1
    - Dst: gf_bs_bits_available
      Src: /src/gpac/src/media_tools/av_parsers.c:2417,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:2420,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:2425,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:2426,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:2427,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:2428,1
    - Dst: gf_bs_bits_available
      Src: /src/gpac/src/media_tools/av_parsers.c:2432,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:2433,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:2436,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:2437,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:2438,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 6
    argNames:
    - bs
    - obu_type
    - obu_extension_flag
    - obu_has_size_field
    - temporal_id
    - spatial_id
    argTypes:
    - GF_BitStream*
    - ObuType*
    - Bool*
    - Bool*
    - u8*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2442
      start: 2413
    functionDepth: 1
    functionLinenumber: 2413
    functionLinenumberEnd: 2442
    functionName: gf_av1_parse_obu_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_bs_bits_available
    - gf_bs_read_int
    - gf_bs_seek
    - gf_bs_get_position
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_av1_parse_obu_header(GF_BitStream *bs, ObuType *obu_type,
      Bool *obu_extension_flag, Bool *obu_has_size_field, u8 *temporal_id, u8 *spatial_id)
  - BBCount: 18
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 1
    argNames:
    - obu_type
    argTypes:
    - ObuType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2469
      start: 2446
    functionDepth: 0
    functionLinenumber: 2446
    functionLinenumberEnd: 2469
    functionName: gf_av1_get_obu_name
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_av1_get_obu_name(ObuType obu_type)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - obu_type
    argTypes:
    - ObuType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2480
      start: 2471
    functionDepth: 0
    functionLinenumber: 2471
    functionLinenumberEnd: 2480
    functionName: av1_is_obu_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool av1_is_obu_header(ObuType obu_type)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - state
    - obu_type
    argTypes:
    - AV1State*
    - ObuType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2495
      start: 2484
    functionDepth: 0
    functionLinenumber: 2484
    functionLinenumberEnd: 2495
    functionName: av1_is_obu_frame
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool av1_is_obu_frame(AV1State *state, ObuType obu_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - obu_type
    argTypes:
    - IamfObuType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2500
      start: 2497
    functionDepth: 0
    functionLinenumber: 2497
    functionLinenumberEnd: 2500
    functionName: iamf_is_audio_frame_obu
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool iamf_is_audio_frame_obu(IamfObuType obu_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: iamf_is_audio_frame_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:2504,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - obu_type
    argTypes:
    - IamfObuType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2509
      start: 2502
    functionDepth: 1
    functionLinenumber: 2502
    functionLinenumberEnd: 2509
    functionName: iamf_is_temporal_unit_obu
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - iamf_is_audio_frame_obu
    linkageType: ''
    returnType: Bool
    signature: Bool iamf_is_temporal_unit_obu(IamfObuType obu_type)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - obu_type
    argTypes:
    - IamfObuType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2522
      start: 2511
    functionDepth: 0
    functionLinenumber: 2511
    functionLinenumberEnd: 2522
    functionName: iamf_is_descriptor_obu
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool iamf_is_descriptor_obu(IamfObuType obu_type)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:2529,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - bs
    - opt_Leb128Bytes
    argTypes:
    - GF_BitStream*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2541
      start: 2524
    functionDepth: 1
    functionLinenumber: 2524
    functionLinenumberEnd: 2541
    functionName: gf_av1_leb128_read
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 2
    functionsReached:
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_av1_leb128_read(GF_BitStream *bs, u8 *opt_Leb128Bytes)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2551
      start: 2543
    functionDepth: 0
    functionLinenumber: 2543
    functionLinenumberEnd: 2551
    functionName: gf_av1_leb128_size
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_av1_leb128_size(u64 value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_av1_leb128_size
      Src: /src/gpac/src/media_tools/av_parsers.c:2555,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:2560,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - bs
    - value
    argTypes:
    - GF_BitStream*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2564
      start: 2553
    functionDepth: 1
    functionLinenumber: 2553
    functionLinenumberEnd: 2564
    functionName: gf_av1_leb128_write
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_bs_write_u8
    - gf_av1_leb128_size
    linkageType: ''
    returnType: u64
    signature: u64 gf_av1_leb128_write(GF_BitStream *bs, u64 value)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:2576,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/media_tools/av_parsers.c:2578,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/av_parsers.c:2584,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2586,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:2591,1
    - Dst: gf_av1_parse_obu_header
      Src: /src/gpac/src/media_tools/av_parsers.c:2592,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:2593,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:2597,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:2598,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:2606,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/av_parsers.c:2607,1
    - Dst: gf_av1_leb128_size
      Src: /src/gpac/src/media_tools/av_parsers.c:2615,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:2619,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:2622,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:2629,1
    - Dst: gf_av1_leb128_write
      Src: /src/gpac/src/media_tools/av_parsers.c:2631,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/av_parsers.c:2632,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2632,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/av_parsers.c:2633,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:2634,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:2635,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:2636,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:2638,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/av_parsers.c:2639,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2639,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:2644,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:2646,1
    - Dst: gf_av1_leb128_write
      Src: /src/gpac/src/media_tools/av_parsers.c:2649,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:2654,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/av_parsers.c:2655,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/av_parsers.c:2658,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2658,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2663,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:2664,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:2665,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/av_parsers.c:2670,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/av_parsers.c:2671,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 80
    argCount: 6
    argNames:
    - bs
    - pos
    - obu_length
    - obu_type
    - obu_list
    - state
    argTypes:
    - GF_BitStream*
    - u64
    - u64
    - ObuType
    - GF_List**
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2672
      start: 2567
    functionDepth: 2
    functionLinenumber: 2567
    functionLinenumberEnd: 2672
    functionName: av1_add_obu_internal
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_av1_parse_obu_header
    - gf_av1_leb128_write
    - gf_assert
    - gf_list_new
    - gf_bs_get_content
    - memcpy
    - gf_list_add
    - GF_LOG
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_av1_leb128_size
    - gf_bs_read_u8
    - gf_bs_reassign_buffer
    - gf_malloc
    - gf_bs_seek
    - gf_bs_del
    - gf_bs_write_u8
    linkageType: ''
    returnType: void
    signature: void av1_add_obu_internal(GF_BitStream *bs, u64 pos, u64 obu_length,
      ObuType obu_type, GF_List **obu_list, AV1State *state)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: av1_is_obu_header
      Src: /src/gpac/src/media_tools/av_parsers.c:2676,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2678,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:2679,1
    - Dst: gf_av1_parse_obu_header
      Src: /src/gpac/src/media_tools/av_parsers.c:2683,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:2684,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:2685,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:2687,1
    - Dst: av1_add_obu_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:2695,1
    - Dst: av1_is_obu_frame
      Src: /src/gpac/src/media_tools/av_parsers.c:2697,1
    - Dst: av1_add_obu_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:2699,1
    - Dst: av1_add_obu_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:2702,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 5
    argNames:
    - bs
    - pos
    - obu_length
    - obu_type
    - state
    argTypes:
    - GF_BitStream*
    - u64
    - u64
    - ObuType
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2705
      start: 2674
    functionDepth: 3
    functionLinenumber: 2674
    functionLinenumberEnd: 2705
    functionName: av1_populate_state_from_obu
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_seek
    - av1_add_obu_internal
    - gf_av1_leb128_read
    - gf_bs_get_position
    - gf_av1_parse_obu_header
    - av1_is_obu_header
    - av1_is_obu_frame
    linkageType: ''
    returnType: void
    signature: void av1_populate_state_from_obu(GF_BitStream *bs, u64 pos, u64 obu_length,
      ObuType obu_type, AV1State *state)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:2716,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2719,1
    - Dst: gf_av1_parse_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:2721,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2724,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2727,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2728,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2728,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:2735,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2745,1
    - Dst: av1_populate_state_from_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:2746,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2750
      start: 2707
    functionDepth: 4
    functionLinenumber: 2707
    functionLinenumberEnd: 2750
    functionName: aom_av1_parse_temporal_unit_from_section5
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_av1_parse_obu
    - av1_populate_state_from_obu
    - gf_bs_seek
    - GF_LOG
    - gf_bs_get_position
    - gf_bs_available
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err aom_av1_parse_temporal_unit_from_section5(GF_BitStream *bs,
      AV1State *state)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2755,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:2756,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:2760,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:2775,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2780,1
    - Dst: gf_av1_parse_obu_header
      Src: /src/gpac/src/media_tools/av_parsers.c:2785,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:2792,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2803,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:2811,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:2815,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 47
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2817
      start: 2752
    functionDepth: 2
    functionLinenumber: 2752
    functionLinenumberEnd: 2817
    functionName: gf_media_aom_probe_annexb
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_seek
    - gf_av1_leb128_read
    - gf_bs_get_position
    - gf_av1_parse_obu_header
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: Bool
    signature: Bool gf_media_aom_probe_annexb(GF_BitStream *bs)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_mark_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:2826,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:2827,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2828,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2830,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2834,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:2837,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:2839,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2843,1
    - Dst: Leb128Bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:2843,1
    - Dst: frame_unit_size
      Src: /src/gpac/src/media_tools/av_parsers.c:2843,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2846,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:2850,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:2852,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2856,1
    - Dst: Leb128Bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:2856,1
    - Dst: obu_length
      Src: /src/gpac/src/media_tools/av_parsers.c:2856,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2859,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2860,1
    - Dst: gf_av1_parse_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:2863,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2865,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2868,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2869,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2869,1
    - Dst: av1_populate_state_from_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:2873,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2875,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/av_parsers.c:2881,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2882,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2883,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2883,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 52
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2887
      start: 2819
    functionDepth: 4
    functionLinenumber: 2819
    functionLinenumberEnd: 2887
    functionName: aom_av1_parse_temporal_unit_from_annexb
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_av1_parse_obu
    - av1_populate_state_from_obu
    - gf_assert
    - GF_LOG
    - gf_av1_leb128_read
    - gf_bs_get_position
    - gf_bs_mark_overflow
    - gf_bs_is_overflow
    - Leb128Bytes
    - obu_length
    - frame_unit_size
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err aom_av1_parse_temporal_unit_from_annexb(GF_BitStream *bs, AV1State
      *state)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:2893,1
    - Dst: gf_media_parse_ivf_frame_header
      Src: /src/gpac/src/media_tools/av_parsers.c:2894,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2896,1
    - Dst: if
      Src: /src/gpac/src/media_tools/av_parsers.c:2898,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:2898,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2901,1
    - Dst: gf_av1_parse_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:2903,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2906,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2908,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2909,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2909,1
    - Dst: av1_populate_state_from_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:2913,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2918
      start: 2889
    functionDepth: 4
    functionLinenumber: 2889
    functionLinenumberEnd: 2918
    functionName: aom_av1_parse_temporal_unit_from_ivf
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_av1_parse_obu
    - av1_populate_state_from_obu
    - GF_LOG
    - gf_bs_get_position
    - if
    - gf_media_parse_ivf_frame_header
    - gf_bs_available
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err aom_av1_parse_temporal_unit_from_ivf(GF_BitStream *bs, AV1State
      *state)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - blkSize
    - target
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2939
      start: 2933
    functionDepth: 0
    functionLinenumber: 2933
    functionLinenumberEnd: 2939
    functionName: aom_av1_tile_log2
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 aom_av1_tile_log2(u32 blkSize, u32 target)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:2945,1
    - Dst: gf_bs_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2948,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - bs
    - n
    - name
    argTypes:
    - GF_BitStream*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2950
      start: 2941
    functionDepth: 1
    functionLinenumber: 2941
    functionLinenumberEnd: 2950
    functionName: aom_av1_le
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_log
    - gf_bs_read_int
    linkageType: ''
    returnType: u64
    signature: u64 aom_av1_le(GF_BitStream *bs, u32 n, const char *name)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: aom_av1_tile_log2
      Src: /src/gpac/src/media_tools/av_parsers.c:2964,1
    - Dst: aom_av1_tile_log2
      Src: /src/gpac/src/media_tools/av_parsers.c:2965,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:2965,1
    - Dst: aom_av1_tile_log2
      Src: /src/gpac/src/media_tools/av_parsers.c:2966,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:2966,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/av_parsers.c:2967,1
    - Dst: aom_av1_tile_log2
      Src: /src/gpac/src/media_tools/av_parsers.c:2967,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2968,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2973,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/av_parsers.c:2986,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2989,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:3008,1
    - Dst: av1_read_ns
      Src: /src/gpac/src/media_tools/av_parsers.c:3009,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/av_parsers.c:3011,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:3015,1
    - Dst: aom_av1_tile_log2
      Src: /src/gpac/src/media_tools/av_parsers.c:3019,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/av_parsers.c:3025,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:3029,1
    - Dst: av1_read_ns
      Src: /src/gpac/src/media_tools/av_parsers.c:3030,1
    - Dst: aom_av1_tile_log2
      Src: /src/gpac/src/media_tools/av_parsers.c:3036,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3039,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3040,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 55
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3042
      start: 2953
    functionDepth: 2
    functionLinenumber: 2953
    functionLinenumberEnd: 3042
    functionName: av1_parse_tile_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - aom_av1_tile_log2
    - GF_LOG
    - gf_bs_read_int_log
    - MIN
    - av1_read_ns
    - MAX
    linkageType: ''
    returnType: void
    signature: void av1_parse_tile_info(GF_BitStream *bs, AV1State *state)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3050,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3056,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3064
      start: 3044
    functionDepth: 1
    functionLinenumber: 3044
    functionLinenumberEnd: 3064
    functionName: superres_params
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: void
    signature: void superres_params(GF_BitStream *bs, AV1State *state)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3071,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3073,1
    - Dst: superres_params
      Src: /src/gpac/src/media_tools/av_parsers.c:3080,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - bs
    - state
    - frame_size_override_flag
    argTypes:
    - GF_BitStream*
    - AV1State*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3082
      start: 3066
    functionDepth: 2
    functionLinenumber: 3066
    functionLinenumberEnd: 3082
    functionName: av1_frame_size
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - superres_params
    - gf_bs_read_int_log
    linkageType: ''
    returnType: void
    signature: void av1_frame_size(GF_BitStream *bs, AV1State *state, Bool frame_size_override_flag)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3086,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3088,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3089,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3097
      start: 3084
    functionDepth: 1
    functionLinenumber: 3084
    functionLinenumberEnd: 3097
    functionName: av1_render_size
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: void
    signature: void av1_render_size(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3101,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3105
      start: 3099
    functionDepth: 1
    functionLinenumber: 3099
    functionLinenumberEnd: 3105
    functionName: read_interpolation_filter
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: void
    signature: void read_interpolation_filter(GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3112,1
    - Dst: av1_frame_size
      Src: /src/gpac/src/media_tools/av_parsers.c:3121,1
    - Dst: av1_render_size
      Src: /src/gpac/src/media_tools/av_parsers.c:3122,1
    - Dst: superres_params
      Src: /src/gpac/src/media_tools/av_parsers.c:3125,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 4
    argNames:
    - bs
    - state
    - frame_size_override_flag
    - ref_frame_idx
    argTypes:
    - GF_BitStream*
    - AV1State*
    - Bool
    - s8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3128
      start: 3107
    functionDepth: 3
    functionLinenumber: 3107
    functionLinenumberEnd: 3128
    functionName: frame_size_with_refs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - av1_render_size
    - gf_bs_read_int_log_idx
    - superres_params
    - av1_frame_size
    linkageType: ''
    returnType: void
    signature: void frame_size_with_refs(GF_BitStream *bs, AV1State *state, Bool frame_size_override_flag,
      s8 *ref_frame_idx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3132,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3136,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - bs
    - name_flag
    - name
    argTypes:
    - GF_BitStream*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3141
      start: 3130
    functionDepth: 1
    functionLinenumber: 3130
    functionLinenumberEnd: 3141
    functionName: av1_delta_q
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: s32
    signature: s32 av1_delta_q(GF_BitStream *bs, const char *name_flag, const char
      *name)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 13
    argCount: 8
    argNames:
    - ignoreDeltaQ
    - segmentId
    - base_q_idx
    - delta_q_present
    - CurrentQIndex
    - segmentation_enabled
    - features_SEG_LVL_ALT_Q_enabled
    - features_SEG_LVL_ALT_Q
    argTypes:
    - Bool
    - u32
    - u32
    - u32
    - u32
    - Bool
    - u8*
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3164
      start: 3146
    functionDepth: 0
    functionLinenumber: 3146
    functionLinenumberEnd: 3164
    functionName: av1_get_qindex
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u8
    signature: u8 av1_get_qindex(Bool ignoreDeltaQ, u32 segmentId, u32 base_q_idx,
      u32 delta_q_present, u32 CurrentQIndex, Bool segmentation_enabled, u8 *features_SEG_LVL_ALT_Q_enabled,
      s32 *features_SEG_LVL_ALT_Q)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: av1_read_ns
      Src: /src/gpac/src/media_tools/av_parsers.c:3204,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:3208,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:3214,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - bs
    - numSyms
    argTypes:
    - GF_BitStream*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3219
      start: 3195
    functionDepth: 2
    functionLinenumber: 3195
    functionLinenumberEnd: 3219
    functionName: av1_decode_subexp
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - av1_read_ns
    - gf_bs_read_int
    linkageType: ''
    returnType: u32
    signature: u32 av1_decode_subexp(GF_BitStream *bs, s32 numSyms)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - r
    - v
    argTypes:
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3229
      start: 3221
    functionDepth: 0
    functionLinenumber: 3221
    functionLinenumberEnd: 3229
    functionName: inverse_recenter
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE inverse_recenter(s32 r, u32 v)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: av1_decode_subexp
      Src: /src/gpac/src/media_tools/av_parsers.c:3233,1
    - Dst: inverse_recenter
      Src: /src/gpac/src/media_tools/av_parsers.c:3235,1
    - Dst: inverse_recenter
      Src: /src/gpac/src/media_tools/av_parsers.c:3238,1
    - Dst: inverse_recenter
      Src: /src/gpac/src/media_tools/av_parsers.c:3241,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - bs
    - mx
    - r
    argTypes:
    - GF_BitStream*
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3243
      start: 3231
    functionDepth: 3
    functionLinenumber: 3231
    functionLinenumberEnd: 3243
    functionName: av1_decode_unsigned_subexp_with_ref
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - inverse_recenter
    - av1_decode_subexp
    linkageType: ''
    returnType: s32
    signature: s32 av1_decode_unsigned_subexp_with_ref(GF_BitStream *bs, s32 mx, s32
      r)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: av1_decode_unsigned_subexp_with_ref
      Src: /src/gpac/src/media_tools/av_parsers.c:3246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - bs
    - low
    - high
    - r
    argTypes:
    - GF_BitStream*
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3248
      start: 3244
    functionDepth: 4
    functionLinenumber: 3244
    functionLinenumberEnd: 3248
    functionName: av1_decode_signed_subexp_with_ref
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - av1_decode_unsigned_subexp_with_ref
    linkageType: ''
    returnType: s16
    signature: s16 av1_decode_signed_subexp_with_ref(GF_BitStream *bs, s32 low, s32
      high, s32 r)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: av1_decode_signed_subexp_with_ref
      Src: /src/gpac/src/media_tools/av_parsers.c:3269,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 5
    argNames:
    - state
    - bs
    - type
    - ref
    - idx
    argTypes:
    - AV1State*
    - GF_BitStream*
    - u8
    - u8
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3278
      start: 3250
    functionDepth: 5
    functionLinenumber: 3250
    functionLinenumberEnd: 3278
    functionName: av1_read_global_param
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - av1_decode_signed_subexp_with_ref
    linkageType: ''
    returnType: void
    signature: void av1_read_global_param(AV1State *state, GF_BitStream *bs, u8 type,
      u8 ref, u8 idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - a
    - b
    - state
    argTypes:
    - s32
    - s32
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3288
      start: 3280
    functionDepth: 0
    functionLinenumber: 3280
    functionLinenumberEnd: 3288
    functionName: av1_get_relative_dist
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 av1_get_relative_dist(s32 a, s32 b, AV1State *state)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - state
    argTypes:
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3298
      start: 3290
    functionDepth: 0
    functionLinenumber: 3290
    functionLinenumberEnd: 3298
    functionName: av1_setup_past_independence
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void av1_setup_past_independence(AV1State *state)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:3304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - state
    - primary_ref_frame
    - ref_frame_idx
    argTypes:
    - AV1State*
    - u8
    - s8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3311
      start: 3300
    functionDepth: 1
    functionLinenumber: 3300
    functionLinenumberEnd: 3311
    functionName: av1_load_previous
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void av1_load_previous(AV1State *state, u8 primary_ref_frame, s8 *ref_frame_idx)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - state
    argTypes:
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3334
      start: 3313
    functionDepth: 0
    functionLinenumber: 3313
    functionLinenumberEnd: 3334
    functionName: av1_decode_frame_wrapup
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void av1_decode_frame_wrapup(AV1State *state)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 3
    argNames:
    - curFrameHint
    - shiftedOrderHints
    - usedFrame
    argTypes:
    - u32
    - u8*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3349
      start: 3336
    functionDepth: 0
    functionLinenumber: 3336
    functionLinenumberEnd: 3349
    functionName: find_latest_forward
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 find_latest_forward(u32 curFrameHint, u8 *shiftedOrderHints, u8
      *usedFrame)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: av1_get_relative_dist
      Src: /src/gpac/src/media_tools/av_parsers.c:3373,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:3381,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:3385,1
    - Dst: find_latest_forward
      Src: /src/gpac/src/media_tools/av_parsers.c:3441,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 72
    argCount: 4
    argNames:
    - state
    - last_frame_idx
    - gold_frame_idx
    - ref_frame_idx
    argTypes:
    - AV1State*
    - u8
    - u8
    - s8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3462
      start: 3352
    functionDepth: 1
    functionLinenumber: 3352
    functionLinenumberEnd: 3462
    functionName: av1_set_frame_refs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - av1_get_relative_dist
    - GF_LOG
    - find_latest_forward
    linkageType: ''
    returnType: void
    signature: void av1_set_frame_refs(AV1State *state, u8 last_frame_idx, u8 gold_frame_idx,
      s8 *ref_frame_idx)
  - BBCount: 110
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3491,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3493,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3497,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3502,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3513,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3515,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3523,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3530,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3535,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3549,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3551,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3558,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3571,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3578,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3580,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3585,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3589,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3598,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3609,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3615,1
    - Dst: av1_frame_size
      Src: /src/gpac/src/media_tools/av_parsers.c:3626,1
    - Dst: av1_render_size
      Src: /src/gpac/src/media_tools/av_parsers.c:3627,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3629,1
    - Dst: av1_frame_size
      Src: /src/gpac/src/media_tools/av_parsers.c:3634,1
    - Dst: av1_render_size
      Src: /src/gpac/src/media_tools/av_parsers.c:3635,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3637,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3644,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3646,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3647,1
    - Dst: av1_set_frame_refs
      Src: /src/gpac/src/media_tools/av_parsers.c:3648,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3653,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3657,1
    - Dst: frame_size_with_refs
      Src: /src/gpac/src/media_tools/av_parsers.c:3663,1
    - Dst: av1_frame_size
      Src: /src/gpac/src/media_tools/av_parsers.c:3666,1
    - Dst: av1_render_size
      Src: /src/gpac/src/media_tools/av_parsers.c:3667,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3671,1
    - Dst: read_interpolation_filter
      Src: /src/gpac/src/media_tools/av_parsers.c:3674,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3676,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3678,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3703,1
    - Dst: av1_setup_past_independence
      Src: /src/gpac/src/media_tools/av_parsers.c:3707,1
    - Dst: av1_load_previous
      Src: /src/gpac/src/media_tools/av_parsers.c:3711,1
    - Dst: av1_parse_tile_info
      Src: /src/gpac/src/media_tools/av_parsers.c:3714,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3716,1
    - Dst: av1_delta_q
      Src: /src/gpac/src/media_tools/av_parsers.c:3721,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3725,1
    - Dst: av1_delta_q
      Src: /src/gpac/src/media_tools/av_parsers.c:3727,1
    - Dst: av1_delta_q
      Src: /src/gpac/src/media_tools/av_parsers.c:3728,1
    - Dst: av1_delta_q
      Src: /src/gpac/src/media_tools/av_parsers.c:3730,1
    - Dst: av1_delta_q
      Src: /src/gpac/src/media_tools/av_parsers.c:3731,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3734,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3735,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3736,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3738,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3746,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3751,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3753,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3754,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:3760,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:3767,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:3770,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3784,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3787,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3796,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3799,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3800,1
    - Dst: av1_get_qindex
      Src: /src/gpac/src/media_tools/av_parsers.c:3807,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3816,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3817,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3820,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3821,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3824,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3825,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3827,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3831,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3833,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3837,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3839,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3847,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3848,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3851,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3852,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3854,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3855,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3866,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3877,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3880,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3882,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3887,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3895,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3903,1
    - Dst: av1_get_relative_dist
      Src: /src/gpac/src/media_tools/av_parsers.c:3918,1
    - Dst: av1_get_relative_dist
      Src: /src/gpac/src/media_tools/av_parsers.c:3919,1
    - Dst: av1_get_relative_dist
      Src: /src/gpac/src/media_tools/av_parsers.c:3924,1
    - Dst: av1_get_relative_dist
      Src: /src/gpac/src/media_tools/av_parsers.c:3925,1
    - Dst: av1_get_relative_dist
      Src: /src/gpac/src/media_tools/av_parsers.c:3944,1
    - Dst: av1_get_relative_dist
      Src: /src/gpac/src/media_tools/av_parsers.c:3945,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3962,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3970,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3973,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3987,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3989,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3994,1
    - Dst: av1_read_global_param
      Src: /src/gpac/src/media_tools/av_parsers.c:4001,1
    - Dst: av1_read_global_param
      Src: /src/gpac/src/media_tools/av_parsers.c:4002,1
    - Dst: av1_read_global_param
      Src: /src/gpac/src/media_tools/av_parsers.c:4004,1
    - Dst: av1_read_global_param
      Src: /src/gpac/src/media_tools/av_parsers.c:4005,1
    - Dst: av1_read_global_param
      Src: /src/gpac/src/media_tools/av_parsers.c:4014,1
    - Dst: av1_read_global_param
      Src: /src/gpac/src/media_tools/av_parsers.c:4015,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4024,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4026,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4029,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4032,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4035,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:4037,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:4038,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4042,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4051,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:4053,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:4054,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4056,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:4058,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:4059,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4062,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4063,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:4069,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:4074,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:4079,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4082,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4083,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4085,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4086,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4087,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4090,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4091,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4092,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4094,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4095,1
    CyclomaticComplexity: 187
    EdgeCount: 187
    ICount: 440
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4101
      start: 3465
    functionDepth: 6
    functionLinenumber: 3465
    functionLinenumberEnd: 4101
    functionName: av1_parse_uncompressed_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - av1_render_size
    - gf_bs_read_int_log_idx2
    - av1_get_relative_dist
    - av1_load_previous
    - av1_read_global_param
    - av1_get_qindex
    - gf_bs_read_int_log_idx
    - gf_bs_read_int_log
    - read_interpolation_filter
    - av1_set_frame_refs
    - frame_size_with_refs
    - av1_frame_size
    - av1_setup_past_independence
    - av1_delta_q
    - av1_parse_tile_info
    linkageType: ''
    returnType: void
    signature: void av1_parse_uncompressed_header(GF_BitStream *bs, AV1State *state)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:4107,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - state
    argTypes:
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4111
      start: 4103
    functionDepth: 0
    functionLinenumber: 4103
    functionLinenumberEnd: 4111
    functionName: gf_av1_init_state
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 2
    functionsReached:
    - memset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_av1_init_state(AV1State *state)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/av_parsers.c:4119,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/av_parsers.c:4120,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4121,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4122,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/av_parsers.c:4127,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/av_parsers.c:4128,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4129,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4130,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:4135,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/av_parsers.c:4140,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/av_parsers.c:4141,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4149,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:4153,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4161,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 2
    argNames:
    - state
    - is_destroy
    argTypes:
    - AV1State*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4163
      start: 4113
    functionDepth: 1
    functionLinenumber: 4113
    functionLinenumberEnd: 4163
    functionName: gf_av1_reset_state
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_bs_seek
    - gf_bs_del
    - gf_list_count
    - memset
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_av1_reset_state(AV1State *state, Bool is_destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:4171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 1
    argNames:
    - state
    argTypes:
    - IAMFState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4192
      start: 4165
    functionDepth: 0
    functionLinenumber: 4165
    functionLinenumberEnd: 4192
    functionName: gf_iamf_init_state
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - memset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_iamf_init_state(IAMFState *state)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/av_parsers.c:4200,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/av_parsers.c:4201,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4203,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4204,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/av_parsers.c:4209,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/av_parsers.c:4210,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4212,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4213,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/av_parsers.c:4226,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/av_parsers.c:4227,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4230,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:4234,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4242,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 2
    argNames:
    - state
    - is_destroy
    argTypes:
    - IAMFState*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4244
      start: 4194
    functionDepth: 1
    functionLinenumber: 4194
    functionLinenumberEnd: 4244
    functionName: gf_iamf_reset_state
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_bs_seek
    - gf_bs_del
    - gf_list_count
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_iamf_reset_state(IAMFState *state, Bool is_destroy)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4253,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4263,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4264,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:4268,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:4270,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4279,1
    - Dst: aom_av1_le
      Src: /src/gpac/src/media_tools/av_parsers.c:4285,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4286,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4293,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:4300,1
    - Dst: av1_decode_frame_wrapup
      Src: /src/gpac/src/media_tools/av_parsers.c:4304,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 4
    argNames:
    - bs
    - state
    - obu_start
    - obu_size
    argTypes:
    - GF_BitStream*
    - AV1State*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4307
      start: 4246
    functionDepth: 2
    functionLinenumber: 4246
    functionLinenumberEnd: 4307
    functionName: av1_parse_tile_group
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - av1_decode_frame_wrapup
    - GF_LOG
    - gf_bs_read_int_log
    - gf_bs_align
    - gf_bs_get_position
    - aom_av1_le
    - GF_ARRAY_LENGTH
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av1_parse_tile_group(GF_BitStream *bs, AV1State *state, u64
      obu_start, u64 obu_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4313,1
    - Dst: av1_parse_uncompressed_header
      Src: /src/gpac/src/media_tools/av_parsers.c:4316,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4318,1
    - Dst: av1_decode_frame_wrapup
      Src: /src/gpac/src/media_tools/av_parsers.c:4321,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4329
      start: 4309
    functionDepth: 7
    functionLinenumber: 4309
    functionLinenumberEnd: 4329
    functionName: av1_parse_frame_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - av1_decode_frame_wrapup
    - av1_parse_uncompressed_header
    - gf_bs_get_position
    linkageType: ''
    returnType: void
    signature: void av1_parse_frame_header(GF_BitStream *bs, AV1State *state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: av1_parse_frame_header
      Src: /src/gpac/src/media_tools/av_parsers.c:4333,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:4336,1
    - Dst: gf_bs_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:4337,1
    - Dst: av1_parse_tile_group
      Src: /src/gpac/src/media_tools/av_parsers.c:4339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - bs
    - state
    - obu_start
    - obu_size
    argTypes:
    - GF_BitStream*
    - AV1State*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4340
      start: 4331
    functionDepth: 8
    functionLinenumber: 4331
    functionLinenumberEnd: 4340
    functionName: av1_parse_frame
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - av1_parse_frame_header
    - av1_parse_tile_group
    - gf_bs_align
    - gf_bs_log_idx
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av1_parse_frame(GF_BitStream *bs, AV1State *state, u64 obu_start,
      u64 obu_size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4349,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4350,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4351,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4352,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4353,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4356,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4357,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4358,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4360,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4362,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4363,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4365,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4366,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4368,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4373,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4375,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - sei
    - bs
    argTypes:
    - GF_SEIInfo*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4377
      start: 4342
    functionDepth: 1
    functionLinenumber: 4342
    functionLinenumberEnd: 4377
    functionName: av1_parse_timecode_obu
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: void
    signature: void av1_parse_timecode_obu(GF_SEIInfo *sei, GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4385,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4386,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4387,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:4392,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:4393,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:4394,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4397,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4400,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 16
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4407
      start: 4379
    functionDepth: 1
    functionLinenumber: 4379
    functionLinenumberEnd: 4407
    functionName: av1_parse_itu_t_t35_metadata
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_read_int
    - gf_bs_read_u8
    linkageType: ''
    returnType: void
    signature: void av1_parse_itu_t_t35_metadata(GF_BitStream *bs,  AV1State *state)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:4411,1
    - Dst: av1_parse_itu_t_t35_metadata
      Src: /src/gpac/src/media_tools/av_parsers.c:4415,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:4418,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:4422,1
    - Dst: av1_parse_timecode_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:4426,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - state
    - bs
    argTypes:
    - AV1State*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4431
      start: 4409
    functionDepth: 2
    functionLinenumber: 4409
    functionLinenumberEnd: 4431
    functionName: av1_parse_obu_metadata
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - av1_parse_timecode_obu
    - gf_av1_leb128_read
    - av1_parse_itu_t_t35_metadata
    linkageType: ''
    returnType: void
    signature: void av1_parse_obu_metadata(AV1State *state, GF_BitStream *bs)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4438,1
    - Dst: gf_bs_mark_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4443,1
    - Dst: gf_av1_parse_obu_header
      Src: /src/gpac/src/media_tools/av_parsers.c:4448,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4449,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:4455,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4462,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4466,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4467,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:4467,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4468,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4484,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4498,1
    - Dst: av1_parse_sequence_header_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:4507,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4508,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4508,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4509,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4513,1
    - Dst: av1_parse_obu_metadata
      Src: /src/gpac/src/media_tools/av_parsers.c:4517,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4518,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4519,1
    - Dst: av1_parse_frame_header
      Src: /src/gpac/src/media_tools/av_parsers.c:4525,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4526,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4526,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4527,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4531,1
    - Dst: av1_parse_frame
      Src: /src/gpac/src/media_tools/av_parsers.c:4534,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4535,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4535,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4536,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4539,1
    - Dst: av1_parse_tile_group
      Src: /src/gpac/src/media_tools/av_parsers.c:4543,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4544,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4544,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4545,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4549,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4555,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4558,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4559,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4572,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 123
    argCount: 5
    argNames:
    - bs
    - obu_type
    - obu_size
    - obu_hdr_size
    - state
    argTypes:
    - GF_BitStream*
    - ObuType*
    - u64*
    - u32*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4580
      start: 4433
    functionDepth: 9
    functionLinenumber: 4433
    functionLinenumberEnd: 4580
    functionName: gf_av1_parse_obu
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 5
    functionsReached:
    - gf_bs_seek
    - GF_LOG
    - av1_parse_frame
    - gf_av1_leb128_read
    - av1_parse_tile_group
    - av1_parse_frame_header
    - gf_bs_mark_overflow
    - gf_bs_get_position
    - gf_av1_parse_obu_header
    - av1_parse_sequence_header_obu
    - gf_bs_available
    - gf_bs_is_overflow
    - av1_parse_obu_metadata
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_av1_parse_obu(GF_BitStream *bs, ObuType *obu_type, u64
      *obu_size, u32 *obu_hdr_size, AV1State *state)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:4588,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4590,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:4591,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/av_parsers.c:4594,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/av_parsers.c:4595,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/av_parsers.c:4596,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4597,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/av_parsers.c:4597,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4598,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4602,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:4603,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:4604,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4605,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:4608,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:4609,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/av_parsers.c:4610,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:4611,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:4612,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4613,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4614,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4615,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4616,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4617,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4618,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:4619,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:4620,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:4621,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4622,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4623,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4624,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4625,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4626,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:4630,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:4637,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4641,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4643,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4644,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4648,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 60
    argCount: 2
    argNames:
    - bs
    - prores_frame
    argTypes:
    - GF_BitStream*
    - GF_ProResFrameInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4651
      start: 4583
    functionDepth: 1
    functionLinenumber: 4583
    functionLinenumberEnd: 4651
    functionName: gf_media_prores_parse_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_bs_read_u32
    - gf_bs_seek
    - gf_bs_read_u16
    - GF_LOG
    - gf_bs_get_position
    - memset
    - gf_bs_read_int
    - GF_4CC
    - gf_bs_available
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_prores_parse_bs(GF_BitStream *bs, GF_ProResFrameInfo
      *prores_frame)
  - BBCount: 34
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 63
    argCount: 1
    argNames:
    - obu_type
    argTypes:
    - IamfObuType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4694
      start: 4655
    functionDepth: 0
    functionLinenumber: 4655
    functionLinenumberEnd: 4694
    functionName: gf_iamf_get_obu_name
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_iamf_get_obu_name(IamfObuType obu_type)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4708,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4710,1
    - Dst: iamf_is_temporal_unit_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:4712,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4713,1
    - Dst: gf_iamf_get_obu_name
      Src: /src/gpac/src/media_tools/av_parsers.c:4713,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4718,1
    - Dst: iamf_is_audio_frame_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:4720,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4721,1
    - Dst: gf_iamf_get_obu_name
      Src: /src/gpac/src/media_tools/av_parsers.c:4721,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4725,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:4736,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:4742,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:4743,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:4753,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:4754,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:4758,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 40
    argCount: 5
    argNames:
    - bs
    - obu_type
    - obu_size
    - num_samples_to_trim_at_start
    - num_samples_to_trim_at_end
    argTypes:
    - GF_BitStream*
    - IamfObuType*
    - u64*
    - u64*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4763
      start: 4698
    functionDepth: 2
    functionLinenumber: 4698
    functionLinenumberEnd: 4763
    functionName: gf_iamf_parse_obu_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - iamf_is_audio_frame_obu
    - gf_iamf_get_obu_name
    - GF_LOG
    - gf_av1_leb128_read
    - iamf_is_temporal_unit_obu
    - gf_bs_read_int
    - gf_bs_read_u8
    - gf_bs_available
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_iamf_parse_obu_header(GF_BitStream *bs, IamfObuType *obu_type,
      u64 *obu_size, u64 *num_samples_to_trim_at_start, u64 *num_samples_to_trim_at_end)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - profile
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4768
      start: 4765
    functionDepth: 0
    functionLinenumber: 4765
    functionLinenumberEnd: 4768
    functionName: iamf_is_profile_supported
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool iamf_is_profile_supported(u8 profile)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4772,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/av_parsers.c:4773,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4776,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4778,1
    - Dst: iamf_is_profile_supported
      Src: /src/gpac/src/media_tools/av_parsers.c:4780,1
    - Dst: iamf_is_profile_supported
      Src: /src/gpac/src/media_tools/av_parsers.c:4780,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - IAMFState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4786
      start: 4770
    functionDepth: 1
    functionLinenumber: 4770
    functionLinenumberEnd: 4786
    functionName: iamf_parse_iamf_sequence_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    - iamf_is_profile_supported
    - GF_4CC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iamf_parse_iamf_sequence_header(GF_BitStream *bs, IAMFState
      *state)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:4792,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4793,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:4794,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4795,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/av_parsers.c:4797,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/av_parsers.c:4801,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4802,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4803,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4804,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4805,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4806,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4807,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4808,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4809,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4810,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4811,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/av_parsers.c:4814,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4815,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4816,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4817,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/av_parsers.c:4820,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/media_tools/av_parsers.c:4824,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:4838,1
    - Dst: gf_m4a_parse_config
      Src: /src/gpac/src/media_tools/av_parsers.c:4840,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:4844,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/media_tools/av_parsers.c:4853,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 50
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - IAMFState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4856
      start: 4788
    functionDepth: 4
    functionLinenumber: 4788
    functionLinenumberEnd: 4856
    functionName: iamf_parse_codec_config
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_odf_parse_descriptor
    - gf_av1_leb128_read
    - gf_bs_read_int_log
    - gf_bs_del
    - gf_m4a_parse_config
    - GF_4CC
    - gf_odf_delete_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err iamf_parse_codec_config(GF_BitStream *bs, IAMFState *state)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:4860,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4861,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4862,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:4863,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:4864,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - IAMFState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4874
      start: 4858
    functionDepth: 2
    functionLinenumber: 4858
    functionLinenumberEnd: 4874
    functionName: iamf_parse_audio_element
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_av1_leb128_read
    - gf_bs_read_int_log
    linkageType: ''
    returnType: void
    signature: void iamf_parse_audio_element(GF_BitStream *bs, IAMFState *state)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:4883,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4889,1
    - Dst: gf_iamf_parse_obu_header
      Src: /src/gpac/src/media_tools/av_parsers.c:4890,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4892,1
    - Dst: iamf_parse_iamf_sequence_header
      Src: /src/gpac/src/media_tools/av_parsers.c:4896,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4897,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4899
      start: 4876
    functionDepth: 3
    functionLinenumber: 4876
    functionLinenumberEnd: 4899
    functionName: gf_media_probe_iamf
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_peek_bits
    - gf_bs_seek
    - gf_iamf_parse_obu_header
    - gf_bs_get_position
    - iamf_parse_iamf_sequence_header
    linkageType: ''
    returnType: Bool
    signature: Bool gf_media_probe_iamf(GF_BitStream *bs)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4905,1
    - Dst: gf_bs_mark_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4911,1
    - Dst: gf_iamf_parse_obu_header
      Src: /src/gpac/src/media_tools/av_parsers.c:4913,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4916,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4917,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:4917,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4918,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4922,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4923,1
    - Dst: iamf_parse_iamf_sequence_header
      Src: /src/gpac/src/media_tools/av_parsers.c:4931,1
    - Dst: iamf_parse_codec_config
      Src: /src/gpac/src/media_tools/av_parsers.c:4937,1
    - Dst: iamf_parse_audio_element
      Src: /src/gpac/src/media_tools/av_parsers.c:4940,1
    - Dst: iamf_is_descriptor_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:4945,1
    - Dst: iamf_is_temporal_unit_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:4947,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4952,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4952,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4953,1
    - Dst: gf_iamf_get_obu_name
      Src: /src/gpac/src/media_tools/av_parsers.c:4953,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4957,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 44
    argCount: 4
    argNames:
    - bs
    - obu_type
    - obu_size
    - state
    argTypes:
    - GF_BitStream*
    - IamfObuType*
    - u64*
    - IAMFState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4960
      start: 4901
    functionDepth: 5
    functionLinenumber: 4901
    functionLinenumberEnd: 4960
    functionName: gf_iamf_parse_obu
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - iamf_parse_audio_element
    - gf_iamf_get_obu_name
    - gf_bs_seek
    - GF_LOG
    - iamf_parse_codec_config
    - gf_iamf_parse_obu_header
    - gf_bs_mark_overflow
    - gf_bs_get_position
    - iamf_parse_iamf_sequence_header
    - iamf_is_temporal_unit_obu
    - gf_bs_available
    - gf_bs_is_overflow
    - iamf_is_descriptor_obu
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_iamf_parse_obu(GF_BitStream *bs, IamfObuType *obu_type,
      u64 *obu_size, IAMFState *state)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/av_parsers.c:4966,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4968,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:4973,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4975,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/av_parsers.c:4981,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4983,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/media_tools/av_parsers.c:4985,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4990,1
    - Dst: gf_iamf_parse_obu_header
      Src: /src/gpac/src/media_tools/av_parsers.c:4991,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4992,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:4994,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:4995,1
    - Dst: iamf_is_temporal_unit_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:4998,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/av_parsers.c:4999,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5003,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:5004,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:5005,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/av_parsers.c:5010,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/av_parsers.c:5011,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 40
    argCount: 6
    argNames:
    - bs
    - pos
    - obu_size
    - obu_type
    - obu_list
    - state
    argTypes:
    - GF_BitStream*
    - u64
    - u64
    - IamfObuType
    - GF_List**
    - IAMFState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5012
      start: 4962
    functionDepth: 3
    functionLinenumber: 4962
    functionLinenumberEnd: 5012
    functionName: iamf_add_obu_internal
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_read_data
    - gf_list_new
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_seek
    - GF_LOG
    - gf_bs_get_content
    - gf_iamf_parse_obu_header
    - gf_bs_write_data
    - iamf_is_temporal_unit_obu
    - gf_list_add
    - gf_bs_reassign_buffer
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void iamf_add_obu_internal(GF_BitStream *bs, u64 pos, u64 obu_size,
      IamfObuType obu_type, GF_List **obu_list, IAMFState *state)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: iamf_is_descriptor_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:5017,1
    - Dst: iamf_is_temporal_unit_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:5019,1
    - Dst: iamf_add_obu_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:5028,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 5
    argNames:
    - bs
    - pos
    - obu_length
    - obu_type
    - state
    argTypes:
    - GF_BitStream*
    - u64
    - u64
    - IamfObuType
    - IAMFState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5029
      start: 5014
    functionDepth: 4
    functionLinenumber: 5014
    functionLinenumberEnd: 5029
    functionName: iamf_populate_state_from_obu
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - iamf_add_obu_internal
    - iamf_is_temporal_unit_obu
    - iamf_is_descriptor_obu
    linkageType: ''
    returnType: void
    signature: void iamf_populate_state_from_obu(GF_BitStream *bs, u64 pos, u64 obu_length,
      IamfObuType obu_type, IAMFState *state)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:5039,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:5042,1
    - Dst: gf_iamf_parse_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:5044,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:5048,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5049,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:5049,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5059,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5065,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:5069,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5073,1
    - Dst: iamf_populate_state_from_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:5074,1
    - Dst: iamf_is_temporal_unit_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:5076,1
    - Dst: iamf_is_audio_frame_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:5080,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5087,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 60
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - IAMFState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5111
      start: 5031
    functionDepth: 6
    functionLinenumber: 5031
    functionLinenumberEnd: 5111
    functionName: aom_iamf_parse_temporal_unit
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - iamf_is_audio_frame_obu
    - gf_bs_seek
    - iamf_populate_state_from_obu
    - GF_LOG
    - gf_bs_get_position
    - gf_iamf_parse_obu
    - iamf_is_temporal_unit_obu
    - gf_bs_available
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err aom_iamf_parse_temporal_unit(GF_BitStream *bs, IAMFState *state)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - hdr
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5119
      start: 5115
    functionDepth: 0
    functionLinenumber: 5115
    functionLinenumberEnd: 5119
    functionName: gf_mp3_version
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mp3_version(u32 hdr)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_mp3_version
      Src: /src/gpac/src/media_tools/av_parsers.c:5124,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - hdr
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5137
      start: 5121
    functionDepth: 1
    functionLinenumber: 5121
    functionLinenumberEnd: 5137
    functionName: gf_mp3_version_name
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 2
    functionsReached:
    - gf_mp3_version
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_mp3_version_name(u32 hdr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - hdr
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5145
      start: 5141
    functionDepth: 0
    functionLinenumber: 5141
    functionLinenumberEnd: 5145
    functionName: gf_mp3_layer
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mp3_layer(u32 hdr)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - hdr
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5152
      start: 5147
    functionDepth: 0
    functionLinenumber: 5147
    functionLinenumberEnd: 5152
    functionName: gf_mp3_num_channels
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mp3_num_channels(u32 hdr)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_mp3_version
      Src: /src/gpac/src/media_tools/av_parsers.c:5159,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5173,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 1
    argNames:
    - hdr
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5184
      start: 5154
    functionDepth: 1
    functionLinenumber: 5154
    functionLinenumberEnd: 5184
    functionName: gf_mp3_sampling_rate
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 3
    functionsReached:
    - GF_LOG
    - gf_mp3_version
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mp3_sampling_rate(u32 hdr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mp3_version
      Src: /src/gpac/src/media_tools/av_parsers.c:5189,1
    - Dst: gf_mp3_layer
      Src: /src/gpac/src/media_tools/av_parsers.c:5190,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - hdr
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5198
      start: 5186
    functionDepth: 1
    functionLinenumber: 5186
    functionLinenumberEnd: 5198
    functionName: gf_mp3_window_size
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 2
    functionsReached:
    - gf_mp3_version
    - gf_mp3_layer
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mp3_window_size(u32 hdr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_mp3_version
      Src: /src/gpac/src/media_tools/av_parsers.c:5203,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - hdr
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5212
      start: 5200
    functionDepth: 1
    functionLinenumber: 5200
    functionLinenumberEnd: 5212
    functionName: gf_mp3_object_type_indication
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_mp3_version
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mp3_object_type_indication(u32 hdr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_mp3_version
      Src: /src/gpac/src/media_tools/av_parsers.c:5241,1
    - Dst: gf_mp3_layer
      Src: /src/gpac/src/media_tools/av_parsers.c:5242,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5248,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5258,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5262,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - hdr
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5266
      start: 5239
    functionDepth: 1
    functionLinenumber: 5239
    functionLinenumberEnd: 5266
    functionName: gf_mp3_bit_rate
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_mp3_version
    - gf_mp3_layer
    linkageType: ''
    returnType: u32
    signature: u32 gf_mp3_bit_rate(u32 hdr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mp3_version
      Src: /src/gpac/src/media_tools/av_parsers.c:5273,1
    - Dst: gf_mp3_layer
      Src: /src/gpac/src/media_tools/av_parsers.c:5274,1
    - Dst: gf_mp3_bit_rate
      Src: /src/gpac/src/media_tools/av_parsers.c:5276,1
    - Dst: gf_mp3_sampling_rate
      Src: /src/gpac/src/media_tools/av_parsers.c:5277,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - hdr
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5291
      start: 5270
    functionDepth: 2
    functionLinenumber: 5270
    functionLinenumberEnd: 5291
    functionName: gf_mp3_frame_size
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 2
    functionsReached:
    - gf_mp3_bit_rate
    - gf_mp3_sampling_rate
    - gf_mp3_version
    - gf_mp3_layer
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mp3_frame_size(u32 hdr)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_fread
      Src: /src/gpac/src/media_tools/av_parsers.c:5303,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/av_parsers.c:5307,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 43
    argCount: 1
    argNames:
    - in
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5347
      start: 5294
    functionDepth: 1
    functionLinenumber: 5294
    functionLinenumberEnd: 5347
    functionName: gf_mp3_get_next_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_fread
    - GF_4CC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mp3_get_next_header(FILE* in)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/av_parsers.c:5367,1
    - Dst: gf_mp3_frame_size
      Src: /src/gpac/src/media_tools/av_parsers.c:5368,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 50
    argCount: 3
    argNames:
    - buffer
    - size
    - pos
    argTypes:
    - u8*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5413
      start: 5349
    functionDepth: 3
    functionLinenumber: 5349
    functionLinenumberEnd: 5413
    functionName: gf_mp3_get_next_header_mem
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_mp3_frame_size
    - GF_4CC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mp3_get_next_header_mem(const u8 *buffer, u32 size, u32
      *pos)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - profile_idc
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5428
      start: 5417
    functionDepth: 0
    functionLinenumber: 5417
    functionLinenumberEnd: 5428
    functionName: gf_avcc_use_extensions
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_avcc_use_extensions(u8 profile_idc)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 1
    argNames:
    - video_prof
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5455
      start: 5429
    functionDepth: 0
    functionLinenumber: 5429
    functionLinenumberEnd: 5455
    functionName: gf_avc_get_profile_name
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_avc_get_profile_name(u8 video_prof)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - video_prof
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5470
      start: 5457
    functionDepth: 0
    functionLinenumber: 5457
    functionLinenumberEnd: 5470
    functionName: gf_hevc_get_profile_name
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_hevc_get_profile_name(u8 video_prof)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - chroma_format
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5484
      start: 5471
    functionDepth: 0
    functionLinenumber: 5471
    functionLinenumberEnd: 5484
    functionName: gf_avc_hevc_get_chroma_format_name
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_avc_hevc_get_chroma_format_name(u8 chroma_format)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:5495,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:5500,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:5503,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5504,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5506,1
    - Dst: gf_bs_mark_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:5508,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:5515,1
    - Dst: gf_bs_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:5524,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 5
    argNames:
    - bs
    - fname
    - idx1
    - idx2
    - idx3
    argTypes:
    - GF_BitStream*
    - char*
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5527
      start: 5486
    functionDepth: 1
    functionLinenumber: 5486
    functionLinenumberEnd: 5527
    functionName: gf_bs_read_ue_log_idx3
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_mark_overflow
    - gf_bs_read_int
    - gf_bs_available
    - gf_bs_is_overflow
    - gf_bs_log_idx
    linkageType: ''
    returnType: u32
    signature: u32 gf_bs_read_ue_log_idx3(GF_BitStream *bs, const char *fname, s32
      idx1, s32 idx2, s32 idx3)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _bs
    - ','
    - _fname
    - ','
    - _idx1
    - ','
    - _idx2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5530
      start: 5529
    functionDepth: 0
    functionLinenumber: 5529
    functionLinenumberEnd: 5530
    functionName: gf_bs_read_ue_log_idx2
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: gf_bs_read_ue_log_idx2(_bs, _fname, _idx1, _idx2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _bs
    - ','
    - _fname
    - ','
    - _idx
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5531
      start: 5530
    functionDepth: 0
    functionLinenumber: 5530
    functionLinenumberEnd: 5531
    functionName: gf_bs_read_ue_log_idx
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: gf_bs_read_ue_log_idx(_bs, _fname, _idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _bs
    - ','
    - _fname
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5532
      start: 5531
    functionDepth: 0
    functionLinenumber: 5531
    functionLinenumberEnd: 5532
    functionName: gf_bs_read_ue_log
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: gf_bs_read_ue_log(_bs, _fname)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5536,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5537
      start: 5534
    functionDepth: 1
    functionLinenumber: 5534
    functionLinenumberEnd: 5537
    functionName: gf_bs_read_ue
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_ue_log
    linkageType: ''
    returnType: u32
    signature: u32 gf_bs_read_ue(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:5541,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5544
      start: 5539
    functionDepth: 2
    functionLinenumber: 5539
    functionLinenumberEnd: 5544
    functionName: gf_bs_read_se
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_ue
    linkageType: ''
    returnType: s32
    signature: s32 gf_bs_read_se(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_se
      Src: /src/gpac/src/media_tools/av_parsers.c:5548,1
    - Dst: gf_bs_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:5550,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - bs
    - fname
    - idx1
    - idx2
    argTypes:
    - GF_BitStream*
    - char*
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5552
      start: 5546
    functionDepth: 3
    functionLinenumber: 5546
    functionLinenumberEnd: 5552
    functionName: gf_bs_read_se_log_idx2
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_se
    - gf_bs_log_idx
    linkageType: ''
    returnType: s32
    signature: s32 gf_bs_read_se_log_idx2(GF_BitStream *bs, const char *fname, s32
      idx1, s32 idx2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _bs
    - ','
    - _fname
    - ','
    - _idx
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5554
      start: 5553
    functionDepth: 0
    functionLinenumber: 5553
    functionLinenumberEnd: 5554
    functionName: gf_bs_read_se_log_idx
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: gf_bs_read_se_log_idx(_bs, _fname, _idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _bs
    - ','
    - _fname
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5555
      start: 5554
    functionDepth: 0
    functionLinenumber: 5554
    functionLinenumberEnd: 5555
    functionName: gf_bs_read_se_log
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: gf_bs_read_se_log(_bs, _fname)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:5567,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:5568,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - num
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5569
      start: 5558
    functionDepth: 1
    functionLinenumber: 5558
    functionLinenumberEnd: 5569
    functionName: gf_bs_write_ue
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: void
    signature: void gf_bs_write_ue(GF_BitStream *bs, u32 num)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - num
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5581
      start: 5571
    functionDepth: 0
    functionLinenumber: 5571
    functionLinenumberEnd: 5581
    functionName: gf_get_ue_nb_bits
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_get_ue_nb_bits(u32 num)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:5591,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - bs
    - num
    argTypes:
    - GF_BitStream*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5592
      start: 5583
    functionDepth: 2
    functionLinenumber: 5583
    functionLinenumberEnd: 5592
    functionName: gf_bs_write_se
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_ue
    linkageType: ''
    returnType: void
    signature: void gf_bs_write_se(GF_BitStream *bs, s32 num)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - buffer
    - nal_size
    argTypes:
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5624
      start: 5595
    functionDepth: 0
    functionLinenumber: 5595
    functionLinenumberEnd: 5624
    functionName: gf_media_nalu_emulation_bytes_add_count
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_media_nalu_emulation_bytes_add_count(u8 *buffer, u32 nal_size)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - buffer_src
    - buffer_dst
    - nal_size
    argTypes:
    - u8*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5657
      start: 5626
    functionDepth: 0
    functionLinenumber: 5626
    functionLinenumberEnd: 5657
    functionName: gf_media_nalu_add_emulation_bytes
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_media_nalu_add_emulation_bytes(const u8 *buffer_src, u8 *buffer_dst,
      u32 nal_size)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 15
    argCount: 2
    argNames:
    - buffer
    - nal_size
    argTypes:
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5695
      start: 5660
    functionDepth: 0
    functionLinenumber: 5660
    functionLinenumberEnd: 5695
    functionName: gf_media_nalu_emulation_bytes_remove_count
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_media_nalu_emulation_bytes_remove_count(const u8 *buffer, u32
      nal_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 3
    argNames:
    - buffer_src
    - buffer_dst
    - nal_size
    argTypes:
    - u8*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5738
      start: 5701
    functionDepth: 0
    functionLinenumber: 5701
    functionLinenumberEnd: 5738
    functionName: gf_media_nalu_remove_emulation_bytes
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_nalu_remove_emulation_bytes(const u8 *buffer_src,
      u8 *buffer_dst, u32 nal_size)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: memchr
      Src: /src/gpac/src/media_tools/av_parsers.c:5748,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 3
    argNames:
    - data
    - data_len
    - sc_size
    argTypes:
    - u8*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5778
      start: 5740
    functionDepth: 0
    functionLinenumber: 5740
    functionLinenumberEnd: 5778
    functionName: gf_media_nalu_next_start_code
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - memchr
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_nalu_next_start_code(const u8 *data, u32 data_len,
      u32 *sc_size)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - avc
    argTypes:
    - AVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5791
      start: 5780
    functionDepth: 0
    functionLinenumber: 5780
    functionLinenumberEnd: 5791
    functionName: gf_avc_slice_is_intra
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_avc_slice_is_intra(AVCState *avc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_avc_slice_is_intra
      Src: /src/gpac/src/media_tools/av_parsers.c:5803,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - avc
    argTypes:
    - AVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5804
      start: 5794
    functionDepth: 1
    functionLinenumber: 5794
    functionLinenumberEnd: 5804
    functionName: gf_avc_slice_is_IDR
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_avc_slice_is_intra
    linkageType: ''
    returnType: Bool
    signature: Bool gf_avc_slice_is_IDR(AVCState *avc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5823,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5825,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5828,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5829,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:5833,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:5834,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:5835,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5837,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5838,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5839,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5840,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 2
    argNames:
    - bs
    - hrd
    argTypes:
    - GF_BitStream*
    - AVC_HRD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5842
      start: 5819
    functionDepth: 1
    functionLinenumber: 5819
    functionLinenumberEnd: 5842
    functionName: avc_parse_hrd_parameters
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_ue_log_idx
    - GF_LOG
    - gf_bs_read_int_log_idx
    - gf_bs_read_int_log
    - gf_bs_read_ue_log
    linkageType: ''
    returnType: s32
    signature: s32 avc_parse_hrd_parameters(GF_BitStream *bs, AVC_HRD *hrd)
  - BBCount: 65
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:5857,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5865,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5866,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5867,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5869,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5871,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5876,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5881,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5905,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5908,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5916,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5917,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5918,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5920,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:5923,1
    - Dst: gf_bs_read_se
      Src: /src/gpac/src/media_tools/av_parsers.c:5928,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5942,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5944,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5947,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5949,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5957,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5964,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5965,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5966,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5967,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:5968,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5969,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:5973,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5978,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5979,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5980,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5981,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5987,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5992,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5993,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5995,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/av_parsers.c:6009,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6018,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6019,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6020,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6021,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:6036,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6039,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6041,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6043,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6045,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6046,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:6048,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:6053,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6056,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6058,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6069,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6071,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6072,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6073,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6075,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6076,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6077,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6081,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6083,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6084,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6087,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6089,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6090,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6091,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6094,1
    - Dst: avc_parse_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:6096,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6099,1
    - Dst: avc_parse_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:6101,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6105,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6107,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6116,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6117,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6119,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6122,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6126,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6127,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6129,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6130,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6131,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6132,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6134,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6135,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6137,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6139,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6140,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6144,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6145,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6146,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6147,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6149,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6150,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6151,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6153,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6157,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6162,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6164,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:6169,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6173,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:6174,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:6178,1
    CyclomaticComplexity: 68
    EdgeCount: 68
    ICount: 257
    argCount: 5
    argNames:
    - bs
    - avc
    - subseq_sps
    - vui_flag_pos
    - nal_hdr
    argTypes:
    - GF_BitStream*
    - AVCState*
    - u32
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6181
      start: 5849
    functionDepth: 3
    functionLinenumber: 5849
    functionLinenumberEnd: 6181
    functionName: gf_avc_read_sps_bs_internal
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_bs_enable_emulation_byte_removal
    - gf_bs_read_se
    - gf_bs_read_int_log_idx
    - GF_LOG
    - gf_bs_read_int_log
    - gf_bs_read_se_log_idx
    - gf_bs_get_bit_offset
    - gf_bs_read_se_log
    - gf_bs_is_overflow
    - avc_parse_hrd_parameters
    - GF_ARRAY_LENGTH
    - gf_bs_read_ue_log
    linkageType: ''
    returnType: s32
    signature: s32 gf_avc_read_sps_bs_internal(GF_BitStream *bs, AVCState *avc, u32
      subseq_sps, u32 *vui_flag_pos, u32 nal_hdr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_avc_read_sps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:6186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - bs
    - avc
    - subseq_sps
    - vui_flag_pos
    argTypes:
    - GF_BitStream*
    - AVCState*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6187
      start: 6183
    functionDepth: 4
    functionLinenumber: 6183
    functionLinenumberEnd: 6187
    functionName: gf_avc_read_sps_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_avc_read_sps_bs_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_avc_read_sps_bs(GF_BitStream *bs, AVCState *avc, u32 subseq_sps,
      u32 *vui_flag_pos)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:6199,1
    - Dst: gf_media_nalu_remove_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:6200,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:6201,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:6206,1
    - Dst: gf_avc_read_sps_bs
      Src: /src/gpac/src/media_tools/av_parsers.c:6214,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:6217,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:6218,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 5
    argNames:
    - sps_data
    - sps_size
    - avc
    - subseq_sps
    - vui_flag_pos
    argTypes:
    - u8*
    - u32
    - AVCState*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6220
      start: 6189
    functionDepth: 5
    functionLinenumber: 6189
    functionLinenumberEnd: 6220
    functionName: gf_avc_read_sps
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_bs_new
    - gf_avc_read_sps_bs
    - gf_bs_del
    - gf_media_nalu_remove_emulation_bytes
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_avc_read_sps(const u8 *sps_data, u32 sps_size, AVCState
      *avc, u32 subseq_sps, u32 *vui_flag_pos)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:6232,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6235,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6236,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6237,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6239,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6247,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6259,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6260,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6261,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6264,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6267,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6271,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6272,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6276,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6277,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6281,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6283,1
    - Dst: ceil
      Src: /src/gpac/src/media_tools/av_parsers.c:6283,1
    - Dst: log
      Src: /src/gpac/src/media_tools/av_parsers.c:6283,1
    - Dst: log
      Src: /src/gpac/src/media_tools/av_parsers.c:6283,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6287,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6288,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6294,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6295,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6296,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6297,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6298,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6299,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6300,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6301,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:6303,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 60
    argCount: 3
    argNames:
    - bs
    - avc
    - nal_hdr
    argTypes:
    - GF_BitStream*
    - AVCState*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6306
      start: 6227
    functionDepth: 1
    functionLinenumber: 6227
    functionLinenumberEnd: 6306
    functionName: gf_avc_read_pps_bs_internal
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_ue_log_idx
    - gf_bs_enable_emulation_byte_removal
    - gf_bs_read_int_log_idx
    - gf_bs_read_int_log
    - gf_bs_read_se_log
    - gf_bs_is_overflow
    - log
    - ceil
    - gf_bs_read_ue_log
    linkageType: ''
    returnType: s32
    signature: s32 gf_avc_read_pps_bs_internal(GF_BitStream *bs, AVCState *avc, u32
      nal_hdr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_avc_read_pps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:6311,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - bs
    - avc
    argTypes:
    - GF_BitStream*
    - AVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6312
      start: 6308
    functionDepth: 2
    functionLinenumber: 6308
    functionLinenumberEnd: 6312
    functionName: gf_avc_read_pps_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_avc_read_pps_bs_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_avc_read_pps_bs(GF_BitStream *bs, AVCState *avc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:6321,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:6325,1
    - Dst: gf_avc_read_pps_bs
      Src: /src/gpac/src/media_tools/av_parsers.c:6326,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:6327,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - pps_data
    - pps_size
    - avc
    argTypes:
    - u8*
    - u32
    - AVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6329
      start: 6314
    functionDepth: 3
    functionLinenumber: 6314
    functionLinenumberEnd: 6329
    functionName: gf_avc_read_pps
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_avc_read_pps_bs
    - gf_bs_del
    - gf_bs_new
    - gf_bs_enable_emulation_byte_removal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_avc_read_pps(const u8 *pps_data, u32 pps_size, AVCState
      *avc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:6338,1
    - Dst: gf_avc_read_sps_ext_bs
      Src: /src/gpac/src/media_tools/av_parsers.c:6339,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:6341,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - spse_data
    - spse_size
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6343
      start: 6333
    functionDepth: 1
    functionLinenumber: 6333
    functionLinenumberEnd: 6343
    functionName: gf_avc_read_sps_ext
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_avc_read_sps_ext_bs
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: s32
    signature: s32 gf_avc_read_sps_ext(const char *spse_data, u32 spse_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6348,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6349,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6350,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6351,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6352,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6353,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6354,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6355,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6356,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6357,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6358,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 2
    argNames:
    - bs
    - NalHeader
    argTypes:
    - GF_BitStream*
    - SVC_NALUHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6360
      start: 6346
    functionDepth: 1
    functionLinenumber: 6346
    functionLinenumberEnd: 6360
    functionName: SVC_ReadNal_header_extension
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: s32
    signature: s32 SVC_ReadNal_header_extension(GF_BitStream *bs, SVC_NALUHeader *NalHeader)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6364,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6367,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6369,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6372,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6375,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:6378,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6382,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6385,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6387,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6390,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6393,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:6396,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 35
    argCount: 3
    argNames:
    - bs
    - slice_type
    - is_mvc
    argTypes:
    - GF_BitStream*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6399
      start: 6362
    functionDepth: 1
    functionLinenumber: 6362
    functionLinenumberEnd: 6399
    functionName: avc_ref_pic_list_modification
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_available
    - gf_bs_read_ue_log_idx
    - gf_bs_read_int_log
    linkageType: ''
    returnType: void
    signature: void avc_ref_pic_list_modification(GF_BitStream *bs, u32 slice_type,
      Bool is_mvc)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6403,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6405,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6408,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6409,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6410,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6413,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:6415,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:6416,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6422,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6423,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6424,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6427,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:6429,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:6430,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 34
    argCount: 5
    argNames:
    - bs
    - slice_type
    - ChromaArrayType
    - num_ref_idx_l0_active_minus1
    - num_ref_idx_l1_active_minus1
    argTypes:
    - GF_BitStream*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6436
      start: 6401
    functionDepth: 4
    functionLinenumber: 6401
    functionLinenumberEnd: 6436
    functionName: avc_pred_weight_table
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_se_log_idx2
    - gf_bs_read_int_log_idx
    - gf_bs_read_se_log_idx
    - gf_bs_read_ue_log
    linkageType: ''
    returnType: void
    signature: void avc_pred_weight_table(GF_BitStream *bs, u32 slice_type, u32 ChromaArrayType,
      u32 num_ref_idx_l0_active_minus1, u32 num_ref_idx_l1_active_minus1)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6440,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6441,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6444,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6447,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6449,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6451,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6453,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6455,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 2
    argNames:
    - bs
    - IdrPicFlag
    argTypes:
    - GF_BitStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6460
      start: 6438
    functionDepth: 1
    functionLinenumber: 6438
    functionLinenumberEnd: 6460
    functionName: dec_ref_pic_marking
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_ue_log_idx
    - gf_bs_read_int_log
    linkageType: ''
    returnType: void
    signature: void dec_ref_pic_marking(GF_BitStream *bs, Bool IdrPicFlag)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6467,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6468,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6471,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6481,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6486,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6488,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6492,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6495,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6497,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6501,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6503,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6507,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6511,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6518,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6520,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6522,1
    - Dst: avc_ref_pic_list_modification
      Src: /src/gpac/src/media_tools/av_parsers.c:6528,1
    - Dst: avc_ref_pic_list_modification
      Src: /src/gpac/src/media_tools/av_parsers.c:6530,1
    - Dst: avc_pred_weight_table
      Src: /src/gpac/src/media_tools/av_parsers.c:6535,1
    - Dst: dec_ref_pic_marking
      Src: /src/gpac/src/media_tools/av_parsers.c:6539,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6543,1
    - Dst: gf_bs_read_se
      Src: /src/gpac/src/media_tools/av_parsers.c:6546,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6549,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6551,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6555,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6556,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6557,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6562,1
    - Dst: ceil
      Src: /src/gpac/src/media_tools/av_parsers.c:6562,1
    - Dst: log1p
      Src: /src/gpac/src/media_tools/av_parsers.c:6562,1
    - Dst: log
      Src: /src/gpac/src/media_tools/av_parsers.c:6562,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 86
    argCount: 4
    argNames:
    - bs
    - avc
    - svc_idr_flag
    - si
    argTypes:
    - GF_BitStream*
    - AVCState*
    - Bool
    - AVCSliceInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6565
      start: 6462
    functionDepth: 5
    functionLinenumber: 6462
    functionLinenumberEnd: 6565
    functionName: avc_parse_slice
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - log1p
    - avc_pred_weight_table
    - gf_bs_read_se
    - gf_bs_read_int_log
    - dec_ref_pic_marking
    - avc_ref_pic_list_modification
    - gf_bs_read_se_log
    - log
    - ceil
    - gf_bs_read_ue_log
    linkageType: ''
    returnType: s32
    signature: s32 avc_parse_slice(GF_BitStream *bs, AVCState *avc, Bool svc_idr_flag,
      AVCSliceInfo *si)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6573,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6574,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6577,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6590,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6597,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6598,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6601,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6604,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6606,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6610,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6612,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6615,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 42
    argCount: 3
    argNames:
    - bs
    - avc
    - si
    argTypes:
    - GF_BitStream*
    - AVCState*
    - AVCSliceInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6618
      start: 6568
    functionDepth: 1
    functionLinenumber: 6568
    functionLinenumberEnd: 6618
    functionName: svc_parse_slice
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_se_log
    - gf_bs_read_int_log
    - gf_bs_read_ue_log
    linkageType: ''
    returnType: s32
    signature: s32 svc_parse_slice(GF_BitStream *bs, AVCState *avc, AVCSliceInfo *si)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6625,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6626,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6627,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6628,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - avc
    argTypes:
    - GF_BitStream*
    - AVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6632
      start: 6621
    functionDepth: 1
    functionLinenumber: 6621
    functionLinenumberEnd: 6632
    functionName: avc_parse_recovery_point_sei
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    - gf_bs_read_ue_log
    linkageType: ''
    returnType: s32
    signature: s32 avc_parse_recovery_point_sei(GF_BitStream *bs, AVCState *avc)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/av_parsers.c:6643,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6647,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6648,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6654,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:6656,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6662,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6666,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6667,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6668,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6669,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6670,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6671,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6672,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6674,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6675,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6676,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6679,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6680,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6681,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6682,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6683,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6684,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6689,1
    - Dst: gf_ceil
      Src: /src/gpac/src/media_tools/av_parsers.c:6692,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 50
    argCount: 2
    argNames:
    - bs
    - avc
    argTypes:
    - GF_BitStream*
    - AVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6701
      start: 6635
    functionDepth: 1
    functionLinenumber: 6635
    functionLinenumberEnd: 6701
    functionName: avc_parse_pic_timing_sei
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - GF_LOG
    - gf_bs_read_int_log_idx
    - gf_bs_read_int_log
    - gf_ceil
    linkageType: ''
    returnType: s32
    signature: s32 avc_parse_pic_timing_sei(GF_BitStream *bs, AVCState *avc)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:6708,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:6710,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6714,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6715,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:6716,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6717,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6718,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:6720,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6722,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6723,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6724,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6726,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6727,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6728,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6729,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6730,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6731,1
    - Dst: gf_ceil
      Src: /src/gpac/src/media_tools/av_parsers.c:6737,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 2
    argNames:
    - bs
    - hevc
    argTypes:
    - GF_BitStream*
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6744
      start: 6703
    functionDepth: 1
    functionLinenumber: 6703
    functionLinenumberEnd: 6744
    functionName: hevc_parse_pic_timing_sei
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx
    - gf_bs_read_int
    - gf_ceil
    linkageType: ''
    returnType: s32
    signature: s32 hevc_parse_pic_timing_sei(GF_BitStream *bs, HEVCState *hevc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:6748,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:6749,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/av_parsers.c:6750,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:6751,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 4
    argCount: 2
    argNames:
    - bs
    - dovi
    argTypes:
    - GF_BitStream*
    - AVCSeiItuTT35DolbyVision*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6755
      start: 6746
    functionDepth: 1
    functionLinenumber: 6746
    functionLinenumberEnd: 6755
    functionName: avc_parse_itu_t_t35_sei
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u16
    - gf_bs_read_u32
    - gf_bs_read_u8
    linkageType: ''
    returnType: void
    signature: void avc_parse_itu_t_t35_sei(GF_BitStream* bs, AVCSeiItuTT35DolbyVision
      *dovi)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:6872,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 73
    argCount: 1
    argNames:
    - si
    argTypes:
    - AVCSliceInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6877
      start: 6757
    functionDepth: 1
    functionLinenumber: 6757
    functionLinenumberEnd: 6877
    functionName: avc_compute_poc
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - MIN
    linkageType: ''
    returnType: void
    signature: void avc_compute_poc(AVCSliceInfo *si)
  - BBCount: 55
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:6887,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:6888,1
    - Dst: gf_bs_mark_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:6889,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:6891,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:6894,1
    - Dst: SVC_ReadNal_header_extension
      Src: /src/gpac/src/media_tools/av_parsers.c:6908,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:6909,1
    - Dst: svc_parse_slice
      Src: /src/gpac/src/media_tools/av_parsers.c:6912,1
    - Dst: avc_compute_poc
      Src: /src/gpac/src/media_tools/av_parsers.c:6917,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:6920,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:6923,1
    - Dst: SVC_ReadNal_header_extension
      Src: /src/gpac/src/media_tools/av_parsers.c:6927,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:6928,1
    - Dst: avc_parse_slice
      Src: /src/gpac/src/media_tools/av_parsers.c:6938,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:6939,1
    - Dst: gf_avc_read_sps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:7000,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:7001,1
    - Dst: gf_avc_read_pps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:7007,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:7008,1
    - Dst: gf_avc_read_sps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:7012,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:7013,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7017,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:7018,1
    - Dst: avc_compute_poc
      Src: /src/gpac/src/media_tools/av_parsers.c:7049,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:7050,1
    CyclomaticComplexity: 60
    EdgeCount: 60
    ICount: 155
    argCount: 2
    argNames:
    - bs
    - avc
    argTypes:
    - GF_BitStream*
    - AVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7052
      start: 6879
    functionDepth: 6
    functionLinenumber: 6879
    functionLinenumberEnd: 7052
    functionName: gf_avc_parse_nalu
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - SVC_ReadNal_header_extension
    - svc_parse_slice
    - gf_avc_read_sps_bs_internal
    - gf_bs_enable_emulation_byte_removal
    - memcpy
    - gf_bs_mark_overflow
    - gf_avc_read_pps_bs_internal
    - avc_compute_poc
    - gf_bs_read_u8
    - gf_bs_available
    - gf_bs_is_overflow
    - gf_bs_read_ue
    - avc_parse_slice
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_avc_parse_nalu(GF_BitStream *bs, AVCState *avc)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:7068,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:7070,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:7071,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7073,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7074,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:7077,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7081,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7088,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:7108,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:7110,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:7111,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:7112,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:7126,1
    - Dst: avc_parse_recovery_point_sei
      Src: /src/gpac/src/media_tools/av_parsers.c:7131,1
    - Dst: avc_parse_pic_timing_sei
      Src: /src/gpac/src/media_tools/av_parsers.c:7136,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7160,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7163,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7167,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7170,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:7171,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:7176,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:7176,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:7182,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:7185,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:7186,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:7191,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7192,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:7194,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:7195,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:7196,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7199,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:7203,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:7206,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/av_parsers.c:7214,1
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/media_tools/av_parsers.c:7216,1
    - Dst: gf_media_nalu_add_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:7220,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:7222,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:7225,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 142
    argCount: 5
    argNames:
    - buffer
    - nal_size
    - isobmf_rewrite
    - avc
    - sei_filter
    argTypes:
    - u8*
    - u32
    - Bool
    - AVCState*
    - SEI_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7227
      start: 7054
    functionDepth: 2
    functionLinenumber: 7054
    functionLinenumberEnd: 7227
    functionName: gf_avc_reformat_sei
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_media_nalu_add_emulation_bytes
    - gf_bs_new
    - gf_bs_enable_emulation_byte_removal
    - gf_bs_seek
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_media_nalu_emulation_bytes_add_count
    - gf_bs_get_position
    - gf_bs_del
    - gf_bs_read_int
    - avc_parse_recovery_point_sei
    - gf_bs_read_u8
    - gf_bs_available
    - gf_bs_write_u8
    - avc_parse_pic_timing_sei
    linkageType: ''
    returnType: u32
    signature: u32 gf_avc_reformat_sei(u8 *buffer, u32 nal_size, Bool isobmf_rewrite,
      AVCState *avc, SEI_Filter *sei_filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:7231,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - w
    - h
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7237
      start: 7229
    functionDepth: 1
    functionLinenumber: 7229
    functionLinenumberEnd: 7237
    functionName: avc_hevc_get_sar_idx
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: u8
    signature: u8 avc_hevc_get_sar_idx(u32 w, u32 h)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:7242,1
    - Dst: gf_bs_read_ue_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:7245,1
    - Dst: gf_bs_read_ue_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:7246,1
    - Dst: gf_bs_read_ue_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:7248,1
    - Dst: gf_bs_read_ue_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:7249,1
    - Dst: gf_bs_read_int_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:7251,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 6
    argNames:
    - bs
    - subLayerId
    - cpb_cnt
    - sub_pic_hrd_params_present_flag
    - idx1
    - idx2
    argTypes:
    - GF_BitStream*
    - int
    - u32
    - Bool
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7253
      start: 7239
    functionDepth: 2
    functionLinenumber: 7239
    functionLinenumberEnd: 7253
    functionName: sub_layer_hrd_parameters
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_available
    - gf_bs_read_ue_log_idx3
    - gf_bs_read_int_log_idx3
    linkageType: ''
    returnType: void
    signature: void sub_layer_hrd_parameters(GF_BitStream *bs, int subLayerId, u32
      cpb_cnt, Bool sub_pic_hrd_params_present_flag, u32 idx1, u32 idx2)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7263,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7264,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7266,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7268,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7269,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7270,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7271,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7273,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7274,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7276,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7278,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7279,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7280,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7284,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7289,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7292,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7294,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7296,1
    - Dst: sub_layer_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:7299,1
    - Dst: sub_layer_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:7302,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 4
    argNames:
    - bs
    - commonInfPresentFlag
    - maxNumSubLayersMinus1
    - idx
    argTypes:
    - GF_BitStream*
    - Bool
    - int
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7305
      start: 7255
    functionDepth: 3
    functionLinenumber: 7255
    functionLinenumberEnd: 7305
    functionName: hevc_parse_hrd_parameters
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx
    - gf_bs_read_ue_log_idx
    - sub_layer_hrd_parameters
    linkageType: ''
    returnType: void
    signature: void hevc_parse_hrd_parameters(GF_BitStream *bs, Bool commonInfPresentFlag,
      int maxNumSubLayersMinus1, u32 idx)
  - BBCount: 77
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7310,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7360,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:7361,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:7362,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7364,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7365,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7366,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7367,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7369,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7373,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7375,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7377,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7378,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7383,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7385,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7389,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7393,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7394,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7395,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7401,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7402,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7403,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7405,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7411,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7414,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7416,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7417,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7422,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7424,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7425,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7429,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7430,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7431,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7432,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7434,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7435,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7436,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7437,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7441,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7443,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7444,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7446,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7448,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7450,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7451,1
    - Dst: hevc_parse_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:7452,1
    - Dst: avc_hevc_get_sar_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7477,1
    - Dst: gf_get_ue_nb_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:7520,1
    - Dst: gf_get_ue_nb_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:7522,1
    - Dst: gf_get_ue_nb_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:7523,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7531,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7537,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:7538,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:7539,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7542,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7543,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7544,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7545,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7548,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7551,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7553,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7555,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7556,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7563,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7565,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7568,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7571,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7572,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7573,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7579,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7580,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7581,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7583,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7599,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7602,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7604,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7605,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:7612,1
    - Dst: gf_bs_is_align
      Src: /src/gpac/src/media_tools/av_parsers.c:7613,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:7619,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7628,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:7631,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7639,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:7640,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:7643,1
    - Dst: gf_bs_is_align
      Src: /src/gpac/src/media_tools/av_parsers.c:7645,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7646,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:7647,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7654,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7656,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7657,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7661,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7662,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7663,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7664,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7666,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7667,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7668,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7669,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7673,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7675,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7676,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7678,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7680,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7682,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7690,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7691,1
    - Dst: gf_bs_get_bit_position
      Src: /src/gpac/src/media_tools/av_parsers.c:7693,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:7694,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:7695,1
    - Dst: avc_parse_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:7696,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:7697,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:7700,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7701,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7705,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7706,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7710,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7711,1
    - Dst: gf_bs_get_bit_position
      Src: /src/gpac/src/media_tools/av_parsers.c:7713,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:7714,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:7715,1
    - Dst: avc_parse_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:7716,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:7717,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:7720,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7721,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7725,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7726,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7731,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7732,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7735,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7739,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7740,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7743,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7749,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7752,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7754,1
    CyclomaticComplexity: 102
    EdgeCount: 102
    ICount: 317
    argCount: 4
    argNames:
    - vui_info
    - orig
    - mod
    - codec
    argTypes:
    - GF_VUIInfo*
    - GF_BitStream*
    - GF_BitStream*
    - GF_CodecID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7758
      start: 7307
    functionDepth: 4
    functionLinenumber: 7307
    functionLinenumberEnd: 7758
    functionName: avc_hevc_vvc_rewrite_vui
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_peek_bits
    - avc_hevc_get_sar_idx
    - gf_bs_write_ue
    - gf_bs_seek
    - gf_bs_get_bit_position
    - gf_bs_write_int
    - gf_bs_get_bit_offset
    - gf_get_ue_nb_bits
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_read_int
    - gf_bs_is_align
    - hevc_parse_hrd_parameters
    - avc_parse_hrd_parameters
    - gf_bs_read_ue
    linkageType: ''
    returnType: void
    signature: void avc_hevc_vvc_rewrite_vui(GF_VUIInfo *vui_info, GF_BitStream *orig,
      GF_BitStream *mod, GF_CodecID codec)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/av_parsers.c:7770,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/av_parsers.c:7775,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/media_tools/av_parsers.c:7779,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:7785,1
    - Dst: gf_media_nalu_remove_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:7786,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:7788,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:7789,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:7790,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:7791,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7795,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7796,1
    - Dst: avc_hevc_vvc_rewrite_vui
      Src: /src/gpac/src/media_tools/av_parsers.c:7800,1
    - Dst: gf_bs_bits_available
      Src: /src/gpac/src/media_tools/av_parsers.c:7803,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7804,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7805,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:7807,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:7809,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/av_parsers.c:7812,1
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/media_tools/av_parsers.c:7813,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/av_parsers.c:7815,1
    - Dst: gf_media_nalu_add_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:7816,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:7818,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:7819,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:7821,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 42
    argCount: 2
    argNames:
    - avcc
    - vui_info
    argTypes:
    - GF_AVCConfig*
    - GF_VUIInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7823
      start: 7760
    functionDepth: 6
    functionLinenumber: 7760
    functionLinenumberEnd: 7823
    functionName: gf_avc_change_vui
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_media_nalu_add_emulation_bytes
    - gf_bs_bits_available
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_seek
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_media_nalu_emulation_bytes_add_count
    - gf_bs_del
    - avc_hevc_vvc_rewrite_vui
    - gf_media_nalu_remove_emulation_bytes
    - gf_bs_read_int
    - gf_avc_read_sps
    - gf_list_enum
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_avc_change_vui(GF_AVCConfig *avcc, GF_VUIInfo *vui_info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:7829,1
    - Dst: gf_avc_change_vui
      Src: /src/gpac/src/media_tools/av_parsers.c:7837,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 3
    argNames:
    - avcc
    - ar_n
    - ar_d
    argTypes:
    - GF_AVCConfig*
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7838
      start: 7825
    functionDepth: 7
    functionLinenumber: 7825
    functionLinenumberEnd: 7838
    functionName: gf_avc_change_par
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_avc_change_vui
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_avc_change_par(GF_AVCConfig *avcc, s32 ar_n, s32 ar_d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:7844,1
    - Dst: gf_avc_change_vui
      Src: /src/gpac/src/media_tools/av_parsers.c:7852,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 6
    argNames:
    - avcc
    - fullrange
    - vidformat
    - colorprim
    - transfer
    - colmatrix
    argTypes:
    - GF_AVCConfig*
    - s32
    - s32
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7853
      start: 7840
    functionDepth: 7
    functionLinenumber: 7840
    functionLinenumberEnd: 7853
    functionName: gf_avc_change_color
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_avc_change_vui
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_avc_change_color(GF_AVCConfig *avcc, s32 fullrange, s32
      vidformat, s32 colorprim, s32 transfer, s32 colmatrix)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/av_parsers.c:7861,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/media_tools/av_parsers.c:7865,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:7867,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:7877,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 7
    argNames:
    - sps_data
    - sps_size
    - sps_id
    - width
    - height
    - par_n
    - par_d
    argTypes:
    - u8*
    - u32
    - u32*
    - u32*
    - u32*
    - s32*
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7879
      start: 7856
    functionDepth: 6
    functionLinenumber: 7856
    functionLinenumberEnd: 7879
    functionName: gf_avc_get_sps_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 2
    functionsReached:
    - gf_avc_read_sps
    - gf_free
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_avc_get_sps_info(u8 *sps_data, u32 sps_size, u32 *sps_id,
      u32 *width, u32 *height, s32 *par_n, s32 *par_d)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:7887,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:7892,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7893,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7895,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7896,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:7899,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 4
    argNames:
    - pps_data
    - pps_size
    - pps_id
    - sps_id
    argTypes:
    - u8*
    - u32
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7901
      start: 7881
    functionDepth: 2
    functionLinenumber: 7881
    functionLinenumberEnd: 7901
    functionName: gf_avc_get_pps_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_enable_emulation_byte_removal
    - gf_bs_del
    - gf_bs_read_int
    - gf_bs_read_ue
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_avc_get_pps_info(u8 *pps_data, u32 pps_size, u32 *pps_id,
      u32 *sps_id)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - hevc
    argTypes:
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7920
      start: 7907
    functionDepth: 0
    functionLinenumber: 7907
    functionLinenumberEnd: 7920
    functionName: gf_hevc_slice_is_intra
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_hevc_slice_is_intra(HEVCState *hevc)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - hevc
    argTypes:
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7936
      start: 7922
    functionDepth: 0
    functionLinenumber: 7922
    functionLinenumberEnd: 7936
    functionName: gf_hevc_slice_is_IDR
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_hevc_slice_is_IDR(HEVCState *hevc)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7943,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7954,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7960,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7961,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:7969,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:7972,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8002,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8003,1
    - Dst: gf_bs_read_ue_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8016,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8020,1
    - Dst: gf_bs_read_ue_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8025,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8029,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 68
    argCount: 3
    argNames:
    - bs
    - sps
    - idx_rps
    argTypes:
    - GF_BitStream*
    - HEVC_SPS*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8033
      start: 7938
    functionDepth: 1
    functionLinenumber: 7938
    functionLinenumberEnd: 8033
    functionName: hevc_parse_short_term_ref_pic_set
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_ue_log_idx2
    - gf_bs_read_int_log_idx
    - gf_bs_read_ue_log_idx
    - gf_bs_read_int_log_idx2
    linkageType: ''
    returnType: Bool
    signature: Bool hevc_parse_short_term_ref_pic_set(GF_BitStream *bs, HEVC_SPS *sps,
      u32 idx_rps)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8044,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8046,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8050,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8056,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8061,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8062,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8065,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8066,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8068,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8069,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 7
    argNames:
    - bs
    - hevc
    - si
    - pps
    - sps
    - num_ref_idx_l0_active
    - num_ref_idx_l1_active
    argTypes:
    - GF_BitStream*
    - HEVCState*
    - HEVCSliceInfo*
    - HEVC_PPS*
    - HEVC_SPS*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8079
      start: 8035
    functionDepth: 1
    functionLinenumber: 8035
    functionLinenumberEnd: 8079
    functionName: hevc_pred_weight_table
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_se_log
    - gf_bs_read_int_log_idx
    - gf_bs_read_se_log_idx
    - gf_bs_read_ue_log
    linkageType: ''
    returnType: void
    signature: void hevc_pred_weight_table(GF_BitStream *bs, HEVCState *hevc, HEVCSliceInfo
      *si, HEVC_PPS *pps, HEVC_SPS *sps, u32 num_ref_idx_l0_active, u32 num_ref_idx_l1_active)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8084,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:8089,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8089,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8090,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8094,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:8096,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8096,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8097,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 6
    argNames:
    - bs
    - rps
    - slice_type
    - num_ref_idx_l0_active
    - num_ref_idx_l1_active
    - NumPicTotalCurr
    argTypes:
    - GF_BitStream*
    - HEVC_ReferencePictureSets*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8101
      start: 8081
    functionDepth: 1
    functionLinenumber: 8081
    functionLinenumberEnd: 8101
    functionName: hevc_ref_pic_lists_modification
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - gf_bs_read_int_log
    - GF_ARRAY_LENGTH
    - MIN
    linkageType: ''
    returnType: void
    signature: void hevc_ref_pic_lists_modification(GF_BitStream *bs, HEVC_ReferencePictureSets
      *rps, u32 slice_type, u32 num_ref_idx_l0_active, u32 num_ref_idx_l1_active,
      u32 NumPicTotalCurr)
  - BBCount: 69
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8112,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8113,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8130,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8133,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8144,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8151,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8168,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8170,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8173,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8176,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8186,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8192,1
    - Dst: hevc_parse_short_term_ref_pic_set
      Src: /src/gpac/src/media_tools/av_parsers.c:8193,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8204,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:8214,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8217,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8219,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8227,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/media_tools/av_parsers.c:8227,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8230,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8231,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8233,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8235,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8237,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8242,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8272,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8277,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8284,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8295,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8297,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8307,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8308,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8310,1
    - Dst: hevc_ref_pic_lists_modification
      Src: /src/gpac/src/media_tools/av_parsers.c:8331,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8336,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8338,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8344,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8349,1
    - Dst: hevc_pred_weight_table
      Src: /src/gpac/src/media_tools/av_parsers.c:8356,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8358,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8360,1
    - Dst: gf_bs_get_bit_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8360,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8361,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8364,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8365,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8368,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8372,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8374,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8375,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8381,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8390,1
    - Dst: gf_bs_get_bit_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8390,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8393,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8395,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8403,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8407,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8415,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:8416,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:8417,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:8417,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8421,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8426,1
    - Dst: gf_bs_get_bit_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8426,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8428,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:8429,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:8432,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8433,1
    CyclomaticComplexity: 97
    EdgeCount: 97
    ICount: 229
    argCount: 3
    argNames:
    - bs
    - hevc
    - si
    argTypes:
    - GF_BitStream*
    - HEVCState*
    - HEVCSliceInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8435
      start: 8103
    functionDepth: 2
    functionLinenumber: 8103
    functionLinenumberEnd: 8435
    functionName: hevc_parse_slice_segment
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_ue_log_idx
    - hevc_pred_weight_table
    - gf_get_bit_size
    - gf_bs_get_bit_position
    - gf_bs_read_int_log_idx
    - GF_LOG
    - gf_bs_read_int_log
    - gf_bs_available
    - gf_bs_align
    - gf_bs_get_position
    - memset
    - gf_bs_read_int
    - gf_bs_read_se_log
    - hevc_ref_pic_lists_modification
    - hevc_parse_short_term_ref_pic_set
    - gf_bs_read_ue_log
    linkageType: ''
    returnType: s32
    signature: s32 hevc_parse_slice_segment(GF_BitStream *bs, HEVCState *hevc, HEVCSliceInfo
      *si)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8443,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - si
    - poc
    argTypes:
    - HEVCSliceInfo*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8446
      start: 8437
    functionDepth: 1
    functionLinenumber: 8437
    functionLinenumberEnd: 8446
    functionName: gf_hevc_push_ref_poc
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: void
    signature: void gf_hevc_push_ref_poc(HEVCSliceInfo *si, s32 poc)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:8458,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8470,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8470,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8470,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8478,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8478,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8478,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8488,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8488,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:8499,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8499,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:8502,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8502,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:8505,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8505,1
    - Dst: assert
      Src: /src/gpac/src/media_tools/av_parsers.c:8508,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8515,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8515,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8520,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8520,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8525,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8525,1
    - Dst: assert
      Src: /src/gpac/src/media_tools/av_parsers.c:8529,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8534,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8538,1
    - Dst: gf_hevc_push_ref_poc
      Src: /src/gpac/src/media_tools/av_parsers.c:8539,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8545,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8549,1
    - Dst: gf_hevc_push_ref_poc
      Src: /src/gpac/src/media_tools/av_parsers.c:8550,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 82
    argCount: 2
    argNames:
    - hevc
    - si
    argTypes:
    - HEVCState*
    - HEVCSliceInfo*
    assertStmts:
    - condition: (nb_poc_l0 == num_poc_total)
      pos:
        line_end: 8507
        line_start: 8507
        source_file: /src/gpac/src/media_tools/av_parsers.c
    - condition: (nb_poc_l1 == num_poc_total)
      pos:
        line_end: 8528
        line_start: 8528
        source_file: /src/gpac/src/media_tools/av_parsers.c
    constantsTouched: []
    func_position:
      end: 8553
      start: 8448
    functionDepth: 2
    functionLinenumber: 8448
    functionLinenumberEnd: 8553
    functionName: gf_hevc_compute_ref_list
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - assert
    - MIN
    - gf_hevc_push_ref_poc
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: void
    signature: void gf_hevc_compute_ref_list(HEVCState *hevc, HEVCSliceInfo *si)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:8577,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:8579,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:8580,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8582,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8583,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:8586,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:8590,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8591,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8594,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:8596,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8597,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8600,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8617,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:8619,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:8620,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:8621,1
    - Dst: gf_bs_get_emulation_byte_removed
      Src: /src/gpac/src/media_tools/av_parsers.c:8625,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8630,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8633,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8637,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8640,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:8641,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:8646,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:8646,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:8651,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:8656,1
    - Dst: gf_bs_get_emulation_byte_removed
      Src: /src/gpac/src/media_tools/av_parsers.c:8661,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:8662,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:8663,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8664,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:8669,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:8673,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8674,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:8676,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:8677,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:8678,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8681,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:8685,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:8688,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/av_parsers.c:8696,1
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/media_tools/av_parsers.c:8698,1
    - Dst: gf_media_nalu_add_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:8702,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:8704,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:8707,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 125
    argCount: 5
    argNames:
    - buffer
    - nal_size
    - isobmf_rewrite
    - is_hevc
    - sei_filter
    argTypes:
    - u8*
    - u32
    - Bool
    - Bool
    - SEI_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8709
      start: 8555
    functionDepth: 1
    functionLinenumber: 8555
    functionLinenumberEnd: 8709
    functionName: gf_hevc_vvc_reformat_sei
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_peek_bits
    - gf_free
    - gf_media_nalu_add_emulation_bytes
    - gf_bs_new
    - gf_bs_enable_emulation_byte_removal
    - gf_bs_seek
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_media_nalu_emulation_bytes_add_count
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_del
    - gf_bs_get_emulation_byte_removed
    - gf_bs_read_int
    - gf_bs_read_u8
    - gf_bs_available
    - gf_bs_write_u8
    linkageType: ''
    returnType: u32
    signature: u32 gf_hevc_vvc_reformat_sei(u8 *buffer, u32 nal_size, Bool isobmf_rewrite,
      Bool is_hevc, SEI_Filter *sei_filter)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:8721,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:8722,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8724,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:8727,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:8730,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8731,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8734,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:8736,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8737,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8740,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8742,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:8744,1
    - Dst: gf_bs_get_emulation_byte_removed
      Src: /src/gpac/src/media_tools/av_parsers.c:8748,1
    - Dst: avc_parse_itu_t_t35_sei
      Src: /src/gpac/src/media_tools/av_parsers.c:8752,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:8758,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:8766,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:8773,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:8775,1
    - Dst: hevc_parse_pic_timing_sei
      Src: /src/gpac/src/media_tools/av_parsers.c:8784,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/av_parsers.c:8789,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:8790,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:8791,1
    - Dst: gf_bs_get_emulation_byte_removed
      Src: /src/gpac/src/media_tools/av_parsers.c:8797,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:8799,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8800,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:8805,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:8808,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:8811,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 78
    argCount: 4
    argNames:
    - buffer
    - nal_size
    - hevc
    - vvc
    argTypes:
    - char*
    - u32
    - HEVCState*
    - VVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8812
      start: 8711
    functionDepth: 2
    functionLinenumber: 8711
    functionLinenumberEnd: 8812
    functionName: gf_hevc_vvc_parse_sei
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_peek_bits
    - gf_bs_read_u32
    - gf_bs_new
    - gf_bs_enable_emulation_byte_removal
    - avc_parse_itu_t_t35_sei
    - GF_LOG
    - hevc_parse_pic_timing_sei
    - gf_bs_read_u16
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_get_emulation_byte_removed
    - gf_bs_del
    - gf_bs_read_int
    - gf_bs_read_u8
    - gf_bs_available
    linkageType: ''
    returnType: void
    signature: void gf_hevc_vvc_parse_sei(char *buffer, u32 nal_size, HEVCState *hevc,
      VVCState *vvc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_hevc_vvc_parse_sei
      Src: /src/gpac/src/media_tools/av_parsers.c:8816,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - buffer
    - nal_size
    - hevc
    argTypes:
    - char*
    - u32
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8817
      start: 8814
    functionDepth: 3
    functionLinenumber: 8814
    functionLinenumberEnd: 8817
    functionName: gf_hevc_parse_sei
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_hevc_vvc_parse_sei
    linkageType: ''
    returnType: void
    signature: void gf_hevc_parse_sei(char *buffer, u32 nal_size, HEVCState *hevc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_hevc_vvc_reformat_sei
      Src: /src/gpac/src/media_tools/av_parsers.c:8821,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - buffer
    - nal_size
    - isobmf_rewrite
    - sei_filter
    argTypes:
    - char*
    - u32
    - Bool
    - SEI_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8822
      start: 8819
    functionDepth: 2
    functionLinenumber: 8819
    functionLinenumberEnd: 8822
    functionName: gf_hevc_reformat_sei
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_hevc_vvc_reformat_sei
    linkageType: ''
    returnType: u32
    signature: u32 gf_hevc_reformat_sei(char *buffer, u32 nal_size, Bool isobmf_rewrite,
      SEI_Filter *sei_filter)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 1
    argNames:
    - si
    argTypes:
    - HEVCSliceInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8852
      start: 8824
    functionDepth: 0
    functionLinenumber: 8824
    functionLinenumberEnd: 8852
    functionName: hevc_compute_poc
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void hevc_compute_poc(HEVCSliceInfo *si)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8858,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8861,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8864,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8867,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 4
    argNames:
    - bs
    - nal_unit_type
    - temporal_id
    - layer_id
    argTypes:
    - GF_BitStream*
    - u8*
    - u8*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8873
      start: 8855
    functionDepth: 1
    functionLinenumber: 8855
    functionLinenumberEnd: 8873
    functionName: hevc_parse_nal_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool hevc_parse_nal_header(GF_BitStream *bs, u8 *nal_unit_type, u8
      *temporal_id, u8 *layer_id)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8880,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8881,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8882,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8884,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8886,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8887,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8888,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8889,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8890,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8892,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8894,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8895,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8899,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8905,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8906,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8907,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8908,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8909,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8910,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8911,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8912,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8913,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8916,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 37
    argCount: 5
    argNames:
    - bs
    - ProfilePresentFlag
    - MaxNumSubLayersMinus1
    - ptl
    - idx
    argTypes:
    - GF_BitStream*
    - Bool
    - u8
    - HEVC_ProfileTierLevel*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8918
      start: 8876
    functionDepth: 1
    functionLinenumber: 8876
    functionLinenumberEnd: 8918
    functionName: hevc_profile_tier_level
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx
    - gf_bs_read_long_int
    - gf_bs_read_int_log
    - gf_bs_read_int
    - gf_bs_read_int_log_idx2
    linkageType: ''
    returnType: void
    signature: void hevc_profile_tier_level(GF_BitStream *bs, Bool ProfilePresentFlag,
      u8 MaxNumSubLayersMinus1, HEVC_ProfileTierLevel *ptl, u32 idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - vps
    - scalability_type
    argTypes:
    - HEVC_VPS*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8927
      start: 8920
    functionDepth: 0
    functionLinenumber: 8920
    functionLinenumberEnd: 8927
    functionName: scalability_type_to_idx
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 scalability_type_to_idx(HEVC_VPS *vps, u32 scalability_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: scalability_type_to_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8936,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - vps
    - layer_id_in_vps
    - scalability_type
    argTypes:
    - HEVC_VPS*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8938
      start: 8932
    functionDepth: 1
    functionLinenumber: 8932
    functionLinenumberEnd: 8938
    functionName: lhvc_get_scalability_id
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - scalability_type_to_idx
    linkageType: ''
    returnType: u32
    signature: u32 lhvc_get_scalability_id(HEVC_VPS *vps, u32 layer_id_in_vps, u32
      scalability_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lhvc_get_scalability_id
      Src: /src/gpac/src/media_tools/av_parsers.c:8942,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - vps
    - id
    argTypes:
    - HEVC_VPS*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8943
      start: 8940
    functionDepth: 2
    functionLinenumber: 8940
    functionLinenumberEnd: 8943
    functionName: lhvc_get_view_index
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - lhvc_get_scalability_id
    linkageType: ''
    returnType: u32
    signature: u32 lhvc_get_view_index(HEVC_VPS *vps, u32 id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: lhvc_get_view_index
      Src: /src/gpac/src/media_tools/av_parsers.c:8950,1
    - Dst: lhvc_get_scalability_id
      Src: /src/gpac/src/media_tools/av_parsers.c:8950,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - vps
    argTypes:
    - HEVC_VPS*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8955
      start: 8945
    functionDepth: 3
    functionLinenumber: 8945
    functionLinenumberEnd: 8955
    functionName: lhvc_get_num_views
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - lhvc_get_scalability_id
    - lhvc_get_view_index
    linkageType: ''
    returnType: u32
    signature: u32 lhvc_get_num_views(HEVC_VPS *vps)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8960,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8961,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8962,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8964,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8967,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8968,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8969,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8971,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8972,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8973,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8974,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8975,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - fmt
    - bs
    - idx
    argTypes:
    - HEVC_RepFormat*
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8977
      start: 8957
    functionDepth: 1
    functionLinenumber: 8957
    functionLinenumberEnd: 8977
    functionName: lhvc_parse_rep_format
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx
    - gf_bs_read_ue_log_idx
    linkageType: ''
    returnType: void
    signature: void lhvc_parse_rep_format(HEVC_RepFormat *fmt, GF_BitStream *bs, u32
      idx)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: hevc_profile_tier_level
      Src: /src/gpac/src/media_tools/av_parsers.c:9001,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9003,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9006,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9015,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9027,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9035,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9040,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9046,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:9054,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9075,1
    - Dst: lhvc_get_num_views
      Src: /src/gpac/src/media_tools/av_parsers.c:9077,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9078,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9084,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:9121,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9172,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:9179,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9183,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9185,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9193,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:9197,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9201,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9203,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9205,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9211,1
    - Dst: hevc_profile_tier_level
      Src: /src/gpac/src/media_tools/av_parsers.c:9212,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9219,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9220,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9226,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9239,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:9247,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:9291,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9304,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9307,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9309,1
    - Dst: lhvc_parse_rep_format
      Src: /src/gpac/src/media_tools/av_parsers.c:9315,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9318,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9328,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9334,1
    CyclomaticComplexity: 99
    EdgeCount: 99
    ICount: 277
    argCount: 2
    argNames:
    - vps
    - bs
    argTypes:
    - HEVC_VPS*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9338
      start: 8980
    functionDepth: 4
    functionLinenumber: 8980
    functionLinenumberEnd: 9338
    functionName: hevc_parse_vps_extension
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - lhvc_get_num_views
    - GF_LOG
    - gf_bs_read_int_log_idx
    - gf_bs_read_int_log
    - hevc_profile_tier_level
    - memset
    - lhvc_parse_rep_format
    - gf_bs_read_int_log_idx2
    - gf_bs_read_ue_log
    linkageType: ''
    returnType: Bool
    signature: Bool hevc_parse_vps_extension(HEVC_VPS *vps, GF_BitStream *bs)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9354,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9365,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9366,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9367,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9369,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9372,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9373,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9374,1
    - Dst: hevc_profile_tier_level
      Src: /src/gpac/src/media_tools/av_parsers.c:9375,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9377,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9379,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9380,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9381,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9383,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9385,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9388,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9390,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:9395,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9411,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9414,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9415,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9416,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9417,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9420,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9423,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9429,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9431,1
    - Dst: hevc_parse_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:9432,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9439,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:9442,1
    - Dst: hevc_parse_vps_extension
      Src: /src/gpac/src/media_tools/av_parsers.c:9443,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9445,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9448,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:9450,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:9451,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 85
    argCount: 3
    argNames:
    - bs
    - hevc
    - stop_at_vps_ext
    argTypes:
    - GF_BitStream*
    - HEVCState*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9458
      start: 9345
    functionDepth: 5
    functionLinenumber: 9345
    functionLinenumberEnd: 9458
    functionName: gf_hevc_read_vps_bs_internal
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_ue_log_idx
    - GF_LOG
    - gf_bs_read_int_log
    - gf_bs_available
    - gf_bs_align
    - hevc_profile_tier_level
    - gf_bs_read_int
    - hevc_parse_vps_extension
    - hevc_parse_hrd_parameters
    - gf_bs_read_int_log_idx2
    - gf_bs_read_ue_log
    linkageType: ''
    returnType: s32
    signature: s32 gf_hevc_read_vps_bs_internal(GF_BitStream *bs, HEVCState *hevc,
      Bool stop_at_vps_ext)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_media_nalu_emulation_bytes_remove_count
      Src: /src/gpac/src/media_tools/av_parsers.c:9469,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:9471,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:9472,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:9476,1
    - Dst: gf_media_nalu_remove_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:9477,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:9478,1
    - Dst: hevc_parse_nal_header
      Src: /src/gpac/src/media_tools/av_parsers.c:9483,1
    - Dst: gf_hevc_read_vps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:9485,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:9491,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:9492,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:9493,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:9494,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:9494,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:9495,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:9495,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:9496,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:9496,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:9497,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:9497,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:9498,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:9498,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:9501,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:9502,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:9506,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/av_parsers.c:9508,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:9509,1
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/media_tools/av_parsers.c:9511,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9513,1
    - Dst: gf_media_nalu_add_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:9516,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:9519,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:9524,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:9525,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 52
    argCount: 4
    argNames:
    - data
    - size
    - hevc
    - remove_extensions
    argTypes:
    - u8*
    - u32*
    - HEVCState*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9527
      start: 9460
    functionDepth: 6
    functionLinenumber: 9460
    functionLinenumberEnd: 9527
    functionName: gf_hevc_read_vps_ex
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_media_nalu_add_emulation_bytes
    - gf_bs_new
    - gf_media_nalu_emulation_bytes_add_count
    - gf_bs_write_u16
    - gf_bs_read_u16
    - gf_media_nalu_emulation_bytes_remove_count
    - gf_hevc_read_vps_bs_internal
    - gf_bs_get_content
    - gf_bs_get_bit_offset
    - gf_bs_enable_emulation_byte_removal
    - GF_LOG
    - gf_bs_write_int
    - gf_media_nalu_remove_emulation_bytes
    - gf_bs_read_u8
    - gf_malloc
    - gf_bs_seek
    - hevc_parse_nal_header
    - gf_bs_del
    - gf_bs_read_int
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hevc_read_vps_ex(u8 *data, u32 *size, HEVCState *hevc,
      Bool remove_extensions)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_hevc_read_vps_ex
      Src: /src/gpac/src/media_tools/av_parsers.c:9532,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - data
    - size
    - hevc
    argTypes:
    - u8*
    - u32
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9533
      start: 9529
    functionDepth: 7
    functionLinenumber: 9529
    functionLinenumberEnd: 9533
    functionName: gf_hevc_read_vps
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_hevc_read_vps_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hevc_read_vps(u8 *data, u32 size, HEVCState *hevc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:9539,1
    - Dst: hevc_parse_nal_header
      Src: /src/gpac/src/media_tools/av_parsers.c:9540,1
    - Dst: gf_hevc_read_vps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:9541,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - hevc
    argTypes:
    - GF_BitStream*
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9542
      start: 9535
    functionDepth: 6
    functionLinenumber: 9535
    functionLinenumberEnd: 9542
    functionName: gf_hevc_read_vps_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_hevc_read_vps_bs_internal
    - hevc_parse_nal_header
    - gf_bs_enable_emulation_byte_removal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hevc_read_vps_bs(GF_BitStream *bs, HEVCState *hevc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9550,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9552,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:9556,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9558,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:9561,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9566
      start: 9544
    functionDepth: 4
    functionLinenumber: 9544
    functionLinenumberEnd: 9566
    functionName: hevc_scaling_list_data
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_ue_log_idx
    - gf_bs_read_int_log_idx
    - gf_bs_read_se_log_idx
    - MIN
    - gf_bs_read_se_log_idx2
    linkageType: ''
    returnType: void
    signature: void hevc_scaling_list_data(GF_BitStream *bs)
  - BBCount: 48
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9597,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:9601,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9605,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9607,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9612,1
    - Dst: hevc_profile_tier_level
      Src: /src/gpac/src/media_tools/av_parsers.c:9613,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9616,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9640,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9642,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9651,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9665,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9667,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9668,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9669,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9670,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9684,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9685,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9686,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9687,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9692,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9693,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9696,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9698,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9703,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9705,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9706,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9707,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9711,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9712,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9720,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9721,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:9726,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9730,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9731,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9746,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9751,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9754,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9757,1
    - Dst: hevc_scaling_list_data
      Src: /src/gpac/src/media_tools/av_parsers.c:9759,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9763,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9764,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9765,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9766,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9767,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9768,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9769,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9770,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9772,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9774,1
    - Dst: hevc_parse_short_term_ref_pic_set
      Src: /src/gpac/src/media_tools/av_parsers.c:9779,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9782,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9786,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9788,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9790,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9791,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9794,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9795,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:9798,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9800,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9801,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9803,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9805,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9806,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9814,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9815,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9817,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9819,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9820,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9821,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9822,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9823,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9824,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9828,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9829,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9830,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9833,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9834,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9835,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9837,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9838,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9839,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9840,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9841,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9844,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9846,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9847,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9848,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9850,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9851,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9857,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9858,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9859,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9860,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9861,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9862,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9863,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9864,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9865,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9869,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:9871,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:9872,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:9877,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 235
    argCount: 4
    argNames:
    - bs
    - hevc
    - layer_id
    - vui_flag_pos
    argTypes:
    - GF_BitStream*
    - HEVCState*
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9880
      start: 9584
    functionDepth: 5
    functionLinenumber: 9584
    functionLinenumberEnd: 9880
    functionName: gf_hevc_read_sps_bs_internal
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - hevc_scaling_list_data
    - gf_bs_read_ue_log_idx
    - GF_LOG
    - gf_bs_read_int_log_idx
    - gf_bs_read_int_log
    - gf_bs_get_bit_offset
    - MIN
    - hevc_profile_tier_level
    - memset
    - gf_bs_read_int
    - gf_bs_available
    - gf_bs_is_overflow
    - hevc_parse_short_term_ref_pic_set
    - gf_bs_read_ue_log
    linkageType: ''
    returnType: s32
    signature: s32 gf_hevc_read_sps_bs_internal(GF_BitStream *bs, HEVCState *hevc,
      u8 layer_id, u32 *vui_flag_pos)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:9891,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:9893,1
    - Dst: hevc_parse_nal_header
      Src: /src/gpac/src/media_tools/av_parsers.c:9895,1
    - Dst: gf_hevc_read_sps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:9896,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:9899,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 4
    argNames:
    - data
    - size
    - hevc
    - vui_flag_pos
    argTypes:
    - char*
    - u32
    - HEVCState*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9901
      start: 9882
    functionDepth: 6
    functionLinenumber: 9882
    functionLinenumberEnd: 9901
    functionName: gf_hevc_read_sps_ex
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_enable_emulation_byte_removal
    - hevc_parse_nal_header
    - gf_bs_del
    - gf_hevc_read_sps_bs_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hevc_read_sps_ex(char *data, u32 size, HEVCState *hevc,
      u32 *vui_flag_pos)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_hevc_read_sps_ex
      Src: /src/gpac/src/media_tools/av_parsers.c:9906,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - data
    - size
    - hevc
    argTypes:
    - u8*
    - u32
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9907
      start: 9903
    functionDepth: 7
    functionLinenumber: 9903
    functionLinenumberEnd: 9907
    functionName: gf_hevc_read_sps
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_hevc_read_sps_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hevc_read_sps(u8 *data, u32 size, HEVCState *hevc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:9914,1
    - Dst: hevc_parse_nal_header
      Src: /src/gpac/src/media_tools/av_parsers.c:9915,1
    - Dst: gf_hevc_read_sps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:9916,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - hevc
    argTypes:
    - GF_BitStream*
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9917
      start: 9909
    functionDepth: 6
    functionLinenumber: 9909
    functionLinenumberEnd: 9917
    functionName: gf_hevc_read_sps_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_hevc_read_sps_bs_internal
    - hevc_parse_nal_header
    - gf_bs_enable_emulation_byte_removal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hevc_read_sps_bs(GF_BitStream *bs, HEVCState *hevc)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9929,1
    - Dst: hevc_color_map_octants
      Src: /src/gpac/src/media_tools/av_parsers.c:9934,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:9943,1
    - Dst: gf_bs_read_ue_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:9945,1
    - Dst: gf_bs_read_int_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:9946,1
    - Dst: gf_bs_read_int_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:9948,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 25
    argCount: 10
    argNames:
    - bs
    - cm_octant_depth
    - OctantNumY
    - PartNumY
    - CMResLSBits
    - inpDepth
    - idxY
    - idxCb
    - idxCr
    - inpLength
    argTypes:
    - GF_BitStream*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9954
      start: 9924
    functionDepth: 2
    functionLinenumber: 9924
    functionLinenumberEnd: 9954
    functionName: hevc_color_map_octants
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_int_log_idx2
    - gf_bs_read_int_log
    - gf_bs_read_ue_log_idx3
    - hevc_color_map_octants
    - gf_bs_read_int_log_idx3
    linkageType: ''
    returnType: void
    signature: void hevc_color_map_octants(GF_BitStream *bs, u32 cm_octant_depth,
      u32 OctantNumY, u32 PartNumY, u32 CMResLSBits, u32 inpDepth, u32 idxY, u32 idxCb,
      u32 idxCr, u32 inpLength)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9963,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9966,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9975,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9977,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9981,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9983,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9984,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9985,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9986,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9987,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9988,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9989,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9990,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9991,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9992,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9993,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9995,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9996,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9997,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9998,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9999,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10000,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10001,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10002,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10004,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:10006,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10009,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:10011,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10014,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10017,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10020,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10023,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10025,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10026,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10027,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10028,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10029,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10030,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10033,1
    - Dst: hevc_scaling_list_data
      Src: /src/gpac/src/media_tools/av_parsers.c:10034,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10036,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10037,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10038,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10044,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10045,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10046,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10047,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10048,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10049,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10053,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10054,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10055,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10057,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10058,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10060,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10061,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10064,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10065,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10068,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10069,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10070,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10072,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10074,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10075,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10076,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10077,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10078,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10079,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10081,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10082,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10083,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10084,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10085,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10087,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10088,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10089,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10090,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10091,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10094,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10095,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10097,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10099,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10100,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10101,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10102,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10103,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10104,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10105,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10106,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10108,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10109,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/av_parsers.c:10113,1
    - Dst: hevc_color_map_octants
      Src: /src/gpac/src/media_tools/av_parsers.c:10116,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10121,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10122,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10123,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10125,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10127,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10128,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:10133,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10136,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10141,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10146,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10151,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:10157,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10167,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10168,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10169,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10170,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10171,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10172,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10174,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10175,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10177,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10178,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10181,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:10185,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:10192,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 190
    argCount: 2
    argNames:
    - bs
    - hevc
    argTypes:
    - GF_BitStream*
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10195
      start: 9956
    functionDepth: 5
    functionLinenumber: 9956
    functionLinenumberEnd: 10195
    functionName: gf_hevc_read_pps_bs_internal
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - hevc_scaling_list_data
    - gf_bs_read_ue_log_idx
    - GF_LOG
    - gf_bs_read_int_log_idx
    - gf_bs_read_se_log_idx
    - gf_bs_read_int_log
    - gf_bs_is_overflow
    - hevc_color_map_octants
    - gf_bs_read_se_log
    - MAX
    - gf_bs_read_int_log_idx2
    - gf_bs_read_ue_log
    linkageType: ''
    returnType: s32
    signature: s32 gf_hevc_read_pps_bs_internal(GF_BitStream *bs, HEVCState *hevc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:10204,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:10206,1
    - Dst: hevc_parse_nal_header
      Src: /src/gpac/src/media_tools/av_parsers.c:10208,1
    - Dst: gf_hevc_read_pps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:10210,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:10213,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - data
    - size
    - hevc
    argTypes:
    - u8*
    - u32
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10215
      start: 10198
    functionDepth: 6
    functionLinenumber: 10198
    functionLinenumberEnd: 10215
    functionName: gf_hevc_read_pps
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_enable_emulation_byte_removal
    - gf_hevc_read_pps_bs_internal
    - hevc_parse_nal_header
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hevc_read_pps(u8 *data, u32 size, HEVCState *hevc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:10221,1
    - Dst: hevc_parse_nal_header
      Src: /src/gpac/src/media_tools/av_parsers.c:10222,1
    - Dst: gf_hevc_read_pps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:10223,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - hevc
    argTypes:
    - GF_BitStream*
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10224
      start: 10217
    functionDepth: 6
    functionLinenumber: 10217
    functionLinenumberEnd: 10224
    functionName: gf_hevc_read_pps_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_hevc_read_pps_bs_internal
    - hevc_parse_nal_header
    - gf_bs_enable_emulation_byte_removal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hevc_read_pps_bs(GF_BitStream *bs, HEVCState *hevc)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:10233,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:10234,1
    - Dst: gf_bs_mark_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:10236,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:10238,1
    - Dst: hevc_parse_nal_header
      Src: /src/gpac/src/media_tools/av_parsers.c:10239,1
    - Dst: hevc_parse_slice_segment
      Src: /src/gpac/src/media_tools/av_parsers.c:10271,1
    - Dst: hevc_compute_poc
      Src: /src/gpac/src/media_tools/av_parsers.c:10274,1
    - Dst: gf_hevc_compute_ref_list
      Src: /src/gpac/src/media_tools/av_parsers.c:10276,1
    - Dst: gf_hevc_read_sps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:10292,1
    - Dst: gf_hevc_read_pps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:10296,1
    - Dst: gf_hevc_read_vps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:10300,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:10308,1
    - Dst: hevc_compute_poc
      Src: /src/gpac/src/media_tools/av_parsers.c:10321,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:10322,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 82
    argCount: 5
    argNames:
    - bs
    - hevc
    - nal_unit_type
    - temporal_id
    - layer_id
    argTypes:
    - GF_BitStream*
    - HEVCState*
    - u8*
    - u8*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10325
      start: 10226
    functionDepth: 6
    functionLinenumber: 10226
    functionLinenumberEnd: 10325
    functionName: gf_hevc_parse_nalu_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_hevc_read_sps_bs_internal
    - gf_bs_enable_emulation_byte_removal
    - memcpy
    - gf_hevc_read_pps_bs_internal
    - hevc_parse_nal_header
    - gf_bs_mark_overflow
    - hevc_parse_slice_segment
    - hevc_compute_poc
    - gf_hevc_compute_ref_list
    - gf_bs_available
    - gf_bs_is_overflow
    - gf_hevc_read_vps_bs_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hevc_parse_nalu_bs(GF_BitStream *bs, HEVCState *hevc,
      u8 *nal_unit_type, u8 *temporal_id, u8 *layer_id)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:10347,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:10349,1
    - Dst: gf_hevc_parse_nalu_bs
      Src: /src/gpac/src/media_tools/av_parsers.c:10351,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:10353,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 6
    argNames:
    - data
    - size
    - hevc
    - nal_unit_type
    - temporal_id
    - layer_id
    argTypes:
    - u8*
    - u32
    - HEVCState*
    - u8*
    - u8*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10355
      start: 10327
    functionDepth: 7
    functionLinenumber: 10327
    functionLinenumberEnd: 10355
    functionName: gf_hevc_parse_nalu
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_hevc_parse_nalu_bs
    - gf_bs_new
    - gf_bs_enable_emulation_byte_removal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hevc_parse_nalu(u8 *data, u32 size, HEVCState *hevc, u8
      *nal_unit_type, u8 *temporal_id, u8 *layer_id)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/av_parsers.c:10368,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/av_parsers.c:10374,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:10380,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/av_parsers.c:10385,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:10390,1
    - Dst: gf_media_nalu_remove_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:10391,1
    - Dst: gf_hevc_read_sps_ex
      Src: /src/gpac/src/media_tools/av_parsers.c:10393,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:10396,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:10397,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:10401,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:10402,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10406,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10407,1
    - Dst: avc_hevc_vvc_rewrite_vui
      Src: /src/gpac/src/media_tools/av_parsers.c:10411,1
    - Dst: gf_bs_bits_available
      Src: /src/gpac/src/media_tools/av_parsers.c:10414,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10415,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10416,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:10418,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:10420,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/av_parsers.c:10423,1
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/media_tools/av_parsers.c:10424,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/av_parsers.c:10426,1
    - Dst: gf_media_nalu_add_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:10428,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:10430,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:10431,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:10433,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 53
    argCount: 2
    argNames:
    - hvcc
    - vui_info
    argTypes:
    - GF_HEVCConfig*
    - GF_VUIInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10435
      start: 10357
    functionDepth: 7
    functionLinenumber: 10357
    functionLinenumberEnd: 10435
    functionName: gf_hevc_change_vui
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_media_nalu_add_emulation_bytes
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_media_nalu_emulation_bytes_add_count
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_hevc_read_sps_ex
    - gf_bs_del
    - avc_hevc_vvc_rewrite_vui
    - gf_media_nalu_remove_emulation_bytes
    - gf_bs_read_int
    - gf_bs_bits_available
    - gf_list_enum
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hevc_change_vui(GF_HEVCConfig *hvcc, GF_VUIInfo *vui_info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:10442,1
    - Dst: gf_hevc_change_vui
      Src: /src/gpac/src/media_tools/av_parsers.c:10450,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 3
    argNames:
    - hvcc
    - ar_n
    - ar_d
    argTypes:
    - GF_HEVCConfig*
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10451
      start: 10438
    functionDepth: 8
    functionLinenumber: 10438
    functionLinenumberEnd: 10451
    functionName: gf_hevc_change_par
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_hevc_change_vui
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hevc_change_par(GF_HEVCConfig *hvcc, s32 ar_n, s32 ar_d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:10457,1
    - Dst: gf_hevc_change_vui
      Src: /src/gpac/src/media_tools/av_parsers.c:10465,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 6
    argNames:
    - hvcc
    - fullrange
    - vidformat
    - colorprim
    - transfer
    - colmatrix
    argTypes:
    - GF_HEVCConfig*
    - s32
    - s32
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10466
      start: 10453
    functionDepth: 8
    functionLinenumber: 10453
    functionLinenumberEnd: 10466
    functionName: gf_hevc_change_color
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_hevc_change_vui
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hevc_change_color(GF_HEVCConfig *hvcc, s32 fullrange,
      s32 vidformat, s32 colorprim, s32 transfer, s32 colmatrix)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_hevc_read_sps
      Src: /src/gpac/src/media_tools/av_parsers.c:10473,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 8
    argNames:
    - hevc
    - sps_data
    - sps_size
    - sps_id
    - width
    - height
    - par_n
    - par_d
    argTypes:
    - HEVCState*
    - u8*
    - u32
    - u32*
    - u32*
    - u32*
    - s32*
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10484
      start: 10469
    functionDepth: 8
    functionLinenumber: 10469
    functionLinenumberEnd: 10484
    functionName: gf_hevc_get_sps_info_with_state
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_hevc_read_sps
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hevc_get_sps_info_with_state(HEVCState *hevc, u8 *sps_data,
      u32 sps_size, u32 *sps_id, u32 *width, u32 *height, s32 *par_n, s32 *par_d)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/av_parsers.c:10490,1
    - Dst: gf_hevc_get_sps_info_with_state
      Src: /src/gpac/src/media_tools/av_parsers.c:10493,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:10494,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 7
    argNames:
    - sps_data
    - sps_size
    - sps_id
    - width
    - height
    - par_n
    - par_d
    argTypes:
    - u8*
    - u32
    - u32*
    - u32*
    - u32*
    - s32*
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10496
      start: 10486
    functionDepth: 9
    functionLinenumber: 10486
    functionLinenumberEnd: 10496
    functionName: gf_hevc_get_sps_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_hevc_get_sps_info_with_state
    - gf_free
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_hevc_get_sps_info(u8 *sps_data, u32 sps_size, u32 *sps_id,
      u32 *width, u32 *height, s32 *par_n, s32 *par_d)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - buf
    - buflen
    argTypes:
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10509
      start: 10498
    functionDepth: 0
    functionLinenumber: 10498
    functionLinenumberEnd: 10509
    functionName: AC3_FindSyncCode
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 AC3_FindSyncCode(u8 *buf, u32 buflen)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:10515,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:10516,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/media_tools/av_parsers.c:10517,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:10520,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:10522,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:10524,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10531
      start: 10512
    functionDepth: 1
    functionLinenumber: 10512
    functionLinenumberEnd: 10531
    functionName: AC3_FindSyncCodeBS
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_seek
    - gf_bs_get_size
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_bs_available
    linkageType: ''
    returnType: Bool
    signature: Bool AC3_FindSyncCodeBS(GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - acmod
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10567
      start: 10561
    functionDepth: 0
    functionLinenumber: 10561
    functionLinenumberEnd: 10567
    functionName: gf_ac3_get_total_channels
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_ac3_get_total_channels(u32 acmod)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - acmod
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10575
      start: 10569
    functionDepth: 0
    functionLinenumber: 10569
    functionLinenumberEnd: 10575
    functionName: gf_ac3_get_surround_channels
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_ac3_get_surround_channels(u32 acmod)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - brcode
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10581
      start: 10577
    functionDepth: 0
    functionLinenumber: 10577
    functionLinenumberEnd: 10581
    functionName: gf_ac3_get_bitrate
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_ac3_get_bitrate(u32 brcode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: AC3_FindSyncCode
      Src: /src/gpac/src/media_tools/av_parsers.c:10590,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:10593,1
    - Dst: gf_ac3_parser_bs
      Src: /src/gpac/src/media_tools/av_parsers.c:10594,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:10595,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 5
    argNames:
    - buf
    - buflen
    - pos
    - hdr
    - full_parse
    argTypes:
    - u8*
    - u32
    - u32*
    - GF_AC3Config*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10598
      start: 10583
    functionDepth: 1
    functionLinenumber: 10583
    functionLinenumberEnd: 10598
    functionName: gf_ac3_parser
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 3
    functionsReached:
    - AC3_FindSyncCode
    - gf_ac3_parser_bs
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_ac3_parser(u8 *buf, u32 buflen, u32 *pos, GF_AC3Config
      *hdr, Bool full_parse)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: AC3_FindSyncCodeBS
      Src: /src/gpac/src/media_tools/av_parsers.c:10605,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:10607,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:10608,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:10610,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:10612,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10615,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10616,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10617,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10618,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10619,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10620,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10658,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10659,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10660,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10662,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:10667,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 61
    argCount: 3
    argNames:
    - bs
    - hdr
    - full_parse
    argTypes:
    - GF_BitStream*
    - GF_AC3Config*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10670
      start: 10600
    functionDepth: 2
    functionLinenumber: 10600
    functionLinenumberEnd: 10670
    functionName: gf_ac3_parser_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_bs_seek
    - AC3_FindSyncCodeBS
    - GF_LOG
    - gf_bs_read_int_log
    - gf_bs_get_position
    - memset
    - gf_bs_read_u16
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_ac3_parser_bs(GF_BitStream *bs, GF_AC3Config *hdr, Bool
      full_parse)
  - BBCount: 20
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 50
    argCount: 1
    argNames:
    - ac3
    argTypes:
    - GF_AC3Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10716
      start: 10672
    functionDepth: 0
    functionLinenumber: 10672
    functionLinenumberEnd: 10716
    functionName: gf_ac3_get_channel_layout
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_ac3_get_channel_layout(GF_AC3Config *ac3)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - chan_loc
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10732
      start: 10718
    functionDepth: 0
    functionLinenumber: 10718
    functionLinenumberEnd: 10732
    functionName: gf_eac3_get_chan_loc_count
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_eac3_get_chan_loc_count(u32 chan_loc)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - chan_map
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10748
      start: 10734
    functionDepth: 0
    functionLinenumber: 10734
    functionLinenumberEnd: 10748
    functionName: eac3_chanmap_to_chan_loc
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 eac3_chanmap_to_chan_loc(u32 chan_map)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: eac3_chanmap_to_chan_loc
      Src: /src/gpac/src/media_tools/av_parsers.c:10756,1
    - Dst: gf_eac3_get_chan_loc_count
      Src: /src/gpac/src/media_tools/av_parsers.c:10757,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - hdr
    argTypes:
    - GF_AC3Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10763
      start: 10750
    functionDepth: 1
    functionLinenumber: 10750
    functionLinenumberEnd: 10763
    functionName: eac3_update_channels
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_eac3_get_chan_loc_count
    - eac3_chanmap_to_chan_loc
    linkageType: ''
    returnType: void
    signature: void eac3_update_channels(GF_AC3Config *hdr)
  - BBCount: 67
    BranchProfiles: []
    Callsites:
    - Dst: AC3_FindSyncCodeBS
      Src: /src/gpac/src/media_tools/av_parsers.c:10776,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:10780,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:10786,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:10789,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:10791,1
    - Dst: eac3_update_channels
      Src: /src/gpac/src/media_tools/av_parsers.c:10798,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:10799,1
    - Dst: gf_ac3_parser_bs
      Src: /src/gpac/src/media_tools/av_parsers.c:10802,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:10803,1
    - Dst: gf_ac3_get_bitrate
      Src: /src/gpac/src/media_tools/av_parsers.c:10812,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:10814,1
    - Dst: AC3_FindSyncCodeBS
      Src: /src/gpac/src/media_tools/av_parsers.c:10815,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:10816,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:10825,1
    - Dst: AC3_FindSyncCodeBS
      Src: /src/gpac/src/media_tools/av_parsers.c:10826,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:10827,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:10832,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:10834,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10839,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10840,1
    - Dst: eac3_update_channels
      Src: /src/gpac/src/media_tools/av_parsers.c:10846,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:10847,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:10861,1
    - Dst: AC3_FindSyncCodeBS
      Src: /src/gpac/src/media_tools/av_parsers.c:10862,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:10863,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10869,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10871,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10873,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10876,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:10896,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10900,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10901,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10902,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10904,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10905,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10906,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10909,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10910,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10911,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10916,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10917,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/av_parsers.c:10924,1
    - Dst: eac3_update_channels
      Src: /src/gpac/src/media_tools/av_parsers.c:10946,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:10947,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10952,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10953,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10954,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10955,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10957,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10958,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10962,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10963,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10966,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10967,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10970,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10971,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10972,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10974,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10976,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10978,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10981,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10987,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10988,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10991,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10992,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10997,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10999,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11003,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11004,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11011,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11012,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11013,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11014,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11016,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11016,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11019,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11019,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11021,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11023,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11027,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11028,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11030,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11032,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11035,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11036,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11038,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:11048,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:11049,1
    - Dst: AC3_FindSyncCodeBS
      Src: /src/gpac/src/media_tools/av_parsers.c:11053,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:11054,1
    CyclomaticComplexity: 77
    EdgeCount: 77
    ICount: 247
    argCount: 3
    argNames:
    - bs
    - hdr
    - full_parse
    argTypes:
    - GF_BitStream*
    - GF_AC3Config*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11059
      start: 10765
    functionDepth: 3
    functionLinenumber: 10765
    functionLinenumberEnd: 11059
    functionName: gf_eac3_parser_internal
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_peek_bits
    - gf_assert
    - gf_bs_seek
    - AC3_FindSyncCodeBS
    - GF_LOG
    - gf_ac3_parser_bs
    - gf_bs_read_int_log
    - eac3_update_channels
    - gf_bs_get_position
    - gf_bs_align
    - memset
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_bs_skip_bytes
    - gf_ac3_get_bitrate
    linkageType: ''
    returnType: Bool
    signature: Bool gf_eac3_parser_internal(GF_BitStream *bs, GF_AC3Config *hdr, Bool
      full_parse)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_eac3_parser_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:11064,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - bs
    - hdr
    - full_parse
    argTypes:
    - GF_BitStream*
    - GF_AC3Config*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11065
      start: 11061
    functionDepth: 4
    functionLinenumber: 11061
    functionLinenumberEnd: 11065
    functionName: gf_eac3_parser_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_eac3_parser_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_eac3_parser_bs(GF_BitStream *bs, GF_AC3Config *hdr, Bool
      full_parse)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: AC3_FindSyncCode
      Src: /src/gpac/src/media_tools/av_parsers.c:11074,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:11077,1
    - Dst: gf_eac3_parser_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:11078,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:11079,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 5
    argNames:
    - buf
    - buflen
    - pos
    - hdr
    - full_parse
    argTypes:
    - u8*
    - u32
    - u32*
    - GF_AC3Config*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11081
      start: 11067
    functionDepth: 4
    functionLinenumber: 11067
    functionLinenumberEnd: 11081
    functionName: gf_eac3_parser
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - AC3_FindSyncCode
    - gf_bs_del
    - gf_bs_new
    - gf_eac3_parser_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_eac3_parser(u8 *buf, u32 buflen, u32 *pos, GF_AC3Config
      *hdr, Bool full_parse)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11088,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11089,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11091,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11092,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11094,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11095,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11097,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11098,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11100
      start: 11085
    functionDepth: 1
    functionLinenumber: 11085
    functionLinenumberEnd: 11100
    functionName: gf_id3_read_size
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: u32
    signature: u32 gf_id3_read_size(GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: floor
      Src: /src/gpac/src/media_tools/av_parsers.c:11111,1
    - Dst: pow
      Src: /src/gpac/src/media_tools/av_parsers.c:11111,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - entries
    - dim
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11126
      start: 11109
    functionDepth: 0
    functionLinenumber: 11109
    functionLinenumberEnd: 11126
    functionName: vorbis_book_maptype1_quantvals
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - pow
    - floor
    linkageType: ''
    returnType: u32
    signature: u32 vorbis_book_maptype1_quantvals(u32 entries, u32 dim)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - v
    - dec
    argTypes:
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11137
      start: 11128
    functionDepth: 0
    functionLinenumber: 11128
    functionLinenumberEnd: 11137
    functionName: ilog
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ilog(u32 v, Bool dec)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - v
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11147
      start: 11139
    functionDepth: 0
    functionLinenumber: 11139
    functionLinenumberEnd: 11147
    functionName: icount
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 icount(u32 v)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: oggpack_readinit
      Src: /src/gpac/src/media_tools/av_parsers.c:11158,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11159,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11162,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/av_parsers.c:11166,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11172,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11176,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11177,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11178,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11179,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11180,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11182,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11183,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11185,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11203,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11208,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11209,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11210,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11212,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11213,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11215,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11216,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11225,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11233,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11235,1
    - Dst: ilog
      Src: /src/gpac/src/media_tools/av_parsers.c:11235,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11243,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11248,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11249,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11250,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11251,1
    - Dst: vorbis_book_maptype1_quantvals
      Src: /src/gpac/src/media_tools/av_parsers.c:11252,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11256,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11264,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11265,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11266,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11268,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11275,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:11276,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11278,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:11280,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:11286,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11289,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11290,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11291,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11293,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:11295,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:11296,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11301,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11302,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11307,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:11309,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:11310,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:11315,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:11316,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11319,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11320,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11321,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11322,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11323,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11324,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11326,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11333,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11340,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11341,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11342,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11343,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11344,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11345,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11347,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11348,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11348,1
    - Dst: icount
      Src: /src/gpac/src/media_tools/av_parsers.c:11349,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11351,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11353,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11360,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11361,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11361,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11362,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11363,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11369,1
    - Dst: ilog
      Src: /src/gpac/src/media_tools/av_parsers.c:11369,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11370,1
    - Dst: ilog
      Src: /src/gpac/src/media_tools/av_parsers.c:11370,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11373,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11376,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11379,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11380,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11381,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11384,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11390,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11391,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11392,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11393,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 232
    argCount: 3
    argNames:
    - vp
    - data
    - data_len
    argTypes:
    - GF_VorbisParser*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11404
      start: 11150
    functionDepth: 1
    functionLinenumber: 11150
    functionLinenumberEnd: 11404
    functionName: gf_vorbis_parse_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - oggpack_readinit
    - icount
    - vorbis_book_maptype1_quantvals
    - ilog
    - strcmp
    - oggpack_read
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vorbis_parse_header(GF_VorbisParser *vp, u8 *data, u32
      data_len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: oggpack_readinit
      Src: /src/gpac/src/media_tools/av_parsers.c:11412,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11414,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11415,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - vp
    - data
    - data_length
    argTypes:
    - GF_VorbisParser*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11418
      start: 11406
    functionDepth: 1
    functionLinenumber: 11406
    functionLinenumberEnd: 11418
    functionName: gf_vorbis_check_frame
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - oggpack_readinit
    - oggpack_read
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vorbis_check_frame(GF_VorbisParser *vp, u8 *data, u32
      data_length)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:11429,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:11430,1
    - Dst: memcmp
      Src: /src/gpac/src/media_tools/av_parsers.c:11433,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:11434,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:11438,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:11440,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11441,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:11444,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/media_tools/av_parsers.c:11445,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/media_tools/av_parsers.c:11446,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/media_tools/av_parsers.c:11447,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:11448,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:11450,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:11451,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:11452,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:11454,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 3
    argNames:
    - ocfg
    - data
    - data_len
    argTypes:
    - GF_OpusConfig*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11456
      start: 11426
    functionDepth: 1
    functionLinenumber: 11426
    functionLinenumberEnd: 11456
    functionName: gf_opus_parse_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - memcmp
    - gf_bs_new
    - GF_LOG
    - gf_bs_del
    - gf_bs_read_u16_le
    - gf_bs_read_u8
    - gf_bs_read_u32_le
    linkageType: ''
    returnType: Bool
    signature: Bool gf_opus_parse_header(GF_OpusConfig *ocfg, u8 *data, u32 data_len)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: memcmp
      Src: /src/gpac/src/media_tools/av_parsers.c:11465,1
    - Dst: memcmp
      Src: /src/gpac/src/media_tools/av_parsers.c:11466,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 3
    argNames:
    - ocfg
    - data
    - data_length
    argTypes:
    - GF_OpusConfig*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11486
      start: 11460
    functionDepth: 0
    functionLinenumber: 11460
    functionLinenumberEnd: 11486
    functionName: gf_opus_check_frame
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - memcmp
    linkageType: ''
    returnType: u32
    signature: u32 gf_opus_check_frame(GF_OpusConfig *ocfg, u8 *data, u32 data_length)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11491,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11495,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11503,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 4
    argNames:
    - data
    - data_length
    - offset
    - read_length
    argTypes:
    - u8*
    - u32
    - u32
    - u16*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11509
      start: 11489
    functionDepth: 1
    functionLinenumber: 11489
    functionLinenumberEnd: 11509
    functionName: gf_opus_read_length
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: u8
    signature: u8 gf_opus_read_length(u8 *data, u32 data_length, u32 offset, u16 *read_length)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: memcmp
      Src: /src/gpac/src/media_tools/av_parsers.c:11520,1
    - Dst: memcmp
      Src: /src/gpac/src/media_tools/av_parsers.c:11522,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11525,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11528,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:11531,1
    - Dst: gf_opus_read_length
      Src: /src/gpac/src/media_tools/av_parsers.c:11540,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11544,1
    - Dst: gf_opus_read_length
      Src: /src/gpac/src/media_tools/av_parsers.c:11573,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11577,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11610,1
    - Dst: gf_opus_read_length
      Src: /src/gpac/src/media_tools/av_parsers.c:11620,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11624,1
    - Dst: gf_opus_read_length
      Src: /src/gpac/src/media_tools/av_parsers.c:11628,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11632,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11672,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11681,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11686,1
    - Dst: gf_opus_read_length
      Src: /src/gpac/src/media_tools/av_parsers.c:11699,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11703,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11771,1
    - Dst: gf_opus_read_length
      Src: /src/gpac/src/media_tools/av_parsers.c:11774,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11778,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11839,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 169
    argCount: 4
    argNames:
    - data
    - data_length
    - self_delimited
    - header
    argTypes:
    - u8*
    - u32
    - Bool
    - GF_OpusPacketHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11852
      start: 11511
    functionDepth: 2
    functionLinenumber: 11511
    functionLinenumberEnd: 11852
    functionName: gf_opus_parse_packet_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - memset
    - gf_opus_read_length
    - memcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_opus_parse_packet_header(u8 *data, u32 data_length, Bool
      self_delimited, GF_OpusPacketHeader *header)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11856,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11858,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11861,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - bs
    - nBits1
    - nBits2
    - nBits3
    argTypes:
    - GF_BitStream*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11866
      start: 11854
    functionDepth: 1
    functionLinenumber: 11854
    functionLinenumberEnd: 11866
    functionName: gf_mpegh_escaped_value
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: u64
    signature: u64 gf_mpegh_escaped_value(GF_BitStream *bs, u32 nBits1, u32 nBits2,
      u32 nBits3)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:11886,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:11887,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:11889,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/media_tools/av_parsers.c:11890,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/media_tools/av_parsers.c:11891,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/media_tools/av_parsers.c:11892,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:11893,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11897,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11899,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11901,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11902,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11903,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11904,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11907,1
    - Dst: gf_audio_fmt_get_layout_from_cicp
      Src: /src/gpac/src/media_tools/av_parsers.c:11909,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11909,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:11914,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:11916,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 38
    argCount: 3
    argNames:
    - ptr
    - size
    - ch_layout
    argTypes:
    - u8*
    - u32
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11918
      start: 11868
    functionDepth: 2
    functionLinenumber: 11868
    functionLinenumberEnd: 11918
    functionName: gf_mpegh_get_mhas_pl
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_bs_new
    - gf_audio_fmt_get_layout_from_cicp
    - gf_bs_del
    - gf_bs_read_int
    - gf_bs_available
    - gf_bs_skip_bytes
    - gf_mpegh_escaped_value
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mpegh_get_mhas_pl(u8 *ptr, u32 size, u64 *ch_layout)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_hevc_vvc_parse_sei
      Src: /src/gpac/src/media_tools/av_parsers.c:11923,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - buffer
    - nal_size
    - vvc
    argTypes:
    - char*
    - u32
    - VVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11924
      start: 11920
    functionDepth: 3
    functionLinenumber: 11920
    functionLinenumberEnd: 11924
    functionName: gf_vvc_parse_sei
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_hevc_vvc_parse_sei
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vvc_parse_sei(char *buffer, u32 nal_size, VVCState *vvc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_hevc_vvc_reformat_sei
      Src: /src/gpac/src/media_tools/av_parsers.c:11929,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - buffer
    - nal_size
    - isobmf_rewrite
    - sei_filter
    argTypes:
    - char*
    - u32
    - Bool
    - SEI_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11930
      start: 11926
    functionDepth: 2
    functionLinenumber: 11926
    functionLinenumberEnd: 11930
    functionName: gf_vvc_reformat_sei
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_hevc_vvc_reformat_sei
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vvc_reformat_sei(char *buffer, u32 nal_size, Bool isobmf_rewrite,
      SEI_Filter *sei_filter)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:11935,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:11937,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:11940,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:11943,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:11946,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 4
    argNames:
    - bs
    - nal_unit_type
    - temporal_id
    - layer_id
    argTypes:
    - GF_BitStream*
    - u8*
    - u8*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11951
      start: 11932
    functionDepth: 1
    functionLinenumber: 11932
    functionLinenumberEnd: 11951
    functionName: vvc_parse_nal_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool vvc_parse_nal_header(GF_BitStream *bs, u8 *nal_unit_type, u8 *temporal_id,
      u8 *layer_id)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:11957,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:11958,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:11960,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:11961,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:11962,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:11966,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11970,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:11972,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11973,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11976,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11977,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:11979,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:11982,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:11984,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:11987,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:11990,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:11992,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 3
    argNames:
    - bs
    - ptl
    - idx
    argTypes:
    - GF_BitStream*
    - VVC_ProfileTierLevel*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11995
      start: 11953
    functionDepth: 1
    functionLinenumber: 11953
    functionLinenumberEnd: 11995
    functionName: vvc_profile_tier_level
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_int_log_idx
    - gf_bs_align
    - gf_bs_read_int
    - gf_bs_read_int_log_idx2
    linkageType: ''
    returnType: void
    signature: void vvc_profile_tier_level(GF_BitStream *bs, VVC_ProfileTierLevel
      *ptl, u32 idx)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12010,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:12013,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12021,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:12023,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12026,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12029,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12032,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12035,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12038,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12040,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12042,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12044,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12053,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12058,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12061,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12064,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12069,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12074,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12076,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:12081,1
    - Dst: vvc_profile_tier_level
      Src: /src/gpac/src/media_tools/av_parsers.c:12084,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:12090,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 68
    argCount: 3
    argNames:
    - bs
    - vvc
    - stop_at_vps_ext
    argTypes:
    - GF_BitStream*
    - VVCState*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12093
      start: 12002
    functionDepth: 2
    functionLinenumber: 12002
    functionLinenumberEnd: 12093
    functionName: gf_vvc_read_vps_bs_internal
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - vvc_profile_tier_level
    - GF_LOG
    - gf_bs_read_int_log_idx
    - gf_bs_read_int_log
    - gf_bs_align
    - gf_bs_is_overflow
    - gf_bs_read_int_log_idx2
    linkageType: ''
    returnType: s32
    signature: s32 gf_vvc_read_vps_bs_internal(GF_BitStream *bs, VVCState *vvc, Bool
      stop_at_vps_ext)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:12101,1
    - Dst: gf_bs_read_ue_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12102,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:12104,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12113,1
    - Dst: gf_bs_read_int_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:12118,1
    - Dst: gf_bs_read_int_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:12124,1
    - Dst: gf_bs_read_ue_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:12127,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:12129,1
    - Dst: gf_bs_read_int_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:12140,1
    - Dst: gf_bs_read_int_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:12155,1
    - Dst: gf_bs_read_ue_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:12160,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 56
    argCount: 5
    argNames:
    - bs
    - sps
    - listIdx
    - rplsIdx
    - rpl
    argTypes:
    - GF_BitStream*
    - VVC_SPS*
    - u32
    - u32
    - VVC_RefPicList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12166
      start: 12095
    functionDepth: 2
    functionLinenumber: 12095
    functionLinenumberEnd: 12166
    functionName: vvc_parse_ref_pic_list_struct
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx2
    - gf_bs_read_ue_log_idx2
    - GF_LOG
    - memset
    - gf_bs_read_ue_log_idx3
    - gf_bs_read_int_log_idx3
    linkageType: ''
    returnType: s32
    signature: s32 vvc_parse_ref_pic_list_struct(GF_BitStream *bs, VVC_SPS *sps, u32
      listIdx, u32 rplsIdx, VVC_RefPicList *rpl)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12171,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12172,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12174,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12175,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12177,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12178,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12180,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12181,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12182,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12184,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12185,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 7
    argNames:
    - bs
    - sps
    - vps
    - general_nal_hrd_params_present_flag
    - general_vcl_hrd_params_present_flag
    - general_du_hrd_params_present_flag
    - hrd_cpb_cnt_minus1
    argTypes:
    - GF_BitStream*
    - VVC_SPS*
    - VVC_VPS*
    - Bool*
    - Bool*
    - Bool*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12187
      start: 12168
    functionDepth: 1
    functionLinenumber: 12168
    functionLinenumberEnd: 12187
    functionName: vvc_parse_general_timing_hrd_parameters
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    - gf_bs_read_ue_log
    linkageType: ''
    returnType: void
    signature: void vvc_parse_general_timing_hrd_parameters(GF_BitStream *bs, VVC_SPS
      *sps, VVC_VPS *vps, Bool *general_nal_hrd_params_present_flag, Bool *general_vcl_hrd_params_present_flag,
      Bool *general_du_hrd_params_present_flag, u32 *hrd_cpb_cnt_minus1)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_ue_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12193,1
    - Dst: gf_bs_read_ue_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12194,1
    - Dst: gf_bs_read_ue_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12196,1
    - Dst: gf_bs_read_ue_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12197,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12199,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - bs
    - subLayerId
    - general_du_hrd_params_present_flag
    - hrd_cpb_cnt_minus1
    argTypes:
    - GF_BitStream*
    - u32
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12201
      start: 12189
    functionDepth: 1
    functionLinenumber: 12189
    functionLinenumberEnd: 12201
    functionName: vvc_parse_sublayer_hrd_parameters
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_ue_log_idx2
    - gf_bs_read_int_log_idx2
    linkageType: ''
    returnType: void
    signature: void vvc_parse_sublayer_hrd_parameters(GF_BitStream *bs, u32 subLayerId,
      Bool general_du_hrd_params_present_flag, u32 hrd_cpb_cnt_minus1)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12208,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12209,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12212,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12216,1
    - Dst: vvc_parse_sublayer_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:12219,1
    - Dst: vvc_parse_sublayer_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:12222,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 7
    argNames:
    - bs
    - firstSubLayer
    - MaxSubLayersVal
    - general_nal_hrd_params_present_flag
    - general_vcl_hrd_params_present_flag
    - general_du_hrd_params_present_flag
    - hrd_cpb_cnt_minus1
    argTypes:
    - GF_BitStream*
    - u32
    - u32
    - Bool
    - Bool
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12225
      start: 12203
    functionDepth: 2
    functionLinenumber: 12203
    functionLinenumberEnd: 12225
    functionName: vvc_parse_ols_timing_hrd_parameters
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx
    - vvc_parse_sublayer_hrd_parameters
    - gf_bs_read_ue_log
    linkageType: ''
    returnType: void
    signature: void vvc_parse_ols_timing_hrd_parameters(GF_BitStream *bs, u32 firstSubLayer,
      u32 MaxSubLayersVal, Bool general_nal_hrd_params_present_flag, Bool general_vcl_hrd_params_present_flag,
      Bool general_du_hrd_params_present_flag, u32 hrd_cpb_cnt_minus1)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - val
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12239
      start: 12232
    functionDepth: 0
    functionLinenumber: 12232
    functionLinenumberEnd: 12239
    functionName: vvc_ceillog2
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 vvc_ceillog2(u32 val)
  - BBCount: 78
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12250,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12254,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12271,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12272,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12273,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12276,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:12284,1
    - Dst: vvc_profile_tier_level
      Src: /src/gpac/src/media_tools/av_parsers.c:12287,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12289,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12290,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12292,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12293,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12294,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12295,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12298,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12299,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12300,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12301,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:12314,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12321,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12323,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:12326,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12332,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12333,1
    - Dst: vvc_ceillog2
      Src: /src/gpac/src/media_tools/av_parsers.c:12335,1
    - Dst: vvc_ceillog2
      Src: /src/gpac/src/media_tools/av_parsers.c:12336,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12343,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12345,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12347,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12349,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12355,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12356,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12361,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12362,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12364,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12368,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12375,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12376,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12377,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12378,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12379,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12380,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12382,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12384,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12387,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12389,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12396,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12399,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12400,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12401,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12404,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12405,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12406,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12407,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12409,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12410,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12414,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12417,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12418,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12420,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12421,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12425,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12426,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12428,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12429,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12433,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12435,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12438,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12439,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12441,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12442,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12443,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12445,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12448,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12449,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12452,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12453,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:12455,1
    - Dst: gf_bs_read_ue_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12459,1
    - Dst: gf_bs_read_ue_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12460,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12464,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12465,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12467,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12469,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12470,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12471,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12472,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12474,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12475,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12476,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12479,1
    - Dst: vvc_parse_ref_pic_list_struct
      Src: /src/gpac/src/media_tools/av_parsers.c:12483,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12487,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12488,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12490,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12492,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12494,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12495,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12497,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12499,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12500,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12503,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12504,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12506,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12509,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12510,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12511,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12512,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12514,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12516,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12517,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12521,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12522,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12524,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12526,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12529,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12531,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12532,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12533,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12535,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12538,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12539,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12542,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12544,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12547,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12549,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12550,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12552,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12553,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12554,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12556,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12557,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12560,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12562,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12566,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12569,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12571,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12572,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12573,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12575,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12577,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:12579,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12583,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12585,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:12587,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12591,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12597,1
    - Dst: vvc_parse_general_timing_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:12601,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12603,1
    - Dst: vvc_parse_ols_timing_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:12606,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12611,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:12613,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12616,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12617,1
    - Dst: gf_bs_is_align
      Src: /src/gpac/src/media_tools/av_parsers.c:12618,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12619,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12622,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12623,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12624,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12625,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12626,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12628,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12629,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12631,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12632,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12635,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12637,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12639,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12641,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12642,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12643,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12644,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12646,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12648,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12650,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12651,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:12658,1
    CyclomaticComplexity: 108
    EdgeCount: 108
    ICount: 350
    argCount: 4
    argNames:
    - bs
    - vvc
    - layer_id
    - vui_flag_pos
    argTypes:
    - GF_BitStream*
    - VVCState*
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12661
      start: 12241
    functionDepth: 3
    functionLinenumber: 12241
    functionLinenumberEnd: 12661
    functionName: gf_vvc_read_sps_bs_internal
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - vvc_profile_tier_level
    - gf_bs_read_ue_log_idx
    - gf_bs_read_ue_log_idx2
    - vvc_parse_ols_timing_hrd_parameters
    - vvc_ceillog2
    - GF_LOG
    - gf_bs_read_int_log_idx
    - gf_bs_read_se_log_idx
    - gf_bs_read_int_log
    - vvc_parse_ref_pic_list_struct
    - gf_bs_get_bit_offset
    - memset
    - gf_bs_is_align
    - vvc_parse_general_timing_hrd_parameters
    - gf_bs_read_se_log
    - gf_bs_is_overflow
    - gf_bs_read_ue_log
    linkageType: ''
    returnType: s32
    signature: s32 gf_vvc_read_sps_bs_internal(GF_BitStream *bs, VVCState *vvc, u8
      layer_id, u32 *vui_flag_pos)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12983,1
    - Dst: vvc_ceillog2
      Src: /src/gpac/src/media_tools/av_parsers.c:13006,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13007,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/av_parsers.c:13012,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:13017,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:13021,1
    - Dst: vvc_parse_ref_pic_list_struct
      Src: /src/gpac/src/media_tools/av_parsers.c:13024,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:13034,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:13036,1
    - Dst: gf_bs_read_ue_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:13037,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 52
    argCount: 3
    argNames:
    - bs
    - si
    - is_pic_header
    argTypes:
    - GF_BitStream*
    - VVCSliceInfo*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13043
      start: 12971
    functionDepth: 3
    functionLinenumber: 12971
    functionLinenumberEnd: 13043
    functionName: vvc_parse_ref_pic_lists
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_bs_read_ue_log_idx2
    - vvc_ceillog2
    - GF_LOG
    - gf_bs_read_int_log_idx
    - memcpy
    - vvc_parse_ref_pic_list_struct
    - gf_bs_read_int_log_idx2
    linkageType: ''
    returnType: s32
    signature: s32 vvc_parse_ref_pic_lists(GF_BitStream *bs, VVCSliceInfo *si, Bool
      is_pic_header)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13049,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13051,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13054,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:13059,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:13063,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13065,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13070,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13076,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13077,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:13080,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:13081,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:13082,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:13083,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13088,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:13093,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:13097,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13099,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13104,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13110,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13111,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:13114,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:13115,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:13116,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:13117,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 71
    argCount: 6
    argNames:
    - bs
    - vvc
    - si
    - pps
    - sps
    - num_ref_idx_active
    argTypes:
    - GF_BitStream*
    - VVCState*
    - VVCSliceInfo*
    - VVC_PPS*
    - VVC_SPS*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13121
      start: 13045
    functionDepth: 4
    functionLinenumber: 13045
    functionLinenumberEnd: 13121
    functionName: vvc_pred_weight_table
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_read_int_log_idx
    - gf_bs_read_se_log_idx
    - gf_bs_read_se_log_idx2
    - memset
    - gf_bs_read_se_log
    - gf_bs_read_ue_log
    linkageType: ''
    returnType: s32
    signature: s32 vvc_pred_weight_table(GF_BitStream *bs, VVCState *vvc, VVCSliceInfo
      *si, VVC_PPS *pps, VVC_SPS *sps, u32 *num_ref_idx_active)
  - BBCount: 58
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13129,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13130,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13132,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13135,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13136,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13138,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13143,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13149,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13151,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13154,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13155,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13160,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13161,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13163,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13167,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13168,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13171,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13174,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13175,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13177,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13178,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13185,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13187,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13189,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13195,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13197,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13201,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13202,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13204,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13206,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13208,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13213,1
    - Dst: vvc_parse_ref_pic_lists
      Src: /src/gpac/src/media_tools/av_parsers.c:13216,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13221,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13225,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13226,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13228,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13229,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13233,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13236,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13242,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13243,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13245,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13246,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13250,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13253,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13256,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13260,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13265,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13270,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13280,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13282,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13284,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13287,1
    - Dst: vvc_pred_weight_table
      Src: /src/gpac/src/media_tools/av_parsers.c:13290,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13295,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13298,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13301,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13303,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13306,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13311,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13314,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13315,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13317,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13318,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13319,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13320,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13326,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13328,1
    CyclomaticComplexity: 73
    EdgeCount: 73
    ICount: 185
    argCount: 3
    argNames:
    - bs
    - vvc
    - si
    argTypes:
    - GF_BitStream*
    - VVCState*
    - VVCSliceInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13333
      start: 13123
    functionDepth: 5
    functionLinenumber: 13123
    functionLinenumberEnd: 13333
    functionName: vvc_parse_picture_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_ue_log_idx
    - vvc_parse_ref_pic_lists
    - vvc_pred_weight_table
    - gf_bs_read_int_log_idx
    - gf_bs_read_int_log
    - gf_bs_read_se_log
    - gf_bs_read_ue_log
    linkageType: ''
    returnType: s32
    signature: s32 vvc_parse_picture_header(GF_BitStream *bs, VVCState *vvc, VVCSliceInfo
      *si)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 54
    argCount: 4
    argNames:
    - si
    - sh_slice_address
    - sh_num_tiles_in_slice
    - ctu_index
    argTypes:
    - VVCSliceInfo*
    - u32
    - u32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13411
      start: 13335
    functionDepth: 0
    functionLinenumber: 13335
    functionLinenumberEnd: 13411
    functionName: vvc_get_ctb_info_in_slice
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 vvc_get_ctb_info_in_slice(VVCSliceInfo *si, u32 sh_slice_address,
      u32 sh_num_tiles_in_slice, s32 ctu_index)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - si
    - ctb_addr_y
    argTypes:
    - VVCSliceInfo*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13426
      start: 13413
    functionDepth: 0
    functionLinenumber: 13413
    functionLinenumberEnd: 13426
    functionName: vvc_ctb_to_tile_row_bd
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 vvc_ctb_to_tile_row_bd(VVCSliceInfo *si, u32 ctb_addr_y)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - si
    - ctb_addr_x
    argTypes:
    - VVCSliceInfo*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13440
      start: 13428
    functionDepth: 0
    functionLinenumber: 13428
    functionLinenumberEnd: 13440
    functionName: vvc_ctb_to_tile_col_bd
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 vvc_ctb_to_tile_col_bd(VVCSliceInfo *si, u32 ctb_addr_x)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: vvc_get_ctb_info_in_slice
      Src: /src/gpac/src/media_tools/av_parsers.c:13452,1
    - Dst: vvc_get_ctb_info_in_slice
      Src: /src/gpac/src/media_tools/av_parsers.c:13460,1
    - Dst: vvc_ctb_to_tile_row_bd
      Src: /src/gpac/src/media_tools/av_parsers.c:13465,1
    - Dst: vvc_ctb_to_tile_col_bd
      Src: /src/gpac/src/media_tools/av_parsers.c:13466,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 25
    argCount: 3
    argNames:
    - si
    - sh_slice_address
    - sh_num_tiles_in_slice
    argTypes:
    - VVCSliceInfo*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13482
      start: 13442
    functionDepth: 1
    functionLinenumber: 13442
    functionLinenumberEnd: 13482
    functionName: vvc_get_num_entry_points
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - vvc_get_ctb_info_in_slice
    - vvc_ctb_to_tile_col_bd
    - vvc_ctb_to_tile_row_bd
    linkageType: ''
    returnType: s32
    signature: s32 vvc_get_num_entry_points(VVCSliceInfo *si, u32 sh_slice_address,
      u32 sh_num_tiles_in_slice)
  - BBCount: 72
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13488,1
    - Dst: vvc_parse_picture_header
      Src: /src/gpac/src/media_tools/av_parsers.c:13490,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13497,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:13515,1
    - Dst: vvc_ceillog2
      Src: /src/gpac/src/media_tools/av_parsers.c:13519,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13520,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13525,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13530,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13533,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:13535,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13541,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13550,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13554,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13555,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13557,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13562,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13563,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13566,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13569,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13570,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13572,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13573,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13579,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13582,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:13589,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:13590,1
    - Dst: vvc_parse_ref_pic_lists
      Src: /src/gpac/src/media_tools/av_parsers.c:13596,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13606,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13610,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13617,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13646,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13651,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13659,1
    - Dst: vvc_pred_weight_table
      Src: /src/gpac/src/media_tools/av_parsers.c:13668,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13673,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13676,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13677,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13679,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13682,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13684,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13686,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13690,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13693,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13697,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13698,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13700,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13701,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13702,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13703,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13711,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13715,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13719,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13722,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13725,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13728,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13730,1
    - Dst: vvc_get_num_entry_points
      Src: /src/gpac/src/media_tools/av_parsers.c:13736,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:13739,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:13741,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:13742,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:13745,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13749,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13751,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:13756,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:13758,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:13764,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:13766,1
    CyclomaticComplexity: 100
    EdgeCount: 100
    ICount: 233
    argCount: 3
    argNames:
    - bs
    - vvc
    - si
    argTypes:
    - GF_BitStream*
    - VVCState*
    - VVCSliceInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13768
      start: 13484
    functionDepth: 6
    functionLinenumber: 13484
    functionLinenumberEnd: 13768
    functionName: vvc_parse_slice
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_ue_log_idx
    - vvc_parse_ref_pic_lists
    - vvc_get_num_entry_points
    - vvc_ceillog2
    - GF_LOG
    - vvc_pred_weight_table
    - gf_bs_read_int_log_idx
    - gf_bs_read_int_log
    - gf_bs_align
    - gf_bs_get_position
    - memset
    - gf_bs_read_int
    - vvc_parse_picture_header
    - gf_bs_read_se_log
    - gf_bs_read_ue_log
    linkageType: ''
    returnType: s32
    signature: s32 vvc_parse_slice(GF_BitStream *bs, VVCState *vvc, VVCSliceInfo *si)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 2
    argNames:
    - si
    - poc_reset
    argTypes:
    - VVCSliceInfo*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13788
      start: 13770
    functionDepth: 0
    functionLinenumber: 13770
    functionLinenumberEnd: 13788
    functionName: vvc_compute_poc
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void vvc_compute_poc(VVCSliceInfo *si, Bool poc_reset)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:13796,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - si
    - poc
    argTypes:
    - VVCSliceInfo*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13799
      start: 13790
    functionDepth: 1
    functionLinenumber: 13790
    functionLinenumberEnd: 13799
    functionName: vvc_push_ref_poc
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: void
    signature: void vvc_push_ref_poc(VVCSliceInfo *si, s32 poc)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:13814,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:13821,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:13829,1
    - Dst: vvc_push_ref_poc
      Src: /src/gpac/src/media_tools/av_parsers.c:13835,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 2
    argNames:
    - vvc
    - si
    argTypes:
    - VVCState*
    - VVCSliceInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13838
      start: 13801
    functionDepth: 2
    functionLinenumber: 13801
    functionLinenumberEnd: 13838
    functionName: vvc_compute_refs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - MIN
    - vvc_push_ref_poc
    linkageType: ''
    returnType: void
    signature: void vvc_compute_refs(VVCState *vvc, VVCSliceInfo *si)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:13848,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:13849,1
    - Dst: gf_bs_mark_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:13850,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:13852,1
    - Dst: vvc_parse_nal_header
      Src: /src/gpac/src/media_tools/av_parsers.c:13853,1
    - Dst: vvc_parse_slice
      Src: /src/gpac/src/media_tools/av_parsers.c:13875,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:13877,1
    - Dst: vvc_compute_poc
      Src: /src/gpac/src/media_tools/av_parsers.c:13886,1
    - Dst: vvc_compute_refs
      Src: /src/gpac/src/media_tools/av_parsers.c:13888,1
    - Dst: vvc_parse_picture_header
      Src: /src/gpac/src/media_tools/av_parsers.c:13902,1
    - Dst: gf_vvc_read_sps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:13917,1
    - Dst: gf_vvc_read_pps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:13921,1
    - Dst: gf_vvc_read_vps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:13925,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13933,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:13940,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:13952,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 92
    argCount: 5
    argNames:
    - bs
    - vvc
    - nal_unit_type
    - temporal_id
    - layer_id
    argTypes:
    - GF_BitStream*
    - VVCState*
    - u8*
    - u8*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13955
      start: 13840
    functionDepth: 7
    functionLinenumber: 13840
    functionLinenumberEnd: 13955
    functionName: gf_vvc_parse_nalu_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - vvc_parse_nal_header
    - gf_vvc_read_pps_bs_internal
    - gf_bs_enable_emulation_byte_removal
    - memcpy
    - vvc_compute_poc
    - gf_bs_read_int_log
    - gf_vvc_read_sps_bs_internal
    - gf_bs_mark_overflow
    - vvc_parse_picture_header
    - gf_bs_available
    - gf_bs_is_overflow
    - vvc_parse_slice
    - vvc_compute_refs
    - gf_vvc_read_vps_bs_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vvc_parse_nalu_bs(GF_BitStream *bs, VVCState *vvc, u8
      *nal_unit_type, u8 *temporal_id, u8 *layer_id)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:13971,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:13973,1
    - Dst: gf_vvc_parse_nalu_bs
      Src: /src/gpac/src/media_tools/av_parsers.c:13975,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:13976,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 6
    argNames:
    - data
    - size
    - vvc
    - nal_unit_type
    - temporal_id
    - layer_id
    argTypes:
    - u8*
    - u32
    - VVCState*
    - u8*
    - u8*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13978
      start: 13957
    functionDepth: 8
    functionLinenumber: 13957
    functionLinenumberEnd: 13978
    functionName: gf_vvc_parse_nalu
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_vvc_parse_nalu_bs
    - gf_bs_del
    - gf_bs_new
    - gf_bs_enable_emulation_byte_removal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vvc_parse_nalu(u8 *data, u32 size, VVCState *vvc, u8 *nal_unit_type,
      u8 *temporal_id, u8 *layer_id)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - vvc
    argTypes:
    - VVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13993
      start: 13980
    functionDepth: 0
    functionLinenumber: 13980
    functionLinenumberEnd: 13993
    functionName: gf_vvc_slice_is_ref
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_vvc_slice_is_ref(VVCState *vvc)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/av_parsers.c:14007,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/av_parsers.c:14013,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:14019,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/av_parsers.c:14024,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:14030,1
    - Dst: gf_media_nalu_remove_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:14031,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:14033,1
    - Dst: vvc_parse_nal_header
      Src: /src/gpac/src/media_tools/av_parsers.c:14034,1
    - Dst: gf_vvc_read_sps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:14035,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:14039,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:14042,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:14046,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:14047,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14051,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14052,1
    - Dst: avc_hevc_vvc_rewrite_vui
      Src: /src/gpac/src/media_tools/av_parsers.c:14056,1
    - Dst: gf_bs_bits_available
      Src: /src/gpac/src/media_tools/av_parsers.c:14059,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14060,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14061,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:14063,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:14065,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/av_parsers.c:14068,1
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/media_tools/av_parsers.c:14069,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/av_parsers.c:14071,1
    - Dst: gf_media_nalu_add_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:14073,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:14075,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:14076,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:14078,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 57
    argCount: 2
    argNames:
    - vvcc
    - vui_info
    argTypes:
    - GF_VVCConfig*
    - GF_VUIInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14080
      start: 13996
    functionDepth: 5
    functionLinenumber: 13996
    functionLinenumberEnd: 14080
    functionName: gf_vvc_change_vui
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_media_nalu_add_emulation_bytes
    - vvc_parse_nal_header
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_seek
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_media_nalu_emulation_bytes_add_count
    - gf_vvc_read_sps_bs_internal
    - gf_bs_del
    - avc_hevc_vvc_rewrite_vui
    - gf_media_nalu_remove_emulation_bytes
    - gf_bs_read_int
    - gf_bs_bits_available
    - gf_list_enum
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vvc_change_vui(GF_VVCConfig *vvcc, GF_VUIInfo *vui_info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:14087,1
    - Dst: gf_vvc_change_vui
      Src: /src/gpac/src/media_tools/av_parsers.c:14095,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 3
    argNames:
    - vvcc
    - ar_n
    - ar_d
    argTypes:
    - GF_VVCConfig*
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14096
      start: 14083
    functionDepth: 6
    functionLinenumber: 14083
    functionLinenumberEnd: 14096
    functionName: gf_vvc_change_par
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_vvc_change_vui
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vvc_change_par(GF_VVCConfig *vvcc, s32 ar_n, s32 ar_d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:14102,1
    - Dst: gf_vvc_change_vui
      Src: /src/gpac/src/media_tools/av_parsers.c:14110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 6
    argNames:
    - vvcc
    - fullrange
    - vidformat
    - colorprim
    - transfer
    - colmatrix
    argTypes:
    - GF_VVCConfig*
    - s32
    - s32
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14111
      start: 14098
    functionDepth: 6
    functionLinenumber: 14098
    functionLinenumberEnd: 14111
    functionName: gf_vvc_change_color
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_vvc_change_vui
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vvc_change_color(GF_VVCConfig *vvcc, s32 fullrange, s32
      vidformat, s32 colorprim, s32 transfer, s32 colmatrix)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/av_parsers.c:14119,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:14123,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:14124,1
    - Dst: vvc_parse_nal_header
      Src: /src/gpac/src/media_tools/av_parsers.c:14128,1
    - Dst: gf_vvc_read_sps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:14129,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:14130,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:14132,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:14142,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 7
    argNames:
    - sps_data
    - sps_size
    - sps_id
    - width
    - height
    - par_n
    - par_d
    argTypes:
    - u8*
    - u32
    - u32*
    - u32*
    - u32*
    - s32*
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14144
      start: 14114
    functionDepth: 4
    functionLinenumber: 14114
    functionLinenumberEnd: 14144
    functionName: gf_vvc_get_sps_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - vvc_parse_nal_header
    - gf_bs_new
    - gf_bs_enable_emulation_byte_removal
    - GF_SAFEALLOC
    - gf_vvc_read_sps_bs_internal
    - gf_bs_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vvc_get_sps_info(u8 *sps_data, u32 sps_size, u32 *sps_id,
      u32 *width, u32 *height, s32 *par_n, s32 *par_d)
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 1
    argNames:
    - video_prof
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14178
      start: 14147
    functionDepth: 0
    functionLinenumber: 14147
    functionLinenumberEnd: 14178
    functionName: gf_vvc_get_profile_name
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_vvc_get_profile_name(u8 video_prof)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memchr
      Src: /src/gpac/src/media_tools/av_parsers.c:14186,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:14192,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14193,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14195,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14196,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14197,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14198,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14199,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14200,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14201,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14202,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14203,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:14205,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:14209,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:14212,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14213,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14214,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14215,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14216,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14217,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14218,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14219,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14220,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14221,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14222,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14223,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14224,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/av_parsers.c:14225,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/av_parsers.c:14226,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:14227,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 42
    argCount: 4
    argNames:
    - seq_hdr
    - seq_hdr_len
    - dsi
    - dsi_size
    argTypes:
    - u8*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14229
      start: 14181
    functionDepth: 1
    functionLinenumber: 14181
    functionLinenumberEnd: 14229
    functionName: gf_media_vc1_seq_header_to_dsi
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_write_int
    - gf_bs_del
    - gf_bs_write_data
    - gf_bs_read_int
    - memchr
    - gf_bs_write_u32
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_media_vc1_seq_header_to_dsi(const u8 *seq_hdr, u32 seq_hdr_len,
      u8 **dsi, u32 *dsi_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/av_parsers.c:14236,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:14237,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/av_parsers.c:14239,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:14241,1
    - Dst: gf_hevc_parse_nalu
      Src: /src/gpac/src/media_tools/av_parsers.c:14242,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 3
    argNames:
    - hevccfg
    - hevc
    - nal_type
    argTypes:
    - GF_HEVCConfig*
    - HEVCState*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14245
      start: 14231
    functionDepth: 8
    functionLinenumber: 14231
    functionLinenumberEnd: 14245
    functionName: gf_hevc_parse_ps
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_hevc_parse_nalu
    linkageType: ''
    returnType: void
    signature: void gf_hevc_parse_ps(GF_HEVCConfig* hevccfg, HEVCState* hevc, u32
      nal_type)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/av_parsers.c:14252,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:14253,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/av_parsers.c:14255,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:14257,1
    - Dst: gf_vvc_parse_nalu
      Src: /src/gpac/src/media_tools/av_parsers.c:14258,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 3
    argNames:
    - vvccfg
    - vvc
    - nal_type
    argTypes:
    - GF_VVCConfig*
    - VVCState*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14261
      start: 14247
    functionDepth: 9
    functionLinenumber: 14247
    functionLinenumberEnd: 14261
    functionName: gf_vvc_parse_ps
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_vvc_parse_nalu
    linkageType: ''
    returnType: void
    signature: void gf_vvc_parse_ps(GF_VVCConfig* vvccfg, VVCState* vvc, u32 nal_type)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:14403,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14407,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14408,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:14413,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - bs
    - bits
    argTypes:
    - GF_BitStream*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14415
      start: 14400
    functionDepth: 1
    functionLinenumber: 14400
    functionLinenumberEnd: 14415
    functionName: gf_ac4_variable_bits
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_available
    - gf_bs_read_int
    linkageType: ''
    returnType: u32
    signature: u32 gf_ac4_variable_bits(GF_BitStream *bs, int bits)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14425,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14426,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14437,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 3
    argNames:
    - bs
    - pinfo
    - frame_rate_idx
    argTypes:
    - GF_BitStream*
    - GF_AC4PresentationV1*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14448
      start: 14417
    functionDepth: 1
    functionLinenumber: 14417
    functionLinenumberEnd: 14448
    functionName: gf_ac4_frame_rate_multiply_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_frame_rate_multiply_info(GF_BitStream *bs, GF_AC4PresentationV1*
      pinfo, u32 frame_rate_idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14453,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - bs
    - pinfo
    - bitstream_version
    argTypes:
    - GF_BitStream*
    - GF_AC4PresentationV1*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14457
      start: 14450
    functionDepth: 1
    functionLinenumber: 14450
    functionLinenumberEnd: 14457
    functionName: gf_ac4_presentation_version
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_presentation_version(GF_BitStream *bs, GF_AC4PresentationV1*
      pinfo, u8 bitstream_version)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14461,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:14462,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14465
      start: 14459
    functionDepth: 2
    functionLinenumber: 14459
    functionLinenumberEnd: 14465
    functionName: gf_ac4_emdf_payloads_substream_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_variable_bits
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_emdf_payloads_substream_info(GF_BitStream *bs)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14470,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14471,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14475,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14478,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14481,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14490,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14493,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14496,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 40
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14502
      start: 14467
    functionDepth: 1
    functionLinenumber: 14467
    functionLinenumberEnd: 14502
    functionName: gf_ac4_emdf_protection
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_emdf_protection(GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14506,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:14508,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14510,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:14512,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14515,1
    - Dst: gf_ac4_emdf_payloads_substream_info
      Src: /src/gpac/src/media_tools/av_parsers.c:14516,1
    - Dst: gf_ac4_emdf_protection
      Src: /src/gpac/src/media_tools/av_parsers.c:14518,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - bs
    - emdf_version
    - key_id
    argTypes:
    - GF_BitStream*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14520
      start: 14504
    functionDepth: 3
    functionLinenumber: 14504
    functionLinenumberEnd: 14520
    functionName: gf_ac4_emdf_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_variable_bits
    - gf_ac4_emdf_payloads_substream_info
    - gf_bs_read_int_log
    - gf_ac4_emdf_protection
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_emdf_info(GF_BitStream *bs, u32 *emdf_version, u32 *key_id)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14532,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14540,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14541,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 3
    argNames:
    - bs
    - pinfo
    - frame_rate_index
    argTypes:
    - GF_BitStream*
    - GF_AC4PresentationV1*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14554
      start: 14522
    functionDepth: 1
    functionLinenumber: 14522
    functionLinenumberEnd: 14554
    functionName: gf_ac4_frame_rate_fractions_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_frame_rate_fractions_info(GF_BitStream *bs, GF_AC4PresentationV1*
      pinfo, u32 frame_rate_index)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14562,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14566,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14570,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14579,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14604,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14611,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:14621,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 62
    argCount: 3
    argNames:
    - bs
    - presentation_version
    - dolby_atmos_indicator
    argTypes:
    - GF_BitStream*
    - u32
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14624
      start: 14556
    functionDepth: 2
    functionLinenumber: 14556
    functionLinenumberEnd: 14624
    functionName: gf_ac4_get_channel_mode
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_variable_bits
    - gf_bs_read_int
    linkageType: ''
    returnType: Bool
    signature: "Bool gf_ac4_get_channel_mode(GF_BitStream *bs,\n\t\t\t\t\t\t\t\t\tu32
      presentation_version,\n\t\t\t\t\t\t\t\t\tu8 *dolby_atmos_indicator)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14630,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14632,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - bs
    - substream
    - fs_index
    argTypes:
    - GF_BitStream*
    - GF_AC4SubStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14639
      start: 14626
    functionDepth: 1
    functionLinenumber: 14626
    functionLinenumberEnd: 14639
    functionName: gf_ac4_dsi_sf_mutiplier
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_dsi_sf_mutiplier(GF_BitStream *bs, GF_AC4SubStream* substream,
      u32 fs_index)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14644,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14646,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - bs
    - substream
    argTypes:
    - GF_BitStream*
    - GF_AC4SubStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14649
      start: 14641
    functionDepth: 1
    functionLinenumber: 14641
    functionLinenumberEnd: 14649
    functionName: gf_ac4_bitreate_indicator
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    - gf_bs_read_int
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_bitreate_indicator(GF_BitStream *bs, GF_AC4SubStream* substream)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14654,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:14655,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - b_substreams_present
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14659
      start: 14651
    functionDepth: 2
    functionLinenumber: 14651
    functionLinenumberEnd: 14659
    functionName: gf_ac4_substream_index_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_variable_bits
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_substream_index_info(GF_BitStream *bs, u32 b_substreams_present)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ch_mode
    - list
    - n
    argTypes:
    - u32
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14670
      start: 14661
    functionDepth: 0
    functionLinenumber: 14661
    functionLinenumberEnd: 14670
    functionName: gf_compare_ch_mode
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_compare_ch_mode(const u32 ch_mode, const u32 *list, const u32
      n)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_ac4_get_channel_mode
      Src: /src/gpac/src/media_tools/av_parsers.c:14688,1
    - Dst: gf_compare_ch_mode
      Src: /src/gpac/src/media_tools/av_parsers.c:14694,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14695,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14696,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14697,1
    - Dst: gf_ac4_dsi_sf_mutiplier
      Src: /src/gpac/src/media_tools/av_parsers.c:14724,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14726,1
    - Dst: gf_ac4_bitreate_indicator
      Src: /src/gpac/src/media_tools/av_parsers.c:14728,1
    - Dst: gf_compare_ch_mode
      Src: /src/gpac/src/media_tools/av_parsers.c:14731,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14732,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14735,1
    - Dst: gf_ac4_substream_index_info
      Src: /src/gpac/src/media_tools/av_parsers.c:14738,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 9
    argNames:
    - bs
    - substream
    - presentation_version
    - default_presentation_flag
    - fs_index
    - speaker_index_mask
    - frame_rate_factor
    - b_substreams_present
    - dolby_atmos_indicator
    argTypes:
    - GF_BitStream*
    - GF_AC4SubStream*
    - u32
    - u8
    - u32
    - u32*
    - u32
    - u8
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14741
      start: 14672
    functionDepth: 3
    functionLinenumber: 14672
    functionLinenumberEnd: 14741
    functionName: gf_ac4_substream_info_chan
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_dsi_sf_mutiplier
    - gf_bs_read_int_log
    - gf_ac4_substream_index_info
    - gf_ac4_get_channel_mode
    - gf_ac4_bitreate_indicator
    - gf_compare_ch_mode
    linkageType: ''
    returnType: Bool
    signature: "Bool gf_ac4_substream_info_chan(GF_BitStream *bs,\n\t\t\t\t\t\t\t\t\t
      \  GF_AC4SubStream *substream,\n\t\t\t\t\t\t\t\t\t   u32 presentation_version,\n\t\t\t\t\t\t\t\t\t
      \  u8 default_presentation_flag,\n\t\t\t\t\t\t\t\t\t   u32 fs_index,\n\t\t\t\t\t\t\t\t\t
      \  u32 *speaker_index_mask,\n\t\t\t\t\t\t\t\t\t   u32 frame_rate_factor,\n\t\t\t\t\t\t\t\t\t
      \  u8 b_substreams_present,\n\t\t\t\t\t\t\t\t\t   u8 *dolby_atmos_indicator)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14746,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:14747,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - b_substreams_present
    argTypes:
    - GF_BitStream*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14751
      start: 14743
    functionDepth: 2
    functionLinenumber: 14743
    functionLinenumberEnd: 14751
    functionName: gf_ac4_hsf_ext_substream_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_variable_bits
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_hsf_ext_substream_info(GF_BitStream *bs, u8 b_substreams_present)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14755,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14757,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:14758,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - bs
    - b_substreams_present
    argTypes:
    - GF_BitStream*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14762
      start: 14753
    functionDepth: 2
    functionLinenumber: 14753
    functionLinenumberEnd: 14762
    functionName: gf_ac4_oamd_substream_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_variable_bits
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_oamd_substream_info(GF_BitStream *bs, u8 b_substreams_present)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 1
    argNames:
    - isf_config
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14777
      start: 14764
    functionDepth: 0
    functionLinenumber: 14764
    functionLinenumberEnd: 14777
    functionName: gf_ac4_obj_num_from_is_config
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_ac4_obj_num_from_is_config(u32 isf_config)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 1
    argNames:
    - assign_code
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14794
      start: 14779
    functionDepth: 0
    functionLinenumber: 14779
    functionLinenumberEnd: 14794
    functionName: gf_ac4_bed_num_from_assign_code
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_ac4_bed_num_from_assign_code(u32 assign_code)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - non_std_mask
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14806
      start: 14796
    functionDepth: 0
    functionLinenumber: 14796
    functionLinenumberEnd: 14806
    functionName: gf_ac4_bed_num_from_non_std_mask
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_ac4_bed_num_from_non_std_mask(u32 non_std_mask)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - std_mask
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14819
      start: 14808
    functionDepth: 0
    functionLinenumber: 14808
    functionLinenumberEnd: 14819
    functionName: gf_ac4_bed_num_from_std_mask
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_ac4_bed_num_from_std_mask(u32 std_mask)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14829,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14830,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14831,1
    - Dst: gf_ac4_obj_num_from_is_config
      Src: /src/gpac/src/media_tools/av_parsers.c:14836,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14841,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14842,1
    - Dst: gf_ac4_bed_num_from_assign_code
      Src: /src/gpac/src/media_tools/av_parsers.c:14847,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14852,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14853,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14854,1
    - Dst: gf_ac4_bed_num_from_non_std_mask
      Src: /src/gpac/src/media_tools/av_parsers.c:14858,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14867,1
    - Dst: gf_ac4_bed_num_from_std_mask
      Src: /src/gpac/src/media_tools/av_parsers.c:14871,1
    - Dst: gf_ceil
      Src: /src/gpac/src/media_tools/av_parsers.c:14882,1
    - Dst: log2
      Src: /src/gpac/src/media_tools/av_parsers.c:14882,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14883,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14888,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 71
    argCount: 4
    argNames:
    - bs
    - substream
    - n_signals
    - is_upmix
    argTypes:
    - GF_BitStream*
    - GF_AC4SubStream*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14910
      start: 14821
    functionDepth: 1
    functionLinenumber: 14821
    functionLinenumberEnd: 14910
    functionName: gf_ac4_bed_dyn_obj_assignment
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_bed_num_from_std_mask
    - log2
    - gf_ac4_bed_num_from_assign_code
    - gf_bs_read_int_log
    - gf_ceil
    - gf_ac4_obj_num_from_is_config
    - gf_ac4_bed_num_from_non_std_mask
    linkageType: ''
    returnType: Bool
    signature: "Bool gf_ac4_bed_dyn_obj_assignment(GF_BitStream *bs,\n\t\t\t\t\t\t\t\t\t\t
      \ GF_AC4SubStream* substream,\n\t\t\t\t\t\t\t\t\t\t  u32 n_signals, // n_fullband_dmx_signals\n\t\t\t\t\t\t\t\t\t\t
      \ Bool is_upmix)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14919,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14920,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14921,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14922,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14924,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14925,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14926,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14927,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14928,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14929,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14930,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14933,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14936,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14939,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14942,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14943,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14946,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14947,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14955
      start: 14912
    functionDepth: 1
    functionLinenumber: 14912
    functionLinenumberEnd: 14955
    functionName: gf_ac4_trim
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_trim(GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14959,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14960,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14963,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14964,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14966,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14971
      start: 14957
    functionDepth: 1
    functionLinenumber: 14957
    functionLinenumberEnd: 14971
    functionName: gf_ac4_tool_t2_to_f_s_b
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_tool_t2_to_f_s_b(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14975,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14976,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14979,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14982
      start: 14973
    functionDepth: 1
    functionLinenumber: 14973
    functionLinenumberEnd: 14982
    functionName: gf_ac4_tool_t2_to_f_s
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_tool_t2_to_f_s(GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14986,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14987,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14990,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14991,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14993,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14998
      start: 14984
    functionDepth: 1
    functionLinenumber: 14984
    functionLinenumberEnd: 14998
    functionName: gf_ac4_tool_tb_to_f_s_b
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_tool_tb_to_f_s_b(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15002,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15003,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15006,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15009
      start: 15000
    functionDepth: 1
    functionLinenumber: 15000
    functionLinenumberEnd: 15009
    functionName: gf_ac4_tool_tb_to_f_s
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_tool_tb_to_f_s(GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15013,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15014,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15017,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15018,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15020,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15025
      start: 15011
    functionDepth: 1
    functionLinenumber: 15011
    functionLinenumberEnd: 15025
    functionName: gf_ac4_tool_tf_to_f_s_b
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_tool_tf_to_f_s_b(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15029,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15030,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15033,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15036
      start: 15027
    functionDepth: 1
    functionLinenumber: 15027
    functionLinenumberEnd: 15036
    functionName: gf_ac4_tool_tf_to_f_s
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_tool_tf_to_f_s(GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15040,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15041,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15042,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15043,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15044,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15046,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15047,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15049,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15051
      start: 15038
    functionDepth: 1
    functionLinenumber: 15038
    functionLinenumberEnd: 15051
    functionName: gf_ac4_stereo_dmx_coeff
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_stereo_dmx_coeff(GF_BitStream *bs)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15058,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15059,1
    - Dst: gf_ac4_stereo_dmx_coeff
      Src: /src/gpac/src/media_tools/av_parsers.c:15060,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15062,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15063,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15064,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15066,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15067,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15069,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15070,1
    - Dst: gf_ac4_tool_t2_to_f_s_b
      Src: /src/gpac/src/media_tools/av_parsers.c:15071,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15073,1
    - Dst: gf_ac4_tool_t2_to_f_s
      Src: /src/gpac/src/media_tools/av_parsers.c:15074,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15077,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15079,1
    - Dst: gf_ac4_tool_tb_to_f_s_b
      Src: /src/gpac/src/media_tools/av_parsers.c:15080,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15082,1
    - Dst: gf_ac4_tool_tb_to_f_s
      Src: /src/gpac/src/media_tools/av_parsers.c:15083,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15086,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15088,1
    - Dst: gf_ac4_tool_tf_to_f_s_b
      Src: /src/gpac/src/media_tools/av_parsers.c:15089,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15091,1
    - Dst: gf_ac4_tool_tf_to_f_s
      Src: /src/gpac/src/media_tools/av_parsers.c:15092,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15096,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15097,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 46
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15103
      start: 15053
    functionDepth: 2
    functionLinenumber: 15053
    functionLinenumberEnd: 15103
    functionName: gf_ac4_bed_render_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_tool_t2_to_f_s_b
    - gf_ac4_stereo_dmx_coeff
    - gf_ac4_tool_tb_to_f_s_b
    - gf_bs_read_int_log
    - gf_ac4_tool_t2_to_f_s
    - gf_ac4_tool_tf_to_f_s_b
    - gf_ac4_tool_tf_to_f_s
    - gf_ac4_tool_tb_to_f_s
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_bed_render_info(GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15110,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15111,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15113,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15114,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15115,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15117,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:15120,1
    - Dst: gf_ac4_trim
      Src: /src/gpac/src/media_tools/av_parsers.c:15122,1
    - Dst: gf_ac4_bed_render_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15123,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:15125,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:15126,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:15126,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:15127,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:15127,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15130
      start: 15105
    functionDepth: 3
    functionLinenumber: 15105
    functionLinenumberEnd: 15130
    functionName: gf_ac4_oamd_common_data
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_variable_bits
    - gf_bs_get_bit_offset
    - gf_bs_read_int_log
    - MIN
    - gf_bs_read_int
    - gf_bs_available
    - gf_ac4_bed_render_info
    - gf_ac4_trim
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_oamd_common_data(GF_BitStream *bs)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15142,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15143,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15152,1
    - Dst: gf_ac4_bed_dyn_obj_assignment
      Src: /src/gpac/src/media_tools/av_parsers.c:15155,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15163,1
    - Dst: gf_ac4_oamd_common_data
      Src: /src/gpac/src/media_tools/av_parsers.c:15164,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15167,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15169,1
    - Dst: gf_ac4_bed_dyn_obj_assignment
      Src: /src/gpac/src/media_tools/av_parsers.c:15174,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15177,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15178,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15182,1
    - Dst: gf_ac4_bitreate_indicator
      Src: /src/gpac/src/media_tools/av_parsers.c:15184,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15188,1
    - Dst: gf_ac4_substream_index_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15191,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 39
    argCount: 7
    argNames:
    - bs
    - substream
    - channel_count
    - default_presentation_flag
    - fs_index
    - frame_rate_factor
    - b_substreams_present
    argTypes:
    - GF_BitStream*
    - GF_AC4SubStream*
    - u32*
    - u8
    - u32
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15195
      start: 15132
    functionDepth: 4
    functionLinenumber: 15132
    functionLinenumberEnd: 15195
    functionName: gf_ac4_substream_info_ajoc
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_variable_bits
    - gf_ac4_bed_dyn_obj_assignment
    - gf_bs_read_int_log
    - gf_ac4_substream_index_info
    - gf_ac4_bitreate_indicator
    - gf_ac4_oamd_common_data
    linkageType: ''
    returnType: Bool
    signature: "Bool gf_ac4_substream_info_ajoc(GF_BitStream *bs,\n\t\t\t\t\t\t\t\t\t
      \  GF_AC4SubStream* substream,\n\t\t\t\t\t\t\t\t\t   u32 *channel_count,\n\t\t\t\t\t\t\t\t\t
      \  u8 default_presentation_flag,\n\t\t\t\t\t\t\t\t\t   u32 fs_index,\n\t\t\t\t\t\t\t\t\t
      \  u32 frame_rate_factor,\n\t\t\t\t\t\t\t\t\t   u8 b_substreams_present)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15207,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15226,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15227,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15237,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15238,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15239,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15240,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15242,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15243,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15245,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15253,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15254,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15255,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15261,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15263,1
    - Dst: gf_ac4_dsi_sf_mutiplier
      Src: /src/gpac/src/media_tools/av_parsers.c:15269,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15271,1
    - Dst: gf_ac4_bitreate_indicator
      Src: /src/gpac/src/media_tools/av_parsers.c:15273,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15277,1
    - Dst: gf_ac4_substream_index_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15280,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 61
    argCount: 7
    argNames:
    - bs
    - substream
    - channel_count
    - default_presentation_flag
    - fs_index
    - frame_rate_factor
    - b_substreams_present
    argTypes:
    - GF_BitStream*
    - GF_AC4SubStream*
    - u32*
    - u8
    - u32
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15283
      start: 15197
    functionDepth: 3
    functionLinenumber: 15197
    functionLinenumberEnd: 15283
    functionName: gf_ac4_substream_info_obj
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_substream_index_info
    - gf_ac4_dsi_sf_mutiplier
    - gf_bs_read_int_log
    - gf_ac4_bitreate_indicator
    linkageType: ''
    returnType: Bool
    signature: "Bool gf_ac4_substream_info_obj(GF_BitStream *bs,\n\t\t\t\t\t\t\t\t\t
      \ GF_AC4SubStream* substream,\n\t\t\t\t\t\t\t\t\t  u32 *channel_count,\n\t\t\t\t\t\t\t\t\t
      \ u8 default_presentation_flag,\n\t\t\t\t\t\t\t\t\t  u32 fs_index,\n\t\t\t\t\t\t\t\t\t
      \ u32 frame_rate_factor,\n\t\t\t\t\t\t\t\t\t  u8 b_substreams_present)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15289,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15290,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15292,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15293,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15294,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15296,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15298,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - bs
    - ginfo
    argTypes:
    - GF_BitStream*
    - GF_AC4SubStreamGroupV1*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15303
      start: 15285
    functionDepth: 1
    functionLinenumber: 15285
    functionLinenumberEnd: 15303
    functionName: gf_ac4_content_type
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_content_type(GF_BitStream *bs, GF_AC4SubStreamGroupV1*
      ginfo)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15319,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15320,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15321,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15324,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15326,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/av_parsers.c:15331,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15333,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/av_parsers.c:15342,1
    - Dst: gf_ac4_substream_info_chan
      Src: /src/gpac/src/media_tools/av_parsers.c:15343,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15352,1
    - Dst: gf_ac4_hsf_ext_substream_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15355,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15365,1
    - Dst: gf_ac4_oamd_substream_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15366,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/av_parsers.c:15370,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/av_parsers.c:15372,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/av_parsers.c:15375,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15378,1
    - Dst: gf_ac4_substream_info_ajoc
      Src: /src/gpac/src/media_tools/av_parsers.c:15380,1
    - Dst: gf_ac4_hsf_ext_substream_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15388,1
    - Dst: gf_ac4_substream_info_obj
      Src: /src/gpac/src/media_tools/av_parsers.c:15391,1
    - Dst: gf_ac4_hsf_ext_substream_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15399,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15402,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15412,1
    - Dst: gf_ac4_content_type
      Src: /src/gpac/src/media_tools/av_parsers.c:15414,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 62
    argCount: 10
    argNames:
    - bs
    - ginfo
    - bitstream_version
    - presentation_version
    - default_presentation_flag
    - frame_rate_factor
    - fs_index
    - channel_count
    - speaker_index_mask
    - b_obj_or_ajoc
    argTypes:
    - GF_BitStream*
    - GF_AC4SubStreamGroupV1*
    - u8
    - u8
    - u8
    - u32
    - u32
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15417
      start: 15305
    functionDepth: 5
    functionLinenumber: 15305
    functionLinenumberEnd: 15417
    functionName: gf_ac4_substream_group_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_variable_bits
    - gf_list_new
    - gf_ac4_substream_info_ajoc
    - gf_ac4_content_type
    - GF_SAFEALLOC
    - gf_ac4_oamd_substream_info
    - gf_ac4_substream_info_obj
    - gf_ac4_hsf_ext_substream_info
    - gf_bs_read_int_log
    - gf_list_add
    - gf_ac4_substream_info_chan
    - gf_list_del
    linkageType: ''
    returnType: Bool
    signature: "Bool gf_ac4_substream_group_info(GF_BitStream *bs,\n\t\t\t\t\t\t\t\t\t\tGF_AC4SubStreamGroupV1*
      ginfo,\n\t\t\t\t\t\t\t\t\t\tu8 bitstream_version,\n\t\t\t\t\t\t\t\t\t\tu8 presentation_version,\n\t\t\t\t\t\t\t\t\t\tu8
      default_presentation_flag,\n\t\t\t\t\t\t\t\t\t\tu32 frame_rate_factor,\n\t\t\t\t\t\t\t\t\t\tu32
      fs_index,\n\t\t\t\t\t\t\t\t\t\tu32 *channel_count,\n\t\t\t\t\t\t\t\t\t\tu32
      *speaker_index_mask,\n\t\t\t\t\t\t\t\t\t\tu32 *b_obj_or_ajoc)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15425,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15427,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - bs
    - bitstream_version
    argTypes:
    - GF_BitStream*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15431
      start: 15419
    functionDepth: 2
    functionLinenumber: 15419
    functionLinenumberEnd: 15431
    functionName: gf_ac4_sgi_specifier
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_variable_bits
    - gf_bs_read_int_log
    linkageType: ''
    returnType: u32
    signature: u32 gf_ac4_sgi_specifier(GF_BitStream *bs, u8 bitstream_version)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15439,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15440,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15441,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15447,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - bs
    - pinfo
    - bitstream_version
    argTypes:
    - GF_BitStream*
    - GF_AC4PresentationV1*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15450
      start: 15433
    functionDepth: 2
    functionLinenumber: 15433
    functionLinenumberEnd: 15450
    functionName: gf_ac4_presentation_config_ext_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_variable_bits
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: "Bool gf_ac4_presentation_config_ext_info(GF_BitStream *bs,\n\t\t\t\t\t\t\t\t\t\t\t\tGF_AC4PresentationV1*
      pinfo,\n\t\t\t\t\t\t\t\t\t\t\t\tu8 bitstream_version)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15455,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15456,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15457,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15459,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15462
      start: 15452
    functionDepth: 2
    functionLinenumber: 15452
    functionLinenumberEnd: 15462
    functionName: gf_ac4_presentation_substream_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_variable_bits
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_presentation_substream_info(GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/av_parsers.c:15470,1
    - Dst: gf_ac4_sgi_specifier
      Src: /src/gpac/src/media_tools/av_parsers.c:15471,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15472,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/av_parsers.c:15475,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - bs
    - idx_list
    - bitstream_version
    - group_index
    argTypes:
    - GF_BitStream*
    - GF_List*
    - u8
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15477
      start: 15464
    functionDepth: 3
    functionLinenumber: 15464
    functionLinenumberEnd: 15477
    functionName: gf_ac4_sgi_specifier_add
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - MAX
    - gf_ac4_sgi_specifier
    - gf_list_add
    - GF_SAFEALLOC
    linkageType: ''
    returnType: Bool
    signature: "Bool gf_ac4_sgi_specifier_add(GF_BitStream *bs,\n\t\t\t\t\t\t\t\t\tGF_List
      *idx_list,\n\t\t\t\t\t\t\t\t\tu8 bitstream_version,\n\t\t\t\t\t\t\t\t\tu32 *group_index)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/av_parsers.c:15486,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15489,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15491,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15493,1
    - Dst: gf_ac4_presentation_version
      Src: /src/gpac/src/media_tools/av_parsers.c:15505,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15513,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15515,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15517,1
    - Dst: gf_ac4_frame_rate_multiply_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15520,1
    - Dst: gf_ac4_frame_rate_fractions_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15521,1
    - Dst: gf_ac4_emdf_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15522,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15526,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15528,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15532,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15536,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15540,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15541,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15546,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15547,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15554,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15555,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15560,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15561,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15562,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15567,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15568,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15569,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15575,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15577,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15581,1
    - Dst: gf_ac4_presentation_config_ext_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15586,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15591,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15596,1
    - Dst: gf_ac4_presentation_substream_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15597,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15600,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15602,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:15604,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:15604,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:15604,1
    - Dst: gf_ac4_emdf_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15605,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/av_parsers.c:15613,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 100
    argCount: 5
    argNames:
    - bs
    - pinfo
    - bitstream_version
    - frame_rate_index
    - max_group_index
    argTypes:
    - GF_BitStream*
    - GF_AC4PresentationV1*
    - u8
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15617
      start: 15479
    functionDepth: 4
    functionLinenumber: 15479
    functionLinenumberEnd: 15617
    functionName: gf_ac4_presentation_v1_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_variable_bits
    - gf_list_new
    - gf_ac4_frame_rate_fractions_info
    - gf_ac4_presentation_config_ext_info
    - gf_bs_read_int_log
    - gf_ac4_presentation_version
    - MIN
    - gf_ac4_frame_rate_multiply_info
    - gf_ac4_emdf_info
    - gf_ac4_presentation_substream_info
    - MAX
    - gf_ac4_sgi_specifier_add
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: Bool
    signature: "Bool gf_ac4_presentation_v1_info(GF_BitStream *bs,\n\t\t\t\t\t\t\t\t\t\tGF_AC4PresentationV1*
      pinfo,\n\t\t\t\t\t\t\t\t\t\tu8 bitstream_version,\n\t\t\t\t\t\t\t\t\t\tu32 frame_rate_index,\n\t\t\t\t\t\t\t\t\t\tu32
      *max_group_index)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15625,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:15627,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15631,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - stream
    - idx
    argTypes:
    - GF_AC4StreamInfo*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15638
      start: 15619
    functionDepth: 1
    functionLinenumber: 15619
    functionLinenumberEnd: 15638
    functionName: gf_ac4_get_presentation_by_substreamgroup
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_get
    linkageType: ''
    returnType: GF_AC4PresentationV1
    signature: GF_AC4PresentationV1 * gf_ac4_get_presentation_by_substreamgroup(GF_AC4StreamInfo*
      stream, u32 idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15643,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15646,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - presentation_v1
    - idx
    argTypes:
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15652
      start: 15640
    functionDepth: 1
    functionLinenumber: 15640
    functionLinenumberEnd: 15652
    functionName: gf_ac4_is_substream_group_part_of_default_presentation
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_is_substream_group_part_of_default_presentation(GF_List
      *presentation_v1, u32 idx)
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 62
    argCount: 1
    argNames:
    - mask
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15718
      start: 15654
    functionDepth: 0
    functionLinenumber: 15654
    functionLinenumberEnd: 15718
    functionName: gf_ac4_get_channel_count_from_speaker_group_index_mask
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_ac4_get_channel_count_from_speaker_group_index_mask(u32 mask)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 2
    argNames:
    - lvalue
    - rvalue
    argTypes:
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15726
      start: 15720
    functionDepth: 0
    functionLinenumber: 15720
    functionLinenumberEnd: 15726
    functionName: gf_ac4_cfg_super_set
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 gf_ac4_cfg_super_set(s32 lvalue, s32 rvalue)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15737,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15740,1
    - Dst: gf_ac4_cfg_super_set
      Src: /src/gpac/src/media_tools/av_parsers.c:15743,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_AC4PresentationV1*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15753
      start: 15728
    functionDepth: 1
    functionLinenumber: 15728
    functionLinenumberEnd: 15753
    functionName: gf_ac4_presentation_ch_mode
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_ac4_cfg_super_set
    linkageType: ''
    returnType: s32
    signature: s32 gf_ac4_presentation_ch_mode(GF_AC4PresentationV1 *p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15764,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15767,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_AC4PresentationV1*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15785
      start: 15755
    functionDepth: 1
    functionLinenumber: 15755
    functionLinenumberEnd: 15785
    functionName: gf_ac4_presentation_channel_mask_v1
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: u32
    signature: u32 gf_ac4_presentation_channel_mask_v1(GF_AC4PresentationV1 *p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15796,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15799,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_AC4PresentationV1*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15804
      start: 15787
    functionDepth: 1
    functionLinenumber: 15787
    functionLinenumberEnd: 15804
    functionName: gf_ac4_pres_b_4_back_channels_present
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: u8
    signature: u8 gf_ac4_pres_b_4_back_channels_present(GF_AC4PresentationV1 *p)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15815,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15818,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_AC4PresentationV1*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15836
      start: 15806
    functionDepth: 1
    functionLinenumber: 15806
    functionLinenumberEnd: 15836
    functionName: gf_ac4_pres_top_channel_pairs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: u8
    signature: u8 gf_ac4_pres_top_channel_pairs(GF_AC4PresentationV1 *p)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 14
    argCount: 5
    argNames:
    - b_channel_coded
    - b_ajoc
    - b_static_dmx
    - b_lfe
    - ch_mode
    argTypes:
    - u8
    - u8
    - u8
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15858
      start: 15838
    functionDepth: 0
    functionLinenumber: 15838
    functionLinenumberEnd: 15858
    functionName: gf_ac4_get_ch_mode_core
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: "s32 gf_ac4_get_ch_mode_core(u8 b_channel_coded,\n\t\t\t\t\t\t\t\t
      \  u8 b_ajoc,\n\t\t\t\t\t\t\t\t   u8 b_static_dmx,\n\t\t\t\t\t\t\t\t   u8 b_lfe,\n\t\t\t\t\t\t\t\t
      \  u32 ch_mode)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15870,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15873,1
    - Dst: gf_ac4_get_ch_mode_core
      Src: /src/gpac/src/media_tools/av_parsers.c:15876,1
    - Dst: gf_ac4_cfg_super_set
      Src: /src/gpac/src/media_tools/av_parsers.c:15881,1
    - Dst: gf_ac4_get_ch_mode_core
      Src: /src/gpac/src/media_tools/av_parsers.c:15885,1
    - Dst: gf_ac4_cfg_super_set
      Src: /src/gpac/src/media_tools/av_parsers.c:15890,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 33
    argCount: 2
    argNames:
    - p
    - pres_ch_mode
    argTypes:
    - GF_AC4PresentationV1*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15907
      start: 15860
    functionDepth: 1
    functionLinenumber: 15860
    functionLinenumberEnd: 15907
    functionName: gf_ac4_get_b_presentation_core_differs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_get_ch_mode_core
    - gf_list_get
    - gf_ac4_cfg_super_set
    linkageType: ''
    returnType: s32
    signature: s32 gf_ac4_get_b_presentation_core_differs(GF_AC4PresentationV1 *p,
      s32 pres_ch_mode)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15914,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15916,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15919,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:15924,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15925,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15926,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15929,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - bs
    - hdr
    argTypes:
    - GF_BitStream*
    - GF_AC4Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15934
      start: 15909
    functionDepth: 2
    functionLinenumber: 15909
    functionLinenumberEnd: 15934
    functionName: gf_ac4_substream_index_table
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_variable_bits
    - gf_bs_read_int_log
    - gf_bs_available
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_substream_index_table(GF_BitStream *bs, GF_AC4Config* hdr)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:15953,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15955,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15957,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15960,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15961,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15962,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15964,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15969,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15970,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15971,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15972,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15975,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15976,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15983,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15984,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15986,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:16005,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:16007,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:16008,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:16011,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/av_parsers.c:16042,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/av_parsers.c:16051,1
    - Dst: gf_ac4_presentation_v1_info
      Src: /src/gpac/src/media_tools/av_parsers.c:16052,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/av_parsers.c:16057,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:16059,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/av_parsers.c:16066,1
    - Dst: gf_ac4_get_presentation_by_substreamgroup
      Src: /src/gpac/src/media_tools/av_parsers.c:16069,1
    - Dst: gf_ac4_is_substream_group_part_of_default_presentation
      Src: /src/gpac/src/media_tools/av_parsers.c:16076,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/av_parsers.c:16078,1
    - Dst: gf_ac4_substream_group_info
      Src: /src/gpac/src/media_tools/av_parsers.c:16079,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/av_parsers.c:16089,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:16094,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:16102,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/av_parsers.c:16108,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:16111,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:16113,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/av_parsers.c:16115,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:16118,1
    - Dst: gf_ac4_presentation_ch_mode
      Src: /src/gpac/src/media_tools/av_parsers.c:16126,1
    - Dst: gf_ac4_pres_b_4_back_channels_present
      Src: /src/gpac/src/media_tools/av_parsers.c:16131,1
    - Dst: gf_ac4_pres_top_channel_pairs
      Src: /src/gpac/src/media_tools/av_parsers.c:16132,1
    - Dst: gf_ac4_presentation_channel_mask_v1
      Src: /src/gpac/src/media_tools/av_parsers.c:16134,1
    - Dst: gf_ac4_get_b_presentation_core_differs
      Src: /src/gpac/src/media_tools/av_parsers.c:16142,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/av_parsers.c:16153,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:16154,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:16155,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/av_parsers.c:16157,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:16162,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/av_parsers.c:16166,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:16167,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/av_parsers.c:16169,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/av_parsers.c:16175,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/av_parsers.c:16177,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:16178,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:16179,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/av_parsers.c:16181,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:16183,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/av_parsers.c:16185,1
    - Dst: gf_ac4_get_channel_count_from_speaker_group_index_mask
      Src: /src/gpac/src/media_tools/av_parsers.c:16189,1
    - Dst: gf_ac4_substream_index_table
      Src: /src/gpac/src/media_tools/av_parsers.c:16196,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:16197,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:16199,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 185
    argCount: 3
    argNames:
    - bs
    - hdr
    - full_parse
    argTypes:
    - GF_BitStream*
    - GF_AC4Config*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16202
      start: 15936
    functionDepth: 6
    functionLinenumber: 15936
    functionLinenumberEnd: 16202
    functionName: gf_ac4_raw_frame
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_ac4_get_presentation_by_substreamgroup
    - GF_SAFEALLOC
    - gf_ac4_presentation_ch_mode
    - gf_ac4_pres_b_4_back_channels_present
    - gf_list_count
    - gf_ac4_is_substream_group_part_of_default_presentation
    - gf_ac4_pres_top_channel_pairs
    - gf_list_new
    - gf_list_get
    - gf_list_pop_back
    - gf_ac4_get_channel_count_from_speaker_group_index_mask
    - gf_list_add
    - gf_ac4_presentation_channel_mask_v1
    - GF_LOG
    - gf_ac4_get_b_presentation_core_differs
    - gf_bs_read_int_log
    - gf_bs_align
    - gf_bs_get_position
    - gf_ac4_substream_group_info
    - gf_list_del_item
    - gf_bs_is_overflow
    - gf_list_del
    - gf_ac4_variable_bits
    - gf_ac4_presentation_v1_info
    - gf_ac4_substream_index_table
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_raw_frame(GF_BitStream *bs, GF_AC4Config* hdr, Bool full_parse)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:16207,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:16208,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/media_tools/av_parsers.c:16209,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:16212,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:16214,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:16216,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16223
      start: 16204
    functionDepth: 1
    functionLinenumber: 16204
    functionLinenumberEnd: 16223
    functionName: AC4_FindSyncCodeBS
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_seek
    - gf_bs_get_size
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_bs_available
    linkageType: ''
    returnType: Bool
    signature: Bool AC4_FindSyncCodeBS(GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 2
    argNames:
    - buf
    - buflen
    argTypes:
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16238
      start: 16225
    functionDepth: 0
    functionLinenumber: 16225
    functionLinenumberEnd: 16238
    functionName: AC4_FindSyncCode
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 AC4_FindSyncCode(u8 *buf, u32 buflen)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: AC4_FindSyncCode
      Src: /src/gpac/src/media_tools/av_parsers.c:16246,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:16249,1
    - Dst: gf_ac4_parser_bs
      Src: /src/gpac/src/media_tools/av_parsers.c:16250,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:16251,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 6
    argNames:
    - buf
    - buflen
    - pos
    - hdr
    - full_parse
    - start_from_toc
    argTypes:
    - u8*
    - u32
    - u32*
    - GF_AC4Config*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16254
      start: 16240
    functionDepth: 1
    functionLinenumber: 16240
    functionLinenumberEnd: 16254
    functionName: gf_ac4_parser
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - AC4_FindSyncCode
    - gf_ac4_parser_bs
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_parser(u8 *buf, u32 buflen, u32 *pos, GF_AC4Config *hdr,
      Bool full_parse, Bool start_from_toc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:16258,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:16261,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - bs
    - hdr
    argTypes:
    - GF_BitStream*
    - GF_AC4Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16265
      start: 16256
    functionDepth: 1
    functionLinenumber: 16256
    functionLinenumberEnd: 16265
    functionName: gf_ac4_frame_size
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ac4_frame_size(GF_BitStream *bs, GF_AC4Config *hdr)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:16275,1
    - Dst: gf_odf_ac4_cfg_clean_list
      Src: /src/gpac/src/media_tools/av_parsers.c:16280,1
    - Dst: AC4_FindSyncCodeBS
      Src: /src/gpac/src/media_tools/av_parsers.c:16287,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:16290,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:16292,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:16294,1
    - Dst: gf_ac4_frame_size
      Src: /src/gpac/src/media_tools/av_parsers.c:16299,1
    - Dst: gf_ac4_raw_frame
      Src: /src/gpac/src/media_tools/av_parsers.c:16302,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:16303,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:16305,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:16312,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:16324,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:16325,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:16326,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:16332,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:16332,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:16332,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:16333,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:16334,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:16342,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:16342,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:16342,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:16343,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:16344,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:16352,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 65
    argCount: 4
    argNames:
    - bs
    - hdr
    - full_parse
    - start_from_toc
    argTypes:
    - GF_BitStream*
    - GF_AC4Config*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16354
      start: 16267
    functionDepth: 7
    functionLinenumber: 16267
    functionLinenumberEnd: 16354
    functionName: gf_ac4_parser_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_ac4_frame_size
    - gf_bs_seek
    - GF_LOG
    - MIN
    - gf_bs_get_position
    - gf_odf_ac4_cfg_clean_list
    - gf_bs_read_u16
    - AC4_FindSyncCodeBS
    - GF_ARRAY_LENGTH
    - gf_ac4_raw_frame
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_ac4_parser_bs(GF_BitStream *bs, GF_AC4Config *hdr, Bool
      full_parse, Bool start_from_toc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_net_get_ntp_ms
      Src: /src/gpac/src/media_tools/dash_segmenter.c:128,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - dasher
    - ms_in_session
    argTypes:
    - GF_DASHSegmenter*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 132
    functionName: gf_dasher_next_update_time
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached:
    - gf_net_get_ntp_ms
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_next_update_time(GF_DASHSegmenter *dasher, u64
      *ms_in_session)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_segmenter.c:139,1
    - Dst: gf_sys_get_argc
      Src: /src/gpac/src/media_tools/dash_segmenter.c:141,1
    - Dst: gf_sys_get_arg
      Src: /src/gpac/src/media_tools/dash_segmenter.c:143,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_segmenter.c:144,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_segmenter.c:151,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_segmenter.c:155,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_segmenter.c:158,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_segmenter.c:162,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 165
    functionName: GF_DASHSegmenter *gf_dasher_new(const char *mpdName, GF_DashProfile
      dash_profile, const char *tmp_dir, u32 dash_timescale, const char *dasher_context_file)
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - strstr
    - strncmp
    - gf_sys_get_arg
    - gf_sys_get_argc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_DASHSegmenter *gf_dasher_new(const char *mpdName, GF_DashProfile
      dash_profile, const char *tmp_dir, u32 dash_timescale, const char *dasher_context_file)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_segmenter.c:171,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_segmenter.c:172,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - dasher
    - dash_utc_start_date
    argTypes:
    - GF_DASHSegmenter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 173
    functionName: gf_dasher_set_start_date
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_strdup
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_set_start_date(GF_DASHSegmenter *dasher, const
      char *dash_utc_start_date)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_reset
      Src: /src/gpac/src/media_tools/dash_segmenter.c:178,1
    - Dst: gf_fs_print_unused_args
      Src: /src/gpac/src/media_tools/dash_segmenter.c:180,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/dash_segmenter.c:181,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - dasher
    argTypes:
    - GF_DASHSegmenter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 184
    functionName: gf_dasher_clean_inputs
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 0
    functionsReached:
    - gf_fs_print_unused_args
    - gf_fs_del
    - gf_list_reset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_clean_inputs(GF_DASHSegmenter *dasher)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_segmenter.c:189,1
    - Dst: gf_dasher_clean_inputs
      Src: /src/gpac/src/media_tools/dash_segmenter.c:190,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_segmenter.c:191,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_segmenter.c:192,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_segmenter.c:193,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_segmenter.c:194,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_segmenter.c:195,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_segmenter.c:196,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_segmenter.c:197,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_segmenter.c:198,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_segmenter.c:199,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dash_segmenter.c:200,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_segmenter.c:201,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 1
    argNames:
    - dasher
    argTypes:
    - GF_DASHSegmenter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 186
    functionDepth: 2
    functionLinenumber: 186
    functionLinenumberEnd: 202
    functionName: gf_dasher_del
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_dasher_clean_inputs
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_del(GF_DASHSegmenter *dasher)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DOSET
      Src: /src/gpac/src/media_tools/dash_segmenter.c:213,1
    - Dst: DOSET
      Src: /src/gpac/src/media_tools/dash_segmenter.c:214,1
    - Dst: DOSET
      Src: /src/gpac/src/media_tools/dash_segmenter.c:215,1
    - Dst: DOSET
      Src: /src/gpac/src/media_tools/dash_segmenter.c:216,1
    - Dst: DOSET
      Src: /src/gpac/src/media_tools/dash_segmenter.c:217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 6
    argNames:
    - dasher
    - title
    - copyright
    - moreInfoURL
    - sourceInfo
    - lang
    argTypes:
    - GF_DASHSegmenter*
    - char*
    - char*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 204
    functionDepth: 1
    functionLinenumber: 204
    functionLinenumberEnd: 219
    functionName: gf_dasher_set_info
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached:
    - DOSET
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_set_info(GF_DASHSegmenter *dasher, const char *title,
      const char *copyright, const char *moreInfoURL, const char *sourceInfo, const
      char *lang)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _field
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 213
    functionName: DOSET
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DOSET(_field)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:227,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - dasher
    - location
    argTypes:
    - GF_DASHSegmenter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 228
    functionName: gf_dasher_set_location
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached:
    - gf_dynstrcat
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_set_location(GF_DASHSegmenter *dasher, const char
      *location)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:236,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - dasher
    - base_url
    argTypes:
    - GF_DASHSegmenter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 230
    functionDepth: 1
    functionLinenumber: 230
    functionLinenumberEnd: 237
    functionName: gf_dasher_add_base_url
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached:
    - gf_dynstrcat
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_add_base_url(GF_DASHSegmenter *dasher, const char
      *base_url)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_segmenter.c:241,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_segmenter.c:243,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - dasher
    - inName
    argTypes:
    - GF_DASHSegmenter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 244
    functionName: dasher_format_seg_name
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    linkageType: ''
    returnType: void
    signature: void dasher_format_seg_name(GF_DASHSegmenter *dasher, const char *inName)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dasher_format_seg_name
      Src: /src/gpac/src/media_tools/dash_segmenter.c:253,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 5
    argNames:
    - dasher
    - enable
    - default_template
    - default_extension
    - default_init_extension
    argTypes:
    - GF_DASHSegmenter*
    - Bool
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 246
    functionDepth: 1
    functionLinenumber: 246
    functionLinenumberEnd: 255
    functionName: gf_dasher_enable_url_template
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached:
    - dasher_format_seg_name
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_enable_url_template(GF_DASHSegmenter *dasher, Bool
      enable, const char *default_template, const char *default_extension, const char
      *default_init_extension)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dasher
    - enable
    argTypes:
    - GF_DASHSegmenter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 263
    functionName: gf_dasher_enable_segment_timeline
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_enable_segment_timeline(GF_DASHSegmenter *dasher,
      Bool enable)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dasher
    - enable
    argTypes:
    - GF_DASHSegmenter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 271
    functionName: gf_dasher_enable_single_segment
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_enable_single_segment(GF_DASHSegmenter *dasher,
      Bool enable)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dasher
    - enable
    argTypes:
    - GF_DASHSegmenter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 279
    functionName: gf_dasher_enable_single_file
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_enable_single_file(GF_DASHSegmenter *dasher, Bool
      enable)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dasher
    - bitstream_switching
    argTypes:
    - GF_DASHSegmenter*
    - GF_DashSwitchingMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 281
    functionDepth: 0
    functionLinenumber: 281
    functionLinenumberEnd: 287
    functionName: gf_dasher_set_switch_mode
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_set_switch_mode(GF_DASHSegmenter *dasher, GF_DashSwitchingMode
      bitstream_switching)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - dasher
    - default_segment_duration
    - default_fragment_duration
    - sub_duration
    argTypes:
    - GF_DASHSegmenter*
    - Double
    - Double
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 289
    functionDepth: 0
    functionLinenumber: 289
    functionLinenumberEnd: 300
    functionName: gf_dasher_set_durations
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_set_durations(GF_DASHSegmenter *dasher, Double
      default_segment_duration, Double default_fragment_duration, Double sub_duration)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - dasher
    - segments_start_with_rap
    - fragments_start_with_rap
    argTypes:
    - GF_DASHSegmenter*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 302
    functionDepth: 0
    functionLinenumber: 302
    functionLinenumberEnd: 309
    functionName: gf_dasher_enable_rap_splitting
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_enable_rap_splitting(GF_DASHSegmenter *dasher,
      Bool segments_start_with_rap, Bool fragments_start_with_rap)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dasher
    - segment_marker_4cc
    argTypes:
    - GF_DASHSegmenter*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 311
    functionDepth: 0
    functionLinenumber: 311
    functionLinenumberEnd: 317
    functionName: gf_dasher_set_segment_marker
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_set_segment_marker(GF_DASHSegmenter *dasher, u32
      segment_marker_4cc)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dasher
    - fs_print_flags
    argTypes:
    - GF_DASHSegmenter*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 319
    functionDepth: 0
    functionLinenumber: 319
    functionLinenumberEnd: 326
    functionName: gf_dasher_print_session_info
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_print_session_info(GF_DASHSegmenter *dasher, u32
      fs_print_flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dasher
    - keep_utc
    argTypes:
    - GF_DASHSegmenter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 335
    functionName: gf_dasher_keep_source_utc
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_keep_source_utc(GF_DASHSegmenter *dasher, Bool
      keep_utc)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 5
    argNames:
    - dasher
    - enable_sidx
    - subsegs_per_sidx
    - daisy_chain_sidx
    - use_ssix
    argTypes:
    - GF_DASHSegmenter*
    - Bool
    - u32
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 337
    functionDepth: 0
    functionLinenumber: 337
    functionLinenumberEnd: 346
    functionName: gf_dasher_enable_sidx
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_enable_sidx(GF_DASHSegmenter *dasher, Bool enable_sidx,
      u32 subsegs_per_sidx, Bool daisy_chain_sidx, Bool use_ssix)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 5
    argNames:
    - dasher
    - dash_mode
    - mpd_update_time
    - time_shift_depth
    - mpd_live_duration
    argTypes:
    - GF_DASHSegmenter*
    - GF_DashDynamicMode
    - Double
    - s32
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 360
    functionName: gf_dasher_set_dynamic_mode
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_set_dynamic_mode(GF_DASHSegmenter *dasher, GF_DashDynamicMode
      dash_mode, Double mpd_update_time, s32 time_shift_depth, Double mpd_live_duration)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dasher
    - min_buffer
    argTypes:
    - GF_DASHSegmenter*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 362
    functionDepth: 0
    functionLinenumber: 362
    functionLinenumberEnd: 368
    functionName: gf_dasher_set_min_buffer
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_set_min_buffer(GF_DASHSegmenter *dasher, Double
      min_buffer)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dasher
    - ast_offset_ms
    argTypes:
    - GF_DASHSegmenter*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 370
    functionDepth: 0
    functionLinenumber: 370
    functionLinenumberEnd: 376
    functionName: gf_dasher_set_ast_offset
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_set_ast_offset(GF_DASHSegmenter *dasher, s32 ast_offset_ms)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dasher
    - fragments_in_memory
    argTypes:
    - GF_DASHSegmenter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 378
    functionDepth: 0
    functionLinenumber: 378
    functionLinenumberEnd: 384
    functionName: gf_dasher_enable_memory_fragmenting
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_enable_memory_fragmenting(GF_DASHSegmenter *dasher,
      Bool fragments_in_memory)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - dasher
    - initial_moof_sn
    - initial_tfdt
    argTypes:
    - GF_DASHSegmenter*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 393
    functionName: gf_dasher_set_initial_isobmf
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_set_initial_isobmf(GF_DASHSegmenter *dasher, u32
      initial_moof_sn, u64 initial_tfdt)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 8
    argNames:
    - dasher
    - no_fragments_defaults
    - pssh_mode
    - samplegroups_in_traf
    - single_traf_per_moof
    - tfdt_per_traf
    - mvex_after_traks
    - sdtp_in_traf
    argTypes:
    - GF_DASHSegmenter*
    - Bool
    - GF_DASHPSSHMode
    - Bool
    - Bool
    - Bool
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 407
      start: 395
    functionDepth: 0
    functionLinenumber: 395
    functionLinenumberEnd: 407
    functionName: gf_dasher_configure_isobmf_default
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_configure_isobmf_default(GF_DASHSegmenter *dasher,
      Bool no_fragments_defaults, GF_DASHPSSHMode pssh_mode, Bool samplegroups_in_traf,
      Bool single_traf_per_moof, Bool tfdt_per_traf, Bool mvex_after_traks, u32 sdtp_in_traf)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dasher
    - insert_utc
    argTypes:
    - GF_DASHSegmenter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 409
    functionDepth: 0
    functionLinenumber: 409
    functionLinenumberEnd: 415
    functionName: gf_dasher_enable_utc_ref
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_enable_utc_ref(GF_DASHSegmenter *dasher, Bool insert_utc)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dasher
    - real_time
    argTypes:
    - GF_DASHSegmenter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 417
    functionDepth: 0
    functionLinenumber: 417
    functionLinenumberEnd: 423
    functionName: gf_dasher_enable_real_time
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_enable_real_time(GF_DASHSegmenter *dasher, Bool
      real_time)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dasher
    - mode
    argTypes:
    - GF_DASHSegmenter*
    - GF_DASH_ContentLocationMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 425
    functionDepth: 0
    functionLinenumber: 425
    functionLinenumberEnd: 431
    functionName: gf_dasher_set_content_protection_location_mode
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_set_content_protection_location_mode(GF_DASHSegmenter
      *dasher, GF_DASH_ContentLocationMode mode)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dasher
    - dash_profile_extension
    argTypes:
    - GF_DASHSegmenter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 433
    functionDepth: 0
    functionLinenumber: 433
    functionLinenumberEnd: 439
    functionName: gf_dasher_set_profile_extension
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_set_profile_extension(GF_DASHSegmenter *dasher,
      const char *dash_profile_extension)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dasher
    - no_cache
    argTypes:
    - GF_DASHSegmenter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 441
    functionDepth: 0
    functionLinenumber: 441
    functionLinenumberEnd: 447
    functionName: gf_dasher_enable_cached_inputs
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_enable_cached_inputs(GF_DASHSegmenter *dasher,
      Bool no_cache)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dasher
    - do_loop
    argTypes:
    - GF_DASHSegmenter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 455
    functionName: gf_dasher_enable_loop_inputs
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_enable_loop_inputs(GF_DASHSegmenter *dasher, Bool
      do_loop)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dasher
    - insert_clock
    argTypes:
    - GF_DASHSegmenter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 463
      start: 457
    functionDepth: 0
    functionLinenumber: 457
    functionLinenumberEnd: 463
    functionName: gf_dasher_set_hls_clock
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_set_hls_clock(GF_DASHSegmenter *dasher, Bool insert_clock)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dasher
    - split_mode
    argTypes:
    - GF_DASHSegmenter*
    - GF_DASH_SplitMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 465
    functionDepth: 0
    functionLinenumber: 465
    functionLinenumberEnd: 471
    functionName: gf_dasher_set_split_mode
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_set_split_mode(GF_DASHSegmenter *dasher, GF_DASH_SplitMode
      split_mode)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dasher
    - merge_last_seg
    argTypes:
    - GF_DASHSegmenter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 479
      start: 473
    functionDepth: 0
    functionLinenumber: 473
    functionLinenumberEnd: 479
    functionName: gf_dasher_set_last_segment_merge
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_set_last_segment_merge(GF_DASHSegmenter *dasher,
      Bool merge_last_seg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - dasher
    - cues_file
    - strict_cues
    argTypes:
    - GF_DASHSegmenter*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 481
    functionDepth: 0
    functionLinenumber: 481
    functionLinenumberEnd: 487
    functionName: gf_dasher_set_cues
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_set_cues(GF_DASHSegmenter *dasher, const char *cues_file,
      Bool strict_cues)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/dash_segmenter.c:494,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_segmenter.c:494,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_segmenter.c:495,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_segmenter.c:496,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_segmenter.c:501,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 2
    argNames:
    - dasher
    - input
    argTypes:
    - GF_DASHSegmenter*
    - GF_DashSegmenterInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 489
    functionDepth: 1
    functionLinenumber: 489
    functionLinenumberEnd: 503
    functionName: gf_dasher_add_input
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - strcmp
    - gf_list_add
    - stricmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_add_input(GF_DASHSegmenter *dasher, const GF_DashSegmenterInput
      *input)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_get_filters_count
      Src: /src/gpac/src/media_tools/dash_segmenter.c:516,1
    - Dst: gf_fs_get_filter_stats
      Src: /src/gpac/src/media_tools/dash_segmenter.c:518,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_segmenter.c:519,1
    - Dst: gf_fs_get_filter_stats
      Src: /src/gpac/src/media_tools/dash_segmenter.c:525,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_segmenter.c:533,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_segmenter.c:535,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 32
    argCount: 2
    argNames:
    - _udta
    - evt
    argTypes:
    - void*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 538
      start: 507
    functionDepth: 1
    functionLinenumber: 507
    functionLinenumberEnd: 538
    functionName: on_dasher_event
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 0
    functionsReached:
    - gf_fs_get_filter_stats
    - gf_fs_get_filters_count
    - strcmp
    - GF_LOG
    linkageType: ''
    returnType: Bool
    signature: Bool on_dasher_event(void *_udta, GF_Event *evt)
  - BBCount: 161
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_segmenter.c:551,1
    - Dst: gf_fs_new_defaults
      Src: /src/gpac/src/media_tools/dash_segmenter.c:555,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/media_tools/dash_segmenter.c:558,1
    - Dst: gf_log_get_tool_level
      Src: /src/gpac/src/media_tools/dash_segmenter.c:558,1
    - Dst: gf_sys_is_quiet
      Src: /src/gpac/src/media_tools/dash_segmenter.c:558,1
    - Dst: gf_fs_enable_reporting
      Src: /src/gpac/src/media_tools/dash_segmenter.c:559,1
    - Dst: gf_fs_set_ui_callback
      Src: /src/gpac/src/media_tools/dash_segmenter.c:560,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_segmenter.c:565,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_segmenter.c:569,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/src/media_tools/dash_segmenter.c:575,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_segmenter.c:577,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_segmenter.c:579,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_segmenter.c:580,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:590,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:592,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:594,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:597,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:599,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:600,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:601,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:602,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:604,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:607,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:609,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:610,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:611,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:612,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:618,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:621,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:624,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:627,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:630,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:633,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:636,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:641,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:642,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:645,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:646,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:649,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:650,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:653,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:654,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:662,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:665,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:668,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:671,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:672,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:675,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:678,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:681,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:684,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:688,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:689,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:692,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:693,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:696,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:697,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:699,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:705,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:707,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:708,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:712,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:713,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:716,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:717,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:720,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:721,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:726,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:727,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:730,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:731,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:733,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:734,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:739,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:740,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:741,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:742,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:752,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:754,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:756,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:760,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/dash_segmenter.c:760,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:761,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:763,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:764,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:766,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:767,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:770,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:771,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:773,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:774,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:775,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:778,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:781,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:784,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:787,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:790,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:793,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:798,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_segmenter.c:801,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_segmenter.c:802,1
    - Dst: gf_sys_find_global_arg
      Src: /src/gpac/src/media_tools/dash_segmenter.c:803,1
    - Dst: gf_sys_find_global_arg
      Src: /src/gpac/src/media_tools/dash_segmenter.c:804,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:810,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:811,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:814,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:817,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:818,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:820,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:822,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:823,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:824,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:827,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:829,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:832,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:835,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:839,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:840,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:843,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:844,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:847,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:848,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:851,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:852,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:855,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:856,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:859,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:860,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:863,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:864,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:867,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:868,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_segmenter.c:872,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_segmenter.c:875,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_segmenter.c:876,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/media_tools/dash_segmenter.c:879,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_segmenter.c:881,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_segmenter.c:888,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_segmenter.c:893,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_segmenter.c:896,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_segmenter.c:907,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_segmenter.c:913,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_segmenter.c:914,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_segmenter.c:927,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_segmenter.c:941,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/dash_segmenter.c:944,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_segmenter.c:946,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/dash_segmenter.c:946,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/dash_segmenter.c:950,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:956,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_segmenter.c:962,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:965,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:969,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:973,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_segmenter.c:975,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_segmenter.c:975,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_segmenter.c:975,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:977,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:978,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:981,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:983,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:984,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:989,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_segmenter.c:993,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:994,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:995,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:998,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:999,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1002,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1003,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1007,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1008,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1013,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1015,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1016,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1021,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1023,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1024,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1027,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1028,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1032,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1033,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1036,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1037,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1038,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1039,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1044,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1045,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1047,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1052,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1053,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1055,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1061,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1062,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1064,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1070,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1071,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1073,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1079,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1080,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1082,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1088,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1089,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1091,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1096,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1097,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1100,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1101,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1104,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1105,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1108,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1111,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1113,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1118,1
    - Dst: gf_fs_load_source
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1119,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1120,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1124,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1131,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1138,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1146,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1147,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1157,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1159,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1165,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1167,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1167,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1171,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1180,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1189,1
    CyclomaticComplexity: 212
    EdgeCount: 212
    ICount: 569
    argCount: 1
    argNames:
    - dasher
    argTypes:
    - GF_DASHSegmenter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1194
      start: 541
    functionDepth: 1
    functionLinenumber: 541
    functionLinenumberEnd: 1194
    functionName: gf_dasher_setup
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fs_set_ui_callback
    - gf_list_count
    - strchr
    - gf_4cc_to_str
    - gf_list_get
    - strrchr
    - gf_fs_enable_reporting
    - sprintf
    - gf_sys_is_quiet
    - gf_sys_find_global_arg
    - strncmp
    - gf_url_colon_suffix
    - stricmp
    - gf_dynstrcat
    - gf_filter_set_source
    - sscanf
    - gf_fs_load_filter
    - GF_LOG
    - gf_sys_is_test_mode
    - strstr
    - gf_log_get_tool_level
    - gf_error_to_string
    - gf_fs_load_source
    - strlen
    - gf_fs_load_destination
    - strcmp
    - gf_fs_new_defaults
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dasher_setup(GF_DASHSegmenter *dasher)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_exists
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1204,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1208,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1209,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1211,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1216,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1217,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1218,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1223,1
    - Dst: gf_net_get_ntp_ms
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1228,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 3
    argNames:
    - dash_state
    - next_gen_ntp_ms
    - next_time_ms
    argTypes:
    - char*
    - u64*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1235
      start: 1196
    functionDepth: 1
    functionLinenumber: 1196
    functionLinenumberEnd: 1235
    functionName: dash_state_check_timing
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_parse
    - sscanf
    - gf_xml_dom_get_root
    - gf_file_exists
    - gf_xml_dom_new
    - strcmp
    - gf_net_get_ntp_ms
    - gf_list_enum
    - gf_xml_dom_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dash_state_check_timing(const char *dash_state, u64 *next_gen_ntp_ms,
      u32 *next_time_ms)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_exists
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1244,1
    - Dst: dash_state_check_timing
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1246,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1249,1
    - Dst: gf_dasher_setup
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1255,1
    - Dst: gf_fs_get_last_connect_error
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1259,1
    - Dst: gf_fs_get_last_process_error
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1260,1
    - Dst: gf_filter_send_update
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1264,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1269,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1270,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1271,1
    - Dst: gf_fs_run
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1274,1
    - Dst: gf_fs_print_non_connected
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1277,1
    - Dst: gf_fs_print_stats
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1278,1
    - Dst: gf_fs_print_connections
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1279,1
    - Dst: gf_fs_get_last_connect_error
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1281,1
    - Dst: gf_fs_get_last_process_error
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1282,1
    - Dst: on_dasher_event
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1285,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1286,1
    - Dst: gf_fs_print_unused_args
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1289,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/dash_segmenter.c:1290,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 49
    argCount: 1
    argNames:
    - dasher
    argTypes:
    - GF_DASHSegmenter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1294
      start: 1237
    functionDepth: 2
    functionLinenumber: 1237
    functionLinenumberEnd: 1294
    functionName: gf_dasher_process
    functionSourceFile: /src/gpac/src/media_tools/dash_segmenter.c
    functionUses: 1
    functionsReached:
    - gf_fs_print_unused_args
    - gf_fs_print_non_connected
    - gf_file_exists
    - GF_LOG
    - gf_fs_get_last_process_error
    - gf_filter_send_update
    - GF_FEVT_INIT
    - gf_filter_send_event
    - gf_fs_run
    - gf_fs_print_stats
    - gf_fs_get_last_connect_error
    - gf_filter_get_ipid
    - gf_fs_print_connections
    - dash_state_check_timing
    - gf_fs_del
    - gf_dasher_setup
    - on_dasher_event
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dasher_process(GF_DASHSegmenter *dasher)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/m3u8.c:84,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/m3u8.c:85,1
    - Dst: playlist_element_del
      Src: /src/gpac/src/media_tools/m3u8.c:87,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/m3u8.c:88,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/m3u8.c:90,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - list
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 92
    functionName: cleanup_list_of_elements
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_count
    - playlist_element_del
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cleanup_list_of_elements(GF_List *list)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:102,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:105,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:108,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:111,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:114,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:117,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:120,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:123,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:126,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:129,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/m3u8.c:131,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:133,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:140,1
    - Dst: cleanup_list_of_elements
      Src: /src/gpac/src/media_tools/m3u8.c:141,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:145,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 1
    argNames:
    - e
    argTypes:
    - PlaylistElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 97
    functionDepth: 2
    functionLinenumber: 97
    functionLinenumberEnd: 147
    functionName: playlist_element_del
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 1
    functionsReached:
    - gf_free
    - memset
    - gf_assert
    - cleanup_list_of_elements
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err playlist_element_del(PlaylistElement * e)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/m3u8.c:157,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:168,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:169,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:170,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:171,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:173,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:180,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/m3u8.c:184,1
    - Dst: gf_htonl
      Src: /src/gpac/src/media_tools/m3u8.c:186,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/m3u8.c:187,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/m3u8.c:188,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:195,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:196,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/m3u8.c:205,1
    - Dst: playlist_element_del
      Src: /src/gpac/src/media_tools/m3u8.c:207,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:213,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:214,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 52
    argCount: 3
    argNames:
    - element_type
    - url
    - attribs
    argTypes:
    - PlaylistElementType
    - char*
    - s_accumulated_attributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 154
    functionDepth: 3
    functionLinenumber: 154
    functionLinenumberEnd: 216
    functionName: playlist_element_new
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_assert
    - gf_list_new
    - GF_SAFEALLOC
    - memcpy
    - playlist_element_del
    - memset
    - gf_htonl
    linkageType: ''
    returnType: PlaylistElement
    signature: PlaylistElement * playlist_element_new(PlaylistElementType element_type,
      const char *url, s_accumulated_attributes *attribs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/m3u8.c:225,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/m3u8.c:230,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:232,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - stream_id
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 236
    functionName: stream_new
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 5
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: Stream
    signature: Stream * stream_new(int stream_id)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/m3u8.c:246,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/m3u8.c:247,1
    - Dst: cleanup_list_of_elements
      Src: /src/gpac/src/media_tools/m3u8.c:248,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/m3u8.c:249,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/m3u8.c:251,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:254,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - stream
    argTypes:
    - Stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 241
    functionDepth: 2
    functionLinenumber: 241
    functionLinenumberEnd: 256
    functionName: stream_del
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 3
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - cleanup_list_of_elements
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stream_del(Stream *stream)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sha1_csum
      Src: /src/gpac/src/media_tools/m3u8.c:263,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:263,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:264,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 260
    functionDepth: 1
    functionLinenumber: 260
    functionLinenumberEnd: 268
    functionName: string2num
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - strlen
    - gf_sha1_csum
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE string2num(const char *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - type
    - ','
    - group_id
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 276
    functionName: GROUP_ID_TO_PROGRAM_ID
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GROUP_ID_TO_PROGRAM_ID(type, group_id)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:280,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:281,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:284,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - attribute
    - line
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 276
    functionDepth: 0
    functionLinenumber: 276
    functionLinenumberEnd: 285
    functionName: safe_start_equals
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 0
    functionsReached:
    - strncmp
    - strlen
    linkageType: ''
    returnType: Bool
    signature: Bool safe_start_equals(const char *attribute, const char *line)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/m3u8.c:290,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - attributes
    argTypes:
    - s_accumulated_attributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 296
    functionName: reset_attributes
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: void reset_attributes(s_accumulated_attributes *attributes)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:302,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:303,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:306,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/m3u8.c:308,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:325,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:325,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/m3u8.c:327,1
    - Dst: strncpy
      Src: /src/gpac/src/media_tools/m3u8.c:328,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:349,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 48
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 298
    functionDepth: 1
    functionLinenumber: 298
    functionLinenumberEnd: 353
    functionName: extract_attributes
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 0
    functionsReached:
    - gf_free
    - safe_start_equals
    - gf_calloc
    - strncmp
    - strncpy
    - strlen
    linkageType: ''
    returnType: char
    signature: char ** extract_attributes(const char *name, const char *line, const
      int num_attributes)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 355
    functionDepth: 0
    functionLinenumber: 355
    functionLinenumberEnd: 358
    functionName: M3U8_COMPATIBILITY_VERSION
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: M3U8_COMPATIBILITY_VERSION(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:363,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:366,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - attributes
    argTypes:
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 359
    functionDepth: 0
    functionLinenumber: 359
    functionLinenumberEnd: 367
    functionName: free_attrs
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void free_attrs(char** attributes)
  - BBCount: 117
    BranchProfiles: []
    Callsites:
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:377,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:379,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:381,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:387,1
    - Dst: strtol
      Src: /src/gpac/src/media_tools/m3u8.c:391,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:396,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:399,1
    - Dst: strtol
      Src: /src/gpac/src/media_tools/m3u8.c:403,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:409,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:412,1
    - Dst: strtol
      Src: /src/gpac/src/media_tools/m3u8.c:416,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:421,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:425,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:427,1
    - Dst: strtod
      Src: /src/gpac/src/media_tools/m3u8.c:431,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/m3u8.c:435,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:436,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:440,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:441,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:445,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:449,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:450,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:451,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:454,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:457,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:459,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:461,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:464,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:466,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:467,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:469,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:470,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:472,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:478,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:480,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:481,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:482,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/m3u8.c:490,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:497,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:500,1
    - Dst: gf_net_parse_date
      Src: /src/gpac/src/media_tools/m3u8.c:503,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:504,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:507,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:510,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:511,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:514,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/m3u8.c:516,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:517,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:520,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:527,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:529,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:531,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:532,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:535,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:538,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/m3u8.c:541,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:546,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:552,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:555,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:560,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:563,1
    - Dst: strtol
      Src: /src/gpac/src/media_tools/m3u8.c:565,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:568,1
    - Dst: strtol
      Src: /src/gpac/src/media_tools/m3u8.c:570,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:573,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:574,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:576,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:577,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:578,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:580,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/m3u8.c:583,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/m3u8.c:583,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:587,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:588,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:589,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:591,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:592,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:593,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:594,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:595,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:597,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:598,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:599,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:604,1
    - Dst: free_attrs
      Src: /src/gpac/src/media_tools/m3u8.c:605,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:610,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:613,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:616,1
    - Dst: strtol
      Src: /src/gpac/src/media_tools/m3u8.c:619,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:624,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:627,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/m3u8.c:632,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:637,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:641,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:644,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:647,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:656,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:657,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:659,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:661,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:663,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:666,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:668,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:670,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:671,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:672,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:676,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:678,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:680,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:681,1
    - Dst: GROUP_ID_TO_PROGRAM_ID
      Src: /src/gpac/src/media_tools/m3u8.c:682,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:684,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:685,1
    - Dst: GROUP_ID_TO_PROGRAM_ID
      Src: /src/gpac/src/media_tools/m3u8.c:686,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:688,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:689,1
    - Dst: GROUP_ID_TO_PROGRAM_ID
      Src: /src/gpac/src/media_tools/m3u8.c:690,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:692,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:693,1
    - Dst: GROUP_ID_TO_PROGRAM_ID
      Src: /src/gpac/src/media_tools/m3u8.c:694,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:696,1
    - Dst: free_attrs
      Src: /src/gpac/src/media_tools/m3u8.c:697,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:700,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:704,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:705,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:706,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:710,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:712,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:713,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:714,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:715,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:717,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:718,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:720,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:723,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:725,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:726,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:728,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:731,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:733,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/m3u8.c:734,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:735,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:737,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/m3u8.c:738,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:740,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:746,1
    - Dst: free_attrs
      Src: /src/gpac/src/media_tools/m3u8.c:747,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:751,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:752,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:757,1
    - Dst: free_attrs
      Src: /src/gpac/src/media_tools/m3u8.c:758,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:762,1
    - Dst: free_attrs
      Src: /src/gpac/src/media_tools/m3u8.c:763,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:769,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:769,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:771,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:774,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:774,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:779,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:779,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:782,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:782,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:787,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:787,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:791,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:791,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:795,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:795,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:799,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:799,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:802,1
    CyclomaticComplexity: 132
    EdgeCount: 132
    ICount: 435
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 804
      start: 371
    functionDepth: 2
    functionLinenumber: 371
    functionLinenumberEnd: 804
    functionName: parse_attributes
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 0
    functionsReached:
    - gf_free
    - stricmp
    - gf_strdup
    - gf_assert
    - GROUP_ID_TO_PROGRAM_ID
    - sscanf
    - GF_LOG
    - strstr
    - free_attrs
    - safe_start_equals
    - M3U8_COMPATIBILITY_VERSION
    - strncmp
    - strcmp
    - strtod
    - extract_attributes
    - strtol
    - gf_net_parse_date
    - strlen
    linkageType: ''
    returnType: char
    signature: char ** parse_attributes(const char *line, s_accumulated_attributes
      *attributes)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/m3u8.c:813,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/m3u8.c:817,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:819,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 825
      start: 810
    functionDepth: 1
    functionLinenumber: 810
    functionLinenumberEnd: 825
    functionName: master_playlist_new
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: MasterPlaylist
    signature: MasterPlaylist * master_playlist_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:833,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/m3u8.c:834,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/m3u8.c:835,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/m3u8.c:836,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/m3u8.c:837,1
    - Dst: playlist_element_del
      Src: /src/gpac/src/media_tools/m3u8.c:839,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/m3u8.c:840,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/m3u8.c:842,1
    - Dst: stream_del
      Src: /src/gpac/src/media_tools/m3u8.c:844,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/m3u8.c:845,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/m3u8.c:847,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:849,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 1
    argNames:
    - playlist
    argTypes:
    - MasterPlaylist**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 853
      start: 830
    functionDepth: 3
    functionLinenumber: 830
    functionLinenumberEnd: 853
    functionName: gf_m3u8_master_playlist_del
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_assert
    - gf_list_get
    - stream_del
    - gf_list_count
    - playlist_element_del
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_m3u8_master_playlist_del(MasterPlaylist **playlist)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:857,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:858,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:859,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/m3u8.c:860,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/m3u8.c:862,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:863,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - pl
    - stream_id
    argTypes:
    - MasterPlaylist*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 870
      start: 855
    functionDepth: 1
    functionLinenumber: 855
    functionLinenumberEnd: 870
    functionName: master_playlist_find_matching_stream
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_assert
    - gf_list_get
    linkageType: ''
    returnType: Stream
    signature: Stream * master_playlist_find_matching_stream(const MasterPlaylist
      *pl, const u32 stream_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/media_tools/m3u8.c:881,1
    - Dst: string2num
      Src: /src/gpac/src/media_tools/m3u8.c:882,1
    - Dst: gf_m3u8_parse_sub_playlist
      Src: /src/gpac/src/media_tools/m3u8.c:885,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - file
    - playlist
    - baseURL
    argTypes:
    - char*
    - MasterPlaylist**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 886
      start: 877
    functionDepth: 2
    functionLinenumber: 877
    functionLinenumberEnd: 886
    functionName: gf_m3u8_parse_master_playlist
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 1
    functionsReached:
    - gf_m3u8_parse_sub_playlist
    - gf_sys_is_cov_mode
    - string2num
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m3u8_parse_master_playlist(const char *file, MasterPlaylist
      **playlist, const char *baseURL)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:896,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:900,1
    - Dst: master_playlist_find_matching_stream
      Src: /src/gpac/src/media_tools/m3u8.c:907,1
    - Dst: stream_new
      Src: /src/gpac/src/media_tools/m3u8.c:910,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/m3u8.c:913,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/m3u8.c:916,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:923,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:924,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/m3u8.c:925,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/m3u8.c:929,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:930,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/m3u8.c:934,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/m3u8.c:949,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/m3u8.c:954,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/m3u8.c:959,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/m3u8.c:962,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/m3u8.c:963,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/m3u8.c:964,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/m3u8.c:965,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/m3u8.c:966,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/m3u8.c:971,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/m3u8.c:972,1
    - Dst: playlist_element_new
      Src: /src/gpac/src/media_tools/m3u8.c:977,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/m3u8.c:980,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:984,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:985,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:987,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:988,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:990,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:991,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:993,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:996,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:998,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/m3u8.c:999,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:1005,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:1010,1
    - Dst: playlist_element_new
      Src: /src/gpac/src/media_tools/m3u8.c:1011,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/m3u8.c:1014,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:1017,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:1018,1
    - Dst: playlist_element_new
      Src: /src/gpac/src/media_tools/m3u8.c:1021,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1023,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/m3u8.c:1027,1
    - Dst: playlist_element_del
      Src: /src/gpac/src/media_tools/m3u8.c:1028,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/m3u8.c:1031,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/m3u8.c:1032,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:1034,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:1035,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:1036,1
    - Dst: playlist_element_new
      Src: /src/gpac/src/media_tools/m3u8.c:1038,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/m3u8.c:1042,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/m3u8.c:1045,1
    - Dst: playlist_element_del
      Src: /src/gpac/src/media_tools/m3u8.c:1046,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/m3u8.c:1049,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1078,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1088,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1092,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1096,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1100,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1104,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1108,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1112,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 189
    argCount: 6
    argNames:
    - currentLine
    - baseURL
    - attribs
    - sub_playlist
    - playlist
    - in_stream
    argTypes:
    - char*
    - char*
    - s_accumulated_attributes*
    - PlaylistElement*
    - MasterPlaylist**
    - Stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1116
      start: 888
    functionDepth: 4
    functionLinenumber: 888
    functionLinenumberEnd: 1116
    functionName: declare_sub_playlist
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - strchr
    - gf_realloc
    - gf_assert
    - gf_list_get
    - gf_strdup
    - gf_list_new
    - gf_list_add
    - gf_dynstrcat
    - GF_LOG
    - strstr
    - master_playlist_find_matching_stream
    - gf_malloc
    - stream_new
    - playlist_element_del
    - strcmp
    - gf_m3u8_master_playlist_del
    - playlist_element_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err declare_sub_playlist(char *currentLine, const char *baseURL,
      s_accumulated_attributes *attribs, PlaylistElement *sub_playlist, MasterPlaylist
      **playlist, Stream *in_stream)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: RST_ATTR
      Src: /src/gpac/src/media_tools/m3u8.c:1131,1
    - Dst: RST_ATTR
      Src: /src/gpac/src/media_tools/m3u8.c:1132,1
    - Dst: RST_ATTR
      Src: /src/gpac/src/media_tools/m3u8.c:1133,1
    - Dst: RST_ATTR
      Src: /src/gpac/src/media_tools/m3u8.c:1134,1
    - Dst: RST_ATTR
      Src: /src/gpac/src/media_tools/m3u8.c:1135,1
    - Dst: RST_ATTR
      Src: /src/gpac/src/media_tools/m3u8.c:1136,1
    - Dst: RST_ATTR
      Src: /src/gpac/src/media_tools/m3u8.c:1137,1
    - Dst: RST_ATTR
      Src: /src/gpac/src/media_tools/m3u8.c:1139,1
    - Dst: RST_ATTR
      Src: /src/gpac/src/media_tools/m3u8.c:1140,1
    - Dst: RST_ATTR
      Src: /src/gpac/src/media_tools/m3u8.c:1142,1
    - Dst: RST_ATTR
      Src: /src/gpac/src/media_tools/m3u8.c:1143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - attribs
    - is_cleanup
    argTypes:
    - s_accumulated_attributes*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1144
      start: 1126
    functionDepth: 1
    functionLinenumber: 1126
    functionLinenumberEnd: 1144
    functionName: reset_attribs
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 0
    functionsReached:
    - RST_ATTR
    linkageType: ''
    returnType: void
    signature: void reset_attribs(s_accumulated_attributes *attribs, Bool is_cleanup)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1130
      start: 1129
    functionDepth: 0
    functionLinenumber: 1129
    functionLinenumberEnd: 1130
    functionName: RST_ATTR
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RST_ATTR(_name)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:1158,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/media_tools/m3u8.c:1159,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:1161,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/m3u8.c:1166,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:1168,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/m3u8.c:1173,1
    - Dst: master_playlist_new
      Src: /src/gpac/src/media_tools/m3u8.c:1182,1
    - Dst: reset_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:1189,1
    - Dst: gf_fgets
      Src: /src/gpac/src/media_tools/m3u8.c:1195,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/m3u8.c:1214,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/m3u8.c:1217,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:1220,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:1225,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:1226,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:1234,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/m3u8.c:1237,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/m3u8.c:1238,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/m3u8.c:1239,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/m3u8.c:1241,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/m3u8.c:1247,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/m3u8.c:1249,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/m3u8.c:1255,1
    - Dst: atof
      Src: /src/gpac/src/media_tools/m3u8.c:1257,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/m3u8.c:1263,1
    - Dst: declare_sub_playlist
      Src: /src/gpac/src/media_tools/m3u8.c:1273,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:1289,1
    - Dst: parse_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:1290,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:1292,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:1294,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:1297,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1298,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:1302,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1303,1
    - Dst: declare_sub_playlist
      Src: /src/gpac/src/media_tools/m3u8.c:1320,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1321,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/m3u8.c:1339,1
    - Dst: declare_sub_playlist
      Src: /src/gpac/src/media_tools/m3u8.c:1340,1
    - Dst: reset_attribs
      Src: /src/gpac/src/media_tools/m3u8.c:1350,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/m3u8.c:1358,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/m3u8.c:1360,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/m3u8.c:1362,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/m3u8.c:1363,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:1373,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 159
    argCount: 6
    argNames:
    - m3u8_file
    - playlist
    - baseURL
    - in_stream
    - sub_playlist
    - is_master
    argTypes:
    - char*
    - MasterPlaylist**
    - char*
    - Stream*
    - PlaylistElement*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1376
      start: 1147
    functionDepth: 5
    functionLinenumber: 1147
    functionLinenumberEnd: 1376
    functionName: gf_m3u8_parse_sub_playlist
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 3
    functionsReached:
    - gf_free
    - master_playlist_new
    - gf_list_count
    - memset
    - gf_fopen
    - parse_attributes
    - declare_sub_playlist
    - strchr
    - gf_file_basename
    - gf_list_get
    - gf_blob_get
    - atof
    - strncmp
    - sscanf
    - GF_LOG
    - gf_fgets
    - strstr
    - strlen
    - reset_attributes
    - reset_attribs
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_m3u8_parse_sub_playlist(const char *m3u8_file, MasterPlaylist
      **playlist, const char *baseURL, Stream *in_stream, PlaylistElement *sub_playlist,
      Bool is_master)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/saf.c:80,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/media_tools/saf.c:82,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/saf.c:83,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 85
    functionName: gf_saf_mux_new
    functionSourceFile: /src/gpac/src/media_tools/saf.c
    functionUses: 0
    functionsReached:
    - gf_mx_new
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_SAFMuxer
    signature: GF_SAFMuxer *gf_saf_mux_new()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/saf.c:89,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/saf.c:90,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/saf.c:91,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/saf.c:93,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/saf.c:94,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/media_tools/saf.c:95,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/saf.c:96,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/saf.c:97,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/saf.c:99,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/saf.c:100,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - str
    argTypes:
    - GF_SAFStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 101
    functionName: saf_stream_del
    functionSourceFile: /src/gpac/src/media_tools/saf.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - gf_list_last
    - gf_list_rem_last
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void saf_stream_del(GF_SAFStream *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/saf.c:105,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/saf.c:106,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/media_tools/saf.c:107,1
    - Dst: saf_stream_del
      Src: /src/gpac/src/media_tools/saf.c:108,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/saf.c:110,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/media_tools/saf.c:111,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/saf.c:112,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - mux
    argTypes:
    - GF_SAFMuxer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 103
    functionDepth: 2
    functionLinenumber: 103
    functionLinenumberEnd: 113
    functionName: gf_saf_mux_del
    functionSourceFile: /src/gpac/src/media_tools/saf.c
    functionUses: 0
    functionsReached:
    - gf_free
    - saf_stream_del
    - gf_list_count
    - gf_list_last
    - gf_list_rem_last
    - gf_list_del
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void gf_saf_mux_del(GF_SAFMuxer *mux)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/saf.c:119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 123
    functionName: GF_SAFStream *saf_get_stream(GF_SAFMuxer *mux, u32 stream_id)
    functionSourceFile: /src/gpac/src/media_tools/saf.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE GF_SAFStream *saf_get_stream(GF_SAFMuxer *mux, u32 stream_id)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: saf_get_stream
      Src: /src/gpac/src/media_tools/saf.c:127,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/saf.c:132,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/saf.c:134,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/saf.c:142,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/saf.c:147,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/saf.c:148,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/saf.c:150,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/saf.c:151,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/saf.c:153,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/saf.c:154,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 10
    argNames:
    - mux
    - stream_id
    - ts_res
    - buffersize_db
    - stream_type
    - object_type
    - mime_type
    - dsi
    - dsi_len
    - remote_url
    argTypes:
    - GF_SAFMuxer*
    - u32
    - u32
    - u32
    - u8
    - u8
    - char*
    - char*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 156
    functionName: gf_saf_mux_stream_add
    functionSourceFile: /src/gpac/src/media_tools/saf.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_strdup
    - gf_list_new
    - GF_SAFEALLOC
    - memcpy
    - gf_mx_v
    - gf_list_add
    - saf_get_stream
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_saf_mux_stream_add(GF_SAFMuxer *mux, u32 stream_id, u32 ts_res,
      u32 buffersize_db, u8 stream_type, u8 object_type, char *mime_type, char *dsi,
      u32 dsi_len, char *remote_url)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: saf_get_stream
      Src: /src/gpac/src/media_tools/saf.c:167,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/saf.c:171,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/saf.c:174,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - mux
    - stream_id
    argTypes:
    - GF_SAFMuxer*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 176
    functionName: gf_saf_mux_stream_rem
    functionSourceFile: /src/gpac/src/media_tools/saf.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - saf_get_stream
    - gf_mx_v
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_saf_mux_stream_rem(GF_SAFMuxer *mux, u32 stream_id)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: saf_get_stream
      Src: /src/gpac/src/media_tools/saf.c:183,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/saf.c:187,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/saf.c:189,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/saf.c:197,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/saf.c:198,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 6
    argNames:
    - mux
    - stream_id
    - CTS
    - data
    - data_len
    - is_rap
    argTypes:
    - GF_SAFMuxer*
    - u32
    - u32
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 200
    functionName: gf_saf_mux_add_au
    functionSourceFile: /src/gpac/src/media_tools/saf.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - GF_SAFEALLOC
    - gf_mx_v
    - gf_list_add
    - saf_get_stream
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_saf_mux_add_au(GF_SAFMuxer *mux, u32 stream_id, u32 CTS,
      char *data, u32 data_len, Bool is_rap)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/saf.c:214,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/saf.c:216,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/saf.c:220,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/saf.c:222,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/saf.c:226,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/saf.c:229,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/saf.c:232,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:233,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:234,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/saf.c:236,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/saf.c:237,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:238,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/saf.c:239,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/saf.c:241,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/saf.c:242,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/saf.c:243,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/saf.c:246,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/saf.c:247,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/saf.c:248,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/saf.c:251,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/saf.c:254,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/saf.c:255,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:258,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:259,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:260,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:261,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:262,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:263,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/saf.c:264,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/saf.c:265,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/saf.c:277,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/saf.c:278,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/saf.c:287,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/saf.c:288,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:291,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:292,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:293,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:294,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:295,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/saf.c:296,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:297,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:298,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/saf.c:299,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/saf.c:303,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/saf.c:304,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/saf.c:309,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/saf.c:312,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:315,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:316,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:317,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:318,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:319,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:320,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:321,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:322,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/saf.c:325,1
    - Dst: saf_stream_del
      Src: /src/gpac/src/media_tools/saf.c:328,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:332,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:333,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:334,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:335,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:336,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:337,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:338,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/saf.c:339,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/saf.c:342,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/saf.c:343,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/saf.c:344,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 107
    argCount: 5
    argNames:
    - mux
    - time_ms
    - force_end_of_session
    - out_data
    - out_size
    argTypes:
    - GF_SAFMuxer*
    - u32
    - Bool
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 203
    functionDepth: 2
    functionLinenumber: 203
    functionLinenumberEnd: 346
    functionName: gf_saf_mux_for_time
    functionSourceFile: /src/gpac/src/media_tools/saf.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_list_get
    - saf_stream_del
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_write_u16
    - strlen
    - gf_bs_del
    - gf_list_count
    - gf_bs_write_data
    - gf_mx_v
    - gf_bs_write_u8
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_saf_mux_for_time(GF_SAFMuxer *mux, u32 time_ms, Bool force_end_of_session,
      u8 **out_data, u32 *out_size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/id3.c:29,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/id3.c:30,1
    - Dst: memcmp
      Src: /src/gpac/src/media_tools/id3.c:33,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/id3.c:35,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/id3.c:39,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/id3.c:42,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/id3.c:45,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/id3.c:46,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 5
    argNames:
    - tag
    - timescale
    - pts
    - data
    - data_length
    argTypes:
    - GF_ID3_TAG*
    - u32
    - u64
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 16
    functionDepth: 0
    functionLinenumber: 16
    functionLinenumberEnd: 49
    functionName: gf_id3_tag_new
    functionSourceFile: /src/gpac/src/media_tools/id3.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - memcmp
    - memcpy
    - strlen
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_id3_tag_new(GF_ID3_TAG *tag, u32 timescale, u64 pts, u8
      *data, u32 data_length)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/id3.c:59,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/id3.c:64,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/id3.c:69,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - tag
    argTypes:
    - GF_ID3_TAG*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 72
    functionName: gf_id3_tag_free
    functionSourceFile: /src/gpac/src/media_tools/id3.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_id3_tag_free(GF_ID3_TAG *tag)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/id3.c:81,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/media_tools/id3.c:82,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/id3.c:84,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/id3.c:85,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/id3.c:90,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/id3.c:91,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/id3.c:96,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/id3.c:97,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - tag
    - bs
    argTypes:
    - GF_ID3_TAG*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 103
    functionName: gf_id3_to_bitstream
    functionSourceFile: /src/gpac/src/media_tools/id3.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_bs_write_data
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_id3_to_bitstream(GF_ID3_TAG *tag, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/id3.c:111,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/id3.c:112,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/id3.c:115,1
    - Dst: gf_id3_to_bitstream
      Src: /src/gpac/src/media_tools/id3.c:116,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - tag_list
    - bs
    argTypes:
    - GF_List*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 105
    functionDepth: 2
    functionLinenumber: 105
    functionLinenumberEnd: 123
    functionName: gf_id3_list_to_bitstream
    functionSourceFile: /src/gpac/src/media_tools/id3.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bs_write_u32
    - gf_list_get
    - gf_id3_to_bitstream
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_id3_list_to_bitstream(GF_List *tag_list, GF_BitStream
      *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/id3.c:132,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/media_tools/id3.c:133,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/id3.c:135,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/id3.c:136,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/id3.c:137,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/id3.c:142,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/id3.c:143,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/id3.c:144,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/id3.c:149,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/id3.c:150,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/id3.c:151,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - tag
    - bs
    argTypes:
    - GF_ID3_TAG*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 157
    functionName: gf_id3_from_bitstream
    functionSourceFile: /src/gpac/src/media_tools/id3.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u64
    - gf_bs_read_u32
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_id3_from_bitstream(GF_ID3_TAG *tag, GF_BitStream *bs)
  - BBCount: 31
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 63
    argCount: 1
    argNames:
    - streamType
    argTypes:
    - GF_M2TSStreamType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 122
    functionName: gf_m2ts_get_stream_name
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_m2ts_get_stream_name(GF_M2TSStreamType streamType)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:136,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 6
    argNames:
    - ts
    - pes
    - same_pts
    - data
    - data_len
    - pes_hdr
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_PES*
    - Bool
    - unsigned char*
    - u32
    - GF_M2TS_PESHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 139
    functionName: gf_m2ts_reframe_default
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - GF_M2TS_Demuxer*::on_event
    linkageType: ''
    returnType: u32
    signature: u32 gf_m2ts_reframe_default(GF_M2TS_Demuxer *ts, GF_M2TS_PES *pes,
      Bool same_pts, unsigned char *data, u32 data_len, GF_M2TS_PESHeader *pes_hdr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:144,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:149,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 6
    argNames:
    - ts
    - pes
    - same_pts
    - data
    - data_len
    - pes_hdr
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_PES*
    - Bool
    - unsigned char*
    - u32
    - GF_M2TS_PESHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 158
    functionName: gf_m2ts_reframe_reset
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: u32
    signature: u32 gf_m2ts_reframe_reset(GF_M2TS_Demuxer *ts, GF_M2TS_PES *pes, Bool
      same_pts, unsigned char *data, u32 data_len, GF_M2TS_PESHeader *pes_hdr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 6
    argNames:
    - ts
    - pes
    - same_pts
    - data
    - data_len
    - pes_hdr
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_PES*
    - Bool
    - unsigned char*
    - u32
    - GF_M2TS_PESHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 172
    functionName: gf_m2ts_reframe_add_prop
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - GF_M2TS_Demuxer*::on_event
    linkageType: ''
    returnType: u32
    signature: u32 gf_m2ts_reframe_add_prop(GF_M2TS_Demuxer *ts, GF_M2TS_PES *pes,
      Bool same_pts, unsigned char *data, u32 data_len, GF_M2TS_PESHeader *pes_hdr)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:191,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 18
    argCount: 4
    argNames:
    - ts
    - data
    - size
    - simple_check
    argTypes:
    - GF_M2TS_Demuxer*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 174
    functionDepth: 1
    functionLinenumber: 174
    functionLinenumberEnd: 194
    functionName: gf_m2ts_sync
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: u32
    signature: u32 gf_m2ts_sync(GF_M2TS_Demuxer *ts, char *data, u32 size, Bool simple_check)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_crc_32
      Src: /src/gpac/src/media_tools/mpegts.c:198,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/mpegts.c:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - data
    - len
    argTypes:
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 196
    functionDepth: 1
    functionLinenumber: 196
    functionLinenumberEnd: 201
    functionName: gf_m2ts_crc32_check
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 1
    functionsReached:
    - gf_crc_32
    - GF_4CC
    linkageType: ''
    returnType: Bool
    signature: Bool gf_m2ts_crc32_check(u8 *data, u32 len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpegts.c:207,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:209,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - process_section_callback
    - process_individual
    argTypes:
    - gf_m2ts_section_callback
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 204
    functionDepth: 1
    functionLinenumber: 204
    functionLinenumberEnd: 216
    functionName: gf_m2ts_section_filter_new
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_M2TS_SectionFilter
    signature: GF_M2TS_SectionFilter *gf_m2ts_section_filter_new(gf_m2ts_section_callback
      process_section_callback, Bool process_individual)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:223,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:225,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/mpegts.c:226,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:227,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:228,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - sections
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 231
    functionName: gf_m2ts_reset_sections
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_reset_sections(GF_List *sections)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:236,1
    - Dst: gf_m2ts_reset_sections
      Src: /src/gpac/src/media_tools/mpegts.c:242,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpegts.c:243,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:244,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - sf
    argTypes:
    - GF_M2TS_SectionFilter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 233
    functionDepth: 2
    functionLinenumber: 233
    functionLinenumberEnd: 250
    functionName: gf_m2ts_section_filter_reset
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_m2ts_reset_sections
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_section_filter_reset(GF_M2TS_SectionFilter *sf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_section_filter_reset
      Src: /src/gpac/src/media_tools/mpegts.c:253,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - sf
    argTypes:
    - GF_M2TS_SectionFilter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 251
    functionDepth: 3
    functionLinenumber: 251
    functionLinenumberEnd: 255
    functionName: gf_m2ts_section_filter_del
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_m2ts_section_filter_reset
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_section_filter_del(GF_M2TS_SectionFilter *sf)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:261,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:262,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:263,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:264,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - metad
    argTypes:
    - GF_M2TS_MetadataDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 266
    functionName: gf_m2ts_metadata_descriptor_del
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_metadata_descriptor_del(GF_M2TS_MetadataDescriptor *metad)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/mpegts.c:275,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:278,1
    - Dst: gf_m2ts_section_filter_del
      Src: /src/gpac/src/media_tools/mpegts.c:282,1
    - Dst: gf_dvb_mpe_section_del
      Src: /src/gpac/src/media_tools/mpegts.c:286,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:295,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:296,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:297,1
    - Dst: gf_m2ts_metadata_descriptor_del
      Src: /src/gpac/src/media_tools/mpegts.c:299,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:300,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:303,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:309,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 36
    argCount: 2
    argNames:
    - es
    - ts
    argTypes:
    - GF_M2TS_ES*
    - GF_M2TS_Demuxer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 268
    functionDepth: 4
    functionLinenumber: 268
    functionLinenumberEnd: 310
    functionName: gf_m2ts_es_del
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_m2ts_metadata_descriptor_del
    - gf_dvb_mpe_section_del
    - gf_m2ts_section_filter_del
    - GF_M2TS_Demuxer*::on_event
    - gf_list_del_item
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_es_del(GF_M2TS_ES *es, GF_M2TS_Demuxer *ts)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:314,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/mpegts.c:315,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/media_tools/mpegts.c:316,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:317,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:318,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:319,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ts
    argTypes:
    - GF_M2TS_Demuxer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 312
    functionDepth: 1
    functionLinenumber: 312
    functionLinenumberEnd: 321
    functionName: gf_m2ts_reset_sdt
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_last
    - gf_list_rem_last
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_reset_sdt(GF_M2TS_Demuxer *ts)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:327,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:328,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 323
    functionDepth: 1
    functionLinenumber: 323
    functionLinenumberEnd: 332
    functionName: GF_M2TS_SDT *gf_m2ts_get_sdt_info(GF_M2TS_Demuxer *ts, u32 program_id)
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_M2TS_SDT *gf_m2ts_get_sdt_info(GF_M2TS_Demuxer *ts, u32
      program_id)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:339,1
    - Dst: on_ait_section
      Src: /src/gpac/src/media_tools/mpegts.c:353,1
    - Dst: on_dsmcc_section
      Src: /src/gpac/src/media_tools/mpegts.c:363,1
    - Dst: GF_M2TS_Demuxer*::on_mpe_event
      Src: /src/gpac/src/media_tools/mpegts.c:373,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:381,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:388,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:404,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:424,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:432,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpegts.c:450,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:452,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:455,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpegts.c:459,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:466,1
    - Dst: gf_m2ts_crc32_check
      Src: /src/gpac/src/media_tools/mpegts.c:470,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:474,1
    - Dst: gf_m2ts_reset_sections
      Src: /src/gpac/src/media_tools/mpegts.c:475,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:490,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:497,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpegts.c:508,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:510,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpegts.c:514,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:515,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpegts.c:516,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:545,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:546,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:552,1
    - Dst: GF_M2TS_SectionFilter*::process_section
      Src: /src/gpac/src/media_tools/mpegts.c:571,1
    - Dst: gf_m2ts_reset_sections
      Src: /src/gpac/src/media_tools/mpegts.c:573,1
    - Dst: GF_M2TS_SectionFilter*::process_section
      Src: /src/gpac/src/media_tools/mpegts.c:577,1
    - Dst: gf_m2ts_reset_sections
      Src: /src/gpac/src/media_tools/mpegts.c:579,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:589,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 192
    argCount: 3
    argNames:
    - ts
    - sec
    - ses
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_SectionFilter*
    - GF_M2TS_SECTION_ES*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 334
    functionDepth: 2
    functionLinenumber: 334
    functionLinenumberEnd: 592
    functionName: gf_m2ts_section_complete
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_m2ts_crc32_check
    - gf_list_new
    - gf_list_get
    - on_dsmcc_section
    - GF_SAFEALLOC
    - GF_LOG
    - memcpy
    - on_ait_section
    - gf_list_count
    - gf_m2ts_reset_sections
    - GF_M2TS_Demuxer*::on_event
    - gf_list_add
    - GF_M2TS_SectionFilter*::process_section
    - GF_M2TS_Demuxer*::on_mpe_event
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_section_complete(GF_M2TS_Demuxer *ts, GF_M2TS_SectionFilter
      *sec, GF_M2TS_SECTION_ES *ses)
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - table_id
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 615
      start: 594
    functionDepth: 0
    functionLinenumber: 594
    functionLinenumberEnd: 615
    functionName: gf_m2ts_is_long_section
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_m2ts_is_long_section(u8 table_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_is_long_section
      Src: /src/gpac/src/media_tools/mpegts.c:620,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - byte0
    - byte1
    - byte2
    argTypes:
    - char
    - char
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 617
    functionDepth: 1
    functionLinenumber: 617
    functionLinenumberEnd: 626
    functionName: gf_m2ts_get_section_length
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_is_long_section
    linkageType: ''
    returnType: u32
    signature: u32 gf_m2ts_get_section_length(char byte0, char byte1, char byte2)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:643,1
    - Dst: gf_m2ts_get_section_length
      Src: /src/gpac/src/media_tools/mpegts.c:654,1
    - Dst: gf_m2ts_get_section_length
      Src: /src/gpac/src/media_tools/mpegts.c:656,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/mpegts.c:657,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:662,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:665,1
    - Dst: gf_m2ts_section_complete
      Src: /src/gpac/src/media_tools/mpegts.c:666,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:674,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpegts.c:676,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:677,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:680,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:691,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/mpegts.c:693,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:694,1
    - Dst: gf_m2ts_get_section_length
      Src: /src/gpac/src/media_tools/mpegts.c:700,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/mpegts.c:701,1
    - Dst: gf_m2ts_section_complete
      Src: /src/gpac/src/media_tools/mpegts.c:711,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 77
    argCount: 6
    argNames:
    - ts
    - sec
    - ses
    - hdr
    - data
    - data_size
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_SectionFilter*
    - GF_M2TS_SECTION_ES*
    - GF_M2TS_Header*
    - unsigned char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 628
    functionDepth: 3
    functionLinenumber: 628
    functionLinenumberEnd: 722
    functionName: gf_m2ts_gather_section
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_m2ts_get_section_length
    - GF_LOG
    - memcpy
    - gf_m2ts_section_complete
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_gather_section(GF_M2TS_Demuxer *ts, GF_M2TS_SectionFilter
      *sec, GF_M2TS_SECTION_ES *ses, GF_M2TS_Header *hdr, unsigned char *data, u32
      data_size)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:737,1
    - Dst: gf_m2ts_reset_sdt
      Src: /src/gpac/src/media_tools/mpegts.c:745,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:747,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:749,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:752,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpegts.c:762,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:764,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpegts.c:767,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:777,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:788,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:790,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:795,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:803,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpegts.c:806,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:807,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:812,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:813,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:821,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:822,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpegts.c:827,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:828,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:834,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:843,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 96
    argCount: 8
    argNames:
    - ts
    - ses
    - sections
    - table_id
    - ex_table_id
    - version_number
    - last_section_number
    - status
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_SECTION_ES*
    - GF_List*
    - u8
    - u16
    - u8
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 844
      start: 724
    functionDepth: 2
    functionLinenumber: 724
    functionLinenumberEnd: 844
    functionName: gf_m2ts_process_sdt
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_list_get
    - GF_SAFEALLOC
    - GF_LOG
    - memcpy
    - gf_list_count
    - GF_M2TS_Demuxer*::on_event
    - gf_list_add
    - gf_m2ts_reset_sdt
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_process_sdt(GF_M2TS_Demuxer *ts, GF_M2TS_SECTION_ES *ses,
      GF_List *sections, u8 table_id, u16 ex_table_id, u8 version_number, u8 last_section_number,
      u32 status)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:861,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:863,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:865,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:870,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 8
    argNames:
    - ts
    - es
    - sections
    - table_id
    - ex_table_id
    - version_number
    - last_section_number
    - status
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_SECTION_ES*
    - GF_List*
    - u8
    - u16
    - u8
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 872
      start: 846
    functionDepth: 1
    functionLinenumber: 846
    functionLinenumberEnd: 872
    functionName: gf_m2ts_process_mpeg4section
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_list_get
    - GF_M2TS_Demuxer*::on_event
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_process_mpeg4section(GF_M2TS_Demuxer *ts, GF_M2TS_SECTION_ES
      *es, GF_List *sections, u8 table_id, u16 ex_table_id, u8 version_number, u8
      last_section_number, u32 status)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpegts.c:887,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:893,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:895,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:900,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 8
    argNames:
    - ts
    - es
    - sections
    - table_id
    - ex_table_id
    - version_number
    - last_section_number
    - status
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_SECTION_ES*
    - GF_List*
    - u8
    - u16
    - u8
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 874
    functionDepth: 1
    functionLinenumber: 874
    functionLinenumberEnd: 902
    functionName: gf_m2ts_process_generic_section
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - memset
    - gf_list_get
    - GF_M2TS_Demuxer*::on_event
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_process_generic_section(GF_M2TS_Demuxer *ts, GF_M2TS_SECTION_ES
      *es, GF_List *sections, u8 table_id, u16 ex_table_id, u8 version_number, u8
      last_section_number, u32 status)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:907,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - ts
    - nit_es
    - sections
    - table_id
    - ex_table_id
    - version_number
    - last_section_number
    - status
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_SECTION_ES*
    - GF_List*
    - u8
    - u16
    - u8
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 908
      start: 905
    functionDepth: 1
    functionLinenumber: 905
    functionLinenumberEnd: 908
    functionName: gf_m2ts_process_nit
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_process_nit(GF_M2TS_Demuxer *ts, GF_M2TS_SECTION_ES *nit_es,
      GF_List *sections, u8 table_id, u16 ex_table_id, u8 version_number, u8 last_section_number,
      u32 status)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:934,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:938,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:940,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:943,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:949,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpegts.c:951,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:953,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:958,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpegts.c:977,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:978,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:982,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:984,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpegts.c:1004,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpegts.c:1005,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpegts.c:1006,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpegts.c:1007,1
    - Dst: dvb_decode_mjd_to_unix_time
      Src: /src/gpac/src/media_tools/mpegts.c:1011,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpegts.c:1013,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpegts.c:1014,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpegts.c:1015,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpegts.c:1016,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:1023,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1028,1
    - Dst: gf_m2ts_crc32_check
      Src: /src/gpac/src/media_tools/mpegts.c:1031,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1032,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:1035,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:1037,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpegts.c:1040,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:1047,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 114
    argCount: 8
    argNames:
    - ts
    - tdt_tot_es
    - sections
    - table_id
    - ex_table_id
    - version_number
    - last_section_number
    - status
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_SECTION_ES*
    - GF_List*
    - u8
    - u16
    - u8
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1049
      start: 913
    functionDepth: 2
    functionLinenumber: 913
    functionLinenumberEnd: 1049
    functionName: gf_m2ts_process_tdt_tot
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_m2ts_crc32_check
    - gf_list_get
    - gf_assert
    - dvb_decode_mjd_to_unix_time
    - GF_SAFEALLOC
    - GF_LOG
    - sprintf
    - gf_list_count
    - GF_M2TS_Demuxer*::on_event
    - atoi
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_process_tdt_tot(GF_M2TS_Demuxer *ts, GF_M2TS_SECTION_ES
      *tdt_tot_es, GF_List *sections, u8 table_id, u16 ex_table_id, u8 version_number,
      u8 last_section_number, u32 status)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpegts.c:1055,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/mpegts.c:1057,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/mpegts.c:1060,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1063,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/mpegts.c:1066,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1069,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1070,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1071,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1072,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1075,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpegts.c:1076,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/mpegts.c:1078,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/mpegts.c:1081,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/mpegts.c:1085,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/mpegts.c:1086,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpegts.c:1091,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/mpegts.c:1092,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 42
    argCount: 2
    argNames:
    - bs
    - length
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1095
      start: 1051
    functionDepth: 1
    functionLinenumber: 1051
    functionLinenumberEnd: 1095
    functionName: gf_m2ts_read_metadata_pointer_descriptor
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - GF_SAFEALLOC
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_bs_read_u8
    - gf_malloc
    linkageType: ''
    returnType: GF_M2TS_MetadataPointerDescriptor
    signature: GF_M2TS_MetadataPointerDescriptor *gf_m2ts_read_metadata_pointer_descriptor(GF_BitStream
      *bs, u32 length)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:1100,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:1101,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:1102,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - metapd
    argTypes:
    - GF_M2TS_MetadataPointerDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1104
      start: 1097
    functionDepth: 0
    functionLinenumber: 1097
    functionLinenumberEnd: 1104
    functionName: gf_m2ts_metadata_pointer_descriptor_del
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_metadata_pointer_descriptor_del(GF_M2TS_MetadataPointerDescriptor
      *metapd)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpegts.c:1110,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/mpegts.c:1112,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/mpegts.c:1115,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1118,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/mpegts.c:1121,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1124,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1125,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1126,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1127,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1130,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpegts.c:1131,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/mpegts.c:1133,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1136,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpegts.c:1137,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/mpegts.c:1139,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1142,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpegts.c:1143,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/mpegts.c:1145,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1148,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 35
    argCount: 2
    argNames:
    - bs
    - length
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1152
      start: 1106
    functionDepth: 1
    functionLinenumber: 1106
    functionLinenumberEnd: 1152
    functionName: gf_m2ts_read_metadata_descriptor
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - GF_SAFEALLOC
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_bs_read_u8
    - gf_malloc
    linkageType: ''
    returnType: GF_M2TS_MetadataDescriptor
    signature: GF_M2TS_MetadataDescriptor *gf_m2ts_read_metadata_descriptor(GF_BitStream
      *bs, u32 length)
  - BBCount: 206
    BranchProfiles: []
    Callsites:
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:1175,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1183,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:1185,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1187,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:1190,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1195,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1204,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1211,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/mpegts.c:1222,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/mpegts.c:1223,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/media_tools/mpegts.c:1225,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/mpegts.c:1226,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1228,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/mpegts.c:1229,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:1237,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/mpegts.c:1238,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1244,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/mpegts.c:1253,1
    - Dst: gf_m2ts_read_metadata_pointer_descriptor
      Src: /src/gpac/src/media_tools/mpegts.c:1254,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/mpegts.c:1255,1
    - Dst: gf_m2ts_metadata_pointer_descriptor_del
      Src: /src/gpac/src/media_tools/mpegts.c:1261,1
    - Dst: gf_m2ts_metadata_pointer_descriptor_del
      Src: /src/gpac/src/media_tools/mpegts.c:1265,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/mpegts.c:1268,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1269,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/mpegts.c:1269,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1273,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1294,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1303,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1307,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:1314,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:1316,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1324,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1329,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1334,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1338,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:1345,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:1347,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1356,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1360,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/media_tools/mpegts.c:1361,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpegts.c:1408,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1410,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpegts.c:1420,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1422,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpegts.c:1431,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1433,1
    - Dst: gf_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:1442,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpegts.c:1445,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpegts.c:1459,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1461,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1469,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1471,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1473,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1475,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1477,1
    - Dst: gf_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:1480,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1486,1
    - Dst: gf_dvb_mpe_section_new
      Src: /src/gpac/src/media_tools/mpegts.c:1488,1
    - Dst: gf_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:1491,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1498,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1514,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1521,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/mpegts.c:1529,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/mpegts.c:1539,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:1573,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/mpegts.c:1595,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/mpegts.c:1600,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:1602,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1606,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/mpegts.c:1606,1
    - Dst: gf_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:1618,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpegts.c:1632,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1640,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/mpegts.c:1652,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1653,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1654,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1655,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1656,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1657,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1658,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1659,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1660,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1661,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1662,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1663,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1664,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1665,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/mpegts.c:1666,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/mpegts.c:1675,1
    - Dst: gf_m2ts_read_metadata_descriptor
      Src: /src/gpac/src/media_tools/mpegts.c:1676,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/mpegts.c:1677,1
    - Dst: gf_m2ts_metadata_descriptor_del
      Src: /src/gpac/src/media_tools/mpegts.c:1683,1
    - Dst: gf_m2ts_metadata_descriptor_del
      Src: /src/gpac/src/media_tools/mpegts.c:1688,1
    - Dst: gf_m2ts_metadata_descriptor_del
      Src: /src/gpac/src/media_tools/mpegts.c:1694,1
    - Dst: gf_m2ts_metadata_descriptor_del
      Src: /src/gpac/src/media_tools/mpegts.c:1699,1
    - Dst: gf_m2ts_metadata_descriptor_del
      Src: /src/gpac/src/media_tools/mpegts.c:1703,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/mpegts.c:1717,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1718,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1719,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1720,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1721,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1723,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1724,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1726,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/mpegts.c:1727,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1765,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1773,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:1780,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1782,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1799,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpegts.c:1802,1
    - Dst: gf_m2ts_set_pes_framing
      Src: /src/gpac/src/media_tools/mpegts.c:1803,1
    - Dst: gf_m2ts_es_del
      Src: /src/gpac/src/media_tools/mpegts.c:1819,1
    - Dst: gf_m2ts_es_del
      Src: /src/gpac/src/media_tools/mpegts.c:1822,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpegts.c:1830,1
    - Dst: gf_m2ts_set_pes_framing
      Src: /src/gpac/src/media_tools/mpegts.c:1831,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:1845,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:1846,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:1875,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:1877,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:1883,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1887,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:1893,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:1896,1
    CyclomaticComplexity: 221
    EdgeCount: 221
    ICount: 630
    argCount: 8
    argNames:
    - ts
    - pmt
    - sections
    - table_id
    - ex_table_id
    - version_number
    - last_section_number
    - status
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_SECTION_ES*
    - GF_List*
    - u8
    - u16
    - u8
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1898
      start: 1155
    functionDepth: 5
    functionLinenumber: 1155
    functionLinenumberEnd: 1898
    functionName: gf_m2ts_process_pmt
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - gf_odf_desc_del
    - GF_SAFEALLOC
    - gf_odf_parse_descriptor
    - gf_list_count
    - memset
    - gf_m2ts_section_filter_new
    - gf_realloc
    - gf_4cc_to_str
    - gf_list_get
    - gf_list_new
    - memcpy
    - gf_m2ts_set_pes_framing
    - gf_list_add
    - gf_dvb_mpe_section_new
    - gf_m2ts_metadata_descriptor_del
    - gf_m2ts_read_metadata_descriptor
    - gf_m2ts_es_del
    - GF_LOG
    - GF_M2TS_Demuxer*::on_event
    - gf_bs_read_u8
    - gf_m2ts_read_metadata_pointer_descriptor
    - gf_bs_del
    - gf_bs_read_int
    - GF_4CC
    - gf_opts_get_bool
    - gf_m2ts_metadata_pointer_descriptor_del
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_process_pmt(GF_M2TS_Demuxer *ts, GF_M2TS_SECTION_ES *pmt,
      GF_List *sections, u8 table_id, u16 ex_table_id, u8 version_number, u8 last_section_number,
      u32 status)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:1918,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:1922,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1924,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:1927,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:1931,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1935,1
    - Dst: gf_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:1948,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1951,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpegts.c:1953,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1955,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpegts.c:1958,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpegts.c:1962,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpegts.c:1963,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1965,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpegts.c:1969,1
    - Dst: gf_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:1973,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:1983,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 69
    argCount: 8
    argNames:
    - ts
    - ses
    - sections
    - table_id
    - ex_table_id
    - version_number
    - last_section_number
    - status
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_SECTION_ES*
    - GF_List*
    - u8
    - u16
    - u8
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1985
      start: 1900
    functionDepth: 2
    functionLinenumber: 1900
    functionLinenumberEnd: 1985
    functionName: gf_m2ts_process_pat
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_count
    - GF_M2TS_Demuxer*::on_event
    - gf_list_add
    - gf_m2ts_section_filter_new
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_process_pat(GF_M2TS_Demuxer *ts, GF_M2TS_SECTION_ES *ses,
      GF_List *sections, u8 table_id, u16 ex_table_id, u8 version_number, u8 last_section_number,
      u32 status)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:2008,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:2050,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 8
    argNames:
    - ts
    - ses
    - sections
    - table_id
    - ex_table_id
    - version_number
    - last_section_number
    - status
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_SECTION_ES*
    - GF_List*
    - u8
    - u16
    - u8
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2051
      start: 1987
    functionDepth: 0
    functionLinenumber: 1987
    functionLinenumberEnd: 2051
    functionName: gf_m2ts_process_cat
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - GF_M2TS_Demuxer*::on_event
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_process_cat(GF_M2TS_Demuxer *ts, GF_M2TS_SECTION_ES *ses,
      GF_List *sections, u8 table_id, u16 ex_table_id, u8 version_number, u8 last_section_number,
      u32 status)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - data
    argTypes:
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2063
      start: 2053
    functionDepth: 0
    functionLinenumber: 2053
    functionLinenumberEnd: 2063
    functionName: gf_m2ts_get_pts
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 gf_m2ts_get_pts(unsigned char *data)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpegts.c:2070,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2073,1
    - Dst: gf_m2ts_get_pts
      Src: /src/gpac/src/media_tools/mpegts.c:2106,1
    - Dst: gf_m2ts_get_pts
      Src: /src/gpac/src/media_tools/mpegts.c:2112,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2119,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2121,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2125,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 36
    argCount: 4
    argNames:
    - pes
    - data
    - data_size
    - pesh
    argTypes:
    - GF_M2TS_PES*
    - unsigned char*
    - u32
    - GF_M2TS_PESHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2128
      start: 2065
    functionDepth: 1
    functionLinenumber: 2065
    functionLinenumberEnd: 2128
    functionName: gf_m2ts_pes_header
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - memset
    - GF_LOG
    - gf_m2ts_get_pts
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_pes_header(GF_M2TS_PES *pes, unsigned char *data, u32
      data_size, GF_M2TS_PESHeader *pesh)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/mpegts.c:2132,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2133,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2134,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2135,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2136,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpegts.c:2138,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2139,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2140,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2141,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2142,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2143,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/mpegts.c:2145,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/media_tools/mpegts.c:2147,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/mpegts.c:2149,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/media_tools/mpegts.c:2152,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/mpegts.c:2154,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 2
    argNames:
    - ts
    - pes
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_PES*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2157
      start: 2130
    functionDepth: 1
    functionLinenumber: 2130
    functionLinenumberEnd: 2157
    functionName: gf_m2ts_store_temi
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_bs_new
    - gf_bs_del
    - memset
    - gf_bs_read_int
    - gf_bs_read_u64
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_store_temi(GF_M2TS_Demuxer *ts, GF_M2TS_PES *pes)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_pes_header
      Src: /src/gpac/src/media_tools/mpegts.c:2189,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpegts.c:2194,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:2200,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2204,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2211,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2227,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2232,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2240,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpegts.c:2256,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2262,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:2268,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2270,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2285,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:2292,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2294,1
    - Dst: gf_m2ts_store_temi
      Src: /src/gpac/src/media_tools/mpegts.c:2299,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:2307,1
    - Dst: GF_M2TS_PES*::reframe
      Src: /src/gpac/src/media_tools/mpegts.c:2311,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:2315,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpegts.c:2319,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:2321,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2327,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2330,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 137
    argCount: 3
    argNames:
    - ts
    - pes
    - force_flush_type
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_PES*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2337
      start: 2159
    functionDepth: 2
    functionLinenumber: 2159
    functionLinenumberEnd: 2337
    functionName: gf_m2ts_flush_pes
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_m2ts_store_temi
    - memcpy
    - GF_LOG
    - memset
    - GF_M2TS_Demuxer*::on_event
    - gf_m2ts_pes_header
    - GF_M2TS_PES*::reframe
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_flush_pes(GF_M2TS_Demuxer *ts, GF_M2TS_PES *pes, u32 force_flush_type)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2349,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2367,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2371,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/mpegts.c:2399,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:2401,1
    - Dst: gf_m2ts_flush_pes
      Src: /src/gpac/src/media_tools/mpegts.c:2410,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2415,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/mpegts.c:2421,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:2423,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2429,1
    - Dst: gf_m2ts_flush_pes
      Src: /src/gpac/src/media_tools/mpegts.c:2432,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 80
    argCount: 6
    argNames:
    - ts
    - pes
    - hdr
    - data
    - data_size
    - paf
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_PES*
    - GF_M2TS_Header*
    - unsigned char*
    - u32
    - GF_M2TS_AdaptationField*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2435
      start: 2339
    functionDepth: 3
    functionLinenumber: 2339
    functionLinenumberEnd: 2435
    functionName: gf_m2ts_process_pes
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_m2ts_flush_pes
    - memcpy
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_process_pes(GF_M2TS_Demuxer *ts, GF_M2TS_PES *pes, GF_M2TS_Header
      *hdr, unsigned char *data, u32 data_size, GF_M2TS_AdaptationField *paf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_flush_pes
      Src: /src/gpac/src/media_tools/mpegts.c:2443,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - ts
    - no_force_flush
    argTypes:
    - GF_M2TS_Demuxer*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2446
      start: 2437
    functionDepth: 3
    functionLinenumber: 2437
    functionLinenumberEnd: 2446
    functionName: gf_m2ts_flush_all
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_flush_pes
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_flush_all(GF_M2TS_Demuxer *ts, Bool no_force_flush)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2486,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2496,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2503,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2511,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2519,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2527,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2536,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/mpegts.c:2541,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpegts.c:2548,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2550,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2551,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2552,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2553,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2554,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2555,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/mpegts.c:2557,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/mpegts.c:2558,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2562,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2563,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2565,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/mpegts.c:2571,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/mpegts.c:2575,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/mpegts.c:2580,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/mpegts.c:2581,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/mpegts.c:2581,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2585,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:2586,1
    - Dst: gf_m2ts_store_temi
      Src: /src/gpac/src/media_tools/mpegts.c:2594,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/mpegts.c:2597,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:2600,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2603,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/mpegts.c:2607,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2616,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 136
    argCount: 5
    argNames:
    - ts
    - paf
    - data
    - size
    - pid
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_AdaptationField*
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2617
      start: 2449
    functionDepth: 2
    functionLinenumber: 2449
    functionLinenumberEnd: 2617
    functionName: gf_m2ts_get_adaptation_field
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - gf_m2ts_store_temi
    - gf_bs_new
    - GF_LOG
    - strcpy
    - memcpy
    - MIN
    - gf_bs_del
    - memset
    - GF_M2TS_Demuxer*::on_event
    - gf_bs_read_int
    - GF_ARRAY_LENGTH
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_get_adaptation_field(GF_M2TS_Demuxer *ts, GF_M2TS_AdaptationField
      *paf, u8 *data, u32 size, u32 pid)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:3020,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:3022,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:3031,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:3033,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:3034,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:3036,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 24
    argCount: 1
    argNames:
    - es
    argTypes:
    - GF_M2TS_ES*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3045
      start: 3013
    functionDepth: 1
    functionLinenumber: 3013
    functionLinenumberEnd: 3045
    functionName: gf_m2ts_get_esd
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_ESD
    signature: GF_ESD *gf_m2ts_get_esd(GF_M2TS_ES *es)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - ts
    argTypes:
    - GF_M2TS_Demuxer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3054
      start: 3046
    functionDepth: 0
    functionLinenumber: 3046
    functionLinenumberEnd: 3054
    functionName: gf_m2ts_set_segment_switch
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_set_segment_switch(GF_M2TS_Demuxer *ts)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_section_filter_reset
      Src: /src/gpac/src/media_tools/mpegts.c:3071,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:3077,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:3084,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 34
    argCount: 3
    argNames:
    - ts
    - prog
    - keep_pcr
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_Program*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3099
      start: 3060
    functionDepth: 3
    functionLinenumber: 3060
    functionLinenumberEnd: 3099
    functionName: gf_m2ts_reset_parsers_for_program_ex
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_m2ts_section_filter_reset
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_reset_parsers_for_program_ex(GF_M2TS_Demuxer *ts, GF_M2TS_Program
      *prog, Bool keep_pcr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_reset_parsers_for_program_ex
      Src: /src/gpac/src/media_tools/mpegts.c:3104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ts
    - prog
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_Program*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3106
      start: 3101
    functionDepth: 4
    functionLinenumber: 3101
    functionLinenumberEnd: 3106
    functionName: gf_m2ts_reset_parsers_for_program
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_reset_parsers_for_program_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_reset_parsers_for_program(GF_M2TS_Demuxer *ts, GF_M2TS_Program
      *prog)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_reset_parsers_for_program
      Src: /src/gpac/src/media_tools/mpegts.c:3110,1
    - Dst: gf_m2ts_section_filter_reset
      Src: /src/gpac/src/media_tools/mpegts.c:3115,1
    - Dst: gf_m2ts_section_filter_reset
      Src: /src/gpac/src/media_tools/mpegts.c:3116,1
    - Dst: gf_m2ts_section_filter_reset
      Src: /src/gpac/src/media_tools/mpegts.c:3117,1
    - Dst: gf_m2ts_section_filter_reset
      Src: /src/gpac/src/media_tools/mpegts.c:3118,1
    - Dst: gf_m2ts_section_filter_reset
      Src: /src/gpac/src/media_tools/mpegts.c:3119,1
    - Dst: gf_m2ts_section_filter_reset
      Src: /src/gpac/src/media_tools/mpegts.c:3120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - ts
    argTypes:
    - GF_M2TS_Demuxer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3122
      start: 3107
    functionDepth: 5
    functionLinenumber: 3107
    functionLinenumberEnd: 3122
    functionName: gf_m2ts_reset_parsers
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 2
    functionsReached:
    - gf_m2ts_reset_parsers_for_program
    - gf_m2ts_section_filter_reset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_reset_parsers(GF_M2TS_Demuxer *ts)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - ts
    argTypes:
    - GF_M2TS_Demuxer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3139
      start: 3124
    functionDepth: 0
    functionLinenumber: 3124
    functionLinenumberEnd: 3139
    functionName: gf_m2ts_mark_seg_start
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_mark_seg_start(GF_M2TS_Demuxer *ts)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 1
    argNames:
    - pes
    argTypes:
    - GF_M2TS_PES*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3158
      start: 3143
    functionDepth: 0
    functionLinenumber: 3143
    functionLinenumberEnd: 3158
    functionName: gf_m2ts_pes_get_framing_mode
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_m2ts_pes_get_framing_mode(GF_M2TS_PES *pes)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:3167,1
    - Dst: gf_m2ts_set_pes_framing
      Src: /src/gpac/src/media_tools/mpegts.c:3191,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:3193,1
    - Dst: gf_m2ts_es_del
      Src: /src/gpac/src/media_tools/mpegts.c:3194,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 74
    argCount: 2
    argNames:
    - pes
    - mode
    argTypes:
    - GF_M2TS_PES*
    - GF_M2TSPesFraming
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3250
      start: 3162
    functionDepth: 5
    functionLinenumber: 3162
    functionLinenumberEnd: 3250
    functionName: gf_m2ts_set_pes_framing
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 3
    functionsReached:
    - GF_LOG
    - gf_m2ts_set_pes_framing
    - gf_m2ts_es_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_set_pes_framing(GF_M2TS_PES *pes, GF_M2TSPesFraming
      mode)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpegts.c:3257,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpegts.c:3259,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpegts.c:3260,1
    - Dst: gf_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:3262,1
    - Dst: gf_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:3263,1
    - Dst: gf_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:3264,1
    - Dst: gf_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:3265,1
    - Dst: gf_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:3266,1
    - Dst: gf_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:3267,1
    - Dst: gf_dvb_mpe_init
      Src: /src/gpac/src/media_tools/mpegts.c:3270,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpegts.c:3274,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3276
      start: 3252
    functionDepth: 2
    functionLinenumber: 3252
    functionLinenumberEnd: 3276
    functionName: GF_M2TS_Demuxer *gf_m2ts_demux_new()
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_dvb_mpe_init
    - gf_list_new
    - gf_m2ts_section_filter_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_M2TS_Demuxer *gf_m2ts_demux_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpegts.c:3285,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/mpegts.c:3288,1
    - Dst: gf_get_default_cache_directory
      Src: /src/gpac/src/media_tools/mpegts.c:3288,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpegts.c:3289,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/mpegts.c:3294,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpegts.c:3294,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpegts.c:3294,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpegts.c:3295,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/media_tools/mpegts.c:3296,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:3298,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - ts
    argTypes:
    - GF_M2TS_Demuxer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3301
      start: 3278
    functionDepth: 1
    functionLinenumber: 3278
    functionLinenumberEnd: 3301
    functionName: gf_m2ts_demux_dmscc_init
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_get_default_cache_directory
    - gf_list_new
    - GF_LOG
    - strcpy
    - sprintf
    - gf_mkdir
    - gf_calloc
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_demux_dmscc_init(GF_M2TS_Demuxer *ts)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_section_filter_del
      Src: /src/gpac/src/media_tools/mpegts.c:3307,1
    - Dst: gf_m2ts_section_filter_del
      Src: /src/gpac/src/media_tools/mpegts.c:3308,1
    - Dst: gf_m2ts_section_filter_del
      Src: /src/gpac/src/media_tools/mpegts.c:3309,1
    - Dst: gf_m2ts_section_filter_del
      Src: /src/gpac/src/media_tools/mpegts.c:3310,1
    - Dst: gf_m2ts_section_filter_del
      Src: /src/gpac/src/media_tools/mpegts.c:3311,1
    - Dst: gf_m2ts_section_filter_del
      Src: /src/gpac/src/media_tools/mpegts.c:3312,1
    - Dst: gf_m2ts_es_del
      Src: /src/gpac/src/media_tools/mpegts.c:3317,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:3320,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:3321,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/mpegts.c:3322,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/media_tools/mpegts.c:3323,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:3325,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/mpegts.c:3326,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/media_tools/mpegts.c:3327,1
    - Dst: gf_m2ts_es_del
      Src: /src/gpac/src/media_tools/mpegts.c:3330,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpegts.c:3332,1
    - Dst: gf_odf_desc_list_del
      Src: /src/gpac/src/media_tools/mpegts.c:3335,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpegts.c:3336,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/mpegts.c:3338,1
    - Dst: gf_m2ts_metadata_pointer_descriptor_del
      Src: /src/gpac/src/media_tools/mpegts.c:3339,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:3340,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpegts.c:3342,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:3344,1
    - Dst: gf_m2ts_reset_sdt
      Src: /src/gpac/src/media_tools/mpegts.c:3345,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpegts.c:3347,1
    - Dst: gf_dvb_mpe_shutdown
      Src: /src/gpac/src/media_tools/mpegts.c:3350,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:3354,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:3356,1
    - Dst: gf_dir_cleanup
      Src: /src/gpac/src/media_tools/mpegts.c:3357,1
    - Dst: gf_rmdir
      Src: /src/gpac/src/media_tools/mpegts.c:3358,1
    - Dst: gf_m2ts_delete_dsmcc_overlord
      Src: /src/gpac/src/media_tools/mpegts.c:3359,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:3361,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpegts.c:3365,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:3368,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:3370,1
    - Dst: gf_m2ts_delete_channel_application_info
      Src: /src/gpac/src/media_tools/mpegts.c:3371,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/mpegts.c:3372,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpegts.c:3375,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:3377,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:3378,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 64
    argCount: 1
    argNames:
    - ts
    argTypes:
    - GF_M2TS_Demuxer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3379
      start: 3303
    functionDepth: 5
    functionLinenumber: 3303
    functionLinenumberEnd: 3379
    functionName: gf_m2ts_demux_del
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 4
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_rmdir
    - gf_m2ts_reset_sdt
    - gf_odf_desc_list_del
    - gf_m2ts_es_del
    - gf_odf_desc_del
    - gf_m2ts_delete_channel_application_info
    - gf_m2ts_section_filter_del
    - gf_list_count
    - gf_dvb_mpe_shutdown
    - gf_m2ts_delete_dsmcc_overlord
    - gf_list_rem
    - gf_dir_cleanup
    - gf_list_last
    - gf_list_rem_last
    - gf_list_del
    - gf_m2ts_metadata_pointer_descriptor_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_demux_del(GF_M2TS_Demuxer *ts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dvb_mpe_print_info
      Src: /src/gpac/src/media_tools/mpegts.c:3385,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ts
    argTypes:
    - GF_M2TS_Demuxer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3387
      start: 3382
    functionDepth: 2
    functionLinenumber: 3382
    functionLinenumberEnd: 3387
    functionName: gf_m2ts_print_info
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_dvb_mpe_print_info
    linkageType: ''
    returnType: void
    signature: void gf_m2ts_print_info(GF_M2TS_Demuxer *ts)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_log_get_tool_level
      Src: /src/gpac/src/media_tools/mpegts.c:3398,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/media_tools/mpegts.c:3399,1
    - Dst: gf_m2ts_demux_new
      Src: /src/gpac/src/media_tools/mpegts.c:3401,1
    - Dst: gf_m2ts_process_data
      Src: /src/gpac/src/media_tools/mpegts.c:3403,1
    - Dst: gf_m2ts_demux_del
      Src: /src/gpac/src/media_tools/mpegts.c:3423,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/media_tools/mpegts.c:3425,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 2
    argNames:
    - buf
    - size
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3430
      start: 3392
    functionDepth: 6
    functionLinenumber: 3392
    functionLinenumberEnd: 3430
    functionName: gf_m2ts_probe_buffer
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_process_data
    - gf_log_get_tool_level
    - gf_log_set_tool_level
    - gf_m2ts_demux_new
    - gf_m2ts_demux_del
    linkageType: ''
    returnType: Bool
    signature: Bool gf_m2ts_probe_buffer(char *buf, u32 size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpegts.c:3437,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/media_tools/mpegts.c:3439,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:3443,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/media_tools/mpegts.c:3444,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/mpegts.c:3446,1
    - Dst: gf_fread
      Src: /src/gpac/src/media_tools/mpegts.c:3448,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpegts.c:3449,1
    - Dst: gf_m2ts_probe_buffer
      Src: /src/gpac/src/media_tools/mpegts.c:3452,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - fileName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3453
      start: 3431
    functionDepth: 7
    functionLinenumber: 3431
    functionLinenumberEnd: 3453
    functionName: gf_m2ts_probe_file
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 1
    functionsReached:
    - gf_fclose
    - gf_blob_get
    - memcpy
    - gf_fread
    - gf_m2ts_probe_buffer
    - strncmp
    - gf_fopen
    - gf_blob_release
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_probe_file(const char *fileName)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_probe_buffer
      Src: /src/gpac/src/media_tools/mpegts.c:3461,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3462
      start: 3455
    functionDepth: 7
    functionLinenumber: 3455
    functionLinenumberEnd: 3462
    functionName: gf_m2ts_probe_data
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_probe_buffer
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_probe_data(const u8 *data, u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpegts.c:3476,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - ptr
    - TS
    argTypes:
    - unsigned char*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3477
      start: 3465
    functionDepth: 1
    functionLinenumber: 3465
    functionLinenumberEnd: 3477
    functionName: rewrite_pts_dts
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: void
    signature: void rewrite_pts_dts(unsigned char *ptr, u64 TS)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _TS
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3484
      start: 3479
    functionDepth: 0
    functionLinenumber: 3479
    functionLinenumberEnd: 3484
    functionName: ADJUST_TIMESTAMP
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ADJUST_TIMESTAMP(_TS)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:3502,1
    - Dst: ADJUST_TIMESTAMP
      Src: /src/gpac/src/media_tools/mpegts.c:3515,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:3523,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:3550,1
    - Dst: gf_m2ts_get_pts
      Src: /src/gpac/src/media_tools/mpegts.c:3555,1
    - Dst: ADJUST_TIMESTAMP
      Src: /src/gpac/src/media_tools/mpegts.c:3556,1
    - Dst: rewrite_pts_dts
      Src: /src/gpac/src/media_tools/mpegts.c:3557,1
    - Dst: gf_m2ts_get_pts
      Src: /src/gpac/src/media_tools/mpegts.c:3561,1
    - Dst: ADJUST_TIMESTAMP
      Src: /src/gpac/src/media_tools/mpegts.c:3562,1
    - Dst: rewrite_pts_dts
      Src: /src/gpac/src/media_tools/mpegts.c:3563,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:3566,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 63
    argCount: 4
    argNames:
    - buffer
    - size
    - ts_shift
    - is_pes
    argTypes:
    - u8*
    - u32
    - s64
    - u8[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3571
      start: 3484
    functionDepth: 2
    functionLinenumber: 3484
    functionLinenumberEnd: 3571
    functionName: gf_m2ts_restamp
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - ADJUST_TIMESTAMP
    - rewrite_pts_dts
    - gf_m2ts_get_pts
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_m2ts_restamp(u8 *buffer, u32 size, s64 ts_shift, u8 is_pes[GF_M2TS_MAX_STREAMS])
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/media_import.c:51,1
    - Dst: gf_isom_get_constant_sample_size
      Src: /src/gpac/src/media_tools/media_import.c:52,1
    - Dst: gf_isom_get_constant_sample_duration
      Src: /src/gpac/src/media_tools/media_import.c:53,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/media_import.c:57,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/media_import.c:58,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/media_import.c:59,1
    - Dst: gf_isom_get_sample_info_ex
      Src: /src/gpac/src/media_tools/media_import.c:69,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/media_tools/media_import.c:84,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/media_import.c:95,1
    - Dst: gf_isom_change_mpeg4_description
      Src: /src/gpac/src/media_tools/media_import.c:100,1
    - Dst: gf_isom_update_bitrate
      Src: /src/gpac/src/media_tools/media_import.c:103,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_import.c:105,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 57
    argCount: 3
    argNames:
    - file
    - track
    - use_esd
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 38
    functionDepth: 8
    functionLinenumber: 38
    functionLinenumberEnd: 108
    functionName: gf_media_update_bitrate_ex
    functionSourceFile: /src/gpac/src/media_tools/media_import.c
    functionUses: 0
    functionsReached:
    - gf_isom_update_bitrate
    - gf_isom_get_constant_sample_size
    - gf_odf_desc_del
    - gf_isom_change_mpeg4_description
    - gf_isom_get_sample_count
    - gf_isom_get_esd
    - memset
    - gf_isom_get_sample_info_ex
    - gf_isom_get_media_timescale
    - gf_isom_get_media_duration
    - gf_isom_get_media_type
    - gf_isom_get_constant_sample_duration
    linkageType: ''
    returnType: void
    signature: void gf_media_update_bitrate_ex(GF_ISOFile *file, u32 track, Bool use_esd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_media_update_bitrate_ex
      Src: /src/gpac/src/media_tools/media_import.c:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - file
    - track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 9
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: gf_media_update_bitrate
    functionSourceFile: /src/gpac/src/media_tools/media_import.c
    functionUses: 1
    functionsReached:
    - gf_media_update_bitrate_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_update_bitrate(GF_ISOFile *file, u32 track)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - fps
    - timescale
    - dts_inc
    argTypes:
    - Double
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 137
    functionName: gf_media_get_video_timing
    functionSourceFile: /src/gpac/src/media_tools/media_import.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_media_get_video_timing(Double fps, u32 *timescale, u32 *dts_inc)
  - BBCount: 23
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 50
    argCount: 5
    argNames:
    - width
    - height
    - fps_num
    - fps_den
    - codecid
    argTypes:
    - u32
    - u32
    - u64
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 176
    functionName: gf_dolby_vision_level
    functionSourceFile: /src/gpac/src/media_tools/media_import.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dolby_vision_level(u32 width, u32 height, u64 fps_num,
      u64 fps_den, u32 codecid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/media_tools/media_import.c:183,1
    - Dst: va_start
      Src: /src/gpac/src/media_tools/media_import.c:186,1
    - Dst: vsnprintf
      Src: /src/gpac/src/media_tools/media_import.c:187,1
    - Dst: va_end
      Src: /src/gpac/src/media_tools/media_import.c:188,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_import.c:189,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - import
    - e
    - format
    argTypes:
    - GF_MediaImporter*
    - GF_Err
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 193
    functionName: gf_import_message
    functionSourceFile: /src/gpac/src/media_tools/media_import.c
    functionUses: 0
    functionsReached:
    - va_end
    - gf_log_tool_level_on
    - GF_LOG
    - va_start
    - vsnprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_import_message(GF_MediaImporter *import, GF_Err e, char *format,
      ...)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_load_data
      Src: /src/gpac/src/media_tools/media_import.c:212,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:213,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/media_import.c:219,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/media_tools/media_import.c:225,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/media_tools/media_import.c:229,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/media_tools/media_import.c:230,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/media_tools/media_import.c:238,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:239,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/media_tools/media_import.c:246,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/src/media_tools/media_import.c:248,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/media_import.c:250,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/src/media_tools/media_import.c:253,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/media_import.c:254,1
    - Dst: gf_isom_set_track_magic
      Src: /src/gpac/src/media_tools/media_import.c:258,1
    - Dst: gf_isom_new_mpeg4_description
      Src: /src/gpac/src/media_tools/media_import.c:260,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/media_tools/media_import.c:263,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:268,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/media_import.c:271,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/media_tools/media_import.c:276,1
    - Dst: gf_isom_add_sample_reference
      Src: /src/gpac/src/media_tools/media_import.c:278,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/media_tools/media_import.c:281,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/media_tools/media_import.c:284,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_import.c:286,1
    - Dst: gf_isom_update_duration
      Src: /src/gpac/src/media_tools/media_import.c:287,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:290,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_import.c:292,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 86
    argCount: 2
    argNames:
    - import
    - mult_desc_allowed
    argTypes:
    - GF_MediaImporter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 195
    functionDepth: 8
    functionLinenumber: 195
    functionLinenumberEnd: 296
    functionName: gf_import_afx_sc3dmc
    functionSourceFile: /src/gpac/src/media_tools/media_import.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_set_progress
    - gf_odf_desc_del
    - gf_isom_get_sample_count
    - gf_isom_add_sample_reference
    - gf_isom_add_sample
    - gf_isom_get_track_id
    - gf_isom_get_track_by_id
    - gf_isom_update_duration
    - gf_odf_desc_esd_new
    - gf_isom_sample_del
    - gf_isom_new_mpeg4_description
    - gf_import_message
    - gf_odf_desc_new
    - gf_isom_set_track_enabled
    - gf_isom_last_error
    - gf_isom_new_track
    - gf_isom_sample_new
    - gf_malloc
    - gf_isom_set_track_magic
    - gf_file_load_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_import_afx_sc3dmc(GF_MediaImporter *import, Bool mult_desc_allowed)
  - BBCount: 136
    BranchProfiles: []
    Callsites:
    - Dst: gf_url_get_resource_name
      Src: /src/gpac/src/media_tools/media_import.c:311,1
    - Dst: gf_isom_get_filename
      Src: /src/gpac/src/media_tools/media_import.c:311,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/media_import.c:320,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/media_import.c:321,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/media_import.c:322,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/media_tools/media_import.c:343,1
    - Dst: gf_isom_get_audio_info
      Src: /src/gpac/src/media_tools/media_import.c:345,1
    - Dst: gf_isom_get_media_language
      Src: /src/gpac/src/media_tools/media_import.c:348,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/media_import.c:350,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:351,1
    - Dst: gf_media_get_rfc_6381_codec_name
      Src: /src/gpac/src/media_tools/media_import.c:354,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/media_import.c:363,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:363,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/media_import.c:364,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/media_tools/media_import.c:366,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:367,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/media_import.c:369,1
    - Dst: gf_isom_get_nalu_extract_mode
      Src: /src/gpac/src/media_tools/media_import.c:379,1
    - Dst: gf_isom_get_root_od
      Src: /src/gpac/src/media_tools/media_import.c:380,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_import.c:382,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/media_import.c:385,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/media_tools/media_import.c:389,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/media_tools/media_import.c:397,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_import.c:402,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_import.c:423,1
    - Dst: gf_isom_get_audio_info
      Src: /src/gpac/src/media_tools/media_import.c:432,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/media_tools/media_import.c:442,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_import.c:450,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_import.c:462,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/src/media_tools/media_import.c:469,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_import.c:473,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/media_import.c:474,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/media_import.c:477,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/media_tools/media_import.c:479,1
    - Dst: gf_isom_set_timescale
      Src: /src/gpac/src/media_tools/media_import.c:480,1
    - Dst: gf_isom_get_filename
      Src: /src/gpac/src/media_tools/media_import.c:486,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_import.c:487,1
    - Dst: gf_isom_clone_track
      Src: /src/gpac/src/media_tools/media_import.c:497,1
    - Dst: gf_isom_set_track_id
      Src: /src/gpac/src/media_tools/media_import.c:502,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/media_import.c:505,1
    - Dst: gf_isom_has_keep_utc_times
      Src: /src/gpac/src/media_tools/media_import.c:505,1
    - Dst: gf_isom_get_creation_time
      Src: /src/gpac/src/media_tools/media_import.c:507,1
    - Dst: gf_isom_set_creation_time
      Src: /src/gpac/src/media_tools/media_import.c:508,1
    - Dst: gf_isom_set_track_id
      Src: /src/gpac/src/media_tools/media_import.c:514,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/media_import.c:518,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/media_tools/media_import.c:520,1
    - Dst: gf_isom_remove_track_references
      Src: /src/gpac/src/media_tools/media_import.c:524,1
    - Dst: gf_isom_set_track_magic
      Src: /src/gpac/src/media_tools/media_import.c:528,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/media_import.c:530,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:533,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:536,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:539,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:544,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:546,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:548,1
    - Dst: gf_isom_get_audio_info
      Src: /src/gpac/src/media_tools/media_import.c:551,1
    - Dst: gf_isom_set_audio_info
      Src: /src/gpac/src/media_tools/media_import.c:552,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:557,1
    - Dst: gf_isom_get_mpeg4_subtype
      Src: /src/gpac/src/media_tools/media_import.c:562,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/media_import.c:563,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/media_import.c:564,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/media_import.c:564,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:565,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/media_import.c:565,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/src/media_tools/media_import.c:572,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_import.c:575,1
    - Dst: gf_isom_is_cenc_media
      Src: /src/gpac/src/media_tools/media_import.c:578,1
    - Dst: gf_isom_is_media_encrypted
      Src: /src/gpac/src/media_tools/media_import.c:579,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/src/media_tools/media_import.c:580,1
    - Dst: gf_isom_get_constant_sample_duration
      Src: /src/gpac/src/media_tools/media_import.c:583,1
    - Dst: gf_isom_enable_raw_pack
      Src: /src/gpac/src/media_tools/media_import.c:584,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/media_import.c:586,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/media_import.c:591,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_import.c:595,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_import.c:597,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/media_import.c:601,1
    - Dst: gf_isom_avc_set_inband_config
      Src: /src/gpac/src/media_tools/media_import.c:602,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/media_import.c:605,1
    - Dst: gf_isom_hevc_set_inband_config
      Src: /src/gpac/src/media_tools/media_import.c:606,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/media_import.c:609,1
    - Dst: gf_isom_vvc_set_inband_config
      Src: /src/gpac/src/media_tools/media_import.c:610,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/media_import.c:632,1
    - Dst: gf_isom_cenc_get_sample_aux_info
      Src: /src/gpac/src/media_tools/media_import.c:637,1
    - Dst: gf_isom_piff_allocate_storage
      Src: /src/gpac/src/media_tools/media_import.c:641,1
    - Dst: gf_isom_cenc_allocate_storage
      Src: /src/gpac/src/media_tools/media_import.c:643,1
    - Dst: gf_isom_clone_pssh
      Src: /src/gpac/src/media_tools/media_import.c:646,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/src/media_tools/media_import.c:651,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/media_import.c:653,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/media_tools/media_import.c:658,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/media_tools/media_import.c:658,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_import.c:659,1
    - Dst: gf_isom_add_sample_reference
      Src: /src/gpac/src/media_tools/media_import.c:667,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/media_import.c:669,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/media_import.c:672,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_import.c:674,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_import.c:686,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_import.c:697,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/media_tools/media_import.c:702,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/media_tools/media_import.c:702,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_import.c:703,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/media_tools/media_import.c:711,1
    - Dst: gf_isom_get_sample_to_group_info
      Src: /src/gpac/src/media_tools/media_import.c:722,1
    - Dst: gf_isom_set_sample_rap_group
      Src: /src/gpac/src/media_tools/media_import.c:726,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_import.c:729,1
    - Dst: gf_isom_copy_sample_info
      Src: /src/gpac/src/media_tools/media_import.c:732,1
    - Dst: gf_isom_get_sample_cenc_info
      Src: /src/gpac/src/media_tools/media_import.c:744,1
    - Dst: gf_isom_cenc_get_sample_aux_info
      Src: /src/gpac/src/media_tools/media_import.c:752,1
    - Dst: gf_isom_track_cenc_add_sample_info
      Src: /src/gpac/src/media_tools/media_import.c:757,1
    - Dst: gf_isom_track_cenc_add_sample_info
      Src: /src/gpac/src/media_tools/media_import.c:761,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/media_tools/media_import.c:767,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/media_tools/media_import.c:769,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/src/media_tools/media_import.c:775,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/src/media_tools/media_import.c:776,1
    - Dst: gf_isom_get_edit_list_type
      Src: /src/gpac/src/media_tools/media_import.c:779,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_import.c:780,1
    - Dst: gf_isom_update_edit_list_duration
      Src: /src/gpac/src/media_tools/media_import.c:782,1
    - Dst: gf_isom_update_duration
      Src: /src/gpac/src/media_tools/media_import.c:783,1
    - Dst: gf_isom_has_time_offset
      Src: /src/gpac/src/media_tools/media_import.c:786,1
    - Dst: gf_isom_set_composition_offset_mode
      Src: /src/gpac/src/media_tools/media_import.c:787,1
    - Dst: gf_media_update_bitrate_ex
      Src: /src/gpac/src/media_tools/media_import.c:802,1
    - Dst: gf_isom_set_image_sequence_alpha
      Src: /src/gpac/src/media_tools/media_import.c:805,1
    - Dst: gf_isom_update_duration
      Src: /src/gpac/src/media_tools/media_import.c:809,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:812,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_import.c:813,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/media_import.c:814,1
    CyclomaticComplexity: 163
    EdgeCount: 163
    ICount: 447
    argCount: 1
    argNames:
    - import
    argTypes:
    - GF_MediaImporter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 816
      start: 298
    functionDepth: 10
    functionLinenumber: 298
    functionLinenumberEnd: 816
    functionName: gf_import_isomedia_track
    functionSourceFile: /src/gpac/src/media_tools/media_import.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_copy_sample_info
    - gf_set_progress
    - gf_odf_desc_del
    - gf_url_get_resource_name
    - gf_isom_get_timescale
    - strcpy
    - gf_isom_get_sample_count
    - gf_isom_cenc_allocate_storage
    - gf_isom_add_sample_reference
    - gf_isom_add_sample
    - gf_isom_get_track_id
    - gf_isom_set_pl_indication
    - gf_isom_set_timescale
    - gf_isom_get_root_od
    - gf_isom_set_audio_info
    - gf_isom_get_sample_info
    - gf_isom_get_track_by_id
    - gf_isom_get_nalu_extract_mode
    - gf_isom_get_original_format_type
    - gf_isom_set_nalu_extract_mode
    - gf_isom_avc_set_inband_config
    - gf_4cc_to_str
    - gf_isom_update_duration
    - gf_isom_sample_del
    - gf_isom_get_media_subtype
    - gf_isom_get_track_count
    - gf_import_message
    - gf_isom_set_composition_offset_mode
    - gf_isom_get_mpeg4_subtype
    - gf_isom_get_audio_info
    - gf_isom_get_visual_info
    - gf_m4v_get_config
    - gf_isom_get_media_type
    - gf_isom_get_creation_time
    - gf_isom_hevc_set_inband_config
    - gf_isom_clone_track
    - gf_isom_get_sample
    - gf_isom_get_constant_sample_duration
    - gf_isom_get_sample_to_group_info
    - gf_isom_get_sample_cenc_info
    - gf_isom_set_image_sequence_alpha
    - gf_isom_last_error
    - gf_isom_get_sample_duration
    - gf_isom_get_media_language
    - GF_LOG
    - gf_m4a_get_config
    - gf_isom_get_esd
    - strstr
    - gf_isom_has_keep_utc_times
    - gf_isom_is_media_encrypted
    - gf_isom_enable_raw_pack
    - gf_isom_vvc_set_inband_config
    - gf_isom_cenc_get_sample_aux_info
    - gf_isom_get_track_layout_info
    - gf_isom_piff_allocate_storage
    - gf_isom_track_cenc_add_sample_info
    - gf_isom_get_edit_list_type
    - gf_isom_update_edit_list_duration
    - gf_isom_has_time_offset
    - gf_isom_remove_track_references
    - gf_isom_is_cenc_media
    - gf_isom_set_creation_time
    - gf_timestamp_greater_or_equal
    - gf_isom_clone_pssh
    - gf_isom_set_track_magic
    - gf_isom_set_track_id
    - gf_isom_get_media_timescale
    - gf_isom_set_sample_rap_group
    - GF_4CC
    - gf_media_update_bitrate_ex
    - gf_media_get_rfc_6381_codec_name
    - gf_sys_old_arch_compat
    - gf_isom_set_last_sample_duration
    - gf_isom_get_filename
    - gf_isom_set_track_reference
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_import_isomedia_track(GF_MediaImporter *import)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_import_isomedia_track
      Src: /src/gpac/src/media_tools/media_import.c:822,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/media_import.c:826,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/media_import.c:828,1
    - Dst: gf_import_isomedia_track
      Src: /src/gpac/src/media_tools/media_import.c:830,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - import
    argTypes:
    - GF_MediaImporter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 836
      start: 818
    functionDepth: 11
    functionLinenumber: 818
    functionLinenumberEnd: 836
    functionName: gf_import_isomedia
    functionSourceFile: /src/gpac/src/media_tools/media_import.c
    functionUses: 0
    functionsReached:
    - gf_import_isomedia_track
    - gf_isom_get_track_id
    - gf_isom_get_track_count
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_import_isomedia(GF_MediaImporter *import)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/media_import.c:849,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/media_import.c:850,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/media_import.c:852,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/media_import.c:853,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/media_import.c:854,1
    - Dst: gf_isom_get_nalu_length_field
      Src: /src/gpac/src/media_tools/media_import.c:855,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/media_import.c:860,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/media_import.c:861,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/media_import.c:865,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/media_import.c:867,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/media_import.c:868,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/media_import.c:871,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:872,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/media_import.c:875,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/media_import.c:876,1
    - Dst: gf_isom_update_sample
      Src: /src/gpac/src/media_tools/media_import.c:877,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_import.c:878,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:880,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 30
    argCount: 3
    argNames:
    - file
    - track
    - new_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 882
      start: 842
    functionDepth: 7
    functionLinenumber: 842
    functionLinenumberEnd: 882
    functionName: gf_media_nal_rewrite_samples
    functionSourceFile: /src/gpac/src/media_tools/media_import.c
    functionUses: 2
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_isom_get_nalu_length_field
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_isom_sample_del
    - gf_isom_get_sample_count
    - gf_bs_del
    - gf_bs_write_data
    - gf_isom_update_sample
    - gf_bs_read_int
    - gf_malloc
    - gf_isom_get_sample
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_nal_rewrite_samples(GF_ISOFile *file, u32 track,
      u32 new_size)
  - BBCount: 67
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/media_import.c:900,1
    - Dst: gf_fread
      Src: /src/gpac/src/media_tools/media_import.c:903,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/media_import.c:931,1
    - Dst: gf_fgets
      Src: /src/gpac/src/media_tools/media_import.c:936,1
    - Dst: strlwr
      Src: /src/gpac/src/media_tools/media_import.c:938,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_import.c:940,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_import.c:941,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_import.c:942,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/media_import.c:944,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/media_import.c:945,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/media_import.c:946,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_import.c:947,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_import.c:947,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_import.c:950,1
    - Dst: gf_isom_remove_chapter
      Src: /src/gpac/src/media_tools/media_import.c:960,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/media_import.c:965,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/media_import.c:968,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/media_tools/media_import.c:969,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/media_import.c:970,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/src/media_tools/media_import.c:971,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/media_import.c:974,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_import.c:977,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_import.c:978,1
    - Dst: gf_fgets
      Src: /src/gpac/src/media_tools/media_import.c:990,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/media_import.c:995,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/media_import.c:1009,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/media_import.c:1014,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1016,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/media_tools/media_import.c:1017,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/media_import.c:1018,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/media_import.c:1019,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/media_import.c:1020,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/media_import.c:1022,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1024,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/media_import.c:1027,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/media_import.c:1028,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/media_import.c:1029,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/media_import.c:1031,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1032,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/media_import.c:1035,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/media_import.c:1036,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/media_import.c:1037,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/media_import.c:1038,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/media_import.c:1039,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/media_import.c:1043,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/media_import.c:1045,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1046,1
    - Dst: strncpy
      Src: /src/gpac/src/media_tools/media_import.c:1051,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/media_import.c:1053,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/media_import.c:1055,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/media_import.c:1057,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/media_import.c:1057,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1063,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1065,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1068,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1072,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1076,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1080,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/media_import.c:1086,1
    - Dst: strncpy
      Src: /src/gpac/src/media_tools/media_import.c:1089,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/media_import.c:1091,1
    - Dst: strlwr
      Src: /src/gpac/src/media_tools/media_import.c:1094,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/media_import.c:1096,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_import.c:1098,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1099,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/media_import.c:1100,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1107,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1116,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1120,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1124,1
    - Dst: gf_isom_add_chapter
      Src: /src/gpac/src/media_tools/media_import.c:1130,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/media_import.c:1139,1
    - Dst: gf_isom_add_chapter
      Src: /src/gpac/src/media_tools/media_import.c:1140,1
    - Dst: gf_isom_add_chapter
      Src: /src/gpac/src/media_tools/media_import.c:1142,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_import.c:1148,1
    CyclomaticComplexity: 98
    EdgeCount: 98
    ICount: 263
    argCount: 1
    argNames:
    - import
    argTypes:
    - GF_MediaImporter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1151
      start: 887
    functionDepth: 7
    functionLinenumber: 887
    functionLinenumberEnd: 1151
    functionName: gf_media_import_chapters_file
    functionSourceFile: /src/gpac/src/media_tools/media_import.c
    functionUses: 0
    functionsReached:
    - strcpy
    - gf_isom_get_sample_count
    - gf_fopen
    - gf_isom_get_sample_info
    - strchr
    - strrchr
    - gf_fseek
    - gf_isom_sample_del
    - strlwr
    - gf_isom_get_track_count
    - strncmp
    - gf_isom_get_media_type
    - sscanf
    - gf_fgets
    - gf_fread
    - gf_isom_is_video_handler_type
    - GF_LOG
    - strstr
    - gf_isom_add_chapter
    - strncpy
    - strnicmp
    - gf_isom_remove_chapter
    - strlen
    - gf_timestamp_rescale
    - gf_fclose
    - gf_isom_get_media_timescale
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_import_chapters_file(GF_MediaImporter *import)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_remove_chapter
      Src: /src/gpac/src/media_tools/media_import.c:1160,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/media_import.c:1164,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/media_tools/media_import.c:1165,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/media_tools/media_import.c:1167,1
    - Dst: gf_isom_remove_track
      Src: /src/gpac/src/media_tools/media_import.c:1169,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/media_import.c:1175,1
    - Dst: gf_media_import
      Src: /src/gpac/src/media_tools/media_import.c:1180,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:1182,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/media_tools/media_import.c:1186,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/src/media_tools/media_import.c:1187,1
    - Dst: gf_isom_set_media_subtype
      Src: /src/gpac/src/media_tools/media_import.c:1189,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/media_import.c:1193,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/media_import.c:1194,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/media_tools/media_import.c:1200,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:1204,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 41
    argCount: 4
    argNames:
    - file
    - chap_file
    - import_fps
    - use_qt
    argTypes:
    - GF_ISOFile*
    - char*
    - GF_Fraction
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1206
      start: 1153
    functionDepth: 8
    functionLinenumber: 1153
    functionLinenumberEnd: 1206
    functionName: gf_media_import_chapters
    functionSourceFile: /src/gpac/src/media_tools/media_import.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_remove_track
    - GF_SAFEALLOC
    - gf_isom_set_media_subtype
    - gf_isom_get_reference
    - gf_isom_get_reference_count
    - gf_isom_get_track_count
    - gf_isom_set_track_reference
    - gf_isom_remove_chapter
    - gf_isom_get_track_by_id
    - gf_isom_get_media_type
    - gf_isom_get_sample_description_count
    - gf_media_import
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_import_chapters(GF_ISOFile *file, char *chap_file,
      GF_Fraction import_fps, Bool use_qt)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - f
    - on_setup_error_udta
    - e
    argTypes:
    - GF_Filter*
    - void*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1214
      start: 1208
    functionDepth: 0
    functionLinenumber: 1208
    functionLinenumberEnd: 1214
    functionName: on_import_setup_failure
    functionSourceFile: /src/gpac/src/media_tools/media_import.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool on_import_setup_failure(GF_Filter *f, void *on_setup_error_udta,
      GF_Err e)
  - BBCount: 125
    BranchProfiles: []
    Callsites:
    - Dst: gf_import_isomedia
      Src: /src/gpac/src/media_tools/media_import.c:1234,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/media_import.c:1239,1
    - Dst: gf_isom_probe_file
      Src: /src/gpac/src/media_tools/media_import.c:1246,1
    - Dst: gf_isom_open
      Src: /src/gpac/src/media_tools/media_import.c:1255,1
    - Dst: gf_import_isomedia
      Src: /src/gpac/src/media_tools/media_import.c:1257,1
    - Dst: gf_isom_delete
      Src: /src/gpac/src/media_tools/media_import.c:1258,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/media_import.c:1266,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/media_import.c:1266,1
    - Dst: gf_import_afx_sc3dmc
      Src: /src/gpac/src/media_tools/media_import.c:1267,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/media_import.c:1269,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/media_import.c:1269,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/media_import.c:1269,1
    - Dst: gf_media_import_chapters_file
      Src: /src/gpac/src/media_tools/media_import.c:1270,1
    - Dst: gf_fs_new_defaults
      Src: /src/gpac/src/media_tools/media_import.c:1284,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1286,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/media_import.c:1288,1
    - Dst: gf_fs_load_source
      Src: /src/gpac/src/media_tools/media_import.c:1289,1
    - Dst: gf_fs_run
      Src: /src/gpac/src/media_tools/media_import.c:1291,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1292,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1293,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/media_tools/media_import.c:1296,1
    - Dst: on_import_setup_failure
      Src: /src/gpac/src/media_tools/media_import.c:1297,1
    - Dst: gf_filter_set_setup_failure_callback
      Src: /src/gpac/src/media_tools/media_import.c:1301,1
    - Dst: gf_fs_run
      Src: /src/gpac/src/media_tools/media_import.c:1302,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1305,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1306,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/media_tools/media_import.c:1310,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/media_tools/media_import.c:1314,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1316,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1318,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1320,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/media_import.c:1321,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/media_import.c:1322,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1323,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1325,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1327,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1330,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1339,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1342,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1344,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1349,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1352,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1355,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1357,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1363,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1368,1
    - Dst: gf_fs_new_defaults
      Src: /src/gpac/src/media_tools/media_import.c:1375,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1377,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1384,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/media_import.c:1386,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1391,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1392,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1393,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1397,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1398,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1401,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1404,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1406,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1408,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1410,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1412,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1414,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1416,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1417,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1420,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1421,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1424,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1427,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1428,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1431,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1432,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1435,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1436,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1438,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1439,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1440,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1441,1
    - Dst: gf_sys_find_global_arg
      Src: /src/gpac/src/media_tools/media_import.c:1444,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_import.c:1445,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1447,1
    - Dst: gf_isom_has_keep_utc_times
      Src: /src/gpac/src/media_tools/media_import.c:1449,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1449,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1453,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1454,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1457,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:1458,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1459,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/media_import.c:1463,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:1464,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1468,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:1469,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1470,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1474,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_import.c:1489,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_import.c:1491,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/media_import.c:1497,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1500,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1501,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/media_tools/media_import.c:1504,1
    - Dst: gf_filter_get_id
      Src: /src/gpac/src/media_tools/media_import.c:1514,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1516,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1517,1
    - Dst: gf_filter_assign_id
      Src: /src/gpac/src/media_tools/media_import.c:1519,1
    - Dst: gf_filter_get_id
      Src: /src/gpac/src/media_tools/media_import.c:1522,1
    - Dst: gf_filter_assign_id
      Src: /src/gpac/src/media_tools/media_import.c:1524,1
    - Dst: gf_filter_get_id
      Src: /src/gpac/src/media_tools/media_import.c:1525,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1528,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/media_import.c:1530,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/media_tools/media_import.c:1531,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1548,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1550,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1551,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1554,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1555,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1557,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1559,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1560,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1561,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1562,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1563,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1565,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1566,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1567,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1568,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1569,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1570,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1571,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1572,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1574,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1575,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1577,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/media_import.c:1579,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1579,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1583,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1584,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1587,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1588,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1591,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1592,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1596,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1597,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1600,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1601,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1605,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:1606,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1607,1
    - Dst: gf_fs_load_source
      Src: /src/gpac/src/media_tools/media_import.c:1610,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:1611,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1616,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1617,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/media_tools/media_import.c:1621,1
    - Dst: gf_fs_run
      Src: /src/gpac/src/media_tools/media_import.c:1627,1
    - Dst: gf_fs_get_last_connect_error
      Src: /src/gpac/src/media_tools/media_import.c:1629,1
    - Dst: gf_fs_get_last_process_error
      Src: /src/gpac/src/media_tools/media_import.c:1630,1
    - Dst: gf_fs_print_non_connected
      Src: /src/gpac/src/media_tools/media_import.c:1633,1
    - Dst: gf_fs_print_stats
      Src: /src/gpac/src/media_tools/media_import.c:1634,1
    - Dst: gf_fs_print_connections
      Src: /src/gpac/src/media_tools/media_import.c:1635,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1637,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1638,1
    - Dst: gf_isom_get_last_created_track_id
      Src: /src/gpac/src/media_tools/media_import.c:1641,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/media_tools/media_import.c:1644,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/media_import.c:1645,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_import.c:1655,1
    - Dst: gf_fs_print_unused_args
      Src: /src/gpac/src/media_tools/media_import.c:1663,1
    - Dst: gf_fs_print_non_connected
      Src: /src/gpac/src/media_tools/media_import.c:1664,1
    - Dst: gf_fs_print_stats
      Src: /src/gpac/src/media_tools/media_import.c:1665,1
    - Dst: gf_fs_print_connections
      Src: /src/gpac/src/media_tools/media_import.c:1666,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1667,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1669,1
    CyclomaticComplexity: 156
    EdgeCount: 156
    ICount: 412
    argCount: 1
    argNames:
    - importer
    argTypes:
    - GF_MediaImporter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1672
      start: 1216
    functionDepth: 12
    functionLinenumber: 1216
    functionLinenumberEnd: 1672
    functionName: gf_media_import
    functionSourceFile: /src/gpac/src/media_tools/media_import.c
    functionUses: 6
    functionsReached:
    - gf_free
    - gf_import_isomedia
    - gf_isom_delete
    - gf_odf_desc_del
    - gf_fs_get_last_process_error
    - strcpy
    - gf_fs_run
    - gf_fs_print_stats
    - gf_filter_get_ipid
    - gf_filter_set_setup_failure_callback
    - gf_isom_get_track_by_id
    - gf_sys_is_cov_mode
    - gf_isom_probe_file
    - gf_assert
    - gf_fs_print_non_connected
    - gf_import_afx_sc3dmc
    - sprintf
    - gf_sys_find_global_arg
    - gf_fs_print_connections
    - gf_filter_get_id
    - gf_import_message
    - on_import_setup_failure
    - stricmp
    - gf_dynstrcat
    - gf_filter_assign_id
    - gf_fs_print_unused_args
    - gf_filter_set_source
    - gf_fs_load_filter
    - gf_isom_get_last_created_track_id
    - gf_isom_get_esd
    - strstr
    - gf_isom_has_keep_utc_times
    - strnicmp
    - gf_filter_get_ipid_count
    - gf_fs_del
    - gf_fs_load_source
    - gf_media_import_chapters_file
    - strlen
    - gf_filter_pid_get_property
    - gf_isom_open
    - gf_fs_get_last_connect_error
    - gf_file_ext_start
    - strcmp
    - GF_4CC
    - gf_fs_new_defaults
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_import(GF_MediaImporter *importer)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fread
      Src: /src/gpac/src/media_tools/avilib.c:67,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 3
    argNames:
    - fd
    - buf
    - len
    argTypes:
    - FILE*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 74
    functionName: avi_read
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - gf_fread
    linkageType: ''
    returnType: u32
    signature: u32 avi_read(FILE *fd, char *buf, u32 len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fwrite
      Src: /src/gpac/src/media_tools/avilib.c:81,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - fd
    - buf
    - len
    argTypes:
    - FILE*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 88
    functionName: avi_write
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - gf_fwrite
    linkageType: ''
    returnType: u32
    signature: u32 avi_write (FILE *fd, char *buf, u32 len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 100
    functionName: PAD_EVEN
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PAD_EVEN(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - dst
    - n
    argTypes:
    - unsigned char*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 111
    functionName: long2str
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void long2str(unsigned char *dst, s32 n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - dst
    - n
    argTypes:
    - unsigned char*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionName: short2str
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void short2str(unsigned char *dst, s32 n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - str
    argTypes:
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 133
    functionName: str2ullong
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 str2ullong(unsigned char *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: str2ulong
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 str2ulong(unsigned char *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 142
    functionName: str2ushort
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 str2ushort(unsigned char *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionName: str2ulong_len
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - str2ulong
    linkageType: ''
    returnType: u32
    signature: u32 str2ulong_len (unsigned char *str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:154,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - str
    argTypes:
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 158
    functionName: str2ulong_key
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - str2ulong
    linkageType: ''
    returnType: u32
    signature: u32 str2ulong_key (unsigned char *str)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - AVI
    - j
    argTypes:
    - avi_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 170
    functionName: avi_sampsize
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int avi_sampsize(avi_t *AVI, int j)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:183,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:184,1
    - Dst: avi_write
      Src: /src/gpac/src/media_tools/avilib.c:189,1
    - Dst: avi_write
      Src: /src/gpac/src/media_tools/avilib.c:190,1
    - Dst: avi_write
      Src: /src/gpac/src/media_tools/avilib.c:191,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:193,1
    - Dst: PAD_EVEN
      Src: /src/gpac/src/media_tools/avilib.c:200,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - AVI
    - tag
    - data
    - length
    argTypes:
    - avi_t*
    - unsigned char*
    - unsigned char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 175
    functionDepth: 2
    functionLinenumber: 175
    functionLinenumberEnd: 205
    functionName: avi_add_chunk
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - gf_fseek
    - memcpy
    - long2str
    - avi_write
    - PAD_EVEN
    linkageType: ''
    returnType: int
    signature: int avi_add_chunk(avi_t *AVI, unsigned char *tag, unsigned char *data,
      u32 length)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 208
    functionName: OUTD
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OUTD(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 209
    functionName: OUTW
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OUTW(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 210
    functionName: OUTC
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OUTC(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 211
    functionName: OUTS
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OUTS(s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:218,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:220,1
    - Dst: OUTW
      Src: /src/gpac/src/media_tools/avilib.c:237,1
    - Dst: OUTC
      Src: /src/gpac/src/media_tools/avilib.c:238,1
    - Dst: OUTC
      Src: /src/gpac/src/media_tools/avilib.c:239,1
    - Dst: OUTD
      Src: /src/gpac/src/media_tools/avilib.c:240,1
    - Dst: OUTS
      Src: /src/gpac/src/media_tools/avilib.c:241,1
    - Dst: OUTD
      Src: /src/gpac/src/media_tools/avilib.c:242,1
    - Dst: OUTD
      Src: /src/gpac/src/media_tools/avilib.c:243,1
    - Dst: OUTD
      Src: /src/gpac/src/media_tools/avilib.c:244,1
    - Dst: OUTD
      Src: /src/gpac/src/media_tools/avilib.c:247,1
    - Dst: OUTD
      Src: /src/gpac/src/media_tools/avilib.c:248,1
    - Dst: avi_add_chunk
      Src: /src/gpac/src/media_tools/avilib.c:251,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:253,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 3
    argNames:
    - AVI
    - ch
    - en
    argTypes:
    - avi_t*
    - avistdindex_chunk*
    - avisuperindex_entry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 213
    functionDepth: 3
    functionLinenumber: 213
    functionLinenumberEnd: 256
    functionName: avi_ixnn_entry
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - gf_free
    - OUTD
    - memcpy
    - OUTC
    - OUTW
    - OUTS
    - avi_add_chunk
    - gf_malloc
    linkageType: ''
    returnType: int
    signature: int avi_ixnn_entry(avi_t *AVI, avistdindex_chunk *ch, avisuperindex_entry
      *en)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:269,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:273,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:279,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:280,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:283,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:288,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:290,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:296,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 31
    argCount: 3
    argNames:
    - AVI
    - idxtag
    - si
    argTypes:
    - avi_t*
    - unsigned char*
    - avisuperindex_chunk**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 305
    functionName: avi_init_super_index
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - memcpy
    - memset
    - gf_malloc
    linkageType: ''
    returnType: int
    signature: int avi_init_super_index(avi_t *AVI, unsigned char *idxtag, avisuperindex_chunk
      **si)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:312,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:320,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:324,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - AVI
    - idxtag
    - strtag
    - stdil
    argTypes:
    - avi_t*
    - unsigned char*
    - unsigned char*
    - avistdindex_chunk*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 308
    functionDepth: 0
    functionLinenumber: 308
    functionLinenumberEnd: 333
    functionName: avi_add_std_index
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_malloc
    linkageType: ''
    returnType: int
    signature: "int avi_add_std_index(avi_t *AVI, unsigned char *idxtag, unsigned
      char *strtag,\n                             avistdindex_chunk *stdil)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/avilib.c:345,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 5
    argNames:
    - AVI
    - flags
    - pos
    - len
    - si
    argTypes:
    - avi_t*
    - int
    - u64
    - unsigned int
    - avistdindex_chunk*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 335
    functionDepth: 0
    functionLinenumber: 335
    functionLinenumberEnd: 361
    functionName: avi_add_odml_index_entry_core
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: int
    signature: int avi_add_odml_index_entry_core(avi_t *AVI, int flags, u64 pos, unsigned
      int len, avistdindex_chunk *si)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/media_tools/avilib.c:367,1
    - Dst: avi_init_super_index
      Src: /src/gpac/src/media_tools/avilib.c:377,1
    - Dst: avi_add_std_index
      Src: /src/gpac/src/media_tools/avilib.c:381,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:397,1
    - Dst: avi_init_super_index
      Src: /src/gpac/src/media_tools/avilib.c:399,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/avilib.c:404,1
    - Dst: avi_add_std_index
      Src: /src/gpac/src/media_tools/avilib.c:405,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:438,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:445,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:446,1
    - Dst: avi_add_std_index
      Src: /src/gpac/src/media_tools/avilib.c:452,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/avilib.c:463,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/avilib.c:464,1
    - Dst: avi_add_std_index
      Src: /src/gpac/src/media_tools/avilib.c:465,1
    - Dst: avi_ixnn_entry
      Src: /src/gpac/src/media_tools/avilib.c:474,1
    - Dst: avi_ixnn_entry
      Src: /src/gpac/src/media_tools/avilib.c:485,1
    - Dst: avi_add_chunk
      Src: /src/gpac/src/media_tools/avilib.c:498,1
    - Dst: avi_add_chunk
      Src: /src/gpac/src/media_tools/avilib.c:502,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:506,1
    - Dst: avi_add_odml_index_entry_core
      Src: /src/gpac/src/media_tools/avilib.c:524,1
    - Dst: avi_add_odml_index_entry_core
      Src: /src/gpac/src/media_tools/avilib.c:531,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 98
    argCount: 5
    argNames:
    - AVI
    - tag
    - flags
    - pos
    - len
    argTypes:
    - avi_t*
    - unsigned char*
    - int
    - u64
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 538
      start: 363
    functionDepth: 4
    functionLinenumber: 363
    functionLinenumberEnd: 538
    functionName: avi_add_odml_index_entry
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - avi_init_super_index
    - GF_LOG
    - avi_ixnn_entry
    - sprintf
    - avi_add_odml_index_entry_core
    - avi_add_std_index
    - avi_add_chunk
    - strchr
    linkageType: ''
    returnType: int
    signature: int avi_add_odml_index_entry(avi_t *AVI, unsigned char *tag, int flags,
      u64 pos, unsigned int len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/avilib.c:545,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:559,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:560,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:561,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:562,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 5
    argNames:
    - AVI
    - tag
    - flags
    - pos
    - len
    argTypes:
    - avi_t*
    - unsigned char*
    - int
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 542
    functionDepth: 1
    functionLinenumber: 542
    functionLinenumberEnd: 571
    functionName: avi_add_index_entry
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - memcpy
    - long2str
    - gf_realloc
    linkageType: ''
    returnType: int
    signature: int avi_add_index_entry(avi_t *AVI, unsigned char *tag, int flags,
      u64 pos, u64 len)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 575
    functionDepth: 0
    functionLinenumber: 575
    functionLinenumberEnd: 597
    functionName: AVI_can_read_audio
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_can_read_audio(avi_t *AVI)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:617,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:623,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/avilib.c:625,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:629,1
    - Dst: avi_write
      Src: /src/gpac/src/media_tools/avilib.c:637,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/avilib.c:640,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:642,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 2
    argNames:
    - filename
    - opendml_threshold
    argTypes:
    - char*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 607
    functionDepth: 2
    functionLinenumber: 607
    functionLinenumberEnd: 658
    functionName: AVI_open_output_file
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - memset
    - gf_fopen
    - avi_write
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * AVI_open_output_file(char * filename, u64 opendml_threshold)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/avilib.c:671,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:672,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:674,1
    - Dst: avi_update_header
      Src: /src/gpac/src/media_tools/avilib.c:679,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 5
    argNames:
    - AVI
    - width
    - height
    - fps
    - compressor
    argTypes:
    - avi_t*
    - int
    - int
    - double
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 680
      start: 660
    functionDepth: 1
    functionLinenumber: 660
    functionLinenumberEnd: 680
    functionName: AVI_set_video
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - avi_update_header
    - memset
    - strncmp
    - memcpy
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT AVI_set_video(avi_t *AVI, int width, int height, double fps,
      char *compressor)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:694,1
    - Dst: exit
      Src: /src/gpac/src/media_tools/avilib.c:695,1
    - Dst: avi_update_header
      Src: /src/gpac/src/media_tools/avilib.c:704,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 6
    argNames:
    - AVI
    - channels
    - rate
    - bits
    - format
    - mp3rate
    argTypes:
    - avi_t*
    - int
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 705
      start: 682
    functionDepth: 1
    functionLinenumber: 682
    functionLinenumberEnd: 705
    functionName: AVI_set_audio
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - avi_update_header
    - GF_LOG
    - exit
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT AVI_set_audio(avi_t *AVI, int channels, int rate, int bits,
      int format, int mp3rate)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 710
      start: 707
    functionDepth: 0
    functionLinenumber: 707
    functionLinenumberEnd: 710
    functionName: OUT4CC
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OUT4CC(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 714
      start: 711
    functionDepth: 0
    functionLinenumber: 711
    functionLinenumberEnd: 714
    functionName: OUTLONG
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OUTLONG(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 721
      start: 715
    functionDepth: 0
    functionLinenumber: 715
    functionLinenumberEnd: 721
    functionName: OUTSHRT
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OUTSHRT(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 727
      start: 722
    functionDepth: 0
    functionLinenumber: 722
    functionLinenumberEnd: 727
    functionName: OUTCHR
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OUTCHR(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - d
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 728
    functionDepth: 0
    functionLinenumber: 728
    functionLinenumberEnd: 735
    functionName: OUTMEM
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OUTMEM(d, s)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:767,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:768,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:769,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:773,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:774,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:776,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:789,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:790,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:791,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:794,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:795,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:802,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:803,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:804,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:806,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:808,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:809,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:810,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:812,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:813,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:814,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:815,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:820,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:821,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:823,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:827,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:828,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:829,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:830,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:831,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:832,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:833,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:834,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:835,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:836,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:837,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:838,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:839,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:840,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:841,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:842,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:851,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:852,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:853,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:854,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:855,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:856,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:857,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:858,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:860,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:861,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:862,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:863,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:864,1
    - Dst: OUTMEM
      Src: /src/gpac/src/media_tools/avilib.c:868,1
    - Dst: OUTCHR
      Src: /src/gpac/src/media_tools/avilib.c:870,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:876,1
    - Dst: avi_sampsize
      Src: /src/gpac/src/media_tools/avilib.c:882,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:884,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:885,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:887,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:891,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:892,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:893,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:897,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:900,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:901,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:902,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:905,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:906,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:907,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:908,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:909,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:910,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:913,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:915,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:916,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:922,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:923,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:924,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:925,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:926,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:928,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:931,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:934,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:938,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:943,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:956,1
    - Dst: exit
      Src: /src/gpac/src/media_tools/avilib.c:957,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:960,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:961,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:962,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:968,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:969,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:970,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:975,1
    - Dst: avi_write
      Src: /src/gpac/src/media_tools/avilib.c:976,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:977,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 128
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 984
      start: 738
    functionDepth: 2
    functionLinenumber: 738
    functionLinenumberEnd: 984
    functionName: avi_update_header
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 2
    functionsReached:
    - OUTSHRT
    - avi_sampsize
    - gf_fseek
    - GF_LOG
    - OUT4CC
    - OUTMEM
    - long2str
    - memset
    - avi_write
    - exit
    - OUTLONG
    - OUTCHR
    linkageType: ''
    returnType: int
    signature: int avi_update_header(avi_t *AVI)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:1033,1
    - Dst: avi_ixnn_entry
      Src: /src/gpac/src/media_tools/avilib.c:1035,1
    - Dst: avi_ixnn_entry
      Src: /src/gpac/src/media_tools/avilib.c:1046,1
    - Dst: avi_add_chunk
      Src: /src/gpac/src/media_tools/avilib.c:1074,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1100,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1102,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1104,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1107,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1111,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1112,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1114,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1127,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1128,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1129,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1132,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1133,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1138,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1139,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1140,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1142,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1148,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1149,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1150,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1152,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1153,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1154,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1155,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1160,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1161,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1163,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1167,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1168,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1169,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1170,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1171,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1172,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1173,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1174,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1175,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1176,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1177,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1178,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1179,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1180,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1181,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1182,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1191,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1192,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1193,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1194,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1195,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1196,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1197,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1198,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1200,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1201,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1202,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1203,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1204,1
    - Dst: OUTMEM
      Src: /src/gpac/src/media_tools/avilib.c:1208,1
    - Dst: OUTCHR
      Src: /src/gpac/src/media_tools/avilib.c:1210,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1218,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1219,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1220,1
    - Dst: OUTCHR
      Src: /src/gpac/src/media_tools/avilib.c:1221,1
    - Dst: OUTCHR
      Src: /src/gpac/src/media_tools/avilib.c:1222,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1223,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1224,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1225,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1226,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1227,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1234,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1235,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1236,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1237,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:1244,1
    - Dst: avi_sampsize
      Src: /src/gpac/src/media_tools/avilib.c:1256,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1276,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1277,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1279,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1283,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1284,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1285,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1289,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1292,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1293,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1294,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1298,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1299,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1300,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1301,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1302,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1303,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1304,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1305,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1306,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1308,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1309,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1310,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1311,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1312,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1313,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1314,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1315,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1316,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1321,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1325,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1326,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1327,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1328,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1330,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1331,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1332,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1334,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1335,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1336,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1337,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1338,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1339,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1343,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1344,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1345,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1346,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1348,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1349,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1350,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1352,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1353,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1354,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1355,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1356,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1357,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1361,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1362,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1363,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1364,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1366,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1367,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1368,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1369,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1381,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1382,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1383,1
    - Dst: OUTCHR
      Src: /src/gpac/src/media_tools/avilib.c:1384,1
    - Dst: OUTCHR
      Src: /src/gpac/src/media_tools/avilib.c:1385,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1386,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1387,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1388,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1389,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1390,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1407,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1408,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1409,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1410,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:1414,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1418,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1419,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1420,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1421,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1422,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1423,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:1428,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1434,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1438,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1439,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1441,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:1443,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/media_tools/avilib.c:1444,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/avilib.c:1445,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/avilib.c:1447,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/media_tools/avilib.c:1447,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/avilib.c:1449,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1452,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:1454,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:1455,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:1461,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:1487,1
    - Dst: exit
      Src: /src/gpac/src/media_tools/avilib.c:1488,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1491,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1492,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:1493,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1499,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1500,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1501,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:1506,1
    - Dst: avi_write
      Src: /src/gpac/src/media_tools/avilib.c:1507,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:1524,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:1526,1
    - Dst: avi_write
      Src: /src/gpac/src/media_tools/avilib.c:1527,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:1530,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:1532,1
    - Dst: avi_write
      Src: /src/gpac/src/media_tools/avilib.c:1533,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 298
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1541
      start: 1008
    functionDepth: 4
    functionLinenumber: 1008
    functionLinenumberEnd: 1541
    functionName: avi_close_output_file
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - OUTMEM
    - memset
    - OUTLONG
    - snprintf
    - gf_fseek
    - memcpy
    - avi_write
    - exit
    - OUTSHRT
    - GF_LOG
    - OUT4CC
    - gf_sys_is_test_mode
    - strlen
    - OUTCHR
    - avi_sampsize
    - avi_ixnn_entry
    - long2str
    - gf_gpac_version
    - avi_add_chunk
    linkageType: ''
    returnType: int
    signature: int avi_close_output_file(avi_t *AVI)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/avilib.c:1575,1
    - Dst: avi_add_index_entry
      Src: /src/gpac/src/media_tools/avilib.c:1578,1
    - Dst: avi_add_odml_index_entry
      Src: /src/gpac/src/media_tools/avilib.c:1579,1
    - Dst: avi_add_index_entry
      Src: /src/gpac/src/media_tools/avilib.c:1581,1
    - Dst: avi_add_odml_index_entry
      Src: /src/gpac/src/media_tools/avilib.c:1582,1
    - Dst: avi_add_chunk
      Src: /src/gpac/src/media_tools/avilib.c:1590,1
    - Dst: avi_add_chunk
      Src: /src/gpac/src/media_tools/avilib.c:1592,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 5
    argNames:
    - AVI
    - data
    - length
    - audio
    - keyframe
    argTypes:
    - avi_t*
    - char*
    - unsigned int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1597
      start: 1553
    functionDepth: 5
    functionLinenumber: 1553
    functionLinenumberEnd: 1597
    functionName: avi_write_data
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - avi_add_chunk
    - avi_add_index_entry
    - sprintf
    - avi_add_odml_index_entry
    linkageType: ''
    returnType: int
    signature: int avi_write_data(avi_t *AVI, char *data, unsigned int length, int
      audio, int keyframe)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: avi_write_data
      Src: /src/gpac/src/media_tools/avilib.c:1611,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 4
    argNames:
    - AVI
    - data
    - bytes
    - keyframe
    argTypes:
    - avi_t*
    - u8*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1617
      start: 1599
    functionDepth: 6
    functionLinenumber: 1599
    functionLinenumberEnd: 1617
    functionName: AVI_write_frame
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - avi_write_data
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT AVI_write_frame(avi_t *AVI, u8 *data, int bytes, int keyframe)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: avi_add_index_entry
      Src: /src/gpac/src/media_tools/avilib.c:1628,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1632
      start: 1620
    functionDepth: 2
    functionLinenumber: 1620
    functionLinenumberEnd: 1632
    functionName: AVI_dup_frame
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - avi_add_index_entry
    linkageType: ''
    returnType: int
    signature: int AVI_dup_frame(avi_t *AVI)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: avi_write_data
      Src: /src/gpac/src/media_tools/avilib.c:1643,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - AVI
    - data
    - bytes
    argTypes:
    - avi_t*
    - u8*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1647
      start: 1635
    functionDepth: 6
    functionLinenumber: 1635
    functionLinenumberEnd: 1647
    functionName: AVI_write_audio
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - avi_write_data
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT AVI_write_audio(avi_t *AVI, u8 *data, int bytes)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:1666,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:1667,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:1670,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:1677,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:1678,1
    - Dst: avi_write
      Src: /src/gpac/src/media_tools/avilib.c:1679,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:1681,1
    - Dst: PAD_EVEN
      Src: /src/gpac/src/media_tools/avilib.c:1683,1
    - Dst: avi_write
      Src: /src/gpac/src/media_tools/avilib.c:1686,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 3
    argNames:
    - AVI
    - data
    - bytes
    argTypes:
    - avi_t*
    - u8*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1690
      start: 1651
    functionDepth: 2
    functionLinenumber: 1651
    functionLinenumberEnd: 1690
    functionName: AVI_append_audio
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - gf_fseek
    - long2str
    - avi_write
    - str2ulong
    - PAD_EVEN
    linkageType: ''
    returnType: int
    signature: int AVI_append_audio(avi_t *AVI, u8 *data, int bytes)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1697
      start: 1692
    functionDepth: 0
    functionLinenumber: 1692
    functionLinenumberEnd: 1697
    functionName: AVI_bytes_remain
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 AVI_bytes_remain(avi_t *AVI)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1704
      start: 1699
    functionDepth: 0
    functionLinenumber: 1699
    functionLinenumberEnd: 1704
    functionName: AVI_bytes_written
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 AVI_bytes_written(avi_t *AVI)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - AVI
    - track
    argTypes:
    - avi_t*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1715
      start: 1707
    functionDepth: 0
    functionLinenumber: 1707
    functionLinenumberEnd: 1715
    functionName: AVI_set_audio_track
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_set_audio_track(avi_t *AVI, u32 track)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1720
      start: 1717
    functionDepth: 0
    functionLinenumber: 1717
    functionLinenumberEnd: 1720
    functionName: AVI_get_audio_track
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_get_audio_track(avi_t *AVI)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - AVI
    - is_vbr
    argTypes:
    - avi_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1726
      start: 1723
    functionDepth: 0
    functionLinenumber: 1723
    functionLinenumberEnd: 1726
    functionName: AVI_set_audio_vbr
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void AVI_set_audio_vbr(avi_t *AVI, int is_vbr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1731
      start: 1728
    functionDepth: 0
    functionLinenumber: 1728
    functionLinenumberEnd: 1731
    functionName: AVI_get_audio_vbr
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_get_audio_vbr(avi_t *AVI)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: avi_close_output_file
      Src: /src/gpac/src/media_tools/avilib.c:1751,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/avilib.c:1757,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1758,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1759,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1761,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1765,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1766,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1768,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1770,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1774,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1777,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1782,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1783,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1785,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1787,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1792,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1795,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1797,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1799,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 48
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1801
      start: 1741
    functionDepth: 5
    functionLinenumber: 1741
    functionLinenumberEnd: 1801
    functionName: AVI_close
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - gf_free
    - avi_close_output_file
    - gf_fclose
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT AVI_close(avi_t *AVI)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1811
      start: 1804
    functionDepth: 0
    functionLinenumber: 1804
    functionLinenumberEnd: 1811
    functionName: ERR_EXIT
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ERR_EXIT(x)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:1819,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:1825,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/avilib.c:1831,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1835,1
    - Dst: avi_parse_input_file
      Src: /src/gpac/src/media_tools/avilib.c:1840,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - filename
    - getIndex
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1849
      start: 1813
    functionDepth: 1
    functionLinenumber: 1813
    functionLinenumberEnd: 1849
    functionName: AVI_open_input_file
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - gf_free
    - avi_parse_input_file
    - memset
    - gf_fopen
    - gf_malloc
    linkageType: ''
    returnType: avi_t
    signature: avi_t *AVI_open_input_file(char *filename, int getIndex)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:1858,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:1864,1
    - Dst: avi_parse_input_file
      Src: /src/gpac/src/media_tools/avilib.c:1872,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - fd
    - getIndex
    argTypes:
    - FILE*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1882
      start: 1852
    functionDepth: 1
    functionLinenumber: 1852
    functionLinenumberEnd: 1882
    functionName: AVI_open_fd
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    - avi_parse_input_file
    linkageType: ''
    returnType: avi_t
    signature: avi_t *AVI_open_fd(FILE *fd, int getIndex)
  - BBCount: 118
    BranchProfiles: []
    Callsites:
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:1911,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1912,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:1914,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:1914,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1915,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:1925,1
    - Dst: gf_ftell
      Src: /src/gpac/src/media_tools/avilib.c:1926,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:1933,1
    - Dst: PAD_EVEN
      Src: /src/gpac/src/media_tools/avilib.c:1934,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:1936,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:1938,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1938,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:1940,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1942,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1945,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:1946,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1947,1
    - Dst: gf_ftell
      Src: /src/gpac/src/media_tools/avilib.c:1951,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:1953,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1954,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:1957,1
    - Dst: gf_ftell
      Src: /src/gpac/src/media_tools/avilib.c:1959,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:1960,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:1962,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:1964,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1970,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:1971,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1973,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:1975,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1976,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1979,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:1983,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1986,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1987,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1993,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:1997,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2000,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2005,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2007,1
    - Dst: PAD_EVEN
      Src: /src/gpac/src/media_tools/avilib.c:2008,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2009,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2014,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2017,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2019,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2021,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2023,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2025,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2032,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2033,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2035,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2040,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2043,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2051,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2055,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2057,1
    - Dst: avi_sampsize
      Src: /src/gpac/src/media_tools/avilib.c:2057,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2061,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2063,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2065,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2074,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2075,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2082,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2084,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2086,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2088,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2092,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2097,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2101,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2102,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2103,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2105,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2108,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2109,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2111,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2113,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2115,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2116,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2121,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2125,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/avilib.c:2126,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2127,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2128,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2129,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2135,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2145,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:2147,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2148,1
    - Dst: str2ushort
      Src: /src/gpac/src/media_tools/avilib.c:2149,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/avilib.c:2151,1
    - Dst: str2ushort
      Src: /src/gpac/src/media_tools/avilib.c:2152,1
    - Dst: gf_ftell
      Src: /src/gpac/src/media_tools/avilib.c:2154,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2155,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:2159,1
    - Dst: str2ushort
      Src: /src/gpac/src/media_tools/avilib.c:2160,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2161,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2165,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2169,1
    - Dst: str2ushort
      Src: /src/gpac/src/media_tools/avilib.c:2171,1
    - Dst: str2ushort
      Src: /src/gpac/src/media_tools/avilib.c:2176,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2177,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2179,1
    - Dst: str2ushort
      Src: /src/gpac/src/media_tools/avilib.c:2181,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2185,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2193,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2195,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:2196,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2197,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2199,1
    - Dst: str2ushort
      Src: /src/gpac/src/media_tools/avilib.c:2201,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2207,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2209,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2218,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2224,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2229,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2233,1
    - Dst: str2ullong
      Src: /src/gpac/src/media_tools/avilib.c:2237,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2239,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2241,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2245,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2254,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2256,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2257,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2258,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2259,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2260,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2261,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2273,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/avilib.c:2275,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2276,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2278,1
    - Dst: str2ushort
      Src: /src/gpac/src/media_tools/avilib.c:2280,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2286,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2288,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2297,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2304,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2311,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2315,1
    - Dst: str2ullong
      Src: /src/gpac/src/media_tools/avilib.c:2324,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2326,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2328,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2332,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2342,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2343,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2344,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2345,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2346,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2347,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2348,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2354,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2355,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2356,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2369,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2372,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2394,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2411,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2412,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2414,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2415,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2417,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:2418,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2418,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2419,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2419,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2425,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:2426,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2426,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2427,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2427,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2440,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:2446,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2447,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2451,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2453,1
    - Dst: gf_ftell
      Src: /src/gpac/src/media_tools/avilib.c:2464,1
    - Dst: avi_add_index_entry
      Src: /src/gpac/src/media_tools/avilib.c:2465,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2468,1
    - Dst: PAD_EVEN
      Src: /src/gpac/src/media_tools/avilib.c:2468,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2504,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2506,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2507,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:2511,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2512,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2516,1
    - Dst: str2ullong
      Src: /src/gpac/src/media_tools/avilib.c:2520,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2527,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2528,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2529,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/avilib.c:2532,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2535,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2536,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2537,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2545,1
    - Dst: str2ulong_len
      Src: /src/gpac/src/media_tools/avilib.c:2547,1
    - Dst: str2ulong_key
      Src: /src/gpac/src/media_tools/avilib.c:2548,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2570,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2588,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2594,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2596,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2597,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:2601,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2602,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2606,1
    - Dst: str2ullong
      Src: /src/gpac/src/media_tools/avilib.c:2611,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/avilib.c:2616,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2620,1
    - Dst: str2ulong_len
      Src: /src/gpac/src/media_tools/avilib.c:2622,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2639,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2655,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2659,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2666,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2668,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2672,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2673,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:2674,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2675,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:2691,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2692,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/avilib.c:2700,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2703,1
    - Dst: gf_ftell
      Src: /src/gpac/src/media_tools/avilib.c:2721,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2729,1
    - Dst: PAD_EVEN
      Src: /src/gpac/src/media_tools/avilib.c:2729,1
    - Dst: gf_ftell
      Src: /src/gpac/src/media_tools/avilib.c:2739,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2745,1
    - Dst: PAD_EVEN
      Src: /src/gpac/src/media_tools/avilib.c:2745,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2748,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2753,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2762,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2780,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2782,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2789,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2790,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2791,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2795,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2796,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:2797,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2798,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2813,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2814,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2815,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2816,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2823,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2824,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2825,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2840,1
    CyclomaticComplexity: 204
    EdgeCount: 204
    ICount: 595
    argCount: 2
    argNames:
    - AVI
    - getIndex
    argTypes:
    - avi_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2844
      start: 1885
    functionDepth: 2
    functionLinenumber: 1885
    functionLinenumberEnd: 2844
    functionName: avi_parse_input_file
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 2
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - memset
    - str2ulong_key
    - gf_realloc
    - str2ulong_len
    - gf_fseek
    - memcpy
    - str2ushort
    - str2ulong
    - gf_ftell
    - GF_LOG
    - avi_read
    - MIN
    - strnicmp
    - gf_malloc
    - PAD_EVEN
    - avi_sampsize
    - str2ullong
    - ERR_EXIT
    - avi_add_index_entry
    linkageType: ''
    returnType: int
    signature: int avi_parse_input_file(avi_t *AVI, int getIndex)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2849
      start: 2846
    functionDepth: 0
    functionLinenumber: 2846
    functionLinenumberEnd: 2849
    functionName: AVI_video_frames
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_video_frames(avi_t *AVI)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2853
      start: 2850
    functionDepth: 0
    functionLinenumber: 2850
    functionLinenumberEnd: 2853
    functionName: AVI_video_width
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_video_width(avi_t *AVI)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2857
      start: 2854
    functionDepth: 0
    functionLinenumber: 2854
    functionLinenumberEnd: 2857
    functionName: AVI_video_height
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_video_height(avi_t *AVI)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2861
      start: 2858
    functionDepth: 0
    functionLinenumber: 2858
    functionLinenumberEnd: 2861
    functionName: AVI_frame_rate
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: double
    signature: double AVI_frame_rate(avi_t *AVI)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2865
      start: 2862
    functionDepth: 0
    functionLinenumber: 2862
    functionLinenumberEnd: 2865
    functionName: AVI_video_compressor
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * AVI_video_compressor(avi_t *AVI)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2871
      start: 2868
    functionDepth: 0
    functionLinenumber: 2868
    functionLinenumberEnd: 2871
    functionName: AVI_max_video_chunk
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_max_video_chunk(avi_t *AVI)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2877
      start: 2874
    functionDepth: 0
    functionLinenumber: 2874
    functionLinenumberEnd: 2877
    functionName: AVI_audio_tracks
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_audio_tracks(avi_t *AVI)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2882
      start: 2879
    functionDepth: 0
    functionLinenumber: 2879
    functionLinenumberEnd: 2882
    functionName: AVI_audio_channels
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_audio_channels(avi_t *AVI)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2887
      start: 2884
    functionDepth: 0
    functionLinenumber: 2884
    functionLinenumberEnd: 2887
    functionName: AVI_audio_mp3rate
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_audio_mp3rate(avi_t *AVI)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2893
      start: 2890
    functionDepth: 0
    functionLinenumber: 2890
    functionLinenumberEnd: 2893
    functionName: AVI_audio_padrate
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_audio_padrate(avi_t *AVI)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2899
      start: 2896
    functionDepth: 0
    functionLinenumber: 2896
    functionLinenumberEnd: 2899
    functionName: AVI_audio_bits
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_audio_bits(avi_t *AVI)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2904
      start: 2901
    functionDepth: 0
    functionLinenumber: 2901
    functionLinenumberEnd: 2904
    functionName: AVI_audio_format
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_audio_format(avi_t *AVI)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2909
      start: 2906
    functionDepth: 0
    functionLinenumber: 2906
    functionLinenumberEnd: 2909
    functionName: AVI_audio_rate
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_audio_rate(avi_t *AVI)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - AVI
    - frame
    argTypes:
    - avi_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2925
      start: 2912
    functionDepth: 0
    functionLinenumber: 2912
    functionLinenumberEnd: 2925
    functionName: AVI_frame_size
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_frame_size(avi_t *AVI, int frame)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - AVI
    - frame
    argTypes:
    - avi_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2940
      start: 2927
    functionDepth: 0
    functionLinenumber: 2927
    functionLinenumberEnd: 2940
    functionName: AVI_audio_size
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_audio_size(avi_t *AVI, int frame)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - AVI
    - frame
    argTypes:
    - avi_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2955
      start: 2942
    functionDepth: 0
    functionLinenumber: 2942
    functionLinenumberEnd: 2955
    functionName: AVI_get_video_position
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 AVI_get_video_position(avi_t *AVI, int frame)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2965,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2968
      start: 2958
    functionDepth: 0
    functionLinenumber: 2958
    functionLinenumberEnd: 2968
    functionName: AVI_seek_start
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - gf_fseek
    linkageType: ''
    returnType: int
    signature: int AVI_seek_start(avi_t *AVI)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - AVI
    - frame
    argTypes:
    - avi_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2984
      start: 2970
    functionDepth: 0
    functionLinenumber: 2970
    functionLinenumberEnd: 2984
    functionName: AVI_set_video_position
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_set_video_position(avi_t *AVI, int frame)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - AVI
    - bitrate
    argTypes:
    - avi_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2996
      start: 2987
    functionDepth: 0
    functionLinenumber: 2987
    functionLinenumberEnd: 2996
    functionName: AVI_set_audio_bitrate
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_set_audio_bitrate(avi_t *AVI, int bitrate)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:3022,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:3025,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 3
    argNames:
    - AVI
    - vidbuf
    - keyframe
    argTypes:
    - avi_t*
    - u8*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3032
      start: 2999
    functionDepth: 2
    functionLinenumber: 2999
    functionLinenumberEnd: 3032
    functionName: AVI_read_frame
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - avi_read
    - gf_fseek
    linkageType: ''
    returnType: int
    signature: int AVI_read_frame(avi_t *AVI, u8 *vidbuf, int *keyframe)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3047
      start: 3035
    functionDepth: 0
    functionLinenumber: 3035
    functionLinenumberEnd: 3047
    functionName: AVI_get_audio_position_index
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_get_audio_position_index(avi_t *AVI)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - AVI
    - indexpos
    argTypes:
    - avi_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3068
      start: 3049
    functionDepth: 0
    functionLinenumber: 3049
    functionLinenumberEnd: 3068
    functionName: AVI_set_audio_position_index
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_set_audio_position_index(avi_t *AVI, int indexpos)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - AVI
    - byte
    argTypes:
    - avi_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3105
      start: 3072
    functionDepth: 0
    functionLinenumber: 3072
    functionLinenumberEnd: 3105
    functionName: AVI_set_audio_position
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int AVI_set_audio_position(avi_t *AVI, int byte)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:40,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:40,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:42,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:42,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:44,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:46,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:46,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:48,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:48,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:50,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:50,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:52,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:52,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:54,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:56,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:59,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 21
    argCount: 1
    argNames:
    - cr_type
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 61
    functionName: cryptinfo_get_crypt_type
    functionSourceFile: /src/gpac/src/media_tools/crypt_tools.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - stricmp
    linkageType: ''
    returnType: u32
    signature: u32 cryptinfo_get_crypt_type(char *cr_type)
  - BBCount: 143
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:70,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:74,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:77,1
    - Dst: cryptinfo_get_crypt_type
      Src: /src/gpac/src/media_tools/crypt_tools.c:78,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:85,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/crypt_tools.c:88,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:90,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/crypt_tools.c:100,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:102,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:103,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/crypt_tools.c:107,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/crypt_tools.c:108,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:112,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:112,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:113,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:115,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:119,1
    - Dst: cryptinfo_get_crypt_type
      Src: /src/gpac/src/media_tools/crypt_tools.c:120,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:122,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:125,1
    - Dst: gf_bin128_parse
      Src: /src/gpac/src/media_tools/crypt_tools.c:128,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:130,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:135,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:138,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/crypt_tools.c:139,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/crypt_tools.c:143,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/crypt_tools.c:144,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:149,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:149,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:150,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/crypt_tools.c:151,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:153,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:153,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:154,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/crypt_tools.c:155,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:157,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:158,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:159,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:160,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:161,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:163,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/crypt_tools.c:165,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:169,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:172,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:175,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/crypt_tools.c:176,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:179,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:184,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:186,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:189,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:190,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:191,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:192,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:194,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:197,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/crypt_tools.c:199,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:201,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:202,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:203,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:204,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:206,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:206,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:207,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:208,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:209,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:210,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:210,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:212,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:215,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/crypt_tools.c:216,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/crypt_tools.c:216,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:218,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:220,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:221,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:226,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:227,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:229,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:231,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/crypt_tools.c:232,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/crypt_tools.c:232,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/crypt_tools.c:234,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/crypt_tools.c:237,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/crypt_tools.c:238,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/crypt_tools.c:241,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:244,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:245,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:246,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:248,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:251,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:252,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:253,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:254,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:254,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:256,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:259,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:261,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:263,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:265,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:267,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:269,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:272,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:275,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:276,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:276,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:276,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:279,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:279,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:279,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:283,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:286,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/crypt_tools.c:287,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/crypt_tools.c:288,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/media_tools/crypt_tools.c:289,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/crypt_tools.c:289,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:292,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:293,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:295,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:296,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:298,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:299,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:301,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:302,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:304,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:305,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:307,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:309,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:313,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:314,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:317,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/crypt_tools.c:318,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/crypt_tools.c:318,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/crypt_tools.c:320,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/crypt_tools.c:323,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/crypt_tools.c:324,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/crypt_tools.c:327,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:330,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:331,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:333,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:334,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:336,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:341,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:342,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:343,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:346,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/crypt_tools.c:349,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:351,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:352,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/crypt_tools.c:353,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:355,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:358,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:361,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:368,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:369,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:369,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:370,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/crypt_tools.c:375,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:377,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:378,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:380,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:381,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/crypt_tools.c:382,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:385,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:403,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:409,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/crypt_tools.c:409,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:418,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/crypt_tools.c:418,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:422,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/crypt_tools.c:422,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:434,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/crypt_tools.c:437,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/crypt_tools.c:441,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/crypt_tools.c:442,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:450,1
    - Dst: gf_bin128_parse
      Src: /src/gpac/src/media_tools/crypt_tools.c:451,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:453,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:458,1
    - Dst: gf_bin128_parse
      Src: /src/gpac/src/media_tools/crypt_tools.c:459,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:461,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:466,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/crypt_tools.c:467,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:468,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:472,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/crypt_tools.c:473,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:475,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:476,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:478,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:480,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/crypt_tools.c:481,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/crypt_tools.c:481,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/crypt_tools.c:483,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/crypt_tools.c:486,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/crypt_tools.c:487,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/crypt_tools.c:490,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:494,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:495,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/crypt_tools.c:496,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:498,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:499,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/crypt_tools.c:500,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:502,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:503,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:505,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:506,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:508,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/crypt_tools.c:509,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:512,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/crypt_tools.c:518,1
    CyclomaticComplexity: 182
    EdgeCount: 182
    ICount: 447
    argCount: 5
    argNames:
    - sax_cbck
    - node_name
    - name_space
    - attributes
    - nb_attributes
    argTypes:
    - void*
    - char*
    - char*
    - GF_XMLAttribute*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 63
    functionDepth: 2
    functionLinenumber: 63
    functionLinenumberEnd: 521
    functionName: cryptinfo_node_start
    functionSourceFile: /src/gpac/src/media_tools/crypt_tools.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - strcpy
    - memset
    - atoi
    - cryptinfo_get_crypt_type
    - strchr
    - gf_bin128_parse
    - gf_realloc
    - gf_4cc_to_str
    - gf_strdup
    - memcpy
    - sprintf
    - strncmp
    - gf_list_add
    - stricmp
    - sscanf
    - GF_LOG
    - strstr
    - strnicmp
    - gf_list_last
    - strlen
    - gf_malloc
    - gf_base64_encode
    - strcmp
    linkageType: ''
    returnType: void
    signature: void cryptinfo_node_start(void *sax_cbck, const char *node_name, const
      char *name_space, const GF_XMLAttribute *attributes, u32 nb_attributes)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/crypt_tools.c:526,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - sax_cbck
    - node_name
    - name_space
    argTypes:
    - void*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 523
    functionDepth: 0
    functionLinenumber: 523
    functionLinenumberEnd: 530
    functionName: cryptinfo_node_end
    functionSourceFile: /src/gpac/src/media_tools/crypt_tools.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void cryptinfo_node_end(void *sax_cbck, const char *node_name, const
      char *name_space)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/crypt_tools.c:540,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/crypt_tools.c:541,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/crypt_tools.c:542,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/crypt_tools.c:544,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/crypt_tools.c:545,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:546,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - sax_cbck
    - text
    - is_cdata
    argTypes:
    - void*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 547
      start: 532
    functionDepth: 1
    functionLinenumber: 532
    functionLinenumberEnd: 547
    functionName: cryptinfo_text
    functionSourceFile: /src/gpac/src/media_tools/crypt_tools.c
    functionUses: 0
    functionsReached:
    - strcat
    - strcpy
    - gf_list_last
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void cryptinfo_text(void *sax_cbck, const char *text, Bool is_cdata)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/crypt_tools.c:551,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/crypt_tools.c:553,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:556,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:558,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:560,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:562,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:563,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:564,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:565,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:566,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:567,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:568,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/media_tools/crypt_tools.c:569,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:570,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/crypt_tools.c:572,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:573,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 29
    argCount: 1
    argNames:
    - info
    argTypes:
    - GF_CryptInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 574
      start: 549
    functionDepth: 1
    functionLinenumber: 549
    functionLinenumberEnd: 574
    functionName: gf_crypt_info_del
    functionSourceFile: /src/gpac/src/media_tools/crypt_tools.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - gf_list_last
    - gf_list_rem_last
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_crypt_info_del(GF_CryptInfo *info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/crypt_tools.c:581,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/crypt_tools.c:586,1
    - Dst: gf_xml_sax_new
      Src: /src/gpac/src/media_tools/crypt_tools.c:587,1
    - Dst: gf_xml_sax_parse_file
      Src: /src/gpac/src/media_tools/crypt_tools.c:588,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:590,1
    - Dst: gf_xml_sax_get_error
      Src: /src/gpac/src/media_tools/crypt_tools.c:590,1
    - Dst: gf_crypt_info_del
      Src: /src/gpac/src/media_tools/crypt_tools.c:592,1
    - Dst: gf_crypt_info_del
      Src: /src/gpac/src/media_tools/crypt_tools.c:596,1
    - Dst: gf_xml_sax_del
      Src: /src/gpac/src/media_tools/crypt_tools.c:601,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 2
    argNames:
    - file
    - out_err
    argTypes:
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 576
    functionDepth: 2
    functionLinenumber: 576
    functionLinenumberEnd: 603
    functionName: gf_crypt_info_load
    functionSourceFile: /src/gpac/src/media_tools/crypt_tools.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_crypt_info_del
    - GF_SAFEALLOC
    - GF_LOG
    - gf_xml_sax_del
    - gf_xml_sax_parse_file
    - gf_xml_sax_new
    - gf_xml_sax_get_error
    linkageType: ''
    returnType: GF_CryptInfo
    signature: GF_CryptInfo *gf_crypt_info_load(const char *file, GF_Err *out_err)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:623,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/crypt_tools.c:625,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - _udta
    - evt
    argTypes:
    - void*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 609
    functionDepth: 1
    functionLinenumber: 609
    functionLinenumberEnd: 628
    functionName: on_decrypt_event
    functionSourceFile: /src/gpac/src/media_tools/crypt_tools.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - fprintf
    linkageType: ''
    returnType: Bool
    signature: Bool on_decrypt_event(void *_udta, GF_Event *evt)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_new_defaults
      Src: /src/gpac/src/media_tools/crypt_tools.c:639,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:641,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/crypt_tools.c:647,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:648,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:650,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:651,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/crypt_tools.c:653,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:654,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/crypt_tools.c:658,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:659,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:663,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:665,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:666,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/crypt_tools.c:668,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:669,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/crypt_tools.c:672,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:673,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:677,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:679,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/crypt_tools.c:682,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:683,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:685,1
    - Dst: gf_isom_has_keep_utc_times
      Src: /src/gpac/src/media_tools/crypt_tools.c:689,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:690,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/media_tools/crypt_tools.c:692,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:693,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/crypt_tools.c:697,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:698,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/media_tools/crypt_tools.c:702,1
    - Dst: gf_log_get_tool_level
      Src: /src/gpac/src/media_tools/crypt_tools.c:704,1
    - Dst: gf_sys_is_quiet
      Src: /src/gpac/src/media_tools/crypt_tools.c:706,1
    - Dst: gf_fs_enable_reporting
      Src: /src/gpac/src/media_tools/crypt_tools.c:708,1
    - Dst: gf_fs_set_ui_callback
      Src: /src/gpac/src/media_tools/crypt_tools.c:709,1
    - Dst: on_decrypt_event
      Src: /src/gpac/src/media_tools/crypt_tools.c:713,1
    - Dst: gf_fs_run
      Src: /src/gpac/src/media_tools/crypt_tools.c:717,1
    - Dst: gf_fs_get_last_connect_error
      Src: /src/gpac/src/media_tools/crypt_tools.c:719,1
    - Dst: gf_fs_get_last_process_error
      Src: /src/gpac/src/media_tools/crypt_tools.c:720,1
    - Dst: gf_fs_print_unused_args
      Src: /src/gpac/src/media_tools/crypt_tools.c:722,1
    - Dst: gf_fs_print_non_connected
      Src: /src/gpac/src/media_tools/crypt_tools.c:723,1
    - Dst: gf_fs_print_stats
      Src: /src/gpac/src/media_tools/crypt_tools.c:724,1
    - Dst: gf_fs_print_connections
      Src: /src/gpac/src/media_tools/crypt_tools.c:725,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/crypt_tools.c:727,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 76
    argCount: 6
    argNames:
    - mp4
    - drm_file
    - dst_file
    - interleave_time
    - fragment_name
    - fs_dump_flags
    argTypes:
    - GF_ISOFile*
    - char*
    - char*
    - Double
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 630
    functionDepth: 2
    functionLinenumber: 630
    functionLinenumberEnd: 729
    functionName: gf_decrypt_file_ex
    functionSourceFile: /src/gpac/src/media_tools/crypt_tools.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fs_set_ui_callback
    - gf_fs_get_last_process_error
    - gf_fs_run
    - gf_fs_print_stats
    - on_decrypt_event
    - gf_fs_print_non_connected
    - gf_fs_enable_reporting
    - sprintf
    - gf_sys_is_quiet
    - gf_fs_print_connections
    - gf_dynstrcat
    - gf_fs_print_unused_args
    - gf_fs_load_filter
    - GF_LOG
    - gf_sys_is_test_mode
    - gf_isom_has_keep_utc_times
    - gf_log_get_tool_level
    - gf_fs_del
    - gf_fs_load_destination
    - gf_fs_get_last_connect_error
    - gf_fs_new_defaults
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_decrypt_file_ex(GF_ISOFile *mp4, const char *drm_file, const
      char *dst_file, Double interleave_time, const char *fragment_name, u32 fs_dump_flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: on_decrypt_event
      Src: /src/gpac/src/media_tools/crypt_tools.c:713,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 714
      start: 712
    functionDepth: 2
    functionLinenumber: 712
    functionLinenumberEnd: 714
    functionName: if
    functionSourceFile: /src/gpac/src/media_tools/crypt_tools.c
    functionUses: 1
    functionsReached:
    - on_decrypt_event
    linkageType: ''
    returnType: else
    signature: else if (gf_sys_is_cov_mode())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_decrypt_file_ex
      Src: /src/gpac/src/media_tools/crypt_tools.c:734,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - mp4
    - drm_file
    - dst_file
    - fragment_name
    - fs_dump_flags
    argTypes:
    - GF_ISOFile*
    - char*
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 731
    functionDepth: 3
    functionLinenumber: 731
    functionLinenumberEnd: 735
    functionName: gf_decrypt_fragment
    functionSourceFile: /src/gpac/src/media_tools/crypt_tools.c
    functionUses: 0
    functionsReached:
    - gf_decrypt_file_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_decrypt_fragment(GF_ISOFile *mp4, const char *drm_file,
      const char *dst_file, const char *fragment_name, u32 fs_dump_flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_decrypt_file_ex
      Src: /src/gpac/src/media_tools/crypt_tools.c:739,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - mp4
    - drm_file
    - dst_file
    - interleave_time
    - fs_dump_flags
    argTypes:
    - GF_ISOFile*
    - char*
    - char*
    - Double
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 740
      start: 736
    functionDepth: 3
    functionLinenumber: 736
    functionLinenumberEnd: 740
    functionName: gf_decrypt_file
    functionSourceFile: /src/gpac/src/media_tools/crypt_tools.c
    functionUses: 0
    functionsReached:
    - gf_decrypt_file_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_decrypt_file(GF_ISOFile *mp4, const char *drm_file, const
      char *dst_file, Double interleave_time, u32 fs_dump_flags)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:755,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/crypt_tools.c:757,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - _udta
    - evt
    argTypes:
    - void*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 760
      start: 741
    functionDepth: 1
    functionLinenumber: 741
    functionLinenumberEnd: 760
    functionName: on_crypt_event
    functionSourceFile: /src/gpac/src/media_tools/crypt_tools.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - fprintf
    linkageType: ''
    returnType: Bool
    signature: Bool on_crypt_event(void *_udta, GF_Event *evt)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_new_defaults
      Src: /src/gpac/src/media_tools/crypt_tools.c:772,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:774,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/crypt_tools.c:778,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:779,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:781,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:782,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/crypt_tools.c:784,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:786,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/crypt_tools.c:790,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:791,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/crypt_tools.c:791,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:795,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:796,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/crypt_tools.c:797,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:799,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/crypt_tools.c:803,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:804,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/crypt_tools.c:804,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:808,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:810,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/crypt_tools.c:813,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:814,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:816,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:819,1
    - Dst: gf_isom_has_keep_utc_times
      Src: /src/gpac/src/media_tools/crypt_tools.c:821,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:822,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/src/media_tools/crypt_tools.c:824,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/crypt_tools.c:826,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/media_tools/crypt_tools.c:829,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/crypt_tools.c:831,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/crypt_tools.c:834,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/crypt_tools.c:835,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/media_tools/crypt_tools.c:839,1
    - Dst: gf_log_get_tool_level
      Src: /src/gpac/src/media_tools/crypt_tools.c:841,1
    - Dst: gf_sys_is_quiet
      Src: /src/gpac/src/media_tools/crypt_tools.c:843,1
    - Dst: gf_fs_enable_reporting
      Src: /src/gpac/src/media_tools/crypt_tools.c:845,1
    - Dst: gf_fs_set_ui_callback
      Src: /src/gpac/src/media_tools/crypt_tools.c:846,1
    - Dst: on_crypt_event
      Src: /src/gpac/src/media_tools/crypt_tools.c:850,1
    - Dst: gf_fs_run
      Src: /src/gpac/src/media_tools/crypt_tools.c:853,1
    - Dst: gf_fs_get_last_connect_error
      Src: /src/gpac/src/media_tools/crypt_tools.c:855,1
    - Dst: gf_fs_get_last_process_error
      Src: /src/gpac/src/media_tools/crypt_tools.c:856,1
    - Dst: gf_fs_print_unused_args
      Src: /src/gpac/src/media_tools/crypt_tools.c:858,1
    - Dst: gf_fs_print_non_connected
      Src: /src/gpac/src/media_tools/crypt_tools.c:859,1
    - Dst: gf_fs_print_stats
      Src: /src/gpac/src/media_tools/crypt_tools.c:860,1
    - Dst: gf_fs_print_connections
      Src: /src/gpac/src/media_tools/crypt_tools.c:861,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/crypt_tools.c:862,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 79
    argCount: 6
    argNames:
    - mp4
    - drm_file
    - dst_file
    - interleave_time
    - fragment_name
    - fs_dump_flags
    argTypes:
    - GF_ISOFile*
    - char*
    - char*
    - Double
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 864
      start: 762
    functionDepth: 2
    functionLinenumber: 762
    functionLinenumberEnd: 864
    functionName: gf_crypt_file_ex
    functionSourceFile: /src/gpac/src/media_tools/crypt_tools.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fs_set_ui_callback
    - gf_fs_get_last_process_error
    - gf_fs_run
    - gf_fs_print_stats
    - gf_fs_print_non_connected
    - on_crypt_event
    - gf_fs_enable_reporting
    - sprintf
    - gf_sys_is_quiet
    - gf_fs_print_connections
    - gf_url_colon_suffix
    - gf_dynstrcat
    - gf_fs_print_unused_args
    - gf_fs_load_filter
    - GF_LOG
    - gf_sys_is_test_mode
    - gf_isom_has_keep_utc_times
    - gf_error_to_string
    - gf_log_get_tool_level
    - gf_fs_del
    - gf_fs_load_destination
    - gf_fs_get_last_connect_error
    - gf_fs_new_defaults
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_file_ex(GF_ISOFile *mp4, const char *drm_file, const
      char *dst_file, Double interleave_time, const char *fragment_name, u32 fs_dump_flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: on_crypt_event
      Src: /src/gpac/src/media_tools/crypt_tools.c:850,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 851
      start: 849
    functionDepth: 2
    functionLinenumber: 849
    functionLinenumberEnd: 851
    functionName: if
    functionSourceFile: /src/gpac/src/media_tools/crypt_tools.c
    functionUses: 1
    functionsReached:
    - on_crypt_event
    linkageType: ''
    returnType: else
    signature: else if (gf_sys_is_cov_mode())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_crypt_file_ex
      Src: /src/gpac/src/media_tools/crypt_tools.c:869,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - mp4
    - drm_file
    - dst_file
    - fragment_name
    - fs_dump_flags
    argTypes:
    - GF_ISOFile*
    - char*
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 870
      start: 866
    functionDepth: 3
    functionLinenumber: 866
    functionLinenumberEnd: 870
    functionName: gf_crypt_fragment
    functionSourceFile: /src/gpac/src/media_tools/crypt_tools.c
    functionUses: 0
    functionsReached:
    - gf_crypt_file_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_crypt_fragment(GF_ISOFile *mp4, const char *drm_file,
      const char *dst_file, const char *fragment_name, u32 fs_dump_flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_crypt_file_ex
      Src: /src/gpac/src/media_tools/crypt_tools.c:875,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - mp4
    - drm_file
    - dst_file
    - interleave_time
    - fs_dump_flags
    argTypes:
    - GF_ISOFile*
    - char*
    - char*
    - Double
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 877
      start: 872
    functionDepth: 3
    functionLinenumber: 872
    functionLinenumberEnd: 877
    functionName: gf_crypt_file
    functionSourceFile: /src/gpac/src/media_tools/crypt_tools.c
    functionUses: 0
    functionsReached:
    - gf_crypt_file_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_crypt_file(GF_ISOFile *mp4, const char *drm_file, const
      char *dst_file, Double interleave_time, u32 fs_dump_flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: init_exp_table
      Src: /src/gpac/src/media_tools/reedsolomon.c:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 41
    functionName: init_galois_tables
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 0
    functionsReached:
    - init_exp_table
    linkageType: ''
    returnType: void
    signature: void init_galois_tables (void)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 79
    functionName: init_exp_table
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void init_exp_table (void)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 89
    functionName: gmult
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int gmult(int a, int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - elt
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionName: ginv
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int ginv (int elt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: init_gamma
      Src: /src/gpac/src/media_tools/reedsolomon.c:144,1
    - Dst: copy_poly
      Src: /src/gpac/src/media_tools/reedsolomon.c:147,1
    - Dst: mul_z_poly
      Src: /src/gpac/src/media_tools/reedsolomon.c:148,1
    - Dst: copy_poly
      Src: /src/gpac/src/media_tools/reedsolomon.c:150,1
    - Dst: compute_discrepancy
      Src: /src/gpac/src/media_tools/reedsolomon.c:156,1
    - Dst: gmult
      Src: /src/gpac/src/media_tools/reedsolomon.c:161,1
    - Dst: gmult
      Src: /src/gpac/src/media_tools/reedsolomon.c:168,1
    - Dst: ginv
      Src: /src/gpac/src/media_tools/reedsolomon.c:168,1
    - Dst: mul_z_poly
      Src: /src/gpac/src/media_tools/reedsolomon.c:176,1
    - Dst: compute_modified_omega
      Src: /src/gpac/src/media_tools/reedsolomon.c:180,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 183
    functionName: Modified_Berlekamp_Massey
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 0
    functionsReached:
    - compute_discrepancy
    - gmult
    - compute_modified_omega
    - init_gamma
    - ginv
    - mul_z_poly
    - copy_poly
    linkageType: ''
    returnType: void
    signature: void Modified_Berlekamp_Massey (void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mult_polys
      Src: /src/gpac/src/media_tools/reedsolomon.c:195,1
    - Dst: zero_poly
      Src: /src/gpac/src/media_tools/reedsolomon.c:196,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 199
    functionName: compute_modified_omega
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 1
    functionsReached:
    - mult_polys
    - zero_poly
    linkageType: ''
    returnType: void
    signature: void compute_modified_omega ()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gmult
      Src: /src/gpac/src/media_tools/reedsolomon.c:214,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 3
    argNames:
    - dst
    - p1
    - p2
    argTypes:
    - int[]
    - int[]
    - int[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 222
    functionName: mult_polys
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 1
    functionsReached:
    - gmult
    linkageType: ''
    returnType: void
    signature: void mult_polys (int dst[], int p1[], int p2[])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zero_poly
      Src: /src/gpac/src/media_tools/reedsolomon.c:232,1
    - Dst: zero_poly
      Src: /src/gpac/src/media_tools/reedsolomon.c:233,1
    - Dst: copy_poly
      Src: /src/gpac/src/media_tools/reedsolomon.c:237,1
    - Dst: scale_poly
      Src: /src/gpac/src/media_tools/reedsolomon.c:238,1
    - Dst: mul_z_poly
      Src: /src/gpac/src/media_tools/reedsolomon.c:239,1
    - Dst: add_polys
      Src: /src/gpac/src/media_tools/reedsolomon.c:240,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - gamma
    argTypes:
    - int[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 227
    functionDepth: 1
    functionLinenumber: 227
    functionLinenumberEnd: 242
    functionName: init_gamma
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 1
    functionsReached:
    - scale_poly
    - zero_poly
    - add_polys
    - mul_z_poly
    - copy_poly
    linkageType: ''
    returnType: void
    signature: void init_gamma (int gamma[])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gmult
      Src: /src/gpac/src/media_tools/reedsolomon.c:251,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - d
    - A
    - dst
    - src
    argTypes:
    - int
    - int[]
    - int[]
    - int[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 246
    functionDepth: 1
    functionLinenumber: 246
    functionLinenumberEnd: 253
    functionName: compute_next_omega
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 0
    functionsReached:
    - gmult
    linkageType: ''
    returnType: void
    signature: void compute_next_omega (int d, int A[], int dst[], int src[])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gmult
      Src: /src/gpac/src/media_tools/reedsolomon.c:263,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - lambda
    - S
    - L
    - n
    argTypes:
    - int[]
    - int[]
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 257
    functionDepth: 1
    functionLinenumber: 257
    functionLinenumberEnd: 265
    functionName: compute_discrepancy
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 1
    functionsReached:
    - gmult
    linkageType: ''
    returnType: int
    signature: int compute_discrepancy (int lambda[], int S[], int L, int n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - int[]
    - int[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 273
    functionName: add_polys
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void add_polys (int dst[], int src[])
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - int[]
    - int[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 279
    functionName: copy_poly
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void copy_poly (int dst[], int src[])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gmult
      Src: /src/gpac/src/media_tools/reedsolomon.c:284,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - k
    - poly
    argTypes:
    - int
    - int[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 281
    functionDepth: 1
    functionLinenumber: 281
    functionLinenumberEnd: 285
    functionName: scale_poly
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 1
    functionsReached:
    - gmult
    linkageType: ''
    returnType: void
    signature: void scale_poly (int k, int poly[])
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - poly
    argTypes:
    - int[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 292
    functionName: zero_poly
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void zero_poly (int poly[])
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - src
    argTypes:
    - int[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 296
    functionDepth: 0
    functionLinenumber: 296
    functionLinenumberEnd: 301
    functionName: mul_z_poly
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void mul_z_poly (int src[])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gmult
      Src: /src/gpac/src/media_tools/reedsolomon.c:321,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/reedsolomon.c:327,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 311
    functionDepth: 1
    functionLinenumber: 311
    functionLinenumberEnd: 330
    functionName: Find_Roots
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 0
    functionsReached:
    - gmult
    - fprintf
    linkageType: ''
    returnType: void
    signature: void Find_Roots (void)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: Modified_Berlekamp_Massey
      Src: /src/gpac/src/media_tools/reedsolomon.c:359,1
    - Dst: Find_Roots
      Src: /src/gpac/src/media_tools/reedsolomon.c:360,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/reedsolomon.c:369,1
    - Dst: gmult
      Src: /src/gpac/src/media_tools/reedsolomon.c:381,1
    - Dst: gmult
      Src: /src/gpac/src/media_tools/reedsolomon.c:386,1
    - Dst: gmult
      Src: /src/gpac/src/media_tools/reedsolomon.c:389,1
    - Dst: ginv
      Src: /src/gpac/src/media_tools/reedsolomon.c:389,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/reedsolomon.c:390,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/reedsolomon.c:397,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 34
    argCount: 4
    argNames:
    - codeword
    - csize
    - nerasures
    - erasures
    argTypes:
    - unsigned char[]
    - int
    - int
    - int[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 345
    functionDepth: 2
    functionLinenumber: 345
    functionLinenumberEnd: 400
    functionName: correct_errors_erasures
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 1
    functionsReached:
    - gmult
    - Find_Roots
    - ginv
    - Modified_Berlekamp_Massey
    - fprintf
    linkageType: ''
    returnType: int
    signature: "int correct_errors_erasures (unsigned char codeword[],\n                         int
      csize,\n                         int nerasures,\n                         int
      erasures[])"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: init_galois_tables
      Src: /src/gpac/src/media_tools/reedsolomon.c:429,1
    - Dst: compute_genpoly
      Src: /src/gpac/src/media_tools/reedsolomon.c:432,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 425
    functionDepth: 2
    functionLinenumber: 425
    functionLinenumberEnd: 433
    functionName: initialize_ecc
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 1
    functionsReached:
    - compute_genpoly
    - init_galois_tables
    linkageType: ''
    returnType: void
    signature: void initialize_ecc ()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - buf
    - from
    - to
    argTypes:
    - unsigned char[]
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 435
    functionDepth: 0
    functionLinenumber: 435
    functionLinenumberEnd: 440
    functionName: zero_fill_from
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void zero_fill_from (unsigned char buf[], int from, int to)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/reedsolomon.c:447,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/reedsolomon.c:449,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/reedsolomon.c:450,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 451
      start: 443
    functionDepth: 0
    functionLinenumber: 443
    functionLinenumberEnd: 451
    functionName: print_parity
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void print_parity (void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/reedsolomon.c:458,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/reedsolomon.c:460,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/reedsolomon.c:461,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 454
    functionDepth: 0
    functionLinenumber: 454
    functionLinenumberEnd: 462
    functionName: print_syndrome
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void print_syndrome (void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - msg
    - nbytes
    - dst
    argTypes:
    - unsigned char[]
    - int
    - unsigned char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 465
    functionDepth: 0
    functionLinenumber: 465
    functionLinenumberEnd: 475
    functionName: build_codeword
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void build_codeword (unsigned char msg[], int nbytes, unsigned char
      dst[])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gmult
      Src: /src/gpac/src/media_tools/reedsolomon.c:491,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - data
    - nbytes
    argTypes:
    - unsigned char[]
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 495
      start: 484
    functionDepth: 1
    functionLinenumber: 484
    functionLinenumberEnd: 495
    functionName: decode_data
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 1
    functionsReached:
    - gmult
    linkageType: ''
    returnType: void
    signature: void decode_data(unsigned char data[], int nbytes)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 499
    functionDepth: 0
    functionLinenumber: 499
    functionLinenumberEnd: 507
    functionName: check_syndrome
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int check_syndrome (void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/reedsolomon.c:516,1
    - Dst: gmult
      Src: /src/gpac/src/media_tools/reedsolomon.c:517,1
    - Dst: ginv
      Src: /src/gpac/src/media_tools/reedsolomon.c:517,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 519
      start: 510
    functionDepth: 1
    functionLinenumber: 510
    functionLinenumberEnd: 519
    functionName: debug_check_syndrome
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 0
    functionsReached:
    - ginv
    - gmult
    - fprintf
    linkageType: ''
    returnType: void
    signature: void debug_check_syndrome (void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zero_poly
      Src: /src/gpac/src/media_tools/reedsolomon.c:535,1
    - Dst: zero_poly
      Src: /src/gpac/src/media_tools/reedsolomon.c:539,1
    - Dst: mult_polys
      Src: /src/gpac/src/media_tools/reedsolomon.c:543,1
    - Dst: copy_poly
      Src: /src/gpac/src/media_tools/reedsolomon.c:544,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - nbytes
    - genpoly
    argTypes:
    - int
    - int[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 528
    functionDepth: 2
    functionLinenumber: 528
    functionLinenumberEnd: 546
    functionName: compute_genpoly
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 1
    functionsReached:
    - copy_poly
    - mult_polys
    - zero_poly
    linkageType: ''
    returnType: void
    signature: void compute_genpoly (int nbytes, int genpoly[])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gmult
      Src: /src/gpac/src/media_tools/reedsolomon.c:566,1
    - Dst: gmult
      Src: /src/gpac/src/media_tools/reedsolomon.c:568,1
    - Dst: build_codeword
      Src: /src/gpac/src/media_tools/reedsolomon.c:574,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - msg
    - nbytes
    - dst
    argTypes:
    - unsigned char[]
    - int
    - unsigned char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 556
    functionDepth: 1
    functionLinenumber: 556
    functionLinenumberEnd: 575
    functionName: encode_data
    functionSourceFile: /src/gpac/src/media_tools/reedsolomon.c
    functionUses: 2
    functionsReached:
    - gmult
    - build_codeword
    linkageType: ''
    returnType: void
    signature: void encode_data (unsigned char msg[], int nbytes, unsigned char dst[])
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - id
    argTypes:
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 196
    functionName: vobsub_lang_name
    functionSourceFile: /src/gpac/src/media_tools/vobsub.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 vobsub_lang_name(u16 id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/vobsub.c:205,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 211
    functionName: vobsub_lang_id
    functionSourceFile: /src/gpac/src/media_tools/vobsub.c
    functionUses: 0
    functionsReached:
    - stricmp
    linkageType: ''
    returnType: char
    signature: char *vobsub_lang_id(char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: isspace
      Src: /src/gpac/src/media_tools/vobsub.c:220,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 227
    functionName: strltrim
    functionSourceFile: /src/gpac/src/media_tools/vobsub.c
    functionUses: 0
    functionsReached:
    - isspace
    linkageType: ''
    returnType: char
    signature: char *strltrim(char *str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/media_tools/vobsub.c:237,1
    - Dst: isspace
      Src: /src/gpac/src/media_tools/vobsub.c:240,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 247
    functionName: strrtrim
    functionSourceFile: /src/gpac/src/media_tools/vobsub.c
    functionUses: 0
    functionsReached:
    - isspace
    - strlen
    linkageType: ''
    returnType: char
    signature: char *strrtrim(char *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strltrim
      Src: /src/gpac/src/media_tools/vobsub.c:251,1
    - Dst: strrtrim
      Src: /src/gpac/src/media_tools/vobsub.c:251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 252
    functionName: strtrim
    functionSourceFile: /src/gpac/src/media_tools/vobsub.c
    functionUses: 0
    functionsReached:
    - strltrim
    - strrtrim
    linkageType: ''
    returnType: char
    signature: char *strtrim(char *str)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_fgets
      Src: /src/gpac/src/media_tools/vobsub.c:261,1
    - Dst: strtrim
      Src: /src/gpac/src/media_tools/vobsub.c:265,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/vobsub.c:271,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/vobsub.c:272,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/vobsub.c:272,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/vobsub.c:278,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/vobsub.c:287,1
    - Dst: strtrim
      Src: /src/gpac/src/media_tools/vobsub.c:296,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/vobsub.c:297,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/vobsub.c:302,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/vobsub.c:305,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/vobsub.c:312,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/vobsub.c:317,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/vobsub.c:340,1
    - Dst: strlwr
      Src: /src/gpac/src/media_tools/vobsub.c:345,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/vobsub.c:348,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/vobsub.c:355,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/vobsub.c:355,1
    - Dst: vobsub_lang_name
      Src: /src/gpac/src/media_tools/vobsub.c:362,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/vobsub.c:365,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/vobsub.c:375,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/vobsub.c:384,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/vobsub.c:392,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/vobsub.c:400,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/vobsub.c:409,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/vobsub.c:411,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/vobsub.c:418,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/vobsub.c:421,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/vobsub.c:426,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/vobsub.c:426,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/vobsub.c:428,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/vobsub.c:433,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/vobsub.c:437,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/vobsub.c:437,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/vobsub.c:445,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/vobsub.c:447,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 123
    argCount: 3
    argNames:
    - file
    - vobsub
    - version
    argTypes:
    - FILE*
    - vobsub_file*
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 254
    functionDepth: 2
    functionLinenumber: 254
    functionLinenumberEnd: 455
    functionName: vobsub_read_idx
    functionSourceFile: /src/gpac/src/media_tools/vobsub.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_list_get
    - sscanf
    - gf_fgets
    - strstr
    - strlwr
    - vobsub_lang_name
    - gf_calloc
    - gf_list_count
    - strtrim
    - gf_list_add
    - stricmp
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vobsub_read_idx(FILE *file, vobsub_file *vobsub, s32 *version)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/vobsub.c:471,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/vobsub.c:472,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/vobsub.c:476,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/vobsub.c:479,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - vobsub
    argTypes:
    - vobsub_file*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 457
    functionDepth: 1
    functionLinenumber: 457
    functionLinenumberEnd: 480
    functionName: vobsub_free
    functionSourceFile: /src/gpac/src/media_tools/vobsub.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_enum
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void vobsub_free(vobsub_file *vobsub)
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 58
    argCount: 4
    argNames:
    - _data
    - psize
    - dsize
    - duration
    argTypes:
    - u8*
    - u32
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 482
    functionDepth: 0
    functionLinenumber: 482
    functionLinenumberEnd: 555
    functionName: vobsub_get_subpic_duration
    functionSourceFile: /src/gpac/src/media_tools/vobsub.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vobsub_get_subpic_duration(u8 *_data, u32 psize, u32 dsize,
      u32 *duration)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/vobsub.c:576,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/vobsub.c:637,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/vobsub.c:649,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/media_tools/vobsub.c:653,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 66
    argCount: 4
    argNames:
    - fsub
    - pts
    - data
    - dataSize
    argTypes:
    - FILE*
    - u64
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 666
      start: 557
    functionDepth: 1
    functionLinenumber: 557
    functionLinenumberEnd: 666
    functionName: vobsub_packetize_subpicture
    functionSourceFile: /src/gpac/src/media_tools/vobsub.c
    functionUses: 0
    functionsReached:
    - memset
    - memcpy
    - gf_fwrite
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vobsub_packetize_subpicture(FILE *fsub, u64 pts, u8 *data, u32
      dataSize)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/media_tools/isom_tools.c:41,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/isom_tools.c:53,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:60,1
    - Dst: gf_avc_change_par
      Src: /src/gpac/src/media_tools/isom_tools.c:62,1
    - Dst: gf_isom_avc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:63,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:65,1
    - Dst: gf_avc_get_sps_info
      Src: /src/gpac/src/media_tools/isom_tools.c:67,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:72,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:80,1
    - Dst: gf_hevc_change_par
      Src: /src/gpac/src/media_tools/isom_tools.c:82,1
    - Dst: gf_isom_hevc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:83,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/isom_tools.c:88,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:90,1
    - Dst: gf_hevc_get_sps_info
      Src: /src/gpac/src/media_tools/isom_tools.c:92,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:97,1
    - Dst: gf_isom_vvc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:109,1
    - Dst: gf_vvc_change_par
      Src: /src/gpac/src/media_tools/isom_tools.c:111,1
    - Dst: gf_isom_vvc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:112,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/isom_tools.c:117,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:119,1
    - Dst: gf_vvc_get_sps_info
      Src: /src/gpac/src/media_tools/isom_tools.c:121,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:126,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/isom_tools.c:131,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:133,1
    - Dst: gf_m4v_rewrite_par
      Src: /src/gpac/src/media_tools/isom_tools.c:139,1
    - Dst: gf_isom_change_mpeg4_description
      Src: /src/gpac/src/media_tools/isom_tools.c:140,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/media_tools/isom_tools.c:143,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:149,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/isom_tools.c:152,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/media_tools/isom_tools.c:153,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:155,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:157,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/isom_tools.c:157,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:160,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:166,1
    - Dst: gf_isom_set_pixel_aspect_ratio
      Src: /src/gpac/src/media_tools/isom_tools.c:168,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 99
    argCount: 6
    argNames:
    - file
    - track
    - ar_num
    - ar_den
    - force_par
    - rewrite_bs
    argTypes:
    - GF_ISOFile*
    - u32
    - s32
    - s32
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 34
    functionDepth: 10
    functionLinenumber: 34
    functionLinenumberEnd: 171
    functionName: gf_media_change_par
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 1
    functionsReached:
    - gf_odf_vvc_cfg_del
    - gf_odf_avc_cfg_del
    - gf_odf_desc_del
    - gf_hevc_change_par
    - gf_isom_vvc_config_get
    - gf_isom_set_pixel_aspect_ratio
    - gf_isom_hevc_config_get
    - gf_hevc_get_sps_info
    - gf_4cc_to_str
    - gf_list_get
    - gf_m4v_rewrite_par
    - gf_isom_get_media_subtype
    - gf_avc_get_sps_info
    - gf_isom_avc_config_update
    - gf_avc_change_par
    - gf_m4v_get_config
    - gf_isom_get_media_type
    - gf_vvc_get_sps_info
    - gf_isom_is_video_handler_type
    - GF_LOG
    - gf_isom_get_esd
    - gf_list_enum
    - gf_isom_vvc_config_update
    - gf_odf_hevc_cfg_del
    - gf_isom_avc_config_get
    - gf_isom_change_mpeg4_description
    - gf_isom_get_visual_info
    - gf_isom_hevc_config_update
    - gf_vvc_change_par
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_change_par(GF_ISOFile *file, u32 track, s32 ar_num,
      s32 ar_den, Bool force_par, Bool rewrite_bs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/isom_tools.c:191,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:197,1
    - Dst: gf_avc_change_color
      Src: /src/gpac/src/media_tools/isom_tools.c:198,1
    - Dst: gf_isom_avc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:199,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:200,1
    - Dst: gf_isom_set_visual_color_info
      Src: /src/gpac/src/media_tools/isom_tools.c:203,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:212,1
    - Dst: gf_hevc_change_color
      Src: /src/gpac/src/media_tools/isom_tools.c:213,1
    - Dst: gf_isom_hevc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:214,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:215,1
    - Dst: gf_isom_set_visual_color_info
      Src: /src/gpac/src/media_tools/isom_tools.c:218,1
    - Dst: gf_isom_vvc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:221,1
    - Dst: gf_vvc_change_color
      Src: /src/gpac/src/media_tools/isom_tools.c:222,1
    - Dst: gf_isom_vvc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:223,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:224,1
    - Dst: gf_isom_set_visual_color_info
      Src: /src/gpac/src/media_tools/isom_tools.c:227,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 26
    argCount: 7
    argNames:
    - file
    - track
    - fullrange
    - vidformat
    - colorprim
    - transfer
    - colmatrix
    argTypes:
    - GF_ISOFile*
    - u32
    - s32
    - s32
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 186
    functionDepth: 10
    functionLinenumber: 186
    functionLinenumberEnd: 231
    functionName: gf_media_change_color
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_odf_hevc_cfg_del
    - gf_odf_vvc_cfg_del
    - gf_odf_avc_cfg_del
    - gf_isom_avc_config_get
    - gf_vvc_change_color
    - gf_isom_get_media_subtype
    - gf_isom_vvc_config_get
    - gf_avc_change_color
    - gf_isom_avc_config_update
    - gf_hevc_change_color
    - gf_isom_hevc_config_update
    - gf_isom_set_visual_color_info
    - gf_isom_hevc_config_get
    - gf_isom_vvc_config_update
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_change_color(GF_ISOFile *file, u32 track, s32 fullrange,
      s32 vidformat, s32 colorprim, s32 transfer, s32 colmatrix)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_has_sync_points
      Src: /src/gpac/src/media_tools/isom_tools.c:239,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/media_tools/isom_tools.c:243,1
    - Dst: gf_isom_set_cts_packing
      Src: /src/gpac/src/media_tools/isom_tools.c:245,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_tools.c:247,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/src/media_tools/isom_tools.c:250,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/isom_tools.c:251,1
    - Dst: gf_isom_get_sample_flags
      Src: /src/gpac/src/media_tools/isom_tools.c:256,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:264,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:267,1
    - Dst: gf_isom_remove_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:268,1
    - Dst: gf_isom_set_cts_packing
      Src: /src/gpac/src/media_tools/isom_tools.c:273,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/src/media_tools/isom_tools.c:274,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 3
    argNames:
    - file
    - track
    - non_ref_only
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 233
    functionDepth: 7
    functionLinenumber: 233
    functionLinenumberEnd: 276
    functionName: gf_media_remove_non_rap
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 1
    functionsReached:
    - gf_isom_has_sync_points
    - gf_isom_last_error
    - gf_isom_remove_sample
    - gf_isom_get_sample_flags
    - gf_isom_sample_del
    - gf_isom_get_sample_count
    - gf_isom_get_media_duration
    - gf_isom_get_sample_info
    - gf_isom_set_cts_packing
    - gf_isom_set_last_sample_duration
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_remove_non_rap(GF_ISOFile *file, u32 track, Bool
      non_ref_only)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_probe_file
      Src: /src/gpac/src/media_tools/isom_tools.c:291,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/isom_tools.c:294,1
    - Dst: gf_fsize
      Src: /src/gpac/src/media_tools/isom_tools.c:296,1
    - Dst: gf_sha1_starts
      Src: /src/gpac/src/media_tools/isom_tools.c:298,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/media_tools/isom_tools.c:301,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/media_tools/isom_tools.c:307,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/media_tools/isom_tools.c:308,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/media_tools/isom_tools.c:311,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/media_tools/isom_tools.c:317,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/isom_tools.c:323,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:325,1
    - Dst: gf_sha1_update
      Src: /src/gpac/src/media_tools/isom_tools.c:328,1
    - Dst: gf_fread
      Src: /src/gpac/src/media_tools/isom_tools.c:336,1
    - Dst: ferror
      Src: /src/gpac/src/media_tools/isom_tools.c:338,1
    - Dst: gf_sha1_update
      Src: /src/gpac/src/media_tools/isom_tools.c:342,1
    - Dst: gf_sha1_finish
      Src: /src/gpac/src/media_tools/isom_tools.c:346,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:348,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/isom_tools.c:350,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 46
    argCount: 2
    argNames:
    - file
    - hash
    argTypes:
    - char*
    - u8[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 280
    functionDepth: 3
    functionLinenumber: 280
    functionLinenumberEnd: 352
    functionName: gf_media_get_file_hash
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 1
    functionsReached:
    - gf_bs_peek_bits
    - gf_isom_probe_file
    - gf_bs_read_data
    - gf_sha1_finish
    - gf_fclose
    - GF_LOG
    - gf_fread
    - gf_sha1_update
    - gf_bs_del
    - gf_sha1_starts
    - gf_fopen
    - gf_fsize
    - ferror
    - gf_bs_from_file
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_get_file_hash(const char *file, u8 hash[20])
  - BBCount: 48
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:411,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/isom_tools.c:421,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/isom_tools.c:427,1
    - Dst: gf_isom_remove_track_from_root_od
      Src: /src/gpac/src/media_tools/isom_tools.c:429,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/isom_tools.c:431,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:444,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:445,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:448,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:451,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:451,1
    - Dst: gf_isom_remove_track
      Src: /src/gpac/src/media_tools/isom_tools.c:452,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/isom_tools.c:454,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:459,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:460,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:463,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:468,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:468,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:470,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:470,1
    - Dst: gf_isom_remove_track
      Src: /src/gpac/src/media_tools/isom_tools.c:472,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/isom_tools.c:474,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:477,1
    - Dst: gf_isom_get_root_od
      Src: /src/gpac/src/media_tools/isom_tools.c:486,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:491,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/media_tools/isom_tools.c:496,1
    - Dst: gf_isom_set_root_od_id
      Src: /src/gpac/src/media_tools/isom_tools.c:500,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/media_tools/isom_tools.c:512,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/media_tools/isom_tools.c:513,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/media_tools/isom_tools.c:518,1
    - Dst: gf_isom_set_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:522,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/isom_tools.c:525,1
    - Dst: gf_odf_desc_add_desc
      Src: /src/gpac/src/media_tools/isom_tools.c:529,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_tools.c:530,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/src/media_tools/isom_tools.c:532,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/media_tools/isom_tools.c:534,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/media_tools/isom_tools.c:543,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/media_tools/isom_tools.c:547,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:548,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/media_tools/isom_tools.c:562,1
    - Dst: gf_isom_set_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:566,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/isom_tools.c:569,1
    - Dst: gf_odf_desc_add_desc
      Src: /src/gpac/src/media_tools/isom_tools.c:574,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_tools.c:575,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/media_tools/isom_tools.c:588,1
    - Dst: gf_isom_change_mpeg4_description
      Src: /src/gpac/src/media_tools/isom_tools.c:596,1
    - Dst: gf_isom_change_mpeg4_description
      Src: /src/gpac/src/media_tools/isom_tools.c:597,1
    - Dst: gf_odf_codec_new
      Src: /src/gpac/src/media_tools/isom_tools.c:603,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/media_tools/isom_tools.c:604,1
    - Dst: gf_odf_codec_add_com
      Src: /src/gpac/src/media_tools/isom_tools.c:605,1
    - Dst: gf_odf_codec_encode
      Src: /src/gpac/src/media_tools/isom_tools.c:606,1
    - Dst: gf_odf_codec_get_au
      Src: /src/gpac/src/media_tools/isom_tools.c:607,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/media_tools/isom_tools.c:608,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/src/media_tools/isom_tools.c:614,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:614,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/isom_tools.c:615,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/media_tools/isom_tools.c:617,1
    - Dst: gf_isom_new_mpeg4_description
      Src: /src/gpac/src/media_tools/isom_tools.c:625,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:626,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:627,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:628,1
    - Dst: gf_isom_set_track_interleaving_group
      Src: /src/gpac/src/media_tools/isom_tools.c:630,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/src/media_tools/isom_tools.c:633,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:633,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/isom_tools.c:634,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/media_tools/isom_tools.c:636,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:646,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:648,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:650,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:652,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:654,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:655,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:656,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/isom_tools.c:657,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:658,1
    - Dst: gf_isom_new_mpeg4_description
      Src: /src/gpac/src/media_tools/isom_tools.c:659,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:660,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:661,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/media_tools/isom_tools.c:662,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/media_tools/isom_tools.c:664,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:694,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:696,1
    - Dst: gf_isom_set_track_interleaving_group
      Src: /src/gpac/src/media_tools/isom_tools.c:697,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/src/media_tools/isom_tools.c:699,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/src/media_tools/isom_tools.c:700,1
    - Dst: gf_isom_add_track_to_root_od
      Src: /src/gpac/src/media_tools/isom_tools.c:701,1
    - Dst: gf_isom_add_track_to_root_od
      Src: /src/gpac/src/media_tools/isom_tools.c:702,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/isom_tools.c:704,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/isom_tools.c:705,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/isom_tools.c:706,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/isom_tools.c:707,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/isom_tools.c:708,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/media_tools/isom_tools.c:710,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:711,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:712,1
    CyclomaticComplexity: 74
    EdgeCount: 74
    ICount: 246
    argCount: 4
    argNames:
    - mp4file
    - keepESIDs
    - keepImage
    - no_ocr
    argTypes:
    - GF_ISOFile*
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 714
      start: 397
    functionDepth: 9
    functionLinenumber: 397
    functionLinenumberEnd: 714
    functionName: gf_media_make_isma
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_odf_desc_del
    - gf_isom_set_root_od_id
    - gf_isom_get_timescale
    - gf_isom_modify_alternate_brand
    - gf_isom_add_sample
    - gf_isom_get_track_id
    - gf_isom_set_pl_indication
    - gf_isom_get_root_od
    - gf_odf_com_new
    - gf_isom_get_track_by_id
    - gf_odf_codec_get_au
    - gf_isom_set_brand_info
    - gf_isom_remove_track
    - gf_isom_get_mode
    - gf_odf_desc_esd_new
    - gf_isom_sample_del
    - gf_isom_new_mpeg4_description
    - gf_bs_get_content
    - gf_isom_get_track_count
    - gf_odf_desc_new
    - gf_list_add
    - gf_m4v_get_config
    - gf_isom_get_media_type
    - gf_isom_set_track_enabled
    - gf_odf_codec_del
    - gf_isom_last_error
    - gf_m4a_get_config
    - GF_LOG
    - gf_bs_write_int
    - gf_isom_get_esd
    - gf_bs_align
    - gf_isom_new_track
    - gf_isom_sample_new
    - gf_isom_get_track_layout_info
    - gf_isom_remove_track_from_root_od
    - gf_isom_set_visual_info
    - gf_odf_codec_encode
    - gf_isom_set_track_interleaving_group
    - gf_isom_change_mpeg4_description
    - gf_isom_set_track_id
    - gf_bs_del
    - gf_odf_codec_new
    - gf_isom_get_visual_info
    - gf_odf_codec_add_com
    - gf_isom_add_track_to_root_od
    - gf_odf_desc_add_desc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_make_isma(GF_ISOFile *mp4file, Bool keepESIDs, Bool
      keepImage, Bool no_ocr)
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:723,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/isom_tools.c:732,1
    - Dst: gf_isom_remove_track_from_root_od
      Src: /src/gpac/src/media_tools/isom_tools.c:736,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/isom_tools.c:738,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/isom_tools.c:739,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_tools.c:745,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:746,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:746,1
    - Dst: gf_isom_get_ismacryp_info
      Src: /src/gpac/src/media_tools/isom_tools.c:750,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/isom_tools.c:768,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:770,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:780,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:780,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:786,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:786,1
    - Dst: gf_isom_get_ismacryp_info
      Src: /src/gpac/src/media_tools/isom_tools.c:791,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/isom_tools.c:806,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:808,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:819,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:819,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:825,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:825,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/media_tools/isom_tools.c:831,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:845,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:845,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:847,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:847,1
    - Dst: gf_isom_remove_track
      Src: /src/gpac/src/media_tools/isom_tools.c:851,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/isom_tools.c:853,1
    - Dst: gf_isom_remove_root_od
      Src: /src/gpac/src/media_tools/isom_tools.c:859,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/media_tools/isom_tools.c:862,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:863,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:864,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:865,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:866,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/media_tools/isom_tools.c:871,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:872,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:873,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:874,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:875,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/media_tools/isom_tools.c:877,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:878,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:879,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:880,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:881,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/media_tools/isom_tools.c:883,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:884,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:885,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:886,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:887,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/media_tools/isom_tools.c:889,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:890,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:891,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:892,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:893,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:897,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:898,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:899,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 163
    argCount: 1
    argNames:
    - mp4file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 717
    functionDepth: 8
    functionLinenumber: 717
    functionLinenumberEnd: 901
    functionName: gf_media_make_3gpp
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_isom_remove_track
    - gf_odf_desc_del
    - gf_isom_get_mode
    - GF_LOG
    - gf_isom_remove_root_od
    - gf_isom_get_media_subtype
    - gf_isom_get_sample_count
    - gf_isom_get_esd
    - gf_isom_get_track_count
    - gf_isom_get_ismacryp_info
    - gf_isom_set_media_type
    - gf_isom_modify_alternate_brand
    - gf_isom_get_track_id
    - gf_isom_set_brand_info
    - gf_isom_get_media_type
    - gf_isom_remove_track_from_root_od
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_make_3gpp(GF_ISOFile *mp4file)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/isom_tools.c:915,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/isom_tools.c:917,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:927,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/isom_tools.c:931,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/src/media_tools/isom_tools.c:935,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/src/media_tools/isom_tools.c:936,1
    - Dst: gf_isom_append_edit
      Src: /src/gpac/src/media_tools/isom_tools.c:938,1
    - Dst: gf_isom_get_track_duration
      Src: /src/gpac/src/media_tools/isom_tools.c:938,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:939,1
    - Dst: gf_isom_remove_uuid
      Src: /src/gpac/src/media_tools/isom_tools.c:943,1
    - Dst: gf_isom_add_uuid
      Src: /src/gpac/src/media_tools/isom_tools.c:944,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:947,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:947,1
    - Dst: gf_isom_remove_track
      Src: /src/gpac/src/media_tools/isom_tools.c:948,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/media_tools/isom_tools.c:954,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:955,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 41
    argCount: 1
    argNames:
    - mp4
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 957
      start: 903
    functionDepth: 8
    functionLinenumber: 903
    functionLinenumberEnd: 957
    functionName: gf_media_make_psp
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_isom_add_uuid
    - gf_isom_remove_track
    - gf_isom_get_track_duration
    - GF_LOG
    - gf_isom_sample_del
    - gf_isom_append_edit
    - gf_isom_remove_uuid
    - gf_isom_modify_alternate_brand
    - gf_isom_get_track_count
    - gf_isom_set_brand_info
    - gf_isom_get_track_id
    - gf_isom_get_sample_info
    - gf_isom_get_edits_count
    - gf_isom_get_media_type
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_make_psp(GF_ISOFile *mp4)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/isom_tools.c:962,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:969,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/isom_tools.c:975,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/isom_tools.c:980,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/media_tools/isom_tools.c:981,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:992,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:993,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:996,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:997,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:1008,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/isom_tools.c:1013,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/isom_tools.c:1018,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/isom_tools.c:1025,1
    - Dst: gf_hevc_read_sps
      Src: /src/gpac/src/media_tools/isom_tools.c:1026,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1037,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1038,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1042,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1043,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/isom_tools.c:1049,1
    - Dst: gf_av1_init_state
      Src: /src/gpac/src/media_tools/isom_tools.c:1051,1
    - Dst: gf_isom_av1_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:1052,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:1055,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:1060,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1061,1
    - Dst: gf_av1_parse_obu
      Src: /src/gpac/src/media_tools/isom_tools.c:1062,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1063,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1071,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/media_tools/isom_tools.c:1072,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1073,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1078,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/media_tools/isom_tools.c:1079,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1080,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 92
    argCount: 8
    argNames:
    - file
    - track
    - sampleDescriptionIndex
    - colour_type
    - colour_primaries
    - transfer_characteristics
    - matrix_coefficients
    - full_range_flag
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u16*
    - u16*
    - u16*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1086
      start: 959
    functionDepth: 10
    functionLinenumber: 959
    functionLinenumberEnd: 1086
    functionName: gf_media_get_color_info
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_avc_cfg_del
    - GF_SAFEALLOC
    - gf_bs_new
    - gf_list_count
    - gf_odf_av1_cfg_del
    - gf_isom_hevc_config_get
    - gf_list_get
    - gf_isom_get_media_subtype
    - gf_av1_init_state
    - gf_avc_read_sps
    - gf_list_enum
    - gf_odf_hevc_cfg_del
    - gf_av1_parse_obu
    - gf_isom_avc_config_get
    - gf_bs_del
    - gf_av1_reset_state
    - gf_isom_av1_config_get
    - gf_hevc_read_sps
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_media_get_color_info(GF_ISOFile *file, u32 track, u32 sampleDescriptionIndex,
      u32 *colour_type, u16 *colour_primaries, u16 *transfer_characteristics, u16
      *matrix_coefficients, Bool *full_range_flag)
  - BBCount: 47
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/isom_tools.c:1105,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/isom_tools.c:1107,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/isom_tools.c:1115,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1128,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/isom_tools.c:1132,1
    - Dst: gf_isom_update_bitrate
      Src: /src/gpac/src/media_tools/isom_tools.c:1135,1
    - Dst: gf_isom_get_audio_info
      Src: /src/gpac/src/media_tools/isom_tools.c:1139,1
    - Dst: gf_isom_set_audio_info
      Src: /src/gpac/src/media_tools/isom_tools.c:1140,1
    - Dst: gf_isom_hint_max_chunk_duration
      Src: /src/gpac/src/media_tools/isom_tools.c:1142,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:1142,1
    - Dst: gf_isom_remove_root_od
      Src: /src/gpac/src/media_tools/isom_tools.c:1147,1
    - Dst: gf_isom_get_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:1148,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/media_tools/isom_tools.c:1149,1
    - Dst: gf_isom_reset_alt_brands
      Src: /src/gpac/src/media_tools/isom_tools.c:1150,1
    - Dst: gf_isom_get_brand_info
      Src: /src/gpac/src/media_tools/isom_tools.c:1153,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1155,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:1155,1
    - Dst: gf_isom_set_meta_qt
      Src: /src/gpac/src/media_tools/isom_tools.c:1159,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1162,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1168,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1171,1
    - Dst: gf_isom_update_video_sample_entry_fields
      Src: /src/gpac/src/media_tools/isom_tools.c:1185,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_tools.c:1185,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:1188,1
    - Dst: gf_isom_get_constant_sample_duration
      Src: /src/gpac/src/media_tools/isom_tools.c:1189,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/src/media_tools/isom_tools.c:1191,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/src/media_tools/isom_tools.c:1193,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1197,1
    - Dst: gf_isom_get_pixel_aspect_ratio
      Src: /src/gpac/src/media_tools/isom_tools.c:1201,1
    - Dst: gf_isom_set_pixel_aspect_ratio
      Src: /src/gpac/src/media_tools/isom_tools.c:1205,1
    - Dst: gf_isom_update_aperture_info
      Src: /src/gpac/src/media_tools/isom_tools.c:1210,1
    - Dst: gf_isom_get_color_info
      Src: /src/gpac/src/media_tools/isom_tools.c:1213,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:1218,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1220,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:1221,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:1222,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:1223,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:1224,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:1225,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/isom_tools.c:1226,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:1227,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:1228,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:1229,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1230,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1232,1
    - Dst: gf_media_get_color_info
      Src: /src/gpac/src/media_tools/isom_tools.c:1234,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1239,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1244,1
    - Dst: gf_isom_set_visual_color_info
      Src: /src/gpac/src/media_tools/isom_tools.c:1246,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_tools.c:1246,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/media_tools/isom_tools.c:1250,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1269,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1277,1
    - Dst: gf_isom_set_media_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:1278,1
    - Dst: gf_isom_set_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:1280,1
    - Dst: gf_isom_set_interleave_time
      Src: /src/gpac/src/media_tools/isom_tools.c:1284,1
    - Dst: gf_isom_hint_max_chunk_size
      Src: /src/gpac/src/media_tools/isom_tools.c:1285,1
    CyclomaticComplexity: 60
    EdgeCount: 60
    ICount: 174
    argCount: 1
    argNames:
    - mp4
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1288
      start: 1090
    functionDepth: 11
    functionLinenumber: 1090
    functionLinenumberEnd: 1288
    functionName: gf_media_check_qt_prores
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_isom_hint_max_chunk_size
    - gf_isom_set_pixel_aspect_ratio
    - gf_isom_set_timescale
    - gf_isom_set_audio_info
    - gf_bs_read_u16
    - gf_isom_set_brand_info
    - gf_isom_update_aperture_info
    - gf_isom_update_bitrate
    - gf_4cc_to_str
    - gf_bs_read_u32
    - gf_media_get_color_info
    - gf_isom_hint_max_chunk_duration
    - gf_isom_get_mode
    - gf_isom_sample_del
    - gf_isom_get_media_subtype
    - gf_isom_get_track_count
    - gf_isom_set_meta_qt
    - gf_isom_get_audio_info
    - gf_isom_get_visual_info
    - gf_isom_get_media_type
    - gf_isom_set_visual_color_info
    - gf_isom_get_sample
    - gf_isom_get_constant_sample_duration
    - gf_isom_get_sample_duration
    - GF_LOG
    - gf_isom_get_pixel_aspect_ratio
    - gf_isom_set_media_timescale
    - gf_isom_get_color_info
    - gf_isom_update_video_sample_entry_fields
    - gf_isom_get_brand_info
    - gf_bs_read_u8
    - gf_isom_remove_root_od
    - gf_isom_set_interleave_time
    - gf_bs_del
    - gf_isom_get_media_timescale
    - GF_4CC
    - gf_isom_reset_alt_brands
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_check_qt_prores(GF_ISOFile *mp4)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/isom_tools.c:1299,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/isom_tools.c:1329,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/isom_tools.c:1333,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1336,1
    - Dst: gf_isom_get_dims_description
      Src: /src/gpac/src/media_tools/isom_tools.c:1346,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1348,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:1350,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:1351,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1356,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:1358,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:1359,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:1360,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:1361,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:1362,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:1363,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/isom_tools.c:1366,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/isom_tools.c:1366,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/isom_tools.c:1368,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/isom_tools.c:1371,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/isom_tools.c:1371,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/isom_tools.c:1373,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:1375,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1376,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/isom_tools.c:1381,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 77
    argCount: 3
    argNames:
    - mp4
    - track
    - stsd_idx
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1384
      start: 1292
    functionDepth: 7
    functionLinenumber: 1292
    functionLinenumberEnd: 1384
    functionName: gf_media_map_esd
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 1
    functionsReached:
    - gf_bs_new
    - gf_odf_desc_del
    - gf_odf_desc_esd_new
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_isom_get_media_subtype
    - gf_isom_get_esd
    - strlen
    - gf_bs_del
    - gf_bs_write_data
    - gf_isom_get_dims_description
    - gf_isom_get_media_timescale
    - gf_isom_get_track_id
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_media_map_esd(GF_ISOFile *mp4, u32 track, u32 stsd_idx)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta_item_by_id
      Src: /src/gpac/src/media_tools/isom_tools.c:1400,1
    - Dst: gf_isom_get_meta_item_info
      Src: /src/gpac/src/media_tools/isom_tools.c:1403,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/isom_tools.c:1407,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1409,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1411,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1417,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/media_tools/isom_tools.c:1423,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/media_tools/isom_tools.c:1427,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1429,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1430,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1437,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1443,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/media_tools/isom_tools.c:1449,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/media_tools/isom_tools.c:1453,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1455,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1456,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1463,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1469,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/media_tools/isom_tools.c:1475,1
    - Dst: gf_odf_av1_cfg_write
      Src: /src/gpac/src/media_tools/isom_tools.c:1479,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1481,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1482,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1489,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/isom_tools.c:1493,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1495,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/media_tools/isom_tools.c:1501,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1503,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1508,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/isom_tools.c:1512,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1514,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/media_tools/isom_tools.c:1520,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1522,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/isom_tools.c:1522,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1527,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1533,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/media_tools/isom_tools.c:1539,1
    - Dst: gf_odf_vvc_cfg_write
      Src: /src/gpac/src/media_tools/isom_tools.c:1543,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1545,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1546,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1553,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_tools.c:1556,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1558,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/media_tools/isom_tools.c:1564,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1566,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/media_tools/isom_tools.c:1567,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:1568,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1569,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1574,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1580,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1586,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/media_tools/isom_tools.c:1587,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:1589,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1590,1
    - Dst: gf_isom_box_array_write
      Src: /src/gpac/src/media_tools/isom_tools.c:1591,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:1592,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1593,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1596,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1600,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1604,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1605,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 190
    argCount: 2
    argNames:
    - mp4
    - item_id
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1607
      start: 1386
    functionDepth: 4
    functionLinenumber: 1386
    functionLinenumberEnd: 1607
    functionName: gf_media_map_item_esd
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_avc_cfg_write
    - GF_SAFEALLOC
    - gf_odf_desc_del
    - gf_bs_new
    - gf_isom_box_write
    - gf_list_count
    - gf_list_new
    - gf_odf_desc_esd_new
    - gf_bs_get_content
    - gf_isom_box_array_write
    - gf_odf_hevc_cfg_write
    - gf_isom_get_meta_item_info
    - gf_odf_av1_cfg_write
    - gf_isom_get_meta_image_props
    - GF_LOG
    - gf_error_to_string
    - gf_list_del
    - gf_odf_vvc_cfg_write
    - gf_bs_del
    - strcmp
    - gf_isom_get_meta_item_by_id
    - GF_4CC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_media_map_item_esd(GF_ISOFile *mp4, u32 item_id)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:1626,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:1627,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1628,1
    - Dst: gf_isom_svc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:1629,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:1635,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1641,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/isom_tools.c:1643,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:1645,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1647,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/isom_tools.c:1650,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1659,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1660,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1661,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1662,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:1663,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 46
    argCount: 2
    argNames:
    - file
    - track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1665
      start: 1612
    functionDepth: 3
    functionLinenumber: 1612
    functionLinenumberEnd: 1665
    functionName: gf_get_DQId
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_isom_svc_config_get
    - gf_bs_read_data
    - gf_free
    - gf_bs_new
    - gf_odf_avc_cfg_del
    - gf_isom_sample_del
    - gf_bs_del
    - gf_bs_read_int
    - gf_bs_available
    - gf_isom_get_nalu_extract_mode
    - gf_isom_set_nalu_extract_mode
    - gf_malloc
    - gf_isom_get_sample
    - gf_realloc
    linkageType: ''
    returnType: s32
    signature: s32 gf_get_DQId(GF_ISOFile *file, u32 track)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_svc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:1676,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:1680,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:1682,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1691,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - file
    - track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1693
      start: 1668
    functionDepth: 2
    functionLinenumber: 1668
    functionLinenumberEnd: 1693
    functionName: gf_isom_has_svc_explicit
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_isom_svc_config_get
    - gf_list_count
    - gf_list_get
    - gf_odf_avc_cfg_del
    linkageType: ''
    returnType: Bool
    signature: Bool gf_isom_has_svc_explicit(GF_ISOFile *file, u32 track)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/isom_tools.c:1701,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:1704,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1710
      start: 1696
    functionDepth: 2
    functionLinenumber: 1696
    functionLinenumberEnd: 1710
    functionName: gf_isom_get_track_id_max
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_id
    - gf_isom_get_track_count
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_get_track_id_max(GF_ISOFile *file)
  - BBCount: 70
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:1747,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:1748,1
    - Dst: gf_isom_svc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:1749,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:1755,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:1761,1
    - Dst: gf_isom_get_avc_svc_type
      Src: /src/gpac/src/media_tools/isom_tools.c:1762,1
    - Dst: gf_isom_has_svc_explicit
      Src: /src/gpac/src/media_tools/isom_tools.c:1762,1
    - Dst: gf_isom_has_svc_explicit
      Src: /src/gpac/src/media_tools/isom_tools.c:1766,1
    - Dst: gf_media_merge_svc
      Src: /src/gpac/src/media_tools/isom_tools.c:1779,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:1789,1
    - Dst: gf_isom_get_track_id_max
      Src: /src/gpac/src/media_tools/isom_tools.c:1791,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/isom_tools.c:1794,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1803,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1804,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:1808,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/media_tools/isom_tools.c:1810,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/isom_tools.c:1823,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1825,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:1828,1
    - Dst: gf_avc_read_pps
      Src: /src/gpac/src/media_tools/isom_tools.c:1829,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:1837,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:1840,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:1841,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1844,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:1847,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/isom_tools.c:1850,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1853,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1855,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/isom_tools.c:1858,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/isom_tools.c:1860,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:1861,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1863,1
    - Dst: gf_avc_parse_nalu
      Src: /src/gpac/src/media_tools/isom_tools.c:1867,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/isom_tools.c:1870,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/isom_tools.c:1873,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1905,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1908,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/src/media_tools/isom_tools.c:1913,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/isom_tools.c:1916,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/src/media_tools/isom_tools.c:1919,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:1920,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/src/media_tools/isom_tools.c:1922,1
    - Dst: gf_isom_get_edit
      Src: /src/gpac/src/media_tools/isom_tools.c:1925,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/media_tools/isom_tools.c:1926,1
    - Dst: gf_odf_avc_cfg_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1928,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:1931,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:1933,1
    - Dst: gf_isom_svc_config_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1935,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/media_tools/isom_tools.c:1943,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:1952,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1953,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1956,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/isom_tools.c:1957,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_tools.c:1958,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:1964,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1965,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1968,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/isom_tools.c:1969,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_tools.c:1970,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/media_tools/isom_tools.c:1981,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:1990,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1991,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1994,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/isom_tools.c:1995,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_tools.c:1996,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2002,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2003,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2006,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/isom_tools.c:2007,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_tools.c:2008,1
    - Dst: gf_isom_svc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:2013,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2016,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2020,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2021,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2024,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:2030,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:2032,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2040,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2042,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2048,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:2051,1
    - Dst: gf_isom_has_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:2052,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:2058,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:2060,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:2062,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:2064,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2068,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:2071,1
    - Dst: gf_isom_has_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:2072,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:2078,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:2080,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:2082,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:2084,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2088,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/isom_tools.c:2090,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/isom_tools.c:2092,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2093,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2095,1
    - Dst: gf_avc_parse_nalu
      Src: /src/gpac/src/media_tools/isom_tools.c:2099,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/isom_tools.c:2101,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/isom_tools.c:2104,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2175,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/isom_tools.c:2176,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/isom_tools.c:2181,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2188,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:2192,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:2194,1
    - Dst: gf_isom_update_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:2196,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2199,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2202,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2205,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2207,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2209,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:2220,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:2221,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/media_tools/isom_tools.c:2223,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/media_tools/isom_tools.c:2224,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/media_tools/isom_tools.c:2225,1
    - Dst: gf_isom_has_svc_explicit
      Src: /src/gpac/src/media_tools/isom_tools.c:2233,1
    - Dst: gf_isom_svc_config_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2235,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2241,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2243,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/media_tools/isom_tools.c:2244,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/isom_tools.c:2252,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2253,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2254,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2259,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2261,1
    - Dst: gf_avc_read_pps
      Src: /src/gpac/src/media_tools/isom_tools.c:2262,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/isom_tools.c:2269,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2270,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2271,1
    - Dst: gf_isom_svc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:2275,1
    - Dst: gf_isom_remove_track
      Src: /src/gpac/src/media_tools/isom_tools.c:2283,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2287,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2288,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2289,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2290,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2291,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2295,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2296,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2298,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2299,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2300,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2301,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2302,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2303,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2304,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2305,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:2306,1
    CyclomaticComplexity: 129
    EdgeCount: 129
    ICount: 490
    argCount: 3
    argNames:
    - file
    - track
    - splitAll
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2312
      start: 1714
    functionDepth: 10
    functionLinenumber: 1714
    functionLinenumberEnd: 2312
    functionName: gf_media_split_svc
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_isom_get_track_id_max
    - gf_free
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_odf_avc_cfg_del
    - gf_isom_get_timescale
    - gf_isom_get_sample_count
    - gf_list_count
    - memset
    - gf_isom_add_sample
    - gf_isom_get_track_id
    - gf_isom_svc_config_del
    - gf_bs_available
    - gf_isom_get_nalu_extract_mode
    - gf_isom_set_nalu_extract_mode
    - gf_bs_write_u32
    - gf_avc_read_pps
    - gf_realloc
    - gf_isom_svc_config_get
    - gf_list_get
    - gf_assert
    - gf_isom_remove_track
    - gf_isom_sample_del
    - memcpy
    - gf_bs_get_content
    - gf_isom_get_reference
    - gf_isom_set_edit
    - gf_isom_svc_config_update
    - gf_list_add
    - gf_isom_set_track_enabled
    - gf_isom_get_sample
    - gf_isom_last_error
    - gf_media_merge_svc
    - gf_isom_has_track_reference
    - gf_bs_enable_emulation_byte_removal
    - gf_bs_write_int
    - gf_isom_new_track
    - gf_bs_write_data
    - gf_bs_get_position
    - gf_isom_sample_new
    - gf_isom_update_sample
    - gf_odf_avc_cfg_new
    - gf_avc_read_sps
    - gf_isom_get_edits_count
    - gf_isom_get_avc_svc_type
    - gf_malloc
    - gf_isom_svc_config_new
    - gf_isom_set_visual_info
    - gf_bs_seek
    - gf_bs_del
    - gf_isom_get_media_duration
    - gf_isom_get_media_timescale
    - gf_bs_read_int
    - gf_avc_parse_nalu
    - gf_isom_get_edit
    - gf_isom_has_svc_explicit
    - gf_bs_write_u8
    - gf_list_rem
    - gf_isom_set_track_reference
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_split_svc(GF_ISOFile *file, u32 track, Bool splitAll)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_avc_svc_type
      Src: /src/gpac/src/media_tools/isom_tools.c:2346,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2349,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:2352,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:2353,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2360,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:2361,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2362,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:2363,1
    - Dst: gf_get_DQId
      Src: /src/gpac/src/media_tools/isom_tools.c:2367,1
    - Dst: gf_isom_has_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:2373,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/src/media_tools/isom_tools.c:2392,1
    - Dst: gf_odf_avc_cfg_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2394,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/media_tools/isom_tools.c:2400,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/media_tools/isom_tools.c:2401,1
    - Dst: gf_isom_svc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2406,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2417,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2419,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2420,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2423,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/isom_tools.c:2424,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_tools.c:2425,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2427,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2429,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2430,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2433,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/isom_tools.c:2434,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_tools.c:2435,1
    - Dst: gf_isom_svc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:2439,1
    - Dst: gf_isom_svc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:2442,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2443,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2447,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2448,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2452,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2455,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2458,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:2460,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:2461,1
    - Dst: gf_isom_get_edit
      Src: /src/gpac/src/media_tools/isom_tools.c:2463,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2473,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2477,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:2479,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2482,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2492,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:2494,1
    - Dst: gf_isom_has_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:2495,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:2501,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:2503,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:2505,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:2507,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:2510,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/isom_tools.c:2512,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:2520,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/isom_tools.c:2522,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2527,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2531,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:2533,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/isom_tools.c:2534,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2536,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2538,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/isom_tools.c:2541,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2547,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/isom_tools.c:2548,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2550,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2552,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/isom_tools.c:2558,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2565,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:2569,1
    - Dst: gf_isom_update_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:2570,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2574,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2576,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2578,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:2585,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:2586,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/media_tools/isom_tools.c:2588,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/media_tools/isom_tools.c:2589,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/media_tools/isom_tools.c:2590,1
    - Dst: gf_isom_has_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:2596,1
    - Dst: gf_isom_remove_track
      Src: /src/gpac/src/media_tools/isom_tools.c:2598,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2605,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2606,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2607,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2608,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2609,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2610,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2611,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2612,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2613,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2614,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2615,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2616,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2617,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2618,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:2619,1
    CyclomaticComplexity: 72
    EdgeCount: 72
    ICount: 259
    argCount: 3
    argNames:
    - file
    - track
    - mergeAll
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2621
      start: 2315
    functionDepth: 10
    functionLinenumber: 2315
    functionLinenumberEnd: 2621
    functionName: gf_media_merge_svc
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_odf_avc_cfg_del
    - gf_bs_new
    - gf_isom_get_timescale
    - gf_isom_get_sample_count
    - gf_list_count
    - memset
    - gf_isom_get_track_id
    - gf_bs_available
    - gf_isom_set_nalu_extract_mode
    - gf_bs_write_u32
    - gf_realloc
    - gf_isom_svc_config_get
    - gf_list_get
    - gf_isom_remove_track
    - memcpy
    - gf_isom_sample_del
    - gf_bs_get_content
    - gf_isom_get_reference
    - gf_get_DQId
    - gf_isom_get_track_count
    - gf_isom_set_edit
    - gf_isom_svc_config_update
    - gf_list_add
    - gf_isom_set_track_enabled
    - gf_isom_get_sample
    - gf_isom_last_error
    - gf_isom_has_track_reference
    - gf_bs_write_int
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_isom_sample_new
    - gf_isom_update_sample
    - gf_odf_avc_cfg_new
    - gf_isom_get_edits_count
    - gf_isom_get_avc_svc_type
    - gf_malloc
    - gf_isom_set_visual_info
    - gf_bs_del
    - gf_isom_get_media_duration
    - gf_isom_get_media_timescale
    - gf_bs_read_int
    - gf_isom_get_edit
    - gf_isom_get_visual_info
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_merge_svc(GF_ISOFile *file, u32 track, Bool mergeAll)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2629,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2631,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/isom_tools.c:2634,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2636,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/isom_tools.c:2639,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_tools.c:2641,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - hevc_cfg
    - type
    argTypes:
    - GF_HEVCConfig*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2643
      start: 2626
    functionDepth: 1
    functionLinenumber: 2626
    functionLinenumberEnd: 2643
    functionName: alloc_hevc_param_array
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_get
    - gf_list_new
    - GF_SAFEALLOC
    - gf_list_count
    - gf_list_add
    linkageType: ''
    returnType: GF_NALUFFParamArray
    signature: GF_NALUFFParamArray *alloc_hevc_param_array(GF_HEVCConfig *hevc_cfg,
      u8 type)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2678,1
    - Dst: gf_isom_lhvc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2679,1
    - Dst: gf_isom_get_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:2685,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:2686,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2689,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2692,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2695,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2696,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2698,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/isom_tools.c:2704,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2707,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2708,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2715,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2718,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2719,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2721,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/isom_tools.c:2727,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2730,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2731,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2738,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:2744,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2746,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2747,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/isom_tools.c:2748,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2749,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2750,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2751,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2752,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2753,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/media_tools/isom_tools.c:2759,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2765,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/isom_tools.c:2767,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2769,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2770,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2771,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2772,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2773,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/isom_tools.c:2774,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2777,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2778,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:2782,1
    - Dst: gf_isom_update_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:2783,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2784,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2785,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2792,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2793,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:2794,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2795,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 87
    argCount: 4
    argNames:
    - file
    - track
    - max_temporal_id_plus_one
    - max_layer_id_plus_one
    argTypes:
    - GF_ISOFile*
    - u32
    - u8
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2797
      start: 2666
    functionDepth: 7
    functionLinenumber: 2666
    functionLinenumberEnd: 2797
    functionName: gf_media_filter_hevc
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_read_data
    - gf_bs_new
    - gf_isom_get_sample_count
    - gf_list_count
    - gf_bs_available
    - gf_isom_get_nalu_extract_mode
    - gf_isom_set_nalu_extract_mode
    - gf_isom_hevc_config_get
    - gf_realloc
    - gf_list_get
    - gf_bs_get_content
    - gf_isom_sample_del
    - gf_isom_get_sample
    - gf_bs_skip_bytes
    - gf_bs_write_int
    - gf_bs_write_data
    - gf_isom_update_sample
    - gf_malloc
    - gf_odf_hevc_cfg_del
    - gf_isom_lhvc_config_get
    - gf_bs_del
    - gf_bs_read_int
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_filter_hevc(GF_ISOFile *file, u32 track, u8 max_temporal_id_plus_one,
      u8 max_layer_id_plus_one)
  - BBCount: 97
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/isom_tools.c:2812,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2815,1
    - Dst: gf_isom_lhvc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2816,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2818,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2819,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2824,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2825,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2826,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2830,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2834,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2835,1
    - Dst: gf_isom_get_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:2840,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:2841,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2844,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:2847,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2861,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2865,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2870,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2872,1
    - Dst: gf_hevc_get_sps_info_with_state
      Src: /src/gpac/src/media_tools/isom_tools.c:2878,1
    - Dst: gf_hevc_read_pps
      Src: /src/gpac/src/media_tools/isom_tools.c:2884,1
    - Dst: gf_hevc_read_vps
      Src: /src/gpac/src/media_tools/isom_tools.c:2886,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/isom_tools.c:2891,1
    - Dst: gf_odf_hevc_cfg_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2902,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/isom_tools.c:2904,1
    - Dst: alloc_hevc_param_array
      Src: /src/gpac/src/media_tools/isom_tools.c:2911,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_tools.c:2912,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/isom_tools.c:2913,1
    - Dst: gf_isom_set_cts_packing
      Src: /src/gpac/src/media_tools/isom_tools.c:2925,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2933,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2937,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2939,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2941,1
    - Dst: alloc_hevc_param_array
      Src: /src/gpac/src/media_tools/isom_tools.c:2949,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/isom_tools.c:2952,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2954,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2956,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/isom_tools.c:2959,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_tools.c:2962,1
    - Dst: gf_isom_lhvc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:2970,1
    - Dst: gf_isom_lhvc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:2972,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:2975,1
    - Dst: gf_isom_remove_sample_group
      Src: /src/gpac/src/media_tools/isom_tools.c:2980,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2983,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2985,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:2995,1
    - Dst: gf_isom_get_sample_rap_roll_info
      Src: /src/gpac/src/media_tools/isom_tools.c:2996,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2998,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/isom_tools.c:2999,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3001,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/isom_tools.c:3002,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3003,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3004,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3005,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3006,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:3033,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3035,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3036,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3037,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3038,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3039,1
    - Dst: gf_hevc_get_sps_info_with_state
      Src: /src/gpac/src/media_tools/isom_tools.c:3060,1
    - Dst: gf_hevc_read_pps
      Src: /src/gpac/src/media_tools/isom_tools.c:3066,1
    - Dst: gf_hevc_read_vps
      Src: /src/gpac/src/media_tools/isom_tools.c:3068,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/isom_tools.c:3074,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/isom_tools.c:3077,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/isom_tools.c:3078,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3080,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3089,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:3103,1
    - Dst: gf_isom_clone_track
      Src: /src/gpac/src/media_tools/isom_tools.c:3104,1
    - Dst: gf_odf_hevc_cfg_new
      Src: /src/gpac/src/media_tools/isom_tools.c:3111,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/isom_tools.c:3113,1
    - Dst: gf_isom_lhvc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:3119,1
    - Dst: gf_isom_lhvc_force_inband_config
      Src: /src/gpac/src/media_tools/isom_tools.c:3123,1
    - Dst: gf_isom_lhvc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:3125,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3129,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:3133,1
    - Dst: gf_isom_remove_sample_group
      Src: /src/gpac/src/media_tools/isom_tools.c:3136,1
    - Dst: gf_isom_remove_sample_group
      Src: /src/gpac/src/media_tools/isom_tools.c:3139,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:3140,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:3142,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:3148,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:3149,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3155,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3158,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:3162,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3169,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3170,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3171,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3172,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3173,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:3174,1
    - Dst: gf_isom_has_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:3176,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:3176,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3177,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3179,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3181,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3182,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:3195,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3196,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:3200,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3202,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3205,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:3210,1
    - Dst: gf_isom_append_sample_data
      Src: /src/gpac/src/media_tools/isom_tools.c:3211,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3213,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:3225,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:3226,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:3230,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:3240,1
    - Dst: gf_isom_update_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:3243,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3246,1
    - Dst: gf_isom_remove_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:3252,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3254,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3261,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_tools.c:3265,1
    - Dst: gf_isom_set_sample_rap_group
      Src: /src/gpac/src/media_tools/isom_tools.c:3267,1
    - Dst: gf_isom_set_sample_roll_group
      Src: /src/gpac/src/media_tools/isom_tools.c:3270,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3275,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3280,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3297,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:3299,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3300,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3305,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3311,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3312,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3313,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3314,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3315,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3318,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3322,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:3325,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3326,1
    - Dst: gf_isom_add_sample_group_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3327,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3328,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:3330,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:3333,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:3334,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:3338,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:3339,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3341,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3342,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3343,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3344,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3346,1
    CyclomaticComplexity: 153
    EdgeCount: 153
    ICount: 436
    argCount: 5
    argNames:
    - file
    - track
    - for_temporal_sublayers
    - splitAll
    - extractor_mode
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    - Bool
    - GF_LHVCExtractoreMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3352
      start: 2799
    functionDepth: 10
    functionLinenumber: 2799
    functionLinenumberEnd: 3352
    functionName: gf_media_split_lhvc
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_read_data
    - gf_isom_remove_sample
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_isom_get_sample_count
    - gf_isom_modify_alternate_brand
    - gf_list_count
    - memset
    - gf_isom_add_sample
    - gf_isom_get_sample_rap_roll_info
    - gf_isom_get_track_id
    - gf_bs_available
    - gf_isom_get_nalu_extract_mode
    - gf_isom_set_nalu_extract_mode
    - gf_isom_hevc_config_get
    - gf_odf_hevc_cfg_new
    - gf_hevc_read_vps
    - gf_realloc
    - gf_hevc_get_sps_info_with_state
    - gf_list_get
    - gf_assert
    - memcpy
    - gf_bs_get_content
    - gf_isom_sample_del
    - gf_isom_lhvc_config_update
    - gf_list_add
    - gf_isom_append_sample_data
    - gf_isom_lhvc_force_inband_config
    - gf_isom_clone_track
    - gf_isom_get_sample
    - gf_isom_has_track_reference
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_isom_update_sample
    - gf_malloc
    - gf_odf_hevc_cfg_del
    - gf_isom_set_visual_info
    - gf_isom_lhvc_config_get
    - gf_isom_set_sample_roll_group
    - alloc_hevc_param_array
    - gf_bs_del
    - gf_isom_add_sample_group_info
    - gf_bs_read_int
    - gf_isom_set_cts_packing
    - gf_isom_remove_sample_group
    - gf_isom_set_sample_rap_group
    - gf_hevc_read_pps
    - gf_bs_write_u8
    - gf_list_rem
    - gf_isom_set_track_reference
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_split_lhvc(GF_ISOFile *file, u32 track, Bool for_temporal_sublayers,
      Bool splitAll, GF_LHVCExtractoreMode extractor_mode)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/isom_tools.c:3362,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:3373,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:3381,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:3383,1
    - Dst: gf_isom_avc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:3387,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3389,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 5
    argNames:
    - file
    - track
    - profile
    - compat
    - level
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3391
      start: 3355
    functionDepth: 10
    functionLinenumber: 3355
    functionLinenumberEnd: 3391
    functionName: gf_media_change_pl
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_avc_config_get
    - gf_odf_avc_cfg_del
    - gf_isom_get_media_subtype
    - gf_list_count
    - gf_isom_avc_config_update
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_change_pl(GF_ISOFile *file, u32 track, u32 profile,
      u32 compat, u32 level)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 57
    argCount: 5
    argNames:
    - hevc
    - tile_x
    - tile_y
    - tile_width
    - tile_height
    argTypes:
    - HEVCState*
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3458
      start: 3396
    functionDepth: 0
    functionLinenumber: 3396
    functionLinenumberEnd: 3458
    functionName: hevc_get_tile_id
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 hevc_get_tile_id(HEVCState *hevc, u32 *tile_x, u32 *tile_y, u32
      *tile_width, u32 *tile_height)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:3478,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:3480,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/isom_tools.c:3481,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3482,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3483,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3484,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3485,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3486,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3487,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/isom_tools.c:3489,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/isom_tools.c:3490,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/isom_tools.c:3493,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/isom_tools.c:3494,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3495,1
    - Dst: gf_isom_add_sample_group_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3497,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 11
    argNames:
    - file
    - track
    - id
    - full_picture
    - independent
    - filtering_disable
    - tx
    - ty
    - tw
    - th
    - is_default
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - Bool
    - u32
    - Bool
    - u32
    - u32
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3498
      start: 3472
    functionDepth: 6
    functionLinenumber: 3472
    functionLinenumberEnd: 3498
    functionName: hevc_add_trif
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_write_int
    - gf_bs_del
    - gf_isom_add_sample_group_info
    - memset
    linkageType: ''
    returnType: void
    signature: void hevc_add_trif(GF_ISOFile *file, u32 track, u32 id, Bool full_picture,
      u32 independent, Bool filtering_disable, u32 tx, u32 ty, u32 tw, u32 th, Bool
      is_default)
  - BBCount: 63
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/isom_tools.c:3515,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/isom_tools.c:3516,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:3532,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/isom_tools.c:3535,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:3538,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:3540,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:3541,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:3542,1
    - Dst: gf_hevc_read_pps
      Src: /src/gpac/src/media_tools/isom_tools.c:3546,1
    - Dst: gf_hevc_read_sps
      Src: /src/gpac/src/media_tools/isom_tools.c:3549,1
    - Dst: gf_hevc_read_vps
      Src: /src/gpac/src/media_tools/isom_tools.c:3552,1
    - Dst: gf_isom_hevc_set_tile_config
      Src: /src/gpac/src/media_tools/isom_tools.c:3557,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3558,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:3563,1
    - Dst: gf_hevc_parse_nalu
      Src: /src/gpac/src/media_tools/isom_tools.c:3575,1
    - Dst: gf_hevc_read_pps
      Src: /src/gpac/src/media_tools/isom_tools.c:3579,1
    - Dst: gf_hevc_read_sps
      Src: /src/gpac/src/media_tools/isom_tools.c:3582,1
    - Dst: gf_hevc_read_vps
      Src: /src/gpac/src/media_tools/isom_tools.c:3585,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3591,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3595,1
    - Dst: hevc_add_trif
      Src: /src/gpac/src/media_tools/isom_tools.c:3603,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:3603,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3604,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3605,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:3610,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3612,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:3615,1
    - Dst: gf_isom_clone_track
      Src: /src/gpac/src/media_tools/isom_tools.c:3620,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:3622,1
    - Dst: gf_isom_hevc_set_tile_config
      Src: /src/gpac/src/media_tools/isom_tools.c:3623,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:3626,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:3626,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:3628,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_tools.c:3633,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:3638,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/isom_tools.c:3640,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:3647,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:3653,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:3659,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3661,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3662,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3663,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:3664,1
    - Dst: gf_hevc_parse_nalu
      Src: /src/gpac/src/media_tools/isom_tools.c:3677,1
    - Dst: hevc_get_tile_id
      Src: /src/gpac/src/media_tools/isom_tools.c:3700,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3702,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/isom_tools.c:3720,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:3724,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/isom_tools.c:3725,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/isom_tools.c:3729,1
    - Dst: gf_isom_has_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:3731,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:3732,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/isom_tools.c:3739,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/isom_tools.c:3743,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:3747,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/isom_tools.c:3748,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3759,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:3760,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3761,1
    - Dst: gf_isom_update_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:3763,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3766,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:3771,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3773,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:3779,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3783,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3785,1
    - Dst: gf_isom_copy_sample_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3788,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:3795,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3796,1
    - Dst: gf_isom_add_sample_group_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3799,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3801,1
    - Dst: gf_isom_add_sample_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3803,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3805,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3808,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3812,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/media_tools/isom_tools.c:3823,1
    - Dst: gf_isom_remove_track
      Src: /src/gpac/src/media_tools/isom_tools.c:3825,1
    - Dst: hevc_add_trif
      Src: /src/gpac/src/media_tools/isom_tools.c:3829,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3830,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3832,1
    - Dst: gf_isom_set_track_layout_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3833,1
    - Dst: hevc_add_trif
      Src: /src/gpac/src/media_tools/isom_tools.c:3835,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3842,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3843,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3845,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/isom_tools.c:3845,1
    CyclomaticComplexity: 74
    EdgeCount: 74
    ICount: 288
    argCount: 2
    argNames:
    - file
    - signal_mode
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3849
      start: 3500
    functionDepth: 10
    functionLinenumber: 3500
    functionLinenumberEnd: 3849
    functionName: gf_media_split_hevc_tiles
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_isom_copy_sample_info
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_write_u16
    - gf_isom_get_sample_count
    - gf_list_count
    - memset
    - gf_isom_add_sample
    - gf_isom_get_track_id
    - gf_isom_get_track_by_id
    - gf_isom_hevc_config_get
    - gf_hevc_read_vps
    - gf_isom_set_track_layout_info
    - gf_list_get
    - gf_isom_remove_track
    - gf_isom_sample_del
    - gf_bs_get_content
    - gf_isom_get_media_subtype
    - gf_isom_get_track_count
    - hevc_add_trif
    - gf_isom_clone_track
    - gf_isom_get_sample
    - gf_hevc_parse_nalu
    - gf_isom_last_error
    - gf_isom_has_track_reference
    - gf_isom_hevc_set_tile_config
    - GF_LOG
    - gf_bs_write_int
    - gf_isom_add_sample_info
    - gf_bs_write_data
    - gf_isom_update_sample
    - gf_isom_get_track_layout_info
    - gf_error_to_string
    - gf_malloc
    - gf_odf_hevc_cfg_del
    - hevc_get_tile_id
    - gf_isom_set_visual_info
    - gf_bs_del
    - gf_isom_add_sample_group_info
    - gf_hevc_read_sps
    - gf_hevc_read_pps
    - gf_bs_write_u8
    - gf_isom_set_track_reference
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_split_hevc_tiles(GF_ISOFile *file, u32 signal_mode)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_get_filters_count
      Src: /src/gpac/src/media_tools/isom_tools.c:3879,1
    - Dst: gf_fs_get_filter_stats
      Src: /src/gpac/src/media_tools/isom_tools.c:3881,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/isom_tools.c:3882,1
    - Dst: gf_fs_get_filter_stats
      Src: /src/gpac/src/media_tools/isom_tools.c:3888,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3896,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:3898,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 30
    argCount: 2
    argNames:
    - _udta
    - evt
    argTypes:
    - void*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3901
      start: 3867
    functionDepth: 1
    functionLinenumber: 3867
    functionLinenumberEnd: 3901
    functionName: on_frag_event
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_fs_get_filters_count
    - GF_LOG
    - strcmp
    - gf_fs_get_filter_stats
    - fprintf
    linkageType: ''
    returnType: Bool
    signature: Bool on_frag_event(void *_udta, GF_Event *evt)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_new_defaults
      Src: /src/gpac/src/media_tools/isom_tools.c:3910,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3913,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:3918,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/isom_tools.c:3919,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3920,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/isom_tools.c:3922,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/isom_tools.c:3923,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3924,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:3926,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/isom_tools.c:3928,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/media_tools/isom_tools.c:3930,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3931,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:3933,1
    - Dst: gf_log_get_tool_level
      Src: /src/gpac/src/media_tools/isom_tools.c:3935,1
    - Dst: gf_sys_is_quiet
      Src: /src/gpac/src/media_tools/isom_tools.c:3937,1
    - Dst: gf_fs_enable_reporting
      Src: /src/gpac/src/media_tools/isom_tools.c:3942,1
    - Dst: gf_fs_set_ui_callback
      Src: /src/gpac/src/media_tools/isom_tools.c:3943,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:3947,1
    - Dst: on_frag_event
      Src: /src/gpac/src/media_tools/isom_tools.c:3948,1
    - Dst: gf_fs_run
      Src: /src/gpac/src/media_tools/isom_tools.c:3951,1
    - Dst: gf_fs_get_last_connect_error
      Src: /src/gpac/src/media_tools/isom_tools.c:3953,1
    - Dst: gf_fs_get_last_process_error
      Src: /src/gpac/src/media_tools/isom_tools.c:3954,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3955,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 43
    argCount: 4
    argNames:
    - input
    - output_file
    - max_duration_sec
    - use_mfra
    argTypes:
    - GF_ISOFile*
    - char*
    - Double
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3957
      start: 3903
    functionDepth: 2
    functionLinenumber: 3903
    functionLinenumberEnd: 3957
    functionName: gf_media_fragment_file
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 1
    functionsReached:
    - strcat
    - gf_fs_load_destination
    - gf_fs_set_ui_callback
    - gf_fs_load_filter
    - on_frag_event
    - gf_fs_get_last_process_error
    - GF_LOG
    - strcpy
    - gf_fs_enable_reporting
    - gf_fs_run
    - sprintf
    - gf_sys_is_test_mode
    - gf_sys_is_quiet
    - gf_fs_get_last_connect_error
    - gf_log_get_tool_level
    - gf_fs_del
    - gf_fs_new_defaults
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_fragment_file(GF_ISOFile *input, const char *output_file,
      Double max_duration_sec, Bool use_mfra)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3967,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/media_tools/isom_tools.c:3979,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:3988,1
    - Dst: gf_codecid_oti
      Src: /src/gpac/src/media_tools/isom_tools.c:3988,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:3992,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4000,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 5
    argNames:
    - szCodec
    - codec_id
    - dsi
    - dsi_size
    - force_sbr
    argTypes:
    - char*
    - u32
    - u8*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4004
      start: 3962
    functionDepth: 4
    functionLinenumber: 3962
    functionLinenumberEnd: 4004
    functionName: rfc_6381_get_codec_aac
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_m4a_get_config
    - GF_LOG
    - gf_codecid_oti
    - snprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rfc_6381_get_codec_aac(char *szCodec, u32 codec_id,  u8 *dsi,
      u32 dsi_size, Bool force_sbr)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:4012,1
    - Dst: gf_odf_ac4_cfg_parse_bs
      Src: /src/gpac/src/media_tools/isom_tools.c:4015,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4016,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4020,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4022,1
    - Dst: gf_odf_ac4_cfg_clean_list
      Src: /src/gpac/src/media_tools/isom_tools.c:4027,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4029,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/isom_tools.c:4029,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 4
    argNames:
    - szCodec
    - codec_id
    - dsi
    - dsi_size
    argTypes:
    - char*
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4032
      start: 4006
    functionDepth: 6
    functionLinenumber: 4006
    functionLinenumberEnd: 4032
    functionName: dolby_get_codec_ac4
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - snprintf
    - gf_bs_new
    - gf_odf_ac4_cfg_parse_bs
    - GF_LOG
    - gf_bs_del
    - gf_odf_ac4_cfg_clean_list
    - gf_error_to_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dolby_get_codec_ac4(char *szCodec, u32 codec_id,  u8 *dsi, u32
      dsi_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/media_tools/isom_tools.c:4039,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4040,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4044,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4045,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - szCodec
    - codec_id
    - dsi
    - dsi_size
    argTypes:
    - char*
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4047
      start: 4034
    functionDepth: 5
    functionLinenumber: 4034
    functionLinenumberEnd: 4047
    functionName: rfc_6381_get_codec_m4v
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_m4v_get_config
    - GF_LOG
    - snprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rfc_6381_get_codec_m4v(char *szCodec, u32 codec_id, u8 *dsi,
      u32 dsi_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/isom_tools.c:4051,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4052,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4052,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - szCodec
    - subtype
    - avcc
    argTypes:
    - char*
    - u32
    - GF_AVCConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4054
      start: 4049
    functionDepth: 1
    functionLinenumber: 4049
    functionLinenumberEnd: 4054
    functionName: rfc_6381_get_codec_avc
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_assert
    - snprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rfc_6381_get_codec_avc(char *szCodec, u32 subtype, GF_AVCConfig
      *avcc)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/isom_tools.c:4060,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4062,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4062,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4063,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4064,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4065,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4067,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4068,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4079,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4080,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4083,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4084,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4085,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4086,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4093,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4094,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4097,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4098,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4101,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4102,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4105,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4106,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4109,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4110,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4112,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4113,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 57
    argCount: 3
    argNames:
    - szCodec
    - subtype
    - hvcc
    argTypes:
    - char*
    - u32
    - GF_HEVCConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4119
      start: 4056
    functionDepth: 1
    functionLinenumber: 4056
    functionLinenumberEnd: 4119
    functionName: rfc_6381_get_codec_hevc
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_4cc_to_str
    - gf_assert
    - snprintf
    - sprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rfc_6381_get_codec_hevc(char *szCodec, u32 subtype, GF_HEVCConfig
      *hvcc)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/isom_tools.c:4127,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/isom_tools.c:4129,1
    - Dst: gf_av1_init_state
      Src: /src/gpac/src/media_tools/isom_tools.c:4131,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:4134,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4136,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:4137,1
    - Dst: av1_is_obu_header
      Src: /src/gpac/src/media_tools/isom_tools.c:4138,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4139,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4139,1
    - Dst: aom_av1_parse_temporal_unit_from_section5
      Src: /src/gpac/src/media_tools/isom_tools.c:4141,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4142,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4149,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4149,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4154,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4161,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4166,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/media_tools/isom_tools.c:4170,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:4171,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 4
    argNames:
    - szCodec
    - subtype
    - av1c
    - colr
    argTypes:
    - char*
    - u32
    - GF_AV1Config*
    - COLR
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4176
      start: 4121
    functionDepth: 5
    functionLinenumber: 4121
    functionLinenumberEnd: 4176
    functionName: rfc_6381_get_codec_av1
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_4cc_to_str
    - gf_assert
    - gf_list_get
    - gf_free
    - gf_bs_new
    - GF_SAFEALLOC
    - snprintf
    - GF_LOG
    - aom_av1_parse_temporal_unit_from_section5
    - gf_av1_init_state
    - gf_list_count
    - gf_bs_del
    - gf_av1_reset_state
    - av1_is_obu_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rfc_6381_get_codec_av1(char *szCodec, u32 subtype, GF_AV1Config
      *av1c, COLR colr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/isom_tools.c:4180,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4181,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - szCodec
    - subtype
    - vpcc
    - colr
    argTypes:
    - char*
    - u32
    - GF_VPConfig*
    - COLR
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4191
      start: 4178
    functionDepth: 1
    functionLinenumber: 4178
    functionLinenumberEnd: 4191
    functionName: rfc_6381_get_codec_vpx
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_assert
    - snprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rfc_6381_get_codec_vpx(char *szCodec, u32 subtype, GF_VPConfig
      *vpcc, COLR colr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4200,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4200,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 4
    argNames:
    - szCodec
    - subtype
    - av3c
    - colr
    argTypes:
    - char*
    - u32
    - GF_AVS3VConfig*
    - COLR
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4205
      start: 4193
    functionDepth: 1
    functionLinenumber: 4193
    functionLinenumberEnd: 4205
    functionName: rfc_6381_get_codec_avs3v
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - snprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rfc_6381_get_codec_avs3v(char *szCodec, u32 subtype, GF_AVS3VConfig
      *av3c, COLR colr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4209,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - szCodec
    - subtype
    - dovi
    argTypes:
    - char*
    - u32
    - GF_DOVIDecoderConfigurationRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4211
      start: 4207
    functionDepth: 1
    functionLinenumber: 4207
    functionLinenumberEnd: 4211
    functionName: rfc_6381_get_codec_dolby_vision
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - snprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rfc_6381_get_codec_dolby_vision(char *szCodec, u32 subtype,
      GF_DOVIDecoderConfigurationRecord *dovi)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/isom_tools.c:4217,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_tools.c:4220,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_tools.c:4220,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4221,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4221,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4223,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4223,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:4227,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:4228,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:4229,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:4231,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/isom_tools.c:4233,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/isom_tools.c:4234,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4235,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4240,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4243,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/isom_tools.c:4244,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:4245,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/isom_tools.c:4247,1
    - Dst: gf_bs_bits_available
      Src: /src/gpac/src/media_tools/isom_tools.c:4247,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:4250,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4264,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4265,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4269,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 3
    argNames:
    - szCodec
    - subtype
    - vvcc
    argTypes:
    - char*
    - u32
    - GF_VVCConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4272
      start: 4215
    functionDepth: 1
    functionLinenumber: 4215
    functionLinenumberEnd: 4272
    functionName: rfc_6381_get_codec_vvc
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_4cc_to_str
    - gf_assert
    - gf_bs_bits_available
    - gf_bs_new
    - snprintf
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_del
    - gf_bs_read_int
    - GF_4CC
    - gf_bs_available
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rfc_6381_get_codec_vvc(char *szCodec, u32 subtype, GF_VVCConfig
      *vvcc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4280,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4282,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4282,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 5
    argNames:
    - szCodec
    - subtype
    - dsi
    - dsi_size
    - pl
    argTypes:
    - char*
    - u32
    - u8*
    - u32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4284
      start: 4274
    functionDepth: 1
    functionLinenumber: 4274
    functionLinenumberEnd: 4284
    functionName: rfc_6381_get_codec_mpegha
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - snprintf
    - gf_4cc_to_str
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rfc_6381_get_codec_mpegha(char *szCodec, u32 subtype, u8 *dsi,
      u32 dsi_size, s32 pl)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_iamf_init_state
      Src: /src/gpac/src/media_tools/isom_tools.c:4290,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:4292,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4294,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:4295,1
    - Dst: gf_iamf_parse_obu
      Src: /src/gpac/src/media_tools/isom_tools.c:4299,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4300,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4302,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_tools.c:4309,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_tools.c:4312,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_tools.c:4315,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_tools.c:4318,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4322,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4325,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 2
    argNames:
    - szCodec
    - cfg
    argTypes:
    - char*
    - GF_IAConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4330
      start: 4286
    functionDepth: 6
    functionLinenumber: 4286
    functionLinenumberEnd: 4330
    functionName: rfc_6381_get_codec_iamf
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_bs_new
    - snprintf
    - GF_LOG
    - gf_iamf_init_state
    - gf_bs_del
    - gf_list_count
    - gf_iamf_parse_obu
    - GF_4CC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rfc_6381_get_codec_iamf(char *szCodec, GF_IAConfig *cfg)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/media_tools/isom_tools.c:4356,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4357,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4357,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/isom_tools.c:4362,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4363,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4363,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4368,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4368,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 5
    argNames:
    - szCodec
    - subtype
    - xmlnamespace
    - xml_schema_loc
    - mimes
    argTypes:
    - char*
    - u32
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4370
      start: 4346
    functionDepth: 1
    functionLinenumber: 4346
    functionLinenumberEnd: 4370
    functionName: rfc_6381_get_codec_stpp
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - snprintf
    - strstr
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err rfc_6381_get_codec_stpp(char *szCodec, u32 subtype,\n                               const
      char *xmlnamespace,\n                               const char *xml_schema_loc,\n
      \                              const char *mimes)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_codecid_type
      Src: /src/gpac/src/media_tools/isom_tools.c:4375,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4377,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4379,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4381,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4383,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4383,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4384,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4384,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - szCodec
    - subtype
    - codec_id
    argTypes:
    - char*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4387
      start: 4372
    functionDepth: 1
    functionLinenumber: 4372
    functionLinenumberEnd: 4387
    functionName: rfc6381_codec_name_default
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_codecid_type
    - snprintf
    - gf_4cc_to_str
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rfc6381_codec_name_default(char *szCodec, u32 subtype, u32 codec_id)
  - BBCount: 77
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/isom_tools.c:4398,1
    - Dst: gf_isom_is_ismacryp_media
      Src: /src/gpac/src/media_tools/isom_tools.c:4402,1
    - Dst: gf_isom_get_ismacryp_info
      Src: /src/gpac/src/media_tools/isom_tools.c:4403,1
    - Dst: gf_isom_is_omadrm_media
      Src: /src/gpac/src/media_tools/isom_tools.c:4404,1
    - Dst: gf_isom_get_omadrm_info
      Src: /src/gpac/src/media_tools/isom_tools.c:4405,1
    - Dst: gf_isom_is_cenc_media
      Src: /src/gpac/src/media_tools/isom_tools.c:4406,1
    - Dst: gf_isom_get_cenc_info
      Src: /src/gpac/src/media_tools/isom_tools.c:4407,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4409,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4409,1
    - Dst: gf_isom_is_media_encrypted
      Src: /src/gpac/src/media_tools/isom_tools.c:4409,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/src/media_tools/isom_tools.c:4410,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4413,1
    - Dst: gf_isom_get_mpeg4_subtype
      Src: /src/gpac/src/media_tools/isom_tools.c:4420,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/src/media_tools/isom_tools.c:4422,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/isom_tools.c:4427,1
    - Dst: rfc_6381_get_codec_aac
      Src: /src/gpac/src/media_tools/isom_tools.c:4432,1
    - Dst: rfc_6381_get_codec_aac
      Src: /src/gpac/src/media_tools/isom_tools.c:4434,1
    - Dst: rfc_6381_get_codec_m4v
      Src: /src/gpac/src/media_tools/isom_tools.c:4439,1
    - Dst: rfc_6381_get_codec_m4v
      Src: /src/gpac/src/media_tools/isom_tools.c:4441,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4445,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4449,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4452,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4453,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4460,1
    - Dst: rfc_6381_get_codec_avc
      Src: /src/gpac/src/media_tools/isom_tools.c:4468,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4469,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4472,1
    - Dst: gf_isom_mvc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4477,1
    - Dst: gf_isom_svc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4478,1
    - Dst: rfc_6381_get_codec_avc
      Src: /src/gpac/src/media_tools/isom_tools.c:4480,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4481,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4484,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4499,1
    - Dst: gf_isom_lhvc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4501,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:4505,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4506,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4507,1
    - Dst: rfc_6381_get_codec_hevc
      Src: /src/gpac/src/media_tools/isom_tools.c:4510,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4511,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4514,1
    - Dst: gf_isom_av1_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4519,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:4523,1
    - Dst: gf_isom_get_color_info
      Src: /src/gpac/src/media_tools/isom_tools.c:4524,1
    - Dst: rfc_6381_get_codec_av1
      Src: /src/gpac/src/media_tools/isom_tools.c:4527,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4528,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4531,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4531,1
    - Dst: gf_isom_avs3v_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4537,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:4541,1
    - Dst: gf_isom_get_color_info
      Src: /src/gpac/src/media_tools/isom_tools.c:4542,1
    - Dst: rfc_6381_get_codec_avs3v
      Src: /src/gpac/src/media_tools/isom_tools.c:4545,1
    - Dst: gf_odf_avs3v_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4546,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4549,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4549,1
    - Dst: gf_isom_vp_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4556,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:4560,1
    - Dst: gf_isom_get_color_info
      Src: /src/gpac/src/media_tools/isom_tools.c:4561,1
    - Dst: rfc_6381_get_codec_vpx
      Src: /src/gpac/src/media_tools/isom_tools.c:4564,1
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4565,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4568,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4568,1
    - Dst: gf_isom_dovi_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4578,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4580,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4580,1
    - Dst: rfc_6381_get_codec_dolby_vision
      Src: /src/gpac/src/media_tools/isom_tools.c:4584,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4585,1
    - Dst: gf_isom_vvc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4592,1
    - Dst: rfc_6381_get_codec_vvc
      Src: /src/gpac/src/media_tools/isom_tools.c:4596,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4597,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4600,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4600,1
    - Dst: gf_media_map_esd
      Src: /src/gpac/src/media_tools/isom_tools.c:4609,1
    - Dst: rfc_6381_get_codec_mpegha
      Src: /src/gpac/src/media_tools/isom_tools.c:4613,1
    - Dst: rfc_6381_get_codec_mpegha
      Src: /src/gpac/src/media_tools/isom_tools.c:4615,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4617,1
    - Dst: gf_isom_iamf_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4623,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4625,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4625,1
    - Dst: rfc_6381_get_codec_iamf
      Src: /src/gpac/src/media_tools/isom_tools.c:4628,1
    - Dst: gf_odf_iamf_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4629,1
    - Dst: gf_isom_get_generic_sample_description
      Src: /src/gpac/src/media_tools/isom_tools.c:4635,1
    - Dst: rfc_6381_get_codec_uncv
      Src: /src/gpac/src/media_tools/isom_tools.c:4637,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:4639,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:4640,1
    - Dst: gf_isom_xml_subtitle_get_description
      Src: /src/gpac/src/media_tools/isom_tools.c:4649,1
    - Dst: rfc_6381_get_codec_stpp
      Src: /src/gpac/src/media_tools/isom_tools.c:4652,1
    - Dst: rfc6381_codec_name_default
      Src: /src/gpac/src/media_tools/isom_tools.c:4657,1
    - Dst: gf_codec_id_from_isobmf
      Src: /src/gpac/src/media_tools/isom_tools.c:4657,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 224
    argCount: 6
    argNames:
    - movie
    - track
    - stsd_idx
    - szCodec
    - force_inband
    - force_sbr
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - char*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4660
      start: 4391
    functionDepth: 8
    functionLinenumber: 4391
    functionLinenumberEnd: 4660
    functionName: gf_media_get_rfc_6381_codec_name
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_odf_vvc_cfg_del
    - gf_codec_id_from_isobmf
    - gf_odf_avc_cfg_del
    - gf_odf_desc_del
    - rfc_6381_get_codec_hevc
    - gf_odf_iamf_cfg_del
    - rfc_6381_get_codec_mpegha
    - gf_isom_vvc_config_get
    - memset
    - rfc_6381_get_codec_uncv
    - gf_odf_av1_cfg_del
    - gf_isom_get_original_format_type
    - gf_isom_mvc_config_get
    - gf_isom_hevc_config_get
    - gf_isom_avs3v_config_get
    - rfc_6381_get_codec_vpx
    - rfc_6381_get_codec_stpp
    - gf_isom_svc_config_get
    - gf_4cc_to_str
    - gf_isom_dovi_config_get
    - rfc_6381_get_codec_aac
    - rfc6381_codec_name_default
    - snprintf
    - gf_media_map_esd
    - gf_isom_get_media_subtype
    - gf_isom_get_reference
    - gf_isom_get_omadrm_info
    - gf_isom_is_omadrm_media
    - rfc_6381_get_codec_dolby_vision
    - gf_isom_xml_subtitle_get_description
    - rfc_6381_get_codec_avc
    - gf_isom_vp_config_get
    - gf_isom_get_cenc_info
    - GF_LOG
    - gf_isom_get_color_info
    - gf_isom_get_esd
    - gf_isom_is_media_encrypted
    - gf_odf_dovi_cfg_del
    - gf_isom_get_ismacryp_info
    - gf_odf_vp_cfg_del
    - rfc_6381_get_codec_m4v
    - gf_isom_is_cenc_media
    - gf_odf_hevc_cfg_del
    - rfc_6381_get_codec_av1
    - gf_isom_lhvc_config_get
    - rfc_6381_get_codec_vvc
    - gf_isom_avc_config_get
    - gf_isom_iamf_config_get
    - rfc_6381_get_codec_avs3v
    - gf_isom_is_ismacryp_media
    - gf_isom_av1_config_get
    - gf_odf_avs3v_cfg_del
    - gf_isom_get_mpeg4_subtype
    - rfc_6381_get_codec_iamf
    - gf_isom_get_generic_sample_description
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_get_rfc_6381_codec_name(GF_ISOFile *movie, u32 track,
      u32 stsd_idx, char *szCodec, Bool force_inband, Bool force_sbr)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:4676,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4680,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/isom_tools.c:4683,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4684,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/isom_tools.c:4688,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4690,1
    - Dst: gf_av1_init_state
      Src: /src/gpac/src/media_tools/isom_tools.c:4693,1
    - Dst: gf_isom_av1_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4694,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4696,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:4697,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:4701,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4702,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:4703,1
    - Dst: gf_av1_parse_obu
      Src: /src/gpac/src/media_tools/isom_tools.c:4704,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4705,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:4710,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/isom_tools.c:4711,1
    - Dst: gf_av1_parse_obu
      Src: /src/gpac/src/media_tools/isom_tools.c:4712,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4715,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4717,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4720,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/media_tools/isom_tools.c:4721,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:4722,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4734,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/media_tools/isom_tools.c:4735,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:4736,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 61
    argCount: 5
    argNames:
    - file
    - trackNumber
    - sample_number
    - op_index
    - layer_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u8
    - u32[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4742
      start: 4663
    functionDepth: 10
    functionLinenumber: 4663
    functionLinenumberEnd: 4742
    functionName: gf_media_av1_layer_size_get
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_av1_parse_obu
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_isom_sample_del
    - gf_isom_get_media_subtype
    - gf_av1_init_state
    - gf_list_count
    - gf_bs_del
    - gf_av1_reset_state
    - gf_isom_av1_config_get
    - gf_odf_av1_cfg_del
    - gf_bs_available
    - gf_isom_get_sample
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_media_av1_layer_size_get(GF_ISOFile *file, u32 trackNumber,
      u32 sample_number, u8 op_index, u32 layer_size[3])
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:4754,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_tools.c:4756,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/isom_tools.c:4757,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/isom_tools.c:4761,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4762,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_tools.c:4765,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/isom_tools.c:4771,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/media_tools/isom_tools.c:4777,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/media_tools/isom_tools.c:4778,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4780,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/isom_tools.c:4780,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/isom_tools.c:4785,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/isom_tools.c:4785,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/isom_tools.c:4800,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/isom_tools.c:4801,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/isom_tools.c:4802,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/isom_tools.c:4803,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/isom_tools.c:4805,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/isom_tools.c:4807,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/isom_tools.c:4809,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/isom_tools.c:4810,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/isom_tools.c:4832,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/isom_tools.c:4834,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/isom_tools.c:4841,1
    - Dst: gf_isom_set_qt_key
      Src: /src/gpac/src/media_tools/isom_tools.c:4868,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:4869,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4872,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/isom_tools.c:4872,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 124
    argCount: 3
    argNames:
    - movie
    - name
    - val
    argTypes:
    - GF_ISOFile*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4875
      start: 4746
    functionDepth: 7
    functionLinenumber: 4746
    functionLinenumberEnd: 4875
    functionName: gf_media_isom_apply_qt_key
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 1
    functionsReached:
    - gf_free
    - sscanf
    - gf_isom_set_qt_key
    - gf_file_exists
    - GF_LOG
    - strstr
    - memset
    - strcmp
    - gf_error_to_string
    - GF_4CC
    - strchr
    - strlen
    - gf_file_load_data
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_isom_apply_qt_key(GF_ISOFile *movie, const char
      *name, const char *val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _dash
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 491
    functionDepth: 0
    functionLinenumber: 491
    functionLinenumberEnd: 492
    functionName: HLS_MIN_RELOAD_TIME
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: HLS_MIN_RELOAD_TIME(_dash)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:510,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/dash_client.c:511,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:513,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:517,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:520,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 2
    argNames:
    - dash
    - manifest_url
    argTypes:
    - GF_DashClient*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 506
    functionDepth: 0
    functionLinenumber: 506
    functionLinenumberEnd: 524
    functionName: gf_dash_set_base_url
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - strrchr
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dash_set_base_url(GF_DashClient *dash, const char *manifest_url)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:528,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:531,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 526
    functionDepth: 1
    functionLinenumber: 526
    functionLinenumberEnd: 535
    functionName: gf_dash_get_active_group
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_DASH_Group
    signature: GF_DASH_Group *gf_dash_get_active_group(GF_DashClient *dash, u32 idx)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 8
    argCount: 3
    argNames:
    - subrep
    - rep
    - set
    argTypes:
    - GF_MPD_SubRepresentation*
    - GF_MPD_Representation*
    - GF_MPD_AdaptationSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 543
      start: 537
    functionDepth: 0
    functionLinenumber: 537
    functionLinenumberEnd: 543
    functionName: gf_dash_get_mime_type
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_dash_get_mime_type(GF_MPD_SubRepresentation *subrep, GF_MPD_Representation
      *rep, GF_MPD_AdaptationSet *set)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_DashClient*::dash_io::get_utc_start_time
      Src: /src/gpac/src/media_tools/dash_client.c:551,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/media_tools/dash_client.c:553,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 546
    functionDepth: 1
    functionLinenumber: 546
    functionLinenumberEnd: 555
    functionName: dash_get_fetch_time
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_net_get_utc
    - GF_DashClient*::dash_io::get_utc_start_time
    linkageType: ''
    returnType: u64
    signature: u64 dash_get_fetch_time(GF_DashClient *dash)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:562,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:566,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:572,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:576,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 1
    argNames:
    - group
    argTypes:
    - GF_DASH_Group*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 558
    functionDepth: 1
    functionLinenumber: 558
    functionLinenumberEnd: 579
    functionName: gf_dash_group_count_rep_needed
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_assert
    linkageType: ''
    returnType: u32
    signature: u32 gf_dash_group_count_rep_needed(GF_DASH_Group *group)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_get_root_type
      Src: /src/gpac/src/media_tools/dash_client.c:585,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:588,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:588,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:591,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:594,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - local_url
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 599
      start: 581
    functionDepth: 1
    functionLinenumber: 581
    functionLinenumberEnd: 599
    functionName: gf_dash_check_mpd_root_type
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_free
    - strcmp
    - gf_xml_get_root_type
    linkageType: ''
    returnType: u32
    signature: u32 gf_dash_check_mpd_root_type(const char *local_url)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:612,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:613,1
    - Dst: GF_DashClient*::dash_io::create
      Src: /src/gpac/src/media_tools/dash_client.c:617,1
    - Dst: GF_DashClient*::dash_io::run
      Src: /src/gpac/src/media_tools/dash_client.c:619,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:621,1
    - Dst: GF_DashClient*::dash_io::get_status
      Src: /src/gpac/src/media_tools/dash_client.c:626,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:630,1
    - Dst: GF_DashClient*::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:635,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:637,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/media_tools/dash_client.c:642,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:644,1
    - Dst: GF_DashClient*::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:645,1
    - Dst: gf_net_parse_date
      Src: /src/gpac/src/media_tools/dash_client.c:647,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:654,1
    - Dst: gf_mpd_parse_date
      Src: /src/gpac/src/media_tools/dash_client.c:655,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:657,1
    - Dst: gf_net_parse_date
      Src: /src/gpac/src/media_tools/dash_client.c:658,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:660,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/dash_client.c:662,1
    - Dst: gf_net_ntp_to_utc
      Src: /src/gpac/src/media_tools/dash_client.c:667,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/media_tools/dash_client.c:674,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:676,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 64
    argCount: 4
    argNames:
    - dash
    - scheme_id
    - url
    - utc
    argTypes:
    - GF_DashClient*
    - char*
    - char*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 601
    functionDepth: 2
    functionLinenumber: 601
    functionLinenumberEnd: 679
    functionName: gf_dash_get_date
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_DashClient*::dash_io::run
    - GF_DashClient*::dash_io::del
    - sscanf
    - gf_blob_get
    - GF_DashClient*::dash_io::get_header_value
    - GF_DashClient*::dash_io::get_status
    - gf_mpd_parse_date
    - gf_blob_release
    - strcmp
    - gf_net_parse_date
    - gf_net_ntp_to_utc
    - GF_DashClient*::dash_io::create
    - GF_DashClient*::dash_io::get_cache_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dash_get_date(GF_DashClient *dash, char *scheme_id, char
      *url, u64 *utc)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - group
    - seg_dur
    - ssr_parts
    argTypes:
    - GF_DASH_Group*
    - Double
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 698
      start: 683
    functionDepth: 0
    functionLinenumber: 683
    functionLinenumberEnd: 698
    functionName: dash_ssr_adjust_group_start
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void dash_ssr_adjust_group_start(GF_DASH_Group *group, Double seg_dur,
      u32 ssr_parts)
  - BBCount: 188
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:717,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:719,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:724,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:725,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:726,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:729,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:731,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:732,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:740,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:741,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:744,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:745,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:748,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:750,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:758,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:759,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:762,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:803,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:806,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:827,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:841,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:842,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:860,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:861,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:863,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:867,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:871,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:873,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:876,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:878,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:883,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:885,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:891,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:892,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:894,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:903,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:905,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:906,1
    - Dst: gf_mpd_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:914,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:918,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:919,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:922,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:928,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:929,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:936,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:937,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:943,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/dash_client.c:945,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/dash_client.c:946,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_client.c:949,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/dash_client.c:950,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/dash_client.c:952,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/dash_client.c:953,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/dash_client.c:954,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:988,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:993,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:1018,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:1022,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/media_tools/dash_client.c:1030,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:1033,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1035,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:1037,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1051,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1056,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1067,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1071,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1075,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:1086,1
    - Dst: gf_net_parse_date
      Src: /src/gpac/src/media_tools/dash_client.c:1087,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:1094,1
    - Dst: gf_dash_get_date
      Src: /src/gpac/src/media_tools/dash_client.c:1098,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1122,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:1137,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/dash_client.c:1140,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1142,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:1146,1
    - Dst: gf_net_parse_date
      Src: /src/gpac/src/media_tools/dash_client.c:1148,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:1153,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1155,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1157,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1173,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/media_tools/dash_client.c:1192,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/media_tools/dash_client.c:1194,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1196,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1202,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1208,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:1228,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:1233,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1234,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1259,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1295,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:1369,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1371,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1386,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1394,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1400,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1417,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1434,1
    - Dst: dash_ssr_adjust_group_start
      Src: /src/gpac/src/media_tools/dash_client.c:1439,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1452,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:1461,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1464,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:1501,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1502,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1557,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1559,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1564,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1569,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1574,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1576,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1583,1
    - Dst: dash_ssr_adjust_group_start
      Src: /src/gpac/src/media_tools/dash_client.c:1591,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1594,1
    CyclomaticComplexity: 272
    EdgeCount: 272
    ICount: 715
    argCount: 3
    argNames:
    - mpd
    - group
    - fetch_time
    argTypes:
    - GF_MPD*
    - GF_DASH_Group*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1596
      start: 700
    functionDepth: 3
    functionLinenumber: 700
    functionLinenumberEnd: 1596
    functionName: gf_dash_group_timeline_setup_single
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_free
    - strcpy
    - gf_list_count
    - strchr
    - gf_sys_clock
    - strcat
    - gf_list_get
    - gf_mpd_resolve_url
    - sprintf
    - strncmp
    - gf_dash_download_resource
    - sscanf
    - GF_LOG
    - dash_ssr_adjust_group_start
    - GF_DASH_Group*::dash::dash_io::get_header_value
    - strstr
    - gf_timestamp_rescale
    - strlen
    - ABS
    - gf_dash_get_date
    - strcmp
    - gf_net_parse_date
    - gf_gmtime
    linkageType: ''
    returnType: void
    signature: void gf_dash_group_timeline_setup_single(GF_MPD *mpd, GF_DASH_Group
      *group, u64 fetch_time)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/media_tools/dash_client.c:1605,1
    - Dst: gf_dash_group_timeline_setup_single
      Src: /src/gpac/src/media_tools/dash_client.c:1607,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:1610,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1611,1
    - Dst: gf_dash_group_timeline_setup_single
      Src: /src/gpac/src/media_tools/dash_client.c:1612,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - mpd
    - group
    - fetch_time
    argTypes:
    - GF_MPD*
    - GF_DASH_Group*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1615
      start: 1598
    functionDepth: 4
    functionLinenumber: 1598
    functionLinenumberEnd: 1615
    functionName: gf_dash_group_timeline_setup
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_net_get_utc
    - gf_dash_group_timeline_setup_single
    linkageType: ''
    returnType: void
    signature: void gf_dash_group_timeline_setup(GF_MPD *mpd, GF_DASH_Group *group,
      u64 fetch_time)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:1626,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:1626,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/dash_client.c:1630,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1634
      start: 1622
    functionDepth: 0
    functionLinenumber: 1622
    functionLinenumberEnd: 1634
    functionName: gf_dash_is_m3u8_mime
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - strstr
    - stricmp
    linkageType: ''
    returnType: Bool
    signature: Bool gf_dash_is_m3u8_mime(const char *url, const char * mime)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:1640,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/media_tools/dash_client.c:1650,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:1655,1
    - Dst: GF_DashClient*::rate_adaptation_download_monitor
      Src: /src/gpac/src/media_tools/dash_client.c:1657,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:1661,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 25
    argCount: 6
    argNames:
    - dash
    - group_idx
    - bits_per_sec
    - total_bytes
    - bytes_done
    - us_since_start
    argTypes:
    - GF_DashClient*
    - u32
    - u32
    - u64
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1669
      start: 1636
    functionDepth: 2
    functionLinenumber: 1636
    functionLinenumberEnd: 1669
    functionName: gf_dash_group_check_bandwidth
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_active_group
    - GF_DashClient*::rate_adaptation_download_monitor
    - GF_DashClient*::dash_io::on_dash_event
    - gf_sys_is_test_mode
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_check_bandwidth(GF_DashClient *dash, u32 group_idx,
      u32 bits_per_sec, u64 total_bytes, u64 bytes_done, u64 us_since_start)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1687,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/media_tools/dash_client.c:1687,1
    - Dst: assert
      Src: /src/gpac/src/media_tools/dash_client.c:1695,1
    - Dst: GF_DASHFileIO*::create
      Src: /src/gpac/src/media_tools/dash_client.c:1701,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1705,1
    - Dst: GF_DASHFileIO*::setup_from_url
      Src: /src/gpac/src/media_tools/dash_client.c:1711,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1714,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:1714,1
    - Dst: GF_DASHFileIO*::set_range
      Src: /src/gpac/src/media_tools/dash_client.c:1723,1
    - Dst: GF_DASHFileIO*::del
      Src: /src/gpac/src/media_tools/dash_client.c:1726,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:1728,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1730,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:1730,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:1734,1
    - Dst: GF_DASHFileIO*::init
      Src: /src/gpac/src/media_tools/dash_client.c:1737,1
    - Dst: GF_DASHFileIO*::run
      Src: /src/gpac/src/media_tools/dash_client.c:1739,1
    - Dst: GF_DASHFileIO*::get_status
      Src: /src/gpac/src/media_tools/dash_client.c:1744,1
    - Dst: GF_DASHFileIO*::get_mime
      Src: /src/gpac/src/media_tools/dash_client.c:1762,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:1764,1
    - Dst: GF_DASHFileIO*::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:1769,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1770,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1777,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/media_tools/dash_client.c:1777,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:1777,1
    - Dst: GF_DASHFileIO*::del
      Src: /src/gpac/src/media_tools/dash_client.c:1784,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1785,1
    - Dst: GF_DASHFileIO*::create
      Src: /src/gpac/src/media_tools/dash_client.c:1786,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1788,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1796,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1798,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1802,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/media_tools/dash_client.c:1802,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1806,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:1806,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 114
    argCount: 7
    argNames:
    - dash
    - sess
    - url
    - start_range
    - end_range
    - persistent_mode
    - group
    argTypes:
    - GF_DashClient*
    - GF_DASHFileIOSession*
    - char*
    - u64
    - u64
    - u32
    - GF_DASH_Group*
    assertStmts:
    - condition: ( *sess)
      pos:
        line_end: 1694
        line_start: 1694
        source_file: /src/gpac/src/media_tools/dash_client.c
    constantsTouched: []
    func_position:
      end: 1810
      start: 1678
    functionDepth: 1
    functionLinenumber: 1678
    functionLinenumberEnd: 1810
    functionName: gf_dash_download_resource
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 2
    functionsReached:
    - gf_assert
    - gf_strdup
    - GF_LOG
    - assert
    - GF_DASHFileIO*::run
    - GF_DASHFileIO*::create
    - GF_DASHFileIO*::get_mime
    - GF_DASHFileIO*::get_cache_name
    - GF_DASHFileIO*::set_range
    - GF_DASHFileIO*::init
    - GF_DASHFileIO*::get_status
    - gf_error_to_string
    - gf_dash_download_resource
    - GF_DASHFileIO*::del
    - gf_net_get_utc
    - GF_DASHFileIO*::setup_from_url
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dash_download_resource(GF_DashClient *dash, GF_DASHFileIOSession
      *sess, const char *url, u64 start_range, u64 end_range, u32 persistent_mode,
      GF_DASH_Group *group)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:1828,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1830,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1843,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 40
    argCount: 6
    argNames:
    - mpd
    - period
    - timeline
    - timescale
    - nb_segments
    - max_seg_duration
    argTypes:
    - GF_MPD*
    - GF_MPD_Period*
    - GF_MPD_SegmentTimeline*
    - u32
    - u32*
    - Double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1857
      start: 1812
    functionDepth: 1
    functionLinenumber: 1812
    functionLinenumberEnd: 1857
    functionName: gf_dash_get_timeline_duration
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void gf_dash_get_timeline_duration(GF_MPD *mpd, GF_MPD_Period *period,
      GF_MPD_SegmentTimeline *timeline, u32 timescale, u32 *nb_segments, Double *max_seg_duration)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_timeline_duration
      Src: /src/gpac/src/media_tools/dash_client.c:1893,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:1897,1
    - Dst: gf_dash_get_timeline_duration
      Src: /src/gpac/src/media_tools/dash_client.c:1944,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:1953,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1956,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 122
    argCount: 6
    argNames:
    - rep
    - set
    - period
    - mpd
    - nb_segments
    - max_seg_duration
    argTypes:
    - GF_MPD_Representation*
    - GF_MPD_AdaptationSet*
    - GF_MPD_Period*
    - GF_MPD*
    - u32*
    - Double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1973
      start: 1859
    functionDepth: 2
    functionLinenumber: 1859
    functionLinenumberEnd: 1973
    functionName: gf_dash_get_segment_duration
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_timeline_duration
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void gf_dash_get_segment_duration(GF_MPD_Representation *rep, GF_MPD_AdaptationSet
      *set, GF_MPD_Period *period, GF_MPD *mpd, u32 *nb_segments, Double *max_seg_duration)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1978,1
    - Dst: gf_mpd_get_segment_start_time_with_timescale
      Src: /src/gpac/src/media_tools/dash_client.c:1984,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/media_tools/dash_client.c:2020,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 34
    argCount: 4
    argNames:
    - group
    - segment_duration
    - scale
    - current_pto
    argTypes:
    - GF_DASH_Group*
    - u64*
    - u32*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2023
      start: 1976
    functionDepth: 3
    functionLinenumber: 1976
    functionLinenumberEnd: 2023
    functionName: gf_dash_get_segment_start_time_with_timescale
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_mpd_get_segment_start_time_with_timescale
    - gf_list_get
    - gf_timestamp_rescale
    linkageType: ''
    returnType: u64
    signature: u64 gf_dash_get_segment_start_time_with_timescale(GF_DASH_Group *group,
      u64 *segment_duration, u32 *scale, u64 *current_pto)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_segment_start_time_with_timescale
      Src: /src/gpac/src/media_tools/dash_client.c:2031,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - group
    - segment_duration
    argTypes:
    - GF_DASH_Group*
    - Double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2037
      start: 2025
    functionDepth: 4
    functionLinenumber: 2025
    functionLinenumberEnd: 2037
    functionName: gf_dash_get_segment_start_time
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_segment_start_time_with_timescale
    linkageType: ''
    returnType: Double
    signature: Double gf_dash_get_segment_start_time(GF_DASH_Group *group, Double
      *segment_duration)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_segment_start_time
      Src: /src/gpac/src/media_tools/dash_client.c:2042,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - mpd
    - group
    - segment_index
    - seg_dur_ms
    argTypes:
    - GF_MPD*
    - GF_DASH_Group*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2050
      start: 2039
    functionDepth: 5
    functionLinenumber: 2039
    functionLinenumberEnd: 2050
    functionName: gf_dash_get_segment_availability_start_time
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_segment_start_time
    linkageType: ''
    returnType: u64
    signature: u64 gf_dash_get_segment_availability_start_time(GF_MPD *mpd, GF_DASH_Group
      *group, u32 segment_index, u32 *seg_dur_ms)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2057,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2059,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2069,1
    - Dst: gf_timestamp_equal
      Src: /src/gpac/src/media_tools/dash_client.c:2073,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/media_tools/dash_client.c:2074,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2075,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2093,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 36
    argCount: 4
    argNames:
    - timeline
    - segment_start
    - start_timescale
    - timescale
    argTypes:
    - GF_MPD_SegmentTimeline*
    - u64
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2095
      start: 2052
    functionDepth: 1
    functionLinenumber: 2052
    functionLinenumberEnd: 2095
    functionName: gf_dash_get_index_in_timeline
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_timestamp_equal
    - gf_list_get
    - GF_LOG
    - gf_timestamp_greater
    - gf_list_count
    linkageType: ''
    returnType: u32
    signature: u32 gf_dash_get_index_in_timeline(GF_MPD_SegmentTimeline *timeline,
      u64 segment_start, u64 start_timescale, u64 timescale)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2102,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2104,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - timeline
    - segment_index
    argTypes:
    - GF_MPD_SegmentTimeline*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2116
      start: 2097
    functionDepth: 1
    functionLinenumber: 2097
    functionLinenumberEnd: 2116
    functionName: gf_dash_get_timeline_entry
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_MPD_SegmentTimelineEntry
    signature: GF_MPD_SegmentTimelineEntry *gf_dash_get_timeline_entry(GF_MPD_SegmentTimeline
      *timeline, u32 segment_index)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2129,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2137,1
    - Dst: gf_dash_get_segment_start_time_with_timescale
      Src: /src/gpac/src/media_tools/dash_client.c:2147,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2149,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2150,1
    - Dst: gf_dash_get_segment_start_time_with_timescale
      Src: /src/gpac/src/media_tools/dash_client.c:2151,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/dash_client.c:2157,1
    - Dst: gf_dash_get_index_in_timeline
      Src: /src/gpac/src/media_tools/dash_client.c:2166,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2168,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2170,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2171,1
    - Dst: gf_dash_get_index_in_timeline
      Src: /src/gpac/src/media_tools/dash_client.c:2176,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2178,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/media_tools/dash_client.c:2184,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2186,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2187,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2188,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2190,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2196,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2197,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2198,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2200,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 67
    argCount: 7
    argNames:
    - group
    - dash
    - old_list
    - old_template
    - new_list
    - new_template
    - min_start_time
    argTypes:
    - GF_DASH_Group*
    - GF_DashClient*
    - GF_MPD_SegmentList*
    - GF_MPD_SegmentTemplate*
    - GF_MPD_SegmentList*
    - GF_MPD_SegmentTemplate*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2207
      start: 2119
    functionDepth: 4
    functionLinenumber: 2119
    functionLinenumberEnd: 2207
    functionName: gf_dash_merge_segment_timeline
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - GF_LOG
    - gf_dash_get_segment_start_time_with_timescale
    - gf_log_tool_level_on
    - gf_dash_get_index_in_timeline
    - gf_list_count
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dash_merge_segment_timeline(GF_DASH_Group *group, GF_DashClient
      *dash, GF_MPD_SegmentList *old_list, GF_MPD_SegmentTemplate *old_template, GF_MPD_SegmentList
      *new_list, GF_MPD_SegmentTemplate *new_template, Double min_start_time)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2214,1
    - Dst: gf_mpd_resolve_segment_duration
      Src: /src/gpac/src/media_tools/dash_client.c:2217,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2224,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:2241,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2242,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/media_tools/dash_client.c:2248,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/media_tools/dash_client.c:2250,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2261,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:2262,1
    - Dst: gf_mpd_segment_url_free
      Src: /src/gpac/src/media_tools/dash_client.c:2263,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 53
    argCount: 2
    argNames:
    - group
    - min_start_time
    argTypes:
    - GF_DASH_Group*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2270
      start: 2209
    functionDepth: 2
    functionLinenumber: 2209
    functionLinenumberEnd: 2270
    functionName: gf_dash_purge_segment_timeline
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_mpd_segment_url_free
    - gf_fatal_assert
    - gf_mpd_resolve_segment_duration
    - gf_list_rem
    linkageType: ''
    returnType: u32
    signature: u32 gf_dash_purge_segment_timeline(GF_DASH_Group *group, Double min_start_time)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2284,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:2287,1
    - Dst: gf_mpd_delete_segment_list
      Src: /src/gpac/src/media_tools/dash_client.c:2288,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/dash_client.c:2295,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:2297,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:2297,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:2305,1
    - Dst: GF_DashClient*::dash_io::get_status
      Src: /src/gpac/src/media_tools/dash_client.c:2308,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2310,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2319,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:2319,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2320,1
    - Dst: GF_DashClient*::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:2327,1
    - Dst: gf_sha1_file
      Src: /src/gpac/src/media_tools/dash_client.c:2330,1
    - Dst: memcmp
      Src: /src/gpac/src/media_tools/dash_client.c:2331,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2332,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dash_client.c:2335,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/media_tools/dash_client.c:2337,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/media_tools/dash_client.c:2338,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2339,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/dash_client.c:2342,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2343,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:2343,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2344,1
    - Dst: gf_xml_dom_get_root_nodes_count
      Src: /src/gpac/src/media_tools/dash_client.c:2349,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2351,1
    - Dst: gf_mpd_delete_segment_list
      Src: /src/gpac/src/media_tools/dash_client.c:2352,1
    - Dst: gf_xml_dom_get_root_idx
      Src: /src/gpac/src/media_tools/dash_client.c:2357,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:2358,1
    - Dst: gf_mpd_solve_segment_list_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:2359,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2363,1
    - Dst: gf_mpd_delete_segment_list
      Src: /src/gpac/src/media_tools/dash_client.c:2364,1
    - Dst: gf_mpd_delete_segment_list
      Src: /src/gpac/src/media_tools/dash_client.c:2371,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2375,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 81
    argCount: 3
    argNames:
    - dash
    - rep
    - last_sig
    argTypes:
    - GF_DashClient*
    - GF_MPD_Representation*
    - u8[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2378
      start: 2272
    functionDepth: 5
    functionLinenumber: 2272
    functionLinenumberEnd: 2378
    functionName: gf_dash_solve_representation_xlink
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memcmp
    - memcpy
    - gf_mpd_solve_segment_list_xlink
    - gf_xml_dom_new
    - gf_dash_download_resource
    - gf_xml_dom_get_root_nodes_count
    - gf_xml_dom_parse
    - GF_LOG
    - GF_DashClient*::dash_io::get_status
    - strstr
    - gf_xml_dom_get_root_idx
    - strnicmp
    - gf_error_to_string
    - gf_url_concatenate
    - strcmp
    - gf_sha1_file
    - gf_mpd_delete_segment_list
    - gf_xml_dom_del
    - GF_DashClient*::dash_io::get_cache_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dash_solve_representation_xlink(GF_DashClient *dash, GF_MPD_Representation
      *rep, u8 last_sig[GF_SHA1_DIGEST_SIZE])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2382,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2384,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2385,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2387,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 1
    argNames:
    - new_mpd
    argTypes:
    - GF_MPD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2390
      start: 2380
    functionDepth: 1
    functionLinenumber: 2380
    functionLinenumberEnd: 2390
    functionName: dash_purge_xlink
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void dash_purge_xlink(GF_MPD *new_mpd)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2394,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2398,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2400,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - group
    argTypes:
    - GF_DASH_Group*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2404
      start: 2392
    functionDepth: 1
    functionLinenumber: 2392
    functionLinenumberEnd: 2404
    functionName: gf_dash_mark_group_done
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void gf_dash_mark_group_done(GF_DASH_Group *group)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_url_get_path
      Src: /src/gpac/src/media_tools/dash_client.c:2409,1
    - Dst: gf_url_get_path
      Src: /src/gpac/src/media_tools/dash_client.c:2410,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/dash_client.c:2411,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:2415,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - url
    - base_url
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2419
      start: 2407
    functionDepth: 1
    functionLinenumber: 2407
    functionLinenumberEnd: 2419
    functionName: dash_strip_base_url
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - strncmp
    - strrchr
    - gf_url_get_path
    linkageType: ''
    returnType: char
    signature: char *dash_strip_base_url(const char *url, const char *base_url)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_m3u8_solve_representation_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:2428,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/dash_client.c:2431,1
    - Dst: gf_m3u8_solve_representation_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:2432,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2435,1
    - Dst: gf_url_is_local
      Src: /src/gpac/src/media_tools/dash_client.c:2439,1
    - Dst: GF_DashClient*::getter::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:2442,1
    - Dst: dash_strip_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:2444,1
    - Dst: GF_DashClient*::dash_io::manifest_updated
      Src: /src/gpac/src/media_tools/dash_client.c:2445,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2446,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 5
    argNames:
    - group
    - rep
    - is_static
    - duration
    - signature
    argTypes:
    - GF_DASH_Group*
    - GF_MPD_Representation*
    - Bool*
    - u64*
    - u8[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2448
      start: 2421
    functionDepth: 2
    functionLinenumber: 2421
    functionLinenumberEnd: 2448
    functionName: gf_dash_solve_m3u8_representation_xlink
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_DashClient*::getter::get_cache_name
    - dash_strip_base_url
    - gf_m3u8_solve_representation_xlink
    - GF_DashClient*::dash_io::manifest_updated
    - gf_url_concatenate
    - gf_url_is_local
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dash_solve_m3u8_representation_xlink(GF_DASH_Group *group,
      GF_MPD_Representation *rep, Bool *is_static, u64 *duration, u8 signature[GF_SHA1_DIGEST_SIZE])
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2452,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2460,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:2464,1
    - Dst: gf_mpd_segment_url_free
      Src: /src/gpac/src/media_tools/dash_client.c:2465,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2472,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2478,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2487,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2495,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:2499,1
    - Dst: gf_mpd_segment_url_free
      Src: /src/gpac/src/media_tools/dash_client.c:2500,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 39
    argCount: 2
    argNames:
    - live_edge_idx
    - l
    argTypes:
    - s32
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2505
      start: 2450
    functionDepth: 1
    functionLinenumber: 2450
    functionLinenumberEnd: 2505
    functionName: ls_hls_purge_segments
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_mpd_segment_url_free
    - gf_list_rem
    linkageType: ''
    returnType: u32
    signature: u32 ls_hls_purge_segments(s32 live_edge_idx, GF_List *l)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_get_descriptor
      Src: /src/gpac/src/media_tools/dash_client.c:2510,1
    - Dst: gf_mpd_get_descriptor
      Src: /src/gpac/src/media_tools/dash_client.c:2512,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2515,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2522,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2527,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:2528,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/dash_client.c:2530,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:2532,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:2536,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2537,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2538,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 32
    argCount: 4
    argNames:
    - dash
    - scheme_id
    - chain_ptr
    - stack_state
    argTypes:
    - GF_DashClient*
    - char*
    - char**
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2542
      start: 2507
    functionDepth: 2
    functionLinenumber: 2507
    functionLinenumberEnd: 2542
    functionName: dash_check_chaining
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - GF_LOG
    - gf_url_concatenate
    - gf_list_count
    - strcmp
    - strchr
    - gf_mpd_get_descriptor
    linkageType: ''
    returnType: void
    signature: void dash_check_chaining(GF_DashClient *dash, char *scheme_id, char
      **chain_ptr, u32 stack_state)
  - BBCount: 176
    BranchProfiles: []
    Callsites:
    - Dst: dash_get_fetch_time
      Src: /src/gpac/src/media_tools/dash_client.c:2566,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2567,1
    - Dst: dash_get_fetch_time
      Src: /src/gpac/src/media_tools/dash_client.c:2575,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2583,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/media_tools/dash_client.c:2584,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2590,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:2595,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2595,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:2598,1
    - Dst: gf_dash_set_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:2599,1
    - Dst: GF_DashClient*::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:2605,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/media_tools/dash_client.c:2607,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:2612,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2616,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2617,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/dash_client.c:2618,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2620,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/dash_client.c:2625,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_client.c:2626,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2628,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:2632,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2634,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2643,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:2643,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2646,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:2646,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2654,1
    - Dst: GF_DashClient*::dash_io::get_mime
      Src: /src/gpac/src/media_tools/dash_client.c:2657,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/dash_client.c:2658,1
    - Dst: strlwr
      Src: /src/gpac/src/media_tools/dash_client.c:2659,1
    - Dst: GF_DashClient*::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:2662,1
    - Dst: gf_dash_is_m3u8_mime
      Src: /src/gpac/src/media_tools/dash_client.c:2665,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:2665,1
    - Dst: gf_mpd_new
      Src: /src/gpac/src/media_tools/dash_client.c:2666,1
    - Dst: gf_m3u8_to_mpd
      Src: /src/gpac/src/media_tools/dash_client.c:2667,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2669,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:2669,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:2670,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2675,1
    - Dst: GF_DashClient*::dash_io::get_url
      Src: /src/gpac/src/media_tools/dash_client.c:2677,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:2680,1
    - Dst: gf_dash_set_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:2681,1
    - Dst: dash_get_fetch_time
      Src: /src/gpac/src/media_tools/dash_client.c:2686,1
    - Dst: gf_dash_check_mpd_root_type
      Src: /src/gpac/src/media_tools/dash_client.c:2690,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2695,1
    - Dst: gf_sha1_file
      Src: /src/gpac/src/media_tools/dash_client.c:2699,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2700,1
    - Dst: memcmp
      Src: /src/gpac/src/media_tools/dash_client.c:2704,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2707,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:2714,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dash_client.c:2724,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/dash_client.c:2727,1
    - Dst: GF_DashClient*::dash_io::manifest_updated
      Src: /src/gpac/src/media_tools/dash_client.c:2728,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/media_tools/dash_client.c:2733,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/media_tools/dash_client.c:2734,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/dash_client.c:2736,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2737,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:2737,1
    - Dst: gf_mpd_new
      Src: /src/gpac/src/media_tools/dash_client.c:2740,1
    - Dst: gf_mpd_init_smooth_from_dom
      Src: /src/gpac/src/media_tools/dash_client.c:2742,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/dash_client.c:2742,1
    - Dst: gf_mpd_init_from_dom
      Src: /src/gpac/src/media_tools/dash_client.c:2744,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/dash_client.c:2744,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/dash_client.c:2745,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2747,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:2747,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:2748,1
    - Dst: dash_purge_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:2752,1
    - Dst: gf_mpd_split_adaptation_sets
      Src: /src/gpac/src/media_tools/dash_client.c:2755,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:2761,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2763,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2767,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2768,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2769,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2770,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2777,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2778,1
    - Dst: gf_dash_solve_period_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:2787,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2800,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:2801,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:2805,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2806,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2807,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:2809,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:2810,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:2811,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/dash_client.c:2813,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:2817,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:2820,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:2823,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2831,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2832,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2839,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2844,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2845,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:2846,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2851,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:2852,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:2856,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:2857,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2859,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2859,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2860,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:2861,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2865,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2873,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2874,1
    - Dst: gf_dash_get_segment_start_time
      Src: /src/gpac/src/media_tools/dash_client.c:2876,1
    - Dst: gf_dash_merge_segment_timeline
      Src: /src/gpac/src/media_tools/dash_client.c:2887,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:2889,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2895,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2898,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2910,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2914,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2917,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2919,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2920,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:2927,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/dash_client.c:2928,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2933,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2933,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2934,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:2935,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2941,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2943,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2944,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:2953,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2955,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:2956,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:2965,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2967,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:2968,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2988,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:2997,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:3005,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:3006,1
    - Dst: gf_mpd_representation_new
      Src: /src/gpac/src/media_tools/dash_client.c:3007,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:3008,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:3009,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:3011,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:3013,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3027,1
    - Dst: gf_dash_solve_m3u8_representation_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:3032,1
    - Dst: gf_dash_solve_representation_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:3034,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3061,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:3071,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:3072,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3074,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:3074,1
    - Dst: gf_mpd_representation_free
      Src: /src/gpac/src/media_tools/dash_client.c:3086,1
    - Dst: HLS_MIN_RELOAD_TIME
      Src: /src/gpac/src/media_tools/dash_client.c:3088,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3094,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:3095,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3116,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:3123,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3135,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3136,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/dash_client.c:3140,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3142,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/dash_client.c:3143,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3149,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3155,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/media_tools/dash_client.c:3168,1
    - Dst: gf_mpd_segment_url_free
      Src: /src/gpac/src/media_tools/dash_client.c:3169,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3175,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3176,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3177,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3191,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:3200,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3229,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3233,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/dash_client.c:3236,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:3242,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/dash_client.c:3244,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:3247,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3250,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:3262,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:3272,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:3273,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3274,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/dash_client.c:3275,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:3276,1
    - Dst: gf_mpd_segment_url_free
      Src: /src/gpac/src/media_tools/dash_client.c:3277,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:3283,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3284,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/dash_client.c:3290,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3291,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3292,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/dash_client.c:3293,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3300,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:3305,1
    - Dst: gf_mpd_segment_url_free
      Src: /src/gpac/src/media_tools/dash_client.c:3306,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3316,1
    - Dst: gf_list_swap
      Src: /src/gpac/src/media_tools/dash_client.c:3320,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:3327,1
    - Dst: ls_hls_purge_segments
      Src: /src/gpac/src/media_tools/dash_client.c:3329,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:3333,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/dash_client.c:3340,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:3340,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3342,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3343,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/dash_client.c:3344,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3353,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3357,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3364,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:3384,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3386,1
    - Dst: HLS_MIN_RELOAD_TIME
      Src: /src/gpac/src/media_tools/dash_client.c:3387,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3389,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:3390,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3400,1
    - Dst: gf_dash_merge_segment_timeline
      Src: /src/gpac/src/media_tools/dash_client.c:3404,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:3406,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3413,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3414,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3417,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3418,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:3419,1
    - Dst: gf_mpd_representation_free
      Src: /src/gpac/src/media_tools/dash_client.c:3437,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:3438,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dash_client.c:3441,1
    - Dst: gf_dash_merge_segment_timeline
      Src: /src/gpac/src/media_tools/dash_client.c:3453,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:3455,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3459,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:3460,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3464,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3468,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:3471,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3472,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:3473,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3477,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3478,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3479,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:3481,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:3482,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/dash_client.c:3483,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/dash_client.c:3484,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:3493,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3493,1
    - Dst: gf_dash_purge_segment_timeline
      Src: /src/gpac/src/media_tools/dash_client.c:3498,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3500,1
    - Dst: gf_dash_group_timeline_setup
      Src: /src/gpac/src/media_tools/dash_client.c:3507,1
    - Dst: gf_dash_group_timeline_setup
      Src: /src/gpac/src/media_tools/dash_client.c:3514,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3523,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3529,1
    - Dst: gf_dash_get_segment_duration
      Src: /src/gpac/src/media_tools/dash_client.c:3536,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3536,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3547,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3552,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3555,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:3557,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:3568,1
    - Dst: dash_check_chaining
      Src: /src/gpac/src/media_tools/dash_client.c:3573,1
    - Dst: dash_check_chaining
      Src: /src/gpac/src/media_tools/dash_client.c:3574,1
    - Dst: dash_check_chaining
      Src: /src/gpac/src/media_tools/dash_client.c:3575,1
    - Dst: dash_check_chaining
      Src: /src/gpac/src/media_tools/dash_client.c:3576,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:3579,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3584,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3585,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3586,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3587,1
    CyclomaticComplexity: 322
    EdgeCount: 322
    ICount: 746
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3593
      start: 2545
    functionDepth: 11
    functionLinenumber: 2545
    functionLinenumberEnd: 3593
    functionName: gf_dash_update_manifest
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memcmp
    - gf_xml_dom_get_root
    - GF_SAFEALLOC
    - gf_file_exists
    - gf_mpd_representation_free
    - strcpy
    - gf_list_find
    - gf_dash_group_timeline_setup
    - gf_list_count
    - gf_dash_set_base_url
    - gf_list_swap
    - gf_file_basename
    - dash_get_fetch_time
    - gf_sys_clock
    - fprintf
    - gf_list_get
    - gf_strdup
    - gf_assert
    - strrchr
    - gf_mpd_representation_new
    - gf_dash_check_mpd_root_type
    - gf_mpd_split_adaptation_sets
    - memcpy
    - gf_list_new
    - gf_mpd_segment_url_free
    - gf_list_pop_back
    - gf_dash_is_m3u8_mime
    - gf_m3u8_to_mpd
    - strlwr
    - gf_dash_solve_representation_xlink
    - gf_dash_purge_segment_timeline
    - gf_xml_dom_new
    - gf_list_add
    - gf_dash_download_resource
    - gf_dynstrcat
    - gf_mpd_del
    - gf_dash_solve_period_xlink
    - gf_list_insert
    - gf_xml_dom_parse
    - GF_DashClient*::dash_io::get_url
    - gf_dash_get_segment_start_time
    - GF_LOG
    - gf_dash_get_segment_duration
    - GF_DashClient*::dash_io::manifest_updated
    - strstr
    - GF_DashClient*::dash_io::get_mime
    - gf_error_to_string
    - gf_dash_mark_group_done
    - gf_dash_merge_segment_timeline
    - HLS_MIN_RELOAD_TIME
    - gf_list_pop_front
    - gf_url_concatenate
    - gf_dash_solve_m3u8_representation_xlink
    - ls_hls_purge_segments
    - gf_file_delete
    - gf_mpd_new
    - strcmp
    - gf_sha1_file
    - dash_purge_xlink
    - gf_list_rem
    - dash_check_chaining
    - gf_mpd_init_from_dom
    - gf_xml_dom_del
    - GF_DashClient*::dash_io::get_cache_name
    - gf_mpd_init_smooth_from_dom
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dash_update_manifest(GF_DashClient *dash)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3603,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3605,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3621,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 2
    argNames:
    - group
    - rep
    argTypes:
    - GF_DASH_Group*
    - GF_MPD_Representation*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3631
      start: 3595
    functionDepth: 1
    functionLinenumber: 3595
    functionLinenumberEnd: 3631
    functionName: m3u8_setup_timeline
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void m3u8_setup_timeline(GF_DASH_Group *group, GF_MPD_Representation
      *rep)
  - BBCount: 58
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:3731,1
    - Dst: gf_dash_group_count_rep_needed
      Src: /src/gpac/src/media_tools/dash_client.c:3733,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:3734,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3765,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3773,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3785,1
    - Dst: gf_dash_group_count_rep_needed
      Src: /src/gpac/src/media_tools/dash_client.c:3791,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3795,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3796,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3811,1
    - Dst: gf_dash_solve_m3u8_representation_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:3815,1
    - Dst: gf_dash_solve_representation_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:3817,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3840,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3844,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:3844,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3846,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:3846,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3872,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:3874,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:3875,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3877,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3881,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3888,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3890,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3920,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:3921,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3925,1
    - Dst: gf_dash_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:3936,1
    - Dst: dash_strip_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:3946,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3948,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:3948,1
    - Dst: gf_dash_group_timeline_setup
      Src: /src/gpac/src/media_tools/dash_client.c:3954,1
    - Dst: ls_hls_purge_segments
      Src: /src/gpac/src/media_tools/dash_client.c:3978,1
    - Dst: m3u8_setup_timeline
      Src: /src/gpac/src/media_tools/dash_client.c:3983,1
    - Dst: ls_hls_purge_segments
      Src: /src/gpac/src/media_tools/dash_client.c:3989,1
    - Dst: GET_REP_ATTR
      Src: /src/gpac/src/media_tools/dash_client.c:4001,1
    - Dst: GET_REP_ATTR
      Src: /src/gpac/src/media_tools/dash_client.c:4002,1
    - Dst: GET_REP_ATTR
      Src: /src/gpac/src/media_tools/dash_client.c:4003,1
    - Dst: GET_REP_ATTR
      Src: /src/gpac/src/media_tools/dash_client.c:4004,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4013,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4016,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4019,1
    - Dst: gf_dash_get_segment_duration
      Src: /src/gpac/src/media_tools/dash_client.c:4023,1
    - Dst: gf_dash_get_timeline_entry
      Src: /src/gpac/src/media_tools/dash_client.c:4040,1
    - Dst: gf_dash_get_timeline_entry
      Src: /src/gpac/src/media_tools/dash_client.c:4048,1
    - Dst: GF_DASH_Group*::dash::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:4056,1
    CyclomaticComplexity: 86
    EdgeCount: 86
    ICount: 234
    argCount: 2
    argNames:
    - group
    - rep
    argTypes:
    - GF_DASH_Group*
    - GF_MPD_Representation*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4057
      start: 3720
    functionDepth: 6
    functionLinenumber: 3720
    functionLinenumberEnd: 4057
    functionName: gf_dash_set_group_representation
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_group_timeline_setup
    - gf_list_find
    - gf_list_count
    - gf_dash_group_count_rep_needed
    - gf_assert
    - gf_list_get
    - m3u8_setup_timeline
    - dash_strip_base_url
    - gf_dash_resolve_url
    - gf_dash_solve_representation_xlink
    - GF_DASH_Group*::dash::dash_io::on_dash_event
    - GF_LOG
    - gf_dash_get_segment_duration
    - gf_dash_get_timeline_entry
    - gf_error_to_string
    - gf_dash_mark_group_done
    - GET_REP_ATTR
    - gf_dash_solve_m3u8_representation_xlink
    - ls_hls_purge_segments
    linkageType: ''
    returnType: void
    signature: void gf_dash_set_group_representation(GF_DASH_Group *group, GF_MPD_Representation
      *rep)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4000
      start: 3999
    functionDepth: 0
    functionLinenumber: 3999
    functionLinenumberEnd: 4000
    functionName: GET_REP_ATTR
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_REP_ATTR(_a)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4069,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4075,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4095,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:4100,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4101,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4116,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:4121,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:4122,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:4124,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4132,1
    - Dst: gf_dash_set_group_representation
      Src: /src/gpac/src/media_tools/dash_client.c:4134,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 61
    argCount: 2
    argNames:
    - mpd
    - group
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4136
      start: 4059
    functionDepth: 7
    functionLinenumber: 4059
    functionLinenumberEnd: 4136
    functionName: gf_dash_switch_group_representation
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_assert
    - GF_LOG
    - gf_list_find
    - gf_list_count
    - gf_dash_set_group_representation
    linkageType: ''
    returnType: void
    signature: void gf_dash_switch_group_representation(GF_DashClient *mpd, GF_DASH_Group
      *group)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4166,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - dash
    - group
    - rep
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    - GF_MPD_Representation*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4169
      start: 4139
    functionDepth: 1
    functionLinenumber: 4139
    functionLinenumberEnd: 4169
    functionName: gf_dash_get_max_available_speed
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: Double
    signature: Double gf_dash_get_max_available_speed(GF_DashClient *dash, GF_DASH_Group
      *group, GF_MPD_Representation *rep)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/media_tools/dash_client.c:4182,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/dash_client.c:4200,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/dash_client.c:4201,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:4220,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/media_tools/dash_client.c:4228,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4230,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4232,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4242,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:4259,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:4260,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4265,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/media_tools/dash_client.c:4278,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:4282,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4305,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 93
    argCount: 7
    argNames:
    - dash
    - group
    - bytes_per_sec
    - file_size
    - is_broadcast
    - cur_dep_idx
    - us_since_start
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    - u32
    - u32
    - Bool
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4308
      start: 4171
    functionDepth: 1
    functionLinenumber: 4171
    functionLinenumberEnd: 4308
    functionName: dash_store_stats
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_assert
    - strrchr
    - gf_log_tool_level_on
    - GF_LOG
    - GF_DashClient*::dash_io::on_dash_event
    - gf_sys_clock
    linkageType: ''
    returnType: void
    signature: void dash_store_stats(GF_DashClient *dash, GF_DASH_Group *group, u32
      bytes_per_sec, u32 file_size, Bool is_broadcast, u32 cur_dep_idx, u64 us_since_start)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4321,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4328,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4341,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4345,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4356,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4366,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4372,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 41
    argCount: 8
    argNames:
    - dash
    - group
    - bits_per_sec
    - total_bytes
    - bytes_done
    - us_since_start
    - buffer_dur_ms
    - current_seg_dur
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    - u32
    - u64
    - u64
    - u64
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4378
      start: 4310
    functionDepth: 1
    functionLinenumber: 4310
    functionLinenumberEnd: 4378
    functionName: dash_do_rate_monitor_default
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: s32
    signature: s32 dash_do_rate_monitor_default(GF_DashClient *dash, GF_DASH_Group
      *group, u32 bits_per_sec, u64 total_bytes, u64 bytes_done, u64 us_since_start,
      u32 buffer_dur_ms, u32 current_seg_dur)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:4399,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4400,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4486,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 84
    argCount: 9
    argNames:
    - dash
    - group
    - base_group
    - dl_rate
    - speed
    - max_available_speed
    - force_lower_complexity
    - rep
    - go_up_bitrate
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    - GF_DASH_Group*
    - u32
    - Double
    - Double
    - Bool
    - GF_MPD_Representation*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4505
      start: 4380
    functionDepth: 1
    functionLinenumber: 4380
    functionLinenumberEnd: 4505
    functionName: dash_do_rate_adaptation_legacy_rate
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_list_get
    linkageType: ''
    returnType: s32
    signature: "s32 dash_do_rate_adaptation_legacy_rate(GF_DashClient *dash, GF_DASH_Group
      *group, GF_DASH_Group *base_group,\n\t\t\t\t\t\t\t\t\t\t\t\tu32 dl_rate, Double
      speed, Double max_available_speed, Bool force_lower_complexity,\n\t\t\t\t\t\t\t\t\t\t\t\tGF_MPD_Representation
      *rep, Bool go_up_bitrate)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4564,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4568,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4574,1
    - Dst: dash_do_rate_adaptation_legacy_rate
      Src: /src/gpac/src/media_tools/dash_client.c:4581,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 47
    argCount: 9
    argNames:
    - dash
    - group
    - base_group
    - dl_rate
    - speed
    - max_available_speed
    - force_lower_complexity
    - rep
    - go_up_bitrate
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    - GF_DASH_Group*
    - u32
    - Double
    - Double
    - Bool
    - GF_MPD_Representation*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4585
      start: 4507
    functionDepth: 2
    functionLinenumber: 4507
    functionLinenumberEnd: 4585
    functionName: dash_do_rate_adaptation_legacy_buffer
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - dash_do_rate_adaptation_legacy_rate
    linkageType: ''
    returnType: s32
    signature: "s32 dash_do_rate_adaptation_legacy_buffer(GF_DashClient *dash, GF_DASH_Group
      *group, GF_DASH_Group *base_group,\n\t\t\t\t\t\t\t\t\t\t\t\t  u32 dl_rate, Double
      speed, Double max_available_speed, Bool force_lower_complexity,\n\t\t\t\t\t\t\t\t\t\t\t\t
      \ GF_MPD_Representation *rep, Bool go_up_bitrate)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:4593,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4595,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - representations
    - rate
    - index
    argTypes:
    - GF_List*
    - double
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4605
      start: 4588
    functionDepth: 1
    functionLinenumber: 4588
    functionLinenumberEnd: 4605
    functionName: get_min_rate_above
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: u32
    signature: u32 get_min_rate_above(GF_List *representations, double rate, s32 *index)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:4613,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4615,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - representations
    - rate
    - index
    argTypes:
    - GF_List*
    - double
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4625
      start: 4608
    functionDepth: 1
    functionLinenumber: 4608
    functionLinenumberEnd: 4625
    functionName: get_max_rate_below
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: u32
    signature: u32 get_max_rate_below(GF_List *representations, double rate, s32 *index)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4651,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4652,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:4652,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:4658,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4662,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4669,1
    - Dst: get_min_rate_above
      Src: /src/gpac/src/media_tools/dash_client.c:4676,1
    - Dst: get_max_rate_below
      Src: /src/gpac/src/media_tools/dash_client.c:4682,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4692,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:4713,1
    - Dst: get_max_rate_below
      Src: /src/gpac/src/media_tools/dash_client.c:4722,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:4726,1
    - Dst: get_min_rate_above
      Src: /src/gpac/src/media_tools/dash_client.c:4727,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4736,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4740,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 64
    argCount: 9
    argNames:
    - dash
    - group
    - base_group
    - dl_rate
    - speed
    - max_available_speed
    - force_lower_complexity
    - rep
    - go_up_bitrate
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    - GF_DASH_Group*
    - u32
    - Double
    - Double
    - Bool
    - GF_MPD_Representation*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4743
      start: 4632
    functionDepth: 2
    functionLinenumber: 4632
    functionLinenumberEnd: 4743
    functionName: dash_do_rate_adaptation_bba0
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - GF_LOG
    - gf_list_count
    - get_max_rate_below
    - get_min_rate_above
    linkageType: ''
    returnType: s32
    signature: "s32 dash_do_rate_adaptation_bba0(GF_DashClient *dash, GF_DASH_Group
      *group, GF_DASH_Group *base_group,\n\t\t\t\t\t\t\t\t\t\t\t\t  u32 dl_rate, Double
      speed, Double max_available_speed, Bool force_lower_complexity,\n\t\t\t\t\t\t\t\t\t\t\t\t
      \ GF_MPD_Representation *rep, Bool go_up_bitrate)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:4751,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4755,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 5
    argNames:
    - representations
    - V
    - gamma
    - p
    - Q
    argTypes:
    - GF_List*
    - Double
    - Double
    - Double
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4763
      start: 4748
    functionDepth: 1
    functionLinenumber: 4748
    functionLinenumberEnd: 4763
    functionName: bola_find_max_utility_index
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: s32
    signature: s32 bola_find_max_utility_index(GF_List *representations, Double V,
      Double gamma, Double p, Double Q)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4786,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:4790,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4791,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4792,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4796,1
    - Dst: log
      Src: /src/gpac/src/media_tools/dash_client.c:4797,1
    - Dst: bola_find_max_utility_index
      Src: /src/gpac/src/media_tools/dash_client.c:4805,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/dash_client.c:4822,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/dash_client.c:4823,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/dash_client.c:4824,1
    - Dst: bola_find_max_utility_index
      Src: /src/gpac/src/media_tools/dash_client.c:4827,1
    - Dst: get_max_rate_below
      Src: /src/gpac/src/media_tools/dash_client.c:4837,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/dash_client.c:4837,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:4853,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4854,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4855,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4873,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4877,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 53
    argCount: 9
    argNames:
    - dash
    - group
    - base_group
    - dl_rate
    - speed
    - max_available_speed
    - force_lower_complexity
    - rep
    - go_up_bitrate
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    - GF_DASH_Group*
    - u32
    - Double
    - Double
    - Bool
    - GF_MPD_Representation*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4880
      start: 4770
    functionDepth: 2
    functionLinenumber: 4770
    functionLinenumberEnd: 4880
    functionName: dash_do_rate_adaptation_bola
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_assert
    - GF_LOG
    - MIN
    - gf_list_count
    - bola_find_max_utility_index
    - get_max_rate_below
    - MAX
    - log
    linkageType: ''
    returnType: s32
    signature: "s32 dash_do_rate_adaptation_bola(GF_DashClient *dash, GF_DASH_Group
      *group, GF_DASH_Group *base_group,\n\t\t  \t  \t  \t  \t  \t  \t  \t  \t  u32
      dl_rate, Double speed, Double max_available_speed, Bool force_lower_complexity,\n\t\t\t\t\t\t\t\t\t\t
      \ \t  GF_MPD_Representation *rep, Bool go_up_bitrate)"
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4903,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4915,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:4915,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:4915,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4959,1
    - Dst: gf_dash_get_max_available_speed
      Src: /src/gpac/src/media_tools/dash_client.c:4963,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4966,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:4981,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4995,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4998,1
    - Dst: GF_DashClient*::rate_adaptation_algo
      Src: /src/gpac/src/media_tools/dash_client.c:5025,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5038,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5051,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5054,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5058,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5061,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5066,1
    - Dst: gf_dash_set_group_representation
      Src: /src/gpac/src/media_tools/dash_client.c:5070,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5075,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5076,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5084,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 129
    argCount: 2
    argNames:
    - dash
    - group
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5091
      start: 4883
    functionDepth: 7
    functionLinenumber: 4883
    functionLinenumberEnd: 5091
    functionName: dash_do_rate_adaptation
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_dash_get_max_available_speed
    - GF_LOG
    - gf_list_find
    - gf_list_count
    - GF_DashClient*::rate_adaptation_algo
    - gf_dash_set_group_representation
    - GF_DashClient*::dash_io::on_dash_event
    linkageType: ''
    returnType: void
    signature: void dash_do_rate_adaptation(GF_DashClient *dash, GF_DASH_Group *group)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:5099,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/media_tools/dash_client.c:5102,1
    - Dst: gf_fileio_factory
      Src: /src/gpac/src/media_tools/dash_client.c:5104,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5106,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:5107,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - base_url
    - res_url
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5108
      start: 5093
    functionDepth: 1
    functionLinenumber: 5093
    functionLinenumberEnd: 5108
    functionName: gf_dash_get_fileio_url
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_fileio_factory
    - gf_fileio_from_url
    - strncmp
    linkageType: ''
    returnType: char
    signature: char *gf_dash_get_fileio_url(const char *base_url, char *res_url)
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:5128,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5129,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5131,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:5139,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/media_tools/dash_client.c:5140,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/dash_client.c:5141,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/media_tools/dash_client.c:5141,1
    - Dst: gf_dash_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:5144,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5147,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:5147,1
    - Dst: gf_dash_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:5159,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5161,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:5161,1
    - Dst: gf_dash_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:5169,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5170,1
    - Dst: gf_dash_get_fileio_url
      Src: /src/gpac/src/media_tools/dash_client.c:5174,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5176,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:5189,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:5189,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:5189,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:5190,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:5190,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:5191,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:5191,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:5194,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:5194,1
    - Dst: gf_file_exists_ex
      Src: /src/gpac/src/media_tools/dash_client.c:5195,1
    - Dst: gf_mpd_get_base_url_count
      Src: /src/gpac/src/media_tools/dash_client.c:5196,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5198,1
    - Dst: gf_dash_download_init_segment
      Src: /src/gpac/src/media_tools/dash_client.c:5199,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:5205,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dash_client.c:5212,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:5222,1
    - Dst: dash_strip_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:5225,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5227,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5230,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:5231,1
    - Dst: dash_strip_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:5235,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:5237,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dash_client.c:5238,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5246,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5249,1
    - Dst: gf_dash_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:5253,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5255,1
    - Dst: dash_strip_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:5259,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5261,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:5261,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5266,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:5279,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:5280,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:5286,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5290,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5303,1
    - Dst: GF_DashClient*::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:5305,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:5306,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:5307,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:5314,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:5320,1
    - Dst: dash_strip_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:5321,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5326,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5329,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:5330,1
    - Dst: dash_strip_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:5334,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dash_client.c:5337,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5341,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5349,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5352,1
    - Dst: gf_dash_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:5356,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5358,1
    - Dst: dash_strip_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:5362,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5364,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:5364,1
    CyclomaticComplexity: 69
    EdgeCount: 69
    ICount: 205
    argCount: 2
    argNames:
    - dash
    - group
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5370
      start: 5110
    functionDepth: 2
    functionLinenumber: 5110
    functionLinenumberEnd: 5370
    functionName: gf_dash_download_init_segment
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_fileio_from_url
    - gf_list_count
    - gf_file_basename
    - gf_sys_clock
    - gf_assert
    - gf_list_get
    - gf_strdup
    - dash_strip_base_url
    - gf_dash_resolve_url
    - memcpy
    - gf_dash_get_fileio_url
    - strncmp
    - gf_dash_download_resource
    - gf_file_exists_ex
    - gf_fileio_resource_url
    - GF_LOG
    - strstr
    - strnicmp
    - gf_error_to_string
    - gf_dash_mark_group_done
    - gf_mpd_get_base_url_count
    - GF_DashClient*::dash_io::del
    - GF_DashClient*::dash_io::get_header_value
    - strcmp
    - gf_dash_download_init_segment
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dash_download_init_segment(GF_DashClient *dash, GF_DASH_Group
      *group)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:5378,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5380,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5412,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:5416,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:5419,1
    - Dst: gf_dash_set_group_representation
      Src: /src/gpac/src/media_tools/dash_client.c:5420,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 42
    argCount: 3
    argNames:
    - group
    - rep
    - for_autoswitch
    argTypes:
    - GF_DASH_Group*
    - GF_MPD_Representation*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5421
      start: 5373
    functionDepth: 7
    functionLinenumber: 5373
    functionLinenumberEnd: 5421
    functionName: gf_dash_skip_disabled_representation
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_assert
    - gf_list_find
    - gf_list_count
    - gf_dash_set_group_representation
    linkageType: ''
    returnType: void
    signature: void gf_dash_skip_disabled_representation(GF_DASH_Group *group, GF_MPD_Representation
      *rep, Bool for_autoswitch)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5426,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5427,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dash_client.c:5428,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - cached
    argTypes:
    - segment_cache_entry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5429
      start: 5424
    functionDepth: 0
    functionLinenumber: 5424
    functionLinenumberEnd: 5429
    functionName: gf_dash_group_reset_cache_entry
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memset
    linkageType: ''
    returnType: void
    signature: void gf_dash_group_reset_cache_entry(segment_cache_entry *cached)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_group_reset_cache_entry
      Src: /src/gpac/src/media_tools/dash_client.c:5435,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - dash
    - group
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5440
      start: 5431
    functionDepth: 1
    functionLinenumber: 5431
    functionLinenumberEnd: 5440
    functionName: gf_dash_group_reset
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_group_reset_cache_entry
    linkageType: ''
    returnType: void
    signature: void gf_dash_group_reset(GF_DashClient *dash, GF_DASH_Group *group)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:5445,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5447,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/dash_client.c:5448,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/media_tools/dash_client.c:5449,1
    - Dst: gf_dash_group_reset
      Src: /src/gpac/src/media_tools/dash_client.c:5451,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dash_client.c:5453,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dash_client.c:5454,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5455,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5457,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5460,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5462,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dash_client.c:5464,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5467,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/dash_client.c:5468,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/media_tools/dash_client.c:5469,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5470,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dash_client.c:5472,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5474
      start: 5442
    functionDepth: 2
    functionLinenumber: 5442
    functionLinenumberEnd: 5474
    functionName: gf_dash_reset_groups
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - gf_dash_group_reset
    - GF_DashClient*::dash_io::on_dash_event
    - gf_list_last
    - gf_list_rem_last
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_dash_reset_groups(GF_DashClient *dash)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 14
    argCount: 2
    argNames:
    - group
    - rep
    argTypes:
    - GF_DASH_Group*
    - GF_MPD_Representation*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5488
      start: 5477
    functionDepth: 0
    functionLinenumber: 5477
    functionLinenumberEnd: 5488
    functionName: gf_dash_get_start_number
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_dash_get_start_number(GF_DASH_Group *group, GF_MPD_Representation
      *rep)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5500,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5502,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5503,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5505,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:5506,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 3
    argNames:
    - dash
    - dependency_id
    - rep_group
    argTypes:
    - GF_DashClient*
    - char*
    - GF_DASH_Group**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5513
      start: 5491
    functionDepth: 1
    functionLinenumber: 5491
    functionLinenumberEnd: 5513
    functionName: gf_dash_find_rep
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: GF_MPD_Representation
    signature: GF_MPD_Representation *gf_dash_find_rep(GF_DashClient *dash, const
      char *dependency_id, GF_DASH_Group **rep_group)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5519,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5522,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:5525,1
    - Dst: gf_dash_find_rep
      Src: /src/gpac/src/media_tools/dash_client.c:5527,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5531
      start: 5515
    functionDepth: 2
    functionLinenumber: 5515
    functionLinenumberEnd: 5531
    functionName: gf_dash_group_get_dependency_group
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - strchr
    - gf_dash_find_rep
    linkageType: ''
    returnType: s32
    signature: s32 gf_dash_group_get_dependency_group(GF_DashClient *dash, u32 idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5536,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5539
      start: 5533
    functionDepth: 1
    functionLinenumber: 5533
    functionLinenumberEnd: 5539
    functionName: gf_dash_group_has_dependent_group
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_has_dependent_group(GF_DashClient *dash, u32
      idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5544,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5546,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5547
      start: 5541
    functionDepth: 1
    functionLinenumber: 5541
    functionLinenumberEnd: 5547
    functionName: gf_dash_group_get_num_groups_depending_on
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_get_num_groups_depending_on(GF_DashClient *dash,
      u32 idx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5553,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5555,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - dash
    - idx
    - group_depending_on_dep_idx
    argTypes:
    - GF_DashClient*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5558
      start: 5549
    functionDepth: 1
    functionLinenumber: 5549
    functionLinenumberEnd: 5558
    functionName: gf_dash_get_dependent_group_index
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_get_dependent_group_index(GF_DashClient *dash, u32
      idx, u32 group_depending_on_dep_idx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5563,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5568
      start: 5560
    functionDepth: 1
    functionLinenumber: 5560
    functionLinenumberEnd: 5568
    functionName: gf_dash_get_base_group_index
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_get_base_group_index(GF_DashClient *dash, u32 idx)
  - BBCount: 69
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:5579,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5583,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5586,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5592,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5593,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5594,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5603,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5604,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:5609,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:5615,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5618,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5619,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:5620,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5630,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5634,1
    - Dst: gf_dash_get_segment_duration
      Src: /src/gpac/src/media_tools/dash_client.c:5635,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5640,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:5648,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:5648,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5655,1
    - Dst: GF_DashClient*::dash_io::dash_codec_supported
      Src: /src/gpac/src/media_tools/dash_client.c:5661,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5663,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5671,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:5677,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:5678,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:5679,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:5680,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:5681,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:5683,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:5683,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:5687,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5689,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:5694,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:5694,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:5694,1
    - Dst: strncpy
      Src: /src/gpac/src/media_tools/dash_client.c:5697,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/dash_client.c:5699,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5703,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5713,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5719,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5720,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:5722,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5727,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:5735,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5736,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5746,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5747,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:5749,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5750,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5758,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:5768,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5773,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5774,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/dash_client.c:5776,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:5781,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:5790,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5801,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5814,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/dash_client.c:5817,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dash_client.c:5818,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5820,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5823,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:5824,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5826,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5827,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5832,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5834,1
    - Dst: gf_dash_group_get_dependency_group
      Src: /src/gpac/src/media_tools/dash_client.c:5835,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5837,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:5838,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:5841,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:5843,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5848,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5850,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/dash_client.c:5853,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dash_client.c:5854,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5857,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/dash_client.c:5862,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dash_client.c:5863,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:5872,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5874,1
    - Dst: gf_mpd_get_descriptor
      Src: /src/gpac/src/media_tools/dash_client.c:5879,1
    - Dst: gf_mpd_get_descriptor
      Src: /src/gpac/src/media_tools/dash_client.c:5880,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:5884,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/dash_client.c:5886,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5889,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:5891,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:5901,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:5902,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:5903,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dash_client.c:5914,1
    CyclomaticComplexity: 127
    EdgeCount: 127
    ICount: 268
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5917
      start: 5572
    functionDepth: 3
    functionLinenumber: 5572
    functionLinenumberEnd: 5917
    functionName: gf_dash_setup_groups
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_dash_group_get_dependency_group
    - GF_SAFEALLOC
    - gf_list_find
    - gf_list_count
    - memset
    - atoi
    - strchr
    - gf_sys_clock
    - gf_realloc
    - gf_list_new
    - gf_list_get
    - gf_assert
    - strrchr
    - strncmp
    - gf_list_add
    - gf_mpd_get_descriptor
    - GF_LOG
    - gf_dash_get_segment_duration
    - strstr
    - strncpy
    - strnicmp
    - gf_malloc
    - strlen
    - gf_list_del
    - GF_DashClient*::dash_io::dash_codec_supported
    - strcmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dash_setup_groups(GF_DashClient *dash)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dash_client.c:5930,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/dash_client.c:5931,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/dash_client.c:5932,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/dash_client.c:5933,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5935,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/dash_client.c:5935,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dash_client.c:5935,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/dash_client.c:5939,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/media_tools/dash_client.c:5945,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5948,1
    - Dst: gf_dash_load_sidx
      Src: /src/gpac/src/media_tools/dash_client.c:5954,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:5960,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:5962,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5964,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:5971,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/media_tools/dash_client.c:5974,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/dash_client.c:5975,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 44
    argCount: 4
    argNames:
    - bs
    - rep
    - separate_index
    - sidx_offset
    argTypes:
    - GF_BitStream*
    - GF_MPD_Representation*
    - Bool
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5978
      start: 5919
    functionDepth: 4
    functionLinenumber: 5919
    functionLinenumberEnd: 5978
    functionName: gf_dash_load_sidx
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - gf_4cc_to_str
    - gf_bs_read_u32
    - gf_bs_seek
    - GF_SAFEALLOC
    - gf_isom_box_del
    - GF_LOG
    - gf_bs_get_position
    - gf_list_add
    - gf_dash_load_sidx
    - gf_isom_box_parse
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dash_load_sidx(GF_BitStream *bs, GF_MPD_Representation *rep,
      Bool separate_index, u64 sidx_offset)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:5987,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/media_tools/dash_client.c:5990,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/dash_client.c:5993,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/media_tools/dash_client.c:5994,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/dash_client.c:5996,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/media_tools/dash_client.c:5998,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/dash_client.c:6001,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/dash_client.c:6002,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/dash_client.c:6003,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/media_tools/dash_client.c:6005,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:6008,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dash_client.c:6010,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/dash_client.c:6014,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dash_client.c:6014,1
    - Dst: gf_dash_load_sidx
      Src: /src/gpac/src/media_tools/dash_client.c:6015,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dash_client.c:6015,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/dash_client.c:6020,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/dash_client.c:6021,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 34
    argCount: 5
    argNames:
    - group
    - rep
    - cache_name
    - separate_index
    - needs_mov_range
    argTypes:
    - GF_DASH_Group*
    - GF_MPD_Representation*
    - char*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6023
      start: 5980
    functionDepth: 5
    functionLinenumber: 5980
    functionLinenumberEnd: 6023
    functionName: gf_dash_load_representation_sidx
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_bs_read_u32
    - gf_bs_new
    - gf_blob_get
    - GF_SAFEALLOC
    - gf_bs_seek
    - gf_bs_available
    - gf_bs_get_position
    - gf_bs_del
    - strncmp
    - gf_fopen
    - gf_blob_release
    - gf_bs_from_file
    - gf_bs_skip_bytes
    - gf_dash_load_sidx
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dash_load_representation_sidx(GF_DASH_Group *group, GF_MPD_Representation
      *rep, const char *cache_name, Bool separate_index, Bool needs_mov_range)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:6028,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/media_tools/dash_client.c:6032,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/media_tools/dash_client.c:6035,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/dash_client.c:6039,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/dash_client.c:6040,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/media_tools/dash_client.c:6041,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/dash_client.c:6044,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/dash_client.c:6046,1
    - Dst: gf_fread
      Src: /src/gpac/src/media_tools/dash_client.c:6048,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/dash_client.c:6049,1
    - Dst: gf_fread
      Src: /src/gpac/src/media_tools/dash_client.c:6050,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/dash_client.c:6051,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/dash_client.c:6054,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 4
    argNames:
    - cache_name
    - offset
    - box_type
    - box_size
    argTypes:
    - char*
    - u32
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6057
      start: 6025
    functionDepth: 1
    functionLinenumber: 6025
    functionLinenumberEnd: 6057
    functionName: dash_load_box_type
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_fseek
    - gf_blob_get
    - gf_fread
    - strncmp
    - gf_fopen
    - GF_4CC
    - gf_blob_release
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dash_load_box_type(const char *cache_name, u32 offset, u32 *box_type,
      u32 *box_size)
  - BBCount: 62
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6067,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:6083,1
    - Dst: gf_mpd_segment_template_free
      Src: /src/gpac/src/media_tools/dash_client.c:6087,1
    - Dst: gf_mpd_segment_template_free
      Src: /src/gpac/src/media_tools/dash_client.c:6092,1
    - Dst: gf_mpd_segment_template_free
      Src: /src/gpac/src/media_tools/dash_client.c:6098,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6102,1
    - Dst: gf_mpd_segment_template_free
      Src: /src/gpac/src/media_tools/dash_client.c:6107,1
    - Dst: gf_mpd_segment_template_free
      Src: /src/gpac/src/media_tools/dash_client.c:6112,1
    - Dst: gf_mpd_segment_template_free
      Src: /src/gpac/src/media_tools/dash_client.c:6117,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6121,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6129,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6135,1
    - Dst: gf_dash_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:6140,1
    - Dst: gf_dash_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:6143,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:6148,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:6148,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:6149,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:6154,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:6161,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:6166,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6182,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:6187,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:6193,1
    - Dst: dash_load_box_type
      Src: /src/gpac/src/media_tools/dash_client.c:6199,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:6205,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:6210,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:6215,1
    - Dst: dash_load_box_type
      Src: /src/gpac/src/media_tools/dash_client.c:6216,1
    - Dst: dash_load_box_type
      Src: /src/gpac/src/media_tools/dash_client.c:6219,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6223,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:6224,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6248,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:6250,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:6255,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:6257,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:6259,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:6265,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:6266,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:6273,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/media_tools/dash_client.c:6275,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/dash_client.c:6279,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dash_client.c:6280,1
    - Dst: gf_blob_register
      Src: /src/gpac/src/media_tools/dash_client.c:6282,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/media_tools/dash_client.c:6284,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/dash_client.c:6286,1
    - Dst: gf_fsize
      Src: /src/gpac/src/media_tools/dash_client.c:6289,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/dash_client.c:6291,1
    - Dst: gf_fread
      Src: /src/gpac/src/media_tools/dash_client.c:6292,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6294,1
    - Dst: gf_blob_register
      Src: /src/gpac/src/media_tools/dash_client.c:6296,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:6309,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:6315,1
    - Dst: gf_dash_load_representation_sidx
      Src: /src/gpac/src/media_tools/dash_client.c:6319,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6322,1
    - Dst: GF_DASH_Group*::dash::dash_io::delete_cache_file
      Src: /src/gpac/src/media_tools/dash_client.c:6326,1
    - Dst: gf_mpd_segment_base_free
      Src: /src/gpac/src/media_tools/dash_client.c:6330,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6334,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6336,1
    - Dst: gf_mpd_segment_base_free
      Src: /src/gpac/src/media_tools/dash_client.c:6340,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6346,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6347,1
    CyclomaticComplexity: 95
    EdgeCount: 95
    ICount: 261
    argCount: 1
    argNames:
    - group
    argTypes:
    - GF_DASH_Group*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6349
      start: 6060
    functionDepth: 6
    functionLinenumber: 6060
    functionLinenumberEnd: 6349
    functionName: gf_dash_setup_single_index_mode
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - gf_list_count
    - gf_fopen
    - GF_DASH_Group*::dash::dash_io::delete_cache_file
    - gf_list_get
    - gf_list_new
    - gf_strdup
    - gf_blob_get
    - gf_dash_resolve_url
    - memcpy
    - gf_fsize
    - gf_dash_download_resource
    - gf_blob_release
    - gf_dash_load_representation_sidx
    - GF_LOG
    - gf_fread
    - gf_mpd_segment_base_free
    - strstr
    - gf_blob_register
    - strnicmp
    - dash_load_box_type
    - gf_malloc
    - gf_mpd_segment_template_free
    - GF_DASH_Group*::dash::dash_io::get_cache_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dash_setup_single_index_mode(GF_DASH_Group *group)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6365,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6370,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:6372,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:6374,1
    - Dst: gf_mpd_period_free
      Src: /src/gpac/src/media_tools/dash_client.c:6375,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:6380,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:6381,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:6382,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:6383,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/dash_client.c:6387,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:6389,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:6389,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:6400,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:6400,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:6400,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/dash_client.c:6401,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/dash_client.c:6403,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:6404,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/dash_client.c:6404,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/dash_client.c:6405,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/dash_client.c:6408,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:6410,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:6412,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:6413,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/dash_client.c:6415,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/dash_client.c:6416,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:6420,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6421,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:6424,1
    - Dst: GF_DashClient*::dash_io::get_status
      Src: /src/gpac/src/media_tools/dash_client.c:6427,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6430,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6436,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:6436,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6437,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:6440,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6443,1
    - Dst: GF_DashClient*::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:6449,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/media_tools/dash_client.c:6453,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/media_tools/dash_client.c:6454,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6455,1
    - Dst: GF_DashClient*::dash_io::get_url
      Src: /src/gpac/src/media_tools/dash_client.c:6460,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:6461,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:6462,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/dash_client.c:6466,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6467,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:6467,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6468,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6470,1
    - Dst: gf_mpd_new
      Src: /src/gpac/src/media_tools/dash_client.c:6473,1
    - Dst: gf_xml_dom_get_root_nodes_count
      Src: /src/gpac/src/media_tools/dash_client.c:6475,1
    - Dst: gf_xml_dom_get_root_idx
      Src: /src/gpac/src/media_tools/dash_client.c:6477,1
    - Dst: gf_mpd_complete_from_dom
      Src: /src/gpac/src/media_tools/dash_client.c:6479,1
    - Dst: gf_mpd_init_from_dom
      Src: /src/gpac/src/media_tools/dash_client.c:6481,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/dash_client.c:6485,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6487,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:6489,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6490,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:6494,1
    - Dst: gf_mpd_split_adaptation_sets
      Src: /src/gpac/src/media_tools/dash_client.c:6497,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6500,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6506,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6507,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:6508,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6511,1
    - Dst: gf_mpd_period_free
      Src: /src/gpac/src/media_tools/dash_client.c:6512,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:6515,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/dash_client.c:6519,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6534,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6536,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6537,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/dash_client.c:6538,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:6543,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:6545,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 157
    argCount: 3
    argNames:
    - dash
    - period_list
    - period_idx
    argTypes:
    - GF_DashClient*
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6546
      start: 6351
    functionDepth: 11
    functionLinenumber: 6351
    functionLinenumberEnd: 6546
    functionName: gf_dash_solve_period_xlink
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_mpd_period_free
    - strcpy
    - gf_list_count
    - strchr
    - gf_mpd_complete_from_dom
    - strcat
    - gf_list_get
    - gf_assert
    - gf_strdup
    - gf_mpd_split_adaptation_sets
    - gf_xml_dom_new
    - gf_list_add
    - gf_dash_download_resource
    - gf_mpd_del
    - gf_xml_dom_get_root_nodes_count
    - gf_list_insert
    - gf_xml_dom_parse
    - GF_DashClient*::dash_io::get_url
    - GF_LOG
    - GF_DashClient*::dash_io::get_status
    - strstr
    - gf_xml_dom_get_root_idx
    - strnicmp
    - gf_error_to_string
    - gf_malloc
    - strlen
    - GF_DashClient*::dash_io::get_cache_name
    - GF_DashClient*::dash_io::del
    - gf_url_concatenate
    - strcmp
    - gf_mpd_new
    - gf_mpd_init_from_dom
    - gf_xml_dom_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_dash_solve_period_xlink(GF_DashClient *dash, GF_List *period_list,
      u32 period_idx)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: MAX
      Src: /src/gpac/src/media_tools/dash_client.c:6558,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:6578,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:6586,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/dash_client.c:6590,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:6590,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:6590,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:6593,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:6595,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/dash_client.c:6596,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 43
    argCount: 2
    argNames:
    - dash
    - tile_group
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6599
      start: 6548
    functionDepth: 1
    functionLinenumber: 6548
    functionLinenumberEnd: 6599
    functionName: gf_dash_get_tiles_quality_rank
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - MAX
    - ABS
    - MIN
    linkageType: ''
    returnType: u32
    signature: u32 gf_dash_get_tiles_quality_rank(GF_DashClient *dash, GF_DASH_Group
      *tile_group)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6607,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6609,1
    - Dst: gf_dash_get_tiles_quality_rank
      Src: /src/gpac/src/media_tools/dash_client.c:6619,1
    - Dst: gf_dash_set_group_representation
      Src: /src/gpac/src/media_tools/dash_client.c:6627,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6627,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 20
    argCount: 3
    argNames:
    - dash
    - srd
    - force_all
    argTypes:
    - GF_DashClient*
    - struct _dash_srd_desc*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6629
      start: 6602
    functionDepth: 7
    functionLinenumber: 6602
    functionLinenumberEnd: 6629
    functionName: gf_dash_set_tiles_quality
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_dash_set_group_representation
    - gf_dash_get_tiles_quality_rank
    linkageType: ''
    returnType: void
    signature: void gf_dash_set_tiles_quality(GF_DashClient *dash, struct _dash_srd_desc
      *srd, Bool force_all)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6635,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6637,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:6644,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:6645,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - dash
    - srd_id
    - do_create
    argTypes:
    - GF_DashClient*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6647
      start: 6631
    functionDepth: 1
    functionLinenumber: 6631
    functionLinenumberEnd: 6647
    functionName: gf_dash_get_srd_desc
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_add
    - gf_list_new
    linkageType: ''
    returnType: struct _dash_srd_desc
    signature: struct _dash_srd_desc *gf_dash_get_srd_desc(GF_DashClient *dash, u32
      srd_id, Bool do_create)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6654,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6657,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6658,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6660,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:6662,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/dash_client.c:6665,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/dash_client.c:6665,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/dash_client.c:6665,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 1
    argNames:
    - period
    argTypes:
    - GF_MPD_Period*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6680
      start: 6648
    functionDepth: 1
    functionLinenumber: 6648
    functionLinenumberEnd: 6680
    functionName: dash_check_supported_mime
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strchr
    - stricmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dash_check_supported_mime(GF_MPD_Period *period)
  - BBCount: 89
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6689,1
    - Dst: gf_dash_solve_period_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:6692,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6695,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6697,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6702,1
    - Dst: dash_check_supported_mime
      Src: /src/gpac/src/media_tools/dash_client.c:6707,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6711,1
    - Dst: gf_dash_setup_groups
      Src: /src/gpac/src/media_tools/dash_client.c:6714,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6717,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6725,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6730,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6764,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6766,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6776,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6779,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6783,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6784,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6786,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:6790,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/dash_client.c:6793,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/dash_client.c:6795,1
    - Dst: gf_dash_get_srd_desc
      Src: /src/gpac/src/media_tools/dash_client.c:6799,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:6809,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:6811,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:6813,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:6814,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:6815,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:6816,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6819,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6827,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6828,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:6830,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6831,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6839,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6843,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6844,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:6845,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/dash_client.c:6848,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/dash_client.c:6850,1
    - Dst: gf_dash_get_srd_desc
      Src: /src/gpac/src/media_tools/dash_client.c:6854,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:6863,1
    - Dst: gf_dash_setup_single_index_mode
      Src: /src/gpac/src/media_tools/dash_client.c:6869,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6876,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6883,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6884,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:6891,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/dash_client.c:6892,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6903,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6912,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6915,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:6931,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:6933,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:6933,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:6936,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:6938,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:6938,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:6940,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:6940,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:6942,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:6942,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:6944,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:6944,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:6946,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:6946,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6952,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6967,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7000,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7006,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7018,1
    - Dst: gf_dash_set_group_representation
      Src: /src/gpac/src/media_tools/dash_client.c:7021,1
    - Dst: gf_dash_reset_groups
      Src: /src/gpac/src/media_tools/dash_client.c:7026,1
    - Dst: gf_dash_seek_group
      Src: /src/gpac/src/media_tools/dash_client.c:7038,1
    - Dst: gf_dash_get_mime_type
      Src: /src/gpac/src/media_tools/dash_client.c:7041,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7044,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:7052,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7054,1
    CyclomaticComplexity: 166
    EdgeCount: 166
    ICount: 300
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7060
      start: 6681
    functionDepth: 12
    functionLinenumber: 6681
    functionLinenumberEnd: 7060
    functionName: gf_dash_setup_period
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_srd_desc
    - gf_dash_setup_single_index_mode
    - gf_list_count
    - gf_dash_set_group_representation
    - strchr
    - gf_list_get
    - gf_dash_setup_groups
    - gf_dash_seek_group
    - strncmp
    - gf_dash_get_mime_type
    - gf_dash_solve_period_xlink
    - gf_list_insert
    - sscanf
    - GF_LOG
    - strnicmp
    - dash_check_supported_mime
    - strlen
    - gf_dash_reset_groups
    - strcmp
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dash_setup_period(GF_DashClient *dash)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/media_tools/dash_client.c:7176,1
    - Dst: gf_dash_get_segment_availability_start_time
      Src: /src/gpac/src/media_tools/dash_client.c:7181,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 1
    argNames:
    - group
    argTypes:
    - GF_DASH_Group*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7212
      start: 7167
    functionDepth: 6
    functionLinenumber: 7167
    functionLinenumberEnd: 7212
    functionName: gf_dash_group_check_time
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_net_get_utc
    - gf_dash_get_segment_availability_start_time
    linkageType: ''
    returnType: void
    signature: void gf_dash_group_check_time(GF_DASH_Group *group)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:7228,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - dash
    - min_wait
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7230
      start: 7224
    functionDepth: 0
    functionLinenumber: 7224
    functionLinenumberEnd: 7230
    functionName: dash_set_min_wait
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_sys_clock
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE dash_set_min_wait(GF_DashClient *dash, u32 min_wait)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:7245,1
    - Dst: GF_DashClient*::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:7252,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:7253,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7254,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7255,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7256,1
    - Dst: dash_set_min_wait
      Src: /src/gpac/src/media_tools/dash_client.c:7261,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/media_tools/dash_client.c:7263,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7268,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7273,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7277,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:7277,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7279,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7283,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:7283,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7286,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7287,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7297,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:7297,1
    - Dst: gf_mpd_get_base_url_count
      Src: /src/gpac/src/media_tools/dash_client.c:7302,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7304,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7305,1
    - Dst: dash_download_group_download
      Src: /src/gpac/src/media_tools/dash_client.c:7313,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:7320,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:7321,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:7322,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7323,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7324,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7325,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7326,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7333,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7335,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:7340,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/dash_client.c:7342,1
    - Dst: gf_dash_group_timeline_setup
      Src: /src/gpac/src/media_tools/dash_client.c:7345,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7353,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7354,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7359,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:7359,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7374,1
    - Dst: dash_set_min_wait
      Src: /src/gpac/src/media_tools/dash_client.c:7375,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7378,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:7378,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7380,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7381,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7406,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7407,1
    CyclomaticComplexity: 59
    EdgeCount: 59
    ICount: 149
    argCount: 8
    argNames:
    - dash
    - group
    - base_group
    - e
    - rep
    - new_base_seg_url
    - key_url
    - has_dep_following
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    - GF_DASH_Group*
    - GF_Err
    - GF_MPD_Representation*
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7409
      start: 7236
    functionDepth: 5
    functionLinenumber: 7236
    functionLinenumberEnd: 7409
    functionName: on_group_download_error
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mpd_get_base_url_count
    - gf_dash_group_timeline_setup
    - GF_DashClient*::dash_io::get_header_value
    - GF_LOG
    - dash_download_group_download
    - GF_DASH_Group*::dash::dash_io::get_header_value
    - dash_set_min_wait
    - strcmp
    - gf_list_enum
    - gf_error_to_string
    - gf_net_get_utc
    - gf_dash_mark_group_done
    - gf_sys_clock
    linkageType: ''
    returnType: DownloadGroupStatus
    signature: DownloadGroupStatus on_group_download_error(GF_DashClient *dash, GF_DASH_Group
      *group, GF_DASH_Group *base_group, GF_Err e, GF_MPD_Representation *rep, char
      *new_base_seg_url, char *key_url, Bool has_dep_following)
  - BBCount: 96
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_group_timeline_setup
      Src: /src/gpac/src/media_tools/dash_client.c:7451,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7458,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7466,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7468,1
    - Dst: gf_dash_set_group_representation
      Src: /src/gpac/src/media_tools/dash_client.c:7470,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:7471,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7478,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:7486,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7502,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7512,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7513,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7521,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7522,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:7527,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7528,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:7541,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:7542,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7543,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7554,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7555,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7580,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7581,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7586,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7587,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:7589,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7598,1
    - Dst: gf_dash_switch_group_representation
      Src: /src/gpac/src/media_tools/dash_client.c:7599,1
    - Dst: gf_dash_get_segment_availability_start_time
      Src: /src/gpac/src/media_tools/dash_client.c:7608,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/media_tools/dash_client.c:7609,1
    - Dst: gf_dash_get_start_number
      Src: /src/gpac/src/media_tools/dash_client.c:7611,1
    - Dst: dash_set_min_wait
      Src: /src/gpac/src/media_tools/dash_client.c:7617,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:7622,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7627,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7637,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:7637,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7639,1
    - Dst: dash_set_min_wait
      Src: /src/gpac/src/media_tools/dash_client.c:7642,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7646,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:7646,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7649,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:7654,1
    - Dst: gf_dash_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:7661,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7664,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7678,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7681,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:7681,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7683,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7684,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:7690,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7691,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:7692,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7698,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7702,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7704,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7715,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/media_tools/dash_client.c:7730,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7732,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/dash_client.c:7732,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7734,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/dash_client.c:7734,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7736,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/dash_client.c:7736,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:7742,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:7743,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:7743,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:7743,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7749,1
    - Dst: gf_dash_switch_group_representation
      Src: /src/gpac/src/media_tools/dash_client.c:7750,1
    - Dst: gf_file_exists_ex
      Src: /src/gpac/src/media_tools/dash_client.c:7754,1
    - Dst: gf_mpd_get_base_url_count
      Src: /src/gpac/src/media_tools/dash_client.c:7755,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7757,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7758,1
    - Dst: dash_download_group_download
      Src: /src/gpac/src/media_tools/dash_client.c:7760,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7762,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7763,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7766,1
    - Dst: on_group_download_error
      Src: /src/gpac/src/media_tools/dash_client.c:7774,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:7783,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dash_client.c:7807,1
    - Dst: gf_dash_get_segment_start_time_with_timescale
      Src: /src/gpac/src/media_tools/dash_client.c:7812,1
    - Dst: dash_strip_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:7816,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7828,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7858,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7859,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:7870,1
    - Dst: gf_dash_skip_disabled_representation
      Src: /src/gpac/src/media_tools/dash_client.c:7872,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:7879,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7883,1
    CyclomaticComplexity: 139
    EdgeCount: 139
    ICount: 368
    argCount: 4
    argNames:
    - dash
    - group
    - base_group
    - has_dep_following
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    - GF_DASH_Group*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7886
      start: 7411
    functionDepth: 8
    functionLinenumber: 7411
    functionLinenumberEnd: 7886
    functionName: dash_download_group_download
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_dash_group_timeline_setup
    - gf_log_tool_level_on
    - gf_dash_set_group_representation
    - gf_file_basename
    - gf_sys_clock
    - gf_list_get
    - gf_assert
    - dash_strip_base_url
    - gf_dash_resolve_url
    - memcpy
    - dash_set_min_wait
    - on_group_download_error
    - gf_dash_skip_disabled_representation
    - gf_file_exists_ex
    - gf_net_get_utc
    - gf_dash_get_segment_availability_start_time
    - gf_dash_get_start_number
    - GF_LOG
    - GF_DASH_Group*::dash::dash_io::get_header_value
    - strstr
    - strnicmp
    - gf_error_to_string
    - gf_dash_mark_group_done
    - GF_DashClient*::dash_io::on_dash_event
    - ABS
    - gf_mpd_get_base_url_count
    - gf_dash_get_segment_start_time_with_timescale
    - dash_download_group_download
    - strcmp
    - gf_dash_switch_group_representation
    linkageType: ''
    returnType: DownloadGroupStatus
    signature: DownloadGroupStatus dash_download_group_download(GF_DashClient *dash,
      GF_DASH_Group *group, GF_DASH_Group *base_group, Bool has_dep_following)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: dash_download_group_download
      Src: /src/gpac/src/media_tools/dash_client.c:7894,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:7901,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7905,1
    - Dst: dash_download_group
      Src: /src/gpac/src/media_tools/dash_client.c:7910,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 26
    argCount: 4
    argNames:
    - dash
    - group
    - base_group
    - has_dep_following
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    - GF_DASH_Group*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7921
      start: 7889
    functionDepth: 9
    functionLinenumber: 7889
    functionLinenumberEnd: 7921
    functionName: dash_download_group
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - dash_download_group_download
    - dash_download_group
    linkageType: ''
    returnType: DownloadGroupStatus
    signature: DownloadGroupStatus dash_download_group(GF_DashClient *dash, GF_DASH_Group
      *group, GF_DASH_Group *base_group, Bool has_dep_following)
  - BBCount: 57
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:7934,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:7945,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7946,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/dash_client.c:7947,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7953,1
    - Dst: gf_dash_set_tiles_quality
      Src: /src/gpac/src/media_tools/dash_client.c:7968,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:7975,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:7975,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7979,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:7981,1
    - Dst: GF_DashClient*::dash_io::get_bytes_per_sec
      Src: /src/gpac/src/media_tools/dash_client.c:8002,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8019,1
    - Dst: gf_dash_get_tiles_quality_rank
      Src: /src/gpac/src/media_tools/dash_client.c:8023,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8028,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8036,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8045,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8071,1
    - Dst: gf_dash_get_tiles_quality_rank
      Src: /src/gpac/src/media_tools/dash_client.c:8075,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8079,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8082,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8084,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8089,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8089,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8091,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8095,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8126,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8129,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8149,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8151,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8161,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8168,1
    - Dst: gf_dash_get_tiles_quality_rank
      Src: /src/gpac/src/media_tools/dash_client.c:8174,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:8176,1
    - Dst: dash_do_rate_adaptation
      Src: /src/gpac/src/media_tools/dash_client.c:8183,1
    - Dst: dash_do_rate_adaptation
      Src: /src/gpac/src/media_tools/dash_client.c:8186,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8193,1
    CyclomaticComplexity: 96
    EdgeCount: 96
    ICount: 208
    argCount: 2
    argNames:
    - dash
    - for_postponed_only
    argTypes:
    - GF_DashClient*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8203
      start: 7924
    functionDepth: 8
    functionLinenumber: 7924
    functionLinenumberEnd: 8203
    functionName: dash_global_rate_adaptation
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_DashClient*::dash_io::get_bytes_per_sec
    - gf_list_get
    - gf_assert
    - gf_dash_get_tiles_quality_rank
    - GF_LOG
    - dash_do_rate_adaptation
    - gf_list_count
    - gf_dash_set_tiles_quality
    - MAX
    linkageType: ''
    returnType: void
    signature: void dash_global_rate_adaptation(GF_DashClient *dash, Bool for_postponed_only)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_setup_period
      Src: /src/gpac/src/media_tools/dash_client.c:8216,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:8223,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:8228,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8235,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8237,1
    - Dst: gf_dash_download_init_segment
      Src: /src/gpac/src/media_tools/dash_client.c:8243,1
    - Dst: gf_dash_reset_groups
      Src: /src/gpac/src/media_tools/dash_client.c:8248,1
    - Dst: dash_setup_period_and_groups
      Src: /src/gpac/src/media_tools/dash_client.c:8252,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:8270,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8276,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8281,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8284,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8295,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 75
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8306
      start: 8208
    functionDepth: 13
    functionLinenumber: 8208
    functionLinenumberEnd: 8306
    functionName: dash_setup_period_and_groups
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_dash_reset_groups
    - dash_setup_period_and_groups
    - gf_list_count
    - gf_dash_setup_period
    - gf_dash_download_init_segment
    - GF_DashClient*::dash_io::on_dash_event
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dash_setup_period_and_groups(GF_DashClient *dash)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8310,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8316,1
    - Dst: gf_dash_group_reset
      Src: /src/gpac/src/media_tools/dash_client.c:8321,1
    - Dst: dash_download_group
      Src: /src/gpac/src/media_tools/dash_client.c:8333,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 20
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8339
      start: 8308
    functionDepth: 10
    functionLinenumber: 8308
    functionLinenumberEnd: 8339
    functionName: dash_do_groups
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_dash_group_reset
    - dash_download_group
    linkageType: ''
    returnType: void
    signature: void dash_do_groups(GF_DashClient *dash)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:8345,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8352,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8362,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8364,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:8364,1
    - Dst: gf_dash_update_manifest
      Src: /src/gpac/src/media_tools/dash_client.c:8368,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8375,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:8375,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8378,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:8378,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:8389,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8400,1
    - Dst: gf_dash_group_check_time
      Src: /src/gpac/src/media_tools/dash_client.c:8415,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:8422,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:8425,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:8439,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:8443,1
    - Dst: gf_dash_reset_groups
      Src: /src/gpac/src/media_tools/dash_client.c:8458,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8473,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8476,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:8479,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:8480,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:8480,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/dash_client.c:8483,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:8485,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:8497,1
    - Dst: dash_global_rate_adaptation
      Src: /src/gpac/src/media_tools/dash_client.c:8507,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 128
    argCount: 2
    argNames:
    - dash
    - cache_is_full
    argTypes:
    - GF_DashClient*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8510
      start: 8341
    functionDepth: 12
    functionLinenumber: 8341
    functionLinenumberEnd: 8510
    functionName: dash_check_mpd_update_and_cache
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_new
    - gf_strdup
    - gf_dash_reset_groups
    - gf_list_pop_back
    - gf_assert
    - gf_dash_update_manifest
    - GF_LOG
    - dash_global_rate_adaptation
    - gf_dash_group_check_time
    - gf_list_count
    - GF_DashClient*::dash_io::on_dash_event
    - gf_list_add
    - gf_error_to_string
    - gf_sys_clock
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dash_check_mpd_update_and_cache(GF_DashClient *dash, Bool *cache_is_full)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:8524,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8526,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8531,1
    - Dst: gf_dash_reset_groups
      Src: /src/gpac/src/media_tools/dash_client.c:8532,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8534,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:8536,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:8541,1
    - Dst: gf_dash_open
      Src: /src/gpac/src/media_tools/dash_client.c:8550,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8554,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:8554,1
    - Dst: gf_dash_open
      Src: /src/gpac/src/media_tools/dash_client.c:8555,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8557,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:8557,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:8560,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:8561,1
    - Dst: gf_dash_check_periods
      Src: /src/gpac/src/media_tools/dash_client.c:8567,1
    - Dst: gf_dash_update_manifest
      Src: /src/gpac/src/media_tools/dash_client.c:8575,1
    - Dst: dash_setup_period_and_groups
      Src: /src/gpac/src/media_tools/dash_client.c:8583,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:8594,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:8598,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:8605,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8616,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8618,1
    - Dst: gf_dash_set_group_representation
      Src: /src/gpac/src/media_tools/dash_client.c:8620,1
    - Dst: gf_dash_seek_periods
      Src: /src/gpac/src/media_tools/dash_client.c:8627,1
    - Dst: dash_check_mpd_update_and_cache
      Src: /src/gpac/src/media_tools/dash_client.c:8631,1
    - Dst: dash_do_groups
      Src: /src/gpac/src/media_tools/dash_client.c:8644,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 117
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8650
      start: 8515
    functionDepth: 14
    functionLinenumber: 8515
    functionLinenumberEnd: 8650
    functionName: gf_dash_process_internal
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_dash_reset_groups
    - gf_dash_seek_periods
    - gf_dash_update_manifest
    - GF_LOG
    - dash_setup_period_and_groups
    - gf_list_count
    - dash_check_mpd_update_and_cache
    - gf_dash_open
    - GF_DashClient*::dash_io::on_dash_event
    - gf_error_to_string
    - gf_dash_set_group_representation
    - gf_dash_check_periods
    - dash_do_groups
    - gf_sys_clock
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dash_process_internal(GF_DashClient *dash)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_process_internal
      Src: /src/gpac/src/media_tools/dash_client.c:8654,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8655
      start: 8652
    functionDepth: 15
    functionLinenumber: 8652
    functionLinenumberEnd: 8655
    functionName: gf_dash_process
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_process_internal
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dash_process(GF_DashClient *dash)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:8670,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8681,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8685,1
    - Dst: gf_dash_solve_period_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:8690,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8708,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 46
    argCount: 2
    argNames:
    - dash
    - time
    argTypes:
    - GF_DashClient*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8713
      start: 8658
    functionDepth: 12
    functionLinenumber: 8658
    functionLinenumberEnd: 8713
    functionName: gf_dash_period_index_from_time
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_sys_clock
    - gf_dash_solve_period_xlink
    linkageType: ''
    returnType: u32
    signature: u32 gf_dash_period_index_from_time(GF_DashClient *dash, u64 time)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_period_index_from_time
      Src: /src/gpac/src/media_tools/dash_client.c:8719,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8722,1
    - Dst: gf_dash_solve_period_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:8724,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8725,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8727,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8728,1
    - Dst: dash_check_supported_mime
      Src: /src/gpac/src/media_tools/dash_client.c:8731,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8732
      start: 8715
    functionDepth: 13
    functionLinenumber: 8715
    functionLinenumberEnd: 8732
    functionName: gf_dash_check_periods
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_dash_period_index_from_time
    - GF_LOG
    - gf_list_count
    - dash_check_supported_mime
    - gf_dash_solve_period_xlink
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dash_check_periods(GF_DashClient *dash)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8750,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8751,1
    - Dst: gf_dash_solve_period_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:8755,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8768,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 42
    argCount: 2
    argNames:
    - dash
    - seek_time
    argTypes:
    - GF_DashClient*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8790
      start: 8735
    functionDepth: 12
    functionLinenumber: 8735
    functionLinenumberEnd: 8790
    functionName: gf_dash_seek_periods
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_dash_solve_period_xlink
    linkageType: ''
    returnType: Bool
    signature: Bool gf_dash_seek_periods(GF_DashClient *dash, Double seek_time)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8794,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8796,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8799,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8801,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/dash_client.c:8803,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/dash_client.c:8804,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:8810,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:8811,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 2
    argNames:
    - group
    - select
    argTypes:
    - GF_DASH_Group*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8814
      start: 8792
    functionDepth: 1
    functionLinenumber: 8792
    functionLinenumberEnd: 8814
    functionName: gather_ssr_rep
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_insert
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void gather_ssr_rep(GF_DASH_Group *group, GF_List *select)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8822,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:8828,1
    - Dst: gather_ssr_rep
      Src: /src/gpac/src/media_tools/dash_client.c:8830,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8831,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8833,1
    - Dst: gather_ssr_rep
      Src: /src/gpac/src/media_tools/dash_client.c:8834,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8836,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8837,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8838,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:8840,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:8842,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dash_client.c:8852,1
    - Dst: gf_mpd_seek_in_period
      Src: /src/gpac/src/media_tools/dash_client.c:8860,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8862,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:8862,1
    - Dst: dash_ssr_adjust_group_start
      Src: /src/gpac/src/media_tools/dash_client.c:8880,1
    - Dst: gf_dash_group_reset_cache_entry
      Src: /src/gpac/src/media_tools/dash_client.c:8893,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8897,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8899,1
    - Dst: gf_dash_group_reset_cache_entry
      Src: /src/gpac/src/media_tools/dash_client.c:8902,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 67
    argCount: 4
    argNames:
    - dash
    - group
    - seek_to
    - is_dynamic
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    - Double
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8907
      start: 8815
    functionDepth: 4
    functionLinenumber: 8815
    functionLinenumberEnd: 8907
    functionName: gf_dash_seek_group
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_list_new
    - gather_ssr_rep
    - GF_LOG
    - gf_list_find
    - dash_ssr_adjust_group_start
    - gf_mpd_seek_in_period
    - gf_list_count
    - gf_error_to_string
    - gf_dash_group_reset_cache_entry
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_dash_seek_group(GF_DashClient *dash, GF_DASH_Group *group,
      Double seek_to, Bool is_dynamic)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8912,1
    - Dst: gf_dash_seek_group
      Src: /src/gpac/src/media_tools/dash_client.c:8914,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - dash
    - group_idx
    - seek_to
    argTypes:
    - GF_DashClient*
    - u32
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8915
      start: 8909
    functionDepth: 5
    functionLinenumber: 8909
    functionLinenumberEnd: 8915
    functionName: gf_dash_group_seek
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_dash_seek_group
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_seek(GF_DashClient *dash, u32 group_idx, Double
      seek_to)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8924,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8929,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8930,1
    - Dst: gf_dash_seek_group
      Src: /src/gpac/src/media_tools/dash_client.c:8933,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - dash
    - seek_time
    - is_dynamic
    argTypes:
    - GF_DashClient*
    - Double
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8935
      start: 8917
    functionDepth: 5
    functionLinenumber: 8917
    functionLinenumberEnd: 8935
    functionName: gf_dash_seek_groups
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_dash_seek_group
    linkageType: ''
    returnType: void
    signature: void gf_dash_seek_groups(GF_DashClient *dash, Double seek_time, Bool
      is_dynamic)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: GF_DashClient*::dash_io::create
      Src: /src/gpac/src/media_tools/dash_client.c:8946,1
    - Dst: GF_DashClient*::dash_io::setup_from_url
      Src: /src/gpac/src/media_tools/dash_client.c:8953,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8958,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8959,1
    - Dst: GF_DashClient*::dash_io::setup_from_url
      Src: /src/gpac/src/media_tools/dash_client.c:8964,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8967,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:8967,1
    - Dst: GF_DashClient*::dash_io::init
      Src: /src/gpac/src/media_tools/dash_client.c:8973,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:8977,1
    - Dst: GF_DashClient*::dash_io::run
      Src: /src/gpac/src/media_tools/dash_client.c:8983,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 38
    argCount: 2
    argNames:
    - getter
    - url
    argTypes:
    - GF_FileDownload*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8984
      start: 8938
    functionDepth: 1
    functionLinenumber: 8938
    functionLinenumberEnd: 8984
    functionName: http_ifce_get
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - GF_DashClient*::dash_io::run
    - GF_DashClient*::dash_io::del
    - GF_LOG
    - gf_list_count
    - GF_DashClient*::dash_io::init
    - gf_error_to_string
    - GF_DashClient*::dash_io::create
    - GF_DashClient*::dash_io::setup_from_url
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err http_ifce_get(GF_FileDownload *getter, char *url)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:8989,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - getter
    argTypes:
    - GF_FileDownload*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8991
      start: 8986
    functionDepth: 0
    functionLinenumber: 8986
    functionLinenumberEnd: 8991
    functionName: http_ifce_clean
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_DashClient*::dash_io::del
    linkageType: ''
    returnType: void
    signature: void http_ifce_clean(GF_FileDownload *getter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_DashClient*::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:8996,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - getter
    argTypes:
    - GF_FileDownload*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8998
      start: 8993
    functionDepth: 0
    functionLinenumber: 8993
    functionLinenumberEnd: 8998
    functionName: http_ifce_cache_name
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_DashClient*::dash_io::get_cache_name
    linkageType: ''
    returnType: char
    signature: char *http_ifce_cache_name(GF_FileDownload *getter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_DashClient*::dash_io::get_status
      Src: /src/gpac/src/media_tools/dash_client.c:9003,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - getter
    argTypes:
    - GF_FileDownload*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9005
      start: 9000
    functionDepth: 0
    functionLinenumber: 9000
    functionLinenumberEnd: 9005
    functionName: http_ifce_get_status
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_DashClient*::dash_io::get_status
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err http_ifce_get_status(GF_FileDownload *getter)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/dash_client.c:9020,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dash_client.c:9026,1
    - Dst: gf_dash_set_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:9033,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:9044,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:9048,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:9051,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:9054,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:9054,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:9057,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9059,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:9059,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:9060,1
    - Dst: GF_DashClient*::dash_io::get_mime
      Src: /src/gpac/src/media_tools/dash_client.c:9065,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/dash_client.c:9066,1
    - Dst: strlwr
      Src: /src/gpac/src/media_tools/dash_client.c:9067,1
    - Dst: GF_DashClient*::dash_io::get_url
      Src: /src/gpac/src/media_tools/dash_client.c:9069,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:9072,1
    - Dst: gf_dash_set_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:9073,1
    - Dst: GF_DashClient*::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:9076,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9078,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:9079,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:9088,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/dash_client.c:9089,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/dash_client.c:9091,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/dash_client.c:9093,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/dash_client.c:9096,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/dash_client.c:9103,1
    - Dst: dash_get_fetch_time
      Src: /src/gpac/src/media_tools/dash_client.c:9105,1
    - Dst: gf_dash_reset_groups
      Src: /src/gpac/src/media_tools/dash_client.c:9107,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:9110,1
    - Dst: gf_mpd_new
      Src: /src/gpac/src/media_tools/dash_client.c:9112,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9115,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:9115,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/dash_client.c:9122,1
    - Dst: gf_fread
      Src: /src/gpac/src/media_tools/dash_client.c:9124,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/dash_client.c:9127,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:9131,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/dash_client.c:9137,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/dash_client.c:9138,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/dash_client.c:9140,1
    - Dst: gf_m3u8_to_mpd
      Src: /src/gpac/src/media_tools/dash_client.c:9142,1
    - Dst: GF_DashClient*::dash_io::get_url
      Src: /src/gpac/src/media_tools/dash_client.c:9144,1
    - Dst: gf_m3u8_to_mpd
      Src: /src/gpac/src/media_tools/dash_client.c:9147,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/media_tools/dash_client.c:9151,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9152,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:9153,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:9155,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/media_tools/dash_client.c:9155,1
    - Dst: gf_mpd_write
      Src: /src/gpac/src/media_tools/dash_client.c:9156,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9157,1
    - Dst: gf_mpd_split_adaptation_sets
      Src: /src/gpac/src/media_tools/dash_client.c:9162,1
    - Dst: gf_dash_check_mpd_root_type
      Src: /src/gpac/src/media_tools/dash_client.c:9165,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9170,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:9171,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9176,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/media_tools/dash_client.c:9179,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/media_tools/dash_client.c:9180,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9186,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/media_tools/dash_client.c:9186,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/dash_client.c:9187,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:9188,1
    - Dst: gf_mpd_init_smooth_from_dom
      Src: /src/gpac/src/media_tools/dash_client.c:9194,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/dash_client.c:9194,1
    - Dst: gf_mpd_init_from_dom
      Src: /src/gpac/src/media_tools/dash_client.c:9196,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/dash_client.c:9196,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/dash_client.c:9198,1
    - Dst: gf_mpd_split_adaptation_sets
      Src: /src/gpac/src/media_tools/dash_client.c:9201,1
    - Dst: dash_purge_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:9204,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/dash_client.c:9209,1
    - Dst: GF_DashClient*::dash_io::manifest_updated
      Src: /src/gpac/src/media_tools/dash_client.c:9210,1
    - Dst: GF_DashClient*::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:9216,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:9217,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9218,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9224,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:9224,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9227,1
    - Dst: gf_dash_check_periods
      Src: /src/gpac/src/media_tools/dash_client.c:9233,1
    - Dst: dash_check_chaining
      Src: /src/gpac/src/media_tools/dash_client.c:9237,1
    - Dst: dash_check_chaining
      Src: /src/gpac/src/media_tools/dash_client.c:9238,1
    - Dst: dash_check_chaining
      Src: /src/gpac/src/media_tools/dash_client.c:9239,1
    - Dst: dash_check_chaining
      Src: /src/gpac/src/media_tools/dash_client.c:9240,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:9248,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:9253,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 196
    argCount: 2
    argNames:
    - dash
    - manifest_url
    argTypes:
    - GF_DashClient*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9256
      start: 9007
    functionDepth: 14
    functionLinenumber: 9007
    functionLinenumberEnd: 9256
    functionName: gf_dash_open
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - gf_mpd_write
    - gf_xml_dom_get_root
    - gf_log_tool_level_on
    - strcpy
    - gf_dash_set_base_url
    - memset
    - gf_fopen
    - gf_file_basename
    - dash_get_fetch_time
    - strcat
    - gf_list_new
    - strrchr
    - gf_dash_check_mpd_root_type
    - gf_mpd_split_adaptation_sets
    - gf_m3u8_to_mpd
    - strlwr
    - strncmp
    - gf_xml_dom_new
    - gf_list_add
    - gf_dash_download_resource
    - gf_mpd_del
    - gf_xml_dom_parse
    - GF_DashClient*::dash_io::get_url
    - GF_LOG
    - gf_fread
    - GF_DashClient*::dash_io::manifest_updated
    - strstr
    - strnicmp
    - GF_DashClient*::dash_io::get_mime
    - gf_xml_dom_get_error
    - gf_error_to_string
    - gf_fclose
    - GF_DashClient*::dash_io::del
    - gf_dash_reset_groups
    - GF_DashClient*::dash_io::get_header_value
    - gf_file_ext_start
    - strcmp
    - gf_mpd_new
    - dash_purge_xlink
    - gf_xml_dom_create_attribute
    - dash_check_chaining
    - gf_dash_check_periods
    - gf_mpd_init_from_dom
    - gf_xml_dom_del
    - GF_DashClient*::dash_io::get_cache_name
    - gf_mpd_init_smooth_from_dom
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_open(GF_DashClient *dash, const char *manifest_url)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:9261,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:9267,1
    - Dst: GF_DashClient*::getter::del_session
      Src: /src/gpac/src/media_tools/dash_client.c:9272,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:9275,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:9279,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:9283,1
    - Dst: gf_dash_reset_groups
      Src: /src/gpac/src/media_tools/dash_client.c:9289,1
    - Dst: gf_mpd_representation_free
      Src: /src/gpac/src/media_tools/dash_client.c:9293,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:9297,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 38
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9303
      start: 9258
    functionDepth: 5
    functionLinenumber: 9258
    functionLinenumberEnd: 9303
    functionName: gf_dash_close
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_DashClient*::getter::del_session
    - gf_free
    - gf_assert
    - GF_DashClient*::dash_io::del
    - gf_dash_reset_groups
    - gf_mpd_representation_free
    - gf_mpd_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_close(GF_DashClient *dash)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 2
    argNames:
    - dash
    - algo
    argTypes:
    - GF_DashClient*
    - GF_DASHAdaptationAlgorithm
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9334
      start: 9305
    functionDepth: 0
    functionLinenumber: 9305
    functionLinenumberEnd: 9334
    functionName: gf_dash_set_algo
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_set_algo(GF_DashClient *dash, GF_DASHAdaptationAlgorithm
      algo)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_DashClient*::rate_adaptation_algo_custom
      Src: /src/gpac/src/media_tools/dash_client.c:9357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 9
    argNames:
    - dash
    - group
    - base_group
    - dl_rate
    - speed
    - max_available_speed
    - force_lower_complexity
    - rep
    - go_up_bitrate
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    - GF_DASH_Group*
    - u32
    - Double
    - Double
    - Bool
    - GF_MPD_Representation*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9359
      start: 9336
    functionDepth: 0
    functionLinenumber: 9336
    functionLinenumberEnd: 9359
    functionName: dash_do_rate_adaptation_custom
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_DashClient*::rate_adaptation_algo_custom
    linkageType: ''
    returnType: s32
    signature: "s32 dash_do_rate_adaptation_custom(GF_DashClient *dash, GF_DASH_Group
      *group, GF_DASH_Group *base_group,\n\t\t  \t  \t  \t  \t  \t  \t  \t  \t  u32
      dl_rate, Double speed, Double max_available_speed, Bool force_lower_complexity,\n\t\t\t\t\t\t\t\t\t\t
      \ \t  GF_MPD_Representation *rep, Bool go_up_bitrate)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_DashClient*::rate_adaptation_download_monitor_custom
      Src: /src/gpac/src/media_tools/dash_client.c:9364,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - dash
    - group
    - bits_per_sec
    - total_bytes
    - bytes_done
    - us_since_start
    - buffer_dur_ms
    - current_seg_dur
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    - u32
    - u64
    - u64
    - u64
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9365
      start: 9361
    functionDepth: 0
    functionLinenumber: 9361
    functionLinenumberEnd: 9365
    functionName: dash_do_rate_monitor_custom
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_DashClient*::rate_adaptation_download_monitor_custom
    linkageType: ''
    returnType: s32
    signature: s32 dash_do_rate_monitor_custom(GF_DashClient *dash, GF_DASH_Group
      *group, u32 bits_per_sec, u64 total_bytes, u64 bytes_done, u64 us_since_start,
      u32 buffer_dur_ms, u32 current_seg_dur)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - dash
    - udta
    - algo_custom
    - download_monitor_custom
    argTypes:
    - GF_DashClient*
    - void*
    - gf_dash_rate_adaptation
    - gf_dash_download_monitor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9380
      start: 9367
    functionDepth: 0
    functionLinenumber: 9367
    functionLinenumberEnd: 9380
    functionName: gf_dash_set_algo_custom
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_dash_set_algo_custom(GF_DashClient *dash, void *udta,\n\t\tgf_dash_rate_adaptation
      algo_custom,\n\t\tgf_dash_download_monitor download_monitor_custom)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9387,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:9391,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:9401,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9417,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/media_tools/dash_client.c:9420,1
    - Dst: on_group_download_error
      Src: /src/gpac/src/media_tools/dash_client.c:9421,1
    - Dst: gf_dash_is_running
      Src: /src/gpac/src/media_tools/dash_client.c:9422,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 33
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9427
      start: 9382
    functionDepth: 6
    functionLinenumber: 9382
    functionLinenumberEnd: 9427
    functionName: GF_DashClient *gf_dash_new(GF_DASHFileIO *dash_io, u32 max_cache_duration,
      s32 auto_switch_count, Bool keep_files, Bool disable_switching, GF_DASHInitialSelectionMode
      first_select_mode, u32 initial_time_shift_percent)
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - GF_LOG
    - gf_dash_is_running
    - on_group_download_error
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_DashClient *gf_dash_new(GF_DASHFileIO *dash_io, u32 max_cache_duration,
      s32 auto_switch_count, Bool keep_files, Bool disable_switching, GF_DASHInitialSelectionMode
      first_select_mode, u32 initial_time_shift_percent)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_close
      Src: /src/gpac/src/media_tools/dash_client.c:9434,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9436,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/dash_client.c:9437,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:9438,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dash_client.c:9440,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:9442,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:9443,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:9444,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:9446,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9447
      start: 9429
    functionDepth: 6
    functionLinenumber: 9429
    functionLinenumberEnd: 9447
    functionName: gf_dash_del
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_list_count
    - gf_dash_close
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_del(GF_DashClient *dash)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dash
    - estimate_utc_drift
    argTypes:
    - GF_DashClient*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9453
      start: 9449
    functionDepth: 0
    functionLinenumber: 9449
    functionLinenumberEnd: 9453
    functionName: gf_dash_enable_utc_drift_compensation
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_enable_utc_drift_compensation(GF_DashClient *dash,
      Bool estimate_utc_drift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dash
    - switch_probe_count
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9459
      start: 9455
    functionDepth: 0
    functionLinenumber: 9455
    functionLinenumberEnd: 9459
    functionName: gf_dash_set_switching_probe_count
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_set_switching_probe_count(GF_DashClient *dash, u32
      switch_probe_count)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dash
    - enable
    argTypes:
    - GF_DashClient*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9465
      start: 9461
    functionDepth: 0
    functionLinenumber: 9461
    functionLinenumberEnd: 9465
    functionName: gf_dash_enable_single_range_llhls
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_enable_single_range_llhls(GF_DashClient *dash, Bool
      enable)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dash
    - enable
    argTypes:
    - GF_DashClient*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9471
      start: 9467
    functionDepth: 0
    functionLinenumber: 9467
    functionLinenumberEnd: 9471
    functionName: gf_dash_enable_group_selection
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_enable_group_selection(GF_DashClient *dash, Bool
      enable)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dash
    - agressive_switch
    argTypes:
    - GF_DashClient*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9477
      start: 9473
    functionDepth: 0
    functionLinenumber: 9473
    functionLinenumberEnd: 9477
    functionName: gf_dash_set_agressive_adaptation
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_set_agressive_adaptation(GF_DashClient *dash, Bool
      agressive_switch)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - dash
    - auto_switch_count
    - auto_switch_loop
    argTypes:
    - GF_DashClient*
    - s32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9485
      start: 9479
    functionDepth: 0
    functionLinenumber: 9479
    functionLinenumberEnd: 9485
    functionName: gf_dash_set_auto_switch
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_set_auto_switch(GF_DashClient *dash, s32 auto_switch_count,
      Bool auto_switch_loop)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - dash
    - cross_as_mode
    argTypes:
    - GF_DashClient*
    - GF_DASHCrossASMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9491
      start: 9487
    functionDepth: 0
    functionLinenumber: 9487
    functionLinenumberEnd: 9491
    functionName: gf_dash_enable_cross_as_switch
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_enable_cross_as_switch(GF_DashClient *dash, GF_DASHCrossASMode
      cross_as_mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9496,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9497
      start: 9493
    functionDepth: 1
    functionLinenumber: 9493
    functionLinenumberEnd: 9497
    functionName: gf_dash_get_group_count
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_get_group_count(GF_DashClient *dash)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9503,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9506
      start: 9500
    functionDepth: 1
    functionLinenumber: 9500
    functionLinenumberEnd: 9506
    functionName: gf_dash_get_group_udta
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_dash_get_group_udta(GF_DashClient *dash, u32 idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9511,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - dash
    - idx
    - udta
    argTypes:
    - GF_DashClient*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9515
      start: 9508
    functionDepth: 1
    functionLinenumber: 9508
    functionLinenumberEnd: 9515
    functionName: gf_dash_set_group_udta
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_set_group_udta(GF_DashClient *dash, u32 idx, void
      *udta)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9520,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9525
      start: 9517
    functionDepth: 1
    functionLinenumber: 9517
    functionLinenumberEnd: 9525
    functionName: gf_dash_is_group_selected
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_is_group_selected(GF_DashClient *dash, u32 idx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9530,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9536
      start: 9527
    functionDepth: 1
    functionLinenumber: 9527
    functionLinenumberEnd: 9536
    functionName: gf_dash_is_group_selectable
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_is_group_selectable(GF_DashClient *dash, u32 idx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9541,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - dash
    - title
    - source
    argTypes:
    - GF_DashClient*
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9544
      start: 9538
    functionDepth: 1
    functionLinenumber: 9538
    functionLinenumberEnd: 9544
    functionName: gf_dash_get_info
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_get_info(GF_DashClient *dash, const char **title,
      const char **source)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9551,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9555,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9562,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9567,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9568,1
    - Dst: gf_dash_group_count_rep_needed
      Src: /src/gpac/src/media_tools/dash_client.c:9588,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9603,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9607,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9622,1
    - Dst: gf_dash_group_reset_cache_entry
      Src: /src/gpac/src/media_tools/dash_client.c:9624,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9634,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9638,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9650,1
    - Dst: gf_dash_group_reset_cache_entry
      Src: /src/gpac/src/media_tools/dash_client.c:9652,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9670,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/dash_client.c:9672,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dash_client.c:9674,1
    - Dst: gf_dash_group_count_rep_needed
      Src: /src/gpac/src/media_tools/dash_client.c:9682,1
    - Dst: gf_dash_set_tiles_quality
      Src: /src/gpac/src/media_tools/dash_client.c:9685,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 104
    argCount: 2
    argNames:
    - dash
    - switch_up
    argTypes:
    - GF_DashClient*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9688
      start: 9547
    functionDepth: 8
    functionLinenumber: 9547
    functionLinenumberEnd: 9688
    functionName: gf_dash_switch_quality
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - memmove
    - GF_LOG
    - gf_list_count
    - gf_dash_group_count_rep_needed
    - memset
    - gf_dash_set_tiles_quality
    - gf_dash_group_reset_cache_entry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_switch_quality(GF_DashClient *dash, Bool switch_up)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_get_duration
      Src: /src/gpac/src/media_tools/dash_client.c:9693,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9694
      start: 9690
    functionDepth: 2
    functionLinenumber: 9690
    functionLinenumberEnd: 9694
    functionName: gf_dash_get_duration
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_mpd_get_duration
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_get_duration(GF_DashClient *dash)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9699,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9702
      start: 9696
    functionDepth: 1
    functionLinenumber: 9696
    functionLinenumberEnd: 9702
    functionName: gf_dash_group_get_time_shift_buffer_depth
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_get_time_shift_buffer_depth(GF_DashClient *dash,
      u32 idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9708
      start: 9704
    functionDepth: 0
    functionLinenumber: 9704
    functionLinenumberEnd: 9708
    functionName: gf_dash_get_url
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_dash_get_url(GF_DashClient *dash)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9713
      start: 9710
    functionDepth: 0
    functionLinenumber: 9710
    functionLinenumberEnd: 9713
    functionName: gf_dash_is_m3u8
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_is_m3u8(GF_DashClient *dash)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9717
      start: 9714
    functionDepth: 0
    functionLinenumber: 9714
    functionLinenumberEnd: 9717
    functionName: gf_dash_is_smooth_streaming
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_is_smooth_streaming(GF_DashClient *dash)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:9724,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/dash_client.c:9731,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9733,1
    - Dst: gf_dash_get_mime_type
      Src: /src/gpac/src/media_tools/dash_client.c:9735,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9747,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9749,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 31
    argCount: 5
    argNames:
    - dash
    - idx
    - start_range
    - end_range
    - mime_type
    argTypes:
    - GF_DashClient*
    - u32
    - u64*
    - u64*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9758
      start: 9720
    functionDepth: 2
    functionLinenumber: 9720
    functionLinenumberEnd: 9758
    functionName: gf_dash_group_get_segment_init_url
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_count
    - gf_dash_get_mime_type
    - gf_dash_get_active_group
    - gf_list_last
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_dash_group_get_segment_init_url(GF_DashClient *dash,
      u32 idx, u64 *start_range, u64 *end_range, const char **mime_type)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:9764,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9767,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dash_client.c:9773,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 4
    argNames:
    - dash
    - idx
    - crypt_type
    - key_IV
    argTypes:
    - GF_DashClient*
    - u32
    - u32*
    - bin128*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9775
      start: 9760
    functionDepth: 2
    functionLinenumber: 9760
    functionLinenumberEnd: 9775
    functionName: gf_dash_group_get_segment_init_keys
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_active_group
    - memcpy
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_dash_group_get_segment_init_keys(GF_DashClient *dash,
      u32 idx, u32 *crypt_type, bin128 *key_IV)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:9782,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9785,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9787,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:9788,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:9789,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9791,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9793,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9795,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:9796,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:9797,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9803,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9805,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:9806,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dash_client.c:9809,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/dash_client.c:9818,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9827,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9829,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:9830,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9831,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9833,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 57
    argCount: 3
    argNames:
    - dash
    - group_idx
    - default_kid
    argTypes:
    - GF_DashClient*
    - u32
    - bin128*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9841
      start: 9777
    functionDepth: 2
    functionLinenumber: 9777
    functionLinenumberEnd: 9841
    functionName: gf_dash_group_get_clearkey_uri
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - sscanf
    - strstr
    - gf_list_count
    - memset
    - strcmp
    - gf_dash_get_active_group
    linkageType: ''
    returnType: char
    signature: char *gf_dash_group_get_clearkey_uri(GF_DashClient *dash, u32 group_idx,
      bin128 *default_kid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:9846,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9849
      start: 9844
    functionDepth: 2
    functionLinenumber: 9844
    functionLinenumberEnd: 9849
    functionName: gf_dash_group_init_segment_is_media
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_active_group
    linkageType: ''
    returnType: Bool
    signature: Bool gf_dash_group_init_segment_is_media(GF_DashClient *dash, u32 idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9854,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9857
      start: 9851
    functionDepth: 1
    functionLinenumber: 9851
    functionLinenumberEnd: 9857
    functionName: gf_dash_group_get_id
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_get_id(GF_DashClient *dash, u32 idx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9863,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9866
      start: 9859
    functionDepth: 1
    functionLinenumber: 9859
    functionLinenumberEnd: 9866
    functionName: gf_dash_get_period_id
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_dash_get_period_id(GF_DashClient *dash)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9872,1
    - Dst: GF_DASH_Group*::dash::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:9881,1
    - Dst: gf_dash_get_group_count
      Src: /src/gpac/src/media_tools/dash_client.c:9887,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9888,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 18
    argCount: 3
    argNames:
    - dash
    - idx
    - select
    argTypes:
    - GF_DashClient*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9900
      start: 9868
    functionDepth: 2
    functionLinenumber: 9868
    functionLinenumberEnd: 9900
    functionName: gf_dash_group_select
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_dash_get_group_count
    - GF_DASH_Group*::dash::dash_io::on_dash_event
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_select(GF_DashClient *dash, u32 idx, Bool select)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:9910,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9913,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9914,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/dash_client.c:9919,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:9920,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:9921,1
    - Dst: gf_dash_group_select
      Src: /src/gpac/src/media_tools/dash_client.c:9923,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:9924,1
    - Dst: gf_lang_find
      Src: /src/gpac/src/media_tools/dash_client.c:9928,1
    - Dst: gf_lang_get_2cc
      Src: /src/gpac/src/media_tools/dash_client.c:9930,1
    - Dst: gf_lang_get_3cc
      Src: /src/gpac/src/media_tools/dash_client.c:9931,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9933,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9935,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:9938,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9944,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9945,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:9956,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:9960,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/dash_client.c:9962,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/dash_client.c:9963,1
    - Dst: gf_dash_group_select
      Src: /src/gpac/src/media_tools/dash_client.c:9965,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:9966,1
    - Dst: gf_dash_group_select
      Src: /src/gpac/src/media_tools/dash_client.c:9968,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dash_client.c:9975,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 47
    argCount: 2
    argNames:
    - dash
    - lang_code_rfc_5646
    argTypes:
    - GF_DashClient*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9976
      start: 9902
    functionDepth: 3
    functionLinenumber: 9902
    functionLinenumberEnd: 9976
    functionName: gf_dash_groups_set_language
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_list_get
    - gf_list_find
    - gf_lang_find
    - gf_list_count
    - gf_dash_group_select
    - strnicmp
    - gf_list_add
    - gf_lang_get_3cc
    - stricmp
    - strchr
    - gf_lang_get_2cc
    - strlen
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_groups_set_language(GF_DashClient *dash, const char
      *lang_code_rfc_5646)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9982
      start: 9978
    functionDepth: 0
    functionLinenumber: 9978
    functionLinenumberEnd: 9982
    functionName: gf_dash_is_running
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_is_running(GF_DashClient *dash)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9991
      start: 9984
    functionDepth: 0
    functionLinenumber: 9984
    functionLinenumberEnd: 9991
    functionName: gf_dash_is_in_setup
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_is_in_setup(GF_DashClient *dash)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9997
      start: 9993
    functionDepth: 0
    functionLinenumber: 9993
    functionLinenumberEnd: 9997
    functionName: gf_dash_get_period_switch_status
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_get_period_switch_status(GF_DashClient *dash)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10001,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10003
      start: 9998
    functionDepth: 1
    functionLinenumber: 9998
    functionLinenumberEnd: 10003
    functionName: gf_dash_request_period_switch
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_request_period_switch(GF_DashClient *dash)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10015,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10020,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - dash
    - check_eos
    argTypes:
    - GF_DashClient*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10024
      start: 10004
    functionDepth: 1
    functionLinenumber: 10004
    functionLinenumberEnd: 10024
    functionName: gf_dash_in_last_period
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_in_last_period(GF_DashClient *dash, Bool check_eos)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10029
      start: 10025
    functionDepth: 0
    functionLinenumber: 10025
    functionLinenumberEnd: 10029
    functionName: gf_dash_in_period_setup
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_in_period_setup(GF_DashClient *dash)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10039,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10040,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10044,1
    - Dst: gf_dash_get_max_available_speed
      Src: /src/gpac/src/media_tools/dash_client.c:10048,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:10051,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10058,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10059,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:10060,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10067,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10072,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:10074,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 34
    argCount: 2
    argNames:
    - dash
    - speed
    argTypes:
    - GF_DashClient*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10077
      start: 10031
    functionDepth: 2
    functionLinenumber: 10031
    functionLinenumberEnd: 10077
    functionName: gf_dash_set_speed
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - ABS
    - gf_dash_get_max_available_speed
    - GF_LOG
    - gf_list_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_set_speed(GF_DashClient *dash, Double speed)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:10083,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10086,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 37
    argCount: 4
    argNames:
    - dash
    - idx
    - dur
    - timescale
    argTypes:
    - GF_DashClient*
    - u32
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10116
      start: 10079
    functionDepth: 2
    functionLinenumber: 10079
    functionLinenumberEnd: 10116
    functionName: gf_dash_group_get_segment_duration
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_active_group
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_get_segment_duration(GF_DashClient *dash, u32
      idx, u32 *dur, u32 *timescale)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:10122,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10129,1
    - Dst: gf_dash_get_segment_start_time_with_timescale
      Src: /src/gpac/src/media_tools/dash_client.c:10139,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/media_tools/dash_client.c:10145,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 40
    argCount: 8
    argNames:
    - dash
    - group_idx
    - dependent_representation_index
    - seg_name
    - seg_number
    - seg_time
    - seg_dur_ms
    - init_segment
    argTypes:
    - GF_DashClient*
    - u32
    - u32
    - char**
    - u32*
    - GF_Fraction64*
    - u32*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10162
      start: 10118
    functionDepth: 4
    functionLinenumber: 10118
    functionLinenumberEnd: 10162
    functionName: gf_dash_group_next_seg_info
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_active_group
    - gf_list_get
    - gf_timestamp_rescale
    - gf_dash_get_segment_start_time_with_timescale
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_next_seg_info(GF_DashClient *dash, u32 group_idx,
      u32 dependent_representation_index, const char **seg_name, u32 *seg_number,
      GF_Fraction64 *seg_time, u32 *seg_dur_ms, const char **init_segment)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:10168,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10171,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10173,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10175
      start: 10164
    functionDepth: 2
    functionLinenumber: 10164
    functionLinenumberEnd: 10175
    functionName: gf_dash_group_get_representation_id
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_active_group
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_dash_group_get_representation_id(GF_DashClient *dash,
      u32 idx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:10185,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10187,1
    - Dst: gf_dash_group_reset_cache_entry
      Src: /src/gpac/src/media_tools/dash_client.c:10192,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/dash_client.c:10194,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dash_client.c:10195,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 2
    argNames:
    - dash
    - group
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10207
      start: 10177
    functionDepth: 1
    functionLinenumber: 10177
    functionLinenumberEnd: 10207
    functionName: gf_dash_group_discard_segment_internal
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - memmove
    - GF_LOG
    - memset
    - gf_dash_group_reset_cache_entry
    linkageType: ''
    returnType: void
    signature: void gf_dash_group_discard_segment_internal(GF_DashClient *dash, GF_DASH_Group
      *group)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10213,1
    - Dst: gf_dash_group_discard_segment_internal
      Src: /src/gpac/src/media_tools/dash_client.c:10214,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10216,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10218,1
    - Dst: gf_dash_group_discard_segment_internal
      Src: /src/gpac/src/media_tools/dash_client.c:10219,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10222
      start: 10208
    functionDepth: 2
    functionLinenumber: 10208
    functionLinenumberEnd: 10222
    functionName: gf_dash_group_discard_segment
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_dash_group_discard_segment_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_discard_segment(GF_DashClient *dash, u32 idx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10227,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10232,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10234,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - dash
    - idx
    - done
    argTypes:
    - GF_DashClient*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10238
      start: 10224
    functionDepth: 1
    functionLinenumber: 10224
    functionLinenumberEnd: 10238
    functionName: gf_dash_set_group_done
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_set_group_done(GF_DashClient *dash, u32 idx, Bool
      done)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10243,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10246
      start: 10240
    functionDepth: 1
    functionLinenumber: 10240
    functionLinenumberEnd: 10246
    functionName: gf_dash_get_group_done
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_get_group_done(GF_DashClient *dash, u32 idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:10251,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10254,1
    - Dst: gf_mpd_resolve_segment_duration
      Src: /src/gpac/src/media_tools/dash_client.c:10255,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - dash
    - idx
    - presentation_time_offset
    - timescale
    argTypes:
    - GF_DashClient*
    - u32
    - u64*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10259
      start: 10248
    functionDepth: 2
    functionLinenumber: 10248
    functionLinenumberEnd: 10259
    functionName: gf_dash_group_get_presentation_time_offset
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_active_group
    - gf_list_get
    - gf_mpd_resolve_segment_duration
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_get_presentation_time_offset(GF_DashClient
      *dash, u32 idx, u64 *presentation_time_offset, u32 *timescale)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:10278,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10306,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dash_client.c:10327,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10331,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10349,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 95
    argCount: 15
    argNames:
    - dash
    - idx
    - dependent_representation_index
    - url
    - start_range
    - end_range
    - switching_index
    - switching_url
    - switching_start_range
    - switching_end_range
    - original_url
    - has_next_segment
    - key_url
    - key_IV
    - utc
    argTypes:
    - GF_DashClient*
    - u32
    - u32
    - char**
    - u64*
    - u64*
    - s32*
    - char**
    - u64*
    - u64*
    - char**
    - Bool*
    - char**
    - bin128*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10360
      start: 10261
    functionDepth: 2
    functionLinenumber: 10261
    functionLinenumberEnd: 10360
    functionName: gf_dash_group_get_next_segment_location
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_active_group
    - memcpy
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_get_next_segment_location(GF_DashClient *dash,
      u32 idx, u32 dependent_representation_index, const char **url, u64 *start_range,
      u64 *end_range, s32 *switching_index, const char **switching_url, u64 *switching_start_range,
      u64 *switching_end_range, const char **original_url, Bool *has_next_segment,
      const char **key_url, bin128 *key_IV, u64 *utc)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10368,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:10381,1
    - Dst: gf_dash_seek_periods
      Src: /src/gpac/src/media_tools/dash_client.c:10397,1
    - Dst: gf_dash_seek_groups
      Src: /src/gpac/src/media_tools/dash_client.c:10399,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 2
    argNames:
    - dash
    - start_range
    argTypes:
    - GF_DashClient*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10401
      start: 10363
    functionDepth: 13
    functionLinenumber: 10363
    functionLinenumberEnd: 10401
    functionName: gf_dash_seek
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_seek_groups
    - GF_LOG
    - gf_sys_clock
    - gf_dash_seek_periods
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_seek(GF_DashClient *dash, Double start_range)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:10406,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10408
      start: 10403
    functionDepth: 2
    functionLinenumber: 10403
    functionLinenumberEnd: 10408
    functionName: gf_dash_group_segment_switch_forced
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_active_group
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_segment_switch_forced(GF_DashClient *dash,
      u32 idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - dash
    - shift_utc_sec
    argTypes:
    - GF_DashClient*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10414
      start: 10410
    functionDepth: 0
    functionLinenumber: 10410
    functionLinenumberEnd: 10414
    functionName: gf_dash_set_utc_shift
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_set_utc_shift(GF_DashClient *dash, s32 shift_utc_sec)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10419,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10426,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10428,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 4
    argNames:
    - dash
    - idx
    - max_width
    - max_height
    argTypes:
    - GF_DashClient*
    - u32
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10436
      start: 10416
    functionDepth: 1
    functionLinenumber: 10416
    functionLinenumberEnd: 10436
    functionName: gf_dash_group_get_video_info
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_get_video_info(GF_DashClient *dash, u32 idx,
      u32 *max_width, u32 *max_height)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10441,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10447,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10449,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 16
    argCount: 4
    argNames:
    - dash
    - idx
    - max_width
    - max_height
    argTypes:
    - GF_DashClient*
    - u32
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10458
      start: 10438
    functionDepth: 1
    functionLinenumber: 10438
    functionLinenumberEnd: 10458
    functionName: gf_dash_group_get_srd_max_size_info
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_get_srd_max_size_info(GF_DashClient *dash,
      u32 idx, u32 *max_width, u32 *max_height)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dash
    - min_timeout_between_404
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10466
      start: 10460
    functionDepth: 0
    functionLinenumber: 10460
    functionLinenumberEnd: 10466
    functionName: gf_dash_set_min_timeout_between_404
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_set_min_timeout_between_404(GF_DashClient *dash,
      u32 min_timeout_between_404)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dash
    - expire_after_ms
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10474
      start: 10468
    functionDepth: 0
    functionLinenumber: 10468
    functionLinenumberEnd: 10474
    functionName: gf_dash_set_segment_expiration_threshold
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_set_segment_expiration_threshold(GF_DashClient *dash,
      u32 expire_after_ms)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:10479,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10483
      start: 10476
    functionDepth: 2
    functionLinenumber: 10476
    functionLinenumberEnd: 10483
    functionName: gf_dash_group_loop_detected
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_active_group
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_loop_detected(GF_DashClient *dash, u32 idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:10488,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10491
      start: 10485
    functionDepth: 2
    functionLinenumber: 10485
    functionLinenumberEnd: 10491
    functionName: gf_dash_group_get_start_range
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_active_group
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_get_start_range(GF_DashClient *dash, u32 idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10498
      start: 10494
    functionDepth: 0
    functionLinenumber: 10494
    functionLinenumberEnd: 10498
    functionName: gf_dash_is_dynamic_mpd
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_is_dynamic_mpd(GF_DashClient *dash)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10504
      start: 10500
    functionDepth: 0
    functionLinenumber: 10500
    functionLinenumberEnd: 10504
    functionName: gf_dash_get_min_buffer_time
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_get_min_buffer_time(GF_DashClient *dash)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:10508,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10511
      start: 10506
    functionDepth: 2
    functionLinenumber: 10506
    functionLinenumberEnd: 10511
    functionName: gf_dash_is_low_latency
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_active_group
    linkageType: ''
    returnType: Bool
    signature: Bool gf_dash_is_low_latency(GF_DashClient *dash, u32 idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10515
      start: 10512
    functionDepth: 0
    functionLinenumber: 10512
    functionLinenumberEnd: 10515
    functionName: gf_dash_get_max_segment_duration
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_dash_get_max_segment_duration(GF_DashClient *dash)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10531,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10532,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10533,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10535,1
    - Dst: gf_dash_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:10536,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10538,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:10538,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:10543,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:10544,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:10546,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:10549,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:10552,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:10552,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:10558,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:10565,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10566,1
    - Dst: gf_dash_get_start_number
      Src: /src/gpac/src/media_tools/dash_client.c:10570,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:10574,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:10575,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:10582,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:10587,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:10591,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/dash_client.c:10592,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:10602,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:10606,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/dash_client.c:10607,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:10619,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:10622,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:10629,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10653,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10672,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10673,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10674,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 122
    argCount: 3
    argNames:
    - dash
    - latest_segment_name
    - earliest_segment_name
    argTypes:
    - GF_DashClient*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10687
      start: 10519
    functionDepth: 1
    functionLinenumber: 10519
    functionLinenumberEnd: 10687
    functionName: gf_dash_resync_to_segment
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_dash_get_start_number
    - gf_dash_resolve_url
    - GF_LOG
    - strstr
    - gf_list_count
    - strncmp
    - strcmp
    - atoi
    - gf_error_to_string
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dash_resync_to_segment(GF_DashClient *dash, const char *latest_segment_name,
      const char *earliest_segment_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - dash
    - width
    - height
    - max_display_bpp
    argTypes:
    - GF_DashClient*
    - u32
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10701
      start: 10691
    functionDepth: 0
    functionLinenumber: 10691
    functionLinenumberEnd: 10701
    functionName: gf_dash_set_max_resolution
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_set_max_resolution(GF_DashClient *dash, u32 width,
      u32 height, u8 max_display_bpp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - dash
    - dbg_groups_idx
    - nb_groups
    argTypes:
    - GF_DashClient*
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10709
      start: 10703
    functionDepth: 0
    functionLinenumber: 10703
    functionLinenumberEnd: 10709
    functionName: gf_dash_debug_groups
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_debug_groups(GF_DashClient *dash, const u32 *dbg_groups_idx,
      u32 nb_groups)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10715
      start: 10711
    functionDepth: 0
    functionLinenumber: 10711
    functionLinenumberEnd: 10715
    functionName: gf_dash_split_adaptation_sets
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_split_adaptation_sets(GF_DashClient *dash)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dash
    - low_lat_mode
    argTypes:
    - GF_DashClient*
    - GF_DASHLowLatencyMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10721
      start: 10717
    functionDepth: 0
    functionLinenumber: 10717
    functionLinenumberEnd: 10721
    functionName: gf_dash_set_low_latency_mode
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_set_low_latency_mode(GF_DashClient *dash, GF_DASHLowLatencyMode
      low_lat_mode)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - dash
    - buffer_time_ms
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10728
      start: 10724
    functionDepth: 0
    functionLinenumber: 10724
    functionLinenumberEnd: 10728
    functionName: gf_dash_set_user_buffer
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_set_user_buffer(GF_DashClient *dash, u32 buffer_time_ms)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10743,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10750
      start: 10731
    functionDepth: 1
    functionLinenumber: 10731
    functionLinenumberEnd: 10750
    functionName: gf_dash_get_period_start
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_get_period_start(GF_DashClient *dash)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10764,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10770,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10777,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10782,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10786
      start: 10754
    functionDepth: 1
    functionLinenumber: 10754
    functionLinenumberEnd: 10786
    functionName: gf_dash_get_period_duration
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_get_period_duration(GF_DashClient *dash)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10791,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10794
      start: 10788
    functionDepth: 1
    functionLinenumber: 10788
    functionLinenumberEnd: 10794
    functionName: gf_dash_group_get_language
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_dash_group_get_language(GF_DashClient *dash, u32 idx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:10801,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10804,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10805,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/dash_client.c:10809,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:10814,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/dash_client.c:10815,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:10817,1
    - Dst: gf_audio_fmt_get_num_channels_from_layout
      Src: /src/gpac/src/media_tools/dash_client.c:10818,1
    - Dst: gf_audio_fmt_get_layout_from_cicp
      Src: /src/gpac/src/media_tools/dash_client.c:10818,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/dash_client.c:10818,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 18
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10822
      start: 10796
    functionDepth: 2
    functionLinenumber: 10796
    functionLinenumberEnd: 10822
    functionName: gf_dash_group_get_audio_channels
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_count
    - strcmp
    - atoi
    - gf_audio_fmt_get_num_channels_from_layout
    - gf_dash_get_active_group
    - gf_list_enum
    - gf_audio_fmt_get_layout_from_cicp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_get_audio_channels(GF_DashClient *dash, u32
      idx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10827,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10829,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10831,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10833,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10834,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10838
      start: 10824
    functionDepth: 1
    functionLinenumber: 10824
    functionLinenumberEnd: 10838
    functionName: gf_dash_group_get_num_qualities
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_get_num_qualities(GF_DashClient *dash, u32
      idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10843,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10845,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10846
      start: 10840
    functionDepth: 1
    functionLinenumber: 10840
    functionLinenumberEnd: 10846
    functionName: gf_dash_group_get_num_components
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_get_num_components(GF_DashClient *dash, u32
      idx)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10851,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10860,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10862,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10894,1
    - Dst: gf_mpd_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:10908,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10914,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/dash_client.c:10921,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_client.c:10923,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:10925,1
    - Dst: isdigit
      Src: /src/gpac/src/media_tools/dash_client.c:10928,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/dash_client.c:10942,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/dash_client.c:10943,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:10944,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/dash_client.c:10956,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_client.c:10957,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_client.c:10959,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_client.c:10961,1
    CyclomaticComplexity: 70
    EdgeCount: 70
    ICount: 108
    argCount: 5
    argNames:
    - dash
    - idx
    - segment_timeline_timescale
    - init_url
    - hls_variant
    argTypes:
    - GF_DashClient*
    - u32
    - u32*
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10968
      start: 10848
    functionDepth: 3
    functionLinenumber: 10848
    functionLinenumberEnd: 10968
    functionName: gf_dash_group_get_template
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_mpd_resolve_url
    - strrchr
    - snprintf
    - isdigit
    - atoi
    - gf_dynstrcat
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_dash_group_get_template(GF_DashClient *dash, u32 idx,
      u32 *segment_timeline_timescale, const char **init_url, const char **hls_variant)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10972,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10973,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10977,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10980,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10981,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - dash
    - idx
    - quality_idx
    argTypes:
    - GF_DashClient*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10990
      start: 10970
    functionDepth: 1
    functionLinenumber: 10970
    functionLinenumberEnd: 10990
    functionName: dash_get_group_for_quality
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_DASH_Group
    signature: GF_DASH_Group *dash_get_group_for_quality(GF_DashClient *dash, u32
      idx, u32 *quality_idx)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: dash_get_group_for_quality
      Src: /src/gpac/src/media_tools/dash_client.c:10997,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11001,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dash_client.c:11004,1
    - Dst: gf_dash_group_get_audio_channels
      Src: /src/gpac/src/media_tools/dash_client.c:11015,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 70
    argCount: 4
    argNames:
    - dash
    - idx
    - quality_idx
    - quality
    argTypes:
    - GF_DashClient*
    - u32
    - u32
    - GF_DASHQualityInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11063
      start: 10992
    functionDepth: 3
    functionLinenumber: 10992
    functionLinenumberEnd: 11063
    functionName: gf_dash_group_get_quality_info
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - memset
    - gf_list_get
    - dash_get_group_for_quality
    - gf_dash_group_get_audio_channels
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_get_quality_info(GF_DashClient *dash, u32 idx,
      u32 quality_idx, GF_DASHQualityInfo *quality)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11069,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11070,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 6
    argNames:
    - dash
    - idx
    - descs
    - desc_id
    - desc_scheme
    - desc_value
    argTypes:
    - GF_DashClient*
    - u32
    - GF_List*
    - char**
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11075
      start: 11066
    functionDepth: 1
    functionLinenumber: 11066
    functionLinenumberEnd: 11075
    functionName: gf_dash_group_enum_descriptor_list
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: Bool
    signature: Bool gf_dash_group_enum_descriptor_list(GF_DashClient *dash, u32 idx,
      GF_List *descs, const char **desc_id, const char **desc_scheme, const char **desc_value)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11081,1
    - Dst: gf_dash_group_enum_descriptor_list
      Src: /src/gpac/src/media_tools/dash_client.c:11114,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 7
    argNames:
    - dash
    - group_idx
    - desc_type
    - desc_idx
    - desc_id
    - desc_scheme
    - desc_value
    argTypes:
    - GF_DashClient*
    - u32
    - GF_DashDescriptorType
    - u32
    - char**
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11115
      start: 11077
    functionDepth: 2
    functionLinenumber: 11077
    functionLinenumberEnd: 11115
    functionName: gf_dash_group_enum_descriptor
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_group_enum_descriptor_list
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_enum_descriptor(GF_DashClient *dash, u32 group_idx,
      GF_DashDescriptorType  desc_type, u32 desc_idx, const char **desc_id, const
      char **desc_scheme, const char **desc_value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11121
      start: 11117
    functionDepth: 0
    functionLinenumber: 11117
    functionLinenumberEnd: 11121
    functionName: gf_dash_get_automatic_switching
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_get_automatic_switching(GF_DashClient *dash)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dash
    - enable_switching
    argTypes:
    - GF_DashClient*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11129
      start: 11123
    functionDepth: 0
    functionLinenumber: 11123
    functionLinenumberEnd: 11129
    functionName: gf_dash_set_automatic_switching
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_set_automatic_switching(GF_DashClient *dash, Bool
      enable_switching)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11135,1
    - Dst: dash_get_group_for_quality
      Src: /src/gpac/src/media_tools/dash_client.c:11139,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:11142,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11144,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11152,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11154,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:11155,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11165,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11166,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11167,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11169,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:11170,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11172,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 41
    argCount: 4
    argNames:
    - dash
    - idx
    - ID
    - q_idx
    argTypes:
    - GF_DashClient*
    - u32
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11182
      start: 11131
    functionDepth: 2
    functionLinenumber: 11131
    functionLinenumberEnd: 11182
    functionName: gf_dash_group_select_quality
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_find
    - dash_get_group_for_quality
    - gf_list_count
    - strcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_select_quality(GF_DashClient *dash, u32 idx,
      const char *ID, u32 q_idx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11187,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11191,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11192,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11194,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11196,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11199
      start: 11184
    functionDepth: 1
    functionLinenumber: 11184
    functionLinenumberEnd: 11199
    functionName: gf_dash_group_get_active_quality
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_get_active_quality(GF_DashClient *dash, u32
      idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dash
    - ms_in_timeshift
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11207
      start: 11201
    functionDepth: 0
    functionLinenumber: 11201
    functionLinenumberEnd: 11207
    functionName: gf_dash_set_timeshift
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_set_timeshift(GF_DashClient *dash, u32 ms_in_timeshift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11213
      start: 11209
    functionDepth: 0
    functionLinenumber: 11209
    functionLinenumberEnd: 11213
    functionName: gf_dash_get_timeshift_buffer_pos
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_get_timeshift_buffer_pos(GF_DashClient *dash)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:11218,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 8
    argNames:
    - dash
    - idx
    - avg_dec_time
    - max_dec_time
    - irap_avg_dec_time
    - irap_max_dec_time
    - codec_reset
    - decode_only_rap
    argTypes:
    - GF_DashClient*
    - u32
    - u32
    - u32
    - u32
    - u32
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11226
      start: 11215
    functionDepth: 2
    functionLinenumber: 11215
    functionLinenumberEnd: 11226
    functionName: gf_dash_group_set_codec_stat
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_active_group
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_set_codec_stat(GF_DashClient *dash, u32 idx,
      u32 avg_dec_time, u32 max_dec_time, u32 irap_avg_dec_time, u32 irap_max_dec_time,
      Bool codec_reset, Bool decode_only_rap)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:11231,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:11236,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 5
    argNames:
    - dash
    - idx
    - buffer_min_ms
    - buffer_max_ms
    - buffer_occupancy_ms
    argTypes:
    - GF_DashClient*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11240
      start: 11228
    functionDepth: 2
    functionLinenumber: 11228
    functionLinenumberEnd: 11240
    functionName: gf_dash_group_set_buffer_levels
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_active_group
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_set_buffer_levels(GF_DashClient *dash, u32
      idx, u32 buffer_min_ms, u32 buffer_max_ms, u32 buffer_occupancy_ms)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dash
    - disable
    argTypes:
    - GF_DashClient*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11247
      start: 11243
    functionDepth: 0
    functionLinenumber: 11243
    functionLinenumberEnd: 11247
    functionName: gf_dash_disable_speed_adaptation
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_disable_speed_adaptation(GF_DashClient *dash, Bool
      disable)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_net_get_ntp_diff_ms
      Src: /src/gpac/src/media_tools/dash_client.c:11253,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:11255,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/media_tools/dash_client.c:11255,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - dash
    - server_ntp
    argTypes:
    - GF_DashClient*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11260
      start: 11249
    functionDepth: 1
    functionLinenumber: 11249
    functionLinenumberEnd: 11260
    functionName: gf_dash_override_ntp
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_net_get_ntp_diff_ms
    - gf_net_get_ntp_ts
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_override_ntp(GF_DashClient *dash, u64 server_ntp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11265
      start: 11262
    functionDepth: 0
    functionLinenumber: 11262
    functionLinenumberEnd: 11265
    functionName: gf_dash_get_utc_drift_estimate
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_get_utc_drift_estimate(GF_DashClient *dash)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11271
      start: 11267
    functionDepth: 0
    functionLinenumber: 11267
    functionLinenumberEnd: 11271
    functionName: GF_DASHTileAdaptationMode::gf_dash_get_tile_adaptation_mode
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_DASHTileAdaptationMode gf_dash_get_tile_adaptation_mode(GF_DashClient
      *dash)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11279,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11280,1
    - Dst: gf_dash_set_tiles_quality
      Src: /src/gpac/src/media_tools/dash_client.c:11281,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - dash
    - mode
    - tile_rate_decrease
    argTypes:
    - GF_DashClient*
    - GF_DASHTileAdaptationMode
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11283
      start: 11273
    functionDepth: 8
    functionLinenumber: 11273
    functionLinenumberEnd: 11283
    functionName: gf_dash_set_tile_adaptation_mode
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_dash_set_tiles_quality
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_set_tile_adaptation_mode(GF_DashClient *dash, GF_DASHTileAdaptationMode
      mode, u32 tile_rate_decrease)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dash
    - disable_tiles
    argTypes:
    - GF_DashClient*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11289
      start: 11285
    functionDepth: 0
    functionLinenumber: 11285
    functionLinenumberEnd: 11289
    functionName: gf_dash_disable_low_quality_tiles
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_disable_low_quality_tiles(GF_DashClient *dash, Bool
      disable_tiles)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dash
    - chaining_mode
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11295
      start: 11291
    functionDepth: 0
    functionLinenumber: 11291
    functionLinenumberEnd: 11295
    functionName: gf_dash_set_chaining_mode
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_set_chaining_mode(GF_DashClient *dash, u32 chaining_mode)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11301,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 20
    argCount: 9
    argNames:
    - dash
    - idx
    - srd_id
    - srd_x
    - srd_y
    - srd_w
    - srd_h
    - srd_width
    - srd_height
    argTypes:
    - GF_DashClient*
    - u32
    - u32*
    - u32*
    - u32*
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11317
      start: 11298
    functionDepth: 1
    functionLinenumber: 11298
    functionLinenumberEnd: 11317
    functionName: gf_dash_group_get_srd_info
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_get_srd_info(GF_DashClient *dash, u32 idx,
      u32 *srd_id, u32 *srd_x, u32 *srd_y, u32 *srd_w, u32 *srd_h, u32 *srd_width,
      u32 *srd_height)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dash
    - ignore_xlink
    argTypes:
    - GF_DashClient*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11323
      start: 11319
    functionDepth: 0
    functionLinenumber: 11319
    functionLinenumberEnd: 11323
    functionName: gf_dash_ignore_xlink
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_ignore_xlink(GF_DashClient *dash, Bool ignore_xlink)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dash
    - spd
    argTypes:
    - GF_DashClient*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11329
      start: 11325
    functionDepth: 0
    functionLinenumber: 11325
    functionLinenumberEnd: 11329
    functionName: gf_dash_set_suggested_presentation_delay
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_set_suggested_presentation_delay(GF_DashClient *dash,
      s32 spd)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dash
    - ast_shift
    argTypes:
    - GF_DashClient*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11335
      start: 11331
    functionDepth: 0
    functionLinenumber: 11331
    functionLinenumberEnd: 11335
    functionName: gf_dash_set_mcast_ast_shift
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_set_mcast_ast_shift(GF_DashClient *dash, s32 ast_shift)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:11340,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - dash
    - idx
    - max_buffer_playout_ms
    argTypes:
    - GF_DashClient*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11344
      start: 11337
    functionDepth: 2
    functionLinenumber: 11337
    functionLinenumberEnd: 11344
    functionName: gf_dash_group_set_max_buffer_playout
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_active_group
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_set_max_buffer_playout(GF_DashClient *dash,
      u32 idx, u32 max_buffer_playout_ms)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:11349,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - dash
    - idx
    - quality_degradation_hint
    argTypes:
    - GF_DashClient*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11355
      start: 11346
    functionDepth: 2
    functionLinenumber: 11346
    functionLinenumberEnd: 11355
    functionName: gf_dash_group_set_quality_degradation_hint
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_active_group
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_set_quality_degradation_hint(GF_DashClient
      *dash, u32 idx, u32 quality_degradation_hint)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:11397,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 43
    argCount: 7
    argNames:
    - a_group
    - par_group
    - min_x
    - max_x
    - min_y
    - max_y
    - is_gaze
    argTypes:
    - GF_DASH_Group*
    - GF_DASH_Group*
    - u32
    - u32
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11404
      start: 11357
    functionDepth: 1
    functionLinenumber: 11357
    functionLinenumberEnd: 11404
    functionName: dash_check_group_visible
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void dash_check_group_visible(GF_DASH_Group *a_group, GF_DASH_Group
      *par_group, u32 min_x, u32 max_x, u32 min_y, u32 max_y, Bool is_gaze)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:11409,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11421,1
    - Dst: dash_check_group_visible
      Src: /src/gpac/src/media_tools/dash_client.c:11422,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:11426,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11427,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11429,1
    - Dst: dash_check_group_visible
      Src: /src/gpac/src/media_tools/dash_client.c:11430,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 7
    argNames:
    - dash
    - idx
    - min_x
    - max_x
    - min_y
    - max_y
    - is_gaze
    argTypes:
    - GF_DashClient*
    - u32
    - u32
    - u32
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11433
      start: 11405
    functionDepth: 2
    functionLinenumber: 11405
    functionLinenumberEnd: 11433
    functionName: gf_dash_group_set_visible_rect
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - dash_check_group_visible
    - gf_list_get
    - GF_LOG
    - gf_list_count
    - gf_dash_get_active_group
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_set_visible_rect(GF_DashClient *dash, u32 idx,
      u32 min_x, u32 max_x, u32 min_y, u32 max_y, Bool is_gaze)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:11442,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11455,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:11458,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:11459,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/dash_client.c:11461,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11483,1
    - Dst: gf_dash_group_reset_cache_entry
      Src: /src/gpac/src/media_tools/dash_client.c:11496,1
    - Dst: on_group_download_error
      Src: /src/gpac/src/media_tools/dash_client.c:11504,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11508,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11509,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 55
    argCount: 4
    argNames:
    - dash
    - idx
    - cur_dep_idx
    - err
    argTypes:
    - GF_DashClient*
    - u32
    - u32
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11513
      start: 11435
    functionDepth: 6
    functionLinenumber: 11435
    functionLinenumberEnd: 11513
    functionName: gf_dash_set_group_download_state
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_dash_group_reset_cache_entry
    - gf_list_get
    - memmove
    - gf_list_count
    - on_group_download_error
    - gf_dash_get_active_group
    linkageType: ''
    returnType: void
    signature: void gf_dash_set_group_download_state(GF_DashClient *dash, u32 idx,
      u32 cur_dep_idx, GF_Err err)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:11517,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11522,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11524,1
    - Dst: dash_store_stats
      Src: /src/gpac/src/media_tools/dash_client.c:11528,1
    - Dst: dash_global_rate_adaptation
      Src: /src/gpac/src/media_tools/dash_client.c:11531,1
    - Dst: dash_store_stats
      Src: /src/gpac/src/media_tools/dash_client.c:11533,1
    - Dst: dash_global_rate_adaptation
      Src: /src/gpac/src/media_tools/dash_client.c:11535,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 7
    argNames:
    - dash
    - idx
    - dep_rep_idx
    - bytes_per_sec
    - file_size
    - is_broadcast
    - us_since_start
    argTypes:
    - GF_DashClient*
    - u32
    - u32
    - u32
    - u64
    - Bool
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11537
      start: 11515
    functionDepth: 9
    functionLinenumber: 11515
    functionLinenumberEnd: 11537
    functionName: gf_dash_group_store_stats
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - dash_global_rate_adaptation
    - dash_store_stats
    - gf_list_count
    - gf_dash_get_active_group
    linkageType: ''
    returnType: void
    signature: void gf_dash_group_store_stats(GF_DashClient *dash, u32 idx, u32 dep_rep_idx,
      u32 bytes_per_sec, u64 file_size, Bool is_broadcast, u64 us_since_start)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:11542,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11548
      start: 11539
    functionDepth: 0
    functionLinenumber: 11539
    functionLinenumberEnd: 11548
    functionName: gf_dash_get_min_wait_ms
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_sys_clock
    linkageType: ''
    returnType: u32
    signature: u32 gf_dash_get_min_wait_ms(GF_DashClient *dash)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11553,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11555,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11561
      start: 11550
    functionDepth: 1
    functionLinenumber: 11550
    functionLinenumberEnd: 11561
    functionName: gf_dash_all_groups_done
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_all_groups_done(GF_DashClient *dash)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - dash
    - query_string
    argTypes:
    - GF_DashClient*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11567
      start: 11563
    functionDepth: 0
    functionLinenumber: 11563
    functionLinenumberEnd: 11567
    functionName: gf_dash_set_period_xlink_query_string
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_set_period_xlink_query_string(GF_DashClient *dash,
      const char *query_string)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:11572,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - group_idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11575
      start: 11569
    functionDepth: 2
    functionLinenumber: 11569
    functionLinenumberEnd: 11575
    functionName: gf_dash_group_get_as_id
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_active_group
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dash_group_get_as_id(GF_DashClient *dash, u32 group_idx)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:11589,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11609,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11612,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:11627,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:11631,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 47
    argCount: 4
    argNames:
    - dash
    - group_idx
    - _tfrf
    - timescale
    argTypes:
    - GF_DashClient*
    - u32
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11639
      start: 11578
    functionDepth: 2
    functionLinenumber: 11578
    functionLinenumberEnd: 11639
    functionName: gf_dash_group_push_tfrf
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - GF_SAFEALLOC
    - gf_list_count
    - gf_list_add
    - gf_dash_get_active_group
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dash_group_push_tfrf(GF_DashClient *dash, u32 group_idx,
      void *_tfrf, u32 timescale)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:11643,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - dash
    - group_idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11647
      start: 11641
    functionDepth: 2
    functionLinenumber: 11641
    functionLinenumberEnd: 11647
    functionName: gf_dash_group_has_init_segment
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_active_group
    linkageType: ''
    returnType: Bool
    signature: Bool gf_dash_group_has_init_segment(GF_DashClient *dash, u32 group_idx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11654,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11657,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 3
    argNames:
    - dash
    - group_idx
    - sar
    argTypes:
    - GF_DashClient*
    - u32
    - GF_Fraction*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11663
      start: 11649
    functionDepth: 1
    functionLinenumber: 11649
    functionLinenumberEnd: 11663
    functionName: gf_dash_group_get_sar
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void gf_dash_group_get_sar(GF_DashClient *dash, u32 group_idx, GF_Fraction
      *sar)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/gpac_ogg.c:56,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/gpac_ogg.c:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - b
    argTypes:
    - oggpack_buffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 60
    functionName: oggpack_writeinit
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void oggpack_writeinit(oggpack_buffer *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: oggpack_writeinit
      Src: /src/gpac/src/media_tools/gpac_ogg.c:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - b
    argTypes:
    - oggpack_buffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: oggpackB_writeinit
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - oggpack_writeinit
    linkageType: ''
    returnType: void
    signature: void oggpackB_writeinit(oggpack_buffer *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - b
    - bits
    argTypes:
    - oggpack_buffer*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 83
    functionName: oggpack_writetrunc
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void oggpack_writetrunc(oggpack_buffer *b,s32 bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - b
    - bits
    argTypes:
    - oggpack_buffer*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 95
    functionName: oggpackB_writetrunc
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void oggpackB_writetrunc(oggpack_buffer *b,s32 bits)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/gpac_ogg.c:103,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 3
    argNames:
    - b
    - value
    - bits
    argTypes:
    - oggpack_buffer*
    - u32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 132
    functionName: oggpack_write
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void oggpack_write(oggpack_buffer *b,u32 value,s32 bits)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/gpac_ogg.c:140,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 3
    argNames:
    - b
    - value
    - bits
    argTypes:
    - oggpack_buffer*
    - u32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 169
    functionName: oggpackB_write
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void oggpackB_write(oggpack_buffer *b,u32 value,s32 bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: oggpack_write
      Src: /src/gpac/src/media_tools/gpac_ogg.c:174,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - oggpack_buffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 175
    functionName: oggpack_writealign
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - oggpack_write
    linkageType: ''
    returnType: void
    signature: void oggpack_writealign(oggpack_buffer *b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: oggpackB_write
      Src: /src/gpac/src/media_tools/gpac_ogg.c:180,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - oggpack_buffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 181
    functionName: oggpackB_writealign
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - oggpackB_write
    linkageType: ''
    returnType: void
    signature: void oggpackB_writealign(oggpack_buffer *b)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: w
      Src: /src/gpac/src/media_tools/gpac_ogg.c:199,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/gpac_ogg.c:204,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/gpac_ogg.c:208,1
    - Dst: w
      Src: /src/gpac/src/media_tools/gpac_ogg.c:216,1
    - Dst: w
      Src: /src/gpac/src/media_tools/gpac_ogg.c:218,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 4
    argNames:
    - b
    - source
    - bits
    - msb
    argTypes:
    - oggpack_buffer*
    - void*
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 220
    functionName: oggpack_writecopy_helper
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - w
    - memmove
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: "void oggpack_writecopy_helper(oggpack_buffer *b,\n                                     void
      *source,\n                                     s32 bits,\n                                     void
      (*w)(oggpack_buffer *,\n                                             u32,\n
      \                                            s32),\n                                     s32
      msb)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: oggpack_writecopy_helper
      Src: /src/gpac/src/media_tools/gpac_ogg.c:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - b
    - source
    - bits
    argTypes:
    - oggpack_buffer*
    - void*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 222
    functionDepth: 1
    functionLinenumber: 222
    functionLinenumberEnd: 224
    functionName: oggpack_writecopy
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - oggpack_writecopy_helper
    linkageType: ''
    returnType: void
    signature: void oggpack_writecopy(oggpack_buffer *b,void *source,s32 bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: oggpack_writecopy_helper
      Src: /src/gpac/src/media_tools/gpac_ogg.c:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - b
    - source
    - bits
    argTypes:
    - oggpack_buffer*
    - void*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 228
    functionName: oggpackB_writecopy
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - oggpack_writecopy_helper
    linkageType: ''
    returnType: void
    signature: void oggpackB_writecopy(oggpack_buffer *b,void *source,s32 bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: oggpack_reset
      Src: /src/gpac/src/media_tools/gpac_ogg.c:232,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - b
    argTypes:
    - oggpack_buffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 231
    functionDepth: 1
    functionLinenumber: 231
    functionLinenumberEnd: 233
    functionName: oggpackB_reset
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - oggpack_reset
    linkageType: ''
    returnType: void
    signature: void oggpackB_reset(oggpack_buffer *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - b
    argTypes:
    - oggpack_buffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 241
    functionName: oggpack_reset
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void oggpack_reset(oggpack_buffer *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/gpac_ogg.c:246,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/gpac_ogg.c:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - b
    argTypes:
    - oggpack_buffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 248
    functionName: oggpack_writeclear
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memset
    linkageType: ''
    returnType: void
    signature: void oggpack_writeclear(oggpack_buffer *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: oggpack_writeclear
      Src: /src/gpac/src/media_tools/gpac_ogg.c:253,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - b
    argTypes:
    - oggpack_buffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 254
    functionName: oggpackB_writeclear
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - oggpack_writeclear
    linkageType: ''
    returnType: void
    signature: void oggpackB_writeclear(oggpack_buffer *b)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 2
    argNames:
    - b
    - bits
    argTypes:
    - oggpack_buffer*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 284
    functionName: oggpack_look
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 oggpack_look(oggpack_buffer *b,s32 bits)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 2
    argNames:
    - b
    - bits
    argTypes:
    - oggpack_buffer*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 289
    functionDepth: 0
    functionLinenumber: 289
    functionLinenumberEnd: 313
    functionName: oggpackB_look
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 oggpackB_look(oggpack_buffer *b,s32 bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - b
    argTypes:
    - oggpack_buffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 315
    functionDepth: 0
    functionLinenumber: 315
    functionLinenumberEnd: 318
    functionName: oggpack_look1
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 oggpack_look1(oggpack_buffer *b)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - b
    argTypes:
    - oggpack_buffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 320
    functionDepth: 0
    functionLinenumber: 320
    functionLinenumberEnd: 323
    functionName: oggpackB_look1
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 oggpackB_look1(oggpack_buffer *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/gpac_ogg.c:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - b
    - buf
    - bytes
    argTypes:
    - oggpack_buffer*
    - unsigned char*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 331
    functionName: oggpack_readinit
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 2
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: void oggpack_readinit(oggpack_buffer *b,unsigned char *buf,s32 bytes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: oggpack_readinit
      Src: /src/gpac/src/media_tools/gpac_ogg.c:334,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - b
    - buf
    - bytes
    argTypes:
    - oggpack_buffer*
    - unsigned char*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 333
    functionDepth: 1
    functionLinenumber: 333
    functionLinenumberEnd: 335
    functionName: oggpackB_readinit
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - oggpack_readinit
    linkageType: ''
    returnType: void
    signature: void oggpackB_readinit(oggpack_buffer *b,unsigned char *buf,s32 bytes)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - b
    - bits
    argTypes:
    - oggpack_buffer*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 343
    functionName: oggpack_adv
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void oggpack_adv(oggpack_buffer *b,s32 bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: oggpack_adv
      Src: /src/gpac/src/media_tools/gpac_ogg.c:347,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - b
    - bits
    argTypes:
    - oggpack_buffer*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 346
    functionDepth: 1
    functionLinenumber: 346
    functionLinenumberEnd: 348
    functionName: oggpackB_adv
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - oggpack_adv
    linkageType: ''
    returnType: void
    signature: void oggpackB_adv(oggpack_buffer *b,s32 bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - b
    argTypes:
    - oggpack_buffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 350
    functionDepth: 0
    functionLinenumber: 350
    functionLinenumberEnd: 356
    functionName: oggpack_adv1
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void oggpack_adv1(oggpack_buffer *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: oggpack_adv1
      Src: /src/gpac/src/media_tools/gpac_ogg.c:359,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - b
    argTypes:
    - oggpack_buffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 358
    functionDepth: 1
    functionLinenumber: 358
    functionLinenumberEnd: 360
    functionName: oggpackB_adv1
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - oggpack_adv1
    linkageType: ''
    returnType: void
    signature: void oggpackB_adv1(oggpack_buffer *b)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/media_tools/gpac_ogg.c:366,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/media_tools/gpac_ogg.c:367,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 2
    argNames:
    - b
    - bits
    argTypes:
    - oggpack_buffer*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 364
    functionDepth: 1
    functionLinenumber: 364
    functionLinenumberEnd: 401
    functionName: oggpack_read
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 2
    functionsReached:
    - gf_fatal_assert
    linkageType: ''
    returnType: s32
    signature: s32 oggpack_read(oggpack_buffer *b,s32 bits)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 2
    argNames:
    - b
    - bits
    argTypes:
    - oggpack_buffer*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 404
    functionDepth: 0
    functionLinenumber: 404
    functionLinenumberEnd: 437
    functionName: oggpackB_read
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 oggpackB_read(oggpack_buffer *b,s32 bits)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - b
    argTypes:
    - oggpack_buffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 440
    functionDepth: 0
    functionLinenumber: 440
    functionLinenumberEnd: 460
    functionName: oggpack_read1
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 oggpack_read1(oggpack_buffer *b)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - b
    argTypes:
    - oggpack_buffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 462
    functionDepth: 0
    functionLinenumber: 462
    functionLinenumberEnd: 482
    functionName: oggpackB_read1
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 oggpackB_read1(oggpack_buffer *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - b
    argTypes:
    - oggpack_buffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 487
    functionDepth: 0
    functionLinenumber: 487
    functionLinenumberEnd: 489
    functionName: oggpack_bytes
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 oggpack_bytes(oggpack_buffer *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - b
    argTypes:
    - oggpack_buffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 495
      start: 493
    functionDepth: 0
    functionLinenumber: 493
    functionLinenumberEnd: 495
    functionName: oggpack_bits
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 oggpack_bits(oggpack_buffer *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: oggpack_bytes
      Src: /src/gpac/src/media_tools/gpac_ogg.c:498,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - b
    argTypes:
    - oggpack_buffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 497
    functionDepth: 1
    functionLinenumber: 497
    functionLinenumberEnd: 499
    functionName: oggpackB_bytes
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - oggpack_bytes
    linkageType: ''
    returnType: s32
    signature: s32 oggpackB_bytes(oggpack_buffer *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: oggpack_bits
      Src: /src/gpac/src/media_tools/gpac_ogg.c:502,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - b
    argTypes:
    - oggpack_buffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 501
    functionDepth: 1
    functionLinenumber: 501
    functionLinenumberEnd: 503
    functionName: oggpackB_bits
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - oggpack_bits
    linkageType: ''
    returnType: s32
    signature: s32 oggpackB_bits(oggpack_buffer *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - b
    argTypes:
    - oggpack_buffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 508
    functionDepth: 0
    functionLinenumber: 508
    functionLinenumberEnd: 510
    functionName: oggpack_get_buffer
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: unsigned char
    signature: unsigned char *oggpack_get_buffer(oggpack_buffer *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: oggpack_get_buffer
      Src: /src/gpac/src/media_tools/gpac_ogg.c:515,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - b
    argTypes:
    - oggpack_buffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 514
    functionDepth: 1
    functionLinenumber: 514
    functionLinenumberEnd: 516
    functionName: oggpackB_get_buffer
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - oggpack_get_buffer
    linkageType: ''
    returnType: unsigned char
    signature: unsigned char *oggpackB_get_buffer(oggpack_buffer *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - og
    argTypes:
    - ogg_page*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 525
    functionDepth: 0
    functionLinenumber: 525
    functionLinenumberEnd: 527
    functionName: ogg_page_version
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 ogg_page_version(ogg_page *og)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - og
    argTypes:
    - ogg_page*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 531
      start: 529
    functionDepth: 0
    functionLinenumber: 529
    functionLinenumberEnd: 531
    functionName: ogg_page_continued
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 ogg_page_continued(ogg_page *og)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - og
    argTypes:
    - ogg_page*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 533
    functionDepth: 0
    functionLinenumber: 533
    functionLinenumberEnd: 535
    functionName: ogg_page_bos
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 ogg_page_bos(ogg_page *og)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - og
    argTypes:
    - ogg_page*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 539
      start: 537
    functionDepth: 0
    functionLinenumber: 537
    functionLinenumberEnd: 539
    functionName: ogg_page_eos
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 ogg_page_eos(ogg_page *og)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - og
    argTypes:
    - ogg_page*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 541
    functionDepth: 0
    functionLinenumber: 541
    functionLinenumberEnd: 552
    functionName: ogg_page_granulepos
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s64
    signature: s64 ogg_page_granulepos(ogg_page *og)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - og
    argTypes:
    - ogg_page*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 554
    functionDepth: 0
    functionLinenumber: 554
    functionLinenumberEnd: 559
    functionName: ogg_page_serialno
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 ogg_page_serialno(ogg_page *og)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - og
    argTypes:
    - ogg_page*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 561
    functionDepth: 0
    functionLinenumber: 561
    functionLinenumberEnd: 566
    functionName: ogg_page_pageno
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 ogg_page_pageno(ogg_page *og)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - og
    argTypes:
    - ogg_page*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 593
      start: 588
    functionDepth: 0
    functionLinenumber: 588
    functionLinenumberEnd: 593
    functionName: ogg_page_packets
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 ogg_page_packets(ogg_page *og)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - index
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 615
      start: 601
    functionDepth: 0
    functionLinenumber: 601
    functionLinenumberEnd: 615
    functionName: _ogg_crc_entry
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 _ogg_crc_entry(u32 index)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/gpac_ogg.c:689,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/gpac_ogg.c:691,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/gpac_ogg.c:694,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/gpac_ogg.c:695,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - os
    - serialno
    argTypes:
    - ogg_stream_state*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 702
      start: 687
    functionDepth: 0
    functionLinenumber: 687
    functionLinenumberEnd: 702
    functionName: ogg_stream_init
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    linkageType: ''
    returnType: s32
    signature: s32 ogg_stream_init(ogg_stream_state *os,s32 serialno)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/gpac_ogg.c:707,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/gpac_ogg.c:708,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/gpac_ogg.c:709,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/gpac_ogg.c:711,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - os
    argTypes:
    - ogg_stream_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 714
      start: 705
    functionDepth: 0
    functionLinenumber: 705
    functionLinenumberEnd: 714
    functionName: ogg_stream_clear
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memset
    linkageType: ''
    returnType: s32
    signature: s32 ogg_stream_clear(ogg_stream_state *os)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ogg_stream_clear
      Src: /src/gpac/src/media_tools/gpac_ogg.c:720,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/gpac_ogg.c:721,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - os
    argTypes:
    - ogg_stream_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 724
      start: 718
    functionDepth: 1
    functionLinenumber: 718
    functionLinenumberEnd: 724
    functionName: ogg_stream_destroy
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - ogg_stream_clear
    linkageType: ''
    returnType: s32
    signature: s32 ogg_stream_destroy(ogg_stream_state *os)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/gpac_ogg.c:734,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - os
    - needed
    argTypes:
    - ogg_stream_state*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 736
      start: 731
    functionDepth: 0
    functionLinenumber: 731
    functionLinenumberEnd: 736
    functionName: _os_body_expand
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void _os_body_expand(ogg_stream_state *os,s32 needed)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/gpac_ogg.c:741,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/gpac_ogg.c:742,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - os
    - needed
    argTypes:
    - ogg_stream_state*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 744
      start: 738
    functionDepth: 0
    functionLinenumber: 738
    functionLinenumberEnd: 744
    functionName: _os_lacing_expand
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void _os_lacing_expand(ogg_stream_state *os,s32 needed)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - og
    argTypes:
    - ogg_page*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 771
      start: 750
    functionDepth: 0
    functionLinenumber: 750
    functionLinenumberEnd: 771
    functionName: ogg_page_checksum_set
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ogg_page_checksum_set(ogg_page *og)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memmove
      Src: /src/gpac/src/media_tools/gpac_ogg.c:784,1
    - Dst: _os_body_expand
      Src: /src/gpac/src/media_tools/gpac_ogg.c:790,1
    - Dst: _os_lacing_expand
      Src: /src/gpac/src/media_tools/gpac_ogg.c:791,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/gpac_ogg.c:798,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 2
    argNames:
    - os
    - op
    argTypes:
    - ogg_stream_state*
    - ogg_packet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 820
      start: 774
    functionDepth: 1
    functionLinenumber: 774
    functionLinenumberEnd: 820
    functionName: ogg_stream_packetin
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - _os_body_expand
    - memcpy
    - _os_lacing_expand
    - memmove
    linkageType: ''
    returnType: s32
    signature: s32 ogg_stream_packetin(ogg_stream_state *os,ogg_packet *op)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/gpac_ogg.c:868,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/gpac_ogg.c:932,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/gpac_ogg.c:933,1
    - Dst: ogg_page_checksum_set
      Src: /src/gpac/src/media_tools/gpac_ogg.c:938,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 62
    argCount: 2
    argNames:
    - os
    - og
    argTypes:
    - ogg_stream_state*
    - ogg_page*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 942
      start: 836
    functionDepth: 1
    functionLinenumber: 836
    functionLinenumberEnd: 942
    functionName: ogg_stream_flush
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - memcpy
    - ogg_page_checksum_set
    - memmove
    linkageType: ''
    returnType: s32
    signature: s32 ogg_stream_flush(ogg_stream_state *os,ogg_page *og)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ogg_stream_flush
      Src: /src/gpac/src/media_tools/gpac_ogg.c:956,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 5
    argCount: 2
    argNames:
    - os
    - og
    argTypes:
    - ogg_stream_state*
    - ogg_page*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 961
      start: 949
    functionDepth: 2
    functionLinenumber: 949
    functionLinenumberEnd: 961
    functionName: ogg_stream_pageout
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - ogg_stream_flush
    linkageType: ''
    returnType: s32
    signature: s32 ogg_stream_pageout(ogg_stream_state *os, ogg_page *og)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - os
    argTypes:
    - ogg_stream_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 966
      start: 964
    functionDepth: 0
    functionLinenumber: 964
    functionLinenumberEnd: 966
    functionName: ogg_stream_eos
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 ogg_stream_eos(ogg_stream_state *os)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/gpac_ogg.c:988,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - oy
    argTypes:
    - ogg_sync_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 991
      start: 986
    functionDepth: 0
    functionLinenumber: 986
    functionLinenumberEnd: 991
    functionName: ogg_sync_init
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: s32
    signature: s32 ogg_sync_init(ogg_sync_state *oy)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/gpac_ogg.c:996,1
    - Dst: ogg_sync_init
      Src: /src/gpac/src/media_tools/gpac_ogg.c:997,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - oy
    argTypes:
    - ogg_sync_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1000
      start: 994
    functionDepth: 1
    functionLinenumber: 994
    functionLinenumberEnd: 1000
    functionName: ogg_sync_clear
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - ogg_sync_init
    linkageType: ''
    returnType: s32
    signature: s32 ogg_sync_clear(ogg_sync_state *oy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ogg_sync_clear
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1005,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1006,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - oy
    argTypes:
    - ogg_sync_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1009
      start: 1003
    functionDepth: 2
    functionLinenumber: 1003
    functionLinenumberEnd: 1009
    functionName: ogg_sync_destroy
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - ogg_sync_clear
    linkageType: ''
    returnType: s32
    signature: s32 ogg_sync_destroy(ogg_sync_state *oy)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memmove
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1019,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1028,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1030,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - oy
    - size
    argTypes:
    - ogg_sync_state*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1036
      start: 1013
    functionDepth: 0
    functionLinenumber: 1013
    functionLinenumberEnd: 1036
    functionName: ogg_sync_buffer
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - memmove
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: u8
    signature: u8 *ogg_sync_buffer(ogg_sync_state *oy, s32 size)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - oy
    - bytes
    argTypes:
    - ogg_sync_state*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1043
      start: 1038
    functionDepth: 0
    functionLinenumber: 1038
    functionLinenumberEnd: 1043
    functionName: ogg_sync_wrote
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 ogg_sync_wrote(ogg_sync_state *oy, s32 bytes)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: memcmp
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1066,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1086,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1087,1
    - Dst: ogg_page_checksum_set
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1094,1
    - Dst: memcmp
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1097,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1101,1
    - Dst: memchr
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1130,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 52
    argCount: 2
    argNames:
    - oy
    - og
    argTypes:
    - ogg_sync_state*
    - ogg_page*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1136
      start: 1055
    functionDepth: 1
    functionLinenumber: 1055
    functionLinenumberEnd: 1136
    functionName: ogg_sync_pageseek
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - memcmp
    - memcpy
    - memset
    - ogg_page_checksum_set
    - memchr
    linkageType: ''
    returnType: s32
    signature: s32 ogg_sync_pageseek(ogg_sync_state *oy,ogg_page *og)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ogg_sync_pageseek
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1156,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - oy
    - og
    argTypes:
    - ogg_sync_state*
    - ogg_page*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1175
      start: 1149
    functionDepth: 2
    functionLinenumber: 1149
    functionLinenumberEnd: 1175
    functionName: ogg_sync_pageout
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - ogg_sync_pageseek
    linkageType: ''
    returnType: s32
    signature: s32 ogg_sync_pageout(ogg_sync_state *oy, ogg_page *og)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: ogg_page_version
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1186,1
    - Dst: ogg_page_continued
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1187,1
    - Dst: ogg_page_bos
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1188,1
    - Dst: ogg_page_eos
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1189,1
    - Dst: ogg_page_granulepos
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1190,1
    - Dst: ogg_page_serialno
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1191,1
    - Dst: ogg_page_pageno
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1192,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1204,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1211,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1213,1
    - Dst: _os_lacing_expand
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1226,1
    - Dst: _os_body_expand
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1260,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1261,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 72
    argCount: 2
    argNames:
    - os
    - og
    argTypes:
    - ogg_stream_state*
    - ogg_page*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1301
      start: 1180
    functionDepth: 1
    functionLinenumber: 1180
    functionLinenumberEnd: 1301
    functionName: ogg_stream_pagein
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - _os_body_expand
    - _os_lacing_expand
    - ogg_page_bos
    - memmove
    - ogg_page_version
    - ogg_page_serialno
    - memcpy
    - ogg_page_eos
    - ogg_page_continued
    - ogg_page_granulepos
    - ogg_page_pageno
    linkageType: ''
    returnType: s32
    signature: s32 ogg_stream_pagein(ogg_stream_state *os, ogg_page *og)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - oy
    argTypes:
    - ogg_sync_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1312
      start: 1305
    functionDepth: 0
    functionLinenumber: 1305
    functionLinenumberEnd: 1312
    functionName: ogg_sync_reset
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 ogg_sync_reset(ogg_sync_state *oy)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 1
    argNames:
    - os
    argTypes:
    - ogg_stream_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1331
      start: 1314
    functionDepth: 0
    functionLinenumber: 1314
    functionLinenumberEnd: 1331
    functionName: ogg_stream_reset
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 ogg_stream_reset(ogg_stream_state *os)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ogg_stream_reset
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1334,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - os
    - serialno
    argTypes:
    - ogg_stream_state*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1337
      start: 1333
    functionDepth: 1
    functionLinenumber: 1333
    functionLinenumberEnd: 1337
    functionName: ogg_stream_reset_serialno
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - ogg_stream_reset
    linkageType: ''
    returnType: s32
    signature: s32 ogg_stream_reset_serialno(ogg_stream_state *os,s32 serialno)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 3
    argNames:
    - os
    - op
    - adv
    argTypes:
    - ogg_stream_state*
    - ogg_packet*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1392
      start: 1340
    functionDepth: 0
    functionLinenumber: 1340
    functionLinenumberEnd: 1392
    functionName: _packetout
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 _packetout(ogg_stream_state *os,ogg_packet *op,s32 adv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _packetout
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1395,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - os
    - op
    argTypes:
    - ogg_stream_state*
    - ogg_packet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1396
      start: 1394
    functionDepth: 1
    functionLinenumber: 1394
    functionLinenumberEnd: 1396
    functionName: ogg_stream_packetout
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - _packetout
    linkageType: ''
    returnType: s32
    signature: s32 ogg_stream_packetout(ogg_stream_state *os,ogg_packet *op)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _packetout
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1399,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - os
    - op
    argTypes:
    - ogg_stream_state*
    - ogg_packet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1400
      start: 1398
    functionDepth: 1
    functionLinenumber: 1398
    functionLinenumberEnd: 1400
    functionName: ogg_stream_packetpeek
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - _packetout
    linkageType: ''
    returnType: s32
    signature: s32 ogg_stream_packetpeek(ogg_stream_state *os,ogg_packet *op)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1404,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/gpac_ogg.c:1405,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - op
    argTypes:
    - ogg_packet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1406
      start: 1403
    functionDepth: 0
    functionLinenumber: 1403
    functionLinenumberEnd: 1406
    functionName: ogg_packet_clear
    functionSourceFile: /src/gpac/src/media_tools/gpac_ogg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memset
    linkageType: ''
    returnType: void
    signature: void ogg_packet_clear(ogg_packet *op)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/media_tools/media_export.c:56,1
    - Dst: va_start
      Src: /src/gpac/src/media_tools/media_export.c:59,1
    - Dst: vsnprintf
      Src: /src/gpac/src/media_tools/media_export.c:60,1
    - Dst: va_end
      Src: /src/gpac/src/media_tools/media_export.c:61,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_export.c:62,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - dumper
    - e
    - format
    argTypes:
    - GF_MediaExporter*
    - GF_Err
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 66
    functionName: gf_export_message
    functionSourceFile: /src/gpac/src/media_tools/media_export.c
    functionUses: 0
    functionsReached:
    - va_end
    - gf_log_tool_level_on
    - GF_LOG
    - va_start
    - vsnprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_export_message(GF_MediaExporter *dumper, GF_Err e, char *format,
      ...)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/media_export.c:78,1
    - Dst: gf_isom_get_filename
      Src: /src/gpac/src/media_tools/media_export.c:78,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:83,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/media_export.c:87,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/media_export.c:89,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/media_export.c:90,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/media_export.c:91,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/media_export.c:93,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:96,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/media_export.c:100,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/media_export.c:101,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/media_export.c:101,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/media_export.c:104,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/media_export.c:105,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:107,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:108,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/src/media_tools/media_export.c:112,1
    - Dst: gf_fputs
      Src: /src/gpac/src/media_tools/media_export.c:115,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:118,1
    - Dst: gf_fputs
      Src: /src/gpac/src/media_tools/media_export.c:121,1
    - Dst: gf_fputc
      Src: /src/gpac/src/media_tools/media_export.c:132,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:135,1
    - Dst: CLIP
      Src: /src/gpac/src/media_tools/media_export.c:135,1
    - Dst: CLIP
      Src: /src/gpac/src/media_tools/media_export.c:135,1
    - Dst: CLIP
      Src: /src/gpac/src/media_tools/media_export.c:135,1
    - Dst: gf_fputc
      Src: /src/gpac/src/media_tools/media_export.c:138,1
    - Dst: gf_fputs
      Src: /src/gpac/src/media_tools/media_export.c:141,1
    - Dst: gf_fputs
      Src: /src/gpac/src/media_tools/media_export.c:142,1
    - Dst: gf_fputs
      Src: /src/gpac/src/media_tools/media_export.c:145,1
    - Dst: gf_isom_get_media_language
      Src: /src/gpac/src/media_tools/media_export.c:148,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:149,1
    - Dst: vobsub_lang_id
      Src: /src/gpac/src/media_tools/media_export.c:149,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:150,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/media_export.c:153,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/media_export.c:161,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:173,1
    - Dst: gf_ftell
      Src: /src/gpac/src/media_tools/media_export.c:173,1
    - Dst: vobsub_packetize_subpicture
      Src: /src/gpac/src/media_tools/media_export.c:174,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_export.c:175,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:176,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:177,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:178,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_export.c:181,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/media_tools/media_export.c:182,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_export.c:191,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:194,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:195,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 83
    argCount: 5
    argNames:
    - dumper
    - szName
    - track
    - dsi
    - dsiSize
    argTypes:
    - GF_MediaExporter*
    - char*
    - u32
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 69
    functionDepth: 3
    functionLinenumber: 69
    functionLinenumberEnd: 201
    functionName: gf_dump_to_vobsub
    functionSourceFile: /src/gpac/src/media_tools/media_export.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_set_progress
    - strcpy
    - gf_isom_get_sample_count
    - gf_export_message
    - gf_fopen
    - vobsub_lang_id
    - gf_fputs
    - gf_file_basename
    - strcat
    - gf_fprintf
    - gf_isom_sample_del
    - CLIP
    - stricmp
    - gf_isom_get_sample
    - gf_ftell
    - gf_fputc
    - gf_isom_get_media_language
    - gf_isom_get_track_layout_info
    - gf_fclose
    - vobsub_packetize_subpicture
    - gf_file_ext_start
    - gf_isom_get_filename
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dump_to_vobsub(GF_MediaExporter *dumper, char *szName, u32
      track, char *dsi, u32 dsiSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 135
    functionName: CLIP
    functionSourceFile: /src/gpac/src/media_tools/media_export.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CLIP(x)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/media_export.c:217,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:217,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/media_export.c:221,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/media_tools/media_export.c:222,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/media_export.c:227,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/media_export.c:230,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/src/media_tools/media_export.c:237,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/media_export.c:237,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/media_export.c:237,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/src/media_tools/media_export.c:238,1
    - Dst: gf_isom_has_keep_utc_times
      Src: /src/gpac/src/media_tools/media_export.c:240,1
    - Dst: gf_isom_get_track_creation_time
      Src: /src/gpac/src/media_tools/media_export.c:242,1
    - Dst: gf_isom_set_track_creation_time
      Src: /src/gpac/src/media_tools/media_export.c:243,1
    - Dst: gf_isom_new_mpeg4_description
      Src: /src/gpac/src/media_tools/media_export.c:247,1
    - Dst: gf_isom_clone_sample_description
      Src: /src/gpac/src/media_tools/media_export.c:249,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/media_tools/media_export.c:255,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/media_tools/media_export.c:262,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/media_tools/media_export.c:267,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/src/media_tools/media_export.c:273,1
    - Dst: gf_isom_set_track_layout_info
      Src: /src/gpac/src/media_tools/media_export.c:274,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/media_export.c:282,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/media_export.c:283,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/media_export.c:285,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/media_tools/media_export.c:286,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_export.c:297,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/media_tools/media_export.c:298,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/media_tools/media_export.c:300,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/media_export.c:303,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:309,1
    - Dst: gf_isom_remove_root_od
      Src: /src/gpac/src/media_tools/media_export.c:314,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_export.c:318,1
    - Dst: gf_isom_remove_root_od
      Src: /src/gpac/src/media_tools/media_export.c:319,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/media_tools/media_export.c:322,1
    - Dst: gf_isom_change_mpeg4_description
      Src: /src/gpac/src/media_tools/media_export.c:326,1
    - Dst: gf_isom_get_root_od
      Src: /src/gpac/src/media_tools/media_export.c:329,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:333,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:334,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:336,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:337,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:338,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:343,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/media_tools/media_export.c:350,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:351,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:355,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:356,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:361,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/media_tools/media_export.c:368,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:369,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:373,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:374,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 121
    argCount: 6
    argNames:
    - dumper
    - infile
    - inTrackNum
    - outfile
    - ResetDependencies
    - AddToIOD
    argTypes:
    - GF_MediaExporter*
    - GF_ISOFile*
    - u32
    - GF_ISOFile*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 207
    functionDepth: 9
    functionLinenumber: 207
    functionLinenumberEnd: 375
    functionName: gf_export_isom_copy_track
    functionSourceFile: /src/gpac/src/media_tools/media_export.c
    functionUses: 0
    functionsReached:
    - gf_set_progress
    - gf_odf_desc_del
    - gf_isom_set_track_creation_time
    - gf_isom_get_sample_count
    - gf_export_message
    - gf_isom_get_track_id
    - gf_isom_add_sample
    - gf_isom_set_pl_indication
    - gf_isom_get_root_od
    - gf_isom_get_track_by_id
    - gf_isom_set_track_layout_info
    - gf_isom_sample_del
    - gf_isom_new_mpeg4_description
    - gf_isom_get_media_subtype
    - gf_isom_get_track_count
    - gf_m4v_get_config
    - gf_isom_get_media_type
    - gf_isom_set_track_enabled
    - gf_isom_get_sample
    - gf_m4a_get_config
    - gf_isom_get_esd
    - gf_isom_new_track
    - gf_isom_has_keep_utc_times
    - gf_isom_get_track_creation_time
    - gf_isom_get_track_layout_info
    - gf_isom_clone_sample_description
    - gf_isom_set_visual_info
    - gf_isom_remove_root_od
    - gf_isom_change_mpeg4_description
    - gf_isom_get_media_duration
    - gf_isom_get_media_timescale
    - gf_isom_get_visual_info
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_export_isom_copy_track(GF_MediaExporter *dumper, GF_ISOFile
      *infile, u32 inTrackNum, GF_ISOFile *outfile, Bool ResetDependencies, Bool AddToIOD)
  - BBCount: 47
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/media_tools/media_export.c:486,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_export.c:487,1
    - Dst: gf_isom_get_filename
      Src: /src/gpac/src/media_tools/media_export.c:487,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:490,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/media_export.c:495,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_export.c:499,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/media_export.c:500,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_export.c:502,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:503,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_export.c:507,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/media_export.c:508,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:510,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_export.c:511,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:512,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/media_export.c:515,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/media_export.c:521,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:524,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/media_tools/media_export.c:524,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/media_tools/media_export.c:524,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:526,1
    - Dst: gf_isom_get_media_language
      Src: /src/gpac/src/media_tools/media_export.c:529,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:531,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:532,1
    - Dst: gf_isom_get_handler_name
      Src: /src/gpac/src/media_tools/media_export.c:536,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:538,1
    - Dst: gf_isom_is_track_in_root_od
      Src: /src/gpac/src/media_tools/media_export.c:540,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:540,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:541,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:543,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/media_export.c:543,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:548,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:550,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/media_tools/media_export.c:552,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/media_tools/media_export.c:553,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:554,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:555,1
    - Dst: gf_isom_get_audio_info
      Src: /src/gpac/src/media_tools/media_export.c:559,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:560,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:561,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/src/media_tools/media_export.c:565,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:566,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:567,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:568,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:569,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:586,1
    - Dst: gf_webvtt_dump_header_boxed
      Src: /src/gpac/src/media_tools/media_export.c:587,1
    - Dst: gf_webvtt_dump_header_boxed
      Src: /src/gpac/src/media_tools/media_export.c:591,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:592,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/media_tools/media_export.c:596,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:600,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_export.c:604,1
    - Dst: gf_isom_get_generic_sample_description
      Src: /src/gpac/src/media_tools/media_export.c:606,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:607,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/media_export.c:607,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:608,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/media_export.c:608,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/media_tools/media_export.c:610,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:611,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/media_export.c:611,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:612,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:613,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:614,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:615,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:616,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:617,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:618,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:619,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:620,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:621,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:623,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/media_export.c:623,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:624,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:625,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:626,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:627,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:628,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/media_tools/media_export.c:632,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:636,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:637,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:640,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:643,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:644,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:646,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/media_export.c:649,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/media_export.c:651,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/src/media_tools/media_export.c:656,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/media_export.c:657,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/media_export.c:658,1
    - Dst: gf_webvtt_timestamp_dump
      Src: /src/gpac/src/media_tools/media_export.c:659,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:660,1
    - Dst: gf_webvtt_timestamp_dump
      Src: /src/gpac/src/media_tools/media_export.c:661,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:662,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:664,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:665,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:667,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:668,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:669,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:670,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:671,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/media_tools/media_export.c:674,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/media_export.c:678,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:680,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/media_export.c:684,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/media_tools/media_export.c:685,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:687,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:688,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:691,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_export.c:694,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/media_tools/media_export.c:695,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:698,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:699,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 200
    argCount: 1
    argNames:
    - dumper
    argTypes:
    - GF_MediaExporter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 701
      start: 472
    functionDepth: 7
    functionLinenumber: 472
    functionLinenumberEnd: 701
    functionName: gf_media_export_webvtt_metadata
    functionSourceFile: /src/gpac/src/media_tools/media_export.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_set_progress
    - gf_odf_desc_del
    - gf_isom_get_sample_count
    - gf_webvtt_timestamp_set
    - gf_fwrite
    - gf_export_message
    - gf_fopen
    - gf_webvtt_dump_header_boxed
    - gf_isom_get_track_by_id
    - gf_file_basename
    - gf_realloc
    - gf_4cc_to_str
    - gf_fprintf
    - gf_isom_sample_del
    - gf_isom_get_media_subtype
    - sprintf
    - gf_isom_is_track_in_root_od
    - gf_isom_get_audio_info
    - gf_isom_get_media_type
    - gf_isom_get_sample
    - gf_isom_get_sample_duration
    - gf_isom_get_media_language
    - GF_LOG
    - gf_isom_is_video_handler_type
    - gf_isom_get_esd
    - gf_sys_is_test_mode
    - gf_isom_get_track_layout_info
    - gf_malloc
    - gf_fclose
    - gf_webvtt_timestamp_dump
    - gf_isom_get_handler_name
    - gf_base64_encode
    - gf_gpac_version
    - gf_isom_get_visual_info
    - gf_isom_get_generic_sample_description
    - gf_isom_get_filename
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_media_export_webvtt_metadata(GF_MediaExporter *dumper)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/media_tools/media_export.c:720,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_export.c:721,1
    - Dst: gf_isom_get_filename
      Src: /src/gpac/src/media_tools/media_export.c:721,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:724,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/media_export.c:730,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_export.c:732,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/media_export.c:733,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_export.c:735,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:736,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_export.c:739,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/media_export.c:742,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:744,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_export.c:745,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:746,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/media_export.c:757,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:761,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:762,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/media_export.c:762,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:763,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:764,1
    - Dst: gf_webvtt_dump_header_boxed
      Src: /src/gpac/src/media_tools/media_export.c:770,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/media_tools/media_export.c:777,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_export.c:782,1
    - Dst: gf_isom_get_generic_sample_description
      Src: /src/gpac/src/media_tools/media_export.c:784,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:787,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:790,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/media_export.c:793,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/media_export.c:795,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/media_tools/media_export.c:799,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:803,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:804,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:805,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:806,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:807,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:808,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_export.c:811,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/media_tools/media_export.c:812,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:815,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:816,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:817,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 80
    argCount: 1
    argNames:
    - dumper
    argTypes:
    - GF_MediaExporter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 820
      start: 706
    functionDepth: 7
    functionLinenumber: 706
    functionLinenumberEnd: 820
    functionName: gf_media_export_six
    functionSourceFile: /src/gpac/src/media_tools/media_export.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_set_progress
    - gf_odf_desc_del
    - gf_isom_get_sample_count
    - gf_fwrite
    - gf_export_message
    - gf_fopen
    - gf_webvtt_dump_header_boxed
    - gf_isom_get_track_by_id
    - gf_fprintf
    - gf_isom_sample_del
    - gf_isom_get_media_subtype
    - sprintf
    - gf_isom_get_sample
    - GF_LOG
    - gf_isom_get_esd
    - gf_fclose
    - gf_isom_get_media_timescale
    - gf_isom_get_generic_sample_description
    - gf_isom_get_filename
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_media_export_six(GF_MediaExporter *dumper)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_saf_mux_new
      Src: /src/gpac/src/media_tools/media_export.c:841,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/media_export.c:842,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/media_export.c:845,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/media_export.c:847,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/media_export.c:852,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/media_export.c:856,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/media_export.c:857,1
    - Dst: gf_isom_find_od_id_for_track
      Src: /src/gpac/src/media_tools/media_export.c:859,1
    - Dst: gf_saf_mux_stream_add
      Src: /src/gpac/src/media_tools/media_export.c:864,1
    - Dst: gf_saf_mux_stream_add
      Src: /src/gpac/src/media_tools/media_export.c:866,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_export.c:870,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/media_export.c:874,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/media_export.c:895,1
    - Dst: gf_saf_mux_stream_add
      Src: /src/gpac/src/media_tools/media_export.c:896,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/media_export.c:901,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:910,1
    - Dst: gf_saf_mux_del
      Src: /src/gpac/src/media_tools/media_export.c:911,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:912,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:915,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/media_export.c:917,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/media_export.c:919,1
    - Dst: strcat
      Src: /src/gpac/src/media_tools/media_export.c:920,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/media_export.c:921,1
    - Dst: gf_saf_mux_del
      Src: /src/gpac/src/media_tools/media_export.c:923,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:924,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/media_export.c:933,1
    - Dst: gf_saf_mux_del
      Src: /src/gpac/src/media_tools/media_export.c:935,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:936,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/media_export.c:937,1
    - Dst: gf_saf_mux_add_au
      Src: /src/gpac/src/media_tools/media_export.c:940,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:942,1
    - Dst: gf_saf_mux_for_time
      Src: /src/gpac/src/media_tools/media_export.c:947,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/media_tools/media_export.c:949,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:950,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/media_tools/media_export.c:952,1
    - Dst: gf_saf_mux_for_time
      Src: /src/gpac/src/media_tools/media_export.c:955,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/media_tools/media_export.c:957,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:958,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:961,1
    - Dst: gf_saf_mux_del
      Src: /src/gpac/src/media_tools/media_export.c:963,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:964,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 120
    argCount: 1
    argNames:
    - dumper
    argTypes:
    - GF_MediaExporter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 969
      start: 827
    functionDepth: 7
    functionLinenumber: 827
    functionLinenumberEnd: 969
    functionName: gf_media_export_saf
    functionSourceFile: /src/gpac/src/media_tools/media_export.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_set_progress
    - gf_odf_desc_del
    - gf_saf_mux_new
    - strcpy
    - gf_isom_get_sample_count
    - gf_saf_mux_stream_add
    - gf_fwrite
    - memset
    - gf_export_message
    - gf_isom_get_track_id
    - gf_fopen
    - strcat
    - gf_isom_get_media_subtype
    - gf_isom_get_track_count
    - gf_saf_mux_del
    - gf_saf_mux_add_au
    - gf_isom_find_od_id_for_track
    - gf_isom_get_media_type
    - gf_isom_get_sample
    - gf_isom_last_error
    - gf_isom_get_esd
    - gf_malloc
    - gf_fclose
    - gf_isom_get_media_timescale
    - strcmp
    - gf_saf_mux_for_time
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_media_export_saf(GF_MediaExporter *dumper)
  - BBCount: 112
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/media_export.c:985,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/media_export.c:992,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/media_tools/media_export.c:993,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_export.c:995,1
    - Dst: gf_media_map_esd
      Src: /src/gpac/src/media_tools/media_export.c:998,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/media_export.c:999,1
    - Dst: gf_codecid_from_oti
      Src: /src/gpac/src/media_tools/media_export.c:1002,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/media_tools/media_export.c:1006,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/media_export.c:1016,1
    - Dst: gf_codec_id_from_isobmf
      Src: /src/gpac/src/media_tools/media_export.c:1017,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/media_export.c:1019,1
    - Dst: gf_pixel_fmt_from_qt_type
      Src: /src/gpac/src/media_tools/media_export.c:1021,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/media_export.c:1026,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/media_export.c:1026,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/media_export.c:1034,1
    - Dst: gf_pixel_fmt_sname
      Src: /src/gpac/src/media_tools/media_export.c:1034,1
    - Dst: gf_audio_fmt_from_isobmf
      Src: /src/gpac/src/media_tools/media_export.c:1037,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/media_export.c:1039,1
    - Dst: gf_audio_fmt_name
      Src: /src/gpac/src/media_tools/media_export.c:1039,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/media_export.c:1042,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/media_export.c:1042,1
    - Dst: gf_codecid_file_ext
      Src: /src/gpac/src/media_tools/media_export.c:1046,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_export.c:1047,1
    - Dst: strncpy
      Src: /src/gpac/src/media_tools/media_export.c:1051,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/media_export.c:1053,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/media_export.c:1083,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/media_export.c:1085,1
    - Dst: gf_dump_to_vobsub
      Src: /src/gpac/src/media_tools/media_export.c:1095,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_export.c:1099,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_export.c:1102,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/media_export.c:1104,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/media_export.c:1112,1
    - Dst: gf_media_import
      Src: /src/gpac/src/media_tools/media_export.c:1116,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:1118,1
    - Dst: gf_codecid_file_ext
      Src: /src/gpac/src/media_tools/media_export.c:1137,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_export.c:1138,1
    - Dst: strncpy
      Src: /src/gpac/src/media_tools/media_export.c:1142,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/media_export.c:1144,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:1152,1
    - Dst: gf_fs_new_defaults
      Src: /src/gpac/src/media_tools/media_export.c:1161,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_export.c:1163,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/media_tools/media_export.c:1171,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_export.c:1173,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_export.c:1174,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/media_export.c:1181,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1183,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1184,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/media_export.c:1187,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1188,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1191,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/media_export.c:1193,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1194,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1197,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/media_export.c:1203,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1206,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1208,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1210,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/media_export.c:1212,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1213,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1215,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/media_export.c:1216,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/media_export.c:1217,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:1218,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1220,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1221,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1222,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1224,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1225,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1229,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_export.c:1232,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:1233,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_export.c:1234,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/media_tools/media_export.c:1240,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/media_export.c:1242,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_export.c:1245,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:1246,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_export.c:1247,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:1251,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1256,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_export.c:1258,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1259,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/media_export.c:1261,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_export.c:1263,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_export.c:1264,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:1265,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/media_export.c:1270,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_export.c:1272,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_export.c:1273,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1278,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1279,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1281,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_export.c:1283,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1284,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/media_export.c:1286,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_export.c:1288,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:1289,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_export.c:1290,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1294,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1297,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1298,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/media_export.c:1301,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_export.c:1303,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:1304,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_export.c:1305,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:1309,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1313,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_export.c:1315,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1316,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1318,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1320,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1322,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/media_export.c:1324,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_export.c:1326,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:1327,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_export.c:1328,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:1331,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1337,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_export.c:1339,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_export.c:1340,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/media_export.c:1344,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:1346,1
    - Dst: gf_fs_load_source
      Src: /src/gpac/src/media_tools/media_export.c:1350,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_export.c:1354,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_export.c:1355,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/media_export.c:1355,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_export.c:1362,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_export.c:1364,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_export.c:1368,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/media_tools/media_export.c:1371,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/media_tools/media_export.c:1372,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/media_tools/media_export.c:1374,1
    - Dst: gf_fs_run
      Src: /src/gpac/src/media_tools/media_export.c:1377,1
    - Dst: gf_fs_get_last_connect_error
      Src: /src/gpac/src/media_tools/media_export.c:1379,1
    - Dst: gf_fs_get_last_process_error
      Src: /src/gpac/src/media_tools/media_export.c:1380,1
    - Dst: gf_fs_print_unused_args
      Src: /src/gpac/src/media_tools/media_export.c:1384,1
    - Dst: gf_fs_print_unused_args
      Src: /src/gpac/src/media_tools/media_export.c:1386,1
    - Dst: gf_fs_print_non_connected
      Src: /src/gpac/src/media_tools/media_export.c:1388,1
    - Dst: gf_fs_print_stats
      Src: /src/gpac/src/media_tools/media_export.c:1389,1
    - Dst: gf_fs_print_connections
      Src: /src/gpac/src/media_tools/media_export.c:1390,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_export.c:1391,1
    CyclomaticComplexity: 135
    EdgeCount: 135
    ICount: 381
    argCount: 1
    argNames:
    - dumper
    argTypes:
    - GF_MediaExporter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1393
      start: 972
    functionDepth: 13
    functionLinenumber: 972
    functionLinenumberEnd: 1393
    functionName: gf_media_export_filters
    functionSourceFile: /src/gpac/src/media_tools/media_export.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_codec_id_from_isobmf
    - gf_odf_desc_del
    - GF_SAFEALLOC
    - gf_fs_get_last_process_error
    - strcpy
    - gf_isom_get_sample_count
    - gf_fs_run
    - gf_fs_print_stats
    - gf_dump_to_vobsub
    - gf_isom_get_track_by_id
    - strchr
    - gf_4cc_to_str
    - gf_fs_print_non_connected
    - gf_media_map_esd
    - gf_codecid_from_oti
    - gf_isom_get_media_subtype
    - sprintf
    - gf_fs_print_connections
    - gf_audio_fmt_from_isobmf
    - gf_dynstrcat
    - gf_isom_get_media_type
    - gf_fs_print_unused_args
    - gf_filter_set_source
    - gf_pixel_fmt_from_qt_type
    - gf_fs_load_filter
    - gf_m4a_get_config
    - GF_LOG
    - gf_audio_fmt_name
    - strstr
    - strncpy
    - gf_error_to_string
    - gf_fs_del
    - gf_pixel_fmt_sname
    - gf_fs_load_source
    - gf_codecid_file_ext
    - strlen
    - gf_media_import
    - gf_fs_load_destination
    - gf_fs_get_last_connect_error
    - gf_file_ext_start
    - gf_fs_new_defaults
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_media_export_filters(GF_MediaExporter *dumper)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_media_export_isom
      Src: /src/gpac/src/media_tools/media_export.c:1404,1
    - Dst: gf_media_export_webvtt_metadata
      Src: /src/gpac/src/media_tools/media_export.c:1407,1
    - Dst: gf_media_export_six
      Src: /src/gpac/src/media_tools/media_export.c:1409,1
    - Dst: gf_media_export_saf
      Src: /src/gpac/src/media_tools/media_export.c:1412,1
    - Dst: gf_media_export_filters
      Src: /src/gpac/src/media_tools/media_export.c:1415,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - dumper
    argTypes:
    - GF_MediaExporter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1416
      start: 1395
    functionDepth: 14
    functionLinenumber: 1395
    functionLinenumberEnd: 1416
    functionName: gf_media_export
    functionSourceFile: /src/gpac/src/media_tools/media_export.c
    functionUses: 4
    functionsReached:
    - gf_media_export_six
    - gf_media_export_webvtt_metadata
    - gf_media_export_filters
    - gf_media_export_saf
    - gf_media_export_isom
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_export(GF_MediaExporter *dumper)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/media_tools/webvtt.c:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: boxstring_box_new
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *boxstring_box_new()
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:72,1
    - Dst: isspace
      Src: /src/gpac/src/media_tools/webvtt.c:73,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/media_tools/webvtt.c:79,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/media_tools/webvtt.c:81,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/webvtt.c:84,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/webvtt.c:85,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/webvtt.c:91,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/webvtt.c:91,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 3
    argNames:
    - type
    - string
    - parent
    argTypes:
    - u32
    - char*
    - GF_List**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 59
    functionDepth: 5
    functionLinenumber: 59
    functionLinenumberEnd: 96
    functionName: boxstring_new_with_data
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 2
    functionsReached:
    - gf_4cc_to_str
    - memcpy
    - isspace
    - GF_LOG
    - strlen
    - gf_isom_box_new_parent
    - gf_isom_box_new
    - gf_malloc
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *boxstring_new_with_data(u32 type, const char *string, GF_List
      **parent)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/media_tools/webvtt.c:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 102
    functionName: vtcu_box_new
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *vtcu_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/media_tools/webvtt.c:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: vtte_box_new
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *vtte_box_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:112,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 114
    functionName: boxstring_box_del
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void boxstring_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: vtcu_box_del
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void vtcu_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionName: vtte_box_del
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void vtte_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECL_BOX_ALLOC
      Src: /src/gpac/src/media_tools/webvtt.c:128,1
    - Dst: gf_isom_sample_entry_init
      Src: /src/gpac/src/media_tools/webvtt.c:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 131
    functionName: wvtt_box_new
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_entry_init
    - ISOM_DECL_BOX_ALLOC
    linkageType: ''
    returnType: GF_Box
    signature: GF_Box *wvtt_box_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_sample_entry_predestroy
      Src: /src/gpac/src/media_tools/webvtt.c:135,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 137
    functionName: wvtt_box_del
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_sample_entry_predestroy
    linkageType: ''
    returnType: void
    signature: void wvtt_box_del(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/webvtt.c:142,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/webvtt.c:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 146
    functionName: boxstring_box_read
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err boxstring_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/media_tools/webvtt.c:154,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/media_tools/webvtt.c:157,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/media_tools/webvtt.c:160,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/media_tools/webvtt.c:163,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 167
    functionName: vtcu_on_child_box
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vtcu_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/media_tools/webvtt.c:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 169
    functionDepth: 2
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionName: vtcu_box_read
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vtcu_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/media_tools/webvtt.c:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 174
    functionDepth: 2
    functionLinenumber: 174
    functionLinenumberEnd: 177
    functionName: vtte_box_read
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vtte_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/media_tools/webvtt.c:184,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 188
    functionName: wvtt_on_child_box
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - BOX_FIELD_ASSIGN
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err wvtt_on_child_box(GF_Box *s, GF_Box *a, Bool is_rem)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_base_sample_entry_read
      Src: /src/gpac/src/media_tools/webvtt.c:194,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/media_tools/webvtt.c:198,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 190
    functionDepth: 2
    functionLinenumber: 190
    functionLinenumberEnd: 199
    functionName: wvtt_box_read
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_isom_base_sample_entry_read
    - gf_isom_box_array_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err wvtt_box_read(GF_Box *s, GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/media_tools/webvtt.c:206,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/webvtt.c:209,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 202
    functionDepth: 2
    functionLinenumber: 202
    functionLinenumberEnd: 212
    functionName: boxstring_box_write
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err boxstring_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/media_tools/webvtt.c:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 214
    functionDepth: 2
    functionLinenumber: 214
    functionLinenumberEnd: 217
    functionName: vtcu_box_write
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vtcu_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/media_tools/webvtt.c:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 219
    functionDepth: 2
    functionLinenumber: 219
    functionLinenumberEnd: 224
    functionName: vtte_box_write
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vtte_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/media_tools/webvtt.c:230,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/webvtt.c:231,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/webvtt.c:232,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 226
    functionDepth: 2
    functionLinenumber: 226
    functionLinenumberEnd: 234
    functionName: wvtt_box_write
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_data
    - gf_bs_write_u16
    - gf_isom_box_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err wvtt_box_write(GF_Box *s, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:240,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 242
    functionName: boxstring_box_size
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err boxstring_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/media_tools/webvtt.c:248,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/media_tools/webvtt.c:249,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/media_tools/webvtt.c:250,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/media_tools/webvtt.c:251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 244
    functionDepth: 2
    functionLinenumber: 244
    functionLinenumberEnd: 253
    functionName: vtcu_box_size
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vtcu_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 258
    functionName: vtte_box_size
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vtte_box_size(GF_Box *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/media_tools/webvtt.c:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 260
    functionDepth: 2
    functionLinenumber: 260
    functionLinenumberEnd: 267
    functionName: wvtt_box_size
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err wvtt_box_size(GF_Box *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: boxstring_new_with_data
      Src: /src/gpac/src/media_tools/webvtt.c:276,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/media_tools/webvtt.c:277,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/media_tools/webvtt.c:278,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/media_tools/webvtt.c:279,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/media_tools/webvtt.c:282,1
    - Dst: boxstring_new_with_data
      Src: /src/gpac/src/media_tools/webvtt.c:285,1
    - Dst: boxstring_new_with_data
      Src: /src/gpac/src/media_tools/webvtt.c:288,1
    - Dst: boxstring_new_with_data
      Src: /src/gpac/src/media_tools/webvtt.c:291,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/media_tools/webvtt.c:294,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/media_tools/webvtt.c:295,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/media_tools/webvtt.c:297,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 2
    argNames:
    - bs
    - cue
    argTypes:
    - GF_BitStream*
    - GF_WebVTTCue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 269
    functionDepth: 6
    functionLinenumber: 269
    functionLinenumberEnd: 299
    functionName: wvtt_write_cue
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_size
    - boxstring_new_with_data
    - gf_isom_box_del
    - gf_isom_box_write
    - gf_isom_box_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err wvtt_write_cue(GF_BitStream *bs, GF_WebVTTCue *cue)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/webvtt.c:310,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:312,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/webvtt.c:315,1
    - Dst: wvtt_write_cue
      Src: /src/gpac/src/media_tools/webvtt.c:316,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/webvtt.c:320,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/media_tools/webvtt.c:324,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/media_tools/webvtt.c:325,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/media_tools/webvtt.c:326,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/media_tools/webvtt.c:327,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/webvtt.c:329,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/media_tools/webvtt.c:333,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/webvtt.c:335,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/webvtt.c:338,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/webvtt.c:339,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 1
    argNames:
    - s
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 301
    functionDepth: 7
    functionLinenumber: 301
    functionLinenumberEnd: 342
    functionName: gf_isom_webvtt_to_sample
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_size
    - gf_bs_new
    - gf_isom_box_del
    - gf_bs_get_content
    - wvtt_write_cue
    - gf_isom_box_write
    - gf_bs_del
    - gf_list_count
    - gf_isom_sample_new
    - gf_isom_box_new
    - gf_list_enum
    linkageType: ''
    returnType: GF_ISOSample
    signature: GF_ISOSample *gf_isom_webvtt_to_sample(void *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:348,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 344
    functionDepth: 1
    functionLinenumber: 344
    functionLinenumberEnd: 349
    functionName: gf_isom_webvtt_cues_count
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_webvtt_cues_count(void *s)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/media_tools/webvtt.c:382,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:383,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:384,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:385,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/media_tools/webvtt.c:386,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 355
    functionDepth: 3
    functionLinenumber: 355
    functionLinenumberEnd: 388
    functionName: boxstring_box_dump
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - strlen
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err boxstring_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/media_tools/webvtt.c:392,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:393,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/media_tools/webvtt.c:394,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 390
    functionDepth: 3
    functionLinenumber: 390
    functionLinenumberEnd: 396
    functionName: vtcu_box_dump
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vtcu_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/media_tools/webvtt.c:400,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:401,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/media_tools/webvtt.c:402,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 398
    functionDepth: 3
    functionLinenumber: 398
    functionLinenumberEnd: 404
    functionName: vtte_box_dump
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vtte_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/media_tools/webvtt.c:408,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:409,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/media_tools/webvtt.c:410,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 406
    functionDepth: 3
    functionLinenumber: 406
    functionLinenumberEnd: 412
    functionName: wvtt_box_dump
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_isom_box_dump_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err wvtt_box_dump(GF_Box *a, FILE * trace)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 1
    argNames:
    - ts
    argTypes:
    - GF_WebVTTTimestamp*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 445
    functionDepth: 0
    functionLinenumber: 445
    functionLinenumberEnd: 448
    functionName: gf_webvtt_timestamp_is_zero
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_webvtt_timestamp_is_zero(GF_WebVTTTimestamp *ts)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ts1
    - ts2
    argTypes:
    - GF_WebVTTTimestamp*
    - GF_WebVTTTimestamp*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 453
    functionDepth: 0
    functionLinenumber: 453
    functionLinenumberEnd: 458
    functionName: gf_webvtt_timestamp_greater
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_webvtt_timestamp_greater(GF_WebVTTTimestamp *ts1, GF_WebVTTTimestamp
      *ts2)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/webvtt.c:472,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:479,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:480,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:481,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - cue
    - time
    argTypes:
    - GF_WebVTTCue*
    - GF_WebVTTTimestamp*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 464
    functionDepth: 1
    functionLinenumber: 464
    functionLinenumberEnd: 485
    functionName: gf_webvtt_cue_split_at
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_WebVTTCue
    signature: GF_WebVTTCue *gf_webvtt_cue_split_at(GF_WebVTTCue *cue, GF_WebVTTTimestamp
      *time)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:512,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/webvtt.c:513,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/webvtt.c:514,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:517,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 4
    argNames:
    - cue
    - type
    - text_data
    - text_len
    argTypes:
    - GF_WebVTTCue*
    - GF_WebVTTCuePropertyType
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 520
      start: 487
    functionDepth: 0
    functionLinenumber: 487
    functionLinenumberEnd: 520
    functionName: gf_webvtt_cue_add_property
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_strdup
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_webvtt_cue_add_property(GF_WebVTTCue *cue, GF_WebVTTCuePropertyType
      type, char *text_data, u32 text_len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/webvtt.c:525,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 522
    functionDepth: 1
    functionLinenumber: 522
    functionLinenumberEnd: 527
    functionName: gf_webvtt_cue_new
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_WebVTTCue
    signature: GF_WebVTTCue *gf_webvtt_cue_new()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:533,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:534,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:535,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:536,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:537,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:538,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - cue
    argTypes:
    - GF_WebVTTCue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 539
      start: 529
    functionDepth: 0
    functionLinenumber: 529
    functionLinenumberEnd: 539
    functionName: gf_webvtt_cue_del
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_webvtt_cue_del(GF_WebVTTCue * cue)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/webvtt.c:544,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/webvtt.c:546,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 541
    functionDepth: 1
    functionLinenumber: 541
    functionLinenumberEnd: 548
    functionName: gf_webvtt_sample_new
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_WebVTTSample
    signature: GF_WebVTTSample *gf_webvtt_sample_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - samp
    argTypes:
    - GF_WebVTTSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 553
      start: 550
    functionDepth: 0
    functionLinenumber: 550
    functionLinenumberEnd: 553
    functionName: gf_webvtt_sample_get_start
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 gf_webvtt_sample_get_start(GF_WebVTTSample * samp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - samp
    argTypes:
    - GF_WebVTTSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 557
      start: 554
    functionDepth: 0
    functionLinenumber: 554
    functionLinenumberEnd: 557
    functionName: gf_webvtt_sample_get_end
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 gf_webvtt_sample_get_end(GF_WebVTTSample * samp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:561,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:562,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:563,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/media_tools/webvtt.c:564,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/webvtt.c:566,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:567,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - samp
    argTypes:
    - GF_WebVTTSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 568
      start: 559
    functionDepth: 1
    functionLinenumber: 559
    functionLinenumberEnd: 568
    functionName: gf_webvtt_sample_del
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_webvtt_cue_del
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_webvtt_sample_del(GF_WebVTTSample * samp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/webvtt.c:573,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/webvtt.c:575,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 570
    functionDepth: 1
    functionLinenumber: 570
    functionLinenumberEnd: 577
    functionName: gf_webvtt_parser_new
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_WebVTTParser
    signature: GF_WebVTTParser *gf_webvtt_parser_new()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/media_tools/webvtt.c:590,1
    - Dst: gf_webvtt_parser_restart
      Src: /src/gpac/src/media_tools/webvtt.c:591,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 5
    argNames:
    - parser
    - vtt_file
    - unicode_type
    - is_srt
    - user
    argTypes:
    - GF_WebVTTParser*
    - FILE**
    - s32
    - Bool
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 581
    functionDepth: 1
    functionLinenumber: 581
    functionLinenumberEnd: 607
    functionName: gf_webvtt_parser_init
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_sys_is_cov_mode
    - gf_webvtt_parser_restart
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err gf_webvtt_parser_init(GF_WebVTTParser *parser, FILE **vtt_file,
      s32 unicode_type, Bool is_srt,\n                             void *user, GF_Err
      (*report_message)(void *, GF_Err, char *, const char *),\n                             void
      (*on_sample_parsed)(void *, GF_WebVTTSample *),\n                             void
      (*on_header_parsed)(void *, const char *))"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - vttparser
    argTypes:
    - GF_WebVTTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 609
    functionDepth: 0
    functionLinenumber: 609
    functionLinenumberEnd: 612
    functionName: gf_webvtt_parser_suspend
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_webvtt_parser_suspend(GF_WebVTTParser *vttparser)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/webvtt.c:618,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:620,1
    - Dst: gf_webvtt_sample_del
      Src: /src/gpac/src/media_tools/webvtt.c:621,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:621,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:622,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_WebVTTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 614
    functionDepth: 2
    functionLinenumber: 614
    functionLinenumberEnd: 625
    functionName: gf_webvtt_parser_restart
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_fseek
    - gf_list_count
    - gf_webvtt_sample_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_webvtt_parser_restart(GF_WebVTTParser *parser)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:630,1
    - Dst: gf_webvtt_sample_del
      Src: /src/gpac/src/media_tools/webvtt.c:631,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:631,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:632,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:634,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_WebVTTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 646
      start: 627
    functionDepth: 2
    functionLinenumber: 627
    functionLinenumberEnd: 646
    functionName: gf_webvtt_parser_reset
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_webvtt_sample_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_webvtt_parser_reset(GF_WebVTTParser *parser)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_webvtt_parser_reset
      Src: /src/gpac/src/media_tools/webvtt.c:651,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/webvtt.c:652,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:653,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_WebVTTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 655
      start: 648
    functionDepth: 3
    functionLinenumber: 648
    functionLinenumberEnd: 655
    functionName: gf_webvtt_parser_del
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_webvtt_parser_reset
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_webvtt_parser_del(GF_WebVTTParser *parser)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_WebVTTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 658
    functionDepth: 0
    functionLinenumber: 658
    functionLinenumberEnd: 661
    functionName: gf_webvtt_parser_last_duration
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 gf_webvtt_parser_last_duration(GF_WebVTTParser *parser)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_webvtt_timestamp_get
      Src: /src/gpac/src/media_tools/webvtt.c:675,1
    - Dst: gf_webvtt_timestamp_get
      Src: /src/gpac/src/media_tools/webvtt.c:676,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:685,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:687,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/media_tools/webvtt.c:692,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/webvtt.c:693,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:697,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/webvtt.c:702,1
    - Dst: GF_WebVTTParser*::on_sample_parsed
      Src: /src/gpac/src/media_tools/webvtt.c:703,1
    - Dst: gf_webvtt_sample_new
      Src: /src/gpac/src/media_tools/webvtt.c:712,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/webvtt.c:715,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:717,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:718,1
    - Dst: gf_webvtt_cue_split_at
      Src: /src/gpac/src/media_tools/webvtt.c:719,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:720,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/webvtt.c:724,1
    - Dst: GF_WebVTTParser*::on_sample_parsed
      Src: /src/gpac/src/media_tools/webvtt.c:725,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:734,1
    - Dst: gf_webvtt_cue_split_at
      Src: /src/gpac/src/media_tools/webvtt.c:735,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:736,1
    - Dst: gf_webvtt_sample_new
      Src: /src/gpac/src/media_tools/webvtt.c:743,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/webvtt.c:746,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:747,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:748,1
    - Dst: gf_webvtt_cue_split_at
      Src: /src/gpac/src/media_tools/webvtt.c:749,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:750,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:752,1
    - Dst: gf_webvtt_sample_new
      Src: /src/gpac/src/media_tools/webvtt.c:763,1
    - Dst: GF_WebVTTParser*::on_sample_parsed
      Src: /src/gpac/src/media_tools/webvtt.c:766,1
    - Dst: gf_webvtt_sample_new
      Src: /src/gpac/src/media_tools/webvtt.c:771,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:772,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:775,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 73
    argCount: 3
    argNames:
    - parser
    - samples
    - cue
    argTypes:
    - GF_WebVTTParser*
    - GF_List*
    - GF_WebVTTCue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 778
      start: 665
    functionDepth: 2
    functionLinenumber: 665
    functionLinenumberEnd: 778
    functionName: gf_webvtt_add_cue_to_samples
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_get
    - GF_WebVTTParser*::on_sample_parsed
    - GF_LOG
    - gf_webvtt_cue_del
    - gf_list_count
    - gf_webvtt_sample_new
    - gf_list_add
    - gf_list_del_item
    - gf_webvtt_timestamp_get
    - gf_webvtt_cue_split_at
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_webvtt_add_cue_to_samples(GF_WebVTTParser *parser, GF_List
      *samples, GF_WebVTTCue *cue)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - __str
    - ','
    - __sep
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 789
      start: 780
    functionDepth: 0
    functionLinenumber: 780
    functionLinenumberEnd: 789
    functionName: REM_TRAIL_MARKS
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: REM_TRAIL_MARKS(__str, __sep)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:803,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 72
    argCount: 3
    argNames:
    - parser
    - ts
    - line
    argTypes:
    - GF_WebVTTParser*
    - GF_WebVTTTimestamp*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 867
      start: 792
    functionDepth: 0
    functionLinenumber: 792
    functionLinenumberEnd: 867
    functionName: gf_webvtt_parse_timestamp
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_webvtt_parse_timestamp(GF_WebVTTParser *parser, GF_WebVTTTimestamp
      *ts, const char *line)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_WebVTTParser*::report_message
      Src: /src/gpac/src/media_tools/webvtt.c:886,1
    - Dst: gf_webvtt_parse_timestamp
      Src: /src/gpac/src/media_tools/webvtt.c:890,1
    - Dst: GF_WebVTTParser*::report_message
      Src: /src/gpac/src/media_tools/webvtt.c:892,1
    - Dst: GF_WebVTTParser*::report_message
      Src: /src/gpac/src/media_tools/webvtt.c:899,1
    - Dst: GF_WebVTTParser*::report_message
      Src: /src/gpac/src/media_tools/webvtt.c:904,1
    - Dst: GF_WebVTTParser*::report_message
      Src: /src/gpac/src/media_tools/webvtt.c:911,1
    - Dst: gf_webvtt_parse_timestamp
      Src: /src/gpac/src/media_tools/webvtt.c:919,1
    - Dst: GF_WebVTTParser*::report_message
      Src: /src/gpac/src/media_tools/webvtt.c:921,1
    - Dst: gf_webvtt_cue_add_property
      Src: /src/gpac/src/media_tools/webvtt.c:930,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:930,1
    - Dst: gf_webvtt_timestamp_greater
      Src: /src/gpac/src/media_tools/webvtt.c:933,1
    - Dst: GF_WebVTTParser*::report_message
      Src: /src/gpac/src/media_tools/webvtt.c:934,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 56
    argCount: 4
    argNames:
    - parser
    - cue
    - line
    - len
    argTypes:
    - GF_WebVTTParser*
    - GF_WebVTTCue*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 942
      start: 873
    functionDepth: 1
    functionLinenumber: 873
    functionLinenumberEnd: 942
    functionName: gf_webvtt_parser_parse_timings_settings
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - GF_WebVTTParser*::report_message
    - gf_webvtt_parse_timestamp
    - gf_webvtt_timestamp_greater
    - gf_webvtt_cue_add_property
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_webvtt_parser_parse_timings_settings(GF_WebVTTParser *parser,
      GF_WebVTTCue *cue, char *line, u32 len)
  - BBCount: 53
    BranchProfiles: []
    Callsites:
    - Dst: GF_WebVTTParser*::on_header_parsed
      Src: /src/gpac/src/media_tools/webvtt.c:960,1
    - Dst: gf_text_get_utf8_line
      Src: /src/gpac/src/media_tools/webvtt.c:968,1
    - Dst: gf_webvtt_add_cue_to_samples
      Src: /src/gpac/src/media_tools/webvtt.c:972,1
    - Dst: REM_TRAIL_MARKS
      Src: /src/gpac/src/media_tools/webvtt.c:977,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:978,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/webvtt.c:979,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/webvtt.c:985,1
    - Dst: GF_WebVTTParser*::report_message
      Src: /src/gpac/src/media_tools/webvtt.c:987,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:994,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:1001,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/webvtt.c:1002,1
    - Dst: strcpy
      Src: /src/gpac/src/media_tools/webvtt.c:1003,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1005,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/webvtt.c:1009,1
    - Dst: GF_WebVTTParser*::on_header_parsed
      Src: /src/gpac/src/media_tools/webvtt.c:1010,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:1019,1
    - Dst: GF_WebVTTParser*::on_header_parsed
      Src: /src/gpac/src/media_tools/webvtt.c:1023,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1024,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/webvtt.c:1038,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1045,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/webvtt.c:1054,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:1056,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/webvtt.c:1057,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/webvtt.c:1057,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/webvtt.c:1070,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1071,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1077,1
    - Dst: gf_webvtt_cue_new
      Src: /src/gpac/src/media_tools/webvtt.c:1091,1
    - Dst: gf_webvtt_cue_add_property
      Src: /src/gpac/src/media_tools/webvtt.c:1094,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:1094,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1095,1
    - Dst: gf_webvtt_cue_add_property
      Src: /src/gpac/src/media_tools/webvtt.c:1099,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:1099,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1100,1
    - Dst: gf_webvtt_parser_parse_timings_settings
      Src: /src/gpac/src/media_tools/webvtt.c:1103,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/media_tools/webvtt.c:1105,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/webvtt.c:1115,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1116,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/webvtt.c:1122,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/webvtt.c:1123,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/webvtt.c:1127,1
    - Dst: gf_webvtt_cue_add_property
      Src: /src/gpac/src/media_tools/webvtt.c:1132,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/webvtt.c:1140,1
    - Dst: assert
      Src: /src/gpac/src/media_tools/webvtt.c:1147,1
    - Dst: gf_webvtt_cue_add_property
      Src: /src/gpac/src/media_tools/webvtt.c:1148,1
    - Dst: gf_webvtt_add_cue_to_samples
      Src: /src/gpac/src/media_tools/webvtt.c:1154,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1171,1
    - Dst: gf_webvtt_add_cue_to_samples
      Src: /src/gpac/src/media_tools/webvtt.c:1179,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:1182,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:1183,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:1185,1
    - Dst: GF_WebVTTParser*::on_sample_parsed
      Src: /src/gpac/src/media_tools/webvtt.c:1186,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/media_tools/webvtt.c:1190,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1191,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1192,1
    CyclomaticComplexity: 83
    EdgeCount: 83
    ICount: 218
    argCount: 4
    argNames:
    - parser
    - cue
    - ext_file
    - is_eof
    argTypes:
    - GF_WebVTTParser*
    - GF_WebVTTCue*
    - FILE*
    - Bool
    assertStmts:
    - condition: (cue)
      pos:
        line_end: 1146
        line_start: 1146
        source_file: /src/gpac/src/media_tools/webvtt.c
    constantsTouched: []
    func_position:
      end: 1194
      start: 944
    functionDepth: 3
    functionLinenumber: 944
    functionLinenumberEnd: 1194
    functionName: gf_webvtt_parser_parse_internal
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - strcpy
    - gf_list_count
    - gf_webvtt_add_cue_to_samples
    - GF_WebVTTParser*::on_header_parsed
    - gf_realloc
    - REM_TRAIL_MARKS
    - GF_WebVTTParser*::report_message
    - gf_strdup
    - gf_assert
    - gf_list_get
    - GF_WebVTTParser*::on_sample_parsed
    - gf_webvtt_parser_parse_timings_settings
    - strncmp
    - gf_dynstrcat
    - assert
    - strstr
    - strnicmp
    - gf_list_last
    - strlen
    - gf_webvtt_cue_del
    - gf_webvtt_cue_add_property
    - gf_webvtt_cue_new
    - strcmp
    - gf_text_get_utf8_line
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_webvtt_parser_parse_internal(GF_WebVTTParser *parser, GF_WebVTTCue
      *cue, FILE *ext_file, Bool is_eof)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_webvtt_parser_parse_internal
      Src: /src/gpac/src/media_tools/webvtt.c:1198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_WebVTTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1199
      start: 1196
    functionDepth: 4
    functionLinenumber: 1196
    functionLinenumberEnd: 1199
    functionName: gf_webvtt_parser_parse
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_webvtt_parser_parse_internal
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_webvtt_parser_parse(GF_WebVTTParser *parser)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_webvtt_parser_parse_internal
      Src: /src/gpac/src/media_tools/webvtt.c:1202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - parser
    - ext_file
    - in_eos
    argTypes:
    - GF_WebVTTParser*
    - FILE*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1203
      start: 1200
    functionDepth: 4
    functionLinenumber: 1200
    functionLinenumberEnd: 1203
    functionName: gf_webvtt_parser_parse_ext
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_webvtt_parser_parse_internal
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_webvtt_parser_parse_ext(GF_WebVTTParser *parser, FILE *ext_file,
      Bool in_eos)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_WebVTTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1209
      start: 1206
    functionDepth: 0
    functionLinenumber: 1206
    functionLinenumberEnd: 1209
    functionName: gf_webvtt_parser_not_done
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_webvtt_parser_not_done(GF_WebVTTParser *parser)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:1213,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:1214,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:1216,1
    - Dst: GF_WebVTTParser*::on_sample_parsed
      Src: /src/gpac/src/media_tools/webvtt.c:1217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_WebVTTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1220
      start: 1211
    functionDepth: 1
    functionLinenumber: 1211
    functionLinenumberEnd: 1220
    functionName: gf_webvtt_parser_flush
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - GF_WebVTTParser*::on_sample_parsed
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_webvtt_parser_flush(GF_WebVTTParser *parser)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_webvtt_cue_new
      Src: /src/gpac/src/media_tools/webvtt.c:1224,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/webvtt.c:1226,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/webvtt.c:1227,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:1230,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:1231,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:1232,1
    - Dst: gf_webvtt_parser_parse_internal
      Src: /src/gpac/src/media_tools/webvtt.c:1234,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 6
    argNames:
    - parser
    - start
    - end
    - vtt_pre
    - vtt_cueid
    - vtt_settings
    argTypes:
    - GF_WebVTTParser*
    - u64
    - u64
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1237
      start: 1222
    functionDepth: 4
    functionLinenumber: 1222
    functionLinenumberEnd: 1237
    functionName: gf_webvtt_parser_parse_payload
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_webvtt_cue_new
    - gf_strdup
    - gf_webvtt_parser_parse_internal
    - gf_webvtt_timestamp_set
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_webvtt_parser_parse_payload(GF_WebVTTParser *parser, u64
      start, u64 end, const char *vtt_pre, const char *vtt_cueid, const char *vtt_settings)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_webvtt_parse_cues_from_data
      Src: /src/gpac/src/media_tools/webvtt.c:1242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - iso_sample
    - start
    - end
    argTypes:
    - GF_ISOSample*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1243
      start: 1239
    functionDepth: 1
    functionLinenumber: 1239
    functionLinenumberEnd: 1243
    functionName: gf_webvtt_parse_iso_cues
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_webvtt_parse_cues_from_data
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_webvtt_parse_iso_cues(GF_ISOSample *iso_sample, u64 start,
      u64 end)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/webvtt.c:1255,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/webvtt.c:1256,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/webvtt.c:1257,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/media_tools/webvtt.c:1261,1
    - Dst: gf_webvtt_cue_new
      Src: /src/gpac/src/media_tools/webvtt.c:1265,1
    - Dst: gf_webvtt_cue_add_property
      Src: /src/gpac/src/media_tools/webvtt.c:1267,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:1267,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1268,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:1271,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/webvtt.c:1272,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/webvtt.c:1273,1
    - Dst: gf_webvtt_cue_add_property
      Src: /src/gpac/src/media_tools/webvtt.c:1275,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:1275,1
    - Dst: gf_webvtt_cue_add_property
      Src: /src/gpac/src/media_tools/webvtt.c:1278,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:1278,1
    - Dst: gf_webvtt_cue_add_property
      Src: /src/gpac/src/media_tools/webvtt.c:1281,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:1281,1
    - Dst: gf_webvtt_cue_add_property
      Src: /src/gpac/src/media_tools/webvtt.c:1286,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:1286,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:1288,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/media_tools/webvtt.c:1291,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/webvtt.c:1293,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 41
    argCount: 4
    argNames:
    - data
    - dataLength
    - start
    - end
    argTypes:
    - u8*
    - u32
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1295
      start: 1245
    functionDepth: 4
    functionLinenumber: 1245
    functionLinenumberEnd: 1295
    functionName: gf_webvtt_parse_cues_from_data
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_strdup
    - gf_bs_new
    - gf_isom_box_del
    - gf_webvtt_cue_add_property
    - gf_webvtt_timestamp_set
    - gf_bs_del
    - gf_webvtt_cue_new
    - gf_list_add
    - gf_bs_available
    - strlen
    - gf_isom_box_parse
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_webvtt_parse_cues_from_data(const u8 *data, u32 dataLength,
      u64 start, u64 end)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/webvtt.c:1303,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:1303,1
    - Dst: gf_webvtt_sample_new
      Src: /src/gpac/src/media_tools/webvtt.c:1305,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/webvtt.c:1308,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:1309,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:1310,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:1311,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:1313,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:1318,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:1319,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:1320,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/webvtt.c:1322,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/webvtt.c:1323,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/webvtt.c:1324,1
    - Dst: gf_webvtt_timestamp_is_zero
      Src: /src/gpac/src/media_tools/webvtt.c:1340,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/webvtt.c:1341,1
    - Dst: GF_WebVTTParser*::on_cue_read
      Src: /src/gpac/src/media_tools/webvtt.c:1346,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:1349,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/media_tools/webvtt.c:1355,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:1361,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:1363,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:1364,1
    - Dst: gf_webvtt_timestamp_is_zero
      Src: /src/gpac/src/media_tools/webvtt.c:1366,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/webvtt.c:1367,1
    - Dst: GF_WebVTTParser*::on_cue_read
      Src: /src/gpac/src/media_tools/webvtt.c:1372,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:1375,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/media_tools/webvtt.c:1379,1
    - Dst: gf_webvtt_sample_del
      Src: /src/gpac/src/media_tools/webvtt.c:1381,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/media_tools/webvtt.c:1382,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:1387,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:1388,1
    - Dst: gf_webvtt_sample_del
      Src: /src/gpac/src/media_tools/webvtt.c:1390,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 65
    argCount: 3
    argNames:
    - parser
    - start
    - cues
    argTypes:
    - GF_WebVTTParser*
    - u64
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1393
      start: 1297
    functionDepth: 2
    functionLinenumber: 1297
    functionLinenumberEnd: 1393
    functionName: gf_webvtt_merge_cues
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_list_get
    - gf_webvtt_timestamp_is_zero
    - gf_webvtt_cue_del
    - gf_webvtt_timestamp_set
    - gf_list_count
    - gf_webvtt_sample_new
    - strcmp
    - gf_list_add
    - gf_webvtt_sample_del
    - gf_list_last
    - gf_list_rem_last
    - gf_list_rem
    - GF_WebVTTParser*::on_cue_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_webvtt_merge_cues(GF_WebVTTParser *parser, u64 start, GF_List
      *cues)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_webvtt_parse_iso_cues
      Src: /src/gpac/src/media_tools/webvtt.c:1403,1
    - Dst: gf_webvtt_merge_cues
      Src: /src/gpac/src/media_tools/webvtt.c:1404,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/webvtt.c:1405,1
    - Dst: gf_webvtt_dump_iso_sample
      Src: /src/gpac/src/media_tools/webvtt.c:1409,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 6
    argNames:
    - parser
    - timescale
    - iso_sample
    - duration
    - merge
    - box_mode
    argTypes:
    - GF_WebVTTParser*
    - u32
    - GF_ISOSample*
    - u32
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1413
      start: 1395
    functionDepth: 3
    functionLinenumber: 1395
    functionLinenumberEnd: 1413
    functionName: gf_webvtt_parse_iso_sample
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_webvtt_parse_iso_cues
    - gf_webvtt_dump_iso_sample
    - gf_list_del
    - gf_webvtt_merge_cues
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_webvtt_parse_iso_sample(GF_WebVTTParser *parser, u32 timescale,
      GF_ISOSample *iso_sample, u32 duration, Bool merge, Bool box_mode)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ts
    - value
    argTypes:
    - GF_WebVTTTimestamp*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1429
      start: 1417
    functionDepth: 0
    functionLinenumber: 1417
    functionLinenumberEnd: 1429
    functionName: gf_webvtt_timestamp_set
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_webvtt_timestamp_set(GF_WebVTTTimestamp *ts, u64 value)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ts
    argTypes:
    - GF_WebVTTTimestamp*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1435
      start: 1431
    functionDepth: 0
    functionLinenumber: 1431
    functionLinenumberEnd: 1435
    functionName: gf_webvtt_timestamp_get
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 gf_webvtt_timestamp_get(GF_WebVTTTimestamp *ts)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1440,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1443,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - ts
    - dump
    - dump_hour
    argTypes:
    - GF_WebVTTTimestamp*
    - FILE*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1444
      start: 1437
    functionDepth: 1
    functionLinenumber: 1437
    functionLinenumberEnd: 1444
    functionName: gf_webvtt_timestamp_dump
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 1
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void gf_webvtt_timestamp_dump(GF_WebVTTTimestamp *ts, FILE *dump, Bool
      dump_hour)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/webvtt.c:1455,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/media_tools/webvtt.c:1456,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/webvtt.c:1458,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/media_tools/webvtt.c:1459,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1464,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:1465,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/webvtt.c:1467,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/media_tools/webvtt.c:1468,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 4
    argNames:
    - dump
    - data
    - dataLength
    - dumpedLength
    argTypes:
    - FILE*
    - u8*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1471
      start: 1445
    functionDepth: 4
    functionLinenumber: 1445
    functionLinenumberEnd: 1471
    functionName: gf_webvtt_dump_header_boxed
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 2
    functionsReached:
    - gf_bs_new
    - gf_isom_box_del
    - gf_fprintf
    - gf_bs_del
    - strlen
    - gf_isom_box_parse
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_webvtt_dump_header_boxed(FILE *dump, const u8 *data, u32
      dataLength, u32 *dumpedLength)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_webvtt_isom_get_description
      Src: /src/gpac/src/media_tools/webvtt.c:1477,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/media_tools/webvtt.c:1481,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1486,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 5
    argNames:
    - dump
    - file
    - track
    - box_mode
    - index
    argTypes:
    - FILE*
    - GF_ISOFile*
    - u32
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1489
      start: 1474
    functionDepth: 3
    functionLinenumber: 1474
    functionLinenumberEnd: 1489
    functionName: gf_webvtt_dump_header
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump
    - gf_webvtt_isom_get_description
    - gf_fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_webvtt_dump_header(FILE *dump, GF_ISOFile *file, u32 track,
      Bool box_mode, u32 index)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1497,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/webvtt.c:1499,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/webvtt.c:1500,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/media_tools/webvtt.c:1504,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/media_tools/webvtt.c:1509,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1513,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/webvtt.c:1514,1
    - Dst: gf_webvtt_timestamp_dump
      Src: /src/gpac/src/media_tools/webvtt.c:1515,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1516,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1517,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1518,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1519,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1520,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/webvtt.c:1522,1
    - Dst: gf_webvtt_timestamp_dump
      Src: /src/gpac/src/media_tools/webvtt.c:1523,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1524,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1526,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/media_tools/webvtt.c:1528,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/webvtt.c:1530,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1532,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 4
    argNames:
    - dump
    - timescale
    - iso_sample
    - box_mode
    argTypes:
    - FILE*
    - u32
    - GF_ISOSample*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1535
      start: 1491
    functionDepth: 4
    functionLinenumber: 1491
    functionLinenumberEnd: 1535
    functionName: gf_webvtt_dump_iso_sample
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_dump
    - gf_bs_new
    - gf_fprintf
    - gf_webvtt_timestamp_dump
    - gf_isom_box_del
    - gf_webvtt_timestamp_set
    - gf_bs_del
    - gf_bs_available
    - gf_isom_box_parse
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_webvtt_dump_iso_sample(FILE *dump, u32 timescale, GF_ISOSample
      *iso_sample, Bool box_mode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/webvtt.c:1542,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:1542,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:1543,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:1545,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:1546,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:1547,1
    - Dst: gf_webvtt_timestamp_is_zero
      Src: /src/gpac/src/media_tools/webvtt.c:1548,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/webvtt.c:1549,1
    - Dst: GF_WebVTTParser*::on_cue_read
      Src: /src/gpac/src/media_tools/webvtt.c:1551,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/media_tools/webvtt.c:1552,1
    - Dst: gf_webvtt_sample_del
      Src: /src/gpac/src/media_tools/webvtt.c:1554,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:1555,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - parser
    - duration
    argTypes:
    - GF_WebVTTParser*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1558
      start: 1539
    functionDepth: 2
    functionLinenumber: 1539
    functionLinenumberEnd: 1558
    functionName: gf_webvtt_parser_finalize
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_list_get
    - gf_webvtt_timestamp_is_zero
    - gf_webvtt_cue_del
    - gf_webvtt_timestamp_set
    - gf_list_count
    - gf_webvtt_sample_del
    - gf_list_rem
    - GF_WebVTTParser*::on_cue_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_webvtt_parser_finalize(GF_WebVTTParser *parser, u64 duration)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1566,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1567,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1568,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1570,1
    - Dst: gf_webvtt_timestamp_dump
      Src: /src/gpac/src/media_tools/webvtt.c:1572,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1573,1
    - Dst: gf_webvtt_timestamp_dump
      Src: /src/gpac/src/media_tools/webvtt.c:1574,1
    - Dst: gf_webvtt_timestamp_dump
      Src: /src/gpac/src/media_tools/webvtt.c:1576,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1577,1
    - Dst: gf_webvtt_timestamp_dump
      Src: /src/gpac/src/media_tools/webvtt.c:1578,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1581,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1583,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1584,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1585,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1586,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1588,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1589,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1590,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 2
    argNames:
    - user
    - cue
    argTypes:
    - void*
    - GF_WebVTTCue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1592
      start: 1561
    functionDepth: 2
    functionLinenumber: 1561
    functionLinenumberEnd: 1592
    functionName: gf_webvtt_dump_cue
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_webvtt_timestamp_dump
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void gf_webvtt_dump_cue(void *user, GF_WebVTTCue *cue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:1600,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:1601,1
    - Dst: gf_webvtt_dump_cue
      Src: /src/gpac/src/media_tools/webvtt.c:1602,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dump
    - cues
    argTypes:
    - FILE*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1605
      start: 1597
    functionDepth: 3
    functionLinenumber: 1597
    functionLinenumberEnd: 1605
    functionName: gf_webvtt_dump_cues
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_webvtt_dump_cue
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_webvtt_dump_cues(FILE *dump, GF_List *cues)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1609,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dump
    - samp
    argTypes:
    - FILE*
    - GF_WebVTTSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1611
      start: 1607
    functionDepth: 1
    functionLinenumber: 1607
    functionLinenumberEnd: 1611
    functionName: gf_webvtt_dump_sample
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_webvtt_dump_sample(FILE *dump, GF_WebVTTSample *samp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - parser
    - udta
    argTypes:
    - GF_WebVTTParser*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1619
      start: 1615
    functionDepth: 0
    functionLinenumber: 1615
    functionLinenumberEnd: 1619
    functionName: gf_webvtt_parser_cue_callback
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_webvtt_parser_cue_callback(GF_WebVTTParser *parser, void (*on_cue_read)(void
      *, GF_WebVTTCue *), void *udta)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_webvtt_parser_new
      Src: /src/gpac/src/media_tools/webvtt.c:1641,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1646,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/webvtt.c:1646,1
    - Dst: gf_webvtt_dump_header
      Src: /src/gpac/src/media_tools/webvtt.c:1648,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/webvtt.c:1651,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/webvtt.c:1653,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/webvtt.c:1656,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/webvtt.c:1658,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/src/media_tools/webvtt.c:1661,1
    - Dst: gf_webvtt_parse_iso_sample
      Src: /src/gpac/src/media_tools/webvtt.c:1662,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/webvtt.c:1666,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/media_tools/webvtt.c:1668,1
    - Dst: gf_webvtt_parser_finalize
      Src: /src/gpac/src/media_tools/webvtt.c:1669,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1672,1
    - Dst: gf_webvtt_parser_del
      Src: /src/gpac/src/media_tools/webvtt.c:1675,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 4
    argNames:
    - dumper
    - track
    - merge
    - box_dump
    argTypes:
    - GF_MediaExporter*
    - u32
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1678
      start: 1623
    functionDepth: 5
    functionLinenumber: 1623
    functionLinenumberEnd: 1678
    functionName: gf_webvtt_dump_iso_track
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 1
    functionsReached:
    - gf_isom_last_error
    - gf_isom_get_sample_duration
    - gf_fprintf
    - gf_webvtt_parser_finalize
    - gf_isom_sample_del
    - gf_isom_get_sample_count
    - gf_webvtt_parse_iso_sample
    - gf_isom_get_media_duration
    - gf_webvtt_parser_del
    - gf_isom_get_media_timescale
    - gf_isom_get_track_id
    - gf_webvtt_parser_new
    - gf_webvtt_dump_header
    - gf_isom_get_sample
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_webvtt_dump_iso_track(GF_MediaExporter *dumper, u32 track,
      Bool merge, Bool box_dump)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_hmux.c:36,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_hmux.c:37,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/downloader_hmux.c:39,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_hmux.c:40,1
    - Dst: GF_HMUX_Session*::close
      Src: /src/gpac/src/utils/downloader_hmux.c:42,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_hmux.c:46,1
    - Dst: SSL_shutdown
      Src: /src/gpac/src/utils/downloader_hmux.c:47,1
    - Dst: SSL_free
      Src: /src/gpac/src/utils/downloader_hmux.c:48,1
    - Dst: dm_sess_sk_del
      Src: /src/gpac/src/utils/downloader_hmux.c:52,1
    - Dst: GF_HMUX_Session*::destroy
      Src: /src/gpac/src/utils/downloader_hmux.c:54,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/downloader_hmux.c:56,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_hmux.c:57,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/utils/downloader_hmux.c:58,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_hmux.c:59,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_hmux.c:61,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_hmux.c:62,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_hmux.c:67,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_hmux.c:78,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_hmux.c:82,1
    - Dst: memset
      Src: /src/gpac/src/utils/downloader_hmux.c:83,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 43
    argCount: 2
    argNames:
    - hmux_sess
    - sess
    argTypes:
    - GF_HMUX_Session*
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 87
    functionName: hmux_detach_session
    functionSourceFile: /src/gpac/src/utils/downloader_hmux.c
    functionUses: 0
    functionsReached:
    - GF_HMUX_Session*::destroy
    - gf_free
    - gf_assert
    - gf_list_get
    - GF_LOG
    - SSL_free
    - gf_list_count
    - memset
    - gf_mx_v
    - gf_list_del_item
    - GF_HMUX_Session*::close
    - dm_sess_sk_del
    - SSL_shutdown
    - gf_list_del
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void hmux_detach_session(GF_HMUX_Session *hmux_sess, GF_DownloadSession
      *sess)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_hmux.c:96,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_hmux.c:98,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_hmux.c:108,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_hmux.c:112,1
    - Dst: gf_dm_sess_clear_headers
      Src: /src/gpac/src/utils/downloader_hmux.c:117,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 3
    argNames:
    - user_data
    - stream_id
    - can_reassign
    argTypes:
    - void*
    - s64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 121
    functionName: hmux_get_session
    functionSourceFile: /src/gpac/src/utils/downloader_hmux.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - GF_LOG
    - gf_dm_sess_clear_headers
    - gf_list_count
    linkageType: ''
    returnType: GF_DownloadSession
    signature: GF_DownloadSession *hmux_get_session(void *user_data, s64 stream_id,
      Bool can_reassign)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_data_received
      Src: /src/gpac/src/utils/downloader_hmux.c:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - sess
    - store_in_init
    argTypes:
    - GF_DownloadSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 127
    functionName: hmux_flush_internal_data
    functionSourceFile: /src/gpac/src/utils/downloader_hmux.c
    functionUses: 0
    functionsReached:
    - gf_dm_data_received
    linkageType: ''
    returnType: void
    signature: void hmux_flush_internal_data(GF_DownloadSession *sess, Bool store_in_init)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_data_received
      Src: /src/gpac/src/utils/downloader_hmux.c:138,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_hmux.c:147,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_hmux.c:156,1
    - Dst: gf_dm_data_received
      Src: /src/gpac/src/utils/downloader_hmux.c:159,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_hmux.c:166,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 4
    argNames:
    - sess
    - obuffer
    - size
    - nb_bytes
    argTypes:
    - GF_DownloadSession*
    - u8*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 167
    functionName: hmux_fetch_data
    functionSourceFile: /src/gpac/src/utils/downloader_hmux.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_assert
    - gf_dm_data_received
    linkageType: ''
    returnType: void
    signature: void hmux_fetch_data(GF_DownloadSession *sess, u8 *obuffer, u32 size,
      u32 *nb_bytes)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_probe
      Src: /src/gpac/src/utils/downloader_hmux.c:173,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_hmux.c:181,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_hmux.c:183,1
    - Dst: assert
      Src: /src/gpac/src/utils/downloader_hmux.c:185,1
    - Dst: GF_DownloadSession*::hmux_sess::resume
      Src: /src/gpac/src/utils/downloader_hmux.c:189,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_hmux.c:191,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_hmux.c:198,1
    - Dst: GF_DownloadSession*::hmux_sess::write
      Src: /src/gpac/src/utils/downloader_hmux.c:203,1
    - Dst: GF_DownloadSession*::hmux_sess::write
      Src: /src/gpac/src/utils/downloader_hmux.c:207,1
    - Dst: GF_DownloadSession*::hmux_sess::send_pending_data
      Src: /src/gpac/src/utils/downloader_hmux.c:212,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_hmux.c:214,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_hmux.c:218,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 54
    argCount: 3
    argNames:
    - sess
    - data
    - size
    argTypes:
    - GF_DownloadSession*
    - u8*
    - u32
    assertStmts:
    - condition: (sess->hmux_send_data==NULL)
      pos:
        line_end: 184
        line_start: 184
        source_file: /src/gpac/src/utils/downloader_hmux.c
    constantsTouched: []
    func_position:
      end: 233
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 233
    functionName: hmux_send_payload
    functionSourceFile: /src/gpac/src/utils/downloader_hmux.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - GF_LOG
    - assert
    - GF_DownloadSession*::hmux_sess::send_pending_data
    - gf_sk_probe
    - GF_DownloadSession*::hmux_sess::write
    - gf_mx_v
    - GF_DownloadSession*::hmux_sess::resume
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hmux_send_payload(GF_DownloadSession *sess, u8 *data, u32 size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_DownloadSession*::hmux_sess::close_session
      Src: /src/gpac/src/utils/downloader_hmux.c:243,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 245
    functionName: gf_dm_sess_close_hmux
    functionSourceFile: /src/gpac/src/utils/downloader_hmux.c
    functionUses: 0
    functionsReached:
    - GF_DownloadSession*::hmux_sess::close_session
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_close_hmux(GF_DownloadSession *sess)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_hmux.c:252,1
    - Dst: gf_dm_sess_new_internal
      Src: /src/gpac/src/utils/downloader_hmux.c:253,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_hmux.c:255,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/downloader_hmux.c:258,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/utils/downloader_hmux.c:263,1
    - Dst: GF_DownloadSession*::hmux_sess::setup_session
      Src: /src/gpac/src/utils/downloader_hmux.c:268,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_hmux.c:271,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 4
    argNames:
    - sess
    - stream_id
    - usr_cbk
    - e
    argTypes:
    - GF_DownloadSession*
    - s64
    - void*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 247
    functionDepth: 1
    functionLinenumber: 247
    functionLinenumberEnd: 276
    functionName: gf_dm_sess_new_subsession
    functionSourceFile: /src/gpac/src/utils/downloader_hmux.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_dm_sess_new_internal
    - gf_mx_v
    - gf_list_add
    - GF_DownloadSession*::hmux_sess::setup_session
    - gf_mx_del
    linkageType: ''
    returnType: GF_DownloadSession
    signature: GF_DownloadSession *gf_dm_sess_new_subsession(GF_DownloadSession *sess,
      s64 stream_id, void *usr_cbk, GF_Err *e)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionName: zlibVersion
    functionSourceFile: /src/gpac/src/utils/zutil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * ZEXPORT zlibVersion()
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 67
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 141
    functionName: zlibCompileFlags
    functionSourceFile: /src/gpac/src/utils/zutil.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uLong
    signature: uLong zlibCompileFlags()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: farmalloc
      Src: /src/gpac/src/utils/zutil.c:253,1
    - Dst: farmalloc
      Src: /src/gpac/src/utils/zutil.c:256,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - opaque
    - items
    - size
    argTypes:
    - voidpf
    - unsigned
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 266
    functionName: zcalloc
    functionSourceFile: /src/gpac/src/utils/zutil.c
    functionUses: 0
    functionsReached:
    - farmalloc
    linkageType: ''
    returnType: voidpf
    signature: voidpf zcalloc (voidpf opaque, unsigned items, unsigned size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fargf_free
      Src: /src/gpac/src/utils/zutil.c:272,1
    - Dst: fargf_free
      Src: /src/gpac/src/utils/zutil.c:279,1
    - Dst: Assert
      Src: /src/gpac/src/utils/zutil.c:287,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - opaque
    - ptr
    argTypes:
    - voidpf
    - voidpf
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 268
    functionDepth: 1
    functionLinenumber: 268
    functionLinenumberEnd: 288
    functionName: zcgf_free
    functionSourceFile: /src/gpac/src/utils/zutil.c
    functionUses: 0
    functionsReached:
    - fargf_free
    - Assert
    linkageType: ''
    returnType: void
    signature: void zcgf_free(voidpf opaque, voidpf ptr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _halloc
      Src: /src/gpac/src/utils/zutil.c:306,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - opaque
    - items
    - size
    argTypes:
    - voidpf
    - unsigned
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 307
    functionName: zcalloc
    functionSourceFile: /src/gpac/src/utils/zutil.c
    functionUses: 0
    functionsReached:
    - _halloc
    linkageType: ''
    returnType: voidpf
    signature: voidpf zcalloc (voidpf opaque, unsigned items, unsigned size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _hgf_free
      Src: /src/gpac/src/utils/zutil.c:312,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - opaque
    - ptr
    argTypes:
    - voidpf
    - voidpf
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 309
    functionDepth: 0
    functionLinenumber: 309
    functionLinenumberEnd: 313
    functionName: zcgf_free
    functionSourceFile: /src/gpac/src/utils/zutil.c
    functionUses: 0
    functionsReached:
    - _hgf_free
    linkageType: ''
    returnType: void
    signature: void zcgf_free(voidpf opaque, voidpf ptr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/token.c:31,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - TestChar
    - TestSet
    argTypes:
    - char
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 36
    functionName: gf_tok_is_char_in_set
    functionSourceFile: /src/gpac/src/utils/token.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gf_tok_is_char_in_set(const char TestChar, const char *TestSet)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/token.c:45,1
    - Dst: gf_tok_is_char_in_set
      Src: /src/gpac/src/utils/token.c:47,1
    - Dst: gf_tok_is_char_in_set
      Src: /src/gpac/src/utils/token.c:53,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 5
    argNames:
    - Buffer
    - Start
    - Separator
    - Container
    - ContainerSize
    argTypes:
    - char*
    - s32
    - char*
    - char*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 63
    functionName: gf_token_get
    functionSourceFile: /src/gpac/src/utils/token.c
    functionUses: 9
    functionsReached:
    - gf_tok_is_char_in_set
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_token_get(const char *Buffer, s32 Start,  const char *Separator,  char
      *Container, s32 ContainerSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_token_get
      Src: /src/gpac/src/utils/token.c:69,1
    - Dst: strlen
      Src: /src/gpac/src/utils/token.c:72,1
    - Dst: strchr
      Src: /src/gpac/src/utils/token.c:73,1
    - Dst: strchr
      Src: /src/gpac/src/utils/token.c:74,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 6
    argNames:
    - Buffer
    - Start
    - Separator
    - strip_set
    - Container
    - ContainerSize
    argTypes:
    - char*
    - s32
    - char*
    - char*
    - char*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 84
    functionName: gf_token_get_strip
    functionSourceFile: /src/gpac/src/utils/token.c
    functionUses: 1
    functionsReached:
    - strchr
    - strlen
    - gf_token_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_token_get_strip(const char *Buffer, s32 Start, const char
      *Separator, const char *strip_set, char *Container, s32 ContainerSize)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_token_find
      Src: /src/gpac/src/utils/token.c:96,1
    - Dst: gf_token_find
      Src: /src/gpac/src/utils/token.c:98,1
    - Dst: gf_token_find
      Src: /src/gpac/src/utils/token.c:99,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/token.c:106,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 5
    argNames:
    - Buffer
    - Start
    - Size
    - LineBuffer
    - LineBufferSize
    argTypes:
    - char*
    - u32
    - u32
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 109
    functionName: gf_token_get_line
    functionSourceFile: /src/gpac/src/utils/token.c
    functionUses: 4
    functionsReached:
    - memcpy
    - gf_token_find
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_token_get_line(const char *Buffer, u32 Start, u32 Size,
      char *LineBuffer, u32 LineBufferSize)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/token.c:119,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 4
    argNames:
    - Buffer
    - Start
    - Size
    - Pattern
    argTypes:
    - char*
    - u32
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 135
    functionName: gf_token_find
    functionSourceFile: /src/gpac/src/utils/token.c
    functionUses: 2
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_token_find(const char *Buffer, u32 Start, u32 Size, const
      char *Pattern)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/token.c:142,1
    - Dst: strstr
      Src: /src/gpac/src/utils/token.c:144,1
    - Dst: strchr
      Src: /src/gpac/src/utils/token.c:148,1
    - Dst: strchr
      Src: /src/gpac/src/utils/token.c:151,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 3
    argNames:
    - in_str
    - word
    - charsep
    argTypes:
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 156
    functionName: gf_token_find_word
    functionSourceFile: /src/gpac/src/utils/token.c
    functionUses: 1
    functionsReached:
    - strchr
    - strlen
    - strstr
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_token_find_word(const char *in_str, const char *word,
      char *charsep)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _value
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 366
    functionDepth: 0
    functionLinenumber: 366
    functionLinenumberEnd: 372
    functionName: PUSH_HDR
    functionSourceFile: /src/gpac/src/utils/downloader.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PUSH_HDR(_name, _value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _e
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 427
      start: 418
    functionDepth: 0
    functionLinenumber: 418
    functionLinenumberEnd: 427
    functionName: SET_LAST_ERR
    functionSourceFile: /src/gpac/src/utils/downloader.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_LAST_ERR(_e)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _e
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 429
    functionDepth: 0
    functionLinenumber: 429
    functionLinenumberEnd: 430
    functionName: SET_LAST_ERR
    functionSourceFile: /src/gpac/src/utils/downloader.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_LAST_ERR(_e)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader_emscripten.c:43,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/downloader_emscripten.c:46,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/utils/downloader_emscripten.c:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_DownloadFilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 49
    functionName: gf_dm_new
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 2
    functionsReached:
    - gf_list_new
    - gf_mx_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_DownloadManager
    signature: GF_DownloadManager *gf_dm_new(GF_DownloadFilterSession *fsess)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/downloader_emscripten.c:53,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/utils/downloader_emscripten.c:54,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_emscripten.c:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - dm
    argTypes:
    - GF_DownloadManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 56
    functionName: gf_dm_del
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_list_del
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void gf_dm_del(GF_DownloadManager *dm)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dm
    argTypes:
    - GF_DownloadManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: gf_dm_get_global_rate
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_dm_get_global_rate(GF_DownloadManager *dm)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - dm
    - rate_in_bits_per_sec
    argTypes:
    - GF_DownloadManager*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: gf_dm_set_data_rate
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_dm_set_data_rate(GF_DownloadManager *dm, u32 rate_in_bits_per_sec)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_emscripten.c:126,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_emscripten.c:128,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - _hdrs
    - nb_hdrs
    argTypes:
    - char***
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 132
    functionName: clear_headers
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void clear_headers(char ***_hdrs, u32 *nb_hdrs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_emscripten.c:137,1
    - Dst: gf_blob_unregister
      Src: /src/gpac/src/utils/downloader_emscripten.c:138,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_emscripten.c:139,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_emscripten.c:140,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_emscripten.c:141,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_emscripten.c:142,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_emscripten.c:143,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - b
    argTypes:
    - GF_CacheBlob*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 144
    functionName: cache_blob_del
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_blob_unregister
    linkageType: ''
    returnType: void
    signature: void cache_blob_del(GF_CacheBlob *b)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: clear_headers
      Src: /src/gpac/src/utils/downloader_emscripten.c:149,1
    - Dst: clear_headers
      Src: /src/gpac/src/utils/downloader_emscripten.c:150,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_emscripten.c:151,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_emscripten.c:157,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_emscripten.c:159,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 172
    functionName: gf_dm_sess_reset
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached:
    - gf_free
    - clear_headers
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_reset(GF_DownloadSession *sess)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: cache_blob_del
      Src: /src/gpac/src/utils/downloader_emscripten.c:202,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/downloader_emscripten.c:205,1
    - Dst: cache_blob_del
      Src: /src/gpac/src/utils/downloader_emscripten.c:206,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/downloader_emscripten.c:210,1
    - Dst: cache_blob_del
      Src: /src/gpac/src/utils/downloader_emscripten.c:211,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_emscripten.c:217,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_emscripten.c:219,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader_emscripten.c:220,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader_emscripten.c:239,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/downloader_emscripten.c:241,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/downloader_emscripten.c:243,1
    - Dst: gf_blob_register
      Src: /src/gpac/src/utils/downloader_emscripten.c:244,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_emscripten.c:247,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_emscripten.c:259,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 59
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 198
    functionDepth: 2
    functionLinenumber: 198
    functionLinenumberEnd: 261
    functionName: gf_dm_setup_cache
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_new
    - gf_strdup
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_count
    - gf_blob_register
    - strcmp
    - cache_blob_del
    - gf_list_del_item
    - gf_list_add
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dm_setup_cache(GF_DownloadSession *sess)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: fs_fetch_setup
      Src: /src/gpac/src/utils/downloader_emscripten.c:272,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_emscripten.c:274,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_emscripten.c:278,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader_emscripten.c:283,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_emscripten.c:289,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_emscripten.c:291,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/downloader_emscripten.c:298,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/downloader_emscripten.c:303,1
    - Dst: memset
      Src: /src/gpac/src/utils/downloader_emscripten.c:307,1
    - Dst: GF_DownloadSession*::user_io
      Src: /src/gpac/src/utils/downloader_emscripten.c:309,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/downloader_emscripten.c:310,1
    - Dst: GF_DownloadSession*::user_io
      Src: /src/gpac/src/utils/downloader_emscripten.c:316,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/downloader_emscripten.c:319,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_emscripten.c:322,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_emscripten.c:325,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_emscripten.c:326,1
    - Dst: memset
      Src: /src/gpac/src/utils/downloader_emscripten.c:330,1
    - Dst: GF_DownloadSession*::user_io
      Src: /src/gpac/src/utils/downloader_emscripten.c:332,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/downloader_emscripten.c:336,1
    - Dst: gf_dm_sess_reset
      Src: /src/gpac/src/utils/downloader_emscripten.c:338,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/downloader_emscripten.c:339,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_emscripten.c:341,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_emscripten.c:344,1
    - Dst: gf_dm_setup_cache
      Src: /src/gpac/src/utils/downloader_emscripten.c:348,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/utils/downloader_emscripten.c:350,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_emscripten.c:354,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/downloader_emscripten.c:355,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_emscripten.c:356,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 90
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 263
    functionDepth: 3
    functionLinenumber: 263
    functionLinenumberEnd: 363
    functionName: "GF_DownloadSession *gf_dm_sess_new(GF_DownloadManager *dm, const
      char *url, u32 dl_flags,\n                                   gf_dm_user_io user_io,\n
      \                                  void *usr_cbk,\n                                   GF_Err
      *e)"
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_DownloadSession*::user_io
    - GF_SAFEALLOC
    - strcpy
    - memset
    - gf_dm_sess_del
    - gf_realloc
    - gf_strdup
    - gf_list_new
    - fs_fetch_setup
    - memcpy
    - gf_list_add
    - gf_mx_p
    - GF_LOG
    - gf_dm_sess_reset
    - gf_mx_v
    - gf_malloc
    - gf_list_del
    - gf_dm_setup_cache
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT GF_DownloadSession *gf_dm_sess_new(GF_DownloadManager *dm,
      const char *url, u32 dl_flags,\n                                   gf_dm_user_io
      user_io,\n                                   void *usr_cbk,\n                                   GF_Err
      *e)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: clear_headers
      Src: /src/gpac/src/utils/downloader_emscripten.c:376,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 365
    functionDepth: 1
    functionLinenumber: 365
    functionLinenumberEnd: 378
    functionName: gf_dm_sess_abort
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 1
    functionsReached:
    - clear_headers
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_abort(GF_DownloadSession * sess)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_reset
      Src: /src/gpac/src/utils/downloader_emscripten.c:386,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_emscripten.c:387,1
    - Dst: cache_blob_del
      Src: /src/gpac/src/utils/downloader_emscripten.c:388,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/utils/downloader_emscripten.c:388,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/downloader_emscripten.c:390,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_emscripten.c:392,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/downloader_emscripten.c:393,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_emscripten.c:394,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_emscripten.c:396,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 380
    functionDepth: 2
    functionLinenumber: 380
    functionLinenumberEnd: 397
    functionName: gf_dm_sess_del
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 7
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_list_pop_back
    - gf_dm_sess_reset
    - gf_list_count
    - gf_mx_v
    - cache_blob_del
    - gf_list_del_item
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_del(GF_DownloadSession *sess)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 399
    functionDepth: 0
    functionLinenumber: 399
    functionLinenumberEnd: 403
    functionName: gf_dm_sess_get_cache_name
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_dm_sess_get_cache_name(GF_DownloadSession *sess)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - sess
    - force_keep
    argTypes:
    - GF_DownloadSession*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 405
    functionDepth: 0
    functionLinenumber: 405
    functionLinenumberEnd: 415
    functionName: gf_dm_sess_force_memory_mode
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_force_memory_mode(GF_DownloadSession *sess, u32 force_keep)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_reset
      Src: /src/gpac/src/utils/downloader_emscripten.c:419,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_emscripten.c:420,1
    - Dst: gf_dm_setup_cache
      Src: /src/gpac/src/utils/downloader_emscripten.c:425,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - sess
    - url
    - allow_direct_reuse
    argTypes:
    - GF_DownloadSession*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 417
    functionDepth: 3
    functionLinenumber: 417
    functionLinenumberEnd: 426
    functionName: gf_dm_sess_setup_from_url
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_dm_setup_cache
    - gf_dm_sess_reset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dm_sess_setup_from_url(GF_DownloadSession *sess, const char
      *url, Bool allow_direct_reuse)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_emscripten.c:453,1
    - Dst: gf_dm_setup_cache
      Src: /src/gpac/src/utils/downloader_emscripten.c:454,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 4
    argNames:
    - sess
    - start_range
    - end_range
    - discontinue_cache
    argTypes:
    - GF_DownloadSession*
    - u64
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 461
      start: 428
    functionDepth: 3
    functionLinenumber: 428
    functionLinenumberEnd: 461
    functionName: gf_dm_sess_set_range
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_dm_setup_cache
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dm_sess_set_range(GF_DownloadSession *sess, u64 start_range,
      u64 end_range, Bool discontinue_cache)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: UTF8ToString
      Src: /src/gpac/src/utils/downloader_emscripten.c:466,1
    - Dst: _get_fetcher
      Src: /src/gpac/src/utils/downloader_emscripten.c:469,1
    - Dst: _fetchers::push
      Src: /src/gpac/src/utils/downloader_emscripten.c:473,1
    - Dst: AbortController::AbortController
      Src: /src/gpac/src/utils/downloader_emscripten.c:476,1
    - Dst: UTF8ToString
      Src: /src/gpac/src/utils/downloader_emscripten.c:479,1
    - Dst: getValue
      Src: /src/gpac/src/utils/downloader_emscripten.c:486,1
    - Dst: UTF8ToString
      Src: /src/gpac/src/utils/downloader_emscripten.c:487,1
    - Dst: getValue
      Src: /src/gpac/src/utils/downloader_emscripten.c:488,1
    - Dst: UTF8ToString
      Src: /src/gpac/src/utils/downloader_emscripten.c:489,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 465
    functionDepth: 0
    functionLinenumber: 465
    functionLinenumberEnd: 496
    functionName: EM_JS
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached:
    - UTF8ToString
    - _get_fetcher
    - AbortController::AbortController
    - _fetchers::push
    - getValue
    linkageType: ''
    returnType: void
    signature: "void EM_JS(int, dm_fetch_init, (int sess, int _url, int _method, int
      _headers, int nb_headers, int req_body, int req_body_size), {\n  let url = _url
      ? UTF8ToString(_url) : null;\n  let ret = 0; // libgpac.OK\n\n  let fetcher
      = libgpac._get_fetcher(sess);\n  if (!fetcher) {\n\tfetcher = {};\n\tfetcher.sess
      = sess;\n\tlibgpac._fetchers.push(fetcher);\n  }\n\n  fetcher._controller =
      new AbortController();\n  let options = {\n\tsignal: fetcher._controller.signal,\n\tmethod:
      _method ? UTF8ToString(_method) : \"GET\",\n\tmode: libgpac.gpac_fetch_mode
      || 'cors',\n  };\n  let mime_type = 'application/octet-stream';\n  options.headers
      = {};\n  if (_headers)"
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 7
    argNames:
    - sess
    - server
    - path
    - total_size
    - bytes_done
    - bytes_per_sec
    - net_status
    argTypes:
    - GF_DownloadSession*
    - char**
    - char**
    - u64*
    - u64*
    - u32*
    - GF_NetIOStatus*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 700
      start: 692
    functionDepth: 0
    functionLinenumber: 692
    functionLinenumberEnd: 700
    functionName: gf_dm_sess_get_stats
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dm_sess_get_stats(GF_DownloadSession * sess, const char **server,
      const char **path, u64 *total_size, u64 *bytes_done, u32 *bytes_per_sec, GF_NetIOStatus
      *net_status)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 705
      start: 702
    functionDepth: 0
    functionLinenumber: 702
    functionLinenumberEnd: 705
    functionName: gf_dm_sess_mime_type
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_dm_sess_mime_type(GF_DownloadSession * sess)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 4
    argNames:
    - sess
    - idx
    - hdr_name
    - hdr_val
    argTypes:
    - GF_DownloadSession*
    - u32*
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 718
      start: 707
    functionDepth: 0
    functionLinenumber: 707
    functionLinenumberEnd: 718
    functionName: gf_dm_sess_enum_headers
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dm_sess_enum_headers(GF_DownloadSession *sess, u32 *idx,
      const char **hdr_name, const char **hdr_val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/downloader_emscripten.c:726,1
    - Dst: cache_blob_del
      Src: /src/gpac/src/utils/downloader_emscripten.c:727,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - sess
    - url
    - force
    argTypes:
    - GF_DownloadSession*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 720
    functionDepth: 2
    functionLinenumber: 720
    functionLinenumberEnd: 730
    functionName: gf_dm_delete_cached_file_entry_session
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached:
    - cache_blob_del
    - gf_list_del_item
    linkageType: ''
    returnType: void
    signature: void gf_dm_delete_cached_file_entry_session(const GF_DownloadSession
      * sess, const char * url, Bool force)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 736
      start: 732
    functionDepth: 0
    functionLinenumber: 732
    functionLinenumberEnd: 736
    functionName: gf_dm_sess_process_headers
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dm_sess_process_headers(GF_DownloadSession *sess)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/utils/downloader_emscripten.c:744,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/downloader_emscripten.c:745,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/downloader_emscripten.c:748,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_emscripten.c:751,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_emscripten.c:752,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/downloader_emscripten.c:753,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_emscripten.c:757,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 3
    argNames:
    - sess
    - hdr
    - value
    argTypes:
    - GF_DownloadSession*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 760
      start: 738
    functionDepth: 0
    functionLinenumber: 738
    functionLinenumberEnd: 760
    functionName: gf_dm_sess_push_header
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_realloc
    - sscanf
    - stricmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_sess_push_header(GF_DownloadSession *sess, const char
      *hdr, const char *value)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_emscripten.c:782,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_emscripten.c:783,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 33
    argCount: 3
    argNames:
    - sess
    - rsp_code
    - final_url
    argTypes:
    - GF_DownloadSession*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 785
      start: 762
    functionDepth: 0
    functionLinenumber: 762
    functionLinenumberEnd: 785
    functionName: gf_dm_sess_async_reply
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_sess_async_reply(GF_DownloadSession *sess, int rsp_code,
      const char *final_url)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_fetch_data
      Src: /src/gpac/src/utils/downloader_emscripten.c:792,1
    - Dst: memset
      Src: /src/gpac/src/utils/downloader_emscripten.c:797,1
    - Dst: GF_DownloadSession*::user_io
      Src: /src/gpac/src/utils/downloader_emscripten.c:808,1
    - Dst: memset
      Src: /src/gpac/src/utils/downloader_emscripten.c:813,1
    - Dst: GF_DownloadSession*::user_io
      Src: /src/gpac/src/utils/downloader_emscripten.c:818,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 823
      start: 787
    functionDepth: 1
    functionLinenumber: 787
    functionLinenumberEnd: 823
    functionName: gf_dm_sess_fetch_once
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached:
    - memset
    - GF_DownloadSession*::user_io
    - gf_dm_sess_fetch_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dm_sess_fetch_once(GF_DownloadSession *sess)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_emscripten.c:830,1
    - Dst: gf_dm_sess_fetch_once
      Src: /src/gpac/src/utils/downloader_emscripten.c:836,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/utils/downloader_emscripten.c:847,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 3
    argNames:
    - fsess
    - callback
    - reschedule_ms
    argTypes:
    - GF_FilterSession*
    - void*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 850
      start: 825
    functionDepth: 2
    functionLinenumber: 825
    functionLinenumberEnd: 850
    functionName: gf_dm_session_task
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_dm_sess_fetch_once
    - gf_dm_sess_del
    linkageType: ''
    returnType: Bool
    signature: Bool gf_dm_session_task(GF_FilterSession *fsess, void *callback, u32
      *reschedule_ms)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_fetch_once
      Src: /src/gpac/src/utils/downloader_emscripten.c:859,1
    - Dst: gf_fs_post_user_task
      Src: /src/gpac/src/utils/downloader_emscripten.c:864,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 865
      start: 852
    functionDepth: 2
    functionLinenumber: 852
    functionLinenumberEnd: 865
    functionName: gf_dm_sess_process
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 4
    functionsReached:
    - gf_dm_sess_fetch_once
    - gf_fs_post_user_task
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dm_sess_process(GF_DownloadSession *sess)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 872
      start: 868
    functionDepth: 0
    functionLinenumber: 868
    functionLinenumberEnd: 872
    functionName: gf_dm_sess_get_resource_name
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_dm_sess_get_resource_name(GF_DownloadSession *sess)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/utils/downloader_emscripten.c:880,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - sess
    - name
    argTypes:
    - GF_DownloadSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 883
      start: 874
    functionDepth: 0
    functionLinenumber: 874
    functionLinenumberEnd: 883
    functionName: gf_dm_sess_get_header
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached:
    - stricmp
    linkageType: ''
    returnType: char
    signature: char *gf_dm_sess_get_header(GF_DownloadSession *sess, const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 889
      start: 885
    functionDepth: 0
    functionLinenumber: 885
    functionLinenumberEnd: 889
    functionName: gf_dm_sess_get_utc_start
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 gf_dm_sess_get_utc_start(GF_DownloadSession * sess)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/downloader_emscripten.c:894,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dm
    argTypes:
    - GF_DownloadManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 895
      start: 892
    functionDepth: 1
    functionLinenumber: 892
    functionLinenumberEnd: 895
    functionName: gf_dm_get_data_rate
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 2
    functionsReached:
    - gf_opts_get_int
    linkageType: ''
    returnType: u32
    signature: u32 gf_dm_get_data_rate(GF_DownloadManager *dm)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_force_memory_mode
      Src: /src/gpac/src/utils/downloader_emscripten.c:901,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 897
    functionDepth: 0
    functionLinenumber: 897
    functionLinenumberEnd: 902
    functionName: gf_dm_sess_detach_async
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_force_memory_mode
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_detach_async(GF_DownloadSession *sess)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - sess
    - netcap_id
    argTypes:
    - GF_DownloadSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 906
      start: 903
    functionDepth: 0
    functionLinenumber: 903
    functionLinenumberEnd: 906
    functionName: gf_dm_sess_set_netcap_id
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_set_netcap_id(GF_DownloadSession *sess, const char
      *netcap_id)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - sess
    - max_rate
    argTypes:
    - GF_DownloadSession*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 910
      start: 908
    functionDepth: 0
    functionLinenumber: 908
    functionLinenumberEnd: 910
    functionName: gf_dm_sess_set_max_rate
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_set_max_rate(GF_DownloadSession *sess, u32 max_rate)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 915
      start: 912
    functionDepth: 0
    functionLinenumber: 912
    functionLinenumberEnd: 915
    functionName: gf_dm_sess_get_max_rate
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_dm_sess_get_max_rate(GF_DownloadSession *sess)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 919
      start: 916
    functionDepth: 0
    functionLinenumber: 916
    functionLinenumberEnd: 919
    functionName: gf_dm_sess_is_regulated
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_dm_sess_is_regulated(GF_DownloadSession *sess)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 923
      start: 920
    functionDepth: 0
    functionLinenumber: 920
    functionLinenumberEnd: 923
    functionName: gf_dm_sess_get_resource_size
    functionSourceFile: /src/gpac/src/utils/downloader_emscripten.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_dm_sess_get_resource_size(GF_DownloadSession * sess)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 4
    argNames:
    - _in
    - inSize
    - _out
    - outSize
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 65
    functionName: gf_base64_encode
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_base64_encode(const u8 *_in, u32 inSize, u8 *_out, u32
      outSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 79
    functionName: char64
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: char64(c)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 15
    argCount: 4
    argNames:
    - in
    - size
    - pos
    - out
    argTypes:
    - char*
    - u32
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 103
    functionName: load_block
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 load_block(char *in, u32 size, u32 pos, char *out)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: load_block
      Src: /src/gpac/src/utils/base_encoding.c:115,1
    - Dst: char64
      Src: /src/gpac/src/utils/base_encoding.c:116,1
    - Dst: char64
      Src: /src/gpac/src/utils/base_encoding.c:118,1
    - Dst: char64
      Src: /src/gpac/src/utils/base_encoding.c:120,1
    - Dst: char64
      Src: /src/gpac/src/utils/base_encoding.c:122,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 4
    argNames:
    - in_buf
    - inSize
    - out
    - outSize
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 139
    functionName: gf_base64_decode
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 5
    functionsReached:
    - load_block
    - char64
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_base64_decode(u8 *in_buf, u32 inSize, u8 *out, u32 outSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - _in
    - inSize
    - _out
    - outSize
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 157
    functionName: gf_base16_encode
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_base16_encode(u8 *_in, u32 inSize, u8 *_out, u32 outSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - nb
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 160
    functionName: char16
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: char16(nb)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: char16
      Src: /src/gpac/src/utils/base_encoding.c:171,1
    - Dst: char16
      Src: /src/gpac/src/utils/base_encoding.c:172,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - in
    - inSize
    - out
    - outSize
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 178
    functionName: gf_base16_decode
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 2
    functionsReached:
    - char16
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_base16_decode(u8 *in, u32 inSize, u8 *out, u32 outSize)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/base_encoding.c:192,1
    - Dst: deflateInit2
      Src: /src/gpac/src/utils/base_encoding.c:202,1
    - Dst: deflateInit
      Src: /src/gpac/src/utils/base_encoding.c:204,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/base_encoding.c:208,1
    - Dst: deflate
      Src: /src/gpac/src/utils/base_encoding.c:212,1
    - Dst: deflateEnd
      Src: /src/gpac/src/utils/base_encoding.c:214,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/base_encoding.c:215,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/base_encoding.c:220,1
    - Dst: deflateEnd
      Src: /src/gpac/src/utils/base_encoding.c:221,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/base_encoding.c:225,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/base_encoding.c:234,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/base_encoding.c:237,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/base_encoding.c:239,1
    - Dst: deflateEnd
      Src: /src/gpac/src/utils/base_encoding.c:241,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 44
    argCount: 7
    argNames:
    - data
    - data_len
    - max_size
    - data_offset
    - skip_if_larger
    - out_comp_data
    - use_gz
    argTypes:
    - u8**
    - u32
    - u32*
    - u8
    - Bool
    - u8**
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 243
    functionName: gf_gz_compress_payload_ex
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 2
    functionsReached:
    - gf_free
    - deflateEnd
    - GF_LOG
    - memcpy
    - deflateInit2
    - deflateInit
    - deflate
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_gz_compress_payload_ex(u8 **data, u32 data_len, u32 *max_size,
      u8 data_offset, Bool skip_if_larger, u8 **out_comp_data, Bool use_gz)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_gz_compress_payload_ex
      Src: /src/gpac/src/utils/base_encoding.c:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - data
    - data_len
    - max_size
    argTypes:
    - u8**
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 245
    functionDepth: 2
    functionLinenumber: 245
    functionLinenumberEnd: 249
    functionName: gf_gz_compress_payload
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 2
    functionsReached:
    - gf_gz_compress_payload_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_gz_compress_payload(u8 **data, u32 data_len, u32 *max_size)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/base_encoding.c:261,1
    - Dst: inflateInit2
      Src: /src/gpac/src/utils/base_encoding.c:277,1
    - Dst: inflateInit
      Src: /src/gpac/src/utils/base_encoding.c:279,1
    - Dst: inflate
      Src: /src/gpac/src/utils/base_encoding.c:284,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/base_encoding.c:295,1
    - Dst: MIN
      Src: /src/gpac/src/utils/base_encoding.c:300,1
    - Dst: inflateEnd
      Src: /src/gpac/src/utils/base_encoding.c:301,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/base_encoding.c:307,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 50
    argCount: 5
    argNames:
    - data
    - data_len
    - uncompressed_data
    - out_size
    - use_gz
    argTypes:
    - u8*
    - u32
    - u8**
    - u32*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 312
    functionName: gf_gz_decompress_payload_ex
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 4
    functionsReached:
    - gf_free
    - inflateEnd
    - inflateInit2
    - MIN
    - inflate
    - inflateInit
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_gz_decompress_payload_ex(u8 *data, u32 data_len, u8 **uncompressed_data,
      u32 *out_size, Bool use_gz)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_gz_decompress_payload_ex
      Src: /src/gpac/src/utils/base_encoding.c:316,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - data
    - data_len
    - uncompressed_data
    - out_size
    argTypes:
    - u8*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 313
    functionDepth: 2
    functionLinenumber: 313
    functionLinenumberEnd: 317
    functionName: gf_gz_decompress_payload
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 1
    functionsReached:
    - gf_gz_decompress_payload_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_gz_decompress_payload(u8 *data, u32 data_len, u8 **uncompressed_data,
      u32 *out_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - data
    - data_len
    - uncompressed_data
    - out_size
    argTypes:
    - u8*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 320
    functionDepth: 0
    functionLinenumber: 320
    functionLinenumberEnd: 325
    functionName: gf_gz_decompress_payload
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_gz_decompress_payload(u8 *data, u32 data_len, u8 **uncompressed_data,
      u32 *out_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - data
    - data_len
    - uncompressed_data
    - out_size
    - no_hdr
    argTypes:
    - u8*
    - u32
    - u8**
    - u32*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 326
    functionDepth: 0
    functionLinenumber: 326
    functionLinenumberEnd: 331
    functionName: gf_gz_decompress_payload_ex
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_gz_decompress_payload_ex(u8 *data, u32 data_len, u8 **uncompressed_data,
      u32 *out_size, Bool no_hdr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - data
    - data_len
    - max_size
    argTypes:
    - u8**
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 332
    functionDepth: 0
    functionLinenumber: 332
    functionLinenumberEnd: 337
    functionName: gf_gz_compress_payload
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_gz_compress_payload(u8 **data, u32 data_len, u32 *max_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - data
    - data_len
    - max_size
    - data_offset
    - skip_if_larger
    - out_comp_data
    - no_header
    argTypes:
    - u8**
    - u32
    - u32*
    - u8
    - Bool
    - u8**
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 342
    functionName: gf_gz_compress_payload_ex
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_gz_compress_payload_ex(u8 **data, u32 data_len, u32 *max_size,
      u8 data_offset, Bool skip_if_larger, u8 **out_comp_data, Bool no_header)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: lzma_lzma_preset
      Src: /src/gpac/src/utils/base_encoding.c:359,1
    - Dst: lzma_stream_encoder
      Src: /src/gpac/src/utils/base_encoding.c:365,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/base_encoding.c:370,1
    - Dst: lzma_code
      Src: /src/gpac/src/utils/base_encoding.c:378,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/base_encoding.c:380,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/base_encoding.c:386,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/base_encoding.c:391,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/base_encoding.c:394,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/base_encoding.c:396,1
    - Dst: lzma_end
      Src: /src/gpac/src/utils/base_encoding.c:398,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 3
    argNames:
    - data
    - data_len
    - max_size
    argTypes:
    - u8**
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 352
    functionDepth: 1
    functionLinenumber: 352
    functionLinenumberEnd: 400
    functionName: gf_lz_compress_payload
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 1
    functionsReached:
    - gf_free
    - lzma_lzma_preset
    - GF_LOG
    - memcpy
    - lzma_stream_encoder
    - lzma_code
    - lzma_end
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_lz_compress_payload(u8 **data, u32 data_len, u32 *max_size)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: lzma_stream_decoder
      Src: /src/gpac/src/utils/base_encoding.c:406,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/base_encoding.c:413,1
    - Dst: lzma_code
      Src: /src/gpac/src/utils/base_encoding.c:431,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/base_encoding.c:438,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/base_encoding.c:441,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/base_encoding.c:449,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/base_encoding.c:450,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/base_encoding.c:451,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/base_encoding.c:458,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 43
    argCount: 4
    argNames:
    - data
    - data_len
    - uncompressed_data
    - out_size
    argTypes:
    - u8*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 402
    functionDepth: 1
    functionLinenumber: 402
    functionLinenumberEnd: 460
    functionName: gf_lz_decompress_payload
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 1
    functionsReached:
    - gf_free
    - memcpy
    - GF_LOG
    - lzma_code
    - lzma_stream_decoder
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_lz_decompress_payload(u8 *data, u32 data_len, u8 **uncompressed_data,
      u32 *out_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - data
    - data_len
    - uncompressed_data
    - out_size
    argTypes:
    - u8*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 462
    functionDepth: 0
    functionLinenumber: 462
    functionLinenumberEnd: 467
    functionName: gf_lz_decompress_payload
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_lz_decompress_payload(u8 *data, u32 data_len, u8 **uncompressed_data,
      u32 *out_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - data
    - data_len
    - max_size
    argTypes:
    - u8**
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 468
    functionDepth: 0
    functionLinenumber: 468
    functionLinenumberEnd: 473
    functionName: gf_lz_compress_payload
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_lz_compress_payload(u8 **data, u32 data_len, u32 *max_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _fmt
    - ','
    - _value
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 36
    functionName: XML_SCAN_INT
    functionSourceFile: /src/gpac/src/utils/xml_bin_custom.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XML_SCAN_INT(_fmt, _value)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_bin_custom.c:45,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:46,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/xml_bin_custom.c:48,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:49,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:52,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:54,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:55,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:57,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:60,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_bin_custom.c:64,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:66,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 2
    argNames:
    - root
    - bs
    argTypes:
    - GF_XMLNode*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 68
    functionName: xml_scte35_parse_splice_time
    functionSourceFile: /src/gpac/src/utils/xml_bin_custom.c
    functionUses: 0
    functionsReached:
    - sscanf
    - GF_LOG
    - gf_bs_write_int
    - strcmp
    - gf_bs_write_long_int
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void xml_scte35_parse_splice_time(GF_XMLNode *root, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_bin_custom.c:76,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:77,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/xml_bin_custom.c:79,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:80,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:82,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:83,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:84,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:86,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_bin_custom.c:90,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:92,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - root
    - bs
    argTypes:
    - GF_XMLNode*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 94
    functionName: xml_scte35_parse_break_duration
    functionSourceFile: /src/gpac/src/utils/xml_bin_custom.c
    functionUses: 0
    functionsReached:
    - sscanf
    - GF_LOG
    - gf_bs_write_int
    - strcmp
    - gf_bs_write_long_int
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void xml_scte35_parse_break_duration(GF_XMLNode *root, GF_BitStream
      *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_bin_custom.c:102,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:103,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_bin_custom.c:106,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:108,1
    - Dst: xml_scte35_parse_splice_time
      Src: /src/gpac/src/utils/xml_bin_custom.c:109,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:111,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - root
    - bs
    argTypes:
    - GF_XMLNode*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 114
    functionName: xml_scte35_parse_time_signal
    functionSourceFile: /src/gpac/src/utils/xml_bin_custom.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_enum
    - strcmp
    - xml_scte35_parse_splice_time
    linkageType: ''
    returnType: void
    signature: void xml_scte35_parse_time_signal(GF_XMLNode *root, GF_BitStream *bs)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/xml_bin_custom.c:118,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/xml_bin_custom.c:119,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:121,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:122,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/xml_bin_custom.c:123,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/xml_bin_custom.c:123,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_bin_custom.c:137,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:138,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:139,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:140,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:141,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:142,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:143,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:144,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:145,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:146,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:147,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:148,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:149,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:150,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:151,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:152,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:153,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:154,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:155,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:156,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:157,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:158,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:159,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:160,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:161,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:162,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:163,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:164,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:165,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:166,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:167,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:168,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:169,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:171,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/xml_bin_custom.c:175,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:177,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:178,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:179,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:181,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:182,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:183,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:185,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:186,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:187,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:188,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:190,1
    - Dst: assert
      Src: /src/gpac/src/utils/xml_bin_custom.c:193,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:195,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:197,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:198,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:199,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:200,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:205,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:208,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:209,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:211,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:212,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:213,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:217,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:218,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_bin_custom.c:222,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:224,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_bin_custom.c:226,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:227,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:228,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:229,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:230,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:239,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:243,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/xml_bin_custom.c:249,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/xml_bin_custom.c:251,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:252,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/xml_bin_custom.c:253,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:254,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/xml_bin_custom.c:255,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 118
    argCount: 2
    argNames:
    - root
    - bs
    argTypes:
    - GF_XMLNode*
    - GF_BitStream*
    assertStmts:
    - condition: (0)
      pos:
        line_end: 192
        line_start: 192
        source_file: /src/gpac/src/utils/xml_bin_custom.c
    constantsTouched: []
    func_position:
      end: 257
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 257
    functionName: xml_scte35_parse_segmentation_descriptor
    functionSourceFile: /src/gpac/src/utils/xml_bin_custom.c
    functionUses: 0
    functionsReached:
    - gf_bs_seek
    - gf_bs_write_long_int
    - GF_LOG
    - gf_bs_write_u16
    - gf_bs_write_int
    - assert
    - gf_bs_get_position
    - gf_list_enum
    - strcmp
    - atoi
    - GF_4CC
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: void
    signature: void xml_scte35_parse_segmentation_descriptor(GF_XMLNode *root, GF_BitStream
      *bs)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_bin_custom.c:267,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:268,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:269,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:270,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:271,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:272,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:273,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:274,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:275,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:276,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:277,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:278,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:279,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:280,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:281,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:283,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_bin_custom.c:287,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:289,1
    - Dst: xml_scte35_parse_splice_time
      Src: /src/gpac/src/utils/xml_bin_custom.c:290,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:291,1
    - Dst: xml_scte35_parse_break_duration
      Src: /src/gpac/src/utils/xml_bin_custom.c:292,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:294,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/xml_bin_custom.c:300,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:301,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:302,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:304,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:305,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:306,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:307,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:308,1
    - Dst: scte35dec_parse_splice_time
      Src: /src/gpac/src/utils/xml_bin_custom.c:311,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:317,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:319,1
    - Dst: scte35dec_parse_splice_time
      Src: /src/gpac/src/utils/xml_bin_custom.c:321,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:328,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:329,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:330,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 73
    argCount: 2
    argNames:
    - root
    - bs
    argTypes:
    - GF_XMLNode*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 259
    functionDepth: 2
    functionLinenumber: 259
    functionLinenumberEnd: 342
    functionName: xml_scte35_parse_splice_insert
    functionSourceFile: /src/gpac/src/utils/xml_bin_custom.c
    functionUses: 0
    functionsReached:
    - xml_scte35_parse_splice_time
    - gf_bs_write_long_int
    - GF_LOG
    - gf_bs_write_int
    - scte35dec_parse_splice_time
    - xml_scte35_parse_break_duration
    - gf_bs_write_u32
    - strcmp
    - atoi
    - gf_bs_read_u8
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void xml_scte35_parse_splice_insert(GF_XMLNode *root, GF_BitStream
      *bs)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_bin_custom.c:354,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:355,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/xml_bin_custom.c:356,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:357,1
    - Dst: XML_SCAN_INT
      Src: /src/gpac/src/utils/xml_bin_custom.c:358,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:359,1
    - Dst: XML_SCAN_INT
      Src: /src/gpac/src/utils/xml_bin_custom.c:360,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:361,1
    - Dst: XML_SCAN_INT
      Src: /src/gpac/src/utils/xml_bin_custom.c:362,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:363,1
    - Dst: XML_SCAN_INT
      Src: /src/gpac/src/utils/xml_bin_custom.c:364,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:366,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:370,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:371,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:372,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:373,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/xml_bin_custom.c:374,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:375,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:377,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:378,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:379,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:380,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:381,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:382,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/xml_bin_custom.c:383,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:384,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_bin_custom.c:394,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:396,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:397,1
    - Dst: xml_scte35_parse_time_signal
      Src: /src/gpac/src/utils/xml_bin_custom.c:398,1
    - Dst: WRITE_CMD_LEN
      Src: /src/gpac/src/utils/xml_bin_custom.c:399,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:401,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/xml_bin_custom.c:402,1
    - Dst: xml_scte35_parse_splice_insert
      Src: /src/gpac/src/utils/xml_bin_custom.c:403,1
    - Dst: WRITE_CMD_LEN
      Src: /src/gpac/src/utils/xml_bin_custom.c:404,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:406,1
    - Dst: xml_scte35_parse_segmentation_descriptor
      Src: /src/gpac/src/utils/xml_bin_custom.c:407,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:410,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/xml_bin_custom.c:416,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/xml_bin_custom.c:418,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/xml_bin_custom.c:419,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/xml_bin_custom.c:420,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/utils/xml_bin_custom.c:427,1
    - Dst: gf_bs_transfer
      Src: /src/gpac/src/utils/xml_bin_custom.c:428,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/utils/xml_bin_custom.c:429,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/xml_bin_custom.c:430,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/utils/xml_bin_custom.c:430,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/xml_bin_custom.c:431,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/utils/xml_bin_custom.c:431,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/utils/xml_bin_custom.c:432,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_bin_custom.c:433,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 65
    argCount: 2
    argNames:
    - root
    - bs
    argTypes:
    - GF_XMLNode*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 344
    functionDepth: 3
    functionLinenumber: 344
    functionLinenumberEnd: 437
    functionName: xml_scte35_parse_splice_info
    functionSourceFile: /src/gpac/src/utils/xml_bin_custom.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - WRITE_CMD_LEN
    - gf_bs_write_u16
    - gf_bs_get_size
    - gf_bs_write_long_int
    - gf_bs_write_u32
    - xml_scte35_parse_segmentation_descriptor
    - snprintf
    - xml_scte35_parse_time_signal
    - gf_bs_get_content
    - gf_crc_32
    - XML_SCAN_INT
    - GF_LOG
    - gf_bs_write_int
    - xml_scte35_parse_splice_insert
    - gf_bs_get_position
    - gf_list_enum
    - gf_bs_seek
    - gf_bs_transfer
    - gf_bs_del
    - strcmp
    - gf_bs_write_u8
    linkageType: ''
    returnType: void
    signature: void xml_scte35_parse_splice_info(GF_XMLNode *root, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 393
    functionName: WRITE_CMD_LEN
    functionSourceFile: /src/gpac/src/utils/xml_bin_custom.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WRITE_CMD_LEN()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_bin_custom.c:444,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:446,1
    - Dst: xml_scte35_parse_splice_info
      Src: /src/gpac/src/utils/xml_bin_custom.c:447,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 2
    argNames:
    - root
    - bs
    argTypes:
    - GF_XMLNode*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 451
      start: 440
    functionDepth: 4
    functionLinenumber: 440
    functionLinenumberEnd: 451
    functionName: xml_scte35_parse
    functionSourceFile: /src/gpac/src/utils/xml_bin_custom.c
    functionUses: 0
    functionsReached:
    - xml_scte35_parse_splice_info
    - gf_list_enum
    - strcmp
    linkageType: ''
    returnType: void
    signature: void xml_scte35_parse(GF_XMLNode *root, GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/utils/xml_bin_custom.c:457,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/utils/xml_bin_custom.c:458,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/utils/xml_bin_custom.c:459,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:460,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/utils/xml_bin_custom.c:461,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - root
    - bs
    argTypes:
    - GF_XMLNode*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 463
      start: 454
    functionDepth: 4
    functionLinenumber: 454
    functionLinenumberEnd: 463
    functionName: xml_emeb_parse
    functionSourceFile: /src/gpac/src/utils/xml_bin_custom.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_size
    - gf_isom_box_del
    - GF_LOG
    - gf_isom_box_write
    - gf_isom_box_new
    linkageType: ''
    returnType: void
    signature: void xml_emeb_parse(GF_XMLNode *root, GF_BitStream *bs)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/utils/xml_bin_custom.c:471,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_bin_custom.c:473,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:474,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/xml_bin_custom.c:475,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:476,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:477,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/xml_bin_custom.c:478,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:479,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:480,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_bin_custom.c:481,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:482,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_bin_custom.c:483,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:484,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/xml_bin_custom.c:485,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:486,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:487,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/xml_bin_custom.c:488,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:489,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:490,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/xml_bin_custom.c:491,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:492,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:493,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:495,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_bin_custom.c:496,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/xml_bin_custom.c:497,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/xml_bin_custom.c:501,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:504,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:505,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:506,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:507,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:509,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/xml_bin_custom.c:513,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/utils/xml_bin_custom.c:514,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/utils/xml_bin_custom.c:515,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:516,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/xml_bin_custom.c:520,1
    - Dst: xml_scte35_parse
      Src: /src/gpac/src/utils/xml_bin_custom.c:521,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/xml_bin_custom.c:522,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/xml_bin_custom.c:524,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/utils/xml_bin_custom.c:527,1
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/utils/xml_bin_custom.c:528,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/xml_bin_custom.c:529,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/utils/xml_bin_custom.c:535,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 64
    argCount: 2
    argNames:
    - root
    - bs
    argTypes:
    - GF_XMLNode*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 537
      start: 466
    functionDepth: 5
    functionLinenumber: 466
    functionLinenumberEnd: 537
    functionName: xml_emib_parse
    functionSourceFile: /src/gpac/src/utils/xml_bin_custom.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_strdup
    - gf_isom_box_size
    - sscanf
    - gf_bs_seek
    - gf_isom_full_box_write
    - gf_isom_box_del
    - GF_LOG
    - xml_scte35_parse
    - gf_isom_box_write
    - gf_bs_get_position
    - strnicmp
    - gf_isom_box_new
    - stricmp
    - gf_list_enum
    - strlen
    linkageType: ''
    returnType: void
    signature: void xml_emib_parse(GF_XMLNode *root, GF_BitStream *bs)
  - BBCount: 71
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_bin_custom.c:556,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:577,1
    - Dst: xml_scte35_parse
      Src: /src/gpac/src/utils/xml_bin_custom.c:578,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:580,1
    - Dst: xml_emeb_parse
      Src: /src/gpac/src/utils/xml_bin_custom.c:581,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:583,1
    - Dst: xml_emib_parse
      Src: /src/gpac/src/utils/xml_bin_custom.c:584,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:586,1
    - Dst: gf_xml_parse_bit_sequence_bs
      Src: /src/gpac/src/utils/xml_bin_custom.c:587,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_bin_custom.c:593,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:594,1
    - Dst: XML_SCAN_INT
      Src: /src/gpac/src/utils/xml_bin_custom.c:595,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:596,1
    - Dst: XML_SCAN_INT
      Src: /src/gpac/src/utils/xml_bin_custom.c:597,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:598,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/xml_bin_custom.c:599,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:601,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/xml_bin_custom.c:602,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:604,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:604,1
    - Dst: XML_SCAN_INT
      Src: /src/gpac/src/utils/xml_bin_custom.c:605,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:607,1
    - Dst: XML_SCAN_INT
      Src: /src/gpac/src/utils/xml_bin_custom.c:608,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:610,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:610,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:613,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:613,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:615,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/xml_bin_custom.c:616,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:618,1
    - Dst: gf_bin128_parse
      Src: /src/gpac/src/utils/xml_bin_custom.c:619,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:621,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:625,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:626,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:627,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:629,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:631,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:632,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:632,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:634,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:635,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:635,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:637,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:639,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:642,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:646,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:647,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:648,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:650,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/utils/xml_bin_custom.c:656,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:668,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_bin_custom.c:674,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:676,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/xml_bin_custom.c:678,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_bin_custom.c:680,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/xml_bin_custom.c:681,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/utils/xml_bin_custom.c:688,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:690,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/xml_bin_custom.c:691,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:693,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_bin_custom.c:694,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_bin_custom.c:698,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_bin_custom.c:700,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:702,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/xml_bin_custom.c:706,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/xml_bin_custom.c:715,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/xml_bin_custom.c:716,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:719,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/xml_bin_custom.c:720,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_bin_custom.c:721,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/utils/xml_bin_custom.c:723,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/utils/xml_bin_custom.c:725,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/utils/xml_bin_custom.c:729,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/utils/xml_bin_custom.c:731,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:733,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:739,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:740,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/utils/xml_bin_custom.c:747,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/xml_bin_custom.c:748,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_bin_custom.c:749,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/xml_bin_custom.c:751,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:755,1
    - Dst: gf_fsize
      Src: /src/gpac/src/utils/xml_bin_custom.c:761,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/xml_bin_custom.c:767,1
    - Dst: gf_fread
      Src: /src/gpac/src/utils/xml_bin_custom.c:771,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/xml_bin_custom.c:773,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/xml_bin_custom.c:778,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/xml_bin_custom.c:781,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/xml_bin_custom.c:783,1
    - Dst: assert
      Src: /src/gpac/src/utils/xml_bin_custom.c:789,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/utils/xml_bin_custom.c:790,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/utils/xml_bin_custom.c:791,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/xml_bin_custom.c:797,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/utils/xml_bin_custom.c:802,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:806,1
    - Dst: gf_bs_write_u64_le
      Src: /src/gpac/src/utils/xml_bin_custom.c:809,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/utils/xml_bin_custom.c:810,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/utils/xml_bin_custom.c:811,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:813,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/xml_bin_custom.c:816,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_bin_custom.c:817,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_bin_custom.c:818,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:826,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/utils/xml_bin_custom.c:829,1
    CyclomaticComplexity: 104
    EdgeCount: 104
    ICount: 278
    argCount: 4
    argNames:
    - bsroot
    - parent_url
    - base_media_file
    - bs_orig
    argTypes:
    - GF_XMLNode*
    - char*
    - char*
    - GF_BitStream*
    assertStmts:
    - condition: (bs != bs_orig)
      pos:
        line_end: 788
        line_start: 788
        source_file: /src/gpac/src/utils/xml_bin_custom.c
    constantsTouched: []
    func_position:
      end: 832
      start: 545
    functionDepth: 6
    functionLinenumber: 545
    functionLinenumberEnd: 832
    functionName: gf_xml_parse_bit_sequence_bs
    functionSourceFile: /src/gpac/src/utils/xml_bin_custom.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_bs_new
    - gf_fopen
    - atoi
    - gf_bs_write_u64_le
    - gf_bs_write_long_int
    - gf_bs_write_u32_le
    - gf_bin128_parse
    - gf_bs_write_float
    - gf_fseek
    - gf_bs_get_content
    - xml_scte35_parse
    - sprintf
    - gf_fsize
    - gf_xml_parse_bit_sequence_bs
    - stricmp
    - xml_emib_parse
    - XML_SCAN_INT
    - gf_bs_write_double
    - sscanf
    - GF_LOG
    - gf_bs_write_int
    - gf_fread
    - assert
    - gf_bs_write_data
    - strnicmp
    - gf_list_enum
    - gf_malloc
    - strlen
    - gf_fclose
    - gf_base64_decode
    - gf_bs_write_u16_le
    - gf_url_concatenate
    - gf_bs_del
    - gf_base64_encode
    - strcmp
    - xml_emeb_parse
    - GF_4CC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_parse_bit_sequence_bs(GF_XMLNode *bsroot, const char
      *parent_url, const char *base_media_file, GF_BitStream *bs_orig)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/utils/xml_bin_custom.c:838,1
    - Dst: gf_xml_parse_bit_sequence_bs
      Src: /src/gpac/src/utils/xml_bin_custom.c:841,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/utils/xml_bin_custom.c:843,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/utils/xml_bin_custom.c:844,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/utils/xml_bin_custom.c:845,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - bsroot
    - parent_url
    - data
    - data_size
    argTypes:
    - GF_XMLNode*
    - char*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 835
    functionDepth: 7
    functionLinenumber: 835
    functionLinenumberEnd: 847
    functionName: gf_xml_parse_bit_sequence
    functionSourceFile: /src/gpac/src/utils/xml_bin_custom.c
    functionUses: 2
    functionsReached:
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_align
    - gf_bs_del
    - gf_xml_parse_bit_sequence_bs
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_parse_bit_sequence(GF_XMLNode *bsroot, const char
      *parent_url, u8 **data, u32 *data_size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/utils/error.c:41,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/utils/error.c:54,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/utils/error.c:60,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/error.c:65,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 32
    argCount: 2
    argNames:
    - type
    - szType
    argTypes:
    - u32
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 73
    functionName: gf_4cc_to_str_safe
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 3
    functionsReached:
    - strcpy
    - sprintf
    - gf_utf8_is_legal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_4cc_to_str_safe(u32 type, char szType[GF_4CC_MSIZE])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: safe_int_fetch_add
      Src: /src/gpac/src/utils/error.c:82,1
    - Dst: gf_4cc_to_str_safe
      Src: /src/gpac/src/utils/error.c:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 76
    functionDepth: 2
    functionLinenumber: 76
    functionLinenumberEnd: 90
    functionName: gf_4cc_to_str
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 111
    functionsReached:
    - gf_4cc_to_str_safe
    - safe_int_fetch_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_4cc_to_str(u32 type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:97,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/error.c:97,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/error.c:98,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - val
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 100
    functionName: gf_4cc_parse
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - strlen
    - GF_4CC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_4cc_parse(const char *val)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: MIN
      Src: /src/gpac/src/utils/error.c:144,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:155,1
    - Dst: fflush
      Src: /src/gpac/src/utils/error.c:156,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:160,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:162,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:165,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 3
    argNames:
    - _title
    - done
    - total
    argTypes:
    - char*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 169
    functionName: gf_on_progress_std
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - fprintf
    - strlen
    - fflush
    - MIN
    linkageType: ''
    returnType: void
    signature: void gf_on_progress_std(const char *_title, u64 done, u64 total)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: prog_cbk
      Src: /src/gpac/src/utils/error.c:186,1
    - Dst: gf_on_progress_std
      Src: /src/gpac/src/utils/error.c:190,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - title
    - done
    - total
    argTypes:
    - char*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 179
    functionDepth: 2
    functionLinenumber: 179
    functionLinenumberEnd: 193
    functionName: gf_set_progress
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 24
    functionsReached:
    - gf_on_progress_std
    - prog_cbk
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_set_progress(const char *title, u64 done, u64 total)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - _user_cbk
    - _prog_cbk
    argTypes:
    - void*
    - gf_on_progress_cbk
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 200
    functionName: gf_set_progress_callback
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_set_progress_callback(void *_user_cbk, gf_on_progress_cbk
      _prog_cbk)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:253,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:255,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:258,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 1
    argNames:
    - logs
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 248
    functionDepth: 0
    functionLinenumber: 248
    functionLinenumberEnd: 262
    functionName: gf_log_parse_tool
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: u32
    signature: u32 gf_log_parse_tool(const char *logs)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:271,1
    - Dst: strncpy
      Src: /src/gpac/src/utils/error.c:272,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:275,1
    - Dst: strchr
      Src: /src/gpac/src/utils/error.c:282,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:284,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/src/utils/error.c:286,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:290,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/src/utils/error.c:292,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:296,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/utils/error.c:297,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:301,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/error.c:310,1
    - Dst: strstr
      Src: /src/gpac/src/utils/error.c:314,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/error.c:316,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/error.c:320,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/error.c:324,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/error.c:328,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/error.c:332,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/error.c:336,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/error.c:342,1
    - Dst: strchr
      Src: /src/gpac/src/utils/error.c:356,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/error.c:359,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:363,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/src/utils/error.c:365,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:367,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/src/utils/error.c:369,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:374,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:375,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/error.c:385,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 125
    argCount: 1
    argNames:
    - val_
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 264
    functionDepth: 1
    functionLinenumber: 264
    functionLinenumberEnd: 403
    functionName: gf_log_modify_tools_levels
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 1
    functionsReached:
    - gf_log_set_callback
    - GF_LOG
    - strstr
    - strncpy
    - gf_log_set_strict_error
    - strcmp
    - strnicmp
    - stricmp
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_modify_tools_levels(const char *val_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_log_modify_tools_levels
      Src: /src/gpac/src/utils/error.c:414,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - val
    - reset_all
    argTypes:
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 405
    functionDepth: 2
    functionLinenumber: 405
    functionLinenumberEnd: 418
    functionName: gf_log_set_tools_levels
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 6
    functionsReached:
    - gf_log_modify_tools_levels
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_set_tools_levels(const char *val, Bool reset_all)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/utils/error.c:427,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/error.c:432,1
    - Dst: strcat
      Src: /src/gpac/src/utils/error.c:435,1
    - Dst: strcat
      Src: /src/gpac/src/utils/error.c:436,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/error.c:449,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/error.c:450,1
    - Dst: strcat
      Src: /src/gpac/src/utils/error.c:451,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:452,1
    - Dst: strcat
      Src: /src/gpac/src/utils/error.c:453,1
    - Dst: strcat
      Src: /src/gpac/src/utils/error.c:454,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:457,1
    - Dst: strcat
      Src: /src/gpac/src/utils/error.c:458,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:461,1
    - Dst: strcat
      Src: /src/gpac/src/utils/error.c:462,1
    - Dst: strcat
      Src: /src/gpac/src/utils/error.c:463,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:468,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/error.c:472,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/error.c:475,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 49
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 420
    functionDepth: 0
    functionLinenumber: 420
    functionLinenumberEnd: 476
    functionName: gf_log_get_tools_levels
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 2
    functionsReached:
    - strcat
    - strcpy
    - gf_strdup
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_log_get_tools_levels()
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/utils/error.c:499,1
    - Dst: getenv
      Src: /src/gpac/src/utils/error.c:506,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/error.c:509,1
    - Dst: GetStdHandle
      Src: /src/gpac/src/utils/error.c:511,1
    - Dst: GetConsoleScreenBufferInfo
      Src: /src/gpac/src/utils/error.c:513,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/error.c:515,1
    - Dst: GetConsoleScreenBufferInfo
      Src: /src/gpac/src/utils/error.c:552,1
    - Dst: GetConsoleCursorInfo
      Src: /src/gpac/src/utils/error.c:553,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/error.c:556,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/error.c:560,1
    - Dst: ReadConsoleOutput
      Src: /src/gpac/src/utils/error.c:569,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/error.c:570,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/error.c:572,1
    - Dst: SetConsoleScreenBufferSize
      Src: /src/gpac/src/utils/error.c:589,1
    - Dst: SetConsoleWindowInfo
      Src: /src/gpac/src/utils/error.c:590,1
    - Dst: SetConsoleCursorPosition
      Src: /src/gpac/src/utils/error.c:591,1
    - Dst: SetConsoleTextAttribute
      Src: /src/gpac/src/utils/error.c:592,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/error.c:595,1
    - Dst: WriteConsoleOutput
      Src: /src/gpac/src/utils/error.c:598,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/error.c:600,1
    - Dst: GetConsoleScreenBufferInfo
      Src: /src/gpac/src/utils/error.c:613,1
    - Dst: FillConsoleOutputCharacter
      Src: /src/gpac/src/utils/error.c:617,1
    - Dst: FillConsoleOutputAttribute
      Src: /src/gpac/src/utils/error.c:618,1
    - Dst: SetConsoleCursorPosition
      Src: /src/gpac/src/utils/error.c:619,1
    - Dst: SetConsoleTextAttribute
      Src: /src/gpac/src/utils/error.c:631,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:641,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:643,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:646,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:649,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:652,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:655,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:658,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:662,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:666,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:669,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:670,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:676,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:679,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:680,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:681,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:682,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 161
    argCount: 2
    argNames:
    - std
    - code
    argTypes:
    - FILE*
    - GF_ConsoleCodes
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 685
      start: 494
    functionDepth: 1
    functionLinenumber: 494
    functionLinenumberEnd: 685
    functionName: gf_sys_set_console_code
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - ReadConsoleOutput
    - gf_free
    - GetConsoleCursorInfo
    - SetConsoleTextAttribute
    - SetConsoleWindowInfo
    - SetConsoleCursorPosition
    - GF_LOG
    - gf_sys_is_test_mode
    - GetStdHandle
    - FillConsoleOutputCharacter
    - FillConsoleOutputAttribute
    - SetConsoleScreenBufferSize
    - GetConsoleScreenBufferInfo
    - WriteConsoleOutput
    - getenv
    - fprintf
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_set_console_code(FILE *std, GF_ConsoleCodes code)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/error.c:700,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/error.c:701,1
    - Dst: gf_list_find
      Src: /src/gpac/src/utils/error.c:702,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/error.c:703,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/error.c:705,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - log
    argTypes:
    - GF_LogExtra*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 696
    functionDepth: 1
    functionLinenumber: 696
    functionLinenumberEnd: 706
    functionName: gf_log_push_extra
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_new
    - gf_list_find
    - gf_mx_v
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_push_extra(const GF_LogExtra *log)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/error.c:711,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/error.c:712,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/error.c:713,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - log
    argTypes:
    - GF_LogExtra*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 714
      start: 707
    functionDepth: 1
    functionLinenumber: 707
    functionLinenumberEnd: 714
    functionName: gf_log_pop_extra
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    - gf_list_del_item
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_pop_extra(const GF_LogExtra *log)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/error.c:719,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/error.c:720,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/error.c:722,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 716
    functionDepth: 1
    functionLinenumber: 716
    functionLinenumberEnd: 723
    functionName: gf_log_reset_extras
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_reset_extras()
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/error.c:729,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/error.c:730,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/error.c:732,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/error.c:743,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/utils/error.c:745,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/error.c:749,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/error.c:754,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/utils/error.c:760,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 36
    argCount: 2
    argNames:
    - log_tool
    - log_level
    argTypes:
    - GF_LOG_Tool
    - GF_LOG_Level
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 764
      start: 725
    functionDepth: 1
    functionLinenumber: 725
    functionLinenumberEnd: 764
    functionName: gf_log_tool_level_on
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 21
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_list_count
    - gf_log_set_strict_error
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_tool_level_on(GF_LOG_Tool log_tool, GF_LOG_Level log_level)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - log_tool
    argTypes:
    - GF_LOG_Tool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 771
      start: 766
    functionDepth: 0
    functionLinenumber: 766
    functionLinenumberEnd: 771
    functionName: gf_log_tool_name
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_log_tool_name(GF_LOG_Tool log_tool)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - log_level
    argTypes:
    - GF_LOG_Level
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 781
      start: 772
    functionDepth: 0
    functionLinenumber: 772
    functionLinenumberEnd: 781
    functionName: gf_log_level_name
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_log_level_name(GF_LOG_Level log_level)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - log_tool
    argTypes:
    - GF_LOG_Tool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 788
      start: 783
    functionDepth: 0
    functionLinenumber: 783
    functionLinenumberEnd: 788
    functionName: gf_log_get_tool_level
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_get_tool_level(GF_LOG_Tool log_tool)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/error.c:804,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/error.c:805,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/utils/error.c:809,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/utils/error.c:812,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/error.c:813,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:816,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 2
    argNames:
    - logs
    - fmt
    argTypes:
    - FILE*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 798
    functionDepth: 1
    functionLinenumber: 798
    functionLinenumberEnd: 819
    functionName: do_log_time
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_net_get_utc
    - gf_sys_clock_high_res
    - strlen
    - gf_gmtime
    linkageType: ''
    returnType: void
    signature: void do_log_time(FILE *logs, const char *fmt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: do_log_time
      Src: /src/gpac/src/utils/error.c:827,1
    - Dst: gf_fileio_check
      Src: /src/gpac/src/utils/error.c:829,1
    - Dst: gf_fileio_printf
      Src: /src/gpac/src/utils/error.c:830,1
    - Dst: va_copy
      Src: /src/gpac/src/utils/error.c:834,1
    - Dst: vfprintf
      Src: /src/gpac/src/utils/error.c:835,1
    - Dst: va_end
      Src: /src/gpac/src/utils/error.c:836,1
    - Dst: vfprintf
      Src: /src/gpac/src/utils/error.c:838,1
    - Dst: gf_fflush
      Src: /src/gpac/src/utils/error.c:840,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - cbck
    - level
    - tool
    - fmt
    - vlist
    argTypes:
    - void*
    - GF_LOG_Level
    - GF_LOG_Tool
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 841
      start: 823
    functionDepth: 2
    functionLinenumber: 823
    functionLinenumberEnd: 841
    functionName: default_log_callback
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_fileio_check
    - va_copy
    - va_end
    - gf_fflush
    - do_log_time
    - vfprintf
    - gf_fileio_printf
    linkageType: ''
    returnType: void
    signature: void default_log_callback(void *cbck, GF_LOG_Level level, GF_LOG_Tool
      tool, const char *fmt, va_list vlist)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: default_log_callback
      Src: /src/gpac/src/utils/error.c:847,1
    - Dst: va_copy
      Src: /src/gpac/src/utils/error.c:851,1
    - Dst: default_log_callback
      Src: /src/gpac/src/utils/error.c:852,1
    - Dst: va_end
      Src: /src/gpac/src/utils/error.c:853,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/error.c:857,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/error.c:860,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/error.c:863,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/error.c:866,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/error.c:869,1
    - Dst: do_log_time
      Src: /src/gpac/src/utils/error.c:873,1
    - Dst: vfprintf
      Src: /src/gpac/src/utils/error.c:875,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/error.c:876,1
    - Dst: gf_fflush
      Src: /src/gpac/src/utils/error.c:877,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 5
    argNames:
    - cbck
    - level
    - tool
    - fmt
    - vlist
    argTypes:
    - void*
    - GF_LOG_Level
    - GF_LOG_Tool
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 878
      start: 843
    functionDepth: 3
    functionLinenumber: 843
    functionLinenumberEnd: 878
    functionName: default_log_callback_color
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_sys_set_console_code
    - va_end
    - va_copy
    - default_log_callback
    - gf_fflush
    - do_log_time
    - vfprintf
    linkageType: ''
    returnType: void
    signature: void default_log_callback_color(void *cbck, GF_LOG_Level level, GF_LOG_Tool
      tool, const char *fmt, va_list vlist)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/error.c:900,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 898
    functionDepth: 1
    functionLinenumber: 898
    functionLinenumberEnd: 901
    functionName: gf_logs_init
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    linkageType: ''
    returnType: void
    signature: void gf_logs_init()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/error.c:906,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/error.c:909,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/utils/error.c:910,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/error.c:911,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/error.c:913,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 914
      start: 903
    functionDepth: 1
    functionLinenumber: 903
    functionLinenumberEnd: 914
    functionName: gf_logs_close
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_list_pop_back
    - gf_list_count
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_logs_close()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/error.c:924,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/error.c:925,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/error.c:928,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/error.c:931,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/error.c:932,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/error.c:933,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/error.c:943,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/error.c:945,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/error.c:947,1
    - Dst: gf_th_id
      Src: /src/gpac/src/utils/error.c:950,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 4
    argNames:
    - tag_val
    - tag_type
    - is_tag
    - is_rem
    argTypes:
    - void*
    - u32
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 951
      start: 916
    functionDepth: 1
    functionLinenumber: 916
    functionLinenumberEnd: 951
    functionName: gf_logs_set_thread_tag_internal
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_list_get
    - gf_th_id
    - GF_SAFEALLOC
    - gf_list_count
    - gf_mx_v
    - gf_list_add
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_logs_set_thread_tag_internal(void *tag_val, u32 tag_type, Bool
      is_tag, Bool is_rem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_logs_set_thread_tag_internal
      Src: /src/gpac/src/utils/error.c:955,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - tag_val
    - tag_type
    argTypes:
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 956
      start: 953
    functionDepth: 2
    functionLinenumber: 953
    functionLinenumberEnd: 956
    functionName: gf_logs_thread_tag
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_logs_set_thread_tag_internal
    linkageType: ''
    returnType: void
    signature: void gf_logs_thread_tag(void *tag_val, u32 tag_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_logs_set_thread_tag_internal
      Src: /src/gpac/src/utils/error.c:959,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - tag_val
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 960
      start: 957
    functionDepth: 2
    functionLinenumber: 957
    functionLinenumberEnd: 960
    functionName: gf_logs_thread_untag
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_logs_set_thread_tag_internal
    linkageType: ''
    returnType: void
    signature: void gf_logs_thread_untag(void *tag_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_logs_set_thread_tag_internal
      Src: /src/gpac/src/utils/error.c:963,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - tag_val
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 964
      start: 961
    functionDepth: 2
    functionLinenumber: 961
    functionLinenumberEnd: 964
    functionName: gf_logs_thread_tag_del
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_logs_set_thread_tag_internal
    linkageType: ''
    returnType: void
    signature: void gf_logs_thread_tag_del(void *tag_val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_id
      Src: /src/gpac/src/utils/error.c:969,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/error.c:970,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/error.c:973,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 2
    argNames:
    - tag_type
    - o_th_id
    argTypes:
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 986
      start: 967
    functionDepth: 1
    functionLinenumber: 967
    functionLinenumberEnd: 986
    functionName: gf_logs_get_thread_tag
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_th_id
    linkageType: ''
    returnType: void
    signature: void *gf_logs_get_thread_tag(u32 *tag_type, u32 *o_th_id)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 992
      start: 988
    functionDepth: 0
    functionLinenumber: 988
    functionLinenumberEnd: 992
    functionName: gf_log_use_color
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_use_color()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: EM_ASM
      Src: /src/gpac/src/utils/error.c:1002,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/error.c:1007,1
    - Dst: va_start
      Src: /src/gpac/src/utils/error.c:1011,1
    - Dst: log_cbk
      Src: /src/gpac/src/utils/error.c:1013,1
    - Dst: va_end
      Src: /src/gpac/src/utils/error.c:1015,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/error.c:1017,1
    - Dst: EM_ASM
      Src: /src/gpac/src/utils/error.c:1020,1
    - Dst: exit
      Src: /src/gpac/src/utils/error.c:1026,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 1
    argNames:
    - fmt
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1028
      start: 997
    functionDepth: 0
    functionLinenumber: 997
    functionLinenumberEnd: 1028
    functionName: gf_log
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - va_end
    - va_start
    - gf_mx_v
    - exit
    - log_cbk
    - EM_ASM
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log(const char *fmt, ...)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/error.c:1033,1
    - Dst: log_cbk
      Src: /src/gpac/src/utils/error.c:1037,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/error.c:1040,1
    - Dst: exit
      Src: /src/gpac/src/utils/error.c:1043,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 4
    argNames:
    - level
    - tool
    - fmt
    - vl
    argTypes:
    - GF_LOG_Level
    - GF_LOG_Tool
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1045
      start: 1030
    functionDepth: 0
    functionLinenumber: 1030
    functionLinenumberEnd: 1045
    functionName: gf_log_va_list
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - log_cbk
    - gf_mx_v
    - exit
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_va_list(GF_LOG_Level level, GF_LOG_Tool tool, const
      char *fmt, va_list vl)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strict
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1053
      start: 1047
    functionDepth: 0
    functionLinenumber: 1047
    functionLinenumberEnd: 1053
    functionName: gf_log_set_strict_error
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_set_strict_error(Bool strict)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - tool
    - level
    argTypes:
    - GF_LOG_Tool
    - GF_LOG_Level
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1067
      start: 1055
    functionDepth: 0
    functionLinenumber: 1055
    functionLinenumberEnd: 1067
    functionName: gf_log_set_tool_level
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_set_tool_level(GF_LOG_Tool tool, GF_LOG_Level level)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ll
    - lt
    argTypes:
    - GF_LOG_Level
    - GF_LOG_Tool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1074
      start: 1069
    functionDepth: 0
    functionLinenumber: 1069
    functionLinenumberEnd: 1074
    functionName: gf_log_lt
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_lt(GF_LOG_Level ll, GF_LOG_Tool lt)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - usr_cbk
    - cbk
    argTypes:
    - void*
    - gf_log_cbk
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1084
      start: 1076
    functionDepth: 0
    functionLinenumber: 1076
    functionLinenumberEnd: 1084
    functionName: gf_log_set_callback
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_set_callback(void *usr_cbk, gf_log_cbk cbk)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - tag_val
    - tag_type
    argTypes:
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1088
      start: 1088
    functionDepth: 0
    functionLinenumber: 1088
    functionLinenumberEnd: 1088
    functionName: gf_logs_thread_tag
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_logs_thread_tag(void *tag_val, u32 tag_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - tag_val
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1089
      start: 1089
    functionDepth: 0
    functionLinenumber: 1089
    functionLinenumberEnd: 1089
    functionName: gf_logs_thread_untag
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_logs_thread_untag(void *tag_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - tag_val
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1090
      start: 1090
    functionDepth: 0
    functionLinenumber: 1090
    functionLinenumberEnd: 1090
    functionName: gf_logs_thread_tag_del
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_logs_thread_tag_del(void *tag_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - fmt
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1095
      start: 1092
    functionDepth: 0
    functionLinenumber: 1092
    functionLinenumberEnd: 1095
    functionName: gf_log
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log(const char *fmt, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ll
    - lt
    argTypes:
    - GF_LOG_Level
    - GF_LOG_Tool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1099
      start: 1096
    functionDepth: 0
    functionLinenumber: 1096
    functionLinenumberEnd: 1099
    functionName: gf_log_lt
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_lt(GF_LOG_Level ll, GF_LOG_Tool lt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - strict
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1108
      start: 1102
    functionDepth: 0
    functionLinenumber: 1102
    functionLinenumberEnd: 1108
    functionName: gf_log_set_strict_error
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_set_strict_error(Bool strict)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: exit
      Src: /src/gpac/src/utils/error.c:1114,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - loglev
    - logtool
    argTypes:
    - GF_LOG_Level
    - GF_LOG_Tool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1116
      start: 1110
    functionDepth: 0
    functionLinenumber: 1110
    functionLinenumberEnd: 1116
    functionName: gf_log_check_error
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - exit
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_check_error(GF_LOG_Level loglev, GF_LOG_Tool logtool)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - usr_cbk
    - cbk
    argTypes:
    - void*
    - gf_log_cbk
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1122
      start: 1118
    functionDepth: 0
    functionLinenumber: 1118
    functionLinenumberEnd: 1122
    functionName: gf_log_set_callback
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_set_callback(void *usr_cbk, gf_log_cbk cbk)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - tool
    - level
    argTypes:
    - GF_LOG_Tool
    - GF_LOG_Level
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1127
      start: 1124
    functionDepth: 0
    functionLinenumber: 1124
    functionLinenumberEnd: 1127
    functionName: gf_log_set_tool_level
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_set_tool_level(GF_LOG_Tool tool, GF_LOG_Level level)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - log_tool
    argTypes:
    - GF_LOG_Tool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1133
      start: 1129
    functionDepth: 0
    functionLinenumber: 1129
    functionLinenumberEnd: 1133
    functionName: gf_log_get_tool_level
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_get_tool_level(GF_LOG_Tool log_tool)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - log_tool
    - log_level
    argTypes:
    - GF_LOG_Tool
    - GF_LOG_Level
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1139
      start: 1135
    functionDepth: 0
    functionLinenumber: 1135
    functionLinenumberEnd: 1139
    functionName: gf_log_tool_level_on
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 21
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_tool_level_on(GF_LOG_Tool log_tool, GF_LOG_Level log_level)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - log
    argTypes:
    - GF_LogExtra*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1142
      start: 1141
    functionDepth: 0
    functionLinenumber: 1141
    functionLinenumberEnd: 1142
    functionName: gf_log_push_extra
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_push_extra(const GF_LogExtra *log)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - log
    argTypes:
    - GF_LogExtra*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1145
      start: 1144
    functionDepth: 0
    functionLinenumber: 1144
    functionLinenumberEnd: 1145
    functionName: gf_log_pop_extra
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_pop_extra(const GF_LogExtra *log)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1148
      start: 1147
    functionDepth: 0
    functionLinenumber: 1147
    functionLinenumberEnd: 1148
    functionName: gf_log_reset_extras
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_reset_extras()
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/utils/error.c:1255,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 88
    argCount: 1
    argNames:
    - e
    argTypes:
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1258
      start: 1154
    functionDepth: 0
    functionLinenumber: 1154
    functionLinenumberEnd: 1258
    functionName: gf_error_to_string
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 137
    functionsReached:
    - sprintf
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_error_to_string(GF_Err e)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - data
    - len
    argTypes:
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1316
      start: 1306
    functionDepth: 0
    functionLinenumber: 1306
    functionLinenumberEnd: 1316
    functionName: gf_crc_32
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 19
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_crc_32(const u8 *data, u32 len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1320
      start: 1319
    functionDepth: 0
    functionLinenumber: 1319
    functionLinenumberEnd: 1320
    functionName: CHECK_MAC
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_MAC(_a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 43
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1449
      start: 1321
    functionDepth: 0
    functionLinenumber: 1321
    functionLinenumberEnd: 1449
    functionName: gf_enabled_features
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_enabled_features()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 108
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1772
      start: 1451
    functionDepth: 0
    functionLinenumber: 1451
    functionLinenumberEnd: 1772
    functionName: gf_disabled_features
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_disabled_features()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_disabled_features
      Src: /src/gpac/src/utils/error.c:1778,1
    - Dst: gf_enabled_features
      Src: /src/gpac/src/utils/error.c:1780,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - disabled
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1781
      start: 1774
    functionDepth: 1
    functionLinenumber: 1774
    functionLinenumberEnd: 1781
    functionName: gf_sys_features
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 1
    functionsReached:
    - gf_enabled_features
    - gf_disabled_features
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sys_features(Bool disabled)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2281
      start: 2277
    functionDepth: 0
    functionLinenumber: 2277
    functionLinenumberEnd: 2281
    functionName: gf_lang_get_count
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_lang_get_count()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:2294,1
    - Dst: strchr
      Src: /src/gpac/src/utils/error.c:2295,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:2298,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:2303,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/error.c:2306,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/error.c:2309,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 1
    argNames:
    - lang_or_rfc_5646_code
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2314
      start: 2283
    functionDepth: 0
    functionLinenumber: 2283
    functionLinenumberEnd: 2314
    functionName: gf_lang_find
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 5
    functionsReached:
    - strchr
    - strcmp
    - strnicmp
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_lang_find(const char *lang_or_rfc_5646_code)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - idx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2321
      start: 2316
    functionDepth: 0
    functionLinenumber: 2316
    functionLinenumberEnd: 2321
    functionName: gf_lang_get_name
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_lang_get_name(u32 idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - idx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2328
      start: 2323
    functionDepth: 0
    functionLinenumber: 2323
    functionLinenumberEnd: 2328
    functionName: gf_lang_get_2cc
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_lang_get_2cc(u32 idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - idx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2335
      start: 2330
    functionDepth: 0
    functionLinenumber: 2330
    functionLinenumberEnd: 2335
    functionName: gf_lang_get_3cc
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_lang_get_3cc(u32 idx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:2344,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:2345,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:2346,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/error.c:2347,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/error.c:2348,1
    - Dst: strcat
      Src: /src/gpac/src/utils/error.c:2354,1
    - Dst: strcat
      Src: /src/gpac/src/utils/error.c:2355,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - str
    - to_append
    - sep
    argTypes:
    - char**
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2357
      start: 2338
    functionDepth: 0
    functionLinenumber: 2338
    functionLinenumberEnd: 2357
    functionName: gf_dynstrcat
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 44
    functionsReached:
    - strcat
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dynstrcat(char **str, const char *to_append, const char
      *sep)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/src/utils/error.c:2371,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/error.c:2374,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/error.c:2377,1
    - Dst: strchr
      Src: /src/gpac/src/utils/error.c:2382,1
    - Dst: strchr
      Src: /src/gpac/src/utils/error.c:2383,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:2385,1
    - Dst: atol
      Src: /src/gpac/src/utils/error.c:2390,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:2395,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/error.c:2404,1
    - Dst: atoll
      Src: /src/gpac/src/utils/error.c:2426,1
    - Dst: atof
      Src: /src/gpac/src/utils/error.c:2436,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 70
    argCount: 2
    argNames:
    - value
    - frac
    argTypes:
    - char*
    - GF_Fraction64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2438
      start: 2359
    functionDepth: 0
    functionLinenumber: 2359
    functionLinenumberEnd: 2438
    functionName: gf_parse_lfrac
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 3
    functionsReached:
    - sscanf
    - atol
    - atof
    - strlen
    - strchr
    - atoll
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_parse_lfrac(const char *value, GF_Fraction64 *frac)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_parse_lfrac
      Src: /src/gpac/src/utils/error.c:2446,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - value
    - frac
    argTypes:
    - char*
    - GF_Fraction*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2454
      start: 2440
    functionDepth: 1
    functionLinenumber: 2440
    functionLinenumberEnd: 2454
    functionName: gf_parse_frac
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 3
    functionsReached:
    - gf_parse_lfrac
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_parse_frac(const char *value, GF_Fraction *frac)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strtol
      Src: /src/gpac/src/utils/error.c:2458,1
    - Dst: isspace
      Src: /src/gpac/src/utils/error.c:2459,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - str
    - ans
    argTypes:
    - char*
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2460
      start: 2456
    functionDepth: 0
    functionLinenumber: 2456
    functionLinenumberEnd: 2460
    functionName: gf_strict_atoi
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - isspace
    - strtol
    linkageType: ''
    returnType: Bool
    signature: Bool gf_strict_atoi(const char* str, s32* ans)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strtoul
      Src: /src/gpac/src/utils/error.c:2464,1
    - Dst: isspace
      Src: /src/gpac/src/utils/error.c:2465,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - str
    - ans
    argTypes:
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2466
      start: 2462
    functionDepth: 0
    functionLinenumber: 2462
    functionLinenumberEnd: 2466
    functionName: gf_strict_atoui
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 1
    functionsReached:
    - strtoul
    - isspace
    linkageType: ''
    returnType: Bool
    signature: Bool gf_strict_atoui(const char* str, u32* ans)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:2472,1
    - Dst: memchr
      Src: /src/gpac/src/utils/error.c:2478,1
    - Dst: memcmp
      Src: /src/gpac/src/utils/error.c:2482,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 3
    argNames:
    - data
    - data_size
    - pat
    argTypes:
    - char*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2488
      start: 2468
    functionDepth: 0
    functionLinenumber: 2468
    functionLinenumberEnd: 2488
    functionName: gf_strmemstr
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - memcmp
    - strlen
    - memchr
    linkageType: ''
    returnType: char
    signature: char * gf_strmemstr(const char *data, u32 data_size, const char *pat)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/utils/error.c:2496,1
    - Dst: gf_opts_get_filename
      Src: /src/gpac/src/utils/error.c:2497,1
    - Dst: getenv
      Src: /src/gpac/src/utils/error.c:2502,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/error.c:2504,1
    - Dst: getenv
      Src: /src/gpac/src/utils/error.c:2506,1
    - Dst: strncpy
      Src: /src/gpac/src/utils/error.c:2511,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/error.c:2514,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/error.c:2515,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:2518,1
    - Dst: strncat
      Src: /src/gpac/src/utils/error.c:2522,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:2522,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 2
    argNames:
    - url
    - szPath
    argTypes:
    - char*
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2526
      start: 2490
    functionDepth: 1
    functionLinenumber: 2490
    functionLinenumberEnd: 2526
    functionName: gf_sys_solve_path
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - strrchr
    - gf_opts_get_filename
    - strlen
    - strncat
    - strncpy
    - strncmp
    - gf_opts_get_key
    - getenv
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_solve_path(const char *url, char szPath[GF_MAX_PATH])
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: curl_destroy
      Src: /src/gpac/src/utils/downloader.c:36,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:43,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/utils/downloader.c:44,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/utils/downloader.c:45,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 50
    functionName: dm_sess_sk_del
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_sk_group_unregister
    - gf_sk_del
    - curl_destroy
    linkageType: ''
    returnType: void
    signature: void dm_sess_sk_del(GF_DownloadSession *sess)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 60
    functionName: sess_connection_closed
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void sess_connection_closed(GF_DownloadSession *sess)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_ssl_write
      Src: /src/gpac/src/utils/downloader.c:78,1
    - Dst: gf_sk_send_ex
      Src: /src/gpac/src/utils/downloader.c:84,1
    - Dst: memmove
      Src: /src/gpac/src/utils/downloader.c:98,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:101,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/downloader.c:108,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader.c:111,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 38
    argCount: 3
    argNames:
    - session
    - buffer
    - size
    argTypes:
    - GF_DownloadSession*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 115
    functionName: dm_sess_write
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_sk_send_ex
    - gf_assert
    - memmove
    - memcpy
    - gf_ssl_write
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dm_sess_write(GF_DownloadSession *session, const u8 *buffer,
      u32 size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/utils/downloader.c:120,1
    - Dst: strstr
      Src: /src/gpac/src/utils/downloader.c:121,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - dm
    - url
    argTypes:
    - GF_DownloadManager*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 123
    functionName: gf_dm_is_local
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - strnicmp
    - strstr
    linkageType: ''
    returnType: Bool
    signature: Bool gf_dm_is_local(GF_DownloadManager *dm, const char *url)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/utils/downloader.c:127,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/downloader.c:129,1
    - Dst: curl_can_handle_url
      Src: /src/gpac/src/utils/downloader.c:133,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - url
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 136
    functionName: gf_dm_can_handle_url
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - strnicmp
    - curl_can_handle_url
    linkageType: ''
    returnType: Bool
    signature: Bool gf_dm_can_handle_url(const char *url)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/utils/downloader.c:150,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/downloader.c:152,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/downloader.c:153,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader.c:157,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader.c:159,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/downloader.c:160,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:163,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:165,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/downloader.c:168,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:169,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:170,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader.c:174,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:176,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:177,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/downloader.c:178,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 33
    argCount: 4
    argNames:
    - sess
    - name
    - value
    - allow_overwrite
    argTypes:
    - GF_DownloadSession*
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 180
    functionName: gf_dm_sess_set_header_ex
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_strdup
    - GF_SAFEALLOC
    - gf_list_count
    - gf_list_add
    - stricmp
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_set_header_ex(GF_DownloadSession *sess, const char
      *name, const char *value, Bool allow_overwrite)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_set_header_ex
      Src: /src/gpac/src/utils/downloader.c:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - sess
    - name
    - value
    argTypes:
    - GF_DownloadSession*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 182
    functionDepth: 2
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionName: gf_dm_sess_set_header
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_set_header_ex
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_set_header(GF_DownloadSession *sess, const char *name,
      const char *value)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader.c:195,1
    - Dst: http2_check_upgrade
      Src: /src/gpac/src/utils/downloader.c:198,1
    - Dst: GF_DownloadSession*::hmux_sess::send_reply
      Src: /src/gpac/src/utils/downloader.c:204,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader.c:209,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:210,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:212,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:213,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:214,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:215,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:216,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:217,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:218,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:219,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:220,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:221,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:222,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:223,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:224,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:225,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:226,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:228,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:230,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader.c:234,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:235,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:236,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:237,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:238,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:240,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:243,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader.c:245,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/downloader.c:247,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader.c:249,1
    - Dst: dm_sess_write
      Src: /src/gpac/src/utils/downloader.c:252,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:253,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 86
    argCount: 5
    argNames:
    - sess
    - reply_code
    - response_body
    - body_len
    - no_body
    argTypes:
    - GF_DownloadSession*
    - u32
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 187
    functionDepth: 2
    functionLinenumber: 187
    functionLinenumberEnd: 255
    functionName: gf_dm_sess_send_reply
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - dm_sess_write
    - gf_free
    - gf_list_get
    - GF_DownloadSession*::hmux_sess::send_reply
    - http2_check_upgrade
    - GF_LOG
    - memcpy
    - sprintf
    - gf_list_count
    - gf_dynstrcat
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dm_sess_send_reply(GF_DownloadSession *sess, u32 reply_code,
      const char *response_body, u32 body_len, Bool no_body)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader.c:259,1
    - Dst: gf_list_last
      Src: /src/gpac/src/utils/downloader.c:260,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/utils/downloader.c:261,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:262,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:263,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:264,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:267,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 257
    functionDepth: 1
    functionLinenumber: 257
    functionLinenumberEnd: 270
    functionName: gf_dm_sess_clear_headers
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_last
    - gf_list_rem_last
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_clear_headers(GF_DownloadSession *sess)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:275,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:279,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/downloader.c:284,1
    - Dst: gf_cache_close_write_cache
      Src: /src/gpac/src/utils/downloader.c:294,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:298,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader.c:300,1
    - Dst: GF_DownloadSession*::hmux_sess::stream_reset
      Src: /src/gpac/src/utils/downloader.c:310,1
    - Dst: dm_sess_sk_del
      Src: /src/gpac/src/utils/downloader.c:317,1
    - Dst: hmux_detach_session
      Src: /src/gpac/src/utils/downloader.c:325,1
    - Dst: SSL_shutdown
      Src: /src/gpac/src/utils/downloader.c:331,1
    - Dst: SSL_free
      Src: /src/gpac/src/utils/downloader.c:332,1
    - Dst: dm_sess_sk_del
      Src: /src/gpac/src/utils/downloader.c:336,1
    - Dst: gf_cache_close_write_cache
      Src: /src/gpac/src/utils/downloader.c:340,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:348,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 53
    argCount: 2
    argNames:
    - sess
    - close_type
    argTypes:
    - GF_DownloadSession*
    - HTTPCloseType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 273
    functionDepth: 2
    functionLinenumber: 273
    functionLinenumberEnd: 349
    functionName: gf_dm_disconnect
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_assert
    - gf_cache_close_write_cache
    - gf_mx_p
    - GF_LOG
    - GF_DownloadSession*::hmux_sess::stream_reset
    - SSL_free
    - hmux_detach_session
    - gf_mx_v
    - dm_sess_sk_del
    - SSL_shutdown
    linkageType: ''
    returnType: void
    signature: void gf_dm_disconnect(GF_DownloadSession *sess, HTTPCloseType close_type)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:357,1
    - Dst: gf_dm_disconnect
      Src: /src/gpac/src/utils/downloader.c:364,1
    - Dst: gf_dm_sess_clear_headers
      Src: /src/gpac/src/utils/downloader.c:365,1
    - Dst: gf_sleep
      Src: /src/gpac/src/utils/downloader.c:370,1
    - Dst: gf_th_stop
      Src: /src/gpac/src/utils/downloader.c:371,1
    - Dst: gf_th_del
      Src: /src/gpac/src/utils/downloader.c:372,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader.c:377,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/downloader.c:378,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:379,1
    - Dst: gf_cache_remove_entry_from_session
      Src: /src/gpac/src/utils/downloader.c:382,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:383,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:384,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:385,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:387,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:390,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:391,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:392,1
    - Dst: GF_DownloadSession*::hmux_sess::setup_session
      Src: /src/gpac/src/utils/downloader.c:399,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader.c:400,1
    - Dst: hmux_detach_session
      Src: /src/gpac/src/utils/downloader.c:401,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:402,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:408,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:413,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:417,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:422,1
    - Dst: SSL_shutdown
      Src: /src/gpac/src/utils/downloader.c:423,1
    - Dst: SSL_free
      Src: /src/gpac/src/utils/downloader.c:424,1
    - Dst: dm_sess_sk_del
      Src: /src/gpac/src/utils/downloader.c:428,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/downloader.c:430,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:433,1
    - Dst: curl_slist_free_all
      Src: /src/gpac/src/utils/downloader.c:434,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:438,1
    - Dst: assert
      Src: /src/gpac/src/utils/downloader.c:440,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/utils/downloader.c:441,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:443,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:450,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 77
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts:
    - condition: (!sess->ftask || !sess->ftask->in_task || !sess->mx)
      pos:
        line_end: 439
        line_start: 439
        source_file: /src/gpac/src/utils/downloader.c
    constantsTouched: []
    func_position:
      end: 451
      start: 351
    functionDepth: 3
    functionLinenumber: 351
    functionLinenumberEnd: 451
    functionName: gf_dm_sess_del
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 8
    functionsReached:
    - gf_free
    - gf_dm_disconnect
    - hmux_detach_session
    - dm_sess_sk_del
    - SSL_shutdown
    - gf_th_del
    - gf_assert
    - gf_th_stop
    - SSL_free
    - gf_mx_p
    - GF_LOG
    - assert
    - gf_sleep
    - gf_dm_sess_clear_headers
    - curl_slist_free_all
    - gf_mx_v
    - gf_list_del_item
    - GF_DownloadSession*::hmux_sess::setup_session
    - gf_list_del
    - gf_cache_remove_entry_from_session
    - gf_mx_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_sess_del(GF_DownloadSession *sess)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/utils/downloader.c:458,1
    - Dst: GF_DownloadSession*::user_proc
      Src: /src/gpac/src/utils/downloader.c:463,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - sess
    - dnload_status
    - error
    argTypes:
    - GF_DownloadSession*
    - GF_NetIOStatus
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 465
      start: 453
    functionDepth: 0
    functionLinenumber: 453
    functionLinenumberEnd: 465
    functionName: gf_dm_sess_notify_state
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - memset
    - GF_DownloadSession*::user_proc
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_notify_state(GF_DownloadSession *sess, GF_NetIOStatus
      dnload_status, GF_Err error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_DownloadSession*::user_proc
      Src: /src/gpac/src/utils/downloader.c:472,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - sess
    - par
    argTypes:
    - GF_DownloadSession*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 467
    functionDepth: 0
    functionLinenumber: 467
    functionLinenumberEnd: 475
    functionName: gf_dm_sess_user_io
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - GF_DownloadSession*::user_proc
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_user_io(GF_DownloadSession *sess, GF_NETIO_Parameter
      *par)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 484
      start: 478
    functionDepth: 0
    functionLinenumber: 478
    functionLinenumberEnd: 484
    functionName: gf_dm_sess_last_error
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_sess_last_error(GF_DownloadSession *sess)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/utils/downloader.c:489,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - info
    argTypes:
    - GF_URL_Info*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 486
    functionDepth: 0
    functionLinenumber: 486
    functionLinenumberEnd: 490
    functionName: gf_dm_url_info_init
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_url_info_init(GF_URL_Info * info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:497,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:499,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:501,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:503,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:505,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:507,1
    - Dst: gf_dm_url_info_init
      Src: /src/gpac/src/utils/downloader.c:508,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - info
    argTypes:
    - GF_URL_Info*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 509
      start: 492
    functionDepth: 1
    functionLinenumber: 492
    functionLinenumberEnd: 509
    functionName: gf_dm_url_info_del
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_dm_url_info_init
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_url_info_del(GF_URL_Info * info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:518,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:519,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/downloader.c:520,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:522,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/downloader.c:525,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:530,1
    - Dst: strstr
      Src: /src/gpac/src/utils/downloader.c:533,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:536,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 2
    argNames:
    - url
    - info
    argTypes:
    - char*
    - GF_URL_Info*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 516
    functionDepth: 1
    functionLinenumber: 516
    functionLinenumberEnd: 541
    functionName: gf_dm_parse_protocol
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - strnicmp
    - gf_strdup
    - strstr
    linkageType: ''
    returnType: s32
    signature: s32 gf_dm_parse_protocol(const char * url, GF_URL_Info * info)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_url_info_del
      Src: /src/gpac/src/utils/downloader.c:549,1
    - Dst: gf_dm_parse_protocol
      Src: /src/gpac/src/utils/downloader.c:551,1
    - Dst: strstr
      Src: /src/gpac/src/utils/downloader.c:558,1
    - Dst: gf_dm_url_info_del
      Src: /src/gpac/src/utils/downloader.c:560,1
    - Dst: gf_dm_url_info_init
      Src: /src/gpac/src/utils/downloader.c:561,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/utils/downloader.c:563,1
    - Dst: strstr
      Src: /src/gpac/src/utils/downloader.c:565,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:566,1
    - Dst: gf_dm_parse_protocol
      Src: /src/gpac/src/utils/downloader.c:570,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:577,1
    - Dst: gf_url_percent_encode
      Src: /src/gpac/src/utils/downloader.c:578,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:579,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:583,1
    - Dst: gf_dm_url_info_del
      Src: /src/gpac/src/utils/downloader.c:584,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader.c:587,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:591,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:592,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:593,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:601,1
    - Dst: gf_dm_url_info_del
      Src: /src/gpac/src/utils/downloader.c:602,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:606,1
    - Dst: strchr
      Src: /src/gpac/src/utils/downloader.c:607,1
    - Dst: strchr
      Src: /src/gpac/src/utils/downloader.c:610,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:611,1
    - Dst: gf_url_percent_encode
      Src: /src/gpac/src/utils/downloader.c:612,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:615,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:616,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:617,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:623,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:626,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/downloader.c:630,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:633,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:634,1
    - Dst: strchr
      Src: /src/gpac/src/utils/downloader.c:636,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:640,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:642,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:644,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:645,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/downloader.c:649,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/downloader.c:650,1
    - Dst: atoi
      Src: /src/gpac/src/utils/downloader.c:653,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:656,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:658,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:663,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:664,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:665,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/downloader.c:668,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:669,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:671,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:673,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:675,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 110
    argCount: 3
    argNames:
    - url
    - info
    - baseURL
    argTypes:
    - char*
    - GF_URL_Info*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 677
      start: 543
    functionDepth: 2
    functionLinenumber: 543
    functionLinenumberEnd: 677
    functionName: gf_dm_get_url_info
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_dm_parse_protocol
    - gf_assert
    - gf_url_percent_encode
    - strrchr
    - gf_dm_url_info_del
    - snprintf
    - gf_dm_url_info_init
    - GF_LOG
    - gf_url_concatenate
    - strstr
    - atoi
    - gf_dynstrcat
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_get_url_info(const char * url, GF_URL_Info * info,
      const char * baseURL)
  - BBCount: 55
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_clear_headers
      Src: /src/gpac/src/utils/downloader.c:688,1
    - Dst: gf_dm_url_info_init
      Src: /src/gpac/src/utils/downloader.c:690,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:698,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:700,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/downloader.c:705,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/downloader.c:706,1
    - Dst: strchr
      Src: /src/gpac/src/utils/downloader.c:714,1
    - Dst: gf_dm_get_url_info
      Src: /src/gpac/src/utils/downloader.c:716,1
    - Dst: strstr
      Src: /src/gpac/src/utils/downloader.c:722,1
    - Dst: gf_dm_url_info_del
      Src: /src/gpac/src/utils/downloader.c:724,1
    - Dst: gf_dm_url_info_init
      Src: /src/gpac/src/utils/downloader.c:725,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:727,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:728,1
    - Dst: strstr
      Src: /src/gpac/src/utils/downloader.c:729,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:730,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:732,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/downloader.c:747,1
    - Dst: gf_cache_remove_entry_from_session
      Src: /src/gpac/src/utils/downloader.c:750,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:755,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:758,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:758,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:759,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:764,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/downloader.c:766,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/downloader.c:768,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/downloader.c:769,1
    - Dst: strstr
      Src: /src/gpac/src/utils/downloader.c:770,1
    - Dst: strstr
      Src: /src/gpac/src/utils/downloader.c:771,1
    - Dst: curl_multi_init
      Src: /src/gpac/src/utils/downloader.c:788,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:794,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:797,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:798,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:802,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:803,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:805,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:806,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:807,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader.c:810,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:811,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader.c:813,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:817,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:819,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:820,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:825,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:830,1
    - Dst: gf_user_credentials_register
      Src: /src/gpac/src/utils/downloader.c:832,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:832,1
    - Dst: gf_dm_url_info_del
      Src: /src/gpac/src/utils/downloader.c:835,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader.c:849,1
    - Dst: curl_setup_session
      Src: /src/gpac/src/utils/downloader.c:853,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader.c:871,1
    - Dst: hmux_detach_session
      Src: /src/gpac/src/utils/downloader.c:872,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:873,1
    - Dst: dm_sess_sk_del
      Src: /src/gpac/src/utils/downloader.c:877,1
    - Dst: SSL_shutdown
      Src: /src/gpac/src/utils/downloader.c:886,1
    - Dst: SSL_free
      Src: /src/gpac/src/utils/downloader.c:887,1
    - Dst: GF_DownloadSession*::dm::local_cache_url_provider_cbk
      Src: /src/gpac/src/utils/downloader.c:900,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:903,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:904,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:905,1
    - Dst: gf_dm_configure_cache
      Src: /src/gpac/src/utils/downloader.c:907,1
    - Dst: gf_cache_is_deleted
      Src: /src/gpac/src/utils/downloader.c:909,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:911,1
    - Dst: gf_cache_is_done
      Src: /src/gpac/src/utils/downloader.c:913,1
    - Dst: gf_cache_get_content_length
      Src: /src/gpac/src/utils/downloader.c:917,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:921,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:923,1
    - Dst: gf_cache_get_downtime
      Src: /src/gpac/src/utils/downloader.c:927,1
    - Dst: gf_dm_sess_reload_cached_headers
      Src: /src/gpac/src/utils/downloader.c:932,1
    - Dst: gf_dm_sess_set_range
      Src: /src/gpac/src/utils/downloader.c:937,1
    CyclomaticComplexity: 66
    EdgeCount: 66
    ICount: 212
    argCount: 3
    argNames:
    - sess
    - url
    - allow_direct_reuse
    argTypes:
    - GF_DownloadSession*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 938
      start: 679
    functionDepth: 3
    functionLinenumber: 679
    functionLinenumberEnd: 938
    functionName: gf_dm_sess_setup_from_url
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_free
    - SET_LAST_ERR
    - gf_dm_url_info_del
    - hmux_detach_session
    - gf_opts_get_key
    - GF_DownloadSession*::dm::local_cache_url_provider_cbk
    - dm_sess_sk_del
    - strchr
    - SSL_shutdown
    - gf_cache_get_content_length
    - gf_cache_is_done
    - gf_strdup
    - gf_assert
    - gf_dm_sess_reload_cached_headers
    - gf_cache_get_downtime
    - gf_dm_url_info_init
    - sprintf
    - SSL_free
    - gf_dm_configure_cache
    - gf_dynstrcat
    - gf_dm_get_url_info
    - curl_setup_session
    - gf_user_credentials_register
    - curl_multi_init
    - gf_mx_p
    - gf_cache_is_deleted
    - GF_LOG
    - gf_dm_sess_clear_headers
    - strstr
    - strnicmp
    - gf_mx_v
    - gf_dm_sess_set_range
    - gf_sys_clock_high_res
    - gf_fclose
    - gf_cache_remove_entry_from_session
    - gf_fatal_assert
    - strcmp
    - gf_opts_get_bool
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_sess_setup_from_url(GF_DownloadSession *sess, const
      char *url, Bool allow_direct_reuse)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader.c:949,1
    - Dst: gf_dm_connect
      Src: /src/gpac/src/utils/downloader.c:954,1
    - Dst: GF_DownloadSession*::do_requests
      Src: /src/gpac/src/utils/downloader.c:956,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:960,1
    - Dst: gf_dm_disconnect
      Src: /src/gpac/src/utils/downloader.c:965,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 972
      start: 941
    functionDepth: 3
    functionLinenumber: 941
    functionLinenumberEnd: 972
    functionName: gf_dm_session_do_task
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_dm_connect
    - gf_dm_disconnect
    - gf_mx_v
    - GF_DownloadSession*::do_requests
    linkageType: ''
    returnType: Bool
    signature: Bool gf_dm_session_do_task(GF_DownloadSession *sess)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:979,1
    - Dst: gf_dm_session_do_task
      Src: /src/gpac/src/utils/downloader.c:984,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:994,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:995,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/utils/downloader.c:998,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 3
    argNames:
    - fsess
    - callback
    - reschedule_ms
    argTypes:
    - GF_FilterSession*
    - void*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1001
      start: 974
    functionDepth: 4
    functionLinenumber: 974
    functionLinenumberEnd: 1001
    functionName: gf_dm_session_task
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_dm_session_do_task
    - gf_assert
    - gf_dm_sess_del
    linkageType: ''
    returnType: Bool
    signature: Bool gf_dm_session_task(GF_FilterSession *fsess, void *callback, u32
      *reschedule_ms)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:1009,1
    - Dst: gf_th_id
      Src: /src/gpac/src/utils/downloader.c:1009,1
    - Dst: gf_dm_session_do_task
      Src: /src/gpac/src/utils/downloader.c:1012,1
    - Dst: gf_sleep
      Src: /src/gpac/src/utils/downloader.c:1014,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/utils/downloader.c:1018,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - par
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1020
      start: 1004
    functionDepth: 4
    functionLinenumber: 1004
    functionLinenumberEnd: 1020
    functionName: gf_dm_session_thread
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_th_id
    - GF_LOG
    - gf_sleep
    - gf_dm_session_do_task
    - gf_dm_sess_del
    linkageType: ''
    returnType: u32
    signature: u32 gf_dm_session_thread(void *par)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader.c:1032,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/downloader.c:1039,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:1046,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/downloader.c:1048,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/downloader.c:1050,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/downloader.c:1053,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/downloader.c:1055,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/downloader.c:1069,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/utils/downloader.c:1083,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:1085,1
    - Dst: gf_dm_sess_setup_from_url
      Src: /src/gpac/src/utils/downloader.c:1095,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:1097,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/downloader.c:1097,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/utils/downloader.c:1098,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:1101,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 63
    argCount: 8
    argNames:
    - dm
    - url
    - dl_flags
    - user_io
    - usr_cbk
    - server
    - force_server
    - e
    argTypes:
    - GF_DownloadManager*
    - char*
    - u32
    - gf_dm_user_io
    - void*
    - GF_Socket*
    - Bool
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1105
      start: 1023
    functionDepth: 1
    functionLinenumber: 1023
    functionLinenumberEnd: 1105
    functionName: gf_dm_sess_new_internal
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_strdup
    - gf_assert
    - GF_SAFEALLOC
    - GF_LOG
    - gf_opts_get_int
    - gf_sk_set_block_mode
    - gf_error_to_string
    - gf_dm_sess_del
    - gf_mx_new
    - gf_malloc
    - gf_dm_sess_setup_from_url
    linkageType: ''
    returnType: GF_DownloadSession
    signature: "GF_DownloadSession *gf_dm_sess_new_internal(GF_DownloadManager * dm,
      const char *url, u32 dl_flags,\n        gf_dm_user_io user_io,\n        void
      *usr_cbk,\n        GF_Socket *server,\n        Bool force_server,\n        GF_Err
      *e)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_new_internal
      Src: /src/gpac/src/utils/downloader.c:1115,1
    - Dst: gf_dm_sess_server_setup_ssl
      Src: /src/gpac/src/utils/downloader.c:1121,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1125
      start: 1107
    functionDepth: 2
    functionLinenumber: 1107
    functionLinenumberEnd: 1125
    functionName: "GF_DownloadSession *gf_dm_sess_new_server(GF_DownloadManager *dm,
      GF_Socket *server,\n\t\tvoid *ssl_sock_ctx,\n        gf_dm_user_io user_io,\n
      \       void *usr_cbk,\n        Bool async,\n        GF_Err *e)"
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_new_internal
    - gf_dm_sess_server_setup_ssl
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT GF_DownloadSession *gf_dm_sess_new_server(GF_DownloadManager
      *dm, GF_Socket *server,\n\t\tvoid *ssl_sock_ctx,\n        gf_dm_user_io user_io,\n
      \       void *usr_cbk,\n        Bool async,\n        GF_Err *e)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader.c:1132,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1135
      start: 1128
    functionDepth: 1
    functionLinenumber: 1128
    functionLinenumberEnd: 1135
    functionName: gf_dm_sess_subsession_count
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: u32
    signature: u32 gf_dm_sess_subsession_count(GF_DownloadSession *sess)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_clear_headers
      Src: /src/gpac/src/utils/downloader.c:1147,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1155
      start: 1138
    functionDepth: 2
    functionLinenumber: 1138
    functionLinenumberEnd: 1155
    functionName: gf_dm_sess_server_reset
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_clear_headers
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_server_reset(GF_DownloadSession *sess)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_new_internal
      Src: /src/gpac/src/utils/downloader.c:1164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1165
      start: 1158
    functionDepth: 2
    functionLinenumber: 1158
    functionLinenumberEnd: 1165
    functionName: "GF_DownloadSession *gf_dm_sess_new_simple(GF_DownloadManager *
      dm, const char *url, u32 dl_flags,\n        gf_dm_user_io user_io,\n        void
      *usr_cbk,\n        GF_Err *e)"
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_new_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT GF_DownloadSession *gf_dm_sess_new_simple(GF_DownloadManager
      * dm, const char *url, u32 dl_flags,\n        gf_dm_user_io user_io,\n        void
      *usr_cbk,\n        GF_Err *e)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_is_local
      Src: /src/gpac/src/utils/downloader.c:1174,1
    - Dst: gf_dm_can_handle_url
      Src: /src/gpac/src/utils/downloader.c:1179,1
    - Dst: gf_dm_sess_new_simple
      Src: /src/gpac/src/utils/downloader.c:1183,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader.c:1186,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/downloader.c:1187,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:1188,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1191
      start: 1166
    functionDepth: 2
    functionLinenumber: 1166
    functionLinenumberEnd: 1191
    functionName: "GF_DownloadSession *gf_dm_sess_new(GF_DownloadManager *dm, const
      char *url, u32 dl_flags,\n                                   gf_dm_user_io user_io,\n
      \                                  void *usr_cbk,\n                                   GF_Err
      *e)"
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_new_simple
    - gf_mx_p
    - gf_dm_is_local
    - gf_dm_can_handle_url
    - gf_list_add
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT GF_DownloadSession *gf_dm_sess_new(GF_DownloadManager *dm,
      const char *url, u32 dl_flags,\n                                   gf_dm_user_io
      user_io,\n                                   void *usr_cbk,\n                                   GF_Err
      *e)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_fread
      Src: /src/gpac/src/utils/downloader.c:1199,1
    - Dst: gf_cache_is_done
      Src: /src/gpac/src/utils/downloader.c:1200,1
    - Dst: gf_cache_get_content_length
      Src: /src/gpac/src/utils/downloader.c:1201,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:1204,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:1205,1
    - Dst: curl_read_data
      Src: /src/gpac/src/utils/downloader.c:1214,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader.c:1231,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:1234,1
    - Dst: gf_ssl_read_data
      Src: /src/gpac/src/utils/downloader.c:1242,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:1244,1
    - Dst: gf_sk_receive
      Src: /src/gpac/src/utils/downloader.c:1249,1
    - Dst: GF_DownloadSession*::hmux_sess::data_received
      Src: /src/gpac/src/utils/downloader.c:1253,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:1255,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:1263,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:1265,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 53
    argCount: 4
    argNames:
    - sess
    - data
    - data_size
    - out_read
    argTypes:
    - GF_DownloadSession*
    - char*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1267
      start: 1194
    functionDepth: 1
    functionLinenumber: 1194
    functionLinenumberEnd: 1267
    functionName: gf_dm_read_data
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_ssl_read_data
    - gf_cache_is_done
    - gf_mx_p
    - SET_LAST_ERR
    - GF_DownloadSession*::hmux_sess::data_received
    - gf_sk_receive
    - gf_fread
    - GF_LOG
    - gf_sys_clock_high_res
    - gf_mx_v
    - gf_cache_get_content_length
    - curl_read_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dm_read_data(GF_DownloadSession *sess, char *data, u32 data_size,
      u32 *out_read)
  - BBCount: 56
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_configure_cache
      Src: /src/gpac/src/utils/downloader.c:1280,1
    - Dst: curl_connect
      Src: /src/gpac/src/utils/downloader.c:1286,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader.c:1294,1
    - Dst: hmux_detach_session
      Src: /src/gpac/src/utils/downloader.c:1295,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:1296,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:1299,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:1301,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:1305,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:1307,1
    - Dst: gf_dm_sess_notify_state
      Src: /src/gpac/src/utils/downloader.c:1316,1
    - Dst: gf_dm_configure_cache
      Src: /src/gpac/src/utils/downloader.c:1318,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader.c:1329,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader.c:1330,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader.c:1332,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:1333,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader.c:1352,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:1357,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:1358,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:1365,1
    - Dst: gf_mx_get_num_locks
      Src: /src/gpac/src/utils/downloader.c:1369,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:1370,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/utils/downloader.c:1371,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader.c:1376,1
    - Dst: GF_DownloadSession*::hmux_sess::setup_session
      Src: /src/gpac/src/utils/downloader.c:1383,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/downloader.c:1385,1
    - Dst: gf_dm_configure_cache
      Src: /src/gpac/src/utils/downloader.c:1389,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:1391,1
    - Dst: gf_dm_sess_notify_state
      Src: /src/gpac/src/utils/downloader.c:1399,1
    - Dst: gf_dm_configure_cache
      Src: /src/gpac/src/utils/downloader.c:1400,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:1402,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:1405,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/utils/downloader.c:1417,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/downloader.c:1420,1
    - Dst: gf_dm_sess_notify_state
      Src: /src/gpac/src/utils/downloader.c:1427,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/downloader.c:1431,1
    - Dst: strstr
      Src: /src/gpac/src/utils/downloader.c:1435,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/downloader.c:1436,1
    - Dst: strchr
      Src: /src/gpac/src/utils/downloader.c:1437,1
    - Dst: atoi
      Src: /src/gpac/src/utils/downloader.c:1439,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader.c:1444,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader.c:1445,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:1446,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:1470,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:1477,1
    - Dst: gf_dm_sess_notify_state
      Src: /src/gpac/src/utils/downloader.c:1478,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:1483,1
    - Dst: http3_connect
      Src: /src/gpac/src/utils/downloader.c:1489,1
    - Dst: gf_sk_connect
      Src: /src/gpac/src/utils/downloader.c:1496,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/utils/downloader.c:1501,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:1517,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:1526,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/utils/downloader.c:1534,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/utils/downloader.c:1535,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:1537,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/downloader.c:1537,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/utils/downloader.c:1550,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/utils/downloader.c:1551,1
    - Dst: GF_DownloadSession*::hmux_sess::destroy
      Src: /src/gpac/src/utils/downloader.c:1555,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/downloader.c:1556,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:1557,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:1561,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/downloader.c:1561,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:1565,1
    - Dst: gf_dm_sess_notify_state
      Src: /src/gpac/src/utils/downloader.c:1566,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/utils/downloader.c:1569,1
    - Dst: gf_dm_configure_cache
      Src: /src/gpac/src/utils/downloader.c:1571,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:1575,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:1576,1
    - Dst: gf_dm_sess_notify_state
      Src: /src/gpac/src/utils/downloader.c:1577,1
    - Dst: gf_ssl_try_connect
      Src: /src/gpac/src/utils/downloader.c:1587,1
    - Dst: gf_dm_connect
      Src: /src/gpac/src/utils/downloader.c:1590,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:1597,1
    - Dst: gf_dm_configure_cache
      Src: /src/gpac/src/utils/downloader.c:1601,1
    CyclomaticComplexity: 85
    EdgeCount: 85
    ICount: 248
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1603
      start: 1269
    functionDepth: 2
    functionLinenumber: 1269
    functionLinenumberEnd: 1603
    functionName: gf_dm_connect
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 2
    functionsReached:
    - gf_free
    - SET_LAST_ERR
    - GF_DownloadSession*::hmux_sess::destroy
    - gf_sk_group_register
    - strcpy
    - gf_sk_del
    - hmux_detach_session
    - gf_list_count
    - gf_opts_get_key
    - atoi
    - gf_ssl_try_connect
    - strchr
    - gf_sk_set_block_mode
    - gf_list_get
    - gf_sk_connect
    - gf_dm_configure_cache
    - gf_list_add
    - http3_connect
    - gf_mx_p
    - GF_LOG
    - gf_sk_group_unregister
    - strstr
    - curl_connect
    - gf_mx_v
    - gf_dm_sess_notify_state
    - gf_error_to_string
    - GF_DownloadSession*::hmux_sess::setup_session
    - gf_sk_new_ex
    - gf_sys_clock_high_res
    - gf_list_del
    - gf_dm_connect
    - gf_mx_get_num_locks
    - strcmp
    - gf_opts_get_bool
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void gf_dm_connect(GF_DownloadSession *sess)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_connect
      Src: /src/gpac/src/utils/downloader.c:1618,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/downloader.c:1622,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/downloader.c:1624,1
    - Dst: gf_dm_disconnect
      Src: /src/gpac/src/utils/downloader.c:1630,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:1633,1
    - Dst: gf_dm_sess_setup_from_url
      Src: /src/gpac/src/utils/downloader.c:1634,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:1636,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:1638,1
    - Dst: gf_dm_sess_notify_state
      Src: /src/gpac/src/utils/downloader.c:1639,1
    - Dst: GF_DownloadSession*::do_requests
      Src: /src/gpac/src/utils/downloader.c:1647,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 50
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1662
      start: 1605
    functionDepth: 3
    functionLinenumber: 1605
    functionLinenumberEnd: 1662
    functionName: gf_dm_refresh_cache_entry
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - SET_LAST_ERR
    - gf_dm_connect
    - GF_LOG
    - gf_dm_disconnect
    - GF_DownloadSession*::do_requests
    - gf_dm_sess_notify_state
    - gf_sys_clock
    - gf_dm_sess_setup_from_url
    linkageType: ''
    returnType: DownloadedCacheEntry
    signature: DownloadedCacheEntry gf_dm_refresh_cache_entry(GF_DownloadSession *sess)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_cache_get_mime_type
      Src: /src/gpac/src/utils/downloader.c:1669,1
    - Dst: gf_dm_refresh_cache_entry
      Src: /src/gpac/src/utils/downloader.c:1673,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:1676,1
    - Dst: gf_cache_get_mime_type
      Src: /src/gpac/src/utils/downloader.c:1677,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1678
      start: 1664
    functionDepth: 4
    functionLinenumber: 1664
    functionLinenumberEnd: 1678
    functionName: gf_dm_sess_mime_type
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_dm_refresh_cache_entry
    - gf_assert
    - gf_cache_get_mime_type
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_dm_sess_mime_type(GF_DownloadSession *sess)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_cache_get_end_range
      Src: /src/gpac/src/utils/downloader.c:1687,1
    - Dst: gf_cache_set_end_range
      Src: /src/gpac/src/utils/downloader.c:1705,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 39
    argCount: 4
    argNames:
    - sess
    - start_range
    - end_range
    - discontinue_cache
    argTypes:
    - GF_DownloadSession*
    - u64
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1723
      start: 1680
    functionDepth: 1
    functionLinenumber: 1680
    functionLinenumberEnd: 1723
    functionName: gf_dm_sess_set_range
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 1
    functionsReached:
    - gf_cache_set_end_range
    - gf_cache_get_end_range
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_sess_set_range(GF_DownloadSession *sess, u64 start_range,
      u64 end_range, Bool discontinue_cache)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_read_data
      Src: /src/gpac/src/utils/downloader.c:1730,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:1737,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1740
      start: 1726
    functionDepth: 2
    functionLinenumber: 1726
    functionLinenumberEnd: 1740
    functionName: gf_dm_sess_flush_input
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_dm_read_data
    - SET_LAST_ERR
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_flush_input(GF_DownloadSession *sess)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader.c:1751,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader.c:1754,1
    - Dst: gf_fs_post_user_task
      Src: /src/gpac/src/utils/downloader.c:1757,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:1761,1
    - Dst: gf_th_new
      Src: /src/gpac/src/utils/downloader.c:1764,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/utils/downloader.c:1764,1
    - Dst: gf_th_run
      Src: /src/gpac/src/utils/downloader.c:1766,1
    - Dst: gf_dm_connect
      Src: /src/gpac/src/utils/downloader.c:1782,1
    - Dst: GF_DownloadSession*::do_requests
      Src: /src/gpac/src/utils/downloader.c:1796,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:1800,1
    - Dst: sess_connection_closed
      Src: /src/gpac/src/utils/downloader.c:1801,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:1816,1
    - Dst: GF_DownloadSession*::do_requests
      Src: /src/gpac/src/utils/downloader.c:1820,1
    - Dst: gf_dm_sess_flush_input
      Src: /src/gpac/src/utils/downloader.c:1825,1
    - Dst: GF_DownloadSession*::hmux_sess::write
      Src: /src/gpac/src/utils/downloader.c:1826,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:1845,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 95
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1851
      start: 1743
    functionDepth: 3
    functionLinenumber: 1743
    functionLinenumberEnd: 1851
    functionName: gf_dm_sess_process
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 4
    functionsReached:
    - gf_th_run
    - sess_connection_closed
    - SET_LAST_ERR
    - gf_fs_post_user_task
    - GF_SAFEALLOC
    - GF_LOG
    - gf_dm_connect
    - gf_th_new
    - gf_dm_sess_flush_input
    - GF_DownloadSession*::hmux_sess::write
    - GF_DownloadSession*::do_requests
    - gf_opts_get_bool
    - gf_file_basename
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_sess_process(GF_DownloadSession *sess)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_connect
      Src: /src/gpac/src/utils/downloader.c:1866,1
    - Dst: GF_DownloadSession*::do_requests
      Src: /src/gpac/src/utils/downloader.c:1870,1
    - Dst: gf_cache_are_headers_processed
      Src: /src/gpac/src/utils/downloader.c:1872,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1887
      start: 1853
    functionDepth: 3
    functionLinenumber: 1853
    functionLinenumberEnd: 1887
    functionName: gf_dm_sess_process_headers
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_cache_are_headers_processed
    - gf_dm_connect
    - GF_DownloadSession*::do_requests
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_sess_process_headers(GF_DownloadSession *sess)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader.c:1895,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:1897,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/downloader.c:1900,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/downloader.c:1901,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/downloader.c:1902,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/downloader.c:1903,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/downloader.c:1904,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/utils/downloader.c:1905,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader.c:1908,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader.c:1911,1
    - Dst: curl_multi_init
      Src: /src/gpac/src/utils/downloader.c:1912,1
    - Dst: curl_multi_setopt
      Src: /src/gpac/src/utils/downloader.c:1913,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/utils/downloader.c:1914,1
    - Dst: curl_global_init
      Src: /src/gpac/src/utils/downloader.c:1915,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader.c:1919,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/downloader.c:1921,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:1922,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:1923,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:1924,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/downloader.c:1930,1
    - Dst: gf_get_default_cache_directory
      Src: /src/gpac/src/utils/downloader.c:1934,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader.c:1937,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/downloader.c:1938,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader.c:1938,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader.c:1939,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:1941,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/downloader.c:1948,1
    - Dst: strcat
      Src: /src/gpac/src/utils/downloader.c:1949,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/downloader.c:1950,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/utils/downloader.c:1952,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/downloader.c:1953,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:1955,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:1956,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/downloader.c:1963,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/downloader.c:1964,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/downloader.c:1969,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader.c:1977,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader.c:1979,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader.c:1983,1
    - Dst: gf_cache_cleanup
      Src: /src/gpac/src/utils/downloader.c:1985,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/downloader.c:1988,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/downloader.c:1989,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader.c:1990,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:1992,1
    - Dst: gf_cache_cleanup
      Src: /src/gpac/src/utils/downloader.c:1999,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 86
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2001
      start: 1889
    functionDepth: 1
    functionLinenumber: 1889
    functionLinenumberEnd: 2001
    functionName: GF_DownloadManager *gf_dm_new(GF_FilterSession *fsess)
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - curl_global_init
    - strcpy
    - gf_fopen
    - gf_opts_get_key
    - gf_mx_new
    - gf_get_default_cache_directory
    - strcat
    - gf_list_new
    - gf_strdup
    - sprintf
    - curl_multi_init
    - gf_mx_p
    - gf_cache_cleanup
    - GF_LOG
    - gf_mkdir
    - gf_mx_v
    - gf_malloc
    - strlen
    - gf_fclose
    - gf_opts_get_int
    - strcmp
    - gf_file_delete
    - gf_opts_get_bool
    - curl_multi_setopt
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_DownloadManager *gf_dm_new(GF_FilterSession *fsess)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - dm
    - get_user_password
    - usr_cbk
    argTypes:
    - GF_DownloadManager*
    - gf_dm_get_usr_pass
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2010
      start: 2003
    functionDepth: 0
    functionLinenumber: 2003
    functionLinenumberEnd: 2010
    functionName: gf_dm_set_auth_callback
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_set_auth_callback(GF_DownloadManager *dm, gf_dm_get_usr_pass
      get_user_password, void *usr_cbk)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:2017,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:2018,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader.c:2019,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader.c:2021,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader.c:2022,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/downloader.c:2023,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:2024,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/downloader.c:2025,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:2026,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:2029,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader.c:2033,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader.c:2034,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/utils/downloader.c:2035,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/downloader.c:2037,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:2039,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader.c:2040,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader.c:2041,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/downloader.c:2042,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:2043,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/downloader.c:2045,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:2047,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader.c:2048,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader.c:2049,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/downloader.c:2050,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:2051,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/downloader.c:2053,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:2055,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader.c:2058,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/utils/downloader.c:2059,1
    - Dst: gf_cache_entry_set_delete_files_when_deleted
      Src: /src/gpac/src/utils/downloader.c:2061,1
    - Dst: gf_cache_delete_entry
      Src: /src/gpac/src/utils/downloader.c:2062,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/downloader.c:2064,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/downloader.c:2067,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:2070,1
    - Dst: curl_multi_cleanup
      Src: /src/gpac/src/utils/downloader.c:2075,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/utils/downloader.c:2077,1
    - Dst: SSL_CTX_free
      Src: /src/gpac/src/utils/downloader.c:2081,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:2084,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/utils/downloader.c:2085,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:2087,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 57
    argCount: 1
    argNames:
    - dm
    argTypes:
    - GF_DownloadManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2088
      start: 2012
    functionDepth: 1
    functionLinenumber: 2012
    functionLinenumberEnd: 2088
    functionName: gf_dm_del
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_assert
    - gf_list_get
    - curl_multi_cleanup
    - gf_list_pop_front
    - SSL_CTX_free
    - gf_list_count
    - gf_cache_delete_entry
    - gf_file_delete
    - gf_mx_v
    - gf_dm_sess_del
    - gf_list_del
    - gf_cache_entry_set_delete_files_when_deleted
    - gf_list_rem
    - gf_mx_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_del(GF_DownloadManager *dm)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:2104,1
    - Dst: memset
      Src: /src/gpac/src/utils/downloader.c:2116,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader.c:2117,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2125,1
    - Dst: gf_dm_sess_user_io
      Src: /src/gpac/src/utils/downloader.c:2126,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2128,1
    - Dst: gf_dm_sess_user_io
      Src: /src/gpac/src/utils/downloader.c:2150,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 47
    argCount: 3
    argNames:
    - sess
    - data
    - nbBytes
    argTypes:
    - GF_DownloadSession*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2155
      start: 2098
    functionDepth: 1
    functionLinenumber: 2098
    functionLinenumberEnd: 2155
    functionName: gf_icy_skip_data
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - memcpy
    - GF_LOG
    - memset
    - gf_dm_sess_user_io
    linkageType: ''
    returnType: void
    signature: void gf_icy_skip_data(GF_DownloadSession * sess, const char * data,
      u32 nbBytes)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2170,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2174,1
    - Dst: strstr
      Src: /src/gpac/src/utils/downloader.c:2194,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2203,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader.c:2208,1
    - Dst: strchr
      Src: /src/gpac/src/utils/downloader.c:2210,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/downloader.c:2212,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2218,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2224,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader.c:2224,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/utils/downloader.c:2224,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:2231,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 64
    argCount: 5
    argNames:
    - sess
    - first_chunk_in_payload
    - body_start
    - payload_size
    - header_size
    argTypes:
    - GF_DownloadSession*
    - Bool
    - char*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2233
      start: 2158
    functionDepth: 1
    functionLinenumber: 2158
    functionLinenumberEnd: 2233
    functionName: gf_dm_get_chunk_data
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_net_get_utc
    - sscanf
    - GF_LOG
    - strstr
    - strchr
    - gf_sys_clock_high_res
    - strlen
    linkageType: ''
    returnType: char
    signature: char *gf_dm_get_chunk_data(GF_DownloadSession *sess, Bool first_chunk_in_payload,
      char *body_start, u32 *payload_size, u32 *header_size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/utils/downloader.c:2249,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:2250,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2254,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:2259,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2263,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2265
      start: 2236
    functionDepth: 2
    functionLinenumber: 2236
    functionLinenumberEnd: 2265
    functionName: dm_sess_update_download_rate
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_log_tool_level_on
    - GF_LOG
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: void
    signature: void dm_sess_update_download_rate(GF_DownloadSession * sess)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_get_chunk_data
      Src: /src/gpac/src/utils/downloader.c:2282,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/downloader.c:2286,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader.c:2287,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:2293,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/downloader.c:2315,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader.c:2316,1
    - Dst: dm_sess_update_download_rate
      Src: /src/gpac/src/utils/downloader.c:2323,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2325,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2327,1
    - Dst: gf_icy_skip_data
      Src: /src/gpac/src/utils/downloader.c:2332,1
    - Dst: gf_cache_write_to_cache
      Src: /src/gpac/src/utils/downloader.c:2335,1
    - Dst: gf_dm_sess_user_io
      Src: /src/gpac/src/utils/downloader.c:2342,1
    - Dst: gf_cache_set_content_length
      Src: /src/gpac/src/utils/downloader.c:2356,1
    - Dst: gf_cache_close_write_cache
      Src: /src/gpac/src/utils/downloader.c:2357,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2358,1
    - Dst: gf_cache_get_url
      Src: /src/gpac/src/utils/downloader.c:2359,1
    - Dst: gf_cache_get_cache_filename
      Src: /src/gpac/src/utils/downloader.c:2359,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/downloader.c:2364,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/downloader.c:2365,1
    - Dst: gf_cache_cleanup
      Src: /src/gpac/src/utils/downloader.c:2366,1
    - Dst: gf_dm_disconnect
      Src: /src/gpac/src/utils/downloader.c:2373,1
    - Dst: gf_dm_sess_user_io
      Src: /src/gpac/src/utils/downloader.c:2377,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:2378,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:2379,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2381,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/utils/downloader.c:2381,1
    - Dst: gf_cache_get_url
      Src: /src/gpac/src/utils/downloader.c:2381,1
    - Dst: memmove
      Src: /src/gpac/src/utils/downloader.c:2392,1
    - Dst: gf_dm_data_received
      Src: /src/gpac/src/utils/downloader.c:2400,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 102
    argCount: 6
    argNames:
    - sess
    - payload
    - payload_size
    - store_in_init
    - rewrite_size
    - original_payload
    argTypes:
    - GF_DownloadSession*
    - u8*
    - u32
    - Bool
    - u32*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2402
      start: 2268
    functionDepth: 3
    functionLinenumber: 2268
    functionLinenumberEnd: 2402
    functionName: gf_dm_data_received
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 3
    functionsReached:
    - gf_cache_get_cache_filename
    - gf_dm_disconnect
    - gf_dm_data_received
    - gf_icy_skip_data
    - gf_file_basename
    - gf_sys_clock
    - gf_dm_sess_user_io
    - gf_realloc
    - gf_cache_get_url
    - gf_assert
    - memcpy
    - gf_cache_write_to_cache
    - memmove
    - GF_LOG
    - gf_cache_set_content_length
    - gf_sys_clock_high_res
    - gf_cache_close_write_cache
    - gf_dm_get_chunk_data
    - dm_sess_update_download_rate
    - gf_cache_cleanup
    linkageType: ''
    returnType: void
    signature: void gf_dm_data_received(GF_DownloadSession *sess, u8 *payload, u32
      payload_size, Bool store_in_init, u32 *rewrite_size, u8 *original_payload)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader.c:2409,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:2410,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader.c:2411,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader.c:2414,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:2430,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:2444,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:2450,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 39
    argCount: 2
    argNames:
    - dm
    - for_sess
    argTypes:
    - GF_DownloadManager*
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2459
      start: 2404
    functionDepth: 1
    functionLinenumber: 2404
    functionLinenumberEnd: 2459
    functionName: dm_exceeds_cap_rate
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_list_count
    - gf_mx_v
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: Bool
    signature: Bool dm_exceeds_cap_rate(GF_DownloadManager * dm, GF_DownloadSession
      *for_sess)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:2463,1
    - Dst: dm_sess_update_download_rate
      Src: /src/gpac/src/utils/downloader.c:2482,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - sess
    - nb_bytes
    argTypes:
    - GF_DownloadSession*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2486
      start: 2461
    functionDepth: 3
    functionLinenumber: 2461
    functionLinenumberEnd: 2486
    functionName: gf_dm_sess_estimate_chunk_rate
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - dm_sess_update_download_rate
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_estimate_chunk_rate(GF_DownloadSession *sess, u32 nb_bytes)
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_connect
      Src: /src/gpac/src/utils/downloader.c:2524,1
    - Dst: GF_DownloadSession*::do_requests
      Src: /src/gpac/src/utils/downloader.c:2529,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader.c:2545,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:2547,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader.c:2553,1
    - Dst: memmove
      Src: /src/gpac/src/utils/downloader.c:2556,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:2564,1
    - Dst: gf_cache_get_content_length
      Src: /src/gpac/src/utils/downloader.c:2566,1
    - Dst: gf_cache_get_content
      Src: /src/gpac/src/utils/downloader.c:2568,1
    - Dst: gf_cache_is_done
      Src: /src/gpac/src/utils/downloader.c:2570,1
    - Dst: gf_cache_release_content
      Src: /src/gpac/src/utils/downloader.c:2577,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:2580,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:2585,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader.c:2596,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:2601,1
    - Dst: gf_cache_release_content
      Src: /src/gpac/src/utils/downloader.c:2605,1
    - Dst: dm_exceeds_cap_rate
      Src: /src/gpac/src/utils/downloader.c:2609,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2627,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader.c:2632,1
    - Dst: gf_dm_read_data
      Src: /src/gpac/src/utils/downloader.c:2636,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:2638,1
    - Dst: gf_dm_data_received
      Src: /src/gpac/src/utils/downloader.c:2650,1
    - Dst: hmux_fetch_data
      Src: /src/gpac/src/utils/downloader.c:2663,1
    - Dst: GF_DownloadSession*::hmux_sess::write
      Src: /src/gpac/src/utils/downloader.c:2664,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:2669,1
    - Dst: gf_dm_sess_estimate_chunk_rate
      Src: /src/gpac/src/utils/downloader.c:2686,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:2695,1
    - Dst: gf_sk_probe
      Src: /src/gpac/src/utils/downloader.c:2707,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:2710,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:2713,1
    - Dst: sess_connection_closed
      Src: /src/gpac/src/utils/downloader.c:2714,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2716,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:2719,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:2735,1
    CyclomaticComplexity: 79
    EdgeCount: 79
    ICount: 183
    argCount: 4
    argNames:
    - sess
    - buffer
    - buffer_size
    - read_size
    argTypes:
    - GF_DownloadSession*
    - char*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2739
      start: 2488
    functionDepth: 4
    functionLinenumber: 2488
    functionLinenumberEnd: 2739
    functionName: gf_dm_sess_fetch_data
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 3
    functionsReached:
    - gf_free
    - sess_connection_closed
    - SET_LAST_ERR
    - gf_dm_data_received
    - gf_cache_get_content_length
    - gf_cache_is_done
    - gf_assert
    - memcpy
    - gf_sk_probe
    - gf_cache_release_content
    - memmove
    - GF_LOG
    - gf_cache_get_content
    - hmux_fetch_data
    - GF_DownloadSession*::hmux_sess::write
    - GF_DownloadSession*::do_requests
    - dm_exceeds_cap_rate
    - gf_sys_clock_high_res
    - gf_dm_connect
    - gf_dm_read_data
    - gf_dm_sess_estimate_chunk_rate
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_sess_fetch_data(GF_DownloadSession *sess, char *buffer,
      u32 buffer_size, u32 *read_size)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 31
    argCount: 7
    argNames:
    - sess
    - server
    - path
    - total_size
    - bytes_done
    - bytes_per_sec
    - net_status
    argTypes:
    - GF_DownloadSession*
    - char**
    - char**
    - u64*
    - u64*
    - u32*
    - GF_NetIOStatus*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2770
      start: 2741
    functionDepth: 0
    functionLinenumber: 2741
    functionLinenumberEnd: 2770
    functionName: gf_dm_sess_get_stats
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_sess_get_stats(GF_DownloadSession * sess, const char
      **server, const char **path, u64 *total_size, u64 *bytes_done, u32 *bytes_per_sec,
      GF_NetIOStatus *net_status)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2777
      start: 2772
    functionDepth: 0
    functionLinenumber: 2772
    functionLinenumberEnd: 2777
    functionName: gf_dm_sess_get_utc_start
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_sess_get_utc_start(GF_DownloadSession * sess)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_cache_get_cache_filename
      Src: /src/gpac/src/utils/downloader.c:2785,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2786
      start: 2779
    functionDepth: 1
    functionLinenumber: 2779
    functionLinenumberEnd: 2786
    functionName: gf_dm_sess_get_cache_name
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 4
    functionsReached:
    - gf_cache_get_cache_filename
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_dm_sess_get_cache_name(GF_DownloadSession * sess)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader.c:2792,1
    - Dst: GF_DownloadSession*::hmux_sess::stream_reset
      Src: /src/gpac/src/utils/downloader.c:2796,1
    - Dst: GF_DownloadSession*::hmux_sess::write
      Src: /src/gpac/src/utils/downloader.c:2797,1
    - Dst: gf_dm_disconnect
      Src: /src/gpac/src/utils/downloader.c:2800,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:2803,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:2804,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2806
      start: 2788
    functionDepth: 3
    functionLinenumber: 2788
    functionLinenumberEnd: 2806
    functionName: gf_dm_sess_abort
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - SET_LAST_ERR
    - GF_DownloadSession*::hmux_sess::stream_reset
    - gf_dm_disconnect
    - GF_DownloadSession*::hmux_sess::write
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_sess_abort(GF_DownloadSession * sess)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: dm_exceeds_cap_rate
      Src: /src/gpac/src/utils/downloader.c:3279,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:3288,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader.c:3291,1
    - Dst: gf_dm_read_data
      Src: /src/gpac/src/utils/downloader.c:3293,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:3295,1
    - Dst: gf_dm_sess_notify_state
      Src: /src/gpac/src/utils/downloader.c:3297,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:3298,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:3299,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/downloader.c:3299,1
    - Dst: gf_dm_disconnect
      Src: /src/gpac/src/utils/downloader.c:3300,1
    - Dst: gf_cache_get_content_length
      Src: /src/gpac/src/utils/downloader.c:3307,1
    - Dst: hmux_flush_internal_data
      Src: /src/gpac/src/utils/downloader.c:3311,1
    - Dst: gf_dm_data_received
      Src: /src/gpac/src/utils/downloader.c:3314,1
    - Dst: gf_dm_sess_notify_state
      Src: /src/gpac/src/utils/downloader.c:3320,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:3321,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:3322,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/downloader.c:3322,1
    - Dst: gf_cache_set_content_length
      Src: /src/gpac/src/utils/downloader.c:3324,1
    - Dst: gf_dm_disconnect
      Src: /src/gpac/src/utils/downloader.c:3328,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:3329,1
    - Dst: gf_dm_sess_notify_state
      Src: /src/gpac/src/utils/downloader.c:3330,1
    - Dst: hmux_flush_internal_data
      Src: /src/gpac/src/utils/downloader.c:3341,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:3344,1
    - Dst: gf_dm_data_received
      Src: /src/gpac/src/utils/downloader.c:3348,1
    - Dst: gf_dm_sess_estimate_chunk_rate
      Src: /src/gpac/src/utils/downloader.c:3351,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 70
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3360
      start: 3268
    functionDepth: 4
    functionLinenumber: 3268
    functionLinenumberEnd: 3360
    functionName: http_parse_remaining_body
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - SET_LAST_ERR
    - GF_LOG
    - memcpy
    - gf_dm_disconnect
    - gf_dm_data_received
    - hmux_flush_internal_data
    - gf_dm_read_data
    - gf_cache_get_content_length
    - gf_dm_sess_notify_state
    - dm_exceeds_cap_rate
    - gf_error_to_string
    - gf_cache_set_content_length
    - gf_sys_clock_high_res
    - gf_dm_sess_estimate_chunk_rate
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err http_parse_remaining_body(GF_DownloadSession * sess)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader.c:3371,1
    - Dst: gf_dm_sess_user_io
      Src: /src/gpac/src/utils/downloader.c:3373,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - sess
    - sHTTP
    - bytesRead
    - BodyStart
    argTypes:
    - GF_DownloadSession*
    - char*
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3375
      start: 3362
    functionDepth: 1
    functionLinenumber: 3362
    functionLinenumberEnd: 3375
    functionName: notify_error_body
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - strlen
    - gf_dm_sess_user_io
    linkageType: ''
    returnType: void
    signature: void notify_error_body(GF_DownloadSession *sess, char * sHTTP, s32
      bytesRead, s32 BodyStart)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:3379,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:3380,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:3381,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:3382,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:3383,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:3384,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:3385,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:3386,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - comp
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3388
      start: 3377
    functionDepth: 0
    functionLinenumber: 3377
    functionLinenumberEnd: 3388
    functionName: http_parse_method
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: u32
    signature: u32 http_parse_method(const char *comp)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_cache_is_in_progress
      Src: /src/gpac/src/utils/downloader.c:4466,1
    - Dst: gf_dm_disconnect
      Src: /src/gpac/src/utils/downloader.c:4468,1
    - Dst: memset
      Src: /src/gpac/src/utils/downloader.c:4470,1
    - Dst: gf_dm_sess_user_io
      Src: /src/gpac/src/utils/downloader.c:4473,1
    - Dst: gf_dm_sess_flush_async
      Src: /src/gpac/src/utils/downloader.c:4478,1
    - Dst: wait_for_header_and_parse
      Src: /src/gpac/src/utils/downloader.c:4485,1
    - Dst: http_send_headers
      Src: /src/gpac/src/utils/downloader.c:4487,1
    - Dst: http_send_headers
      Src: /src/gpac/src/utils/downloader.c:4492,1
    - Dst: wait_for_header_and_parse
      Src: /src/gpac/src/utils/downloader.c:4494,1
    - Dst: gf_icy_skip_data
      Src: /src/gpac/src/utils/downloader.c:4508,1
    - Dst: gf_dm_sess_user_io
      Src: /src/gpac/src/utils/downloader.c:4515,1
    - Dst: http_parse_remaining_body
      Src: /src/gpac/src/utils/downloader.c:4519,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 54
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4524
      start: 4460
    functionDepth: 5
    functionLinenumber: 4460
    functionLinenumberEnd: 4524
    functionName: http_do_requests
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_flush_async
    - gf_dm_disconnect
    - gf_cache_is_in_progress
    - wait_for_header_and_parse
    - memset
    - http_send_headers
    - gf_icy_skip_data
    - http_parse_remaining_body
    - gf_dm_sess_user_io
    linkageType: ''
    returnType: void
    signature: void http_do_requests(GF_DownloadSession *sess)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - sess
    - max_rate
    argTypes:
    - GF_DownloadSession*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4533
      start: 4526
    functionDepth: 0
    functionLinenumber: 4526
    functionLinenumberEnd: 4533
    functionName: gf_dm_sess_set_max_rate
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_sess_set_max_rate(GF_DownloadSession *sess, u32 max_rate)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4538
      start: 4534
    functionDepth: 0
    functionLinenumber: 4534
    functionLinenumberEnd: 4538
    functionName: gf_dm_sess_get_max_rate
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_sess_get_max_rate(GF_DownloadSession *sess)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4543
      start: 4539
    functionDepth: 0
    functionLinenumber: 4539
    functionLinenumberEnd: 4543
    functionName: gf_dm_sess_is_regulated
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_sess_is_regulated(GF_DownloadSession *sess)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fwrite
      Src: /src/gpac/src/utils/downloader.c:4555,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:4557,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - cbk
    - param
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4560
      start: 4549
    functionDepth: 1
    functionLinenumber: 4549
    functionLinenumberEnd: 4560
    functionName: wget_NetIO
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_fwrite
    linkageType: ''
    returnType: void
    signature: void wget_NetIO(void *cbk, GF_NETIO_Parameter *param)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_new
      Src: /src/gpac/src/utils/downloader.c:4566,1
    - Dst: gf_dm_wget_with_cache
      Src: /src/gpac/src/utils/downloader.c:4569,1
    - Dst: gf_dm_del
      Src: /src/gpac/src/utils/downloader.c:4570,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - url
    - filename
    - start_range
    - end_range
    - redirected_url
    argTypes:
    - char*
    - char*
    - u64
    - u64
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4572
      start: 4562
    functionDepth: 2
    functionLinenumber: 4562
    functionLinenumberEnd: 4572
    functionName: gf_dm_wget
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 4
    functionsReached:
    - gf_dm_del
    - gf_dm_new
    - gf_dm_wget_with_cache
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_wget(const char *url, const char *filename, u64 start_range,
      u64 end_range, char **redirected_url)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/downloader.c:4582,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:4584,1
    - Dst: gf_dm_sess_new_simple
      Src: /src/gpac/src/utils/downloader.c:4587,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/utils/downloader.c:4599,1
    - Dst: gf_sleep
      Src: /src/gpac/src/utils/downloader.c:4605,1
    - Dst: gf_cache_set_content_length
      Src: /src/gpac/src/utils/downloader.c:4608,1
    - Dst: gf_cache_close_write_cache
      Src: /src/gpac/src/utils/downloader.c:4609,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/downloader.c:4610,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:4613,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/utils/downloader.c:4615,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 39
    argCount: 6
    argNames:
    - dm
    - url
    - filename
    - start_range
    - end_range
    - redirected_url
    argTypes:
    - GF_DownloadManager*
    - char*
    - char*
    - u64
    - u64
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4617
      start: 4574
    functionDepth: 1
    functionLinenumber: 4574
    functionLinenumberEnd: 4617
    functionName: gf_dm_wget_with_cache
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 1
    functionsReached:
    - gf_dm_sess_new_simple
    - gf_cache_close_write_cache
    - gf_dm_sess_process
    - gf_fclose
    - gf_strdup
    - GF_LOG
    - gf_sleep
    - gf_fopen
    - gf_cache_set_content_length
    - gf_dm_sess_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_wget_with_cache(GF_DownloadManager * dm, const char
      *url, const char *filename, u64 start_range, u64 end_range, char **redirected_url)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dnload
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4623
      start: 4619
    functionDepth: 0
    functionLinenumber: 4619
    functionLinenumberEnd: 4623
    functionName: gf_dm_sess_get_resource_name
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_dm_sess_get_resource_name(GF_DownloadSession *dnload)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader.c:4637,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/downloader.c:4639,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - dm
    - rate_in_bits_per_sec
    argTypes:
    - GF_DownloadManager*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4641
      start: 4627
    functionDepth: 1
    functionLinenumber: 4627
    functionLinenumberEnd: 4641
    functionName: gf_dm_set_data_rate
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 2
    functionsReached:
    - sprintf
    - gf_opts_set_key
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_set_data_rate(GF_DownloadManager *dm, u32 rate_in_bits_per_sec)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dm
    argTypes:
    - GF_DownloadManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4647
      start: 4643
    functionDepth: 0
    functionLinenumber: 4643
    functionLinenumberEnd: 4647
    functionName: gf_dm_get_data_rate
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_get_data_rate(GF_DownloadManager *dm)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader.c:4655,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader.c:4656,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader.c:4659,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:4663,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:4670,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - dm
    argTypes:
    - GF_DownloadManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4672
      start: 4649
    functionDepth: 1
    functionLinenumber: 4649
    functionLinenumberEnd: 4672
    functionName: gf_dm_get_global_rate
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_list_count
    - gf_mx_v
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_get_global_rate(GF_DownloadManager *dm)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4686
      start: 4674
    functionDepth: 0
    functionLinenumber: 4674
    functionLinenumberEnd: 4686
    functionName: gf_dm_sess_is_hmux
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_HTTPSessionType
    signature: GF_HTTPSessionType gf_dm_sess_is_hmux(GF_DownloadSession *sess)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4700
      start: 4688
    functionDepth: 0
    functionLinenumber: 4688
    functionLinenumberEnd: 4700
    functionName: gf_dm_sess_use_tls
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_dm_sess_use_tls(GF_DownloadSession * sess)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4708
      start: 4702
    functionDepth: 0
    functionLinenumber: 4702
    functionLinenumberEnd: 4708
    functionName: gf_dm_sess_get_resource_size
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_dm_sess_get_resource_size(GF_DownloadSession * sess)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader.c:4715,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader.c:4717,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/downloader.c:4718,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - sess
    - name
    argTypes:
    - GF_DownloadSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4721
      start: 4710
    functionDepth: 1
    functionLinenumber: 4710
    functionLinenumberEnd: 4721
    functionName: gf_dm_sess_get_header
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - stricmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_dm_sess_get_header(GF_DownloadSession *sess, const char
      *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader.c:4729,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 4
    argNames:
    - sess
    - idx
    - hdr_name
    - hdr_val
    argTypes:
    - GF_DownloadSession*
    - u32*
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4735
      start: 4723
    functionDepth: 1
    functionLinenumber: 4723
    functionLinenumberEnd: 4735
    functionName: gf_dm_sess_enum_headers
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_sess_enum_headers(GF_DownloadSession *sess, u32 *idx,
      const char **hdr_name, const char **hdr_val)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 6
    argNames:
    - sess
    - req_hdr_size
    - rsp_hdr_size
    - connect_time
    - reply_time
    - download_time
    argTypes:
    - GF_DownloadSession*
    - u32*
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4749
      start: 4737
    functionDepth: 0
    functionLinenumber: 4737
    functionLinenumberEnd: 4749
    functionName: gf_dm_sess_get_header_sizes_and_times
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_sess_get_header_sizes_and_times(GF_DownloadSession
      *sess, u32 *req_hdr_size, u32 *rsp_hdr_size, u32 *connect_time, u32 *reply_time,
      u32 *download_time)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - sess
    - force_keep
    argTypes:
    - GF_DownloadSession*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4762
      start: 4751
    functionDepth: 0
    functionLinenumber: 4751
    functionLinenumberEnd: 4762
    functionName: gf_dm_sess_force_memory_mode
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_sess_force_memory_mode(GF_DownloadSession *sess, u32
      force_keep)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_select
      Src: /src/gpac/src/utils/downloader.c:4770,1
    - Dst: GF_DownloadSession*::hmux_sess::async_flush
      Src: /src/gpac/src/utils/downloader.c:4777,1
    - Dst: dm_sess_write
      Src: /src/gpac/src/utils/downloader.c:4785,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 19
    argCount: 3
    argNames:
    - sess
    - no_select
    - for_close
    argTypes:
    - GF_DownloadSession*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4790
      start: 4765
    functionDepth: 2
    functionLinenumber: 4765
    functionLinenumberEnd: 4790
    functionName: gf_dm_sess_flush_async_close
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - dm_sess_write
    - gf_sk_select
    - GF_DownloadSession*::hmux_sess::async_flush
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dm_sess_flush_async_close(GF_DownloadSession *sess, Bool
      no_select, Bool for_close)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_flush_async_close
      Src: /src/gpac/src/utils/downloader.c:4794,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sess
    - no_select
    argTypes:
    - GF_DownloadSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4795
      start: 4792
    functionDepth: 3
    functionLinenumber: 4792
    functionLinenumberEnd: 4795
    functionName: gf_dm_sess_flush_async
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 1
    functionsReached:
    - gf_dm_sess_flush_async_close
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dm_sess_flush_async(GF_DownloadSession *sess, Bool no_select)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_flush_async_close
      Src: /src/gpac/src/utils/downloader.c:4798,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4799
      start: 4796
    functionDepth: 3
    functionLinenumber: 4796
    functionLinenumberEnd: 4799
    functionName: gf_dm_sess_flush_close
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_flush_async_close
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dm_sess_flush_close(GF_DownloadSession *sess)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4810
      start: 4801
    functionDepth: 0
    functionLinenumber: 4801
    functionLinenumberEnd: 4810
    functionName: gf_dm_sess_async_pending
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_dm_sess_async_pending(GF_DownloadSession *sess)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: hmux_send_payload
      Src: /src/gpac/src/utils/downloader.c:4819,1
    - Dst: dm_sess_write
      Src: /src/gpac/src/utils/downloader.c:4832,1
    - Dst: sess_connection_closed
      Src: /src/gpac/src/utils/downloader.c:4835,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/utils/downloader.c:4843,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 3
    argNames:
    - sess
    - data
    - size
    argTypes:
    - GF_DownloadSession*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4846
      start: 4812
    functionDepth: 2
    functionLinenumber: 4812
    functionLinenumberEnd: 4846
    functionName: gf_dm_sess_send
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 1
    functionsReached:
    - dm_sess_write
    - sess_connection_closed
    - gf_dm_sess_send
    - hmux_send_payload
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_sess_send(GF_DownloadSession *sess, u8 *data, u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4851
      start: 4848
    functionDepth: 0
    functionLinenumber: 4848
    functionLinenumberEnd: 4851
    functionName: gf_dm_sess_get_socket
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Socket
    signature: GF_Socket *gf_dm_sess_get_socket(GF_DownloadSession *sess)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/utils/downloader.c:4858,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/utils/downloader.c:4860,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - sess
    - sg
    argTypes:
    - GF_DownloadSession*
    - GF_SockGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4864
      start: 4853
    functionDepth: 1
    functionLinenumber: 4853
    functionLinenumberEnd: 4864
    functionName: gf_dm_sess_set_sock_group
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_sk_group_unregister
    - gf_sk_group_register
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_set_sock_group(GF_DownloadSession *sess, GF_SockGroup
      *sg)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_flush_async
      Src: /src/gpac/src/utils/downloader.c:4870,1
    - Dst: gf_sleep
      Src: /src/gpac/src/utils/downloader.c:4871,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/downloader.c:4873,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/utils/downloader.c:4880,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4881
      start: 4866
    functionDepth: 4
    functionLinenumber: 4866
    functionLinenumberEnd: 4881
    functionName: gf_dm_sess_detach_async
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_flush_async
    - gf_sk_set_block_mode
    - gf_mx_new
    - gf_sleep
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_detach_async(GF_DownloadSession *sess)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - sess
    - timeout
    argTypes:
    - GF_DownloadSession*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4886
      start: 4883
    functionDepth: 0
    functionLinenumber: 4883
    functionLinenumberEnd: 4886
    functionName: gf_dm_sess_set_timeout
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_set_timeout(GF_DownloadSession *sess, u32 timeout)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - sess
    - netcap_id
    argTypes:
    - GF_DownloadSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4891
      start: 4888
    functionDepth: 0
    functionLinenumber: 4888
    functionLinenumberEnd: 4891
    functionName: gf_dm_sess_set_netcap_id
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_set_netcap_id(GF_DownloadSession *sess, const char
      *netcap_id)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_module.c:41,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/os_module.c:42,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/os_module.c:43,1
    - Dst: ModuleInstance*::destroy_func
      Src: /src/gpac/src/utils/os_module.c:44,1
    - Dst: FreeLibrary
      Src: /src/gpac/src/utils/os_module.c:48,1
    - Dst: dlclose
      Src: /src/gpac/src/utils/os_module.c:50,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_module.c:53,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_module.c:57,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_module.c:62,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_module.c:65,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 1
    argNames:
    - inst
    argTypes:
    - ModuleInstance*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 66
    functionName: gf_modules_free_module
    functionSourceFile: /src/gpac/src/utils/os_module.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - ModuleInstance*::destroy_func
    - gf_list_count
    - dlclose
    - gf_list_del
    - FreeLibrary
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_modules_free_module(ModuleInstance *inst)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_module.c:72,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_module.c:101,1
    - Dst: SetDllDirectory
      Src: /src/gpac/src/utils/os_module.c:104,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_module.c:108,1
    - Dst: CE_CharToWide
      Src: /src/gpac/src/utils/os_module.c:109,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_module.c:111,1
    - Dst: LoadLibrary
      Src: /src/gpac/src/utils/os_module.c:115,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_module.c:117,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_module.c:119,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_module.c:121,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_module.c:126,1
    - Dst: _T
      Src: /src/gpac/src/utils/os_module.c:126,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_module.c:127,1
    - Dst: _T
      Src: /src/gpac/src/utils/os_module.c:127,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_module.c:128,1
    - Dst: _T
      Src: /src/gpac/src/utils/os_module.c:128,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_module.c:129,1
    - Dst: _T
      Src: /src/gpac/src/utils/os_module.c:129,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_module.c:131,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_module.c:132,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_module.c:133,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_module.c:134,1
    - Dst: dlopen
      Src: /src/gpac/src/utils/os_module.c:144,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_module.c:146,1
    - Dst: dlerror
      Src: /src/gpac/src/utils/os_module.c:146,1
    - Dst: dlerror
      Src: /src/gpac/src/utils/os_module.c:149,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_module.c:151,1
    - Dst: dlsym
      Src: /src/gpac/src/utils/os_module.c:152,1
    - Dst: dlsym
      Src: /src/gpac/src/utils/os_module.c:153,1
    - Dst: dlsym
      Src: /src/gpac/src/utils/os_module.c:154,1
    - Dst: dlsym
      Src: /src/gpac/src/utils/os_module.c:155,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_module.c:159,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_module.c:163,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 51
    argCount: 1
    argNames:
    - inst
    argTypes:
    - ModuleInstance*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 165
    functionName: gf_modules_load_library
    functionSourceFile: /src/gpac/src/utils/os_module.c
    functionUses: 0
    functionsReached:
    - CE_CharToWide
    - GetProcAddress
    - GetLastError
    - dlopen
    - dlerror
    - GF_LOG
    - SetDllDirectory
    - sprintf
    - LoadLibrary
    - _T
    - dlsym
    linkageType: ''
    returnType: Bool
    signature: Bool gf_modules_load_library(ModuleInstance *inst)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_module.c:169,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_module.c:179,1
    - Dst: FreeLibrary
      Src: /src/gpac/src/utils/os_module.c:180,1
    - Dst: dlclose
      Src: /src/gpac/src/utils/os_module.c:182,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - inst
    argTypes:
    - ModuleInstance*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 188
    functionName: gf_modules_unload_library
    functionSourceFile: /src/gpac/src/utils/os_module.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - dlclose
    - strcmp
    - FreeLibrary
    linkageType: ''
    returnType: void
    signature: void gf_modules_unload_library(ModuleInstance *inst)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_module.c:211,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_module.c:211,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_module.c:211,1
    - Dst: gf_module_is_loaded
      Src: /src/gpac/src/utils/os_module.c:212,1
    - Dst: LoadLibrary
      Src: /src/gpac/src/utils/os_module.c:217,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_module.c:219,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_module.c:224,1
    - Dst: _T
      Src: /src/gpac/src/utils/os_module.c:224,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_module.c:225,1
    - Dst: _T
      Src: /src/gpac/src/utils/os_module.c:225,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_module.c:226,1
    - Dst: _T
      Src: /src/gpac/src/utils/os_module.c:226,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_module.c:227,1
    - Dst: _T
      Src: /src/gpac/src/utils/os_module.c:227,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_module.c:230,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_module.c:231,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_module.c:232,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_module.c:233,1
    - Dst: FreeLibrary
      Src: /src/gpac/src/utils/os_module.c:235,1
    - Dst: dlopen
      Src: /src/gpac/src/utils/os_module.c:245,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_module.c:247,1
    - Dst: dlerror
      Src: /src/gpac/src/utils/os_module.c:247,1
    - Dst: dlsym
      Src: /src/gpac/src/utils/os_module.c:251,1
    - Dst: dlsym
      Src: /src/gpac/src/utils/os_module.c:252,1
    - Dst: dlsym
      Src: /src/gpac/src/utils/os_module.c:253,1
    - Dst: dlsym
      Src: /src/gpac/src/utils/os_module.c:254,1
    - Dst: dlclose
      Src: /src/gpac/src/utils/os_module.c:255,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_module.c:259,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/os_module.c:266,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/os_module.c:268,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_module.c:270,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_module.c:274,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_module.c:275,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_module.c:277,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_module.c:278,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_module.c:281,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/os_module.c:282,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 55
    argCount: 4
    argNames:
    - cbck
    - item_name
    - item_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 191
    functionDepth: 1
    functionLinenumber: 191
    functionLinenumberEnd: 284
    functionName: enum_modules
    functionSourceFile: /src/gpac/src/utils/os_module.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GetProcAddress
    - gf_list_new
    - gf_module_is_loaded
    - dlerror
    - dlopen
    - gf_strdup
    - GF_SAFEALLOC
    - strrchr
    - GF_LOG
    - dlclose
    - strncmp
    - LoadLibrary
    - gf_list_add
    - _T
    - FreeLibrary
    - dlsym
    linkageType: ''
    returnType: Bool
    signature: Bool enum_modules(void *cbck, char *item_name, char *item_path, GF_FileEnumInfo
      *file_info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_module.c:290,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/os_module.c:292,1
    - Dst: gf_module_is_loaded
      Src: /src/gpac/src/utils/os_module.c:293,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/os_module.c:295,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/os_module.c:297,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_module.c:299,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_module.c:305,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/os_module.c:306,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 1
    argNames:
    - pm
    argTypes:
    - GF_ModuleManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 286
    functionDepth: 1
    functionLinenumber: 286
    functionLinenumberEnd: 308
    functionName: load_static_modules
    functionSourceFile: /src/gpac/src/utils/os_module.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_module_is_loaded
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_count
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void load_static_modules(GF_ModuleManager *pm)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: load_static_modules
      Src: /src/gpac/src/utils/os_module.c:318,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_module.c:321,1
    - Dst: gf_enum_directory
      Src: /src/gpac/src/utils/os_module.c:323,1
    - Dst: gf_enum_directory
      Src: /src/gpac/src/utils/os_module.c:328,1
    - Dst: gf_enum_directory
      Src: /src/gpac/src/utils/os_module.c:333,1
    - Dst: gf_enum_directory
      Src: /src/gpac/src/utils/os_module.c:335,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_module.c:341,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - pm
    argTypes:
    - GF_ModuleManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 311
    functionDepth: 2
    functionLinenumber: 311
    functionLinenumberEnd: 342
    functionName: gf_modules_refresh
    functionSourceFile: /src/gpac/src/utils/os_module.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_enum_directory
    - load_static_modules
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_modules_refresh(GF_ModuleManager *pm)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:57,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:70,1
    - Dst: strstr
      Src: /src/gpac/src/utils/url.c:78,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:82,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:83,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 15
    argCount: 1
    argNames:
    - pathName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 86
    functionName: URL_GetProtocolType
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 0
    functionsReached:
    - strnicmp
    - strlen
    - strstr
    linkageType: ''
    returnType: u32
    signature: u32 URL_GetProtocolType(const char *pathName)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: URL_GetProtocolType
      Src: /src/gpac/src/utils/url.c:92,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - pathName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 94
    functionName: gf_url_is_local
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 3
    functionsReached:
    - URL_GetProtocolType
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_url_is_local(const char *pathName)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: URL_GetProtocolType
      Src: /src/gpac/src/utils/url.c:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - pathName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 102
    functionName: gf_url_is_relative
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 1
    functionsReached:
    - URL_GetProtocolType
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_url_is_relative(const char *pathName)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: URL_GetProtocolType
      Src: /src/gpac/src/utils/url.c:111,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:118,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:130,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:136,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:139,1
    - Dst: URL_GetProtocolType
      Src: /src/gpac/src/utils/url.c:144,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:148,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/utils/url.c:150,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 2
    argNames:
    - pathName
    - parentPath
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 158
    functionName: gf_url_get_absolute_path
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 1
    functionsReached:
    - gf_strdup
    - URL_GetProtocolType
    - gf_url_concatenate
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_url_get_absolute_path(const char *pathName, const char
      *parentPath)
  - BBCount: 64
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:170,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:171,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:171,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/url.c:173,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:173,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/url.c:174,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:174,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/url.c:175,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:175,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/url.c:176,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:176,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/url.c:177,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/url.c:178,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/utils/url.c:180,1
    - Dst: gf_fileio_open_url
      Src: /src/gpac/src/utils/url.c:181,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:184,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/utils/url.c:184,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:188,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:188,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/url.c:189,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/url.c:194,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/url.c:194,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/url.c:197,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/url.c:197,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:202,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/url.c:203,1
    - Dst: URL_GetProtocolType
      Src: /src/gpac/src/utils/url.c:207,1
    - Dst: strstr
      Src: /src/gpac/src/utils/url.c:210,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:211,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:215,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/url.c:216,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:216,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/url.c:217,1
    - Dst: strcat
      Src: /src/gpac/src/utils/url.c:218,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:221,1
    - Dst: strstr
      Src: /src/gpac/src/utils/url.c:227,1
    - Dst: strstr
      Src: /src/gpac/src/utils/url.c:228,1
    - Dst: strstr
      Src: /src/gpac/src/utils/url.c:229,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:232,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:234,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:238,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:238,1
    - Dst: memmove
      Src: /src/gpac/src/utils/url.c:240,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:240,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:242,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:242,1
    - Dst: memmove
      Src: /src/gpac/src/utils/url.c:244,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:244,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/utils/url.c:248,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/url.c:249,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:249,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:249,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/url.c:250,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/url.c:252,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/url.c:253,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:258,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:259,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:259,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:259,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:259,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:260,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:264,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:264,1
    - Dst: memmove
      Src: /src/gpac/src/utils/url.c:266,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:266,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:268,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:268,1
    - Dst: memmove
      Src: /src/gpac/src/utils/url.c:270,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:270,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/utils/url.c:274,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/url.c:275,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/url.c:283,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/url.c:287,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:291,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/url.c:313,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:316,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:316,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:317,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:320,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/url.c:322,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/url.c:323,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:325,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/url.c:331,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/url.c:333,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/url.c:335,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:336,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:340,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:348,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/url.c:352,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/url.c:362,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/url.c:368,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:373,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:384,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:385,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/url.c:390,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/url.c:398,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/url.c:400,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/url.c:402,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/url.c:404,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:407,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/url.c:408,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:408,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/url.c:409,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:412,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:424,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:425,1
    - Dst: memmove
      Src: /src/gpac/src/utils/url.c:427,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:427,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/url.c:431,1
    CyclomaticComplexity: 125
    EdgeCount: 125
    ICount: 253
    argCount: 3
    argNames:
    - parentName
    - pathName
    - relative_to_parent
    argTypes:
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 433
    functionName: gf_url_concatenate_ex
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fileio_url
    - strcpy
    - gf_fileio_from_url
    - strchr
    - strcat
    - gf_strdup
    - strrchr
    - sprintf
    - strncmp
    - gf_dynstrcat
    - memmove
    - GF_LOG
    - gf_fileio_open_url
    - strstr
    - strnicmp
    - gf_malloc
    - strlen
    - URL_GetProtocolType
    - gf_url_concatenate
    - strcmp
    linkageType: ''
    returnType: char
    signature: char *gf_url_concatenate_ex(const char *parentName, const char *pathName,
      Bool relative_to_parent)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_url_concatenate_ex
      Src: /src/gpac/src/utils/url.c:437,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - parentName
    - pathName
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 434
    functionDepth: 2
    functionLinenumber: 434
    functionLinenumberEnd: 438
    functionName: gf_url_concatenate
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 41
    functionsReached:
    - gf_url_concatenate_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_url_concatenate(const char *parentName, const char *pathName)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_url_concatenate_ex
      Src: /src/gpac/src/utils/url.c:442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - parentName
    - pathName
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 439
    functionDepth: 2
    functionLinenumber: 439
    functionLinenumberEnd: 443
    functionName: gf_url_concatenate_parent
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 1
    functionsReached:
    - gf_url_concatenate_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_url_concatenate_parent(const char *parentName, const
      char *pathName)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:448,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:450,1
    - Dst: memmove
      Src: /src/gpac/src/utils/url.c:451,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:451,1
    - Dst: memmove
      Src: /src/gpac/src/utils/url.c:453,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:453,1
    - Dst: strstr
      Src: /src/gpac/src/utils/url.c:458,1
    - Dst: memmove
      Src: /src/gpac/src/utils/url.c:461,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:461,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 1
    argNames:
    - sURL
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 463
      start: 445
    functionDepth: 0
    functionLinenumber: 445
    functionLinenumberEnd: 463
    functionName: gf_url_to_fs_path
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 0
    functionsReached:
    - strnicmp
    - memmove
    - strlen
    - strstr
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_url_to_fs_path(char *sURL)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:475,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:479,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:481,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:481,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:488,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/url.c:489,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/url.c:490,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:497,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:500,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:500,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/url.c:509,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 45
    argCount: 1
    argNames:
    - path
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 520
      start: 469
    functionDepth: 0
    functionLinenumber: 469
    functionLinenumberEnd: 520
    functionName: gf_url_percent_encode
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 1
    functionsReached:
    - gf_strdup
    - strcpy
    - strlen
    - sprintf
    - strchr
    - gf_malloc
    linkageType: ''
    returnType: char
    signature: char *gf_url_percent_encode(const char *path)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:528,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:537,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/url.c:538,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/url.c:549,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 1
    argNames:
    - path
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 522
    functionDepth: 0
    functionLinenumber: 522
    functionLinenumberEnd: 559
    functionName: gf_url_percent_decode
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_strdup
    - sscanf
    - strlen
    linkageType: ''
    returnType: char
    signature: char *gf_url_percent_decode(const char *path)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strrchr
      Src: /src/gpac/src/utils/url.c:566,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/url.c:567,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - sURL
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 561
    functionDepth: 0
    functionLinenumber: 561
    functionLinenumberEnd: 570
    functionName: gf_url_get_resource_name
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 2
    functionsReached:
    - strrchr
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_url_get_resource_name(const char *sURL)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/utils/url.c:575,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:577,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - sURL
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 572
    functionDepth: 0
    functionLinenumber: 572
    functionLinenumberEnd: 580
    functionName: gf_url_get_path
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 1
    functionsReached:
    - strchr
    - strstr
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_url_get_path(const char *sURL)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/url.c:586,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - sURL
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 583
    functionDepth: 0
    functionLinenumber: 583
    functionLinenumberEnd: 587
    functionName: gf_url_free
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_url_free(char *sURL)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/utils/url.c:592,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:593,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:594,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - sURL
    - res_path
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 599
      start: 590
    functionDepth: 0
    functionLinenumber: 590
    functionLinenumberEnd: 599
    functionName: gf_url_remove_last_delimiter
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 0
    functionsReached:
    - strcpy
    - strlen
    linkageType: ''
    returnType: Bool
    signature: Bool gf_url_remove_last_delimiter(const char *sURL, char *res_path)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strrchr
      Src: /src/gpac/src/utils/url.c:602,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - sURL
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 601
    functionDepth: 0
    functionLinenumber: 601
    functionLinenumberEnd: 605
    functionName: gf_url_get_resource_extension
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 0
    functionsReached:
    - strrchr
    linkageType: ''
    returnType: char
    signature: char * gf_url_get_resource_extension(const char *sURL)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 113
    functionName: SOCKET_INVALID
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SOCKET_INVALID(_s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 149
    functionName: SOCKET_INVALID
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SOCKET_INVALID(_s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 156
    functionName: closesocket
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: closesocket(v)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: inet_ntop4
      Src: /src/gpac/src/utils/os_net.c:205,1
    - Dst: inet_ntop6
      Src: /src/gpac/src/utils/os_net.c:208,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - af
    - src
    - dst
    - size
    argTypes:
    - int
    - void*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 201
    functionDepth: 1
    functionLinenumber: 201
    functionLinenumberEnd: 215
    functionName: inet_ntop_xp
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - inet_ntop4
    - inet_ntop6
    linkageType: ''
    returnType: char
    signature: char * inet_ntop_xp(int af, const void *src, char *dst, size_t size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/gpac/src/utils/os_net.c:234,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:239,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - src
    - dst
    - size
    argTypes:
    - unsigned char*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 242
    functionName: inet_ntop4
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - memcpy
    - snprintf
    linkageType: ''
    returnType: char
    signature: char * inet_ntop4(const unsigned char *src, char *dst, size_t size)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:270,1
    - Dst: inet_ntop4
      Src: /src/gpac/src/utils/os_net.c:315,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_net.c:317,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/os_net.c:320,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:335,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 54
    argCount: 3
    argNames:
    - src
    - dst
    - size
    argTypes:
    - unsigned char*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 337
    functionName: inet_ntop6
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - inet_ntop4
    - snprintf
    - memcpy
    - memset
    - strlen
    linkageType: ''
    returnType: char
    signature: char * inet_ntop6(const unsigned char *src, char *dst, size_t size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: WSAStartup
      Src: /src/gpac/src/utils/os_net.c:446,1
    - Dst: socket
      Src: /src/gpac/src/utils/os_net.c:452,1
    - Dst: closesocket
      Src: /src/gpac/src/utils/os_net.c:456,1
    - Dst: WSACleanup
      Src: /src/gpac/src/utils/os_net.c:459,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 437
    functionDepth: 0
    functionLinenumber: 437
    functionLinenumberEnd: 466
    functionName: gf_net_has_ipv6
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - closesocket
    - socket
    - WSACleanup
    - WSAStartup
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_net_has_ipv6()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/os_net.c:471,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_net.c:481,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 1
    argNames:
    - address
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 468
    functionDepth: 0
    functionLinenumber: 468
    functionLinenumberEnd: 492
    functionName: gf_net_is_ipv6
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 2
    functionsReached:
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_net_is_ipv6(const char *address)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: WSAStartup
      Src: /src/gpac/src/utils/os_net.c:516,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:522,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_net.c:528,1
    - Dst: strncpy
      Src: /src/gpac/src/utils/os_net.c:532,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_net.c:535,1
    - Dst: memmove
      Src: /src/gpac/src/utils/os_net.c:536,1
    - Dst: getaddrinfo
      Src: /src/gpac/src/utils/os_net.c:541,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 5
    argNames:
    - PeerName
    - PortNumber
    - family
    - flags
    - sock_type
    argTypes:
    - char*
    - u16
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 543
      start: 506
    functionDepth: 0
    functionLinenumber: 506
    functionLinenumberEnd: 543
    functionName: gf_sk_get_ipv6_addr
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - memmove
    - sprintf
    - strncpy
    - memset
    - getaddrinfo
    - strlen
    - WSAStartup
    linkageType: ''
    returnType: struct addrinfo
    signature: struct addrinfo *gf_sk_get_ipv6_addr(const char *PeerName, u16 PortNumber,
      int family, int flags, int sock_type)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_net_is_ipv6
      Src: /src/gpac/src/utils/os_net.c:549,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_net.c:549,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:550,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:555,1
    - Dst: malloc
      Src: /src/gpac/src/utils/os_net.c:563,1
    - Dst: GetAdaptersAddresses
      Src: /src/gpac/src/utils/os_net.c:565,1
    - Dst: free
      Src: /src/gpac/src/utils/os_net.c:566,1
    - Dst: malloc
      Src: /src/gpac/src/utils/os_net.c:567,1
    - Dst: GetAdaptersAddresses
      Src: /src/gpac/src/utils/os_net.c:570,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:574,1
    - Dst: gf_wcs_to_utf8
      Src: /src/gpac/src/utils/os_net.c:575,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:577,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:578,1
    - Dst: my_inet_ntop
      Src: /src/gpac/src/utils/os_net.c:592,1
    - Dst: free
      Src: /src/gpac/src/utils/os_net.c:593,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:594,1
    - Dst: my_inet_ntop
      Src: /src/gpac/src/utils/os_net.c:597,1
    - Dst: free
      Src: /src/gpac/src/utils/os_net.c:599,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:600,1
    - Dst: free
      Src: /src/gpac/src/utils/os_net.c:608,1
    - Dst: getifaddrs
      Src: /src/gpac/src/utils/os_net.c:613,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:616,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:621,1
    - Dst: inet_ntop
      Src: /src/gpac/src/utils/os_net.c:622,1
    - Dst: freeifaddrs
      Src: /src/gpac/src/utils/os_net.c:623,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:624,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:627,1
    - Dst: inet_ntop
      Src: /src/gpac/src/utils/os_net.c:628,1
    - Dst: freeifaddrs
      Src: /src/gpac/src/utils/os_net.c:630,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:631,1
    - Dst: freeifaddrs
      Src: /src/gpac/src/utils/os_net.c:636,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:640,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 83
    argCount: 5
    argNames:
    - ifce_name_or_ip
    - PortNumber
    - family
    - flags
    - sock_type
    argTypes:
    - char*
    - u16
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 545
    functionDepth: 1
    functionLinenumber: 545
    functionLinenumberEnd: 643
    functionName: gf_sk_get_ifce_ipv6_addr
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_free
    - getifaddrs
    - freeifaddrs
    - malloc
    - inet_ntop
    - GetAdaptersAddresses
    - gf_sk_get_ipv6_addr
    - memset
    - strcmp
    - gf_wcs_to_utf8
    - gf_net_is_ipv6
    - strchr
    - free
    - my_inet_ntop
    linkageType: ''
    returnType: struct addrinfo
    signature: struct addrinfo *gf_sk_get_ifce_ipv6_addr(const char *ifce_name_or_ip,
      u16 PortNumber, int family, int flags, int sock_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gethostname
      Src: /src/gpac/src/utils/os_net.c:650,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 647
    functionDepth: 0
    functionLinenumber: 647
    functionLinenumberEnd: 652
    functionName: gf_sk_get_host_name
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 2
    functionsReached:
    - gethostname
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_get_host_name(char *buffer)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: getnameinfo
      Src: /src/gpac/src/utils/os_net.c:660,1
    - Dst: getsockname
      Src: /src/gpac/src/utils/os_net.c:667,1
    - Dst: getnameinfo
      Src: /src/gpac/src/utils/os_net.c:669,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_net.c:672,1
    - Dst: inet_ntoa
      Src: /src/gpac/src/utils/os_net.c:676,1
    - Dst: getsockname
      Src: /src/gpac/src/utils/os_net.c:680,1
    - Dst: inet_ntoa
      Src: /src/gpac/src/utils/os_net.c:681,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_net.c:684,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 2
    argNames:
    - sock
    - buffer
    argTypes:
    - GF_Socket*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 687
      start: 654
    functionDepth: 0
    functionLinenumber: 654
    functionLinenumberEnd: 687
    functionName: gf_sk_get_local_ip
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 2
    functionsReached:
    - strcpy
    - inet_ntoa
    - getnameinfo
    - getsockname
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_get_local_ip(GF_Socket *sock, char *buffer)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_net.c:815,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/os_net.c:817,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:818,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 1
    argNames:
    - id
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 825
      start: 812
    functionDepth: 1
    functionLinenumber: 812
    functionLinenumberEnd: 825
    functionName: gf_net_filter_get
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: GF_NetcapFilter
    signature: GF_NetcapFilter *gf_net_filter_get(const char *id)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_net.c:832,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/utils/os_net.c:833,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/utils/os_net.c:835,1
    - Dst: close
      Src: /src/gpac/src/utils/os_net.c:838,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_net.c:840,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_net.c:841,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/utils/os_net.c:845,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:847,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_net.c:849,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:851,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:852,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:853,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:854,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_net.c:856,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 858
      start: 830
    functionDepth: 1
    functionLinenumber: 830
    functionLinenumberEnd: 858
    functionName: gf_net_close_capture
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_list_pop_back
    - close
    - gf_bs_del
    - gf_list_count
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_net_close_capture()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/os_net.c:863,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_net.c:865,1
    - Dst: gf_fd_open
      Src: /src/gpac/src/utils/os_net.c:866,1
    - Dst: gf_bs_from_fd
      Src: /src/gpac/src/utils/os_net.c:867,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/utils/os_net.c:871,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/utils/os_net.c:872,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:875,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/utils/os_net.c:878,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:879,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:881,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:882,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:883,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:884,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:885,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:886,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:887,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:888,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:889,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:892,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:893,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:894,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:895,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:896,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/utils/os_net.c:897,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:898,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:900,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:901,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:902,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:903,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:904,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:905,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:908,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/os_net.c:909,1
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/utils/os_net.c:911,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:913,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:914,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:916,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 51
    argCount: 1
    argNames:
    - nf
    argTypes:
    - GF_NetcapFilter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 919
      start: 860
    functionDepth: 1
    functionLinenumber: 860
    functionLinenumberEnd: 919
    functionName: gf_netcap_record
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_bs_from_fd
    - GF_LOG
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_file_ext_start
    - gf_fopen
    - strcmp
    - gf_fopen_ex
    - gf_net_get_ntp
    - gf_bs_write_u64
    - gf_bs_from_file
    - gf_opts_get_bool
    - gf_sys_clock_high_res
    - gf_fd_open
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_netcap_record(GF_NetcapFilter *nf)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/os_net.c:923,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/os_net.c:924,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:925,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:932,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:933,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:934,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:935,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/utils/os_net.c:951,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/utils/os_net.c:952,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/utils/os_net.c:955,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:956,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/os_net.c:962,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/utils/os_net.c:968,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/utils/os_net.c:971,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:975,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:978,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/utils/os_net.c:982,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/utils/os_net.c:984,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/utils/os_net.c:990,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:991,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 66
    argCount: 1
    argNames:
    - nf
    argTypes:
    - GF_NetcapFilter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1002
      start: 921
    functionDepth: 1
    functionLinenumber: 921
    functionLinenumberEnd: 1002
    functionName: gf_netcap_load_pck_gpac
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_u32
    - gf_bs_read_u16
    - GF_LOG
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_bs_available
    - gf_bs_is_overflow
    - gf_bs_read_u64
    - gf_sys_clock_high_res
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: void
    signature: void gf_netcap_load_pck_gpac(GF_NetcapFilter *nf)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1013,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1014,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/os_net.c:1015,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/os_net.c:1016,1
    - Dst: ntohl
      Src: /src/gpac/src/utils/os_net.c:1018,1
    - Dst: gf_net_close_capture
      Src: /src/gpac/src/utils/os_net.c:1021,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1024,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1027,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - nf
    - is_init
    argTypes:
    - GF_NetcapFilter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1030
      start: 1011
    functionDepth: 2
    functionLinenumber: 1011
    functionLinenumberEnd: 1030
    functionName: pcapng_load_shb
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_LOG
    - gf_net_close_capture
    - GF_4CC
    - gf_bs_skip_bytes
    - ntohl
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pcapng_load_shb(GF_NetcapFilter *nf, Bool is_init)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1035,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/utils/os_net.c:1038,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1038,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/utils/os_net.c:1039,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/utils/os_net.c:1039,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1040,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1048,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - nf
    argTypes:
    - GF_NetcapFilter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1052
      start: 1032
    functionDepth: 1
    functionLinenumber: 1032
    functionLinenumberEnd: 1052
    functionName: pcapng_load_idb
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_LOG
    - gf_bs_read_u16_le
    - gf_bs_read_u16
    - gf_bs_read_u32_le
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: void
    signature: void pcapng_load_idb(GF_NetcapFilter *nf)
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1074,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1077,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/os_net.c:1081,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/os_net.c:1085,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/utils/os_net.c:1090,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1090,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/os_net.c:1091,1
    - Dst: pcapng_load_shb
      Src: /src/gpac/src/utils/os_net.c:1092,1
    - Dst: pcapng_load_idb
      Src: /src/gpac/src/utils/os_net.c:1099,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/utils/os_net.c:1103,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1103,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1105,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1110,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/utils/os_net.c:1114,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1114,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/utils/os_net.c:1124,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/utils/os_net.c:1125,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/utils/os_net.c:1126,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/utils/os_net.c:1127,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1129,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1130,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1131,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1132,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1135,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/utils/os_net.c:1146,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1146,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1157,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/utils/os_net.c:1158,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1172,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1178,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/utils/os_net.c:1179,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/utils/os_net.c:1180,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/utils/os_net.c:1181,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/utils/os_net.c:1182,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/utils/os_net.c:1183,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/utils/os_net.c:1198,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/utils/os_net.c:1199,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1200,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/utils/os_net.c:1212,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1217,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/utils/os_net.c:1218,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1219,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/utils/os_net.c:1220,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/utils/os_net.c:1221,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/utils/os_net.c:1226,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/utils/os_net.c:1227,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1228,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/utils/os_net.c:1233,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/utils/os_net.c:1234,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1235,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1236,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/os_net.c:1237,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/os_net.c:1238,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1239,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1241,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/utils/os_net.c:1248,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1249,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/os_net.c:1271,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 182
    argCount: 1
    argNames:
    - nf
    argTypes:
    - GF_NetcapFilter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1277
      start: 1065
    functionDepth: 3
    functionLinenumber: 1065
    functionLinenumberEnd: 1277
    functionName: gf_netcap_load_pck_pcap
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - pcapng_load_shb
    - pcapng_load_idb
    - gf_bs_read_u32
    - gf_bs_read_u16
    - GF_LOG
    - gf_sys_clock_high_res
    - gf_bs_get_position
    - gf_bs_read_int
    - GF_4CC
    - gf_bs_available
    - gf_bs_is_overflow
    - gf_bs_read_u8
    - gf_bs_read_u32_le
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: void
    signature: void gf_netcap_load_pck_pcap(GF_NetcapFilter *nf)
  - BBCount: 57
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/utils/os_net.c:1288,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_net.c:1292,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_net.c:1294,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_net.c:1295,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_net.c:1296,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_net.c:1297,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_net.c:1298,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_net.c:1299,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:1300,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_net.c:1302,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:1303,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:1304,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:1320,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1321,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1325,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:1326,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:1327,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:1328,1
    - Dst: gf_net_filter_get
      Src: /src/gpac/src/utils/os_net.c:1332,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1334,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:1335,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:1336,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:1337,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/os_net.c:1341,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:1343,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:1344,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:1345,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/os_net.c:1353,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:1355,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:1356,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:1357,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:1358,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/os_net.c:1361,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/os_net.c:1362,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_net.c:1382,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_net.c:1384,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_net.c:1390,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:1395,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:1396,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:1397,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:1397,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1399,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:1404,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:1409,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:1414,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:1417,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:1420,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:1424,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:1428,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_net.c:1431,1
    - Dst: strtol
      Src: /src/gpac/src/utils/os_net.c:1432,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1436,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:1439,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1442,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/os_net.c:1451,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/os_net.c:1464,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_net.c:1468,1
    - Dst: gf_netcap_record
      Src: /src/gpac/src/utils/os_net.c:1471,1
    - Dst: gf_netcap_playback
      Src: /src/gpac/src/utils/os_net.c:1475,1
    CyclomaticComplexity: 67
    EdgeCount: 67
    ICount: 189
    argCount: 1
    argNames:
    - rules
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1479
      start: 1281
    functionDepth: 2
    functionLinenumber: 1281
    functionLinenumberEnd: 1479
    functionName: gf_netcap_setup
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_net_filter_get
    - gf_list_count
    - gf_netcap_record
    - strncmp
    - strcmp
    - atoi
    - gf_list_add
    - strtol
    - gf_netcap_playback
    - strchr
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_netcap_setup(char *rules)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/os_net.c:1496,1
    - Dst: gf_rand
      Src: /src/gpac/src/utils/os_net.c:1537,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1574,1
    - Dst: gf_rand
      Src: /src/gpac/src/utils/os_net.c:1577,1
    - Dst: gf_rand
      Src: /src/gpac/src/utils/os_net.c:1581,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1585,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 89
    argCount: 3
    argNames:
    - sock
    - pck_len
    - for_send
    argTypes:
    - GF_Socket*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1590
      start: 1481
    functionDepth: 1
    functionLinenumber: 1481
    functionLinenumberEnd: 1590
    functionName: netcap_filter_pck
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_rand
    - GF_LOG
    - gf_list_get
    linkageType: ''
    returnType: Bool
    signature: Bool netcap_filter_pck(GF_Socket *sock, u32 pck_len, Bool for_send)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/os_net.c:1602,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/os_net.c:1607,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1610,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/os_net.c:1618,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/os_net.c:1619,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/os_net.c:1629,1
    - Dst: gf_netcap_load_pck_gpac
      Src: /src/gpac/src/utils/os_net.c:1638,1
    - Dst: gf_netcap_load_pck_pcap
      Src: /src/gpac/src/utils/os_net.c:1640,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1648,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1655,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/os_net.c:1666,1
    - Dst: memcmp
      Src: /src/gpac/src/utils/os_net.c:1673,1
    - Dst: memcmp
      Src: /src/gpac/src/utils/os_net.c:1684,1
    - Dst: netcap_filter_pck
      Src: /src/gpac/src/utils/os_net.c:1702,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1706,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 104
    argCount: 2
    argNames:
    - nf
    - now
    argTypes:
    - GF_NetcapFilter*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1710
      start: 1592
    functionDepth: 4
    functionLinenumber: 1592
    functionLinenumberEnd: 1710
    functionName: gf_netcap_load_pck
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - netcap_filter_pck
    - memcmp
    - gf_bs_seek
    - gf_netcap_load_pck_gpac
    - GF_LOG
    - gf_netcap_load_pck_pcap
    - gf_bs_get_position
    - gf_bs_available
    - gf_list_enum
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: void
    signature: void gf_netcap_load_pck(GF_NetcapFilter *nf, u64 now)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/os_net.c:1715,1
    - Dst: gf_fd_open
      Src: /src/gpac/src/utils/os_net.c:1716,1
    - Dst: gf_bs_from_fd
      Src: /src/gpac/src/utils/os_net.c:1717,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/utils/os_net.c:1721,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/utils/os_net.c:1722,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1725,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/os_net.c:1728,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1730,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/os_net.c:1733,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/os_net.c:1736,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/os_net.c:1738,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/os_net.c:1742,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/os_net.c:1745,1
    - Dst: gf_net_close_capture
      Src: /src/gpac/src/utils/os_net.c:1749,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1750,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/utils/os_net.c:1750,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1754,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1755,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1756,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1757,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1762,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/os_net.c:1763,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/os_net.c:1764,1
    - Dst: ntohl
      Src: /src/gpac/src/utils/os_net.c:1765,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1773,1
    - Dst: gf_net_close_capture
      Src: /src/gpac/src/utils/os_net.c:1774,1
    - Dst: pcapng_load_shb
      Src: /src/gpac/src/utils/os_net.c:1780,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/utils/os_net.c:1783,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1783,1
    - Dst: gf_net_close_capture
      Src: /src/gpac/src/utils/os_net.c:1785,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1786,1
    - Dst: pcapng_load_idb
      Src: /src/gpac/src/utils/os_net.c:1789,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 77
    argCount: 1
    argNames:
    - nf
    argTypes:
    - GF_NetcapFilter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1792
      start: 1712
    functionDepth: 3
    functionLinenumber: 1712
    functionLinenumberEnd: 1792
    functionName: gf_netcap_playback
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - gf_4cc_to_str
    - gf_list_new
    - gf_bs_read_u32
    - gf_bs_from_fd
    - pcapng_load_shb
    - pcapng_load_idb
    - GF_LOG
    - gf_bs_skip_bytes
    - gf_net_close_capture
    - gf_fopen_ex
    - gf_bs_read_int
    - GF_4CC
    - gf_bs_from_file
    - gf_opts_get_bool
    - gf_bs_read_u32_le
    - gf_fd_open
    - ntohl
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_netcap_playback(GF_NetcapFilter *nf)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:1823,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:1824,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:1825,1
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/utils/os_net.c:1828,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:1829,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:1830,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/utils/os_net.c:1830,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:1831,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:1832,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:1834,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/os_net.c:1839,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/os_net.c:1840,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/utils/os_net.c:1841,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:1842,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/os_net.c:1843,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/os_net.c:1844,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/os_net.c:1845,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/os_net.c:1846,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/os_net.c:1849,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/os_net.c:1850,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/os_net.c:1851,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:1853,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1854,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/os_net.c:1855,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/os_net.c:1856,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:1867,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/utils/os_net.c:1868,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/utils/os_net.c:1869,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:1873,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:1874,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:1875,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1877,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:1881,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:1882,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:1883,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:1884,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/os_net.c:1885,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/os_net.c:1886,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1887,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/os_net.c:1890,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1892,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:1893,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 90
    argCount: 6
    argNames:
    - nf
    - sock
    - buffer
    - length
    - written
    - is_ng
    argTypes:
    - GF_NetcapFilter*
    - GF_Socket*
    - u8*
    - u32
    - u32*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1897
      start: 1794
    functionDepth: 1
    functionLinenumber: 1794
    functionLinenumberEnd: 1897
    functionName: gf_netcap_send_pcap
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u24
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_bs_write_data
    - gf_bs_write_u8
    - gf_bs_write_u32_le
    - gf_net_get_ntp
    - gf_bs_write_u32
    - gf_timestamp_rescale
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_netcap_send_pcap(GF_NetcapFilter *nf, GF_Socket *sock, const
      u8 *buffer, u32 length, u32 *written, Bool is_ng)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/os_net.c:1902,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:1925,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/os_net.c:1926,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/utils/os_net.c:1927,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/os_net.c:1929,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/os_net.c:1931,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:1933,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:1935,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:1937,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:1939,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/os_net.c:1940,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 43
    argCount: 5
    argNames:
    - nf
    - sock
    - buffer
    - length
    - written
    argTypes:
    - GF_NetcapFilter*
    - GF_Socket*
    - u8*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1943
      start: 1900
    functionDepth: 1
    functionLinenumber: 1900
    functionLinenumberEnd: 1943
    functionName: gf_netcap_send_gpac
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_bs_write_data
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_sys_clock_high_res
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_netcap_send_gpac(GF_NetcapFilter *nf, GF_Socket *sock, const
      u8 *buffer, u32 length, u32 *written)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_netcap_send_pcap
      Src: /src/gpac/src/utils/os_net.c:1949,1
    - Dst: gf_netcap_send_pcap
      Src: /src/gpac/src/utils/os_net.c:1951,1
    - Dst: gf_netcap_send_gpac
      Src: /src/gpac/src/utils/os_net.c:1953,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - sock
    - buffer
    - length
    - written
    argTypes:
    - GF_Socket*
    - u8*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1955
      start: 1945
    functionDepth: 2
    functionLinenumber: 1945
    functionLinenumberEnd: 1955
    functionName: gf_netcap_send
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_netcap_send_gpac
    - gf_netcap_send_pcap
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_netcap_send(GF_Socket *sock, const u8 *buffer, u32 length,
      u32 *written)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 1
    argNames:
    - sk
    argTypes:
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1962
      start: 1958
    functionDepth: 0
    functionLinenumber: 1958
    functionLinenumberEnd: 1962
    functionName: gf_sk_has_nrt_netcap
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sk_has_nrt_netcap(GF_Socket *sk)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: WSAStartup
      Src: /src/gpac/src/utils/os_net.c:1972,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1983,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/os_net.c:1987,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:1996,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:1998,1
    - Dst: gf_net_filter_get
      Src: /src/gpac/src/utils/os_net.c:2009,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/os_net.c:2011,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:2013,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/os_net.c:2017,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 2
    argNames:
    - SocketType
    - netcap_id
    argTypes:
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2022
      start: 1964
    functionDepth: 2
    functionLinenumber: 1964
    functionLinenumberEnd: 2022
    functionName: gf_sk_new_ex
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 9
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - GF_LOG
    - gf_net_filter_get
    - memset
    - gf_list_add
    - WSAStartup
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sk_new_ex(u32 SocketType, const char *netcap_id)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/utils/os_net.c:2027,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - SocketType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2028
      start: 2024
    functionDepth: 3
    functionLinenumber: 2024
    functionLinenumberEnd: 2028
    functionName: gf_sk_new
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 9
    functionsReached:
    - gf_sk_new_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sk_new(u32 SocketType)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:2035,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2038,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2040,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2043,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2043,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2045,1
    - Dst: getsockopt
      Src: /src/gpac/src/utils/os_net.c:2049,1
    - Dst: getsockopt
      Src: /src/gpac/src/utils/os_net.c:2051,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2054,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 3
    argNames:
    - sock
    - SendBuffer
    - NewSize
    argTypes:
    - GF_Socket*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2058
      start: 2030
    functionDepth: 1
    functionLinenumber: 2030
    functionLinenumberEnd: 2058
    functionName: gf_sk_set_buffer_size
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 7
    functionsReached:
    - getsockopt
    - GF_LOG
    - setsockopt
    - SOCKET_INVALID
    - gf_errno_str
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_set_buffer_size(GF_Socket *sock, Bool SendBuffer, u32
      NewSize)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:2066,1
    - Dst: ioctlsocket
      Src: /src/gpac/src/utils/os_net.c:2067,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:2071,1
    - Dst: fcntl
      Src: /src/gpac/src/utils/os_net.c:2072,1
    - Dst: fcntl
      Src: /src/gpac/src/utils/os_net.c:2078,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - sock
    - NonBlockingOn
    argTypes:
    - GF_Socket*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2088
      start: 2060
    functionDepth: 1
    functionLinenumber: 2060
    functionLinenumberEnd: 2088
    functionName: gf_sk_set_block_mode
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 9
    functionsReached:
    - fcntl
    - SOCKET_INVALID
    - ioctlsocket
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_set_block_mode(GF_Socket *sock, Bool NonBlockingOn)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2098
      start: 2093
    functionDepth: 0
    functionLinenumber: 2093
    functionLinenumberEnd: 2098
    functionName: sock_close
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: sock_close(_s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2103
      start: 2100
    functionDepth: 0
    functionLinenumber: 2100
    functionLinenumberEnd: 2103
    functionName: sock_close
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: sock_close(_s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_net.c:2108,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:2109,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2118,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2120,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2124,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2129,1
    - Dst: sock_close
      Src: /src/gpac/src/utils/os_net.c:2133,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - sock
    argTypes:
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2134
      start: 2106
    functionDepth: 1
    functionLinenumber: 2106
    functionLinenumberEnd: 2134
    functionName: gf_sk_free
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - memcpy
    - sock_close
    - setsockopt
    - SOCKET_INVALID
    linkageType: ''
    returnType: void
    signature: void gf_sk_free(GF_Socket *sock)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_net.c:2140,1
    - Dst: gf_sk_free
      Src: /src/gpac/src/utils/os_net.c:2141,1
    - Dst: WSACleanup
      Src: /src/gpac/src/utils/os_net.c:2144,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/os_net.c:2150,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:2151,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:2154,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - sock
    argTypes:
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2155
      start: 2137
    functionDepth: 2
    functionLinenumber: 2137
    functionLinenumberEnd: 2155
    functionName: gf_sk_del
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 24
    functionsReached:
    - gf_free
    - gf_assert
    - gf_sk_free
    - gf_list_del_item
    - WSACleanup
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_del(GF_Socket *sock)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - sock
    argTypes:
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2164
      start: 2157
    functionDepth: 0
    functionLinenumber: 2157
    functionLinenumberEnd: 2164
    functionName: gf_sk_reset
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - setsockopt
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_reset(GF_Socket *sock)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sock
    argTypes:
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2170
      start: 2166
    functionDepth: 0
    functionLinenumber: 2166
    functionLinenumberEnd: 2170
    functionName: gf_sk_get_handle
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_get_handle(GF_Socket *sock)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - sock
    - usec_wait
    argTypes:
    - GF_Socket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2177
      start: 2172
    functionDepth: 0
    functionLinenumber: 2172
    functionLinenumberEnd: 2177
    functionName: gf_sk_set_usec_wait
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_set_usec_wait(GF_Socket *sock, u32 usec_wait)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - PeerName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2184
      start: 2180
    functionDepth: 1
    functionLinenumber: 2180
    functionLinenumberEnd: 2184
    functionName: gf_gethostbyname
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: struct hostent
    signature: struct hostent *gf_gethostbyname(const char *PeerName)
  - BBCount: 75
    BranchProfiles: []
    Callsites:
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:2205,1
    - Dst: socket
      Src: /src/gpac/src/utils/os_net.c:2206,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/os_net.c:2208,1
    - Dst: strncpy
      Src: /src/gpac/src/utils/os_net.c:2211,1
    - Dst: connect
      Src: /src/gpac/src/utils/os_net.c:2213,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2214,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2226,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:2227,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2229,1
    - Dst: gf_sk_get_ifce_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:2233,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:2247,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2249,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:2253,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2256,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2265,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2266,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:2271,1
    - Dst: socket
      Src: /src/gpac/src/utils/os_net.c:2272,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:2273,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/os_net.c:2278,1
    - Dst: bind
      Src: /src/gpac/src/utils/os_net.c:2285,1
    - Dst: sock_close
      Src: /src/gpac/src/utils/os_net.c:2287,1
    - Dst: gf_sk_select
      Src: /src/gpac/src/utils/os_net.c:2297,1
    - Dst: gf_sk_probe
      Src: /src/gpac/src/utils/os_net.c:2298,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2306,1
    - Dst: connect
      Src: /src/gpac/src/utils/os_net.c:2310,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2319,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2320,1
    - Dst: gf_sk_select
      Src: /src/gpac/src/utils/os_net.c:2331,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2334,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2335,1
    - Dst: sock_close
      Src: /src/gpac/src/utils/os_net.c:2339,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2340,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2340,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2346,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2355,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2357,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2359,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2360,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2363,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2364,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:2373,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:2375,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:2389,1
    - Dst: socket
      Src: /src/gpac/src/utils/os_net.c:2390,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/os_net.c:2392,1
    - Dst: htons
      Src: /src/gpac/src/utils/os_net.c:2397,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:2399,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2401,1
    - Dst: gf_gethostbyname
      Src: /src/gpac/src/utils/os_net.c:2402,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2404,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2404,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2415,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2416,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/utils/os_net.c:2420,1
    - Dst: gf_sk_select
      Src: /src/gpac/src/utils/os_net.c:2427,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2433,1
    - Dst: connect
      Src: /src/gpac/src/utils/os_net.c:2437,1
    - Dst: gf_sk_select
      Src: /src/gpac/src/utils/os_net.c:2456,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2479,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2479,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2485,1
    CyclomaticComplexity: 77
    EdgeCount: 77
    ICount: 232
    argCount: 5
    argNames:
    - sock
    - PeerName
    - PortNumber
    - ifce_ip_or_name
    - use_udp_connect
    argTypes:
    - GF_Socket*
    - char*
    - u16
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2489
      start: 2192
    functionDepth: 2
    functionLinenumber: 2192
    functionLinenumberEnd: 2489
    functionName: gf_sk_connect_ex
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - bind
    - sock_close
    - SOCKET_INVALID
    - htons
    - inet_addr_from_name
    - gf_sk_set_block_mode
    - freeaddrinfo
    - gf_sk_select
    - memcpy
    - gf_gethostbyname
    - gf_sk_get_ipv6_addr
    - gf_sk_get_ifce_ipv6_addr
    - gf_sk_probe
    - socket
    - gf_sk_bind
    - GF_LOG
    - strncpy
    - connect
    - inet_addr
    - setsockopt
    - gf_errno_str
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_connect_ex(GF_Socket *sock, const char *PeerName, u16
      PortNumber, const char *ifce_ip_or_name, Bool use_udp_connect)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_connect_ex
      Src: /src/gpac/src/utils/os_net.c:2494,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - sock
    - PeerName
    - PortNumber
    - ifce_ip_or_name
    argTypes:
    - GF_Socket*
    - char*
    - u16
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2496
      start: 2491
    functionDepth: 3
    functionLinenumber: 2491
    functionLinenumberEnd: 2496
    functionName: gf_sk_connect
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 3
    functionsReached:
    - gf_sk_connect_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_connect(GF_Socket *sock, const char *PeerName, u16
      PortNumber, const char *ifce_ip_or_name)
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:2525,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:2526,1
    - Dst: socket
      Src: /src/gpac/src/utils/os_net.c:2532,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/os_net.c:2534,1
    - Dst: strncpy
      Src: /src/gpac/src/utils/os_net.c:2536,1
    - Dst: bind
      Src: /src/gpac/src/utils/os_net.c:2538,1
    - Dst: gf_sk_connect
      Src: /src/gpac/src/utils/os_net.c:2541,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2543,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2543,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2546,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:2555,1
    - Dst: gf_net_has_ipv6
      Src: /src/gpac/src/utils/os_net.c:2563,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:2566,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2568,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2576,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2578,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_net.c:2581,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2582,1
    - Dst: gf_sk_get_ifce_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:2587,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:2590,1
    - Dst: gf_net_is_ipv6
      Src: /src/gpac/src/utils/os_net.c:2600,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:2606,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2608,1
    - Dst: ntohs
      Src: /src/gpac/src/utils/os_net.c:2613,1
    - Dst: ntohs
      Src: /src/gpac/src/utils/os_net.c:2617,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2618,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2626,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:2628,1
    - Dst: socket
      Src: /src/gpac/src/utils/os_net.c:2635,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:2636,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2641,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2644,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/os_net.c:2649,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:2657,1
    - Dst: bind
      Src: /src/gpac/src/utils/os_net.c:2661,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:2664,1
    - Dst: sock_close
      Src: /src/gpac/src/utils/os_net.c:2667,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2671,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2671,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_net.c:2679,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2680,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2684,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2687,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:2689,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2692,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:2700,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:2703,1
    - Dst: socket
      Src: /src/gpac/src/utils/os_net.c:2713,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/os_net.c:2715,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:2718,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:2721,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:2726,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:2726,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2728,1
    - Dst: htons
      Src: /src/gpac/src/utils/os_net.c:2734,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_net.c:2739,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2740,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2746,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2749,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:2756,1
    - Dst: bind
      Src: /src/gpac/src/utils/os_net.c:2760,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:2764,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2769,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2769,1
    - Dst: htons
      Src: /src/gpac/src/utils/os_net.c:2775,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:2777,1
    - Dst: gf_gethostbyname
      Src: /src/gpac/src/utils/os_net.c:2779,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2781,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_net.c:2786,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2787,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2792,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2794,1
    CyclomaticComplexity: 84
    EdgeCount: 84
    ICount: 224
    argCount: 10
    argNames:
    - sock
    - ifce_ip_or_name
    - port
    - peer_name
    - peer_port
    - options
    - dst_sock_addr
    - dst_sock_addr_len
    - src_sock_addr
    - src_sock_addr_len
    argTypes:
    - GF_Socket*
    - char*
    - u16
    - char*
    - u16
    - u32
    - u8**
    - u32*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2798
      start: 2499
    functionDepth: 2
    functionLinenumber: 2499
    functionLinenumberEnd: 2798
    functionName: gf_sk_bind_ex
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_free
    - bind
    - sock_close
    - SOCKET_INVALID
    - memset
    - htons
    - inet_addr_from_name
    - gf_sk_set_block_mode
    - freeaddrinfo
    - memcpy
    - gf_net_has_ipv6
    - gf_sk_connect
    - gf_gethostbyname
    - ntohs
    - gf_sk_get_ipv6_addr
    - gf_sk_get_ifce_ipv6_addr
    - gf_net_is_ipv6
    - socket
    - GF_LOG
    - strncpy
    - gf_malloc
    - inet_addr
    - setsockopt
    - strcmp
    - gf_errno_str
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_sk_bind_ex(GF_Socket *sock, const char *ifce_ip_or_name,
      u16 port, const char *peer_name, u16 peer_port, u32 options,\n\tu8 **dst_sock_addr,
      u32 *dst_sock_addr_len, u8 **src_sock_addr, u32 *src_sock_addr_len)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_bind_ex
      Src: /src/gpac/src/utils/os_net.c:2803,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - sock
    - ifce_ip_or_name
    - port
    - peer_name
    - peer_port
    - options
    argTypes:
    - GF_Socket*
    - char*
    - u16
    - char*
    - u16
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2804
      start: 2800
    functionDepth: 3
    functionLinenumber: 2800
    functionLinenumberEnd: 2804
    functionName: gf_sk_bind
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 13
    functionsReached:
    - gf_sk_bind_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_bind(GF_Socket *sock, const char *ifce_ip_or_name,
      u16 port, const char *peer_name, u16 peer_port, u32 options)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: poll
      Src: /src/gpac/src/utils/os_net.c:2829,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2836,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2836,1
    - Dst: FD_ZERO
      Src: /src/gpac/src/utils/os_net.c:2855,1
    - Dst: FD_ZERO
      Src: /src/gpac/src/utils/os_net.c:2856,1
    - Dst: FD_SET
      Src: /src/gpac/src/utils/os_net.c:2858,1
    - Dst: FD_SET
      Src: /src/gpac/src/utils/os_net.c:2860,1
    - Dst: select
      Src: /src/gpac/src/utils/os_net.c:2864,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2875,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2875,1
    - Dst: FD_ISSET
      Src: /src/gpac/src/utils/os_net.c:2881,1
    - Dst: FD_ISSET
      Src: /src/gpac/src/utils/os_net.c:2883,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 57
    argCount: 4
    argNames:
    - sock
    - mode
    - usec
    - force_select
    argTypes:
    - GF_Socket*
    - GF_SockSelectMode
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2888
      start: 2808
    functionDepth: 1
    functionLinenumber: 2808
    functionLinenumberEnd: 2888
    functionName: poll_select
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - FD_ISSET
    - GF_LOG
    - select
    - gf_errno_str
    - FD_SET
    - poll
    - FD_ZERO
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err poll_select(GF_Socket *sock, GF_SockSelectMode mode, u32 usec,
      Bool force_select)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: netcap_filter_pck
      Src: /src/gpac/src/utils/os_net.c:2898,1
    - Dst: gf_netcap_send
      Src: /src/gpac/src/utils/os_net.c:2908,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:2916,1
    - Dst: poll_select
      Src: /src/gpac/src/utils/os_net.c:2921,1
    - Dst: sendto
      Src: /src/gpac/src/utils/os_net.c:2933,1
    - Dst: sendto
      Src: /src/gpac/src/utils/os_net.c:2935,1
    - Dst: send
      Src: /src/gpac/src/utils/os_net.c:2937,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2948,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2948,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2957,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2957,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2960,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2960,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2966,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 61
    argCount: 6
    argNames:
    - sock
    - buffer
    - length
    - address
    - address_len
    - written
    argTypes:
    - GF_Socket*
    - u8*
    - u32
    - u8*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2969
      start: 2891
    functionDepth: 3
    functionLinenumber: 2891
    functionLinenumberEnd: 2969
    functionName: gf_sk_send_internal
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - netcap_filter_pck
    - poll_select
    - GF_LOG
    - SOCKET_INVALID
    - sendto
    - gf_netcap_send
    - send
    - gf_errno_str
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_send_internal(GF_Socket *sock, const u8 *buffer, u32 length,
      const u8 *address, u32 address_len, u32 *written)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_send_internal
      Src: /src/gpac/src/utils/os_net.c:2974,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - sock
    - buffer
    - length
    - written
    argTypes:
    - GF_Socket*
    - u8*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2975
      start: 2971
    functionDepth: 4
    functionLinenumber: 2971
    functionLinenumberEnd: 2975
    functionName: gf_sk_send_ex
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 2
    functionsReached:
    - gf_sk_send_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_send_ex(GF_Socket *sock, const u8 *buffer, u32 length,
      u32 *written)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_send_internal
      Src: /src/gpac/src/utils/os_net.c:2979,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - sock
    - buffer
    - length
    argTypes:
    - GF_Socket*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2980
      start: 2976
    functionDepth: 4
    functionLinenumber: 2976
    functionLinenumberEnd: 2980
    functionName: gf_sk_send
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 9
    functionsReached:
    - gf_sk_send_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_send(GF_Socket *sock, const u8 *buffer, u32 length)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_send_internal
      Src: /src/gpac/src/utils/os_net.c:2984,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - sock
    - buffer
    - length
    - addr
    - addr_len
    - written
    argTypes:
    - GF_Socket*
    - u8*
    - u32
    - u8*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2985
      start: 2981
    functionDepth: 4
    functionLinenumber: 2981
    functionLinenumberEnd: 2985
    functionName: gf_sk_send_to
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_sk_send_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_send_to(GF_Socket *sock, const u8 *buffer, u32 length,
      const u8 *addr, u32 addr_len, u32 *written)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:2991,1
    - Dst: poll_select
      Src: /src/gpac/src/utils/os_net.c:2995,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - sock
    - mode
    argTypes:
    - GF_Socket*
    - GF_SockSelectMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2996
      start: 2988
    functionDepth: 2
    functionLinenumber: 2988
    functionLinenumberEnd: 2996
    functionName: gf_sk_select
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 2
    functionsReached:
    - poll_select
    - SOCKET_INVALID
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_select(GF_Socket *sock, GF_SockSelectMode mode)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_net_is_ipv6
      Src: /src/gpac/src/utils/os_net.c:3007,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_net.c:3009,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_net.c:3010,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/os_net.c:3011,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/os_net.c:3013,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:3015,1
    - Dst: IN_MULTICAST
      Src: /src/gpac/src/utils/os_net.c:3019,1
    - Dst: ntohl
      Src: /src/gpac/src/utils/os_net.c:3019,1
    - Dst: IN6_IS_ADDR_MULTICAST
      Src: /src/gpac/src/utils/os_net.c:3021,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:3023,1
    - Dst: htonl
      Src: /src/gpac/src/utils/os_net.c:3027,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:3027,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 1
    argNames:
    - multi_IPAdd
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3028
      start: 2999
    functionDepth: 1
    functionLinenumber: 2999
    functionLinenumberEnd: 3028
    functionName: gf_sk_is_multicast_address
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 11
    functionsReached:
    - htonl
    - IN_MULTICAST
    - inet_addr
    - freeaddrinfo
    - IN6_IS_ADDR_MULTICAST
    - gf_sk_get_ipv6_addr
    - strnicmp
    - gf_net_is_ipv6
    - strchr
    - ntohl
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_is_multicast_address(const char *multi_IPAdd)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_net_is_ipv6
      Src: /src/gpac/src/utils/os_net.c:3043,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3044,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:3047,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3048,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3050,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3050,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3055,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3059,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3061,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3061,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3067,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3069,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3069,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3076,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3078,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3078,1
    - Dst: gf_net_is_ipv6
      Src: /src/gpac/src/utils/os_net.c:3089,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3090,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3094,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:3098,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3099,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3101,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3101,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3107,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 61
    argCount: 7
    argNames:
    - sock
    - M_req
    - TTL
    - src_ip_inc
    - nb_src_ip_inc
    - src_ip_exc
    - nb_src_ip_exc
    argTypes:
    - GF_Socket*
    - struct ip_mreq*
    - u32
    - char**
    - u32
    - char**
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3110
      start: 3030
    functionDepth: 1
    functionLinenumber: 3030
    functionLinenumberEnd: 3110
    functionName: sk_join_ipv4
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - inet_addr
    - GF_LOG
    - setsockopt
    - strcmp
    - gf_errno_str
    - gf_net_is_ipv6
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sk_join_ipv4(GF_Socket *sock, struct ip_mreq *M_req, u32 TTL,
      const char **src_ip_inc, u32 nb_src_ip_inc, const char **src_ip_exc, u32 nb_src_ip_exc)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: htonl
      Src: /src/gpac/src/utils/os_net.c:3114,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_net.c:3116,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:3117,1
    - Dst: malloc
      Src: /src/gpac/src/utils/os_net.c:3123,1
    - Dst: GetAdaptersAddresses
      Src: /src/gpac/src/utils/os_net.c:3126,1
    - Dst: free
      Src: /src/gpac/src/utils/os_net.c:3127,1
    - Dst: malloc
      Src: /src/gpac/src/utils/os_net.c:3128,1
    - Dst: GetAdaptersAddresses
      Src: /src/gpac/src/utils/os_net.c:3131,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3136,1
    - Dst: gf_wcs_to_utf8
      Src: /src/gpac/src/utils/os_net.c:3137,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3139,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3140,1
    - Dst: free
      Src: /src/gpac/src/utils/os_net.c:3152,1
    - Dst: getifaddrs
      Src: /src/gpac/src/utils/os_net.c:3157,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3160,1
    - Dst: freeifaddrs
      Src: /src/gpac/src/utils/os_net.c:3169,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3172,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3176,1
    - Dst: htonl
      Src: /src/gpac/src/utils/os_net.c:3177,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 53
    argCount: 1
    argNames:
    - local_interface
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3180
      start: 3112
    functionDepth: 1
    functionLinenumber: 3112
    functionLinenumberEnd: 3180
    functionName: inet_addr_from_name
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 2
    functionsReached:
    - gf_free
    - htonl
    - getifaddrs
    - freeifaddrs
    - malloc
    - inet_addr
    - GF_LOG
    - GetAdaptersAddresses
    - strcmp
    - gf_wcs_to_utf8
    - strchr
    - free
    linkageType: ''
    returnType: u32
    signature: u32 inet_addr_from_name(const char *local_interface)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/gpac/src/utils/os_net.c:3186,1
    - Dst: GetAdaptersAddresses
      Src: /src/gpac/src/utils/os_net.c:3189,1
    - Dst: free
      Src: /src/gpac/src/utils/os_net.c:3190,1
    - Dst: malloc
      Src: /src/gpac/src/utils/os_net.c:3191,1
    - Dst: GetAdaptersAddresses
      Src: /src/gpac/src/utils/os_net.c:3194,1
    - Dst: my_inet_ntop
      Src: /src/gpac/src/utils/os_net.c:3213,1
    - Dst: gf_wcs_to_utf8
      Src: /src/gpac/src/utils/os_net.c:3214,1
    - Dst: do_enum
      Src: /src/gpac/src/utils/os_net.c:3215,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3216,1
    - Dst: free
      Src: /src/gpac/src/utils/os_net.c:3226,1
    - Dst: getifaddrs
      Src: /src/gpac/src/utils/os_net.c:3232,1
    - Dst: inet_ntop
      Src: /src/gpac/src/utils/os_net.c:3244,1
    - Dst: do_enum
      Src: /src/gpac/src/utils/os_net.c:3245,1
    - Dst: inet_ntop
      Src: /src/gpac/src/utils/os_net.c:3249,1
    - Dst: do_enum
      Src: /src/gpac/src/utils/os_net.c:3250,1
    - Dst: freeifaddrs
      Src: /src/gpac/src/utils/os_net.c:3256,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 66
    argCount: 2
    argNames:
    - do_enum
    - enum_cbk
    argTypes:
    - gf_net_ifce_enum
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3260
      start: 3182
    functionDepth: 1
    functionLinenumber: 3182
    functionLinenumberEnd: 3260
    functionName: gf_net_enum_interfaces
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_free
    - getifaddrs
    - do_enum
    - freeifaddrs
    - malloc
    - inet_ntop
    - gf_wcs_to_utf8
    - GetAdaptersAddresses
    - free
    - my_inet_ntop
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_net_enum_interfaces(gf_net_ifce_enum do_enum, void *enum_cbk)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3271,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3271,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_net.c:3273,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_net.c:3275,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 4
    argNames:
    - cbk
    - name
    - IP
    - flags
    argTypes:
    - void*
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3278
      start: 3268
    functionDepth: 0
    functionLinenumber: 3268
    functionLinenumberEnd: 3278
    functionName: get_ifce_enum
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - strcmp
    linkageType: ''
    returnType: Bool
    signature: Bool get_ifce_enum(void *cbk, const char *name, const char *IP, u32
      flags)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_net_enum_interfaces
      Src: /src/gpac/src/utils/os_net.c:3288,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3291,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3293,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 3
    argNames:
    - ip_or_name
    - ipv4
    - ipv6
    argTypes:
    - char*
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3295
      start: 3280
    functionDepth: 2
    functionLinenumber: 3280
    functionLinenumberEnd: 3295
    functionName: gf_net_get_adapter_ip
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_net_enum_interfaces
    linkageType: ''
    returnType: Bool
    signature: Bool gf_net_get_adapter_ip(const char *ip_or_name, char **ipv4, char
      **ipv6)
  - BBCount: 70
    BranchProfiles: []
    Callsites:
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:3314,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/utils/os_net.c:3319,1
    - Dst: gf_net_is_ipv6
      Src: /src/gpac/src/utils/os_net.c:3323,1
    - Dst: gf_net_is_ipv6
      Src: /src/gpac/src/utils/os_net.c:3324,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:3338,1
    - Dst: malloc
      Src: /src/gpac/src/utils/os_net.c:3343,1
    - Dst: GetAdaptersAddresses
      Src: /src/gpac/src/utils/os_net.c:3345,1
    - Dst: free
      Src: /src/gpac/src/utils/os_net.c:3346,1
    - Dst: malloc
      Src: /src/gpac/src/utils/os_net.c:3347,1
    - Dst: GetAdaptersAddresses
      Src: /src/gpac/src/utils/os_net.c:3350,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3355,1
    - Dst: gf_wcs_to_utf8
      Src: /src/gpac/src/utils/os_net.c:3359,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3360,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3362,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3365,1
    - Dst: gf_wcs_to_utf8
      Src: /src/gpac/src/utils/os_net.c:3366,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3367,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3369,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3372,1
    - Dst: my_inet_ntop
      Src: /src/gpac/src/utils/os_net.c:3380,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3381,1
    - Dst: free
      Src: /src/gpac/src/utils/os_net.c:3391,1
    - Dst: strpbrk
      Src: /src/gpac/src/utils/os_net.c:3397,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:3398,1
    - Dst: getifaddrs
      Src: /src/gpac/src/utils/os_net.c:3401,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3405,1
    - Dst: if_nametoindex
      Src: /src/gpac/src/utils/os_net.c:3408,1
    - Dst: memcmp
      Src: /src/gpac/src/utils/os_net.c:3416,1
    - Dst: if_nametoindex
      Src: /src/gpac/src/utils/os_net.c:3419,1
    - Dst: freeifaddrs
      Src: /src/gpac/src/utils/os_net.c:3426,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:3428,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3432,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:3438,1
    - Dst: gf_net_is_ipv6
      Src: /src/gpac/src/utils/os_net.c:3445,1
    - Dst: socket
      Src: /src/gpac/src/utils/os_net.c:3452,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:3453,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3459,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3462,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3467,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3469,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3469,1
    - Dst: bind
      Src: /src/gpac/src/utils/os_net.c:3474,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3476,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3476,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:3484,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:3486,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/os_net.c:3490,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:3492,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_net.c:3496,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_net.c:3497,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:3499,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:3505,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:3507,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:3512,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:3515,1
    - Dst: sk_join_ipv4
      Src: /src/gpac/src/utils/os_net.c:3518,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:3528,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3532,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:3540,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:3545,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3547,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:3550,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:3551,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3552,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3554,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3554,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3559,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3564,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3566,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3566,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3573,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3579,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3581,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3581,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3593,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:3597,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3599,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:3602,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:3603,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3605,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3607,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3607,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3612,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:3625,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:3628,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:3630,1
    - Dst: socket
      Src: /src/gpac/src/utils/os_net.c:3640,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:3641,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/os_net.c:3644,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3649,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3651,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3651,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3655,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3657,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3657,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:3661,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:3667,1
    - Dst: htonl
      Src: /src/gpac/src/utils/os_net.c:3669,1
    - Dst: htons
      Src: /src/gpac/src/utils/os_net.c:3670,1
    - Dst: bind
      Src: /src/gpac/src/utils/os_net.c:3672,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3674,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3674,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3679,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:3685,1
    - Dst: sk_join_ipv4
      Src: /src/gpac/src/utils/os_net.c:3688,1
    - Dst: htons
      Src: /src/gpac/src/utils/os_net.c:3694,1
    - Dst: htons
      Src: /src/gpac/src/utils/os_net.c:3699,1
    CyclomaticComplexity: 109
    EdgeCount: 109
    ICount: 295
    argCount: 10
    argNames:
    - sock
    - multi_IPAdd
    - MultiPortNumber
    - TTL
    - NoBind
    - ifce_ip_or_name
    - src_ip_inc
    - nb_src_ip_inc
    - src_ip_exc
    - nb_src_ip_exc
    argTypes:
    - GF_Socket*
    - char*
    - u16
    - u32
    - Bool
    - char*
    - char**
    - u32
    - char**
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3704
      start: 3297
    functionDepth: 2
    functionLinenumber: 3297
    functionLinenumberEnd: 3704
    functionName: gf_sk_setup_multicast_ex
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - gf_free
    - htonl
    - bind
    - freeifaddrs
    - memcmp
    - strpbrk
    - strcpy
    - SOCKET_INVALID
    - memset
    - htons
    - inet_addr_from_name
    - gf_sk_set_block_mode
    - freeaddrinfo
    - getifaddrs
    - strcat
    - memcpy
    - gf_sk_get_ipv6_addr
    - gf_net_is_ipv6
    - socket
    - my_inet_ntop
    - if_nametoindex
    - malloc
    - GF_LOG
    - GetAdaptersAddresses
    - sk_join_ipv4
    - inet_addr
    - setsockopt
    - gf_sk_is_multicast_address
    - strcmp
    - gf_errno_str
    - gf_wcs_to_utf8
    - free
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_sk_setup_multicast_ex(GF_Socket *sock, const char *multi_IPAdd,
      u16 MultiPortNumber, u32 TTL, Bool NoBind, const char *ifce_ip_or_name,\n\tconst
      char **src_ip_inc, u32 nb_src_ip_inc, const char **src_ip_exc, u32 nb_src_ip_exc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_setup_multicast_ex
      Src: /src/gpac/src/utils/os_net.c:3709,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - sock
    - multi_IPAdd
    - MultiPortNumber
    - TTL
    - NoBind
    - ifce_ip_or_name
    argTypes:
    - GF_Socket*
    - char*
    - u16
    - u32
    - Bool
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3711
      start: 3706
    functionDepth: 3
    functionLinenumber: 3706
    functionLinenumberEnd: 3711
    functionName: gf_sk_setup_multicast
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 6
    functionsReached:
    - gf_sk_setup_multicast_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_setup_multicast(GF_Socket *sock, const char *multi_IPAdd,
      u16 MultiPortNumber, u32 TTL, Bool NoBind, const char *ifce_ip_or_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/os_net.c:3734,1
    - Dst: FD_ZERO
      Src: /src/gpac/src/utils/os_net.c:3736,1
    - Dst: FD_ZERO
      Src: /src/gpac/src/utils/os_net.c:3737,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3743
      start: 3731
    functionDepth: 1
    functionLinenumber: 3731
    functionLinenumberEnd: 3743
    functionName: gf_sk_group_new
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - FD_ZERO
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_SockGroup
    signature: GF_SockGroup *gf_sk_group_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_net.c:3747,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3749,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3751,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SockGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3752
      start: 3745
    functionDepth: 1
    functionLinenumber: 3745
    functionLinenumberEnd: 3752
    functionName: gf_sk_group_del
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_sk_group_del(GF_SockGroup *sg)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/os_net.c:3757,1
    - Dst: gf_list_find
      Src: /src/gpac/src/utils/os_net.c:3758,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/os_net.c:3759,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_net.c:3764,1
    - Dst: gf_list_find
      Src: /src/gpac/src/utils/os_net.c:3765,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/os_net.c:3766,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/os_net.c:3776,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_net.c:3783,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:3783,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 2
    argNames:
    - sg
    - sk
    argTypes:
    - GF_SockGroup*
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3786
      start: 3754
    functionDepth: 1
    functionLinenumber: 3754
    functionLinenumberEnd: 3786
    functionName: gf_sk_group_register
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 8
    functionsReached:
    - gf_list_new
    - gf_assert
    - gf_list_find
    - SOCKET_INVALID
    - gf_list_count
    - gf_list_add
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void gf_sk_group_register(GF_SockGroup *sg, GF_Socket *sk)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/os_net.c:3791,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_net.c:3797,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:3800,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/os_net.c:3805,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_net.c:3810,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_net.c:3811,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3815,1
    - Dst: memmove
      Src: /src/gpac/src/utils/os_net.c:3827,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/os_net.c:3831,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 39
    argCount: 2
    argNames:
    - sg
    - sk
    argTypes:
    - GF_SockGroup*
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3838
      start: 3788
    functionDepth: 1
    functionLinenumber: 3788
    functionLinenumberEnd: 3838
    functionName: gf_sk_group_unregister
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 8
    functionsReached:
    - gf_free
    - gf_list_get
    - memmove
    - gf_list_count
    - gf_bs_skip_bytes
    - gf_list_del_item
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_sk_group_unregister(GF_SockGroup *sg, GF_Socket *sk)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/os_net.c:3856,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/os_net.c:3858,1
    - Dst: gf_netcap_load_pck
      Src: /src/gpac/src/utils/os_net.c:3868,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_net.c:3900,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:3900,1
    - Dst: poll
      Src: /src/gpac/src/utils/os_net.c:3903,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3910,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3910,1
    - Dst: FD_ZERO
      Src: /src/gpac/src/utils/os_net.c:3925,1
    - Dst: FD_ZERO
      Src: /src/gpac/src/utils/os_net.c:3926,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/os_net.c:3940,1
    - Dst: FD_SET
      Src: /src/gpac/src/utils/os_net.c:3942,1
    - Dst: FD_SET
      Src: /src/gpac/src/utils/os_net.c:3945,1
    - Dst: select
      Src: /src/gpac/src/utils/os_net.c:3951,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3956,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3962,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3962,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3967,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 105
    argCount: 3
    argNames:
    - sg
    - usec_wait
    - mode
    argTypes:
    - GF_SockGroup*
    - u32
    - GF_SockSelectMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3971
      start: 3840
    functionDepth: 5
    functionLinenumber: 3840
    functionLinenumberEnd: 3971
    functionName: gf_sk_group_select
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_assert
    - gf_netcap_load_pck
    - GF_LOG
    - SOCKET_INVALID
    - select
    - gf_errno_str
    - FD_SET
    - poll
    - gf_list_enum
    - gf_sys_clock_high_res
    - FD_ZERO
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_group_select(GF_SockGroup *sg, u32 usec_wait, GF_SockSelectMode
      mode)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/os_net.c:3983,1
    - Dst: FD_ISSET
      Src: /src/gpac/src/utils/os_net.c:4009,1
    - Dst: FD_ISSET
      Src: /src/gpac/src/utils/os_net.c:4011,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 26
    argCount: 3
    argNames:
    - sg
    - sk
    - mode
    argTypes:
    - GF_SockGroup*
    - GF_Socket*
    - GF_SockSelectMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4015
      start: 3973
    functionDepth: 1
    functionLinenumber: 3973
    functionLinenumberEnd: 4015
    functionName: gf_sk_group_sock_is_set
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - gf_sys_clock_high_res
    - FD_ISSET
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sk_group_sock_is_set(GF_SockGroup *sg, GF_Socket *sk, GF_SockSelectMode
      mode)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: gf_netcap_load_pck
      Src: /src/gpac/src/utils/os_net.c:4033,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/os_net.c:4033,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/os_net.c:4036,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/utils/os_net.c:4044,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:4066,1
    - Dst: poll_select
      Src: /src/gpac/src/utils/os_net.c:4070,1
    - Dst: recvfrom
      Src: /src/gpac/src/utils/os_net.c:4076,1
    - Dst: recv
      Src: /src/gpac/src/utils/os_net.c:4078,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4099,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:4099,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4108,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:4108,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4112,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:4112,1
    - Dst: netcap_filter_pck
      Src: /src/gpac/src/utils/os_net.c:4118,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4127,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 90
    argCount: 5
    argNames:
    - sock
    - buffer
    - length
    - BytesRead
    - do_select
    argTypes:
    - GF_Socket*
    - char*
    - u32
    - u32*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4132
      start: 4020
    functionDepth: 5
    functionLinenumber: 4020
    functionLinenumberEnd: 4132
    functionName: gf_sk_receive_internal
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - netcap_filter_pck
    - gf_netcap_load_pck
    - poll_select
    - GF_LOG
    - recv
    - SOCKET_INVALID
    - recvfrom
    - gf_errno_str
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_receive_internal(GF_Socket *sock, char *buffer, u32 length,
      u32 *BytesRead, Bool do_select)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_receive_internal
      Src: /src/gpac/src/utils/os_net.c:4137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - sock
    - buffer
    - length
    - BytesRead
    argTypes:
    - GF_Socket*
    - u8*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4138
      start: 4134
    functionDepth: 6
    functionLinenumber: 4134
    functionLinenumberEnd: 4138
    functionName: gf_sk_receive
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 9
    functionsReached:
    - gf_sk_receive_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_receive(GF_Socket *sock, u8 *buffer, u32 length, u32
      *BytesRead)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_receive_internal
      Src: /src/gpac/src/utils/os_net.c:4143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - sock
    - buffer
    - length
    - BytesRead
    argTypes:
    - GF_Socket*
    - u8*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4144
      start: 4140
    functionDepth: 6
    functionLinenumber: 4140
    functionLinenumberEnd: 4144
    functionName: gf_sk_receive_no_select
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 5
    functionsReached:
    - gf_sk_receive_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_receive_no_select(GF_Socket *sock, u8 *buffer, u32
      length, u32 *BytesRead)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:4150,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4154,1
    - Dst: listen
      Src: /src/gpac/src/utils/os_net.c:4162,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 2
    argNames:
    - sock
    - MaxConnection
    argTypes:
    - GF_Socket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4167
      start: 4146
    functionDepth: 1
    functionLinenumber: 4146
    functionLinenumberEnd: 4167
    functionName: gf_sk_listen
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - SOCKET_INVALID
    - listen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_listen(GF_Socket *sock, u32 MaxConnection)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: poll_select
      Src: /src/gpac/src/utils/os_net.c:4178,1
    - Dst: accept
      Src: /src/gpac/src/utils/os_net.c:4186,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:4189,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4195,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:4195,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/os_net.c:4200,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:4205,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:4206,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:4208,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:4209,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:4214,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 2
    argNames:
    - sock
    - newConnection
    argTypes:
    - GF_Socket*
    - GF_Socket**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4223
      start: 4169
    functionDepth: 2
    functionLinenumber: 4169
    functionLinenumberEnd: 4223
    functionName: gf_sk_accept
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 3
    functionsReached:
    - accept
    - GF_SAFEALLOC
    - poll_select
    - GF_LOG
    - memcpy
    - setsockopt
    - SOCKET_INVALID
    - memset
    - gf_errno_str
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_accept(GF_Socket *sock, GF_Socket **newConnection)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:4235,1
    - Dst: getsockname
      Src: /src/gpac/src/utils/os_net.c:4240,1
    - Dst: ntohs
      Src: /src/gpac/src/utils/os_net.c:4241,1
    - Dst: getsockname
      Src: /src/gpac/src/utils/os_net.c:4244,1
    - Dst: ntohs
      Src: /src/gpac/src/utils/os_net.c:4245,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 3
    argNames:
    - sock
    - Port
    - Familly
    argTypes:
    - GF_Socket*
    - u16*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4258
      start: 4225
    functionDepth: 1
    functionLinenumber: 4225
    functionLinenumberEnd: 4258
    functionName: gf_sk_get_local_info
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 3
    functionsReached:
    - SOCKET_INVALID
    - getsockname
    - ntohs
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_get_local_info(GF_Socket *sock, u16 *Port, u32 *Familly)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:4266,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:4281,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4282,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:4282,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:4287,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4288,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:4288,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:4294,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4295,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:4295,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:4301,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4302,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:4302,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:4310,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:4312,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 2
    argNames:
    - sock
    - serverOn
    argTypes:
    - GF_Socket*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4315
      start: 4261
    functionDepth: 1
    functionLinenumber: 4261
    functionLinenumberEnd: 4315
    functionName: gf_sk_server_mode
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 3
    functionsReached:
    - GF_LOG
    - setsockopt
    - SOCKET_INVALID
    - gf_errno_str
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_server_mode(GF_Socket *sock, Bool serverOn)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:4324,1
    - Dst: my_inet_ntop
      Src: /src/gpac/src/utils/os_net.c:4325,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_net.c:4326,1
    - Dst: ntohs
      Src: /src/gpac/src/utils/os_net.c:4328,1
    - Dst: getnameinfo
      Src: /src/gpac/src/utils/os_net.c:4330,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_net.c:4331,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:4334,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_net.c:4335,1
    - Dst: inet_ntoa
      Src: /src/gpac/src/utils/os_net.c:4335,1
    - Dst: ntohs
      Src: /src/gpac/src/utils/os_net.c:4337,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 3
    argNames:
    - sock
    - buf
    - port
    argTypes:
    - GF_Socket*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4341
      start: 4317
    functionDepth: 1
    functionLinenumber: 4317
    functionLinenumberEnd: 4341
    functionName: gf_sk_get_remote_address_port
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - strcpy
    - SOCKET_INVALID
    - inet_ntoa
    - ntohs
    - getnameinfo
    - my_inet_ntop
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_get_remote_address_port(GF_Socket *sock, char *buf,
      u32 *port)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_get_remote_address_port
      Src: /src/gpac/src/utils/os_net.c:4345,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sock
    - buf
    argTypes:
    - GF_Socket*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4346
      start: 4342
    functionDepth: 2
    functionLinenumber: 4342
    functionLinenumberEnd: 4346
    functionName: gf_sk_get_remote_address
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - gf_sk_get_remote_address_port
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_get_remote_address(GF_Socket *sock, char *buf)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - sock
    - addr_size
    argTypes:
    - GF_Socket*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4353
      start: 4348
    functionDepth: 0
    functionLinenumber: 4348
    functionLinenumberEnd: 4353
    functionName: gf_sk_get_address
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u8
    signature: u8 *gf_sk_get_address(GF_Socket *sock, u32 *addr_size)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:4371,1
    - Dst: poll_select
      Src: /src/gpac/src/utils/os_net.c:4375,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:4384,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:4386,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:4388,1
    - Dst: htons
      Src: /src/gpac/src/utils/os_net.c:4402,1
    - Dst: gf_gethostbyname
      Src: /src/gpac/src/utils/os_net.c:4404,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:4406,1
    - Dst: sendto
      Src: /src/gpac/src/utils/os_net.c:4414,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4421,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:4421,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 5
    argNames:
    - sock
    - buffer
    - length
    - remoteHost
    - remotePort
    argTypes:
    - GF_Socket*
    - char*
    - u32
    - char*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4428
      start: 4359
    functionDepth: 2
    functionLinenumber: 4359
    functionLinenumberEnd: 4428
    functionName: gf_sk_send_to
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - poll_select
    - memcpy
    - gf_gethostbyname
    - GF_LOG
    - SOCKET_INVALID
    - gf_sk_get_ipv6_addr
    - htons
    - sendto
    - gf_errno_str
    - freeaddrinfo
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_send_to(GF_Socket *sock, const char *buffer, u32 length,
      char *remoteHost, u16 remotePort)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: poll_select
      Src: /src/gpac/src/utils/os_net.c:4443,1
    - Dst: recv
      Src: /src/gpac/src/utils/os_net.c:4447,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4457,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:4457,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 1
    argNames:
    - sock
    argTypes:
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4465
      start: 4431
    functionDepth: 2
    functionLinenumber: 4431
    functionLinenumberEnd: 4465
    functionName: gf_sk_probe
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 4
    functionsReached:
    - poll_select
    - GF_LOG
    - recv
    - gf_errno_str
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_probe(GF_Socket *sock)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/utils/os_net.c:4472,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_net.c:4473,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/os_net.c:4478,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_net.c:4479,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_net.c:4480,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_net.c:4482,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/os_net.c:4487,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/os_net.c:4491,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:4493,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_net.c:4497,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/os_net.c:4499,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/os_net.c:4502,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_net.c:4505,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:4507,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/os_net.c:4511,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_net.c:4513,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/os_net.c:4514,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4518,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:4519,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 47
    argCount: 2
    argNames:
    - in_ip
    - increment
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4523
      start: 4468
    functionDepth: 1
    functionLinenumber: 4468
    functionLinenumberEnd: 4523
    functionName: gf_net_bump_ip_address
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - strrchr
    - GF_LOG
    - sprintf
    - strstr
    - gf_sk_is_multicast_address
    - strnicmp
    - atoi
    - gf_dynstrcat
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_net_bump_ip_address(const char *in_ip, u32 increment)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_net.c:4534,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/os_net.c:4536,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/utils/os_net.c:4538,1
    - Dst: close
      Src: /src/gpac/src/utils/os_net.c:4540,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_net.c:4542,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_net.c:4543,1
    - Dst: gf_netcap_record
      Src: /src/gpac/src/utils/os_net.c:4566,1
    - Dst: gf_netcap_playback
      Src: /src/gpac/src/utils/os_net.c:4569,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4575
      start: 4530
    functionDepth: 4
    functionLinenumber: 4530
    functionLinenumberEnd: 4575
    functionName: gf_net_reload_netcap
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - gf_fclose
    - gf_list_get
    - close
    - gf_bs_del
    - gf_list_count
    - gf_netcap_record
    - gf_netcap_playback
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_net_reload_netcap()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: htonl
      Src: /src/gpac/src/utils/os_net.c:4580,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4581
      start: 4577
    functionDepth: 0
    functionLinenumber: 4577
    functionLinenumberEnd: 4581
    functionName: gf_htonl
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 2
    functionsReached:
    - htonl
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_htonl(u32 val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ntohl
      Src: /src/gpac/src/utils/os_net.c:4587,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4588
      start: 4584
    functionDepth: 0
    functionLinenumber: 4584
    functionLinenumberEnd: 4588
    functionName: gf_ntohl
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - ntohl
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_ntohl(u32 val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: htons
      Src: /src/gpac/src/utils/os_net.c:4593,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4594
      start: 4590
    functionDepth: 0
    functionLinenumber: 4590
    functionLinenumberEnd: 4594
    functionName: gf_htons
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - htons
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_htons(u16 val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ntohs
      Src: /src/gpac/src/utils/os_net.c:4600,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4601
      start: 4597
    functionDepth: 0
    functionLinenumber: 4597
    functionLinenumberEnd: 4601
    functionName: gf_ntohs
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - ntohs
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_ntohs(u16 val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strerror
      Src: /src/gpac/src/utils/os_net.c:4606,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - errnoval
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4607
      start: 4603
    functionDepth: 0
    functionLinenumber: 4603
    functionLinenumberEnd: 4607
    functionName: gf_errno_str
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 14
    functionsReached:
    - strerror
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_errno_str(int errnoval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: GF_LIST_REALLOC
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GF_LIST_REALLOC(a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/list.c:75,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 82
    functionName: gf_list_new
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 399
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_list_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/list.c:88,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/list.c:89,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 90
    functionName: gf_list_del
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 317
    functionsReached:
    - gf_free
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_del(GF_List *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/list.c:95,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 96
    functionName: gf_list_reset
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 29
    functionsReached:
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_reset(GF_List *ptr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/list.c:103,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - ptr
    - item
    argTypes:
    - GF_List*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 118
    functionName: gf_list_add
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 553
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_add(GF_List *ptr, void* item)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 125
    functionName: gf_list_count
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 1221
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_count(const GF_List *ptr)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - ptr
    - itemNumber
    argTypes:
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 146
    functionName: gf_list_get
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 1237
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_list_get(GF_List *ptr, u32 itemNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 156
    functionName: gf_list_last
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 57
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_list_last(GF_List *ptr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/list.c:175,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/list.c:198,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 33
    argCount: 2
    argNames:
    - ptr
    - itemNumber
    argTypes:
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 204
    functionName: gf_list_rem
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 262
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_rem(GF_List *ptr, u32 itemNumber)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/list.c:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 206
    functionDepth: 1
    functionLinenumber: 206
    functionLinenumberEnd: 210
    functionName: gf_list_rem_last
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 42
    functionsReached:
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_rem_last(GF_List *ptr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/list.c:220,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/list.c:222,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 3
    argNames:
    - ptr
    - item
    - position
    argTypes:
    - GF_List*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 246
    functionName: gf_list_insert
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 61
    functionsReached:
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_insert(GF_List *ptr, void *item, u32 position)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/list.c:271,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 278
    functionName: gf_list_new
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 399
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_list_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/list.c:283,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - nb_prealloc
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 280
    functionDepth: 1
    functionLinenumber: 280
    functionLinenumberEnd: 284
    functionName: gf_list_new_prealloc
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    linkageType: ''
    returnType: GF_List
    signature: GF_List * gf_list_new_prealloc(u32 nb_prealloc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/list.c:291,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/list.c:293,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 286
    functionDepth: 1
    functionLinenumber: 286
    functionLinenumberEnd: 294
    functionName: gf_list_del
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 317
    functionsReached:
    - gf_free
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_del(GF_List *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/list.c:299,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 296
    functionDepth: 1
    functionLinenumber: 296
    functionLinenumberEnd: 300
    functionName: gf_list_reset
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 29
    functionsReached:
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_reset(GF_List *ptr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/list.c:307,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 2
    argNames:
    - ptr
    - item
    argTypes:
    - GF_List*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 302
    functionDepth: 0
    functionLinenumber: 302
    functionLinenumberEnd: 324
    functionName: gf_list_add
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 554
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_add(GF_List *ptr, void* item)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 332
    functionName: gf_list_count
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 1221
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_count(GF_List *ptr)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 2
    argNames:
    - ptr
    - itemNumber
    argTypes:
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 361
    functionName: gf_list_get
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 1237
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_list_get(GF_List *ptr, u32 itemNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 363
    functionDepth: 0
    functionLinenumber: 363
    functionLinenumberEnd: 368
    functionName: gf_list_last
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 57
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_list_last(GF_List *ptr)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/list.c:388,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/list.c:408,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/list.c:425,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 47
    argCount: 2
    argNames:
    - ptr
    - itemNumber
    argTypes:
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 370
    functionDepth: 0
    functionLinenumber: 370
    functionLinenumberEnd: 428
    functionName: gf_list_rem
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 265
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_rem(GF_List *ptr, u32 itemNumber)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/list.c:433,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 430
    functionDepth: 1
    functionLinenumber: 430
    functionLinenumberEnd: 434
    functionName: gf_list_rem_last
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 42
    functionsReached:
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_rem_last(GF_List *ptr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/list.c:444,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/list.c:445,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 3
    argNames:
    - ptr
    - item
    - position
    argTypes:
    - GF_List*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 436
    functionDepth: 1
    functionLinenumber: 436
    functionLinenumberEnd: 478
    functionName: gf_list_insert
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 61
    functionsReached:
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_insert(GF_List *ptr, void *item, u32 position)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/list.c:492,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 489
    functionDepth: 0
    functionLinenumber: 489
    functionLinenumberEnd: 497
    functionName: gf_list_new
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 400
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_list_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/list.c:502,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - nb_prealloc
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 499
    functionDepth: 1
    functionLinenumber: 499
    functionLinenumberEnd: 503
    functionName: gf_list_new_prealloc
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    linkageType: ''
    returnType: GF_List
    signature: GF_List * gf_list_new_prealloc(u32 nb_prealloc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/list.c:508,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/list.c:509,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 504
    functionDepth: 0
    functionLinenumber: 504
    functionLinenumberEnd: 510
    functionName: gf_list_del
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 317
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_del(GF_List *ptr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/list.c:517,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ptr
    - item
    argTypes:
    - GF_List*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 512
    functionDepth: 0
    functionLinenumber: 512
    functionLinenumberEnd: 524
    functionName: gf_list_add
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 555
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_add(GF_List *ptr, void* item)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 526
    functionDepth: 0
    functionLinenumber: 526
    functionLinenumberEnd: 530
    functionName: gf_list_count
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 1221
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_count(GF_List *ptr)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ptr
    - itemNumber
    argTypes:
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 537
      start: 532
    functionDepth: 0
    functionLinenumber: 532
    functionLinenumberEnd: 537
    functionName: gf_list_get
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 1237
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_list_get(GF_List *ptr, u32 itemNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 544
      start: 539
    functionDepth: 0
    functionLinenumber: 539
    functionLinenumberEnd: 544
    functionName: gf_list_last
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 57
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_list_last(GF_List *ptr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memmove
      Src: /src/gpac/src/utils/list.c:554,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/list.c:557,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ptr
    - itemNumber
    argTypes:
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 548
    functionDepth: 0
    functionLinenumber: 548
    functionLinenumberEnd: 559
    functionName: gf_list_rem
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 266
    functionsReached:
    - memmove
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_rem(GF_List *ptr, u32 itemNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/list.c:566,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 568
      start: 561
    functionDepth: 0
    functionLinenumber: 561
    functionLinenumberEnd: 568
    functionName: gf_list_rem_last
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 42
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_rem_last(GF_List *ptr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/list.c:578,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/list.c:579,1
    - Dst: memmove
      Src: /src/gpac/src/utils/list.c:581,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - ptr
    - item
    - position
    argTypes:
    - GF_List*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 585
      start: 572
    functionDepth: 1
    functionLinenumber: 572
    functionLinenumberEnd: 585
    functionName: gf_list_insert
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 61
    functionsReached:
    - memmove
    - gf_list_add
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_insert(GF_List *ptr, void *item, u32 position)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/list.c:592,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 587
    functionDepth: 0
    functionLinenumber: 587
    functionLinenumberEnd: 595
    functionName: gf_list_reset
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 29
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_reset(GF_List *ptr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/list.c:612,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 619
      start: 607
    functionDepth: 0
    functionLinenumber: 607
    functionLinenumberEnd: 619
    functionName: gf_list_new
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 401
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_list_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/list.c:624,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/list.c:627,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - nb_prealloc
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 630
      start: 621
    functionDepth: 1
    functionLinenumber: 621
    functionLinenumberEnd: 630
    functionName: gf_list_new_prealloc
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_malloc
    linkageType: ''
    returnType: GF_List
    signature: GF_List * gf_list_new_prealloc(u32 nb_prealloc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/list.c:636,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/list.c:637,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 638
      start: 632
    functionDepth: 0
    functionLinenumber: 632
    functionLinenumberEnd: 638
    functionName: gf_list_del
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 317
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_del(GF_List *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LIST_REALLOC
      Src: /src/gpac/src/utils/list.c:642,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/list.c:643,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 644
      start: 640
    functionDepth: 1
    functionLinenumber: 640
    functionLinenumberEnd: 644
    functionName: realloc_chain
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 0
    functionsReached:
    - GF_LIST_REALLOC
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void realloc_chain(GF_List *ptr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: realloc_chain
      Src: /src/gpac/src/utils/list.c:652,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - ptr
    - item
    argTypes:
    - GF_List*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 646
    functionDepth: 2
    functionLinenumber: 646
    functionLinenumberEnd: 658
    functionName: gf_list_add
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 556
    functionsReached:
    - realloc_chain
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_add(GF_List *ptr, void* item)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 665
      start: 660
    functionDepth: 0
    functionLinenumber: 660
    functionLinenumberEnd: 665
    functionName: gf_list_count
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 1221
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_count(const GF_List *ptr)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ptr
    - itemNumber
    argTypes:
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 673
      start: 667
    functionDepth: 0
    functionLinenumber: 667
    functionLinenumberEnd: 673
    functionName: gf_list_get
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 1237
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_list_get(GF_List *ptr, u32 itemNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 680
      start: 675
    functionDepth: 0
    functionLinenumber: 675
    functionLinenumberEnd: 680
    functionName: gf_list_last
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 57
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_list_last(GF_List *ptr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memmove
      Src: /src/gpac/src/utils/list.c:692,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - ptr
    - itemNumber
    argTypes:
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 684
    functionDepth: 0
    functionLinenumber: 684
    functionLinenumberEnd: 696
    functionName: gf_list_rem
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 266
    functionsReached:
    - memmove
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_rem(GF_List *ptr, u32 itemNumber)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 705
      start: 698
    functionDepth: 0
    functionLinenumber: 698
    functionLinenumberEnd: 705
    functionName: gf_list_rem_last
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 42
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_rem_last(GF_List *ptr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/list.c:714,1
    - Dst: realloc_chain
      Src: /src/gpac/src/utils/list.c:715,1
    - Dst: memmove
      Src: /src/gpac/src/utils/list.c:718,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - ptr
    - item
    - position
    argTypes:
    - GF_List*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 708
    functionDepth: 2
    functionLinenumber: 708
    functionLinenumberEnd: 722
    functionName: gf_list_insert
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 61
    functionsReached:
    - realloc_chain
    - gf_list_add
    - memmove
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_insert(GF_List *ptr, void *item, u32 position)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 724
    functionDepth: 0
    functionLinenumber: 724
    functionLinenumberEnd: 728
    functionName: gf_list_reset
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 29
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_reset(GF_List *ptr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/list.c:736,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/list.c:738,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ptr
    - item
    argTypes:
    - GF_List*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 741
      start: 732
    functionDepth: 1
    functionLinenumber: 732
    functionLinenumberEnd: 741
    functionName: gf_list_find
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 69
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_find(GF_List *ptr, void *item)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/utils/list.c:746,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/list.c:747,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ptr
    - item
    argTypes:
    - GF_List*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 749
      start: 743
    functionDepth: 2
    functionLinenumber: 743
    functionLinenumberEnd: 749
    functionName: gf_list_del_item
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 137
    functionsReached:
    - gf_list_find
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_del_item(GF_List *ptr, void *item)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/list.c:756,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ptr
    - pos
    argTypes:
    - GF_List*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 759
      start: 751
    functionDepth: 1
    functionLinenumber: 751
    functionLinenumberEnd: 759
    functionName: gf_list_enum
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 398
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_list_enum(GF_List *ptr, u32 *pos)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/list.c:767,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/list.c:767,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ptr
    - pos
    argTypes:
    - GF_List*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 770
      start: 763
    functionDepth: 1
    functionLinenumber: 763
    functionLinenumberEnd: 770
    functionName: gf_list_rev_enum
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_list_rev_enum(GF_List *ptr, u32 *pos)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/list.c:777,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/list.c:781,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/list.c:782,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/list.c:783,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/list.c:785,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/list.c:789,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/list.c:790,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/list.c:793,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 2
    argNames:
    - l1
    - l2
    argTypes:
    - GF_List*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 797
      start: 773
    functionDepth: 1
    functionLinenumber: 773
    functionLinenumberEnd: 797
    functionName: gf_list_swap
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_add
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_swap(GF_List *l1, GF_List *l2)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/list.c:806,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/utils/list.c:807,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/list.c:809,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - GF_List*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 813
      start: 799
    functionDepth: 1
    functionLinenumber: 799
    functionLinenumberEnd: 813
    functionName: gf_list_transfer
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_list_add
    - gf_list_pop_front
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_list_transfer(GF_List *dst, GF_List *src)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/list.c:821,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/list.c:822,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/list.c:823,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 826
      start: 815
    functionDepth: 2
    functionLinenumber: 815
    functionLinenumberEnd: 826
    functionName: gf_list_clone
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 3
    functionsReached:
    - gf_list_new
    - gf_list_add
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_list_clone(GF_List *ptr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_clone
      Src: /src/gpac/src/utils/list.c:835,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/utils/list.c:836,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/list.c:838,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/utils/list.c:839,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/list.c:842,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 830
    functionDepth: 3
    functionLinenumber: 830
    functionLinenumberEnd: 843
    functionName: gf_list_reverse
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_reset
    - gf_list_clone
    - gf_list_enum
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_list_reverse(GF_List *ptr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/list.c:851,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/list.c:852,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 855
      start: 846
    functionDepth: 1
    functionLinenumber: 846
    functionLinenumberEnd: 855
    functionName: gf_list_pop_front
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 21
    functionsReached:
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_list_pop_front(GF_List *ptr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/utils/list.c:862,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/utils/list.c:863,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 866
      start: 857
    functionDepth: 2
    functionLinenumber: 857
    functionLinenumberEnd: 866
    functionName: gf_list_pop_back
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 53
    functionsReached:
    - gf_list_last
    - gf_list_rem_last
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_list_pop_back(GF_List *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - size
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 48
    functionName: ALLOC
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 1199
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ALLOC(size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: TRYFREE
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRYFREE(p)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: ALLOC
      Src: /src/gpac/src/utils/gzio.c:125,1
    - Dst: crc32
      Src: /src/gpac/src/utils/gzio.c:140,1
    - Dst: ALLOC
      Src: /src/gpac/src/utils/gzio.c:144,1
    - Dst: strlen
      Src: /src/gpac/src/utils/gzio.c:144,1
    - Dst: destroy
      Src: /src/gpac/src/utils/gzio.c:146,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/gzio.c:149,1
    - Dst: destroy
      Src: /src/gpac/src/utils/gzio.c:175,1
    - Dst: deflateInit2
      Src: /src/gpac/src/utils/gzio.c:183,1
    - Dst: ALLOC
      Src: /src/gpac/src/utils/gzio.c:187,1
    - Dst: destroy
      Src: /src/gpac/src/utils/gzio.c:190,1
    - Dst: ALLOC
      Src: /src/gpac/src/utils/gzio.c:194,1
    - Dst: inflateInit2
      Src: /src/gpac/src/utils/gzio.c:196,1
    - Dst: destroy
      Src: /src/gpac/src/utils/gzio.c:204,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/gzio.c:211,1
    - Dst: destroy
      Src: /src/gpac/src/utils/gzio.c:214,1
    - Dst: destroy
      Src: /src/gpac/src/utils/gzio.c:219,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/gzio.c:224,1
    - Dst: check_header
      Src: /src/gpac/src/utils/gzio.c:235,1
    - Dst: gf_ftell
      Src: /src/gpac/src/utils/gzio.c:236,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 82
    argCount: 2
    argNames:
    - path
    - mode
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 240
    functionName: gf_gzopen
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - strcpy
    - inflateInit2
    - deflateInit2
    - crc32
    - gf_fopen
    - destroy
    - check_header
    - ALLOC
    - strlen
    - gf_ftell
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_gzopen(const char *path, const char *mode)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_fread
      Src: /src/gpac/src/utils/gzio.c:253,1
    - Dst: gf_ferror
      Src: /src/gpac/src/utils/gzio.c:256,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - s
    argTypes:
    - gz_stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 248
    functionDepth: 1
    functionLinenumber: 248
    functionLinenumberEnd: 263
    functionName: get_byte
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - gf_ferror
    - gf_fread
    linkageType: ''
    returnType: local
    signature: local get_byte(gz_stream *s)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_fread
      Src: /src/gpac/src/utils/gzio.c:288,1
    - Dst: gf_ferror
      Src: /src/gpac/src/utils/gzio.c:289,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:308,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:309,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:316,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:319,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:320,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:322,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:325,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:328,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:331,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 49
    argCount: 1
    argNames:
    - s
    argTypes:
    - gz_stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 274
    functionDepth: 2
    functionLinenumber: 274
    functionLinenumberEnd: 334
    functionName: check_header
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 1
    functionsReached:
    - gf_ferror
    - gf_fread
    - get_byte
    linkageType: ''
    returnType: local
    signature: local check_header(gz_stream *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: TRYFREE
      Src: /src/gpac/src/utils/gzio.c:346,1
    - Dst: deflateEnd
      Src: /src/gpac/src/utils/gzio.c:353,1
    - Dst: inflateEnd
      Src: /src/gpac/src/utils/gzio.c:356,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/gzio.c:359,1
    - Dst: TRYFREE
      Src: /src/gpac/src/utils/gzio.c:367,1
    - Dst: TRYFREE
      Src: /src/gpac/src/utils/gzio.c:368,1
    - Dst: TRYFREE
      Src: /src/gpac/src/utils/gzio.c:369,1
    - Dst: TRYFREE
      Src: /src/gpac/src/utils/gzio.c:370,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 1
    argNames:
    - s
    argTypes:
    - gz_stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 340
    functionDepth: 1
    functionLinenumber: 340
    functionLinenumberEnd: 372
    functionName: destroy
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 128
    functionsReached:
    - gf_fclose
    - deflateEnd
    - TRYFREE
    - inflateEnd
    linkageType: ''
    returnType: local
    signature: local destroy (gz_stream *s)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/utils/gzio.c:410,1
    - Dst: gf_fread
      Src: /src/gpac/src/utils/gzio.c:419,1
    - Dst: gf_fread
      Src: /src/gpac/src/utils/gzio.c:430,1
    - Dst: gf_ferror
      Src: /src/gpac/src/utils/gzio.c:433,1
    - Dst: inflate
      Src: /src/gpac/src/utils/gzio.c:442,1
    - Dst: crc32
      Src: /src/gpac/src/utils/gzio.c:448,1
    - Dst: getLong
      Src: /src/gpac/src/utils/gzio.c:451,1
    - Dst: getLong
      Src: /src/gpac/src/utils/gzio.c:454,1
    - Dst: check_header
      Src: /src/gpac/src/utils/gzio.c:459,1
    - Dst: inflateReset
      Src: /src/gpac/src/utils/gzio.c:461,1
    - Dst: crc32
      Src: /src/gpac/src/utils/gzio.c:462,1
    - Dst: crc32
      Src: /src/gpac/src/utils/gzio.c:468,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 82
    argCount: 3
    argNames:
    - file
    - buf
    - len
    argTypes:
    - void*
    - voidp
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 374
    functionDepth: 3
    functionLinenumber: 374
    functionLinenumberEnd: 474
    functionName: gf_gzread
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - inflateReset
    - memcpy
    - gf_fread
    - crc32
    - check_header
    - gf_ferror
    - getLong
    - inflate
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_gzread(void *file, voidp buf, unsigned len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_gzread
      Src: /src/gpac/src/utils/gzio.c:486,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - file
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 481
    functionDepth: 4
    functionLinenumber: 481
    functionLinenumberEnd: 487
    functionName: gf_gzgetc
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - gf_gzread
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_gzgetc(void *file)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - c
    - file
    argTypes:
    - int
    - gzFile
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 495
    functionDepth: 0
    functionLinenumber: 495
    functionLinenumberEnd: 506
    functionName: gzungetc
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int gzungetc(int c, gzFile file)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_gzread
      Src: /src/gpac/src/utils/gzio.c:526,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 7
    argCount: 3
    argNames:
    - file
    - buf
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 520
    functionDepth: 4
    functionLinenumber: 520
    functionLinenumberEnd: 529
    functionName: gf_gzgets
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - gf_gzread
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_gzgets(void *file, char *buf, int len)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fwrite
      Src: /src/gpac/src/utils/gzio.c:551,1
    - Dst: deflate
      Src: /src/gpac/src/utils/gzio.c:559,1
    - Dst: crc32
      Src: /src/gpac/src/utils/gzio.c:564,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 3
    argNames:
    - file
    - buf
    - len
    argTypes:
    - gzFile
    - void*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 537
    functionDepth: 0
    functionLinenumber: 537
    functionLinenumberEnd: 567
    functionName: gf_gzwrite
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - crc32
    - deflate
    - fwrite
    linkageType: ''
    returnType: int
    signature: int gf_gzwrite (gzFile file, void *const buf, unsigned len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/gpac/src/utils/gzio.c:585,1
    - Dst: vsprintf
      Src: /src/gpac/src/utils/gzio.c:588,1
    - Dst: va_end
      Src: /src/gpac/src/utils/gzio.c:589,1
    - Dst: vsprintf
      Src: /src/gpac/src/utils/gzio.c:593,1
    - Dst: va_end
      Src: /src/gpac/src/utils/gzio.c:594,1
    - Dst: vsnprintf
      Src: /src/gpac/src/utils/gzio.c:598,1
    - Dst: va_end
      Src: /src/gpac/src/utils/gzio.c:599,1
    - Dst: strlen
      Src: /src/gpac/src/utils/gzio.c:600,1
    - Dst: vsnprintf
      Src: /src/gpac/src/utils/gzio.c:602,1
    - Dst: va_end
      Src: /src/gpac/src/utils/gzio.c:603,1
    - Dst: gf_gzwrite
      Src: /src/gpac/src/utils/gzio.c:608,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - file
    - format
    argTypes:
    - gzFile
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 578
    functionDepth: 1
    functionLinenumber: 578
    functionLinenumberEnd: 609
    functionName: gf_gzprintf
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - vsprintf
    - gf_gzwrite
    - va_end
    - va_start
    - vsnprintf
    - strlen
    linkageType: ''
    returnType: int
    signature: int gf_gzprintf (gzFile file, const char *format, /* args */ ...)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/utils/gzio.c:621,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/gzio.c:626,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/gzio.c:631,1
    - Dst: strlen
      Src: /src/gpac/src/utils/gzio.c:633,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/gzio.c:635,1
    - Dst: gf_gzwrite
      Src: /src/gpac/src/utils/gzio.c:641,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 22
    argNames:
    - file
    - format
    - a1
    - a2
    - a3
    - a4
    - a5
    - a6
    - a7
    - a8
    - a9
    - a10
    - a11
    - a12
    - a13
    - a14
    - a15
    - a16
    - a17
    - a18
    - a19
    - a20
    argTypes:
    - gzFile
    - char*
    - int
    - int
    - int
    - int
    - int
    - int
    - int
    - int
    - int
    - int
    - int
    - int
    - int
    - int
    - int
    - int
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 612
    functionDepth: 1
    functionLinenumber: 612
    functionLinenumberEnd: 642
    functionName: gf_gzprintf
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - gf_gzwrite
    - strlen
    - sprintf
    - snprintf
    linkageType: ''
    returnType: int
    signature: "int gf_gzprintf (gzFile file, const char *format, int a1, int a2,
      int a3, int a4, int a5, int a6, int a7, int a8, int a9, int a10,\n              int
      a11, int a12, int a13, int a14, int a15, int a16, int a17, int a18, int a19,
      int a20)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_gzwrite
      Src: /src/gpac/src/utils/gzio.c:654,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - file
    - c
    argTypes:
    - gzFile
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 655
      start: 649
    functionDepth: 1
    functionLinenumber: 649
    functionLinenumberEnd: 655
    functionName: gf_gzputc
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - gf_gzwrite
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_gzputc(gzFile file, int c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_gzwrite
      Src: /src/gpac/src/utils/gzio.c:665,1
    - Dst: strlen
      Src: /src/gpac/src/utils/gzio.c:665,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - file
    - s
    argTypes:
    - gzFile
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 666
      start: 663
    functionDepth: 1
    functionLinenumber: 663
    functionLinenumberEnd: 666
    functionName: gf_gzputs
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - gf_gzwrite
    - strlen
    linkageType: ''
    returnType: int
    signature: int gf_gzputs(gzFile file, const char *s)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: fwrite
      Src: /src/gpac/src/utils/gzio.c:687,1
    - Dst: deflate
      Src: /src/gpac/src/utils/gzio.c:696,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 26
    argCount: 2
    argNames:
    - file
    - flush
    argTypes:
    - gzFile
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 710
      start: 673
    functionDepth: 0
    functionLinenumber: 673
    functionLinenumberEnd: 710
    functionName: do_flush
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 1
    functionsReached:
    - deflate
    - fwrite
    linkageType: ''
    returnType: local
    signature: local do_flush (gzFile file, int flush)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: do_flush
      Src: /src/gpac/src/utils/gzio.c:715,1
    - Dst: fflush
      Src: /src/gpac/src/utils/gzio.c:718,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - file
    - flush
    argTypes:
    - gzFile
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 720
      start: 712
    functionDepth: 1
    functionLinenumber: 712
    functionLinenumberEnd: 720
    functionName: gf_gzflush
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - fflush
    - do_flush
    linkageType: ''
    returnType: int
    signature: int gf_gzflush (gzFile file, int flush)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: crc32
      Src: /src/gpac/src/utils/gzio.c:738,1
    - Dst: inflateReset
      Src: /src/gpac/src/utils/gzio.c:739,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/gzio.c:742,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - file
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 743
      start: 726
    functionDepth: 0
    functionLinenumber: 726
    functionLinenumberEnd: 743
    functionName: gf_gzrewind
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - crc32
    - gf_fseek
    - inflateReset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_gzrewind(void *file)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: ALLOC
      Src: /src/gpac/src/utils/gzio.c:775,1
    - Dst: zmemzero
      Src: /src/gpac/src/utils/gzio.c:777,1
    - Dst: gf_gzwrite
      Src: /src/gpac/src/utils/gzio.c:783,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/gzio.c:804,1
    - Dst: gf_gzrewind
      Src: /src/gpac/src/utils/gzio.c:813,1
    - Dst: ALLOC
      Src: /src/gpac/src/utils/gzio.c:819,1
    - Dst: gf_gzread
      Src: /src/gpac/src/utils/gzio.c:832,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 68
    argCount: 3
    argNames:
    - file
    - _offset
    - whence
    argTypes:
    - void*
    - u64
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 837
      start: 753
    functionDepth: 4
    functionLinenumber: 753
    functionLinenumberEnd: 837
    functionName: gf_gzseek
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - gf_gzwrite
    - zmemzero
    - gf_gzrewind
    - gf_fseek
    - ALLOC
    - gf_gzread
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_gzseek(void *file, u64 _offset, int whence)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_gzseek
      Src: /src/gpac/src/utils/gzio.c:847,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - file
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 848
      start: 844
    functionDepth: 5
    functionLinenumber: 844
    functionLinenumberEnd: 848
    functionName: gf_gztell
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - gf_gzseek
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_gztell(void *file)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - file
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 866
      start: 854
    functionDepth: 0
    functionLinenumber: 854
    functionLinenumberEnd: 866
    functionName: gf_gzeof
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_gzeof(void *file)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - file
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 878
      start: 871
    functionDepth: 0
    functionLinenumber: 871
    functionLinenumberEnd: 878
    functionName: gf_gzdirect
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_gzdirect (void * file)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fputc
      Src: /src/gpac/src/utils/gzio.c:888,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - file
    - x
    argTypes:
    - FILE*
    - uLong
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 891
      start: 884
    functionDepth: 0
    functionLinenumber: 884
    functionLinenumberEnd: 891
    functionName: putLong
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - fputc
    linkageType: ''
    returnType: local
    signature: local putLong (FILE *file, uLong x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:900,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:903,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:904,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:905,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - gz_stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 909
      start: 898
    functionDepth: 2
    functionLinenumber: 898
    functionLinenumberEnd: 909
    functionName: getLong
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 1
    functionsReached:
    - get_byte
    linkageType: ''
    returnType: local
    signature: local getLong (gz_stream *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: do_flush
      Src: /src/gpac/src/utils/gzio.c:926,1
    - Dst: destroy
      Src: /src/gpac/src/utils/gzio.c:927,1
    - Dst: putLong
      Src: /src/gpac/src/utils/gzio.c:929,1
    - Dst: putLong
      Src: /src/gpac/src/utils/gzio.c:930,1
    - Dst: destroy
      Src: /src/gpac/src/utils/gzio.c:933,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - file
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 934
      start: 915
    functionDepth: 2
    functionLinenumber: 915
    functionLinenumberEnd: 934
    functionName: gf_gzclose
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - putLong
    - destroy
    - do_flush
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_gzclose(void *file)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - errnum
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 938
      start: 937
    functionDepth: 0
    functionLinenumber: 937
    functionLinenumberEnd: 938
    functionName: zstrerror
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: zstrerror(errnum)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - errnum
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 940
      start: 939
    functionDepth: 0
    functionLinenumber: 939
    functionLinenumberEnd: 940
    functionName: zstrerror
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: zstrerror(errnum)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ERR_MSG
      Src: /src/gpac/src/utils/gzio.c:957,1
    - Dst: zstrerror
      Src: /src/gpac/src/utils/gzio.c:962,1
    - Dst: ERR_MSG
      Src: /src/gpac/src/utils/gzio.c:964,1
    - Dst: TRYFREE
      Src: /src/gpac/src/utils/gzio.c:966,1
    - Dst: ALLOC
      Src: /src/gpac/src/utils/gzio.c:967,1
    - Dst: strlen
      Src: /src/gpac/src/utils/gzio.c:967,1
    - Dst: strlen
      Src: /src/gpac/src/utils/gzio.c:967,1
    - Dst: ERR_MSG
      Src: /src/gpac/src/utils/gzio.c:968,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/gzio.c:969,1
    - Dst: strcat
      Src: /src/gpac/src/utils/gzio.c:970,1
    - Dst: strcat
      Src: /src/gpac/src/utils/gzio.c:971,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - file
    - errnum
    argTypes:
    - void*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 973
      start: 949
    functionDepth: 1
    functionLinenumber: 949
    functionLinenumberEnd: 973
    functionName: gf_gzerror
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - strcat
    - zstrerror
    - strcpy
    - TRYFREE
    - ALLOC
    - ERR_MSG
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_gzerror (void *file, int *errnum)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: clearerr
      Src: /src/gpac/src/utils/gzio.c:986,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - file
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 987
      start: 978
    functionDepth: 0
    functionLinenumber: 978
    functionLinenumberEnd: 987
    functionName: gf_gzclearerr
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - clearerr
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_gzclearerr(void *file)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/bitstream.c:125,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 43
    argCount: 3
    argNames:
    - bs
    - buffer
    - BufferSize
    argTypes:
    - GF_BitStream*
    - u8*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 131
    functionName: gf_bs_reassign_buffer
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 16
    functionsReached:
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_reassign_buffer(GF_BitStream *bs, const u8 *buffer,
      u64 BufferSize)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/bitstream.c:136,1
    - Dst: memset
      Src: /src/gpac/src/utils/bitstream.c:138,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/bitstream.c:164,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:166,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:177,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 38
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 181
    functionName: GF_BitStream *gf_bs_new(const u8 *buffer, u64 BufferSize, u32 mode)
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_BitStream *gf_bs_new(const u8 *buffer, u64 BufferSize,
      u32 mode)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/bitstream.c:189,1
    - Dst: memset
      Src: /src/gpac/src/utils/bitstream.c:191,1
    - Dst: gf_ftell
      Src: /src/gpac/src/utils/bitstream.c:205,1
    - Dst: gf_fsize
      Src: /src/gpac/src/utils/bitstream.c:206,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/bitstream.c:207,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/bitstream.c:211,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/bitstream.c:214,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:216,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/bitstream.c:222,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/bitstream.c:224,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:226,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 234
    functionName: GF_BitStream *gf_bs_from_file(FILE *f, u32 mode)
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fseek
    - gf_opts_get_int
    - memset
    - gf_fsize
    - gf_malloc
    - gf_ftell
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_BitStream *gf_bs_from_file(FILE *f, u32 mode)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/bitstream.c:244,1
    - Dst: memset
      Src: /src/gpac/src/utils/bitstream.c:246,1
    - Dst: lseek_64
      Src: /src/gpac/src/utils/bitstream.c:257,1
    - Dst: gf_fd_fsize
      Src: /src/gpac/src/utils/bitstream.c:258,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/bitstream.c:261,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/bitstream.c:264,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:266,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/bitstream.c:272,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/bitstream.c:274,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:276,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 238
    functionDepth: 1
    functionLinenumber: 238
    functionLinenumberEnd: 283
    functionName: GF_BitStream *gf_bs_from_fd(int fd, u32 mode)
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fd_fsize
    - gf_opts_get_int
    - lseek_64
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_BitStream *gf_bs_from_fd(int fd, u32 mode)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/bitstream.c:292,1
    - Dst: memset
      Src: /src/gpac/src/utils/bitstream.c:294,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/bitstream.c:301,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:303,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 3
    argNames:
    - usr_data
    - buffer
    - buffer_size
    argTypes:
    - void*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 312
    functionName: gf_bs_new_cbk_buffer
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 3
    functionsReached:
    - gf_free
    - memset
    - gf_malloc
    linkageType: ''
    returnType: GF_BitStream
    signature: GF_BitStream *gf_bs_new_cbk_buffer(GF_Err (*on_block_out)(void *cbk,
      u8 *data, u32 block_size), void *usr_data, u8 *buffer, u32 buffer_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new_cbk_buffer
      Src: /src/gpac/src/utils/bitstream.c:316,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - usr_data
    - block_size
    argTypes:
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 314
    functionDepth: 1
    functionLinenumber: 314
    functionLinenumberEnd: 318
    functionName: gf_bs_new_cbk
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 4
    functionsReached:
    - gf_bs_new_cbk_buffer
    linkageType: ''
    returnType: GF_BitStream
    signature: GF_BitStream *gf_bs_new_cbk(GF_Err (*on_block_out)(void *cbk, u8 *data,
      u32 block_size), void *usr_data, u32 block_size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/bitstream.c:330,1
    - Dst: GF_BitStream*::on_block_out
      Src: /src/gpac/src/utils/bitstream.c:332,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - bs
    - prevent_dispatch
    argTypes:
    - GF_BitStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 319
    functionDepth: 1
    functionLinenumber: 319
    functionLinenumberEnd: 336
    functionName: gf_bs_prevent_dispatch
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 5
    functionsReached:
    - GF_BitStream*::on_block_out
    - gf_assert
    linkageType: ''
    returnType: void
    signature: void gf_bs_prevent_dispatch(GF_BitStream *bs, Bool prevent_dispatch)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: write
      Src: /src/gpac/src/utils/bitstream.c:345,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/utils/bitstream.c:349,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 338
    functionDepth: 1
    functionLinenumber: 338
    functionLinenumberEnd: 360
    functionName: bs_flush_write_cache
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - write
    - gf_fwrite
    linkageType: ''
    returnType: Bool
    signature: Bool bs_flush_write_cache(GF_BitStream *bs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_BitStream*::on_block_out
      Src: /src/gpac/src/utils/bitstream.c:369,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:372,1
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:374,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:375,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:378,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:379,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 364
    functionDepth: 2
    functionLinenumber: 364
    functionLinenumberEnd: 380
    functionName: gf_bs_del
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 305
    functionsReached:
    - gf_free
    - GF_BitStream*::on_block_out
    - bs_flush_write_cache
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_del(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - bs
    - do_remove
    argTypes:
    - GF_BitStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 382
    functionDepth: 0
    functionLinenumber: 382
    functionLinenumberEnd: 389
    functionName: gf_bs_enable_emulation_byte_removal
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 20
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_enable_emulation_byte_removal(GF_BitStream *bs, Bool
      do_remove)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 391
    functionDepth: 0
    functionLinenumber: 391
    functionLinenumberEnd: 396
    functionName: gf_bs_get_emulation_byte_removed
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_get_emulation_byte_removed(GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 400
    functionDepth: 0
    functionLinenumber: 400
    functionLinenumberEnd: 409
    functionName: gf_bs_is_align
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_bs_is_align(GF_BitStream *bs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: read
      Src: /src/gpac/src/utils/bitstream.c:418,1
    - Dst: gf_fread
      Src: /src/gpac/src/utils/bitstream.c:422,1
    - Dst: read
      Src: /src/gpac/src/utils/bitstream.c:435,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/bitstream.c:436,1
    - Dst: gf_fgetc
      Src: /src/gpac/src/utils/bitstream.c:440,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 2
    argNames:
    - bs
    - is_eos
    argTypes:
    - GF_BitStream*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 411
    functionDepth: 1
    functionLinenumber: 411
    functionLinenumberEnd: 443
    functionName: gf_bs_load_byte
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - gf_fread
    - gf_fgetc
    - GF_LOG
    - read
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gf_bs_load_byte(GF_BitStream *bs, Bool *is_eos)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: GF_BitStream*::EndOfStream
      Src: /src/gpac/src/utils/bitstream.c:452,1
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:470,1
    - Dst: gf_feof
      Src: /src/gpac/src/utils/bitstream.c:477,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/bitstream.c:487,1
    - Dst: gf_bs_load_byte
      Src: /src/gpac/src/utils/bitstream.c:490,1
    - Dst: gf_bs_load_byte
      Src: /src/gpac/src/utils/bitstream.c:495,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:502,1
    - Dst: GF_BitStream*::EndOfStream
      Src: /src/gpac/src/utils/bitstream.c:513,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/bitstream.c:518,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/bitstream.c:521,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 67
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 446
    functionDepth: 2
    functionLinenumber: 446
    functionLinenumberEnd: 523
    functionName: BS_ReadByte
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_bs_load_byte
    - gf_feof
    - gf_bs_seek
    - GF_LOG
    - bs_flush_write_cache
    - GF_BitStream*::EndOfStream
    linkageType: ''
    returnType: u8
    signature: u8 BS_ReadByte(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BS_ReadByte
      Src: /src/gpac/src/utils/bitstream.c:536,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 532
    functionDepth: 3
    functionLinenumber: 532
    functionLinenumberEnd: 550
    functionName: gf_bs_read_bit
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - BS_ReadByte
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_read_bit(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_bit
      Src: /src/gpac/src/utils/bitstream.c:568,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - bs
    - nBits
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 552
    functionDepth: 4
    functionLinenumber: 552
    functionLinenumberEnd: 571
    functionName: gf_bs_read_int
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 316
    functionsReached:
    - gf_bs_read_bit
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_read_int(GF_BitStream *bs, u32 nBits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/bitstream.c:576,1
    - Dst: BS_ReadByte
      Src: /src/gpac/src/utils/bitstream.c:584,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 585
      start: 573
    functionDepth: 3
    functionLinenumber: 573
    functionLinenumberEnd: 585
    functionName: gf_bs_read_u8
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 116
    functionsReached:
    - BS_ReadByte
    - gf_fatal_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_read_u8(GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/bitstream.c:592,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/bitstream.c:596,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/utils/bitstream.c:597,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:604,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 4
    argNames:
    - bs
    - delimiter
    - out
    - max_length
    argTypes:
    - GF_BitStream*
    - u8
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 588
    functionDepth: 1
    functionLinenumber: 588
    functionLinenumberEnd: 609
    functionName: gf_bs_read_u8_until_delimiter
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - gf_bs_available
    - gf_bs_read_data
    - gf_bs_seek
    - gf_bs_get_position
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_read_u8_until_delimiter(GF_BitStream *bs, u8 delimiter,
      u8* out, u32 max_length)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/bitstream.c:616,1
    - Dst: BS_ReadByte
      Src: /src/gpac/src/utils/bitstream.c:626,1
    - Dst: BS_ReadByte
      Src: /src/gpac/src/utils/bitstream.c:628,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 630
      start: 612
    functionDepth: 3
    functionLinenumber: 612
    functionLinenumberEnd: 630
    functionName: gf_bs_read_u16
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 108
    functionsReached:
    - BS_ReadByte
    - gf_fatal_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_read_u16(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/bitstream.c:637,1
    - Dst: BS_ReadByte
      Src: /src/gpac/src/utils/bitstream.c:650,1
    - Dst: BS_ReadByte
      Src: /src/gpac/src/utils/bitstream.c:652,1
    - Dst: BS_ReadByte
      Src: /src/gpac/src/utils/bitstream.c:654,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 633
    functionDepth: 3
    functionLinenumber: 633
    functionLinenumberEnd: 656
    functionName: gf_bs_read_u24
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 13
    functionsReached:
    - BS_ReadByte
    - gf_fatal_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_read_u24(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/bitstream.c:662,1
    - Dst: BS_ReadByte
      Src: /src/gpac/src/utils/bitstream.c:676,1
    - Dst: BS_ReadByte
      Src: /src/gpac/src/utils/bitstream.c:678,1
    - Dst: BS_ReadByte
      Src: /src/gpac/src/utils/bitstream.c:680,1
    - Dst: BS_ReadByte
      Src: /src/gpac/src/utils/bitstream.c:682,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 658
    functionDepth: 3
    functionLinenumber: 658
    functionLinenumberEnd: 684
    functionName: gf_bs_read_u32
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 186
    functionsReached:
    - BS_ReadByte
    - gf_fatal_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_read_u32(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/bitstream.c:711,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/bitstream.c:713,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 25
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 715
      start: 686
    functionDepth: 4
    functionLinenumber: 686
    functionLinenumberEnd: 715
    functionName: gf_bs_read_u64
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 36
    functionsReached:
    - gf_bs_read_u32
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_read_u64(GF_BitStream *bs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/bitstream.c:723,1
    - Dst: GF_BitStream*::EndOfStream
      Src: /src/gpac/src/utils/bitstream.c:724,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/bitstream.c:729,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:733,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:736,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/utils/bitstream.c:740,1
    - Dst: gf_bs_read_bit
      Src: /src/gpac/src/utils/bitstream.c:744,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 2
    argNames:
    - bs
    - nBits
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 748
      start: 717
    functionDepth: 5
    functionLinenumber: 717
    functionLinenumberEnd: 748
    functionName: gf_bs_read_long_int
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 10
    functionsReached:
    - GF_LOG
    - gf_bs_read_long_int
    - gf_bs_read_bit
    - gf_bs_read_int
    - GF_BitStream*::EndOfStream
    - gf_bs_available
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_read_long_int(GF_BitStream *bs, u32 nBits)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_bit
      Src: /src/gpac/src/utils/bitstream.c:758,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:760,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:761,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:762,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:763,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 766
      start: 751
    functionDepth: 5
    functionLinenumber: 751
    functionLinenumberEnd: 766
    functionName: gf_bs_read_float
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 8
    functionsReached:
    - gf_bs_read_int
    - gf_bs_read_bit
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_read_float(GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_bit
      Src: /src/gpac/src/utils/bitstream.c:774,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 776
      start: 768
    functionDepth: 4
    functionLinenumber: 768
    functionLinenumberEnd: 776
    functionName: gf_bs_read_double
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 8
    functionsReached:
    - gf_bs_read_bit
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_read_double(GF_BitStream *bs)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/bitstream.c:786,1
    - Dst: gf_bs_is_align
      Src: /src/gpac/src/utils/bitstream.c:791,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/bitstream.c:797,1
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:803,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/bitstream.c:809,1
    - Dst: read
      Src: /src/gpac/src/utils/bitstream.c:817,1
    - Dst: gf_fread
      Src: /src/gpac/src/utils/bitstream.c:821,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:833,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 48
    argCount: 3
    argNames:
    - bs
    - data
    - nbBytes
    argTypes:
    - GF_BitStream*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 837
      start: 778
    functionDepth: 5
    functionLinenumber: 778
    functionLinenumberEnd: 837
    functionName: gf_bs_read_data
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 177
    functionsReached:
    - read
    - GF_LOG
    - memcpy
    - gf_fread
    - bs_flush_write_cache
    - gf_bs_is_align
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_read_data(GF_BitStream *bs, u8 *data, u32 nbBytes)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/bitstream.c:845,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/bitstream.c:853,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/bitstream.c:860,1
    - Dst: GF_BitStream*::on_block_out
      Src: /src/gpac/src/utils/bitstream.c:862,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/bitstream.c:868,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/bitstream.c:878,1
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:888,1
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:893,1
    - Dst: write
      Src: /src/gpac/src/utils/bitstream.c:900,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/bitstream.c:901,1
    - Dst: gf_fputc
      Src: /src/gpac/src/utils/bitstream.c:905,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 57
    argCount: 2
    argNames:
    - bs
    - val
    argTypes:
    - GF_BitStream*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 910
      start: 841
    functionDepth: 2
    functionLinenumber: 841
    functionLinenumberEnd: 910
    functionName: BS_WriteByte
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - GF_BitStream*::on_block_out
    - gf_assert
    - gf_fputc
    - GF_LOG
    - bs_flush_write_cache
    - write
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void BS_WriteByte(GF_BitStream *bs, u8 val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:918,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - bs
    - bit
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 921
      start: 912
    functionDepth: 3
    functionLinenumber: 912
    functionLinenumberEnd: 921
    functionName: BS_WriteBit
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - BS_WriteByte
    linkageType: ''
    returnType: void
    signature: void BS_WriteBit(GF_BitStream *bs, u32 bit)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/bitstream.c:926,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/utils/bitstream.c:929,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - bs
    - nBits
    - max_shift
    argTypes:
    - GF_BitStream*
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 934
      start: 923
    functionDepth: 1
    functionLinenumber: 923
    functionLinenumberEnd: 934
    functionName: bs_handle_nbits_overflow
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_write_long_int
    linkageType: ''
    returnType: s32
    signature: s32 bs_handle_nbits_overflow(GF_BitStream* bs, s32 nBits, s32 max_shift)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: bs_handle_nbits_overflow
      Src: /src/gpac/src/utils/bitstream.c:942,1
    - Dst: BS_WriteBit
      Src: /src/gpac/src/utils/bitstream.c:952,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - bs
    - _value
    - nBits
    argTypes:
    - GF_BitStream*
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 936
    functionDepth: 4
    functionLinenumber: 936
    functionLinenumberEnd: 955
    functionName: gf_bs_write_int
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 228
    functionsReached:
    - bs_handle_nbits_overflow
    - BS_WriteBit
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_write_int(GF_BitStream *bs, s32 _value, s32 nBits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: bs_handle_nbits_overflow
      Src: /src/gpac/src/utils/bitstream.c:962,1
    - Dst: BS_WriteBit
      Src: /src/gpac/src/utils/bitstream.c:968,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - bs
    - _value
    - nBits
    argTypes:
    - GF_BitStream*
    - s64
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 971
      start: 957
    functionDepth: 4
    functionLinenumber: 957
    functionLinenumberEnd: 971
    functionName: gf_bs_write_long_int
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 21
    functionsReached:
    - bs_handle_nbits_overflow
    - BS_WriteBit
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_write_long_int(GF_BitStream *bs, s64 _value, s32 nBits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/bitstream.c:976,1
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:982,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - bs
    - value
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 984
      start: 973
    functionDepth: 3
    functionLinenumber: 973
    functionLinenumberEnd: 984
    functionName: gf_bs_write_u8
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 143
    functionsReached:
    - BS_WriteByte
    - gf_fatal_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_write_u8(GF_BitStream *bs, u32 value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/bitstream.c:989,1
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:995,1
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:996,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - bs
    - value
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 998
      start: 986
    functionDepth: 3
    functionLinenumber: 986
    functionLinenumberEnd: 998
    functionName: gf_bs_write_u16
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 124
    functionsReached:
    - BS_WriteByte
    - gf_fatal_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_write_u16(GF_BitStream *bs, u32 value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/bitstream.c:1003,1
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:1010,1
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:1011,1
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:1012,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - bs
    - value
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1014
      start: 1000
    functionDepth: 3
    functionLinenumber: 1000
    functionLinenumberEnd: 1014
    functionName: gf_bs_write_u24
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 17
    functionsReached:
    - BS_WriteByte
    - gf_fatal_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_write_u24(GF_BitStream *bs, u32 value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/bitstream.c:1019,1
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:1027,1
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:1028,1
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:1029,1
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:1030,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - bs
    - value
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1032
      start: 1016
    functionDepth: 3
    functionLinenumber: 1016
    functionLinenumberEnd: 1032
    functionName: gf_bs_write_u32
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 201
    functionsReached:
    - BS_WriteByte
    - gf_fatal_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_write_u32(GF_BitStream *bs, u32 value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/bitstream.c:1037,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/bitstream.c:1038,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/bitstream.c:1039,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - bs
    - value
    argTypes:
    - GF_BitStream*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1040
      start: 1034
    functionDepth: 4
    functionLinenumber: 1034
    functionLinenumberEnd: 1040
    functionName: gf_bs_write_u64
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 41
    functionsReached:
    - gf_bs_write_u32
    - gf_fatal_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_write_u64(GF_BitStream *bs, u64 value)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_is_align
      Src: /src/gpac/src/utils/bitstream.c:1045,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1048,1
    - Dst: memset
      Src: /src/gpac/src/utils/bitstream.c:1058,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/bitstream.c:1071,1
    - Dst: memset
      Src: /src/gpac/src/utils/bitstream.c:1076,1
    - Dst: write
      Src: /src/gpac/src/utils/bitstream.c:1083,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/utils/bitstream.c:1088,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 47
    argCount: 3
    argNames:
    - bs
    - byte
    - repeat_count
    argTypes:
    - GF_BitStream*
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1097
      start: 1042
    functionDepth: 5
    functionLinenumber: 1042
    functionLinenumberEnd: 1097
    functionName: gf_bs_write_byte
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 2
    functionsReached:
    - gf_bs_write_int
    - gf_fwrite
    - memset
    - write
    - gf_bs_is_align
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_write_byte(GF_BitStream *bs, u8 byte, u32 repeat_count)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BS_WriteBit
      Src: /src/gpac/src/utils/bitstream.c:1112,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - bs
    - value
    argTypes:
    - GF_BitStream*
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1114
      start: 1101
    functionDepth: 4
    functionLinenumber: 1101
    functionLinenumberEnd: 1114
    functionName: gf_bs_write_float
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 11
    functionsReached:
    - BS_WriteBit
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_write_float(GF_BitStream *bs, Float value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BS_WriteBit
      Src: /src/gpac/src/utils/bitstream.c:1126,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - bs
    - value
    argTypes:
    - GF_BitStream*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1128
      start: 1116
    functionDepth: 4
    functionLinenumber: 1116
    functionLinenumberEnd: 1128
    functionName: gf_bs_write_double
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 6
    functionsReached:
    - BS_WriteBit
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_write_double (GF_BitStream *bs, Double value)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_is_align
      Src: /src/gpac/src/utils/bitstream.c:1138,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/bitstream.c:1142,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/bitstream.c:1145,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/bitstream.c:1151,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/bitstream.c:1154,1
    - Dst: GF_BitStream*::on_block_out
      Src: /src/gpac/src/utils/bitstream.c:1158,1
    - Dst: GF_BitStream*::on_block_out
      Src: /src/gpac/src/utils/bitstream.c:1160,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/bitstream.c:1165,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/bitstream.c:1179,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/bitstream.c:1184,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/bitstream.c:1192,1
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:1197,1
    - Dst: write
      Src: /src/gpac/src/utils/bitstream.c:1202,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/utils/bitstream.c:1206,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1217,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 77
    argCount: 3
    argNames:
    - bs
    - data
    - nbBytes
    argTypes:
    - GF_BitStream*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1222
      start: 1131
    functionDepth: 5
    functionLinenumber: 1131
    functionLinenumberEnd: 1222
    functionName: gf_bs_write_data
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 209
    functionsReached:
    - GF_BitStream*::on_block_out
    - gf_assert
    - GF_LOG
    - memcpy
    - gf_bs_write_int
    - bs_flush_write_cache
    - gf_fwrite
    - write
    - gf_bs_is_align
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_write_data(GF_BitStream *bs, const u8 *data, u32 nbBytes)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1231,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1236,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1240
      start: 1225
    functionDepth: 5
    functionLinenumber: 1225
    functionLinenumberEnd: 1240
    functionName: gf_bs_align
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 69
    functionsReached:
    - gf_bs_write_int
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_align(GF_BitStream *bs)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:1268,1
    - Dst: lseek_64
      Src: /src/gpac/src/utils/bitstream.c:1272,1
    - Dst: gf_ftell
      Src: /src/gpac/src/utils/bitstream.c:1277,1
    - Dst: gf_fsize
      Src: /src/gpac/src/utils/bitstream.c:1278,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/bitstream.c:1279,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1282
      start: 1244
    functionDepth: 2
    functionLinenumber: 1244
    functionLinenumberEnd: 1282
    functionName: gf_bs_available
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 101
    functionsReached:
    - gf_fseek
    - bs_flush_write_cache
    - lseek_64
    - gf_fsize
    - gf_ftell
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_available(GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_align
      Src: /src/gpac/src/utils/bitstream.c:1293,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1304
      start: 1288
    functionDepth: 6
    functionLinenumber: 1288
    functionLinenumberEnd: 1304
    functionName: BS_CutBuffer
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - gf_bs_align
    linkageType: ''
    returnType: s32
    signature: s32 BS_CutBuffer(GF_BitStream *bs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_BitStream*::on_block_out
      Src: /src/gpac/src/utils/bitstream.c:1314,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:1320,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/utils/bitstream.c:1329,1
    - Dst: BS_CutBuffer
      Src: /src/gpac/src/utils/bitstream.c:1334,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 4
    argNames:
    - bs
    - output
    - outSize
    - alloc_size
    argTypes:
    - GF_BitStream*
    - u8**
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1345
      start: 1307
    functionDepth: 7
    functionLinenumber: 1307
    functionLinenumberEnd: 1345
    functionName: gf_bs_get_content_no_truncate
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 6
    functionsReached:
    - gf_free
    - GF_BitStream*::on_block_out
    - BS_CutBuffer
    - gf_bs_align
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_get_content_no_truncate(GF_BitStream *bs, u8 **output,
      u32 *outSize, u32 *alloc_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/utils/bitstream.c:1351,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - bs
    - output
    - outSize
    argTypes:
    - GF_BitStream*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1352
      start: 1348
    functionDepth: 8
    functionLinenumber: 1348
    functionLinenumberEnd: 1352
    functionName: gf_bs_get_content
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 138
    functionsReached:
    - gf_bs_get_content_no_truncate
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_get_content(GF_BitStream *bs, u8 **output, u32 *outSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/bitstream.c:1359,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - bs
    - addSize
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1362
      start: 1354
    functionDepth: 0
    functionLinenumber: 1354
    functionLinenumberEnd: 1362
    functionName: gf_bs_grow
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 1
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bs_grow(GF_BitStream *bs, u32 addSize)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_align
      Src: /src/gpac/src/utils/bitstream.c:1374,1
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:1379,1
    - Dst: lseek_64
      Src: /src/gpac/src/utils/bitstream.c:1400,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/bitstream.c:1404,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/utils/bitstream.c:1413,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1427,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 2
    argNames:
    - bs
    - nbBytes
    argTypes:
    - GF_BitStream*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1430
      start: 1369
    functionDepth: 6
    functionLinenumber: 1369
    functionLinenumberEnd: 1430
    functionName: gf_bs_skip_bytes
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 50
    functionsReached:
    - gf_fseek
    - gf_bs_write_int
    - bs_flush_write_cache
    - gf_bs_align
    - lseek_64
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_skip_bytes(GF_BitStream *bs, u64 nbBytes)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_align
      Src: /src/gpac/src/utils/bitstream.c:1442,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/bitstream.c:1443,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1445,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - nbBits
    argTypes:
    - GF_BitStream*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1447
      start: 1434
    functionDepth: 6
    functionLinenumber: 1434
    functionLinenumberEnd: 1447
    functionName: gf_bs_rewind_bits
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 2
    functionsReached:
    - gf_assert
    - gf_bs_read_int
    - gf_bs_align
    linkageType: ''
    returnType: void
    signature: void gf_bs_rewind_bits(GF_BitStream *bs, u64 nbBits)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/bitstream.c:1463,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/bitstream.c:1470,1
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:1485,1
    - Dst: lseek_64
      Src: /src/gpac/src/utils/bitstream.c:1494,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/bitstream.c:1499,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 44
    argCount: 2
    argNames:
    - bs
    - offset
    argTypes:
    - GF_BitStream*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1506
      start: 1452
    functionDepth: 2
    functionLinenumber: 1452
    functionLinenumberEnd: 1506
    functionName: BS_SeekIntern
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - gf_fseek
    - GF_LOG
    - bs_flush_write_cache
    - lseek_64
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BS_SeekIntern(GF_BitStream *bs, u64 offset)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/bitstream.c:1516,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/utils/bitstream.c:1522,1
    - Dst: BS_SeekIntern
      Src: /src/gpac/src/utils/bitstream.c:1523,1
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:1528,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/utils/bitstream.c:1533,1
    - Dst: BS_SeekIntern
      Src: /src/gpac/src/utils/bitstream.c:1534,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - bs
    - offset
    argTypes:
    - GF_BitStream*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1535
      start: 1509
    functionDepth: 6
    functionLinenumber: 1509
    functionLinenumberEnd: 1535
    functionName: gf_bs_seek
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 80
    functionsReached:
    - GF_LOG
    - BS_SeekIntern
    - bs_flush_write_cache
    - gf_bs_align
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_seek(GF_BitStream *bs, u64 offset)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1587,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:1591,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1594,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:1597,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 56
    argCount: 3
    argNames:
    - bs
    - numBits
    - byte_offset
    argTypes:
    - GF_BitStream*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1604
      start: 1538
    functionDepth: 7
    functionLinenumber: 1538
    functionLinenumberEnd: 1604
    functionName: gf_bs_peek_bits
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 15
    functionsReached:
    - gf_bs_read_int
    - gf_bs_seek
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_peek_bits(GF_BitStream *bs, u32 numBits, u64 byte_offset)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:1617,1
    - Dst: gf_fd_fsize
      Src: /src/gpac/src/utils/bitstream.c:1621,1
    - Dst: gf_ftell
      Src: /src/gpac/src/utils/bitstream.c:1627,1
    - Dst: gf_fsize
      Src: /src/gpac/src/utils/bitstream.c:1628,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/bitstream.c:1629,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1633
      start: 1606
    functionDepth: 2
    functionLinenumber: 1606
    functionLinenumberEnd: 1633
    functionName: gf_bs_get_refreshed_size
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 3
    functionsReached:
    - gf_fd_fsize
    - gf_fseek
    - bs_flush_write_cache
    - gf_fsize
    - gf_ftell
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_get_refreshed_size(GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1647
      start: 1635
    functionDepth: 0
    functionLinenumber: 1635
    functionLinenumberEnd: 1647
    functionName: gf_bs_get_size
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 21
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_get_size(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1655
      start: 1649
    functionDepth: 0
    functionLinenumber: 1649
    functionLinenumberEnd: 1655
    functionName: gf_bs_get_position
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 131
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_get_position(GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1663
      start: 1657
    functionDepth: 0
    functionLinenumber: 1657
    functionLinenumberEnd: 1663
    functionName: gf_bs_bits_available
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_bits_available(GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - bs
    - par
    argTypes:
    - GF_BitStream*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1670
      start: 1665
    functionDepth: 0
    functionLinenumber: 1665
    functionLinenumberEnd: 1670
    functionName: gf_bs_set_eos_callback
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_set_eos_callback(GF_BitStream *bs, void (*EndOfStream)(void
      *par), void *par)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1677,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1678,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1681,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1684,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1687,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1690,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1693,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1696,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 24
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1700
      start: 1673
    functionDepth: 5
    functionLinenumber: 1673
    functionLinenumberEnd: 1700
    functionName: gf_bs_read_u64_le
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_read_u64_le(GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1706,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1707,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1710,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1713,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1717
      start: 1702
    functionDepth: 5
    functionLinenumber: 1702
    functionLinenumberEnd: 1717
    functionName: gf_bs_read_u32_le
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 7
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_read_u32_le(GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1723,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1724,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1728
      start: 1719
    functionDepth: 5
    functionLinenumber: 1719
    functionLinenumberEnd: 1728
    functionName: gf_bs_read_u16_le
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 4
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_read_u16_le(GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1733,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1734,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1735,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1736,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1737,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1738,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1739,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1740,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - bs
    - val
    argTypes:
    - GF_BitStream*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1741
      start: 1730
    functionDepth: 5
    functionLinenumber: 1730
    functionLinenumberEnd: 1741
    functionName: gf_bs_write_u64_le
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 1
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_write_u64_le(GF_BitStream *bs, u64 val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1746,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1747,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1748,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1749,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - bs
    - val
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1750
      start: 1743
    functionDepth: 5
    functionLinenumber: 1743
    functionLinenumberEnd: 1750
    functionName: gf_bs_write_u32_le
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 4
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_write_u32_le(GF_BitStream *bs, u32 val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1755,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1756,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - bs
    - val
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1757
      start: 1752
    functionDepth: 5
    functionLinenumber: 1752
    functionLinenumberEnd: 1757
    functionName: gf_bs_write_u16_le
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 3
    functionsReached:
    - gf_bs_write_int
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_write_u16_le(GF_BitStream *bs, u32 val)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1764
      start: 1759
    functionDepth: 0
    functionLinenumber: 1759
    functionLinenumberEnd: 1764
    functionName: gf_bs_get_bit_offset
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_get_bit_offset(GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1770
      start: 1766
    functionDepth: 0
    functionLinenumber: 1766
    functionLinenumberEnd: 1770
    functionName: gf_bs_get_bit_position
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_get_bit_position(GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1776,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1778,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1779
      start: 1772
    functionDepth: 5
    functionLinenumber: 1772
    functionLinenumberEnd: 1779
    functionName: gf_bs_read_vluimsbf5
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 2
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_read_vluimsbf5(GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1786
      start: 1781
    functionDepth: 0
    functionLinenumber: 1781
    functionLinenumberEnd: 1786
    functionName: gf_bs_truncate
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_truncate(GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1791
      start: 1788
    functionDepth: 0
    functionLinenumber: 1788
    functionLinenumberEnd: 1791
    functionName: gf_bs_untruncate
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_bs_untruncate(GF_BitStream *bs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/utils/bitstream.c:1802,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:1810,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/bitstream.c:1816,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:1821,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 3
    argNames:
    - dst
    - src
    - keep_src
    argTypes:
    - GF_BitStream*
    - GF_BitStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1825
      start: 1794
    functionDepth: 9
    functionLinenumber: 1794
    functionLinenumberEnd: 1825
    functionName: gf_bs_transfer
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 3
    functionsReached:
    - gf_free
    - gf_bs_get_content
    - gf_bs_write_data
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_transfer(GF_BitStream *dst, GF_BitStream *src, Bool
      keep_src)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:1834,1
    - Dst: gf_fflush
      Src: /src/gpac/src/utils/bitstream.c:1836,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1837
      start: 1827
    functionDepth: 2
    functionLinenumber: 1827
    functionLinenumberEnd: 1837
    functionName: gf_bs_flush
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 2
    functionsReached:
    - gf_fflush
    - bs_flush_write_cache
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_flush(GF_BitStream *bs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_ftell
      Src: /src/gpac/src/utils/bitstream.c:1854,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:1855,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - stream
    argTypes:
    - GF_BitStream*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1858
      start: 1847
    functionDepth: 7
    functionLinenumber: 1847
    functionLinenumberEnd: 1858
    functionName: gf_bs_reassign
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - gf_bs_seek
    - gf_ftell
    linkageType: ''
    returnType: void
    signature: void gf_bs_reassign(GF_BitStream *bs, FILE *stream)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - bs
    - cookie
    argTypes:
    - GF_BitStream*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1869
      start: 1861
    functionDepth: 0
    functionLinenumber: 1861
    functionLinenumberEnd: 1869
    functionName: gf_bs_set_cookie
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 gf_bs_set_cookie(GF_BitStream *bs, u64 cookie)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1875
      start: 1871
    functionDepth: 0
    functionLinenumber: 1871
    functionLinenumberEnd: 1875
    functionName: gf_bs_get_cookie
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 gf_bs_get_cookie(GF_BitStream *bs)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/bitstream.c:1888,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/bitstream.c:1892,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:1896,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:1904,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/utils/bitstream.c:1905,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:1907,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/bitstream.c:1908,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:1914,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/bitstream.c:1915,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:1918,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:1919,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:1923,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:1924,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 4
    argNames:
    - bs
    - data
    - size
    - offset
    argTypes:
    - GF_BitStream*
    - u8*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1926
      start: 1877
    functionDepth: 7
    functionLinenumber: 1877
    functionLinenumberEnd: 1926
    functionName: gf_bs_insert_data
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_bs_seek
    - gf_bs_write_data
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_insert_data(GF_BitStream *bs, u8 *data, u32 size, u64
      offset)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - bs
    - udta
    argTypes:
    - GF_BitStream*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1935
      start: 1929
    functionDepth: 0
    functionLinenumber: 1929
    functionLinenumberEnd: 1935
    functionName: gf_bs_set_logger
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bs_set_logger(GF_BitStream *bs, void (*on_bs_log)(void *udta,
      const char *field_name, u32 nb_bits, u64 field_val, s32 idx1, s32 idx2, s32
      idx3), void *udta)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/bitstream.c:1940,1
    - Dst: GF_BitStream*::on_log
      Src: /src/gpac/src/utils/bitstream.c:1941,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 7
    argNames:
    - bs
    - nBits
    - fname
    - val
    - idx1
    - idx2
    - idx3
    argTypes:
    - GF_BitStream*
    - u32
    - char*
    - s64
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1942
      start: 1938
    functionDepth: 1
    functionLinenumber: 1938
    functionLinenumberEnd: 1942
    functionName: gf_bs_log_idx
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 5
    functionsReached:
    - GF_BitStream*::on_log
    - gf_assert
    linkageType: ''
    returnType: void
    signature: void gf_bs_log_idx(GF_BitStream *bs, u32 nBits, const char *fname,
      s64 val, s32 idx1, s32 idx2, s32 idx3)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - bs
    - reset
    argTypes:
    - GF_BitStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1949
      start: 1946
    functionDepth: 0
    functionLinenumber: 1946
    functionLinenumberEnd: 1949
    functionName: gf_bs_mark_overflow
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_bs_mark_overflow(GF_BitStream *bs, Bool reset)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1955
      start: 1951
    functionDepth: 0
    functionLinenumber: 1951
    functionLinenumberEnd: 1955
    functionName: gf_bs_is_overflow
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 21
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_is_overflow(GF_BitStream *bs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_is_align
      Src: /src/gpac/src/utils/bitstream.c:1963,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/bitstream.c:1967,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/utils/bitstream.c:1968,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/bitstream.c:1971,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1974
      start: 1958
    functionDepth: 4
    functionLinenumber: 1958
    functionLinenumberEnd: 1974
    functionName: gf_bs_read_utf8
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 5
    functionsReached:
    - gf_bs_available
    - gf_bs_is_align
    - gf_dynstrcat
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_bs_read_utf8(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_is_align
      Src: /src/gpac/src/utils/bitstream.c:1979,1
    - Dst: strlen
      Src: /src/gpac/src/utils/bitstream.c:1982,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/bitstream.c:1984,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/bitstream.c:1985,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - str
    argTypes:
    - GF_BitStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1987
      start: 1976
    functionDepth: 4
    functionLinenumber: 1976
    functionLinenumberEnd: 1987
    functionName: gf_bs_write_utf8
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 3
    functionsReached:
    - gf_bs_write_u8
    - strlen
    - gf_bs_is_align
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bs_write_utf8(GF_BitStream *bs, const char *str)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/configfile.c:56,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/configfile.c:58,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:59,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:60,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:61,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/configfile.c:63,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:65,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:66,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - IniSection*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 67
    functionName: DelSection
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void DelSection(IniSection *ptr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/configfile.c:77,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/configfile.c:79,1
    - Dst: DelSection
      Src: /src/gpac/src/utils/configfile.c:80,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/configfile.c:82,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:85,1
    - Dst: memset
      Src: /src/gpac/src/utils/configfile.c:86,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - iniFile
    argTypes:
    - GF_Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 73
    functionDepth: 3
    functionLinenumber: 73
    functionLinenumberEnd: 87
    functionName: gf_cfg_clear
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - DelSection
    - gf_list_count
    - memset
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_cfg_clear(GF_Config * iniFile)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_clear
      Src: /src/gpac/src/utils/configfile.c:104,1
    - Dst: strstr
      Src: /src/gpac/src/utils/configfile.c:106,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:107,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:113,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:113,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:113,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/configfile.c:114,1
    - Dst: strcat
      Src: /src/gpac/src/utils/configfile.c:115,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:116,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/configfile.c:117,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/configfile.c:119,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:122,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/configfile.c:123,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/configfile.c:124,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/configfile.c:129,1
    - Dst: memset
      Src: /src/gpac/src/utils/configfile.c:130,1
    - Dst: gf_feof
      Src: /src/gpac/src/utils/configfile.c:144,1
    - Dst: gf_fgets
      Src: /src/gpac/src/utils/configfile.c:148,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:149,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/configfile.c:154,1
    - Dst: gf_fgets
      Src: /src/gpac/src/utils/configfile.c:155,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:156,1
    - Dst: strchr
      Src: /src/gpac/src/utils/configfile.c:162,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:165,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:171,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/configfile.c:187,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/configfile.c:188,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:189,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:190,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:191,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:191,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:191,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/configfile.c:192,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:194,1
    - Dst: strchr
      Src: /src/gpac/src/utils/configfile.c:194,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/configfile.c:196,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:197,1
    - Dst: gf_cfg_clear
      Src: /src/gpac/src/utils/configfile.c:198,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/configfile.c:203,1
    - Dst: memset
      Src: /src/gpac/src/utils/configfile.c:204,1
    - Dst: strchr
      Src: /src/gpac/src/utils/configfile.c:205,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:208,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:209,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:210,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:219,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:220,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:220,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:222,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/configfile.c:226,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:231,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:231,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:237,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:238,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/configfile.c:239,1
    - Dst: strcat
      Src: /src/gpac/src/utils/configfile.c:242,1
    - Dst: strcat
      Src: /src/gpac/src/utils/configfile.c:245,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:256,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/configfile.c:257,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 127
    argCount: 3
    argNames:
    - tmp
    - filePath
    - file_name
    argTypes:
    - GF_Config*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 92
    functionDepth: 4
    functionLinenumber: 92
    functionLinenumberEnd: 259
    functionName: gf_cfg_parse_config_file
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 0
    functionsReached:
    - gf_free
    - strcpy
    - memset
    - gf_fopen
    - gf_cfg_clear
    - strchr
    - gf_realloc
    - strcat
    - gf_strdup
    - gf_list_new
    - gf_feof
    - sprintf
    - gf_list_add
    - gf_fgets
    - strstr
    - gf_malloc
    - strlen
    - gf_fclose
    - strcmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_cfg_parse_config_file(GF_Config * tmp, const char * filePath,
      const char * file_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/configfile.c:263,1
    - Dst: memset
      Src: /src/gpac/src/utils/configfile.c:264,1
    - Dst: gf_cfg_parse_config_file
      Src: /src/gpac/src/utils/configfile.c:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - filePath
    - file_name
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 261
    functionDepth: 5
    functionLinenumber: 261
    functionLinenumberEnd: 267
    functionName: gf_cfg_force_new
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 2
    functionsReached:
    - memset
    - gf_cfg_parse_config_file
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_cfg_force_new(const char *filePath, const char* file_name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/configfile.c:273,1
    - Dst: memset
      Src: /src/gpac/src/utils/configfile.c:274,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/configfile.c:276,1
    - Dst: gf_cfg_parse_config_file
      Src: /src/gpac/src/utils/configfile.c:280,1
    - Dst: gf_cfg_clear
      Src: /src/gpac/src/utils/configfile.c:281,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:282,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - filePath
    - file_name
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 270
    functionDepth: 5
    functionLinenumber: 270
    functionLinenumberEnd: 286
    functionName: gf_cfg_new
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 6
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_cfg_parse_config_file
    - memset
    - gf_cfg_clear
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_cfg_new(const char *filePath, const char* file_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - iniFile
    argTypes:
    - GF_Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 294
    functionName: gf_cfg_get_filename
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_cfg_get_filename(GF_Config *iniFile)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/configfile.c:308,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/configfile.c:312,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/configfile.c:314,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/configfile.c:316,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/configfile.c:318,1
    - Dst: strchr
      Src: /src/gpac/src/utils/configfile.c:319,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/configfile.c:320,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/configfile.c:322,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/configfile.c:326,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 1
    argNames:
    - iniFile
    argTypes:
    - GF_Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 296
    functionDepth: 2
    functionLinenumber: 296
    functionLinenumberEnd: 328
    functionName: gf_cfg_save
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 1
    functionsReached:
    - gf_fclose
    - gf_fprintf
    - gf_fopen
    - strnicmp
    - strchr
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cfg_save(GF_Config *iniFile)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - iniFile
    argTypes:
    - GF_Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 330
    functionDepth: 0
    functionLinenumber: 330
    functionLinenumberEnd: 336
    functionName: gf_cfg_discard_changes
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cfg_discard_changes(GF_Config *iniFile)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_save
      Src: /src/gpac/src/utils/configfile.c:342,1
    - Dst: gf_cfg_clear
      Src: /src/gpac/src/utils/configfile.c:343,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:344,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - iniFile
    argTypes:
    - GF_Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 338
    functionDepth: 4
    functionLinenumber: 338
    functionLinenumberEnd: 345
    functionName: gf_cfg_del
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 7
    functionsReached:
    - gf_free
    - gf_cfg_clear
    - gf_cfg_save
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cfg_del(GF_Config *iniFile)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/configfile.c:351,1
    - Dst: gf_cfg_clear
      Src: /src/gpac/src/utils/configfile.c:352,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:353,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - iniFile
    argTypes:
    - GF_Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 348
    functionDepth: 4
    functionLinenumber: 348
    functionLinenumberEnd: 354
    functionName: gf_cfg_remove
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_cfg_clear
    - gf_file_delete
    linkageType: ''
    returnType: void
    signature: void gf_cfg_remove(GF_Config *iniFile)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/configfile.c:364,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:365,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/configfile.c:371,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:372,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 4
    argNames:
    - iniFile
    - secName
    - keyName
    - restricted_only
    argTypes:
    - GF_Config*
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 357
    functionDepth: 2
    functionLinenumber: 357
    functionLinenumberEnd: 379
    functionName: gf_cfg_get_key_internal
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - strcmp
    linkageType: ''
    returnType: char
    signature: char *gf_cfg_get_key_internal(GF_Config *iniFile, const char *secName,
      const char *keyName, Bool restricted_only)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_get_key_internal
      Src: /src/gpac/src/utils/configfile.c:383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - iniFile
    - secName
    - keyName
    argTypes:
    - GF_Config*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 380
    functionDepth: 3
    functionLinenumber: 380
    functionLinenumberEnd: 384
    functionName: gf_cfg_get_key
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 8
    functionsReached:
    - gf_cfg_get_key_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_cfg_get_key(GF_Config *iniFile, const char *secName,
      const char *keyName)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/configfile.c:394,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/configfile.c:395,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/configfile.c:401,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/configfile.c:402,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - iniFile
    - secName
    - keyName
    argTypes:
    - GF_Config*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 387
    functionDepth: 2
    functionLinenumber: 387
    functionLinenumberEnd: 405
    functionName: gf_cfg_get_ikey
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - stricmp
    linkageType: ''
    returnType: char
    signature: char *gf_cfg_get_ikey(GF_Config *iniFile, const char *secName, const
      char *keyName)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/utils/configfile.c:417,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/configfile.c:420,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:421,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/configfile.c:424,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:425,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/configfile.c:426,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/configfile.c:429,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/configfile.c:433,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:434,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/configfile.c:438,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:439,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:440,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/configfile.c:443,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/configfile.c:449,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:450,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:451,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:452,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:459,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:461,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:462,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 57
    argCount: 5
    argNames:
    - iniFile
    - secName
    - keyName
    - keyValue
    - is_restrict
    argTypes:
    - GF_Config*
    - char*
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 408
    functionDepth: 3
    functionLinenumber: 408
    functionLinenumberEnd: 466
    functionName: gf_cfg_set_key_internal
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_list_new
    - strnicmp
    - strcmp
    - gf_list_add
    - gf_list_del_item
    - gf_list_enum
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_cfg_set_key_internal(GF_Config *iniFile, const char *secName,
      const char *keyName, const char *keyValue, Bool is_restrict)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_set_key_internal
      Src: /src/gpac/src/utils/configfile.c:471,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - iniFile
    - secName
    - keyName
    - keyValue
    argTypes:
    - GF_Config*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 468
    functionDepth: 4
    functionLinenumber: 468
    functionLinenumberEnd: 473
    functionName: gf_cfg_set_key
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 12
    functionsReached:
    - gf_cfg_set_key_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cfg_set_key(GF_Config *iniFile, const char *secName, const
      char *keyName, const char *keyValue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/configfile.c:478,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - iniFile
    argTypes:
    - GF_Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 479
      start: 475
    functionDepth: 1
    functionLinenumber: 475
    functionLinenumberEnd: 479
    functionName: gf_cfg_get_section_count
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cfg_get_section_count(GF_Config *iniFile)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/configfile.c:484,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - iniFile
    - secIndex
    argTypes:
    - GF_Config*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 481
    functionDepth: 1
    functionLinenumber: 481
    functionLinenumberEnd: 487
    functionName: gf_cfg_get_section_name
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_cfg_get_section_name(GF_Config *iniFile, u32 secIndex)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/configfile.c:494,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:495,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/configfile.c:495,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - iniFile
    - secName
    argTypes:
    - GF_Config*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 489
    functionDepth: 2
    functionLinenumber: 489
    functionLinenumberEnd: 498
    functionName: gf_cfg_get_key_count
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_list_enum
    - strcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cfg_get_key_count(GF_Config *iniFile, const char *secName)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/configfile.c:505,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:506,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/configfile.c:507,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - iniFile
    - secName
    - keyIndex
    argTypes:
    - GF_Config*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 512
      start: 500
    functionDepth: 2
    functionLinenumber: 500
    functionLinenumberEnd: 512
    functionName: gf_cfg_get_key_name
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 3
    functionsReached:
    - gf_list_enum
    - strcmp
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_cfg_get_key_name(GF_Config *iniFile, const char *secName,
      u32 keyIndex)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/configfile.c:522,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:523,1
    - Dst: DelSection
      Src: /src/gpac/src/utils/configfile.c:524,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/configfile.c:525,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - iniFile
    - secName
    argTypes:
    - GF_Config*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 514
    functionDepth: 3
    functionLinenumber: 514
    functionLinenumberEnd: 530
    functionName: gf_cfg_del_section
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 5
    functionsReached:
    - gf_list_enum
    - strcmp
    - DelSection
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cfg_del_section(GF_Config *iniFile, const char *secName)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/configfile.c:542,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:543,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/configfile.c:548,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:549,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/configfile.c:552,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:553,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:554,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/utils/configfile.c:555,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 5
    argNames:
    - iniFile
    - secName
    - keyName
    - keyValue
    - index
    argTypes:
    - GF_Config*
    - char*
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 533
    functionDepth: 2
    functionLinenumber: 533
    functionLinenumberEnd: 558
    functionName: gf_cfg_insert_key
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_strdup
    - strcmp
    - gf_list_enum
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_cfg_insert_key(GF_Config *iniFile, const char *secName, const
      char *keyName, const char *keyValue, u32 index)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:569,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/configfile.c:569,1
    - Dst: strtok
      Src: /src/gpac/src/utils/configfile.c:575,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:578,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:579,1
    - Dst: strtok
      Src: /src/gpac/src/utils/configfile.c:583,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:585,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 4
    argNames:
    - iniFile
    - secName
    - keyName
    - sub_index
    argTypes:
    - GF_Config*
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 562
    functionDepth: 4
    functionLinenumber: 562
    functionLinenumberEnd: 587
    functionName: gf_cfg_get_sub_key
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_cfg_get_key
    - strtok
    linkageType: ''
    returnType: char
    signature: char *gf_cfg_get_sub_key(GF_Config *iniFile, const char *secName, const
      char *keyName, u32 sub_index)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:593,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:594,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - iniFile
    - fileName
    argTypes:
    - GF_Config*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 596
      start: 590
    functionDepth: 0
    functionLinenumber: 590
    functionLinenumberEnd: 596
    functionName: gf_cfg_set_filename
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_cfg_set_filename(GF_Config *iniFile, const char * fileName)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/path2d.c:35,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 39
    functionName: gf_path_new
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 19
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_path_new()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:47,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:48,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:49,1
    - Dst: memset
      Src: /src/gpac/src/utils/path2d.c:52,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - gp
    argTypes:
    - GF_Path*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 55
    functionName: gf_path_reset
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 14
    functionsReached:
    - gf_free
    - memset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_reset(GF_Path *gp)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/path2d.c:61,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/path2d.c:63,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:65,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/path2d.c:68,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:70,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:71,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/path2d.c:74,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:76,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:77,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:78,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/path2d.c:81,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/path2d.c:83,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/path2d.c:84,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 31
    argCount: 1
    argNames:
    - gp
    argTypes:
    - GF_Path*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 90
    functionName: gf_path_clone
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memcpy
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_path_clone(GF_Path *gp)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:96,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:97,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:98,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:99,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - gp
    argTypes:
    - GF_Path*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 100
    functionName: gf_path_del
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 28
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_del(GF_Path *gp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _gp
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 109
    functionName: GF_2D_REALLOC
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GF_2D_REALLOC(_gp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/path2d.c:124,1
    - Dst: GF_2D_REALLOC
      Src: /src/gpac/src/utils/path2d.c:125,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - gp
    - x
    - y
    argTypes:
    - GF_Path*
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 137
    functionName: gf_path_add_move_to
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 25
    functionsReached:
    - GF_2D_REALLOC
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_add_move_to(GF_Path *gp, Fixed x, Fixed y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/utils/path2d.c:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - gp
    - pt
    argTypes:
    - GF_Path*
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 139
    functionDepth: 2
    functionLinenumber: 139
    functionLinenumberEnd: 142
    functionName: gf_path_add_move_to_vec
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 2
    functionsReached:
    - gf_path_add_move_to
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_add_move_to_vec(GF_Path *gp, GF_Point2D *pt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_2D_REALLOC
      Src: /src/gpac/src/utils/path2d.c:150,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - gp
    - x
    - y
    argTypes:
    - GF_Path*
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 159
    functionName: gf_path_add_line_to
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 25
    functionsReached:
    - GF_2D_REALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_add_line_to(GF_Path *gp, Fixed x, Fixed y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/utils/path2d.c:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - gp
    - pt
    argTypes:
    - GF_Path*
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 161
    functionDepth: 2
    functionLinenumber: 161
    functionLinenumberEnd: 164
    functionName: gf_path_add_line_to_vec
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 2
    functionsReached:
    - gf_path_add_line_to
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_add_line_to_vec(GF_Path *gp, GF_Point2D *pt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d.c:177,1
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d.c:177,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/utils/path2d.c:178,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 1
    argNames:
    - gp
    argTypes:
    - GF_Path*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 166
    functionDepth: 2
    functionLinenumber: 166
    functionLinenumberEnd: 183
    functionName: gf_path_close
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 22
    functionsReached:
    - gf_path_add_line_to
    - ABS
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_close(GF_Path *gp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_2D_REALLOC
      Src: /src/gpac/src/utils/path2d.c:189,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 7
    argNames:
    - gp
    - c1_x
    - c1_y
    - c2_x
    - c2_y
    - x
    - y
    argTypes:
    - GF_Path*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 207
    functionName: gf_path_add_cubic_to
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 6
    functionsReached:
    - GF_2D_REALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_add_cubic_to(GF_Path *gp, Fixed c1_x, Fixed c1_y,
      Fixed c2_x, Fixed c2_y, Fixed x, Fixed y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_add_cubic_to
      Src: /src/gpac/src/utils/path2d.c:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - gp
    - c1
    - c2
    - pt
    argTypes:
    - GF_Path*
    - GF_Point2D*
    - GF_Point2D*
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 209
    functionDepth: 2
    functionLinenumber: 209
    functionLinenumberEnd: 213
    functionName: gf_path_add_cubic_to_vec
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 1
    functionsReached:
    - gf_path_add_cubic_to
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_add_cubic_to_vec(GF_Path *gp, GF_Point2D *c1, GF_Point2D
      *c2, GF_Point2D *pt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_2D_REALLOC
      Src: /src/gpac/src/utils/path2d.c:220,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 5
    argNames:
    - gp
    - c_x
    - c_y
    - x
    - y
    argTypes:
    - GF_Path*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 234
    functionName: gf_path_add_quadratic_to
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 6
    functionsReached:
    - GF_2D_REALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_add_quadratic_to(GF_Path *gp, Fixed c_x, Fixed c_y,
      Fixed x, Fixed y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_add_quadratic_to
      Src: /src/gpac/src/utils/path2d.c:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - gp
    - c
    - pt
    argTypes:
    - GF_Path*
    - GF_Point2D*
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 235
    functionDepth: 2
    functionLinenumber: 235
    functionLinenumberEnd: 239
    functionName: gf_path_add_quadratic_to_vec
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 1
    functionsReached:
    - gf_path_add_quadratic_to
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_add_quadratic_to_vec(GF_Path *gp, GF_Point2D *c,
      GF_Point2D *pt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/utils/path2d.c:245,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/utils/path2d.c:247,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/utils/path2d.c:249,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/utils/path2d.c:251,1
    - Dst: gf_path_close
      Src: /src/gpac/src/utils/path2d.c:253,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 5
    argNames:
    - gp
    - cx
    - cy
    - w
    - h
    argTypes:
    - GF_Path*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 242
    functionDepth: 3
    functionLinenumber: 242
    functionLinenumberEnd: 254
    functionName: gf_path_add_rect_center
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 10
    functionsReached:
    - gf_path_add_line_to
    - gf_path_close
    - gf_path_add_move_to
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_add_rect_center(GF_Path *gp, Fixed cx, Fixed cy,
      Fixed w, Fixed h)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/utils/path2d.c:259,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/utils/path2d.c:261,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/utils/path2d.c:263,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/utils/path2d.c:265,1
    - Dst: gf_path_close
      Src: /src/gpac/src/utils/path2d.c:267,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 5
    argNames:
    - gp
    - ox
    - oy
    - w
    - h
    argTypes:
    - GF_Path*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 256
    functionDepth: 3
    functionLinenumber: 256
    functionLinenumberEnd: 268
    functionName: gf_path_add_rect
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 4
    functionsReached:
    - gf_path_add_line_to
    - gf_path_close
    - gf_path_add_move_to
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_add_rect(GF_Path *gp, Fixed ox, Fixed oy, Fixed w,
      Fixed h)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/utils/path2d.c:280,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:284,1
    - Dst: gf_cos
      Src: /src/gpac/src/utils/path2d.c:284,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:285,1
    - Dst: gf_sin
      Src: /src/gpac/src/utils/path2d.c:285,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/utils/path2d.c:286,1
    - Dst: gf_path_close
      Src: /src/gpac/src/utils/path2d.c:289,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 5
    argNames:
    - gp
    - cx
    - cy
    - a_axis
    - b_axis
    argTypes:
    - GF_Path*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 272
    functionDepth: 3
    functionLinenumber: 272
    functionLinenumberEnd: 290
    functionName: gf_path_add_ellipse
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 5
    functionsReached:
    - gf_sin
    - gf_path_add_move_to
    - gf_path_add_line_to
    - gf_path_close
    - gf_mulfix
    - gf_cos
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_add_ellipse(GF_Path *gp, Fixed cx, Fixed cy, Fixed
      a_axis, Fixed b_axis)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/path2d.c:296,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/path2d.c:303,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/path2d.c:305,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/path2d.c:308,1
    - Dst: gf_mx2d_apply_coords
      Src: /src/gpac/src/utils/path2d.c:311,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/path2d.c:314,1
    - Dst: gf_rect_union
      Src: /src/gpac/src/utils/path2d.c:317,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 33
    argCount: 3
    argNames:
    - gp
    - src
    - mx
    argTypes:
    - GF_Path*
    - GF_Path*
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 292
    functionDepth: 1
    functionLinenumber: 292
    functionLinenumberEnd: 321
    functionName: gf_path_add_subpath
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 1
    functionsReached:
    - gf_rect_union
    - memcpy
    - gf_mx2d_apply_coords
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_path_add_subpath(GF_Path *gp, GF_Path *src, GF_Matrix2D *mx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/gpac/src/utils/path2d.c:331,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:351,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/utils/path2d.c:351,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:352,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/utils/path2d.c:352,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 4
    argNames:
    - pts
    - n
    - mu
    - pt_out
    argTypes:
    - GF_Point2D*
    - s32
    - Double
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 324
    functionDepth: 1
    functionLinenumber: 324
    functionLinenumberEnd: 354
    functionName: NBezier
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - pow
    - gf_mulfix
    linkageType: ''
    returnType: void
    signature: void NBezier(GF_Point2D *pts, s32 n, Double mu, GF_Point2D *pt_out)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FIX2INT
      Src: /src/gpac/src/utils/path2d.c:361,1
    - Dst: NBezier
      Src: /src/gpac/src/utils/path2d.c:365,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/utils/path2d.c:366,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/utils/path2d.c:368,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - gp
    - newpts
    - nbPoints
    argTypes:
    - GF_Path*
    - GF_Point2D*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 356
    functionDepth: 2
    functionLinenumber: 356
    functionLinenumberEnd: 369
    functionName: gf_add_n_bezier
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 0
    functionsReached:
    - FIX2INT
    - gf_path_add_line_to
    - NBezier
    linkageType: ''
    returnType: void
    signature: void gf_add_n_bezier(GF_Path *gp, GF_Point2D *newpts, u32 nbPoints)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/path2d.c:377,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/path2d.c:379,1
    - Dst: gf_add_n_bezier
      Src: /src/gpac/src/utils/path2d.c:381,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:383,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - gp
    - pts
    - nbPoints
    argTypes:
    - GF_Path*
    - GF_Point2D*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 371
    functionDepth: 3
    functionLinenumber: 371
    functionLinenumberEnd: 385
    functionName: gf_path_add_bezier
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 1
    functionsReached:
    - gf_free
    - memcpy
    - gf_add_n_bezier
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_add_bezier(GF_Path *gp, GF_Point2D *pts, u32 nbPoints)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_atan2
      Src: /src/gpac/src/utils/path2d.c:402,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/utils/path2d.c:403,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/utils/path2d.c:404,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/utils/path2d.c:405,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/utils/path2d.c:407,1
    - Dst: gf_mx2d_inverse
      Src: /src/gpac/src/utils/path2d.c:408,1
    - Dst: gf_mx2d_apply_coords
      Src: /src/gpac/src/utils/path2d.c:409,1
    - Dst: gf_mx2d_apply_coords
      Src: /src/gpac/src/utils/path2d.c:410,1
    - Dst: gf_mx2d_apply_coords
      Src: /src/gpac/src/utils/path2d.c:411,1
    - Dst: gf_mx2d_apply_coords
      Src: /src/gpac/src/utils/path2d.c:412,1
    - Dst: gf_atan2
      Src: /src/gpac/src/utils/path2d.c:415,1
    - Dst: gf_atan2
      Src: /src/gpac/src/utils/path2d.c:416,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:417,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:417,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/utils/path2d.c:418,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:419,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:419,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/utils/path2d.c:420,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/utils/path2d.c:422,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:422,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:422,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:433,1
    - Dst: gf_cos
      Src: /src/gpac/src/utils/path2d.c:433,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:434,1
    - Dst: gf_sin
      Src: /src/gpac/src/utils/path2d.c:434,1
    - Dst: gf_mx2d_apply_coords
      Src: /src/gpac/src/utils/path2d.c:436,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/utils/path2d.c:437,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 42
    argCount: 8
    argNames:
    - gp
    - end_x
    - end_y
    - fa_x
    - fa_y
    - fb_x
    - fb_y
    - cw
    argTypes:
    - GF_Path*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 387
    functionDepth: 2
    functionLinenumber: 387
    functionLinenumberEnd: 440
    functionName: gf_path_add_arc_to
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 1
    functionsReached:
    - gf_mx2d_add_translation
    - gf_sin
    - gf_mx2d_apply_coords
    - gf_mx2d_init
    - gf_atan2
    - gf_mx2d_inverse
    - gf_path_add_line_to
    - gf_mulfix
    - gf_mx2d_copy
    - gf_mx2d_add_rotation
    - gf_cos
    - gf_sqrt
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_add_arc_to(GF_Path *gp, Fixed end_x, Fixed end_y,
      Fixed fa_x, Fixed fa_y, Fixed fb_x, Fixed fb_y, Bool cw)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/utils/path2d.c:466,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:476,1
    - Dst: gf_cos
      Src: /src/gpac/src/utils/path2d.c:477,1
    - Dst: gf_sin
      Src: /src/gpac/src/utils/path2d.c:478,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/utils/path2d.c:482,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:486,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:486,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:487,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:487,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:488,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:489,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:491,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:492,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/path2d.c:493,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:495,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:495,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:497,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/utils/path2d.c:497,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:498,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/utils/path2d.c:498,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:499,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:500,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:507,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:507,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:510,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:511,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:511,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:511,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:520,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:522,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:525,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:525,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:527,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/utils/path2d.c:531,1
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d.c:531,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:533,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:533,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:533,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:534,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:534,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:534,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:538,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:538,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:539,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:539,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:541,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:542,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/utils/path2d.c:543,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:543,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:543,1
    - Dst: gf_acos
      Src: /src/gpac/src/utils/path2d.c:546,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:546,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:552,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:553,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/utils/path2d.c:554,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:554,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:554,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:556,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:556,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:557,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:557,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:557,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:557,1
    - Dst: MAX
      Src: /src/gpac/src/utils/path2d.c:559,1
    - Dst: MIN
      Src: /src/gpac/src/utils/path2d.c:559,1
    - Dst: gf_acos
      Src: /src/gpac/src/utils/path2d.c:560,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:573,1
    - Dst: gf_cos
      Src: /src/gpac/src/utils/path2d.c:573,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:574,1
    - Dst: gf_sin
      Src: /src/gpac/src/utils/path2d.c:574,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:575,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:575,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:576,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:576,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/utils/path2d.c:577,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 92
    argCount: 8
    argNames:
    - gp
    - end_x
    - end_y
    - r_x
    - r_y
    - x_axis_rotation
    - large_arc_flag
    - sweep_flag
    argTypes:
    - GF_Path*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 444
    functionDepth: 2
    functionLinenumber: 444
    functionLinenumberEnd: 580
    functionName: gf_path_add_svg_arc_to
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 1
    functionsReached:
    - gf_assert
    - gf_sin
    - ABS
    - gf_divfix
    - MIN
    - gf_acos
    - MAX
    - gf_path_add_line_to
    - gf_mulfix
    - gf_cos
    - gf_sqrt
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_add_svg_arc_to(GF_Path *gp, Fixed end_x, Fixed end_y,
      Fixed r_x, Fixed r_y, Fixed x_axis_rotation, Bool large_arc_flag, Bool sweep_flag)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/utils/path2d.c:595,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:605,1
    - Dst: gf_cos
      Src: /src/gpac/src/utils/path2d.c:605,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:606,1
    - Dst: gf_sin
      Src: /src/gpac/src/utils/path2d.c:606,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/utils/path2d.c:608,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/utils/path2d.c:611,1
    - Dst: gf_path_close
      Src: /src/gpac/src/utils/path2d.c:616,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 5
    argNames:
    - gp
    - radius
    - start_angle
    - end_angle
    - close_type
    argTypes:
    - GF_Path*
    - Fixed
    - Fixed
    - Fixed
    - GF_Path2DArcCloseType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 618
      start: 582
    functionDepth: 3
    functionLinenumber: 582
    functionLinenumberEnd: 618
    functionName: gf_path_add_arc
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 1
    functionsReached:
    - gf_sin
    - gf_path_add_move_to
    - gf_path_add_line_to
    - gf_path_close
    - gf_mulfix
    - gf_cos
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_add_arc(GF_Path *gp, Fixed radius, Fixed start_angle,
      Fixed end_angle, GF_Path2DArcCloseType close_type)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 37
    argCount: 2
    argNames:
    - gp
    - rc
    argTypes:
    - GF_Path*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 663
      start: 621
    functionDepth: 0
    functionLinenumber: 621
    functionLinenumberEnd: 663
    functionName: gf_path_get_control_bounds
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_get_control_bounds(GF_Path *gp, GF_Rect *rc)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/path2d.c:688,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 24
    argCount: 5
    argNames:
    - y1
    - y2
    - y3
    - min
    - max
    argTypes:
    - Fixed
    - Fixed
    - Fixed
    - Fixed*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 693
      start: 671
    functionDepth: 0
    functionLinenumber: 671
    functionLinenumberEnd: 693
    functionName: gf_conic_check
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 0
    functionsReached:
    - gf_muldiv
    linkageType: ''
    returnType: void
    signature: void gf_conic_check(Fixed y1, Fixed y2, Fixed y3, Fixed *min, Fixed
      *max)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d.c:719,1
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d.c:720,1
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d.c:721,1
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d.c:722,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 54
    argCount: 6
    argNames:
    - p1
    - p2
    - p3
    - p4
    - min
    - max
    argTypes:
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 760
      start: 704
    functionDepth: 1
    functionLinenumber: 704
    functionLinenumberEnd: 760
    functionName: gf_cubic_check
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 0
    functionsReached:
    - ABS
    linkageType: ''
    returnType: void
    signature: void gf_cubic_check(Fixed p1, Fixed p2, Fixed p3, Fixed p4, Fixed *min,
      Fixed *max)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_get_control_bounds
      Src: /src/gpac/src/utils/path2d.c:779,1
    - Dst: gf_conic_check
      Src: /src/gpac/src/utils/path2d.c:830,1
    - Dst: gf_conic_check
      Src: /src/gpac/src/utils/path2d.c:833,1
    - Dst: gf_cubic_check
      Src: /src/gpac/src/utils/path2d.c:845,1
    - Dst: gf_cubic_check
      Src: /src/gpac/src/utils/path2d.c:848,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 85
    argCount: 2
    argNames:
    - gp
    - rc
    argTypes:
    - GF_Path*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 863
      start: 763
    functionDepth: 2
    functionLinenumber: 763
    functionLinenumberEnd: 863
    functionName: gf_path_get_bounds
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 31
    functionsReached:
    - gf_cubic_check
    - gf_conic_check
    - gf_path_get_control_bounds
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_get_bounds(GF_Path *gp, GF_Rect *rc)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_v2d_len
      Src: /src/gpac/src/utils/path2d.c:878,1
    - Dst: gf_v2d_len
      Src: /src/gpac/src/utils/path2d.c:882,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:888,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:890,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:890,1
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d.c:891,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:894,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:894,1
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d.c:895,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:898,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:898,1
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d.c:899,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:902,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:902,1
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d.c:903,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:906,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:909,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/utils/path2d.c:914,1
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d.c:928,1
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d.c:928,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/utils/path2d.c:929,1
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d.c:930,1
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d.c:930,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/utils/path2d.c:931,1
    - Dst: gf_subdivide_cubic
      Src: /src/gpac/src/utils/path2d.c:933,1
    - Dst: gf_subdivide_cubic
      Src: /src/gpac/src/utils/path2d.c:935,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 56
    argCount: 10
    argNames:
    - gp
    - x0
    - y0
    - x1
    - y1
    - x2
    - y2
    - x3
    - y3
    - fineness
    argTypes:
    - GF_Path*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 936
      start: 866
    functionDepth: 2
    functionLinenumber: 866
    functionLinenumberEnd: 936
    functionName: gf_subdivide_cubic
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 1
    functionsReached:
    - gf_v2d_len
    - ABS
    - gf_subdivide_cubic
    - gf_divfix
    - gf_path_add_line_to
    - gf_mulfix
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_subdivide_cubic(GF_Path *gp, Fixed x0, Fixed y0, Fixed x1,
      Fixed y1, Fixed x2, Fixed y2, Fixed x3, Fixed y3, Fixed fineness)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_clone
      Src: /src/gpac/src/utils/path2d.c:947,1
    - Dst: MAX
      Src: /src/gpac/src/utils/path2d.c:950,1
    - Dst: gf_path_new
      Src: /src/gpac/src/utils/path2d.c:952,1
    - Dst: gf_path_add_move_to_vec
      Src: /src/gpac/src/utils/path2d.c:954,1
    - Dst: gf_path_add_move_to_vec
      Src: /src/gpac/src/utils/path2d.c:962,1
    - Dst: gf_path_add_line_to_vec
      Src: /src/gpac/src/utils/path2d.c:965,1
    - Dst: gf_path_close
      Src: /src/gpac/src/utils/path2d.c:967,1
    - Dst: gf_subdivide_cubic
      Src: /src/gpac/src/utils/path2d.c:980,1
    - Dst: gf_path_close
      Src: /src/gpac/src/utils/path2d.c:982,1
    - Dst: gf_subdivide_cubic
      Src: /src/gpac/src/utils/path2d.c:987,1
    - Dst: gf_path_close
      Src: /src/gpac/src/utils/path2d.c:989,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 52
    argCount: 1
    argNames:
    - gp
    argTypes:
    - GF_Path*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 997
      start: 938
    functionDepth: 3
    functionLinenumber: 938
    functionLinenumberEnd: 997
    functionName: gf_path_get_flatten
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 0
    functionsReached:
    - gf_path_clone
    - gf_path_new
    - gf_subdivide_cubic
    - MAX
    - gf_path_close
    - gf_path_add_line_to_vec
    - gf_path_add_move_to_vec
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_path_get_flatten(GF_Path *gp)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_get_flatten
      Src: /src/gpac/src/utils/path2d.c:1006,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:1007,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:1008,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:1009,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/path2d.c:1010,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:1012,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - gp
    argTypes:
    - GF_Path*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1013
      start: 999
    functionDepth: 4
    functionLinenumber: 999
    functionLinenumberEnd: 1013
    functionName: gf_path_flatten
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 6
    functionsReached:
    - gf_free
    - gf_path_get_flatten
    - memcpy
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_flatten(GF_Path *gp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - P0
    - ','
    - P1
    - ','
    - P2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1019
      start: 1017
    functionDepth: 0
    functionLinenumber: 1017
    functionLinenumberEnd: 1019
    functionName: isLeft
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: isLeft(P0, P1, P2)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: MIN
      Src: /src/gpac/src/utils/path2d.c:1027,1
    - Dst: MIN
      Src: /src/gpac/src/utils/path2d.c:1027,1
    - Dst: MIN
      Src: /src/gpac/src/utils/path2d.c:1027,1
    - Dst: MAX
      Src: /src/gpac/src/utils/path2d.c:1028,1
    - Dst: MAX
      Src: /src/gpac/src/utils/path2d.c:1028,1
    - Dst: MAX
      Src: /src/gpac/src/utils/path2d.c:1028,1
    - Dst: gf_subdivide_cubic_hit_test
      Src: /src/gpac/src/utils/path2d.c:1044,1
    - Dst: gf_subdivide_cubic_hit_test
      Src: /src/gpac/src/utils/path2d.c:1045,1
    - Dst: isLeft
      Src: /src/gpac/src/utils/path2d.c:1058,1
    - Dst: isLeft
      Src: /src/gpac/src/utils/path2d.c:1063,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 36
    argCount: 11
    argNames:
    - h_x
    - h_y
    - x0
    - y0
    - x1
    - y1
    - x2
    - y2
    - x3
    - y3
    - wn
    argTypes:
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1066
      start: 1021
    functionDepth: 1
    functionLinenumber: 1021
    functionLinenumberEnd: 1066
    functionName: gf_subdivide_cubic_hit_test
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 1
    functionsReached:
    - gf_subdivide_cubic_hit_test
    - MAX
    - isLeft
    - MIN
    linkageType: ''
    returnType: void
    signature: void gf_subdivide_cubic_hit_test(Fixed h_x, Fixed h_y, Fixed x0, Fixed
      y0, Fixed x1, Fixed y1, Fixed x2, Fixed y2, Fixed x3, Fixed y3, s32 *wn)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/utils/path2d.c:1078,1
    - Dst: isLeft
      Src: /src/gpac/src/utils/path2d.c:1097,1
    - Dst: isLeft
      Src: /src/gpac/src/utils/path2d.c:1101,1
    - Dst: gf_subdivide_cubic_hit_test
      Src: /src/gpac/src/utils/path2d.c:1115,1
    - Dst: gf_subdivide_cubic_hit_test
      Src: /src/gpac/src/utils/path2d.c:1121,1
    - Dst: isLeft
      Src: /src/gpac/src/utils/path2d.c:1134,1
    - Dst: isLeft
      Src: /src/gpac/src/utils/path2d.c:1138,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 74
    argCount: 3
    argNames:
    - gp
    - x
    - y
    argTypes:
    - GF_Path*
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1149
      start: 1068
    functionDepth: 3
    functionLinenumber: 1068
    functionLinenumberEnd: 1149
    functionName: gf_path_point_over
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 4
    functionsReached:
    - gf_subdivide_cubic_hit_test
    - isLeft
    - gf_path_get_bounds
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_point_over(GF_Path *gp, Fixed x, Fixed y)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - gp
    argTypes:
    - GF_Path*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1156
      start: 1151
    functionDepth: 0
    functionLinenumber: 1151
    functionLinenumberEnd: 1156
    functionName: gf_path_is_empty
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_is_empty(GF_Path *gp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/path2d.c:1181,1
    - Dst: gf_path_get_flatten
      Src: /src/gpac/src/utils/path2d.c:1183,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:1185,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/path2d.c:1188,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/utils/path2d.c:1202,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:1202,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:1202,1
    - Dst: gf_path_del
      Src: /src/gpac/src/utils/path2d.c:1209,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1211
      start: 1173
    functionDepth: 4
    functionLinenumber: 1173
    functionLinenumberEnd: 1211
    functionName: GF_PathIterator *gf_path_iterator_new(GF_Path *gp)
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - gf_path_del
    - gf_path_get_flatten
    - gf_mulfix
    - gf_malloc
    - gf_sqrt
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_PathIterator *gf_path_iterator_new(GF_Path *gp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - it
    argTypes:
    - GF_PathIterator*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1217
      start: 1213
    functionDepth: 0
    functionLinenumber: 1213
    functionLinenumberEnd: 1217
    functionName: gf_path_iterator_get_length
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_iterator_get_length(GF_PathIterator *it)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/utils/path2d.c:1238,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:1240,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/utils/path2d.c:1244,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:1244,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:1244,1
    - Dst: gf_acos
      Src: /src/gpac/src/utils/path2d.c:1249,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:1249,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:1255,1
    - Dst: gf_acos
      Src: /src/gpac/src/utils/path2d.c:1260,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:1260,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:1265,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:1265,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:1267,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d.c:1267,1
    - Dst: gf_acos
      Src: /src/gpac/src/utils/path2d.c:1278,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d.c:1278,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/utils/path2d.c:1285,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/utils/path2d.c:1286,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/utils/path2d.c:1287,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/utils/path2d.c:1288,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 62
    argCount: 6
    argNames:
    - path
    - offset
    - follow_tangent
    - mat
    - smooth_edges
    - length_after_point
    argTypes:
    - GF_PathIterator*
    - Fixed
    - Bool
    - GF_Matrix2D*
    - Bool
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1290
      start: 1219
    functionDepth: 1
    functionLinenumber: 1219
    functionLinenumberEnd: 1290
    functionName: gf_path_iterator_get_transform
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 2
    functionsReached:
    - gf_mx2d_add_matrix
    - gf_mx2d_add_translation
    - gf_mx2d_add_rotation
    - gf_divfix
    - gf_mx2d_init
    - gf_acos
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_iterator_get_transform(GF_PathIterator *path, Fixed
      offset, Bool follow_tangent, GF_Matrix2D *mat, Bool smooth_edges, Fixed length_after_point)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:1295,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d.c:1296,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - it
    argTypes:
    - GF_PathIterator*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1297
      start: 1292
    functionDepth: 0
    functionLinenumber: 1292
    functionLinenumberEnd: 1297
    functionName: gf_path_iterator_del
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 3
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_path_iterator_del(GF_PathIterator *it)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - delta
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1306
      start: 1300
    functionDepth: 0
    functionLinenumber: 1300
    functionLinenumberEnd: 1306
    functionName: ConvexCompare
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ConvexCompare(delta)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - delta
    - ','
    - pprev
    - ','
    - pcur
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1314
      start: 1307
    functionDepth: 0
    functionLinenumber: 1307
    functionLinenumberEnd: 1314
    functionName: ConvexGetPointDelta
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ConvexGetPointDelta(delta, pprev, pcur )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - p
    - ','
    - q
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1315
      start: 1314
    functionDepth: 0
    functionLinenumber: 1314
    functionLinenumberEnd: 1315
    functionName: ConvexCross
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ConvexCross(p, q)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ConvexGetPointDelta
      Src: /src/gpac/src/utils/path2d.c:1347,1
    - Dst: ConvexCompare
      Src: /src/gpac/src/utils/path2d.c:1350,1
    - Dst: ConvexGetPointDelta
      Src: /src/gpac/src/utils/path2d.c:1353,1
    - Dst: ConvexCompare
      Src: /src/gpac/src/utils/path2d.c:1364,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 2
    argNames:
    - pts
    - len
    argTypes:
    - GF_Point2D*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1378
      start: 1335
    functionDepth: 1
    functionLinenumber: 1335
    functionLinenumberEnd: 1378
    functionName: gf_polygone2d_get_convexity
    functionSourceFile: /src/gpac/src/utils/path2d.c
    functionUses: 2
    functionsReached:
    - ConvexGetPointDelta
    - ConvexCompare
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_polygone2d_get_convexity(GF_Point2D *pts, u32 len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - err
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 61
    functionName: ERR_MSG
    functionSourceFile: /src/gpac/src/utils/zutil.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ERR_MSG(err)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - strm
    - ','
    - err
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: ERR_RETURN
    functionSourceFile: /src/gpac/src/utils/zutil.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ERR_RETURN(strm,err)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - name
    - ','
    - mode
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: F_OPEN
    functionSourceFile: /src/gpac/src/utils/zutil.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: F_OPEN(name, mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - fd
    - ','
    - mode
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 156
    functionName: fdopen
    functionSourceFile: /src/gpac/src/utils/zutil.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: fdopen(fd,mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - fd
    - ','
    - mode
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 161
    functionName: fdopen
    functionSourceFile: /src/gpac/src/utils/zutil.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: fdopen(fd,mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - fd
    - ','
    - type
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 167
    functionName: fdopen
    functionSourceFile: /src/gpac/src/utils/zutil.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: fdopen(fd,type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - name
    - ','
    - mode
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 178
    functionName: F_OPEN
    functionSourceFile: /src/gpac/src/utils/zutil.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: F_OPEN(name, mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - dest
    - ','
    - len
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 233
    functionName: zmemzero
    functionSourceFile: /src/gpac/src/utils/zutil.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: zmemzero(dest, len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - dest
    - ','
    - len
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 237
    functionName: zmemzero
    functionSourceFile: /src/gpac/src/utils/zutil.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: zmemzero(dest, len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - cond
    - ','
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 250
    functionName: Assert
    functionSourceFile: /src/gpac/src/utils/zutil.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: Assert(cond,msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 251
    functionName: Trace
    functionSourceFile: /src/gpac/src/utils/zutil.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: Trace(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 252
    functionName: Tracev
    functionSourceFile: /src/gpac/src/utils/zutil.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: Tracev(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 253
    functionName: Tracevv
    functionSourceFile: /src/gpac/src/utils/zutil.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: Tracevv(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - c
    - ','
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 254
    functionName: Tracec
    functionSourceFile: /src/gpac/src/utils/zutil.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: Tracec(c,x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - c
    - ','
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 255
    functionName: Tracecv
    functionSourceFile: /src/gpac/src/utils/zutil.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: Tracecv(c,x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - strm
    - ','
    - items
    - ','
    - size
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 270
    functionName: ZALLOC
    functionSourceFile: /src/gpac/src/utils/zutil.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZALLOC(strm, items, size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - strm
    - ','
    - addr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 271
    functionName: ZFREE
    functionSourceFile: /src/gpac/src/utils/zutil.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZFREE(strm, addr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - s
    - ','
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 272
    functionName: TRY_FREE
    functionSourceFile: /src/gpac/src/utils/zutil.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRY_FREE(s, p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LOAD_PLUGIN
      Src: /src/gpac/src/utils/module.c:50,1
    - Dst: LOAD_PLUGIN
      Src: /src/gpac/src/utils/module.c:54,1
    - Dst: LOAD_PLUGIN
      Src: /src/gpac/src/utils/module.c:57,1
    - Dst: LOAD_PLUGIN
      Src: /src/gpac/src/utils/module.c:61,1
    - Dst: LOAD_PLUGIN
      Src: /src/gpac/src/utils/module.c:65,1
    - Dst: LOAD_PLUGIN
      Src: /src/gpac/src/utils/module.c:69,1
    - Dst: LOAD_PLUGIN
      Src: /src/gpac/src/utils/module.c:73,1
    - Dst: LOAD_PLUGIN
      Src: /src/gpac/src/utils/module.c:77,1
    - Dst: LOAD_PLUGIN
      Src: /src/gpac/src/utils/module.c:81,1
    - Dst: LOAD_PLUGIN
      Src: /src/gpac/src/utils/module.c:86,1
    - Dst: LOAD_PLUGIN
      Src: /src/gpac/src/utils/module.c:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - mgr
    argTypes:
    - GF_ModuleManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 104
    functionName: load_all_modules
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 0
    functionsReached:
    - LOAD_PLUGIN
    linkageType: ''
    returnType: void
    signature: void load_all_modules(GF_ModuleManager *mgr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 45
    functionName: LOAD_PLUGIN
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: "LOAD_PLUGIN(\t__name\t)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: register_module
      Src: /src/gpac/src/utils/module.c:117,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:119,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/module.c:123,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:125,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - (*register_module)()
    argTypes:
    - GF_InterfaceRegister*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 129
    functionName: gf_module_load_static
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 1
    functionsReached:
    - register_module
    - gf_list_add
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_module_load_static(GF_InterfaceRegister *(*register_module)())
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: load_all_modules
      Src: /src/gpac/src/utils/module.c:138,1
    - Dst: gf_modules_refresh
      Src: /src/gpac/src/utils/module.c:140,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:141,1
    - Dst: gf_modules_count
      Src: /src/gpac/src/utils/module.c:141,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 133
    functionDepth: 2
    functionLinenumber: 133
    functionLinenumberEnd: 143
    functionName: gf_modules_check_load
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_modules_refresh
    - load_all_modules
    - gf_modules_count
    linkageType: ''
    returnType: void
    signature: void gf_modules_check_load()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/module.c:156,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/module.c:161,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/module.c:163,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/module.c:168,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:172,1
    - Dst: strtok
      Src: /src/gpac/src/utils/module.c:179,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:183,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/module.c:186,1
    - Dst: strtok
      Src: /src/gpac/src/utils/module.c:188,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 190
    functionName: gf_modules_refresh_module_directories
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - GF_LOG
    - gf_opts_get_key
    - strtok
    linkageType: ''
    returnType: void
    signature: void gf_modules_refresh_module_directories()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/module.c:207,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/utils/module.c:210,1
    - Dst: gf_modules_refresh_module_directories
      Src: /src/gpac/src/utils/module.c:211,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/module.c:214,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:216,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/module.c:217,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/module.c:221,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:223,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/module.c:224,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/module.c:225,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/module.c:230,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/module.c:232,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/module.c:233,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/utils/module.c:233,1
    - Dst: gf_cfg_del_section
      Src: /src/gpac/src/utils/module.c:234,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/module.c:235,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/utils/module.c:235,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 33
    argCount: 1
    argNames:
    - config
    argTypes:
    - GF_Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 200
    functionDepth: 4
    functionLinenumber: 200
    functionLinenumberEnd: 239
    functionName: gf_modules_new
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 0
    functionsReached:
    - gf_modules_refresh_module_directories
    - gf_free
    - gf_list_new
    - gf_opts_set_key
    - GF_SAFEALLOC
    - GF_LOG
    - gf_opts_get_bool
    - gf_gpac_version
    - strcmp
    - gf_opts_get_key
    - gf_cfg_del_section
    - gf_mx_new
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_modules_new(GF_Config *config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_modules_refresh_module_directories
      Src: /src/gpac/src/utils/module.c:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 242
    functionDepth: 2
    functionLinenumber: 242
    functionLinenumberEnd: 247
    functionName: gf_module_reload_dirs
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 0
    functionsReached:
    - gf_modules_refresh_module_directories
    linkageType: ''
    returnType: void
    signature: void gf_module_reload_dirs()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/module.c:264,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/module.c:265,1
    - Dst: gf_modules_free_module
      Src: /src/gpac/src/utils/module.c:266,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/module.c:267,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/module.c:269,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/module.c:273,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/module.c:277,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/module.c:278,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/module.c:279,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/module.c:280,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/module.c:283,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/utils/module.c:284,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/module.c:285,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 255
    functionDepth: 2
    functionLinenumber: 255
    functionLinenumberEnd: 286
    functionName: gf_modules_del
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_modules_free_module
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void gf_modules_del()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/module.c:292,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/module.c:293,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - pm
    - filename
    argTypes:
    - GF_ModuleManager*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 288
    functionDepth: 2
    functionLinenumber: 288
    functionLinenumberEnd: 296
    functionName: gf_module_is_loaded
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 2
    functionsReached:
    - gf_list_enum
    - strcmp
    linkageType: ''
    returnType: Bool
    signature: Bool gf_module_is_loaded(GF_ModuleManager *pm, char *filename)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_modules_check_load
      Src: /src/gpac/src/utils/module.c:302,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/module.c:303,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 298
    functionDepth: 3
    functionLinenumber: 298
    functionLinenumberEnd: 304
    functionName: gf_modules_count
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 4
    functionsReached:
    - gf_list_count
    - gf_modules_check_load
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_modules_count()
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:317,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/module.c:321,1
    - Dst: gf_modules_check_load
      Src: /src/gpac/src/utils/module.c:323,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/module.c:325,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:327,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/module.c:328,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:331,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:334,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/module.c:335,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/module.c:338,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/utils/module.c:340,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/module.c:341,1
    - Dst: strstr
      Src: /src/gpac/src/utils/module.c:342,1
    - Dst: strstr
      Src: /src/gpac/src/utils/module.c:345,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/module.c:346,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/module.c:347,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/module.c:349,1
    - Dst: gf_modules_load_library
      Src: /src/gpac/src/utils/module.c:354,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:355,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/module.c:356,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/module.c:357,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:362,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/module.c:363,1
    - Dst: ModuleInstance*::query_func
      Src: /src/gpac/src/utils/module.c:374,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:376,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/module.c:377,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/module.c:383,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/module.c:387,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/utils/module.c:387,1
    - Dst: strcat
      Src: /src/gpac/src/utils/module.c:388,1
    - Dst: strcat
      Src: /src/gpac/src/utils/module.c:392,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/module.c:394,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/module.c:395,1
    - Dst: ModuleInstance*::load_func
      Src: /src/gpac/src/utils/module.c:400,1
    - Dst: ModuleInstance*::destroy_func
      Src: /src/gpac/src/utils/module.c:404,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/module.c:407,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:410,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/module.c:411,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:415,1
    - Dst: gf_modules_unload_library
      Src: /src/gpac/src/utils/module.c:416,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:417,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/module.c:418,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 97
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 307
    functionDepth: 5
    functionLinenumber: 307
    functionLinenumberEnd: 420
    functionName: GF_BaseInterface *gf_modules_load(u32 whichplug, u32 InterfaceFamily)
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_cfg_set_key
    - strcat
    - gf_4cc_to_str
    - gf_list_get
    - snprintf
    - gf_cfg_get_key
    - strncmp
    - ModuleInstance*::query_func
    - gf_list_add
    - gf_mx_p
    - GF_LOG
    - ModuleInstance*::destroy_func
    - strstr
    - gf_modules_unload_library
    - gf_mx_v
    - ModuleInstance*::load_func
    - gf_modules_load_library
    - gf_malloc
    - gf_modules_check_load
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_BaseInterface *gf_modules_load(u32 whichplug, u32 InterfaceFamily)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_modules_check_load
      Src: /src/gpac/src/utils/module.c:429,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/module.c:431,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:433,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/module.c:436,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/module.c:438,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/module.c:440,1
    - Dst: strstr
      Src: /src/gpac/src/utils/module.c:441,1
    - Dst: gf_modules_load_library
      Src: /src/gpac/src/utils/module.c:443,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:444,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/module.c:445,1
    - Dst: ModuleInstance*::filterreg_func
      Src: /src/gpac/src/utils/module.c:450,1
    - Dst: gf_modules_unload_library
      Src: /src/gpac/src/utils/module.c:453,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - whichplug
    - fsess
    argTypes:
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 422
    functionDepth: 5
    functionLinenumber: 422
    functionLinenumberEnd: 456
    functionName: gf_modules_load_filter
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - GF_LOG
    - gf_cfg_get_key
    - strstr
    - ModuleInstance*::filterreg_func
    - gf_modules_unload_library
    - strncmp
    - strcmp
    - gf_modules_check_load
    - gf_modules_load_library
    - gf_cfg_set_key
    linkageType: ''
    returnType: void
    signature: void *gf_modules_load_filter(u32 whichplug, void *fsess)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:466,1
    - Dst: gf_modules_check_load
      Src: /src/gpac/src/utils/module.c:470,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/module.c:472,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/module.c:474,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/module.c:479,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/module.c:480,1
    - Dst: gf_modules_load
      Src: /src/gpac/src/utils/module.c:481,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:487,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/module.c:491,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/module.c:492,1
    - Dst: gf_modules_load
      Src: /src/gpac/src/utils/module.c:494,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/module.c:496,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/module.c:498,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:499,1
    - Dst: gf_module_get_file_name
      Src: /src/gpac/src/utils/module.c:503,1
    - Dst: strstr
      Src: /src/gpac/src/utils/module.c:504,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/utils/module.c:507,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:509,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 458
    functionDepth: 5
    functionLinenumber: 458
    functionLinenumberEnd: 511
    functionName: GF_BaseInterface *gf_modules_load_by_name(const char *plug_name,
      u32 InterfaceFamily, Bool rebrowse_all)
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 0
    functionsReached:
    - gf_module_get_file_name
    - gf_list_get
    - GF_LOG
    - gf_modules_close_interface
    - gf_modules_load
    - gf_cfg_get_key
    - strstr
    - gf_list_count
    - strcmp
    - gf_modules_check_load
    - gf_cfg_set_key
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_BaseInterface *gf_modules_load_by_name(const char *plug_name,
      u32 InterfaceFamily, Bool rebrowse_all)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/utils/module.c:523,1
    - Dst: gf_list_find
      Src: /src/gpac/src/utils/module.c:526,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/module.c:528,1
    - Dst: ModuleInstance*::destroy_func
      Src: /src/gpac/src/utils/module.c:529,1
    - Dst: gf_modules_unload_library
      Src: /src/gpac/src/utils/module.c:530,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 513
    functionDepth: 2
    functionLinenumber: 513
    functionLinenumberEnd: 533
    functionName: gf_modules_close_interface
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 6
    functionsReached:
    - gf_modules_unload_library
    - gf_list_find
    - ModuleInstance*::destroy_func
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_modules_close_interface(GF_BaseInterface *ifce)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/module.c:538,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 535
    functionDepth: 1
    functionLinenumber: 535
    functionLinenumberEnd: 541
    functionName: gf_modules_get_file_name
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_modules_get_file_name(u32 i)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 543
    functionDepth: 0
    functionLinenumber: 543
    functionLinenumberEnd: 549
    functionName: gf_module_get_file_name
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_module_get_file_name(GF_BaseInterface *ifce)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/utils/module.c:568,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 19
    argCount: 2
    argNames:
    - ifce
    - ifce_type
    argTypes:
    - GF_BaseInterface*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 578
      start: 554
    functionDepth: 0
    functionLinenumber: 554
    functionLinenumberEnd: 578
    functionName: module_check_ifce
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 0
    functionsReached:
    - stricmp
    linkageType: ''
    returnType: Bool
    signature: Bool module_check_ifce(GF_BaseInterface *ifce, u32 ifce_type)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_modules_load_by_name
      Src: /src/gpac/src/utils/module.c:585,1
    - Dst: module_check_ifce
      Src: /src/gpac/src/utils/module.c:586,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/utils/module.c:587,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/module.c:596,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/module.c:599,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/module.c:602,1
    - Dst: gf_modules_load_by_name
      Src: /src/gpac/src/utils/module.c:608,1
    - Dst: module_check_ifce
      Src: /src/gpac/src/utils/module.c:609,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/utils/module.c:610,1
    - Dst: gf_modules_count
      Src: /src/gpac/src/utils/module.c:616,1
    - Dst: gf_modules_load
      Src: /src/gpac/src/utils/module.c:618,1
    - Dst: module_check_ifce
      Src: /src/gpac/src/utils/module.c:621,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/utils/module.c:622,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 44
    argCount: 2
    argNames:
    - ifce_type
    - name
    argTypes:
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 630
      start: 581
    functionDepth: 4
    functionLinenumber: 581
    functionLinenumberEnd: 630
    functionName: gf_module_load
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 2
    functionsReached:
    - gf_modules_count
    - gf_modules_load_by_name
    - gf_modules_close_interface
    - gf_modules_load
    - gf_opts_get_key
    - module_check_ifce
    linkageType: ''
    returnType: GF_BaseInterface
    signature: GF_BaseInterface *gf_module_load(u32 ifce_type, const char *name)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/module.c:639,1
    - Dst: gf_sys_get_argc
      Src: /src/gpac/src/utils/module.c:640,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/module.c:644,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/module.c:645,1
    - Dst: gf_sys_get_arg
      Src: /src/gpac/src/utils/module.c:654,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/module.c:655,1
    - Dst: strchr
      Src: /src/gpac/src/utils/module.c:657,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/module.c:660,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/module.c:663,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/src/utils/module.c:665,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/src/utils/module.c:671,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 37
    argCount: 2
    argNames:
    - dr
    - key_name
    argTypes:
    - GF_BaseInterface*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 676
      start: 634
    functionDepth: 1
    functionLinenumber: 634
    functionLinenumberEnd: 676
    functionName: gf_module_get_key
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 10
    functionsReached:
    - gf_sys_mark_arg_used
    - strncmp
    - strcmp
    - gf_opts_get_key
    - gf_sys_get_arg
    - gf_sys_get_argc
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_module_get_key(GF_BaseInterface *dr, char *key_name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_module_get_key
      Src: /src/gpac/src/utils/module.c:680,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/module.c:682,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/module.c:682,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/module.c:682,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 2
    argNames:
    - dr
    - key_name
    argTypes:
    - GF_BaseInterface*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 677
    functionDepth: 2
    functionLinenumber: 677
    functionLinenumberEnd: 684
    functionName: gf_module_get_bool
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 10
    functionsReached:
    - strcmp
    - gf_module_get_key
    - stricmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_module_get_bool(GF_BaseInterface *dr, char *key_name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_module_get_key
      Src: /src/gpac/src/utils/module.c:688,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/module.c:690,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/module.c:690,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/module.c:690,1
    - Dst: atoi
      Src: /src/gpac/src/utils/module.c:690,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 2
    argNames:
    - dr
    - key_name
    argTypes:
    - GF_BaseInterface*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 692
      start: 685
    functionDepth: 2
    functionLinenumber: 685
    functionLinenumberEnd: 692
    functionName: gf_module_get_int
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 2
    functionsReached:
    - strcmp
    - atoi
    - gf_module_get_key
    - stricmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_module_get_int(GF_BaseInterface *dr, char *key_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - n
    argTypes:
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionName: colmask
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE colmask(s32 a, s32 n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 57
    functionName: col_clip
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: col_clip(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 59
    functionName: FIX_OUT
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FIX_OUT(x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FIX_OUT
      Src: /src/gpac/src/utils/color.c:75,1
    - Dst: FIX_OUT
      Src: /src/gpac/src/utils/color.c:76,1
    - Dst: FIX_OUT
      Src: /src/gpac/src/utils/color.c:77,1
    - Dst: FIX_OUT
      Src: /src/gpac/src/utils/color.c:78,1
    - Dst: FIX_OUT
      Src: /src/gpac/src/utils/color.c:79,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 81
    functionName: yuv2rgb_init
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - FIX_OUT
    linkageType: ''
    returnType: void
    signature: void yuv2rgb_init(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:128,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:129,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:130,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:135,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:136,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:137,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:142,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:143,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:144,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:149,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:150,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:151,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 56
    argCount: 9
    argNames:
    - dst
    - dststride
    - y_src
    - u_src
    - v_src
    - y_stride
    - uv_stride
    - width
    - dst_yuv
    argTypes:
    - unsigned char*
    - s32
    - unsigned char*
    - unsigned char*
    - unsigned char*
    - s32
    - s32
    - s32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 158
    functionName: yuv_load_lines_planar
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - col_clip
    linkageType: ''
    returnType: void
    signature: void yuv_load_lines_planar(unsigned char *dst, s32 dststride, unsigned
      char *y_src, unsigned char *u_src, unsigned char * v_src, s32 y_stride, s32
      uv_stride, s32 width, Bool dst_yuv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:207,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:208,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:209,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:214,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:215,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:216,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:226,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:227,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:228,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:233,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:234,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:235,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 67
    argCount: 9
    argNames:
    - dst
    - dststride
    - y_src
    - u_src
    - v_src
    - y_stride
    - uv_stride
    - width
    - dst_yuv
    argTypes:
    - unsigned char*
    - s32
    - unsigned char*
    - unsigned char*
    - unsigned char*
    - s32
    - s32
    - s32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 244
    functionName: yuv422_load_lines_planar
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - col_clip
    linkageType: ''
    returnType: void
    signature: void yuv422_load_lines_planar(unsigned char *dst, s32 dststride, unsigned
      char *y_src, unsigned char *u_src, unsigned char * v_src, s32 y_stride, s32
      uv_stride, s32 width, Bool dst_yuv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:307,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:308,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:309,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:320,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:321,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:322,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:333,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:334,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:335,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:347,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:348,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:349,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 85
    argCount: 9
    argNames:
    - dst
    - dststride
    - y_src
    - u_src
    - v_src
    - y_stride
    - uv_stride
    - width
    - dst_yuv
    argTypes:
    - unsigned char*
    - s32
    - unsigned char*
    - unsigned char*
    - unsigned char*
    - s32
    - s32
    - s32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 245
    functionDepth: 1
    functionLinenumber: 245
    functionLinenumberEnd: 358
    functionName: yuv444_load_lines_planar
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - col_clip
    linkageType: ''
    returnType: void
    signature: void yuv444_load_lines_planar(unsigned char *dst, s32 dststride, unsigned
      char *y_src, unsigned char *u_src, unsigned char * v_src, s32 y_stride, s32
      uv_stride, s32 width, Bool dst_yuv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:408,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:409,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:410,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:415,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:416,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:417,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:422,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:423,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:424,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:429,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:430,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:431,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 56
    argCount: 9
    argNames:
    - dst
    - dststride
    - _y_src
    - _u_src
    - _v_src
    - y_stride
    - uv_stride
    - width
    - dst_yuv
    argTypes:
    - unsigned char*
    - s32
    - unsigned char*
    - unsigned char*
    - unsigned char*
    - s32
    - s32
    - s32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 360
    functionDepth: 1
    functionLinenumber: 360
    functionLinenumberEnd: 438
    functionName: yuv_10_load_lines_planar
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - col_clip
    linkageType: ''
    returnType: void
    signature: void yuv_10_load_lines_planar(unsigned char *dst, s32 dststride, unsigned
      char *_y_src, unsigned char *_u_src, unsigned char *_v_src, s32 y_stride, s32
      uv_stride, s32 width, Bool dst_yuv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:490,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:491,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:492,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:500,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:501,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:502,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:513,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:514,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:515,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:520,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:521,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:522,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 66
    argCount: 9
    argNames:
    - dst
    - dststride
    - _y_src
    - _u_src
    - _v_src
    - y_stride
    - uv_stride
    - width
    - dst_yuv
    argTypes:
    - unsigned char*
    - s32
    - unsigned char*
    - unsigned char*
    - unsigned char*
    - s32
    - s32
    - s32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 531
      start: 439
    functionDepth: 1
    functionLinenumber: 439
    functionLinenumberEnd: 531
    functionName: yuv422_10_load_lines_planar
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - col_clip
    linkageType: ''
    returnType: void
    signature: void yuv422_10_load_lines_planar(unsigned char *dst, s32 dststride,
      unsigned char *_y_src, unsigned char *_u_src, unsigned char *_v_src, s32 y_stride,
      s32 uv_stride, s32 width, Bool dst_yuv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:591,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:592,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:593,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:604,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:605,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:606,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:617,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:618,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:619,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:631,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:632,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:633,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 85
    argCount: 9
    argNames:
    - dst
    - dststride
    - _y_src
    - _u_src
    - _v_src
    - y_stride
    - uv_stride
    - width
    - dst_yuv
    argTypes:
    - unsigned char*
    - s32
    - unsigned char*
    - unsigned char*
    - unsigned char*
    - s32
    - s32
    - s32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 532
    functionDepth: 1
    functionLinenumber: 532
    functionLinenumberEnd: 642
    functionName: yuv444_10_load_lines_planar
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - col_clip
    linkageType: ''
    returnType: void
    signature: void yuv444_10_load_lines_planar(unsigned char *dst, s32 dststride,
      unsigned char *_y_src, unsigned char *_u_src, unsigned char *_v_src, s32 y_stride,
      s32 uv_stride, s32 width, Bool dst_yuv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:676,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:677,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:678,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:682,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:683,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:684,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 38
    argCount: 7
    argNames:
    - dst
    - dststride
    - y_src
    - u_src
    - v_src
    - width
    - dst_yuv
    argTypes:
    - unsigned char*
    - s32
    - unsigned char*
    - unsigned char*
    - unsigned char*
    - s32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 692
      start: 644
    functionDepth: 1
    functionLinenumber: 644
    functionLinenumberEnd: 692
    functionName: yuv_load_lines_packed
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - col_clip
    linkageType: ''
    returnType: void
    signature: void yuv_load_lines_packed(unsigned char *dst, s32 dststride, unsigned
      char *y_src, unsigned char *u_src, unsigned char * v_src, s32 width, Bool dst_yuv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: yuv2rgb_init
      Src: /src/gpac/src/utils/color.c:703,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:749,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:750,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:751,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:757,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:758,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:759,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:765,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:766,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:767,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:773,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:774,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:775,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 65
    argCount: 10
    argNames:
    - dst
    - dststride
    - y_src
    - u_src
    - v_src
    - a_src
    - y_stride
    - uv_stride
    - width
    - dst_yuv
    argTypes:
    - unsigned char*
    - s32
    - unsigned char*
    - unsigned char*
    - unsigned char*
    - unsigned char*
    - s32
    - s32
    - s32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 783
      start: 695
    functionDepth: 2
    functionLinenumber: 695
    functionLinenumberEnd: 783
    functionName: yuva_load_lines
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - col_clip
    - yuv2rgb_init
    linkageType: ''
    returnType: void
    signature: "void yuva_load_lines(unsigned char *dst, s32 dststride, unsigned char
      *y_src, unsigned char *u_src, unsigned char *v_src, unsigned char *a_src,\n
      \                              s32 y_stride, s32 uv_stride, s32 width, Bool
      dst_yuv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 788
      start: 785
    functionDepth: 0
    functionLinenumber: 785
    functionLinenumberEnd: 788
    functionName: mul255
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 46
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 mul255(s32 a, s32 b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_555
      Src: /src/gpac/src/utils/color.c:808,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 9
    argNames:
    - src
    - src_w
    - _dst
    - dst_w
    - h_inc
    - x_pitch
    - alpha
    - dst_pitch
    - dst_height
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    - s32
    - s32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 813
      start: 793
    functionDepth: 1
    functionLinenumber: 793
    functionLinenumberEnd: 813
    functionName: copy_row_rgb_555
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - GF_COL_555
    linkageType: ''
    returnType: void
    signature: void copy_row_rgb_555(u8 *src, u32 src_w, u8 *_dst, u32 dst_w, s32
      h_inc, s32 x_pitch, u8 alpha, u32 dst_pitch, u32 dst_height)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_565
      Src: /src/gpac/src/utils/color.c:830,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 9
    argNames:
    - src
    - src_w
    - _dst
    - dst_w
    - h_inc
    - x_pitch
    - alpha
    - dst_pitch
    - dst_height
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    - s32
    - s32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 835
      start: 815
    functionDepth: 1
    functionLinenumber: 815
    functionLinenumberEnd: 835
    functionName: copy_row_rgb_565
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - GF_COL_565
    linkageType: ''
    returnType: void
    signature: void copy_row_rgb_565(u8 *src, u32 src_w, u8 *_dst, u32 dst_w, s32
      h_inc, s32 x_pitch, u8 alpha, u32 dst_pitch, u32 dst_height)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 9
    argNames:
    - src
    - src_w
    - dst
    - dst_w
    - h_inc
    - x_pitch
    - alpha
    - dst_pitch
    - dst_height
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    - s32
    - s32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 861
      start: 838
    functionDepth: 0
    functionLinenumber: 838
    functionLinenumberEnd: 861
    functionName: copy_row_rgb_24
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void copy_row_rgb_24(u8 *src, u32 src_w, u8 *dst, u32 dst_w, s32 h_inc,
      s32 x_pitch, u8 alpha, u32 dst_pitch, u32 dst_height)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 9
    argNames:
    - src
    - src_w
    - dst
    - dst_w
    - h_inc
    - x_pitch
    - alpha
    - dst_pitch
    - dst_height
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    - s32
    - s32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 886
      start: 863
    functionDepth: 0
    functionLinenumber: 863
    functionLinenumberEnd: 886
    functionName: copy_row_bgr_24
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void copy_row_bgr_24(u8 *src, u32 src_w, u8 *dst, u32 dst_w, s32 h_inc,
      s32 x_pitch, u8 alpha, u32 dst_pitch, u32 dst_height)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 9
    argNames:
    - src
    - src_w
    - dst
    - dst_w
    - h_inc
    - x_pitch
    - alpha
    - dst_pitch
    - dst_height
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    - s32
    - s32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 911
      start: 888
    functionDepth: 0
    functionLinenumber: 888
    functionLinenumberEnd: 911
    functionName: copy_row_bgrx
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void copy_row_bgrx(u8 *src, u32 src_w, u8 *dst, u32 dst_w, s32 h_inc,
      s32 x_pitch, u8 alpha, u32 dst_pitch, u32 dst_height)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 9
    argNames:
    - src
    - src_w
    - dst
    - dst_w
    - h_inc
    - x_pitch
    - alpha
    - dst_pitch
    - dst_height
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    - s32
    - s32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 937
      start: 914
    functionDepth: 0
    functionLinenumber: 914
    functionLinenumberEnd: 937
    functionName: copy_row_argb
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void copy_row_argb(u8 *src, u32 src_w, u8 *dst, u32 dst_w, s32 h_inc,
      s32 x_pitch, u8 alpha, u32 dst_pitch, u32 dst_height)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 9
    argNames:
    - src
    - src_w
    - dst
    - dst_w
    - h_inc
    - x_pitch
    - alpha
    - dst_pitch
    - dst_height
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    - s32
    - s32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 962
      start: 939
    functionDepth: 0
    functionLinenumber: 939
    functionLinenumberEnd: 962
    functionName: copy_row_rgbx
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void copy_row_rgbx(u8 *src, u32 src_w, u8 *dst, u32 dst_w, s32 h_inc,
      s32 x_pitch, u8 alpha, u32 dst_pitch, u32 dst_height)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 9
    argNames:
    - src
    - src_w
    - dst
    - dst_w
    - h_inc
    - x_pitch
    - alpha
    - dst_pitch
    - dst_height
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    - s32
    - s32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 986
      start: 964
    functionDepth: 0
    functionLinenumber: 964
    functionLinenumberEnd: 986
    functionName: copy_row_rgbd
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void copy_row_rgbd(u8 *src, u32 src_w, u8 *dst, u32 dst_w, s32 h_inc,
      s32 x_pitch, u8 alpha, u32 dst_pitch, u32 dst_height)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 9
    argNames:
    - src
    - src_w
    - dst
    - dst_w
    - h_inc
    - x_pitch
    - alpha
    - dst_pitch
    - dst_height
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    - s32
    - s32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1019
      start: 988
    functionDepth: 0
    functionLinenumber: 988
    functionLinenumberEnd: 1019
    functionName: copy_row_yuv444
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void copy_row_yuv444(u8 *src, u32 src_w, u8 *dst, u32 dst_w, s32 h_inc,
      s32 x_pitch, u8 alpha, u32 dst_pitch, u32 dst_height)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1036,1
    - Dst: colmask
      Src: /src/gpac/src/utils/color.c:1040,1
    - Dst: colmask
      Src: /src/gpac/src/utils/color.c:1041,1
    - Dst: colmask
      Src: /src/gpac/src/utils/color.c:1042,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1044,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1045,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1046,1
    - Dst: GF_COL_555
      Src: /src/gpac/src/utils/color.c:1047,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 9
    argNames:
    - src
    - src_w
    - _dst
    - dst_w
    - h_inc
    - x_pitch
    - alpha
    - dst_pitch
    - dst_height
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    - s32
    - s32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1053
      start: 1022
    functionDepth: 1
    functionLinenumber: 1022
    functionLinenumberEnd: 1053
    functionName: merge_row_rgb_555
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - colmask
    - GF_COL_555
    - mul255
    linkageType: ''
    returnType: void
    signature: void merge_row_rgb_555(u8 *src, u32 src_w, u8 *_dst, u32 dst_w, s32
      h_inc, s32 x_pitch, u8 alpha, u32 dst_pitch, u32 dst_height)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1069,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1076,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1077,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1078,1
    - Dst: GF_COL_565
      Src: /src/gpac/src/utils/color.c:1079,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 9
    argNames:
    - src
    - src_w
    - _dst
    - dst_w
    - h_inc
    - x_pitch
    - alpha
    - dst_pitch
    - dst_height
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    - s32
    - s32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1085
      start: 1055
    functionDepth: 1
    functionLinenumber: 1055
    functionLinenumberEnd: 1085
    functionName: merge_row_rgb_565
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - GF_COL_565
    - mul255
    linkageType: ''
    returnType: void
    signature: void merge_row_rgb_565(u8 *src, u32 src_w, u8 *_dst, u32 dst_w, s32
      h_inc, s32 x_pitch, u8 alpha, u32 dst_pitch, u32 dst_height)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1101,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1107,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1108,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1109,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 9
    argNames:
    - src
    - src_w
    - dst
    - dst_w
    - h_inc
    - x_pitch
    - alpha
    - dst_pitch
    - dst_height
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    - s32
    - s32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1115
      start: 1088
    functionDepth: 0
    functionLinenumber: 1088
    functionLinenumberEnd: 1115
    functionName: merge_row_rgb_24
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - mul255
    linkageType: ''
    returnType: void
    signature: void merge_row_rgb_24(u8 *src, u32 src_w, u8 *dst, u32 dst_w, s32 h_inc,
      s32 x_pitch, u8 alpha, u32 dst_pitch, u32 dst_height)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1137,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1143,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1144,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1145,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 28
    argCount: 9
    argNames:
    - src
    - src_w
    - dst
    - dst_w
    - h_inc
    - x_pitch
    - alpha
    - dst_pitch
    - dst_height
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    - s32
    - s32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1154
      start: 1119
    functionDepth: 0
    functionLinenumber: 1119
    functionLinenumberEnd: 1154
    functionName: merge_row_yuv444
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - mul255
    linkageType: ''
    returnType: void
    signature: void merge_row_yuv444(u8 *src, u32 src_w, u8 *dst, u32 dst_w, s32 h_inc,
      s32 x_pitch, u8 alpha, u32 dst_pitch, u32 dst_height)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1176,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1177,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1178,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1179,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 9
    argNames:
    - src
    - src_w
    - dst
    - dst_w
    - h_inc
    - x_pitch
    - alpha
    - dst_pitch
    - dst_height
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    - s32
    - s32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1185
      start: 1157
    functionDepth: 0
    functionLinenumber: 1157
    functionLinenumberEnd: 1185
    functionName: merge_row_bgr_24
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - mul255
    linkageType: ''
    returnType: void
    signature: void merge_row_bgr_24(u8 *src, u32 src_w, u8 *dst, u32 dst_w, s32 h_inc,
      s32 x_pitch, u8 alpha, u32 dst_pitch, u32 dst_height)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1200,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1209,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1210,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1211,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 27
    argCount: 9
    argNames:
    - src
    - src_w
    - dst
    - dst_w
    - h_inc
    - x_pitch
    - alpha
    - dst_pitch
    - dst_height
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    - s32
    - s32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1222
      start: 1188
    functionDepth: 0
    functionLinenumber: 1188
    functionLinenumberEnd: 1222
    functionName: merge_row_bgrx
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - mul255
    linkageType: ''
    returnType: void
    signature: void merge_row_bgrx(u8 *src, u32 src_w, u8 *dst, u32 dst_w, s32 h_inc,
      s32 x_pitch, u8 alpha, u32 dst_pitch, u32 dst_height)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1236,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1244,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1245,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1246,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 27
    argCount: 9
    argNames:
    - src
    - src_w
    - dst
    - dst_w
    - h_inc
    - x_pitch
    - alpha
    - dst_pitch
    - dst_height
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    - s32
    - s32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1256
      start: 1224
    functionDepth: 0
    functionLinenumber: 1224
    functionLinenumberEnd: 1256
    functionName: merge_row_rgbx
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - mul255
    linkageType: ''
    returnType: void
    signature: void merge_row_rgbx(u8 *src, u32 src_w, u8 *dst, u32 dst_w, s32 h_inc,
      s32 x_pitch, u8 alpha, u32 dst_pitch, u32 dst_height)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1272,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1280,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1280,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1281,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1282,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1283,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 35
    argCount: 9
    argNames:
    - src
    - src_w
    - dst
    - dst_w
    - h_inc
    - x_pitch
    - alpha
    - dst_pitch
    - dst_height
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    - s32
    - s32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1299
      start: 1259
    functionDepth: 0
    functionLinenumber: 1259
    functionLinenumberEnd: 1299
    functionName: merge_row_bgra
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - mul255
    linkageType: ''
    returnType: void
    signature: void merge_row_bgra(u8 *src, u32 src_w, u8 *dst, u32 dst_w, s32 h_inc,
      s32 x_pitch, u8 alpha, u32 dst_pitch, u32 dst_height)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1315,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1323,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1323,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1324,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1325,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1326,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 35
    argCount: 9
    argNames:
    - src
    - src_w
    - dst
    - dst_w
    - h_inc
    - x_pitch
    - alpha
    - dst_pitch
    - dst_height
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    - s32
    - s32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1342
      start: 1302
    functionDepth: 0
    functionLinenumber: 1302
    functionLinenumberEnd: 1342
    functionName: merge_row_argb
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - mul255
    linkageType: ''
    returnType: void
    signature: void merge_row_argb(u8 *src, u32 src_w, u8 *dst, u32 dst_w, s32 h_inc,
      s32 x_pitch, u8 alpha, u32 dst_pitch, u32 dst_height)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1356,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1364,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1364,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1365,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1366,1
    - Dst: mul255
      Src: /src/gpac/src/utils/color.c:1367,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 35
    argCount: 9
    argNames:
    - src
    - src_w
    - dst
    - dst_w
    - h_inc
    - x_pitch
    - alpha
    - dst_pitch
    - dst_height
    argTypes:
    - u8*
    - u32
    - u8*
    - u32
    - s32
    - s32
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1383
      start: 1344
    functionDepth: 0
    functionLinenumber: 1344
    functionLinenumberEnd: 1383
    functionName: merge_row_rgba
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - mul255
    linkageType: ''
    returnType: void
    signature: void merge_row_rgba(u8 *src, u32 src_w, u8 *dst, u32 dst_w, s32 h_inc,
      s32 x_pitch, u8 alpha, u32 dst_pitch, u32 dst_height)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 8
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - dst_yuv
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1395
      start: 1386
    functionDepth: 0
    functionLinenumber: 1386
    functionLinenumberEnd: 1395
    functionName: load_line_grey
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void load_line_grey(u8 *src_bits, u32 x_offset, u32 y_offset, u32 y_pitch,
      u32 width, u32 height, u8 *dst_bits, Bool dst_yuv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 8
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - dst_yuv
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1406
      start: 1397
    functionDepth: 0
    functionLinenumber: 1397
    functionLinenumberEnd: 1406
    functionName: load_line_alpha_grey
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void load_line_alpha_grey(u8 *src_bits, u32 x_offset, u32 y_offset,
      u32 y_pitch, u32 width, u32 height, u8 *dst_bits, Bool dst_yuv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 8
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - dst_yuv
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1417
      start: 1408
    functionDepth: 0
    functionLinenumber: 1408
    functionLinenumberEnd: 1417
    functionName: load_line_grey_alpha
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void load_line_grey_alpha(u8 *src_bits, u32 x_offset, u32 y_offset,
      u32 y_pitch, u32 width, u32 height, u8 *dst_bits, Bool dst_yuv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: colmask
      Src: /src/gpac/src/utils/color.c:1425,1
    - Dst: colmask
      Src: /src/gpac/src/utils/color.c:1426,1
    - Dst: colmask
      Src: /src/gpac/src/utils/color.c:1427,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 8
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - dst_yuv
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1431
      start: 1419
    functionDepth: 1
    functionLinenumber: 1419
    functionLinenumberEnd: 1431
    functionName: load_line_rgb_555
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - colmask
    linkageType: ''
    returnType: void
    signature: void load_line_rgb_555(u8 *src_bits, u32 x_offset, u32 y_offset, u32
      y_pitch, u32 width, u32 height, u8 *dst_bits, Bool dst_yuv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: colmask
      Src: /src/gpac/src/utils/color.c:1439,1
    - Dst: colmask
      Src: /src/gpac/src/utils/color.c:1440,1
    - Dst: colmask
      Src: /src/gpac/src/utils/color.c:1441,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 8
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - dst_yuv
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1445
      start: 1433
    functionDepth: 1
    functionLinenumber: 1433
    functionLinenumberEnd: 1445
    functionName: load_line_rgb_565
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - colmask
    linkageType: ''
    returnType: void
    signature: void load_line_rgb_565(u8 *src_bits, u32 x_offset, u32 y_offset, u32
      y_pitch, u32 width, u32 height, u8 *dst_bits, Bool dst_yuv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 8
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - dst_yuv
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1458
      start: 1447
    functionDepth: 0
    functionLinenumber: 1447
    functionLinenumberEnd: 1458
    functionName: load_line_rgb_24
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void load_line_rgb_24(u8 *src_bits, u32 x_offset, u32 y_offset, u32
      y_pitch, u32 width, u32 height, u8 *dst_bits, Bool dst_yuv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 8
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - dst_yuv
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1471
      start: 1460
    functionDepth: 0
    functionLinenumber: 1460
    functionLinenumberEnd: 1471
    functionName: load_line_bgr_24
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void load_line_bgr_24(u8 *src_bits, u32 x_offset, u32 y_offset, u32
      y_pitch, u32 width, u32 height, u8 *dst_bits, Bool dst_yuv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 8
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - dst_yuv
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1484
      start: 1473
    functionDepth: 0
    functionLinenumber: 1473
    functionLinenumberEnd: 1484
    functionName: load_line_rgb_32
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void load_line_rgb_32(u8 *src_bits, u32 x_offset, u32 y_offset, u32
      y_pitch, u32 width, u32 height, u8 *dst_bits, Bool dst_yuv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 8
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - dst_yuv
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1497
      start: 1485
    functionDepth: 0
    functionLinenumber: 1485
    functionLinenumberEnd: 1497
    functionName: load_line_xrgb
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void load_line_xrgb(u8 *src_bits, u32 x_offset, u32 y_offset, u32 y_pitch,
      u32 width, u32 height, u8 *dst_bits, Bool dst_yuv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 8
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - dst_yuv
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1510
      start: 1498
    functionDepth: 0
    functionLinenumber: 1498
    functionLinenumberEnd: 1510
    functionName: load_line_bgrx
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void load_line_bgrx(u8 *src_bits, u32 x_offset, u32 y_offset, u32 y_pitch,
      u32 width, u32 height, u8 *dst_bits, Bool dst_yuv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 8
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - dst_yuv
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1524
      start: 1512
    functionDepth: 0
    functionLinenumber: 1512
    functionLinenumberEnd: 1524
    functionName: load_line_rgbd
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void load_line_rgbd(u8 *src_bits, u32 x_offset, u32 y_offset, u32 y_pitch,
      u32 width, u32 height, u8 *dst_bits, Bool dst_yuv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 8
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - dst_yuv
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1537
      start: 1526
    functionDepth: 0
    functionLinenumber: 1526
    functionLinenumberEnd: 1537
    functionName: load_line_rgbds
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void load_line_rgbds(u8 *src_bits, u32 x_offset, u32 y_offset, u32
      y_pitch, u32 width, u32 height, u8 *dst_bits, Bool dst_yuv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 8
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - dst_yuv
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1550
      start: 1539
    functionDepth: 0
    functionLinenumber: 1539
    functionLinenumberEnd: 1550
    functionName: load_line_bgra
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void load_line_bgra(u8 *src_bits, u32 x_offset, u32 y_offset, u32 y_pitch,
      u32 width, u32 height, u8 *dst_bits, Bool dst_yuv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 8
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - dst_yuv
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1563
      start: 1552
    functionDepth: 0
    functionLinenumber: 1552
    functionLinenumberEnd: 1563
    functionName: load_line_argb
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void load_line_argb(u8 *src_bits, u32 x_offset, u32 y_offset, u32 y_pitch,
      u32 width, u32 height, u8 *dst_bits, Bool dst_yuv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: yuv_load_lines_planar
      Src: /src/gpac/src/utils/color.c:1576,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 10
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - pU
    - pV
    - dst_yuv
    argTypes:
    - char*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - u8*
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1577
      start: 1564
    functionDepth: 2
    functionLinenumber: 1564
    functionLinenumberEnd: 1577
    functionName: load_line_yv12
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - yuv_load_lines_planar
    linkageType: ''
    returnType: void
    signature: void load_line_yv12(char *src_bits, u32 x_offset, u32 y_offset, u32
      y_pitch, u32 width, u32 height, u8 *dst_bits, u8 *pU, u8 *pV, Bool dst_yuv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: yuv422_load_lines_planar
      Src: /src/gpac/src/utils/color.c:1590,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 10
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - pU
    - pV
    - dst_yuv
    argTypes:
    - char*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - u8*
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1591
      start: 1578
    functionDepth: 2
    functionLinenumber: 1578
    functionLinenumberEnd: 1591
    functionName: load_line_yuv422
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - yuv422_load_lines_planar
    linkageType: ''
    returnType: void
    signature: void load_line_yuv422(char *src_bits, u32 x_offset, u32 y_offset, u32
      y_pitch, u32 width, u32 height, u8 *dst_bits, u8 *pU, u8 *pV, Bool dst_yuv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: yuv444_load_lines_planar
      Src: /src/gpac/src/utils/color.c:1605,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 10
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - pU
    - pV
    - dst_yuv
    argTypes:
    - char*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - u8*
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1606
      start: 1592
    functionDepth: 2
    functionLinenumber: 1592
    functionLinenumberEnd: 1606
    functionName: load_line_yuv444
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - yuv444_load_lines_planar
    linkageType: ''
    returnType: void
    signature: void load_line_yuv444(char *src_bits, u32 x_offset, u32 y_offset, u32
      y_pitch, u32 width, u32 height, u8 *dst_bits, u8 *pU, u8 *pV, Bool dst_yuv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: yuv_10_load_lines_planar
      Src: /src/gpac/src/utils/color.c:1619,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 10
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - pU
    - pV
    - dst_yuv
    argTypes:
    - char*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - u8*
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1620
      start: 1607
    functionDepth: 2
    functionLinenumber: 1607
    functionLinenumberEnd: 1620
    functionName: load_line_yv12_10
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - yuv_10_load_lines_planar
    linkageType: ''
    returnType: void
    signature: void load_line_yv12_10(char *src_bits, u32 x_offset, u32 y_offset,
      u32 y_pitch, u32 width, u32 height, u8 *dst_bits, u8 *pU, u8 *pV, Bool dst_yuv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: yuv422_10_load_lines_planar
      Src: /src/gpac/src/utils/color.c:1638,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 10
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - pU
    - pV
    - dst_yuv
    argTypes:
    - char*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - u8*
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1639
      start: 1621
    functionDepth: 2
    functionLinenumber: 1621
    functionLinenumberEnd: 1639
    functionName: load_line_yuv422_10
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - yuv422_10_load_lines_planar
    linkageType: ''
    returnType: void
    signature: void load_line_yuv422_10(char *src_bits, u32 x_offset, u32 y_offset,
      u32 y_pitch, u32 width, u32 height, u8 *dst_bits, u8 *pU, u8 *pV, Bool dst_yuv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: yuv444_10_load_lines_planar
      Src: /src/gpac/src/utils/color.c:1657,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 10
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - pU
    - pV
    - dst_yuv
    argTypes:
    - char*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - u8*
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1658
      start: 1640
    functionDepth: 2
    functionLinenumber: 1640
    functionLinenumberEnd: 1658
    functionName: load_line_yuv444_10
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - yuv444_10_load_lines_planar
    linkageType: ''
    returnType: void
    signature: void load_line_yuv444_10(char *src_bits, u32 x_offset, u32 y_offset,
      u32 y_pitch, u32 width, u32 height, u8 *dst_bits, u8 *pU, u8 *pV, Bool dst_yuv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: yuva_load_lines
      Src: /src/gpac/src/utils/color.c:1673,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 11
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - pU
    - pV
    - pA
    - dst_yuv
    argTypes:
    - char*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - u8*
    - u8*
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1674
      start: 1659
    functionDepth: 3
    functionLinenumber: 1659
    functionLinenumberEnd: 1674
    functionName: load_line_yuva
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - yuva_load_lines
    linkageType: ''
    returnType: void
    signature: void load_line_yuva(char *src_bits, u32 x_offset, u32 y_offset, u32
      y_pitch, u32 width, u32 height, u8 *dst_bits, u8 *pU, u8 *pV, u8 *pA, Bool dst_yuv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: yuv_load_lines_packed
      Src: /src/gpac/src/utils/color.c:1682,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 8
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - dst_yuv
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1683
      start: 1676
    functionDepth: 2
    functionLinenumber: 1676
    functionLinenumberEnd: 1683
    functionName: load_line_yuyv
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - yuv_load_lines_packed
    linkageType: ''
    returnType: void
    signature: void load_line_yuyv(u8 *src_bits, u32 x_offset, u32 y_offset, u32 y_pitch,
      u32 width, u32 height, u8 *dst_bits, Bool dst_yuv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: yuv_load_lines_packed
      Src: /src/gpac/src/utils/color.c:1690,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 8
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - dst_yuv
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1691
      start: 1684
    functionDepth: 2
    functionLinenumber: 1684
    functionLinenumberEnd: 1691
    functionName: load_line_uyvy
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - yuv_load_lines_packed
    linkageType: ''
    returnType: void
    signature: void load_line_uyvy(u8 *src_bits, u32 x_offset, u32 y_offset, u32 y_pitch,
      u32 width, u32 height, u8 *dst_bits, Bool dst_yuv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: yuv_load_lines_packed
      Src: /src/gpac/src/utils/color.c:1698,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 8
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - dst_yuv
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1699
      start: 1692
    functionDepth: 2
    functionLinenumber: 1692
    functionLinenumberEnd: 1699
    functionName: load_line_yvyu
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - yuv_load_lines_packed
    linkageType: ''
    returnType: void
    signature: void load_line_yvyu(u8 *src_bits, u32 x_offset, u32 y_offset, u32 y_pitch,
      u32 width, u32 height, u8 *dst_bits, Bool dst_yuv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: yuv_load_lines_packed
      Src: /src/gpac/src/utils/color.c:1706,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 8
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - dst_yuv
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1707
      start: 1700
    functionDepth: 2
    functionLinenumber: 1700
    functionLinenumberEnd: 1707
    functionName: load_line_vyuy
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - yuv_load_lines_packed
    linkageType: ''
    returnType: void
    signature: void load_line_vyuy(u8 *src_bits, u32 x_offset, u32 y_offset, u32 y_pitch,
      u32 width, u32 height, u8 *dst_bits, Bool dst_yuv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:1755,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:1756,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:1757,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:1762,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:1763,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:1764,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:1769,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:1770,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:1771,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:1776,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:1777,1
    - Dst: col_clip
      Src: /src/gpac/src/utils/color.c:1778,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 56
    argCount: 8
    argNames:
    - dst
    - dststride
    - y_src
    - u_src
    - v_src
    - y_stride
    - width
    - dst_yuv
    argTypes:
    - unsigned char*
    - s32
    - unsigned char*
    - unsigned char*
    - unsigned char*
    - s32
    - s32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1785
      start: 1710
    functionDepth: 1
    functionLinenumber: 1710
    functionLinenumberEnd: 1785
    functionName: gf_yuv_load_lines_nv12_nv21
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - col_clip
    linkageType: ''
    returnType: void
    signature: void gf_yuv_load_lines_nv12_nv21(unsigned char *dst, s32 dststride,
      unsigned char *y_src, unsigned char *u_src, unsigned char *v_src, s32 y_stride,
      s32 width, Bool dst_yuv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_yuv_load_lines_nv12_nv21
      Src: /src/gpac/src/utils/color.c:1796,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 9
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - pU
    - dst_yuv
    argTypes:
    - char*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1797
      start: 1787
    functionDepth: 2
    functionLinenumber: 1787
    functionLinenumberEnd: 1797
    functionName: load_line_nv12
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - gf_yuv_load_lines_nv12_nv21
    linkageType: ''
    returnType: void
    signature: void load_line_nv12(char *src_bits, u32 x_offset, u32 y_offset, u32
      y_pitch, u32 width, u32 height, u8 *dst_bits, u8 *pU, Bool dst_yuv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_yuv_load_lines_nv12_nv21
      Src: /src/gpac/src/utils/color.c:1807,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 9
    argNames:
    - src_bits
    - x_offset
    - y_offset
    - y_pitch
    - width
    - height
    - dst_bits
    - pU
    - dst_yuv
    argTypes:
    - char*
    - u32
    - u32
    - u32
    - u32
    - u32
    - u8*
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1808
      start: 1798
    functionDepth: 2
    functionLinenumber: 1798
    functionLinenumberEnd: 1808
    functionName: load_line_nv21
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - gf_yuv_load_lines_nv12_nv21
    linkageType: ''
    returnType: void
    signature: void load_line_nv21(char *src_bits, u32 x_offset, u32 y_offset, u32
      y_pitch, u32 width, u32 height, u8 *dst_bits, u8 *pU, Bool dst_yuv)
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 1
    argNames:
    - in_pf
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1832
      start: 1812
    functionDepth: 0
    functionLinenumber: 1812
    functionLinenumberEnd: 1832
    functionName: format_is_yuv
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool format_is_yuv(u32 in_pf)
  - BBCount: 130
    BranchProfiles: []
    Callsites:
    - Dst: format_is_yuv
      Src: /src/gpac/src/utils/color.c:1859,1
    - Dst: color_write_nv12_10_to_yuv
      Src: /src/gpac/src/utils/color.c:1874,1
    - Dst: color_write_nv12_10_to_yuv
      Src: /src/gpac/src/utils/color.c:1877,1
    - Dst: color_write_yv12_10_to_yuv
      Src: /src/gpac/src/utils/color.c:1880,1
    - Dst: color_write_yuv422_10_to_yuv422
      Src: /src/gpac/src/utils/color.c:1884,1
    - Dst: color_write_yuv422_10_to_yuv
      Src: /src/gpac/src/utils/color.c:1886,1
    - Dst: color_write_yuv422_10_to_yuv
      Src: /src/gpac/src/utils/color.c:1888,1
    - Dst: color_write_yuv444_10_to_yuv444
      Src: /src/gpac/src/utils/color.c:1892,1
    - Dst: color_write_yuv444_10_to_yuv
      Src: /src/gpac/src/utils/color.c:1894,1
    - Dst: color_write_yuv444_10_to_yuv
      Src: /src/gpac/src/utils/color.c:1896,1
    - Dst: color_write_yuv420_to_yuv
      Src: /src/gpac/src/utils/color.c:1899,1
    - Dst: color_write_yuv420_to_yuv
      Src: /src/gpac/src/utils/color.c:1902,1
    - Dst: color_write_yuv422_to_yuv
      Src: /src/gpac/src/utils/color.c:1905,1
    - Dst: color_write_yuv444_to_yuv
      Src: /src/gpac/src/utils/color.c:1908,1
    - Dst: color_write_yvyu_to_yuv
      Src: /src/gpac/src/utils/color.c:1914,1
    - Dst: color_write_rgb_to_24
      Src: /src/gpac/src/utils/color.c:1923,1
    - Dst: color_write_rgb_to_32
      Src: /src/gpac/src/utils/color.c:1931,1
    - Dst: yuv2rgb_init
      Src: /src/gpac/src/utils/color.c:1993,1
    - Dst: yuv2rgb_init
      Src: /src/gpac/src/utils/color.c:1997,1
    - Dst: yuv2rgb_init
      Src: /src/gpac/src/utils/color.c:2001,1
    - Dst: yuv2rgb_init
      Src: /src/gpac/src/utils/color.c:2006,1
    - Dst: yuv2rgb_init
      Src: /src/gpac/src/utils/color.c:2010,1
    - Dst: yuv2rgb_init
      Src: /src/gpac/src/utils/color.c:2014,1
    - Dst: yuv2rgb_init
      Src: /src/gpac/src/utils/color.c:2018,1
    - Dst: yuv2rgb_init
      Src: /src/gpac/src/utils/color.c:2022,1
    - Dst: yuv2rgb_init
      Src: /src/gpac/src/utils/color.c:2029,1
    - Dst: yuv2rgb_init
      Src: /src/gpac/src/utils/color.c:2033,1
    - Dst: yuv2rgb_init
      Src: /src/gpac/src/utils/color.c:2038,1
    - Dst: yuv2rgb_init
      Src: /src/gpac/src/utils/color.c:2043,1
    - Dst: yuv2rgb_init
      Src: /src/gpac/src/utils/color.c:2048,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/color.c:2052,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/utils/color.c:2052,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/color.c:2107,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/utils/color.c:2107,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/color.c:2124,1
    - Dst: load_line_yv12
      Src: /src/gpac/src/utils/color.c:2170,1
    - Dst: load_line_yuv422
      Src: /src/gpac/src/utils/color.c:2173,1
    - Dst: load_line_yuv444
      Src: /src/gpac/src/utils/color.c:2176,1
    - Dst: load_line_yv12_10
      Src: /src/gpac/src/utils/color.c:2179,1
    - Dst: load_line_yuv422_10
      Src: /src/gpac/src/utils/color.c:2182,1
    - Dst: load_line_yuv444_10
      Src: /src/gpac/src/utils/color.c:2185,1
    - Dst: load_line_nv21
      Src: /src/gpac/src/utils/color.c:2188,1
    - Dst: load_line_nv12
      Src: /src/gpac/src/utils/color.c:2191,1
    - Dst: load_line_yuva
      Src: /src/gpac/src/utils/color.c:2194,1
    - Dst: gf_cmx_apply_argb
      Src: /src/gpac/src/utils/color.c:2200,1
    - Dst: ABS
      Src: /src/gpac/src/utils/color.c:2208,1
    - Dst: ABS
      Src: /src/gpac/src/utils/color.c:2210,1
    - Dst: ABS
      Src: /src/gpac/src/utils/color.c:2212,1
    - Dst: load_line_yv12
      Src: /src/gpac/src/utils/color.c:2229,1
    - Dst: load_line_yuv422
      Src: /src/gpac/src/utils/color.c:2232,1
    - Dst: load_line_yuv444
      Src: /src/gpac/src/utils/color.c:2235,1
    - Dst: load_line_yv12_10
      Src: /src/gpac/src/utils/color.c:2238,1
    - Dst: load_line_yuv422_10
      Src: /src/gpac/src/utils/color.c:2241,1
    - Dst: load_line_yuv444_10
      Src: /src/gpac/src/utils/color.c:2244,1
    - Dst: load_line_nv21
      Src: /src/gpac/src/utils/color.c:2247,1
    - Dst: load_line_nv12
      Src: /src/gpac/src/utils/color.c:2250,1
    - Dst: load_line_yuva
      Src: /src/gpac/src/utils/color.c:2253,1
    - Dst: gf_cmx_apply_argb
      Src: /src/gpac/src/utils/color.c:2261,1
    - Dst: ABS
      Src: /src/gpac/src/utils/color.c:2269,1
    - Dst: ABS
      Src: /src/gpac/src/utils/color.c:2271,1
    - Dst: ABS
      Src: /src/gpac/src/utils/color.c:2273,1
    - Dst: load_line
      Src: /src/gpac/src/utils/color.c:2287,1
    - Dst: gf_cmx_apply_argb
      Src: /src/gpac/src/utils/color.c:2292,1
    - Dst: ABS
      Src: /src/gpac/src/utils/color.c:2300,1
    - Dst: ABS
      Src: /src/gpac/src/utils/color.c:2302,1
    - Dst: ABS
      Src: /src/gpac/src/utils/color.c:2304,1
    - Dst: copy_row
      Src: /src/gpac/src/utils/color.c:2316,1
    - Dst: copy_row
      Src: /src/gpac/src/utils/color.c:2320,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/color.c:2322,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/color.c:2332,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/color.c:2333,1
    CyclomaticComplexity: 150
    EdgeCount: 150
    ICount: 444
    argCount: 8
    argNames:
    - dst
    - src
    - dst_wnd
    - src_wnd
    - alpha
    - flip
    - key
    - cmat
    argTypes:
    - GF_VideoSurface*
    - GF_VideoSurface*
    - GF_Window*
    - GF_Window*
    - u8
    - Bool
    - GF_ColorKey*
    - GF_ColorMatrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2335
      start: 1834
    functionDepth: 4
    functionLinenumber: 1834
    functionLinenumberEnd: 2335
    functionName: gf_stretch_bits
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 9
    functionsReached:
    - gf_free
    - load_line_yuv444_10
    - yuv2rgb_init
    - color_write_yuv444_10_to_yuv444
    - color_write_rgb_to_24
    - color_write_yvyu_to_yuv
    - color_write_yuv420_to_yuv
    - load_line_yv12
    - load_line_yuv422
    - load_line_nv12
    - copy_row
    - memcpy
    - color_write_yuv422_10_to_yuv422
    - load_line_yuva
    - color_write_rgb_to_32
    - color_write_yv12_10_to_yuv
    - load_line
    - gf_pixel_fmt_name
    - format_is_yuv
    - GF_LOG
    - color_write_nv12_10_to_yuv
    - gf_cmx_apply_argb
    - load_line_yv12_10
    - gf_malloc
    - ABS
    - load_line_nv21
    - load_line_yuv444
    - load_line_yuv422_10
    - color_write_yuv444_10_to_yuv
    - color_write_yuv422_10_to_yuv
    - color_write_yuv422_to_yuv
    - color_write_yuv444_to_yuv
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_stretch_bits(GF_VideoSurface *dst, GF_VideoSurface *src,
      GF_Window *dst_wnd, GF_Window *src_wnd, u8 alpha, Bool flip, GF_ColorKey *key,
      GF_ColorMatrix *cmat)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - dst
    - src
    - dst_wnd
    - src_wnd
    - alpha
    - flip
    - key
    - cmat
    argTypes:
    - GF_VideoSurface*
    - GF_VideoSurface*
    - GF_Window*
    - GF_Window*
    - u8
    - Bool
    - GF_ColorKey*
    - GF_ColorMatrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2342
      start: 2338
    functionDepth: 0
    functionLinenumber: 2338
    functionLinenumberEnd: 2342
    functionName: gf_stretch_bits
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_stretch_bits(GF_VideoSurface *dst, GF_VideoSurface *src,
      GF_Window *dst_wnd, GF_Window *src_wnd, u8 alpha, Bool flip, GF_ColorKey *key,
      GF_ColorMatrix *cmat)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/utils/color.c:2354,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - _this
    argTypes:
    - GF_ColorMatrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2357
      start: 2350
    functionDepth: 0
    functionLinenumber: 2350
    functionLinenumberEnd: 2357
    functionName: gf_cmx_init
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 8
    functionsReached:
    - memset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cmx_init(GF_ColorMatrix *_this)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_cmx_init
      Src: /src/gpac/src/utils/color.c:2363,1
    - Dst: memcmp
      Src: /src/gpac/src/utils/color.c:2364,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - _this
    argTypes:
    - GF_ColorMatrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2365
      start: 2360
    functionDepth: 1
    functionLinenumber: 2360
    functionLinenumberEnd: 2365
    functionName: gf_cmx_identity
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - gf_cmx_init
    - memcmp
    linkageType: ''
    returnType: void
    signature: void gf_cmx_identity(GF_ColorMatrix *_this)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_cmx_identity
      Src: /src/gpac/src/utils/color.c:2395,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 21
    argNames:
    - _this
    - c1
    - c2
    - c3
    - c4
    - c5
    - c6
    - c7
    - c8
    - c9
    - c10
    - c11
    - c12
    - c13
    - c14
    - c15
    - c16
    - c17
    - c18
    - c19
    - c20
    argTypes:
    - GF_ColorMatrix*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2396
      start: 2367
    functionDepth: 2
    functionLinenumber: 2367
    functionLinenumberEnd: 2396
    functionName: gf_cmx_set
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 1
    functionsReached:
    - gf_cmx_identity
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_cmx_set(GF_ColorMatrix *_this,\n                Fixed
      c1, Fixed c2, Fixed c3, Fixed c4, Fixed c5,\n                Fixed c6, Fixed
      c7, Fixed c8, Fixed c9, Fixed c10,\n                Fixed c11, Fixed c12, Fixed
      c13, Fixed c14, Fixed c15,\n                Fixed c16, Fixed c17, Fixed c18,
      Fixed c19, Fixed c20)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/utils/color.c:2402,1
    - Dst: gf_cmx_identity
      Src: /src/gpac/src/utils/color.c:2403,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - _this
    - from
    argTypes:
    - GF_ColorMatrix*
    - GF_ColorMatrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2404
      start: 2398
    functionDepth: 2
    functionLinenumber: 2398
    functionLinenumberEnd: 2404
    functionName: gf_cmx_copy
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 7
    functionsReached:
    - memcpy
    - gf_cmx_identity
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cmx_copy(GF_ColorMatrix *_this, GF_ColorMatrix *from)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_cmx_copy
      Src: /src/gpac/src/utils/color.c:2413,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2417,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2417,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2417,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2417,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2418,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2418,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2418,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2418,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2419,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2419,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2419,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2419,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2420,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2420,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2420,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2420,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2421,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2421,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2421,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2421,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2423,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2423,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2423,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2423,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2424,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2424,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2424,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2424,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2425,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2425,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2425,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2425,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2426,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2426,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2426,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2426,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2427,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2427,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2427,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2427,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2429,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2429,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2429,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2429,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2430,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2430,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2430,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2430,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2431,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2431,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2431,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2431,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2432,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2432,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2432,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2432,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2433,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2433,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2433,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2433,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2435,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2435,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2435,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2435,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2436,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2436,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2436,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2436,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2437,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2437,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2437,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2437,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2438,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2438,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2438,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2438,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2439,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2439,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2439,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2439,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/color.c:2440,1
    - Dst: gf_cmx_identity
      Src: /src/gpac/src/utils/color.c:2441,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 2
    argNames:
    - _this
    - w
    argTypes:
    - GF_ColorMatrix*
    - GF_ColorMatrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2442
      start: 2407
    functionDepth: 3
    functionLinenumber: 2407
    functionLinenumberEnd: 2442
    functionName: gf_cmx_multiply
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 3
    functionsReached:
    - memcpy
    - gf_cmx_identity
    - gf_cmx_copy
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cmx_multiply(GF_ColorMatrix *_this, GF_ColorMatrix *w)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2445
      start: 2444
    functionDepth: 0
    functionLinenumber: 2444
    functionLinenumberEnd: 2445
    functionName: CLIP_COMP
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CLIP_COMP(val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/utils/color.c:2452,1
    - Dst: INT2FIX
      Src: /src/gpac/src/utils/color.c:2453,1
    - Dst: INT2FIX
      Src: /src/gpac/src/utils/color.c:2454,1
    - Dst: INT2FIX
      Src: /src/gpac/src/utils/color.c:2455,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2456,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2456,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2456,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2456,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2457,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2457,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2457,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2457,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2458,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2458,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2458,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2458,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2459,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2459,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2459,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2459,1
    - Dst: CLIP_COMP
      Src: /src/gpac/src/utils/color.c:2460,1
    - Dst: CLIP_COMP
      Src: /src/gpac/src/utils/color.c:2461,1
    - Dst: CLIP_COMP
      Src: /src/gpac/src/utils/color.c:2462,1
    - Dst: CLIP_COMP
      Src: /src/gpac/src/utils/color.c:2463,1
    - Dst: FIX2INT
      Src: /src/gpac/src/utils/color.c:2465,1
    - Dst: FIX2INT
      Src: /src/gpac/src/utils/color.c:2466,1
    - Dst: FIX2INT
      Src: /src/gpac/src/utils/color.c:2467,1
    - Dst: FIX2INT
      Src: /src/gpac/src/utils/color.c:2468,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 5
    argNames:
    - _this
    - a_
    - r_
    - g_
    - b_
    argTypes:
    - GF_ColorMatrix*
    - u8*
    - u8*
    - u8*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2469
      start: 2446
    functionDepth: 1
    functionLinenumber: 2446
    functionLinenumberEnd: 2469
    functionName: gf_cmx_apply_argb
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 1
    functionsReached:
    - FIX2INT
    - INT2FIX
    - gf_mulfix
    - CLIP_COMP
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cmx_apply_argb(GF_ColorMatrix *_this, u8 *a_, u8 *r_,
      u8 *g_, u8 *b_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/utils/color.c:2478,1
    - Dst: INT2FIX
      Src: /src/gpac/src/utils/color.c:2480,1
    - Dst: INT2FIX
      Src: /src/gpac/src/utils/color.c:2482,1
    - Dst: INT2FIX
      Src: /src/gpac/src/utils/color.c:2484,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2486,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2486,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2486,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2486,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2487,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2487,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2487,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2487,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2488,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2488,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2488,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2488,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2489,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2489,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2489,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2489,1
    - Dst: CLIP_COMP
      Src: /src/gpac/src/utils/color.c:2490,1
    - Dst: CLIP_COMP
      Src: /src/gpac/src/utils/color.c:2491,1
    - Dst: CLIP_COMP
      Src: /src/gpac/src/utils/color.c:2492,1
    - Dst: CLIP_COMP
      Src: /src/gpac/src/utils/color.c:2493,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/utils/color.c:2494,1
    - Dst: FIX2INT
      Src: /src/gpac/src/utils/color.c:2494,1
    - Dst: FIX2INT
      Src: /src/gpac/src/utils/color.c:2494,1
    - Dst: FIX2INT
      Src: /src/gpac/src/utils/color.c:2494,1
    - Dst: FIX2INT
      Src: /src/gpac/src/utils/color.c:2494,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 2
    argNames:
    - _this
    - col
    argTypes:
    - GF_ColorMatrix*
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2495
      start: 2472
    functionDepth: 1
    functionLinenumber: 2472
    functionLinenumberEnd: 2495
    functionName: gf_cmx_apply
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 6
    functionsReached:
    - INT2FIX
    - CLIP_COMP
    - GF_COL_ARGB
    - FIX2INT
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cmx_apply(GF_ColorMatrix *_this, GF_Color col)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/utils/color.c:2504,1
    - Dst: INT2FIX
      Src: /src/gpac/src/utils/color.c:2506,1
    - Dst: INT2FIX
      Src: /src/gpac/src/utils/color.c:2508,1
    - Dst: INT2FIX
      Src: /src/gpac/src/utils/color.c:2510,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2512,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2512,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2512,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2512,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2513,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2513,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2513,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2513,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2514,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2514,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2514,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2514,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2515,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2515,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2515,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/color.c:2515,1
    - Dst: CLIP_COMP
      Src: /src/gpac/src/utils/color.c:2516,1
    - Dst: CLIP_COMP
      Src: /src/gpac/src/utils/color.c:2517,1
    - Dst: CLIP_COMP
      Src: /src/gpac/src/utils/color.c:2518,1
    - Dst: CLIP_COMP
      Src: /src/gpac/src/utils/color.c:2519,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 27
    argCount: 2
    argNames:
    - _this
    - col
    argTypes:
    - GF_ColorMatrix*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2528
      start: 2497
    functionDepth: 1
    functionLinenumber: 2497
    functionLinenumberEnd: 2528
    functionName: gf_cmx_apply_wide
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 3
    functionsReached:
    - INT2FIX
    - gf_mulfix
    - CLIP_COMP
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cmx_apply_wide(GF_ColorMatrix *_this, u64 col)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/utils/color.c:2533,1
    - Dst: gf_cmx_apply
      Src: /src/gpac/src/utils/color.c:2534,1
    - Dst: INT2FIX
      Src: /src/gpac/src/utils/color.c:2535,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/utils/color.c:2535,1
    - Dst: INT2FIX
      Src: /src/gpac/src/utils/color.c:2536,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/utils/color.c:2536,1
    - Dst: INT2FIX
      Src: /src/gpac/src/utils/color.c:2537,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/utils/color.c:2537,1
    - Dst: INT2FIX
      Src: /src/gpac/src/utils/color.c:2538,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/utils/color.c:2538,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 5
    argNames:
    - _this
    - a
    - r
    - g
    - b
    argTypes:
    - GF_ColorMatrix*
    - Fixed*
    - Fixed*
    - Fixed*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2539
      start: 2530
    functionDepth: 2
    functionLinenumber: 2530
    functionLinenumberEnd: 2539
    functionName: gf_cmx_apply_fixed
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 1
    functionsReached:
    - GF_COL_ARGB_FIXED
    - gf_cmx_apply
    - INT2FIX
    - GF_COL_G
    - GF_COL_B
    - GF_COL_A
    - GF_COL_R
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cmx_apply_fixed(GF_ColorMatrix *_this, Fixed *a, Fixed
      *r, Fixed *g, Fixed *b)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2598,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2599,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2600,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2601,1
    - Dst: _mm_packus_epi16
      Src: /src/gpac/src/utils/color.c:2602,1
    - Dst: _mm_store_si128
      Src: /src/gpac/src/utils/color.c:2603,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2614,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2615,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2616,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2617,1
    - Dst: _mm_packus_epi16
      Src: /src/gpac/src/utils/color.c:2618,1
    - Dst: _mm_store_si128
      Src: /src/gpac/src/utils/color.c:2619,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2630,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2631,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2632,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2633,1
    - Dst: _mm_packus_epi16
      Src: /src/gpac/src/utils/color.c:2634,1
    - Dst: _mm_store_si128
      Src: /src/gpac/src/utils/color.c:2635,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 65
    argCount: 9
    argNames:
    - vs_dst
    - pY
    - pU
    - pV
    - src_stride
    - src_width
    - src_height
    - _src_wnd
    - swap_uv
    argTypes:
    - GF_VideoSurface*
    - unsigned char*
    - unsigned char*
    - unsigned char*
    - u32
    - u32
    - u32
    - GF_Window*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2640
      start: 2560
    functionDepth: 0
    functionLinenumber: 2560
    functionLinenumberEnd: 2640
    functionName: color_write_yv12_10_to_yuv_intrin
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - _mm_packus_epi16
    - _mm_load_si128
    - _mm_srli_epi16
    - _mm_store_si128
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err color_write_yv12_10_to_yuv_intrin(GF_VideoSurface *vs_dst, unsigned
      char *pY, unsigned char *pU, unsigned char*pV, u32 src_stride, u32 src_width,
      u32 src_height, const GF_Window *_src_wnd, Bool swap_uv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2676,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2677,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2678,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2679,1
    - Dst: _mm_packus_epi16
      Src: /src/gpac/src/utils/color.c:2680,1
    - Dst: _mm_store_si128
      Src: /src/gpac/src/utils/color.c:2681,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2692,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2693,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2694,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2695,1
    - Dst: _mm_packus_epi16
      Src: /src/gpac/src/utils/color.c:2696,1
    - Dst: _mm_store_si128
      Src: /src/gpac/src/utils/color.c:2697,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2708,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2709,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2710,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2711,1
    - Dst: _mm_packus_epi16
      Src: /src/gpac/src/utils/color.c:2712,1
    - Dst: _mm_store_si128
      Src: /src/gpac/src/utils/color.c:2713,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 63
    argCount: 9
    argNames:
    - vs_dst
    - pY
    - pU
    - pV
    - src_stride
    - src_width
    - src_height
    - _src_wnd
    - swap_uv
    argTypes:
    - GF_VideoSurface*
    - unsigned char*
    - unsigned char*
    - unsigned char*
    - u32
    - u32
    - u32
    - GF_Window*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2718
      start: 2642
    functionDepth: 0
    functionLinenumber: 2642
    functionLinenumberEnd: 2718
    functionName: color_write_yuv422_10_to_yuv422_intrin
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - _mm_packus_epi16
    - _mm_load_si128
    - _mm_srli_epi16
    - _mm_store_si128
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err color_write_yuv422_10_to_yuv422_intrin(GF_VideoSurface *vs_dst,  unsigned
      char *pY, unsigned char *pU, unsigned char*pV, u32 src_stride, u32 src_width,
      u32 src_height, const GF_Window *_src_wnd, Bool swap_uv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2754,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2755,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2756,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2757,1
    - Dst: _mm_packus_epi16
      Src: /src/gpac/src/utils/color.c:2758,1
    - Dst: _mm_store_si128
      Src: /src/gpac/src/utils/color.c:2759,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2770,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2771,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2772,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2773,1
    - Dst: _mm_packus_epi16
      Src: /src/gpac/src/utils/color.c:2774,1
    - Dst: _mm_store_si128
      Src: /src/gpac/src/utils/color.c:2775,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2786,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2787,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2788,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2789,1
    - Dst: _mm_packus_epi16
      Src: /src/gpac/src/utils/color.c:2790,1
    - Dst: _mm_store_si128
      Src: /src/gpac/src/utils/color.c:2791,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 63
    argCount: 9
    argNames:
    - vs_dst
    - pY
    - pU
    - pV
    - src_stride
    - src_width
    - src_height
    - _src_wnd
    - swap_uv
    argTypes:
    - GF_VideoSurface*
    - unsigned char*
    - unsigned char*
    - unsigned char*
    - u32
    - u32
    - u32
    - GF_Window*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2796
      start: 2720
    functionDepth: 0
    functionLinenumber: 2720
    functionLinenumberEnd: 2796
    functionName: color_write_yuv444_10_to_yuv444_intrin
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - _mm_packus_epi16
    - _mm_load_si128
    - _mm_srli_epi16
    - _mm_store_si128
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err color_write_yuv444_10_to_yuv444_intrin(GF_VideoSurface *vs_dst,
      unsigned char *pY, unsigned char *pU, unsigned char*pV, u32 src_stride, u32
      src_width, u32 src_height, const GF_Window *_src_wnd, Bool swap_uv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2832,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2833,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2834,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2835,1
    - Dst: _mm_packus_epi16
      Src: /src/gpac/src/utils/color.c:2836,1
    - Dst: _mm_store_si128
      Src: /src/gpac/src/utils/color.c:2837,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2848,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2849,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2850,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2851,1
    - Dst: _mm_packus_epi16
      Src: /src/gpac/src/utils/color.c:2852,1
    - Dst: _mm_store_si128
      Src: /src/gpac/src/utils/color.c:2853,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2864,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2865,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2866,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2867,1
    - Dst: _mm_packus_epi16
      Src: /src/gpac/src/utils/color.c:2868,1
    - Dst: _mm_store_si128
      Src: /src/gpac/src/utils/color.c:2869,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 63
    argCount: 9
    argNames:
    - vs_dst
    - pY
    - pU
    - pV
    - src_stride
    - src_width
    - src_height
    - _src_wnd
    - swap_uv
    argTypes:
    - GF_VideoSurface*
    - unsigned char*
    - unsigned char*
    - unsigned char*
    - u32
    - u32
    - u32
    - GF_Window*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2874
      start: 2797
    functionDepth: 0
    functionLinenumber: 2797
    functionLinenumberEnd: 2874
    functionName: color_write_yuv422_10_to_yuv_intrin
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - _mm_packus_epi16
    - _mm_load_si128
    - _mm_srli_epi16
    - _mm_store_si128
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err color_write_yuv422_10_to_yuv_intrin(GF_VideoSurface *vs_dst,
      unsigned char *pY, unsigned char *pU, unsigned char*pV, u32 src_stride, u32
      src_width, u32 src_height, const GF_Window *_src_wnd, Bool swap_uv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2910,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2911,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2912,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2913,1
    - Dst: _mm_packus_epi16
      Src: /src/gpac/src/utils/color.c:2914,1
    - Dst: _mm_store_si128
      Src: /src/gpac/src/utils/color.c:2915,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2928,1
    - Dst: _mm_srli_epi32
      Src: /src/gpac/src/utils/color.c:2929,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2930,1
    - Dst: _mm_srli_epi32
      Src: /src/gpac/src/utils/color.c:2931,1
    - Dst: _mm_packs_epi32
      Src: /src/gpac/src/utils/color.c:2932,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2933,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2935,1
    - Dst: _mm_srli_epi32
      Src: /src/gpac/src/utils/color.c:2937,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2938,1
    - Dst: _mm_srli_epi32
      Src: /src/gpac/src/utils/color.c:2940,1
    - Dst: _mm_packs_epi32
      Src: /src/gpac/src/utils/color.c:2941,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2942,1
    - Dst: _mm_packus_epi16
      Src: /src/gpac/src/utils/color.c:2944,1
    - Dst: _mm_store_si128
      Src: /src/gpac/src/utils/color.c:2945,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2959,1
    - Dst: _mm_srli_epi32
      Src: /src/gpac/src/utils/color.c:2961,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2962,1
    - Dst: _mm_srli_epi32
      Src: /src/gpac/src/utils/color.c:2964,1
    - Dst: _mm_packs_epi32
      Src: /src/gpac/src/utils/color.c:2965,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2966,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2968,1
    - Dst: _mm_srli_epi32
      Src: /src/gpac/src/utils/color.c:2970,1
    - Dst: _mm_load_si128
      Src: /src/gpac/src/utils/color.c:2971,1
    - Dst: _mm_srli_epi32
      Src: /src/gpac/src/utils/color.c:2973,1
    - Dst: _mm_packs_epi32
      Src: /src/gpac/src/utils/color.c:2974,1
    - Dst: _mm_srli_epi16
      Src: /src/gpac/src/utils/color.c:2975,1
    - Dst: _mm_packus_epi16
      Src: /src/gpac/src/utils/color.c:2977,1
    - Dst: _mm_store_si128
      Src: /src/gpac/src/utils/color.c:2978,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 83
    argCount: 9
    argNames:
    - vs_dst
    - pY
    - pU
    - pV
    - src_stride
    - src_width
    - src_height
    - _src_wnd
    - swap_uv
    argTypes:
    - GF_VideoSurface*
    - unsigned char*
    - unsigned char*
    - unsigned char*
    - u32
    - u32
    - u32
    - GF_Window*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2984
      start: 2875
    functionDepth: 0
    functionLinenumber: 2875
    functionLinenumberEnd: 2984
    functionName: color_write_yuv444_10_to_yuv_intrin
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached:
    - _mm_packs_epi32
    - _mm_srli_epi16
    - _mm_srli_epi32
    - _mm_store_si128
    - _mm_packus_epi16
    - _mm_load_si128
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err color_write_yuv444_10_to_yuv_intrin(GF_VideoSurface *vs_dst,
      unsigned char *pY, unsigned char *pU, unsigned char*pV, u32 src_stride, u32
      src_width, u32 src_height, const GF_Window *_src_wnd, Bool swap_uv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3017,1
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3018,1
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3019,1
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3020,1
    - Dst: color_write_yv12_10_to_yuv_intrin
      Src: /src/gpac/src/utils/color.c:3022,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 50
    argCount: 4
    argNames:
    - vs_dst
    - vs_src
    - _src_wnd
    - swap_uv
    argTypes:
    - GF_VideoSurface*
    - GF_VideoSurface*
    - GF_Window*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3076
      start: 2988
    functionDepth: 1
    functionLinenumber: 2988
    functionLinenumberEnd: 3076
    functionName: color_write_yv12_10_to_yuv
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 2
    functionsReached:
    - GFINTCAST
    - color_write_yv12_10_to_yuv_intrin
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err color_write_yv12_10_to_yuv(GF_VideoSurface *vs_dst, GF_VideoSurface
      *vs_src, const GF_Window *_src_wnd, Bool swap_uv)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3103,1
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3104,1
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3105,1
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3106,1
    - Dst: gf_color_write_yv12_10_to_yuv_intrin
      Src: /src/gpac/src/utils/color.c:3108,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 48
    argCount: 4
    argNames:
    - vs_dst
    - vs_src
    - _src_wnd
    - swap_uv
    argTypes:
    - GF_VideoSurface*
    - GF_VideoSurface*
    - GF_Window*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3161
      start: 3078
    functionDepth: 0
    functionLinenumber: 3078
    functionLinenumberEnd: 3161
    functionName: color_write_nv12_10_to_yuv
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 1
    functionsReached:
    - GFINTCAST
    - gf_color_write_yv12_10_to_yuv_intrin
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err color_write_nv12_10_to_yuv(GF_VideoSurface *vs_dst, GF_VideoSurface
      *vs_src, GF_Window *_src_wnd, Bool swap_uv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3188,1
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3189,1
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3190,1
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3191,1
    - Dst: color_write_yuv422_10_to_yuv422_intrin
      Src: /src/gpac/src/utils/color.c:3193,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 46
    argCount: 4
    argNames:
    - vs_dst
    - vs_src
    - _src_wnd
    - swap_uv
    argTypes:
    - GF_VideoSurface*
    - GF_VideoSurface*
    - GF_Window*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3243
      start: 3163
    functionDepth: 1
    functionLinenumber: 3163
    functionLinenumberEnd: 3243
    functionName: color_write_yuv422_10_to_yuv422
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 1
    functionsReached:
    - color_write_yuv422_10_to_yuv422_intrin
    - GFINTCAST
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err color_write_yuv422_10_to_yuv422(GF_VideoSurface *vs_dst, GF_VideoSurface
      *vs_src, GF_Window *_src_wnd, Bool swap_uv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3270,1
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3271,1
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3272,1
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3273,1
    - Dst: color_write_yuv444_10_to_yuv444_intrin
      Src: /src/gpac/src/utils/color.c:3275,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 42
    argCount: 4
    argNames:
    - vs_dst
    - vs_src
    - _src_wnd
    - swap_uv
    argTypes:
    - GF_VideoSurface*
    - GF_VideoSurface*
    - GF_Window*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3324
      start: 3245
    functionDepth: 1
    functionLinenumber: 3245
    functionLinenumberEnd: 3324
    functionName: color_write_yuv444_10_to_yuv444
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 1
    functionsReached:
    - GFINTCAST
    - color_write_yuv444_10_to_yuv444_intrin
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err color_write_yuv444_10_to_yuv444(GF_VideoSurface *vs_dst, GF_VideoSurface
      *vs_src, GF_Window *_src_wnd, Bool swap_uv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3351,1
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3352,1
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3353,1
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3354,1
    - Dst: color_write_yuv422_10_to_yuv_intrin
      Src: /src/gpac/src/utils/color.c:3356,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 4
    argNames:
    - vs_dst
    - vs_src
    - _src_wnd
    - swap_uv
    argTypes:
    - GF_VideoSurface*
    - GF_VideoSurface*
    - GF_Window*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3416
      start: 3326
    functionDepth: 1
    functionLinenumber: 3326
    functionLinenumberEnd: 3416
    functionName: color_write_yuv422_10_to_yuv
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 1
    functionsReached:
    - GFINTCAST
    - color_write_yuv422_10_to_yuv_intrin
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err color_write_yuv422_10_to_yuv(GF_VideoSurface *vs_dst, GF_VideoSurface
      *vs_src, GF_Window *_src_wnd, Bool swap_uv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3443,1
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3444,1
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3445,1
    - Dst: GFINTCAST
      Src: /src/gpac/src/utils/color.c:3446,1
    - Dst: color_write_yuv444_10_to_yuv_intrin
      Src: /src/gpac/src/utils/color.c:3448,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 52
    argCount: 4
    argNames:
    - vs_dst
    - vs_src
    - _src_wnd
    - swap_uv
    argTypes:
    - GF_VideoSurface*
    - GF_VideoSurface*
    - GF_Window*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3514
      start: 3418
    functionDepth: 1
    functionLinenumber: 3418
    functionLinenumberEnd: 3514
    functionName: color_write_yuv444_10_to_yuv
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 1
    functionsReached:
    - GFINTCAST
    - color_write_yuv444_10_to_yuv_intrin
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err color_write_yuv444_10_to_yuv(GF_VideoSurface *vs_dst, GF_VideoSurface
      *vs_src, GF_Window *_src_wnd, Bool swap_uv)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - pf
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3529
      start: 3516
    functionDepth: 0
    functionLinenumber: 3516
    functionLinenumberEnd: 3529
    functionName: is_planar_yuv
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool is_planar_yuv(u32 pf)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: is_planar_yuv
      Src: /src/gpac/src/utils/color.c:3563,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/color.c:3566,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/color.c:3567,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/color.c:3568,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/color.c:3570,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/color.c:3571,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/color.c:3574,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/color.c:3575,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/color.c:3589,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/color.c:3593,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/color.c:3596,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 143
    argCount: 4
    argNames:
    - vs_dst
    - vs_src
    - _src_wnd
    - swap_uv
    argTypes:
    - GF_VideoSurface*
    - GF_VideoSurface*
    - GF_Window*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3707
      start: 3532
    functionDepth: 1
    functionLinenumber: 3532
    functionLinenumberEnd: 3707
    functionName: color_write_yuv420_to_yuv
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 1
    functionsReached:
    - memcpy
    - gf_assert
    - is_planar_yuv
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err color_write_yuv420_to_yuv(GF_VideoSurface *vs_dst, GF_VideoSurface
      *vs_src, GF_Window *_src_wnd, Bool swap_uv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: is_planar_yuv
      Src: /src/gpac/src/utils/color.c:3739,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/color.c:3751,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/color.c:3757,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/color.c:3758,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 41
    argCount: 4
    argNames:
    - vs_dst
    - vs_src
    - _src_wnd
    - swap_uv
    argTypes:
    - GF_VideoSurface*
    - GF_VideoSurface*
    - GF_Window*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3766
      start: 3709
    functionDepth: 1
    functionLinenumber: 3709
    functionLinenumberEnd: 3766
    functionName: color_write_yuv422_to_yuv
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 1
    functionsReached:
    - memcpy
    - is_planar_yuv
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err color_write_yuv422_to_yuv(GF_VideoSurface *vs_dst, GF_VideoSurface
      *vs_src, GF_Window *_src_wnd, Bool swap_uv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: is_planar_yuv
      Src: /src/gpac/src/utils/color.c:3797,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/color.c:3808,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 45
    argCount: 4
    argNames:
    - vs_dst
    - vs_src
    - _src_wnd
    - swap_uv
    argTypes:
    - GF_VideoSurface*
    - GF_VideoSurface*
    - GF_Window*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3832
      start: 3769
    functionDepth: 1
    functionLinenumber: 3769
    functionLinenumberEnd: 3832
    functionName: color_write_yuv444_to_yuv
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 1
    functionsReached:
    - memcpy
    - is_planar_yuv
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err color_write_yuv444_to_yuv(GF_VideoSurface *vs_dst, GF_VideoSurface
      *vs_src, GF_Window *_src_wnd, Bool swap_uv)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: is_planar_yuv
      Src: /src/gpac/src/utils/color.c:3877,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/color.c:3916,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 128
    argCount: 4
    argNames:
    - vs_dst
    - vs_src
    - _src_wnd
    - swap_uv
    argTypes:
    - GF_VideoSurface*
    - GF_VideoSurface*
    - GF_Window*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3980
      start: 3834
    functionDepth: 1
    functionLinenumber: 3834
    functionLinenumberEnd: 3980
    functionName: color_write_yvyu_to_yuv
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 1
    functionsReached:
    - memcpy
    - is_planar_yuv
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err color_write_yvyu_to_yuv(GF_VideoSurface *vs_dst, GF_VideoSurface
      *vs_src, GF_Window *_src_wnd, Bool swap_uv)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 1
    argNames:
    - pf
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4002
      start: 3983
    functionDepth: 0
    functionLinenumber: 3983
    functionLinenumberEnd: 4002
    functionName: get_bpp
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 get_bpp(u32 pf)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: get_bpp
      Src: /src/gpac/src/utils/color.c:4012,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/color.c:4030,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 3
    argNames:
    - vs_dst
    - vs_src
    - _src_wnd
    argTypes:
    - GF_VideoSurface*
    - GF_VideoSurface*
    - GF_Window*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4034
      start: 4004
    functionDepth: 1
    functionLinenumber: 4004
    functionLinenumberEnd: 4034
    functionName: color_write_rgb_to_24
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 1
    functionsReached:
    - memcpy
    - get_bpp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err color_write_rgb_to_24(GF_VideoSurface *vs_dst, GF_VideoSurface
      *vs_src, GF_Window *_src_wnd)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: get_bpp
      Src: /src/gpac/src/utils/color.c:4043,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/color.c:4063,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 109
    argCount: 3
    argNames:
    - vs_dst
    - vs_src
    - _src_wnd
    argTypes:
    - GF_VideoSurface*
    - GF_VideoSurface*
    - GF_Window*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4158
      start: 4037
    functionDepth: 1
    functionLinenumber: 4037
    functionLinenumberEnd: 4158
    functionName: color_write_rgb_to_32
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 1
    functionsReached:
    - memcpy
    - get_bpp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err color_write_rgb_to_32(GF_VideoSurface *vs_dst, GF_VideoSurface
      *vs_src, GF_Window *_src_wnd)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/utils/color.c:4327,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/color.c:4330,1
    - Dst: strlen
      Src: /src/gpac/src/utils/color.c:4331,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/color.c:4334,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/color.c:4335,1
    - Dst: strlen
      Src: /src/gpac/src/utils/color.c:4336,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/color.c:4342,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/utils/color.c:4343,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/color.c:4347,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4350
      start: 4322
    functionDepth: 1
    functionLinenumber: 4322
    functionLinenumberEnd: 4350
    functionName: gf_color_parse
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 1
    functionsReached:
    - sscanf
    - GF_LOG
    - GF_COL_ARGB
    - strnicmp
    - strcmp
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_color_parse(const char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_R
      Src: /src/gpac/src/utils/color.c:4358,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/utils/color.c:4359,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/utils/color.c:4360,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 1
    argNames:
    - col
    argTypes:
    - GF_Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4370
      start: 4352
    functionDepth: 1
    functionLinenumber: 4352
    functionLinenumberEnd: 4370
    functionName: gf_color_get_name
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 2
    functionsReached:
    - GF_COL_R
    - GF_COL_B
    - GF_COL_G
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_color_get_name(GF_Color col)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/utils/color.c:4378,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - idx
    - col
    - color_name
    argTypes:
    - u32*
    - GF_Color*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4382
      start: 4373
    functionDepth: 1
    functionLinenumber: 4373
    functionLinenumberEnd: 4382
    functionName: gf_color_enum
    functionSourceFile: /src/gpac/src/utils/color.c
    functionUses: 1
    functionsReached:
    - GF_COL_ARGB
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_color_enum(u32 *idx, GF_Color *col, const char **color_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1314
      start: 1313
    functionDepth: 0
    functionLinenumber: 1313
    functionLinenumberEnd: 1314
    functionName: assert
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 351
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: assert(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - A
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1470
      start: 1469
    functionDepth: 0
    functionLinenumber: 1469
    functionLinenumberEnd: 1470
    functionName: is_aligned
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: is_aligned(A)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - A
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1475
      start: 1472
    functionDepth: 0
    functionLinenumber: 1472
    functionLinenumberEnd: 1475
    functionName: align_offset
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: align_offset(A)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1493
      start: 1492
    functionDepth: 0
    functionLinenumber: 1492
    functionLinenumberEnd: 1493
    functionName: MUNMAP_DEFAULT
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MUNMAP_DEFAULT(a, s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1500
      start: 1499
    functionDepth: 0
    functionLinenumber: 1499
    functionLinenumberEnd: 1500
    functionName: MMAP_DEFAULT
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MMAP_DEFAULT(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1511
      start: 1507
    functionDepth: 0
    functionLinenumber: 1507
    functionLinenumberEnd: 1511
    functionName: MMAP_DEFAULT
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MMAP_DEFAULT(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1514
      start: 1513
    functionDepth: 0
    functionLinenumber: 1513
    functionLinenumberEnd: 1514
    functionName: DIRECT_MMAP_DEFAULT
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DIRECT_MMAP_DEFAULT(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: VirtualAlloc
      Src: /src/gpac/src/utils/dlmalloc.c:1519,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - size
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1521
      start: 1518
    functionDepth: 0
    functionLinenumber: 1518
    functionLinenumberEnd: 1521
    functionName: win32mmap
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - VirtualAlloc
    linkageType: ''
    returnType: FORCEINLINE
    signature: FORCEINLINE * win32mmap(size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: VirtualAlloc
      Src: /src/gpac/src/utils/dlmalloc.c:1525,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - size
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1528
      start: 1524
    functionDepth: 0
    functionLinenumber: 1524
    functionLinenumberEnd: 1528
    functionName: win32direct_mmap
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - VirtualAlloc
    linkageType: ''
    returnType: FORCEINLINE
    signature: FORCEINLINE * win32direct_mmap(size_t size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: VirtualQuery
      Src: /src/gpac/src/utils/dlmalloc.c:1535,1
    - Dst: VirtualFree
      Src: /src/gpac/src/utils/dlmalloc.c:1540,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 2
    argNames:
    - ptr
    - size
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1546
      start: 1531
    functionDepth: 0
    functionLinenumber: 1531
    functionLinenumberEnd: 1546
    functionName: win32munmap
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - VirtualQuery
    - VirtualFree
    linkageType: ''
    returnType: FORCEINLINE
    signature: FORCEINLINE win32munmap(void* ptr, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1549
      start: 1548
    functionDepth: 0
    functionLinenumber: 1548
    functionLinenumberEnd: 1549
    functionName: MMAP_DEFAULT
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MMAP_DEFAULT(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1550
      start: 1549
    functionDepth: 0
    functionLinenumber: 1549
    functionLinenumberEnd: 1550
    functionName: MUNMAP_DEFAULT
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MUNMAP_DEFAULT(a, s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1551
      start: 1550
    functionDepth: 0
    functionLinenumber: 1550
    functionLinenumberEnd: 1551
    functionName: DIRECT_MMAP_DEFAULT
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DIRECT_MMAP_DEFAULT(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - addr
    - ','
    - osz
    - ','
    - nsz
    - ','
    - mv
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1557
      start: 1556
    functionDepth: 0
    functionLinenumber: 1556
    functionLinenumberEnd: 1557
    functionName: MREMAP_DEFAULT
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MREMAP_DEFAULT(addr, osz, nsz, mv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - S
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1567
      start: 1566
    functionDepth: 0
    functionLinenumber: 1566
    functionLinenumberEnd: 1567
    functionName: CALL_MORECORE
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CALL_MORECORE(S)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - S
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1569
      start: 1568
    functionDepth: 0
    functionLinenumber: 1568
    functionLinenumberEnd: 1569
    functionName: CALL_MORECORE
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CALL_MORECORE(S)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - S
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1572
      start: 1571
    functionDepth: 0
    functionLinenumber: 1571
    functionLinenumberEnd: 1572
    functionName: CALL_MORECORE
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CALL_MORECORE(S)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1582
      start: 1581
    functionDepth: 0
    functionLinenumber: 1581
    functionLinenumberEnd: 1582
    functionName: CALL_MMAP
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CALL_MMAP(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1584
      start: 1583
    functionDepth: 0
    functionLinenumber: 1583
    functionLinenumberEnd: 1584
    functionName: CALL_MMAP
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CALL_MMAP(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1587
      start: 1586
    functionDepth: 0
    functionLinenumber: 1586
    functionLinenumberEnd: 1587
    functionName: CALL_MUNMAP
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CALL_MUNMAP(a, s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1589
      start: 1588
    functionDepth: 0
    functionLinenumber: 1588
    functionLinenumberEnd: 1589
    functionName: CALL_MUNMAP
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CALL_MUNMAP(a, s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1592
      start: 1591
    functionDepth: 0
    functionLinenumber: 1591
    functionLinenumberEnd: 1592
    functionName: CALL_DIRECT_MMAP
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CALL_DIRECT_MMAP(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1594
      start: 1593
    functionDepth: 0
    functionLinenumber: 1593
    functionLinenumberEnd: 1594
    functionName: CALL_DIRECT_MMAP
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CALL_DIRECT_MMAP(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1599
      start: 1598
    functionDepth: 0
    functionLinenumber: 1598
    functionLinenumberEnd: 1599
    functionName: MMAP
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MMAP(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1600
      start: 1599
    functionDepth: 0
    functionLinenumber: 1599
    functionLinenumberEnd: 1600
    functionName: MUNMAP
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MUNMAP(a, s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1601
      start: 1600
    functionDepth: 0
    functionLinenumber: 1600
    functionLinenumberEnd: 1601
    functionName: DIRECT_MMAP
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DIRECT_MMAP(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1602
      start: 1601
    functionDepth: 0
    functionLinenumber: 1601
    functionLinenumberEnd: 1602
    functionName: CALL_DIRECT_MMAP
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CALL_DIRECT_MMAP(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1603
      start: 1602
    functionDepth: 0
    functionLinenumber: 1602
    functionLinenumberEnd: 1603
    functionName: CALL_MMAP
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CALL_MMAP(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1604
      start: 1603
    functionDepth: 0
    functionLinenumber: 1603
    functionLinenumberEnd: 1604
    functionName: CALL_MUNMAP
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CALL_MUNMAP(a, s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - addr
    - ','
    - osz
    - ','
    - nsz
    - ','
    - mv
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1612
      start: 1611
    functionDepth: 0
    functionLinenumber: 1611
    functionLinenumberEnd: 1612
    functionName: CALL_MREMAP
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CALL_MREMAP(addr, osz, nsz, mv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - addr
    - ','
    - osz
    - ','
    - nsz
    - ','
    - mv
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1614
      start: 1613
    functionDepth: 0
    functionLinenumber: 1613
    functionLinenumberEnd: 1614
    functionName: CALL_MREMAP
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CALL_MREMAP(addr, osz, nsz, mv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - addr
    - ','
    - osz
    - ','
    - nsz
    - ','
    - mv
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1617
      start: 1616
    functionDepth: 0
    functionLinenumber: 1616
    functionLinenumberEnd: 1617
    functionName: CALL_MREMAP
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CALL_MREMAP(addr, osz, nsz, mv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - sl
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1672
      start: 1671
    functionDepth: 0
    functionLinenumber: 1671
    functionLinenumberEnd: 1672
    functionName: INITIAL_LOCK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: INITIAL_LOCK(sl)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - sl
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1673
      start: 1672
    functionDepth: 0
    functionLinenumber: 1672
    functionLinenumberEnd: 1673
    functionName: ACQUIRE_LOCK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ACQUIRE_LOCK(sl)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - sl
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1674
      start: 1673
    functionDepth: 0
    functionLinenumber: 1673
    functionLinenumberEnd: 1674
    functionName: RELEASE_LOCK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RELEASE_LOCK(sl)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - sl
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1675
      start: 1674
    functionDepth: 0
    functionLinenumber: 1674
    functionLinenumberEnd: 1675
    functionName: TRY_LOCK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRY_LOCK(sl)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:1699,1
    - Dst: thr_yield
      Src: /src/gpac/src/utils/dlmalloc.c:1707,1
    - Dst: sched_yield
      Src: /src/gpac/src/utils/dlmalloc.c:1710,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 1
    argNames:
    - sl
    argTypes:
    - MLOCK_T*
    assertStmts:
    - condition: (!sl->threadid)
      pos:
        line_end: 1698
        line_start: 1698
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 1717
      start: 1679
    functionDepth: 0
    functionLinenumber: 1679
    functionLinenumberEnd: 1717
    functionName: pthread_acquire_lock
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - sched_yield
    - assert
    - thr_yield
    linkageType: ''
    returnType: FORCEINLINE
    signature: FORCEINLINE pthread_acquire_lock (MLOCK_T *sl)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:1721,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:1722,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - sl
    argTypes:
    - MLOCK_T*
    assertStmts:
    - condition: (*lp != 0)
      pos:
        line_end: 1720
        line_start: 1720
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (sl->threadid == CURRENT_THREAD)
      pos:
        line_end: 1721
        line_start: 1721
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 1732
      start: 1719
    functionDepth: 0
    functionLinenumber: 1719
    functionLinenumberEnd: 1732
    functionName: pthread_release_lock
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - assert
    linkageType: ''
    returnType: FORCEINLINE
    signature: FORCEINLINE pthread_release_lock (MLOCK_T *sl)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:1751,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - sl
    argTypes:
    - MLOCK_T*
    assertStmts:
    - condition: (!sl->threadid)
      pos:
        line_end: 1750
        line_start: 1750
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 1758
      start: 1734
    functionDepth: 0
    functionLinenumber: 1734
    functionLinenumberEnd: 1758
    functionName: pthread_try_lock
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - assert
    linkageType: ''
    returnType: FORCEINLINE
    signature: FORCEINLINE pthread_try_lock (MLOCK_T *sl)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - sl
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1772
      start: 1771
    functionDepth: 0
    functionLinenumber: 1771
    functionLinenumberEnd: 1772
    functionName: INITIAL_LOCK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: INITIAL_LOCK(sl)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - sl
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1773
      start: 1772
    functionDepth: 0
    functionLinenumber: 1772
    functionLinenumberEnd: 1773
    functionName: ACQUIRE_LOCK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ACQUIRE_LOCK(sl)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - sl
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1774
      start: 1773
    functionDepth: 0
    functionLinenumber: 1773
    functionLinenumberEnd: 1774
    functionName: RELEASE_LOCK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RELEASE_LOCK(sl)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - sl
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1775
      start: 1774
    functionDepth: 0
    functionLinenumber: 1774
    functionLinenumberEnd: 1775
    functionName: TRY_LOCK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRY_LOCK(sl)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: interlockedexchange
      Src: /src/gpac/src/utils/dlmalloc.c:1789,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:1790,1
    - Dst: SleepEx
      Src: /src/gpac/src/utils/dlmalloc.c:1797,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - sl
    argTypes:
    - MLOCK_T*
    assertStmts:
    - condition: (!sl->threadid)
      pos:
        line_end: 1789
        line_start: 1789
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 1799
      start: 1779
    functionDepth: 0
    functionLinenumber: 1779
    functionLinenumberEnd: 1799
    functionName: win32_acquire_lock
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - interlockedexchange
    - SleepEx
    - assert
    linkageType: ''
    returnType: FORCEINLINE
    signature: FORCEINLINE win32_acquire_lock (MLOCK_T *sl)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:1802,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:1803,1
    - Dst: interlockedexchange
      Src: /src/gpac/src/utils/dlmalloc.c:1806,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - sl
    argTypes:
    - MLOCK_T*
    assertStmts:
    - condition: (sl->threadid == CURRENT_THREAD)
      pos:
        line_end: 1801
        line_start: 1801
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (sl->l != 0)
      pos:
        line_end: 1802
        line_start: 1802
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 1808
      start: 1801
    functionDepth: 0
    functionLinenumber: 1801
    functionLinenumberEnd: 1808
    functionName: win32_release_lock
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - assert
    - interlockedexchange
    linkageType: ''
    returnType: FORCEINLINE
    signature: FORCEINLINE win32_release_lock (MLOCK_T *sl)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: interlockedexchange
      Src: /src/gpac/src/utils/dlmalloc.c:1818,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:1819,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - sl
    argTypes:
    - MLOCK_T*
    assertStmts:
    - condition: (!sl->threadid)
      pos:
        line_end: 1818
        line_start: 1818
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 1826
      start: 1810
    functionDepth: 0
    functionLinenumber: 1810
    functionLinenumberEnd: 1826
    functionName: win32_try_lock
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - interlockedexchange
    - assert
    linkageType: ''
    returnType: FORCEINLINE
    signature: FORCEINLINE win32_try_lock (MLOCK_T *sl)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - sl
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1837
      start: 1836
    functionDepth: 0
    functionLinenumber: 1836
    functionLinenumberEnd: 1837
    functionName: INITIAL_LOCK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: INITIAL_LOCK(sl)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - sl
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1838
      start: 1837
    functionDepth: 0
    functionLinenumber: 1837
    functionLinenumberEnd: 1838
    functionName: ACQUIRE_LOCK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ACQUIRE_LOCK(sl)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - sl
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1839
      start: 1838
    functionDepth: 0
    functionLinenumber: 1838
    functionLinenumberEnd: 1839
    functionName: RELEASE_LOCK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RELEASE_LOCK(sl)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - sl
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1840
      start: 1839
    functionDepth: 0
    functionLinenumber: 1839
    functionLinenumberEnd: 1840
    functionName: TRY_LOCK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRY_LOCK(sl)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1851
      start: 1850
    functionDepth: 0
    functionLinenumber: 1850
    functionLinenumberEnd: 1851
    functionName: pthread_mutexattr_settype
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: pthread_mutexattr_settype(x,y)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: pthread_mutexattr_init
      Src: /src/gpac/src/utils/dlmalloc.c:1856,1
    - Dst: pthread_mutexattr_settype
      Src: /src/gpac/src/utils/dlmalloc.c:1857,1
    - Dst: pthread_mutex_init
      Src: /src/gpac/src/utils/dlmalloc.c:1858,1
    - Dst: pthread_mutexattr_destroy
      Src: /src/gpac/src/utils/dlmalloc.c:1859,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - sl
    argTypes:
    - MLOCK_T*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1861
      start: 1854
    functionDepth: 1
    functionLinenumber: 1854
    functionLinenumberEnd: 1861
    functionName: pthread_init_lock
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - pthread_mutexattr_destroy
    - pthread_mutex_init
    - pthread_mutexattr_settype
    - pthread_mutexattr_init
    linkageType: ''
    returnType: int
    signature: int pthread_init_lock (MLOCK_T *sl)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1868
      start: 1867
    functionDepth: 0
    functionLinenumber: 1867
    functionLinenumberEnd: 1868
    functionName: INITIAL_LOCK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: INITIAL_LOCK(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1869
      start: 1868
    functionDepth: 0
    functionLinenumber: 1868
    functionLinenumberEnd: 1869
    functionName: ACQUIRE_LOCK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ACQUIRE_LOCK(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1870
      start: 1869
    functionDepth: 0
    functionLinenumber: 1869
    functionLinenumberEnd: 1870
    functionName: RELEASE_LOCK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RELEASE_LOCK(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1871
      start: 1870
    functionDepth: 0
    functionLinenumber: 1870
    functionLinenumberEnd: 1871
    functionName: TRY_LOCK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRY_LOCK(s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: interlockedcompareexchange
      Src: /src/gpac/src/utils/dlmalloc.c:1884,1
    - Dst: InitializeCriticalSection
      Src: /src/gpac/src/utils/dlmalloc.c:1885,1
    - Dst: interlockedexchange
      Src: /src/gpac/src/utils/dlmalloc.c:1886,1
    - Dst: SleepEx
      Src: /src/gpac/src/utils/dlmalloc.c:1889,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1891
      start: 1877
    functionDepth: 0
    functionLinenumber: 1877
    functionLinenumberEnd: 1891
    functionName: init_malloc_global_mutex
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - InitializeCriticalSection
    - interlockedexchange
    - SleepEx
    - interlockedcompareexchange
    linkageType: ''
    returnType: void
    signature: void init_malloc_global_mutex()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1920
      start: 1919
    functionDepth: 0
    functionLinenumber: 1919
    functionLinenumberEnd: 1920
    functionName: ACQUIRE_MALLOC_GLOBAL_LOCK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ACQUIRE_MALLOC_GLOBAL_LOCK()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1923
      start: 1922
    functionDepth: 0
    functionLinenumber: 1922
    functionLinenumberEnd: 1923
    functionName: RELEASE_MALLOC_GLOBAL_LOCK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RELEASE_MALLOC_GLOBAL_LOCK()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2102
      start: 2101
    functionDepth: 0
    functionLinenumber: 2101
    functionLinenumberEnd: 2102
    functionName: chunk2mem
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: chunk2mem(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - mem
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2103
      start: 2102
    functionDepth: 0
    functionLinenumber: 2102
    functionLinenumberEnd: 2103
    functionName: mem2chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: mem2chunk(mem)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - A
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2105
      start: 2104
    functionDepth: 0
    functionLinenumber: 2104
    functionLinenumberEnd: 2105
    functionName: align_as_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: align_as_chunk(A)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - req
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2113
      start: 2111
    functionDepth: 0
    functionLinenumber: 2111
    functionLinenumberEnd: 2113
    functionName: pad_request
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: pad_request(req)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - req
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2117
      start: 2115
    functionDepth: 0
    functionLinenumber: 2115
    functionLinenumberEnd: 2117
    functionName: request2size
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: request2size(req)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2140
      start: 2139
    functionDepth: 0
    functionLinenumber: 2139
    functionLinenumberEnd: 2140
    functionName: cinuse
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: cinuse(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2141
      start: 2140
    functionDepth: 0
    functionLinenumber: 2140
    functionLinenumberEnd: 2141
    functionName: pinuse
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: pinuse(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2142
      start: 2141
    functionDepth: 0
    functionLinenumber: 2141
    functionLinenumberEnd: 2142
    functionName: is_inuse
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: is_inuse(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2143
      start: 2142
    functionDepth: 0
    functionLinenumber: 2142
    functionLinenumberEnd: 2143
    functionName: is_mmapped
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: is_mmapped(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2145
      start: 2144
    functionDepth: 0
    functionLinenumber: 2144
    functionLinenumberEnd: 2145
    functionName: chunksize
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: chunksize(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2147
      start: 2146
    functionDepth: 0
    functionLinenumber: 2146
    functionLinenumberEnd: 2147
    functionName: clear_pinuse
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: clear_pinuse(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - p
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2150
      start: 2149
    functionDepth: 0
    functionLinenumber: 2149
    functionLinenumberEnd: 2150
    functionName: chunk_plus_offset
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: chunk_plus_offset(p, s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - p
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2151
      start: 2150
    functionDepth: 0
    functionLinenumber: 2150
    functionLinenumberEnd: 2151
    functionName: chunk_minus_offset
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: chunk_minus_offset(p, s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2154
      start: 2153
    functionDepth: 0
    functionLinenumber: 2153
    functionLinenumberEnd: 2154
    functionName: next_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: next_chunk(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2155
      start: 2154
    functionDepth: 0
    functionLinenumber: 2154
    functionLinenumberEnd: 2155
    functionName: prev_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: prev_chunk(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2158
      start: 2157
    functionDepth: 0
    functionLinenumber: 2157
    functionLinenumberEnd: 2158
    functionName: next_pinuse
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: next_pinuse(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - p
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2161
      start: 2160
    functionDepth: 0
    functionLinenumber: 2160
    functionLinenumberEnd: 2161
    functionName: get_foot
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: get_foot(p, s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - p
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2162
      start: 2161
    functionDepth: 0
    functionLinenumber: 2161
    functionLinenumberEnd: 2162
    functionName: set_foot
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: set_foot(p, s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - p
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2166
      start: 2164
    functionDepth: 0
    functionLinenumber: 2164
    functionLinenumberEnd: 2166
    functionName: set_size_and_pinuse_of_free_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: set_size_and_pinuse_of_free_chunk(p, s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - p
    - ','
    - s
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2170
      start: 2168
    functionDepth: 0
    functionLinenumber: 2168
    functionLinenumberEnd: 2170
    functionName: set_free_with_pinuse
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: set_free_with_pinuse(p, s, n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2174
      start: 2172
    functionDepth: 0
    functionLinenumber: 2172
    functionLinenumberEnd: 2174
    functionName: overhead_for
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: overhead_for(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2178
      start: 2177
    functionDepth: 0
    functionLinenumber: 2177
    functionLinenumberEnd: 2178
    functionName: calloc_must_clear
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: calloc_must_clear(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2180
      start: 2179
    functionDepth: 0
    functionLinenumber: 2179
    functionLinenumberEnd: 2180
    functionName: calloc_must_clear
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: calloc_must_clear(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2291
      start: 2290
    functionDepth: 0
    functionLinenumber: 2290
    functionLinenumberEnd: 2291
    functionName: leftmost_child
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: leftmost_child(t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - S
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2357
      start: 2356
    functionDepth: 0
    functionLinenumber: 2356
    functionLinenumberEnd: 2357
    functionName: is_mmapped_segment
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: is_mmapped_segment(S)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - S
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2358
      start: 2357
    functionDepth: 0
    functionLinenumber: 2357
    functionLinenumberEnd: 2358
    functionName: is_extern_segment
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: is_extern_segment(S)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2504
      start: 2503
    functionDepth: 0
    functionLinenumber: 2503
    functionLinenumberEnd: 2504
    functionName: ensure_initialization
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ensure_initialization()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - M
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2511
      start: 2510
    functionDepth: 0
    functionLinenumber: 2510
    functionLinenumberEnd: 2511
    functionName: is_global
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: is_global(M)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - M
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2515
      start: 2514
    functionDepth: 0
    functionLinenumber: 2514
    functionLinenumberEnd: 2515
    functionName: is_initialized
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: is_initialized(M)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - M
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2521
      start: 2520
    functionDepth: 0
    functionLinenumber: 2520
    functionLinenumberEnd: 2521
    functionName: use_lock
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: use_lock(M)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - M
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2522
      start: 2521
    functionDepth: 0
    functionLinenumber: 2521
    functionLinenumberEnd: 2522
    functionName: enable_lock
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: enable_lock(M)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - M
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2523
      start: 2522
    functionDepth: 0
    functionLinenumber: 2522
    functionLinenumberEnd: 2523
    functionName: disable_lock
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: disable_lock(M)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - M
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2525
      start: 2524
    functionDepth: 0
    functionLinenumber: 2524
    functionLinenumberEnd: 2525
    functionName: use_mmap
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: use_mmap(M)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - M
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2526
      start: 2525
    functionDepth: 0
    functionLinenumber: 2525
    functionLinenumberEnd: 2526
    functionName: enable_mmap
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: enable_mmap(M)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - M
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2527
      start: 2526
    functionDepth: 0
    functionLinenumber: 2526
    functionLinenumberEnd: 2527
    functionName: disable_mmap
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: disable_mmap(M)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - M
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2529
      start: 2528
    functionDepth: 0
    functionLinenumber: 2528
    functionLinenumberEnd: 2529
    functionName: use_noncontiguous
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: use_noncontiguous(M)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - M
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2530
      start: 2529
    functionDepth: 0
    functionLinenumber: 2529
    functionLinenumberEnd: 2530
    functionName: disable_contiguous
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: disable_contiguous(M)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - M
    - ','
    - L
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2535
      start: 2531
    functionDepth: 0
    functionLinenumber: 2531
    functionLinenumberEnd: 2535
    functionName: set_lock
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: set_lock(M,L)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - S
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2539
      start: 2537
    functionDepth: 0
    functionLinenumber: 2537
    functionLinenumberEnd: 2539
    functionName: page_align
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: page_align(S)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - S
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2544
      start: 2541
    functionDepth: 0
    functionLinenumber: 2541
    functionLinenumberEnd: 2544
    functionName: granularity_align
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: granularity_align(S)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - S
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2549
      start: 2548
    functionDepth: 0
    functionLinenumber: 2548
    functionLinenumberEnd: 2549
    functionName: mmap_align
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: mmap_align(S)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - S
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2551
      start: 2550
    functionDepth: 0
    functionLinenumber: 2550
    functionLinenumberEnd: 2551
    functionName: mmap_align
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: mmap_align(S)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - S
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2558
      start: 2556
    functionDepth: 0
    functionLinenumber: 2556
    functionLinenumberEnd: 2558
    functionName: is_page_aligned
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: is_page_aligned(S)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - S
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2560
      start: 2558
    functionDepth: 0
    functionLinenumber: 2558
    functionLinenumberEnd: 2560
    functionName: is_granularity_aligned
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: is_granularity_aligned(S)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - S
    - ','
    - A
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2564
      start: 2562
    functionDepth: 0
    functionLinenumber: 2562
    functionLinenumberEnd: 2564
    functionName: segment_holds
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: segment_holds(S, A)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 2
    argNames:
    - m
    - addr
    argTypes:
    - mstate
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2574
      start: 2566
    functionDepth: 0
    functionLinenumber: 2566
    functionLinenumberEnd: 2574
    functionName: segment_holding
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: msegmentptr
    signature: msegmentptr segment_holding(mstate m, char* addr)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 2
    argNames:
    - m
    - ss
    argTypes:
    - mstate
    - msegmentptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2585
      start: 2577
    functionDepth: 0
    functionLinenumber: 2577
    functionLinenumberEnd: 2585
    functionName: has_segment_link
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int has_segment_link(mstate m, msegmentptr ss)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - M
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2589
      start: 2588
    functionDepth: 0
    functionLinenumber: 2588
    functionLinenumberEnd: 2589
    functionName: should_trim
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: should_trim(M,s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - M
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2591
      start: 2590
    functionDepth: 0
    functionLinenumber: 2590
    functionLinenumberEnd: 2591
    functionName: should_trim
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: should_trim(M,s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - M
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2613
      start: 2612
    functionDepth: 0
    functionLinenumber: 2612
    functionLinenumberEnd: 2613
    functionName: PREACTION
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PREACTION(M)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - M
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2614
      start: 2613
    functionDepth: 0
    functionLinenumber: 2613
    functionLinenumberEnd: 2614
    functionName: POSTACTION
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: POSTACTION(M)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - M
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2618
      start: 2617
    functionDepth: 0
    functionLinenumber: 2617
    functionLinenumberEnd: 2618
    functionName: PREACTION
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PREACTION(M)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - m
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2643
      start: 2642
    functionDepth: 0
    functionLinenumber: 2642
    functionLinenumberEnd: 2643
    functionName: CORRUPTION_ERROR_ACTION
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CORRUPTION_ERROR_ACTION(m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - m
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2649
      start: 2648
    functionDepth: 0
    functionLinenumber: 2648
    functionLinenumberEnd: 2649
    functionName: CORRUPTION_ERROR_ACTION
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CORRUPTION_ERROR_ACTION(m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - m
    - ','
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2653
      start: 2652
    functionDepth: 0
    functionLinenumber: 2652
    functionLinenumberEnd: 2653
    functionName: USAGE_ERROR_ACTION
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: USAGE_ERROR_ACTION(m,p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - M
    - ','
    - P
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2670
      start: 2669
    functionDepth: 0
    functionLinenumber: 2669
    functionLinenumberEnd: 2670
    functionName: check_free_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: check_free_chunk(M,P)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - M
    - ','
    - P
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2671
      start: 2670
    functionDepth: 0
    functionLinenumber: 2670
    functionLinenumberEnd: 2671
    functionName: check_inuse_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: check_inuse_chunk(M,P)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - M
    - ','
    - P
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2672
      start: 2671
    functionDepth: 0
    functionLinenumber: 2671
    functionLinenumberEnd: 2672
    functionName: check_top_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: check_top_chunk(M,P)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - M
    - ','
    - P
    - ','
    - N
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2673
      start: 2672
    functionDepth: 0
    functionLinenumber: 2672
    functionLinenumberEnd: 2673
    functionName: check_malloced_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: check_malloced_chunk(M,P,N)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - M
    - ','
    - P
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2674
      start: 2673
    functionDepth: 0
    functionLinenumber: 2673
    functionLinenumberEnd: 2674
    functionName: check_mmapped_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: check_mmapped_chunk(M,P)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - M
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2675
      start: 2674
    functionDepth: 0
    functionLinenumber: 2674
    functionLinenumberEnd: 2675
    functionName: check_malloc_state
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: check_malloc_state(M)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2693
      start: 2692
    functionDepth: 0
    functionLinenumber: 2692
    functionLinenumberEnd: 2693
    functionName: is_small
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: is_small(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2694
      start: 2693
    functionDepth: 0
    functionLinenumber: 2693
    functionLinenumberEnd: 2694
    functionName: small_index
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: small_index(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2695
      start: 2694
    functionDepth: 0
    functionLinenumber: 2694
    functionLinenumberEnd: 2695
    functionName: small_index2size
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: small_index2size(i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - M
    - ','
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2699
      start: 2698
    functionDepth: 0
    functionLinenumber: 2698
    functionLinenumberEnd: 2699
    functionName: smallbin_at
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: smallbin_at(M, i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - M
    - ','
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2700
      start: 2699
    functionDepth: 0
    functionLinenumber: 2699
    functionLinenumberEnd: 2700
    functionName: treebin_at
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: treebin_at(M,i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - S
    - ','
    - I
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2716
      start: 2703
    functionDepth: 0
    functionLinenumber: 2703
    functionLinenumberEnd: 2716
    functionName: compute_tree_index
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_tree_index(S, I)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - S
    - ','
    - I
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2730
      start: 2718
    functionDepth: 0
    functionLinenumber: 2718
    functionLinenumberEnd: 2730
    functionName: compute_tree_index
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_tree_index(S, I)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - S
    - ','
    - I
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2745
      start: 2732
    functionDepth: 0
    functionLinenumber: 2732
    functionLinenumberEnd: 2745
    functionName: compute_tree_index
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_tree_index(S, I)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - S
    - ','
    - I
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2764
      start: 2747
    functionDepth: 0
    functionLinenumber: 2747
    functionLinenumberEnd: 2764
    functionName: compute_tree_index
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_tree_index(S, I)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2769
      start: 2767
    functionDepth: 0
    functionLinenumber: 2767
    functionLinenumberEnd: 2769
    functionName: bit_for_tree_index
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: bit_for_tree_index(i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2774
      start: 2771
    functionDepth: 0
    functionLinenumber: 2771
    functionLinenumberEnd: 2774
    functionName: leftshift_for_tree_index
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: leftshift_for_tree_index(i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2779
      start: 2776
    functionDepth: 0
    functionLinenumber: 2776
    functionLinenumberEnd: 2779
    functionName: minsize_for_tree_index
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: minsize_for_tree_index(i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2785
      start: 2784
    functionDepth: 0
    functionLinenumber: 2784
    functionLinenumberEnd: 2785
    functionName: idx2bit
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: idx2bit(i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - M
    - ','
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2788
      start: 2787
    functionDepth: 0
    functionLinenumber: 2787
    functionLinenumberEnd: 2788
    functionName: mark_smallmap
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: mark_smallmap(M,i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - M
    - ','
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2789
      start: 2788
    functionDepth: 0
    functionLinenumber: 2788
    functionLinenumberEnd: 2789
    functionName: clear_smallmap
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: clear_smallmap(M,i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - M
    - ','
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2790
      start: 2789
    functionDepth: 0
    functionLinenumber: 2789
    functionLinenumberEnd: 2790
    functionName: smallmap_is_marked
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: smallmap_is_marked(M,i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - M
    - ','
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2792
      start: 2791
    functionDepth: 0
    functionLinenumber: 2791
    functionLinenumberEnd: 2792
    functionName: mark_treemap
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: mark_treemap(M,i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - M
    - ','
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2793
      start: 2792
    functionDepth: 0
    functionLinenumber: 2792
    functionLinenumberEnd: 2793
    functionName: clear_treemap
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: clear_treemap(M,i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - M
    - ','
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2794
      start: 2793
    functionDepth: 0
    functionLinenumber: 2793
    functionLinenumberEnd: 2794
    functionName: treemap_is_marked
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: treemap_is_marked(M,i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2797
      start: 2796
    functionDepth: 0
    functionLinenumber: 2796
    functionLinenumberEnd: 2797
    functionName: least_bit
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: least_bit(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2800
      start: 2799
    functionDepth: 0
    functionLinenumber: 2799
    functionLinenumberEnd: 2800
    functionName: left_bits
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: left_bits(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2803
      start: 2802
    functionDepth: 0
    functionLinenumber: 2802
    functionLinenumberEnd: 2803
    functionName: same_or_left_bits
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: same_or_left_bits(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - X
    - ','
    - I
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2813
      start: 2807
    functionDepth: 0
    functionLinenumber: 2807
    functionLinenumberEnd: 2813
    functionName: compute_bit2idx
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_bit2idx(X, I)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - X
    - ','
    - I
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2821
      start: 2815
    functionDepth: 0
    functionLinenumber: 2815
    functionLinenumberEnd: 2821
    functionName: compute_bit2idx
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_bit2idx(X, I)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - X
    - ','
    - I
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2829
      start: 2823
    functionDepth: 0
    functionLinenumber: 2823
    functionLinenumberEnd: 2829
    functionName: compute_bit2idx
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_bit2idx(X, I)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - X
    - ','
    - I
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2832
      start: 2831
    functionDepth: 0
    functionLinenumber: 2831
    functionLinenumberEnd: 2832
    functionName: compute_bit2idx
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_bit2idx(X, I)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - X
    - ','
    - I
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2845
      start: 2834
    functionDepth: 0
    functionLinenumber: 2834
    functionLinenumberEnd: 2845
    functionName: compute_bit2idx
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_bit2idx(X, I)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - M
    - ','
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2879
      start: 2878
    functionDepth: 0
    functionLinenumber: 2878
    functionLinenumberEnd: 2879
    functionName: ok_address
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ok_address(M, a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - p
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2881
      start: 2880
    functionDepth: 0
    functionLinenumber: 2880
    functionLinenumberEnd: 2881
    functionName: ok_next
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ok_next(p, n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2883
      start: 2882
    functionDepth: 0
    functionLinenumber: 2882
    functionLinenumberEnd: 2883
    functionName: ok_inuse
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ok_inuse(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2885
      start: 2884
    functionDepth: 0
    functionLinenumber: 2884
    functionLinenumberEnd: 2885
    functionName: ok_pinuse
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ok_pinuse(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - M
    - ','
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2888
      start: 2887
    functionDepth: 0
    functionLinenumber: 2887
    functionLinenumberEnd: 2888
    functionName: ok_address
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ok_address(M, a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - b
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2889
      start: 2888
    functionDepth: 0
    functionLinenumber: 2888
    functionLinenumberEnd: 2889
    functionName: ok_next
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ok_next(b, n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2890
      start: 2889
    functionDepth: 0
    functionLinenumber: 2889
    functionLinenumberEnd: 2890
    functionName: ok_inuse
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ok_inuse(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2891
      start: 2890
    functionDepth: 0
    functionLinenumber: 2890
    functionLinenumberEnd: 2891
    functionName: ok_pinuse
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ok_pinuse(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - M
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2896
      start: 2895
    functionDepth: 0
    functionLinenumber: 2895
    functionLinenumberEnd: 2896
    functionName: ok_magic
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ok_magic(M)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - M
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2898
      start: 2897
    functionDepth: 0
    functionLinenumber: 2897
    functionLinenumberEnd: 2898
    functionName: ok_magic
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ok_magic(M)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - e
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2905
      start: 2904
    functionDepth: 0
    functionLinenumber: 2904
    functionLinenumberEnd: 2905
    functionName: RTCHECK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RTCHECK(e)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - e
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2907
      start: 2906
    functionDepth: 0
    functionLinenumber: 2906
    functionLinenumberEnd: 2907
    functionName: RTCHECK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RTCHECK(e)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - e
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2910
      start: 2909
    functionDepth: 0
    functionLinenumber: 2909
    functionLinenumberEnd: 2910
    functionName: RTCHECK
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RTCHECK(e)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - M
    - ','
    - p
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2924
      start: 2921
    functionDepth: 0
    functionLinenumber: 2921
    functionLinenumberEnd: 2924
    functionName: set_inuse
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: set_inuse(M,p,s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - M
    - ','
    - p
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2929
      start: 2926
    functionDepth: 0
    functionLinenumber: 2926
    functionLinenumberEnd: 2929
    functionName: set_inuse_and_pinuse
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: set_inuse_and_pinuse(M,p,s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - M
    - ','
    - p
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2933
      start: 2931
    functionDepth: 0
    functionLinenumber: 2931
    functionLinenumberEnd: 2933
    functionName: set_size_and_pinuse_of_inuse_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: set_size_and_pinuse_of_inuse_chunk(M, p, s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - M
    - ','
    - p
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2939
      start: 2937
    functionDepth: 0
    functionLinenumber: 2937
    functionLinenumberEnd: 2939
    functionName: mark_inuse_foot
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: mark_inuse_foot(M,p,s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2943
      start: 2940
    functionDepth: 0
    functionLinenumber: 2940
    functionLinenumberEnd: 2943
    functionName: get_mstate_for
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: get_mstate_for(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - M
    - ','
    - p
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2948
      start: 2944
    functionDepth: 0
    functionLinenumber: 2944
    functionLinenumberEnd: 2948
    functionName: set_inuse
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: set_inuse(M,p,s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - M
    - ','
    - p
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2953
      start: 2949
    functionDepth: 0
    functionLinenumber: 2949
    functionLinenumberEnd: 2953
    functionName: set_inuse_and_pinuse
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: set_inuse_and_pinuse(M,p,s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - M
    - ','
    - p
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2957
      start: 2954
    functionDepth: 0
    functionLinenumber: 2954
    functionLinenumberEnd: 2957
    functionName: set_size_and_pinuse_of_inuse_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: set_size_and_pinuse_of_inuse_chunk(M, p, s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: init_malloc_global_mutex
      Src: /src/gpac/src/utils/dlmalloc.c:2966,1
    - Dst: ACQUIRE_MALLOC_GLOBAL_LOCK
      Src: /src/gpac/src/utils/dlmalloc.c:2969,1
    - Dst: GetSystemInfo
      Src: /src/gpac/src/utils/dlmalloc.c:2980,1
    - Dst: INITIAL_LOCK
      Src: /src/gpac/src/utils/dlmalloc.c:3016,1
    - Dst: open
      Src: /src/gpac/src/utils/dlmalloc.c:3025,1
    - Dst: read
      Src: /src/gpac/src/utils/dlmalloc.c:3026,1
    - Dst: close
      Src: /src/gpac/src/utils/dlmalloc.c:3028,1
    - Dst: GetTickCount
      Src: /src/gpac/src/utils/dlmalloc.c:3033,1
    - Dst: time
      Src: /src/gpac/src/utils/dlmalloc.c:3035,1
    - Dst: RELEASE_MALLOC_GLOBAL_LOCK
      Src: /src/gpac/src/utils/dlmalloc.c:3043,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3045
      start: 2963
    functionDepth: 1
    functionLinenumber: 2963
    functionLinenumberEnd: 3045
    functionName: init_mparams
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - INITIAL_LOCK
    - read
    - GetTickCount
    - open
    - close
    - RELEASE_MALLOC_GLOBAL_LOCK
    - GetSystemInfo
    - init_malloc_global_mutex
    - time
    - ACQUIRE_MALLOC_GLOBAL_LOCK
    linkageType: ''
    returnType: int
    signature: int init_mparams(void)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ensure_initialization
      Src: /src/gpac/src/utils/dlmalloc.c:3050,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - param_number
    - value
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3069
      start: 3048
    functionDepth: 1
    functionLinenumber: 3048
    functionLinenumberEnd: 3069
    functionName: change_mparam
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - ensure_initialization
    linkageType: ''
    returnType: int
    signature: int change_mparam(int param_number, int value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3076,1
    - Dst: is_aligned
      Src: /src/gpac/src/utils/dlmalloc.c:3076,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:3076,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3077,1
    - Dst: ok_address
      Src: /src/gpac/src/utils/dlmalloc.c:3077,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - m
    - p
    argTypes:
    - mstate
    - mchunkptr
    assertStmts:
    - condition: ((is_aligned(chunk2mem(p))) || (p->head == FENCEPOST_HEAD))
      pos:
        line_end: 3075
        line_start: 3075
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (ok_address(m, p))
      pos:
        line_end: 3076
        line_start: 3076
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 3078
      start: 3075
    functionDepth: 1
    functionLinenumber: 3075
    functionLinenumberEnd: 3078
    functionName: do_check_any_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - chunk2mem
    - assert
    - ok_address
    - is_aligned
    linkageType: ''
    returnType: void
    signature: void do_check_any_chunk(mstate m, mchunkptr p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: segment_holding
      Src: /src/gpac/src/utils/dlmalloc.c:3082,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3084,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3085,1
    - Dst: is_aligned
      Src: /src/gpac/src/utils/dlmalloc.c:3085,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:3085,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3086,1
    - Dst: ok_address
      Src: /src/gpac/src/utils/dlmalloc.c:3086,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3087,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3088,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3089,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3090,1
    - Dst: pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:3090,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3091,1
    - Dst: pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:3091,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:3091,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - m
    - p
    argTypes:
    - mstate
    - mchunkptr
    assertStmts:
    - condition: (sp != 0)
      pos:
        line_end: 3083
        line_start: 3083
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: ((is_aligned(chunk2mem(p))) || (p->head == FENCEPOST_HEAD))
      pos:
        line_end: 3084
        line_start: 3084
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (ok_address(m, p))
      pos:
        line_end: 3085
        line_start: 3085
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (sz == m->topsize)
      pos:
        line_end: 3086
        line_start: 3086
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (sz > 0)
      pos:
        line_end: 3087
        line_start: 3087
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (sz == ((sp->base + sp->size) - (char*)p) - TOP_FOOT_SIZE)
      pos:
        line_end: 3088
        line_start: 3088
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (!pinuse(chunk_plus_offset(p, sz)))
      pos:
        line_end: 3090
        line_start: 3090
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (pinuse(p))
      pos:
        line_end: 3089
        line_start: 3089
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 3092
      start: 3081
    functionDepth: 1
    functionLinenumber: 3081
    functionLinenumberEnd: 3092
    functionName: do_check_top_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - chunk_plus_offset
    - is_aligned
    - pinuse
    - assert
    - segment_holding
    - ok_address
    - chunk2mem
    linkageType: ''
    returnType: void
    signature: void do_check_top_chunk(mstate m, mchunkptr p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:3096,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3098,1
    - Dst: is_mmapped
      Src: /src/gpac/src/utils/dlmalloc.c:3098,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3099,1
    - Dst: use_mmap
      Src: /src/gpac/src/utils/dlmalloc.c:3099,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3100,1
    - Dst: is_aligned
      Src: /src/gpac/src/utils/dlmalloc.c:3100,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:3100,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3101,1
    - Dst: ok_address
      Src: /src/gpac/src/utils/dlmalloc.c:3101,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3102,1
    - Dst: is_small
      Src: /src/gpac/src/utils/dlmalloc.c:3102,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3103,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3104,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:3104,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3105,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:3105,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - m
    - p
    argTypes:
    - mstate
    - mchunkptr
    assertStmts:
    - condition: (is_mmapped(p))
      pos:
        line_end: 3097
        line_start: 3097
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (use_mmap(m))
      pos:
        line_end: 3098
        line_start: 3098
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: ((is_aligned(chunk2mem(p))) || (p->head == FENCEPOST_HEAD))
      pos:
        line_end: 3099
        line_start: 3099
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (ok_address(m, p))
      pos:
        line_end: 3100
        line_start: 3100
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (chunk_plus_offset(p, sz+SIZE_T_SIZE)->head == 0)
      pos:
        line_end: 3104
        line_start: 3104
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (chunk_plus_offset(p, sz)->head == FENCEPOST_HEAD)
      pos:
        line_end: 3103
        line_start: 3103
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (!is_small(sz))
      pos:
        line_end: 3101
        line_start: 3101
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: ((len & (mparams.page_size-SIZE_T_ONE)) == 0)
      pos:
        line_end: 3102
        line_start: 3102
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 3106
      start: 3095
    functionDepth: 1
    functionLinenumber: 3095
    functionLinenumberEnd: 3106
    functionName: do_check_mmapped_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - chunk_plus_offset
    - is_aligned
    - chunksize
    - is_mmapped
    - assert
    - ok_address
    - use_mmap
    - chunk2mem
    - is_small
    linkageType: ''
    returnType: void
    signature: void do_check_mmapped_chunk(mstate m, mchunkptr p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: do_check_any_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3110,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3111,1
    - Dst: is_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:3111,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3112,1
    - Dst: next_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:3112,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3114,1
    - Dst: is_mmapped
      Src: /src/gpac/src/utils/dlmalloc.c:3114,1
    - Dst: pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:3114,1
    - Dst: next_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3114,1
    - Dst: prev_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3114,1
    - Dst: is_mmapped
      Src: /src/gpac/src/utils/dlmalloc.c:3115,1
    - Dst: do_check_mmapped_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3116,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - m
    - p
    argTypes:
    - mstate
    - mchunkptr
    assertStmts:
    - condition: (is_inuse(p))
      pos:
        line_end: 3110
        line_start: 3110
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (next_pinuse(p))
      pos:
        line_end: 3111
        line_start: 3111
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (is_mmapped(p) || pinuse(p) || next_chunk(prev_chunk(p)) == p)
      pos:
        line_end: 3113
        line_start: 3113
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 3117
      start: 3109
    functionDepth: 2
    functionLinenumber: 3109
    functionLinenumberEnd: 3117
    functionName: do_check_inuse_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - do_check_any_chunk
    - pinuse
    - assert
    - is_mmapped
    - next_pinuse
    - next_chunk
    - prev_chunk
    - is_inuse
    - do_check_mmapped_chunk
    linkageType: ''
    returnType: void
    signature: void do_check_inuse_chunk(mstate m, mchunkptr p)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:3121,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:3122,1
    - Dst: do_check_any_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3123,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3124,1
    - Dst: is_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:3124,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3125,1
    - Dst: next_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:3125,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3126,1
    - Dst: is_mmapped
      Src: /src/gpac/src/utils/dlmalloc.c:3126,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3129,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3130,1
    - Dst: is_aligned
      Src: /src/gpac/src/utils/dlmalloc.c:3130,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:3130,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3131,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3132,1
    - Dst: pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:3132,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3133,1
    - Dst: is_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:3133,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3134,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3135,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3138,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - m
    - p
    argTypes:
    - mstate
    - mchunkptr
    assertStmts:
    - condition: (!is_mmapped(p))
      pos:
        line_end: 3125
        line_start: 3125
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: ((sz & CHUNK_ALIGN_MASK) == 0)
      pos:
        line_end: 3128
        line_start: 3128
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (next->prev_foot == sz)
      pos:
        line_end: 3130
        line_start: 3130
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (next == m->top || is_inuse(next))
      pos:
        line_end: 3132
        line_start: 3132
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (is_aligned(chunk2mem(p)))
      pos:
        line_end: 3129
        line_start: 3129
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (sz == SIZE_T_SIZE)
      pos:
        line_end: 3137
        line_start: 3137
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (!is_inuse(p))
      pos:
        line_end: 3123
        line_start: 3123
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (!next_pinuse(p))
      pos:
        line_end: 3124
        line_start: 3124
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (p->fd->bk == p)
      pos:
        line_end: 3133
        line_start: 3133
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (pinuse(p))
      pos:
        line_end: 3131
        line_start: 3131
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (p->bk->fd == p)
      pos:
        line_end: 3134
        line_start: 3134
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 3140
      start: 3120
    functionDepth: 2
    functionLinenumber: 3120
    functionLinenumberEnd: 3140
    functionName: do_check_free_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - chunk_plus_offset
    - is_aligned
    - do_check_any_chunk
    - pinuse
    - chunksize
    - assert
    - next_pinuse
    - is_mmapped
    - is_inuse
    - chunk2mem
    linkageType: ''
    returnType: void
    signature: void do_check_free_chunk(mstate m, mchunkptr p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: mem2chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3145,1
    - Dst: do_check_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3147,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3148,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3149,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3150,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3152,1
    - Dst: is_mmapped
      Src: /src/gpac/src/utils/dlmalloc.c:3152,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - m
    - mem
    - s
    argTypes:
    - mstate
    - void*
    - size_t
    assertStmts:
    - condition: (sz >= s)
      pos:
        line_end: 3149
        line_start: 3149
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (sz >= MIN_CHUNK_SIZE)
      pos:
        line_end: 3148
        line_start: 3148
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: ((sz & CHUNK_ALIGN_MASK) == 0)
      pos:
        line_end: 3147
        line_start: 3147
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (is_mmapped(p) || sz < (s + MIN_CHUNK_SIZE))
      pos:
        line_end: 3151
        line_start: 3151
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 3154
      start: 3143
    functionDepth: 3
    functionLinenumber: 3143
    functionLinenumberEnd: 3154
    functionName: do_check_malloced_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - assert
    - do_check_inuse_chunk
    - is_mmapped
    - mem2chunk
    linkageType: ''
    returnType: void
    signature: void do_check_malloced_chunk(mstate m, void* mem, size_t s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:3161,1
    - Dst: compute_tree_index
      Src: /src/gpac/src/utils/dlmalloc.c:3163,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3164,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3165,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3166,1
    - Dst: minsize_for_tree_index
      Src: /src/gpac/src/utils/dlmalloc.c:3166,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3167,1
    - Dst: minsize_for_tree_index
      Src: /src/gpac/src/utils/dlmalloc.c:3167,1
    - Dst: do_check_any_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3170,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3171,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3172,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:3172,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3173,1
    - Dst: is_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:3173,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3174,1
    - Dst: next_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:3174,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3175,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3176,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3178,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3179,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3182,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3184,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3185,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3189,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3190,1
    - Dst: do_check_tree
      Src: /src/gpac/src/utils/dlmalloc.c:3191,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3194,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3195,1
    - Dst: do_check_tree
      Src: /src/gpac/src/utils/dlmalloc.c:3196,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3199,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:3199,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:3199,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3204,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 39
    argCount: 2
    argNames:
    - m
    - t
    argTypes:
    - mstate
    - tchunkptr
    assertStmts:
    - condition: (tindex == idx)
      pos:
        line_end: 3163
        line_start: 3163
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: ((idx == NTREEBINS-1) || (tsize < minsize_for_tree_index((idx+1))))
      pos:
        line_end: 3166
        line_start: 3166
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (!next_pinuse(u))
      pos:
        line_end: 3173
        line_start: 3173
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (!is_inuse(u))
      pos:
        line_end: 3172
        line_start: 3172
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (u->child[0]->parent == u)
      pos:
        line_end: 3188
        line_start: 3188
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (head != 0)
      pos:
        line_end: 3203
        line_start: 3203
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (u->child[0] == 0)
      pos:
        line_end: 3177
        line_start: 3177
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (u->fd->bk == u)
      pos:
        line_end: 3174
        line_start: 3174
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (u->child[1] == 0)
      pos:
        line_end: 3178
        line_start: 3178
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: "(u->parent->child[0] == u ||\n\t\t\t        u->parent->child[1]
        == u ||\n\t\t\t        *((tbinptr*)(u->parent)) == u)"
      pos:
        line_end: 3186
        line_start: 3184
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (u->child[1]->parent == u)
      pos:
        line_end: 3193
        line_start: 3193
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (u->child[1] != u)
      pos:
        line_end: 3194
        line_start: 3194
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (u->index == tindex)
      pos:
        line_end: 3170
        line_start: 3170
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (u->bk->fd == u)
      pos:
        line_end: 3175
        line_start: 3175
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (u->parent != u)
      pos:
        line_end: 3183
        line_start: 3183
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (u->child[0] != u)
      pos:
        line_end: 3189
        line_start: 3189
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (tsize >= MIN_LARGE_SIZE)
      pos:
        line_end: 3164
        line_start: 3164
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (tsize >= minsize_for_tree_index(idx))
      pos:
        line_end: 3165
        line_start: 3165
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (chunksize(u) == tsize)
      pos:
        line_end: 3171
        line_start: 3171
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (head == 0)
      pos:
        line_end: 3181
        line_start: 3181
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (chunksize(u->child[0]) < chunksize(u->child[1]))
      pos:
        line_end: 3198
        line_start: 3198
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 3205
      start: 3157
    functionDepth: 2
    functionLinenumber: 3157
    functionLinenumberEnd: 3205
    functionName: do_check_tree
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 1
    functionsReached:
    - compute_tree_index
    - minsize_for_tree_index
    - do_check_any_chunk
    - chunksize
    - assert
    - next_pinuse
    - is_inuse
    - do_check_tree
    linkageType: ''
    returnType: void
    signature: void do_check_tree(mstate m, tchunkptr t)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: treebin_at
      Src: /src/gpac/src/utils/dlmalloc.c:3209,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3213,1
    - Dst: do_check_tree
      Src: /src/gpac/src/utils/dlmalloc.c:3215,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - m
    - i
    argTypes:
    - mstate
    - bindex_t
    assertStmts:
    - condition: (empty)
      pos:
        line_end: 3212
        line_start: 3212
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 3216
      start: 3208
    functionDepth: 3
    functionLinenumber: 3208
    functionLinenumberEnd: 3216
    functionName: do_check_treebin
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - do_check_tree
    - assert
    - treebin_at
    linkageType: ''
    returnType: void
    signature: void do_check_treebin(mstate m, bindex_t i)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: smallbin_at
      Src: /src/gpac/src/utils/dlmalloc.c:3220,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3224,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:3227,1
    - Dst: do_check_free_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3230,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3232,1
    - Dst: small_index
      Src: /src/gpac/src/utils/dlmalloc.c:3232,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3233,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:3233,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:3233,1
    - Dst: next_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3235,1
    - Dst: do_check_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3237,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - m
    - i
    argTypes:
    - mstate
    - bindex_t
    assertStmts:
    - condition: (small_index(size) == i)
      pos:
        line_end: 3231
        line_start: 3231
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (empty)
      pos:
        line_end: 3223
        line_start: 3223
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (p->bk == b || chunksize(p->bk) == chunksize(p))
      pos:
        line_end: 3232
        line_start: 3232
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 3240
      start: 3219
    functionDepth: 3
    functionLinenumber: 3219
    functionLinenumberEnd: 3240
    functionName: do_check_smallbin
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - smallbin_at
    - do_check_free_chunk
    - chunksize
    - assert
    - next_chunk
    - small_index
    - do_check_inuse_chunk
    linkageType: ''
    returnType: void
    signature: void do_check_smallbin(mstate m, bindex_t i)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:3244,1
    - Dst: is_small
      Src: /src/gpac/src/utils/dlmalloc.c:3245,1
    - Dst: small_index
      Src: /src/gpac/src/utils/dlmalloc.c:3246,1
    - Dst: smallbin_at
      Src: /src/gpac/src/utils/dlmalloc.c:3247,1
    - Dst: smallmap_is_marked
      Src: /src/gpac/src/utils/dlmalloc.c:3248,1
    - Dst: compute_tree_index
      Src: /src/gpac/src/utils/dlmalloc.c:3258,1
    - Dst: treemap_is_marked
      Src: /src/gpac/src/utils/dlmalloc.c:3259,1
    - Dst: treebin_at
      Src: /src/gpac/src/utils/dlmalloc.c:3260,1
    - Dst: leftshift_for_tree_index
      Src: /src/gpac/src/utils/dlmalloc.c:3261,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:3262,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 2
    argNames:
    - m
    - x
    argTypes:
    - mstate
    - mchunkptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3276
      start: 3243
    functionDepth: 1
    functionLinenumber: 3243
    functionLinenumberEnd: 3276
    functionName: bin_find
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - smallmap_is_marked
    - smallbin_at
    - compute_tree_index
    - chunksize
    - small_index
    - leftshift_for_tree_index
    - treemap_is_marked
    - is_small
    - treebin_at
    linkageType: ''
    returnType: int
    signature: int bin_find(mstate m, mchunkptr x)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: is_initialized
      Src: /src/gpac/src/utils/dlmalloc.c:3281,1
    - Dst: align_as_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3285,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3287,1
    - Dst: pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:3287,1
    - Dst: segment_holds
      Src: /src/gpac/src/utils/dlmalloc.c:3288,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:3290,1
    - Dst: is_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:3291,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3292,1
    - Dst: bin_find
      Src: /src/gpac/src/utils/dlmalloc.c:3292,1
    - Dst: do_check_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3293,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3296,1
    - Dst: bin_find
      Src: /src/gpac/src/utils/dlmalloc.c:3296,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3297,1
    - Dst: is_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:3297,1
    - Dst: do_check_free_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3298,1
    - Dst: next_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3301,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 1
    argNames:
    - m
    argTypes:
    - mstate
    assertStmts:
    - condition: (pinuse(q))
      pos:
        line_end: 3286
        line_start: 3286
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (!bin_find(m, q))
      pos:
        line_end: 3291
        line_start: 3291
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (q == m->dv || bin_find(m, q))
      pos:
        line_end: 3295
        line_start: 3295
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (lastq == 0 || is_inuse(lastq))
      pos:
        line_end: 3296
        line_start: 3296
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 3307
      start: 3279
    functionDepth: 3
    functionLinenumber: 3279
    functionLinenumberEnd: 3307
    functionName: traverse_and_check
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - is_initialized
    - do_check_free_chunk
    - pinuse
    - assert
    - chunksize
    - bin_find
    - next_chunk
    - is_inuse
    - do_check_inuse_chunk
    - align_as_chunk
    - segment_holds
    linkageType: ''
    returnType: size_t
    signature: size_t traverse_and_check(mstate m)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: do_check_smallbin
      Src: /src/gpac/src/utils/dlmalloc.c:3315,1
    - Dst: do_check_treebin
      Src: /src/gpac/src/utils/dlmalloc.c:3317,1
    - Dst: do_check_any_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3320,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3321,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:3321,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3322,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3323,1
    - Dst: bin_find
      Src: /src/gpac/src/utils/dlmalloc.c:3323,1
    - Dst: do_check_top_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3327,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3329,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3330,1
    - Dst: bin_find
      Src: /src/gpac/src/utils/dlmalloc.c:3330,1
    - Dst: traverse_and_check
      Src: /src/gpac/src/utils/dlmalloc.c:3333,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3334,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3335,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - m
    argTypes:
    - mstate
    assertStmts:
    - condition: (m->dvsize == chunksize(m->dv))
      pos:
        line_end: 3320
        line_start: 3320
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (m->dvsize >= MIN_CHUNK_SIZE)
      pos:
        line_end: 3321
        line_start: 3321
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (bin_find(m, m->dv) == 0)
      pos:
        line_end: 3322
        line_start: 3322
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (m->topsize > 0)
      pos:
        line_end: 3328
        line_start: 3328
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (total <= m->footprint)
      pos:
        line_end: 3333
        line_start: 3333
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (bin_find(m, m->top) == 0)
      pos:
        line_end: 3329
        line_start: 3329
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (m->footprint <= m->max_footprint)
      pos:
        line_end: 3334
        line_start: 3334
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 3336
      start: 3310
    functionDepth: 4
    functionLinenumber: 3310
    functionLinenumberEnd: 3336
    functionName: do_check_malloc_state
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - do_check_any_chunk
    - traverse_and_check
    - chunksize
    - assert
    - bin_find
    - do_check_smallbin
    - do_check_treebin
    - do_check_top_chunk
    linkageType: ''
    returnType: void
    signature: void do_check_malloc_state(mstate m)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ensure_initialization
      Src: /src/gpac/src/utils/dlmalloc.c:3344,1
    - Dst: PREACTION
      Src: /src/gpac/src/utils/dlmalloc.c:3345,1
    - Dst: check_malloc_state
      Src: /src/gpac/src/utils/dlmalloc.c:3346,1
    - Dst: is_initialized
      Src: /src/gpac/src/utils/dlmalloc.c:3347,1
    - Dst: align_as_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3353,1
    - Dst: segment_holds
      Src: /src/gpac/src/utils/dlmalloc.c:3354,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:3356,1
    - Dst: is_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:3358,1
    - Dst: next_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3362,1
    - Dst: POSTACTION
      Src: /src/gpac/src/utils/dlmalloc.c:3376,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 1
    argNames:
    - m
    argTypes:
    - mstate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3379
      start: 3342
    functionDepth: 1
    functionLinenumber: 3342
    functionLinenumberEnd: 3379
    functionName: internal_mallinfo
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - is_initialized
    - segment_holds
    - chunksize
    - next_chunk
    - is_inuse
    - POSTACTION
    - check_malloc_state
    - PREACTION
    - align_as_chunk
    - ensure_initialization
    linkageType: ''
    returnType: struct mallinfo
    signature: struct mallinfo internal_mallinfo(mstate m)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ensure_initialization
      Src: /src/gpac/src/utils/dlmalloc.c:3383,1
    - Dst: PREACTION
      Src: /src/gpac/src/utils/dlmalloc.c:3384,1
    - Dst: check_malloc_state
      Src: /src/gpac/src/utils/dlmalloc.c:3388,1
    - Dst: is_initialized
      Src: /src/gpac/src/utils/dlmalloc.c:3389,1
    - Dst: align_as_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3396,1
    - Dst: segment_holds
      Src: /src/gpac/src/utils/dlmalloc.c:3397,1
    - Dst: is_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:3399,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:3400,1
    - Dst: next_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3401,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/dlmalloc.c:3407,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/dlmalloc.c:3408,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/dlmalloc.c:3409,1
    - Dst: POSTACTION
      Src: /src/gpac/src/utils/dlmalloc.c:3411,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 1
    argNames:
    - m
    argTypes:
    - mstate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3413
      start: 3382
    functionDepth: 1
    functionLinenumber: 3382
    functionLinenumberEnd: 3413
    functionName: internal_malloc_stats
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - is_initialized
    - segment_holds
    - chunksize
    - next_chunk
    - is_inuse
    - POSTACTION
    - check_malloc_state
    - PREACTION
    - fprintf
    - align_as_chunk
    - ensure_initialization
    linkageType: ''
    returnType: void
    signature: void internal_malloc_stats(mstate m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - M
    - ','
    - P
    - ','
    - S
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3442
      start: 3425
    functionDepth: 0
    functionLinenumber: 3425
    functionLinenumberEnd: 3442
    functionName: insert_small_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: insert_small_chunk(M, P, S)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - M
    - ','
    - P
    - ','
    - S
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3462
      start: 3444
    functionDepth: 0
    functionLinenumber: 3444
    functionLinenumberEnd: 3462
    functionName: unlink_small_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: unlink_small_chunk(M, P, S)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - M
    - ','
    - B
    - ','
    - P
    - ','
    - I
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3479
      start: 3464
    functionDepth: 0
    functionLinenumber: 3464
    functionLinenumberEnd: 3479
    functionName: unlink_first_small_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: unlink_first_small_chunk(M, B, P, I)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - M
    - ','
    - P
    - ','
    - S
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3494
      start: 3484
    functionDepth: 0
    functionLinenumber: 3484
    functionLinenumberEnd: 3494
    functionName: replace_dv
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: replace_dv(M, P, S)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - M
    - ','
    - X
    - ','
    - S
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3548
      start: 3498
    functionDepth: 0
    functionLinenumber: 3498
    functionLinenumberEnd: 3548
    functionName: insert_large_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: insert_large_chunk(M, X, S)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - M
    - ','
    - X
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3636
      start: 3566
    functionDepth: 0
    functionLinenumber: 3566
    functionLinenumberEnd: 3636
    functionName: unlink_large_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: unlink_large_chunk(M, X)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - M
    - ','
    - P
    - ','
    - S
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3642
      start: 3639
    functionDepth: 0
    functionLinenumber: 3639
    functionLinenumberEnd: 3642
    functionName: insert_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: insert_chunk(M, P, S)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - M
    - ','
    - P
    - ','
    - S
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3647
      start: 3644
    functionDepth: 0
    functionLinenumber: 3644
    functionLinenumberEnd: 3647
    functionName: unlink_chunk
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: unlink_chunk(M, P, S)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - m
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3653
      start: 3652
    functionDepth: 0
    functionLinenumber: 3652
    functionLinenumberEnd: 3653
    functionName: internal_malloc
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: internal_malloc(m, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - m
    - ','
    - mem
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3654
      start: 3653
    functionDepth: 0
    functionLinenumber: 3653
    functionLinenumberEnd: 3654
    functionName: internal_free
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: internal_free(m, mem)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - m
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3658
      start: 3656
    functionDepth: 0
    functionLinenumber: 3656
    functionLinenumberEnd: 3658
    functionName: internal_malloc
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: internal_malloc(m, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - m
    - ','
    - mem
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3660
      start: 3658
    functionDepth: 0
    functionLinenumber: 3658
    functionLinenumberEnd: 3660
    functionName: internal_free
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: internal_free(m, mem)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - m
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3662
      start: 3661
    functionDepth: 0
    functionLinenumber: 3661
    functionLinenumberEnd: 3662
    functionName: internal_malloc
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: internal_malloc(m, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - m
    - ','
    - mem
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3663
      start: 3662
    functionDepth: 0
    functionLinenumber: 3662
    functionLinenumberEnd: 3663
    functionName: internal_free
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: internal_free(m, mem)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: mmap_align
      Src: /src/gpac/src/utils/dlmalloc.c:3678,1
    - Dst: CALL_DIRECT_MMAP
      Src: /src/gpac/src/utils/dlmalloc.c:3680,1
    - Dst: align_offset
      Src: /src/gpac/src/utils/dlmalloc.c:3682,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:3682,1
    - Dst: mark_inuse_foot
      Src: /src/gpac/src/utils/dlmalloc.c:3687,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:3688,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:3689,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3695,1
    - Dst: is_aligned
      Src: /src/gpac/src/utils/dlmalloc.c:3695,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:3695,1
    - Dst: check_mmapped_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3696,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:3697,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - m
    - nb
    argTypes:
    - mstate
    - size_t
    assertStmts:
    - condition: (is_aligned(chunk2mem(p)))
      pos:
        line_end: 3694
        line_start: 3694
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 3701
      start: 3677
    functionDepth: 1
    functionLinenumber: 3677
    functionLinenumberEnd: 3701
    functionName: mmap_alloc
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - align_offset
    - chunk_plus_offset
    - is_aligned
    - assert
    - mark_inuse_foot
    - CALL_DIRECT_MMAP
    - mmap_align
    - chunk2mem
    - check_mmapped_chunk
    linkageType: ''
    returnType: void
    signature: void * mmap_alloc(mstate m, size_t nb)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:3705,1
    - Dst: is_small
      Src: /src/gpac/src/utils/dlmalloc.c:3706,1
    - Dst: mmap_align
      Src: /src/gpac/src/utils/dlmalloc.c:3715,1
    - Dst: CALL_MREMAP
      Src: /src/gpac/src/utils/dlmalloc.c:3716,1
    - Dst: mark_inuse_foot
      Src: /src/gpac/src/utils/dlmalloc.c:3722,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:3723,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:3724,1
    - Dst: check_mmapped_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3730,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 3
    argNames:
    - m
    - oldp
    - nb
    argTypes:
    - mstate
    - mchunkptr
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3735
      start: 3704
    functionDepth: 1
    functionLinenumber: 3704
    functionLinenumberEnd: 3735
    functionName: mmap_resize
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - chunk_plus_offset
    - check_mmapped_chunk
    - chunksize
    - mark_inuse_foot
    - mmap_align
    - CALL_MREMAP
    - is_small
    linkageType: ''
    returnType: mchunkptr
    signature: mchunkptr mmap_resize(mstate m, mchunkptr oldp, size_t nb)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: align_offset
      Src: /src/gpac/src/utils/dlmalloc.c:3742,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:3742,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:3750,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 3
    argNames:
    - m
    - p
    - psize
    argTypes:
    - mstate
    - mchunkptr
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3752
      start: 3740
    functionDepth: 1
    functionLinenumber: 3740
    functionLinenumberEnd: 3752
    functionName: init_top
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - align_offset
    - chunk_plus_offset
    - chunk2mem
    linkageType: ''
    returnType: void
    signature: void init_top(mstate m, mchunkptr p, size_t psize)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: smallbin_at
      Src: /src/gpac/src/utils/dlmalloc.c:3759,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - m
    argTypes:
    - mstate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3762
      start: 3755
    functionDepth: 1
    functionLinenumber: 3755
    functionLinenumberEnd: 3762
    functionName: init_bins
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - smallbin_at
    linkageType: ''
    returnType: void
    signature: void init_bins(mstate m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: treebin_at
      Src: /src/gpac/src/utils/dlmalloc.c:3778,1
    - Dst: init_bins
      Src: /src/gpac/src/utils/dlmalloc.c:3779,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - m
    argTypes:
    - mstate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3780
      start: 3767
    functionDepth: 2
    functionLinenumber: 3767
    functionLinenumberEnd: 3780
    functionName: reset_on_error
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - init_bins
    - treebin_at
    linkageType: ''
    returnType: void
    signature: void reset_on_error(mstate m)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: align_as_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3786,1
    - Dst: align_as_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3787,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:3789,1
    - Dst: set_size_and_pinuse_of_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3791,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3793,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3794,1
    - Dst: pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:3794,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3795,1
    - Dst: check_top_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3802,1
    - Dst: set_size_and_pinuse_of_free_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3807,1
    - Dst: is_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:3810,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:3811,1
    - Dst: unlink_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3812,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:3813,1
    - Dst: set_free_with_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:3816,1
    - Dst: insert_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3817,1
    - Dst: check_free_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3818,1
    - Dst: check_malloced_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3821,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:3821,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:3822,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 4
    argNames:
    - m
    - newbase
    - oldbase
    - nb
    argTypes:
    - mstate
    - char*
    - char*
    - size_t
    assertStmts:
    - condition: ((char*)oldfirst > (char*)q)
      pos:
        line_end: 3792
        line_start: 3792
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (pinuse(oldfirst))
      pos:
        line_end: 3793
        line_start: 3793
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (qsize >= MIN_CHUNK_SIZE)
      pos:
        line_end: 3794
        line_start: 3794
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 3823
      start: 3784
    functionDepth: 1
    functionLinenumber: 3784
    functionLinenumberEnd: 3823
    functionName: prepend_alloc
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - set_size_and_pinuse_of_inuse_chunk
    - chunk_plus_offset
    - pinuse
    - assert
    - check_top_chunk
    - chunksize
    - set_size_and_pinuse_of_free_chunk
    - set_free_with_pinuse
    - check_free_chunk
    - is_inuse
    - insert_chunk
    - unlink_chunk
    - chunk2mem
    - check_malloced_chunk
    - align_as_chunk
    linkageType: ''
    returnType: void
    signature: "void * prepend_alloc(mstate m, char* newbase, char* oldbase,\n                           size_t
      nb)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: segment_holding
      Src: /src/gpac/src/utils/dlmalloc.c:3829,1
    - Dst: pad_request
      Src: /src/gpac/src/utils/dlmalloc.c:3831,1
    - Dst: align_offset
      Src: /src/gpac/src/utils/dlmalloc.c:3833,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:3833,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:3837,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:3838,1
    - Dst: init_top
      Src: /src/gpac/src/utils/dlmalloc.c:3843,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3846,1
    - Dst: is_aligned
      Src: /src/gpac/src/utils/dlmalloc.c:3846,1
    - Dst: set_size_and_pinuse_of_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3847,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:3856,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:3864,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:3870,1
    - Dst: set_free_with_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:3871,1
    - Dst: insert_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3872,1
    - Dst: check_top_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:3875,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 4
    argNames:
    - m
    - tbase
    - tsize
    - mmapped
    argTypes:
    - mstate
    - char*
    - size_t
    - flag_t
    assertStmts:
    - condition: (is_aligned(ss))
      pos:
        line_end: 3845
        line_start: 3845
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (nfences >= 2)
      pos:
        line_end: 3863
        line_start: 3863
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 3876
      start: 3826
    functionDepth: 2
    functionLinenumber: 3826
    functionLinenumberEnd: 3876
    functionName: add_segment
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - pad_request
    - chunk_plus_offset
    - align_offset
    - set_size_and_pinuse_of_inuse_chunk
    - init_top
    - is_aligned
    - assert
    - segment_holding
    - set_free_with_pinuse
    - check_top_chunk
    - insert_chunk
    - chunk2mem
    linkageType: ''
    returnType: void
    signature: void add_segment(mstate m, char* tbase, size_t tsize, flag_t mmapped)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: ensure_initialization
      Src: /src/gpac/src/utils/dlmalloc.c:3886,1
    - Dst: use_mmap
      Src: /src/gpac/src/utils/dlmalloc.c:3889,1
    - Dst: mmap_alloc
      Src: /src/gpac/src/utils/dlmalloc.c:3890,1
    - Dst: use_noncontiguous
      Src: /src/gpac/src/utils/dlmalloc.c:3917,1
    - Dst: segment_holding
      Src: /src/gpac/src/utils/dlmalloc.c:3919,1
    - Dst: ACQUIRE_MALLOC_GLOBAL_LOCK
      Src: /src/gpac/src/utils/dlmalloc.c:3921,1
    - Dst: CALL_MORECORE
      Src: /src/gpac/src/utils/dlmalloc.c:3924,1
    - Dst: granularity_align
      Src: /src/gpac/src/utils/dlmalloc.c:3926,1
    - Dst: is_page_aligned
      Src: /src/gpac/src/utils/dlmalloc.c:3928,1
    - Dst: page_align
      Src: /src/gpac/src/utils/dlmalloc.c:3929,1
    - Dst: CALL_MORECORE
      Src: /src/gpac/src/utils/dlmalloc.c:3932,1
    - Dst: granularity_align
      Src: /src/gpac/src/utils/dlmalloc.c:3940,1
    - Dst: CALL_MORECORE
      Src: /src/gpac/src/utils/dlmalloc.c:3943,1
    - Dst: granularity_align
      Src: /src/gpac/src/utils/dlmalloc.c:3953,1
    - Dst: CALL_MORECORE
      Src: /src/gpac/src/utils/dlmalloc.c:3955,1
    - Dst: CALL_MORECORE
      Src: /src/gpac/src/utils/dlmalloc.c:3959,1
    - Dst: disable_contiguous
      Src: /src/gpac/src/utils/dlmalloc.c:3970,1
    - Dst: RELEASE_MALLOC_GLOBAL_LOCK
      Src: /src/gpac/src/utils/dlmalloc.c:3973,1
    - Dst: granularity_align
      Src: /src/gpac/src/utils/dlmalloc.c:3977,1
    - Dst: CALL_MMAP
      Src: /src/gpac/src/utils/dlmalloc.c:3979,1
    - Dst: granularity_align
      Src: /src/gpac/src/utils/dlmalloc.c:3989,1
    - Dst: ACQUIRE_MALLOC_GLOBAL_LOCK
      Src: /src/gpac/src/utils/dlmalloc.c:3993,1
    - Dst: CALL_MORECORE
      Src: /src/gpac/src/utils/dlmalloc.c:3994,1
    - Dst: CALL_MORECORE
      Src: /src/gpac/src/utils/dlmalloc.c:3995,1
    - Dst: RELEASE_MALLOC_GLOBAL_LOCK
      Src: /src/gpac/src/utils/dlmalloc.c:3996,1
    - Dst: is_initialized
      Src: /src/gpac/src/utils/dlmalloc.c:4012,1
    - Dst: init_bins
      Src: /src/gpac/src/utils/dlmalloc.c:4020,1
    - Dst: is_global
      Src: /src/gpac/src/utils/dlmalloc.c:4022,1
    - Dst: init_top
      Src: /src/gpac/src/utils/dlmalloc.c:4023,1
    - Dst: next_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4028,1
    - Dst: mem2chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4028,1
    - Dst: init_top
      Src: /src/gpac/src/utils/dlmalloc.c:4029,1
    - Dst: is_extern_segment
      Src: /src/gpac/src/utils/dlmalloc.c:4040,1
    - Dst: segment_holds
      Src: /src/gpac/src/utils/dlmalloc.c:4042,1
    - Dst: init_top
      Src: /src/gpac/src/utils/dlmalloc.c:4044,1
    - Dst: is_extern_segment
      Src: /src/gpac/src/utils/dlmalloc.c:4053,1
    - Dst: prepend_alloc
      Src: /src/gpac/src/utils/dlmalloc.c:4058,1
    - Dst: add_segment
      Src: /src/gpac/src/utils/dlmalloc.c:4061,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:4068,1
    - Dst: set_size_and_pinuse_of_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4070,1
    - Dst: check_top_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4071,1
    - Dst: check_malloced_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4072,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:4072,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:4073,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 114
    argCount: 2
    argNames:
    - m
    - nb
    argTypes:
    - mstate
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4079
      start: 3881
    functionDepth: 3
    functionLinenumber: 3881
    functionLinenumberEnd: 4079
    functionName: sys_alloc
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - granularity_align
    - segment_holding
    - next_chunk
    - is_global
    - check_malloced_chunk
    - is_page_aligned
    - segment_holds
    - set_size_and_pinuse_of_inuse_chunk
    - CALL_MMAP
    - init_bins
    - RELEASE_MALLOC_GLOBAL_LOCK
    - chunk_plus_offset
    - prepend_alloc
    - disable_contiguous
    - add_segment
    - mmap_alloc
    - use_mmap
    - chunk2mem
    - ensure_initialization
    - use_noncontiguous
    - page_align
    - is_initialized
    - CALL_MORECORE
    - init_top
    - check_top_chunk
    - is_extern_segment
    - ACQUIRE_MALLOC_GLOBAL_LOCK
    - mem2chunk
    linkageType: ''
    returnType: void
    signature: void * sys_alloc(mstate m, size_t nb)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: is_mmapped_segment
      Src: /src/gpac/src/utils/dlmalloc.c:4094,1
    - Dst: is_extern_segment
      Src: /src/gpac/src/utils/dlmalloc.c:4094,1
    - Dst: align_as_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4095,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:4096,1
    - Dst: is_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:4098,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:4100,1
    - Dst: segment_holds
      Src: /src/gpac/src/utils/dlmalloc.c:4100,1
    - Dst: unlink_large_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4106,1
    - Dst: CALL_MUNMAP
      Src: /src/gpac/src/utils/dlmalloc.c:4108,1
    - Dst: insert_large_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4116,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 1
    argNames:
    - m
    argTypes:
    - mstate
    assertStmts:
    - condition: (segment_holds(sp, (char*)sp))
      pos:
        line_end: 4099
        line_start: 4099
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 4129
      start: 4084
    functionDepth: 1
    functionLinenumber: 4084
    functionLinenumberEnd: 4129
    functionName: release_unused_segments
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - CALL_MUNMAP
    - is_mmapped_segment
    - chunksize
    - assert
    - is_inuse
    - is_extern_segment
    - insert_large_chunk
    - unlink_large_chunk
    - align_as_chunk
    - segment_holds
    linkageType: ''
    returnType: size_t
    signature: size_t release_unused_segments(mstate m)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: ensure_initialization
      Src: /src/gpac/src/utils/dlmalloc.c:4133,1
    - Dst: is_initialized
      Src: /src/gpac/src/utils/dlmalloc.c:4134,1
    - Dst: segment_holding
      Src: /src/gpac/src/utils/dlmalloc.c:4142,1
    - Dst: is_extern_segment
      Src: /src/gpac/src/utils/dlmalloc.c:4144,1
    - Dst: is_mmapped_segment
      Src: /src/gpac/src/utils/dlmalloc.c:4145,1
    - Dst: has_segment_link
      Src: /src/gpac/src/utils/dlmalloc.c:4148,1
    - Dst: CALL_MREMAP
      Src: /src/gpac/src/utils/dlmalloc.c:4151,1
    - Dst: CALL_MUNMAP
      Src: /src/gpac/src/utils/dlmalloc.c:4152,1
    - Dst: ACQUIRE_MALLOC_GLOBAL_LOCK
      Src: /src/gpac/src/utils/dlmalloc.c:4160,1
    - Dst: CALL_MORECORE
      Src: /src/gpac/src/utils/dlmalloc.c:4163,1
    - Dst: CALL_MORECORE
      Src: /src/gpac/src/utils/dlmalloc.c:4165,1
    - Dst: CALL_MORECORE
      Src: /src/gpac/src/utils/dlmalloc.c:4166,1
    - Dst: RELEASE_MALLOC_GLOBAL_LOCK
      Src: /src/gpac/src/utils/dlmalloc.c:4171,1
    - Dst: init_top
      Src: /src/gpac/src/utils/dlmalloc.c:4178,1
    - Dst: check_top_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4179,1
    - Dst: release_unused_segments
      Src: /src/gpac/src/utils/dlmalloc.c:4185,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 38
    argCount: 2
    argNames:
    - m
    - pad
    argTypes:
    - mstate
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4193
      start: 4131
    functionDepth: 2
    functionLinenumber: 4131
    functionLinenumberEnd: 4193
    functionName: sys_trim
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - CALL_MUNMAP
    - is_initialized
    - CALL_MORECORE
    - init_top
    - is_mmapped_segment
    - check_top_chunk
    - segment_holding
    - has_segment_link
    - release_unused_segments
    - is_extern_segment
    - ACQUIRE_MALLOC_GLOBAL_LOCK
    - RELEASE_MALLOC_GLOBAL_LOCK
    - CALL_MREMAP
    - ensure_initialization
    linkageType: ''
    returnType: int
    signature: int sys_trim(mstate m, size_t pad)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: compute_tree_index
      Src: /src/gpac/src/utils/dlmalloc.c:4204,1
    - Dst: treebin_at
      Src: /src/gpac/src/utils/dlmalloc.c:4205,1
    - Dst: leftshift_for_tree_index
      Src: /src/gpac/src/utils/dlmalloc.c:4207,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:4211,1
    - Dst: left_bits
      Src: /src/gpac/src/utils/dlmalloc.c:4229,1
    - Dst: idx2bit
      Src: /src/gpac/src/utils/dlmalloc.c:4229,1
    - Dst: least_bit
      Src: /src/gpac/src/utils/dlmalloc.c:4232,1
    - Dst: compute_bit2idx
      Src: /src/gpac/src/utils/dlmalloc.c:4233,1
    - Dst: treebin_at
      Src: /src/gpac/src/utils/dlmalloc.c:4234,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:4239,1
    - Dst: leftmost_child
      Src: /src/gpac/src/utils/dlmalloc.c:4244,1
    - Dst: RTCHECK
      Src: /src/gpac/src/utils/dlmalloc.c:4249,1
    - Dst: ok_address
      Src: /src/gpac/src/utils/dlmalloc.c:4249,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:4250,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:4251,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:4251,1
    - Dst: RTCHECK
      Src: /src/gpac/src/utils/dlmalloc.c:4252,1
    - Dst: ok_next
      Src: /src/gpac/src/utils/dlmalloc.c:4252,1
    - Dst: unlink_large_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4253,1
    - Dst: set_inuse_and_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:4255,1
    - Dst: set_size_and_pinuse_of_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4257,1
    - Dst: set_size_and_pinuse_of_free_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4258,1
    - Dst: insert_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4259,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:4261,1
    - Dst: CORRUPTION_ERROR_ACTION
      Src: /src/gpac/src/utils/dlmalloc.c:4264,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 50
    argCount: 2
    argNames:
    - m
    - nb
    argTypes:
    - mstate
    - size_t
    assertStmts:
    - condition: (chunksize(v) == rsize + nb)
      pos:
        line_end: 4250
        line_start: 4250
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 4267
      start: 4199
    functionDepth: 1
    functionLinenumber: 4199
    functionLinenumberEnd: 4267
    functionName: tmalloc_large
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - compute_bit2idx
    - ok_next
    - CORRUPTION_ERROR_ACTION
    - leftmost_child
    - RTCHECK
    - set_size_and_pinuse_of_free_chunk
    - leftshift_for_tree_index
    - unlink_large_chunk
    - least_bit
    - treebin_at
    - set_size_and_pinuse_of_inuse_chunk
    - set_inuse_and_pinuse
    - ok_address
    - left_bits
    - chunk_plus_offset
    - chunksize
    - assert
    - chunk2mem
    - idx2bit
    - compute_tree_index
    - insert_chunk
    linkageType: ''
    returnType: void
    signature: void * tmalloc_large(mstate m, size_t nb)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: least_bit
      Src: /src/gpac/src/utils/dlmalloc.c:4274,1
    - Dst: compute_bit2idx
      Src: /src/gpac/src/utils/dlmalloc.c:4275,1
    - Dst: treebin_at
      Src: /src/gpac/src/utils/dlmalloc.c:4276,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:4277,1
    - Dst: leftmost_child
      Src: /src/gpac/src/utils/dlmalloc.c:4279,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:4280,1
    - Dst: RTCHECK
      Src: /src/gpac/src/utils/dlmalloc.c:4287,1
    - Dst: ok_address
      Src: /src/gpac/src/utils/dlmalloc.c:4287,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:4288,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:4289,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:4289,1
    - Dst: RTCHECK
      Src: /src/gpac/src/utils/dlmalloc.c:4290,1
    - Dst: ok_next
      Src: /src/gpac/src/utils/dlmalloc.c:4290,1
    - Dst: unlink_large_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4291,1
    - Dst: set_inuse_and_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:4293,1
    - Dst: set_size_and_pinuse_of_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4295,1
    - Dst: set_size_and_pinuse_of_free_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4296,1
    - Dst: replace_dv
      Src: /src/gpac/src/utils/dlmalloc.c:4297,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:4299,1
    - Dst: CORRUPTION_ERROR_ACTION
      Src: /src/gpac/src/utils/dlmalloc.c:4303,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - m
    - nb
    argTypes:
    - mstate
    - size_t
    assertStmts:
    - condition: (chunksize(v) == rsize + nb)
      pos:
        line_end: 4288
        line_start: 4288
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 4305
      start: 4270
    functionDepth: 1
    functionLinenumber: 4270
    functionLinenumberEnd: 4305
    functionName: tmalloc_small
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - set_size_and_pinuse_of_inuse_chunk
    - chunk_plus_offset
    - compute_bit2idx
    - ok_next
    - set_inuse_and_pinuse
    - CORRUPTION_ERROR_ACTION
    - leftmost_child
    - chunksize
    - ok_address
    - assert
    - RTCHECK
    - set_size_and_pinuse_of_free_chunk
    - replace_dv
    - unlink_large_chunk
    - least_bit
    - chunk2mem
    - treebin_at
    linkageType: ''
    returnType: void
    signature: void * tmalloc_small(mstate m, size_t nb)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: PREACTION
      Src: /src/gpac/src/utils/dlmalloc.c:4314,1
    - Dst: mem2chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4315,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:4316,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:4317,1
    - Dst: RTCHECK
      Src: /src/gpac/src/utils/dlmalloc.c:4323,1
    - Dst: ok_address
      Src: /src/gpac/src/utils/dlmalloc.c:4323,1
    - Dst: ok_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:4323,1
    - Dst: ok_next
      Src: /src/gpac/src/utils/dlmalloc.c:4324,1
    - Dst: ok_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:4324,1
    - Dst: request2size
      Src: /src/gpac/src/utils/dlmalloc.c:4325,1
    - Dst: is_mmapped
      Src: /src/gpac/src/utils/dlmalloc.c:4326,1
    - Dst: mmap_resize
      Src: /src/gpac/src/utils/dlmalloc.c:4327,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:4332,1
    - Dst: set_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:4333,1
    - Dst: set_inuse_and_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:4334,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:4335,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:4342,1
    - Dst: set_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:4343,1
    - Dst: USAGE_ERROR_ACTION
      Src: /src/gpac/src/utils/dlmalloc.c:4351,1
    - Dst: POSTACTION
      Src: /src/gpac/src/utils/dlmalloc.c:4352,1
    - Dst: check_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4357,1
    - Dst: POSTACTION
      Src: /src/gpac/src/utils/dlmalloc.c:4361,1
    - Dst: internal_free
      Src: /src/gpac/src/utils/dlmalloc.c:4365,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:4367,1
    - Dst: internal_malloc
      Src: /src/gpac/src/utils/dlmalloc.c:4370,1
    - Dst: overhead_for
      Src: /src/gpac/src/utils/dlmalloc.c:4372,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/dlmalloc.c:4373,1
    - Dst: internal_free
      Src: /src/gpac/src/utils/dlmalloc.c:4374,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 47
    argCount: 3
    argNames:
    - m
    - oldmem
    - bytes
    argTypes:
    - mstate
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4380
      start: 4309
    functionDepth: 2
    functionLinenumber: 4309
    functionLinenumberEnd: 4380
    functionName: internal_realloc
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - check_inuse_chunk
    - internal_malloc
    - ok_next
    - RTCHECK
    - POSTACTION
    - PREACTION
    - request2size
    - set_inuse_and_pinuse
    - ok_inuse
    - memcpy
    - ok_address
    - internal_free
    - USAGE_ERROR_ACTION
    - chunk_plus_offset
    - mmap_resize
    - chunksize
    - is_mmapped
    - overhead_for
    - ok_pinuse
    - chunk2mem
    - set_inuse
    - mem2chunk
    linkageType: ''
    returnType: void
    signature: void * internal_realloc(mstate m, void* oldmem, size_t bytes)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: internal_malloc
      Src: /src/gpac/src/utils/dlmalloc.c:4386,1
    - Dst: request2size
      Src: /src/gpac/src/utils/dlmalloc.c:4401,1
    - Dst: internal_malloc
      Src: /src/gpac/src/utils/dlmalloc.c:4403,1
    - Dst: mem2chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4407,1
    - Dst: PREACTION
      Src: /src/gpac/src/utils/dlmalloc.c:4409,1
    - Dst: mem2chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4419,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:4427,1
    - Dst: is_mmapped
      Src: /src/gpac/src/utils/dlmalloc.c:4429,1
    - Dst: set_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:4434,1
    - Dst: set_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:4435,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:4436,1
    - Dst: is_mmapped
      Src: /src/gpac/src/utils/dlmalloc.c:4442,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:4443,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:4446,1
    - Dst: set_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:4447,1
    - Dst: set_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:4448,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:4449,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:4453,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:4453,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:4454,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:4454,1
    - Dst: check_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4455,1
    - Dst: POSTACTION
      Src: /src/gpac/src/utils/dlmalloc.c:4456,1
    - Dst: internal_free
      Src: /src/gpac/src/utils/dlmalloc.c:4458,1
    - Dst: internal_free
      Src: /src/gpac/src/utils/dlmalloc.c:4461,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:4463,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 50
    argCount: 3
    argNames:
    - m
    - alignment
    - bytes
    argTypes:
    - mstate
    - size_t
    - size_t
    assertStmts:
    - condition: ((((size_t)(chunk2mem(p))) % alignment) == 0)
      pos:
        line_end: 4453
        line_start: 4453
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (chunksize(p) >= nb)
      pos:
        line_end: 4452
        line_start: 4452
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 4467
      start: 4384
    functionDepth: 1
    functionLinenumber: 4384
    functionLinenumberEnd: 4467
    functionName: internal_memalign
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - internal_malloc
    - check_inuse_chunk
    - chunk_plus_offset
    - chunk2mem
    - chunksize
    - is_mmapped
    - assert
    - set_inuse
    - internal_free
    - POSTACTION
    - PREACTION
    - request2size
    - mem2chunk
    linkageType: ''
    returnType: void
    signature: void * internal_memalign(mstate m, size_t alignment, size_t bytes)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: ensure_initialization
      Src: /src/gpac/src/utils/dlmalloc.c:4496,1
    - Dst: internal_malloc
      Src: /src/gpac/src/utils/dlmalloc.c:4507,1
    - Dst: request2size
      Src: /src/gpac/src/utils/dlmalloc.c:4509,1
    - Dst: request2size
      Src: /src/gpac/src/utils/dlmalloc.c:4514,1
    - Dst: request2size
      Src: /src/gpac/src/utils/dlmalloc.c:4521,1
    - Dst: use_mmap
      Src: /src/gpac/src/utils/dlmalloc.c:4531,1
    - Dst: disable_mmap
      Src: /src/gpac/src/utils/dlmalloc.c:4532,1
    - Dst: internal_malloc
      Src: /src/gpac/src/utils/dlmalloc.c:4533,1
    - Dst: enable_mmap
      Src: /src/gpac/src/utils/dlmalloc.c:4535,1
    - Dst: PREACTION
      Src: /src/gpac/src/utils/dlmalloc.c:4539,1
    - Dst: mem2chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4540,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:4541,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:4543,1
    - Dst: is_mmapped
      Src: /src/gpac/src/utils/dlmalloc.c:4543,1
    - Dst: memset
      Src: /src/gpac/src/utils/dlmalloc.c:4546,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:4553,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:4555,1
    - Dst: set_size_and_pinuse_of_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4556,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:4562,1
    - Dst: request2size
      Src: /src/gpac/src/utils/dlmalloc.c:4567,1
    - Dst: set_size_and_pinuse_of_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4569,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:4570,1
    - Dst: set_size_and_pinuse_of_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4573,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:4582,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:4585,1
    - Dst: request2size
      Src: /src/gpac/src/utils/dlmalloc.c:4585,1
    - Dst: check_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4587,1
    - Dst: mem2chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4587,1
    - Dst: check_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4590,1
    - Dst: mem2chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4590,1
    - Dst: POSTACTION
      Src: /src/gpac/src/utils/dlmalloc.c:4594,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 71
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (remainder_size == request2size(sizes[i]))
      pos:
        line_end: 4584
        line_start: 4584
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (!is_mmapped(p))
      pos:
        line_end: 4542
        line_start: 4542
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (remainder_size == element_size)
      pos:
        line_end: 4581
        line_start: 4581
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 4596
      start: 4471
    functionDepth: 1
    functionLinenumber: 4471
    functionLinenumberEnd: 4596
    functionName: ialloc
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - internal_malloc
    - set_size_and_pinuse_of_inuse_chunk
    - chunk_plus_offset
    - check_inuse_chunk
    - chunk2mem
    - chunksize
    - assert
    - is_mmapped
    - memset
    - use_mmap
    - POSTACTION
    - PREACTION
    - request2size
    - disable_mmap
    - enable_mmap
    - mem2chunk
    - ensure_initialization
    linkageType: ''
    returnType: void
    signature: "void ** ialloc(mstate m,\n                     size_t n_elements,\n
      \                    size_t* sizes,\n                     int opts,\n                     void*
      chunks[])"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: ensure_initialization
      Src: /src/gpac/src/utils/dlmalloc.c:4628,1
    - Dst: PREACTION
      Src: /src/gpac/src/utils/dlmalloc.c:4631,1
    - Dst: pad_request
      Src: /src/gpac/src/utils/dlmalloc.c:4637,1
    - Dst: small_index
      Src: /src/gpac/src/utils/dlmalloc.c:4638,1
    - Dst: smallbin_at
      Src: /src/gpac/src/utils/dlmalloc.c:4644,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:4646,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:4646,1
    - Dst: small_index2size
      Src: /src/gpac/src/utils/dlmalloc.c:4646,1
    - Dst: unlink_first_small_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4647,1
    - Dst: set_inuse_and_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:4648,1
    - Dst: small_index2size
      Src: /src/gpac/src/utils/dlmalloc.c:4648,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:4649,1
    - Dst: check_malloced_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4650,1
    - Dst: left_bits
      Src: /src/gpac/src/utils/dlmalloc.c:4659,1
    - Dst: idx2bit
      Src: /src/gpac/src/utils/dlmalloc.c:4659,1
    - Dst: least_bit
      Src: /src/gpac/src/utils/dlmalloc.c:4660,1
    - Dst: compute_bit2idx
      Src: /src/gpac/src/utils/dlmalloc.c:4661,1
    - Dst: smallbin_at
      Src: /src/gpac/src/utils/dlmalloc.c:4662,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:4664,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:4664,1
    - Dst: small_index2size
      Src: /src/gpac/src/utils/dlmalloc.c:4664,1
    - Dst: unlink_first_small_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4665,1
    - Dst: small_index2size
      Src: /src/gpac/src/utils/dlmalloc.c:4666,1
    - Dst: set_inuse_and_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:4669,1
    - Dst: small_index2size
      Src: /src/gpac/src/utils/dlmalloc.c:4669,1
    - Dst: set_size_and_pinuse_of_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4671,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:4672,1
    - Dst: set_size_and_pinuse_of_free_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4673,1
    - Dst: replace_dv
      Src: /src/gpac/src/utils/dlmalloc.c:4674,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:4676,1
    - Dst: check_malloced_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4677,1
    - Dst: tmalloc_small
      Src: /src/gpac/src/utils/dlmalloc.c:4681,1
    - Dst: check_malloced_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4682,1
    - Dst: pad_request
      Src: /src/gpac/src/utils/dlmalloc.c:4690,1
    - Dst: tmalloc_large
      Src: /src/gpac/src/utils/dlmalloc.c:4691,1
    - Dst: check_malloced_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4692,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:4701,1
    - Dst: set_size_and_pinuse_of_free_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4703,1
    - Dst: set_size_and_pinuse_of_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4704,1
    - Dst: set_inuse_and_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:4710,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:4712,1
    - Dst: check_malloced_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4713,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:4720,1
    - Dst: set_size_and_pinuse_of_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4722,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:4723,1
    - Dst: check_top_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4724,1
    - Dst: check_malloced_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4725,1
    - Dst: sys_alloc
      Src: /src/gpac/src/utils/dlmalloc.c:4729,1
    - Dst: POSTACTION
      Src: /src/gpac/src/utils/dlmalloc.c:4732,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 86
    argCount: 1
    argNames:
    - bytes
    argTypes:
    - size_t
    assertStmts:
    - condition: (chunksize(p) == small_index2size(idx))
      pos:
        line_end: 4645
        line_start: 4645
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (chunksize(p) == small_index2size(i))
      pos:
        line_end: 4663
        line_start: 4663
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 4737
      start: 4603
    functionDepth: 4
    functionLinenumber: 4603
    functionLinenumberEnd: 4737
    functionName: dlmalloc
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - small_index2size
    - pad_request
    - compute_bit2idx
    - small_index
    - set_size_and_pinuse_of_free_chunk
    - POSTACTION
    - least_bit
    - PREACTION
    - check_malloced_chunk
    - set_size_and_pinuse_of_inuse_chunk
    - smallbin_at
    - set_inuse_and_pinuse
    - left_bits
    - sys_alloc
    - chunk_plus_offset
    - assert
    - chunksize
    - replace_dv
    - unlink_first_small_chunk
    - chunk2mem
    - ensure_initialization
    - tmalloc_small
    - idx2bit
    - check_top_chunk
    - tmalloc_large
    linkageType: ''
    returnType: void
    signature: void * dlmalloc(size_t bytes)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: mem2chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4747,1
    - Dst: get_mstate_for
      Src: /src/gpac/src/utils/dlmalloc.c:4749,1
    - Dst: ok_magic
      Src: /src/gpac/src/utils/dlmalloc.c:4750,1
    - Dst: USAGE_ERROR_ACTION
      Src: /src/gpac/src/utils/dlmalloc.c:4751,1
    - Dst: PREACTION
      Src: /src/gpac/src/utils/dlmalloc.c:4757,1
    - Dst: check_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4758,1
    - Dst: RTCHECK
      Src: /src/gpac/src/utils/dlmalloc.c:4759,1
    - Dst: ok_address
      Src: /src/gpac/src/utils/dlmalloc.c:4759,1
    - Dst: ok_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:4759,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:4760,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:4761,1
    - Dst: pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:4762,1
    - Dst: is_mmapped
      Src: /src/gpac/src/utils/dlmalloc.c:4764,1
    - Dst: CALL_MUNMAP
      Src: /src/gpac/src/utils/dlmalloc.c:4766,1
    - Dst: chunk_minus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:4771,1
    - Dst: RTCHECK
      Src: /src/gpac/src/utils/dlmalloc.c:4774,1
    - Dst: ok_address
      Src: /src/gpac/src/utils/dlmalloc.c:4774,1
    - Dst: unlink_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4776,1
    - Dst: set_free_with_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:4780,1
    - Dst: RTCHECK
      Src: /src/gpac/src/utils/dlmalloc.c:4789,1
    - Dst: ok_next
      Src: /src/gpac/src/utils/dlmalloc.c:4789,1
    - Dst: ok_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:4789,1
    - Dst: cinuse
      Src: /src/gpac/src/utils/dlmalloc.c:4790,1
    - Dst: should_trim
      Src: /src/gpac/src/utils/dlmalloc.c:4799,1
    - Dst: sys_trim
      Src: /src/gpac/src/utils/dlmalloc.c:4800,1
    - Dst: set_size_and_pinuse_of_free_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4806,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:4810,1
    - Dst: unlink_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4812,1
    - Dst: set_size_and_pinuse_of_free_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4813,1
    - Dst: set_free_with_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:4821,1
    - Dst: is_small
      Src: /src/gpac/src/utils/dlmalloc.c:4823,1
    - Dst: insert_small_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4824,1
    - Dst: check_free_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4825,1
    - Dst: insert_large_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4829,1
    - Dst: check_free_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4830,1
    - Dst: release_unused_segments
      Src: /src/gpac/src/utils/dlmalloc.c:4832,1
    - Dst: USAGE_ERROR_ACTION
      Src: /src/gpac/src/utils/dlmalloc.c:4838,1
    - Dst: POSTACTION
      Src: /src/gpac/src/utils/dlmalloc.c:4840,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 86
    argCount: 1
    argNames:
    - mem
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4846
      start: 4739
    functionDepth: 3
    functionLinenumber: 4739
    functionLinenumberEnd: 4846
    functionName: dlfree
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - check_inuse_chunk
    - ok_next
    - RTCHECK
    - set_size_and_pinuse_of_free_chunk
    - POSTACTION
    - insert_large_chunk
    - PREACTION
    - get_mstate_for
    - CALL_MUNMAP
    - ok_inuse
    - pinuse
    - ok_address
    - set_free_with_pinuse
    - check_free_chunk
    - chunk_minus_offset
    - sys_trim
    - USAGE_ERROR_ACTION
    - insert_small_chunk
    - chunk_plus_offset
    - chunksize
    - is_mmapped
    - ok_pinuse
    - cinuse
    - should_trim
    - release_unused_segments
    - ok_magic
    - unlink_chunk
    - is_small
    - mem2chunk
    linkageType: ''
    returnType: void
    signature: void dlfree(void* mem)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: dlmalloc
      Src: /src/gpac/src/utils/dlmalloc.c:4857,1
    - Dst: calloc_must_clear
      Src: /src/gpac/src/utils/dlmalloc.c:4858,1
    - Dst: mem2chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4858,1
    - Dst: memset
      Src: /src/gpac/src/utils/dlmalloc.c:4859,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - n_elements
    - elem_size
    argTypes:
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4861
      start: 4848
    functionDepth: 5
    functionLinenumber: 4848
    functionLinenumberEnd: 4861
    functionName: dlcalloc
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - calloc_must_clear
    - memset
    - dlmalloc
    - mem2chunk
    linkageType: ''
    returnType: void
    signature: void * dlcalloc(size_t n_elements, size_t elem_size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: dlmalloc
      Src: /src/gpac/src/utils/dlmalloc.c:4865,1
    - Dst: dlfree
      Src: /src/gpac/src/utils/dlmalloc.c:4868,1
    - Dst: get_mstate_for
      Src: /src/gpac/src/utils/dlmalloc.c:4876,1
    - Dst: mem2chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4876,1
    - Dst: ok_magic
      Src: /src/gpac/src/utils/dlmalloc.c:4877,1
    - Dst: USAGE_ERROR_ACTION
      Src: /src/gpac/src/utils/dlmalloc.c:4878,1
    - Dst: internal_realloc
      Src: /src/gpac/src/utils/dlmalloc.c:4882,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - oldmem
    - bytes
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4883
      start: 4863
    functionDepth: 5
    functionLinenumber: 4863
    functionLinenumberEnd: 4883
    functionName: dlrealloc
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - dlfree
    - ok_magic
    - dlmalloc
    - internal_realloc
    - USAGE_ERROR_ACTION
    - get_mstate_for
    - mem2chunk
    linkageType: ''
    returnType: void
    signature: void * dlrealloc(void* oldmem, size_t bytes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: internal_memalign
      Src: /src/gpac/src/utils/dlmalloc.c:4887,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - alignment
    - bytes
    argTypes:
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4888
      start: 4886
    functionDepth: 2
    functionLinenumber: 4886
    functionLinenumberEnd: 4888
    functionName: dlmemalign
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - internal_memalign
    linkageType: ''
    returnType: void
    signature: void * dlmemalign(size_t alignment, size_t bytes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ialloc
      Src: /src/gpac/src/utils/dlmalloc.c:4893,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4894
      start: 4890
    functionDepth: 2
    functionLinenumber: 4890
    functionLinenumberEnd: 4894
    functionName: dlindependent_calloc
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - ialloc
    linkageType: ''
    returnType: void
    signature: "void ** dlindependent_calloc(size_t n_elements, size_t elem_size,\n
      \                           void* chunks[])"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ialloc
      Src: /src/gpac/src/utils/dlmalloc.c:4898,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4899
      start: 4896
    functionDepth: 2
    functionLinenumber: 4896
    functionLinenumberEnd: 4899
    functionName: dlindependent_comalloc
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - ialloc
    linkageType: ''
    returnType: void
    signature: "void ** dlindependent_comalloc(size_t n_elements, size_t sizes[],\n
      \                             void* chunks[])"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ensure_initialization
      Src: /src/gpac/src/utils/dlmalloc.c:4903,1
    - Dst: dlmemalign
      Src: /src/gpac/src/utils/dlmalloc.c:4905,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - bytes
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4906
      start: 4901
    functionDepth: 3
    functionLinenumber: 4901
    functionLinenumberEnd: 4906
    functionName: dlvalloc
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - dlmemalign
    - ensure_initialization
    linkageType: ''
    returnType: void
    signature: void * dlvalloc(size_t bytes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ensure_initialization
      Src: /src/gpac/src/utils/dlmalloc.c:4910,1
    - Dst: dlmemalign
      Src: /src/gpac/src/utils/dlmalloc.c:4912,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - bytes
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4913
      start: 4908
    functionDepth: 3
    functionLinenumber: 4908
    functionLinenumberEnd: 4913
    functionName: dlpvalloc
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - dlmemalign
    - ensure_initialization
    linkageType: ''
    returnType: void
    signature: void * dlpvalloc(size_t bytes)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ensure_initialization
      Src: /src/gpac/src/utils/dlmalloc.c:4917,1
    - Dst: PREACTION
      Src: /src/gpac/src/utils/dlmalloc.c:4918,1
    - Dst: sys_trim
      Src: /src/gpac/src/utils/dlmalloc.c:4919,1
    - Dst: POSTACTION
      Src: /src/gpac/src/utils/dlmalloc.c:4920,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - pad
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4923
      start: 4915
    functionDepth: 3
    functionLinenumber: 4915
    functionLinenumberEnd: 4923
    functionName: dlmalloc_trim
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - PREACTION
    - sys_trim
    - POSTACTION
    - ensure_initialization
    linkageType: ''
    returnType: int
    signature: int dlmalloc_trim(size_t pad)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4927
      start: 4925
    functionDepth: 0
    functionLinenumber: 4925
    functionLinenumberEnd: 4927
    functionName: dlmalloc_footprint
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t dlmalloc_footprint(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4931
      start: 4929
    functionDepth: 0
    functionLinenumber: 4929
    functionLinenumberEnd: 4931
    functionName: dlmalloc_max_footprint
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t dlmalloc_max_footprint(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: internal_mallinfo
      Src: /src/gpac/src/utils/dlmalloc.c:4935,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4936
      start: 4934
    functionDepth: 2
    functionLinenumber: 4934
    functionLinenumberEnd: 4936
    functionName: dlmallinfo
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - internal_mallinfo
    linkageType: ''
    returnType: struct mallinfo
    signature: struct mallinfo dlmallinfo(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: internal_malloc_stats
      Src: /src/gpac/src/utils/dlmalloc.c:4940,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4941
      start: 4939
    functionDepth: 2
    functionLinenumber: 4939
    functionLinenumberEnd: 4941
    functionName: dlmalloc_stats
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - internal_malloc_stats
    linkageType: ''
    returnType: void
    signature: void dlmalloc_stats()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: change_mparam
      Src: /src/gpac/src/utils/dlmalloc.c:4944,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - param_number
    - value
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4945
      start: 4943
    functionDepth: 2
    functionLinenumber: 4943
    functionLinenumberEnd: 4945
    functionName: dlmallopt
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - change_mparam
    linkageType: ''
    returnType: int
    signature: int dlmallopt(int param_number, int value)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: mem2chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4951,1
    - Dst: is_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:4952,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:4953,1
    - Dst: overhead_for
      Src: /src/gpac/src/utils/dlmalloc.c:4953,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - mem
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4956
      start: 4949
    functionDepth: 1
    functionLinenumber: 4949
    functionLinenumberEnd: 4956
    functionName: dlmalloc_usable_size
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - chunksize
    - is_inuse
    - overhead_for
    - mem2chunk
    linkageType: ''
    returnType: size_t
    signature: size_t dlmalloc_usable_size(void* mem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pad_request
      Src: /src/gpac/src/utils/dlmalloc.c:4963,1
    - Dst: align_as_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4965,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:4966,1
    - Dst: memset
      Src: /src/gpac/src/utils/dlmalloc.c:4967,1
    - Dst: INITIAL_LOCK
      Src: /src/gpac/src/utils/dlmalloc.c:4968,1
    - Dst: disable_contiguous
      Src: /src/gpac/src/utils/dlmalloc.c:4977,1
    - Dst: init_bins
      Src: /src/gpac/src/utils/dlmalloc.c:4978,1
    - Dst: next_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4979,1
    - Dst: mem2chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4979,1
    - Dst: init_top
      Src: /src/gpac/src/utils/dlmalloc.c:4980,1
    - Dst: check_top_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:4981,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 2
    argNames:
    - tbase
    - tsize
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4983
      start: 4962
    functionDepth: 2
    functionLinenumber: 4962
    functionLinenumberEnd: 4983
    functionName: init_user_mstate
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - pad_request
    - INITIAL_LOCK
    - init_top
    - disable_contiguous
    - next_chunk
    - check_top_chunk
    - memset
    - init_bins
    - chunk2mem
    - mem2chunk
    - align_as_chunk
    linkageType: ''
    returnType: mstate
    signature: mstate init_user_mstate(char* tbase, size_t tsize)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ensure_initialization
      Src: /src/gpac/src/utils/dlmalloc.c:4988,1
    - Dst: pad_request
      Src: /src/gpac/src/utils/dlmalloc.c:4989,1
    - Dst: granularity_align
      Src: /src/gpac/src/utils/dlmalloc.c:4993,1
    - Dst: CALL_MMAP
      Src: /src/gpac/src/utils/dlmalloc.c:4994,1
    - Dst: init_user_mstate
      Src: /src/gpac/src/utils/dlmalloc.c:4996,1
    - Dst: set_lock
      Src: /src/gpac/src/utils/dlmalloc.c:4998,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - capacity
    - locked
    argTypes:
    - size_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5002
      start: 4985
    functionDepth: 3
    functionLinenumber: 4985
    functionLinenumberEnd: 5002
    functionName: create_mspace
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - pad_request
    - CALL_MMAP
    - granularity_align
    - set_lock
    - init_user_mstate
    - ensure_initialization
    linkageType: ''
    returnType: mspace
    signature: mspace create_mspace(size_t capacity, int locked)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ensure_initialization
      Src: /src/gpac/src/utils/dlmalloc.c:5007,1
    - Dst: pad_request
      Src: /src/gpac/src/utils/dlmalloc.c:5008,1
    - Dst: init_user_mstate
      Src: /src/gpac/src/utils/dlmalloc.c:5011,1
    - Dst: set_lock
      Src: /src/gpac/src/utils/dlmalloc.c:5013,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - base
    - capacity
    - locked
    argTypes:
    - void*
    - size_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5016
      start: 5004
    functionDepth: 3
    functionLinenumber: 5004
    functionLinenumberEnd: 5016
    functionName: create_mspace_with_base
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - pad_request
    - set_lock
    - init_user_mstate
    - ensure_initialization
    linkageType: ''
    returnType: mspace
    signature: mspace create_mspace_with_base(void* base, size_t capacity, int locked)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PREACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5021,1
    - Dst: use_mmap
      Src: /src/gpac/src/utils/dlmalloc.c:5022,1
    - Dst: enable_mmap
      Src: /src/gpac/src/utils/dlmalloc.c:5025,1
    - Dst: disable_mmap
      Src: /src/gpac/src/utils/dlmalloc.c:5027,1
    - Dst: POSTACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5028,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - msp
    - enable
    argTypes:
    - mspace
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5031
      start: 5018
    functionDepth: 1
    functionLinenumber: 5018
    functionLinenumberEnd: 5031
    functionName: mspace_track_large_chunks
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - use_mmap
    - POSTACTION
    - PREACTION
    - disable_mmap
    - enable_mmap
    linkageType: ''
    returnType: int
    signature: int mspace_track_large_chunks(mspace msp, int enable)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ok_magic
      Src: /src/gpac/src/utils/dlmalloc.c:5036,1
    - Dst: CALL_MUNMAP
      Src: /src/gpac/src/utils/dlmalloc.c:5044,1
    - Dst: USAGE_ERROR_ACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5049,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - msp
    argTypes:
    - mspace
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5052
      start: 5033
    functionDepth: 1
    functionLinenumber: 5033
    functionLinenumberEnd: 5052
    functionName: destroy_mspace
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - CALL_MUNMAP
    - USAGE_ERROR_ACTION
    - ok_magic
    linkageType: ''
    returnType: size_t
    signature: size_t destroy_mspace(mspace msp)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: ok_magic
      Src: /src/gpac/src/utils/dlmalloc.c:5062,1
    - Dst: USAGE_ERROR_ACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5063,1
    - Dst: PREACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5066,1
    - Dst: pad_request
      Src: /src/gpac/src/utils/dlmalloc.c:5072,1
    - Dst: small_index
      Src: /src/gpac/src/utils/dlmalloc.c:5073,1
    - Dst: smallbin_at
      Src: /src/gpac/src/utils/dlmalloc.c:5079,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:5081,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:5081,1
    - Dst: small_index2size
      Src: /src/gpac/src/utils/dlmalloc.c:5081,1
    - Dst: unlink_first_small_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5082,1
    - Dst: set_inuse_and_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:5083,1
    - Dst: small_index2size
      Src: /src/gpac/src/utils/dlmalloc.c:5083,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:5084,1
    - Dst: check_malloced_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5085,1
    - Dst: left_bits
      Src: /src/gpac/src/utils/dlmalloc.c:5094,1
    - Dst: idx2bit
      Src: /src/gpac/src/utils/dlmalloc.c:5094,1
    - Dst: least_bit
      Src: /src/gpac/src/utils/dlmalloc.c:5095,1
    - Dst: compute_bit2idx
      Src: /src/gpac/src/utils/dlmalloc.c:5096,1
    - Dst: smallbin_at
      Src: /src/gpac/src/utils/dlmalloc.c:5097,1
    - Dst: assert
      Src: /src/gpac/src/utils/dlmalloc.c:5099,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:5099,1
    - Dst: small_index2size
      Src: /src/gpac/src/utils/dlmalloc.c:5099,1
    - Dst: unlink_first_small_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5100,1
    - Dst: small_index2size
      Src: /src/gpac/src/utils/dlmalloc.c:5101,1
    - Dst: set_inuse_and_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:5104,1
    - Dst: small_index2size
      Src: /src/gpac/src/utils/dlmalloc.c:5104,1
    - Dst: set_size_and_pinuse_of_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5106,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:5107,1
    - Dst: set_size_and_pinuse_of_free_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5108,1
    - Dst: replace_dv
      Src: /src/gpac/src/utils/dlmalloc.c:5109,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:5111,1
    - Dst: check_malloced_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5112,1
    - Dst: tmalloc_small
      Src: /src/gpac/src/utils/dlmalloc.c:5116,1
    - Dst: check_malloced_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5117,1
    - Dst: pad_request
      Src: /src/gpac/src/utils/dlmalloc.c:5125,1
    - Dst: tmalloc_large
      Src: /src/gpac/src/utils/dlmalloc.c:5126,1
    - Dst: check_malloced_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5127,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:5136,1
    - Dst: set_size_and_pinuse_of_free_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5138,1
    - Dst: set_size_and_pinuse_of_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5139,1
    - Dst: set_inuse_and_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:5145,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:5147,1
    - Dst: check_malloced_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5148,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:5155,1
    - Dst: set_size_and_pinuse_of_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5157,1
    - Dst: chunk2mem
      Src: /src/gpac/src/utils/dlmalloc.c:5158,1
    - Dst: check_top_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5159,1
    - Dst: check_malloced_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5160,1
    - Dst: sys_alloc
      Src: /src/gpac/src/utils/dlmalloc.c:5164,1
    - Dst: POSTACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5167,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 89
    argCount: 2
    argNames:
    - msp
    - bytes
    argTypes:
    - mspace
    - size_t
    assertStmts:
    - condition: (chunksize(p) == small_index2size(idx))
      pos:
        line_end: 5080
        line_start: 5080
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (chunksize(p) == small_index2size(i))
      pos:
        line_end: 5098
        line_start: 5098
        source_file: /src/gpac/src/utils/dlmalloc.c
    constantsTouched: []
    func_position:
      end: 5172
      start: 5060
    functionDepth: 4
    functionLinenumber: 5060
    functionLinenumberEnd: 5172
    functionName: mspace_malloc
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - small_index2size
    - pad_request
    - compute_bit2idx
    - small_index
    - set_size_and_pinuse_of_free_chunk
    - POSTACTION
    - least_bit
    - PREACTION
    - check_malloced_chunk
    - set_size_and_pinuse_of_inuse_chunk
    - smallbin_at
    - set_inuse_and_pinuse
    - left_bits
    - USAGE_ERROR_ACTION
    - sys_alloc
    - chunk_plus_offset
    - assert
    - chunksize
    - replace_dv
    - unlink_first_small_chunk
    - chunk2mem
    - tmalloc_small
    - idx2bit
    - check_top_chunk
    - tmalloc_large
    - ok_magic
    linkageType: ''
    returnType: void
    signature: void * mspace_malloc(mspace msp, size_t bytes)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: mem2chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5176,1
    - Dst: get_mstate_for
      Src: /src/gpac/src/utils/dlmalloc.c:5178,1
    - Dst: ok_magic
      Src: /src/gpac/src/utils/dlmalloc.c:5183,1
    - Dst: USAGE_ERROR_ACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5184,1
    - Dst: PREACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5187,1
    - Dst: check_inuse_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5188,1
    - Dst: RTCHECK
      Src: /src/gpac/src/utils/dlmalloc.c:5189,1
    - Dst: ok_address
      Src: /src/gpac/src/utils/dlmalloc.c:5189,1
    - Dst: ok_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:5189,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:5190,1
    - Dst: chunk_plus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:5191,1
    - Dst: pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:5192,1
    - Dst: is_mmapped
      Src: /src/gpac/src/utils/dlmalloc.c:5194,1
    - Dst: CALL_MUNMAP
      Src: /src/gpac/src/utils/dlmalloc.c:5196,1
    - Dst: chunk_minus_offset
      Src: /src/gpac/src/utils/dlmalloc.c:5201,1
    - Dst: RTCHECK
      Src: /src/gpac/src/utils/dlmalloc.c:5204,1
    - Dst: ok_address
      Src: /src/gpac/src/utils/dlmalloc.c:5204,1
    - Dst: unlink_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5206,1
    - Dst: set_free_with_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:5210,1
    - Dst: RTCHECK
      Src: /src/gpac/src/utils/dlmalloc.c:5219,1
    - Dst: ok_next
      Src: /src/gpac/src/utils/dlmalloc.c:5219,1
    - Dst: ok_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:5219,1
    - Dst: cinuse
      Src: /src/gpac/src/utils/dlmalloc.c:5220,1
    - Dst: should_trim
      Src: /src/gpac/src/utils/dlmalloc.c:5229,1
    - Dst: sys_trim
      Src: /src/gpac/src/utils/dlmalloc.c:5230,1
    - Dst: set_size_and_pinuse_of_free_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5236,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:5240,1
    - Dst: unlink_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5242,1
    - Dst: set_size_and_pinuse_of_free_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5243,1
    - Dst: set_free_with_pinuse
      Src: /src/gpac/src/utils/dlmalloc.c:5251,1
    - Dst: is_small
      Src: /src/gpac/src/utils/dlmalloc.c:5253,1
    - Dst: insert_small_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5254,1
    - Dst: check_free_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5255,1
    - Dst: insert_large_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5259,1
    - Dst: check_free_chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5260,1
    - Dst: release_unused_segments
      Src: /src/gpac/src/utils/dlmalloc.c:5262,1
    - Dst: USAGE_ERROR_ACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5268,1
    - Dst: POSTACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5270,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 87
    argCount: 2
    argNames:
    - msp
    - mem
    argTypes:
    - mspace
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5273
      start: 5174
    functionDepth: 3
    functionLinenumber: 5174
    functionLinenumberEnd: 5273
    functionName: mspace_free
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - check_inuse_chunk
    - ok_next
    - RTCHECK
    - set_size_and_pinuse_of_free_chunk
    - POSTACTION
    - insert_large_chunk
    - PREACTION
    - get_mstate_for
    - CALL_MUNMAP
    - ok_inuse
    - pinuse
    - ok_address
    - set_free_with_pinuse
    - check_free_chunk
    - chunk_minus_offset
    - sys_trim
    - USAGE_ERROR_ACTION
    - insert_small_chunk
    - chunk_plus_offset
    - chunksize
    - is_mmapped
    - ok_pinuse
    - cinuse
    - should_trim
    - release_unused_segments
    - ok_magic
    - unlink_chunk
    - is_small
    - mem2chunk
    linkageType: ''
    returnType: void
    signature: void mspace_free(mspace msp, void* mem)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ok_magic
      Src: /src/gpac/src/utils/dlmalloc.c:5279,1
    - Dst: USAGE_ERROR_ACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5280,1
    - Dst: internal_malloc
      Src: /src/gpac/src/utils/dlmalloc.c:5289,1
    - Dst: calloc_must_clear
      Src: /src/gpac/src/utils/dlmalloc.c:5290,1
    - Dst: mem2chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5290,1
    - Dst: memset
      Src: /src/gpac/src/utils/dlmalloc.c:5291,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 3
    argNames:
    - msp
    - n_elements
    - elem_size
    argTypes:
    - mspace
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5293
      start: 5275
    functionDepth: 1
    functionLinenumber: 5275
    functionLinenumberEnd: 5293
    functionName: mspace_calloc
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - internal_malloc
    - calloc_must_clear
    - ok_magic
    - memset
    - USAGE_ERROR_ACTION
    - mem2chunk
    linkageType: ''
    returnType: void
    signature: void * mspace_calloc(mspace msp, size_t n_elements, size_t elem_size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: mspace_malloc
      Src: /src/gpac/src/utils/dlmalloc.c:5297,1
    - Dst: mspace_free
      Src: /src/gpac/src/utils/dlmalloc.c:5300,1
    - Dst: mem2chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5306,1
    - Dst: get_mstate_for
      Src: /src/gpac/src/utils/dlmalloc.c:5307,1
    - Dst: ok_magic
      Src: /src/gpac/src/utils/dlmalloc.c:5311,1
    - Dst: USAGE_ERROR_ACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5312,1
    - Dst: internal_realloc
      Src: /src/gpac/src/utils/dlmalloc.c:5315,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - msp
    - oldmem
    - bytes
    argTypes:
    - mspace
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5316
      start: 5295
    functionDepth: 5
    functionLinenumber: 5295
    functionLinenumberEnd: 5316
    functionName: mspace_realloc
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - mspace_malloc
    - ok_magic
    - mspace_free
    - internal_realloc
    - USAGE_ERROR_ACTION
    - get_mstate_for
    - mem2chunk
    linkageType: ''
    returnType: void
    signature: void * mspace_realloc(mspace msp, void* oldmem, size_t bytes)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ok_magic
      Src: /src/gpac/src/utils/dlmalloc.c:5321,1
    - Dst: USAGE_ERROR_ACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5322,1
    - Dst: internal_memalign
      Src: /src/gpac/src/utils/dlmalloc.c:5325,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - msp
    - alignment
    - bytes
    argTypes:
    - mspace
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5326
      start: 5319
    functionDepth: 2
    functionLinenumber: 5319
    functionLinenumberEnd: 5326
    functionName: mspace_memalign
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - USAGE_ERROR_ACTION
    - internal_memalign
    - ok_magic
    linkageType: ''
    returnType: void
    signature: void * mspace_memalign(mspace msp, size_t alignment, size_t bytes)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ok_magic
      Src: /src/gpac/src/utils/dlmalloc.c:5332,1
    - Dst: USAGE_ERROR_ACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5333,1
    - Dst: ialloc
      Src: /src/gpac/src/utils/dlmalloc.c:5336,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5337
      start: 5328
    functionDepth: 2
    functionLinenumber: 5328
    functionLinenumberEnd: 5337
    functionName: mspace_independent_calloc
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - USAGE_ERROR_ACTION
    - ialloc
    - ok_magic
    linkageType: ''
    returnType: void
    signature: "void ** mspace_independent_calloc(mspace msp, size_t n_elements,\n
      \                                size_t elem_size, void* chunks[])"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ok_magic
      Src: /src/gpac/src/utils/dlmalloc.c:5342,1
    - Dst: USAGE_ERROR_ACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5343,1
    - Dst: ialloc
      Src: /src/gpac/src/utils/dlmalloc.c:5346,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5347
      start: 5339
    functionDepth: 2
    functionLinenumber: 5339
    functionLinenumberEnd: 5347
    functionName: mspace_independent_comalloc
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - USAGE_ERROR_ACTION
    - ialloc
    - ok_magic
    linkageType: ''
    returnType: void
    signature: "void ** mspace_independent_comalloc(mspace msp, size_t n_elements,\n
      \                                  size_t sizes[], void* chunks[])"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ok_magic
      Src: /src/gpac/src/utils/dlmalloc.c:5352,1
    - Dst: PREACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5353,1
    - Dst: sys_trim
      Src: /src/gpac/src/utils/dlmalloc.c:5354,1
    - Dst: POSTACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5355,1
    - Dst: USAGE_ERROR_ACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5359,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - msp
    - pad
    argTypes:
    - mspace
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5362
      start: 5349
    functionDepth: 3
    functionLinenumber: 5349
    functionLinenumberEnd: 5362
    functionName: mspace_trim
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - sys_trim
    - ok_magic
    - POSTACTION
    - USAGE_ERROR_ACTION
    - PREACTION
    linkageType: ''
    returnType: int
    signature: int mspace_trim(mspace msp, size_t pad)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ok_magic
      Src: /src/gpac/src/utils/dlmalloc.c:5366,1
    - Dst: internal_malloc_stats
      Src: /src/gpac/src/utils/dlmalloc.c:5367,1
    - Dst: USAGE_ERROR_ACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5370,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - msp
    argTypes:
    - mspace
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5372
      start: 5364
    functionDepth: 2
    functionLinenumber: 5364
    functionLinenumberEnd: 5372
    functionName: mspace_malloc_stats
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - internal_malloc_stats
    - USAGE_ERROR_ACTION
    - ok_magic
    linkageType: ''
    returnType: void
    signature: void mspace_malloc_stats(mspace msp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ok_magic
      Src: /src/gpac/src/utils/dlmalloc.c:5377,1
    - Dst: USAGE_ERROR_ACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5381,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - msp
    argTypes:
    - mspace
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5384
      start: 5374
    functionDepth: 1
    functionLinenumber: 5374
    functionLinenumberEnd: 5384
    functionName: mspace_footprint
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - USAGE_ERROR_ACTION
    - ok_magic
    linkageType: ''
    returnType: size_t
    signature: size_t mspace_footprint(mspace msp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ok_magic
      Src: /src/gpac/src/utils/dlmalloc.c:5390,1
    - Dst: USAGE_ERROR_ACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5394,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - msp
    argTypes:
    - mspace
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5397
      start: 5387
    functionDepth: 1
    functionLinenumber: 5387
    functionLinenumberEnd: 5397
    functionName: mspace_max_footprint
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - USAGE_ERROR_ACTION
    - ok_magic
    linkageType: ''
    returnType: size_t
    signature: size_t mspace_max_footprint(mspace msp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ok_magic
      Src: /src/gpac/src/utils/dlmalloc.c:5403,1
    - Dst: USAGE_ERROR_ACTION
      Src: /src/gpac/src/utils/dlmalloc.c:5404,1
    - Dst: internal_mallinfo
      Src: /src/gpac/src/utils/dlmalloc.c:5406,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - msp
    argTypes:
    - mspace
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5407
      start: 5401
    functionDepth: 2
    functionLinenumber: 5401
    functionLinenumberEnd: 5407
    functionName: mspace_mallinfo
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - USAGE_ERROR_ACTION
    - ok_magic
    - internal_mallinfo
    linkageType: ''
    returnType: struct mallinfo
    signature: struct mallinfo mspace_mallinfo(mspace msp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: mem2chunk
      Src: /src/gpac/src/utils/dlmalloc.c:5412,1
    - Dst: is_inuse
      Src: /src/gpac/src/utils/dlmalloc.c:5413,1
    - Dst: chunksize
      Src: /src/gpac/src/utils/dlmalloc.c:5414,1
    - Dst: overhead_for
      Src: /src/gpac/src/utils/dlmalloc.c:5414,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - mem
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5417
      start: 5410
    functionDepth: 1
    functionLinenumber: 5410
    functionLinenumberEnd: 5417
    functionName: mspace_usable_size
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - chunksize
    - is_inuse
    - overhead_for
    - mem2chunk
    linkageType: ''
    returnType: size_t
    signature: size_t mspace_usable_size(void* mem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: change_mparam
      Src: /src/gpac/src/utils/dlmalloc.c:5420,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - param_number
    - value
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5421
      start: 5419
    functionDepth: 2
    functionLinenumber: 5419
    functionLinenumberEnd: 5421
    functionName: mspace_mallopt
    functionSourceFile: /src/gpac/src/utils/dlmalloc.c
    functionUses: 0
    functionsReached:
    - change_mparam
    linkageType: ''
    returnType: int
    signature: int mspace_mallopt(int param_number, int value)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 38
    argCount: 3
    argNames:
    - ucs4_buf
    - utf8_len
    - utf8_buf
    argTypes:
    - u32*
    - u32
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 102
    functionName: utf8_to_ucs4
    functionSourceFile: /src/gpac/src/utils/unicode.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT utf8_to_ucs4(u32 * ucs4_buf, u32 utf8_len, unsigned char
      *utf8_buf)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: hmux_get_session
      Src: /src/gpac/src/utils/downloader_nghttp2.c:52,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader_nghttp2.c:61,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:63,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_nghttp2.c:64,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_nghttp2.c:65,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/downloader_nghttp2.c:66,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 18
    argCount: 8
    argNames:
    - session
    - frame
    - name
    - namelen
    - value
    - valuelen
    - flags
    - user_data
    argTypes:
    - nghttp2_session*
    - nghttp2_frame*
    - uint8_t*
    - size_t
    - uint8_t*
    - size_t
    - uint8_t
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 42
    functionDepth: 2
    functionLinenumber: 42
    functionLinenumberEnd: 72
    functionName: h2_header_callback
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - GF_LOG
    - hmux_get_session
    - gf_list_add
    linkageType: ''
    returnType: int
    signature: "int h2_header_callback(nghttp2_session *session,\n\t\t\t\t\t\t\t\tconst
      nghttp2_frame *frame, const uint8_t *name,\n\t\t\t\t\t\t\t\tsize_t namelen,
      const uint8_t *value,\n\t\t\t\t\t\t\t\tsize_t valuelen, uint8_t flags ,\n\t\t\t\t\t\t\t\tvoid
      *user_data)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: hmux_get_session
      Src: /src/gpac/src/utils/downloader_nghttp2.c:76,1
    - Dst: memset
      Src: /src/gpac/src/utils/downloader_nghttp2.c:86,1
    - Dst: GF_DownloadSession*::user_proc
      Src: /src/gpac/src/utils/downloader_nghttp2.c:91,1
    - Dst: hmux_get_session
      Src: /src/gpac/src/utils/downloader_nghttp2.c:95,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:106,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:108,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 3
    argNames:
    - session
    - frame
    - user_data
    argTypes:
    - nghttp2_session*
    - nghttp2_frame*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 74
    functionDepth: 2
    functionLinenumber: 74
    functionLinenumberEnd: 113
    functionName: h2_begin_headers_callback
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - hmux_get_session
    - memset
    - GF_LOG
    - GF_DownloadSession*::user_proc
    linkageType: ''
    returnType: int
    signature: int h2_begin_headers_callback(nghttp2_session *session, const nghttp2_frame
      *frame, void *user_data)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: hmux_get_session
      Src: /src/gpac/src/utils/downloader_nghttp2.c:120,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:130,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:132,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:136,1
    - Dst: hmux_get_session
      Src: /src/gpac/src/utils/downloader_nghttp2.c:145,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:148,1
    - Dst: hmux_get_session
      Src: /src/gpac/src/utils/downloader_nghttp2.c:154,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:158,1
    - Dst: memset
      Src: /src/gpac/src/utils/downloader_nghttp2.c:159,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_nghttp2.c:161,1
    - Dst: GF_DownloadSession*::user_proc
      Src: /src/gpac/src/utils/downloader_nghttp2.c:164,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_nghttp2.c:166,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 47
    argCount: 3
    argNames:
    - session
    - frame
    - user_data
    argTypes:
    - nghttp2_session*
    - nghttp2_frame*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 115
    functionDepth: 2
    functionLinenumber: 115
    functionLinenumberEnd: 172
    functionName: h2_frame_recv_callback
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - GF_LOG
    - hmux_get_session
    - memset
    - gf_mx_v
    - GF_DownloadSession*::user_proc
    linkageType: ''
    returnType: int
    signature: int h2_frame_recv_callback(nghttp2_session *session, const nghttp2_frame
      *frame, void *user_data)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: hmux_get_session
      Src: /src/gpac/src/utils/downloader_nghttp2.c:176,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/downloader_nghttp2.c:182,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_nghttp2.c:185,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:187,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 6
    argNames:
    - session
    - flags
    - stream_id
    - data
    - len
    - user_data
    argTypes:
    - nghttp2_session*
    - uint8_t
    - int32_t
    - uint8_t*
    - size_t
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 174
    functionDepth: 2
    functionLinenumber: 174
    functionLinenumberEnd: 189
    functionName: h2_data_chunk_recv_callback
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - hmux_get_session
    - memcpy
    - GF_LOG
    - gf_realloc
    linkageType: ''
    returnType: int
    signature: int h2_data_chunk_recv_callback(nghttp2_session *session, uint8_t flags,
      int32_t stream_id, const uint8_t *data, size_t len, void *user_data)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: hmux_get_session
      Src: /src/gpac/src/utils/downloader_nghttp2.c:194,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_nghttp2.c:198,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:209,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_nghttp2.c:210,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:215,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:217,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:220,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_nghttp2.c:232,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 4
    argNames:
    - session
    - stream_id
    - error_code
    - user_data
    argTypes:
    - nghttp2_session*
    - int32_t
    - uint32_t
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 191
    functionDepth: 2
    functionLinenumber: 191
    functionLinenumberEnd: 234
    functionName: h2_stream_close_callback
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - SET_LAST_ERR
    - GF_LOG
    - hmux_get_session
    - gf_mx_v
    linkageType: ''
    returnType: int
    signature: int h2_stream_close_callback(nghttp2_session *session, int32_t stream_id,
      uint32_t error_code, void *user_data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:239,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - session
    - msg
    - len
    - user_data
    argTypes:
    - nghttp2_session*
    - char*
    - size_t
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 236
    functionDepth: 1
    functionLinenumber: 236
    functionLinenumberEnd: 241
    functionName: h2_error_callback
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: int
    signature: int h2_error_callback(nghttp2_session *session, const char *msg, size_t
      len, void *user_data)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: dm_sess_write
      Src: /src/gpac/src/utils/downloader_nghttp2.c:245,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:254,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - sess
    - data
    - length
    argTypes:
    - GF_DownloadSession*
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 243
    functionDepth: 2
    functionLinenumber: 243
    functionLinenumberEnd: 260
    functionName: h2_write_data
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - dm_sess_write
    - SET_LAST_ERR
    linkageType: ''
    returnType: ssize_t
    signature: ssize_t h2_write_data(GF_DownloadSession *sess, const uint8_t *data,
      size_t length)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: h2_write_data
      Src: /src/gpac/src/utils/downloader_nghttp2.c:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - session
    - data
    - length
    - flags
    - user_data
    argTypes:
    - nghttp2_session*
    - uint8_t*
    - size_t
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 262
    functionDepth: 3
    functionLinenumber: 262
    functionLinenumberEnd: 268
    functionName: h2_send_callback
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - h2_write_data
    linkageType: ''
    returnType: ssize_t
    signature: ssize_t h2_send_callback(nghttp2_session *session, const uint8_t *data,
      size_t length, int flags, void *user_data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: hmux_get_session
      Src: /src/gpac/src/utils/downloader_nghttp2.c:272,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - session
    - frame
    - user_data
    argTypes:
    - nghttp2_session*
    - nghttp2_frame*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 270
    functionDepth: 2
    functionLinenumber: 270
    functionLinenumberEnd: 277
    functionName: h2_before_frame_send_callback
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - hmux_get_session
    linkageType: ''
    returnType: int
    signature: int h2_before_frame_send_callback(nghttp2_session *session, const nghttp2_frame
      *frame, void *user_data)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:289,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_nghttp2.c:300,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 7
    argNames:
    - session
    - stream_id
    - buf
    - length
    - data_flags
    - source
    - user_data
    argTypes:
    - nghttp2_session*
    - int32_t
    - uint8_t*
    - size_t
    - uint32_t*
    - nghttp2_data_source*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 280
    functionDepth: 1
    functionLinenumber: 280
    functionLinenumberEnd: 311
    functionName: h2_data_source_read_callback
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - memcpy
    linkageType: ''
    returnType: ssize_t
    signature: ssize_t h2_data_source_read_callback(nghttp2_session *session, int32_t
      stream_id, uint8_t *buf, size_t length, uint32_t *data_flags, nghttp2_data_source
      *source, void *user_data)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: hmux_get_session
      Src: /src/gpac/src/utils/downloader_nghttp2.c:328,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_nghttp2.c:333,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_nghttp2.c:334,1
    - Dst: h2_write_data
      Src: /src/gpac/src/utils/downloader_nghttp2.c:336,1
    - Dst: h2_write_data
      Src: /src/gpac/src/utils/downloader_nghttp2.c:344,1
    - Dst: h2_write_data
      Src: /src/gpac/src/utils/downloader_nghttp2.c:352,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:365,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 42
    argCount: 6
    argNames:
    - session
    - frame
    - framehd
    - length
    - source
    - user_data
    argTypes:
    - nghttp2_session*
    - nghttp2_frame*
    - uint8_t*
    - size_t
    - nghttp2_data_source*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 314
    functionDepth: 3
    functionLinenumber: 314
    functionLinenumberEnd: 367
    functionName: h2_send_data_callback
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - hmux_get_session
    - h2_write_data
    - gf_assert
    - SET_LAST_ERR
    linkageType: ''
    returnType: int
    signature: int h2_send_data_callback(nghttp2_session *session, nghttp2_frame *frame,
      const uint8_t *framehd, size_t length, nghttp2_data_source *source, void *user_data)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_nghttp2.c:371,1
    - Dst: nghttp2_session_send
      Src: /src/gpac/src/utils/downloader_nghttp2.c:372,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:375,1
    - Dst: nghttp2_strerror
      Src: /src/gpac/src/utils/downloader_nghttp2.c:375,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:379,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 369
    functionDepth: 1
    functionLinenumber: 369
    functionLinenumberEnd: 386
    functionName: h2_session_write
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - SET_LAST_ERR
    - GF_LOG
    - nghttp2_strerror
    - nghttp2_session_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h2_session_write(GF_DownloadSession *sess)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nghttp2_submit_rst_stream
      Src: /src/gpac/src/utils/downloader_nghttp2.c:390,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sess
    - is_abort
    argTypes:
    - GF_DownloadSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 388
    functionDepth: 0
    functionLinenumber: 388
    functionLinenumberEnd: 391
    functionName: h2_stream_reset
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - nghttp2_submit_rst_stream
    linkageType: ''
    returnType: void
    signature: void h2_stream_reset(GF_DownloadSession *sess, Bool is_abort)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nghttp2_session_resume_data
      Src: /src/gpac/src/utils/downloader_nghttp2.c:396,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 393
    functionDepth: 0
    functionLinenumber: 393
    functionLinenumberEnd: 398
    functionName: h2_resume_stream
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - nghttp2_session_resume_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h2_resume_stream(GF_DownloadSession *sess)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nghttp2_session_del
      Src: /src/gpac/src/utils/downloader_nghttp2.c:402,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - hmux_sess
    argTypes:
    - struct _http_mux_session*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 400
    functionDepth: 0
    functionLinenumber: 400
    functionLinenumberEnd: 403
    functionName: h2_destroy
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - nghttp2_session_del
    linkageType: ''
    returnType: void
    signature: void h2_destroy(struct _http_mux_session *hmux_sess)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: nghttp2_session_mem_recv
      Src: /src/gpac/src/utils/downloader_nghttp2.c:408,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:410,1
    - Dst: nghttp2_strerror
      Src: /src/gpac/src/utils/downloader_nghttp2.c:410,1
    - Dst: h2_session_write
      Src: /src/gpac/src/utils/downloader_nghttp2.c:417,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - sess
    - data
    - nb_bytes
    argTypes:
    - GF_DownloadSession*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 405
    functionDepth: 2
    functionLinenumber: 405
    functionLinenumberEnd: 419
    functionName: h2_data_received
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - nghttp2_session_mem_recv
    - h2_session_write
    - nghttp2_strerror
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h2_data_received(GF_DownloadSession *sess, const u8 *data, u32
      nb_bytes)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _hdr
    - ','
    - _name
    - ','
    - _value
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 422
    functionDepth: 0
    functionLinenumber: 422
    functionLinenumberEnd: 429
    functionName: NV_HDR
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NV_HDR(_hdr, _name, _value)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_nghttp2.c:438,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/downloader_nghttp2.c:439,1
    - Dst: NV_HDR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:441,1
    - Dst: NV_HDR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:442,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader_nghttp2.c:444,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_nghttp2.c:445,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader_nghttp2.c:446,1
    - Dst: NV_HDR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:447,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader_nghttp2.c:450,1
    - Dst: strchr
      Src: /src/gpac/src/utils/downloader_nghttp2.c:451,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader_nghttp2.c:452,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader_nghttp2.c:454,1
    - Dst: NV_HDR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:456,1
    - Dst: NV_HDR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:458,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_nghttp2.c:462,1
    - Dst: NV_HDR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:463,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_nghttp2.c:468,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_nghttp2.c:469,1
    - Dst: nghttp2_submit_request
      Src: /src/gpac/src/utils/downloader_nghttp2.c:474,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/utils/downloader_nghttp2.c:479,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:480,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:482,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_nghttp2.c:487,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_nghttp2.c:488,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_nghttp2.c:489,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 45
    argCount: 5
    argNames:
    - sess
    - req_name
    - url
    - param_string
    - has_body
    argTypes:
    - GF_DownloadSession*
    - char*
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 430
    functionDepth: 2
    functionLinenumber: 430
    functionLinenumberEnd: 496
    functionName: h2_submit_request
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_assert
    - gf_log_tool_level_on
    - GF_LOG
    - nghttp2_submit_request
    - sprintf
    - NV_HDR
    - gf_list_count
    - gf_dynstrcat
    - strchr
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h2_submit_request(GF_DownloadSession *sess, char *req_name,
      const char *url, const char *param_string, Bool has_body)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_nghttp2.c:506,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/downloader_nghttp2.c:529,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_nghttp2.c:531,1
    - Dst: NV_HDR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:532,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:533,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_nghttp2.c:535,1
    - Dst: NV_HDR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:536,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:537,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_nghttp2.c:541,1
    - Dst: nghttp2_submit_response
      Src: /src/gpac/src/utils/downloader_nghttp2.c:543,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_nghttp2.c:545,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_nghttp2.c:548,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:549,1
    - Dst: nghttp2_strerror
      Src: /src/gpac/src/utils/downloader_nghttp2.c:549,1
    - Dst: h2_session_write
      Src: /src/gpac/src/utils/downloader_nghttp2.c:552,1
    - Dst: h2_flush_send_ex
      Src: /src/gpac/src/utils/downloader_nghttp2.c:554,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_nghttp2.c:556,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 41
    argCount: 5
    argNames:
    - sess
    - reply_code
    - response_body
    - body_len
    - no_body
    argTypes:
    - GF_DownloadSession*
    - u32
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 500
    functionDepth: 2
    functionLinenumber: 500
    functionLinenumberEnd: 559
    functionName: h2_send_reply
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_list_get
    - h2_flush_send_ex
    - GF_LOG
    - nghttp2_submit_response
    - sprintf
    - NV_HDR
    - gf_list_count
    - nghttp2_strerror
    - gf_mx_v
    - gf_malloc
    - h2_session_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h2_send_reply(GF_DownloadSession *sess, u32 reply_code, const
      char *response_body, u32 body_len, Bool no_body)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_nghttp2.c:564,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_nghttp2.c:569,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_nghttp2.c:570,1
    - Dst: GF_DownloadSession*::hmux_sess::resume
      Src: /src/gpac/src/utils/downloader_nghttp2.c:576,1
    - Dst: h2_flush_send_ex
      Src: /src/gpac/src/utils/downloader_nghttp2.c:578,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_nghttp2.c:579,1
    - Dst: memmove
      Src: /src/gpac/src/utils/downloader_nghttp2.c:585,1
    - Dst: gf_sk_probe
      Src: /src/gpac/src/utils/downloader_nghttp2.c:589,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 37
    argCount: 2
    argNames:
    - sess
    - for_close
    argTypes:
    - GF_DownloadSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 561
    functionDepth: 3
    functionLinenumber: 561
    functionLinenumberEnd: 606
    functionName: h2_async_flush
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_assert
    - memmove
    - h2_flush_send_ex
    - gf_sk_probe
    - gf_mx_v
    - GF_DownloadSession*::hmux_sess::resume
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h2_async_flush(GF_DownloadSession *sess, Bool for_close)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_nghttp2.c:612,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader_nghttp2.c:618,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - sess
    - is_destroy
    argTypes:
    - GF_DownloadSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 608
    functionDepth: 1
    functionLinenumber: 608
    functionLinenumberEnd: 625
    functionName: h2_setup_session
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h2_setup_session(GF_DownloadSession *sess, Bool is_destroy)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_read_data
      Src: /src/gpac/src/utils/downloader_nghttp2.c:638,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:641,1
    - Dst: h2_session_write
      Src: /src/gpac/src/utils/downloader_nghttp2.c:645,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/downloader_nghttp2.c:662,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:665,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_nghttp2.c:670,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 35
    argCount: 2
    argNames:
    - sess
    - flush_local_buf
    argTypes:
    - GF_DownloadSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 676
      start: 627
    functionDepth: 2
    functionLinenumber: 627
    functionLinenumberEnd: 676
    functionName: h2_flush_send_ex
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 2
    functionsReached:
    - SET_LAST_ERR
    - memcpy
    - gf_dm_read_data
    - h2_session_write
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void h2_flush_send_ex(GF_DownloadSession *sess, Bool flush_local_buf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: h2_session_write
      Src: /src/gpac/src/utils/downloader_nghttp2.c:679,1
    - Dst: h2_flush_send_ex
      Src: /src/gpac/src/utils/downloader_nghttp2.c:681,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 683
      start: 677
    functionDepth: 3
    functionLinenumber: 677
    functionLinenumberEnd: 683
    functionName: h2_data_pending
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - h2_flush_send_ex
    - h2_session_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h2_data_pending(GF_DownloadSession *sess)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: nghttp2_submit_shutdown_notice
      Src: /src/gpac/src/utils/downloader_nghttp2.c:686,1
    - Dst: h2_session_write
      Src: /src/gpac/src/utils/downloader_nghttp2.c:687,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader_nghttp2.c:691,1
    - Dst: nghttp2_session_want_read
      Src: /src/gpac/src/utils/downloader_nghttp2.c:692,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader_nghttp2.c:696,1
    - Dst: gf_dm_read_data
      Src: /src/gpac/src/utils/downloader_nghttp2.c:700,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:703,1
    - Dst: h2_session_write
      Src: /src/gpac/src/utils/downloader_nghttp2.c:708,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 712
      start: 684
    functionDepth: 2
    functionLinenumber: 684
    functionLinenumberEnd: 712
    functionName: h2_close_session
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - nghttp2_session_want_read
    - SET_LAST_ERR
    - gf_dm_read_data
    - nghttp2_submit_shutdown_notice
    - gf_sys_clock_high_res
    - h2_session_write
    linkageType: ''
    returnType: void
    signature: void h2_close_session(GF_DownloadSession *sess)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: nghttp2_session_callbacks_new
      Src: /src/gpac/src/utils/downloader_nghttp2.c:724,1
    - Dst: nghttp2_session_callbacks_set_send_callback
      Src: /src/gpac/src/utils/downloader_nghttp2.c:725,1
    - Dst: nghttp2_session_callbacks_set_on_frame_recv_callback
      Src: /src/gpac/src/utils/downloader_nghttp2.c:726,1
    - Dst: nghttp2_session_callbacks_set_before_frame_send_callback
      Src: /src/gpac/src/utils/downloader_nghttp2.c:727,1
    - Dst: nghttp2_session_callbacks_set_on_data_chunk_recv_callback
      Src: /src/gpac/src/utils/downloader_nghttp2.c:729,1
    - Dst: nghttp2_session_callbacks_set_on_stream_close_callback
      Src: /src/gpac/src/utils/downloader_nghttp2.c:730,1
    - Dst: nghttp2_session_callbacks_set_on_header_callback
      Src: /src/gpac/src/utils/downloader_nghttp2.c:731,1
    - Dst: nghttp2_session_callbacks_set_on_begin_headers_callback
      Src: /src/gpac/src/utils/downloader_nghttp2.c:732,1
    - Dst: nghttp2_session_callbacks_set_error_callback
      Src: /src/gpac/src/utils/downloader_nghttp2.c:733,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader_nghttp2.c:735,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/downloader_nghttp2.c:736,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader_nghttp2.c:737,1
    - Dst: nghttp2_session_callbacks_set_send_data_callback
      Src: /src/gpac/src/utils/downloader_nghttp2.c:739,1
    - Dst: nghttp2_session_server_new
      Src: /src/gpac/src/utils/downloader_nghttp2.c:742,1
    - Dst: nghttp2_session_client_new
      Src: /src/gpac/src/utils/downloader_nghttp2.c:744,1
    - Dst: nghttp2_session_callbacks_del
      Src: /src/gpac/src/utils/downloader_nghttp2.c:746,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/downloader_nghttp2.c:763,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_nghttp2.c:766,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/utils/downloader_nghttp2.c:767,1
    - Dst: h2_setup_session
      Src: /src/gpac/src/utils/downloader_nghttp2.c:774,1
    - Dst: nghttp2_session_upgrade2
      Src: /src/gpac/src/utils/downloader_nghttp2.c:779,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_nghttp2.c:780,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:785,1
    - Dst: nghttp2_submit_settings
      Src: /src/gpac/src/utils/downloader_nghttp2.c:792,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/downloader_nghttp2.c:792,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:795,1
    - Dst: h2_session_write
      Src: /src/gpac/src/utils/downloader_nghttp2.c:798,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 61
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 799
      start: 714
    functionDepth: 2
    functionLinenumber: 714
    functionLinenumberEnd: 799
    functionName: h2_initialize_session
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - gf_free
    - SET_LAST_ERR
    - GF_SAFEALLOC
    - nghttp2_session_callbacks_set_on_data_chunk_recv_callback
    - nghttp2_session_callbacks_set_send_callback
    - nghttp2_session_callbacks_set_on_frame_recv_callback
    - gf_mx_new
    - h2_session_write
    - nghttp2_session_callbacks_set_on_begin_headers_callback
    - gf_list_new
    - sprintf
    - nghttp2_session_callbacks_set_error_callback
    - nghttp2_session_server_new
    - h2_setup_session
    - gf_list_add
    - nghttp2_session_callbacks_del
    - nghttp2_session_client_new
    - nghttp2_session_callbacks_new
    - nghttp2_session_callbacks_set_on_stream_close_callback
    - nghttp2_session_callbacks_set_on_header_callback
    - nghttp2_session_upgrade2
    - nghttp2_session_callbacks_set_before_frame_send_callback
    - nghttp2_session_callbacks_set_send_data_callback
    - nghttp2_submit_settings
    - gf_opts_get_bool
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: void
    signature: void h2_initialize_session(GF_DownloadSession *sess)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PUSH_HDR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:816,1
    - Dst: PUSH_HDR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:817,1
    - Dst: nghttp2_pack_settings_payload
      Src: /src/gpac/src/utils/downloader_nghttp2.c:820,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/downloader_nghttp2.c:820,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/utils/downloader_nghttp2.c:821,1
    - Dst: PUSH_HDR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:823,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 826
      start: 803
    functionDepth: 1
    functionLinenumber: 803
    functionLinenumberEnd: 826
    functionName: http2_set_upgrade_headers
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - nghttp2_pack_settings_payload
    - PUSH_HDR
    - GF_ARRAY_LENGTH
    - gf_base64_encode
    linkageType: ''
    returnType: void
    signature: void http2_set_upgrade_headers(GF_DownloadSession *sess)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: nghttp2_pack_settings_payload
      Src: /src/gpac/src/utils/downloader_nghttp2.c:838,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/downloader_nghttp2.c:838,1
    - Dst: h2_initialize_session
      Src: /src/gpac/src/utils/downloader_nghttp2.c:840,1
    - Dst: nghttp2_session_upgrade2
      Src: /src/gpac/src/utils/downloader_nghttp2.c:842,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:844,1
    - Dst: nghttp2_strerror
      Src: /src/gpac/src/utils/downloader_nghttp2.c:844,1
    - Dst: nghttp2_session_mem_recv
      Src: /src/gpac/src/utils/downloader_nghttp2.c:849,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:851,1
    - Dst: nghttp2_strerror
      Src: /src/gpac/src/utils/downloader_nghttp2.c:851,1
    - Dst: h2_session_write
      Src: /src/gpac/src/utils/downloader_nghttp2.c:857,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:861,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 3
    argNames:
    - sess
    - body
    - body_len
    argTypes:
    - GF_DownloadSession*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 863
      start: 828
    functionDepth: 3
    functionLinenumber: 828
    functionLinenumberEnd: 863
    functionName: http2_do_upgrade
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - nghttp2_pack_settings_payload
    - nghttp2_session_mem_recv
    - GF_LOG
    - nghttp2_session_upgrade2
    - nghttp2_strerror
    - GF_ARRAY_LENGTH
    - h2_initialize_session
    - h2_session_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err http2_do_upgrade(GF_DownloadSession *sess, const char *body,
      u32 body_len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_nghttp2.c:873,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader_nghttp2.c:874,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_nghttp2.c:878,1
    - Dst: dm_sess_write
      Src: /src/gpac/src/utils/downloader_nghttp2.c:879,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_nghttp2.c:881,1
    - Dst: h2_initialize_session
      Src: /src/gpac/src/utils/downloader_nghttp2.c:882,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 884
      start: 865
    functionDepth: 3
    functionLinenumber: 865
    functionLinenumberEnd: 884
    functionName: http2_check_upgrade
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 1
    functionsReached:
    - gf_free
    - dm_sess_write
    - gf_assert
    - gf_dynstrcat
    - strlen
    - h2_initialize_session
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err http2_check_upgrade(GF_DownloadSession *sess)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 35
    functionName: FT_IS_SMALL
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FT_IS_SMALL( x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - base
    argTypes:
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 53
    functionName: ft_conic_split
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ft_conic_split(GF_Point2D*  base )
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FT_IS_SMALL
      Src: /src/gpac/src/utils/path2d_stroker.c:66,1
    - Dst: FT_IS_SMALL
      Src: /src/gpac/src/utils/path2d_stroker.c:66,1
    - Dst: FT_IS_SMALL
      Src: /src/gpac/src/utils/path2d_stroker.c:67,1
    - Dst: FT_IS_SMALL
      Src: /src/gpac/src/utils/path2d_stroker.c:67,1
    - Dst: gf_atan2
      Src: /src/gpac/src/utils/path2d_stroker.c:73,1
    - Dst: gf_atan2
      Src: /src/gpac/src/utils/path2d_stroker.c:76,1
    - Dst: gf_atan2
      Src: /src/gpac/src/utils/path2d_stroker.c:78,1
    - Dst: gf_atan2
      Src: /src/gpac/src/utils/path2d_stroker.c:79,1
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d_stroker.c:81,1
    - Dst: gf_angle_diff
      Src: /src/gpac/src/utils/path2d_stroker.c:81,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 3
    argNames:
    - base
    - angle_in
    - angle_out
    argTypes:
    - GF_Point2D*
    - Fixed*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 83
    functionName: ft_conic_is_small_enough
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - FT_IS_SMALL
    - ABS
    - gf_angle_diff
    - gf_atan2
    linkageType: ''
    returnType: Bool
    signature: Bool ft_conic_is_small_enough( GF_Point2D*  base, Fixed *angle_in,
      Fixed *angle_out)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 1
    argNames:
    - base
    argTypes:
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 107
    functionName: ft_cubic_split
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ft_cubic_split( GF_Point2D*  base )
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FT_IS_SMALL
      Src: /src/gpac/src/utils/path2d_stroker.c:122,1
    - Dst: FT_IS_SMALL
      Src: /src/gpac/src/utils/path2d_stroker.c:122,1
    - Dst: FT_IS_SMALL
      Src: /src/gpac/src/utils/path2d_stroker.c:123,1
    - Dst: FT_IS_SMALL
      Src: /src/gpac/src/utils/path2d_stroker.c:123,1
    - Dst: FT_IS_SMALL
      Src: /src/gpac/src/utils/path2d_stroker.c:124,1
    - Dst: FT_IS_SMALL
      Src: /src/gpac/src/utils/path2d_stroker.c:124,1
    - Dst: gf_atan2
      Src: /src/gpac/src/utils/path2d_stroker.c:131,1
    - Dst: gf_atan2
      Src: /src/gpac/src/utils/path2d_stroker.c:132,1
    - Dst: gf_atan2
      Src: /src/gpac/src/utils/path2d_stroker.c:136,1
    - Dst: gf_atan2
      Src: /src/gpac/src/utils/path2d_stroker.c:137,1
    - Dst: gf_atan2
      Src: /src/gpac/src/utils/path2d_stroker.c:141,1
    - Dst: gf_atan2
      Src: /src/gpac/src/utils/path2d_stroker.c:142,1
    - Dst: gf_atan2
      Src: /src/gpac/src/utils/path2d_stroker.c:144,1
    - Dst: gf_atan2
      Src: /src/gpac/src/utils/path2d_stroker.c:145,1
    - Dst: gf_atan2
      Src: /src/gpac/src/utils/path2d_stroker.c:146,1
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d_stroker.c:148,1
    - Dst: gf_angle_diff
      Src: /src/gpac/src/utils/path2d_stroker.c:148,1
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d_stroker.c:149,1
    - Dst: gf_angle_diff
      Src: /src/gpac/src/utils/path2d_stroker.c:149,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 4
    argNames:
    - base
    - angle_in
    - angle_mid
    - angle_out
    argTypes:
    - GF_Point2D*
    - Fixed*
    - Fixed*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 151
    functionName: ft_cubic_is_small_enough
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - FT_IS_SMALL
    - ABS
    - gf_angle_diff
    - gf_atan2
    linkageType: ''
    returnType: Bool
    signature: Bool ft_cubic_is_small_enough(GF_Point2D *base, Fixed *angle_in, Fixed
      *angle_mid, Fixed *angle_out)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/path2d_stroker.c:190,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/path2d_stroker.c:191,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - border
    - new_points
    argTypes:
    - FT_StrokeBorder
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 196
    functionName: ft_stroke_border_grow
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: s32
    signature: s32 ft_stroke_border_grow(FT_StrokeBorder  border, u32 new_points)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - border
    argTypes:
    - FT_StrokeBorder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 208
    functionName: ft_stroke_border_close
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ft_stroke_border_close( FT_StrokeBorder  border )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/path2d_stroker.c:212,1
    - Dst: ft_stroke_border_grow
      Src: /src/gpac/src/utils/path2d_stroker.c:219,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 3
    argNames:
    - border
    - to
    - movable
    argTypes:
    - FT_StrokeBorder
    - GF_Point2D*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 232
    functionName: ft_stroke_border_lineto
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - ft_stroke_border_grow
    linkageType: ''
    returnType: s32
    signature: s32 ft_stroke_border_lineto( FT_StrokeBorder  border, GF_Point2D*       to,
      Bool movable )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/path2d_stroker.c:237,1
    - Dst: ft_stroke_border_grow
      Src: /src/gpac/src/utils/path2d_stroker.c:238,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - border
    - control
    - to
    argTypes:
    - FT_StrokeBorder
    - GF_Point2D*
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 235
    functionDepth: 1
    functionLinenumber: 235
    functionLinenumberEnd: 254
    functionName: ft_stroke_border_conicto
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - ft_stroke_border_grow
    linkageType: ''
    returnType: s32
    signature: s32 ft_stroke_border_conicto( FT_StrokeBorder  border, GF_Point2D*       control,
      GF_Point2D*       to )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/path2d_stroker.c:262,1
    - Dst: ft_stroke_border_grow
      Src: /src/gpac/src/utils/path2d_stroker.c:264,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 4
    argNames:
    - border
    - control1
    - control2
    - to
    argTypes:
    - FT_StrokeBorder
    - GF_Point2D*
    - GF_Point2D*
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 257
    functionDepth: 1
    functionLinenumber: 257
    functionLinenumberEnd: 281
    functionName: ft_stroke_border_cubicto
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - ft_stroke_border_grow
    linkageType: ''
    returnType: s32
    signature: "s32 ft_stroke_border_cubicto( FT_StrokeBorder  border,\n                                     GF_Point2D*
      \      control1,\n                                     GF_Point2D*       control2,\n
      \                                    GF_Point2D*       to )"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:296,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:323,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/path2d_stroker.c:328,1
    - Dst: gf_sin
      Src: /src/gpac/src/utils/path2d_stroker.c:328,1
    - Dst: gf_cos
      Src: /src/gpac/src/utils/path2d_stroker.c:328,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:330,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:334,1
    - Dst: ft_stroke_border_cubicto
      Src: /src/gpac/src/utils/path2d_stroker.c:339,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 36
    argCount: 5
    argNames:
    - border
    - center
    - radius
    - angle_start
    - angle_diff
    argTypes:
    - FT_StrokeBorder
    - GF_Point2D*
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 286
    functionDepth: 2
    functionLinenumber: 286
    functionLinenumberEnd: 347
    functionName: ft_stroke_border_arcto
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - ft_stroke_border_cubicto
    - gf_sin
    - gf_muldiv
    - gf_v2d_from_polar
    - gf_cos
    linkageType: ''
    returnType: s32
    signature: "s32 ft_stroke_border_arcto( FT_StrokeBorder  border,\n                                   GF_Point2D*
      \      center,\n                                   Fixed         radius,\n                                   Fixed
      angle_start,\n                                   Fixed angle_diff )"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ft_stroke_border_close
      Src: /src/gpac/src/utils/path2d_stroker.c:354,1
    - Dst: ft_stroke_border_lineto
      Src: /src/gpac/src/utils/path2d_stroker.c:358,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - border
    - to
    argTypes:
    - FT_StrokeBorder
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 350
    functionDepth: 2
    functionLinenumber: 350
    functionLinenumberEnd: 359
    functionName: ft_stroke_border_moveto
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - ft_stroke_border_close
    - ft_stroke_border_lineto
    linkageType: ''
    returnType: s32
    signature: s32 ft_stroke_border_moveto(FT_StrokeBorder  border, GF_Point2D*       to
      )
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 3
    argNames:
    - border
    - anum_points
    - anum_contours
    argTypes:
    - FT_StrokeBorder
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 362
    functionDepth: 0
    functionLinenumber: 362
    functionLinenumberEnd: 405
    functionName: ft_stroke_border_get_counts
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: "s32 ft_stroke_border_get_counts(FT_StrokeBorder  border,\n                                       u32
      *anum_points,\n                                       u32 *anum_contours )"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/utils/path2d_stroker.c:413,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - border
    - outline
    argTypes:
    - FT_StrokeBorder
    - GF_Path*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 408
    functionDepth: 0
    functionLinenumber: 408
    functionLinenumberEnd: 446
    functionName: ft_stroke_border_export
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: void
    signature: void ft_stroke_border_export( FT_StrokeBorder  border, GF_Path*      outline
      )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 457
    functionDepth: 0
    functionLinenumber: 457
    functionLinenumberEnd: 458
    functionName: FT_SIDE_TO_ROTATE
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FT_SIDE_TO_ROTATE( s )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FT_SIDE_TO_ROTATE
      Src: /src/gpac/src/utils/path2d_stroker.c:485,1
    - Dst: gf_angle_diff
      Src: /src/gpac/src/utils/path2d_stroker.c:486,1
    - Dst: ft_stroke_border_arcto
      Src: /src/gpac/src/utils/path2d_stroker.c:488,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - stroker
    - side
    argTypes:
    - FT_Stroker*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 495
      start: 479
    functionDepth: 3
    functionLinenumber: 479
    functionLinenumberEnd: 495
    functionName: ft_stroker_arcto
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - ft_stroke_border_arcto
    - gf_angle_diff
    - FT_SIDE_TO_ROTATE
    linkageType: ''
    returnType: s32
    signature: s32 ft_stroker_arcto( FT_Stroker  *stroker, s32 side )
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FT_SIDE_TO_ROTATE
      Src: /src/gpac/src/utils/path2d_stroker.c:507,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:512,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:516,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:520,1
    - Dst: ft_stroke_border_cubicto
      Src: /src/gpac/src/utils/path2d_stroker.c:527,1
    - Dst: FT_SIDE_TO_ROTATE
      Src: /src/gpac/src/utils/path2d_stroker.c:531,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:536,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:537,1
    - Dst: ft_stroke_border_lineto
      Src: /src/gpac/src/utils/path2d_stroker.c:542,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:546,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:547,1
    - Dst: ft_stroke_border_lineto
      Src: /src/gpac/src/utils/path2d_stroker.c:552,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:559,1
    - Dst: ft_stroke_border_lineto
      Src: /src/gpac/src/utils/path2d_stroker.c:562,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 40
    argCount: 3
    argNames:
    - stroker
    - angle
    - side
    argTypes:
    - FT_Stroker*
    - Fixed
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 498
    functionDepth: 2
    functionLinenumber: 498
    functionLinenumberEnd: 567
    functionName: ft_stroker_cap
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - ft_stroke_border_lineto
    - ft_stroke_border_cubicto
    - gf_v2d_from_polar
    - FT_SIDE_TO_ROTATE
    linkageType: ''
    returnType: s32
    signature: s32 ft_stroker_cap(FT_Stroker  *stroker, Fixed angle, s32 side)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FT_SIDE_TO_ROTATE
      Src: /src/gpac/src/utils/path2d_stroker.c:579,1
    - Dst: gf_angle_diff
      Src: /src/gpac/src/utils/path2d_stroker.c:582,1
    - Dst: gf_cos
      Src: /src/gpac/src/utils/path2d_stroker.c:590,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d_stroker.c:591,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:594,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d_stroker.c:599,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:600,1
    - Dst: ft_stroke_border_lineto
      Src: /src/gpac/src/utils/path2d_stroker.c:604,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 2
    argNames:
    - stroker
    - side
    argTypes:
    - FT_Stroker*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 571
    functionDepth: 2
    functionLinenumber: 571
    functionLinenumberEnd: 606
    functionName: ft_stroker_inside
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - FT_SIDE_TO_ROTATE
    - gf_divfix
    - gf_angle_diff
    - ft_stroke_border_lineto
    - gf_v2d_from_polar
    - gf_mulfix
    - gf_cos
    linkageType: ''
    returnType: s32
    signature: s32 ft_stroker_inside(FT_Stroker *stroker, s32 side)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_sin
      Src: /src/gpac/src/utils/path2d_stroker.c:620,1
    - Dst: gf_angle_diff
      Src: /src/gpac/src/utils/path2d_stroker.c:620,1
    - Dst: gf_invfix
      Src: /src/gpac/src/utils/path2d_stroker.c:622,1
    - Dst: ft_stroker_arcto
      Src: /src/gpac/src/utils/path2d_stroker.c:630,1
    - Dst: FT_SIDE_TO_ROTATE
      Src: /src/gpac/src/utils/path2d_stroker.c:633,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:634,1
    - Dst: ft_stroke_border_lineto
      Src: /src/gpac/src/utils/path2d_stroker.c:640,1
    - Dst: FT_SIDE_TO_ROTATE
      Src: /src/gpac/src/utils/path2d_stroker.c:648,1
    - Dst: gf_angle_diff
      Src: /src/gpac/src/utils/path2d_stroker.c:650,1
    - Dst: gf_cos
      Src: /src/gpac/src/utils/path2d_stroker.c:659,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d_stroker.c:660,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:672,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d_stroker.c:672,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d_stroker.c:677,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d_stroker.c:677,1
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d_stroker.c:677,1
    - Dst: gf_sin
      Src: /src/gpac/src/utils/path2d_stroker.c:677,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:679,1
    - Dst: ft_stroke_border_lineto
      Src: /src/gpac/src/utils/path2d_stroker.c:683,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:688,1
    - Dst: ft_stroke_border_lineto
      Src: /src/gpac/src/utils/path2d_stroker.c:692,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:697,1
    - Dst: ft_stroke_border_lineto
      Src: /src/gpac/src/utils/path2d_stroker.c:701,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d_stroker.c:709,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:711,1
    - Dst: ft_stroke_border_lineto
      Src: /src/gpac/src/utils/path2d_stroker.c:715,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:719,1
    - Dst: ft_stroke_border_lineto
      Src: /src/gpac/src/utils/path2d_stroker.c:723,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 78
    argCount: 2
    argNames:
    - stroker
    - side
    argTypes:
    - FT_Stroker*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 610
    functionDepth: 4
    functionLinenumber: 610
    functionLinenumberEnd: 728
    functionName: ft_stroker_outside
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - ft_stroker_arcto
    - gf_sin
    - ABS
    - FT_SIDE_TO_ROTATE
    - gf_mulfix
    - gf_divfix
    - gf_angle_diff
    - gf_invfix
    - ft_stroke_border_lineto
    - gf_v2d_from_polar
    - gf_cos
    linkageType: ''
    returnType: s32
    signature: s32 ft_stroker_outside( FT_Stroker *stroker, s32 side )
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_angle_diff
      Src: /src/gpac/src/utils/path2d_stroker.c:737,1
    - Dst: ft_stroker_inside
      Src: /src/gpac/src/utils/path2d_stroker.c:750,1
    - Dst: ft_stroker_outside
      Src: /src/gpac/src/utils/path2d_stroker.c:754,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - stroker
    argTypes:
    - FT_Stroker*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 732
    functionDepth: 5
    functionLinenumber: 732
    functionLinenumberEnd: 758
    functionName: ft_stroker_process_corner
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - ft_stroker_inside
    - ft_stroker_outside
    - gf_angle_diff
    linkageType: ''
    returnType: s32
    signature: s32 ft_stroker_process_corner(FT_Stroker *stroker )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:770,1
    - Dst: ft_stroke_border_moveto
      Src: /src/gpac/src/utils/path2d_stroker.c:776,1
    - Dst: ft_stroke_border_moveto
      Src: /src/gpac/src/utils/path2d_stroker.c:784,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 2
    argNames:
    - stroker
    - start_angle
    argTypes:
    - FT_Stroker*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 792
      start: 763
    functionDepth: 3
    functionLinenumber: 763
    functionLinenumberEnd: 792
    functionName: ft_stroker_subpath_start
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - ft_stroke_border_moveto
    - gf_v2d_from_polar
    linkageType: ''
    returnType: s32
    signature: s32 ft_stroker_subpath_start( FT_Stroker *stroker, Fixed start_angle
      )
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_atan2
      Src: /src/gpac/src/utils/path2d_stroker.c:807,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:808,1
    - Dst: ft_stroker_subpath_start
      Src: /src/gpac/src/utils/path2d_stroker.c:815,1
    - Dst: ft_stroker_process_corner
      Src: /src/gpac/src/utils/path2d_stroker.c:821,1
    - Dst: ft_stroke_border_lineto
      Src: /src/gpac/src/utils/path2d_stroker.c:832,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 34
    argCount: 3
    argNames:
    - stroker
    - to
    - is_last
    argTypes:
    - FT_Stroker*
    - GF_Point2D*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 844
      start: 795
    functionDepth: 6
    functionLinenumber: 795
    functionLinenumberEnd: 844
    functionName: FT_Stroker_LineTo
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - ft_stroker_subpath_start
    - gf_atan2
    - ft_stroker_process_corner
    - ft_stroke_border_lineto
    - gf_v2d_from_polar
    linkageType: ''
    returnType: s32
    signature: s32 FT_Stroker_LineTo( FT_Stroker *stroker, GF_Point2D*  to, Bool is_last)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ft_conic_is_small_enough
      Src: /src/gpac/src/utils/path2d_stroker.c:867,1
    - Dst: ft_conic_split
      Src: /src/gpac/src/utils/path2d_stroker.c:869,1
    - Dst: ft_stroker_subpath_start
      Src: /src/gpac/src/utils/path2d_stroker.c:881,1
    - Dst: ft_stroker_process_corner
      Src: /src/gpac/src/utils/path2d_stroker.c:884,1
    - Dst: gf_angle_diff
      Src: /src/gpac/src/utils/path2d_stroker.c:896,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d_stroker.c:898,1
    - Dst: gf_cos
      Src: /src/gpac/src/utils/path2d_stroker.c:898,1
    - Dst: FT_SIDE_TO_ROTATE
      Src: /src/gpac/src/utils/path2d_stroker.c:901,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:904,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:909,1
    - Dst: ft_stroke_border_conicto
      Src: /src/gpac/src/utils/path2d_stroker.c:913,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 46
    argCount: 3
    argNames:
    - stroker
    - control
    - to
    argTypes:
    - FT_Stroker*
    - GF_Point2D*
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 928
      start: 847
    functionDepth: 6
    functionLinenumber: 847
    functionLinenumberEnd: 928
    functionName: FT_Stroker_ConicTo
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - ft_conic_split
    - ft_stroker_subpath_start
    - FT_SIDE_TO_ROTATE
    - gf_divfix
    - ft_conic_is_small_enough
    - gf_angle_diff
    - ft_stroke_border_conicto
    - ft_stroker_process_corner
    - gf_v2d_from_polar
    - gf_cos
    linkageType: ''
    returnType: s32
    signature: s32 FT_Stroker_ConicTo(FT_Stroker *stroker, GF_Point2D*  control, GF_Point2D
      * to)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ft_cubic_is_small_enough
      Src: /src/gpac/src/utils/path2d_stroker.c:955,1
    - Dst: ft_cubic_split
      Src: /src/gpac/src/utils/path2d_stroker.c:957,1
    - Dst: ft_stroker_subpath_start
      Src: /src/gpac/src/utils/path2d_stroker.c:969,1
    - Dst: ft_stroker_process_corner
      Src: /src/gpac/src/utils/path2d_stroker.c:972,1
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d_stroker.c:987,1
    - Dst: ABS
      Src: /src/gpac/src/utils/path2d_stroker.c:988,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d_stroker.c:991,1
    - Dst: gf_cos
      Src: /src/gpac/src/utils/path2d_stroker.c:991,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d_stroker.c:992,1
    - Dst: gf_cos
      Src: /src/gpac/src/utils/path2d_stroker.c:992,1
    - Dst: FT_SIDE_TO_ROTATE
      Src: /src/gpac/src/utils/path2d_stroker.c:995,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:998,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:1002,1
    - Dst: gf_v2d_from_polar
      Src: /src/gpac/src/utils/path2d_stroker.c:1007,1
    - Dst: ft_stroke_border_cubicto
      Src: /src/gpac/src/utils/path2d_stroker.c:1011,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 56
    argCount: 4
    argNames:
    - stroker
    - control1
    - control2
    - to
    argTypes:
    - FT_Stroker*
    - GF_Point2D*
    - GF_Point2D*
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1027
      start: 931
    functionDepth: 6
    functionLinenumber: 931
    functionLinenumberEnd: 1027
    functionName: FT_Stroker_CubicTo
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - ft_stroke_border_cubicto
    - ABS
    - ft_stroker_subpath_start
    - FT_SIDE_TO_ROTATE
    - gf_divfix
    - ft_stroker_process_corner
    - gf_cos
    - gf_v2d_from_polar
    - ft_cubic_split
    - ft_cubic_is_small_enough
    linkageType: ''
    returnType: s32
    signature: "s32 FT_Stroker_CubicTo(FT_Stroker *stroker,\n                              GF_Point2D*
      \ control1,\n                              GF_Point2D*  control2,\n                              GF_Point2D*
      \ to )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - stroker
    - to
    argTypes:
    - FT_Stroker*
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1044
      start: 1032
    functionDepth: 0
    functionLinenumber: 1032
    functionLinenumberEnd: 1044
    functionName: FT_Stroker_BeginSubPath
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 FT_Stroker_BeginSubPath(FT_Stroker *stroker, GF_Point2D*  to)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/path2d_stroker.c:1055,1
    - Dst: ft_stroke_border_grow
      Src: /src/gpac/src/utils/path2d_stroker.c:1058,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 2
    argNames:
    - stroker
    - open
    argTypes:
    - FT_Stroker*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1096
      start: 1046
    functionDepth: 1
    functionLinenumber: 1046
    functionLinenumberEnd: 1096
    functionName: ft_stroker_add_reverse_left
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - ft_stroke_border_grow
    linkageType: ''
    returnType: s32
    signature: s32 ft_stroker_add_reverse_left( FT_Stroker *stroker, Bool     open
      )
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_angle_diff
      Src: /src/gpac/src/utils/path2d_stroker.c:1109,1
    - Dst: ft_stroker_outside
      Src: /src/gpac/src/utils/path2d_stroker.c:1126,1
    - Dst: ft_stroker_add_reverse_left
      Src: /src/gpac/src/utils/path2d_stroker.c:1131,1
    - Dst: ft_stroke_border_close
      Src: /src/gpac/src/utils/path2d_stroker.c:1133,1
    - Dst: ft_stroke_border_close
      Src: /src/gpac/src/utils/path2d_stroker.c:1134,1
    - Dst: ft_stroker_cap
      Src: /src/gpac/src/utils/path2d_stroker.c:1139,1
    - Dst: ft_stroker_add_reverse_left
      Src: /src/gpac/src/utils/path2d_stroker.c:1143,1
    - Dst: ft_stroker_cap
      Src: /src/gpac/src/utils/path2d_stroker.c:1148,1
    - Dst: ft_stroke_border_close
      Src: /src/gpac/src/utils/path2d_stroker.c:1155,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 2
    argNames:
    - stroker
    - do_close
    argTypes:
    - FT_Stroker*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1160
      start: 1099
    functionDepth: 5
    functionLinenumber: 1099
    functionLinenumberEnd: 1160
    functionName: FT_Stroker_EndSubPath
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - ft_stroker_add_reverse_left
    - ft_stroker_cap
    - ft_stroke_border_close
    - gf_angle_diff
    - ft_stroker_outside
    linkageType: ''
    returnType: s32
    signature: s32 FT_Stroker_EndSubPath( FT_Stroker *stroker, Bool do_close)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ft_stroke_border_get_counts
      Src: /src/gpac/src/utils/path2d_stroker.c:1169,1
    - Dst: ft_stroke_border_get_counts
      Src: /src/gpac/src/utils/path2d_stroker.c:1171,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - stroker
    - anum_points
    - anum_contours
    argTypes:
    - FT_Stroker*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1180
      start: 1163
    functionDepth: 1
    functionLinenumber: 1163
    functionLinenumberEnd: 1180
    functionName: FT_Stroker_GetCounts
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - ft_stroke_border_get_counts
    linkageType: ''
    returnType: s32
    signature: s32 FT_Stroker_GetCounts( FT_Stroker *stroker, u32 *anum_points, u32
      *anum_contours )
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: FT_Stroker_BeginSubPath
      Src: /src/gpac/src/utils/path2d_stroker.c:1247,1
    - Dst: FT_Stroker_LineTo
      Src: /src/gpac/src/utils/path2d_stroker.c:1253,1
    - Dst: FT_Stroker_LineTo
      Src: /src/gpac/src/utils/path2d_stroker.c:1271,1
    - Dst: FT_Stroker_ConicTo
      Src: /src/gpac/src/utils/path2d_stroker.c:1297,1
    - Dst: FT_Stroker_ConicTo
      Src: /src/gpac/src/utils/path2d_stroker.c:1309,1
    - Dst: FT_Stroker_ConicTo
      Src: /src/gpac/src/utils/path2d_stroker.c:1316,1
    - Dst: FT_Stroker_CubicTo
      Src: /src/gpac/src/utils/path2d_stroker.c:1337,1
    - Dst: FT_Stroker_CubicTo
      Src: /src/gpac/src/utils/path2d_stroker.c:1342,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/path2d_stroker.c:1348,1
    - Dst: FT_Stroker_EndSubPath
      Src: /src/gpac/src/utils/path2d_stroker.c:1357,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 129
    argCount: 2
    argNames:
    - stroker
    - outline
    argTypes:
    - FT_Stroker*
    - GF_Path*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1370
      start: 1186
    functionDepth: 7
    functionLinenumber: 1186
    functionLinenumberEnd: 1370
    functionName: FT_Stroker_ParseOutline
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - FT_Stroker_CubicTo
    - FT_Stroker_BeginSubPath
    - FT_Stroker_ConicTo
    - FT_Stroker_LineTo
    - FT_Stroker_EndSubPath
    linkageType: ''
    returnType: s32
    signature: s32 FT_Stroker_ParseOutline(FT_Stroker *stroker, GF_Path*  outline)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d_stroker.c:1428,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 73
    argCount: 3
    argNames:
    - pen
    - dash_slot
    - next_slot
    argTypes:
    - GF_PenSettings*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1435
      start: 1381
    functionDepth: 0
    functionLinenumber: 1381
    functionLinenumberEnd: 1435
    functionName: gf_path_get_dash
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - gf_mulfix
    linkageType: ''
    returnType: Fixed
    signature: Fixed gf_path_get_dash(GF_PenSettings *pen, u32 dash_slot, u32 *next_slot)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_add_line_to_vec
      Src: /src/gpac/src/utils/path2d_stroker.c:1453,1
    - Dst: memmove
      Src: /src/gpac/src/utils/path2d_stroker.c:1458,1
    - Dst: memmove
      Src: /src/gpac/src/utils/path2d_stroker.c:1459,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/path2d_stroker.c:1465,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - gp
    - start_contour_index
    argTypes:
    - GF_Path*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1473
      start: 1441
    functionDepth: 3
    functionLinenumber: 1441
    functionLinenumberEnd: 1473
    functionName: gf_path_mergedashes
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - memmove
    - gf_path_add_line_to_vec
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_path_mergedashes(GF_Path *gp, u32 start_contour_index)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/path2d_stroker.c:1492,1
    - Dst: gf_path_get_dash
      Src: /src/gpac/src/utils/path2d_stroker.c:1500,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d_stroker.c:1501,1
    - Dst: gf_path_get_dash
      Src: /src/gpac/src/utils/path2d_stroker.c:1519,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d_stroker.c:1520,1
    - Dst: gf_path_get_dash
      Src: /src/gpac/src/utils/path2d_stroker.c:1524,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d_stroker.c:1525,1
    - Dst: gf_path_get_dash
      Src: /src/gpac/src/utils/path2d_stroker.c:1536,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d_stroker.c:1537,1
    - Dst: gf_v2d_len
      Src: /src/gpac/src/utils/path2d_stroker.c:1548,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d_stroker.c:1557,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d_stroker.c:1560,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d_stroker.c:1561,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/utils/path2d_stroker.c:1562,1
    - Dst: gf_path_add_move_to_vec
      Src: /src/gpac/src/utils/path2d_stroker.c:1577,1
    - Dst: gf_path_add_line_to_vec
      Src: /src/gpac/src/utils/path2d_stroker.c:1579,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d_stroker.c:1582,1
    - Dst: gf_path_add_move_to_vec
      Src: /src/gpac/src/utils/path2d_stroker.c:1592,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d_stroker.c:1602,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d_stroker.c:1605,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d_stroker.c:1606,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/utils/path2d_stroker.c:1610,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/utils/path2d_stroker.c:1614,1
    - Dst: gf_path_get_dash
      Src: /src/gpac/src/utils/path2d_stroker.c:1623,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d_stroker.c:1624,1
    - Dst: gf_path_add_line_to_vec
      Src: /src/gpac/src/utils/path2d_stroker.c:1633,1
    - Dst: gf_path_mergedashes
      Src: /src/gpac/src/utils/path2d_stroker.c:1640,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d_stroker.c:1650,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 151
    argCount: 5
    argNames:
    - dashed
    - pts
    - nb_pts
    - pen
    - length_scale
    argTypes:
    - GF_Path*
    - GF_Point2D*
    - u32
    - GF_PenSettings*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1652
      start: 1475
    functionDepth: 4
    functionLinenumber: 1475
    functionLinenumberEnd: 1652
    functionName: evg_dash_subpath
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_v2d_len
    - gf_divfix
    - gf_path_add_move_to
    - gf_path_add_line_to_vec
    - gf_path_mergedashes
    - gf_mulfix
    - gf_path_get_dash
    - gf_path_add_line_to
    - gf_malloc
    - gf_path_add_move_to_vec
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evg_dash_subpath(GF_Path *dashed, GF_Point2D *pts, u32 nb_pts,
      GF_PenSettings *pen, Fixed length_scale)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_new
      Src: /src/gpac/src/utils/path2d_stroker.c:1660,1
    - Dst: gf_v2d_len
      Src: /src/gpac/src/utils/path2d_stroker.c:1675,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d_stroker.c:1679,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d_stroker.c:1680,1
    - Dst: evg_dash_subpath
      Src: /src/gpac/src/utils/path2d_stroker.c:1687,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 2
    argNames:
    - path
    - pen
    argTypes:
    - GF_Path*
    - GF_PenSettings*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1694
      start: 1654
    functionDepth: 5
    functionLinenumber: 1654
    functionLinenumberEnd: 1694
    functionName: gf_path_dash
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 0
    functionsReached:
    - gf_v2d_len
    - gf_path_new
    - gf_divfix
    - evg_dash_subpath
    - gf_mulfix
    linkageType: ''
    returnType: GF_Path
    signature: GF_Path *gf_path_dash(GF_Path *path, GF_PenSettings *pen)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/utils/path2d_stroker.c:1706,1
    - Dst: gf_path_flatten
      Src: /src/gpac/src/utils/path2d_stroker.c:1714,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/utils/path2d_stroker.c:1721,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d_stroker.c:1723,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d_stroker.c:1724,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d_stroker.c:1727,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/path2d_stroker.c:1728,1
    - Dst: gf_path_clone
      Src: /src/gpac/src/utils/path2d_stroker.c:1732,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d_stroker.c:1734,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/path2d_stroker.c:1735,1
    - Dst: gf_path_get_flatten
      Src: /src/gpac/src/utils/path2d_stroker.c:1747,1
    - Dst: gf_path_dash
      Src: /src/gpac/src/utils/path2d_stroker.c:1749,1
    - Dst: gf_path_del
      Src: /src/gpac/src/utils/path2d_stroker.c:1750,1
    - Dst: FT_Stroker_ParseOutline
      Src: /src/gpac/src/utils/path2d_stroker.c:1756,1
    - Dst: FT_Stroker_GetCounts
      Src: /src/gpac/src/utils/path2d_stroker.c:1759,1
    - Dst: gf_path_new
      Src: /src/gpac/src/utils/path2d_stroker.c:1761,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/path2d_stroker.c:1764,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/path2d_stroker.c:1765,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/path2d_stroker.c:1766,1
    - Dst: ft_stroke_border_export
      Src: /src/gpac/src/utils/path2d_stroker.c:1769,1
    - Dst: ft_stroke_border_export
      Src: /src/gpac/src/utils/path2d_stroker.c:1774,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d_stroker.c:1789,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d_stroker.c:1790,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d_stroker.c:1791,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/path2d_stroker.c:1792,1
    - Dst: gf_path_del
      Src: /src/gpac/src/utils/path2d_stroker.c:1794,1
    - Dst: gf_path_del
      Src: /src/gpac/src/utils/path2d_stroker.c:1795,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 82
    argCount: 2
    argNames:
    - path
    - pen
    argTypes:
    - GF_Path*
    - GF_PenSettings
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1798
      start: 1696
    functionDepth: 8
    functionLinenumber: 1696
    functionLinenumberEnd: 1798
    functionName: gf_path_get_outline
    functionSourceFile: /src/gpac/src/utils/path2d_stroker.c
    functionUses: 5
    functionsReached:
    - gf_malloc
    - gf_free
    - gf_path_clone
    - gf_path_flatten
    - gf_path_new
    - ft_stroke_border_export
    - gf_divfix
    - gf_path_del
    - FT_Stroker_GetCounts
    - memset
    - gf_path_get_flatten
    - FT_Stroker_ParseOutline
    - gf_mulfix
    - gf_path_dash
    - gf_path_get_bounds
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_path_get_outline(GF_Path *path, GF_PenSettings pen)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: gf_cache_entry_persistent
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_cache_entry_persistent(const DownloadedCacheEntry entry)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionName: gf_cache_entry_set_persistent
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_cache_entry_set_persistent(const DownloadedCacheEntry entry)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/src/utils/downloader_cache.c:168,1
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/src/utils/downloader_cache.c:170,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/downloader_cache.c:173,1
    - Dst: gf_sys_check_process_id
      Src: /src/gpac/src/utils/downloader_cache.c:174,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/downloader_cache.c:175,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 166
    functionDepth: 5
    functionLinenumber: 166
    functionLinenumberEnd: 180
    functionName: cache_cleanup_processes
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - sscanf
    - gf_cfg_get_key_count
    - gf_cfg_get_key_name
    - gf_cfg_set_key
    - gf_sys_check_process_id
    linkageType: ''
    returnType: Bool
    signature: Bool cache_cleanup_processes(GF_Config *cfg)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/downloader_cache.c:185,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/downloader_cache.c:187,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/downloader_cache.c:188,1
    - Dst: cache_cleanup_processes
      Src: /src/gpac/src/utils/downloader_cache.c:191,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/downloader_cache.c:192,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader_cache.c:197,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_cache.c:198,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:200,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/downloader_cache.c:201,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/downloader_cache.c:205,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/downloader_cache.c:206,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/downloader_cache.c:207,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/downloader_cache.c:208,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/downloader_cache.c:209,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/downloader_cache.c:210,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/downloader_cache.c:211,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_cache.c:213,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_cache.c:215,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/utils/downloader_cache.c:218,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/utils/downloader_cache.c:224,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/utils/downloader_cache.c:231,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/utils/downloader_cache.c:238,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/downloader_cache.c:242,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 58
    argCount: 4
    argNames:
    - cbck
    - item_name
    - item_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 182
    functionDepth: 6
    functionLinenumber: 182
    functionLinenumberEnd: 244
    functionName: gather_cache_files
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_insert
    - gf_strdup
    - gf_list_get
    - sscanf
    - gf_cfg_del
    - GF_SAFEALLOC
    - gf_cfg_get_key
    - gf_cfg_new
    - gf_list_count
    - gf_list_add
    - cache_cleanup_processes
    linkageType: ''
    returnType: Bool
    signature: Bool gather_cache_files(void *cbck, char *item_name, char *item_path,
      GF_FileEnumInfo *file_info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_cache.c:249,1
    - Dst: gf_sys_create_lockfile
      Src: /src/gpac/src/utils/downloader_cache.c:250,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/downloader_cache.c:254,1
    - Dst: gf_enum_directory
      Src: /src/gpac/src/utils/downloader_cache.c:255,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_cache.c:258,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/utils/downloader_cache.c:259,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/downloader_cache.c:263,1
    - Dst: strstr
      Src: /src/gpac/src/utils/downloader_cache.c:264,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/downloader_cache.c:266,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:269,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:270,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/downloader_cache.c:272,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/downloader_cache.c:273,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - directory
    - max_size
    argTypes:
    - char*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 246
    functionDepth: 3
    functionLinenumber: 246
    functionLinenumberEnd: 275
    functionName: gf_cache_cleanup
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_sys_create_lockfile
    - gf_list_new
    - gf_enum_directory
    - gf_list_pop_back
    - sprintf
    - strstr
    - gf_list_count
    - gf_file_delete
    - gf_list_del
    linkageType: ''
    returnType: u64
    signature: u64 gf_cache_cleanup(const char * directory, u64 max_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 282
    functionName: gf_cache_entry_set_delete_files_when_deleted
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_cache_entry_set_delete_files_when_deleted(const DownloadedCacheEntry
      entry)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 290
    functionDepth: 0
    functionLinenumber: 290
    functionLinenumberEnd: 293
    functionName: gf_cache_get_etag_on_server
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * gf_cache_get_etag_on_server ( const DownloadedCacheEntry entry
      )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 298
    functionName: gf_cache_get_mime_type
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * gf_cache_get_mime_type ( const DownloadedCacheEntry entry )
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 301
    functionDepth: 0
    functionLinenumber: 301
    functionLinenumberEnd: 306
    functionName: gf_cache_set_headers_processed
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_cache_set_headers_processed(const DownloadedCacheEntry entry)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 308
    functionDepth: 0
    functionLinenumber: 308
    functionLinenumberEnd: 312
    functionName: gf_cache_are_headers_processed
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_cache_are_headers_processed(const DownloadedCacheEntry entry)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:318,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_cache.c:319,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - entry
    - eTag
    argTypes:
    - DownloadedCacheEntry
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 314
    functionDepth: 0
    functionLinenumber: 314
    functionLinenumberEnd: 321
    functionName: gf_cache_set_etag_on_server
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_cache_set_etag_on_server(const DownloadedCacheEntry entry,
      const char * eTag )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:327,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_cache.c:328,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - entry
    - eTag
    argTypes:
    - DownloadedCacheEntry
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 330
    functionName: gf_cache_set_etag_on_disk
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_cache_set_etag_on_disk(const DownloadedCacheEntry entry,
      const char * eTag )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:336,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_cache.c:337,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - entry
    - mime_type
    argTypes:
    - DownloadedCacheEntry
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 332
    functionDepth: 0
    functionLinenumber: 332
    functionLinenumberEnd: 339
    functionName: gf_cache_set_mime_type
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_cache_set_mime_type(const DownloadedCacheEntry entry, const
      char * mime_type )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 341
    functionDepth: 0
    functionLinenumber: 341
    functionLinenumberEnd: 344
    functionName: gf_cache_get_start_range
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 gf_cache_get_start_range( const DownloadedCacheEntry entry )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 346
    functionDepth: 0
    functionLinenumber: 346
    functionLinenumberEnd: 349
    functionName: gf_cache_get_end_range
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 gf_cache_get_end_range( const DownloadedCacheEntry entry )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 354
    functionName: gf_cache_get_url
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * gf_cache_get_url ( const DownloadedCacheEntry entry )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 359
    functionName: gf_cache_get_last_modified_on_server
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * gf_cache_get_last_modified_on_server ( const DownloadedCacheEntry
      entry )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:366,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_cache.c:367,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - entry
    - newLastModified
    argTypes:
    - DownloadedCacheEntry
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 361
    functionDepth: 0
    functionLinenumber: 361
    functionLinenumberEnd: 369
    functionName: gf_cache_set_last_modified_on_server
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_cache_set_last_modified_on_server ( const DownloadedCacheEntry
      entry, const char * newLastModified )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:376,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_cache.c:377,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - entry
    - newLastModified
    argTypes:
    - DownloadedCacheEntry
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 379
    functionName: gf_cache_set_last_modified_on_disk
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_cache_set_last_modified_on_disk ( const DownloadedCacheEntry
      entry, const char * newLastModified )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/downloader_cache.c:384,1
    - Dst: gf_sys_create_lockfile
      Src: /src/gpac/src/utils/downloader_cache.c:386,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/downloader_cache.c:388,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 1
    argNames:
    - lockfile
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 381
    functionDepth: 0
    functionLinenumber: 381
    functionLinenumberEnd: 391
    functionName: cache_entry_lock
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_sys_create_lockfile
    - gf_sys_clock
    linkageType: ''
    returnType: GF_LockStatus
    signature: GF_LockStatus cache_entry_lock(const char *lockfile)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_cache.c:402,1
    - Dst: cache_entry_lock
      Src: /src/gpac/src/utils/downloader_cache.c:403,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/downloader_cache.c:404,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_cache.c:408,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/downloader_cache.c:409,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/downloader_cache.c:411,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/downloader_cache.c:413,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_cache.c:416,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/downloader_cache.c:417,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/downloader_cache.c:421,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/downloader_cache.c:423,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/downloader_cache.c:425,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/downloader_cache.c:427,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/downloader_cache.c:428,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/downloader_cache.c:430,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/downloader_cache.c:431,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 2
    argNames:
    - entry
    - success
    argTypes:
    - DownloadedCacheEntry
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 394
    functionDepth: 6
    functionLinenumber: 394
    functionLinenumberEnd: 433
    functionName: gf_cache_flush_disk_cache
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - snprintf
    - gf_cfg_del
    - sprintf
    - cache_entry_lock
    - gf_cfg_new
    - gf_file_delete
    - gf_cfg_set_key
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_cache_flush_disk_cache ( const DownloadedCacheEntry entry,
      Bool success )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 435
    functionDepth: 0
    functionLinenumber: 435
    functionLinenumberEnd: 438
    functionName: gf_cache_get_cache_filesize
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_cache_get_cache_filesize(const DownloadedCacheEntry entry )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 440
    functionDepth: 0
    functionLinenumber: 440
    functionLinenumberEnd: 443
    functionName: gf_cache_get_cache_filename
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * gf_cache_get_cache_filename( const DownloadedCacheEntry entry
      )
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 3
    argNames:
    - entry
    - etag
    - last_modif
    argTypes:
    - DownloadedCacheEntry
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 461
      start: 445
    functionDepth: 0
    functionLinenumber: 445
    functionLinenumberEnd: 461
    functionName: gf_cache_get_http_headers
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_cache_get_http_headers(const DownloadedCacheEntry entry,
      const char **etag, const char **last_modif)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/downloader_cache.c:465,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/downloader_cache.c:466,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/downloader_cache.c:471,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/downloader_cache.c:474,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/downloader_cache.c:482,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/downloader_cache.c:488,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/downloader_cache.c:489,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/downloader_cache.c:493,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/downloader_cache.c:497,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/downloader_cache.c:500,1
    - Dst: gf_fsize
      Src: /src/gpac/src/utils/downloader_cache.c:502,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/downloader_cache.c:503,1
    - Dst: strtoul
      Src: /src/gpac/src/utils/downloader_cache.c:505,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:508,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:512,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 43
    argCount: 3
    argNames:
    - entry
    - url
    - cfg
    argTypes:
    - DownloadedCacheEntry
    - char*
    - GF_Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 463
    functionDepth: 4
    functionLinenumber: 463
    functionLinenumberEnd: 517
    functionName: gf_cache_check_if_cache_file_is_corrupted
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - strtoul
    - gf_fclose
    - sscanf
    - GF_LOG
    - gf_cfg_get_key
    - strncmp
    - gf_fopen
    - gf_fsize
    - stricmp
    linkageType: ''
    returnType: void
    signature: void gf_cache_check_if_cache_file_is_corrupted(const DownloadedCacheEntry
      entry, const char *url, GF_Config *cfg)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_cache.c:533,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:535,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/downloader_cache.c:542,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/downloader_cache.c:544,1
    - Dst: gf_sha1_csum
      Src: /src/gpac/src/utils/downloader_cache.c:546,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_cache.c:546,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_cache.c:554,1
    - Dst: strcat
      Src: /src/gpac/src/utils/downloader_cache.c:555,1
    - Dst: assert
      Src: /src/gpac/src/utils/downloader_cache.c:558,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_cache.c:558,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_cache.c:563,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_cache.c:564,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/downloader_cache.c:578,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/downloader_cache.c:581,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_cache.c:581,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_cache.c:581,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/downloader_cache.c:584,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_cache.c:584,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_cache.c:584,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_cache.c:584,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:589,1
    - Dst: gf_cache_delete_entry
      Src: /src/gpac/src/utils/downloader_cache.c:590,1
    - Dst: gf_blob_register
      Src: /src/gpac/src/utils/downloader_cache.c:598,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/downloader_cache.c:600,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:601,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/downloader_cache.c:608,1
    - Dst: strcat
      Src: /src/gpac/src/utils/downloader_cache.c:609,1
    - Dst: strcat
      Src: /src/gpac/src/utils/downloader_cache.c:610,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/downloader_cache.c:611,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/downloader_cache.c:615,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/downloader_cache.c:618,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/downloader_cache.c:621,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_cache.c:622,1
    - Dst: strncpy
      Src: /src/gpac/src/utils/downloader_cache.c:623,1
    - Dst: strncpy
      Src: /src/gpac/src/utils/downloader_cache.c:625,1
    - Dst: assert
      Src: /src/gpac/src/utils/downloader_cache.c:626,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_cache.c:626,1
    - Dst: strcat
      Src: /src/gpac/src/utils/downloader_cache.c:627,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader_cache.c:630,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader_cache.c:631,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/downloader_cache.c:634,1
    - Dst: cache_entry_lock
      Src: /src/gpac/src/utils/downloader_cache.c:635,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:637,1
    - Dst: gf_cache_delete_entry
      Src: /src/gpac/src/utils/downloader_cache.c:638,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/downloader_cache.c:642,1
    - Dst: gf_cfg_force_new
      Src: /src/gpac/src/utils/downloader_cache.c:644,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:646,1
    - Dst: gf_cache_delete_entry
      Src: /src/gpac/src/utils/downloader_cache.c:647,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/downloader_cache.c:648,1
    - Dst: gf_cache_check_if_cache_file_is_corrupted
      Src: /src/gpac/src/utils/downloader_cache.c:653,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/src/utils/downloader_cache.c:654,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:655,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/downloader_cache.c:657,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/downloader_cache.c:658,1
    - Dst: gf_cfg_del_section
      Src: /src/gpac/src/utils/downloader_cache.c:659,1
    - Dst: gf_cfg_del_section
      Src: /src/gpac/src/utils/downloader_cache.c:660,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/downloader_cache.c:665,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:666,1
    - Dst: gf_cache_delete_entry
      Src: /src/gpac/src/utils/downloader_cache.c:667,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/downloader_cache.c:668,1
    - Dst: gf_cache_set_etag_on_disk
      Src: /src/gpac/src/utils/downloader_cache.c:672,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/downloader_cache.c:672,1
    - Dst: gf_cache_set_etag_on_server
      Src: /src/gpac/src/utils/downloader_cache.c:673,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/downloader_cache.c:673,1
    - Dst: gf_cache_set_mime_type
      Src: /src/gpac/src/utils/downloader_cache.c:674,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/downloader_cache.c:674,1
    - Dst: gf_cache_set_last_modified_on_disk
      Src: /src/gpac/src/utils/downloader_cache.c:675,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/downloader_cache.c:675,1
    - Dst: gf_cache_set_last_modified_on_server
      Src: /src/gpac/src/utils/downloader_cache.c:676,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/downloader_cache.c:676,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/downloader_cache.c:678,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/downloader_cache.c:679,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/downloader_cache.c:680,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader_cache.c:681,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_cache.c:684,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/utils/downloader_cache.c:684,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/downloader_cache.c:685,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/downloader_cache.c:688,1
    - Dst: atoi
      Src: /src/gpac/src/utils/downloader_cache.c:689,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_cache.c:691,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/downloader_cache.c:692,1
    - Dst: cache_cleanup_processes
      Src: /src/gpac/src/utils/downloader_cache.c:696,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_cache.c:698,1
    - Dst: gf_sys_get_process_id
      Src: /src/gpac/src/utils/downloader_cache.c:698,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/downloader_cache.c:699,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/downloader_cache.c:703,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/downloader_cache.c:704,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 141
    argCount: 6
    argNames:
    - cache_directory
    - url
    - start_range
    - end_range
    - mem_storage
    - mx
    argTypes:
    - char*
    - char*
    - u64
    - u64
    - Bool
    - GF_Mutex*
    assertStmts:
    - condition: (strlen(ext))
      pos:
        line_end: 625
        line_start: 625
        source_file: /src/gpac/src/utils/downloader_cache.c
    - condition: ( strlen ( tmp ) == (_CACHE_HASH_SIZE * 2) )
      pos:
        line_end: 557
        line_start: 557
        source_file: /src/gpac/src/utils/downloader_cache.c
    constantsTouched: []
    func_position:
      end: 707
      start: 524
    functionDepth: 6
    functionLinenumber: 524
    functionLinenumberEnd: 707
    functionName: gf_cache_create_entry
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sys_get_process_id
    - gf_cfg_force_new
    - gf_file_exists
    - strcpy
    - gf_cfg_get_key_count
    - gf_sha1_csum
    - cache_entry_lock
    - gf_cache_set_etag_on_server
    - gf_cache_set_last_modified_on_disk
    - gf_cache_set_last_modified_on_server
    - gf_cfg_del_section
    - atoi
    - gf_cfg_set_key
    - gf_cache_set_etag_on_disk
    - strcat
    - gf_strdup
    - gf_list_new
    - strrchr
    - snprintf
    - gf_cfg_del
    - sprintf
    - gf_cfg_get_key
    - gf_cache_delete_entry
    - gf_dynstrcat
    - cache_cleanup_processes
    - gf_net_get_utc
    - sscanf
    - GF_LOG
    - assert
    - gf_blob_register
    - strncpy
    - gf_malloc
    - strlen
    - gf_cache_set_mime_type
    - gf_cache_check_if_cache_file_is_corrupted
    - gf_file_delete
    - strcmp
    linkageType: ''
    returnType: DownloadedCacheEntry
    signature: DownloadedCacheEntry gf_cache_create_entry(const char * cache_directory,
      const char * url , u64 start_range, u64 end_range, Bool mem_storage, GF_Mutex
      *mx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - entry
    - length
    argTypes:
    - DownloadedCacheEntry
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 718
      start: 709
    functionDepth: 0
    functionLinenumber: 709
    functionLinenumberEnd: 718
    functionName: gf_cache_set_content_length
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_cache_set_content_length( const DownloadedCacheEntry entry,
      u32 length )
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 727
      start: 720
    functionDepth: 0
    functionLinenumber: 720
    functionLinenumberEnd: 727
    functionName: gf_cache_get_content_length
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_cache_get_content_length( const DownloadedCacheEntry entry)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_cache.c:735,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:737,1
    - Dst: gf_fflush
      Src: /src/gpac/src/utils/downloader_cache.c:740,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/downloader_cache.c:740,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:741,1
    - Dst: gf_cache_set_last_modified_on_disk
      Src: /src/gpac/src/utils/downloader_cache.c:745,1
    - Dst: gf_cache_get_last_modified_on_server
      Src: /src/gpac/src/utils/downloader_cache.c:745,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:747,1
    - Dst: gf_cache_set_etag_on_disk
      Src: /src/gpac/src/utils/downloader_cache.c:750,1
    - Dst: gf_cache_get_etag_on_server
      Src: /src/gpac/src/utils/downloader_cache.c:750,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:752,1
    - Dst: gf_cache_flush_disk_cache
      Src: /src/gpac/src/utils/downloader_cache.c:757,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:759,1
    - Dst: sync
      Src: /src/gpac/src/utils/downloader_cache.c:764,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:768,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 38
    argCount: 3
    argNames:
    - entry
    - sess
    - success
    argTypes:
    - DownloadedCacheEntry
    - GF_DownloadSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 777
      start: 729
    functionDepth: 7
    functionLinenumber: 729
    functionLinenumberEnd: 777
    functionName: gf_cache_close_write_cache
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 3
    functionsReached:
    - gf_fclose
    - gf_assert
    - gf_cache_get_last_modified_on_server
    - GF_LOG
    - sync
    - gf_cache_set_last_modified_on_disk
    - gf_fflush
    - gf_cache_flush_disk_cache
    - gf_cache_set_etag_on_disk
    - gf_cache_get_etag_on_server
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_cache_close_write_cache( const DownloadedCacheEntry entry,
      const GF_DownloadSession * sess, Bool success )
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_cache.c:786,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_cache.c:793,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:795,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/downloader_cache.c:799,1
    - Dst: gf_blob_register
      Src: /src/gpac/src/utils/downloader_cache.c:803,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/downloader_cache.c:805,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:806,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_cache.c:808,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:811,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:817,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/downloader_cache.c:818,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:820,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/downloader_cache.c:827,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_cache.c:830,1
    - Dst: cache_entry_lock
      Src: /src/gpac/src/utils/downloader_cache.c:831,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/downloader_cache.c:832,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_cache.c:834,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/utils/downloader_cache.c:834,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/downloader_cache.c:835,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/downloader_cache.c:836,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/downloader_cache.c:837,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/downloader_cache.c:838,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 50
    argCount: 2
    argNames:
    - entry
    - sess
    argTypes:
    - DownloadedCacheEntry
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 841
      start: 779
    functionDepth: 6
    functionLinenumber: 779
    functionLinenumberEnd: 841
    functionName: gf_cache_open_write_cache
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_assert
    - gf_fseek
    - gf_cfg_del
    - GF_LOG
    - strcpy
    - sprintf
    - cache_entry_lock
    - gf_cfg_new
    - gf_blob_register
    - gf_mx_v
    - gf_fopen
    - gf_file_delete
    - gf_net_get_utc
    - gf_cfg_set_key
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_cache_open_write_cache( const DownloadedCacheEntry entry,
      const GF_DownloadSession * sess)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:848,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_cache.c:855,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_cache.c:856,1
    - Dst: MAX
      Src: /src/gpac/src/utils/downloader_cache.c:858,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/downloader_cache.c:859,1
    - Dst: gf_blob_register
      Src: /src/gpac/src/utils/downloader_cache.c:863,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/downloader_cache.c:865,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:866,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:868,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_cache.c:870,1
    - Dst: memset
      Src: /src/gpac/src/utils/downloader_cache.c:872,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_cache.c:874,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:876,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/utils/downloader_cache.c:880,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:885,1
    - Dst: gf_cache_close_write_cache
      Src: /src/gpac/src/utils/downloader_cache.c:887,1
    - Dst: gf_fflush
      Src: /src/gpac/src/utils/downloader_cache.c:890,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:891,1
    - Dst: gf_cache_close_write_cache
      Src: /src/gpac/src/utils/downloader_cache.c:893,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:896,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 45
    argCount: 5
    argNames:
    - entry
    - sess
    - data
    - size
    - mx
    argTypes:
    - DownloadedCacheEntry
    - GF_DownloadSession*
    - char*
    - u32
    - GF_Mutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 898
      start: 843
    functionDepth: 8
    functionLinenumber: 843
    functionLinenumberEnd: 898
    functionName: gf_cache_write_to_cache
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_assert
    - gf_cache_close_write_cache
    - GF_LOG
    - strcpy
    - memcpy
    - gf_fwrite
    - gf_blob_register
    - memset
    - gf_mx_v
    - gf_fflush
    - MAX
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_cache_write_to_cache( const DownloadedCacheEntry entry, const
      GF_DownloadSession * sess, const char * data, const u32 size, GF_Mutex *mx)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:906,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/downloader_cache.c:907,1
    - Dst: gf_blob_unregister
      Src: /src/gpac/src/utils/downloader_cache.c:909,1
    - Dst: gf_blob_unregister
      Src: /src/gpac/src/utils/downloader_cache.c:911,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_cache.c:916,1
    - Dst: cache_entry_lock
      Src: /src/gpac/src/utils/downloader_cache.c:917,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/downloader_cache.c:919,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_cache.c:922,1
    - Dst: gf_sys_get_process_id
      Src: /src/gpac/src/utils/downloader_cache.c:922,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/downloader_cache.c:923,1
    - Dst: cache_cleanup_processes
      Src: /src/gpac/src/utils/downloader_cache.c:925,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/downloader_cache.c:927,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/downloader_cache.c:930,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/downloader_cache.c:931,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/downloader_cache.c:935,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/downloader_cache.c:937,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/downloader_cache.c:940,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/downloader_cache.c:941,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:944,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:945,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:946,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:947,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:948,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:949,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:950,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:951,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:952,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:953,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:954,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_cache.c:958,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_cache.c:958,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/downloader_cache.c:959,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:961,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 62
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 962
      start: 900
    functionDepth: 6
    functionLinenumber: 900
    functionLinenumberEnd: 962
    functionName: gf_cache_delete_entry
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_sys_get_process_id
    - gf_assert
    - gf_cfg_del
    - GF_LOG
    - gf_blob_unregister
    - sprintf
    - cache_entry_lock
    - gf_cfg_get_key
    - gf_cfg_new
    - gf_list_count
    - gf_file_delete
    - cache_cleanup_processes
    - gf_cfg_set_key
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_cache_delete_entry( const DownloadedCacheEntry entry )
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_cache.c:970,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_cache.c:972,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/downloader_cache.c:974,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/downloader_cache.c:984,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:985,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 2
    argNames:
    - entry
    - sess
    argTypes:
    - DownloadedCacheEntry
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 992
      start: 965
    functionDepth: 1
    functionLinenumber: 965
    functionLinenumberEnd: 992
    functionName: gf_cache_remove_session_from_cache_entry
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_list_get
    - GF_LOG
    - gf_list_count
    - gf_list_rem
    linkageType: ''
    returnType: s32
    signature: s32 gf_cache_remove_session_from_cache_entry(DownloadedCacheEntry entry,
      GF_DownloadSession * sess)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_cache.c:1000,1
    - Dst: cache_entry_lock
      Src: /src/gpac/src/utils/downloader_cache.c:1001,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/downloader_cache.c:1002,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/utils/downloader_cache.c:1006,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_cache.c:1007,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/downloader_cache.c:1008,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/downloader_cache.c:1009,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/downloader_cache.c:1010,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/downloader_cache.c:1012,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - entry
    - max_age
    - must_revalidate
    argTypes:
    - DownloadedCacheEntry
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1013
      start: 994
    functionDepth: 6
    functionLinenumber: 994
    functionLinenumberEnd: 1013
    functionName: gf_cache_set_max_age
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_cfg_del
    - sprintf
    - cache_entry_lock
    - gf_cfg_new
    - gf_file_delete
    - gf_net_get_utc
    - gf_cfg_set_key
    linkageType: ''
    returnType: void
    signature: void gf_cache_set_max_age(const DownloadedCacheEntry entry, u32 max_age,
      Bool must_revalidate)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_cache.c:1019,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1020
      start: 1015
    functionDepth: 1
    functionLinenumber: 1015
    functionLinenumberEnd: 1020
    functionName: gf_cache_get_sessions_count_for_cache_entry
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: u32
    signature: u32 gf_cache_get_sessions_count_for_cache_entry(const DownloadedCacheEntry
      entry)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_cache.c:1028,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_cache.c:1030,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/downloader_cache.c:1035,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - entry
    - sess
    argTypes:
    - DownloadedCacheEntry
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1037
      start: 1023
    functionDepth: 1
    functionLinenumber: 1023
    functionLinenumberEnd: 1037
    functionName: gf_cache_add_session_to_cache_entry
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_add
    linkageType: ''
    returnType: s32
    signature: s32 gf_cache_add_session_to_cache_entry(DownloadedCacheEntry entry,
      GF_DownloadSession * sess)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - entry
    - range_end
    argTypes:
    - DownloadedCacheEntry
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1046
      start: 1039
    functionDepth: 0
    functionLinenumber: 1039
    functionLinenumberEnd: 1046
    functionName: gf_cache_set_end_range
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_cache_set_end_range(DownloadedCacheEntry entry, u64 range_end)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 8
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1055
      start: 1048
    functionDepth: 0
    functionLinenumber: 1048
    functionLinenumberEnd: 1055
    functionName: gf_cache_is_in_progress
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_cache_is_in_progress(const DownloadedCacheEntry entry)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:1060,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_cache.c:1061,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - entry
    - mime
    argTypes:
    - DownloadedCacheEntry
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1063
      start: 1057
    functionDepth: 0
    functionLinenumber: 1057
    functionLinenumberEnd: 1063
    functionName: gf_cache_set_mime
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    linkageType: ''
    returnType: Bool
    signature: Bool gf_cache_set_mime(const DownloadedCacheEntry entry, const char
      *mime)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - entry
    - size
    - start_range
    - end_range
    argTypes:
    - DownloadedCacheEntry
    - u64
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1073
      start: 1065
    functionDepth: 0
    functionLinenumber: 1065
    functionLinenumberEnd: 1073
    functionName: gf_cache_set_range
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_cache_set_range(const DownloadedCacheEntry entry, u64 size,
      u64 start_range, u64 end_range)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:1078,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_cache.c:1079,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - entry
    - headers
    argTypes:
    - DownloadedCacheEntry
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1081
      start: 1075
    functionDepth: 0
    functionLinenumber: 1075
    functionLinenumberEnd: 1081
    functionName: gf_cache_set_headers
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    linkageType: ''
    returnType: Bool
    signature: Bool gf_cache_set_headers(const DownloadedCacheEntry entry, const char
      *headers)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1087
      start: 1083
    functionDepth: 0
    functionLinenumber: 1083
    functionLinenumberEnd: 1087
    functionName: gf_cache_get_forced_headers
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_cache_get_forced_headers(const DownloadedCacheEntry entry)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - entry
    - download_time_ms
    argTypes:
    - DownloadedCacheEntry
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1091
      start: 1088
    functionDepth: 0
    functionLinenumber: 1088
    functionLinenumberEnd: 1091
    functionName: gf_cache_set_downtime
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_cache_set_downtime(const DownloadedCacheEntry entry, u32 download_time_ms)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1096
      start: 1092
    functionDepth: 0
    functionLinenumber: 1092
    functionLinenumberEnd: 1096
    functionName: gf_cache_get_downtime
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_cache_get_downtime(const DownloadedCacheEntry entry)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_cache.c:1102,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_cache.c:1106,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_cache.c:1112,1
    - Dst: cache_entry_lock
      Src: /src/gpac/src/utils/downloader_cache.c:1113,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/downloader_cache.c:1114,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/downloader_cache.c:1115,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/downloader_cache.c:1119,1
    - Dst: atoi
      Src: /src/gpac/src/utils/downloader_cache.c:1120,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/downloader_cache.c:1122,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/downloader_cache.c:1123,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1126
      start: 1097
    functionDepth: 6
    functionLinenumber: 1097
    functionLinenumberEnd: 1126
    functionName: gf_cache_is_done
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 3
    functionsReached:
    - gf_mx_p
    - gf_cfg_del
    - sprintf
    - cache_entry_lock
    - gf_cfg_get_key
    - gf_cfg_new
    - gf_mx_v
    - atoi
    - gf_file_delete
    linkageType: ''
    returnType: u32
    signature: u32 gf_cache_is_done(const DownloadedCacheEntry entry)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_blob_get_ex
      Src: /src/gpac/src/utils/downloader_cache.c:1133,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_cache.c:1137,1
    - Dst: DownloadedCacheEntry::external_blob::range_valid
      Src: /src/gpac/src/utils/downloader_cache.c:1138,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_cache.c:1139,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 4
    argNames:
    - entry
    - size
    - max_valid_size
    - was_modified
    argTypes:
    - DownloadedCacheEntry
    - u32*
    - u32*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1149
      start: 1127
    functionDepth: 1
    functionLinenumber: 1127
    functionLinenumberEnd: 1149
    functionName: gf_cache_get_content
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_blob_get_ex
    - gf_mx_v
    - DownloadedCacheEntry::external_blob::range_valid
    linkageType: ''
    returnType: u8
    signature: u8 *gf_cache_get_content(const DownloadedCacheEntry entry, u32 *size,
      u32 *max_valid_size, Bool *was_modified)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_blob_release_ex
      Src: /src/gpac/src/utils/downloader_cache.c:1154,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1155
      start: 1150
    functionDepth: 1
    functionLinenumber: 1150
    functionLinenumberEnd: 1155
    functionName: gf_cache_release_content
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 1
    functionsReached:
    - gf_blob_release_ex
    linkageType: ''
    returnType: void
    signature: void gf_cache_release_content(const DownloadedCacheEntry entry)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1161
      start: 1156
    functionDepth: 0
    functionLinenumber: 1156
    functionLinenumberEnd: 1161
    functionName: gf_cache_is_deleted
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_cache_is_deleted(const DownloadedCacheEntry entry)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_blob_unregister
      Src: /src/gpac/src/utils/downloader_cache.c:1170,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_cache.c:1176,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:1179,1
    - Dst: gf_blob_register
      Src: /src/gpac/src/utils/downloader_cache.c:1182,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/downloader_cache.c:1184,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:1185,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:1194,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_cache.c:1198,1
    - Dst: MAX
      Src: /src/gpac/src/utils/downloader_cache.c:1202,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/downloader_cache.c:1203,1
    - Dst: gf_blob_register
      Src: /src/gpac/src/utils/downloader_cache.c:1208,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/downloader_cache.c:1210,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:1211,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:1214,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_cache.c:1216,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:1219,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_cache.c:1221,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_cache.c:1231,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 60
    argCount: 4
    argNames:
    - entry
    - blob
    - copy
    - mx
    argTypes:
    - DownloadedCacheEntry
    - GF_Blob*
    - Bool
    - GF_Mutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1234
      start: 1163
    functionDepth: 1
    functionLinenumber: 1163
    functionLinenumberEnd: 1234
    functionName: gf_cache_set_content
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - GF_LOG
    - strcpy
    - memcpy
    - gf_blob_unregister
    - gf_blob_register
    - gf_mx_v
    - MAX
    - gf_realloc
    linkageType: ''
    returnType: Bool
    signature: Bool gf_cache_set_content(const DownloadedCacheEntry entry, GF_Blob
      *blob, Bool copy, GF_Mutex *mx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/utils/downloader_cache.c:1243,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - entry
    - skip_revalidate
    argTypes:
    - DownloadedCacheEntry
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1251
      start: 1236
    functionDepth: 1
    functionLinenumber: 1236
    functionLinenumberEnd: 1251
    functionName: gf_cache_entry_can_reuse
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_net_get_utc
    linkageType: ''
    returnType: Bool
    signature: Bool gf_cache_entry_can_reuse(const DownloadedCacheEntry entry, Bool
      skip_revalidate)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1256
      start: 1253
    functionDepth: 0
    functionLinenumber: 1253
    functionLinenumberEnd: 1256
    functionName: gf_cache_entry_is_shared
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_cache_entry_is_shared(const DownloadedCacheEntry entry)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1261
      start: 1258
    functionDepth: 0
    functionLinenumber: 1258
    functionLinenumberEnd: 1261
    functionName: gf_cache_is_mem
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_cache_is_mem(const DownloadedCacheEntry entry)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/downloader_cache.c:1266,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - entry
    argTypes:
    - DownloadedCacheEntry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1267
      start: 1262
    functionDepth: 0
    functionLinenumber: 1262
    functionLinenumberEnd: 1267
    functionName: gf_cache_open_read
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_fopen
    linkageType: ''
    returnType: FILE
    signature: FILE *gf_cache_open_read(const DownloadedCacheEntry entry)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_cache.c:1278,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_cache.c:1279,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_cache.c:1280,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_cache.c:1283,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_cache.c:1284,1
    - Dst: gf_cache_get_url
      Src: /src/gpac/src/utils/downloader_cache.c:1285,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_cache.c:1286,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/downloader_cache.c:1288,1
    - Dst: strchr
      Src: /src/gpac/src/utils/downloader_cache.c:1289,1
    - Dst: strchr
      Src: /src/gpac/src/utils/downloader_cache.c:1290,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader_cache.c:1291,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader_cache.c:1293,1
    - Dst: gf_cache_get_start_range
      Src: /src/gpac/src/utils/downloader_cache.c:1296,1
    - Dst: gf_cache_get_end_range
      Src: /src/gpac/src/utils/downloader_cache.c:1297,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_cache.c:1300,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_cache.c:1303,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 25
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1305
      start: 1275
    functionDepth: 1
    functionLinenumber: 1275
    functionLinenumberEnd: 1305
    functionName: gf_cache_find_entry_by_url
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_cache_get_url
    - gf_mx_p
    - gf_assert
    - gf_list_get
    - gf_cache_get_end_range
    - gf_cache_get_start_range
    - gf_list_count
    - strncmp
    - strcmp
    - gf_mx_v
    - strchr
    linkageType: ''
    returnType: DownloadedCacheEntry
    signature: DownloadedCacheEntry gf_cache_find_entry_by_url(GF_DownloadSession
      * sess)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_cache_remove_session_from_cache_entry
      Src: /src/gpac/src/utils/downloader_cache.c:1317,1
    - Dst: gf_cache_get_sessions_count_for_cache_entry
      Src: /src/gpac/src/utils/downloader_cache.c:1323,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_cache.c:1326,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_cache.c:1327,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_cache.c:1329,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/downloader_cache.c:1331,1
    - Dst: gf_cache_delete_entry
      Src: /src/gpac/src/utils/downloader_cache.c:1332,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_cache.c:1337,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 17
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1340
      start: 1313
    functionDepth: 7
    functionLinenumber: 1313
    functionLinenumberEnd: 1340
    functionName: gf_cache_remove_entry_from_session
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 2
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_cache_get_sessions_count_for_cache_entry
    - gf_cache_remove_session_from_cache_entry
    - gf_list_count
    - gf_cache_delete_entry
    - gf_mx_v
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_cache_remove_entry_from_session(GF_DownloadSession * sess)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_cache_remove_entry_from_session
      Src: /src/gpac/src/utils/downloader_cache.c:1346,1
    - Dst: gf_cache_close_write_cache
      Src: /src/gpac/src/utils/downloader_cache.c:1352,1
    - Dst: gf_cache_find_entry_by_url
      Src: /src/gpac/src/utils/downloader_cache.c:1360,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_cache.c:1364,1
    - Dst: gf_cache_entry_persistent
      Src: /src/gpac/src/utils/downloader_cache.c:1374,1
    - Dst: gf_cache_entry_set_delete_files_when_deleted
      Src: /src/gpac/src/utils/downloader_cache.c:1379,1
    - Dst: gf_cache_entry_persistent
      Src: /src/gpac/src/utils/downloader_cache.c:1381,1
    - Dst: gf_cache_get_sessions_count_for_cache_entry
      Src: /src/gpac/src/utils/downloader_cache.c:1382,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_cache.c:1384,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/downloader_cache.c:1386,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_cache.c:1387,1
    - Dst: gf_cache_delete_entry
      Src: /src/gpac/src/utils/downloader_cache.c:1388,1
    - Dst: gf_cache_create_entry
      Src: /src/gpac/src/utils/downloader_cache.c:1393,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_cache.c:1395,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_cache.c:1398,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/downloader_cache.c:1399,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_cache.c:1400,1
    - Dst: gf_cache_is_in_progress
      Src: /src/gpac/src/utils/downloader_cache.c:1404,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_cache.c:1405,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_cache.c:1406,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_cache.c:1408,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_cache.c:1409,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_cache.c:1416,1
    - Dst: gf_cache_close_write_cache
      Src: /src/gpac/src/utils/downloader_cache.c:1420,1
    - Dst: gf_cache_add_session_to_cache_entry
      Src: /src/gpac/src/utils/downloader_cache.c:1422,1
    - Dst: gf_cache_set_range
      Src: /src/gpac/src/utils/downloader_cache.c:1424,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:1425,1
    - Dst: gf_cache_get_cache_filename
      Src: /src/gpac/src/utils/downloader_cache.c:1425,1
    - Dst: gf_cache_entry_set_persistent
      Src: /src/gpac/src/utils/downloader_cache.c:1434,1
    - Dst: gf_cache_entry_set_persistent
      Src: /src/gpac/src/utils/downloader_cache.c:1438,1
    - Dst: gf_cache_entry_can_reuse
      Src: /src/gpac/src/utils/downloader_cache.c:1441,1
    - Dst: gf_cache_entry_is_shared
      Src: /src/gpac/src/utils/downloader_cache.c:1446,1
    - Dst: gf_cache_remove_entry_from_session
      Src: /src/gpac/src/utils/downloader_cache.c:1447,1
    - Dst: gf_cache_open_read
      Src: /src/gpac/src/utils/downloader_cache.c:1455,1
    - Dst: gf_cache_get_mime_type
      Src: /src/gpac/src/utils/downloader_cache.c:1460,1
    - Dst: gf_dm_sess_set_header_ex
      Src: /src/gpac/src/utils/downloader_cache.c:1462,1
    - Dst: gf_cache_get_content_length
      Src: /src/gpac/src/utils/downloader_cache.c:1463,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_cache.c:1466,1
    - Dst: gf_dm_sess_set_header_ex
      Src: /src/gpac/src/utils/downloader_cache.c:1467,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:1470,1
    - Dst: gf_dm_sess_notify_state
      Src: /src/gpac/src/utils/downloader_cache.c:1471,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 98
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1473
      start: 1343
    functionDepth: 8
    functionLinenumber: 1343
    functionLinenumberEnd: 1473
    functionName: gf_dm_configure_cache
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 2
    functionsReached:
    - gf_cache_get_cache_filename
    - gf_cache_open_read
    - SET_LAST_ERR
    - gf_cache_add_session_to_cache_entry
    - gf_cache_entry_can_reuse
    - gf_list_count
    - gf_cache_find_entry_by_url
    - gf_cache_create_entry
    - gf_cache_get_mime_type
    - gf_cache_get_content_length
    - gf_list_get
    - gf_assert
    - sprintf
    - gf_cache_delete_entry
    - gf_list_add
    - gf_cache_entry_set_persistent
    - gf_cache_entry_persistent
    - gf_cache_entry_is_shared
    - gf_mx_p
    - GF_LOG
    - gf_cache_get_sessions_count_for_cache_entry
    - gf_mx_v
    - gf_list_del_item
    - gf_dm_sess_notify_state
    - gf_cache_is_in_progress
    - gf_cache_close_write_cache
    - gf_dm_sess_set_header_ex
    - gf_cache_remove_entry_from_session
    - gf_cache_set_range
    - gf_cache_entry_set_delete_files_when_deleted
    linkageType: ''
    returnType: void
    signature: void gf_dm_configure_cache(GF_DownloadSession *sess)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_cache.c:1483,1
    - Dst: gf_dm_url_info_init
      Src: /src/gpac/src/utils/downloader_cache.c:1484,1
    - Dst: gf_dm_get_url_info
      Src: /src/gpac/src/utils/downloader_cache.c:1485,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_cache.c:1487,1
    - Dst: gf_dm_url_info_del
      Src: /src/gpac/src/utils/downloader_cache.c:1488,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_cache.c:1491,1
    - Dst: gf_dm_url_info_del
      Src: /src/gpac/src/utils/downloader_cache.c:1492,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_cache.c:1493,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_cache.c:1494,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_cache.c:1497,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_cache.c:1498,1
    - Dst: gf_cache_get_url
      Src: /src/gpac/src/utils/downloader_cache.c:1499,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_cache.c:1500,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader_cache.c:1501,1
    - Dst: gf_cache_entry_set_delete_files_when_deleted
      Src: /src/gpac/src/utils/downloader_cache.c:1503,1
    - Dst: gf_cache_get_sessions_count_for_cache_entry
      Src: /src/gpac/src/utils/downloader_cache.c:1504,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/downloader_cache.c:1506,1
    - Dst: gf_cache_delete_entry
      Src: /src/gpac/src/utils/downloader_cache.c:1507,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_cache.c:1510,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:1511,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_cache.c:1516,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:1517,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:1518,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 33
    argCount: 2
    argNames:
    - dm
    - url
    argTypes:
    - GF_DownloadManager*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1519
      start: 1475
    functionDepth: 7
    functionLinenumber: 1475
    functionLinenumberEnd: 1519
    functionName: gf_dm_delete_cached_file_entry
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_cache_get_url
    - gf_mx_p
    - gf_strdup
    - gf_assert
    - gf_list_get
    - gf_free
    - gf_dm_url_info_del
    - gf_dm_url_info_init
    - GF_LOG
    - gf_cache_get_sessions_count_for_cache_entry
    - gf_list_count
    - gf_cache_delete_entry
    - gf_mx_v
    - strcmp
    - gf_dm_get_url_info
    - gf_cache_entry_set_delete_files_when_deleted
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_dm_delete_cached_file_entry(const GF_DownloadManager * dm,  const
      char * url)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:1525,1
    - Dst: gf_dm_delete_cached_file_entry
      Src: /src/gpac/src/utils/downloader_cache.c:1526,1
    - Dst: GF_DownloadSession*::dm::local_cache_url_provider_cbk
      Src: /src/gpac/src/utils/downloader_cache.c:1528,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 7
    argCount: 3
    argNames:
    - sess
    - url
    - force
    argTypes:
    - GF_DownloadSession*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1530
      start: 1521
    functionDepth: 8
    functionLinenumber: 1521
    functionLinenumberEnd: 1530
    functionName: gf_dm_delete_cached_file_entry_session
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_dm_delete_cached_file_entry
    - GF_DownloadSession*::dm::local_cache_url_provider_cbk
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_delete_cached_file_entry_session(const GF_DownloadSession
      * sess,  const char * url, Bool force)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - dm
    - lc_udta
    argTypes:
    - GF_DownloadManager*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1541
      start: 1532
    functionDepth: 0
    functionLinenumber: 1532
    functionLinenumberEnd: 1541
    functionName: gf_dm_set_localcache_provider
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_set_localcache_provider(GF_DownloadManager *dm, Bool
      (*local_cache_url_provider_cbk)(void *udta, char *url, Bool is_cache_destroy),
      void *lc_udta)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_cache.c:1549,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:1551,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_cache.c:1552,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_cache.c:1555,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_cache.c:1556,1
    - Dst: gf_cache_get_url
      Src: /src/gpac/src/utils/downloader_cache.c:1557,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_cache.c:1558,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader_cache.c:1559,1
    - Dst: gf_cache_get_start_range
      Src: /src/gpac/src/utils/downloader_cache.c:1562,1
    - Dst: gf_cache_get_end_range
      Src: /src/gpac/src/utils/downloader_cache.c:1563,1
    - Dst: gf_cache_create_entry
      Src: /src/gpac/src/utils/downloader_cache.c:1570,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_cache.c:1572,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/downloader_cache.c:1575,1
    - Dst: gf_cache_set_mime
      Src: /src/gpac/src/utils/downloader_cache.c:1578,1
    - Dst: gf_cache_set_range
      Src: /src/gpac/src/utils/downloader_cache.c:1580,1
    - Dst: gf_cache_set_content
      Src: /src/gpac/src/utils/downloader_cache.c:1582,1
    - Dst: gf_cache_set_downtime
      Src: /src/gpac/src/utils/downloader_cache.c:1583,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_cache.c:1584,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 35
    argCount: 8
    argNames:
    - dm
    - szURL
    - blob
    - start_range
    - end_range
    - mime
    - clone_memory
    - download_time_ms
    argTypes:
    - GF_DownloadManager*
    - char*
    - GF_Blob*
    - u64
    - u64
    - char*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1586
      start: 1543
    functionDepth: 7
    functionLinenumber: 1543
    functionLinenumberEnd: 1586
    functionName: DownloadedCacheEntry::gf_dm_add_cache_entry
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_cache_get_url
    - gf_mx_p
    - gf_list_get
    - gf_assert
    - gf_cache_get_end_range
    - gf_cache_set_mime
    - gf_cache_set_downtime
    - GF_LOG
    - gf_cache_get_start_range
    - gf_cache_set_content
    - gf_list_count
    - gf_cache_set_range
    - strcmp
    - gf_cache_create_entry
    - gf_mx_v
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT DownloadedCacheEntry gf_dm_add_cache_entry(GF_DownloadManager
      *dm, const char *szURL, GF_Blob *blob, u64 start_range, u64 end_range, const
      char *mime, Bool clone_memory, u32 download_time_ms)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_cache_get_forced_headers
      Src: /src/gpac/src/utils/downloader_cache.c:1594,1
    - Dst: gf_dm_sess_clear_headers
      Src: /src/gpac/src/utils/downloader_cache.c:1596,1
    - Dst: strstr
      Src: /src/gpac/src/utils/downloader_cache.c:1598,1
    - Dst: strchr
      Src: /src/gpac/src/utils/downloader_cache.c:1600,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader_cache.c:1603,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_cache.c:1606,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_cache.c:1610,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/downloader_cache.c:1611,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1617
      start: 1588
    functionDepth: 2
    functionLinenumber: 1588
    functionLinenumberEnd: 1617
    functionName: gf_dm_sess_reload_cached_headers
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 1
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - gf_cache_get_forced_headers
    - strstr
    - gf_dm_sess_clear_headers
    - gf_list_add
    - strchr
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_reload_cached_headers(GF_DownloadSession *sess)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_cache.c:1625,1
    - Dst: gf_cache_set_headers
      Src: /src/gpac/src/utils/downloader_cache.c:1626,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_cache.c:1627,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_cache.c:1629,1
    - Dst: gf_dm_sess_reload_cached_headers
      Src: /src/gpac/src/utils/downloader_cache.c:1631,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_cache.c:1634,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - dm
    - entry
    - headers
    argTypes:
    - GF_DownloadManager*
    - DownloadedCacheEntry
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1637
      start: 1618
    functionDepth: 3
    functionLinenumber: 1618
    functionLinenumberEnd: 1637
    functionName: gf_dm_force_headers
    functionSourceFile: /src/gpac/src/utils/downloader_cache.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_dm_sess_reload_cached_headers
    - gf_cache_set_headers
    - gf_list_count
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_force_headers(GF_DownloadManager *dm, const DownloadedCacheEntry
      entry, const char *headers)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 89
    functionName: gf_gpac_version
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 17
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_gpac_version()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 103
    functionName: gf_gpac_copyright
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_gpac_copyright()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 117
    functionName: gf_gpac_copyright_cite
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_gpac_copyright_cite()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 123
    functionName: gf_gpac_abi_major
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_gpac_abi_major()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionName: gf_gpac_abi_minor
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_gpac_abi_minor()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 133
    functionName: gf_gpac_abi_micro
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_gpac_abi_micro()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gettimeofday
      Src: /src/gpac/src/utils/os_divers.c:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 144
    functionName: gf_sys_clock
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 58
    functionsReached:
    - gettimeofday
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_clock()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gettimeofday
      Src: /src/gpac/src/utils/os_divers.c:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 152
    functionName: gf_sys_clock_high_res
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 45
    functionsReached:
    - gettimeofday
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_clock_high_res()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emscripten_get_now
      Src: /src/gpac/src/utils/os_divers.c:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 163
    functionName: gf_sys_clock
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 58
    functionsReached:
    - emscripten_get_now
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_clock()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emscripten_get_now
      Src: /src/gpac/src/utils/os_divers.c:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 169
    functionName: gf_sys_clock_high_res
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 45
    functionsReached:
    - emscripten_get_now
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_clock_high_res()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Sleep
      Src: /src/gpac/src/utils/os_divers.c:184,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/os_divers.c:197,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/os_divers.c:204,1
    - Dst: select
      Src: /src/gpac/src/utils/os_divers.c:215,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - ms
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 219
    functionName: gf_sleep
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 45
    functionsReached:
    - select
    - Sleep
    - gf_sys_clock
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sleep(u32 ms)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GetSystemTime
      Src: /src/gpac/src/utils/os_divers.c:281,1
    - Dst: SystemTimeToFileTime
      Src: /src/gpac/src/utils/os_divers.c:282,1
    - Dst: GetTimeZoneInformation
      Src: /src/gpac/src/utils/os_divers.c:294,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 2
    argNames:
    - tp
    - tzp
    argTypes:
    - struct timeval*
    - struct timezone*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 313
    functionName: gettimeofday
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 2
    functionsReached:
    - GetTimeZoneInformation
    - SystemTimeToFileTime
    - GetSystemTime
    linkageType: ''
    returnType: int
    signature: int gettimeofday(struct timeval *tp, struct timezone *tzp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetSystemTime
      Src: /src/gpac/src/utils/os_divers.c:328,1
    - Dst: SystemTimeToFileTime
      Src: /src/gpac/src/utils/os_divers.c:329,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - tp
    - tz
    argTypes:
    - struct timeval*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 336
    functionName: __gettimeofday
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - SystemTimeToFileTime
    - GetSystemTime
    linkageType: ''
    returnType: s32
    signature: s32 __gettimeofday(struct timeval *tp, void *tz)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _ftime
      Src: /src/gpac/src/utils/os_divers.c:348,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - tp
    - tz
    argTypes:
    - struct timeval*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 344
    functionDepth: 0
    functionLinenumber: 344
    functionLinenumberEnd: 352
    functionName: gettimeofday
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 2
    functionsReached:
    - _ftime
    linkageType: ''
    returnType: s32
    signature: s32 gettimeofday(struct timeval *tp, void *tz)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_divers.c:364,1
    - Dst: CE_CharToWide
      Src: /src/gpac/src/utils/os_divers.c:365,1
    - Dst: MessageBox
      Src: /src/gpac/src/utils/os_divers.c:366,1
    - Dst: _T
      Src: /src/gpac/src/utils/os_divers.c:366,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_divers.c:367,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - valid
    - file
    - line
    argTypes:
    - u32
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 369
    functionName: CE_Assert
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - MessageBox
    - CE_CharToWide
    - sprintf
    - exit
    - _T
    linkageType: ''
    returnType: void
    signature: void CE_Assert(u32 valid, char *file, u32 line)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: WideCharToMultiByte
      Src: /src/gpac/src/utils/os_divers.c:373,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - w_str
    - str
    argTypes:
    - unsigned short*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 374
    functionName: CE_WideToChar
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - WideCharToMultiByte
    linkageType: ''
    returnType: void
    signature: void CE_WideToChar(unsigned short *w_str, char *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MultiByteToWideChar
      Src: /src/gpac/src/utils/os_divers.c:378,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - str
    - w_str
    argTypes:
    - char*
    - unsigned short*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 376
    functionDepth: 0
    functionLinenumber: 376
    functionLinenumberEnd: 379
    functionName: CE_CharToWide
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 3
    functionsReached:
    - MultiByteToWideChar
    linkageType: ''
    returnType: void
    signature: void CE_CharToWide(char *str, unsigned short *w_str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: srand
      Src: /src/gpac/src/utils/os_divers.c:388,1
    - Dst: srand
      Src: /src/gpac/src/utils/os_divers.c:391,1
    - Dst: GetTickCount
      Src: /src/gpac/src/utils/os_divers.c:391,1
    - Dst: srand
      Src: /src/gpac/src/utils/os_divers.c:393,1
    - Dst: time
      Src: /src/gpac/src/utils/os_divers.c:393,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - Reset
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 384
    functionDepth: 0
    functionLinenumber: 384
    functionLinenumberEnd: 396
    functionName: gf_rand_init
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 3
    functionsReached:
    - srand
    - time
    - GetTickCount
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rand_init(Bool Reset)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rand
      Src: /src/gpac/src/utils/os_divers.c:401,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 398
    functionDepth: 0
    functionLinenumber: 398
    functionLinenumberEnd: 402
    functionName: gf_rand
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 8
    functionsReached:
    - rand
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rand()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _ftime
      Src: /src/gpac/src/utils/os_divers.c:413,1
    - Dst: gettimeofday
      Src: /src/gpac/src/utils/os_divers.c:418,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - sec
    - msec
    argTypes:
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 408
    functionDepth: 1
    functionLinenumber: 408
    functionLinenumberEnd: 422
    functionName: gf_utc_time_since_1970
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - gettimeofday
    - _ftime
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_utc_time_since_1970(u32 *sec, u32 *msec)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_divers.c:427,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_divers.c:432,1
    - Dst: GetUserName
      Src: /src/gpac/src/utils/os_divers.c:434,1
    - Dst: getenv
      Src: /src/gpac/src/utils/os_divers.c:436,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_divers.c:437,1
    - Dst: getpwuid
      Src: /src/gpac/src/utils/os_divers.c:442,1
    - Dst: getuid
      Src: /src/gpac/src/utils/os_divers.c:442,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_divers.c:443,1
    - Dst: strncpy
      Src: /src/gpac/src/utils/os_divers.c:445,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - buf
    argTypes:
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 424
    functionDepth: 1
    functionLinenumber: 424
    functionLinenumberEnd: 449
    functionName: gf_get_user_name
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - getuid
    - GetUserName
    - strcpy
    - strncpy
    - getpwuid
    - getenv
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_get_user_name(char buf[1024])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:457,1
    - Dst: toupper
      Src: /src/gpac/src/utils/os_divers.c:458,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 461
      start: 453
    functionDepth: 0
    functionLinenumber: 453
    functionLinenumberEnd: 461
    functionName: my_str_upr
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - toupper
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * my_str_upr(char *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:467,1
    - Dst: tolower
      Src: /src/gpac/src/utils/os_divers.c:468,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 463
    functionDepth: 0
    functionLinenumber: 463
    functionLinenumberEnd: 471
    functionName: my_str_lwr
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - tolower
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * my_str_lwr(char *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 481
      start: 478
    functionDepth: 0
    functionLinenumber: 478
    functionLinenumberEnd: 481
    functionName: gf_prompt_has_input
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_prompt_has_input()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 484
      start: 482
    functionDepth: 0
    functionLinenumber: 482
    functionLinenumberEnd: 484
    functionName: gf_prompt_get_char
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char gf_prompt_get_char()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - echo_off
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 485
    functionDepth: 0
    functionLinenumber: 485
    functionLinenumberEnd: 488
    functionName: gf_prompt_set_echo_off
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_prompt_set_echo_off(Bool echo_off)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - width
    - height
    argTypes:
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 489
    functionDepth: 0
    functionLinenumber: 489
    functionLinenumberEnd: 492
    functionName: gf_prompt_get_size
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_prompt_get_size(u32 *width, u32 *height)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: kbhit
      Src: /src/gpac/src/utils/os_divers.c:501,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 499
    functionDepth: 0
    functionLinenumber: 499
    functionLinenumberEnd: 502
    functionName: gf_prompt_has_input
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 5
    functionsReached:
    - kbhit
    linkageType: ''
    returnType: Bool
    signature: Bool gf_prompt_has_input()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/utils/os_divers.c:507,1
    - Dst: getchar
      Src: /src/gpac/src/utils/os_divers.c:509,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 504
    functionDepth: 1
    functionLinenumber: 504
    functionLinenumberEnd: 510
    functionName: gf_prompt_get_char
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 6
    functionsReached:
    - getchar
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: char
    signature: char gf_prompt_get_char()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/utils/os_divers.c:516,1
    - Dst: GetStdHandle
      Src: /src/gpac/src/utils/os_divers.c:519,1
    - Dst: GetConsoleMode
      Src: /src/gpac/src/utils/os_divers.c:520,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_divers.c:522,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:523,1
    - Dst: SetConsoleMode
      Src: /src/gpac/src/utils/os_divers.c:528,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - echo_off
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 512
    functionDepth: 1
    functionLinenumber: 512
    functionLinenumberEnd: 529
    functionName: gf_prompt_set_echo_off
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - GetLastError
    - SetConsoleMode
    - GetConsoleMode
    - GF_LOG
    - GetStdHandle
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_prompt_set_echo_off(Bool echo_off)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GetStdHandle
      Src: /src/gpac/src/utils/os_divers.c:535,1
    - Dst: GetConsoleScreenBufferInfo
      Src: /src/gpac/src/utils/os_divers.c:536,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_divers.c:539,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:540,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - width
    - height
    argTypes:
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 531
    functionDepth: 1
    functionLinenumber: 531
    functionLinenumberEnd: 546
    functionName: gf_prompt_get_size
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GetLastError
    - GetConsoleScreenBufferInfo
    - GetStdHandle
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_prompt_get_size(u32 *width, u32 *height)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tcgetattr
      Src: /src/gpac/src/utils/os_divers.c:559,1
    - Dst: tcsetattr
      Src: /src/gpac/src/utils/os_divers.c:566,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 567
    functionName: init_keyboard
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 2
    functionsReached:
    - tcsetattr
    - tcgetattr
    linkageType: ''
    returnType: void
    signature: void init_keyboard()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tcsetattr
      Src: /src/gpac/src/utils/os_divers.c:570,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_divers.c:571,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - new_line
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 568
    functionDepth: 0
    functionLinenumber: 568
    functionLinenumberEnd: 572
    functionName: close_keyboard
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 3
    functionsReached:
    - fprintf
    - tcsetattr
    linkageType: ''
    returnType: void
    signature: void close_keyboard(Bool new_line)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/utils/os_divers.c:578,1
    - Dst: init_keyboard
      Src: /src/gpac/src/utils/os_divers.c:581,1
    - Dst: close_keyboard
      Src: /src/gpac/src/utils/os_divers.c:584,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - echo_off
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 585
      start: 574
    functionDepth: 1
    functionLinenumber: 574
    functionLinenumberEnd: 585
    functionName: gf_prompt_set_echo_off
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - init_keyboard
    - close_keyboard
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_prompt_set_echo_off(Bool echo_off)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tcgetpgrp
      Src: /src/gpac/src/utils/os_divers.c:592,1
    - Dst: getpgrp
      Src: /src/gpac/src/utils/os_divers.c:595,1
    - Dst: init_keyboard
      Src: /src/gpac/src/utils/os_divers.c:598,1
    - Dst: tcsetattr
      Src: /src/gpac/src/utils/os_divers.c:601,1
    - Dst: read
      Src: /src/gpac/src/utils/os_divers.c:602,1
    - Dst: tcsetattr
      Src: /src/gpac/src/utils/os_divers.c:604,1
    - Dst: close_keyboard
      Src: /src/gpac/src/utils/os_divers.c:609,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 611
      start: 587
    functionDepth: 0
    functionLinenumber: 587
    functionLinenumberEnd: 611
    functionName: gf_prompt_has_input
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 5
    functionsReached:
    - read
    - getpgrp
    - close_keyboard
    - tcsetattr
    - tcgetpgrp
    - init_keyboard
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_prompt_has_input()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/utils/os_divers.c:618,1
    - Dst: close_keyboard
      Src: /src/gpac/src/utils/os_divers.c:623,1
    - Dst: read
      Src: /src/gpac/src/utils/os_divers.c:626,1
    - Dst: close_keyboard
      Src: /src/gpac/src/utils/os_divers.c:628,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 630
      start: 613
    functionDepth: 1
    functionLinenumber: 613
    functionLinenumberEnd: 630
    functionName: gf_prompt_get_char
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 6
    functionsReached:
    - close_keyboard
    - gf_sys_is_cov_mode
    - read
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_prompt_get_char()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ioctl
      Src: /src/gpac/src/utils/os_divers.c:637,1
    - Dst: ioctl
      Src: /src/gpac/src/utils/os_divers.c:644,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 2
    argNames:
    - width
    - height
    argTypes:
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 654
      start: 632
    functionDepth: 0
    functionLinenumber: 632
    functionLinenumberEnd: 654
    functionName: gf_prompt_get_size
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - ioctl
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_prompt_get_size(u32 *width, u32 *height)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OS_GetSysClock
      Src: /src/gpac/src/utils/os_divers.c:732,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 730
    functionDepth: 0
    functionLinenumber: 730
    functionLinenumberEnd: 733
    functionName: gf_sys_clock
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 59
    functionsReached:
    - OS_GetSysClock
    linkageType: ''
    returnType: u32
    signature: u32 gf_sys_clock()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OS_GetSysClockHR
      Src: /src/gpac/src/utils/os_divers.c:739,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 740
      start: 737
    functionDepth: 0
    functionLinenumber: 737
    functionLinenumberEnd: 740
    functionName: gf_sys_clock_high_res
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 45
    functionsReached:
    - OS_GetSysClockHR
    linkageType: ''
    returnType: u64
    signature: u64 gf_sys_clock_high_res()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryPerformanceCounter
      Src: /src/gpac/src/utils/os_divers.c:751,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 748
    functionDepth: 0
    functionLinenumber: 748
    functionLinenumberEnd: 754
    functionName: OS_GetSysClockHIGHRES
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - QueryPerformanceCounter
    linkageType: ''
    returnType: u32
    signature: u32 OS_GetSysClockHIGHRES()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryPerformanceCounter
      Src: /src/gpac/src/utils/os_divers.c:759,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 762
      start: 756
    functionDepth: 0
    functionLinenumber: 756
    functionLinenumberEnd: 762
    functionName: OS_GetSysClockHIGHRES_FULL
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - QueryPerformanceCounter
    linkageType: ''
    returnType: u64
    signature: u64 OS_GetSysClockHIGHRES_FULL()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetTickCount
      Src: /src/gpac/src/utils/os_divers.c:767,1
    - Dst: timeGetTime
      Src: /src/gpac/src/utils/os_divers.c:769,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 771
      start: 764
    functionDepth: 0
    functionLinenumber: 764
    functionLinenumberEnd: 771
    functionName: OS_GetSysClockNORMAL
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - timeGetTime
    - GetTickCount
    linkageType: ''
    returnType: u32
    signature: u32 OS_GetSysClockNORMAL()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OS_GetSysClockNORMAL
      Src: /src/gpac/src/utils/os_divers.c:775,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 777
      start: 773
    functionDepth: 1
    functionLinenumber: 773
    functionLinenumberEnd: 777
    functionName: OS_GetSysClockNORMAL_FULL
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - OS_GetSysClockNORMAL
    linkageType: ''
    returnType: u64
    signature: u64 OS_GetSysClockNORMAL_FULL()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 789
      start: 783
    functionDepth: 0
    functionLinenumber: 783
    functionLinenumberEnd: 789
    functionName: sh4_get_fpscr
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int sh4_get_fpscr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - nv
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 791
    functionDepth: 0
    functionLinenumber: 791
    functionLinenumberEnd: 795
    functionName: sh4_put_fpscr
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void sh4_put_fpscr(int nv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sh4_get_fpscr
      Src: /src/gpac/src/utils/os_divers.c:810,1
    - Dst: sh4_put_fpscr
      Src: /src/gpac/src/utils/os_divers.c:816,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 2
    argNames:
    - 'off'
    - 'on'
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 821
      start: 807
    functionDepth: 1
    functionLinenumber: 807
    functionLinenumberEnd: 821
    functionName: sh4_change_fpscr
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - sh4_put_fpscr
    - sh4_get_fpscr
    linkageType: ''
    returnType: void
    signature: void sh4_change_fpscr(int off, int on)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FileTimeToSystemTime
      Src: /src/gpac/src/utils/os_divers.c:832,1
    - Dst: gmtime
      Src: /src/gpac/src/utils/os_divers.c:837,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - time
    argTypes:
    - time_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 842
      start: 825
    functionDepth: 0
    functionLinenumber: 825
    functionLinenumberEnd: 842
    functionName: gf_gmtime
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 9
    functionsReached:
    - gmtime
    - FileTimeToSystemTime
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_gmtime(const time_t *time)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 875
      start: 867
    functionDepth: 0
    functionLinenumber: 867
    functionLinenumberEnd: 875
    functionName: gf_log_use_file
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_use_file()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - cbck
    - title
    - done
    - total
    argTypes:
    - void*
    - char*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 877
      start: 877
    functionDepth: 0
    functionLinenumber: 877
    functionLinenumberEnd: 877
    functionName: progress_quiet
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void progress_quiet(const void *cbck, const char *title, u64 done,
      u64 total)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_set_progress_callback
      Src: /src/gpac/src/utils/os_divers.c:881,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 882
      start: 879
    functionDepth: 1
    functionLinenumber: 879
    functionLinenumberEnd: 882
    functionName: gpac_disable_progress
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - gf_set_progress_callback
    linkageType: ''
    returnType: void
    signature: void gpac_disable_progress()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 888
      start: 884
    functionDepth: 0
    functionLinenumber: 884
    functionLinenumberEnd: 888
    functionName: gf_sys_is_test_mode
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 27
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_is_test_mode()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 894
      start: 890
    functionDepth: 0
    functionLinenumber: 890
    functionLinenumberEnd: 894
    functionName: gf_sys_old_arch_compat
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_old_arch_compat()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 897
    functionDepth: 0
    functionLinenumber: 897
    functionLinenumberEnd: 901
    functionName: gf_sys_is_cov_mode
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 45
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_is_cov_mode()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_divers.c:917,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:920,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_divers.c:926,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 929
      start: 912
    functionDepth: 1
    functionLinenumber: 912
    functionLinenumberEnd: 929
    functionName: gf_log_reset_file
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - gf_fopen
    - gf_fclose
    - strcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_log_reset_file()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 939
      start: 936
    functionDepth: 0
    functionLinenumber: 936
    functionLinenumberEnd: 939
    functionName: gf_sys_has_filter_global_args
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sys_has_filter_global_args()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 940
    functionDepth: 0
    functionLinenumber: 940
    functionLinenumberEnd: 943
    functionName: gf_sys_has_filter_global_meta_args
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sys_has_filter_global_meta_args()
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/utils/os_divers.c:975,1
    - Dst: strncpy
      Src: /src/gpac/src/utils/os_divers.c:979,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:990,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:990,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:990,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:998,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:998,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1003,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1003,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1007,1
    - Dst: gf_log_set_tools_levels
      Src: /src/gpac/src/utils/os_divers.c:1008,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1012,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1012,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1016,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1016,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1020,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1022,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1024,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_divers.c:1026,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_divers.c:1028,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1030,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_divers.c:1033,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_divers.c:1035,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_divers.c:1041,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1043,1
    - Dst: gf_netcap_setup
      Src: /src/gpac/src/utils/os_divers.c:1046,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_divers.c:1051,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_divers.c:1052,1
    - Dst: gf_net_set_ntp_shift
      Src: /src/gpac/src/utils/os_divers.c:1053,1
    - Dst: gf_opts_load_option
      Src: /src/gpac/src/utils/os_divers.c:1055,1
    - Dst: getenv
      Src: /src/gpac/src/utils/os_divers.c:1065,1
    - Dst: gf_log_set_tools_levels
      Src: /src/gpac/src/utils/os_divers.c:1066,1
    - Dst: gf_log_reset_file
      Src: /src/gpac/src/utils/os_divers.c:1072,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/os_divers.c:1074,1
    - Dst: gf_sys_enable_rmtws
      Src: /src/gpac/src/utils/os_divers.c:1075,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/utils/os_divers.c:1078,1
    - Dst: gf_set_progress_callback
      Src: /src/gpac/src/utils/os_divers.c:1079,1
    - Dst: gf_cfg_load_restrict
      Src: /src/gpac/src/utils/os_divers.c:1083,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/os_divers.c:1093,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_divers.c:1096,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1097,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1098,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 123
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - s32
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1102
      start: 952
    functionDepth: 3
    functionLinenumber: 952
    functionLinenumberEnd: 1102
    functionName: gf_sys_set_args
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 4
    functionsReached:
    - gf_log_set_tools_levels
    - gf_set_progress_callback
    - atoi
    - strchr
    - gf_realloc
    - gf_net_set_ntp_shift
    - strncmp
    - stricmp
    - getenv
    - GF_LOG
    - strncpy
    - gf_opts_load_option
    - gf_log_set_tool_level
    - gf_sys_enable_rmtws
    - gf_netcap_setup
    - strcmp
    - gf_opts_get_bool
    - gf_cfg_load_restrict
    - gf_log_reset_file
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_set_args(s32 argc, const char **argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - arg_idx
    - used
    argTypes:
    - s32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1109
      start: 1104
    functionDepth: 0
    functionLinenumber: 1104
    functionLinenumberEnd: 1109
    functionName: gf_sys_mark_arg_used
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_mark_arg_used(s32 arg_idx, Bool used)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - arg_idx
    argTypes:
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1117
      start: 1111
    functionDepth: 0
    functionLinenumber: 1111
    functionLinenumberEnd: 1117
    functionName: gf_sys_is_arg_used
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_is_arg_used(s32 arg_idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1123
      start: 1119
    functionDepth: 0
    functionLinenumber: 1119
    functionLinenumberEnd: 1123
    functionName: gf_sys_is_quiet
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_is_quiet()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1130
      start: 1126
    functionDepth: 0
    functionLinenumber: 1126
    functionLinenumberEnd: 1130
    functionName: gf_sys_get_argc
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_get_argc()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1135
      start: 1131
    functionDepth: 0
    functionLinenumber: 1131
    functionLinenumberEnd: 1135
    functionName: gf_sys_get_argv
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT **gf_sys_get_argv()
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - arg
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1142
      start: 1136
    functionDepth: 0
    functionLinenumber: 1136
    functionLinenumberEnd: 1142
    functionName: gf_sys_get_arg
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sys_get_arg(u32 arg)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/utils/os_divers.c:1155,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_divers.c:1157,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:1159,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:1160,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_divers.c:1162,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 25
    argCount: 1
    argNames:
    - arg
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1168
      start: 1143
    functionDepth: 0
    functionLinenumber: 1143
    functionLinenumberEnd: 1168
    functionName: gf_sys_find_global_arg
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 3
    functionsReached:
    - strncmp
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sys_find_global_arg(const char *arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1183
      start: 1176
    functionDepth: 0
    functionLinenumber: 1176
    functionLinenumberEnd: 1183
    functionName: gf_sys_get_rmtws
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_sys_get_rmtws()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1192
      start: 1185
    functionDepth: 0
    functionLinenumber: 1185
    functionLinenumberEnd: 1192
    functionName: gf_sys_get_userws
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_sys_get_userws()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: rmt_ws_new
      Src: /src/gpac/src/utils/os_divers.c:1200,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1202,1
    - Dst: gf_rmt_get_settings
      Src: /src/gpac/src/utils/os_divers.c:1206,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/os_divers.c:1208,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/os_divers.c:1209,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/os_divers.c:1210,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_divers.c:1211,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_divers.c:1212,1
    - Dst: rmt_ws_run
      Src: /src/gpac/src/utils/os_divers.c:1214,1
    - Dst: rmt_ws_del
      Src: /src/gpac/src/utils/os_divers.c:1219,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - start
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1227
      start: 1195
    functionDepth: 1
    functionLinenumber: 1195
    functionLinenumberEnd: 1227
    functionName: gf_sys_enable_rmtws
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 2
    functionsReached:
    - rmt_ws_new
    - GF_LOG
    - rmt_ws_run
    - rmt_ws_del
    - gf_opts_get_int
    - gf_opts_get_key
    - gf_rmt_get_settings
    - gf_opts_get_bool
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_enable_rmtws(Bool start)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: rmt_ws_new
      Src: /src/gpac/src/utils/os_divers.c:1234,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1236,1
    - Dst: gf_rmt_get_settings
      Src: /src/gpac/src/utils/os_divers.c:1240,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/os_divers.c:1242,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/os_divers.c:1243,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/os_divers.c:1244,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_divers.c:1245,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_divers.c:1246,1
    - Dst: rmt_ws_run
      Src: /src/gpac/src/utils/os_divers.c:1248,1
    - Dst: rmt_ws_del
      Src: /src/gpac/src/utils/os_divers.c:1253,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - start
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1261
      start: 1229
    functionDepth: 1
    functionLinenumber: 1229
    functionLinenumberEnd: 1261
    functionName: gf_sys_enable_userws
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - rmt_ws_new
    - GF_LOG
    - rmt_ws_run
    - rmt_ws_del
    - gf_opts_get_int
    - gf_opts_get_key
    - gf_rmt_get_settings
    - gf_opts_get_bool
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_enable_userws(Bool start)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/utils/os_divers.c:1272,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/os_divers.c:1274,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 4
    argNames:
    - blob
    - out_data
    - out_size
    - out_flags
    argTypes:
    - GF_Blob*
    - u8**
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1279
      start: 1267
    functionDepth: 2
    functionLinenumber: 1267
    functionLinenumberEnd: 1279
    functionName: gf_blob_get_ex
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_list_find
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_blob_get_ex(GF_Blob *blob, u8 **out_data, u32 *out_size,
      u32 *out_flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:1284,1
    - Dst: gf_blob_get_ex
      Src: /src/gpac/src/utils/os_divers.c:1285,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - blob_url
    - out_data
    - out_size
    - out_flags
    argTypes:
    - char*
    - u8**
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1286
      start: 1280
    functionDepth: 3
    functionLinenumber: 1280
    functionLinenumberEnd: 1286
    functionName: gf_blob_get
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 9
    functionsReached:
    - gf_blob_get_ex
    - sscanf
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_blob_get(const char *blob_url, u8 **out_data, u32 *out_size,
      u32 *out_flags)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/utils/os_divers.c:1293,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/os_divers.c:1295,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - blob
    argTypes:
    - GF_Blob*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1297
      start: 1288
    functionDepth: 2
    functionLinenumber: 1288
    functionLinenumberEnd: 1297
    functionName: gf_blob_release_ex
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - gf_mx_v
    - gf_list_find
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_blob_release_ex(GF_Blob *blob)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:1303,1
    - Dst: gf_blob_release_ex
      Src: /src/gpac/src/utils/os_divers.c:1304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - blob_url
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1305
      start: 1299
    functionDepth: 3
    functionLinenumber: 1299
    functionLinenumberEnd: 1305
    functionName: gf_blob_release
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 7
    functionsReached:
    - gf_blob_release_ex
    - sscanf
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_blob_release(const char *blob_url)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_divers.c:1312,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/os_divers.c:1314,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/os_divers.c:1316,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/os_divers.c:1318,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_divers.c:1320,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - blob
    argTypes:
    - GF_Blob*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1321
      start: 1307
    functionDepth: 3
    functionLinenumber: 1307
    functionLinenumberEnd: 1321
    functionName: gf_blob_register
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 9
    functionsReached:
    - gf_strdup
    - gf_list_new
    - sprintf
    - gf_list_add
    - gf_list_del_item
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_blob_register(GF_Blob *blob)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/os_divers.c:1327,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - blob
    argTypes:
    - GF_Blob*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1328
      start: 1323
    functionDepth: 3
    functionLinenumber: 1323
    functionLinenumberEnd: 1328
    functionName: gf_blob_unregister
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 7
    functionsReached:
    - gf_list_del_item
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_blob_unregister(GF_Blob *blob)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:1335,1
    - Dst: gf_list_find
      Src: /src/gpac/src/utils/os_divers.c:1338,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - blob_url
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1341
      start: 1332
    functionDepth: 2
    functionLinenumber: 1332
    functionLinenumberEnd: 1341
    functionName: gf_blob_from_url
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - gf_list_find
    - sscanf
    linkageType: ''
    returnType: GF_Blob
    signature: GF_Blob *gf_blob_from_url(const char *blob_url)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_Blob*::range_valid
      Src: /src/gpac/src/utils/os_divers.c:1349,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 4
    argNames:
    - blob
    - check_when_complete
    - start_offset
    - size
    argTypes:
    - GF_Blob*
    - Bool
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1353
      start: 1345
    functionDepth: 0
    functionLinenumber: 1345
    functionLinenumberEnd: 1353
    functionName: GF_BlobRangeStatus::gf_blob_query_range
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - GF_Blob*::range_valid
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_BlobRangeStatus gf_blob_query_range(GF_Blob *blob, Bool
      check_when_complete, u64 start_offset, u32 size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_divers.c:1363,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1367,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_divers.c:1368,1
    - Dst: gf_opts_default_shared_directory
      Src: /src/gpac/src/utils/os_divers.c:1375,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_divers.c:1376,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_divers.c:1377,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_divers.c:1378,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_divers.c:1379,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/os_divers.c:1381,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1384
      start: 1361
    functionDepth: 6
    functionLinenumber: 1361
    functionLinenumberEnd: 1384
    functionName: gf_sys_get_lang_file
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_cfg_del
    - gf_file_exists
    - gf_cfg_new
    - strcmp
    - gf_opts_get_key
    - gf_opts_default_shared_directory
    linkageType: ''
    returnType: GF_Config
    signature: GF_Config *gf_sys_get_lang_file()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_get_lang_file
      Src: /src/gpac/src/utils/os_divers.c:1390,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_divers.c:1393,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - sec_name
    - key_name
    - def_val
    argTypes:
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1396
      start: 1387
    functionDepth: 7
    functionLinenumber: 1387
    functionLinenumberEnd: 1396
    functionName: gf_sys_localized
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 5
    functionsReached:
    - gf_cfg_get_key
    - gf_sys_get_lang_file
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sys_localized(const char *sec_name, const char *key_name,
      const char *def_val)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_section_count
      Src: /src/gpac/src/utils/os_divers.c:1401,1
    - Dst: gf_opts_get_section_name
      Src: /src/gpac/src/utils/os_divers.c:1407,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_divers.c:1408,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_divers.c:1410,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_divers.c:1411,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/os_divers.c:1413,1
    - Dst: gf_opts_del_section
      Src: /src/gpac/src/utils/os_divers.c:1414,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_divers.c:1421,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:1424,1
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/utils/os_divers.c:1425,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/os_divers.c:1429,1
    - Dst: gf_opts_del_section
      Src: /src/gpac/src/utils/os_divers.c:1431,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1437
      start: 1398
    functionDepth: 1
    functionLinenumber: 1398
    functionLinenumberEnd: 1437
    functionName: gf_sys_refresh_cache
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - gf_opts_del_section
    - sscanf
    - gf_file_exists
    - strncmp
    - gf_file_delete
    - gf_opts_get_key
    - gf_net_get_ntp
    - gf_opts_get_section_name
    - gf_opts_get_section_count
    linkageType: ''
    returnType: void
    signature: void gf_sys_refresh_cache()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_mem_enable_tracker
      Src: /src/gpac/src/utils/os_divers.c:1453,1
    - Dst: gf_logs_init
      Src: /src/gpac/src/utils/os_divers.c:1457,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/utils/os_divers.c:1459,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/utils/os_divers.c:1460,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/utils/os_divers.c:1461,1
    - Dst: sh4_change_fpscr
      Src: /src/gpac/src/utils/os_divers.c:1467,1
    - Dst: QueryPerformanceFrequency
      Src: /src/gpac/src/utils/os_divers.c:1473,1
    - Dst: QueryPerformanceCounter
      Src: /src/gpac/src/utils/os_divers.c:1474,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1477,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1481,1
    - Dst: timeBeginPeriod
      Src: /src/gpac/src/utils/os_divers.c:1485,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1488,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_divers.c:1492,1
    - Dst: GetCurrentProcessId
      Src: /src/gpac/src/utils/os_divers.c:1493,1
    - Dst: GlobalMemoryStatus
      Src: /src/gpac/src/utils/os_divers.c:1495,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_divers.c:1499,1
    - Dst: GetModuleHandle
      Src: /src/gpac/src/utils/os_divers.c:1499,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_divers.c:1501,1
    - Dst: GetModuleHandle
      Src: /src/gpac/src/utils/os_divers.c:1501,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1503,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1506,1
    - Dst: LoadLibrary
      Src: /src/gpac/src/utils/os_divers.c:1508,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_divers.c:1509,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1511,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_divers.c:1515,1
    - Dst: GetCurrentProcessId
      Src: /src/gpac/src/utils/os_divers.c:1516,1
    - Dst: GetSystemInfo
      Src: /src/gpac/src/utils/os_divers.c:1518,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1521,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_divers.c:1528,1
    - Dst: getpid
      Src: /src/gpac/src/utils/os_divers.c:1529,1
    - Dst: sysconf
      Src: /src/gpac/src/utils/os_divers.c:1530,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/os_divers.c:1533,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/os_divers.c:1534,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1536,1
    - Dst: setlocale
      Src: /src/gpac/src/utils/os_divers.c:1539,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/utils/os_divers.c:1545,1
    - Dst: gf_rand_init
      Src: /src/gpac/src/utils/os_divers.c:1547,1
    - Dst: gf_init_global_config
      Src: /src/gpac/src/utils/os_divers.c:1549,1
    - Dst: gf_sys_refresh_cache
      Src: /src/gpac/src/utils/os_divers.c:1551,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1560,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/src/utils/os_divers.c:1563,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1565,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 80
    argCount: 2
    argNames:
    - mem_tracker_type
    - profile
    argTypes:
    - GF_MemTrackerType
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1572
      start: 1439
    functionDepth: 2
    functionLinenumber: 1439
    functionLinenumberEnd: 1572
    functionName: gf_sys_init
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 19
    functionsReached:
    - GetProcAddress
    - gf_mem_enable_tracker
    - memset
    - GetModuleHandle
    - gf_mx_new
    - gf_sys_clock
    - gf_sys_get_rti
    - LoadLibrary
    - sh4_change_fpscr
    - gf_sys_refresh_cache
    - QueryPerformanceFrequency
    - getpid
    - GF_LOG
    - gf_logs_init
    - GetCurrentProcessId
    - gf_log_set_tool_level
    - setlocale
    - sysconf
    - gf_sys_clock_high_res
    - GlobalMemoryStatus
    - timeBeginPeriod
    - gf_init_global_config
    - strcmp
    - GetSystemInfo
    - QueryPerformanceCounter
    - gf_rand_init
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_init(GF_MemTrackerType mem_tracker_type, const char
      *profile)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: timeEndPeriod
      Src: /src/gpac/src/utils/os_divers.c:1594,1
    - Dst: FreeLibrary
      Src: /src/gpac/src/utils/os_divers.c:1599,1
    - Dst: gf_sys_enable_rmtws
      Src: /src/gpac/src/utils/os_divers.c:1603,1
    - Dst: gf_sys_enable_userws
      Src: /src/gpac/src/utils/os_divers.c:1604,1
    - Dst: gf_js_delete_runtime
      Src: /src/gpac/src/utils/os_divers.c:1608,1
    - Dst: gf_uninit_global_config
      Src: /src/gpac/src/utils/os_divers.c:1611,1
    - Dst: gf_logs_close
      Src: /src/gpac/src/utils/os_divers.c:1614,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_divers.c:1616,1
    - Dst: gf_sys_cleanup_help
      Src: /src/gpac/src/utils/os_divers.c:1619,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/utils/os_divers.c:1624,1
    - Dst: gf_log_reset_extras
      Src: /src/gpac/src/utils/os_divers.c:1626,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_divers.c:1628,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_divers.c:1636,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_divers.c:1639,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_divers.c:1640,1
    - Dst: gf_net_close_capture
      Src: /src/gpac/src/utils/os_divers.c:1643,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_divers.c:1647,1
    - Dst: fflush
      Src: /src/gpac/src/utils/os_divers.c:1648,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1651
      start: 1582
    functionDepth: 5
    functionLinenumber: 1582
    functionLinenumberEnd: 1651
    functionName: gf_sys_close
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 19
    functionsReached:
    - gf_free
    - gf_log_reset_extras
    - gf_mx_del
    - gf_cfg_del
    - fprintf
    - timeEndPeriod
    - gf_sys_enable_rmtws
    - gf_sys_cleanup_help
    - gf_net_close_capture
    - gf_logs_close
    - gf_uninit_global_config
    - gf_sys_enable_userws
    - fflush
    - FreeLibrary
    - gf_list_del
    - gf_js_delete_runtime
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_close()
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_divers.c:1673,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/os_divers.c:1679,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_divers.c:1681,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_divers.c:1686,1
    - Dst: GlobalMemoryStatus
      Src: /src/gpac/src/utils/os_divers.c:1688,1
    - Dst: GetCurrentPermissions
      Src: /src/gpac/src/utils/os_divers.c:1702,1
    - Dst: SetProcPermissions
      Src: /src/gpac/src/utils/os_divers.c:1703,1
    - Dst: CreateToolhelp32Snapshot
      Src: /src/gpac/src/utils/os_divers.c:1704,1
    - Dst: Thread32First
      Src: /src/gpac/src/utils/os_divers.c:1710,1
    - Dst: GetThreadTimes
      Src: /src/gpac/src/utils/os_divers.c:1713,1
    - Dst: Thread32Next
      Src: /src/gpac/src/utils/os_divers.c:1720,1
    - Dst: CloseToolhelp32Snapshot
      Src: /src/gpac/src/utils/os_divers.c:1722,1
    - Dst: CreateToolhelp32Snapshot
      Src: /src/gpac/src/utils/os_divers.c:1730,1
    - Dst: Heap32ListFirst
      Src: /src/gpac/src/utils/os_divers.c:1731,1
    - Dst: Heap32First
      Src: /src/gpac/src/utils/os_divers.c:1734,1
    - Dst: Heap32Next
      Src: /src/gpac/src/utils/os_divers.c:1737,1
    - Dst: Heap32ListNext
      Src: /src/gpac/src/utils/os_divers.c:1739,1
    - Dst: CloseToolhelp32Snapshot
      Src: /src/gpac/src/utils/os_divers.c:1741,1
    - Dst: SetProcPermissions
      Src: /src/gpac/src/utils/os_divers.c:1743,1
    - Dst: MyGetSystemTimes
      Src: /src/gpac/src/utils/os_divers.c:1752,1
    - Dst: MyQuerySystemInfo
      Src: /src/gpac/src/utils/os_divers.c:1761,1
    - Dst: CreateToolhelp32Snapshot
      Src: /src/gpac/src/utils/os_divers.c:1771,1
    - Dst: Process32First
      Src: /src/gpac/src/utils/os_divers.c:1774,1
    - Dst: OpenProcess
      Src: /src/gpac/src/utils/os_divers.c:1777,1
    - Dst: GetProcessTimes
      Src: /src/gpac/src/utils/os_divers.c:1778,1
    - Dst: CloseHandle
      Src: /src/gpac/src/utils/os_divers.c:1786,1
    - Dst: Process32Next
      Src: /src/gpac/src/utils/os_divers.c:1787,1
    - Dst: CloseHandle
      Src: /src/gpac/src/utils/os_divers.c:1789,1
    - Dst: OpenProcess
      Src: /src/gpac/src/utils/os_divers.c:1795,1
    - Dst: GetProcessTimes
      Src: /src/gpac/src/utils/os_divers.c:1796,1
    - Dst: CloseHandle
      Src: /src/gpac/src/utils/os_divers.c:1799,1
    - Dst: OpenProcess
      Src: /src/gpac/src/utils/os_divers.c:1807,1
    - Dst: MyGetProcessMemoryInfo
      Src: /src/gpac/src/utils/os_divers.c:1808,1
    - Dst: CloseHandle
      Src: /src/gpac/src/utils/os_divers.c:1810,1
    - Dst: CreateToolhelp32Snapshot
      Src: /src/gpac/src/utils/os_divers.c:1818,1
    - Dst: Heap32ListFirst
      Src: /src/gpac/src/utils/os_divers.c:1819,1
    - Dst: Heap32First
      Src: /src/gpac/src/utils/os_divers.c:1822,1
    - Dst: Heap32Next
      Src: /src/gpac/src/utils/os_divers.c:1825,1
    - Dst: Heap32ListNext
      Src: /src/gpac/src/utils/os_divers.c:1827,1
    - Dst: CloseHandle
      Src: /src/gpac/src/utils/os_divers.c:1829,1
    - Dst: GlobalMemoryStatus
      Src: /src/gpac/src/utils/os_divers.c:1886,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_divers.c:1902,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 176
    argCount: 3
    argNames:
    - refresh_time_ms
    - rti
    - flags
    argTypes:
    - u32
    - GF_SystemRTInfo*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1904
      start: 1661
    functionDepth: 1
    functionLinenumber: 1661
    functionLinenumberEnd: 1904
    functionName: gf_sys_get_rti_os
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - SetProcPermissions
    - Thread32First
    - memset
    - gf_sys_clock
    - MyGetProcessMemoryInfo
    - MyQuerySystemInfo
    - gf_assert
    - MyGetSystemTimes
    - memcpy
    - GetProcessTimes
    - Thread32Next
    - GetThreadTimes
    - OpenProcess
    - Heap32ListNext
    - GetCurrentPermissions
    - Heap32First
    - CloseToolhelp32Snapshot
    - Heap32ListFirst
    - Heap32Next
    - GlobalMemoryStatus
    - CreateToolhelp32Snapshot
    - Process32Next
    - Process32First
    - CloseHandle
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sys_get_rti_os(u32 refresh_time_ms, GF_SystemRTInfo *rti, u32
      flags)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/os_divers.c:1950,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_divers.c:1951,1
    - Dst: sysctl
      Src: /src/gpac/src/utils/os_divers.c:1959,1
    - Dst: host_statistics
      Src: /src/gpac/src/utils/os_divers.c:1963,1
    - Dst: mach_host_self
      Src: /src/gpac/src/utils/os_divers.c:1963,1
    - Dst: sysctl
      Src: /src/gpac/src/utils/os_divers.c:1974,1
    - Dst: task_for_pid
      Src: /src/gpac/src/utils/os_divers.c:1980,1
    - Dst: mach_task_self
      Src: /src/gpac/src/utils/os_divers.c:1980,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1982,1
    - Dst: task_info
      Src: /src/gpac/src/utils/os_divers.c:1986,1
    - Dst: mach_task_self
      Src: /src/gpac/src/utils/os_divers.c:1986,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1988,1
    - Dst: task_info
      Src: /src/gpac/src/utils/os_divers.c:1999,1
    - Dst: mach_task_self
      Src: /src/gpac/src/utils/os_divers.c:1999,1
    - Dst: task_threads
      Src: /src/gpac/src/utils/os_divers.c:2007,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2009,1
    - Dst: thread_info
      Src: /src/gpac/src/utils/os_divers.c:2015,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2017,1
    - Dst: mach_error_string
      Src: /src/gpac/src/utils/os_divers.c:2017,1
    - Dst: vm_deallocate
      Src: /src/gpac/src/utils/os_divers.c:2028,1
    - Dst: mach_task_self
      Src: /src/gpac/src/utils/os_divers.c:2028,1
    - Dst: mach_port_deallocate
      Src: /src/gpac/src/utils/os_divers.c:2029,1
    - Dst: mach_task_self
      Src: /src/gpac/src/utils/os_divers.c:2029,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_divers.c:2059,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 92
    argCount: 3
    argNames:
    - refresh_time_ms
    - rti
    - flags
    argTypes:
    - u32
    - GF_SystemRTInfo*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2061
      start: 1931
    functionDepth: 1
    functionLinenumber: 1931
    functionLinenumberEnd: 2061
    functionName: gf_sys_get_rti_os
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - host_statistics
    - task_for_pid
    - thread_info
    - memcpy
    - GF_LOG
    - mach_port_deallocate
    - mach_task_self
    - sysctl
    - mach_host_self
    - vm_deallocate
    - task_info
    - mach_error_string
    - gf_sys_clock
    - task_threads
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sys_get_rti_os(u32 refresh_time_ms, GF_SystemRTInfo *rti, u32
      flags)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/os_divers.c:2083,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_divers.c:2085,1
    - Dst: task_info
      Src: /src/gpac/src/utils/os_divers.c:2090,1
    - Dst: mach_task_self
      Src: /src/gpac/src/utils/os_divers.c:2090,1
    - Dst: task_threads
      Src: /src/gpac/src/utils/os_divers.c:2099,1
    - Dst: mach_task_self
      Src: /src/gpac/src/utils/os_divers.c:2099,1
    - Dst: thread_info
      Src: /src/gpac/src/utils/os_divers.c:2108,1
    - Dst: vm_deallocate
      Src: /src/gpac/src/utils/os_divers.c:2111,1
    - Dst: mach_task_self
      Src: /src/gpac/src/utils/os_divers.c:2111,1
    - Dst: vm_deallocate
      Src: /src/gpac/src/utils/os_divers.c:2130,1
    - Dst: mach_task_self
      Src: /src/gpac/src/utils/os_divers.c:2130,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_divers.c:2131,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_divers.c:2152,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 52
    argCount: 3
    argNames:
    - refresh_time_ms
    - rti
    - flags
    argTypes:
    - u32
    - GF_SystemRTInfo*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2156
      start: 2069
    functionDepth: 1
    functionLinenumber: 2069
    functionLinenumberEnd: 2156
    functionName: gf_sys_get_rti_os
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - thread_info
    - memcpy
    - mach_task_self
    - vm_deallocate
    - task_info
    - gf_sys_clock
    - task_threads
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sys_get_rti_os(u32 refresh_time_ms, GF_SystemRTInfo *rti, u32
      flags)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_divers.c:2185,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/os_divers.c:2187,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_divers.c:2189,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_divers.c:2194,1
    - Dst: gf_fgets
      Src: /src/gpac/src/utils/os_divers.c:2198,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2199,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_divers.c:2203,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_divers.c:2212,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_divers.c:2213,1
    - Dst: gf_fflush
      Src: /src/gpac/src/utils/os_divers.c:2215,1
    - Dst: gf_fgets
      Src: /src/gpac/src/utils/os_divers.c:2216,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_divers.c:2223,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_divers.c:2226,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2229,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2240,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2243,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_divers.c:2245,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2247,1
    - Dst: getrusage
      Src: /src/gpac/src/utils/os_divers.c:2253,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_divers.c:2257,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_divers.c:2258,1
    - Dst: gf_fgets
      Src: /src/gpac/src/utils/os_divers.c:2260,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/os_divers.c:2261,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2262,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_divers.c:2266,1
    - Dst: EM_ASM_INT
      Src: /src/gpac/src/utils/os_divers.c:2272,1
    - Dst: mallinfo
      Src: /src/gpac/src/utils/os_divers.c:2273,1
    - Dst: sbrk
      Src: /src/gpac/src/utils/os_divers.c:2274,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_divers.c:2280,1
    - Dst: gf_fgets
      Src: /src/gpac/src/utils/os_divers.c:2283,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/os_divers.c:2284,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2285,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/os_divers.c:2287,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2288,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_divers.c:2293,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2295,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_divers.c:2357,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 121
    argCount: 3
    argNames:
    - refresh_time_ms
    - rti
    - flags
    argTypes:
    - u32
    - GF_SystemRTInfo*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2359
      start: 2176
    functionDepth: 1
    functionLinenumber: 2176
    functionLinenumberEnd: 2359
    functionName: gf_sys_get_rti_os
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_assert
    - sscanf
    - gf_fgets
    - memcpy
    - GF_LOG
    - getrusage
    - sprintf
    - EM_ASM_INT
    - gf_fopen
    - gf_fflush
    - strnicmp
    - strchr
    - mallinfo
    - gf_sys_clock
    - sbrk
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sys_get_rti_os(u32 refresh_time_ms, GF_SystemRTInfo *rti, u32
      flags)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_get_rti_os
      Src: /src/gpac/src/utils/os_divers.c:2368,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 3
    argNames:
    - refresh_time_ms
    - rti
    - flags
    argTypes:
    - u32
    - GF_SystemRTInfo*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2376
      start: 2363
    functionDepth: 2
    functionLinenumber: 2363
    functionLinenumberEnd: 2376
    functionName: gf_sys_get_rti
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 9
    functionsReached:
    - gf_sys_get_rti_os
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_get_rti(u32 refresh_time_ms, GF_SystemRTInfo *rti,
      u32 flags)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_divers.c:2386,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_divers.c:2390,1
    - Dst: GetTempPath
      Src: /src/gpac/src/utils/os_divers.c:2392,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_divers.c:2394,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_divers.c:2396,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_divers.c:2399,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:2401,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_divers.c:2407,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/utils/os_divers.c:2409,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/utils/os_divers.c:2409,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_divers.c:2410,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - do_create
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2414
      start: 2380
    functionDepth: 1
    functionLinenumber: 2380
    functionLinenumberEnd: 2414
    functionName: gf_get_default_cache_directory_ex
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_dir_exists
    - strcpy
    - gf_mkdir
    - GetTempPath
    - gf_opts_get_key
    - strlen
    linkageType: ''
    returnType: char
    signature: char * gf_get_default_cache_directory_ex(Bool do_create)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_get_default_cache_directory_ex
      Src: /src/gpac/src/utils/os_divers.c:2419,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2420
      start: 2416
    functionDepth: 2
    functionLinenumber: 2416
    functionLinenumberEnd: 2420
    functionName: gf_get_default_cache_directory
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 4
    functionsReached:
    - gf_get_default_cache_directory_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_get_default_cache_directory()
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GetSystemPowerStatusEx
      Src: /src/gpac/src/utils/os_divers.c:2428,1
    - Dst: GetSystemPowerStatus
      Src: /src/gpac/src/utils/os_divers.c:2436,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 5
    argNames:
    - onBattery
    - onCharge
    - level
    - batteryLifeTime
    - batteryFullLifeTime
    argTypes:
    - Bool*
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2444
      start: 2423
    functionDepth: 0
    functionLinenumber: 2423
    functionLinenumberEnd: 2444
    functionName: gf_sys_get_battery_state
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 2
    functionsReached:
    - GetSystemPowerStatusEx
    - GetSystemPowerStatus
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_get_battery_state(Bool *onBattery, u32 *onCharge,
      u32*level, u32 *batteryLifeTime, u32 *batteryFullLifeTime)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_get_default_cache_directory
      Src: /src/gpac/src/utils/os_divers.c:2470,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_divers.c:2474,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:2474,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:2474,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:2474,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_divers.c:2475,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_divers.c:2476,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:2480,1
    - Dst: open
      Src: /src/gpac/src/utils/os_divers.c:2490,1
    - Dst: fcntl
      Src: /src/gpac/src/utils/os_divers.c:2494,1
    - Dst: fcntl
      Src: /src/gpac/src/utils/os_divers.c:2502,1
    - Dst: fcntl
      Src: /src/gpac/src/utils/os_divers.c:2512,1
    - Dst: ftruncate
      Src: /src/gpac/src/utils/os_divers.c:2519,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_divers.c:2525,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/os_divers.c:2526,1
    - Dst: getpid
      Src: /src/gpac/src/utils/os_divers.c:2526,1
    - Dst: write
      Src: /src/gpac/src/utils/os_divers.c:2527,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_divers.c:2528,1
    - Dst: sync
      Src: /src/gpac/src/utils/os_divers.c:2532,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_divers.c:2534,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_divers.c:2535,1
    - Dst: close
      Src: /src/gpac/src/utils/os_divers.c:2542,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 56
    argCount: 1
    argNames:
    - resourceName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2544
      start: 2467
    functionDepth: 3
    functionLinenumber: 2467
    functionLinenumberEnd: 2544
    functionName: gf_create_PID_file
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - gf_get_default_cache_directory
    - gf_malloc
    - strcat
    - fcntl
    - gf_free
    - gf_strdup
    - snprintf
    - getpid
    - open
    - strcpy
    - ftruncate
    - close
    - sync
    - write
    - strlen
    linkageType: ''
    returnType: GF_GlobalLock
    signature: GF_GlobalLock * gf_create_PID_file( const char * resourceName )
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_divers.c:2559,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_divers.c:2560,1
    - Dst: CE_CharToWide
      Src: /src/gpac/src/utils/os_divers.c:2564,1
    - Dst: CreateMutex
      Src: /src/gpac/src/utils/os_divers.c:2565,1
    - Dst: CreateMutex
      Src: /src/gpac/src/utils/os_divers.c:2567,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_divers.c:2569,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2574,1
    - Dst: WaitForSingleObject
      Src: /src/gpac/src/utils/os_divers.c:2579,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_divers.c:2582,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2583,1
    - Dst: gf_global_resource_unlock
      Src: /src/gpac/src/utils/os_divers.c:2584,1
    - Dst: gf_create_PID_file
      Src: /src/gpac/src/utils/os_divers.c:2590,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2592
      start: 2552
    functionDepth: 4
    functionLinenumber: 2552
    functionLinenumberEnd: 2592
    functionName: GF_GlobalLock * gf_global_resource_lock(const char * resourceName)
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - CE_CharToWide
    - gf_strdup
    - gf_assert
    - GetLastError
    - CreateMutex
    - GF_LOG
    - WaitForSingleObject
    - gf_create_PID_file
    - gf_global_resource_unlock
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_GlobalLock * gf_global_resource_lock(const char * resourceName)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_divers.c:2604,1
    - Dst: close
      Src: /src/gpac/src/utils/os_divers.c:2605,1
    - Dst: unlink
      Src: /src/gpac/src/utils/os_divers.c:2606,1
    - Dst: perror
      Src: /src/gpac/src/utils/os_divers.c:2607,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_divers.c:2608,1
    - Dst: ReleaseMutex
      Src: /src/gpac/src/utils/os_divers.c:2614,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_divers.c:2616,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2617,1
    - Dst: CloseHandle
      Src: /src/gpac/src/utils/os_divers.c:2619,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_divers.c:2621,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2622,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_divers.c:2627,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_divers.c:2629,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 1
    argNames:
    - lock
    argTypes:
    - GF_GlobalLock*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2631
      start: 2599
    functionDepth: 1
    functionLinenumber: 2599
    functionLinenumberEnd: 2631
    functionName: gf_global_resource_unlock
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - gf_free
    - ReleaseMutex
    - gf_assert
    - GetLastError
    - GF_LOG
    - close
    - perror
    - CloseHandle
    - unlink
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_global_resource_unlock(GF_GlobalLock * lock)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - shift
    argTypes:
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2642
      start: 2638
    functionDepth: 0
    functionLinenumber: 2638
    functionLinenumberEnd: 2642
    functionName: gf_net_set_ntp_shift
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_net_set_ntp_shift(s32 shift)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gettimeofday
      Src: /src/gpac/src/utils/os_divers.c:2652,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - sec
    - frac
    argTypes:
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2662
      start: 2647
    functionDepth: 1
    functionLinenumber: 2647
    functionLinenumberEnd: 2662
    functionName: gf_net_get_ntp
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 14
    functionsReached:
    - gettimeofday
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_net_get_ntp(u32 *sec, u32 *frac)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/utils/os_divers.c:2669,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2674
      start: 2664
    functionDepth: 0
    functionLinenumber: 2664
    functionLinenumberEnd: 2674
    functionName: gf_net_get_ntp_ts
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 3
    functionsReached:
    - gf_net_get_ntp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_net_get_ntp_ts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 2
    argNames:
    - ntp_a
    - ntp_b
    argTypes:
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2696
      start: 2676
    functionDepth: 0
    functionLinenumber: 2676
    functionLinenumberEnd: 2696
    functionName: gf_net_ntp_diff_ms
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_net_ntp_diff_ms(u64 ntp_a, u64 ntp_b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/utils/os_divers.c:2706,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - ntp
    argTypes:
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2717
      start: 2698
    functionDepth: 0
    functionLinenumber: 2698
    functionLinenumberEnd: 2717
    functionName: gf_net_get_ntp_diff_ms
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 3
    functionsReached:
    - gf_net_get_ntp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_net_get_ntp_diff_ms(u64 ntp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - ntp
    - usec
    argTypes:
    - u64
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2747
      start: 2726
    functionDepth: 0
    functionLinenumber: 2726
    functionLinenumberEnd: 2747
    functionName: gf_net_ntp_add_usec
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_net_ntp_add_usec(u64 ntp, s32 usec)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/utils/os_divers.c:2757,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2766
      start: 2750
    functionDepth: 0
    functionLinenumber: 2750
    functionLinenumberEnd: 2766
    functionName: gf_net_get_ntp_ms
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 2
    functionsReached:
    - gf_net_get_ntp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_net_get_ntp_ms()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/gpac/src/utils/os_divers.c:2785,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/utils/os_divers.c:2786,1
    - Dst: localtime
      Src: /src/gpac/src/utils/os_divers.c:2787,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2792
      start: 2770
    functionDepth: 1
    functionLinenumber: 2770
    functionLinenumberEnd: 2792
    functionName: gf_net_get_timezone
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - localtime
    - time
    - gf_gmtime
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_net_get_timezone()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: time
      Src: /src/gpac/src/utils/os_divers.c:2802,1
    - Dst: localtime
      Src: /src/gpac/src/utils/os_divers.c:2803,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2806
      start: 2794
    functionDepth: 0
    functionLinenumber: 2794
    functionLinenumberEnd: 2806
    functionName: gf_net_time_is_dst
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - localtime
    - time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_net_time_is_dst()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - year
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2813
      start: 2810
    functionDepth: 0
    functionLinenumber: 2810
    functionLinenumberEnd: 2813
    functionName: leap_year
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool leap_year(u32 year)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: leap_year
      Src: /src/gpac/src/utils/os_divers.c:2824,1
    - Dst: leap_year
      Src: /src/gpac/src/utils/os_divers.c:2828,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - tm
    argTypes:
    - struct tm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2838
      start: 2814
    functionDepth: 1
    functionLinenumber: 2814
    functionLinenumberEnd: 2838
    functionName: gf_mktime_utc
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - leap_year
    linkageType: ''
    returnType: time_t
    signature: time_t gf_mktime_utc(struct tm *tm)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mkgmtime
      Src: /src/gpac/src/utils/os_divers.c:2843,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - tm
    argTypes:
    - struct tm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2844
      start: 2841
    functionDepth: 0
    functionLinenumber: 2841
    functionLinenumberEnd: 2844
    functionName: gf_mktime_utc
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - _mkgmtime
    linkageType: ''
    returnType: time_t
    signature: time_t gf_mktime_utc(struct tm *tm)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timegm
      Src: /src/gpac/src/utils/os_divers.c:2850,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - tm
    argTypes:
    - struct tm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2851
      start: 2848
    functionDepth: 0
    functionLinenumber: 2848
    functionLinenumberEnd: 2851
    functionName: gf_mktime_utc
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - timegm
    linkageType: ''
    returnType: time_t
    signature: time_t gf_mktime_utc(struct tm *tm)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: timegm64
      Src: /src/gpac/src/utils/os_divers.c:2858,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - tm
    argTypes:
    - struct tm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2862
      start: 2854
    functionDepth: 0
    functionLinenumber: 2854
    functionLinenumberEnd: 2862
    functionName: gf_mktime_utc
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - timegm64
    linkageType: ''
    returnType: time_t
    signature: time_t gf_mktime_utc(struct tm *tm)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timegm
      Src: /src/gpac/src/utils/os_divers.c:2869,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - tm
    argTypes:
    - struct tm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2870
      start: 2867
    functionDepth: 0
    functionLinenumber: 2867
    functionLinenumberEnd: 2870
    functionName: gf_mktime_utc
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - timegm
    linkageType: ''
    returnType: time_t
    signature: time_t gf_mktime_utc(struct tm *tm)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/utils/os_divers.c:2889,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_divers.c:2896,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2898,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2901,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2903,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2905,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2907,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2910,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2913,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2916,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2919,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2922,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2929,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2930,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2931,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2932,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2933,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2934,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2935,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2936,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2937,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2938,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2939,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2940,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_divers.c:2944,1
    - Dst: SystemTimeToFileTime
      Src: /src/gpac/src/utils/os_divers.c:2951,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:2963,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2964,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2964,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2965,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2965,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2966,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2966,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2967,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2967,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2968,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2968,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2969,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2969,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2970,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2970,1
    - Dst: gf_mktime_utc
      Src: /src/gpac/src/utils/os_divers.c:2973,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 107
    argCount: 1
    argNames:
    - val
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2994
      start: 2874
    functionDepth: 2
    functionLinenumber: 2874
    functionLinenumberEnd: 2994
    functionName: gf_net_parse_date
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 5
    functionsReached:
    - sscanf
    - GF_LOG
    - SystemTimeToFileTime
    - memset
    - strcmp
    - strchr
    - gf_mktime_utc
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_net_parse_date(const char *val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/utils/os_divers.c:3005,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_divers.c:3009,1
    - Dst: SystemTimeToFileTime
      Src: /src/gpac/src/utils/os_divers.c:3016,1
    - Dst: gf_mktime_utc
      Src: /src/gpac/src/utils/os_divers.c:3026,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 26
    argCount: 6
    argNames:
    - year
    - month
    - day
    - hour
    - min
    - sec
    argTypes:
    - u32
    - u32
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3039
      start: 2996
    functionDepth: 2
    functionLinenumber: 2996
    functionLinenumberEnd: 3039
    functionName: gf_net_get_utc_ts
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - memset
    - gf_mktime_utc
    - SystemTimeToFileTime
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_net_get_utc_ts(u32 year, u32 month, u32 day, u32 hour,
      u32 min, u32 sec)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - ntp
    argTypes:
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3055
      start: 3041
    functionDepth: 0
    functionLinenumber: 3041
    functionLinenumberEnd: 3055
    functionName: gf_net_ntp_to_utc
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_net_ntp_to_utc(u64 ntp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/utils/os_divers.c:3064,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3071
      start: 3057
    functionDepth: 0
    functionLinenumber: 3057
    functionLinenumberEnd: 3071
    functionName: gf_net_get_utc
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 21
    functionsReached:
    - gf_net_get_ntp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_net_get_utc()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/utils/os_divers.c:3080,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:3081,1
    - Dst: isalnum
      Src: /src/gpac/src/utils/os_divers.c:3088,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_divers.c:3092,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:3093,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:3105,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 25
    argCount: 2
    argNames:
    - string
    - value
    argTypes:
    - char*
    - bin128
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3109
      start: 3075
    functionDepth: 1
    functionLinenumber: 3075
    functionLinenumberEnd: 3109
    functionName: gf_bin128_parse
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 4
    functionsReached:
    - sscanf
    - GF_LOG
    - strlen
    - sprintf
    - strnicmp
    - isalnum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bin128_parse(const char *string, bin128 value)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_fsize
      Src: /src/gpac/src/utils/os_divers.c:3119,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:3121,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:3127,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_divers.c:3132,1
    - Dst: gf_fread
      Src: /src/gpac/src/utils/os_divers.c:3136,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:3139,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_divers.c:3140,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 3
    argNames:
    - file
    - out_data
    - out_size
    argTypes:
    - FILE*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3147
      start: 3112
    functionDepth: 1
    functionLinenumber: 3112
    functionLinenumberEnd: 3147
    functionName: gf_file_load_data_filep
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_fread
    - gf_fsize
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_file_load_data_filep(FILE *file, u8 **out_data, u32 *out_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_divers.c:3153,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_divers.c:3156,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:3159,1
    - Dst: gf_file_load_data_filep
      Src: /src/gpac/src/utils/os_divers.c:3162,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_divers.c:3163,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - file_name
    - out_data
    - out_size
    argTypes:
    - char*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3165
      start: 3149
    functionDepth: 2
    functionLinenumber: 3149
    functionLinenumberEnd: 3165
    functionName: gf_file_load_data
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 18
    functionsReached:
    - gf_fclose
    - gf_file_exists
    - GF_LOG
    - gf_fopen
    - gf_file_load_data_filep
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_file_load_data(const char *file_name, u8 **out_data, u32
      *out_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getpid
      Src: /src/gpac/src/utils/os_divers.c:3174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3175
      start: 3171
    functionDepth: 0
    functionLinenumber: 3171
    functionLinenumberEnd: 3175
    functionName: gf_sys_get_process_id
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 4
    functionsReached:
    - getpid
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_get_process_id()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getpgid
      Src: /src/gpac/src/utils/os_divers.c:3179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pid
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3180
      start: 3176
    functionDepth: 0
    functionLinenumber: 3176
    functionLinenumberEnd: 3180
    functionName: gf_sys_check_process_id
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - getpgid
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_check_process_id(u32 pid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetCurrentProcessId
      Src: /src/gpac/src/utils/os_divers.c:3186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3187
      start: 3183
    functionDepth: 0
    functionLinenumber: 3183
    functionLinenumberEnd: 3187
    functionName: gf_sys_get_process_id
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 4
    functionsReached:
    - GetCurrentProcessId
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_get_process_id()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: OpenProcess
      Src: /src/gpac/src/utils/os_divers.c:3191,1
    - Dst: CloseHandle
      Src: /src/gpac/src/utils/os_divers.c:3194,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - pid
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3198
      start: 3188
    functionDepth: 0
    functionLinenumber: 3188
    functionLinenumberEnd: 3198
    functionName: gf_sys_check_process_id
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - OpenProcess
    - CloseHandle
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_check_process_id(u32 pid)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_divers.c:3206,1
    - Dst: gf_sys_get_process_id
      Src: /src/gpac/src/utils/os_divers.c:3206,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:3207,1
    - Dst: open
      Src: /src/gpac/src/utils/os_divers.c:3212,1
    - Dst: write
      Src: /src/gpac/src/utils/os_divers.c:3214,1
    - Dst: close
      Src: /src/gpac/src/utils/os_divers.c:3215,1
    - Dst: fopen
      Src: /src/gpac/src/utils/os_divers.c:3221,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_divers.c:3223,1
    - Dst: fopen
      Src: /src/gpac/src/utils/os_divers.c:3223,1
    - Dst: fwrite
      Src: /src/gpac/src/utils/os_divers.c:3226,1
    - Dst: fclose
      Src: /src/gpac/src/utils/os_divers.c:3227,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/utils/os_divers.c:3236,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:3239,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_divers.c:3240,1
    - Dst: gf_sys_get_process_id
      Src: /src/gpac/src/utils/os_divers.c:3242,1
    - Dst: gf_sys_check_process_id
      Src: /src/gpac/src/utils/os_divers.c:3244,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/os_divers.c:3247,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 27
    argCount: 1
    argNames:
    - lockname
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3250
      start: 3201
    functionDepth: 3
    functionLinenumber: 3201
    functionLinenumberEnd: 3250
    functionName: GF_LockStatus::gf_sys_create_lockfile
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sys_get_process_id
    - fwrite
    - sscanf
    - gf_file_exists
    - open
    - close
    - sprintf
    - fopen
    - write
    - gf_file_delete
    - fclose
    - strlen
    - gf_sys_check_process_id
    - gf_file_load_data
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_LockStatus gf_sys_create_lockfile(const char *lockname)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/utils/os_divers.c:3262,1
    - Dst: tcgetattr
      Src: /src/gpac/src/utils/os_divers.c:3265,1
    - Dst: old::old
      Src: /src/gpac/src/utils/os_divers.c:3268,1
    - Dst: tcsetattr
      Src: /src/gpac/src/utils/os_divers.c:3272,1
    - Dst: getchar
      Src: /src/gpac/src/utils/os_divers.c:3275,1
    - Dst: tcsetattr
      Src: /src/gpac/src/utils/os_divers.c:3276,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3278
      start: 3254
    functionDepth: 1
    functionLinenumber: 3254
    functionLinenumberEnd: 3278
    functionName: gf_getch
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 3
    functionsReached:
    - tcgetattr
    - getchar
    - old::old
    - tcsetattr
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_getch()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/utils/os_divers.c:3284,1
    - Dst: getchar
      Src: /src/gpac/src/utils/os_divers.c:3286,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3287
      start: 3280
    functionDepth: 1
    functionLinenumber: 3280
    functionLinenumberEnd: 3287
    functionName: gf_getch
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 3
    functionsReached:
    - getchar
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_getch()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/utils/os_divers.c:3296,1
    - Dst: fflush
      Src: /src/gpac/src/utils/os_divers.c:3299,1
    - Dst: perror
      Src: /src/gpac/src/utils/os_divers.c:3300,1
    - Dst: gf_getch
      Src: /src/gpac/src/utils/os_divers.c:3305,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_divers.c:3308,1
    - Dst: fputc
      Src: /src/gpac/src/utils/os_divers.c:3312,1
    - Dst: fflush
      Src: /src/gpac/src/utils/os_divers.c:3315,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 3
    argNames:
    - line
    - maxSize
    - showContent
    argTypes:
    - char*
    - int
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3320
      start: 3290
    functionDepth: 1
    functionLinenumber: 3290
    functionLinenumberEnd: 3320
    functionName: gf_read_line_input
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 3
    functionsReached:
    - fputc
    - perror
    - gf_sys_is_cov_mode
    - fflush
    - fprintf
    - gf_getch
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_read_line_input(char * line, int maxSize, Bool showContent)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_divers.c:3329,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/os_divers.c:3331,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:3333,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_divers.c:3334,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_divers.c:3335,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:3336,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:3336,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_divers.c:3337,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:3343,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:3347,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_divers.c:3351,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_divers.c:3353,1
    - Dst: gf_sha256_csum
      Src: /src/gpac/src/utils/os_divers.c:3355,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_divers.c:3362,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/utils/os_divers.c:3362,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_divers.c:3363,1
    - Dst: gf_cfg_save
      Src: /src/gpac/src/utils/os_divers.c:3364,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_divers.c:3366,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 37
    argCount: 2
    argNames:
    - user
    - password
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3370
      start: 3323
    functionDepth: 6
    functionLinenumber: 3323
    functionLinenumberEnd: 3370
    functionName: gf_creds_check_password
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - sscanf
    - gf_cfg_del
    - gf_sha256_csum
    - memcpy
    - gf_cfg_get_key
    - sprintf
    - gf_cfg_new
    - gf_opts_get_key
    - gf_cfg_save
    - gf_net_get_utc
    - gf_cfg_set_key
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_creds_check_password(const char *user, char *password)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_token_find_word
      Src: /src/gpac/src/utils/os_divers.c:3379,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_divers.c:3385,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/os_divers.c:3387,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/src/utils/os_divers.c:3389,1
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/src/utils/os_divers.c:3391,1
    - Dst: gf_token_find_word
      Src: /src/gpac/src/utils/os_divers.c:3392,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_divers.c:3394,1
    - Dst: gf_token_find_word
      Src: /src/gpac/src/utils/os_divers.c:3395,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_divers.c:3396,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_divers.c:3400,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 3
    argNames:
    - username
    - users
    - groups
    argTypes:
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3402
      start: 3374
    functionDepth: 6
    functionLinenumber: 3374
    functionLinenumberEnd: 3402
    functionName: gf_creds_check_membership
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - gf_token_find_word
    - gf_cfg_del
    - gf_cfg_get_key_count
    - gf_cfg_get_key
    - gf_cfg_new
    - gf_cfg_get_key_name
    - gf_opts_get_key
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_creds_check_membership(const char *username, const char
      *users, const char *groups)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - MaxVal
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 50
    functionName: gf_get_bit_size
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 56
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_get_bit_size(u32 MaxVal)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - rc1
    - rc2
    argTypes:
    - GF_IRect*
    - GF_IRect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 71
    functionName: gf_irect_union
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_irect_union(GF_IRect *rc1, GF_IRect *rc2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 109
    functionName: GF_PAD_FLOOR
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GF_PAD_FLOOR( x, n )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 110
    functionName: GF_PAD_ROUND
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GF_PAD_ROUND( x, n )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 111
    functionName: GF_PAD_CEIL
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GF_PAD_CEIL( x, n )
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 1
    argNames:
    - vec
    argTypes:
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 141
    functionName: gf_trig_prenorm
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gf_trig_prenorm(GF_Point2D *vec)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _th
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 144
    functionName: ANGLE_RAD_TO_DEG
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ANGLE_RAD_TO_DEG(_th)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _th
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 145
    functionName: ANGLE_DEG_TO_RAD
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ANGLE_DEG_TO_RAD(_th)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_PAD_ROUND
      Src: /src/gpac/src/utils/math.c:203,1
    - Dst: GF_PAD_ROUND
      Src: /src/gpac/src/utils/math.c:205,1
    - Dst: ANGLE_DEG_TO_RAD
      Src: /src/gpac/src/utils/math.c:208,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 42
    argCount: 1
    argNames:
    - vec
    argTypes:
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 209
    functionName: gf_trig_pseudo_polarize
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached:
    - GF_PAD_ROUND
    - ANGLE_DEG_TO_RAD
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gf_trig_pseudo_polarize(GF_Point2D *vec)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_trig_prenorm
      Src: /src/gpac/src/utils/math.c:218,1
    - Dst: gf_trig_pseudo_polarize
      Src: /src/gpac/src/utils/math.c:219,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - dy
    - dx
    argTypes:
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 211
    functionDepth: 2
    functionLinenumber: 211
    functionLinenumberEnd: 221
    functionName: gf_atan2
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 16
    functionsReached:
    - gf_trig_pseudo_polarize
    - gf_trig_prenorm
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_atan2(Fixed dy, Fixed dx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gppInv_16_32s
      Src: /src/gpac/src/utils/math.c:240,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - a
    argTypes:
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 242
    functionName: gf_invfix
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 10
    functionsReached:
    - gppInv_16_32s
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_invfix(Fixed a)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gppInv_16_32s
      Src: /src/gpac/src/utils/math.c:249,1
    - Dst: gppDiv_16_32s
      Src: /src/gpac/src/utils/math.c:250,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 252
    functionName: gf_divfix
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 115
    functionsReached:
    - gppInv_16_32s
    - gppDiv_16_32s
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_divfix(Fixed a, Fixed b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gppMul_16_32s
      Src: /src/gpac/src/utils/math.c:260,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 262
    functionName: gf_mulfix
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 125
    functionsReached:
    - gppMul_16_32s
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mulfix(Fixed a, Fixed b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gppSqrtHP_16_32s
      Src: /src/gpac/src/utils/math.c:269,1
    - Dst: gppSqrtLP_16_32s
      Src: /src/gpac/src/utils/math.c:271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 264
    functionDepth: 0
    functionLinenumber: 264
    functionLinenumberEnd: 274
    functionName: gf_sqrt
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 18
    functionsReached:
    - gppSqrtHP_16_32s
    - gppSqrtLP_16_32s
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sqrt(Fixed x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gppCosHP_16_32s
      Src: /src/gpac/src/utils/math.c:281,1
    - Dst: gppCosLP_16_32s
      Src: /src/gpac/src/utils/math.c:283,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - angle
    argTypes:
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 276
    functionDepth: 0
    functionLinenumber: 276
    functionLinenumberEnd: 286
    functionName: gf_cos
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 24
    functionsReached:
    - gppCosHP_16_32s
    - gppCosLP_16_32s
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cos(Fixed angle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gppSinHP_16_32s
      Src: /src/gpac/src/utils/math.c:293,1
    - Dst: gppSinLP_16_32s
      Src: /src/gpac/src/utils/math.c:295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - angle
    argTypes:
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 298
    functionName: gf_sin
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 21
    functionsReached:
    - gppSinHP_16_32s
    - gppSinLP_16_32s
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sin(Fixed angle)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gppSinCosHP_16_32s
      Src: /src/gpac/src/utils/math.c:306,1
    - Dst: gppSinCosLP_16_32s
      Src: /src/gpac/src/utils/math.c:308,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:311,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - angle
    argTypes:
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 301
    functionDepth: 0
    functionLinenumber: 301
    functionLinenumberEnd: 312
    functionName: gf_tan
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 6
    functionsReached:
    - gf_divfix
    - gppSinCosLP_16_32s
    - gppSinCosHP_16_32s
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_tan(Fixed angle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gppSinCosHP_16_32s
      Src: /src/gpac/src/utils/math.c:320,1
    - Dst: gppSinCosLP_16_32s
      Src: /src/gpac/src/utils/math.c:322,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:324,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:325,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - length
    - angle
    argTypes:
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 314
    functionDepth: 0
    functionLinenumber: 314
    functionLinenumberEnd: 327
    functionName: gf_v2d_from_polar
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 8
    functionsReached:
    - gppSinCosLP_16_32s
    - gf_mulfix
    - gppSinCosHP_16_32s
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_v2d_from_polar(Fixed length, Fixed angle)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:333,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:334,1
    - Dst: gppSquare_16_32s
      Src: /src/gpac/src/utils/math.c:335,1
    - Dst: gppSquare_16_32s
      Src: /src/gpac/src/utils/math.c:336,1
    - Dst: gppSqrtHP_16_32s
      Src: /src/gpac/src/utils/math.c:338,1
    - Dst: gppSqrtLP_16_32s
      Src: /src/gpac/src/utils/math.c:340,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - vec
    argTypes:
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 329
    functionDepth: 1
    functionLinenumber: 329
    functionLinenumberEnd: 343
    functionName: gf_v2d_len
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 7
    functionsReached:
    - gppSquare_16_32s
    - ABS
    - gppSqrtHP_16_32s
    - gppSqrtLP_16_32s
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_v2d_len(GF_Point2D *vec)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:351,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - a
    argTypes:
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 347
    functionDepth: 0
    functionLinenumber: 347
    functionLinenumberEnd: 352
    functionName: gf_invfix
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 10
    functionsReached:
    - gf_divfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_invfix(Fixed a)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 354
    functionDepth: 0
    functionLinenumber: 354
    functionLinenumberEnd: 378
    functionName: gf_divfix
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 117
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_divfix(Fixed a, Fixed b)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:389,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:391,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 380
    functionDepth: 1
    functionLinenumber: 380
    functionLinenumberEnd: 404
    functionName: gf_mulfix
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 126
    functionsReached:
    - ABS
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mulfix(Fixed a, Fixed b)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - x
    argTypes:
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 407
    functionDepth: 0
    functionLinenumber: 407
    functionLinenumberEnd: 431
    functionName: gf_sqrt
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 18
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sqrt(Fixed x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - val
    argTypes:
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 435
    functionDepth: 0
    functionLinenumber: 435
    functionLinenumberEnd: 448
    functionName: gf_trig_downscale
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Fixed
    signature: Fixed gf_trig_downscale(Fixed  val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ANGLE_RAD_TO_DEG
      Src: /src/gpac/src/utils/math.c:457,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 42
    argCount: 2
    argNames:
    - vec
    - theta
    argTypes:
    - GF_Point2D*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 450
    functionDepth: 1
    functionLinenumber: 450
    functionLinenumberEnd: 506
    functionName: gf_trig_pseudo_rotate
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached:
    - ANGLE_RAD_TO_DEG
    linkageType: ''
    returnType: void
    signature: void gf_trig_pseudo_rotate(GF_Point2D*  vec, Fixed theta)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 509
    functionDepth: 0
    functionLinenumber: 509
    functionLinenumberEnd: 510
    functionName: GF_SIGN_LONG
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GF_SIGN_LONG( x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 510
    functionDepth: 0
    functionLinenumber: 510
    functionLinenumberEnd: 511
    functionName: GF_SIGN_INT
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GF_SIGN_INT( x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 512
      start: 511
    functionDepth: 0
    functionLinenumber: 511
    functionLinenumberEnd: 512
    functionName: GF_SIGN_INT32
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GF_SIGN_INT32( x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 512
    functionDepth: 0
    functionLinenumber: 512
    functionLinenumberEnd: 513
    functionName: GF_SIGN_INT16
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GF_SIGN_INT16( x )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_trig_prenorm
      Src: /src/gpac/src/utils/math.c:523,1
    - Dst: gf_trig_pseudo_rotate
      Src: /src/gpac/src/utils/math.c:524,1
    - Dst: gf_trig_downscale
      Src: /src/gpac/src/utils/math.c:525,1
    - Dst: gf_trig_downscale
      Src: /src/gpac/src/utils/math.c:526,1
    - Dst: GF_SIGN_LONG
      Src: /src/gpac/src/utils/math.c:531,1
    - Dst: GF_SIGN_LONG
      Src: /src/gpac/src/utils/math.c:532,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - vec
    - angle
    argTypes:
    - GF_Point2D*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 539
      start: 514
    functionDepth: 2
    functionLinenumber: 514
    functionLinenumberEnd: 539
    functionName: gf_v2d_rotate
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached:
    - gf_trig_downscale
    - GF_SIGN_LONG
    - gf_trig_prenorm
    - gf_trig_pseudo_rotate
    linkageType: ''
    returnType: void
    signature: void gf_v2d_rotate(GF_Point2D *vec, Fixed angle)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_trig_prenorm
      Src: /src/gpac/src/utils/math.c:556,1
    - Dst: gf_trig_pseudo_polarize
      Src: /src/gpac/src/utils/math.c:557,1
    - Dst: gf_trig_downscale
      Src: /src/gpac/src/utils/math.c:558,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - vec
    argTypes:
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 541
    functionDepth: 2
    functionLinenumber: 541
    functionLinenumberEnd: 563
    functionName: gf_v2d_len
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 7
    functionsReached:
    - gf_trig_pseudo_polarize
    - gf_trig_prenorm
    - gf_trig_downscale
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_v2d_len(GF_Point2D *vec)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_trig_prenorm
      Src: /src/gpac/src/utils/math.c:575,1
    - Dst: gf_trig_pseudo_polarize
      Src: /src/gpac/src/utils/math.c:576,1
    - Dst: gf_trig_downscale
      Src: /src/gpac/src/utils/math.c:577,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - vec
    - length
    - angle
    argTypes:
    - GF_Point2D*
    - Fixed*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 566
    functionDepth: 2
    functionLinenumber: 566
    functionLinenumberEnd: 580
    functionName: gf_v2d_polarize
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached:
    - gf_trig_pseudo_polarize
    - gf_trig_prenorm
    - gf_trig_downscale
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_v2d_polarize(GF_Point2D *vec, Fixed *length, Fixed *angle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_v2d_rotate
      Src: /src/gpac/src/utils/math.c:588,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - length
    - angle
    argTypes:
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 582
    functionDepth: 3
    functionLinenumber: 582
    functionLinenumberEnd: 590
    functionName: gf_v2d_from_polar
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 8
    functionsReached:
    - gf_v2d_rotate
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_v2d_from_polar(Fixed length, Fixed angle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_trig_pseudo_rotate
      Src: /src/gpac/src/utils/math.c:598,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - angle
    argTypes:
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 600
      start: 592
    functionDepth: 2
    functionLinenumber: 592
    functionLinenumberEnd: 600
    functionName: gf_cos
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 24
    functionsReached:
    - gf_trig_pseudo_rotate
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cos(Fixed angle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_cos
      Src: /src/gpac/src/utils/math.c:604,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - angle
    argTypes:
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 601
    functionDepth: 0
    functionLinenumber: 601
    functionLinenumberEnd: 605
    functionName: gf_sin
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 21
    functionsReached:
    - gf_cos
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sin(Fixed angle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_trig_pseudo_rotate
      Src: /src/gpac/src/utils/math.c:612,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:613,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - angle
    argTypes:
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 614
      start: 606
    functionDepth: 2
    functionLinenumber: 606
    functionLinenumberEnd: 614
    functionName: gf_tan
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 6
    functionsReached:
    - gf_divfix
    - gf_trig_pseudo_rotate
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_tan(Fixed angle)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - a
    - b
    - c
    argTypes:
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 640
      start: 619
    functionDepth: 0
    functionLinenumber: 619
    functionLinenumberEnd: 640
    functionName: gf_muldiv
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 22
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_muldiv(Fixed a, Fixed b, Fixed c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 647
      start: 643
    functionDepth: 0
    functionLinenumber: 643
    functionLinenumberEnd: 647
    functionName: gf_ceil
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_ceil(Fixed a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 653
      start: 649
    functionDepth: 0
    functionLinenumber: 649
    functionLinenumberEnd: 653
    functionName: gf_floor
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_floor(Fixed a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/utils/math.c:660,1
    - Dst: acos
      Src: /src/gpac/src/utils/math.c:660,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:660,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - angle
    argTypes:
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 657
    functionDepth: 1
    functionLinenumber: 657
    functionLinenumberEnd: 661
    functionName: gf_acos
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 8
    functionsReached:
    - FLT2FIX
    - acos
    - FIX2FLT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_acos(Fixed angle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/utils/math.c:667,1
    - Dst: asin
      Src: /src/gpac/src/utils/math.c:667,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:667,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - angle
    argTypes:
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 668
      start: 664
    functionDepth: 1
    functionLinenumber: 664
    functionLinenumberEnd: 668
    functionName: gf_asin
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 4
    functionsReached:
    - FLT2FIX
    - asin
    - FIX2FLT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_asin(Fixed angle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cos
      Src: /src/gpac/src/utils/math.c:678,1
    - Dst: sin
      Src: /src/gpac/src/utils/math.c:679,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - length
    - angle
    argTypes:
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 674
    functionDepth: 0
    functionLinenumber: 674
    functionLinenumberEnd: 681
    functionName: gf_v2d_from_polar
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 8
    functionsReached:
    - cos
    - sin
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_v2d_from_polar(Fixed length, Fixed angle)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:686,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:687,1
    - Dst: sqrt
      Src: /src/gpac/src/utils/math.c:688,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - vec
    argTypes:
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 683
    functionDepth: 1
    functionLinenumber: 683
    functionLinenumberEnd: 689
    functionName: gf_v2d_len
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 7
    functionsReached:
    - ABS
    - sqrt
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_v2d_len(GF_Point2D *vec)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_v2d_len
      Src: /src/gpac/src/utils/math.c:713,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - GF_Point2D*
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 714
      start: 707
    functionDepth: 2
    functionLinenumber: 707
    functionLinenumberEnd: 714
    functionName: gf_v2d_distance
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached:
    - gf_v2d_len
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_v2d_distance(GF_Point2D *a, GF_Point2D *b)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - angle1
    - angle2
    argTypes:
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 716
    functionDepth: 0
    functionLinenumber: 716
    functionLinenumberEnd: 729
    functionName: gf_angle_diff
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_angle_diff(Fixed angle1, Fixed angle2)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:742,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:743,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:744,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:745,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:746,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:747,1
    - Dst: exit
      Src: /src/gpac/src/utils/math.c:749,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 4
    argCount: 1
    argNames:
    - _this
    argTypes:
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 739
    functionDepth: 1
    functionLinenumber: 739
    functionLinenumberEnd: 751
    functionName: do_check_mx
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached:
    - ABS
    - exit
    linkageType: ''
    returnType: void
    signature: void do_check_mx(GF_Matrix2D *_this)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_is_identity
      Src: /src/gpac/src/utils/math.c:763,1
    - Dst: gf_mx2d_is_identity
      Src: /src/gpac/src/utils/math.c:764,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/utils/math.c:765,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/utils/math.c:768,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:769,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:769,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:770,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:770,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:771,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:771,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:772,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:772,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:773,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:773,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:774,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:774,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - _this
    - from
    argTypes:
    - GF_Matrix2D*
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 777
      start: 757
    functionDepth: 1
    functionLinenumber: 757
    functionLinenumberEnd: 777
    functionName: gf_mx2d_add_matrix
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 15
    functionsReached:
    - gf_mx2d_is_identity
    - gf_mx2d_copy
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx2d_add_matrix(GF_Matrix2D *_this, GF_Matrix2D *from)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_is_identity
      Src: /src/gpac/src/utils/math.c:786,1
    - Dst: gf_mx2d_is_identity
      Src: /src/gpac/src/utils/math.c:787,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/utils/math.c:788,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/utils/math.c:791,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:792,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:792,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:793,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:793,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:794,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:794,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:795,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:795,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:796,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:796,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:797,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:797,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - _this
    - with
    argTypes:
    - GF_Matrix2D*
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 800
      start: 780
    functionDepth: 1
    functionLinenumber: 780
    functionLinenumberEnd: 800
    functionName: gf_mx2d_pre_multiply
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 15
    functionsReached:
    - gf_mx2d_is_identity
    - gf_mx2d_copy
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx2d_pre_multiply(GF_Matrix2D *_this, GF_Matrix2D *with)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/utils/math.c:808,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/utils/math.c:811,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - _this
    - cx
    - cy
    argTypes:
    - GF_Matrix2D*
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 814
      start: 803
    functionDepth: 2
    functionLinenumber: 803
    functionLinenumberEnd: 814
    functionName: gf_mx2d_add_translation
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 35
    functionsReached:
    - gf_mx2d_add_matrix
    - gf_mx2d_init
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx2d_add_translation(GF_Matrix2D *_this, Fixed cx, Fixed
      cy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/utils/math.c:822,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/utils/math.c:824,1
    - Dst: gf_cos
      Src: /src/gpac/src/utils/math.c:826,1
    - Dst: gf_sin
      Src: /src/gpac/src/utils/math.c:828,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/utils/math.c:830,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/utils/math.c:831,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - _this
    - cx
    - cy
    - angle
    argTypes:
    - GF_Matrix2D*
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 834
      start: 817
    functionDepth: 3
    functionLinenumber: 817
    functionLinenumberEnd: 834
    functionName: gf_mx2d_add_rotation
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 21
    functionsReached:
    - gf_mx2d_add_matrix
    - gf_sin
    - gf_mx2d_add_translation
    - gf_mx2d_init
    - gf_cos
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx2d_add_rotation(GF_Matrix2D *_this, Fixed cx, Fixed
      cy, Fixed angle)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/utils/math.c:841,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/utils/math.c:844,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - _this
    - scale_x
    - scale_y
    argTypes:
    - GF_Matrix2D*
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 836
    functionDepth: 2
    functionLinenumber: 836
    functionLinenumberEnd: 847
    functionName: gf_mx2d_add_scale
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 28
    functionsReached:
    - gf_mx2d_add_matrix
    - gf_mx2d_init
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx2d_add_scale(GF_Matrix2D *_this, Fixed scale_x, Fixed
      scale_y)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/utils/math.c:854,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/utils/math.c:856,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/utils/math.c:860,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/utils/math.c:861,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 6
    argNames:
    - _this
    - scale_x
    - scale_y
    - cx
    - cy
    - angle
    argTypes:
    - GF_Matrix2D*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 864
      start: 849
    functionDepth: 4
    functionLinenumber: 849
    functionLinenumberEnd: 864
    functionName: gf_mx2d_add_scale_at
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 2
    functionsReached:
    - gf_mx2d_add_matrix
    - gf_mx2d_init
    - gf_mx2d_add_rotation
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx2d_add_scale_at(GF_Matrix2D *_this, Fixed scale_x, Fixed
      scale_y, Fixed cx, Fixed cy, Fixed angle)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/utils/math.c:871,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/utils/math.c:874,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - _this
    - skew_x
    - skew_y
    argTypes:
    - GF_Matrix2D*
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 877
      start: 866
    functionDepth: 2
    functionLinenumber: 866
    functionLinenumberEnd: 877
    functionName: gf_mx2d_add_skew
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached:
    - gf_mx2d_add_matrix
    - gf_mx2d_init
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx2d_add_skew(GF_Matrix2D *_this, Fixed skew_x, Fixed
      skew_y)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/utils/math.c:884,1
    - Dst: gf_tan
      Src: /src/gpac/src/utils/math.c:885,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/utils/math.c:887,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - _this
    - angle
    argTypes:
    - GF_Matrix2D*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 890
      start: 879
    functionDepth: 2
    functionLinenumber: 879
    functionLinenumberEnd: 890
    functionName: gf_mx2d_add_skew_x
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 4
    functionsReached:
    - gf_tan
    - gf_mx2d_init
    - gf_mx2d_add_matrix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx2d_add_skew_x(GF_Matrix2D *_this, Fixed angle)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/utils/math.c:897,1
    - Dst: gf_tan
      Src: /src/gpac/src/utils/math.c:899,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/utils/math.c:900,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - _this
    - angle
    argTypes:
    - GF_Matrix2D*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 903
      start: 892
    functionDepth: 2
    functionLinenumber: 892
    functionLinenumberEnd: 903
    functionName: gf_mx2d_add_skew_y
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 4
    functionsReached:
    - gf_tan
    - gf_mx2d_init
    - gf_mx2d_add_matrix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx2d_add_skew_y(GF_Matrix2D *_this, Fixed angle)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_is_identity
      Src: /src/gpac/src/utils/math.c:916,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:920,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:920,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:920,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:920,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/utils/math.c:922,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:928,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/utils/math.c:932,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:934,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:934,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/utils/math.c:936,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:941,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:942,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:943,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:943,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:943,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:943,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:945,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:946,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:947,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:947,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:947,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:947,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/utils/math.c:960,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 38
    argCount: 1
    argNames:
    - _this
    argTypes:
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 963
      start: 906
    functionDepth: 1
    functionLinenumber: 906
    functionLinenumberEnd: 963
    functionName: gf_mx2d_inverse
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 11
    functionsReached:
    - FLT2FIX
    - gf_mx2d_copy
    - gf_mx2d_is_identity
    - gf_divfix
    - gf_mx2d_init
    - gf_mulfix
    - FIX2FLT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx2d_inverse(GF_Matrix2D *_this)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/utils/math.c:974,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:979,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:979,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:980,1
    - Dst: gf_atan2
      Src: /src/gpac/src/utils/math.c:985,1
    - Dst: gf_cos
      Src: /src/gpac/src/utils/math.c:990,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:991,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:992,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 4
    argNames:
    - mx
    - scale
    - rotate
    - translate
    argTypes:
    - GF_Matrix2D*
    - GF_Point2D*
    - Fixed*
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 996
      start: 967
    functionDepth: 1
    functionLinenumber: 967
    functionLinenumberEnd: 996
    functionName: gf_mx2d_decompose
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 3
    functionsReached:
    - ABS
    - memcpy
    - gf_divfix
    - gf_atan2
    - gf_mulfix
    - gf_cos
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx2d_decompose(GF_Matrix2D *mx, GF_Point2D *scale, Fixed
      *rotate, GF_Point2D *translate)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1005,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1005,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1006,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1006,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - _this
    - x
    - y
    argTypes:
    - GF_Matrix2D*
    - Fixed*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1009
      start: 1000
    functionDepth: 0
    functionLinenumber: 1000
    functionLinenumberEnd: 1009
    functionName: gf_mx2d_apply_coords
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 9
    functionsReached:
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx2d_apply_coords(GF_Matrix2D *_this, Fixed *x, Fixed
      *y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_apply_coords
      Src: /src/gpac/src/utils/math.c:1014,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - _this
    - pt
    argTypes:
    - GF_Matrix2D*
    - GF_Point2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1015
      start: 1011
    functionDepth: 1
    functionLinenumber: 1011
    functionLinenumberEnd: 1015
    functionName: gf_mx2d_apply_point
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 4
    functionsReached:
    - gf_mx2d_apply_coords
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx2d_apply_point(GF_Matrix2D *_this, GF_Point2D *pt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_apply_point
      Src: /src/gpac/src/utils/math.c:1026,1
    - Dst: gf_mx2d_apply_point
      Src: /src/gpac/src/utils/math.c:1027,1
    - Dst: gf_mx2d_apply_point
      Src: /src/gpac/src/utils/math.c:1028,1
    - Dst: gf_mx2d_apply_point
      Src: /src/gpac/src/utils/math.c:1029,1
    - Dst: MIN
      Src: /src/gpac/src/utils/math.c:1030,1
    - Dst: MIN
      Src: /src/gpac/src/utils/math.c:1030,1
    - Dst: MIN
      Src: /src/gpac/src/utils/math.c:1030,1
    - Dst: MAX
      Src: /src/gpac/src/utils/math.c:1031,1
    - Dst: MAX
      Src: /src/gpac/src/utils/math.c:1031,1
    - Dst: MAX
      Src: /src/gpac/src/utils/math.c:1031,1
    - Dst: MIN
      Src: /src/gpac/src/utils/math.c:1032,1
    - Dst: MIN
      Src: /src/gpac/src/utils/math.c:1032,1
    - Dst: MIN
      Src: /src/gpac/src/utils/math.c:1032,1
    - Dst: MAX
      Src: /src/gpac/src/utils/math.c:1033,1
    - Dst: MAX
      Src: /src/gpac/src/utils/math.c:1033,1
    - Dst: MAX
      Src: /src/gpac/src/utils/math.c:1033,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 2
    argNames:
    - _this
    - rc
    argTypes:
    - GF_Matrix2D*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1037
      start: 1017
    functionDepth: 2
    functionLinenumber: 1017
    functionLinenumberEnd: 1037
    functionName: gf_mx2d_apply_rect
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 20
    functionsReached:
    - MAX
    - gf_mx2d_apply_point
    - MIN
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx2d_apply_rect(GF_Matrix2D *_this, GF_Rect *rc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FIX2INT
      Src: /src/gpac/src/utils/math.c:1049,1
    - Dst: gf_floor
      Src: /src/gpac/src/utils/math.c:1049,1
    - Dst: FIX2INT
      Src: /src/gpac/src/utils/math.c:1050,1
    - Dst: gf_ceil
      Src: /src/gpac/src/utils/math.c:1050,1
    - Dst: FIX2INT
      Src: /src/gpac/src/utils/math.c:1051,1
    - Dst: gf_ceil
      Src: /src/gpac/src/utils/math.c:1051,1
    - Dst: FIX2INT
      Src: /src/gpac/src/utils/math.c:1052,1
    - Dst: gf_floor
      Src: /src/gpac/src/utils/math.c:1052,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - r
    argTypes:
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1054
      start: 1045
    functionDepth: 1
    functionLinenumber: 1045
    functionLinenumberEnd: 1054
    functionName: gf_rect_pixelize
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 14
    functionsReached:
    - FIX2INT
    - gf_ceil
    - gf_floor
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rect_pixelize(GF_Rect *r)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 2
    argNames:
    - rc1
    - rc2
    argTypes:
    - GF_Rect*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1077
      start: 1059
    functionDepth: 0
    functionLinenumber: 1059
    functionLinenumberEnd: 1077
    functionName: gf_rect_union
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rect_union(GF_Rect *rc1, GF_Rect *rc2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - w
    - h
    argTypes:
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1090
      start: 1081
    functionDepth: 0
    functionLinenumber: 1081
    functionLinenumberEnd: 1090
    functionName: gf_rect_center
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rect_center(Fixed w, Fixed h)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 12
    argCount: 2
    argNames:
    - rc1
    - rc2
    argTypes:
    - GF_Rect
    - GF_Rect
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1102
      start: 1093
    functionDepth: 0
    functionLinenumber: 1093
    functionLinenumberEnd: 1102
    functionName: gf_rect_overlaps
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rect_overlaps(GF_Rect rc1, GF_Rect rc2)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    argCount: 2
    argNames:
    - rc1
    - rc2
    argTypes:
    - GF_Rect*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1110
      start: 1104
    functionDepth: 0
    functionLinenumber: 1104
    functionLinenumberEnd: 1110
    functionName: gf_rect_equal
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rect_equal(GF_Rect *rc1, GF_Rect *rc2)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_rect_overlaps
      Src: /src/gpac/src/utils/math.c:1115,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - rc1
    - rc2
    argTypes:
    - GF_Rect*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1133
      start: 1112
    functionDepth: 1
    functionLinenumber: 1112
    functionLinenumberEnd: 1133
    functionName: gf_rect_intersect
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached:
    - gf_rect_overlaps
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rect_intersect(GF_Rect *rc1, GF_Rect *rc2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1142
      start: 1141
    functionDepth: 0
    functionLinenumber: 1141
    functionLinenumberEnd: 1142
    functionName: IS_HIGH_DIM
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_HIGH_DIM(_v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1144
      start: 1143
    functionDepth: 0
    functionLinenumber: 1143
    functionLinenumberEnd: 1144
    functionName: VEC_HIGH_MAG
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VEC_HIGH_MAG(_v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gppVec3DLength_16_32s
      Src: /src/gpac/src/utils/math.c:1154,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/utils/math.c:1157,1
    - Dst: sqrt
      Src: /src/gpac/src/utils/math.c:1157,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1157,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1157,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1157,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1157,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1157,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1157,1
    - Dst: VEC_HIGH_MAG
      Src: /src/gpac/src/utils/math.c:1161,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/utils/math.c:1166,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1166,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1166,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1166,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/utils/math.c:1169,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1169,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1169,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1169,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - v
    argTypes:
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1171
      start: 1147
    functionDepth: 1
    functionLinenumber: 1147
    functionLinenumberEnd: 1171
    functionName: gf_vec_len_p
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - VEC_HIGH_MAG
    - sqrt
    - gppVec3DLength_16_32s
    - gf_mulfix
    - FIX2FLT
    - gf_sqrt
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_len_p(GF_Vec *v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_len_p
      Src: /src/gpac/src/utils/math.c:1176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - GF_Vec
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1178
      start: 1173
    functionDepth: 2
    functionLinenumber: 1173
    functionLinenumberEnd: 1178
    functionName: gf_vec_len
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 25
    functionsReached:
    - gf_vec_len_p
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_len(GF_Vec v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gppVec3DLengthSq_16_32s
      Src: /src/gpac/src/utils/math.c:1186,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/utils/math.c:1189,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1189,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1189,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1189,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1189,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1189,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1189,1
    - Dst: VEC_HIGH_MAG
      Src: /src/gpac/src/utils/math.c:1193,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1198,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1198,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1198,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1200,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1200,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1200,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - v
    argTypes:
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1203
      start: 1179
    functionDepth: 1
    functionLinenumber: 1179
    functionLinenumberEnd: 1203
    functionName: gf_vec_lensq_p
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - VEC_HIGH_MAG
    - gppVec3DLengthSq_16_32s
    - gf_mulfix
    - FIX2FLT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_lensq_p(GF_Vec *v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_lensq_p
      Src: /src/gpac/src/utils/math.c:1208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - GF_Vec
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1210
      start: 1205
    functionDepth: 2
    functionLinenumber: 1205
    functionLinenumberEnd: 1210
    functionName: gf_vec_lensq
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 2
    functionsReached:
    - gf_vec_lensq_p
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_lensq(GF_Vec v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gppVec3DDot_16_32s
      Src: /src/gpac/src/utils/math.c:1219,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1222,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1222,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1222,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1222,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1222,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1222,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/utils/math.c:1223,1
    - Dst: VEC_HIGH_MAG
      Src: /src/gpac/src/utils/math.c:1227,1
    - Dst: VEC_HIGH_MAG
      Src: /src/gpac/src/utils/math.c:1227,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1236,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1236,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1236,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1238,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1238,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1238,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - v1
    - v2
    argTypes:
    - GF_Vec*
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1241
      start: 1212
    functionDepth: 1
    functionLinenumber: 1212
    functionLinenumberEnd: 1241
    functionName: gf_vec_dot_p
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gppVec3DDot_16_32s
    - VEC_HIGH_MAG
    - gf_mulfix
    - FIX2FLT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_dot_p(GF_Vec *v1, GF_Vec *v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_dot_p
      Src: /src/gpac/src/utils/math.c:1244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - v1
    - v2
    argTypes:
    - GF_Vec
    - GF_Vec
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1246
      start: 1242
    functionDepth: 2
    functionLinenumber: 1242
    functionLinenumberEnd: 1246
    functionName: gf_vec_dot
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 18
    functionsReached:
    - gf_vec_dot_p
    linkageType: ''
    returnType: Fixed
    signature: Fixed gf_vec_dot(GF_Vec v1, GF_Vec v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gppVec3DNormalize_16_32s
      Src: /src/gpac/src/utils/math.c:1254,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/utils/math.c:1256,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1257,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1258,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - v
    argTypes:
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1261
      start: 1248
    functionDepth: 3
    functionLinenumber: 1248
    functionLinenumberEnd: 1261
    functionName: gf_vec_norm
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 41
    functionsReached:
    - gppVec3DNormalize_16_32s
    - gf_vec_len
    - gf_divfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_norm(GF_Vec *v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1267,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1268,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - v
    - f
    argTypes:
    - GF_Vec*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1271
      start: 1263
    functionDepth: 0
    functionLinenumber: 1263
    functionLinenumberEnd: 1271
    functionName: gf_vec_scale_p
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached:
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_scale_p(GF_Vec *v, Fixed f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1277,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1278,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1279,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - v
    - f
    argTypes:
    - GF_Vec
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1281
      start: 1273
    functionDepth: 0
    functionLinenumber: 1273
    functionLinenumberEnd: 1281
    functionName: gf_vec_scale
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 27
    functionsReached:
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_scale(GF_Vec v, Fixed f)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gppVec3DCross_16_32s
      Src: /src/gpac/src/utils/math.c:1290,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/utils/math.c:1293,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1293,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1293,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1293,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1293,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/utils/math.c:1294,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1294,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1294,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1294,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1294,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/utils/math.c:1295,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1295,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1295,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1295,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1295,1
    - Dst: VEC_HIGH_MAG
      Src: /src/gpac/src/utils/math.c:1301,1
    - Dst: VEC_HIGH_MAG
      Src: /src/gpac/src/utils/math.c:1301,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1310,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1310,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1311,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1311,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1312,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1312,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1318,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1318,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1319,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1319,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1320,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1320,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 26
    argCount: 2
    argNames:
    - v1
    - v2
    argTypes:
    - GF_Vec*
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1324
      start: 1283
    functionDepth: 1
    functionLinenumber: 1283
    functionLinenumberEnd: 1324
    functionName: gf_vec_cross_p
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gppVec3DCross_16_32s
    - VEC_HIGH_MAG
    - gf_mulfix
    - FIX2FLT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_cross_p(GF_Vec *v1, GF_Vec *v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_cross_p
      Src: /src/gpac/src/utils/math.c:1329,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - v1
    - v2
    argTypes:
    - GF_Vec
    - GF_Vec
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1331
      start: 1326
    functionDepth: 2
    functionLinenumber: 1326
    functionLinenumberEnd: 1331
    functionName: gf_vec_cross
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 22
    functionsReached:
    - gf_vec_cross_p
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_cross(GF_Vec v1, GF_Vec v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sqrt
      Src: /src/gpac/src/utils/math.c:1336,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1337
      start: 1334
    functionDepth: 0
    functionLinenumber: 1334
    functionLinenumberEnd: 1337
    functionName: gf_vec_len_p
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached:
    - gf_sqrt
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_len_p(GF_Vec *v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_len_p
      Src: /src/gpac/src/utils/math.c:1340,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - GF_Vec
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1341
      start: 1338
    functionDepth: 2
    functionLinenumber: 1338
    functionLinenumberEnd: 1341
    functionName: gf_vec_len
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 26
    functionsReached:
    - gf_vec_len_p
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_len(GF_Vec v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1345
      start: 1342
    functionDepth: 0
    functionLinenumber: 1342
    functionLinenumberEnd: 1345
    functionName: gf_vec_lensq_p
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_lensq_p(GF_Vec *v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_lensq_p
      Src: /src/gpac/src/utils/math.c:1348,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - GF_Vec
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1349
      start: 1346
    functionDepth: 2
    functionLinenumber: 1346
    functionLinenumberEnd: 1349
    functionName: gf_vec_lensq
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 2
    functionsReached:
    - gf_vec_lensq_p
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_lensq(GF_Vec v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - v1
    - v2
    argTypes:
    - GF_Vec*
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1353
      start: 1350
    functionDepth: 0
    functionLinenumber: 1350
    functionLinenumberEnd: 1353
    functionName: gf_vec_dot_p
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_dot_p(GF_Vec *v1, GF_Vec *v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_dot_p
      Src: /src/gpac/src/utils/math.c:1356,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - v1
    - v2
    argTypes:
    - GF_Vec
    - GF_Vec
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1357
      start: 1354
    functionDepth: 2
    functionLinenumber: 1354
    functionLinenumberEnd: 1357
    functionName: gf_vec_dot
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 18
    functionsReached:
    - gf_vec_dot_p
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_dot(GF_Vec v1, GF_Vec v2)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_len
      Src: /src/gpac/src/utils/math.c:1361,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - v
    argTypes:
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1368
      start: 1358
    functionDepth: 3
    functionLinenumber: 1358
    functionLinenumberEnd: 1368
    functionName: gf_vec_norm
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 41
    functionsReached:
    - gf_vec_len
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_norm(GF_Vec *v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - v
    - f
    argTypes:
    - GF_Vec*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1378
      start: 1370
    functionDepth: 0
    functionLinenumber: 1370
    functionLinenumberEnd: 1378
    functionName: gf_vec_scale_p
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_scale_p(GF_Vec *v, Fixed f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - v
    - f
    argTypes:
    - GF_Vec
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1388
      start: 1380
    functionDepth: 0
    functionLinenumber: 1380
    functionLinenumberEnd: 1388
    functionName: gf_vec_scale
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 27
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_scale(GF_Vec v, Fixed f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - v1
    - v2
    argTypes:
    - GF_Vec*
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1398
      start: 1390
    functionDepth: 0
    functionLinenumber: 1390
    functionLinenumberEnd: 1398
    functionName: gf_vec_cross_p
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_cross_p(GF_Vec *v1, GF_Vec *v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_cross_p
      Src: /src/gpac/src/utils/math.c:1403,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - v1
    - v2
    argTypes:
    - GF_Vec
    - GF_Vec
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1404
      start: 1400
    functionDepth: 2
    functionLinenumber: 1400
    functionLinenumberEnd: 1404
    functionName: gf_vec_cross
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 22
    functionsReached:
    - gf_vec_cross_p
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vec_cross(GF_Vec v1, GF_Vec v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/utils/math.c:1411,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - mat2D
    - mat
    argTypes:
    - GF_Matrix2D*
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1418
      start: 1408
    functionDepth: 1
    functionLinenumber: 1408
    functionLinenumberEnd: 1418
    functionName: gf_mx2d_from_mx
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 3
    functionsReached:
    - gf_mx2d_init
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx2d_from_mx(GF_Matrix2D *mat2D, GF_Matrix *mat)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_from_mx
      Src: /src/gpac/src/utils/math.c:1424,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/utils/math.c:1425,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - mat
    - rc
    argTypes:
    - GF_Matrix*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1426
      start: 1420
    functionDepth: 3
    functionLinenumber: 1420
    functionLinenumberEnd: 1426
    functionName: gf_mx_apply_rect
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 4
    functionsReached:
    - gf_mx2d_from_mx
    - gf_mx2d_apply_rect
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_apply_rect(GF_Matrix *mat, GF_Rect *rc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_init
      Src: /src/gpac/src/utils/math.c:1432,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1434,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1434,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1434,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1435,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1435,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1435,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1436,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1436,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1436,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1437,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1437,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1437,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1438,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1438,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1438,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1439,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1439,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1439,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1440,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1440,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1440,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1441,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1441,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1441,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1442,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1442,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1442,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1443,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1443,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1443,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1444,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1444,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1444,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1445,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1445,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1445,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/math.c:1446,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 2
    argNames:
    - mat
    - mul
    argTypes:
    - GF_Matrix*
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1447
      start: 1428
    functionDepth: 1
    functionLinenumber: 1428
    functionLinenumberEnd: 1447
    functionName: gf_mx_add_matrix
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 21
    functionsReached:
    - memcpy
    - gf_mx_init
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_add_matrix(GF_Matrix *mat, GF_Matrix *mul)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_init
      Src: /src/gpac/src/utils/math.c:1453,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1455,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1455,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1456,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1456,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1458,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1458,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1459,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1459,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1460,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1460,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1462,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1462,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1463,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1463,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1464,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1464,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1466,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1466,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/math.c:1467,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 2
    argNames:
    - mat
    - mat2D
    argTypes:
    - GF_Matrix*
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1468
      start: 1449
    functionDepth: 1
    functionLinenumber: 1449
    functionLinenumberEnd: 1468
    functionName: gf_mx_add_matrix_2d
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 6
    functionsReached:
    - memcpy
    - gf_mx_init
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_add_matrix_2d(GF_Matrix *mat, GF_Matrix2D *mat2D)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1481,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1481,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1481,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - mat
    - tx
    - ty
    - tz
    argTypes:
    - GF_Matrix*
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1485
      start: 1472
    functionDepth: 0
    functionLinenumber: 1472
    functionLinenumberEnd: 1485
    functionName: gf_mx_add_translation
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 13
    functionsReached:
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_add_translation(GF_Matrix *mat, Fixed tx, Fixed ty,
      Fixed tz)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1499,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - mat
    - sx
    - sy
    - sz
    argTypes:
    - GF_Matrix*
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1502
      start: 1487
    functionDepth: 0
    functionLinenumber: 1487
    functionLinenumberEnd: 1502
    functionName: gf_mx_add_scale
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 11
    functionsReached:
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_add_scale(GF_Matrix *mat, Fixed sx, Fixed sy, Fixed
      sz)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sqrt
      Src: /src/gpac/src/utils/math.c:1509,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1509,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1509,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1509,1
    - Dst: gf_cos
      Src: /src/gpac/src/utils/math.c:1510,1
    - Dst: gf_sin
      Src: /src/gpac/src/utils/math.c:1511,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1515,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1516,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1517,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1519,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1520,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1521,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1522,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1523,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1524,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/utils/math.c:1525,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1526,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1527,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1527,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1528,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1528,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1530,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1530,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1531,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1532,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1532,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1534,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1534,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1535,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1535,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1536,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/utils/math.c:1538,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 5
    argNames:
    - mat
    - angle
    - x
    - y
    - z
    argTypes:
    - GF_Matrix*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1539
      start: 1504
    functionDepth: 2
    functionLinenumber: 1504
    functionLinenumberEnd: 1539
    functionName: gf_mx_add_rotation
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 10
    functionsReached:
    - gf_sin
    - gf_divfix
    - gf_mx_init
    - gf_mx_add_matrix
    - gf_mulfix
    - gf_cos
    - gf_sqrt
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_add_rotation(GF_Matrix *mat, Fixed angle, Fixed x,
      Fixed y, Fixed z)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_init
      Src: /src/gpac/src/utils/math.c:1544,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - mat
    - mat2D
    argTypes:
    - GF_Matrix*
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1551
      start: 1541
    functionDepth: 1
    functionLinenumber: 1541
    functionLinenumberEnd: 1551
    functionName: gf_mx_from_mx2d
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 13
    functionsReached:
    - gf_mx_init
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_from_mx2d(GF_Matrix *mat, GF_Matrix2D *mat2D)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 2
    argNames:
    - mx1
    - mx2
    argTypes:
    - GF_Matrix*
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1569
      start: 1553
    functionDepth: 0
    functionLinenumber: 1553
    functionLinenumberEnd: 1569
    functionName: gf_mx_equal
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_equal(GF_Matrix *mx1, GF_Matrix *mx2)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_init
      Src: /src/gpac/src/utils/math.c:1581,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/math.c:1583,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1588,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1588,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1588,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1589,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1589,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1589,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1590,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1590,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1590,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1591,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1591,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1591,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1592,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1592,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1592,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1593,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1593,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1593,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/utils/math.c:1596,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/utils/math.c:1602,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/utils/math.c:1606,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1608,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1608,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1609,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1609,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1610,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1610,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1611,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1611,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1612,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1612,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1613,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1613,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/utils/math.c:1615,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:1622,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:1622,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:1623,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:1623,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:1624,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:1624,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:1625,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:1625,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:1626,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:1626,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:1627,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:1627,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:1628,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:1628,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:1629,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:1629,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:1630,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:1630,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1647,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1647,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1647,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1648,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1648,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1648,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1649,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1649,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1649,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/utils/math.c:1650,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 55
    argCount: 1
    argNames:
    - mx
    argTypes:
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1651
      start: 1572
    functionDepth: 1
    functionLinenumber: 1572
    functionLinenumberEnd: 1651
    functionName: gf_mx_inverse
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 16
    functionsReached:
    - FLT2FIX
    - gf_assert
    - gf_muldiv
    - gf_mx_init
    - gf_mx_copy
    - gf_mx2d_init
    - gf_mulfix
    - FIX2FLT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_inverse(GF_Matrix *mx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_init
      Src: /src/gpac/src/utils/math.c:1659,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/utils/math.c:1667,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - mx
    argTypes:
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1668
      start: 1653
    functionDepth: 1
    functionLinenumber: 1653
    functionLinenumberEnd: 1668
    functionName: gf_mx_transpose
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached:
    - gf_mx_init
    - gf_mx_copy
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_transpose(GF_Matrix *mx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1677,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1677,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1677,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1678,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1678,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1678,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1679,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1679,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1679,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - mx
    - pt
    argTypes:
    - GF_Matrix*
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1681
      start: 1673
    functionDepth: 0
    functionLinenumber: 1673
    functionLinenumberEnd: 1681
    functionName: gf_mx_apply_vec
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 30
    functionsReached:
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_apply_vec(GF_Matrix *mx, GF_Vec *pt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_init
      Src: /src/gpac/src/utils/math.c:1686,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1687,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1688,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1689,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1690,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1691,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1692,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 7
    argNames:
    - mx
    - left
    - right
    - bottom
    - top
    - z_near
    - z_far
    argTypes:
    - GF_Matrix*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1694
      start: 1683
    functionDepth: 1
    functionLinenumber: 1683
    functionLinenumberEnd: 1694
    functionName: gf_mx_ortho
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 3
    functionsReached:
    - gf_divfix
    - gf_mx_init
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_ortho(GF_Matrix *mx, Fixed left, Fixed right, Fixed
      bottom, Fixed top, Fixed z_near, Fixed z_far)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_init
      Src: /src/gpac/src/utils/math.c:1699,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1700,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1701,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1702,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1703,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1704,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 7
    argNames:
    - mx
    - left
    - right
    - bottom
    - top
    - z_near
    - z_far
    argTypes:
    - GF_Matrix*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1707
      start: 1696
    functionDepth: 1
    functionLinenumber: 1696
    functionLinenumberEnd: 1707
    functionName: gf_mx_ortho_reverse_z
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached:
    - gf_divfix
    - gf_mx_init
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_ortho_reverse_z(GF_Matrix *mx, Fixed left, Fixed right,
      Fixed bottom, Fixed top, Fixed z_near, Fixed z_far)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1711,1
    - Dst: gf_cos
      Src: /src/gpac/src/utils/math.c:1711,1
    - Dst: gf_sin
      Src: /src/gpac/src/utils/math.c:1711,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/utils/math.c:1712,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1713,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1715,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:1718,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 5
    argNames:
    - mx
    - fieldOfView
    - aspectRatio
    - z_near
    - z_far
    argTypes:
    - GF_Matrix*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1721
      start: 1708
    functionDepth: 1
    functionLinenumber: 1708
    functionLinenumberEnd: 1721
    functionName: gf_mx_perspective
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 2
    functionsReached:
    - gf_sin
    - gf_divfix
    - gf_muldiv
    - gf_mx_init
    - gf_cos
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_perspective(GF_Matrix *mx, Fixed fieldOfView, Fixed
      aspectRatio, Fixed z_near, Fixed z_far)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1726,1
    - Dst: gf_cos
      Src: /src/gpac/src/utils/math.c:1726,1
    - Dst: gf_sin
      Src: /src/gpac/src/utils/math.c:1726,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/utils/math.c:1727,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1728,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1732,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:1734,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 5
    argNames:
    - mx
    - fieldOfView
    - aspectRatio
    - z_near
    - z_far
    argTypes:
    - GF_Matrix*
    - Fixed
    - Fixed
    - Fixed
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1742
      start: 1723
    functionDepth: 1
    functionLinenumber: 1723
    functionLinenumberEnd: 1742
    functionName: gf_mx_perspective_reverse_z
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached:
    - gf_sin
    - gf_divfix
    - gf_muldiv
    - gf_mx_init
    - gf_cos
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_perspective_reverse_z(GF_Matrix *mx, Fixed fieldOfView,
      Fixed aspectRatio, Fixed z_near, Fixed z_far)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_diff
      Src: /src/gpac/src/utils/math.c:1748,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/utils/math.c:1749,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/utils/math.c:1750,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/utils/math.c:1752,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/utils/math.c:1753,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/utils/math.c:1754,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/utils/math.c:1766,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 4
    argNames:
    - mx
    - eye
    - center
    - upVector
    argTypes:
    - GF_Matrix*
    - GF_Vec
    - GF_Vec
    - GF_Vec
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1767
      start: 1743
    functionDepth: 4
    functionLinenumber: 1743
    functionLinenumberEnd: 1767
    functionName: gf_mx_lookat
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 2
    functionsReached:
    - gf_vec_cross
    - gf_vec_diff
    - gf_mx_init
    - gf_mx_add_translation
    - gf_vec_norm
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_lookat(GF_Matrix *mx, GF_Vec eye, GF_Vec center, GF_Vec
      upVector)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/math.c:1775,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/math.c:1776,1
    - Dst: atan
      Src: /src/gpac/src/utils/math.c:1777,1
    - Dst: atan
      Src: /src/gpac/src/utils/math.c:1778,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/utils/math.c:1778,1
    - Dst: pow
      Src: /src/gpac/src/utils/math.c:1778,1
    - Dst: pow
      Src: /src/gpac/src/utils/math.c:1778,1
    - Dst: atan
      Src: /src/gpac/src/utils/math.c:1779,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - mx
    - yaw
    - pitch
    - roll
    argTypes:
    - GF_Matrix*
    - Fixed*
    - Fixed*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1780
      start: 1771
    functionDepth: 1
    functionLinenumber: 1771
    functionLinenumberEnd: 1780
    functionName: gf_mx_get_yaw_pitch_roll
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 2
    functionsReached:
    - gf_assert
    - memcpy
    - atan
    - pow
    - gf_sqrt
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_get_yaw_pitch_roll(GF_Matrix *mx, Fixed *yaw, Fixed
      *pitch, Fixed *roll)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/math.c:1791,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/math.c:1793,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1799,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/utils/math.c:1816,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/utils/math.c:1817,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/utils/math.c:1818,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1819,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1820,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1821,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/utils/math.c:1823,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/utils/math.c:1824,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1825,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/utils/math.c:1827,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1828,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1829,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1830,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/utils/math.c:1831,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1832,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1833,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1834,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/utils/math.c:1836,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/utils/math.c:1837,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1838,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1839,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/math.c:1851,1
    - Dst: gf_quat_from_matrix
      Src: /src/gpac/src/utils/math.c:1852,1
    - Dst: gf_quat_to_rotation
      Src: /src/gpac/src/utils/math.c:1853,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 55
    argCount: 5
    argNames:
    - mx
    - translate
    - scale
    - rotate
    - shear
    argTypes:
    - GF_Matrix*
    - GF_Vec*
    - GF_Vec*
    - GF_Vec4*
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1854
      start: 1782
    functionDepth: 4
    functionLinenumber: 1782
    functionLinenumberEnd: 1854
    functionName: gf_mx_decompose
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached:
    - gf_vec_len
    - gf_assert
    - gf_vec_dot
    - gf_quat_from_matrix
    - gf_quat_to_rotation
    - memcpy
    - gf_divfix
    - gf_vec_norm
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_decompose(GF_Matrix *mx, GF_Vec *translate, GF_Vec
      *scale, GF_Vec4 *rotate, GF_Vec *shear)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/utils/math.c:1860,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/utils/math.c:1861,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/utils/math.c:1881,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - mx
    - box
    argTypes:
    - GF_Matrix*
    - GF_BBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1882
      start: 1856
    functionDepth: 1
    functionLinenumber: 1856
    functionLinenumberEnd: 1882
    functionName: gf_mx_apply_bbox_sphere
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached:
    - gf_mx_apply_vec
    - gf_bbox_refresh
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_apply_bbox_sphere(GF_Matrix *mx, GF_BBox *box)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/utils/math.c:1908,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/utils/math.c:1916,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 33
    argCount: 2
    argNames:
    - mx
    - box
    argTypes:
    - GF_Matrix*
    - GF_BBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1917
      start: 1884
    functionDepth: 1
    functionLinenumber: 1884
    functionLinenumberEnd: 1917
    functionName: gf_mx_apply_bbox
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 5
    functionsReached:
    - gf_mx_apply_vec
    - gf_bbox_refresh
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_apply_bbox(GF_Matrix *mx, GF_BBox *box)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_apply_vec_4x4
      Src: /src/gpac/src/utils/math.c:1948,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1950,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1951,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1952,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1953,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/utils/math.c:1962,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 43
    argCount: 2
    argNames:
    - mx
    - box
    argTypes:
    - GF_Matrix*
    - GF_BBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1963
      start: 1919
    functionDepth: 1
    functionLinenumber: 1919
    functionLinenumberEnd: 1963
    functionName: gf_mx_apply_bbox_4x4
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 2
    functionsReached:
    - gf_mx_apply_vec_4x4
    - gf_divfix
    - gf_bbox_refresh
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_apply_bbox_4x4(GF_Matrix *mx, GF_BBox *box)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1972,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1972,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1972,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1973,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1973,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1973,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1974,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1974,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1974,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1975,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1975,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:1975,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1977,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1978,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:1979,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - mx
    - pt
    argTypes:
    - GF_Matrix*
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1981
      start: 1967
    functionDepth: 0
    functionLinenumber: 1967
    functionLinenumberEnd: 1981
    functionName: gf_mx_rotate_vector
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 2
    functionsReached:
    - gf_divfix
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_rotate_vector(GF_Matrix *mx, GF_Vec *pt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 4
    argNames:
    - mx
    - x
    - y
    - z
    argTypes:
    - GF_Matrix*
    - GF_Vec
    - GF_Vec
    - GF_Vec
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2002
      start: 1983
    functionDepth: 0
    functionLinenumber: 1983
    functionLinenumberEnd: 2002
    functionName: gf_mx_rotation_matrix_from_vectors
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_rotation_matrix_from_vectors(GF_Matrix *mx, GF_Vec
      x, GF_Vec y, GF_Vec z)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_init
      Src: /src/gpac/src/utils/math.c:2010,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2011,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2011,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2011,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2011,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2012,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2012,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2012,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2012,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2013,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2013,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2013,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2013,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2014,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2014,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2014,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2014,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2015,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2015,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2015,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2015,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2016,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2016,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2016,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2016,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2017,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2017,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2017,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2017,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2018,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2018,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2018,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2018,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2019,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2019,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2019,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2019,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2020,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2020,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2020,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2020,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2021,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2021,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2021,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2021,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2022,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2022,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2022,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2022,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2023,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2023,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2023,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2023,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2024,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2024,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2024,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2024,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2025,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2025,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2025,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2025,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2026,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2026,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2026,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2026,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/math.c:2027,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 2
    argNames:
    - mat
    - mul
    argTypes:
    - GF_Matrix*
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2028
      start: 2006
    functionDepth: 1
    functionLinenumber: 2006
    functionLinenumberEnd: 2028
    functionName: gf_mx_add_matrix_4x4
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 3
    functionsReached:
    - memcpy
    - gf_mx_init
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_add_matrix_4x4(GF_Matrix *mat, GF_Matrix *mul)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2035,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2035,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2035,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2035,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2036,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2036,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2036,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2036,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2037,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2037,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2037,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2037,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2038,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2038,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2038,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2038,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - mx
    - vec
    argTypes:
    - GF_Matrix*
    - GF_Vec4*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2040
      start: 2031
    functionDepth: 0
    functionLinenumber: 2031
    functionLinenumberEnd: 2040
    functionName: gf_mx_apply_vec_4x4
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 6
    functionsReached:
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_apply_vec_4x4(GF_Matrix *mx, GF_Vec4 *vec)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:2086,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:2086,1
    - Dst: SWAP_ROWS
      Src: /src/gpac/src/utils/math.c:2086,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:2087,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:2087,1
    - Dst: SWAP_ROWS
      Src: /src/gpac/src/utils/math.c:2087,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:2088,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:2088,1
    - Dst: SWAP_ROWS
      Src: /src/gpac/src/utils/math.c:2088,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2092,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2093,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2094,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2096,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2097,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2098,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2100,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2101,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2102,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2104,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2105,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2106,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2109,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2110,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2111,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2115,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2116,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2117,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2121,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2122,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2123,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2127,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2128,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2129,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:2133,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:2133,1
    - Dst: SWAP_ROWS
      Src: /src/gpac/src/utils/math.c:2133,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:2134,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:2134,1
    - Dst: SWAP_ROWS
      Src: /src/gpac/src/utils/math.c:2134,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2138,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2139,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2140,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2141,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2142,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2143,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2146,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2147,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2151,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2152,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2156,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2157,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2161,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2162,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:2166,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:2166,1
    - Dst: SWAP_ROWS
      Src: /src/gpac/src/utils/math.c:2166,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2170,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2171,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2172,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2173,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2174,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2175,1
    - Dst: gf_invfix
      Src: /src/gpac/src/utils/math.c:2179,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2180,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2181,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2182,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2183,1
    - Dst: gf_invfix
      Src: /src/gpac/src/utils/math.c:2186,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2187,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2187,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2188,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2188,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2189,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2189,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2190,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2190,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2192,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2193,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2194,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2195,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2197,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2198,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2199,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2200,1
    - Dst: gf_invfix
      Src: /src/gpac/src/utils/math.c:2203,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2204,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2204,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2205,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2205,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2206,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2206,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2207,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2207,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2209,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2210,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2211,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2212,1
    - Dst: gf_invfix
      Src: /src/gpac/src/utils/math.c:2215,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2216,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2216,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2217,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2217,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2218,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2218,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2219,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2219,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/utils/math.c:2221,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/utils/math.c:2237,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 176
    argCount: 1
    argNames:
    - mx
    argTypes:
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2241
      start: 2050
    functionDepth: 1
    functionLinenumber: 2050
    functionLinenumberEnd: 2241
    functionName: gf_mx_inverse_4x4
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached:
    - ABS
    - SWAP_ROWS
    - gf_divfix
    - gf_mx_init
    - gf_invfix
    - gf_mx_copy
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_inverse_4x4(GF_Matrix *mx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2055
      start: 2054
    functionDepth: 0
    functionLinenumber: 2054
    functionLinenumberEnd: 2055
    functionName: SWAP_ROWS
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SWAP_ROWS(a, b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_dot
      Src: /src/gpac/src/utils/math.c:2249,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2251,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/utils/math.c:2251,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/utils/math.c:2253,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/utils/math.c:2254,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - plane
    - linepoint
    - linevec
    - outPoint
    argTypes:
    - GF_Plane*
    - GF_Vec*
    - GF_Vec*
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2256
      start: 2245
    functionDepth: 3
    functionLinenumber: 2245
    functionLinenumberEnd: 2256
    functionName: gf_plane_intersect_line
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 3
    functionsReached:
    - gf_vec_dot
    - gf_vec_add
    - gf_divfix
    - gf_vec_scale
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_plane_intersect_line(GF_Plane *plane, GF_Vec *linepoint,
      GF_Vec *linevec, GF_Vec *outPoint)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_cross
      Src: /src/gpac/src/utils/math.c:2262,1
    - Dst: gf_vec_lensq
      Src: /src/gpac/src/utils/math.c:2263,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - plane
    - with
    argTypes:
    - GF_Plane*
    - GF_Plane*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2264
      start: 2259
    functionDepth: 3
    functionLinenumber: 2259
    functionLinenumberEnd: 2264
    functionName: gf_plane_exists_intersection
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached:
    - gf_vec_lensq
    - gf_vec_cross
    linkageType: ''
    returnType: Bool
    signature: Bool gf_plane_exists_intersection(GF_Plane *plane, GF_Plane *with)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_len
      Src: /src/gpac/src/utils/math.c:2268,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/utils/math.c:2269,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/utils/math.c:2270,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2271,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2271,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:2272,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2275,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2275,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2275,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2276,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2276,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2276,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/utils/math.c:2277,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/utils/math.c:2278,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/utils/math.c:2279,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/utils/math.c:2280,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - plane
    - with
    - linepoint
    - linevec
    argTypes:
    - GF_Plane*
    - GF_Plane*
    - GF_Vec*
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2284
      start: 2266
    functionDepth: 3
    functionLinenumber: 2266
    functionLinenumberEnd: 2284
    functionName: gf_plane_intersect_plane
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached:
    - gf_vec_len
    - gf_vec_dot
    - ABS
    - gf_vec_add
    - gf_vec_cross
    - gf_vec_scale
    - gf_divfix
    - gf_mulfix
    linkageType: ''
    returnType: Bool
    signature: Bool gf_plane_intersect_plane(GF_Plane *plane, GF_Plane *with, GF_Vec
      *linepoint, GF_Vec *linevec)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_plane_intersect_plane
      Src: /src/gpac/src/utils/math.c:2289,1
    - Dst: gf_plane_intersect_line
      Src: /src/gpac/src/utils/math.c:2290,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - plane
    - p1
    - p2
    - outPoint
    argTypes:
    - GF_Plane*
    - GF_Plane*
    - GF_Plane*
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2292
      start: 2286
    functionDepth: 4
    functionLinenumber: 2286
    functionLinenumberEnd: 2292
    functionName: gf_plane_intersect_planes
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached:
    - gf_plane_intersect_line
    - gf_plane_intersect_plane
    linkageType: ''
    returnType: Bool
    signature: Bool gf_plane_intersect_planes(GF_Plane *plane, GF_Plane *p1, GF_Plane
      *p2, GF_Vec *outPoint)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_diff
      Src: /src/gpac/src/utils/math.c:2302,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/utils/math.c:2303,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - start
    - end
    argTypes:
    - GF_Vec
    - GF_Vec
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2305
      start: 2297
    functionDepth: 4
    functionLinenumber: 2297
    functionLinenumberEnd: 2305
    functionName: gf_ray
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 2
    functionsReached:
    - gf_vec_diff
    - gf_vec_norm
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_ray(GF_Vec start, GF_Vec end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_add
      Src: /src/gpac/src/utils/math.c:2310,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/utils/math.c:2311,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/utils/math.c:2312,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/utils/math.c:2313,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/utils/math.c:2314,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - mx
    - r
    argTypes:
    - GF_Matrix*
    - GF_Ray*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2315
      start: 2307
    functionDepth: 4
    functionLinenumber: 2307
    functionLinenumberEnd: 2315
    functionName: gf_mx_apply_ray
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 10
    functionsReached:
    - gf_vec_norm
    - gf_vec_diff
    - gf_vec_add
    - gf_mx_apply_vec
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_apply_ray(GF_Matrix *mx, GF_Ray *r)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2333,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2334,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2356,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2357,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2380,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2381,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/utils/math.c:2397,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/utils/math.c:2398,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 73
    argCount: 4
    argNames:
    - ray
    - box_min
    - box_max
    - outPoint
    argTypes:
    - GF_Ray*
    - GF_Vec
    - GF_Vec
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2401
      start: 2322
    functionDepth: 1
    functionLinenumber: 2322
    functionLinenumberEnd: 2401
    functionName: gf_ray_hit_box
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 2
    functionsReached:
    - gf_vec_add
    - gf_divfix
    - gf_vec_scale
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_ray_hit_box(GF_Ray *ray, GF_Vec box_min, GF_Vec box_max,
      GF_Vec *outPoint)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_diff
      Src: /src/gpac/src/utils/math.c:2410,1
    - Dst: gf_vec_rev
      Src: /src/gpac/src/utils/math.c:2413,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/utils/math.c:2415,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/utils/math.c:2416,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:2417,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2419,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2420,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2420,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/utils/math.c:2424,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/utils/math.c:2425,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/utils/math.c:2426,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 4
    argNames:
    - ray
    - center
    - radius
    - outPoint
    argTypes:
    - GF_Ray*
    - GF_Vec*
    - Fixed
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2429
      start: 2404
    functionDepth: 3
    functionLinenumber: 2404
    functionLinenumberEnd: 2429
    functionName: gf_ray_hit_sphere
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 2
    functionsReached:
    - gf_vec_len
    - gf_vec_dot
    - ABS
    - gf_vec_rev
    - gf_vec_scale
    - gf_vec_add
    - gf_vec_diff
    - gf_mulfix
    - gf_sqrt
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_ray_hit_sphere(GF_Ray *ray, GF_Vec *center, Fixed radius,
      GF_Vec *outPoint)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_diff
      Src: /src/gpac/src/utils/math.c:2443,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/utils/math.c:2444,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/utils/math.c:2446,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/utils/math.c:2448,1
    - Dst: ABS
      Src: /src/gpac/src/utils/math.c:2449,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/utils/math.c:2451,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2453,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/utils/math.c:2453,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/utils/math.c:2456,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2458,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/utils/math.c:2458,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2469,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/utils/math.c:2469,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 5
    argNames:
    - ray
    - v0
    - v1
    - v2
    - dist
    argTypes:
    - GF_Ray*
    - GF_Vec*
    - GF_Vec*
    - GF_Vec*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2471
      start: 2437
    functionDepth: 3
    functionLinenumber: 2437
    functionLinenumberEnd: 2471
    functionName: gf_ray_hit_triangle
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 2
    functionsReached:
    - gf_vec_dot
    - ABS
    - gf_vec_cross
    - gf_vec_diff
    - gf_divfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_ray_hit_triangle(GF_Ray *ray, GF_Vec *v0, GF_Vec *v1,
      GF_Vec *v2, Fixed *dist)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_diff
      Src: /src/gpac/src/utils/math.c:2479,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/utils/math.c:2480,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/utils/math.c:2482,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/utils/math.c:2484,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/utils/math.c:2487,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/utils/math.c:2489,1
    - Dst: gf_vec_cross
      Src: /src/gpac/src/utils/math.c:2492,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/utils/math.c:2494,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2497,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/utils/math.c:2497,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 5
    argNames:
    - ray
    - v0
    - v1
    - v2
    - dist
    argTypes:
    - GF_Ray*
    - GF_Vec*
    - GF_Vec*
    - GF_Vec*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2499
      start: 2474
    functionDepth: 3
    functionLinenumber: 2474
    functionLinenumberEnd: 2499
    functionName: gf_ray_hit_triangle_backcull
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached:
    - gf_vec_diff
    - gf_divfix
    - gf_vec_cross
    - gf_vec_dot
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ray_hit_triangle_backcull(GF_Ray *ray, GF_Vec *v0, GF_Vec *v1,
      GF_Vec *v2, Fixed *dist)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_diff
      Src: /src/gpac/src/utils/math.c:2507,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/utils/math.c:2508,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/utils/math.c:2509,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/utils/math.c:2510,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - line_pt
    - line_vec
    - pt
    argTypes:
    - GF_Vec
    - GF_Vec
    - GF_Vec
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2512
      start: 2502
    functionDepth: 3
    functionLinenumber: 2502
    functionLinenumberEnd: 2512
    functionName: gf_closest_point_to_line
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 2
    functionsReached:
    - gf_vec_diff
    - gf_vec_add
    - gf_vec_scale
    - gf_vec_dot
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_closest_point_to_line(GF_Vec line_pt, GF_Vec line_vec,
      GF_Vec pt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sqrt
      Src: /src/gpac/src/utils/math.c:2523,1
    - Dst: gf_invfix
      Src: /src/gpac/src/utils/math.c:2525,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2526,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2527,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2528,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/utils/math.c:2542,1
    - Dst: gf_invfix
      Src: /src/gpac/src/utils/math.c:2545,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2547,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2548,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2549,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 33
    argCount: 1
    argNames:
    - mx
    argTypes:
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2556
      start: 2515
    functionDepth: 0
    functionLinenumber: 2515
    functionLinenumberEnd: 2556
    functionName: gf_quat_from_matrix
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached:
    - gf_mulfix
    - gf_invfix
    - gf_sqrt
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_quat_from_matrix(GF_Matrix *mx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_acos
      Src: /src/gpac/src/utils/math.c:2562,1
    - Dst: gf_sin
      Src: /src/gpac/src/utils/math.c:2569,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2570,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2571,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2572,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/utils/math.c:2573,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 1
    argNames:
    - quat
    argTypes:
    - GF_Vec4*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2580
      start: 2558
    functionDepth: 4
    functionLinenumber: 2558
    functionLinenumberEnd: 2580
    functionName: gf_quat_to_rotation
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 5
    functionsReached:
    - gf_vec_norm
    - gf_acos
    - gf_divfix
    - gf_sin
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_quat_to_rotation(GF_Vec4 *quat)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sqrt
      Src: /src/gpac/src/utils/math.c:2587,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2587,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2587,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2587,1
    - Dst: gf_sin
      Src: /src/gpac/src/utils/math.c:2596,1
    - Dst: gf_cos
      Src: /src/gpac/src/utils/math.c:2597,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:2598,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:2599,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/utils/math.c:2600,1
    - Dst: gf_quat_norm
      Src: /src/gpac/src/utils/math.c:2601,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - rot
    argTypes:
    - GF_Vec4
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2604
      start: 2582
    functionDepth: 1
    functionLinenumber: 2582
    functionLinenumberEnd: 2604
    functionName: gf_quat_from_rotation
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 5
    functionsReached:
    - gf_quat_norm
    - gf_sin
    - gf_muldiv
    - gf_mulfix
    - gf_cos
    - gf_sqrt
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_quat_from_rotation(GF_Vec4 rot)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_acos
      Src: /src/gpac/src/utils/math.c:2615,1
    - Dst: gf_quat_from_rotation
      Src: /src/gpac/src/utils/math.c:2616,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - axis
    - cos_a
    argTypes:
    - GF_Vec
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2617
      start: 2606
    functionDepth: 2
    functionLinenumber: 2606
    functionLinenumberEnd: 2617
    functionName: gf_quat_from_axis_cos
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached:
    - gf_quat_from_rotation
    - gf_acos
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_quat_from_axis_cos(GF_Vec axis, Fixed cos_a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - quat
    argTypes:
    - GF_Vec4*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2624
      start: 2619
    functionDepth: 0
    functionLinenumber: 2619
    functionLinenumberEnd: 2624
    functionName: gf_quat_conjugate
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_quat_conjugate(GF_Vec4 *quat)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_quat_conjugate
      Src: /src/gpac/src/utils/math.c:2630,1
    - Dst: gf_quat_norm
      Src: /src/gpac/src/utils/math.c:2631,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - quat
    argTypes:
    - GF_Vec4*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2633
      start: 2626
    functionDepth: 1
    functionLinenumber: 2626
    functionLinenumberEnd: 2633
    functionName: gf_quat_get_inv
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached:
    - gf_quat_norm
    - gf_quat_conjugate
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_quat_get_inv(GF_Vec4 *quat)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2640,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2640,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2640,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2640,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2641,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2641,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2641,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2641,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2642,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2642,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2642,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2642,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2643,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2643,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2643,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2643,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - q1
    - q2
    argTypes:
    - GF_Vec4*
    - GF_Vec4*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2645
      start: 2636
    functionDepth: 0
    functionLinenumber: 2636
    functionLinenumberEnd: 2645
    functionName: gf_quat_multiply
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 3
    functionsReached:
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_quat_multiply(GF_Vec4 *q1, GF_Vec4 *q2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_quat_get_inv
      Src: /src/gpac/src/utils/math.c:2656,1
    - Dst: gf_quat_multiply
      Src: /src/gpac/src/utils/math.c:2657,1
    - Dst: gf_quat_multiply
      Src: /src/gpac/src/utils/math.c:2658,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 2
    argNames:
    - quat
    - vec
    argTypes:
    - GF_Vec4*
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2663
      start: 2647
    functionDepth: 2
    functionLinenumber: 2647
    functionLinenumberEnd: 2663
    functionName: gf_quat_rotate
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached:
    - gf_quat_get_inv
    - gf_quat_multiply
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_quat_rotate(GF_Vec4 *quat, GF_Vec *vec)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2679,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2679,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2679,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2679,1
    - Dst: gf_acos
      Src: /src/gpac/src/utils/math.c:2695,1
    - Dst: gf_sin
      Src: /src/gpac/src/utils/math.c:2696,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2697,1
    - Dst: gf_sin
      Src: /src/gpac/src/utils/math.c:2697,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2697,1
    - Dst: gf_divfix
      Src: /src/gpac/src/utils/math.c:2698,1
    - Dst: gf_sin
      Src: /src/gpac/src/utils/math.c:2698,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2698,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2704,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2704,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2705,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2705,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2706,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2706,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2707,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/utils/math.c:2707,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 28
    argCount: 3
    argNames:
    - q1
    - q2
    - frac
    argTypes:
    - GF_Vec4
    - GF_Vec4
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2709
      start: 2673
    functionDepth: 0
    functionLinenumber: 2673
    functionLinenumberEnd: 2709
    functionName: gf_quat_slerp
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 2
    functionsReached:
    - gf_acos
    - gf_divfix
    - gf_sin
    - gf_mulfix
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_quat_slerp(GF_Vec4 q1, GF_Vec4 q2, Fixed frac)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_add
      Src: /src/gpac/src/utils/math.c:2717,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/utils/math.c:2718,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/utils/math.c:2719,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/utils/math.c:2720,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - b
    argTypes:
    - GF_BBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2722
      start: 2713
    functionDepth: 3
    functionLinenumber: 2713
    functionLinenumberEnd: 2722
    functionName: gf_bbox_refresh
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 19
    functionsReached:
    - gf_vec_diff
    - gf_vec_add
    - gf_vec_len
    - gf_vec_scale
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bbox_refresh(GF_BBox *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/utils/math.c:2733,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - box
    - rc
    argTypes:
    - GF_BBox*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2734
      start: 2724
    functionDepth: 4
    functionLinenumber: 2724
    functionLinenumberEnd: 2734
    functionName: gf_bbox_from_rect
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 9
    functionsReached:
    - gf_bbox_refresh
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bbox_from_rect(GF_BBox *box, GF_Rect *rc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - rc
    - box
    argTypes:
    - GF_Rect*
    - GF_BBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2743
      start: 2736
    functionDepth: 0
    functionLinenumber: 2736
    functionLinenumberEnd: 2743
    functionName: gf_rect_from_bbox
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rect_from_bbox(GF_Rect *rc, GF_BBox *box)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 2
    argNames:
    - box
    - pt
    argTypes:
    - GF_BBox*
    - GF_Vec
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2754
      start: 2745
    functionDepth: 0
    functionLinenumber: 2745
    functionLinenumberEnd: 2754
    functionName: gf_bbox_grow_point
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bbox_grow_point(GF_BBox *box, GF_Vec pt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bbox_grow_point
      Src: /src/gpac/src/utils/math.c:2763,1
    - Dst: gf_bbox_grow_point
      Src: /src/gpac/src/utils/math.c:2764,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/src/utils/math.c:2765,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - b1
    - b2
    argTypes:
    - GF_BBox*
    - GF_BBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2768
      start: 2756
    functionDepth: 4
    functionLinenumber: 2756
    functionLinenumberEnd: 2768
    functionName: gf_bbox_union
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached:
    - gf_bbox_grow_point
    - gf_bbox_refresh
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bbox_union(GF_BBox *b1, GF_BBox *b2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_equal
      Src: /src/gpac/src/utils/math.c:2773,1
    - Dst: gf_vec_equal
      Src: /src/gpac/src/utils/math.c:2773,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - b1
    - b2
    argTypes:
    - GF_BBox*
    - GF_BBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2774
      start: 2770
    functionDepth: 1
    functionLinenumber: 2770
    functionLinenumberEnd: 2774
    functionName: gf_bbox_equal
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached:
    - gf_vec_equal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bbox_equal(GF_BBox *b1, GF_BBox *b2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 2
    argNames:
    - box
    - p
    argTypes:
    - GF_BBox*
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2782
      start: 2776
    functionDepth: 0
    functionLinenumber: 2776
    functionLinenumberEnd: 2782
    functionName: gf_bbox_point_inside
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bbox_point_inside(GF_BBox *box, GF_Vec *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - bmin
    - bmax
    - vecs
    argTypes:
    - GF_Vec
    - GF_Vec
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2795
      start: 2786
    functionDepth: 0
    functionLinenumber: 2786
    functionLinenumberEnd: 2795
    functionName: gf_bbox_get_vertices
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bbox_get_vertices(GF_Vec bmin, GF_Vec bmax, GF_Vec *vecs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_scale
      Src: /src/gpac/src/utils/math.c:2803,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/utils/math.c:2804,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/utils/math.c:2805,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/utils/math.c:2806,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/utils/math.c:2807,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/utils/math.c:2808,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/utils/math.c:2809,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - mx
    - plane
    argTypes:
    - GF_Matrix*
    - GF_Plane*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2810
      start: 2798
    functionDepth: 4
    functionLinenumber: 2798
    functionLinenumberEnd: 2810
    functionName: gf_mx_apply_plane
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 4
    functionsReached:
    - gf_vec_dot
    - gf_vec_add
    - gf_vec_scale
    - gf_vec_diff
    - gf_vec_norm
    - gf_mx_apply_vec
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_apply_plane(GF_Matrix *mx, GF_Plane *plane)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_dot
      Src: /src/gpac/src/utils/math.c:2815,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - plane
    - p
    argTypes:
    - GF_Plane*
    - GF_Vec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2816
      start: 2812
    functionDepth: 3
    functionLinenumber: 2812
    functionLinenumberEnd: 2816
    functionName: gf_plane_get_distance
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 5
    functionsReached:
    - gf_vec_dot
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_plane_get_distance(GF_Plane *plane, GF_Vec *p)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_Plane*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2830
      start: 2820
    functionDepth: 0
    functionLinenumber: 2820
    functionLinenumberEnd: 2830
    functionName: gf_plane_get_p_vertex_idx
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_plane_get_p_vertex_idx(GF_Plane *p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_vec_dot
      Src: /src/gpac/src/utils/math.c:2851,1
    - Dst: gf_vec_dot
      Src: /src/gpac/src/utils/math.c:2852,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - box
    - p
    argTypes:
    - GF_BBox*
    - GF_Plane*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2854
      start: 2833
    functionDepth: 3
    functionLinenumber: 2833
    functionLinenumberEnd: 2854
    functionName: gf_bbox_plane_relation
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 2
    functionsReached:
    - gf_vec_dot
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_bbox_plane_relation(GF_BBox *box, GF_Plane *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2865
      start: 2857
    functionDepth: 0
    functionLinenumber: 2857
    functionLinenumberEnd: 2865
    functionName: gf_get_next_pow2
    functionSourceFile: /src/gpac/src/utils/math.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_get_next_pow2(u32 s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: bidi_get_class
      Src: /src/gpac/src/utils/uni_bidi.c:98,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 1
    argNames:
    - utf_string
    argTypes:
    - u16*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 115
    functionName: gf_utf8_is_right_to_left
    functionSourceFile: /src/gpac/src/utils/uni_bidi.c
    functionUses: 0
    functionsReached:
    - bidi_get_class
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_utf8_is_right_to_left(u16 *utf_string)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_utf8_is_right_to_left
      Src: /src/gpac/src/utils/uni_bidi.c:125,1
    - Dst: bidi_get_class
      Src: /src/gpac/src/utils/uni_bidi.c:142,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 60
    argCount: 2
    argNames:
    - utf_string
    - len
    argTypes:
    - u16*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 118
    functionDepth: 2
    functionLinenumber: 118
    functionLinenumberEnd: 195
    functionName: gf_utf8_reorder_bidi
    functionSourceFile: /src/gpac/src/utils/uni_bidi.c
    functionUses: 3
    functionsReached:
    - gf_utf8_is_right_to_left
    - bidi_get_class
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_utf8_reorder_bidi(u16 *utf_string, u32 len)
  - BBCount: 1292
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2068
    EdgeCount: 2068
    ICount: 2584
    argCount: 1
    argNames:
    - val
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1492
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 1492
    functionName: bidi_get_class
    functionSourceFile: /src/gpac/src/utils/uni_bidi.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int bidi_get_class(u32 val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: RAND_status
      Src: /src/gpac/src/utils/downloader_ssl.c:44,1
    - Dst: RAND_file_name
      Src: /src/gpac/src/utils/downloader_ssl.c:47,1
    - Dst: RAND_load_file
      Src: /src/gpac/src/utils/downloader_ssl.c:50,1
    - Dst: RAND_status
      Src: /src/gpac/src/utils/downloader_ssl.c:52,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 53
    functionName: init_prng
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 0
    functionsReached:
    - RAND_file_name
    - RAND_status
    - RAND_load_file
    linkageType: ''
    returnType: void
    signature: void init_prng (void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nghttp2_select_next_protocol
      Src: /src/gpac/src/utils/downloader_ssl.c:64,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:65,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 6
    argNames:
    - ssl
    - out
    - outlen
    - in
    - inlen
    - arg
    argTypes:
    - SSL*
    - unsigned char**
    - unsigned char*
    - unsigned char*
    - unsigned int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 69
    functionName: ssl_select_next_proto_cb
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 0
    functionsReached:
    - nghttp2_select_next_protocol
    - GF_LOG
    linkageType: ''
    returnType: int
    signature: "int ssl_select_next_proto_cb(SSL *ssl , unsigned char **out,\n                                unsigned
      char *outlen, const unsigned char *in,\n                                unsigned
      int inlen, void *arg)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:82,1
    - Dst: init_prng
      Src: /src/gpac/src/utils/downloader_ssl.c:83,1
    - Dst: RAND_status
      Src: /src/gpac/src/utils/downloader_ssl.c:84,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:85,1
    - Dst: SSL_library_init
      Src: /src/gpac/src/utils/downloader_ssl.c:94,1
    - Dst: SSL_load_error_strings
      Src: /src/gpac/src/utils/downloader_ssl.c:95,1
    - Dst: SSLeay_add_all_algorithms
      Src: /src/gpac/src/utils/downloader_ssl.c:96,1
    - Dst: SSLeay_add_ssl_algorithms
      Src: /src/gpac/src/utils/downloader_ssl.c:97,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:101,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 103
    functionName: gf_ssl_init_lib
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 0
    functionsReached:
    - SSLeay_add_all_algorithms
    - GF_LOG
    - RAND_status
    - SSLeay_add_ssl_algorithms
    - SSL_library_init
    - SSL_load_error_strings
    - init_prng
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ssl_init_lib()
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - type
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 118
    functionName: tls_rt_get_name
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *tls_rt_get_name(int type)
  - BBCount: 30
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 64
    argCount: 2
    argNames:
    - version
    - msg
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 179
    functionName: ssl_msg_get_name
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *ssl_msg_get_name(int version, int msg)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/gpac/src/utils/downloader_ssl.c:212,1
    - Dst: tls_rt_get_name
      Src: /src/gpac/src/utils/downloader_ssl.c:218,1
    - Dst: SSL_alert_desc_string_long
      Src: /src/gpac/src/utils/downloader_ssl.c:227,1
    - Dst: ssl_msg_get_name
      Src: /src/gpac/src/utils/downloader_ssl.c:230,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:232,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 47
    argCount: 7
    argNames:
    - write_p
    - version
    - content_type
    - buf
    - len
    - ssl
    - udat
    argTypes:
    - int
    - int
    - int
    - void*
    - size_t
    - SSL*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 233
    functionName: ssl_on_log
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 0
    functionsReached:
    - tls_rt_get_name
    - SSL_alert_desc_string_long
    - snprintf
    - GF_LOG
    - ssl_msg_get_name
    linkageType: ''
    returnType: void
    signature: void ssl_on_log(int write_p, int version, int content_type, const void
      *buf, size_t len, SSL *ssl, void *udat)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_ssl.c:247,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_ssl.c:250,1
    - Dst: gf_ssl_init_lib
      Src: /src/gpac/src/utils/downloader_ssl.c:254,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:255,1
    - Dst: SSLv23_client_method
      Src: /src/gpac/src/utils/downloader_ssl.c:260,1
    - Dst: TLS_client_method
      Src: /src/gpac/src/utils/downloader_ssl.c:262,1
    - Dst: SSL_CTX_new
      Src: /src/gpac/src/utils/downloader_ssl.c:265,1
    - Dst: SSL_CTX_set_options
      Src: /src/gpac/src/utils/downloader_ssl.c:267,1
    - Dst: SSL_CTX_set_default_verify_paths
      Src: /src/gpac/src/utils/downloader_ssl.c:268,1
    - Dst: SSL_CTX_load_verify_locations
      Src: /src/gpac/src/utils/downloader_ssl.c:269,1
    - Dst: SSL_CTX_set_verify
      Src: /src/gpac/src/utils/downloader_ssl.c:274,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader_ssl.c:276,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/downloader_ssl.c:278,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/downloader_ssl.c:280,1
    - Dst: SSL_CTX_load_verify_locations
      Src: /src/gpac/src/utils/downloader_ssl.c:281,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:282,1
    - Dst: X509_get_default_cert_file_env
      Src: /src/gpac/src/utils/downloader_ssl.c:285,1
    - Dst: getenv
      Src: /src/gpac/src/utils/downloader_ssl.c:286,1
    - Dst: X509_get_default_cert_file
      Src: /src/gpac/src/utils/downloader_ssl.c:288,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:290,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/downloader_ssl.c:292,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/downloader_ssl.c:294,1
    - Dst: SSL_CTX_load_verify_locations
      Src: /src/gpac/src/utils/downloader_ssl.c:297,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:298,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/utils/downloader_ssl.c:305,1
    - Dst: SSL_CTX_set_msg_callback
      Src: /src/gpac/src/utils/downloader_ssl.c:306,1
    - Dst: strcat
      Src: /src/gpac/src/utils/downloader_ssl.c:314,1
    - Dst: ngtcp2_crypto_quictls_configure_client_context
      Src: /src/gpac/src/utils/downloader_ssl.c:321,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:322,1
    - Dst: strcat
      Src: /src/gpac/src/utils/downloader_ssl.c:325,1
    - Dst: SSL_CTX_set_next_proto_select_cb
      Src: /src/gpac/src/utils/downloader_ssl.c:331,1
    - Dst: SSL_CTX_set_alpn_protos
      Src: /src/gpac/src/utils/downloader_ssl.c:333,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_ssl.c:333,1
    - Dst: SSL_CTX_set_mode
      Src: /src/gpac/src/utils/downloader_ssl.c:339,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_ssl.c:340,1
    - Dst: SSL_CTX_free
      Src: /src/gpac/src/utils/downloader_ssl.c:343,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_ssl.c:345,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 69
    argCount: 2
    argNames:
    - dm
    - no_quic
    argTypes:
    - GF_DownloadManager*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 238
    functionDepth: 2
    functionLinenumber: 238
    functionLinenumberEnd: 347
    functionName: gf_dm_ssl_init
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 0
    functionsReached:
    - X509_get_default_cert_file
    - gf_file_exists
    - gf_log_tool_level_on
    - gf_ssl_init_lib
    - gf_opts_get_key
    - strcat
    - SSL_CTX_load_verify_locations
    - SSL_CTX_set_verify
    - SSL_CTX_set_default_verify_paths
    - SSL_CTX_set_alpn_protos
    - SSL_CTX_set_msg_callback
    - getenv
    - SSLv23_client_method
    - gf_mx_p
    - GF_LOG
    - gf_mx_v
    - SSL_CTX_set_next_proto_select_cb
    - TLS_client_method
    - SSL_CTX_new
    - strlen
    - SSL_CTX_set_options
    - X509_get_default_cert_file_env
    - SSL_CTX_free
    - SSL_CTX_set_mode
    - ngtcp2_crypto_quictls_configure_client_context
    - gf_opts_get_bool
    linkageType: ''
    returnType: void
    signature: void *gf_dm_ssl_init(GF_DownloadManager *dm, Bool no_quic)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ssl
    - data
    - len
    - arg
    argTypes:
    - SSL*
    - unsigned char**
    - unsigned int*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 359
    functionDepth: 0
    functionLinenumber: 359
    functionLinenumberEnd: 366
    functionName: next_proto_cb
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int next_proto_cb(SSL *ssl, const unsigned char **data, unsigned int
      *len, void *arg)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: SSL_get_app_data
      Src: /src/gpac/src/utils/downloader_ssl.c:374,1
    - Dst: ngtcp2_conn_get_client_chosen_version
      Src: /src/gpac/src/utils/downloader_ssl.c:380,1
    - Dst: ngtcp2_crypto_conn_ref*::get_conn
      Src: /src/gpac/src/utils/downloader_ssl.c:380,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:389,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/downloader_ssl.c:394,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:400,1
    - Dst: nghttp2_select_next_protocol
      Src: /src/gpac/src/utils/downloader_ssl.c:407,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 6
    argNames:
    - ssl
    - out
    - outlen
    - in
    - inlen
    - arg
    argTypes:
    - SSL*
    - unsigned char**
    - unsigned char*
    - unsigned char*
    - unsigned int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 370
    functionDepth: 1
    functionLinenumber: 370
    functionLinenumberEnd: 412
    functionName: alpn_select_proto_cb
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - ngtcp2_crypto_conn_ref*::get_conn
    - SSL_get_app_data
    - strncmp
    - nghttp2_select_next_protocol
    - ngtcp2_conn_get_client_chosen_version
    linkageType: ''
    returnType: int
    signature: int alpn_select_proto_cb(SSL *ssl, const unsigned char **out, unsigned
      char *outlen, const unsigned char *in, unsigned int inlen, void *arg)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SSL_get_app_data
      Src: /src/gpac/src/utils/downloader_ssl.c:422,1
    - Dst: htonl
      Src: /src/gpac/src/utils/downloader_ssl.c:424,1
    - Dst: ngtcp2_conn_get_negotiated_version
      Src: /src/gpac/src/utils/downloader_ssl.c:424,1
    - Dst: ngtcp2_crypto_conn_ref*::get_conn
      Src: /src/gpac/src/utils/downloader_ssl.c:424,1
    - Dst: SSL_SESSION_set1_ticket_appdata
      Src: /src/gpac/src/utils/downloader_ssl.c:425,1
    - Dst: SSL_get0_session
      Src: /src/gpac/src/utils/downloader_ssl.c:425,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ssl
    - arg
    argTypes:
    - SSL*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 420
    functionDepth: 0
    functionLinenumber: 420
    functionLinenumberEnd: 429
    functionName: ngq_gen_ticket_cb
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 0
    functionsReached:
    - htonl
    - SSL_SESSION_set1_ticket_appdata
    - ngtcp2_crypto_conn_ref*::get_conn
    - SSL_get_app_data
    - SSL_get0_session
    - ngtcp2_conn_get_negotiated_version
    linkageType: ''
    returnType: int
    signature: int ngq_gen_ticket_cb(SSL *ssl, void *arg)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: SSL_SESSION_get0_ticket_appdata
      Src: /src/gpac/src/utils/downloader_ssl.c:443,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_ssl.c:452,1
    - Dst: SSL_get_app_data
      Src: /src/gpac/src/utils/downloader_ssl.c:453,1
    - Dst: ngtcp2_conn_get_client_chosen_version
      Src: /src/gpac/src/utils/downloader_ssl.c:456,1
    - Dst: ngtcp2_crypto_conn_ref*::get_conn
      Src: /src/gpac/src/utils/downloader_ssl.c:456,1
    - Dst: ntohl
      Src: /src/gpac/src/utils/downloader_ssl.c:456,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 6
    argNames:
    - ssl
    - session
    - keyname
    - keynamelen
    - status
    - arg
    argTypes:
    - SSL*
    - SSL_SESSION*
    - unsigned char*
    - size_t
    - SSL_TICKET_STATUS
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 431
    functionDepth: 0
    functionLinenumber: 431
    functionLinenumberEnd: 472
    functionName: ngq_decrypt_ticket_cb
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 0
    functionsReached:
    - memcpy
    - ngtcp2_crypto_conn_ref*::get_conn
    - SSL_get_app_data
    - SSL_SESSION_get0_ticket_appdata
    - ngtcp2_conn_get_client_chosen_version
    - ntohl
    linkageType: ''
    returnType: SSL_TICKET_RETURN
    signature: SSL_TICKET_RETURN ngq_decrypt_ticket_cb(SSL *ssl, SSL_SESSION *session,
      const unsigned char *keyname, size_t keynamelen, SSL_TICKET_STATUS status, void
      *arg)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: SSLv23_server_method
      Src: /src/gpac/src/utils/downloader_ssl.c:481,1
    - Dst: TLS_server_method
      Src: /src/gpac/src/utils/downloader_ssl.c:485,1
    - Dst: SSL_CTX_new
      Src: /src/gpac/src/utils/downloader_ssl.c:491,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:493,1
    - Dst: ERR_print_errors_fp
      Src: /src/gpac/src/utils/downloader_ssl.c:494,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/utils/downloader_ssl.c:499,1
    - Dst: SSL_CTX_set_msg_callback
      Src: /src/gpac/src/utils/downloader_ssl.c:500,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader_ssl.c:506,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_ssl.c:508,1
    - Dst: ngtcp2_crypto_quictls_configure_server_context
      Src: /src/gpac/src/utils/downloader_ssl.c:516,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_ssl.c:519,1
    - Dst: SSL_CTX_set_max_early_data
      Src: /src/gpac/src/utils/downloader_ssl.c:522,1
    - Dst: SSL_CTX_set_options
      Src: /src/gpac/src/utils/downloader_ssl.c:531,1
    - Dst: SSL_CTX_set_mode
      Src: /src/gpac/src/utils/downloader_ssl.c:533,1
    - Dst: SSL_CTX_set_session_ticket_cb
      Src: /src/gpac/src/utils/downloader_ssl.c:536,1
    - Dst: SSL_CTX_set_ciphersuites
      Src: /src/gpac/src/utils/downloader_ssl.c:539,1
    - Dst: SSL_CTX_set1_groups_list
      Src: /src/gpac/src/utils/downloader_ssl.c:540,1
    - Dst: SSL_CTX_set_next_protos_advertised_cb
      Src: /src/gpac/src/utils/downloader_ssl.c:549,1
    - Dst: SSL_CTX_set_alpn_select_cb
      Src: /src/gpac/src/utils/downloader_ssl.c:551,1
    - Dst: SSL_CTX_set_default_verify_paths
      Src: /src/gpac/src/utils/downloader_ssl.c:556,1
    - Dst: SSL_CTX_set_ecdh_auto
      Src: /src/gpac/src/utils/downloader_ssl.c:557,1
    - Dst: SSL_CTX_use_certificate_chain_file
      Src: /src/gpac/src/utils/downloader_ssl.c:560,1
    - Dst: ERR_print_errors_fp
      Src: /src/gpac/src/utils/downloader_ssl.c:561,1
    - Dst: SSL_CTX_free
      Src: /src/gpac/src/utils/downloader_ssl.c:562,1
    - Dst: SSL_CTX_use_PrivateKey_file
      Src: /src/gpac/src/utils/downloader_ssl.c:565,1
    - Dst: ERR_print_errors_fp
      Src: /src/gpac/src/utils/downloader_ssl.c:566,1
    - Dst: SSL_CTX_free
      Src: /src/gpac/src/utils/downloader_ssl.c:567,1
    - Dst: SSL_CTX_check_private_key
      Src: /src/gpac/src/utils/downloader_ssl.c:570,1
    - Dst: ERR_print_errors_fp
      Src: /src/gpac/src/utils/downloader_ssl.c:571,1
    - Dst: SSL_CTX_free
      Src: /src/gpac/src/utils/downloader_ssl.c:572,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 55
    argCount: 3
    argNames:
    - cert
    - key
    - for_quic
    argTypes:
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 476
    functionDepth: 2
    functionLinenumber: 476
    functionLinenumberEnd: 577
    functionName: gf_ssl_server_context_new
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 0
    functionsReached:
    - gf_log_tool_level_on
    - SSL_CTX_set_session_ticket_cb
    - SSL_CTX_set_next_protos_advertised_cb
    - SSL_CTX_set_ciphersuites
    - memcpy
    - SSL_CTX_set_alpn_select_cb
    - SSLv23_server_method
    - SSL_CTX_set_default_verify_paths
    - SSL_CTX_set_max_early_data
    - SSL_CTX_set_msg_callback
    - SSL_CTX_set_ecdh_auto
    - GF_LOG
    - ngtcp2_crypto_quictls_configure_server_context
    - SSL_CTX_new
    - SSL_CTX_set_options
    - SSL_CTX_use_PrivateKey_file
    - SSL_CTX_free
    - SSL_CTX_set_mode
    - SSL_CTX_set1_groups_list
    - ERR_print_errors_fp
    - SSL_CTX_use_certificate_chain_file
    - TLS_server_method
    - gf_opts_get_bool
    - SSL_CTX_check_private_key
    linkageType: ''
    returnType: void
    signature: void *gf_ssl_server_context_new(const char *cert, const char *key,
      Bool for_quic)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SSL_CTX_free
      Src: /src/gpac/src/utils/downloader_ssl.c:581,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ssl_ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 582
    functionName: gf_ssl_server_context_del
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 0
    functionsReached:
    - SSL_CTX_free
    linkageType: ''
    returnType: void
    signature: void gf_ssl_server_context_del(void *ssl_ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: SSL_new
      Src: /src/gpac/src/utils/downloader_ssl.c:586,1
    - Dst: SSL_set_fd
      Src: /src/gpac/src/utils/downloader_ssl.c:591,1
    - Dst: gf_sk_get_handle
      Src: /src/gpac/src/utils/downloader_ssl.c:591,1
    - Dst: SSL_accept
      Src: /src/gpac/src/utils/downloader_ssl.c:592,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/utils/downloader_ssl.c:593,1
    - Dst: ERR_print_errors_fp
      Src: /src/gpac/src/utils/downloader_ssl.c:595,1
    - Dst: ERR_print_errors_fp
      Src: /src/gpac/src/utils/downloader_ssl.c:597,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:598,1
    - Dst: SSL_shutdown
      Src: /src/gpac/src/utils/downloader_ssl.c:600,1
    - Dst: SSL_free
      Src: /src/gpac/src/utils/downloader_ssl.c:601,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 3
    argNames:
    - ssl_ctx
    - client_sock
    - e
    argTypes:
    - void*
    - GF_Socket*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 583
    functionDepth: 2
    functionLinenumber: 583
    functionLinenumberEnd: 607
    functionName: gf_ssl_new
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 1
    functionsReached:
    - SSL_new
    - gf_log_tool_level_on
    - GF_LOG
    - SSL_free
    - gf_sk_get_handle
    - ERR_print_errors_fp
    - SSL_accept
    - SSL_set_fd
    - SSL_shutdown
    linkageType: ''
    returnType: void
    signature: void *gf_ssl_new(void *ssl_ctx, GF_Socket *client_sock, GF_Err *e)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SSL_free
      Src: /src/gpac/src/utils/downloader_ssl.c:610,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ssl
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 611
      start: 608
    functionDepth: 0
    functionLinenumber: 608
    functionLinenumberEnd: 611
    functionName: gf_ssl_del
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 2
    functionsReached:
    - SSL_free
    linkageType: ''
    returnType: void
    signature: void gf_ssl_del(void *ssl)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SSL_get_verify_result
      Src: /src/gpac/src/utils/downloader_ssl.c:615,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader_ssl.c:620,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:624,1
    - Dst: ERR_error_string
      Src: /src/gpac/src/utils/downloader_ssl.c:624,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ssl
    - server_name
    argTypes:
    - SSL*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 613
    functionDepth: 1
    functionLinenumber: 613
    functionLinenumberEnd: 628
    functionName: gf_ssl_check_cert
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - SSL_get_verify_result
    - gf_opts_get_bool
    - ERR_error_string
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ssl_check_cert(SSL *ssl, const char *server_name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: SSL_write
      Src: /src/gpac/src/utils/downloader_ssl.c:640,1
    - Dst: SSL_get_error
      Src: /src/gpac/src/utils/downloader_ssl.c:646,1
    - Dst: SSL_load_error_strings
      Src: /src/gpac/src/utils/downloader_ssl.c:652,1
    - Dst: ERR_error_string_n
      Src: /src/gpac/src/utils/downloader_ssl.c:653,1
    - Dst: ERR_get_error
      Src: /src/gpac/src/utils/downloader_ssl.c:653,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:655,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 4
    argNames:
    - sess
    - buffer
    - size
    - written
    argTypes:
    - GF_DownloadSession*
    - u8*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 663
      start: 630
    functionDepth: 1
    functionLinenumber: 630
    functionLinenumberEnd: 663
    functionName: gf_ssl_write
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 1
    functionsReached:
    - ERR_error_string_n
    - ERR_get_error
    - SSL_write
    - GF_LOG
    - SSL_load_error_strings
    - SSL_get_error
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ssl_write(GF_DownloadSession *sess, const u8 *buffer, u32
      size, u32 *written)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_ssl.c:707,1
    - Dst: SSL_set_mode
      Src: /src/gpac/src/utils/downloader_ssl.c:709,1
    - Dst: SSL_get0_next_proto_negotiated
      Src: /src/gpac/src/utils/downloader_ssl.c:714,1
    - Dst: SSL_get0_alpn_selected
      Src: /src/gpac/src/utils/downloader_ssl.c:717,1
    - Dst: memcmp
      Src: /src/gpac/src/utils/downloader_ssl.c:721,1
    - Dst: h2_initialize_session
      Src: /src/gpac/src/utils/downloader_ssl.c:722,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 726
      start: 705
    functionDepth: 3
    functionLinenumber: 705
    functionLinenumberEnd: 726
    functionName: gf_dm_sess_server_setup_ssl
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 1
    functionsReached:
    - SSL_get0_alpn_selected
    - gf_assert
    - memcmp
    - SSL_get0_next_proto_negotiated
    - SSL_set_mode
    - h2_initialize_session
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_server_setup_ssl(GF_DownloadSession *sess)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader_ssl.c:730,1
    - Dst: gf_dm_ssl_init
      Src: /src/gpac/src/utils/downloader_ssl.c:732,1
    - Dst: SSL_new
      Src: /src/gpac/src/utils/downloader_ssl.c:741,1
    - Dst: SSL_set_fd
      Src: /src/gpac/src/utils/downloader_ssl.c:742,1
    - Dst: gf_sk_get_handle
      Src: /src/gpac/src/utils/downloader_ssl.c:742,1
    - Dst: SSL_ctrl
      Src: /src/gpac/src/utils/downloader_ssl.c:743,1
    - Dst: SSL_set_connect_state
      Src: /src/gpac/src/utils/downloader_ssl.c:744,1
    - Dst: SSL_set_mode
      Src: /src/gpac/src/utils/downloader_ssl.c:747,1
    - Dst: SSL_set_alpn_protos
      Src: /src/gpac/src/utils/downloader_ssl.c:751,1
    - Dst: SSL_set_alpn_protos
      Src: /src/gpac/src/utils/downloader_ssl.c:756,1
    - Dst: SSL_set_quic_method
      Src: /src/gpac/src/utils/downloader_ssl.c:763,1
    - Dst: SSL_connect
      Src: /src/gpac/src/utils/downloader_ssl.c:771,1
    - Dst: SSL_get_error
      Src: /src/gpac/src/utils/downloader_ssl.c:773,1
    - Dst: SSL_free
      Src: /src/gpac/src/utils/downloader_ssl.c:779,1
    - Dst: dm_sess_sk_del
      Src: /src/gpac/src/utils/downloader_ssl.c:781,1
    - Dst: SSL_load_error_strings
      Src: /src/gpac/src/utils/downloader_ssl.c:789,1
    - Dst: ERR_error_string_n
      Src: /src/gpac/src/utils/downloader_ssl.c:790,1
    - Dst: ERR_get_error
      Src: /src/gpac/src/utils/downloader_ssl.c:790,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:792,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:794,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_ssl.c:796,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:803,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_ssl.c:804,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:807,1
    - Dst: SSL_get0_next_proto_negotiated
      Src: /src/gpac/src/utils/downloader_ssl.c:814,1
    - Dst: SSL_get0_alpn_selected
      Src: /src/gpac/src/utils/downloader_ssl.c:817,1
    - Dst: memcmp
      Src: /src/gpac/src/utils/downloader_ssl.c:820,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:821,1
    - Dst: h2_initialize_session
      Src: /src/gpac/src/utils/downloader_ssl.c:825,1
    - Dst: gf_ssl_check_cert
      Src: /src/gpac/src/utils/downloader_ssl.c:831,1
    - Dst: gf_dm_disconnect
      Src: /src/gpac/src/utils/downloader_ssl.c:833,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_ssl.c:835,1
    - Dst: gf_dm_sess_notify_state
      Src: /src/gpac/src/utils/downloader_ssl.c:836,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader_ssl.c:839,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 79
    argCount: 2
    argNames:
    - sess
    - proxy
    argTypes:
    - GF_DownloadSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 841
      start: 728
    functionDepth: 3
    functionLinenumber: 728
    functionLinenumberEnd: 841
    functionName: gf_ssl_try_connect
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 1
    functionsReached:
    - ERR_get_error
    - SET_LAST_ERR
    - memcmp
    - gf_dm_disconnect
    - SSL_get0_next_proto_negotiated
    - gf_sk_get_handle
    - SSL_set_alpn_protos
    - dm_sess_sk_del
    - SSL_new
    - SSL_set_connect_state
    - SSL_free
    - SSL_ctrl
    - ERR_error_string_n
    - SSL_get0_alpn_selected
    - SSL_set_quic_method
    - GF_LOG
    - SSL_connect
    - gf_dm_ssl_init
    - gf_dm_sess_notify_state
    - SSL_get_error
    - SSL_set_mode
    - gf_sys_clock_high_res
    - h2_initialize_session
    - gf_ssl_check_cert
    - SSL_set_fd
    - SSL_load_error_strings
    linkageType: ''
    returnType: SSLConnectStatus
    signature: SSLConnectStatus gf_ssl_try_connect(GF_DownloadSession *sess, const
      char *proxy)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader_ssl.c:859,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader_ssl.c:860,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/utils/downloader_ssl.c:862,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_ssl.c:862,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ssl.c:863,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/downloader_ssl.c:865,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_ssl.c:870,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/downloader_ssl.c:873,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:875,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/downloader_ssl.c:879,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:882,1
    - Dst: gf_fread
      Src: /src/gpac/src/utils/downloader_ssl.c:885,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/downloader_ssl.c:886,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:888,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/utils/downloader_ssl.c:892,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/utils/downloader_ssl.c:893,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/downloader_ssl.c:894,1
    - Dst: gf_crypt_encrypt
      Src: /src/gpac/src/utils/downloader_ssl.c:895,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/utils/downloader_ssl.c:896,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader_ssl.c:898,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader_ssl.c:899,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/downloader_ssl.c:900,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ssl.c:901,1
    - Dst: gf_opts_save
      Src: /src/gpac/src/utils/downloader_ssl.c:902,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 38
    argCount: 4
    argNames:
    - dm
    - creds
    - password
    - store_info
    argTypes:
    - GF_DownloadManager*
    - GF_UserCredentials*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 906
      start: 853
    functionDepth: 2
    functionLinenumber: 853
    functionLinenumberEnd: 906
    functionName: gf_user_credentials_save_digest
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_opts_set_key
    - GF_LOG
    - strcpy
    - gf_fread
    - gf_crypt_init
    - gf_base64_encode
    - gf_fopen
    - gf_opts_get_key
    - gf_crypt_encrypt
    - gf_crypt_open
    - gf_crypt_close
    - gf_dynstrcat
    - gf_opts_save
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_user_credentials_save_digest( GF_DownloadManager * dm, GF_UserCredentials
      * creds, const char * password, Bool store_info)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_ssl.c:914,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_ssl.c:916,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_ssl.c:918,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader_ssl.c:919,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader_ssl.c:922,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/downloader_ssl.c:927,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/downloader_ssl.c:930,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/downloader_ssl.c:932,1
    - Dst: gf_fread
      Src: /src/gpac/src/utils/downloader_ssl.c:934,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/downloader_ssl.c:935,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/downloader_ssl.c:940,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader_ssl.c:943,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/downloader_ssl.c:947,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/downloader_ssl.c:948,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/utils/downloader_ssl.c:951,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/utils/downloader_ssl.c:952,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/utils/downloader_ssl.c:953,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_ssl.c:953,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/utils/downloader_ssl.c:954,1
    - Dst: gf_user_credentials_save_digest
      Src: /src/gpac/src/utils/downloader_ssl.c:955,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 37
    argCount: 3
    argNames:
    - dm
    - server_name
    - user_name
    argTypes:
    - GF_DownloadManager*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 961
      start: 910
    functionDepth: 3
    functionLinenumber: 910
    functionLinenumberEnd: 961
    functionName: gf_user_credentials_find_for_site
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_list_get
    - strrchr
    - GF_SAFEALLOC
    - gf_fread
    - strcpy
    - gf_crypt_init
    - gf_user_credentials_save_digest
    - gf_list_count
    - strcmp
    - gf_opts_get_key
    - gf_fopen
    - gf_crypt_open
    - gf_crypt_close
    - strlen
    - gf_crypt_decrypt
    linkageType: ''
    returnType: GF_UserCredentials
    signature: GF_UserCredentials * gf_user_credentials_find_for_site(GF_DownloadManager
      *dm, const char *server_name, const char *user_name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_ssl.c:968,1
    - Dst: strncpy
      Src: /src/gpac/src/utils/downloader_ssl.c:971,1
    - Dst: gf_user_credentials_save_digest
      Src: /src/gpac/src/utils/downloader_ssl.c:975,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 4
    argNames:
    - udta
    - user
    - pass
    - store_info
    argTypes:
    - void*
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 964
    functionDepth: 3
    functionLinenumber: 964
    functionLinenumberEnd: 983
    functionName: on_user_pass
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 0
    functionsReached:
    - strncpy
    - strlen
    - gf_user_credentials_save_digest
    linkageType: ''
    returnType: void
    signature: void on_user_pass(void *udta, const char *user, const char *pass, Bool
      store_info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/utils/downloader_ssl.c:997,1
    - Dst: GF_DownloadManager*::get_user_password
      Src: /src/gpac/src/utils/downloader_ssl.c:1000,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - dm
    - creds
    - secure
    argTypes:
    - GF_DownloadManager*
    - GF_UserCredentials*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1005
      start: 992
    functionDepth: 0
    functionLinenumber: 992
    functionLinenumberEnd: 1005
    functionName: gf_user_credentials_ask_password
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 0
    functionsReached:
    - memset
    - GF_DownloadManager*::get_user_password
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_user_credentials_ask_password( GF_DownloadManager * dm, GF_UserCredentials
      * creds, Bool secure)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_ssl.c:1012,1
    - Dst: gf_user_credentials_find_for_site
      Src: /src/gpac/src/utils/downloader_ssl.c:1013,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader_ssl.c:1016,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/utils/downloader_ssl.c:1019,1
    - Dst: strncpy
      Src: /src/gpac/src/utils/downloader_ssl.c:1023,1
    - Dst: strncpy
      Src: /src/gpac/src/utils/downloader_ssl.c:1028,1
    - Dst: gf_user_credentials_save_digest
      Src: /src/gpac/src/utils/downloader_ssl.c:1031,1
    - Dst: gf_user_credentials_ask_password
      Src: /src/gpac/src/utils/downloader_ssl.c:1033,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:1034,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/downloader_ssl.c:1036,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ssl.c:1037,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 6
    argNames:
    - dm
    - secure
    - server_name
    - username
    - password
    - valid
    argTypes:
    - GF_DownloadManager*
    - Bool
    - char*
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1042
      start: 1007
    functionDepth: 4
    functionLinenumber: 1007
    functionLinenumberEnd: 1042
    functionName: gf_user_credentials_register
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 1
    functionsReached:
    - gf_list_insert
    - gf_free
    - gf_assert
    - GF_SAFEALLOC
    - gf_user_credentials_find_for_site
    - GF_LOG
    - gf_user_credentials_save_digest
    - strncpy
    - gf_list_del_item
    - gf_user_credentials_ask_password
    linkageType: ''
    returnType: GF_UserCredentials
    signature: GF_UserCredentials * gf_user_credentials_register(GF_DownloadManager
      * dm, Bool secure, const char * server_name, const char * username, const char
      * password, Bool valid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 96
    functionName: closesocket
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: closesocket(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gettimeofday
      Src: /src/gpac/src/utils/symbian_net.cpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - sec
    - frac
    argTypes:
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 149
    functionName: gf_net_get_ntp
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 18
    functionsReached:
    - gettimeofday
    linkageType: ''
    returnType: void
    signature: void gf_net_get_ntp(u32 *sec, u32 *frac)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: WSAStartup
      Src: /src/gpac/src/utils/symbian_net.cpp:159,1
    - Dst: socket
      Src: /src/gpac/src/utils/symbian_net.cpp:165,1
    - Dst: closesocket
      Src: /src/gpac/src/utils/symbian_net.cpp:169,1
    - Dst: WSACleanup
      Src: /src/gpac/src/utils/symbian_net.cpp:172,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 179
    functionName: gf_net_has_ipv6
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 1
    functionsReached:
    - closesocket
    - socket
    - WSACleanup
    - WSAStartup
    linkageType: ''
    returnType: u32
    signature: u32 gf_net_has_ipv6()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/utils/symbian_net.cpp:189,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/symbian_net.cpp:195,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:199,1
    - Dst: strlen
      Src: /src/gpac/src/utils/symbian_net.cpp:201,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:202,1
    - Dst: getaddrinfo
      Src: /src/gpac/src/utils/symbian_net.cpp:206,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 5
    argNames:
    - PeerName
    - PortNumber
    - family
    - flags
    - sock_type
    argTypes:
    - char*
    - u16
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 208
    functionName: gf_sk_get_ipv6_addr
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 6
    functionsReached:
    - strcpy
    - sprintf
    - memset
    - getaddrinfo
    - strlen
    linkageType: ''
    returnType: struct addrinfo
    signature: struct addrinfo *gf_sk_get_ipv6_addr(char *PeerName, u16 PortNumber,
      int family, int flags, int sock_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/symbian_net.cpp:212,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:214,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/symbian_net.cpp:216,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - sock
    - address
    - PortNumber
    argTypes:
    - GF_Socket*
    - char*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 218
    functionName: gf_sk_ipv6_set_remote_address
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 0
    functionsReached:
    - gf_sk_get_ipv6_addr
    - memcpy
    - freeaddrinfo
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sk_ipv6_set_remote_address(GF_Socket *sock, char *address,
      u16 PortNumber)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gethostname
      Src: /src/gpac/src/utils/symbian_net.cpp:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 226
    functionName: gf_sk_get_host_name
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 2
    functionsReached:
    - gethostname
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_get_host_name(char *buffer)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: getsockname
      Src: /src/gpac/src/utils/symbian_net.cpp:234,1
    - Dst: getnameinfo
      Src: /src/gpac/src/utils/symbian_net.cpp:236,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:238,1
    - Dst: getsockname
      Src: /src/gpac/src/utils/symbian_net.cpp:243,1
    - Dst: inet_ntoa
      Src: /src/gpac/src/utils/symbian_net.cpp:244,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:246,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - sock
    - buffer
    argTypes:
    - GF_Socket*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 249
    functionName: gf_sk_get_local_ip
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 2
    functionsReached:
    - strcpy
    - inet_ntoa
    - getnameinfo
    - getsockname
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_get_local_ip(GF_Socket *sock, char *buffer)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: WSAStartup
      Src: /src/gpac/src/utils/symbian_net.cpp:258,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/symbian_net.cpp:262,1
    - Dst: memset
      Src: /src/gpac/src/utils/symbian_net.cpp:267,1
    - Dst: memset
      Src: /src/gpac/src/utils/symbian_net.cpp:269,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 1
    argNames:
    - SocketType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 277
    functionName: gf_sk_new
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 9
    functionsReached:
    - memset
    - GF_SAFEALLOC
    - WSAStartup
    linkageType: ''
    returnType: GF_Socket
    signature: GF_Socket *gf_sk_new(u32 SocketType)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:284,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:286,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - sock
    - SendBuffer
    - NewSize
    argTypes:
    - GF_Socket*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 289
    functionName: gf_sk_set_buffer_size
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 7
    functionsReached:
    - setsockopt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_set_buffer_size(GF_Socket *sock, Bool SendBuffer, u32
      NewSize)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ioctlsocket
      Src: /src/gpac/src/utils/symbian_net.cpp:296,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - sock
    - NonBlockingOn
    argTypes:
    - GF_Socket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 291
    functionDepth: 0
    functionLinenumber: 291
    functionLinenumberEnd: 309
    functionName: gf_sk_set_block_mode
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 12
    functionsReached:
    - ioctlsocket
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_set_block_mode(GF_Socket *sock, u32 NonBlockingOn)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:321,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:323,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:327,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:332,1
    - Dst: closesocket
      Src: /src/gpac/src/utils/symbian_net.cpp:335,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - sock
    argTypes:
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 312
    functionDepth: 0
    functionLinenumber: 312
    functionLinenumberEnd: 337
    functionName: gf_sk_gf_free
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 0
    functionsReached:
    - memcpy
    - setsockopt
    - closesocket
    linkageType: ''
    returnType: void
    signature: void gf_sk_gf_free(GF_Socket *sock)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_gf_free
      Src: /src/gpac/src/utils/symbian_net.cpp:341,1
    - Dst: WSACleanup
      Src: /src/gpac/src/utils/symbian_net.cpp:344,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/symbian_net.cpp:346,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - sock
    argTypes:
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 339
    functionDepth: 1
    functionLinenumber: 339
    functionLinenumberEnd: 347
    functionName: gf_sk_del
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 24
    functionsReached:
    - gf_free
    - gf_sk_gf_free
    - WSACleanup
    linkageType: ''
    returnType: void
    signature: void gf_sk_del(GF_Socket *sock)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:352,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - sock
    argTypes:
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 349
    functionDepth: 0
    functionLinenumber: 349
    functionLinenumberEnd: 353
    functionName: gf_sk_reset
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 1
    functionsReached:
    - setsockopt
    linkageType: ''
    returnType: void
    signature: void gf_sk_reset(GF_Socket *sock)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sock
    argTypes:
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 355
    functionDepth: 0
    functionLinenumber: 355
    functionLinenumberEnd: 358
    functionName: gf_sk_get_handle
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 gf_sk_get_handle(GF_Socket *sock)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_gf_free
      Src: /src/gpac/src/utils/symbian_net.cpp:370,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/symbian_net.cpp:372,1
    - Dst: socket
      Src: /src/gpac/src/utils/symbian_net.cpp:378,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/symbian_net.cpp:383,1
    - Dst: connect
      Src: /src/gpac/src/utils/symbian_net.cpp:387,1
    - Dst: closesocket
      Src: /src/gpac/src/utils/symbian_net.cpp:389,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:394,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/symbian_net.cpp:396,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/symbian_net.cpp:399,1
    - Dst: socket
      Src: /src/gpac/src/utils/symbian_net.cpp:406,1
    - Dst: htons
      Src: /src/gpac/src/utils/symbian_net.cpp:410,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/symbian_net.cpp:412,1
    - Dst: gf_gethostbyname
      Src: /src/gpac/src/utils/symbian_net.cpp:414,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:426,1
    - Dst: connect
      Src: /src/gpac/src/utils/symbian_net.cpp:430,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 62
    argCount: 4
    argNames:
    - sock
    - PeerName
    - PortNumber
    - local_ip
    argTypes:
    - GF_Socket*
    - char*
    - u16
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 363
    functionDepth: 2
    functionLinenumber: 363
    functionLinenumberEnd: 444
    functionName: gf_sk_connect
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 4
    functionsReached:
    - inet_addr
    - memcpy
    - gf_gethostbyname
    - gf_sk_gf_free
    - freeaddrinfo
    - gf_sk_get_ipv6_addr
    - htons
    - connect
    - socket
    - gf_sk_set_block_mode
    - closesocket
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_connect(GF_Socket *sock, char *PeerName, u16 PortNumber,
      char *local_ip)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_net_has_ipv6
      Src: /src/gpac/src/utils/symbian_net.cpp:469,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/symbian_net.cpp:472,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:479,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/symbian_net.cpp:481,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/symbian_net.cpp:484,1
    - Dst: socket
      Src: /src/gpac/src/utils/symbian_net.cpp:497,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:504,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/symbian_net.cpp:506,1
    - Dst: bind
      Src: /src/gpac/src/utils/symbian_net.cpp:508,1
    - Dst: closesocket
      Src: /src/gpac/src/utils/symbian_net.cpp:510,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/symbian_net.cpp:521,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/symbian_net.cpp:524,1
    - Dst: socket
      Src: /src/gpac/src/utils/symbian_net.cpp:530,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/symbian_net.cpp:531,1
    - Dst: memset
      Src: /src/gpac/src/utils/symbian_net.cpp:535,1
    - Dst: gethostname
      Src: /src/gpac/src/utils/symbian_net.cpp:536,1
    - Dst: gf_gethostbyname
      Src: /src/gpac/src/utils/symbian_net.cpp:539,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:542,1
    - Dst: htons
      Src: /src/gpac/src/utils/symbian_net.cpp:545,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:549,1
    - Dst: bind
      Src: /src/gpac/src/utils/symbian_net.cpp:552,1
    - Dst: htons
      Src: /src/gpac/src/utils/symbian_net.cpp:556,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/symbian_net.cpp:558,1
    - Dst: gf_gethostbyname
      Src: /src/gpac/src/utils/symbian_net.cpp:560,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:562,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 89
    argCount: 6
    argNames:
    - sock
    - local_ip
    - port
    - peer_name
    - peer_port
    - options
    argTypes:
    - GF_Socket*
    - char*
    - u16
    - char*
    - u16
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 568
      start: 449
    functionDepth: 2
    functionLinenumber: 449
    functionLinenumberEnd: 568
    functionName: gf_sk_bind
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 13
    functionsReached:
    - bind
    - closesocket
    - inet_addr
    - memcpy
    - gf_net_has_ipv6
    - setsockopt
    - gf_gethostbyname
    - gf_sk_get_ipv6_addr
    - memset
    - htons
    - gethostname
    - socket
    - gf_sk_set_block_mode
    - freeaddrinfo
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_bind(GF_Socket *sock, char *local_ip, u16 port, char *peer_name,
      u16 peer_port, u32 options)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: FD_ZERO
      Src: /src/gpac/src/utils/symbian_net.cpp:589,1
    - Dst: FD_SET
      Src: /src/gpac/src/utils/symbian_net.cpp:590,1
    - Dst: select
      Src: /src/gpac/src/utils/symbian_net.cpp:594,1
    - Dst: FD_ISSET
      Src: /src/gpac/src/utils/symbian_net.cpp:604,1
    - Dst: send
      Src: /src/gpac/src/utils/symbian_net.cpp:613,1
    - Dst: sendto
      Src: /src/gpac/src/utils/symbian_net.cpp:615,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 3
    argNames:
    - sock
    - buffer
    - length
    argTypes:
    - GF_Socket*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 633
      start: 571
    functionDepth: 0
    functionLinenumber: 571
    functionLinenumberEnd: 633
    functionName: gf_sk_send
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 9
    functionsReached:
    - FD_ISSET
    - select
    - send
    - sendto
    - FD_SET
    - FD_ZERO
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_send(GF_Socket *sock, char *buffer, u32 length)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/symbian_net.cpp:643,1
    - Dst: IN_MULTICAST
      Src: /src/gpac/src/utils/symbian_net.cpp:647,1
    - Dst: ntohl
      Src: /src/gpac/src/utils/symbian_net.cpp:647,1
    - Dst: IN6_IS_ADDR_MULTICAST
      Src: /src/gpac/src/utils/symbian_net.cpp:649,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/symbian_net.cpp:651,1
    - Dst: htonl
      Src: /src/gpac/src/utils/symbian_net.cpp:655,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/symbian_net.cpp:655,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - multi_IPAdd
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 636
    functionDepth: 0
    functionLinenumber: 636
    functionLinenumberEnd: 657
    functionName: gf_sk_is_multicast_address
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 13
    functionsReached:
    - htonl
    - IN_MULTICAST
    - inet_addr
    - ntohl
    - IN6_IS_ADDR_MULTICAST
    - gf_sk_get_ipv6_addr
    - freeaddrinfo
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_is_multicast_address(char *multi_IPAdd)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/utils/symbian_net.cpp:678,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/symbian_net.cpp:682,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/symbian_net.cpp:685,1
    - Dst: socket
      Src: /src/gpac/src/utils/symbian_net.cpp:694,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:701,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/symbian_net.cpp:704,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:706,1
    - Dst: bind
      Src: /src/gpac/src/utils/symbian_net.cpp:710,1
    - Dst: closesocket
      Src: /src/gpac/src/utils/symbian_net.cpp:712,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/symbian_net.cpp:721,1
    - Dst: gf_sk_ipv6_set_remote_address
      Src: /src/gpac/src/utils/symbian_net.cpp:724,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:731,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:734,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:738,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:743,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:745,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:748,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:752,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:759,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/symbian_net.cpp:761,1
    - Dst: htonl
      Src: /src/gpac/src/utils/symbian_net.cpp:762,1
    - Dst: htons
      Src: /src/gpac/src/utils/symbian_net.cpp:769,1
    - Dst: bind
      Src: /src/gpac/src/utils/symbian_net.cpp:771,1
    - Dst: htonl
      Src: /src/gpac/src/utils/symbian_net.cpp:774,1
    - Dst: bind
      Src: /src/gpac/src/utils/symbian_net.cpp:776,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:781,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/symbian_net.cpp:786,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:789,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:792,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:796,1
    - Dst: htons
      Src: /src/gpac/src/utils/symbian_net.cpp:801,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 118
    argCount: 6
    argNames:
    - sock
    - multi_IPAdd
    - MultiPortNumber
    - TTL
    - NoBind
    - local_interface_ip
    argTypes:
    - GF_Socket*
    - char*
    - u16
    - u32
    - Bool
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 805
      start: 659
    functionDepth: 1
    functionLinenumber: 659
    functionLinenumberEnd: 805
    functionName: gf_sk_setup_multicast
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 6
    functionsReached:
    - htonl
    - bind
    - inet_addr
    - memcpy
    - setsockopt
    - freeaddrinfo
    - gf_sk_is_multicast_address
    - gf_sk_ipv6_set_remote_address
    - gf_sk_get_ipv6_addr
    - htons
    - socket
    - gf_sk_set_block_mode
    - closesocket
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_setup_multicast(GF_Socket *sock, char *multi_IPAdd, u16
      MultiPortNumber, u32 TTL, Bool NoBind, char *local_interface_ip)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: FD_ZERO
      Src: /src/gpac/src/utils/symbian_net.cpp:831,1
    - Dst: FD_SET
      Src: /src/gpac/src/utils/symbian_net.cpp:832,1
    - Dst: select
      Src: /src/gpac/src/utils/symbian_net.cpp:837,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/symbian_net.cpp:843,1
    - Dst: FD_ISSET
      Src: /src/gpac/src/utils/symbian_net.cpp:847,1
    - Dst: recvfrom
      Src: /src/gpac/src/utils/symbian_net.cpp:853,1
    - Dst: recv
      Src: /src/gpac/src/utils/symbian_net.cpp:855,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/symbian_net.cpp:871,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 46
    argCount: 5
    argNames:
    - sock
    - buffer
    - length
    - startFrom
    - BytesRead
    argTypes:
    - GF_Socket*
    - char*
    - u32
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 877
      start: 813
    functionDepth: 1
    functionLinenumber: 813
    functionLinenumberEnd: 877
    functionName: gf_sk_receive
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 9
    functionsReached:
    - FD_ISSET
    - GF_LOG
    - recv
    - select
    - recvfrom
    - FD_SET
    - FD_ZERO
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_receive(GF_Socket *sock, char *buffer, u32 length, u32
      startFrom, u32 *BytesRead)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: listen
      Src: /src/gpac/src/utils/symbian_net.cpp:885,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - sock
    - MaxConnection
    argTypes:
    - GF_Socket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 889
      start: 880
    functionDepth: 0
    functionLinenumber: 880
    functionLinenumberEnd: 889
    functionName: gf_sk_listen
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 2
    functionsReached:
    - listen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_listen(GF_Socket *sock, u32 MaxConnection)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: FD_ZERO
      Src: /src/gpac/src/utils/symbian_net.cpp:908,1
    - Dst: FD_SET
      Src: /src/gpac/src/utils/symbian_net.cpp:909,1
    - Dst: select
      Src: /src/gpac/src/utils/symbian_net.cpp:914,1
    - Dst: FD_ISSET
      Src: /src/gpac/src/utils/symbian_net.cpp:923,1
    - Dst: accept
      Src: /src/gpac/src/utils/symbian_net.cpp:931,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/symbian_net.cpp:944,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:948,1
    - Dst: memset
      Src: /src/gpac/src/utils/symbian_net.cpp:949,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:951,1
    - Dst: memset
      Src: /src/gpac/src/utils/symbian_net.cpp:952,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 40
    argCount: 2
    argNames:
    - sock
    - newConnection
    argTypes:
    - GF_Socket*
    - GF_Socket**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 956
      start: 891
    functionDepth: 0
    functionLinenumber: 891
    functionLinenumberEnd: 956
    functionName: gf_sk_accept
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 3
    functionsReached:
    - accept
    - FD_ISSET
    - memcpy
    - select
    - memset
    - FD_SET
    - gf_malloc
    - FD_ZERO
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_accept(GF_Socket *sock, GF_Socket **newConnection)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: getsockname
      Src: /src/gpac/src/utils/symbian_net.cpp:972,1
    - Dst: ntohs
      Src: /src/gpac/src/utils/symbian_net.cpp:973,1
    - Dst: getsockname
      Src: /src/gpac/src/utils/symbian_net.cpp:976,1
    - Dst: ntohs
      Src: /src/gpac/src/utils/symbian_net.cpp:977,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 3
    argNames:
    - sock
    - Port
    - Familly
    argTypes:
    - GF_Socket*
    - u16*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 990
      start: 958
    functionDepth: 0
    functionLinenumber: 958
    functionLinenumberEnd: 990
    functionName: gf_sk_get_local_info
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 3
    functionsReached:
    - getsockname
    - ntohs
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_get_local_info(GF_Socket *sock, u16 *Port, u32 *Familly)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:1001,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/symbian_net.cpp:1003,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - sock
    - serverOn
    argTypes:
    - GF_Socket*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1006
      start: 993
    functionDepth: 0
    functionLinenumber: 993
    functionLinenumberEnd: 1006
    functionName: gf_sk_server_mode
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 3
    functionsReached:
    - setsockopt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_server_mode(GF_Socket *sock, Bool serverOn)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getnameinfo
      Src: /src/gpac/src/utils/symbian_net.cpp:1014,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:1016,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:1019,1
    - Dst: inet_ntoa
      Src: /src/gpac/src/utils/symbian_net.cpp:1019,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - sock
    - buf
    argTypes:
    - GF_Socket*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1022
      start: 1008
    functionDepth: 0
    functionLinenumber: 1008
    functionLinenumberEnd: 1022
    functionName: gf_sk_get_remote_address
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 1
    functionsReached:
    - strcpy
    - getnameinfo
    - inet_ntoa
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_get_remote_address(GF_Socket *sock, char *buf)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: FD_ZERO
      Src: /src/gpac/src/utils/symbian_net.cpp:1050,1
    - Dst: FD_SET
      Src: /src/gpac/src/utils/symbian_net.cpp:1051,1
    - Dst: select
      Src: /src/gpac/src/utils/symbian_net.cpp:1055,1
    - Dst: FD_ISSET
      Src: /src/gpac/src/utils/symbian_net.cpp:1064,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/symbian_net.cpp:1074,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:1076,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/symbian_net.cpp:1078,1
    - Dst: htons
      Src: /src/gpac/src/utils/symbian_net.cpp:1092,1
    - Dst: gf_gethostbyname
      Src: /src/gpac/src/utils/symbian_net.cpp:1094,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:1096,1
    - Dst: sendto
      Src: /src/gpac/src/utils/symbian_net.cpp:1104,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 58
    argCount: 5
    argNames:
    - sock
    - buffer
    - length
    - remoteHost
    - remotePort
    argTypes:
    - GF_Socket*
    - char*
    - u32
    - char*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1116
      start: 1028
    functionDepth: 2
    functionLinenumber: 1028
    functionLinenumberEnd: 1116
    functionName: gf_sk_send_to
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 0
    functionsReached:
    - FD_ISSET
    - memcpy
    - gf_gethostbyname
    - select
    - gf_sk_get_ipv6_addr
    - htons
    - sendto
    - FD_SET
    - FD_ZERO
    - freeaddrinfo
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_send_to(GF_Socket *sock, char *buffer, u32 length, char
      *remoteHost, u16 remotePort)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: FD_ZERO
      Src: /src/gpac/src/utils/symbian_net.cpp:1138,1
    - Dst: FD_SET
      Src: /src/gpac/src/utils/symbian_net.cpp:1139,1
    - Dst: select
      Src: /src/gpac/src/utils/symbian_net.cpp:1144,1
    - Dst: FD_ISSET
      Src: /src/gpac/src/utils/symbian_net.cpp:1153,1
    - Dst: recv
      Src: /src/gpac/src/utils/symbian_net.cpp:1159,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 33
    argCount: 6
    argNames:
    - sock
    - buffer
    - length
    - startFrom
    - BytesRead
    - Second
    argTypes:
    - GF_Socket*
    - char*
    - u32
    - u32
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1170
      start: 1121
    functionDepth: 0
    functionLinenumber: 1121
    functionLinenumberEnd: 1170
    functionName: gf_sk_receive_wait
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 0
    functionsReached:
    - FD_ISSET
    - recv
    - select
    - FD_SET
    - FD_ZERO
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_receive_wait(GF_Socket *sock, char *buffer, u32 length,
      u32 startFrom, u32 *BytesRead, u32 Second )
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: FD_ZERO
      Src: /src/gpac/src/utils/symbian_net.cpp:1192,1
    - Dst: FD_SET
      Src: /src/gpac/src/utils/symbian_net.cpp:1193,1
    - Dst: select
      Src: /src/gpac/src/utils/symbian_net.cpp:1197,1
    - Dst: FD_ISSET
      Src: /src/gpac/src/utils/symbian_net.cpp:1207,1
    - Dst: send
      Src: /src/gpac/src/utils/symbian_net.cpp:1215,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 4
    argNames:
    - sock
    - buffer
    - length
    - Second
    argTypes:
    - GF_Socket*
    - char*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1231
      start: 1174
    functionDepth: 0
    functionLinenumber: 1174
    functionLinenumberEnd: 1231
    functionName: gf_sk_send_wait
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 0
    functionsReached:
    - FD_ISSET
    - select
    - send
    - FD_SET
    - FD_ZERO
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_send_wait(GF_Socket *sock, char *buffer, u32 length, u32
      Second )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/symbian_net.cpp:1251,1
    - Dst: FD_ZERO
      Src: /src/gpac/src/utils/symbian_net.cpp:1253,1
    - Dst: FD_ZERO
      Src: /src/gpac/src/utils/symbian_net.cpp:1254,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1256
      start: 1249
    functionDepth: 0
    functionLinenumber: 1249
    functionLinenumberEnd: 1256
    functionName: NewSockGroup
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 0
    functionsReached:
    - gf_malloc
    - FD_ZERO
    linkageType: ''
    returnType: GF_SocketGroup
    signature: GF_SocketGroup *NewSockGroup()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/symbian_net.cpp:1260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - group
    argTypes:
    - GF_SocketGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1261
      start: 1258
    functionDepth: 0
    functionLinenumber: 1258
    functionLinenumberEnd: 1261
    functionName: SKG_Delete
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void SKG_Delete(GF_SocketGroup *group)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - group
    - DelayInS
    - DelayInMicroS
    argTypes:
    - GF_SocketGroup*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1267
      start: 1263
    functionDepth: 0
    functionLinenumber: 1263
    functionLinenumberEnd: 1267
    functionName: SKG_SetWatchTime
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SKG_SetWatchTime(GF_SocketGroup *group, u32 DelayInS, u32 DelayInMicroS)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FD_SET
      Src: /src/gpac/src/utils/symbian_net.cpp:1274,1
    - Dst: FD_SET
      Src: /src/gpac/src/utils/symbian_net.cpp:1277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - group
    - sock
    - GroupType
    argTypes:
    - GF_SocketGroup*
    - GF_Socket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1282
      start: 1269
    functionDepth: 0
    functionLinenumber: 1269
    functionLinenumberEnd: 1282
    functionName: SKG_AddSocket
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 0
    functionsReached:
    - FD_SET
    linkageType: ''
    returnType: void
    signature: void SKG_AddSocket(GF_SocketGroup *group, GF_Socket *sock, u32 GroupType)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FD_CLR
      Src: /src/gpac/src/utils/symbian_net.cpp:1288,1
    - Dst: FD_CLR
      Src: /src/gpac/src/utils/symbian_net.cpp:1291,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - group
    - sock
    - GroupType
    argTypes:
    - GF_SocketGroup*
    - GF_Socket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1296
      start: 1284
    functionDepth: 0
    functionLinenumber: 1284
    functionLinenumberEnd: 1296
    functionName: SKG_RemoveSocket
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 0
    functionsReached:
    - FD_CLR
    linkageType: ''
    returnType: void
    signature: void SKG_RemoveSocket(GF_SocketGroup *group, GF_Socket *sock, u32 GroupType)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: FD_ISSET
      Src: /src/gpac/src/utils/symbian_net.cpp:1304,1
    - Dst: FD_ISSET
      Src: /src/gpac/src/utils/symbian_net.cpp:1307,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - group
    - sock
    - GroupType
    argTypes:
    - GF_SocketGroup*
    - GF_Socket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1312
      start: 1299
    functionDepth: 0
    functionLinenumber: 1299
    functionLinenumberEnd: 1312
    functionName: SKG_IsSocketIN
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 0
    functionsReached:
    - FD_ISSET
    linkageType: ''
    returnType: Bool
    signature: Bool SKG_IsSocketIN(GF_SocketGroup *group, GF_Socket *sock, u32 GroupType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: select
      Src: /src/gpac/src/utils/symbian_net.cpp:1317,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - group
    argTypes:
    - GF_SocketGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1320
      start: 1314
    functionDepth: 0
    functionLinenumber: 1314
    functionLinenumberEnd: 1320
    functionName: SKG_Select
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 0
    functionsReached:
    - select
    linkageType: ''
    returnType: u32
    signature: u32 SKG_Select(GF_SocketGroup *group)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - n
    - ','
    - b
    - ','
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16
      start: 9
    functionDepth: 0
    functionLinenumber: 9
    functionLinenumberEnd: 16
    functionName: PUT_UINT32_BE
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PUT_UINT32_BE(n,b,i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - n
    - ','
    - b
    - ','
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 63
    functionName: GET_UINT32_BE
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_UINT32_BE(n,b,i)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/sha1.c:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 82
    functionName: gf_sha1_starts
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_SHA1Context
    signature: GF_SHA1Context *gf_sha1_starts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GET_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:88,1
    - Dst: GET_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:89,1
    - Dst: GET_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:90,1
    - Dst: GET_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:91,1
    - Dst: GET_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:92,1
    - Dst: GET_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:93,1
    - Dst: GET_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:94,1
    - Dst: GET_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:95,1
    - Dst: GET_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:96,1
    - Dst: GET_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:97,1
    - Dst: GET_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:98,1
    - Dst: GET_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:99,1
    - Dst: GET_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:100,1
    - Dst: GET_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:101,1
    - Dst: GET_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:102,1
    - Dst: GET_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:103,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:128,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:129,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:130,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:131,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:132,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:133,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:134,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:135,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:136,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:137,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:138,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:139,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:140,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:141,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:142,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:143,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:144,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:144,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:145,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:145,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:146,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:146,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:147,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:147,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:155,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:155,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:156,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:156,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:157,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:157,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:158,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:158,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:159,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:159,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:160,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:160,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:161,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:161,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:162,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:162,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:163,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:163,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:164,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:164,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:165,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:165,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:166,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:166,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:167,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:167,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:168,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:168,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:169,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:169,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:170,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:170,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:171,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:171,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:172,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:172,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:173,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:173,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:174,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:174,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:182,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:182,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:183,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:183,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:184,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:184,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:185,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:185,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:186,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:186,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:187,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:187,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:188,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:188,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:189,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:189,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:190,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:190,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:191,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:191,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:192,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:192,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:193,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:193,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:194,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:194,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:195,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:195,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:196,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:196,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:197,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:197,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:198,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:198,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:199,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:199,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:200,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:200,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:201,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:201,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:209,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:209,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:210,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:210,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:211,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:211,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:212,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:212,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:213,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:213,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:214,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:214,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:215,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:215,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:216,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:216,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:217,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:217,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:218,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:218,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:219,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:219,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:220,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:220,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:221,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:221,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:222,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:222,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:223,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:223,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:224,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:224,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:225,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:225,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:226,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:226,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:227,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:227,1
    - Dst: P
      Src: /src/gpac/src/utils/sha1.c:228,1
    - Dst: R
      Src: /src/gpac/src/utils/sha1.c:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 107
    argCount: 2
    argNames:
    - ctx
    - data
    argTypes:
    - GF_SHA1Context*
    - u8[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 238
    functionName: sha1_process
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 0
    functionsReached:
    - GET_UINT32_BE
    - R
    - P
    linkageType: ''
    returnType: void
    signature: void sha1_process(GF_SHA1Context *ctx, u8 data[64] )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 106
    functionName: S
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 245
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: S(x,n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 113
    functionName: R
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 161
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: R(t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - ','
    - d
    - ','
    - e
    - ','
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionName: P
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 46
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: P(a,b,c,d,e,x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - x
    - ','
    - y
    - ','
    - z
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 126
    functionName: F
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: F(x,y,z)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - x
    - ','
    - y
    - ','
    - z
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 153
    functionName: F
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: F(x,y,z)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - x
    - ','
    - y
    - ','
    - z
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 180
    functionName: F
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: F(x,y,z)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - x
    - ','
    - y
    - ','
    - z
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 207
    functionName: F
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: F(x,y,z)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/utils/sha1.c:262,1
    - Dst: sha1_process
      Src: /src/gpac/src/utils/sha1.c:264,1
    - Dst: sha1_process
      Src: /src/gpac/src/utils/sha1.c:272,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/sha1.c:279,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 3
    argNames:
    - ctx
    - input
    - ilen
    argTypes:
    - GF_SHA1Context*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 243
    functionDepth: 2
    functionLinenumber: 243
    functionLinenumberEnd: 282
    functionName: gf_sha1_update
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 1
    functionsReached:
    - memcpy
    - sha1_process
    linkageType: ''
    returnType: void
    signature: void gf_sha1_update(GF_SHA1Context *ctx, u8 *input, u32 ilen )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PUT_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:305,1
    - Dst: PUT_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:306,1
    - Dst: gf_sha1_update
      Src: /src/gpac/src/utils/sha1.c:311,1
    - Dst: gf_sha1_update
      Src: /src/gpac/src/utils/sha1.c:312,1
    - Dst: PUT_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:314,1
    - Dst: PUT_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:315,1
    - Dst: PUT_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:316,1
    - Dst: PUT_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:317,1
    - Dst: PUT_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:318,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/sha1.c:320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 2
    argNames:
    - ctx
    - output
    argTypes:
    - GF_SHA1Context*
    - u8[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 295
    functionDepth: 3
    functionLinenumber: 295
    functionLinenumberEnd: 321
    functionName: gf_sha1_finish
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 1
    functionsReached:
    - gf_free
    - PUT_UINT32_BE
    - gf_sha1_update
    linkageType: ''
    returnType: void
    signature: void gf_sha1_finish(GF_SHA1Context *ctx, u8 output[GF_SHA1_DIGEST_SIZE]
      )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - bits
    - ','
    - word
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 397
    functionDepth: 0
    functionLinenumber: 397
    functionLinenumberEnd: 400
    functionName: SHA1CircularShift
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHA1CircularShift(bits,word)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SHA1CircularShift
      Src: /src/gpac/src/utils/sha1.c:449,1
    - Dst: SHA1CircularShift
      Src: /src/gpac/src/utils/sha1.c:460,1
    - Dst: SHA1CircularShift
      Src: /src/gpac/src/utils/sha1.c:465,1
    - Dst: SHA1CircularShift
      Src: /src/gpac/src/utils/sha1.c:472,1
    - Dst: SHA1CircularShift
      Src: /src/gpac/src/utils/sha1.c:476,1
    - Dst: SHA1CircularShift
      Src: /src/gpac/src/utils/sha1.c:483,1
    - Dst: SHA1CircularShift
      Src: /src/gpac/src/utils/sha1.c:488,1
    - Dst: SHA1CircularShift
      Src: /src/gpac/src/utils/sha1.c:495,1
    - Dst: SHA1CircularShift
      Src: /src/gpac/src/utils/sha1.c:499,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 57
    argCount: 1
    argNames:
    - context
    argTypes:
    - GF_SHA1Context*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 422
    functionDepth: 1
    functionLinenumber: 422
    functionLinenumberEnd: 516
    functionName: SHA1ProcessMessageBlock
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 0
    functionsReached:
    - SHA1CircularShift
    linkageType: ''
    returnType: void
    signature: void SHA1ProcessMessageBlock(GF_SHA1Context *context)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SHA1ProcessMessageBlock
      Src: /src/gpac/src/utils/sha1.c:557,1
    - Dst: SHA1ProcessMessageBlock
      Src: /src/gpac/src/utils/sha1.c:585,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 1
    argNames:
    - context
    argTypes:
    - GF_SHA1Context*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 541
    functionDepth: 2
    functionLinenumber: 541
    functionLinenumberEnd: 586
    functionName: SHA1PadMessage
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 0
    functionsReached:
    - SHA1ProcessMessageBlock
    linkageType: ''
    returnType: void
    signature: void SHA1PadMessage(GF_SHA1Context *context)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/sha1.c:607,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 604
    functionDepth: 1
    functionLinenumber: 604
    functionLinenumberEnd: 622
    functionName: gf_sha1_starts
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_SHA1Context
    signature: GF_SHA1Context *gf_sha1_starts()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: SHA1ProcessMessageBlock
      Src: /src/gpac/src/utils/sha1.c:659,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 3
    argNames:
    - context
    - message_array
    - length
    argTypes:
    - GF_SHA1Context*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 624
    functionDepth: 2
    functionLinenumber: 624
    functionLinenumberEnd: 664
    functionName: gf_sha1_update
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 2
    functionsReached:
    - SHA1ProcessMessageBlock
    linkageType: ''
    returnType: void
    signature: void gf_sha1_update(GF_SHA1Context *context, u8 *message_array, u32
      length )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SHA1PadMessage
      Src: /src/gpac/src/utils/sha1.c:674,1
    - Dst: PUT_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:677,1
    - Dst: PUT_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:678,1
    - Dst: PUT_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:679,1
    - Dst: PUT_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:680,1
    - Dst: PUT_UINT32_BE
      Src: /src/gpac/src/utils/sha1.c:681,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/sha1.c:683,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - context
    - output
    argTypes:
    - GF_SHA1Context*
    - u8[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 665
    functionDepth: 3
    functionLinenumber: 665
    functionLinenumberEnd: 684
    functionName: gf_sha1_finish
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 1
    functionsReached:
    - SHA1PadMessage
    - PUT_UINT32_BE
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sha1_finish(GF_SHA1Context *context, u8 output[GF_SHA1_DIGEST_SIZE]
      )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_ftell
      Src: /src/gpac/src/utils/sha1.c:694,1
    - Dst: gf_sha1_starts
      Src: /src/gpac/src/utils/sha1.c:699,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/sha1.c:700,1
    - Dst: gf_fread
      Src: /src/gpac/src/utils/sha1.c:702,1
    - Dst: gf_sha1_update
      Src: /src/gpac/src/utils/sha1.c:703,1
    - Dst: gf_sha1_finish
      Src: /src/gpac/src/utils/sha1.c:705,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/sha1.c:707,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - f
    - output
    argTypes:
    - FILE*
    - u8[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 691
    functionDepth: 4
    functionLinenumber: 691
    functionLinenumberEnd: 709
    functionName: gf_sha1_file_ptr
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 0
    functionsReached:
    - gf_sha1_finish
    - gf_fseek
    - gf_fread
    - gf_sha1_update
    - gf_sha1_starts
    - gf_ftell
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sha1_file_ptr(FILE *f, u8 output[GF_SHA1_DIGEST_SIZE]
      )
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/utils/sha1.c:717,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/utils/sha1.c:720,1
    - Dst: gf_sha1_csum
      Src: /src/gpac/src/utils/sha1.c:723,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/utils/sha1.c:724,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/sha1.c:728,1
    - Dst: gf_sha1_file_ptr
      Src: /src/gpac/src/utils/sha1.c:731,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/sha1.c:732,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - path
    - output
    argTypes:
    - char*
    - u8[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 734
      start: 711
    functionDepth: 5
    functionLinenumber: 711
    functionLinenumberEnd: 734
    functionName: gf_sha1_file
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 3
    functionsReached:
    - gf_sha1_file_ptr
    - gf_fclose
    - gf_blob_get
    - gf_sha1_csum
    - strncmp
    - gf_fopen
    - gf_blob_release
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sha1_file( const char *path, u8 output[GF_SHA1_DIGEST_SIZE]
      )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/utils/sha1.c:744,1
    - Dst: gf_sha1_starts
      Src: /src/gpac/src/utils/sha1.c:745,1
    - Dst: gf_sha1_update
      Src: /src/gpac/src/utils/sha1.c:747,1
    - Dst: gf_sha1_finish
      Src: /src/gpac/src/utils/sha1.c:748,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - input
    - ilen
    - output
    argTypes:
    - u8*
    - u32
    - u8[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 739
    functionDepth: 4
    functionLinenumber: 739
    functionLinenumberEnd: 750
    functionName: gf_sha1_csum
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 8
    functionsReached:
    - gf_sha1_starts
    - memset
    - gf_sha1_update
    - gf_sha1_finish
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sha1_csum( u8 *input, u32 ilen, u8 output[GF_SHA1_DIGEST_SIZE]
      )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sha1_csum
      Src: /src/gpac/src/utils/sha1.c:756,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/sha1.c:764,1
    - Dst: strcat
      Src: /src/gpac/src/utils/sha1.c:765,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - buf
    - buflen
    - digest
    argTypes:
    - u8*
    - u32
    - u8[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 754
    functionDepth: 5
    functionLinenumber: 754
    functionLinenumberEnd: 768
    functionName: gf_sha1_csum_hexa
    functionSourceFile: /src/gpac/src/utils/sha1.c
    functionUses: 0
    functionsReached:
    - strcat
    - sprintf
    - gf_sha1_csum
    linkageType: ''
    returnType: void
    signature: void gf_sha1_csum_hexa(u8 *buf, u32 buflen, u8 digest[GF_SHA1_DIGEST_SIZE_HEXA])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:205,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:206,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:207,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:211,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:212,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:216,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:217,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:218,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:219,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:220,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:222,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:223,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:228,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:230,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:231,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:232,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:233,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:234,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:235,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:236,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:237,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:238,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:239,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:240,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:241,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:242,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:243,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:244,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:245,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:246,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:247,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:248,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:249,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:250,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:251,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:252,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:253,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:254,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:255,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:256,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:257,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:258,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:259,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:260,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:261,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:262,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:263,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:264,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:265,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:266,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:267,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:268,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:269,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:270,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:271,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:272,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:273,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:274,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:275,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:276,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:277,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:278,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:279,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:280,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:281,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:282,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:283,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:284,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:285,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:286,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:287,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:288,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:289,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:290,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:291,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:292,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:293,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:294,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:295,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:296,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:297,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:298,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:299,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:300,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:301,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:302,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:303,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:304,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:305,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:306,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:309,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:310,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:311,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:312,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:313,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:315,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:316,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:317,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:318,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:319,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:320,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:321,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:322,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:323,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/utils/gltools.c:324,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 109
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 332
    functionName: gf_opengl_init
    functionSourceFile: /src/gpac/src/utils/gltools.c
    functionUses: 3
    functionsReached:
    - GET_GLFUN
    linkageType: ''
    returnType: void
    signature: void gf_opengl_init()
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/utils/gltools.c:984,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/gltools.c:985,1
    - Dst: gf_pixel_fmt_is_yuv
      Src: /src/gpac/src/utils/gltools.c:987,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/gltools.c:990,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/gltools.c:991,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/gltools.c:994,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/gltools.c:995,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/gltools.c:996,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/gltools.c:998,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/gltools.c:1001,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/gltools.c:1003,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/gltools.c:1004,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 141
    argCount: 4
    argNames:
    - pix_fmt
    - tx_name
    - f_source
    - y_flip
    argTypes:
    - u32
    - char*
    - char**
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1007
      start: 850
    functionDepth: 1
    functionLinenumber: 850
    functionLinenumberEnd: 1007
    functionName: gf_gl_txw_insert_fragment_shader
    functionSourceFile: /src/gpac/src/utils/gltools.c
    functionUses: 1
    functionsReached:
    - gf_dynstrcat
    - sprintf
    - gf_pixel_fmt_is_yuv
    linkageType: ''
    returnType: Bool
    signature: Bool gf_gl_txw_insert_fragment_shader(u32 pix_fmt, const char *tx_name,
      char **f_source, Bool y_flip)
  - BBCount: 73
    BranchProfiles: []
    Callsites:
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/utils/gltools.c:1032,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/gltools.c:1190,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/utils/gltools.c:1190,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/gltools.c:1233,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/utils/gltools.c:1233,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/utils/gltools.c:1240,1
    - Dst: glGenTextures
      Src: /src/gpac/src/utils/gltools.c:1241,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/utils/gltools.c:1242,1
    - Dst: glEnable
      Src: /src/gpac/src/utils/gltools.c:1245,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/utils/gltools.c:1246,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1251,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/utils/gltools.c:1252,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/utils/gltools.c:1254,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/utils/gltools.c:1255,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/utils/gltools.c:1257,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/utils/gltools.c:1258,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/utils/gltools.c:1260,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/utils/gltools.c:1261,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/utils/gltools.c:1263,1
    - Dst: glGenBuffers
      Src: /src/gpac/src/utils/gltools.c:1270,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/utils/gltools.c:1271,1
    - Dst: glBufferData
      Src: /src/gpac/src/utils/gltools.c:1274,1
    - Dst: glGenBuffers
      Src: /src/gpac/src/utils/gltools.c:1276,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/utils/gltools.c:1277,1
    - Dst: glBufferData
      Src: /src/gpac/src/utils/gltools.c:1280,1
    - Dst: glBufferData
      Src: /src/gpac/src/utils/gltools.c:1284,1
    - Dst: glGenBuffers
      Src: /src/gpac/src/utils/gltools.c:1286,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/utils/gltools.c:1287,1
    - Dst: glBufferData
      Src: /src/gpac/src/utils/gltools.c:1288,1
    - Dst: glBufferData
      Src: /src/gpac/src/utils/gltools.c:1292,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/utils/gltools.c:1294,1
    - Dst: glDisable
      Src: /src/gpac/src/utils/gltools.c:1299,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/utils/gltools.c:1300,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 251
    argCount: 10
    argNames:
    - tx
    - pix_fmt
    - width
    - height
    - stride
    - uv_stride
    - linear_interp
    - frame_ifce
    - full_range
    - matrix_coef_or_neg
    argTypes:
    - GF_GLTextureWrapper*
    - u32
    - u32
    - u32
    - u32
    - u32
    - Bool
    - GF_FilterFrameInterface*
    - Bool
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1304
      start: 1010
    functionDepth: 3
    functionLinenumber: 1010
    functionLinenumberEnd: 1304
    functionName: gf_gl_txw_setup
    functionSourceFile: /src/gpac/src/utils/gltools.c
    functionUses: 1
    functionsReached:
    - gf_4cc_to_str
    - glBindTexture
    - GF_LOG
    - glDisable
    - glBufferData
    - glBindBuffer
    - glTexParameteri
    - gf_pixel_get_size_info
    - glGenBuffers
    - GL_CHECK_ERR
    - glGenTextures
    - glEnable
    linkageType: ''
    returnType: Bool
    signature: Bool gf_gl_txw_setup(GF_GLTextureWrapper *tx, u32 pix_fmt, u32 width,
      u32 height, u32 stride, u32 uv_stride, Bool linear_interp, GF_FilterFrameInterface
      *frame_ifce, Bool full_range, s32 matrix_coef_or_neg)
  - BBCount: 68
    BranchProfiles: []
    Callsites:
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/utils/gltools.c:1348,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/utils/gltools.c:1350,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/utils/gltools.c:1353,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/utils/gltools.c:1355,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/utils/gltools.c:1363,1
    - Dst: glEnable
      Src: /src/gpac/src/utils/gltools.c:1367,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/utils/gltools.c:1368,1
    - Dst: glPixelTransferi
      Src: /src/gpac/src/utils/gltools.c:1374,1
    - Dst: glPixelTransferi
      Src: /src/gpac/src/utils/gltools.c:1376,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/utils/gltools.c:1378,1
    - Dst: glPixelTransferi
      Src: /src/gpac/src/utils/gltools.c:1382,1
    - Dst: glPixelTransferi
      Src: /src/gpac/src/utils/gltools.c:1383,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/utils/gltools.c:1384,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/utils/gltools.c:1386,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/utils/gltools.c:1388,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1392,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/utils/gltools.c:1393,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/utils/gltools.c:1396,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/utils/gltools.c:1400,1
    - Dst: glTexSubImage2D
      Src: /src/gpac/src/utils/gltools.c:1403,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/utils/gltools.c:1406,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/utils/gltools.c:1409,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/utils/gltools.c:1419,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/utils/gltools.c:1421,1
    - Dst: glMapBuffer
      Src: /src/gpac/src/utils/gltools.c:1422,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/gltools.c:1447,1
    - Dst: glUnmapBuffer
      Src: /src/gpac/src/utils/gltools.c:1452,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1455,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/utils/gltools.c:1456,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/utils/gltools.c:1459,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/utils/gltools.c:1461,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/utils/gltools.c:1463,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/utils/gltools.c:1465,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/utils/gltools.c:1467,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/utils/gltools.c:1468,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/utils/gltools.c:1472,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/utils/gltools.c:1474,1
    - Dst: glMapBuffer
      Src: /src/gpac/src/utils/gltools.c:1475,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/gltools.c:1482,1
    - Dst: glUnmapBuffer
      Src: /src/gpac/src/utils/gltools.c:1487,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/utils/gltools.c:1490,1
    - Dst: glMapBuffer
      Src: /src/gpac/src/utils/gltools.c:1491,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/gltools.c:1502,1
    - Dst: glUnmapBuffer
      Src: /src/gpac/src/utils/gltools.c:1507,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/utils/gltools.c:1512,1
    - Dst: glMapBuffer
      Src: /src/gpac/src/utils/gltools.c:1513,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/gltools.c:1516,1
    - Dst: glUnmapBuffer
      Src: /src/gpac/src/utils/gltools.c:1521,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1526,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/utils/gltools.c:1527,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/utils/gltools.c:1528,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1530,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/utils/gltools.c:1531,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/utils/gltools.c:1532,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1535,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/utils/gltools.c:1536,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/utils/gltools.c:1537,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/utils/gltools.c:1540,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1549,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/utils/gltools.c:1580,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/utils/gltools.c:1583,1
    - Dst: glTexSubImage2D
      Src: /src/gpac/src/utils/gltools.c:1586,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/utils/gltools.c:1602,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/utils/gltools.c:1605,1
    - Dst: glTexSubImage2D
      Src: /src/gpac/src/utils/gltools.c:1608,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/utils/gltools.c:1613,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1618,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/utils/gltools.c:1620,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/utils/gltools.c:1622,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1624,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/utils/gltools.c:1626,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/utils/gltools.c:1628,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1631,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/utils/gltools.c:1633,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/utils/gltools.c:1635,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1639,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/utils/gltools.c:1641,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/utils/gltools.c:1643,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/utils/gltools.c:1647,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1652,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/utils/gltools.c:1654,1
    - Dst: glTexSubImage2D
      Src: /src/gpac/src/utils/gltools.c:1656,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1657,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1659,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/utils/gltools.c:1661,1
    - Dst: glTexSubImage2D
      Src: /src/gpac/src/utils/gltools.c:1663,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1664,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1667,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/utils/gltools.c:1669,1
    - Dst: glTexSubImage2D
      Src: /src/gpac/src/utils/gltools.c:1671,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1672,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1676,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/utils/gltools.c:1678,1
    - Dst: glTexSubImage2D
      Src: /src/gpac/src/utils/gltools.c:1680,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1681,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/utils/gltools.c:1685,1
    CyclomaticComplexity: 84
    EdgeCount: 84
    ICount: 273
    argCount: 3
    argNames:
    - tx
    - data
    - frame_ifce
    argTypes:
    - GF_GLTextureWrapper*
    - u8*
    - GF_FilterFrameInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1687
      start: 1306
    functionDepth: 1
    functionLinenumber: 1306
    functionLinenumberEnd: 1687
    functionName: gf_gl_txw_upload
    functionSourceFile: /src/gpac/src/utils/gltools.c
    functionUses: 2
    functionsReached:
    - glTexSubImage2D
    - glPixelStorei
    - glBindTexture
    - memcpy
    - glMapBuffer
    - glPixelTransferi
    - glTexImage2D
    - GF_FilterFrameInterface*::get_plane
    - GL_CHECK_ERR
    - glBindBuffer
    - glUnmapBuffer
    - glEnable
    linkageType: ''
    returnType: Bool
    signature: Bool gf_gl_txw_upload(GF_GLTextureWrapper *tx, const u8 *data, GF_FilterFrameInterface
      *frame_ifce)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_init
      Src: /src/gpac/src/utils/gltools.c:1722,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/gltools.c:1725,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/gltools.c:1733,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/gltools.c:1737,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/gltools.c:1747,1
    - Dst: gf_mx_transpose
      Src: /src/gpac/src/utils/gltools.c:1769,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/utils/gltools.c:1772,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/utils/gltools.c:1772,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/utils/gltools.c:1772,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/utils/gltools.c:1774,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/utils/gltools.c:1774,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/utils/gltools.c:1774,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/utils/gltools.c:1774,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/utils/gltools.c:1775,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/utils/gltools.c:1775,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/utils/gltools.c:1775,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/utils/gltools.c:1775,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/gltools.c:1778,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 45
    argCount: 2
    argNames:
    - tx
    - mx
    argTypes:
    - GF_GLTextureWrapper*
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1789
      start: 1716
    functionDepth: 2
    functionLinenumber: 1716
    functionLinenumberEnd: 1789
    functionName: get_yuv_color_matrix
    functionSourceFile: /src/gpac/src/utils/gltools.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - GF_LOG
    - gf_mx_add_translation
    - gf_mx_init
    - gf_mx_transpose
    - gf_mx_add_scale
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: void
    signature: void get_yuv_color_matrix(GF_GLTextureWrapper *tx, GF_Matrix *mx)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/utils/gltools.c:1810,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/utils/gltools.c:1811,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/utils/gltools.c:1813,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/utils/gltools.c:1815,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/gltools.c:1817,1
    - Dst: glUniform1i
      Src: /src/gpac/src/utils/gltools.c:1820,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/utils/gltools.c:1821,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/utils/gltools.c:1823,1
    - Dst: get_yuv_color_matrix
      Src: /src/gpac/src/utils/gltools.c:1831,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/gltools.c:1832,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/utils/gltools.c:1833,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/gltools.c:1835,1
    - Dst: glUniformMatrix4fv
      Src: /src/gpac/src/utils/gltools.c:1838,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/gltools.c:1851,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/utils/gltools.c:1852,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/gltools.c:1854,1
    - Dst: glUniform1f
      Src: /src/gpac/src/utils/gltools.c:1857,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/gltools.c:1860,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/utils/gltools.c:1861,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/gltools.c:1863,1
    - Dst: glUniform1f
      Src: /src/gpac/src/utils/gltools.c:1866,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/utils/gltools.c:1876,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/utils/gltools.c:1882,1
    - Dst: glActiveTexture
      Src: /src/gpac/src/utils/gltools.c:1886,1
    - Dst: GF_GLTextureWrapper*::frame_ifce::get_gl_texture
      Src: /src/gpac/src/utils/gltools.c:1887,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/gltools.c:1889,1
    - Dst: glEnable
      Src: /src/gpac/src/utils/gltools.c:1896,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1901,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/utils/gltools.c:1902,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/utils/gltools.c:1903,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/utils/gltools.c:1904,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/utils/gltools.c:1905,1
    - Dst: glTexEnvf
      Src: /src/gpac/src/utils/gltools.c:1912,1
    - Dst: glClientActiveTexture
      Src: /src/gpac/src/utils/gltools.c:1913,1
    - Dst: glActiveTexture
      Src: /src/gpac/src/utils/gltools.c:1919,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1920,1
    - Dst: glActiveTexture
      Src: /src/gpac/src/utils/gltools.c:1923,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1924,1
    - Dst: glActiveTexture
      Src: /src/gpac/src/utils/gltools.c:1927,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1928,1
    - Dst: glActiveTexture
      Src: /src/gpac/src/utils/gltools.c:1931,1
    - Dst: glBindTexture
      Src: /src/gpac/src/utils/gltools.c:1932,1
    - Dst: glTexEnvf
      Src: /src/gpac/src/utils/gltools.c:1935,1
    - Dst: glClientActiveTexture
      Src: /src/gpac/src/utils/gltools.c:1936,1
    - Dst: glEnable
      Src: /src/gpac/src/utils/gltools.c:1941,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/utils/gltools.c:1944,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 118
    argCount: 4
    argNames:
    - tx
    - tx_name
    - gl_program
    - texture_unit
    argTypes:
    - GF_GLTextureWrapper*
    - char*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1946
      start: 1792
    functionDepth: 3
    functionLinenumber: 1792
    functionLinenumberEnd: 1946
    functionName: gf_gl_txw_bind
    functionSourceFile: /src/gpac/src/utils/gltools.c
    functionUses: 1
    functionsReached:
    - glUniform1f
    - glBindTexture
    - GF_LOG
    - glUniformMatrix4fv
    - sprintf
    - gf_mx_init
    - glClientActiveTexture
    - glTexParameteri
    - glGetUniformLocation
    - get_yuv_color_matrix
    - glTexEnvf
    - GF_GLTextureWrapper*::frame_ifce::get_gl_texture
    - GL_CHECK_ERR
    - glActiveTexture
    - glUniform1i
    - glEnable
    linkageType: ''
    returnType: Bool
    signature: Bool gf_gl_txw_bind(GF_GLTextureWrapper *tx, const char *tx_name, u32
      gl_program, u32 texture_unit)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: glDeleteTextures
      Src: /src/gpac/src/utils/gltools.c:1952,1
    - Dst: glDeleteBuffers
      Src: /src/gpac/src/utils/gltools.c:1954,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - tx
    argTypes:
    - GF_GLTextureWrapper*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1966
      start: 1948
    functionDepth: 0
    functionLinenumber: 1948
    functionLinenumberEnd: 1966
    functionName: gf_gl_txw_reset
    functionSourceFile: /src/gpac/src/utils/gltools.c
    functionUses: 3
    functionsReached:
    - glDeleteBuffers
    - glDeleteTextures
    linkageType: ''
    returnType: void
    signature: void gf_gl_txw_reset(GF_GLTextureWrapper *tx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1972
      start: 1970
    functionDepth: 0
    functionLinenumber: 1970
    functionLinenumberEnd: 1972
    functionName: gf_opengl_init
    functionSourceFile: /src/gpac/src/utils/gltools.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_opengl_init()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - pix_fmt
    - tx_name
    - f_source
    - y_flip
    argTypes:
    - u32
    - char*
    - char**
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1977
      start: 1974
    functionDepth: 0
    functionLinenumber: 1974
    functionLinenumberEnd: 1977
    functionName: gf_gl_txw_insert_fragment_shader
    functionSourceFile: /src/gpac/src/utils/gltools.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_gl_txw_insert_fragment_shader(u32 pix_fmt, const char *tx_name,
      char **f_source, Bool y_flip)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 10
    argNames:
    - tx
    - pix_fmt
    - width
    - height
    - stride
    - uv_stride
    - linear_interp
    - frame_ifce
    - full_range
    - matrix_coef_or_neg
    argTypes:
    - GF_GLTextureWrapper*
    - u32
    - u32
    - u32
    - u32
    - u32
    - Bool
    - GF_FilterFrameInterface*
    - Bool
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1981
      start: 1978
    functionDepth: 0
    functionLinenumber: 1978
    functionLinenumberEnd: 1981
    functionName: gf_gl_txw_setup
    functionSourceFile: /src/gpac/src/utils/gltools.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_gl_txw_setup(GF_GLTextureWrapper *tx, u32 pix_fmt, u32 width,
      u32 height, u32 stride, u32 uv_stride, Bool linear_interp, GF_FilterFrameInterface
      *frame_ifce, Bool full_range, s32 matrix_coef_or_neg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - tx
    - data
    - frame_ifce
    argTypes:
    - GF_GLTextureWrapper*
    - u8*
    - GF_FilterFrameInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1986
      start: 1983
    functionDepth: 0
    functionLinenumber: 1983
    functionLinenumberEnd: 1986
    functionName: gf_gl_txw_upload
    functionSourceFile: /src/gpac/src/utils/gltools.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_gl_txw_upload(GF_GLTextureWrapper *tx, const u8 *data, GF_FilterFrameInterface
      *frame_ifce)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - tx
    - tx_name
    - gl_program
    - texture_unit
    argTypes:
    - GF_GLTextureWrapper*
    - char*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1991
      start: 1988
    functionDepth: 0
    functionLinenumber: 1988
    functionLinenumberEnd: 1991
    functionName: gf_gl_txw_bind
    functionSourceFile: /src/gpac/src/utils/gltools.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_gl_txw_bind(GF_GLTextureWrapper *tx, const char *tx_name, u32
      gl_program, u32 texture_unit)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - tx
    argTypes:
    - GF_GLTextureWrapper*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1994
      start: 1992
    functionDepth: 0
    functionLinenumber: 1992
    functionLinenumberEnd: 1994
    functionName: gf_gl_txw_reset
    functionSourceFile: /src/gpac/src/utils/gltools.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_gl_txw_reset(GF_GLTextureWrapper *tx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: CE_CharToWide
      Src: /src/gpac/src/utils/os_file.c:62,1
    - Dst: RemoveDirectory
      Src: /src/gpac/src/utils/os_file.c:63,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_file.c:65,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:66,1
    - Dst: gf_utf8_to_wcs
      Src: /src/gpac/src/utils/os_file.c:70,1
    - Dst: _wrmdir
      Src: /src/gpac/src/utils/os_file.c:73,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:74,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_file.c:76,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:77,1
    - Dst: rmdir
      Src: /src/gpac/src/utils/os_file.c:81,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:83,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - DirPathName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 88
    functionName: gf_rmdir
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 3
    functionsReached:
    - gf_free
    - CE_CharToWide
    - RemoveDirectory
    - GetLastError
    - gf_utf8_to_wcs
    - GF_LOG
    - _wrmdir
    - rmdir
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rmdir(const char *DirPathName)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: CE_CharToWide
      Src: /src/gpac/src/utils/os_file.c:96,1
    - Dst: CreateDirectory
      Src: /src/gpac/src/utils/os_file.c:97,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_file.c:99,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:100,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_file.c:106,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_file.c:107,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:108,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:110,1
    - Dst: gf_utf8_to_wcs
      Src: /src/gpac/src/utils/os_file.c:114,1
    - Dst: _wmkdir
      Src: /src/gpac/src/utils/os_file.c:117,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:118,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_file.c:120,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:123,1
    - Dst: mkdir
      Src: /src/gpac/src/utils/os_file.c:127,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:130,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:133,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 1
    argNames:
    - DirPathName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 139
    functionName: gf_mkdir
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 9
    functionsReached:
    - gf_free
    - CE_CharToWide
    - GetLastError
    - gf_utf8_to_wcs
    - GF_LOG
    - strncmp
    - strcmp
    - _wmkdir
    - mkdir
    - strchr
    - CreateDirectory
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mkdir(const char* DirPathName)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: CE_CharToWide
      Src: /src/gpac/src/utils/os_file.c:148,1
    - Dst: GetFileAttributes
      Src: /src/gpac/src/utils/os_file.c:149,1
    - Dst: gf_utf8_to_wcs
      Src: /src/gpac/src/utils/os_file.c:153,1
    - Dst: GetFileAttributesW
      Src: /src/gpac/src/utils/os_file.c:156,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:157,1
    - Dst: stat
      Src: /src/gpac/src/utils/os_file.c:161,1
    - Dst: S_ISDIR
      Src: /src/gpac/src/utils/os_file.c:161,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - DirPathName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 171
    functionName: gf_dir_exists
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 7
    functionsReached:
    - gf_free
    - CE_CharToWide
    - stat
    - gf_utf8_to_wcs
    - S_ISDIR
    - GetFileAttributes
    - GetFileAttributesW
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dir_exists(const char* DirPathName)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dir_cleanup
      Src: /src/gpac/src/utils/os_file.c:177,1
    - Dst: gf_rmdir
      Src: /src/gpac/src/utils/os_file.c:178,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/os_file.c:180,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - cbck
    - item_name
    - item_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 172
    functionDepth: 2
    functionLinenumber: 172
    functionLinenumberEnd: 183
    functionName: delete_dir
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 2
    functionsReached:
    - gf_dir_cleanup
    - gf_file_delete
    - gf_rmdir
    linkageType: ''
    returnType: Bool
    signature: Bool delete_dir(void *cbck, char *item_name, char *item_path, GF_FileEnumInfo
      *file_info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_enum_directory
      Src: /src/gpac/src/utils/os_file.c:191,1
    - Dst: gf_enum_directory
      Src: /src/gpac/src/utils/os_file.c:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - DirPathName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 196
    functionName: gf_dir_cleanup
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 4
    functionsReached:
    - gf_enum_directory
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dir_cleanup(const char* DirPathName)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/os_file.c:206,1
    - Dst: gf_list_find
      Src: /src/gpac/src/utils/os_file.c:208,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/os_file.c:209,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - del_proc
    argTypes:
    - gfio_delete_proc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 201
    functionDepth: 2
    functionLinenumber: 201
    functionLinenumberEnd: 210
    functionName: gf_fileio_register_delete_proc
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - gf_list_find
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fileio_register_delete_proc(gfio_delete_proc del_proc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/os_file.c:215,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_file.c:216,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_file.c:217,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - del_proc
    argTypes:
    - gfio_delete_proc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 211
    functionDepth: 3
    functionLinenumber: 211
    functionLinenumberEnd: 220
    functionName: gf_fileio_unregister_delete_proc
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_del_item
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fileio_unregister_delete_proc(gfio_delete_proc del_proc)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_file.c:226,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_file.c:228,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_file.c:231,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/os_file.c:233,1
    - Dst: del_proc
      Src: /src/gpac/src/utils/os_file.c:234,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 2
    argNames:
    - fileName
    - parent_gfio
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 222
    functionDepth: 1
    functionLinenumber: 222
    functionLinenumberEnd: 239
    functionName: gf_fileio_file_delete
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strncmp
    - del_proc
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_fileio_file_delete(const char *fileName, const char *parent_gfio)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:245,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_file.c:248,1
    - Dst: gf_fileio_file_delete
      Src: /src/gpac/src/utils/os_file.c:249,1
    - Dst: CE_CharToWide
      Src: /src/gpac/src/utils/os_file.c:254,1
    - Dst: DeleteFile
      Src: /src/gpac/src/utils/os_file.c:255,1
    - Dst: gf_utf8_to_wcs
      Src: /src/gpac/src/utils/os_file.c:260,1
    - Dst: DeleteFileW
      Src: /src/gpac/src/utils/os_file.c:263,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:264,1
    - Dst: remove
      Src: /src/gpac/src/utils/os_file.c:269,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - fileName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 241
    functionDepth: 2
    functionLinenumber: 241
    functionLinenumberEnd: 271
    functionName: gf_file_delete
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 30
    functionsReached:
    - gf_free
    - CE_CharToWide
    - DeleteFileW
    - gf_utf8_to_wcs
    - GF_LOG
    - gf_fileio_file_delete
    - DeleteFile
    - strncmp
    - remove
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_file_delete(const char *fileName)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_file.c:280,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_file.c:280,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - src
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 292
    functionName: gf_sanetize_single_quoted_string
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - strlen
    - gf_malloc
    linkageType: ''
    returnType: char
    signature: char * gf_sanetize_single_quoted_string(const char *src)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_file.c:310,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_file.c:312,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/utils/os_file.c:320,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/utils/os_file.c:322,1
    - Dst: gf_fileio_open_url
      Src: /src/gpac/src/utils/os_file.c:325,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/utils/os_file.c:325,1
    - Dst: gf_utf8_to_wcs
      Src: /src/gpac/src/utils/os_file.c:333,1
    - Dst: _waccess
      Src: /src/gpac/src/utils/os_file.c:335,1
    - Dst: GetFileAttributesW
      Src: /src/gpac/src/utils/os_file.c:338,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:342,1
    - Dst: access
      Src: /src/gpac/src/utils/os_file.c:345,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/utils/os_file.c:346,1
    - Dst: access
      Src: /src/gpac/src/utils/os_file.c:350,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/utils/os_file.c:351,1
    - Dst: access
      Src: /src/gpac/src/utils/os_file.c:355,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/utils/os_file.c:356,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_file.c:360,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_file.c:362,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 42
    argCount: 2
    argNames:
    - fileName
    - par_name
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 304
    functionDepth: 2
    functionLinenumber: 304
    functionLinenumberEnd: 367
    functionName: gf_file_exists_ex
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 2
    functionsReached:
    - gf_free
    - access
    - gf_fclose
    - gf_dir_exists
    - _waccess
    - gf_utf8_to_wcs
    - gf_fileio_open_url
    - gf_fileio_from_url
    - strncmp
    - gf_fopen
    - GetFileAttributesW
    - gf_fileio_resource_url
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_file_exists_ex(const char *fileName, const char *par_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_exists_ex
      Src: /src/gpac/src/utils/os_file.c:372,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - fileName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 369
    functionDepth: 3
    functionLinenumber: 369
    functionLinenumberEnd: 373
    functionName: gf_file_exists
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 27
    functionsReached:
    - gf_file_exists_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_file_exists(const char *fileName)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: CE_CharToWide
      Src: /src/gpac/src/utils/os_file.c:382,1
    - Dst: CE_CharToWide
      Src: /src/gpac/src/utils/os_file.c:383,1
    - Dst: MoveFile
      Src: /src/gpac/src/utils/os_file.c:384,1
    - Dst: gf_utf8_to_wcs
      Src: /src/gpac/src/utils/os_file.c:390,1
    - Dst: gf_utf8_to_wcs
      Src: /src/gpac/src/utils/os_file.c:391,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:393,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:394,1
    - Dst: MoveFileW
      Src: /src/gpac/src/utils/os_file.c:397,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:398,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:399,1
    - Dst: rename
      Src: /src/gpac/src/utils/os_file.c:410,1
    - Dst: gf_sanetize_single_quoted_string
      Src: /src/gpac/src/utils/os_file.c:413,1
    - Dst: gf_sanetize_single_quoted_string
      Src: /src/gpac/src/utils/os_file.c:414,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/os_file.c:415,1
    - Dst: posix_spawn
      Src: /src/gpac/src/utils/os_file.c:424,1
    - Dst: waitpid
      Src: /src/gpac/src/utils/os_file.c:425,1
    - Dst: system
      Src: /src/gpac/src/utils/os_file.c:428,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:432,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:433,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:438,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/os_file.c:438,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 44
    argCount: 2
    argNames:
    - fileName
    - newFileName
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 375
    functionDepth: 1
    functionLinenumber: 375
    functionLinenumberEnd: 441
    functionName: gf_file_move
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 3
    functionsReached:
    - gf_free
    - CE_CharToWide
    - posix_spawn
    - MoveFile
    - gf_utf8_to_wcs
    - snprintf
    - GF_LOG
    - MoveFileW
    - system
    - rename
    - waitpid
    - gf_error_to_string
    - gf_sanetize_single_quoted_string
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_file_move(const char *fileName, const char *newFileName)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: CE_CharToWide
      Src: /src/gpac/src/utils/os_file.c:453,1
    - Dst: FindFirstFile
      Src: /src/gpac/src/utils/os_file.c:454,1
    - Dst: FindClose
      Src: /src/gpac/src/utils/os_file.c:459,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_file.c:461,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:462,1
    - Dst: gf_utf8_to_wcs
      Src: /src/gpac/src/utils/os_file.c:469,1
    - Dst: _wstat64
      Src: /src/gpac/src/utils/os_file.c:472,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:473,1
    - Dst: stat
      Src: /src/gpac/src/utils/os_file.c:482,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 496
    functionName: gf_file_modification_time
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 2
    functionsReached:
    - gf_free
    - FindClose
    - CE_CharToWide
    - FindFirstFile
    - GetLastError
    - stat
    - gf_utf8_to_wcs
    - GF_LOG
    - _wstat64
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_file_modification_time(const char *filename)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_file.c:518,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 522
      start: 513
    functionDepth: 1
    functionLinenumber: 513
    functionLinenumberEnd: 522
    functionName: gf_file_handles_count
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 5
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_file_handles_count()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/os_file.c:531,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_file.c:532,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/os_file.c:534,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/os_file.c:537,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/os_file.c:539,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - idx
    argTypes:
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 528
    functionDepth: 1
    functionLinenumber: 528
    functionLinenumberEnd: 541
    functionName: enum_open_handles
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_mx_p
    - gf_list_get
    - gf_mx_v
    linkageType: ''
    returnType: char
    signature: char *enum_open_handles(u32 *idx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/os_file.c:552,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/os_file.c:553,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/os_file.c:554,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_file.c:561,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/os_file.c:563,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/os_file.c:565,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - filename
    - ptr
    - is_temp_file
    argTypes:
    - char*
    - FILE*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 544
    functionDepth: 1
    functionLinenumber: 544
    functionLinenumberEnd: 566
    functionName: gf_register_file_handle
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_new
    - gf_strdup
    - GF_SAFEALLOC
    - gf_mx_v
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void gf_register_file_handle(char *filename, FILE *ptr, Bool is_temp_file)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/os_file.c:580,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_file.c:581,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/os_file.c:583,1
    - Dst: fclose
      Src: /src/gpac/src/utils/os_file.c:588,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/os_file.c:589,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:591,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/os_file.c:591,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:595,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:596,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/os_file.c:597,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_file.c:598,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_file.c:599,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/os_file.c:604,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 570
    functionDepth: 3
    functionLinenumber: 570
    functionLinenumberEnd: 606
    functionName: gf_unregister_file_handle
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_list_get
    - GF_LOG
    - gf_list_del
    - gf_list_count
    - gf_file_delete
    - gf_mx_v
    - gf_error_to_string
    - fclose
    - gf_list_rem
    linkageType: ''
    returnType: Bool
    signature: Bool gf_unregister_file_handle(FILE *ptr)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GetTempPath
      Src: /src/gpac/src/utils/os_file.c:615,1
    - Dst: GetTempFileName
      Src: /src/gpac/src/utils/os_file.c:619,1
    - Dst: TEXT
      Src: /src/gpac/src/utils/os_file.c:619,1
    - Dst: _wfopen
      Src: /src/gpac/src/utils/os_file.c:620,1
    - Dst: TEXT
      Src: /src/gpac/src/utils/os_file.c:620,1
    - Dst: tmpfile
      Src: /src/gpac/src/utils/os_file.c:622,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:627,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_file.c:627,1
    - Dst: GetEnvironmentVariableW
      Src: /src/gpac/src/utils/os_file.c:630,1
    - Dst: gf_rand_init
      Src: /src/gpac/src/utils/os_file.c:633,1
    - Dst: swprintf
      Src: /src/gpac/src/utils/os_file.c:634,1
    - Dst: _getpid
      Src: /src/gpac/src/utils/os_file.c:634,1
    - Dst: gf_rand
      Src: /src/gpac/src/utils/os_file.c:634,1
    - Dst: _wtempnam
      Src: /src/gpac/src/utils/os_file.c:635,1
    - Dst: gf_wcs_to_utf8
      Src: /src/gpac/src/utils/os_file.c:636,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_file.c:639,1
    - Dst: gf_unregister_file_handle
      Src: /src/gpac/src/utils/os_file.c:641,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_file.c:643,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:645,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:648,1
    - Dst: free
      Src: /src/gpac/src/utils/os_file.c:649,1
    - Dst: tmpfile
      Src: /src/gpac/src/utils/os_file.c:653,1
    - Dst: gf_register_file_handle
      Src: /src/gpac/src/utils/os_file.c:657,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 36
    argCount: 1
    argNames:
    - fileName
    argTypes:
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 608
    functionDepth: 4
    functionLinenumber: 608
    functionLinenumberEnd: 660
    functionName: gf_file_temp_os
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GetLastError
    - GetTempPath
    - _getpid
    - gf_fopen
    - swprintf
    - GetEnvironmentVariableW
    - gf_strdup
    - TEXT
    - tmpfile
    - _wtempnam
    - GF_LOG
    - GetTempFileName
    - _wfopen
    - gf_unregister_file_handle
    - gf_rand
    - gf_wcs_to_utf8
    - free
    - gf_rand_init
    - gf_register_file_handle
    linkageType: ''
    returnType: FILE
    signature: FILE *gf_file_temp_os(char ** const fileName)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_file.c:665,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_file.c:670,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/os_file.c:672,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:673,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/os_file.c:674,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_file.c:677,1
    - Dst: gf_sys_get_process_id
      Src: /src/gpac/src/utils/os_file.c:677,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/os_file.c:677,1
    - Dst: gf_rand
      Src: /src/gpac/src/utils/os_file.c:677,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/os_file.c:678,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_file.c:680,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/os_file.c:681,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_file.c:684,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:685,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:686,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:689,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/utils/os_file.c:690,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:692,1
    - Dst: gf_register_file_handle
      Src: /src/gpac/src/utils/os_file.c:695,1
    - Dst: gf_file_temp_os
      Src: /src/gpac/src/utils/os_file.c:698,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 1
    argNames:
    - fileName
    argTypes:
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 699
      start: 662
    functionDepth: 5
    functionLinenumber: 662
    functionLinenumberEnd: 699
    functionName: gf_file_temp
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 6
    functionsReached:
    - gf_free
    - gf_sys_get_process_id
    - gf_file_temp_os
    - gf_file_exists
    - GF_LOG
    - sprintf
    - gf_opts_get_key
    - gf_fopen_ex
    - gf_dynstrcat
    - strchr
    - gf_sys_clock_high_res
    - strlen
    - gf_register_file_handle
    - gf_rand
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_file_temp(char ** const fileName)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 6
    argCount: 1
    argNames:
    - fp
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1070
      start: 1060
    functionDepth: 0
    functionLinenumber: 1060
    functionLinenumberEnd: 1070
    functionName: gf_fileio_check
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fileio_check(FILE *fp)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 7
    argCount: 1
    argNames:
    - fp
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1085
      start: 1072
    functionDepth: 0
    functionLinenumber: 1072
    functionLinenumberEnd: 1085
    functionName: GF_FileIOWriteState::gf_fileio_write_ready
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FileIOWriteState gf_fileio_write_ready(FILE *fp)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 7
    argCount: 1
    argNames:
    - fp
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1098
      start: 1087
    functionDepth: 0
    functionLinenumber: 1087
    functionLinenumberEnd: 1098
    functionName: gf_fileio_get_write_rate
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_fileio_get_write_rate(FILE *fp)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/utils/os_file.c:1113,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_file.c:1114,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_file.c:1114,1
    - Dst: gf_unregister_file_handle
      Src: /src/gpac/src/utils/os_file.c:1121,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1122,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1123,1
    - Dst: gf_fileio_del
      Src: /src/gpac/src/utils/os_file.c:1124,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_file.c:1127,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_file.c:1132,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_file.c:1136,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/utils/os_file.c:1137,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_file.c:1137,1
    - Dst: gf_fileio_from_mem
      Src: /src/gpac/src/utils/os_file.c:1152,1
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/utils/os_file.c:1153,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 42
    argCount: 4
    argNames:
    - fileio_ref
    - url
    - mode
    - out_error
    argTypes:
    - GF_FileIO*
    - char*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1158
      start: 1111
    functionDepth: 4
    functionLinenumber: 1111
    functionLinenumberEnd: 1158
    functionName: gfio_blob_open
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fileio_del
    - strcmp
    - gf_fileio_from_mem
    - gf_unregister_file_handle
    - gf_crc_32
    - strlen
    - gf_fileio_get_udta
    linkageType: ''
    returnType: GF_FileIO
    signature: GF_FileIO *gfio_blob_open(GF_FileIO *fileio_ref, const char *url, const
      char *mode, GF_Err *out_error)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/utils/os_file.c:1162,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 3
    argNames:
    - fileio
    - offset
    - whence
    argTypes:
    - GF_FileIO*
    - u64
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1181
      start: 1160
    functionDepth: 1
    functionLinenumber: 1160
    functionLinenumberEnd: 1181
    functionName: gfio_blob_seek
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - gf_fileio_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gfio_blob_seek(GF_FileIO *fileio, u64 offset, s32 whence)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/utils/os_file.c:1184,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_file.c:1188,1
    - Dst: assert
      Src: /src/gpac/src/utils/os_file.c:1190,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - fileio
    - buffer
    - bytes
    argTypes:
    - GF_FileIO*
    - u8*
    - u32
    assertStmts:
    - condition: (blob->pos<=blob->size)
      pos:
        line_end: 1189
        line_start: 1189
        source_file: /src/gpac/src/utils/os_file.c
    constantsTouched: []
    func_position:
      end: 1193
      start: 1182
    functionDepth: 1
    functionLinenumber: 1182
    functionLinenumberEnd: 1193
    functionName: gfio_blob_read
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - memcpy
    - assert
    - gf_fileio_get_udta
    linkageType: ''
    returnType: u32
    signature: u32 gfio_blob_read(GF_FileIO *fileio, u8 *buffer, u32 bytes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/utils/os_file.c:1196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1198
      start: 1194
    functionDepth: 1
    functionLinenumber: 1194
    functionLinenumberEnd: 1198
    functionName: gfio_blob_tell
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - gf_fileio_get_udta
    linkageType: ''
    returnType: s64
    signature: s64 gfio_blob_tell(GF_FileIO *fileio)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/utils/os_file.c:1201,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1204
      start: 1199
    functionDepth: 1
    functionLinenumber: 1199
    functionLinenumberEnd: 1204
    functionName: gfio_blob_eof
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - gf_fileio_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool gfio_blob_eof(GF_FileIO *fileio)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/utils/os_file.c:1208,1
    - Dst: memchr
      Src: /src/gpac/src/utils/os_file.c:1213,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_file.c:1219,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - fileio
    - ptr
    - size
    argTypes:
    - GF_FileIO*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1223
      start: 1206
    functionDepth: 1
    functionLinenumber: 1206
    functionLinenumberEnd: 1223
    functionName: gfio_blob_gets
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - memcpy
    - memchr
    - gf_fileio_get_udta
    linkageType: ''
    returnType: char
    signature: char *gfio_blob_gets(GF_FileIO *fileio, char *ptr, u32 size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/os_file.c:1243,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_file.c:1256,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/os_file.c:1260,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_file.c:1261,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_file.c:1262,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/os_file.c:1265,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/os_file.c:1266,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/os_file.c:1267,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/os_file.c:1268,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 9
    argNames:
    - url
    - udta
    - open
    - seek
    - read
    - write
    - tell
    - eof
    - printf
    argTypes:
    - char*
    - void*
    - gfio_open_proc
    - gfio_seek_proc
    - gfio_read_proc
    - gfio_write_proc
    - gfio_tell_proc
    - gfio_eof_proc
    - gfio_printf_proc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1271
      start: 1227
    functionDepth: 1
    functionLinenumber: 1227
    functionLinenumberEnd: 1271
    functionName: gf_fileio_new
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 4
    functionsReached:
    - gf_mx_p
    - gf_strdup
    - gf_list_new
    - GF_SAFEALLOC
    - sprintf
    - gf_mx_v
    - gf_list_add
    - gf_sys_clock
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT *gf_fileio_new(char *url, void *udta,\n\tgfio_open_proc
      open,\n\tgfio_seek_proc seek,\n\tgfio_read_proc read,\n\tgfio_write_proc write,\n\tgfio_tell_proc
      tell,\n\tgfio_eof_proc eof,\n\tgfio_printf_proc printf)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - gfio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1277
      start: 1273
    functionDepth: 0
    functionLinenumber: 1273
    functionLinenumberEnd: 1277
    functionName: gf_fileio_url
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_fileio_url(GF_FileIO *gfio)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - gfio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1283
      start: 1279
    functionDepth: 0
    functionLinenumber: 1279
    functionLinenumberEnd: 1283
    functionName: gf_fileio_resource_url
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_fileio_resource_url(GF_FileIO *gfio)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/os_file.c:1289,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/os_file.c:1290,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/os_file.c:1291,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_file.c:1294,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_file.c:1295,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/os_file.c:1298,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1300,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1301,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1302,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1303,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - gfio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1306
      start: 1285
    functionDepth: 3
    functionLinenumber: 1285
    functionLinenumberEnd: 1306
    functionName: gf_fileio_del
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 4
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_list_count
    - gf_mx_v
    - gf_list_del_item
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fileio_del(GF_FileIO *gfio)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - gfio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1312
      start: 1308
    functionDepth: 0
    functionLinenumber: 1308
    functionLinenumberEnd: 1312
    functionName: gf_fileio_get_udta
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 21
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_fileio_get_udta(GF_FileIO *gfio)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_FileIO*::open
      Src: /src/gpac/src/utils/os_file.c:1325,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - gfio_ref
    - url
    - mode
    - out_err
    argTypes:
    - GF_FileIO*
    - char*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1326
      start: 1314
    functionDepth: 0
    functionLinenumber: 1314
    functionLinenumberEnd: 1326
    functionName: gf_fileio_open_url
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 2
    functionsReached:
    - GF_FileIO*::open
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_fileio_open_url(GF_FileIO *gfio_ref, const char *url,
      const char *mode, GF_Err *out_err)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_FileIO*::read
      Src: /src/gpac/src/utils/os_file.c:1332,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - gfio
    - buffer
    - nb_bytes
    argTypes:
    - GF_FileIO*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1334
      start: 1328
    functionDepth: 0
    functionLinenumber: 1328
    functionLinenumberEnd: 1334
    functionName: gf_fileio_read
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - GF_FileIO*::read
    linkageType: ''
    returnType: u32
    signature: u32 gf_fileio_read(GF_FileIO *gfio, u8 *buffer, u32 nb_bytes)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_FileIO*::write
      Src: /src/gpac/src/utils/os_file.c:1340,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - gfio
    - buffer
    - nb_bytes
    argTypes:
    - GF_FileIO*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1341
      start: 1336
    functionDepth: 0
    functionLinenumber: 1336
    functionLinenumberEnd: 1341
    functionName: gf_fileio_write
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - GF_FileIO*::write
    linkageType: ''
    returnType: u32
    signature: u32 gf_fileio_write(GF_FileIO *gfio, u8 *buffer, u32 nb_bytes)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_FileIO*::printf
      Src: /src/gpac/src/utils/os_file.c:1347,1
    - Dst: va_copy
      Src: /src/gpac/src/utils/os_file.c:1351,1
    - Dst: vsnprintf
      Src: /src/gpac/src/utils/os_file.c:1352,1
    - Dst: va_end
      Src: /src/gpac/src/utils/os_file.c:1353,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/os_file.c:1357,1
    - Dst: vsnprintf
      Src: /src/gpac/src/utils/os_file.c:1359,1
    - Dst: GF_FileIO*::write
      Src: /src/gpac/src/utils/os_file.c:1361,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - gfio
    - format
    - args
    argTypes:
    - GF_FileIO*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1362
      start: 1343
    functionDepth: 0
    functionLinenumber: 1343
    functionLinenumberEnd: 1362
    functionName: gf_fileio_printf
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 1
    functionsReached:
    - GF_FileIO*::write
    - GF_FileIO*::printf
    - va_end
    - va_copy
    - vsnprintf
    - gf_realloc
    linkageType: ''
    returnType: int
    signature: int gf_fileio_printf(GF_FileIO *gfio, const char *format, va_list args)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - gfio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1368
      start: 1364
    functionDepth: 0
    functionLinenumber: 1364
    functionLinenumberEnd: 1368
    functionName: gf_fileio_write_mode
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fileio_write_mode(GF_FileIO *gfio)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - gfio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1374
      start: 1370
    functionDepth: 0
    functionLinenumber: 1370
    functionLinenumberEnd: 1374
    functionName: gf_fileio_read_mode
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fileio_read_mode(GF_FileIO *gfio)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_file.c:1383,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_file.c:1385,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_file.c:1386,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_file.c:1387,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/os_file.c:1390,1
    - Dst: gf_list_find
      Src: /src/gpac/src/utils/os_file.c:1391,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/os_file.c:1392,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/os_file.c:1395,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_file.c:1397,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 1
    argNames:
    - url
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1401
      start: 1376
    functionDepth: 2
    functionLinenumber: 1376
    functionLinenumberEnd: 1401
    functionName: gf_fileio_from_url
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 5
    functionsReached:
    - gf_mx_p
    - sscanf
    - gf_list_find
    - sprintf
    - strncmp
    - strcmp
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_fileio_from_url(const char *url)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/utils/os_file.c:1406,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - url
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1408
      start: 1403
    functionDepth: 3
    functionLinenumber: 1403
    functionLinenumberEnd: 1408
    functionName: gf_fileio_translate_url
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 2
    functionsReached:
    - gf_fileio_from_url
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_fileio_translate_url(const char *url)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_FileIO*::eof
      Src: /src/gpac/src/utils/os_file.c:1413,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1414
      start: 1410
    functionDepth: 0
    functionLinenumber: 1410
    functionLinenumberEnd: 1414
    functionName: gf_fileio_eof
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - GF_FileIO*::eof
    linkageType: ''
    returnType: Bool
    signature: Bool gf_fileio_eof(GF_FileIO *fileio)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_FileIO*::write
      Src: /src/gpac/src/utils/os_file.c:1419,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1421
      start: 1416
    functionDepth: 0
    functionLinenumber: 1416
    functionLinenumberEnd: 1421
    functionName: gf_fileio_flush
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - GF_FileIO*::write
    linkageType: ''
    returnType: int
    signature: int gf_fileio_flush(GF_FileIO *fileio)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_FileIO*::open
      Src: /src/gpac/src/utils/os_file.c:1428,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/utils/os_file.c:1430,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - gfio
    - new_res_url
    argTypes:
    - GF_FileIO*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1431
      start: 1423
    functionDepth: 1
    functionLinenumber: 1423
    functionLinenumberEnd: 1431
    functionName: gf_fileio_factory
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 1
    functionsReached:
    - gf_fileio_url
    - GF_FileIO*::open
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_fileio_factory(GF_FileIO *gfio, const char *new_res_url)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - gfio
    - bytes_done
    - file_size
    - cache_state
    - bytes_per_sec
    argTypes:
    - GF_FileIO*
    - u64
    - u64
    - GF_FileIOCacheState
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1441
      start: 1433
    functionDepth: 0
    functionLinenumber: 1433
    functionLinenumberEnd: 1441
    functionName: gf_fileio_set_stats
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fileio_set_stats(GF_FileIO *gfio, u64 bytes_done, u64
      file_size, GF_FileIOCacheState cache_state, u32 bytes_per_sec)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - gfio
    - write_state
    argTypes:
    - GF_FileIO*
    - GF_FileIOWriteState
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1448
      start: 1443
    functionDepth: 0
    functionLinenumber: 1443
    functionLinenumberEnd: 1448
    functionName: gf_fileio_set_write_state
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fileio_set_write_state(GF_FileIO *gfio, GF_FileIOWriteState
      write_state)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_check
      Src: /src/gpac/src/utils/os_file.c:1453,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 5
    argNames:
    - gfio
    - bytes_done
    - file_size
    - cache_state
    - bytes_per_sec
    argTypes:
    - GF_FileIO*
    - u64*
    - u64*
    - GF_FileIOCacheState*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1461
      start: 1450
    functionDepth: 1
    functionLinenumber: 1450
    functionLinenumberEnd: 1461
    functionName: gf_fileio_get_stats
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - gf_fileio_check
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fileio_get_stats(GF_FileIO *gfio, u64 *bytes_done, u64
      *file_size, GF_FileIOCacheState *cache_state, u32 *bytes_per_sec)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1469
      start: 1463
    functionDepth: 0
    functionLinenumber: 1463
    functionLinenumberEnd: 1469
    functionName: gf_fileio_tag_main_thread
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fileio_tag_main_thread(GF_FileIO *fileio)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/utils/os_file.c:1474,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - url
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1477
      start: 1471
    functionDepth: 3
    functionLinenumber: 1471
    functionLinenumberEnd: 1477
    functionName: gf_fileio_is_main_thread
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - gf_fileio_from_url
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fileio_is_main_thread(const char *url)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_check
      Src: /src/gpac/src/utils/os_file.c:1486,1
    - Dst: GF_FileIO*::tell
      Src: /src/gpac/src/utils/os_file.c:1489,1
    - Dst: ftell
      Src: /src/gpac/src/utils/os_file.c:1493,1
    - Dst: ftello64
      Src: /src/gpac/src/utils/os_file.c:1496,1
    - Dst: ftell
      Src: /src/gpac/src/utils/os_file.c:1498,1
    - Dst: _ftelli64
      Src: /src/gpac/src/utils/os_file.c:1501,1
    - Dst: ftello64
      Src: /src/gpac/src/utils/os_file.c:1503,1
    - Dst: ftello
      Src: /src/gpac/src/utils/os_file.c:1505,1
    - Dst: ftell
      Src: /src/gpac/src/utils/os_file.c:1507,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 1
    argNames:
    - fp
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1509
      start: 1481
    functionDepth: 1
    functionLinenumber: 1481
    functionLinenumberEnd: 1509
    functionName: gf_ftell
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 20
    functionsReached:
    - gf_fileio_check
    - ftell
    - _ftelli64
    - ftello64
    - GF_FileIO*::tell
    - ftello
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_ftell(FILE *fp)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_check
      Src: /src/gpac/src/utils/os_file.c:1515,1
    - Dst: GF_FileIO*::seek
      Src: /src/gpac/src/utils/os_file.c:1518,1
    - Dst: fseek
      Src: /src/gpac/src/utils/os_file.c:1526,1
    - Dst: fseeko64
      Src: /src/gpac/src/utils/os_file.c:1529,1
    - Dst: fseek
      Src: /src/gpac/src/utils/os_file.c:1531,1
    - Dst: _fseeki64
      Src: /src/gpac/src/utils/os_file.c:1534,1
    - Dst: fseeko64
      Src: /src/gpac/src/utils/os_file.c:1536,1
    - Dst: fseeko
      Src: /src/gpac/src/utils/os_file.c:1538,1
    - Dst: fseek
      Src: /src/gpac/src/utils/os_file.c:1540,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 3
    argNames:
    - fp
    - offset
    - whence
    argTypes:
    - FILE*
    - s64
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1542
      start: 1511
    functionDepth: 1
    functionLinenumber: 1511
    functionLinenumberEnd: 1542
    functionName: gf_fseek
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 36
    functionsReached:
    - gf_fileio_check
    - _fseeki64
    - fseeko
    - GF_FileIO*::seek
    - fseeko64
    - fseek
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fseek(FILE *fp, s64 offset, s32 whence)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_blob_get
      Src: /src/gpac/src/utils/os_file.c:1550,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/utils/os_file.c:1552,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1555,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/os_file.c:1559,1
    - Dst: gf_fileio_new
      Src: /src/gpac/src/utils/os_file.c:1563,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1565,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/utils/os_file.c:1570,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_file.c:1570,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 1
    argNames:
    - file_name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1572
      start: 1545
    functionDepth: 4
    functionLinenumber: 1545
    functionLinenumberEnd: 1572
    functionName: gf_fileio_from_blob
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fileio_new
    - GF_SAFEALLOC
    - gf_blob_get
    - GF_LOG
    - gf_blob_release
    - gf_crc_32
    - strlen
    linkageType: ''
    returnType: GF_FileIO
    signature: GF_FileIO *gf_fileio_from_blob(const char *file_name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/os_file.c:1578,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_file.c:1582,1
    - Dst: gf_fileio_new
      Src: /src/gpac/src/utils/os_file.c:1583,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1585,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/utils/os_file.c:1590,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_file.c:1590,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_file.c:1591,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/utils/os_file.c:1591,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - URL
    - data
    - size
    argTypes:
    - char*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1593
      start: 1574
    functionDepth: 2
    functionLinenumber: 1574
    functionLinenumberEnd: 1593
    functionName: gf_fileio_from_mem
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_fileio_new
    - gf_strdup
    - gf_fileio_url
    - GF_SAFEALLOC
    - gf_fopen
    - gf_crc_32
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_fileio_from_mem(const char *URL, const u8 *data, u32
      size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - thread_id
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1601
      start: 1598
    functionDepth: 0
    functionLinenumber: 1598
    functionLinenumberEnd: 1601
    functionName: gf_set_mainloop_thread
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_set_mainloop_thread(u32 thread_id)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_file.c:1612,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_file.c:1617,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_file.c:1619,1
    - Dst: gf_fileio_from_blob
      Src: /src/gpac/src/utils/os_file.c:1621,1
    - Dst: gf_register_file_handle
      Src: /src/gpac/src/utils/os_file.c:1623,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_file.c:1628,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_file.c:1630,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1637,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/utils/os_file.c:1640,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/utils/os_file.c:1642,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:1645,1
    - Dst: gf_fileio_read_mode
      Src: /src/gpac/src/utils/os_file.c:1645,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1646,1
    - Dst: strpbrk
      Src: /src/gpac/src/utils/os_file.c:1649,1
    - Dst: gf_fileio_write_mode
      Src: /src/gpac/src/utils/os_file.c:1649,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1650,1
    - Dst: gf_fileio_open_url
      Src: /src/gpac/src/utils/os_file.c:1653,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1656,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/os_file.c:1656,1
    - Dst: gf_register_file_handle
      Src: /src/gpac/src/utils/os_file.c:1661,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1665,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:1666,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_file.c:1667,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:1668,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:1669,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:1670,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:1671,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/utils/os_file.c:1677,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/utils/os_file.c:1678,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1680,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/os_file.c:1680,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1682,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:1687,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:1688,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1691,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:1696,1
    - Dst: gf_th_id
      Src: /src/gpac/src/utils/os_file.c:1696,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1697,1
    - Dst: gf_utf8_to_wcs
      Src: /src/gpac/src/utils/os_file.c:1705,1
    - Dst: gf_utf8_to_wcs
      Src: /src/gpac/src/utils/os_file.c:1706,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1709,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1710,1
    - Dst: _wfsopen
      Src: /src/gpac/src/utils/os_file.c:1713,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1714,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1715,1
    - Dst: fopen64
      Src: /src/gpac/src/utils/os_file.c:1717,1
    - Dst: fopen
      Src: /src/gpac/src/utils/os_file.c:1719,1
    - Dst: fopen
      Src: /src/gpac/src/utils/os_file.c:1721,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_file.c:1725,1
    - Dst: gf_register_file_handle
      Src: /src/gpac/src/utils/os_file.c:1726,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1728,1
    - Dst: strpbrk
      Src: /src/gpac/src/utils/os_file.c:1730,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_file.c:1732,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1733,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1735,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 103
    argCount: 4
    argNames:
    - file_name
    - parent_name
    - mode
    - no_warn
    argTypes:
    - char*
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1740
      start: 1604
    functionDepth: 5
    functionLinenumber: 1604
    functionLinenumberEnd: 1740
    functionName: gf_fopen_ex
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 3
    functionsReached:
    - gf_free
    - gf_dir_exists
    - _wfsopen
    - gf_utf8_to_wcs
    - GetLastError
    - strpbrk
    - gf_fileio_from_url
    - gf_fileio_from_blob
    - fopen64
    - strchr
    - gf_strdup
    - fopen
    - strncmp
    - gf_fileio_read_mode
    - GF_LOG
    - gf_fileio_open_url
    - strstr
    - gf_mkdir
    - gf_error_to_string
    - gf_fileio_write_mode
    - gf_th_id
    - strcmp
    - gf_register_file_handle
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_fopen_ex(const char *file_name, const char *parent_name,
      const char *mode, Bool no_warn)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_utf8_to_wcs
      Src: /src/gpac/src/utils/os_file.c:1749,1
    - Dst: _wopen
      Src: /src/gpac/src/utils/os_file.c:1751,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1752,1
    - Dst: open
      Src: /src/gpac/src/utils/os_file.c:1755,1
    - Dst: open
      Src: /src/gpac/src/utils/os_file.c:1757,1
    - Dst: open
      Src: /src/gpac/src/utils/os_file.c:1759,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - file_name
    - oflags
    - uflags
    argTypes:
    - char*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1762
      start: 1743
    functionDepth: 1
    functionLinenumber: 1743
    functionLinenumberEnd: 1762
    functionName: gf_fd_open
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 3
    functionsReached:
    - gf_free
    - _wopen
    - open
    - gf_utf8_to_wcs
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fd_open(const char *file_name, u32 oflags, u32 uflags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/utils/os_file.c:1767,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - file_name
    - mode
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1768
      start: 1764
    functionDepth: 6
    functionLinenumber: 1764
    functionLinenumberEnd: 1768
    functionName: gf_fopen
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 133
    functionsReached:
    - gf_fopen_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_fopen(const char *file_name, const char *mode)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_unregister_file_handle
      Src: /src/gpac/src/utils/os_file.c:1776,1
    - Dst: gf_fileio_check
      Src: /src/gpac/src/utils/os_file.c:1778,1
    - Dst: gf_fileio_open_url
      Src: /src/gpac/src/utils/os_file.c:1780,1
    - Dst: fclose
      Src: /src/gpac/src/utils/os_file.c:1784,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - file
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1785
      start: 1770
    functionDepth: 4
    functionLinenumber: 1770
    functionLinenumberEnd: 1785
    functionName: gf_fclose
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 142
    functionsReached:
    - fclose
    - gf_fileio_check
    - gf_fileio_open_url
    - gf_unregister_file_handle
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fclose(FILE *file)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_check
      Src: /src/gpac/src/utils/os_file.c:1796,1
    - Dst: gf_fileio_write
      Src: /src/gpac/src/utils/os_file.c:1797,1
    - Dst: fwrite
      Src: /src/gpac/src/utils/os_file.c:1801,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1804,1
    - Dst: _get_errno
      Src: /src/gpac/src/utils/os_file.c:1808,1
    - Dst: strerror_r
      Src: /src/gpac/src/utils/os_file.c:1815,1
    - Dst: strerror_r
      Src: /src/gpac/src/utils/os_file.c:1817,1
    - Dst: strerror
      Src: /src/gpac/src/utils/os_file.c:1820,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1823,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - ptr
    - nb_bytes
    - stream
    argTypes:
    - void*
    - size_t
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1827
      start: 1791
    functionDepth: 1
    functionLinenumber: 1791
    functionLinenumberEnd: 1827
    functionName: gf_fwrite
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 41
    functionsReached:
    - gf_fileio_check
    - fwrite
    - GF_LOG
    - gf_fileio_write
    - strerror
    - _get_errno
    - strerror_r
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fwrite(const void *ptr, size_t nb_bytes, FILE *stream)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_check
      Src: /src/gpac/src/utils/os_file.c:1833,1
    - Dst: gf_fileio_read
      Src: /src/gpac/src/utils/os_file.c:1834,1
    - Dst: fread
      Src: /src/gpac/src/utils/os_file.c:1837,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - ptr
    - nbytes
    - stream
    argTypes:
    - void*
    - size_t
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1839
      start: 1829
    functionDepth: 1
    functionLinenumber: 1829
    functionLinenumberEnd: 1839
    functionName: gf_fread
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 35
    functionsReached:
    - gf_fileio_check
    - gf_fileio_read
    - fread
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fread(void *ptr, size_t nbytes, FILE *stream)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_check
      Src: /src/gpac/src/utils/os_file.c:1844,1
    - Dst: GF_FileIO*::gets
      Src: /src/gpac/src/utils/os_file.c:1847,1
    - Dst: gf_fileio_read
      Src: /src/gpac/src/utils/os_file.c:1852,1
    - Dst: fgets
      Src: /src/gpac/src/utils/os_file.c:1863,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 3
    argNames:
    - ptr
    - size
    - stream
    argTypes:
    - char*
    - size_t
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1864
      start: 1841
    functionDepth: 1
    functionLinenumber: 1841
    functionLinenumberEnd: 1864
    functionName: gf_fgets
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 11
    functionsReached:
    - GF_FileIO*::gets
    - fgets
    - gf_fileio_check
    - gf_fileio_read
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_fgets(char *ptr, size_t size, FILE *stream)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_check
      Src: /src/gpac/src/utils/os_file.c:1869,1
    - Dst: gf_fileio_read
      Src: /src/gpac/src/utils/os_file.c:1872,1
    - Dst: fgetc
      Src: /src/gpac/src/utils/os_file.c:1876,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - stream
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1877
      start: 1866
    functionDepth: 1
    functionLinenumber: 1866
    functionLinenumberEnd: 1877
    functionName: gf_fgetc
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 1
    functionsReached:
    - fgetc
    - gf_fileio_check
    - gf_fileio_read
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fgetc(FILE *stream)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_check
      Src: /src/gpac/src/utils/os_file.c:1882,1
    - Dst: gf_fileio_write
      Src: /src/gpac/src/utils/os_file.c:1887,1
    - Dst: fputc
      Src: /src/gpac/src/utils/os_file.c:1891,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - val
    - stream
    argTypes:
    - int
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1892
      start: 1879
    functionDepth: 1
    functionLinenumber: 1879
    functionLinenumberEnd: 1892
    functionName: gf_fputc
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 3
    functionsReached:
    - gf_fileio_write
    - gf_fileio_check
    - fputc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fputc(int val, FILE *stream)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_check
      Src: /src/gpac/src/utils/os_file.c:1897,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_file.c:1899,1
    - Dst: gf_fileio_write
      Src: /src/gpac/src/utils/os_file.c:1900,1
    - Dst: fputs
      Src: /src/gpac/src/utils/os_file.c:1904,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - buf
    - stream
    argTypes:
    - char*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1905
      start: 1894
    functionDepth: 1
    functionLinenumber: 1894
    functionLinenumberEnd: 1905
    functionName: gf_fputs
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 2
    functionsReached:
    - fputs
    - gf_fileio_write
    - gf_fileio_check
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fputs(const char *buf, FILE *stream)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/gpac/src/utils/os_file.c:1912,1
    - Dst: gf_fileio_check
      Src: /src/gpac/src/utils/os_file.c:1913,1
    - Dst: gf_fileio_printf
      Src: /src/gpac/src/utils/os_file.c:1914,1
    - Dst: vfprintf
      Src: /src/gpac/src/utils/os_file.c:1916,1
    - Dst: va_end
      Src: /src/gpac/src/utils/os_file.c:1918,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - stream
    - format
    argTypes:
    - FILE*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1920
      start: 1907
    functionDepth: 1
    functionLinenumber: 1907
    functionLinenumberEnd: 1920
    functionName: gf_fprintf
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 435
    functionsReached:
    - gf_fileio_check
    - va_end
    - va_start
    - vfprintf
    - gf_fileio_printf
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fprintf(FILE *stream, const char *format, ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_check
      Src: /src/gpac/src/utils/os_file.c:1926,1
    - Dst: gf_fileio_printf
      Src: /src/gpac/src/utils/os_file.c:1927,1
    - Dst: vfprintf
      Src: /src/gpac/src/utils/os_file.c:1929,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - stream
    - format
    - args
    argTypes:
    - FILE*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1932
      start: 1922
    functionDepth: 1
    functionLinenumber: 1922
    functionLinenumberEnd: 1932
    functionName: gf_vfprintf
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - vfprintf
    - gf_fileio_check
    - gf_fileio_printf
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_vfprintf(FILE *stream, const char *format, va_list args)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_check
      Src: /src/gpac/src/utils/os_file.c:1937,1
    - Dst: gf_fileio_flush
      Src: /src/gpac/src/utils/os_file.c:1938,1
    - Dst: fflush
      Src: /src/gpac/src/utils/os_file.c:1940,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - stream
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1941
      start: 1934
    functionDepth: 1
    functionLinenumber: 1934
    functionLinenumberEnd: 1941
    functionName: gf_fflush
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 6
    functionsReached:
    - gf_fileio_flush
    - gf_fileio_check
    - fflush
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fflush(FILE *stream)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_check
      Src: /src/gpac/src/utils/os_file.c:1948,1
    - Dst: gf_fileio_eof
      Src: /src/gpac/src/utils/os_file.c:1949,1
    - Dst: feof
      Src: /src/gpac/src/utils/os_file.c:1951,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - stream
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1952
      start: 1943
    functionDepth: 1
    functionLinenumber: 1943
    functionLinenumberEnd: 1952
    functionName: gf_feof
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 3
    functionsReached:
    - gf_fileio_check
    - gf_fileio_eof
    - feof
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_feof(FILE *stream)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_check
      Src: /src/gpac/src/utils/os_file.c:1958,1
    - Dst: ferror
      Src: /src/gpac/src/utils/os_file.c:1961,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - stream
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1962
      start: 1955
    functionDepth: 1
    functionLinenumber: 1955
    functionLinenumberEnd: 1962
    functionName: gf_ferror
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 3
    functionsReached:
    - gf_fileio_check
    - ferror
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_ferror(FILE *stream)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_check
      Src: /src/gpac/src/utils/os_file.c:1969,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/os_file.c:1972,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/os_file.c:1977,1
    - Dst: gf_ftell
      Src: /src/gpac/src/utils/os_file.c:1978,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/os_file.c:1979,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - fp
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1981
      start: 1964
    functionDepth: 1
    functionLinenumber: 1964
    functionLinenumberEnd: 1981
    functionName: gf_fsize
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 18
    functionsReached:
    - gf_fileio_check
    - gf_fseek
    - gf_ftell
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fsize(FILE *fp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _fstat64
      Src: /src/gpac/src/utils/os_file.c:1994,1
    - Dst: fstat
      Src: /src/gpac/src/utils/os_file.c:1997,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - fd
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2004
      start: 1984
    functionDepth: 0
    functionLinenumber: 1984
    functionLinenumberEnd: 2004
    functionName: gf_fd_fsize
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 2
    functionsReached:
    - fstat
    - _fstat64
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fd_fsize(int fd)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_file.c:2016,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_file.c:2023,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2033
      start: 2011
    functionDepth: 0
    functionLinenumber: 2011
    functionLinenumberEnd: 2033
    functionName: gf_file_basename
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 18
    functionsReached:
    - strrchr
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_file_basename(const char* filename)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_file.c:2043,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/utils/os_file.c:2044,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/utils/os_file.c:2045,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/utils/os_file.c:2047,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_file.c:2050,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_file.c:2052,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_file.c:2054,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 23
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2067
      start: 2038
    functionDepth: 3
    functionLinenumber: 2038
    functionLinenumberEnd: 2067
    functionName: gf_file_ext_start
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 21
    functionsReached:
    - strrchr
    - gf_fileio_from_url
    - strncmp
    - strcmp
    - gf_file_basename
    - gf_fileio_resource_url
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_file_ext_start(const char* filename)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2073,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/src/utils/os_file.c:2078,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_file.c:2080,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_file.c:2080,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2081,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2086,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2087,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/src/utils/os_file.c:2089,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/src/utils/os_file.c:2106,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2109,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2110,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2111,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2114,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_file.c:2120,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_file.c:2121,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_file.c:2122,1
    - Dst: isalnum
      Src: /src/gpac/src/utils/os_file.c:2127,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2135,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2141,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2142,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2146,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_file.c:2148,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/src/utils/os_file.c:2150,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2153,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2154,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/src/utils/os_file.c:2156,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 71
    argCount: 2
    argNames:
    - path
    - assign_sep
    argTypes:
    - char*
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2161
      start: 2070
    functionDepth: 1
    functionLinenumber: 2070
    functionLinenumberEnd: 2161
    functionName: gf_url_colon_suffix
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 17
    functionsReached:
    - strrchr
    - strncmp
    - atoi
    - gf_url_colon_suffix
    - isalnum
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_url_colon_suffix(const char *path, char assign_sep)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - client
    argTypes:
    - RMT_ClientCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 101
    functionName: gf_rmt_get_peer_address
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_rmt_get_peer_address(RMT_ClientCtx* client)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - client
    argTypes:
    - RMT_ClientCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 108
    functionName: gf_rmt_client_get_on_data_task
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_rmt_client_get_on_data_task(RMT_ClientCtx* client)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_rmt_get_settings
      Src: /src/gpac/src/utils/rmt_ws.c:112,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - rmt
    - task
    - cbk
    argTypes:
    - RMT_WS*
    - void*
    - rmt_on_new_client_cbk
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 117
    functionName: gf_rmt_set_on_new_client_cbk
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 2
    functionsReached:
    - gf_rmt_get_settings
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rmt_set_on_new_client_cbk(RMT_WS* rmt, void *task, rmt_on_new_client_cbk
      cbk)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - rmt
    argTypes:
    - RMT_WS*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 123
    functionName: gf_rmt_get_on_new_client_task
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_rmt_get_on_new_client_task(RMT_WS* rmt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:127,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - client
    - task
    - cbk
    argTypes:
    - RMT_ClientCtx*
    - void*
    - rmt_client_on_del_cbk
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 132
    functionName: gf_rmt_client_set_on_del_cbk
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 3
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rmt_client_set_on_del_cbk(RMT_ClientCtx* client, void*
      task, rmt_client_on_del_cbk cbk)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - client
    argTypes:
    - RMT_ClientCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 139
    functionName: gf_rmt_client_get_on_del_task
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_rmt_client_get_on_del_task(RMT_ClientCtx* client)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - client
    argTypes:
    - RMT_ClientCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 146
    functionName: gf_rmt_client_get_rmt
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_rmt_client_get_rmt(RMT_ClientCtx* client)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:153,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:154,1
    - Dst: RMT_ClientCtx*::on_del_cbk
      Src: /src/gpac/src/utils/rmt_ws.c:157,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/utils/rmt_ws.c:162,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/utils/rmt_ws.c:165,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:170,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/utils/rmt_ws.c:171,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:177,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:179,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:182,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:185,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 1
    argNames:
    - client
    argTypes:
    - RMT_ClientCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 149
    functionDepth: 2
    functionLinenumber: 149
    functionLinenumberEnd: 186
    functionName: rmt_clientctx_del
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_sk_del
    - gf_sk_group_unregister
    - RMT_ClientCtx*::on_del_cbk
    - gf_dm_sess_del
    linkageType: ''
    returnType: void
    signature: void rmt_clientctx_del(RMT_ClientCtx* client)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/rmt_ws.c:190,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/utils/rmt_ws.c:191,1
    - Dst: rmt_clientctx_del
      Src: /src/gpac/src/utils/rmt_ws.c:192,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/rmt_ws.c:195,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/utils/rmt_ws.c:201,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/utils/rmt_ws.c:203,1
    - Dst: gf_sk_group_del
      Src: /src/gpac/src/utils/rmt_ws.c:207,1
    - Dst: gf_dm_del
      Src: /src/gpac/src/utils/rmt_ws.c:209,1
    - Dst: gf_ssl_server_context_del
      Src: /src/gpac/src/utils/rmt_ws.c:213,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:215,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - RMT_ServerCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 188
    functionDepth: 3
    functionLinenumber: 188
    functionLinenumberEnd: 221
    functionName: rmt_serverctx_reset
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - rmt_clientctx_del
    - gf_sk_group_unregister
    - gf_sk_del
    - gf_list_count
    - gf_sk_group_del
    - gf_dm_del
    - gf_ssl_server_context_del
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void rmt_serverctx_reset(RMT_ServerCtx* ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/rmt_ws.c:227,1
    - Dst: rmt_clientctx_del
      Src: /src/gpac/src/utils/rmt_ws.c:229,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - client
    argTypes:
    - RMT_ClientCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 223
    functionDepth: 3
    functionLinenumber: 223
    functionLinenumberEnd: 230
    functionName: rmt_close_client
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - rmt_clientctx_del
    - gf_list_del_item
    linkageType: ''
    returnType: void
    signature: void rmt_close_client(RMT_ClientCtx* client)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: httpout_format_date
      Src: /src/gpac/src/utils/rmt_ws.c:238,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/utils/rmt_ws.c:238,1
    - Dst: gf_dm_sess_set_header
      Src: /src/gpac/src/utils/rmt_ws.c:239,1
    - Dst: gf_dm_sess_set_header
      Src: /src/gpac/src/utils/rmt_ws.c:240,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/utils/rmt_ws.c:240,1
    - Dst: strlen
      Src: /src/gpac/src/utils/rmt_ws.c:243,1
    - Dst: gf_dm_sess_set_header
      Src: /src/gpac/src/utils/rmt_ws.c:244,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/rmt_ws.c:245,1
    - Dst: gf_dm_sess_set_header
      Src: /src/gpac/src/utils/rmt_ws.c:246,1
    - Dst: gf_dm_sess_send_reply
      Src: /src/gpac/src/utils/rmt_ws.c:250,1
    - Dst: strlen
      Src: /src/gpac/src/utils/rmt_ws.c:250,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - http_sess
    - responseCode
    - response_body
    - content_type
    argTypes:
    - GF_DownloadSession*
    - int
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 232
    functionDepth: 3
    functionLinenumber: 232
    functionLinenumberEnd: 252
    functionName: rmt_send_reply
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - httpout_format_date
    - gf_dm_sess_set_header
    - sprintf
    - gf_gpac_version
    - gf_dm_sess_send_reply
    - gf_net_get_utc
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rmt_send_reply(GF_DownloadSession* http_sess, int responseCode,
      char* response_body, char* content_type)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:258,1
    - Dst: gf_rmt_get_settings
      Src: /src/gpac/src/utils/rmt_ws.c:261,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:263,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/rmt_ws.c:267,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/rmt_ws.c:275,1
    - Dst: gf_dm_sess_get_resource_name
      Src: /src/gpac/src/utils/rmt_ws.c:277,1
    - Dst: gf_dm_sess_get_header
      Src: /src/gpac/src/utils/rmt_ws.c:278,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:279,1
    - Dst: strncat
      Src: /src/gpac/src/utils/rmt_ws.c:284,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:285,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:291,1
    - Dst: gf_dm_sess_get_header
      Src: /src/gpac/src/utils/rmt_ws.c:296,1
    - Dst: gf_dm_sess_get_header
      Src: /src/gpac/src/utils/rmt_ws.c:297,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/rmt_ws.c:299,1
    - Dst: gf_dm_sess_clear_headers
      Src: /src/gpac/src/utils/rmt_ws.c:301,1
    - Dst: gf_dm_sess_set_header
      Src: /src/gpac/src/utils/rmt_ws.c:302,1
    - Dst: rmt_send_reply
      Src: /src/gpac/src/utils/rmt_ws.c:304,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/rmt_ws.c:311,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/rmt_ws.c:312,1
    - Dst: strlen
      Src: /src/gpac/src/utils/rmt_ws.c:314,1
    - Dst: gf_sha1_csum
      Src: /src/gpac/src/utils/rmt_ws.c:320,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/utils/rmt_ws.c:322,1
    - Dst: gf_dm_sess_clear_headers
      Src: /src/gpac/src/utils/rmt_ws.c:330,1
    - Dst: gf_dm_sess_set_header
      Src: /src/gpac/src/utils/rmt_ws.c:332,1
    - Dst: gf_dm_sess_set_header
      Src: /src/gpac/src/utils/rmt_ws.c:333,1
    - Dst: gf_dm_sess_set_header
      Src: /src/gpac/src/utils/rmt_ws.c:334,1
    - Dst: rmt_send_reply
      Src: /src/gpac/src/utils/rmt_ws.c:336,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:342,1
    - Dst: RMT_Settings*::on_new_client_cbk
      Src: /src/gpac/src/utils/rmt_ws.c:343,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:346,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:349,1
    - Dst: memset
      Src: /src/gpac/src/utils/rmt_ws.c:354,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 53
    argCount: 2
    argNames:
    - usr_cbk
    - parameter
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 254
    functionDepth: 5
    functionLinenumber: 254
    functionLinenumberEnd: 358
    functionName: rmt_on_http_session_data
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_dm_sess_set_header
    - RMT_Settings*::on_new_client_cbk
    - gf_sha1_csum
    - memset
    - gf_strdup
    - gf_dm_sess_get_resource_name
    - strncat
    - gf_dynstrcat
    - GF_LOG
    - gf_dm_sess_clear_headers
    - gf_error_to_string
    - gf_sys_clock_high_res
    - strlen
    - gf_dm_sess_get_header
    - gf_base64_encode
    - strcmp
    - gf_rmt_get_settings
    - rmt_send_reply
    linkageType: ''
    returnType: void
    signature: void rmt_on_http_session_data(void *usr_cbk, GF_NETIO_Parameter *parameter)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: rmt_serverctx_reset
      Src: /src/gpac/src/utils/rmt_ws.c:365,1
    - Dst: gf_rmt_get_settings
      Src: /src/gpac/src/utils/rmt_ws.c:367,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/rmt_ws.c:371,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:372,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/rmt_ws.c:375,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:376,1
    - Dst: gf_ssl_init_lib
      Src: /src/gpac/src/utils/rmt_ws.c:379,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:380,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/rmt_ws.c:384,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/rmt_ws.c:386,1
    - Dst: gf_ssl_server_context_new
      Src: /src/gpac/src/utils/rmt_ws.c:388,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/rmt_ws.c:391,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:395,1
    - Dst: gf_sk_group_new
      Src: /src/gpac/src/utils/rmt_ws.c:401,1
    - Dst: gf_sk_new
      Src: /src/gpac/src/utils/rmt_ws.c:403,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/utils/rmt_ws.c:404,1
    - Dst: gf_sk_listen
      Src: /src/gpac/src/utils/rmt_ws.c:409,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:411,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/rmt_ws.c:411,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/utils/rmt_ws.c:415,1
    - Dst: gf_sk_server_mode
      Src: /src/gpac/src/utils/rmt_ws.c:417,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:418,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/rmt_ws.c:420,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/rmt_ws.c:422,1
    - Dst: gf_dm_new
      Src: /src/gpac/src/utils/rmt_ws.c:423,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/rmt_ws.c:425,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/rmt_ws.c:426,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 44
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - RMT_ServerCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 361
    functionDepth: 4
    functionLinenumber: 361
    functionLinenumberEnd: 430
    functionName: rmt_create_server
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_sk_bind
    - gf_sk_new
    - gf_opts_set_key
    - gf_sk_server_mode
    - gf_sk_group_register
    - gf_file_exists
    - GF_LOG
    - gf_ssl_server_context_new
    - gf_sk_listen
    - gf_ssl_init_lib
    - gf_sk_group_new
    - gf_rmt_get_settings
    - gf_error_to_string
    - gf_dm_new
    - gf_opts_get_bool
    - rmt_serverctx_reset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rmt_create_server(RMT_ServerCtx* ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - client
    - task
    - cbk
    argTypes:
    - RMT_ClientCtx*
    - void*
    - rmt_client_on_data_cbk
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 432
    functionDepth: 0
    functionLinenumber: 432
    functionLinenumberEnd: 438
    functionName: gf_rmt_client_set_on_data_cbk
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rmt_client_set_on_data_cbk(RMT_ClientCtx* client, void*
      task, rmt_client_on_data_cbk cbk)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/rmt_ws.c:446,1
    - Dst: gf_sk_accept
      Src: /src/gpac/src/utils/rmt_ws.c:450,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/utils/rmt_ws.c:451,1
    - Dst: gf_sk_get_remote_address_port
      Src: /src/gpac/src/utils/rmt_ws.c:454,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/rmt_ws.c:455,1
    - Dst: strlen
      Src: /src/gpac/src/utils/rmt_ws.c:455,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:456,1
    - Dst: gf_ssl_new
      Src: /src/gpac/src/utils/rmt_ws.c:461,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:463,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/rmt_ws.c:463,1
    - Dst: rmt_clientctx_del
      Src: /src/gpac/src/utils/rmt_ws.c:464,1
    - Dst: gf_dm_sess_new_server
      Src: /src/gpac/src/utils/rmt_ws.c:470,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/rmt_ws.c:473,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/rmt_ws.c:474,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/rmt_ws.c:476,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:477,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - RMT_ServerCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 440
    functionDepth: 3
    functionLinenumber: 440
    functionLinenumberEnd: 480
    functionName: rmt_server_handle_new_client
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - gf_sk_accept
    - rmt_clientctx_del
    - gf_sk_group_register
    - GF_SAFEALLOC
    - GF_LOG
    - gf_sk_get_remote_address_port
    - gf_dm_sess_new_server
    - sprintf
    - gf_sys_clock_high_res
    - gf_list_add
    - gf_error_to_string
    - gf_ssl_new
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rmt_server_handle_new_client(RMT_ServerCtx* ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/utils/rmt_ws.c:486,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:487,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:488,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:489,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:490,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:493,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:495,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/utils/rmt_ws.c:496,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/utils/rmt_ws.c:498,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/utils/rmt_ws.c:499,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/rmt_ws.c:502,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/utils/rmt_ws.c:506,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:507,1
    - Dst: dm_sess_write
      Src: /src/gpac/src/utils/rmt_ws.c:508,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/utils/rmt_ws.c:510,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:511,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 4
    argNames:
    - client
    - payload
    - size
    - is_binary
    argTypes:
    - RMT_ClientCtx*
    - u8*
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 482
    functionDepth: 9
    functionLinenumber: 482
    functionLinenumberEnd: 515
    functionName: rmt_client_send_payload
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - dm_sess_write
    - gf_free
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - GF_LOG
    - gf_bs_del
    - gf_bs_write_data
    - gf_bs_write_long_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rmt_client_send_payload(RMT_ClientCtx* client, const u8* payload,
      u64 size, Bool is_binary)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: RMT_ClientCtx*::on_data_cbk
      Src: /src/gpac/src/utils/rmt_ws.c:520,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 4
    argNames:
    - client
    - payload
    - size
    - is_binary
    argTypes:
    - RMT_ClientCtx*
    - u8*
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 517
    functionDepth: 0
    functionLinenumber: 517
    functionLinenumberEnd: 530
    functionName: rmt_client_handle_ws_payload
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - RMT_ClientCtx*::on_data_cbk
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rmt_client_handle_ws_payload(RMT_ClientCtx* client, u8* payload,
      u64 size, Bool is_binary)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/rmt_ws.c:536,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/rmt_ws.c:538,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/rmt_ws.c:539,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/rmt_ws.c:540,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/rmt_ws.c:541,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/rmt_ws.c:542,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/rmt_ws.c:544,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/rmt_ws.c:545,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/rmt_ws.c:548,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/utils/rmt_ws.c:549,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/rmt_ws.c:551,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/utils/rmt_ws.c:554,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/rmt_ws.c:560,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/utils/rmt_ws.c:560,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/rmt_ws.c:561,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/utils/rmt_ws.c:561,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:562,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/rmt_ws.c:562,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/utils/rmt_ws.c:562,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/rmt_ws.c:563,1
    - Dst: gf_dm_read_data
      Src: /src/gpac/src/utils/rmt_ws.c:568,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:569,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/rmt_ws.c:569,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:572,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/rmt_ws.c:572,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/rmt_ws.c:575,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/rmt_ws.c:577,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/utils/rmt_ws.c:578,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:590,1
    - Dst: rmt_client_handle_ws_payload
      Src: /src/gpac/src/utils/rmt_ws.c:607,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/utils/rmt_ws.c:614,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:615,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:616,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:617,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:618,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:619,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/rmt_ws.c:620,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/utils/rmt_ws.c:624,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:625,1
    - Dst: dm_sess_write
      Src: /src/gpac/src/utils/rmt_ws.c:626,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/utils/rmt_ws.c:628,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:629,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:641,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:643,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 72
    argCount: 2
    argNames:
    - client
    - bs
    argTypes:
    - RMT_ClientCtx*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 646
      start: 532
    functionDepth: 9
    functionLinenumber: 532
    functionLinenumberEnd: 646
    functionName: rmt_client_handle_ws_frame
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_bs_new
    - gf_bs_get_size
    - gf_bs_available
    - gf_bs_get_content
    - dm_sess_write
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_error_to_string
    - gf_bs_read_u8
    - gf_malloc
    - rmt_client_handle_ws_payload
    - gf_bs_read_long_int
    - gf_bs_del
    - gf_dm_read_data
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rmt_client_handle_ws_frame(RMT_ClientCtx* client, GF_BitStream*
      bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:651,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/utils/rmt_ws.c:654,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:655,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/rmt_ws.c:655,1
    - Dst: gf_dm_read_data
      Src: /src/gpac/src/utils/rmt_ws.c:660,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:661,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/rmt_ws.c:663,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/utils/rmt_ws.c:665,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/rmt_ws.c:667,1
    - Dst: rmt_client_handle_ws_frame
      Src: /src/gpac/src/utils/rmt_ws.c:669,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:671,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/rmt_ws.c:671,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/rmt_ws.c:671,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/utils/rmt_ws.c:676,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - client
    argTypes:
    - RMT_ClientCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 683
      start: 648
    functionDepth: 10
    functionLinenumber: 648
    functionLinenumberEnd: 683
    functionName: rmt_client_handle_event
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_process
    - gf_bs_new
    - GF_LOG
    - gf_bs_del
    - gf_dm_read_data
    - gf_error_to_string
    - gf_errno_str
    - gf_bs_available
    - gf_sys_clock_high_res
    - rmt_client_handle_ws_frame
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rmt_client_handle_event(RMT_ClientCtx* client)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dm_sess_write
      Src: /src/gpac/src/utils/rmt_ws.c:687,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - client
    argTypes:
    - RMT_ClientCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 690
      start: 685
    functionDepth: 2
    functionLinenumber: 685
    functionLinenumberEnd: 690
    functionName: rmt_client_send_ping
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - dm_sess_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rmt_client_send_ping(RMT_ClientCtx* client)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rmt_client_send_payload
      Src: /src/gpac/src/utils/rmt_ws.c:695,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - client
    - msg
    - size
    - is_binary
    argTypes:
    - RMT_ClientCtx*
    - char*
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 697
      start: 692
    functionDepth: 10
    functionLinenumber: 692
    functionLinenumberEnd: 697
    functionName: gf_rmt_client_send_to_ws
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 1
    functionsReached:
    - rmt_client_send_payload
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rmt_client_send_to_ws(RMT_ClientCtx* client, const char*
      msg, u64 size, Bool is_binary)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:703,1
    - Dst: gf_rmt_get_settings
      Src: /src/gpac/src/utils/rmt_ws.c:706,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:709,1
    - Dst: gf_sk_probe
      Src: /src/gpac/src/utils/rmt_ws.c:714,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:716,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/rmt_ws.c:722,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:724,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 1
    argNames:
    - client
    argTypes:
    - RMT_ClientCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 731
      start: 699
    functionDepth: 3
    functionLinenumber: 699
    functionLinenumberEnd: 731
    functionName: rmt_client_should_close
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_sys_clock_high_res
    - gf_rmt_get_settings
    - gf_sk_probe
    linkageType: ''
    returnType: Bool
    signature: Bool rmt_client_should_close(RMT_ClientCtx* client)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_rmt_get_settings
      Src: /src/gpac/src/utils/rmt_ws.c:735,1
    - Dst: gf_sk_group_select
      Src: /src/gpac/src/utils/rmt_ws.c:737,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/utils/rmt_ws.c:742,1
    - Dst: rmt_server_handle_new_client
      Src: /src/gpac/src/utils/rmt_ws.c:744,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/rmt_ws.c:754,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/rmt_ws.c:756,1
    - Dst: rmt_client_should_close
      Src: /src/gpac/src/utils/rmt_ws.c:758,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/rmt_ws.c:760,1
    - Dst: rmt_clientctx_del
      Src: /src/gpac/src/utils/rmt_ws.c:763,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/utils/rmt_ws.c:768,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/rmt_ws.c:773,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:777,1
    - Dst: rmt_client_send_ping
      Src: /src/gpac/src/utils/rmt_ws.c:778,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/rmt_ws.c:780,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/utils/rmt_ws.c:789,1
    - Dst: rmt_client_handle_event
      Src: /src/gpac/src/utils/rmt_ws.c:791,1
    - Dst: gf_sleep
      Src: /src/gpac/src/utils/rmt_ws.c:800,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 36
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - RMT_ServerCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 803
      start: 733
    functionDepth: 11
    functionLinenumber: 733
    functionLinenumberEnd: 803
    functionName: rmt_server_wait_for_event
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - rmt_client_handle_event
    - rmt_server_handle_new_client
    - gf_list_get
    - rmt_clientctx_del
    - rmt_client_send_ping
    - GF_LOG
    - gf_sleep
    - gf_sk_group_select
    - rmt_client_should_close
    - gf_list_count
    - gf_sk_group_sock_is_set
    - gf_rmt_get_settings
    - gf_sys_clock_high_res
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rmt_server_wait_for_event(RMT_ServerCtx* ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/rmt_ws.c:810,1
    - Dst: rmt_create_server
      Src: /src/gpac/src/utils/rmt_ws.c:820,1
    - Dst: rmt_serverctx_reset
      Src: /src/gpac/src/utils/rmt_ws.c:823,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:824,1
    - Dst: rmt_server_wait_for_event
      Src: /src/gpac/src/utils/rmt_ws.c:833,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:837,1
    - Dst: rmt_serverctx_reset
      Src: /src/gpac/src/utils/rmt_ws.c:838,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:839,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 1
    argNames:
    - par
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 805
    functionDepth: 12
    functionLinenumber: 805
    functionLinenumberEnd: 843
    functionName: rmt_ws_thread_main
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - GF_LOG
    - rmt_create_server
    - rmt_server_wait_for_event
    - rmt_serverctx_reset
    linkageType: ''
    returnType: u32
    signature: u32 rmt_ws_thread_main(void* par)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - rmt
    argTypes:
    - RMT_WS*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 852
      start: 847
    functionDepth: 0
    functionLinenumber: 847
    functionLinenumberEnd: 852
    functionName: gf_rmt_get_settings
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: RMT_Settings
    signature: RMT_Settings * gf_rmt_get_settings(RMT_WS* rmt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:861,1
    - Dst: gf_th_stop
      Src: /src/gpac/src/utils/rmt_ws.c:863,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:865,1
    - Dst: gf_th_status
      Src: /src/gpac/src/utils/rmt_ws.c:865,1
    - Dst: gf_th_del
      Src: /src/gpac/src/utils/rmt_ws.c:867,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:873,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - rmt
    argTypes:
    - RMT_WS*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 876
      start: 855
    functionDepth: 1
    functionLinenumber: 855
    functionLinenumberEnd: 876
    functionName: rmt_ws_del
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 2
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_th_stop
    - gf_th_del
    - gf_th_status
    linkageType: ''
    returnType: void
    signature: void rmt_ws_del(RMT_WS* rmt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/rmt_ws.c:881,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:883,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 878
    functionDepth: 1
    functionLinenumber: 878
    functionLinenumberEnd: 901
    functionName: rmt_ws_new
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - GF_SAFEALLOC
    linkageType: ''
    returnType: RMT_WS
    signature: RMT_WS * rmt_ws_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_new
      Src: /src/gpac/src/utils/rmt_ws.c:905,1
    - Dst: gf_th_run
      Src: /src/gpac/src/utils/rmt_ws.c:908,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:910,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/rmt_ws.c:910,1
    - Dst: rmt_ws_del
      Src: /src/gpac/src/utils/rmt_ws.c:911,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - rmt
    argTypes:
    - RMT_WS*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 915
      start: 903
    functionDepth: 2
    functionLinenumber: 903
    functionLinenumberEnd: 915
    functionName: rmt_ws_run
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 2
    functionsReached:
    - gf_th_run
    - GF_LOG
    - gf_th_new
    - rmt_ws_del
    - gf_error_to_string
    linkageType: ''
    returnType: void
    signature: void rmt_ws_run(RMT_WS* rmt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - rmt
    - task
    - cbk
    argTypes:
    - RMT_WS*
    - void*
    - rmt_on_new_client_cbk
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 921
      start: 919
    functionDepth: 0
    functionLinenumber: 919
    functionLinenumberEnd: 921
    functionName: gf_rmt_set_on_new_client_cbk
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_rmt_set_on_new_client_cbk(RMT_WS* rmt, void *task, rmt_on_new_client_cbk
      cbk)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rmt
    argTypes:
    - RMT_WS*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 924
      start: 922
    functionDepth: 0
    functionLinenumber: 922
    functionLinenumberEnd: 924
    functionName: gf_rmt_get_on_new_client_task
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void * gf_rmt_get_on_new_client_task(RMT_WS* rmt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - client
    argTypes:
    - RMT_ClientCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 928
      start: 926
    functionDepth: 0
    functionLinenumber: 926
    functionLinenumberEnd: 928
    functionName: gf_rmt_get_peer_address
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * gf_rmt_get_peer_address(RMT_ClientCtx* client)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - client
    - msg
    - size
    - is_binary
    argTypes:
    - RMT_ClientCtx*
    - char*
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 931
      start: 929
    functionDepth: 0
    functionLinenumber: 929
    functionLinenumberEnd: 931
    functionName: gf_rmt_client_send_to_ws
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_rmt_client_send_to_ws(RMT_ClientCtx* client, const char*
      msg, u64 size, Bool is_binary)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - client
    - task
    - cbk
    argTypes:
    - RMT_ClientCtx*
    - void*
    - rmt_client_on_data_cbk
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 935
      start: 933
    functionDepth: 0
    functionLinenumber: 933
    functionLinenumberEnd: 935
    functionName: gf_rmt_client_set_on_data_cbk
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_rmt_client_set_on_data_cbk(RMT_ClientCtx* client, void* task,
      rmt_client_on_data_cbk cbk)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - client
    argTypes:
    - RMT_ClientCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 938
      start: 936
    functionDepth: 0
    functionLinenumber: 936
    functionLinenumberEnd: 938
    functionName: gf_rmt_client_get_on_data_task
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void * gf_rmt_client_get_on_data_task(RMT_ClientCtx* client)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - client
    - task
    - cbk
    argTypes:
    - RMT_ClientCtx*
    - void*
    - rmt_client_on_del_cbk
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 942
      start: 940
    functionDepth: 0
    functionLinenumber: 940
    functionLinenumberEnd: 942
    functionName: gf_rmt_client_set_on_del_cbk
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_rmt_client_set_on_del_cbk(RMT_ClientCtx* client, void* task,
      rmt_client_on_del_cbk cbk)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - client
    argTypes:
    - RMT_ClientCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 945
      start: 943
    functionDepth: 0
    functionLinenumber: 943
    functionLinenumberEnd: 945
    functionName: gf_rmt_client_get_on_del_task
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void * gf_rmt_client_get_on_del_task(RMT_ClientCtx* client)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - client
    argTypes:
    - RMT_ClientCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 949
      start: 947
    functionDepth: 0
    functionLinenumber: 947
    functionLinenumberEnd: 949
    functionName: gf_rmt_client_get_rmt
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: RMT_WS
    signature: RMT_WS * gf_rmt_client_get_rmt(RMT_ClientCtx* client)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - X
    - ','
    - Y
    - ','
    - Z
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 70
    functionName: F
    functionSourceFile: /src/gpac/src/utils/md5.c
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: F(X, Y, Z)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - X
    - ','
    - Y
    - ','
    - Z
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 71
    functionName: G
    functionSourceFile: /src/gpac/src/utils/md5.c
    functionUses: 1447
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: G(X, Y, Z)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - X
    - ','
    - Y
    - ','
    - Z
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: H
    functionSourceFile: /src/gpac/src/utils/md5.c
    functionUses: 45
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: H(X, Y, Z)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - X
    - ','
    - Y
    - ','
    - Z
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 73
    functionName: I
    functionSourceFile: /src/gpac/src/utils/md5.c
    functionUses: 22
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: I(X, Y, Z)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - n
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: rotateLeft
    functionSourceFile: /src/gpac/src/utils/md5.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 rotateLeft(u32 x, u32 n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - MD5Context*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 92
    functionName: md5Init
    functionSourceFile: /src/gpac/src/utils/md5.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void md5Init(MD5Context *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: md5Step
      Src: /src/gpac/src/utils/md5.c:123,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - input_buffer
    - input_len
    argTypes:
    - MD5Context*
    - u8*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 127
    functionName: md5Update
    functionSourceFile: /src/gpac/src/utils/md5.c
    functionUses: 0
    functionsReached:
    - md5Step
    linkageType: ''
    returnType: void
    signature: void md5Update(MD5Context *ctx, u8 *input_buffer, size_t input_len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: md5Update
      Src: /src/gpac/src/utils/md5.c:139,1
    - Dst: md5Step
      Src: /src/gpac/src/utils/md5.c:153,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - MD5Context*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 133
    functionDepth: 2
    functionLinenumber: 133
    functionLinenumberEnd: 162
    functionName: md5Finalize
    functionSourceFile: /src/gpac/src/utils/md5.c
    functionUses: 0
    functionsReached:
    - md5Step
    - md5Update
    linkageType: ''
    returnType: void
    signature: void md5Finalize(MD5Context *ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: F
      Src: /src/gpac/src/utils/md5.c:180,1
    - Dst: G
      Src: /src/gpac/src/utils/md5.c:184,1
    - Dst: H
      Src: /src/gpac/src/utils/md5.c:188,1
    - Dst: I
      Src: /src/gpac/src/utils/md5.c:192,1
    - Dst: rotateLeft
      Src: /src/gpac/src/utils/md5.c:200,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 2
    argNames:
    - buffer
    - input
    argTypes:
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 208
    functionName: md5Step
    functionSourceFile: /src/gpac/src/utils/md5.c
    functionUses: 2
    functionsReached:
    - I
    - H
    - F
    - rotateLeft
    - G
    linkageType: ''
    returnType: void
    signature: void md5Step(u32 *buffer, u32 *input)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: md5Init
      Src: /src/gpac/src/utils/md5.c:220,1
    - Dst: md5Update
      Src: /src/gpac/src/utils/md5.c:221,1
    - Dst: md5Finalize
      Src: /src/gpac/src/utils/md5.c:222,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/md5.c:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - data
    - len
    - output
    argTypes:
    - void*
    - u32
    - u8[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 216
    functionDepth: 3
    functionLinenumber: 216
    functionLinenumberEnd: 224
    functionName: gf_md5_csum
    functionSourceFile: /src/gpac/src/utils/md5.c
    functionUses: 0
    functionsReached:
    - memcpy
    - md5Init
    - md5Finalize
    - md5Update
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_md5_csum(const void *data, u32 len, u8 output[GF_MD5_DIGEST_SIZE])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:75,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:75,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - cbck
    - item_name
    - item_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 80
    functionName: mod_enum
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 0
    functionsReached:
    - strncmp
    linkageType: ''
    returnType: Bool
    signature: Bool mod_enum(void *cbck, char *item_name, char *item_path, GF_FileEnumInfo
      *file_info)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_dir_exists
      Src: /src/gpac/src/utils/os_config_init.c:89,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:91,1
    - Dst: gf_enum_directory
      Src: /src/gpac/src/utils/os_config_init.c:96,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:99,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/os_config_init.c:103,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:105,1
    - Dst: fopen
      Src: /src/gpac/src/utils/os_config_init.c:109,1
    - Dst: fclose
      Src: /src/gpac/src/utils/os_config_init.c:111,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:112,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 3
    argNames:
    - name
    - path
    - outPath
    argTypes:
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 83
    functionDepth: 2
    functionLinenumber: 83
    functionLinenumberEnd: 114
    functionName: check_file_exists
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 0
    functionsReached:
    - gf_enum_directory
    - gf_dir_exists
    - snprintf
    - GF_LOG
    - strcpy
    - fopen
    - strcmp
    - fclose
    linkageType: ''
    returnType: Bool
    signature: Bool check_file_exists(char *name, char *path, char *outPath)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:269,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:270,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:272,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:273,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 2
    argNames:
    - app_data
    - ext_storage
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 275
    functionName: gf_sys_set_android_paths
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 1
    functionsReached:
    - strcpy
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_set_android_paths(const char *app_data, const char
      *ext_storage)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:283,1
    - Dst: getenv
      Src: /src/gpac/src/utils/os_config_init.c:286,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:288,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:289,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/utils/os_config_init.c:291,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:295,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:296,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:299,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:301,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:304,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:306,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 2
    argNames:
    - file_path
    - path_type
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 278
    functionDepth: 2
    functionLinenumber: 278
    functionLinenumberEnd: 310
    functionName: get_default_install_path
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 1
    functionsReached:
    - strcat
    - gf_dir_exists
    - strcpy
    - get_default_install_path
    - getenv
    linkageType: ''
    returnType: Bool
    signature: Bool get_default_install_path(char *file_path, u32 path_type)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:327,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:328,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:329,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:330,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - file_path
    - path_type
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 325
    functionDepth: 0
    functionLinenumber: 325
    functionLinenumberEnd: 332
    functionName: get_default_install_path
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 1
    functionsReached:
    - strcpy
    linkageType: ''
    returnType: Bool
    signature: Bool get_default_install_path(char *file_path, u32 path_type)
  - BBCount: 82
    BranchProfiles: []
    Callsites:
    - Dst: gf_dir_exists
      Src: /src/gpac/src/utils/os_config_init.c:368,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/utils/os_config_init.c:369,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/utils/os_config_init.c:370,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:372,1
    - Dst: getenv
      Src: /src/gpac/src/utils/os_config_init.c:377,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:384,1
    - Dst: realpath
      Src: /src/gpac/src/utils/os_config_init.c:388,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:390,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:391,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:394,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:396,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:396,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:399,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:400,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:401,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/os_config_init.c:402,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:405,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/utils/os_config_init.c:406,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/utils/os_config_init.c:407,1
    - Dst: _NSGetExecutablePath
      Src: /src/gpac/src/utils/os_config_init.c:415,1
    - Dst: realpath
      Src: /src/gpac/src/utils/os_config_init.c:416,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_config_init.c:417,1
    - Dst: readlink
      Src: /src/gpac/src/utils/os_config_init.c:423,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_config_init.c:426,1
    - Dst: GetModuleFileNameA
      Src: /src/gpac/src/utils/os_config_init.c:432,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:433,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_config_init.c:434,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:437,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:445,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:447,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:454,1
    - Dst: dladdr
      Src: /src/gpac/src/utils/os_config_init.c:462,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:465,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_config_init.c:466,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:475,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:488,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:493,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:494,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:495,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:501,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:502,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:503,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_config_init.c:504,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_config_init.c:511,1
    - Dst: strncpy
      Src: /src/gpac/src/utils/os_config_init.c:513,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_config_init.c:518,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:519,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:526,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:527,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:530,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:531,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:532,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:533,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:538,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:539,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:540,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:541,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:544,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:545,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:547,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:548,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:550,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:551,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:553,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:554,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:557,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:558,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:559,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:560,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:561,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:562,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:563,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:569,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:570,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:573,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:574,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:578,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:579,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:580,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:582,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:585,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:586,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:587,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:588,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:590,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:593,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:594,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:597,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:598,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:599,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:602,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:603,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:604,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:605,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:617,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:618,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:621,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:622,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:624,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:625,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:626,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:629,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:630,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:634,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:638,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:639,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:640,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:641,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:642,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:647,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:648,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:649,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:653,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:659,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:660,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:666,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:667,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:670,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:671,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:672,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:673,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:677,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:678,1
    CyclomaticComplexity: 98
    EdgeCount: 98
    ICount: 271
    argCount: 2
    argNames:
    - file_path
    - path_type
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 682
      start: 356
    functionDepth: 3
    functionLinenumber: 356
    functionLinenumberEnd: 682
    functionName: get_default_install_path
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 2
    functionsReached:
    - gf_dir_exists
    - _NSGetExecutablePath
    - strcpy
    - strcat
    - dladdr
    - strrchr
    - strncmp
    - get_default_install_path
    - getenv
    - GF_LOG
    - gf_mkdir
    - strstr
    - strncpy
    - GetModuleFileNameA
    - readlink
    - strlen
    - realpath
    - check_file_exists
    - gf_file_delete
    linkageType: ''
    returnType: Bool
    signature: Bool get_default_install_path(char *file_path, u32 path_type)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: realpath
      Src: /src/gpac/src/utils/os_config_init.c:693,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:696,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_config_init.c:697,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:699,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:700,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:701,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:703,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_config_init.c:705,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/utils/os_config_init.c:707,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:708,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:709,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/utils/os_config_init.c:711,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:713,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - cfg
    - file_path
    argTypes:
    - GF_Config*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 714
      start: 689
    functionDepth: 5
    functionLinenumber: 689
    functionLinenumberEnd: 714
    functionName: gf_ios_refresh_cache_directory
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_assert
    - gf_dir_exists
    - realpath
    - GF_LOG
    - gf_cfg_get_key
    - strstr
    - gf_mkdir
    - strcmp
    - gf_opts_get_key
    - gf_cfg_set_key
    linkageType: ''
    returnType: void
    signature: void gf_ios_refresh_cache_directory( GF_Config *cfg, const char *file_path)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:724,1
    - Dst: GetWindowsDirectory
      Src: /src/gpac/src/utils/os_config_init.c:727,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:728,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:728,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:729,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:732,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:734,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:737,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:740,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - szPath
    argTypes:
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 742
      start: 720
    functionDepth: 0
    functionLinenumber: 720
    functionLinenumberEnd: 742
    functionName: gf_get_default_font_dir
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 1
    functionsReached:
    - strcat
    - strcpy
    - strlen
    - GetWindowsDirectory
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_get_default_font_dir(char szPath[GF_MAX_PATH])
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:751,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:755,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_config_init.c:755,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/os_config_init.c:756,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_config_init.c:757,1
    - Dst: gf_cfg_discard_changes
      Src: /src/gpac/src/utils/os_config_init.c:758,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_config_init.c:766,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_config_init.c:768,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:770,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_config_init.c:772,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_config_init.c:774,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/os_config_init.c:776,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:783,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:785,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:789,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:791,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:793,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:795,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:801,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:804,1
    - Dst: gf_ios_refresh_cache_directory
      Src: /src/gpac/src/utils/os_config_init.c:809,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:811,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:812,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:813,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:814,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:816,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_config_init.c:817,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_config_init.c:818,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:820,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:821,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:822,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_config_init.c:823,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_config_init.c:824,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:827,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:828,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:829,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:830,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:831,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_config_init.c:832,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_config_init.c:833,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:838,1
    - Dst: gf_get_default_cache_directory_ex
      Src: /src/gpac/src/utils/os_config_init.c:838,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:842,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:843,1
    - Dst: gf_get_default_font_dir
      Src: /src/gpac/src/utils/os_config_init.c:846,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:847,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:849,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:850,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:853,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:855,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:857,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:859,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:860,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:863,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:864,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:869,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:870,1
    - Dst: getenv
      Src: /src/gpac/src/utils/os_config_init.c:874,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:876,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:877,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:881,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_config_init.c:883,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:884,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:885,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_config_init.c:888,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:889,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_config_init.c:892,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:893,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_config_init.c:894,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:895,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_config_init.c:898,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:899,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/os_config_init.c:900,1
    - Dst: gf_cfg_get_section_count
      Src: /src/gpac/src/utils/os_config_init.c:902,1
    - Dst: gf_cfg_get_section_name
      Src: /src/gpac/src/utils/os_config_init.c:905,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/src/utils/os_config_init.c:907,1
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/src/utils/os_config_init.c:909,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:910,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:911,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_config_init.c:915,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:919,1
    - Dst: gf_cfg_set_filename
      Src: /src/gpac/src/utils/os_config_init.c:922,1
    - Dst: gf_cfg_discard_changes
      Src: /src/gpac/src/utils/os_config_init.c:923,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:927,1
    - Dst: gf_cfg_get_filename
      Src: /src/gpac/src/utils/os_config_init.c:927,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_config_init.c:928,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/os_config_init.c:929,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 114
    argCount: 2
    argNames:
    - file_path
    - profile
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 930
      start: 745
    functionDepth: 6
    functionLinenumber: 745
    functionLinenumberEnd: 930
    functionName: create_default_config
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 0
    functionsReached:
    - gf_cfg_discard_changes
    - gf_file_exists
    - strcpy
    - gf_cfg_get_key_count
    - gf_cfg_get_filename
    - gf_cfg_new
    - gf_fopen
    - gf_cfg_set_key
    - strcat
    - gf_cfg_del
    - gf_ios_refresh_cache_directory
    - sprintf
    - gf_cfg_get_key
    - get_default_install_path
    - stricmp
    - getenv
    - gf_get_default_font_dir
    - GF_LOG
    - gf_cfg_get_section_count
    - gf_fclose
    - gf_cfg_get_key_name
    - gf_get_default_cache_directory_ex
    - strcmp
    - gf_cfg_set_filename
    - gf_cfg_get_section_name
    linkageType: ''
    returnType: GF_Config
    signature: GF_Config *create_default_config(char *file_path, const char *profile)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:940,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:943,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:944,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_config_init.c:946,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_config_init.c:948,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_config_init.c:951,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:952,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_config_init.c:953,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:954,1
    - Dst: gf_cfg_get_filename
      Src: /src/gpac/src/utils/os_config_init.c:956,1
    - Dst: gf_ios_refresh_cache_directory
      Src: /src/gpac/src/utils/os_config_init.c:957,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:962,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:963,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:966,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:967,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:972,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:975,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:979,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:994,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:997,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1004,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:1006,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1007,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1008,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:1009,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1009,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:1009,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:1011,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1012,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 934
    functionDepth: 6
    functionLinenumber: 934
    functionLinenumberEnd: 1018
    functionName: check_modules_dir
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 0
    functionsReached:
    - strcat
    - strrchr
    - gf_ios_refresh_cache_directory
    - gf_cfg_get_filename
    - sprintf
    - gf_cfg_get_key
    - strstr
    - strcmp
    - get_default_install_path
    - gf_cfg_set_key
    linkageType: ''
    returnType: void
    signature: void check_modules_dir(GF_Config *cfg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/os_config_init.c:1024,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1025,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - cbck
    - item_name
    - item_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1028
      start: 1022
    functionDepth: 3
    functionLinenumber: 1022
    functionLinenumberEnd: 1028
    functionName: delete_tmp_files
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_file_delete
    linkageType: ''
    returnType: Bool
    signature: Bool delete_tmp_files(void *cbck, char *item_name, char *item_path,
      GF_FileEnumInfo *file_info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1036,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/utils/os_config_init.c:1039,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:1041,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:1042,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1044,1
    - Dst: gf_rand
      Src: /src/gpac/src/utils/os_config_init.c:1046,1
    - Dst: gf_rand
      Src: /src/gpac/src/utils/os_config_init.c:1046,1
    - Dst: gf_rand
      Src: /src/gpac/src/utils/os_config_init.c:1047,1
    - Dst: gf_rand
      Src: /src/gpac/src/utils/os_config_init.c:1047,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/os_config_init.c:1048,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_config_init.c:1058,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1060,1
    - Dst: fwrite
      Src: /src/gpac/src/utils/os_config_init.c:1063,1
    - Dst: fclose
      Src: /src/gpac/src/utils/os_config_init.c:1064,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1065,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 2
    argNames:
    - cfg
    - szPath
    argTypes:
    - GF_Config*
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1067
      start: 1031
    functionDepth: 5
    functionLinenumber: 1031
    functionLinenumberEnd: 1067
    functionName: check_default_cred_file
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_dir_exists
    - fwrite
    - gf_file_exists
    - GF_LOG
    - gf_cfg_get_key
    - gf_fopen
    - gf_rand
    - fclose
    - gf_cfg_set_key
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: void
    signature: void check_default_cred_file(GF_Config *cfg, char szPath[GF_MAX_PATH])
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:1090,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/src/utils/os_config_init.c:1091,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:1093,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:1094,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_config_init.c:1097,1
    - Dst: create_default_config
      Src: /src/gpac/src/utils/os_config_init.c:1099,1
    - Dst: strpbrk
      Src: /src/gpac/src/utils/os_config_init.c:1106,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:1107,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1108,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/os_config_init.c:1111,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1113,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_config_init.c:1117,1
    - Dst: create_default_config
      Src: /src/gpac/src/utils/os_config_init.c:1118,1
    - Dst: check_modules_dir
      Src: /src/gpac/src/utils/os_config_init.c:1120,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:1124,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1125,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1126,1
    - Dst: create_default_config
      Src: /src/gpac/src/utils/os_config_init.c:1129,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1133,1
    - Dst: create_default_config
      Src: /src/gpac/src/utils/os_config_init.c:1134,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:1139,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:1140,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/os_config_init.c:1143,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/src/utils/os_config_init.c:1147,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/src/utils/os_config_init.c:1148,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/src/utils/os_config_init.c:1149,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/src/utils/os_config_init.c:1150,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/src/utils/os_config_init.c:1151,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/src/utils/os_config_init.c:1152,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/src/utils/os_config_init.c:1153,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1157,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:1158,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1162,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1166,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1167,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_config_init.c:1169,1
    - Dst: create_default_config
      Src: /src/gpac/src/utils/os_config_init.c:1170,1
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/src/utils/os_config_init.c:1174,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1178,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:1179,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1183,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1186,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:1189,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_config_init.c:1192,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1193,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1200,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1201,1
    - Dst: create_default_config
      Src: /src/gpac/src/utils/os_config_init.c:1203,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1208,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1213,1
    - Dst: check_modules_dir
      Src: /src/gpac/src/utils/os_config_init.c:1218,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1219,1
    - Dst: check_default_cred_file
      Src: /src/gpac/src/utils/os_config_init.c:1220,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1222,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1223,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:1224,1
    - Dst: gf_get_default_cache_directory_ex
      Src: /src/gpac/src/utils/os_config_init.c:1224,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:1225,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:1228,1
    - Dst: gf_cfg_get_filename
      Src: /src/gpac/src/utils/os_config_init.c:1228,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_config_init.c:1229,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_config_init.c:1230,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:1232,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/utils/os_config_init.c:1233,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/utils/os_config_init.c:1233,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1235,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1244,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:1245,1
    - Dst: gf_enum_directory
      Src: /src/gpac/src/utils/os_config_init.c:1247,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 143
    argCount: 1
    argNames:
    - profile
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1253
      start: 1080
    functionDepth: 7
    functionLinenumber: 1080
    functionLinenumberEnd: 1253
    functionName: gf_cfg_init
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 0
    functionsReached:
    - gf_enum_directory
    - gf_dir_exists
    - gf_opts_set_key
    - strpbrk
    - gf_file_exists
    - strcpy
    - gf_cfg_get_key_count
    - gf_cfg_get_filename
    - create_default_config
    - gf_cfg_new
    - gf_cfg_set_key
    - strcat
    - strrchr
    - gf_cfg_del
    - gf_cfg_get_key
    - sprintf
    - gf_url_colon_suffix
    - get_default_install_path
    - stricmp
    - GF_LOG
    - gf_mkdir
    - strstr
    - check_default_cred_file
    - strlen
    - gf_cfg_get_key_name
    - gf_get_default_cache_directory_ex
    - strcmp
    - check_modules_dir
    linkageType: ''
    returnType: GF_Config
    signature: GF_Config *gf_cfg_init(const char *profile)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1259,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/os_config_init.c:1261,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:1264,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - path_buffer
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1265
      start: 1256
    functionDepth: 3
    functionLinenumber: 1256
    functionLinenumberEnd: 1265
    functionName: gf_opts_default_shared_directory
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 3
    functionsReached:
    - strcpy
    - gf_opts_get_key
    - get_default_install_path
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_opts_default_shared_directory(char *path_buffer)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_init
      Src: /src/gpac/src/utils/os_config_init.c:1275,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1277,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_config_init.c:1278,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_config_init.c:1280,1
    - Dst: gf_modules_new
      Src: /src/gpac/src/utils/os_config_init.c:1281,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - profile
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1283
      start: 1272
    functionDepth: 8
    functionLinenumber: 1272
    functionLinenumberEnd: 1283
    functionName: gf_init_global_config
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 1
    functionsReached:
    - gf_modules_new
    - GF_LOG
    - exit
    - gf_cfg_init
    - stricmp
    linkageType: ''
    returnType: void
    signature: void gf_init_global_config(const char *profile)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_discard_changes
      Src: /src/gpac/src/utils/os_config_init.c:1288,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_config_init.c:1289,1
    - Dst: gf_modules_del
      Src: /src/gpac/src/utils/os_config_init.c:1291,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - discard_config
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1293
      start: 1285
    functionDepth: 5
    functionLinenumber: 1285
    functionLinenumberEnd: 1293
    functionName: gf_uninit_global_config
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 1
    functionsReached:
    - gf_cfg_discard_changes
    - gf_modules_del
    - gf_cfg_del
    linkageType: ''
    returnType: void
    signature: void gf_uninit_global_config(Bool discard_config)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:1301,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:1302,1
    - Dst: strcat
      Src: /src/gpac/src/utils/os_config_init.c:1303,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:1304,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/os_config_init.c:1305,1
    - Dst: gf_cfg_get_section_count
      Src: /src/gpac/src/utils/os_config_init.c:1307,1
    - Dst: gf_cfg_get_section_name
      Src: /src/gpac/src/utils/os_config_init.c:1310,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/src/utils/os_config_init.c:1312,1
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/src/utils/os_config_init.c:1314,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1315,1
    - Dst: gf_cfg_set_key_internal
      Src: /src/gpac/src/utils/os_config_init.c:1316,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_config_init.c:1319,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1323
      start: 1298
    functionDepth: 6
    functionLinenumber: 1298
    functionLinenumberEnd: 1323
    functionName: gf_cfg_load_restrict
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 1
    functionsReached:
    - strcat
    - gf_cfg_del
    - gf_file_exists
    - gf_cfg_get_key_count
    - gf_cfg_get_key
    - gf_cfg_new
    - gf_cfg_get_key_name
    - gf_cfg_get_section_count
    - get_default_install_path
    - gf_cfg_set_key_internal
    - gf_cfg_get_section_name
    linkageType: ''
    returnType: void
    signature: void gf_cfg_load_restrict()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1331,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1332,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1335,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - secName
    - keyName
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1336
      start: 1326
    functionDepth: 4
    functionLinenumber: 1326
    functionLinenumberEnd: 1336
    functionName: gf_opts_get_key
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 93
    functionsReached:
    - strcmp
    - gf_cfg_get_key
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_opts_get_key(const char *secName, const char *keyName)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1341,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - secName
    - keyName
    - keyValue
    argTypes:
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1342
      start: 1337
    functionDepth: 5
    functionLinenumber: 1337
    functionLinenumberEnd: 1342
    functionName: gf_opts_set_key
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 43
    functionsReached:
    - gf_cfg_set_key
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_opts_set_key(const char *secName, const char *keyName,
      const char *keyValue)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_del_section
      Src: /src/gpac/src/utils/os_config_init.c:1347,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - secName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1348
      start: 1343
    functionDepth: 4
    functionLinenumber: 1343
    functionLinenumberEnd: 1348
    functionName: gf_opts_del_section
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 7
    functionsReached:
    - gf_cfg_del_section
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_opts_del_section(const char *secName)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_get_section_count
      Src: /src/gpac/src/utils/os_config_init.c:1353,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1354
      start: 1349
    functionDepth: 2
    functionLinenumber: 1349
    functionLinenumberEnd: 1354
    functionName: gf_opts_get_section_count
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 3
    functionsReached:
    - gf_cfg_get_section_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_opts_get_section_count()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_get_section_name
      Src: /src/gpac/src/utils/os_config_init.c:1359,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - secIndex
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1360
      start: 1355
    functionDepth: 2
    functionLinenumber: 1355
    functionLinenumberEnd: 1360
    functionName: gf_opts_get_section_name
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 3
    functionsReached:
    - gf_cfg_get_section_name
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_opts_get_section_name(u32 secIndex)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/src/utils/os_config_init.c:1365,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - secName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1366
      start: 1361
    functionDepth: 3
    functionLinenumber: 1361
    functionLinenumberEnd: 1366
    functionName: gf_opts_get_key_count
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 10
    functionsReached:
    - gf_cfg_get_key_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_opts_get_key_count(const char *secName)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/src/utils/os_config_init.c:1371,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - secName
    - keyIndex
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1372
      start: 1367
    functionDepth: 3
    functionLinenumber: 1367
    functionLinenumberEnd: 1372
    functionName: gf_opts_get_key_name
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 7
    functionsReached:
    - gf_cfg_get_key_name
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_opts_get_key_name(const char *secName, u32 keyIndex)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_get_key_internal
      Src: /src/gpac/src/utils/os_config_init.c:1380,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - secName
    - keyName
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1382
      start: 1374
    functionDepth: 3
    functionLinenumber: 1374
    functionLinenumberEnd: 1382
    functionName: gf_opts_get_key_restricted
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 0
    functionsReached:
    - gf_cfg_get_key_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_opts_get_key_restricted(const char *secName, const char
      *keyName)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_get_filename
      Src: /src/gpac/src/utils/os_config_init.c:1387,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1388
      start: 1384
    functionDepth: 1
    functionLinenumber: 1384
    functionLinenumberEnd: 1388
    functionName: gf_opts_get_filename
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 5
    functionsReached:
    - gf_cfg_get_filename
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_opts_get_filename()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_discard_changes
      Src: /src/gpac/src/utils/os_config_init.c:1392,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1393
      start: 1389
    functionDepth: 1
    functionLinenumber: 1389
    functionLinenumberEnd: 1393
    functionName: gf_opts_discard_changes
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 2
    functionsReached:
    - gf_cfg_discard_changes
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_opts_discard_changes()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_save
      Src: /src/gpac/src/utils/os_config_init.c:1398,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1399
      start: 1395
    functionDepth: 3
    functionLinenumber: 1395
    functionLinenumberEnd: 1399
    functionName: gf_opts_save
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 3
    functionsReached:
    - gf_cfg_save
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_opts_save()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1672
      start: 1668
    functionDepth: 0
    functionLinenumber: 1668
    functionLinenumberEnd: 1672
    functionName: gf_sys_get_options
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sys_get_options()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1681,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - argname
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1686
      start: 1674
    functionDepth: 0
    functionLinenumber: 1674
    functionLinenumberEnd: 1686
    functionName: gpac_opt_default
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: char
    signature: char *gpac_opt_default(const char *argname)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1691,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1693,1
    - Dst: gpac_opt_default
      Src: /src/gpac/src/utils/os_config_init.c:1694,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1698,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1699,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1700,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 2
    argNames:
    - secName
    - keyName
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1702
      start: 1688
    functionDepth: 5
    functionLinenumber: 1688
    functionLinenumberEnd: 1702
    functionName: gf_opts_get_bool
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 43
    functionsReached:
    - strcmp
    - gf_opts_get_key
    - gpac_opt_default
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_opts_get_bool(const char *secName, const char *keyName)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1707,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1709,1
    - Dst: gpac_opt_default
      Src: /src/gpac/src/utils/os_config_init.c:1710,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:1713,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_config_init.c:1725,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 2
    argNames:
    - secName
    - keyName
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1727
      start: 1703
    functionDepth: 5
    functionLinenumber: 1703
    functionLinenumberEnd: 1727
    functionName: gf_opts_get_int
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 8
    functionsReached:
    - gpac_opt_default
    - strcmp
    - atoi
    - gf_opts_get_key
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_opts_get_int(const char *secName, const char *keyName)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:1734,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:1736,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_config_init.c:1737,1
    - Dst: strncpy
      Src: /src/gpac/src/utils/os_config_init.c:1740,1
    - Dst: gf_opts_del_section
      Src: /src/gpac/src/utils/os_config_init.c:1742,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1746,1
    - Dst: strncpy
      Src: /src/gpac/src/utils/os_config_init.c:1753,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:1757,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1759,1
    - Dst: strncpy
      Src: /src/gpac/src/utils/os_config_init.c:1766,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:1769,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_config_init.c:1772,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_config_init.c:1775,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_config_init.c:1776,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1777,1
    - Dst: gf_opts_del_section
      Src: /src/gpac/src/utils/os_config_init.c:1780,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_config_init.c:1784,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1787,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1789,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1789,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1790,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1790,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1790,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1790,1
    - Dst: gpac_disable_progress
      Src: /src/gpac/src/utils/os_config_init.c:1793,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 55
    argCount: 1
    argNames:
    - opt_string
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1797
      start: 1729
    functionDepth: 6
    functionLinenumber: 1729
    functionLinenumberEnd: 1797
    functionName: gf_sys_set_cfg_option
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 0
    functionsReached:
    - gf_opts_del_section
    - gf_opts_set_key
    - GF_LOG
    - memcpy
    - strncpy
    - strcmp
    - stricmp
    - strchr
    - gpac_disable_progress
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_set_cfg_option(const char *opt_string)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1811,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1812,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1818,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:1820,1
    - Dst: gf_sys_set_cfg_option
      Src: /src/gpac/src/utils/os_config_init.c:1821,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:1824,1
    - Dst: gf_opts_get_section_count
      Src: /src/gpac/src/utils/os_config_init.c:1825,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:1830,1
    - Dst: gf_opts_get_section_name
      Src: /src/gpac/src/utils/os_config_init.c:1835,1
    - Dst: gf_opts_get_key_count
      Src: /src/gpac/src/utils/os_config_init.c:1836,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:1840,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:1840,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:1841,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:1841,1
    - Dst: gf_opts_get_key_name
      Src: /src/gpac/src/utils/os_config_init.c:1846,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1847,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1849,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:1853,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:1855,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:1858,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1863,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/utils/os_config_init.c:1864,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1869,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1871,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1871,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1871,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1873,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1875,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1875,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1875,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1877,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1879,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1886,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1888,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1889,1
    - Dst: gf_module_reload_dirs
      Src: /src/gpac/src/utils/os_config_init.c:1890,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 86
    argCount: 4
    argNames:
    - arg_name
    - val
    - consumed_next
    - e
    argTypes:
    - char*
    - char*
    - Bool*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1895
      start: 1801
    functionDepth: 7
    functionLinenumber: 1801
    functionLinenumberEnd: 1895
    functionName: gf_opts_load_option
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 1
    functionsReached:
    - gf_opts_get_key_name
    - gf_opts_set_key
    - gf_opts_get_key_count
    - strncmp
    - strcmp
    - gf_sys_set_cfg_option
    - gf_opts_get_key
    - gf_log_set_strict_error
    - gf_module_reload_dirs
    - strchr
    - gf_opts_get_section_name
    - gf_opts_get_section_count
    - strlen
    - fprintf
    linkageType: ''
    returnType: Bool
    signature: Bool gf_opts_load_option(const char *arg_name, const char *val, Bool
      *consumed_next, GF_Err *e)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:1910,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:1912,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:1917,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:1917,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:1919,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:1921,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 30
    argCount: 1
    argNames:
    - arg_name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1931
      start: 1897
    functionDepth: 0
    functionLinenumber: 1897
    functionLinenumberEnd: 1931
    functionName: gf_sys_is_gpac_arg
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 1
    functionsReached:
    - strncmp
    - strchr
    - strlen
    - strstr
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_is_gpac_arg(const char *arg_name)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:1946,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_config_init.c:1947,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:1955,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_config_init.c:1956,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:1959,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:1960,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_config_init.c:1961,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:1964,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:1966,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_config_init.c:1967,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:1969,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:1971,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_config_init.c:1972,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:1974,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1975,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:1976,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_config_init.c:1977,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:1980,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:1984,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_config_init.c:1985,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:1994,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_config_init.c:1997,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:1998,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2003,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2006,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2008,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2011,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2013,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2015,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2016,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2019,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2026,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2027,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2030,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_config_init.c:2031,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2036,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2037,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2038,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2040,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2041,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2043,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2045,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2046,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2047,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2048,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2049,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2050,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2051,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2055,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2057,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2058,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2062,1
    - Dst: gf_sys_localized
      Src: /src/gpac/src/utils/os_config_init.c:2062,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2065,1
    - Dst: gf_sys_localized
      Src: /src/gpac/src/utils/os_config_init.c:2065,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2067,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2069,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:2073,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2074,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 134
    argCount: 4
    argNames:
    - helpout
    - flags
    - arg
    - arg_subsystem
    argTypes:
    - FILE*
    - GF_SysPrintArgFlags
    - GF_GPACArg*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2075
      start: 1934
    functionDepth: 8
    functionLinenumber: 1934
    functionLinenumberEnd: 2075
    functionName: gf_sys_print_arg
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 21
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_sys_format_help
    - strstr
    - gf_sys_localized
    - strcmp
    - exit
    - strchr
    - strlen
    - fprintf
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_print_arg(FILE *helpout, GF_SysPrintArgFlags flags,
      const GF_GPACArg *arg, const char *arg_subsystem)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_get_options
      Src: /src/gpac/src/utils/os_config_init.c:2082,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/src/utils/os_config_init.c:2097,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 18
    argCount: 4
    argNames:
    - helpout
    - flags
    - mode
    - subsystem_flags
    argTypes:
    - FILE*
    - GF_SysPrintArgFlags
    - GF_SysArgMode
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2099
      start: 2078
    functionDepth: 9
    functionLinenumber: 2078
    functionLinenumberEnd: 2099
    functionName: gf_sys_print_core_help
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 3
    functionsReached:
    - gf_sys_print_arg
    - gf_sys_get_options
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_print_core_help(FILE *helpout, GF_SysPrintArgFlags
      flags, GF_SysArgMode mode, u32 subsystem_flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_config_init.c:2110,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2114
      start: 2107
    functionDepth: 0
    functionLinenumber: 2107
    functionLinenumberEnd: 2114
    functionName: gf_sys_cleanup_help
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 1
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_sys_cleanup_help()
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2150,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2158,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2160,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_config_init.c:2161,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2178,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_config_init.c:2179,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 35
    argCount: 2
    argNames:
    - buf
    - c
    argTypes:
    - char*
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2183
      start: 2145
    functionDepth: 0
    functionLinenumber: 2145
    functionLinenumberEnd: 2183
    functionName: check_char_balanced
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 0
    functionsReached:
    - strchr
    - exit
    - fprintf
    linkageType: ''
    returnType: void
    signature: void check_char_balanced(char *buf, char c)
  - BBCount: 129
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/gpac/src/utils/os_config_init.c:2213,1
    - Dst: vsnprintf
      Src: /src/gpac/src/utils/os_config_init.c:2214,1
    - Dst: va_end
      Src: /src/gpac/src/utils/os_config_init.c:2215,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/os_config_init.c:2218,1
    - Dst: va_start
      Src: /src/gpac/src/utils/os_config_init.c:2220,1
    - Dst: vsprintf
      Src: /src/gpac/src/utils/os_config_init.c:2221,1
    - Dst: va_end
      Src: /src/gpac/src/utils/os_config_init.c:2222,1
    - Dst: check_char_balanced
      Src: /src/gpac/src/utils/os_config_init.c:2226,1
    - Dst: check_char_balanced
      Src: /src/gpac/src/utils/os_config_init.c:2227,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2251,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2256,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2267,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2268,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2268,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2269,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2272,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2276,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2335,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2337,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:2347,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2350,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2353,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2361,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2363,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2364,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2367,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2371,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2375,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2378,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2380,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2383,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2390,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2392,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2397,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2400,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2401,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2403,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2404,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2408,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2430,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2434,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2441,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2445,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2449,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2455,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2463,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2464,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:2473,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:2478,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:2486,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:2488,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2506,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2509,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2512,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2515,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2520,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2521,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2530,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2531,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2535,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2542,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2548,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2552,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2557,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2559,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2585,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2587,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2590,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2594,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2596,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2603,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_config_init.c:2604,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2606,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2608,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2612,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2613,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2614,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2614,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2615,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2616,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2617,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2617,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2618,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2619,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2620,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2620,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2621,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2622,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2623,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2623,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2624,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2625,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2626,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2626,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2627,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2628,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2629,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2629,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2630,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2631,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2632,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2632,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:2633,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:2633,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:2633,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2634,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2635,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2638,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2639,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2643,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2645,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2646,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2647,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2648,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:2649,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:2649,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:2649,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2651,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2652,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2654,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2655,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2658,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2667,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2670,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2671,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2676,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2679,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2683,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2688,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2689,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2696,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2700,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2704,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2706,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2708,1
    CyclomaticComplexity: 199
    EdgeCount: 199
    ICount: 456
    argCount: 3
    argNames:
    - helpout
    - flags
    - fmt
    argTypes:
    - FILE*
    - GF_SysPrintArgFlags
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2711
      start: 2186
    functionDepth: 2
    functionLinenumber: 2186
    functionLinenumberEnd: 2711
    functionName: gf_sys_format_help
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 45
    functionsReached:
    - vsprintf
    - gf_assert
    - gf_sys_set_console_code
    - va_end
    - va_start
    - check_char_balanced
    - strstr
    - strncmp
    - strcmp
    - vsnprintf
    - strchr
    - strlen
    - fprintf
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_format_help(FILE *helpout, GF_SysPrintArgFlags flags,
      const char *fmt, ...)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tolower
      Src: /src/gpac/src/utils/os_config_init.c:2720,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/os_config_init.c:2721,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 3
    argNames:
    - text
    - subtext
    - subtext_len
    argTypes:
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2728
      start: 2713
    functionDepth: 0
    functionLinenumber: 2713
    functionLinenumberEnd: 2728
    functionName: gf_strnistr
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 3
    functionsReached:
    - tolower
    - strnicmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_strnistr(const char *text, const char *subtext, u32 subtext_len)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:2740,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:2744,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2748,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2749,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2751,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2753,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2757,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2758,1
    - Dst: gf_strnistr
      Src: /src/gpac/src/utils/os_config_init.c:2762,1
    - Dst: MIN
      Src: /src/gpac/src/utils/os_config_init.c:2762,1
    - Dst: gf_strnistr
      Src: /src/gpac/src/utils/os_config_init.c:2767,1
    - Dst: gf_strnistr
      Src: /src/gpac/src/utils/os_config_init.c:2769,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_config_init.c:2772,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_config_init.c:2773,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2781,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_config_init.c:2798,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_config_init.c:2820,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 69
    argCount: 2
    argNames:
    - orig
    - dst
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2828
      start: 2730
    functionDepth: 1
    functionLinenumber: 2730
    functionLinenumberEnd: 2828
    functionName: gf_sys_word_match
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 7
    functionsReached:
    - gf_malloc
    - gf_free
    - GF_LOG
    - MIN
    - memset
    - strncmp
    - strchr
    - strlen
    - gf_strnistr
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_word_match(const char *orig, const char *dst)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 162
    functionDepth: 2
    functionLinenumber: 162
    functionLinenumberEnd: 165
    functionName: ngtcp2_timestamp
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: u64
    signature: u64 ngtcp2_timestamp()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_rand
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:172,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - dest
    - destlen
    - rand_ctx
    argTypes:
    - uint8_t*
    - size_t
    - ngtcp2_rand_ctx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 174
    functionName: ngq_rand_cb
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_rand
    linkageType: ''
    returnType: void
    signature: void ngq_rand_cb(uint8_t *dest, size_t destlen, const ngtcp2_rand_ctx
      *rand_ctx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: RAND_bytes
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:181,1
    - Dst: RAND_bytes
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:185,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:194,1
    - Dst: ngtcp2_crypto_generate_stateless_reset_token
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:202,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 5
    argNames:
    - conn
    - cid
    - token
    - cidlen
    - user_data
    argTypes:
    - ngtcp2_conn*
    - ngtcp2_cid*
    - uint8_t*
    - size_t
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 208
    functionName: ngq_get_new_connection_id
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - RAND_bytes
    - memcpy
    - ngtcp2_crypto_generate_stateless_reset_token
    linkageType: ''
    returnType: int
    signature: int ngq_get_new_connection_id(ngtcp2_conn *conn, ngtcp2_cid *cid, uint8_t
      *token, size_t cidlen, void *user_data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memcmp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:219,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - conn
    - cid
    - user_data
    argTypes:
    - ngtcp2_conn*
    - ngtcp2_cid*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 225
    functionName: ngq_remove_connection_id
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - memcmp
    linkageType: ''
    returnType: int
    signature: int ngq_remove_connection_id(ngtcp2_conn *conn, const ngtcp2_cid *cid,
      void *user_data)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - conn
    - max_streams
    - user_data
    argTypes:
    - ngtcp2_conn*
    - uint64_t
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 231
    functionName: ngq_extend_max_local_streams_bidi
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int ngq_extend_max_local_streams_bidi(ngtcp2_conn *conn, uint64_t
      max_streams,\n                                  void *user_data)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:238,1
    - Dst: vfprintf
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:239,1
    - Dst: va_end
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:240,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - user_data
    - format
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 243
    functionName: ngq_printf
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - va_start
    - vfprintf
    - fprintf
    - va_end
    linkageType: ''
    returnType: void
    signature: void ngq_printf(void *user_data, const char *format, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vfprintf
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:246,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - format
    - args
    argTypes:
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 248
    functionName: ngq_debug_trace
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - vfprintf
    - fprintf
    linkageType: ''
    returnType: void
    signature: void ngq_debug_trace(const char *format, va_list args)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - format
    - args
    argTypes:
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 251
    functionName: ngq_debug_trace_noop
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ngq_debug_trace_noop(const char *format, va_list args)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:275,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:277,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 7
    argNames:
    - conn
    - stream_id
    - vec
    - veccnt
    - pflags
    - conn_user_data
    - stream_user_data
    argTypes:
    - nghttp3_conn*
    - int64_t
    - nghttp3_vec*
    - size_t
    - uint32_t*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 290
    functionName: ngh3_data_source_read_callback
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    linkageType: ''
    returnType: nghttp3_ssize
    signature: "nghttp3_ssize ngh3_data_source_read_callback(\n  nghttp3_conn *conn,
      int64_t stream_id, nghttp3_vec *vec, size_t veccnt,\n  uint32_t *pflags, void
      *conn_user_data, void *stream_user_data)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:297,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:298,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:305,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:307,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:308,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - sess
    - is_destroy
    argTypes:
    - GF_DownloadSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 292
    functionDepth: 1
    functionLinenumber: 292
    functionLinenumberEnd: 313
    functionName: h3_setup_session
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h3_setup_session(GF_DownloadSession *sess, Bool is_destroy)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ngtcp2_conn_extend_max_stream_offset
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:321,1
    - Dst: ngtcp2_conn_extend_max_offset
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:322,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:329,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:332,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:334,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 6
    argNames:
    - conn
    - stream_id
    - data
    - datalen
    - conn_user_data
    - stream_user_data
    argTypes:
    - nghttp3_conn*
    - int64_t
    - uint8_t*
    - size_t
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 315
    functionDepth: 1
    functionLinenumber: 315
    functionLinenumberEnd: 336
    functionName: ngh3_recv_data
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - ngtcp2_conn_extend_max_offset
    - memcpy
    - ngtcp2_conn_extend_max_stream_offset
    - GF_LOG
    - gf_realloc
    linkageType: ''
    returnType: int
    signature: "int ngh3_recv_data(nghttp3_conn *conn, int64_t stream_id, const uint8_t
      *data,\n                   size_t datalen, void *conn_user_data, void *stream_user_data)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ngtcp2_conn_extend_max_stream_offset
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:343,1
    - Dst: ngtcp2_conn_extend_max_offset
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 5
    argNames:
    - conn
    - stream_id
    - datalen
    - conn_user_data
    - stream_user_data
    argTypes:
    - nghttp3_conn*
    - int64_t
    - size_t
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 346
    functionName: ngh3_deferred_consume
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - ngtcp2_conn_extend_max_stream_offset
    - ngtcp2_conn_extend_max_offset
    linkageType: ''
    returnType: int
    signature: "int ngh3_deferred_consume(nghttp3_conn *conn, int64_t stream_id,\n
      \                         size_t datalen, void *conn_user_data,\n                          void
      *stream_user_data)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: nghttp3_conn_set_stream_user_data
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:357,1
    - Dst: memset
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:368,1
    - Dst: GF_DownloadSession*::user_proc
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:373,1
    - Dst: hmux_get_session
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:377,1
    - Dst: nghttp3_conn_set_stream_user_data
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:384,1
    - Dst: gf_dm_sess_clear_headers
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:391,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 4
    argNames:
    - conn
    - stream_id
    - conn_user_data
    - stream_user_data
    argTypes:
    - nghttp3_conn*
    - int64_t
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 348
    functionDepth: 2
    functionLinenumber: 348
    functionLinenumberEnd: 393
    functionName: ngh3_begin_headers
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_clear_headers
    - hmux_get_session
    - memset
    - GF_DownloadSession*::user_proc
    - nghttp3_conn_set_stream_user_data
    linkageType: ''
    returnType: int
    signature: "int ngh3_begin_headers(nghttp3_conn *conn, int64_t stream_id, void
      *conn_user_data,\n                       void *stream_user_data)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:402,1
    - Dst: nghttp3_rcbuf_get_buf
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:404,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:406,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:408,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:411,1
    - Dst: nghttp3_rcbuf_get_buf
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:414,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:415,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:417,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:418,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:421,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:424,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:425,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:427,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:427,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:427,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 8
    argNames:
    - conn
    - stream_id
    - token
    - name
    - value
    - flags
    - conn_user_data
    - stream_user_data
    argTypes:
    - nghttp3_conn*
    - int64_t
    - int32_t
    - nghttp3_rcbuf*
    - nghttp3_rcbuf*
    - uint8_t
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 395
    functionDepth: 1
    functionLinenumber: 395
    functionLinenumberEnd: 432
    functionName: ngh3_recv_header
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - memcpy
    - GF_LOG
    - strcmp
    - gf_list_add
    - stricmp
    - nghttp3_rcbuf_get_buf
    - gf_malloc
    linkageType: ''
    returnType: int
    signature: "int ngh3_recv_header(nghttp3_conn *conn, int64_t stream_id, int32_t
      token,\n                     nghttp3_rcbuf *name, nghttp3_rcbuf *value, uint8_t
      flags,\n                     void *conn_user_data, void *stream_user_data)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:440,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:442,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:445,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 5
    argNames:
    - conn
    - stream_id
    - fin
    - conn_user_data
    - stream_user_data
    argTypes:
    - nghttp3_conn*
    - int64_t
    - int
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 434
    functionDepth: 1
    functionLinenumber: 434
    functionLinenumberEnd: 452
    functionName: ngh3_end_headers
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: int
    signature: "int ngh3_end_headers(nghttp3_conn *conn, int64_t stream_id, int fin,\n\tvoid
      *conn_user_data, void *stream_user_data)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - conn
    - stream_id
    - conn_user_data
    - stream_user_data
    argTypes:
    - nghttp3_conn*
    - int64_t
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 454
    functionDepth: 0
    functionLinenumber: 454
    functionLinenumberEnd: 456
    functionName: ngh3_begin_trailers
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int ngh3_begin_trailers(nghttp3_conn *conn, int64_t stream_id, void
      *conn_user_data, void *stream_user_data)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - conn
    - stream_id
    - token
    - name
    - value
    - flags
    - conn_user_data
    - stream_user_data
    argTypes:
    - nghttp3_conn*
    - int64_t
    - int32_t
    - nghttp3_rcbuf*
    - nghttp3_rcbuf*
    - uint8_t
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 463
      start: 458
    functionDepth: 0
    functionLinenumber: 458
    functionLinenumberEnd: 463
    functionName: ngh3_recv_trailer
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int ngh3_recv_trailer(nghttp3_conn *conn, int64_t stream_id, int32_t
      token,\n\tnghttp3_rcbuf *name, nghttp3_rcbuf *value, uint8_t flags,\n\tvoid
      *conn_user_data, void *stream_user_data)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - conn
    - stream_id
    - fin
    - conn_user_data
    - stream_user_data
    argTypes:
    - nghttp3_conn*
    - int64_t
    - int
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 465
    functionDepth: 0
    functionLinenumber: 465
    functionLinenumberEnd: 469
    functionName: ngh3_end_trailers
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int ngh3_end_trailers(nghttp3_conn *conn, int64_t stream_id, int fin,\n
      \                     void *conn_user_data, void *stream_user_data)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: nghttp3_conn_shutdown_stream_read
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:476,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:478,1
    - Dst: nghttp3_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:478,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 5
    argNames:
    - conn
    - stream_id
    - app_error_code
    - conn_user_data
    - stream_user_data
    argTypes:
    - nghttp3_conn*
    - int64_t
    - uint64_t
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 471
    functionDepth: 1
    functionLinenumber: 471
    functionLinenumberEnd: 483
    functionName: ngh3_stop_sending
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - nghttp3_strerror
    - GF_LOG
    - nghttp3_conn_shutdown_stream_read
    linkageType: ''
    returnType: int
    signature: "int ngh3_stop_sending(nghttp3_conn *conn, int64_t stream_id, uint64_t
      app_error_code,\n\tvoid *conn_user_data, void *stream_user_data)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ngtcp2_conn_shutdown_stream_write
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:490,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:492,1
    - Dst: ngtcp2_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:492,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 5
    argNames:
    - conn
    - stream_id
    - app_error_code
    - conn_user_data
    - stream_user_data
    argTypes:
    - nghttp3_conn*
    - int64_t
    - uint64_t
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 485
    functionDepth: 1
    functionLinenumber: 485
    functionLinenumberEnd: 496
    functionName: ngh3_reset_stream
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - ngtcp2_conn_shutdown_stream_write
    - ngtcp2_strerror
    linkageType: ''
    returnType: int
    signature: "int ngh3_reset_stream(nghttp3_conn *conn, int64_t stream_id, uint64_t
      app_error_code,\n\tvoid *conn_user_data, void *stream_user_data)"
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 4
    argNames:
    - conn
    - stream_id
    - conn_user_data
    - stream_user_data
    argTypes:
    - nghttp3_conn*
    - int64_t
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 498
    functionDepth: 0
    functionLinenumber: 498
    functionLinenumberEnd: 515
    functionName: ngh3_end_stream
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int ngh3_end_stream(nghttp3_conn *conn, int64_t stream_id, void *conn_user_data,
      void *stream_user_data)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: ngtcp2_is_bidi_stream
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:527,1
    - Dst: assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:529,1
    - Dst: ngtcp2_conn_is_local_stream
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:529,1
    - Dst: ngtcp2_conn_extend_max_streams_uni
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:530,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:533,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:547,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:548,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:553,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:555,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:558,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:569,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 5
    argNames:
    - conn
    - stream_id
    - app_error_code
    - conn_user_data
    - stream_user_data
    argTypes:
    - nghttp3_conn*
    - int64_t
    - uint64_t
    - void*
    - void*
    assertStmts:
    - condition: (!ngtcp2_conn_is_local_stream(qc->conn, stream_id))
      pos:
        line_end: 528
        line_start: 528
        source_file: /src/gpac/src/utils/downloader_ngtcp2.c
    constantsTouched: []
    func_position:
      end: 571
      start: 517
    functionDepth: 1
    functionLinenumber: 517
    functionLinenumberEnd: 571
    functionName: ngh3_stream_close
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - ngtcp2_conn_extend_max_streams_uni
    - SET_LAST_ERR
    - GF_LOG
    - assert
    - ngtcp2_is_bidi_stream
    - gf_mx_v
    - ngtcp2_conn_is_local_stream
    linkageType: ''
    returnType: int
    signature: "int ngh3_stream_close(nghttp3_conn *conn, int64_t stream_id, uint64_t
      app_error_code,\n\tvoid *conn_user_data, void *stream_user_data)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ngtcp2_conn_get_conn_info
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:581,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:583,1
    - Dst: assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:586,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:589,1
    - Dst: assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:590,1
    - Dst: memmove
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:594,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:610,1
    - Dst: nghttp3_conn_resume_stream
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:615,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 5
    argNames:
    - conn
    - stream_id
    - datalen
    - conn_user_data
    - stream_user_data
    argTypes:
    - nghttp3_conn*
    - int64_t
    - uint64_t
    - void*
    - void*
    assertStmts:
    - condition: (qr->local_buf_sent >= qr->local_buf_ack)
      pos:
        line_end: 585
        line_start: 585
        source_file: /src/gpac/src/utils/downloader_ngtcp2.c
    - condition: (sess->local_buf_len >= qr->local_buf_sent)
      pos:
        line_end: 589
        line_start: 589
        source_file: /src/gpac/src/utils/downloader_ngtcp2.c
    constantsTouched: []
    func_position:
      end: 618
      start: 573
    functionDepth: 1
    functionLinenumber: 573
    functionLinenumberEnd: 618
    functionName: ngh3_acked_stream_data
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_assert
    - memmove
    - assert
    - ngtcp2_conn_get_conn_info
    - gf_mx_v
    - nghttp3_conn_resume_stream
    linkageType: ''
    returnType: int
    signature: "int ngh3_acked_stream_data(nghttp3_conn *conn, int64_t stream_id,
      uint64_t datalen,\n\tvoid *conn_user_data, void *stream_user_data)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: ngtcp2_conn_get_streams_uni_left
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:625,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:626,1
    - Dst: nghttp3_settings_default
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:647,1
    - Dst: nghttp3_mem_default
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:651,1
    - Dst: nghttp3_conn_server_new
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:655,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:657,1
    - Dst: nghttp3_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:657,1
    - Dst: ngtcp2_conn_get_local_transport_params
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:660,1
    - Dst: nghttp3_conn_set_max_client_streams_bidi
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:661,1
    - Dst: nghttp3_conn_client_new
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:664,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:666,1
    - Dst: nghttp3_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:666,1
    - Dst: ngtcp2_conn_open_uni_stream
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:672,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:674,1
    - Dst: ngtcp2_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:674,1
    - Dst: nghttp3_conn_bind_control_stream
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:678,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:680,1
    - Dst: nghttp3_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:680,1
    - Dst: ngtcp2_conn_open_uni_stream
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:684,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:686,1
    - Dst: ngtcp2_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:686,1
    - Dst: ngtcp2_conn_open_uni_stream
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:689,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:691,1
    - Dst: ngtcp2_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:691,1
    - Dst: nghttp3_conn_bind_qpack_streams
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:694,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:696,1
    - Dst: nghttp3_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:696,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 51
    argCount: 1
    argNames:
    - hmux_sess
    argTypes:
    - GF_HMUX_Session*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 700
      start: 620
    functionDepth: 1
    functionLinenumber: 620
    functionLinenumberEnd: 700
    functionName: h3_setup_http3
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - nghttp3_strerror
    - ngtcp2_conn_open_uni_stream
    - nghttp3_conn_server_new
    - nghttp3_mem_default
    - ngtcp2_conn_get_local_transport_params
    - GF_LOG
    - nghttp3_conn_bind_control_stream
    - nghttp3_conn_bind_qpack_streams
    - nghttp3_conn_set_max_client_streams_bidi
    - nghttp3_conn_client_new
    - ngtcp2_conn_get_streams_uni_left
    - ngtcp2_strerror
    - nghttp3_settings_default
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h3_setup_http3(GF_HMUX_Session *hmux_sess)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _hdr
    - ','
    - _name
    - ','
    - _value
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 702
    functionDepth: 0
    functionLinenumber: 702
    functionLinenumberEnd: 709
    functionName: NGH3_HDR
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NGH3_HDR(_hdr, _name, _value)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:723,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:724,1
    - Dst: NGH3_HDR
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:727,1
    - Dst: NGH3_HDR
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:728,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:730,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:731,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:732,1
    - Dst: NGH3_HDR
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:733,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:736,1
    - Dst: strchr
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:737,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:738,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:740,1
    - Dst: NGH3_HDR
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:742,1
    - Dst: NGH3_HDR
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:744,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:748,1
    - Dst: NGH3_HDR
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:749,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:753,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:755,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:759,1
    - Dst: ngtcp2_conn_open_bidi_stream
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:765,1
    - Dst: nghttp3_conn_submit_request
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:771,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:774,1
    - Dst: nghttp3_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:774,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:780,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:781,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:783,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:788,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:789,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:790,1
    - Dst: h3_session_write_ex
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:798,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 64
    argCount: 5
    argNames:
    - sess
    - req_name
    - url
    - param_string
    - has_body
    argTypes:
    - GF_DownloadSession*
    - char*
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 799
      start: 711
    functionDepth: 2
    functionLinenumber: 711
    functionLinenumberEnd: 799
    functionName: h3_submit_request
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - nghttp3_strerror
    - gf_free
    - gf_list_get
    - gf_assert
    - NGH3_HDR
    - nghttp3_conn_submit_request
    - GF_LOG
    - gf_log_tool_level_on
    - sprintf
    - gf_list_count
    - ngtcp2_conn_open_bidi_stream
    - gf_dynstrcat
    - strchr
    - h3_session_write_ex
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h3_submit_request(GF_DownloadSession *sess, char *req_name,
      const char *url, const char *param_string, Bool has_body)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:806,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:816,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:825,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:827,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:831,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:835,1
    - Dst: nghttp3_conn_resume_stream
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:839,1
    - Dst: h3_session_write_ex
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:842,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 802
    functionDepth: 1
    functionLinenumber: 802
    functionLinenumberEnd: 843
    functionName: h3_data_pending
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_assert
    - memcpy
    - nghttp3_conn_resume_stream
    - gf_mx_v
    - h3_session_write_ex
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h3_data_pending(GF_DownloadSession *sess)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:852,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:872,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:874,1
    - Dst: NGH3_HDR
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:875,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:876,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:878,1
    - Dst: NGH3_HDR
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:879,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:880,1
    - Dst: h3_setup_session
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:886,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:888,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:891,1
    - Dst: nghttp3_conn_submit_response
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:893,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:894,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:896,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:897,1
    - Dst: nghttp3_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:897,1
    - Dst: h3_data_pending
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:903,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:905,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 43
    argCount: 5
    argNames:
    - sess
    - reply_code
    - response_body
    - body_len
    - no_body
    argTypes:
    - GF_DownloadSession*
    - u32
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 908
      start: 846
    functionDepth: 2
    functionLinenumber: 846
    functionLinenumberEnd: 908
    functionName: h3_send_reply
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_list_get
    - gf_assert
    - NGH3_HDR
    - nghttp3_strerror
    - h3_data_pending
    - GF_LOG
    - sprintf
    - h3_setup_session
    - nghttp3_conn_submit_response
    - gf_list_count
    - gf_mx_v
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h3_send_reply(GF_DownloadSession *sess, u32 reply_code, const
      char *response_body, u32 body_len, Bool no_body)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: quic_send_packet
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:925,1
    - Dst: gf_sk_send_ex
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:928,1
    - Dst: ngtcp2_conn_get_max_tx_udp_payload_size
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:939,1
    - Dst: ngtcp2_conn_get_path_max_tx_udp_payload_size
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:940,1
    - Dst: ngtcp2_timestamp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:941,1
    - Dst: ngtcp2_path_storage_zero
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:946,1
    - Dst: ngtcp2_conn_get_max_data_left
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:955,1
    - Dst: nghttp3_conn_writev_stream
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:956,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:956,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:958,1
    - Dst: nghttp3_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:958,1
    - Dst: ngtcp2_ccerr_set_application_error
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:959,1
    - Dst: nghttp3_err_infer_quic_app_error_code
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:959,1
    - Dst: quic_handle_error
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:961,1
    - Dst: ngtcp2_conn_writev_stream
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:973,1
    - Dst: assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:983,1
    - Dst: nghttp3_conn_block_stream
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:984,1
    - Dst: assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:987,1
    - Dst: nghttp3_conn_shutdown_stream_write
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:988,1
    - Dst: assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:991,1
    - Dst: nghttp3_conn_add_write_offset
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:992,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:994,1
    - Dst: nghttp3_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:994,1
    - Dst: ngtcp2_ccerr_set_application_error
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:995,1
    - Dst: nghttp3_err_infer_quic_app_error_code
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:995,1
    - Dst: quic_handle_error
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:998,1
    - Dst: assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1002,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1003,1
    - Dst: ngtcp2_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1003,1
    - Dst: ngtcp2_ccerr_set_liberr
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1004,1
    - Dst: quic_handle_error
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1006,1
    - Dst: nghttp3_conn_add_write_offset
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1010,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1012,1
    - Dst: nghttp3_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1012,1
    - Dst: ngtcp2_ccerr_set_application_error
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1013,1
    - Dst: nghttp3_err_infer_quic_app_error_code
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1013,1
    - Dst: quic_handle_error
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1015,1
    - Dst: ngtcp2_conn_update_pkt_tx_time
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1020,1
    - Dst: quic_send_packet
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1025,1
    - Dst: gf_sk_send_ex
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1028,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 101
    argCount: 2
    argNames:
    - sess
    - qc
    argTypes:
    - GF_DownloadSession*
    - GF_QuicConnection*
    assertStmts:
    - condition: (ndatalen == -1)
      pos:
        line_end: 1001
        line_start: 1001
        source_file: /src/gpac/src/utils/downloader_ngtcp2.c
    - condition: (ndatalen >= 0)
      pos:
        line_end: 990
        line_start: 990
        source_file: /src/gpac/src/utils/downloader_ngtcp2.c
    - condition: (ndatalen == -1)
      pos:
        line_end: 982
        line_start: 982
        source_file: /src/gpac/src/utils/downloader_ngtcp2.c
    - condition: (ndatalen == -1)
      pos:
        line_end: 986
        line_start: 986
        source_file: /src/gpac/src/utils/downloader_ngtcp2.c
    constantsTouched: []
    func_position:
      end: 1043
      start: 910
    functionDepth: 5
    functionLinenumber: 910
    functionLinenumberEnd: 1043
    functionName: h3_session_write_ex
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 2
    functionsReached:
    - nghttp3_strerror
    - gf_sk_send_ex
    - quic_handle_error
    - nghttp3_conn_add_write_offset
    - ngtcp2_ccerr_set_application_error
    - nghttp3_conn_shutdown_stream_write
    - ngtcp2_path_storage_zero
    - nghttp3_conn_writev_stream
    - ngtcp2_conn_get_max_data_left
    - ngtcp2_conn_writev_stream
    - GF_LOG
    - assert
    - ngtcp2_timestamp
    - ngtcp2_conn_update_pkt_tx_time
    - ngtcp2_ccerr_set_liberr
    - nghttp3_err_infer_quic_app_error_code
    - nghttp3_conn_block_stream
    - ngtcp2_conn_get_path_max_tx_udp_payload_size
    - ngtcp2_strerror
    - ngtcp2_conn_get_max_tx_udp_payload_size
    - quic_send_packet
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h3_session_write_ex(GF_DownloadSession *sess, GF_QuicConnection
      *qc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: h3_session_write_ex
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1046,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1047
      start: 1044
    functionDepth: 6
    functionLinenumber: 1044
    functionLinenumberEnd: 1047
    functionName: h3_session_write
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - h3_session_write_ex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h3_session_write(GF_DownloadSession *sess)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nghttp3_conn_close_stream
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1053,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - sess
    - is_abort
    argTypes:
    - GF_DownloadSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1055
      start: 1049
    functionDepth: 0
    functionLinenumber: 1049
    functionLinenumberEnd: 1055
    functionName: h3_stream_reset
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - nghttp3_conn_close_stream
    linkageType: ''
    returnType: void
    signature: void h3_stream_reset(GF_DownloadSession *sess, Bool is_abort)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: nghttp3_conn_resume_stream
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1067,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1070
      start: 1057
    functionDepth: 0
    functionLinenumber: 1057
    functionLinenumberEnd: 1070
    functionName: h3_resume_stream
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - nghttp3_conn_resume_stream
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h3_resume_stream(GF_DownloadSession *sess)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ngtcp2_conn_in_closing_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1076,1
    - Dst: ngtcp2_conn_in_draining_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1077,1
    - Dst: ngtcp2_path_storage_zero
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1082,1
    - Dst: ngtcp2_conn_write_connection_close
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1086,1
    - Dst: ngtcp2_timestamp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1086,1
    - Dst: gf_sk_send_ex
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1090,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 8
    argCount: 1
    argNames:
    - hmux
    argTypes:
    - struct _http_mux_session*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1092
      start: 1072
    functionDepth: 5
    functionLinenumber: 1072
    functionLinenumberEnd: 1092
    functionName: h3_close
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_sk_send_ex
    - ngtcp2_path_storage_zero
    - ngtcp2_conn_in_closing_period
    - ngtcp2_timestamp
    - ngtcp2_conn_write_connection_close
    - ngtcp2_conn_in_draining_period
    linkageType: ''
    returnType: void
    signature: void h3_close(struct _http_mux_session *hmux)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: nghttp3_conn_del
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1098,1
    - Dst: ngtcp2_conn_del
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1099,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1100,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1101,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1103,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1104,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1106,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - hmux
    argTypes:
    - struct _http_mux_session*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1107
      start: 1094
    functionDepth: 3
    functionLinenumber: 1094
    functionLinenumberEnd: 1107
    functionName: h3_destroy
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_free
    - ngtcp2_conn_del
    - nghttp3_conn_del
    - gf_list_del_item
    linkageType: ''
    returnType: void
    signature: void h3_destroy(struct _http_mux_session *hmux)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1117,1
    - Dst: gf_dm_read_data
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1122,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1125,1
    - Dst: h3_data_pending
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1129,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1130,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1139,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 30
    argCount: 2
    argNames:
    - sess
    - for_close
    argTypes:
    - GF_DownloadSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1154
      start: 1109
    functionDepth: 2
    functionLinenumber: 1109
    functionLinenumberEnd: 1154
    functionName: h3_async_flush
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - h3_data_pending
    - gf_mx_p
    - gf_assert
    - SET_LAST_ERR
    - gf_mx_v
    - gf_dm_read_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h3_async_flush(GF_DownloadSession *sess, Bool for_close)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ngtcp2_conn_read_pkt
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1165,1
    - Dst: ngtcp2_timestamp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1165,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1167,1
    - Dst: ngtcp2_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1167,1
    - Dst: ngtcp2_ccerr_set_tls_alert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1170,1
    - Dst: ngtcp2_conn_get_tls_alert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1170,1
    - Dst: ngtcp2_ccerr_set_liberr
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1172,1
    - Dst: h3_session_write
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1182,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - sess
    - data
    - nb_bytes
    argTypes:
    - GF_DownloadSession*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1185
      start: 1156
    functionDepth: 7
    functionLinenumber: 1156
    functionLinenumberEnd: 1185
    functionName: h3_data_received
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - ngtcp2_ccerr_set_tls_alert
    - GF_LOG
    - ngtcp2_timestamp
    - ngtcp2_conn_read_pkt
    - ngtcp2_conn_get_tls_alert
    - ngtcp2_ccerr_set_liberr
    - ngtcp2_strerror
    - h3_session_write
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h3_data_received(GF_DownloadSession *sess, const u8 *data, u32
      nb_bytes)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - conn_ref
    argTypes:
    - ngtcp2_crypto_conn_ref*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1190
      start: 1186
    functionDepth: 0
    functionLinenumber: 1186
    functionLinenumberEnd: 1190
    functionName: ngq_get_conn
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ngtcp2_conn
    signature: ngtcp2_conn *ngq_get_conn(ngtcp2_crypto_conn_ref *conn_ref)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1196,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - conn
    - user_data
    argTypes:
    - ngtcp2_conn*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1199
      start: 1191
    functionDepth: 1
    functionLinenumber: 1191
    functionLinenumberEnd: 1199
    functionName: ngq_handshake_completed
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: int
    signature: int ngq_handshake_completed(ngtcp2_conn *conn, void *user_data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: nghttp3_conn_read_stream
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1208,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1210,1
    - Dst: nghttp3_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1210,1
    - Dst: ngtcp2_ccerr_set_application_error
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1211,1
    - Dst: nghttp3_err_infer_quic_app_error_code
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1211,1
    - Dst: ngtcp2_conn_extend_max_stream_offset
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1214,1
    - Dst: ngtcp2_conn_extend_max_offset
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1215,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 8
    argNames:
    - conn
    - flags
    - stream_id
    - offset
    - data
    - datalen
    - user_data
    - stream_user_data
    argTypes:
    - ngtcp2_conn*
    - uint32_t
    - int64_t
    - uint64_t
    - uint8_t*
    - size_t
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1217
      start: 1201
    functionDepth: 1
    functionLinenumber: 1201
    functionLinenumberEnd: 1217
    functionName: ngq_recv_stream_data
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - nghttp3_strerror
    - ngtcp2_ccerr_set_application_error
    - ngtcp2_conn_extend_max_offset
    - nghttp3_conn_read_stream
    - GF_LOG
    - ngtcp2_conn_extend_max_stream_offset
    - nghttp3_err_infer_quic_app_error_code
    linkageType: ''
    returnType: int
    signature: "int ngq_recv_stream_data(ngtcp2_conn *conn, uint32_t flags, int64_t
      stream_id,\n                     uint64_t offset, const uint8_t *data, size_t
      datalen,\n                     void *user_data, void *stream_user_data)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nghttp3_conn_add_ack_offset
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1224,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1226,1
    - Dst: nghttp3_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1226,1
    - Dst: ngtcp2_ccerr_set_application_error
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1227,1
    - Dst: nghttp3_err_infer_quic_app_error_code
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1227,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 6
    argNames:
    - conn
    - stream_id
    - offset
    - datalen
    - user_data
    - stream_user_data
    argTypes:
    - ngtcp2_conn*
    - int64_t
    - uint64_t
    - uint64_t
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1231
      start: 1219
    functionDepth: 1
    functionLinenumber: 1219
    functionLinenumberEnd: 1231
    functionName: ngq_acked_stream_data_offset
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - nghttp3_strerror
    - nghttp3_conn_add_ack_offset
    - ngtcp2_ccerr_set_application_error
    - GF_LOG
    - nghttp3_err_infer_quic_app_error_code
    linkageType: ''
    returnType: int
    signature: "int ngq_acked_stream_data_offset(ngtcp2_conn *conn, int64_t stream_id,\n
      \                            uint64_t offset, uint64_t datalen, void *user_data,\n
      \                            void *stream_user_data)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nghttp3_conn_unblock_stream
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1238,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1240,1
    - Dst: nghttp3_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1240,1
    - Dst: ngtcp2_ccerr_set_application_error
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1241,1
    - Dst: nghttp3_err_infer_quic_app_error_code
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1241,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - conn
    - stream_id
    - max_data
    - user_data
    - stream_user_data
    argTypes:
    - ngtcp2_conn*
    - int64_t
    - uint64_t
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1245
      start: 1233
    functionDepth: 1
    functionLinenumber: 1233
    functionLinenumberEnd: 1245
    functionName: ngq_extend_max_stream_data
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - nghttp3_strerror
    - ngtcp2_ccerr_set_application_error
    - GF_LOG
    - nghttp3_conn_unblock_stream
    - nghttp3_err_infer_quic_app_error_code
    linkageType: ''
    returnType: int
    signature: "int ngq_extend_max_stream_data(ngtcp2_conn *conn, int64_t stream_id,\n
      \                          uint64_t max_data, void *user_data,\n                           void
      *stream_user_data)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: h3_setup_http3
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1253,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - conn
    - level
    - user_data
    argTypes:
    - ngtcp2_conn*
    - ngtcp2_encryption_level
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1256
      start: 1247
    functionDepth: 2
    functionLinenumber: 1247
    functionLinenumberEnd: 1256
    functionName: ngq_recv_rx_key
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - h3_setup_http3
    linkageType: ''
    returnType: int
    signature: int ngq_recv_rx_key(ngtcp2_conn *conn, ngtcp2_encryption_level level,
      void *user_data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: nghttp3_conn_shutdown_stream_read
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1264,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1266,1
    - Dst: nghttp3_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1266,1
    - Dst: ngtcp2_ccerr_set_application_error
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1267,1
    - Dst: nghttp3_err_infer_quic_app_error_code
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1267,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 5
    argNames:
    - conn
    - stream_id
    - app_error_code
    - user_data
    - stream_user_data
    argTypes:
    - ngtcp2_conn*
    - int64_t
    - uint64_t
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1271
      start: 1258
    functionDepth: 1
    functionLinenumber: 1258
    functionLinenumberEnd: 1271
    functionName: ngq_stream_stop_sending
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - nghttp3_strerror
    - ngtcp2_ccerr_set_application_error
    - GF_LOG
    - nghttp3_conn_shutdown_stream_read
    - nghttp3_err_infer_quic_app_error_code
    linkageType: ''
    returnType: int
    signature: "int ngq_stream_stop_sending(ngtcp2_conn *conn, int64_t stream_id,\n
      \                       uint64_t app_error_code, void *user_data,\n                        void
      *stream_user_data)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: nghttp3_conn_close_stream
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1289,1
    - Dst: ngtcp2_is_bidi_stream
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1294,1
    - Dst: assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1295,1
    - Dst: ngtcp2_conn_is_local_stream
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1295,1
    - Dst: ngtcp2_conn_extend_max_streams_uni
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1296,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1300,1
    - Dst: nghttp3_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1300,1
    - Dst: ngtcp2_ccerr_set_application_error
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1301,1
    - Dst: nghttp3_err_infer_quic_app_error_code
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1301,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 6
    argNames:
    - conn
    - flags
    - stream_id
    - app_error_code
    - user_data
    - stream_user_data
    argTypes:
    - ngtcp2_conn*
    - uint32_t
    - int64_t
    - uint64_t
    - void*
    - void*
    assertStmts:
    - condition: (!ngtcp2_conn_is_local_stream(qc->conn, stream_id))
      pos:
        line_end: 1294
        line_start: 1294
        source_file: /src/gpac/src/utils/downloader_ngtcp2.c
    constantsTouched: []
    func_position:
      end: 1305
      start: 1274
    functionDepth: 1
    functionLinenumber: 1274
    functionLinenumberEnd: 1305
    functionName: ngq_stream_close
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - nghttp3_strerror
    - ngtcp2_ccerr_set_application_error
    - ngtcp2_conn_extend_max_streams_uni
    - GF_LOG
    - assert
    - ngtcp2_is_bidi_stream
    - nghttp3_conn_close_stream
    - nghttp3_err_infer_quic_app_error_code
    - ngtcp2_conn_is_local_stream
    linkageType: ''
    returnType: int
    signature: "int ngq_stream_close(ngtcp2_conn *conn, uint32_t flags, int64_t stream_id,\n
      \                uint64_t app_error_code, void *user_data,\n                 void
      *stream_user_data)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: nghttp3_conn_shutdown_stream_read
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1314,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1316,1
    - Dst: nghttp3_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1316,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 6
    argNames:
    - conn
    - stream_id
    - final_size
    - app_error_code
    - user_data
    - stream_user_data
    argTypes:
    - ngtcp2_conn*
    - int64_t
    - uint64_t
    - uint64_t
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1320
      start: 1307
    functionDepth: 1
    functionLinenumber: 1307
    functionLinenumberEnd: 1320
    functionName: ngq_stream_reset
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - nghttp3_strerror
    - GF_LOG
    - nghttp3_conn_shutdown_stream_read
    linkageType: ''
    returnType: int
    signature: "int ngq_stream_reset(ngtcp2_conn *conn, int64_t stream_id, uint64_t
      final_size,\n                 uint64_t app_error_code, void *user_data,\n                 void
      *stream_user_data)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ngtcp2_is_bidi_stream
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1325,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - conn
    - stream_id
    - user_data
    argTypes:
    - ngtcp2_conn*
    - int64_t
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1329
      start: 1322
    functionDepth: 0
    functionLinenumber: 1322
    functionLinenumberEnd: 1329
    functionName: ngq_stream_open
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - ngtcp2_is_bidi_stream
    linkageType: ''
    returnType: int
    signature: int ngq_stream_open(ngtcp2_conn *conn, int64_t stream_id, void *user_data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: nghttp3_conn_submit_shutdown_notice
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1337,1
    - Dst: h3_session_write
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1338,1
    - Dst: nghttp3_conn_shutdown
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1339,1
    - Dst: h3_session_write
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1340,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1343
      start: 1331
    functionDepth: 7
    functionLinenumber: 1331
    functionLinenumberEnd: 1343
    functionName: h3_close_session
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - nghttp3_conn_submit_shutdown_notice
    - nghttp3_conn_shutdown
    - h3_session_write
    linkageType: ''
    returnType: void
    signature: void h3_close_session(GF_DownloadSession *sess)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_ssl_try_connect
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1352,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1358,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1360,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1362,1
    - Dst: RAND_bytes
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1371,1
    - Dst: SSL_set_app_data
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1373,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1379,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1380,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1384,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1385,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1396,1
    - Dst: gf_sk_bind_ex
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1397,1
    - Dst: gf_sk_connect_ex
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1406,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1409,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1410,1
    - Dst: RAND_bytes
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1474,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1475,1
    - Dst: ngtcp2_settings_default
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1480,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1482,1
    - Dst: nghttp3_set_debug_vprintf_callback
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1484,1
    - Dst: nghttp3_set_debug_vprintf_callback
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1486,1
    - Dst: ngtcp2_timestamp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1489,1
    - Dst: ngtcp2_transport_params_default
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1509,1
    - Dst: ngtcp2_crypto_generate_stateless_reset_token
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1532,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1534,1
    - Dst: ngtcp2_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1534,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1539,1
    - Dst: ngtcp2_conn_server_new
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1541,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1544,1
    - Dst: ngtcp2_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1544,1
    - Dst: RAND_bytes
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1551,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1552,1
    - Dst: ngtcp2_conn_client_new
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1558,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1561,1
    - Dst: ngtcp2_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1561,1
    - Dst: ngtcp2_conn_set_tls_native_handle
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1567,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1570,1
    - Dst: h3_setup_session
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1585,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1587,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1591,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1592,1
    - Dst: h3_session_write
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1601,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1604,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1606,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1607,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1608,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 195
    argCount: 8
    argNames:
    - sess
    - server
    - server_port
    - srv_hd
    - srv_ocid
    - token_type
    - srv_path
    - qsc
    argTypes:
    - GF_DownloadSession*
    - char*
    - u32
    - ngtcp2_pkt_hd*
    - ngtcp2_cid*
    - u32
    - ngtcp2_path*
    - GF_QuicServerConnection*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1610
      start: 1345
    functionDepth: 7
    functionLinenumber: 1345
    functionLinenumberEnd: 1610
    functionName: h3_initialize
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - RAND_bytes
    - ngtcp2_crypto_generate_stateless_reset_token
    - gf_ssl_try_connect
    - gf_mx_new
    - gf_sk_connect_ex
    - gf_list_new
    - ngtcp2_settings_default
    - memcpy
    - sprintf
    - gf_list_add
    - SSL_set_app_data
    - nghttp3_set_debug_vprintf_callback
    - ngtcp2_transport_params_default
    - GF_LOG
    - ngtcp2_timestamp
    - h3_setup_session
    - ngtcp2_conn_client_new
    - ngtcp2_conn_server_new
    - gf_malloc
    - ngtcp2_strerror
    - h3_session_write
    - ngtcp2_conn_set_tls_native_handle
    - gf_sk_bind_ex
    - gf_opts_get_bool
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err h3_initialize(GF_DownloadSession *sess, char *server, u32 server_port,\n\tconst
      ngtcp2_pkt_hd *srv_hd, const ngtcp2_cid *srv_ocid, u32 token_type, ngtcp2_path
      *srv_path, GF_QuicServerConnection *qsc)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: h3_initialize
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1615,1
    - Dst: gf_dm_read_data
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1624,1
    - Dst: h3_setup_http3
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1632,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 3
    argNames:
    - sess
    - server
    - server_port
    argTypes:
    - GF_DownloadSession*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1633
      start: 1612
    functionDepth: 8
    functionLinenumber: 1612
    functionLinenumberEnd: 1633
    functionName: http3_connect
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 1
    functionsReached:
    - gf_dm_read_data
    - h3_initialize
    - h3_setup_http3
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err http3_connect(GF_DownloadSession *sess, char *server, u32 server_port)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - sess
    - user_io
    - usr_cbk
    argTypes:
    - GF_DownloadSession*
    - gf_dm_user_io
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1642
      start: 1637
    functionDepth: 0
    functionLinenumber: 1637
    functionLinenumberEnd: 1642
    functionName: gf_dm_sess_set_callback
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_dm_sess_set_callback(GF_DownloadSession *sess, gf_dm_user_io
      user_io, void *usr_cbk)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ngtcp2_crypto_quictls_init
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1653,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1659,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1661,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1662,1
    - Dst: gf_sk_bind_ex
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1663,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1665,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1666,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1669,1
    - Dst: gf_sk_server_mode
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1670,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1671,1
    - Dst: RAND_bytes
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1674,1
    - Dst: gf_sha256_csum
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1675,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 7
    argNames:
    - dm
    - ssl_ctx
    - oq
    - ip
    - port
    - netcap_id
    - udta
    argTypes:
    - GF_DownloadManager*
    - void*
    - GF_QuicServer**
    - char*
    - u32
    - char*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1685
      start: 1646
    functionDepth: 3
    functionLinenumber: 1646
    functionLinenumberEnd: 1685
    functionName: gf_dm_quic_server_new
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_sk_server_mode
    - gf_sha256_csum
    - GF_SAFEALLOC
    - RAND_bytes
    - gf_sk_del
    - gf_sk_bind_ex
    - ngtcp2_crypto_quictls_init
    - gf_sk_new_ex
    - gf_sk_set_block_mode
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err gf_dm_quic_server_new(GF_DownloadManager *dm, void *ssl_ctx,
      GF_QuicServer **oq, const char *ip, u32 port, const char *netcap_id,\n\tBool
      (*accept_conn)(void *udta, GF_DownloadSession *sess, const char *address, u32
      port),\n\tvoid *udta)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1688,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1689,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1690,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1691,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - qs
    argTypes:
    - GF_QuicServer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1692
      start: 1686
    functionDepth: 2
    functionLinenumber: 1686
    functionLinenumberEnd: 1692
    functionName: gf_dm_quic_server_del
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sk_del
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_dm_quic_server_del(GF_QuicServer *qs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - qs
    argTypes:
    - GF_QuicServer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1696
      start: 1693
    functionDepth: 0
    functionLinenumber: 1693
    functionLinenumberEnd: 1696
    functionName: gf_dm_quic_get_socket
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Socket
    signature: GF_Socket *gf_dm_quic_get_socket(GF_QuicServer *qs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ngtcp2_timestamp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1700,1
    - Dst: ngtcp2_crypto_verify_regular_token
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1701,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - qs
    - hd
    - sa
    - salen
    argTypes:
    - GF_QuicServer*
    - ngtcp2_pkt_hd*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1708
      start: 1698
    functionDepth: 3
    functionLinenumber: 1698
    functionLinenumberEnd: 1708
    functionName: quic_verify_token
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - ngtcp2_timestamp
    - ngtcp2_crypto_verify_regular_token
    linkageType: ''
    returnType: int
    signature: int quic_verify_token(GF_QuicServer *qs, const ngtcp2_pkt_hd *hd, const
      u8 *sa, u32 salen)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ngtcp2_timestamp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1711,1
    - Dst: ngtcp2_crypto_verify_retry_token2
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1712,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 5
    argNames:
    - qs
    - ocid
    - hd
    - sa
    - salen
    argTypes:
    - GF_QuicServer*
    - ngtcp2_cid*
    - ngtcp2_pkt_hd*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1727
      start: 1709
    functionDepth: 3
    functionLinenumber: 1709
    functionLinenumberEnd: 1727
    functionName: quic_verify_retry_token
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - ngtcp2_timestamp
    - ngtcp2_crypto_verify_retry_token2
    linkageType: ''
    returnType: int
    signature: int quic_verify_retry_token(GF_QuicServer *qs, ngtcp2_cid *ocid, const
      ngtcp2_pkt_hd *hd, const u8 *sa, u32 salen)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_send_to
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1732,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 5
    argNames:
    - qs
    - buf
    - len
    - to_a
    - to_alen
    argTypes:
    - GF_QuicServer*
    - u8*
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1739
      start: 1729
    functionDepth: 0
    functionLinenumber: 1729
    functionLinenumberEnd: 1739
    functionName: quic_send_packet
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 1
    functionsReached:
    - gf_sk_send_to
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err quic_send_packet(GF_QuicServer *qs, const u8 *buf, u32 len,
      const u8 *to_a, u32 to_alen)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: RAND_bytes
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1745,1
    - Dst: ngtcp2_timestamp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1749,1
    - Dst: ngtcp2_crypto_generate_retry_token2
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1751,1
    - Dst: MIN
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1758,1
    - Dst: ngtcp2_crypto_write_retry
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1761,1
    - Dst: quic_send_packet
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1765,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - qs
    - chd
    - sa
    - salen
    - max_pktlen
    argTypes:
    - GF_QuicServer*
    - ngtcp2_pkt_hd*
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1768
      start: 1741
    functionDepth: 3
    functionLinenumber: 1741
    functionLinenumberEnd: 1768
    functionName: quic_send_retry
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - RAND_bytes
    - ngtcp2_timestamp
    - MIN
    - ngtcp2_crypto_generate_retry_token2
    - ngtcp2_crypto_write_retry
    - quic_send_packet
    linkageType: ''
    returnType: int
    signature: int quic_send_retry(GF_QuicServer *qs, const ngtcp2_pkt_hd *chd, const
      u8 *sa, u32 salen, u32 max_pktlen)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ngtcp2_cid_init
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1776,1
    - Dst: ngtcp2_crypto_generate_stateless_reset_token
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1779,1
    - Dst: RAND_bytes
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1793,1
    - Dst: ngtcp2_pkt_write_stateless_reset
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1798,1
    - Dst: quic_send_packet
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1802,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 6
    argNames:
    - qs
    - pktlen
    - dcid
    - dcid_len
    - sa
    - salen
    argTypes:
    - GF_QuicServer*
    - u32
    - u8*
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1805
      start: 1770
    functionDepth: 1
    functionLinenumber: 1770
    functionLinenumberEnd: 1805
    functionName: quic_send_stateless_reset
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - RAND_bytes
    - ngtcp2_pkt_write_stateless_reset
    - ngtcp2_crypto_generate_stateless_reset_token
    - ngtcp2_cid_init
    - quic_send_packet
    linkageType: ''
    returnType: int
    signature: int quic_send_stateless_reset(GF_QuicServer *qs, u32 pktlen, const
      u8 *dcid, u32 dcid_len, const u8 *sa, u32 salen)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ngtcp2_crypto_write_connection_close
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1810,1
    - Dst: quic_send_packet
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1812,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - qs
    - chd
    - sa
    - salen
    argTypes:
    - GF_QuicServer*
    - ngtcp2_pkt_hd*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1815
      start: 1807
    functionDepth: 1
    functionLinenumber: 1807
    functionLinenumberEnd: 1815
    functionName: quic_send_stateless_connection_close
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - quic_send_packet
    - ngtcp2_crypto_write_connection_close
    linkageType: ''
    returnType: int
    signature: int quic_send_stateless_connection_close(GF_QuicServer *qs, const ngtcp2_pkt_hd
      *chd, const u8 *sa, u32 salen)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1819,1
    - Dst: ngtcp2_conn_get_pto
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1820,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - qc
    argTypes:
    - GF_QuicConnection*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1822
      start: 1817
    functionDepth: 2
    functionLinenumber: 1817
    functionLinenumberEnd: 1822
    functionName: quic_start_draining_period
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - ngtcp2_conn_get_pto
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: void
    signature: void quic_start_draining_period(GF_QuicConnection *qc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ngtcp2_conn_in_closing_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1827,1
    - Dst: ngtcp2_conn_in_draining_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1827,1
    - Dst: ngtcp2_path_storage_zero
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1832,1
    - Dst: ngtcp2_conn_write_connection_close
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1834,1
    - Dst: ngtcp2_timestamp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1834,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1836,1
    - Dst: ngtcp2_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1836,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1842,1
    - Dst: ngtcp2_conn_get_pto
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1843,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - qc
    argTypes:
    - GF_QuicConnection*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1845
      start: 1824
    functionDepth: 3
    functionLinenumber: 1824
    functionLinenumberEnd: 1845
    functionName: quic_start_closing_period
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - ngtcp2_conn_get_pto
    - ngtcp2_path_storage_zero
    - ngtcp2_conn_in_closing_period
    - GF_LOG
    - ngtcp2_timestamp
    - ngtcp2_conn_write_connection_close
    - gf_sys_clock_high_res
    - ngtcp2_conn_in_draining_period
    - ngtcp2_strerror
    linkageType: ''
    returnType: Bool
    signature: Bool quic_start_closing_period(GF_QuicConnection *qc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1849,1
    - Dst: assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1850,1
    - Dst: assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1851,1
    - Dst: ngtcp2_conn_in_draining_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1851,1
    - Dst: ngtcp2_conn_get_path
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1852,1
    - Dst: quic_send_packet
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1853,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - qc
    argTypes:
    - GF_QuicConnection*
    assertStmts:
    - condition: (qc->serv_conn && qc->serv_conn->closebuf_len)
      pos:
        line_end: 1848
        line_start: 1848
        source_file: /src/gpac/src/utils/downloader_ngtcp2.c
    - condition: (qc->conn)
      pos:
        line_end: 1849
        line_start: 1849
        source_file: /src/gpac/src/utils/downloader_ngtcp2.c
    - condition: (!ngtcp2_conn_in_draining_period(qc->conn))
      pos:
        line_end: 1850
        line_start: 1850
        source_file: /src/gpac/src/utils/downloader_ngtcp2.c
    constantsTouched: []
    func_position:
      end: 1854
      start: 1847
    functionDepth: 1
    functionLinenumber: 1847
    functionLinenumberEnd: 1854
    functionName: quic_send_conn_close
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - ngtcp2_conn_get_path
    - quic_send_packet
    - assert
    - ngtcp2_conn_in_draining_period
    linkageType: ''
    returnType: int
    signature: int quic_send_conn_close(GF_QuicConnection *qc)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: quic_start_closing_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1861,1
    - Dst: ngtcp2_conn_in_draining_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1865,1
    - Dst: quic_send_conn_close
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1868,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - qc
    argTypes:
    - GF_QuicConnection*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1871
      start: 1856
    functionDepth: 4
    functionLinenumber: 1856
    functionLinenumberEnd: 1871
    functionName: quic_handle_error
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 1
    functionsReached:
    - ngtcp2_conn_in_draining_period
    - quic_start_closing_period
    - quic_send_conn_close
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err quic_handle_error(GF_QuicConnection *qc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - c
    argTypes:
    - GF_QuicServerConnection*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1880
      start: 1873
    functionDepth: 0
    functionLinenumber: 1873
    functionLinenumberEnd: 1880
    functionName: detach_connection
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void detach_connection(GF_QuicServerConnection *c)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: ngtcp2_conn_read_pkt
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1889,1
    - Dst: ngtcp2_timestamp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1889,1
    - Dst: quic_start_draining_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1893,1
    - Dst: ngtcp2_ccerr_set_tls_alert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1902,1
    - Dst: ngtcp2_conn_get_tls_alert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1902,1
    - Dst: ngtcp2_ccerr_set_liberr
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1904,1
    - Dst: quic_handle_error
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1907,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1910,1
    - Dst: ngtcp2_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1910,1
    - Dst: quic_handle_error
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1912,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 3
    argNames:
    - c
    - data
    - nb_bytes
    argTypes:
    - GF_QuicServerConnection*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1916
      start: 1882
    functionDepth: 5
    functionLinenumber: 1882
    functionLinenumberEnd: 1916
    functionName: gf_quic_on_data
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - quic_handle_error
    - ngtcp2_ccerr_set_tls_alert
    - GF_LOG
    - ngtcp2_timestamp
    - ngtcp2_conn_read_pkt
    - ngtcp2_conn_get_tls_alert
    - ngtcp2_ccerr_set_liberr
    - quic_start_draining_period
    - ngtcp2_strerror
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_quic_on_data(GF_QuicServerConnection *c, const u8 *data,
      u32 nb_bytes)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ngtcp2_conn_in_closing_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1921,1
    - Dst: ngtcp2_conn_in_draining_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1921,1
    - Dst: h3_session_write_ex
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1924,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - c
    argTypes:
    - GF_QuicServerConnection*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1925
      start: 1918
    functionDepth: 6
    functionLinenumber: 1918
    functionLinenumberEnd: 1925
    functionName: quic_on_write
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - ngtcp2_conn_in_closing_period
    - h3_session_write_ex
    - ngtcp2_conn_in_draining_period
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err quic_on_write(GF_QuicServerConnection *c)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: ngtcp2_accept
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1935,1
    - Dst: quic_send_stateless_reset
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1938,1
    - Dst: assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1946,1
    - Dst: quic_send_retry
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1950,1
    - Dst: quic_send_stateless_connection_close
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1954,1
    - Dst: quic_verify_retry_token
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1959,1
    - Dst: quic_send_stateless_connection_close
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1965,1
    - Dst: quic_verify_token
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1974,1
    - Dst: quic_send_retry
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1976,1
    - Dst: quic_send_retry
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1987,1
    - Dst: gf_sk_get_remote_address_port
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1998,1
    - Dst: gf_dm_sess_new_internal
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2001,1
    - Dst: quic_send_stateless_connection_close
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2003,1
    - Dst: GF_QuicServer*::accept_conn
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2007,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2008,1
    - Dst: quic_send_stateless_connection_close
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2009,1
    - Dst: SSL_new
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2014,1
    - Dst: quic_send_stateless_connection_close
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2016,1
    - Dst: SSL_set_accept_state
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2020,1
    - Dst: SSL_set_quic_early_data_enabled
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2022,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2025,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2027,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2030,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2033,1
    - Dst: h3_initialize
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2043,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2046,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2048,1
    - Dst: quic_send_stateless_connection_close
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2050,1
    - Dst: gf_quic_on_data
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2055,1
    - Dst: quic_send_retry
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2058,1
    - Dst: quic_on_write
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2062,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 114
    argCount: 7
    argNames:
    - qs
    - oc
    - vc
    - data
    - data_len
    - s_add
    - s_add_len
    argTypes:
    - GF_QuicServer*
    - GF_QuicServerConnection**
    - ngtcp2_version_cid*
    - u8*
    - u32
    - u8*
    - u32
    assertStmts:
    - condition: (hd.type == NGTCP2_PKT_INITIAL)
      pos:
        line_end: 1945
        line_start: 1945
        source_file: /src/gpac/src/utils/downloader_ngtcp2.c
    constantsTouched: []
    func_position:
      end: 2066
      start: 1927
    functionDepth: 8
    functionLinenumber: 1927
    functionLinenumberEnd: 2066
    functionName: gf_quic_create_connection
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_dm_sess_new_internal
    - GF_SAFEALLOC
    - gf_sk_get_remote_address_port
    - h3_initialize
    - gf_dm_sess_del
    - GF_QuicServer*::accept_conn
    - SSL_new
    - memcpy
    - SSL_set_quic_early_data_enabled
    - gf_list_add
    - SSL_set_accept_state
    - ngtcp2_accept
    - quic_verify_retry_token
    - quic_verify_token
    - quic_send_retry
    - quic_on_write
    - assert
    - gf_list_del_item
    - quic_send_stateless_reset
    - gf_quic_on_data
    - quic_send_stateless_connection_close
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_quic_create_connection(GF_QuicServer *qs, GF_QuicServerConnection
      **oc, ngtcp2_version_cid *vc, const u8 *data, u32 data_len, const u8 *s_add,
      u32 s_add_len)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_receive
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2078,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2082,1
    - Dst: gf_sk_get_address
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2086,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2088,1
    - Dst: ngtcp2_pkt_decode_version_cid
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2092,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2100,1
    - Dst: ngtcp2_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2100,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2105,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2107,1
    - Dst: memcmp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2114,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2124,1
    - Dst: gf_quic_create_connection
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2125,1
    - Dst: ngtcp2_conn_in_closing_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2132,1
    - Dst: quic_send_conn_close
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2133,1
    - Dst: detach_connection
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2134,1
    - Dst: ngtcp2_conn_in_draining_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2139,1
    - Dst: gf_quic_on_data
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2143,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2146,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2146,1
    - Dst: detach_connection
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2147,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 69
    argCount: 1
    argNames:
    - qs
    argTypes:
    - GF_QuicServer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2156
      start: 2068
    functionDepth: 9
    functionLinenumber: 2068
    functionLinenumberEnd: 2156
    functionName: gf_dm_quic_process
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_quic_create_connection
    - gf_sk_get_address
    - gf_list_get
    - memcmp
    - quic_send_conn_close
    - gf_sk_receive
    - GF_LOG
    - ngtcp2_conn_in_closing_period
    - detach_connection
    - gf_quic_on_data
    - gf_list_count
    - gf_error_to_string
    - ngtcp2_pkt_decode_version_cid
    - ngtcp2_conn_in_draining_period
    - ngtcp2_strerror
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dm_quic_process(GF_QuicServer *qs)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2163,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2165,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2166,1
    - Dst: ngtcp2_conn_in_closing_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2168,1
    - Dst: detach_connection
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2172,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2175,1
    - Dst: ngtcp2_conn_in_draining_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2177,1
    - Dst: detach_connection
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2181,1
    - Dst: quic_on_write
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2186,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 27
    argCount: 1
    argNames:
    - qs
    argTypes:
    - GF_QuicServer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2191
      start: 2158
    functionDepth: 7
    functionLinenumber: 2158
    functionLinenumberEnd: 2191
    functionName: gf_dm_quic_verify
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - ngtcp2_conn_in_closing_period
    - detach_connection
    - quic_on_write
    - gf_list_count
    - gf_sys_clock_high_res
    - ngtcp2_conn_in_draining_period
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dm_quic_verify(GF_QuicServer *qs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2199
      start: 2193
    functionDepth: 0
    functionLinenumber: 2193
    functionLinenumberEnd: 2199
    functionName: h3_check_sess
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h3_check_sess(GF_DownloadSession *sess)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/os_thread.c:88,1
    - Dst: gf_th_id
      Src: /src/gpac/src/utils/os_thread.c:89,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/os_thread.c:91,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - t
    argTypes:
    - GF_Thread*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 92
    functionName: log_add_thread
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_th_id
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void log_add_thread(GF_Thread *t)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/os_thread.c:95,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_thread.c:96,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_thread.c:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - t
    argTypes:
    - GF_Thread*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 93
    functionDepth: 3
    functionLinenumber: 93
    functionLinenumberEnd: 100
    functionName: log_del_thread
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_del_item
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void log_del_thread(GF_Thread *t)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_id
      Src: /src/gpac/src/utils/os_thread.c:106,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_thread.c:108,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/os_thread.c:110,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_thread.c:113,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - id
    - szName
    argTypes:
    - u32
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 115
    functionName: log_th_name
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_th_id
    - sprintf
    linkageType: ''
    returnType: char
    signature: char *log_th_name(u32 id, char szName[100])
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - GF_Thread*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: gf_th_log_name
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_th_log_name(GF_Thread *t)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/os_thread.c:127,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_thread.c:129,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_thread.c:130,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_thread.c:140,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_thread.c:143,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_thread.c:144,1
    - Dst: log_add_thread
      Src: /src/gpac/src/utils/os_thread.c:146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 124
    functionDepth: 6
    functionLinenumber: 124
    functionLinenumberEnd: 149
    functionName: gf_th_new
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 20
    functionsReached:
    - gf_strdup
    - log_add_thread
    - sprintf
    - memset
    - gf_opts_get_bool
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_th_new(const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - t
    argTypes:
    - GF_Thread*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 166
    functionName: gf_register_before_exit_function
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_register_before_exit_function(GF_Thread *t, u32 (*toRunBeforePthreadExit)(void
      *param) )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: pthread_key_create
      Src: /src/gpac/src/utils/os_thread.c:173,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:175,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 177
    functionName: currentThreadInfoKey_alloc
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - pthread_key_create
    linkageType: ''
    returnType: void
    signature: void currentThreadInfoKey_alloc()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pthread_getspecific
      Src: /src/gpac/src/utils/os_thread.c:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionName: gf_th_current
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 1
    functionsReached:
    - pthread_getspecific
    linkageType: ''
    returnType: GF_Thread
    signature: GF_Thread * gf_th_current()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: pthread_setname_np
      Src: /src/gpac/src/utils/os_thread.c:206,1
    - Dst: pthread_setname_np
      Src: /src/gpac/src/utils/os_thread.c:208,1
    - Dst: pthread_once
      Src: /src/gpac/src/utils/os_thread.c:217,1
    - Dst: pthread_setspecific
      Src: /src/gpac/src/utils/os_thread.c:217,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:218,1
    - Dst: gf_sema_notify
      Src: /src/gpac/src/utils/os_thread.c:223,1
    - Dst: gf_th_id
      Src: /src/gpac/src/utils/os_thread.c:226,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:227,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/os_thread.c:227,1
    - Dst: gf_rand_init
      Src: /src/gpac/src/utils/os_thread.c:231,1
    - Dst: GF_Thread*::Run
      Src: /src/gpac/src/utils/os_thread.c:234,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:240,1
    - Dst: emscripten_unwind_to_js_event_loop
      Src: /src/gpac/src/utils/os_thread.c:241,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:250,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/os_thread.c:250,1
    - Dst: CloseHandle
      Src: /src/gpac/src/utils/os_thread.c:255,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_thread.c:256,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:257,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:265,1
    - Dst: GF_Thread*::RunBeforeExit
      Src: /src/gpac/src/utils/os_thread.c:268,1
    - Dst: pthread_exit
      Src: /src/gpac/src/utils/os_thread.c:270,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 39
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 273
    functionName: RunThread
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 0
    functionsReached:
    - gf_th_id
    - GF_Thread*::Run
    - emscripten_unwind_to_js_event_loop
    - GetLastError
    - GF_LOG
    - gf_sys_clock
    - gf_sema_notify
    - CloseHandle
    - pthread_exit
    - pthread_setspecific
    - GF_Thread*::RunBeforeExit
    - gf_rand_init
    - pthread_setname_np
    - pthread_once
    linkageType: ''
    returnType: void
    signature: void * RunThread(void *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:344,1
    - Dst: emscripten_dispatch_to_thread_async_
      Src: /src/gpac/src/utils/os_thread.c:345,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - t
    - param
    argTypes:
    - GF_Thread*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 341
    functionDepth: 1
    functionLinenumber: 341
    functionLinenumberEnd: 347
    functionName: gf_th_async_call
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - emscripten_dispatch_to_thread_async_
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_th_async_call(GF_Thread *t, u32 (*Run)(void *param), void
      *param)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_status
      Src: /src/gpac/src/utils/os_thread.c:354,1
    - Dst: TerminateThread
      Src: /src/gpac/src/utils/os_thread.c:358,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_thread.c:360,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:361,1
    - Dst: WaitForSingleObject
      Src: /src/gpac/src/utils/os_thread.c:365,1
    - Dst: pthread_kill
      Src: /src/gpac/src/utils/os_thread.c:370,1
    - Dst: pthread_cancel
      Src: /src/gpac/src/utils/os_thread.c:372,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:374,1
    - Dst: emscripten_is_main_runtime_thread
      Src: /src/gpac/src/utils/os_thread.c:380,1
    - Dst: pthread_tryjoin_np
      Src: /src/gpac/src/utils/os_thread.c:383,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:384,1
    - Dst: pthread_join
      Src: /src/gpac/src/utils/os_thread.c:387,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:388,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 26
    argCount: 2
    argNames:
    - t
    - Destroy
    argTypes:
    - GF_Thread*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 352
    functionDepth: 1
    functionLinenumber: 352
    functionLinenumberEnd: 395
    functionName: Thread_Stop
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 0
    functionsReached:
    - GetLastError
    - pthread_cancel
    - emscripten_is_main_runtime_thread
    - GF_LOG
    - pthread_tryjoin_np
    - WaitForSingleObject
    - TerminateThread
    - pthread_join
    - pthread_kill
    - gf_th_status
    linkageType: ''
    returnType: void
    signature: void Thread_Stop(GF_Thread *t, Bool Destroy)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Thread_Stop
      Src: /src/gpac/src/utils/os_thread.c:400,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - GF_Thread*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 397
    functionDepth: 0
    functionLinenumber: 397
    functionLinenumberEnd: 401
    functionName: gf_th_stop
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 4
    functionsReached:
    - Thread_Stop
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_th_stop(GF_Thread *t)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Thread_Stop
      Src: /src/gpac/src/utils/os_thread.c:406,1
    - Dst: pthread_detach
      Src: /src/gpac/src/utils/os_thread.c:412,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_thread.c:417,1
    - Dst: log_del_thread
      Src: /src/gpac/src/utils/os_thread.c:418,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_thread.c:420,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - t
    argTypes:
    - GF_Thread*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 403
    functionDepth: 4
    functionLinenumber: 403
    functionLinenumberEnd: 421
    functionName: gf_th_del
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 16
    functionsReached:
    - gf_free
    - Thread_Stop
    - log_del_thread
    - pthread_detach
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_th_del(GF_Thread *t)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: SetThreadPriority
      Src: /src/gpac/src/utils/os_thread.c:457,1
    - Dst: GetCurrentThread
      Src: /src/gpac/src/utils/os_thread.c:457,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_thread.c:459,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:460,1
    - Dst: pthread_setschedparam
      Src: /src/gpac/src/utils/os_thread.c:472,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:473,1
    - Dst: pthread_setschedparam
      Src: /src/gpac/src/utils/os_thread.c:476,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:477,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 42
    argCount: 2
    argNames:
    - t
    - priority
    argTypes:
    - GF_Thread*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 481
      start: 423
    functionDepth: 1
    functionLinenumber: 423
    functionLinenumberEnd: 481
    functionName: gf_th_set_priority
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 1
    functionsReached:
    - GetLastError
    - GF_LOG
    - GetCurrentThread
    - pthread_setschedparam
    - SetThreadPriority
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_th_set_priority(GF_Thread *t, s32 priority)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - GF_Thread*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 483
    functionDepth: 0
    functionLinenumber: 483
    functionLinenumberEnd: 488
    functionName: gf_th_status
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_th_status(GF_Thread *t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetCurrentThreadId
      Src: /src/gpac/src/utils/os_thread.c:495,1
    - Dst: PTR_TO_U_CAST
      Src: /src/gpac/src/utils/os_thread.c:497,1
    - Dst: pthread_self
      Src: /src/gpac/src/utils/os_thread.c:497,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 491
    functionDepth: 0
    functionLinenumber: 491
    functionLinenumberEnd: 499
    functionName: gf_th_id
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 43
    functionsReached:
    - pthread_self
    - PTR_TO_U_CAST
    - GetCurrentThreadId
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_th_id()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_id
      Src: /src/gpac/src/utils/os_thread.c:571,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:573,1
    - Dst: log_th_name
      Src: /src/gpac/src/utils/os_thread.c:573,1
    - Dst: gf_th_id
      Src: /src/gpac/src/utils/os_thread.c:573,1
    - Dst: log_th_name
      Src: /src/gpac/src/utils/os_thread.c:573,1
    - Dst: CloseHandle
      Src: /src/gpac/src/utils/os_thread.c:578,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_thread.c:581,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:582,1
    - Dst: pthread_mutex_destroy
      Src: /src/gpac/src/utils/os_thread.c:589,1
    - Dst: gf_sleep
      Src: /src/gpac/src/utils/os_thread.c:591,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:598,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_thread.c:606,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_thread.c:610,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 1
    argNames:
    - mx
    argTypes:
    - GF_Mutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 611
      start: 563
    functionDepth: 2
    functionLinenumber: 563
    functionLinenumberEnd: 611
    functionName: gf_mx_del
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 27
    functionsReached:
    - gf_free
    - gf_th_id
    - GetLastError
    - GF_LOG
    - gf_sleep
    - log_th_name
    - pthread_mutex_destroy
    - CloseHandle
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_del(GF_Mutex *mx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - mx
    - nolog
    argTypes:
    - GF_Mutex*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 619
      start: 613
    functionDepth: 0
    functionLinenumber: 613
    functionLinenumberEnd: 619
    functionName: gf_mx_toggle_log
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_mx_toggle_log(GF_Mutex *mx, Bool nolog)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_id
      Src: /src/gpac/src/utils/os_thread.c:626,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/os_thread.c:630,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/os_thread.c:633,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/os_thread.c:638,1
    - Dst: ReleaseMutex
      Src: /src/gpac/src/utils/os_thread.c:641,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_thread.c:646,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:647,1
    - Dst: log_th_name
      Src: /src/gpac/src/utils/os_thread.c:647,1
    - Dst: pthread_mutex_unlock
      Src: /src/gpac/src/utils/os_thread.c:654,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:658,1
    - Dst: log_th_name
      Src: /src/gpac/src/utils/os_thread.c:658,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:668,1
    - Dst: log_th_name
      Src: /src/gpac/src/utils/os_thread.c:668,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 1
    argNames:
    - mx
    argTypes:
    - GF_Mutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 672
      start: 621
    functionDepth: 2
    functionLinenumber: 621
    functionLinenumberEnd: 672
    functionName: gf_mx_v
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 137
    functionsReached:
    - ReleaseMutex
    - gf_th_id
    - GetLastError
    - GF_LOG
    - log_th_name
    - gf_fatal_assert
    - pthread_mutex_unlock
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_v(GF_Mutex *mx)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_id
      Src: /src/gpac/src/utils/os_thread.c:686,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/os_thread.c:688,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/os_thread.c:689,1
    - Dst: log_th_name
      Src: /src/gpac/src/utils/os_thread.c:697,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:698,1
    - Dst: log_th_name
      Src: /src/gpac/src/utils/os_thread.c:698,1
    - Dst: WaitForSingleObject
      Src: /src/gpac/src/utils/os_thread.c:703,1
    - Dst: pthread_mutex_lock
      Src: /src/gpac/src/utils/os_thread.c:711,1
    - Dst: strncpy
      Src: /src/gpac/src/utils/os_thread.c:716,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_thread.c:718,1
    - Dst: gf_th_id
      Src: /src/gpac/src/utils/os_thread.c:718,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:721,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:723,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_thread.c:725,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_thread.c:729,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_thread.c:730,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/os_thread.c:733,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:737,1
    - Dst: log_th_name
      Src: /src/gpac/src/utils/os_thread.c:737,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 42
    argCount: 1
    argNames:
    - mx
    argTypes:
    - GF_Mutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 741
      start: 674
    functionDepth: 2
    functionLinenumber: 674
    functionLinenumberEnd: 741
    functionName: gf_mx_p
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 132
    functionsReached:
    - gf_assert
    - gf_th_id
    - GF_LOG
    - pthread_mutex_lock
    - WaitForSingleObject
    - sprintf
    - log_th_name
    - strncpy
    - gf_fatal_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_p(GF_Mutex *mx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_id
      Src: /src/gpac/src/utils/os_thread.c:749,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - mx
    argTypes:
    - GF_Mutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 744
    functionDepth: 0
    functionLinenumber: 744
    functionLinenumberEnd: 754
    functionName: gf_mx_get_num_locks
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 2
    functionsReached:
    - gf_th_id
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_get_num_locks(GF_Mutex *mx)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_id
      Src: /src/gpac/src/utils/os_thread.c:763,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/os_thread.c:765,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/os_thread.c:766,1
    - Dst: WaitForSingleObject
      Src: /src/gpac/src/utils/os_thread.c:775,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:783,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/os_thread.c:783,1
    - Dst: log_th_name
      Src: /src/gpac/src/utils/os_thread.c:783,1
    - Dst: log_th_name
      Src: /src/gpac/src/utils/os_thread.c:783,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:790,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/os_thread.c:790,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_thread.c:795,1
    - Dst: pthread_mutex_trylock
      Src: /src/gpac/src/utils/os_thread.c:799,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:803,1
    - Dst: log_th_name
      Src: /src/gpac/src/utils/os_thread.c:803,1
    - Dst: log_th_name
      Src: /src/gpac/src/utils/os_thread.c:803,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_thread.c:809,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_thread.c:810,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_thread.c:813,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_thread.c:814,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:818,1
    - Dst: log_th_name
      Src: /src/gpac/src/utils/os_thread.c:818,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 45
    argCount: 1
    argNames:
    - mx
    argTypes:
    - GF_Mutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 822
      start: 756
    functionDepth: 2
    functionLinenumber: 756
    functionLinenumberEnd: 822
    functionName: gf_mx_try_lock
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 5
    functionsReached:
    - gf_assert
    - gf_th_id
    - GF_LOG
    - WaitForSingleObject
    - log_th_name
    - pthread_mutex_trylock
    - gf_fatal_assert
    - gf_sys_clock
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_try_lock(GF_Mutex *mx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/os_thread.c:844,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_thread.c:846,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:848,1
    - Dst: MIN
      Src: /src/gpac/src/utils/os_thread.c:853,1
    - Dst: CreateSemaphore
      Src: /src/gpac/src/utils/os_thread.c:854,1
    - Dst: MIN
      Src: /src/gpac/src/utils/os_thread.c:854,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:856,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_thread.c:857,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/utils/os_thread.c:869,1
    - Dst: gf_rand
      Src: /src/gpac/src/utils/os_thread.c:869,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_thread.c:870,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_thread.c:871,1
    - Dst: sem_unlink
      Src: /src/gpac/src/utils/os_thread.c:873,1
    - Dst: sem_open
      Src: /src/gpac/src/utils/os_thread.c:874,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:876,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_thread.c:877,1
    - Dst: sem_init
      Src: /src/gpac/src/utils/os_thread.c:881,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:882,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_thread.c:883,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 889
      start: 841
    functionDepth: 6
    functionLinenumber: 841
    functionLinenumberEnd: 889
    functionName: GF_Semaphore *gf_sema_new(u32 MaxCount, u32 InitCount)
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_net_get_utc
    - gf_strdup
    - sem_init
    - GF_LOG
    - sem_open
    - sprintf
    - MIN
    - sem_unlink
    - CreateSemaphore
    - gf_rand
    - gf_opts_get_bool
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_Semaphore *gf_sema_new(u32 MaxCount, u32 InitCount)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: CloseHandle
      Src: /src/gpac/src/utils/os_thread.c:896,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_thread.c:897,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:898,1
    - Dst: sem_close
      Src: /src/gpac/src/utils/os_thread.c:901,1
    - Dst: sem_unlink
      Src: /src/gpac/src/utils/os_thread.c:902,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_thread.c:903,1
    - Dst: sem_destroy
      Src: /src/gpac/src/utils/os_thread.c:905,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_thread.c:907,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - sm
    argTypes:
    - GF_Semaphore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 908
      start: 891
    functionDepth: 1
    functionLinenumber: 891
    functionLinenumberEnd: 908
    functionName: gf_sema_del
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 5
    functionsReached:
    - gf_free
    - GetLastError
    - GF_LOG
    - sem_close
    - sem_destroy
    - sem_unlink
    - CloseHandle
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sema_del(GF_Semaphore *sm)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ReleaseSemaphore
      Src: /src/gpac/src/utils/os_thread.c:922,1
    - Dst: sem_post
      Src: /src/gpac/src/utils/os_thread.c:928,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - sm
    - NbRelease
    argTypes:
    - GF_Semaphore*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 933
      start: 910
    functionDepth: 0
    functionLinenumber: 910
    functionLinenumberEnd: 933
    functionName: gf_sema_notify
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 4
    functionsReached:
    - ReleaseSemaphore
    - sem_post
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sema_notify(GF_Semaphore *sm, u32 NbRelease)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: WaitForSingleObject
      Src: /src/gpac/src/utils/os_thread.c:940,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:942,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_thread.c:942,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:945,1
    - Dst: sem_wait
      Src: /src/gpac/src/utils/os_thread.c:953,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_thread.c:955,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 1
    argNames:
    - sm
    argTypes:
    - GF_Semaphore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 960
      start: 935
    functionDepth: 1
    functionLinenumber: 935
    functionLinenumberEnd: 960
    functionName: gf_sema_wait
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 2
    functionsReached:
    - sem_wait
    - GF_LOG
    - WaitForSingleObject
    - GetLastError
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sema_wait(GF_Semaphore *sm)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: WaitForSingleObject
      Src: /src/gpac/src/utils/os_thread.c:967,1
    - Dst: sem_trywait
      Src: /src/gpac/src/utils/os_thread.c:975,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/os_thread.c:981,1
    - Dst: sem_trywait
      Src: /src/gpac/src/utils/os_thread.c:983,1
    - Dst: gf_sleep
      Src: /src/gpac/src/utils/os_thread.c:987,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/os_thread.c:988,1
    - Dst: clock_gettime
      Src: /src/gpac/src/utils/os_thread.c:993,1
    - Dst: sem_timedwait
      Src: /src/gpac/src/utils/os_thread.c:1001,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 33
    argCount: 2
    argNames:
    - sm
    - TimeOut
    argTypes:
    - GF_Semaphore*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1007
      start: 962
    functionDepth: 0
    functionLinenumber: 962
    functionLinenumberEnd: 1007
    functionName: gf_sema_wait_for
    functionSourceFile: /src/gpac/src/utils/os_thread.c
    functionUses: 1
    functionsReached:
    - sem_timedwait
    - WaitForSingleObject
    - gf_sleep
    - sem_trywait
    - clock_gettime
    - gf_sys_clock
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sema_wait_for(GF_Semaphore *sm, u32 TimeOut)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:52,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/xml_parser.c:53,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/xml_parser.c:59,1
    - Dst: strncpy
      Src: /src/gpac/src/utils/xml_parser.c:67,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:69,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:72,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/xml_parser.c:75,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/xml_parser.c:77,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/utils/xml_parser.c:80,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/xml_parser.c:84,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/xml_parser.c:89,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/xml_parser.c:94,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/xml_parser.c:99,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/xml_parser.c:104,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 68
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 121
    functionName: xml_translate_xml_string
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - sscanf
    - gf_utf8_wcstombs
    - strlen
    - strncpy
    - strnicmp
    - strchr
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_STATIC
    signature: GF_STATIC *xml_translate_xml_string(char *str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/xml_parser.c:202,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/xml_parser.c:203,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 206
    functionName: xml_get_sax_attribute
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: GF_XMLSaxAttribute
    signature: GF_XMLSaxAttribute *xml_get_sax_attribute(GF_SAXParser *parser)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memmove
      Src: /src/gpac/src/utils/xml_parser.c:214,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 219
    functionName: xml_sax_swap
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - memmove
    linkageType: ''
    returnType: void
    signature: void xml_sax_swap(GF_SAXParser *parser)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/gpac/src/utils/xml_parser.c:228,1
    - Dst: vsnprintf
      Src: /src/gpac/src/utils/xml_parser.c:229,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/xml_parser.c:229,1
    - Dst: va_end
      Src: /src/gpac/src/utils/xml_parser.c:230,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:232,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/xml_parser.c:232,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/xml_parser.c:234,1
    - Dst: strcat
      Src: /src/gpac/src/utils/xml_parser.c:235,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:236,1
    - Dst: strncpy
      Src: /src/gpac/src/utils/xml_parser.c:237,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - parser
    - linepos
    - fmt
    argTypes:
    - GF_SAXParser*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 241
    functionName: format_sax_error
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - strcat
    - va_end
    - snprintf
    - va_start
    - strlen
    - strncpy
    - vsnprintf
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: void
    signature: void format_sax_error(GF_SAXParser *parser, u32 linepos, const char*
      fmt, ...)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:247,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:248,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:250,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:258,1
    - Dst: GF_SAXParser*::sax_node_end
      Src: /src/gpac/src/utils/xml_parser.c:261,1
    - Dst: GF_SAXParser*::sax_node_end
      Src: /src/gpac/src/utils/xml_parser.c:264,1
    - Dst: xml_sax_swap
      Src: /src/gpac/src/utils/xml_parser.c:270,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 2
    argNames:
    - parser
    - had_children
    argTypes:
    - GF_SAXParser*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 243
    functionDepth: 2
    functionLinenumber: 243
    functionLinenumberEnd: 272
    functionName: xml_sax_node_end
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - xml_sax_swap
    - format_sax_error
    - GF_SAXParser*::sax_node_end
    - strchr
    linkageType: ''
    returnType: void
    signature: void xml_sax_node_end(GF_SAXParser *parser, Bool had_children)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:280,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:291,1
    - Dst: xml_translate_xml_string
      Src: /src/gpac/src/utils/xml_parser.c:294,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:301,1
    - Dst: GF_SAXParser*::sax_node_start
      Src: /src/gpac/src/utils/xml_parser.c:304,1
    - Dst: GF_SAXParser*::sax_node_start
      Src: /src/gpac/src/utils/xml_parser.c:307,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:317,1
    - Dst: xml_sax_swap
      Src: /src/gpac/src/utils/xml_parser.c:322,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 40
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 274
    functionDepth: 2
    functionLinenumber: 274
    functionLinenumberEnd: 324
    functionName: xml_sax_node_start
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_assert
    - xml_sax_swap
    - GF_SAXParser*::sax_node_start
    - xml_translate_xml_string
    - strchr
    linkageType: ''
    returnType: void
    signature: void xml_sax_node_start(GF_SAXParser *parser)
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: xml_sax_node_start
      Src: /src/gpac/src/utils/xml_parser.c:356,1
    - Dst: xml_sax_node_end
      Src: /src/gpac/src/utils/xml_parser.c:359,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:369,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:377,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:388,1
    - Dst: xml_sax_node_start
      Src: /src/gpac/src/utils/xml_parser.c:396,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:402,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:410,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:424,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:439,1
    - Dst: xml_get_sax_attribute
      Src: /src/gpac/src/utils/xml_parser.c:444,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:447,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:448,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:462,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:508,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:511,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:515,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:519,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/xml_parser.c:529,1
    CyclomaticComplexity: 65
    EdgeCount: 65
    ICount: 191
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 540
      start: 326
    functionDepth: 3
    functionLinenumber: 326
    functionLinenumberEnd: 540
    functionName: xml_sax_parse_attribute
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - xml_get_sax_attribute
    - xml_sax_node_start
    - format_sax_error
    - strncmp
    - strchr
    - xml_sax_node_end
    linkageType: ''
    returnType: Bool
    signature: Bool xml_sax_parse_attribute(GF_SAXParser *parser)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:556,1
    - Dst: xml_translate_xml_string
      Src: /src/gpac/src/utils/xml_parser.c:566,1
    - Dst: GF_SAXParser*::sax_text_content
      Src: /src/gpac/src/utils/xml_parser.c:568,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:569,1
    - Dst: GF_SAXParser*::sax_text_content
      Src: /src/gpac/src/utils/xml_parser.c:572,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 551
    functionDepth: 2
    functionLinenumber: 551
    functionLinenumberEnd: 577
    functionName: xml_sax_flush_text
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_assert
    - GF_SAXParser*::sax_text_content
    - xml_translate_xml_string
    linkageType: ''
    returnType: void
    signature: void xml_sax_flush_text(GF_SAXParser *parser)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:588,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:595,1
    - Dst: xml_sax_flush_text
      Src: /src/gpac/src/utils/xml_parser.c:599,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:604,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - parser
    - txt_len
    argTypes:
    - GF_SAXParser*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 579
    functionDepth: 3
    functionLinenumber: 579
    functionLinenumberEnd: 605
    functionName: xml_sax_store_text
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - xml_sax_flush_text
    linkageType: ''
    returnType: void
    signature: void xml_sax_store_text(GF_SAXParser *parser, u32 txt_len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:614,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 618
      start: 607
    functionDepth: 0
    functionLinenumber: 607
    functionLinenumberEnd: 618
    functionName: xml_get_current_text
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    linkageType: ''
    returnType: char
    signature: char *xml_get_current_text(GF_SAXParser *parser)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xml_sax_swap
      Src: /src/gpac/src/utils/xml_parser.c:626,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 620
    functionDepth: 1
    functionLinenumber: 620
    functionLinenumberEnd: 631
    functionName: xml_sax_skip_doctype
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - xml_sax_swap
    linkageType: ''
    returnType: void
    signature: void xml_sax_skip_doctype(GF_SAXParser *parser)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xml_sax_swap
      Src: /src/gpac/src/utils/xml_parser.c:639,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 644
      start: 633
    functionDepth: 1
    functionLinenumber: 633
    functionLinenumberEnd: 644
    functionName: xml_sax_skip_xml_proc
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - xml_sax_swap
    linkageType: ''
    returnType: void
    signature: void xml_sax_skip_xml_proc(GF_SAXParser *parser)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/utils/xml_parser.c:652,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:661,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:669,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/xml_parser.c:673,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:676,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/xml_parser.c:679,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:683,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:686,1
    - Dst: xml_sax_swap
      Src: /src/gpac/src/utils/xml_parser.c:687,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/xml_parser.c:689,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:692,1
    - Dst: xml_sax_store_text
      Src: /src/gpac/src/utils/xml_parser.c:693,1
    - Dst: xml_get_current_text
      Src: /src/gpac/src/utils/xml_parser.c:695,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:696,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:699,1
    - Dst: xml_sax_swap
      Src: /src/gpac/src/utils/xml_parser.c:700,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/xml_parser.c:705,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:711,1
    - Dst: xml_sax_store_text
      Src: /src/gpac/src/utils/xml_parser.c:714,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 68
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 715
      start: 647
    functionDepth: 4
    functionLinenumber: 647
    functionLinenumberEnd: 715
    functionName: xml_sax_parse_entity
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_assert
    - gf_strdup
    - GF_SAFEALLOC
    - xml_sax_swap
    - xml_sax_store_text
    - xml_get_current_text
    - gf_list_add
    - gf_dynstrcat
    - strchr
    - gf_list_last
    - strlen
    linkageType: ''
    returnType: void
    signature: void xml_sax_parse_entity(GF_SAXParser *parser)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/utils/xml_parser.c:719,1
    - Dst: xml_sax_store_text
      Src: /src/gpac/src/utils/xml_parser.c:721,1
    - Dst: xml_sax_store_text
      Src: /src/gpac/src/utils/xml_parser.c:724,1
    - Dst: xml_sax_flush_text
      Src: /src/gpac/src/utils/xml_parser.c:725,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:727,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 717
    functionDepth: 4
    functionLinenumber: 717
    functionLinenumberEnd: 730
    functionName: xml_sax_cdata
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - xml_sax_flush_text
    - gf_assert
    - xml_sax_store_text
    - strstr
    linkageType: ''
    returnType: void
    signature: void xml_sax_cdata(GF_SAXParser *parser)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/utils/xml_parser.c:734,1
    - Dst: xml_sax_swap
      Src: /src/gpac/src/utils/xml_parser.c:738,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:743,1
    - Dst: xml_sax_swap
      Src: /src/gpac/src/utils/xml_parser.c:746,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 748
      start: 732
    functionDepth: 1
    functionLinenumber: 732
    functionLinenumberEnd: 748
    functionName: xml_sax_parse_comments
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - strstr
    - xml_sax_swap
    linkageType: ''
    returnType: Bool
    signature: Bool xml_sax_parse_comments(GF_SAXParser *parser)
  - BBCount: 60
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_parser.c:788,1
    - Dst: xml_sax_store_text
      Src: /src/gpac/src/utils/xml_parser.c:797,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:802,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/xml_parser.c:809,1
    - Dst: xml_sax_flush_text
      Src: /src/gpac/src/utils/xml_parser.c:858,1
    - Dst: xml_sax_node_start
      Src: /src/gpac/src/utils/xml_parser.c:862,1
    - Dst: xml_sax_node_end
      Src: /src/gpac/src/utils/xml_parser.c:863,1
    - Dst: xml_sax_node_end
      Src: /src/gpac/src/utils/xml_parser.c:866,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:881,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/xml_parser.c:884,1
    - Dst: xml_sax_flush_text
      Src: /src/gpac/src/utils/xml_parser.c:885,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:889,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:890,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:891,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:892,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:892,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:893,1
    - Dst: xml_sax_flush_text
      Src: /src/gpac/src/utils/xml_parser.c:901,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:906,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:910,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_parser.c:917,1
    - Dst: gf_xml_sax_parse_intern
      Src: /src/gpac/src/utils/xml_parser.c:920,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:923,1
    - Dst: xml_sax_parse_comments
      Src: /src/gpac/src/utils/xml_parser.c:932,1
    - Dst: xml_sax_swap
      Src: /src/gpac/src/utils/xml_parser.c:933,1
    - Dst: xml_sax_parse_attribute
      Src: /src/gpac/src/utils/xml_parser.c:939,1
    - Dst: xml_sax_parse_entity
      Src: /src/gpac/src/utils/xml_parser.c:943,1
    - Dst: xml_sax_skip_doctype
      Src: /src/gpac/src/utils/xml_parser.c:946,1
    - Dst: xml_sax_skip_xml_proc
      Src: /src/gpac/src/utils/xml_parser.c:949,1
    - Dst: xml_sax_cdata
      Src: /src/gpac/src/utils/xml_parser.c:952,1
    - Dst: xml_sax_store_text
      Src: /src/gpac/src/utils/xml_parser.c:965,1
    - Dst: xml_sax_swap
      Src: /src/gpac/src/utils/xml_parser.c:969,1
    CyclomaticComplexity: 80
    EdgeCount: 80
    ICount: 225
    argCount: 2
    argNames:
    - parser
    - force_parse
    argTypes:
    - GF_SAXParser*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 975
      start: 752
    functionDepth: 5
    functionLinenumber: 752
    functionLinenumberEnd: 975
    functionName: xml_sax_parse
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_free
    - xml_sax_flush_text
    - xml_sax_cdata
    - gf_list_count
    - xml_sax_skip_doctype
    - gf_assert
    - gf_strdup
    - xml_sax_swap
    - xml_sax_skip_xml_proc
    - gf_xml_sax_parse_intern
    - strncmp
    - GF_LOG
    - xml_sax_node_start
    - xml_sax_parse_entity
    - xml_sax_store_text
    - xml_sax_parse_comments
    - xml_sax_parse_attribute
    - xml_sax_node_end
    - strcmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err xml_sax_parse(GF_SAXParser *parser, Bool force_parse)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:980,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/xml_parser.c:990,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/xml_parser.c:993,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - parser
    - string
    argTypes:
    - GF_SAXParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 997
      start: 977
    functionDepth: 0
    functionLinenumber: 977
    functionLinenumberEnd: 997
    functionName: xml_sax_append_string
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - memcpy
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err xml_sax_append_string(GF_SAXParser *parser, char *string)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:1002,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:1005,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/xml_parser.c:1008,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/xml_parser.c:1010,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/xml_parser.c:1016,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - parser
    - ent_start
    - needs_text
    argTypes:
    - GF_SAXParser*
    - char*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1021
      start: 999
    functionDepth: 1
    functionLinenumber: 999
    functionLinenumberEnd: 1021
    functionName: gf_xml_locate_entity
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strlen
    - strncmp
    linkageType: ''
    returnType: XML_Entity
    signature: XML_Entity *gf_xml_locate_entity(GF_SAXParser *parser, char *ent_start,
      Bool *needs_text)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:1028,1
    - Dst: strstr
      Src: /src/gpac/src/utils/xml_parser.c:1032,1
    - Dst: strstr
      Src: /src/gpac/src/utils/xml_parser.c:1040,1
    - Dst: xml_sax_append_string
      Src: /src/gpac/src/utils/xml_parser.c:1041,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/xml_parser.c:1043,1
    - Dst: xml_sax_append_string
      Src: /src/gpac/src/utils/xml_parser.c:1044,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:1047,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:1047,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/xml_parser.c:1048,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/xml_parser.c:1049,1
    - Dst: gf_xml_locate_entity
      Src: /src/gpac/src/utils/xml_parser.c:1051,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1052,1
    - Dst: xml_sax_append_string
      Src: /src/gpac/src/utils/xml_parser.c:1056,1
    - Dst: xml_sax_parse
      Src: /src/gpac/src/utils/xml_parser.c:1057,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_parser.c:1064,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:1068,1
    - Dst: gf_xml_locate_entity
      Src: /src/gpac/src/utils/xml_parser.c:1077,1
    - Dst: xml_sax_append_string
      Src: /src/gpac/src/utils/xml_parser.c:1081,1
    - Dst: xml_sax_parse
      Src: /src/gpac/src/utils/xml_parser.c:1082,1
    - Dst: xml_sax_append_string
      Src: /src/gpac/src/utils/xml_parser.c:1087,1
    - Dst: xml_sax_append_string
      Src: /src/gpac/src/utils/xml_parser.c:1095,1
    - Dst: xml_sax_append_string
      Src: /src/gpac/src/utils/xml_parser.c:1101,1
    - Dst: xml_sax_parse
      Src: /src/gpac/src/utils/xml_parser.c:1102,1
    - Dst: xml_sax_append_string
      Src: /src/gpac/src/utils/xml_parser.c:1107,1
    - Dst: xml_sax_parse
      Src: /src/gpac/src/utils/xml_parser.c:1108,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 60
    argCount: 2
    argNames:
    - parser
    - current
    argTypes:
    - GF_SAXParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1109
      start: 1024
    functionDepth: 6
    functionLinenumber: 1024
    functionLinenumberEnd: 1109
    functionName: gf_xml_sax_parse_intern
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 1
    functionsReached:
    - gf_malloc
    - gf_free
    - strrchr
    - xml_sax_parse
    - GF_LOG
    - sprintf
    - strstr
    - gf_xml_locate_entity
    - gf_list_count
    - xml_sax_append_string
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_xml_sax_parse_intern(GF_SAXParser *parser, char *current)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/src/utils/xml_parser.c:1122,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/xml_parser.c:1123,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/utils/xml_parser.c:1124,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1127,1
    - Dst: gf_xml_sax_parse_intern
      Src: /src/gpac/src/utils/xml_parser.c:1136,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1137,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - parser
    - string
    argTypes:
    - GF_SAXParser*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1139
      start: 1111
    functionDepth: 7
    functionLinenumber: 1111
    functionLinenumberEnd: 1139
    functionName: gf_xml_sax_parse
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_utf8_wcstombs
    - gf_xml_sax_parse_intern
    - gf_utf8_wcslen
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_sax_parse(GF_SAXParser *parser, const void *string)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_sax_parse
      Src: /src/gpac/src/utils/xml_parser.c:1152,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/utils/xml_parser.c:1172,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:1173,1
    - Dst: gf_xml_sax_parse
      Src: /src/gpac/src/utils/xml_parser.c:1178,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 32
    argCount: 2
    argNames:
    - parser
    - BOM
    argTypes:
    - GF_SAXParser*
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1179
      start: 1142
    functionDepth: 8
    functionLinenumber: 1142
    functionLinenumberEnd: 1179
    functionName: gf_xml_sax_init
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - format_sax_error
    - gf_xml_sax_parse
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_sax_init(GF_SAXParser *parser, unsigned char *BOM)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/utils/xml_parser.c:1184,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/utils/xml_parser.c:1186,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1187,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1188,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1189,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1191,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1194,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1196,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1199
      start: 1181
    functionDepth: 2
    functionLinenumber: 1181
    functionLinenumberEnd: 1199
    functionName: xml_sax_reset
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_last
    - gf_list_rem_last
    linkageType: ''
    returnType: void
    signature: void xml_sax_reset(GF_SAXParser *parser)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/utils/xml_parser.c:1271,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/utils/xml_parser.c:1274,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/xml_parser.c:1279,1
    - Dst: gf_xml_sax_init
      Src: /src/gpac/src/utils/xml_parser.c:1286,1
    - Dst: gf_xml_sax_parse
      Src: /src/gpac/src/utils/xml_parser.c:1288,1
    - Dst: GF_SAXParser*::on_progress
      Src: /src/gpac/src/utils/xml_parser.c:1289,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/utils/xml_parser.c:1291,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/xml_parser.c:1306,1
    - Dst: gf_fsize
      Src: /src/gpac/src/utils/xml_parser.c:1309,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/xml_parser.c:1310,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/xml_parser.c:1312,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/xml_parser.c:1319,1
    - Dst: gf_fread
      Src: /src/gpac/src/utils/xml_parser.c:1320,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_parser.c:1321,1
    - Dst: gf_gzopen
      Src: /src/gpac/src/utils/xml_parser.c:1324,1
    - Dst: gf_gzread
      Src: /src/gpac/src/utils/xml_parser.c:1328,1
    - Dst: gf_xml_sax_init
      Src: /src/gpac/src/utils/xml_parser.c:1332,1
    - Dst: xml_sax_read_file
      Src: /src/gpac/src/utils/xml_parser.c:1335,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 54
    argCount: 3
    argNames:
    - parser
    - fileName
    - OnProgress
    argTypes:
    - GF_SAXParser*
    - char*
    - gf_xml_sax_progress
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1336
      start: 1258
    functionDepth: 9
    functionLinenumber: 1258
    functionLinenumberEnd: 1336
    functionName: gf_xml_sax_parse_file
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 5
    functionsReached:
    - GF_SAXParser*::on_progress
    - gf_fclose
    - gf_xml_sax_init
    - gf_blob_get
    - memcpy
    - gf_fread
    - GF_LOG
    - xml_sax_read_file
    - strncmp
    - gf_xml_sax_parse
    - gf_fopen
    - gf_fsize
    - gf_fatal_assert
    - gf_gzopen
    - gf_blob_release
    - gf_gzread
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_sax_parse_file(GF_SAXParser *parser, const char *fileName,
      gf_xml_sax_progress OnProgress)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1348
      start: 1338
    functionDepth: 0
    functionLinenumber: 1338
    functionLinenumberEnd: 1348
    functionName: gf_xml_sax_binary_file
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_sax_binary_file(GF_SAXParser *parser)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1357,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/xml_parser.c:1359,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/xml_parser.c:1366,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1369
      start: 1350
    functionDepth: 6
    functionLinenumber: 1350
    functionLinenumberEnd: 1369
    functionName: "GF_SAXParser *gf_xml_sax_new(gf_xml_sax_node_start on_node_start,\n
      \                            gf_xml_sax_node_end on_node_end,\n                             gf_xml_sax_text_content
      on_text_content,\n                             void *cbck)"
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_opts_get_int
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT GF_SAXParser *gf_xml_sax_new(gf_xml_sax_node_start on_node_start,\n
      \                            gf_xml_sax_node_end on_node_end,\n                             gf_xml_sax_text_content
      on_text_content,\n                             void *cbck)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xml_sax_reset
      Src: /src/gpac/src/utils/xml_parser.c:1374,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/xml_parser.c:1375,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/xml_parser.c:1377,1
    - Dst: gf_gzclose
      Src: /src/gpac/src/utils/xml_parser.c:1379,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1381,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1382
      start: 1371
    functionDepth: 5
    functionLinenumber: 1371
    functionLinenumberEnd: 1382
    functionName: gf_xml_sax_del
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 5
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_gzclose
    - xml_sax_reset
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_sax_del(GF_SAXParser *parser)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xml_sax_read_file
      Src: /src/gpac/src/utils/xml_parser.c:1390,1
    - Dst: xml_sax_read_file
      Src: /src/gpac/src/utils/xml_parser.c:1392,1
    - Dst: xml_sax_parse
      Src: /src/gpac/src/utils/xml_parser.c:1394,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - parser
    - do_suspend
    argTypes:
    - GF_SAXParser*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1397
      start: 1384
    functionDepth: 6
    functionLinenumber: 1384
    functionLinenumberEnd: 1397
    functionName: gf_xml_sax_suspend
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - xml_sax_parse
    - xml_sax_read_file
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_sax_suspend(GF_SAXParser *parser, Bool do_suspend)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1403
      start: 1400
    functionDepth: 0
    functionLinenumber: 1400
    functionLinenumberEnd: 1403
    functionName: gf_xml_sax_get_line
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_sax_get_line(GF_SAXParser *parser)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1413
      start: 1406
    functionDepth: 0
    functionLinenumber: 1406
    functionLinenumberEnd: 1413
    functionName: gf_xml_sax_get_file_size
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_xml_sax_get_file_size(GF_SAXParser *parser)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1422
      start: 1415
    functionDepth: 0
    functionLinenumber: 1415
    functionLinenumberEnd: 1422
    functionName: gf_xml_sax_get_file_pos
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_xml_sax_get_file_pos(GF_SAXParser *parser)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/xml_parser.c:1459,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/xml_parser.c:1461,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1463,1
    - Dst: gf_ftell
      Src: /src/gpac/src/utils/xml_parser.c:1470,1
    - Dst: gf_gztell
      Src: /src/gpac/src/utils/xml_parser.c:1472,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:1475,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/xml_parser.c:1478,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1480,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1481,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/xml_parser.c:1484,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:1486,1
    - Dst: gf_feof
      Src: /src/gpac/src/utils/xml_parser.c:1495,1
    - Dst: gf_gzeof
      Src: /src/gpac/src/utils/xml_parser.c:1497,1
    - Dst: gf_fread
      Src: /src/gpac/src/utils/xml_parser.c:1512,1
    - Dst: gf_gzread
      Src: /src/gpac/src/utils/xml_parser.c:1514,1
    - Dst: CPYCAT_ALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1518,1
    - Dst: strstr
      Src: /src/gpac/src/utils/xml_parser.c:1522,1
    - Dst: strstr
      Src: /src/gpac/src/utils/xml_parser.c:1531,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/xml_parser.c:1534,1
    - Dst: CPYCAT_ALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1536,1
    - Dst: CPYCAT_ALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1538,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/xml_parser.c:1547,1
    - Dst: CPYCAT_ALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1551,1
    - Dst: strstr
      Src: /src/gpac/src/utils/xml_parser.c:1552,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:1554,1
    - Dst: CPYCAT_ALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1557,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:1564,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:1566,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/xml_parser.c:1570,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:1573,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:1575,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:1579,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:1581,1
    - Dst: strstr
      Src: /src/gpac/src/utils/xml_parser.c:1587,1
    - Dst: CPYCAT_ALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1589,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:1592,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:1593,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:1596,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:1598,1
    - Dst: CPYCAT_ALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1603,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1607,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1608,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1609,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/xml_parser.c:1613,1
    - Dst: gf_gzrewind
      Src: /src/gpac/src/utils/xml_parser.c:1615,1
    - Dst: gf_gzseek
      Src: /src/gpac/src/utils/xml_parser.c:1616,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 168
    argCount: 7
    argNames:
    - parser
    - att_name
    - att_value
    - substitute
    - get_attr
    - end_pattern
    - is_substitute
    argTypes:
    - GF_SAXParser*
    - char*
    - char*
    - char*
    - char*
    - char*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1620
      start: 1427
    functionDepth: 6
    functionLinenumber: 1427
    functionLinenumberEnd: 1620
    functionName: gf_xml_sax_peek_node
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_free
    - strcpy
    - strchr
    - gf_gztell
    - gf_gzseek
    - gf_strdup
    - gf_feof
    - strrchr
    - gf_fseek
    - strncmp
    - gf_ftell
    - gf_fread
    - strstr
    - gf_malloc
    - strlen
    - CPYCAT_ALLOC
    - strcmp
    - gf_gzrewind
    - gf_gzeof
    - gf_gzread
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_xml_sax_peek_node(GF_SAXParser *parser, char *att_name,
      char *att_value, char *substitute, char *get_attr, char *end_pattern, Bool *is_substitute)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - __str
    - ','
    - __is_copy
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1450
      start: 1441
    functionDepth: 0
    functionLinenumber: 1441
    functionLinenumberEnd: 1450
    functionName: CPYCAT_ALLOC
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CPYCAT_ALLOC(__str, __is_copy)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1626
      start: 1622
    functionDepth: 0
    functionLinenumber: 1622
    functionLinenumberEnd: 1626
    functionName: gf_xml_sax_get_error
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_xml_sax_get_error(GF_SAXParser *parser)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1638,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:1639,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - cbk
    - name
    - ns
    - attributes
    - nb_attributes
    argTypes:
    - void*
    - char*
    - char*
    - GF_XMLAttribute*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1641
      start: 1635
    functionDepth: 0
    functionLinenumber: 1635
    functionLinenumberEnd: 1641
    functionName: on_peek_node_start
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    linkageType: ''
    returnType: void
    signature: void on_peek_node_start(void *cbk, const char *name, const char *ns,
      const GF_XMLAttribute *attributes, u32 nb_attributes)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_sax_new
      Src: /src/gpac/src/utils/xml_parser.c:1649,1
    - Dst: gf_xml_sax_parse_file
      Src: /src/gpac/src/utils/xml_parser.c:1650,1
    - Dst: gf_xml_sax_del
      Src: /src/gpac/src/utils/xml_parser.c:1652,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - file
    - ret
    argTypes:
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1654
      start: 1643
    functionDepth: 10
    functionLinenumber: 1643
    functionLinenumberEnd: 1654
    functionName: gf_xml_get_root_type
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 2
    functionsReached:
    - gf_xml_sax_new
    - gf_xml_sax_del
    - gf_xml_sax_parse_file
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_xml_get_root_type(const char *file, GF_Err *ret)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1661
      start: 1657
    functionDepth: 0
    functionLinenumber: 1657
    functionLinenumberEnd: 1661
    functionName: gf_xml_sax_get_node_start_pos
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_sax_get_node_start_pos(GF_SAXParser *parser)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1667
      start: 1663
    functionDepth: 0
    functionLinenumber: 1663
    functionLinenumberEnd: 1667
    functionName: gf_xml_sax_get_node_end_pos
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_sax_get_node_end_pos(GF_SAXParser *parser)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:1689,1
    - Dst: gf_list_last
      Src: /src/gpac/src/utils/xml_parser.c:1690,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/utils/xml_parser.c:1691,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1692,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1693,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1694,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:1699,1
    - Dst: gf_list_last
      Src: /src/gpac/src/utils/xml_parser.c:1700,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/utils/xml_parser.c:1701,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/utils/xml_parser.c:1702,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 3
    argNames:
    - node
    - reset_attribs
    - reset_children
    argTypes:
    - GF_XMLNode*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1705
      start: 1684
    functionDepth: 2
    functionLinenumber: 1684
    functionLinenumberEnd: 1705
    functionName: gf_xml_dom_node_reset
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - gf_xml_dom_node_del
    - gf_list_last
    - gf_list_rem_last
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_dom_node_reset(GF_XMLNode *node, Bool reset_attribs,
      Bool reset_children)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dom_node_reset
      Src: /src/gpac/src/utils/xml_parser.c:1711,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/xml_parser.c:1712,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/xml_parser.c:1713,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1714,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1715,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1716,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1717
      start: 1707
    functionDepth: 3
    functionLinenumber: 1707
    functionLinenumberEnd: 1717
    functionName: gf_xml_dom_node_del
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 3
    functionsReached:
    - gf_free
    - gf_xml_dom_node_reset
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_dom_node_del(GF_XMLNode *node)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:1727,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1732,1
    - Dst: gf_list_new_prealloc
      Src: /src/gpac/src/utils/xml_parser.c:1737,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:1739,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:1740,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/xml_parser.c:1741,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/xml_parser.c:1744,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/xml_parser.c:1753,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:1755,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_parser.c:1757,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1763,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_parser.c:1765,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:1769,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:1770,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/xml_parser.c:1771,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 41
    argCount: 5
    argNames:
    - cbk
    - name
    - ns
    - attributes
    - nb_attributes
    argTypes:
    - void*
    - char*
    - char*
    - GF_XMLAttribute*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1773
      start: 1721
    functionDepth: 2
    functionLinenumber: 1721
    functionLinenumberEnd: 1773
    functionName: on_dom_node_start
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_list_get
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_count
    - gf_list_new_prealloc
    - gf_list_add
    - strcmp
    linkageType: ''
    returnType: void
    signature: void on_dom_node_start(void *cbk, const char *name, const char *ns,
      const GF_XMLAttribute *attributes, u32 nb_attributes)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/utils/xml_parser.c:1778,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/utils/xml_parser.c:1779,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:1781,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:1781,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:1781,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:1781,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:1783,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/utils/xml_parser.c:1785,1
    - Dst: gf_list_find
      Src: /src/gpac/src/utils/xml_parser.c:1788,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/xml_parser.c:1790,1
    - Dst: gf_list_last
      Src: /src/gpac/src/utils/xml_parser.c:1794,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/xml_parser.c:1796,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/xml_parser.c:1798,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 19
    argCount: 3
    argNames:
    - cbk
    - name
    - ns
    argTypes:
    - void*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1801
      start: 1775
    functionDepth: 4
    functionLinenumber: 1775
    functionLinenumberEnd: 1801
    functionName: on_dom_node_end
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_list_find
    - strlen
    - gf_xml_dom_node_del
    - format_sax_error
    - strcmp
    - gf_list_add
    - gf_list_last
    - gf_list_rem_last
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void on_dom_node_end(void *cbk, const char *name, const char *ns)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/utils/xml_parser.c:1807,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/xml_parser.c:1810,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1812,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_parser.c:1814,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:1819,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/xml_parser.c:1820,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - cbk
    - content
    - is_cdata
    argTypes:
    - void*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1821
      start: 1803
    functionDepth: 1
    functionLinenumber: 1803
    functionLinenumberEnd: 1821
    functionName: on_dom_text_content
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_add
    - gf_list_last
    linkageType: ''
    returnType: void
    signature: void on_dom_text_content(void *cbk, const char *content, Bool is_cdata)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1827,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/xml_parser.c:1830,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1833
      start: 1823
    functionDepth: 1
    functionLinenumber: 1823
    functionLinenumberEnd: 1833
    functionName: GF_DOMParser *gf_xml_dom_new()
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_DOMParser *gf_xml_dom_new()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_sax_del
      Src: /src/gpac/src/utils/xml_parser.c:1838,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:1843,1
    - Dst: gf_list_last
      Src: /src/gpac/src/utils/xml_parser.c:1844,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/utils/xml_parser.c:1845,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/xml_parser.c:1847,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/utils/xml_parser.c:1850,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/xml_parser.c:1852,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:1855,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:1856,1
    - Dst: gf_list_last
      Src: /src/gpac/src/utils/xml_parser.c:1857,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/utils/xml_parser.c:1858,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/utils/xml_parser.c:1859,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 2
    argNames:
    - dom
    - full_reset
    argTypes:
    - GF_DOMParser*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1863
      start: 1835
    functionDepth: 6
    functionLinenumber: 1835
    functionLinenumberEnd: 1863
    functionName: gf_xml_dom_reset
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_xml_dom_node_del
    - gf_xml_sax_del
    - gf_list_del_item
    - gf_list_last
    - gf_list_rem_last
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_xml_dom_reset(GF_DOMParser *dom, Bool full_reset)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dom_reset
      Src: /src/gpac/src/utils/xml_parser.c:1871,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/xml_parser.c:1872,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1873,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_DOMParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1874
      start: 1865
    functionDepth: 7
    functionLinenumber: 1865
    functionLinenumberEnd: 1874
    functionName: gf_xml_dom_del
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 24
    functionsReached:
    - gf_free
    - gf_list_del
    - gf_xml_dom_reset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_dom_del(GF_DOMParser *parser)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/xml_parser.c:1883,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/xml_parser.c:1884,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_DOMParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1886
      start: 1876
    functionDepth: 3
    functionLinenumber: 1876
    functionLinenumberEnd: 1886
    functionName: gf_xml_dom_detach_root
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_del_item
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_xml_dom_detach_root(GF_DOMParser *parser)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_DOMParser*::OnProgress
      Src: /src/gpac/src/utils/xml_parser.c:1891,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - cbck
    - done
    - tot
    argTypes:
    - void*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1892
      start: 1888
    functionDepth: 0
    functionLinenumber: 1888
    functionLinenumberEnd: 1892
    functionName: dom_on_progress
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - GF_DOMParser*::OnProgress
    linkageType: ''
    returnType: void
    signature: void dom_on_progress(void *cbck, u64 done, u64 tot)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dom_reset
      Src: /src/gpac/src/utils/xml_parser.c:1898,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/xml_parser.c:1899,1
    - Dst: gf_xml_sax_new
      Src: /src/gpac/src/utils/xml_parser.c:1900,1
    - Dst: gf_xml_sax_parse_file
      Src: /src/gpac/src/utils/xml_parser.c:1903,1
    - Dst: gf_xml_dom_reset
      Src: /src/gpac/src/utils/xml_parser.c:1904,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - dom
    - file
    - OnProgress
    - cbk
    argTypes:
    - GF_DOMParser*
    - char*
    - gf_xml_sax_progress
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1906
      start: 1894
    functionDepth: 10
    functionLinenumber: 1894
    functionLinenumberEnd: 1906
    functionName: gf_xml_dom_parse
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 17
    functionsReached:
    - gf_xml_sax_new
    - gf_list_new
    - gf_xml_sax_parse_file
    - gf_xml_dom_reset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_dom_parse(GF_DOMParser *dom, const char *file, gf_xml_sax_progress
      OnProgress, void *cbk)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dom_reset
      Src: /src/gpac/src/utils/xml_parser.c:1912,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/xml_parser.c:1913,1
    - Dst: gf_xml_sax_new
      Src: /src/gpac/src/utils/xml_parser.c:1914,1
    - Dst: gf_xml_sax_init
      Src: /src/gpac/src/utils/xml_parser.c:1915,1
    - Dst: gf_xml_dom_reset
      Src: /src/gpac/src/utils/xml_parser.c:1916,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - dom
    - string
    argTypes:
    - GF_DOMParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1918
      start: 1908
    functionDepth: 9
    functionLinenumber: 1908
    functionLinenumberEnd: 1918
    functionName: gf_xml_dom_parse_string
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 8
    functionsReached:
    - gf_xml_sax_new
    - gf_list_new
    - gf_xml_sax_init
    - gf_xml_dom_reset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_dom_parse_string(GF_DOMParser *dom, char *string)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - dom
    argTypes:
    - GF_DOMParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1926
      start: 1920
    functionDepth: 0
    functionLinenumber: 1920
    functionLinenumberEnd: 1926
    functionName: gf_xml_dom_enable_passthrough
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_dom_enable_passthrough(GF_DOMParser *dom)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1933,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:1935,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - parser
    - name
    argTypes:
    - GF_DOMParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1938
      start: 1929
    functionDepth: 1
    functionLinenumber: 1929
    functionLinenumberEnd: 1938
    functionName: gf_xml_dom_create_root
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_XMLNode
    signature: GF_XMLNode *gf_xml_dom_create_root(GF_DOMParser *parser, const char*
      name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_DOMParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1945
      start: 1941
    functionDepth: 0
    functionLinenumber: 1941
    functionLinenumberEnd: 1945
    functionName: gf_xml_dom_get_root
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 19
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_xml_dom_get_root(GF_DOMParser *parser)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_sax_get_error
      Src: /src/gpac/src/utils/xml_parser.c:1949,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_DOMParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1950
      start: 1946
    functionDepth: 1
    functionLinenumber: 1946
    functionLinenumberEnd: 1950
    functionName: gf_xml_dom_get_error
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 10
    functionsReached:
    - gf_xml_sax_get_error
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_xml_dom_get_error(GF_DOMParser *parser)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_sax_get_line
      Src: /src/gpac/src/utils/xml_parser.c:1954,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_DOMParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1955
      start: 1951
    functionDepth: 1
    functionLinenumber: 1951
    functionLinenumberEnd: 1955
    functionName: gf_xml_dom_get_line
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 4
    functionsReached:
    - gf_xml_sax_get_line
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_dom_get_line(GF_DOMParser *parser)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:1960,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_DOMParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1961
      start: 1957
    functionDepth: 1
    functionLinenumber: 1957
    functionLinenumberEnd: 1961
    functionName: gf_xml_dom_get_root_nodes_count
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_dom_get_root_nodes_count(GF_DOMParser *parser)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/xml_parser.c:1966,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - parser
    - idx
    argTypes:
    - GF_DOMParser*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1967
      start: 1963
    functionDepth: 1
    functionLinenumber: 1963
    functionLinenumberEnd: 1967
    functionName: gf_xml_dom_get_root_idx
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 3
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_xml_dom_get_root_idx(GF_DOMParser *parser, u32 idx)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2022,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2023,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2024,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2032,1
    - Dst: SET_STRING_ESCAPED
      Src: /src/gpac/src/utils/xml_parser.c:2034,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2040,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2042,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2043,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2045,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:2046,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2048,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/xml_parser.c:2051,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2052,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2053,1
    - Dst: SET_STRING_ESCAPED
      Src: /src/gpac/src/utils/xml_parser.c:2054,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2055,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:2058,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2059,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2062,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:2065,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/xml_parser.c:2067,1
    - Dst: gf_xml_dom_node_serialize
      Src: /src/gpac/src/utils/xml_parser.c:2068,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2071,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2073,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2074,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2076,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2077,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 54
    argCount: 6
    argNames:
    - node
    - content_only
    - no_escape
    - str
    - alloc_size
    - size
    argTypes:
    - GF_XMLNode*
    - Bool
    - Bool
    - char**
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2079
      start: 1970
    functionDepth: 1
    functionLinenumber: 1970
    functionLinenumberEnd: 2079
    functionName: gf_xml_dom_node_serialize
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_xml_dom_node_serialize
    - gf_list_count
    - SET_STRING_ESCAPED
    - SET_STRING
    linkageType: ''
    returnType: void
    signature: void gf_xml_dom_node_serialize(GF_XMLNode *node, Bool content_only,
      Bool no_escape, char **str, u32 *alloc_size, u32 *size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1985
      start: 1975
    functionDepth: 0
    functionLinenumber: 1975
    functionLinenumberEnd: 1985
    functionName: SET_STRING
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_STRING(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - uv
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2019
      start: 1986
    functionDepth: 0
    functionLinenumber: 1986
    functionLinenumberEnd: 2019
    functionName: SET_STRING_ESCAPED
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_STRING_ESCAPED(uv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dom_node_serialize
      Src: /src/gpac/src/utils/xml_parser.c:2087,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - node
    - content_only
    - no_escape
    argTypes:
    - GF_XMLNode*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2089
      start: 2081
    functionDepth: 2
    functionLinenumber: 2081
    functionLinenumberEnd: 2089
    functionName: gf_xml_dom_serialize
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 3
    functionsReached:
    - gf_xml_dom_node_serialize
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_xml_dom_serialize(GF_XMLNode *node, Bool content_only,
      Bool no_escape)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/xml_parser.c:2096,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:2099,1
    - Dst: gf_xml_dom_node_serialize
      Src: /src/gpac/src/utils/xml_parser.c:2101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - node
    - content_only
    - no_escape
    argTypes:
    - GF_XMLNode*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2103
      start: 2091
    functionDepth: 2
    functionLinenumber: 2091
    functionLinenumberEnd: 2103
    functionName: gf_xml_dom_serialize_root
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_dynstrcat
    - strlen
    - gf_xml_dom_node_serialize
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_xml_dom_serialize_root(GF_XMLNode *node, Bool content_only,
      Bool no_escape)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/xml_parser.c:2110,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/utils/xml_parser.c:2114,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/xml_parser.c:2116,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 3
    argNames:
    - node
    - name
    - value
    argTypes:
    - GF_XMLNode*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2118
      start: 2106
    functionDepth: 1
    functionLinenumber: 2106
    functionLinenumberEnd: 2118
    functionName: gf_xml_dom_set_attribute
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_list_add
    - gf_xml_dom_create_attribute
    linkageType: ''
    returnType: GF_XMLAttribute
    signature: GF_XMLAttribute *gf_xml_dom_set_attribute(GF_XMLNode *node, const char*
      name, const char* value)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_parser.c:2125,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:2126,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - node
    - name
    argTypes:
    - GF_XMLNode*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2132
      start: 2120
    functionDepth: 2
    functionLinenumber: 2120
    functionLinenumberEnd: 2132
    functionName: gf_xml_dom_get_attribute
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - strcmp
    linkageType: ''
    returnType: GF_XMLAttribute
    signature: GF_XMLAttribute *gf_xml_dom_get_attribute(GF_XMLNode *node, const char*
      name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/xml_parser.c:2139,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:2142,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:2143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2145
      start: 2136
    functionDepth: 1
    functionLinenumber: 2136
    functionLinenumberEnd: 2145
    functionName: GF_XMLAttribute *gf_xml_dom_create_attribute(const char* name, const
      char* value)
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_XMLAttribute *gf_xml_dom_create_attribute(const char*
      name, const char* value)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/xml_parser.c:2152,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/xml_parser.c:2155,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - node
    - child
    argTypes:
    - GF_XMLNode*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2156
      start: 2148
    functionDepth: 1
    functionLinenumber: 2148
    functionLinenumberEnd: 2156
    functionName: gf_xml_dom_append_child
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_dom_append_child(GF_XMLNode *node, GF_XMLNode *child)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/utils/xml_parser.c:2173,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/xml_parser.c:2175,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 2
    argNames:
    - node
    - child
    argTypes:
    - GF_XMLNode*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2176
      start: 2169
    functionDepth: 2
    functionLinenumber: 2169
    functionLinenumberEnd: 2176
    functionName: gf_xml_dom_rem_child
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_list_find
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_xml_dom_rem_child(GF_XMLNode *node, GF_XMLNode *child)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/xml_parser.c:2183,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:2186,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:2188,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:2194,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:2196,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:2197,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - ns
    - name
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2205
      start: 2180
    functionDepth: 1
    functionLinenumber: 2180
    functionLinenumberEnd: 2205
    functionName: gf_xml_dom_node_new
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_XMLNode
    signature: GF_XMLNode *gf_xml_dom_node_new(const char* ns, const char* name)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:2212,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:2220,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_parser.c:2226,1
    - Dst: strstr
      Src: /src/gpac/src/utils/xml_parser.c:2228,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/xml_parser.c:2231,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:2232,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_parser.c:2236,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_parser.c:2241,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 26
    argCount: 3
    argNames:
    - n
    - expected_node_name
    - expected_ns_prefix
    argTypes:
    - GF_XMLNode*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2243
      start: 2207
    functionDepth: 2
    functionLinenumber: 2207
    functionLinenumberEnd: 2243
    functionName: gf_xml_dom_node_check_namespace
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - strstr
    - strncmp
    - strcmp
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_xml_dom_node_check_namespace(const GF_XMLNode *n, const char
      *expected_node_name, const char *expected_ns_prefix)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:2248,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/xml_parser.c:2251,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/xml_parser.c:2257,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/xml_parser.c:2260,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/xml_parser.c:2263,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/xml_parser.c:2266,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/xml_parser.c:2269,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/xml_parser.c:2273,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/xml_parser.c:2279,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 4
    argNames:
    - file
    - before
    - str
    - after
    argTypes:
    - FILE*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2281
      start: 2245
    functionDepth: 2
    functionLinenumber: 2245
    functionLinenumberEnd: 2281
    functionName: gf_xml_dump_string
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 10
    functionsReached:
    - strlen
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void gf_xml_dump_string(FILE* file, const char *before, const char
      *str, const char *after)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/xml_parser.c:2289,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:2296,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:2298,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/xml_parser.c:2300,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_parser.c:2302,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/xml_parser.c:2304,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/utils/xml_parser.c:2306,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:2309,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:2310,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/xml_parser.c:2311,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/xml_parser.c:2313,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_parser.c:2315,1
    - Dst: gf_xml_dom_node_clone
      Src: /src/gpac/src/utils/xml_parser.c:2316,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/utils/xml_parser.c:2318,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/xml_parser.c:2321,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 33
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2324
      start: 2284
    functionDepth: 4
    functionLinenumber: 2284
    functionLinenumberEnd: 2324
    functionName: gf_xml_dom_node_clone
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 1
    functionsReached:
    - gf_strdup
    - gf_list_new
    - GF_SAFEALLOC
    - gf_xml_dom_node_del
    - gf_xml_dom_node_clone
    - gf_list_add
    - gf_list_enum
    linkageType: ''
    returnType: GF_XMLNode
    signature: GF_XMLNode *gf_xml_dom_node_clone(GF_XMLNode *node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/constants.c:191,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:194,1
    - Dst: strchr
      Src: /src/gpac/src/utils/constants.c:199,1
    - Dst: strlen
      Src: /src/gpac/src/utils/constants.c:204,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/constants.c:207,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 1
    argNames:
    - cname
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 214
    functionName: gf_codecid_parse
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - strchr
    - strcmp
    - strnicmp
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_codecid_parse(const char *cname)
  - BBCount: 63
    BranchProfiles: []
    Callsites:
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/utils/constants.c:334,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/constants.c:337,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 117
    argCount: 1
    argNames:
    - isobmftype
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 219
    functionDepth: 3
    functionLinenumber: 219
    functionLinenumberEnd: 341
    functionName: gf_codec_id_from_isobmf
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 3
    functionsReached:
    - gf_4cc_to_str
    - strncmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_codec_id_from_isobmf(u32 isobmftype)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - codecid
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 344
    functionDepth: 0
    functionLinenumber: 344
    functionLinenumberEnd: 351
    functionName: gf_codecid_reg_find
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CodecIDReg
    signature: CodecIDReg *gf_codecid_reg_find(u32 codecid)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 2
    argNames:
    - stream_type
    - oti
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 353
    functionDepth: 0
    functionLinenumber: 353
    functionLinenumberEnd: 362
    functionName: gf_codecid_reg_find_oti
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CodecIDReg
    signature: CodecIDReg *gf_codecid_reg_find_oti(u32 stream_type, u32 oti)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_codecid_reg_find
      Src: /src/gpac/src/utils/constants.c:367,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - codecid
    argTypes:
    - GF_CodecID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 364
    functionDepth: 1
    functionLinenumber: 364
    functionLinenumberEnd: 371
    functionName: gf_codecid_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 8
    functionsReached:
    - gf_codecid_reg_find
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_codecid_name(GF_CodecID codecid)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_codecid_reg_find
      Src: /src/gpac/src/utils/constants.c:376,1
    - Dst: gf_opts_get_key_count
      Src: /src/gpac/src/utils/constants.c:377,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/constants.c:379,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 10
    argCount: 1
    argNames:
    - codecid
    argTypes:
    - GF_CodecID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 373
    functionDepth: 5
    functionLinenumber: 373
    functionLinenumberEnd: 385
    functionName: gf_codecid_file_ext
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 3
    functionsReached:
    - gf_codecid_reg_find
    - gf_opts_get_key_count
    - gf_opts_get_key
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_codecid_file_ext(GF_CodecID codecid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_codecid_reg_find
      Src: /src/gpac/src/utils/constants.c:390,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - codecid
    argTypes:
    - GF_CodecID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 387
    functionDepth: 1
    functionLinenumber: 387
    functionLinenumberEnd: 393
    functionName: gf_codecid_mime
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - gf_codecid_reg_find
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_codecid_mime(GF_CodecID codecid)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - idx
    - short_name
    - long_name
    argTypes:
    - u32
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 395
    functionDepth: 0
    functionLinenumber: 395
    functionLinenumberEnd: 403
    functionName: gf_codecid_enum
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_codecid_enum(u32 idx, const char **short_name, const char
      **long_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_codecid_reg_find
      Src: /src/gpac/src/utils/constants.c:409,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - codecid
    argTypes:
    - GF_CodecID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 406
    functionDepth: 1
    functionLinenumber: 406
    functionLinenumberEnd: 412
    functionName: gf_codecid_type
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - gf_codecid_reg_find
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_codecid_type(GF_CodecID codecid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_codecid_reg_find
      Src: /src/gpac/src/utils/constants.c:417,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - codecid
    argTypes:
    - GF_CodecID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 414
    functionDepth: 1
    functionLinenumber: 414
    functionLinenumberEnd: 420
    functionName: gf_codecid_alt
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - gf_codecid_reg_find
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_codecid_alt(GF_CodecID codecid)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_codecid_reg_find_oti
      Src: /src/gpac/src/utils/constants.c:430,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - stream_type
    - oti
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 422
    functionDepth: 1
    functionLinenumber: 422
    functionLinenumberEnd: 433
    functionName: gf_codecid_from_oti
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - gf_codecid_reg_find_oti
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_codecid_from_oti(u32 stream_type, u32 oti)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_codecid_reg_find
      Src: /src/gpac/src/utils/constants.c:438,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - codecid
    argTypes:
    - GF_CodecID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 435
    functionDepth: 1
    functionLinenumber: 435
    functionLinenumberEnd: 441
    functionName: gf_codecid_oti
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 3
    functionsReached:
    - gf_codecid_reg_find
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_codecid_oti(GF_CodecID codecid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:451,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - codecid
    argTypes:
    - GF_CodecID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 443
    functionDepth: 0
    functionLinenumber: 443
    functionLinenumberEnd: 455
    functionName: gf_codecid_4cc_type
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - GF_4CC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_codecid_4cc_type(GF_CodecID codecid)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - codecid
    argTypes:
    - GF_CodecID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 457
    functionDepth: 0
    functionLinenumber: 457
    functionLinenumberEnd: 467
    functionName: gf_codecid_has_unframer
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_codecid_has_unframer(GF_CodecID codecid)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - streamType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 497
    functionDepth: 0
    functionLinenumber: 497
    functionLinenumberEnd: 506
    functionName: gf_stream_type_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_stream_type_name(u32 streamType)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - streamType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 508
    functionDepth: 0
    functionLinenumber: 508
    functionLinenumberEnd: 517
    functionName: gf_stream_type_short_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_stream_type_short_name(u32 streamType)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/utils/constants.c:524,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/constants.c:526,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/constants.c:528,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/constants.c:531,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/constants.c:531,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:532,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 13
    argCount: 1
    argNames:
    - val
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 519
    functionDepth: 1
    functionLinenumber: 519
    functionLinenumberEnd: 535
    functionName: gf_stream_type_by_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - strnicmp
    - stricmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_stream_type_by_name(const char *val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/utils/constants.c:548,1
    - Dst: strlen
      Src: /src/gpac/src/utils/constants.c:550,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:552,1
    - Dst: strcat
      Src: /src/gpac/src/utils/constants.c:556,1
    - Dst: strcat
      Src: /src/gpac/src/utils/constants.c:559,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 543
    functionDepth: 1
    functionLinenumber: 543
    functionLinenumberEnd: 564
    functionName: gf_stream_type_all_names
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - strcat
    - GF_LOG
    - strcpy
    - strlen
    linkageType: ''
    returnType: char
    signature: char *gf_stream_type_all_names()
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - idx
    - name
    - desc
    argTypes:
    - u32*
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 581
      start: 568
    functionDepth: 0
    functionLinenumber: 568
    functionLinenumberEnd: 581
    functionName: gf_stream_types_enum
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_stream_types_enum(u32 *idx, const char **name, const char
      **desc)
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 32
    argCount: 1
    argNames:
    - afx_code
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 583
    functionDepth: 0
    functionLinenumber: 583
    functionLinenumberEnd: 617
    functionName: gf_stream_type_afx_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_stream_type_afx_name(u8 afx_code)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:655,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:657,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:659,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:663,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 1
    argNames:
    - af_name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 665
      start: 651
    functionDepth: 1
    functionLinenumber: 651
    functionLinenumberEnd: 665
    functionName: GF_AudioFormat::gf_audio_fmt_parse
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - strcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AudioFormat gf_audio_fmt_parse(const char *af_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:675,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - sfmt
    argTypes:
    - GF_AudioFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 677
      start: 667
    functionDepth: 1
    functionLinenumber: 667
    functionLinenumberEnd: 677
    functionName: gf_audio_fmt_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 3
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_audio_fmt_name(GF_AudioFormat sfmt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:690,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - sfmt
    argTypes:
    - GF_AudioFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 692
      start: 678
    functionDepth: 1
    functionLinenumber: 678
    functionLinenumberEnd: 692
    functionName: gf_audio_fmt_sname
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_audio_fmt_sname(GF_AudioFormat sfmt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/utils/constants.c:702,1
    - Dst: strlen
      Src: /src/gpac/src/utils/constants.c:704,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:706,1
    - Dst: strcat
      Src: /src/gpac/src/utils/constants.c:709,1
    - Dst: strcat
      Src: /src/gpac/src/utils/constants.c:711,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 717
      start: 696
    functionDepth: 1
    functionLinenumber: 696
    functionLinenumberEnd: 717
    functionName: gf_audio_fmt_all_names
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - strcat
    - GF_LOG
    - strcpy
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_audio_fmt_all_names()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/utils/constants.c:727,1
    - Dst: strlen
      Src: /src/gpac/src/utils/constants.c:730,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:732,1
    - Dst: strcat
      Src: /src/gpac/src/utils/constants.c:736,1
    - Dst: strcat
      Src: /src/gpac/src/utils/constants.c:738,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/constants.c:740,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 748
      start: 721
    functionDepth: 1
    functionLinenumber: 721
    functionLinenumberEnd: 748
    functionName: gf_audio_fmt_all_shortnames
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - strcat
    - GF_LOG
    - strcpy
    - memset
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_audio_fmt_all_shortnames()
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 4
    argNames:
    - idx
    - name
    - fileext
    - desc
    argTypes:
    - u32*
    - char**
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 766
      start: 750
    functionDepth: 0
    functionLinenumber: 750
    functionLinenumberEnd: 766
    functionName: GF_AudioFormat::gf_audio_fmt_enum
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AudioFormat gf_audio_fmt_enum(u32 *idx, const char **name,
      const char **fileext, const char **desc)
  - BBCount: 19
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 29
    argCount: 1
    argNames:
    - audio_fmt
    argTypes:
    - GF_AudioFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 805
      start: 768
    functionDepth: 0
    functionLinenumber: 768
    functionLinenumberEnd: 805
    functionName: gf_audio_fmt_bit_depth
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_audio_fmt_bit_depth(GF_AudioFormat audio_fmt)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - audio_fmt
    argTypes:
    - GF_AudioFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 822
      start: 807
    functionDepth: 0
    functionLinenumber: 807
    functionLinenumberEnd: 822
    functionName: gf_audio_fmt_is_planar
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_audio_fmt_is_planar(GF_AudioFormat audio_fmt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:840,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - msubtype
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 846
      start: 837
    functionDepth: 1
    functionLinenumber: 837
    functionLinenumberEnd: 846
    functionName: GF_AudioFormat::gf_audio_fmt_from_isobmf
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AudioFormat gf_audio_fmt_from_isobmf(u32 msubtype)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:851,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - afmt
    argTypes:
    - GF_AudioFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 857
      start: 848
    functionDepth: 1
    functionLinenumber: 848
    functionLinenumberEnd: 857
    functionName: gf_audio_fmt_to_isobmf
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_audio_fmt_to_isobmf(GF_AudioFormat afmt)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:895,1
    CyclomaticComplexity: 70
    EdgeCount: 70
    ICount: 52
    argCount: 3
    argNames:
    - nb_chan
    - nb_surr
    - nb_lfe
    argTypes:
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 897
      start: 859
    functionDepth: 1
    functionLinenumber: 859
    functionLinenumberEnd: 897
    functionName: gf_audio_fmt_get_cicp_layout
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_audio_fmt_get_cicp_layout(u32 nb_chan, u32 nb_surr, u32
      nb_lfe)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:937,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - cicp_layout
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 939
      start: 930
    functionDepth: 1
    functionLinenumber: 930
    functionLinenumberEnd: 939
    functionName: gf_audio_fmt_get_layout_from_cicp
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 4
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_audio_fmt_get_layout_from_cicp(u32 cicp_layout)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:948,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - cicp_layout
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 950
      start: 941
    functionDepth: 1
    functionLinenumber: 941
    functionLinenumberEnd: 950
    functionName: gf_audio_fmt_get_layout_name_from_cicp
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_audio_fmt_get_layout_name_from_cicp(u32 cicp_layout)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_audio_fmt_get_layout_name
      Src: /src/gpac/src/utils/constants.c:964,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:966,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 1
    argNames:
    - ch_layout
    argTypes:
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 968
      start: 952
    functionDepth: 1
    functionLinenumber: 952
    functionLinenumberEnd: 968
    functionName: gf_audio_fmt_get_layout_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - gf_audio_fmt_get_layout_name
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_audio_fmt_get_layout_name(u64 ch_layout)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: atoi
      Src: /src/gpac/src/utils/constants.c:975,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:977,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:982,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 984
      start: 970
    functionDepth: 1
    functionLinenumber: 970
    functionLinenumberEnd: 984
    functionName: gf_audio_fmt_get_layout_from_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - strcmp
    - atoi
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_audio_fmt_get_layout_from_name(const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:994,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - chan_layout
    argTypes:
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 996
      start: 987
    functionDepth: 1
    functionLinenumber: 987
    functionLinenumberEnd: 996
    functionName: gf_audio_fmt_get_cicp_from_layout
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_audio_fmt_get_cicp_from_layout(u64 chan_layout)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: atoi
      Src: /src/gpac/src/utils/constants.c:1002,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:1004,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:1009,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1011
      start: 998
    functionDepth: 1
    functionLinenumber: 998
    functionLinenumberEnd: 1011
    functionName: gf_audio_fmt_get_cicp_from_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - strcmp
    - atoi
    linkageType: ''
    returnType: u32
    signature: u32 gf_audio_fmt_get_cicp_from_name(const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:1019,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - cicp_code
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1021
      start: 1013
    functionDepth: 1
    functionLinenumber: 1013
    functionLinenumberEnd: 1021
    functionName: gf_audio_fmt_get_cicp_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: char
    signature: char *gf_audio_fmt_get_cicp_name(u32 cicp_code)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - chan_layout
    argTypes:
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1033
      start: 1024
    functionDepth: 0
    functionLinenumber: 1024
    functionLinenumberEnd: 1033
    functionName: gf_audio_fmt_get_num_channels_from_layout
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_audio_fmt_get_num_channels_from_layout(u64 chan_layout)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:1039,1
    - Dst: strcat
      Src: /src/gpac/src/utils/constants.c:1041,1
    - Dst: strcat
      Src: /src/gpac/src/utils/constants.c:1042,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1046
      start: 1036
    functionDepth: 1
    functionLinenumber: 1036
    functionLinenumberEnd: 1046
    functionName: gf_audio_fmt_cicp_all_names
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - strcat
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: char
    signature: char *gf_audio_fmt_cicp_all_names()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:1052,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - idx
    - short_name
    - ch_mask
    argTypes:
    - u32
    - char**
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1057
      start: 1049
    functionDepth: 1
    functionLinenumber: 1049
    functionLinenumberEnd: 1057
    functionName: gf_audio_fmt_cicp_enum
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_audio_fmt_cicp_enum(u32 idx, const char **short_name,
      u64 *ch_mask)
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 34
    argCount: 1
    argNames:
    - layout
    argTypes:
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1093
      start: 1060
    functionDepth: 0
    functionLinenumber: 1060
    functionLinenumberEnd: 1093
    functionName: gf_audio_fmt_get_dolby_chanmap_from_layout
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_audio_fmt_get_dolby_chanmap_from_layout(u64 layout)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - mask
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1114
      start: 1095
    functionDepth: 0
    functionLinenumber: 1095
    functionLinenumberEnd: 1114
    functionName: gf_audio_get_dolby_channel_config_value_from_mask
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_audio_get_dolby_channel_config_value_from_mask(u32 mask)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - mask
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1148
      start: 1117
    functionDepth: 0
    functionLinenumber: 1117
    functionLinenumberEnd: 1148
    functionName: gf_ac4_dolby_channel_count_from_channel_mask_v1
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_ac4_dolby_channel_count_from_channel_mask_v1(u32 mask)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_audio_fmt_get_layout_from_cicp
      Src: /src/gpac/src/utils/constants.c:1153,1
    - Dst: gf_audio_fmt_get_dolby_chanmap_from_layout
      Src: /src/gpac/src/utils/constants.c:1154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - cicp
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1155
      start: 1150
    functionDepth: 2
    functionLinenumber: 1150
    functionLinenumberEnd: 1155
    functionName: gf_audio_fmt_get_dolby_chanmap
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - gf_audio_fmt_get_dolby_chanmap_from_layout
    - gf_audio_fmt_get_layout_from_cicp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_audio_fmt_get_dolby_chanmap(u32 cicp)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:1226,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:1226,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:1228,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:1230,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:1234,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 1
    argNames:
    - pf_name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1236
      start: 1222
    functionDepth: 1
    functionLinenumber: 1222
    functionLinenumberEnd: 1236
    functionName: GF_PixelFormat::gf_pixel_fmt_parse
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - strcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_PixelFormat gf_pixel_fmt_parse(const char *pf_name)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:1243,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:1243,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:1251,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:1253,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 19
    argCount: 2
    argNames:
    - pf_4cc
    - pf_name
    argTypes:
    - GF_PixelFormat
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1259
      start: 1238
    functionDepth: 0
    functionLinenumber: 1238
    functionLinenumberEnd: 1259
    functionName: gf_pixel_fmt_probe
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_pixel_fmt_probe(GF_PixelFormat pf_4cc, const char *pf_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:1269,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/utils/constants.c:1269,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - pfmt
    argTypes:
    - GF_PixelFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1271
      start: 1261
    functionDepth: 3
    functionLinenumber: 1261
    functionLinenumberEnd: 1271
    functionName: gf_pixel_fmt_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 4
    functionsReached:
    - GF_LOG
    - gf_4cc_to_str
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_pixel_fmt_name(GF_PixelFormat pfmt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:1284,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/utils/constants.c:1284,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - pfmt
    argTypes:
    - GF_PixelFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1287
      start: 1272
    functionDepth: 3
    functionLinenumber: 1272
    functionLinenumberEnd: 1287
    functionName: gf_pixel_fmt_sname
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - gf_4cc_to_str
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_pixel_fmt_sname(GF_PixelFormat pfmt)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 4
    argNames:
    - idx
    - name
    - fileext
    - description
    argTypes:
    - u32*
    - char**
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1303
      start: 1289
    functionDepth: 0
    functionLinenumber: 1289
    functionLinenumberEnd: 1303
    functionName: GF_PixelFormat::gf_pixel_fmt_enum
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_PixelFormat gf_pixel_fmt_enum(u32 *idx, const char **name,
      const char **fileext, const char **description)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - pfmt
    argTypes:
    - GF_PixelFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1316
      start: 1306
    functionDepth: 0
    functionLinenumber: 1306
    functionLinenumberEnd: 1316
    functionName: gf_pixel_fmt_is_yuv
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_pixel_fmt_is_yuv(GF_PixelFormat pfmt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/utils/constants.c:1326,1
    - Dst: strlen
      Src: /src/gpac/src/utils/constants.c:1336,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:1338,1
    - Dst: strcat
      Src: /src/gpac/src/utils/constants.c:1341,1
    - Dst: strcat
      Src: /src/gpac/src/utils/constants.c:1343,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1349
      start: 1320
    functionDepth: 1
    functionLinenumber: 1320
    functionLinenumberEnd: 1349
    functionName: gf_pixel_fmt_all_names
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - strcat
    - GF_LOG
    - strcpy
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_pixel_fmt_all_names()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/constants.c:1368,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:1370,1
    - Dst: strcat
      Src: /src/gpac/src/utils/constants.c:1374,1
    - Dst: strcat
      Src: /src/gpac/src/utils/constants.c:1376,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/constants.c:1378,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1385
      start: 1353
    functionDepth: 1
    functionLinenumber: 1353
    functionLinenumberEnd: 1385
    functionName: gf_pixel_fmt_all_shortnames
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - strcat
    - GF_LOG
    - strcpy
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_pixel_fmt_all_shortnames()
  - BBCount: 89
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:1631,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/utils/constants.c:1631,1
    CyclomaticComplexity: 99
    EdgeCount: 99
    ICount: 256
    argCount: 8
    argNames:
    - pixfmt
    - width
    - height
    - out_size
    - out_stride
    - out_stride_uv
    - out_planes
    - out_plane_uv_height
    argTypes:
    - GF_PixelFormat
    - u32
    - u32
    - u32*
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1640
      start: 1387
    functionDepth: 4
    functionLinenumber: 1387
    functionLinenumberEnd: 1640
    functionName: gf_pixel_get_size_info
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 9
    functionsReached:
    - GF_LOG
    - gf_pixel_fmt_name
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_pixel_get_size_info(GF_PixelFormat pixfmt, u32 width,
      u32 height, u32 *out_size, u32 *out_stride, u32 *out_stride_uv, u32 *out_planes,
      u32 *out_plane_uv_height)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 1
    argNames:
    - pixfmt
    argTypes:
    - GF_PixelFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1661
      start: 1642
    functionDepth: 0
    functionLinenumber: 1642
    functionLinenumberEnd: 1661
    functionName: gf_pixel_fmt_is_transparent
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_pixel_fmt_is_transparent(GF_PixelFormat pixfmt)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - pixfmt
    argTypes:
    - GF_PixelFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1682
      start: 1663
    functionDepth: 0
    functionLinenumber: 1663
    functionLinenumberEnd: 1682
    functionName: gf_pixel_is_wide_depth
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_pixel_is_wide_depth(GF_PixelFormat pixfmt)
  - BBCount: 51
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:1755,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/utils/constants.c:1755,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 72
    argCount: 1
    argNames:
    - pixfmt
    argTypes:
    - GF_PixelFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1759
      start: 1684
    functionDepth: 4
    functionLinenumber: 1684
    functionLinenumberEnd: 1759
    functionName: gf_pixel_get_bytes_per_pixel
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 3
    functionsReached:
    - GF_LOG
    - gf_pixel_fmt_name
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_pixel_get_bytes_per_pixel(GF_PixelFormat pixfmt)
  - BBCount: 51
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:1840,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/utils/constants.c:1840,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 81
    argCount: 1
    argNames:
    - pixfmt
    argTypes:
    - GF_PixelFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1844
      start: 1761
    functionDepth: 4
    functionLinenumber: 1761
    functionLinenumberEnd: 1844
    functionName: gf_pixel_get_nb_comp
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_pixel_fmt_name
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_pixel_get_nb_comp(GF_PixelFormat pixfmt)
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 31
    argCount: 3
    argNames:
    - pixfmt
    - downsample_w
    - downsample_h
    argTypes:
    - GF_PixelFormat
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1880
      start: 1846
    functionDepth: 0
    functionLinenumber: 1846
    functionLinenumberEnd: 1880
    functionName: gf_pixel_get_downsampling
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_pixel_get_downsampling(GF_PixelFormat pixfmt, u32 *downsample_w,
      u32 *downsample_h)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:1907,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - qt_code
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1912
      start: 1904
    functionDepth: 1
    functionLinenumber: 1904
    functionLinenumberEnd: 1912
    functionName: GF_PixelFormat::gf_pixel_fmt_from_qt_type
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_PixelFormat gf_pixel_fmt_from_qt_type(u32 qt_code)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:1917,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - pix_fmt
    argTypes:
    - GF_PixelFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1924
      start: 1914
    functionDepth: 1
    functionLinenumber: 1914
    functionLinenumberEnd: 1924
    functionName: gf_pixel_fmt_to_qt_type
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_pixel_fmt_to_qt_type(GF_PixelFormat pix_fmt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:2007,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - id3tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2013
      start: 2004
    functionDepth: 1
    functionLinenumber: 2004
    functionLinenumberEnd: 2013
    functionName: gf_itags_find_by_id3tag
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_itags_find_by_id3tag(u32 id3tag)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:2018,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - itag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2023
      start: 2015
    functionDepth: 1
    functionLinenumber: 2015
    functionLinenumberEnd: 2023
    functionName: gf_itags_find_by_itag
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 5
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_itags_find_by_itag(u32 itag)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:2028,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/constants.c:2030,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/constants.c:2030,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/constants.c:2032,1
    - Dst: strlen
      Src: /src/gpac/src/utils/constants.c:2032,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 1
    argNames:
    - tag_name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2037
      start: 2025
    functionDepth: 1
    functionLinenumber: 2025
    functionLinenumberEnd: 2037
    functionName: gf_itags_find_by_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - strnicmp
    - strlen
    - GF_ARRAY_LENGTH
    - stricmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_itags_find_by_name(const char *tag_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:2042,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - tag_idx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2045
      start: 2039
    functionDepth: 1
    functionLinenumber: 2039
    functionLinenumberEnd: 2045
    functionName: gf_itags_get_type
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 7
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_itags_get_type(u32 tag_idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:2050,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - tag_idx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2053
      start: 2047
    functionDepth: 1
    functionLinenumber: 2047
    functionLinenumberEnd: 2053
    functionName: gf_itags_get_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 4
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_itags_get_name(u32 tag_idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:2058,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - tag_idx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2061
      start: 2055
    functionDepth: 1
    functionLinenumber: 2055
    functionLinenumberEnd: 2061
    functionName: gf_itags_get_alt_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_itags_get_alt_name(u32 tag_idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:2066,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - tag_idx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2069
      start: 2063
    functionDepth: 1
    functionLinenumber: 2063
    functionLinenumberEnd: 2069
    functionName: gf_itags_get_itag
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 3
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_itags_get_itag(u32 tag_idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:2074,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - tag_idx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2077
      start: 2071
    functionDepth: 1
    functionLinenumber: 2071
    functionLinenumberEnd: 2077
    functionName: gf_itags_get_id3tag
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_itags_get_id3tag(u32 tag_idx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:2082,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 4
    argNames:
    - idx
    - itag
    - id3tag
    - type
    argTypes:
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2090
      start: 2079
    functionDepth: 1
    functionLinenumber: 2079
    functionLinenumberEnd: 2090
    functionName: gf_itags_enum_tags
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_itags_enum_tags(u32 *idx, u32 *itag, u32 *id3tag, u32
      *type)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2120
      start: 2113
    functionDepth: 0
    functionLinenumber: 2113
    functionLinenumberEnd: 2120
    functionName: gf_id3_get_genre
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_id3_get_genre(u32 tag)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/utils/constants.c:2127,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2130
      start: 2121
    functionDepth: 0
    functionLinenumber: 2121
    functionLinenumberEnd: 2130
    functionName: gf_id3_get_genre_tag
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - stricmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_id3_get_genre_tag(const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/src/utils/constants.c:2155,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/constants.c:2159,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/constants.c:2160,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - val
    - ival
    argTypes:
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2163
      start: 2153
    functionDepth: 0
    functionLinenumber: 2153
    functionLinenumberEnd: 2163
    functionName: cicp_parse_int
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - stricmp
    - sscanf
    - sprintf
    linkageType: ''
    returnType: void
    signature: void cicp_parse_int(const char *val, u32 *ival)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:2168,1
    - Dst: cicp_parse_int
      Src: /src/gpac/src/utils/constants.c:2169,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/constants.c:2171,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:2175,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:2176,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - val
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2179
      start: 2165
    functionDepth: 1
    functionLinenumber: 2165
    functionLinenumberEnd: 2179
    functionName: gf_cicp_parse_color_primaries
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - cicp_parse_int
    - GF_LOG
    - strcmp
    - stricmp
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cicp_parse_color_primaries(const char *val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:2184,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - cicp_mx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2191
      start: 2181
    functionDepth: 1
    functionLinenumber: 2181
    functionLinenumberEnd: 2191
    functionName: gf_cicp_color_primaries_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_cicp_color_primaries_name(u32 cicp_mx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:2199,1
    - Dst: strcat
      Src: /src/gpac/src/utils/constants.c:2201,1
    - Dst: strcat
      Src: /src/gpac/src/utils/constants.c:2202,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2206
      start: 2195
    functionDepth: 1
    functionLinenumber: 2195
    functionLinenumberEnd: 2206
    functionName: gf_cicp_color_primaries_all_names
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - strcat
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_cicp_color_primaries_all_names()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:2238,1
    - Dst: cicp_parse_int
      Src: /src/gpac/src/utils/constants.c:2239,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/constants.c:2241,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:2245,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:2246,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - val
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2249
      start: 2235
    functionDepth: 1
    functionLinenumber: 2235
    functionLinenumberEnd: 2249
    functionName: gf_cicp_parse_color_transfer
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - cicp_parse_int
    - GF_LOG
    - strcmp
    - stricmp
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cicp_parse_color_transfer(const char *val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:2254,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - cicp_mx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2261
      start: 2251
    functionDepth: 1
    functionLinenumber: 2251
    functionLinenumberEnd: 2261
    functionName: gf_cicp_color_transfer_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_cicp_color_transfer_name(u32 cicp_mx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:2269,1
    - Dst: strcat
      Src: /src/gpac/src/utils/constants.c:2271,1
    - Dst: strcat
      Src: /src/gpac/src/utils/constants.c:2272,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2276
      start: 2265
    functionDepth: 1
    functionLinenumber: 2265
    functionLinenumberEnd: 2276
    functionName: gf_cicp_color_transfer_all_names
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - strcat
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_cicp_color_transfer_all_names()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:2299,1
    - Dst: cicp_parse_int
      Src: /src/gpac/src/utils/constants.c:2300,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/constants.c:2302,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:2306,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:2307,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - val
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2310
      start: 2296
    functionDepth: 1
    functionLinenumber: 2296
    functionLinenumberEnd: 2310
    functionName: gf_cicp_parse_color_matrix
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - cicp_parse_int
    - GF_LOG
    - strcmp
    - stricmp
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cicp_parse_color_matrix(const char *val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:2315,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - cicp_mx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2322
      start: 2312
    functionDepth: 1
    functionLinenumber: 2312
    functionLinenumberEnd: 2322
    functionName: gf_cicp_color_matrix_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_cicp_color_matrix_name(u32 cicp_mx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/constants.c:2329,1
    - Dst: strcat
      Src: /src/gpac/src/utils/constants.c:2331,1
    - Dst: strcat
      Src: /src/gpac/src/utils/constants.c:2332,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2336
      start: 2325
    functionDepth: 1
    functionLinenumber: 2325
    functionLinenumberEnd: 2336
    functionName: gf_cicp_color_matrix_all_names
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - strcat
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_cicp_color_matrix_all_names()
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 22
    argCount: 3
    argNames:
    - value
    - timescale
    - new_timescale
    argTypes:
    - u64
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2373
      start: 2339
    functionDepth: 0
    functionLinenumber: 2339
    functionLinenumberEnd: 2373
    functionName: gf_timestamp_rescale
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 19
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_timestamp_rescale(u64 value, u64 timescale, u64 new_timescale)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 3
    argNames:
    - value
    - timescale
    - new_timescale
    argTypes:
    - s64
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2403
      start: 2375
    functionDepth: 0
    functionLinenumber: 2375
    functionLinenumberEnd: 2403
    functionName: gf_timestamp_rescale_signed
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_timestamp_rescale_signed(s64 value, u64 timescale, u64
      new_timescale)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _op
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2422
      start: 2405
    functionDepth: 0
    functionLinenumber: 2405
    functionLinenumberEnd: 2422
    functionName: TIMESTAMP_COMPARE
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TIMESTAMP_COMPARE(_op)
  - BBCount: 62
    BranchProfiles: []
    Callsites:
    - Dst: TIMESTAMP_COMPARE
      Src: /src/gpac/src/utils/constants.c:2438,1
    - Dst: TIMESTAMP_COMPARE
      Src: /src/gpac/src/utils/constants.c:2444,1
    - Dst: TIMESTAMP_COMPARE
      Src: /src/gpac/src/utils/constants.c:2450,1
    - Dst: memset
      Src: /src/gpac/src/utils/constants.c:2459,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2556,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2572,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2597,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2616,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2671,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2683,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2695,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2707,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2719,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2731,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2743,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2757,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2772,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2784,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2798,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:2806,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/utils/constants.c:2806,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/utils/constants.c:2809,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2818,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2819,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2819,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2820,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/constants.c:2822,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/constants.c:2826,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2827,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2828,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2828,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2829,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2830,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2833,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/constants.c:2835,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/constants.c:2838,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/constants.c:2839,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/constants.c:2840,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/constants.c:2842,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/constants.c:2843,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/constants.c:2844,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/constants.c:2845,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/constants.c:2846,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/constants.c:2847,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/constants.c:2848,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/constants.c:2849,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/constants.c:2850,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2851,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2852,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2853,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2854,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2855,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/constants.c:2858,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/constants.c:2859,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2860,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/constants.c:2861,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/utils/constants.c:2862,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/utils/constants.c:2863,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 391
    argCount: 4
    argNames:
    - pixfmt
    - profile_mode
    - dsi
    - dsi_size
    argTypes:
    - GF_PixelFormat
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2865
      start: 2423
    functionDepth: 9
    functionLinenumber: 2423
    functionLinenumberEnd: 2865
    functionName: gf_pixel_fmt_get_uncc
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_pixel_fmt_name
    - gf_bs_seek
    - GF_LOG
    - gf_bs_write_u16
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_get_position
    - gf_bs_del
    - memset
    - GF_4CC
    - gf_bs_write_u32
    - TIMESTAMP_COMPARE
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_pixel_fmt_get_uncc(GF_PixelFormat pixfmt, u32 profile_mode,
      u8 **dsi, u32 *dsi_size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/utils/constants.c:2875,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/constants.c:2885,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/constants.c:2890,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/constants.c:2898,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 3
    argNames:
    - dur
    - timescale
    - szDur
    argTypes:
    - u64
    - u32
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2902
      start: 2867
    functionDepth: 1
    functionLinenumber: 2867
    functionLinenumberEnd: 2902
    functionName: gf_format_duration
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 4
    functionsReached:
    - gf_timestamp_rescale
    - snprintf
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_format_duration(u64 dur, u32 timescale, char szDur[100])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/gpac/src/utils/constants.c:2908,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - tc
    - szTimecode
    argTypes:
    - GF_TimeCode*
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2910
      start: 2904
    functionDepth: 0
    functionLinenumber: 2904
    functionLinenumberEnd: 2910
    functionName: gf_format_timecode
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - snprintf
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_format_timecode(GF_TimeCode *tc, char szTimecode[100])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/utils/constants.c:2918,1
    - Dst: gf_ceil
      Src: /src/gpac/src/utils/constants.c:2918,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - tc
    - timescale
    argTypes:
    - GF_TimeCode*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2920
      start: 2912
    functionDepth: 1
    functionLinenumber: 2912
    functionLinenumberEnd: 2920
    functionName: gf_timecode_to_timestamp
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - gf_timestamp_rescale
    - gf_ceil
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_timecode_to_timestamp(GF_TimeCode *tc, u32 timescale)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _op
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2927
      start: 2922
    functionDepth: 0
    functionLinenumber: 2922
    functionLinenumberEnd: 2927
    functionName: TIMECODE_COMPARE
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TIMECODE_COMPARE(_op)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: TIMECODE_COMPARE
      Src: /src/gpac/src/utils/constants.c:2943,1
    - Dst: TIMECODE_COMPARE
      Src: /src/gpac/src/utils/constants.c:2949,1
    - Dst: TIMECODE_COMPARE
      Src: /src/gpac/src/utils/constants.c:2955,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 30
    argCount: 5
    argNames:
    - key_info
    - key_info_size
    - idx
    - const_iv_size
    - const_iv
    argTypes:
    - u8*
    - u32
    - u32
    - u8*
    - u8**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2995
      start: 2928
    functionDepth: 1
    functionLinenumber: 2928
    functionLinenumberEnd: 2995
    functionName: gf_cenc_key_info_get_iv_size
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - TIMECODE_COMPARE
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_cenc_key_info_get_iv_size(const u8 *key_info, u32 key_info_size,
      u32 idx, u8 *const_iv_size, const u8 **const_iv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 68
    functionName: STRDUP
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: STRDUP(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 89
    functionName: STRDUP
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: STRDUP(_a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 114
    functionName: STRDUP
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: STRDUP(_a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 126
    functionName: STRDUP
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: STRDUP(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MALLOC
      Src: /src/gpac/src/utils/alloc.c:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - size
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 151
    functionName: gf_malloc
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 789
    functionsReached:
    - MALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_malloc(size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CALLOC
      Src: /src/gpac/src/utils/alloc.c:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - num
    - size_of
    argTypes:
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 156
    functionName: gf_calloc
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 27
    functionsReached:
    - CALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_calloc(size_t num, size_t size_of)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: REALLOC
      Src: /src/gpac/src/utils/alloc.c:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ptr
    - size
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 161
    functionName: gf_realloc
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 217
    functionsReached:
    - REALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_realloc(void *ptr, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FREE
      Src: /src/gpac/src/utils/alloc.c:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 166
    functionName: gf_free
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 1726
    functionsReached:
    - FREE
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_free(void *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: STRDUP
      Src: /src/gpac/src/utils/alloc.c:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 171
    functionName: gf_strdup
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 348
    functionsReached:
    - STRDUP
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_strdup(const char *str)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GetCurrentProcess
      Src: /src/gpac/src/utils/alloc.c:231,1
    - Dst: SymInitialize
      Src: /src/gpac/src/utils/alloc.c:232,1
    - Dst: _alloca
      Src: /src/gpac/src/utils/alloc.c:234,1
    - Dst: CaptureStackBackTrace
      Src: /src/gpac/src/utils/alloc.c:238,1
    - Dst: SymFromAddr
      Src: /src/gpac/src/utils/alloc.c:244,1
    - Dst: strlen
      Src: /src/gpac/src/utils/alloc.c:247,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:249,1
    - Dst: _snprintf
      Src: /src/gpac/src/utils/alloc.c:253,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:258,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 1
    argNames:
    - s_backtrace
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 260
    functionName: store_backtrace
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - SymInitialize
    - gf_memory_log
    - gf_assert
    - CaptureStackBackTrace
    - _snprintf
    - _alloca
    - GetCurrentProcess
    - SymFromAddr
    - strlen
    linkageType: ''
    returnType: void
    signature: void store_backtrace(char *s_backtrace)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: backtrace
      Src: /src/gpac/src/utils/alloc.c:278,1
    - Dst: backtrace_symbols
      Src: /src/gpac/src/utils/alloc.c:279,1
    - Dst: strlen
      Src: /src/gpac/src/utils/alloc.c:282,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:286,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/alloc.c:290,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:296,1
    - Dst: free
      Src: /src/gpac/src/utils/alloc.c:298,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - s_backtrace
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 271
    functionDepth: 1
    functionLinenumber: 271
    functionLinenumberEnd: 300
    functionName: store_backtrace
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - backtrace_symbols
    - gf_memory_log
    - gf_assert
    - snprintf
    - free
    - strlen
    - backtrace
    linkageType: ''
    returnType: void
    signature: void store_backtrace(char *s_backtrace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MALLOC
      Src: /src/gpac/src/utils/alloc.c:313,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - size
    - filename
    - line
    argTypes:
    - size_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 311
    functionDepth: 0
    functionLinenumber: 311
    functionLinenumberEnd: 314
    functionName: gf_mem_malloc_basic
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - MALLOC
    linkageType: ''
    returnType: void
    signature: void *gf_mem_malloc_basic(size_t size, const char *filename, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CALLOC
      Src: /src/gpac/src/utils/alloc.c:317,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - num
    - size_of
    - filename
    - line
    argTypes:
    - size_t
    - size_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 315
    functionDepth: 0
    functionLinenumber: 315
    functionLinenumberEnd: 318
    functionName: gf_mem_calloc_basic
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - CALLOC
    linkageType: ''
    returnType: void
    signature: void *gf_mem_calloc_basic(size_t num, size_t size_of, const char *filename,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: REALLOC
      Src: /src/gpac/src/utils/alloc.c:321,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ptr
    - size
    - filename
    - line
    argTypes:
    - void*
    - size_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 319
    functionDepth: 0
    functionLinenumber: 319
    functionLinenumberEnd: 322
    functionName: gf_mem_realloc_basic
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - REALLOC
    linkageType: ''
    returnType: void
    signature: void *gf_mem_realloc_basic(void *ptr, size_t size, const char *filename,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FREE
      Src: /src/gpac/src/utils/alloc.c:325,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ptr
    - filename
    - line
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 326
    functionName: gf_mem_free_basic
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - FREE
    linkageType: ''
    returnType: void
    signature: void gf_mem_free_basic(void *ptr, const char *filename, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: STRDUP
      Src: /src/gpac/src/utils/alloc.c:329,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - str
    - filename
    - line
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 327
    functionDepth: 1
    functionLinenumber: 327
    functionLinenumberEnd: 330
    functionName: gf_mem_strdup_basic
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - STRDUP
    linkageType: ''
    returnType: char
    signature: char *gf_mem_strdup_basic(const char *str, const char *filename, int
      line)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MALLOC
      Src: /src/gpac/src/utils/alloc.c:339,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:341,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:342,1
    - Dst: register_address
      Src: /src/gpac/src/utils/alloc.c:344,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:346,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:347,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - size
    - filename
    - line
    argTypes:
    - size_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 337
    functionDepth: 1
    functionLinenumber: 337
    functionLinenumberEnd: 350
    functionName: gf_mem_malloc_tracker
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - gf_memory_log
    - gf_assert
    - MALLOC
    - register_address
    linkageType: ''
    returnType: void
    signature: void *gf_mem_malloc_tracker(size_t size, const char *filename, int
      line)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CALLOC
      Src: /src/gpac/src/utils/alloc.c:355,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:357,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:358,1
    - Dst: register_address
      Src: /src/gpac/src/utils/alloc.c:360,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:362,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:363,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - num
    - size_of
    - filename
    - line
    argTypes:
    - size_t
    - size_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 352
    functionDepth: 1
    functionLinenumber: 352
    functionLinenumberEnd: 366
    functionName: gf_mem_calloc_tracker
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - gf_memory_log
    - CALLOC
    - gf_assert
    - register_address
    linkageType: ''
    returnType: void
    signature: void *gf_mem_calloc_tracker(size_t num, size_t size_of, const char
      *filename, int line)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unregister_address
      Src: /src/gpac/src/utils/alloc.c:371,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:372,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:373,1
    - Dst: FREE
      Src: /src/gpac/src/utils/alloc.c:374,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ptr
    - filename
    - line
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 368
    functionDepth: 1
    functionLinenumber: 368
    functionLinenumberEnd: 377
    functionName: gf_mem_free_tracker
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - FREE
    - gf_memory_log
    - unregister_address
    linkageType: ''
    returnType: void
    signature: void gf_mem_free_tracker(void *ptr, const char *filename, int line)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:384,1
    - Dst: gf_mem_malloc_tracker
      Src: /src/gpac/src/utils/alloc.c:385,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:389,1
    - Dst: gf_mem_free_tracker
      Src: /src/gpac/src/utils/alloc.c:390,1
    - Dst: unregister_address
      Src: /src/gpac/src/utils/alloc.c:393,1
    - Dst: REALLOC
      Src: /src/gpac/src/utils/alloc.c:394,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:397,1
    - Dst: register_address
      Src: /src/gpac/src/utils/alloc.c:398,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:399,1
    - Dst: register_address
      Src: /src/gpac/src/utils/alloc.c:401,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:403,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:404,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 4
    argNames:
    - ptr
    - size
    - filename
    - line
    argTypes:
    - void*
    - size_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 379
    functionDepth: 2
    functionLinenumber: 379
    functionLinenumberEnd: 408
    functionName: gf_mem_realloc_tracker
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - gf_memory_log
    - gf_assert
    - REALLOC
    - gf_mem_free_tracker
    - unregister_address
    - register_address
    - gf_mem_malloc_tracker
    linkageType: ''
    returnType: void
    signature: void *gf_mem_realloc_tracker(void *ptr, size_t size, const char *filename,
      int line)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mem_malloc_tracker
      Src: /src/gpac/src/utils/alloc.c:414,1
    - Dst: strlen
      Src: /src/gpac/src/utils/alloc.c:414,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/alloc.c:415,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - str
    - filename
    - line
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 410
    functionDepth: 2
    functionLinenumber: 410
    functionLinenumberEnd: 417
    functionName: gf_mem_strdup_tracker
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - strcpy
    - gf_mem_malloc_tracker
    - strlen
    linkageType: ''
    returnType: char
    signature: char *gf_mem_strdup_tracker(const char *str, const char *filename,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mem_malloc_proto
      Src: /src/gpac/src/utils/alloc.c:437,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - size
    - filename
    - line
    argTypes:
    - size_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 435
    functionDepth: 0
    functionLinenumber: 435
    functionLinenumberEnd: 438
    functionName: gf_mem_malloc
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - gf_mem_malloc_proto
    linkageType: ''
    returnType: MY_GF_EXPORT
    signature: MY_GF_EXPORT *gf_mem_malloc(size_t size, const char *filename, int
      line)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mem_calloc_proto
      Src: /src/gpac/src/utils/alloc.c:442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - num
    - size_of
    - filename
    - line
    argTypes:
    - size_t
    - size_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 440
    functionDepth: 0
    functionLinenumber: 440
    functionLinenumberEnd: 443
    functionName: gf_mem_calloc
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - gf_mem_calloc_proto
    linkageType: ''
    returnType: MY_GF_EXPORT
    signature: MY_GF_EXPORT *gf_mem_calloc(size_t num, size_t size_of, const char
      *filename, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mem_realloc_proto
      Src: /src/gpac/src/utils/alloc.c:448,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ptr
    - size
    - filename
    - line
    argTypes:
    - void*
    - size_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 445
    functionDepth: 0
    functionLinenumber: 445
    functionLinenumberEnd: 449
    functionName: gf_mem_realloc
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - gf_mem_realloc_proto
    linkageType: ''
    returnType: MY_GF_EXPORT
    signature: MY_GF_EXPORT *gf_mem_realloc(void *ptr, size_t size, const char *filename,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mem_free_proto
      Src: /src/gpac/src/utils/alloc.c:454,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ptr
    - filename
    - line
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 451
    functionDepth: 0
    functionLinenumber: 451
    functionLinenumberEnd: 455
    functionName: gf_mem_free
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - gf_mem_free_proto
    linkageType: ''
    returnType: MY_GF_EXPORT
    signature: MY_GF_EXPORT gf_mem_free(void *ptr, const char *filename, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mem_strdup_proto
      Src: /src/gpac/src/utils/alloc.c:460,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - str
    - filename
    - line
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 461
      start: 457
    functionDepth: 0
    functionLinenumber: 457
    functionLinenumberEnd: 461
    functionName: gf_mem_strdup
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - gf_mem_strdup_proto
    linkageType: ''
    returnType: MY_GF_EXPORT
    signature: MY_GF_EXPORT *gf_mem_strdup(const char *str, const char *filename,
      int line)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 1
    argNames:
    - mem_track_type
    argTypes:
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 486
      start: 463
    functionDepth: 0
    functionLinenumber: 463
    functionLinenumberEnd: 486
    functionName: gf_mem_enable_tracker
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_mem_enable_tracker(unsigned int mem_track_type)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 4
    argNames:
    - nb_allocs
    - nb_callocs
    - nb_reallocs
    - nb_free
    argTypes:
    - unsigned int*
    - unsigned int*
    - unsigned int*
    - unsigned int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 495
      start: 488
    functionDepth: 0
    functionLinenumber: 488
    functionLinenumberEnd: 495
    functionName: gf_mem_get_stats
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t gf_mem_get_stats(unsigned int *nb_allocs, unsigned int *nb_callocs,
      unsigned int *nb_reallocs, unsigned int *nb_free)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 526
      start: 519
    functionDepth: 0
    functionLinenumber: 519
    functionLinenumberEnd: 526
    functionName: gf_memory_hash
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: unsigned int
    signature: unsigned int gf_memory_hash(void *ptr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: MALLOC
      Src: /src/gpac/src/utils/alloc.c:532,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:534,1
    - Dst: MALLOC
      Src: /src/gpac/src/utils/alloc.c:543,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:545,1
    - Dst: store_backtrace
      Src: /src/gpac/src/utils/alloc.c:548,1
    - Dst: MALLOC
      Src: /src/gpac/src/utils/alloc.c:555,1
    - Dst: strlen
      Src: /src/gpac/src/utils/alloc.c:555,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/alloc.c:557,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 5
    argNames:
    - p
    - ptr
    - size
    - filename
    - line
    argTypes:
    - memory_element**
    - void*
    - unsigned int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 530
    functionDepth: 2
    functionLinenumber: 530
    functionLinenumberEnd: 561
    functionName: gf_memory_add_stack
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - store_backtrace
    - gf_memory_log
    - strcpy
    - MALLOC
    - strlen
    linkageType: ''
    returnType: void
    signature: void gf_memory_add_stack(memory_element **p, void *ptr, unsigned int
      size, const char *filename, int line)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - p
    - ptr
    argTypes:
    - memory_element*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 564
    functionDepth: 0
    functionLinenumber: 564
    functionLinenumberEnd: 576
    functionName: gf_memory_find_stack
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int gf_memory_find_stack(memory_element *p, void *ptr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FREE
      Src: /src/gpac/src/utils/alloc.c:590,1
    - Dst: FREE
      Src: /src/gpac/src/utils/alloc.c:593,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - p
    - ptr
    argTypes:
    - memory_element**
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 600
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 600
    functionName: gf_memory_del_item_stack
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - FREE
    linkageType: ''
    returnType: unsigned int
    signature: unsigned int gf_memory_del_item_stack(memory_element **p, void *ptr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CALLOC
      Src: /src/gpac/src/utils/alloc.c:606,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/alloc.c:607,1
    - Dst: gf_memory_hash
      Src: /src/gpac/src/utils/alloc.c:609,1
    - Dst: gf_memory_add_stack
      Src: /src/gpac/src/utils/alloc.c:610,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - p
    - ptr
    - size
    - filename
    - line
    argTypes:
    - memory_list*
    - void*
    - unsigned int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 611
      start: 603
    functionDepth: 3
    functionLinenumber: 603
    functionLinenumberEnd: 611
    functionName: gf_memory_add
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - CALLOC
    - gf_memory_hash
    - gf_memory_add_stack
    - gf_fatal_assert
    linkageType: ''
    returnType: void
    signature: void gf_memory_add(memory_list *p, void *ptr, unsigned int size, const
      char *filename, int line)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:617,1
    - Dst: gf_memory_hash
      Src: /src/gpac/src/utils/alloc.c:619,1
    - Dst: gf_memory_find_stack
      Src: /src/gpac/src/utils/alloc.c:620,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - p
    - ptr
    argTypes:
    - memory_list
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 621
      start: 614
    functionDepth: 1
    functionLinenumber: 614
    functionLinenumberEnd: 621
    functionName: gf_memory_find
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - gf_memory_find_stack
    - gf_assert
    - gf_memory_hash
    linkageType: ''
    returnType: int
    signature: int gf_memory_find(memory_list p, void *ptr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: CALLOC
      Src: /src/gpac/src/utils/alloc.c:628,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/alloc.c:629,1
    - Dst: gf_memory_hash
      Src: /src/gpac/src/utils/alloc.c:630,1
    - Dst: gf_memory_del_item_stack
      Src: /src/gpac/src/utils/alloc.c:634,1
    - Dst: FREE
      Src: /src/gpac/src/utils/alloc.c:644,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 2
    argNames:
    - p
    - ptr
    argTypes:
    - memory_list*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 649
      start: 623
    functionDepth: 1
    functionLinenumber: 623
    functionLinenumberEnd: 649
    functionName: gf_memory_del_item
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - FREE
    - gf_memory_del_item_stack
    - CALLOC
    - gf_fatal_assert
    - gf_memory_hash
    linkageType: ''
    returnType: unsigned int
    signature: unsigned int gf_memory_del_item(memory_list *p, void *ptr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:672,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:673,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/utils/alloc.c:675,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/alloc.c:683,1
    - Dst: gf_memory_add
      Src: /src/gpac/src/utils/alloc.c:685,1
    - Dst: gf_memory_del_item
      Src: /src/gpac/src/utils/alloc.c:686,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/alloc.c:695,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 4
    argNames:
    - ptr
    - size
    - filename
    - line
    argTypes:
    - void*
    - size_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 668
    functionDepth: 4
    functionLinenumber: 668
    functionLinenumberEnd: 696
    functionName: register_address
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 4
    functionsReached:
    - gf_mx_p
    - gf_assert
    - gf_mx_v
    - gf_memory_del_item
    - gf_mx_new
    - gf_memory_add
    linkageType: ''
    returnType: void
    signature: void register_address(void *ptr, size_t size, const char *filename,
      int line)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:702,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:706,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - log_level
    - element
    argTypes:
    - unsigned int
    - memory_element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 708
      start: 698
    functionDepth: 1
    functionLinenumber: 698
    functionLinenumberEnd: 708
    functionName: log_backtrace
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - gf_memory_log
    linkageType: ''
    returnType: void
    signature: void log_backtrace(unsigned int log_level, memory_element *element)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/alloc.c:720,1
    - Dst: gf_memory_find
      Src: /src/gpac/src/utils/alloc.c:722,1
    - Dst: gf_memory_hash
      Src: /src/gpac/src/utils/alloc.c:724,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:726,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:729,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:730,1
    - Dst: log_backtrace
      Src: /src/gpac/src/utils/alloc.c:732,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/alloc.c:735,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 737
      start: 712
    functionDepth: 2
    functionLinenumber: 712
    functionLinenumberEnd: 737
    functionName: gf_mem_check_address
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_assert
    - gf_memory_log
    - log_backtrace
    - gf_mx_v
    - gf_memory_find
    - gf_memory_hash
    linkageType: ''
    returnType: Bool
    signature: Bool gf_mem_check_address(void *ptr)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/alloc.c:746,1
    - Dst: gf_memory_find
      Src: /src/gpac/src/utils/alloc.c:757,1
    - Dst: gf_memory_find
      Src: /src/gpac/src/utils/alloc.c:759,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:760,1
    - Dst: gf_memory_hash
      Src: /src/gpac/src/utils/alloc.c:764,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:767,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:770,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:771,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:772,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:773,1
    - Dst: log_backtrace
      Src: /src/gpac/src/utils/alloc.c:774,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/alloc.c:775,1
    - Dst: gf_memory_del_item
      Src: /src/gpac/src/utils/alloc.c:778,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:788,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:789,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/utils/alloc.c:792,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:795,1
    - Dst: FREE
      Src: /src/gpac/src/utils/alloc.c:808,1
    - Dst: FREE
      Src: /src/gpac/src/utils/alloc.c:811,1
    - Dst: FREE
      Src: /src/gpac/src/utils/alloc.c:817,1
    - Dst: gf_memory_add
      Src: /src/gpac/src/utils/alloc.c:821,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/alloc.c:827,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 51
    argCount: 3
    argNames:
    - ptr
    - filename
    - line
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 741
    functionDepth: 4
    functionLinenumber: 741
    functionLinenumberEnd: 830
    functionName: unregister_address
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 2
    functionsReached:
    - FREE
    - gf_mx_p
    - gf_memory_log
    - gf_assert
    - log_backtrace
    - gf_fatal_assert
    - gf_memory_find
    - gf_memory_hash
    - gf_mx_v
    - gf_memory_del_item
    - gf_memory_add
    - gf_mx_del
    linkageType: ''
    returnType: int
    signature: int unregister_address(void *ptr, const char *filename, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/gpac/src/utils/alloc.c:836,1
    - Dst: vsnprintf
      Src: /src/gpac/src/utils/alloc.c:837,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/alloc.c:839,1
    - Dst: va_end
      Src: /src/gpac/src/utils/alloc.c:840,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - level
    - fmt
    argTypes:
    - unsigned int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 841
      start: 832
    functionDepth: 1
    functionLinenumber: 832
    functionLinenumberEnd: 841
    functionName: gf_memory_log
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 10
    functionsReached:
    - va_start
    - GF_LOG
    - vsnprintf
    - va_end
    linkageType: ''
    returnType: void
    signature: void gf_memory_log(unsigned int level, const char *fmt, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/alloc.c:846,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 844
    functionDepth: 1
    functionLinenumber: 844
    functionLinenumberEnd: 847
    functionName: print_memory_size
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void print_memory_size()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 853
      start: 849
    functionDepth: 0
    functionLinenumber: 849
    functionLinenumberEnd: 853
    functionName: gf_memory_size
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_memory_size()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:861,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:862,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:865,1
    - Dst: gf_file_handles_count
      Src: /src/gpac/src/utils/alloc.c:867,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:870,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/alloc.c:873,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/alloc.c:885,1
    - Dst: strchr
      Src: /src/gpac/src/utils/alloc.c:888,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:891,1
    - Dst: log_backtrace
      Src: /src/gpac/src/utils/alloc.c:892,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:893,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:894,1
    - Dst: print_memory_size
      Src: /src/gpac/src/utils/alloc.c:898,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/alloc.c:900,1
    - Dst: enum_open_handles
      Src: /src/gpac/src/utils/alloc.c:904,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:906,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 909
      start: 856
    functionDepth: 2
    functionLinenumber: 856
    functionLinenumberEnd: 909
    functionName: gf_memory_print
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 6
    functionsReached:
    - gf_mx_p
    - gf_assert
    - gf_memory_log
    - sprintf
    - log_backtrace
    - enum_open_handles
    - gf_mx_v
    - print_memory_size
    - gf_file_handles_count
    - strchr
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_memory_print()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/alloc.c:922,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/alloc.c:923,1
    - Dst: _vsnprintf
      Src: /src/gpac/src/utils/alloc.c:931,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/alloc.c:941,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/alloc.c:943,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 3
    argNames:
    - strp
    - fmt
    - ap
    argTypes:
    - char**
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 950
      start: 917
    functionDepth: 0
    functionLinenumber: 917
    functionLinenumberEnd: 950
    functionName: gf_vasprintf
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - strlen
    - _vsnprintf
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gf_vasprintf (char **strp, const char *fmt, va_list ap)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/gpac/src/utils/alloc.c:958,1
    - Dst: gf_vasprintf
      Src: /src/gpac/src/utils/alloc.c:960,1
    - Dst: asprintf
      Src: /src/gpac/src/utils/alloc.c:962,1
    - Dst: va_end
      Src: /src/gpac/src/utils/alloc.c:964,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - strp
    - fmt
    argTypes:
    - char**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 966
      start: 953
    functionDepth: 1
    functionLinenumber: 953
    functionLinenumberEnd: 966
    functionName: gf_asprintf
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - va_start
    - gf_vasprintf
    - va_end
    - asprintf
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_asprintf(char **strp, const char *fmt, ...)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 3
    argNames:
    - dst
    - src
    - dsize
    argTypes:
    - char*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1008
      start: 985
    functionDepth: 0
    functionLinenumber: 985
    functionLinenumberEnd: 1008
    functionName: gf_strlcpy
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_strlcpy(char * dst, const char * src, size_t dsize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionName: E32Dll
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GLDEF_C
    signature: GLDEF_C E32Dll(TDllReason /*aReason*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gettimeofday
      Src: /src/gpac/src/utils/symbian_os.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 73
    functionName: gf_sys_clock
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 68
    functionsReached:
    - gettimeofday
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_clock()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: User::AfterHighRes
      Src: /src/gpac/src/utils/symbian_os.cpp:82,1
    - Dst: User::After
      Src: /src/gpac/src/utils/symbian_os.cpp:84,1
    - Dst: CActiveScheduler::RunIfReady
      Src: /src/gpac/src/utils/symbian_os.cpp:89,1
    - Dst: RTimer::CreateLocal
      Src: /src/gpac/src/utils/symbian_os.cpp:93,1
    - Dst: RTimer::After
      Src: /src/gpac/src/utils/symbian_os.cpp:95,1
    - Dst: User::WaitForRequest
      Src: /src/gpac/src/utils/symbian_os.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - ms
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 98
    functionName: gf_sleep
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 48
    functionsReached:
    - RTimer::After
    - User::AfterHighRes
    - RTimer::CreateLocal
    - User::After
    - User::WaitForRequest
    - CActiveScheduler::RunIfReady
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sleep(u32 ms)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: remove
      Src: /src/gpac/src/utils/symbian_os.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - fileName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 104
    functionName: gf_delete_file
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 2
    functionsReached:
    - remove
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_delete_file(char *fileName)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: srand
      Src: /src/gpac/src/utils/symbian_os.cpp:111,1
    - Dst: srand
      Src: /src/gpac/src/utils/symbian_os.cpp:113,1
    - Dst: time
      Src: /src/gpac/src/utils/symbian_os.cpp:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - Reset
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 115
    functionName: gf_rand_init
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 6
    functionsReached:
    - srand
    - time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rand_init(Bool Reset)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rand
      Src: /src/gpac/src/utils/symbian_os.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 121
    functionName: gf_rand
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 13
    functionsReached:
    - rand
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rand()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tmpfile
      Src: /src/gpac/src/utils/symbian_os.cpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 129
    functionName: gf_temp_file_new
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 0
    functionsReached:
    - tmpfile
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_temp_file_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gettimeofday
      Src: /src/gpac/src/utils/symbian_os.cpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - sec
    - msec
    argTypes:
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 140
    functionName: gf_utc_time_since_1970
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 1
    functionsReached:
    - gettimeofday
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_utc_time_since_1970(u32 *sec, u32 *msec)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/utils/symbian_os.cpp:145,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/symbian_os.cpp:150,1
    - Dst: GetUserName
      Src: /src/gpac/src/utils/symbian_os.cpp:152,1
    - Dst: getenv
      Src: /src/gpac/src/utils/symbian_os.cpp:154,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/symbian_os.cpp:155,1
    - Dst: getpwuid
      Src: /src/gpac/src/utils/symbian_os.cpp:160,1
    - Dst: getuid
      Src: /src/gpac/src/utils/symbian_os.cpp:160,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/symbian_os.cpp:161,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/symbian_os.cpp:162,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - buf
    - buf_size
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 164
    functionName: gf_get_user_name
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 1
    functionsReached:
    - getuid
    - GetUserName
    - strcpy
    - getpwuid
    - getenv
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_get_user_name(char *buf, u32 buf_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/symbian_os.cpp:170,1
    - Dst: toupper
      Src: /src/gpac/src/utils/symbian_os.cpp:171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 174
    functionName: my_str_upr
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 0
    functionsReached:
    - toupper
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * my_str_upr(char *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/symbian_os.cpp:179,1
    - Dst: tolower
      Src: /src/gpac/src/utils/symbian_os.cpp:180,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 183
    functionName: my_str_lwr
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 0
    functionsReached:
    - tolower
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * my_str_lwr(char *str)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/utils/symbian_os.cpp:198,1
    - Dst: strlen
      Src: /src/gpac/src/utils/symbian_os.cpp:199,1
    - Dst: strcat
      Src: /src/gpac/src/utils/symbian_os.cpp:199,1
    - Dst: opendir
      Src: /src/gpac/src/utils/symbian_os.cpp:202,1
    - Dst: readdir
      Src: /src/gpac/src/utils/symbian_os.cpp:205,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/symbian_os.cpp:207,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/symbian_os.cpp:212,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/symbian_os.cpp:214,1
    - Dst: strlwr
      Src: /src/gpac/src/utils/symbian_os.cpp:215,1
    - Dst: strstr
      Src: /src/gpac/src/utils/symbian_os.cpp:216,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/symbian_os.cpp:219,1
    - Dst: strcat
      Src: /src/gpac/src/utils/symbian_os.cpp:220,1
    - Dst: stat
      Src: /src/gpac/src/utils/symbian_os.cpp:221,1
    - Dst: enum_dir_fct
      Src: /src/gpac/src/utils/symbian_os.cpp:226,1
    - Dst: readdir
      Src: /src/gpac/src/utils/symbian_os.cpp:231,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 47
    argCount: 5
    argNames:
    - dir
    - enum_directory
    - enum_dir_fct
    - cbck
    - filter
    argTypes:
    - char*
    - Bool
    - gf_enum_dir_item
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 234
    functionName: gf_enum_directory
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 16
    functionsReached:
    - strcat
    - strrchr
    - stat
    - enum_dir_fct
    - strcpy
    - strstr
    - strlwr
    - readdir
    - strcmp
    - opendir
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_enum_directory(const char *dir, Bool enum_directory, gf_enum_dir_item
      enum_dir_fct, void *cbck, const char *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ftell
      Src: /src/gpac/src/utils/symbian_os.cpp:240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - fp
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 241
    functionName: gf_ftell
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 22
    functionsReached:
    - ftell
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_ftell(FILE *fp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fseek
      Src: /src/gpac/src/utils/symbian_os.cpp:246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - fp
    - offset
    - whence
    argTypes:
    - FILE*
    - s64
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 247
    functionName: gf_fseek
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 38
    functionsReached:
    - fseek
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fseek(FILE *fp, s64 offset, s32 whence)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/gpac/src/utils/symbian_os.cpp:252,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - file_name
    - mode
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 253
    functionName: gf_fopen
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 136
    functionsReached:
    - fopen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_fopen(const char *file_name, const char *mode)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/symbian_os.cpp:281,1
    - Dst: memset
      Src: /src/gpac/src/utils/symbian_os.cpp:282,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/symbian_os.cpp:286,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/symbian_os.cpp:289,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/symbian_os.cpp:290,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 295
    functionName: gf_th_new
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 20
    functionsReached:
    - memset
    - gf_strdup
    - gf_malloc
    - sprintf
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_th_new(const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: CActiveScheduler::CActiveScheduler
      Src: /src/gpac/src/utils/symbian_os.cpp:305,1
    - Dst: gf_sema_notify
      Src: /src/gpac/src/utils/symbian_os.cpp:308,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/symbian_os.cpp:312,1
    - Dst: CActiveScheduler::Install
      Src: /src/gpac/src/utils/symbian_os.cpp:314,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/symbian_os.cpp:317,1
    - Dst: CTrapCleanup::New
      Src: /src/gpac/src/utils/symbian_os.cpp:319,1
    - Dst: gf_sema_notify
      Src: /src/gpac/src/utils/symbian_os.cpp:322,1
    - Dst: CActiveScheduler::Current
      Src: /src/gpac/src/utils/symbian_os.cpp:323,1
    - Dst: DEV_Start
      Src: /src/gpac/src/utils/symbian_os.cpp:327,1
    - Dst: gf_sema_notify
      Src: /src/gpac/src/utils/symbian_os.cpp:331,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/symbian_os.cpp:334,1
    - Dst: TRAP
      Src: /src/gpac/src/utils/symbian_os.cpp:336,1
    - Dst: GF_Thread*::Run
      Src: /src/gpac/src/utils/symbian_os.cpp:336,1
    - Dst: CActiveScheduler::Current
      Src: /src/gpac/src/utils/symbian_os.cpp:339,1
    - Dst: GF_Thread*::threadH::Close
      Src: /src/gpac/src/utils/symbian_os.cpp:348,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 32
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 297
    functionDepth: 2
    functionLinenumber: 297
    functionLinenumberEnd: 351
    functionName: RunThread
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 0
    functionsReached:
    - GF_Thread*::Run
    - GF_LOG
    - GF_Thread*::threadH::Close
    - gf_sema_notify
    - CActiveScheduler::CActiveScheduler
    - CActiveScheduler::Install
    - DEV_Start
    - TRAP
    - CActiveScheduler::Current
    - CTrapCleanup::New
    linkageType: ''
    returnType: void
    signature: void *RunThread(void *ptr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sema_new
      Src: /src/gpac/src/utils/symbian_os.cpp:364,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/symbian_os.cpp:366,1
    - Dst: TBuf::Format
      Src: /src/gpac/src/utils/symbian_os.cpp:371,1
    - Dst: _L
      Src: /src/gpac/src/utils/symbian_os.cpp:371,1
    - Dst: RThread::RThread
      Src: /src/gpac/src/utils/symbian_os.cpp:372,1
    - Dst: GF_Thread*::threadH::Create
      Src: /src/gpac/src/utils/symbian_os.cpp:373,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/symbian_os.cpp:374,1
    - Dst: GF_Thread*::threadH::Resume
      Src: /src/gpac/src/utils/symbian_os.cpp:378,1
    - Dst: gf_sema_wait
      Src: /src/gpac/src/utils/symbian_os.cpp:383,1
    - Dst: gf_sema_del
      Src: /src/gpac/src/utils/symbian_os.cpp:384,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - t
    - param
    argTypes:
    - GF_Thread*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 353
    functionDepth: 1
    functionLinenumber: 353
    functionLinenumberEnd: 387
    functionName: gf_th_run
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 19
    functionsReached:
    - RThread::RThread
    - gf_sema_wait
    - GF_LOG
    - TBuf::Format
    - GF_Thread*::threadH::Create
    - gf_sema_del
    - _L
    - gf_sema_new
    - GF_Thread*::threadH::Resume
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_th_run(GF_Thread *t, u32 (*Run)(void *param), void *param)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_status
      Src: /src/gpac/src/utils/symbian_os.cpp:393,1
    - Dst: GF_Thread*::threadH::Terminate
      Src: /src/gpac/src/utils/symbian_os.cpp:395,1
    - Dst: GF_Thread*::threadH::Suspend
      Src: /src/gpac/src/utils/symbian_os.cpp:399,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - t
    - Destroy
    argTypes:
    - GF_Thread*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 391
    functionDepth: 0
    functionLinenumber: 391
    functionLinenumberEnd: 403
    functionName: Thread_Stop
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 2
    functionsReached:
    - GF_Thread*::threadH::Suspend
    - GF_Thread*::threadH::Terminate
    - gf_th_status
    linkageType: ''
    returnType: void
    signature: void Thread_Stop(GF_Thread *t, Bool Destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Thread_Stop
      Src: /src/gpac/src/utils/symbian_os.cpp:408,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - GF_Thread*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 405
    functionDepth: 0
    functionLinenumber: 405
    functionLinenumberEnd: 409
    functionName: gf_th_stop
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 4
    functionsReached:
    - Thread_Stop
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_th_stop(GF_Thread *t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Thread_Stop
      Src: /src/gpac/src/utils/symbian_os.cpp:414,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/symbian_os.cpp:416,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/symbian_os.cpp:418,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - GF_Thread*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 419
    functionName: gf_th_del
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 16
    functionsReached:
    - gf_free
    - Thread_Stop
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_th_del(GF_Thread *t)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_Thread*::threadH::SetPriority
      Src: /src/gpac/src/utils/symbian_os.cpp:428,1
    - Dst: GF_Thread*::threadH::SetPriority
      Src: /src/gpac/src/utils/symbian_os.cpp:430,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - t
    - priority
    argTypes:
    - GF_Thread*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 422
    functionDepth: 0
    functionLinenumber: 422
    functionLinenumberEnd: 432
    functionName: gf_th_set_priority
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 1
    functionsReached:
    - GF_Thread*::threadH::SetPriority
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_th_set_priority(GF_Thread *t, s32 priority)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - GF_Thread*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 434
    functionDepth: 0
    functionLinenumber: 434
    functionLinenumberEnd: 439
    functionName: gf_th_status
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_th_status(GF_Thread *t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RThread
      Src: /src/gpac/src/utils/symbian_os.cpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 442
    functionDepth: 0
    functionLinenumber: 442
    functionLinenumberEnd: 446
    functionName: gf_th_id
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 48
    functionsReached:
    - RThread
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_th_id()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/symbian_os.cpp:468,1
    - Dst: memset
      Src: /src/gpac/src/utils/symbian_os.cpp:470,1
    - Dst: RMutex::RMutex
      Src: /src/gpac/src/utils/symbian_os.cpp:472,1
    - Dst: GF_Mutex*::hMutex::CreateLocal
      Src: /src/gpac/src/utils/symbian_os.cpp:473,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/symbian_os.cpp:474,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/symbian_os.cpp:479,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/symbian_os.cpp:482,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/symbian_os.cpp:483,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 465
    functionDepth: 0
    functionLinenumber: 465
    functionLinenumberEnd: 487
    functionName: gf_mx_new
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 27
    functionsReached:
    - gf_free
    - gf_strdup
    - RMutex::RMutex
    - sprintf
    - memset
    - GF_Mutex*::hMutex::CreateLocal
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_mx_new(const char *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_Mutex*::hMutex::Close
      Src: /src/gpac/src/utils/symbian_os.cpp:492,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/symbian_os.cpp:493,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - mx
    argTypes:
    - GF_Mutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 489
    functionDepth: 0
    functionLinenumber: 489
    functionLinenumberEnd: 494
    functionName: gf_mx_del
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 28
    functionsReached:
    - GF_Mutex*::hMutex::Close
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_del(GF_Mutex *mx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_id
      Src: /src/gpac/src/utils/symbian_os.cpp:501,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/symbian_os.cpp:505,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/symbian_os.cpp:509,1
    - Dst: GF_Mutex*::hMutex::Signal
      Src: /src/gpac/src/utils/symbian_os.cpp:516,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - mx
    argTypes:
    - GF_Mutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 496
    functionDepth: 1
    functionLinenumber: 496
    functionLinenumberEnd: 518
    functionName: gf_mx_v
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 141
    functionsReached:
    - GF_LOG
    - gf_th_id
    - GF_Mutex*::hMutex::Signal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_v(GF_Mutex *mx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_id
      Src: /src/gpac/src/utils/symbian_os.cpp:525,1
    - Dst: GF_Mutex*::hMutex::Wait
      Src: /src/gpac/src/utils/symbian_os.cpp:530,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - mx
    argTypes:
    - GF_Mutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 534
      start: 520
    functionDepth: 0
    functionLinenumber: 520
    functionLinenumberEnd: 534
    functionName: gf_mx_p
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 136
    functionsReached:
    - GF_Mutex*::hMutex::Wait
    - gf_th_id
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_p(GF_Mutex *mx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_id
      Src: /src/gpac/src/utils/symbian_os.cpp:541,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/symbian_os.cpp:547,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - mx
    argTypes:
    - GF_Mutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 536
    functionDepth: 0
    functionLinenumber: 536
    functionLinenumberEnd: 549
    functionName: gf_mx_try_lock
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 5
    functionsReached:
    - gf_mx_p
    - gf_th_id
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_mx_try_lock(GF_Mutex *mx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/symbian_os.cpp:566,1
    - Dst: RSemaphore::RSemaphore
      Src: /src/gpac/src/utils/symbian_os.cpp:569,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/symbian_os.cpp:571,1
    - Dst: TBuf::Format
      Src: /src/gpac/src/utils/symbian_os.cpp:575,1
    - Dst: _L
      Src: /src/gpac/src/utils/symbian_os.cpp:575,1
    - Dst: GF_Semaphore*::hSemaphore::CreateGlobal
      Src: /src/gpac/src/utils/symbian_os.cpp:576,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 563
    functionDepth: 0
    functionLinenumber: 563
    functionLinenumberEnd: 579
    functionName: GF_Semaphore *gf_sema_new(u32 MaxCount, u32 InitCount)
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_Semaphore*::hSemaphore::CreateGlobal
    - TBuf::Format
    - _L
    - gf_malloc
    - RSemaphore::RSemaphore
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_Semaphore *gf_sema_new(u32 MaxCount, u32 InitCount)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_Semaphore*::hSemaphore::Close
      Src: /src/gpac/src/utils/symbian_os.cpp:584,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/symbian_os.cpp:585,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - sm
    argTypes:
    - GF_Semaphore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 581
    functionDepth: 0
    functionLinenumber: 581
    functionLinenumberEnd: 586
    functionName: gf_sema_del
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 6
    functionsReached:
    - gf_free
    - GF_Semaphore*::hSemaphore::Close
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sema_del(GF_Semaphore *sm)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_Semaphore*::hSemaphore::Signal
      Src: /src/gpac/src/utils/symbian_os.cpp:592,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - sm
    - NbRelease
    argTypes:
    - GF_Semaphore*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 594
      start: 588
    functionDepth: 0
    functionLinenumber: 588
    functionLinenumberEnd: 594
    functionName: gf_sema_notify
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 5
    functionsReached:
    - GF_Semaphore*::hSemaphore::Signal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sema_notify(GF_Semaphore *sm, u32 NbRelease)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_Semaphore*::hSemaphore::Wait
      Src: /src/gpac/src/utils/symbian_os.cpp:599,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sm
    argTypes:
    - GF_Semaphore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 600
      start: 596
    functionDepth: 0
    functionLinenumber: 596
    functionLinenumberEnd: 600
    functionName: gf_sema_wait
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 3
    functionsReached:
    - GF_Semaphore*::hSemaphore::Wait
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sema_wait(GF_Semaphore *sm)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sm
    - TimeOut
    argTypes:
    - GF_Semaphore*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 602
    functionDepth: 0
    functionLinenumber: 602
    functionLinenumberEnd: 606
    functionName: gf_sema_wait_for
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sema_wait_for(GF_Semaphore *sm, u32 TimeOut)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/utils/symbian_os.cpp:619,1
    - Dst: getpid
      Src: /src/gpac/src/utils/symbian_os.cpp:620,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/symbian_os.cpp:621,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 615
    functionDepth: 0
    functionLinenumber: 615
    functionLinenumberEnd: 624
    functionName: gf_sys_init
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 19
    functionsReached:
    - memset
    - gf_sys_clock
    - getpid
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_init()
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 633
      start: 626
    functionDepth: 0
    functionLinenumber: 626
    functionLinenumberEnd: 633
    functionName: gf_sys_close
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 19
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_close()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/symbian_os.cpp:652,1
    - Dst: RThread::GetCpuTime
      Src: /src/gpac/src/utils/symbian_os.cpp:655,1
    - Dst: TTimeIntervalMicroSeconds::Int64
      Src: /src/gpac/src/utils/symbian_os.cpp:659,1
    - Dst: TInt64
      Src: /src/gpac/src/utils/symbian_os.cpp:661,1
    - Dst: TTimeIntervalMicroSeconds::Int64
      Src: /src/gpac/src/utils/symbian_os.cpp:661,1
    - Dst: RThread::Process
      Src: /src/gpac/src/utils/symbian_os.cpp:669,1
    - Dst: RProcess::GetMemoryInfo
      Src: /src/gpac/src/utils/symbian_os.cpp:673,1
    - Dst: RThread::GetCpuTime
      Src: /src/gpac/src/utils/symbian_os.cpp:678,1
    - Dst: TTimeIntervalMicroSeconds::Int64
      Src: /src/gpac/src/utils/symbian_os.cpp:682,1
    - Dst: TInt64
      Src: /src/gpac/src/utils/symbian_os.cpp:684,1
    - Dst: TTimeIntervalMicroSeconds::Int64
      Src: /src/gpac/src/utils/symbian_os.cpp:684,1
    - Dst: js_std_urlGet
      Src: /src/gpac/src/utils/symbian_os.cpp:691,1
    - Dst: js_std_urlGet
      Src: /src/gpac/src/utils/symbian_os.cpp:692,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 38
    argCount: 3
    argNames:
    - refresh_time_ms
    - rti
    - flags
    argTypes:
    - u32
    - GF_SystemRTInfo*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 699
      start: 640
    functionDepth: 1
    functionLinenumber: 640
    functionLinenumberEnd: 699
    functionName: gf_sys_get_rti
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 9
    functionsReached:
    - js_std_urlGet
    - RThread::Process
    - RProcess::GetMemoryInfo
    - RThread::GetCpuTime
    - TTimeIntervalMicroSeconds::Int64
    - gf_sys_clock
    - TInt64
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_get_rti(u32 refresh_time_ms, GF_SystemRTInfo *rti,
      u32 flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - onBattery
    - state
    - level
    argTypes:
    - Bool*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 705
      start: 701
    functionDepth: 0
    functionLinenumber: 701
    functionLinenumberEnd: 705
    functionName: gf_sys_get_battery_state
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_get_battery_state(Bool *onBattery, u32 *state, u32*level)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/symbian_os.cpp:711,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/symbian_os.cpp:712,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/symbian_os.cpp:713,1
    - Dst: ModuleInstance*::destroy_func
      Src: /src/gpac/src/utils/symbian_os.cpp:714,1
    - Dst: RLibrary*::Close
      Src: /src/gpac/src/utils/symbian_os.cpp:718,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/symbian_os.cpp:720,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/symbian_os.cpp:721,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - inst
    argTypes:
    - ModuleInstance*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 709
    functionDepth: 2
    functionLinenumber: 709
    functionLinenumberEnd: 722
    functionName: gf_modules_free_module
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - ModuleInstance*::destroy_func
    - gf_list_count
    - gf_list_del
    - RLibrary*::Close
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_modules_free_module(ModuleInstance *inst)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/utils/symbian_os.cpp:733,1
    - Dst: HBufC::NewL
      Src: /src/gpac/src/utils/symbian_os.cpp:735,1
    - Dst: User::StringLength
      Src: /src/gpac/src/utils/symbian_os.cpp:735,1
    - Dst: HBufC*::Des
      Src: /src/gpac/src/utils/symbian_os.cpp:736,1
    - Dst: TPtrC8
      Src: /src/gpac/src/utils/symbian_os.cpp:736,1
    - Dst: RLibrary::RLibrary
      Src: /src/gpac/src/utils/symbian_os.cpp:738,1
    - Dst: RLibrary*::Load
      Src: /src/gpac/src/utils/symbian_os.cpp:739,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/symbian_os.cpp:743,1
    - Dst: RLibrary*::Type
      Src: /src/gpac/src/utils/symbian_os.cpp:748,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/symbian_os.cpp:749,1
    - Dst: RLibrary*::Type
      Src: /src/gpac/src/utils/symbian_os.cpp:749,1
    - Dst: RLibrary*::Close
      Src: /src/gpac/src/utils/symbian_os.cpp:750,1
    - Dst: RLibrary*::Lookup
      Src: /src/gpac/src/utils/symbian_os.cpp:754,1
    - Dst: RLibrary*::Lookup
      Src: /src/gpac/src/utils/symbian_os.cpp:755,1
    - Dst: RLibrary*::Lookup
      Src: /src/gpac/src/utils/symbian_os.cpp:756,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/symbian_os.cpp:759,1
    - Dst: RLibrary*::Close
      Src: /src/gpac/src/utils/symbian_os.cpp:760,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/symbian_os.cpp:771,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 1
    argNames:
    - inst
    argTypes:
    - ModuleInstance*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 773
      start: 724
    functionDepth: 5
    functionLinenumber: 724
    functionLinenumberEnd: 773
    functionName: gf_modules_load_library
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 2
    functionsReached:
    - RLibrary*::Close
    - GF_LOG
    - TPtrC8
    - sprintf
    - RLibrary::RLibrary
    - RLibrary*::Load
    - RLibrary*::Type
    - HBufC*::Des
    - RLibrary*::Lookup
    - gf_cfg_set_key
    - HBufC::NewL
    - User::StringLength
    linkageType: ''
    returnType: Bool
    signature: Bool gf_modules_load_library(ModuleInstance *inst)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/symbian_os.cpp:777,1
    - Dst: RLibrary*::Close
      Src: /src/gpac/src/utils/symbian_os.cpp:780,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - inst
    argTypes:
    - ModuleInstance*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 788
      start: 775
    functionDepth: 1
    functionLinenumber: 775
    functionLinenumberEnd: 788
    functionName: gf_modules_unload_library
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 3
    functionsReached:
    - gf_list_count
    - RLibrary*::Close
    linkageType: ''
    returnType: void
    signature: void gf_modules_unload_library(ModuleInstance *inst)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/utils/symbian_os.cpp:797,1
    - Dst: gf_module_is_loaded
      Src: /src/gpac/src/utils/symbian_os.cpp:798,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/symbian_os.cpp:802,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/symbian_os.cpp:803,1
    - Dst: strcpy
      Src: /src/gpac/src/utils/symbian_os.cpp:805,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/symbian_os.cpp:806,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - cbck
    - item_name
    - item_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 808
      start: 791
    functionDepth: 3
    functionLinenumber: 791
    functionLinenumberEnd: 808
    functionName: enum_modules
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_module_is_loaded
    - GF_SAFEALLOC
    - strcpy
    - strncmp
    - gf_list_add
    linkageType: ''
    returnType: Bool
    signature: Bool enum_modules(void *cbck, char *item_name, char *item_path, GF_FileEnumInfo
      *file_info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_enum_directory
      Src: /src/gpac/src/utils/symbian_os.cpp:817,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/src/utils/symbian_os.cpp:821,1
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/src/utils/symbian_os.cpp:823,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/symbian_os.cpp:824,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/symbian_os.cpp:824,1
    - Dst: enum_modules
      Src: /src/gpac/src/utils/symbian_os.cpp:825,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/symbian_os.cpp:828,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - pm
    argTypes:
    - GF_ModuleManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 829
      start: 811
    functionDepth: 4
    functionLinenumber: 811
    functionLinenumberEnd: 829
    functionName: gf_modules_refresh
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 1
    functionsReached:
    - gf_enum_directory
    - gf_cfg_get_key_count
    - gf_cfg_get_key
    - gf_list_count
    - gf_cfg_get_key_name
    - stricmp
    - enum_modules
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_modules_refresh(GF_ModuleManager *pm)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - input
    - output
    argTypes:
    - u64
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 38
    functionName: sha256_endian_reverse64
    functionSourceFile: /src/gpac/src/utils/sha256.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void sha256_endian_reverse64(u64 input, u8 *output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - input
    argTypes:
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 48
    functionName: sha256_endian_read32
    functionSourceFile: /src/gpac/src/utils/sha256.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 sha256_endian_read32(u8 *input)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - input
    - output
    argTypes:
    - u32
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 55
    functionName: sha256_endian_reverse32
    functionSourceFile: /src/gpac/src/utils/sha256.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void sha256_endian_reverse32(u32 input, u8 *output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - input
    - by
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: sha256_ror
    functionSourceFile: /src/gpac/src/utils/sha256.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 sha256_ror(u32 input, u32 by)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: sha256_endian_reverse64
      Src: /src/gpac/src/utils/sha256.c:73,1
    - Dst: sha256_endian_read32
      Src: /src/gpac/src/utils/sha256.c:87,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/sha256.c:94,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/sha256.c:95,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/sha256.c:99,1
    - Dst: sha256_endian_read32
      Src: /src/gpac/src/utils/sha256.c:103,1
    - Dst: sha256_ror
      Src: /src/gpac/src/utils/sha256.c:108,1
    - Dst: sha256_ror
      Src: /src/gpac/src/utils/sha256.c:108,1
    - Dst: sha256_ror
      Src: /src/gpac/src/utils/sha256.c:110,1
    - Dst: sha256_ror
      Src: /src/gpac/src/utils/sha256.c:110,1
    - Dst: sha256_ror
      Src: /src/gpac/src/utils/sha256.c:118,1
    - Dst: sha256_ror
      Src: /src/gpac/src/utils/sha256.c:118,1
    - Dst: sha256_ror
      Src: /src/gpac/src/utils/sha256.c:119,1
    - Dst: sha256_ror
      Src: /src/gpac/src/utils/sha256.c:120,1
    - Dst: sha256_ror
      Src: /src/gpac/src/utils/sha256.c:120,1
    - Dst: sha256_ror
      Src: /src/gpac/src/utils/sha256.c:121,1
    - Dst: sha256_endian_reverse32
      Src: /src/gpac/src/utils/sha256.c:141,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 44
    argCount: 3
    argNames:
    - data
    - len
    - output
    argTypes:
    - void*
    - u64
    - u8[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 142
    functionName: gf_sha256_csum
    functionSourceFile: /src/gpac/src/utils/sha256.c
    functionUses: 3
    functionsReached:
    - sha256_endian_reverse64
    - memcpy
    - sha256_endian_read32
    - sha256_ror
    - sha256_endian_reverse32
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sha256_csum(const void *data, u64 len, u8 output[GF_SHA256_DIGEST_SIZE])
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 67
    argCount: 5
    argNames:
    - sourceStart
    - sourceEnd
    - targetStart
    - targetEnd
    - flags
    argTypes:
    - UTF16**
    - UTF16*
    - UTF8**
    - UTF8*
    - ConversionFlags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 239
    functionName: ConvertUTF16toUTF8
    functionSourceFile: /src/gpac/src/utils/utf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ConversionResult
    signature: "ConversionResult ConvertUTF16toUTF8 (\n    const UTF16** sourceStart,
      const UTF16* sourceEnd,\n    UTF8** targetStart, UTF8* targetEnd, ConversionFlags
      flags)"
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 41
    argCount: 2
    argNames:
    - source
    - length
    argTypes:
    - UTF8*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 289
    functionName: isLegalUTF8
    functionSourceFile: /src/gpac/src/utils/utf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Boolean
    signature: Boolean isLegalUTF8(const UTF8 *source, int length)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: isLegalUTF8
      Src: /src/gpac/src/utils/utf.c:307,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 70
    argCount: 5
    argNames:
    - sourceStart
    - sourceEnd
    - targetStart
    - targetEnd
    - flags
    argTypes:
    - UTF8**
    - UTF8*
    - UTF16**
    - UTF16*
    - ConversionFlags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 293
    functionDepth: 1
    functionLinenumber: 293
    functionLinenumberEnd: 376
    functionName: ConvertUTF8toUTF16
    functionSourceFile: /src/gpac/src/utils/utf.c
    functionUses: 0
    functionsReached:
    - isLegalUTF8
    linkageType: ''
    returnType: ConversionResult
    signature: "ConversionResult ConvertUTF8toUTF16 (\n    const UTF8** sourceStart,
      const UTF8* sourceEnd,\n    UTF16** targetStart, UTF16* targetEnd, ConversionFlags
      flags)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: isLegalUTF8
      Src: /src/gpac/src/utils/utf.c:396,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 42
    argCount: 2
    argNames:
    - data
    - length
    argTypes:
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 379
    functionDepth: 1
    functionLinenumber: 379
    functionLinenumberEnd: 436
    functionName: gf_utf8_is_legal
    functionSourceFile: /src/gpac/src/utils/utf.c
    functionUses: 7
    functionsReached:
    - isLegalUTF8
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_utf8_is_legal(const u8 *data, u32 length)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - unsigned short*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 438
    functionDepth: 0
    functionLinenumber: 438
    functionLinenumberEnd: 446
    functionName: gf_utf8_wcslen
    functionSourceFile: /src/gpac/src/utils/utf.c
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_utf8_wcslen (const unsigned short *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/src/utils/utf.c:455,1
    - Dst: ConvertUTF16toUTF8
      Src: /src/gpac/src/utils/utf.c:460,1
    - Dst: strlen
      Src: /src/gpac/src/utils/utf.c:465,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - dest
    - len
    - srcp
    argTypes:
    - char*
    - size_t
    - unsigned short**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 448
    functionDepth: 1
    functionLinenumber: 448
    functionLinenumberEnd: 467
    functionName: gf_utf8_wcstombs
    functionSourceFile: /src/gpac/src/utils/utf.c
    functionUses: 12
    functionsReached:
    - ConvertUTF16toUTF8
    - strlen
    - gf_utf8_wcslen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_utf8_wcstombs(char* dest, size_t len, const unsigned short**
      srcp)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/utf.c:476,1
    - Dst: ConvertUTF8toUTF16
      Src: /src/gpac/src/utils/utf.c:480,1
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/src/utils/utf.c:485,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - dest
    - len
    - srcp
    argTypes:
    - unsigned short*
    - size_t
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 469
    functionDepth: 2
    functionLinenumber: 469
    functionLinenumberEnd: 487
    functionName: gf_utf8_mbstowcs
    functionSourceFile: /src/gpac/src/utils/utf.c
    functionUses: 11
    functionsReached:
    - gf_utf8_wcslen
    - strlen
    - ConvertUTF8toUTF16
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_utf8_mbstowcs(unsigned short* dest, size_t len, const
      char** srcp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - unsigned short*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 492
    functionDepth: 0
    functionLinenumber: 492
    functionLinenumberEnd: 499
    functionName: gf_utf8_wcslen
    functionSourceFile: /src/gpac/src/utils/utf.c
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_utf8_wcslen (const unsigned short *s)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 53
    argCount: 3
    argNames:
    - dest
    - len
    - srcp
    argTypes:
    - char*
    - size_t
    - unsigned short**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 501
    functionDepth: 0
    functionLinenumber: 501
    functionLinenumberEnd: 567
    functionName: gf_utf8_wcstombs
    functionSourceFile: /src/gpac/src/utils/utf.c
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_utf8_wcstombs(char* dest, size_t len, const unsigned short**
      srcp)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 62
    argCount: 3
    argNames:
    - dest
    - len
    - srcp
    argTypes:
    - unsigned short*
    - size_t
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 648
      start: 582
    functionDepth: 0
    functionLinenumber: 582
    functionLinenumberEnd: 648
    functionName: gf_utf8_mbstowcs
    functionSourceFile: /src/gpac/src/utils/utf.c
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_utf8_mbstowcs(unsigned short* dest, size_t len, const
      char** srcp)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/utf.c:690,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/utf.c:693,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/utf.c:695,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/utils/utf.c:724,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/utf.c:725,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/utf.c:727,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 71
    argCount: 5
    argNames:
    - data
    - size
    - out_ptr
    - result
    - res_size
    argTypes:
    - u8*
    - u32
    - char**
    - char**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 734
      start: 654
    functionDepth: 2
    functionLinenumber: 654
    functionLinenumberEnd: 734
    functionName: gf_utf_get_string_from_bom
    functionSourceFile: /src/gpac/src/utils/utf.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_utf8_wcstombs
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_utf_get_string_from_bom(const u8 *data, u32 size, char
      **out_ptr, char **result, u32 *res_size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/utf.c:745,1
    - Dst: gf_calloc
      Src: /src/gpac/src/utils/utf.c:746,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/utils/utf.c:749,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/utf.c:750,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 739
    functionDepth: 3
    functionLinenumber: 739
    functionLinenumberEnd: 754
    functionName: gf_utf8_to_wcs
    functionSourceFile: /src/gpac/src/utils/utf.c
    functionUses: 9
    functionsReached:
    - gf_free
    - gf_calloc
    - gf_utf8_mbstowcs
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_utf8_to_wcs(const char* str)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: wcslen
      Src: /src/gpac/src/utils/utf.c:762,1
    - Dst: gf_calloc
      Src: /src/gpac/src/utils/utf.c:763,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/utils/utf.c:766,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/utf.c:767,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - str
    argTypes:
    - wchar_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 771
      start: 756
    functionDepth: 2
    functionLinenumber: 756
    functionLinenumberEnd: 771
    functionName: gf_wcs_to_utf8
    functionSourceFile: /src/gpac/src/utils/utf.c
    functionUses: 5
    functionsReached:
    - wcslen
    - gf_calloc
    - gf_utf8_wcstombs
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_wcs_to_utf8(const wchar_t* str)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_curl.c:51,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_curl.c:54,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_curl.c:57,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_curl.c:60,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_curl.c:63,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_curl.c:66,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_curl.c:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 5
    argNames:
    - handle
    - type
    - data
    - size
    - clientp
    argTypes:
    - CURL*
    - curl_infotype
    - char*
    - size_t
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 75
    functionName: curl_trace
    functionSourceFile: /src/gpac/src/utils/downloader_curl.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: int
    signature: int curl_trace(CURL *handle, curl_infotype type, char *data, size_t
      size, void *clientp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_curl.c:83,1
    - Dst: gf_dm_sess_notify_state
      Src: /src/gpac/src/utils/downloader_curl.c:84,1
    - Dst: gf_dm_configure_cache
      Src: /src/gpac/src/utils/downloader_curl.c:85,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_curl.c:86,1
    - Dst: curl_multi_remove_handle
      Src: /src/gpac/src/utils/downloader_curl.c:87,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_curl.c:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 5
    argNames:
    - clientp
    - conn_primary_ip
    - conn_local_ip
    - conn_primary_port
    - conn_local_port
    argTypes:
    - void*
    - char*
    - char*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 78
    functionDepth: 9
    functionLinenumber: 78
    functionLinenumberEnd: 92
    functionName: curl_on_connect
    functionSourceFile: /src/gpac/src/utils/downloader_curl.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - curl_multi_remove_handle
    - GF_LOG
    - gf_dm_configure_cache
    - gf_mx_v
    - gf_dm_sess_notify_state
    linkageType: ''
    returnType: int
    signature: int curl_on_connect(void *clientp, char *conn_primary_ip, char *conn_local_ip,
      int conn_primary_port, int conn_local_port)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - clientp
    - item
    argTypes:
    - void*
    - curl_socket_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 99
    functionName: curl_on_socket_close
    functionSourceFile: /src/gpac/src/utils/downloader_curl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int curl_on_socket_close(void *clientp, curl_socket_t item)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: memchr
      Src: /src/gpac/src/utils/downloader_curl.c:109,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader_curl.c:113,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_curl.c:115,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_curl.c:116,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/downloader_curl.c:117,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_curl.c:118,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/downloader_curl.c:120,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader_curl.c:124,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 4
    argNames:
    - buffer
    - size
    - nitems
    - clientp
    argTypes:
    - char*
    - size_t
    - size_t
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 101
    functionDepth: 2
    functionLinenumber: 101
    functionLinenumberEnd: 127
    functionName: curl_on_header
    functionSourceFile: /src/gpac/src/utils/downloader_curl.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - memcpy
    - strlen
    - gf_list_add
    - memchr
    - gf_sys_clock_high_res
    - gf_malloc
    linkageType: ''
    returnType: size_t
    signature: size_t curl_on_header(char *buffer, size_t size, size_t nitems, void
      *clientp)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/downloader_curl.c:135,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_curl.c:138,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader_curl.c:140,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:144,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 4
    argNames:
    - ptr
    - size
    - nmemb
    - clientp
    argTypes:
    - char*
    - size_t
    - size_t
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 129
    functionDepth: 2
    functionLinenumber: 129
    functionLinenumberEnd: 148
    functionName: curl_on_data
    functionSourceFile: /src/gpac/src/utils/downloader_curl.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_sys_clock_high_res
    - curl_easy_setopt
    - gf_realloc
    linkageType: ''
    returnType: size_t
    signature: size_t curl_on_data(char *ptr, size_t size, size_t nmemb, void *clientp)
  - BBCount: 47
    BranchProfiles: []
    Callsites:
    - Dst: curl_easy_init
      Src: /src/gpac/src/utils/downloader_curl.c:154,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:155,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:156,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader_curl.c:159,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/utils/downloader_curl.c:159,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:160,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:161,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:162,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:166,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:167,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:169,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:171,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:172,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:174,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:175,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:177,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:178,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:179,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:180,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:182,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:183,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:184,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader_curl.c:185,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:186,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:187,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/downloader_curl.c:191,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/downloader_curl.c:193,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:194,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:195,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_curl.c:196,1
    - Dst: CURL_AT_LEAST_VERSION
      Src: /src/gpac/src/utils/downloader_curl.c:198,1
    - Dst: curl_easy_getinfo
      Src: /src/gpac/src/utils/downloader_curl.c:201,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_curl.c:203,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/downloader_curl.c:205,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/downloader_curl.c:207,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:210,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_curl.c:211,1
    - Dst: curl_version_info
      Src: /src/gpac/src/utils/downloader_curl.c:221,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:227,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:230,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader_curl.c:233,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:234,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:238,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/downloader_curl.c:240,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:243,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:250,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:251,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_curl.c:253,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader_curl.c:256,1
    - Dst: curl_easy_option_next
      Src: /src/gpac/src/utils/downloader_curl.c:260,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/downloader_curl.c:264,1
    - Dst: curl_easy_option_next
      Src: /src/gpac/src/utils/downloader_curl.c:266,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/downloader_curl.c:272,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:273,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/downloader_curl.c:276,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:277,1
    - Dst: curl_easy_setopt
      Src: /src/gpac/src/utils/downloader_curl.c:280,1
    - Dst: curl_easy_option_next
      Src: /src/gpac/src/utils/downloader_curl.c:289,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_curl.c:293,1
    - Dst: curl_easy_strerror
      Src: /src/gpac/src/utils/downloader_curl.c:293,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 131
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 151
    functionDepth: 6
    functionLinenumber: 151
    functionLinenumberEnd: 305
    functionName: curl_setup_session
    functionSourceFile: /src/gpac/src/utils/downloader_curl.c
    functionUses: 1
    functionsReached:
    - gf_free
    - curl_easy_init
    - gf_strdup
    - curl_easy_getinfo
    - CURL_AT_LEAST_VERSION
    - sscanf
    - gf_file_exists
    - gf_log_tool_level_on
    - GF_LOG
    - curl_version_info
    - curl_easy_strerror
    - curl_easy_setopt
    - gf_opts_get_key
    - curl_easy_option_next
    - gf_opts_get_bool
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err curl_setup_session(GF_DownloadSession* sess)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_curl.c:310,1
    - Dst: curl_multi_add_handle
      Src: /src/gpac/src/utils/downloader_curl.c:312,1
    - Dst: curl_multi_perform
      Src: /src/gpac/src/utils/downloader_curl.c:316,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_curl.c:317,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_curl.c:319,1
    - Dst: curl_multi_strerror
      Src: /src/gpac/src/utils/downloader_curl.c:319,1
    - Dst: curl_multi_info_read
      Src: /src/gpac/src/utils/downloader_curl.c:330,1
    - Dst: curl_easy_getinfo
      Src: /src/gpac/src/utils/downloader_curl.c:334,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_curl.c:336,1
    - Dst: curl_easy_strerror
      Src: /src/gpac/src/utils/downloader_curl.c:336,1
    - Dst: curl_multi_remove_handle
      Src: /src/gpac/src/utils/downloader_curl.c:340,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 55
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 308
    functionDepth: 1
    functionLinenumber: 308
    functionLinenumberEnd: 374
    functionName: curl_flush
    functionSourceFile: /src/gpac/src/utils/downloader_curl.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - curl_easy_getinfo
    - curl_multi_perform
    - curl_multi_remove_handle
    - curl_multi_strerror
    - curl_multi_info_read
    - GF_LOG
    - curl_easy_strerror
    - gf_mx_v
    - curl_multi_add_handle
    linkageType: ''
    returnType: void
    signature: void curl_flush(GF_DownloadSession *sess)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_curl.c:378,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader_curl.c:380,1
    - Dst: curl_multi_remove_handle
      Src: /src/gpac/src/utils/downloader_curl.c:381,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader_curl.c:382,1
    - Dst: curl_easy_cleanup
      Src: /src/gpac/src/utils/downloader_curl.c:384,1
    - Dst: curl_slist_free_all
      Src: /src/gpac/src/utils/downloader_curl.c:387,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 376
    functionDepth: 1
    functionLinenumber: 376
    functionLinenumberEnd: 390
    functionName: curl_destroy
    functionSourceFile: /src/gpac/src/utils/downloader_curl.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - curl_multi_remove_handle
    - curl_easy_cleanup
    - GF_LOG
    - curl_slist_free_all
    - gf_mx_v
    linkageType: ''
    returnType: void
    signature: void curl_destroy(GF_DownloadSession *sess)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: curl_version_info
      Src: /src/gpac/src/utils/downloader_curl.c:394,1
    - Dst: strstr
      Src: /src/gpac/src/utils/downloader_curl.c:395,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/downloader_curl.c:399,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - url
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 392
    functionDepth: 0
    functionLinenumber: 392
    functionLinenumberEnd: 404
    functionName: curl_can_handle_url
    functionSourceFile: /src/gpac/src/utils/downloader_curl.c
    functionUses: 1
    functionsReached:
    - curl_version_info
    - strnicmp
    - strstr
    linkageType: ''
    returnType: Bool
    signature: Bool curl_can_handle_url(const char *url)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: curl_flush
      Src: /src/gpac/src/utils/downloader_curl.c:411,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_curl.c:424,1
    - Dst: curl_easy_getinfo
      Src: /src/gpac/src/utils/downloader_curl.c:431,1
    - Dst: MIN
      Src: /src/gpac/src/utils/downloader_curl.c:435,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_curl.c:436,1
    - Dst: memmove
      Src: /src/gpac/src/utils/downloader_curl.c:438,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 4
    argNames:
    - sess
    - data
    - data_size
    - out_read
    argTypes:
    - GF_DownloadSession*
    - char*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 406
    functionDepth: 2
    functionLinenumber: 406
    functionLinenumberEnd: 441
    functionName: curl_read_data
    functionSourceFile: /src/gpac/src/utils/downloader_curl.c
    functionUses: 1
    functionsReached:
    - curl_easy_getinfo
    - SET_LAST_ERR
    - memmove
    - memcpy
    - MIN
    - curl_flush
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err curl_read_data(GF_DownloadSession *sess, char *data, u32 data_size,
      u32 *out_read)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: curl_flush
      Src: /src/gpac/src/utils/downloader_curl.c:445,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_curl.c:450,1
    - Dst: gf_dm_sess_notify_state
      Src: /src/gpac/src/utils/downloader_curl.c:451,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 443
    functionDepth: 2
    functionLinenumber: 443
    functionLinenumberEnd: 453
    functionName: curl_connect
    functionSourceFile: /src/gpac/src/utils/downloader_curl.c
    functionUses: 1
    functionsReached:
    - SET_LAST_ERR
    - gf_dm_sess_notify_state
    - curl_flush
    linkageType: ''
    returnType: void
    signature: void curl_connect(GF_DownloadSession*sess)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: curl_flush
      Src: /src/gpac/src/utils/downloader_curl.c:458,1
    - Dst: gf_dm_disconnect
      Src: /src/gpac/src/utils/downloader_curl.c:462,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_curl.c:465,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_curl.c:468,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_curl.c:469,1
    - Dst: curl_easy_getinfo
      Src: /src/gpac/src/utils/downloader_curl.c:483,1
    - Dst: curl_easy_getinfo
      Src: /src/gpac/src/utils/downloader_curl.c:488,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/utils/downloader_curl.c:490,1
    - Dst: curl_easy_getinfo
      Src: /src/gpac/src/utils/downloader_curl.c:493,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_curl.c:500,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader_curl.c:503,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/utils/downloader_curl.c:504,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 49
    argCount: 2
    argNames:
    - sess
    - ContentLength
    argTypes:
    - GF_DownloadSession*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 455
    functionDepth: 3
    functionLinenumber: 455
    functionLinenumberEnd: 506
    functionName: curl_process_reply
    functionSourceFile: /src/gpac/src/utils/downloader_curl.c
    functionUses: 0
    functionsReached:
    - curl_easy_getinfo
    - SET_LAST_ERR
    - GF_LOG
    - gf_log_tool_level_on
    - gf_dm_disconnect
    - gf_net_get_utc
    - gf_sys_clock_high_res
    - curl_flush
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err curl_process_reply(GF_DownloadSession *sess, u32 *ContentLength)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert_true
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:7,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:7,1
    - Dst: assert_true
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:10,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:10,1
    - Dst: assert_true
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:13,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:13,1
    - Dst: assert_false
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:16,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:16,1
    - Dst: assert_false
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:19,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:19,1
    - Dst: assert_true
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:22,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:22,1
    - Dst: assert_false
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:25,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:25,1
    - Dst: assert_false
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:28,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:28,1
    - Dst: assert_true
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:31,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:31,1
    - Dst: assert_true
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:34,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:34,1
    - Dst: assert_false
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:35,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:35,1
    - Dst: assert_false
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:36,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:36,1
    - Dst: assert_true
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:39,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:39,1
    - Dst: assert_false
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:40,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:40,1
    - Dst: assert_false
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:41,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:41,1
    - Dst: assert_true
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:45,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:45,1
    - Dst: assert_false
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:46,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:46,1
    - Dst: assert_false
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:47,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:47,1
    - Dst: assert_false
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:51,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:51,1
    - Dst: assert_false
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:52,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:52,1
    - Dst: assert_true
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:53,1
    - Dst: gf_sys_word_match
      Src: /src/gpac/src/utils/unittests/ut_os_config_init.c:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 4
    functionDepth: 2
    functionLinenumber: 4
    functionLinenumberEnd: 58
    functionName: unittest
    functionSourceFile: /src/gpac/src/utils/unittests/ut_os_config_init.c
    functionUses: 0
    functionsReached:
    - gf_sys_word_match
    - assert_false
    - assert_true
    linkageType: ''
    returnType: void
    signature: void unittest(gf_sys_word_match)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xml_translate_xml_string
      Src: /src/gpac/src/utils/unittests/ut_xml_parser.c:6,1
    - Dst: assert_equal_str
      Src: /src/gpac/src/utils/unittests/ut_xml_parser.c:7,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/unittests/ut_xml_parser.c:8,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9
      start: 4
    functionDepth: 2
    functionLinenumber: 4
    functionLinenumberEnd: 9
    functionName: unittest
    functionSourceFile: /src/gpac/src/utils/unittests/ut_xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_free
    - assert_equal_str
    - xml_translate_xml_string
    linkageType: ''
    returnType: void
    signature: void unittest(xml_translate_xml_string)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_filename
      Src: /src/gpac/src/scene_manager/loader_isom.c:43,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_isom.c:48,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_isom.c:51,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/loader_isom.c:75,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_isom.c:76,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/scene_manager/loader_isom.c:77,1
    - Dst: gf_isom_get_track_duration
      Src: /src/gpac/src/scene_manager/loader_isom.c:78,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/scene_manager/loader_isom.c:79,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/loader_isom.c:89,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_isom.c:90,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_isom.c:91,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_isom.c:92,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_isom.c:93,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_isom.c:102,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/loader_isom.c:122,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_isom.c:123,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/scene_manager/loader_isom.c:124,1
    - Dst: gf_isom_get_track_duration
      Src: /src/gpac/src/scene_manager/loader_isom.c:125,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/scene_manager/loader_isom.c:126,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/loader_isom.c:136,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_isom.c:137,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_isom.c:138,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_isom.c:139,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_isom.c:140,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 79
    argCount: 2
    argNames:
    - mp4
    - com
    argTypes:
    - GF_ISOFile*
    - GF_ODCom*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 37
    functionDepth: 6
    functionLinenumber: 37
    functionLinenumberEnd: 145
    functionName: UpdateODCommand
    functionSourceFile: /src/gpac/src/scene_manager/loader_isom.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_isom_get_track_duration
    - gf_isom_get_timescale
    - sprintf
    - gf_odf_desc_new
    - gf_list_add
    - gf_isom_get_track_by_id
    - gf_list_enum
    - gf_isom_get_filename
    linkageType: ''
    returnType: void
    signature: void UpdateODCommand(GF_ISOFile *mp4, GF_ODCom *com)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/scene_manager/loader_isom.c:150,1
    - Dst: va_start
      Src: /src/gpac/src/scene_manager/loader_isom.c:153,1
    - Dst: vsnprintf
      Src: /src/gpac/src/scene_manager/loader_isom.c:154,1
    - Dst: va_end
      Src: /src/gpac/src/scene_manager/loader_isom.c:155,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_isom.c:156,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - load
    - e
    - format
    argTypes:
    - GF_SceneLoader*
    - GF_Err
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 147
    functionDepth: 2
    functionLinenumber: 147
    functionLinenumberEnd: 159
    functionName: mp4_report
    functionSourceFile: /src/gpac/src/scene_manager/loader_isom.c
    functionUses: 0
    functionsReached:
    - va_end
    - gf_log_tool_level_on
    - GF_LOG
    - va_start
    - vsnprintf
    linkageType: ''
    returnType: void
    signature: void mp4_report(GF_SceneLoader *load, GF_Err e, char *format, ...)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: gf_bifs_decoder_new
      Src: /src/gpac/src/scene_manager/loader_isom.c:181,1
    - Dst: gf_odf_codec_new
      Src: /src/gpac/src/scene_manager/loader_isom.c:183,1
    - Dst: gf_laser_decoder_new
      Src: /src/gpac/src/scene_manager/loader_isom.c:186,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/scene_manager/loader_isom.c:191,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/scene_manager/loader_isom.c:192,1
    - Dst: gf_isom_get_mpeg4_subtype
      Src: /src/gpac/src/scene_manager/loader_isom.c:193,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/scene_manager/loader_isom.c:197,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/scene_manager/loader_isom.c:201,1
    - Dst: gf_isom_text_set_streaming_mode
      Src: /src/gpac/src/scene_manager/loader_isom.c:207,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/scene_manager/loader_isom.c:209,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/scene_manager/loader_isom.c:210,1
    - Dst: gf_isom_get_mpeg4_subtype
      Src: /src/gpac/src/scene_manager/loader_isom.c:211,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/scene_manager/loader_isom.c:221,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_isom.c:224,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/scene_manager/loader_isom.c:232,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_isom.c:233,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_isom.c:237,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/scene_manager/loader_isom.c:241,1
    - Dst: mp4_report
      Src: /src/gpac/src/scene_manager/loader_isom.c:249,1
    - Dst: gf_bifs_decoder_configure_stream
      Src: /src/gpac/src/scene_manager/loader_isom.c:252,1
    - Dst: gf_bifs_decoder_configure_stream
      Src: /src/gpac/src/scene_manager/loader_isom.c:254,1
    - Dst: mp4_report
      Src: /src/gpac/src/scene_manager/loader_isom.c:265,1
    - Dst: gf_laser_decoder_configure_stream
      Src: /src/gpac/src/scene_manager/loader_isom.c:270,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/scene_manager/loader_isom.c:280,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/scene_manager/loader_isom.c:282,1
    - Dst: mp4_report
      Src: /src/gpac/src/scene_manager/loader_isom.c:284,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/scene_manager/loader_isom.c:284,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/scene_manager/loader_isom.c:284,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/src/scene_manager/loader_isom.c:288,1
    - Dst: gf_isom_get_edit
      Src: /src/gpac/src/scene_manager/loader_isom.c:291,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/scene_manager/loader_isom.c:293,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/loader_isom.c:298,1
    - Dst: gf_bifs_decode_command_list
      Src: /src/gpac/src/scene_manager/loader_isom.c:303,1
    - Dst: gf_laser_decode_command_list
      Src: /src/gpac/src/scene_manager/loader_isom.c:307,1
    - Dst: gf_odf_codec_set_au
      Src: /src/gpac/src/scene_manager/loader_isom.c:310,1
    - Dst: gf_odf_codec_decode
      Src: /src/gpac/src/scene_manager/loader_isom.c:311,1
    - Dst: gf_odf_codec_get_com
      Src: /src/gpac/src/scene_manager/loader_isom.c:314,1
    - Dst: UpdateODCommand
      Src: /src/gpac/src/scene_manager/loader_isom.c:317,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_isom.c:318,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/scene_manager/loader_isom.c:322,1
    - Dst: mp4_report
      Src: /src/gpac/src/scene_manager/loader_isom.c:324,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/scene_manager/loader_isom.c:324,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/scene_manager/loader_isom.c:324,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/scene_manager/loader_isom.c:329,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_isom.c:331,1
    - Dst: gf_isom_text_set_streaming_mode
      Src: /src/gpac/src/scene_manager/loader_isom.c:334,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/scene_manager/loader_isom.c:340,1
    - Dst: gf_laser_decoder_del
      Src: /src/gpac/src/scene_manager/loader_isom.c:342,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_isom.c:344,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/loader_isom.c:345,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 135
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 161
    functionDepth: 8
    functionLinenumber: 161
    functionLinenumberEnd: 347
    functionName: gf_sm_load_run_isom
    functionSourceFile: /src/gpac/src/scene_manager/loader_isom.c
    functionUses: 0
    functionsReached:
    - gf_set_progress
    - gf_odf_desc_del
    - gf_isom_get_timescale
    - gf_isom_text_set_streaming_mode
    - gf_isom_get_sample_count
    - gf_laser_decoder_new
    - gf_isom_get_track_id
    - gf_odf_codec_set_au
    - gf_bifs_decoder_new
    - gf_bifs_decoder_configure_stream
    - gf_isom_sample_del
    - gf_isom_get_track_count
    - gf_list_add
    - gf_isom_get_media_type
    - gf_odf_codec_del
    - gf_isom_get_sample
    - gf_laser_decoder_configure_stream
    - gf_isom_last_error
    - gf_laser_decode_command_list
    - gf_odf_codec_decode
    - gf_isom_get_esd
    - UpdateODCommand
    - mp4_report
    - gf_isom_get_edits_count
    - gf_sm_stream_au_new
    - gf_fclose
    - gf_odf_codec_get_com
    - gf_laser_decoder_del
    - gf_odf_codec_new
    - gf_isom_get_media_timescale
    - gf_isom_get_edit
    - gf_isom_get_mpeg4_subtype
    - gf_sm_stream_new
    - gf_bifs_decode_command_list
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_load_run_isom(GF_SceneLoader *load)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 349
    functionDepth: 0
    functionLinenumber: 349
    functionLinenumberEnd: 352
    functionName: gf_sm_load_done_isom
    functionSourceFile: /src/gpac/src/scene_manager/loader_isom.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_sm_load_done_isom(GF_SceneLoader *load)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - loader
    - suspend
    argTypes:
    - GF_SceneLoader*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 354
    functionDepth: 0
    functionLinenumber: 354
    functionLinenumberEnd: 357
    functionName: gf_sm_isom_suspend
    functionSourceFile: /src/gpac/src/scene_manager/loader_isom.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_isom_suspend(GF_SceneLoader *loader, Bool suspend)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_root_od
      Src: /src/gpac/src/scene_manager/loader_isom.c:369,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/scene_manager/loader_isom.c:371,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_isom.c:382,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/scene_manager/loader_isom.c:391,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/scene_manager/loader_isom.c:392,1
    - Dst: gf_isom_is_track_in_root_od
      Src: /src/gpac/src/scene_manager/loader_isom.c:394,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/scene_manager/loader_isom.c:395,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_isom.c:398,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/scene_manager/loader_isom.c:405,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/scene_manager/loader_isom.c:406,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_isom.c:407,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_isom.c:417,1
    - Dst: gf_odf_get_bifs_config
      Src: /src/gpac/src/scene_manager/loader_isom.c:422,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_isom.c:428,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_isom.c:436,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/scene_manager/loader_isom.c:440,1
    - Dst: mp4_report
      Src: /src/gpac/src/scene_manager/loader_isom.c:441,1
    - Dst: gf_sm_isom_suspend
      Src: /src/gpac/src/scene_manager/loader_isom.c:442,1
    - Dst: gf_sm_isom_suspend
      Src: /src/gpac/src/scene_manager/loader_isom.c:443,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 72
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 451
      start: 359
    functionDepth: 7
    functionLinenumber: 359
    functionLinenumberEnd: 451
    functionName: gf_sm_load_init_isom
    functionSourceFile: /src/gpac/src/scene_manager/loader_isom.c
    functionUses: 0
    functionsReached:
    - gf_sys_is_cov_mode
    - gf_isom_last_error
    - gf_odf_desc_del
    - GF_LOG
    - gf_isom_get_esd
    - gf_isom_get_track_count
    - gf_sm_isom_suspend
    - mp4_report
    - gf_isom_get_root_od
    - gf_isom_is_track_in_root_od
    - gf_isom_get_track_by_id
    - gf_isom_get_media_type
    - gf_odf_get_bifs_config
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_load_init_isom(GF_SceneLoader *load)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:49,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:50,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:51,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:53,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:54,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:55,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:56,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:62,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:64,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:66,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 2
    argNames:
    - read
    - n
    argTypes:
    - SWFReader*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 44
    functionDepth: 2
    functionLinenumber: 44
    functionLinenumberEnd: 69
    functionName: s2b_insert_symbol
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_sg_find_node_by_name
    - gf_sg_command_field_new
    - gf_list_add
    - gf_node_register
    - gf_node_list_add_child
    - gf_sg_command_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err s2b_insert_symbol(SWFReader *read, GF_Node *n)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:75,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:76,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:78,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:79,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:81,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:82,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - read
    - ID
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 85
    functionName: s2b_get_node
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_sg_find_node_by_name
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *s2b_get_node(SWFReader *read, u32 ID)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:89,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scene_manager/swf_bifs.c:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - read
    - tag
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 87
    functionDepth: 9
    functionLinenumber: 87
    functionLinenumberEnd: 92
    functionName: s2b_new_node
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_node_init
    - gf_node_new
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *s2b_new_node(SWFReader *read, u32 tag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - read
    - mat
    argTypes:
    - SWFReader*
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 95
    functionDepth: 10
    functionLinenumber: 95
    functionLinenumberEnd: 105
    functionName: s2b_get_matrix
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - s2b_new_node
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *s2b_get_matrix(SWFReader *read, GF_Matrix2D *mat)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 22
    argCount: 2
    argNames:
    - read
    - cmat
    argTypes:
    - SWFReader*
    - GF_ColorMatrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 107
    functionDepth: 10
    functionLinenumber: 107
    functionLinenumberEnd: 131
    functionName: s2b_get_color_matrix
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - s2b_new_node
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *s2b_get_color_matrix(SWFReader *read, GF_ColorMatrix *cmat)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/swf_bifs.c:137,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/swf_bifs.c:138,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/swf_bifs.c:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ARGB
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 141
    functionName: s2b_get_color
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    linkageType: ''
    returnType: SFColor
    signature: SFColor s2b_get_color(u32 ARGB)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/swf_bifs.c:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ARGB
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 146
    functionName: s2b_get_alpha
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    linkageType: ''
    returnType: Fixed
    signature: Fixed s2b_get_alpha(u32 ARGB)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:150,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:152,1
    - Dst: s2b_insert_symbol
      Src: /src/gpac/src/scene_manager/swf_bifs.c:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - read
    - app
    argTypes:
    - SWFReader*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 148
    functionDepth: 10
    functionLinenumber: 148
    functionLinenumberEnd: 155
    functionName: s2b_insert_appearance
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - s2b_new_node
    - gf_node_register
    - s2b_insert_symbol
    linkageType: ''
    returnType: void
    signature: void s2b_insert_appearance(SWFReader *read, GF_Node *app)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - c1
    - c2
    argTypes:
    - SFColor
    - SFColor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 163
    functionName: s2b_same_color
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool s2b_same_color(SFColor c1, SFColor c2)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: s2b_get_color
      Src: /src/gpac/src/scene_manager/swf_bifs.c:172,1
    - Dst: s2b_get_alpha
      Src: /src/gpac/src/scene_manager/swf_bifs.c:173,1
    - Dst: s2b_get_color
      Src: /src/gpac/src/scene_manager/swf_bifs.c:175,1
    - Dst: s2b_get_alpha
      Src: /src/gpac/src/scene_manager/swf_bifs.c:176,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/swf_bifs.c:180,1
    - Dst: s2b_same_color
      Src: /src/gpac/src/scene_manager/swf_bifs.c:186,1
    - Dst: s2b_same_color
      Src: /src/gpac/src/scene_manager/swf_bifs.c:193,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:196,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:200,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:201,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:202,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:212,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:218,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:220,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:224,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:228,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:232,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_bifs.c:232,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:236,1
    - Dst: s2b_insert_appearance
      Src: /src/gpac/src/scene_manager/swf_bifs.c:237,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:238,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 69
    argCount: 5
    argNames:
    - read
    - parent
    - fill_col
    - line_width
    - l_col
    argTypes:
    - SWFReader*
    - GF_Node*
    - u32
    - Fixed
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 165
    functionDepth: 11
    functionLinenumber: 165
    functionLinenumberEnd: 241
    functionName: s2b_get_appearance
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - s2b_new_node
    - s2b_get_alpha
    - gf_node_set_id
    - sprintf
    - gf_list_count
    - gf_list_add
    - s2b_same_color
    - gf_node_register
    - s2b_get_color
    - gf_list_enum
    - s2b_insert_appearance
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *s2b_get_appearance(SWFReader *read, GF_Node *parent, u32 fill_col,
      Fixed line_width, u32 l_col)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - shape
    - srec
    argTypes:
    - SWFShape*
    - SWFShapeRec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 263
    functionName: s2b_get_center_bounds
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Rect
    signature: GF_Rect s2b_get_center_bounds(SWFShape *shape, SWFShapeRec *srec)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:274,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:275,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:276,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:277,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:281,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:282,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:285,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:286,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/swf_bifs.c:289,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:293,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:294,1
    - Dst: s2b_get_color
      Src: /src/gpac/src/scene_manager/swf_bifs.c:298,1
    - Dst: s2b_get_alpha
      Src: /src/gpac/src/scene_manager/swf_bifs.c:299,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:303,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:304,1
    - Dst: s2b_get_alpha
      Src: /src/gpac/src/scene_manager/swf_bifs.c:307,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:311,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:313,1
    - Dst: s2b_get_center_bounds
      Src: /src/gpac/src/scene_manager/swf_bifs.c:316,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scene_manager/swf_bifs.c:318,1
    - Dst: gf_invfix
      Src: /src/gpac/src/scene_manager/swf_bifs.c:319,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scene_manager/swf_bifs.c:320,1
    - Dst: gf_invfix
      Src: /src/gpac/src/scene_manager/swf_bifs.c:321,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scene_manager/swf_bifs.c:322,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/scene_manager/swf_bifs.c:324,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:328,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:332,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_bifs.c:333,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:335,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_bifs.c:336,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:338,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_bifs.c:339,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scene_manager/swf_bifs.c:343,1
    - Dst: gf_invfix
      Src: /src/gpac/src/scene_manager/swf_bifs.c:344,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scene_manager/swf_bifs.c:345,1
    - Dst: gf_invfix
      Src: /src/gpac/src/scene_manager/swf_bifs.c:346,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scene_manager/swf_bifs.c:347,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/scene_manager/swf_bifs.c:349,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:351,1
    - Dst: s2b_get_matrix
      Src: /src/gpac/src/scene_manager/swf_bifs.c:352,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:353,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 64
    argCount: 4
    argNames:
    - read
    - parent
    - shape
    - srec
    argTypes:
    - SWFReader*
    - GF_Node*
    - SWFShape*
    - SWFShapeRec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 265
    functionDepth: 11
    functionLinenumber: 265
    functionLinenumberEnd: 355
    functionName: s2b_get_gradient
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - s2b_new_node
    - FLT2FIX
    - INT2FIX
    - s2b_get_alpha
    - s2b_get_center_bounds
    - gf_node_get_field_by_name
    - gf_divfix
    - gf_mx2d_init
    - gf_mx2d_pre_multiply
    - s2b_get_matrix
    - gf_invfix
    - s2b_get_color
    - gf_node_register
    - gf_sg_vrml_mf_alloc
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *s2b_get_gradient(SWFReader *read, GF_Node *parent, SWFShape
      *shape, SWFShapeRec *srec)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:365,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:366,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:368,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:369,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:370,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:371,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:375,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scene_manager/swf_bifs.c:377,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/scene_manager/swf_bifs.c:378,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:382,1
    - Dst: s2b_get_matrix
      Src: /src/gpac/src/scene_manager/swf_bifs.c:383,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:384,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 4
    argNames:
    - read
    - parent
    - shape
    - srec
    argTypes:
    - SWFReader*
    - GF_Node*
    - SWFShape*
    - SWFShapeRec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 357
    functionDepth: 11
    functionLinenumber: 357
    functionLinenumberEnd: 386
    functionName: s2b_get_bitmap
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - s2b_new_node
    - gf_sg_find_node_by_name
    - gf_node_get_field_by_name
    - sprintf
    - gf_mx2d_init
    - gf_mx2d_add_scale
    - s2b_get_matrix
    - gf_node_register
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *s2b_get_bitmap(SWFReader *read, GF_Node *parent, SWFShape
      *shape, SWFShapeRec *srec)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: s2b_get_appearance
      Src: /src/gpac/src/scene_manager/swf_bifs.c:395,1
    - Dst: s2b_get_appearance
      Src: /src/gpac/src/scene_manager/swf_bifs.c:402,1
    - Dst: s2b_get_gradient
      Src: /src/gpac/src/scene_manager/swf_bifs.c:404,1
    - Dst: s2b_get_bitmap
      Src: /src/gpac/src/scene_manager/swf_bifs.c:411,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_bifs.c:414,1
    - Dst: s2b_get_appearance
      Src: /src/gpac/src/scene_manager/swf_bifs.c:418,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 5
    argNames:
    - read
    - shape
    - n
    - srec
    - is_fill
    argTypes:
    - SWFReader*
    - SWFShape*
    - M_Shape*
    - SWFShapeRec*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 388
    functionDepth: 12
    functionLinenumber: 388
    functionLinenumberEnd: 420
    functionName: s2b_set_appearance
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - s2b_get_bitmap
    - s2b_get_appearance
    - swf_report
    - s2b_get_gradient
    linkageType: ''
    returnType: void
    signature: void s2b_set_appearance(SWFReader *read, SWFShape *shape, M_Shape *n,
      SWFShapeRec *srec, Bool is_fill)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:432,1
    - Dst: s2b_set_appearance
      Src: /src/gpac/src/scene_manager/swf_bifs.c:434,1
    - Dst: gf_sg_proto_create_instance
      Src: /src/gpac/src/scene_manager/swf_bifs.c:439,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scene_manager/swf_bifs.c:439,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:442,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:445,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:448,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:450,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:453,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:457,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:459,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:461,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:464,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:469,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/swf_bifs.c:473,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:482,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:486,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:489,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:497,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:500,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:503,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:513,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:517,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:519,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:522,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:525,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:532,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:546,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:549,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:552,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scene_manager/swf_bifs.c:561,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 110
    argCount: 5
    argNames:
    - read
    - shape
    - srec
    - is_fill
    - c
    argTypes:
    - SWFReader*
    - SWFShape*
    - SWFShapeRec*
    - Bool
    - M_Coordinate2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 423
    functionDepth: 13
    functionLinenumber: 423
    functionLinenumberEnd: 564
    functionName: s2b_shape_to_curve2d
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - s2b_new_node
    - s2b_set_appearance
    - gf_assert
    - gf_node_init
    - gf_sg_proto_create_instance
    - gf_sg_vrml_mf_append
    - gf_node_get_field_by_name
    - gf_sg_find_proto
    - gf_node_register
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *s2b_shape_to_curve2d(SWFReader *read, SWFShape *shape, SWFShapeRec
      *srec, Bool is_fill, M_Coordinate2D *c)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:582,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:584,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:598,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:600,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:606,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:608,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:613,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:616,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:622,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:625,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 60
    argCount: 2
    argNames:
    - s
    - tomerge
    argTypes:
    - M_Curve2D*
    - M_Curve2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 566
    functionDepth: 3
    functionLinenumber: 566
    functionLinenumberEnd: 632
    functionName: s2b_merge_curve2d
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_mf_append
    linkageType: ''
    returnType: void
    signature: void s2b_merge_curve2d(M_Curve2D *s, M_Curve2D *tomerge)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: s2b_merge_curve2d
      Src: /src/gpac/src/scene_manager/swf_bifs.c:641,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:642,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/swf_bifs.c:643,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:649,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:650,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - og
    - n
    - is_proto
    argTypes:
    - M_OrderedGroup*
    - M_Shape*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 651
      start: 634
    functionDepth: 4
    functionLinenumber: 634
    functionLinenumberEnd: 651
    functionName: s2b_insert_shape
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_node_register
    - s2b_merge_curve2d
    - gf_node_insert_child
    linkageType: ''
    returnType: void
    signature: void s2b_insert_shape(M_OrderedGroup *og, M_Shape *n, Bool is_proto)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:656,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:666,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - c
    - srec
    argTypes:
    - M_Coordinate2D*
    - SWFShapeRec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 653
    functionDepth: 0
    functionLinenumber: 653
    functionLinenumberEnd: 671
    functionName: s2b_insert_rec_in_coord
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void s2b_insert_rec_in_coord(M_Coordinate2D *c, SWFShapeRec *srec)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:692,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_bifs.c:695,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_bifs.c:695,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:697,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:699,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:703,1
    - Dst: s2b_shape_to_curve2d
      Src: /src/gpac/src/scene_manager/swf_bifs.c:705,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:708,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:715,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:716,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:718,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:721,1
    - Dst: s2b_insert_symbol
      Src: /src/gpac/src/scene_manager/swf_bifs.c:723,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:731,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:732,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:735,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/swf_bifs.c:739,1
    - Dst: s2b_insert_rec_in_coord
      Src: /src/gpac/src/scene_manager/swf_bifs.c:741,1
    - Dst: s2b_shape_to_curve2d
      Src: /src/gpac/src/scene_manager/swf_bifs.c:743,1
    - Dst: s2b_insert_shape
      Src: /src/gpac/src/scene_manager/swf_bifs.c:744,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/swf_bifs.c:747,1
    - Dst: s2b_insert_rec_in_coord
      Src: /src/gpac/src/scene_manager/swf_bifs.c:749,1
    - Dst: s2b_shape_to_curve2d
      Src: /src/gpac/src/scene_manager/swf_bifs.c:751,1
    - Dst: s2b_insert_shape
      Src: /src/gpac/src/scene_manager/swf_bifs.c:752,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 66
    argCount: 4
    argNames:
    - read
    - shape
    - parent_font
    - last_sub_shape
    argTypes:
    - SWFReader*
    - SWFShape*
    - SWFFont*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 674
    functionDepth: 14
    functionLinenumber: 674
    functionLinenumberEnd: 758
    functionName: swf_bifs_define_shape
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - s2b_new_node
    - s2b_insert_rec_in_coord
    - gf_list_get
    - s2b_insert_symbol
    - gf_node_set_id
    - s2b_insert_shape
    - sprintf
    - gf_list_count
    - gf_node_new
    - gf_list_add
    - s2b_shape_to_curve2d
    - gf_node_register
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_bifs_define_shape(SWFReader *read, SWFShape *shape, SWFFont
      *parent_font, Bool last_sub_shape)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:768,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:769,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:771,1
    - Dst: swf_find_font
      Src: /src/gpac/src/scene_manager/swf_bifs.c:776,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_bifs.c:778,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_bifs.c:782,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:785,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/swf_bifs.c:786,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_bifs.c:787,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:787,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:796,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:797,1
    - Dst: s2b_insert_symbol
      Src: /src/gpac/src/scene_manager/swf_bifs.c:800,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 4
    argNames:
    - read
    - fontID
    - gl_index
    - par
    argTypes:
    - SWFReader*
    - u32
    - u32
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 803
      start: 761
    functionDepth: 3
    functionLinenumber: 761
    functionLinenumberEnd: 803
    functionName: s2b_get_glyph
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_list_get
    - gf_sg_find_node_by_name
    - gf_node_get_class_name
    - s2b_insert_symbol
    - swf_find_font
    - gf_node_set_id
    - sprintf
    - swf_report
    - gf_node_register
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *s2b_get_glyph(SWFReader *read, u32 fontID, u32 gl_index, GF_Node
      *par)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:817,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/swf_bifs.c:827,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:828,1
    - Dst: swf_find_font
      Src: /src/gpac/src/scene_manager/swf_bifs.c:834,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_bifs.c:837,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_bifs.c:842,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:847,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:848,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:855,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:856,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:858,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_bifs.c:861,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scene_manager/swf_bifs.c:864,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:865,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:866,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scene_manager/swf_bifs.c:868,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:869,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:870,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_bifs.c:872,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:873,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:874,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:875,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:876,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:879,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:882,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/scene_manager/swf_bifs.c:884,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scene_manager/swf_bifs.c:888,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:889,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:890,1
    - Dst: memcpy
      Src: /src/gpac/src/scene_manager/swf_bifs.c:891,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_bifs.c:894,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_bifs.c:895,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:897,1
    - Dst: s2b_get_appearance
      Src: /src/gpac/src/scene_manager/swf_bifs.c:898,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:900,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:901,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:902,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:908,1
    - Dst: s2b_get_glyph
      Src: /src/gpac/src/scene_manager/swf_bifs.c:909,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:912,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/swf_bifs.c:913,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/swf_bifs.c:917,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/swf_bifs.c:917,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/swf_bifs.c:917,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:919,1
    - Dst: s2b_get_appearance
      Src: /src/gpac/src/scene_manager/swf_bifs.c:920,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scene_manager/swf_bifs.c:922,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_bifs.c:922,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:925,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:926,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:927,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:928,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:936,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:939,1
    - Dst: s2b_insert_symbol
      Src: /src/gpac/src/scene_manager/swf_bifs.c:940,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 104
    argCount: 2
    argNames:
    - read
    - text
    argTypes:
    - SWFReader*
    - SWFText*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 805
    functionDepth: 12
    functionLinenumber: 805
    functionLinenumberEnd: 943
    functionName: swf_bifs_define_text
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_tag
    - s2b_get_appearance
    - gf_node_unregister
    - gf_strdup
    - gf_assert
    - gf_utf8_wcstombs
    - memcpy
    - gf_node_set_id
    - sprintf
    - swf_report
    - gf_sg_vrml_mf_reset
    - s2b_new_node
    - FLT2FIX
    - gf_sg_vrml_mf_append
    - swf_find_font
    - gf_divfix
    - gf_list_enum
    - s2b_get_glyph
    - gf_malloc
    - s2b_insert_symbol
    - gf_node_register
    - gf_node_insert_child
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_bifs_define_text(SWFReader *read, SWFText *text)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - sax_cbck
    - node_name
    - name_space
    - attributes
    - nb_attributes
    argTypes:
    - void*
    - char*
    - char*
    - GF_XMLAttribute*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 954
      start: 952
    functionDepth: 0
    functionLinenumber: 952
    functionLinenumberEnd: 954
    functionName: swf_nstart
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void swf_nstart(void *sax_cbck, const char *node_name, const char *name_space,
      const GF_XMLAttribute *attributes, u32 nb_attributes)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - sax_cbck
    - node_name
    - name_space
    argTypes:
    - void*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 957
      start: 955
    functionDepth: 0
    functionLinenumber: 955
    functionLinenumberEnd: 957
    functionName: swf_nend
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void swf_nend(void *sax_cbck, const char *node_name, const char *name_space)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/swf_bifs.c:964,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:966,1
    - Dst: strcat
      Src: /src/gpac/src/scene_manager/swf_bifs.c:968,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/swf_bifs.c:969,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - sax_cbck
    - content
    - is_cdata
    argTypes:
    - void*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 970
      start: 958
    functionDepth: 0
    functionLinenumber: 958
    functionLinenumberEnd: 970
    functionName: swf_ntext
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - strcat
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void swf_ntext(void *sax_cbck, const char *content, Bool is_cdata)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:984,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:992,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:997,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:998,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1000,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1006,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1007,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1010,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1013,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1016,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1019,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1023,1
    - Dst: strcat
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1024,1
    - Dst: strcat
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1025,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1027,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1028,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1031,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1032,1
    - Dst: gf_xml_sax_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1039,1
    - Dst: gf_xml_sax_init
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1040,1
    - Dst: gf_xml_sax_parse
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1041,1
    - Dst: gf_xml_sax_del
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1042,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1045,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1046,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1049,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1054,1
    - Dst: s2b_get_appearance
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1055,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1057,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1060,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1061,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1064,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1067,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1070,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1073,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1078,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1079,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1081,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1082,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1084,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1085,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1090,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1093,1
    - Dst: s2b_insert_symbol
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1094,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 100
    argCount: 2
    argNames:
    - read
    - text
    argTypes:
    - SWFReader*
    - SWFEditText*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1097
      start: 973
    functionDepth: 12
    functionLinenumber: 973
    functionLinenumberEnd: 1097
    functionName: swf_bifs_define_edit_text
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - s2b_new_node
    - strcat
    - gf_strdup
    - gf_free
    - gf_xml_sax_init
    - gf_sg_vrml_mf_append
    - s2b_insert_symbol
    - gf_node_set_id
    - strcpy
    - s2b_get_appearance
    - sprintf
    - gf_xml_sax_parse
    - gf_xml_sax_del
    - gf_node_register
    - gf_xml_sax_new
    - gf_sg_vrml_mf_reset
    - gf_node_insert_child
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_bifs_define_edit_text(SWFReader *read, SWFEditText *text)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1111,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1113,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1116,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1117,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1118,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1120,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1121,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1127,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1133
      start: 1101
    functionDepth: 2
    functionLinenumber: 1101
    functionLinenumberEnd: 1133
    functionName: swf_bifs_end_of_clip
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_get
    - gf_sg_find_node_by_name
    - gf_sg_command_field_new
    - sprintf
    - gf_node_register
    - gf_sg_command_new
    linkageType: ''
    returnType: void
    signature: void swf_bifs_end_of_clip(SWFReader *read)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1141,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1142,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1144,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1146,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1147,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - read
    - depth
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1151
      start: 1135
    functionDepth: 3
    functionLinenumber: 1135
    functionLinenumberEnd: 1151
    functionName: swf_bifs_allocate_depth
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_node_register
    - gf_node_insert_child
    - sprintf
    - gf_sg_find_node_by_name
    linkageType: ''
    returnType: Bool
    signature: Bool swf_bifs_allocate_depth(SWFReader *read, u32 depth)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1159,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1161,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1167,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1169,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1170,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1180,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1183,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1190,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1192,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 39
    argCount: 2
    argNames:
    - read
    - root_only
    argTypes:
    - SWFReader*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1193
      start: 1153
    functionDepth: 2
    functionLinenumber: 1153
    functionLinenumberEnd: 1193
    functionName: swf_init_od
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - gf_odf_desc_esd_new
    - gf_odf_desc_new
    - gf_list_add
    - gf_sm_stream_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_init_od(SWFReader *read, Bool root_only)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1199,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1203,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1205,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1209,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1210,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1211,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - read
    - at_time
    - od
    argTypes:
    - SWFReader*
    - u32
    - GF_ObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1212
      start: 1195
    functionDepth: 2
    functionLinenumber: 1195
    functionLinenumberEnd: 1212
    functionName: swf_insert_od
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_odf_com_new
    - gf_list_enum
    - gf_list_add
    - gf_sm_stream_au_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_insert_od(SWFReader *read, u32 at_time, GF_ObjectDescriptor
      *od)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1217
      start: 1214
    functionDepth: 0
    functionLinenumber: 1214
    functionLinenumberEnd: 1217
    functionName: swf_get_od_id
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u16
    signature: u16 swf_get_od_id(SWFReader *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1222
      start: 1219
    functionDepth: 0
    functionLinenumber: 1219
    functionLinenumberEnd: 1222
    functionName: swf_get_es_id
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u16
    signature: u16 swf_get_es_id(SWFReader *read)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: swf_init_od
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1238,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1242,1
    - Dst: swf_get_od_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1245,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1246,1
    - Dst: swf_get_es_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1248,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1256,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1258,1
    - Dst: swf_insert_od
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1261,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1263,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1268,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1269,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1270,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1272,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1273,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1277,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1278,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1281,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1283,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1284,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1286,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1287,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1294,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1295,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1299,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1300,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1301,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1302,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1303,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1304,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1305,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1306,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1312,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1317,1
    - Dst: swf_parse_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1319,1
    - Dst: swf_bifs_end_of_clip
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1322,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 69
    argCount: 2
    argNames:
    - read
    - nb_frames
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1329
      start: 1225
    functionDepth: 10
    functionLinenumber: 1225
    functionLinenumberEnd: 1329
    functionName: swf_bifs_define_sprite
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - gf_sg_vrml_mf_alloc
    - gf_assert
    - gf_sg_find_node_by_name
    - gf_odf_desc_esd_new
    - gf_node_set_id
    - sprintf
    - gf_odf_desc_new
    - gf_list_add
    - gf_node_register
    - swf_get_od_id
    - gf_node_list_add_child
    - swf_insert_od
    - s2b_new_node
    - swf_init_od
    - swf_bifs_end_of_clip
    - gf_sm_stream_au_new
    - swf_parse_sprite
    - gf_node_get_field_by_name
    - swf_get_es_id
    - gf_sm_stream_new
    - gf_node_insert_child
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_bifs_define_sprite(SWFReader *read, u32 nb_frames)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1344,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1345,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1348,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1350,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1351,1
    - Dst: swf_init_od
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1355,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1359,1
    - Dst: swf_get_od_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1361,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1362,1
    - Dst: swf_get_es_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1364,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1372,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1375,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1376,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1381,1
    - Dst: swf_insert_od
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1385,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1387,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1391,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1392,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1393,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1395,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1397,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1399,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1400,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1407,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1410,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1423,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1424,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1427,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1428,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 74
    argCount: 3
    argNames:
    - read
    - snd
    - soundstream_first_block
    argTypes:
    - SWFReader*
    - SWFSound*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1440
      start: 1331
    functionDepth: 10
    functionLinenumber: 1331
    functionLinenumberEnd: 1440
    functionName: swf_bifs_setup_sound
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - s2b_new_node
    - gf_strdup
    - gf_sg_find_node_by_name
    - gf_odf_desc_del
    - gf_node_set_id
    - gf_node_get_field_by_name
    - sprintf
    - swf_insert_od
    - gf_odf_desc_new
    - gf_list_add
    - swf_init_od
    - swf_get_es_id
    - swf_get_od_id
    - gf_node_register
    - gf_node_insert_child
    - gf_sg_vrml_mf_alloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_bifs_setup_sound(SWFReader *read, SWFSound *snd, Bool soundstream_first_block)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: swf_init_od
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1453,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1457,1
    - Dst: swf_get_od_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1459,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1460,1
    - Dst: swf_get_es_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1462,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1464,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1467,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1469,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1472,1
    - Dst: swf_insert_od
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1476,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1478,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1482,1
    - Dst: s2b_insert_symbol
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1483,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1484,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1486,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1489,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1491,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1493,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1496,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1499,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1500,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 39
    argCount: 3
    argNames:
    - read
    - ID
    - fileName
    argTypes:
    - SWFReader*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1504
      start: 1442
    functionDepth: 10
    functionLinenumber: 1442
    functionLinenumberEnd: 1504
    functionName: swf_bifs_setup_image
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - s2b_new_node
    - gf_strdup
    - gf_odf_desc_del
    - s2b_insert_symbol
    - gf_node_set_id
    - gf_node_get_field_by_name
    - sprintf
    - gf_odf_desc_new
    - gf_list_add
    - swf_get_es_id
    - swf_init_od
    - swf_get_od_id
    - gf_node_register
    - swf_insert_od
    - gf_sg_vrml_mf_alloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_bifs_setup_image(SWFReader *read, u32 ID, char *fileName)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_is_identity
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1510,1
    - Dst: s2b_get_matrix
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1518,1
    - Dst: s2b_get_color_matrix
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1520,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1523,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1524,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1526,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1527,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1528,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1529,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1532,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1533,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 4
    argNames:
    - read
    - node
    - mat
    - cmat
    argTypes:
    - SWFReader*
    - GF_Node*
    - GF_Matrix2D*
    - GF_ColorMatrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1537
      start: 1507
    functionDepth: 11
    functionLinenumber: 1507
    functionLinenumberEnd: 1537
    functionName: s2b_wrap_node
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_is_identity
    - s2b_get_color_matrix
    - s2b_get_matrix
    - gf_node_register
    - gf_node_insert_child
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *s2b_wrap_node(SWFReader *read, GF_Node *node, GF_Matrix2D
      *mat, GF_ColorMatrix *cmat)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1548,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1550,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1552,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1554,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1562,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1563,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1565,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1567,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1568,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1572,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1574,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1575,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1576,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1578,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1580,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1587,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1589,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 41
    argCount: 8
    argNames:
    - read
    - dst
    - n
    - fieldName
    - pos
    - type
    - val
    - insert
    argTypes:
    - SWFReader*
    - GF_List*
    - GF_Node*
    - char*
    - s32
    - u32
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1590
      start: 1541
    functionDepth: 6
    functionLinenumber: 1541
    functionLinenumberEnd: 1590
    functionName: s2b_set_field
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_insert
    - gf_list_get
    - gf_strdup
    - gf_sg_command_new
    - gf_node_get_field_by_name
    - gf_sg_command_field_new
    - gf_list_count
    - gf_sg_vrml_field_copy
    - gf_list_add
    - gf_sg_vrml_field_pointer_new
    - gf_node_register
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void s2b_set_field(SWFReader *read, GF_List *dst, GF_Node *n, char
      *fieldName, s32 pos, u32 type, void *val, Bool insert)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1595,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1597,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1598,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1599,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1600,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - read
    - xrgb
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1602
      start: 1592
    functionDepth: 7
    functionLinenumber: 1592
    functionLinenumberEnd: 1602
    functionName: swf_bifs_set_backcol
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - s2b_set_field
    - gf_sg_find_node_by_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_bifs_set_backcol(SWFReader *read, u32 xrgb)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1610,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1611,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1614,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - read
    - snd
    - stop
    argTypes:
    - SWFReader*
    - SWFSound*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1617
      start: 1604
    functionDepth: 7
    functionLinenumber: 1604
    functionLinenumberEnd: 1617
    functionName: swf_bifs_start_sound
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - s2b_set_field
    - sprintf
    - gf_sg_find_node_by_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_bifs_start_sound(SWFReader *read, SWFSound *snd, Bool stop)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1625,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1626,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1631,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1632,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1634,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1642,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1644,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1646,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1647,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1652,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1655,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 7
    argNames:
    - read
    - dst
    - ID
    - stop
    - set_time
    - mediaStartTime
    - rev_order
    argTypes:
    - SWFReader*
    - GF_List*
    - u32
    - Bool
    - Bool
    - SFTime
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1656
      start: 1619
    functionDepth: 7
    functionLinenumber: 1619
    functionLinenumberEnd: 1656
    functionName: s2b_control_sprite
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - s2b_set_field
    - gf_sg_find_node_by_name
    - sprintf
    - gf_list_count
    linkageType: ''
    returnType: void
    signature: void s2b_control_sprite(SWFReader *read, GF_List *dst, u32 ID, Bool
      stop, Bool set_time, SFTime mediaStartTime, Bool rev_order)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: s2b_get_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1666,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1669,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1670,1
    - Dst: s2b_wrap_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1676,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1679,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1680,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1681,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1682,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1683,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1689,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1690,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1694,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1694,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1696,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1698,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1700,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1702,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1704,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1710,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1712,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 43
    argCount: 9
    argNames:
    - read
    - depth
    - ID
    - prev_id
    - type
    - mat
    - cmat
    - prev_mat
    - prev_cmat
    argTypes:
    - SWFReader*
    - u32
    - u32
    - u32
    - u32
    - GF_Matrix2D*
    - GF_ColorMatrix*
    - GF_Matrix2D*
    - GF_ColorMatrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1716
      start: 1658
    functionDepth: 12
    functionLinenumber: 1658
    functionLinenumberEnd: 1716
    functionName: swf_bifs_place_obj
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_sg_find_node_by_name
    - gf_node_get_name
    - strcpy
    - gf_sg_command_field_new
    - sprintf
    - gf_list_count
    - s2b_control_sprite
    - strnicmp
    - s2b_wrap_node
    - gf_list_add
    - s2b_get_node
    - gf_node_register
    - gf_sg_command_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_bifs_place_obj(SWFReader *read, u32 depth, u32 ID, u32 prev_id,
      u32 type, GF_Matrix2D *mat, GF_ColorMatrix *cmat, GF_Matrix2D *prev_mat, GF_ColorMatrix
      *prev_cmat)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1724,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1725,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1726,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1727,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1728,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1733,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1734,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1735,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1738,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 3
    argNames:
    - read
    - depth
    - ID
    argTypes:
    - SWFReader*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1740
      start: 1718
    functionDepth: 8
    functionLinenumber: 1718
    functionLinenumberEnd: 1740
    functionName: swf_bifs_remove_obj
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_sg_find_node_by_name
    - gf_sg_command_field_new
    - sprintf
    - s2b_control_sprite
    - gf_list_add
    - gf_node_register
    - gf_sg_command_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_bifs_remove_obj(SWFReader *read, u32 depth, u32 ID)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1750,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1753,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1754,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1755,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1756,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1757,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1762,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1781,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1787,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1795
      start: 1742
    functionDepth: 3
    functionLinenumber: 1742
    functionLinenumberEnd: 1795
    functionName: swf_bifs_show_frame
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_sg_find_node_by_name
    - gf_sg_command_field_new
    - gf_list_count
    - gf_list_add
    - gf_sg_vrml_field_pointer_new
    - gf_node_register
    - gf_sg_command_new
    - gf_sm_stream_au_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_bifs_show_frame(SWFReader *read)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1800,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1806,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1809,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1810,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - read
    - button
    - tag
    - def_name
    - pos
    argTypes:
    - SWFReader*
    - GF_Node*
    - u32
    - char*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1812
      start: 1798
    functionDepth: 10
    functionLinenumber: 1798
    functionLinenumberEnd: 1812
    functionName: s2b_button_add_child
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - s2b_new_node
    - gf_node_set_id
    - gf_node_register
    - gf_node_insert_child
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *s2b_button_add_child(SWFReader *read, GF_Node *button, u32
      tag, char *def_name, s32 pos)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1816,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1817,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1819,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1823,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1825,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 5
    argNames:
    - read
    - fromNode
    - fromField
    - toNode
    - toField
    argTypes:
    - SWFReader*
    - GF_Node*
    - u32
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1826
      start: 1814
    functionDepth: 2
    functionLinenumber: 1814
    functionLinenumberEnd: 1826
    functionName: s2b_button_add_route
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_node_get_id
    - gf_list_add
    - gf_sg_command_new
    linkageType: ''
    returnType: void
    signature: void s2b_button_add_route(SWFReader *read, GF_Node *fromNode, u32 fromField,
      GF_Node *toNode, u32 toField)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1845,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1846,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1849,1
    - Dst: s2b_button_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1851,1
    - Dst: s2b_get_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1859,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1861,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1862,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1865,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1866,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1870,1
    - Dst: s2b_button_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1871,1
    - Dst: s2b_insert_symbol
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1873,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1876,1
    - Dst: s2b_button_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1877,1
    - Dst: s2b_button_add_route
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1879,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1882,1
    - Dst: s2b_button_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1883,1
    - Dst: s2b_button_add_route
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1885,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1888,1
    - Dst: s2b_button_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1889,1
    - Dst: s2b_button_add_route
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1891,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1894,1
    - Dst: s2b_button_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1895,1
    - Dst: s2b_button_add_route
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1897,1
    - Dst: s2b_get_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1907,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1910,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1911,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1913,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1914,1
    - Dst: s2b_wrap_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1919,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1921,1
    - Dst: s2b_button_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1922,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1925,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1926,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1933,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1934,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1937,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1945,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1948,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1952,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1954,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1958,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1959,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1961,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1963,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 102
    argCount: 2
    argNames:
    - read
    - btn
    argTypes:
    - SWFReader*
    - SWF_Button*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1969
      start: 1829
    functionDepth: 12
    functionLinenumber: 1829
    functionLinenumberEnd: 1969
    functionName: swf_bifs_define_button
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - s2b_new_node
    - gf_list_new
    - s2b_set_field
    - s2b_button_add_route
    - gf_sg_find_node_by_name
    - s2b_insert_symbol
    - gf_node_set_id
    - sprintf
    - s2b_control_sprite
    - s2b_wrap_node
    - s2b_button_add_child
    - gf_node_register
    - s2b_get_node
    - gf_list_add
    - gf_node_list_add_child
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_bifs_define_button(SWFReader *read, SWF_Button *btn)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: swf_bifs_end_of_clip
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1975,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1977,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1978,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1979,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1980,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1982,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1985,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1987,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1988,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1989,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1990,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1991,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - read
    - is_destroy
    argTypes:
    - SWFReader*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1994
      start: 1971
    functionDepth: 3
    functionLinenumber: 1971
    functionLinenumberEnd: 1994
    functionName: swf_bifs_finalize
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_node_unregister
    - gf_list_del
    - swf_bifs_end_of_clip
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void swf_bifs_finalize(SWFReader *read, Bool is_destroy)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2024,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2027,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2032,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2034,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2037,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2040,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 41
    argCount: 2
    argNames:
    - read
    - act
    argTypes:
    - SWFReader*
    - SWFAction*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2047
      start: 1996
    functionDepth: 8
    functionLinenumber: 1996
    functionLinenumberEnd: 2047
    functionName: swf_bifs_action
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - s2b_control_sprite
    - s2b_set_field
    - gf_sg_find_node_by_name
    linkageType: ''
    returnType: Bool
    signature: Bool swf_bifs_action(SWFReader *read, SWFAction *act)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2079,1
    - Dst: swf_nstart
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2080,1
    - Dst: swf_nend
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2081,1
    - Dst: swf_ntext
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2082,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2087,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2090,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2092,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2093,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2094,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2097,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2100,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2101,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2104,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2105,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2106,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2107,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2108,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2110,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2111,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2112,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2113,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2115,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2115,1
    - Dst: gf_gpac_copyright
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2115,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2117,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2120,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2124,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2125,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2126,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2129,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2130,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2131,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2132,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2135,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2136,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2137,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2138,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2140,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2141,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2142,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2143,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2146,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2147,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2148,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2149,1
    - Dst: swf_init_od
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2158,1
    - Dst: gf_sg_proto_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2171,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2173,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2174,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2175,1
    - Dst: gf_sg_proto_field_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2177,1
    - Dst: gf_sg_proto_field_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2179,1
    - Dst: gf_sg_proto_field_get_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2180,1
    - Dst: gf_sg_proto_field_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2183,1
    - Dst: gf_bifs_proto_field_set_aq_info
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2186,1
    - Dst: gf_sg_proto_field_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2188,1
    - Dst: gf_bifs_proto_field_set_aq_info
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2191,1
    - Dst: swf_init_od
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2198,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2208,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2211,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2218,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2220,1
    - Dst: swf_insert_od
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2221,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2223,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2229,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2232,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2235,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2236,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2237,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2239,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2240,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2247,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2250,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2251,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2252,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2254,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2255,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 145
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2261
      start: 2049
    functionDepth: 10
    functionLinenumber: 2049
    functionLinenumberEnd: 2261
    functionName: swf_to_bifs_init
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_bifs_proto_field_set_aq_info
    - gf_odf_desc_del
    - swf_nend
    - gf_sg_command_new
    - gf_sg_vrml_mf_alloc
    - gf_sys_is_cov_mode
    - gf_sg_proto_new
    - gf_strdup
    - gf_odf_desc_esd_new
    - gf_node_set_id
    - swf_nstart
    - sprintf
    - gf_odf_desc_new
    - gf_list_add
    - gf_node_register
    - swf_ntext
    - gf_node_list_add_child
    - gf_sg_vrml_mf_reset
    - swf_insert_od
    - s2b_new_node
    - gf_sg_vrml_mf_append
    - gf_sys_is_test_mode
    - swf_init_od
    - gf_sm_stream_au_new
    - gf_sg_proto_field_new
    - gf_gpac_copyright
    - gf_node_get_field_by_name
    - FIX2INT
    - gf_gpac_version
    - gf_sg_proto_field_get_field
    - gf_sm_stream_new
    - gf_node_insert_child
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_to_bifs_init(SWFReader *read)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/scene_manager.c:41,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/scene_manager.c:43,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 46
    functionName: GF_SceneManager *gf_sm_new(GF_SceneGraph *graph)
    functionSourceFile: /src/gpac/src/scene_manager/scene_manager.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_SceneManager *gf_sm_new(GF_SceneGraph *graph)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_manager.c:55,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/scene_manager.c:67,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/scene_manager.c:69,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/scene_manager.c:74,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 48
    functionDepth: 2
    functionLinenumber: 48
    functionLinenumberEnd: 76
    functionName: GF_StreamContext *gf_sm_stream_new(GF_SceneManager *ctx, u16 ES_ID,
      u8 streamType, u32 codec_id)
    functionSourceFile: /src/gpac/src/scene_manager/scene_manager.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_list_add
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_StreamContext *gf_sm_stream_new(GF_SceneManager *ctx,
      u16 ES_ID, u8 streamType, u32 codec_id)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_manager.c:82,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_manager.c:84,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - ES_ID
    argTypes:
    - GF_SceneManager*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 88
    functionName: gf_sm_stream_find
    functionSourceFile: /src/gpac/src/scene_manager/scene_manager.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_StreamContext
    signature: GF_StreamContext *gf_sm_stream_find(GF_SceneManager *ctx, u16 ES_ID)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_manager.c:96,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - src
    argTypes:
    - GF_ESD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 90
    functionDepth: 2
    functionLinenumber: 90
    functionLinenumberEnd: 100
    functionName: gf_sm_get_mux_info
    functionSourceFile: /src/gpac/src/scene_manager/scene_manager.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sm_get_mux_info(GF_ESD *src)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_manager.c:105,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/scene_manager.c:106,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scene_manager/scene_manager.c:107,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/scene_manager/scene_manager.c:110,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/scene_manager/scene_manager.c:113,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/scene_manager.c:117,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_manager.c:118,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - sc
    - au
    argTypes:
    - GF_StreamContext*
    - GF_AUContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 103
    functionDepth: 9
    functionLinenumber: 103
    functionLinenumberEnd: 119
    functionName: gf_sm_au_del
    functionSourceFile: /src/gpac/src/scene_manager/scene_manager.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - gf_odf_com_del
    - gf_sg_command_del
    - gf_list_last
    - gf_list_rem_last
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_sm_au_del(GF_StreamContext *sc, GF_AUContext *au)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_manager.c:123,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/scene_manager.c:124,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scene_manager/scene_manager.c:125,1
    - Dst: gf_sm_au_del
      Src: /src/gpac/src/scene_manager/scene_manager.c:126,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - sc
    argTypes:
    - GF_StreamContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 121
    functionDepth: 10
    functionLinenumber: 121
    functionLinenumberEnd: 129
    functionName: gf_sm_reset_stream
    functionSourceFile: /src/gpac/src/scene_manager/scene_manager.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_sm_au_del
    - gf_list_last
    - gf_list_rem_last
    linkageType: ''
    returnType: void
    signature: void gf_sm_reset_stream(GF_StreamContext *sc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sm_reset_stream
      Src: /src/gpac/src/scene_manager/scene_manager.c:133,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/scene_manager.c:134,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_manager.c:135,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_manager.c:136,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_manager.c:137,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - sc
    argTypes:
    - GF_StreamContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 131
    functionDepth: 11
    functionLinenumber: 131
    functionLinenumberEnd: 138
    functionName: gf_sm_delete_stream
    functionSourceFile: /src/gpac/src/scene_manager/scene_manager.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sm_reset_stream
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_sm_delete_stream(GF_StreamContext *sc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_manager.c:144,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_manager.c:145,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/scene_manager.c:146,1
    - Dst: gf_sm_delete_stream
      Src: /src/gpac/src/scene_manager/scene_manager.c:147,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/scene_manager.c:149,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/scene_manager.c:150,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_manager.c:151,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_SceneManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 140
    functionDepth: 12
    functionLinenumber: 140
    functionLinenumberEnd: 152
    functionName: gf_sm_del
    functionSourceFile: /src/gpac/src/scene_manager/scene_manager.c
    functionUses: 9
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_odf_desc_del
    - gf_list_count
    - gf_sm_delete_stream
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sm_del(GF_SceneManager *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_manager.c:159,1
    - Dst: gf_sm_reset_stream
      Src: /src/gpac/src/scene_manager/scene_manager.c:160,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/scene_manager.c:162,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_SceneManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 155
    functionDepth: 11
    functionLinenumber: 155
    functionLinenumberEnd: 164
    functionName: gf_sm_reset
    functionSourceFile: /src/gpac/src/scene_manager/scene_manager.c
    functionUses: 0
    functionsReached:
    - gf_sm_reset_stream
    - gf_list_enum
    - gf_odf_desc_del
    linkageType: ''
    returnType: void
    signature: void gf_sm_reset(GF_SceneManager *ctx)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_manager.c:178,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/scene_manager.c:184,1
    - Dst: memset
      Src: /src/gpac/src/scene_manager/scene_manager.c:186,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/scene_manager.c:187,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/scene_manager/scene_manager.c:192,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/scene_manager.c:197,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/scene_manager.c:199,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/scene_manager.c:205,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 167
    functionDepth: 2
    functionLinenumber: 167
    functionLinenumberEnd: 208
    functionName: GF_AUContext *gf_sm_stream_au_new(GF_StreamContext *stream, u64
      timing, Double time_sec, Bool isRap)
    functionSourceFile: /src/gpac/src/scene_manager/scene_manager.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_new
    - GF_SAFEALLOC
    - memset
    - gf_list_add
    - gf_list_enum
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_AUContext *gf_sm_stream_au_new(GF_StreamContext *stream,
      u64 timing, Double time_sec, Bool isRap)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_manager.c:215,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_manager.c:217,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_manager.c:219,1
    - Dst: gf_node_parent_of
      Src: /src/gpac/src/scene_manager/scene_manager.c:223,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_manager.c:226,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_manager.c:228,1
    - Dst: gf_node_parent_of
      Src: /src/gpac/src/scene_manager/scene_manager.c:232,1
    - Dst: gf_node_parent_of
      Src: /src/gpac/src/scene_manager/scene_manager.c:240,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 35
    argCount: 2
    argNames:
    - node
    - commands
    argTypes:
    - GF_Node*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 210
    functionDepth: 4
    functionLinenumber: 210
    functionLinenumberEnd: 250
    functionName: node_in_commands_subtree
    functionSourceFile: /src/gpac/src/scene_manager/scene_manager.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_list_get
    - gf_node_parent_of
    linkageType: ''
    returnType: Bool
    signature: Bool node_in_commands_subtree(GF_Node *node, GF_List *commands)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: node_in_commands_subtree
      Src: /src/gpac/src/scene_manager/scene_manager.c:259,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_manager.c:262,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_manager.c:264,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_manager.c:289,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_manager.c:290,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_manager.c:293,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_manager.c:294,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/scene_manager/scene_manager.c:305,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/scene_manager.c:306,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/scene_manager.c:317,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/scene_manager.c:317,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/scene_manager/scene_manager.c:321,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/scene_manager.c:322,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_manager.c:330,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_manager.c:331,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/scene_manager/scene_manager.c:336,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/scene_manager.c:337,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_manager.c:342,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 87
    argCount: 4
    argNames:
    - sc
    - com
    - commands
    - has_modif
    argTypes:
    - GF_StreamContext*
    - GF_Command*
    - GF_List*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 252
    functionDepth: 9
    functionLinenumber: 252
    functionLinenumberEnd: 351
    functionName: store_or_aggregate
    functionSourceFile: /src/gpac/src/scene_manager/scene_manager.c
    functionUses: 0
    functionsReached:
    - node_in_commands_subtree
    - gf_list_get
    - gf_node_get_id
    - GF_LOG
    - gf_list_count
    - gf_sg_command_del
    - gf_list_rem
    linkageType: ''
    returnType: u32
    signature: u32 store_or_aggregate(GF_StreamContext *sc, GF_Command *com, GF_List
      *commands, Bool *has_modif)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_manager.c:356,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_manager.c:358,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - ESID
    argTypes:
    - GF_SceneManager*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 353
    functionDepth: 1
    functionLinenumber: 353
    functionLinenumberEnd: 362
    functionName: gf_sm_get_stream
    functionSourceFile: /src/gpac/src/scene_manager/scene_manager.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_StreamContext
    signature: GF_StreamContext *gf_sm_get_stream(GF_SceneManager *ctx, u16 ESID)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_manager.c:379,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_manager.c:381,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_manager.c:383,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_manager.c:385,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_manager.c:386,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_manager.c:390,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_manager.c:393,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_manager.c:398,1
    - Dst: gf_sm_get_stream
      Src: /src/gpac/src/scene_manager/scene_manager.c:404,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/scene_manager.c:406,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_manager.c:408,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/scene_manager.c:409,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/scene_manager.c:412,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_manager.c:412,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_manager.c:413,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_manager.c:428,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_manager.c:430,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/scene_manager.c:431,1
    - Dst: gf_sm_au_del
      Src: /src/gpac/src/scene_manager/scene_manager.c:435,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_manager.c:439,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_manager.c:443,1
    - Dst: store_or_aggregate
      Src: /src/gpac/src/scene_manager/scene_manager.c:492,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/scene_manager.c:494,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/scene_manager.c:503,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/scene_manager/scene_manager.c:506,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/scene_manager/scene_manager.c:510,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/scene_manager.c:511,1
    - Dst: gf_sg_command_apply
      Src: /src/gpac/src/scene_manager/scene_manager.c:517,1
    - Dst: gf_sm_au_del
      Src: /src/gpac/src/scene_manager/scene_manager.c:521,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/scene_manager.c:526,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/scene_manager.c:531,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/scene_manager.c:534,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/scene_manager.c:546,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/scene_manager.c:552,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/scene_manager.c:559,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/scene_manager.c:560,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 138
    argCount: 2
    argNames:
    - ctx
    - ESID
    argTypes:
    - GF_SceneManager*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 364
    functionDepth: 16
    functionLinenumber: 364
    functionLinenumberEnd: 570
    functionName: gf_sm_aggregate
    functionSourceFile: /src/gpac/src/scene_manager/scene_manager.c
    functionUses: 1
    functionsReached:
    - gf_list_insert
    - gf_list_get
    - gf_list_new
    - gf_assert
    - gf_sm_stream_au_new
    - gf_sg_command_new
    - GF_LOG
    - gf_list_del
    - store_or_aggregate
    - gf_list_count
    - gf_list_add
    - gf_sg_command_del
    - gf_sm_au_del
    - gf_sg_command_apply
    - gf_list_rem
    - gf_sm_get_stream
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sm_aggregate(GF_SceneManager *ctx, u16 ESID)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SceneLoader*::parse_string
      Src: /src/gpac/src/scene_manager/scene_manager.c:607,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_manager.c:609,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - load
    - str
    - do_clean
    argTypes:
    - GF_SceneLoader*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 613
      start: 602
    functionDepth: 1
    functionLinenumber: 602
    functionLinenumberEnd: 613
    functionName: gf_sm_load_string
    functionSourceFile: /src/gpac/src/scene_manager/scene_manager.c
    functionUses: 1
    functionsReached:
    - GF_SceneLoader*::parse_string
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sm_load_string(GF_SceneLoader *load, const char *str,
      Bool do_clean)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/scene_manager/scene_manager.c:637,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/scene_manager.c:639,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/scene_manager.c:639,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_manager.c:640,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/scene_manager.c:643,1
    - Dst: strlwr
      Src: /src/gpac/src/scene_manager/scene_manager.c:644,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/scene_manager.c:645,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/scene_manager.c:646,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/scene_manager.c:647,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/scene_manager.c:649,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/scene_manager.c:649,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/scene_manager.c:650,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/scene_manager.c:652,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/scene_manager.c:653,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/scene_manager.c:654,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/scene_manager.c:655,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/scene_manager.c:656,1
    - Dst: gf_xml_get_root_type
      Src: /src/gpac/src/scene_manager/scene_manager.c:657,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/scene_manager.c:659,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/scene_manager.c:660,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/scene_manager.c:661,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_manager.c:662,1
    - Dst: gf_sm_load_init_bt
      Src: /src/gpac/src/scene_manager/scene_manager.c:676,1
    - Dst: gf_sm_load_init_xmt
      Src: /src/gpac/src/scene_manager/scene_manager.c:682,1
    - Dst: gf_sm_load_init_svg
      Src: /src/gpac/src/scene_manager/scene_manager.c:689,1
    - Dst: gf_sm_load_init_swf
      Src: /src/gpac/src/scene_manager/scene_manager.c:695,1
    - Dst: gf_sm_load_init_isom
      Src: /src/gpac/src/scene_manager/scene_manager.c:700,1
    - Dst: gf_sm_load_init_qt
      Src: /src/gpac/src/scene_manager/scene_manager.c:705,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 66
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 617
    functionDepth: 11
    functionLinenumber: 617
    functionLinenumberEnd: 711
    functionName: gf_sm_load_init
    functionSourceFile: /src/gpac/src/scene_manager/scene_manager.c
    functionUses: 9
    functionsReached:
    - gf_free
    - gf_sm_load_init_qt
    - GF_LOG
    - strcpy
    - strstr
    - strlwr
    - gf_xml_get_root_type
    - gf_sm_load_init_bt
    - gf_file_ext_start
    - strcmp
    - gf_sm_load_init_swf
    - gf_sm_load_init_isom
    - gf_sm_load_init_svg
    - gf_sm_load_init_xmt
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sm_load_init(GF_SceneLoader *load)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SceneLoader*::done
      Src: /src/gpac/src/scene_manager/scene_manager.c:716,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 717
      start: 713
    functionDepth: 0
    functionLinenumber: 713
    functionLinenumberEnd: 717
    functionName: gf_sm_load_done
    functionSourceFile: /src/gpac/src/scene_manager/scene_manager.c
    functionUses: 9
    functionsReached:
    - GF_SceneLoader*::done
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sm_load_done(GF_SceneLoader *load)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SceneLoader*::process
      Src: /src/gpac/src/scene_manager/scene_manager.c:722,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 724
      start: 719
    functionDepth: 0
    functionLinenumber: 719
    functionLinenumberEnd: 724
    functionName: gf_sm_load_run
    functionSourceFile: /src/gpac/src/scene_manager/scene_manager.c
    functionUses: 8
    functionsReached:
    - GF_SceneLoader*::process
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sm_load_run(GF_SceneLoader *load)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SceneLoader*::suspend
      Src: /src/gpac/src/scene_manager/scene_manager.c:729,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - load
    - suspend
    argTypes:
    - GF_SceneLoader*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 731
      start: 727
    functionDepth: 0
    functionLinenumber: 727
    functionLinenumberEnd: 731
    functionName: gf_sm_load_suspend
    functionSourceFile: /src/gpac/src/scene_manager/scene_manager.c
    functionUses: 0
    functionsReached:
    - GF_SceneLoader*::suspend
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_load_suspend(GF_SceneLoader *load, Bool suspend)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/scene_manager.c:745,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/scene_manager.c:747,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/scene_manager/scene_manager.c:750,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/scene_manager/scene_manager.c:752,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_manager.c:753,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_manager.c:755,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/scene_manager.c:759,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/scene_manager.c:760,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/scene_manager.c:761,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/scene_manager.c:766,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/scene_manager.c:767,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/scene_manager/scene_manager.c:769,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/scene_manager.c:769,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/scene_manager.c:772,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/scene_manager.c:773,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/scene_manager.c:774,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/scene_manager.c:781,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_manager.c:787,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 49
    argCount: 2
    argNames:
    - node
    - fileName
    argTypes:
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 736
    functionDepth: 3
    functionLinenumber: 736
    functionLinenumberEnd: 795
    functionName: gf_sm_update_bitwrapper_buffer
    functionSourceFile: /src/gpac/src/scene_manager/scene_manager.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - sscanf
    - GF_LOG
    - gf_base64_decode
    - gf_url_concatenate
    - strstr
    - strnicmp
    - strchr
    - strlen
    - gf_file_load_data
    linkageType: ''
    returnType: void
    signature: void gf_sm_update_bitwrapper_buffer(GF_Node *node, const char *fileName)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/scene_manager/swf_parse.c:101,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/scene_manager/swf_parse.c:102,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:103,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/swf_parse.c:113,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:114,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:118,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:119,1
    - Dst: memset
      Src: /src/gpac/src/scene_manager/swf_parse.c:120,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/scene_manager/swf_parse.c:121,1
    - Dst: uncompress
      Src: /src/gpac/src/scene_manager/swf_parse.c:124,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:127,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:129,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/scene_manager/swf_parse.c:130,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/scene_manager/swf_parse.c:131,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/swf_parse.c:134,1
    - Dst: zError
      Src: /src/gpac/src/scene_manager/swf_parse.c:134,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:135,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:136,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:137,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 38
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 95
    functionDepth: 7
    functionLinenumber: 95
    functionLinenumberEnd: 141
    functionName: swf_init_decompress
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_bs_new
    - GF_LOG
    - gf_bs_get_size
    - gf_bs_del
    - memset
    - uncompress
    - zError
    - gf_malloc
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: void
    signature: void swf_init_decompress(SWFReader *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_seek
      Src: /src/gpac/src/scene_manager/swf_parse.c:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - read
    - size
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 144
    functionDepth: 7
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionName: swf_seek_file_to
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_bs_seek
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_seek_file_to(SWFReader *read, u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/scene_manager/swf_parse.c:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 152
    functionName: swf_get_file_pos
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    linkageType: ''
    returnType: u32
    signature: u32 swf_get_file_pos(SWFReader *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/scene_manager/swf_parse.c:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - read
    - data
    - data_size
    argTypes:
    - SWFReader*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 154
    functionDepth: 6
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionName: swf_read_data
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    linkageType: ''
    returnType: u32
    signature: u32 swf_read_data(SWFReader *read, char *data, u32 data_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - read
    - nbBits
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 5
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: swf_read_int
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    linkageType: ''
    returnType: u32
    signature: u32 swf_read_int(SWFReader *read, u32 nbBits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:169,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:172,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - read
    - nbBits
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 164
    functionDepth: 6
    functionLinenumber: 164
    functionLinenumberEnd: 175
    functionName: swf_read_sint
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - swf_read_int
    linkageType: ''
    returnType: s32
    signature: s32 swf_read_sint(SWFReader *read, u32 nbBits)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 177
    functionDepth: 6
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionName: swf_align
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_bs_align
    linkageType: ''
    returnType: u32
    signature: u32 swf_align(SWFReader *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:185,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - read
    - size
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 182
    functionDepth: 6
    functionLinenumber: 182
    functionLinenumberEnd: 188
    functionName: swf_skip_data
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - swf_read_int
    linkageType: ''
    returnType: void
    signature: void swf_skip_data(SWFReader *read, u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:193,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:194,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:195,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:195,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:196,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:196,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:198,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:198,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:199,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - read
    - rc
    argTypes:
    - SWFReader*
    - SWFRec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 190
    functionDepth: 7
    functionLinenumber: 190
    functionLinenumberEnd: 201
    functionName: swf_get_rec
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - swf_align
    - swf_read_int
    - swf_read_sint
    linkageType: ''
    returnType: void
    signature: void swf_get_rec(SWFReader *read, SWFRec *rc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/scene_manager/swf_parse.c:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 203
    functionDepth: 6
    functionLinenumber: 203
    functionLinenumberEnd: 206
    functionName: swf_get_32
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32_le
    linkageType: ''
    returnType: u32
    signature: u32 swf_get_32(SWFReader *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/scene_manager/swf_parse.c:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 208
    functionDepth: 6
    functionLinenumber: 208
    functionLinenumberEnd: 211
    functionName: swf_get_16
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u16_le
    linkageType: ''
    returnType: u16
    signature: u16 swf_get_16(SWFReader *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/scene_manager/swf_parse.c:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 213
    functionDepth: 6
    functionLinenumber: 213
    functionLinenumberEnd: 216
    functionName: swf_get_s16
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u16_le
    linkageType: ''
    returnType: s16
    signature: s16 swf_get_s16(SWFReader *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:222,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:224,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 218
    functionDepth: 6
    functionLinenumber: 218
    functionLinenumberEnd: 228
    functionName: swf_get_color
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - swf_read_int
    linkageType: ''
    returnType: u32
    signature: u32 swf_get_color(SWFReader *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:233,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:235,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:237,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 230
    functionDepth: 6
    functionLinenumber: 230
    functionLinenumberEnd: 240
    functionName: swf_get_argb
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - swf_read_int
    linkageType: ''
    returnType: u32
    signature: u32 swf_get_argb(SWFReader *read)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/scene_manager/swf_parse.c:247,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:250,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:252,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:255,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:257,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:258,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:260,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:262,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:267,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:270,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:273,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:274,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:276,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:278,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:283,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:286,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:286,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:287,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:287,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 35
    argCount: 2
    argNames:
    - read
    - mat
    argTypes:
    - SWFReader*
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 242
    functionDepth: 7
    functionLinenumber: 242
    functionLinenumberEnd: 290
    functionName: swf_get_matrix
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - swf_align
    - swf_read_int
    - swf_read_sint
    - memset
    linkageType: ''
    returnType: u32
    signature: u32 swf_get_matrix(SWFReader *read, GF_Matrix2D *mat)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/scene_manager/swf_parse.c:298,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:301,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:302,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:303,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:305,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:305,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:306,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:306,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:307,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:307,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:308,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:308,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:311,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:311,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:312,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:312,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:313,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:313,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:314,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:314,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 2
    argNames:
    - read
    - cmat
    argTypes:
    - SWFReader*
    - GF_ColorMatrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 294
    functionDepth: 7
    functionLinenumber: 294
    functionLinenumberEnd: 326
    functionName: swf_get_colormatrix
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - memset
    - swf_read_int
    - swf_read_sint
    linkageType: ''
    returnType: void
    signature: void swf_get_colormatrix(SWFReader *read, GF_ColorMatrix *cmat)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:335,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:345,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:350,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/swf_parse.c:350,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_parse.c:352,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 328
    functionDepth: 6
    functionLinenumber: 328
    functionLinenumberEnd: 354
    functionName: swf_get_string
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_strdup
    - swf_read_int
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: char
    signature: char *swf_get_string(SWFReader *read)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/swf_parse.c:359,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/swf_parse.c:361,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:363,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 356
    functionDepth: 1
    functionLinenumber: 356
    functionLinenumberEnd: 367
    functionName: swf_new_shape_rec
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    linkageType: ''
    returnType: SWFShapeRec
    signature: SWFShapeRec *swf_new_shape_rec()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:371,1
    - Dst: memcpy
      Src: /src/gpac/src/scene_manager/swf_parse.c:372,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:373,1
    - Dst: memset
      Src: /src/gpac/src/scene_manager/swf_parse.c:374,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:377,1
    - Dst: memcpy
      Src: /src/gpac/src/scene_manager/swf_parse.c:378,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:379,1
    - Dst: memcpy
      Src: /src/gpac/src/scene_manager/swf_parse.c:380,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - old_sr
    argTypes:
    - SWFShapeRec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 369
    functionDepth: 0
    functionLinenumber: 369
    functionLinenumberEnd: 383
    functionName: swf_clone_shape_rec
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - memcpy
    - memset
    - gf_malloc
    linkageType: ''
    returnType: SWFShapeRec
    signature: SWFShapeRec *swf_clone_shape_rec(SWFShapeRec *old_sr)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:391,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:394,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:395,1
    - Dst: swf_new_shape_rec
      Src: /src/gpac/src/scene_manager/swf_parse.c:398,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:401,1
    - Dst: swf_get_matrix
      Src: /src/gpac/src/scene_manager/swf_parse.c:405,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:406,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:407,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:409,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:410,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:412,1
    - Dst: swf_get_argb
      Src: /src/gpac/src/scene_manager/swf_parse.c:413,1
    - Dst: swf_get_color
      Src: /src/gpac/src/scene_manager/swf_parse.c:414,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:422,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:423,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:430,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:432,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:437,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:438,1
    - Dst: memcpy
      Src: /src/gpac/src/scene_manager/swf_parse.c:439,1
    - Dst: memcpy
      Src: /src/gpac/src/scene_manager/swf_parse.c:440,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:443,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:445,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:456,1
    - Dst: swf_get_matrix
      Src: /src/gpac/src/scene_manager/swf_parse.c:462,1
    - Dst: swf_get_argb
      Src: /src/gpac/src/scene_manager/swf_parse.c:466,1
    - Dst: swf_get_color
      Src: /src/gpac/src/scene_manager/swf_parse.c:467,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_parse.c:469,1
    - Dst: swf_clone_shape_rec
      Src: /src/gpac/src/scene_manager/swf_parse.c:470,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_parse.c:471,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:475,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:477,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:478,1
    - Dst: swf_new_shape_rec
      Src: /src/gpac/src/scene_manager/swf_parse.c:481,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_parse.c:482,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:483,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:483,1
    - Dst: swf_get_argb
      Src: /src/gpac/src/scene_manager/swf_parse.c:484,1
    - Dst: swf_get_color
      Src: /src/gpac/src/scene_manager/swf_parse.c:485,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:489,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:490,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:491,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 89
    argCount: 5
    argNames:
    - read
    - revision
    - shape
    - bits_fill
    - bits_line
    argTypes:
    - SWFReader*
    - u32
    - SWFShape*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 386
    functionDepth: 8
    functionLinenumber: 386
    functionLinenumberEnd: 492
    functionName: swf_parse_styles
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - swf_get_16
    - FLT2FIX
    - swf_align
    - swf_get_argb
    - memcpy
    - swf_read_int
    - swf_get_matrix
    - swf_get_color
    - gf_list_add
    - swf_clone_shape_rec
    - gf_malloc
    - swf_new_shape_rec
    linkageType: ''
    returnType: void
    signature: void swf_parse_styles(SWFReader *read, u32 revision, SWFShape *shape,
      u32 *bits_fill, u32 *bits_line)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:497,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - path
    - nbPts
    argTypes:
    - SWFPath*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 494
    functionDepth: 0
    functionLinenumber: 494
    functionLinenumberEnd: 498
    functionName: swf_path_realloc_pts
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void swf_path_realloc_pts(SWFPath *path, u32 nbPts)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:505,1
    - Dst: swf_path_realloc_pts
      Src: /src/gpac/src/scene_manager/swf_parse.c:510,1
    - Dst: swf_path_realloc_pts
      Src: /src/gpac/src/scene_manager/swf_parse.c:517,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 4
    argNames:
    - sr
    - pt
    - ctr
    - type
    argTypes:
    - SWFShapeRec*
    - SFVec2f
    - SFVec2f
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 500
    functionDepth: 1
    functionLinenumber: 500
    functionLinenumberEnd: 523
    functionName: swf_path_add_com
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - swf_path_realloc_pts
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void swf_path_add_com(SWFShapeRec *sr, SFVec2f pt, SFVec2f ctr, u32
      type)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:533,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:534,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/swf_parse.c:549,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/swf_parse.c:559,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/swf_parse.c:568,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:578,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:580,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 48
    argCount: 1
    argNames:
    - path
    argTypes:
    - SWFPath*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 525
    functionDepth: 1
    functionLinenumber: 525
    functionLinenumberEnd: 582
    functionName: swf_referse_path
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_assert
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void swf_referse_path(SWFPath *path)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:586,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:587,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:589,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:590,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:591,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:592,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:594,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - SWFShapeRec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 584
    functionDepth: 0
    functionLinenumber: 584
    functionLinenumberEnd: 595
    functionName: swf_free_shape_rec
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void swf_free_shape_rec(SWFShapeRec *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_parse.c:599,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_parse.c:600,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_parse.c:601,1
    - Dst: swf_free_shape_rec
      Src: /src/gpac/src/scene_manager/swf_parse.c:602,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - recs
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 597
    functionDepth: 1
    functionLinenumber: 597
    functionLinenumberEnd: 604
    functionName: swf_reset_rec_list
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - swf_free_shape_rec
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void swf_reset_rec_list(GF_List *recs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:610,1
    - Dst: memcpy
      Src: /src/gpac/src/scene_manager/swf_parse.c:611,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:614,1
    - Dst: memcpy
      Src: /src/gpac/src/scene_manager/swf_parse.c:615,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - SWFPath*
    - SWFPath*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 606
    functionDepth: 0
    functionLinenumber: 606
    functionLinenumberEnd: 617
    functionName: swf_append_path
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void swf_append_path(SWFPath *a, SWFPath *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:621,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - path
    - val
    argTypes:
    - SWFPath*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 619
    functionDepth: 0
    functionLinenumber: 619
    functionLinenumberEnd: 624
    functionName: swf_path_add_type
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void swf_path_add_type(SWFPath *path, u32 val)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/swf_parse.c:634,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/swf_parse.c:635,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/swf_parse.c:637,1
    - Dst: swf_path_realloc_pts
      Src: /src/gpac/src/scene_manager/swf_parse.c:640,1
    - Dst: swf_path_add_type
      Src: /src/gpac/src/scene_manager/swf_parse.c:643,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_parse.c:644,1
    - Dst: swf_path_realloc_pts
      Src: /src/gpac/src/scene_manager/swf_parse.c:651,1
    - Dst: swf_path_add_type
      Src: /src/gpac/src/scene_manager/swf_parse.c:655,1
    - Dst: swf_path_realloc_pts
      Src: /src/gpac/src/scene_manager/swf_parse.c:659,1
    - Dst: swf_path_add_type
      Src: /src/gpac/src/scene_manager/swf_parse.c:662,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/swf_parse.c:666,1
    - Dst: swf_path_realloc_pts
      Src: /src/gpac/src/scene_manager/swf_parse.c:668,1
    - Dst: swf_path_add_type
      Src: /src/gpac/src/scene_manager/swf_parse.c:671,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_parse.c:672,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_parse.c:679,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_parse.c:680,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_parse.c:682,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_parse.c:683,1
    - Dst: swf_path_realloc_pts
      Src: /src/gpac/src/scene_manager/swf_parse.c:692,1
    - Dst: swf_path_add_type
      Src: /src/gpac/src/scene_manager/swf_parse.c:696,1
    - Dst: swf_path_realloc_pts
      Src: /src/gpac/src/scene_manager/swf_parse.c:700,1
    - Dst: swf_path_add_type
      Src: /src/gpac/src/scene_manager/swf_parse.c:703,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/swf_parse.c:707,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:711,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:712,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:713,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_parse.c:714,1
    - Dst: swf_path_realloc_pts
      Src: /src/gpac/src/scene_manager/swf_parse.c:724,1
    - Dst: swf_path_add_type
      Src: /src/gpac/src/scene_manager/swf_parse.c:728,1
    - Dst: swf_path_realloc_pts
      Src: /src/gpac/src/scene_manager/swf_parse.c:732,1
    - Dst: swf_path_add_type
      Src: /src/gpac/src/scene_manager/swf_parse.c:735,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/swf_parse.c:739,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:743,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:744,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:745,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_parse.c:746,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:753,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:754,1
    - Dst: memset
      Src: /src/gpac/src/scene_manager/swf_parse.c:755,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_parse.c:757,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_parse.c:758,1
    - Dst: swf_append_path
      Src: /src/gpac/src/scene_manager/swf_parse.c:760,1
    - Dst: swf_path_realloc_pts
      Src: /src/gpac/src/scene_manager/swf_parse.c:767,1
    - Dst: swf_path_add_type
      Src: /src/gpac/src/scene_manager/swf_parse.c:771,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scene_manager/swf_parse.c:785,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scene_manager/swf_parse.c:785,1
    - Dst: gf_v2d_len
      Src: /src/gpac/src/scene_manager/swf_parse.c:787,1
    - Dst: gf_v2d_len
      Src: /src/gpac/src/scene_manager/swf_parse.c:788,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scene_manager/swf_parse.c:792,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scene_manager/swf_parse.c:792,1
    - Dst: gf_acos
      Src: /src/gpac/src/scene_manager/swf_parse.c:795,1
    - Dst: ABSDIFF
      Src: /src/gpac/src/scene_manager/swf_parse.c:798,1
    - Dst: swf_path_realloc_pts
      Src: /src/gpac/src/scene_manager/swf_parse.c:808,1
    - Dst: swf_path_add_type
      Src: /src/gpac/src/scene_manager/swf_parse.c:811,1
    - Dst: swf_path_realloc_pts
      Src: /src/gpac/src/scene_manager/swf_parse.c:816,1
    - Dst: swf_path_add_type
      Src: /src/gpac/src/scene_manager/swf_parse.c:819,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:826,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:827,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:828,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_parse.c:829,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:831,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 188
    argCount: 2
    argNames:
    - a
    - read
    argTypes:
    - SWFPath*
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 626
    functionDepth: 2
    functionLinenumber: 626
    functionLinenumberEnd: 832
    functionName: swf_resort_path
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - gf_list_count
    - memset
    - gf_list_new
    - gf_list_get
    - gf_assert
    - swf_append_path
    - gf_list_add
    - gf_mulfix
    - ABSDIFF
    - GF_LOG
    - gf_divfix
    - swf_path_realloc_pts
    - gf_list_del
    - swf_path_add_type
    - gf_v2d_len
    - gf_acos
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void swf_resort_path(SWFPath *a, SWFReader *read)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_parse.c:853,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_parse.c:856,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_parse.c:857,1
    - Dst: swf_referse_path
      Src: /src/gpac/src/scene_manager/swf_parse.c:859,1
    - Dst: swf_append_path
      Src: /src/gpac/src/scene_manager/swf_parse.c:861,1
    - Dst: swf_resort_path
      Src: /src/gpac/src/scene_manager/swf_parse.c:863,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_parse.c:866,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_parse.c:867,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_parse.c:869,1
    - Dst: swf_free_shape_rec
      Src: /src/gpac/src/scene_manager/swf_parse.c:870,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_parse.c:875,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_parse.c:876,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_parse.c:878,1
    - Dst: swf_free_shape_rec
      Src: /src/gpac/src/scene_manager/swf_parse.c:879,1
    - Dst: swf_resort_path
      Src: /src/gpac/src/scene_manager/swf_parse.c:882,1
    - Dst: SWFReader*::define_shape
      Src: /src/gpac/src/scene_manager/swf_parse.c:887,1
    - Dst: swf_reset_rec_list
      Src: /src/gpac/src/scene_manager/swf_parse.c:890,1
    - Dst: swf_reset_rec_list
      Src: /src/gpac/src/scene_manager/swf_parse.c:891,1
    - Dst: swf_reset_rec_list
      Src: /src/gpac/src/scene_manager/swf_parse.c:892,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 31
    argCount: 4
    argNames:
    - read
    - shape
    - font
    - last_shape
    argTypes:
    - SWFReader*
    - SWFShape*
    - SWFFont*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 894
      start: 848
    functionDepth: 3
    functionLinenumber: 848
    functionLinenumberEnd: 894
    functionName: swf_flush_shape
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - swf_reset_rec_list
    - gf_list_get
    - swf_append_path
    - SWFReader*::define_shape
    - gf_list_count
    - swf_resort_path
    - swf_referse_path
    - swf_free_shape_rec
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_flush_shape(SWFReader *read, SWFShape *shape, SWFFont *font,
      Bool last_shape)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/scene_manager/swf_parse.c:908,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/swf_parse.c:909,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/swf_parse.c:910,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/swf_parse.c:911,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:913,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:917,1
    - Dst: swf_get_rec
      Src: /src/gpac/src/scene_manager/swf_parse.c:918,1
    - Dst: swf_parse_styles
      Src: /src/gpac/src/scene_manager/swf_parse.c:919,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:923,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:924,1
    - Dst: swf_new_shape_rec
      Src: /src/gpac/src/scene_manager/swf_parse.c:928,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_parse.c:929,1
    - Dst: swf_new_shape_rec
      Src: /src/gpac/src/scene_manager/swf_parse.c:930,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_parse.c:931,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:944,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:946,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:947,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:948,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:949,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:950,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:957,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:958,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:959,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:961,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:962,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:963,1
    - Dst: swf_flush_shape
      Src: /src/gpac/src/scene_manager/swf_parse.c:968,1
    - Dst: swf_parse_styles
      Src: /src/gpac/src/scene_manager/swf_parse.c:969,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:975,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:976,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_parse.c:979,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_parse.c:980,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_parse.c:981,1
    - Dst: swf_path_add_com
      Src: /src/gpac/src/scene_manager/swf_parse.c:984,1
    - Dst: swf_path_add_com
      Src: /src/gpac/src/scene_manager/swf_parse.c:985,1
    - Dst: swf_path_add_com
      Src: /src/gpac/src/scene_manager/swf_parse.c:986,1
    - Dst: swf_path_add_com
      Src: /src/gpac/src/scene_manager/swf_parse.c:988,1
    - Dst: swf_path_add_com
      Src: /src/gpac/src/scene_manager/swf_parse.c:989,1
    - Dst: swf_path_add_com
      Src: /src/gpac/src/scene_manager/swf_parse.c:990,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:994,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:997,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:998,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:999,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:1000,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:1001,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:1002,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:1003,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:1004,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:1005,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1011,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1012,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:1014,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:1015,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1017,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:1019,1
    - Dst: swf_read_sint
      Src: /src/gpac/src/scene_manager/swf_parse.c:1021,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:1026,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:1027,1
    - Dst: swf_path_add_com
      Src: /src/gpac/src/scene_manager/swf_parse.c:1029,1
    - Dst: swf_path_add_com
      Src: /src/gpac/src/scene_manager/swf_parse.c:1030,1
    - Dst: swf_path_add_com
      Src: /src/gpac/src/scene_manager/swf_parse.c:1031,1
    - Dst: swf_reset_rec_list
      Src: /src/gpac/src/scene_manager/swf_parse.c:1036,1
    - Dst: swf_reset_rec_list
      Src: /src/gpac/src/scene_manager/swf_parse.c:1037,1
    - Dst: swf_reset_rec_list
      Src: /src/gpac/src/scene_manager/swf_parse.c:1038,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:1041,1
    - Dst: swf_flush_shape
      Src: /src/gpac/src/scene_manager/swf_parse.c:1044,1
    - Dst: swf_reset_rec_list
      Src: /src/gpac/src/scene_manager/swf_parse.c:1047,1
    - Dst: swf_reset_rec_list
      Src: /src/gpac/src/scene_manager/swf_parse.c:1048,1
    - Dst: swf_reset_rec_list
      Src: /src/gpac/src/scene_manager/swf_parse.c:1049,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:1050,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:1051,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:1052,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 118
    argCount: 3
    argNames:
    - read
    - font
    - revision
    argTypes:
    - SWFReader*
    - SWFFont*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1055
      start: 896
    functionDepth: 9
    functionLinenumber: 896
    functionLinenumberEnd: 1055
    functionName: swf_parse_shape_def
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - swf_get_16
    - gf_list_new
    - swf_align
    - swf_get_rec
    - gf_list_get
    - swf_path_add_com
    - swf_reset_rec_list
    - swf_parse_styles
    - swf_read_int
    - swf_flush_shape
    - swf_read_sint
    - memset
    - gf_list_add
    - gf_list_del
    - swf_new_shape_rec
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_parse_shape_def(SWFReader *read, SWFFont *font, u32 revision)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_parse.c:1060,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_parse.c:1062,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - read
    - ID
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1066
      start: 1057
    functionDepth: 1
    functionLinenumber: 1057
    functionLinenumberEnd: 1066
    functionName: swf_find_font
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: SWFFont
    signature: SWFFont *swf_find_font(SWFReader *read, u32 ID)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/swf_parse.c:1073,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/swf_parse.c:1077,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_parse.c:1081,1
    - Dst: memset
      Src: /src/gpac/src/scene_manager/swf_parse.c:1083,1
    - Dst: memset
      Src: /src/gpac/src/scene_manager/swf_parse.c:1086,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 3
    argNames:
    - read
    - Depth
    - create
    argTypes:
    - SWFReader*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1090
      start: 1068
    functionDepth: 2
    functionLinenumber: 1068
    functionLinenumberEnd: 1090
    functionName: swf_get_depth_entry
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_list_enum
    - gf_list_add
    - GF_SAFEALLOC
    linkageType: ''
    returnType: DispShape
    signature: DispShape *swf_get_depth_entry(SWFReader *read, u32 Depth, Bool create)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: swf_skip_data
      Src: /src/gpac/src/scene_manager/swf_parse.c:1096,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1098
      start: 1093
    functionDepth: 7
    functionLinenumber: 1093
    functionLinenumberEnd: 1098
    functionName: swf_func_skip
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - swf_skip_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_func_skip(SWFReader *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swf_get_color
      Src: /src/gpac/src/scene_manager/swf_parse.c:1102,1
    - Dst: SWFReader*::set_backcol
      Src: /src/gpac/src/scene_manager/swf_parse.c:1103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1104
      start: 1100
    functionDepth: 7
    functionLinenumber: 1100
    functionLinenumberEnd: 1104
    functionName: swf_set_backcol
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - swf_get_color
    - SWFReader*::set_backcol
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_set_backcol(SWFReader *read)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1109,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1117,1
    - Dst: swf_skip_data
      Src: /src/gpac/src/scene_manager/swf_parse.c:1121,1
    - Dst: memset
      Src: /src/gpac/src/scene_manager/swf_parse.c:1125,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1133,1
    - Dst: SWFReader*::action
      Src: /src/gpac/src/scene_manager/swf_parse.c:1134,1
    - Dst: swf_get_string
      Src: /src/gpac/src/scene_manager/swf_parse.c:1138,1
    - Dst: swf_get_string
      Src: /src/gpac/src/scene_manager/swf_parse.c:1139,1
    - Dst: SWFReader*::action
      Src: /src/gpac/src/scene_manager/swf_parse.c:1140,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1141,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1142,1
    - Dst: DO_ACT
      Src: /src/gpac/src/scene_manager/swf_parse.c:1146,1
    - Dst: DO_ACT
      Src: /src/gpac/src/scene_manager/swf_parse.c:1149,1
    - Dst: DO_ACT
      Src: /src/gpac/src/scene_manager/swf_parse.c:1152,1
    - Dst: DO_ACT
      Src: /src/gpac/src/scene_manager/swf_parse.c:1155,1
    - Dst: DO_ACT
      Src: /src/gpac/src/scene_manager/swf_parse.c:1158,1
    - Dst: DO_ACT
      Src: /src/gpac/src/scene_manager/swf_parse.c:1161,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1165,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1166,1
    - Dst: SWFReader*::action
      Src: /src/gpac/src/scene_manager/swf_parse.c:1167,1
    - Dst: swf_get_string
      Src: /src/gpac/src/scene_manager/swf_parse.c:1172,1
    - Dst: SWFReader*::action
      Src: /src/gpac/src/scene_manager/swf_parse.c:1173,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1174,1
    - Dst: swf_get_string
      Src: /src/gpac/src/scene_manager/swf_parse.c:1179,1
    - Dst: SWFReader*::action
      Src: /src/gpac/src/scene_manager/swf_parse.c:1180,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1181,1
    - Dst: swf_skip_data
      Src: /src/gpac/src/scene_manager/swf_parse.c:1185,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/scene_manager/swf_parse.c:1189,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1191,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 74
    argCount: 3
    argNames:
    - read
    - mask
    - key
    argTypes:
    - SWFReader*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1196
      start: 1106
    functionDepth: 7
    functionLinenumber: 1106
    functionLinenumberEnd: 1196
    functionName: swf_actions
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - swf_get_16
    - swf_get_string
    - swf_read_int
    - DO_ACT
    - gf_bs_is_overflow
    - memset
    - SWFReader*::action
    - swf_skip_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_actions(SWFReader *read, u32 mask, u32 key)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _code
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1114
      start: 1113
    functionDepth: 0
    functionLinenumber: 1113
    functionLinenumberEnd: 1114
    functionName: DO_ACT
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DO_ACT(_code)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/scene_manager/swf_parse.c:1203,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1206,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1208,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1209,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1210,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1214,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1215,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1216,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1217,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1218,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1220,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1221,1
    - Dst: swf_get_matrix
      Src: /src/gpac/src/scene_manager/swf_parse.c:1222,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:1224,1
    - Dst: swf_get_colormatrix
      Src: /src/gpac/src/scene_manager/swf_parse.c:1225,1
    - Dst: gf_cmx_init
      Src: /src/gpac/src/scene_manager/swf_parse.c:1227,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:1228,1
    - Dst: SWFReader*::define_button
      Src: /src/gpac/src/scene_manager/swf_parse.c:1232,1
    - Dst: swf_actions
      Src: /src/gpac/src/scene_manager/swf_parse.c:1234,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1238,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1241,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1244,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1245,1
    - Dst: swf_actions
      Src: /src/gpac/src/scene_manager/swf_parse.c:1248,1
    - Dst: SWFReader*::define_button
      Src: /src/gpac/src/scene_manager/swf_parse.c:1251,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 50
    argCount: 2
    argNames:
    - read
    - revision
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1253
      start: 1198
    functionDepth: 8
    functionLinenumber: 1198
    functionLinenumberEnd: 1253
    functionName: swf_def_button
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - SWFReader*::define_button
    - swf_get_16
    - swf_align
    - swf_read_int
    - swf_get_colormatrix
    - gf_bs_align
    - swf_get_matrix
    - memset
    - swf_actions
    - gf_bs_read_int
    - gf_cmx_init
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_def_button(SWFReader *read, u32 revision)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - mat
    argTypes:
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1264
      start: 1255
    functionDepth: 0
    functionLinenumber: 1255
    functionLinenumberEnd: 1264
    functionName: swf_mat_is_identity
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool swf_mat_is_identity(GF_Matrix2D *mat)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_cmx_init
      Src: /src/gpac/src/scene_manager/swf_parse.c:1287,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scene_manager/swf_parse.c:1288,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1294,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1295,1
    - Dst: swf_get_matrix
      Src: /src/gpac/src/scene_manager/swf_parse.c:1297,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:1299,1
    - Dst: swf_get_colormatrix
      Src: /src/gpac/src/scene_manager/swf_parse.c:1302,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:1304,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1310,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1311,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1312,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1313,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1314,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1315,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1316,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1317,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1319,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1320,1
    - Dst: swf_get_matrix
      Src: /src/gpac/src/scene_manager/swf_parse.c:1322,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:1323,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:1326,1
    - Dst: swf_get_colormatrix
      Src: /src/gpac/src/scene_manager/swf_parse.c:1327,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:1328,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1330,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1331,1
    - Dst: swf_get_string
      Src: /src/gpac/src/scene_manager/swf_parse.c:1334,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1335,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1338,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1339,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:1350,1
    - Dst: SWFReader*::allocate_depth
      Src: /src/gpac/src/scene_manager/swf_parse.c:1355,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:1357,1
    - Dst: swf_get_depth_entry
      Src: /src/gpac/src/scene_manager/swf_parse.c:1364,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:1375,1
    - Dst: swf_get_depth_entry
      Src: /src/gpac/src/scene_manager/swf_parse.c:1380,1
    - Dst: memcpy
      Src: /src/gpac/src/scene_manager/swf_parse.c:1383,1
    - Dst: memcpy
      Src: /src/gpac/src/scene_manager/swf_parse.c:1387,1
    - Dst: swf_mat_is_identity
      Src: /src/gpac/src/scene_manager/swf_parse.c:1395,1
    - Dst: swf_get_depth_entry
      Src: /src/gpac/src/scene_manager/swf_parse.c:1398,1
    - Dst: SWFReader*::place_obj
      Src: /src/gpac/src/scene_manager/swf_parse.c:1399,1
    - Dst: swf_mat_is_identity
      Src: /src/gpac/src/scene_manager/swf_parse.c:1402,1
    - Dst: memcpy
      Src: /src/gpac/src/scene_manager/swf_parse.c:1406,1
    - Dst: memcpy
      Src: /src/gpac/src/scene_manager/swf_parse.c:1407,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:1410,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 110
    argCount: 2
    argNames:
    - read
    - revision
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1412
      start: 1266
    functionDepth: 8
    functionLinenumber: 1266
    functionLinenumberEnd: 1412
    functionName: swf_place_obj
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - swf_get_16
    - SWFReader*::allocate_depth
    - swf_align
    - memcpy
    - swf_get_string
    - swf_read_int
    - swf_get_colormatrix
    - swf_get_matrix
    - swf_get_depth_entry
    - swf_report
    - swf_mat_is_identity
    - SWFReader*::place_obj
    - gf_mx2d_init
    - gf_cmx_init
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_place_obj(SWFReader *read, u32 revision)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1419,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1420,1
    - Dst: swf_get_depth_entry
      Src: /src/gpac/src/scene_manager/swf_parse.c:1421,1
    - Dst: SWFReader*::remove_obj
      Src: /src/gpac/src/scene_manager/swf_parse.c:1424,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - read
    - revision
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1427
      start: 1414
    functionDepth: 7
    functionLinenumber: 1414
    functionLinenumberEnd: 1427
    functionName: swf_remove_obj
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - swf_get_16
    - swf_get_depth_entry
    - SWFReader*::remove_obj
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_remove_obj(SWFReader *read, u32 revision)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SWFReader*::show_frame
      Src: /src/gpac/src/scene_manager/swf_parse.c:1432,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1435
      start: 1429
    functionDepth: 0
    functionLinenumber: 1429
    functionLinenumberEnd: 1435
    functionName: swf_show_frame
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - SWFReader*::show_frame
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_show_frame(SWFReader *read)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/swf_parse.c:1445,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/swf_parse.c:1448,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1449,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_parse.c:1451,1
    - Dst: swf_get_file_pos
      Src: /src/gpac/src/scene_manager/swf_parse.c:1454,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1456,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:1458,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1460,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:1463,1
    - Dst: swf_seek_file_to
      Src: /src/gpac/src/scene_manager/swf_parse.c:1464,1
    - Dst: swf_parse_shape_def
      Src: /src/gpac/src/scene_manager/swf_parse.c:1466,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1468,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1474,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1475,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1476,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1477,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1478,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1479,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1480,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1481,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1482,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1483,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:1484,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1486,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1488,1
    - Dst: swf_get_file_pos
      Src: /src/gpac/src/scene_manager/swf_parse.c:1489,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:1492,1
    - Dst: swf_get_32
      Src: /src/gpac/src/scene_manager/swf_parse.c:1494,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1495,1
    - Dst: swf_get_32
      Src: /src/gpac/src/scene_manager/swf_parse.c:1500,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1502,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:1507,1
    - Dst: swf_seek_file_to
      Src: /src/gpac/src/scene_manager/swf_parse.c:1508,1
    - Dst: swf_parse_shape_def
      Src: /src/gpac/src/scene_manager/swf_parse.c:1511,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1513,1
    - Dst: swf_get_file_pos
      Src: /src/gpac/src/scene_manager/swf_parse.c:1516,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/swf_parse.c:1518,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:1522,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1524,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1525,1
    - Dst: swf_get_s16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1529,1
    - Dst: swf_get_s16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1530,1
    - Dst: swf_get_s16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1531,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:1533,1
    - Dst: swf_get_s16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1534,1
    - Dst: swf_get_rec
      Src: /src/gpac/src/scene_manager/swf_parse.c:1535,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1538,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1541,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1542,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1544,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1545,1
    - Dst: swf_get_s16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1547,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 106
    argCount: 2
    argNames:
    - read
    - revision
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1552
      start: 1437
    functionDepth: 10
    functionLinenumber: 1437
    functionLinenumberEnd: 1552
    functionName: swf_def_font
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - swf_get_16
    - gf_list_new
    - swf_align
    - swf_seek_file_to
    - swf_get_32
    - swf_get_s16
    - GF_SAFEALLOC
    - swf_get_rec
    - GF_LOG
    - swf_read_int
    - swf_get_file_pos
    - gf_list_add
    - swf_parse_shape_def
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_def_font(SWFReader *read, u32 revision)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1560,1
    - Dst: swf_find_font
      Src: /src/gpac/src/scene_manager/swf_parse.c:1561,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:1563,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1567,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1568,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:1569,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1571,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1572,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1573,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1574,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1575,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1576,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1577,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1580,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1581,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:1582,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1585,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1586,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1589
      start: 1554
    functionDepth: 7
    functionLinenumber: 1554
    functionLinenumberEnd: 1589
    functionName: swf_def_font_info
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - swf_get_16
    - swf_find_font
    - swf_read_int
    - swf_report
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_def_font_info(SWFReader *read)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1600,1
    - Dst: swf_get_rec
      Src: /src/gpac/src/scene_manager/swf_parse.c:1601,1
    - Dst: swf_get_matrix
      Src: /src/gpac/src/scene_manager/swf_parse.c:1602,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/swf_parse.c:1603,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:1605,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1606,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1607,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1615,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1619,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:1624,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/swf_parse.c:1628,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_parse.c:1631,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:1638,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:1639,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1641,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:1642,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1642,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:1644,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1650,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1651,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1652,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1653,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1654,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1658,1
    - Dst: swf_get_color
      Src: /src/gpac/src/scene_manager/swf_parse.c:1660,1
    - Dst: swf_get_argb
      Src: /src/gpac/src/scene_manager/swf_parse.c:1661,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:1664,1
    - Dst: swf_get_s16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1664,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:1665,1
    - Dst: swf_get_s16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1665,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1666,1
    - Dst: SWFReader*::define_text
      Src: /src/gpac/src/scene_manager/swf_parse.c:1673,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_parse.c:1677,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_parse.c:1678,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_parse.c:1679,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1680,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1681,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1682,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:1684,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 82
    argCount: 2
    argNames:
    - read
    - revision
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1687
      start: 1591
    functionDepth: 8
    functionLinenumber: 1591
    functionLinenumberEnd: 1687
    functionName: swf_def_text
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - SWFReader*::define_text
    - gf_free
    - swf_get_s16
    - GF_SAFEALLOC
    - gf_list_count
    - swf_get_color
    - swf_get_16
    - gf_list_new
    - swf_align
    - swf_get_argb
    - gf_list_get
    - swf_get_matrix
    - gf_list_add
    - swf_report
    - FLT2FIX
    - swf_read_int
    - gf_malloc
    - gf_list_del
    - swf_get_rec
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_def_text(SWFReader *read, u32 revision)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/scene_manager/swf_parse.c:1697,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1700,1
    - Dst: swf_get_rec
      Src: /src/gpac/src/scene_manager/swf_parse.c:1701,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:1702,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1704,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1705,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1706,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1707,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1708,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1709,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1710,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1711,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1712,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1713,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1714,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1715,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1716,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1717,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1718,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1719,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1722,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:1723,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1723,1
    - Dst: swf_get_argb
      Src: /src/gpac/src/scene_manager/swf_parse.c:1725,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:1726,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1726,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1729,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:1730,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1730,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:1731,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1731,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:1732,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1732,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:1733,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1733,1
    - Dst: swf_get_string
      Src: /src/gpac/src/scene_manager/swf_parse.c:1735,1
    - Dst: swf_get_string
      Src: /src/gpac/src/scene_manager/swf_parse.c:1736,1
    - Dst: SWFReader*::define_edit_text
      Src: /src/gpac/src/scene_manager/swf_parse.c:1740,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1742,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1743,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 48
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1746
      start: 1690
    functionDepth: 8
    functionLinenumber: 1690
    functionLinenumberEnd: 1746
    functionName: swf_def_edit_text
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - swf_get_16
    - gf_free
    - swf_align
    - swf_get_rec
    - swf_get_argb
    - swf_get_string
    - SWFReader*::define_edit_text
    - swf_read_int
    - memset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_def_edit_text(SWFReader *read)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/swf_parse.c:1751,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1752,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1753,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1755
      start: 1748
    functionDepth: 5
    functionLinenumber: 1748
    functionLinenumberEnd: 1755
    functionName: swf_delete_sound_stream
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    linkageType: ''
    returnType: void
    signature: void swf_delete_sound_stream(SWFReader *read)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1767,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1768,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/swf_parse.c:1781,1
    - Dst: SWFReader*::define_sprite
      Src: /src/gpac/src/scene_manager/swf_parse.c:1783,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_parse.c:1785,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_parse.c:1786,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_parse.c:1787,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1788,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:1790,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 27
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1805
      start: 1757
    functionDepth: 7
    functionLinenumber: 1757
    functionLinenumberEnd: 1805
    functionName: swf_def_sprite
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - swf_get_16
    - gf_list_new
    - gf_list_get
    - SWFReader*::define_sprite
    - gf_list_count
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_def_sprite(SWFReader *read)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/swf_parse.c:1810,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1812,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1813,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1814,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1815,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1816,1
    - Dst: swf_get_32
      Src: /src/gpac/src/scene_manager/swf_parse.c:1817,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:1822,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1823,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:1827,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1828,1
    - Dst: snprintf
      Src: /src/gpac/src/scene_manager/swf_parse.c:1838,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/swf_parse.c:1838,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:1840,1
    - Dst: strncpy
      Src: /src/gpac/src/scene_manager/swf_parse.c:1841,1
    - Dst: strncat
      Src: /src/gpac/src/scene_manager/swf_parse.c:1843,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_parse.c:1845,1
    - Dst: gf_fopen
      Src: /src/gpac/src/scene_manager/swf_parse.c:1847,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:1850,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1851,1
    - Dst: swf_read_data
      Src: /src/gpac/src/scene_manager/swf_parse.c:1859,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/scene_manager/swf_parse.c:1862,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1868,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1870,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1871,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_parse.c:1874,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:1878,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1879,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 63
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1883
      start: 1807
    functionDepth: 7
    functionLinenumber: 1807
    functionLinenumberEnd: 1883
    functionName: swf_def_sound
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - swf_get_16
    - gf_malloc
    - gf_strdup
    - swf_get_32
    - swf_read_data
    - snprintf
    - GF_SAFEALLOC
    - swf_read_int
    - gf_fwrite
    - strncat
    - strncpy
    - gf_fopen
    - gf_list_add
    - swf_report
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_def_sound(SWFReader *read)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1896,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1897,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1898,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1899,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1900,1
    - Dst: memset
      Src: /src/gpac/src/scene_manager/swf_parse.c:1902,1
    - Dst: swf_get_32
      Src: /src/gpac/src/scene_manager/swf_parse.c:1904,1
    - Dst: swf_get_32
      Src: /src/gpac/src/scene_manager/swf_parse.c:1905,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1906,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1910,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1912,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1913,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1914,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1918
      start: 1893
    functionDepth: 7
    functionLinenumber: 1893
    functionLinenumberEnd: 1918
    functionName: swf_skip_soundinfo
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - memset
    - swf_get_16
    - swf_get_32
    - swf_read_int
    linkageType: ''
    returnType: SoundInfo
    signature: SoundInfo swf_skip_soundinfo(SWFReader *read)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/swf_parse.c:1925,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - read
    - ID
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1929
      start: 1920
    functionDepth: 2
    functionLinenumber: 1920
    functionLinenumberEnd: 1929
    functionName: sndswf_get_sound
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: SWFSound
    signature: SWFSound *sndswf_get_sound(SWFReader *read, u32 ID)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1934,1
    - Dst: swf_skip_soundinfo
      Src: /src/gpac/src/scene_manager/swf_parse.c:1936,1
    - Dst: sndswf_get_sound
      Src: /src/gpac/src/scene_manager/swf_parse.c:1938,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:1940,1
    - Dst: SWFReader*::setup_sound
      Src: /src/gpac/src/scene_manager/swf_parse.c:1944,1
    - Dst: SWFReader*::start_sound
      Src: /src/gpac/src/scene_manager/swf_parse.c:1948,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1949
      start: 1931
    functionDepth: 8
    functionLinenumber: 1931
    functionLinenumberEnd: 1949
    functionName: swf_start_sound
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - swf_get_16
    - swf_skip_soundinfo
    - swf_report
    - SWFReader*::start_sound
    - SWFReader*::setup_sound
    - sndswf_get_sound
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_start_sound(SWFReader *read)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:1957,1
    - Dst: swf_func_skip
      Src: /src/gpac/src/scene_manager/swf_parse.c:1958,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/swf_parse.c:1961,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1964,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1966,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1968,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1970,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1972,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1974,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:1979,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1980,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:1984,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1985,1
    - Dst: snprintf
      Src: /src/gpac/src/scene_manager/swf_parse.c:1991,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/swf_parse.c:1991,1
    - Dst: snprintf
      Src: /src/gpac/src/scene_manager/swf_parse.c:1993,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/swf_parse.c:1993,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_parse.c:1995,1
    - Dst: SWFReader*::setup_sound
      Src: /src/gpac/src/scene_manager/swf_parse.c:1996,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:1999,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2000,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 39
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2004
      start: 1951
    functionDepth: 8
    functionLinenumber: 1951
    functionLinenumberEnd: 2004
    functionName: swf_soundstream_hdr
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - snprintf
    - GF_SAFEALLOC
    - swf_read_int
    - swf_func_skip
    - swf_report
    - SWFReader*::setup_sound
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_soundstream_hdr(SWFReader *read)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: swf_func_skip
      Src: /src/gpac/src/scene_manager/swf_parse.c:2009,1
    - Dst: swf_func_skip
      Src: /src/gpac/src/scene_manager/swf_parse.c:2017,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:2019,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:2020,1
    - Dst: gf_fopen
      Src: /src/gpac/src/scene_manager/swf_parse.c:2026,1
    - Dst: swf_func_skip
      Src: /src/gpac/src/scene_manager/swf_parse.c:2028,1
    - Dst: SWFReader*::setup_sound
      Src: /src/gpac/src/scene_manager/swf_parse.c:2033,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:2040,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:2044,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:2045,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:2046,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:2047,1
    - Dst: GF_4CC
      Src: /src/gpac/src/scene_manager/swf_parse.c:2048,1
    - Dst: gf_mp3_frame_size
      Src: /src/gpac/src/scene_manager/swf_parse.c:2049,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:2055,1
    - Dst: swf_read_data
      Src: /src/gpac/src/scene_manager/swf_parse.c:2062,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/scene_manager/swf_parse.c:2065,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/scene_manager/swf_parse.c:2066,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2074,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 54
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2077
      start: 2006
    functionDepth: 8
    functionLinenumber: 2006
    functionLinenumberEnd: 2077
    functionName: swf_soundstream_block
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - swf_get_16
    - swf_read_data
    - swf_read_int
    - gf_fwrite
    - swf_func_skip
    - gf_mp3_frame_size
    - gf_fopen
    - GF_4CC
    - SWFReader*::setup_sound
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_soundstream_block(SWFReader *read)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:2083,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:2088,1
    - Dst: swf_read_data
      Src: /src/gpac/src/scene_manager/swf_parse.c:2089,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2092
      start: 2079
    functionDepth: 7
    functionLinenumber: 2079
    functionLinenumberEnd: 2092
    functionName: swf_def_hdr_jpeg
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - swf_read_data
    - gf_malloc
    - swf_report
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_def_hdr_jpeg(SWFReader *read)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:2108,1
    - Dst: swf_get_32
      Src: /src/gpac/src/scene_manager/swf_parse.c:2111,1
    - Dst: snprintf
      Src: /src/gpac/src/scene_manager/swf_parse.c:2121,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/swf_parse.c:2121,1
    - Dst: snprintf
      Src: /src/gpac/src/scene_manager/swf_parse.c:2123,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/swf_parse.c:2123,1
    - Dst: gf_fopen
      Src: /src/gpac/src/scene_manager/swf_parse.c:2127,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/scene_manager/swf_parse.c:2134,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:2137,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:2140,1
    - Dst: swf_read_data
      Src: /src/gpac/src/scene_manager/swf_parse.c:2143,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/scene_manager/swf_parse.c:2147,1
    - Dst: memmove
      Src: /src/gpac/src/scene_manager/swf_parse.c:2156,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/scene_manager/swf_parse.c:2165,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/swf_parse.c:2170,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2173,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/scene_manager/swf_parse.c:2186,1
    - Dst: gf_img_parse
      Src: /src/gpac/src/scene_manager/swf_parse.c:2187,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:2188,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:2191,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2193,1
    - Dst: memset
      Src: /src/gpac/src/scene_manager/swf_parse.c:2196,1
    - Dst: gf_img_jpeg_dec
      Src: /src/gpac/src/scene_manager/swf_parse.c:2197,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:2199,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:2203,1
    - Dst: swf_read_data
      Src: /src/gpac/src/scene_manager/swf_parse.c:2205,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:2208,1
    - Dst: uncompress
      Src: /src/gpac/src/scene_manager/swf_parse.c:2210,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2215,1
    - Dst: snprintf
      Src: /src/gpac/src/scene_manager/swf_parse.c:2219,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/swf_parse.c:2219,1
    - Dst: snprintf
      Src: /src/gpac/src/scene_manager/swf_parse.c:2221,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/swf_parse.c:2221,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:2225,1
    - Dst: gf_img_png_enc
      Src: /src/gpac/src/scene_manager/swf_parse.c:2226,1
    - Dst: gf_fopen
      Src: /src/gpac/src/scene_manager/swf_parse.c:2228,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/scene_manager/swf_parse.c:2229,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/swf_parse.c:2230,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2233,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2236,1
    - Dst: SWFReader*::setup_image
      Src: /src/gpac/src/scene_manager/swf_parse.c:2239,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 100
    argCount: 2
    argNames:
    - read
    - version
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2240
      start: 2095
    functionDepth: 7
    functionLinenumber: 2095
    functionLinenumberEnd: 2240
    functionName: swf_def_bits_jpeg
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_img_png_enc
    - swf_get_32
    - swf_read_data
    - gf_bs_new
    - gf_img_jpeg_dec
    - gf_fwrite
    - memset
    - gf_fopen
    - uncompress
    - gf_realloc
    - swf_get_16
    - gf_img_parse
    - SWFReader*::setup_image
    - snprintf
    - swf_report
    - memmove
    - gf_malloc
    - gf_fclose
    - gf_bs_del
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_def_bits_jpeg(SWFReader *read, u32 version)
  - BBCount: 54
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 109
    argCount: 1
    argNames:
    - tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2353
      start: 2243
    functionDepth: 0
    functionLinenumber: 2243
    functionLinenumberEnd: 2353
    functionName: swf_get_tag_name
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *swf_get_tag_name(u32 tag)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:2358,1
    - Dst: swf_get_tag_name
      Src: /src/gpac/src/scene_manager/swf_parse.c:2358,1
    - Dst: swf_func_skip
      Src: /src/gpac/src/scene_manager/swf_parse.c:2359,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2360
      start: 2355
    functionDepth: 8
    functionLinenumber: 2355
    functionLinenumberEnd: 2360
    functionName: swf_unknown_tag
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - swf_get_tag_name
    - swf_report
    - swf_func_skip
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_unknown_tag(SWFReader *read)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: swf_set_backcol
      Src: /src/gpac/src/scene_manager/swf_parse.c:2370,1
    - Dst: swf_parse_shape_def
      Src: /src/gpac/src/scene_manager/swf_parse.c:2372,1
    - Dst: swf_parse_shape_def
      Src: /src/gpac/src/scene_manager/swf_parse.c:2374,1
    - Dst: swf_parse_shape_def
      Src: /src/gpac/src/scene_manager/swf_parse.c:2376,1
    - Dst: swf_place_obj
      Src: /src/gpac/src/scene_manager/swf_parse.c:2378,1
    - Dst: swf_place_obj
      Src: /src/gpac/src/scene_manager/swf_parse.c:2380,1
    - Dst: swf_remove_obj
      Src: /src/gpac/src/scene_manager/swf_parse.c:2382,1
    - Dst: swf_remove_obj
      Src: /src/gpac/src/scene_manager/swf_parse.c:2384,1
    - Dst: swf_show_frame
      Src: /src/gpac/src/scene_manager/swf_parse.c:2386,1
    - Dst: swf_def_font
      Src: /src/gpac/src/scene_manager/swf_parse.c:2388,1
    - Dst: swf_def_font
      Src: /src/gpac/src/scene_manager/swf_parse.c:2390,1
    - Dst: swf_def_font_info
      Src: /src/gpac/src/scene_manager/swf_parse.c:2392,1
    - Dst: swf_def_text
      Src: /src/gpac/src/scene_manager/swf_parse.c:2394,1
    - Dst: swf_def_text
      Src: /src/gpac/src/scene_manager/swf_parse.c:2396,1
    - Dst: swf_def_edit_text
      Src: /src/gpac/src/scene_manager/swf_parse.c:2398,1
    - Dst: swf_def_sprite
      Src: /src/gpac/src/scene_manager/swf_parse.c:2400,1
    - Dst: swf_soundstream_hdr
      Src: /src/gpac/src/scene_manager/swf_parse.c:2404,1
    - Dst: swf_def_sound
      Src: /src/gpac/src/scene_manager/swf_parse.c:2406,1
    - Dst: swf_start_sound
      Src: /src/gpac/src/scene_manager/swf_parse.c:2408,1
    - Dst: swf_soundstream_block
      Src: /src/gpac/src/scene_manager/swf_parse.c:2410,1
    - Dst: swf_def_button
      Src: /src/gpac/src/scene_manager/swf_parse.c:2413,1
    - Dst: swf_def_button
      Src: /src/gpac/src/scene_manager/swf_parse.c:2415,1
    - Dst: swf_actions
      Src: /src/gpac/src/scene_manager/swf_parse.c:2418,1
    - Dst: swf_get_string
      Src: /src/gpac/src/scene_manager/swf_parse.c:2421,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2422,1
    - Dst: swf_def_hdr_jpeg
      Src: /src/gpac/src/scene_manager/swf_parse.c:2427,1
    - Dst: swf_def_bits_jpeg
      Src: /src/gpac/src/scene_manager/swf_parse.c:2429,1
    - Dst: swf_def_bits_jpeg
      Src: /src/gpac/src/scene_manager/swf_parse.c:2431,1
    - Dst: swf_def_bits_jpeg
      Src: /src/gpac/src/scene_manager/swf_parse.c:2433,1
    - Dst: swf_unknown_tag
      Src: /src/gpac/src/scene_manager/swf_parse.c:2436,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 68
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2438
      start: 2362
    functionDepth: 11
    functionLinenumber: 2362
    functionLinenumberEnd: 2438
    functionName: swf_process_tag
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - swf_remove_obj
    - swf_show_frame
    - swf_def_sound
    - swf_def_sprite
    - swf_soundstream_hdr
    - swf_set_backcol
    - swf_soundstream_block
    - swf_def_bits_jpeg
    - swf_get_string
    - swf_def_hdr_jpeg
    - swf_parse_shape_def
    - swf_place_obj
    - swf_def_button
    - swf_def_font_info
    - swf_unknown_tag
    - swf_def_text
    - swf_def_edit_text
    - swf_def_font
    - swf_actions
    - swf_start_sound
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_process_tag(SWFReader *read)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:2448,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:2452,1
    - Dst: swf_get_32
      Src: /src/gpac/src/scene_manager/swf_parse.c:2453,1
    - Dst: swf_get_file_pos
      Src: /src/gpac/src/scene_manager/swf_parse.c:2455,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/scene_manager/swf_parse.c:2457,1
    - Dst: swf_process_tag
      Src: /src/gpac/src/scene_manager/swf_parse.c:2460,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:2461,1
    - Dst: swf_get_file_pos
      Src: /src/gpac/src/scene_manager/swf_parse.c:2464,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:2466,1
    - Dst: swf_get_tag_name
      Src: /src/gpac/src/scene_manager/swf_parse.c:2466,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/scene_manager/swf_parse.c:2469,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:2478,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2482
      start: 2440
    functionDepth: 12
    functionLinenumber: 2440
    functionLinenumberEnd: 2482
    functionName: swf_parse_tag
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - swf_get_16
    - swf_align
    - swf_get_32
    - gf_set_progress
    - swf_process_tag
    - swf_get_file_pos
    - swf_get_tag_name
    - swf_report
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_parse_tag(SWFReader *read)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: swf_parse_tag
      Src: /src/gpac/src/scene_manager/swf_parse.c:2490,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:2492,1
    - Dst: swf_get_tag_name
      Src: /src/gpac/src/scene_manager/swf_parse.c:2492,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2499
      start: 2486
    functionDepth: 13
    functionLinenumber: 2486
    functionLinenumberEnd: 2499
    functionName: swf_parse_sprite
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 1
    functionsReached:
    - swf_report
    - swf_get_tag_name
    - swf_parse_tag
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_parse_sprite(SWFReader *read)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/scene_manager/swf_parse.c:2505,1
    - Dst: va_start
      Src: /src/gpac/src/scene_manager/swf_parse.c:2508,1
    - Dst: vsnprintf
      Src: /src/gpac/src/scene_manager/swf_parse.c:2509,1
    - Dst: va_end
      Src: /src/gpac/src/scene_manager/swf_parse.c:2510,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/swf_parse.c:2511,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - read
    - e
    - format
    argTypes:
    - SWFReader*
    - GF_Err
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2514
      start: 2502
    functionDepth: 2
    functionLinenumber: 2502
    functionLinenumberEnd: 2514
    functionName: swf_report
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 14
    functionsReached:
    - va_end
    - gf_log_tool_level_on
    - GF_LOG
    - va_start
    - vsnprintf
    linkageType: ''
    returnType: void
    signature: void swf_report(SWFReader *read, GF_Err e, char *format, ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - par
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2521
      start: 2517
    functionDepth: 0
    functionLinenumber: 2517
    functionLinenumberEnd: 2521
    functionName: swf_io_error
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void swf_io_error(void *par)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: swf_parse_tag
      Src: /src/gpac/src/scene_manager/swf_parse.c:2531,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/scene_manager/swf_parse.c:2534,1
    - Dst: SWFReader*::finalize
      Src: /src/gpac/src/scene_manager/swf_parse.c:2538,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:2543,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:2545,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:2547,1
    - Dst: swf_get_tag_name
      Src: /src/gpac/src/scene_manager/swf_parse.c:2547,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2551
      start: 2523
    functionDepth: 13
    functionLinenumber: 2523
    functionLinenumberEnd: 2551
    functionName: gf_sm_load_run_swf
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - SWFReader*::finalize
    - gf_set_progress
    - swf_parse_tag
    - swf_get_tag_name
    - swf_report
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_load_run_swf(GF_SceneLoader *load)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:2556,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2557,1
    - Dst: SWFReader*::finalize
      Src: /src/gpac/src/scene_manager/swf_parse.c:2560,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_parse.c:2563,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_parse.c:2564,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_parse.c:2565,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2566,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:2568,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_parse.c:2569,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_parse.c:2570,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_parse.c:2571,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2572,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2573,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2574,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:2575,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2576,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:2578,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:2579,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_parse.c:2581,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_parse.c:2582,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_parse.c:2583,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/swf_parse.c:2584,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2585,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2586,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:2588,1
    - Dst: swf_delete_sound_stream
      Src: /src/gpac/src/scene_manager/swf_parse.c:2589,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2591,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2592,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/swf_parse.c:2594,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2595,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2596,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 44
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2597
      start: 2553
    functionDepth: 6
    functionLinenumber: 2553
    functionLinenumberEnd: 2597
    functionName: gf_swf_reader_del
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_list_get
    - SWFReader*::finalize
    - gf_bs_del
    - gf_list_count
    - swf_delete_sound_stream
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_swf_reader_del(SWFReader *read)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/swf_parse.c:2604,1
    - Dst: gf_swf_reader_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:2607,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2609
      start: 2599
    functionDepth: 7
    functionLinenumber: 2599
    functionLinenumberEnd: 2609
    functionName: gf_sm_load_done_swf
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_swf_reader_del
    linkageType: ''
    returnType: void
    signature: void gf_sm_load_done_swf(GF_SceneLoader *load)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/src/scene_manager/swf_parse.c:2615,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/swf_parse.c:2618,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_parse.c:2620,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/scene_manager/swf_parse.c:2622,1
    - Dst: gf_bs_set_eos_callback
      Src: /src/gpac/src/scene_manager/swf_parse.c:2623,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/swf_parse.c:2624,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/swf_parse.c:2625,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/swf_parse.c:2626,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/swf_parse.c:2627,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_parse.c:2630,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_parse.c:2633,1
    - Dst: strrchr
      Src: /src/gpac/src/scene_manager/swf_parse.c:2634,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2637,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 2
    argNames:
    - localPath
    - inputName
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2643
      start: 2611
    functionDepth: 1
    functionLinenumber: 2611
    functionLinenumberEnd: 2643
    functionName: gf_swf_reader_new
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_bs_set_eos_callback
    - gf_list_new
    - strrchr
    - GF_SAFEALLOC
    - gf_fopen
    - gf_bs_from_file
    linkageType: ''
    returnType: SWFReader
    signature: SWFReader *gf_swf_reader_new(const char *localPath, const char *inputName)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - read
    - user
    argTypes:
    - SWFReader*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2654
      start: 2645
    functionDepth: 0
    functionLinenumber: 2645
    functionLinenumberEnd: 2654
    functionName: gf_swf_reader_set_user_mode
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err gf_swf_reader_set_user_mode(SWFReader *read, void *user,\n
      \                                  GF_Err (*add_sample)(void *user, const u8
      *data, u32 length, u64 timestamp, Bool isRap),\n                                   GF_Err
      (*add_header)(void *user, const u8 *data, u32 length, Bool isHeader))"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/scene_manager/swf_parse.c:2662,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/scene_manager/swf_parse.c:2663,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/scene_manager/swf_parse.c:2664,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/scene_manager/swf_parse.c:2669,1
    - Dst: swf_get_32
      Src: /src/gpac/src/scene_manager/swf_parse.c:2670,1
    - Dst: swf_init_decompress
      Src: /src/gpac/src/scene_manager/swf_parse.c:2674,1
    - Dst: swf_get_rec
      Src: /src/gpac/src/scene_manager/swf_parse.c:2678,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:2682,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:2683,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:2684,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/swf_parse.c:2685,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2688
      start: 2656
    functionDepth: 8
    functionLinenumber: 2656
    functionLinenumberEnd: 2688
    functionName: gf_swf_read_header
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - swf_get_16
    - swf_align
    - swf_get_rec
    - swf_get_32
    - GF_LOG
    - swf_init_decompress
    - gf_bs_read_u8
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_swf_read_header(SWFReader *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - read
    - frame_rate
    - frame_count
    argTypes:
    - SWFReader*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2695
      start: 2690
    functionDepth: 0
    functionLinenumber: 2690
    functionLinenumberEnd: 2695
    functionName: gf_swf_get_duration
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_swf_get_duration(SWFReader *read, u32 *frame_rate, u32 *frame_count)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/scene_manager/swf_parse.c:2705,1
    - Dst: swf_func_skip
      Src: /src/gpac/src/scene_manager/swf_parse.c:2706,1
    - Dst: swf_def_hdr_jpeg
      Src: /src/gpac/src/scene_manager/swf_parse.c:2707,1
    - Dst: swf_get_tag_name
      Src: /src/gpac/src/scene_manager/swf_parse.c:2708,1
    - Dst: swf_unknown_tag
      Src: /src/gpac/src/scene_manager/swf_parse.c:2709,1
    - Dst: swf_io_error
      Src: /src/gpac/src/scene_manager/swf_parse.c:2710,1
    - Dst: gf_swf_reader_new
      Src: /src/gpac/src/scene_manager/swf_parse.c:2714,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/swf_parse.c:2716,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:2722,1
    - Dst: gf_swf_read_header
      Src: /src/gpac/src/scene_manager/swf_parse.c:2725,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scene_manager/swf_parse.c:2727,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scene_manager/swf_parse.c:2728,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:2732,1
    - Dst: swf_to_bifs_init
      Src: /src/gpac/src/scene_manager/swf_parse.c:2738,1
    - Dst: snprintf
      Src: /src/gpac/src/scene_manager/swf_parse.c:2748,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/swf_parse.c:2748,1
    - Dst: snprintf
      Src: /src/gpac/src/scene_manager/swf_parse.c:2750,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/swf_parse.c:2750,1
    - Dst: gf_fopen
      Src: /src/gpac/src/scene_manager/swf_parse.c:2752,1
    - Dst: gf_swf_reader_set_user_mode
      Src: /src/gpac/src/scene_manager/swf_parse.c:2758,1
    - Dst: swf_to_svg_init
      Src: /src/gpac/src/scene_manager/swf_parse.c:2759,1
    - Dst: swf_parse_tag
      Src: /src/gpac/src/scene_manager/swf_parse.c:2768,1
    - Dst: gf_sm_load_done_swf
      Src: /src/gpac/src/scene_manager/swf_parse.c:2777,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 70
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2779
      start: 2697
    functionDepth: 13
    functionLinenumber: 2697
    functionLinenumberEnd: 2779
    functionName: gf_sm_load_init_swf
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 1
    functionsReached:
    - gf_fopen
    - gf_sm_load_done_swf
    - gf_swf_reader_new
    - gf_sys_is_cov_mode
    - gf_swf_reader_set_user_mode
    - snprintf
    - swf_def_hdr_jpeg
    - swf_report
    - FLT2FIX
    - GF_LOG
    - swf_unknown_tag
    - swf_func_skip
    - swf_io_error
    - swf_to_bifs_init
    - swf_parse_tag
    - gf_swf_read_header
    - FIX2INT
    - swf_get_tag_name
    - swf_to_svg_init
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_load_init_swf(GF_SceneLoader *load)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/scene_manager/loader_svg.c:131,1
    - Dst: va_start
      Src: /src/gpac/src/scene_manager/loader_svg.c:134,1
    - Dst: vsnprintf
      Src: /src/gpac/src/scene_manager/loader_svg.c:135,1
    - Dst: va_end
      Src: /src/gpac/src/scene_manager/loader_svg.c:136,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_svg.c:137,1
    - Dst: gf_xml_sax_get_line
      Src: /src/gpac/src/scene_manager/loader_svg.c:137,1
    - Dst: gf_xml_sax_suspend
      Src: /src/gpac/src/scene_manager/loader_svg.c:142,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - parser
    - e
    - format
    argTypes:
    - GF_SVG_Parser*
    - GF_Err
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 128
    functionDepth: 7
    functionLinenumber: 128
    functionLinenumberEnd: 145
    functionName: svg_report
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_xml_sax_get_line
    - va_end
    - gf_log_tool_level_on
    - GF_LOG
    - va_start
    - gf_xml_sax_suspend
    - vsnprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_report(GF_SVG_Parser *parser, GF_Err e, char *format, ...)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SVG_Parser*::load::is::on_media_event
      Src: /src/gpac/src/scene_manager/loader_svg.c:153,1
    - Dst: GF_SVG_Parser*::load::is::on_media_event
      Src: /src/gpac/src/scene_manager/loader_svg.c:155,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/scene_manager/loader_svg.c:158,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - cbk
    - done
    - total
    argTypes:
    - void*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 147
    functionDepth: 3
    functionLinenumber: 147
    functionLinenumberEnd: 159
    functionName: svg_progress
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - GF_SVG_Parser*::load::is::on_media_event
    - gf_set_progress
    linkageType: ''
    returnType: void
    signature: void svg_progress(void *cbk, u64 done, u64 total)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:167,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 3
    argNames:
    - parser
    - id
    - name
    argTypes:
    - GF_SVG_Parser*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 171
    functionName: svg_saf_get_stream
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: SVG_SAFExternalStream
    signature: SVG_SAFExternalStream *svg_saf_get_stream(GF_SVG_Parser *parser, u32
      id, const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_svg.c:185,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SVG_Parser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 192
    functionName: svg_saf_get_next_available_stream
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: SVG_SAFExternalStream
    signature: SVG_SAFExternalStream *svg_saf_get_next_available_stream(GF_SVG_Parser
      *parser)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_svg.c:198,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_svg.c:199,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 11
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SVG_Parser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 208
    functionName: svg_lsr_set_v2
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void svg_lsr_set_v2(GF_SVG_Parser *parser)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:213,1
    - Dst: svg_saf_get_stream
      Src: /src/gpac/src/scene_manager/loader_svg.c:216,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:217,1
    - Dst: svg_saf_get_stream
      Src: /src/gpac/src/scene_manager/loader_svg.c:218,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:220,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/scene_manager/loader_svg.c:231,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/scene_manager/loader_svg.c:238,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:241,1
    - Dst: gf_svg_delete_attribute_value
      Src: /src/gpac/src/scene_manager/loader_svg.c:253,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:256,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/loader_svg.c:264,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/scene_manager/loader_svg.c:265,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_svg.c:268,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:270,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:271,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:271,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:273,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/loader_svg.c:274,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_svg.c:275,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:276,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:277,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 55
    argCount: 3
    argNames:
    - parser
    - elt
    - iri
    argTypes:
    - GF_SVG_Parser*
    - GF_Node*
    - XMLRI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 211
    functionDepth: 5
    functionLinenumber: 211
    functionLinenumberEnd: 280
    functionName: svg_process_media_href
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_free
    - gf_dom_add_text_node
    - svg_saf_get_stream
    - sprintf
    - gf_base64_encode
    - strnicmp
    - stricmp
    - strchr
    - gf_malloc
    - gf_svg_delete_attribute_value
    - gf_file_load_data
    linkageType: ''
    returnType: void
    signature: void svg_process_media_href(GF_SVG_Parser *parser, GF_Node *elt, XMLRI
      *iri)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_command_apply_list
      Src: /src/gpac/src/scene_manager/loader_svg.c:286,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 3
    argNames:
    - node
    - par
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 282
    functionDepth: 17
    functionLinenumber: 282
    functionLinenumberEnd: 287
    functionName: xsr_exec_command_list
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_sg_command_apply_list
    linkageType: ''
    returnType: void
    signature: void xsr_exec_command_list(GF_Node *node, void *par, Bool is_destroy)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/loader_svg.c:293,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_svg.c:296,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_svg.c:298,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:299,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_svg.c:299,1
    - Dst: gf_xml_sax_peek_node
      Src: /src/gpac/src/scene_manager/loader_svg.c:301,1
    - Dst: gf_xml_get_element_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:304,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:305,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:307,1
    - Dst: gf_svg_parse_element_id
      Src: /src/gpac/src/scene_manager/loader_svg.c:310,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_svg.c:311,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - parser
    - ID
    argTypes:
    - GF_SVG_Parser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 289
    functionDepth: 7
    functionLinenumber: 289
    functionLinenumberEnd: 314
    functionName: svg_find_node
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_xml_sax_peek_node
    - gf_sg_find_node_by_name
    - gf_node_get_name
    - gf_svg_parse_element_id
    - gf_list_count
    - strcmp
    - gf_node_new
    - gf_list_add
    - gf_xml_get_element_tag
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *svg_find_node(GF_SVG_Parser *parser, char *ID)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: svg_process_media_href
      Src: /src/gpac/src/scene_manager/loader_svg.c:321,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_svg.c:328,1
    - Dst: gf_node_store_embedded_data
      Src: /src/gpac/src/scene_manager/loader_svg.c:331,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:333,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 3
    argNames:
    - parser
    - elt
    - iri
    argTypes:
    - GF_SVG_Parser*
    - GF_Node*
    - XMLRI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 316
    functionDepth: 8
    functionLinenumber: 316
    functionLinenumberEnd: 334
    functionName: svg_post_process_href
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - svg_report
    - svg_process_media_href
    - gf_node_store_embedded_data
    linkageType: ''
    returnType: void
    signature: void svg_post_process_href(GF_SVG_Parser *parser, GF_Node *elt, XMLRI
      *iri)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_svg.c:338,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_svg.c:340,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:341,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:342,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:343,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:344,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:345,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:346,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:347,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 2
    argNames:
    - anim
    - deferred_animations
    argTypes:
    - SVG_DeferredAnimation*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 336
    functionDepth: 3
    functionLinenumber: 336
    functionLinenumberEnd: 348
    functionName: svg_delete_deferred_anim
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_free
    - gf_list_del_item
    linkageType: ''
    returnType: void
    signature: void svg_delete_deferred_anim(SVG_DeferredAnimation *anim, GF_List
      *deferred_animations)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/loader_svg.c:364,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:369,1
    - Dst: gf_node_register_iri
      Src: /src/gpac/src/scene_manager/loader_svg.c:373,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:376,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:379,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/scene_manager/loader_svg.c:380,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:401,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:405,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_svg.c:413,1
    - Dst: gf_sg_get_namespace_code
      Src: /src/gpac/src/scene_manager/loader_svg.c:416,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_svg.c:418,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:419,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/src/scene_manager/loader_svg.c:429,1
    - Dst: svg_parse_animation
      Src: /src/gpac/src/scene_manager/loader_svg.c:440,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:442,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_svg.c:442,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:452,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/scene_manager/loader_svg.c:454,1
    - Dst: svg_post_process_href
      Src: /src/gpac/src/scene_manager/loader_svg.c:456,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:461,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/scene_manager/loader_svg.c:463,1
    - Dst: svg_post_process_href
      Src: /src/gpac/src/scene_manager/loader_svg.c:465,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:469,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/scene_manager/loader_svg.c:471,1
    - Dst: svg_post_process_href
      Src: /src/gpac/src/scene_manager/loader_svg.c:473,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:477,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/scene_manager/loader_svg.c:479,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_svg.c:484,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_svg.c:486,1
    - Dst: svg_post_process_href
      Src: /src/gpac/src/scene_manager/loader_svg.c:487,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:497,1
    - Dst: gf_svg_resolve_smil_times
      Src: /src/gpac/src/scene_manager/loader_svg.c:498,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:505,1
    - Dst: gf_svg_resolve_smil_times
      Src: /src/gpac/src/scene_manager/loader_svg.c:506,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:511,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scene_manager/loader_svg.c:512,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 135
    argCount: 5
    argNames:
    - parser
    - sg
    - anim
    - nodeID
    - force_type
    argTypes:
    - GF_SVG_Parser*
    - GF_SceneGraph*
    - SVG_DeferredAnimation*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 350
    functionDepth: 9
    functionLinenumber: 350
    functionLinenumberEnd: 518
    functionName: svg_parse_animation
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 3
    functionsReached:
    - gf_node_get_tag
    - gf_svg_parse_attribute
    - gf_strdup
    - svg_report
    - gf_free
    - svg_parse_animation
    - gf_sg_find_node_by_name
    - gf_node_get_attribute_by_tag
    - gf_node_get_name
    - gf_list_get
    - gf_svg_resolve_smil_times
    - gf_node_init
    - svg_post_process_href
    - gf_node_register_iri
    - gf_list_count
    - gf_node_get_attribute_by_name
    - strchr
    - gf_sg_get_namespace_code
    linkageType: ''
    returnType: Bool
    signature: Bool svg_parse_animation(GF_SVG_Parser *parser, GF_SceneGraph *sg,
      SVG_DeferredAnimation *anim, const char *nodeID, u32 force_type)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_svg.c:525,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_svg.c:528,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:529,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/loader_svg.c:530,1
    - Dst: gf_node_register_iri
      Src: /src/gpac/src/scene_manager/loader_svg.c:534,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:535,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_svg.c:537,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_svg.c:544,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_svg.c:548,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:551,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:554,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/loader_svg.c:555,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:561,1
    - Dst: gf_node_dom_listener_add
      Src: /src/gpac/src/scene_manager/loader_svg.c:571,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_svg.c:573,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_svg.c:575,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_svg.c:581,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_svg.c:583,1
    - Dst: svg_parse_animation
      Src: /src/gpac/src/scene_manager/loader_svg.c:585,1
    - Dst: svg_delete_deferred_anim
      Src: /src/gpac/src/scene_manager/loader_svg.c:586,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 56
    argCount: 3
    argNames:
    - parser
    - sg
    - nodeID
    argTypes:
    - GF_SVG_Parser*
    - GF_SceneGraph*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 591
      start: 520
    functionDepth: 5
    functionLinenumber: 520
    functionLinenumberEnd: 591
    functionName: svg_resolved_refs
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - svg_parse_animation
    - gf_list_get
    - gf_assert
    - gf_sg_find_node_by_name
    - gf_node_get_attribute_by_tag
    - gf_node_register_iri
    - gf_node_dom_listener_add
    - gf_list_count
    - svg_delete_deferred_anim
    - strcmp
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void svg_resolved_refs(GF_SVG_Parser *parser, GF_SceneGraph *sg, const
      char *nodeID)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:598,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:599,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scene_manager/loader_svg.c:602,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scene_manager/loader_svg.c:603,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/scene_manager/loader_svg.c:604,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_svg.c:612,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/src/scene_manager/loader_svg.c:616,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 2
    argNames:
    - parser
    - root_svg
    argTypes:
    - GF_SVG_Parser*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 618
      start: 593
    functionDepth: 5
    functionLinenumber: 593
    functionLinenumberEnd: 618
    functionName: svg_init_root_element
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_sg_set_scene_size_info
    - gf_assert
    - gf_sg_set_root_node
    - gf_node_get_attribute_by_tag
    - FIX2INT
    linkageType: ''
    returnType: void
    signature: void svg_init_root_element(GF_SVG_Parser *parser, SVG_Element *root_svg)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_svg.c:628,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:629,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_svg.c:631,1
    - Dst: gf_sg_add_namespace
      Src: /src/gpac/src/scene_manager/loader_svg.c:636,1
    - Dst: gf_sg_get_namespace_code_from_name
      Src: /src/gpac/src/scene_manager/loader_svg.c:640,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 4
    argNames:
    - parser
    - attributes
    - nb_attributes
    - has_ns
    argTypes:
    - GF_SVG_Parser*
    - GF_XMLAttribute*
    - u32
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 646
      start: 620
    functionDepth: 2
    functionLinenumber: 620
    functionLinenumberEnd: 646
    functionName: svg_check_namespace
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_sg_get_namespace_code_from_name
    - strncmp
    - gf_sg_add_namespace
    - strchr
    - strlen
    linkageType: ''
    returnType: void
    signature: void svg_check_namespace(GF_SVG_Parser *parser, const GF_XMLAttribute
      *attributes, u32 nb_attributes, Bool *has_ns)
  - BBCount: 88
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_svg.c:666,1
    - Dst: svg_check_namespace
      Src: /src/gpac/src/scene_manager/loader_svg.c:670,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_svg.c:674,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:676,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:676,1
    - Dst: gf_sg_get_namespace_code
      Src: /src/gpac/src/scene_manager/loader_svg.c:685,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_svg.c:687,1
    - Dst: gf_xml_sax_get_line
      Src: /src/gpac/src/scene_manager/loader_svg.c:687,1
    - Dst: gf_xml_get_element_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:693,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_svg.c:696,1
    - Dst: gf_xml_sax_get_line
      Src: /src/gpac/src/scene_manager/loader_svg.c:696,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_svg.c:706,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_svg.c:709,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_svg.c:710,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:711,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_svg.c:712,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:724,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_svg.c:732,1
    - Dst: gf_svg_parse_element_id
      Src: /src/gpac/src/scene_manager/loader_svg.c:735,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_svg.c:740,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scene_manager/loader_svg.c:742,1
    - Dst: gf_svg_is_animation_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:747,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_svg.c:748,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_svg.c:755,1
    - Dst: gf_svg_is_timing_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:763,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_svg.c:766,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_svg.c:773,1
    - Dst: svg_init_root_element
      Src: /src/gpac/src/scene_manager/loader_svg.c:795,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_svg.c:802,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_svg.c:807,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:809,1
    - Dst: gf_sg_get_namespace_code
      Src: /src/gpac/src/scene_manager/loader_svg.c:810,1
    - Dst: gf_sg_get_namespace_code
      Src: /src/gpac/src/scene_manager/loader_svg.c:814,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:825,1
    - Dst: gf_svg_parse_style
      Src: /src/gpac/src/scene_manager/loader_svg.c:826,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:833,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_svg.c:835,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:838,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_svg.c:840,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:843,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_svg.c:845,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:848,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_svg.c:850,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:853,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_svg.c:855,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:861,1
    - Dst: gf_svg_is_animation_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:863,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_svg.c:867,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/loader_svg.c:869,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:876,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/scene_manager/loader_svg.c:877,1
    - Dst: svg_post_process_href
      Src: /src/gpac/src/scene_manager/loader_svg.c:881,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:889,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:893,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:902,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:903,1
    - Dst: svg_parse_point
      Src: /src/gpac/src/scene_manager/loader_svg.c:907,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/scene_manager/loader_svg.c:908,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:912,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:913,1
    - Dst: svg_parse_point
      Src: /src/gpac/src/scene_manager/loader_svg.c:917,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/scene_manager/loader_svg.c:918,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:927,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/src/scene_manager/loader_svg.c:928,1
    - Dst: gf_dom_listener_build
      Src: /src/gpac/src/scene_manager/loader_svg.c:930,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/scene_manager/loader_svg.c:931,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_svg.c:931,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scene_manager/loader_svg.c:932,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:935,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/src/scene_manager/loader_svg.c:941,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/scene_manager/loader_svg.c:944,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:946,1
    - Dst: isdigit
      Src: /src/gpac/src/scene_manager/loader_svg.c:957,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:958,1
    - Dst: svg_lsr_set_v2
      Src: /src/gpac/src/scene_manager/loader_svg.c:970,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:979,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:987,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/scene_manager/loader_svg.c:990,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_svg.c:991,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/src/scene_manager/loader_svg.c:994,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:995,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:997,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:999,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:1004,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/scene_manager/loader_svg.c:1005,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:1008,1
    - Dst: gf_node_dom_listener_add
      Src: /src/gpac/src/scene_manager/loader_svg.c:1014,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_svg.c:1016,1
    - Dst: gf_svg_parse_element_id
      Src: /src/gpac/src/scene_manager/loader_svg.c:1026,1
    - Dst: svg_resolved_refs
      Src: /src/gpac/src/scene_manager/loader_svg.c:1028,1
    - Dst: svg_parse_animation
      Src: /src/gpac/src/scene_manager/loader_svg.c:1037,1
    - Dst: svg_delete_deferred_anim
      Src: /src/gpac/src/scene_manager/loader_svg.c:1038,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_svg.c:1040,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scene_manager/loader_svg.c:1050,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/scene_manager/loader_svg.c:1056,1
    - Dst: GF_SVG_Parser*::load::scene_graph::NodeCallback
      Src: /src/gpac/src/scene_manager/loader_svg.c:1059,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:1069,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:1077,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:1085,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:1092,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_svg.c:1098,1
    - Dst: gf_node_dom_listener_add
      Src: /src/gpac/src/scene_manager/loader_svg.c:1101,1
    CyclomaticComplexity: 126
    EdgeCount: 126
    ICount: 304
    argCount: 7
    argNames:
    - parser
    - name
    - name_space
    - attributes
    - nb_attributes
    - parent
    - has_ns
    argTypes:
    - GF_SVG_Parser*
    - char*
    - char*
    - GF_XMLAttribute*
    - u32
    - SVG_NodeStack*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1105
      start: 655
    functionDepth: 9
    functionLinenumber: 655
    functionLinenumberEnd: 1105
    functionName: svg_parse_element
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - svg_init_root_element
    - gf_svg_parse_attribute
    - svg_parse_point
    - gf_dom_listener_build
    - svg_report
    - GF_SAFEALLOC
    - svg_post_process_href
    - gf_mx2d_add_scale
    - gf_list_count
    - gf_node_list_add_child_last
    - gf_node_get_attribute_by_name
    - gf_svg_is_animation_tag
    - strchr
    - svg_check_namespace
    - gf_svg_parse_style
    - svg_lsr_set_v2
    - gf_xml_sax_get_line
    - gf_node_init
    - gf_list_get
    - gf_strdup
    - svg_parse_animation
    - gf_sg_find_node_by_name
    - gf_node_get_name
    - GF_SVG_Parser*::load::scene_graph::NodeCallback
    - gf_dom_add_text_node
    - isdigit
    - strncmp
    - gf_list_add
    - svg_resolved_refs
    - stricmp
    - gf_node_get_attribute_by_tag
    - GF_LOG
    - gf_node_set_private
    - gf_node_new
    - strlen
    - gf_sg_get_namespace_code
    - gf_mx2d_add_translation
    - gf_svg_parse_element_id
    - gf_node_dirty_set
    - gf_dom_event_type_by_name
    - gf_node_dom_listener_add
    - svg_delete_deferred_anim
    - strcmp
    - gf_svg_is_timing_tag
    - gf_xml_get_element_tag
    - gf_node_register
    - gf_list_rem
    linkageType: ''
    returnType: SVG_Element
    signature: SVG_Element *svg_parse_element(GF_SVG_Parser *parser, const char *name,
      const char *name_space, const GF_XMLAttribute *attributes, u32 nb_attributes,
      SVG_NodeStack *parent, Bool *has_ns)
  - BBCount: 60
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1131,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1132,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1133,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_svg.c:1133,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1135,1
    - Dst: svg_find_node
      Src: /src/gpac/src/scene_manager/loader_svg.c:1139,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1140,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1142,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1143,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/src/scene_manager/loader_svg.c:1148,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1149,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1156,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_svg.c:1159,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1167,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1168,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1169,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1170,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1171,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1173,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_svg.c:1173,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1175,1
    - Dst: svg_find_node
      Src: /src/gpac/src/scene_manager/loader_svg.c:1176,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1177,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1179,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1180,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_svg.c:1183,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1186,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1187,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1188,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_svg.c:1192,1
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/scene_manager/loader_svg.c:1194,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_svg.c:1195,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1199,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1199,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1199,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1200,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1204,1
    - Dst: gf_xml_get_attribute_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:1214,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_svg.c:1214,1
    - Dst: gf_xml_get_attribute_type
      Src: /src/gpac/src/scene_manager/loader_svg.c:1215,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/loader_svg.c:1228,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1229,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1231,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1232,1
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/scene_manager/loader_svg.c:1239,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/scene_manager/loader_svg.c:1241,1
    - Dst: svg_process_media_href
      Src: /src/gpac/src/scene_manager/loader_svg.c:1243,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/loader_svg.c:1246,1
    - Dst: gf_xml_get_attribute_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:1248,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_svg.c:1250,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1256,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1258,1
    - Dst: svg_find_node
      Src: /src/gpac/src/scene_manager/loader_svg.c:1261,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1262,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_svg.c:1263,1
    - Dst: svg_lsr_set_v2
      Src: /src/gpac/src/scene_manager/loader_svg.c:1266,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1272,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1273,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1274,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1275,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1276,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1279,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1280,1
    - Dst: svg_find_node
      Src: /src/gpac/src/scene_manager/loader_svg.c:1283,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1284,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_svg.c:1285,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/src/scene_manager/loader_svg.c:1287,1
    - Dst: gf_dom_get_key_type
      Src: /src/gpac/src/scene_manager/loader_svg.c:1291,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_svg.c:1293,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_svg.c:1298,1
    - Dst: svg_parse_point
      Src: /src/gpac/src/scene_manager/loader_svg.c:1302,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scene_manager/loader_svg.c:1303,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scene_manager/loader_svg.c:1304,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 188
    argCount: 3
    argNames:
    - parser
    - attributes
    - nb_attributes
    argTypes:
    - GF_SVG_Parser*
    - GF_XMLAttribute*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1310
      start: 1108
    functionDepth: 8
    functionLinenumber: 1108
    functionLinenumberEnd: 1310
    functionName: lsr_parse_command
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_svg_parse_attribute
    - svg_report
    - svg_parse_point
    - gf_sg_command_field_new
    - atoi
    - gf_node_get_attribute_by_name
    - strchr
    - svg_lsr_set_v2
    - gf_strdup
    - gf_sg_find_node_by_name
    - gf_node_get_id
    - gf_xml_get_attribute_tag
    - svg_find_node
    - gf_xml_get_attribute_type
    - svg_process_media_href
    - gf_dom_event_type_by_name
    - gf_svg_create_attribute_value
    - FIX2INT
    - strcmp
    - gf_node_register
    - gf_dom_get_key_type
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsr_parse_command(GF_SVG_Parser *parser, const GF_XMLAttribute
      *attributes, u32 nb_attributes)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1315,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1316,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1317,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1318,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1319,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1320,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1321,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1322,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1323,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1324,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1325,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1326,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1328
      start: 1313
    functionDepth: 0
    functionLinenumber: 1313
    functionLinenumberEnd: 1328
    functionName: lsr_get_command_by_name
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: u32
    signature: u32 lsr_get_command_by_name(const char *name)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1333,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1335,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1338,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1338,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1339,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_svg.c:1339,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1340,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_svg.c:1340,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1341,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_svg.c:1341,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1342,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_svg.c:1342,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1343,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_svg.c:1343,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1344,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_svg.c:1344,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1345,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1345,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1345,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1346,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1346,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1346,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1347,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_svg.c:1347,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1348,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_svg.c:1348,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1351,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_svg.c:1352,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 35
    argCount: 5
    argNames:
    - parser
    - name
    - name_space
    - attributes
    - nb_attributes
    argTypes:
    - GF_SVG_Parser*
    - char*
    - char*
    - GF_XMLAttribute*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1360
      start: 1330
    functionDepth: 2
    functionLinenumber: 1330
    functionLinenumberEnd: 1360
    functionName: lsr_parse_header
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - gf_odf_desc_esd_new
    - gf_odf_desc_new
    - strcmp
    - atoi
    linkageType: ''
    returnType: GF_ESD
    signature: GF_ESD *lsr_parse_header(GF_SVG_Parser *parser, const char *name, const
      char *name_space, const GF_XMLAttribute *attributes, u32 nb_attributes)
  - BBCount: 95
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_svg.c:1373,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_svg.c:1386,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1387,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1389,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1396,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1398,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_svg.c:1402,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_svg.c:1403,1
    - Dst: svg_check_namespace
      Src: /src/gpac/src/scene_manager/loader_svg.c:1412,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1415,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1417,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1419,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1423,1
    - Dst: lsr_parse_header
      Src: /src/gpac/src/scene_manager/loader_svg.c:1426,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1428,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1433,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1435,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1439,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1441,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_svg.c:1445,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1449,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1455,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_svg.c:1458,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1461,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_svg.c:1461,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1462,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1462,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1465,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1467,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1473,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1473,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1475,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1475,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1486,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1490,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1492,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1496,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1498,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_svg.c:1503,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1510,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_svg.c:1510,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1511,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1512,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_svg.c:1512,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1513,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1514,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_svg.c:1514,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1515,1
    - Dst: GF_4CC
      Src: /src/gpac/src/scene_manager/loader_svg.c:1516,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1518,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_svg.c:1518,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1519,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_svg.c:1519,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1520,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1523,1
    - Dst: svg_saf_get_next_available_stream
      Src: /src/gpac/src/scene_manager/loader_svg.c:1526,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_svg.c:1527,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1530,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1532,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1536,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1538,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_svg.c:1541,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1542,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1544,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_svg.c:1547,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1554,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1556,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_svg.c:1559,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1564,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1566,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_svg.c:1569,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_svg.c:1573,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_svg.c:1579,1
    - Dst: strcat
      Src: /src/gpac/src/scene_manager/loader_svg.c:1580,1
    - Dst: strcat
      Src: /src/gpac/src/scene_manager/loader_svg.c:1581,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_svg.c:1583,1
    - Dst: strcat
      Src: /src/gpac/src/scene_manager/loader_svg.c:1585,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_svg.c:1586,1
    - Dst: gf_fopen
      Src: /src/gpac/src/scene_manager/loader_svg.c:1588,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/loader_svg.c:1590,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/loader_svg.c:1591,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/loader_svg.c:1592,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_svg.c:1594,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1601,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1601,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1610,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_svg.c:1610,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1611,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1612,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1613,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1613,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1614,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_svg.c:1614,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1615,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_svg.c:1615,1
    - Dst: svg_saf_get_stream
      Src: /src/gpac/src/scene_manager/loader_svg.c:1617,1
    - Dst: gf_fopen
      Src: /src/gpac/src/scene_manager/loader_svg.c:1621,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/loader_svg.c:1622,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/loader_svg.c:1623,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/loader_svg.c:1624,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/loader_svg.c:1625,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/loader_svg.c:1626,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/loader_svg.c:1627,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/loader_svg.c:1628,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/loader_svg.c:1629,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1632,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1639,1
    - Dst: svg_saf_get_stream
      Src: /src/gpac/src/scene_manager/loader_svg.c:1641,1
    - Dst: gf_fopen
      Src: /src/gpac/src/scene_manager/loader_svg.c:1645,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/loader_svg.c:1646,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/loader_svg.c:1647,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_svg.c:1651,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1658,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1661,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1663,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1667,1
    - Dst: lsr_get_command_by_name
      Src: /src/gpac/src/scene_manager/loader_svg.c:1672,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:1676,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1678,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_svg.c:1683,1
    - Dst: lsr_parse_command
      Src: /src/gpac/src/scene_manager/loader_svg.c:1689,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/scene_manager/loader_svg.c:1692,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_svg.c:1694,1
    - Dst: gf_dom_add_updates_node
      Src: /src/gpac/src/scene_manager/loader_svg.c:1701,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/scene_manager/loader_svg.c:1704,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_svg.c:1707,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_svg.c:1709,1
    - Dst: gf_sg_reset
      Src: /src/gpac/src/scene_manager/loader_svg.c:1723,1
    - Dst: svg_parse_element
      Src: /src/gpac/src/scene_manager/loader_svg.c:1734,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_svg.c:1740,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_svg.c:1748,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:1750,1
    - Dst: svg_init_root_element
      Src: /src/gpac/src/scene_manager/loader_svg.c:1754,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_svg.c:1757,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_svg.c:1761,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/loader_svg.c:1766,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/loader_svg.c:1768,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/loader_svg.c:1770,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:1776,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_svg.c:1777,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:1778,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_svg.c:1779,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_svg.c:1786,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:1787,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_svg.c:1788,1
    CyclomaticComplexity: 124
    EdgeCount: 124
    ICount: 370
    argCount: 5
    argNames:
    - sax_cbck
    - name
    - name_space
    - attributes
    - nb_attributes
    argTypes:
    - void*
    - char*
    - char*
    - GF_XMLAttribute*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1793
      start: 1363
    functionDepth: 10
    functionLinenumber: 1363
    functionLinenumberEnd: 1793
    functionName: svg_node_start
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - svg_init_root_element
    - gf_free
    - svg_report
    - svg_saf_get_next_available_stream
    - gf_dom_add_updates_node
    - GF_SAFEALLOC
    - strcpy
    - gf_list_count
    - gf_fopen
    - atoi
    - gf_node_set_callback_function
    - gf_odf_com_new
    - gf_node_unregister
    - svg_check_namespace
    - lsr_parse_header
    - gf_sg_command_new
    - strcat
    - gf_list_get
    - gf_strdup
    - gf_fprintf
    - gf_odf_desc_esd_new
    - svg_saf_get_stream
    - gf_sg_command_del
    - gf_odf_desc_new
    - svg_parse_element
    - gf_list_add
    - gf_node_list_add_child
    - lsr_parse_command
    - GF_LOG
    - gf_list_del_item
    - lsr_get_command_by_name
    - gf_list_last
    - gf_sm_stream_au_new
    - gf_fclose
    - gf_sg_reset
    - strcmp
    - GF_4CC
    - gf_sm_stream_new
    linkageType: ''
    returnType: void
    signature: void svg_node_start(void *sax_cbck, const char *name, const char *name_space,
      const GF_XMLAttribute *attributes, u32 nb_attributes)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_svg.c:1921,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_svg.c:1930,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_svg.c:1937,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:1943,1
    - Dst: gf_dom_new_text_node
      Src: /src/gpac/src/scene_manager/loader_svg.c:1948,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_svg.c:1949,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_svg.c:1950,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/loader_svg.c:1954,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/loader_svg.c:1956,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/loader_svg.c:1958,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_svg.c:1981,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_svg.c:1983,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/scene_manager/loader_svg.c:1993,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_svg.c:1993,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scene_manager/loader_svg.c:1995,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 63
    argCount: 3
    argNames:
    - sax_cbck
    - text_content
    - is_cdata
    argTypes:
    - void*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1998
      start: 1917
    functionDepth: 11
    functionLinenumber: 1917
    functionLinenumberEnd: 1998
    functionName: svg_text_content
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_node_list_add_child
    - gf_list_get
    - svg_report
    - gf_list_last
    - gf_strdup
    - gf_dom_add_text_node
    - gf_node_changed
    - gf_node_register
    - strchr
    - gf_dom_new_text_node
    - strlen
    linkageType: ''
    returnType: void
    signature: void svg_text_content(void *sax_cbck, const char *text_content, Bool
      is_cdata)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_svg.c:2014,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:2018,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:2019,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:2020,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:2021,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:2022,1
    - Dst: gf_xml_sax_new
      Src: /src/gpac/src/scene_manager/loader_svg.c:2024,1
    - Dst: gf_sg_add_namespace
      Src: /src/gpac/src/scene_manager/loader_svg.c:2030,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/scene_manager/loader_svg.c:2034,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:2035,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2040
      start: 2000
    functionDepth: 8
    functionLinenumber: 2000
    functionLinenumberEnd: 2040
    functionName: svg_new_parser
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - svg_report
    - GF_SAFEALLOC
    - gf_xml_sax_new
    - gf_sg_add_namespace
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_SVG_Parser
    signature: GF_SVG_Parser *svg_new_parser(GF_SceneLoader *load)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_svg.c:2045,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_svg.c:2046,1
    - Dst: svg_parse_animation
      Src: /src/gpac/src/scene_manager/loader_svg.c:2047,1
    - Dst: svg_delete_deferred_anim
      Src: /src/gpac/src/scene_manager/loader_svg.c:2048,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SVG_Parser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2050
      start: 2042
    functionDepth: 4
    functionLinenumber: 2042
    functionLinenumberEnd: 2050
    functionName: svg_flush_animations
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - svg_parse_animation
    - gf_list_get
    - svg_delete_deferred_anim
    linkageType: ''
    returnType: void
    signature: void svg_flush_animations(GF_SVG_Parser *parser)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_svg.c:2054,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_svg.c:2055,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scene_manager/loader_svg.c:2056,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:2057,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_svg.c:2061,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_svg.c:2062,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scene_manager/loader_svg.c:2063,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_svg.c:2065,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_svg.c:2066,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SVG_Parser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2068
      start: 2052
    functionDepth: 3
    functionLinenumber: 2052
    functionLinenumberEnd: 2068
    functionName: gf_sm_svg_flush_state
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - gf_node_unregister
    - gf_node_register
    - gf_list_last
    - gf_list_rem_last
    linkageType: ''
    returnType: void
    signature: void gf_sm_svg_flush_state(GF_SVG_Parser *parser)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: svg_new_parser
      Src: /src/gpac/src/scene_manager/loader_svg.c:2082,1
    - Dst: gf_xml_sax_init
      Src: /src/gpac/src/scene_manager/loader_svg.c:2086,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:2088,1
    - Dst: gf_xml_sax_get_error
      Src: /src/gpac/src/scene_manager/loader_svg.c:2088,1
    - Dst: svg_new_parser
      Src: /src/gpac/src/scene_manager/loader_svg.c:2094,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_svg.c:2108,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_svg.c:2119,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_svg.c:2121,1
    - Dst: gf_xml_sax_parse
      Src: /src/gpac/src/scene_manager/loader_svg.c:2125,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 49
    argCount: 3
    argNames:
    - load
    - str_data
    - is_fragment
    argTypes:
    - GF_SceneLoader*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2128
      start: 2070
    functionDepth: 9
    functionLinenumber: 2070
    functionLinenumberEnd: 2128
    functionName: gf_sm_load_initialize_svg
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_xml_sax_init
    - svg_report
    - GF_LOG
    - gf_xml_sax_parse
    - gf_list_enum
    - svg_new_parser
    - gf_xml_sax_get_error
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_load_initialize_svg(GF_SceneLoader *load, const char *str_data,
      Bool is_fragment)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sm_load_initialize_svg
      Src: /src/gpac/src/scene_manager/loader_svg.c:2138,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/scene_manager/loader_svg.c:2143,1
    - Dst: gf_xml_sax_parse_file
      Src: /src/gpac/src/scene_manager/loader_svg.c:2144,1
    - Dst: svg_flush_animations
      Src: /src/gpac/src/scene_manager/loader_svg.c:2145,1
    - Dst: gf_sm_svg_flush_state
      Src: /src/gpac/src/scene_manager/loader_svg.c:2146,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:2149,1
    - Dst: gf_xml_sax_get_error
      Src: /src/gpac/src/scene_manager/loader_svg.c:2149,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_svg.c:2150,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/scene_manager/loader_svg.c:2150,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2154
      start: 2131
    functionDepth: 10
    functionLinenumber: 2131
    functionLinenumberEnd: 2154
    functionName: load_svg_run
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - svg_report
    - gf_sm_svg_flush_state
    - GF_LOG
    - gf_sm_load_initialize_svg
    - gf_xml_sax_parse_file
    - svg_flush_animations
    - gf_xml_sax_get_error
    - gf_sys_clock
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err load_svg_run(GF_SceneLoader *load)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sm_svg_flush_state
      Src: /src/gpac/src/scene_manager/loader_svg.c:2162,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_svg.c:2164,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_svg.c:2165,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_svg.c:2166,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_svg.c:2167,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_svg.c:2169,1
    - Dst: gf_xml_sax_del
      Src: /src/gpac/src/scene_manager/loader_svg.c:2171,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:2176,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:2177,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_svg.c:2180,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2182
      start: 2156
    functionDepth: 6
    functionLinenumber: 2156
    functionLinenumberEnd: 2182
    functionName: load_svg_done
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_del
    - gf_xml_sax_del
    - gf_sm_svg_flush_state
    linkageType: ''
    returnType: void
    signature: void load_svg_done(GF_SceneLoader *load)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sm_load_initialize_svg
      Src: /src/gpac/src/scene_manager/loader_svg.c:2190,1
    - Dst: gf_xml_sax_parse
      Src: /src/gpac/src/scene_manager/loader_svg.c:2193,1
    - Dst: svg_report
      Src: /src/gpac/src/scene_manager/loader_svg.c:2195,1
    - Dst: gf_xml_sax_get_error
      Src: /src/gpac/src/scene_manager/loader_svg.c:2195,1
    - Dst: svg_flush_animations
      Src: /src/gpac/src/scene_manager/loader_svg.c:2199,1
    - Dst: load_svg_done
      Src: /src/gpac/src/scene_manager/loader_svg.c:2202,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - load
    - str
    argTypes:
    - GF_SceneLoader*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2205
      start: 2184
    functionDepth: 10
    functionLinenumber: 2184
    functionLinenumberEnd: 2205
    functionName: load_svg_parse_string
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - svg_report
    - gf_sm_load_initialize_svg
    - gf_xml_sax_parse
    - svg_flush_animations
    - gf_xml_sax_get_error
    - load_svg_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err load_svg_parse_string(GF_SceneLoader *load, const char *str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_sax_suspend
      Src: /src/gpac/src/scene_manager/loader_svg.c:2210,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - load
    - suspend
    argTypes:
    - GF_SceneLoader*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2212
      start: 2207
    functionDepth: 7
    functionLinenumber: 2207
    functionLinenumberEnd: 2212
    functionName: load_svg_suspend
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_xml_sax_suspend
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err load_svg_suspend(GF_SceneLoader *load, Bool suspend)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2224
      start: 2215
    functionDepth: 0
    functionLinenumber: 2215
    functionLinenumberEnd: 2224
    functionName: gf_sm_load_init_svg
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_load_init_svg(GF_SceneLoader *load)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/scene_manager/loader_svg.c:2232,1
    - Dst: gf_sm_load_initialize_svg
      Src: /src/gpac/src/scene_manager/loader_svg.c:2236,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_svg.c:2242,1
    - Dst: load_svg_done
      Src: /src/gpac/src/scene_manager/loader_svg.c:2245,1
    - Dst: load_svg_done
      Src: /src/gpac/src/scene_manager/loader_svg.c:2252,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - in_scene
    - node_str
    argTypes:
    - GF_SceneGraph*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2254
      start: 2226
    functionDepth: 10
    functionLinenumber: 2226
    functionLinenumberEnd: 2254
    functionName: gf_sm_load_svg_from_string
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 2
    functionsReached:
    - gf_node_unregister
    - memset
    - gf_sm_load_initialize_svg
    - load_svg_done
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *gf_sm_load_svg_from_string(GF_SceneGraph *in_scene, char *node_str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/scene_manager/loader_qt.c:40,1
    - Dst: va_start
      Src: /src/gpac/src/scene_manager/loader_qt.c:43,1
    - Dst: vsnprintf
      Src: /src/gpac/src/scene_manager/loader_qt.c:44,1
    - Dst: va_end
      Src: /src/gpac/src/scene_manager/loader_qt.c:45,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_qt.c:46,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - load
    - e
    - format
    argTypes:
    - GF_SceneLoader*
    - GF_Err
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 37
    functionDepth: 2
    functionLinenumber: 37
    functionLinenumberEnd: 50
    functionName: gf_qtvr_report
    functionSourceFile: /src/gpac/src/scene_manager/loader_qt.c
    functionUses: 0
    functionsReached:
    - va_end
    - gf_log_tool_level_on
    - GF_LOG
    - va_start
    - vsnprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_qtvr_report(GF_SceneLoader *load, GF_Err e, char *format,
      ...)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_open
      Src: /src/gpac/src/scene_manager/loader_qt.c:71,1
    - Dst: gf_qtvr_report
      Src: /src/gpac/src/scene_manager/loader_qt.c:72,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/scene_manager/loader_qt.c:78,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/scene_manager/loader_qt.c:79,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/scene_manager/loader_qt.c:83,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/scene_manager/loader_qt.c:85,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/scene_manager/loader_qt.c:90,1
    - Dst: gf_isom_delete
      Src: /src/gpac/src/scene_manager/loader_qt.c:100,1
    - Dst: gf_qtvr_report
      Src: /src/gpac/src/scene_manager/loader_qt.c:101,1
    - Dst: gf_isom_delete
      Src: /src/gpac/src/scene_manager/loader_qt.c:104,1
    - Dst: gf_qtvr_report
      Src: /src/gpac/src/scene_manager/loader_qt.c:105,1
    - Dst: gf_isom_delete
      Src: /src/gpac/src/scene_manager/loader_qt.c:108,1
    - Dst: gf_qtvr_report
      Src: /src/gpac/src/scene_manager/loader_qt.c:109,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_qt.c:112,1
    - Dst: gf_qtvr_report
      Src: /src/gpac/src/scene_manager/loader_qt.c:114,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_qt.c:118,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_qt.c:119,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_qt.c:120,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/loader_qt.c:121,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_qt.c:122,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_qt.c:123,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_qt.c:126,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/loader_qt.c:127,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_qt.c:128,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/loader_qt.c:130,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/loader_qt.c:132,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/loader_qt.c:134,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/loader_qt.c:136,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/loader_qt.c:138,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/loader_qt.c:140,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_qt.c:143,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/loader_qt.c:144,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_qt.c:145,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scene_manager/loader_qt.c:146,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/loader_qt.c:147,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_qt.c:148,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_qt.c:151,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/loader_qt.c:152,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/scene_manager/loader_qt.c:153,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_qt.c:154,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/loader_qt.c:161,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/scene_manager/loader_qt.c:163,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/loader_qt.c:168,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_qt.c:169,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_qt.c:171,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_qt.c:172,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_qt.c:174,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_qt.c:175,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/scene_manager/loader_qt.c:177,1
    - Dst: gf_fopen
      Src: /src/gpac/src/scene_manager/loader_qt.c:178,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/scene_manager/loader_qt.c:179,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/loader_qt.c:181,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/scene_manager/loader_qt.c:182,1
    - Dst: gf_isom_delete
      Src: /src/gpac/src/scene_manager/loader_qt.c:184,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 99
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 54
    functionDepth: 5
    functionLinenumber: 54
    functionLinenumberEnd: 186
    functionName: gf_sm_load_init_qt
    functionSourceFile: /src/gpac/src/scene_manager/loader_qt.c
    functionUses: 1
    functionsReached:
    - gf_isom_delete
    - gf_isom_get_sample_count
    - gf_fwrite
    - gf_fopen
    - gf_qtvr_report
    - gf_odf_com_new
    - gf_sg_command_new
    - gf_sg_vrml_mf_alloc
    - gf_strdup
    - gf_odf_desc_esd_new
    - gf_isom_sample_del
    - gf_isom_get_media_subtype
    - sprintf
    - gf_isom_get_track_count
    - gf_odf_desc_new
    - gf_list_add
    - gf_node_register
    - gf_node_list_add_child
    - gf_sg_vrml_mf_reset
    - gf_isom_get_media_type
    - gf_isom_get_sample
    - GF_LOG
    - gf_node_new
    - gf_sm_stream_au_new
    - gf_fclose
    - gf_isom_open
    - gf_isom_get_visual_info
    - gf_sm_stream_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_load_init_qt(GF_SceneLoader *load)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/scene_manager/loader_xmt.c:143,1
    - Dst: va_start
      Src: /src/gpac/src/scene_manager/loader_xmt.c:146,1
    - Dst: vsnprintf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:147,1
    - Dst: va_end
      Src: /src/gpac/src/scene_manager/loader_xmt.c:148,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_xmt.c:149,1
    - Dst: gf_xml_sax_get_line
      Src: /src/gpac/src/scene_manager/loader_xmt.c:149,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - parser
    - e
    - format
    argTypes:
    - GF_XMTParser*
    - GF_Err
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 154
    functionName: xmt_report
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_xml_sax_get_line
    - va_end
    - gf_log_tool_level_on
    - GF_LOG
    - va_start
    - vsnprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err xmt_report(GF_XMTParser *parser, GF_Err e, char *format, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_set_progress
      Src: /src/gpac/src/scene_manager/loader_xmt.c:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - cbk
    - done
    - total
    argTypes:
    - void*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 155
    functionDepth: 3
    functionLinenumber: 155
    functionLinenumberEnd: 158
    functionName: xmt_progress
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_set_progress
    linkageType: ''
    returnType: void
    signature: void xmt_progress(void *cbk, u64 done, u64 total)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:164,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - parser
    - ESID
    argTypes:
    - GF_XMTParser*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 159
    functionDepth: 2
    functionLinenumber: 159
    functionLinenumberEnd: 168
    functionName: xmt_esid_available
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: Bool
    signature: Bool xmt_esid_available(GF_XMTParser *parser, u16 ESID)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:175,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - parser
    - ESID
    argTypes:
    - GF_XMTParser*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 170
    functionDepth: 2
    functionLinenumber: 170
    functionLinenumberEnd: 179
    functionName: xmt_get_es_name
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: char
    signature: char *xmt_get_es_name(GF_XMTParser *parser, u16 ESID)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:187,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:187,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:188,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:188,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:190,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:192,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:193,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:201,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:203,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:206,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:209,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:213,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:217,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_xmt.c:220,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:221,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:222,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:223,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_xmt.c:230,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:233,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:236,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:237,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 53
    argCount: 4
    argNames:
    - parser
    - od
    - name
    - ID
    argTypes:
    - GF_XMTParser*
    - GF_ObjectDescriptor*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 181
    functionDepth: 3
    functionLinenumber: 181
    functionLinenumberEnd: 238
    functionName: xmt_new_od_link
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_strdup
    - gf_list_new
    - sscanf
    - GF_SAFEALLOC
    - sprintf
    - gf_list_count
    - strnicmp
    - atoi
    - strcmp
    - gf_list_rem
    - gf_list_add
    - gf_list_del
    - xmt_report
    linkageType: ''
    returnType: void
    signature: void xmt_new_od_link(GF_XMTParser *parser, GF_ObjectDescriptor *od,
      char *name, u32 ID)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:247,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:247,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:248,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:248,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:250,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:252,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:253,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_xmt.c:263,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:271,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:272,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scene_manager/loader_xmt.c:276,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:276,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_xmt.c:280,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:283,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:284,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:286,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:287,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 40
    argCount: 3
    argNames:
    - parser
    - name
    - url
    argTypes:
    - GF_XMTParser*
    - char*
    - MFURL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 240
    functionDepth: 2
    functionLinenumber: 240
    functionLinenumberEnd: 288
    functionName: xmt_new_od_link_from_node
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_list_new
    - gf_strdup
    - sscanf
    - GF_SAFEALLOC
    - gf_list_find
    - sprintf
    - strnicmp
    - atoi
    - strcmp
    - gf_list_add
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void xmt_new_od_link_from_node(GF_XMTParser *parser, char *name, MFURL
      *url)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:295,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:298,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:306,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:316,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:317,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:317,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_xmt.c:321,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:327,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:327,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:328,1
    - Dst: xmt_esid_available
      Src: /src/gpac/src/scene_manager/loader_xmt.c:332,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:336,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 46
    argCount: 4
    argNames:
    - parser
    - esd
    - desc_name
    - binID
    argTypes:
    - GF_XMTParser*
    - GF_ESD*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 289
    functionDepth: 3
    functionLinenumber: 289
    functionLinenumberEnd: 337
    functionName: xmt_new_esd_link
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - xmt_esid_available
    - strnicmp
    - strcmp
    - atoi
    - gf_list_add
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void xmt_new_esd_link(GF_XMTParser *parser, GF_ESD *esd, char *desc_name,
      u32 binID)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:345,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:348,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:350,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 4
    argNames:
    - parser
    - desc
    - es_name
    - is_ocr_dep
    argTypes:
    - GF_XMTParser*
    - GF_ESD*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 338
    functionDepth: 2
    functionLinenumber: 338
    functionLinenumberEnd: 355
    functionName: xmt_set_depend_id
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_strdup
    linkageType: ''
    returnType: Bool
    signature: Bool xmt_set_depend_id(GF_XMTParser *parser, GF_ESD *desc, char *es_name,
      Bool is_ocr_dep)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:361,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:364,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:366,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 2
    argNames:
    - parser
    - od_name
    argTypes:
    - GF_XMTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 357
    functionDepth: 2
    functionLinenumber: 357
    functionLinenumberEnd: 369
    functionName: xmt_get_od_id
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - strcmp
    - sscanf
    linkageType: ''
    returnType: u32
    signature: u32 xmt_get_od_id(GF_XMTParser *parser, char *od_name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:375,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:378,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:380,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 2
    argNames:
    - parser
    - esd_name
    argTypes:
    - GF_XMTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 371
    functionDepth: 2
    functionLinenumber: 371
    functionLinenumberEnd: 383
    functionName: xmt_get_esd_id
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - strcmp
    - sscanf
    linkageType: ''
    returnType: u32
    signature: u32 xmt_get_esd_id(GF_XMTParser *parser, char *esd_name)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:391,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:392,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:394,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:395,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:396,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:397,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:403,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:404,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:405,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:406,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/loader_xmt.c:410,1
    - Dst: memset
      Src: /src/gpac/src/scene_manager/loader_xmt.c:411,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:413,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:413,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:414,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:415,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 32
    argCount: 2
    argNames:
    - parser
    - stream_name
    argTypes:
    - GF_XMTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 384
    functionDepth: 2
    functionLinenumber: 384
    functionLinenumberEnd: 417
    functionName: xmt_locate_stream
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - sprintf
    - memset
    - strcmp
    - strnicmp
    - atoi
    - gf_list_add
    - gf_list_enum
    - gf_malloc
    linkageType: ''
    returnType: u32
    signature: u32 xmt_locate_stream(GF_XMTParser *parser, char *stream_name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:423,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - parser
    - ODID
    argTypes:
    - GF_XMTParser*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 418
    functionDepth: 2
    functionLinenumber: 418
    functionLinenumberEnd: 428
    functionName: xmt_odid_available
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: Bool
    signature: Bool xmt_odid_available(GF_XMTParser *parser, u16 ODID)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:439,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:441,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_xmt.c:443,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:444,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:445,1
    - Dst: xmt_esid_available
      Src: /src/gpac/src/scene_manager/loader_xmt.c:451,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:458,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:467,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:468,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:469,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:472,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:473,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:483,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:485,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:491,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:500,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:501,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:502,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:505,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:506,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:516,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:518,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:522,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:523,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_xmt.c:524,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:525,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:526,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:530,1
    - Dst: xmt_odid_available
      Src: /src/gpac/src/scene_manager/loader_xmt.c:533,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_xmt.c:538,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:544,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:549,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:553,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:554,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_xmt.c:555,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:556,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_xmt.c:559,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:560,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:561,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:562,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:567,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:568,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:573,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:575,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:581,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:586,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:588,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:589,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:590,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:592,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:600,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:601,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:602,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_xmt.c:603,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 151
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_XMTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 430
    functionDepth: 3
    functionLinenumber: 430
    functionLinenumberEnd: 605
    functionName: xmt_resolve_od_links
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_assert
    - gf_strdup
    - xmt_esid_available
    - sprintf
    - strstr
    - gf_list_count
    - xmt_report
    - strcmp
    - atoi
    - xmt_odid_available
    - gf_list_add
    - stricmp
    - gf_list_del
    - gf_list_enum
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void xmt_resolve_od_links(GF_XMTParser *parser)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:619,1
    - Dst: xmt_remove_link_for_descriptor
      Src: /src/gpac/src/scene_manager/loader_xmt.c:620,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:625,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_xmt.c:634,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:635,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:636,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:637,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:643,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_xmt.c:652,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:653,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:654,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 38
    argCount: 2
    argNames:
    - parser
    - desc
    argTypes:
    - GF_XMTParser*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 608
    functionDepth: 3
    functionLinenumber: 608
    functionLinenumberEnd: 657
    functionName: xmt_remove_link_for_descriptor
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 1
    functionsReached:
    - gf_free
    - xmt_remove_link_for_descriptor
    - gf_list_del_item
    - gf_list_enum
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void xmt_remove_link_for_descriptor(GF_XMTParser* parser, GF_Descriptor*
      desc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_proto_get_graph
      Src: /src/gpac/src/scene_manager/loader_xmt.c:664,1
    - Dst: gf_sg_get_next_available_node_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:665,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_XMTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 669
      start: 660
    functionDepth: 1
    functionLinenumber: 660
    functionLinenumberEnd: 669
    functionName: xmt_get_next_node_id
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_sg_proto_get_graph
    - gf_sg_get_next_available_node_id
    linkageType: ''
    returnType: u32
    signature: u32 xmt_get_next_node_id(GF_XMTParser *parser)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:674,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:678,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:685,1
    - Dst: xmt_get_next_node_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:692,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_xmt.c:694,1
    - Dst: gf_xml_sax_get_line
      Src: /src/gpac/src/scene_manager/loader_xmt.c:694,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:694,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 2
    argNames:
    - parser
    - name
    argTypes:
    - GF_XMTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 697
      start: 670
    functionDepth: 2
    functionLinenumber: 670
    functionLinenumberEnd: 697
    functionName: xmt_get_node_id
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_xml_sax_get_line
    - sscanf
    - gf_sg_find_node
    - gf_node_get_name
    - GF_LOG
    - xmt_get_next_node_id
    - strchr
    linkageType: ''
    returnType: u32
    signature: u32 xmt_get_node_id(GF_XMTParser *parser, char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_x3d_type_by_class_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:705,1
    - Dst: gf_node_mpeg4_type_by_class_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:708,1
    - Dst: gf_node_mpeg4_type_by_class_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:710,1
    - Dst: gf_node_x3d_type_by_class_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:713,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - parser
    - node_name
    argTypes:
    - GF_XMTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 717
      start: 699
    functionDepth: 1
    functionLinenumber: 699
    functionLinenumberEnd: 717
    functionName: xmt_get_node_tag
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_node_x3d_type_by_class_name
    - gf_node_mpeg4_type_by_class_name
    linkageType: ''
    returnType: u32
    signature: u32 xmt_get_node_tag(GF_XMTParser *parser, const char *node_name)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:726,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:729,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:731,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:732,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:732,1
    - Dst: gf_xml_sax_peek_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:734,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scene_manager/loader_xmt.c:742,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:748,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:749,1
    - Dst: gf_sg_proto_create_instance
      Src: /src/gpac/src/scene_manager/loader_xmt.c:752,1
    - Dst: xmt_get_node_tag
      Src: /src/gpac/src/scene_manager/loader_xmt.c:754,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:755,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:757,1
    - Dst: xmt_get_node_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:759,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:760,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scene_manager/loader_xmt.c:761,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:762,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 43
    argCount: 2
    argNames:
    - parser
    - ID
    argTypes:
    - GF_XMTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 719
    functionDepth: 9
    functionLinenumber: 719
    functionLinenumberEnd: 765
    functionName: xmt_find_node
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_init
    - gf_list_get
    - gf_xml_sax_peek_node
    - gf_sg_proto_create_instance
    - xmt_get_node_tag
    - gf_sg_find_node_by_name
    - gf_node_get_name
    - gf_node_set_id
    - gf_list_count
    - strcmp
    - gf_node_new
    - gf_sg_find_proto
    - gf_list_add
    - xmt_get_node_id
    - xmt_report
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *xmt_find_node(GF_XMTParser *parser, char *ID)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:787,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - parser
    - name
    - val
    - a_value
    argTypes:
    - GF_XMTParser*
    - char*
    - SFInt32*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 789
      start: 784
    functionDepth: 0
    functionLinenumber: 784
    functionLinenumberEnd: 789
    functionName: xmt_parse_int
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - atoi
    linkageType: ''
    returnType: u32
    signature: u32 xmt_parse_int(GF_XMTParser *parser, const char *name, SFInt32 *val,
      char *a_value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/loader_xmt.c:793,1
    - Dst: atof
      Src: /src/gpac/src/scene_manager/loader_xmt.c:793,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - parser
    - name
    - val
    - a_value
    argTypes:
    - GF_XMTParser*
    - char*
    - SFFloat*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 790
    functionDepth: 1
    functionLinenumber: 790
    functionLinenumberEnd: 795
    functionName: xmt_parse_float
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - atof
    linkageType: ''
    returnType: u32
    signature: u32 xmt_parse_float(GF_XMTParser *parser, const char *name, SFFloat
      *val, char *a_value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: atof
      Src: /src/gpac/src/scene_manager/loader_xmt.c:799,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - parser
    - name
    - val
    - a_value
    argTypes:
    - GF_XMTParser*
    - char*
    - SFTime*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 801
      start: 796
    functionDepth: 0
    functionLinenumber: 796
    functionLinenumberEnd: 801
    functionName: xmt_parse_time
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - atof
    linkageType: ''
    returnType: u32
    signature: u32 xmt_parse_time(GF_XMTParser *parser, const char *name, SFTime *val,
      char *a_value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:805,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:805,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 4
    argNames:
    - parser
    - name
    - val
    - a_value
    argTypes:
    - GF_XMTParser*
    - char*
    - SFBool*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 810
      start: 802
    functionDepth: 0
    functionLinenumber: 802
    functionLinenumberEnd: 810
    functionName: xmt_parse_bool
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - stricmp
    linkageType: ''
    returnType: u32
    signature: u32 xmt_parse_bool(GF_XMTParser *parser, const char *name, SFBool *val,
      char *a_value)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:824,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:825,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:827,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:839,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_xmt.c:839,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:840,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_xmt.c:840,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_xmt.c:841,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_xmt.c:842,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:845,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:846,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:848,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:852,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:854,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:856,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:856,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:859,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:859,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:866,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:866,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:870,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:872,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:874,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:874,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:875,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 56
    argCount: 5
    argNames:
    - parser
    - name
    - val
    - is_mf
    - a_value
    argTypes:
    - GF_XMTParser*
    - char*
    - SFString*
    - Bool
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 877
      start: 812
    functionDepth: 0
    functionLinenumber: 812
    functionLinenumberEnd: 877
    functionName: xmt_parse_string
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - strcpy
    - strncmp
    - strlen
    linkageType: ''
    returnType: u32
    signature: u32 xmt_parse_string(GF_XMTParser *parser, const char *name, SFString
      *val, Bool is_mf, char *a_value)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmt_parse_string
      Src: /src/gpac/src/scene_manager/loader_xmt.c:887,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_xmt.c:891,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:895,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_xmt.c:902,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:903,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:907,1
    - Dst: xmt_new_od_link_from_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:908,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:909,1
    - Dst: xmt_new_od_link_from_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:910,1
    - Dst: xmt_new_od_link_from_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:912,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 6
    argNames:
    - parser
    - name
    - val
    - owner
    - is_mf
    - a_value
    argTypes:
    - GF_XMTParser*
    - char*
    - MFURL*
    - GF_Node*
    - Bool
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 914
      start: 879
    functionDepth: 3
    functionLinenumber: 879
    functionLinenumberEnd: 914
    functionName: xmt_parse_url
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_assert
    - xmt_parse_string
    - strcpy
    - strstr
    - strnicmp
    - xmt_new_od_link_from_node
    linkageType: ''
    returnType: u32
    signature: u32 xmt_parse_url(GF_XMTParser *parser, const char *name, MFURL *val,
      GF_Node *owner, Bool is_mf, char *a_value)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmt_parse_string
      Src: /src/gpac/src/scene_manager/loader_xmt.c:924,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:927,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 5
    argNames:
    - parser
    - name
    - val
    - is_mf
    - a_value
    argTypes:
    - GF_XMTParser*
    - char*
    - SFScript*
    - Bool
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 930
      start: 917
    functionDepth: 1
    functionLinenumber: 917
    functionLinenumberEnd: 930
    functionName: xmt_parse_script
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - xmt_parse_string
    - gf_free
    linkageType: ''
    returnType: u32
    signature: u32 xmt_parse_script(GF_XMTParser *parser, const char *name, SFScript
      *val, Bool is_mf, char *a_value)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - parser
    - time
    argTypes:
    - GF_XMTParser*
    - Double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 936
      start: 932
    functionDepth: 0
    functionLinenumber: 932
    functionLinenumberEnd: 936
    functionName: xmt_offset_time
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmt_offset_time(GF_XMTParser *parser, Double *time)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_xmt.c:940,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:941,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:941,1
    - Dst: xmt_offset_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:942,1
    - Dst: gf_sg_proto_field_is_sftime_offset
      Src: /src/gpac/src/scene_manager/loader_xmt.c:943,1
    - Dst: xmt_offset_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:944,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 3
    argNames:
    - parser
    - n
    - info
    argTypes:
    - GF_XMTParser*
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 946
      start: 937
    functionDepth: 2
    functionLinenumber: 937
    functionLinenumberEnd: 946
    functionName: xmt_check_time_offset
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - xmt_offset_time
    - gf_sg_proto_field_is_sftime_offset
    - stricmp
    linkageType: ''
    returnType: void
    signature: void xmt_check_time_offset(GF_XMTParser *parser, GF_Node *n, GF_FieldInfo
      *info)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: xmt_parse_int
      Src: /src/gpac/src/scene_manager/loader_xmt.c:953,1
    - Dst: xmt_parse_bool
      Src: /src/gpac/src/scene_manager/loader_xmt.c:956,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:959,1
    - Dst: xmt_parse_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:962,1
    - Dst: xmt_check_time_offset
      Src: /src/gpac/src/scene_manager/loader_xmt.c:963,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:966,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:967,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:968,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:971,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:972,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:975,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:976,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:977,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:980,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:981,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:982,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:983,1
    - Dst: xmt_parse_string
      Src: /src/gpac/src/scene_manager/loader_xmt.c:986,1
    - Dst: gf_sm_update_bitwrapper_buffer
      Src: /src/gpac/src/scene_manager/loader_xmt.c:988,1
    - Dst: xmt_parse_script
      Src: /src/gpac/src/scene_manager/loader_xmt.c:992,1
    - Dst: xmt_parse_int
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1010,1
    - Dst: xmt_parse_int
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1012,1
    - Dst: xmt_parse_int
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1014,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1018,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1019,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1025,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1025,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 106
    argCount: 4
    argNames:
    - parser
    - info
    - n
    - a_value
    argTypes:
    - GF_XMTParser*
    - GF_FieldInfo*
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1061
      start: 948
    functionDepth: 4
    functionLinenumber: 948
    functionLinenumberEnd: 1061
    functionName: xmt_parse_sf_field
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - xmt_parse_time
    - sscanf
    - gf_sm_update_bitwrapper_buffer
    - xmt_parse_string
    - xmt_check_time_offset
    - strstr
    - xmt_parse_script
    - xmt_parse_int
    - xmt_parse_bool
    - xmt_parse_float
    linkageType: ''
    returnType: u32
    signature: u32 xmt_parse_sf_field(GF_XMTParser *parser, GF_FieldInfo *info, GF_Node
      *n, char *a_value)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1067,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1069,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1071,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1079,1
    - Dst: xmt_parse_string
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1084,1
    - Dst: xmt_parse_url
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1086,1
    - Dst: xmt_parse_script
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1088,1
    - Dst: xmt_parse_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1090,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 29
    argCount: 4
    argNames:
    - parser
    - info
    - n
    - value
    argTypes:
    - GF_XMTParser*
    - GF_FieldInfo*
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1098
      start: 1063
    functionDepth: 5
    functionLinenumber: 1063
    functionLinenumberEnd: 1098
    functionName: xmt_parse_mf_field
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_mf_append
    - xmt_parse_string
    - xmt_parse_url
    - xmt_parse_sf_field
    - xmt_parse_script
    - gf_sg_vrml_mf_reset
    - strlen
    linkageType: ''
    returnType: void
    signature: void xmt_parse_mf_field(GF_XMTParser *parser, GF_FieldInfo *info, GF_Node
      *n, char *value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1103,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1105,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1106,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1106,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - parser
    - node_name
    argTypes:
    - GF_XMTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1109
      start: 1100
    functionDepth: 1
    functionLinenumber: 1100
    functionLinenumberEnd: 1109
    functionName: xmt_has_been_def
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    - gf_node_get_name
    linkageType: ''
    returnType: Bool
    signature: Bool xmt_has_been_def(GF_XMTParser *parser, char *node_name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_route_find_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1115,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1118,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1119,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1120,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - parser
    - name
    - del_com
    argTypes:
    - GF_XMTParser*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1125
      start: 1111
    functionDepth: 2
    functionLinenumber: 1111
    functionLinenumberEnd: 1125
    functionName: xmt_get_route
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - strcmp
    - gf_sg_route_find_by_name
    - gf_list_rem
    linkageType: ''
    returnType: u32
    signature: u32 xmt_get_route(GF_XMTParser *parser, char *name, Bool del_com)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_route_find
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1131,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1134,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - parser
    - ID
    argTypes:
    - GF_XMTParser*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1138
      start: 1127
    functionDepth: 2
    functionLinenumber: 1127
    functionLinenumberEnd: 1138
    functionName: xmt_route_id_used
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_sg_route_find
    linkageType: ''
    returnType: Bool
    signature: Bool xmt_route_id_used(GF_XMTParser *parser, u32 ID)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_proto_get_graph
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1143,1
    - Dst: gf_sg_get_next_available_route_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1145,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_XMTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1149
      start: 1139
    functionDepth: 2
    functionLinenumber: 1139
    functionLinenumberEnd: 1149
    functionName: xmt_get_next_route_id
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_sg_proto_get_graph
    - gf_sg_get_next_available_route_id
    linkageType: ''
    returnType: u32
    signature: u32 xmt_get_next_route_id(GF_XMTParser *parser)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1155,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1157,1
    - Dst: xmt_get_route
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1161,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1163,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1167,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1172,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1172,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_XMTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1173
      start: 1151
    functionDepth: 3
    functionLinenumber: 1151
    functionLinenumberEnd: 1173
    functionName: xmt_resolve_routes
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - xmt_get_route
    - gf_list_count
    - gf_list_rem
    - gf_list_last
    - gf_list_rem_last
    - xmt_report
    linkageType: ''
    returnType: void
    signature: void xmt_resolve_routes(GF_XMTParser *parser)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1187,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1188,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1189,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1190,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1191,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1192,1
    - Dst: xmt_find_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1195,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1197,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1201,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1203,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1206,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1213,1
    - Dst: xmt_find_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1217,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1219,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1223,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1224,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1225,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1230,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1235,1
    - Dst: xmt_get_route
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1236,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1238,1
    - Dst: xmt_route_id_used
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1241,1
    - Dst: xmt_get_next_route_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1244,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1250,1
    - Dst: gf_sg_set_max_defined_route_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1252,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1256,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1258,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1262,1
    - Dst: gf_sg_route_set_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1264,1
    - Dst: gf_sg_route_set_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1265,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 85
    argCount: 5
    argNames:
    - parser
    - attributes
    - nb_attributes
    - is_insert
    - com
    argTypes:
    - GF_XMTParser*
    - GF_XMLAttribute*
    - u32
    - Bool
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1267
      start: 1174
    functionDepth: 10
    functionLinenumber: 1174
    functionLinenumberEnd: 1267
    functionName: xmt_parse_route
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - xmt_get_next_route_id
    - gf_strdup
    - gf_sg_set_max_defined_route_id
    - gf_node_get_id
    - gf_node_get_field_by_name
    - strstr
    - xmt_get_route
    - gf_sg_route_new
    - gf_sg_route_set_id
    - strcmp
    - strnicmp
    - atoi
    - gf_sg_route_set_name
    - xmt_find_node
    - strlen
    - xmt_report
    - xmt_route_id_used
    linkageType: ''
    returnType: void
    signature: void xmt_parse_route(GF_XMTParser *parser, const GF_XMLAttribute *attributes,
      u32 nb_attributes, Bool is_insert, GF_Command *com)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1274,1
    - Dst: xmt_offset_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1276,1
    - Dst: xmt_offset_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1277,1
    - Dst: xmt_offset_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1280,1
    - Dst: xmt_offset_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1281,1
    - Dst: xmt_offset_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1284,1
    - Dst: xmt_offset_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1285,1
    - Dst: xmt_offset_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1288,1
    - Dst: xmt_offset_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1289,1
    - Dst: xmt_offset_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1292,1
    - Dst: xmt_offset_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1293,1
    - Dst: xmt_offset_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1296,1
    - Dst: xmt_offset_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1297,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1303,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1305,1
    - Dst: xmt_check_time_offset
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1307,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 2
    argNames:
    - parser
    - node
    argTypes:
    - GF_XMTParser*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1312
      start: 1270
    functionDepth: 3
    functionLinenumber: 1270
    functionLinenumberEnd: 1312
    functionName: xmt_update_timenode
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_node_get_num_fields_in_mode
    - xmt_check_time_offset
    - gf_node_get_field
    - xmt_offset_time
    linkageType: ''
    returnType: void
    signature: void xmt_update_timenode(GF_XMTParser *parser, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strncpy
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1317,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1319,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1319,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - in
    - out
    - out_size
    argTypes:
    - char*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1320
      start: 1314
    functionDepth: 0
    functionLinenumber: 1314
    functionLinenumberEnd: 1320
    functionName: xmt_strip_name
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - strncpy
    - strlen
    linkageType: ''
    returnType: void
    signature: void xmt_strip_name(const char *in, char *out, size_t out_size)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: xmt_strip_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1325,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1325,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1327,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1327,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1328,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1328,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1329,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1329,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1330,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1330,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1331,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1331,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1332,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1332,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1333,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1333,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1334,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1334,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1335,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1335,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1336,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1336,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1337,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1337,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1338,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1338,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1339,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1339,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1340,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1340,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1341,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1341,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1341,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1342,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1342,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1343,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1343,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1344,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1344,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1345,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1345,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1345,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1346,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1346,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1347,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1347,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1348,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1348,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1350,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1351,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1352,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1353,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1354,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1355,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1356,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1357,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 63
    argCount: 1
    argNames:
    - _name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1359
      start: 1322
    functionDepth: 1
    functionLinenumber: 1322
    functionLinenumberEnd: 1359
    functionName: xmt_get_ft_by_name
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - strcmp
    - xmt_strip_name
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: u32
    signature: u32 xmt_get_ft_by_name(const char *_name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmt_strip_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1363,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1363,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1365,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1365,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1366,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1366,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1367,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1367,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 1
    argNames:
    - _name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1369
      start: 1360
    functionDepth: 1
    functionLinenumber: 1360
    functionLinenumberEnd: 1369
    functionName: xmt_get_script_et_by_name
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - strcmp
    - xmt_strip_name
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: u32
    signature: u32 xmt_get_script_et_by_name(const char *_name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmt_strip_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1373,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1373,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1375,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1375,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1376,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1376,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1377,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1377,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1378,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1378,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 11
    argCount: 1
    argNames:
    - _name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1380
      start: 1370
    functionDepth: 1
    functionLinenumber: 1370
    functionLinenumberEnd: 1380
    functionName: xmt_get_et_by_name
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - strcmp
    - xmt_strip_name
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: u32
    signature: u32 xmt_get_et_by_name(const char *_name)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1393,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1394,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1395,1
    - Dst: xmt_get_ft_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1395,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1396,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1396,1
    - Dst: xmt_get_script_et_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1396,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1397,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1397,1
    - Dst: gf_sg_script_field_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1399,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1402,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1406,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1407,1
    - Dst: xmt_parse_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1408,1
    - Dst: xmt_parse_mf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1410,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 27
    argCount: 4
    argNames:
    - parser
    - node
    - attributes
    - nb_attributes
    argTypes:
    - GF_XMTParser*
    - GF_Node*
    - GF_XMLAttribute*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1413
      start: 1382
    functionDepth: 6
    functionLinenumber: 1382
    functionLinenumberEnd: 1413
    functionName: xmt_parse_script_field
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - xmt_parse_mf_field
    - gf_node_get_field_by_name
    - xmt_get_ft_by_name
    - strstr
    - xmt_parse_sf_field
    - strcmp
    - gf_sg_vrml_is_sf_field
    - xmt_get_script_et_by_name
    - strlen
    - xmt_report
    - gf_sg_script_field_new
    linkageType: ''
    returnType: void
    signature: void xmt_parse_script_field(GF_XMTParser *parser, GF_Node *node, const
      GF_XMLAttribute *attributes, u32 nb_attributes)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_proto_get_graph
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1419,1
    - Dst: gf_sg_get_next_available_proto_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1420,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_XMTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1424
      start: 1415
    functionDepth: 2
    functionLinenumber: 1415
    functionLinenumberEnd: 1424
    functionName: xmt_get_next_proto_id
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_sg_proto_get_graph
    - gf_sg_get_next_available_proto_id
    linkageType: ''
    returnType: u32
    signature: u32 xmt_get_next_proto_id(GF_XMTParser *parser)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1436,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1437,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1439,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1440,1
    - Dst: xmt_get_next_proto_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1443,1
    - Dst: gf_sg_proto_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1444,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1445,1
    - Dst: gf_sg_proto_get_graph
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1451,1
    - Dst: xmt_parse_mf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1457,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 27
    argCount: 4
    argNames:
    - parser
    - attributes
    - nb_attributes
    - proto_list
    argTypes:
    - GF_XMTParser*
    - GF_XMLAttribute*
    - u32
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1459
      start: 1426
    functionDepth: 6
    functionLinenumber: 1426
    functionLinenumberEnd: 1459
    functionName: xmt_parse_proto
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - xmt_parse_mf_field
    - gf_sg_proto_get_graph
    - strcmp
    - gf_list_add
    - xmt_get_next_proto_id
    - strlen
    - gf_sg_proto_new
    linkageType: ''
    returnType: void
    signature: void xmt_parse_proto(GF_XMTParser *parser, const GF_XMLAttribute *attributes,
      u32 nb_attributes, GF_List *proto_list)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1463,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1464,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1465,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1466,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1467,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1468,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1469,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1470,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1471,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1472,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1473,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1474,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1475,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1476,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 30
    argCount: 1
    argNames:
    - QP_Type
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1479
      start: 1460
    functionDepth: 0
    functionLinenumber: 1460
    functionLinenumberEnd: 1479
    functionName: xmt_get_protofield_qp_type
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: u32
    signature: u32 xmt_get_protofield_qp_type(const char *QP_Type)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_field_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1484,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1487,1
    - Dst: gf_node_in_table
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1490,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 12
    argCount: 3
    argNames:
    - par
    - n
    - info
    argTypes:
    - GF_Node*
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1493
      start: 1481
    functionDepth: 5
    functionLinenumber: 1481
    functionLinenumberEnd: 1493
    functionName: x3d_get_default_container
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_node_get_field_count
    - gf_node_get_field
    - gf_node_in_table
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err x3d_get_default_container(GF_Node *par, GF_Node *n, GF_FieldInfo
      *info)
  - BBCount: 109
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1509,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1510,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1512,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1513,1
    - Dst: xmt_parse_route
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1514,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1515,1
    - Dst: xmt_parse_route
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1517,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1527,1
    - Dst: xmt_parse_script_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1528,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1531,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1531,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1535,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1535,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1536,1
    - Dst: xmt_parse_proto
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1537,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1542,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1545,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1553,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1555,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1556,1
    - Dst: xmt_get_ft_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1556,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1557,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1557,1
    - Dst: xmt_get_et_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1557,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1558,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1558,1
    - Dst: gf_sg_proto_field_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1560,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1561,1
    - Dst: gf_sg_proto_field_get_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1562,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1563,1
    - Dst: xmt_parse_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1564,1
    - Dst: xmt_parse_mf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1566,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1568,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1574,1
    - Dst: gf_sg_proto_field_get_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1576,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1577,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1584,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1584,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1587,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1587,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1590,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1597,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1598,1
    - Dst: xmt_get_protofield_qp_type
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1598,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1599,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1599,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1600,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1600,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1601,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1601,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1602,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1602,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1603,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1603,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1603,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1606,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1606,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1607,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1610,1
    - Dst: gf_bifs_proto_field_set_aq_info
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1615,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1619,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1623,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1626,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1632,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1633,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1634,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1637,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1641,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1644,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1645,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1651,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1651,1
    - Dst: gf_sg_proto_field_find_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1656,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1658,1
    - Dst: gf_sg_proto_field_get_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1661,1
    - Dst: gf_sg_script_field_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1663,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1664,1
    - Dst: gf_sg_proto_field_set_ised
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1666,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1667,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1667,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1672,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1675,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1681,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1682,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1683,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1683,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1686,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1689,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1691,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1695,1
    - Dst: xmt_parse_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1696,1
    - Dst: xmt_parse_mf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1698,1
    - Dst: gf_sg_proto_mark_field_loaded
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1700,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1701,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1707,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1707,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1715,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1721,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1722,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1725,1
    - Dst: xmt_find_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1730,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1733,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1742,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1748,1
    - Dst: gf_sg_proto_create_instance
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1751,1
    - Dst: xmt_get_node_tag
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1754,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1759,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1769,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1775,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1776,1
    - Dst: xmt_find_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1777,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1778,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1780,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1783,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1784,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1785,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1785,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1788,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1797,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1798,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1804,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1807,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1809,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1825,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1827,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1828,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1831,1
    - Dst: xmt_has_been_def
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1833,1
    - Dst: xmt_get_node_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1834,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1835,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1837,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1838,1
    - Dst: xmt_get_node_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1843,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1849,1
    - Dst: xmt_find_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1852,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1856,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1857,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1858,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1858,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1858,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1862,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1863,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1874,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1876,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1877,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1883,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1883,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1887,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1888,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1889,1
    - Dst: xmt_parse_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1890,1
    - Dst: xmt_parse_mf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1892,1
    - Dst: xmt_update_timenode
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1897,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1900,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1901,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1903,1
    - Dst: gf_node_get_field_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1906,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1907,1
    - Dst: x3d_get_default_container
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1913,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1917,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1926,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1928,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1932,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1933,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1936,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1938,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1943,1
    - Dst: gf_sg_proto_load_code
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1947,1
    CyclomaticComplexity: 173
    EdgeCount: 173
    ICount: 393
    argCount: 6
    argNames:
    - parser
    - name
    - name_space
    - attributes
    - nb_attributes
    - parent
    argTypes:
    - GF_XMTParser*
    - char*
    - char*
    - GF_XMLAttribute*
    - u32
    - XMTNodeStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1950
      start: 1496
    functionDepth: 11
    functionLinenumber: 1496
    functionLinenumberEnd: 1950
    functionName: xmt_parse_element
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_bifs_proto_field_set_aq_info
    - xmt_get_node_tag
    - gf_node_get_class_name
    - GF_SAFEALLOC
    - gf_sg_command_field_new
    - gf_node_list_add_child_last
    - atoi
    - gf_sg_find_proto
    - gf_sg_proto_mark_field_loaded
    - gf_node_get_field
    - xmt_get_node_id
    - gf_node_unregister
    - gf_sg_proto_load_code
    - gf_sg_command_new
    - gf_node_init
    - gf_list_new
    - xmt_parse_proto
    - gf_sg_proto_create_instance
    - gf_assert
    - gf_sg_vrml_get_sf_type
    - gf_sg_find_node_by_name
    - xmt_parse_route
    - gf_node_set_id
    - strncmp
    - gf_list_add
    - gf_sg_vrml_is_sf_field
    - gf_sg_proto_field_set_ised
    - x3d_get_default_container
    - xmt_get_protofield_qp_type
    - xmt_get_et_by_name
    - gf_sg_script_field_new
    - gf_sg_vrml_mf_append
    - gf_sg_proto_field_find_by_name
    - xmt_has_been_def
    - xmt_get_ft_by_name
    - strstr
    - gf_node_new
    - gf_list_del_item
    - gf_error_to_string
    - gf_node_changed
    - gf_list_last
    - strlen
    - xmt_parse_float
    - gf_node_get_field_count
    - gf_sg_proto_field_new
    - xmt_update_timenode
    - xmt_parse_mf_field
    - xmt_parse_script_field
    - gf_node_get_field_by_name
    - xmt_parse_sf_field
    - strcmp
    - gf_sg_proto_field_get_field
    - gf_node_register
    - xmt_find_node
    - xmt_report
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *xmt_parse_element(GF_XMTParser *parser, char *name, const
      char *name_space, const GF_XMLAttribute *attributes, u32 nb_attributes, XMTNodeStack
      *parent)
  - BBCount: 52
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_get_tag_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1961,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1968,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1969,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1970,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1971,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1975,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1976,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1980,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1984,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1988,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1992,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1993,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2004,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2010,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2011,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2011,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2012,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2013,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2014,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2015,1
    - Dst: gf_odf_set_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2017,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2018,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2020,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2020,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2023,1
    - Dst: xmt_new_od_link
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2029,1
    - Dst: xmt_new_esd_link
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2031,1
    - Dst: xmt_set_depend_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2034,1
    - Dst: xmt_set_depend_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2035,1
    - Dst: gf_odf_desc_add_desc
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2049,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2051,1
    - Dst: xmt_remove_link_for_descriptor
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2052,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2053,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2070,1
    - Dst: xmt_get_es_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2076,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2077,1
    CyclomaticComplexity: 65
    EdgeCount: 65
    ICount: 134
    argCount: 5
    argNames:
    - parser
    - name
    - attributes
    - nb_attributes
    - parent
    argTypes:
    - GF_XMTParser*
    - char*
    - GF_XMLAttribute*
    - u32
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2085
      start: 1953
    functionDepth: 4
    functionLinenumber: 1953
    functionLinenumberEnd: 2085
    functionName: xmt_parse_descriptor
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - stricmp
    - gf_strdup
    - xmt_new_esd_link
    - gf_odf_desc_del
    - gf_sm_stream_new
    - xmt_remove_link_for_descriptor
    - xmt_new_od_link
    - gf_odf_desc_new
    - strcmp
    - atoi
    - xmt_set_depend_id
    - gf_odf_get_tag_by_name
    - xmt_get_es_name
    - gf_odf_set_field
    - strlen
    - xmt_report
    - gf_odf_desc_add_desc
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *xmt_parse_descriptor(GF_XMTParser *parser, char *name,
      const GF_XMLAttribute *attributes, u32 nb_attributes, GF_Descriptor *parent)
  - BBCount: 143
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2093,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2100,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2104,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2105,1
    - Dst: atof
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2105,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2106,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2106,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2107,1
    - Dst: xmt_locate_stream
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2108,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2109,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2115,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2117,1
    - Dst: xmt_parse_route
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2121,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2122,1
    - Dst: xmt_parse_route
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2124,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2127,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2128,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2134,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2140,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2141,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2142,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2148,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2150,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2150,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2153,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2159,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2162,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2164,1
    - Dst: xmt_parse_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2165,1
    - Dst: xmt_parse_mf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2167,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2172,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2178,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2179,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2180,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2181,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2182,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2184,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2186,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2188,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2194,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2196,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2197,1
    - Dst: xmt_parse_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2200,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2207,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2207,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2207,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2231,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2232,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2232,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2233,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2233,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2234,1
    - Dst: xmt_locate_stream
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2235,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2237,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2241,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2242,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2243,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2244,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2245,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2246,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2247,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2248,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2249,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2250,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2251,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2252,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2253,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2254,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2266,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2267,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2268,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2270,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2279,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2283,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2287,1
    - Dst: xmt_find_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2290,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2292,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2296,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2298,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2304,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2305,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2307,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2310,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2311,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2312,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2315,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2319,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2323,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2327,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2331,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2332,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2333,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2333,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2334,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2338,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2341,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2348,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2352,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2354,1
    - Dst: gf_sm_stream_find
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2357,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2360,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2361,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2362,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2367,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2373,1
    - Dst: xmt_find_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2377,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2380,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2381,1
    - Dst: floor
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2392,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2392,1
    - Dst: floor
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2395,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2401,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2403,1
    - Dst: gf_sg_proto_get_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2405,1
    - Dst: gf_node_get_proto
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2405,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2409,1
    - Dst: xmt_find_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2417,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2420,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2421,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2426,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2429,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2431,1
    - Dst: xmt_parse_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2432,1
    - Dst: xmt_parse_mf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2434,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2437,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2440,1
    - Dst: xmt_parse_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2442,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2456,1
    - Dst: xmt_get_route
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2463,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2465,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2467,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2471,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2478,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2480,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2481,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2481,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2483,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2485,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2499,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2499,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2500,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2500,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2501,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2501,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2515,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2516,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2516,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2517,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2517,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2518,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2519,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2526,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2527,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2528,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2529,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2533,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2537,1
    - Dst: gf_sm_stream_find
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2539,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2541,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2542,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2543,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2544,1
    - Dst: xmt_get_od_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2549,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2552,1
    - Dst: xmt_get_esd_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2554,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2555,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2557,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2571,1
    - Dst: xmt_get_od_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2573,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2574,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2576,1
    CyclomaticComplexity: 191
    EdgeCount: 191
    ICount: 472
    argCount: 4
    argNames:
    - parser
    - name
    - attributes
    - nb_attributes
    argTypes:
    - GF_XMTParser*
    - char*
    - GF_XMLAttribute*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2586
      start: 2087
    functionDepth: 11
    functionLinenumber: 2087
    functionLinenumberEnd: 2586
    functionName: xmt_parse_command
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - xmt_get_esd_id
    - gf_node_get_class_name
    - gf_list_find
    - gf_sg_command_field_new
    - xmt_get_route
    - xmt_locate_stream
    - gf_list_count
    - atoi
    - gf_node_get_field
    - gf_sg_find_proto
    - gf_node_unregister
    - gf_odf_com_new
    - strchr
    - gf_sg_command_new
    - FIX2FLT
    - gf_realloc
    - gf_strdup
    - gf_list_pop_back
    - gf_sg_vrml_get_sf_type
    - atof
    - xmt_parse_route
    - gf_node_get_id
    - gf_list_add
    - gf_sg_vrml_is_sf_field
    - gf_node_register
    - floor
    - stricmp
    - xmt_get_od_id
    - gf_sm_stream_find
    - gf_node_list_get_child
    - gf_sg_proto_get_id
    - gf_sg_vrml_field_pointer_new
    - strlen
    - gf_sm_stream_au_new
    - xmt_parse_mf_field
    - gf_node_get_field_by_name
    - xmt_parse_sf_field
    - strcmp
    - gf_node_get_proto
    - gf_sm_stream_new
    - xmt_find_node
    - xmt_report
    linkageType: ''
    returnType: void
    signature: void xmt_parse_command(GF_XMTParser *parser, const char *name, const
      GF_XMLAttribute *attributes, u32 nb_attributes)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_sax_suspend
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2595,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2603,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2604,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2606,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2608,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2619,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2621,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2623,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2631,1
    - Dst: xmt_parse_descriptor
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2632,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2633,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2637,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2647,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2649,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2655,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2658,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2666,1
    - Dst: xmt_parse_descriptor
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2667,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2668,1
    - Dst: xmt_parse_command
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2670,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2679,1
    - Dst: xmt_parse_element
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2682,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2684,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2688,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2693,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 87
    argCount: 5
    argNames:
    - sax_cbck
    - name
    - name_space
    - attributes
    - nb_attributes
    argTypes:
    - void*
    - char*
    - char*
    - GF_XMLAttribute*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2695
      start: 2588
    functionDepth: 12
    functionLinenumber: 2588
    functionLinenumberEnd: 2695
    functionName: xmt_node_start
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_sg_set_scene_size_info
    - gf_list_new
    - GF_SAFEALLOC
    - gf_xml_sax_suspend
    - xmt_parse_command
    - strcmp
    - gf_list_add
    - gf_node_register
    - gf_list_last
    - xmt_parse_descriptor
    - xmt_parse_element
    linkageType: ''
    returnType: void
    signature: void xmt_node_start(void *sax_cbck, const char *name, const char *name_space,
      const GF_XMLAttribute *attributes, u32 nb_attributes)
  - BBCount: 87
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2706,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2710,1
    - Dst: gf_odf_get_tag_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2711,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2716,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2721,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2722,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2728,1
    - Dst: xmt_remove_link_for_descriptor
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2730,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2731,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2736,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2741,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2749,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2751,1
    - Dst: xmt_get_node_tag
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2754,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2755,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2756,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2757,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2758,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2761,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2763,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2769,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2772,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2773,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2773,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2773,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2777,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2781,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2781,1
    - Dst: xmt_resolve_routes
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2783,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2788,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2790,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2794,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2796,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2798,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2801,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2801,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2801,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2806,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2815,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2821,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2821,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2822,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2822,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2823,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2823,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2827,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2834,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2836,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2838,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2840,1
    - Dst: gf_sg_script_load
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2841,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2843,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2848,1
    - Dst: xmt_get_node_tag
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2853,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2856,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2868,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2868,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2868,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2882,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2882,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2889,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2890,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2891,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2893,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2893,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2897,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2898,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2900,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2906,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2907,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2910,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2919,1
    - Dst: gf_sg_proto_add_node_code
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2925,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2926,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2929,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2931,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2932,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2933,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2944,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2946,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2952,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2959,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2962,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2967,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2969,1
    - Dst: gf_sg_proto_add_node_code
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2977,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2978,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2982,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2983,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2984,1
    - Dst: gf_sg_proto_add_node_code
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2992,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2993,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2995,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2997,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2998,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2999,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3009,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3011,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3012,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3013,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3029,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3030,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3034,1
    - Dst: gf_sg_script_load
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3036,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3043,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3044,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3048,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3049,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3051,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3051,1
    CyclomaticComplexity: 131
    EdgeCount: 131
    ICount: 304
    argCount: 3
    argNames:
    - sax_cbck
    - name
    - name_space
    argTypes:
    - void*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3053
      start: 2697
    functionDepth: 9
    functionLinenumber: 2697
    functionLinenumberEnd: 3053
    functionName: xmt_node_end
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - xmt_resolve_routes
    - xmt_get_node_tag
    - gf_node_get_class_name
    - gf_odf_desc_del
    - GF_SAFEALLOC
    - gf_sg_command_field_new
    - gf_list_count
    - gf_node_unregister
    - gf_node_init
    - gf_assert
    - gf_list_new
    - gf_list_add
    - gf_sg_proto_add_node_code
    - gf_odf_get_tag_by_name
    - gf_sg_get_root_node
    - gf_node_list_add_child
    - gf_list_rem_last
    - GF_LOG
    - gf_sg_script_load
    - gf_node_new
    - gf_list_del_item
    - gf_list_last
    - gf_list_del
    - gf_sg_set_root_node
    - gf_sm_stream_new
    - xmt_remove_link_for_descriptor
    - strcmp
    - gf_node_register
    - xmt_report
    linkageType: ''
    returnType: void
    signature: void xmt_node_end(void *sax_cbck, const char *name, const char *name_space)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3061,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3067,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3071,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3079,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3080,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3081,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 3
    argNames:
    - sax_cbck
    - text_content
    - is_cdata
    argTypes:
    - void*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3087
      start: 3055
    functionDepth: 3
    functionLinenumber: 3055
    functionLinenumberEnd: 3087
    functionName: xmt_text_content
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_strdup
    - gf_sg_vrml_mf_append
    - gf_sg_vrml_mf_reset
    - gf_list_last
    - strlen
    linkageType: ''
    returnType: void
    signature: void xmt_text_content(void *sax_cbck, const char *text_content, Bool
      is_cdata)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3094,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3097,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3098,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3099,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3100,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3101,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3102,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3103,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3104,1
    - Dst: gf_xml_sax_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3106,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3112
      start: 3090
    functionDepth: 1
    functionLinenumber: 3090
    functionLinenumberEnd: 3112
    functionName: xmt_new_parser
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_xml_sax_new
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_XMTParser
    signature: GF_XMTParser *xmt_new_parser(GF_SceneLoader *load)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3123,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3140,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3141,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3151
      start: 3114
    functionDepth: 2
    functionLinenumber: 3114
    functionLinenumberEnd: 3151
    functionName: xmt_restore_context
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_enum
    - gf_sm_stream_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err xmt_restore_context(GF_SceneLoader *load)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3161,1
    - Dst: xmt_new_parser
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3167,1
    - Dst: gf_xml_sax_init
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3168,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3170,1
    - Dst: xmt_new_parser
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3175,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3182,1
    - Dst: xmt_restore_context
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3184,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3188,1
    - Dst: gf_xml_sax_parse
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3192,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 34
    argCount: 2
    argNames:
    - load
    - str_data
    argTypes:
    - GF_SceneLoader*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3195
      start: 3154
    functionDepth: 9
    functionLinenumber: 3154
    functionLinenumberEnd: 3195
    functionName: load_xmt_initialize
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - xmt_new_parser
    - gf_xml_sax_init
    - GF_LOG
    - xmt_restore_context
    - gf_xml_sax_parse
    - strlen
    - xmt_report
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err load_xmt_initialize(GF_SceneLoader *load, const char *str_data)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: load_xmt_initialize
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3203,1
    - Dst: gf_xml_sax_parse_file
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3209,1
    - Dst: xmt_resolve_routes
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3212,1
    - Dst: xmt_resolve_od_links
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3213,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3216,1
    - Dst: gf_xml_sax_get_error
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3216,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3219
      start: 3198
    functionDepth: 10
    functionLinenumber: 3198
    functionLinenumberEnd: 3219
    functionName: load_xmt_run
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - xmt_resolve_routes
    - xmt_resolve_od_links
    - gf_xml_sax_parse_file
    - gf_xml_sax_get_error
    - load_xmt_initialize
    - xmt_report
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err load_xmt_run(GF_SceneLoader *load)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: load_xmt_initialize
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3226,1
    - Dst: gf_xml_sax_parse
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3228,1
    - Dst: xmt_resolve_routes
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3231,1
    - Dst: xmt_resolve_od_links
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3232,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3235,1
    - Dst: gf_xml_sax_get_error
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3235,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - load
    - str
    argTypes:
    - GF_SceneLoader*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3237
      start: 3221
    functionDepth: 10
    functionLinenumber: 3221
    functionLinenumberEnd: 3237
    functionName: load_xmt_parse_string
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - xmt_resolve_routes
    - xmt_resolve_od_links
    - gf_xml_sax_parse
    - gf_xml_sax_get_error
    - load_xmt_initialize
    - xmt_report
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err load_xmt_parse_string(GF_SceneLoader *load, const char *str)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3245,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3247,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3248,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3249,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3250,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3252,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3253,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3255,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3256,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3257,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3259,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3260,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3261,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3263,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3264,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3265,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3266,1
    - Dst: gf_xml_sax_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3267,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3268,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3269,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3271
      start: 3239
    functionDepth: 6
    functionLinenumber: 3239
    functionLinenumberEnd: 3271
    functionName: load_xmt_done
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_odf_desc_del
    - gf_list_count
    - gf_xml_sax_del
    - gf_node_unregister
    - gf_node_register
    - gf_list_last
    - gf_list_rem_last
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void load_xmt_done(GF_SceneLoader *load)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_sax_suspend
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3276,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - load
    - suspend
    argTypes:
    - GF_SceneLoader*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3278
      start: 3273
    functionDepth: 7
    functionLinenumber: 3273
    functionLinenumberEnd: 3278
    functionName: load_xmt_suspend
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_xml_sax_suspend
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err load_xmt_suspend(GF_SceneLoader *load, Bool suspend)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: load_xmt_initialize
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3287,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3289
      start: 3281
    functionDepth: 10
    functionLinenumber: 3281
    functionLinenumberEnd: 3289
    functionName: gf_sm_load_init_xmt
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 1
    functionsReached:
    - load_xmt_initialize
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_load_init_xmt(GF_SceneLoader *load)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:47,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:49,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/encode_isom.c:50,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - src
    argTypes:
    - GF_ESD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 42
    functionDepth: 2
    functionLinenumber: 42
    functionLinenumberEnd: 54
    functionName: gf_sm_remove_mux_info
    functionSourceFile: /src/gpac/src/scene_manager/encode_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_list_rem
    - gf_odf_desc_del
    linkageType: ''
    returnType: void
    signature: void gf_sm_remove_mux_info(GF_ESD *src)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_sm_get_mux_info
      Src: /src/gpac/src/scene_manager/encode_isom.c:62,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/scene_manager/encode_isom.c:64,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/scene_manager/encode_isom.c:67,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/scene_manager/encode_isom.c:68,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/scene_manager/encode_isom.c:73,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/scene_manager/encode_isom.c:75,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/scene_manager/encode_isom.c:76,1
    - Dst: gf_isom_set_track_interleaving_group
      Src: /src/gpac/src/scene_manager/encode_isom.c:80,1
    - Dst: gf_isom_use_compact_size
      Src: /src/gpac/src/scene_manager/encode_isom.c:83,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 3
    argNames:
    - mp4
    - src
    - offset_ts
    argTypes:
    - GF_ISOFile*
    - GF_ESD*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 58
    functionDepth: 8
    functionLinenumber: 58
    functionLinenumberEnd: 87
    functionName: gf_sm_finalize_mux
    functionSourceFile: /src/gpac/src/scene_manager/encode_isom.c
    functionUses: 0
    functionsReached:
    - gf_isom_set_track_interleaving_group
    - gf_isom_get_timescale
    - gf_sm_get_mux_info
    - gf_isom_set_edit
    - gf_isom_get_media_duration
    - gf_isom_get_media_timescale
    - gf_isom_use_compact_size
    - gf_isom_get_track_by_id
    linkageType: ''
    returnType: void
    signature: void gf_sm_finalize_mux(GF_ISOFile *mp4, GF_ESD *src, u32 offset_ts)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:98,1
    - Dst: gf_odf_encode_ui_config
      Src: /src/gpac/src/scene_manager/encode_isom.c:104,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:105,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/src/scene_manager/encode_isom.c:114,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/scene_manager/encode_isom.c:115,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/src/scene_manager/encode_isom.c:116,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/scene_manager/encode_isom.c:117,1
    - Dst: gf_isom_new_mpeg4_description
      Src: /src/gpac/src/scene_manager/encode_isom.c:118,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 3
    argNames:
    - mp4
    - src
    - rewrite_esd_only
    argTypes:
    - GF_ISOFile*
    - GF_ESD*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 92
    functionDepth: 8
    functionLinenumber: 92
    functionLinenumberEnd: 122
    functionName: gf_sm_import_ui_stream
    functionSourceFile: /src/gpac/src/scene_manager/encode_isom.c
    functionUses: 0
    functionsReached:
    - gf_odf_encode_ui_config
    - gf_isom_last_error
    - gf_odf_desc_del
    - gf_isom_new_mpeg4_description
    - gf_isom_new_track
    - gf_odf_desc_new
    - gf_isom_get_track_id
    - gf_isom_set_track_enabled
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_import_ui_stream(GF_ISOFile *mp4, GF_ESD *src, Bool rewrite_esd_only)
  - BBCount: 53
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/scene_manager/encode_isom.c:135,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/encode_isom.c:136,1
    - Dst: gf_sm_import_ui_stream
      Src: /src/gpac/src/scene_manager/encode_isom.c:139,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:147,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/encode_isom.c:149,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/encode_isom.c:180,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/src/scene_manager/encode_isom.c:183,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/scene_manager/encode_isom.c:184,1
    - Dst: gf_isom_new_mpeg4_description
      Src: /src/gpac/src/scene_manager/encode_isom.c:185,1
    - Dst: gf_sm_get_mux_info
      Src: /src/gpac/src/scene_manager/encode_isom.c:189,1
    - Dst: gf_sm_import_ui_stream
      Src: /src/gpac/src/scene_manager/encode_isom.c:196,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/src/scene_manager/encode_isom.c:202,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/scene_manager/encode_isom.c:203,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/src/scene_manager/encode_isom.c:204,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/scene_manager/encode_isom.c:205,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:206,1
    - Dst: gf_isom_new_mpeg4_description
      Src: /src/gpac/src/scene_manager/encode_isom.c:208,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/scene_manager/encode_isom.c:211,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/scene_manager/encode_isom.c:211,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/scene_manager/encode_isom.c:217,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/encode_isom.c:221,1
    - Dst: gf_isom_open
      Src: /src/gpac/src/scene_manager/encode_isom.c:225,1
    - Dst: gf_media_import
      Src: /src/gpac/src/scene_manager/encode_isom.c:227,1
    - Dst: gf_isom_delete
      Src: /src/gpac/src/scene_manager/encode_isom.c:228,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/encode_isom.c:238,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/scene_manager/encode_isom.c:242,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/encode_isom.c:243,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/encode_isom.c:244,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/encode_isom.c:246,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/scene_manager/encode_isom.c:248,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/encode_isom.c:251,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/encode_isom.c:253,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/encode_isom.c:254,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/encode_isom.c:260,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/encode_isom.c:265,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/encode_isom.c:270,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/encode_isom.c:272,1
    - Dst: gf_media_import
      Src: /src/gpac/src/scene_manager/encode_isom.c:289,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/encode_isom.c:291,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/scene_manager/encode_isom.c:295,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/scene_manager/encode_isom.c:295,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/scene_manager/encode_isom.c:298,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/encode_isom.c:299,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:302,1
    - Dst: gf_isom_add_user_data
      Src: /src/gpac/src/scene_manager/encode_isom.c:305,1
    - Dst: gf_isom_add_desc_to_description
      Src: /src/gpac/src/scene_manager/encode_isom.c:309,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/encode_isom.c:314,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:316,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/scene_manager/encode_isom.c:320,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 179
    argCount: 6
    argNames:
    - ctx
    - mp4
    - src
    - imp_time
    - mediaSource
    - od_sample_rap
    argTypes:
    - GF_SceneManager*
    - GF_ISOFile*
    - GF_ESD*
    - Double
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 125
    functionDepth: 13
    functionLinenumber: 125
    functionLinenumberEnd: 322
    functionName: gf_sm_import_stream
    functionSourceFile: /src/gpac/src/scene_manager/encode_isom.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_delete
    - GF_SAFEALLOC
    - gf_odf_desc_del
    - gf_isom_get_timescale
    - gf_sm_get_mux_info
    - strcpy
    - gf_isom_get_track_id
    - atoi
    - gf_isom_get_track_by_id
    - strchr
    - gf_sm_import_ui_stream
    - gf_isom_new_mpeg4_description
    - gf_isom_set_edit
    - gf_odf_desc_new
    - stricmp
    - gf_isom_set_track_enabled
    - gf_isom_last_error
    - GF_LOG
    - gf_isom_new_track
    - strnicmp
    - gf_list_enum
    - gf_isom_add_user_data
    - gf_media_import
    - gf_isom_add_desc_to_description
    - gf_isom_open
    - gf_url_concatenate
    - gf_file_ext_start
    - gf_file_delete
    - gf_list_rem
    - gf_isom_set_track_reference
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_import_stream(GF_SceneManager *ctx, GF_ISOFile *mp4, GF_ESD
      *src, Double imp_time, char *mediaSource, Bool od_sample_rap)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sm_get_mux_info
      Src: /src/gpac/src/scene_manager/encode_isom.c:327,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/scene_manager/encode_isom.c:337,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/encode_isom.c:339,1
    - Dst: gf_sm_import_bifs_subtitle
      Src: /src/gpac/src/scene_manager/encode_isom.c:343,1
    - Dst: gf_sm_remove_mux_info
      Src: /src/gpac/src/scene_manager/encode_isom.c:344,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 17
    argCount: 2
    argNames:
    - ctx
    - esd
    argTypes:
    - GF_SceneManager*
    - GF_ESD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 324
    functionDepth: 3
    functionLinenumber: 324
    functionLinenumberEnd: 347
    functionName: gf_sm_import_stream_special
    functionSourceFile: /src/gpac/src/scene_manager/encode_isom.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sm_get_mux_info
    - gf_url_concatenate
    - gf_sm_remove_mux_info
    - gf_sm_import_bifs_subtitle
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_import_stream_special(GF_SceneManager *ctx, GF_ESD *esd)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:357,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:360,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:363,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:370,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:373,1
    - Dst: gf_sm_import_stream_special
      Src: /src/gpac/src/scene_manager/encode_isom.c:374,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:385,1
    - Dst: gf_sm_import_stream_special
      Src: /src/gpac/src/scene_manager/encode_isom.c:386,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 36
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_SceneManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 349
    functionDepth: 4
    functionLinenumber: 349
    functionLinenumberEnd: 396
    functionName: gf_sm_import_specials
    functionSourceFile: /src/gpac/src/scene_manager/encode_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_sm_import_stream_special
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_import_specials(GF_SceneManager *ctx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:410,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:413,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:416,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:423,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:426,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:437,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 36
    argCount: 2
    argNames:
    - ctx
    - ES_ID
    argTypes:
    - GF_SceneManager*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 402
    functionDepth: 2
    functionLinenumber: 402
    functionLinenumberEnd: 447
    functionName: gf_sm_locate_esd
    functionSourceFile: /src/gpac/src/scene_manager/encode_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_ESD
    signature: GF_ESD *gf_sm_locate_esd(GF_SceneManager *ctx, u16 ES_ID)
  - BBCount: 126
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:485,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/encode_isom.c:491,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/encode_isom.c:503,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/scene_manager/encode_isom.c:513,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/encode_isom.c:516,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/encode_isom.c:518,1
    - Dst: gf_bifs_encoder_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:530,1
    - Dst: gf_bifs_encoder_set_source_url
      Src: /src/gpac/src/scene_manager/encode_isom.c:540,1
    - Dst: gf_laser_encoder_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:548,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/encode_isom.c:564,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:582,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/encode_isom.c:591,1
    - Dst: gf_sm_locate_esd
      Src: /src/gpac/src/scene_manager/encode_isom.c:599,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/encode_isom.c:603,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/encode_isom.c:604,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/encode_isom.c:605,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/encode_isom.c:606,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/encode_isom.c:608,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/encode_isom.c:614,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/encode_isom.c:615,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/encode_isom.c:617,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/encode_isom.c:618,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:619,1
    - Dst: gf_sm_import_stream
      Src: /src/gpac/src/scene_manager/encode_isom.c:633,1
    - Dst: gf_sm_finalize_mux
      Src: /src/gpac/src/scene_manager/encode_isom.c:638,1
    - Dst: gf_isom_add_track_to_root_od
      Src: /src/gpac/src/scene_manager/encode_isom.c:639,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/scene_manager/encode_isom.c:639,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:646,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:651,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:657,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:665,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/src/scene_manager/encode_isom.c:673,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/scene_manager/encode_isom.c:675,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/src/scene_manager/encode_isom.c:678,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/scene_manager/encode_isom.c:680,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:691,1
    - Dst: gf_odf_get_bifs_config
      Src: /src/gpac/src/scene_manager/encode_isom.c:700,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/scene_manager/encode_isom.c:709,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/scene_manager/encode_isom.c:710,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/scene_manager/encode_isom.c:712,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/scene_manager/encode_isom.c:713,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/scene_manager/encode_isom.c:715,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/scene_manager/encode_isom.c:716,1
    - Dst: gf_bifs_encoder_new_stream
      Src: /src/gpac/src/scene_manager/encode_isom.c:727,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:728,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:730,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:731,1
    - Dst: gf_bifs_encoder_get_config
      Src: /src/gpac/src/scene_manager/encode_isom.c:736,1
    - Dst: gf_bifs_encoder_get_version
      Src: /src/gpac/src/scene_manager/encode_isom.c:739,1
    - Dst: memset
      Src: /src/gpac/src/scene_manager/encode_isom.c:748,1
    - Dst: memcpy
      Src: /src/gpac/src/scene_manager/encode_isom.c:751,1
    - Dst: gf_odf_get_laser_config
      Src: /src/gpac/src/scene_manager/encode_isom.c:753,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:756,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:757,1
    - Dst: gf_laser_encoder_new_stream
      Src: /src/gpac/src/scene_manager/encode_isom.c:773,1
    - Dst: gf_laser_encoder_get_config
      Src: /src/gpac/src/scene_manager/encode_isom.c:775,1
    - Dst: gf_isom_new_mpeg4_description
      Src: /src/gpac/src/scene_manager/encode_isom.c:783,1
    - Dst: gf_isom_add_track_to_root_od
      Src: /src/gpac/src/scene_manager/encode_isom.c:785,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/scene_manager/encode_isom.c:787,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:792,1
    - Dst: gf_bifs_encoder_get_rap
      Src: /src/gpac/src/scene_manager/encode_isom.c:797,1
    - Dst: gf_laser_encoder_get_rap
      Src: /src/gpac/src/scene_manager/encode_isom.c:802,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/scene_manager/encode_isom.c:804,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:805,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:822,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:824,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/encode_isom.c:832,1
    - Dst: gf_bifs_encode_au
      Src: /src/gpac/src/scene_manager/encode_isom.c:842,1
    - Dst: gf_laser_encode_au
      Src: /src/gpac/src/scene_manager/encode_isom.c:846,1
    - Dst: gf_sg_command_apply_list
      Src: /src/gpac/src/scene_manager/encode_isom.c:855,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:860,1
    - Dst: gf_bifs_encoder_get_rap
      Src: /src/gpac/src/scene_manager/encode_isom.c:864,1
    - Dst: gf_laser_encoder_get_rap
      Src: /src/gpac/src/scene_manager/encode_isom.c:869,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/scene_manager/encode_isom.c:877,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:880,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/encode_isom.c:883,1
    - Dst: gf_sg_command_apply_list
      Src: /src/gpac/src/scene_manager/encode_isom.c:891,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:898,1
    - Dst: gf_bifs_encoder_get_rap
      Src: /src/gpac/src/scene_manager/encode_isom.c:904,1
    - Dst: gf_laser_encoder_get_rap
      Src: /src/gpac/src/scene_manager/encode_isom.c:911,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/scene_manager/encode_isom.c:919,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:924,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/scene_manager/encode_isom.c:928,1
    - Dst: gf_sg_command_apply_list
      Src: /src/gpac/src/scene_manager/encode_isom.c:932,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/scene_manager/encode_isom.c:935,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:949,1
    - Dst: gf_isom_change_mpeg4_description
      Src: /src/gpac/src/scene_manager/encode_isom.c:960,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/encode_isom.c:964,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/encode_isom.c:967,1
    - Dst: gf_sg_command_apply_list
      Src: /src/gpac/src/scene_manager/encode_isom.c:968,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:973,1
    - Dst: gf_bifs_encoder_get_rap
      Src: /src/gpac/src/scene_manager/encode_isom.c:979,1
    - Dst: gf_isom_add_sample_shadow
      Src: /src/gpac/src/scene_manager/encode_isom.c:982,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:983,1
    - Dst: gf_sm_finalize_mux
      Src: /src/gpac/src/scene_manager/encode_isom.c:989,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/src/scene_manager/encode_isom.c:990,1
    - Dst: gf_sm_get_mux_info
      Src: /src/gpac/src/scene_manager/encode_isom.c:992,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/scene_manager/encode_isom.c:995,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/src/scene_manager/encode_isom.c:997,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:1001,1
    - Dst: gf_isom_update_duration
      Src: /src/gpac/src/scene_manager/encode_isom.c:1005,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/scene_manager/encode_isom.c:1008,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/scene_manager/encode_isom.c:1009,1
    - Dst: gf_bifs_encoder_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:1013,1
    - Dst: gf_laser_encoder_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:1016,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:1018,1
    CyclomaticComplexity: 196
    EdgeCount: 196
    ICount: 465
    argCount: 4
    argNames:
    - ctx
    - mp4
    - opts
    - scene_type
    argTypes:
    - GF_SceneManager*
    - GF_ISOFile*
    - GF_SMEncodeOptions*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1020
      start: 452
    functionDepth: 17
    functionLinenumber: 452
    functionLinenumberEnd: 1020
    functionName: gf_sm_encode_scene
    functionSourceFile: /src/gpac/src/scene_manager/encode_isom.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_free
    - gf_bifs_encoder_new_stream
    - gf_odf_desc_del
    - gf_sm_get_mux_info
    - gf_list_count
    - gf_bifs_encoder_set_source_url
    - memset
    - gf_isom_get_track_id
    - gf_isom_add_sample
    - gf_isom_set_pl_indication
    - gf_laser_encoder_del
    - gf_isom_get_track_by_id
    - gf_bifs_encoder_get_version
    - gf_odf_get_laser_config
    - gf_bifs_encoder_get_config
    - gf_laser_encoder_new_stream
    - gf_list_get
    - gf_isom_update_duration
    - gf_isom_add_sample_shadow
    - gf_sm_finalize_mux
    - gf_odf_desc_esd_new
    - memcpy
    - gf_isom_new_mpeg4_description
    - gf_isom_sample_del
    - gf_odf_desc_new
    - gf_sm_locate_esd
    - gf_sm_import_stream
    - gf_bifs_encoder_del
    - gf_sg_get_root_node
    - gf_isom_set_track_enabled
    - gf_bifs_encoder_new
    - gf_odf_get_bifs_config
    - gf_bifs_encode_au
    - gf_laser_encoder_get_rap
    - gf_isom_last_error
    - gf_get_bit_size
    - GF_LOG
    - gf_isom_new_track
    - gf_laser_encoder_get_config
    - gf_isom_sample_new
    - gf_list_enum
    - gf_isom_set_visual_info
    - gf_sg_command_apply_list
    - gf_isom_change_mpeg4_description
    - gf_isom_get_media_duration
    - gf_bifs_encoder_get_rap
    - gf_sg_command_del
    - gf_laser_encode_au
    - gf_isom_set_last_sample_duration
    - gf_isom_add_track_to_root_od
    - gf_list_rem
    - gf_laser_encoder_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_encode_scene(GF_SceneManager *ctx, GF_ISOFile *mp4, GF_SMEncodeOptions
      *opts, u32 scene_type)
  - BBCount: 76
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/scene_manager/encode_isom.c:1037,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:1042,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:1064,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:1073,1
    - Dst: gf_sm_locate_esd
      Src: /src/gpac/src/scene_manager/encode_isom.c:1086,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:1090,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:1105,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/src/scene_manager/encode_isom.c:1113,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/scene_manager/encode_isom.c:1114,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/src/scene_manager/encode_isom.c:1116,1
    - Dst: gf_isom_new_mpeg4_description
      Src: /src/gpac/src/scene_manager/encode_isom.c:1119,1
    - Dst: gf_isom_add_track_to_root_od
      Src: /src/gpac/src/scene_manager/encode_isom.c:1121,1
    - Dst: gf_odf_codec_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:1123,1
    - Dst: gf_odf_codec_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:1126,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:1145,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:1153,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:1162,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:1165,1
    - Dst: gf_sm_import_stream
      Src: /src/gpac/src/scene_manager/encode_isom.c:1184,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/encode_isom.c:1189,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/scene_manager/encode_isom.c:1189,1
    - Dst: gf_sm_finalize_mux
      Src: /src/gpac/src/scene_manager/encode_isom.c:1192,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/encode_isom.c:1198,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:1212,1
    - Dst: gf_sm_import_stream
      Src: /src/gpac/src/scene_manager/encode_isom.c:1216,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/encode_isom.c:1221,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/scene_manager/encode_isom.c:1221,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:1222,1
    - Dst: gf_sm_finalize_mux
      Src: /src/gpac/src/scene_manager/encode_isom.c:1225,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/encode_isom.c:1231,1
    - Dst: gf_odf_codec_add_com
      Src: /src/gpac/src/scene_manager/encode_isom.c:1242,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:1247,1
    - Dst: gf_odf_codec_encode
      Src: /src/gpac/src/scene_manager/encode_isom.c:1251,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/encode_isom.c:1255,1
    - Dst: gf_odf_codec_get_au
      Src: /src/gpac/src/scene_manager/encode_isom.c:1259,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:1266,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:1273,1
    - Dst: gf_odf_codec_apply_com
      Src: /src/gpac/src/scene_manager/encode_isom.c:1274,1
    - Dst: gf_odf_codec_encode
      Src: /src/gpac/src/scene_manager/encode_isom.c:1280,1
    - Dst: gf_odf_codec_get_au
      Src: /src/gpac/src/scene_manager/encode_isom.c:1282,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/scene_manager/encode_isom.c:1284,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/encode_isom.c:1291,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:1295,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/encode_isom.c:1303,1
    - Dst: gf_odf_codec_apply_com
      Src: /src/gpac/src/scene_manager/encode_isom.c:1304,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/scene_manager/encode_isom.c:1310,1
    - Dst: gf_odf_codec_encode
      Src: /src/gpac/src/scene_manager/encode_isom.c:1326,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/encode_isom.c:1328,1
    - Dst: gf_odf_codec_get_au
      Src: /src/gpac/src/scene_manager/encode_isom.c:1331,1
    - Dst: gf_isom_add_sample_shadow
      Src: /src/gpac/src/scene_manager/encode_isom.c:1334,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:1342,1
    - Dst: gf_isom_change_mpeg4_description
      Src: /src/gpac/src/scene_manager/encode_isom.c:1353,1
    - Dst: gf_sm_finalize_mux
      Src: /src/gpac/src/scene_manager/encode_isom.c:1355,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:1357,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/scene_manager/encode_isom.c:1361,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/src/scene_manager/encode_isom.c:1362,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/scene_manager/encode_isom.c:1366,1
    - Dst: gf_odf_codec_encode
      Src: /src/gpac/src/scene_manager/encode_isom.c:1369,1
    - Dst: gf_odf_codec_get_au
      Src: /src/gpac/src/scene_manager/encode_isom.c:1370,1
    - Dst: gf_isom_add_sample_shadow
      Src: /src/gpac/src/scene_manager/encode_isom.c:1371,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:1373,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:1376,1
    - Dst: gf_isom_update_duration
      Src: /src/gpac/src/scene_manager/encode_isom.c:1380,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/scene_manager/encode_isom.c:1382,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:1385,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:1386,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/encode_isom.c:1387,1
    CyclomaticComplexity: 119
    EdgeCount: 119
    ICount: 331
    argCount: 4
    argNames:
    - ctx
    - mp4
    - mediaSource
    - opts
    argTypes:
    - GF_SceneManager*
    - GF_ISOFile*
    - char*
    - GF_SMEncodeOptions*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1389
      start: 1023
    functionDepth: 14
    functionLinenumber: 1023
    functionLinenumberEnd: 1389
    functionName: gf_sm_encode_od
    functionSourceFile: /src/gpac/src/scene_manager/encode_isom.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_desc_del
    - gf_isom_get_sample_count
    - gf_isom_add_sample
    - gf_isom_set_pl_indication
    - gf_isom_get_track_id
    - gf_odf_codec_get_au
    - gf_isom_update_duration
    - gf_isom_add_sample_shadow
    - gf_odf_desc_esd_new
    - gf_sm_finalize_mux
    - gf_isom_sample_del
    - gf_isom_new_mpeg4_description
    - gf_odf_com_del
    - gf_odf_desc_new
    - gf_sm_locate_esd
    - gf_sm_import_stream
    - gf_isom_set_track_enabled
    - gf_odf_codec_del
    - GF_LOG
    - gf_isom_new_track
    - gf_isom_sample_new
    - gf_error_to_string
    - gf_list_enum
    - gf_odf_codec_encode
    - gf_odf_codec_apply_com
    - gf_isom_change_mpeg4_description
    - gf_odf_codec_new
    - gf_odf_codec_add_com
    - gf_isom_set_last_sample_duration
    - gf_isom_add_track_to_root_od
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_encode_od(GF_SceneManager *ctx, GF_ISOFile *mp4, char
      *mediaSource, GF_SMEncodeOptions *opts)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/scene_manager/encode_isom.c:1401,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/scene_manager/encode_isom.c:1402,1
    - Dst: gf_sm_import_specials
      Src: /src/gpac/src/scene_manager/encode_isom.c:1406,1
    - Dst: gf_sm_encode_scene
      Src: /src/gpac/src/scene_manager/encode_isom.c:1414,1
    - Dst: gf_sm_encode_scene
      Src: /src/gpac/src/scene_manager/encode_isom.c:1417,1
    - Dst: gf_sm_encode_od
      Src: /src/gpac/src/scene_manager/encode_isom.c:1420,1
    - Dst: gf_isom_set_root_od_id
      Src: /src/gpac/src/scene_manager/encode_isom.c:1426,1
    - Dst: gf_isom_set_root_od_url
      Src: /src/gpac/src/scene_manager/encode_isom.c:1427,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/encode_isom.c:1428,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/encode_isom.c:1430,1
    - Dst: gf_isom_add_desc_to_root_od
      Src: /src/gpac/src/scene_manager/encode_isom.c:1431,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/encode_isom.c:1433,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/encode_isom.c:1435,1
    - Dst: gf_isom_add_desc_to_root_od
      Src: /src/gpac/src/scene_manager/encode_isom.c:1436,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/encode_isom.c:1438,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/encode_isom.c:1440,1
    - Dst: gf_isom_add_desc_to_root_od
      Src: /src/gpac/src/scene_manager/encode_isom.c:1441,1
    - Dst: gf_isom_add_desc_to_root_od
      Src: /src/gpac/src/scene_manager/encode_isom.c:1445,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/scene_manager/encode_isom.c:1453,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/scene_manager/encode_isom.c:1454,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/scene_manager/encode_isom.c:1456,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/scene_manager/encode_isom.c:1457,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 52
    argCount: 3
    argNames:
    - ctx
    - mp4
    - opts
    argTypes:
    - GF_SceneManager*
    - GF_ISOFile*
    - GF_SMEncodeOptions*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1460
      start: 1391
    functionDepth: 18
    functionLinenumber: 1391
    functionLinenumberEnd: 1460
    functionName: gf_sm_encode_to_file
    functionSourceFile: /src/gpac/src/scene_manager/encode_isom.c
    functionUses: 3
    functionsReached:
    - gf_list_get
    - gf_isom_add_desc_to_root_od
    - gf_isom_set_root_od_id
    - gf_sm_import_specials
    - gf_isom_set_root_od_url
    - gf_sm_encode_scene
    - gf_isom_modify_alternate_brand
    - gf_list_count
    - gf_isom_set_pl_indication
    - gf_sm_encode_od
    - gf_isom_set_brand_info
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sm_encode_to_file(GF_SceneManager *ctx, GF_ISOFile *mp4,
      GF_SMEncodeOptions *opts)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - __str
    - ','
    - __sep
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 51
    functionName: REM_TRAIL_MARKS
    functionSourceFile: /src/gpac/src/scene_manager/text_to_bifs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: REM_TRAIL_MARKS(__str, __sep)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:56,1
    - Dst: gf_fgets
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:59,1
    - Dst: REM_TRAIL_MARKS
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:60,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:62,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:65,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:66,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:67,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:68,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:70,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:71,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:72,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:73,1
    - Dst: gf_fgets
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:76,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:79,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:81,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 31
    argCount: 2
    argNames:
    - filename
    - fmt
    argTypes:
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 52
    functionDepth: 5
    functionLinenumber: 52
    functionLinenumberEnd: 83
    functionName: gf_text_guess_format
    functionSourceFile: /src/gpac/src/scene_manager/text_to_bifs.c
    functionUses: 0
    functionsReached:
    - REM_TRAIL_MARKS
    - gf_fclose
    - sscanf
    - gf_fgets
    - sprintf
    - strstr
    - gf_file_ext_start
    - gf_fopen
    - strcmp
    - strnicmp
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_text_guess_format(char *filename, u32 *fmt)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:105,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:109,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:115,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:119,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:122,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:124,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:127,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:128,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:134,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:136,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:139,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:140,1
    - Dst: gf_fopen
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:145,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:147,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:151,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:154,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:156,1
    - Dst: gf_fgets
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:169,1
    - Dst: REM_TRAIL_MARKS
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:171,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:173,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:178,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:180,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:181,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:184,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:186,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:187,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:188,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:189,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:190,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:191,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:192,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:193,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:196,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:197,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:199,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:200,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:203,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:204,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:207,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:209,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:210,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:213,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:214,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:223,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:223,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:224,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:231,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:232,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:237,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:245,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:246,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:252,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:258,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:259,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:261,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:262,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:265,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:266,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:269,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:279,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:283,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:287,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:295,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:295,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:295,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:296,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:300,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:302,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:303,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:306,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:307,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:310,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:314,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:316,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:318,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:333,1
    - Dst: MIN
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:337,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:337,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:338,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:344,1
    CyclomaticComplexity: 73
    EdgeCount: 73
    ICount: 237
    argCount: 3
    argNames:
    - ctx
    - src
    - mux
    argTypes:
    - GF_SceneManager*
    - GF_ESD*
    - GF_MuxInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 87
    functionDepth: 5
    functionLinenumber: 87
    functionLinenumberEnd: 346
    functionName: gf_text_import_srt_bifs
    functionSourceFile: /src/gpac/src/scene_manager/text_to_bifs.c
    functionUses: 0
    functionsReached:
    - gf_sg_command_field_new
    - gf_fopen
    - gf_sg_command_new
    - REM_TRAIL_MARKS
    - gf_strdup
    - gf_assert
    - gf_sg_find_node_by_name
    - gf_odf_desc_new
    - gf_list_add
    - gf_node_register
    - sscanf
    - gf_utf8_is_legal
    - gf_sg_vrml_mf_append
    - GF_LOG
    - gf_fgets
    - MIN
    - strnicmp
    - gf_sg_vrml_field_pointer_new
    - gf_list_enum
    - strlen
    - gf_sm_stream_au_new
    - gf_fclose
    - gf_node_get_field_by_name
    - gf_sm_stream_new
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_text_import_srt_bifs(GF_SceneManager *ctx, GF_ESD *src, GF_MuxInfo
      *mux)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:369,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:373,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:379,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:383,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:386,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:388,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:391,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:392,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:398,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:400,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:403,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:404,1
    - Dst: gf_fopen
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:409,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:411,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:415,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:418,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:420,1
    - Dst: gf_fgets
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:433,1
    - Dst: REM_TRAIL_MARKS
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:435,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:438,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:443,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:448,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:449,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:449,1
    - Dst: MIN
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:457,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:457,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:458,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:460,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:466,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:471,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:472,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:472,1
    - Dst: MIN
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:480,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:480,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:481,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:485,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:490,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:491,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:493,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:494,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:497,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:498,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:527,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:529,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:530,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:533,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:534,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:536,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:537,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:541,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 167
    argCount: 3
    argNames:
    - ctx
    - src
    - mux
    argTypes:
    - GF_SceneManager*
    - GF_ESD*
    - GF_MuxInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 543
      start: 352
    functionDepth: 5
    functionLinenumber: 352
    functionLinenumberEnd: 543
    functionName: gf_text_import_sub_bifs
    functionSourceFile: /src/gpac/src/scene_manager/text_to_bifs.c
    functionUses: 0
    functionsReached:
    - gf_sg_command_field_new
    - gf_fopen
    - atoi
    - gf_sg_command_new
    - REM_TRAIL_MARKS
    - gf_strdup
    - gf_sg_find_node_by_name
    - gf_odf_desc_new
    - gf_list_add
    - gf_node_register
    - gf_sg_vrml_mf_append
    - GF_LOG
    - gf_fgets
    - MIN
    - gf_sg_vrml_field_pointer_new
    - gf_list_enum
    - strlen
    - gf_sm_stream_au_new
    - gf_fclose
    - gf_node_get_field_by_name
    - gf_sm_stream_new
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_text_import_sub_bifs(GF_SceneManager *ctx, GF_ESD *src, GF_MuxInfo
      *mux)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_text_guess_format
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:553,1
    - Dst: gf_text_import_srt_bifs
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:557,1
    - Dst: gf_text_import_sub_bifs
      Src: /src/gpac/src/scene_manager/text_to_bifs.c:558,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - ctx
    - src
    - mux
    argTypes:
    - GF_SceneManager*
    - GF_ESD*
    - GF_MuxInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 562
      start: 547
    functionDepth: 6
    functionLinenumber: 547
    functionLinenumberEnd: 562
    functionName: gf_sm_import_bifs_subtitle
    functionSourceFile: /src/gpac/src/scene_manager/text_to_bifs.c
    functionUses: 1
    functionsReached:
    - gf_text_guess_format
    - gf_text_import_srt_bifs
    - gf_text_import_sub_bifs
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sm_import_bifs_subtitle(GF_SceneManager *ctx, GF_ESD *src,
      GF_MuxInfo *mux)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/scene_manager/loader_bt.c:122,1
    - Dst: va_start
      Src: /src/gpac/src/scene_manager/loader_bt.c:125,1
    - Dst: vsnprintf
      Src: /src/gpac/src/scene_manager/loader_bt.c:126,1
    - Dst: va_end
      Src: /src/gpac/src/scene_manager/loader_bt.c:127,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_bt.c:128,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - parser
    - e
    - format
    argTypes:
    - GF_BTParser*
    - GF_Err
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 119
    functionDepth: 2
    functionLinenumber: 119
    functionLinenumberEnd: 133
    functionName: gf_bt_report
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - va_end
    - gf_log_tool_level_on
    - GF_LOG
    - va_start
    - vsnprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bt_report(GF_BTParser *parser, GF_Err e, char *format, ...)
  - BBCount: 68
    BranchProfiles: []
    Callsites:
    - Dst: gf_gztell
      Src: /src/gpac/src/scene_manager/loader_bt.c:172,1
    - Dst: gf_gzeof
      Src: /src/gpac/src/scene_manager/loader_bt.c:183,1
    - Dst: gf_gzgetc
      Src: /src/gpac/src/scene_manager/loader_bt.c:184,1
    - Dst: gf_gzgetc
      Src: /src/gpac/src/scene_manager/loader_bt.c:185,1
    - Dst: gf_gztell
      Src: /src/gpac/src/scene_manager/loader_bt.c:208,1
    - Dst: gf_gzseek
      Src: /src/gpac/src/scene_manager/loader_bt.c:209,1
    - Dst: gf_gztell
      Src: /src/gpac/src/scene_manager/loader_bt.c:223,1
    - Dst: gf_gzseek
      Src: /src/gpac/src/scene_manager/loader_bt.c:224,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/scene_manager/loader_bt.c:234,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:236,1
    - Dst: gf_gzeof
      Src: /src/gpac/src/scene_manager/loader_bt.c:236,1
    - Dst: gf_gzgets
      Src: /src/gpac/src/scene_manager/loader_bt.c:241,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:242,1
    - Dst: gf_gzeof
      Src: /src/gpac/src/scene_manager/loader_bt.c:242,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:247,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:252,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:260,1
    - Dst: gf_gztell
      Src: /src/gpac/src/scene_manager/loader_bt.c:265,1
    - Dst: gf_gzseek
      Src: /src/gpac/src/scene_manager/loader_bt.c:266,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:273,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:276,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:281,1
    - Dst: gf_gztell
      Src: /src/gpac/src/scene_manager/loader_bt.c:286,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/scene_manager/loader_bt.c:289,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:299,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:300,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:302,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:304,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:308,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:309,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:311,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:316,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:320,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_bt.c:323,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_bt.c:325,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:329,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:332,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:333,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:334,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:337,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:342,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:348,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_bt.c:354,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_bt.c:356,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:357,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:362,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:368,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:371,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:377,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:381,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:383,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_bt.c:394,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_bt.c:399,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:401,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:404,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:405,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:406,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:410,1
    - Dst: memmove
      Src: /src/gpac/src/scene_manager/loader_bt.c:414,1
    - Dst: memcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:415,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:416,1
    - Dst: gf_gzeof
      Src: /src/gpac/src/scene_manager/loader_bt.c:424,1
    CyclomaticComplexity: 104
    EdgeCount: 104
    ICount: 256
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_BTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 136
    functionDepth: 6
    functionLinenumber: 136
    functionLinenumberEnd: 433
    functionName: gf_bt_check_line
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_set_progress
    - GF_SAFEALLOC
    - gf_bt_report
    - gf_list_count
    - strchr
    - gf_gzseek
    - gf_strdup
    - gf_list_get
    - gf_utf8_wcstombs
    - memcpy
    - gf_list_add
    - gf_gzgets
    - memmove
    - sscanf
    - GF_LOG
    - strstr
    - strnicmp
    - strlen
    - gf_gzgetc
    - strcmp
    - gf_gztell
    - gf_gzeof
    linkageType: ''
    returnType: void
    signature: void gf_bt_check_line(GF_BTParser *parser)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_BTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 435
    functionDepth: 0
    functionLinenumber: 435
    functionLinenumberEnd: 438
    functionName: gf_bt_force_line
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_bt_force_line(GF_BTParser *parser)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bt_check_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:442,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - parser
    - code
    argTypes:
    - GF_BTParser*
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 440
    functionDepth: 7
    functionLinenumber: 440
    functionLinenumberEnd: 448
    functionName: gf_bt_check_code
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_bt_check_line
    linkageType: ''
    returnType: Bool
    signature: Bool gf_bt_check_code(GF_BTParser *parser, char code)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_bt_check_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:455,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/loader_bt.c:460,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/loader_bt.c:488,1
    - Dst: MIN
      Src: /src/gpac/src/scene_manager/loader_bt.c:494,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/loader_bt.c:494,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 48
    argCount: 2
    argNames:
    - parser
    - point_break
    argTypes:
    - GF_BTParser*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 450
    functionDepth: 7
    functionLinenumber: 450
    functionLinenumberEnd: 497
    functionName: gf_bt_get_next
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - GF_ARRAY_LENGTH
    - gf_bt_check_line
    - MIN
    linkageType: ''
    returnType: char
    signature: char *gf_bt_get_next(GF_BTParser *parser, Bool point_break)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/loader_bt.c:510,1
    - Dst: gf_gzeof
      Src: /src/gpac/src/scene_manager/loader_bt.c:515,1
    - Dst: gf_bt_check_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:516,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:529,1
    - Dst: gf_bt_check_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:530,1
    - Dst: gf_bt_check_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:585,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 61
    argCount: 2
    argNames:
    - parser
    - string_delim
    argTypes:
    - GF_BTParser*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 499
    functionDepth: 7
    functionLinenumber: 499
    functionLinenumberEnd: 595
    functionName: gf_bt_get_string
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - strchr
    - gf_gzeof
    - gf_malloc
    - gf_bt_check_line
    linkageType: ''
    returnType: char
    signature: char *gf_bt_get_string(GF_BTParser *parser, u8 string_delim)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:600,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:600,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:600,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:600,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:600,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 8
    argCount: 2
    argNames:
    - parser
    - str
    argTypes:
    - GF_BTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 597
    functionDepth: 0
    functionLinenumber: 597
    functionLinenumberEnd: 605
    functionName: gf_bt_check_externproto_field
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: Bool
    signature: Bool gf_bt_check_externproto_field(GF_BTParser *parser, char *str)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:611,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:614,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:615,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:616,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:617,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:618,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:619,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:620,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:621,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:622,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:623,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:624,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:625,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:626,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:627,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:628,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:629,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:630,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:631,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:632,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:633,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:634,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:635,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:636,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:637,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:639,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:642,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:645,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 62
    argCount: 3
    argNames:
    - parser
    - str
    - val
    argTypes:
    - GF_BTParser*
    - char*
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 648
      start: 607
    functionDepth: 3
    functionLinenumber: 607
    functionLinenumberEnd: 648
    functionName: check_keyword
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - sscanf
    - gf_bt_report
    - strcmp
    - strchr
    - strlen
    linkageType: ''
    returnType: Bool
    signature: Bool check_keyword(GF_BTParser *parser, char *str, s32 *val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:654,1
    - Dst: gf_bt_check_externproto_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:656,1
    - Dst: check_keyword
      Src: /src/gpac/src/scene_manager/loader_bt.c:658,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/loader_bt.c:659,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:662,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:663,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/loader_bt.c:665,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - parser
    - name
    - val
    argTypes:
    - GF_BTParser*
    - char*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 650
    functionDepth: 8
    functionLinenumber: 650
    functionLinenumberEnd: 667
    functionName: gf_bt_parse_float
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - INT2FIX
    - sscanf
    - gf_bt_report
    - gf_bt_get_next
    - gf_bt_check_externproto_field
    - check_keyword
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bt_parse_float(GF_BTParser *parser, const char *name, Fixed
      *val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:670,1
    - Dst: gf_bt_check_externproto_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:672,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:673,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:674,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - parser
    - name
    - val
    argTypes:
    - GF_BTParser*
    - char*
    - SFDouble*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 677
      start: 668
    functionDepth: 8
    functionLinenumber: 668
    functionLinenumberEnd: 677
    functionName: gf_bt_parse_double
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_bt_report
    - gf_bt_get_next
    - sscanf
    - gf_bt_check_externproto_field
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bt_parse_double(GF_BTParser *parser, const char *name, SFDouble
      *val)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:680,1
    - Dst: gf_bt_check_externproto_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:682,1
    - Dst: check_keyword
      Src: /src/gpac/src/scene_manager/loader_bt.c:684,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:686,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:687,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:688,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 3
    argNames:
    - parser
    - name
    - val
    argTypes:
    - GF_BTParser*
    - char*
    - SFInt32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 678
    functionDepth: 8
    functionLinenumber: 678
    functionLinenumberEnd: 691
    functionName: gf_bt_parse_int
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - sscanf
    - gf_bt_report
    - gf_bt_get_next
    - strnicmp
    - gf_bt_check_externproto_field
    - check_keyword
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bt_parse_int(GF_BTParser *parser, const char *name, SFInt32
      *val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:694,1
    - Dst: gf_bt_check_externproto_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:696,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:698,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:698,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:701,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:701,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:704,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 3
    argNames:
    - parser
    - name
    - val
    argTypes:
    - GF_BTParser*
    - char*
    - SFBool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 707
      start: 692
    functionDepth: 8
    functionLinenumber: 692
    functionLinenumberEnd: 707
    functionName: gf_bt_parse_bool
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_bt_report
    - gf_bt_get_next
    - strcmp
    - gf_bt_check_externproto_field
    - stricmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bt_parse_bool(GF_BTParser *parser, const char *name, SFBool
      *val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:713,1
    - Dst: gf_bt_check_externproto_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:715,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:717,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/loader_bt.c:718,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:720,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:721,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:722,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:723,1
    - Dst: gf_color_parse
      Src: /src/gpac/src/scene_manager/loader_bt.c:726,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:728,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/loader_bt.c:730,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/loader_bt.c:731,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/loader_bt.c:732,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 3
    argNames:
    - parser
    - name
    - col
    argTypes:
    - GF_BTParser*
    - char*
    - SFColor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 734
      start: 709
    functionDepth: 9
    functionLinenumber: 709
    functionLinenumberEnd: 734
    functionName: gf_bt_parse_color
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_color_parse
    - INT2FIX
    - sscanf
    - gf_bt_check_code
    - gf_bt_parse_float
    - gf_bt_report
    - gf_bt_get_next
    - gf_bt_check_externproto_field
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bt_parse_color(GF_BTParser *parser, const char *name, SFColor
      *col)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:739,1
    - Dst: gf_bt_check_externproto_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:741,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:746,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/loader_bt.c:747,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/loader_bt.c:748,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/loader_bt.c:749,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/loader_bt.c:750,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:753,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:754,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/loader_bt.c:756,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:757,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:758,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:759,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:760,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:761,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:762,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 3
    argNames:
    - parser
    - name
    - col
    argTypes:
    - GF_BTParser*
    - char*
    - SFColorRGBA*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 764
      start: 736
    functionDepth: 9
    functionLinenumber: 736
    functionLinenumberEnd: 764
    functionName: gf_bt_parse_colorRGBA
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - INT2FIX
    - sscanf
    - gf_bt_check_code
    - gf_bt_parse_float
    - gf_bt_report
    - gf_bt_get_next
    - gf_bt_check_externproto_field
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bt_parse_colorRGBA(GF_BTParser *parser, const char *name,
      SFColorRGBA *col)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - parser
    - time
    argTypes:
    - GF_BTParser*
    - Double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 774
      start: 766
    functionDepth: 0
    functionLinenumber: 766
    functionLinenumberEnd: 774
    functionName: gf_bt_offset_time
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_bt_offset_time(GF_BTParser *parser, Double *time)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_bt.c:779,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:780,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:780,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:781,1
    - Dst: gf_sg_proto_field_is_sftime_offset
      Src: /src/gpac/src/scene_manager/loader_bt.c:782,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:783,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 3
    argNames:
    - parser
    - n
    - info
    argTypes:
    - GF_BTParser*
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 785
      start: 776
    functionDepth: 2
    functionLinenumber: 776
    functionLinenumberEnd: 785
    functionName: gf_bt_check_time_offset
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_sg_proto_field_is_sftime_offset
    - gf_bt_offset_time
    - stricmp
    linkageType: ''
    returnType: void
    signature: void gf_bt_check_time_offset(GF_BTParser *parser, GF_Node *n, GF_FieldInfo
      *info)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_bt.c:790,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:792,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:793,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:796,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:797,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:800,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:801,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:804,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:805,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:808,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:809,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:812,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:813,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/scene_manager/loader_bt.c:819,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:821,1
    - Dst: gf_bt_check_time_offset
      Src: /src/gpac/src/scene_manager/loader_bt.c:823,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 39
    argCount: 2
    argNames:
    - parser
    - node
    argTypes:
    - GF_BTParser*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 828
      start: 786
    functionDepth: 3
    functionLinenumber: 786
    functionLinenumberEnd: 828
    functionName: gf_bt_update_timenode
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_node_get_num_fields_in_mode
    - gf_bt_offset_time
    - gf_bt_check_time_offset
    - gf_node_get_field
    linkageType: ''
    returnType: void
    signature: void gf_bt_update_timenode(GF_BTParser *parser, GF_Node *node)
  - BBCount: 77
    BranchProfiles: []
    Callsites:
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:835,1
    - Dst: gf_bt_parse_bool
      Src: /src/gpac/src/scene_manager/loader_bt.c:839,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:843,1
    - Dst: gf_bt_parse_double
      Src: /src/gpac/src/scene_manager/loader_bt.c:847,1
    - Dst: gf_bt_parse_double
      Src: /src/gpac/src/scene_manager/loader_bt.c:851,1
    - Dst: gf_bt_check_time_offset
      Src: /src/gpac/src/scene_manager/loader_bt.c:853,1
    - Dst: gf_bt_parse_color
      Src: /src/gpac/src/scene_manager/loader_bt.c:856,1
    - Dst: gf_bt_parse_colorRGBA
      Src: /src/gpac/src/scene_manager/loader_bt.c:859,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:862,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:865,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:866,1
    - Dst: gf_bt_parse_double
      Src: /src/gpac/src/scene_manager/loader_bt.c:870,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:873,1
    - Dst: gf_bt_parse_double
      Src: /src/gpac/src/scene_manager/loader_bt.c:874,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:878,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:881,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:882,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:885,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:886,1
    - Dst: gf_bt_parse_double
      Src: /src/gpac/src/scene_manager/loader_bt.c:890,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:893,1
    - Dst: gf_bt_parse_double
      Src: /src/gpac/src/scene_manager/loader_bt.c:894,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:897,1
    - Dst: gf_bt_parse_double
      Src: /src/gpac/src/scene_manager/loader_bt.c:898,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:902,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:905,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:906,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:909,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:910,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:913,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:914,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:918,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:920,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:922,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:924,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:930,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:931,1
    - Dst: gf_bt_get_string
      Src: /src/gpac/src/scene_manager/loader_bt.c:933,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:936,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:938,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:941,1
    - Dst: gf_sm_update_bitwrapper_buffer
      Src: /src/gpac/src/scene_manager/loader_bt.c:944,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:954,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:955,1
    - Dst: gf_bt_get_string
      Src: /src/gpac/src/scene_manager/loader_bt.c:958,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:960,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:963,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:968,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:969,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:971,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_bt.c:973,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:974,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:978,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:985,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:994,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:997,1
    - Dst: gf_bt_parse_bifs_command
      Src: /src/gpac/src/scene_manager/loader_bt.c:998,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:1008,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:1010,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:1012,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1016,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/loader_bt.c:1017,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1019,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:1020,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:1020,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:1021,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1051,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1052,1
    - Dst: gf_bt_get_string
      Src: /src/gpac/src/scene_manager/loader_bt.c:1054,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1060,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1061,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1062,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:1065,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1066,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1067,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1068,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1068,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1081,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1084,1
    CyclomaticComplexity: 85
    EdgeCount: 85
    ICount: 259
    argCount: 3
    argNames:
    - parser
    - info
    - n
    argTypes:
    - GF_BTParser*
    - GF_FieldInfo*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1085
      start: 831
    functionDepth: 10
    functionLinenumber: 831
    functionLinenumberEnd: 1085
    functionName: gf_bt_sffield
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_class_name
    - gf_bt_parse_int
    - gf_bt_report
    - gf_bt_get_next
    - strchr
    - gf_bt_parse_bifs_command
    - gf_bt_check_time_offset
    - gf_bt_parse_color
    - sprintf
    - gf_bt_get_string
    - gf_bt_peek_node
    - sscanf
    - gf_sm_update_bitwrapper_buffer
    - strstr
    - strnicmp
    - gf_malloc
    - strlen
    - gf_bt_check_code
    - gf_bt_parse_float
    - gf_bt_parse_colorRGBA
    - gf_node_get_field_by_name
    - strcmp
    - gf_bt_parse_double
    - gf_bt_parse_bool
    linkageType: ''
    returnType: void
    signature: void gf_bt_sffield(GF_BTParser *parser, GF_FieldInfo *info, GF_Node
      *n)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1092,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_bt.c:1097,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scene_manager/loader_bt.c:1099,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1101,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/loader_bt.c:1102,1
    - Dst: gf_bt_sffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:1103,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1106,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 3
    argNames:
    - parser
    - info
    - n
    argTypes:
    - GF_BTParser*
    - GF_FieldInfo*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1109
      start: 1087
    functionDepth: 11
    functionLinenumber: 1087
    functionLinenumberEnd: 1109
    functionName: gf_bt_mffield
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_mf_append
    - gf_bt_check_code
    - gf_bt_sffield
    - gf_sg_vrml_mf_reset
    linkageType: ''
    returnType: void
    signature: void gf_bt_mffield(GF_BTParser *parser, GF_FieldInfo *info, GF_Node
      *n)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_in_table
      Src: /src/gpac/src/scene_manager/loader_bt.c:1121,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1123,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1123,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_bt.c:1124,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 4
    argNames:
    - parser
    - info
    - node
    - parent
    argTypes:
    - GF_BTParser*
    - GF_FieldInfo*
    - GF_Node*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1126
      start: 1111
    functionDepth: 5
    functionLinenumber: 1111
    functionLinenumberEnd: 1126
    functionName: gf_bt_check_ndt
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_bt_report
    - gf_node_unregister
    - gf_node_get_class_name
    - gf_node_in_table
    linkageType: ''
    returnType: Bool
    signature: Bool gf_bt_check_ndt(GF_BTParser *parser, GF_FieldInfo *info, GF_Node
      *node, GF_Node *parent)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_proto_get_graph
      Src: /src/gpac/src/scene_manager/loader_bt.c:1132,1
    - Dst: gf_sg_get_next_available_node_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1133,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_BTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1137
      start: 1128
    functionDepth: 1
    functionLinenumber: 1128
    functionLinenumberEnd: 1137
    functionName: gf_bt_get_next_node_id
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_sg_proto_get_graph
    - gf_sg_get_next_available_node_id
    linkageType: ''
    returnType: u32
    signature: u32 gf_bt_get_next_node_id(GF_BTParser *parser)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_proto_get_graph
      Src: /src/gpac/src/scene_manager/loader_bt.c:1142,1
    - Dst: gf_sg_get_next_available_route_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1144,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_BTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1148
      start: 1138
    functionDepth: 2
    functionLinenumber: 1138
    functionLinenumberEnd: 1148
    functionName: gf_bt_get_next_route_id
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_sg_proto_get_graph
    - gf_sg_get_next_available_route_id
    linkageType: ''
    returnType: u32
    signature: u32 gf_bt_get_next_route_id(GF_BTParser *parser)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_proto_get_graph
      Src: /src/gpac/src/scene_manager/loader_bt.c:1153,1
    - Dst: gf_sg_get_next_available_proto_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1154,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_BTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1158
      start: 1149
    functionDepth: 2
    functionLinenumber: 1149
    functionLinenumberEnd: 1158
    functionName: gf_bt_get_next_proto_id
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_sg_proto_get_graph
    - gf_sg_get_next_available_proto_id
    linkageType: ''
    returnType: u32
    signature: u32 gf_bt_get_next_proto_id(GF_BTParser *parser)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:1164,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:1167,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:1175,1
    - Dst: gf_bt_get_next_node_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1183,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_bt.c:1185,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1185,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 2
    argNames:
    - parser
    - defName
    argTypes:
    - GF_BTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1188
      start: 1160
    functionDepth: 2
    functionLinenumber: 1160
    functionLinenumberEnd: 1188
    functionName: gf_bt_get_def_id
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - sscanf
    - gf_sg_find_node
    - gf_node_get_name
    - GF_LOG
    - gf_bt_get_next_node_id
    - strchr
    linkageType: ''
    returnType: u32
    signature: u32 gf_bt_get_def_id(GF_BTParser *parser, char *defName)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bt_check_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:1197,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1200,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1202,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1203,1
    - Dst: gf_sg_proto_field_find_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1206,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1208,1
    - Dst: gf_sg_proto_field_get_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:1211,1
    - Dst: gf_sg_proto_field_set_ised
      Src: /src/gpac/src/scene_manager/loader_bt.c:1212,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1213,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - parser
    - info
    - n
    argTypes:
    - GF_BTParser*
    - GF_FieldInfo*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1215
      start: 1190
    functionDepth: 8
    functionLinenumber: 1190
    functionLinenumberEnd: 1215
    functionName: gf_bt_set_field_is
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_sg_proto_field_find_by_name
    - gf_bt_report
    - gf_bt_get_next
    - strnicmp
    - gf_sg_proto_field_get_field
    - gf_bt_check_line
    - gf_sg_proto_field_set_ised
    linkageType: ''
    returnType: Bool
    signature: Bool gf_bt_set_field_is(GF_BTParser *parser, GF_FieldInfo *info, GF_Node
      *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_bt.c:1220,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_bt.c:1223,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1224,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1224,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_bt.c:1225,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_BTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1228
      start: 1217
    functionDepth: 3
    functionLinenumber: 1217
    functionLinenumberEnd: 1228
    functionName: gf_bt_check_unresolved_nodes
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_node_get_name
    - gf_list_count
    - gf_bt_report
    - gf_node_unregister
    linkageType: ''
    returnType: void
    signature: void gf_bt_check_unresolved_nodes(GF_BTParser *parser)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_bt.c:1233,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_bt.c:1235,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1236,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1236,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - parser
    - node_name
    argTypes:
    - GF_BTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1239
      start: 1230
    functionDepth: 1
    functionLinenumber: 1230
    functionLinenumberEnd: 1239
    functionName: gf_bt_has_been_def
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    - gf_node_get_name
    linkageType: ''
    returnType: Bool
    signature: Bool gf_bt_has_been_def(GF_BTParser *parser, char *node_name)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_x3d_type_by_class_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1247,1
    - Dst: gf_node_mpeg4_type_by_class_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1250,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1253,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1254,1
    - Dst: gf_node_mpeg4_type_by_class_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1257,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1259,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1260,1
    - Dst: gf_node_x3d_type_by_class_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1262,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 2
    argNames:
    - parser
    - node_name
    argTypes:
    - GF_BTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1267
      start: 1241
    functionDepth: 1
    functionLinenumber: 1241
    functionLinenumberEnd: 1267
    functionName: gf_bt_get_node_tag
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - strcmp
    - gf_node_x3d_type_by_class_name
    - gf_node_mpeg4_type_by_class_name
    linkageType: ''
    returnType: u32
    signature: u32 gf_bt_get_node_tag(GF_BTParser *parser, char *node_name)
  - BBCount: 73
    BranchProfiles: []
    Callsites:
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1285,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1288,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1294,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1296,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:1297,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1298,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:1300,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1304,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_bt.c:1306,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1307,1
    - Dst: gf_bt_has_been_def
      Src: /src/gpac/src/scene_manager/loader_bt.c:1309,1
    - Dst: gf_bt_get_def_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1311,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1312,1
    - Dst: gf_bt_get_def_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1315,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1318,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1319,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1320,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:1323,1
    - Dst: gf_bt_get_def_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1324,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1325,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_bt.c:1326,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:1327,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_bt.c:1329,1
    - Dst: gf_bt_get_node_tag
      Src: /src/gpac/src/scene_manager/loader_bt.c:1333,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scene_manager/loader_bt.c:1337,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1344,1
    - Dst: gf_sg_proto_create_instance
      Src: /src/gpac/src/scene_manager/loader_bt.c:1354,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:1356,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:1372,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_bt.c:1374,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1382,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1384,1
    - Dst: gf_bt_update_timenode
      Src: /src/gpac/src/scene_manager/loader_bt.c:1387,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1389,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1392,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1395,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1397,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1403,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1403,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:1405,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:1406,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:1407,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1411,1
    - Dst: gf_bt_parse_route
      Src: /src/gpac/src/scene_manager/loader_bt.c:1412,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1417,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1423,1
    - Dst: gf_bt_parse_bool
      Src: /src/gpac/src/scene_manager/loader_bt.c:1425,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1430,1
    - Dst: gf_bt_get_string
      Src: /src/gpac/src/scene_manager/loader_bt.c:1431,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1432,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1437,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1439,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1441,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1443,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1445,1
    - Dst: gf_bt_parse_bool
      Src: /src/gpac/src/scene_manager/loader_bt.c:1447,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1454,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1456,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1458,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1460,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1464,1
    - Dst: gf_bt_parse_bool
      Src: /src/gpac/src/scene_manager/loader_bt.c:1466,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1476,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1476,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1477,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1477,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1478,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1478,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1480,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1483,1
    - Dst: gf_sg_field_type_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1484,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1486,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1490,1
    - Dst: gf_sg_script_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:1491,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1492,1
    - Dst: gf_bt_set_field_is
      Src: /src/gpac/src/scene_manager/loader_bt.c:1494,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1499,1
    - Dst: gf_sg_proto_mark_field_loaded
      Src: /src/gpac/src/scene_manager/loader_bt.c:1503,1
    - Dst: gf_bt_set_field_is
      Src: /src/gpac/src/scene_manager/loader_bt.c:1504,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_bt.c:1510,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:1514,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:1517,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1526,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scene_manager/loader_bt.c:1533,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1537,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1539,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:1540,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:1543,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scene_manager/loader_bt.c:1544,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:1551,1
    - Dst: gf_bt_sffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:1552,1
    - Dst: gf_bt_mffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:1554,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1560,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1564,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_bt.c:1567,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scene_manager/loader_bt.c:1567,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/scene_manager/loader_bt.c:1571,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_bt.c:1572,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_bt.c:1573,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:1578,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:1579,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:1582,1
    - Dst: gf_sg_proto_load_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1587,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_bt.c:1592,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1593,1
    CyclomaticComplexity: 122
    EdgeCount: 122
    ICount: 285
    argCount: 4
    argNames:
    - parser
    - node_name
    - parent
    - szDEFName
    argTypes:
    - GF_BTParser*
    - char*
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1595
      start: 1269
    functionDepth: 12
    functionLinenumber: 1269
    functionLinenumberEnd: 1595
    functionName: gf_bt_sf_node
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_node_get_tag
    - gf_bt_check_ndt
    - gf_bt_sffield
    - gf_bt_get_def_id
    - gf_bt_get_next
    - gf_bt_report
    - gf_node_list_add_child_last
    - gf_sg_proto_load_code
    - gf_sg_find_proto
    - gf_sg_proto_mark_field_loaded
    - gf_node_unregister
    - gf_node_init
    - gf_strdup
    - gf_list_new
    - gf_sg_proto_create_instance
    - gf_sg_find_node_by_name
    - gf_node_get_id
    - gf_node_set_id
    - gf_node_unregister_children
    - gf_list_add
    - gf_sg_vrml_is_sf_field
    - gf_bt_update_timenode
    - gf_bt_get_string
    - gf_sg_script_field_new
    - gf_bt_get_node_tag
    - gf_bt_parse_route
    - gf_node_replace
    - gf_bt_has_been_def
    - gf_node_new
    - gf_list_del_item
    - gf_sg_field_type_by_name
    - gf_bt_check_code
    - gf_bt_parse_float
    - gf_node_get_field_by_name
    - gf_bt_set_field_is
    - strcmp
    - gf_bt_mffield
    - gf_node_register
    - gf_bt_sf_node
    - gf_bt_parse_bool
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *gf_bt_sf_node(GF_BTParser *parser, char *node_name, GF_Node
      *parent, char *szDEFName)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1609,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_bt.c:1612,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_bt.c:1614,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1615,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1615,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:1622,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1626,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1627,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1628,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1629,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1630,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1631,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1632,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1634,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1634,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scene_manager/loader_bt.c:1636,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1641,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1644,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1645,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:1646,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1647,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1648,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1649,1
    - Dst: gf_bt_get_node_tag
      Src: /src/gpac/src/scene_manager/loader_bt.c:1653,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scene_manager/loader_bt.c:1658,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1665,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1666,1
    - Dst: gf_sg_proto_create_instance
      Src: /src/gpac/src/scene_manager/loader_bt.c:1669,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:1671,1
    - Dst: gf_bt_get_def_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1673,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1675,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:1676,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scene_manager/loader_bt.c:1677,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1678,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1680,1
    - Dst: gf_gzrewind
      Src: /src/gpac/src/scene_manager/loader_bt.c:1689,1
    - Dst: gf_gzseek
      Src: /src/gpac/src/scene_manager/loader_bt.c:1690,1
    - Dst: gf_bt_check_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:1692,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 79
    argCount: 2
    argNames:
    - parser
    - defID
    argTypes:
    - GF_BTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1697
      start: 1600
    functionDepth: 9
    functionLinenumber: 1600
    functionLinenumberEnd: 1697
    functionName: gf_bt_peek_node
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 1
    functionsReached:
    - gf_free
    - strcpy
    - gf_list_find
    - gf_list_count
    - gf_bt_get_next
    - gf_bt_report
    - gf_bt_get_def_id
    - gf_sg_find_proto
    - gf_node_init
    - gf_gzseek
    - gf_list_get
    - gf_strdup
    - gf_sg_proto_create_instance
    - gf_sg_find_node_by_name
    - gf_node_get_name
    - gf_node_set_id
    - gf_list_add
    - gf_bt_check_line
    - gf_bt_get_node_tag
    - gf_node_new
    - gf_bt_check_code
    - strcmp
    - gf_gzrewind
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *gf_bt_peek_node(GF_BTParser *parser, char *defID)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_route_find_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1703,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_bt.c:1706,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1707,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - parser
    - name
    argTypes:
    - GF_BTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1710
      start: 1699
    functionDepth: 2
    functionLinenumber: 1699
    functionLinenumberEnd: 1710
    functionName: gf_bt_get_route
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - strcmp
    - gf_sg_route_find_by_name
    linkageType: ''
    returnType: u32
    signature: u32 gf_bt_get_route(GF_BTParser *parser, char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_route_find
      Src: /src/gpac/src/scene_manager/loader_bt.c:1716,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_bt.c:1719,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - parser
    - ID
    argTypes:
    - GF_BTParser*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1723
      start: 1712
    functionDepth: 2
    functionLinenumber: 1712
    functionLinenumberEnd: 1723
    functionName: gf_bt_route_id_used
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_sg_route_find
    linkageType: ''
    returnType: Bool
    signature: Bool gf_bt_route_id_used(GF_BTParser *parser, u32 ID)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1727,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1727,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1728,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1728,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1729,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1729,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1730,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1730,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 10
    argCount: 1
    argNames:
    - eventName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1732
      start: 1725
    functionDepth: 0
    functionLinenumber: 1725
    functionLinenumberEnd: 1732
    functionName: get_evt_type
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: u32
    signature: u32 get_evt_type(char *eventName)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1749,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1751,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1752,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:1753,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1754,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1755,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1756,1
    - Dst: gf_bt_get_next_proto_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1758,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scene_manager/loader_bt.c:1761,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:1762,1
    - Dst: gf_sg_proto_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:1764,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:1765,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1771,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1773,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1774,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1777,1
    - Dst: get_evt_type
      Src: /src/gpac/src/scene_manager/loader_bt.c:1779,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1781,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1784,1
    - Dst: gf_sg_field_type_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1785,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1787,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1790,1
    - Dst: gf_sg_proto_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:1791,1
    - Dst: gf_sg_proto_field_get_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:1794,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1796,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1797,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:1798,1
    - Dst: get_evt_type
      Src: /src/gpac/src/scene_manager/loader_bt.c:1798,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:1799,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1803,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1806,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:1807,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scene_manager/loader_bt.c:1808,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:1811,1
    - Dst: gf_bt_sffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:1812,1
    - Dst: gf_bt_mffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:1819,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1822,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1823,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1824,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1825,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:1828,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1831,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1832,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:1833,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1834,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1838,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1840,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1841,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:1844,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:1845,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1846,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1847,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_bt.c:1850,1
    - Dst: gf_bifs_proto_field_set_aq_info
      Src: /src/gpac/src/scene_manager/loader_bt.c:1856,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1857,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1858,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1868,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scene_manager/loader_bt.c:1870,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1872,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/loader_bt.c:1873,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1874,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:1875,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:1877,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:1878,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_bt.c:1881,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1882,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:1884,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1889,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1890,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1897,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1898,1
    - Dst: gf_sg_proto_get_graph
      Src: /src/gpac/src/scene_manager/loader_bt.c:1905,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1908,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1909,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1910,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1910,1
    - Dst: gf_bt_parse_proto
      Src: /src/gpac/src/scene_manager/loader_bt.c:1911,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1912,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1914,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:1915,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1916,1
    - Dst: gf_bt_parse_route
      Src: /src/gpac/src/scene_manager/loader_bt.c:1917,1
    - Dst: gf_bt_get_route
      Src: /src/gpac/src/scene_manager/loader_bt.c:1919,1
    - Dst: gf_bt_get_next_route_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1920,1
    - Dst: gf_sg_route_set_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1921,1
    - Dst: gf_sg_route_set_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1922,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:1926,1
    - Dst: gf_bt_get_def_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1930,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1932,1
    - Dst: gf_sg_proto_add_node_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1934,1
    - Dst: gf_bt_resolve_routes
      Src: /src/gpac/src/scene_manager/loader_bt.c:1937,1
    - Dst: gf_bt_check_unresolved_nodes
      Src: /src/gpac/src/scene_manager/loader_bt.c:1938,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_bt.c:1944,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:1945,1
    CyclomaticComplexity: 69
    EdgeCount: 69
    ICount: 200
    argCount: 3
    argNames:
    - parser
    - proto_code
    - proto_list
    argTypes:
    - GF_BTParser*
    - char*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1947
      start: 1734
    functionDepth: 13
    functionLinenumber: 1734
    functionLinenumberEnd: 1947
    functionName: gf_bt_parse_proto
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_bifs_proto_field_set_aq_info
    - gf_bt_parse_proto
    - strcpy
    - gf_bt_parse_int
    - gf_bt_sffield
    - gf_bt_report
    - gf_bt_get_next
    - gf_sg_proto_del
    - gf_node_list_add_child_last
    - gf_bt_get_def_id
    - gf_sg_find_proto
    - get_evt_type
    - gf_sg_proto_new
    - gf_strdup
    - gf_sg_vrml_get_sf_type
    - gf_bt_get_next_route_id
    - gf_node_set_id
    - sprintf
    - gf_list_add
    - gf_sg_vrml_is_sf_field
    - gf_sg_proto_add_node_code
    - gf_bt_resolve_routes
    - gf_sg_vrml_mf_reset
    - gf_bt_get_next_proto_id
    - gf_bt_parse_route
    - sscanf
    - gf_sg_vrml_mf_append
    - gf_bt_check_unresolved_nodes
    - gf_sg_route_set_name
    - strnicmp
    - gf_list_del_item
    - strlen
    - gf_bt_get_route
    - gf_sg_proto_field_new
    - gf_bt_check_code
    - gf_bt_parse_float
    - gf_sg_proto_get_graph
    - gf_sg_route_set_id
    - strcmp
    - gf_sg_proto_field_get_field
    - gf_bt_mffield
    - gf_sg_field_type_by_name
    - gf_bt_sf_node
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bt_parse_proto(GF_BTParser *parser, char *proto_code, GF_List
      *proto_list)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:1960,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1960,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1961,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1962,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:1963,1
    - Dst: gf_bt_get_route
      Src: /src/gpac/src/scene_manager/loader_bt.c:1964,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_bt.c:1966,1
    - Dst: gf_bt_route_id_used
      Src: /src/gpac/src/scene_manager/loader_bt.c:1969,1
    - Dst: gf_bt_get_next_route_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1972,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:1973,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1973,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:1975,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1977,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1980,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1981,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1984,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1985,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1987,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1988,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:1990,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:1991,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1993,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1997,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1997,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1997,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2000,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2001,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2002,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2006,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2006,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2007,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2009,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2012,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2013,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2016,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2017,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2019,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2020,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:2022,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:2023,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2025,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2029,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2029,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2029,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:2033,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:2035,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:2039,1
    - Dst: gf_sg_set_max_defined_route_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:2042,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2049,1
    - Dst: gf_sg_route_set_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:2051,1
    - Dst: gf_sg_route_set_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2052,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 89
    argCount: 4
    argNames:
    - parser
    - skip_def
    - is_insert
    - com
    argTypes:
    - GF_BTParser*
    - Bool
    - Bool
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2055
      start: 1950
    functionDepth: 10
    functionLinenumber: 1950
    functionLinenumberEnd: 2055
    functionName: gf_bt_parse_route
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 2
    functionsReached:
    - gf_sg_set_max_defined_route_id
    - gf_node_get_class_name
    - strcpy
    - gf_bt_report
    - gf_bt_get_next
    - atoi
    - gf_bt_route_id_used
    - gf_strdup
    - gf_bt_get_next_route_id
    - gf_node_get_name
    - gf_node_get_id
    - gf_sg_route_new
    - gf_bt_peek_node
    - strstr
    - gf_sg_route_set_name
    - strnicmp
    - gf_bt_get_route
    - gf_bt_check_code
    - gf_node_get_field_by_name
    - gf_sg_route_set_id
    - strcmp
    linkageType: ''
    returnType: GF_Route
    signature: GF_Route *gf_bt_parse_route(GF_BTParser *parser, Bool skip_def, Bool
      is_insert, GF_Command *com)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_bt.c:2060,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_bt.c:2061,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_bt.c:2062,1
    - Dst: gf_bt_get_route
      Src: /src/gpac/src/scene_manager/loader_bt.c:2066,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2067,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:2068,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_bt.c:2076,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_bt.c:2076,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - parser
    - clean
    argTypes:
    - GF_BTParser*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2077
      start: 2057
    functionDepth: 3
    functionLinenumber: 2057
    functionLinenumberEnd: 2077
    functionName: gf_bt_resolve_routes
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_bt_get_route
    - gf_list_count
    - gf_bt_report
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_bt_resolve_routes(GF_BTParser *parser, Bool clean)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_bt.c:2083,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - com
    - node
    argTypes:
    - GF_Command*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2084
      start: 2080
    functionDepth: 2
    functionLinenumber: 2080
    functionLinenumberEnd: 2084
    functionName: bd_set_com_node
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_node_register
    linkageType: ''
    returnType: void
    signature: void bd_set_com_node(GF_Command *com, GF_Node *node)
  - BBCount: 152
    BranchProfiles: []
    Callsites:
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2096,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2103,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2104,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2105,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2106,1
    - Dst: gf_sg_route_find_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2107,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2108,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2109,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2110,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2111,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2113,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:2117,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2119,1
    - Dst: gf_bt_parse_route
      Src: /src/gpac/src/scene_manager/loader_bt.c:2121,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2122,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2126,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2127,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2128,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2129,1
    - Dst: gf_bt_resolve_routes
      Src: /src/gpac/src/scene_manager/loader_bt.c:2131,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2132,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_bt.c:2133,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_bt.c:2133,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2136,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2137,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2137,1
    - Dst: gf_bt_parse_proto
      Src: /src/gpac/src/scene_manager/loader_bt.c:2138,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2144,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2148,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2152,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2153,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2155,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2156,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2157,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2158,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2160,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2161,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2162,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:2163,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2164,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2165,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2168,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2169,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2170,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2171,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2172,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2175,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2179,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2180,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2181,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2183,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2185,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2189,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2190,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2192,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2198,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2199,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2206,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2208,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2209,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2212,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scene_manager/loader_bt.c:2213,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2218,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:2220,1
    - Dst: gf_bt_sffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:2221,1
    - Dst: gf_bt_mffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:2223,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2229,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2234,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2235,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2236,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:2239,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2240,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_bt.c:2243,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2246,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2247,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2253,1
    - Dst: gf_bt_sffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:2254,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2258,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2263,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2271,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2273,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2274,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2275,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2276,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2277,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2280,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2281,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2282,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2284,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2286,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2288,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:2290,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2292,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2293,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2295,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2297,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2298,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2299,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2300,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2303,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2304,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2305,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2307,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2310,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2313,1
    - Dst: floor
      Src: /src/gpac/src/scene_manager/loader_bt.c:2326,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/loader_bt.c:2326,1
    - Dst: floor
      Src: /src/gpac/src/scene_manager/loader_bt.c:2329,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/scene_manager/loader_bt.c:2333,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2335,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2337,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2338,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2339,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2341,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2345,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2346,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2347,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:2351,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:2354,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2357,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2359,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2361,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2363,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2364,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2367,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2368,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2369,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2371,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2377,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2378,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:2380,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:2384,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_bt.c:2388,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2395,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_bt.c:2399,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2408,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2411,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2413,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2419,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2421,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2422,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2427,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2429,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scene_manager/loader_bt.c:2432,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2437,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:2442,1
    - Dst: gf_bt_sffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:2443,1
    - Dst: gf_bt_mffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:2445,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2453,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2460,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2460,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2461,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2462,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2463,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2464,1
    - Dst: gf_bt_parse_route
      Src: /src/gpac/src/scene_manager/loader_bt.c:2465,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2467,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2468,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2472,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2472,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2473,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2475,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2476,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2477,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2479,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2481,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2482,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2484,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2485,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2487,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2488,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:2490,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2491,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2492,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2495,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2496,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2500,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2501,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2502,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2505,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2506,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2507,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2508,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2515,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:2517,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2518,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2521,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2522,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2523,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_bt.c:2526,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2529,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2534,1
    - Dst: gf_bt_sffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:2536,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2540,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2545,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2546,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2547,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2548,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2549,1
    - Dst: gf_bt_get_route
      Src: /src/gpac/src/scene_manager/loader_bt.c:2550,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:2552,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2554,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:2557,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2558,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2560,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2561,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2563,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2565,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2566,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2567,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2568,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2570,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2571,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2572,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2572,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2574,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:2575,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2576,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2577,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:2579,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2581,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2582,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2583,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2588,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2590,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2593,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2594,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2595,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2599,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2604,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2605,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2607,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_bt.c:2608,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2611,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2613,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2617,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2621,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2622,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2623,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2624,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2626,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2628,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2629,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2631,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2632,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2634,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2635,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2636,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2638,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2641,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2648,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2650,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2656,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2657,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2661,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2662,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2664,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scene_manager/loader_bt.c:2665,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2670,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:2671,1
    - Dst: gf_bt_sffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:2672,1
    - Dst: gf_bt_mffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:2674,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2681,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2685,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2686,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2687,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2688,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2690,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2692,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2693,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2695,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2696,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2698,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:2700,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2701,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2703,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2704,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2707,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2708,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_bt.c:2709,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2711,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:2713,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2714,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2715,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2716,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2719,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2725,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2727,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2730,1
    - Dst: gf_bt_sffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:2731,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2736,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2739,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2740,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2741,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2742,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2744,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2746,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2747,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2748,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2751,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2752,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2753,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2755,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2756,1
    - Dst: gf_bt_parse_proto
      Src: /src/gpac/src/scene_manager/loader_bt.c:2757,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2760,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2763,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2764,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2765,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2766,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2767,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2768,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2771,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2773,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2774,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2776,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scene_manager/loader_bt.c:2777,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2779,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/loader_bt.c:2782,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2786,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2789,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2792,1
    CyclomaticComplexity: 214
    EdgeCount: 214
    ICount: 719
    argCount: 3
    argNames:
    - parser
    - name
    - cmdList
    argTypes:
    - GF_BTParser*
    - char*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2794
      start: 2086
    functionDepth: 14
    functionLinenumber: 2086
    functionLinenumberEnd: 2794
    functionName: gf_bt_parse_bifs_command
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - gf_bt_parse_proto
    - gf_node_get_class_name
    - strcpy
    - gf_bt_parse_int
    - gf_sg_command_field_new
    - gf_bt_check_ndt
    - gf_bt_sffield
    - gf_bt_report
    - gf_bt_get_next
    - gf_list_count
    - gf_node_list_add_child_last
    - gf_sg_find_proto
    - gf_node_unregister
    - strchr
    - gf_sg_command_new
    - FIX2FLT
    - gf_realloc
    - gf_strdup
    - gf_sg_vrml_get_sf_type
    - gf_node_get_id
    - gf_list_add
    - gf_sg_vrml_is_sf_field
    - gf_bt_resolve_routes
    - floor
    - gf_bt_peek_node
    - gf_bt_parse_route
    - sscanf
    - bd_set_com_node
    - gf_node_list_get_child
    - gf_sg_route_find_by_name
    - gf_sg_vrml_field_pointer_new
    - gf_bt_get_route
    - gf_bt_check_code
    - gf_node_get_field_by_name
    - strcmp
    - gf_bt_mffield
    - gf_sg_command_del
    - gf_bt_sf_node
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bt_parse_bifs_command(GF_BTParser *parser, char *name, GF_List
      *cmdList)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2810,1
    - Dst: gf_ipmpx_get_tag
      Src: /src/gpac/src/scene_manager/loader_bt.c:2812,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2814,1
    - Dst: gf_ipmpx_data_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2817,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2820,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2824,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2825,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2826,1
    - Dst: gf_ipmpx_get_field_type
      Src: /src/gpac/src/scene_manager/loader_bt.c:2827,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_bt.c:2831,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2832,1
    - Dst: gf_bt_parse_descriptor
      Src: /src/gpac/src/scene_manager/loader_bt.c:2833,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2835,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2836,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_bt.c:2839,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_bt.c:2844,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2845,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2846,1
    - Dst: gf_bt_parse_descriptor
      Src: /src/gpac/src/scene_manager/loader_bt.c:2847,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2849,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_bt.c:2853,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2854,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2861,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2862,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2863,1
    - Dst: gf_ipmpx_set_byte_array
      Src: /src/gpac/src/scene_manager/loader_bt.c:2865,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2866,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2868,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2875,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2876,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2877,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2878,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2879,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2882,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2883,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2885,1
    - Dst: gf_ipmpx_set_byte_array
      Src: /src/gpac/src/scene_manager/loader_bt.c:2887,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2889,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2890,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2896,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2897,1
    - Dst: gf_bt_parse_ipmpx
      Src: /src/gpac/src/scene_manager/loader_bt.c:2898,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2900,1
    - Dst: gf_ipmpx_set_sub_data
      Src: /src/gpac/src/scene_manager/loader_bt.c:2904,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2905,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2906,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2913,1
    - Dst: gf_bt_parse_ipmpx
      Src: /src/gpac/src/scene_manager/loader_bt.c:2914,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2916,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2917,1
    - Dst: gf_ipmpx_set_sub_data
      Src: /src/gpac/src/scene_manager/loader_bt.c:2920,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2921,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2922,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2926,1
    - Dst: gf_ipmpx_set_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:2927,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2930,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2931,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 124
    argCount: 2
    argNames:
    - parser
    - name
    argTypes:
    - GF_BTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2938
      start: 2799
    functionDepth: 8
    functionLinenumber: 2799
    functionLinenumberEnd: 2938
    functionName: gf_bt_parse_ipmpx
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 1
    functionsReached:
    - stricmp
    - gf_assert
    - gf_bt_parse_ipmpx
    - gf_ipmpx_set_field
    - gf_bt_check_code
    - strcpy
    - gf_ipmpx_get_tag
    - gf_bt_get_next
    - gf_ipmpx_data_new
    - gf_bt_report
    - gf_ipmpx_get_field_type
    - gf_bt_parse_descriptor
    - gf_ipmpx_data_del
    - gf_list_add
    - gf_ipmpx_set_byte_array
    - gf_ipmpx_set_sub_data
    linkageType: ''
    returnType: GF_IPMPX_Data
    signature: GF_IPMPX_Data *gf_bt_parse_ipmpx(GF_BTParser *parser, char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_add_desc
      Src: /src/gpac/src/scene_manager/loader_bt.c:2943,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2945,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2946,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - parser
    - par
    - child
    - fieldName
    argTypes:
    - GF_BTParser*
    - GF_Descriptor*
    - GF_Descriptor*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2948
      start: 2941
    functionDepth: 3
    functionLinenumber: 2941
    functionLinenumberEnd: 2948
    functionName: gf_bt_add_desc
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_bt_report
    - gf_odf_desc_del
    - gf_odf_desc_add_desc
    linkageType: ''
    returnType: void
    signature: void gf_bt_add_desc(GF_BTParser *parser, GF_Descriptor *par, GF_Descriptor
      *child, char *fieldName)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2959,1
    - Dst: gf_odf_get_tag_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2961,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2963,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2966,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2969,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2974,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2975,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2976,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2978,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2979,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2980,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2981,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2982,1
    - Dst: gf_odf_get_field_type
      Src: /src/gpac/src/scene_manager/loader_bt.c:2985,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2991,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2992,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2995,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2996,1
    - Dst: gf_bt_parse_ipmpx
      Src: /src/gpac/src/scene_manager/loader_bt.c:2997,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2999,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3003,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3010,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3011,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3014,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3015,1
    - Dst: gf_bt_parse_ipmpx
      Src: /src/gpac/src/scene_manager/loader_bt.c:3016,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3018,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3024,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3027,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3028,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3037,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3038,1
    - Dst: gf_bt_parse_descriptor
      Src: /src/gpac/src/scene_manager/loader_bt.c:3039,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3041,1
    - Dst: gf_bt_add_desc
      Src: /src/gpac/src/scene_manager/loader_bt.c:3045,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3049,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3053,1
    - Dst: gf_bt_parse_descriptor
      Src: /src/gpac/src/scene_manager/loader_bt.c:3054,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3056,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3057,1
    - Dst: gf_bt_add_desc
      Src: /src/gpac/src/scene_manager/loader_bt.c:3060,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3064,1
    - Dst: gf_odf_set_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:3065,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3068,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3069,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3097,1
    - Dst: gf_sm_get_mux_info
      Src: /src/gpac/src/scene_manager/loader_bt.c:3104,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:3114,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 144
    argCount: 2
    argNames:
    - parser
    - name
    argTypes:
    - GF_BTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3118
      start: 2950
    functionDepth: 9
    functionLinenumber: 2950
    functionLinenumberEnd: 3118
    functionName: gf_bt_parse_descriptor
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 2
    functionsReached:
    - gf_bt_parse_ipmpx
    - gf_strdup
    - gf_odf_desc_del
    - gf_bt_check_code
    - strcpy
    - gf_sm_stream_new
    - gf_odf_get_field_type
    - gf_sm_get_mux_info
    - gf_bt_report
    - gf_bt_get_next
    - gf_odf_desc_new
    - strcmp
    - gf_list_add
    - gf_ipmpx_data_del
    - gf_bt_parse_descriptor
    - gf_odf_get_tag_by_name
    - gf_bt_add_desc
    - gf_odf_set_field
    linkageType: ''
    returnType: GF_Descriptor
    signature: GF_Descriptor *gf_bt_parse_descriptor(GF_BTParser *parser, char *name)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3125,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3126,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3128,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3130,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3131,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3134,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3135,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3138,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3139,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3140,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3140,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3141,1
    - Dst: gf_bt_parse_descriptor
      Src: /src/gpac/src/scene_manager/loader_bt.c:3144,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3146,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3151,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3153,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3154,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3155,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3158,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:3159,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3162,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3164,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3165,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3166,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3167,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3170,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3171,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3178,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3179,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3180,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3181,1
    - Dst: gf_bt_parse_descriptor
      Src: /src/gpac/src/scene_manager/loader_bt.c:3184,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3186,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3191,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3191,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3193,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3194,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3197,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3198,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3201,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3202,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3203,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3204,1
    - Dst: gf_bt_parse_descriptor
      Src: /src/gpac/src/scene_manager/loader_bt.c:3207,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3209,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3213,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3216,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3217,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3219,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3221,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3222,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3225,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3226,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3229,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:3230,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/loader_bt.c:3232,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3239,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3242,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3243,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3244,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:3247,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3250,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3251,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3254,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3256,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3259,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:3260,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/loader_bt.c:3262,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3268,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 140
    argCount: 2
    argNames:
    - parser
    - name
    argTypes:
    - GF_BTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3271
      start: 3120
    functionDepth: 10
    functionLinenumber: 3120
    functionLinenumberEnd: 3271
    functionName: gf_bt_parse_od_command
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_bt_check_code
    - gf_bt_parse_int
    - gf_bt_report
    - gf_bt_get_next
    - strcmp
    - gf_list_add
    - gf_bt_parse_descriptor
    - gf_odf_com_new
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void gf_bt_parse_od_command(GF_BTParser *parser, char *name)
  - BBCount: 60
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3299,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3301,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_bt.c:3303,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scene_manager/loader_bt.c:3304,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:3305,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:3307,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3316,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3319,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3324,1
    - Dst: gf_bt_force_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:3324,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3325,1
    - Dst: gf_bt_force_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:3325,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3326,1
    - Dst: gf_bt_force_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:3326,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3327,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3327,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3328,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3333,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3333,1
    - Dst: gf_bt_parse_descriptor
      Src: /src/gpac/src/scene_manager/loader_bt.c:3334,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3337,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3337,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3339,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3341,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3342,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3343,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3349,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_bt.c:3351,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:3353,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3354,1
    - Dst: gf_bt_check_unresolved_nodes
      Src: /src/gpac/src/scene_manager/loader_bt.c:3362,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3373,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3374,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3375,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:3376,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3379,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3380,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3386,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3386,1
    - Dst: gf_bt_parse_proto
      Src: /src/gpac/src/scene_manager/loader_bt.c:3387,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3390,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3392,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3393,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:3394,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3397,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3401,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3402,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3403,1
    - Dst: gf_bt_parse_route
      Src: /src/gpac/src/scene_manager/loader_bt.c:3406,1
    - Dst: gf_bt_get_route
      Src: /src/gpac/src/scene_manager/loader_bt.c:3408,1
    - Dst: gf_bt_get_next_route_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:3409,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:3412,1
    - Dst: gf_sg_set_max_defined_route_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:3413,1
    - Dst: gf_sg_route_set_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:3415,1
    - Dst: gf_sg_route_set_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:3416,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3422,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3422,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3428,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3435,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3436,1
    - Dst: gf_bt_parse_od_command
      Src: /src/gpac/src/scene_manager/loader_bt.c:3437,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3441,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3441,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3441,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3441,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3443,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3443,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3443,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3443,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3443,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3443,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3444,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3453,1
    - Dst: gf_bt_check_unresolved_nodes
      Src: /src/gpac/src/scene_manager/loader_bt.c:3456,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_bt.c:3462,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3472,1
    - Dst: gf_bt_parse_bifs_command
      Src: /src/gpac/src/scene_manager/loader_bt.c:3474,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3478,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3479,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3480,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3481,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:3487,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3491,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3495,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_bt.c:3496,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_bt.c:3497,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3498,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3499,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/loader_bt.c:3503,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3517,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:3518,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3519,1
    - Dst: gf_bt_resolve_routes
      Src: /src/gpac/src/scene_manager/loader_bt.c:3524,1
    - Dst: gf_bt_check_unresolved_nodes
      Src: /src/gpac/src/scene_manager/loader_bt.c:3525,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_bt.c:3528,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_bt.c:3529,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_bt.c:3530,1
    - Dst: gf_sg_script_load
      Src: /src/gpac/src/scene_manager/loader_bt.c:3531,1
    CyclomaticComplexity: 101
    EdgeCount: 101
    ICount: 204
    argCount: 3
    argNames:
    - parser
    - init_com
    - initial_run
    argTypes:
    - GF_BTParser*
    - GF_Command*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3534
      start: 3275
    functionDepth: 15
    functionLinenumber: 3275
    functionLinenumberEnd: 3534
    functionName: gf_bt_loader_run_intern
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_sg_set_max_defined_route_id
    - gf_bt_parse_proto
    - gf_bt_force_line
    - strcpy
    - gf_bt_parse_int
    - gf_bt_report
    - gf_bt_get_next
    - gf_list_count
    - gf_bt_parse_descriptor
    - atoi
    - gf_bt_parse_bifs_command
    - gf_sg_command_new
    - gf_node_init
    - gf_strdup
    - gf_assert
    - gf_list_get
    - gf_bt_get_next_route_id
    - gf_list_add
    - gf_bt_resolve_routes
    - gf_sg_get_root_node
    - gf_bt_parse_route
    - sscanf
    - gf_bt_check_unresolved_nodes
    - gf_sg_script_load
    - gf_sg_route_set_name
    - gf_node_new
    - gf_bt_parse_od_command
    - gf_list_last
    - strlen
    - gf_sm_stream_au_new
    - gf_bt_get_route
    - gf_sg_set_root_node
    - gf_bt_check_code
    - gf_sm_stream_new
    - gf_sg_route_set_id
    - strcmp
    - gf_node_register
    - gf_bt_sf_node
    - gf_node_insert_child
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bt_loader_run_intern(GF_BTParser *parser, GF_Command *init_com,
      Bool initial_run)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/src/scene_manager/loader_bt.c:3547,1
    - Dst: gf_fsize
      Src: /src/gpac/src/scene_manager/loader_bt.c:3550,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/loader_bt.c:3551,1
    - Dst: gf_gzopen
      Src: /src/gpac/src/scene_manager/loader_bt.c:3553,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/loader_bt.c:3556,1
    - Dst: memset
      Src: /src/gpac/src/scene_manager/loader_bt.c:3557,1
    - Dst: gf_gzgets
      Src: /src/gpac/src/scene_manager/loader_bt.c:3561,1
    - Dst: gf_gzseek
      Src: /src/gpac/src/scene_manager/loader_bt.c:3562,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:3566,1
    - Dst: strncpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:3571,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3577,1
    - Dst: gf_gzseek
      Src: /src/gpac/src/scene_manager/loader_bt.c:3581,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3585,1
    - Dst: gf_gzseek
      Src: /src/gpac/src/scene_manager/loader_bt.c:3589,1
    - Dst: gf_gzseek
      Src: /src/gpac/src/scene_manager/loader_bt.c:3594,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/scene_manager/loader_bt.c:3600,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3601,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_bt.c:3616,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3630,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_bt.c:3638,1
    - Dst: gf_bt_check_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:3646,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3655,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3656,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_bt.c:3660,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3665,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3666,1
    - Dst: gf_bt_loader_run_intern
      Src: /src/gpac/src/scene_manager/loader_bt.c:3670,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 108
    argCount: 3
    argNames:
    - load
    - str
    - input_only
    argTypes:
    - GF_SceneLoader*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3674
      start: 3536
    functionDepth: 16
    functionLinenumber: 3536
    functionLinenumberEnd: 3674
    functionName: gf_sm_load_bt_initialize
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_bt_report
    - memset
    - gf_fopen
    - gf_sg_command_new
    - gf_gzseek
    - gf_fsize
    - gf_list_add
    - gf_bt_check_line
    - gf_gzgets
    - GF_LOG
    - strncpy
    - strnicmp
    - gf_gzopen
    - gf_list_enum
    - strlen
    - gf_malloc
    - gf_sm_stream_au_new
    - gf_fclose
    - gf_bt_loader_run_intern
    - gf_file_ext_start
    - gf_sm_stream_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_load_bt_initialize(GF_SceneLoader *load, const char *str,
      Bool input_only)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3680,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3681,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3682,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3683,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3684,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_bt.c:3685,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_bt.c:3686,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_bt.c:3687,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3688,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3689,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3690,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3692,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3693,1
    - Dst: gf_gzclose
      Src: /src/gpac/src/scene_manager/loader_bt.c:3695,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3696,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3697,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3699
      start: 3676
    functionDepth: 3
    functionLinenumber: 3676
    functionLinenumberEnd: 3699
    functionName: load_bt_done
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_gzclose
    - gf_list_count
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void load_bt_done(GF_SceneLoader *load)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_sm_load_bt_initialize
      Src: /src/gpac/src/scene_manager/loader_bt.c:3708,1
    - Dst: gf_bt_loader_run_intern
      Src: /src/gpac/src/scene_manager/loader_bt.c:3712,1
    - Dst: gf_gzclose
      Src: /src/gpac/src/scene_manager/loader_bt.c:3718,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3723,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3731
      start: 3701
    functionDepth: 17
    functionLinenumber: 3701
    functionLinenumberEnd: 3731
    functionName: load_bt_run
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_gzclose
    - gf_sm_load_bt_initialize
    - gf_bt_loader_run_intern
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err load_bt_run(GF_SceneLoader *load)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:3747,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:3748,1
    - Dst: gf_sm_load_bt_initialize
      Src: /src/gpac/src/scene_manager/loader_bt.c:3751,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3753,1
    - Dst: gf_bt_loader_run_intern
      Src: /src/gpac/src/scene_manager/loader_bt.c:3757,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3760,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 2
    argNames:
    - load
    - str
    argTypes:
    - GF_SceneLoader*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3762
      start: 3734
    functionDepth: 17
    functionLinenumber: 3734
    functionLinenumberEnd: 3762
    functionName: load_bt_parse_string
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_bt_loader_run_intern
    - gf_sm_load_bt_initialize
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err load_bt_parse_string(GF_SceneLoader *load, const char *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - load
    - suspend
    argTypes:
    - GF_SceneLoader*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3767
      start: 3764
    functionDepth: 0
    functionLinenumber: 3764
    functionLinenumberEnd: 3767
    functionName: load_bt_suspend
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err load_bt_suspend(GF_SceneLoader *load, Bool suspend)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_bt.c:3777,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3781,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3782,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3783,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3784,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3785,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3786,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3787,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/scene_manager/loader_bt.c:3795,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3796,1
    - Dst: gf_sm_load_bt_initialize
      Src: /src/gpac/src/scene_manager/loader_bt.c:3800,1
    - Dst: load_bt_done
      Src: /src/gpac/src/scene_manager/loader_bt.c:3802,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3806
      start: 3769
    functionDepth: 17
    functionLinenumber: 3769
    functionLinenumberEnd: 3806
    functionName: gf_sm_load_init_bt
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - load_bt_done
    - gf_bt_report
    - gf_sm_load_bt_initialize
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_load_init_bt(GF_SceneLoader *load)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_bt.c:3814,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3815,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_bt.c:3817,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3819,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3820,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:3823,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3825,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3826,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3827,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3828,1
    - Dst: gf_bt_loader_run_intern
      Src: /src/gpac/src/scene_manager/loader_bt.c:3830,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3831,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3832,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3833,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_bt.c:3834,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_bt.c:3835,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_bt.c:3836,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3837,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3838,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3839,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3841,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3842,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3844,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3845,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 33
    argCount: 3
    argNames:
    - in_scene
    - node_str
    - force_wrl
    argTypes:
    - GF_SceneGraph*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3848
      start: 3809
    functionDepth: 16
    functionLinenumber: 3809
    functionLinenumberEnd: 3848
    functionName: gf_sm_load_bt_from_string
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_list_get
    - gf_bt_loader_run_intern
    - GF_SAFEALLOC
    - gf_list_count
    - gf_list_rem
    - strlen
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sm_load_bt_from_string(GF_SceneGraph *in_scene, char
      *node_str, Bool force_wrl)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/scene_stats.c:41,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/scene_stats.c:44,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/scene_stats.c:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 58
    functionName: NewSceneStats
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_SceneStatistics
    signature: GF_SceneStatistics *NewSceneStats()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_stats.c:62,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_stats.c:63,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/scene_stats.c:64,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_stats.c:65,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_stats.c:67,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_stats.c:68,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/scene_stats.c:69,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_stats.c:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 1
    argNames:
    - stat
    argTypes:
    - GF_SceneStatistics*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 84
    functionName: ResetStatisitics
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void ResetStatisitics(GF_SceneStatistics *stat)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ResetStatisitics
      Src: /src/gpac/src/scene_manager/scene_stats.c:88,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/scene_stats.c:89,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/scene_stats.c:90,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_stats.c:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - stat
    argTypes:
    - GF_SceneStatistics*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 86
    functionDepth: 2
    functionLinenumber: 86
    functionLinenumberEnd: 92
    functionName: DeleteStatisitics
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_del
    - ResetStatisitics
    linkageType: ''
    returnType: void
    signature: void DeleteStatisitics(GF_SceneStatistics *stat)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_stats.c:104,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/scene_stats.c:109,1
    - Dst: gf_sg_proto_get_class_name
      Src: /src/gpac/src/scene_manager/scene_stats.c:114,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/scene_stats.c:116,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_stats.c:121,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/scene_stats.c:126,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/scene_stats.c:129,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/scene_stats.c:130,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 41
    argCount: 5
    argNames:
    - stat
    - n
    - isUsed
    - isDelete
    - prev
    argTypes:
    - GF_SceneStatistics*
    - GF_Node*
    - Bool
    - Bool
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 94
    functionDepth: 2
    functionLinenumber: 94
    functionLinenumberEnd: 137
    functionName: StatNode
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 0
    functionsReached:
    - gf_node_get_class_name
    - GF_SAFEALLOC
    - gf_sg_proto_get_class_name
    - gf_list_add
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void StatNode(GF_SceneStatistics *stat, GF_Node *n, Bool isUsed, Bool
      isDelete, GF_Node *prev)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: FIX2INT
      Src: /src/gpac/src/scene_manager/scene_stats.c:149,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 31
    argCount: 3
    argNames:
    - stat
    - v
    - scale
    argTypes:
    - GF_SceneStatistics*
    - Fixed
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 174
    functionName: StatFixed
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 0
    functionsReached:
    - FIX2INT
    linkageType: ''
    returnType: void
    signature: void StatFixed(GF_SceneStatistics *stat, Fixed v, Bool scale)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: StatFixed
      Src: /src/gpac/src/scene_manager/scene_stats.c:184,1
    - Dst: StatFixed
      Src: /src/gpac/src/scene_manager/scene_stats.c:185,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 2
    argNames:
    - stat
    - val
    argTypes:
    - GF_SceneStatistics*
    - SFVec2f*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 177
    functionDepth: 2
    functionLinenumber: 177
    functionLinenumberEnd: 186
    functionName: StatSVGPoint
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 0
    functionsReached:
    - StatFixed
    linkageType: ''
    returnType: void
    signature: void StatSVGPoint(GF_SceneStatistics *stat, SFVec2f *val)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 2
    argNames:
    - stat
    - val
    argTypes:
    - GF_SceneStatistics*
    - SFVec2f*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 196
    functionName: StatSFVec2f
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StatSFVec2f(GF_SceneStatistics *stat, SFVec2f *val)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 15
    argCount: 2
    argNames:
    - stat
    - val
    argTypes:
    - GF_SceneStatistics*
    - SFVec3f*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 207
    functionName: StatSFVec3f
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StatSFVec3f(GF_SceneStatistics *stat, SFVec3f *val)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: StatSFVec2f
      Src: /src/gpac/src/scene_manager/scene_stats.c:226,1
    - Dst: StatSFVec3f
      Src: /src/gpac/src/scene_manager/scene_stats.c:230,1
    - Dst: StatSFVec2f
      Src: /src/gpac/src/scene_manager/scene_stats.c:243,1
    - Dst: StatSFVec3f
      Src: /src/gpac/src/scene_manager/scene_stats.c:252,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 41
    argCount: 2
    argNames:
    - stat
    - field
    argTypes:
    - GF_SceneStatistics*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 258
    functionName: StatField
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 0
    functionsReached:
    - StatSFVec3f
    - StatSFVec2f
    linkageType: ''
    returnType: void
    signature: void StatField(GF_SceneStatistics *stat, GF_FieldInfo *field)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: StatSFVec2f
      Src: /src/gpac/src/scene_manager/scene_stats.c:265,1
    - Dst: StatSFVec3f
      Src: /src/gpac/src/scene_manager/scene_stats.c:268,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - stat
    - field
    argTypes:
    - GF_SceneStatistics*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 261
    functionDepth: 1
    functionLinenumber: 261
    functionLinenumberEnd: 271
    functionName: StatSingleField
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 0
    functionsReached:
    - StatSFVec3f
    - StatSFVec2f
    linkageType: ''
    returnType: void
    signature: void StatSingleField(GF_SceneStatistics *stat, GF_FieldInfo *field)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: StatSVGPoint
      Src: /src/gpac/src/scene_manager/scene_stats.c:286,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_stats.c:291,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_stats.c:292,1
    - Dst: StatSVGPoint
      Src: /src/gpac/src/scene_manager/scene_stats.c:293,1
    - Dst: StatFixed
      Src: /src/gpac/src/scene_manager/scene_stats.c:302,1
    - Dst: StatFixed
      Src: /src/gpac/src/scene_manager/scene_stats.c:303,1
    - Dst: StatFixed
      Src: /src/gpac/src/scene_manager/scene_stats.c:304,1
    - Dst: StatFixed
      Src: /src/gpac/src/scene_manager/scene_stats.c:305,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_stats.c:312,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_stats.c:313,1
    - Dst: StatSVGPoint
      Src: /src/gpac/src/scene_manager/scene_stats.c:314,1
    - Dst: gf_mx2d_is_identity
      Src: /src/gpac/src/scene_manager/scene_stats.c:322,1
    - Dst: StatFixed
      Src: /src/gpac/src/scene_manager/scene_stats.c:323,1
    - Dst: StatFixed
      Src: /src/gpac/src/scene_manager/scene_stats.c:324,1
    - Dst: StatFixed
      Src: /src/gpac/src/scene_manager/scene_stats.c:325,1
    - Dst: StatFixed
      Src: /src/gpac/src/scene_manager/scene_stats.c:326,1
    - Dst: StatFixed
      Src: /src/gpac/src/scene_manager/scene_stats.c:327,1
    - Dst: StatFixed
      Src: /src/gpac/src/scene_manager/scene_stats.c:328,1
    - Dst: gf_mx2d_is_identity
      Src: /src/gpac/src/scene_manager/scene_stats.c:335,1
    - Dst: StatFixed
      Src: /src/gpac/src/scene_manager/scene_stats.c:336,1
    - Dst: StatFixed
      Src: /src/gpac/src/scene_manager/scene_stats.c:337,1
    - Dst: StatFixed
      Src: /src/gpac/src/scene_manager/scene_stats.c:338,1
    - Dst: StatFixed
      Src: /src/gpac/src/scene_manager/scene_stats.c:339,1
    - Dst: StatFixed
      Src: /src/gpac/src/scene_manager/scene_stats.c:340,1
    - Dst: StatFixed
      Src: /src/gpac/src/scene_manager/scene_stats.c:341,1
    - Dst: StatFixed
      Src: /src/gpac/src/scene_manager/scene_stats.c:347,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 56
    argCount: 2
    argNames:
    - stat
    - field
    argTypes:
    - GF_SceneStatistics*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 274
    functionDepth: 3
    functionLinenumber: 274
    functionLinenumberEnd: 350
    functionName: StatSVGAttribute
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_mx2d_is_identity
    - StatSVGPoint
    - gf_list_count
    - StatFixed
    linkageType: ''
    returnType: void
    signature: void StatSVGAttribute(GF_SceneStatistics *stat, GF_FieldInfo *field)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - stat
    - fieldType
    - field
    argTypes:
    - GF_SceneStatistics*
    - u32
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 353
    functionDepth: 0
    functionLinenumber: 353
    functionLinenumberEnd: 371
    functionName: StatRemField
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StatRemField(GF_SceneStatistics *stat, u32 fieldType, GF_FieldInfo
      *field)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/scene_stats.c:378,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_stats.c:380,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/scene_stats.c:383,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - st
    - n
    argTypes:
    - GF_StatManager*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 374
    functionDepth: 2
    functionLinenumber: 374
    functionLinenumberEnd: 385
    functionName: StatIsUSE
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 0
    functionsReached:
    - gf_node_get_id
    - gf_list_enum
    - gf_list_add
    linkageType: ''
    returnType: Bool
    signature: Bool StatIsUSE(GF_StatManager *st, GF_Node *n)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/scene_manager/scene_stats.c:394,1
    - Dst: StatNode
      Src: /src/gpac/src/scene_manager/scene_stats.c:395,1
    - Dst: StatIsUSE
      Src: /src/gpac/src/scene_manager/scene_stats.c:395,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/scene_stats.c:400,1
    - Dst: gf_sg_proto_create_node
      Src: /src/gpac/src/scene_manager/scene_stats.c:403,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/scene_stats.c:409,1
    - Dst: StatSVGAttribute
      Src: /src/gpac/src/scene_manager/scene_stats.c:420,1
    - Dst: StatNodeGraph
      Src: /src/gpac/src/scene_manager/scene_stats.c:425,1
    - Dst: gf_node_get_field_count
      Src: /src/gpac/src/scene_manager/scene_stats.c:440,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_stats.c:443,1
    - Dst: StatNodeGraph
      Src: /src/gpac/src/scene_manager/scene_stats.c:450,1
    - Dst: StatNodeGraph
      Src: /src/gpac/src/scene_manager/scene_stats.c:455,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_stats.c:460,1
    - Dst: gf_sg_vrml_field_equal
      Src: /src/gpac/src/scene_manager/scene_stats.c:461,1
    - Dst: StatField
      Src: /src/gpac/src/scene_manager/scene_stats.c:462,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/scene_stats.c:470,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/scene_manager/scene_stats.c:471,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 65
    argCount: 2
    argNames:
    - st
    - n
    argTypes:
    - GF_StatManager*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 387
    functionDepth: 4
    functionLinenumber: 387
    functionLinenumberEnd: 473
    functionName: StatNodeGraph
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 1
    functionsReached:
    - gf_sg_proto_create_node
    - StatField
    - gf_node_get_field_count
    - gf_node_set_cyclic_traverse_flag
    - StatIsUSE
    - gf_node_unregister
    - gf_node_new
    - StatNode
    - gf_node_get_field
    - StatSVGAttribute
    - StatNodeGraph
    - gf_sg_vrml_field_equal
    - gf_node_register
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err StatNodeGraph(GF_StatManager *st, GF_Node *n)
  - BBCount: 53
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_stats.c:486,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_stats.c:487,1
    - Dst: StatNodeGraph
      Src: /src/gpac/src/scene_manager/scene_stats.c:492,1
    - Dst: StatNodeGraph
      Src: /src/gpac/src/scene_manager/scene_stats.c:495,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_stats.c:499,1
    - Dst: StatNodeGraph
      Src: /src/gpac/src/scene_manager/scene_stats.c:504,1
    - Dst: StatNodeGraph
      Src: /src/gpac/src/scene_manager/scene_stats.c:510,1
    - Dst: StatField
      Src: /src/gpac/src/scene_manager/scene_stats.c:518,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_stats.c:525,1
    - Dst: StatNodeGraph
      Src: /src/gpac/src/scene_manager/scene_stats.c:529,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/scene_stats.c:531,1
    - Dst: StatSingleField
      Src: /src/gpac/src/scene_manager/scene_stats.c:533,1
    - Dst: StatNode
      Src: /src/gpac/src/scene_manager/scene_stats.c:539,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_stats.c:543,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/scene_stats.c:547,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/scene_manager/scene_stats.c:548,1
    - Dst: StatNode
      Src: /src/gpac/src/scene_manager/scene_stats.c:549,1
    - Dst: StatRemField
      Src: /src/gpac/src/scene_manager/scene_stats.c:551,1
    - Dst: StatNodeGraph
      Src: /src/gpac/src/scene_manager/scene_stats.c:555,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_stats.c:559,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/scene_stats.c:564,1
    - Dst: StatSingleField
      Src: /src/gpac/src/scene_manager/scene_stats.c:566,1
    - Dst: StatNodeGraph
      Src: /src/gpac/src/scene_manager/scene_stats.c:568,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_stats.c:577,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/scene_stats.c:582,1
    - Dst: StatSingleField
      Src: /src/gpac/src/scene_manager/scene_stats.c:584,1
    - Dst: StatNodeGraph
      Src: /src/gpac/src/scene_manager/scene_stats.c:586,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_stats.c:592,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_stats.c:593,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_stats.c:594,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/scene_stats.c:599,1
    - Dst: StatSingleField
      Src: /src/gpac/src/scene_manager/scene_stats.c:601,1
    - Dst: StatNodeGraph
      Src: /src/gpac/src/scene_manager/scene_stats.c:603,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 139
    argCount: 2
    argNames:
    - stat
    - com
    argTypes:
    - GF_StatManager*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 475
    functionDepth: 5
    functionLinenumber: 475
    functionLinenumberEnd: 617
    functionName: gf_sm_stats_for_command
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 1
    functionsReached:
    - StatField
    - gf_list_get
    - gf_sg_vrml_get_sf_type
    - gf_node_list_get_child
    - StatRemField
    - gf_list_count
    - StatSingleField
    - gf_node_get_field
    - StatNode
    - StatNodeGraph
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sm_stats_for_command(GF_StatManager *stat, GF_Command
      *com)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_stats.c:622,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_stats.c:624,1
    - Dst: gf_sm_stats_for_command
      Src: /src/gpac/src/scene_manager/scene_stats.c:625,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - commandList
    - st
    argTypes:
    - GF_List*
    - GF_StatManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 619
    functionDepth: 6
    functionLinenumber: 619
    functionLinenumberEnd: 628
    functionName: gf_sm_stat_au
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_sm_stats_for_command
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_stat_au(GF_List *commandList, GF_StatManager *st)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_stats.c:637,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_stats.c:639,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_stats.c:647,1
    - Dst: gf_sm_stat_au
      Src: /src/gpac/src/scene_manager/scene_stats.c:648,1
    - Dst: gf_sm_stats_for_graph
      Src: /src/gpac/src/scene_manager/scene_stats.c:653,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 2
    argNames:
    - stat
    - sm
    argTypes:
    - GF_StatManager*
    - GF_SceneManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 630
    functionDepth: 7
    functionLinenumber: 630
    functionLinenumberEnd: 656
    functionName: gf_sm_stats_for_scene
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_list_enum
    - gf_sm_stats_for_graph
    - gf_sm_stat_au
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sm_stats_for_scene(GF_StatManager *stat, GF_SceneManager
      *sm)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: StatNodeGraph
      Src: /src/gpac/src/scene_manager/scene_stats.c:662,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - stat
    - sg
    argTypes:
    - GF_StatManager*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 663
      start: 658
    functionDepth: 5
    functionLinenumber: 658
    functionLinenumberEnd: 663
    functionName: gf_sm_stats_for_graph
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 2
    functionsReached:
    - StatNodeGraph
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sm_stats_for_graph(GF_StatManager *stat, GF_SceneGraph
      *sg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/scene_stats.c:669,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/scene_stats.c:670,1
    - Dst: NewSceneStats
      Src: /src/gpac/src/scene_manager/scene_stats.c:671,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 674
      start: 666
    functionDepth: 2
    functionLinenumber: 666
    functionLinenumberEnd: 674
    functionName: GF_StatManager *gf_sm_stats_new()
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_malloc
    - NewSceneStats
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_StatManager *gf_sm_stats_new()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/scene_stats.c:679,1
    - Dst: DeleteStatisitics
      Src: /src/gpac/src/scene_manager/scene_stats.c:680,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_stats.c:681,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - stat
    argTypes:
    - GF_StatManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 682
      start: 676
    functionDepth: 3
    functionLinenumber: 676
    functionLinenumberEnd: 682
    functionName: gf_sm_stats_del
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 3
    functionsReached:
    - gf_free
    - DeleteStatisitics
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sm_stats_del(GF_StatManager *stat)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 684
    functionDepth: 0
    functionLinenumber: 684
    functionLinenumberEnd: 688
    functionName: GF_SceneStatistics *gf_sm_stats_get(GF_StatManager *stat)
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_SceneStatistics *gf_sm_stats_get(GF_StatManager *stat)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ResetStatisitics
      Src: /src/gpac/src/scene_manager/scene_stats.c:694,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - stat
    argTypes:
    - GF_StatManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 695
      start: 690
    functionDepth: 2
    functionLinenumber: 690
    functionLinenumberEnd: 695
    functionName: gf_sm_stats_reset
    functionSourceFile: /src/gpac/src/scene_manager/scene_stats.c
    functionUses: 1
    functionsReached:
    - ResetStatisitics
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sm_stats_reset(GF_StatManager *stat)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/scene_dump.c:86,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/scene_dump.c:101,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/scene_dump.c:101,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/scene_dump.c:101,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/scene_dump.c:102,1
    - Dst: strcat
      Src: /src/gpac/src/scene_manager/scene_dump.c:103,1
    - Dst: gf_fopen
      Src: /src/gpac/src/scene_manager/scene_dump.c:104,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_dump.c:106,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/scene_dump.c:155,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/scene_dump.c:155,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/scene_dump.c:155,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/scene_dump.c:156,1
    - Dst: strcat
      Src: /src/gpac/src/scene_manager/scene_dump.c:157,1
    - Dst: gf_fopen
      Src: /src/gpac/src/scene_manager/scene_dump.c:158,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_dump.c:160,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_dump.c:161,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/scene_dump.c:183,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/scene_dump.c:184,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/scene_dump.c:185,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 97
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 188
    functionName: GF_SceneDumper *gf_sm_dumper_new(GF_SceneGraph *graph, char *_rad_name,
      Bool is_final_name, char indent_char, GF_SceneDumpFormat dump_mode)
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_malloc
    - gf_free
    - gf_list_new
    - GF_SAFEALLOC
    - strcpy
    - gf_fopen
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_SceneDumper *gf_sm_dumper_new(GF_SceneGraph *graph, char
      *_rad_name, Bool is_final_name, char indent_char, GF_SceneDumpFormat dump_mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sdump
    - extra
    argTypes:
    - GF_SceneDumper*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 194
    functionName: gf_sm_dumper_set_extra_graph
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sm_dumper_set_extra_graph(GF_SceneDumper *sdump, GF_SceneGraph
      *extra)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/scene_dump.c:199,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:200,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:201,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/scene_dump.c:202,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/scene_dump.c:203,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/scene_dump.c:205,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/scene_dump.c:206,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/scene_dump.c:207,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_dump.c:209,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_dump.c:212,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - sdump
    argTypes:
    - GF_SceneDumper*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 196
    functionDepth: 5
    functionLinenumber: 196
    functionLinenumberEnd: 213
    functionName: gf_sm_dumper_del
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_list_get
    - gf_list_count
    - gf_node_unregister
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sm_dumper_del(GF_SceneDumper *sdump)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - bd
    argTypes:
    - GF_SceneDumper*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 219
    functionName: gf_sm_dump_get_name
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_sm_dump_get_name(GF_SceneDumper *bd)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:224,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:226,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:234,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:239,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:240,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:243,1
    - Dst: gf_odf_get_laser_config
      Src: /src/gpac/src/scene_manager/scene_dump.c:248,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/scene_manager/scene_dump.c:249,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:251,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:260,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:261,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/scene_manager/scene_dump.c:263,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:265,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:266,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:268,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:272,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/scene_manager/scene_dump.c:276,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:279,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:283,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:284,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:285,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:286,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/scene_manager/scene_dump.c:286,1
    - Dst: gf_gpac_copyright
      Src: /src/gpac/src/scene_manager/scene_dump.c:286,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:287,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:288,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:290,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 62
    argCount: 2
    argNames:
    - sdump
    - root_od
    argTypes:
    - GF_SceneDumper*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 221
    functionDepth: 2
    functionLinenumber: 221
    functionLinenumberEnd: 293
    functionName: gf_dump_setup
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_fprintf
    - gf_gpac_copyright
    - gf_list_count
    - gf_gpac_version
    - gf_odf_dump_desc
    - gf_odf_get_laser_config
    linkageType: ''
    returnType: void
    signature: void gf_dump_setup(GF_SceneDumper *sdump, GF_Descriptor *root_od)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:300,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:307,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:309,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:310,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:312,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:313,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - sdump
    - root_od
    argTypes:
    - GF_SceneDumper*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 295
    functionDepth: 2
    functionLinenumber: 295
    functionLinenumberEnd: 315
    functionName: gf_dump_finalize
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void gf_dump_finalize(GF_SceneDumper *sdump, GF_Descriptor *root_od)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/scene_manager/scene_dump.c:319,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/scene_dump.c:321,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - sdump
    - node
    argTypes:
    - GF_SceneDumper*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 317
    functionDepth: 2
    functionLinenumber: 317
    functionLinenumberEnd: 323
    functionName: gf_dump_vrml_is_def_node
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_find
    - gf_list_add
    linkageType: ''
    returnType: Bool
    signature: Bool gf_dump_vrml_is_def_node(GF_SceneDumper *sdump, GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:327,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - sdump
    - ID
    argTypes:
    - GF_SceneDumper*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 325
    functionDepth: 1
    functionLinenumber: 325
    functionLinenumberEnd: 330
    functionName: gf_dump_find_node
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - gf_sg_find_node
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *gf_dump_find_node(GF_SceneDumper *sdump, u32 ID)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - sdump
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 332
    functionDepth: 0
    functionLinenumber: 332
    functionLinenumberEnd: 337
    functionName: DUMP_IND
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DUMP_IND(sdump)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:342,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:344,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:346,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - sdump
    - name
    argTypes:
    - GF_SceneDumper*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 339
    functionDepth: 2
    functionLinenumber: 339
    functionLinenumberEnd: 348
    functionName: StartElement
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 38
    functionsReached:
    - DUMP_IND
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void StartElement(GF_SceneDumper *sdump, const char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:355,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:357,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - sdump
    - has_sub_el
    argTypes:
    - GF_SceneDumper*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 350
    functionDepth: 2
    functionLinenumber: 350
    functionLinenumberEnd: 360
    functionName: EndElementHeader
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void EndElementHeader(GF_SceneDumper *sdump, Bool has_sub_el)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:366,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:367,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:370,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:371,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - sdump
    - name
    - had_sub_el
    argTypes:
    - GF_SceneDumper*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 362
    functionDepth: 2
    functionLinenumber: 362
    functionLinenumberEnd: 374
    functionName: EndElement
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 38
    functionsReached:
    - DUMP_IND
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void EndElement(GF_SceneDumper *sdump, const char *name, Bool had_sub_el)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:380,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:381,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:383,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - sdump
    - name
    argTypes:
    - GF_SceneDumper*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 376
    functionDepth: 2
    functionLinenumber: 376
    functionLinenumberEnd: 385
    functionName: StartAttribute
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 33
    functionsReached:
    - DUMP_IND
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void StartAttribute(GF_SceneDumper *sdump, const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:391,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:393,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - sdump
    argTypes:
    - GF_SceneDumper*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 387
    functionDepth: 2
    functionLinenumber: 387
    functionLinenumberEnd: 395
    functionName: EndAttribute
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 30
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void EndAttribute(GF_SceneDumper *sdump)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:401,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:404,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:406,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:408,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - sdump
    - name
    argTypes:
    - GF_SceneDumper*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 398
    functionDepth: 2
    functionLinenumber: 398
    functionLinenumberEnd: 410
    functionName: StartList
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 4
    functionsReached:
    - DUMP_IND
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void StartList(GF_SceneDumper *sdump, const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:415,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:417,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:419,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - sdump
    - name
    argTypes:
    - GF_SceneDumper*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 412
    functionDepth: 2
    functionLinenumber: 412
    functionLinenumberEnd: 421
    functionName: EndList
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 4
    functionsReached:
    - DUMP_IND
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void EndList(GF_SceneDumper *sdump, const char *name)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/scene_dump.c:429,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/scene_dump.c:431,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/scene_manager/scene_dump.c:432,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:438,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:439,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:442,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:443,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:446,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:449,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:452,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:460,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:462,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_dump.c:468,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 44
    argCount: 3
    argNames:
    - sdump
    - escape_xml
    - str
    argTypes:
    - GF_SceneDumper*
    - Bool
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 424
    functionDepth: 3
    functionLinenumber: 424
    functionLinenumberEnd: 469
    functionName: scene_dump_utf_string
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fprintf
    - gf_utf8_mbstowcs
    - strlen
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void scene_dump_utf_string(GF_SceneDumper *sdump, Bool escape_xml,
      char *str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_name_and_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:479,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:481,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:483,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - sdump
    - node
    argTypes:
    - GF_SceneDumper*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 484
      start: 473
    functionDepth: 2
    functionLinenumber: 473
    functionLinenumberEnd: 484
    functionName: scene_dump_vrml_id
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - gf_node_get_name_and_id
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void scene_dump_vrml_id(GF_SceneDumper *sdump, GF_Node *node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_route_find
      Src: /src/gpac/src/scene_manager/scene_dump.c:491,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_dump.c:498,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_dump.c:508,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 3
    argNames:
    - sdump
    - ID
    - outName
    argTypes:
    - GF_SceneDumper*
    - u32
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 486
    functionDepth: 2
    functionLinenumber: 486
    functionLinenumberEnd: 517
    functionName: scene_dump_vrml_find_route_name
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_sg_route_find
    linkageType: ''
    returnType: Bool
    signature: Bool scene_dump_vrml_find_route_name(GF_SceneDumper *sdump, u32 ID,
      const char **outName)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: scene_dump_vrml_find_route_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:522,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:525,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:527,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - sdump
    - routeID
    - rName
    argTypes:
    - GF_SceneDumper*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 519
    functionDepth: 3
    functionLinenumber: 519
    functionLinenumberEnd: 528
    functionName: scene_dump_vrml_route_id
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - scene_dump_vrml_find_route_name
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void scene_dump_vrml_route_id(GF_SceneDumper *sdump, u32 routeID, char
      *rName)
  - BBCount: 51
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:535,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:538,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:541,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:541,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:544,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:547,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:550,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:550,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:550,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:550,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:553,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:553,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:553,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:553,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:553,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:556,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:556,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:556,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:559,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:562,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:562,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:562,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:562,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:565,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:568,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:568,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:568,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:568,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:568,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:576,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:577,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:578,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:589,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/scene_dump.c:593,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:596,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/scene_dump.c:599,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/scene_manager/scene_dump.c:600,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:607,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:610,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:613,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:617,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:625,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:628,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_dump.c:634,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:636,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:644,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:646,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/scene_dump.c:651,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/scene_dump.c:653,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/scene_dump.c:656,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/scene_manager/scene_dump.c:657,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_dump.c:659,1
    - Dst: scene_dump_utf_string
      Src: /src/gpac/src/scene_manager/scene_dump.c:668,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/scene_dump.c:669,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:670,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/scene_dump.c:672,1
    - Dst: gf_fputc
      Src: /src/gpac/src/scene_manager/scene_dump.c:674,1
    - Dst: gf_fputc
      Src: /src/gpac/src/scene_manager/scene_dump.c:675,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/scene_dump.c:679,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_dump.c:680,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:684,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:686,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/scene_manager/scene_dump.c:698,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:700,1
    - Dst: fwprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:701,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:702,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:705,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:706,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:707,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:711,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:713,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:721,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:726,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:730,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:734,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:738,1
    CyclomaticComplexity: 59
    EdgeCount: 59
    ICount: 185
    argCount: 5
    argNames:
    - sdump
    - type
    - ptr
    - is_mf
    - node
    argTypes:
    - GF_SceneDumper*
    - u32
    - void*
    - Bool
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 746
      start: 531
    functionDepth: 4
    functionLinenumber: 531
    functionLinenumberEnd: 746
    functionName: gf_dump_vrml_sffield
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_free
    - DUMP_IND
    - gf_node_get_tag
    - gf_fprintf
    - gf_fputc
    - strcpy
    - gf_utf8_mbstowcs
    - FIX2FLT
    - gf_base64_encode
    - fwprintf
    - scene_dump_utf_string
    - gf_node_get_field
    - strchr
    - strlen
    - scene_dump_vrml_id
    linkageType: ''
    returnType: void
    signature: void gf_dump_vrml_sffield(GF_SceneDumper *sdump, u32 type, void *ptr,
      Bool is_mf, GF_Node *node)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:757,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/scene_dump.c:761,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:764,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:772,1
    - Dst: StartAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:773,1
    - Dst: gf_dump_vrml_sffield
      Src: /src/gpac/src/scene_manager/scene_dump.c:775,1
    - Dst: EndAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:776,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/scene_dump.c:780,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:782,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:784,1
    - Dst: StartAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:786,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:789,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scene_manager/scene_dump.c:790,1
    - Dst: gf_dump_vrml_sffield
      Src: /src/gpac/src/scene_manager/scene_dump.c:792,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:795,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:797,1
    - Dst: EndAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:799,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 51
    argCount: 3
    argNames:
    - sdump
    - field
    - parent
    argTypes:
    - GF_SceneDumper*
    - GF_FieldInfo
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 802
      start: 749
    functionDepth: 5
    functionLinenumber: 749
    functionLinenumberEnd: 802
    functionName: gf_dump_vrml_simple_field
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_sg_vrml_get_sf_type
    - gf_fprintf
    - gf_sg_vrml_mf_get_item
    - gf_dump_vrml_sffield
    - gf_dump_vrml_node
    - EndAttribute
    - gf_sg_vrml_is_sf_field
    - StartAttribute
    linkageType: ''
    returnType: void
    signature: void gf_dump_vrml_simple_field(GF_SceneDumper *sdump, GF_FieldInfo
      field, GF_Node *parent)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/scene_manager/scene_dump.c:813,1
    - Dst: StartElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:817,1
    - Dst: EndElementHeader
      Src: /src/gpac/src/scene_manager/scene_dump.c:818,1
    - Dst: StartAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:822,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:824,1
    - Dst: EndElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:829,1
    - Dst: EndAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:832,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/scene_dump.c:840,1
    - Dst: gf_node_get_field_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:844,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:846,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/scene_dump.c:856,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/scene_dump.c:860,1
    - Dst: StartList
      Src: /src/gpac/src/scene_manager/scene_dump.c:861,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:864,1
    - Dst: EndList
      Src: /src/gpac/src/scene_manager/scene_dump.c:868,1
    - Dst: StartElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:873,1
    - Dst: EndElementHeader
      Src: /src/gpac/src/scene_manager/scene_dump.c:874,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:876,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:880,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:881,1
    - Dst: gf_sm_dump_command_list
      Src: /src/gpac/src/scene_manager/scene_dump.c:884,1
    - Dst: EndElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:887,1
    - Dst: StartElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:894,1
    - Dst: EndElementHeader
      Src: /src/gpac/src/scene_manager/scene_dump.c:895,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:901,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:902,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:903,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:904,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:905,1
    - Dst: EndElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:910,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:917,1
    - Dst: StartAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:918,1
    - Dst: gf_dump_vrml_sffield
      Src: /src/gpac/src/scene_manager/scene_dump.c:920,1
    - Dst: EndAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:921,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/scene_dump.c:924,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:931,1
    - Dst: StartAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:934,1
    - Dst: StartAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:938,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:941,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:943,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scene_manager/scene_dump.c:944,1
    - Dst: gf_dump_vrml_sffield
      Src: /src/gpac/src/scene_manager/scene_dump.c:945,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:947,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:954,1
    - Dst: EndAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:957,1
    - Dst: EndAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:961,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 141
    argCount: 3
    argNames:
    - sdump
    - node
    - field
    argTypes:
    - GF_SceneDumper*
    - GF_Node*
    - GF_FieldInfo
    assertStmts:
    - condition: ( *(GF_Node **)field.far_ptr)
      pos:
        line_end: 812
        line_start: 812
        source_file: /src/gpac/src/scene_manager/scene_dump.c
    constantsTouched: []
    func_position:
      end: 964
      start: 804
    functionDepth: 5
    functionLinenumber: 804
    functionLinenumberEnd: 964
    functionName: gf_dump_vrml_field
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - DUMP_IND
    - gf_sg_vrml_mf_get_item
    - gf_dump_vrml_node
    - EndList
    - gf_list_count
    - EndAttribute
    - gf_node_get_field
    - StartList
    - gf_assert
    - EndElementHeader
    - gf_sg_vrml_get_sf_type
    - gf_fprintf
    - EndElement
    - gf_sg_vrml_is_sf_field
    - StartAttribute
    - gf_sm_dump_command_list
    - gf_dump_vrml_sffield
    - assert
    - StartElement
    - scene_dump_vrml_id
    - gf_node_get_field_count
    - strcmp
    linkageType: ''
    returnType: void
    signature: void gf_dump_vrml_field(GF_SceneDumper *sdump, GF_Node *node, GF_FieldInfo
      field)
  - BBCount: 24
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 49
    argCount: 1
    argNames:
    - fieldType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1016
      start: 966
    functionDepth: 0
    functionLinenumber: 966
    functionLinenumberEnd: 1016
    functionName: GetXMTFieldTypeName
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *GetXMTFieldTypeName(u32 fieldType)
  - BBCount: 22
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 45
    argCount: 1
    argNames:
    - fieldType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1063
      start: 1017
    functionDepth: 0
    functionLinenumber: 1017
    functionLinenumberEnd: 1063
    functionName: GetXMTFieldTypeValueName
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *GetXMTFieldTypeValueName(u32 fieldType)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1071,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1072,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1075,1
    - Dst: gf_sg_vrml_get_field_type_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:1076,1
    - Dst: gf_sg_vrml_get_event_type_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:1076,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1078,1
    - Dst: GetXMTFieldTypeName
      Src: /src/gpac/src/scene_manager/scene_dump.c:1079,1
    - Dst: gf_sg_vrml_get_event_type_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:1079,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1085,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1087,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:1088,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1089,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1092,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1095,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:1096,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1097,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1099,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1102,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1105,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1107,1
    - Dst: GetXMTFieldTypeValueName
      Src: /src/gpac/src/scene_manager/scene_dump.c:1107,1
    - Dst: gf_dump_vrml_sffield
      Src: /src/gpac/src/scene_manager/scene_dump.c:1110,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1112,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1114,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1117,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1120,1
    - Dst: gf_sg_vrml_get_event_type_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:1120,1
    - Dst: gf_sg_vrml_get_field_type_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:1120,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1122,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:1124,1
    - Dst: gf_dump_vrml_simple_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1126,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1129,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/scene_dump.c:1133,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1135,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1137,1
    - Dst: gf_sg_vrml_get_event_type_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:1137,1
    - Dst: gf_sg_vrml_get_field_type_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:1137,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1139,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1143,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:1146,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1150,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1153,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scene_manager/scene_dump.c:1155,1
    - Dst: gf_dump_vrml_sffield
      Src: /src/gpac/src/scene_manager/scene_dump.c:1156,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1160,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1162,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1165,1
    - Dst: gf_sg_vrml_get_field_type_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:1166,1
    - Dst: gf_sg_vrml_get_event_type_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:1166,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1168,1
    - Dst: GetXMTFieldTypeName
      Src: /src/gpac/src/scene_manager/scene_dump.c:1169,1
    - Dst: gf_sg_vrml_get_event_type_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:1169,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1175,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1177,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:1179,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1182,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1184,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1186,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1189,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1191,1
    - Dst: GetXMTFieldTypeValueName
      Src: /src/gpac/src/scene_manager/scene_dump.c:1191,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1194,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scene_manager/scene_dump.c:1196,1
    - Dst: gf_dump_vrml_sffield
      Src: /src/gpac/src/scene_manager/scene_dump.c:1197,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1201,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1203,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1206,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 133
    argCount: 4
    argNames:
    - sdump
    - node
    - field
    - has_sublist
    argTypes:
    - GF_SceneDumper*
    - GF_Node*
    - GF_FieldInfo
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1210
      start: 1066
    functionDepth: 6
    functionLinenumber: 1066
    functionLinenumberEnd: 1210
    functionName: gf_dump_vrml_dyn_field
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - DUMP_IND
    - gf_sg_vrml_get_sf_type
    - gf_fprintf
    - gf_sg_vrml_mf_get_item
    - gf_dump_vrml_sffield
    - gf_dump_vrml_node
    - gf_sg_vrml_get_field_type_name
    - gf_sg_vrml_is_sf_field
    - GetXMTFieldTypeName
    - gf_sg_vrml_get_event_type_name
    - gf_dump_vrml_simple_field
    - GetXMTFieldTypeValueName
    linkageType: ''
    returnType: void
    signature: void gf_dump_vrml_dyn_field(GF_SceneDumper *sdump, GF_Node *node, GF_FieldInfo
      field, Bool has_sublist)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1219,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1220,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1221,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1223,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1225,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:1226,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1227,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1229,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1230,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1233,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1235,1
    - Dst: GetXMTFieldTypeValueName
      Src: /src/gpac/src/scene_manager/scene_dump.c:1235,1
    - Dst: gf_dump_vrml_sffield
      Src: /src/gpac/src/scene_manager/scene_dump.c:1238,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1239,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/scene_dump.c:1243,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1248,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1250,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:1252,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1255,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1257,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1258,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1261,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1263,1
    - Dst: GetXMTFieldTypeValueName
      Src: /src/gpac/src/scene_manager/scene_dump.c:1263,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1266,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scene_manager/scene_dump.c:1268,1
    - Dst: gf_dump_vrml_sffield
      Src: /src/gpac/src/scene_manager/scene_dump.c:1269,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1272,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 60
    argCount: 3
    argNames:
    - sdump
    - node
    - field
    argTypes:
    - GF_SceneDumper*
    - GF_Node*
    - GF_FieldInfo
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1276
      start: 1214
    functionDepth: 5
    functionLinenumber: 1214
    functionLinenumberEnd: 1276
    functionName: gf_dump_vrml_proto_field
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - DUMP_IND
    - gf_sg_vrml_get_sf_type
    - gf_fprintf
    - gf_sg_vrml_mf_get_item
    - gf_dump_vrml_sffield
    - gf_dump_vrml_node
    - gf_sg_vrml_is_sf_field
    - GetXMTFieldTypeValueName
    linkageType: ''
    returnType: void
    signature: void gf_dump_vrml_proto_field(GF_SceneDumper *sdump, GF_Node *node,
      GF_FieldInfo field)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_dump.c:1283,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_dump.c:1289,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 18
    argCount: 3
    argNames:
    - sdump
    - node
    - field
    argTypes:
    - GF_SceneDumper*
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1294
      start: 1278
    functionDepth: 2
    functionLinenumber: 1278
    functionLinenumberEnd: 1294
    functionName: gf_dump_vrml_get_IS
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_Route
    signature: GF_Route *gf_dump_vrml_get_IS(GF_SceneDumper *sdump, GF_Node *node,
      GF_FieldInfo *field)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_dump_vrml_get_IS
      Src: /src/gpac/src/scene_manager/scene_dump.c:1300,1
    - Dst: gf_sg_proto_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1303,1
    - Dst: gf_sg_proto_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1306,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1310,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1311,1
    - Dst: gf_sg_vrml_get_event_type_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:1311,1
    - Dst: gf_sg_vrml_get_field_type_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:1311,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1312,1
    - Dst: StartElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:1315,1
    - Dst: EndElementHeader
      Src: /src/gpac/src/scene_manager/scene_dump.c:1316,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1319,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1320,1
    - Dst: EndElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:1323,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 5
    argNames:
    - sdump
    - node
    - field
    - isScript
    - skip_is
    argTypes:
    - GF_SceneDumper*
    - GF_Node*
    - GF_FieldInfo
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1326
      start: 1296
    functionDepth: 3
    functionLinenumber: 1296
    functionLinenumberEnd: 1326
    functionName: gf_dump_vrml_IS_field
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - gf_sg_proto_get_field
    - DUMP_IND
    - gf_dump_vrml_get_IS
    - EndElementHeader
    - gf_fprintf
    - gf_sg_vrml_get_field_type_name
    - StartElement
    - EndElement
    - gf_sg_vrml_get_event_type_name
    linkageType: ''
    returnType: void
    signature: void gf_dump_vrml_IS_field(GF_SceneDumper *sdump, GF_Node *node, GF_FieldInfo
      field, Bool isScript, Bool skip_is)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_x3d_type_by_class_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:1340,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:1340,1
    - Dst: gf_node_mpeg4_type_by_class_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:1351,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:1351,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 2
    argNames:
    - sdump
    - node
    argTypes:
    - GF_SceneDumper*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1357
      start: 1328
    functionDepth: 2
    functionLinenumber: 1328
    functionLinenumberEnd: 1357
    functionName: scene_dump_vrml_can_dump
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - gf_node_x3d_type_by_class_name
    - gf_node_get_class_name
    - gf_node_mpeg4_type_by_class_name
    linkageType: ''
    returnType: Bool
    signature: Bool scene_dump_vrml_can_dump(GF_SceneDumper *sdump, GF_Node *node)
  - BBCount: 76
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1369,1
    - Dst: scene_dump_vrml_can_dump
      Src: /src/gpac/src/scene_manager/scene_dump.c:1376,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_dump.c:1377,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:1377,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1378,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:1383,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/scene_dump.c:1398,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:1399,1
    - Dst: gf_dump_vrml_is_def_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:1402,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1405,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1406,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:1407,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1408,1
    - Dst: StartElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:1411,1
    - Dst: StartAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:1412,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1413,1
    - Dst: EndAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:1414,1
    - Dst: StartElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:1416,1
    - Dst: StartAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:1418,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:1419,1
    - Dst: EndAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:1420,1
    - Dst: EndElementHeader
      Src: /src/gpac/src/scene_manager/scene_dump.c:1421,1
    - Dst: gf_node_get_field_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:1428,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/scene_dump.c:1429,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/scene_dump.c:1432,1
    - Dst: gf_sg_proto_create_instance
      Src: /src/gpac/src/scene_manager/scene_dump.c:1449,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/scene_dump.c:1451,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/scene_dump.c:1455,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1467,1
    - Dst: gf_dump_vrml_get_IS
      Src: /src/gpac/src/scene_manager/scene_dump.c:1470,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:1510,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1531,1
    - Dst: gf_sg_vrml_field_equal
      Src: /src/gpac/src/scene_manager/scene_dump.c:1532,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/scene_dump.c:1540,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1543,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1546,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:1547,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1548,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1550,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1554,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1556,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:1558,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1559,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1562,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1564,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_dump.c:1568,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1573,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1575,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:1576,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1577,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1579,1
    - Dst: StartElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:1582,1
    - Dst: StartAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:1583,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1584,1
    - Dst: EndAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:1585,1
    - Dst: StartElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:1587,1
    - Dst: StartAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:1590,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:1591,1
    - Dst: EndAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:1592,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1601,1
    - Dst: gf_dump_vrml_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1603,1
    - Dst: gf_dump_vrml_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1607,1
    - Dst: gf_dump_vrml_dyn_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1611,1
    - Dst: gf_dump_vrml_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1613,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1619,1
    - Dst: gf_dump_vrml_IS_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1620,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1627,1
    - Dst: EndElementHeader
      Src: /src/gpac/src/scene_manager/scene_dump.c:1630,1
    - Dst: StartElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:1635,1
    - Dst: EndElementHeader
      Src: /src/gpac/src/scene_manager/scene_dump.c:1636,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1641,1
    - Dst: gf_dump_vrml_IS_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1642,1
    - Dst: EndElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:1647,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1653,1
    - Dst: gf_dump_vrml_proto_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1656,1
    - Dst: gf_dump_vrml_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1658,1
    - Dst: gf_dump_vrml_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1664,1
    - Dst: gf_dump_vrml_dyn_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1668,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1673,1
    - Dst: gf_dump_vrml_IS_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1674,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1682,1
    - Dst: gf_dump_vrml_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1683,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1688,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1689,1
    - Dst: EndElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:1691,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_dump.c:1693,1
    CyclomaticComplexity: 100
    EdgeCount: 100
    ICount: 295
    argCount: 4
    argNames:
    - sdump
    - node
    - in_list
    - fieldContainer
    argTypes:
    - GF_SceneDumper*
    - GF_Node*
    - Bool
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1694
      start: 1359
    functionDepth: 7
    functionLinenumber: 1359
    functionLinenumberEnd: 1694
    functionName: gf_dump_vrml_node
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 4
    functionsReached:
    - gf_node_get_tag
    - DUMP_IND
    - gf_free
    - gf_dump_vrml_get_IS
    - gf_node_get_class_name
    - gf_dump_vrml_field
    - gf_list_count
    - EndAttribute
    - gf_node_get_field
    - gf_node_unregister
    - gf_dump_vrml_IS_field
    - gf_dump_vrml_dyn_field
    - EndElementHeader
    - gf_sg_proto_create_instance
    - gf_fprintf
    - gf_node_get_id
    - EndElement
    - StartAttribute
    - GF_LOG
    - StartElement
    - gf_node_new
    - gf_sg_vrml_field_equal
    - gf_malloc
    - scene_dump_vrml_id
    - gf_dump_vrml_is_def_node
    - gf_node_get_field_count
    - gf_dump_vrml_proto_field
    - scene_dump_vrml_can_dump
    - gf_node_register
    linkageType: ''
    returnType: void
    signature: void gf_dump_vrml_node(GF_SceneDumper *sdump, GF_Node *node, Bool in_list,
      char *fieldContainer)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:1702,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:1703,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1704,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1707,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1709,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:1710,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1711,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1713,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:1714,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1715,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_dump.c:1719,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1722,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1724,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1726,1
    - Dst: gf_dump_vrml_simple_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1728,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1730,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1732,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1736,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1738,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1740,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 41
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1743
      start: 1697
    functionDepth: 6
    functionLinenumber: 1697
    functionLinenumberEnd: 1743
    functionName: DumpMultipleIndexedReplace
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - DUMP_IND
    - gf_list_get
    - gf_fprintf
    - gf_dump_vrml_simple_field
    - gf_list_count
    - gf_node_get_field
    - gf_list_enum
    - scene_dump_vrml_id
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpMultipleIndexedReplace(GF_SceneDumper *sdump, GF_Command
      *com)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:1750,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1752,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1754,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:1755,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1756,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_dump.c:1760,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1761,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1764,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/scene_dump.c:1765,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1766,1
    - Dst: gf_dump_vrml_simple_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1767,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1768,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1770,1
    - Dst: gf_dump_vrml_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1771,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1772,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1777,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1778,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1780,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:1781,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1782,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_dump.c:1785,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1786,1
    - Dst: gf_dump_vrml_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1788,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1791,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1792,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 43
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1795
      start: 1745
    functionDepth: 6
    functionLinenumber: 1745
    functionLinenumberEnd: 1795
    functionName: DumpMultipleReplace
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - DUMP_IND
    - gf_sg_vrml_get_sf_type
    - gf_fprintf
    - gf_dump_vrml_simple_field
    - gf_dump_vrml_field
    - gf_list_count
    - gf_node_get_field
    - gf_list_enum
    - scene_dump_vrml_id
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpMultipleReplace(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:1800,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:1801,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1803,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1805,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1807,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:1809,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1810,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1811,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1813
      start: 1797
    functionDepth: 8
    functionLinenumber: 1797
    functionLinenumberEnd: 1813
    functionName: DumpGlobalQP
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - DUMP_IND
    - gf_list_get
    - gf_fprintf
    - gf_dump_vrml_node
    - gf_list_count
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpGlobalQP(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:1819,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:1820,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/scene_dump.c:1824,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/scene_dump.c:1827,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1830,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1834,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1836,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:1837,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1838,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1841,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1843,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:1844,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1845,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1846,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1847,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:1850,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1851,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1852,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1854
      start: 1815
    functionDepth: 8
    functionLinenumber: 1815
    functionLinenumberEnd: 1854
    functionName: DumpNodeInsert
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - DUMP_IND
    - gf_list_get
    - gf_fprintf
    - strcpy
    - gf_dump_vrml_node
    - sprintf
    - gf_list_count
    - scene_dump_vrml_id
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpNodeInsert(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/scene_manager/scene_dump.c:1860,1
    - Dst: gf_dump_find_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:1863,1
    - Dst: gf_dump_find_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:1865,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/scene_dump.c:1868,1
    - Dst: gf_dump_vrml_route
      Src: /src/gpac/src/scene_manager/scene_dump.c:1871,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1873,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1875,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1877,1
    - Dst: gf_dump_vrml_route
      Src: /src/gpac/src/scene_manager/scene_dump.c:1879,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1880,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 3
    argNames:
    - sdump
    - com
    - is_scene_replace
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1883
      start: 1856
    functionDepth: 2
    functionLinenumber: 1856
    functionLinenumberEnd: 1883
    functionName: DumpRouteInsert
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - DUMP_IND
    - gf_fprintf
    - gf_dump_vrml_route
    - memset
    - gf_dump_find_node
    - gf_list_add
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpRouteInsert(GF_SceneDumper *sdump, GF_Command *com, Bool
      is_scene_replace)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:1891,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:1892,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/scene_dump.c:1896,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/scene_dump.c:1899,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1902,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1906,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1908,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1910,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1912,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:1913,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1914,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1917,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1919,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:1920,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1921,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1922,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1923,1
    - Dst: memcpy
      Src: /src/gpac/src/scene_manager/scene_dump.c:1926,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/scene_dump.c:1927,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1930,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:1931,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1932,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1933,1
    - Dst: gf_dump_vrml_simple_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1936,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1937,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1938,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 53
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1941
      start: 1885
    functionDepth: 8
    functionLinenumber: 1885
    functionLinenumberEnd: 1941
    functionName: DumpIndexInsert
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - DUMP_IND
    - gf_list_get
    - gf_sg_vrml_get_sf_type
    - gf_fprintf
    - memcpy
    - strcpy
    - gf_dump_vrml_node
    - gf_dump_vrml_simple_field
    - sprintf
    - gf_list_count
    - gf_node_get_field
    - gf_sg_vrml_is_sf_field
    - scene_dump_vrml_id
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpIndexInsert(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:1948,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:1949,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/scene_dump.c:1953,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/scene_dump.c:1956,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1959,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:1963,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1965,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1967,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:1968,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1969,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1971,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1972,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:1973,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1974,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1975,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1976,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1979
      start: 1943
    functionDepth: 3
    functionLinenumber: 1943
    functionLinenumberEnd: 1979
    functionName: DumpIndexDelete
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - DUMP_IND
    - gf_list_get
    - gf_fprintf
    - strcpy
    - sprintf
    - gf_list_count
    - gf_node_get_field
    - scene_dump_vrml_id
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpIndexDelete(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:1984,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1987,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1989,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:1991,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1992,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1994,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1995,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:1996,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:1997,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2000
      start: 1982
    functionDepth: 3
    functionLinenumber: 1982
    functionLinenumberEnd: 2000
    functionName: DumpNodeDelete
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - DUMP_IND
    - scene_dump_vrml_id
    - gf_fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpNodeDelete(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2004,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2006,1
    - Dst: scene_dump_vrml_route_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2007,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2008,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2010,1
    - Dst: scene_dump_vrml_route_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2011,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2012,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2015
      start: 2002
    functionDepth: 4
    functionLinenumber: 2002
    functionLinenumberEnd: 2015
    functionName: DumpRouteDelete
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - DUMP_IND
    - scene_dump_vrml_route_id
    - gf_fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpRouteDelete(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:2022,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:2023,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2024,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2026,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2027,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2028,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:2029,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2030,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2032,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2033,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2034,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:2035,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2036,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2039
      start: 2019
    functionDepth: 8
    functionLinenumber: 2019
    functionLinenumberEnd: 2039
    functionName: DumpNodeReplace
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - DUMP_IND
    - gf_list_get
    - gf_fprintf
    - gf_dump_vrml_node
    - gf_list_count
    - scene_dump_vrml_id
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpNodeReplace(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:2046,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:2047,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:2049,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2051,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2053,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2054,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2055,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2057,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2058,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2059,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2064,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:2065,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2066,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2067,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2073,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2075,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:2080,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2085,1
    - Dst: EndList
      Src: /src/gpac/src/scene_manager/scene_dump.c:2087,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2094,1
    - Dst: gf_sm_dump_command_list
      Src: /src/gpac/src/scene_manager/scene_dump.c:2095,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2096,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2097,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2100,1
    - Dst: gf_sm_dump_command_list
      Src: /src/gpac/src/scene_manager/scene_dump.c:2101,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2102,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2103,1
    - Dst: gf_dump_vrml_simple_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:2108,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2109,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2110,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 65
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2113
      start: 2041
    functionDepth: 8
    functionLinenumber: 2041
    functionLinenumberEnd: 2113
    functionName: DumpFieldReplace
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - DUMP_IND
    - gf_list_get
    - gf_sm_dump_command_list
    - gf_fprintf
    - gf_dump_vrml_simple_field
    - gf_dump_vrml_node
    - EndList
    - gf_list_count
    - gf_node_get_field
    - scene_dump_vrml_id
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpFieldReplace(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:2122,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:2123,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:2125,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:2127,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/scene_dump.c:2131,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/scene_dump.c:2134,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2137,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2141,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2143,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2144,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2145,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2147,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2148,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2149,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2150,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2151,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2152,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2156,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:2157,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2158,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/scene_dump.c:2160,1
    - Dst: gf_dump_vrml_simple_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:2162,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2163,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2166
      start: 2116
    functionDepth: 8
    functionLinenumber: 2116
    functionLinenumberEnd: 2166
    functionName: DumpIndexReplace
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - DUMP_IND
    - gf_list_get
    - gf_sg_vrml_get_sf_type
    - gf_fprintf
    - strcpy
    - gf_dump_vrml_node
    - gf_dump_vrml_simple_field
    - sprintf
    - gf_list_count
    - gf_node_get_field
    - gf_sg_vrml_is_sf_field
    - scene_dump_vrml_id
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpIndexReplace(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:2176,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:2177,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:2179,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:2185,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:2187,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:2193,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/scene_dump.c:2196,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/scene_dump.c:2199,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2202,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/scene_dump.c:2205,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2210,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2212,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2213,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2214,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2217,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2218,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2219,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/scene_dump.c:2221,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/scene_dump.c:2228,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scene_manager/scene_dump.c:2230,1
    - Dst: gf_sg_proto_create_instance
      Src: /src/gpac/src/scene_manager/scene_dump.c:2232,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/scene_dump.c:2235,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:2236,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2237,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/scene_dump.c:2238,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:2244,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:2246,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2249,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2250,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2251,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2254,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2257,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2258,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2259,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2260,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2262,1
    - Dst: scene_dump_vrml_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2263,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2264,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/scene_dump.c:2265,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2267,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/scene_dump.c:2272,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scene_manager/scene_dump.c:2274,1
    - Dst: gf_sg_proto_create_instance
      Src: /src/gpac/src/scene_manager/scene_dump.c:2276,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/scene_dump.c:2279,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:2280,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2281,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/scene_dump.c:2282,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2285,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2289,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:2290,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2291,1
    - Dst: gf_dump_vrml_simple_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:2293,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2294,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 118
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2297
      start: 2169
    functionDepth: 8
    functionLinenumber: 2169
    functionLinenumberEnd: 2297
    functionName: DumpXReplace
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - DUMP_IND
    - gf_list_get
    - gf_sg_proto_create_instance
    - gf_sg_find_node
    - gf_sg_vrml_get_sf_type
    - gf_fprintf
    - strcpy
    - gf_dump_vrml_node
    - gf_dump_vrml_simple_field
    - sprintf
    - gf_list_count
    - gf_node_new
    - gf_node_get_field
    - gf_sg_vrml_is_sf_field
    - gf_sg_find_proto
    - gf_node_unregister
    - gf_node_register
    - scene_dump_vrml_id
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpXReplace(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: scene_dump_vrml_find_route_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:2305,1
    - Dst: memset
      Src: /src/gpac/src/scene_manager/scene_dump.c:2307,1
    - Dst: gf_dump_find_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:2308,1
    - Dst: gf_dump_find_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:2310,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2313,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2315,1
    - Dst: scene_dump_vrml_route_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2316,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2317,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2319,1
    - Dst: scene_dump_vrml_route_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2320,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2321,1
    - Dst: gf_dump_vrml_route
      Src: /src/gpac/src/scene_manager/scene_dump.c:2323,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2324,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2326
      start: 2300
    functionDepth: 4
    functionLinenumber: 2300
    functionLinenumberEnd: 2326
    functionName: DumpRouteReplace
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - DUMP_IND
    - gf_fprintf
    - gf_dump_vrml_route
    - memset
    - gf_dump_find_node
    - scene_dump_vrml_find_route_name
    - scene_dump_vrml_route_id
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpRouteReplace(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:2334,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:2335,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2340,1
    - Dst: gf_node_get_name_and_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2344,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:2348,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2352,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2353,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2356,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2357,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2357,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2360,1
    - Dst: StartAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:2362,1
    - Dst: scene_dump_vrml_route_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2363,1
    - Dst: EndAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:2364,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2366,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2368,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2370,1
    - Dst: scene_dump_vrml_route_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2371,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2372,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2375,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2377,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2378,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 51
    argCount: 3
    argNames:
    - sdump
    - r
    - dump_type
    argTypes:
    - GF_SceneDumper*
    - GF_Route*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2382
      start: 2328
    functionDepth: 4
    functionLinenumber: 2328
    functionLinenumberEnd: 2382
    functionName: gf_dump_vrml_route
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 2
    functionsReached:
    - DUMP_IND
    - gf_node_get_name
    - gf_node_get_id
    - gf_fprintf
    - sprintf
    - gf_node_get_name_and_id
    - EndAttribute
    - gf_node_get_field
    - StartAttribute
    - scene_dump_vrml_route_id
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_dump_vrml_route(GF_SceneDumper *sdump, GF_Route *r, u32 dump_type)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_dump.c:2399,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2402,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2404,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2405,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2407,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2409,1
    - Dst: gf_dump_vrml_sffield
      Src: /src/gpac/src/scene_manager/scene_dump.c:2410,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2411,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2413,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2416,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:2419,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:2421,1
    - Dst: gf_dump_vrml_dyn_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:2430,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2436,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2457,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2459,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2462,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2468,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2470,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2475,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:2475,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:2475,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2477,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:2477,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:2477,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2483,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2486,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2487,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2493,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2495,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2496,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2500,1
    - Dst: gf_dump_vrml_sffield
      Src: /src/gpac/src/scene_manager/scene_dump.c:2501,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2502,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2504,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2508,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2512,1
    - Dst: DumpProtos
      Src: /src/gpac/src/scene_manager/scene_dump.c:2514,1
    - Dst: gf_sg_proto_get_graph
      Src: /src/gpac/src/scene_manager/scene_dump.c:2519,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:2521,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:2523,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:2524,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:2526,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:2528,1
    - Dst: gf_dump_vrml_route
      Src: /src/gpac/src/scene_manager/scene_dump.c:2530,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2533,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2539,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2541,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2543,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 163
    argCount: 2
    argNames:
    - sdump
    - protoList
    argTypes:
    - GF_SceneDumper*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2549
      start: 2385
    functionDepth: 8
    functionLinenumber: 2385
    functionLinenumberEnd: 2549
    functionName: DumpProtos
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 1
    functionsReached:
    - DUMP_IND
    - gf_list_get
    - DumpProtos
    - gf_fprintf
    - gf_dump_vrml_sffield
    - gf_sg_proto_get_graph
    - gf_dump_vrml_node
    - FIX2FLT
    - gf_list_count
    - gf_dump_vrml_route
    - gf_list_enum
    - gf_dump_vrml_dyn_field
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpProtos(GF_SceneDumper *sdump, GF_List *protoList)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: StartElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:2555,1
    - Dst: EndElementHeader
      Src: /src/gpac/src/scene_manager/scene_dump.c:2556,1
    - Dst: StartElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:2560,1
    - Dst: StartAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:2562,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2563,1
    - Dst: EndAttribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:2564,1
    - Dst: EndElementHeader
      Src: /src/gpac/src/scene_manager/scene_dump.c:2566,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2570,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2571,1
    - Dst: DumpProtos
      Src: /src/gpac/src/scene_manager/scene_dump.c:2574,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:2575,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2576,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:2580,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:2582,1
    - Dst: gf_dump_vrml_route
      Src: /src/gpac/src/scene_manager/scene_dump.c:2584,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 36
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2589
      start: 2551
    functionDepth: 9
    functionLinenumber: 2551
    functionLinenumberEnd: 2589
    functionName: DumpSceneReplace
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - DUMP_IND
    - DumpProtos
    - EndElementHeader
    - gf_list_get
    - gf_fprintf
    - gf_dump_vrml_node
    - StartElement
    - gf_dump_vrml_route
    - gf_list_count
    - EndAttribute
    - StartAttribute
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpSceneReplace(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2593,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2595,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2597,1
    - Dst: DumpProtos
      Src: /src/gpac/src/scene_manager/scene_dump.c:2600,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2602,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2604,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2606,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2609
      start: 2591
    functionDepth: 9
    functionLinenumber: 2591
    functionLinenumberEnd: 2609
    functionName: DumpProtoInsert
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - DUMP_IND
    - DumpProtos
    - gf_fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpProtoInsert(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2617,1
    - Dst: gf_node_get_name_and_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2619,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2620,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2621,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - n
    - NodeID
    - str
    argTypes:
    - GF_Node*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2624
      start: 2615
    functionDepth: 2
    functionLinenumber: 2615
    functionLinenumberEnd: 2624
    functionName: lsr_format_node_id
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - gf_node_get_name_and_id
    - sprintf
    linkageType: ''
    returnType: char
    signature: char *lsr_format_node_id(GF_Node *n, u32 NodeID, char *str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_namespace_qname
      Src: /src/gpac/src/scene_manager/scene_dump.c:2630,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2632,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2636
      start: 2628
    functionDepth: 2
    functionLinenumber: 2628
    functionLinenumberEnd: 2636
    functionName: sd_get_lsr_namespace
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - gf_sg_get_namespace_qname
    - sprintf
    linkageType: ''
    returnType: char
    signature: char *sd_get_lsr_namespace(GF_SceneGraph *sg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sd_get_lsr_namespace
      Src: /src/gpac/src/scene_manager/scene_dump.c:2640,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2641,1
    - Dst: gf_dump_svg_element
      Src: /src/gpac/src/scene_manager/scene_dump.c:2642,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2643,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2645
      start: 2638
    functionDepth: 3
    functionLinenumber: 2638
    functionLinenumberEnd: 2645
    functionName: DumpLSRNewScene
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - sd_get_lsr_namespace
    - gf_dump_svg_element
    - gf_fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpLSRNewScene(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: sd_get_lsr_namespace
      Src: /src/gpac/src/scene_manager/scene_dump.c:2652,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2656,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2658,1
    - Dst: lsr_format_node_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2658,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:2659,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2660,1
    - Dst: gf_svg_get_attribute_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:2671,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2674,1
    - Dst: gf_svg_dump_attribute_indexed
      Src: /src/gpac/src/scene_manager/scene_dump.c:2683,1
    - Dst: gf_svg_dump_attribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:2685,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2687,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_dump.c:2688,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:2693,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2694,1
    - Dst: lsr_format_node_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2694,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/scene_dump.c:2695,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2696,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2699,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2705,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2709,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2711,1
    - Dst: gf_dump_svg_element
      Src: /src/gpac/src/scene_manager/scene_dump.c:2716,1
    - Dst: gf_dump_svg_element
      Src: /src/gpac/src/scene_manager/scene_dump.c:2720,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2727,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2729,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 70
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2731
      start: 2647
    functionDepth: 3
    functionLinenumber: 2647
    functionLinenumberEnd: 2731
    functionName: DumpLSRAddReplaceInsert
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - DUMP_IND
    - gf_list_get
    - gf_svg_dump_attribute_indexed
    - gf_dump_svg_element
    - lsr_format_node_id
    - gf_fprintf
    - gf_sg_find_node
    - sd_get_lsr_namespace
    - gf_svg_get_attribute_name
    - gf_svg_dump_attribute
    - gf_node_get_field
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpLSRAddReplaceInsert(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sd_get_lsr_namespace
      Src: /src/gpac/src/scene_manager/scene_dump.c:2737,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2738,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2739,1
    - Dst: lsr_format_node_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2739,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:2740,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2741,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2742,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2744
      start: 2733
    functionDepth: 3
    functionLinenumber: 2733
    functionLinenumberEnd: 2744
    functionName: DumpLSRDelete
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - DUMP_IND
    - gf_list_get
    - lsr_format_node_id
    - gf_fprintf
    - sd_get_lsr_namespace
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpLSRDelete(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2749
      start: 2746
    functionDepth: 0
    functionLinenumber: 2746
    functionLinenumberEnd: 2749
    functionName: DumpLSRInsert
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpLSRInsert(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - sdump
    - sg
    argTypes:
    - GF_SceneDumper*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2755
      start: 2751
    functionDepth: 0
    functionLinenumber: 2751
    functionLinenumberEnd: 2755
    functionName: SD_SetSceneGraph
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SD_SetSceneGraph(GF_SceneDumper *sdump, GF_SceneGraph *sg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2760
      start: 2757
    functionDepth: 0
    functionLinenumber: 2757
    functionLinenumberEnd: 2760
    functionName: DumpLSRClean
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpLSRClean(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2765
      start: 2762
    functionDepth: 0
    functionLinenumber: 2762
    functionLinenumberEnd: 2765
    functionName: DumpLSRRestore
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpLSRRestore(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2769
      start: 2766
    functionDepth: 0
    functionLinenumber: 2766
    functionLinenumberEnd: 2769
    functionName: DumpLSRSave
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpLSRSave(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: sd_get_lsr_namespace
      Src: /src/gpac/src/scene_manager/scene_dump.c:2775,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2776,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2777,1
    - Dst: lsr_format_node_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2778,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:2779,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2785,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:2785,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/scene_dump.c:2785,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2794,1
    - Dst: gf_dom_get_key_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:2794,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2799,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2801,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2805,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2807
      start: 2772
    functionDepth: 3
    functionLinenumber: 2772
    functionLinenumberEnd: 2807
    functionName: DumpLSRSendEvent
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - DUMP_IND
    - lsr_format_node_id
    - gf_fprintf
    - sd_get_lsr_namespace
    - gf_dom_event_get_name
    - gf_dom_get_key_name
    - FIX2FLT
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpLSRSendEvent(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sd_get_lsr_namespace
      Src: /src/gpac/src/scene_manager/scene_dump.c:2811,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2812,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2814,1
    - Dst: lsr_format_node_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2814,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2816,1
    - Dst: lsr_format_node_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:2816,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - sdump
    - com
    argTypes:
    - GF_SceneDumper*
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2819
      start: 2808
    functionDepth: 3
    functionLinenumber: 2808
    functionLinenumberEnd: 2819
    functionName: DumpLSRActivate
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - sd_get_lsr_namespace
    - lsr_format_node_id
    - DUMP_IND
    - gf_fprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err DumpLSRActivate(GF_SceneDumper *sdump, GF_Command *com)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:2842,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:2844,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_dump.c:2851,1
    - Dst: EndElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:2859,1
    - Dst: EndElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:2861,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2863,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2864,1
    - Dst: DumpNodeInsert
      Src: /src/gpac/src/scene_manager/scene_dump.c:2874,1
    - Dst: DumpIndexInsert
      Src: /src/gpac/src/scene_manager/scene_dump.c:2877,1
    - Dst: DumpRouteInsert
      Src: /src/gpac/src/scene_manager/scene_dump.c:2880,1
    - Dst: DumpNodeDelete
      Src: /src/gpac/src/scene_manager/scene_dump.c:2885,1
    - Dst: DumpIndexDelete
      Src: /src/gpac/src/scene_manager/scene_dump.c:2888,1
    - Dst: DumpRouteDelete
      Src: /src/gpac/src/scene_manager/scene_dump.c:2891,1
    - Dst: DumpNodeReplace
      Src: /src/gpac/src/scene_manager/scene_dump.c:2895,1
    - Dst: DumpFieldReplace
      Src: /src/gpac/src/scene_manager/scene_dump.c:2898,1
    - Dst: DumpIndexReplace
      Src: /src/gpac/src/scene_manager/scene_dump.c:2901,1
    - Dst: DumpRouteReplace
      Src: /src/gpac/src/scene_manager/scene_dump.c:2904,1
    - Dst: DumpXReplace
      Src: /src/gpac/src/scene_manager/scene_dump.c:2907,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/scene_dump.c:2911,1
    - Dst: DumpSceneReplace
      Src: /src/gpac/src/scene_manager/scene_dump.c:2913,1
    - Dst: DumpProtoInsert
      Src: /src/gpac/src/scene_manager/scene_dump.c:2920,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2923,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2925,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2927,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:2934,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2936,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2938,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2941,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2942,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2945,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:2947,1
    - Dst: DumpGlobalQP
      Src: /src/gpac/src/scene_manager/scene_dump.c:2953,1
    - Dst: DumpMultipleReplace
      Src: /src/gpac/src/scene_manager/scene_dump.c:2956,1
    - Dst: DumpMultipleIndexedReplace
      Src: /src/gpac/src/scene_manager/scene_dump.c:2959,1
    - Dst: DumpNodeDelete
      Src: /src/gpac/src/scene_manager/scene_dump.c:2962,1
    - Dst: DumpLSRNewScene
      Src: /src/gpac/src/scene_manager/scene_dump.c:2971,1
    - Dst: DumpLSRAddReplaceInsert
      Src: /src/gpac/src/scene_manager/scene_dump.c:2974,1
    - Dst: DumpLSRAddReplaceInsert
      Src: /src/gpac/src/scene_manager/scene_dump.c:2980,1
    - Dst: DumpLSRDelete
      Src: /src/gpac/src/scene_manager/scene_dump.c:2983,1
    - Dst: DumpLSRAddReplaceInsert
      Src: /src/gpac/src/scene_manager/scene_dump.c:2986,1
    - Dst: DumpLSRSendEvent
      Src: /src/gpac/src/scene_manager/scene_dump.c:2995,1
    - Dst: DumpLSRActivate
      Src: /src/gpac/src/scene_manager/scene_dump.c:2999,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:3013,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3014,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:3023,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3024,1
    - Dst: EndElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:3030,1
    - Dst: EndElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:3032,1
    CyclomaticComplexity: 59
    EdgeCount: 59
    ICount: 170
    argCount: 4
    argNames:
    - sdump
    - comList
    - indent
    - skip_first_replace
    argTypes:
    - GF_SceneDumper*
    - GF_List*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3040
      start: 2823
    functionDepth: 10
    functionLinenumber: 2823
    functionLinenumberEnd: 3040
    functionName: gf_sm_dump_command_list
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 2
    functionsReached:
    - DUMP_IND
    - DumpLSRNewScene
    - DumpNodeDelete
    - DumpIndexReplace
    - gf_list_count
    - DumpSceneReplace
    - DumpGlobalQP
    - gf_list_get
    - gf_assert
    - DumpMultipleIndexedReplace
    - DumpIndexInsert
    - DumpRouteReplace
    - gf_fprintf
    - EndElement
    - DumpRouteDelete
    - DumpLSRAddReplaceInsert
    - DumpNodeInsert
    - GF_LOG
    - DumpXReplace
    - DumpLSRActivate
    - DumpFieldReplace
    - DumpMultipleReplace
    - DumpProtoInsert
    - DumpNodeReplace
    - DumpLSRSendEvent
    - DumpLSRDelete
    - DumpIndexDelete
    - DumpRouteInsert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sm_dump_command_list(GF_SceneDumper *sdump, GF_List *comList,
      u32 indent, Bool skip_first_replace)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:3054,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scene_manager/scene_dump.c:3060,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:3061,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3078,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3079,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3080,1
    - Dst: scene_dump_utf_string
      Src: /src/gpac/src/scene_manager/scene_dump.c:3082,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:3091,1
    - Dst: gf_xml_push_namespaces
      Src: /src/gpac/src/scene_manager/scene_dump.c:3095,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3097,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:3097,1
    - Dst: gf_xml_get_element_namespace
      Src: /src/gpac/src/scene_manager/scene_dump.c:3098,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3102,1
    - Dst: lsr_format_node_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:3102,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/scene_dump.c:3116,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3117,1
    - Dst: gf_sg_get_namespace_qname
      Src: /src/gpac/src/scene_manager/scene_dump.c:3117,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/scene_manager/scene_dump.c:3117,1
    - Dst: gf_svg_get_attribute_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:3121,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/scene_dump.c:3127,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3137,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3141,1
    - Dst: gf_svg_dump_attribute
      Src: /src/gpac/src/scene_manager/scene_dump.c:3147,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/scene_dump.c:3149,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3150,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_dump.c:3151,1
    - Dst: gf_dom_event_dump_listeners
      Src: /src/gpac/src/scene_manager/scene_dump.c:3156,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3158,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3160,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:3168,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3169,1
    - Dst: gf_sm_dump_command_list
      Src: /src/gpac/src/scene_manager/scene_dump.c:3170,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3172,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:3176,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3177,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:3177,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3185,1
    - Dst: gf_dump_svg_element
      Src: /src/gpac/src/scene_manager/scene_dump.c:3186,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3189,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:3191,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3192,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/scene_dump.c:3192,1
    - Dst: gf_xml_pop_namespaces
      Src: /src/gpac/src/scene_manager/scene_dump.c:3195,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 130
    argCount: 4
    argNames:
    - sdump
    - n
    - parent
    - is_root
    argTypes:
    - GF_SceneDumper*
    - GF_Node*
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3196
      start: 3043
    functionDepth: 11
    functionLinenumber: 3043
    functionLinenumberEnd: 3196
    functionName: gf_dump_svg_element
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 3
    functionsReached:
    - gf_free
    - DUMP_IND
    - gf_node_get_class_name
    - gf_svg_dump_attribute
    - gf_list_count
    - lsr_format_node_id
    - gf_fprintf
    - gf_node_get_id
    - gf_xml_get_element_namespace
    - gf_sg_get_namespace_qname
    - sprintf
    - gf_svg_get_attribute_name
    - strncmp
    - gf_sm_dump_command_list
    - gf_dump_svg_element
    - gf_xml_pop_namespaces
    - gf_node_get_attribute_by_tag
    - gf_xml_push_namespaces
    - scene_dump_utf_string
    - gf_node_get_graph
    - strlen
    - gf_dom_event_dump_listeners
    linkageType: ''
    returnType: void
    signature: void gf_dump_svg_element(GF_SceneDumper *sdump, GF_Node *n, GF_Node
      *parent, Bool is_root)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3201,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3202,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3203,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3204,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - dumper
    - unit_name
    - au_time
    - is_rap
    argTypes:
    - GF_SceneDumper*
    - char*
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3205
      start: 3199
    functionDepth: 2
    functionLinenumber: 3199
    functionLinenumberEnd: 3205
    functionName: gf_sm_dump_saf_hdr
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void gf_sm_dump_saf_hdr(GF_SceneDumper *dumper, char *unit_name, u64
      au_time, Bool is_rap)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:3211,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:3214,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:3217,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:3219,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:3220,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3224,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3225,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3226,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:3230,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3234,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3236,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3238,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3239,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3240,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3245,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 31
    argCount: 3
    argNames:
    - dumper
    - au
    - indent
    argTypes:
    - GF_SceneDumper*
    - GF_AUContext*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3246
      start: 3207
    functionDepth: 2
    functionLinenumber: 3207
    functionLinenumberEnd: 3246
    functionName: dump_od_to_saf
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_fprintf
    linkageType: ''
    returnType: void
    signature: void dump_od_to_saf(GF_SceneDumper *dumper, GF_AUContext *au, u32 indent)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_namespace_qname
      Src: /src/gpac/src/scene_manager/scene_dump.c:3256,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:3258,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3259,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3260,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3263,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3267,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3270,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3276,1
    - Dst: SD_DumpDOMElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:3278,1
    - Dst: scene_dump_utf_string
      Src: /src/gpac/src/scene_manager/scene_dump.c:3284,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3286,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3287,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3288,1
    - Dst: DUMP_IND
      Src: /src/gpac/src/scene_manager/scene_dump.c:3297,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3300,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3301,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 49
    argCount: 2
    argNames:
    - sdump
    - node
    argTypes:
    - GF_SceneDumper*
    - GF_DOMFullNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3304
      start: 3249
    functionDepth: 4
    functionLinenumber: 3249
    functionLinenumberEnd: 3304
    functionName: SD_DumpDOMElement
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 1
    functionsReached:
    - DUMP_IND
    - gf_fprintf
    - gf_sg_get_namespace_qname
    - scene_dump_utf_string
    - SD_DumpDOMElement
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err SD_DumpDOMElement(GF_SceneDumper *sdump, GF_DOMFullNode *node)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_dump_setup
      Src: /src/gpac/src/scene_manager/scene_dump.c:3316,1
    - Dst: StartElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:3319,1
    - Dst: EndElementHeader
      Src: /src/gpac/src/scene_manager/scene_dump.c:3320,1
    - Dst: DumpProtos
      Src: /src/gpac/src/scene_manager/scene_dump.c:3327,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:3334,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:3338,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3340,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_dump.c:3344,1
    - Dst: gf_dump_vrml_route
      Src: /src/gpac/src/scene_manager/scene_dump.c:3346,1
    - Dst: EndElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:3352,1
    - Dst: gf_dump_finalize
      Src: /src/gpac/src/scene_manager/scene_dump.c:3356,1
    - Dst: gf_dump_setup
      Src: /src/gpac/src/scene_manager/scene_dump.c:3362,1
    - Dst: gf_dump_svg_element
      Src: /src/gpac/src/scene_manager/scene_dump.c:3363,1
    - Dst: gf_dump_setup
      Src: /src/gpac/src/scene_manager/scene_dump.c:3368,1
    - Dst: SD_DumpDOMElement
      Src: /src/gpac/src/scene_manager/scene_dump.c:3369,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 52
    argCount: 3
    argNames:
    - sdump
    - skip_proto
    - skip_routes
    argTypes:
    - GF_SceneDumper*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3374
      start: 3307
    functionDepth: 12
    functionLinenumber: 3307
    functionLinenumberEnd: 3374
    functionName: gf_sm_dump_graph
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 2
    functionsReached:
    - DumpProtos
    - EndElementHeader
    - gf_dump_svg_element
    - gf_fprintf
    - gf_dump_setup
    - gf_dump_vrml_node
    - StartElement
    - gf_dump_finalize
    - gf_dump_vrml_route
    - EndElement
    - SD_DumpDOMElement
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sm_dump_graph(GF_SceneDumper *sdump, Bool skip_proto,
      Bool skip_routes)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/scene_dump.c:3398,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_dump.c:3405,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/scene_manager/scene_dump.c:3415,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/scene_dump.c:3422,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 25
    argCount: 3
    argNames:
    - sample_list
    - au
    - lsr_dump
    argTypes:
    - GF_List*
    - GF_AUContext*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3423
      start: 3379
    functionDepth: 2
    functionLinenumber: 3379
    functionLinenumberEnd: 3423
    functionName: ReorderAUContext
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_assert
    - gf_list_add
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void ReorderAUContext(GF_List *sample_list, GF_AUContext *au, Bool
      lsr_dump)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: gf_sm_dumper_new
      Src: /src/gpac/src/scene_manager/scene_dump.c:3441,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/scene_dump.c:3446,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_dump.c:3451,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_dump.c:3465,1
    - Dst: ReorderAUContext
      Src: /src/gpac/src/scene_manager/scene_dump.c:3466,1
    - Dst: gf_dump_setup
      Src: /src/gpac/src/scene_manager/scene_dump.c:3475,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:3479,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:3481,1
    - Dst: gf_dump_svg_element
      Src: /src/gpac/src/scene_manager/scene_dump.c:3483,1
    - Dst: gf_dump_svg_element
      Src: /src/gpac/src/scene_manager/scene_dump.c:3487,1
    - Dst: gf_dump_finalize
      Src: /src/gpac/src/scene_manager/scene_dump.c:3489,1
    - Dst: gf_sm_dumper_del
      Src: /src/gpac/src/scene_manager/scene_dump.c:3490,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/scene_dump.c:3491,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:3499,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_dump.c:3500,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/scene_dump.c:3501,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3506,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3507,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3509,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3511,1
    - Dst: dump_od_to_saf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3518,1
    - Dst: gf_odf_dump_com_list
      Src: /src/gpac/src/scene_manager/scene_dump.c:3521,1
    - Dst: gf_sm_dump_command_list
      Src: /src/gpac/src/scene_manager/scene_dump.c:3526,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3531,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3535,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3550,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3552,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3558,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3560,1
    - Dst: dump_od_to_saf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3565,1
    - Dst: gf_odf_dump_com_list
      Src: /src/gpac/src/scene_manager/scene_dump.c:3568,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:3573,1
    - Dst: gf_sm_dump_saf_hdr
      Src: /src/gpac/src/scene_manager/scene_dump.c:3575,1
    - Dst: gf_sm_dump_command_list
      Src: /src/gpac/src/scene_manager/scene_dump.c:3577,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3582,1
    - Dst: DumpProtos
      Src: /src/gpac/src/scene_manager/scene_dump.c:3594,1
    - Dst: gf_dump_vrml_node
      Src: /src/gpac/src/scene_manager/scene_dump.c:3595,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3597,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_dump.c:3598,1
    - Dst: gf_dump_vrml_route
      Src: /src/gpac/src/scene_manager/scene_dump.c:3600,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scene_manager/scene_dump.c:3608,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_dump.c:3610,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_dump.c:3611,1
    - Dst: gf_dump_finalize
      Src: /src/gpac/src/scene_manager/scene_dump.c:3614,1
    - Dst: gf_sm_dumper_del
      Src: /src/gpac/src/scene_manager/scene_dump.c:3615,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/scene_dump.c:3616,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 156
    argCount: 4
    argNames:
    - ctx
    - rad_name
    - is_final_name
    - dump_mode
    argTypes:
    - GF_SceneManager*
    - char*
    - Bool
    - GF_SceneDumpFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3618
      start: 3426
    functionDepth: 12
    functionLinenumber: 3426
    functionLinenumberEnd: 3618
    functionName: gf_sm_dump
    functionSourceFile: /src/gpac/src/scene_manager/scene_dump.c
    functionUses: 3
    functionsReached:
    - gf_sm_dump_saf_hdr
    - gf_dump_setup
    - gf_dump_vrml_node
    - gf_dump_vrml_route
    - gf_list_count
    - gf_sm_dumper_del
    - gf_list_new
    - gf_list_get
    - gf_fprintf
    - gf_sm_dump_command_list
    - DumpProtos
    - gf_dump_svg_element
    - GF_LOG
    - gf_dump_finalize
    - ReorderAUContext
    - gf_list_enum
    - gf_list_del
    - dump_od_to_saf
    - gf_odf_dump_com_list
    - gf_sm_dumper_new
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sm_dump(GF_SceneManager *ctx, char *rad_name, Bool is_final_name,
      GF_SceneDumpFormat dump_mode)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_bifs_encoder_new
      Src: /src/gpac/src/scene_manager/scene_engine.c:82,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/scene_engine.c:87,1
    - Dst: gf_odf_get_bifs_config
      Src: /src/gpac/src/scene_manager/scene_engine.c:99,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/scene_manager/scene_engine.c:105,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_engine.c:108,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/scene_manager/scene_engine.c:110,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_engine.c:113,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/scene_manager/scene_engine.c:115,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_engine.c:118,1
    - Dst: gf_bifs_encoder_new_stream
      Src: /src/gpac/src/scene_manager/scene_engine.c:125,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/scene_engine.c:126,1
    - Dst: gf_bifs_encoder_get_config
      Src: /src/gpac/src/scene_manager/scene_engine.c:128,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/scene_engine.c:130,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/scene_engine.c:131,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/scene_engine.c:135,1
    - Dst: memcpy
      Src: /src/gpac/src/scene_manager/scene_engine.c:136,1
    - Dst: gf_bifs_encoder_get_version
      Src: /src/gpac/src/scene_manager/scene_engine.c:139,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 52
    argCount: 3
    argNames:
    - seng
    - sc
    - esd
    argTypes:
    - GF_SceneEngine*
    - GF_StreamContext*
    - GF_ESD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 71
    functionDepth: 3
    functionLinenumber: 71
    functionLinenumberEnd: 142
    functionName: gf_sm_setup_bifsenc
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bifs_encoder_new_stream
    - gf_bifs_encoder_get_version
    - gf_get_bit_size
    - gf_odf_desc_del
    - GF_LOG
    - memcpy
    - gf_odf_desc_new
    - gf_bifs_encoder_new
    - gf_odf_get_bifs_config
    - gf_bifs_encoder_get_config
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_setup_bifsenc(GF_SceneEngine *seng, GF_StreamContext *sc,
      GF_ESD *esd)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_laser_encoder_new
      Src: /src/gpac/src/scene_manager/scene_engine.c:154,1
    - Dst: memset
      Src: /src/gpac/src/scene_manager/scene_engine.c:158,1
    - Dst: memcpy
      Src: /src/gpac/src/scene_manager/scene_engine.c:162,1
    - Dst: gf_odf_get_laser_config
      Src: /src/gpac/src/scene_manager/scene_engine.c:166,1
    - Dst: gf_laser_encoder_new_stream
      Src: /src/gpac/src/scene_manager/scene_engine.c:169,1
    - Dst: gf_laser_encoder_get_config
      Src: /src/gpac/src/scene_manager/scene_engine.c:171,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/scene_engine.c:173,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/scene_engine.c:174,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/scene_engine.c:178,1
    - Dst: memcpy
      Src: /src/gpac/src/scene_manager/scene_engine.c:179,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 3
    argNames:
    - seng
    - sc
    - esd
    argTypes:
    - GF_SceneEngine*
    - GF_StreamContext*
    - GF_ESD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 146
    functionDepth: 2
    functionLinenumber: 146
    functionLinenumberEnd: 182
    functionName: gf_sm_setup_lsrenc
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 0
    functionsReached:
    - gf_laser_encoder_new_stream
    - gf_malloc
    - gf_odf_desc_del
    - memcpy
    - gf_laser_encoder_get_config
    - memset
    - gf_odf_desc_new
    - gf_odf_get_laser_config
    - gf_laser_encoder_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_setup_lsrenc(GF_SceneEngine *seng, GF_StreamContext *sc,
      GF_ESD *esd)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/scene_engine.c:199,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_engine.c:203,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/scene_manager/scene_engine.c:208,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/scene_engine.c:209,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/scene_engine.c:214,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_engine.c:222,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_engine.c:225,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/scene_engine.c:232,1
    - Dst: gf_sm_setup_bifsenc
      Src: /src/gpac/src/scene_manager/scene_engine.c:242,1
    - Dst: gf_sm_setup_lsrenc
      Src: /src/gpac/src/scene_manager/scene_engine.c:248,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 60
    argCount: 1
    argNames:
    - seng
    argTypes:
    - GF_SceneEngine*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 185
    functionDepth: 4
    functionLinenumber: 185
    functionLinenumberEnd: 262
    functionName: gf_sm_live_setup
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 0
    functionsReached:
    - gf_sm_setup_lsrenc
    - gf_odf_desc_del
    - gf_odf_desc_esd_new
    - gf_sm_setup_bifsenc
    - gf_odf_desc_new
    - gf_list_add
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_live_setup(GF_SceneEngine *seng)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_engine.c:272,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_engine.c:276,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 3
    argNames:
    - seng
    - ESID
    - onESID
    argTypes:
    - GF_SceneEngine*
    - u16
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 265
    functionDepth: 2
    functionLinenumber: 265
    functionLinenumberEnd: 282
    functionName: gf_seng_enable_aggregation
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 2
    functionsReached:
    - gf_list_enum
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_seng_enable_aggregation(GF_SceneEngine *seng, u16 ESID,
      u16 onESID)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_engine.c:480,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/scene_manager/scene_engine.c:485,1
    - Dst: gf_node_dirty_reset
      Src: /src/gpac/src/scene_manager/scene_engine.c:487,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_engine.c:490,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/scene_manager/scene_engine.c:494,1
    - Dst: gf_node_dirty_reset
      Src: /src/gpac/src/scene_manager/scene_engine.c:496,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/scene_manager/scene_engine.c:505,1
    - Dst: gf_node_dirty_reset
      Src: /src/gpac/src/scene_manager/scene_engine.c:507,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/scene_manager/scene_engine.c:519,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/scene_manager/scene_engine.c:520,1
    - Dst: gf_node_dirty_reset
      Src: /src/gpac/src/scene_manager/scene_engine.c:522,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 48
    argCount: 2
    argNames:
    - seng
    - au
    argTypes:
    - GF_SceneEngine*
    - GF_AUContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 469
    functionDepth: 3
    functionLinenumber: 469
    functionLinenumberEnd: 529
    functionName: gf_sm_check_for_modif
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 0
    functionsReached:
    - gf_sg_get_root_node
    - gf_list_enum
    - gf_node_dirty_reset
    - gf_node_dirty_get
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sm_check_for_modif(GF_SceneEngine *seng, GF_AUContext *au)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_engine.c:542,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_engine.c:544,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_engine.c:547,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_engine.c:550,1
    - Dst: gf_sm_check_for_modif
      Src: /src/gpac/src/scene_manager/scene_engine.c:556,1
    - Dst: gf_bifs_encode_au
      Src: /src/gpac/src/scene_manager/scene_engine.c:562,1
    - Dst: gf_laser_encode_au
      Src: /src/gpac/src/scene_manager/scene_engine.c:568,1
    - Dst: gf_seng_encode_dims_au
      Src: /src/gpac/src/scene_manager/scene_engine.c:572,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_engine.c:576,1
    - Dst: callback
      Src: /src/gpac/src/scene_manager/scene_engine.c:579,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_engine.c:580,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 41
    argCount: 3
    argNames:
    - seng
    - callback
    - from_start
    argTypes:
    - GF_SceneEngine*
    - gf_seng_callback
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 531
    functionDepth: 6
    functionLinenumber: 531
    functionLinenumberEnd: 586
    functionName: gf_sm_live_encode_scene_au
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - callback
    - GF_LOG
    - gf_seng_encode_dims_au
    - gf_list_count
    - gf_sm_check_for_modif
    - gf_laser_encode_au
    - gf_bifs_encode_au
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sm_live_encode_scene_au(GF_SceneEngine *seng, gf_seng_callback
      callback, Bool from_start)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sm_aggregate
      Src: /src/gpac/src/scene_manager/scene_engine.c:591,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - seng
    - ESID
    argTypes:
    - GF_SceneEngine*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 588
    functionDepth: 17
    functionLinenumber: 588
    functionLinenumberEnd: 592
    functionName: gf_seng_aggregate_context
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 4
    functionsReached:
    - gf_sm_aggregate
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_seng_aggregate_context(GF_SceneEngine *seng, u16 ESID)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - seng
    - dump_rap
    argTypes:
    - GF_SceneEngine*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 599
      start: 595
    functionDepth: 0
    functionLinenumber: 595
    functionLinenumberEnd: 599
    functionName: gf_seng_dump_rap_on
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_seng_dump_rap_on(GF_SceneEngine *seng, Bool dump_rap)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/scene_engine.c:615,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/scene_manager/scene_engine.c:616,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/scene_engine.c:621,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/scene_engine.c:621,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/scene_engine.c:622,1
    - Dst: strcat
      Src: /src/gpac/src/scene_manager/scene_engine.c:629,1
    - Dst: gf_isom_open
      Src: /src/gpac/src/scene_manager/scene_engine.c:630,1
    - Dst: gf_sm_encode_to_file
      Src: /src/gpac/src/scene_manager/scene_engine.c:631,1
    - Dst: gf_isom_delete
      Src: /src/gpac/src/scene_manager/scene_engine.c:632,1
    - Dst: gf_isom_close
      Src: /src/gpac/src/scene_manager/scene_engine.c:633,1
    - Dst: gf_sm_dump
      Src: /src/gpac/src/scene_manager/scene_engine.c:638,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 2
    argNames:
    - seng
    - ctxFileName
    argTypes:
    - GF_SceneEngine*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 602
    functionDepth: 19
    functionLinenumber: 602
    functionLinenumberEnd: 642
    functionName: gf_seng_save_context
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 1
    functionsReached:
    - strcat
    - gf_isom_delete
    - strcpy
    - gf_isom_open
    - gf_sm_encode_to_file
    - gf_sm_dump
    - gf_file_ext_start
    - stricmp
    - gf_isom_close
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_seng_save_context(GF_SceneEngine *seng, char *ctxFileName)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/scene_engine.c:648,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_engine.c:650,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/scene_engine.c:653,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - sc
    - time
    argTypes:
    - GF_StreamContext*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 655
      start: 644
    functionDepth: 1
    functionLinenumber: 644
    functionLinenumberEnd: 655
    functionName: gf_seng_create_new_au
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_last
    - gf_sm_stream_au_new
    linkageType: ''
    returnType: GF_AUContext
    signature: GF_AUContext *gf_seng_create_new_au(GF_StreamContext *sc, u32 time)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_engine.c:665,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_engine.c:666,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_engine.c:673,1
    - Dst: gf_seng_create_new_au
      Src: /src/gpac/src/scene_manager/scene_engine.c:675,1
    - Dst: gf_sm_load_string
      Src: /src/gpac/src/scene_manager/scene_engine.c:678,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_engine.c:682,1
    - Dst: gf_sm_live_encode_scene_au
      Src: /src/gpac/src/scene_manager/scene_engine.c:685,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 5
    argNames:
    - seng
    - ESID
    - disable_aggregation
    - auString
    - callback
    argTypes:
    - GF_SceneEngine*
    - u16
    - Bool
    - char*
    - gf_seng_callback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 657
    functionDepth: 7
    functionLinenumber: 657
    functionLinenumberEnd: 688
    functionName: gf_seng_encode_from_string
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 3
    functionsReached:
    - gf_sm_load_string
    - gf_list_get
    - gf_list_count
    - gf_seng_create_new_au
    - gf_sm_live_encode_scene_au
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_seng_encode_from_string(GF_SceneEngine *seng, u16 ESID,
      Bool disable_aggregation, char *auString, gf_seng_callback callback)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_engine.c:702,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_engine.c:708,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_engine.c:710,1
    - Dst: gf_seng_create_new_au
      Src: /src/gpac/src/scene_manager/scene_engine.c:718,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_engine.c:726,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_engine.c:727,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/scene_engine.c:728,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/scene_engine.c:739,1
    - Dst: gf_bifs_encode_au
      Src: /src/gpac/src/scene_manager/scene_engine.c:749,1
    - Dst: gf_laser_encode_au
      Src: /src/gpac/src/scene_manager/scene_engine.c:755,1
    - Dst: gf_seng_encode_dims_au
      Src: /src/gpac/src/scene_manager/scene_engine.c:759,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_engine.c:762,1
    - Dst: callback
      Src: /src/gpac/src/scene_manager/scene_engine.c:765,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_engine.c:766,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 54
    argCount: 6
    argNames:
    - seng
    - ESID
    - disable_aggregation
    - time
    - commands
    - callback
    argTypes:
    - GF_SceneEngine*
    - u16
    - Bool
    - u32
    - GF_List*
    - gf_seng_callback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 692
    functionDepth: 6
    functionLinenumber: 692
    functionLinenumberEnd: 768
    functionName: gf_seng_encode_from_commands
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - callback
    - GF_LOG
    - gf_seng_encode_dims_au
    - gf_list_count
    - gf_seng_create_new_au
    - gf_list_add
    - gf_laser_encode_au
    - gf_list_rem
    - gf_bifs_encode_au
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_seng_encode_from_commands(GF_SceneEngine *seng, u16 ESID,
      Bool disable_aggregation, u32 time, GF_List *commands, gf_seng_callback callback)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_engine.c:784,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_engine.c:785,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_engine.c:789,1
    - Dst: gf_seng_create_new_au
      Src: /src/gpac/src/scene_manager/scene_engine.c:792,1
    - Dst: gf_sm_load_run
      Src: /src/gpac/src/scene_manager/scene_engine.c:801,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_engine.c:804,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/scene_manager/scene_engine.c:804,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_engine.c:809,1
    - Dst: gf_sm_live_encode_scene_au
      Src: /src/gpac/src/scene_manager/scene_engine.c:813,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 38
    argCount: 5
    argNames:
    - seng
    - ESID
    - disable_aggregation
    - auFile
    - callback
    argTypes:
    - GF_SceneEngine*
    - u16
    - Bool
    - char*
    - gf_seng_callback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 770
    functionDepth: 7
    functionLinenumber: 770
    functionLinenumberEnd: 817
    functionName: gf_seng_encode_from_file
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - GF_LOG
    - gf_sm_live_encode_scene_au
    - gf_list_count
    - gf_seng_create_new_au
    - gf_sm_load_run
    - gf_error_to_string
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_seng_encode_from_file(GF_SceneEngine *seng, u16 ESID,
      Bool disable_aggregation, char *auFile, gf_seng_callback callback)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_engine.c:823,1
    - Dst: gf_sm_live_encode_scene_au
      Src: /src/gpac/src/scene_manager/scene_engine.c:826,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - seng
    - callback
    argTypes:
    - GF_SceneEngine*
    - gf_seng_callback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 819
    functionDepth: 7
    functionLinenumber: 819
    functionLinenumberEnd: 827
    functionName: gf_seng_encode_context
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 5
    functionsReached:
    - GF_LOG
    - gf_sm_live_encode_scene_au
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_seng_encode_context(GF_SceneEngine *seng, gf_seng_callback
      callback)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bifs_encoder_del
      Src: /src/gpac/src/scene_manager/scene_engine.c:833,1
    - Dst: gf_laser_encoder_del
      Src: /src/gpac/src/scene_manager/scene_engine.c:837,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/src/scene_manager/scene_engine.c:840,1
    - Dst: gf_sm_del
      Src: /src/gpac/src/scene_manager/scene_engine.c:843,1
    - Dst: gf_sg_del
      Src: /src/gpac/src/scene_manager/scene_engine.c:844,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_engine.c:846,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - seng
    argTypes:
    - GF_SceneEngine*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 829
    functionDepth: 13
    functionLinenumber: 829
    functionLinenumberEnd: 847
    functionName: gf_seng_terminate
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_sm_del
    - gf_laser_encoder_del
    - gf_sm_load_done
    - gf_bifs_encoder_del
    - gf_sg_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_seng_terminate(GF_SceneEngine *seng)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_engine.c:852,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 8
    argNames:
    - seng
    - idx
    - ESID
    - config
    - config_len
    - streamType
    - codec_id
    - timeScale
    argTypes:
    - GF_SceneEngine*
    - u32
    - u16*
    - u8**
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 861
      start: 849
    functionDepth: 1
    functionLinenumber: 849
    functionLinenumberEnd: 861
    functionName: gf_seng_get_stream_config
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_seng_get_stream_config(GF_SceneEngine *seng, u32 idx,
      u16 *ESID, const u8 **config, u32 *config_len, u32 *streamType, u32 *codec_id,
      u32 *timeScale)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_command_apply_list
      Src: /src/gpac/src/scene_manager/scene_engine.c:871,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/scene_manager/scene_engine.c:871,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_engine.c:874,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/scene_engine.c:875,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/scene_manager/scene_engine.c:876,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/scene_engine.c:877,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/scene_engine.c:879,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - c
    - scene
    argTypes:
    - M_Conditional*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 883
      start: 866
    functionDepth: 17
    functionLinenumber: 866
    functionLinenumberEnd: 883
    functionName: seng_exec_conditional
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_sg_command_apply_list
    - gf_list_count
    - gf_node_get_graph
    - gf_sg_command_del
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void seng_exec_conditional(M_Conditional *c, GF_SceneGraph *scene)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/scene_manager/scene_engine.c:888,1
    - Dst: seng_exec_conditional
      Src: /src/gpac/src/scene_manager/scene_engine.c:890,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 892
      start: 885
    functionDepth: 18
    functionLinenumber: 885
    functionLinenumberEnd: 892
    functionName: seng_conditional_activate
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 0
    functionsReached:
    - seng_exec_conditional
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void seng_conditional_activate(GF_Node *node, GF_Route *route)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/scene_manager/scene_engine.c:897,1
    - Dst: seng_exec_conditional
      Src: /src/gpac/src/scene_manager/scene_engine.c:899,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 894
    functionDepth: 18
    functionLinenumber: 894
    functionLinenumberEnd: 901
    functionName: seng_conditional_reverse_activate
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 0
    functionsReached:
    - seng_exec_conditional
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void seng_conditional_reverse_activate(GF_Node *node, GF_Route *route)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/scene_engine.c:910,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/scene_manager/scene_engine.c:914,1
    - Dst: gf_node_dirty_parents
      Src: /src/gpac/src/scene_manager/scene_engine.c:919,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 4
    argNames:
    - _seng
    - type
    - node
    - ctxdata
    argTypes:
    - void*
    - GF_SGNodeCbkType
    - GF_Node*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 924
      start: 905
    functionDepth: 2
    functionLinenumber: 905
    functionLinenumberEnd: 924
    functionName: gf_seng_on_node_modified
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_node_set_private
    - gf_node_dirty_parents
    linkageType: ''
    returnType: void
    signature: void gf_seng_on_node_modified(void *_seng, GF_SGNodeCbkType type, GF_Node
      *node, void *ctxdata)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/scene_engine.c:934,1
    - Dst: gf_sg_new
      Src: /src/gpac/src/scene_manager/scene_engine.c:940,1
    - Dst: gf_sg_set_node_callback
      Src: /src/gpac/src/scene_manager/scene_engine.c:941,1
    - Dst: gf_sg_set_private
      Src: /src/gpac/src/scene_manager/scene_engine.c:942,1
    - Dst: gf_sm_new
      Src: /src/gpac/src/scene_manager/scene_engine.c:944,1
    - Dst: memset
      Src: /src/gpac/src/scene_manager/scene_engine.c:946,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/scene_manager/scene_engine.c:954,1
    - Dst: seng_conditional_activate
      Src: /src/gpac/src/scene_manager/scene_engine.c:955,1
    - Dst: seng_conditional_reverse_activate
      Src: /src/gpac/src/scene_manager/scene_engine.c:956,1
    - Dst: gf_seng_create_new_au
      Src: /src/gpac/src/scene_manager/scene_engine.c:957,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/src/scene_manager/scene_engine.c:963,1
    - Dst: gf_sm_load_run
      Src: /src/gpac/src/scene_manager/scene_engine.c:964,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_engine.c:967,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/scene_manager/scene_engine.c:967,1
    - Dst: gf_sm_live_setup
      Src: /src/gpac/src/scene_manager/scene_engine.c:970,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_engine.c:972,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/scene_manager/scene_engine.c:972,1
    - Dst: gf_seng_terminate
      Src: /src/gpac/src/scene_manager/scene_engine.c:978,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 44
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 980
      start: 926
    functionDepth: 19
    functionLinenumber: 926
    functionLinenumberEnd: 980
    functionName: GF_SceneEngine *gf_seng_init(void *calling_object, char * inputContext,
      u32 load_type, char *dump_path, Bool embed_resources)
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 0
    functionsReached:
    - gf_sg_new
    - gf_seng_terminate
    - GF_SAFEALLOC
    - GF_LOG
    - gf_sm_load_init
    - memset
    - gf_sg_set_private
    - gf_seng_create_new_au
    - seng_conditional_reverse_activate
    - gf_sm_new
    - gf_sm_load_run
    - gf_sg_set_node_callback
    - gf_error_to_string
    - gf_sm_live_setup
    - seng_conditional_activate
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_SceneEngine *gf_seng_init(void *calling_object, char *
      inputContext, u32 load_type, char *dump_path, Bool embed_resources)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/scene_engine.c:997,1
    - Dst: gf_sm_live_setup
      Src: /src/gpac/src/scene_manager/scene_engine.c:1007,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_engine.c:1009,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/scene_manager/scene_engine.c:1009,1
    - Dst: gf_seng_terminate
      Src: /src/gpac/src/scene_manager/scene_engine.c:1015,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 3
    argNames:
    - calling_object
    - ctx
    - dump_path
    argTypes:
    - void*
    - GF_SceneManager*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1017
      start: 990
    functionDepth: 14
    functionLinenumber: 990
    functionLinenumberEnd: 1017
    functionName: gf_seng_init_from_context
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 0
    functionsReached:
    - gf_seng_terminate
    - GF_SAFEALLOC
    - GF_LOG
    - gf_error_to_string
    - gf_sm_live_setup
    linkageType: ''
    returnType: GF_SceneEngine
    signature: GF_SceneEngine *gf_seng_init_from_context(void *calling_object, GF_SceneManager
      *ctx, char *dump_path)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/scene_engine.c:1040,1
    - Dst: gf_sg_new
      Src: /src/gpac/src/scene_manager/scene_engine.c:1046,1
    - Dst: gf_sm_new
      Src: /src/gpac/src/scene_manager/scene_engine.c:1047,1
    - Dst: memset
      Src: /src/gpac/src/scene_manager/scene_engine.c:1049,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/scene_engine.c:1058,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/scene_engine.c:1059,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/scene_engine.c:1060,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/scene_engine.c:1060,1
    - Dst: gf_sm_load_string
      Src: /src/gpac/src/scene_manager/scene_engine.c:1065,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_engine.c:1068,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/scene_manager/scene_engine.c:1068,1
    - Dst: gf_sm_live_setup
      Src: /src/gpac/src/scene_manager/scene_engine.c:1077,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/scene_engine.c:1079,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/scene_manager/scene_engine.c:1079,1
    - Dst: gf_seng_terminate
      Src: /src/gpac/src/scene_manager/scene_engine.c:1085,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 49
    argCount: 7
    argNames:
    - calling_object
    - inputContext
    - load_type
    - width
    - height
    - usePixelMetrics
    - dump_path
    argTypes:
    - void*
    - char*
    - u32
    - u32
    - u32
    - Bool
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1087
      start: 1033
    functionDepth: 14
    functionLinenumber: 1033
    functionLinenumberEnd: 1087
    functionName: gf_seng_init_from_string
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 0
    functionsReached:
    - gf_sm_load_string
    - gf_sg_new
    - gf_seng_terminate
    - GF_SAFEALLOC
    - GF_LOG
    - strstr
    - memset
    - gf_sm_new
    - gf_error_to_string
    - gf_sm_live_setup
    linkageType: ''
    returnType: GF_SceneEngine
    signature: GF_SceneEngine *gf_seng_init_from_string(void *calling_object, char
      * inputContext, u32 load_type, u32 width, u32 height, Bool usePixelMetrics,
      char *dump_path)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/scene_engine.c:1094,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - seng
    argTypes:
    - GF_SceneEngine*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1095
      start: 1091
    functionDepth: 1
    functionLinenumber: 1091
    functionLinenumberEnd: 1095
    functionName: gf_seng_get_stream_count
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_seng_get_stream_count(GF_SceneEngine *seng)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_engine.c:1106,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 4
    argNames:
    - seng
    - ESID
    - carousel_period
    - aggregate_on_es_id
    argTypes:
    - GF_SceneEngine*
    - u16
    - u32*
    - u16*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1114
      start: 1097
    functionDepth: 2
    functionLinenumber: 1097
    functionLinenumberEnd: 1114
    functionName: gf_seng_get_stream_carousel_info
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_seng_get_stream_carousel_info(GF_SceneEngine *seng, u16
      ESID, u32 *carousel_period, u16 *aggregate_on_es_id)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_engine.c:1126,1
    - Dst: gf_odf_desc_write
      Src: /src/gpac/src/scene_manager/scene_engine.c:1133,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/scene_engine.c:1135,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/scene_manager/scene_engine.c:1136,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/scene_engine.c:1138,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - seng
    argTypes:
    - GF_SceneEngine*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1140
      start: 1116
    functionDepth: 3
    functionLinenumber: 1116
    functionLinenumberEnd: 1140
    functionName: gf_seng_get_base64_iod
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_odf_desc_write
    - gf_base64_encode
    - gf_list_enum
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_seng_get_base64_iod(GF_SceneEngine *seng)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/scene_engine.c:1150,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/scene_manager/scene_engine.c:1155,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1157
      start: 1142
    functionDepth: 4
    functionLinenumber: 1142
    functionLinenumberEnd: 1157
    functionName: GF_Descriptor *gf_seng_get_iod(GF_SceneEngine *seng)
    functionSourceFile: /src/gpac/src/scene_manager/scene_engine.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_odf_desc_copy
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_Descriptor *gf_seng_get_iod(GF_SceneEngine *seng)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/gpac/src/scene_manager/swf_svg.c:53,1
    - Dst: vsnprintf
      Src: /src/gpac/src/scene_manager/swf_svg.c:54,1
    - Dst: va_end
      Src: /src/gpac/src/scene_manager/swf_svg.c:55,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/swf_svg.c:57,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/swf_svg.c:59,1
    - Dst: memmove
      Src: /src/gpac/src/scene_manager/swf_svg.c:62,1
    - Dst: memcpy
      Src: /src/gpac/src/scene_manager/swf_svg.c:63,1
    - Dst: strcpy
      Src: /src/gpac/src/scene_manager/swf_svg.c:66,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - read
    - format
    argTypes:
    - SWFReader*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 69
    functionName: swf_svg_print
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached:
    - memmove
    - va_end
    - va_start
    - memcpy
    - strcpy
    - vsnprintf
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void swf_svg_print(SWFReader *read, const char *format, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/swf_svg.c:74,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/swf_svg.c:75,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/swf_svg.c:76,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:77,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:77,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:77,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - read
    - ARGB
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 78
    functionName: swf_svg_print_color
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - swf_svg_print
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void swf_svg_print_color(SWFReader *read, u32 ARGB)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/swf_svg.c:83,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:84,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - read
    - ARGB
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 85
    functionName: swf_svg_print_alpha
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - swf_svg_print
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void swf_svg_print_alpha(SWFReader *read, u32 ARGB)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:94,1
    - Dst: swf_svg_print_color
      Src: /src/gpac/src/scene_manager/swf_svg.c:95,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:96,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:97,1
    - Dst: swf_svg_print_alpha
      Src: /src/gpac/src/scene_manager/swf_svg.c:98,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:99,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_svg.c:118,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:122,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:123,1
    - Dst: swf_svg_print_color
      Src: /src/gpac/src/scene_manager/swf_svg.c:124,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:125,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:126,1
    - Dst: swf_svg_print_alpha
      Src: /src/gpac/src/scene_manager/swf_svg.c:127,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:128,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:129,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:129,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 31
    argCount: 3
    argNames:
    - read
    - srec
    - is_fill
    argTypes:
    - SWFReader*
    - SWFShapeRec*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 87
    functionDepth: 3
    functionLinenumber: 87
    functionLinenumberEnd: 131
    functionName: swg_svg_print_shape_record_to_fill_stroke
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached:
    - swf_svg_print_alpha
    - swf_report
    - swf_svg_print_color
    - swf_svg_print
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void swg_svg_print_shape_record_to_fill_stroke(SWFReader *read, SWFShapeRec
      *srec, Bool is_fill)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:143,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:143,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:143,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:148,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:148,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:148,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:153,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:153,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:153,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:155,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:155,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:155,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - read
    - srec
    argTypes:
    - SWFReader*
    - SWFShapeRec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 160
    functionName: swf_svg_print_shape_record_to_path_d
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached:
    - swf_svg_print
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void swf_svg_print_shape_record_to_path_d(SWFReader *read, SWFShapeRec
      *srec)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx2d_is_identity
      Src: /src/gpac/src/scene_manager/swf_svg.c:164,1
    - Dst: gf_mx2d_decompose
      Src: /src/gpac/src/scene_manager/swf_svg.c:169,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:171,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:174,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:174,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:174,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:178,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:178,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:182,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:182,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:182,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:184,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:188,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:188,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:188,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:188,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:188,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:188,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:188,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 2
    argNames:
    - read
    - mat
    argTypes:
    - SWFReader*
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 162
    functionDepth: 2
    functionLinenumber: 162
    functionLinenumberEnd: 191
    functionName: swf_svg_print_matrix
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_is_identity
    - gf_mx2d_decompose
    - swf_svg_print
    - FIX2FLT
    linkageType: ''
    returnType: void
    signature: void swf_svg_print_matrix(SWFReader *read, GF_Matrix2D *mat)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:206,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:209,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_svg.c:214,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_svg.c:214,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:215,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_svg.c:216,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/swf_svg.c:223,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:224,1
    - Dst: swf_svg_print_shape_record_to_path_d
      Src: /src/gpac/src/scene_manager/swf_svg.c:225,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:226,1
    - Dst: swg_svg_print_shape_record_to_fill_stroke
      Src: /src/gpac/src/scene_manager/swf_svg.c:227,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:228,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/swf_svg.c:231,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:232,1
    - Dst: swf_svg_print_shape_record_to_path_d
      Src: /src/gpac/src/scene_manager/swf_svg.c:233,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:234,1
    - Dst: swg_svg_print_shape_record_to_fill_stroke
      Src: /src/gpac/src/scene_manager/swf_svg.c:235,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:236,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:242,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:243,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 38
    argCount: 4
    argNames:
    - read
    - shape
    - parent_font
    - last_sub_shape
    argTypes:
    - SWFReader*
    - SWFShape*
    - SWFFont*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 194
    functionDepth: 4
    functionLinenumber: 194
    functionLinenumberEnd: 246
    functionName: swf_svg_define_shape
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached:
    - swf_svg_print_shape_record_to_path_d
    - swg_svg_print_shape_record_to_fill_stroke
    - sprintf
    - gf_list_count
    - gf_list_add
    - gf_list_enum
    - swf_svg_print
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_svg_define_shape(SWFReader *read, SWFShape *shape, SWFFont
      *parent_font, Bool last_sub_shape)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:258,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:259,1
    - Dst: swf_svg_print_matrix
      Src: /src/gpac/src/scene_manager/swf_svg.c:260,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:261,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/swf_svg.c:264,1
    - Dst: swf_find_font
      Src: /src/gpac/src/scene_manager/swf_svg.c:268,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_svg.c:271,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:276,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:277,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:277,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:278,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:278,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:279,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:282,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:286,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:290,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:292,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_svg.c:300,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_svg.c:306,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/scene_manager/swf_svg.c:308,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:311,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:314,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:320,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:321,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:321,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:321,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:326,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/swf_svg.c:326,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scene_manager/swf_svg.c:326,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_svg.c:326,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:329,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:333,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:334,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 60
    argCount: 2
    argNames:
    - read
    - text
    argTypes:
    - SWFReader*
    - SWFText*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 248
    functionDepth: 3
    functionLinenumber: 248
    functionLinenumberEnd: 336
    functionName: swf_svg_define_text
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - FLT2FIX
    - swf_svg_print_matrix
    - gf_utf8_wcstombs
    - swf_find_font
    - gf_divfix
    - swf_report
    - gf_list_enum
    - swf_svg_print
    - FIX2FLT
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_svg_define_text(SWFReader *read, SWFText *text)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - read
    - text
    argTypes:
    - SWFReader*
    - SWFEditText*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 341
    functionName: swf_svg_define_edit_text
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_svg_define_edit_text(SWFReader *read, SWFEditText *text)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 347
    functionName: swf_svg_end_of_clip
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void swf_svg_end_of_clip(SWFReader *read)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - read
    - depth
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 350
    functionDepth: 0
    functionLinenumber: 350
    functionLinenumberEnd: 353
    functionName: swf_svg_allocate_depth
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool swf_svg_allocate_depth(SWFReader *read, u32 depth)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - read
    - nb_frames
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 355
    functionDepth: 0
    functionLinenumber: 355
    functionLinenumberEnd: 358
    functionName: swf_svg_define_sprite
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_svg_define_sprite(SWFReader *read, u32 nb_frames)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - read
    - snd
    - soundstream_first_block
    argTypes:
    - SWFReader*
    - SWFSound*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 360
    functionDepth: 0
    functionLinenumber: 360
    functionLinenumberEnd: 363
    functionName: swf_svg_setup_sound
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_svg_setup_sound(SWFReader *read, SWFSound *snd, Bool soundstream_first_block)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:367,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:368,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:369,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - read
    - ID
    - fileName
    argTypes:
    - SWFReader*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 365
    functionDepth: 1
    functionLinenumber: 365
    functionLinenumberEnd: 371
    functionName: swf_svg_setup_image
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached:
    - swf_svg_print
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_svg_setup_image(SWFReader *read, u32 ID, char *fileName)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - read
    - xrgb
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 373
    functionDepth: 0
    functionLinenumber: 373
    functionLinenumberEnd: 380
    functionName: swf_svg_set_backcol
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_svg_set_backcol(SWFReader *read, u32 xrgb)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - read
    - snd
    - stop
    argTypes:
    - SWFReader*
    - SWFSound*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 382
    functionDepth: 0
    functionLinenumber: 382
    functionLinenumberEnd: 385
    functionName: swf_svg_start_sound
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_svg_start_sound(SWFReader *read, SWFSound *snd, Bool stop)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 9
    argNames:
    - read
    - depth
    - ID
    - prev_id
    - type
    - mat
    - cmat
    - prev_mat
    - prev_cmat
    argTypes:
    - SWFReader*
    - u32
    - u32
    - u32
    - u32
    - GF_Matrix2D*
    - GF_ColorMatrix*
    - GF_Matrix2D*
    - GF_ColorMatrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 387
    functionDepth: 0
    functionLinenumber: 387
    functionLinenumberEnd: 391
    functionName: swf_svg_place_obj
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_svg_place_obj(SWFReader *read, u32 depth, u32 ID, u32 prev_id,
      u32 type, GF_Matrix2D *mat, GF_ColorMatrix *cmat, GF_Matrix2D *prev_mat, GF_ColorMatrix
      *prev_cmat)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - read
    - depth
    - ID
    argTypes:
    - SWFReader*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 393
    functionDepth: 0
    functionLinenumber: 393
    functionLinenumberEnd: 397
    functionName: swf_svg_remove_obj
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_svg_remove_obj(SWFReader *read, u32 depth, u32 ID)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/swf_svg.c:403,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_svg.c:406,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_svg.c:411,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_svg.c:412,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_svg.c:414,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_svg.c:416,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/scene_manager/swf_svg.c:419,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_svg.c:426,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/swf_svg.c:429,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_svg.c:433,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_svg.c:437,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:438,1
    - Dst: swf_svg_print_matrix
      Src: /src/gpac/src/scene_manager/swf_svg.c:440,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:441,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:447,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:448,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:449,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:451,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:453,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:455,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:458,1
    - Dst: SWFReader*::add_sample
      Src: /src/gpac/src/scene_manager/swf_svg.c:462,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_svg.c:465,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 49
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 399
    functionDepth: 3
    functionLinenumber: 399
    functionLinenumberEnd: 472
    functionName: swf_svg_show_frame
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_free
    - gf_list_new
    - gf_list_get
    - swf_svg_print_matrix
    - gf_list_count
    - gf_list_add
    - SWFReader*::add_sample
    - gf_list_del
    - swf_svg_print
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_svg_show_frame(SWFReader *read)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:477,1
    - Dst: SWFReader*::add_header
      Src: /src/gpac/src/scene_manager/swf_svg.c:478,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_svg.c:480,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - read
    - is_destroy
    argTypes:
    - SWFReader*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 474
    functionDepth: 1
    functionLinenumber: 474
    functionLinenumberEnd: 483
    functionName: swf_svg_finalize
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - SWFReader*::add_header
    - swf_svg_print
    linkageType: ''
    returnType: void
    signature: void swf_svg_finalize(SWFReader *read, Bool is_destroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - read
    - btn
    argTypes:
    - SWFReader*
    - SWF_Button*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 485
    functionDepth: 0
    functionLinenumber: 485
    functionLinenumberEnd: 488
    functionName: swf_svg_define_button
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_svg_define_button(SWFReader *read, SWF_Button *btn)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - read
    - act
    argTypes:
    - SWFReader*
    - SWFAction*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 490
    functionDepth: 0
    functionLinenumber: 490
    functionLinenumberEnd: 493
    functionName: swf_svg_action
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool swf_svg_action(SWFReader *read, SWFAction *act)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_svg.c:517,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:520,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:521,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:522,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:523,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:524,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:525,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scene_manager/swf_svg.c:525,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scene_manager/swf_svg.c:525,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:526,1
    - Dst: swf_svg_print
      Src: /src/gpac/src/scene_manager/swf_svg.c:527,1
    - Dst: SWFReader*::add_header
      Src: /src/gpac/src/scene_manager/swf_svg.c:531,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_svg.c:532,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 35
    argCount: 3
    argNames:
    - read
    - swf_flags
    - swf_flatten_angle
    argTypes:
    - SWFReader*
    - u32
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 537
      start: 495
    functionDepth: 1
    functionLinenumber: 495
    functionLinenumberEnd: 537
    functionName: swf_to_svg_init
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - SWFReader*::add_header
    - gf_free
    - FIX2INT
    - swf_svg_print
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_to_svg_init(SWFReader *read, u32 swf_flags, Float swf_flatten_angle)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fwrite
      Src: /src/gpac/src/scene_manager/swf_svg.c:544,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - user
    - data
    - length
    - timestamp
    - isRap
    argTypes:
    - void*
    - u8*
    - u32
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 539
    functionDepth: 2
    functionLinenumber: 539
    functionLinenumberEnd: 550
    functionName: swf_svg_write_text_sample
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached:
    - gf_fwrite
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_svg_write_text_sample(void *user, const u8 *data, u32 length,
      u64 timestamp, Bool isRap)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fwrite
      Src: /src/gpac/src/scene_manager/swf_svg.c:557,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - user
    - data
    - length
    - isHeader
    argTypes:
    - void*
    - u8*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 552
    functionDepth: 2
    functionLinenumber: 552
    functionLinenumberEnd: 563
    functionName: swf_svg_write_text_header
    functionSourceFile: /src/gpac/src/scene_manager/swf_svg.c
    functionUses: 0
    functionsReached:
    - gf_fwrite
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_svg_write_text_header(void *user, const u8 *data, u32 length,
      Bool isHeader)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:46,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/webgl.c:48,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/webgl.c:49,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/webgl.c:50,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/webgl.c:52,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/webgl.c:54,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/webgl.c:56,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/webgl.c:57,1
    - Dst: gf_list_del
      Src: /src/gpac/src/jsmods/webgl.c:59,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/webgl.c:60,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/webgl.c:62,1
    - Dst: gf_list_del
      Src: /src/gpac/src/jsmods/webgl.c:65,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/jsmods/webgl.c:67,1
    - Dst: glDeleteRenderbuffers
      Src: /src/gpac/src/jsmods/webgl.c:68,1
    - Dst: glDeleteFramebuffers
      Src: /src/gpac/src/jsmods/webgl.c:69,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/webgl.c:70,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/webgl.c:71,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/webgl.c:72,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 73
    functionName: webgl_finalize
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - glDeleteRenderbuffers
    - gf_list_get
    - JS_GetOpaque
    - JS_FreeValueRT
    - JS_IsUndefined
    - gf_list_count
    - glDeleteTextures
    - glDeleteFramebuffers
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void webgl_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:78,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/webgl.c:80,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/webgl.c:81,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/webgl.c:82,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/webgl.c:83,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/webgl.c:84,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/webgl.c:85,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/webgl.c:86,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/webgl.c:88,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/webgl.c:89,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/webgl.c:90,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 92
    functionName: webgl_gc_mark
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - JS_GetOpaque
    - JS_IsUndefined
    - gf_list_count
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: void webgl_gc_mark(JSRuntime *rt, JSValueConst val, JS_MarkFunc *mark_func)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _destr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 123
    functionName: DEF_WGLOBJ_CLASS1
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEF_WGLOBJ_CLASS1(_name, _destr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _destr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 138
    functionName: DEF_WGLOBJ_CLASS2
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEF_WGLOBJ_CLASS2(_name, _destr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 152
    functionName: DEF_WGLOBJ_CLASS3
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEF_WGLOBJ_CLASS3(_name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:169,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/jsmods/webgl.c:172,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/jsmods/webgl.c:177,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/webgl.c:178,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/webgl.c:179,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 167
    functionDepth: 3
    functionLinenumber: 167
    functionLinenumberEnd: 180
    functionName: NamedTexture_finalize
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_free
    - gf_list_del_item
    - glDeleteTextures
    linkageType: ''
    returnType: void
    signature: void NamedTexture_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsArray
      Src: /src/gpac/src/jsmods/webgl.c:194,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/webgl.c:194,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:195,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/webgl.c:196,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/webgl.c:199,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/webgl.c:200,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/webgl.c:206,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/jsmods/webgl.c:212,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/webgl.c:213,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/webgl.c:214,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 5
    argNames:
    - ctx
    - val
    - values
    - v_size
    - dim
    argTypes:
    - JSContext*
    - JSValue
    - s32**
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 219
    functionName: WGL_LOAD_INT32_VEC
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_IsArray
    - JS_IsException
    - JS_FreeValue
    - JS_GetPropertyUint32
    - JS_ToInt32
    - JS_GetPropertyStr
    - JS_IsObject
    - gf_malloc
    linkageType: ''
    returnType: Bool
    signature: Bool WGL_LOAD_INT32_VEC(JSContext *ctx, JSValue val, s32 **values,
      u32 *v_size, u32 dim)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsArray
      Src: /src/gpac/src/jsmods/webgl.c:227,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/webgl.c:227,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:228,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/webgl.c:229,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/webgl.c:232,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/webgl.c:234,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/webgl.c:241,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/jsmods/webgl.c:251,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/webgl.c:252,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/webgl.c:253,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 6
    argNames:
    - ctx
    - val
    - values
    - v_size
    - dim
    - is_matrix
    argTypes:
    - JSContext*
    - JSValue
    - Float**
    - u32*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 258
    functionName: WGL_LOAD_FLOAT_VEC
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_IsArray
    - JS_IsException
    - JS_FreeValue
    - JS_GetPropertyUint32
    - JS_ToInt32
    - JS_GetPropertyStr
    - JS_ToFloat64
    - JS_IsObject
    - gf_malloc
    linkageType: ''
    returnType: Bool
    signature: Bool WGL_LOAD_FLOAT_VEC(JSContext *ctx, JSValue val, Float **values,
      u32 *v_size, u32 dim, Bool is_matrix)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsArrayBuffer
      Src: /src/gpac/src/jsmods/webgl.c:266,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/webgl.c:267,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:276,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/webgl.c:277,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/webgl.c:278,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/webgl.c:279,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:282,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/webgl.c:283,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/jsmods/webgl.c:285,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/webgl.c:286,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:287,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/webgl.c:288,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/webgl.c:289,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 3
    argNames:
    - ctx
    - size
    - obj
    argTypes:
    - JSContext*
    - u32*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 260
    functionDepth: 1
    functionLinenumber: 260
    functionLinenumberEnd: 295
    functionName: wgl_GetArrayBuffer
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_IsArrayBuffer
    - JS_FreeValue
    - JS_IsUndefined
    - JS_ToInt64
    - JS_ToInt32
    - JS_GetPropertyStr
    - JS_GetArrayBuffer
    linkageType: ''
    returnType: uint8_t
    signature: uint8_t *wgl_GetArrayBuffer(JSContext *ctx, u32 *size, JSValueConst
      obj)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:299,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:300,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/webgl.c:304,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:306,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:308,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 297
    functionDepth: 2
    functionLinenumber: 297
    functionLinenumberEnd: 311
    functionName: WebGLRenderingContextBase_getProperty
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_NewInt32
    - JS_DupValue
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue WebGLRenderingContextBase_getProperty(JSContext *ctx, JSValueConst
      obj, int magic)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: glGetActiveAttrib
      Src: /src/gpac/src/jsmods/webgl.c:320,1
    - Dst: glGetActiveUniform
      Src: /src/gpac/src/jsmods/webgl.c:322,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:324,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/webgl.c:326,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:327,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:327,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:328,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:328,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:329,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/webgl.c:329,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - program
    - index
    - is_attr
    argTypes:
    - JSContext*
    - GLuint
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 313
    functionDepth: 2
    functionLinenumber: 313
    functionLinenumberEnd: 331
    functionName: webgl_getActiveAttribOrUniform
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - glGetActiveAttrib
    - glGetActiveUniform
    - js_throw_err
    - JS_NewString
    - JS_NewInt32
    - JS_NewObject
    - JS_SetPropertyStr
    linkageType: ''
    returnType: JSValue
    signature: JSValue webgl_getActiveAttribOrUniform(JSContext *ctx, GLuint program,
      u32 index, Bool is_attr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: webgl_getActiveAttribOrUniform
      Src: /src/gpac/src/jsmods/webgl.c:334,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - program
    - index
    argTypes:
    - JSContext*
    - GLuint
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 332
    functionDepth: 3
    functionLinenumber: 332
    functionLinenumberEnd: 335
    functionName: webgl_getActiveAttrib
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - webgl_getActiveAttribOrUniform
    linkageType: ''
    returnType: JSValue
    signature: JSValue webgl_getActiveAttrib(JSContext *ctx, GLuint program, u32 index)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: webgl_getActiveAttribOrUniform
      Src: /src/gpac/src/jsmods/webgl.c:338,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - program
    - index
    argTypes:
    - JSContext*
    - GLuint
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 336
    functionDepth: 3
    functionLinenumber: 336
    functionLinenumberEnd: 339
    functionName: webgl_getActiveUniform
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - webgl_getActiveAttribOrUniform
    linkageType: ''
    returnType: JSValue
    signature: JSValue webgl_getActiveUniform(JSContext *ctx, GLuint program, u32
      index)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:345,1
    - Dst: glGetAttachedShaders
      Src: /src/gpac/src/jsmods/webgl.c:347,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/webgl.c:349,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/webgl.c:351,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/webgl.c:353,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/webgl.c:356,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/webgl.c:356,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 3
    argNames:
    - ctx
    - glc
    - program
    argTypes:
    - JSContext*
    - GF_WebGLContext*
    - GLuint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 340
    functionDepth: 2
    functionLinenumber: 340
    functionLinenumberEnd: 362
    functionName: webgl_getAttachedShaders
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - JS_DupValue
    - js_throw_err
    - JS_SetPropertyUint32
    - gf_list_count
    - glGetAttachedShaders
    - JS_NewArray
    linkageType: ''
    returnType: JSValue
    signature: JSValue webgl_getAttachedShaders(JSContext *ctx, GF_WebGLContext *glc,
      GLuint program)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:371,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:372,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/webgl.c:374,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:375,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/webgl.c:375,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:377,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/webgl.c:377,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:379,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/webgl.c:379,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:381,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/webgl.c:381,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:382,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/webgl.c:382,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:383,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/webgl.c:383,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:384,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/webgl.c:384,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:385,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/webgl.c:385,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:386,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/webgl.c:386,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 368
    functionDepth: 2
    functionLinenumber: 368
    functionLinenumberEnd: 388
    functionName: wgl_getContextAttributes
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - JS_GetOpaque
    - JS_NewString
    - JS_NewBool
    - JS_NewObject
    - JS_SetPropertyStr
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getContextAttributes(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 390
    functionDepth: 0
    functionLinenumber: 390
    functionLinenumberEnd: 393
    functionName: wgl_isContextLost
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_isContextLost(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:397,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:398,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/webgl.c:399,1
    - Dst: glGetString
      Src: /src/gpac/src/jsmods/webgl.c:402,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/webgl.c:403,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/webgl.c:405,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/webgl.c:407,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/webgl.c:407,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:413,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:413,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/webgl.c:416,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 394
    functionDepth: 2
    functionLinenumber: 394
    functionLinenumberEnd: 417
    functionName: wgl_getSupportedExtensions
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - JS_GetOpaque
    - JS_SetPropertyUint32
    - JS_NewString
    - JS_ToBool
    - JS_NewInt32
    - glGetString
    - JS_SetPropertyStr
    - strchr
    - JS_NewArray
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getSupportedExtensions(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:424,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:425,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:426,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/webgl.c:427,1
    - Dst: glGetString
      Src: /src/gpac/src/jsmods/webgl.c:429,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/webgl.c:430,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/webgl.c:432,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/webgl.c:435,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 419
    functionDepth: 2
    functionLinenumber: 419
    functionLinenumberEnd: 440
    functionName: wgl_getExtension
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - js_throw_err
    - JS_GetOpaque
    - GF_LOG
    - strstr
    - glGetString
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getExtension(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:448,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:449,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:450,1
    - Dst: glGetBufferParameteriv
      Src: /src/gpac/src/jsmods/webgl.c:451,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:452,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 442
    functionDepth: 2
    functionLinenumber: 442
    functionLinenumberEnd: 453
    functionName: wgl_getBufferParameter
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_NewInt32
    - js_throw_err
    - WGL_GET_U32
    - glGetBufferParameteriv
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getBufferParameter(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 63
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:466,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:467,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:468,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:469,1
    - Dst: glGetFloatv
      Src: /src/gpac/src/jsmods/webgl.c:476,1
    - Dst: glGetIntegerv
      Src: /src/gpac/src/jsmods/webgl.c:482,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/webgl.c:484,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/webgl.c:486,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/webgl.c:488,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:491,1
    - Dst: glGetFloatv
      Src: /src/gpac/src/jsmods/webgl.c:496,1
    - Dst: glGetBooleanv
      Src: /src/gpac/src/jsmods/webgl.c:501,1
    - Dst: glGetIntegerv
      Src: /src/gpac/src/jsmods/webgl.c:508,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/webgl.c:509,1
    - Dst: glGetIntegerv
      Src: /src/gpac/src/jsmods/webgl.c:510,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/webgl.c:511,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/webgl.c:513,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:513,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/webgl.c:515,1
    - Dst: glGetIntegerv
      Src: /src/gpac/src/jsmods/webgl.c:521,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/webgl.c:523,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/webgl.c:525,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/webgl.c:527,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:530,1
    - Dst: glGetIntegerv
      Src: /src/gpac/src/jsmods/webgl.c:534,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/webgl.c:536,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/webgl.c:538,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/webgl.c:540,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:543,1
    - Dst: glGetIntegerv
      Src: /src/gpac/src/jsmods/webgl.c:547,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/webgl.c:549,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/webgl.c:551,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/webgl.c:553,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:556,1
    - Dst: glGetIntegerv
      Src: /src/gpac/src/jsmods/webgl.c:561,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/webgl.c:563,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/webgl.c:565,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/webgl.c:567,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:571,1
    - Dst: glGetBooleanv
      Src: /src/gpac/src/jsmods/webgl.c:588,1
    - Dst: glGetFloatv
      Src: /src/gpac/src/jsmods/webgl.c:601,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/webgl.c:602,1
    - Dst: glGetIntegerv
      Src: /src/gpac/src/jsmods/webgl.c:605,1
    - Dst: glGetIntegerv
      Src: /src/gpac/src/jsmods/webgl.c:611,1
    - Dst: glGetString
      Src: /src/gpac/src/jsmods/webgl.c:619,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/webgl.c:620,1
    - Dst: glGetIntegerv
      Src: /src/gpac/src/jsmods/webgl.c:624,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:625,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/webgl.c:630,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/webgl.c:632,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/webgl.c:632,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/webgl.c:638,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/webgl.c:640,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:640,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/webgl.c:646,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/webgl.c:648,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/webgl.c:648,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 164
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 653
      start: 454
    functionDepth: 2
    functionLinenumber: 454
    functionLinenumberEnd: 653
    functionName: wgl_getParameter
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - JS_DupValue
    - js_throw_err
    - JS_NewFloat64
    - JS_GetOpaque
    - glGetFloatv
    - glGetIntegerv
    - JS_NewArray
    - JS_SetPropertyUint32
    - WGL_GET_U32
    - JS_NewString
    - gf_list_count
    - glGetBooleanv
    - JS_NewBool
    - glGetString
    - JS_NewInt32
    - gf_malloc
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getParameter(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:661,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:662,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:663,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:664,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:665,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:666,1
    - Dst: glGetFramebufferAttachmentParameteriv
      Src: /src/gpac/src/jsmods/webgl.c:667,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/webgl.c:671,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/webgl.c:673,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/webgl.c:675,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/webgl.c:677,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:680,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:682,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 683
      start: 655
    functionDepth: 2
    functionLinenumber: 655
    functionLinenumberEnd: 683
    functionName: wgl_getFramebufferAttachmentParameter
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - JS_DupValue
    - js_throw_err
    - JS_GetOpaque
    - WGL_GET_U32
    - gf_list_count
    - JS_NewInt32
    - glGetFramebufferAttachmentParameteriv
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getFramebufferAttachmentParameter(JSContext *ctx, JSValueConst
      this_val, int argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:690,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/webgl.c:691,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:692,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/jsmods/webgl.c:693,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:702,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 703
      start: 684
    functionDepth: 2
    functionLinenumber: 684
    functionLinenumberEnd: 703
    functionName: wgl_getProgramParameter
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - WGL_GET_U32
    - glGetProgramiv
    - JS_NewInt32
    - WGL_GET_GLID
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getProgramParameter(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:710,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:711,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:712,1
    - Dst: glGetRenderbufferParameteriv
      Src: /src/gpac/src/jsmods/webgl.c:713,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:714,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 715
      start: 704
    functionDepth: 2
    functionLinenumber: 704
    functionLinenumberEnd: 715
    functionName: wgl_getRenderbufferParameter
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_NewInt32
    - js_throw_err
    - WGL_GET_U32
    - glGetRenderbufferParameteriv
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getRenderbufferParameter(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:722,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/webgl.c:723,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:724,1
    - Dst: glGetShaderiv
      Src: /src/gpac/src/jsmods/webgl.c:725,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:733,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 734
      start: 716
    functionDepth: 2
    functionLinenumber: 716
    functionLinenumberEnd: 734
    functionName: wgl_getShaderParameter
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - WGL_GET_U32
    - JS_NewInt32
    - WGL_GET_GLID
    - glGetShaderiv
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getShaderParameter(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:743,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:744,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:745,1
    - Dst: glGetShaderPrecisionFormat
      Src: /src/gpac/src/jsmods/webgl.c:748,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/webgl.c:754,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:755,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:755,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:756,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:756,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:757,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:757,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 759
      start: 735
    functionDepth: 2
    functionLinenumber: 735
    functionLinenumberEnd: 759
    functionName: wgl_getShaderPrecisionFormat
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - WGL_GET_U32
    - glGetShaderPrecisionFormat
    - JS_NewInt32
    - JS_NewObject
    - JS_SetPropertyStr
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getShaderPrecisionFormat(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:767,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/webgl.c:769,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/jsmods/webgl.c:770,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/webgl.c:772,1
    - Dst: glGetShaderiv
      Src: /src/gpac/src/jsmods/webgl.c:774,1
    - Dst: glGetShaderiv
      Src: /src/gpac/src/jsmods/webgl.c:776,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/webgl.c:779,1
    - Dst: glGetProgramInfoLog
      Src: /src/gpac/src/jsmods/webgl.c:781,1
    - Dst: glGetShaderInfoLog
      Src: /src/gpac/src/jsmods/webgl.c:783,1
    - Dst: glGetShaderSource
      Src: /src/gpac/src/jsmods/webgl.c:785,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/webgl.c:788,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/webgl.c:789,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - type
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 791
      start: 760
    functionDepth: 2
    functionLinenumber: 760
    functionLinenumberEnd: 791
    functionName: wgl_getInfoLog
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - glGetProgramInfoLog
    - js_throw_err
    - glGetShaderInfoLog
    - glGetShaderiv
    - JS_NewString
    - glGetProgramiv
    - glGetShaderSource
    - WGL_GET_GLID
    - gf_malloc
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getInfoLog(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv, u32 type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: wgl_getInfoLog
      Src: /src/gpac/src/jsmods/webgl.c:795,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 796
      start: 793
    functionDepth: 3
    functionLinenumber: 793
    functionLinenumberEnd: 796
    functionName: wgl_getProgramInfoLog
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - wgl_getInfoLog
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getProgramInfoLog(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: wgl_getInfoLog
      Src: /src/gpac/src/jsmods/webgl.c:799,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 800
      start: 797
    functionDepth: 3
    functionLinenumber: 797
    functionLinenumberEnd: 800
    functionName: wgl_getShaderInfoLog
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - wgl_getInfoLog
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getShaderInfoLog(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: wgl_getInfoLog
      Src: /src/gpac/src/jsmods/webgl.c:803,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 804
      start: 801
    functionDepth: 3
    functionLinenumber: 801
    functionLinenumberEnd: 804
    functionName: wgl_getShaderSource
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - wgl_getInfoLog
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getShaderSource(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:811,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:812,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:813,1
    - Dst: glGetTexParameteriv
      Src: /src/gpac/src/jsmods/webgl.c:814,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:815,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 816
      start: 805
    functionDepth: 2
    functionLinenumber: 805
    functionLinenumberEnd: 816
    functionName: wgl_getTexParameter
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - glGetTexParameteriv
    - JS_NewInt32
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getTexParameter(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:823,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:824,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:826,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:827,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/webgl.c:828,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/jsmods/webgl.c:836,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 838
      start: 818
    functionDepth: 2
    functionLinenumber: 818
    functionLinenumberEnd: 838
    functionName: wgl_pixelStorei
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - glPixelStorei
    - js_throw_err
    - JS_GetOpaque
    - WGL_GET_U32
    - WGL_GET_S32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_pixelStorei(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:857,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/webgl.c:858,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/webgl.c:859,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/jsmods/webgl.c:865,1
    - Dst: glGetActiveUniform
      Src: /src/gpac/src/jsmods/webgl.c:867,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/webgl.c:868,1
    - Dst: strcpy
      Src: /src/gpac/src/jsmods/webgl.c:874,1
    - Dst: sprintf
      Src: /src/gpac/src/jsmods/webgl.c:877,1
    - Dst: strcat
      Src: /src/gpac/src/jsmods/webgl.c:878,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/jsmods/webgl.c:880,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/webgl.c:889,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/webgl.c:913,1
    - Dst: glGetUniformfv
      Src: /src/gpac/src/jsmods/webgl.c:926,1
    - Dst: RETURN_SINGLE_OR_ARRAY
      Src: /src/gpac/src/jsmods/webgl.c:927,1
    - Dst: glGetUniformiv
      Src: /src/gpac/src/jsmods/webgl.c:930,1
    - Dst: RETURN_SINGLE_OR_ARRAY
      Src: /src/gpac/src/jsmods/webgl.c:931,1
    - Dst: glGetUniformiv
      Src: /src/gpac/src/jsmods/webgl.c:935,1
    - Dst: RETURN_SINGLE_OR_ARRAY
      Src: /src/gpac/src/jsmods/webgl.c:936,1
    - Dst: glGetUniformiv
      Src: /src/gpac/src/jsmods/webgl.c:939,1
    - Dst: RETURN_SINGLE_OR_ARRAY
      Src: /src/gpac/src/jsmods/webgl.c:940,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/webgl.c:948,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 114
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 949
      start: 841
    functionDepth: 2
    functionLinenumber: 841
    functionLinenumberEnd: 949
    functionName: wgl_getUniform
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - strcat
    - glGetUniformfv
    - glGetUniformiv
    - js_throw_err
    - glGetActiveUniform
    - strcpy
    - js_throw_err_msg
    - sprintf
    - glGetProgramiv
    - strcmp
    - glGetUniformLocation
    - RETURN_SINGLE_OR_ARRAY
    - WGL_GET_GLID
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getUniform(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - __fun
    - ','
    - __arr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 923
      start: 916
    functionDepth: 0
    functionLinenumber: 916
    functionLinenumberEnd: 923
    functionName: RETURN_SINGLE_OR_ARRAY
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RETURN_SINGLE_OR_ARRAY(__fun, __arr)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:959,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:960,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:961,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:962,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:963,1
    - Dst: glGetVertexAttribiv
      Src: /src/gpac/src/jsmods/webgl.c:966,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/webgl.c:968,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/webgl.c:970,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/webgl.c:972,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:975,1
    - Dst: glGetVertexAttribfv
      Src: /src/gpac/src/jsmods/webgl.c:977,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/webgl.c:978,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/webgl.c:980,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/webgl.c:980,1
    - Dst: glGetVertexAttribiv
      Src: /src/gpac/src/jsmods/webgl.c:984,1
    - Dst: glGetVertexAttribiv
      Src: /src/gpac/src/jsmods/webgl.c:989,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:990,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:992,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 37
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 993
      start: 951
    functionDepth: 2
    functionLinenumber: 951
    functionLinenumberEnd: 993
    functionName: wgl_getVertexAttrib
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - JS_DupValue
    - js_throw_err
    - JS_NewFloat64
    - JS_GetOpaque
    - JS_SetPropertyUint32
    - WGL_GET_U32
    - gf_list_count
    - glGetVertexAttribiv
    - JS_NewInt32
    - glGetVertexAttribfv
    - JS_NewArray
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getVertexAttrib(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1000,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1001,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1002,1
    - Dst: glGetVertexAttribPointerv
      Src: /src/gpac/src/jsmods/webgl.c:1003,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/webgl.c:1005,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/webgl.c:1007,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1009
      start: 994
    functionDepth: 2
    functionLinenumber: 994
    functionLinenumberEnd: 1009
    functionName: wgl_getVertexAttribOffset
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - glGetVertexAttribPointerv
    - js_throw_err
    - WGL_GET_U32
    - JS_NewInt64
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getVertexAttribOffset(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1022,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/webgl.c:1023,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/webgl.c:1024,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1025,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1026,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1027,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1028,1
    - Dst: wgl_GetArrayBuffer
      Src: /src/gpac/src/jsmods/webgl.c:1029,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1030,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1038,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1046,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1049,1
    - Dst: glReadPixels
      Src: /src/gpac/src/jsmods/webgl.c:1051,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 35
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1054
      start: 1010
    functionDepth: 2
    functionLinenumber: 1010
    functionLinenumberEnd: 1054
    functionName: wgl_readPixels
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - WGL_GET_U32
    - wgl_GetArrayBuffer
    - WGL_GET_S32
    - glReadPixels
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_readPixels(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/webgl.c:1058,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/webgl.c:1060,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/webgl.c:1061,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - glc
    - name
    argTypes:
    - GF_WebGLContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1064
      start: 1056
    functionDepth: 1
    functionLinenumber: 1056
    functionLinenumberEnd: 1064
    functionName: wgl_locate_named_tx
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: GF_WebGLNamedTexture
    signature: GF_WebGLNamedTexture *wgl_locate_named_tx(GF_WebGLContext *glc, char
      *name)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:1074,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1075,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1076,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/webgl.c:1077,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/webgl.c:1078,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1079,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/webgl.c:1081,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/webgl.c:1084,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/webgl.c:1086,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/webgl.c:1089,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/webgl.c:1092,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/webgl.c:1093,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/webgl.c:1112,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/jsmods/webgl.c:1114,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/webgl.c:1117,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/webgl.c:1120,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/webgl.c:1121,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/webgl.c:1122,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/webgl.c:1124,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/webgl.c:1126,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/jsmods/webgl.c:1128,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/webgl.c:1138,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/webgl.c:1139,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/webgl.c:1140,1
    - Dst: gf_gl_txw_insert_fragment_shader
      Src: /src/gpac/src/jsmods/webgl.c:1144,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/jsmods/webgl.c:1150,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/webgl.c:1161,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/jsmods/webgl.c:1163,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/webgl.c:1167,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/webgl.c:1168,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/webgl.c:1171,1
    - Dst: wgl_locate_named_tx
      Src: /src/gpac/src/jsmods/webgl.c:1176,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/jsmods/webgl.c:1182,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/jsmods/webgl.c:1184,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/jsmods/webgl.c:1191,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/jsmods/webgl.c:1194,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/jsmods/webgl.c:1195,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/webgl.c:1196,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/webgl.c:1201,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/webgl.c:1208,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/webgl.c:1209,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/webgl.c:1212,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/webgl.c:1212,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/webgl.c:1212,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/webgl.c:1214,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/webgl.c:1216,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/jsmods/webgl.c:1219,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/jsmods/webgl.c:1220,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/webgl.c:1224,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/webgl.c:1226,1
    - Dst: glShaderSource
      Src: /src/gpac/src/jsmods/webgl.c:1227,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/webgl.c:1229,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/webgl.c:1230,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/webgl.c:1231,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 131
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1233
      start: 1066
    functionDepth: 2
    functionLinenumber: 1066
    functionLinenumberEnd: 1233
    functionName: wgl_shaderSource
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - gf_list_get
    - gf_gl_txw_insert_fragment_shader
    - js_throw_err
    - JS_GetOpaque
    - GF_LOG
    - js_throw_err_msg
    - strstr
    - gf_list_count
    - strncmp
    - glShaderSource
    - wgl_locate_named_tx
    - gf_dynstrcat
    - WGL_GET_GLID
    - strchr
    - strlen
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_shaderSource(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: jsf_is_packet
      Src: /src/gpac/src/jsmods/webgl.c:1245,1
    - Dst: jsf_get_packet
      Src: /src/gpac/src/jsmods/webgl.c:1246,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1247,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/jsmods/webgl.c:1249,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1257,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - c
    - pck_obj
    - _named_tx
    - force_resetup
    argTypes:
    - JSContext*
    - JSValueConst
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1258
      start: 1237
    functionDepth: 2
    functionLinenumber: 1237
    functionLinenumberEnd: 1258
    functionName: wgl_named_texture_upload
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - jsf_get_packet
    - gf_filter_pck_get_frame_interface
    - jsf_is_packet
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_named_texture_upload(JSContext *c, JSValueConst pck_obj,
      void *_named_tx, Bool force_resetup)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1254
      start: 1253
    functionDepth: 0
    functionLinenumber: 1253
    functionLinenumberEnd: 1254
    functionName: if
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: else
    signature: else if (js_evg_is_texture(c, pck_obj))
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: glTexImage2D
      Src: /src/gpac/src/jsmods/webgl.c:1327,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/jsmods/webgl.c:1346,1
    - Dst: glTexSubImage2D
      Src: /src/gpac/src/jsmods/webgl.c:1350,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 10
    argNames:
    - glc
    - target
    - level
    - internalformat
    - width
    - height
    - border
    - format
    - type
    - pixels
    argTypes:
    - GF_WebGLContext*
    - GLenum
    - GLint
    - GLint
    - GLsizei
    - GLsizei
    - GLint
    - GLenum
    - GLenum
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1352
      start: 1318
    functionDepth: 0
    functionLinenumber: 1318
    functionLinenumberEnd: 1352
    functionName: wgl_tex_image_2d
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - glTexSubImage2D
    - glTexImage2D
    linkageType: ''
    returnType: void
    signature: void wgl_tex_image_2d(GF_WebGLContext *glc, GLenum target, GLint level,
      GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format,
      GLenum type, const u8 *pixels)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:1373,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1374,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1376,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1378,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/webgl.c:1379,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/webgl.c:1380,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/webgl.c:1382,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1384,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1385,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/webgl.c:1391,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/webgl.c:1391,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1392,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1395,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1396,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/webgl.c:1397,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1398,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1399,1
    - Dst: wgl_GetArrayBuffer
      Src: /src/gpac/src/jsmods/webgl.c:1400,1
    - Dst: wgl_tex_image_2d
      Src: /src/gpac/src/jsmods/webgl.c:1402,1
    - Dst: js_evg_is_texture
      Src: /src/gpac/src/jsmods/webgl.c:1407,1
    - Dst: js_evg_get_texture_named
      Src: /src/gpac/src/jsmods/webgl.c:1408,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/webgl.c:1412,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1413,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/webgl.c:1415,1
    - Dst: js_evg_set_named_texture_gl
      Src: /src/gpac/src/jsmods/webgl.c:1419,1
    - Dst: JS_SwitchClassID
      Src: /src/gpac/src/jsmods/webgl.c:1421,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:1422,1
    - Dst: gf_list_add
      Src: /src/gpac/src/jsmods/webgl.c:1423,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/jsmods/webgl.c:1424,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/webgl.c:1426,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/jsmods/webgl.c:1427,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/webgl.c:1429,1
    - Dst: wgl_named_texture_upload
      Src: /src/gpac/src/jsmods/webgl.c:1439,1
    - Dst: js_evg_get_texture_info
      Src: /src/gpac/src/jsmods/webgl.c:1444,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/webgl.c:1470,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/jsmods/webgl.c:1470,1
    - Dst: wgl_tex_image_2d
      Src: /src/gpac/src/jsmods/webgl.c:1474,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1479,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 86
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1480
      start: 1354
    functionDepth: 4
    functionLinenumber: 1354
    functionLinenumberEnd: 1480
    functionName: wgl_texImage2D
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - wgl_named_texture_upload
    - wgl_GetArrayBuffer
    - JS_SwitchClassID
    - js_evg_get_texture_named
    - gf_strdup
    - JS_GetOpaque
    - WGL_GET_U32
    - gf_list_add
    - JS_IsObject
    - JS_IsNull
    - gf_pixel_fmt_name
    - js_throw_err_msg
    - js_evg_get_texture_info
    - gf_list_del_item
    - wgl_tex_image_2d
    - js_throw_err
    - js_evg_set_named_texture_gl
    - JS_FreeValue
    - JS_SetOpaque
    - js_evg_is_texture
    - WGL_GET_S32
    - glDeleteTextures
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_texImage2D(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: glTexSubImage2D
      Src: /src/gpac/src/jsmods/webgl.c:1487,1
    - Dst: glTexSubImage2D
      Src: /src/gpac/src/jsmods/webgl.c:1511,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 10
    argNames:
    - glc
    - target
    - level
    - xoffset
    - yoffset
    - width
    - height
    - format
    - type
    - pixels
    argTypes:
    - GF_WebGLContext*
    - GLenum
    - GLint
    - GLint
    - GLint
    - GLsizei
    - GLsizei
    - GLenum
    - GLenum
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1513
      start: 1482
    functionDepth: 0
    functionLinenumber: 1482
    functionLinenumberEnd: 1513
    functionName: wgl_tex_sub_image_2d
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - glTexSubImage2D
    linkageType: ''
    returnType: void
    signature: void wgl_tex_sub_image_2d(GF_WebGLContext *glc, GLenum target, GLint
      level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format,
      GLenum type, u8 *pixels)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:1532,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1533,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1535,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1537,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/webgl.c:1538,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/webgl.c:1539,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/webgl.c:1540,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/webgl.c:1542,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1544,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1545,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/webgl.c:1549,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1550,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1553,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1554,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1555,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1556,1
    - Dst: wgl_GetArrayBuffer
      Src: /src/gpac/src/jsmods/webgl.c:1557,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1558,1
    - Dst: wgl_tex_sub_image_2d
      Src: /src/gpac/src/jsmods/webgl.c:1560,1
    - Dst: js_evg_get_texture_info
      Src: /src/gpac/src/jsmods/webgl.c:1566,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/webgl.c:1586,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/jsmods/webgl.c:1586,1
    - Dst: wgl_tex_sub_image_2d
      Src: /src/gpac/src/jsmods/webgl.c:1588,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1592,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 52
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1593
      start: 1515
    functionDepth: 4
    functionLinenumber: 1515
    functionLinenumberEnd: 1593
    functionName: wgl_texSubImage2D
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - gf_pixel_fmt_name
    - JS_GetOpaque
    - wgl_tex_sub_image_2d
    - js_throw_err_msg
    - WGL_GET_U32
    - wgl_GetArrayBuffer
    - js_evg_get_texture_info
    - WGL_GET_S32
    - JS_IsObject
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_texSubImage2D(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:1599,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1600,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1601,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/webgl.c:1602,1
    - Dst: glUseProgram
      Src: /src/gpac/src/jsmods/webgl.c:1603,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1606
      start: 1595
    functionDepth: 2
    functionLinenumber: 1595
    functionLinenumberEnd: 1606
    functionName: wgl_useProgram
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - WGL_GET_GLID
    - js_throw_err
    - glUseProgram
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_useProgram(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:1611,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1612,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1613,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1614,1
    - Dst: glActiveTexture
      Src: /src/gpac/src/jsmods/webgl.c:1615,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1618
      start: 1607
    functionDepth: 2
    functionLinenumber: 1607
    functionLinenumberEnd: 1618
    functionName: wgl_activeTexture
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - glActiveTexture
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_activeTexture(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:1623,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1624,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/webgl.c:1626,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/webgl.c:1626,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/webgl.c:1630,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/webgl.c:1631,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1632,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/webgl.c:1635,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1636,1
    - Dst: sprintf
      Src: /src/gpac/src/jsmods/webgl.c:1639,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/webgl.c:1640,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/webgl.c:1642,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/webgl.c:1643,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/webgl.c:1647,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:1648,1
    - Dst: gf_list_add
      Src: /src/gpac/src/jsmods/webgl.c:1649,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/webgl.c:1651,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:1652,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/jsmods/webgl.c:1653,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/webgl.c:1653,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:1656,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/jsmods/webgl.c:1657,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/webgl.c:1658,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/webgl.c:1659,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/webgl.c:1660,1
    - Dst: gf_cicp_parse_color_matrix
      Src: /src/gpac/src/jsmods/webgl.c:1661,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/webgl.c:1662,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/webgl.c:1667,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1668,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:1669,1
    - Dst: glGenTextures
      Src: /src/gpac/src/jsmods/webgl.c:1670,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/webgl.c:1671,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:1672,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/webgl.c:1673,1
    - Dst: gf_list_add
      Src: /src/gpac/src/jsmods/webgl.c:1675,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 49
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1678
      start: 1620
    functionDepth: 2
    functionLinenumber: 1620
    functionLinenumberEnd: 1678
    functionName: wgl_createTexture
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - JS_IsInteger
    - gf_cicp_parse_color_matrix
    - JS_FreeCString
    - JS_ToCString
    - JS_IsString
    - gf_strdup
    - JS_DupValue
    - JS_GetOpaque
    - sprintf
    - JS_ToBool
    - gf_list_add
    - JS_IsObject
    - JS_IsBool
    - JS_NewObjectClass
    - JS_IsNull
    - JS_ToInt32
    - JS_GetPropertyStr
    - js_throw_err
    - JS_SetOpaque
    - glGenTextures
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_createTexture(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:1687,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1688,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1693,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:1694,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:1696,1
    - Dst: glBindTexture
      Src: /src/gpac/src/jsmods/webgl.c:1698,1
    - Dst: glBindTexture
      Src: /src/gpac/src/jsmods/webgl.c:1704,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/jsmods/webgl.c:1709,1
    - Dst: gf_gl_txw_bind
      Src: /src/gpac/src/jsmods/webgl.c:1720,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1721,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1724
      start: 1681
    functionDepth: 4
    functionLinenumber: 1681
    functionLinenumberEnd: 1724
    functionName: wgl_bindTexture
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - gf_gl_txw_bind
    - JS_GetOpaque
    - glBindTexture
    - WGL_GET_U32
    - GL_CHECK_ERR
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_bindTexture(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:1732,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1733,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1734,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/webgl.c:1735,1
    - Dst: WGL_GET_STRING
      Src: /src/gpac/src/jsmods/webgl.c:1736,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/jsmods/webgl.c:1739,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/webgl.c:1741,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/webgl.c:1744,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/webgl.c:1745,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/webgl.c:1751,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/webgl.c:1755,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/webgl.c:1757,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1758,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:1760,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/webgl.c:1763,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:1764,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/webgl.c:1765,1
    - Dst: gf_list_add
      Src: /src/gpac/src/jsmods/webgl.c:1767,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/webgl.c:1768,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1770
      start: 1726
    functionDepth: 2
    functionLinenumber: 1726
    functionLinenumberEnd: 1770
    functionName: wgl_getUniformLocation
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - WGL_GET_STRING
    - gf_list_get
    - JS_NewObjectClass
    - JS_DupValue
    - js_throw_err
    - GF_SAFEALLOC
    - JS_GetOpaque
    - JS_SetOpaque
    - gf_list_count
    - glGetUniformLocation
    - strcmp
    - gf_list_add
    - WGL_GET_GLID
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getUniformLocation(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:1777,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1778,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1780,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:1781,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/webgl.c:1782,1
    - Dst: glBindFramebuffer
      Src: /src/gpac/src/jsmods/webgl.c:1784,1
    - Dst: glBindFramebuffer
      Src: /src/gpac/src/jsmods/webgl.c:1786,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1788
      start: 1772
    functionDepth: 2
    functionLinenumber: 1772
    functionLinenumberEnd: 1788
    functionName: wgl_bindFramebuffer
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - glBindFramebuffer
    - JS_GetOpaque
    - WGL_GET_U32
    - WGL_GET_GLID
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_bindFramebuffer(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/jsmods/webgl.c:1794,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/webgl.c:1799,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/webgl.c:1806,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/webgl.c:1807,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/webgl.c:1808,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/webgl.c:1810,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/webgl.c:1813,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 4
    argNames:
    - filter
    - PID
    - pck
    - is_depth
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1814
      start: 1791
    functionDepth: 1
    functionLinenumber: 1791
    functionLinenumberEnd: 1814
    functionName: webgl_pck_tex_depth_del
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_FreeValue
    - JS_IsUndefined
    - gf_js_lock
    - gf_filter_pck_get_frame_interface
    linkageType: ''
    returnType: void
    signature: void webgl_pck_tex_depth_del(GF_Filter *filter, GF_FilterPid *PID,
      GF_FilterPacket *pck, Bool is_depth)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: webgl_pck_tex_depth_del
      Src: /src/gpac/src/jsmods/webgl.c:1817,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - filter
    - PID
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1818
      start: 1815
    functionDepth: 2
    functionLinenumber: 1815
    functionLinenumberEnd: 1818
    functionName: webgl_pck_tex_del
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - webgl_pck_tex_depth_del
    linkageType: ''
    returnType: void
    signature: void webgl_pck_tex_del(GF_Filter *filter, GF_FilterPid *PID, GF_FilterPacket
      *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: webgl_pck_tex_depth_del
      Src: /src/gpac/src/jsmods/webgl.c:1822,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - filter
    - PID
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1823
      start: 1820
    functionDepth: 2
    functionLinenumber: 1820
    functionLinenumberEnd: 1823
    functionName: webgl_pck_depth_del
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - webgl_pck_tex_depth_del
    linkageType: ''
    returnType: void
    signature: void webgl_pck_depth_del(GF_Filter *filter, GF_FilterPid *PID, GF_FilterPacket
      *pck)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1829,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/webgl.c:1830,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1830,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:1832,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1833,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/webgl.c:1835,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1837,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/jsmods/webgl.c:1847,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/webgl.c:1855,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/webgl.c:1858,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:1859,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/webgl.c:1861,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/webgl.c:1863,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/webgl.c:1864,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 6
    argNames:
    - ctx
    - argc
    - argv
    - for_pid
    - pck_del
    - f_ifce
    argTypes:
    - JSContext*
    - int
    - JSValueConst*
    - GF_FilterPid*
    - gf_fsess_packet_destructor*
    - GF_FilterFrameInterface**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1867
      start: 1825
    functionDepth: 2
    functionLinenumber: 1825
    functionLinenumberEnd: 1867
    functionName: webgl_get_frame_interface
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - gf_filter_pid_get_property
    - js_throw_err
    - JS_IsFunction
    - JS_GetOpaque
    - JS_FreeValue
    - js_throw_err_msg
    - JS_IsUndefined
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue webgl_get_frame_interface(JSContext *ctx, int argc, JSValueConst
      *argv, GF_FilterPid *for_pid, gf_fsess_packet_destructor *pck_del, GF_FilterFrameInterface
      **f_ifce)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/jsmods/webgl.c:1877,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 5
    argNames:
    - ifce
    - plane_idx
    - gl_tex_format
    - gl_tex_id
    - texcoordmatrix
    argTypes:
    - GF_FilterFrameInterface*
    - u32
    - u32*
    - u32*
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1879
      start: 1869
    functionDepth: 1
    functionLinenumber: 1869
    functionLinenumberEnd: 1879
    functionName: webgl_get_texture
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - gf_mx_add_scale
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err webgl_get_texture(GF_FilterFrameInterface *ifce, u32 plane_idx,
      u32 *gl_tex_format, u32 *gl_tex_id, GF_Matrix *texcoordmatrix)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/jsmods/webgl.c:1888,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 5
    argNames:
    - ifce
    - plane_idx
    - gl_tex_format
    - gl_tex_id
    - texcoordmatrix
    argTypes:
    - GF_FilterFrameInterface*
    - u32
    - u32*
    - u32*
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1890
      start: 1880
    functionDepth: 1
    functionLinenumber: 1880
    functionLinenumberEnd: 1890
    functionName: webgl_get_depth
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - gf_mx_add_scale
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err webgl_get_depth(GF_FilterFrameInterface *ifce, u32 plane_idx,
      u32 *gl_tex_format, u32 *gl_tex_id, GF_Matrix *texcoordmatrix)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/webgl.c:1898,1
    - Dst: jsf_set_gl_active
      Src: /src/gpac/src/jsmods/webgl.c:1902,1
    - Dst: glBindFramebuffer
      Src: /src/gpac/src/jsmods/webgl.c:1905,1
    - Dst: glBindFramebuffer
      Src: /src/gpac/src/jsmods/webgl.c:1907,1
    - Dst: glCheckFramebufferStatus
      Src: /src/gpac/src/jsmods/webgl.c:1909,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/webgl.c:1914,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/webgl.c:1923,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/webgl.c:1925,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/webgl.c:1930,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/webgl.c:1932,1
    - Dst: glReadPixels
      Src: /src/gpac/src/jsmods/webgl.c:1938,1
    - Dst: memcpy
      Src: /src/gpac/src/jsmods/webgl.c:1946,1
    - Dst: memcpy
      Src: /src/gpac/src/jsmods/webgl.c:1947,1
    - Dst: memcpy
      Src: /src/gpac/src/jsmods/webgl.c:1948,1
    - Dst: jsf_set_gl_active
      Src: /src/gpac/src/jsmods/webgl.c:1950,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/webgl.c:1956,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 53
    argCount: 4
    argNames:
    - ifce
    - plane_idx
    - outPlane
    - outStride
    argTypes:
    - GF_FilterFrameInterface*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1958
      start: 1892
    functionDepth: 1
    functionLinenumber: 1892
    functionLinenumberEnd: 1958
    functionName: webgl_get_plane
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - jsf_set_gl_active
    - gf_malloc
    - glBindFramebuffer
    - memcpy
    - gf_js_lock
    - glReadPixels
    - glCheckFramebufferStatus
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err webgl_get_plane(GF_FilterFrameInterface *ifce, u32 plane_idx,
      const u8 **outPlane, u32 *outStride)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: glGenTextures
      Src: /src/gpac/src/jsmods/webgl.c:1970,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/webgl.c:1972,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/webgl.c:1973,1
    - Dst: glGetError
      Src: /src/gpac/src/jsmods/webgl.c:1973,1
    - Dst: glBindTexture
      Src: /src/gpac/src/jsmods/webgl.c:1975,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/jsmods/webgl.c:1976,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/jsmods/webgl.c:1977,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/jsmods/webgl.c:1978,1
    - Dst: glGenFramebuffers
      Src: /src/gpac/src/jsmods/webgl.c:1980,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/jsmods/webgl.c:1982,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/webgl.c:1983,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/webgl.c:1984,1
    - Dst: glGetError
      Src: /src/gpac/src/jsmods/webgl.c:1984,1
    - Dst: glBindFramebuffer
      Src: /src/gpac/src/jsmods/webgl.c:1986,1
    - Dst: glFramebufferTexture2D
      Src: /src/gpac/src/jsmods/webgl.c:1987,1
    - Dst: glGenTextures
      Src: /src/gpac/src/jsmods/webgl.c:1991,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/jsmods/webgl.c:1993,1
    - Dst: glDeleteFramebuffers
      Src: /src/gpac/src/jsmods/webgl.c:1994,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/webgl.c:1995,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/webgl.c:1996,1
    - Dst: glGetError
      Src: /src/gpac/src/jsmods/webgl.c:1996,1
    - Dst: glBindTexture
      Src: /src/gpac/src/jsmods/webgl.c:1998,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/jsmods/webgl.c:1999,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/jsmods/webgl.c:2000,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/jsmods/webgl.c:2001,1
    - Dst: defined
      Src: /src/gpac/src/jsmods/webgl.c:2002,1
    - Dst: defined
      Src: /src/gpac/src/jsmods/webgl.c:2002,1
    - Dst: glFramebufferTexture2D
      Src: /src/gpac/src/jsmods/webgl.c:2009,1
    - Dst: glGenRenderbuffers
      Src: /src/gpac/src/jsmods/webgl.c:2012,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/jsmods/webgl.c:2014,1
    - Dst: glDeleteFramebuffers
      Src: /src/gpac/src/jsmods/webgl.c:2015,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/webgl.c:2016,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/webgl.c:2017,1
    - Dst: glGetError
      Src: /src/gpac/src/jsmods/webgl.c:2017,1
    - Dst: glBindRenderbuffer
      Src: /src/gpac/src/jsmods/webgl.c:2020,1
    - Dst: glRenderbufferStorage
      Src: /src/gpac/src/jsmods/webgl.c:2022,1
    - Dst: glRenderbufferStorage
      Src: /src/gpac/src/jsmods/webgl.c:2024,1
    - Dst: glFramebufferRenderbuffer
      Src: /src/gpac/src/jsmods/webgl.c:2026,1
    - Dst: glCheckFramebufferStatus
      Src: /src/gpac/src/jsmods/webgl.c:2029,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/jsmods/webgl.c:2034,1
    - Dst: glDeleteRenderbuffers
      Src: /src/gpac/src/jsmods/webgl.c:2035,1
    - Dst: glDeleteFramebuffers
      Src: /src/gpac/src/jsmods/webgl.c:2036,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/webgl.c:2037,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/webgl.c:2038,1
    - Dst: glBindFramebuffer
      Src: /src/gpac/src/jsmods/webgl.c:2041,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/webgl.c:2045,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 68
    argCount: 4
    argNames:
    - ctx
    - glc
    - width
    - height
    argTypes:
    - JSContext*
    - GF_WebGLContext*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2049
      start: 1961
    functionDepth: 2
    functionLinenumber: 1961
    functionLinenumberEnd: 2049
    functionName: webgl_setup_fbo
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - glDeleteFramebuffers
    - glGenRenderbuffers
    - glCheckFramebufferStatus
    - glBindTexture
    - glTexParameteri
    - glGenFramebuffers
    - defined
    - glFramebufferTexture2D
    - glBindFramebuffer
    - js_throw_err_msg
    - glGetError
    - glBindRenderbuffer
    - glDeleteRenderbuffers
    - glFramebufferRenderbuffer
    - glTexImage2D
    - glRenderbufferStorage
    - glGenTextures
    - glDeleteTextures
    linkageType: ''
    returnType: JSValue
    signature: JSValue webgl_setup_fbo(JSContext *ctx, GF_WebGLContext *glc, u32 width,
      u32 height)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/webgl.c:2061,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:2062,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/webgl.c:2063,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/webgl.c:2064,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:2066,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/webgl.c:2067,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/webgl.c:2068,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/webgl.c:2072,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/webgl.c:2073,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/webgl.c:2077,1
    - Dst: jsf_request_opengl
      Src: /src/gpac/src/jsmods/webgl.c:2080,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/webgl.c:2081,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/webgl.c:2082,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/webgl.c:2083,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/webgl.c:2088,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/jsmods/webgl.c:2094,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/jsmods/webgl.c:2095,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/jsmods/webgl.c:2096,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/jsmods/webgl.c:2097,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/jsmods/webgl.c:2098,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/jsmods/webgl.c:2099,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/jsmods/webgl.c:2100,1
    - Dst: GET_BOOL
      Src: /src/gpac/src/jsmods/webgl.c:2101,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:2104,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/webgl.c:2105,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/webgl.c:2106,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/webgl.c:2107,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/webgl.c:2108,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/webgl.c:2108,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/webgl.c:2110,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/webgl.c:2110,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/webgl.c:2112,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/webgl.c:2114,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/webgl.c:2116,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/webgl.c:2119,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/webgl.c:2122,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/webgl.c:2123,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:2126,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/webgl.c:2127,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/webgl.c:2128,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/webgl.c:2129,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/webgl.c:2130,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/webgl.c:2132,1
    - Dst: webgl_setup_fbo
      Src: /src/gpac/src/jsmods/webgl.c:2136,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/webgl.c:2137,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/webgl.c:2142,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:2143,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/webgl.c:2159,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/webgl.c:2161,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:2162,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:2162,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:2163,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:2163,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:2165,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:2165,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/webgl.c:2166,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:2166,1
    - Dst: gf_list_new
      Src: /src/gpac/src/jsmods/webgl.c:2168,1
    - Dst: gf_list_new
      Src: /src/gpac/src/jsmods/webgl.c:2169,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 97
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2172
      start: 2050
    functionDepth: 3
    functionLinenumber: 2050
    functionLinenumberEnd: 2172
    functionName: webgl_constructor
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - JS_FreeCString
    - JS_ToCString
    - JS_IsString
    - JS_DupValue
    - gf_list_new
    - JS_IsUndefined
    - JS_ToBool
    - GET_BOOL
    - JS_IsObject
    - JS_NewInt32
    - jsf_request_opengl
    - webgl_setup_fbo
    - JS_NewObjectClass
    - js_throw_err_msg
    - JS_ToInt32
    - JS_GetPropertyStr
    - JS_FreeValue
    - JS_SetOpaque
    - WGL_GET_S32
    - strcmp
    - JS_NewObject
    - JS_SetPropertyStr
    linkageType: ''
    returnType: JSValue
    signature: JSValue webgl_constructor(JSContext *ctx, JSValueConst new_target,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _opt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2094
      start: 2089
    functionDepth: 0
    functionLinenumber: 2089
    functionLinenumberEnd: 2094
    functionName: GET_BOOL
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_BOOL(_opt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:2176,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:2177,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:2179,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:2181,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/webgl.c:2183,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/webgl.c:2185,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2186
      start: 2173
    functionDepth: 2
    functionLinenumber: 2173
    functionLinenumberEnd: 2186
    functionName: wgl_texture_name
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - js_throw_err
    - JS_NewString
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_texture_name(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:2190,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - ctx
    - txval
    - tx_id
    argTypes:
    - JSContext*
    - JSValueConst
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2194
      start: 2188
    functionDepth: 1
    functionLinenumber: 2188
    functionLinenumberEnd: 2194
    functionName: wgl_texture_get_id
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    linkageType: ''
    returnType: Bool
    signature: Bool wgl_texture_get_id(JSContext *ctx, JSValueConst txval, u32 *tx_id)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: glGetError
      Src: /src/gpac/src/jsmods/webgl.c:2201,1
    - Dst: jsf_set_gl_active
      Src: /src/gpac/src/jsmods/webgl.c:2202,1
    - Dst: glBindFramebuffer
      Src: /src/gpac/src/jsmods/webgl.c:2205,1
    - Dst: glBindFramebuffer
      Src: /src/gpac/src/jsmods/webgl.c:2207,1
    - Dst: glCheckFramebufferStatus
      Src: /src/gpac/src/jsmods/webgl.c:2209,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/webgl.c:2214,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/webgl.c:2218,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/webgl.c:2220,1
    - Dst: glUseProgram
      Src: /src/gpac/src/jsmods/webgl.c:2225,1
    - Dst: glActiveTexture
      Src: /src/gpac/src/jsmods/webgl.c:2227,1
    - Dst: gf_gl_txw_bind
      Src: /src/gpac/src/jsmods/webgl.c:2230,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:2231,1
    - Dst: glBindTexture
      Src: /src/gpac/src/jsmods/webgl.c:2235,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/jsmods/webgl.c:2240,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/jsmods/webgl.c:2242,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/jsmods/webgl.c:2243,1
    - Dst: glBindFramebuffer
      Src: /src/gpac/src/jsmods/webgl.c:2244,1
    - Dst: glActiveTexture
      Src: /src/gpac/src/jsmods/webgl.c:2246,1
    - Dst: glBindTexture
      Src: /src/gpac/src/jsmods/webgl.c:2247,1
    - Dst: glDisable
      Src: /src/gpac/src/jsmods/webgl.c:2249,1
    - Dst: glGetError
      Src: /src/gpac/src/jsmods/webgl.c:2252,1
    - Dst: jsf_set_gl_active
      Src: /src/gpac/src/jsmods/webgl.c:2254,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 43
    argCount: 3
    argNames:
    - ctx
    - glc
    - activate
    argTypes:
    - JSContext*
    - GF_WebGLContext*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2257
      start: 2196
    functionDepth: 4
    functionLinenumber: 2196
    functionLinenumberEnd: 2257
    functionName: wgl_activate_gl
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - jsf_set_gl_active
    - gf_list_get
    - js_throw_err
    - glBindFramebuffer
    - gf_gl_txw_bind
    - glBindTexture
    - js_throw_err_msg
    - glDisable
    - gf_list_count
    - glBindBuffer
    - glGetError
    - glUseProgram
    - glActiveTexture
    - glCheckFramebufferStatus
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_activate_gl(JSContext *ctx, GF_WebGLContext *glc, Bool
      activate)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:2261,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:2262,1
    - Dst: WGL_GET_BOOL
      Src: /src/gpac/src/jsmods/webgl.c:2263,1
    - Dst: wgl_activate_gl
      Src: /src/gpac/src/jsmods/webgl.c:2264,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2265
      start: 2258
    functionDepth: 5
    functionLinenumber: 2258
    functionLinenumberEnd: 2265
    functionName: wgl_activate
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - WGL_GET_BOOL
    - js_throw_err
    - wgl_activate_gl
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_activate(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:2271,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:2272,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:2273,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:2274,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:2275,1
    - Dst: wgl_activate_gl
      Src: /src/gpac/src/jsmods/webgl.c:2277,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/webgl.c:2278,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/jsmods/webgl.c:2280,1
    - Dst: glDeleteRenderbuffers
      Src: /src/gpac/src/jsmods/webgl.c:2282,1
    - Dst: glDeleteFramebuffers
      Src: /src/gpac/src/jsmods/webgl.c:2284,1
    - Dst: webgl_setup_fbo
      Src: /src/gpac/src/jsmods/webgl.c:2287,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/webgl.c:2288,1
    - Dst: wgl_activate_gl
      Src: /src/gpac/src/jsmods/webgl.c:2290,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2291
      start: 2267
    functionDepth: 5
    functionLinenumber: 2267
    functionLinenumberEnd: 2291
    functionName: wgl_resize
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - glDeleteRenderbuffers
    - webgl_setup_fbo
    - js_throw_err
    - JS_GetOpaque
    - wgl_activate_gl
    - WGL_GET_U32
    - JS_IsUndefined
    - glDeleteFramebuffers
    - glDeleteTextures
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_resize(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:2295,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:2296,1
    - Dst: wgl_named_texture_upload
      Src: /src/gpac/src/jsmods/webgl.c:2297,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2298
      start: 2293
    functionDepth: 3
    functionLinenumber: 2293
    functionLinenumberEnd: 2298
    functionName: wgl_named_tx_upload
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - wgl_named_texture_upload
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_named_tx_upload(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:2301,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:2302,1
    - Dst: gf_gl_txw_reset
      Src: /src/gpac/src/jsmods/webgl.c:2304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2308
      start: 2299
    functionDepth: 2
    functionLinenumber: 2299
    functionLinenumberEnd: 2308
    functionName: wgl_named_tx_reconfigure
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_gl_txw_reset
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_named_tx_reconfigure(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:2328,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:2329,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/webgl.c:2333,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/webgl.c:2337,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - ctx
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2342
      start: 2326
    functionDepth: 2
    functionLinenumber: 2326
    functionLinenumberEnd: 2342
    functionName: wgl_named_tx_getProperty
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_NewInt32
    - js_throw_err
    - JS_NewString
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_named_tx_getProperty(JSContext *ctx, JSValueConst obj,
      int magic)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:2346,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/webgl.c:2347,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/webgl.c:2351,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2355
      start: 2344
    functionDepth: 2
    functionLinenumber: 2344
    functionLinenumberEnd: 2355
    functionName: wgl_named_tx_setProperty
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - js_throw_err
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_named_tx_setProperty(JSContext *ctx, JSValueConst obj,
      JSValueConst value, int magic)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: glGenBuffers
      Src: /src/gpac/src/jsmods/webgl.c:2371,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/jsmods/webgl.c:2374,1
    - Dst: glBufferData
      Src: /src/gpac/src/jsmods/webgl.c:2375,1
    - Dst: glGenBuffers
      Src: /src/gpac/src/jsmods/webgl.c:2378,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/jsmods/webgl.c:2381,1
    - Dst: glBufferData
      Src: /src/gpac/src/jsmods/webgl.c:2382,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - mesh
    argTypes:
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2385
      start: 2368
    functionDepth: 0
    functionLinenumber: 2368
    functionLinenumberEnd: 2385
    functionName: mesh_gl_update_buffers
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - glGenBuffers
    - glBindBuffer
    - glBufferData
    linkageType: ''
    returnType: Bool
    signature: Bool mesh_gl_update_buffers(GF_Mesh *mesh)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/webgl.c:2397,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/webgl.c:2398,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/webgl.c:2399,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/webgl.c:2401,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/webgl.c:2402,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:2404,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:2406,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:2408,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:2409,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:2411,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:2412,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/webgl.c:2413,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/webgl.c:2416,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/jsmods/webgl.c:2418,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/src/jsmods/webgl.c:2419,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/jsmods/webgl.c:2421,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/jsmods/webgl.c:2423,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/jsmods/webgl.c:2425,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/jsmods/webgl.c:2429,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/jsmods/webgl.c:2431,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/src/jsmods/webgl.c:2433,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/jsmods/webgl.c:2434,1
    - Dst: glEnable
      Src: /src/gpac/src/jsmods/webgl.c:2440,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/jsmods/webgl.c:2441,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/jsmods/webgl.c:2443,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/src/jsmods/webgl.c:2445,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/jsmods/webgl.c:2446,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/jsmods/webgl.c:2450,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/src/jsmods/webgl.c:2451,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/jsmods/webgl.c:2452,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/jsmods/webgl.c:2467,1
    - Dst: glDrawElements
      Src: /src/gpac/src/jsmods/webgl.c:2470,1
    - Dst: glDrawElements
      Src: /src/gpac/src/jsmods/webgl.c:2472,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/jsmods/webgl.c:2476,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 66
    argCount: 4
    argNames:
    - ctx
    - mesh
    - argc
    - argv
    argTypes:
    - JSContext*
    - GF_Mesh*
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2481
      start: 2387
    functionDepth: 1
    functionLinenumber: 2387
    functionLinenumberEnd: 2481
    functionName: mesh_gl_draw
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - glDrawElements
    - JS_GetOpaque
    - WGL_GET_U32
    - glVertexAttribPointer
    - glEnableVertexAttribArray
    - GF_JS_EXCEPTION
    - GL_CHECK_ERR
    - glBindBuffer
    - glEnable
    linkageType: ''
    returnType: JSValue
    signature: JSValue mesh_gl_draw(JSContext *ctx, GF_Mesh *mesh, int argc, JSValueConst
      *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/webgl.c:2487,1
    - Dst: INITCLASS
      Src: /src/gpac/src/jsmods/webgl.c:2494,1
    - Dst: INITCLASS
      Src: /src/gpac/src/jsmods/webgl.c:2495,1
    - Dst: INITCLASS
      Src: /src/gpac/src/jsmods/webgl.c:2496,1
    - Dst: INITCLASS
      Src: /src/gpac/src/jsmods/webgl.c:2497,1
    - Dst: INITCLASS
      Src: /src/gpac/src/jsmods/webgl.c:2498,1
    - Dst: INITCLASS
      Src: /src/gpac/src/jsmods/webgl.c:2499,1
    - Dst: INITCLASS
      Src: /src/gpac/src/jsmods/webgl.c:2500,1
    - Dst: INITCLASS
      Src: /src/gpac/src/jsmods/webgl.c:2501,1
    - Dst: INITCLASS
      Src: /src/gpac/src/jsmods/webgl.c:2502,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/webgl.c:2506,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/webgl.c:2507,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/webgl.c:2507,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/webgl.c:2508,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/webgl.c:2508,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/webgl.c:2509,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/webgl.c:2511,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/webgl.c:2512,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/webgl.c:2512,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/webgl.c:2513,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/webgl.c:2516,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/webgl.c:2517,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 2
    argNames:
    - c
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2519
      start: 2483
    functionDepth: 1
    functionLinenumber: 2483
    functionLinenumberEnd: 2519
    functionName: js_webgl_load_module
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_SetPropertyFunctionList
    - JS_NewCFunction2
    - countof
    - JS_SetClassProto
    - INITCLASS
    - JS_SetModuleExport
    - JS_NewObject
    - JS_GetRuntime
    linkageType: ''
    returnType: int
    signature: int js_webgl_load_module(JSContext *c, JSModuleDef *m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2494
      start: 2490
    functionDepth: 0
    functionLinenumber: 2490
    functionLinenumberEnd: 2494
    functionName: INITCLASS
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: INITCLASS(_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewCModule
      Src: /src/gpac/src/jsmods/webgl.c:2524,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/webgl.c:2527,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2528
      start: 2521
    functionDepth: 1
    functionLinenumber: 2521
    functionLinenumberEnd: 2528
    functionName: qjs_module_init_webgl
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached:
    - JS_AddModuleExport
    - JS_NewCModule
    linkageType: ''
    returnType: void
    signature: void qjs_module_init_webgl(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2534
      start: 2532
    functionDepth: 0
    functionLinenumber: 2532
    functionLinenumberEnd: 2534
    functionName: qjs_module_init_webgl
    functionSourceFile: /src/gpac/src/jsmods/webgl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void qjs_module_init_webgl(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _jsval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 64
    functionName: EVG_GET_FLOAT
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EVG_GET_FLOAT(_name, _jsval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 65
    functionName: CLAMPCOLF
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CLAMPCOLF(_name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:323,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/evg.c:325,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/evg.c:326,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/evg.c:327,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/evg.c:331,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/evg.c:332,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/evg.c:334,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:337,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/jsmods/evg.c:339,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:340,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 321
    functionDepth: 2
    functionLinenumber: 321
    functionLinenumberEnd: 341
    functionName: canvas_finalize
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_free
    - gf_evg_surface_delete
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void canvas_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:345,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/evg.c:347,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/evg.c:348,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/evg.c:349,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/evg.c:352,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/evg.c:353,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/evg.c:355,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - rt
    - obj
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 343
    functionDepth: 1
    functionLinenumber: 343
    functionLinenumberEnd: 356
    functionName: canvas_gc_mark
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: void canvas_gc_mark(JSRuntime *rt, JSValueConst obj, JS_MarkFunc *mark_func)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:399,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:400,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:401,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/evg.c:402,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:403,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - cbk
    - src_alpha
    - x
    - y
    argTypes:
    - void*
    - u8
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 394
    functionDepth: 1
    functionLinenumber: 394
    functionLinenumberEnd: 406
    functionName: evg_get_alpha
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewInt32
    - JS_ToInt32
    - JS_Call
    linkageType: ''
    returnType: u8
    signature: u8 evg_get_alpha(void *cbk, u8 src_alpha, s32 x, s32 y)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:420,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:421,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:422,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:423,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:424,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/evg.c:425,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:426,1
    - Dst: gf_pixel_fmt_parse
      Src: /src/gpac/src/jsmods/evg.c:427,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:428,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:429,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:430,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:433,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:437,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/evg.c:438,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:439,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/jsmods/evg.c:441,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:442,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:445,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:446,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:448,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:449,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/evg.c:455,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:458,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/jsmods/evg.c:461,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:463,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:464,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:468,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:469,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/evg.c:493,1
    - Dst: gf_evg_surface_new
      Src: /src/gpac/src/jsmods/evg.c:499,1
    - Dst: gf_evg_surface_attach_to_buffer
      Src: /src/gpac/src/jsmods/evg.c:506,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:511,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:512,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/jsmods/evg.c:513,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:514,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:515,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:520,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/evg.c:521,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:523,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 98
    argCount: 5
    argNames:
    - c
    - new_target
    - argc
    - argv
    - canvas_reconfig
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - GF_JSCanvas*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 408
    functionDepth: 5
    functionLinenumber: 408
    functionLinenumberEnd: 525
    functionName: canvas_constructor_internal
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - gf_pixel_fmt_parse
    - JS_IsInteger
    - JS_FreeCString
    - JS_ToCString
    - JS_IsString
    - JS_IsObject
    - JS_NewObjectClass
    - gf_evg_surface_attach_to_buffer
    - gf_evg_surface_delete
    - JS_ToInt32
    - gf_malloc
    - JS_IsException
    - JS_SetOpaque
    - gf_pixel_get_size_info
    - GF_JS_EXCEPTION
    - gf_evg_surface_new
    - JS_GetArrayBuffer
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_constructor_internal(JSContext *c, JSValueConst new_target,
      int argc, JSValueConst *argv, GF_JSCanvas *canvas_reconfig)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: canvas_constructor_internal
      Src: /src/gpac/src/jsmods/evg.c:529,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 527
    functionDepth: 6
    functionLinenumber: 527
    functionLinenumberEnd: 530
    functionName: canvas_constructor
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - canvas_constructor_internal
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_constructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:534,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:535,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/evg.c:537,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:538,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:539,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:540,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:541,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:542,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:543,1
    - Dst: gf_evg_surface_get_raster_level
      Src: /src/gpac/src/jsmods/evg.c:543,1
    - Dst: gf_pixel_fmt_is_yuv
      Src: /src/gpac/src/jsmods/evg.c:545,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:548,1
    - Dst: gf_pixel_is_wide_depth
      Src: /src/gpac/src/jsmods/evg.c:548,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:550,1
    - Dst: gf_evg_surface_get_mask_mode
      Src: /src/gpac/src/jsmods/evg.c:550,1
    - Dst: gf_evg_surface_use_clipper
      Src: /src/gpac/src/jsmods/evg.c:552,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 30
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 532
    functionDepth: 1
    functionLinenumber: 532
    functionLinenumberEnd: 555
    functionName: canvas_getProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - gf_pixel_fmt_is_yuv
    - JS_GetOpaque
    - gf_evg_surface_get_raster_level
    - JS_NewBool
    - gf_pixel_is_wide_depth
    - gf_evg_surface_use_clipper
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - gf_evg_surface_get_mask_mode
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/jsmods/evg.c:563,1
    - Dst: GET_PROP
      Src: /src/gpac/src/jsmods/evg.c:580,1
    - Dst: GET_PROP
      Src: /src/gpac/src/jsmods/evg.c:581,1
    - Dst: GET_PROP
      Src: /src/gpac/src/jsmods/evg.c:582,1
    - Dst: GET_PROP
      Src: /src/gpac/src/jsmods/evg.c:583,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - c
    - obj
    - rc
    - reset
    argTypes:
    - JSContext*
    - JSValueConst
    - GF_IRect*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 587
    functionName: canvas_get_irect
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - memset
    - GET_PROP
    linkageType: ''
    returnType: Bool
    signature: Bool canvas_get_irect(JSContext *c, JSValueConst obj, GF_IRect *rc,
      Bool reset)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _n
    - ','
    - _f
    - ','
    - _mandat
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 565
    functionDepth: 0
    functionLinenumber: 565
    functionLinenumberEnd: 580
    functionName: GET_PROP
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_PROP( _n, _f, _mandat)
  - BBCount: 50
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:598,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:599,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:602,1
    - Dst: gf_evg_surface_set_center_coords
      Src: /src/gpac/src/jsmods/evg.c:603,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/evg.c:607,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/jsmods/evg.c:608,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:610,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/jsmods/evg.c:612,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:614,1
    - Dst: text_set_path
      Src: /src/gpac/src/jsmods/evg.c:617,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:619,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/evg.c:627,1
    - Dst: gf_evg_surface_set_matrix
      Src: /src/gpac/src/jsmods/evg.c:628,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:630,1
    - Dst: gf_evg_surface_set_matrix
      Src: /src/gpac/src/jsmods/evg.c:631,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/evg.c:636,1
    - Dst: gf_evg_surface_set_matrix
      Src: /src/gpac/src/jsmods/evg.c:637,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:639,1
    - Dst: gf_evg_surface_set_matrix_3d
      Src: /src/gpac/src/jsmods/evg.c:640,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:644,1
    - Dst: gf_evg_surface_set_raster_level
      Src: /src/gpac/src/jsmods/evg.c:645,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/evg.c:649,1
    - Dst: gf_evg_surface_set_clipper
      Src: /src/gpac/src/jsmods/evg.c:650,1
    - Dst: canvas_get_irect
      Src: /src/gpac/src/jsmods/evg.c:653,1
    - Dst: gf_evg_surface_set_clipper
      Src: /src/gpac/src/jsmods/evg.c:654,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:659,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:659,1
    - Dst: gf_evg_surface_set_composite_mode
      Src: /src/gpac/src/jsmods/evg.c:660,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:663,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/evg.c:664,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/evg.c:664,1
    - Dst: gf_evg_surface_set_alpha_callback
      Src: /src/gpac/src/jsmods/evg.c:666,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:668,1
    - Dst: gf_evg_surface_set_alpha_callback
      Src: /src/gpac/src/jsmods/evg.c:669,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:675,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/evg.c:678,1
    - Dst: gf_evg_surface_set_fragment_shader
      Src: /src/gpac/src/jsmods/evg.c:680,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/evg.c:682,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:683,1
    - Dst: gf_evg_surface_set_fragment_shader
      Src: /src/gpac/src/jsmods/evg.c:684,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:686,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:687,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:689,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:690,1
    - Dst: gf_evg_surface_set_fragment_shader
      Src: /src/gpac/src/jsmods/evg.c:694,1
    - Dst: gf_evg_surface_set_fragment_shader
      Src: /src/gpac/src/jsmods/evg.c:698,1
    - Dst: gf_evg_surface_disable_early_depth
      Src: /src/gpac/src/jsmods/evg.c:700,1
    - Dst: gf_evg_surface_set_fragment_shader
      Src: /src/gpac/src/jsmods/evg.c:703,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:707,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/evg.c:710,1
    - Dst: gf_evg_surface_set_vertex_shader
      Src: /src/gpac/src/jsmods/evg.c:712,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/evg.c:714,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:715,1
    - Dst: gf_evg_surface_set_vertex_shader
      Src: /src/gpac/src/jsmods/evg.c:716,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:718,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:719,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:721,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:722,1
    - Dst: gf_evg_surface_set_vertex_shader
      Src: /src/gpac/src/jsmods/evg.c:723,1
    - Dst: gf_evg_surface_set_fragment_shader
      Src: /src/gpac/src/jsmods/evg.c:726,1
    - Dst: gf_evg_surface_set_ccw
      Src: /src/gpac/src/jsmods/evg.c:730,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:730,1
    - Dst: gf_evg_surface_set_backcull
      Src: /src/gpac/src/jsmods/evg.c:733,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:733,1
    - Dst: gf_evg_surface_set_antialias
      Src: /src/gpac/src/jsmods/evg.c:736,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:736,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:743,1
    - Dst: evg_get_array
      Src: /src/gpac/src/jsmods/evg.c:745,1
    - Dst: gf_evg_surface_set_depth_buffer
      Src: /src/gpac/src/jsmods/evg.c:748,1
    - Dst: gf_evg_surface_set_depth_buffer
      Src: /src/gpac/src/jsmods/evg.c:753,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:755,1
    - Dst: gf_evg_surface_set_depth_buffer
      Src: /src/gpac/src/jsmods/evg.c:756,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:763,1
    - Dst: gf_evg_surface_set_min_depth
      Src: /src/gpac/src/jsmods/evg.c:764,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:767,1
    - Dst: gf_evg_surface_set_max_depth
      Src: /src/gpac/src/jsmods/evg.c:768,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:771,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:772,1
    - Dst: gf_evg_set_depth_test
      Src: /src/gpac/src/jsmods/evg.c:773,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:776,1
    - Dst: gf_evg_surface_set_point_size
      Src: /src/gpac/src/jsmods/evg.c:777,1
    - Dst: gf_evg_surface_set_point_smooth
      Src: /src/gpac/src/jsmods/evg.c:780,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:780,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:783,1
    - Dst: gf_evg_surface_set_line_size
      Src: /src/gpac/src/jsmods/evg.c:784,1
    - Dst: gf_evg_surface_set_clip_zero
      Src: /src/gpac/src/jsmods/evg.c:787,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:787,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:790,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:790,1
    - Dst: gf_evg_set_depth_test
      Src: /src/gpac/src/jsmods/evg.c:791,1
    - Dst: gf_evg_surface_write_depth
      Src: /src/gpac/src/jsmods/evg.c:794,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:794,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:797,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:798,1
    - Dst: gf_evg_surface_set_mask_mode
      Src: /src/gpac/src/jsmods/evg.c:799,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:803,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 185
    argCount: 4
    argNames:
    - ctx
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 806
      start: 593
    functionDepth: 3
    functionLinenumber: 593
    functionLinenumberEnd: 806
    functionName: canvas_setProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - canvas_get_irect
    - gf_evg_surface_set_backcull
    - gf_evg_surface_set_alpha_callback
    - gf_evg_surface_disable_early_depth
    - gf_evg_surface_set_fragment_shader
    - gf_evg_surface_set_depth_buffer
    - gf_evg_surface_set_min_depth
    - gf_evg_surface_set_ccw
    - gf_evg_surface_set_clipper
    - evg_get_array
    - JS_DupValue
    - gf_evg_surface_set_point_size
    - gf_evg_surface_set_center_coords
    - gf_evg_surface_set_vertex_shader
    - JS_GetOpaque
    - gf_evg_surface_set_max_depth
    - gf_evg_set_depth_test
    - JS_ToBool
    - gf_evg_surface_set_composite_mode
    - JS_IsObject
    - text_set_path
    - gf_evg_surface_set_raster_level
    - gf_evg_surface_set_line_size
    - JS_IsNull
    - JS_IsFunction
    - js_throw_err_msg
    - gf_evg_surface_set_matrix_3d
    - EVG_GET_FLOAT
    - JS_ToInt32
    - gf_evg_surface_set_point_smooth
    - gf_evg_surface_write_depth
    - gf_evg_surface_set_mask_mode
    - js_throw_err
    - JS_FreeValue
    - gf_evg_surface_set_antialias
    - gf_evg_surface_set_matrix
    - gf_evg_surface_set_clip_zero
    - GF_JS_EXCEPTION
    - gf_evg_surface_set_path
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_setProperty(JSContext *ctx, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:817,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:819,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:822,1
    - Dst: canvas_get_irect
      Src: /src/gpac/src/jsmods/evg.c:825,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:826,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/evg.c:828,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:829,1
    - Dst: gf_color_parse
      Src: /src/gpac/src/jsmods/evg.c:830,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:831,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:838,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:839,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:841,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:842,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/jsmods/evg.c:853,1
    - Dst: gf_evg_surface_clear
      Src: /src/gpac/src/jsmods/evg.c:855,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:857,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 43
    argCount: 5
    argNames:
    - c
    - obj
    - argc
    - argv
    - use_float
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 859
      start: 809
    functionDepth: 3
    functionLinenumber: 809
    functionLinenumberEnd: 859
    functionName: canvas_clear_ex
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - gf_color_parse
    - canvas_get_irect
    - JS_GetOpaque
    - gf_evg_surface_clear
    - GF_COL_ARGB
    - JS_ToInt32
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - JS_IsObject
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_clear_ex(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv, Bool use_float)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: canvas_clear_ex
      Src: /src/gpac/src/jsmods/evg.c:862,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 863
      start: 860
    functionDepth: 4
    functionLinenumber: 860
    functionLinenumberEnd: 863
    functionName: canvas_clear
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - canvas_clear_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_clear(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: canvas_clear_ex
      Src: /src/gpac/src/jsmods/evg.c:866,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 867
      start: 864
    functionDepth: 4
    functionLinenumber: 864
    functionLinenumberEnd: 867
    functionName: canvas_clearf
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - canvas_clear_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_clearf(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:878,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:880,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/jsmods/evg.c:882,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:883,1
    - Dst: get_color_from_args
      Src: /src/gpac/src/jsmods/evg.c:886,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:887,1
    - Dst: gf_evg_yuv_to_rgb_f
      Src: /src/gpac/src/jsmods/evg.c:893,1
    - Dst: gf_gf_evg_rgb_to_yuv_f
      Src: /src/gpac/src/jsmods/evg.c:895,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:898,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/evg.c:900,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:901,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:901,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:902,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:902,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:903,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:903,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:904,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:904,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:905,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:905,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:907,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:908,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:908,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:909,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:909,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:910,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:910,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:911,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:911,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 35
    argCount: 5
    argNames:
    - c
    - obj
    - argc
    - argv
    - to_rgb
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 914
      start: 869
    functionDepth: 1
    functionLinenumber: 869
    functionLinenumberEnd: 914
    functionName: canvas_rgb_yuv
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_evg_yuv_to_rgb_f
    - JS_NewFloat64
    - JS_GetOpaque
    - JS_NewArray
    - JS_SetPropertyUint32
    - get_color_from_args
    - JS_ToBool
    - JS_NewInt32
    - JS_NewObject
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - JS_IsBool
    - gf_gf_evg_rgb_to_yuv_f
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_rgb_yuv(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv, Bool to_rgb)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:921,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:922,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:925,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:931,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:931,1
    - Dst: canvas_constructor_internal
      Src: /src/gpac/src/jsmods/evg.c:933,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/evg.c:936,1
    - Dst: gf_evg_surface_attach_to_buffer
      Src: /src/gpac/src/jsmods/evg.c:941,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:943,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 945
      start: 916
    functionDepth: 6
    functionLinenumber: 916
    functionLinenumberEnd: 945
    functionName: canvas_reassign
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_GetOpaque
    - gf_evg_surface_attach_to_buffer
    - GF_JS_EXCEPTION
    - JS_IsObject
    - canvas_constructor_internal
    - JS_GetArrayBuffer
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_reassign(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: canvas_rgb_yuv
      Src: /src/gpac/src/jsmods/evg.c:949,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 950
      start: 947
    functionDepth: 2
    functionLinenumber: 947
    functionLinenumberEnd: 950
    functionName: canvas_toYUV
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - canvas_rgb_yuv
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_toYUV(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: canvas_rgb_yuv
      Src: /src/gpac/src/jsmods/evg.c:954,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 952
    functionDepth: 2
    functionLinenumber: 952
    functionLinenumberEnd: 955
    functionName: canvas_toRGB
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - canvas_rgb_yuv
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_toRGB(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:960,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:962,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - c
    - v
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 965
      start: 957
    functionDepth: 1
    functionLinenumber: 957
    functionLinenumberEnd: 965
    functionName: get_stencil
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 15
    functionsReached:
    - JS_GetOpaque
    linkageType: ''
    returnType: GF_EVGStencil
    signature: GF_EVGStencil *get_stencil(JSContext *c, JSValue v)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:976,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:977,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/evg.c:980,1
    - Dst: gf_evg_surface_fill
      Src: /src/gpac/src/jsmods/evg.c:981,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:984,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:987,1
    - Dst: get_stencil
      Src: /src/gpac/src/jsmods/evg.c:988,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:989,1
    - Dst: gf_evg_surface_fill
      Src: /src/gpac/src/jsmods/evg.c:990,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:991,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:994,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:995,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/jsmods/evg.c:996,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:999,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:1000,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:1001,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:1005,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:1006,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:1007,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/jsmods/evg.c:1012,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:1014,1
    - Dst: get_stencil
      Src: /src/gpac/src/jsmods/evg.c:1018,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1019,1
    - Dst: get_stencil
      Src: /src/gpac/src/jsmods/evg.c:1021,1
    - Dst: get_stencil
      Src: /src/gpac/src/jsmods/evg.c:1023,1
    - Dst: gf_evg_surface_multi_fill
      Src: /src/gpac/src/jsmods/evg.c:1024,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1025,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 47
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1026
      start: 967
    functionDepth: 8
    functionLinenumber: 967
    functionLinenumberEnd: 1026
    functionName: canvas_fill
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_IsArray
    - JS_IsNumber
    - JS_GetOpaque
    - JS_FreeValue
    - JS_GetPropertyUint32
    - gf_evg_surface_fill
    - JS_IsUndefined
    - gf_evg_surface_multi_fill
    - JS_ToInt32
    - JS_GetPropertyStr
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - JS_IsObject
    - get_stencil
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_fill(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:1044,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1045,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:1047,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1048,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:1050,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1051,1
    - Dst: ffmpeg_pixfmt_from_gpac
      Src: /src/gpac/src/jsmods/evg.c:1053,1
    - Dst: ffmpeg_pixfmt_from_gpac
      Src: /src/gpac/src/jsmods/evg.c:1054,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:1056,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/evg.c:1067,1
    - Dst: canvas_get_irect
      Src: /src/gpac/src/jsmods/evg.c:1067,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/evg.c:1069,1
    - Dst: canvas_get_irect
      Src: /src/gpac/src/jsmods/evg.c:1069,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:1078,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:1080,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/evg.c:1081,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:1082,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:1083,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:1084,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:1085,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:1086,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:1087,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:1088,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:1089,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:1090,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:1091,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:1092,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:1093,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:1095,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:1097,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:1099,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:1100,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:1101,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:1103,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:1104,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:1105,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:1113,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:1119,1
    - Dst: sws_getCachedContext
      Src: /src/gpac/src/jsmods/evg.c:1123,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:1126,1
    - Dst: memset
      Src: /src/gpac/src/jsmods/evg.c:1128,1
    - Dst: memset
      Src: /src/gpac/src/jsmods/evg.c:1129,1
    - Dst: memset
      Src: /src/gpac/src/jsmods/evg.c:1130,1
    - Dst: memset
      Src: /src/gpac/src/jsmods/evg.c:1131,1
    - Dst: gf_pixel_get_bytes_per_pixel
      Src: /src/gpac/src/jsmods/evg.c:1133,1
    - Dst: gf_pixel_fmt_is_yuv
      Src: /src/gpac/src/jsmods/evg.c:1137,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/jsmods/evg.c:1140,1
    - Dst: gf_evg_stencil_get_texture_planes
      Src: /src/gpac/src/jsmods/evg.c:1170,1
    - Dst: gf_pixel_get_bytes_per_pixel
      Src: /src/gpac/src/jsmods/evg.c:1177,1
    - Dst: gf_pixel_fmt_is_yuv
      Src: /src/gpac/src/jsmods/evg.c:1180,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/jsmods/evg.c:1183,1
    - Dst: sws_scale
      Src: /src/gpac/src/jsmods/evg.c:1209,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:1211,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:1215,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 154
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1217
      start: 1028
    functionDepth: 5
    functionLinenumber: 1028
    functionLinenumberEnd: 1217
    functionName: canvas_blit
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - canvas_get_irect
    - sws_getCachedContext
    - memset
    - JS_ToFloat64
    - JS_FreeCString
    - JS_ToCString
    - JS_IsString
    - gf_pixel_fmt_is_yuv
    - JS_GetOpaque
    - JS_IsObject
    - ffmpeg_pixfmt_from_gpac
    - sws_scale
    - JS_IsNull
    - JS_GetPropertyStr
    - js_throw_err
    - gf_evg_stencil_get_texture_planes
    - JS_FreeValue
    - gf_pixel_get_size_info
    - strcmp
    - GF_JS_EXCEPTION
    - gf_pixel_get_bytes_per_pixel
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_blit(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:1224,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1225,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:1227,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1228,1
    - Dst: gf_evg_enable_threading
      Src: /src/gpac/src/jsmods/evg.c:1230,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:1231,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1233
      start: 1220
    functionDepth: 2
    functionLinenumber: 1220
    functionLinenumberEnd: 1233
    functionName: canvas_enable_threading
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - JS_GetOpaque
    - JS_ToInt32
    - gf_evg_enable_threading
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_enable_threading(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:1238,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1239,1
    - Dst: gf_evg_surface_enable_3d
      Src: /src/gpac/src/jsmods/evg.c:1240,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:1241,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:1244,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:1245,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:1246,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:1248,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:1249,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:1250,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1254
      start: 1235
    functionDepth: 3
    functionLinenumber: 1235
    functionLinenumberEnd: 1254
    functionName: canvas_enable_3d
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - js_throw_err
    - JS_GetOpaque
    - JS_FreeValue
    - JS_SetOpaque
    - gf_evg_surface_enable_3d
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_enable_3d(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:1267,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/evg.c:1268,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/evg.c:1270,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/evg.c:1271,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:1271,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:1272,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - udta
    - frag
    argTypes:
    - void*
    - GF_EVGFragmentParam*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1274
      start: 1260
    functionDepth: 1
    functionLinenumber: 1260
    functionLinenumberEnd: 1274
    functionName: evg_frag_shader_fun
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_SetOpaque
    - JS_IsUndefined
    - JS_ToBool
    linkageType: ''
    returnType: Bool
    signature: Bool evg_frag_shader_fun(void *udta, GF_EVGFragmentParam *frag)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:1283,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/evg.c:1284,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/evg.c:1285,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/evg.c:1286,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:1286,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:1287,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - udta
    - vertex
    argTypes:
    - void*
    - GF_EVGVertexParam*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1289
      start: 1276
    functionDepth: 1
    functionLinenumber: 1276
    functionLinenumberEnd: 1289
    functionName: evg_vert_shader_fun
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_SetOpaque
    - JS_IsUndefined
    - JS_ToBool
    linkageType: ''
    returnType: Bool
    signature: Bool evg_vert_shader_fun(void *udta, GF_EVGVertexParam *vertex)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:1296,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1297,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/jsmods/evg.c:1299,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/jsmods/evg.c:1301,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:1303,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:1304,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:1305,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1306,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:1309,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:1310,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:1311,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1312,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:1313,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:1316,1
    - Dst: gf_evg_surface_set_projection
      Src: /src/gpac/src/jsmods/evg.c:1320,1
    - Dst: gf_evg_surface_set_modelview
      Src: /src/gpac/src/jsmods/evg.c:1322,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1323,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 5
    argNames:
    - c
    - obj
    - argc
    - argv
    - is_proj
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1324
      start: 1292
    functionDepth: 2
    functionLinenumber: 1292
    functionLinenumberEnd: 1324
    functionName: canvas_set_matrix_3d
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_IsArray
    - gf_evg_surface_set_modelview
    - JS_GetOpaque
    - JS_FreeValue
    - JS_GetPropertyUint32
    - gf_evg_surface_set_projection
    - js_throw_err_msg
    - gf_mx_init
    - JS_ToInt32
    - JS_GetPropertyStr
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_set_matrix_3d(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv, Bool is_proj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: canvas_set_matrix_3d
      Src: /src/gpac/src/jsmods/evg.c:1327,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1328
      start: 1325
    functionDepth: 3
    functionLinenumber: 1325
    functionLinenumberEnd: 1328
    functionName: canvas_projection
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - canvas_set_matrix_3d
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_projection(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: canvas_set_matrix_3d
      Src: /src/gpac/src/jsmods/evg.c:1331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1332
      start: 1329
    functionDepth: 3
    functionLinenumber: 1329
    functionLinenumberEnd: 1332
    functionName: canvas_modelview
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - canvas_set_matrix_3d
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_modelview(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/evg.c:1339,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:1345,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/evg.c:1346,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/evg.c:1347,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:1348,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - obj
    - size
    argTypes:
    - JSContext*
    - JSValueConst
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1351
      start: 1334
    functionDepth: 1
    functionLinenumber: 1334
    functionLinenumberEnd: 1351
    functionName: evg_get_array
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached:
    - JS_IsUndefined
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_GetArrayBuffer
    linkageType: ''
    returnType: uint8_t
    signature: uint8_t *evg_get_array(JSContext *ctx, JSValueConst obj, u32 *size)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:1359,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1360,1
    - Dst: evg_get_array
      Src: /src/gpac/src/jsmods/evg.c:1362,1
    - Dst: evg_get_array
      Src: /src/gpac/src/jsmods/evg.c:1363,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1364,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:1366,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1367,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:1369,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1370,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1374,1
    - Dst: gf_evg_surface_draw_array
      Src: /src/gpac/src/jsmods/evg.c:1377,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1378,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 25
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1381
      start: 1352
    functionDepth: 4
    functionLinenumber: 1352
    functionLinenumberEnd: 1381
    functionName: canvas_draw_array
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - evg_get_array
    - JS_GetOpaque
    - JS_ToInt32
    - gf_evg_surface_draw_array
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_draw_array(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:1391,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1392,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:1394,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:1397,1
    - Dst: gf_evg_surface_draw_path
      Src: /src/gpac/src/jsmods/evg.c:1399,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:1401,1
    - Dst: text_update_path
      Src: /src/gpac/src/jsmods/evg.c:1404,1
    - Dst: gf_evg_surface_draw_path
      Src: /src/gpac/src/jsmods/evg.c:1405,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:1411,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 4
    argNames:
    - ctx
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1413
      start: 1387
    functionDepth: 4
    functionLinenumber: 1387
    functionLinenumberEnd: 1413
    functionName: canvas_draw_path
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - JS_GetOpaque
    - gf_evg_surface_draw_path
    - EVG_GET_FLOAT
    - GF_JS_EXCEPTION
    - text_update_path
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_draw_path(JSContext *ctx, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:1418,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1419,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:1421,1
    - Dst: gf_evg_surface_clear_depth
      Src: /src/gpac/src/jsmods/evg.c:1423,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1424,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1426
      start: 1414
    functionDepth: 1
    functionLinenumber: 1414
    functionLinenumberEnd: 1426
    functionName: canvas_clear_depth
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - gf_evg_surface_clear_depth
    - EVG_GET_FLOAT
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_clear_depth(JSContext *ctx, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:1431,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1432,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:1434,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:1435,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:1435,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:1436,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:1436,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:1437,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:1437,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:1438,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:1438,1
    - Dst: gf_evg_surface_viewport
      Src: /src/gpac/src/jsmods/evg.c:1444,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:1445,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 4
    argNames:
    - ctx
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1447
      start: 1427
    functionDepth: 2
    functionLinenumber: 1427
    functionLinenumberEnd: 1447
    functionName: canvas_viewport
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - JS_GetOpaque
    - JS_ToInt32
    - gf_evg_surface_viewport
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_viewport(JSContext *ctx, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sqrtf
      Src: /src/gpac/src/jsmods/evg.c:1533,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - v
    argTypes:
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1536
      start: 1531
    functionDepth: 0
    functionLinenumber: 1531
    functionLinenumberEnd: 1536
    functionName: isqrtf
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - sqrtf
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE isqrtf(Float v)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - v
    argTypes:
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1542
      start: 1537
    functionDepth: 0
    functionLinenumber: 1537
    functionLinenumberEnd: 1542
    functionName: signf
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE signf(Float v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floorf
      Src: /src/gpac/src/jsmods/evg.c:1545,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1546
      start: 1543
    functionDepth: 0
    functionLinenumber: 1543
    functionLinenumberEnd: 1546
    functionName: fractf
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - floorf
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE fractf(Float v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: floorf
      Src: /src/gpac/src/jsmods/evg.c:1550,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - Float
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1551
      start: 1547
    functionDepth: 0
    functionLinenumber: 1547
    functionLinenumberEnd: 1551
    functionName: _modf
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - floorf
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE _modf(Float x, Float y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_store_ss
      Src: /src/gpac/src/jsmods/evg.c:1569,1
    - Dst: _mm_min_ss
      Src: /src/gpac/src/jsmods/evg.c:1569,1
    - Dst: _mm_max_ss
      Src: /src/gpac/src/jsmods/evg.c:1569,1
    - Dst: _mm_set_ss
      Src: /src/gpac/src/jsmods/evg.c:1569,1
    - Dst: _mm_set_ss
      Src: /src/gpac/src/jsmods/evg.c:1569,1
    - Dst: _mm_set_ss
      Src: /src/gpac/src/jsmods/evg.c:1569,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - val
    - minval
    - maxval
    argTypes:
    - Float
    - Float
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1571
      start: 1567
    functionDepth: 0
    functionLinenumber: 1567
    functionLinenumberEnd: 1571
    functionName: evg_float_clamp
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - _mm_min_ss
    - _mm_store_ss
    - _mm_max_ss
    - _mm_set_ss
    linkageType: ''
    returnType: Float
    signature: Float evg_float_clamp(Float val, Float minval, Float maxval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _val
    - ','
    - _minval
    - ','
    - _maxval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1576
      start: 1574
    functionDepth: 0
    functionLinenumber: 1574
    functionLinenumberEnd: 1576
    functionName: evg_float_clamp
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: evg_float_clamp(_val, _minval, _maxval)
  - BBCount: 171
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/evg.c:1618,1
    - Dst: gf_assert
      Src: /src/gpac/src/jsmods/evg.c:1636,1
    - Dst: vai_call_lerp
      Src: /src/gpac/src/jsmods/evg.c:1723,1
    - Dst: gf_assert
      Src: /src/gpac/src/jsmods/evg.c:1754,1
    - Dst: ABS
      Src: /src/gpac/src/jsmods/evg.c:1761,1
    - Dst: ABS
      Src: /src/gpac/src/jsmods/evg.c:1762,1
    - Dst: sqrtf
      Src: /src/gpac/src/jsmods/evg.c:1763,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/jsmods/evg.c:1769,1
    - Dst: gf_mx_apply_vec_4x4
      Src: /src/gpac/src/jsmods/evg.c:1779,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/evg.c:1782,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/evg.c:1849,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/jsmods/evg.c:1965,1
    - Dst: BASE_COND
      Src: /src/gpac/src/jsmods/evg.c:2127,1
    - Dst: BASE_COND
      Src: /src/gpac/src/jsmods/evg.c:2130,1
    - Dst: BASE_COND
      Src: /src/gpac/src/jsmods/evg.c:2133,1
    - Dst: gf_evg_stencil_get_pixel_wide
      Src: /src/gpac/src/jsmods/evg.c:2153,1
    - Dst: gf_evg_stencil_get_pixel
      Src: /src/gpac/src/jsmods/evg.c:2155,1
    - Dst: gf_evg_stencil_get_pixel_f
      Src: /src/gpac/src/jsmods/evg.c:2161,1
    - Dst: gf_evg_stencil_get_pixel_f
      Src: /src/gpac/src/jsmods/evg.c:2163,1
    - Dst: gf_evg_stencil_get_pixel_yuv_wide
      Src: /src/gpac/src/jsmods/evg.c:2180,1
    - Dst: gf_evg_stencil_get_pixel_yuv
      Src: /src/gpac/src/jsmods/evg.c:2182,1
    - Dst: gf_evg_stencil_get_pixel_yuv_f
      Src: /src/gpac/src/jsmods/evg.c:2188,1
    - Dst: gf_evg_stencil_get_pixel_yuv_f
      Src: /src/gpac/src/jsmods/evg.c:2190,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/jsmods/evg.c:2205,1
    - Dst: gf_vec_len_p
      Src: /src/gpac/src/jsmods/evg.c:2211,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/jsmods/evg.c:2219,1
    - Dst: gf_vec_len_p
      Src: /src/gpac/src/jsmods/evg.c:2220,1
    - Dst: gf_vec_dot_p
      Src: /src/gpac/src/jsmods/evg.c:2229,1
    - Dst: gf_vec_cross_p
      Src: /src/gpac/src/jsmods/evg.c:2237,1
    - Dst: BASE_FUN2
      Src: /src/gpac/src/jsmods/evg.c:2286,1
    - Dst: BASE_FUN
      Src: /src/gpac/src/jsmods/evg.c:2289,1
    - Dst: BASE_FUN
      Src: /src/gpac/src/jsmods/evg.c:2292,1
    - Dst: BASE_FUN
      Src: /src/gpac/src/jsmods/evg.c:2295,1
    - Dst: BASE_FUN
      Src: /src/gpac/src/jsmods/evg.c:2298,1
    - Dst: BASE_FUN
      Src: /src/gpac/src/jsmods/evg.c:2301,1
    - Dst: BASE_FUN2
      Src: /src/gpac/src/jsmods/evg.c:2304,1
    - Dst: BASE_FUN
      Src: /src/gpac/src/jsmods/evg.c:2307,1
    - Dst: BASE_FUN
      Src: /src/gpac/src/jsmods/evg.c:2310,1
    - Dst: BASE_FUN
      Src: /src/gpac/src/jsmods/evg.c:2313,1
    - Dst: BASE_FUN
      Src: /src/gpac/src/jsmods/evg.c:2316,1
    - Dst: BASE_FUN
      Src: /src/gpac/src/jsmods/evg.c:2319,1
    - Dst: BASE_FUN
      Src: /src/gpac/src/jsmods/evg.c:2322,1
    - Dst: BASE_FUN
      Src: /src/gpac/src/jsmods/evg.c:2325,1
    - Dst: BASE_FUN
      Src: /src/gpac/src/jsmods/evg.c:2328,1
    - Dst: BASE_FUN
      Src: /src/gpac/src/jsmods/evg.c:2331,1
    - Dst: BASE_FUN
      Src: /src/gpac/src/jsmods/evg.c:2334,1
    - Dst: BASE_FUN
      Src: /src/gpac/src/jsmods/evg.c:2337,1
    - Dst: BASE_FUN
      Src: /src/gpac/src/jsmods/evg.c:2340,1
    - Dst: BASE_FUN
      Src: /src/gpac/src/jsmods/evg.c:2343,1
    - Dst: BASE_FUN2
      Src: /src/gpac/src/jsmods/evg.c:2346,1
    - Dst: BASE_FUN2
      Src: /src/gpac/src/jsmods/evg.c:2349,1
    - Dst: BASE_FUN2
      Src: /src/gpac/src/jsmods/evg.c:2352,1
    - Dst: evg_float_clamp
      Src: /src/gpac/src/jsmods/evg.c:2362,1
    - Dst: evg_float_clamp
      Src: /src/gpac/src/jsmods/evg.c:2365,1
    - Dst: evg_float_clamp
      Src: /src/gpac/src/jsmods/evg.c:2368,1
    - Dst: evg_float_clamp
      Src: /src/gpac/src/jsmods/evg.c:2371,1
    - Dst: evg_float_clamp
      Src: /src/gpac/src/jsmods/evg.c:2374,1
    - Dst: gf_gf_evg_rgb_to_yuv_f
      Src: /src/gpac/src/jsmods/evg.c:2383,1
    - Dst: gf_evg_yuv_to_rgb_f
      Src: /src/gpac/src/jsmods/evg.c:2390,1
    - Dst: fprintf
      Src: /src/gpac/src/jsmods/evg.c:2395,1
    - Dst: fprintf
      Src: /src/gpac/src/jsmods/evg.c:2398,1
    - Dst: fprintf
      Src: /src/gpac/src/jsmods/evg.c:2400,1
    - Dst: fprintf
      Src: /src/gpac/src/jsmods/evg.c:2402,1
    - Dst: fprintf
      Src: /src/gpac/src/jsmods/evg.c:2403,1
    - Dst: fprintf
      Src: /src/gpac/src/jsmods/evg.c:2404,1
    - Dst: fprintf
      Src: /src/gpac/src/jsmods/evg.c:2405,1
    - Dst: fprintf
      Src: /src/gpac/src/jsmods/evg.c:2406,1
    CyclomaticComplexity: 173
    EdgeCount: 173
    ICount: 579
    argCount: 5
    argNames:
    - canvas
    - shader
    - frag
    - vert
    - vars
    argTypes:
    - GF_JSCanvas*
    - EVGShader*
    - GF_EVGFragmentParam*
    - GF_EVGVertexParam*
    - ShaderVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2413
      start: 1584
    functionDepth: 4
    functionLinenumber: 1584
    functionLinenumberEnd: 2413
    functionName: evg_shader_ops
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_vec_norm
    - sqrtf
    - fprintf
    - vai_call_lerp
    - gf_assert
    - gf_evg_yuv_to_rgb_f
    - gf_vec_cross_p
    - gf_vec_len_p
    - evg_float_clamp
    - BASE_FUN2
    - gf_evg_stencil_get_pixel
    - gf_evg_stencil_get_pixel_wide
    - GF_LOG
    - BASE_FUN
    - gf_evg_stencil_get_pixel_yuv_wide
    - gf_gf_evg_rgb_to_yuv_f
    - ABS
    - gf_vec_diff
    - gf_mx_apply_vec_4x4
    - gf_vec_dot_p
    - gf_evg_stencil_get_pixel_yuv_f
    - gf_evg_stencil_get_pixel_f
    - gf_evg_stencil_get_pixel_yuv
    - BASE_COND
    linkageType: ''
    returnType: Bool
    signature: Bool evg_shader_ops(GF_JSCanvas *canvas, EVGShader *shader, GF_EVGFragmentParam
      *frag, GF_EVGVertexParam *vert, ShaderVar *vars)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' COMP_X'
    argTypes:
    - left_val_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1925
      start: 1924
    functionDepth: 0
    functionLinenumber: 1924
    functionLinenumberEnd: 1925
    functionName: if
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GET_FIRST_COMP
    signature: GET_FIRST_COMP if (left_val_type & COMP_X)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _opv
    - ','
    - _opv2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2035
      start: 1968
    functionDepth: 0
    functionLinenumber: 1968
    functionLinenumberEnd: 2035
    functionName: BASE_OP
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BASE_OP(_opv, _opv2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _opv
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2118
      start: 2051
    functionDepth: 0
    functionLinenumber: 2051
    functionLinenumberEnd: 2118
    functionName: BASE_COND
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BASE_COND(_opv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __fun
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2263
      start: 2240
    functionDepth: 0
    functionLinenumber: 2240
    functionLinenumberEnd: 2263
    functionName: BASE_FUN2
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BASE_FUN2(__fun)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __fun
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2285
      start: 2264
    functionDepth: 0
    functionLinenumber: 2264
    functionLinenumberEnd: 2285
    functionName: BASE_FUN
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BASE_FUN(__fun)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: evg_shader_ops
      Src: /src/gpac/src/jsmods/evg.c:2420,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - udta
    - frag
    argTypes:
    - void*
    - GF_EVGFragmentParam*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2421
      start: 2417
    functionDepth: 5
    functionLinenumber: 2417
    functionLinenumberEnd: 2421
    functionName: evg_frag_shader_ops
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - evg_shader_ops
    linkageType: ''
    returnType: Bool
    signature: Bool evg_frag_shader_ops(void *udta, GF_EVGFragmentParam *frag)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: vai_call_lerp_init
      Src: /src/gpac/src/jsmods/evg.c:2432,1
    - Dst: gf_list_add
      Src: /src/gpac/src/jsmods/evg.c:2443,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/jsmods/evg.c:2447,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/evg.c:2449,1
    - Dst: memcpy
      Src: /src/gpac/src/jsmods/evg.c:2451,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 4
    argNames:
    - udta
    - frag
    - th_id
    - is_cleanup
    argTypes:
    - void*
    - GF_EVGFragmentParam*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2457
      start: 2423
    functionDepth: 3
    functionLinenumber: 2423
    functionLinenumberEnd: 2457
    functionName: evg_frag_shader_ops_init
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_back
    - vai_call_lerp_init
    - memcpy
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: Bool
    signature: Bool evg_frag_shader_ops_init(void *udta, GF_EVGFragmentParam *frag,
      u32 th_id, Bool is_cleanup)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: evg_shader_ops
      Src: /src/gpac/src/jsmods/evg.c:2463,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - udta
    - vert
    argTypes:
    - void*
    - GF_EVGVertexParam*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2464
      start: 2459
    functionDepth: 5
    functionLinenumber: 2459
    functionLinenumberEnd: 2464
    functionName: evg_vert_shader_ops
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - evg_shader_ops
    linkageType: ''
    returnType: Bool
    signature: Bool evg_vert_shader_ops(void *udta, GF_EVGVertexParam *vert)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/evg.c:2471,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/evg.c:2474,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/evg.c:2477,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/evg.c:2480,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/evg.c:2483,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:2487,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/evg.c:2491,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:2504,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 2
    argNames:
    - rt
    - shader
    argTypes:
    - JSRuntime*
    - EVGShader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2512
      start: 2466
    functionDepth: 1
    functionLinenumber: 2466
    functionLinenumberEnd: 2512
    functionName: shader_reset
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void shader_reset(JSRuntime *rt, EVGShader *shader)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/evg.c:2516,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/jsmods/evg.c:2517,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:2518,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - shader
    argTypes:
    - EVGShader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2520
      start: 2514
    functionDepth: 3
    functionLinenumber: 2514
    functionLinenumberEnd: 2520
    functionName: shader_reset_vars_stack
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_pop_back
    linkageType: ''
    returnType: void
    signature: void shader_reset_vars_stack(EVGShader *shader)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:2523,1
    - Dst: shader_reset
      Src: /src/gpac/src/jsmods/evg.c:2525,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:2526,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:2527,1
    - Dst: shader_reset_vars_stack
      Src: /src/gpac/src/jsmods/evg.c:2528,1
    - Dst: gf_list_del
      Src: /src/gpac/src/jsmods/evg.c:2529,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:2530,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2531
      start: 2521
    functionDepth: 4
    functionLinenumber: 2521
    functionLinenumberEnd: 2531
    functionName: shader_finalize
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - shader_reset
    - JS_GetOpaque
    - gf_list_del
    - shader_reset_vars_stack
    linkageType: ''
    returnType: void
    signature: void shader_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:2536,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/evg.c:2540,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/evg.c:2543,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/evg.c:2546,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/evg.c:2549,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/evg.c:2552,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/evg.c:2555,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 3
    argNames:
    - rt
    - obj
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2558
      start: 2533
    functionDepth: 1
    functionLinenumber: 2533
    functionLinenumberEnd: 2558
    functionName: shader_gc_mark
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: void shader_gc_mark(JSRuntime *rt, JSValueConst obj, JS_MarkFunc *mark_func)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2570,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2570,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2571,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2572,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2572,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2573,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2574,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2575,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2576,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2577,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2578,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2581,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2582,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2588,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 35
    argCount: 2
    argNames:
    - shader
    - val_name
    argTypes:
    - EVGShader*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2593
      start: 2566
    functionDepth: 0
    functionLinenumber: 2566
    functionLinenumberEnd: 2593
    functionName: get_builtin_var_name
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: u32
    signature: u32 get_builtin_var_name(EVGShader *shader, const char *val_name)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2596,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2596,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2596,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2597,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2597,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2597,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2598,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2598,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2599,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2599,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2600,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2600,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2601,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2601,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2601,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2602,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2602,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2603,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2603,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 18
    argCount: 1
    argNames:
    - comp
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2605
      start: 2594
    functionDepth: 0
    functionLinenumber: 2594
    functionLinenumberEnd: 2605
    functionName: get_value_type
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: u8
    signature: u8 get_value_type(const char *comp)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/evg.c:2614,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:2614,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:2615,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2618,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:2621,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:2621,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:2624,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:2627,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:2627,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:2631,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:2632,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 31
    argCount: 4
    argNames:
    - ctx
    - shader
    - argc
    - argv
    argTypes:
    - JSContext*
    - EVGShader*
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2638
      start: 2608
    functionDepth: 2
    functionLinenumber: 2608
    functionLinenumberEnd: 2638
    functionName: shader_push_builtin
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - JS_GetOpaque
    - js_throw_err_msg
    - JS_ToBool
    - strcmp
    - JS_ToInt32
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue shader_push_builtin(JSContext *ctx, EVGShader *shader, int
      argc, JSValueConst *argv)
  - BBCount: 110
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:2653,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:2654,1
    - Dst: shader_push_builtin
      Src: /src/gpac/src/jsmods/evg.c:2658,1
    - Dst: shader_reset
      Src: /src/gpac/src/jsmods/evg.c:2663,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/evg.c:2663,1
    - Dst: gf_realloc
      Src: /src/gpac/src/jsmods/evg.c:2669,1
    - Dst: memset
      Src: /src/gpac/src/jsmods/evg.c:2677,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:2681,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:2682,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:2685,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:2687,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:2691,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:2694,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2700,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:2702,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:2703,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:2706,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2712,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:2715,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2718,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:2721,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:2724,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2727,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2732,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:2735,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/evg.c:2737,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:2738,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:2741,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/evg.c:2744,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:2745,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:2746,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:2748,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2752,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:2755,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2758,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:2760,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2764,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:2766,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2770,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:2772,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/evg.c:2777,1
    - Dst: get_builtin_var_name
      Src: /src/gpac/src/jsmods/evg.c:2779,1
    - Dst: gf_realloc
      Src: /src/gpac/src/jsmods/evg.c:2783,1
    - Dst: shader_reset_vars_stack
      Src: /src/gpac/src/jsmods/evg.c:2784,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/evg.c:2786,1
    - Dst: get_value_type
      Src: /src/gpac/src/jsmods/evg.c:2791,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:2794,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:2797,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:2800,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2802,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2806,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2810,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2814,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2818,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2822,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2826,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2828,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2830,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2832,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2834,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2836,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2838,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2838,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:2839,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2840,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:2844,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:2846,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2850,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2852,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2854,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2857,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2860,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2863,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2866,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2868,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2870,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2872,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2874,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2876,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2879,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2881,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2883,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2885,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2887,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2889,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2891,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2893,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2895,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2897,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2899,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2901,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2903,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2905,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2908,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2911,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:2914,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:2918,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:2920,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:2922,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/evg.c:2925,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:2926,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:2929,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/evg.c:2932,1
    - Dst: get_builtin_var_name
      Src: /src/gpac/src/jsmods/evg.c:2934,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/evg.c:2936,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:2941,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:2942,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:2944,1
    - Dst: get_value_type
      Src: /src/gpac/src/jsmods/evg.c:2948,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:2950,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/jsmods/evg.c:2952,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:2954,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:2955,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:2955,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:2956,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:2960,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:2961,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:2963,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:2966,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:2967,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:2968,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:2969,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:2973,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:2977,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:2981,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:2985,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:2986,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/jsmods/evg.c:2989,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:2990,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/jsmods/evg.c:2993,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/jsmods/evg.c:2994,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:2995,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:2999,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:3009,1
    - Dst: get_builtin_var_name
      Src: /src/gpac/src/jsmods/evg.c:3011,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:3016,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:3019,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:3020,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:3022,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:3031,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:3032,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:3037,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:3038,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:3047,1
    - Dst: gf_realloc
      Src: /src/gpac/src/jsmods/evg.c:3052,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:3056,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:3065,1
    CyclomaticComplexity: 121
    EdgeCount: 121
    ICount: 445
    argCount: 4
    argNames:
    - ctx
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3066
      start: 2641
    functionDepth: 4
    functionLinenumber: 2641
    functionLinenumberEnd: 3066
    functionName: shader_push
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - get_builtin_var_name
    - JS_IsNumber
    - JS_IsInteger
    - memset
    - JS_ToFloat64
    - strchr
    - JS_FreeCString
    - gf_realloc
    - JS_ToCString
    - JS_DupValue
    - JS_IsString
    - gf_strdup
    - shader_reset
    - JS_GetOpaque
    - JS_ToBool
    - JS_NewInt32
    - JS_IsObject
    - JS_GetRuntime
    - JS_IsBool
    - JS_GetPropertyUint32
    - js_throw_err_msg
    - EVG_GET_FLOAT
    - shader_push_builtin
    - JS_ToInt32
    - JS_GetPropertyStr
    - shader_reset_vars_stack
    - JS_IsArray
    - JS_FreeValue
    - get_value_type
    - strcmp
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue shader_push(JSContext *ctx, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3071,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3072,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3073,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:3079,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/evg.c:3080,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:3080,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/jsmods/evg.c:3081,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:3083,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/jsmods/evg.c:3085,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/jsmods/evg.c:3086,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:3088,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3088,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:3091,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/jsmods/evg.c:3094,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:3096,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:3097,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3097,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:3098,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:3102,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:3103,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:3105,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:3108,1
    - Dst: evg_get_array
      Src: /src/gpac/src/jsmods/evg.c:3112,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3114,1
    - Dst: GET_COMP
      Src: /src/gpac/src/jsmods/evg.c:3131,1
    - Dst: GET_COMP
      Src: /src/gpac/src/jsmods/evg.c:3132,1
    - Dst: GET_COMP
      Src: /src/gpac/src/jsmods/evg.c:3133,1
    - Dst: GET_COMP
      Src: /src/gpac/src/jsmods/evg.c:3135,1
    - Dst: GET_COMP
      Src: /src/gpac/src/jsmods/evg.c:3136,1
    - Dst: GET_COMP
      Src: /src/gpac/src/jsmods/evg.c:3137,1
    - Dst: GET_COMP
      Src: /src/gpac/src/jsmods/evg.c:3139,1
    - Dst: GET_COMP
      Src: /src/gpac/src/jsmods/evg.c:3140,1
    - Dst: GET_COMP
      Src: /src/gpac/src/jsmods/evg.c:3142,1
    - Dst: GET_COMP
      Src: /src/gpac/src/jsmods/evg.c:3143,1
    - Dst: GET_COMP
      Src: /src/gpac/src/jsmods/evg.c:3144,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:3148,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 70
    argCount: 4
    argNames:
    - ctx
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3152
      start: 3068
    functionDepth: 2
    functionLinenumber: 3068
    functionLinenumberEnd: 3152
    functionName: shader_update
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - evg_get_array
    - JS_IsArray
    - JS_IsNumber
    - GET_COMP
    - JS_GetOpaque
    - JS_FreeValue
    - JS_GetPropertyUint32
    - js_throw_err_msg
    - JS_IsUndefined
    - JS_ToBool
    - JS_IsInteger
    - EVG_GET_FLOAT
    - JS_ToInt32
    - JS_GetPropertyStr
    - GF_JS_EXCEPTION
    - JS_IsObject
    - JS_IsBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue shader_update(JSContext *ctx, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _name
    - ','
    - _idx
    - ','
    - _mask
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3131
      start: 3126
    functionDepth: 0
    functionLinenumber: 3126
    functionLinenumberEnd: 3131
    functionName: GET_COMP
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_COMP(_name, _idx, _mask)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_stencil_get_pixel_yuv
      Src: /src/gpac/src/jsmods/evg.c:3167,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/jsmods/evg.c:3171,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/jsmods/evg.c:3172,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/jsmods/evg.c:3173,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/jsmods/evg.c:3174,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/jsmods/evg.c:3175,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - udta
    - frag
    argTypes:
    - void*
    - GF_EVGFragmentParam*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3181
      start: 3162
    functionDepth: 3
    functionLinenumber: 3162
    functionLinenumberEnd: 3181
    functionName: rvideo_shader
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_COL_A
    - GF_COL_ARGB
    - GF_COL_R
    - gf_evg_stencil_get_pixel_yuv
    linkageType: ''
    returnType: Bool
    signature: Bool rvideo_shader(void *udta, GF_EVGFragmentParam *frag)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 4
    argNames:
    - udta
    - frag
    - th_id
    - is_cleanup
    argTypes:
    - void*
    - GF_EVGFragmentParam*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3193
      start: 3182
    functionDepth: 0
    functionLinenumber: 3182
    functionLinenumberEnd: 3193
    functionName: builtin_shader_check
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool builtin_shader_check(void *udta, GF_EVGFragmentParam *frag, u32
      th_id, Bool is_cleanup)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/evg.c:3198,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/evg.c:3199,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/evg.c:3203,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:3204,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 2
    argNames:
    - sname
    - e
    argTypes:
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3214
      start: 3195
    functionDepth: 1
    functionLinenumber: 3195
    functionLinenumberEnd: 3214
    functionName: load_builtin_shader
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - strcmp
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: EVGShader
    signature: EVGShader *load_builtin_shader(const char *sname, GF_Err *e)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3222,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3223,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3224,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/evg.c:3227,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:3229,1
    - Dst: load_builtin_shader
      Src: /src/gpac/src/jsmods/evg.c:3230,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:3232,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/jsmods/evg.c:3232,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:3233,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:3236,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:3239,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3240,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:3245,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3246,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3249,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/evg.c:3250,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:3252,1
    - Dst: gf_list_new
      Src: /src/gpac/src/jsmods/evg.c:3255,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:3257,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3258,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 4
    argNames:
    - ctx
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3260
      start: 3217
    functionDepth: 2
    functionLinenumber: 3217
    functionLinenumberEnd: 3260
    functionName: canvas_new_shader
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - JS_NewObjectClass
    - gf_list_new
    - js_throw_err
    - GF_SAFEALLOC
    - JS_GetOpaque
    - JS_SetOpaque
    - js_throw_err_msg
    - load_builtin_shader
    - JS_ToInt32
    - gf_error_to_string
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue canvas_new_shader(JSContext *ctx, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3337,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3338,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:3340,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:3341,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:3342,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3345
      start: 3335
    functionDepth: 1
    functionLinenumber: 3335
    functionLinenumberEnd: 3345
    functionName: fragment_getProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    linkageType: ''
    returnType: JSValue
    signature: JSValue fragment_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3351,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3352,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:3355,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:3360,1
    - Dst: CLAMPCOLF
      Src: /src/gpac/src/jsmods/evg.c:3361,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:3367,1
    - Dst: CLAMPCOLF
      Src: /src/gpac/src/jsmods/evg.c:3368,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:3374,1
    - Dst: CLAMPCOLF
      Src: /src/gpac/src/jsmods/evg.c:3375,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:3379,1
    - Dst: CLAMPCOLF
      Src: /src/gpac/src/jsmods/evg.c:3380,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3387,1
    - Dst: get_color_from_args
      Src: /src/gpac/src/jsmods/evg.c:3397,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3398,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3409,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3416,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 66
    argCount: 4
    argNames:
    - ctx
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3421
      start: 3346
    functionDepth: 1
    functionLinenumber: 3346
    functionLinenumberEnd: 3421
    functionName: fragment_setProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - get_color_from_args
    - EVG_GET_FLOAT
    - CLAMPCOLF
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue fragment_setProperty(JSContext *ctx, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3454,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3455,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:3458,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:3459,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:3459,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:3460,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:3460,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:3461,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:3461,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:3462,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:3462,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3466
      start: 3451
    functionDepth: 1
    functionLinenumber: 3451
    functionLinenumberEnd: 3466
    functionName: vertex_getProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - JS_GetOpaque
    - JS_NewObject
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    linkageType: ''
    returnType: JSValue
    signature: JSValue vertex_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3471,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3472,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:3475,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:3476,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3477,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:3478,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:3479,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3480,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:3481,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:3482,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3483,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:3484,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:3485,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3486,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 4
    argNames:
    - ctx
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3493
      start: 3467
    functionDepth: 1
    functionLinenumber: 3467
    functionLinenumberEnd: 3493
    functionName: vertex_setProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_GetOpaque
    - EVG_GET_FLOAT
    - JS_GetPropertyStr
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue vertex_setProperty(JSContext *ctx, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 45
    argCount: 2
    argNames:
    - vai
    - frag
    argTypes:
    - EVG_VAI*
    - GF_EVGFragmentParam*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3554
      start: 3501
    functionDepth: 0
    functionLinenumber: 3501
    functionLinenumberEnd: 3554
    functionName: vai_call_lerp_init
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool vai_call_lerp_init(EVG_VAI *vai, GF_EVGFragmentParam *frag)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: ABS
      Src: /src/gpac/src/jsmods/evg.c:3585,1
    - Dst: ABS
      Src: /src/gpac/src/jsmods/evg.c:3586,1
    - Dst: sqrtf
      Src: /src/gpac/src/jsmods/evg.c:3587,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/jsmods/evg.c:3593,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 3
    argNames:
    - vai
    - frag
    - values
    argTypes:
    - EVG_VAI*
    - GF_EVGFragmentParam*
    - Float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3597
      start: 3556
    functionDepth: 4
    functionLinenumber: 3556
    functionLinenumberEnd: 3597
    functionName: vai_call_lerp
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached:
    - sqrtf
    - ABS
    - gf_vec_norm
    linkageType: ''
    returnType: Bool
    signature: Bool vai_call_lerp(EVG_VAI *vai, GF_EVGFragmentParam *frag, Float *values)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3602,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3603,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3604,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3605,1
    - Dst: vai_call_lerp
      Src: /src/gpac/src/jsmods/evg.c:3607,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3608,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:3609,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3610
      start: 3600
    functionDepth: 5
    functionLinenumber: 3600
    functionLinenumberEnd: 3610
    functionName: vai_lerp
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - vai_call_lerp
    - GF_JS_EXCEPTION
    - JS_DupValue
    linkageType: ''
    returnType: JSValue
    signature: JSValue vai_lerp(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3615,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3616,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:3619,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3623
      start: 3613
    functionDepth: 1
    functionLinenumber: 3613
    functionLinenumberEnd: 3623
    functionName: vai_setProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue vai_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:3634,1
    - Dst: evg_get_array
      Src: /src/gpac/src/jsmods/evg.c:3637,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3638,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:3639,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3639,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:3641,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3643,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3645,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:3648,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3648,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:3651,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3651,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/evg.c:3654,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:3656,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:3661,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:3667,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3668,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:3669,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:3669,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:3677,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3678,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3680
      start: 3625
    functionDepth: 2
    functionLinenumber: 3625
    functionLinenumberEnd: 3680
    functionName: vai_constructor
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - evg_get_array
    - JS_NewObjectClass
    - JS_DupValue
    - js_throw_err
    - GF_SAFEALLOC
    - JS_SetOpaque
    - js_throw_err_msg
    - JS_ToInt32
    - JS_NewInt32
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    linkageType: ''
    returnType: JSValue
    signature: JSValue vai_constructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3683,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/evg.c:3685,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/evg.c:3687,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:3689,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3690
      start: 3681
    functionDepth: 1
    functionLinenumber: 3681
    functionLinenumberEnd: 3690
    functionName: vai_finalize
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_free
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void vai_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3694,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/evg.c:3696,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/evg.c:3698,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - rt
    - obj
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3700
      start: 3692
    functionDepth: 1
    functionLinenumber: 3692
    functionLinenumberEnd: 3700
    functionName: vai_gc_mark
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: void vai_gc_mark(JSRuntime *rt, JSValueConst obj, JS_MarkFunc *mark_func)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:3724,1
    - Dst: evg_get_array
      Src: /src/gpac/src/jsmods/evg.c:3726,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3727,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:3728,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3728,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:3730,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3732,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3734,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:3737,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3737,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/evg.c:3740,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:3742,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:3746,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:3753,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3754,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 37
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3756
      start: 3715
    functionDepth: 2
    functionLinenumber: 3715
    functionLinenumberEnd: 3756
    functionName: va_constructor
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - evg_get_array
    - JS_NewObjectClass
    - JS_DupValue
    - js_throw_err
    - GF_SAFEALLOC
    - JS_SetOpaque
    - js_throw_err_msg
    - JS_ToInt32
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue va_constructor(JSContext *c, JSValueConst new_target, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3760,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3761,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:3764,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3768
      start: 3758
    functionDepth: 1
    functionLinenumber: 3758
    functionLinenumberEnd: 3768
    functionName: va_setProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue va_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3771,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/evg.c:3773,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:3774,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3775
      start: 3769
    functionDepth: 1
    functionLinenumber: 3769
    functionLinenumberEnd: 3775
    functionName: va_finalize
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_free
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void va_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3782,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/evg.c:3784,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - rt
    - obj
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3785
      start: 3777
    functionDepth: 1
    functionLinenumber: 3777
    functionLinenumberEnd: 3785
    functionName: va_gc_mark
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: void va_gc_mark(JSRuntime *rt, JSValueConst obj, JS_MarkFunc *mark_func)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3801,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3802,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:3804,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3807
      start: 3799
    functionDepth: 1
    functionLinenumber: 3799
    functionLinenumberEnd: 3807
    functionName: vaires_getProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    linkageType: ''
    returnType: JSValue
    signature: JSValue vaires_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3830,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:3832,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3833
      start: 3828
    functionDepth: 1
    functionLinenumber: 3828
    functionLinenumberEnd: 3833
    functionName: mx2d_finalize
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_free
    linkageType: ''
    returnType: void
    signature: void mx2d_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3854,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3855,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:3857,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:3857,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/evg.c:3860,1
    - Dst: gf_mx2d_is_identity
      Src: /src/gpac/src/jsmods/evg.c:3860,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3864
      start: 3852
    functionDepth: 1
    functionLinenumber: 3852
    functionLinenumberEnd: 3864
    functionName: mx2d_getProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - JS_GetOpaque
    - gf_mx2d_is_identity
    - JS_NewBool
    - GF_JS_EXCEPTION
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx2d_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3867,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3868,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:3871,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3872,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:3873,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:3877,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/jsmods/evg.c:3878,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3882
      start: 3865
    functionDepth: 1
    functionLinenumber: 3865
    functionLinenumberEnd: 3882
    functionName: mx2d_setProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_ToBool
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - gf_mx2d_init
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx2d_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3886,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3887,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3888,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3889,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:3890,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/jsmods/evg.c:3891,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/jsmods/evg.c:3893,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:3894,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3895
      start: 3884
    functionDepth: 2
    functionLinenumber: 3884
    functionLinenumberEnd: 3895
    functionName: mx2d_multiply
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_add_matrix
    - JS_DupValue
    - JS_GetOpaque
    - JS_ToBool
    - GF_JS_EXCEPTION
    - gf_mx2d_pre_multiply
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx2d_multiply(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3900,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3901,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:3903,1
    - Dst: GETD
      Src: /src/gpac/src/jsmods/evg.c:3911,1
    - Dst: GETD
      Src: /src/gpac/src/jsmods/evg.c:3912,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:3916,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3916,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:3917,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3917,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3919,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/jsmods/evg.c:3921,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3921,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3921,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:3922,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3923
      start: 3897
    functionDepth: 3
    functionLinenumber: 3897
    functionLinenumberEnd: 3923
    functionName: mx2d_translate
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_mx2d_add_translation
    - JS_DupValue
    - JS_GetOpaque
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - JS_IsObject
    - GETD
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx2d_translate(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _arg
    - ','
    - _name
    - ','
    - _res
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3911
      start: 3905
    functionDepth: 0
    functionLinenumber: 3905
    functionLinenumberEnd: 3911
    functionName: GETD
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GETD(_arg, _name, _res)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3927,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3928,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:3929,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3929,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:3930,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3930,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:3931,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3931,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/jsmods/evg.c:3932,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3932,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3932,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3932,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:3933,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3934
      start: 3924
    functionDepth: 4
    functionLinenumber: 3924
    functionLinenumberEnd: 3934
    functionName: mx2d_rotate
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_DupValue
    - JS_GetOpaque
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - gf_mx2d_add_rotation
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx2d_rotate(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3938,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3939,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:3940,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3940,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:3941,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3941,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/jsmods/evg.c:3943,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3943,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3943,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:3944,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:3947,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3947,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:3948,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3948,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:3949,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3949,1
    - Dst: gf_mx2d_add_scale_at
      Src: /src/gpac/src/jsmods/evg.c:3950,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3950,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3950,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3950,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3950,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3950,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:3951,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3953,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 22
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3954
      start: 3935
    functionDepth: 5
    functionLinenumber: 3935
    functionLinenumberEnd: 3954
    functionName: mx2d_scale
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_DupValue
    - JS_GetOpaque
    - gf_mx2d_add_scale_at
    - gf_mx2d_add_scale
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx2d_scale(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3959,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3960,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:3961,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3961,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:3962,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3962,1
    - Dst: gf_mx2d_add_skew
      Src: /src/gpac/src/jsmods/evg.c:3963,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3963,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3963,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:3964,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3965
      start: 3956
    functionDepth: 3
    functionLinenumber: 3956
    functionLinenumberEnd: 3965
    functionName: mx2d_skew
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_DupValue
    - JS_GetOpaque
    - gf_mx2d_add_skew
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx2d_skew(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3969,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3970,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:3971,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3971,1
    - Dst: gf_mx2d_add_skew_x
      Src: /src/gpac/src/jsmods/evg.c:3972,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3972,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:3973,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3974
      start: 3966
    functionDepth: 3
    functionLinenumber: 3966
    functionLinenumberEnd: 3974
    functionName: mx2d_skew_x
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_DupValue
    - JS_GetOpaque
    - JS_ToFloat64
    - gf_mx2d_add_skew_x
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx2d_skew_x(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3978,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3979,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:3980,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3980,1
    - Dst: gf_mx2d_add_skew_y
      Src: /src/gpac/src/jsmods/evg.c:3981,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3981,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:3982,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3983
      start: 3975
    functionDepth: 3
    functionLinenumber: 3975
    functionLinenumberEnd: 3983
    functionName: mx2d_skew_y
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_DupValue
    - JS_GetOpaque
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - gf_mx2d_add_skew_y
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx2d_skew_y(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:3992,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:3993,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3993,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:3994,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:3995,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:3996,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:3997,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:3998,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4000,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4001,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:4002,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4003,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4004,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4006,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/evg.c:4007,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/jsmods/evg.c:4007,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4008,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:4009,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4010,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4012,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:4014,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4016,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/evg.c:4017,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/jsmods/evg.c:4017,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4018,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:4019,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4020,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4022,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:4024,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/jsmods/evg.c:4032,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:4033,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4034,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:4034,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:4034,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4035,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:4035,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:4035,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4036,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:4036,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:4036,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4037,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:4037,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:4037,1
    - Dst: gf_mx2d_apply_point
      Src: /src/gpac/src/jsmods/evg.c:4044,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:4045,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4046,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:4046,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:4046,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4047,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:4047,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:4047,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4050,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 57
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4051
      start: 3985
    functionDepth: 3
    functionLinenumber: 3985
    functionLinenumberEnd: 4051
    functionName: mx2d_apply
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_IsNumber
    - JS_NewFloat64
    - JS_GetOpaque
    - JS_FreeValue
    - gf_mx2d_apply_rect
    - JS_IsUndefined
    - gf_mx2d_apply_point
    - JS_ToFloat64
    - JS_GetPropertyStr
    - JS_NewObject
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - JS_IsObject
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx2d_apply(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4055,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4056,1
    - Dst: gf_mx2d_inverse
      Src: /src/gpac/src/jsmods/evg.c:4057,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:4058,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4059
      start: 4053
    functionDepth: 2
    functionLinenumber: 4053
    functionLinenumberEnd: 4059
    functionName: mx2d_inverse
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 12
    functionsReached:
    - JS_GetOpaque
    - JS_DupValue
    - GF_JS_EXCEPTION
    - gf_mx2d_inverse
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx2d_inverse(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4065,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4066,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4068,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4069,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/jsmods/evg.c:4070,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/evg.c:4073,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:4075,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/jsmods/evg.c:4076,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:4077,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4078,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4080
      start: 4061
    functionDepth: 2
    functionLinenumber: 4061
    functionLinenumberEnd: 4080
    functionName: mx2d_copy
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 48
    functionsReached:
    - JS_NewObjectClass
    - js_throw_err
    - GF_SAFEALLOC
    - JS_GetOpaque
    - JS_SetOpaque
    - GF_JS_EXCEPTION
    - gf_mx2d_copy
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx2d_copy(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4087,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4088,1
    - Dst: gf_mx2d_decompose
      Src: /src/gpac/src/jsmods/evg.c:4089,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:4092,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4093,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:4093,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:4093,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4094,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:4094,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:4094,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:4098,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4099,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:4099,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:4099,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4100,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:4100,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:4100,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:4104,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:4104,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4106,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 5
    argNames:
    - c
    - obj
    - argc
    - argv
    - opt
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4107
      start: 4082
    functionDepth: 2
    functionLinenumber: 4082
    functionLinenumberEnd: 4107
    functionName: mx2d_decompose_ex
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - JS_GetOpaque
    - JS_NewObject
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - gf_mx2d_decompose
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx2d_decompose_ex(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv, u32 opt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mx2d_decompose_ex
      Src: /src/gpac/src/jsmods/evg.c:4111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4112
      start: 4109
    functionDepth: 3
    functionLinenumber: 4109
    functionLinenumberEnd: 4112
    functionName: mx2d_get_scale
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - mx2d_decompose_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx2d_get_scale(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mx2d_decompose_ex
      Src: /src/gpac/src/jsmods/evg.c:4115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4116
      start: 4113
    functionDepth: 3
    functionLinenumber: 4113
    functionLinenumberEnd: 4116
    functionName: mx2d_get_translate
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - mx2d_decompose_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx2d_get_translate(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mx2d_decompose_ex
      Src: /src/gpac/src/jsmods/evg.c:4119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4120
      start: 4117
    functionDepth: 3
    functionLinenumber: 4117
    functionLinenumberEnd: 4120
    functionName: mx2d_get_rotate
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - mx2d_decompose_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx2d_get_rotate(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/evg.c:4151,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:4153,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:4155,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4156,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:4157,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4158,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/jsmods/evg.c:4159,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4165,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4165,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4166,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4170
      start: 4147
    functionDepth: 2
    functionLinenumber: 4147
    functionLinenumberEnd: 4170
    functionName: mx2d_constructor
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_NewObjectClass
    - gf_mx2d_copy
    - js_throw_err
    - GF_SAFEALLOC
    - JS_GetOpaque
    - JS_SetOpaque
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - JS_IsObject
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx2d_constructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4174,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:4176,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4177
      start: 4172
    functionDepth: 1
    functionLinenumber: 4172
    functionLinenumberEnd: 4177
    functionName: colmx_finalize
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_free
    linkageType: ''
    returnType: void
    signature: void colmx_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/evg.c:4187,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:4189,1
    - Dst: gf_cmx_init
      Src: /src/gpac/src/jsmods/evg.c:4190,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:4191,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4192,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:4193,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4194,1
    - Dst: gf_cmx_copy
      Src: /src/gpac/src/jsmods/evg.c:4195,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/jsmods/evg.c:4196,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:4200,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/evg.c:4201,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4201,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4202,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:4203,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4204,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4206,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:4207,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4216,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4216,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4217,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 33
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4222
      start: 4183
    functionDepth: 3
    functionLinenumber: 4183
    functionLinenumberEnd: 4222
    functionName: colmx_constructor
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_NewObjectClass
    - JS_IsArray
    - js_throw_err
    - gf_cmx_copy
    - GF_SAFEALLOC
    - JS_GetOpaque
    - JS_GetPropertyUint32
    - JS_SetOpaque
    - JS_IsException
    - JS_FreeValue
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - JS_IsObject
    - gf_cmx_init
    linkageType: ''
    returnType: JSValue
    signature: JSValue colmx_constructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4251,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4252,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:4254,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:4254,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/evg.c:4257,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4259
      start: 4249
    functionDepth: 1
    functionLinenumber: 4249
    functionLinenumberEnd: 4259
    functionName: colmx_getProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - JS_GetOpaque
    - JS_NewBool
    - GF_JS_EXCEPTION
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue colmx_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4262,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4263,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4266,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4267,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:4268,1
    - Dst: gf_cmx_init
      Src: /src/gpac/src/jsmods/evg.c:4273,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4277
      start: 4260
    functionDepth: 1
    functionLinenumber: 4260
    functionLinenumberEnd: 4277
    functionName: colmx_setProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - gf_cmx_init
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue colmx_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4281,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4282,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4283,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4284,1
    - Dst: gf_cmx_multiply
      Src: /src/gpac/src/jsmods/evg.c:4285,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:4286,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4287
      start: 4279
    functionDepth: 4
    functionLinenumber: 4279
    functionLinenumberEnd: 4287
    functionName: colmx_multiply
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_DupValue
    - GF_JS_EXCEPTION
    - gf_cmx_multiply
    linkageType: ''
    returnType: JSValue
    signature: JSValue colmx_multiply(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsArray
      Src: /src/gpac/src/jsmods/evg.c:4293,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4295,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:4296,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:4297,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:4302,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4303,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:4305,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4313,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4314,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:4315,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4317,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4318,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:4319,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4321,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4322,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:4323,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4325,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4326,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:4327,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 52
    argCount: 6
    argNames:
    - c
    - obj
    - a
    - r
    - g
    - b
    argTypes:
    - JSContext*
    - JSValueConst
    - Double*
    - Double*
    - Double*
    - Double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4335
      start: 4289
    functionDepth: 1
    functionLinenumber: 4289
    functionLinenumberEnd: 4335
    functionName: get_color
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 10
    functionsReached:
    - JS_IsArray
    - JS_GetPropertyUint32
    - JS_FreeValue
    - JS_ToInt32
    - JS_GetPropertyStr
    - JS_ToFloat64
    linkageType: ''
    returnType: Bool
    signature: Bool get_color(JSContext *c, JSValueConst obj, Double *a, Double *r,
      Double *g, Double *b)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4341,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4342,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/evg.c:4343,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:4344,1
    - Dst: gf_color_parse
      Src: /src/gpac/src/jsmods/evg.c:4345,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:4346,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/jsmods/evg.c:4349,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/jsmods/evg.c:4350,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/jsmods/evg.c:4351,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/jsmods/evg.c:4352,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:4359,1
    - Dst: get_color
      Src: /src/gpac/src/jsmods/evg.c:4360,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4361,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/jsmods/evg.c:4371,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4374,1
    - Dst: gf_cmx_apply
      Src: /src/gpac/src/jsmods/evg.c:4377,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:4378,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4379,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:4379,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/jsmods/evg.c:4379,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4380,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:4380,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/jsmods/evg.c:4380,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4381,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:4381,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/jsmods/evg.c:4381,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4382,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:4382,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/jsmods/evg.c:4382,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4385,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4385,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4385,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4385,1
    - Dst: gf_cmx_apply_fixed
      Src: /src/gpac/src/jsmods/evg.c:4387,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:4388,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4389,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:4389,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:4389,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4390,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:4390,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:4390,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4391,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:4391,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:4391,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4392,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:4392,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:4392,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4395,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 55
    argCount: 5
    argNames:
    - c
    - obj
    - argc
    - argv
    - use_int
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4396
      start: 4336
    functionDepth: 3
    functionLinenumber: 4336
    functionLinenumberEnd: 4396
    functionName: colmx_apply_color
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_FreeCString
    - FIX2FLT
    - JS_ToCString
    - JS_IsString
    - GF_COL_G
    - GF_COL_A
    - JS_NewFloat64
    - JS_GetOpaque
    - JS_NewInt32
    - JS_IsObject
    - FLT2FIX
    - gf_color_parse
    - GF_COL_B
    - GF_COL_ARGB
    - GF_COL_R
    - get_color
    - gf_cmx_apply_fixed
    - gf_cmx_apply
    - JS_NewObject
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    linkageType: ''
    returnType: JSValue
    signature: JSValue colmx_apply_color(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv, Bool use_int)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: colmx_apply_color
      Src: /src/gpac/src/jsmods/evg.c:4399,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4400
      start: 4397
    functionDepth: 4
    functionLinenumber: 4397
    functionLinenumberEnd: 4400
    functionName: colmx_apply
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - colmx_apply_color
    linkageType: ''
    returnType: JSValue
    signature: JSValue colmx_apply(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: colmx_apply_color
      Src: /src/gpac/src/jsmods/evg.c:4403,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4404
      start: 4401
    functionDepth: 4
    functionLinenumber: 4401
    functionLinenumberEnd: 4404
    functionName: colmx_applyf
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - colmx_apply_color
    linkageType: ''
    returnType: JSValue
    signature: JSValue colmx_applyf(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4439,1
    - Dst: gf_path_del
      Src: /src/gpac/src/jsmods/evg.c:4441,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4442
      start: 4437
    functionDepth: 1
    functionLinenumber: 4437
    functionLinenumberEnd: 4442
    functionName: path_finalize
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_path_del
    linkageType: ''
    returnType: void
    signature: void path_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4450,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4451,1
    - Dst: gf_path_close
      Src: /src/gpac/src/jsmods/evg.c:4453,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:4454,1
    - Dst: gf_path_reset
      Src: /src/gpac/src/jsmods/evg.c:4457,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:4458,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:4461,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/evg.c:4462,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4463,1
    - Dst: gf_path_clone
      Src: /src/gpac/src/jsmods/evg.c:4463,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4466,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 5
    argNames:
    - c
    - obj
    - argc
    - argv
    - opt
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4467
      start: 4448
    functionDepth: 3
    functionLinenumber: 4448
    functionLinenumberEnd: 4467
    functionName: path_close_reset
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_DupValue
    - gf_path_clone
    - JS_GetOpaque
    - JS_IsException
    - JS_SetOpaque
    - gf_path_reset
    - GF_JS_EXCEPTION
    - gf_path_close
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_close_reset(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv, u32 opt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: path_close_reset
      Src: /src/gpac/src/jsmods/evg.c:4470,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4471
      start: 4468
    functionDepth: 4
    functionLinenumber: 4468
    functionLinenumberEnd: 4471
    functionName: path_reset
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 15
    functionsReached:
    - path_close_reset
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_reset(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: path_close_reset
      Src: /src/gpac/src/jsmods/evg.c:4474,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4475
      start: 4472
    functionDepth: 4
    functionLinenumber: 4472
    functionLinenumberEnd: 4475
    functionName: path_close
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 28
    functionsReached:
    - path_close_reset
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_close(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: path_close_reset
      Src: /src/gpac/src/jsmods/evg.c:4478,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4479
      start: 4476
    functionDepth: 4
    functionLinenumber: 4476
    functionLinenumberEnd: 4479
    functionName: path_clone
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 3
    functionsReached:
    - path_close_reset
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_clone(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4484,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4485,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4486,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4486,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4487,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4487,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/jsmods/evg.c:4489,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4489,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4489,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/jsmods/evg.c:4491,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4491,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4491,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4492,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:4493,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 5
    argNames:
    - c
    - obj
    - argc
    - argv
    - is_line
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4494
      start: 4480
    functionDepth: 2
    functionLinenumber: 4480
    functionLinenumberEnd: 4494
    functionName: path_line_move
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_DupValue
    - JS_GetOpaque
    - gf_path_add_move_to
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - gf_path_add_line_to
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_line_move(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv, Bool is_line)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: path_line_move
      Src: /src/gpac/src/jsmods/evg.c:4497,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4498
      start: 4495
    functionDepth: 3
    functionLinenumber: 4495
    functionLinenumberEnd: 4498
    functionName: path_line_to
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - path_line_move
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_line_to(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: path_line_move
      Src: /src/gpac/src/jsmods/evg.c:4501,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4502
      start: 4499
    functionDepth: 3
    functionLinenumber: 4499
    functionLinenumberEnd: 4502
    functionName: path_move_to
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - path_line_move
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_move_to(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4507,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4508,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4509,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4509,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4510,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4510,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4511,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4511,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4512,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4512,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4513,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4513,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4514,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4514,1
    - Dst: gf_path_add_cubic_to
      Src: /src/gpac/src/jsmods/evg.c:4515,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4515,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4515,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4515,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4515,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4515,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4515,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4516,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:4517,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4518
      start: 4503
    functionDepth: 2
    functionLinenumber: 4503
    functionLinenumberEnd: 4518
    functionName: path_cubic_to
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_DupValue
    - JS_GetOpaque
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - gf_path_add_cubic_to
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_cubic_to(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4523,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4524,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4525,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4525,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4526,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4526,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4527,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4527,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4528,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4528,1
    - Dst: gf_path_add_quadratic_to
      Src: /src/gpac/src/jsmods/evg.c:4529,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4529,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4529,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4529,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4529,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4530,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:4531,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4532
      start: 4519
    functionDepth: 2
    functionLinenumber: 4519
    functionLinenumberEnd: 4532
    functionName: path_quadratic_to
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_DupValue
    - gf_path_add_quadratic_to
    - JS_GetOpaque
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_quadratic_to(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4540,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4541,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:4543,1
    - Dst: GETD
      Src: /src/gpac/src/jsmods/evg.c:4551,1
    - Dst: GETD
      Src: /src/gpac/src/jsmods/evg.c:4552,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4557,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4557,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4558,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4558,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4561,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4563,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4563,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4564,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4564,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:4565,1
    - Dst: gf_path_add_rect_center
      Src: /src/gpac/src/jsmods/evg.c:4566,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4566,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4566,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4566,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4566,1
    - Dst: gf_path_add_rect
      Src: /src/gpac/src/jsmods/evg.c:4568,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4568,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4568,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4568,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4568,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4570,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:4571,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4572
      start: 4534
    functionDepth: 4
    functionLinenumber: 4534
    functionLinenumberEnd: 4572
    functionName: path_rect
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_path_add_rect_center
    - JS_DupValue
    - JS_GetOpaque
    - gf_path_add_rect
    - JS_ToBool
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - JS_IsObject
    - GETD
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_rect(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _arg
    - ','
    - _name
    - ','
    - _res
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4551
      start: 4545
    functionDepth: 0
    functionLinenumber: 4545
    functionLinenumberEnd: 4551
    functionName: GETD
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GETD(_arg, _name, _res)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4580,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4581,1
    - Dst: GETD
      Src: /src/gpac/src/jsmods/evg.c:4590,1
    - Dst: GETD
      Src: /src/gpac/src/jsmods/evg.c:4591,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4596,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4596,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4597,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4597,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4600,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4602,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4604,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4604,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4605,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4605,1
    - Dst: gf_path_add_ellipse
      Src: /src/gpac/src/jsmods/evg.c:4606,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4606,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4606,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4606,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4606,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4607,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:4608,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4609
      start: 4574
    functionDepth: 4
    functionLinenumber: 4574
    functionLinenumberEnd: 4609
    functionName: path_ellipse
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_DupValue
    - gf_path_add_ellipse
    - JS_GetOpaque
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - GETD
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_ellipse(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _arg
    - ','
    - _name
    - ','
    - _res
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4590
      start: 4584
    functionDepth: 0
    functionLinenumber: 4584
    functionLinenumberEnd: 4590
    functionName: GETD
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GETD(_arg, _name, _res)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4616,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4617,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/evg.c:4618,1
    - Dst: memset
      Src: /src/gpac/src/jsmods/evg.c:4619,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:4623,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4625,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4626,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4627,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:4628,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4629,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4630,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4631,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:4632,1
    - Dst: gf_path_add_bezier
      Src: /src/gpac/src/jsmods/evg.c:4634,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:4635,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4636,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:4637,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4638
      start: 4611
    functionDepth: 4
    functionLinenumber: 4611
    functionLinenumberEnd: 4638
    functionName: path_bezier
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_free
    - JS_DupValue
    - JS_GetOpaque
    - JS_FreeValue
    - memset
    - JS_GetPropertyStr
    - JS_ToFloat64
    - gf_path_add_bezier
    - GF_JS_EXCEPTION
    - JS_IsObject
    - gf_malloc
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_bezier(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4645,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4646,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4647,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4647,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4648,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4648,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4649,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4649,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4650,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4650,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4651,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4651,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4652,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4652,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:4653,1
    - Dst: gf_path_add_svg_arc_to
      Src: /src/gpac/src/jsmods/evg.c:4655,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4655,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4655,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4655,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4655,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4655,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4655,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4656,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:4657,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4658
      start: 4640
    functionDepth: 3
    functionLinenumber: 4640
    functionLinenumberEnd: 4658
    functionName: path_arc_bifs
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_DupValue
    - JS_GetOpaque
    - JS_ToBool
    - gf_path_add_svg_arc_to
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_arc_bifs(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4666,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4667,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4668,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4668,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4669,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4669,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4670,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4670,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4671,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4671,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4673,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4673,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:4674,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:4675,1
    - Dst: gf_path_add_svg_arc_to
      Src: /src/gpac/src/jsmods/evg.c:4677,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4677,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4677,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4677,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4677,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4677,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4679,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:4680,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 23
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4681
      start: 4661
    functionDepth: 3
    functionLinenumber: 4661
    functionLinenumberEnd: 4681
    functionName: path_arc_svg
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_DupValue
    - JS_GetOpaque
    - JS_ToBool
    - gf_path_add_svg_arc_to
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_arc_svg(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4688,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4689,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4690,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4690,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4691,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4691,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4692,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4692,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:4694,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4694,1
    - Dst: gf_path_add_arc
      Src: /src/gpac/src/jsmods/evg.c:4695,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4695,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4695,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4695,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4696,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:4697,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4698
      start: 4683
    functionDepth: 4
    functionLinenumber: 4683
    functionLinenumberEnd: 4698
    functionName: path_arc
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_path_add_arc
    - FLT2FIX
    - JS_DupValue
    - JS_GetOpaque
    - JS_ToInt32
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_arc(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4704,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4705,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4706,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4707,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4709,1
    - Dst: gf_path_add_subpath
      Src: /src/gpac/src/jsmods/evg.c:4710,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4711,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:4712,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4713
      start: 4700
    functionDepth: 2
    functionLinenumber: 4700
    functionLinenumberEnd: 4713
    functionName: path_add_path
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_path_add_subpath
    - GF_JS_EXCEPTION
    - JS_DupValue
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_add_path(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4717,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4718,1
    - Dst: gf_path_flatten
      Src: /src/gpac/src/jsmods/evg.c:4719,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:4720,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4721
      start: 4715
    functionDepth: 5
    functionLinenumber: 4715
    functionLinenumberEnd: 4721
    functionName: path_flatten
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 8
    functionsReached:
    - JS_GetOpaque
    - JS_DupValue
    - GF_JS_EXCEPTION
    - gf_path_flatten
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_flatten(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4726,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4727,1
    - Dst: gf_path_get_flatten
      Src: /src/gpac/src/jsmods/evg.c:4728,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:4730,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/evg.c:4731,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4732,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4734
      start: 4722
    functionDepth: 4
    functionLinenumber: 4722
    functionLinenumberEnd: 4734
    functionName: path_get_flat
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_GetOpaque
    - JS_IsException
    - JS_SetOpaque
    - gf_path_get_flatten
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_get_flat(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4739,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4740,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:4745,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4745,1
    - Dst: GETIT
      Src: /src/gpac/src/jsmods/evg.c:4753,1
    - Dst: GETIT
      Src: /src/gpac/src/jsmods/evg.c:4754,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4757,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4757,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4758,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4758,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4760,1
    - Dst: gf_path_point_over
      Src: /src/gpac/src/jsmods/evg.c:4762,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4762,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4762,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4763
      start: 4736
    functionDepth: 4
    functionLinenumber: 4736
    functionLinenumberEnd: 4763
    functionName: path_point_over
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 5
    functionsReached:
    - FLT2FIX
    - JS_GetOpaque
    - JS_ToFloat64
    - gf_path_point_over
    - GF_JS_EXCEPTION
    - JS_IsObject
    - GETIT
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_point_over(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _arg
    - ','
    - _name
    - ','
    - _var
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4753
      start: 4746
    functionDepth: 0
    functionLinenumber: 4746
    functionLinenumberEnd: 4753
    functionName: GETIT
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GETIT(_arg, _name, _var)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4774,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:4775,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4775,1
    - Dst: memset
      Src: /src/gpac/src/jsmods/evg.c:4776,1
    - Dst: GETIT_F
      Src: /src/gpac/src/jsmods/evg.c:4796,1
    - Dst: GETIT_F
      Src: /src/gpac/src/jsmods/evg.c:4797,1
    - Dst: GETIT_F
      Src: /src/gpac/src/jsmods/evg.c:4798,1
    - Dst: GETIT_F
      Src: /src/gpac/src/jsmods/evg.c:4799,1
    - Dst: GETIT_I
      Src: /src/gpac/src/jsmods/evg.c:4800,1
    - Dst: GETIT_I
      Src: /src/gpac/src/jsmods/evg.c:4801,1
    - Dst: GETIT_I
      Src: /src/gpac/src/jsmods/evg.c:4802,1
    - Dst: GETIT_I
      Src: /src/gpac/src/jsmods/evg.c:4803,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4811,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/jsmods/evg.c:4812,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/evg.c:4812,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4813,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:4814,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:4815,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/evg.c:4818,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:4820,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:4821,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:4822,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:4823,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:4829,1
    - Dst: gf_path_get_outline
      Src: /src/gpac/src/jsmods/evg.c:4831,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:4832,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4834,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:4835,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4836,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4838
      start: 4766
    functionDepth: 9
    functionLinenumber: 4766
    functionLinenumberEnd: 4838
    functionName: path_outline
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 2
    functionsReached:
    - gf_free
    - GETIT_F
    - memset
    - JS_ToFloat64
    - gf_path_get_outline
    - JS_GetOpaque
    - JS_IsObject
    - FLT2FIX
    - JS_NewObjectClass
    - JS_IsNull
    - JS_GetPropertyUint32
    - GETIT_I
    - JS_ToInt32
    - JS_GetPropertyStr
    - gf_malloc
    - JS_IsArray
    - JS_FreeValue
    - JS_SetOpaque
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_outline(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _arg
    - ','
    - _name
    - ','
    - _var
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4787
      start: 4778
    functionDepth: 0
    functionLinenumber: 4778
    functionLinenumberEnd: 4787
    functionName: GETIT_F
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GETIT_F(_arg, _name, _var)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _arg
    - ','
    - _name
    - ','
    - _var
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4796
      start: 4787
    functionDepth: 0
    functionLinenumber: 4787
    functionLinenumberEnd: 4796
    functionName: GETIT_I
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GETIT_I(_arg, _name, _var)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4847,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4848,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4849,1
    - Dst: gf_path_new
      Src: /src/gpac/src/jsmods/evg.c:4851,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4852,1
    - Dst: gf_path_add_subpath
      Src: /src/gpac/src/jsmods/evg.c:4853,1
    - Dst: gf_path_del
      Src: /src/gpac/src/jsmods/evg.c:4855,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4856,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:4858,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4859,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4861
      start: 4841
    functionDepth: 2
    functionLinenumber: 4841
    functionLinenumberEnd: 4861
    functionName: path_transform
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - gf_path_add_subpath
    - JS_GetOpaque
    - gf_path_new
    - JS_SetOpaque
    - gf_path_del
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_transform(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_get_control_bounds
      Src: /src/gpac/src/jsmods/evg.c:4880,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/jsmods/evg.c:4882,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4883,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:4884,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4885,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:4885,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4886,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:4886,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4887,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:4887,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:4888,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:4888,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - c
    - gp
    - is_ctrl
    argTypes:
    - JSContext*
    - GF_Path*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4890
      start: 4874
    functionDepth: 3
    functionLinenumber: 4874
    functionLinenumberEnd: 4890
    functionName: path_bounds_ex
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - gf_path_get_control_bounds
    - JS_NewObject
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - gf_path_get_bounds
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_bounds_ex(JSContext *c, GF_Path *gp, Bool is_ctrl)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 1
    argNames:
    - gp
    argTypes:
    - GF_Path*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4902
      start: 4891
    functionDepth: 0
    functionLinenumber: 4891
    functionLinenumberEnd: 4902
    functionName: path_check_rect
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool path_check_rect(GF_Path *gp)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4906,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4907,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/evg.c:4909,1
    - Dst: gf_path_is_empty
      Src: /src/gpac/src/jsmods/evg.c:4909,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/evg.c:4910,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/evg.c:4911,1
    - Dst: path_bounds_ex
      Src: /src/gpac/src/jsmods/evg.c:4912,1
    - Dst: path_bounds_ex
      Src: /src/gpac/src/jsmods/evg.c:4913,1
    - Dst: path_check_rect
      Src: /src/gpac/src/jsmods/evg.c:4914,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4917
      start: 4904
    functionDepth: 4
    functionLinenumber: 4904
    functionLinenumberEnd: 4917
    functionName: path_getProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - path_bounds_ex
    - path_check_rect
    - JS_GetOpaque
    - JS_NewBool
    - GF_JS_EXCEPTION
    - gf_path_is_empty
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4920,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4921,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:4924,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:4930,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4937
      start: 4918
    functionDepth: 1
    functionLinenumber: 4918
    functionLinenumberEnd: 4937
    functionName: path_setProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_new
      Src: /src/gpac/src/jsmods/evg.c:4941,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:4942,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:4943,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/evg.c:4944,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4945,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4947
      start: 4938
    functionDepth: 2
    functionLinenumber: 4938
    functionLinenumberEnd: 4947
    functionName: path_constructor
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - gf_path_new
    - JS_IsException
    - JS_SetOpaque
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue path_constructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:4982,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/jsmods/evg.c:4984,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4985
      start: 4980
    functionDepth: 1
    functionLinenumber: 4980
    functionLinenumberEnd: 4985
    functionName: stencil_finalize
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_evg_stencil_delete
    linkageType: ''
    returnType: void
    signature: void stencil_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5007,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:5016,1
    - Dst: GETIT
      Src: /src/gpac/src/jsmods/evg.c:5017,1
    - Dst: GETIT
      Src: /src/gpac/src/jsmods/evg.c:5018,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:5021,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5021,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:5022,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:5023,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5023,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:5024,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:5032,1
    - Dst: GETIT
      Src: /src/gpac/src/jsmods/evg.c:5033,1
    - Dst: GETIT
      Src: /src/gpac/src/jsmods/evg.c:5034,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:5036,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5036,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:5037,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:5038,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5038,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:5039,1
    - Dst: gf_evg_stencil_set_linear_gradient
      Src: /src/gpac/src/jsmods/evg.c:5042,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 35
    argCount: 4
    argNames:
    - c
    - stencil
    - argc
    - argv
    argTypes:
    - JSContext*
    - GF_EVGStencil*
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5044
      start: 5000
    functionDepth: 2
    functionLinenumber: 5000
    functionLinenumberEnd: 5044
    functionName: stencil_set_linear
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_evg_stencil_set_linear_gradient
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - JS_IsObject
    - GETIT
    linkageType: ''
    returnType: JSValue
    signature: JSValue stencil_set_linear(JSContext *c, GF_EVGStencil *stencil, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _arg
    - ','
    - _name
    - ','
    - _var
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5016
      start: 5009
    functionDepth: 0
    functionLinenumber: 5009
    functionLinenumberEnd: 5016
    functionName: GETIT
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GETIT(_arg, _name, _var)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5053,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:5062,1
    - Dst: GETIT
      Src: /src/gpac/src/jsmods/evg.c:5063,1
    - Dst: GETIT
      Src: /src/gpac/src/jsmods/evg.c:5064,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:5067,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5067,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:5068,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:5069,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5069,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:5070,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:5074,1
    - Dst: GETIT
      Src: /src/gpac/src/jsmods/evg.c:5075,1
    - Dst: GETIT
      Src: /src/gpac/src/jsmods/evg.c:5076,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:5079,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5079,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:5080,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:5081,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5081,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:5082,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:5086,1
    - Dst: GETIT
      Src: /src/gpac/src/jsmods/evg.c:5087,1
    - Dst: GETIT
      Src: /src/gpac/src/jsmods/evg.c:5088,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:5090,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5090,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:5091,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:5092,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5092,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:5093,1
    - Dst: gf_evg_stencil_set_radial_gradient
      Src: /src/gpac/src/jsmods/evg.c:5096,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 42
    argCount: 4
    argNames:
    - c
    - stencil
    - argc
    - argv
    argTypes:
    - JSContext*
    - GF_EVGStencil*
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5098
      start: 5046
    functionDepth: 1
    functionLinenumber: 5046
    functionLinenumberEnd: 5098
    functionName: stencil_set_radial
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_evg_stencil_set_radial_gradient
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - JS_IsObject
    - GETIT
    linkageType: ''
    returnType: JSValue
    signature: JSValue stencil_set_radial(JSContext *c, GF_EVGStencil *stencil, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _arg
    - ','
    - _name
    - ','
    - _var
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5062
      start: 5055
    functionDepth: 0
    functionLinenumber: 5055
    functionLinenumberEnd: 5062
    functionName: GETIT
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GETIT(_arg, _name, _var)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5104,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5105,1
    - Dst: gf_evg_stencil_type
      Src: /src/gpac/src/jsmods/evg.c:5107,1
    - Dst: stencil_set_linear
      Src: /src/gpac/src/jsmods/evg.c:5109,1
    - Dst: stencil_set_radial
      Src: /src/gpac/src/jsmods/evg.c:5111,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5112,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5113
      start: 5101
    functionDepth: 3
    functionLinenumber: 5101
    functionLinenumberEnd: 5113
    functionName: stencil_set_points
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - stencil_set_radial
    - stencil_set_linear
    - GF_JS_EXCEPTION
    - gf_evg_stencil_type
    linkageType: ''
    returnType: JSValue
    signature: JSValue stencil_set_points(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/evg.c:5118,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:5120,1
    - Dst: gf_color_parse
      Src: /src/gpac/src/jsmods/evg.c:5121,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:5122,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/jsmods/evg.c:5123,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/jsmods/evg.c:5124,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/jsmods/evg.c:5125,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/jsmods/evg.c:5126,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/evg.c:5127,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:5129,1
    - Dst: get_color
      Src: /src/gpac/src/jsmods/evg.c:5130,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:5134,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:5137,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:5140,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:5143,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 36
    argCount: 8
    argNames:
    - c
    - argc
    - argv
    - idx
    - a
    - r
    - g
    - b
    argTypes:
    - JSContext*
    - int
    - JSValueConst*
    - u32
    - Double*
    - Double*
    - Double*
    - Double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5150
      start: 5115
    functionDepth: 2
    functionLinenumber: 5115
    functionLinenumberEnd: 5150
    functionName: get_color_from_args
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 2
    functionsReached:
    - gf_color_parse
    - JS_ToCString
    - JS_IsString
    - GF_COL_G
    - GF_COL_B
    - GF_COL_A
    - JS_IsNull
    - GF_COL_R
    - JS_ToFloat64
    - JS_IsObject
    - get_color
    - JS_FreeCString
    linkageType: ''
    returnType: Bool
    signature: Bool get_color_from_args(JSContext *c, int argc, JSValueConst *argv,
      u32 idx, Double *a, Double *r, Double *g, Double *b)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5157,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5158,1
    - Dst: gf_evg_stencil_type
      Src: /src/gpac/src/jsmods/evg.c:5159,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5160,1
    - Dst: gf_evg_stencil_set_gradient_interpolation
      Src: /src/gpac/src/jsmods/evg.c:5162,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:5165,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5165,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/evg.c:5167,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:5168,1
    - Dst: gf_color_parse
      Src: /src/gpac/src/jsmods/evg.c:5169,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:5170,1
    - Dst: get_color_from_args
      Src: /src/gpac/src/jsmods/evg.c:5173,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5174,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/jsmods/evg.c:5182,1
    - Dst: gf_evg_stencil_push_gradient_interpolation
      Src: /src/gpac/src/jsmods/evg.c:5184,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:5184,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 5
    argNames:
    - c
    - obj
    - argc
    - argv
    - use_int
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5186
      start: 5152
    functionDepth: 3
    functionLinenumber: 5152
    functionLinenumberEnd: 5186
    functionName: stencil_set_stop_ex
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_ToCString
    - JS_IsString
    - gf_color_parse
    - gf_evg_stencil_set_gradient_interpolation
    - JS_GetOpaque
    - gf_evg_stencil_push_gradient_interpolation
    - get_color_from_args
    - JS_FreeCString
    - GF_COL_ARGB
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - gf_evg_stencil_type
    linkageType: ''
    returnType: JSValue
    signature: JSValue stencil_set_stop_ex(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv, Bool use_int)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stencil_set_stop_ex
      Src: /src/gpac/src/jsmods/evg.c:5189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5190
      start: 5187
    functionDepth: 4
    functionLinenumber: 5187
    functionLinenumberEnd: 5190
    functionName: stencil_set_stop
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - stencil_set_stop_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue stencil_set_stop(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stencil_set_stop_ex
      Src: /src/gpac/src/jsmods/evg.c:5193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5194
      start: 5191
    functionDepth: 4
    functionLinenumber: 5191
    functionLinenumberEnd: 5194
    functionName: stencil_set_stopf
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - stencil_set_stop_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue stencil_set_stopf(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5200,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5201,1
    - Dst: gf_evg_stencil_type
      Src: /src/gpac/src/jsmods/evg.c:5202,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5203,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/evg.c:5205,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:5207,1
    - Dst: gf_color_parse
      Src: /src/gpac/src/jsmods/evg.c:5208,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:5209,1
    - Dst: gf_evg_stencil_set_brush_color
      Src: /src/gpac/src/jsmods/evg.c:5210,1
    - Dst: get_color_from_args
      Src: /src/gpac/src/jsmods/evg.c:5212,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5213,1
    - Dst: gf_evg_stencil_set_brush_color
      Src: /src/gpac/src/jsmods/evg.c:5221,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/jsmods/evg.c:5221,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 5
    argNames:
    - c
    - obj
    - argc
    - argv
    - use_int
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5223
      start: 5196
    functionDepth: 3
    functionLinenumber: 5196
    functionLinenumberEnd: 5223
    functionName: stencil_set_color_ex
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - gf_color_parse
    - JS_GetOpaque
    - get_color_from_args
    - JS_FreeCString
    - GF_COL_ARGB
    - GF_JS_EXCEPTION
    - gf_evg_stencil_set_brush_color
    - gf_evg_stencil_type
    linkageType: ''
    returnType: JSValue
    signature: JSValue stencil_set_color_ex(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv, Bool use_int)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stencil_set_color_ex
      Src: /src/gpac/src/jsmods/evg.c:5227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5228
      start: 5225
    functionDepth: 4
    functionLinenumber: 5225
    functionLinenumberEnd: 5228
    functionName: stencil_set_color
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - stencil_set_color_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue stencil_set_color(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stencil_set_color_ex
      Src: /src/gpac/src/jsmods/evg.c:5231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5232
      start: 5229
    functionDepth: 4
    functionLinenumber: 5229
    functionLinenumberEnd: 5232
    functionName: stencil_set_colorf
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - stencil_set_color_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue stencil_set_colorf(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5240,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5241,1
    - Dst: gf_evg_stencil_type
      Src: /src/gpac/src/jsmods/evg.c:5242,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5243,1
    - Dst: gf_evg_stencil_get_brush_color
      Src: /src/gpac/src/jsmods/evg.c:5245,1
    - Dst: sprintf
      Src: /src/gpac/src/jsmods/evg.c:5246,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/jsmods/evg.c:5246,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/jsmods/evg.c:5246,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/jsmods/evg.c:5246,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/jsmods/evg.c:5246,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/evg.c:5247,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5248
      start: 5235
    functionDepth: 1
    functionLinenumber: 5235
    functionLinenumberEnd: 5248
    functionName: stencil_get_color
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_COL_A
    - JS_GetOpaque
    - gf_evg_stencil_get_brush_color
    - sprintf
    - JS_NewString
    - GF_COL_R
    - GF_JS_EXCEPTION
    - gf_evg_stencil_type
    linkageType: ''
    returnType: JSValue
    signature: JSValue stencil_get_color(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5254,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5256,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5258,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:5263,1
    - Dst: gf_evg_stencil_set_alpha
      Src: /src/gpac/src/jsmods/evg.c:5270,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 5
    argNames:
    - c
    - obj
    - argc
    - argv
    - use_int
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5272
      start: 5251
    functionDepth: 1
    functionLinenumber: 5251
    functionLinenumberEnd: 5272
    functionName: stencil_set_alpha_ex
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - gf_evg_stencil_set_alpha
    linkageType: ''
    returnType: JSValue
    signature: JSValue stencil_set_alpha_ex(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv, Bool use_int)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stencil_set_alpha_ex
      Src: /src/gpac/src/jsmods/evg.c:5276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5277
      start: 5274
    functionDepth: 2
    functionLinenumber: 5274
    functionLinenumberEnd: 5277
    functionName: stencil_set_alpha
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 4
    functionsReached:
    - stencil_set_alpha_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue stencil_set_alpha(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stencil_set_alpha_ex
      Src: /src/gpac/src/jsmods/evg.c:5280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5281
      start: 5278
    functionDepth: 2
    functionLinenumber: 5278
    functionLinenumberEnd: 5281
    functionName: stencil_set_alphaf
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - stencil_set_alpha_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue stencil_set_alphaf(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5286,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5288,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5290,1
    - Dst: gf_evg_stencil_get_alpha
      Src: /src/gpac/src/jsmods/evg.c:5293,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:5294,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5295
      start: 5284
    functionDepth: 1
    functionLinenumber: 5284
    functionLinenumberEnd: 5295
    functionName: stencil_get_alphaf
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_evg_stencil_get_alpha
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    linkageType: ''
    returnType: JSValue
    signature: JSValue stencil_get_alphaf(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5300,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5301,1
    - Dst: gf_evg_stencil_type
      Src: /src/gpac/src/jsmods/evg.c:5304,1
    - Dst: gf_evg_stencil_get_matrix
      Src: /src/gpac/src/jsmods/evg.c:5309,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/evg.c:5310,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:5311,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/jsmods/evg.c:5312,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:5313,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5314,1
    - Dst: gf_evg_stencil_get_auto_matrix
      Src: /src/gpac/src/jsmods/evg.c:5319,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/evg.c:5324,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:5325,1
    - Dst: gf_evg_stencil_get_color_matrix
      Src: /src/gpac/src/jsmods/evg.c:5326,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:5327,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5328,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5334
      start: 5298
    functionDepth: 2
    functionLinenumber: 5298
    functionLinenumberEnd: 5334
    functionName: stencil_getProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - js_throw_err
    - gf_evg_stencil_get_color_matrix
    - GF_SAFEALLOC
    - JS_GetOpaque
    - gf_evg_stencil_get_auto_matrix
    - JS_SetOpaque
    - gf_evg_stencil_get_matrix
    - GF_JS_EXCEPTION
    - gf_mx2d_copy
    - gf_evg_stencil_type
    linkageType: ''
    returnType: JSValue
    signature: JSValue stencil_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5338,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5339,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/evg.c:5343,1
    - Dst: gf_evg_stencil_set_color_matrix
      Src: /src/gpac/src/jsmods/evg.c:5344,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5346,1
    - Dst: gf_evg_stencil_set_color_matrix
      Src: /src/gpac/src/jsmods/evg.c:5347,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:5351,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5351,1
    - Dst: gf_evg_stencil_set_gradient_mode
      Src: /src/gpac/src/jsmods/evg.c:5352,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/evg.c:5355,1
    - Dst: gf_evg_stencil_set_matrix
      Src: /src/gpac/src/jsmods/evg.c:5356,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5358,1
    - Dst: gf_evg_stencil_set_matrix
      Src: /src/gpac/src/jsmods/evg.c:5359,1
    - Dst: gf_evg_stencil_set_auto_matrix
      Src: /src/gpac/src/jsmods/evg.c:5363,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:5363,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5367
      start: 5335
    functionDepth: 2
    functionLinenumber: 5335
    functionLinenumberEnd: 5367
    functionName: stencil_setProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_IsNull
    - JS_GetOpaque
    - gf_evg_stencil_set_auto_matrix
    - gf_evg_stencil_set_matrix
    - gf_evg_stencil_set_color_matrix
    - JS_ToBool
    - gf_evg_stencil_set_gradient_mode
    - JS_ToInt32
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue stencil_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/jsmods/evg.c:5391,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5392,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:5393,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/evg.c:5394,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5395,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 5
    argNames:
    - c
    - new_target
    - argc
    - argv
    - type
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - GF_StencilType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5397
      start: 5388
    functionDepth: 1
    functionLinenumber: 5388
    functionLinenumberEnd: 5397
    functionName: stencil_constructor
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_IsException
    - gf_evg_stencil_new
    - JS_SetOpaque
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue stencil_constructor(JSContext *c, JSValueConst new_target,
      int argc, JSValueConst *argv, GF_StencilType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stencil_constructor
      Src: /src/gpac/src/jsmods/evg.c:5400,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5401
      start: 5398
    functionDepth: 2
    functionLinenumber: 5398
    functionLinenumberEnd: 5401
    functionName: solid_brush_constructor
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - stencil_constructor
    linkageType: ''
    returnType: JSValue
    signature: JSValue solid_brush_constructor(JSContext *c, JSValueConst new_target,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stencil_constructor
      Src: /src/gpac/src/jsmods/evg.c:5404,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5405
      start: 5402
    functionDepth: 2
    functionLinenumber: 5402
    functionLinenumberEnd: 5405
    functionName: linear_gradient_constructor
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - stencil_constructor
    linkageType: ''
    returnType: JSValue
    signature: JSValue linear_gradient_constructor(JSContext *c, JSValueConst new_target,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stencil_constructor
      Src: /src/gpac/src/jsmods/evg.c:5408,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5409
      start: 5406
    functionDepth: 2
    functionLinenumber: 5406
    functionLinenumberEnd: 5409
    functionName: radial_gradient_constructor
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - stencil_constructor
    linkageType: ''
    returnType: JSValue
    signature: JSValue radial_gradient_constructor(JSContext *c, JSValueConst new_target,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:5414,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - tx
    argTypes:
    - GF_JSTexture*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5419
      start: 5411
    functionDepth: 0
    functionLinenumber: 5411
    functionLinenumberEnd: 5419
    functionName: texture_reset
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 2
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void texture_reset(GF_JSTexture *tx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5423,1
    - Dst: texture_reset
      Src: /src/gpac/src/jsmods/evg.c:5425,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/jsmods/evg.c:5427,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/evg.c:5428,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/evg.c:5429,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:5433,1
    - Dst: sws_freeContext
      Src: /src/gpac/src/jsmods/evg.c:5439,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:5442,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5443
      start: 5421
    functionDepth: 1
    functionLinenumber: 5421
    functionLinenumberEnd: 5443
    functionName: texture_finalize
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_evg_stencil_delete
    - JS_GetOpaque
    - JS_FreeValueRT
    - texture_reset
    - sws_freeContext
    linkageType: ''
    returnType: void
    signature: void texture_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5447,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/evg.c:5449,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/evg.c:5450,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - rt
    - obj
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5451
      start: 5445
    functionDepth: 1
    functionLinenumber: 5445
    functionLinenumberEnd: 5451
    functionName: texture_gc_mark
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: void texture_gc_mark(JSRuntime *rt, JSValueConst obj, JS_MarkFunc *mark_func)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5479,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5480,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/evg.c:5483,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/evg.c:5485,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/evg.c:5487,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/evg.c:5489,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:5491,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:5493,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:5495,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:5497,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/jsmods/evg.c:5500,1
    - Dst: gf_evg_stencil_get_matrix
      Src: /src/gpac/src/jsmods/evg.c:5506,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/evg.c:5507,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:5508,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/jsmods/evg.c:5509,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:5510,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5511,1
    - Dst: gf_evg_stencil_get_auto_matrix
      Src: /src/gpac/src/jsmods/evg.c:5515,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/evg.c:5520,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:5521,1
    - Dst: gf_evg_stencil_get_color_matrix
      Src: /src/gpac/src/jsmods/evg.c:5522,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:5523,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5524,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 49
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5529
      start: 5477
    functionDepth: 2
    functionLinenumber: 5477
    functionLinenumberEnd: 5529
    functionName: texture_getProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - js_throw_err
    - gf_evg_stencil_get_color_matrix
    - GF_SAFEALLOC
    - JS_GetOpaque
    - gf_evg_stencil_get_auto_matrix
    - JS_SetOpaque
    - JS_NewBool
    - JS_NewArrayBuffer
    - gf_evg_stencil_get_matrix
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - gf_mx2d_copy
    linkageType: ''
    returnType: JSValue
    signature: JSValue texture_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5533,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5534,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:5538,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5538,1
    - Dst: gf_evg_stencil_set_filter
      Src: /src/gpac/src/jsmods/evg.c:5539,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/evg.c:5542,1
    - Dst: gf_evg_stencil_set_color_matrix
      Src: /src/gpac/src/jsmods/evg.c:5543,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5545,1
    - Dst: gf_evg_stencil_set_color_matrix
      Src: /src/gpac/src/jsmods/evg.c:5546,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:5550,1
    - Dst: gf_evg_stencil_set_mapping
      Src: /src/gpac/src/jsmods/evg.c:5552,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:5555,1
    - Dst: gf_evg_stencil_set_mapping
      Src: /src/gpac/src/jsmods/evg.c:5557,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:5560,1
    - Dst: gf_evg_stencil_set_mapping
      Src: /src/gpac/src/jsmods/evg.c:5562,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:5565,1
    - Dst: gf_evg_stencil_set_mapping
      Src: /src/gpac/src/jsmods/evg.c:5567,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/evg.c:5570,1
    - Dst: gf_evg_stencil_set_matrix
      Src: /src/gpac/src/jsmods/evg.c:5571,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5573,1
    - Dst: gf_evg_stencil_set_matrix
      Src: /src/gpac/src/jsmods/evg.c:5574,1
    - Dst: gf_evg_stencil_set_auto_matrix
      Src: /src/gpac/src/jsmods/evg.c:5578,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:5578,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 52
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5582
      start: 5530
    functionDepth: 2
    functionLinenumber: 5530
    functionLinenumberEnd: 5582
    functionName: texture_setProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_IsNull
    - JS_GetOpaque
    - gf_evg_stencil_set_mapping
    - gf_evg_stencil_set_filter
    - gf_evg_stencil_set_auto_matrix
    - gf_evg_stencil_set_matrix
    - gf_evg_stencil_set_color_matrix
    - JS_ToBool
    - JS_ToInt32
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue texture_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5586
      start: 5585
    functionDepth: 0
    functionLinenumber: 5585
    functionLinenumberEnd: 5586
    functionName: min_f
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: min_f(a, b, c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5587
      start: 5586
    functionDepth: 0
    functionLinenumber: 5586
    functionLinenumberEnd: 5587
    functionName: max_f
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: max_f(a, b, c)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: max_f
      Src: /src/gpac/src/jsmods/evg.c:5595,1
    - Dst: min_f
      Src: /src/gpac/src/jsmods/evg.c:5596,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 6
    argNames:
    - src_r
    - src_g
    - src_b
    - dst_h
    - dst_s
    - dst_v
    argTypes:
    - u8
    - u8
    - u8
    - u8*
    - u8*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5621
      start: 5588
    functionDepth: 1
    functionLinenumber: 5588
    functionLinenumberEnd: 5621
    functionName: rgb2hsv
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - min_f
    - max_f
    linkageType: ''
    returnType: void
    signature: void rgb2hsv(const u8 src_r, const u8 src_g, const u8 src_b, u8 *dst_h,
      u8 *dst_s, u8 *dst_v)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 37
    argCount: 6
    argNames:
    - src_h
    - src_s
    - src_v
    - dst_r
    - dst_g
    - dst_b
    argTypes:
    - u8
    - u8
    - u8
    - u8*
    - u8*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5650
      start: 5623
    functionDepth: 0
    functionLinenumber: 5623
    functionLinenumberEnd: 5650
    functionName: hsv2rgb
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void hsv2rgb(u8 src_h, u8 src_s, u8 src_v, u8 *dst_r, u8 *dst_g, u8
      *dst_b)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5667,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5668,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5670,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:5673,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/evg.c:5700,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:5702,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/jsmods/evg.c:5707,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/evg.c:5708,1
    - Dst: gf_evg_stencil_get_pixel
      Src: /src/gpac/src/jsmods/evg.c:5715,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/jsmods/evg.c:5718,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/jsmods/evg.c:5719,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/jsmods/evg.c:5720,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/jsmods/evg.c:5721,1
    - Dst: rgb2hsv
      Src: /src/gpac/src/jsmods/evg.c:5722,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/jsmods/evg.c:5724,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/jsmods/evg.c:5725,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/jsmods/evg.c:5726,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/jsmods/evg.c:5727,1
    - Dst: hsv2rgb
      Src: /src/gpac/src/jsmods/evg.c:5728,1
    - Dst: gf_evg_argb_to_ayuv
      Src: /src/gpac/src/jsmods/evg.c:5730,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/jsmods/evg.c:5731,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/jsmods/evg.c:5732,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/jsmods/evg.c:5733,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/jsmods/evg.c:5734,1
    - Dst: gf_evg_ayuv_to_argb
      Src: /src/gpac/src/jsmods/evg.c:5736,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/jsmods/evg.c:5737,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/jsmods/evg.c:5738,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/jsmods/evg.c:5739,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/jsmods/evg.c:5740,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/jsmods/evg.c:5753,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/jsmods/evg.c:5757,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/jsmods/evg.c:5760,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:5761,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:5762,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:5763,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/jsmods/evg.c:5763,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:5766,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5767,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 98
    argCount: 5
    argNames:
    - c
    - obj
    - argc
    - argv
    - conv_type
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5769
      start: 5660
    functionDepth: 5
    functionLinenumber: 5660
    functionLinenumberEnd: 5769
    functionName: texture_convert
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 2
    functionsReached:
    - gf_free
    - rgb2hsv
    - gf_evg_stencil_delete
    - GF_SAFEALLOC
    - gf_evg_stencil_new
    - hsv2rgb
    - GF_COL_G
    - GF_COL_A
    - JS_GetOpaque
    - gf_evg_stencil_set_texture
    - gf_evg_stencil_get_pixel
    - gf_evg_ayuv_to_argb
    - JS_NewObjectClass
    - GF_COL_B
    - js_throw_err_msg
    - GF_COL_R
    - gf_error_to_string
    - gf_malloc
    - js_throw_err
    - JS_SetOpaque
    - gf_pixel_get_size_info
    - GF_JS_EXCEPTION
    - gf_evg_argb_to_ayuv
    linkageType: ''
    returnType: JSValue
    signature: JSValue texture_convert(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv, u32 conv_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: texture_convert
      Src: /src/gpac/src/jsmods/evg.c:5772,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5773
      start: 5770
    functionDepth: 6
    functionLinenumber: 5770
    functionLinenumberEnd: 5773
    functionName: texture_rgb2hsv
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - texture_convert
    linkageType: ''
    returnType: JSValue
    signature: JSValue texture_rgb2hsv(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: texture_convert
      Src: /src/gpac/src/jsmods/evg.c:5776,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5777
      start: 5774
    functionDepth: 6
    functionLinenumber: 5774
    functionLinenumberEnd: 5777
    functionName: texture_hsv2rgb
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - texture_convert
    linkageType: ''
    returnType: JSValue
    signature: JSValue texture_hsv2rgb(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: texture_convert
      Src: /src/gpac/src/jsmods/evg.c:5780,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5781
      start: 5778
    functionDepth: 6
    functionLinenumber: 5778
    functionLinenumberEnd: 5781
    functionName: texture_rgb2yuv
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - texture_convert
    linkageType: ''
    returnType: JSValue
    signature: JSValue texture_rgb2yuv(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: texture_convert
      Src: /src/gpac/src/jsmods/evg.c:5784,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5785
      start: 5782
    functionDepth: 6
    functionLinenumber: 5782
    functionLinenumberEnd: 5785
    functionName: texture_yuv2rgb
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - texture_convert
    linkageType: ''
    returnType: JSValue
    signature: JSValue texture_yuv2rgb(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5793,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5794,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:5796,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5796,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5797,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:5805,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5805,1
    - Dst: GETIT
      Src: /src/gpac/src/jsmods/evg.c:5814,1
    - Dst: GETIT
      Src: /src/gpac/src/jsmods/evg.c:5815,1
    - Dst: GETIT
      Src: /src/gpac/src/jsmods/evg.c:5816,1
    - Dst: GETIT
      Src: /src/gpac/src/jsmods/evg.c:5817,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/evg.c:5821,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:5823,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/evg.c:5830,1
    - Dst: gf_evg_stencil_get_pixel
      Src: /src/gpac/src/jsmods/evg.c:5847,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/jsmods/evg.c:5851,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/jsmods/evg.c:5852,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:5853,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5854,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 54
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5856
      start: 5787
    functionDepth: 3
    functionLinenumber: 5787
    functionLinenumberEnd: 5856
    functionName: texture_split
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - JS_NewObjectClass
    - gf_evg_stencil_set_texture
    - js_throw_err
    - GF_SAFEALLOC
    - JS_GetOpaque
    - gf_evg_stencil_new
    - JS_SetOpaque
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - JS_IsObject
    - gf_evg_stencil_get_pixel
    - GETIT
    linkageType: ''
    returnType: JSValue
    signature: JSValue texture_split(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _var
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5814
      start: 5807
    functionDepth: 0
    functionLinenumber: 5807
    functionLinenumberEnd: 5814
    functionName: GETIT
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GETIT(_name, _var)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5864,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5865,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:5867,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5868,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:5870,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:5871,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:5872,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:5873,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:5874,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:5875,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:5876,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/evg.c:5877,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:5878,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:5879,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5881,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5883,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:5884,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/evg.c:5885,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5886,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:5888,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:5889,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:5890,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:5892,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5893,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/evg.c:5896,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:5900,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:5901,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:5902,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:5905,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/evg.c:5907,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:5909,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/jsmods/evg.c:5914,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/evg.c:5915,1
    - Dst: gf_evg_stencil_get_pixel
      Src: /src/gpac/src/jsmods/evg.c:5937,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/jsmods/evg.c:5939,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/jsmods/evg.c:5940,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/jsmods/evg.c:5941,1
    - Dst: SET_CLAMP
      Src: /src/gpac/src/jsmods/evg.c:5962,1
    - Dst: SET_CLAMP
      Src: /src/gpac/src/jsmods/evg.c:5963,1
    - Dst: SET_CLAMP
      Src: /src/gpac/src/jsmods/evg.c:5964,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:5969,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/jsmods/evg.c:5971,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/jsmods/evg.c:5972,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:5973,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5974,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 93
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5976
      start: 5857
    functionDepth: 5
    functionLinenumber: 5857
    functionLinenumberEnd: 5976
    functionName: texture_convolution
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - gf_evg_stencil_new
    - GF_COL_G
    - JS_GetOpaque
    - JS_IsUndefined
    - JS_IsObject
    - gf_evg_stencil_get_pixel
    - gf_evg_stencil_set_texture
    - JS_NewObjectClass
    - GF_COL_B
    - JS_GetPropertyUint32
    - GF_COL_R
    - JS_ToInt32
    - JS_GetPropertyStr
    - gf_malloc
    - SET_CLAMP
    - js_throw_err
    - JS_FreeValue
    - JS_SetOpaque
    - gf_pixel_get_size_info
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue texture_convolution(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _d
    - ','
    - _s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5961
      start: 5957
    functionDepth: 0
    functionLinenumber: 5957
    functionLinenumberEnd: 5961
    functionName: SET_CLAMP
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_CLAMP(_d, _s)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5987,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:5988,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:5990,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:5993,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:5995,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:6003,1
    - Dst: jsf_is_packet
      Src: /src/gpac/src/jsmods/evg.c:6006,1
    - Dst: jsf_get_filter_packet_planes
      Src: /src/gpac/src/jsmods/evg.c:6007,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:6008,1
    - Dst: wgl_named_texture_upload
      Src: /src/gpac/src/jsmods/evg.c:6017,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/evg.c:6019,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:6023,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:6026,1
    - Dst: gf_evg_stencil_set_texture_planes
      Src: /src/gpac/src/jsmods/evg.c:6037,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:6038,1
    - Dst: gf_assert
      Src: /src/gpac/src/jsmods/evg.c:6040,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/jsmods/evg.c:6041,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:6042,1
    - Dst: gf_pixel_get_nb_comp
      Src: /src/gpac/src/jsmods/evg.c:6046,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/jsmods/evg.c:6047,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 56
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6050
      start: 5978
    functionDepth: 5
    functionLinenumber: 5978
    functionLinenumberEnd: 6050
    functionName: texture_update
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - gf_assert
    - gf_evg_stencil_set_texture
    - js_throw_err
    - JS_GetOpaque
    - JS_FreeValue
    - jsf_is_packet
    - wgl_named_texture_upload
    - JS_IsException
    - jsf_get_filter_packet_planes
    - gf_pixel_get_size_info
    - gf_pixel_get_nb_comp
    - gf_evg_stencil_set_texture_planes
    - GF_JS_EXCEPTION
    - JS_IsObject
    linkageType: ''
    returnType: JSValue
    signature: JSValue texture_update(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:6059,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6060,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:6063,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6063,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:6064,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6064,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:6067,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6067,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:6068,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6068,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:6072,1
    - Dst: gf_evg_stencil_get_pixel_f
      Src: /src/gpac/src/jsmods/evg.c:6075,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/evg.c:6078,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:6079,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:6079,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:6080,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6080,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:6081,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6081,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:6082,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6082,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:6083,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6083,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:6085,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:6086,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6086,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:6087,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6087,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:6088,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6088,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:6089,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6089,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 34
    argCount: 5
    argNames:
    - c
    - obj
    - argc
    - argv
    - is_float
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6092
      start: 6052
    functionDepth: 4
    functionLinenumber: 6052
    functionLinenumberEnd: 6092
    functionName: texture_get_pixel_internal
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - JS_GetOpaque
    - JS_SetPropertyUint32
    - JS_ToBool
    - gf_evg_stencil_get_pixel_f
    - JS_ToInt32
    - JS_ToFloat64
    - JS_NewInt32
    - JS_NewObject
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - JS_NewArray
    linkageType: ''
    returnType: JSValue
    signature: JSValue texture_get_pixel_internal(JSContext *c, JSValueConst obj,
      int argc, JSValueConst *argv, Bool is_float)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: texture_get_pixel_internal
      Src: /src/gpac/src/jsmods/evg.c:6095,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6096
      start: 6093
    functionDepth: 5
    functionLinenumber: 6093
    functionLinenumberEnd: 6096
    functionName: texture_get_pixel
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - texture_get_pixel_internal
    linkageType: ''
    returnType: JSValue
    signature: JSValue texture_get_pixel(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: texture_get_pixel_internal
      Src: /src/gpac/src/jsmods/evg.c:6100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6101
      start: 6098
    functionDepth: 5
    functionLinenumber: 6098
    functionLinenumberEnd: 6101
    functionName: texture_get_pixelf
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - texture_get_pixel_internal
    linkageType: ''
    returnType: JSValue
    signature: JSValue texture_get_pixelf(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/jsmods/evg.c:6111,1
    - Dst: gf_img_parse
      Src: /src/gpac/src/jsmods/evg.c:6112,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/jsmods/evg.c:6113,1
    - Dst: gf_img_png_dec
      Src: /src/gpac/src/jsmods/evg.c:6117,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/evg.c:6121,1
    - Dst: gf_img_png_dec
      Src: /src/gpac/src/jsmods/evg.c:6122,1
    - Dst: gf_img_jpeg_dec
      Src: /src/gpac/src/jsmods/evg.c:6131,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/evg.c:6135,1
    - Dst: gf_img_jpeg_dec
      Src: /src/gpac/src/jsmods/evg.c:6136,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:6144,1
    - Dst: gf_pixel_get_nb_comp
      Src: /src/gpac/src/jsmods/evg.c:6149,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/jsmods/evg.c:6150,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/jsmods/evg.c:6151,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 46
    argCount: 4
    argNames:
    - c
    - tx
    - data
    - size
    argTypes:
    - JSContext*
    - GF_JSTexture*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6159
      start: 6103
    functionDepth: 5
    functionLinenumber: 6103
    functionLinenumberEnd: 6159
    functionName: texture_load_data
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_img_parse
    - gf_img_jpeg_dec
    - gf_bs_new
    - gf_bs_del
    - gf_pixel_get_size_info
    - gf_pixel_get_nb_comp
    - gf_evg_stencil_set_texture
    - gf_malloc
    - gf_img_png_dec
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err texture_load_data(JSContext *c, GF_JSTexture *tx, u8 *data,
      u32 size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: jsf_get_script_filename
      Src: /src/gpac/src/jsmods/evg.c:6169,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/jsmods/evg.c:6170,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/evg.c:6173,1
    - Dst: gf_opts_default_shared_directory
      Src: /src/gpac/src/jsmods/evg.c:6174,1
    - Dst: strcat
      Src: /src/gpac/src/jsmods/evg.c:6175,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/jsmods/evg.c:6178,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/jsmods/evg.c:6178,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:6179,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:6182,1
    - Dst: texture_load_data
      Src: /src/gpac/src/jsmods/evg.c:6183,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:6184,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 4
    argNames:
    - c
    - tx
    - fileName
    - rel_to_script
    argTypes:
    - JSContext*
    - GF_JSTexture*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6186
      start: 6160
    functionDepth: 6
    functionLinenumber: 6160
    functionLinenumberEnd: 6186
    functionName: texture_load_file
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_free
    - texture_load_data
    - gf_file_exists
    - gf_url_concatenate
    - strncmp
    - gf_opts_default_shared_directory
    - jsf_get_script_filename
    - gf_file_load_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err texture_load_file(JSContext *c, GF_JSTexture *tx, const char
      *fileName, Bool rel_to_script)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:6191,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6192,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/evg.c:6194,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:6197,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:6198,1
    - Dst: texture_load_file
      Src: /src/gpac/src/jsmods/evg.c:6199,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:6201,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/jsmods/evg.c:6201,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:6203,1
    - Dst: JS_IsArrayBuffer
      Src: /src/gpac/src/jsmods/evg.c:6206,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/evg.c:6208,1
    - Dst: texture_load_data
      Src: /src/gpac/src/jsmods/evg.c:6212,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:6215,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/jsmods/evg.c:6215,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6220,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6221
      start: 6188
    functionDepth: 7
    functionLinenumber: 6188
    functionLinenumberEnd: 6221
    functionName: texture_load
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - texture_load_data
    - JS_GetOpaque
    - JS_IsArrayBuffer
    - js_throw_err_msg
    - JS_ToBool
    - gf_error_to_string
    - JS_GetArrayBuffer
    - GF_JS_EXCEPTION
    - texture_load_file
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue texture_load(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:6225,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6226,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:6229,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:6230,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/evg.c:6231,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:6232,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6235
      start: 6223
    functionDepth: 1
    functionLinenumber: 6223
    functionLinenumberEnd: 6235
    functionName: texture_set_named
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - gf_strdup
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue texture_set_named(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:6241,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6242,1
    - Dst: get_color_from_args
      Src: /src/gpac/src/jsmods/evg.c:6245,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6246,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/jsmods/evg.c:6252,1
    - Dst: gf_evg_stencil_set_pad_color
      Src: /src/gpac/src/jsmods/evg.c:6254,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:6256,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/jsmods/evg.c:6256,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6259
      start: 6237
    functionDepth: 3
    functionLinenumber: 6237
    functionLinenumberEnd: 6259
    functionName: texture_set_pad_color
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_evg_stencil_set_pad_color
    - JS_GetOpaque
    - js_throw_err_msg
    - get_color_from_args
    - GF_COL_ARGB
    - gf_error_to_string
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue texture_set_pad_color(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:6265,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6266,1
    - Dst: gf_evg_stencil_get_pad_color
      Src: /src/gpac/src/jsmods/evg.c:6268,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/evg.c:6269,1
    - Dst: sprintf
      Src: /src/gpac/src/jsmods/evg.c:6270,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/jsmods/evg.c:6270,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/jsmods/evg.c:6270,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/jsmods/evg.c:6270,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/jsmods/evg.c:6270,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/evg.c:6271,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6272
      start: 6261
    functionDepth: 1
    functionLinenumber: 6261
    functionLinenumberEnd: 6272
    functionName: texture_get_pad_color
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - GF_COL_G
    - GF_COL_B
    - GF_COL_A
    - JS_GetOpaque
    - sprintf
    - JS_NewString
    - GF_COL_R
    - gf_evg_stencil_get_pad_color
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue texture_get_pad_color(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:6285,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6286,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:6287,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6288,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6290,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6291,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6292,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/evg.c:6296,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:6297,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/evg.c:6298,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/evg.c:6299,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:6301,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:6303,1
    - Dst: gf_pixel_fmt_is_yuv
      Src: /src/gpac/src/jsmods/evg.c:6309,1
    - Dst: gf_pixel_fmt_is_transparent
      Src: /src/gpac/src/jsmods/evg.c:6313,1
    - Dst: gf_evg_stencil_get_pixel_fast
      Src: /src/gpac/src/jsmods/evg.c:6321,1
    - Dst: gf_evg_stencil_get_pixel_fast
      Src: /src/gpac/src/jsmods/evg.c:6322,1
    - Dst: gf_evg_stencil_get_pixel_fast
      Src: /src/gpac/src/jsmods/evg.c:6324,1
    - Dst: gf_evg_stencil_get_pixel_fast
      Src: /src/gpac/src/jsmods/evg.c:6325,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/jsmods/evg.c:6327,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/jsmods/evg.c:6328,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/jsmods/evg.c:6336,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/jsmods/evg.c:6337,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/jsmods/evg.c:6347,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/jsmods/evg.c:6348,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/jsmods/evg.c:6355,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/jsmods/evg.c:6356,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/evg.c:6404,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/evg.c:6405,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6405,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:6406,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/evg.c:6407,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6407,1
    - Dst: FCLAMP
      Src: /src/gpac/src/jsmods/evg.c:6411,1
    - Dst: FCLAMP
      Src: /src/gpac/src/jsmods/evg.c:6412,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:6413,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6413,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:6414,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6414,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:6415,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/evg.c:6419,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/evg.c:6420,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6420,1
    - Dst: FCLAMP
      Src: /src/gpac/src/jsmods/evg.c:6421,1
    - Dst: FCLAMP
      Src: /src/gpac/src/jsmods/evg.c:6422,1
    - Dst: FCLAMP
      Src: /src/gpac/src/jsmods/evg.c:6423,1
    - Dst: FCLAMP
      Src: /src/gpac/src/jsmods/evg.c:6424,1
    - Dst: FCLAMP
      Src: /src/gpac/src/jsmods/evg.c:6425,1
    - Dst: FCLAMP
      Src: /src/gpac/src/jsmods/evg.c:6426,1
    - Dst: FCLAMP
      Src: /src/gpac/src/jsmods/evg.c:6427,1
    - Dst: FCLAMP
      Src: /src/gpac/src/jsmods/evg.c:6428,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:6430,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/evg.c:6431,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6431,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:6432,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6432,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:6433,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6433,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:6434,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:6436,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/evg.c:6437,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6437,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:6438,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6438,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:6439,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6439,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:6440,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:6442,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/evg.c:6443,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6443,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:6444,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6444,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:6445,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6445,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:6446,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:6449,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/evg.c:6450,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6450,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:6451,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6451,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:6452,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6452,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:6453,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 155
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6456
      start: 6276
    functionDepth: 1
    functionLinenumber: 6276
    functionLinenumberEnd: 6456
    functionName: texture_diff_score
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewArray
    - JS_FreeCString
    - JS_ToCString
    - JS_IsString
    - GF_COL_G
    - gf_pixel_fmt_is_yuv
    - GF_COL_A
    - JS_NewFloat64
    - JS_GetOpaque
    - JS_SetPropertyUint32
    - JS_ToBool
    - GF_COL_B
    - strstr
    - GF_COL_R
    - gf_evg_stencil_get_pixel_fast
    - JS_IsException
    - gf_pixel_fmt_is_transparent
    - FCLAMP
    - JS_NewObject
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    linkageType: ''
    returnType: JSValue
    signature: JSValue texture_diff_score(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6402
      start: 6398
    functionDepth: 0
    functionLinenumber: 6398
    functionLinenumberEnd: 6402
    functionName: FCLAMP
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FCLAMP(_v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_try_lock
      Src: /src/gpac/src/jsmods/evg.c:6500,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/evg.c:6501,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:6505,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:6506,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/evg.c:6507,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:6508,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:6509,1
    - Dst: GETCOMP
      Src: /src/gpac/src/jsmods/evg.c:6521,1
    - Dst: GETCOMP
      Src: /src/gpac/src/jsmods/evg.c:6522,1
    - Dst: GETCOMP
      Src: /src/gpac/src/jsmods/evg.c:6523,1
    - Dst: GETCOMP
      Src: /src/gpac/src/jsmods/evg.c:6524,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:6527,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/evg.c:6529,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 7
    argNames:
    - cbk
    - x
    - y
    - r
    - g
    - b
    - a
    argTypes:
    - void*
    - u32
    - u32
    - Float*
    - Float*
    - Float*
    - Float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6530
      start: 6494
    functionDepth: 1
    functionLinenumber: 6494
    functionLinenumberEnd: 6530
    functionName: evg_param_tex_callback
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_FreeValue
    - GF_LOG
    - GETCOMP
    - gf_js_try_lock
    - gf_js_lock
    - JS_NewInt32
    linkageType: ''
    returnType: void
    signature: void evg_param_tex_callback(void *cbk, u32 x, u32 y, Float *r, Float
      *g, Float *b, Float *a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _comp
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6521
      start: 6513
    functionDepth: 0
    functionLinenumber: 6513
    functionLinenumberEnd: 6521
    functionName: GETCOMP
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GETCOMP(_comp)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/evg.c:6544,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:6546,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/jsmods/evg.c:6547,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:6549,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6550,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/evg.c:6557,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:6560,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:6561,1
    - Dst: texture_load_file
      Src: /src/gpac/src/jsmods/evg.c:6562,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:6563,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/jsmods/evg.c:6565,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:6566,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:6567,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/jsmods/evg.c:6567,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:6571,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:6574,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:6582,1
    - Dst: jsf_is_packet
      Src: /src/gpac/src/jsmods/evg.c:6585,1
    - Dst: jsf_get_filter_packet_planes
      Src: /src/gpac/src/jsmods/evg.c:6586,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/jsmods/evg.c:6590,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/evg.c:6593,1
    - Dst: texture_load_data
      Src: /src/gpac/src/jsmods/evg.c:6595,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/jsmods/evg.c:6597,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:6598,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:6599,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/jsmods/evg.c:6599,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:6601,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:6611,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:6612,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/evg.c:6613,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:6614,1
    - Dst: gf_pixel_fmt_parse
      Src: /src/gpac/src/jsmods/evg.c:6615,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:6616,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:6617,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/evg.c:6620,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:6623,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/evg.c:6624,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/evg.c:6627,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:6631,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:6634,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:6639,1
    - Dst: gf_evg_stencil_set_texture_planes
      Src: /src/gpac/src/jsmods/evg.c:6651,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/jsmods/evg.c:6654,1
    - Dst: gf_evg_stencil_set_texture_parametric
      Src: /src/gpac/src/jsmods/evg.c:6658,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:6660,1
    - Dst: gf_pixel_get_nb_comp
      Src: /src/gpac/src/jsmods/evg.c:6666,1
    - Dst: gf_pixel_is_wide_depth
      Src: /src/gpac/src/jsmods/evg.c:6667,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/jsmods/evg.c:6668,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:6670,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/evg.c:6671,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:6672,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/jsmods/evg.c:6677,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:6678,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:6679,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 147
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6680
      start: 6532
    functionDepth: 7
    functionLinenumber: 6532
    functionLinenumberEnd: 6680
    functionName: texture_constructor
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_evg_stencil_delete
    - texture_load_data
    - GF_SAFEALLOC
    - gf_pixel_fmt_parse
    - gf_evg_stencil_new
    - gf_pixel_get_nb_comp
    - gf_evg_stencil_set_texture_planes
    - gf_evg_stencil_set_texture_parametric
    - JS_FreeCString
    - JS_ToCString
    - JS_IsString
    - JS_DupValue
    - JS_GetOpaque
    - jsf_is_packet
    - JS_IsUndefined
    - JS_ToBool
    - gf_pixel_is_wide_depth
    - JS_IsObject
    - gf_evg_stencil_set_texture
    - texture_load_file
    - JS_NewObjectClass
    - JS_IsFunction
    - js_throw_err_msg
    - JS_ToInt32
    - gf_error_to_string
    - js_throw_err
    - JS_IsException
    - JS_SetOpaque
    - jsf_get_filter_packet_planes
    - gf_pixel_get_size_info
    - GF_JS_EXCEPTION
    - JS_GetArrayBuffer
    linkageType: ''
    returnType: JSValue
    signature: JSValue texture_constructor(JSContext *c, JSValueConst new_target,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:6684,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - this_obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6687
      start: 6682
    functionDepth: 1
    functionLinenumber: 6682
    functionLinenumberEnd: 6687
    functionName: js_evg_is_texture
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached:
    - JS_GetOpaque
    linkageType: ''
    returnType: Bool
    signature: Bool js_evg_is_texture(JSContext *ctx, JSValue this_obj)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:6691,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 11
    argNames:
    - ctx
    - this_obj
    - width
    - height
    - pixfmt
    - p_data
    - stride
    - p_u
    - p_v
    - stride_uv
    - p_a
    argTypes:
    - JSContext*
    - JSValue
    - u32*
    - u32*
    - u32*
    - u8**
    - u32*
    - u8**
    - u8**
    - u32*
    - u8**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6704
      start: 6689
    functionDepth: 1
    functionLinenumber: 6689
    functionLinenumberEnd: 6704
    functionName: js_evg_get_texture_info
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 2
    functionsReached:
    - JS_GetOpaque
    linkageType: ''
    returnType: Bool
    signature: Bool js_evg_get_texture_info(JSContext *ctx, JSValue this_obj, u32
      *width, u32 *height, u32 *pixfmt, u8 **p_data, u32 *stride, u8 **p_u, u8 **p_v,
      u32 *stride_uv, u8 **p_a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:6709,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - this_obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6712
      start: 6707
    functionDepth: 1
    functionLinenumber: 6707
    functionLinenumberEnd: 6712
    functionName: js_evg_get_texture_named
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached:
    - JS_GetOpaque
    linkageType: ''
    returnType: char
    signature: char *js_evg_get_texture_named(JSContext *ctx, JSValue this_obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:6716,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctx
    - this_obj
    - gl_named_tx
    argTypes:
    - JSContext*
    - JSValue
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6720
      start: 6714
    functionDepth: 1
    functionLinenumber: 6714
    functionLinenumberEnd: 6720
    functionName: js_evg_set_named_texture_gl
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached:
    - JS_GetOpaque
    linkageType: ''
    returnType: void
    signature: void js_evg_set_named_texture_gl(JSContext *ctx, JSValue this_obj,
      void *gl_named_tx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_del
      Src: /src/gpac/src/jsmods/evg.c:6726,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/evg.c:6728,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/jsmods/evg.c:6729,1
    - Dst: gf_font_manager_delete_span
      Src: /src/gpac/src/jsmods/evg.c:6730,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - txt
    argTypes:
    - GF_JSText*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6733
      start: 6724
    functionDepth: 3
    functionLinenumber: 6724
    functionLinenumberEnd: 6733
    functionName: text_reset
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_pop_back
    - gf_path_del
    - gf_font_manager_delete_span
    linkageType: ''
    returnType: void
    signature: void text_reset(GF_JSText *txt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:6740,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:6742,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - txt
    argTypes:
    - GF_JSText*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6746
      start: 6735
    functionDepth: 0
    functionLinenumber: 6735
    functionLinenumberEnd: 6746
    functionName: text_reset_fonts
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void text_reset_fonts(GF_JSText *txt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:6750,1
    - Dst: text_reset
      Src: /src/gpac/src/jsmods/evg.c:6752,1
    - Dst: text_reset_fonts
      Src: /src/gpac/src/jsmods/evg.c:6753,1
    - Dst: gf_list_del
      Src: /src/gpac/src/jsmods/evg.c:6754,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:6755,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6756
      start: 6748
    functionDepth: 4
    functionLinenumber: 6748
    functionLinenumberEnd: 6756
    functionName: text_finalize
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - text_reset
    - JS_GetOpaque
    - gf_list_del
    - text_reset_fonts
    linkageType: ''
    returnType: void
    signature: void text_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:6794,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6795,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/evg.c:6800,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:6801,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:6801,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:6803,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/evg.c:6803,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:6807,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:6808,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6809,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/evg.c:6810,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/evg.c:6811,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6812,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:6813,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/evg.c:6814,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/evg.c:6815,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/evg.c:6816,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/evg.c:6817,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/evg.c:6818,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 37
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6821
      start: 6792
    functionDepth: 1
    functionLinenumber: 6792
    functionLinenumberEnd: 6821
    functionName: text_getProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - JS_GetOpaque
    - JS_SetPropertyUint32
    - JS_NewString
    - JS_NewBool
    - JS_NewInt32
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - JS_NewArray
    linkageType: ''
    returnType: JSValue
    signature: JSValue text_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_path_del
      Src: /src/gpac/src/jsmods/evg.c:6832,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:6839,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:6841,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:6843,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:6845,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:6846,1
    - Dst: gf_divfix
      Src: /src/gpac/src/jsmods/evg.c:6849,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:6849,1
    - Dst: INT2FIX
      Src: /src/gpac/src/jsmods/evg.c:6849,1
    - Dst: gf_path_new
      Src: /src/gpac/src/jsmods/evg.c:6863,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/evg.c:6864,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/evg.c:6870,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/jsmods/evg.c:6889,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/jsmods/evg.c:6891,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/jsmods/evg.c:6893,1
    - Dst: gf_font_span_create_path
      Src: /src/gpac/src/jsmods/evg.c:6904,1
    - Dst: gf_path_add_subpath
      Src: /src/gpac/src/jsmods/evg.c:6905,1
    - Dst: gf_path_del
      Src: /src/gpac/src/jsmods/evg.c:6906,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 69
    argCount: 2
    argNames:
    - txt
    - for_centered
    argTypes:
    - GF_JSText*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6918
      start: 6824
    functionDepth: 3
    functionLinenumber: 6824
    functionLinenumberEnd: 6918
    functionName: text_update_path
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_list_get
    - INT2FIX
    - gf_mx2d_add_translation
    - gf_path_add_subpath
    - gf_path_new
    - gf_divfix
    - gf_path_del
    - gf_font_span_create_path
    - gf_mx2d_add_scale
    - gf_list_count
    - gf_mx2d_init
    linkageType: ''
    returnType: void
    signature: void text_update_path(GF_JSText *txt, Bool for_centered)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: text_update_path
      Src: /src/gpac/src/jsmods/evg.c:6922,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/jsmods/evg.c:6923,1
    - Dst: gf_evg_surface_force_aa
      Src: /src/gpac/src/jsmods/evg.c:6924,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - canvas
    - txt
    argTypes:
    - GF_JSCanvas*
    - GF_JSText*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6925
      start: 6920
    functionDepth: 4
    functionLinenumber: 6920
    functionLinenumberEnd: 6925
    functionName: text_set_path
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached:
    - text_update_path
    - gf_evg_surface_force_aa
    - gf_evg_surface_set_path
    linkageType: ''
    returnType: void
    signature: void text_set_path(GF_JSCanvas *canvas, GF_JSText *txt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:6930,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/evg.c:6934,1
    - Dst: gf_font_manager_create_span
      Src: /src/gpac/src/jsmods/evg.c:6936,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:6936,1
    - Dst: gf_list_add
      Src: /src/gpac/src/jsmods/evg.c:6940,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:6947,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 4
    argNames:
    - txt
    - font
    - c
    - value
    argTypes:
    - GF_JSText*
    - GF_Font*
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6948
      start: 6928
    functionDepth: 1
    functionLinenumber: 6928
    functionLinenumberEnd: 6948
    functionName: text_set_text_from_value
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_ToCString
    - gf_font_manager_create_span
    - gf_list_add
    - strchr
    - JS_FreeCString
    linkageType: ''
    returnType: void
    signature: void text_set_text_from_value(GF_JSText *txt, GF_Font *font, JSContext
      *c, JSValueConst value)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:6954,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6955,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:6956,1
    - Dst: text_update_path
      Src: /src/gpac/src/jsmods/evg.c:6958,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:6960,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:6961,1
    - Dst: gf_path_clone
      Src: /src/gpac/src/jsmods/evg.c:6961,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6963
      start: 6950
    functionDepth: 4
    functionLinenumber: 6950
    functionLinenumberEnd: 6963
    functionName: text_get_path
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - gf_path_clone
    - JS_GetOpaque
    - JS_SetOpaque
    - JS_ToBool
    - GF_JS_EXCEPTION
    - text_update_path
    linkageType: ''
    returnType: JSValue
    signature: JSValue text_get_path(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:6968,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:6969,1
    - Dst: text_reset
      Src: /src/gpac/src/jsmods/evg.c:6970,1
    - Dst: gf_font_manager_set_font
      Src: /src/gpac/src/jsmods/evg.c:6973,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:6975,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/jsmods/evg.c:6979,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:6980,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:6981,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:6982,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:6985,1
    - Dst: text_set_text_from_value
      Src: /src/gpac/src/jsmods/evg.c:6986,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:6987,1
    - Dst: text_set_text_from_value
      Src: /src/gpac/src/jsmods/evg.c:6990,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/evg.c:6994,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/evg.c:6996,1
    - Dst: gf_font_manager_refresh_span_bounds
      Src: /src/gpac/src/jsmods/evg.c:6997,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:6998,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 49
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7024
      start: 6965
    functionDepth: 4
    functionLinenumber: 6965
    functionLinenumberEnd: 7024
    functionName: text_set_text
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_font_manager_refresh_span_bounds
    - text_reset
    - gf_list_get
    - FLT2FIX
    - JS_IsArray
    - JS_GetOpaque
    - JS_FreeValue
    - JS_GetPropertyUint32
    - js_throw_err_msg
    - text_set_text_from_value
    - gf_list_count
    - JS_ToInt32
    - JS_GetPropertyStr
    - gf_font_manager_set_font
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue text_set_text(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7029,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7030,1
    - Dst: text_reset_fonts
      Src: /src/gpac/src/jsmods/evg.c:7035,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/jsmods/evg.c:7036,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7038,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:7039,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:7040,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7041,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:7043,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/evg.c:7045,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:7047,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:7048,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/evg.c:7049,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:7050,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:7051,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/evg.c:7055,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:7056,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/evg.c:7057,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:7058,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:7063,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7063,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:7066,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7066,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:7069,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7069,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:7072,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:7075,1
    - Dst: TOG_FLAG
      Src: /src/gpac/src/jsmods/evg.c:7085,1
    - Dst: TOG_FLAG
      Src: /src/gpac/src/jsmods/evg.c:7088,1
    - Dst: TOG_FLAG
      Src: /src/gpac/src/jsmods/evg.c:7091,1
    - Dst: TOG_FLAG
      Src: /src/gpac/src/jsmods/evg.c:7094,1
    - Dst: TOG_FLAG
      Src: /src/gpac/src/jsmods/evg.c:7097,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:7102,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:7105,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 71
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7109
      start: 7026
    functionDepth: 1
    functionLinenumber: 7026
    functionLinenumberEnd: 7109
    functionName: text_setProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - gf_strdup
    - JS_IsArray
    - JS_GetOpaque
    - JS_FreeValue
    - JS_GetPropertyUint32
    - JS_ToBool
    - JS_ToInt32
    - JS_GetPropertyStr
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - TOG_FLAG
    - gf_malloc
    - JS_FreeCString
    - text_reset_fonts
    linkageType: ''
    returnType: JSValue
    signature: JSValue text_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7083
      start: 7077
    functionDepth: 0
    functionLinenumber: 7077
    functionLinenumberEnd: 7083
    functionName: TOG_FLAG
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TOG_FLAG(_val)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7114,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7115,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:7116,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7119,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:7119,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7120,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:7120,1
    - Dst: gf_path_del
      Src: /src/gpac/src/jsmods/evg.c:7123,1
    - Dst: text_update_path
      Src: /src/gpac/src/jsmods/evg.c:7125,1
    - Dst: gf_path_get_bounds
      Src: /src/gpac/src/jsmods/evg.c:7126,1
    - Dst: gf_path_del
      Src: /src/gpac/src/jsmods/evg.c:7127,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7129,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:7129,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7130,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:7130,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7133,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/evg.c:7133,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7135,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7135,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7136,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7136,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7137,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7137,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7138,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7138,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7139,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7139,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7140,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7140,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7141,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7141,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7142,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7142,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 31
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7145
      start: 7111
    functionDepth: 4
    functionLinenumber: 7111
    functionLinenumberEnd: 7145
    functionName: text_measure
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - JS_GetOpaque
    - gf_path_del
    - JS_NewBool
    - JS_NewInt32
    - JS_NewObject
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - text_update_path
    - gf_path_get_bounds
    linkageType: ''
    returnType: JSValue
    signature: JSValue text_measure(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/evg.c:7173,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:7175,1
    - Dst: jsf_get_font_manager
      Src: /src/gpac/src/jsmods/evg.c:7176,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:7179,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:7180,1
    - Dst: gf_list_new
      Src: /src/gpac/src/jsmods/evg.c:7182,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:7184,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7185,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:7193,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/evg.c:7194,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7195,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7197
      start: 7169
    functionDepth: 2
    functionLinenumber: 7169
    functionLinenumberEnd: 7197
    functionName: text_constructor
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_NewObjectClass
    - gf_list_new
    - js_throw_err
    - GF_SAFEALLOC
    - JS_IsException
    - JS_SetOpaque
    - js_throw_err_msg
    - jsf_get_font_manager
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue text_constructor(JSContext *c, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7218,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:7219,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7220
      start: 7216
    functionDepth: 1
    functionLinenumber: 7216
    functionLinenumberEnd: 7220
    functionName: mx_finalize
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_free
    linkageType: ''
    returnType: void
    signature: void mx_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7234
      start: 7227
    functionDepth: 0
    functionLinenumber: 7227
    functionLinenumberEnd: 7234
    functionName: MAKEVEC
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAKEVEC(_v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7242
      start: 7234
    functionDepth: 0
    functionLinenumber: 7234
    functionLinenumberEnd: 7242
    functionName: MAKEVEC4
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAKEVEC4(_v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7250
      start: 7242
    functionDepth: 0
    functionLinenumber: 7242
    functionLinenumberEnd: 7250
    functionName: MAKERECT
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAKERECT(_v)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7257,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7258,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/evg.c:7261,1
    - Dst: gf_mx_is_identity
      Src: /src/gpac/src/jsmods/evg.c:7261,1
    - Dst: gf_mx_get_yaw_pitch_roll
      Src: /src/gpac/src/jsmods/evg.c:7265,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:7266,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:7266,1
    - Dst: gf_mx_get_yaw_pitch_roll
      Src: /src/gpac/src/jsmods/evg.c:7268,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:7269,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:7269,1
    - Dst: gf_mx_get_yaw_pitch_roll
      Src: /src/gpac/src/jsmods/evg.c:7271,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:7272,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/evg.c:7272,1
    - Dst: gf_mx_decompose
      Src: /src/gpac/src/jsmods/evg.c:7275,1
    - Dst: MAKEVEC
      Src: /src/gpac/src/jsmods/evg.c:7276,1
    - Dst: gf_mx_decompose
      Src: /src/gpac/src/jsmods/evg.c:7279,1
    - Dst: MAKEVEC
      Src: /src/gpac/src/jsmods/evg.c:7280,1
    - Dst: gf_mx_decompose
      Src: /src/gpac/src/jsmods/evg.c:7283,1
    - Dst: MAKEVEC4
      Src: /src/gpac/src/jsmods/evg.c:7284,1
    - Dst: gf_mx_decompose
      Src: /src/gpac/src/jsmods/evg.c:7287,1
    - Dst: MAKEVEC
      Src: /src/gpac/src/jsmods/evg.c:7288,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/evg.c:7291,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:7293,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/evg.c:7293,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 36
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7297
      start: 7250
    functionDepth: 5
    functionLinenumber: 7250
    functionLinenumberEnd: 7297
    functionName: mx_getProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - JS_GetOpaque
    - gf_mx_is_identity
    - JS_NewArray
    - JS_SetPropertyUint32
    - MAKEVEC
    - JS_NewBool
    - MAKEVEC4
    - gf_mx_get_yaw_pitch_roll
    - GF_JS_EXCEPTION
    - gf_mx_decompose
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx_getProperty(JSContext *ctx, JSValueConst this_val, int magic)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7303,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7304,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/jsmods/evg.c:7309,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/jsmods/evg.c:7312,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7312,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7313,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:7315,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:7316,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7317,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/jsmods/evg.c:7320,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:7321,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:7322,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7323,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 4
    argNames:
    - ctx
    - this_val
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7328
      start: 7299
    functionDepth: 1
    functionLinenumber: 7299
    functionLinenumberEnd: 7328
    functionName: mx_setProperty
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_IsArray
    - JS_GetOpaque
    - JS_FreeValue
    - JS_GetPropertyUint32
    - gf_mx_init
    - JS_ToInt32
    - JS_GetPropertyStr
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx_setProperty(JSContext *ctx, JSValueConst this_val, JSValueConst
      value, int magic)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7334,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7336,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7338,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7340,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/jsmods/evg.c:7341,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:7342,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/evg.c:7344,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7345,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:7346,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7347,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/jsmods/evg.c:7348,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7350
      start: 7331
    functionDepth: 1
    functionLinenumber: 7331
    functionLinenumberEnd: 7350
    functionName: mx_copy
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 71
    functionsReached:
    - JS_NewObjectClass
    - JS_DupValue
    - GF_SAFEALLOC
    - JS_GetOpaque
    - JS_SetOpaque
    - gf_mx_copy
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx_copy(JSContext *ctx, JSValueConst this_val, int argc, JSValueConst
      *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7353,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7354,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7355,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7356,1
    - Dst: gf_mx_equal
      Src: /src/gpac/src/jsmods/evg.c:7357,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7359
      start: 7351
    functionDepth: 1
    functionLinenumber: 7351
    functionLinenumberEnd: 7359
    functionName: mx_equal
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 3
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - gf_mx_equal
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx_equal(JSContext *ctx, JSValueConst this_val, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _x
    - ','
    - _y
    - ','
    - _z
    - ','
    - _arg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7374
      start: 7361
    functionDepth: 0
    functionLinenumber: 7361
    functionLinenumberEnd: 7374
    functionName: WGL_GET_VEC3
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WGL_GET_VEC3(_x, _y, _z, _arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _v
    - ','
    - _arg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7392
      start: 7375
    functionDepth: 0
    functionLinenumber: 7375
    functionLinenumberEnd: 7392
    functionName: WGL_GET_VEC3F
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WGL_GET_VEC3F(_v, _arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - _x
    - ','
    - _y
    - ','
    - _z
    - ','
    - _q
    - ','
    - _arg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7411
      start: 7393
    functionDepth: 0
    functionLinenumber: 7393
    functionLinenumberEnd: 7411
    functionName: WGL_GET_VEC4
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WGL_GET_VEC4(_x, _y, _z, _q, _arg)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7416,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7417,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:7418,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7419,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7420,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7421,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7423,1
    - Dst: WGL_GET_VEC3
      Src: /src/gpac/src/jsmods/evg.c:7428,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/jsmods/evg.c:7430,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7430,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7430,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7430,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:7431,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7432
      start: 7413
    functionDepth: 1
    functionLinenumber: 7413
    functionLinenumberEnd: 7432
    functionName: mx_translate
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_DupValue
    - JS_GetOpaque
    - WGL_GET_VEC3
    - gf_mx_add_translation
    - EVG_GET_FLOAT
    - GF_JS_EXCEPTION
    - JS_IsObject
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx_translate(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7436,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7437,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:7438,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7439,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7440,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7441,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7442,1
    - Dst: WGL_GET_VEC3
      Src: /src/gpac/src/jsmods/evg.c:7444,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/jsmods/evg.c:7446,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7446,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7446,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7446,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:7447,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7448
      start: 7433
    functionDepth: 1
    functionLinenumber: 7433
    functionLinenumberEnd: 7448
    functionName: mx_scale
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_DupValue
    - JS_GetOpaque
    - WGL_GET_VEC3
    - EVG_GET_FLOAT
    - GF_JS_EXCEPTION
    - gf_mx_add_scale
    - JS_IsObject
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx_scale(JSContext *ctx, JSValueConst this_val, int argc, JSValueConst
      *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7452,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7453,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:7454,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7455,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7456,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7457,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7458,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7459,1
    - Dst: WGL_GET_VEC4
      Src: /src/gpac/src/jsmods/evg.c:7461,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/jsmods/evg.c:7463,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7463,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7463,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7463,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7463,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:7464,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7465
      start: 7449
    functionDepth: 3
    functionLinenumber: 7449
    functionLinenumberEnd: 7465
    functionName: mx_rotate
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - JS_DupValue
    - JS_GetOpaque
    - gf_mx_add_rotation
    - WGL_GET_VEC4
    - EVG_GET_FLOAT
    - GF_JS_EXCEPTION
    - JS_IsObject
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx_rotate(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7469,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7471,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7472,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7475,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7477,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/evg.c:7479,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7481,1
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/jsmods/evg.c:7482,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:7485,1
    - Dst: gf_mx_add_matrix_4x4
      Src: /src/gpac/src/jsmods/evg.c:7486,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/jsmods/evg.c:7488,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/evg.c:7490,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:7492,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7493
      start: 7466
    functionDepth: 2
    functionLinenumber: 7466
    functionLinenumberEnd: 7493
    functionName: mx_add
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_DupValue
    - GF_SAFEALLOC
    - JS_GetOpaque
    - gf_mx_from_mx2d
    - JS_ToBool
    - gf_mx_add_matrix
    - GF_JS_EXCEPTION
    - gf_mx_add_matrix_4x4
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx_add(JSContext *ctx, JSValueConst this_val, int argc, JSValueConst
      *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7497,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7498,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:7499,1
    - Dst: gf_mx_inverse_4x4
      Src: /src/gpac/src/jsmods/evg.c:7500,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/jsmods/evg.c:7502,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:7504,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7505
      start: 7495
    functionDepth: 2
    functionLinenumber: 7495
    functionLinenumberEnd: 7505
    functionName: mx_inverse
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 17
    functionsReached:
    - JS_DupValue
    - JS_GetOpaque
    - JS_ToBool
    - gf_mx_inverse
    - GF_JS_EXCEPTION
    - gf_mx_inverse_4x4
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx_inverse(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7509,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7510,1
    - Dst: gf_mx_transpose
      Src: /src/gpac/src/jsmods/evg.c:7511,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:7512,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7513
      start: 7507
    functionDepth: 2
    functionLinenumber: 7507
    functionLinenumberEnd: 7513
    functionName: mx_transpose
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 3
    functionsReached:
    - JS_GetOpaque
    - JS_DupValue
    - GF_JS_EXCEPTION
    - gf_mx_transpose
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx_transpose(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7521,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7522,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/evg.c:7523,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7523,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7526,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/evg.c:7527,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7528,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/evg.c:7530,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7532,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:7533,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7534,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/evg.c:7535,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7536,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7537,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:7538,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7539,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7540,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:7541,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7542,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7543,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:7544,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7545,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7546,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7547,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7548,1
    - Dst: gf_mx_apply_rect
      Src: /src/gpac/src/jsmods/evg.c:7549,1
    - Dst: MAKERECT
      Src: /src/gpac/src/jsmods/evg.c:7550,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:7552,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7554,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/evg.c:7555,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7555,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/evg.c:7556,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7556,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/evg.c:7557,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/evg.c:7559,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7559,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7560,1
    - Dst: WGL_GET_VEC3F
      Src: /src/gpac/src/jsmods/evg.c:7562,1
    - Dst: gf_mx_apply_vec_4x4
      Src: /src/gpac/src/jsmods/evg.c:7563,1
    - Dst: MAKEVEC4
      Src: /src/gpac/src/jsmods/evg.c:7564,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:7566,1
    - Dst: WGL_GET_VEC3F
      Src: /src/gpac/src/jsmods/evg.c:7571,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/jsmods/evg.c:7572,1
    - Dst: MAKEVEC
      Src: /src/gpac/src/jsmods/evg.c:7573,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 48
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7584
      start: 7515
    functionDepth: 4
    functionLinenumber: 7515
    functionLinenumberEnd: 7584
    functionName: mx_apply
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 8
    functionsReached:
    - FLT2FIX
    - MAKERECT
    - JS_GetOpaque
    - JS_FreeValue
    - gf_mx_apply_vec_4x4
    - JS_IsUndefined
    - EVG_GET_FLOAT
    - MAKEVEC
    - WGL_GET_VEC3F
    - JS_GetPropertyStr
    - gf_mx_apply_rect
    - JS_ToFloat64
    - MAKEVEC4
    - GF_JS_EXCEPTION
    - JS_IsObject
    - gf_mx_apply_vec
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx_apply(JSContext *ctx, JSValueConst this_val, int argc, JSValueConst
      *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7589,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7590,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7591,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7592,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7593,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7594,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7595,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7596,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:7597,1
    - Dst: gf_mx_ortho_reverse_z
      Src: /src/gpac/src/jsmods/evg.c:7598,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7598,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7598,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7598,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7598,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7598,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7598,1
    - Dst: gf_mx_ortho
      Src: /src/gpac/src/jsmods/evg.c:7600,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7600,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7600,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7600,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7600,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7600,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7600,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:7602,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7603
      start: 7586
    functionDepth: 2
    functionLinenumber: 7586
    functionLinenumberEnd: 7603
    functionName: mx_ortho
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 4
    functionsReached:
    - FLT2FIX
    - gf_mx_ortho
    - JS_DupValue
    - JS_GetOpaque
    - JS_ToBool
    - EVG_GET_FLOAT
    - GF_JS_EXCEPTION
    - gf_mx_ortho_reverse_z
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx_ortho(JSContext *ctx, JSValueConst this_val, int argc, JSValueConst
      *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7607,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7608,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7609,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7610,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7611,1
    - Dst: EVG_GET_FLOAT
      Src: /src/gpac/src/jsmods/evg.c:7612,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/evg.c:7613,1
    - Dst: gf_mx_perspective_reverse_z
      Src: /src/gpac/src/jsmods/evg.c:7614,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7614,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7614,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7614,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7614,1
    - Dst: gf_mx_perspective
      Src: /src/gpac/src/jsmods/evg.c:7616,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7616,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7616,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7616,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/jsmods/evg.c:7616,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:7618,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7619
      start: 7604
    functionDepth: 2
    functionLinenumber: 7604
    functionLinenumberEnd: 7619
    functionName: mx_perspective
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 3
    functionsReached:
    - FLT2FIX
    - gf_mx_perspective
    - JS_DupValue
    - gf_mx_perspective_reverse_z
    - JS_GetOpaque
    - JS_ToBool
    - EVG_GET_FLOAT
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx_perspective(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7623,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7624,1
    - Dst: WGL_GET_VEC3F
      Src: /src/gpac/src/jsmods/evg.c:7626,1
    - Dst: WGL_GET_VEC3F
      Src: /src/gpac/src/jsmods/evg.c:7627,1
    - Dst: WGL_GET_VEC3F
      Src: /src/gpac/src/jsmods/evg.c:7628,1
    - Dst: gf_mx_lookat
      Src: /src/gpac/src/jsmods/evg.c:7630,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/evg.c:7631,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7632
      start: 7620
    functionDepth: 5
    functionLinenumber: 7620
    functionLinenumberEnd: 7632
    functionName: mx_lookat
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 3
    functionsReached:
    - gf_mx_lookat
    - JS_DupValue
    - JS_GetOpaque
    - WGL_GET_VEC3F
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx_lookat(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/evg.c:7667,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:7669,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/jsmods/evg.c:7670,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:7671,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7672,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7674,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7675,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/jsmods/evg.c:7677,1
    - Dst: gf_mx_from_mx2d
      Src: /src/gpac/src/jsmods/evg.c:7679,1
    - Dst: WGL_GET_VEC3F
      Src: /src/gpac/src/jsmods/evg.c:7682,1
    - Dst: WGL_GET_VEC3F
      Src: /src/gpac/src/jsmods/evg.c:7683,1
    - Dst: WGL_GET_VEC3F
      Src: /src/gpac/src/jsmods/evg.c:7684,1
    - Dst: gf_mx_rotation_matrix_from_vectors
      Src: /src/gpac/src/jsmods/evg.c:7685,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7689
      start: 7663
    functionDepth: 2
    functionLinenumber: 7663
    functionLinenumberEnd: 7689
    functionName: mx_constructor
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - gf_mx_rotation_matrix_from_vectors
    - JS_NewObjectClass
    - js_throw_err
    - GF_SAFEALLOC
    - JS_GetOpaque
    - JS_SetOpaque
    - gf_mx_from_mx2d
    - gf_mx_init
    - WGL_GET_VEC3F
    - gf_mx_copy
    linkageType: ''
    returnType: JSValue
    signature: JSValue mx_constructor(JSContext *ctx, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7695,1
    - Dst: mesh_free
      Src: /src/gpac/src/jsmods/evg.c:7696,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7697
      start: 7693
    functionDepth: 3
    functionLinenumber: 7693
    functionLinenumberEnd: 7697
    functionName: mesh_finalize
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - mesh_free
    linkageType: ''
    returnType: void
    signature: void mesh_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7709,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7710,1
    - Dst: mesh_gl_update_buffers
      Src: /src/gpac/src/jsmods/evg.c:7711,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7712,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7714
      start: 7707
    functionDepth: 1
    functionLinenumber: 7707
    functionLinenumberEnd: 7714
    functionName: mesh_update_gl
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - mesh_gl_update_buffers
    linkageType: ''
    returnType: JSValue
    signature: JSValue mesh_update_gl(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7720,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7721,1
    - Dst: mesh_gl_draw
      Src: /src/gpac/src/jsmods/evg.c:7722,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7723
      start: 7718
    functionDepth: 2
    functionLinenumber: 7718
    functionLinenumberEnd: 7723
    functionName: mesh_draw
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - mesh_gl_draw
    linkageType: ''
    returnType: JSValue
    signature: JSValue mesh_draw(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7738,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/evg.c:7739,1
    - Dst: new_mesh
      Src: /src/gpac/src/jsmods/evg.c:7742,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/evg.c:7744,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/evg.c:7746,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/evg.c:7747,1
    - Dst: mesh_from_path
      Src: /src/gpac/src/jsmods/evg.c:7750,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7753
      start: 7731
    functionDepth: 5
    functionLinenumber: 7731
    functionLinenumberEnd: 7753
    functionName: mesh_constructor
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - mesh_from_path
    - js_throw_err
    - JS_GetOpaque
    - JS_SetOpaque
    - new_mesh
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue mesh_constructor(JSContext *ctx, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:7762,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/evg.c:7763,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/evg.c:7764,1
    - Dst: gf_pixel_fmt_parse
      Src: /src/gpac/src/jsmods/evg.c:7766,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/evg.c:7767,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/jsmods/evg.c:7769,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/evg.c:7770,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/evg.c:7772,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7773,1
    - Dst: gf_pixel_get_bytes_per_pixel
      Src: /src/gpac/src/jsmods/evg.c:7773,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7774
      start: 7759
    functionDepth: 5
    functionLinenumber: 7759
    functionLinenumberEnd: 7774
    functionName: evg_pixel_size
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - JS_IsNumber
    - gf_pixel_fmt_parse
    - js_throw_err_msg
    - JS_ToInt32
    - JS_NewInt32
    - gf_pixel_get_bytes_per_pixel
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue evg_pixel_size(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/evg.c:7784,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/evg.c:7786,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/evg.c:7787,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/evg.c:7789,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/evg.c:7790,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/evg.c:7792,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/evg.c:7793,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/evg.c:7795,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/evg.c:7796,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/evg.c:7798,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/evg.c:7799,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/evg.c:7801,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/evg.c:7802,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/evg.c:7805,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/evg.c:7806,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/evg.c:7809,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/evg.c:7810,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/evg.c:7813,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/evg.c:7814,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/evg.c:7817,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/evg.c:7818,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/evg.c:7820,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/evg.c:7821,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/evg.c:7823,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/evg.c:7824,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/jsmods/evg.c:7827,1
    - Dst: va_gc_mark
      Src: /src/gpac/src/jsmods/evg.c:7828,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/evg.c:7832,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/evg.c:7833,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/evg.c:7835,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/evg.c:7836,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/evg.c:7838,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/evg.c:7839,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:7843,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/evg.c:7844,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/evg.c:7844,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/evg.c:7845,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:7847,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/evg.c:7848,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/evg.c:7848,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/evg.c:7849,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:7851,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/evg.c:7852,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/evg.c:7852,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/evg.c:7853,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:7855,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/evg.c:7856,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/evg.c:7856,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/evg.c:7857,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:7859,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/evg.c:7860,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/evg.c:7860,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/evg.c:7861,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:7863,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/evg.c:7864,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/evg.c:7864,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/evg.c:7865,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:7868,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/evg.c:7869,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/evg.c:7869,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/evg.c:7870,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:7874,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/evg.c:7875,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/evg.c:7875,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/evg.c:7876,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:7879,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/evg.c:7880,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/evg.c:7880,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/evg.c:7881,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:7883,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/evg.c:7884,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/evg.c:7884,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/evg.c:7885,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:7887,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/evg.c:7888,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/evg.c:7888,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/evg.c:7889,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:7892,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/evg.c:7893,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/evg.c:7893,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/evg.c:7894,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:7896,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/evg.c:7897,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/evg.c:7897,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/evg.c:7898,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:7900,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/evg.c:7901,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/evg.c:7901,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/evg.c:7902,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/evg.c:7905,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/evg.c:7906,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/evg.c:7906,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/evg.c:7907,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/jsmods/evg.c:7910,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7911,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7911,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7912,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7912,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7913,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7913,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7915,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7915,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7916,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7916,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7917,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7917,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7919,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7919,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7920,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7920,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7921,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7921,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7923,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7923,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7924,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7924,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7925,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7925,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7926,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7926,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7927,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7927,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7928,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7928,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7929,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7929,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7930,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7930,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7931,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7931,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7932,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7932,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7933,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7933,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7934,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7934,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7935,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7935,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7936,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7936,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7937,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7937,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7938,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7938,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7939,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7939,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7940,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7940,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7943,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7943,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7944,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7944,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7945,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7945,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7946,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7946,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7947,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7947,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7948,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7948,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7950,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7950,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7951,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7951,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7952,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7952,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7953,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7953,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7954,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7954,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7957,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7957,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7958,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7958,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7959,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7959,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7960,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7960,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7961,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7961,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7962,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7962,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7963,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7963,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7964,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7964,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7965,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7965,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7966,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7966,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7967,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7967,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7969,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7969,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7970,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7970,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7971,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7971,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7972,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7972,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7973,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7973,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7974,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7974,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7975,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7975,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7976,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7976,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7978,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7978,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7979,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7979,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7981,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7981,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7982,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7982,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7983,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7983,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7984,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7984,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7985,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7985,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7986,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7986,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7987,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7987,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7988,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7988,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7989,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7989,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7991,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7991,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7992,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7992,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7993,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7993,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7995,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7995,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7996,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7996,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7997,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7997,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7998,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7998,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:7999,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:7999,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8000,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8000,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8001,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8001,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8002,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8002,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8003,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8003,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8005,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8005,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8006,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8006,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8007,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8007,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8008,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8008,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8009,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8009,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8010,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8010,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8011,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8011,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8012,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8012,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8014,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8014,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8015,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8015,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8016,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8016,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8018,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8018,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8019,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8019,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8020,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8020,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8021,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8021,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8022,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8022,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/evg.c:8023,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/evg.c:8023,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/evg.c:8025,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/evg.c:8029,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8030,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/evg.c:8031,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8032,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/evg.c:8033,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8034,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/evg.c:8035,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8036,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/evg.c:8037,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8038,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/evg.c:8039,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8040,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/evg.c:8041,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8042,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/evg.c:8043,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8044,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/evg.c:8046,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8047,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/evg.c:8049,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8050,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/evg.c:8051,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8052,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/evg.c:8053,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8054,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/evg.c:8057,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8058,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/evg.c:8061,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8062,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8065,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8067,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 210
    argCount: 2
    argNames:
    - c
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8070
      start: 7777
    functionDepth: 2
    functionLinenumber: 7777
    functionLinenumberEnd: 8070
    functionName: js_evg_load_module
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_NewClass
    - JS_GetGlobalObject
    - JS_SetPropertyFunctionList
    - JS_NewCFunction2
    - JS_FreeValue
    - countof
    - JS_SetClassProto
    - JS_NewClassID
    - JS_NewInt32
    - JS_SetModuleExport
    - JS_NewObject
    - JS_SetPropertyStr
    - JS_GetRuntime
    - va_gc_mark
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: int
    signature: int js_evg_load_module(JSContext *c, JSModuleDef *m)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewCModule
      Src: /src/gpac/src/jsmods/evg.c:8075,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8078,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8079,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8080,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8081,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8082,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8083,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8084,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8085,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8086,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8087,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8088,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8089,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8090,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8091,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/evg.c:8092,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8094
      start: 8072
    functionDepth: 1
    functionLinenumber: 8072
    functionLinenumberEnd: 8094
    functionName: qjs_module_init_evg
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached:
    - JS_AddModuleExport
    - JS_NewCModule
    linkageType: ''
    returnType: void
    signature: void qjs_module_init_evg(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8100
      start: 8097
    functionDepth: 0
    functionLinenumber: 8097
    functionLinenumberEnd: 8100
    functionName: qjs_module_init_evg
    functionSourceFile: /src/gpac/src/jsmods/evg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void qjs_module_init_evg(void *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:179,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/scene_js.c:181,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 183
    functionName: scenejs_gc_mark
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: void scenejs_gc_mark(JSRuntime *rt, JSValueConst val, JS_MarkFunc *mark_func)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - c
    - obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 201
    functionDepth: 1
    functionLinenumber: 201
    functionLinenumberEnd: 205
    functionName: scenejs_get_compositor
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    linkageType: ''
    returnType: GF_Compositor
    signature: GF_Compositor *scenejs_get_compositor(JSContext *c, JSValue obj)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:212,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:214,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:219,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/jsmods/scene_js.c:222,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/scene_js.c:223,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:224,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/scene_js.c:225,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:229,1
    - Dst: gf_sc_get_option
      Src: /src/gpac/src/jsmods/scene_js.c:229,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:232,1
    - Dst: gf_sc_get_option
      Src: /src/gpac/src/jsmods/scene_js.c:232,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:235,1
    - Dst: gf_sc_get_option
      Src: /src/gpac/src/jsmods/scene_js.c:235,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:238,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:241,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:248,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:251,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:255,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:256,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:260,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:261,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/scene_js.c:264,1
    - Dst: gf_sc_get_fps
      Src: /src/gpac/src/jsmods/scene_js.c:264,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/scene_js.c:267,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:270,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:273,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:276,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:279,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:282,1
    - Dst: memset
      Src: /src/gpac/src/jsmods/scene_js.c:287,1
    - Dst: GF_Compositor*::root_scene::graph::script_action
      Src: /src/gpac/src/jsmods/scene_js.c:288,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/jsmods/scene_js.c:290,1
    - Dst: GF_Compositor*::root_scene::graph::script_action
      Src: /src/gpac/src/jsmods/scene_js.c:291,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/scene_js.c:294,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/scene_js.c:294,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/scene_js.c:296,1
    - Dst: gf_sc_get_selected_text
      Src: /src/gpac/src/jsmods/scene_js.c:300,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:302,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:306,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 73
    argCount: 3
    argNames:
    - ctx
    - this_val
    - prop_id
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 207
    functionDepth: 7
    functionLinenumber: 207
    functionLinenumberEnd: 309
    functionName: scenejs_getProperty
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_Compositor*::root_scene::graph::script_action
    - gf_strdup
    - gf_sc_get_option
    - gf_sc_get_selected_text
    - JS_NewFloat64
    - JS_GetOpaque
    - gf_sc_get_fps
    - gf_url_concatenate
    - JS_NewString
    - FIX2FLT
    - memset
    - JS_NewBool
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: JSValue
    signature: JSValue scenejs_getProperty(JSContext *ctx, JSValueConst this_val,
      int prop_id)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:320,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:322,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/scene_js.c:328,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:328,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/scene_js.c:329,1
    - Dst: strnicmp
      Src: /src/gpac/src/jsmods/scene_js.c:331,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/src/jsmods/scene_js.c:336,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/scene_js.c:337,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/scene_js.c:343,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/src/jsmods/scene_js.c:345,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/scene_js.c:350,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/src/jsmods/scene_js.c:351,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/scene_js.c:352,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/src/jsmods/scene_js.c:353,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/scene_js.c:358,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:358,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/src/jsmods/scene_js.c:359,1
    - Dst: gf_sc_set_option
      Src: /src/gpac/src/jsmods/scene_js.c:362,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/scene_js.c:365,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/scene_js.c:370,1
    - Dst: memset
      Src: /src/gpac/src/jsmods/scene_js.c:372,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/jsmods/scene_js.c:376,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/scene_js.c:382,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:382,1
    - Dst: memset
      Src: /src/gpac/src/jsmods/scene_js.c:385,1
    - Dst: GF_Compositor*::video_out::ProcessEvent
      Src: /src/gpac/src/jsmods/scene_js.c:388,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 66
    argCount: 4
    argNames:
    - ctx
    - this_val
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 312
    functionDepth: 21
    functionLinenumber: 312
    functionLinenumberEnd: 393
    functionName: scenejs_setProperty
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - gf_sc_set_option
    - gf_sc_send_event
    - JS_GetOpaque
    - gf_sc_user_event
    - JS_ToBool
    - memset
    - GF_Compositor*::video_out::ProcessEvent
    - strnicmp
    - JS_ToFloat64
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue scenejs_setProperty(JSContext *ctx, JSValueConst this_val,
      JSValueConst value, int magic)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: scenejs_get_compositor
      Src: /src/gpac/src/jsmods/scene_js.c:401,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:402,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:403,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/scene_js.c:404,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:404,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/scene_js.c:405,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/jsmods/scene_js.c:405,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:405,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/scene_js.c:407,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/jsmods/scene_js.c:409,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/scene_js.c:410,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/scene_js.c:411,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/scene_js.c:412,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/scene_js.c:415,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/scene_js.c:415,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/jsmods/scene_js.c:416,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/scene_js.c:418,1
    - Dst: gf_filter_get_arg_str
      Src: /src/gpac/src/jsmods/scene_js.c:419,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/jsmods/scene_js.c:421,1
    - Dst: gf_opts_get_key_name
      Src: /src/gpac/src/jsmods/scene_js.c:424,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/scene_js.c:429,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/scene_js.c:430,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:433,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 38
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 395
    functionDepth: 5
    functionLinenumber: 395
    functionLinenumberEnd: 436
    functionName: scenejs_get_option
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - gf_filter_get_arg_str
    - gf_opts_get_key_name
    - JS_IsNumber
    - scenejs_get_compositor
    - JS_NewString
    - gf_gpac_version
    - JS_ToInt32
    - strcmp
    - gf_opts_get_key
    - stricmp
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue scenejs_get_option(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: scenejs_get_compositor
      Src: /src/gpac/src/jsmods/scene_js.c:441,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:442,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:443,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/scene_js.c:444,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:444,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/scene_js.c:445,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:445,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/scene_js.c:447,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/scene_js.c:448,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/scene_js.c:450,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/scene_js.c:451,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/scene_js.c:453,1
    - Dst: gf_filter_send_update
      Src: /src/gpac/src/jsmods/scene_js.c:454,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/jsmods/scene_js.c:456,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/scene_js.c:458,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/scene_js.c:459,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/scene_js.c:461,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 438
    functionDepth: 6
    functionLinenumber: 438
    functionLinenumberEnd: 464
    functionName: scenejs_set_option
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - gf_opts_set_key
    - scenejs_get_compositor
    - gf_filter_send_update
    - strcmp
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue scenejs_set_option(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: scenejs_get_compositor
      Src: /src/gpac/src/jsmods/scene_js.c:470,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:471,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:472,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/scene_js.c:478,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:480,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/jsmods/scene_js.c:493,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/jsmods/scene_js.c:494,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 467
    functionDepth: 5
    functionLinenumber: 467
    functionLinenumberEnd: 496
    functionName: scenejs_set_back_color
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - scenejs_get_compositor
    - GF_COL_ARGB
    - JS_ToFloat64
    - gf_sc_invalidate
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue scenejs_set_back_color(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: scenejs_get_compositor
      Src: /src/gpac/src/jsmods/scene_js.c:501,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:502,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:503,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/jsmods/scene_js.c:505,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:506,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/scene_js.c:507,1
    - Dst: gf_scene_switch_quality
      Src: /src/gpac/src/jsmods/scene_js.c:508,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 499
    functionDepth: 2
    functionLinenumber: 499
    functionLinenumberEnd: 510
    functionName: scenejs_switch_quality
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - scenejs_get_compositor
    - gf_scene_switch_quality
    - JS_ToBool
    - GF_JS_EXCEPTION
    - JS_IsBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue scenejs_switch_quality(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: scenejs_get_compositor
      Src: /src/gpac/src/jsmods/scene_js.c:517,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:518,1
    - Dst: memset
      Src: /src/gpac/src/jsmods/scene_js.c:520,1
    - Dst: gf_filter_ui_event
      Src: /src/gpac/src/jsmods/scene_js.c:522,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 514
    functionDepth: 2
    functionLinenumber: 514
    functionLinenumberEnd: 524
    functionName: scenejs_reload
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - scenejs_get_compositor
    - memset
    - gf_filter_ui_event
    linkageType: ''
    returnType: JSValue
    signature: JSValue scenejs_reload(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: scenejs_get_compositor
      Src: /src/gpac/src/jsmods/scene_js.c:530,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:531,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:532,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/jsmods/scene_js.c:534,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:535,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/scene_js.c:537,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:538,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:539,1
    - Dst: gf_sc_navigation_supported
      Src: /src/gpac/src/jsmods/scene_js.c:539,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 540
      start: 527
    functionDepth: 2
    functionLinenumber: 527
    functionLinenumberEnd: 540
    functionName: scenejs_navigation_supported
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - gf_sc_navigation_supported
    - scenejs_get_compositor
    - JS_IsInteger
    - JS_NewBool
    - JS_ToInt32
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue scenejs_navigation_supported(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: scenejs_get_compositor
      Src: /src/gpac/src/jsmods/scene_js.c:546,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:547,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:548,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/scene_js.c:551,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:552,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/scene_js.c:553,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:554,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/scene_js.c:557,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/jsmods/scene_js.c:572,1
    - Dst: gf_sc_set_size
      Src: /src/gpac/src/jsmods/scene_js.c:574,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 542
    functionDepth: 3
    functionLinenumber: 542
    functionLinenumberEnd: 582
    functionName: scenejs_set_size
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - gf_sc_send_event
    - scenejs_get_compositor
    - gf_sc_set_size
    - JS_ToBool
    - JS_ToInt32
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue scenejs_set_size(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: scenejs_get_compositor
      Src: /src/gpac/src/jsmods/scene_js.c:588,1
    - Dst: memset
      Src: /src/gpac/src/jsmods/scene_js.c:589,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/scene_js.c:592,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/jsmods/scene_js.c:594,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 596
      start: 585
    functionDepth: 2
    functionLinenumber: 585
    functionLinenumberEnd: 596
    functionName: scenejs_exit
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - scenejs_get_compositor
    - memset
    - JS_ToInt32
    - gf_sc_send_event
    linkageType: ''
    returnType: JSValue
    signature: JSValue scenejs_exit(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: scenejs_get_compositor
      Src: /src/gpac/src/jsmods/scene_js.c:601,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:602,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/scene_js.c:603,1
    - Dst: gf_sc_reset_graphics
      Src: /src/gpac/src/jsmods/scene_js.c:608,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 611
      start: 598
    functionDepth: 2
    functionLinenumber: 598
    functionLinenumberEnd: 611
    functionName: scenejs_set_3d
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - scenejs_get_compositor
    - gf_sc_reset_graphics
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue scenejs_set_3d(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: scenejs_get_compositor
      Src: /src/gpac/src/jsmods/scene_js.c:616,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:617,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/scene_js.c:621,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:622,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/scene_js.c:623,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:624,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/scene_js.c:627,1
    - Dst: GF_Compositor*::video_out::ProcessEvent
      Src: /src/gpac/src/jsmods/scene_js.c:629,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 613
    functionDepth: 2
    functionLinenumber: 613
    functionLinenumberEnd: 631
    functionName: scenejs_move_window
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - scenejs_get_compositor
    - JS_ToBool
    - GF_Compositor*::video_out::ProcessEvent
    - JS_ToInt32
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue scenejs_move_window(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: scenejs_get_compositor
      Src: /src/gpac/src/jsmods/scene_js.c:638,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:639,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/scene_js.c:641,1
    - Dst: gf_sg_js_get_node
      Src: /src/gpac/src/jsmods/scene_js.c:644,1
    - Dst: JSVAL_TO_OBJECT
      Src: /src/gpac/src/jsmods/scene_js.c:644,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/scene_js.c:647,1
    - Dst: GF_SceneGraph*::GetSceneTime
      Src: /src/gpac/src/jsmods/scene_js.c:647,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 648
      start: 635
    functionDepth: 3
    functionLinenumber: 635
    functionLinenumberEnd: 648
    functionName: scenejs_get_scene_time
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - scenejs_get_compositor
    - gf_sg_js_get_node
    - JSVAL_TO_OBJECT
    - GF_JS_EXCEPTION
    - JS_IsObject
    - GF_SceneGraph*::GetSceneTime
    linkageType: ''
    returnType: JSValue
    signature: JSValue scenejs_get_scene_time(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: scenejs_get_compositor
      Src: /src/gpac/src/jsmods/scene_js.c:654,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 651
    functionDepth: 2
    functionLinenumber: 651
    functionLinenumberEnd: 658
    functionName: scenejs_trigger_gc
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - scenejs_get_compositor
    linkageType: ''
    returnType: JSValue
    signature: JSValue scenejs_trigger_gc(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/scene_js.c:663,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - udta
    - idx
    argTypes:
    - void*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 666
      start: 660
    functionDepth: 1
    functionLinenumber: 660
    functionLinenumberEnd: 666
    functionName: gjs_enum_pids
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_FilterPid
    signature: GF_FilterPid *gjs_enum_pids(void *udta, u32 *idx)
  - BBCount: 111
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:670,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:679,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:681,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/scene_js.c:681,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:684,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/scene_js.c:687,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:689,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/scene_js.c:690,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:692,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:693,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:695,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:701,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:703,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:704,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:706,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:707,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:709,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:710,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:712,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:713,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/jsmods/scene_js.c:725,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:726,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:728,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:730,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:732,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:733,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:734,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/jsmods/scene_js.c:734,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:735,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:737,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:739,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:741,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/jsmods/scene_js.c:741,1
    - Dst: sprintf
      Src: /src/gpac/src/jsmods/scene_js.c:745,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:746,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:748,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:752,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:753,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:755,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:756,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:758,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:759,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:761,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/scene_js.c:762,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:764,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:765,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:767,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:768,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:770,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:771,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:773,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:774,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:776,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:777,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/jsmods/scene_js.c:783,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/jsmods/scene_js.c:785,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:788,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:792,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/scene_js.c:792,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:801,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:803,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:806,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:807,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:809,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:810,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:812,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:813,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:815,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:816,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:818,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/scene_js.c:819,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:821,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:822,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:824,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:826,1
    - Dst: gf_filter_get_info
      Src: /src/gpac/src/jsmods/scene_js.c:832,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:833,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/jsmods/scene_js.c:834,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:837,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:841,1
    - Dst: gf_filter_count_source_by_protocol
      Src: /src/gpac/src/jsmods/scene_js.c:841,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:843,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/scene_js.c:846,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/scene_js.c:848,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:853,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/scene_js.c:859,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/scene_js.c:861,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/scene_js.c:871,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/jsmods/scene_js.c:876,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/jsmods/scene_js.c:878,1
    - Dst: gf_clock_time_absolute
      Src: /src/gpac/src/jsmods/scene_js.c:883,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/jsmods/scene_js.c:884,1
    - Dst: memset
      Src: /src/gpac/src/jsmods/scene_js.c:890,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/jsmods/scene_js.c:892,1
    - Dst: memset
      Src: /src/gpac/src/jsmods/scene_js.c:896,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/jsmods/scene_js.c:898,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/scene_js.c:904,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:907,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:911,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:914,1
    - Dst: gf_sc_is_over
      Src: /src/gpac/src/jsmods/scene_js.c:914,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:917,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/jsmods/scene_js.c:923,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:925,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/jsmods/scene_js.c:926,1
    - Dst: gf_odm_get_object_info
      Src: /src/gpac/src/jsmods/scene_js.c:932,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:933,1
    - Dst: gf_net_ntp_diff_ms
      Src: /src/gpac/src/jsmods/scene_js.c:937,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:938,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/scene_js.c:944,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/scene_js.c:946,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/scene_js.c:948,1
    - Dst: sprintf
      Src: /src/gpac/src/jsmods/scene_js.c:950,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:951,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:953,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/jsmods/scene_js.c:961,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:963,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:965,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/scene_js.c:969,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/scene_js.c:975,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/scene_js.c:980,1
    - Dst: gf_clock_time_absolute
      Src: /src/gpac/src/jsmods/scene_js.c:983,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/scene_js.c:986,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/scene_js.c:990,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/jsmods/scene_js.c:995,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/jsmods/scene_js.c:998,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:999,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1002,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:1005,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:1007,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:1010,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:1011,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1014,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/jsmods/scene_js.c:1015,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1016,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1018,1
    CyclomaticComplexity: 80
    EdgeCount: 80
    ICount: 311
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1021
      start: 668
    functionDepth: 4
    functionLinenumber: 668
    functionLinenumberEnd: 1021
    functionName: odm_getProperty
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_info
    - JS_NewInt64
    - gf_list_count
    - memset
    - gf_filter_get_info
    - gf_stream_type_name
    - gf_sys_clock
    - gf_odm_get_object_info
    - gf_4cc_to_str
    - gf_list_get
    - gf_sc_send_event
    - JS_NewFloat64
    - JS_GetOpaque
    - sprintf
    - JS_NewString
    - gf_filter_release_property
    - JS_NewInt32
    - strstr
    - gf_net_ntp_diff_ms
    - gf_clock_time_absolute
    - gf_filter_pid_get_property
    - gf_filter_pid_get_info_str
    - gf_filter_count_source_by_protocol
    - gf_sc_is_over
    - JS_NewBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue odm_getProperty(JSContext *ctx, JSValueConst this_val, int
      magic)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1025,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1037,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1038,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1039,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1040,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1042,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1043,1
    - Dst: sprintf
      Src: /src/gpac/src/jsmods/scene_js.c:1049,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/jsmods/scene_js.c:1050,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/jsmods/scene_js.c:1052,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/jsmods/scene_js.c:1055,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/jsmods/scene_js.c:1064,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/scene_js.c:1067,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/scene_js.c:1068,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/scene_js.c:1072,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/scene_js.c:1075,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1077,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:1077,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/scene_js.c:1078,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1080,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:1080,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/scene_js.c:1081,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1083,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:1083,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/scene_js.c:1085,1
    - Dst: atoi
      Src: /src/gpac/src/jsmods/scene_js.c:1085,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/scene_js.c:1086,1
    - Dst: atoi
      Src: /src/gpac/src/jsmods/scene_js.c:1086,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/scene_js.c:1087,1
    - Dst: atoi
      Src: /src/gpac/src/jsmods/scene_js.c:1087,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/scene_js.c:1088,1
    - Dst: atoi
      Src: /src/gpac/src/jsmods/scene_js.c:1088,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/scene_js.c:1089,1
    - Dst: atoi
      Src: /src/gpac/src/jsmods/scene_js.c:1089,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/scene_js.c:1090,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/scene_js.c:1091,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/scene_js.c:1092,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/scene_js.c:1093,1
    - Dst: sscanf
      Src: /src/gpac/src/jsmods/scene_js.c:1095,1
    - Dst: sscanf
      Src: /src/gpac/src/jsmods/scene_js.c:1097,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/scene_js.c:1101,1
    - Dst: sscanf
      Src: /src/gpac/src/jsmods/scene_js.c:1102,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/scene_js.c:1104,1
    - Dst: sscanf
      Src: /src/gpac/src/jsmods/scene_js.c:1105,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/jsmods/scene_js.c:1113,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/jsmods/scene_js.c:1116,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/jsmods/scene_js.c:1119,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/jsmods/scene_js.c:1122,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/jsmods/scene_js.c:1133,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1136,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:1136,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1138,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:1138,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1140,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:1140,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1142,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1142,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1143,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1143,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1144,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1144,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1145,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:1145,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1146,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/scene_js.c:1146,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1147,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1147,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1148,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1148,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1149,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1149,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1150,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1150,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1151,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1151,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1152,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:1152,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1153,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:1153,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1154,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:1154,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1156,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1156,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1157,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1157,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 125
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1161
      start: 1023
    functionDepth: 1
    functionLinenumber: 1023
    functionLinenumberEnd: 1161
    functionName: gjs_odm_get_quality
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - sscanf
    - JS_NewFloat64
    - gf_filter_pid_get_info_str
    - JS_GetOpaque
    - JS_IsException
    - sprintf
    - strstr
    - JS_NewString
    - strncmp
    - JS_ToInt32
    - gf_filter_release_property
    - atoi
    - JS_NewObject
    - strcmp
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - JS_NewInt32
    - JS_NewBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue gjs_odm_get_quality(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1165,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1168,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1176,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1177,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1179,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/jsmods/scene_js.c:1181,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/jsmods/scene_js.c:1185,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1186,1
    - Dst: sscanf
      Src: /src/gpac/src/jsmods/scene_js.c:1189,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/jsmods/scene_js.c:1191,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/scene_js.c:1200,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/scene_js.c:1201,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1203,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1203,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1204,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1204,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1205,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1205,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1206,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1206,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 37
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1210
      start: 1163
    functionDepth: 1
    functionLinenumber: 1163
    functionLinenumberEnd: 1210
    functionName: gjs_odm_get_srd
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - sscanf
    - gf_filter_pid_get_info_str
    - JS_GetOpaque
    - JS_IsException
    - gf_filter_release_property
    - JS_ToInt32
    - JS_NewInt32
    - JS_NewObject
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    linkageType: ''
    returnType: JSValue
    signature: JSValue gjs_odm_get_srd(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1219,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1220,1
    - Dst: jsff_get_filter
      Src: /src/gpac/src/jsmods/scene_js.c:1222,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1223,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1226,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/jsmods/scene_js.c:1227,1
    - Dst: gf_filter_pid_is_filter_in_parents
      Src: /src/gpac/src/jsmods/scene_js.c:1231,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/jsmods/scene_js.c:1233,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1236
      start: 1214
    functionDepth: 1
    functionLinenumber: 1214
    functionLinenumberEnd: 1236
    functionName: gjs_odm_in_parent_chain
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_filter_in_parent_chain
    - gf_filter_pid_is_filter_in_parents
    - GF_JS_EXCEPTION
    - jsff_get_filter
    linkageType: ''
    returnType: JSValue
    signature: JSValue gjs_odm_in_parent_chain(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1244,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1246,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/scene_js.c:1248,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/scene_js.c:1249,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/scene_js.c:1250,1
    - Dst: atoi
      Src: /src/gpac/src/jsmods/scene_js.c:1253,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/scene_js.c:1255,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1258,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1259,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/jsmods/scene_js.c:1262,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1263,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1264,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/jsmods/scene_js.c:1269,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/jsmods/scene_js.c:1277,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1279
      start: 1238
    functionDepth: 1
    functionLinenumber: 1238
    functionLinenumberEnd: 1279
    functionName: gjs_odm_select_quality
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - JS_GetOpaque
    - GF_FEVT_INIT
    - JS_IsInteger
    - strcmp
    - atoi
    - JS_ToInt32
    - gf_filter_pid_send_event
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue gjs_odm_select_quality(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1283,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1284,1
    - Dst: gf_scene_resume_live
      Src: /src/gpac/src/jsmods/scene_js.c:1287,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1289
      start: 1281
    functionDepth: 1
    functionLinenumber: 1281
    functionLinenumberEnd: 1289
    functionName: gjs_odm_disable_main_addon
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - gf_scene_resume_live
    linkageType: ''
    returnType: JSValue
    signature: JSValue gjs_odm_disable_main_addon(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1294,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1295,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1296,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1298,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1299,1
    - Dst: gf_scene_set_service_id
      Src: /src/gpac/src/jsmods/scene_js.c:1301,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1303
      start: 1291
    functionDepth: 14
    functionLinenumber: 1291
    functionLinenumberEnd: 1303
    functionName: gjs_odm_select_service
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - gf_scene_set_service_id
    linkageType: ''
    returnType: JSValue
    signature: JSValue gjs_odm_select_service(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1307,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1308,1
    - Dst: gf_scene_select_object
      Src: /src/gpac/src/jsmods/scene_js.c:1311,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1314
      start: 1305
    functionDepth: 1
    functionLinenumber: 1305
    functionLinenumberEnd: 1314
    functionName: gjs_odm_select
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_scene_select_object
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue gjs_odm_select(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1320,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1322,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1323,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1324,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1324,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/scene_js.c:1327,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/scene_js.c:1330,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1331,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1335
      start: 1316
    functionDepth: 1
    functionLinenumber: 1316
    functionLinenumberEnd: 1335
    functionName: gjs_odm_get_resource
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - gf_list_get
    - JS_GetOpaque
    - JS_SetOpaque
    - JS_ToInt32
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue gjs_odm_get_resource(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1340,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1341,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1342,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1343,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1343,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1344,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1344,1
    - Dst: gf_scene_set_addon_layout_info
      Src: /src/gpac/src/jsmods/scene_js.c:1346,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1348
      start: 1337
    functionDepth: 1
    functionLinenumber: 1337
    functionLinenumberEnd: 1348
    functionName: gjs_odm_addon_layout
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - gf_scene_set_addon_layout_info
    linkageType: ''
    returnType: JSValue
    signature: JSValue gjs_odm_addon_layout(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/jsmods/scene_js.c:1354,1
    - Dst: gf_scene_register_associated_media
      Src: /src/gpac/src/jsmods/scene_js.c:1359,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - odm
    - addon_url
    - enable_if_defined
    - disable_if_defined
    argTypes:
    - GF_ObjectManager*
    - char*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1361
      start: 1350
    functionDepth: 13
    functionLinenumber: 1350
    functionLinenumberEnd: 1361
    functionName: do_enable_addon
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_scene_register_associated_media
    linkageType: ''
    returnType: void
    signature: void do_enable_addon(GF_ObjectManager *odm, char *addon_url, Bool enable_if_defined,
      Bool disable_if_defined )
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1367,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1368,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/scene_js.c:1370,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/jsmods/scene_js.c:1372,1
    - Dst: do_enable_addon
      Src: /src/gpac/src/jsmods/scene_js.c:1373,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/scene_js.c:1379,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/scene_js.c:1380,1
    - Dst: do_enable_addon
      Src: /src/gpac/src/jsmods/scene_js.c:1382,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/scene_js.c:1384,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1386
      start: 1363
    functionDepth: 14
    functionLinenumber: 1363
    functionLinenumberEnd: 1386
    functionName: gjs_odm_enable_addon
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - JS_GetOpaque
    - do_enable_addon
    - JS_ToBool
    - JS_FreeCString
    - GF_JS_EXCEPTION
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: JSValue
    signature: JSValue gjs_odm_enable_addon(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1391,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1392,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/scene_js.c:1393,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1393,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/scene_js.c:1395,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/scene_js.c:1396,1
    - Dst: do_enable_addon
      Src: /src/gpac/src/jsmods/scene_js.c:1397,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/scene_js.c:1399,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1401
      start: 1388
    functionDepth: 14
    functionLinenumber: 1388
    functionLinenumberEnd: 1401
    functionName: gjs_odm_declare_addon
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - JS_GetOpaque
    - do_enable_addon
    - strcmp
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue gjs_odm_declare_addon(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1405,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1406,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/scene_js.c:1408,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/jsmods/scene_js.c:1411,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/jsmods/scene_js.c:1412,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/scene_js.c:1416,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/scene_js.c:1420,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1421,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1421,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1424,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:1424,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/scene_js.c:1425,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 18
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1428
      start: 1403
    functionDepth: 1
    functionLinenumber: 1403
    functionLinenumberEnd: 1428
    functionName: gjs_odm_get_chapters
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_get_property
    - JS_GetOpaque
    - JS_SetPropertyUint32
    - JS_NewString
    - JS_NewInt32
    - JS_NewObject
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - JS_NewArray
    linkageType: ''
    returnType: JSValue
    signature: JSValue gjs_odm_get_chapters(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1436,1
    - Dst: scenejs_get_compositor
      Src: /src/gpac/src/jsmods/scene_js.c:1437,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1439,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/scene_js.c:1441,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/scene_js.c:1445,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/scene_js.c:1449,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/scene_js.c:1450,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/scene_js.c:1451,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/scene_js.c:1452,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/scene_js.c:1453,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/scene_js.c:1455,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/scene_js.c:1457,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/scene_js.c:1460,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/scene_js.c:1461,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/scene_js.c:1462,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/scene_js.c:1465,1
    - Dst: gf_url_percent_encode
      Src: /src/gpac/src/jsmods/scene_js.c:1466,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/scene_js.c:1467,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/scene_js.c:1468,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/scene_js.c:1471,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/scene_js.c:1478,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/scene_js.c:1482,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/scene_js.c:1483,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1485,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 46
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1487
      start: 1430
    functionDepth: 2
    functionLinenumber: 1430
    functionLinenumberEnd: 1487
    functionName: scenejs_get_object_manager
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - JS_IsString
    - gf_list_get
    - gf_url_percent_encode
    - JS_NewObjectClass
    - JS_GetOpaque
    - scenejs_get_compositor
    - JS_IsException
    - JS_SetOpaque
    - strstr
    - gf_list_count
    - strncmp
    - GF_JS_EXCEPTION
    - strchr
    - strlen
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue scenejs_get_object_manager(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1492,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1493,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:1499,1
    - Dst: gf_dom_get_key_name
      Src: /src/gpac/src/jsmods/scene_js.c:1499,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1505,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1507,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:1509,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/scene_js.c:1510,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:1510,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:1511,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:1512,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/scene_js.c:1515,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/scene_js.c:1515,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1517,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1519,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:1522,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/src/jsmods/scene_js.c:1522,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1528,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:1530,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/scene_js.c:1534,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/scene_js.c:1538,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/scene_js.c:1538,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 44
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1546
      start: 1490
    functionDepth: 1
    functionLinenumber: 1490
    functionLinenumberEnd: 1546
    functionName: gpacevt_getProperty
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - JS_GetOpaque
    - JS_SetPropertyUint32
    - JS_NewString
    - gf_dom_event_get_name
    - gf_list_count
    - gf_dom_get_key_name
    - JS_NewBool
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - JS_NewArray
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue gpacevt_getProperty(JSContext *ctx, JSValueConst this_val,
      int magic)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1554,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/scene_js.c:1555,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1556,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/jsmods/scene_js.c:1560,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/scene_js.c:1561,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/jsmods/scene_js.c:1562,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1563,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/scene_js.c:1565,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - sjs
    - evt
    argTypes:
    - GF_SCENEJSExt*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1567
      start: 1548
    functionDepth: 1
    functionLinenumber: 1548
    functionLinenumberEnd: 1567
    functionName: gjs_event_filter_process
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_IsNumber
    - JS_Call
    - JS_FreeValue
    - JS_SetOpaque
    - JS_ToBool
    - JS_ToInt32
    - JS_IsBool
    linkageType: ''
    returnType: Bool
    signature: Bool gjs_event_filter_process(GF_SCENEJSExt *sjs, GF_Event *evt)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_try_lock
      Src: /src/gpac/src/jsmods/scene_js.c:1579,1
    - Dst: gf_js_try_lock
      Src: /src/gpac/src/jsmods/scene_js.c:1583,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/jsmods/scene_js.c:1588,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/scene_js.c:1589,1
    - Dst: memcpy
      Src: /src/gpac/src/jsmods/scene_js.c:1590,1
    - Dst: gf_list_add
      Src: /src/gpac/src/jsmods/scene_js.c:1591,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/scene_js.c:1592,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/jsmods/scene_js.c:1593,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/jsmods/scene_js.c:1596,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/jsmods/scene_js.c:1601,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/scene_js.c:1602,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/jsmods/scene_js.c:1603,1
    - Dst: gjs_event_filter_process
      Src: /src/gpac/src/jsmods/scene_js.c:1604,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/scene_js.c:1605,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/jsmods/scene_js.c:1607,1
    - Dst: gjs_event_filter_process
      Src: /src/gpac/src/jsmods/scene_js.c:1609,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/jsmods/scene_js.c:1611,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/scene_js.c:1612,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 3
    argNames:
    - udta
    - evt
    - consumed_by_compositor
    argTypes:
    - void*
    - GF_Event*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1614
      start: 1569
    functionDepth: 2
    functionLinenumber: 1569
    functionLinenumberEnd: 1614
    functionName: gjs_event_filter
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_list_pop_front
    - memcpy
    - GF_LOG
    - gf_mx_try_lock
    - gf_list_count
    - gf_js_try_lock
    - gf_list_add
    - gf_mx_v
    - gf_js_lock
    - gf_malloc
    - gjs_event_filter_process
    linkageType: ''
    returnType: Bool
    signature: Bool gjs_event_filter(void *udta, GF_Event *evt, Bool consumed_by_compositor)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1618,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1620,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/scene_js.c:1622,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/scene_js.c:1622,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/scene_js.c:1622,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1623,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/scene_js.c:1625,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/scene_js.c:1626,1
    - Dst: gf_filter_add_event_listener
      Src: /src/gpac/src/jsmods/scene_js.c:1632,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1634
      start: 1616
    functionDepth: 1
    functionLinenumber: 1616
    functionLinenumberEnd: 1634
    functionName: scenejs_set_event_filter
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_IsNull
    - JS_IsFunction
    - JS_GetOpaque
    - JS_FreeValue
    - JS_IsUndefined
    - gf_filter_add_event_listener
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue scenejs_set_event_filter(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: scenejs_get_compositor
      Src: /src/gpac/src/jsmods/scene_js.c:1641,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1642,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/scene_js.c:1644,1
    - Dst: gf_sc_focus_switch_ring
      Src: /src/gpac/src/jsmods/scene_js.c:1645,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/scene_js.c:1649,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/scene_js.c:1650,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/scene_js.c:1651,1
    - Dst: gf_sc_focus_switch_ring
      Src: /src/gpac/src/jsmods/scene_js.c:1652,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/scene_js.c:1654,1
    - Dst: gf_sc_focus_switch_ring
      Src: /src/gpac/src/jsmods/scene_js.c:1655,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/scene_js.c:1657,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/scene_js.c:1658,1
    - Dst: gf_sg_js_get_node
      Src: /src/gpac/src/jsmods/scene_js.c:1659,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1660,1
    - Dst: gf_sc_focus_switch_ring
      Src: /src/gpac/src/jsmods/scene_js.c:1661,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1664
      start: 1638
    functionDepth: 24
    functionLinenumber: 1638
    functionLinenumberEnd: 1664
    functionName: scenejs_set_focus
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - JS_IsNull
    - scenejs_get_compositor
    - gf_sg_js_get_node
    - gf_sc_focus_switch_ring
    - stricmp
    - GF_JS_EXCEPTION
    - JS_IsObject
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue scenejs_set_focus(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1676,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/scene_js.c:1677,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1677,1
    - Dst: gf_sg_js_get_node
      Src: /src/gpac/src/jsmods/scene_js.c:1679,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1680,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/jsmods/scene_js.c:1684,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/jsmods/scene_js.c:1690,1
    - Dst: gf_sc_animation_get_scenegraph
      Src: /src/gpac/src/jsmods/scene_js.c:1696,1
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/jsmods/scene_js.c:1697,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1701,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1703,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/scene_js.c:1706,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/scene_js.c:1707,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1708,1
    - Dst: gf_sg_get_scene_size_info
      Src: /src/gpac/src/jsmods/scene_js.c:1709,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1710,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1710,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1711,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/scene_js.c:1711,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1712,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/scene_js.c:1712,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1714
      start: 1667
    functionDepth: 3
    functionLinenumber: 1667
    functionLinenumberEnd: 1714
    functionName: scenejs_get_scene
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_GetOpaque
    - gf_sc_animation_get_scenegraph
    - JS_IsException
    - JS_SetOpaque
    - JS_NewBool
    - JS_NewInt32
    - GF_JS_EXCEPTION
    - gf_sg_get_scene_size_info
    - gf_sg_js_get_node
    - JS_SetPropertyStr
    - JS_IsObject
    - gf_node_get_private
    - gf_sg_get_private
    linkageType: ''
    returnType: JSValue
    signature: JSValue scenejs_get_scene(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: scenejs_get_compositor
      Src: /src/gpac/src/jsmods/scene_js.c:1719,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/scene_js.c:1720,1
    - Dst: memset
      Src: /src/gpac/src/jsmods/scene_js.c:1723,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/scene_js.c:1724,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/src/jsmods/scene_js.c:1725,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1727
      start: 1717
    functionDepth: 21
    functionLinenumber: 1717
    functionLinenumberEnd: 1727
    functionName: scenejs_show_keyboard
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - scenejs_get_compositor
    - gf_sc_user_event
    - JS_ToBool
    - memset
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue scenejs_show_keyboard(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1859,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1862,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/scene_js.c:1864,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/jsmods/scene_js.c:1865,1
    - Dst: gf_cfg_discard_changes
      Src: /src/gpac/src/jsmods/scene_js.c:1866,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/jsmods/scene_js.c:1867,1
    - Dst: gf_list_del
      Src: /src/gpac/src/jsmods/scene_js.c:1869,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/scene_js.c:1871,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/jsmods/scene_js.c:1872,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/scene_js.c:1873,1
    - Dst: gf_list_del
      Src: /src/gpac/src/jsmods/scene_js.c:1875,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/jsmods/scene_js.c:1876,1
    - Dst: gf_fs_unload_script
      Src: /src/gpac/src/jsmods/scene_js.c:1879,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/scene_js.c:1882,1
    - Dst: gf_filter_remove_event_listener
      Src: /src/gpac/src/jsmods/scene_js.c:1885,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/scene_js.c:1889,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1890
      start: 1857
    functionDepth: 5
    functionLinenumber: 1857
    functionLinenumberEnd: 1890
    functionName: scenejs_finalize
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - gf_cfg_discard_changes
    - gf_free
    - gf_list_pop_back
    - gf_cfg_del
    - JS_GetOpaque
    - JS_SetOpaque
    - JS_FreeValueRT
    - gf_filter_remove_event_listener
    - gf_list_count
    - gf_fs_unload_script
    - gf_list_del
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void scenejs_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/scene_js.c:1896,1
    - Dst: gf_list_new
      Src: /src/gpac/src/jsmods/scene_js.c:1901,1
    - Dst: gf_list_new
      Src: /src/gpac/src/jsmods/scene_js.c:1902,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/jsmods/scene_js.c:1903,1
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1908,1
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1911,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/scene_js.c:1916,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/scene_js.c:1917,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/scene_js.c:1917,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/scene_js.c:1919,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/scene_js.c:1920,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/scene_js.c:1920,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/scene_js.c:1922,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/scene_js.c:1923,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/scene_js.c:1923,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/scene_js.c:1924,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/scene_js.c:1926,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/scene_js.c:1927,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/scene_js.c:1927,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/scene_js.c:1929,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/scene_js.c:1930,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/scene_js.c:1930,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/jsmods/scene_js.c:1932,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/scene_js.c:1934,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/scene_js.c:1935,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/scene_js.c:1935,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1936,1
    - Dst: GF_SceneGraph*::script_action
      Src: /src/gpac/src/jsmods/scene_js.c:1940,1
    - Dst: gf_fs_load_js_api
      Src: /src/gpac/src/jsmods/scene_js.c:1949,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/scene_js.c:1955,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/scene_js.c:1956,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/scene_js.c:1956,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1957,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1958,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1963,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1964,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1965,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1966,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1967,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1968,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1969,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1970,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1971,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1972,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1973,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1974,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1975,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1976,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1977,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1978,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1979,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1980,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1981,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1982,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1983,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1984,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1986,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1987,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1988,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1989,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1990,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1991,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1992,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1993,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1994,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1996,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1997,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1998,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/scene_js.c:2000,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/scene_js.c:2002,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 84
    argCount: 2
    argNames:
    - c
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2004
      start: 1892
    functionDepth: 1
    functionLinenumber: 1892
    functionLinenumberEnd: 2004
    functionName: js_scene_init
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_GetGlobalObject
    - JS_SetPropertyFunctionList
    - GF_SAFEALLOC
    - gf_fs_load_js_api
    - gf_mx_new
    - JS_NewClass
    - gf_list_new
    - GF_SceneGraph*::script_action
    - JS_NewClassID
    - JS_GetContextOpaque
    - JS_GetRuntime
    - JS_NewObjectClass
    - countof
    - JS_SetClassProto
    - JS_FreeValue
    - JS_SetOpaque
    - JS_SetModuleExport
    - DECLARE_CONST
    - JS_SetPropertyStr
    linkageType: ''
    returnType: int
    signature: int js_scene_init(JSContext *c, JSModuleDef *m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1962
      start: 1960
    functionDepth: 0
    functionLinenumber: 1960
    functionLinenumberEnd: 1962
    functionName: DECLARE_CONST
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DECLARE_CONST(_val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewCModule
      Src: /src/gpac/src/jsmods/scene_js.c:2010,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/scene_js.c:2013,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2015
      start: 2007
    functionDepth: 1
    functionLinenumber: 2007
    functionLinenumberEnd: 2015
    functionName: qjs_module_init_scenejs
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_AddModuleExport
    - JS_NewCModule
    linkageType: ''
    returnType: void
    signature: void qjs_module_init_scenejs(JSContext *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/storage.c:44,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/jsmods/storage.c:47,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/storage.c:48,1
    - Dst: gf_list_del
      Src: /src/gpac/src/jsmods/storage.c:49,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/jsmods/storage.c:53,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 42
    functionDepth: 5
    functionLinenumber: 42
    functionLinenumberEnd: 54
    functionName: storage_finalize
    functionSourceFile: /src/gpac/src/jsmods/storage.c
    functionUses: 0
    functionsReached:
    - gf_cfg_del
    - JS_GetOpaque
    - gf_list_count
    - gf_list_del_item
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void storage_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/storage.c:67,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/storage.c:68,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/storage.c:69,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/storage.c:71,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/storage.c:71,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/storage.c:72,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/jsmods/storage.c:72,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/storage.c:72,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/storage.c:74,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/storage.c:75,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/storage.c:76,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/storage.c:77,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/jsmods/storage.c:81,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/storage.c:82,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/storage.c:83,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/storage.c:84,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/jsmods/storage.c:88,1
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/src/jsmods/storage.c:90,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/storage.c:95,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/storage.c:96,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/storage.c:99,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 62
    functionDepth: 4
    functionLinenumber: 62
    functionLinenumberEnd: 102
    functionName: js_storage_get_option
    functionSourceFile: /src/gpac/src/jsmods/storage.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - JS_GetOpaque
    - js_throw_err_msg
    - gf_cfg_get_key
    - JS_IsInteger
    - JS_NewString
    - gf_cfg_get_key_name
    - strcmp
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_storage_get_option(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/storage.c:107,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/storage.c:108,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/storage.c:109,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/storage.c:111,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/storage.c:111,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/storage.c:112,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/storage.c:112,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/storage.c:114,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/storage.c:115,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/storage.c:116,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/storage.c:117,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/storage.c:119,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/storage.c:121,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/storage.c:122,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/jsmods/storage.c:124,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/storage.c:126,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/storage.c:127,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/storage.c:128,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 104
    functionDepth: 5
    functionLinenumber: 104
    functionLinenumberEnd: 130
    functionName: js_storage_set_option
    functionSourceFile: /src/gpac/src/jsmods/storage.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - JS_GetOpaque
    - js_throw_err_msg
    - strcmp
    - GF_JS_EXCEPTION
    - gf_cfg_set_key
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_storage_set_option(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/storage.c:134,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/storage.c:135,1
    - Dst: gf_cfg_save
      Src: /src/gpac/src/jsmods/storage.c:136,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 132
    functionDepth: 3
    functionLinenumber: 132
    functionLinenumberEnd: 138
    functionName: js_storage_save
    functionSourceFile: /src/gpac/src/jsmods/storage.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - gf_cfg_save
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_storage_save(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/storage.c:156,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/storage.c:157,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/storage.c:159,1
    - Dst: gf_sha1_csum
      Src: /src/gpac/src/jsmods/storage.c:163,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/storage.c:163,1
    - Dst: sprintf
      Src: /src/gpac/src/jsmods/storage.c:165,1
    - Dst: strcat
      Src: /src/gpac/src/jsmods/storage.c:166,1
    - Dst: strcat
      Src: /src/gpac/src/jsmods/storage.c:168,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/storage.c:170,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/storage.c:172,1
    - Dst: gf_cfg_get_filename
      Src: /src/gpac/src/jsmods/storage.c:173,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/storage.c:175,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/jsmods/storage.c:182,1
    - Dst: gf_cfg_force_new
      Src: /src/gpac/src/jsmods/storage.c:184,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/jsmods/storage.c:186,1
    - Dst: gf_list_add
      Src: /src/gpac/src/jsmods/storage.c:187,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/storage.c:191,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/storage.c:193,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/storage.c:194,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/storage.c:195,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 146
    functionDepth: 6
    functionLinenumber: 146
    functionLinenumberEnd: 197
    functionName: storage_constructor
    functionSourceFile: /src/gpac/src/jsmods/storage.c
    functionUses: 0
    functionsReached:
    - gf_cfg_force_new
    - gf_cfg_get_filename
    - gf_sha1_csum
    - gf_list_count
    - gf_opts_get_key
    - gf_cfg_set_key
    - JS_FreeCString
    - strcat
    - JS_ToCString
    - JS_IsString
    - gf_list_get
    - sprintf
    - gf_list_add
    - JS_NewObjectClass
    - strstr
    - strlen
    - JS_IsException
    - JS_SetOpaque
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue storage_constructor(JSContext *ctx, JSValueConst new_target,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/storage.c:202,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/storage.c:203,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/storage.c:203,1
    - Dst: gf_assert
      Src: /src/gpac/src/jsmods/storage.c:205,1
    - Dst: gf_list_new
      Src: /src/gpac/src/jsmods/storage.c:206,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/storage.c:209,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/storage.c:210,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/storage.c:210,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/storage.c:211,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/storage.c:213,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/storage.c:214,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - c
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 216
    functionName: js_storage_init
    functionSourceFile: /src/gpac/src/jsmods/storage.c
    functionUses: 0
    functionsReached:
    - JS_NewClass
    - gf_assert
    - gf_list_new
    - JS_NewObjectClass
    - JS_SetPropertyFunctionList
    - JS_NewCFunction2
    - countof
    - JS_SetClassProto
    - JS_NewClassID
    - JS_SetModuleExport
    - JS_GetRuntime
    linkageType: ''
    returnType: int
    signature: int js_storage_init(JSContext *c, JSModuleDef *m)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewCModule
      Src: /src/gpac/src/jsmods/storage.c:222,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/storage.c:225,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 227
    functionName: qjs_module_init_storage
    functionSourceFile: /src/gpac/src/jsmods/storage.c
    functionUses: 0
    functionsReached:
    - JS_AddModuleExport
    - JS_NewCModule
    linkageType: ''
    returnType: void
    signature: void qjs_module_init_storage(JSContext *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewRuntime
      Src: /src/gpac/src/jsmods/core.c:87,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/core.c:89,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/core.c:92,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/core.c:94,1
    - Dst: gf_list_new
      Src: /src/gpac/src/jsmods/core.c:98,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/jsmods/core.c:99,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/core.c:100,1
    - Dst: qjs_init_runtime_libc
      Src: /src/gpac/src/jsmods/core.c:102,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/jsmods/core.c:106,1
    - Dst: JS_NewContext
      Src: /src/gpac/src/jsmods/core.c:108,1
    - Dst: gf_list_add
      Src: /src/gpac/src/jsmods/core.c:110,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/jsmods/core.c:111,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 114
    functionName: gf_js_create_context
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 2
    functionsReached:
    - JS_NewRuntime
    - gf_mx_p
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - qjs_init_runtime_libc
    - gf_mx_v
    - gf_list_add
    - gf_mx_new
    - JS_NewContext
    linkageType: ''
    returnType: JSContext
    signature: JSContext *gf_js_create_context()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: js_reset_logs
      Src: /src/gpac/src/jsmods/core.c:120,1
    - Dst: gf_js_call_gc
      Src: /src/gpac/src/jsmods/core.c:121,1
    - Dst: gf_sys_get_rmtws
      Src: /src/gpac/src/jsmods/core.c:123,1
    - Dst: gf_rmt_get_on_new_client_task
      Src: /src/gpac/src/jsmods/core.c:125,1
    - Dst: gf_rmt_set_on_new_client_cbk
      Src: /src/gpac/src/jsmods/core.c:127,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:128,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:129,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:130,1
    - Dst: gf_sys_get_userws
      Src: /src/gpac/src/jsmods/core.c:134,1
    - Dst: gf_rmt_get_on_new_client_task
      Src: /src/gpac/src/jsmods/core.c:136,1
    - Dst: gf_rmt_set_on_new_client_cbk
      Src: /src/gpac/src/jsmods/core.c:138,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:139,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:140,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:141,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/jsmods/core.c:145,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/jsmods/core.c:146,1
    - Dst: JS_FreeContext
      Src: /src/gpac/src/jsmods/core.c:147,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/jsmods/core.c:148,1
    - Dst: gf_js_call_gc
      Src: /src/gpac/src/jsmods/core.c:149,1
    - Dst: JS_RunGC
      Src: /src/gpac/src/jsmods/core.c:155,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 116
    functionDepth: 3
    functionLinenumber: 116
    functionLinenumberEnd: 157
    functionName: gf_js_delete_context
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_rmt_get_on_new_client_task
    - JS_FreeContext
    - JS_FreeValue
    - JS_RunGC
    - gf_sys_get_rmtws
    - gf_mx_v
    - gf_sys_get_userws
    - gf_list_del_item
    - js_reset_logs
    - gf_rmt_set_on_new_client_cbk
    - gf_js_call_gc
    linkageType: ''
    returnType: void
    signature: void gf_js_delete_context(JSContext *ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/jsmods/core.c:162,1
    - Dst: qjs_uninit_runtime_libc
      Src: /src/gpac/src/jsmods/core.c:166,1
    - Dst: JS_FreeRuntime
      Src: /src/gpac/src/jsmods/core.c:167,1
    - Dst: gf_list_del
      Src: /src/gpac/src/jsmods/core.c:168,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:169,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:170,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/jsmods/core.c:171,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:172,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 159
    functionDepth: 6
    functionLinenumber: 159
    functionLinenumberEnd: 175
    functionName: gf_js_delete_runtime
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 1
    functionsReached:
    - gf_free
    - qjs_uninit_runtime_libc
    - JS_FreeRuntime
    - gf_opts_get_bool
    - gf_list_del
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void gf_js_delete_runtime()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:179,1
    - Dst: JS_RunGC
      Src: /src/gpac/src/jsmods/core.c:180,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - c
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 182
    functionName: gf_js_call_gc
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 6
    functionsReached:
    - JS_RunGC
    - gf_js_lock
    linkageType: ''
    returnType: void
    signature: void gf_js_call_gc(JSContext *c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/jsmods/core.c:186,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 184
    functionDepth: 2
    functionLinenumber: 184
    functionLinenumberEnd: 189
    functionName: gf_js_context_is_valid
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 1
    functionsReached:
    - gf_list_find
    linkageType: ''
    returnType: Bool
    signature: Bool gf_js_context_is_valid(JSContext *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/jsmods/core.c:201,1
    - Dst: gf_mx_get_num_locks
      Src: /src/gpac/src/jsmods/core.c:204,1
    - Dst: JS_UpdateStackTop
      Src: /src/gpac/src/jsmods/core.c:205,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/jsmods/core.c:208,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - cx
    - LockIt
    argTypes:
    - struct JSContext*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 195
    functionDepth: 1
    functionLinenumber: 195
    functionLinenumberEnd: 210
    functionName: gf_js_lock
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 15
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    - gf_mx_get_num_locks
    - JS_UpdateStackTop
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_js_lock(struct JSContext *cx, Bool LockIt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/jsmods/core.c:215,1
    - Dst: gf_mx_try_lock
      Src: /src/gpac/src/jsmods/core.c:216,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - cx
    argTypes:
    - struct JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 220
    functionName: gf_js_try_lock
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 2
    functionsReached:
    - gf_assert
    - gf_mx_try_lock
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_js_try_lock(struct JSContext *cx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 226
    functionName: gf_js_get_rt
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: JSRuntime
    signature: JSRuntime *gf_js_get_rt()
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsNumber
      Src: /src/gpac/src/jsmods/core.c:240,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:241,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/jsmods/core.c:247,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:248,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/core.c:249,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/core.c:249,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:250,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:251,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/core.c:254,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:258,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/core.c:263,1
    - Dst: fprintf
      Src: /src/gpac/src/jsmods/core.c:266,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/core.c:271,1
    - Dst: fprintf
      Src: /src/gpac/src/jsmods/core.c:274,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:278,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:279,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/jsmods/core.c:282,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/jsmods/core.c:284,1
    - Dst: fprintf
      Src: /src/gpac/src/jsmods/core.c:286,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/core.c:290,1
    - Dst: fprintf
      Src: /src/gpac/src/jsmods/core.c:293,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/core.c:295,1
    - Dst: js_dump_error_exc
      Src: /src/gpac/src/jsmods/core.c:296,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/core.c:300,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:303,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/core.c:309,1
    - Dst: fprintf
      Src: /src/gpac/src/jsmods/core.c:312,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:314,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 67
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - ltool
    - error_type
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 230
    functionDepth: 3
    functionLinenumber: 230
    functionLinenumberEnd: 316
    functionName: js_print_ex
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_GetGlobalObject
    - JS_ToCString
    - gf_sys_format_help
    - js_dump_error_exc
    - JS_IsNumber
    - JS_IsNull
    - JS_IsException
    - JS_FreeValue
    - GF_LOG
    - JS_IsUndefined
    - JS_FreeCString
    - JS_ToInt32
    - JS_GetPropertyStr
    - GF_JS_EXCEPTION
    - strlen
    - fprintf
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_print_ex(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv, u32 ltool, u32 error_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_print_ex
      Src: /src/gpac/src/jsmods/core.c:319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 317
    functionDepth: 4
    functionLinenumber: 317
    functionLinenumberEnd: 320
    functionName: js_print
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_print_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_print(JSContext *ctx, JSValueConst this_val, int argc, JSValueConst
      *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsError
      Src: /src/gpac/src/jsmods/core.c:326,1
    - Dst: js_print_ex
      Src: /src/gpac/src/jsmods/core.c:329,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:332,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/core.c:333,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:334,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/core.c:336,1
    - Dst: fprintf
      Src: /src/gpac/src/jsmods/core.c:338,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:340,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:342,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - ctx
    - exception_val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 322
    functionDepth: 4
    functionLinenumber: 322
    functionLinenumberEnd: 344
    functionName: js_dump_error_exc
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 1
    functionsReached:
    - JS_ToCString
    - GF_LOG
    - JS_FreeValue
    - JS_IsUndefined
    - JS_FreeCString
    - js_print_ex
    - JS_GetPropertyStr
    - JS_IsError
    - fprintf
    linkageType: ''
    returnType: void
    signature: void js_dump_error_exc(JSContext *ctx, const JSValue exception_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetException
      Src: /src/gpac/src/jsmods/core.c:348,1
    - Dst: js_dump_error_exc
      Src: /src/gpac/src/jsmods/core.c:349,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:350,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 346
    functionDepth: 5
    functionLinenumber: 346
    functionLinenumberEnd: 351
    functionName: js_dump_error
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 11
    functionsReached:
    - JS_FreeValue
    - js_dump_error_exc
    - JS_GetException
    linkageType: ''
    returnType: void
    signature: void js_dump_error(JSContext *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ExecutePendingJob
      Src: /src/gpac/src/jsmods/core.c:358,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/core.c:358,1
    - Dst: js_dump_error
      Src: /src/gpac/src/jsmods/core.c:361,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 354
    functionDepth: 6
    functionLinenumber: 354
    functionLinenumberEnd: 366
    functionName: js_std_loop
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 8
    functionsReached:
    - JS_GetRuntime
    - js_dump_error
    - JS_ExecutePendingJob
    linkageType: ''
    returnType: void
    signature: void js_std_loop(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - name
    - ','
    - fgetter
    - ','
    - fsetter
    - ','
    - magic
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 372
    functionDepth: 0
    functionLinenumber: 372
    functionLinenumberEnd: 373
    functionName: JS_CGETSET_MAGIC_DEF_ENUM
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JS_CGETSET_MAGIC_DEF_ENUM(name, fgetter, fsetter, magic)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:395,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - rt
    - opaque
    - ptr
    argTypes:
    - JSRuntime*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 393
    functionDepth: 0
    functionLinenumber: 393
    functionLinenumberEnd: 396
    functionName: js_gpac_free
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void js_gpac_free(JSRuntime *rt, void *opaque, void *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_del
      Src: /src/gpac/src/jsmods/core.c:402,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/core.c:403,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:404,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - rt
    - this_val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 398
    functionDepth: 3
    functionLinenumber: 398
    functionLinenumberEnd: 405
    functionName: js_bs_finalize
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_FreeValueRT
    - gf_bs_del
    linkageType: ''
    returnType: void
    signature: void js_bs_finalize(JSRuntime *rt, JSValue this_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/core.c:410,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - rt
    - this_val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 406
    functionDepth: 1
    functionLinenumber: 406
    functionLinenumberEnd: 411
    functionName: js_bs_gc_mark
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: void js_bs_gc_mark(JSRuntime *rt, JSValueConst this_val, JS_MarkFunc
      *mark_func)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:423,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:424,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/jsmods/core.c:424,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 425
      start: 420
    functionDepth: 4
    functionLinenumber: 420
    functionLinenumberEnd: 425
    functionName: js_bs_get_u8
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - gf_bs_read_u8
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_get_u8(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:430,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/jsmods/core.c:431,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:432,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 426
    functionDepth: 4
    functionLinenumber: 426
    functionLinenumberEnd: 433
    functionName: js_bs_get_s8
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - gf_bs_read_u8
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_get_s8(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:437,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:438,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/jsmods/core.c:438,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 434
    functionDepth: 4
    functionLinenumber: 434
    functionLinenumberEnd: 439
    functionName: js_bs_get_u16
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - gf_bs_read_u16
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_get_u16(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:443,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:444,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/jsmods/core.c:444,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 440
    functionDepth: 6
    functionLinenumber: 440
    functionLinenumberEnd: 445
    functionName: js_bs_get_u16_le
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - gf_bs_read_u16_le
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_get_u16_le(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:450,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/jsmods/core.c:451,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:452,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 446
    functionDepth: 4
    functionLinenumber: 446
    functionLinenumberEnd: 453
    functionName: js_bs_get_s16
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - gf_bs_read_u16
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_get_s16(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:457,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:458,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/jsmods/core.c:458,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 459
      start: 454
    functionDepth: 4
    functionLinenumber: 454
    functionLinenumberEnd: 459
    functionName: js_bs_get_u24
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - gf_bs_read_u24
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_get_u24(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:464,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/jsmods/core.c:465,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:466,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 460
    functionDepth: 4
    functionLinenumber: 460
    functionLinenumberEnd: 467
    functionName: js_bs_get_s32
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - gf_bs_read_u32
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_get_s32(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:471,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:472,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/jsmods/core.c:472,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 468
    functionDepth: 4
    functionLinenumber: 468
    functionLinenumberEnd: 473
    functionName: js_bs_get_u32
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - gf_bs_read_u32
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_get_u32(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:477,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:478,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/jsmods/core.c:478,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 479
      start: 474
    functionDepth: 6
    functionLinenumber: 474
    functionLinenumberEnd: 479
    functionName: js_bs_get_u32_le
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - gf_bs_read_u32_le
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_get_u32_le(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:483,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:484,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/jsmods/core.c:484,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 480
    functionDepth: 5
    functionLinenumber: 480
    functionLinenumberEnd: 485
    functionName: js_bs_get_u64
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_bs_read_u64
    - JS_NewInt64
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_get_u64(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:489,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:490,1
    - Dst: gf_bs_read_u64_le
      Src: /src/gpac/src/jsmods/core.c:490,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 486
    functionDepth: 6
    functionLinenumber: 486
    functionLinenumberEnd: 491
    functionName: js_bs_get_u64_le
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_bs_read_u64_le
    - JS_NewInt64
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_get_u64_le(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:496,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/jsmods/core.c:497,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:498,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 492
    functionDepth: 5
    functionLinenumber: 492
    functionLinenumberEnd: 499
    functionName: js_bs_get_s64
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_bs_read_u64
    - JS_NewInt64
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_get_s64(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:503,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/core.c:504,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/jsmods/core.c:504,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 505
      start: 500
    functionDepth: 6
    functionLinenumber: 500
    functionLinenumberEnd: 505
    functionName: js_bs_get_float
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_bs_read_float
    - JS_NewFloat64
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_get_float(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:509,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/core.c:510,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/jsmods/core.c:510,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 506
    functionDepth: 5
    functionLinenumber: 506
    functionLinenumberEnd: 511
    functionName: js_bs_get_double
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_bs_read_double
    - JS_NewFloat64
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_get_double(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:516,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:517,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:517,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:519,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/jsmods/core.c:519,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:520,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/jsmods/core.c:520,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 512
    functionDepth: 6
    functionLinenumber: 512
    functionLinenumberEnd: 521
    functionName: js_bs_get_bits
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_long_int
    - JS_NewInt64
    - JS_ToInt32
    - gf_bs_read_int
    - GF_JS_EXCEPTION
    - JS_NewInt32
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_get_bits(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:527,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/jsmods/core.c:528,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:530,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:531,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 522
    functionDepth: 5
    functionLinenumber: 522
    functionLinenumberEnd: 533
    functionName: js_bs_get_string
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_bs_read_utf8
    - JS_NewString
    - gf_free
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_get_string(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:542,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:543,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/core.c:545,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/core.c:546,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:548,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:548,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/jsmods/core.c:550,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:550,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:555,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/jsmods/core.c:561,1
    - Dst: gf_bs_insert_data
      Src: /src/gpac/src/jsmods/core.c:563,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/core.c:564,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/jsmods/core.c:567,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:569,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - mode
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 535
    functionDepth: 8
    functionLinenumber: 535
    functionLinenumberEnd: 570
    functionName: js_bs_data_io
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - js_throw_err
    - gf_bs_insert_data
    - gf_bs_write_data
    - JS_ToInt64
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - JS_IsObject
    - JS_GetArrayBuffer
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_data_io(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv, u32 mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_bs_data_io
      Src: /src/gpac/src/jsmods/core.c:574,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 572
    functionDepth: 9
    functionLinenumber: 572
    functionLinenumberEnd: 575
    functionName: js_bs_get_data
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_bs_data_io
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_get_data(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/jsmods/core.c:580,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:581,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/jsmods/core.c:581,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 577
    functionDepth: 4
    functionLinenumber: 577
    functionLinenumberEnd: 582
    functionName: js_bs_get_4cc
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_bs_read_u32
    - JS_NewString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_get_4cc(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:588,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:589,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:589,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/jsmods/core.c:590,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 584
    functionDepth: 7
    functionLinenumber: 584
    functionLinenumberEnd: 592
    functionName: js_bs_skip_bytes
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToInt32
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_skip_bytes(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:596,1
    - Dst: gf_bs_is_align
      Src: /src/gpac/src/jsmods/core.c:597,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 599
      start: 593
    functionDepth: 1
    functionLinenumber: 593
    functionLinenumberEnd: 599
    functionName: js_bs_is_align
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_bs_is_align
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_is_align(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:603,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/jsmods/core.c:604,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 600
    functionDepth: 6
    functionLinenumber: 600
    functionLinenumberEnd: 606
    functionName: js_bs_align
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_bs_align
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_align(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:610,1
    - Dst: gf_bs_truncate
      Src: /src/gpac/src/jsmods/core.c:611,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 613
      start: 607
    functionDepth: 1
    functionLinenumber: 607
    functionLinenumberEnd: 613
    functionName: js_bs_truncate
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_bs_truncate
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_truncate(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:617,1
    - Dst: gf_bs_flush
      Src: /src/gpac/src/jsmods/core.c:618,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 620
      start: 614
    functionDepth: 3
    functionLinenumber: 614
    functionLinenumberEnd: 620
    functionName: js_bs_flush
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_bs_flush
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_flush(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:624,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/jsmods/core.c:625,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/core.c:625,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 627
      start: 621
    functionDepth: 1
    functionLinenumber: 621
    functionLinenumberEnd: 627
    functionName: js_bs_epb_mode
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - gf_bs_enable_emulation_byte_removal
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_epb_mode(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:634,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:635,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:635,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/jsmods/core.c:637,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:637,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:639,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/jsmods/core.c:639,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 640
      start: 629
    functionDepth: 8
    functionLinenumber: 629
    functionLinenumberEnd: 640
    functionName: js_bs_peek
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_bs_peek_bits
    - JS_ToInt64
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - JS_NewInt32
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_peek(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:646,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/jsmods/core.c:647,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:647,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/jsmods/core.c:649,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/jsmods/core.c:650,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/jsmods/core.c:651,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/jsmods/core.c:652,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/jsmods/core.c:653,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/jsmods/core.c:654,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/jsmods/core.c:655,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/jsmods/core.c:656,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/jsmods/core.c:657,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/jsmods/core.c:658,1
    - Dst: gf_bs_write_u64_le
      Src: /src/gpac/src/jsmods/core.c:659,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/jsmods/core.c:660,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 43
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - mode
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 663
      start: 642
    functionDepth: 6
    functionLinenumber: 642
    functionLinenumberEnd: 663
    functionName: js_bs_put_val
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32_le
    - gf_bs_write_u24
    - gf_bs_write_u16
    - gf_bs_write_u64
    - gf_bs_write_u16_le
    - JS_ToInt64
    - gf_bs_write_u64_le
    - GF_JS_EXCEPTION
    - gf_bs_write_u32
    - gf_bs_write_u8
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_put_val(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv, u32 mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_bs_put_val
      Src: /src/gpac/src/jsmods/core.c:666,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 664
    functionDepth: 7
    functionLinenumber: 664
    functionLinenumberEnd: 667
    functionName: js_bs_put_u8
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_bs_put_val
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_put_u8(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_bs_put_val
      Src: /src/gpac/src/jsmods/core.c:670,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 668
    functionDepth: 7
    functionLinenumber: 668
    functionLinenumberEnd: 671
    functionName: js_bs_put_s8
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_bs_put_val
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_put_s8(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_bs_put_val
      Src: /src/gpac/src/jsmods/core.c:674,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 675
      start: 672
    functionDepth: 7
    functionLinenumber: 672
    functionLinenumberEnd: 675
    functionName: js_bs_put_u16
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_bs_put_val
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_put_u16(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_bs_put_val
      Src: /src/gpac/src/jsmods/core.c:678,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 676
    functionDepth: 7
    functionLinenumber: 676
    functionLinenumberEnd: 679
    functionName: js_bs_put_u16_le
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_bs_put_val
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_put_u16_le(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_bs_put_val
      Src: /src/gpac/src/jsmods/core.c:682,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 683
      start: 680
    functionDepth: 7
    functionLinenumber: 680
    functionLinenumberEnd: 683
    functionName: js_bs_put_s16
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_bs_put_val
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_put_s16(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_bs_put_val
      Src: /src/gpac/src/jsmods/core.c:686,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 687
      start: 684
    functionDepth: 7
    functionLinenumber: 684
    functionLinenumberEnd: 687
    functionName: js_bs_put_u24
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_bs_put_val
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_put_u24(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_bs_put_val
      Src: /src/gpac/src/jsmods/core.c:690,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 688
    functionDepth: 7
    functionLinenumber: 688
    functionLinenumberEnd: 691
    functionName: js_bs_put_u32
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_bs_put_val
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_put_u32(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_bs_put_val
      Src: /src/gpac/src/jsmods/core.c:694,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 695
      start: 692
    functionDepth: 7
    functionLinenumber: 692
    functionLinenumberEnd: 695
    functionName: js_bs_put_u32_le
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_bs_put_val
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_put_u32_le(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_bs_put_val
      Src: /src/gpac/src/jsmods/core.c:698,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 699
      start: 696
    functionDepth: 7
    functionLinenumber: 696
    functionLinenumberEnd: 699
    functionName: js_bs_put_s32
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_bs_put_val
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_put_s32(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_bs_put_val
      Src: /src/gpac/src/jsmods/core.c:702,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 703
      start: 700
    functionDepth: 7
    functionLinenumber: 700
    functionLinenumberEnd: 703
    functionName: js_bs_put_u64
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_bs_put_val
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_put_u64(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_bs_put_val
      Src: /src/gpac/src/jsmods/core.c:706,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 707
      start: 704
    functionDepth: 7
    functionLinenumber: 704
    functionLinenumberEnd: 707
    functionName: js_bs_put_u64_le
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_bs_put_val
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_put_u64_le(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_bs_put_val
      Src: /src/gpac/src/jsmods/core.c:710,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 708
    functionDepth: 7
    functionLinenumber: 708
    functionLinenumberEnd: 711
    functionName: js_bs_put_s64
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_bs_put_val
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_put_s64(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:717,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/jsmods/core.c:718,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:718,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:719,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:719,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/jsmods/core.c:721,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/jsmods/core.c:723,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 725
      start: 712
    functionDepth: 5
    functionLinenumber: 712
    functionLinenumberEnd: 725
    functionName: js_bs_put_bits
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - JS_ToInt64
    - JS_ToInt32
    - gf_bs_write_long_int
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_put_bits(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:730,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/core.c:731,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:731,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/jsmods/core.c:732,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 734
      start: 726
    functionDepth: 5
    functionLinenumber: 726
    functionLinenumberEnd: 734
    functionName: js_bs_put_float
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - gf_bs_write_float
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_put_float(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:739,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/core.c:740,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:740,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/jsmods/core.c:741,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 743
      start: 735
    functionDepth: 5
    functionLinenumber: 735
    functionLinenumberEnd: 743
    functionName: js_bs_put_double
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - gf_bs_write_double
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_put_double(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_bs_data_io
      Src: /src/gpac/src/jsmods/core.c:746,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 747
      start: 744
    functionDepth: 9
    functionLinenumber: 744
    functionLinenumberEnd: 747
    functionName: js_bs_put_data
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_bs_data_io
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_put_data(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_bs_data_io
      Src: /src/gpac/src/jsmods/core.c:750,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 748
    functionDepth: 9
    functionLinenumber: 748
    functionLinenumberEnd: 751
    functionName: js_bs_insert_data
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_bs_data_io
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_insert_data(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:757,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/core.c:758,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:758,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:759,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/core.c:760,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:761,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:762,1
    - Dst: GF_4CC
      Src: /src/gpac/src/jsmods/core.c:764,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:765,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/jsmods/core.c:766,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 753
    functionDepth: 4
    functionLinenumber: 753
    functionLinenumberEnd: 768
    functionName: js_bs_put_4cc
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - GF_4CC
    - GF_JS_EXCEPTION
    - gf_bs_write_u32
    - strlen
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_put_4cc(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:773,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/core.c:774,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:774,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:775,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:776,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/jsmods/core.c:777,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:778,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 780
      start: 770
    functionDepth: 5
    functionLinenumber: 770
    functionLinenumberEnd: 780
    functionName: js_bs_put_string
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - gf_bs_write_utf8
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_put_string(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:788,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/jsmods/core.c:789,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/jsmods/core.c:792,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 797
      start: 782
    functionDepth: 9
    functionLinenumber: 782
    functionLinenumberEnd: 797
    functionName: js_bs_get_content
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_bs_get_content
    - JS_NewArrayBuffer
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_get_content(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:805,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:807,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:808,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/core.c:810,1
    - Dst: gf_bs_transfer
      Src: /src/gpac/src/jsmods/core.c:812,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/core.c:813,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 815
      start: 799
    functionDepth: 10
    functionLinenumber: 799
    functionLinenumberEnd: 815
    functionName: js_bs_transfer
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - JS_GetOpaque
    - gf_bs_transfer
    - JS_ToBool
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_transfer(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:832,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:835,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/jsmods/core.c:835,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:837,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/jsmods/core.c:837,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:839,1
    - Dst: gf_bs_get_refreshed_size
      Src: /src/gpac/src/jsmods/core.c:839,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:841,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/jsmods/core.c:841,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:843,1
    - Dst: gf_bs_get_bit_position
      Src: /src/gpac/src/jsmods/core.c:843,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:845,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/jsmods/core.c:845,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:847,1
    - Dst: gf_bs_bits_available
      Src: /src/gpac/src/jsmods/core.c:847,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/core.c:849,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/jsmods/core.c:849,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 853
      start: 829
    functionDepth: 3
    functionLinenumber: 829
    functionLinenumberEnd: 853
    functionName: js_bs_prop_get
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_bs_bits_available
    - gf_bs_get_bit_position
    - gf_bs_get_bit_offset
    - gf_bs_get_size
    - gf_bs_available
    - gf_bs_get_position
    - JS_NewInt64
    - gf_bs_is_overflow
    - JS_NewBool
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - gf_bs_get_refreshed_size
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_prop_get(JSContext *ctx, JSValueConst this_val, int magic)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:858,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/jsmods/core.c:862,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:862,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/jsmods/core.c:863,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - this_val
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 867
      start: 854
    functionDepth: 7
    functionLinenumber: 854
    functionLinenumberEnd: 867
    functionName: js_bs_prop_set
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToInt64
    - gf_bs_seek
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bs_prop_set(JSContext *ctx, JSValueConst this_val, JSValueConst
      value, int magic)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/jsmods/core.c:935,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/core.c:936,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:937,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/core.c:939,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/jsmods/core.c:940,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/jsmods/core.c:942,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/core.c:948,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:949,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/core.c:950,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/jsmods/core.c:951,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/jsmods/core.c:953,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:957,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/core.c:959,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/jsmods/core.c:961,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/core.c:962,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/core.c:964,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/core.c:965,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/jsmods/core.c:966,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:967,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/core.c:973,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/core.c:975,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 41
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 977
      start: 928
    functionDepth: 3
    functionLinenumber: 928
    functionLinenumberEnd: 977
    functionName: bitstream_constructor
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_NewObjectClass
    - JS_DupValue
    - js_throw_err
    - gf_bs_new
    - GF_SAFEALLOC
    - JS_GetOpaque
    - JS_IsException
    - JS_SetOpaque
    - JS_ToBool
    - gf_bs_del
    - GF_JS_EXCEPTION
    - gf_bs_from_file
    - JS_IsObject
    - JS_GetArrayBuffer
    linkageType: ''
    returnType: JSValue
    signature: JSValue bitstream_constructor(JSContext *ctx, JSValueConst new_target,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsBool
      Src: /src/gpac/src/jsmods/core.c:986,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/core.c:986,1
    - Dst: gf_sys_enable_rmtws
      Src: /src/gpac/src/jsmods/core.c:987,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 989
      start: 984
    functionDepth: 2
    functionLinenumber: 984
    functionLinenumberEnd: 989
    functionName: js_sys_enable_rmtws
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_sys_enable_rmtws
    - JS_IsBool
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_enable_rmtws(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsBool
      Src: /src/gpac/src/jsmods/core.c:992,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/core.c:992,1
    - Dst: gf_sys_enable_userws
      Src: /src/gpac/src/jsmods/core.c:993,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 995
      start: 990
    functionDepth: 2
    functionLinenumber: 990
    functionLinenumberEnd: 995
    functionName: js_sys_enable_userws
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_sys_enable_userws
    - JS_IsBool
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_enable_userws(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:999,1
    - Dst: gf_rmt_client_get_on_data_task
      Src: /src/gpac/src/jsmods/core.c:1002,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/core.c:1003,1
    - Dst: gf_rmt_client_set_on_data_cbk
      Src: /src/gpac/src/jsmods/core.c:1004,1
    - Dst: gf_rmt_client_get_on_del_task
      Src: /src/gpac/src/jsmods/core.c:1006,1
    - Dst: gf_rmt_client_set_on_del_cbk
      Src: /src/gpac/src/jsmods/core.c:1007,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/core.c:1009,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1012,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1013,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:1014,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1018,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1019,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:1020,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1023
      start: 997
    functionDepth: 2
    functionLinenumber: 997
    functionLinenumberEnd: 1023
    functionName: js_sys_rmt_client_finalizer
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_rmt_client_set_on_data_cbk
    - JS_GetOpaque
    - GF_LOG
    - JS_SetOpaque
    - JS_FreeValue
    - gf_rmt_client_get_on_del_task
    - gf_rmt_client_set_on_del_cbk
    - gf_rmt_client_get_on_data_task
    linkageType: ''
    returnType: void
    signature: void js_sys_rmt_client_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:1027,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1042
      start: 1025
    functionDepth: 1
    functionLinenumber: 1025
    functionLinenumberEnd: 1042
    functionName: js_sys_rmt_client_gc_mark
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    linkageType: ''
    returnType: void
    signature: void js_sys_rmt_client_gc_mark(JSRuntime *rt, JSValueConst val, JS_MarkFunc
      *mark_func)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/core.c:1063,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:1065,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/core.c:1067,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/core.c:1069,1
    - Dst: js_dump_error
      Src: /src/gpac/src/jsmods/core.c:1070,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1072,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1073,1
    - Dst: js_std_loop
      Src: /src/gpac/src/jsmods/core.c:1074,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:1075,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - task
    - arg
    argTypes:
    - JS_Sys_Task*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1077
      start: 1058
    functionDepth: 6
    functionLinenumber: 1058
    functionLinenumberEnd: 1077
    functionName: js_sys_rmt_run_task
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_IsUndefined
    - gf_js_lock
    - js_dump_error
    - js_std_loop
    linkageType: ''
    returnType: void
    signature: void js_sys_rmt_run_task(JS_Sys_Task* task, JSValue arg)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/core.c:1083,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/core.c:1085,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/core.c:1087,1
    - Dst: js_sys_rmt_run_task
      Src: /src/gpac/src/jsmods/core.c:1088,1
    - Dst: js_sys_rmt_client_finalizer
      Src: /src/gpac/src/jsmods/core.c:1090,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 1
    argNames:
    - udta
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1094
      start: 1080
    functionDepth: 7
    functionLinenumber: 1080
    functionLinenumberEnd: 1094
    functionName: js_sys_rmt_on_del_client
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_sys_rmt_run_task
    - JS_IsFunction
    - GF_LOG
    - JS_IsUndefined
    - js_sys_rmt_client_finalizer
    linkageType: ''
    returnType: void
    signature: void js_sys_rmt_on_del_client(void *udta)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewArrayBufferCopy
      Src: /src/gpac/src/jsmods/core.c:1103,1
    - Dst: JS_NewStringLen
      Src: /src/gpac/src/jsmods/core.c:1105,1
    - Dst: js_sys_rmt_run_task
      Src: /src/gpac/src/jsmods/core.c:1108,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - udta
    - payload
    - size
    - is_binary
    argTypes:
    - void*
    - u8*
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1110
      start: 1097
    functionDepth: 7
    functionLinenumber: 1097
    functionLinenumberEnd: 1110
    functionName: js_sys_rmt_client_on_data
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_sys_rmt_run_task
    - JS_NewStringLen
    - JS_NewArrayBufferCopy
    linkageType: ''
    returnType: void
    signature: void js_sys_rmt_client_on_data(void *udta, const u8* payload, u64 size,
      Bool is_binary)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:1114,1
    - Dst: gf_rmt_get_peer_address
      Src: /src/gpac/src/jsmods/core.c:1120,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1122,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1127
      start: 1112
    functionDepth: 1
    functionLinenumber: 1112
    functionLinenumberEnd: 1127
    functionName: js_sys_rmt_client_prop_get
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_rmt_get_peer_address
    - JS_NewString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_rmt_client_prop_get(JSContext *ctx, JSValueConst this_val,
      int magic)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:1131,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1133,1
    - Dst: gf_rmt_client_get_on_data_task
      Src: /src/gpac/src/jsmods/core.c:1138,1
    - Dst: gf_rmt_client_set_on_data_cbk
      Src: /src/gpac/src/jsmods/core.c:1140,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1141,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1142,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:1143,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/core.c:1146,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/core.c:1149,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1150,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/core.c:1154,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/core.c:1155,1
    - Dst: gf_rmt_client_set_on_data_cbk
      Src: /src/gpac/src/jsmods/core.c:1157,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/core.c:1166,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/core.c:1166,1
    - Dst: gf_rmt_client_get_on_del_task
      Src: /src/gpac/src/jsmods/core.c:1168,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1171,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/core.c:1177,1
    - Dst: gf_rmt_client_get_on_del_task
      Src: /src/gpac/src/jsmods/core.c:1179,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1181,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1182,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/core.c:1185,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1187,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/core.c:1191,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/core.c:1192,1
    - Dst: gf_rmt_client_set_on_del_cbk
      Src: /src/gpac/src/jsmods/core.c:1194,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 47
    argCount: 4
    argNames:
    - ctx
    - this_val
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1202
      start: 1129
    functionDepth: 2
    functionLinenumber: 1129
    functionLinenumberEnd: 1202
    functionName: js_sys_rmt_client_prop_set
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_DupValue
    - gf_rmt_client_set_on_data_cbk
    - JS_IsNull
    - JS_IsFunction
    - JS_GetOpaque
    - JS_FreeValue
    - GF_SAFEALLOC
    - JS_IsUndefined
    - gf_rmt_client_get_on_del_task
    - GF_JS_EXCEPTION
    - gf_rmt_client_set_on_del_cbk
    - gf_rmt_client_get_on_data_task
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_rmt_client_prop_set(JSContext *ctx, JSValueConst this_val,
      JSValueConst value, int magic)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:1206,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1208,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/core.c:1213,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:1214,1
    - Dst: gf_rmt_client_send_to_ws
      Src: /src/gpac/src/jsmods/core.c:1215,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/core.c:1215,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/core.c:1216,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:1217,1
    - Dst: JS_IsArrayBuffer
      Src: /src/gpac/src/jsmods/core.c:1219,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/core.c:1221,1
    - Dst: gf_rmt_client_send_to_ws
      Src: /src/gpac/src/jsmods/core.c:1223,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/core.c:1224,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1230
      start: 1204
    functionDepth: 11
    functionLinenumber: 1204
    functionLinenumberEnd: 1230
    functionName: js_sys_rmt_client_send
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - JS_GetOpaque
    - GF_LOG
    - JS_IsArrayBuffer
    - JS_GetArrayBuffer
    - GF_JS_EXCEPTION
    - gf_rmt_client_send_to_ws
    - strlen
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_rmt_client_send(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/core.c:1245,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/core.c:1246,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/core.c:1247,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/core.c:1249,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/core.c:1252,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/core.c:1255,1
    - Dst: gf_rmt_client_set_on_del_cbk
      Src: /src/gpac/src/jsmods/core.c:1257,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/core.c:1259,1
    - Dst: js_sys_rmt_run_task
      Src: /src/gpac/src/jsmods/core.c:1261,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - udta
    - new_client
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1262
      start: 1241
    functionDepth: 7
    functionLinenumber: 1241
    functionLinenumberEnd: 1262
    functionName: js_sys_rmt_on_new_client
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_DupValue
    - js_sys_rmt_run_task
    - GF_SAFEALLOC
    - JS_IsException
    - GF_LOG
    - JS_SetOpaque
    - gf_rmt_client_set_on_del_cbk
    linkageType: ''
    returnType: void
    signature: void js_sys_rmt_on_new_client(void *udta, void* new_client)
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_get_rti
      Src: /src/gpac/src/jsmods/core.c:1321,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1324,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1326,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1328,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1330,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1332,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1334,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1336,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1338,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1340,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1342,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1344,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:1346,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:1348,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:1350,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:1352,1
    - Dst: gf_sys_get_battery_state
      Src: /src/gpac/src/jsmods/core.c:1360,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/core.c:1361,1
    - Dst: gf_sys_get_battery_state
      Src: /src/gpac/src/jsmods/core.c:1365,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/core.c:1366,1
    - Dst: gf_sys_get_battery_state
      Src: /src/gpac/src/jsmods/core.c:1370,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1371,1
    - Dst: gf_sys_get_battery_state
      Src: /src/gpac/src/jsmods/core.c:1375,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1376,1
    - Dst: gf_sys_get_battery_state
      Src: /src/gpac/src/jsmods/core.c:1380,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1381,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1385,1
    - Dst: gf_sk_get_host_name
      Src: /src/gpac/src/jsmods/core.c:1389,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1390,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/jsmods/core.c:1395,1
    - Dst: getenv
      Src: /src/gpac/src/jsmods/core.c:1397,1
    - Dst: getenv
      Src: /src/gpac/src/jsmods/core.c:1400,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/jsmods/core.c:1403,1
    - Dst: getenv
      Src: /src/gpac/src/jsmods/core.c:1405,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1408,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/core.c:1411,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/jsmods/core.c:1411,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/core.c:1413,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/jsmods/core.c:1413,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/core.c:1416,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/core.c:1418,1
    - Dst: gf_log_use_color
      Src: /src/gpac/src/jsmods/core.c:1418,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/core.c:1421,1
    - Dst: gf_sys_is_quiet
      Src: /src/gpac/src/jsmods/core.c:1421,1
    - Dst: gf_get_user_name
      Src: /src/gpac/src/jsmods/core.c:1425,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1426,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1429,1
    - Dst: gf_net_get_timezone
      Src: /src/gpac/src/jsmods/core.c:1429,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1432,1
    - Dst: gf_file_handles_count
      Src: /src/gpac/src/jsmods/core.c:1432,1
    - Dst: gf_get_default_cache_directory
      Src: /src/gpac/src/jsmods/core.c:1435,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1436,1
    - Dst: gf_opts_default_shared_directory
      Src: /src/gpac/src/jsmods/core.c:1442,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1443,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1447,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1449,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/jsmods/core.c:1449,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1451,1
    - Dst: gf_gpac_copyright
      Src: /src/gpac/src/jsmods/core.c:1451,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1454,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1456,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1458,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 124
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1464
      start: 1313
    functionDepth: 5
    functionLinenumber: 1313
    functionLinenumberEnd: 1464
    functionName: js_sys_prop_get
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - gf_opts_get_key
    - gf_sk_get_host_name
    - gf_sys_get_rti
    - gf_get_default_cache_directory
    - JS_NewString
    - gf_sys_is_quiet
    - gf_get_user_name
    - JS_NewInt32
    - getenv
    - gf_sys_get_battery_state
    - gf_sys_is_test_mode
    - gf_log_use_color
    - gf_net_get_timezone
    - gf_gpac_copyright
    - JS_NewBool
    - gf_opts_default_shared_directory
    - gf_gpac_version
    - gf_file_handles_count
    - gf_sys_old_arch_compat
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_prop_get(JSContext *ctx, JSValueConst this_val, int
      magic)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:1470,1
    - Dst: free
      Src: /src/gpac/src/jsmods/core.c:1473,1
    - Dst: gf_log_set_tools_levels
      Src: /src/gpac/src/jsmods/core.c:1477,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:1478,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:1483,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1486,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1488,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/src/jsmods/core.c:1490,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:1492,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1493
      start: 1466
    functionDepth: 3
    functionLinenumber: 1466
    functionLinenumberEnd: 1493
    functionName: js_reset_logs
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_log_set_callback
    - JS_FreeValue
    - gf_log_set_tools_levels
    - gf_js_lock
    - free
    linkageType: ''
    returnType: void
    signature: void js_reset_logs(JSContext *ctx)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_v
      Src: /src/gpac/src/jsmods/core.c:1507,1
    - Dst: gf_js_try_lock
      Src: /src/gpac/src/jsmods/core.c:1513,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/jsmods/core.c:1514,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1518,1
    - Dst: gf_log_tool_name
      Src: /src/gpac/src/jsmods/core.c:1518,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1519,1
    - Dst: va_copy
      Src: /src/gpac/src/jsmods/core.c:1522,1
    - Dst: vsnprintf
      Src: /src/gpac/src/jsmods/core.c:1523,1
    - Dst: va_end
      Src: /src/gpac/src/jsmods/core.c:1524,1
    - Dst: realloc
      Src: /src/gpac/src/jsmods/core.c:1528,1
    - Dst: vsprintf
      Src: /src/gpac/src/jsmods/core.c:1530,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1531,1
    - Dst: gf_logs_get_thread_tag
      Src: /src/gpac/src/jsmods/core.c:1535,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1536,1
    - Dst: gf_fs_get_script_data
      Src: /src/gpac/src/jsmods/core.c:1539,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/core.c:1540,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/core.c:1546,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1547,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1548,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1549,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1551,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1553,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1555,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:1557,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/jsmods/core.c:1559,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 39
    argCount: 5
    argNames:
    - cbck
    - log_level
    - log_tool
    - fmt
    - vlist
    argTypes:
    - void*
    - GF_LOG_Level
    - GF_LOG_Tool
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1560
      start: 1499
    functionDepth: 2
    functionLinenumber: 1499
    functionLinenumberEnd: 1560
    functionName: js_log_cbk
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_logs_get_thread_tag
    - gf_mx_p
    - vsprintf
    - gf_fs_get_script_data
    - va_copy
    - va_end
    - JS_IsNull
    - JS_Call
    - JS_FreeValue
    - JS_NewString
    - gf_mx_v
    - gf_js_try_lock
    - vsnprintf
    - gf_js_lock
    - realloc
    - JS_NewInt32
    - gf_log_tool_name
    linkageType: ''
    returnType: void
    signature: void js_log_cbk(void *cbck, GF_LOG_Level log_level, GF_LOG_Tool log_tool,
      const char* fmt, va_list vlist)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/core.c:1567,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1567,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:1568,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/jsmods/core.c:1569,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:1570,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/core.c:1574,1
    - Dst: gf_sys_get_rmtws
      Src: /src/gpac/src/jsmods/core.c:1580,1
    - Dst: gf_sys_get_userws
      Src: /src/gpac/src/jsmods/core.c:1581,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/core.c:1585,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/core.c:1585,1
    - Dst: gf_rmt_get_on_new_client_task
      Src: /src/gpac/src/jsmods/core.c:1587,1
    - Dst: gf_rmt_set_on_new_client_cbk
      Src: /src/gpac/src/jsmods/core.c:1589,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1590,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1591,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:1592,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/core.c:1597,1
    - Dst: gf_rmt_get_on_new_client_task
      Src: /src/gpac/src/jsmods/core.c:1598,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/core.c:1603,1
    - Dst: gf_rmt_set_on_new_client_cbk
      Src: /src/gpac/src/jsmods/core.c:1606,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1607,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1608,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:1609,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/core.c:1613,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1614,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/core.c:1618,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/core.c:1619,1
    - Dst: gf_rmt_set_on_new_client_cbk
      Src: /src/gpac/src/jsmods/core.c:1621,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/core.c:1627,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/core.c:1627,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/core.c:1628,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/core.c:1628,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1633,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:1635,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/core.c:1640,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/core.c:1640,1
    - Dst: gf_log_set_tools_levels
      Src: /src/gpac/src/jsmods/core.c:1642,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:1643,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/src/jsmods/core.c:1646,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/core.c:1647,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/core.c:1648,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/core.c:1649,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/src/jsmods/core.c:1651,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 83
    argCount: 4
    argNames:
    - ctx
    - this_val
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1658
      start: 1562
    functionDepth: 6
    functionLinenumber: 1562
    functionLinenumberEnd: 1658
    functionName: js_sys_prop_set
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_rmt_get_on_new_client_task
    - gf_opts_set_key
    - GF_SAFEALLOC
    - gf_log_set_tools_levels
    - JS_FreeCString
    - JS_ToCString
    - JS_IsString
    - JS_DupValue
    - gf_log_set_callback
    - JS_IsUndefined
    - JS_ToBool
    - gf_rmt_set_on_new_client_cbk
    - JS_IsNull
    - JS_IsFunction
    - GF_LOG
    - gf_sys_get_userws
    - JS_FreeValue
    - gf_sys_get_rmtws
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_prop_set(JSContext *ctx, JSValueConst this_val, JSValueConst
      value, int magic)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1664,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:1666,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1667,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/core.c:1668,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/src/jsmods/core.c:1670,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1672
      start: 1660
    functionDepth: 1
    functionLinenumber: 1660
    functionLinenumberEnd: 1672
    functionName: js_sys_set_arg_used
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_sys_mark_arg_used
    - JS_ToInt32
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_set_arg_used(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/core.c:1693,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:1694,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1694,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/core.c:1697,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/core.c:1699,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1708,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1710,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:1712,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:1714,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/core.c:1714,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:1715,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/core.c:1715,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:1716,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/core.c:1716,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:1717,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/core.c:1717,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:1718,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:1718,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:1719,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:1719,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/core.c:1721,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 4
    argNames:
    - cbck
    - file_name
    - file_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1724
      start: 1683
    functionDepth: 1
    functionLinenumber: 1683
    functionLinenumberEnd: 1724
    functionName: js_enum_dir_fct
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_SetPropertyUint32
    - JS_NewString
    - JS_NewInt64
    - JS_NewBool
    - JS_NewObject
    - JS_SetPropertyStr
    - strchr
    - strlen
    linkageType: ''
    returnType: Bool
    signature: Bool js_enum_dir_fct(void *cbck, char *file_name, char *file_path,
      GF_FileEnumInfo *file_info)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/core.c:1736,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:1737,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:1738,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/core.c:1740,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:1741,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:1742,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/core.c:1745,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:1746,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/jsmods/core.c:1750,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/core.c:1751,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/jsmods/core.c:1752,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:1753,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:1755,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:1757,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/core.c:1761,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/core.c:1761,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/core.c:1766,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/core.c:1767,1
    - Dst: gf_enum_directory
      Src: /src/gpac/src/jsmods/core.c:1769,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:1770,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:1771,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:1772,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/core.c:1777,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/core.c:1778,1
    - Dst: scenejs_get_compositor
      Src: /src/gpac/src/jsmods/core.c:1783,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/jsmods/core.c:1786,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:1788,1
    - Dst: gf_enum_directory
      Src: /src/gpac/src/jsmods/core.c:1793,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1794,1
    - Dst: gf_enum_directory
      Src: /src/gpac/src/jsmods/core.c:1798,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1799,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:1802,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:1803,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:1804,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 71
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1806
      start: 1726
    functionDepth: 3
    functionLinenumber: 1726
    functionLinenumberEnd: 1806
    functionName: js_sys_enum_directory
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - JS_IsString
    - gf_enum_directory
    - JS_IsException
    - scenejs_get_compositor
    - JS_NewArray
    - gf_url_concatenate
    - JS_ToBool
    - strcmp
    - GF_JS_EXCEPTION
    - JS_IsBool
    - strlen
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_enum_directory(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1812,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:1813,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1814,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1815,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/jsmods/core.c:1815,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1816
      start: 1809
    functionDepth: 1
    functionLinenumber: 1809
    functionLinenumberEnd: 1816
    functionName: js_sys_error_string
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_error_to_string
    - JS_ToInt32
    - JS_NewString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_error_string(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_prompt_has_input
      Src: /src/gpac/src/jsmods/core.c:1822,1
    - Dst: gf_prompt_get_char
      Src: /src/gpac/src/jsmods/core.c:1824,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1826,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1827
      start: 1818
    functionDepth: 1
    functionLinenumber: 1818
    functionLinenumberEnd: 1827
    functionName: js_sys_prompt_input
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_prompt_has_input
    - gf_prompt_get_char
    - JS_NewString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_prompt_input(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1835,1
    - Dst: fgets
      Src: /src/gpac/src/jsmods/core.c:1839,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/core.c:1842,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1848,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1849
      start: 1829
    functionDepth: 1
    functionLinenumber: 1829
    functionLinenumberEnd: 1849
    functionName: js_sys_prompt_string
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - fgets
    - strlen
    - JS_NewString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_prompt_string(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1854,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/core.c:1855,1
    - Dst: gf_prompt_set_echo_off
      Src: /src/gpac/src/jsmods/core.c:1857,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1859
      start: 1851
    functionDepth: 1
    functionLinenumber: 1851
    functionLinenumberEnd: 1859
    functionName: js_sys_prompt_echo_off
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_prompt_set_echo_off
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_prompt_echo_off(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1863,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:1864,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1864,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/jsmods/core.c:1866,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1868
      start: 1860
    functionDepth: 2
    functionLinenumber: 1860
    functionLinenumberEnd: 1868
    functionName: js_sys_prompt_code
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToInt32
    - gf_sys_set_console_code
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_prompt_code(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_prompt_get_size
      Src: /src/gpac/src/jsmods/core.c:1873,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/core.c:1875,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:1876,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1876,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:1877,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1877,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1879
      start: 1869
    functionDepth: 1
    functionLinenumber: 1869
    functionLinenumberEnd: 1879
    functionName: js_sys_prompt_size
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_prompt_get_size
    - JS_SetPropertyStr
    - JS_NewInt32
    - JS_NewObject
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_prompt_size(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:1887,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1887,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1888,1
    - Dst: gf_dom_get_friendly_name
      Src: /src/gpac/src/jsmods/core.c:1888,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/core.c:1890,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1892
      start: 1883
    functionDepth: 2
    functionLinenumber: 1883
    functionLinenumberEnd: 1892
    functionName: js_sys_keyname
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_dom_get_friendly_name
    - js_throw_err
    - JS_NewString
    - JS_ToInt32
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_keyname(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1899,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:1900,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1901,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1902,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/src/jsmods/core.c:1902,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:1903,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/core.c:1906,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1909
      start: 1896
    functionDepth: 2
    functionLinenumber: 1896
    functionLinenumberEnd: 1909
    functionName: js_sys_evt_by_name
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - js_throw_err
    - gf_dom_event_type_by_name
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_evt_by_name(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_RunGC
      Src: /src/gpac/src/jsmods/core.c:1914,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/core.c:1914,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1916
      start: 1912
    functionDepth: 1
    functionLinenumber: 1912
    functionLinenumberEnd: 1916
    functionName: js_sys_gc
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_RunGC
    - JS_GetRuntime
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_gc(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1920,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/jsmods/core.c:1920,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1921
      start: 1918
    functionDepth: 1
    functionLinenumber: 1918
    functionLinenumberEnd: 1921
    functionName: js_sys_clock
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_NewInt32
    - gf_sys_clock
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_clock(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:1924,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/jsmods/core.c:1924,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1925
      start: 1922
    functionDepth: 2
    functionLinenumber: 1922
    functionLinenumberEnd: 1925
    functionName: js_sys_clock_high_res
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_sys_clock_high_res
    - JS_NewInt64
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_clock_high_res(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1929,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/jsmods/core.c:1930,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1930,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1931,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/jsmods/core.c:1931,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1932
      start: 1926
    functionDepth: 3
    functionLinenumber: 1926
    functionLinenumberEnd: 1932
    functionName: js_sys_4cc_to_str
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToInt64
    - JS_NewString
    - gf_4cc_to_str
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_4cc_to_str(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/core.c:1937,1
    - Dst: gf_rand_init
      Src: /src/gpac/src/jsmods/core.c:1938,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1940
      start: 1934
    functionDepth: 1
    functionLinenumber: 1934
    functionLinenumberEnd: 1940
    functionName: js_sys_rand_init
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_rand_init
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_rand_init(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:1943,1
    - Dst: gf_rand
      Src: /src/gpac/src/jsmods/core.c:1943,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1944
      start: 1941
    functionDepth: 1
    functionLinenumber: 1941
    functionLinenumberEnd: 1944
    functionName: js_sys_rand
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_rand
    - JS_NewInt32
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_rand(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_rand
      Src: /src/gpac/src/jsmods/core.c:1947,1
    - Dst: gf_rand
      Src: /src/gpac/src/jsmods/core.c:1949,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:1950,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1951
      start: 1945
    functionDepth: 1
    functionLinenumber: 1945
    functionLinenumberEnd: 1951
    functionName: js_sys_rand64
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_rand
    - JS_NewInt64
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_rand64(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1956,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:1957,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1958,1
    - Dst: getenv
      Src: /src/gpac/src/jsmods/core.c:1959,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:1960,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:1961,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1962
      start: 1953
    functionDepth: 1
    functionLinenumber: 1953
    functionLinenumberEnd: 1962
    functionName: js_sys_getenv
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_NewString
    - GF_JS_EXCEPTION
    - getenv
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_getenv(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:1967,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/jsmods/core.c:1967,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:1970,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1971,1
    - Dst: gf_net_parse_date
      Src: /src/gpac/src/jsmods/core.c:1972,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:1973,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:1974,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1977,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:1978,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1978,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:1979,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1979,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:1980,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1980,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:1981,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1981,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:1982,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1982,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:1983,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:1983,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:1985,1
    - Dst: gf_net_get_utc_ts
      Src: /src/gpac/src/jsmods/core.c:1985,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 25
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1986
      start: 1964
    functionDepth: 3
    functionLinenumber: 1964
    functionLinenumberEnd: 1986
    functionName: js_sys_get_utc
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_NewInt64
    - JS_ToInt32
    - gf_net_parse_date
    - GF_JS_EXCEPTION
    - gf_net_get_utc
    - gf_net_get_utc_ts
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_get_utc(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/jsmods/core.c:1991,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/core.c:1992,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/core.c:1993,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:1994,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:1994,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:1995,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:1995,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1997
      start: 1988
    functionDepth: 1
    functionLinenumber: 1988
    functionLinenumberEnd: 1997
    functionName: js_sys_get_ntp
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_NewInt64
    - JS_SetPropertyStr
    - JS_NewObject
    - gf_net_get_ntp
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_get_ntp(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/core.c:2004,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2005,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2007,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/core.c:2008,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2008,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/jsmods/core.c:2009,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:2010,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2012,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/core.c:2013,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2013,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/jsmods/core.c:2014,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:2015,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/jsmods/core.c:2017,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/core.c:2029,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/core.c:2030,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2031,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:2031,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2032,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:2032,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2034
      start: 1999
    functionDepth: 1
    functionLinenumber: 1999
    functionLinenumberEnd: 2034
    functionName: js_sys_ntp_shift
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_IsNull
    - JS_IsException
    - JS_FreeValue
    - JS_NewInt64
    - JS_ToInt64
    - JS_GetPropertyStr
    - JS_NewObject
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - JS_IsObject
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_ntp_shift(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:2041,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2042,1
    - Dst: gf_sleep
      Src: /src/gpac/src/jsmods/core.c:2044,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2046
      start: 2037
    functionDepth: 1
    functionLinenumber: 2037
    functionLinenumberEnd: 2046
    functionName: js_sys_sleep
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToInt32
    - gf_sleep
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_sleep(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:2056,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2057,1
    - Dst: exit
      Src: /src/gpac/src/jsmods/core.c:2059,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2061
      start: 2049
    functionDepth: 1
    functionLinenumber: 2049
    functionLinenumberEnd: 2061
    functionName: js_sys_exit
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToInt32
    - exit
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_exit(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2067,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/core.c:2068,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:2070,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/jsmods/core.c:2072,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/core.c:2072,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:2073,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2075,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/core.c:2077,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2078,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2079,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/jsmods/core.c:2079,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2081,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2082
      start: 2062
    functionDepth: 1
    functionLinenumber: 2062
    functionLinenumberEnd: 2082
    functionName: js_sys_crc32
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - JS_GetArrayBuffer
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - gf_crc_32
    - strlen
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_crc32(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2090,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/core.c:2091,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:2092,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2093,1
    - Dst: gf_sha1_file
      Src: /src/gpac/src/jsmods/core.c:2094,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:2095,1
    - Dst: JS_NewArrayBufferCopy
      Src: /src/gpac/src/jsmods/core.c:2096,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/core.c:2097,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/core.c:2098,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2099,1
    - Dst: gf_sha1_csum
      Src: /src/gpac/src/jsmods/core.c:2101,1
    - Dst: JS_NewArrayBufferCopy
      Src: /src/gpac/src/jsmods/core.c:2102,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2104,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2105
      start: 2084
    functionDepth: 6
    functionLinenumber: 2084
    functionLinenumberEnd: 2105
    functionName: js_sys_sha1
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - JS_NewArrayBufferCopy
    - gf_sha1_csum
    - gf_sha1_file
    - JS_GetArrayBuffer
    - GF_JS_EXCEPTION
    - JS_IsObject
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_sha1(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/core.c:2116,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2116,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:2117,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2118,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/core.c:2119,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/jsmods/core.c:2122,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/core.c:2124,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/jsmods/core.c:2126,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:2127,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/core.c:2129,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:2132,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/jsmods/core.c:2134,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:2136,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 25
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2138
      start: 2108
    functionDepth: 3
    functionLinenumber: 2108
    functionLinenumberEnd: 2138
    functionName: js_sys_file_data
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - JS_IsString
    - gf_utf8_is_legal
    - js_throw_err_msg
    - JS_NewString
    - JS_ToBool
    - JS_NewArrayBuffer
    - GF_JS_EXCEPTION
    - JS_FreeCString
    - gf_file_load_data
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_file_data(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/core.c:2150,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2150,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:2151,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2152,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/core.c:2154,1
    - Dst: jsf_get_script_filename
      Src: /src/gpac/src/jsmods/core.c:2155,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/jsmods/core.c:2156,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:2157,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/jsmods/core.c:2161,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/core.c:2163,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/jsmods/core.c:2165,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/core.c:2166,1
    - Dst: JS_Eval
      Src: /src/gpac/src/jsmods/core.c:2168,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:2173,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:2176,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:2178,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2180
      start: 2141
    functionDepth: 3
    functionLinenumber: 2141
    functionLinenumberEnd: 2180
    functionName: js_sys_load_script
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - JS_IsString
    - JS_Eval
    - gf_utf8_is_legal
    - js_throw_err_msg
    - gf_url_concatenate
    - JS_ToBool
    - GF_JS_EXCEPTION
    - jsf_get_script_filename
    - JS_FreeCString
    - gf_file_load_data
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_load_script(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/core.c:2192,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2192,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/core.c:2193,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2194,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/core.c:2197,1
    - Dst: gf_gz_decompress_payload_ex
      Src: /src/gpac/src/jsmods/core.c:2201,1
    - Dst: gf_gz_compress_payload_ex
      Src: /src/gpac/src/jsmods/core.c:2203,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/core.c:2206,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/jsmods/core.c:2207,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - is_decomp
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2209
      start: 2183
    functionDepth: 2
    functionLinenumber: 2183
    functionLinenumberEnd: 2209
    functionName: js_sys_compress_ex
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - gf_gz_decompress_payload_ex
    - gf_gz_compress_payload_ex
    - JS_ToBool
    - JS_NewArrayBuffer
    - GF_JS_EXCEPTION
    - JS_IsObject
    - JS_GetArrayBuffer
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_compress_ex(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv, Bool is_decomp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_sys_compress_ex
      Src: /src/gpac/src/jsmods/core.c:2212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2213
      start: 2210
    functionDepth: 3
    functionLinenumber: 2210
    functionLinenumberEnd: 2213
    functionName: js_sys_compress
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_sys_compress_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_compress(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_sys_compress_ex
      Src: /src/gpac/src/jsmods/core.c:2216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2217
      start: 2214
    functionDepth: 3
    functionLinenumber: 2214
    functionLinenumberEnd: 2217
    functionName: js_sys_decompress
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_sys_compress_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_decompress(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2225,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:2226,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:2227,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/jsmods/core.c:2228,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:2230,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:2231,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:2233,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:2235,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:2236,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2238
      start: 2219
    functionDepth: 3
    functionLinenumber: 2219
    functionLinenumberEnd: 2238
    functionName: js_sys_url_cat
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - JS_NewString
    - gf_url_concatenate
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_url_cat(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2247,1
    - Dst: GET_PROP
      Src: /src/gpac/src/jsmods/core.c:2256,1
    - Dst: GET_PROP
      Src: /src/gpac/src/jsmods/core.c:2257,1
    - Dst: GET_PROP
      Src: /src/gpac/src/jsmods/core.c:2258,1
    - Dst: GET_PROP
      Src: /src/gpac/src/jsmods/core.c:2259,1
    - Dst: GET_PROP
      Src: /src/gpac/src/jsmods/core.c:2260,1
    - Dst: GET_PROP
      Src: /src/gpac/src/jsmods/core.c:2261,1
    - Dst: GET_PROP
      Src: /src/gpac/src/jsmods/core.c:2262,1
    - Dst: GET_PROP
      Src: /src/gpac/src/jsmods/core.c:2263,1
    - Dst: gf_rect_intersect
      Src: /src/gpac/src/jsmods/core.c:2268,1
    - Dst: gf_rect_union
      Src: /src/gpac/src/jsmods/core.c:2270,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/core.c:2272,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2273,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/core.c:2273,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/core.c:2273,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2274,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/core.c:2274,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/core.c:2274,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2275,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/core.c:2275,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/core.c:2275,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2276,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/core.c:2276,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/jsmods/core.c:2276,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - is_inter
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2278
      start: 2241
    functionDepth: 2
    functionLinenumber: 2241
    functionLinenumberEnd: 2278
    functionName: js_sys_rect_union_ex
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_rect_intersect
    - JS_NewFloat64
    - gf_rect_union
    - JS_SetPropertyStr
    - JS_NewObject
    - GF_JS_EXCEPTION
    - GET_PROP
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_rect_union_ex(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv, Bool is_inter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _obj
    - ','
    - _n
    - ','
    - _f
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2256
      start: 2249
    functionDepth: 0
    functionLinenumber: 2249
    functionLinenumberEnd: 2256
    functionName: GET_PROP
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_PROP(_obj, _n, _f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_sys_rect_union_ex
      Src: /src/gpac/src/jsmods/core.c:2281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2282
      start: 2279
    functionDepth: 3
    functionLinenumber: 2279
    functionLinenumberEnd: 2282
    functionName: js_sys_rect_union
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_sys_rect_union_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_rect_union(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_sys_rect_union_ex
      Src: /src/gpac/src/jsmods/core.c:2285,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2286
      start: 2283
    functionDepth: 3
    functionLinenumber: 2283
    functionLinenumberEnd: 2286
    functionName: js_sys_rect_intersect
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_sys_rect_union_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_rect_intersect(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2292,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/core.c:2294,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/jsmods/core.c:2295,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/core.c:2298,1
    - Dst: memcpy
      Src: /src/gpac/src/jsmods/core.c:2299,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/core.c:2302,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/core.c:2303,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/core.c:2306,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/core.c:2307,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2309,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2309,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2311,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:2311,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2313,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2313,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2314,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/core.c:2316,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2317,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/core.c:2318,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/core.c:2319,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2321,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:2321,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2322,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:2322,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2323,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2325,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2327,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2327,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2328,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/core.c:2338,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/core.c:2341,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/core.c:2344,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/core.c:2345,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2347,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:2347,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2348,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:2348,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/jsmods/core.c:2348,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2349,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2349,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2350,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2350,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2351,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/core.c:2351,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2352,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/core.c:2352,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2353,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2354,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2354,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2355,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2355,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2356,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2356,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2357,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:2357,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2359,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:2359,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2361,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/core.c:2361,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/core.c:2369,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/core.c:2374,1
    - Dst: atof
      Src: /src/gpac/src/jsmods/core.c:2375,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/core.c:2377,1
    - Dst: atoi
      Src: /src/gpac/src/jsmods/core.c:2378,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/core.c:2380,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/core.c:2382,1
    - Dst: atof
      Src: /src/gpac/src/jsmods/core.c:2384,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/core.c:2396,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/core.c:2399,1
    - Dst: atoi
      Src: /src/gpac/src/jsmods/core.c:2401,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/core.c:2405,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/core.c:2409,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/core.c:2412,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/core.c:2413,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2415,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:2415,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2416,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:2416,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/jsmods/core.c:2416,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2417,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2417,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2418,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2418,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2419,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/core.c:2419,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2420,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/core.c:2420,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2421,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2422,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2422,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2423,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2423,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2424,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2424,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2425,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:2425,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2434,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2436,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2436,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2437,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2437,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2440,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:2440,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2442,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:2442,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:2444,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/core.c:2446,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:2447,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/jsmods/core.c:2450,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/jsmods/core.c:2451,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/jsmods/core.c:2453,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:2454,1
    - Dst: gf_mpd_new
      Src: /src/gpac/src/jsmods/core.c:2457,1
    - Dst: gf_mpd_init_from_dom
      Src: /src/gpac/src/jsmods/core.c:2458,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/jsmods/core.c:2458,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:2459,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/jsmods/core.c:2460,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/jsmods/core.c:2462,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/core.c:2466,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/core.c:2467,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2468,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2468,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2469,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:2469,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2470,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2470,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2471,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/core.c:2471,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2472,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:2472,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/jsmods/core.c:2474,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2475,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:2475,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/core.c:2476,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2477,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/core.c:2482,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/core.c:2490,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/core.c:2491,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2494,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:2494,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2495,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:2495,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2496,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:2496,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/core.c:2497,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2498,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/core.c:2509,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/core.c:2512,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/core.c:2520,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/core.c:2524,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/core.c:2532,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/core.c:2533,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2536,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:2536,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2537,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2537,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2538,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2538,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2539,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/core.c:2540,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2541,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/core.c:2549,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/core.c:2550,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/core.c:2552,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:2552,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2557,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2557,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2558,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:2558,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2559,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2559,1
    - Dst: gf_mpd_resolve_url
      Src: /src/gpac/src/jsmods/core.c:2561,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2563,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:2563,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:2564,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2573,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:2573,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/core.c:2575,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2576,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/core.c:2580,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/core.c:2581,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/core.c:2584,1
    - Dst: gf_mpd_resolve_url
      Src: /src/gpac/src/jsmods/core.c:2585,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/jsmods/core.c:2588,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2589,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:2589,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:2590,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2590,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/core.c:2592,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:2594,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/jsmods/core.c:2601,1
    CyclomaticComplexity: 71
    EdgeCount: 71
    ICount: 246
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2603
      start: 2290
    functionDepth: 11
    functionLinenumber: 2290
    functionLinenumberEnd: 2603
    functionName: js_sys_mpd_parse
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_xml_dom_get_root
    - JS_NewInt64
    - gf_list_count
    - atoi
    - strchr
    - gf_file_basename
    - JS_NewArray
    - gf_list_get
    - gf_mpd_resolve_url
    - JS_NewFloat64
    - atof
    - memcpy
    - JS_SetPropertyUint32
    - JS_NewString
    - gf_xml_dom_new
    - JS_NewInt32
    - gf_mpd_del
    - gf_net_get_utc
    - gf_utf8_is_legal
    - strstr
    - gf_xml_dom_parse_string
    - gf_malloc
    - gf_timestamp_rescale
    - JS_NewBool
    - gf_mpd_new
    - JS_NewObject
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - gf_mpd_init_from_dom
    - gf_xml_dom_del
    - JS_GetArrayBuffer
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_mpd_parse(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/core.c:2626,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2626,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:2627,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2628,1
    - Dst: gf_rmdir
      Src: /src/gpac/src/jsmods/core.c:2633,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/core.c:2634,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/jsmods/core.c:2637,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/core.c:2638,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/core.c:2641,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/jsmods/core.c:2641,1
    - Dst: gf_dir_cleanup
      Src: /src/gpac/src/jsmods/core.c:2644,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/core.c:2645,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:2648,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/jsmods/core.c:2648,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/jsmods/core.c:2651,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:2652,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/jsmods/core.c:2655,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/core.c:2656,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:2659,1
    - Dst: gf_file_modification_time
      Src: /src/gpac/src/jsmods/core.c:2659,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/core.c:2662,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/jsmods/core.c:2662,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:2665,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/core.c:2666,1
    - Dst: gf_file_move
      Src: /src/gpac/src/jsmods/core.c:2668,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/core.c:2669,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:2670,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:2675,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 57
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - file_opt
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2677
      start: 2620
    functionDepth: 4
    functionLinenumber: 2620
    functionLinenumberEnd: 2677
    functionName: js_sys_file_opt
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_file_move
    - JS_ToCString
    - JS_IsString
    - gf_dir_exists
    - gf_file_exists
    - js_throw_err_msg
    - gf_mkdir
    - JS_NewString
    - JS_NewInt64
    - JS_NewBool
    - gf_file_ext_start
    - gf_file_delete
    - gf_file_modification_time
    - GF_JS_EXCEPTION
    - gf_dir_cleanup
    - gf_file_basename
    - gf_rmdir
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_file_opt(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv, u32 file_opt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_sys_file_opt
      Src: /src/gpac/src/jsmods/core.c:2681,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2682
      start: 2679
    functionDepth: 5
    functionLinenumber: 2679
    functionLinenumberEnd: 2682
    functionName: js_sys_rmdir
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_sys_file_opt
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_rmdir(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_sys_file_opt
      Src: /src/gpac/src/jsmods/core.c:2685,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2686
      start: 2683
    functionDepth: 5
    functionLinenumber: 2683
    functionLinenumberEnd: 2686
    functionName: js_sys_mkdir
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_sys_file_opt
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_mkdir(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_sys_file_opt
      Src: /src/gpac/src/jsmods/core.c:2689,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2690
      start: 2687
    functionDepth: 5
    functionLinenumber: 2687
    functionLinenumberEnd: 2690
    functionName: js_sys_dir_exists
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_sys_file_opt
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_dir_exists(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_sys_file_opt
      Src: /src/gpac/src/jsmods/core.c:2693,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2694
      start: 2691
    functionDepth: 5
    functionLinenumber: 2691
    functionLinenumberEnd: 2694
    functionName: js_sys_dir_clean
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_sys_file_opt
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_dir_clean(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_sys_file_opt
      Src: /src/gpac/src/jsmods/core.c:2697,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2698
      start: 2695
    functionDepth: 5
    functionLinenumber: 2695
    functionLinenumberEnd: 2698
    functionName: js_sys_basename
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_sys_file_opt
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_basename(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_sys_file_opt
      Src: /src/gpac/src/jsmods/core.c:2701,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2702
      start: 2699
    functionDepth: 5
    functionLinenumber: 2699
    functionLinenumberEnd: 2702
    functionName: js_sys_file_ext
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_sys_file_opt
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_file_ext(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_sys_file_opt
      Src: /src/gpac/src/jsmods/core.c:2705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2706
      start: 2703
    functionDepth: 5
    functionLinenumber: 2703
    functionLinenumberEnd: 2706
    functionName: js_sys_file_exists
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_sys_file_opt
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_file_exists(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_sys_file_opt
      Src: /src/gpac/src/jsmods/core.c:2709,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2710
      start: 2707
    functionDepth: 5
    functionLinenumber: 2707
    functionLinenumberEnd: 2710
    functionName: js_sys_file_del
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_sys_file_opt
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_file_del(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_sys_file_opt
      Src: /src/gpac/src/jsmods/core.c:2713,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2714
      start: 2711
    functionDepth: 5
    functionLinenumber: 2711
    functionLinenumberEnd: 2714
    functionName: js_sys_file_modtime
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_sys_file_opt
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_file_modtime(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_sys_file_opt
      Src: /src/gpac/src/jsmods/core.c:2717,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2718
      start: 2715
    functionDepth: 5
    functionLinenumber: 2715
    functionLinenumberEnd: 2718
    functionName: js_sys_file_move
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_sys_file_opt
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_file_move(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2725,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:2726,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2727,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:2728,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:2730,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2731,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/jsmods/core.c:2733,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:2734,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:2735,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:2736,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2738
      start: 2721
    functionDepth: 5
    functionLinenumber: 2721
    functionLinenumberEnd: 2738
    functionName: js_sys_get_opt
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_NewString
    - gf_opts_get_key
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_get_opt(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2743,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:2744,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2745,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:2746,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:2748,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2749,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:2753,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/jsmods/core.c:2755,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:2757,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:2758,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:2760,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2762
      start: 2740
    functionDepth: 6
    functionLinenumber: 2740
    functionLinenumberEnd: 2762
    functionName: js_sys_set_opt
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_opts_set_key
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_set_opt(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_discard_changes
      Src: /src/gpac/src/jsmods/core.c:2765,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2767
      start: 2763
    functionDepth: 2
    functionLinenumber: 2763
    functionLinenumberEnd: 2767
    functionName: js_sys_discard_opts
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_opts_discard_changes
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_discard_opts(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2775,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:2779,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2780,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/core.c:2781,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/core.c:2782,1
    - Dst: gf_base16_decode
      Src: /src/gpac/src/jsmods/core.c:2786,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/jsmods/core.c:2789,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:2792,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/core.c:2796,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2797,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/core.c:2799,1
    - Dst: gf_base16_encode
      Src: /src/gpac/src/jsmods/core.c:2803,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/jsmods/core.c:2806,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/core.c:2811,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/jsmods/core.c:2813,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:2816,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:2817,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 45
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - is_dec
    - is_16
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2820
      start: 2769
    functionDepth: 2
    functionLinenumber: 2769
    functionLinenumberEnd: 2820
    functionName: js_sys_basecode_ex
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - js_throw_err
    - gf_base64_decode
    - strlen
    - JS_NewString
    - gf_base16_decode
    - gf_base64_encode
    - JS_NewArrayBuffer
    - gf_base16_encode
    - JS_GetArrayBuffer
    - GF_JS_EXCEPTION
    - gf_malloc
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_basecode_ex(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv, Bool is_dec, Bool is_16)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_sys_basecode_ex
      Src: /src/gpac/src/jsmods/core.c:2823,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2824
      start: 2821
    functionDepth: 3
    functionLinenumber: 2821
    functionLinenumberEnd: 2824
    functionName: js_sys_base64enc
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_sys_basecode_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_base64enc(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_sys_basecode_ex
      Src: /src/gpac/src/jsmods/core.c:2827,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2828
      start: 2825
    functionDepth: 3
    functionLinenumber: 2825
    functionLinenumberEnd: 2828
    functionName: js_sys_base64dec
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_sys_basecode_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_base64dec(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_sys_basecode_ex
      Src: /src/gpac/src/jsmods/core.c:2831,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2832
      start: 2829
    functionDepth: 3
    functionLinenumber: 2829
    functionLinenumberEnd: 2832
    functionName: js_sys_base16enc
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_sys_basecode_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_base16enc(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_sys_basecode_ex
      Src: /src/gpac/src/jsmods/core.c:2835,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2836
      start: 2833
    functionDepth: 3
    functionLinenumber: 2833
    functionLinenumberEnd: 2836
    functionName: js_sys_base16dec
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_sys_basecode_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_base16dec(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2840,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/jsmods/core.c:2841,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2841,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2842,1
    - Dst: gf_ntohl
      Src: /src/gpac/src/jsmods/core.c:2842,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2843
      start: 2837
    functionDepth: 1
    functionLinenumber: 2837
    functionLinenumberEnd: 2843
    functionName: js_sys_ntohl
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToInt64
    - JS_NewInt32
    - gf_ntohl
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_ntohl(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2847,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/jsmods/core.c:2848,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2848,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2849,1
    - Dst: gf_ntohs
      Src: /src/gpac/src/jsmods/core.c:2849,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2850
      start: 2844
    functionDepth: 1
    functionLinenumber: 2844
    functionLinenumberEnd: 2850
    functionName: js_sys_ntohs
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToInt64
    - JS_NewInt32
    - gf_ntohs
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_ntohs(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2854,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/jsmods/core.c:2855,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2855,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2856,1
    - Dst: gf_htonl
      Src: /src/gpac/src/jsmods/core.c:2856,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2857
      start: 2851
    functionDepth: 1
    functionLinenumber: 2851
    functionLinenumberEnd: 2857
    functionName: js_sys_htonl
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToInt64
    - gf_htonl
    - JS_NewInt32
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_htonl(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2861,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/jsmods/core.c:2862,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2862,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2863,1
    - Dst: gf_htons
      Src: /src/gpac/src/jsmods/core.c:2863,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2864
      start: 2858
    functionDepth: 1
    functionLinenumber: 2858
    functionLinenumberEnd: 2864
    functionName: js_sys_htons
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToInt64
    - JS_NewInt32
    - gf_htons
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_htons(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2872,1
    - Dst: jsf_ToProp_ex
      Src: /src/gpac/src/jsmods/core.c:2873,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2874,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:2875,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2875,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:2876,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2876,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/jsmods/core.c:2878,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/core.c:2879,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2880,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2881
      start: 2868
    functionDepth: 5
    functionLinenumber: 2868
    functionLinenumberEnd: 2881
    functionName: js_pixfmt_size
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - jsf_ToProp_ex
    - js_throw_err_msg
    - gf_pixel_get_size_info
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - JS_NewInt32
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_pixfmt_size(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2886,1
    - Dst: jsf_ToProp_ex
      Src: /src/gpac/src/jsmods/core.c:2887,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2888,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2889,1
    - Dst: gf_pixel_is_wide_depth
      Src: /src/gpac/src/jsmods/core.c:2889,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2890
      start: 2883
    functionDepth: 1
    functionLinenumber: 2883
    functionLinenumberEnd: 2890
    functionName: js_pixfmt_depth
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - jsf_ToProp_ex
    - gf_pixel_is_wide_depth
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_pixfmt_depth(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2894,1
    - Dst: jsf_ToProp_ex
      Src: /src/gpac/src/jsmods/core.c:2895,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2896,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/core.c:2898,1
    - Dst: gf_pixel_fmt_is_transparent
      Src: /src/gpac/src/jsmods/core.c:2898,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2899
      start: 2891
    functionDepth: 1
    functionLinenumber: 2891
    functionLinenumberEnd: 2899
    functionName: js_pixfmt_transparent
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_NewBool
    - jsf_ToProp_ex
    - gf_pixel_fmt_is_transparent
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_pixfmt_transparent(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2904,1
    - Dst: jsf_ToProp_ex
      Src: /src/gpac/src/jsmods/core.c:2905,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2906,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/core.c:2908,1
    - Dst: gf_pixel_fmt_is_yuv
      Src: /src/gpac/src/jsmods/core.c:2908,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2909
      start: 2901
    functionDepth: 1
    functionLinenumber: 2901
    functionLinenumberEnd: 2909
    functionName: js_pixfmt_yuv
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_NewBool
    - jsf_ToProp_ex
    - gf_pixel_fmt_is_yuv
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_pixfmt_yuv(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2914,1
    - Dst: jsf_ToProp_ex
      Src: /src/gpac/src/jsmods/core.c:2915,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2916,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:2917,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/jsmods/core.c:2917,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2918
      start: 2911
    functionDepth: 1
    functionLinenumber: 2911
    functionLinenumberEnd: 2918
    functionName: js_pcmfmt_depth
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - jsf_ToProp_ex
    - gf_audio_fmt_bit_depth
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_pcmfmt_depth(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/core.c:2924,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2924,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/core.c:2926,1
    - Dst: gf_log_get_tools_levels
      Src: /src/gpac/src/jsmods/core.c:2929,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:2932,1
    - Dst: gf_log_set_tools_levels
      Src: /src/gpac/src/jsmods/core.c:2935,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:2936,1
    - Dst: gf_log_set_tools_levels
      Src: /src/gpac/src/jsmods/core.c:2939,1
    - Dst: gf_log_set_tools_levels
      Src: /src/gpac/src/jsmods/core.c:2942,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:2943,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2946
      start: 2920
    functionDepth: 3
    functionLinenumber: 2920
    functionLinenumberEnd: 2946
    functionName: js_sys_set_logs
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - JS_IsString
    - gf_log_set_tools_levels
    - JS_ToBool
    - gf_log_get_tools_levels
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_set_logs(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/core.c:2951,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:2952,1
    - Dst: gf_log_get_tools_levels
      Src: /src/gpac/src/jsmods/core.c:2954,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:2955,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:2956,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2958
      start: 2949
    functionDepth: 1
    functionLinenumber: 2949
    functionLinenumberEnd: 2958
    functionName: js_sys_get_logs
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_log_get_tools_levels
    - JS_NewString
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sys_get_logs(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2971,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/core.c:2972,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2973,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:2979,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2980,1
    - Dst: gf_color_parse
      Src: /src/gpac/src/jsmods/core.c:2981,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:2982,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:2984,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:2985,1
    - Dst: gf_color_parse
      Src: /src/gpac/src/jsmods/core.c:2986,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:2987,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/jsmods/core.c:2989,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/jsmods/core.c:2990,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/jsmods/core.c:2991,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/jsmods/core.c:2992,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/jsmods/core.c:2993,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/jsmods/core.c:2994,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/jsmods/core.c:2995,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/jsmods/core.c:2996,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:3004,1
    - Dst: sprintf
      Src: /src/gpac/src/jsmods/core.c:3006,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:3007,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3008
      start: 2962
    functionDepth: 2
    functionLinenumber: 2962
    functionLinenumberEnd: 3008
    functionName: js_color_lerp
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - gf_color_parse
    - GF_COL_G
    - GF_COL_B
    - GF_COL_A
    - sprintf
    - JS_NewString
    - GF_COL_R
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_color_lerp(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3016,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:3018,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3019,1
    - Dst: gf_color_parse
      Src: /src/gpac/src/jsmods/core.c:3020,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:3021,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:3023,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3024,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/jsmods/core.c:3027,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/jsmods/core.c:3028,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/jsmods/core.c:3029,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/jsmods/core.c:3030,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3031,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/jsmods/core.c:3034,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3035
      start: 3010
    functionDepth: 2
    functionLinenumber: 3010
    functionLinenumberEnd: 3035
    functionName: js_color_get_component
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - gf_color_parse
    - GF_COL_G
    - GF_COL_B
    - GF_COL_A
    - JS_NewFloat64
    - GF_COL_R
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_color_get_component(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3072,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3073,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3075,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/jsmods/core.c:3077,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3077,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/core.c:3078,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3079,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:3082,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/core.c:3083,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3083,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:3085,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3086,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3087,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3089,1
    - Dst: gf_realloc
      Src: /src/gpac/src/jsmods/core.c:3092,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/core.c:3093,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/jsmods/core.c:3101,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:3103,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/jsmods/core.c:3104,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3105,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:3109,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/jsmods/core.c:3110,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3111,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3113,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:3115,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:3116,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3117,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:3121,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:3122,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3123,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3125,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:3128,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/core.c:3129,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3130,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:3132,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:3133,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3134,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:3139,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:3140,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3141,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:3145,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/jsmods/core.c:3146,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3147,1
    - Dst: gf_realloc
      Src: /src/gpac/src/jsmods/core.c:3156,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/core.c:3157,1
    - Dst: MIN
      Src: /src/gpac/src/jsmods/core.c:3161,1
    - Dst: memset
      Src: /src/gpac/src/jsmods/core.c:3166,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:3177,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:3177,1
    - Dst: gf_assert
      Src: /src/gpac/src/jsmods/core.c:3187,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/core.c:3188,1
    - Dst: AMixCtx*::get_sample
      Src: /src/gpac/src/jsmods/core.c:3193,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:3207,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:3207,1
    - Dst: AMixCtx*::set_sample
      Src: /src/gpac/src/jsmods/core.c:3235,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:3244,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:3244,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3246,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 140
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3249
      start: 3062
    functionDepth: 2
    functionLinenumber: 3062
    functionLinenumberEnd: 3249
    functionName: js_audio_mix
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - memset
    - JS_ToFloat64
    - gf_realloc
    - gf_assert
    - JS_GetOpaque
    - AMixCtx*::set_sample
    - JS_ToInt64
    - JS_NewInt32
    - JS_GetPropertyUint32
    - GF_LOG
    - MIN
    - JS_ToInt32
    - JS_GetPropertyStr
    - AMixCtx*::get_sample
    - js_throw_err
    - JS_IsException
    - JS_FreeValue
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - JS_GetArrayBuffer
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_audio_mix(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - data
    argTypes:
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3258
      start: 3251
    functionDepth: 0
    functionLinenumber: 3251
    functionLinenumberEnd: 3258
    functionName: amix_get_s16
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Double
    signature: Double amix_get_s16(u8 *data)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - val
    argTypes:
    - u8*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3265
      start: 3259
    functionDepth: 0
    functionLinenumber: 3259
    functionLinenumberEnd: 3265
    functionName: amix_set_s16
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void amix_set_s16(u8 *data, Double val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - data
    argTypes:
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3277
      start: 3266
    functionDepth: 0
    functionLinenumber: 3266
    functionLinenumberEnd: 3277
    functionName: amix_get_s32
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Double
    signature: Double amix_get_s32(u8 *data)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - data
    - val
    argTypes:
    - u8*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3286
      start: 3278
    functionDepth: 0
    functionLinenumber: 3278
    functionLinenumberEnd: 3286
    functionName: amix_set_s32
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void amix_set_s32(u8 *data, Double val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3290
      start: 3287
    functionDepth: 0
    functionLinenumber: 3287
    functionLinenumberEnd: 3290
    functionName: amix_get_flt
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Double
    signature: Double amix_get_flt(u8 *data)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - data
    - val
    argTypes:
    - u8*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3294
      start: 3291
    functionDepth: 0
    functionLinenumber: 3291
    functionLinenumberEnd: 3294
    functionName: amix_set_flt
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void amix_set_flt(u8 *data, Double val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3298
      start: 3295
    functionDepth: 0
    functionLinenumber: 3295
    functionLinenumberEnd: 3298
    functionName: amix_get_dbl
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Double
    signature: Double amix_get_dbl(u8 *data)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - data
    - val
    argTypes:
    - u8*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3302
      start: 3299
    functionDepth: 0
    functionLinenumber: 3299
    functionLinenumberEnd: 3302
    functionName: amix_set_dbl
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void amix_set_dbl(u8 *data, Double val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3307,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:3310,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:3311,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:3312,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:3313,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3314
      start: 3305
    functionDepth: 1
    functionLinenumber: 3305
    functionLinenumberEnd: 3314
    functionName: js_amix_finalize
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_free
    linkageType: ''
    returnType: void
    signature: void js_amix_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/core.c:3332,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:3334,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3335,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:3337,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:3338,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:3339,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:3340,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:3341,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3342,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:3344,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3344,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:3345,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3345,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:3346,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3346,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/core.c:3347,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/core.c:3349,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/core.c:3353,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:3355,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/core.c:3356,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/core.c:3382,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/core.c:3383,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:3384,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/core.c:3387,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 62
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3389
      start: 3325
    functionDepth: 2
    functionLinenumber: 3325
    functionLinenumberEnd: 3389
    functionName: amix_constructor
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - JS_NewObjectClass
    - js_throw_err
    - GF_SAFEALLOC
    - JS_IsException
    - JS_SetOpaque
    - strcmp
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - gf_malloc
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue amix_constructor(JSContext *ctx, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3517,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:3519,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3520
      start: 3515
    functionDepth: 1
    functionLinenumber: 3515
    functionLinenumberEnd: 3520
    functionName: js_sha1_finalize
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_free
    linkageType: ''
    returnType: void
    signature: void js_sha1_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3531,1
    - Dst: gf_sha1_starts
      Src: /src/gpac/src/jsmods/core.c:3533,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/core.c:3535,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/core.c:3537,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3539,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/core.c:3540,1
    - Dst: gf_sha1_update
      Src: /src/gpac/src/jsmods/core.c:3541,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3544
      start: 3527
    functionDepth: 3
    functionLinenumber: 3527
    functionLinenumberEnd: 3544
    functionName: js_sha1_push
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - JS_GetOpaque
    - JS_SetOpaque
    - gf_sha1_update
    - gf_sha1_starts
    - GF_JS_EXCEPTION
    - JS_GetArrayBuffer
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sha1_push(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3548,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3549,1
    - Dst: gf_sha1_finish
      Src: /src/gpac/src/jsmods/core.c:3550,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/core.c:3551,1
    - Dst: JS_NewArrayBufferCopy
      Src: /src/gpac/src/jsmods/core.c:3552,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3553
      start: 3545
    functionDepth: 4
    functionLinenumber: 3545
    functionLinenumberEnd: 3553
    functionName: js_sha1_get
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_sha1_finish
    - JS_GetOpaque
    - JS_SetOpaque
    - JS_NewArrayBufferCopy
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sha1_get(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sha1_starts
      Src: /src/gpac/src/jsmods/core.c:3565,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/core.c:3567,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/core.c:3569,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/core.c:3570,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:3571,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/core.c:3574,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3576
      start: 3560
    functionDepth: 2
    functionLinenumber: 3560
    functionLinenumberEnd: 3576
    functionName: sha1_constructor
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_NewObjectClass
    - js_throw_err
    - JS_IsException
    - JS_SetOpaque
    - gf_sha1_starts
    linkageType: ''
    returnType: JSValue
    signature: JSValue sha1_constructor(JSContext *ctx, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3581,1
    - Dst: gf_fclose
      Src: /src/gpac/src/jsmods/core.c:3583,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3584
      start: 3579
    functionDepth: 5
    functionLinenumber: 3579
    functionLinenumberEnd: 3584
    functionName: js_file_finalize
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_fclose
    linkageType: ''
    returnType: void
    signature: void js_file_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3602,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3603,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:3607,1
    - Dst: gf_ftell
      Src: /src/gpac/src/jsmods/core.c:3607,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/core.c:3609,1
    - Dst: gf_feof
      Src: /src/gpac/src/jsmods/core.c:3609,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:3611,1
    - Dst: gf_ferror
      Src: /src/gpac/src/jsmods/core.c:3611,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:3613,1
    - Dst: gf_fsize
      Src: /src/gpac/src/jsmods/core.c:3613,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/core.c:3615,1
    - Dst: gf_fileio_check
      Src: /src/gpac/src/jsmods/core.c:3615,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3618
      start: 3600
    functionDepth: 2
    functionLinenumber: 3600
    functionLinenumberEnd: 3618
    functionName: js_file_prop_get
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_feof
    - gf_fileio_check
    - JS_GetOpaque
    - JS_NewInt64
    - gf_ferror
    - JS_NewBool
    - gf_fsize
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - gf_ftell
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_file_prop_get(JSContext *ctx, JSValueConst this_val, int
      magic)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3623,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3624,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/jsmods/core.c:3628,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3628,1
    - Dst: gf_fseek
      Src: /src/gpac/src/jsmods/core.c:3629,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 4
    argNames:
    - ctx
    - this_val
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3633
      start: 3620
    functionDepth: 1
    functionLinenumber: 3620
    functionLinenumberEnd: 3633
    functionName: js_file_prop_set
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_ToInt64
    - GF_JS_EXCEPTION
    - gf_fseek
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_file_prop_set(JSContext *ctx, JSValueConst this_val, JSValueConst
      value, int magic)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3636,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3637,1
    - Dst: gf_fflush
      Src: /src/gpac/src/jsmods/core.c:3638,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3640
      start: 3634
    functionDepth: 2
    functionLinenumber: 3634
    functionLinenumberEnd: 3640
    functionName: js_file_flush
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_fflush
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_file_flush(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3643,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3644,1
    - Dst: gf_fclose
      Src: /src/gpac/src/jsmods/core.c:3645,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/core.c:3646,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3648
      start: 3641
    functionDepth: 5
    functionLinenumber: 3641
    functionLinenumberEnd: 3648
    functionName: js_file_close
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_fclose
    - JS_SetOpaque
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_file_close(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3655,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3656,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3657,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/core.c:3659,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3660,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:3662,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3662,1
    - Dst: gf_fread
      Src: /src/gpac/src/jsmods/core.c:3667,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:3668,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3669
      start: 3649
    functionDepth: 2
    functionLinenumber: 3649
    functionLinenumberEnd: 3669
    functionName: js_file_read
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_fread
    - JS_NewInt64
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - JS_GetArrayBuffer
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_file_read(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3675,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3676,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3677,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/jsmods/core.c:3678,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3678,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:3679,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3679,1
    - Dst: gf_fseek
      Src: /src/gpac/src/jsmods/core.c:3681,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/core.c:3682,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3683
      start: 3671
    functionDepth: 1
    functionLinenumber: 3671
    functionLinenumberEnd: 3683
    functionName: js_file_seek
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_fseek
    - JS_GetOpaque
    - JS_ToInt64
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - JS_NewInt32
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_file_seek(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3690,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3691,1
    - Dst: gf_fgets
      Src: /src/gpac/src/jsmods/core.c:3697,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/jsmods/core.c:3699,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/core.c:3700,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/core.c:3701,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:3707,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:3708,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3710
      start: 3685
    functionDepth: 2
    functionLinenumber: 3685
    functionLinenumberEnd: 3710
    functionName: js_file_gets
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    - js_throw_err
    - JS_GetOpaque
    - gf_fgets
    - JS_NewString
    - GF_JS_EXCEPTION
    - strlen
    - gf_dynstrcat
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_file_gets(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3715,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3716,1
    - Dst: gf_fgetc
      Src: /src/gpac/src/jsmods/core.c:3718,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:3720,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3721
      start: 3712
    functionDepth: 2
    functionLinenumber: 3712
    functionLinenumberEnd: 3721
    functionName: js_file_getc
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - JS_NewString
    - gf_fgetc
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_file_getc(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3729,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3730,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3731,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/core.c:3733,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3734,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:3736,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3736,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/jsmods/core.c:3741,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:3742,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3743
      start: 3723
    functionDepth: 2
    functionLinenumber: 3723
    functionLinenumberEnd: 3743
    functionName: js_file_write
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_fwrite
    - JS_NewInt64
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - JS_GetArrayBuffer
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_file_write(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3747,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3748,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:3750,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3751,1
    - Dst: gf_fputs
      Src: /src/gpac/src/jsmods/core.c:3752,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:3753,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3755
      start: 3744
    functionDepth: 2
    functionLinenumber: 3744
    functionLinenumberEnd: 3755
    functionName: js_file_puts
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - gf_fputs
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_file_puts(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3760,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3761,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/core.c:3763,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:3764,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3765,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:3767,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:3769,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3769,1
    - Dst: gf_fputc
      Src: /src/gpac/src/jsmods/core.c:3771,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3773
      start: 3757
    functionDepth: 2
    functionLinenumber: 3757
    functionLinenumberEnd: 3773
    functionName: js_file_putc
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - gf_fputc
    - JS_GetOpaque
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_file_putc(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_temp
      Src: /src/gpac/src/jsmods/core.c:3799,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/core.c:3801,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:3806,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:3808,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:3810,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/jsmods/core.c:3817,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:3820,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:3821,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:3822,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/core.c:3825,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/core.c:3829,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/core.c:3830,1
    - Dst: gf_fclose
      Src: /src/gpac/src/jsmods/core.c:3831,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/core.c:3834,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 38
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3836
      start: 3793
    functionDepth: 6
    functionLinenumber: 3793
    functionLinenumberEnd: 3836
    functionName: file_constructor
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_NewObjectClass
    - gf_fclose
    - js_throw_err
    - JS_IsException
    - JS_SetOpaque
    - gf_fopen_ex
    - gf_file_temp
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue file_constructor(JSContext *ctx, JSValueConst new_target, int
      argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3859,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/core.c:3863,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/core.c:3864,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/core.c:3865,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/core.c:3866,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/core.c:3867,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/core.c:3868,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/core.c:3869,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/core.c:3870,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/core.c:3871,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/core.c:3873,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 3
    argNames:
    - rt
    - this_val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3874
      start: 3857
    functionDepth: 1
    functionLinenumber: 3857
    functionLinenumberEnd: 3874
    functionName: js_fileio_gc_mark
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: void js_fileio_gc_mark(JSRuntime *rt, JSValueConst this_val, JS_MarkFunc
      *mark_func)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3878,1
    - Dst: gf_fclose
      Src: /src/gpac/src/jsmods/core.c:3880,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3881
      start: 3876
    functionDepth: 5
    functionLinenumber: 3876
    functionLinenumberEnd: 3881
    functionName: js_fileio_finalize
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_fclose
    linkageType: ''
    returnType: void
    signature: void js_fileio_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3899,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:3900,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:3904,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/jsmods/core.c:3904,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:3906,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/jsmods/core.c:3906,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/core.c:3908,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3911
      start: 3897
    functionDepth: 1
    functionLinenumber: 3897
    functionLinenumberEnd: 3911
    functionName: js_fileio_prop_get
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - gf_fileio_url
    - JS_GetOpaque
    - JS_NewString
    - GF_JS_EXCEPTION
    - gf_fileio_resource_url
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_fileio_prop_get(JSContext *ctx, JSValueConst this_val, int
      magic)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3915,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3922
      start: 3913
    functionDepth: 1
    functionLinenumber: 3913
    functionLinenumberEnd: 3922
    functionName: js_fileio_protect
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_fileio_protect(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/core.c:3926,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/jsmods/core.c:3927,1
    - Dst: gf_fileio_del
      Src: /src/gpac/src/jsmods/core.c:3928,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:3929,1
    - Dst: gf_list_del
      Src: /src/gpac/src/jsmods/core.c:3931,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/core.c:3933,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3934,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3935,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3936,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3937,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3938,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3939,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3940,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3941,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3942,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/core.c:3946,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3947,1
    - Dst: gf_fileio_del
      Src: /src/gpac/src/jsmods/core.c:3948,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:3949,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:3951,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 3
    argNames:
    - ctx
    - iofac
    - ioctx_deleted
    argTypes:
    - JSContext*
    - JSFileIOFactoryCtx*
    - JSFileIOCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3952
      start: 3924
    functionDepth: 4
    functionLinenumber: 3924
    functionLinenumberEnd: 3952
    functionName: js_fileio_factory_delete
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - JS_FreeValue
    - JS_SetOpaque
    - gf_fileio_del
    - gf_list_count
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void js_fileio_factory_delete(JSContext *ctx, JSFileIOFactoryCtx *iofac,
      JSFileIOCtx *ioctx_deleted)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/core.c:3956,1
    - Dst: js_fileio_factory_delete
      Src: /src/gpac/src/jsmods/core.c:3963,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3966
      start: 3954
    functionDepth: 5
    functionLinenumber: 3954
    functionLinenumberEnd: 3966
    functionName: js_fileio_destroy
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - js_fileio_factory_delete
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_fileio_destroy(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/jsmods/core.c:3980,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:3984,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:3986,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/core.c:3987,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/core.c:3988,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:3989,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:3990,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:3991,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - fileio
    - offset
    - whence
    argTypes:
    - GF_FileIO*
    - u64
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3993
      start: 3976
    functionDepth: 2
    functionLinenumber: 3976
    functionLinenumberEnd: 3993
    functionName: jsfio_seek
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_FreeValue
    - JS_NewInt64
    - JS_ToInt32
    - gf_js_lock
    - gf_fileio_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jsfio_seek(GF_FileIO *fileio, u64 offset, s32 whence)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/jsmods/core.c:3998,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:4001,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/jsmods/core.c:4002,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/core.c:4003,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:4004,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:4005,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:4006,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:4007,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - fileio
    - buffer
    - bytes
    argTypes:
    - GF_FileIO*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4009
      start: 3994
    functionDepth: 2
    functionLinenumber: 3994
    functionLinenumberEnd: 4009
    functionName: jsfio_read
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_FreeValue
    - JS_NewArrayBuffer
    - gf_js_lock
    - JS_ToInt32
    - gf_fileio_get_udta
    linkageType: ''
    returnType: u32
    signature: u32 jsfio_read(GF_FileIO *fileio, u8 *buffer, u32 bytes)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/jsmods/core.c:4014,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:4018,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/jsmods/core.c:4019,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/core.c:4020,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:4021,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:4022,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:4023,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:4024,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - fileio
    - buffer
    - bytes
    argTypes:
    - GF_FileIO*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4026
      start: 4010
    functionDepth: 2
    functionLinenumber: 4010
    functionLinenumberEnd: 4026
    functionName: jsfio_write
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_FreeValue
    - JS_NewArrayBuffer
    - gf_js_lock
    - JS_ToInt32
    - gf_fileio_get_udta
    linkageType: ''
    returnType: u32
    signature: u32 jsfio_write(GF_FileIO *fileio, u8 *buffer, u32 bytes)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/jsmods/core.c:4032,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:4035,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/core.c:4036,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/jsmods/core.c:4037,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:4038,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:4039,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4041
      start: 4028
    functionDepth: 2
    functionLinenumber: 4028
    functionLinenumberEnd: 4041
    functionName: jsfio_tell
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_FreeValue
    - JS_ToInt64
    - gf_js_lock
    - gf_fileio_get_udta
    linkageType: ''
    returnType: s64
    signature: s64 jsfio_tell(GF_FileIO *fileio)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/jsmods/core.c:4047,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:4050,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/core.c:4051,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:4052,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:4053,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:4054,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4056
      start: 4043
    functionDepth: 2
    functionLinenumber: 4043
    functionLinenumberEnd: 4056
    functionName: jsfio_eof
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_FreeValue
    - JS_ToInt32
    - gf_js_lock
    - gf_fileio_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool jsfio_eof(GF_FileIO *fileio)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/jsmods/core.c:4062,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:4065,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:4069,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/core.c:4072,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/jsmods/core.c:4074,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/jsmods/core.c:4074,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/core.c:4076,1
    - Dst: gf_fileio_new
      Src: /src/gpac/src/jsmods/core.c:4077,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/core.c:4078,1
    - Dst: gf_fileio_new
      Src: /src/gpac/src/jsmods/core.c:4079,1
    - Dst: gf_fileio_new
      Src: /src/gpac/src/jsmods/core.c:4081,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:4083,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:4085,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:4086,1
    - Dst: gf_list_add
      Src: /src/gpac/src/jsmods/core.c:4091,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:4093,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:4097,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:4098,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/core.c:4099,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:4100,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/core.c:4101,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:4102,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:4103,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:4107,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:4110,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:4113,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:4118,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:4128,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/core.c:4129,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/core.c:4131,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:4132,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:4135,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/core.c:4141,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:4142,1
    - Dst: js_fileio_factory_delete
      Src: /src/gpac/src/jsmods/core.c:4147,1
    - Dst: gf_fileio_del
      Src: /src/gpac/src/jsmods/core.c:4149,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:4150,1
    - Dst: gf_fileio_del
      Src: /src/gpac/src/jsmods/core.c:4152,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:4153,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:4156,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/core.c:4163,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/jsmods/core.c:4165,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/core.c:4170,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/core.c:4172,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/jsmods/core.c:4173,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:4174,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/jsmods/core.c:4176,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/core.c:4184,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:4187,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/core.c:4194,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/core.c:4195,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:4196,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:4198,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:4200,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/core.c:4203,1
    - Dst: strnicmp
      Src: /src/gpac/src/jsmods/core.c:4206,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/jsmods/core.c:4207,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/jsmods/core.c:4209,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/jsmods/core.c:4209,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/core.c:4214,1
    - Dst: gf_fileio_new
      Src: /src/gpac/src/jsmods/core.c:4215,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/core.c:4216,1
    - Dst: gf_fileio_new
      Src: /src/gpac/src/jsmods/core.c:4217,1
    - Dst: gf_fileio_new
      Src: /src/gpac/src/jsmods/core.c:4219,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:4223,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:4224,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/core.c:4225,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:4227,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:4228,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:4229,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/jsmods/core.c:4231,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/core.c:4231,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:4233,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/core.c:4236,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/core.c:4238,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:4239,1
    - Dst: gf_fileio_del
      Src: /src/gpac/src/jsmods/core.c:4242,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:4243,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/core.c:4245,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 166
    argCount: 4
    argNames:
    - fileio_ref
    - url
    - mode
    - out_err
    argTypes:
    - GF_FileIO*
    - char*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4247
      start: 4058
    functionDepth: 5
    functionLinenumber: 4058
    functionLinenumberEnd: 4247
    functionName: jsfio_open
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fileio_new
    - GF_SAFEALLOC
    - gf_fileio_translate_url
    - gf_list_count
    - gf_list_get
    - JS_IsUndefined
    - JS_NewString
    - JS_ToBool
    - gf_list_add
    - JS_IsBool
    - gf_fileio_resource_url
    - JS_NewObjectClass
    - strnicmp
    - JS_ToInt32
    - gf_list_del_item
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_SetOpaque
    - gf_url_concatenate
    - js_fileio_factory_delete
    - gf_fileio_del
    - gf_js_lock
    - strcmp
    - gf_list_rem
    - gf_fileio_get_udta
    linkageType: ''
    returnType: GF_FileIO
    signature: GF_FileIO *jsfio_open(GF_FileIO *fileio_ref, const char *url, const
      char *mode, GF_Err *out_err)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:4257,1
    - Dst: JS_IsString
      Src: /src/gpac/src/jsmods/core.c:4258,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:4258,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/core.c:4260,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/core.c:4260,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:4260,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/core.c:4262,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/core.c:4262,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:4262,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/core.c:4264,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/core.c:4264,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/core.c:4265,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/core.c:4265,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:4265,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/core.c:4268,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/core.c:4268,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/core.c:4269,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/core.c:4269,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:4269,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/core.c:4272,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/core.c:4272,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:4272,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/core.c:4274,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/core.c:4274,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:4274,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/core.c:4276,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/core.c:4276,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:4276,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/core.c:4278,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/core.c:4278,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:4278,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/core.c:4280,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/core.c:4281,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/core.c:4283,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/core.c:4284,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/core.c:4285,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:4287,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/core.c:4288,1
    - Dst: gf_list_new
      Src: /src/gpac/src/jsmods/core.c:4290,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:4292,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:4293,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/core.c:4294,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/core.c:4297,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/core.c:4298,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:4299,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/core.c:4302,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/core.c:4303,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/core.c:4304,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/core.c:4305,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/core.c:4306,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/core.c:4307,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/core.c:4308,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/core.c:4309,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/core.c:4310,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/core.c:4311,1
    - Dst: jsf_get_script_filename
      Src: /src/gpac/src/jsmods/core.c:4316,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/jsmods/core.c:4317,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/core.c:4319,1
    - Dst: gf_fileio_new
      Src: /src/gpac/src/jsmods/core.c:4320,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/core.c:4321,1
    - Dst: gf_fileio_new
      Src: /src/gpac/src/jsmods/core.c:4322,1
    - Dst: gf_fileio_new
      Src: /src/gpac/src/jsmods/core.c:4324,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/core.c:4326,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:4327,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 72
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4329
      start: 4250
    functionDepth: 3
    functionLinenumber: 4250
    functionLinenumberEnd: 4329
    functionName: fileio_constructor
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - JS_IsString
    - gf_list_new
    - JS_NewObjectClass
    - js_throw_err
    - JS_IsNull
    - JS_IsFunction
    - GF_SAFEALLOC
    - JS_IsException
    - JS_SetOpaque
    - JS_DupValue
    - gf_url_concatenate
    - JS_IsUndefined
    - gf_fileio_new
    - GF_JS_EXCEPTION
    - jsf_get_script_filename
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue fileio_constructor(JSContext *ctx, JSValueConst new_target,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - rt
    - this_val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4337
      start: 4331
    functionDepth: 0
    functionLinenumber: 4331
    functionLinenumberEnd: 4337
    functionName: js_core_gc_mark
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void js_core_gc_mark(JSRuntime *rt, JSValueConst this_val, JS_MarkFunc
      *mark_func)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/core.c:4348,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/core.c:4349,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/core.c:4349,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/core.c:4351,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/core.c:4352,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/core.c:4352,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/core.c:4354,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/core.c:4355,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/core.c:4355,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/core.c:4357,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/core.c:4358,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/core.c:4358,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/core.c:4360,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/core.c:4361,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/core.c:4361,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/core.c:4363,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/core.c:4364,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/core.c:4364,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/core.c:4368,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/core.c:4369,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/core.c:4369,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/core.c:4370,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/jsmods/core.c:4372,1
    - Dst: gf_sys_get_argc
      Src: /src/gpac/src/jsmods/core.c:4373,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/jsmods/core.c:4375,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/core.c:4375,1
    - Dst: gf_sys_get_arg
      Src: /src/gpac/src/jsmods/core.c:4375,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/core.c:4377,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/jsmods/core.c:4382,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/jsmods/core.c:4383,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/jsmods/core.c:4384,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/jsmods/core.c:4385,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/jsmods/core.c:4386,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/jsmods/core.c:4387,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/jsmods/core.c:4388,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/jsmods/core.c:4389,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/jsmods/core.c:4390,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/jsmods/core.c:4391,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/jsmods/core.c:4392,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/jsmods/core.c:4393,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/jsmods/core.c:4394,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/jsmods/core.c:4395,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/jsmods/core.c:4396,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/jsmods/core.c:4397,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/jsmods/core.c:4398,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/jsmods/core.c:4399,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/core.c:4405,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/core.c:4406,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/core.c:4406,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/core.c:4407,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/core.c:4408,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/core.c:4409,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/core.c:4412,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/core.c:4413,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/core.c:4413,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/core.c:4414,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/core.c:4415,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/core.c:4416,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/core.c:4419,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/core.c:4420,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/core.c:4420,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/core.c:4421,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/core.c:4422,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/core.c:4423,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/core.c:4426,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/core.c:4427,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/core.c:4427,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/core.c:4428,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/core.c:4429,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/core.c:4430,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/core.c:4433,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/core.c:4434,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/core.c:4434,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/core.c:4435,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/core.c:4436,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/core.c:4437,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/core.c:4440,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/core.c:4441,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/core.c:4441,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/core.c:4442,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/core.c:4443,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/core.c:4443,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/core.c:4444,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 70
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4447
      start: 4344
    functionDepth: 1
    functionLinenumber: 4344
    functionLinenumberEnd: 4447
    functionName: js_gpaccore_init
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_NewClass
    - JS_SetPropertyFunctionList
    - JS_NewCFunction2
    - DEF_CONST
    - JS_SetPropertyUint32
    - countof
    - JS_NewString
    - JS_SetClassProto
    - JS_NewClassID
    - JS_SetModuleExport
    - gf_sys_get_arg
    - JS_SetPropertyStr
    - gf_sys_get_argc
    - JS_GetRuntime
    - JS_NewArray
    linkageType: ''
    returnType: int
    signature: int js_gpaccore_init(JSContext *ctx, JSModuleDef *m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4381
      start: 4379
    functionDepth: 0
    functionLinenumber: 4379
    functionLinenumberEnd: 4381
    functionName: DEF_CONST
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEF_CONST( _val )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewCModule
      Src: /src/gpac/src/jsmods/core.c:4453,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/core.c:4456,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/core.c:4457,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/core.c:4458,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/core.c:4459,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/core.c:4460,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/core.c:4461,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4463
      start: 4450
    functionDepth: 1
    functionLinenumber: 4450
    functionLinenumberEnd: 4463
    functionName: qjs_module_init_gpaccore
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 1
    functionsReached:
    - JS_AddModuleExport
    - JS_NewCModule
    linkageType: ''
    returnType: void
    signature: void qjs_module_init_gpaccore(JSContext *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_AddIntrinsicBigFloat
      Src: /src/gpac/src/jsmods/core.c:4478,1
    - Dst: JS_AddIntrinsicBigDecimal
      Src: /src/gpac/src/jsmods/core.c:4479,1
    - Dst: JS_AddIntrinsicOperators
      Src: /src/gpac/src/jsmods/core.c:4480,1
    - Dst: JS_EnableBignumExt
      Src: /src/gpac/src/jsmods/core.c:4481,1
    - Dst: js_init_module_std
      Src: /src/gpac/src/jsmods/core.c:4485,1
    - Dst: js_init_module_os
      Src: /src/gpac/src/jsmods/core.c:4486,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4487
      start: 4474
    functionDepth: 1
    functionLinenumber: 4474
    functionLinenumberEnd: 4487
    functionName: qjs_module_init_qjs_libc
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_AddIntrinsicOperators
    - js_init_module_std
    - JS_AddIntrinsicBigFloat
    - JS_AddIntrinsicBigDecimal
    - JS_EnableBignumExt
    - js_init_module_os
    linkageType: ''
    returnType: void
    signature: void qjs_module_init_qjs_libc(JSContext *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: qjs_module_init_gpaccore
      Src: /src/gpac/src/jsmods/core.c:4494,1
    - Dst: qjs_module_init_qjs_libc
      Src: /src/gpac/src/jsmods/core.c:4497,1
    - Dst: qjs_module_init_scenejs
      Src: /src/gpac/src/jsmods/core.c:4503,1
    - Dst: qjs_module_init_xhr
      Src: /src/gpac/src/jsmods/core.c:4506,1
    - Dst: qjs_module_init_evg
      Src: /src/gpac/src/jsmods/core.c:4508,1
    - Dst: qjs_module_init_storage
      Src: /src/gpac/src/jsmods/core.c:4509,1
    - Dst: qjs_module_init_webgl
      Src: /src/gpac/src/jsmods/core.c:4512,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - no_webgl
    - for_vrml
    argTypes:
    - JSContext*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4513
      start: 4491
    functionDepth: 2
    functionLinenumber: 4491
    functionLinenumberEnd: 4513
    functionName: qjs_init_all_modules
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 1
    functionsReached:
    - qjs_module_init_evg
    - qjs_module_init_xhr
    - qjs_module_init_webgl
    - qjs_module_init_qjs_libc
    - qjs_module_init_storage
    - qjs_module_init_gpaccore
    - qjs_module_init_scenejs
    linkageType: ''
    returnType: void
    signature: void qjs_init_all_modules(JSContext *ctx, Bool no_webgl, Bool for_vrml)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/jsmods/core.c:4537,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/core.c:4537,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/core.c:4539,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/core.c:4539,1
    - Dst: strcpy
      Src: /src/gpac/src/jsmods/core.c:4541,1
    - Dst: strcpy
      Src: /src/gpac/src/jsmods/core.c:4542,1
    - Dst: LoadLibrary
      Src: /src/gpac/src/jsmods/core.c:4549,1
    - Dst: dlopen
      Src: /src/gpac/src/jsmods/core.c:4551,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:4555,1
    - Dst: JS_ThrowReferenceError
      Src: /src/gpac/src/jsmods/core.c:4558,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/jsmods/core.c:4563,1
    - Dst: dlsym
      Src: /src/gpac/src/jsmods/core.c:4565,1
    - Dst: JS_ThrowReferenceError
      Src: /src/gpac/src/jsmods/core.c:4569,1
    - Dst: init
      Src: /src/gpac/src/jsmods/core.c:4571,1
    - Dst: JS_ThrowReferenceError
      Src: /src/gpac/src/jsmods/core.c:4573,1
    - Dst: FreeLibrary
      Src: /src/gpac/src/jsmods/core.c:4577,1
    - Dst: dlclose
      Src: /src/gpac/src/jsmods/core.c:4579,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 2
    argNames:
    - ctx
    - module_name
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4583
      start: 4529
    functionDepth: 1
    functionLinenumber: 4529
    functionLinenumberEnd: 4583
    functionName: qjs_module_loader_dyn_lib
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_free
    - GetProcAddress
    - FreeLibrary
    - dlopen
    - strcpy
    - dlclose
    - init
    - LoadLibrary
    - JS_ThrowReferenceError
    - strchr
    - strlen
    - dlsym
    linkageType: ''
    returnType: JSModuleDef
    signature: "JSModuleDef *qjs_module_loader_dyn_lib(JSContext *ctx,\n                                        const
      char *module_name)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/jsmods/core.c:4593,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:4595,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:4595,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:4595,1
    - Dst: qjs_module_loader_dyn_lib
      Src: /src/gpac/src/jsmods/core.c:4597,1
    - Dst: JS_ThrowReferenceError
      Src: /src/gpac/src/jsmods/core.c:4599,1
    - Dst: jsf_get_script_filename
      Src: /src/gpac/src/jsmods/core.c:4608,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/jsmods/core.c:4609,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/jsmods/core.c:4612,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/jsmods/core.c:4613,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/jsmods/core.c:4614,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/jsmods/core.c:4615,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:4619,1
    - Dst: JS_ThrowReferenceError
      Src: /src/gpac/src/jsmods/core.c:4622,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/jsmods/core.c:4622,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/jsmods/core.c:4626,1
    - Dst: js_module_test_json
      Src: /src/gpac/src/jsmods/core.c:4627,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/core.c:4628,1
    - Dst: JS_ParseJSON2
      Src: /src/gpac/src/jsmods/core.c:4636,1
    - Dst: js_free
      Src: /src/gpac/src/jsmods/core.c:4637,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/core.c:4638,1
    - Dst: create_json_module
      Src: /src/gpac/src/jsmods/core.c:4640,1
    - Dst: JS_Eval
      Src: /src/gpac/src/jsmods/core.c:4645,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:4646,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/core.c:4647,1
    - Dst: js_module_set_import_meta
      Src: /src/gpac/src/jsmods/core.c:4650,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/jsmods/core.c:4652,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:4653,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 43
    argCount: 4
    argNames:
    - ctx
    - module_name
    - opaque
    - attributes
    argTypes:
    - JSContext*
    - char*
    - void*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4657
      start: 4590
    functionDepth: 4
    functionLinenumber: 4590
    functionLinenumberEnd: 4657
    functionName: qjs_module_loader
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_file_exists
    - create_json_module
    - qjs_module_loader_dyn_lib
    - js_module_set_import_meta
    - stricmp
    - js_module_test_json
    - js_free
    - JS_VALUE_GET_PTR
    - JS_ParseJSON2
    - gf_error_to_string
    - JS_Eval
    - JS_IsException
    - JS_FreeValue
    - gf_url_concatenate
    - gf_file_ext_start
    - strcmp
    - JS_ThrowReferenceError
    - jsf_get_script_filename
    - gf_file_load_data
    linkageType: ''
    returnType: JSModuleDef
    signature: JSModuleDef *qjs_module_loader(JSContext *ctx, const char *module_name,
      void *opaque, JSValueConst attributes)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewContext
      Src: /src/gpac/src/jsmods/core.c:4663,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/jsmods/core.c:4667,1
    - Dst: js_load_constants
      Src: /src/gpac/src/jsmods/core.c:4668,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:4669,1
    - Dst: qjs_init_all_modules
      Src: /src/gpac/src/jsmods/core.c:4672,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4674
      start: 4661
    functionDepth: 3
    functionLinenumber: 4661
    functionLinenumberEnd: 4674
    functionName: JS_NewWorkerContext
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_GetGlobalObject
    - JS_FreeValue
    - qjs_init_all_modules
    - js_load_constants
    - JS_NewContext
    linkageType: ''
    returnType: JSContext
    signature: JSContext *JS_NewWorkerContext(JSRuntime *rt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/core.c:4679,1
    - Dst: js_dump_error_exc
      Src: /src/gpac/src/jsmods/core.c:4680,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - ctx
    - promise
    - reason
    - is_handled
    - opaque
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - JS_BOOL
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4682
      start: 4676
    functionDepth: 5
    functionLinenumber: 4676
    functionLinenumberEnd: 4682
    functionName: js_promise_rejection_tracker
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - js_dump_error_exc
    linkageType: ''
    returnType: void
    signature: void js_promise_rejection_tracker(JSContext *ctx, JSValueConst promise,
      JSValueConst reason, JS_BOOL is_handled, void *opaque)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/jsmods/core.c:4687,1
    - Dst: JS_SetModuleLoaderFunc2
      Src: /src/gpac/src/jsmods/core.c:4691,1
    - Dst: js_std_set_worker_new_context_func
      Src: /src/gpac/src/jsmods/core.c:4695,1
    - Dst: js_std_init_handlers
      Src: /src/gpac/src/jsmods/core.c:4696,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/jsmods/core.c:4699,1
    - Dst: JS_SetHostPromiseRejectionTracker
      Src: /src/gpac/src/jsmods/core.c:4700,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/jsmods/core.c:4703,1
    - Dst: js_promise_rejection_tracker
      Src: /src/gpac/src/jsmods/core.c:4704,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4710
      start: 4685
    functionDepth: 6
    functionLinenumber: 4685
    functionLinenumberEnd: 4710
    functionName: qjs_init_runtime_libc
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 1
    functionsReached:
    - JS_SetHostPromiseRejectionTracker
    - JS_SetModuleLoaderFunc2
    - js_std_set_worker_new_context_func
    - js_std_init_handlers
    - gf_opts_get_bool
    - gf_sys_is_cov_mode
    - js_promise_rejection_tracker
    linkageType: ''
    returnType: void
    signature: void qjs_init_runtime_libc(JSRuntime *rt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/jsmods/core.c:4714,1
    - Dst: js_std_free_handlers
      Src: /src/gpac/src/jsmods/core.c:4718,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4721
      start: 4712
    functionDepth: 6
    functionLinenumber: 4712
    functionLinenumberEnd: 4721
    functionName: qjs_uninit_runtime_libc
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 1
    functionsReached:
    - gf_opts_get_bool
    - js_std_free_handlers
    linkageType: ''
    returnType: void
    signature: void qjs_uninit_runtime_libc(JSRuntime *rt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - XMLHTTPContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 173
    functionName: xml_http_get_scenegraph
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_SceneGraph
    signature: GF_SceneGraph *xml_http_get_scenegraph(XMLHTTPContext *ctx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:183,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:188,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:189,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:190,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:191,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:192,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:193,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:194,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:195,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:196,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:197,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:198,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:199,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:205,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:206,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:207,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:208,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:209,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:210,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:211,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:212,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:213,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:214,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:215,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:216,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:217,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:218,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:219,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:220,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:221,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:222,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:223,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:224,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:225,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/xhr.c:226,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:227,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/xhr.c:232,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/xhr.c:232,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/xhr.c:232,1
    - Dst: sprintf
      Src: /src/gpac/src/jsmods/xhr.c:233,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/xhr.c:234,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 24
    argCount: 3
    argNames:
    - ctx
    - hdr
    - val
    argTypes:
    - XMLHTTPContext*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 240
    functionName: xml_http_append_send_header
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_strdup
    - sprintf
    - stricmp
    - strlen
    linkageType: ''
    returnType: void
    signature: void xml_http_append_send_header(XMLHTTPContext *ctx, char *hdr, char
      *val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/xhr.c:244,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:245,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/xhr.c:250,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - XMLHTTPContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 254
    functionName: xml_http_del_data
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_FreeValue
    - JS_IsUndefined
    linkageType: ''
    returnType: void
    signature: void xml_http_del_data(XMLHTTPContext *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xml_http_del_data
      Src: /src/gpac/src/jsmods/xhr.c:258,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/xhr.c:260,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/xhr.c:264,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/xhr.c:270,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/xhr.c:273,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - XMLHTTPContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 256
    functionDepth: 2
    functionLinenumber: 256
    functionLinenumberEnd: 278
    functionName: xml_http_reset_partial
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - xml_http_del_data
    - gf_free
    linkageType: ''
    returnType: void
    signature: void xml_http_reset_partial(XMLHTTPContext *ctx)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/xhr.c:283,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/xhr.c:287,1
    - Dst: xml_http_reset_partial
      Src: /src/gpac/src/jsmods/xhr.c:291,1
    - Dst: gf_dm_sess_abort
      Src: /src/gpac/src/jsmods/xhr.c:296,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/jsmods/xhr.c:297,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/xhr.c:301,1
    - Dst: gf_xml_sax_del
      Src: /src/gpac/src/jsmods/xhr.c:305,1
    - Dst: gf_list_del
      Src: /src/gpac/src/jsmods/xhr.c:309,1
    - Dst: dom_js_unload
      Src: /src/gpac/src/jsmods/xhr.c:315,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/jsmods/xhr.c:318,1
    - Dst: gf_sg_js_dom_pre_destroy
      Src: /src/gpac/src/jsmods/xhr.c:323,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/xhr.c:323,1
    - Dst: gf_sg_del
      Src: /src/gpac/src/jsmods/xhr.c:324,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 45
    argCount: 2
    argNames:
    - ctx
    - delete_conn
    argTypes:
    - XMLHTTPContext*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 280
    functionDepth: 6
    functionLinenumber: 280
    functionLinenumberEnd: 334
    functionName: xml_http_reset
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sg_del
    - gf_sg_js_dom_pre_destroy
    - dom_js_unload
    - xml_http_reset_partial
    - gf_xml_sax_del
    - gf_dm_sess_abort
    - gf_dm_sess_del
    - gf_node_unregister
    - JS_GetRuntime
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void xml_http_reset(XMLHTTPContext *ctx, Bool delete_conn)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/xhr.c:338,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/xhr.c:340,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/xhr.c:341,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/xhr.c:342,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/xhr.c:343,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/xhr.c:344,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/xhr.c:345,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/xhr.c:346,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/xhr.c:347,1
    - Dst: xml_http_reset
      Src: /src/gpac/src/jsmods/xhr.c:348,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/xhr.c:353,1
    - Dst: gf_list_get
      Src: /src/gpac/src/jsmods/xhr.c:354,1
    - Dst: gf_dom_listener_del
      Src: /src/gpac/src/jsmods/xhr.c:355,1
    - Dst: gf_dom_event_target_del
      Src: /src/gpac/src/jsmods/xhr.c:358,1
    - Dst: dom_js_unload
      Src: /src/gpac/src/jsmods/xhr.c:362,1
    - Dst: gf_sg_del
      Src: /src/gpac/src/jsmods/xhr.c:363,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/xhr.c:368,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 336
    functionDepth: 7
    functionLinenumber: 336
    functionLinenumberEnd: 369
    functionName: xml_http_finalize
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - gf_free
    - xml_http_reset
    - gf_list_get
    - JS_GetOpaque
    - dom_js_unload
    - JS_FreeValueRT
    - gf_dom_listener_del
    - gf_list_count
    - gf_sg_del
    - gf_dom_event_target_del
    linkageType: ''
    returnType: void
    signature: void xml_http_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/jsmods/xhr.c:375,1
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/jsmods/xhr.c:376,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:377,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 371
    functionDepth: 1
    functionLinenumber: 371
    functionLinenumberEnd: 379
    functionName: GF_SceneGraph *xml_get_scenegraph(JSContext *c)
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - JS_GetGlobalObject
    - JS_GetAnyOpaque
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE GF_SceneGraph *xml_get_scenegraph(JSContext *c)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/xhr.c:386,1
    - Dst: xml_get_scenegraph
      Src: /src/gpac/src/jsmods/xhr.c:392,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - c
    - obj
    - sg
    - target
    argTypes:
    - JSContext*
    - JSValue
    - GF_SceneGraph**
    - GF_DOMEventTarget**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 382
    functionDepth: 1
    functionLinenumber: 382
    functionLinenumberEnd: 395
    functionName: xhr_get_event_target
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 1
    functionsReached:
    - JS_GetOpaque
    - xml_get_scenegraph
    linkageType: ''
    returnType: void
    signature: void xhr_get_event_target(JSContext *c, JSValue obj, GF_SceneGraph
      **sg, GF_DOMEventTarget **target)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/xhr.c:403,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/xhr.c:405,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:406,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/xhr.c:408,1
    - Dst: xml_get_scenegraph
      Src: /src/gpac/src/jsmods/xhr.c:413,1
    - Dst: gf_sg_new
      Src: /src/gpac/src/jsmods/xhr.c:416,1
    - Dst: dom_js_load
      Src: /src/gpac/src/jsmods/xhr.c:417,1
    - Dst: gf_dom_event_target_new
      Src: /src/gpac/src/jsmods/xhr.c:421,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/xhr.c:433,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 27
    argCount: 4
    argNames:
    - c
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 435
      start: 398
    functionDepth: 3
    functionLinenumber: 398
    functionLinenumberEnd: 435
    functionName: xml_http_constructor
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - gf_sg_new
    - dom_js_load
    - GF_SAFEALLOC
    - GF_LOG
    - xml_get_scenegraph
    - gf_dom_event_target_new
    - JS_SetOpaque
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_http_constructor(JSContext *c, JSValueConst new_target,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/jsmods/xhr.c:444,1
    - Dst: gf_sg_fire_dom_event
      Src: /src/gpac/src/jsmods/xhr.c:448,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - evtType
    argTypes:
    - XMLHTTPContext*
    - GF_EventType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 437
    functionDepth: 6
    functionLinenumber: 437
    functionLinenumberEnd: 450
    functionName: xml_http_fire_event
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_sg_fire_dom_event
    linkageType: ''
    returnType: void
    signature: void xml_http_fire_event(XMLHTTPContext *ctx, GF_EventType evtType)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/xhr.c:455,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/xhr.c:456,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/xhr.c:457,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/xhr.c:458,1
    - Dst: js_dump_error
      Src: /src/gpac/src/jsmods/xhr.c:459,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:460,1
    - Dst: js_std_loop
      Src: /src/gpac/src/jsmods/xhr.c:463,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/xhr.c:464,1
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/jsmods/xhr.c:473,1
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/jsmods/xhr.c:476,1
    - Dst: gf_js_vrml_flush_event_out
      Src: /src/gpac/src/jsmods/xhr.c:477,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - XMLHTTPContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 479
      start: 453
    functionDepth: 12
    functionLinenumber: 453
    functionLinenumberEnd: 479
    functionName: xml_http_state_change
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - gf_js_vrml_flush_event_out
    - JS_IsNull
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - gf_js_lock
    - JS_GetContextOpaque
    - js_dump_error
    - js_std_loop
    linkageType: ''
    returnType: void
    signature: void xml_http_state_change(XMLHTTPContext *ctx)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/xhr.c:489,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:490,1
    - Dst: xml_http_reset
      Src: /src/gpac/src/jsmods/xhr.c:493,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:495,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/jsmods/xhr.c:497,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:497,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/jsmods/xhr.c:499,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:499,1
    - Dst: xml_http_reset
      Src: /src/gpac/src/jsmods/xhr.c:501,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:502,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:503,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:503,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:503,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:504,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:504,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:504,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:505,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:506,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:509,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:510,1
    - Dst: xml_get_scenegraph
      Src: /src/gpac/src/jsmods/xhr.c:513,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:519,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/xhr.c:523,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:524,1
    - Dst: GF_SceneGraph*::script_action
      Src: /src/gpac/src/jsmods/xhr.c:527,1
    - Dst: jsf_get_script_filename
      Src: /src/gpac/src/jsmods/xhr.c:530,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/jsmods/xhr.c:531,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:533,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:535,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/xhr.c:541,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/jsmods/xhr.c:543,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:543,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/jsmods/xhr.c:546,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:546,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:547,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:550,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:553,1
    - Dst: xml_http_state_change
      Src: /src/gpac/src/jsmods/xhr.c:557,1
    - Dst: xml_http_fire_event
      Src: /src/gpac/src/jsmods/xhr.c:558,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/xhr.c:559,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/xhr.c:560,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 63
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 482
    functionDepth: 13
    functionLinenumber: 482
    functionLinenumberEnd: 563
    functionName: xml_http_open
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - xml_http_reset
    - gf_strdup
    - JS_IsFunction
    - JS_GetOpaque
    - JS_Call
    - xml_get_scenegraph
    - xml_http_fire_event
    - gf_url_concatenate
    - JS_CHECK_STRING
    - GF_SceneGraph*::script_action
    - JS_ToBool
    - strncmp
    - strcmp
    - GF_JS_EXCEPTION
    - xml_http_state_change
    - jsf_get_script_filename
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_http_open(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/xhr.c:568,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:569,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:571,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:572,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/jsmods/xhr.c:573,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:573,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/jsmods/xhr.c:574,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:574,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:576,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:577,1
    - Dst: xml_http_append_send_header
      Src: /src/gpac/src/jsmods/xhr.c:578,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:579,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:580,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 565
    functionDepth: 1
    functionLinenumber: 565
    functionLinenumberEnd: 582
    functionName: xml_http_set_header
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - xml_http_append_send_header
    - JS_GetOpaque
    - JS_CHECK_STRING
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_http_set_header(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/jsmods/xhr.c:592,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:594,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:598,1
    - Dst: gf_sg_get_max_node_id
      Src: /src/gpac/src/jsmods/xhr.c:599,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/jsmods/xhr.c:600,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/xhr.c:603,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/xhr.c:605,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:609,1
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/jsmods/xhr.c:611,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:612,1
    - Dst: gf_list_last
      Src: /src/gpac/src/jsmods/xhr.c:618,1
    - Dst: gf_node_register
      Src: /src/gpac/src/jsmods/xhr.c:619,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/jsmods/xhr.c:621,1
    - Dst: gf_assert
      Src: /src/gpac/src/jsmods/xhr.c:623,1
    - Dst: gf_list_add
      Src: /src/gpac/src/jsmods/xhr.c:626,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 5
    argNames:
    - sax_cbck
    - node_name
    - name_space
    - attributes
    - nb_attributes
    argTypes:
    - void*
    - char*
    - char*
    - GF_XMLAttribute*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 627
      start: 586
    functionDepth: 4
    functionLinenumber: 586
    functionLinenumberEnd: 627
    functionName: xml_http_sax_start
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - gf_node_list_add_child
    - gf_strdup
    - gf_assert
    - GF_SAFEALLOC
    - gf_node_set_id
    - GF_LOG
    - gf_svg_create_attribute_value
    - gf_sg_get_max_node_id
    - gf_node_new
    - gf_list_add
    - stricmp
    - gf_node_register
    - gf_list_last
    linkageType: ''
    returnType: void
    signature: void xml_http_sax_start(void *sax_cbck, const char *node_name, const
      char *name_space, const GF_XMLAttribute *attributes, u32 nb_attributes)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/jsmods/xhr.c:632,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:635,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/jsmods/xhr.c:636,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - sax_cbck
    - node_name
    - name_space
    argTypes:
    - void*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 638
      start: 629
    functionDepth: 2
    functionLinenumber: 629
    functionLinenumberEnd: 638
    functionName: xml_http_sax_end
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - strcmp
    - gf_list_last
    - gf_list_rem_last
    linkageType: ''
    returnType: void
    signature: void xml_http_sax_end(void *sax_cbck, const char *node_name, const
      char *name_space)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/jsmods/xhr.c:642,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/xhr.c:647,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/xhr.c:649,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/jsmods/xhr.c:653,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:653,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - sax_cbck
    - content
    - is_cdata
    argTypes:
    - void*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 639
    functionDepth: 2
    functionLinenumber: 639
    functionLinenumberEnd: 656
    functionName: xml_http_sax_text
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_dom_add_text_node
    - strchr
    - gf_list_last
    - strlen
    linkageType: ''
    returnType: void
    signature: void xml_http_sax_text(void *sax_cbck, const char *content, Bool is_cdata)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/jsmods/xhr.c:663,1
    - Dst: xml_http_state_change
      Src: /src/gpac/src/jsmods/xhr.c:669,1
    - Dst: xml_http_fire_event
      Src: /src/gpac/src/jsmods/xhr.c:670,1
    - Dst: xml_http_fire_event
      Src: /src/gpac/src/jsmods/xhr.c:671,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/xhr.c:672,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/xhr.c:673,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/xhr.c:674,1
    - Dst: js_dump_error
      Src: /src/gpac/src/jsmods/xhr.c:674,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:675,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/xhr.c:677,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/xhr.c:678,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/xhr.c:679,1
    - Dst: js_dump_error
      Src: /src/gpac/src/jsmods/xhr.c:679,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:680,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/xhr.c:682,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/xhr.c:683,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/xhr.c:684,1
    - Dst: js_dump_error
      Src: /src/gpac/src/jsmods/xhr.c:684,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:685,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 2
    argNames:
    - ctx
    - error
    argTypes:
    - XMLHTTPContext*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 687
      start: 659
    functionDepth: 13
    functionLinenumber: 659
    functionLinenumberEnd: 687
    functionName: xml_http_terminate
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_IsFunction
    - JS_IsException
    - JS_FreeValue
    - xml_http_fire_event
    - js_dump_error
    - gf_dm_sess_del
    - xml_http_state_change
    linkageType: ''
    returnType: void
    signature: void xml_http_terminate(XMLHTTPContext *ctx, GF_Err error)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_try_lock
      Src: /src/gpac/src/jsmods/xhr.c:696,1
    - Dst: gf_sleep
      Src: /src/gpac/src/jsmods/xhr.c:700,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/xhr.c:705,1
    - Dst: gf_assert
      Src: /src/gpac/src/jsmods/xhr.c:710,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/xhr.c:711,1
    - Dst: xml_http_reset_partial
      Src: /src/gpac/src/jsmods/xhr.c:723,1
    - Dst: xml_http_fire_event
      Src: /src/gpac/src/jsmods/xhr.c:726,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/xhr.c:727,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/xhr.c:728,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/xhr.c:729,1
    - Dst: js_dump_error
      Src: /src/gpac/src/jsmods/xhr.c:729,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:730,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:737,1
    - Dst: gf_dm_sess_get_header
      Src: /src/gpac/src/jsmods/xhr.c:743,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/xhr.c:744,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/xhr.c:745,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/xhr.c:746,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/xhr.c:747,1
    - Dst: gf_assert
      Src: /src/gpac/src/jsmods/xhr.c:749,1
    - Dst: gf_xml_sax_new
      Src: /src/gpac/src/jsmods/xhr.c:750,1
    - Dst: gf_list_new
      Src: /src/gpac/src/jsmods/xhr.c:751,1
    - Dst: gf_sg_new
      Src: /src/gpac/src/jsmods/xhr.c:752,1
    - Dst: xml_http_state_change
      Src: /src/gpac/src/jsmods/xhr.c:760,1
    - Dst: xml_http_fire_event
      Src: /src/gpac/src/jsmods/xhr.c:761,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/xhr.c:762,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/xhr.c:763,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/xhr.c:764,1
    - Dst: js_dump_error
      Src: /src/gpac/src/jsmods/xhr.c:764,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:765,1
    - Dst: xml_http_state_change
      Src: /src/gpac/src/jsmods/xhr.c:788,1
    - Dst: gf_xml_sax_init
      Src: /src/gpac/src/jsmods/xhr.c:793,1
    - Dst: gf_xml_sax_parse
      Src: /src/gpac/src/jsmods/xhr.c:794,1
    - Dst: gf_xml_sax_del
      Src: /src/gpac/src/jsmods/xhr.c:796,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/xhr.c:803,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:804,1
    - Dst: gf_realloc
      Src: /src/gpac/src/jsmods/xhr.c:809,1
    - Dst: memcpy
      Src: /src/gpac/src/jsmods/xhr.c:810,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/xhr.c:815,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/xhr.c:816,1
    - Dst: gf_dm_sess_get_stats
      Src: /src/gpac/src/jsmods/xhr.c:820,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:821,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/xhr.c:821,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:822,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/xhr.c:822,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:823,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/xhr.c:823,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:824,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/xhr.c:824,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/jsmods/xhr.c:826,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:827,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/xhr.c:830,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/xhr.c:831,1
    - Dst: js_dump_error
      Src: /src/gpac/src/jsmods/xhr.c:832,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/jsmods/xhr.c:833,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/xhr.c:835,1
    - Dst: gf_dm_sess_set_max_rate
      Src: /src/gpac/src/jsmods/xhr.c:837,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:839,1
    - Dst: JS_DetachArrayBuffer
      Src: /src/gpac/src/jsmods/xhr.c:841,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:843,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/xhr.c:857,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/jsmods/xhr.c:857,1
    - Dst: xml_http_terminate
      Src: /src/gpac/src/jsmods/xhr.c:865,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/xhr.c:870,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 158
    argCount: 2
    argNames:
    - usr_cbk
    - parameter
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 872
      start: 689
    functionDepth: 14
    functionLinenumber: 689
    functionLinenumberEnd: 872
    functionName: xml_http_on_data
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_set_max_rate
    - JS_IsNumber
    - JS_NewInt64
    - gf_js_try_lock
    - xml_http_reset_partial
    - xml_http_state_change
    - gf_realloc
    - gf_sg_new
    - gf_assert
    - gf_strdup
    - gf_list_new
    - gf_dm_sess_get_stats
    - JS_DetachArrayBuffer
    - memcpy
    - JS_IsUndefined
    - strncmp
    - gf_xml_sax_del
    - js_dump_error
    - JS_IsFunction
    - GF_LOG
    - gf_sleep
    - strstr
    - xml_http_terminate
    - JS_ToInt32
    - gf_error_to_string
    - gf_xml_sax_init
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - gf_dm_sess_get_header
    - xml_http_fire_event
    - JS_NewBool
    - gf_js_lock
    - gf_xml_sax_parse
    - JS_NewArrayBuffer
    - JS_NewObject
    - gf_xml_sax_new
    - JS_SetPropertyStr
    linkageType: ''
    returnType: void
    signature: void xml_http_on_data(void *usr_cbk, GF_NETIO_Parameter *parameter)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/jsmods/xhr.c:882,1
    - Dst: gf_fopen
      Src: /src/gpac/src/jsmods/xhr.c:882,1
    - Dst: strnicmp
      Src: /src/gpac/src/jsmods/xhr.c:884,1
    - Dst: gf_fopen
      Src: /src/gpac/src/jsmods/xhr.c:884,1
    - Dst: gf_fopen
      Src: /src/gpac/src/jsmods/xhr.c:886,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/xhr.c:890,1
    - Dst: xml_http_fire_event
      Src: /src/gpac/src/jsmods/xhr.c:891,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/xhr.c:892,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/xhr.c:893,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/xhr.c:894,1
    - Dst: js_dump_error
      Src: /src/gpac/src/jsmods/xhr.c:894,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:895,1
    - Dst: xml_http_on_data
      Src: /src/gpac/src/jsmods/xhr.c:902,1
    - Dst: gf_fsize
      Src: /src/gpac/src/jsmods/xhr.c:904,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/xhr.c:908,1
    - Dst: gf_fread
      Src: /src/gpac/src/jsmods/xhr.c:909,1
    - Dst: gf_fclose
      Src: /src/gpac/src/jsmods/xhr.c:910,1
    - Dst: gf_assert
      Src: /src/gpac/src/jsmods/xhr.c:918,1
    - Dst: gf_xml_sax_new
      Src: /src/gpac/src/jsmods/xhr.c:919,1
    - Dst: gf_list_new
      Src: /src/gpac/src/jsmods/xhr.c:920,1
    - Dst: gf_sg_new
      Src: /src/gpac/src/jsmods/xhr.c:921,1
    - Dst: memset
      Src: /src/gpac/src/jsmods/xhr.c:928,1
    - Dst: xml_http_on_data
      Src: /src/gpac/src/jsmods/xhr.c:933,1
    - Dst: memset
      Src: /src/gpac/src/jsmods/xhr.c:937,1
    - Dst: xml_http_on_data
      Src: /src/gpac/src/jsmods/xhr.c:939,1
    - Dst: xml_http_terminate
      Src: /src/gpac/src/jsmods/xhr.c:942,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 50
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - XMLHTTPContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 945
      start: 874
    functionDepth: 15
    functionLinenumber: 874
    functionLinenumberEnd: 945
    functionName: xml_http_process_local
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_fopen
    - gf_sg_new
    - gf_assert
    - gf_list_new
    - gf_fsize
    - js_dump_error
    - JS_IsFunction
    - GF_LOG
    - gf_fread
    - xml_http_terminate
    - xml_http_on_data
    - strnicmp
    - gf_malloc
    - gf_fclose
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - xml_http_fire_event
    - gf_xml_sax_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err xml_http_process_local(XMLHTTPContext *ctx)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/xhr.c:958,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:959,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:961,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:962,1
    - Dst: xml_get_scenegraph
      Src: /src/gpac/src/jsmods/xhr.c:965,1
    - Dst: GF_SceneGraph*::script_action
      Src: /src/gpac/src/jsmods/xhr.c:969,1
    - Dst: jsf_get_download_manager
      Src: /src/gpac/src/jsmods/xhr.c:971,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:974,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/xhr.c:978,1
    - Dst: JS_IsArrayBuffer
      Src: /src/gpac/src/jsmods/xhr.c:979,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/xhr.c:981,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/xhr.c:983,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:985,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/jsmods/xhr.c:987,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:987,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:988,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/xhr.c:989,1
    - Dst: xml_http_del_data
      Src: /src/gpac/src/jsmods/xhr.c:994,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:995,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:998,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/xhr.c:1000,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/xhr.c:1000,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1004,1
    - Dst: gf_dm_sess_setup_from_url
      Src: /src/gpac/src/jsmods/xhr.c:1020,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/jsmods/xhr.c:1022,1
    - Dst: gf_dm_sess_get_stats
      Src: /src/gpac/src/jsmods/xhr.c:1026,1
    - Dst: assert
      Src: /src/gpac/src/jsmods/xhr.c:1027,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/jsmods/xhr.c:1032,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1033,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/jsmods/xhr.c:1037,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/xhr.c:1039,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/jsmods/xhr.c:1039,1
    - Dst: xml_http_terminate
      Src: /src/gpac/src/jsmods/xhr.c:1042,1
    - Dst: xml_http_process_local
      Src: /src/gpac/src/jsmods/xhr.c:1045,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/xhr.c:1047,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/jsmods/xhr.c:1047,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 80
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts:
    - condition: (status<=GF_NETIO_CONNECTED)
      pos:
        line_end: 1026
        line_start: 1026
        source_file: /src/gpac/src/jsmods/xhr.c
    constantsTouched: []
    func_position:
      end: 1052
      start: 951
    functionDepth: 16
    functionLinenumber: 951
    functionLinenumberEnd: 1052
    functionName: xml_http_send
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_process
    - xml_get_scenegraph
    - gf_dm_sess_del
    - JS_FreeCString
    - gf_dm_sess_setup_from_url
    - JS_ToCString
    - gf_strdup
    - gf_dm_sess_get_stats
    - xml_http_process_local
    - JS_GetOpaque
    - GF_SceneGraph*::script_action
    - strncmp
    - gf_dm_sess_new
    - JS_IsObject
    - JS_IsNull
    - xml_http_del_data
    - GF_LOG
    - assert
    - xml_http_terminate
    - JS_CHECK_STRING
    - gf_error_to_string
    - strlen
    - jsf_get_download_manager
    - JS_IsArrayBuffer
    - GF_JS_EXCEPTION
    - JS_GetArrayBuffer
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_http_send(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/xhr.c:1057,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1058,1
    - Dst: gf_dm_sess_abort
      Src: /src/gpac/src/jsmods/xhr.c:1064,1
    - Dst: xml_http_fire_event
      Src: /src/gpac/src/jsmods/xhr.c:1067,1
    - Dst: xml_http_reset
      Src: /src/gpac/src/jsmods/xhr.c:1068,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/xhr.c:1069,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/xhr.c:1070,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1073
      start: 1054
    functionDepth: 7
    functionLinenumber: 1054
    functionLinenumberEnd: 1073
    functionName: xml_http_abort
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - xml_http_reset
    - JS_IsFunction
    - JS_GetOpaque
    - JS_Call
    - xml_http_fire_event
    - gf_dm_sess_abort
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_http_abort(JSContext *c, JSValueConst obj, int argc, JSValueConst
      *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/xhr.c:1081,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1082,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1085,1
    - Dst: gf_dm_sess_enum_headers
      Src: /src/gpac/src/jsmods/xhr.c:1088,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/jsmods/xhr.c:1090,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/jsmods/xhr.c:1091,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/jsmods/xhr.c:1092,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1098,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/xhr.c:1099,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1101
      start: 1075
    functionDepth: 1
    functionLinenumber: 1075
    functionLinenumberEnd: 1101
    functionName: xml_http_get_all_headers
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_GetOpaque
    - JS_NewString
    - gf_dm_sess_enum_headers
    - GF_JS_EXCEPTION
    - gf_dynstrcat
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_http_get_all_headers(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/xhr.c:1106,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1107,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/jsmods/xhr.c:1109,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1109,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1111,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:1112,1
    - Dst: gf_dm_sess_get_header
      Src: /src/gpac/src/jsmods/xhr.c:1113,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:1114,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1117,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1119
      start: 1103
    functionDepth: 1
    functionLinenumber: 1103
    functionLinenumberEnd: 1119
    functionName: xml_http_get_header
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_GetOpaque
    - gf_dm_sess_get_header
    - JS_NewString
    - JS_CHECK_STRING
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_http_get_header(JSContext *c, JSValueConst obj, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/jsmods/xhr.c:1125,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/jsmods/xhr.c:1126,1
    - Dst: gf_sg_init_from_xml_node
      Src: /src/gpac/src/jsmods/xhr.c:1128,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/jsmods/xhr.c:1128,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/jsmods/xhr.c:1130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - XMLHTTPContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1132
      start: 1122
    functionDepth: 10
    functionLinenumber: 1122
    functionLinenumberEnd: 1132
    functionName: xml_http_load_dom
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_get_root
    - gf_xml_dom_parse_string
    - gf_xml_dom_new
    - gf_sg_init_from_xml_node
    - gf_xml_dom_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err xml_http_load_dom(XMLHTTPContext *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/xhr.c:1139,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1140,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/jsmods/xhr.c:1142,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1142,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:1143,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/xhr.c:1144,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:1145,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:1146,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1148
      start: 1136
    functionDepth: 1
    functionLinenumber: 1136
    functionLinenumberEnd: 1148
    functionName: xml_http_overrideMimeType
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - gf_strdup
    - JS_GetOpaque
    - JS_CHECK_STRING
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_http_overrideMimeType(JSContext *c, JSValueConst obj, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/xhr.c:1154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - rt
    - opaque
    - ptr
    argTypes:
    - JSRuntime*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1155
      start: 1150
    functionDepth: 0
    functionLinenumber: 1150
    functionLinenumberEnd: 1155
    functionName: xml_http_array_buffer_free
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void xml_http_array_buffer_free(JSRuntime *rt, void *opaque, void *ptr)
  - BBCount: 58
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/xhr.c:1159,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1160,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/xhr.c:1163,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/xhr.c:1164,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/xhr.c:1165,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/xhr.c:1166,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/xhr.c:1167,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/xhr.c:1168,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/xhr.c:1169,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/xhr.c:1170,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1171,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1175,1
    - Dst: gf_sg_new
      Src: /src/gpac/src/jsmods/xhr.c:1185,1
    - Dst: xml_http_load_dom
      Src: /src/gpac/src/jsmods/xhr.c:1188,1
    - Dst: dom_js_load
      Src: /src/gpac/src/jsmods/xhr.c:1191,1
    - Dst: dom_document_construct_external
      Src: /src/gpac/src/jsmods/xhr.c:1194,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/xhr.c:1199,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1210,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/xhr.c:1213,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/jsmods/xhr.c:1214,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/xhr.c:1216,1
    - Dst: gf_sg_new
      Src: /src/gpac/src/jsmods/xhr.c:1222,1
    - Dst: xml_http_load_dom
      Src: /src/gpac/src/jsmods/xhr.c:1225,1
    - Dst: dom_js_load
      Src: /src/gpac/src/jsmods/xhr.c:1228,1
    - Dst: dom_document_construct_external
      Src: /src/gpac/src/jsmods/xhr.c:1231,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/xhr.c:1235,1
    - Dst: JS_ParseJSON
      Src: /src/gpac/src/jsmods/xhr.c:1238,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1240,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1249,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1253,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1257,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1262,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1265,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1266,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1267,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1268,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1269,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1270,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1271,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1272,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1276,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1278,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1280,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1282,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1284,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1287,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1288,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1289,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 142
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1296
      start: 1157
    functionDepth: 11
    functionLinenumber: 1157
    functionLinenumberEnd: 1296
    functionName: xml_http_getProperty
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - JS_ParseJSON
    - gf_sg_new
    - JS_DupValue
    - dom_js_load
    - JS_GetOpaque
    - js_throw_err_msg
    - JS_NewString
    - JS_IsUndefined
    - JS_NewArrayBuffer
    - xml_http_load_dom
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - dom_document_construct_external
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_http_getProperty(JSContext *c, JSValueConst obj, int magic)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/xhr.c:1300,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1301,1
    - Dst: SET_CBK
      Src: /src/gpac/src/jsmods/xhr.c:1313,1
    - Dst: SET_CBK
      Src: /src/gpac/src/jsmods/xhr.c:1316,1
    - Dst: SET_CBK
      Src: /src/gpac/src/jsmods/xhr.c:1319,1
    - Dst: SET_CBK
      Src: /src/gpac/src/jsmods/xhr.c:1322,1
    - Dst: SET_CBK
      Src: /src/gpac/src/jsmods/xhr.c:1325,1
    - Dst: SET_CBK
      Src: /src/gpac/src/jsmods/xhr.c:1328,1
    - Dst: SET_CBK
      Src: /src/gpac/src/jsmods/xhr.c:1331,1
    - Dst: SET_CBK
      Src: /src/gpac/src/jsmods/xhr.c:1334,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/xhr.c:1337,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1337,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/xhr.c:1341,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:1345,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1346,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1348,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1350,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1352,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1354,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1356,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1358,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1360,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:1363,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:1368,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1369,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1370,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1372,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1374,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:1377,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 74
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1385
      start: 1298
    functionDepth: 1
    functionLinenumber: 1298
    functionLinenumberEnd: 1385
    functionName: xml_http_setProperty
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_GetOpaque
    - SET_CBK
    - JS_ToBool
    - JS_ToInt32
    - strcmp
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue xml_http_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _sym
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1311
      start: 1303
    functionDepth: 0
    functionLinenumber: 1303
    functionLinenumberEnd: 1311
    functionName: SET_CBK
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_CBK(_sym)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/xhr.c:1423,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/xhr.c:1426,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/xhr.c:1427,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/xhr.c:1428,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/xhr.c:1429,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/xhr.c:1430,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/xhr.c:1431,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/xhr.c:1432,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/xhr.c:1433,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/xhr.c:1435,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/xhr.c:1436,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1437
      start: 1421
    functionDepth: 1
    functionLinenumber: 1421
    functionLinenumberEnd: 1437
    functionName: xml_http_gc_mark
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_MarkValue
    - JS_IsUndefined
    linkageType: ''
    returnType: void
    signature: void xml_http_gc_mark(JSRuntime *rt, JSValueConst val, JS_MarkFunc
      *mark_func)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/xhr.c:1442,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/xhr.c:1446,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/xhr.c:1446,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/xhr.c:1448,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/xhr.c:1449,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/xhr.c:1449,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/xhr.c:1450,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:1451,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1451,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:1452,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1452,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:1453,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1453,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:1454,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1454,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:1455,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1455,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/xhr.c:1457,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 1
    argNames:
    - c
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1458
      start: 1439
    functionDepth: 1
    functionLinenumber: 1439
    functionLinenumberEnd: 1458
    functionName: xhr_load_class
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_NewClass
    - JS_SetPropertyFunctionList
    - JS_NewCFunction2
    - countof
    - JS_SetClassProto
    - JS_NewClassID
    - JS_NewInt32
    - JS_SetPropertyStr
    - JS_GetRuntime
    linkageType: ''
    returnType: JSValue
    signature: JSValue xhr_load_class(JSContext *c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xhr_load_class
      Src: /src/gpac/src/jsmods/xhr.c:1463,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:1464,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - c
    - global
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1466
      start: 1460
    functionDepth: 2
    functionLinenumber: 1460
    functionLinenumberEnd: 1466
    functionName: qjs_module_init_xhr_global
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 2
    functionsReached:
    - JS_SetPropertyStr
    - xhr_load_class
    linkageType: ''
    returnType: void
    signature: void qjs_module_init_xhr_global(JSContext *c, JSValue global)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/jsmods/xhr.c:1470,1
    - Dst: xhr_load_class
      Src: /src/gpac/src/jsmods/xhr.c:1471,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:1472,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/xhr.c:1473,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - c
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1475
      start: 1468
    functionDepth: 2
    functionLinenumber: 1468
    functionLinenumberEnd: 1475
    functionName: js_xhr_load_module
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - JS_GetGlobalObject
    - xhr_load_class
    - JS_SetModuleExport
    linkageType: ''
    returnType: int
    signature: int js_xhr_load_module(JSContext *c, JSModuleDef *m)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewCModule
      Src: /src/gpac/src/jsmods/xhr.c:1479,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/xhr.c:1482,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/jsmods/xhr.c:1485,1
    - Dst: qjs_module_init_xhr_global
      Src: /src/gpac/src/jsmods/xhr.c:1486,1
    - Dst: xhr_get_event_target
      Src: /src/gpac/src/jsmods/xhr.c:1488,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1493
      start: 1476
    functionDepth: 3
    functionLinenumber: 1476
    functionLinenumberEnd: 1493
    functionName: qjs_module_init_xhr
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 1
    functionsReached:
    - qjs_module_init_xhr_global
    - JS_AddModuleExport
    - JS_NewCModule
    - xhr_get_event_target
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: void
    signature: void qjs_module_init_xhr(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1499
      start: 1497
    functionDepth: 0
    functionLinenumber: 1497
    functionLinenumberEnd: 1499
    functionName: qjs_module_init_xhr
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void qjs_module_init_xhr(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:23,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:24,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:25,1
    - Dst: glAttachShader
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 17
    functionDepth: 2
    functionLinenumber: 17
    functionLinenumberEnd: 28
    functionName: wgl_attachShader
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_GLID
    - glAttachShader
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_attachShader(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:37,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:38,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:39,1
    - Dst: WGL_GET_STRING
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:40,1
    - Dst: glBindAttribLocation
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:41,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 30
    functionDepth: 2
    functionLinenumber: 30
    functionLinenumberEnd: 44
    functionName: wgl_bindAttribLocation
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_STRING
    - js_throw_err
    - WGL_GET_U32
    - WGL_GET_GLID
    - glBindAttribLocation
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_bindAttribLocation(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:52,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:53,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:54,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 46
    functionDepth: 2
    functionLinenumber: 46
    functionLinenumberEnd: 57
    functionName: wgl_bindBuffer
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glBindBuffer
    - WGL_GET_GLID
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_bindBuffer(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:67,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:68,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:69,1
    - Dst: glBindRenderbuffer
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 61
    functionDepth: 2
    functionLinenumber: 61
    functionLinenumberEnd: 72
    functionName: wgl_bindRenderbuffer
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_GLID
    - js_throw_err
    - WGL_GET_U32
    - glBindRenderbuffer
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_bindRenderbuffer(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:84,1
    - Dst: WGL_GET_FLOAT_CLAMP
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:85,1
    - Dst: WGL_GET_FLOAT_CLAMP
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:86,1
    - Dst: WGL_GET_FLOAT_CLAMP
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:87,1
    - Dst: WGL_GET_FLOAT_CLAMP
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:88,1
    - Dst: glBlendColor
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 76
    functionDepth: 2
    functionLinenumber: 76
    functionLinenumberEnd: 91
    functionName: wgl_blendColor
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_FLOAT_CLAMP
    - glBlendColor
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_blendColor(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:98,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:99,1
    - Dst: glBlendEquation
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 102
    functionName: wgl_blendEquation
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glBlendEquation
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_blendEquation(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:110,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:111,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:112,1
    - Dst: glBlendEquationSeparate
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 104
    functionDepth: 2
    functionLinenumber: 104
    functionLinenumberEnd: 115
    functionName: wgl_blendEquationSeparate
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glBlendEquationSeparate
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_blendEquationSeparate(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:123,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:124,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:125,1
    - Dst: glBlendFunc
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 117
    functionDepth: 2
    functionLinenumber: 117
    functionLinenumberEnd: 128
    functionName: wgl_blendFunc
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - WGL_GET_U32
    - glBlendFunc
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_blendFunc(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:138,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:139,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:140,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:141,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:142,1
    - Dst: glBlendFuncSeparate
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 130
    functionDepth: 2
    functionLinenumber: 130
    functionLinenumberEnd: 145
    functionName: wgl_blendFuncSeparate
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glBlendFuncSeparate
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_blendFuncSeparate(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:155,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:156,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:157,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:158,1
    - Dst: wgl_GetArrayBuffer
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:160,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:162,1
    - Dst: glBufferData
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 147
    functionDepth: 2
    functionLinenumber: 147
    functionLinenumberEnd: 165
    functionName: wgl_bufferData
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - WGL_GET_U32
    - glBufferData
    - wgl_GetArrayBuffer
    - JS_IsObject
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_bufferData(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:175,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:176,1
    - Dst: WGL_GET_U64
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:177,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:178,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:179,1
    - Dst: wgl_GetArrayBuffer
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:181,1
    - Dst: glBufferSubData
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:183,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 167
    functionDepth: 2
    functionLinenumber: 167
    functionLinenumberEnd: 185
    functionName: wgl_bufferSubData
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - WGL_GET_U32
    - wgl_GetArrayBuffer
    - JS_IsObject
    - glBufferSubData
    - WGL_GET_U64
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_bufferSubData(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:191,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:192,1
    - Dst: glCheckFramebufferStatus
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:194,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 187
    functionDepth: 2
    functionLinenumber: 187
    functionLinenumberEnd: 196
    functionName: wgl_checkFramebufferStatus
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - JS_NewInt32
    - glCheckFramebufferStatus
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_checkFramebufferStatus(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:203,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:204,1
    - Dst: glClear
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 198
    functionDepth: 2
    functionLinenumber: 198
    functionLinenumberEnd: 207
    functionName: wgl_clear
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - WGL_GET_U32
    - glClear
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_clear(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:217,1
    - Dst: WGL_GET_FLOAT_CLAMP
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:218,1
    - Dst: WGL_GET_FLOAT_CLAMP
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:219,1
    - Dst: WGL_GET_FLOAT_CLAMP
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:220,1
    - Dst: WGL_GET_FLOAT_CLAMP
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:221,1
    - Dst: glClearColor
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 209
    functionDepth: 2
    functionLinenumber: 209
    functionLinenumberEnd: 224
    functionName: wgl_clearColor
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_FLOAT_CLAMP
    - glClearColor
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_clearColor(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:247,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:248,1
    - Dst: glClearStencil
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:249,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 242
    functionDepth: 2
    functionLinenumber: 242
    functionLinenumberEnd: 251
    functionName: wgl_clearStencil
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_S32
    - js_throw_err
    - glClearStencil
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_clearStencil(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:261,1
    - Dst: WGL_GET_BOOL
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:262,1
    - Dst: WGL_GET_BOOL
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:263,1
    - Dst: WGL_GET_BOOL
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:264,1
    - Dst: WGL_GET_BOOL
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:265,1
    - Dst: glColorMask
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:266,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 253
    functionDepth: 2
    functionLinenumber: 253
    functionLinenumberEnd: 268
    functionName: wgl_colorMask
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glColorMask
    - WGL_GET_BOOL
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_colorMask(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:275,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:276,1
    - Dst: glCompileShader
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:277,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 270
    functionDepth: 2
    functionLinenumber: 270
    functionLinenumberEnd: 279
    functionName: wgl_compileShader
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_GLID
    - js_throw_err
    - glCompileShader
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_compileShader(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:293,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:294,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:295,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:296,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:297,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:298,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:299,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:300,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:300,1
    - Dst: wgl_GetArrayBuffer
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:301,1
    - Dst: glCompressedTexImage2D
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:302,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 281
    functionDepth: 2
    functionLinenumber: 281
    functionLinenumberEnd: 304
    functionName: wgl_compressedTexImage2D
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - JS_IsArray
    - js_throw_err
    - WGL_GET_U32
    - wgl_GetArrayBuffer
    - WGL_GET_S32
    - glCompressedTexImage2D
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_compressedTexImage2D(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:319,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:320,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:321,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:322,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:323,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:324,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:325,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:326,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:327,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:327,1
    - Dst: wgl_GetArrayBuffer
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:328,1
    - Dst: glCompressedTexSubImage2D
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:329,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 306
    functionDepth: 2
    functionLinenumber: 306
    functionLinenumberEnd: 331
    functionName: wgl_compressedTexSubImage2D
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - JS_IsArray
    - js_throw_err
    - glCompressedTexSubImage2D
    - WGL_GET_U32
    - wgl_GetArrayBuffer
    - WGL_GET_S32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_compressedTexSubImage2D(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:345,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:346,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:347,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:348,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:349,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:350,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:351,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:352,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:353,1
    - Dst: glCopyTexImage2D
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:354,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 333
    functionDepth: 2
    functionLinenumber: 333
    functionLinenumberEnd: 356
    functionName: wgl_copyTexImage2D
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_S32
    - js_throw_err
    - WGL_GET_U32
    - glCopyTexImage2D
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_copyTexImage2D(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:370,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:371,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:372,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:373,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:374,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:375,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:376,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:377,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:378,1
    - Dst: glCopyTexSubImage2D
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 358
    functionDepth: 2
    functionLinenumber: 358
    functionLinenumberEnd: 381
    functionName: wgl_copyTexSubImage2D
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glCopyTexSubImage2D
    - WGL_GET_S32
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_copyTexSubImage2D(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:388,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:389,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:390,1
    - Dst: glGenBuffers
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:391,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:392,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:393,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:394,1
    - Dst: gf_list_add
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:396,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 383
    functionDepth: 2
    functionLinenumber: 383
    functionLinenumberEnd: 398
    functionName: wgl_createBuffer
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_DupValue
    - js_throw_err
    - GF_SAFEALLOC
    - JS_GetOpaque
    - JS_SetOpaque
    - glGenBuffers
    - gf_list_add
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_createBuffer(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:405,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:406,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:407,1
    - Dst: glGenFramebuffers
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:408,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:409,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:410,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:411,1
    - Dst: gf_list_add
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:413,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 400
    functionDepth: 2
    functionLinenumber: 400
    functionLinenumberEnd: 415
    functionName: wgl_createFramebuffer
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_DupValue
    - js_throw_err
    - GF_SAFEALLOC
    - JS_GetOpaque
    - JS_SetOpaque
    - glGenFramebuffers
    - gf_list_add
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_createFramebuffer(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:422,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:423,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:424,1
    - Dst: glCreateProgram
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:425,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:426,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:427,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:428,1
    - Dst: gf_list_add
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:430,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 417
    functionDepth: 2
    functionLinenumber: 417
    functionLinenumberEnd: 432
    functionName: wgl_createProgram
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_DupValue
    - glCreateProgram
    - js_throw_err
    - GF_SAFEALLOC
    - JS_GetOpaque
    - JS_SetOpaque
    - gf_list_add
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_createProgram(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:439,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:440,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:441,1
    - Dst: glGenRenderbuffers
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:442,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:443,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:444,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:445,1
    - Dst: gf_list_add
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:447,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 434
    functionDepth: 2
    functionLinenumber: 434
    functionLinenumberEnd: 449
    functionName: wgl_createRenderbuffer
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_DupValue
    - js_throw_err
    - GF_SAFEALLOC
    - JS_GetOpaque
    - JS_SetOpaque
    - gf_list_add
    - glGenRenderbuffers
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_createRenderbuffer(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:456,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:457,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:459,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:460,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:461,1
    - Dst: glCreateShader
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:462,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:463,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:464,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:465,1
    - Dst: gf_list_add
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:467,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 451
    functionDepth: 2
    functionLinenumber: 451
    functionLinenumberEnd: 469
    functionName: wgl_createShader
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_DupValue
    - js_throw_err
    - GF_SAFEALLOC
    - JS_GetOpaque
    - JS_SetOpaque
    - glCreateShader
    - WGL_GET_U32
    - gf_list_add
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_createShader(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:478,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:479,1
    - Dst: glCullFace
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:480,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 473
    functionDepth: 2
    functionLinenumber: 473
    functionLinenumberEnd: 482
    functionName: wgl_cullFace
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glCullFace
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_cullFace(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:489,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:490,1
    - Dst: glDeleteBuffers
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:491,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:493,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:496,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:498,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:499,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:500,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 484
    functionDepth: 3
    functionLinenumber: 484
    functionLinenumberEnd: 504
    functionName: wgl_deleteBuffer
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - gf_free
    - js_throw_err
    - JS_GetOpaque
    - JS_FreeValue
    - JS_SetOpaque
    - gf_list_del_item
    - glDeleteBuffers
    - WGL_GET_GLID
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_deleteBuffer(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:511,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:512,1
    - Dst: glDeleteFramebuffers
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:513,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:515,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:518,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:520,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:521,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:522,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 526
      start: 506
    functionDepth: 3
    functionLinenumber: 506
    functionLinenumberEnd: 526
    functionName: wgl_deleteFramebuffer
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - gf_free
    - js_throw_err
    - JS_GetOpaque
    - JS_FreeValue
    - JS_SetOpaque
    - glDeleteFramebuffers
    - gf_list_del_item
    - WGL_GET_GLID
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_deleteFramebuffer(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:533,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:534,1
    - Dst: glDeleteProgram
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:535,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:537,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:540,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:542,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:543,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:544,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 528
    functionDepth: 3
    functionLinenumber: 528
    functionLinenumberEnd: 548
    functionName: wgl_deleteProgram
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - gf_free
    - glDeleteProgram
    - js_throw_err
    - JS_GetOpaque
    - JS_FreeValue
    - JS_SetOpaque
    - gf_list_del_item
    - WGL_GET_GLID
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_deleteProgram(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:555,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:556,1
    - Dst: glDeleteRenderbuffers
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:557,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:559,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:562,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:564,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:565,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:566,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 550
    functionDepth: 3
    functionLinenumber: 550
    functionLinenumberEnd: 570
    functionName: wgl_deleteRenderbuffer
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - gf_free
    - glDeleteRenderbuffers
    - js_throw_err
    - JS_GetOpaque
    - JS_FreeValue
    - JS_SetOpaque
    - gf_list_del_item
    - WGL_GET_GLID
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_deleteRenderbuffer(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:577,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:578,1
    - Dst: glDeleteShader
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:579,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:581,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:584,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:586,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:587,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:588,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 572
    functionDepth: 3
    functionLinenumber: 572
    functionLinenumberEnd: 592
    functionName: wgl_deleteShader
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - gf_free
    - glDeleteShader
    - js_throw_err
    - JS_GetOpaque
    - JS_FreeValue
    - JS_SetOpaque
    - gf_list_del_item
    - WGL_GET_GLID
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_deleteShader(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:599,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:600,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:601,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:603,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:606,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:608,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:609,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:610,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 614
      start: 594
    functionDepth: 3
    functionLinenumber: 594
    functionLinenumberEnd: 614
    functionName: wgl_deleteTexture
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - gf_free
    - js_throw_err
    - JS_GetOpaque
    - JS_FreeValue
    - JS_SetOpaque
    - gf_list_del_item
    - WGL_GET_GLID
    - glDeleteTextures
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_deleteTexture(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:621,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:622,1
    - Dst: glDepthFunc
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:623,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 616
    functionDepth: 2
    functionLinenumber: 616
    functionLinenumberEnd: 625
    functionName: wgl_depthFunc
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glDepthFunc
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_depthFunc(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:632,1
    - Dst: WGL_GET_BOOL
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:633,1
    - Dst: glDepthMask
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:634,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 627
    functionDepth: 2
    functionLinenumber: 627
    functionLinenumberEnd: 636
    functionName: wgl_depthMask
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glDepthMask
    - WGL_GET_BOOL
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_depthMask(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:662,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:663,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:664,1
    - Dst: glDetachShader
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:665,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 656
    functionDepth: 2
    functionLinenumber: 656
    functionLinenumberEnd: 667
    functionName: wgl_detachShader
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glDetachShader
    - WGL_GET_GLID
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_detachShader(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:674,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:675,1
    - Dst: glDisable
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:676,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 678
      start: 669
    functionDepth: 2
    functionLinenumber: 669
    functionLinenumberEnd: 678
    functionName: wgl_disable
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - WGL_GET_U32
    - glDisable
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_disable(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:685,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:686,1
    - Dst: glDisableVertexAttribArray
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:687,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 680
    functionDepth: 2
    functionLinenumber: 680
    functionLinenumberEnd: 689
    functionName: wgl_disableVertexAttribArray
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glDisableVertexAttribArray
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_disableVertexAttribArray(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:698,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:699,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:700,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:701,1
    - Dst: glDrawArrays
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:702,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 704
      start: 691
    functionDepth: 2
    functionLinenumber: 691
    functionLinenumberEnd: 704
    functionName: wgl_drawArrays
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_S32
    - glDrawArrays
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_drawArrays(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:714,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:715,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:716,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:717,1
    - Dst: WGL_GET_U64
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:718,1
    - Dst: glDrawElements
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:720,1
    - Dst: glDrawElements
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:722,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 725
      start: 706
    functionDepth: 2
    functionLinenumber: 706
    functionLinenumberEnd: 725
    functionName: wgl_drawElements
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glDrawElements
    - js_throw_err
    - WGL_GET_U32
    - WGL_GET_U64
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_drawElements(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:732,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:733,1
    - Dst: glEnable
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:734,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 736
      start: 727
    functionDepth: 2
    functionLinenumber: 727
    functionLinenumberEnd: 736
    functionName: wgl_enable
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - WGL_GET_U32
    - glEnable
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_enable(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:743,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:744,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:745,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 747
      start: 738
    functionDepth: 2
    functionLinenumber: 738
    functionLinenumberEnd: 747
    functionName: wgl_enableVertexAttribArray
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - WGL_GET_U32
    - glEnableVertexAttribArray
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_enableVertexAttribArray(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 755
      start: 749
    functionDepth: 0
    functionLinenumber: 749
    functionLinenumberEnd: 755
    functionName: wgl_finish
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_finish(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 757
    functionDepth: 0
    functionLinenumber: 757
    functionLinenumberEnd: 763
    functionName: wgl_flush
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_flush(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:773,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:774,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:775,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:776,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:777,1
    - Dst: glFramebufferRenderbuffer
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:778,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 780
      start: 765
    functionDepth: 2
    functionLinenumber: 765
    functionLinenumberEnd: 780
    functionName: wgl_framebufferRenderbuffer
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_GLID
    - glFramebufferRenderbuffer
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_framebufferRenderbuffer(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:791,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:792,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:793,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:794,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:795,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:796,1
    - Dst: glFramebufferTexture2D
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:797,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 799
      start: 782
    functionDepth: 2
    functionLinenumber: 782
    functionLinenumberEnd: 799
    functionName: wgl_framebufferTexture2D
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - WGL_GET_U32
    - WGL_GET_S32
    - glFramebufferTexture2D
    - WGL_GET_GLID
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_framebufferTexture2D(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:806,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:807,1
    - Dst: glFrontFace
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:808,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 810
      start: 801
    functionDepth: 2
    functionLinenumber: 801
    functionLinenumberEnd: 810
    functionName: wgl_frontFace
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - WGL_GET_U32
    - glFrontFace
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_frontFace(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:817,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:818,1
    - Dst: glGenerateMipmap
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:819,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 821
      start: 812
    functionDepth: 2
    functionLinenumber: 812
    functionLinenumberEnd: 821
    functionName: wgl_generateMipmap
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glGenerateMipmap
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_generateMipmap(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:828,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:829,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:830,1
    - Dst: webgl_getActiveAttrib
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:831,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 823
    functionDepth: 4
    functionLinenumber: 823
    functionLinenumberEnd: 832
    functionName: wgl_getActiveAttrib
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_GLID
    - webgl_getActiveAttrib
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getActiveAttrib(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:839,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:840,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:841,1
    - Dst: webgl_getActiveUniform
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:842,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 834
    functionDepth: 4
    functionLinenumber: 834
    functionLinenumberEnd: 843
    functionName: wgl_getActiveUniform
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_GLID
    - js_throw_err
    - WGL_GET_U32
    - webgl_getActiveUniform
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getActiveUniform(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:849,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:850,1
    - Dst: webgl_getAttachedShaders
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:851,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:851,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 852
      start: 845
    functionDepth: 3
    functionLinenumber: 845
    functionLinenumberEnd: 852
    functionName: wgl_getAttachedShaders
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - WGL_GET_GLID
    - webgl_getAttachedShaders
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getAttachedShaders(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:859,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:860,1
    - Dst: WGL_GET_STRING
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:861,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:863,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:864,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:865,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 866
      start: 854
    functionDepth: 2
    functionLinenumber: 854
    functionLinenumberEnd: 866
    functionName: wgl_getAttribLocation
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_STRING
    - js_throw_err
    - JS_FreeCString
    - JS_NewInt32
    - WGL_GET_GLID
    - glGetAttribLocation
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getAttribLocation(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: glGetError
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:877,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:878,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 880
      start: 872
    functionDepth: 1
    functionLinenumber: 872
    functionLinenumberEnd: 880
    functionName: wgl_getError
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - JS_NewInt32
    - glGetError
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_getError(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:914,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:915,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:916,1
    - Dst: glHint
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:917,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 919
      start: 908
    functionDepth: 2
    functionLinenumber: 908
    functionLinenumberEnd: 919
    functionName: wgl_hint
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - WGL_GET_U32
    - glHint
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_hint(JSContext *ctx, JSValueConst this_val, int argc, JSValueConst
      *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:925,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:926,1
    - Dst: glIsBuffer
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:928,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:929,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 930
      start: 921
    functionDepth: 2
    functionLinenumber: 921
    functionLinenumberEnd: 930
    functionName: wgl_isBuffer
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_GLID
    - JS_NewBool
    - glIsBuffer
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_isBuffer(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:936,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:937,1
    - Dst: glIsEnabled
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:939,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:940,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 941
      start: 932
    functionDepth: 2
    functionLinenumber: 932
    functionLinenumberEnd: 941
    functionName: wgl_isEnabled
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - js_throw_err
    - WGL_GET_U32
    - glIsEnabled
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_isEnabled(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:947,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:948,1
    - Dst: glIsFramebuffer
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:950,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:951,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 952
      start: 943
    functionDepth: 2
    functionLinenumber: 943
    functionLinenumberEnd: 952
    functionName: wgl_isFramebuffer
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_GLID
    - JS_NewBool
    - glIsFramebuffer
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_isFramebuffer(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:958,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:959,1
    - Dst: glIsProgram
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:961,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:962,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 963
      start: 954
    functionDepth: 2
    functionLinenumber: 954
    functionLinenumberEnd: 963
    functionName: wgl_isProgram
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_GLID
    - glIsProgram
    - js_throw_err
    - JS_NewBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_isProgram(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:969,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:970,1
    - Dst: glIsRenderbuffer
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:972,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:973,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 974
      start: 965
    functionDepth: 2
    functionLinenumber: 965
    functionLinenumberEnd: 974
    functionName: wgl_isRenderbuffer
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_GLID
    - JS_NewBool
    - js_throw_err
    - glIsRenderbuffer
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_isRenderbuffer(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:980,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:981,1
    - Dst: glIsShader
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:983,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:984,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 985
      start: 976
    functionDepth: 2
    functionLinenumber: 976
    functionLinenumberEnd: 985
    functionName: wgl_isShader
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_GLID
    - JS_NewBool
    - glIsShader
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_isShader(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:991,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:992,1
    - Dst: glIsTexture
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:994,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:995,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 996
      start: 987
    functionDepth: 2
    functionLinenumber: 987
    functionLinenumberEnd: 996
    functionName: wgl_isTexture
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_GLID
    - JS_NewBool
    - js_throw_err
    - glIsTexture
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_isTexture(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1003,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1004,1
    - Dst: glLineWidth
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1005,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1007
      start: 998
    functionDepth: 2
    functionLinenumber: 998
    functionLinenumberEnd: 1007
    functionName: wgl_lineWidth
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_FLOAT
    - glLineWidth
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_lineWidth(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1014,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1015,1
    - Dst: glLinkProgram
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1016,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 1009
    functionDepth: 2
    functionLinenumber: 1009
    functionLinenumberEnd: 1018
    functionName: wgl_linkProgram
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_GLID
    - glLinkProgram
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_linkProgram(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1028,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1029,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1030,1
    - Dst: glPolygonOffset
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1031,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1033
      start: 1022
    functionDepth: 2
    functionLinenumber: 1022
    functionLinenumberEnd: 1033
    functionName: wgl_polygonOffset
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glPolygonOffset
    - WGL_GET_FLOAT
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_polygonOffset(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1045,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1046,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1047,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1048,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1049,1
    - Dst: glRenderbufferStorage
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1050,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1052
      start: 1037
    functionDepth: 2
    functionLinenumber: 1037
    functionLinenumberEnd: 1052
    functionName: wgl_renderbufferStorage
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - WGL_GET_U32
    - glRenderbufferStorage
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_renderbufferStorage(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1060,1
    - Dst: WGL_GET_FLOAT_CLAMP
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1061,1
    - Dst: WGL_GET_BOOL
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1062,1
    - Dst: glSampleCoverage
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1063,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1065
      start: 1054
    functionDepth: 2
    functionLinenumber: 1054
    functionLinenumberEnd: 1065
    functionName: wgl_sampleCoverage
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_FLOAT_CLAMP
    - glSampleCoverage
    - WGL_GET_BOOL
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_sampleCoverage(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1075,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1076,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1077,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1078,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1079,1
    - Dst: glScissor
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1080,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1082
      start: 1067
    functionDepth: 2
    functionLinenumber: 1067
    functionLinenumberEnd: 1082
    functionName: wgl_scissor
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_S32
    - js_throw_err
    - WGL_GET_U32
    - glScissor
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_scissor(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1093,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1094,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1095,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1096,1
    - Dst: glStencilFunc
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1097,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1099
      start: 1086
    functionDepth: 2
    functionLinenumber: 1086
    functionLinenumberEnd: 1099
    functionName: wgl_stencilFunc
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_S32
    - js_throw_err
    - WGL_GET_U32
    - glStencilFunc
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_stencilFunc(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1109,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1110,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1111,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1112,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1113,1
    - Dst: glStencilFuncSeparate
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1116
      start: 1101
    functionDepth: 2
    functionLinenumber: 1101
    functionLinenumberEnd: 1116
    functionName: wgl_stencilFuncSeparate
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glStencilFuncSeparate
    - WGL_GET_S32
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_stencilFuncSeparate(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1123,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1124,1
    - Dst: glStencilMask
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1127
      start: 1118
    functionDepth: 2
    functionLinenumber: 1118
    functionLinenumberEnd: 1127
    functionName: wgl_stencilMask
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glStencilMask
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_stencilMask(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1135,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1136,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1137,1
    - Dst: glStencilMaskSeparate
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1140
      start: 1129
    functionDepth: 2
    functionLinenumber: 1129
    functionLinenumberEnd: 1140
    functionName: wgl_stencilMaskSeparate
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - WGL_GET_U32
    - glStencilMaskSeparate
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_stencilMaskSeparate(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1149,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1150,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1151,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1152,1
    - Dst: glStencilOp
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1155
      start: 1142
    functionDepth: 2
    functionLinenumber: 1142
    functionLinenumberEnd: 1155
    functionName: wgl_stencilOp
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glStencilOp
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_stencilOp(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1165,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1166,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1167,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1168,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1169,1
    - Dst: glStencilOpSeparate
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1172
      start: 1157
    functionDepth: 2
    functionLinenumber: 1157
    functionLinenumberEnd: 1172
    functionName: wgl_stencilOpSeparate
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glStencilOpSeparate
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_stencilOpSeparate(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1183,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1184,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1185,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1186,1
    - Dst: glTexParameterf
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1189
      start: 1176
    functionDepth: 2
    functionLinenumber: 1176
    functionLinenumberEnd: 1189
    functionName: wgl_texParameterf
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_FLOAT
    - glTexParameterf
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_texParameterf(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1198,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1199,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1200,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1201,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1204
      start: 1191
    functionDepth: 2
    functionLinenumber: 1191
    functionLinenumberEnd: 1204
    functionName: wgl_texParameteri
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glTexParameteri
    - WGL_GET_S32
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_texParameteri(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1214,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1215,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1216,1
    - Dst: glUniform1f
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1219,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1221
      start: 1208
    functionDepth: 2
    functionLinenumber: 1208
    functionLinenumberEnd: 1221
    functionName: wgl_uniform1f
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_GLID
    - WGL_GET_FLOAT
    - js_throw_err
    - glUniform1f
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_uniform1f(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1230,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1231,1
    - Dst: WGL_LOAD_FLOAT_VEC
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1232,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1232,1
    - Dst: glUniform1fv
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1235,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1236,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1238
      start: 1223
    functionDepth: 2
    functionLinenumber: 1223
    functionLinenumberEnd: 1238
    functionName: wgl_uniform1fv
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - gf_free
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    - glUniform1fv
    - WGL_GET_GLID
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_uniform1fv(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1246,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1247,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1248,1
    - Dst: glUniform1i
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1251,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1253
      start: 1240
    functionDepth: 2
    functionLinenumber: 1240
    functionLinenumberEnd: 1253
    functionName: wgl_uniform1i
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glUniform1i
    - WGL_GET_GLID
    - WGL_GET_S32
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_uniform1i(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1262,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1263,1
    - Dst: WGL_LOAD_INT32_VEC
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1264,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1264,1
    - Dst: glUniform1iv
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1267,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1268,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1270
      start: 1255
    functionDepth: 2
    functionLinenumber: 1255
    functionLinenumberEnd: 1270
    functionName: wgl_uniform1iv
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - gf_free
    - js_throw_err
    - WGL_LOAD_INT32_VEC
    - glUniform1iv
    - WGL_GET_GLID
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_uniform1iv(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1279,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1280,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1281,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1282,1
    - Dst: glUniform2f
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1285,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1287
      start: 1272
    functionDepth: 2
    functionLinenumber: 1272
    functionLinenumberEnd: 1287
    functionName: wgl_uniform2f
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_GLID
    - glUniform2f
    - WGL_GET_FLOAT
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_uniform2f(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1296,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1297,1
    - Dst: WGL_LOAD_FLOAT_VEC
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1298,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1298,1
    - Dst: glUniform2fv
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1301,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1302,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1304
      start: 1289
    functionDepth: 2
    functionLinenumber: 1289
    functionLinenumberEnd: 1304
    functionName: wgl_uniform2fv
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - gf_free
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    - glUniform2fv
    - WGL_GET_GLID
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_uniform2fv(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1313,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1314,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1315,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1316,1
    - Dst: glUniform2i
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1319,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1321
      start: 1306
    functionDepth: 2
    functionLinenumber: 1306
    functionLinenumberEnd: 1321
    functionName: wgl_uniform2i
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_GLID
    - WGL_GET_S32
    - js_throw_err
    - glUniform2i
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_uniform2i(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1330,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1331,1
    - Dst: WGL_LOAD_INT32_VEC
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1332,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1332,1
    - Dst: glUniform2iv
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1335,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1336,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1338
      start: 1323
    functionDepth: 2
    functionLinenumber: 1323
    functionLinenumberEnd: 1338
    functionName: wgl_uniform2iv
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - gf_free
    - js_throw_err
    - WGL_LOAD_INT32_VEC
    - glUniform2iv
    - WGL_GET_GLID
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_uniform2iv(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1348,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1349,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1350,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1351,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1352,1
    - Dst: glUniform3f
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1355,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1357
      start: 1340
    functionDepth: 2
    functionLinenumber: 1340
    functionLinenumberEnd: 1357
    functionName: wgl_uniform3f
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glUniform3f
    - WGL_GET_GLID
    - WGL_GET_FLOAT
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_uniform3f(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1366,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1367,1
    - Dst: WGL_LOAD_FLOAT_VEC
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1368,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1368,1
    - Dst: glUniform3fv
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1371,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1372,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1374
      start: 1359
    functionDepth: 2
    functionLinenumber: 1359
    functionLinenumberEnd: 1374
    functionName: wgl_uniform3fv
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - gf_free
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    - WGL_GET_GLID
    - glUniform3fv
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_uniform3fv(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1384,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1385,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1386,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1387,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1388,1
    - Dst: glUniform3i
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1391,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1393
      start: 1376
    functionDepth: 2
    functionLinenumber: 1376
    functionLinenumberEnd: 1393
    functionName: wgl_uniform3i
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_GLID
    - glUniform3i
    - WGL_GET_S32
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_uniform3i(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1402,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1403,1
    - Dst: WGL_LOAD_INT32_VEC
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1404,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1404,1
    - Dst: glUniform3iv
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1407,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1408,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1410
      start: 1395
    functionDepth: 2
    functionLinenumber: 1395
    functionLinenumberEnd: 1410
    functionName: wgl_uniform3iv
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - gf_free
    - js_throw_err
    - glUniform3iv
    - WGL_LOAD_INT32_VEC
    - WGL_GET_GLID
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_uniform3iv(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1421,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1422,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1423,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1424,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1425,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1426,1
    - Dst: glUniform4f
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1429,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1431
      start: 1412
    functionDepth: 2
    functionLinenumber: 1412
    functionLinenumberEnd: 1431
    functionName: wgl_uniform4f
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_GLID
    - WGL_GET_FLOAT
    - js_throw_err
    - glUniform4f
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_uniform4f(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1440,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1441,1
    - Dst: WGL_LOAD_FLOAT_VEC
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1442,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1442,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1445,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1446,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1448
      start: 1433
    functionDepth: 2
    functionLinenumber: 1433
    functionLinenumberEnd: 1448
    functionName: wgl_uniform4fv
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - gf_free
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    - WGL_GET_GLID
    - glUniform4fv
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_uniform4fv(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1459,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1460,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1461,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1462,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1463,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1464,1
    - Dst: glUniform4i
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1467,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1469
      start: 1450
    functionDepth: 2
    functionLinenumber: 1450
    functionLinenumberEnd: 1469
    functionName: wgl_uniform4i
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_GLID
    - WGL_GET_S32
    - js_throw_err
    - glUniform4i
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_uniform4i(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1478,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1479,1
    - Dst: WGL_LOAD_INT32_VEC
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1480,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1480,1
    - Dst: glUniform4iv
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1483,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1484,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1486
      start: 1471
    functionDepth: 2
    functionLinenumber: 1471
    functionLinenumberEnd: 1486
    functionName: wgl_uniform4iv
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - gf_free
    - js_throw_err
    - WGL_LOAD_INT32_VEC
    - WGL_GET_GLID
    - glUniform4iv
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_uniform4iv(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1496,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1497,1
    - Dst: WGL_GET_BOOL
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1498,1
    - Dst: WGL_LOAD_FLOAT_VEC
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1499,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1499,1
    - Dst: glUniformMatrix2fv
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1502,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1503,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1505
      start: 1488
    functionDepth: 2
    functionLinenumber: 1488
    functionLinenumberEnd: 1505
    functionName: wgl_uniformMatrix2fv
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - gf_free
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    - glUniformMatrix2fv
    - WGL_GET_BOOL
    - WGL_GET_GLID
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_uniformMatrix2fv(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1515,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1516,1
    - Dst: WGL_GET_BOOL
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1517,1
    - Dst: WGL_LOAD_FLOAT_VEC
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1518,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1518,1
    - Dst: glUniformMatrix3fv
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1521,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1522,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1524
      start: 1507
    functionDepth: 2
    functionLinenumber: 1507
    functionLinenumberEnd: 1524
    functionName: wgl_uniformMatrix3fv
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - gf_free
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    - WGL_GET_BOOL
    - glUniformMatrix3fv
    - WGL_GET_GLID
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_uniformMatrix3fv(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1534,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1535,1
    - Dst: WGL_GET_BOOL
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1536,1
    - Dst: WGL_LOAD_FLOAT_VEC
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1537,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1537,1
    - Dst: glUniformMatrix4fv
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1540,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1541,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1543
      start: 1526
    functionDepth: 2
    functionLinenumber: 1526
    functionLinenumberEnd: 1543
    functionName: wgl_uniformMatrix4fv
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - gf_free
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    - glUniformMatrix4fv
    - WGL_GET_BOOL
    - WGL_GET_GLID
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_uniformMatrix4fv(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1552,1
    - Dst: WGL_GET_GLID
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1553,1
    - Dst: glValidateProgram
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1554,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1556
      start: 1547
    functionDepth: 2
    functionLinenumber: 1547
    functionLinenumberEnd: 1556
    functionName: wgl_validateProgram
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_GLID
    - glValidateProgram
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_validateProgram(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1564,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1565,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1566,1
    - Dst: glVertexAttrib1f
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1567,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1569
      start: 1558
    functionDepth: 2
    functionLinenumber: 1558
    functionLinenumberEnd: 1569
    functionName: wgl_vertexAttrib1f
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glVertexAttrib1f
    - WGL_GET_FLOAT
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_vertexAttrib1f(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1577,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1578,1
    - Dst: WGL_LOAD_FLOAT_VEC
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1579,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1579,1
    - Dst: glVertexAttrib1fv
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1580,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1582
      start: 1571
    functionDepth: 2
    functionLinenumber: 1571
    functionLinenumberEnd: 1582
    functionName: wgl_vertexAttrib1fv
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glVertexAttrib1fv
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_vertexAttrib1fv(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1591,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1592,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1593,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1594,1
    - Dst: glVertexAttrib2f
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1595,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1597
      start: 1584
    functionDepth: 2
    functionLinenumber: 1584
    functionLinenumberEnd: 1597
    functionName: wgl_vertexAttrib2f
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glVertexAttrib2f
    - WGL_GET_FLOAT
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_vertexAttrib2f(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1605,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1606,1
    - Dst: WGL_LOAD_FLOAT_VEC
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1607,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1607,1
    - Dst: glVertexAttrib2fv
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1608,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1610
      start: 1599
    functionDepth: 2
    functionLinenumber: 1599
    functionLinenumberEnd: 1610
    functionName: wgl_vertexAttrib2fv
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glVertexAttrib2fv
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_vertexAttrib2fv(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1620,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1621,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1622,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1623,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1624,1
    - Dst: glVertexAttrib3f
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1625,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1627
      start: 1612
    functionDepth: 2
    functionLinenumber: 1612
    functionLinenumberEnd: 1627
    functionName: wgl_vertexAttrib3f
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glVertexAttrib3f
    - WGL_GET_FLOAT
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_vertexAttrib3f(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1635,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1636,1
    - Dst: WGL_LOAD_FLOAT_VEC
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1637,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1637,1
    - Dst: glVertexAttrib3fv
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1638,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1640
      start: 1629
    functionDepth: 2
    functionLinenumber: 1629
    functionLinenumberEnd: 1640
    functionName: wgl_vertexAttrib3fv
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    - WGL_GET_U32
    - glVertexAttrib3fv
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_vertexAttrib3fv(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1651,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1652,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1653,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1654,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1655,1
    - Dst: WGL_GET_FLOAT
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1656,1
    - Dst: glVertexAttrib4f
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1657,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1659
      start: 1642
    functionDepth: 2
    functionLinenumber: 1642
    functionLinenumberEnd: 1659
    functionName: wgl_vertexAttrib4f
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_FLOAT
    - glVertexAttrib4f
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_vertexAttrib4f(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1667,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1668,1
    - Dst: WGL_LOAD_FLOAT_VEC
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1669,1
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1669,1
    - Dst: glVertexAttrib4fv
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1670,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1672
      start: 1661
    functionDepth: 2
    functionLinenumber: 1661
    functionLinenumberEnd: 1672
    functionName: wgl_vertexAttrib4fv
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - glVertexAttrib4fv
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_vertexAttrib4fv(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1684,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1685,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1686,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1687,1
    - Dst: WGL_GET_BOOL
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1688,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1689,1
    - Dst: WGL_GET_U64
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1690,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1692,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1694,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1697
      start: 1674
    functionDepth: 2
    functionLinenumber: 1674
    functionLinenumberEnd: 1697
    functionName: wgl_vertexAttribPointer
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - WGL_GET_BOOL
    - WGL_GET_U32
    - WGL_GET_S32
    - glVertexAttribPointer
    - WGL_GET_U64
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_vertexAttribPointer(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_throw_err
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1707,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1708,1
    - Dst: WGL_GET_S32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1709,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1710,1
    - Dst: WGL_GET_U32
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1711,1
    - Dst: glViewport
      Src: /src/gpac/src/jsmods/WebGLRenderingContextBase.c:1712,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1714
      start: 1699
    functionDepth: 2
    functionLinenumber: 1699
    functionLinenumberEnd: 1714
    functionName: wgl_viewport
    functionSourceFile: /src/gpac/src/jsmods/WebGLRenderingContextBase.c
    functionUses: 0
    functionsReached:
    - WGL_GET_S32
    - glViewport
    - js_throw_err
    - WGL_GET_U32
    linkageType: ''
    returnType: JSValue
    signature: JSValue wgl_viewport(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _jsval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 142
    functionName: WGL_GET_BOOL
    functionSourceFile: /src/gpac/src/jsmods/webgl.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WGL_GET_BOOL(_name, _jsval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _jsval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 143
    functionName: WGL_GET_U32
    functionSourceFile: /src/gpac/src/jsmods/webgl.h
    functionUses: 71
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WGL_GET_U32(_name, _jsval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _jsval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 144
    functionName: WGL_GET_S32
    functionSourceFile: /src/gpac/src/jsmods/webgl.h
    functionUses: 22
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WGL_GET_S32(_name, _jsval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _jsval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 145
    functionName: WGL_GET_U64
    functionSourceFile: /src/gpac/src/jsmods/webgl.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WGL_GET_U64(_name, _jsval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _jsval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 146
    functionName: WGL_GET_S64
    functionSourceFile: /src/gpac/src/jsmods/webgl.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WGL_GET_S64(_name, _jsval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _jsval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 147
    functionName: WGL_GET_S16
    functionSourceFile: /src/gpac/src/jsmods/webgl.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WGL_GET_S16(_name, _jsval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _jsval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 148
    functionName: WGL_GET_U16
    functionSourceFile: /src/gpac/src/jsmods/webgl.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WGL_GET_U16(_name, _jsval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _jsval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 149
    functionName: WGL_GET_FLOAT
    functionSourceFile: /src/gpac/src/jsmods/webgl.h
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WGL_GET_FLOAT(_name, _jsval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _jsval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 150
    functionName: WGL_GET_FLOAT_CLAMP
    functionSourceFile: /src/gpac/src/jsmods/webgl.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WGL_GET_FLOAT_CLAMP(_name, _jsval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _name
    - ','
    - _jsval
    - ','
    - _class_id
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 161
    functionName: WGL_GET_GLID
    functionSourceFile: /src/gpac/src/jsmods/webgl.h
    functionUses: 53
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WGL_GET_GLID(_name, _jsval, _class_id)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _jsval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 163
    functionName: WGL_GET_STRING
    functionSourceFile: /src/gpac/src/jsmods/webgl.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WGL_GET_STRING(_name, _jsval)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp.c:33,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp.c:34,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/in_rtp.c:35,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/in_rtp.c:36,1
    - Dst: rtpin_stream_del
      Src: /src/gpac/src/filters/in_rtp.c:37,1
    - Dst: rtpin_rtsp_del
      Src: /src/gpac/src/filters/in_rtp.c:40,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/in_rtp.c:43,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - is_finalized
    argTypes:
    - GF_RTPIn*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 31
    functionDepth: 2
    functionLinenumber: 31
    functionLinenumberEnd: 45
    functionName: rtpin_reset
    functionSourceFile: /src/gpac/src/filters/in_rtp.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_remove
    - gf_odf_desc_del
    - gf_list_count
    - rtpin_stream_del
    - rtpin_rtsp_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void rtpin_reset(GF_RTPIn *ctx, Bool is_finalized)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp.c:50,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp.c:51,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp.c:52,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp.c:58,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp.c:59,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp.c:60,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp.c:61,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp.c:62,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp.c:63,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 8
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 69
    functionName: rtpin_probe_url
    functionSourceFile: /src/gpac/src/filters/in_rtp.c
    functionUses: 0
    functionsReached:
    - strnicmp
    - strstr
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore rtpin_probe_url(const char *url, const char *mime)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/filters/in_rtp.c:79,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp.c:83,1
    - Dst: MIN
      Src: /src/gpac/src/filters/in_rtp.c:92,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/in_rtp.c:92,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/in_rtp.c:93,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp.c:94,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp.c:97,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/in_rtp.c:101,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_rtp.c:103,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp.c:105,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp.c:108,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/in_rtp.c:108,1
    - Dst: MIN
      Src: /src/gpac/src/filters/in_rtp.c:113,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/in_rtp.c:113,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp.c:117,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/in_rtp.c:119,1
    - Dst: MIN
      Src: /src/gpac/src/filters/in_rtp.c:126,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/in_rtp.c:126,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/in_rtp.c:127,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 51
    argCount: 2
    argNames:
    - sURL
    - Server
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 128
    functionName: rtpin_satip_get_server_ip
    functionSourceFile: /src/gpac/src/filters/in_rtp.c
    functionUses: 0
    functionsReached:
    - strrchr
    - GF_LOG
    - strcpy
    - strlen
    - MIN
    - strstr
    - stricmp
    - strchr
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: void
    signature: void rtpin_satip_get_server_ip(const char *sURL, char *Server)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_rtp.c:135,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp.c:138,1
    - Dst: rtpin_reset
      Src: /src/gpac/src/filters/in_rtp.c:145,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/in_rtp.c:149,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/in_rtp.c:153,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/in_rtp.c:155,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp.c:155,1
    - Dst: rtpin_reset
      Src: /src/gpac/src/filters/in_rtp.c:166,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/in_rtp.c:168,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 131
    functionDepth: 3
    functionLinenumber: 131
    functionLinenumberEnd: 172
    functionName: rtpin_configure_pid
    functionSourceFile: /src/gpac/src/filters/in_rtp.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - rtpin_reset
    - GF_LOG
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_check_caps
    - gf_crc_32
    - strlen
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpin_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp.c:180,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp.c:184,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp.c:195,1
    - Dst: rtpin_stream_init
      Src: /src/gpac/src/filters/in_rtp.c:198,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp.c:211,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/filters/in_rtp.c:215,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/filters/in_rtp.c:217,1
    - Dst: gf_rtp_stop
      Src: /src/gpac/src/filters/in_rtp.c:219,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_rtp.c:223,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp.c:229,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 47
    argCount: 2
    argNames:
    - rtp
    - switch_up
    argTypes:
    - GF_RTPIn*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 175
    functionDepth: 2
    functionLinenumber: 175
    functionLinenumberEnd: 231
    functionName: gf_rtp_switch_quality
    functionSourceFile: /src/gpac/src/filters/in_rtp.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_sk_group_unregister
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_list_count
    - rtpin_stream_init
    - gf_rtp_stop
    linkageType: ''
    returnType: void
    signature: void gf_rtp_switch_quality(GF_RTPIn *rtp, Bool switch_up)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp.c:244,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp.c:248,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/filters/in_rtp.c:250,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp.c:250,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/in_rtp.c:252,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/in_rtp.c:254,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/in_rtp.c:255,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/in_rtp.c:256,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_rtp.c:257,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - stream
    argTypes:
    - GF_RTPInStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 235
    functionDepth: 2
    functionLinenumber: 235
    functionLinenumberEnd: 261
    functionName: rtpin_send_data_base64
    functionSourceFile: /src/gpac/src/filters/in_rtp.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_set_cts
    - memcpy
    - gf_base64_decode
    - strstr
    - gf_filter_pck_set_sap
    - strlen
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void rtpin_send_data_base64(GF_RTPInStream *stream)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: rtpin_stream_ack_connect
      Src: /src/gpac/src/filters/in_rtp.c:270,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_rtp.c:278,1
    - Dst: rtpin_stream_setup
      Src: /src/gpac/src/filters/in_rtp.c:280,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - stream
    argTypes:
    - GF_RTPInStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 264
    functionDepth: 1
    functionLinenumber: 264
    functionLinenumberEnd: 281
    functionName: rtpin_check_setup
    functionSourceFile: /src/gpac/src/filters/in_rtp.c
    functionUses: 0
    functionsReached:
    - memset
    - rtpin_stream_setup
    - rtpin_stream_ack_connect
    linkageType: ''
    returnType: void
    signature: void rtpin_check_setup(GF_RTPInStream *stream)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_rtp.c:286,1
    - Dst: gf_rtp_switch_quality
      Src: /src/gpac/src/filters/in_rtp.c:291,1
    - Dst: rtpin_find_stream
      Src: /src/gpac/src/filters/in_rtp.c:300,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp.c:315,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/filters/in_rtp.c:323,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/filters/in_rtp.c:325,1
    - Dst: rtpin_check_setup
      Src: /src/gpac/src/filters/in_rtp.c:330,1
    - Dst: rtpin_rtsp_usercom_send
      Src: /src/gpac/src/filters/in_rtp.c:334,1
    - Dst: rtpin_stream_init
      Src: /src/gpac/src/filters/in_rtp.c:356,1
    - Dst: gf_rtp_set_info_rtp
      Src: /src/gpac/src/filters/in_rtp.c:357,1
    - Dst: gf_rtp_depacketizer_reset
      Src: /src/gpac/src/filters/in_rtp.c:362,1
    - Dst: gf_rtp_read_flush
      Src: /src/gpac/src/filters/in_rtp.c:369,1
    - Dst: rtpin_stream_on_rtp_pck
      Src: /src/gpac/src/filters/in_rtp.c:371,1
    - Dst: rtpin_rtsp_usercom_send
      Src: /src/gpac/src/filters/in_rtp.c:377,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/filters/in_rtp.c:391,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/filters/in_rtp.c:393,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp.c:396,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/in_rtp.c:397,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_rtp.c:398,1
    - Dst: rtpin_rtsp_usercom_send
      Src: /src/gpac/src/filters/in_rtp.c:407,1
    - Dst: rtpin_rtsp_process_commands
      Src: /src/gpac/src/filters/in_rtp.c:420,1
    - Dst: rtpin_stream_reset_queue
      Src: /src/gpac/src/filters/in_rtp.c:423,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 110
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 427
      start: 283
    functionDepth: 3
    functionLinenumber: 283
    functionLinenumberEnd: 427
    functionName: rtpin_process_event
    functionSourceFile: /src/gpac/src/filters/in_rtp.c
    functionUses: 0
    functionsReached:
    - rtpin_stream_on_rtp_pck
    - gf_rtp_switch_quality
    - rtpin_stream_reset_queue
    - gf_rtp_set_info_rtp
    - rtpin_find_stream
    - gf_sk_group_register
    - gf_list_pop_front
    - GF_LOG
    - gf_rtp_read_flush
    - gf_sk_group_unregister
    - gf_filter_pck_send
    - rtpin_rtsp_process_commands
    - rtpin_rtsp_usercom_send
    - gf_list_count
    - rtpin_stream_init
    - gf_rtp_depacketizer_reset
    - rtpin_check_setup
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool rtpin_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp.c:433,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/in_rtp.c:437,1
    - Dst: gf_rtsp_command_del
      Src: /src/gpac/src/filters/in_rtp.c:439,1
    - Dst: rtpin_rtsp_process_commands
      Src: /src/gpac/src/filters/in_rtp.c:442,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - session
    - reset_only
    argTypes:
    - GF_RTPInRTSP*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 429
    functionDepth: 3
    functionLinenumber: 429
    functionLinenumberEnd: 445
    functionName: rtpin_rtsp_flush
    functionSourceFile: /src/gpac/src/filters/in_rtp.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_pop_back
    - rtpin_rtsp_process_commands
    - gf_rtsp_command_del
    linkageType: ''
    returnType: void
    signature: void rtpin_rtsp_flush(GF_RTPInRTSP *session, Bool reset_only)
  - BBCount: 56
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_rtp.c:451,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/in_rtp.c:461,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/in_rtp.c:467,1
    - Dst: rtpin_load_sdp
      Src: /src/gpac/src/filters/in_rtp.c:468,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/in_rtp.c:469,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/in_rtp.c:473,1
    - Dst: gf_filter_get_num_events_queued
      Src: /src/gpac/src/filters/in_rtp.c:478,1
    - Dst: rtpin_rtsp_usercom_send
      Src: /src/gpac/src/filters/in_rtp.c:483,1
    - Dst: gf_rtsp_check_connection
      Src: /src/gpac/src/filters/in_rtp.c:487,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/in_rtp.c:489,1
    - Dst: gf_rtsp_session_reset
      Src: /src/gpac/src/filters/in_rtp.c:494,1
    - Dst: gf_rtsp_session_needs_ssl
      Src: /src/gpac/src/filters/in_rtp.c:496,1
    - Dst: gf_rtsp_set_ssl_ctx
      Src: /src/gpac/src/filters/in_rtp.c:497,1
    - Dst: gf_dm_ssl_init
      Src: /src/gpac/src/filters/in_rtp.c:497,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_rtp.c:507,1
    - Dst: gf_rtsp_session_del
      Src: /src/gpac/src/filters/in_rtp.c:508,1
    - Dst: gf_rtsp_get_user
      Src: /src/gpac/src/filters/in_rtp.c:516,1
    - Dst: gf_rtsp_get_server_name
      Src: /src/gpac/src/filters/in_rtp.c:519,1
    - Dst: gf_rtsp_get_password
      Src: /src/gpac/src/filters/in_rtp.c:520,1
    - Dst: gf_rtsp_use_tls
      Src: /src/gpac/src/filters/in_rtp.c:521,1
    - Dst: gf_user_credentials_register
      Src: /src/gpac/src/filters/in_rtp.c:522,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_rtp.c:524,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_rtp.c:536,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_rtp.c:539,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_rtp.c:540,1
    - Dst: rtpin_check_setup
      Src: /src/gpac/src/filters/in_rtp.c:548,1
    - Dst: rtpin_rtsp_usercom_send
      Src: /src/gpac/src/filters/in_rtp.c:557,1
    - Dst: rtpin_rtsp_describe_send
      Src: /src/gpac/src/filters/in_rtp.c:560,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_rtp.c:573,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/in_rtp.c:581,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_rtp.c:583,1
    - Dst: rtpin_rtsp_flush
      Src: /src/gpac/src/filters/in_rtp.c:587,1
    - Dst: rtpin_rtsp_teardown
      Src: /src/gpac/src/filters/in_rtp.c:589,1
    - Dst: rtpin_rtsp_flush
      Src: /src/gpac/src/filters/in_rtp.c:590,1
    - Dst: gf_rtsp_session_reset
      Src: /src/gpac/src/filters/in_rtp.c:592,1
    - Dst: gf_rtsp_check_connection
      Src: /src/gpac/src/filters/in_rtp.c:595,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/in_rtp.c:597,1
    - Dst: gf_rtsp_set_buffer_size
      Src: /src/gpac/src/filters/in_rtp.c:607,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp.c:610,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp.c:611,1
    - Dst: gf_rtp_reset_ssrc
      Src: /src/gpac/src/filters/in_rtp.c:620,1
    - Dst: rtpin_check_setup
      Src: /src/gpac/src/filters/in_rtp.c:623,1
    - Dst: rtpin_rtsp_flush
      Src: /src/gpac/src/filters/in_rtp.c:624,1
    - Dst: rtpin_rtsp_usercom_send
      Src: /src/gpac/src/filters/in_rtp.c:629,1
    - Dst: rtpin_rtsp_flush
      Src: /src/gpac/src/filters/in_rtp.c:632,1
    - Dst: rtpin_rtsp_usercom_send
      Src: /src/gpac/src/filters/in_rtp.c:636,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/in_rtp.c:639,1
    - Dst: gf_sk_group_select
      Src: /src/gpac/src/filters/in_rtp.c:650,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp.c:654,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp.c:656,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp.c:658,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/in_rtp.c:666,1
    - Dst: rtpin_stream_read
      Src: /src/gpac/src/filters/in_rtp.c:669,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp.c:674,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp.c:687,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/in_rtp.c:690,1
    - Dst: gf_rtp_flush_rtp
      Src: /src/gpac/src/filters/in_rtp.c:702,1
    - Dst: rtpin_stream_on_rtp_pck
      Src: /src/gpac/src/filters/in_rtp.c:704,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp.c:707,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp.c:709,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/in_rtp.c:710,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_rtp.c:711,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_rtp.c:714,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp.c:718,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/in_rtp.c:724,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_rtp.c:726,1
    - Dst: rtpin_rtsp_teardown
      Src: /src/gpac/src/filters/in_rtp.c:733,1
    - Dst: rtpin_rtsp_flush
      Src: /src/gpac/src/filters/in_rtp.c:734,1
    - Dst: rtpin_rtsp_process_commands
      Src: /src/gpac/src/filters/in_rtp.c:744,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_rtp.c:747,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/in_rtp.c:754,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_rtp.c:759,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_rtp.c:761,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_rtp.c:766,1
    CyclomaticComplexity: 75
    EdgeCount: 75
    ICount: 235
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 769
      start: 447
    functionDepth: 6
    functionLinenumber: 447
    functionLinenumberEnd: 769
    functionName: rtpin_process
    functionSourceFile: /src/gpac/src/filters/in_rtp.c
    functionUses: 0
    functionsReached:
    - rtpin_rtsp_describe_send
    - rtpin_rtsp_flush
    - rtpin_stream_read
    - gf_rtsp_check_connection
    - gf_rtsp_session_needs_ssl
    - gf_list_count
    - gf_rtsp_session_reset
    - gf_rtp_reset_ssrc
    - gf_filter_pid_get_packet
    - gf_filter_post_process_task
    - gf_sys_clock
    - gf_list_new
    - gf_list_get
    - gf_rtsp_set_ssl_ctx
    - rtpin_rtsp_process_commands
    - gf_list_add
    - rtpin_check_setup
    - gf_dynstrcat
    - gf_filter_get_num_events_queued
    - gf_filter_ask_rt_reschedule
    - gf_user_credentials_register
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - rtpin_rtsp_teardown
    - gf_sk_group_select
    - rtpin_rtsp_usercom_send
    - gf_rtsp_use_tls
    - gf_filter_pid_set_eos
    - gf_rtsp_get_server_name
    - gf_dm_ssl_init
    - gf_rtsp_set_buffer_size
    - gf_filter_setup_failure
    - gf_list_enum
    - gf_list_del
    - rtpin_stream_on_rtp_pck
    - gf_rtsp_get_password
    - gf_rtsp_get_user
    - gf_list_pop_front
    - gf_rtp_flush_rtp
    - gf_rtsp_session_del
    - rtpin_load_sdp
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpin_process(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_RTPIn*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 775
      start: 771
    functionDepth: 0
    functionLinenumber: 771
    functionLinenumberEnd: 775
    functionName: rtpin_do_authenticate
    functionSourceFile: /src/gpac/src/filters/in_rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void rtpin_do_authenticate(GF_RTPIn *ctx)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_rtp.c:779,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_rtp.c:782,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp.c:788,1
    - Dst: gf_sk_group_new
      Src: /src/gpac/src/filters/in_rtp.c:794,1
    - Dst: gf_filter_prevent_blocking
      Src: /src/gpac/src/filters/in_rtp.c:796,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/in_rtp.c:803,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/in_rtp.c:805,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/in_rtp.c:806,1
    - Dst: gf_filter_disable_inputs
      Src: /src/gpac/src/filters/in_rtp.c:809,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp.c:811,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_rtp.c:816,1
    - Dst: atoi
      Src: /src/gpac/src/filters/in_rtp.c:818,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp.c:820,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp.c:823,1
    - Dst: rtpin_stream_new_standalone
      Src: /src/gpac/src/filters/in_rtp.c:825,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp.c:826,1
    - Dst: rtpin_add_stream
      Src: /src/gpac/src/filters/in_rtp.c:831,1
    - Dst: rtpin_stream_init
      Src: /src/gpac/src/filters/in_rtp.c:834,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp.c:837,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/in_rtp.c:837,1
    - Dst: rtpin_rtsp_new
      Src: /src/gpac/src/filters/in_rtp.c:843,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp.c:847,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/in_rtp.c:849,1
    - Dst: rtpin_satip_get_server_ip
      Src: /src/gpac/src/filters/in_rtp.c:850,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/in_rtp.c:853,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp.c:854,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp.c:855,1
    - Dst: gf_rtsp_get_session_port
      Src: /src/gpac/src/filters/in_rtp.c:856,1
    - Dst: gf_rtsp_get_session_port
      Src: /src/gpac/src/filters/in_rtp.c:856,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/in_rtp.c:862,1
    - Dst: gf_rtsp_session_needs_ssl
      Src: /src/gpac/src/filters/in_rtp.c:863,1
    - Dst: gf_rtsp_set_ssl_ctx
      Src: /src/gpac/src/filters/in_rtp.c:866,1
    - Dst: gf_dm_ssl_init
      Src: /src/gpac/src/filters/in_rtp.c:866,1
    - Dst: gf_rtsp_get_user
      Src: /src/gpac/src/filters/in_rtp.c:873,1
    - Dst: rtpin_rtsp_describe_send
      Src: /src/gpac/src/filters/in_rtp.c:879,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 69
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 881
      start: 777
    functionDepth: 3
    functionLinenumber: 777
    functionLinenumberEnd: 881
    functionName: rtpin_initialize
    functionSourceFile: /src/gpac/src/filters/in_rtp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - rtpin_rtsp_describe_send
    - gf_rtsp_session_needs_ssl
    - rtpin_stream_init
    - atoi
    - strchr
    - gf_sys_is_cov_mode
    - gf_list_new
    - gf_strdup
    - strrchr
    - gf_rtsp_set_ssl_ctx
    - gf_sk_group_new
    - stricmp
    - gf_filter_get_udta
    - gf_rtsp_get_session_port
    - GF_LOG
    - strnicmp
    - gf_filter_disable_inputs
    - rtpin_rtsp_new
    - gf_error_to_string
    - gf_dm_ssl_init
    - gf_malloc
    - gf_filter_get_download_manager
    - rtpin_add_stream
    - gf_rtsp_get_user
    - rtpin_stream_new_standalone
    - rtpin_satip_get_server_ip
    - gf_filter_prevent_blocking
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpin_initialize(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_rtp.c:886,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp.c:889,1
    - Dst: rtpin_rtsp_flush
      Src: /src/gpac/src/filters/in_rtp.c:890,1
    - Dst: rtpin_rtsp_teardown
      Src: /src/gpac/src/filters/in_rtp.c:893,1
    - Dst: rtpin_rtsp_flush
      Src: /src/gpac/src/filters/in_rtp.c:894,1
    - Dst: rtpin_reset
      Src: /src/gpac/src/filters/in_rtp.c:898,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/in_rtp.c:899,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp.c:900,1
    - Dst: gf_sk_group_del
      Src: /src/gpac/src/filters/in_rtp.c:902,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 903
      start: 884
    functionDepth: 4
    functionLinenumber: 884
    functionLinenumberEnd: 903
    functionName: rtpin_finalize
    functionSourceFile: /src/gpac/src/filters/in_rtp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - rtpin_rtsp_flush
    - rtpin_reset
    - GF_LOG
    - rtpin_rtsp_teardown
    - gf_sk_group_del
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void rtpin_finalize(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp.c:911,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp.c:912,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp.c:913,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp.c:914,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 921
      start: 905
    functionDepth: 0
    functionLinenumber: 905
    functionLinenumberEnd: 921
    functionName: rtpin_probe_data
    functionSourceFile: /src/gpac/src/filters/in_rtp.c
    functionUses: 0
    functionsReached:
    - strstr
    linkageType: ''
    returnType: char
    signature: char *rtpin_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 942
      start: 941
    functionDepth: 0
    functionLinenumber: 941
    functionLinenumberEnd: 942
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/in_rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/in_rtp.c:1017,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/in_rtp.c:1018,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1024
      start: 1014
    functionDepth: 6
    functionLinenumber: 1014
    functionLinenumberEnd: 1024
    functionName: rtpin_register
    functionSourceFile: /src/gpac/src/filters/in_rtp.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    - gf_opts_set_key
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rtpin_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 70
    functionName: TILEAGG_CFG_ERR
    functionSourceFile: /src/gpac/src/filters/tileagg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TILEAGG_CFG_ERR(_msg)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/tileagg.c:79,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/tileagg.c:82,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/tileagg.c:85,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/tileagg.c:86,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/tileagg.c:90,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/tileagg.c:96,1
    - Dst: TILEAGG_CFG_ERR
      Src: /src/gpac/src/filters/tileagg.c:97,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/tileagg.c:104,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/tileagg.c:113,1
    - Dst: TILEAGG_CFG_ERR
      Src: /src/gpac/src/filters/tileagg.c:114,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/tileagg.c:124,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/tileagg.c:129,1
    - Dst: TILEAGG_CFG_ERR
      Src: /src/gpac/src/filters/tileagg.c:130,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/tileagg.c:140,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/tileagg.c:142,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/tileagg.c:143,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/tileagg.c:145,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/tileagg.c:151,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/tileagg.c:157,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tileagg.c:158,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tileagg.c:159,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/tileagg.c:162,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/tileagg.c:167,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/tileagg.c:169,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/tileagg.c:170,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/tileagg.c:171,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/tileagg.c:173,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/tileagg.c:175,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/tileagg.c:176,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/tileagg.c:181,1
    - Dst: TILEAGG_CFG_ERR
      Src: /src/gpac/src/filters/tileagg.c:182,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/tileagg.c:188,1
    - Dst: TILEAGG_CFG_ERR
      Src: /src/gpac/src/filters/tileagg.c:189,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/tileagg.c:192,1
    - Dst: TILEAGG_CFG_ERR
      Src: /src/gpac/src/filters/tileagg.c:193,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/tileagg.c:208,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/tileagg.c:213,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 114
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 72
    functionDepth: 3
    functionLinenumber: 72
    functionLinenumberEnd: 217
    functionName: tileagg_configure_pid
    functionSourceFile: /src/gpac/src/filters/tileagg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_vvc_cfg_del
    - GF_SAFEALLOC
    - gf_filter_pid_set_property_str
    - gf_filter_pid_set_udta
    - gf_filter_pid_new
    - TILEAGG_CFG_ERR
    - gf_odf_hevc_cfg_read
    - gf_list_add
    - gf_odf_vvc_cfg_read
    - gf_filter_get_udta
    - gf_filter_pid_get_property_str
    - gf_filter_pid_copy_properties
    - gf_filter_pid_set_eos
    - gf_list_del_item
    - gf_filter_pid_send_event
    - gf_filter_pid_set_property
    - gf_odf_hevc_cfg_del
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_filter_pid_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tileagg_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/tileagg.c:221,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/tileagg.c:223,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/tileagg.c:224,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/tileagg.c:227,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_TileAggCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 229
    functionName: tileagg_set_eos
    functionSourceFile: /src/gpac/src/filters/tileagg.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_eos
    - gf_filter_get_ipid
    - gf_filter_pid_set_discard
    - gf_filter_get_ipid_count
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tileagg_set_eos(GF_Filter *filter, GF_TileAggCtx *ctx)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/tileagg.c:234,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/src/filters/tileagg.c:252,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/tileagg.c:260,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/tileagg.c:263,1
    - Dst: tileagg_set_eos
      Src: /src/gpac/src/filters/tileagg.c:264,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/tileagg.c:268,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/tileagg.c:271,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/tileagg.c:274,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tileagg.c:280,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/tileagg.c:283,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/tileagg.c:286,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/tileagg.c:288,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/tileagg.c:294,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/tileagg.c:294,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/tileagg.c:294,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/tileagg.c:299,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/tileagg.c:300,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tileagg.c:303,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/tileagg.c:308,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/tileagg.c:311,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/tileagg.c:313,1
    - Dst: tileagg_set_eos
      Src: /src/gpac/src/filters/tileagg.c:314,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/tileagg.c:321,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/tileagg.c:324,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/tileagg.c:325,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/tileagg.c:328,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/tileagg.c:328,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/tileagg.c:328,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/tileagg.c:335,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/tileagg.c:337,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/tileagg.c:337,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/tileagg.c:338,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/tileagg.c:353,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/tileagg.c:357,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/tileagg.c:362,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/tileagg.c:368,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/tileagg.c:368,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/tileagg.c:372,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/tileagg.c:377,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/tileagg.c:378,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/tileagg.c:381,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/tileagg.c:385,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/tileagg.c:387,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/tileagg.c:388,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/tileagg.c:389,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/tileagg.c:390,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/tileagg.c:394,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/tileagg.c:412,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/tileagg.c:417,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/tileagg.c:421,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/tileagg.c:424,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/tileagg.c:425,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/tileagg.c:428,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/tileagg.c:438,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/tileagg.c:439,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/tileagg.c:443,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/tileagg.c:445,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/tileagg.c:446,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/tileagg.c:447,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/tileagg.c:448,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/tileagg.c:450,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/tileagg.c:457,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/filters/tileagg.c:460,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/tileagg.c:462,1
    CyclomaticComplexity: 71
    EdgeCount: 71
    ICount: 188
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 468
      start: 232
    functionDepth: 7
    functionLinenumber: 232
    functionLinenumberEnd: 468
    functionName: tileagg_process
    functionSourceFile: /src/gpac/src/filters/tileagg.c
    functionUses: 0
    functionsReached:
    - gf_filter_connections_pending
    - gf_list_count
    - gf_filter_pck_truncate
    - gf_filter_pid_get_packet
    - gf_sys_clock
    - gf_filter_pid_get_name
    - gf_list_get
    - memcpy
    - gf_filter_pck_get_cts
    - gf_filter_ask_rt_reschedule
    - gf_bs_skip_bytes
    - tileagg_set_eos
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - gf_filter_pck_merge_properties
    - gf_bs_read_int
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tileagg_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/tileagg.c:472,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/tileagg.c:473,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/tileagg.c:474,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 470
    functionDepth: 1
    functionLinenumber: 470
    functionLinenumberEnd: 476
    functionName: tileagg_initialize
    functionSourceFile: /src/gpac/src/filters/tileagg.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_bs_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tileagg_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/tileagg.c:480,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/tileagg.c:481,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tileagg.c:482,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/tileagg.c:483,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/tileagg.c:484,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/tileagg.c:486,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 478
    functionDepth: 3
    functionLinenumber: 478
    functionLinenumberEnd: 487
    functionName: tileagg_finalize
    functionSourceFile: /src/gpac/src/filters/tileagg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_bs_del
    - gf_list_count
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void tileagg_finalize(GF_Filter *filter)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/tileagg.c:491,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/tileagg.c:504,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/tileagg.c:506,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/tileagg.c:507,1
    - Dst: gf_filter_pid_get_buffer_occupancy
      Src: /src/gpac/src/filters/tileagg.c:516,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/tileagg.c:524,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 34
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 489
    functionDepth: 1
    functionLinenumber: 489
    functionLinenumberEnd: 533
    functionName: tileagg_process_event
    functionSourceFile: /src/gpac/src/filters/tileagg.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_discard
    - GF_LOG
    - gf_filter_get_udta
    - gf_filter_get_ipid
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_buffer_occupancy
    linkageType: ''
    returnType: Bool
    signature: Bool tileagg_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 566
    functionDepth: 0
    functionLinenumber: 566
    functionLinenumberEnd: 567
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/tileagg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 592
    functionDepth: 0
    functionLinenumber: 592
    functionLinenumberEnd: 595
    functionName: tileagg_register
    functionSourceFile: /src/gpac/src/filters/tileagg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *tileagg_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 600
      start: 597
    functionDepth: 0
    functionLinenumber: 597
    functionLinenumberEnd: 600
    functionName: tileagg_register
    functionSourceFile: /src/gpac/src/filters/tileagg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *tileagg_register(GF_FilterSession *session)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_amr.c:78,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/reframe_amr.c:83,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/reframe_amr.c:88,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_amr.c:92,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_amr.c:99,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_amr.c:111,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_amr.c:112,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_amr.c:113,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 117
    functionName: amrdmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/reframe_amr.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err amrdmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_amr.c:133,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_amr.c:134,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/reframe_amr.c:141,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/reframe_amr.c:143,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/reframe_amr.c:152,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:155,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/reframe_amr.c:156,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:159,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/reframe_amr.c:160,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:164,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/reframe_amr.c:165,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:168,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/reframe_amr.c:173,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:175,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:176,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/reframe_amr.c:183,1
    - Dst: gf_fgetc
      Src: /src/gpac/src/filters/reframe_amr.c:187,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/reframe_amr.c:210,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_amr.c:214,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/reframe_amr.c:221,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/reframe_amr.c:223,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/reframe_amr.c:224,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_amr.c:230,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_amr.c:230,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_amr.c:239,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_amr.c:241,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_amr.c:241,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 109
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_AMRDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 119
    functionDepth: 6
    functionLinenumber: 119
    functionLinenumberEnd: 242
    functionName: amrdmx_check_dur
    functionSourceFile: /src/gpac/src/filters/reframe_amr.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - PROP_BOOL
    - gf_feof
    - gf_filter_pid_get_property
    - gf_fseek
    - gf_fread
    - gf_realloc
    - gf_fileio_is_main_thread
    - PROP_FRAC64
    - strncmp
    - strnicmp
    - gf_fopen_ex
    - gf_fgetc
    - gf_filter_pid_set_property
    - gf_ftell
    linkageType: ''
    returnType: void
    signature: void amrdmx_check_dur(GF_Filter *filter, GF_AMRDmxCtx *ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_amr.c:249,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_amr.c:249,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_amr.c:254,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_amr.c:255,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_amr.c:255,1
    - Dst: amrdmx_check_dur
      Src: /src/gpac/src/filters/reframe_amr.c:257,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_amr.c:259,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_amr.c:259,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_amr.c:260,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_amr.c:260,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_amr.c:261,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_amr.c:261,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_amr.c:262,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_amr.c:262,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_amr.c:263,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_amr.c:263,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_amr.c:264,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_amr.c:264,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_amr.c:267,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_amr.c:267,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_amr.c:271,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_amr.c:271,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 3
    argNames:
    - filter
    - ctx
    - amr_mode_set
    argTypes:
    - GF_Filter*
    - GF_AMRDmxCtx*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 244
    functionDepth: 7
    functionLinenumber: 244
    functionLinenumberEnd: 273
    functionName: amrdmx_check_pid
    functionSourceFile: /src/gpac/src/filters/reframe_amr.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - PROP_UINT
    - amrdmx_check_dur
    linkageType: ''
    returnType: void
    signature: void amrdmx_check_pid(GF_Filter *filter, GF_AMRDmxCtx *ctx, u16 amr_mode_set)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_amr.c:279,1
    - Dst: amrdmx_check_dur
      Src: /src/gpac/src/filters/reframe_amr.c:291,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_amr.c:314,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_amr.c:318,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 47
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 275
    functionDepth: 7
    functionLinenumber: 275
    functionLinenumberEnd: 337
    functionName: amrdmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_amr.c
    functionUses: 0
    functionsReached:
    - amrdmx_check_dur
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool amrdmx_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_AMRDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 339
    functionDepth: 0
    functionLinenumber: 339
    functionLinenumberEnd: 349
    functionName: amrdmx_update_cts
    functionSourceFile: /src/gpac/src/filters/reframe_amr.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE amrdmx_update_cts(GF_AMRDmxCtx *ctx)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_amr.c:353,1
    - Dst: amrdmx_check_dur
      Src: /src/gpac/src/filters/reframe_amr.c:361,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_amr.c:366,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_amr.c:368,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_amr.c:370,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_amr.c:371,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_amr.c:377,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_amr.c:378,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_amr.c:393,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_amr.c:395,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_amr.c:397,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_amr.c:398,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_amr.c:399,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_amr.c:401,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_amr.c:403,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_amr.c:407,1
    - Dst: amrdmx_update_cts
      Src: /src/gpac/src/filters/reframe_amr.c:410,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_amr.c:417,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:423,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:427,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:431,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:435,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_amr.c:458,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_amr.c:491,1
    - Dst: amrdmx_check_pid
      Src: /src/gpac/src/filters/reframe_amr.c:497,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_amr.c:514,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_amr.c:517,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_amr.c:519,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_amr.c:520,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_amr.c:522,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_amr.c:522,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_amr.c:524,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_amr.c:527,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_amr.c:532,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_amr.c:535,1
    - Dst: amrdmx_update_cts
      Src: /src/gpac/src/filters/reframe_amr.c:542,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/reframe_amr.c:546,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_amr.c:551,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 155
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 554
      start: 351
    functionDepth: 8
    functionLinenumber: 351
    functionLinenumberEnd: 554
    functionName: amrdmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_amr.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_packet
    - gf_assert
    - gf_filter_pck_set_byte_offset
    - memcpy
    - gf_filter_pck_get_cts
    - gf_filter_get_udta
    - gf_filter_pck_new_alloc
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_filter_pid_would_block
    - gf_filter_pid_set_eos
    - amrdmx_check_pid
    - strnicmp
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - gf_timestamp_rescale
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_framing
    - amrdmx_update_cts
    - gf_filter_pck_get_byte_offset
    - amrdmx_check_dur
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err amrdmx_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_amr.c:558,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 556
    functionDepth: 1
    functionLinenumber: 556
    functionLinenumberEnd: 561
    functionName: amrdmx_initialize
    functionSourceFile: /src/gpac/src/filters/reframe_amr.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err amrdmx_initialize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_amr.c:565,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_amr.c:566,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 563
    functionDepth: 1
    functionLinenumber: 563
    functionLinenumberEnd: 567
    functionName: amrdmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_amr.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void amrdmx_finalize(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:571,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:575,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:579,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:583,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 569
    functionDepth: 0
    functionLinenumber: 569
    functionLinenumberEnd: 588
    functionName: amrdmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_amr.c
    functionUses: 0
    functionsReached:
    - strnicmp
    linkageType: ''
    returnType: char
    signature: char * amrdmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 603
    functionDepth: 0
    functionLinenumber: 603
    functionLinenumberEnd: 604
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/reframe_amr.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 628
    functionDepth: 0
    functionLinenumber: 628
    functionLinenumberEnd: 631
    functionName: rfamr_register
    functionSourceFile: /src/gpac/src/filters/reframe_amr.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfamr_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 633
    functionDepth: 0
    functionLinenumber: 633
    functionLinenumberEnd: 636
    functionName: rfamr_register
    functionSourceFile: /src/gpac/src/filters/reframe_amr.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfamr_register(GF_FilterSession *session)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_temp
      Src: /src/gpac/src/filters/out_rtp.c:88,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtp.c:93,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:95,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/out_rtp.c:97,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/filters/out_rtp.c:101,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/filters/out_rtp.c:102,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:104,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:108,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:110,1
    - Dst: gf_filter_pid_orig_src_args
      Src: /src/gpac/src/filters/out_rtp.c:111,1
    - Dst: gf_filter_pid_get_source_filter_name
      Src: /src/gpac/src/filters/out_rtp.c:112,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/out_rtp.c:114,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:117,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:119,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:121,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:124,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:126,1
    - Dst: gf_net_is_ipv6
      Src: /src/gpac/src/filters/out_rtp.c:126,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:128,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:131,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/out_rtp.c:134,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:135,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:137,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/filters/out_rtp.c:137,1
    - Dst: gf_gpac_copyright
      Src: /src/gpac/src/filters/out_rtp.c:137,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:145,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:148,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:155,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:161,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:166,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:168,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:170,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:173,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:188,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:191,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:197,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:207,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:210,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:213,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:216,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:220,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:222,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:224,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:229,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:232,1
    - Dst: gf_rtp_streamer_append_sdp_extended
      Src: /src/gpac/src/filters/out_rtp.c:236,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:239,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtp.c:240,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:247,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:250,1
    - Dst: gf_rtp_streamer_get_payload_type
      Src: /src/gpac/src/filters/out_rtp.c:250,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:255,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/out_rtp.c:261,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:263,1
    - Dst: gf_rtp_streamer_get_payload_type
      Src: /src/gpac/src/filters/out_rtp.c:263,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:266,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:271,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/out_rtp.c:274,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 154
    argCount: 10
    argNames:
    - streams
    - is_rtsp
    - ip
    - info
    - sess_name
    - url
    - email
    - base_pid_id
    - sdp_tmp
    - session_id
    argTypes:
    - GF_List*
    - Bool
    - char*
    - char*
    - char*
    - char*
    - char*
    - u32
    - FILE**
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 83
    functionDepth: 6
    functionLinenumber: 83
    functionLinenumberEnd: 276
    functionName: rtpout_create_sdp
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_filter_pid_get_property
    - gf_fprintf
    - gf_gpac_copyright
    - gf_list_find
    - gf_sys_is_test_mode
    - gf_list_count
    - gf_gpac_version
    - gf_rtp_streamer_append_sdp_extended
    - gf_file_temp
    - gf_rtp_streamer_get_payload_type
    - gf_net_is_ipv6
    - gf_filter_pid_get_source_filter_name
    - gf_filter_pid_orig_src_args
    - gf_file_basename
    - gf_net_get_ntp_ts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpout_create_sdp(GF_List *streams, Bool is_rtsp, const char
      *ip, const char *info, const char *sess_name, const char *url, const char *email,
      u32 base_pid_id, FILE **sdp_tmp, u64 *session_id)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strncpy
      Src: /src/gpac/src/filters/out_rtp.c:285,1
    - Dst: strlwr
      Src: /src/gpac/src/filters/out_rtp.c:287,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_rtp.c:288,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_rtp.c:289,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - string
    - pattern
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 280
    functionDepth: 0
    functionLinenumber: 280
    functionLinenumberEnd: 293
    functionName: check_mime_ext
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - strncpy
    - strlen
    - strstr
    - strlwr
    linkageType: ''
    returnType: Bool
    signature: Bool check_mime_ext(const char *string, const char *pattern)
  - BBCount: 63
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:311,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:314,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:321,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:325,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:327,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/out_rtp.c:327,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:332,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:335,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:341,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:344,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/out_rtp.c:350,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:361,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:372,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:374,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:381,1
    - Dst: check_mime_ext
      Src: /src/gpac/src/filters/out_rtp.c:382,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:385,1
    - Dst: check_mime_ext
      Src: /src/gpac/src/filters/out_rtp.c:386,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/out_rtp.c:397,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:400,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:402,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:404,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:406,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:408,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/out_rtp.c:412,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/out_rtp.c:414,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/out_rtp.c:416,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/out_rtp.c:425,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/out_rtp.c:431,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/out_rtp.c:446,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/out_rtp.c:453,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtp.c:462,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:467,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/out_rtp.c:470,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/out_rtp.c:475,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/out_rtp.c:480,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/out_rtp.c:485,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/out_rtp.c:487,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/out_rtp.c:489,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/out_rtp.c:491,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/out_rtp.c:492,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_rtp.c:505,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:509,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:529,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:532,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:538,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:542,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:544,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:548,1
    - Dst: memset
      Src: /src/gpac/src/filters/out_rtp.c:558,1
    - Dst: gf_rtp_streamer_new_ex
      Src: /src/gpac/src/filters/out_rtp.c:587,1
    - Dst: gf_rtp_streamer_get_codecid
      Src: /src/gpac/src/filters/out_rtp.c:589,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:593,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/out_rtp.c:593,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:597,1
    - Dst: gf_rtp_streamer_get_timescale
      Src: /src/gpac/src/filters/out_rtp.c:600,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:612,1
    - Dst: gf_rtp_streamer_disable_auto_rtcp
      Src: /src/gpac/src/filters/out_rtp.c:615,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_rtp.c:618,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_rtp.c:620,1
    CyclomaticComplexity: 72
    EdgeCount: 72
    ICount: 274
    argCount: 12
    argNames:
    - stream
    - ipdest
    - inject_xps
    - use_mpeg4_signaling
    - use_latm
    - payt
    - mtu
    - ttl
    - ifce
    - is_rtsp
    - base_pid_id
    - netcap_id
    argTypes:
    - GF_RTPOutStream*
    - char*
    - Bool
    - Bool
    - Bool
    - u32
    - u32
    - u32
    - char*
    - Bool
    - u32*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 295
    functionDepth: 3
    functionLinenumber: 295
    functionLinenumberEnd: 622
    functionName: rtpout_init_streamer
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_odf_vvc_cfg_del
    - gf_odf_avc_cfg_del
    - gf_list_count
    - memset
    - gf_rtp_streamer_disable_auto_rtcp
    - gf_filter_pid_get_name
    - gf_odf_hevc_cfg_read
    - gf_4cc_to_str
    - gf_list_get
    - gf_rtp_streamer_new_ex
    - GF_FEVT_INIT
    - gf_rtp_streamer_get_timescale
    - gf_rtp_streamer_get_codecid
    - gf_odf_vvc_cfg_read
    - gf_crc_32
    - gf_list_insert
    - GF_LOG
    - gf_filter_pid_send_event
    - gf_odf_avc_cfg_read
    - gf_timestamp_rescale
    - gf_odf_hevc_cfg_del
    - gf_filter_pid_get_property
    - check_mime_ext
    - gf_filter_pid_set_framing_mode
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpout_init_streamer(GF_RTPOutStream *stream, const char *ipdest,
      Bool inject_xps, Bool use_mpeg4_signaling, Bool use_latm, u32 payt, u32 mtu,
      u32 ttl, const char *ifce, Bool is_rtsp, u32 *base_pid_id, const char *netcap_id)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: rtpout_create_sdp
      Src: /src/gpac/src/filters/out_rtp.c:636,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/out_rtp.c:639,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/out_rtp.c:640,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_rtp.c:642,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/out_rtp.c:643,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:645,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/out_rtp.c:646,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:651,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/out_rtp.c:653,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/out_rtp.c:654,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/out_rtp.c:660,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_RTPOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 662
      start: 624
    functionDepth: 7
    functionLinenumber: 624
    functionLinenumberEnd: 662
    functionName: rtpout_setup_sdp
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - rtpout_create_sdp
    - gf_filter_pck_new_alloc
    - gf_fseek
    - gf_fread
    - GF_LOG
    - gf_filter_pck_send
    - gf_filter_pck_set_framing
    - gf_filter_pck_discard
    - gf_ftell
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpout_setup_sdp(GF_RTPOutCtx *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtp.c:666,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:668,1
    - Dst: rtpout_check_next_port
      Src: /src/gpac/src/filters/out_rtp.c:670,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - first_port
    argTypes:
    - GF_RTPOutCtx*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 674
      start: 664
    functionDepth: 1
    functionLinenumber: 664
    functionLinenumberEnd: 674
    functionName: rtpout_check_next_port
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - rtpout_check_next_port
    - gf_list_get
    linkageType: ''
    returnType: u16
    signature: u16 rtpout_check_next_port(GF_RTPOutCtx *ctx, u16 first_port)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_streamer_del
      Src: /src/gpac/src/filters/out_rtp.c:678,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_rtp.c:679,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/out_rtp.c:681,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/out_rtp.c:683,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/out_rtp.c:685,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtp.c:686,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - st
    argTypes:
    - GF_RTPOutStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 687
      start: 676
    functionDepth: 3
    functionLinenumber: 676
    functionLinenumberEnd: 687
    functionName: rtpout_del_stream
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_odf_hevc_cfg_del
    - gf_free
    - gf_odf_vvc_cfg_del
    - gf_filter_pid_drop_packet
    - gf_odf_avc_cfg_del
    - gf_rtp_streamer_del
    linkageType: ''
    returnType: void
    signature: void rtpout_del_stream(GF_RTPOutStream *st)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_rtp.c:691,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/out_rtp.c:698,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/out_rtp.c:701,1
    - Dst: rtpout_del_stream
      Src: /src/gpac/src/filters/out_rtp.c:702,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtp.c:704,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/out_rtp.c:705,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/out_rtp.c:710,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:712,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/out_rtp.c:723,1
    - Dst: rtpout_del_stream
      Src: /src/gpac/src/filters/out_rtp.c:724,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:726,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_rtp.c:733,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_rtp.c:735,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/out_rtp.c:739,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/out_rtp.c:742,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_rtp.c:743,1
    - Dst: rtpout_check_next_port
      Src: /src/gpac/src/filters/out_rtp.c:746,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/out_rtp.c:750,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/out_rtp.c:752,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/out_rtp.c:753,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/out_rtp.c:753,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/out_rtp.c:754,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/out_rtp.c:755,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/out_rtp.c:756,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/out_rtp.c:756,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/out_rtp.c:757,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/out_rtp.c:764,1
    - Dst: rtpout_init_streamer
      Src: /src/gpac/src/filters/out_rtp.c:767,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/out_rtp.c:767,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:775,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:778,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/out_rtp.c:778,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 81
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 782
      start: 689
    functionDepth: 4
    functionLinenumber: 689
    functionLinenumberEnd: 782
    functionName: rtpout_configure_pid
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - PROP_STRING
    - gf_list_find
    - gf_list_count
    - gf_filter_pid_set_udta
    - gf_filter_pid_new
    - gf_filter_pid_get_name
    - gf_list_add
    - gf_filter_get_udta
    - gf_filter_pid_copy_properties
    - GF_LOG
    - gf_filter_pid_init_play_event
    - gf_filter_get_netcap_id
    - gf_filter_pid_set_eos
    - gf_list_del_item
    - gf_filter_pid_send_event
    - rtpout_check_next_port
    - gf_filter_pid_set_property
    - rtpout_init_streamer
    - gf_filter_pid_get_udta
    - rtpout_del_stream
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_set_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpout_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_rtp.c:786,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_rtp.c:792,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_rtp.c:796,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_rtp.c:798,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtp.c:800,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_rtp.c:801,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/out_rtp.c:809,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_rtp.c:814,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/out_rtp.c:817,1
    - Dst: strlwr
      Src: /src/gpac/src/filters/out_rtp.c:819,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_rtp.c:821,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/out_rtp.c:825,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/out_rtp.c:828,1
    - Dst: gf_filter_set_max_extra_input_pids
      Src: /src/gpac/src/filters/out_rtp.c:829,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 45
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 784
    functionDepth: 1
    functionLinenumber: 784
    functionLinenumberEnd: 832
    functionName: rtpout_initialize
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_strdup
    - PROP_NAME
    - PROP_UINT
    - gf_filter_override_caps
    - gf_filter_set_max_extra_input_pids
    - strlwr
    - strncpy
    - atoi
    - strchr
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpout_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_rtp.c:836,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtp.c:838,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_rtp.c:839,1
    - Dst: rtpout_del_stream
      Src: /src/gpac/src/filters/out_rtp.c:840,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_rtp.c:842,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 844
      start: 834
    functionDepth: 4
    functionLinenumber: 834
    functionLinenumberEnd: 844
    functionName: rtpout_finalize
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_back
    - rtpout_del_stream
    - gf_list_count
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void rtpout_finalize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtp.c:849,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:851,1
    - Dst: gf_rtp_streamer_send_data
      Src: /src/gpac/src/filters/out_rtp.c:852,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 7
    argNames:
    - stream
    - pslist
    - au_start
    - pck_size
    - cts
    - dts
    - duration
    argTypes:
    - GF_RTPOutStream*
    - GF_List*
    - Bool*
    - u32
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 857
      start: 846
    functionDepth: 6
    functionLinenumber: 846
    functionLinenumberEnd: 857
    functionName: rtpout_send_xps
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_rtp_streamer_send_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpout_send_xps(GF_RTPOutStream *stream, GF_List *pslist, Bool
      *au_start, u32 pck_size, u32 cts, u32 dts, u32 duration)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtp.c:863,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:867,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_rtp.c:868,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/out_rtp.c:871,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/out_rtp.c:873,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_rtp.c:877,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_rtp.c:882,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_rtp.c:886,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:888,1
    - Dst: gf_rand_init
      Src: /src/gpac/src/filters/out_rtp.c:890,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:892,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/out_rtp.c:893,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:896,1
    - Dst: rtpout_setup_sdp
      Src: /src/gpac/src/filters/out_rtp.c:900,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:905,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/out_rtp.c:906,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 37
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_RTPOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 911
      start: 859
    functionDepth: 8
    functionLinenumber: 859
    functionLinenumberEnd: 911
    functionName: rtpout_init_clock
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_set_discard
    - rtpout_setup_sdp
    - GF_LOG
    - gf_sys_clock_high_res
    - gf_list_count
    - gf_filter_pck_get_cts
    - gf_rand
    - gf_rand_init
    - gf_filter_pid_get_packet
    - gf_timestamp_rescale
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: Bool
    signature: Bool rtpout_init_clock(GF_RTPOutCtx *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_rtp.c:917,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:918,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/out_rtp.c:918,1
    - Dst: gf_filter_pid_set_rt_stats
      Src: /src/gpac/src/filters/out_rtp.c:920,1
    - Dst: GF_RTPOutStream*::on_rtcp
      Src: /src/gpac/src/filters/out_rtp.c:923,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 5
    argNames:
    - cbk
    - ssrc
    - rtt_ms
    - jitter_rtp_ts
    - loss_rate
    argTypes:
    - void*
    - u32
    - u32
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 925
      start: 913
    functionDepth: 1
    functionLinenumber: 913
    functionLinenumberEnd: 925
    functionName: rtpout_process_rtcp
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_filter_pid_set_rt_stats
    - GF_RTPOutStream*::on_rtcp
    - gf_timestamp_rescale
    - gf_filter_pid_get_name
    linkageType: ''
    returnType: void
    signature: void rtpout_process_rtcp(void *cbk, u32 ssrc, u32 rtt_ms, u64 jitter_rtp_ts,
      u32 loss_rate)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtp.c:942,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:946,1
    - Dst: gf_rtp_streamer_read_rtcp
      Src: /src/gpac/src/filters/out_rtp.c:953,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_rtp.c:958,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/out_rtp.c:961,1
    - Dst: gf_rtp_streamer_send_au
      Src: /src/gpac/src/filters/out_rtp.c:966,1
    - Dst: gf_rtp_streamer_send_bye
      Src: /src/gpac/src/filters/out_rtp.c:967,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/out_rtp.c:974,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/out_rtp.c:976,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/out_rtp.c:980,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/out_rtp.c:981,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:996,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:1025,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_rtp.c:1028,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:1037,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:1042,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:1043,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_rtp.c:1045,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_rtp.c:1047,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_rtp.c:1051,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_rtp.c:1052,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_rtp.c:1054,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_rtp.c:1055,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_rtp.c:1063,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:1074,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:1077,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:1080,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_rtp.c:1084,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_rtp.c:1085,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_rtp.c:1087,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/out_rtp.c:1115,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:1116,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:1118,1
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/filters/out_rtp.c:1128,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtp.c:1129,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:1132,1
    - Dst: gf_rtp_streamer_send_rtcp
      Src: /src/gpac/src/filters/out_rtp.c:1136,1
    - Dst: rtpout_send_xps
      Src: /src/gpac/src/filters/out_rtp.c:1152,1
    - Dst: rtpout_send_xps
      Src: /src/gpac/src/filters/out_rtp.c:1154,1
    - Dst: rtpout_send_xps
      Src: /src/gpac/src/filters/out_rtp.c:1157,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtp.c:1161,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:1163,1
    - Dst: rtpout_send_xps
      Src: /src/gpac/src/filters/out_rtp.c:1165,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:1180,1
    - Dst: gf_rtp_streamer_send_data
      Src: /src/gpac/src/filters/out_rtp.c:1186,1
    - Dst: gf_rtp_streamer_send_data
      Src: /src/gpac/src/filters/out_rtp.c:1191,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_rtp.c:1193,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:1197,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_rtp.c:1197,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 199
    argCount: 12
    argNames:
    - streams
    - active_stream
    - loop
    - delay
    - active_stream_idx
    - sys_clock_at_init
    - active_min_ts_microsec
    - microsec_ts_init
    - wait_for_loop
    - repost_delay_us
    - first_RTCP_sent
    - base_pid_id
    argTypes:
    - GF_List*
    - GF_RTPOutStream**
    - Bool
    - s32
    - u32*
    - u64
    - u64*
    - u64
    - Bool*
    - u32*
    - Bool*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1202
      start: 928
    functionDepth: 7
    functionLinenumber: 928
    functionLinenumberEnd: 1202
    functionName: rtpout_process_rtp
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_log_tool_level_on
    - gf_list_count
    - gf_rtp_streamer_send_bye
    - gf_net_get_ntp
    - gf_rtp_streamer_send_au
    - gf_filter_pid_get_packet
    - gf_rtp_streamer_send_rtcp
    - gf_list_get
    - gf_rtp_streamer_send_data
    - GF_FEVT_INIT
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_duration
    - gf_filter_pid_drop_packet
    - gf_rtp_streamer_read_rtcp
    - GF_LOG
    - gf_filter_pck_get_data
    - rtpout_send_xps
    - gf_error_to_string
    - gf_filter_pid_send_event
    - gf_filter_pck_get_sap
    - gf_filter_pid_is_eos
    - gf_sys_clock_high_res
    - gf_timestamp_rescale
    - gf_filter_pid_get_property
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpout_process_rtp(GF_List *streams, GF_RTPOutStream **active_stream,
      Bool loop, s32 delay, u32 *active_stream_idx, u64 sys_clock_at_init, u64 *active_min_ts_microsec,
      u64 microsec_ts_init, Bool *wait_for_loop, u32 *repost_delay_us, Bool *first_RTCP_sent,
      u32 base_pid_id)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_rtp.c:1208,1
    - Dst: rtpout_init_clock
      Src: /src/gpac/src/filters/out_rtp.c:1212,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_rtp.c:1216,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtp.c:1220,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:1222,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/out_rtp.c:1223,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/out_rtp.c:1226,1
    - Dst: rtpout_process_rtp
      Src: /src/gpac/src/filters/out_rtp.c:1231,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_rtp.c:1235,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1238
      start: 1204
    functionDepth: 9
    functionLinenumber: 1204
    functionLinenumberEnd: 1238
    functionName: rtpout_process
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_set_discard
    - rtpout_process_rtp
    - gf_filter_pid_set_eos
    - gf_list_count
    - rtpout_init_clock
    - gf_filter_ask_rt_reschedule
    - gf_sys_clock_high_res
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpout_process(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_rtp.c:1242,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1244
      start: 1240
    functionDepth: 0
    functionLinenumber: 1240
    functionLinenumberEnd: 1244
    functionName: rtpout_probe_url
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - strnicmp
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore rtpout_probe_url(const char *url, const char *mime)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1275
      start: 1274
    functionDepth: 0
    functionLinenumber: 1274
    functionLinenumberEnd: 1275
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/out_rtp.c:1339,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/out_rtp.c:1340,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1343
      start: 1337
    functionDepth: 6
    functionLinenumber: 1337
    functionLinenumberEnd: 1343
    functionName: rtpout_register
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    - gf_opts_set_key
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rtpout_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1350
      start: 1347
    functionDepth: 0
    functionLinenumber: 1347
    functionLinenumberEnd: 1350
    functionName: rtpout_register
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rtpout_register(GF_FilterSession *session)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:442,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:446,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/filters/mux_isom.c:457,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:459,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 2
    argNames:
    - ctx
    - tkw
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 438
    functionDepth: 6
    functionLinenumber: 438
    functionLinenumberEnd: 466
    functionName: mp4mx_setup_dash_vod
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_filter_pid_get_property
    - gf_file_temp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4mx_setup_dash_vod(GF_MP4MuxCtx *ctx, TrackWriter *tkw)
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 42
    argCount: 2
    argNames:
    - stream_type
    - codecid
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 469
    functionDepth: 0
    functionLinenumber: 469
    functionLinenumberEnd: 500
    functionName: gf_isom_stream_type_to_media_type
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_isom_stream_type_to_media_type(u32 stream_type, u32 codecid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:504,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:506,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_isom.c:507,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_isom.c:508,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - bs
    - list
    - nalu_size_length
    argTypes:
    - GF_BitStream*
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 502
    functionDepth: 6
    functionLinenumber: 502
    functionLinenumberEnd: 510
    functionName: mp4_mux_write_ps_list
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_bs_write_data
    - gf_bs_write_int
    linkageType: ''
    returnType: void
    signature: void mp4_mux_write_ps_list(GF_BitStream *bs, GF_List *list, u32 nalu_size_length)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:514,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:516,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - list
    - type
    argTypes:
    - GF_List*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 520
      start: 512
    functionDepth: 1
    functionLinenumber: 512
    functionLinenumberEnd: 520
    functionName: mp4_mux_get_nalus_ps
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_List
    signature: GF_List *mp4_mux_get_nalus_ps(GF_List *list, u8 type)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:526,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:529,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:534,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:538,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:544,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:549,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:552,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:555,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:558,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:563,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:563,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:568,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:568,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:572,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:572,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:574,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:574,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:576,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:576,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:578,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:578,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:583,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:583,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:585,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:585,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:588,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:588,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:589,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:589,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:590,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:590,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:591,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:591,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:595,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:595,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:596,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:596,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/mux_isom.c:601,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/mux_isom.c:603,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:605,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 81
    argCount: 3
    argNames:
    - ctx
    - tkw
    - for_non_rap
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 608
      start: 522
    functionDepth: 9
    functionLinenumber: 522
    functionLinenumberEnd: 608
    functionName: mp4_mux_make_inband_header
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - gf_bs_get_content
    - mp4_mux_write_ps_list
    - gf_bs_del
    - mp4_mux_get_nalus_ps
    linkageType: ''
    returnType: void
    signature: void mp4_mux_make_inband_header(GF_MP4MuxCtx *ctx, TrackWriter *tkw,
      Bool for_non_rap)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/mux_isom.c:615,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/filters/mux_isom.c:616,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/filters/mux_isom.c:619,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/src/filters/mux_isom.c:624,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 3
    argNames:
    - ctx
    - width
    - height
    argTypes:
    - GF_MP4MuxCtx*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 610
    functionDepth: 2
    functionLinenumber: 610
    functionLinenumberEnd: 632
    functionName: mp4_mux_get_video_size
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_media_type
    - gf_isom_get_visual_info
    - gf_isom_get_track_layout_info
    - gf_isom_get_track_count
    linkageType: ''
    returnType: void
    signature: void mp4_mux_get_video_size(GF_MP4MuxCtx *ctx, u32 *width, u32 *height)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:636,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:637,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:638,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:639,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:640,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:641,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:642,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:643,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/mux_isom.c:644,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:645,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - tkw
    argTypes:
    - TrackWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 646
      start: 634
    functionDepth: 2
    functionLinenumber: 634
    functionLinenumberEnd: 646
    functionName: mp4_mux_track_writer_del
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_odf_hevc_cfg_del
    - gf_free
    - gf_odf_vvc_cfg_del
    - gf_odf_avc_cfg_del
    - gf_filter_pck_discard
    linkageType: ''
    returnType: void
    signature: void mp4_mux_track_writer_del(TrackWriter *tkw)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:651,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:654,1
    - Dst: gf_isom_set_track_flags
      Src: /src/gpac/src/filters/mux_isom.c:656,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 5
    argNames:
    - ctx
    - tkw
    - rname
    - rtype
    - remove_from_pres
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 659
      start: 648
    functionDepth: 6
    functionLinenumber: 648
    functionLinenumberEnd: 659
    functionName: mp4_mux_write_track_refs
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property_str
    - gf_isom_set_track_flags
    - gf_isom_set_track_reference
    linkageType: ''
    returnType: void
    signature: void mp4_mux_write_track_refs(GF_MP4MuxCtx *ctx, TrackWriter *tkw,
      const char *rname, u32 rtype, Bool remove_from_pres)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:670,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:672,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - udta
    - old_track_num
    - new_track_num
    argTypes:
    - void*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 661
    functionDepth: 1
    functionLinenumber: 661
    functionLinenumberEnd: 681
    functionName: mp4mux_track_reorder
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void mp4mux_track_reorder(void *udta, u32 old_track_num, u32 new_track_num)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/mux_isom.c:686,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:688,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:690,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/mux_isom.c:692,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/mux_isom.c:695,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_isom.c:697,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:699,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:702,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/mux_isom.c:703,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/mux_isom.c:706,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 708
      start: 683
    functionDepth: 2
    functionLinenumber: 683
    functionLinenumberEnd: 708
    functionName: mp4mux_reorder_tracks
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_new
    - gf_list_get
    - gf_list_count
    - gf_isom_get_track_id
    - gf_list_add
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void mp4mux_reorder_tracks(GF_MP4MuxCtx *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:714,1
    - Dst: atoi
      Src: /src/gpac/src/filters/mux_isom.c:719,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:727,1
    - Dst: gf_isom_set_track_group
      Src: /src/gpac/src/filters/mux_isom.c:728,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - tkw
    - name
    - p
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 710
    functionDepth: 6
    functionLinenumber: 710
    functionLinenumberEnd: 729
    functionName: mp4mx_set_track_group
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_isom_set_track_group
    - atoi
    - strlen
    - GF_4CC
    linkageType: ''
    returnType: void
    signature: void mp4mx_set_track_group(GF_MP4MuxCtx *ctx, TrackWriter *tkw, char
      *name, const GF_PropertyValue *p)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/mux_isom.c:738,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:738,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:740,1
    - Dst: gf_isom_apple_set_tag
      Src: /src/gpac/src/filters/mux_isom.c:741,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filters/mux_isom.c:756,1
    - Dst: gf_isom_apple_set_tag
      Src: /src/gpac/src/filters/mux_isom.c:760,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:762,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:762,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/mux_isom.c:768,1
    - Dst: mp4mx_set_track_group
      Src: /src/gpac/src/filters/mux_isom.c:769,1
    - Dst: gf_itags_find_by_name
      Src: /src/gpac/src/filters/mux_isom.c:773,1
    - Dst: gf_itags_get_itag
      Src: /src/gpac/src/filters/mux_isom.c:775,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/mux_isom.c:776,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:787,1
    - Dst: strchr
      Src: /src/gpac/src/filters/mux_isom.c:788,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:791,1
    - Dst: gf_isom_set_qt_key
      Src: /src/gpac/src/filters/mux_isom.c:795,1
    - Dst: gf_props_dump_val
      Src: /src/gpac/src/filters/mux_isom.c:804,1
    - Dst: gf_media_isom_apply_qt_key
      Src: /src/gpac/src/filters/mux_isom.c:805,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:810,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:810,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/mux_isom.c:814,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:818,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:820,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:821,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:822,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:823,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/mux_isom.c:825,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:825,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:826,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/mux_isom.c:828,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:830,1
    - Dst: strchr
      Src: /src/gpac/src/filters/mux_isom.c:832,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:849,1
    - Dst: gf_isom_apple_set_tag_ex
      Src: /src/gpac/src/filters/mux_isom.c:850,1
    - Dst: gf_isom_apple_set_tag_ex
      Src: /src/gpac/src/filters/mux_isom.c:853,1
    - Dst: gf_isom_apple_set_tag_ex
      Src: /src/gpac/src/filters/mux_isom.c:857,1
    - Dst: gf_isom_apple_set_tag_ex
      Src: /src/gpac/src/filters/mux_isom.c:860,1
    - Dst: gf_isom_apple_set_tag_ex
      Src: /src/gpac/src/filters/mux_isom.c:863,1
    - Dst: gf_isom_apple_set_tag_ex
      Src: /src/gpac/src/filters/mux_isom.c:867,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:870,1
    - Dst: gf_itags_get_name
      Src: /src/gpac/src/filters/mux_isom.c:870,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:877,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:877,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 122
    argCount: 2
    argNames:
    - ctx
    - tkw
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 880
      start: 733
    functionDepth: 8
    functionLinenumber: 733
    functionLinenumberEnd: 880
    functionName: mp4_mux_set_tags
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_isom_apple_set_tag
    - gf_itags_find_by_name
    - strchr
    - gf_filter_pid_enum_properties
    - strncmp
    - gf_crc_32
    - mp4mx_set_track_group
    - gf_itags_get_name
    - gf_isom_set_qt_key
    - GF_4CC
    - GF_LOG
    - gf_sys_is_test_mode
    - strnicmp
    - gf_error_to_string
    - gf_media_isom_apply_qt_key
    - strlen
    - gf_isom_apple_set_tag_ex
    - gf_itags_get_itag
    - gf_props_dump_val
    - gf_sys_old_arch_compat
    linkageType: ''
    returnType: void
    signature: void mp4_mux_set_tags(GF_MP4MuxCtx *ctx, TrackWriter *tkw)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filters/mux_isom.c:889,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/mux_isom.c:893,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/mux_isom.c:893,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/mux_isom.c:899,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:906,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:907,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:914,1
    - Dst: gf_isom_add_user_data
      Src: /src/gpac/src/filters/mux_isom.c:919,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/mux_isom.c:922,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/mux_isom.c:922,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/mux_isom.c:923,1
    - Dst: gf_isom_add_user_data_boxes
      Src: /src/gpac/src/filters/mux_isom.c:925,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:934,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:934,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:938,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/mux_isom.c:943,1
    - Dst: gf_isom_add_track_kind
      Src: /src/gpac/src/filters/mux_isom.c:947,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 54
    argCount: 2
    argNames:
    - ctx
    - tkw
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 950
      start: 882
    functionDepth: 7
    functionLinenumber: 882
    functionLinenumberEnd: 950
    functionName: mp4_mux_set_udta
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_enum_properties
    - gf_filter_pid_get_property
    - strrchr
    - gf_isom_add_track_kind
    - GF_LOG
    - strncmp
    - strcmp
    - gf_isom_add_user_data_boxes
    - gf_error_to_string
    - GF_4CC
    - gf_isom_add_user_data
    - strlen
    linkageType: ''
    returnType: void
    signature: void mp4_mux_set_udta(GF_MP4MuxCtx *ctx, TrackWriter *tkw)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:954,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:956,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:959,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:962,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 11
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 965
      start: 952
    functionDepth: 6
    functionLinenumber: 952
    functionLinenumberEnd: 965
    functionName: update_chap_refs
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_isom_set_track_reference
    linkageType: ''
    returnType: void
    signature: void update_chap_refs(GF_MP4MuxCtx *ctx)
  - BBCount: 818
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_isom.c:1039,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/mux_isom.c:1046,1
    - Dst: gf_filter_get_dst_name
      Src: /src/gpac/src/filters/mux_isom.c:1048,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/mux_isom.c:1050,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/mux_isom.c:1051,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/mux_isom.c:1051,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:1054,1
    - Dst: gf_isom_get_filename
      Src: /src/gpac/src/filters/mux_isom.c:1057,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/mux_isom.c:1058,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/mux_isom.c:1059,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/mux_isom.c:1059,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/mux_isom.c:1065,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:1066,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/mux_isom.c:1067,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_isom.c:1069,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_isom.c:1070,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_isom.c:1071,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_isom.c:1072,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_isom.c:1073,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_isom.c:1073,1
    - Dst: mux_assign_mime_file_ext
      Src: /src/gpac/src/filters/mux_isom.c:1075,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_isom.c:1077,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_isom.c:1079,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_isom.c:1079,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_isom.c:1084,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_isom.c:1084,1
    - Dst: gf_filter_pid_allow_direct_dispatch
      Src: /src/gpac/src/filters/mux_isom.c:1088,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1093,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1098,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:1102,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:1104,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1105,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:1106,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:1108,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1109,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/mux_isom.c:1110,1
    - Dst: mp4_mux_setup_pid
      Src: /src/gpac/src/filters/mux_isom.c:1116,1
    - Dst: gf_isom_get_pl_indication
      Src: /src/gpac/src/filters/mux_isom.c:1121,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/mux_isom.c:1124,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/mux_isom.c:1127,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_isom.c:1130,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/mux_isom.c:1136,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/mux_isom.c:1140,1
    - Dst: gf_filter_pid_get_min_pck_duration
      Src: /src/gpac/src/filters/mux_isom.c:1141,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/mux_isom.c:1148,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/mux_isom.c:1150,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/mux_isom.c:1152,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/mux_isom.c:1154,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1156,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1164,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1174,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1182,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1188,1
    - Dst: gf_codecid_type
      Src: /src/gpac/src/filters/mux_isom.c:1192,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filters/mux_isom.c:1197,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1202,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/mux_isom.c:1204,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1214,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/mux_isom.c:1216,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1227,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:1273,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:1277,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1288,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1292,1
    - Dst: gf_isom_remove_root_od
      Src: /src/gpac/src/filters/mux_isom.c:1305,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:1306,1
    - Dst: gf_isom_reset_alt_brands
      Src: /src/gpac/src/filters/mux_isom.c:1307,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1317,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1321,1
    - Dst: mp4mx_setup_dash_vod
      Src: /src/gpac/src/filters/mux_isom.c:1325,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1334,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1337,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1347,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1369,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:1374,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:1380,1
    - Dst: gf_codecid_type
      Src: /src/gpac/src/filters/mux_isom.c:1388,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1402,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:1416,1
    - Dst: gf_isom_set_timescale
      Src: /src/gpac/src/filters/mux_isom.c:1427,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1429,1
    - Dst: gf_isom_set_timescale
      Src: /src/gpac/src/filters/mux_isom.c:1431,1
    - Dst: gf_isom_set_timescale
      Src: /src/gpac/src/filters/mux_isom.c:1434,1
    - Dst: gf_isom_make_interleave_ex
      Src: /src/gpac/src/filters/mux_isom.c:1438,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1444,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1448,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1451,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:1455,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1463,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1464,1
    - Dst: gf_codecid_type
      Src: /src/gpac/src/filters/mux_isom.c:1469,1
    - Dst: gf_isom_stream_type_to_media_type
      Src: /src/gpac/src/filters/mux_isom.c:1471,1
    - Dst: gf_isom_set_timescale
      Src: /src/gpac/src/filters/mux_isom.c:1475,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1478,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1502,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/mux_isom.c:1506,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/mux_isom.c:1514,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:1516,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:1518,1
    - Dst: gf_isom_set_creation_time
      Src: /src/gpac/src/filters/mux_isom.c:1522,1
    - Dst: gf_isom_keep_utc_times
      Src: /src/gpac/src/filters/mux_isom.c:1524,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1527,1
    - Dst: gf_isom_new_track_from_template
      Src: /src/gpac/src/filters/mux_isom.c:1532,1
    - Dst: gf_isom_new_track_from_template
      Src: /src/gpac/src/filters/mux_isom.c:1534,1
    - Dst: gf_isom_remove_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:1538,1
    - Dst: gf_isom_remove_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:1539,1
    - Dst: gf_isom_remove_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:1540,1
    - Dst: gf_isom_remove_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:1541,1
    - Dst: gf_isom_remove_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:1542,1
    - Dst: gf_isom_update_bitrate
      Src: /src/gpac/src/filters/mux_isom.c:1546,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1549,1
    - Dst: gf_isom_set_track_stsd_templates
      Src: /src/gpac/src/filters/mux_isom.c:1551,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/mux_isom.c:1552,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:1558,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:1559,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filters/mux_isom.c:1559,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/mux_isom.c:1559,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/src/filters/mux_isom.c:1568,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/src/filters/mux_isom.c:1570,1
    - Dst: gf_isom_set_track_layout_info
      Src: /src/gpac/src/filters/mux_isom.c:1574,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/mux_isom.c:1577,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1577,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1578,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/mux_isom.c:1581,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/mux_isom.c:1583,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/filters/mux_isom.c:1583,1
    - Dst: gf_isom_set_handler_name
      Src: /src/gpac/src/filters/mux_isom.c:1584,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/filters/mux_isom.c:1590,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:1591,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:1591,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/mux_isom.c:1594,1
    - Dst: gf_isom_set_track_flags
      Src: /src/gpac/src/filters/mux_isom.c:1599,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:1603,1
    - Dst: gf_isom_set_track_flags
      Src: /src/gpac/src/filters/mux_isom.c:1604,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1608,1
    - Dst: gf_isom_set_track_flags
      Src: /src/gpac/src/filters/mux_isom.c:1610,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/src/filters/mux_isom.c:1612,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1615,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/src/filters/mux_isom.c:1617,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1625,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/filters/mux_isom.c:1628,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/src/filters/mux_isom.c:1631,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1637,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/filters/mux_isom.c:1640,1
    - Dst: update_chap_refs
      Src: /src/gpac/src/filters/mux_isom.c:1644,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1646,1
    - Dst: gf_isom_set_handler_name
      Src: /src/gpac/src/filters/mux_isom.c:1648,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1651,1
    - Dst: gf_isom_set_alternate_group_id
      Src: /src/gpac/src/filters/mux_isom.c:1653,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:1654,1
    - Dst: gf_isom_set_alternate_group_id
      Src: /src/gpac/src/filters/mux_isom.c:1657,1
    - Dst: gf_isom_set_alternate_group_id
      Src: /src/gpac/src/filters/mux_isom.c:1660,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1673,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:1684,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:1686,1
    - Dst: gf_isom_set_track_flags
      Src: /src/gpac/src/filters/mux_isom.c:1689,1
    - Dst: gf_isom_set_track_flags
      Src: /src/gpac/src/filters/mux_isom.c:1691,1
    - Dst: gf_isom_set_track_flags
      Src: /src/gpac/src/filters/mux_isom.c:1697,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1701,1
    - Dst: gf_isom_set_track_matrix
      Src: /src/gpac/src/filters/mux_isom.c:1703,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1706,1
    - Dst: gf_isom_set_track_magic
      Src: /src/gpac/src/filters/mux_isom.c:1714,1
    - Dst: gf_isom_set_track_index
      Src: /src/gpac/src/filters/mux_isom.c:1717,1
    - Dst: mp4mux_reorder_tracks
      Src: /src/gpac/src/filters/mux_isom.c:1718,1
    - Dst: gf_isom_set_composition_offset_mode
      Src: /src/gpac/src/filters/mux_isom.c:1722,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1724,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/filters/mux_isom.c:1730,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/filters/mux_isom.c:1735,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/mux_isom.c:1740,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1741,1
    - Dst: gf_isom_load_extra_boxes
      Src: /src/gpac/src/filters/mux_isom.c:1743,1
    - Dst: gf_isom_set_sample_group_in_traf
      Src: /src/gpac/src/filters/mux_isom.c:1749,1
    - Dst: gf_isom_remove_sample_group
      Src: /src/gpac/src/filters/mux_isom.c:1752,1
    - Dst: gf_isom_remove_sample_group
      Src: /src/gpac/src/filters/mux_isom.c:1755,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_isom.c:1766,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_isom.c:1766,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_isom.c:1769,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_isom.c:1769,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:1773,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:1774,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1780,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:1784,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1791,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:1798,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:1799,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:1803,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:1806,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1810,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:1815,1
    - Dst: gf_isom_reset_alt_brands_ex
      Src: /src/gpac/src/filters/mux_isom.c:1818,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:1820,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:1824,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:1828,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:1833,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1844,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1848,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/mux_isom.c:1849,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1868,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1870,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1872,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1874,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1876,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1879,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1881,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1883,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1885,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1888,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1892,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1895,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1898,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1902,1
    - Dst: gf_filter_pid_get_args
      Src: /src/gpac/src/filters/mux_isom.c:1933,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_isom.c:1935,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_isom.c:1936,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_isom.c:1937,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_isom.c:1938,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1985,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1996,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2167,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:2186,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/filters/mux_isom.c:2187,1
    - Dst: mp4_mux_get_video_size
      Src: /src/gpac/src/filters/mux_isom.c:2189,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/filters/mux_isom.c:2196,1
    - Dst: mp4_mux_get_video_size
      Src: /src/gpac/src/filters/mux_isom.c:2198,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/filters/mux_isom.c:2209,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:2300,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/mux_isom.c:2391,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_isom.c:2391,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2393,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/mux_isom.c:2397,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:2401,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:2419,1
    - Dst: gf_pixel_fmt_to_qt_type
      Src: /src/gpac/src/filters/mux_isom.c:2427,1
    - Dst: gf_pixel_fmt_is_yuv
      Src: /src/gpac/src/filters/mux_isom.c:2429,1
    - Dst: gf_codecid_4cc_type
      Src: /src/gpac/src/filters/mux_isom.c:2457,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:2466,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:2468,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:2470,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:2472,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:2474,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:2476,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/mux_isom.c:2480,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:2481,1
    - Dst: mp4_mux_get_video_size
      Src: /src/gpac/src/filters/mux_isom.c:2487,1
    - Dst: gf_isom_set_media_timescale
      Src: /src/gpac/src/filters/mux_isom.c:2499,1
    - Dst: gf_isom_set_media_timescale
      Src: /src/gpac/src/filters/mux_isom.c:2503,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2513,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:2529,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/mux_isom.c:2530,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:2532,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2542,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2544,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2547,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2548,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2552,1
    - Dst: mp4_mux_make_inband_header
      Src: /src/gpac/src/filters/mux_isom.c:2556,1
    - Dst: mp4_mux_make_inband_header
      Src: /src/gpac/src/filters/mux_isom.c:2558,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2562,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2564,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2568,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2569,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2573,1
    - Dst: mp4_mux_make_inband_header
      Src: /src/gpac/src/filters/mux_isom.c:2577,1
    - Dst: mp4_mux_make_inband_header
      Src: /src/gpac/src/filters/mux_isom.c:2579,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2583,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2584,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2588,1
    - Dst: mp4_mux_make_inband_header
      Src: /src/gpac/src/filters/mux_isom.c:2592,1
    - Dst: mp4_mux_make_inband_header
      Src: /src/gpac/src/filters/mux_isom.c:2594,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2597,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:2602,1
    - Dst: gf_isom_remove_stream_description
      Src: /src/gpac/src/filters/mux_isom.c:2609,1
    - Dst: gf_codecid_oti
      Src: /src/gpac/src/filters/mux_isom.c:2614,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/filters/mux_isom.c:2619,1
    - Dst: gf_codecid_oti
      Src: /src/gpac/src/filters/mux_isom.c:2621,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2623,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/mux_isom.c:2623,1
    - Dst: gf_isom_new_mpeg4_description
      Src: /src/gpac/src/filters/mux_isom.c:2633,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/mux_isom.c:2638,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2641,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:2641,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:2647,1
    - Dst: gf_isom_add_track_to_root_od
      Src: /src/gpac/src/filters/mux_isom.c:2649,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/filters/mux_isom.c:2655,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/filters/mux_isom.c:2660,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2671,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2672,1
    - Dst: gf_isom_svc_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2676,1
    - Dst: gf_isom_mvc_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2678,1
    - Dst: gf_isom_avc_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2680,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2684,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2685,1
    - Dst: gf_isom_mvc_config_update
      Src: /src/gpac/src/filters/mux_isom.c:2688,1
    - Dst: gf_isom_svc_config_update
      Src: /src/gpac/src/filters/mux_isom.c:2690,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2693,1
    - Dst: gf_isom_avc_set_inband_config
      Src: /src/gpac/src/filters/mux_isom.c:2698,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2703,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:2703,1
    - Dst: gf_isom_avc_set_inband_config
      Src: /src/gpac/src/filters/mux_isom.c:2710,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2713,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:2717,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/filters/mux_isom.c:2718,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2721,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2728,1
    - Dst: gf_odf_hevc_cfg_new
      Src: /src/gpac/src/filters/mux_isom.c:2729,1
    - Dst: gf_isom_hevc_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2730,1
    - Dst: gf_isom_hevc_set_tile_config
      Src: /src/gpac/src/filters/mux_isom.c:2732,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2734,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2739,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2741,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2748,1
    - Dst: gf_odf_hevc_cfg_new
      Src: /src/gpac/src/filters/mux_isom.c:2751,1
    - Dst: gf_isom_hevc_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2756,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:2759,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2760,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2770,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:2772,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2773,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2778,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2779,1
    - Dst: gf_isom_lhvc_config_update
      Src: /src/gpac/src/filters/mux_isom.c:2781,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2783,1
    - Dst: gf_isom_hevc_set_inband_config
      Src: /src/gpac/src/filters/mux_isom.c:2788,1
    - Dst: gf_isom_lhvc_config_update
      Src: /src/gpac/src/filters/mux_isom.c:2792,1
    - Dst: gf_isom_lhvc_config_update
      Src: /src/gpac/src/filters/mux_isom.c:2794,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2797,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:2797,1
    - Dst: gf_isom_hevc_set_inband_config
      Src: /src/gpac/src/filters/mux_isom.c:2804,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2806,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2812,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2818,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:2824,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:2826,1
    - Dst: gf_isom_vvc_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2831,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:2834,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2835,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2845,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:2847,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2848,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2853,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:2853,1
    - Dst: gf_isom_vvc_set_inband_config
      Src: /src/gpac/src/filters/mux_isom.c:2860,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2862,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2871,1
    - Dst: gf_odf_av1_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2874,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2876,1
    - Dst: gf_isom_av1_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2880,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2882,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:2882,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:2888,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2889,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2890,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2893,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2898,1
    - Dst: gf_odf_avs3v_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2901,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2903,1
    - Dst: gf_isom_avs3v_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2907,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2909,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:2909,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:2915,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2916,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2917,1
    - Dst: gf_odf_avs3v_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2920,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2925,1
    - Dst: gf_odf_iamf_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2928,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2930,1
    - Dst: gf_isom_iamf_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2934,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2936,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:2936,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:2941,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2942,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2943,1
    - Dst: gf_odf_iamf_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2945,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2951,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:2951,1
    - Dst: gf_odf_vp_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2954,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2956,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:2956,1
    - Dst: gf_isom_vp_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2960,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2962,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:2962,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:2962,1
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2966,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:2969,1
    - Dst: gf_isom_3gp_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2989,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2991,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:2991,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:3001,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:3004,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:3005,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:3012,1
    - Dst: gf_odf_ac3_cfg_parse
      Src: /src/gpac/src/filters/mux_isom.c:3015,1
    - Dst: gf_isom_ac3_config_new
      Src: /src/gpac/src/filters/mux_isom.c:3019,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3021,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3021,1
    - Dst: gf_odf_ac4_cfg_parse
      Src: /src/gpac/src/filters/mux_isom.c:3029,1
    - Dst: gf_isom_ac4_config_new
      Src: /src/gpac/src/filters/mux_isom.c:3032,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3034,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3034,1
    - Dst: gf_odf_ac4_cfg_clean_list
      Src: /src/gpac/src/filters/mux_isom.c:3040,1
    - Dst: gf_isom_flac_config_new
      Src: /src/gpac/src/filters/mux_isom.c:3042,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3044,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3044,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3052,1
    - Dst: gf_odf_opus_cfg_parse
      Src: /src/gpac/src/filters/mux_isom.c:3055,1
    - Dst: gf_isom_opus_config_new
      Src: /src/gpac/src/filters/mux_isom.c:3057,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3060,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3060,1
    - Dst: gf_isom_new_xml_metadata_description
      Src: /src/gpac/src/filters/mux_isom.c:3066,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3068,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3068,1
    - Dst: gf_isom_new_stxt_description
      Src: /src/gpac/src/filters/mux_isom.c:3073,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3075,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3075,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/mux_isom.c:3079,1
    - Dst: gf_isom_new_xml_subtitle_description
      Src: /src/gpac/src/filters/mux_isom.c:3084,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3086,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3086,1
    - Dst: gf_isom_subtitle_get_mime
      Src: /src/gpac/src/filters/mux_isom.c:3092,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_isom.c:3093,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_isom.c:3093,1
    - Dst: gf_isom_subtitle_set_mime
      Src: /src/gpac/src/filters/mux_isom.c:3094,1
    - Dst: gf_isom_new_stxt_description
      Src: /src/gpac/src/filters/mux_isom.c:3101,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3103,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:3103,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3103,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3110,1
    - Dst: gf_odf_tx3g_read
      Src: /src/gpac/src/filters/mux_isom.c:3113,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3115,1
    - Dst: gf_isom_new_text_description
      Src: /src/gpac/src/filters/mux_isom.c:3123,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/mux_isom.c:3125,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3126,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:3126,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3126,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_isom.c:3131,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/mux_isom.c:3133,1
    - Dst: gf_isom_new_webvtt_description
      Src: /src/gpac/src/filters/mux_isom.c:3138,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3140,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:3140,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3140,1
    - Dst: gf_isom_new_mj2k_description
      Src: /src/gpac/src/filters/mux_isom.c:3148,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3150,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:3150,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3150,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3157,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3159,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3164,1
    - Dst: gf_isom_tmcd_config_new
      Src: /src/gpac/src/filters/mux_isom.c:3171,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3173,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3173,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:3178,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3184,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3186,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3188,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3190,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3192,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3194,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3196,1
    - Dst: gf_isom_new_dims_description
      Src: /src/gpac/src/filters/mux_isom.c:3199,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3201,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3201,1
    - Dst: gf_isom_new_mpha_description
      Src: /src/gpac/src/filters/mux_isom.c:3213,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3215,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3215,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3218,1
    - Dst: gf_isom_set_mpegh_compatible_profiles
      Src: /src/gpac/src/filters/mux_isom.c:3220,1
    - Dst: gf_isom_truehd_config_new
      Src: /src/gpac/src/filters/mux_isom.c:3236,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3238,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3238,1
    - Dst: gf_isom_evte_config_new
      Src: /src/gpac/src/filters/mux_isom.c:3242,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3244,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3244,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:3251,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:3254,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_isom.c:3257,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3259,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:3281,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3299,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3303,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3321,1
    - Dst: gf_4cc_parse
      Src: /src/gpac/src/filters/mux_isom.c:3324,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3328,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3329,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3333,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3336,1
    - Dst: gf_pixel_fmt_get_uncc
      Src: /src/gpac/src/filters/mux_isom.c:3340,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3349,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3350,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:3354,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:3356,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:3357,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/filters/mux_isom.c:3358,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:3358,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3359,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:3360,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_isom.c:3366,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/mux_isom.c:3368,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:3372,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3374,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/mux_isom.c:3374,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3375,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3376,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3378,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/mux_isom.c:3378,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:3378,1
    - Dst: gf_isom_new_generic_sample_description
      Src: /src/gpac/src/filters/mux_isom.c:3382,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:3383,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3386,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3386,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/mux_isom.c:3392,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3398,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3400,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3402,1
    - Dst: gf_isom_update_bitrate
      Src: /src/gpac/src/filters/mux_isom.c:3406,1
    - Dst: gf_isom_update_bitrate
      Src: /src/gpac/src/filters/mux_isom.c:3409,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:3415,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:3421,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3424,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3426,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3427,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/src/filters/mux_isom.c:3447,1
    - Dst: gf_isom_is_same_sample_description
      Src: /src/gpac/src/filters/mux_isom.c:3451,1
    - Dst: gf_isom_remove_stream_description
      Src: /src/gpac/src/filters/mux_isom.c:3452,1
    - Dst: gf_isom_3gp_config_get
      Src: /src/gpac/src/filters/mux_isom.c:3462,1
    - Dst: gf_isom_3gp_config_update
      Src: /src/gpac/src/filters/mux_isom.c:3465,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:3466,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3486,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3488,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3490,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3492,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3495,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3497,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3499,1
    - Dst: gf_isom_set_ismacryp_protection
      Src: /src/gpac/src/filters/mux_isom.c:3505,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3508,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3510,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3512,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:3514,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3515,1
    - Dst: gf_isom_set_oma_protection
      Src: /src/gpac/src/filters/mux_isom.c:3517,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3522,1
    - Dst: gf_isom_set_adobe_protection
      Src: /src/gpac/src/filters/mux_isom.c:3523,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3536,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:3536,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/filters/mux_isom.c:3539,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/filters/mux_isom.c:3542,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/filters/mux_isom.c:3545,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/filters/mux_isom.c:3548,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/filters/mux_isom.c:3551,1
    - Dst: gf_isom_set_generic_protection
      Src: /src/gpac/src/filters/mux_isom.c:3554,1
    - Dst: gf_isom_remove_cenc_senc_box
      Src: /src/gpac/src/filters/mux_isom.c:3558,1
    - Dst: gf_isom_remove_cenc_seig_sample_group
      Src: /src/gpac/src/filters/mux_isom.c:3559,1
    - Dst: mp4_mux_write_track_refs
      Src: /src/gpac/src/filters/mux_isom.c:3563,1
    - Dst: mp4_mux_write_track_refs
      Src: /src/gpac/src/filters/mux_isom.c:3564,1
    - Dst: mp4_mux_write_track_refs
      Src: /src/gpac/src/filters/mux_isom.c:3565,1
    - Dst: mp4_mux_write_track_refs
      Src: /src/gpac/src/filters/mux_isom.c:3566,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:3569,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:3571,1
    - Dst: mp4_mux_write_track_refs
      Src: /src/gpac/src/filters/mux_isom.c:3573,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3578,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3583,1
    - Dst: mp4_mux_write_track_refs
      Src: /src/gpac/src/filters/mux_isom.c:3589,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3593,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:3596,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:3598,1
    - Dst: mp4_mux_setup_pid
      Src: /src/gpac/src/filters/mux_isom.c:3599,1
    - Dst: gf_isom_set_image_sequence_coding_constraints
      Src: /src/gpac/src/filters/mux_isom.c:3606,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3608,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3608,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3611,1
    - Dst: gf_isom_set_image_sequence_alpha
      Src: /src/gpac/src/filters/mux_isom.c:3613,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3615,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3615,1
    - Dst: gf_isom_hint_max_chunk_size
      Src: /src/gpac/src/filters/mux_isom.c:3623,1
    - Dst: gf_isom_hint_max_chunk_duration
      Src: /src/gpac/src/filters/mux_isom.c:3626,1
    - Dst: gf_isom_set_audio_info
      Src: /src/gpac/src/filters/mux_isom.c:3640,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:3645,1
    - Dst: gf_audio_fmt_get_cicp_from_layout
      Src: /src/gpac/src/filters/mux_isom.c:3649,1
    - Dst: gf_audio_fmt_get_cicp_layout
      Src: /src/gpac/src/filters/mux_isom.c:3651,1
    - Dst: gf_isom_set_audio_layout
      Src: /src/gpac/src/filters/mux_isom.c:3652,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/filters/mux_isom.c:3662,1
    - Dst: gf_isom_set_pixel_aspect_ratio
      Src: /src/gpac/src/filters/mux_isom.c:3665,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:3669,1
    - Dst: gf_isom_set_pixel_aspect_ratio
      Src: /src/gpac/src/filters/mux_isom.c:3670,1
    - Dst: gf_isom_set_track_layout_info
      Src: /src/gpac/src/filters/mux_isom.c:3674,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3676,1
    - Dst: gf_isom_set_track_layout_info
      Src: /src/gpac/src/filters/mux_isom.c:3678,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3682,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3684,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3686,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3688,1
    - Dst: gf_isom_get_pixel_aspect_ratio
      Src: /src/gpac/src/filters/mux_isom.c:3694,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3707,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3709,1
    - Dst: gf_isom_set_pixel_aspect_ratio
      Src: /src/gpac/src/filters/mux_isom.c:3713,1
    - Dst: gf_isom_set_visual_color_info
      Src: /src/gpac/src/filters/mux_isom.c:3717,1
    - Dst: gf_isom_get_color_info
      Src: /src/gpac/src/filters/mux_isom.c:3719,1
    - Dst: gf_media_get_color_info
      Src: /src/gpac/src/filters/mux_isom.c:3721,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3731,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3734,1
    - Dst: gf_isom_set_visual_color_info
      Src: /src/gpac/src/filters/mux_isom.c:3737,1
    - Dst: gf_isom_hint_max_chunk_size
      Src: /src/gpac/src/filters/mux_isom.c:3744,1
    - Dst: gf_isom_set_visual_color_info
      Src: /src/gpac/src/filters/mux_isom.c:3748,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3748,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3752,1
    - Dst: gf_isom_set_visual_color_info
      Src: /src/gpac/src/filters/mux_isom.c:3754,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3758,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3759,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:3765,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_isom.c:3766,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_isom.c:3767,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:3768,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:3771,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_isom.c:3774,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_isom.c:3775,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_isom.c:3777,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_isom.c:3778,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_isom.c:3779,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_isom.c:3780,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:3781,1
    - Dst: gf_isom_set_high_dynamic_range_info
      Src: /src/gpac/src/filters/mux_isom.c:3783,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3786,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:3788,1
    - Dst: gf_odf_dovi_cfg_read_bs
      Src: /src/gpac/src/filters/mux_isom.c:3789,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:3790,1
    - Dst: gf_isom_dovi_config_get
      Src: /src/gpac/src/filters/mux_isom.c:3792,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:3795,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:3798,1
    - Dst: gf_isom_set_dolby_vision_profile
      Src: /src/gpac/src/filters/mux_isom.c:3805,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:3809,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3814,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:3816,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:3817,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3821,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/mux_isom.c:3824,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:3825,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3825,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:3834,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3838,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3840,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3842,1
    - Dst: gf_isom_set_ambient_viewing_environment
      Src: /src/gpac/src/filters/mux_isom.c:3845,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3848,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3850,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3851,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:3855,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_isom.c:3856,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_isom.c:3857,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:3858,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:3859,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:3860,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:3861,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:3862,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:3863,1
    - Dst: gf_isom_add_user_data
      Src: /src/gpac/src/filters/mux_isom.c:3865,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:3868,1
    - Dst: gf_isom_set_track_matrix
      Src: /src/gpac/src/filters/mux_isom.c:3873,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3883,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3885,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3887,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3889,1
    - Dst: gf_isom_set_clean_aperture
      Src: /src/gpac/src/filters/mux_isom.c:3903,1
    - Dst: gf_isom_set_track_layout_info
      Src: /src/gpac/src/filters/mux_isom.c:3911,1
    - Dst: gf_isom_set_media_language
      Src: /src/gpac/src/filters/mux_isom.c:3914,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3916,1
    - Dst: gf_isom_update_sample_description_from_template
      Src: /src/gpac/src/filters/mux_isom.c:3918,1
    - Dst: gf_isom_set_pixel_aspect_ratio
      Src: /src/gpac/src/filters/mux_isom.c:3923,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3926,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3927,1
    - Dst: gf_isom_remove_chapter
      Src: /src/gpac/src/filters/mux_isom.c:3933,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/src/filters/mux_isom.c:3941,1
    - Dst: gf_isom_set_track_flags
      Src: /src/gpac/src/filters/mux_isom.c:3942,1
    - Dst: gf_isom_set_track_index
      Src: /src/gpac/src/filters/mux_isom.c:3944,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:3945,1
    - Dst: gf_isom_new_text_description
      Src: /src/gpac/src/filters/mux_isom.c:3956,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:3962,1
    - Dst: gf_isom_add_chapter
      Src: /src/gpac/src/filters/mux_isom.c:3978,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:3982,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:3984,1
    - Dst: gf_isom_text_to_sample
      Src: /src/gpac/src/filters/mux_isom.c:3985,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/filters/mux_isom.c:3993,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/filters/mux_isom.c:3994,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:3997,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/src/filters/mux_isom.c:3999,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/src/filters/mux_isom.c:4001,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:4008,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/mux_isom.c:4008,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4014,1
    - Dst: gf_cenc_validate_key_info
      Src: /src/gpac/src/filters/mux_isom.c:4015,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4017,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/mux_isom.c:4028,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4033,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4034,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4035,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:4039,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4050,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4054,1
    - Dst: gf_isom_set_y3d_info
      Src: /src/gpac/src/filters/mux_isom.c:4062,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4075,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4077,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4081,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4083,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4088,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4090,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4093,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/mux_isom.c:4098,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:4100,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:4102,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/filters/mux_isom.c:4105,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4107,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:4110,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:4116,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:4119,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:4123,1
    - Dst: mp4_mux_make_inband_header
      Src: /src/gpac/src/filters/mux_isom.c:4127,1
    - Dst: mp4_mux_make_inband_header
      Src: /src/gpac/src/filters/mux_isom.c:4129,1
    - Dst: gf_isom_get_edit_list_type
      Src: /src/gpac/src/filters/mux_isom.c:4143,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:4144,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/filters/mux_isom.c:4145,1
    - Dst: gf_isom_get_edit
      Src: /src/gpac/src/filters/mux_isom.c:4151,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4159,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4162,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/filters/mux_isom.c:4170,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/filters/mux_isom.c:4177,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/filters/mux_isom.c:4179,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/filters/mux_isom.c:4186,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/mux_isom.c:4189,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/filters/mux_isom.c:4197,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/filters/mux_isom.c:4200,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/filters/mux_isom.c:4201,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:4211,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/filters/mux_isom.c:4213,1
    - Dst: gf_isom_get_min_negative_cts_offset
      Src: /src/gpac/src/filters/mux_isom.c:4223,1
    - Dst: gf_isom_set_composition_offset_mode
      Src: /src/gpac/src/filters/mux_isom.c:4229,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:4232,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:4233,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:4234,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:4235,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:4236,1
    - Dst: gf_isom_get_min_negative_cts_offset
      Src: /src/gpac/src/filters/mux_isom.c:4245,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/filters/mux_isom.c:4247,1
    - Dst: gf_isom_set_composition_offset_mode
      Src: /src/gpac/src/filters/mux_isom.c:4250,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/filters/mux_isom.c:4253,1
    - Dst: mp4_mux_set_tags
      Src: /src/gpac/src/filters/mux_isom.c:4256,1
    - Dst: mp4_mux_set_udta
      Src: /src/gpac/src/filters/mux_isom.c:4257,1
    CyclomaticComplexity: 998
    EdgeCount: 998
    ICount: 2847
    argCount: 3
    argNames:
    - filter
    - pid
    - is_true_pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4261
      start: 969
    functionDepth: 11
    functionLinenumber: 969
    functionLinenumberEnd: 4261
    functionName: mp4_mux_setup_pid
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_odf_avc_cfg_del
    - gf_timestamp_rescale_signed
    - mp4_mux_set_udta
    - mp4_mux_write_track_refs
    - gf_isom_modify_alternate_brand
    - gf_isom_text_to_sample
    - gf_stream_type_name
    - gf_file_basename
    - gf_sys_is_cov_mode
    - gf_4cc_to_str
    - gf_list_get
    - gf_isom_is_same_sample_description
    - gf_isom_flac_config_new
    - gf_isom_new_webvtt_description
    - gf_isom_svc_config_update
    - mux_assign_mime_file_ext
    - gf_odf_vvc_cfg_read
    - gf_isom_set_visual_color_info
    - gf_filter_get_udta
    - gf_isom_last_error
    - gf_isom_hevc_set_tile_config
    - gf_odf_avs3v_cfg_read
    - gf_isom_new_text_description
    - gf_sys_is_test_mode
    - strstr
    - gf_isom_vvc_set_inband_config
    - gf_bs_write_data
    - gf_odf_dovi_cfg_del
    - gf_isom_add_chapter
    - gf_codecid_type
    - gf_isom_vp_config_new
    - gf_odf_ac4_cfg_clean_list
    - gf_filter_pid_send_event
    - gf_filter_pid_allow_direct_dispatch
    - gf_isom_subtitle_get_mime
    - gf_isom_tmcd_config_new
    - gf_isom_remove_chapter
    - gf_isom_load_extra_boxes
    - PROP_UINT
    - gf_isom_set_alternate_group_id
    - gf_isom_remove_cenc_seig_sample_group
    - gf_gpac_version
    - strcmp
    - GF_4CC
    - gf_isom_set_track_flags
    - gf_isom_set_track_reference
    - gf_props_equal
    - gf_odf_vvc_cfg_del
    - gf_audio_fmt_get_cicp_layout
    - gf_odf_iamf_cfg_del
    - gf_isom_set_track_index
    - gf_isom_set_track_matrix
    - gf_isom_3gp_config_update
    - gf_isom_get_min_negative_cts_offset
    - gf_filter_pid_new
    - gf_isom_set_brand_info
    - gf_isom_remove_stream_description
    - gf_odf_hevc_cfg_read
    - gf_isom_avc_set_inband_config
    - gf_odf_vp_cfg_read
    - gf_isom_set_ismacryp_protection
    - snprintf
    - gf_odf_tx3g_read
    - gf_bs_get_content
    - GF_FEVT_INIT
    - mp4_mux_make_inband_header
    - gf_isom_set_edit
    - gf_codecid_name
    - gf_isom_iamf_config_new
    - gf_list_add
    - gf_isom_set_generic_protection
    - gf_filter_get_dst_name
    - gf_isom_set_track_enabled
    - gf_crc_32
    - mp4_mux_get_video_size
    - gf_isom_ac4_config_new
    - gf_odf_opus_cfg_parse
    - gf_filter_pid_get_property_str
    - gf_isom_new_generic_sample_description
    - gf_filter_pid_get_args
    - gf_m4a_get_config
    - gf_isom_remove_edits
    - gf_isom_subtitle_set_mime
    - gf_isom_get_color_info
    - gf_isom_set_media_type
    - gf_pixel_fmt_get_uncc
    - gf_isom_set_ambient_viewing_environment
    - gf_isom_ac3_config_new
    - gf_isom_stream_type_to_media_type
    - gf_isom_get_edit_list_type
    - gf_isom_opus_config_new
    - gf_isom_evte_config_new
    - gf_isom_set_creation_time
    - gf_isom_set_handler_name
    - gf_odf_hevc_cfg_del
    - gf_isom_hevc_config_new
    - gf_isom_vvc_config_new
    - gf_codecid_oti
    - gf_isom_set_oma_protection
    - gf_bs_read_int
    - gf_isom_remove_sample_group
    - gf_filter_pid_get_udta
    - gf_isom_hevc_set_inband_config
    - gf_isom_add_track_to_root_od
    - gf_isom_av1_config_new
    - gf_isom_get_sample_description_count
    - gf_isom_reset_alt_brands
    - gf_isom_set_audio_layout
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_isom_hint_max_chunk_size
    - gf_isom_set_clean_aperture
    - gf_isom_set_pixel_aspect_ratio
    - gf_list_count
    - gf_isom_get_track_id
    - gf_isom_set_timescale
    - gf_isom_set_audio_info
    - gf_isom_update_bitrate
    - gf_strdup
    - gf_isom_dovi_config_get
    - gf_media_get_color_info
    - gf_isom_hint_max_chunk_duration
    - gf_isom_new_xml_metadata_description
    - mp4_mux_setup_pid
    - gf_isom_new_mpha_description
    - gf_bs_write_utf8
    - gf_isom_new_track_from_template
    - mp4mx_setup_dash_vod
    - gf_isom_get_pl_indication
    - gf_isom_set_composition_offset_mode
    - gf_isom_set_media_language
    - mp4_mux_set_tags
    - gf_isom_truehd_config_new
    - gf_isom_set_image_sequence_alpha
    - gf_isom_set_y3d_info
    - gf_isom_set_sample_group_in_traf
    - gf_isom_set_track_stsd_templates
    - gf_isom_set_dolby_vision_profile
    - mp4mux_reorder_tracks
    - gf_odf_iamf_cfg_read
    - gf_odf_ac3_cfg_parse
    - gf_filter_pid_negotiate_property
    - gf_filter_pid_init_play_event
    - gf_isom_set_image_sequence_coding_constraints
    - gf_bs_write_int
    - gf_isom_update_sample_description_from_template
    - gf_audio_fmt_get_cicp_from_layout
    - gf_error_to_string
    - gf_odf_avc_cfg_read
    - gf_timestamp_rescale
    - strlen
    - gf_isom_set_high_dynamic_range_info
    - gf_isom_set_adobe_protection
    - gf_isom_mvc_config_new
    - gf_isom_avc_config_new
    - gf_fatal_assert
    - gf_odf_avs3v_cfg_del
    - gf_isom_get_edit
    - gf_pixel_fmt_to_qt_type
    - gf_isom_get_filename
    - gf_odf_av1_cfg_read
    - gf_odf_desc_del
    - gf_isom_new_mj2k_description
    - memset
    - gf_isom_new_xml_subtitle_description
    - gf_isom_set_pl_indication
    - gf_isom_add_sample
    - gf_odf_av1_cfg_del
    - gf_filter_pid_set_udta
    - gf_4cc_parse
    - gf_bs_write_u32
    - gf_odf_hevc_cfg_new
    - gf_isom_set_track_layout_info
    - gf_pixel_fmt_is_yuv
    - gf_isom_new_stxt_description
    - gf_odf_desc_esd_new
    - memcpy
    - gf_isom_sample_del
    - gf_isom_new_mpeg4_description
    - gf_isom_lhvc_config_update
    - gf_isom_get_track_count
    - gf_cenc_validate_key_info
    - stricmp
    - gf_isom_reset_alt_brands_ex
    - gf_audio_fmt_bit_depth
    - gf_isom_new_dims_description
    - gf_filter_pid_copy_properties
    - update_chap_refs
    - gf_isom_avs3v_config_new
    - GF_LOG
    - gf_codecid_4cc_type
    - gf_isom_set_media_timescale
    - gf_isom_get_pixel_aspect_ratio
    - gf_isom_new_track
    - gf_odf_vp_cfg_del
    - gf_odf_dovi_cfg_read_bs
    - gf_filter_pid_get_min_pck_duration
    - gf_avc_read_sps
    - gf_isom_add_user_data
    - gf_filter_pid_set_property
    - gf_isom_keep_utc_times
    - gf_isom_svc_config_new
    - gf_isom_set_mpegh_compatible_profiles
    - gf_isom_3gp_config_get
    - gf_isom_set_visual_info
    - gf_filter_pid_get_property
    - gf_isom_3gp_config_new
    - gf_isom_remove_root_od
    - gf_filter_pid_set_framing_mode
    - gf_isom_make_interleave_ex
    - gf_isom_remove_track_reference
    - gf_isom_set_track_magic
    - gf_bs_del
    - gf_isom_remove_cenc_senc_box
    - gf_file_ext_start
    - gf_isom_mvc_config_update
    - gf_filter_pid_set_name
    - gf_odf_ac4_cfg_parse
    - gf_sys_old_arch_compat
    - gf_isom_set_last_sample_duration
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4_mux_setup_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_true_pid)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_isom.c:4271,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/mux_isom.c:4274,1
    - Dst: mp4_mux_done_track
      Src: /src/gpac/src/filters/mux_isom.c:4276,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/mux_isom.c:4277,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:4278,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:4279,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:4283,1
    - Dst: mp4_mux_done
      Src: /src/gpac/src/filters/mux_isom.c:4287,1
    - Dst: mp4_mux_flush_fragmented
      Src: /src/gpac/src/filters/mux_isom.c:4292,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/mux_isom.c:4298,1
    - Dst: mp4_mux_setup_pid
      Src: /src/gpac/src/filters/mux_isom.c:4303,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4304
      start: 4269
    functionDepth: 12
    functionLinenumber: 4269
    functionLinenumberEnd: 4304
    functionName: mp4_mux_configure_pid
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_filter_pid_remove
    - mp4_mux_setup_pid
    - gf_list_count
    - mp4_mux_flush_fragmented
    - gf_list_del_item
    - gf_filter_pid_get_udta
    - mp4_mux_done_track
    - mp4_mux_done
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4_mux_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_isom.c:4308,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/mux_isom.c:4311,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/mux_isom.c:4315,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/mux_isom.c:4318,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/mux_isom.c:4321,1
    - Dst: mp4_mux_done
      Src: /src/gpac/src/filters/mux_isom.c:4328,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:4341,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:4343,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/mux_isom.c:4347,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/mux_isom.c:4351,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 37
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4356
      start: 4306
    functionDepth: 1
    functionLinenumber: 4306
    functionLinenumberEnd: 4356
    functionName: mp4_mux_process_event
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_get_info
    - gf_filter_pid_init_play_event
    - gf_list_count
    - gf_filter_release_property
    - gf_filter_pid_send_event
    - gf_filter_pid_get_udta
    - mp4_mux_done
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool mp4_mux_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_isom.c:4380,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4382,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_isom.c:4396,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4398,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4402,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:4407,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/mux_isom.c:4408,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/mux_isom.c:4410,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/mux_isom.c:4418,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/mux_isom.c:4419,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/mux_isom.c:4420,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/mux_isom.c:4424,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4425,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/mux_isom.c:4429,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/mux_isom.c:4432,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/mux_isom.c:4434,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/mux_isom.c:4435,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4436,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/mux_isom.c:4439,1
    - Dst: gf_isom_cenc_set_pssh
      Src: /src/gpac/src/filters/mux_isom.c:4445,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/mux_isom.c:4446,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/filters/mux_isom.c:4447,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:4450,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:4454,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/mux_isom.c:4455,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_isom.c:4457,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 75
    argCount: 4
    argNames:
    - ctx
    - tkw
    - pssh
    - dyn_pssh_mode
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    - GF_PropertyValue*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4461
      start: 4365
    functionDepth: 7
    functionLinenumber: 4365
    functionLinenumberEnd: 4461
    functionName: mp4_mux_cenc_insert_pssh
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_property
    - gf_bs_read_data
    - gf_isom_cenc_set_pssh
    - gf_bs_read_u32
    - gf_free
    - gf_filter_pid_get_property
    - gf_bs_new
    - GF_LOG
    - memcpy
    - gf_bs_get_position
    - gf_bs_available
    - gf_bs_is_overflow
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_malloc
    - gf_bs_skip_bytes
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void mp4_mux_cenc_insert_pssh(GF_MP4MuxCtx *ctx, TrackWriter *tkw,
      const GF_PropertyValue *pssh, u32 dyn_pssh_mode)
  - BBCount: 64
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4480,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4495,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4497,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4500,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4503,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4508,1
    - Dst: gf_isom_clone_sample_description
      Src: /src/gpac/src/filters/mux_isom.c:4514,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4516,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:4516,1
    - Dst: gf_isom_set_cenc_protection
      Src: /src/gpac/src/filters/mux_isom.c:4540,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4542,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4547,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:4547,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/src/filters/mux_isom.c:4553,1
    - Dst: gf_isom_is_same_sample_description
      Src: /src/gpac/src/filters/mux_isom.c:4558,1
    - Dst: gf_isom_remove_stream_description
      Src: /src/gpac/src/filters/mux_isom.c:4559,1
    - Dst: mp4_mux_cenc_insert_pssh
      Src: /src/gpac/src/filters/mux_isom.c:4567,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:4570,1
    - Dst: gf_isom_piff_allocate_storage
      Src: /src/gpac/src/filters/mux_isom.c:4574,1
    - Dst: gf_isom_cenc_allocate_storage
      Src: /src/gpac/src/filters/mux_isom.c:4576,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4579,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:4579,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/mux_isom.c:4589,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4600,1
    - Dst: gf_isom_fragment_set_cenc_sai
      Src: /src/gpac/src/filters/mux_isom.c:4612,1
    - Dst: gf_isom_track_cenc_add_sample_info
      Src: /src/gpac/src/filters/mux_isom.c:4617,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:4621,1
    - Dst: gf_isom_set_sample_cenc_group
      Src: /src/gpac/src/filters/mux_isom.c:4622,1
    - Dst: gf_isom_set_sample_cenc_group
      Src: /src/gpac/src/filters/mux_isom.c:4640,1
    - Dst: gf_isom_set_sample_cenc_default_group
      Src: /src/gpac/src/filters/mux_isom.c:4643,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4647,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:4647,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4651,1
    - Dst: mp4_mux_cenc_insert_pssh
      Src: /src/gpac/src/filters/mux_isom.c:4654,1
    - Dst: gf_isom_set_sample_group_description
      Src: /src/gpac/src/filters/mux_isom.c:4656,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:4656,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:4667,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/mux_isom.c:4669,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/filters/mux_isom.c:4671,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/mux_isom.c:4681,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/mux_isom.c:4693,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/mux_isom.c:4694,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:4695,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/mux_isom.c:4698,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:4699,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_isom.c:4710,1
    - Dst: gf_cenc_key_info_get_iv_size
      Src: /src/gpac/src/filters/mux_isom.c:4727,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4730,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4736,1
    - Dst: gf_cenc_key_info_get_iv_size
      Src: /src/gpac/src/filters/mux_isom.c:4744,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4748,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/mux_isom.c:4760,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_isom.c:4762,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/mux_isom.c:4770,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_isom.c:4773,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_isom.c:4775,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:4789,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4802,1
    - Dst: gf_isom_fragment_set_cenc_sai
      Src: /src/gpac/src/filters/mux_isom.c:4807,1
    - Dst: gf_isom_fragment_set_cenc_sai
      Src: /src/gpac/src/filters/mux_isom.c:4809,1
    - Dst: gf_isom_track_cenc_add_sample_info
      Src: /src/gpac/src/filters/mux_isom.c:4816,1
    - Dst: gf_isom_track_cenc_add_sample_info
      Src: /src/gpac/src/filters/mux_isom.c:4818,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:4821,1
    CyclomaticComplexity: 77
    EdgeCount: 77
    ICount: 282
    argCount: 6
    argNames:
    - ctx
    - tkw
    - pck
    - act_type
    - pck_size
    - injected_hdr_size
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    - GF_FilterPacket*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4823
      start: 4463
    functionDepth: 9
    functionLinenumber: 4463
    functionLinenumberEnd: 4823
    functionName: mp4_mux_cenc_update
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - gf_bs_write_u16
    - gf_isom_modify_alternate_brand
    - gf_isom_cenc_allocate_storage
    - memset
    - gf_isom_set_sample_cenc_default_group
    - gf_bs_write_long_int
    - gf_isom_remove_stream_description
    - gf_bs_write_u32
    - gf_assert
    - gf_isom_is_same_sample_description
    - gf_isom_fragment_set_cenc_sai
    - gf_bs_get_content
    - memcpy
    - gf_isom_set_sample_group_description
    - gf_isom_set_sample_cenc_group
    - gf_filter_pck_get_property
    - gf_isom_set_cenc_protection
    - GF_LOG
    - gf_filter_pck_get_crypt_flags
    - gf_isom_piff_allocate_storage
    - mp4_mux_cenc_insert_pssh
    - gf_error_to_string
    - gf_isom_track_cenc_add_sample_info
    - gf_isom_clone_sample_description
    - gf_malloc
    - gf_filter_pid_get_property
    - gf_bs_del
    - GF_4CC
    - gf_cenc_key_info_get_iv_size
    - gf_isom_get_sample_description_count
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4_mux_cenc_update(GF_MP4MuxCtx *ctx, TrackWriter *tkw, GF_FilterPacket
      *pck, u32 act_type, u32 pck_size, u32 injected_hdr_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/mux_isom.c:4827,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - GF_MP4MuxCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4831
      start: 4825
    functionDepth: 0
    functionLinenumber: 4825
    functionLinenumberEnd: 4831
    functionName: mp4_mux_get_sap
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_sap
    linkageType: ''
    returnType: GF_FilterSAPType
    signature: GF_FilterSAPType mp4_mux_get_sap(GF_MP4MuxCtx *ctx, GF_FilterPacket
      *pck)
  - BBCount: 148
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4857,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/mux_isom.c:4857,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/mux_isom.c:4862,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/mux_isom.c:4867,1
    - Dst: gf_filter_pck_dangling_copy
      Src: /src/gpac/src/filters/mux_isom.c:4868,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/mux_isom.c:4870,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/mux_isom.c:4872,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_isom.c:4879,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_isom.c:4880,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4884,1
    - Dst: gf_filter_pid_get_min_pck_duration
      Src: /src/gpac/src/filters/mux_isom.c:4887,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:4892,1
    - Dst: mp4_mux_update_init_edit
      Src: /src/gpac/src/filters/mux_isom.c:4908,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4917,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4925,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/mux_isom.c:4932,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4934,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/mux_isom.c:4948,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:4951,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:4961,1
    - Dst: mp4_mux_get_sap
      Src: /src/gpac/src/filters/mux_isom.c:4969,1
    - Dst: gf_isom_patch_last_sample_duration
      Src: /src/gpac/src/filters/mux_isom.c:5000,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5003,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/mux_isom.c:5003,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/mux_isom.c:5045,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:5054,1
    - Dst: gf_isom_fragment_add_sample
      Src: /src/gpac/src/filters/mux_isom.c:5061,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/filters/mux_isom.c:5066,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/src/filters/mux_isom.c:5067,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/mux_isom.c:5073,1
    - Dst: gf_isom_add_sample_reference
      Src: /src/gpac/src/filters/mux_isom.c:5075,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5077,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/mux_isom.c:5077,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:5077,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5080,1
    - Dst: gf_isom_fragment_append_data
      Src: /src/gpac/src/filters/mux_isom.c:5085,1
    - Dst: gf_isom_append_sample_data
      Src: /src/gpac/src/filters/mux_isom.c:5090,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5094,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:5094,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5099,1
    - Dst: gf_isom_fragment_add_sample_ex
      Src: /src/gpac/src/filters/mux_isom.c:5153,1
    - Dst: gf_isom_fragment_append_data
      Src: /src/gpac/src/filters/mux_isom.c:5155,1
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/src/filters/mux_isom.c:5158,1
    - Dst: gf_isom_fragment_append_data
      Src: /src/gpac/src/filters/mux_isom.c:5159,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/mux_isom.c:5161,1
    - Dst: gf_isom_fragment_append_data_ex
      Src: /src/gpac/src/filters/mux_isom.c:5163,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_isom.c:5165,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/mux_isom.c:5167,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/filters/mux_isom.c:5175,1
    - Dst: gf_isom_append_sample_data
      Src: /src/gpac/src/filters/mux_isom.c:5177,1
    - Dst: gf_isom_append_sample_data
      Src: /src/gpac/src/filters/mux_isom.c:5179,1
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/src/filters/mux_isom.c:5184,1
    - Dst: gf_isom_fragment_add_sample
      Src: /src/gpac/src/filters/mux_isom.c:5185,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/mux_isom.c:5187,1
    - Dst: gf_isom_fragment_add_sample_ex
      Src: /src/gpac/src/filters/mux_isom.c:5189,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_isom.c:5191,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/mux_isom.c:5193,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/filters/mux_isom.c:5200,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/src/filters/mux_isom.c:5202,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5207,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/mux_isom.c:5207,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:5207,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5209,1
    - Dst: mp4_mux_cenc_update
      Src: /src/gpac/src/filters/mux_isom.c:5213,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5215,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:5215,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5226,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5228,1
    - Dst: gf_isom_fragment_add_sample_references
      Src: /src/gpac/src/filters/mux_isom.c:5232,1
    - Dst: gf_isom_set_sample_references
      Src: /src/gpac/src/filters/mux_isom.c:5234,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5236,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:5236,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5244,1
    - Dst: gf_isom_fragment_set_sample_rap_group
      Src: /src/gpac/src/filters/mux_isom.c:5267,1
    - Dst: gf_isom_set_sample_rap_group
      Src: /src/gpac/src/filters/mux_isom.c:5272,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5275,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:5275,1
    - Dst: gf_filter_pck_get_switch_frame
      Src: /src/gpac/src/filters/mux_isom.c:5281,1
    - Dst: gf_isom_fragment_set_sample_av1_switch_frame_group
      Src: /src/gpac/src/filters/mux_isom.c:5284,1
    - Dst: gf_isom_set_sample_av1_switch_frame_group
      Src: /src/gpac/src/filters/mux_isom.c:5289,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5292,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:5292,1
    - Dst: gf_filter_pck_get_roll_info
      Src: /src/gpac/src/filters/mux_isom.c:5299,1
    - Dst: gf_isom_fragment_set_sample_roll_group
      Src: /src/gpac/src/filters/mux_isom.c:5308,1
    - Dst: gf_isom_set_sample_roll_group
      Src: /src/gpac/src/filters/mux_isom.c:5313,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5316,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:5316,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5323,1
    - Dst: gf_isom_fragment_add_subsample
      Src: /src/gpac/src/filters/mux_isom.c:5329,1
    - Dst: gf_isom_add_subsample
      Src: /src/gpac/src/filters/mux_isom.c:5332,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:5338,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/mux_isom.c:5339,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/mux_isom.c:5341,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/mux_isom.c:5342,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/mux_isom.c:5343,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/mux_isom.c:5344,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/mux_isom.c:5345,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/mux_isom.c:5346,1
    - Dst: gf_isom_fragment_add_subsample
      Src: /src/gpac/src/filters/mux_isom.c:5350,1
    - Dst: gf_isom_add_subsample
      Src: /src/gpac/src/filters/mux_isom.c:5353,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5359,1
    - Dst: gf_isom_fragment_add_subsample
      Src: /src/gpac/src/filters/mux_isom.c:5363,1
    - Dst: gf_isom_add_subsample
      Src: /src/gpac/src/filters/mux_isom.c:5366,1
    - Dst: gf_isom_fragment_add_subsample
      Src: /src/gpac/src/filters/mux_isom.c:5377,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/mux_isom.c:5382,1
    - Dst: gf_isom_fragment_set_sample_flags
      Src: /src/gpac/src/filters/mux_isom.c:5392,1
    - Dst: gf_isom_set_sample_flags
      Src: /src/gpac/src/filters/mux_isom.c:5395,1
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/src/filters/mux_isom.c:5406,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/mux_isom.c:5412,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/mux_isom.c:5414,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/mux_isom.c:5416,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:5423,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:5425,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:5428,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_isom.c:5435,1
    - Dst: atoi
      Src: /src/gpac/src/filters/mux_isom.c:5437,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/mux_isom.c:5439,1
    - Dst: atoi
      Src: /src/gpac/src/filters/mux_isom.c:5443,1
    - Dst: gf_isom_set_sample_description_restricted
      Src: /src/gpac/src/filters/mux_isom.c:5451,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:5451,1
    - Dst: gf_isom_set_sample_group_description
      Src: /src/gpac/src/filters/mux_isom.c:5456,1
    - Dst: gf_isom_fragment_set_sample_aux_info
      Src: /src/gpac/src/filters/mux_isom.c:5461,1
    - Dst: gf_isom_add_sample_aux_info
      Src: /src/gpac/src/filters/mux_isom.c:5464,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/src/filters/mux_isom.c:5471,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/filters/mux_isom.c:5476,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:5479,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:5496,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/mux_isom.c:5497,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/mux_isom.c:5500,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/mux_isom.c:5510,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/mux_isom.c:5511,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/mux_isom.c:5520,1
    CyclomaticComplexity: 204
    EdgeCount: 204
    ICount: 527
    argCount: 4
    argNames:
    - ctx
    - tkw
    - pck
    - for_fragment
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    - GF_FilterPacket*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5540
      start: 4839
    functionDepth: 10
    functionLinenumber: 4839
    functionLinenumberEnd: 5540
    functionName: mp4_mux_process_sample
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_isom_fragment_add_sample_references
    - gf_bs_new
    - gf_filter_pck_enum_properties
    - mp4_mux_update_init_edit
    - gf_isom_add_sample_aux_info
    - gf_isom_add_sample_reference
    - mp4_mux_get_sap
    - memset
    - gf_isom_add_sample
    - gf_filter_pck_dangling_copy
    - atoi
    - gf_isom_fragment_set_sample_roll_group
    - gf_filter_pck_get_seek_flag
    - gf_isom_fragment_add_sample
    - gf_filter_pck_get_frame_interface
    - gf_bs_available
    - gf_filter_pid_get_name
    - gf_isom_patch_last_sample_duration
    - gf_bs_read_u32
    - gf_isom_fragment_set_sample_rap_group
    - gf_isom_fragment_set_sample_aux_info
    - gf_isom_fragment_append_data
    - gf_isom_set_sample_references
    - gf_filter_pck_get_roll_info
    - gf_isom_set_sample_group_description
    - GF_FEVT_INIT
    - gf_isom_fragment_add_subsample
    - gf_filter_pck_get_dependency_flags
    - gf_isom_set_sample_av1_switch_frame_group
    - gf_list_add
    - gf_isom_append_sample_data
    - gf_filter_pck_get_cts
    - strncmp
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_property
    - gf_isom_add_subsample
    - gf_filter_pck_ref
    - sscanf
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_isom_fragment_append_data_ex
    - gf_filter_pck_get_crypt_flags
    - gf_isom_fragment_add_sample_ex
    - strstr
    - mp4_mux_cenc_update
    - gf_filter_pck_get_timescale
    - gf_filter_pid_get_min_pck_duration
    - gf_isom_set_sample_flags
    - gf_isom_fragment_set_sample_flags
    - gf_error_to_string
    - gf_bs_read_u8
    - gf_filter_pid_send_event
    - gf_bs_reassign_buffer
    - gf_timestamp_rescale
    - strlen
    - gf_isom_fragment_set_sample_av1_switch_frame_group
    - gf_filter_pck_is_blocking_ref
    - gf_isom_set_sample_roll_group
    - gf_timestamp_greater_or_equal
    - gf_isom_set_sample_description_restricted
    - gf_filter_pck_unref
    - gf_filter_pck_get_switch_frame
    - gf_isom_get_media_duration
    - gf_timestamp_greater
    - gf_filter_pck_get_byte_offset
    - strcmp
    - gf_isom_set_sample_rap_group
    - GF_4CC
    - gf_sys_old_arch_compat
    - gf_isom_set_last_sample_duration
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4_mux_process_sample(GF_MP4MuxCtx *ctx, TrackWriter *tkw,
      GF_FilterPacket *pck, Bool for_fragment)
  - BBCount: 90
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5554,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5559,1
    - Dst: gf_isom_get_meta_type
      Src: /src/gpac/src/filters/mux_isom.c:5564,1
    - Dst: gf_isom_set_meta_type
      Src: /src/gpac/src/filters/mux_isom.c:5566,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5568,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:5568,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/mux_isom.c:5575,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/mux_isom.c:5577,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5578,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5588,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:5592,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:5595,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5597,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5598,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/mux_isom.c:5608,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/mux_isom.c:5611,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/mux_isom.c:5615,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:5620,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/mux_isom.c:5637,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:5640,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:5645,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/mux_isom.c:5663,1
    - Dst: gf_odf_av1_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:5664,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/mux_isom.c:5685,1
    - Dst: gf_odf_iamf_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:5686,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:5698,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:5700,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/filters/mux_isom.c:5701,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:5702,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/mux_isom.c:5713,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:5717,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5732,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:5736,1
    - Dst: gf_pixel_fmt_get_uncc
      Src: /src/gpac/src/filters/mux_isom.c:5739,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:5741,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5746,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/mux_isom.c:5746,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5750,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5752,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5754,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5756,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5764,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5767,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5769,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5772,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5774,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5776,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5778,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:5781,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5786,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/mux_isom.c:5794,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:5795,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5796,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5798,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/mux_isom.c:5799,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:5800,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5806,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5808,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/mux_isom.c:5809,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:5810,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5815,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5817,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/mux_isom.c:5818,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:5819,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5824,1
    - Dst: gf_cenc_validate_key_info
      Src: /src/gpac/src/filters/mux_isom.c:5825,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5826,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/mux_isom.c:5827,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:5828,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5836,1
    - Dst: mp4_mux_cenc_insert_pssh
      Src: /src/gpac/src/filters/mux_isom.c:5844,1
    - Dst: gf_isom_get_meta_item_count
      Src: /src/gpac/src/filters/mux_isom.c:5849,1
    - Dst: gf_isom_add_meta_item_memory
      Src: /src/gpac/src/filters/mux_isom.c:5851,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/mux_isom.c:5853,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:5854,1
    - Dst: gf_isom_get_meta_item_info
      Src: /src/gpac/src/filters/mux_isom.c:5860,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5863,1
    - Dst: gf_isom_set_meta_primary_item
      Src: /src/gpac/src/filters/mux_isom.c:5865,1
    - Dst: gf_isom_get_meta_primary_item_id
      Src: /src/gpac/src/filters/mux_isom.c:5869,1
    - Dst: gf_isom_set_meta_primary_item
      Src: /src/gpac/src/filters/mux_isom.c:5870,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:5875,1
    - Dst: gf_isom_reset_alt_brands
      Src: /src/gpac/src/filters/mux_isom.c:5876,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:5880,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:5884,1
    - Dst: gf_isom_meta_add_item_ref
      Src: /src/gpac/src/filters/mux_isom.c:5886,1
    - Dst: gf_isom_meta_add_item_ref
      Src: /src/gpac/src/filters/mux_isom.c:5892,1
    CyclomaticComplexity: 102
    EdgeCount: 102
    ICount: 339
    argCount: 3
    argNames:
    - ctx
    - tkw
    - pck
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5896
      start: 5542
    functionDepth: 10
    functionLinenumber: 5542
    functionLinenumberEnd: 5896
    functionName: mp4_mux_process_item
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_get_meta_primary_item_id
    - gf_odf_av1_cfg_read
    - gf_isom_add_meta_item_memory
    - gf_bs_new
    - gf_isom_modify_alternate_brand
    - memset
    - gf_isom_get_meta_item_count
    - gf_filter_pck_get_frame_interface
    - gf_isom_set_brand_info
    - gf_odf_hevc_cfg_read
    - gf_4cc_to_str
    - gf_isom_reset_alt_brands
    - gf_isom_box_del
    - gf_isom_get_meta_type
    - gf_cenc_validate_key_info
    - gf_isom_box_new
    - gf_isom_get_meta_item_info
    - gf_odf_vvc_cfg_read
    - gf_filter_pck_get_property
    - gf_filter_pid_get_property_str
    - gf_odf_iamf_cfg_read
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_pixel_fmt_get_uncc
    - gf_filter_pck_get_crypt_flags
    - mp4_mux_cenc_insert_pssh
    - gf_odf_avc_cfg_read
    - gf_isom_box_parse
    - gf_filter_pid_get_property
    - gf_isom_meta_add_item_ref
    - gf_bs_del
    - gf_isom_set_meta_type
    - GF_4CC
    - gf_codecid_name
    - gf_isom_set_meta_primary_item
    - gf_filter_pck_get_property_str
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4_mux_process_item(GF_MP4MuxCtx *ctx, TrackWriter *tkw, GF_FilterPacket
      *pck)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_isom.c:5902,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_isom.c:5903,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_isom.c:5903,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_isom.c:5905,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/mux_isom.c:5905,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_isom.c:5910,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/mux_isom.c:5910,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/mux_isom.c:5912,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5915
      start: 5898
    functionDepth: 1
    functionLinenumber: 5898
    functionLinenumberEnd: 5915
    functionName: mp4mux_send_output
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_property
    - PROP_UINT
    - gf_filter_pck_set_framing
    - PROP_STRING_NO_COPY
    - PROP_FRAC64
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void mp4mux_send_output(GF_MP4MuxCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:5923,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/mux_isom.c:5924,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/mux_isom.c:5932,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5938
      start: 5917
    functionDepth: 1
    functionLinenumber: 5917
    functionLinenumberEnd: 5938
    functionName: mp4_mux_flush_frag_llhas
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: void
    signature: void mp4_mux_flush_frag_llhas(GF_MP4MuxCtx *ctx)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/mux_isom.c:5951,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_isom.c:5952,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/mux_isom.c:5955,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_isom.c:5960,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/mux_isom.c:5960,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/mux_isom.c:5963,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/src/filters/mux_isom.c:5964,1
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/mux_isom.c:5971,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:5972,1
    - Dst: mp4_mux_on_data
      Src: /src/gpac/src/filters/mux_isom.c:5978,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/mux_isom.c:5983,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/mux_isom.c:5985,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/filters/mux_isom.c:5986,1
    - Dst: mp4mux_send_output
      Src: /src/gpac/src/filters/mux_isom.c:5989,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/mux_isom.c:5991,1
    - Dst: mp4_mux_flush_frag_llhas
      Src: /src/gpac/src/filters/mux_isom.c:5994,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:5998,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/mux_isom.c:5999,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/mux_isom.c:6014,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:6022,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 69
    argCount: 5
    argNames:
    - ctx
    - is_init
    - idx_start_range
    - idx_end_range
    - signal_flush
    argTypes:
    - GF_MP4MuxCtx*
    - Bool
    - u64
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6029
      start: 5942
    functionDepth: 2
    functionLinenumber: 5942
    functionLinenumberEnd: 6029
    functionName: mp4_mux_flush_seg
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memset
    - gf_filter_pck_set_dependency_flags
    - gf_filter_pck_set_property
    - gf_list_get
    - gf_filter_pck_get_framing
    - GF_FEVT_INIT
    - PROP_BOOL
    - mp4_mux_on_data
    - gf_filter_pck_set_carousel_version
    - gf_filter_pck_get_data
    - gf_filter_pck_expand
    - gf_filter_pck_set_duration
    - gf_filter_pid_send_event
    - gf_malloc
    - mp4mux_send_output
    - mp4_mux_flush_frag_llhas
    - gf_filter_pid_send_flush
    - gf_filter_pck_set_framing
    - gf_base64_encode
    linkageType: ''
    returnType: void
    signature: void mp4_mux_flush_seg(GF_MP4MuxCtx *ctx, Bool is_init, u64 idx_start_range,
      u64 idx_end_range, Bool signal_flush)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6033,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - GF_MP4MuxCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6040
      start: 6031
    functionDepth: 0
    functionLinenumber: 6031
    functionLinenumberEnd: 6040
    functionName: mp4mux_check_mpd_start_time
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_property
    linkageType: ''
    returnType: void
    signature: void mp4mux_check_mpd_start_time(GF_MP4MuxCtx *ctx, GF_FilterPacket
      *pck)
  - BBCount: 80
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:6046,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:6074,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_isom.c:6078,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/mux_isom.c:6081,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/mux_isom.c:6083,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6092,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6096,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_isom.c:6097,1
    - Dst: mp4_mux_cenc_update
      Src: /src/gpac/src/filters/mux_isom.c:6104,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6107,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:6108,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/mux_isom.c:6110,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6113,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/mux_isom.c:6116,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:6137,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_isom.c:6148,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/mux_isom.c:6154,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_isom.c:6156,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_isom.c:6158,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/mux_isom.c:6159,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/mux_isom.c:6161,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/mux_isom.c:6167,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6174,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6191,1
    - Dst: mp4_mux_set_hevc_groups
      Src: /src/gpac/src/filters/mux_isom.c:6223,1
    - Dst: gf_isom_setup_track_fragment
      Src: /src/gpac/src/filters/mux_isom.c:6227,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6229,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:6229,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6235,1
    - Dst: gf_isom_setup_track_fragment_template
      Src: /src/gpac/src/filters/mux_isom.c:6237,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6239,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:6246,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/mux_isom.c:6250,1
    - Dst: mp4_mux_track_writer_del
      Src: /src/gpac/src/filters/mux_isom.c:6252,1
    - Dst: gf_isom_enable_traf_inherit
      Src: /src/gpac/src/filters/mux_isom.c:6260,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:6264,1
    - Dst: gf_isom_apply_box_patch
      Src: /src/gpac/src/filters/mux_isom.c:6266,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6268,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:6269,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6275,1
    - Dst: gf_isom_purge_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:6280,1
    - Dst: gf_isom_set_movie_duration
      Src: /src/gpac/src/filters/mux_isom.c:6289,1
    - Dst: gf_isom_set_movie_duration
      Src: /src/gpac/src/filters/mux_isom.c:6295,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/mux_isom.c:6300,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/mux_isom.c:6301,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:6303,1
    - Dst: gf_isom_set_fragment_option
      Src: /src/gpac/src/filters/mux_isom.c:6309,1
    - Dst: gf_isom_get_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:6311,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/mux_isom.c:6312,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:6312,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/mux_isom.c:6313,1
    - Dst: gf_isom_get_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6317,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/mux_isom.c:6318,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:6318,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/mux_isom.c:6319,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:6324,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6327,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6328,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6329,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6330,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6331,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6332,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6333,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6334,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6340,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6342,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6344,1
    - Dst: gf_isom_apply_box_patch
      Src: /src/gpac/src/filters/mux_isom.c:6348,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6350,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:6350,1
    - Dst: gf_isom_finalize_for_fragment
      Src: /src/gpac/src/filters/mux_isom.c:6355,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6357,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:6357,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:6363,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/mux_isom.c:6371,1
    - Dst: mp4_mux_flush_seg
      Src: /src/gpac/src/filters/mux_isom.c:6376,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_isom.c:6378,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:6381,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:6382,1
    - Dst: strchr
      Src: /src/gpac/src/filters/mux_isom.c:6384,1
    - Dst: atoi
      Src: /src/gpac/src/filters/mux_isom.c:6385,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:6386,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6391,1
    - Dst: mp4mx_setup_dash_vod
      Src: /src/gpac/src/filters/mux_isom.c:6393,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/mux_isom.c:6434,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_isom.c:6437,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:6439,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:6440,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:6441,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:6443,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_isom.c:6445,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:6446,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/mux_isom.c:6447,1
    - Dst: gf_isom_allocate_sidx
      Src: /src/gpac/src/filters/mux_isom.c:6456,1
    CyclomaticComplexity: 109
    EdgeCount: 109
    ICount: 307
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6462
      start: 6042
    functionDepth: 10
    functionLinenumber: 6042
    functionLinenumberEnd: 6462
    functionName: mp4_mux_initialize_movie
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_isom_setup_track_fragment_template
    - strcpy
    - gf_isom_modify_alternate_brand
    - gf_list_count
    - gf_isom_set_movie_duration
    - atoi
    - gf_isom_set_brand_info
    - strchr
    - gf_bs_write_u32
    - gf_filter_pid_get_packet
    - gf_isom_setup_track_fragment
    - gf_4cc_to_str
    - gf_list_get
    - gf_strdup
    - gf_isom_finalize_for_fragment
    - gf_assert
    - mp4_mux_track_writer_del
    - gf_isom_get_alternate_brand
    - strncmp
    - mp4mx_setup_dash_vod
    - gf_filter_pck_get_cts
    - gf_filter_pck_discard
    - gf_isom_set_fragment_option
    - gf_filter_pck_get_duration
    - mp4_mux_flush_seg
    - gf_filter_pck_get_property
    - gf_isom_apply_box_patch
    - gf_list_insert
    - gf_filter_pid_get_property_str
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_bs_write_data
    - mp4_mux_cenc_update
    - gf_timestamp_less
    - gf_filter_pck_get_timescale
    - gf_isom_get_brand_info
    - gf_list_del_item
    - gf_error_to_string
    - gf_filter_pid_is_eos
    - gf_isom_purge_track_reference
    - strlen
    - gf_timestamp_rescale
    - gf_isom_enable_traf_inherit
    - gf_isom_allocate_sidx
    - gf_filter_pid_get_property
    - mp4_mux_set_hevc_groups
    - gf_timestamp_greater
    - gf_filter_pck_set_framing
    - gf_bs_del
    - GF_4CC
    - gf_filter_pck_get_dts
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4_mux_initialize_movie(GF_MP4MuxCtx *ctx)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:6469,1
    - Dst: gf_isom_set_next_moof_number
      Src: /src/gpac/src/filters/mux_isom.c:6474,1
    - Dst: gf_isom_start_fragment
      Src: /src/gpac/src/filters/mux_isom.c:6483,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6485,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:6485,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6489,1
    - Dst: gf_isom_set_fragment_template
      Src: /src/gpac/src/filters/mux_isom.c:6492,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/mux_isom.c:6494,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:6503,1
    - Dst: gf_isom_set_fragment_option
      Src: /src/gpac/src/filters/mux_isom.c:6506,1
    - Dst: gf_isom_set_fragment_option
      Src: /src/gpac/src/filters/mux_isom.c:6510,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6513,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:6513,1
    - Dst: gf_isom_set_fragment_option
      Src: /src/gpac/src/filters/mux_isom.c:6520,1
    - Dst: gf_isom_set_fragment_option
      Src: /src/gpac/src/filters/mux_isom.c:6523,1
    - Dst: gf_isom_set_fragment_option
      Src: /src/gpac/src/filters/mux_isom.c:6530,1
    - Dst: gf_isom_set_fragment_option
      Src: /src/gpac/src/filters/mux_isom.c:6533,1
    - Dst: gf_isom_set_fragment_option
      Src: /src/gpac/src/filters/mux_isom.c:6536,1
    - Dst: mp4_mux_cenc_insert_pssh
      Src: /src/gpac/src/filters/mux_isom.c:6539,1
    - Dst: mp4_mux_cenc_insert_pssh
      Src: /src/gpac/src/filters/mux_isom.c:6542,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 61
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - GF_MP4MuxCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6548
      start: 6466
    functionDepth: 8
    functionLinenumber: 6466
    functionLinenumberEnd: 6548
    functionName: mp4_mux_start_fragment
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_property
    - gf_list_get
    - gf_isom_box_del
    - GF_LOG
    - gf_isom_start_fragment
    - gf_list_count
    - mp4_mux_cenc_insert_pssh
    - gf_error_to_string
    - gf_isom_set_fragment_template
    - gf_isom_set_fragment_option
    - gf_isom_set_next_moof_number
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4_mux_start_fragment(GF_MP4MuxCtx *ctx, GF_FilterPacket *pck)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/mux_isom.c:6559,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/mux_isom.c:6562,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/mux_isom.c:6566,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/mux_isom.c:6567,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6568,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/mux_isom.c:6568,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_isom.c:6572,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/mux_isom.c:6573,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/mux_isom.c:6574,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_isom.c:6577,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/mux_isom.c:6578,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/mux_isom.c:6580,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6582
      start: 6550
    functionDepth: 2
    functionLinenumber: 6550
    functionLinenumberEnd: 6582
    functionName: mp4_mux_flush_fragmented
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 1
    functionsReached:
    - gf_feof
    - gf_filter_pck_new_alloc
    - gf_fread
    - GF_LOG
    - gf_filter_pck_send
    - gf_filter_pid_set_eos
    - gf_filter_pck_set_framing
    - gf_filter_ask_rt_reschedule
    - gf_ftell
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4_mux_flush_fragmented(GF_MP4MuxCtx *ctx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:6587,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:6590,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:6595,1
    - Dst: gf_isom_apply_box_patch
      Src: /src/gpac/src/filters/mux_isom.c:6597,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6599,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:6600,1
    - Dst: gf_isom_apply_box_patch
      Src: /src/gpac/src/filters/mux_isom.c:6606,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6608,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:6608,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6612
      start: 6584
    functionDepth: 6
    functionLinenumber: 6584
    functionLinenumberEnd: 6612
    functionName: mp4mx_frag_box_patch
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_isom_apply_box_patch
    - gf_list_get
    - gf_filter_pid_get_property_str
    - GF_LOG
    - gf_list_count
    - gf_error_to_string
    linkageType: ''
    returnType: void
    signature: void mp4mx_frag_box_patch(GF_MP4MuxCtx *ctx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:6621,1
    - Dst: mp4_mux_done
      Src: /src/gpac/src/filters/mux_isom.c:6625,1
    - Dst: mp4_mux_initialize
      Src: /src/gpac/src/filters/mux_isom.c:6630,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:6635,1
    - Dst: mp4_mux_configure_pid
      Src: /src/gpac/src/filters/mux_isom.c:6641,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_isom.c:6652,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_isom.c:6656,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_isom.c:6658,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 39
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6662
      start: 6618
    functionDepth: 13
    functionLinenumber: 6618
    functionLinenumberEnd: 6662
    functionName: mp4mx_reload_output
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_assert
    - mp4_mux_initialize
    - gf_strdup
    - gf_list_count
    - mp4_mux_configure_pid
    - mp4_mux_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4mx_reload_output(GF_MP4MuxCtx *ctx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:6669,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/mux_isom.c:6672,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:6674,1
    - Dst: gf_id3_from_bitstream
      Src: /src/gpac/src/filters/mux_isom.c:6675,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6677,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:6677,1
    - Dst: gf_id3_tag_free
      Src: /src/gpac/src/filters/mux_isom.c:6678,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:6679,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/mux_isom.c:6683,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_isom.c:6690,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_isom.c:6691,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/mux_isom.c:6693,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_isom.c:6694,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:6698,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:6700,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/mux_isom.c:6703,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/mux_isom.c:6703,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/mux_isom.c:6705,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/mux_isom.c:6714,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_isom.c:6715,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/mux_isom.c:6717,1
    - Dst: gf_id3_tag_free
      Src: /src/gpac/src/filters/mux_isom.c:6720,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:6723,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 3
    argNames:
    - moof
    - emsg_prop
    - id_sequence
    argTypes:
    - GF_MovieFragmentBox*
    - GF_PropertyValue*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6724
      start: 6665
    functionDepth: 4
    functionLinenumber: 6665
    functionLinenumberEnd: 6724
    functionName: mp4_process_id3
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - memcmp
    - gf_bs_new
    - gf_list_count
    - memset
    - gf_id3_tag_free
    - gf_strdup
    - gf_bs_read_u32
    - gf_list_get
    - gf_list_new
    - gf_isom_box_del
    - memcpy
    - gf_list_add
    - gf_isom_box_new
    - gf_id3_from_bitstream
    - GF_LOG
    - gf_error_to_string
    - gf_malloc
    - gf_bs_del
    - strcmp
    linkageType: ''
    returnType: void
    signature: void mp4_process_id3(GF_MovieFragmentBox *moof, const GF_PropertyValue
      *emsg_prop, u32 id_sequence)
  - BBCount: 128
    BranchProfiles: []
    Callsites:
    - Dst: mp4_mux_flush_fragmented
      Src: /src/gpac/src/filters/mux_isom.c:6734,1
    - Dst: mp4_mux_initialize_movie
      Src: /src/gpac/src/filters/mux_isom.c:6742,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:6748,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:6756,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_isom.c:6775,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/mux_isom.c:6782,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/mux_isom.c:6789,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/mux_isom.c:6792,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_isom.c:6799,1
    - Dst: gf_isom_start_segment
      Src: /src/gpac/src/filters/mux_isom.c:6818,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_isom.c:6821,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6824,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_isom.c:6829,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6834,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_isom.c:6835,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6839,1
    - Dst: gf_isom_start_segment
      Src: /src/gpac/src/filters/mux_isom.c:6847,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6861,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6868,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_isom.c:6869,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6877,1
    - Dst: mp4_mux_start_fragment
      Src: /src/gpac/src/filters/mux_isom.c:6886,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:6892,1
    - Dst: gf_isom_set_emsg
      Src: /src/gpac/src/filters/mux_isom.c:6894,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:6903,1
    - Dst: mp4_process_id3
      Src: /src/gpac/src/filters/mux_isom.c:6906,1
    - Dst: mp4mux_check_mpd_start_time
      Src: /src/gpac/src/filters/mux_isom.c:6915,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6931,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:6933,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_isom.c:6934,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6936,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:6938,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_isom.c:6939,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6943,1
    - Dst: gf_isom_set_fragment_reference_time
      Src: /src/gpac/src/filters/mux_isom.c:6945,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6946,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/mux_isom.c:6946,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/mux_isom.c:6946,1
    - Dst: gf_isom_set_fragment_reference_time
      Src: /src/gpac/src/filters/mux_isom.c:6948,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6949,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/mux_isom.c:6949,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/mux_isom.c:6949,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_isom.c:6954,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6961,1
    - Dst: gf_isom_set_fragment_reference_time
      Src: /src/gpac/src/filters/mux_isom.c:6963,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6964,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/mux_isom.c:6964,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/mux_isom.c:6964,1
    - Dst: gf_isom_set_fragment_reference_time
      Src: /src/gpac/src/filters/mux_isom.c:6966,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6967,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/mux_isom.c:6967,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/mux_isom.c:6967,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/mux_isom.c:6971,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:6983,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/mux_isom.c:6991,1
    - Dst: mp4_mux_get_sap
      Src: /src/gpac/src/filters/mux_isom.c:6992,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/mux_isom.c:6993,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/mux_isom.c:6998,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7007,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7011,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/mux_isom.c:7016,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7022,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/mux_isom.c:7035,1
    - Dst: mp4_mux_get_sap
      Src: /src/gpac/src/filters/mux_isom.c:7037,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7047,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:7054,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7060,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_isom.c:7067,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_isom.c:7069,1
    - Dst: gf_isom_set_traf_base_media_decode_time
      Src: /src/gpac/src/filters/mux_isom.c:7084,1
    - Dst: gf_isom_set_traf_base_media_decode_time
      Src: /src/gpac/src/filters/mux_isom.c:7086,1
    - Dst: mp4_mux_get_sap
      Src: /src/gpac/src/filters/mux_isom.c:7093,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_isom.c:7099,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_isom.c:7100,1
    - Dst: gf_isom_set_fragment_option
      Src: /src/gpac/src/filters/mux_isom.c:7107,1
    - Dst: mp4_mux_process_sample
      Src: /src/gpac/src/filters/mux_isom.c:7113,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:7115,1
    - Dst: gf_isom_set_fragment_original_duration
      Src: /src/gpac/src/filters/mux_isom.c:7117,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_isom.c:7121,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7123,1
    - Dst: gf_isom_start_fragment
      Src: /src/gpac/src/filters/mux_isom.c:7137,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:7139,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:7139,1
    - Dst: gf_isom_set_next_moof_number
      Src: /src/gpac/src/filters/mux_isom.c:7142,1
    - Dst: gf_isom_set_fragment_option
      Src: /src/gpac/src/filters/mux_isom.c:7145,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7172,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7173,1
    - Dst: mp4mx_frag_box_patch
      Src: /src/gpac/src/filters/mux_isom.c:7181,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/mux_isom.c:7199,1
    - Dst: gf_isom_close_segment
      Src: /src/gpac/src/filters/mux_isom.c:7203,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:7211,1
    - Dst: mp4_mux_flush_seg
      Src: /src/gpac/src/filters/mux_isom.c:7220,1
    - Dst: mp4_mux_flush_seg
      Src: /src/gpac/src/filters/mux_isom.c:7222,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/mux_isom.c:7227,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_isom.c:7229,1
    - Dst: mp4_mux_flush_seg
      Src: /src/gpac/src/filters/mux_isom.c:7235,1
    - Dst: gf_isom_flush_fragments
      Src: /src/gpac/src/filters/mux_isom.c:7241,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:7246,1
    - Dst: mp4_mux_on_data
      Src: /src/gpac/src/filters/mux_isom.c:7252,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:7254,1
    - Dst: mp4_mux_flush_frag_llhas
      Src: /src/gpac/src/filters/mux_isom.c:7263,1
    - Dst: mp4_mux_flush_seg
      Src: /src/gpac/src/filters/mux_isom.c:7267,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:7281,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/mux_isom.c:7282,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/mux_isom.c:7283,1
    - Dst: mp4mx_reload_output
      Src: /src/gpac/src/filters/mux_isom.c:7290,1
    - Dst: gf_isom_flush_sidx
      Src: /src/gpac/src/filters/mux_isom.c:7299,1
    - Dst: gf_isom_flush_sidx
      Src: /src/gpac/src/filters/mux_isom.c:7304,1
    - Dst: mp4mux_send_output
      Src: /src/gpac/src/filters/mux_isom.c:7306,1
    - Dst: mp4_mux_flush_seg
      Src: /src/gpac/src/filters/mux_isom.c:7308,1
    - Dst: gf_fflush
      Src: /src/gpac/src/filters/mux_isom.c:7310,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/mux_isom.c:7311,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/mux_isom.c:7313,1
    - Dst: mp4_mux_flush_seg
      Src: /src/gpac/src/filters/mux_isom.c:7319,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:7324,1
    - Dst: gf_isom_close
      Src: /src/gpac/src/filters/mux_isom.c:7334,1
    - Dst: mp4mux_send_output
      Src: /src/gpac/src/filters/mux_isom.c:7339,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/mux_isom.c:7341,1
    CyclomaticComplexity: 199
    EdgeCount: 199
    ICount: 494
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7349
      start: 6727
    functionDepth: 14
    functionLinenumber: 6727
    functionLinenumberEnd: 7349
    functionName: mp4_mux_process_fragmented
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_set_emsg
    - gf_list_count
    - mp4_mux_get_sap
    - memset
    - gf_fflush
    - mp4_mux_flush_fragmented
    - gf_isom_set_traf_base_media_decode_time
    - gf_isom_flush_sidx
    - gf_isom_set_next_moof_number
    - gf_filter_pid_get_packet
    - mp4_mux_initialize_movie
    - gf_realloc
    - gf_list_get
    - gf_strdup
    - gf_assert
    - gf_list_pop_back
    - mp4mx_reload_output
    - gf_isom_box_del
    - gf_fseek
    - gf_isom_flush_fragments
    - gf_isom_start_fragment
    - gf_filter_pck_get_cts
    - gf_filter_pck_discard
    - gf_isom_set_fragment_option
    - gf_net_get_utc
    - gf_filter_pck_get_duration
    - gf_isom_close_segment
    - mp4_mux_process_sample
    - mp4_mux_flush_seg
    - mp4_mux_on_data
    - gf_filter_pck_get_property
    - gf_ftell
    - gf_isom_close
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_property_str
    - gf_isom_start_segment
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_isom_set_fragment_original_duration
    - mp4_mux_start_fragment
    - gf_error_to_string
    - gf_filter_pid_is_eos
    - gf_sys_clock_high_res
    - gf_timestamp_rescale
    - mp4mux_send_output
    - gf_timestamp_greater_or_equal
    - mp4_mux_flush_frag_llhas
    - gf_isom_set_fragment_reference_time
    - gf_filter_pck_unref
    - gf_filter_pid_is_flush_eos
    - mp4mx_frag_box_patch
    - mp4_process_id3
    - gf_filter_pck_get_dts
    - mp4mux_check_mpd_start_time
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4_mux_process_fragmented(GF_MP4MuxCtx *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:7361,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:7362,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:7366,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_isom.c:7372,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - services
    - tkw
    argTypes:
    - GF_List*
    - TrackWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7374
      start: 7358
    functionDepth: 1
    functionLinenumber: 7358
    functionLinenumberEnd: 7374
    functionName: get_service_info
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_add
    - gf_filter_pid_get_property
    linkageType: ''
    returnType: struct _service_info
    signature: struct _service_info *get_service_info(GF_List *services, TrackWriter
      *tkw)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:7377,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/mux_isom.c:7378,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:7379,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/mux_isom.c:7381,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - services
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7382
      start: 7375
    functionDepth: 3
    functionLinenumber: 7375
    functionLinenumberEnd: 7382
    functionName: del_service_info
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_pop_back
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void del_service_info(GF_List *services)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7387,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:7394,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7397,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/filters/mux_isom.c:7399,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/filters/mux_isom.c:7401,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/filters/mux_isom.c:7402,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - tkw
    - min_ts_service
    - skip_adjust
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7405
      start: 7384
    functionDepth: 8
    functionLinenumber: 7384
    functionLinenumberEnd: 7405
    functionName: mp4_mux_update_init_edit
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 1
    functionsReached:
    - gf_isom_set_edit
    - gf_isom_remove_edits
    - gf_sys_old_arch_compat
    - gf_timestamp_rescale
    linkageType: ''
    returnType: void
    signature: void mp4_mux_update_init_edit(GF_MP4MuxCtx *ctx, TrackWriter *tkw,
      u64 min_ts_service, Bool skip_adjust)
  - BBCount: 47
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/mux_isom.c:7413,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:7418,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:7424,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:7425,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:7434,1
    - Dst: get_service_info
      Src: /src/gpac/src/filters/mux_isom.c:7437,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7441,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_isom.c:7449,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/mux_isom.c:7452,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:7453,1
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/src/filters/mux_isom.c:7462,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/mux_isom.c:7465,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/mux_isom.c:7466,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_isom.c:7468,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_isom.c:7475,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_isom.c:7482,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_isom.c:7484,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/mux_isom.c:7488,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_isom.c:7489,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/mux_isom.c:7506,1
    - Dst: mp4_mux_cenc_update
      Src: /src/gpac/src/filters/mux_isom.c:7508,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:7512,1
    - Dst: gf_isom_setup_track_fragment_template
      Src: /src/gpac/src/filters/mux_isom.c:7514,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/mux_isom.c:7519,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/mux_isom.c:7538,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_isom.c:7542,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_isom.c:7544,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7548,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_isom.c:7564,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:7571,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:7572,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:7584,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/mux_isom.c:7587,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:7588,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/mux_isom.c:7593,1
    - Dst: del_service_info
      Src: /src/gpac/src/filters/mux_isom.c:7594,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/mux_isom.c:7597,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:7602,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:7603,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:7610,1
    - Dst: get_service_info
      Src: /src/gpac/src/filters/mux_isom.c:7611,1
    - Dst: mp4_mux_update_init_edit
      Src: /src/gpac/src/filters/mux_isom.c:7618,1
    - Dst: del_service_info
      Src: /src/gpac/src/filters/mux_isom.c:7622,1
    CyclomaticComplexity: 69
    EdgeCount: 69
    ICount: 175
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7623
      start: 7407
    functionDepth: 10
    functionLinenumber: 7407
    functionLinenumberEnd: 7623
    functionName: mp4_mux_config_timing
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_isom_setup_track_fragment_template
    - del_service_info
    - gf_list_find
    - mp4_mux_update_init_edit
    - gf_list_count
    - gf_filter_pck_get_seek_flag
    - gf_filter_pid_get_packet
    - gf_sys_clock
    - gf_list_new
    - gf_list_get
    - gf_filter_pck_get_cts
    - gf_filter_pck_discard
    - gf_filter_ask_rt_reschedule
    - gf_filter_pid_drop_packet
    - GF_LOG
    - mp4_mux_cenc_update
    - gf_timestamp_less
    - gf_filter_pck_get_sap
    - gf_filter_pid_is_eos
    - gf_timestamp_rescale
    - gf_filter_pid_get_property
    - gf_filter_pck_is_blocking_ref
    - get_service_info
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: void
    signature: void mp4_mux_config_timing(GF_MP4MuxCtx *ctx)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/mux_isom.c:7630,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/mux_isom.c:7638,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/mux_isom.c:7645,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/mux_isom.c:7653,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/mux_isom.c:7656,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:7658,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/mux_isom.c:7665,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/mux_isom.c:7667,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/mux_isom.c:7670,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/mux_isom.c:7672,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:7675,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/filters/mux_isom.c:7680,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/mux_isom.c:7709,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/mux_isom.c:7710,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/mux_isom.c:7713,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/mux_isom.c:7714,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/mux_isom.c:7717,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/mux_isom.c:7718,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/mux_isom.c:7723,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:7725,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 87
    argCount: 3
    argNames:
    - ctx
    - done
    - total
    argTypes:
    - GF_MP4MuxCtx*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7726
      start: 7625
    functionDepth: 5
    functionLinenumber: 7625
    functionLinenumberEnd: 7726
    functionName: mp4_mux_format_report
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_filter_update_status
    - sprintf
    - gf_list_count
    - gf_isom_get_media_duration
    - gf_filter_reporting_enabled
    - gf_dynstrcat
    linkageType: ''
    returnType: void
    signature: void mp4_mux_format_report(GF_MP4MuxCtx *ctx, u64 done, u64 total)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_isom.c:7732,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:7733,1
    - Dst: mp4_mux_config_timing
      Src: /src/gpac/src/filters/mux_isom.c:7738,1
    - Dst: mp4_mux_format_report
      Src: /src/gpac/src/filters/mux_isom.c:7740,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/src/filters/mux_isom.c:7749,1
    - Dst: mp4_mux_flush_seg_events
      Src: /src/gpac/src/filters/mux_isom.c:7754,1
    - Dst: mp4_mux_process_fragmented
      Src: /src/gpac/src/filters/mux_isom.c:7756,1
    - Dst: mp4_mux_format_report
      Src: /src/gpac/src/filters/mux_isom.c:7758,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:7769,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_isom.c:7770,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/mux_isom.c:7781,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/mux_isom.c:7781,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_isom.c:7799,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:7806,1
    - Dst: mp4mux_check_mpd_start_time
      Src: /src/gpac/src/filters/mux_isom.c:7808,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:7812,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_isom.c:7813,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:7821,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_isom.c:7832,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/mux_isom.c:7842,1
    - Dst: mp4_mux_cenc_update
      Src: /src/gpac/src/filters/mux_isom.c:7849,1
    - Dst: mp4_mux_process_item
      Src: /src/gpac/src/filters/mux_isom.c:7852,1
    - Dst: mp4_mux_process_sample
      Src: /src/gpac/src/filters/mux_isom.c:7854,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_isom.c:7857,1
    - Dst: mp4_mux_format_report
      Src: /src/gpac/src/filters/mux_isom.c:7863,1
    - Dst: mp4mx_reload_output
      Src: /src/gpac/src/filters/mux_isom.c:7866,1
    - Dst: mp4_mux_done
      Src: /src/gpac/src/filters/mux_isom.c:7871,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:7882,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/filters/mux_isom.c:7886,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 131
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7890
      start: 7730
    functionDepth: 15
    functionLinenumber: 7730
    functionLinenumberEnd: 7890
    functionName: mp4_mux_process
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_connections_pending
    - gf_set_progress
    - gf_list_count
    - mp4_mux_process_fragmented
    - gf_filter_pid_get_packet
    - gf_list_get
    - gf_strdup
    - mp4mx_reload_output
    - mp4_mux_flush_seg_events
    - gf_filter_pck_get_cts
    - mp4_mux_process_sample
    - gf_filter_get_udta
    - gf_filter_pck_get_property
    - gf_filter_pid_drop_packet
    - mp4_mux_process_item
    - mp4_mux_format_report
    - mp4_mux_cenc_update
    - gf_filter_pid_is_eos
    - gf_timestamp_greater
    - gf_filter_pid_is_flush_eos
    - mp4_mux_config_timing
    - mp4_mux_done
    - mp4mux_check_mpd_start_time
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4_mux_process(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/mux_isom.c:7897,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_isom.c:7900,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_isom.c:7901,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/mux_isom.c:7902,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/mux_isom.c:7904,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/mux_isom.c:7905,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/mux_isom.c:7906,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 5
    argNames:
    - cbk
    - data
    - block_size
    - file_offset
    - is_insert
    argTypes:
    - void*
    - u8*
    - u32
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7908
      start: 7892
    functionDepth: 1
    functionLinenumber: 7892
    functionLinenumberEnd: 7908
    functionName: mp4_mux_on_data_patch
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_new_alloc
    - memcpy
    - gf_filter_pck_set_interlaced
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_set_framing
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4_mux_on_data_patch(void *cbk, u8 *data, u32 block_size, u64
      file_offset, Bool is_insert)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: mp4_mux_flush_frag_llhas
      Src: /src/gpac/src/filters/mux_isom.c:7913,1
    - Dst: mp4_mux_flush_seg
      Src: /src/gpac/src/filters/mux_isom.c:7917,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7933
      start: 7910
    functionDepth: 3
    functionLinenumber: 7910
    functionLinenumberEnd: 7933
    functionName: mp4_mux_flush_seg_events
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 1
    functionsReached:
    - mp4_mux_flush_frag_llhas
    - mp4_mux_flush_seg
    linkageType: ''
    returnType: void
    signature: void mp4_mux_flush_seg_events(GF_MP4MuxCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_isom.c:7937,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/mux_isom.c:7940,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - filter
    - PID
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7941
      start: 7935
    functionDepth: 1
    functionLinenumber: 7935
    functionLinenumberEnd: 7941
    functionName: mp4_mux_on_packet_destruct
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_post_process_task
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void mp4_mux_on_packet_destruct(GF_Filter *filter, GF_FilterPid *PID,
      GF_FilterPacket *pck)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - cbk
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7951
      start: 7943
    functionDepth: 0
    functionLinenumber: 7943
    functionLinenumberEnd: 7951
    functionName: mp4_mux_on_last_block_start
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void mp4_mux_on_last_block_start(void *cbk)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: mp4mux_send_output
      Src: /src/gpac/src/filters/mux_isom.c:7962,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/mux_isom.c:7969,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_isom.c:7972,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_isom.c:7973,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/mux_isom.c:7974,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/mux_isom.c:7975,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/mux_isom.c:7976,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/mux_isom.c:7977,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_isom.c:7980,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:7983,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/mux_isom.c:7987,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_isom.c:7990,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/mux_isom.c:7991,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/mux_isom.c:7992,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:7993,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:7995,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:7996,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/mux_isom.c:7997,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_isom.c:7999,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:8000,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/mux_isom.c:8001,1
    - Dst: mp4_mux_flush_seg
      Src: /src/gpac/src/filters/mux_isom.c:8003,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/mux_isom.c:8008,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8010,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/mux_isom.c:8017,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8018,1
    - Dst: gf_filter_pck_new_ref_destructor
      Src: /src/gpac/src/filters/mux_isom.c:8024,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/mux_isom.c:8026,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/mux_isom.c:8028,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:8029,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/mux_isom.c:8029,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/mux_isom.c:8029,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/mux_isom.c:8030,1
    - Dst: gf_filter_pck_new_alloc_destructor
      Src: /src/gpac/src/filters/mux_isom.c:8034,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/mux_isom.c:8036,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_isom.c:8041,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_isom.c:8043,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_isom.c:8048,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_isom.c:8048,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_isom.c:8049,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_isom.c:8049,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_isom.c:8051,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/mux_isom.c:8051,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_isom.c:8054,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_isom.c:8054,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/mux_isom.c:8059,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/mux_isom.c:8062,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/mux_isom.c:8066,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/mux_isom.c:8068,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_isom.c:8073,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_isom.c:8073,1
    - Dst: mp4mux_send_output
      Src: /src/gpac/src/filters/mux_isom.c:8082,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 99
    argCount: 5
    argNames:
    - cbk
    - data
    - block_size
    - cbk_data
    - cbk_magic
    argTypes:
    - void*
    - u8*
    - u32
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8085
      start: 7953
    functionDepth: 7
    functionLinenumber: 7953
    functionLinenumberEnd: 8085
    functionName: mp4_mux_on_data
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 2
    functionsReached:
    - gf_filter_pck_new_ref
    - gf_bs_new
    - PROP_STRING
    - gf_list_find
    - gf_fwrite
    - PROP_FRAC64
    - gf_bs_write_u32
    - gf_filter_pck_set_byte_offset
    - gf_assert
    - gf_filter_pck_set_property
    - memcpy
    - gf_filter_pck_new_alloc_destructor
    - mp4_mux_flush_seg
    - gf_filter_pck_get_duration
    - gf_bs_skip_bytes
    - gf_filter_pck_new_alloc
    - gf_filter_pck_new_ref_destructor
    - gf_filter_pck_set_interlaced
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_bs_write_data
    - gf_filter_pck_get_timescale
    - gf_list_del_item
    - gf_timestamp_rescale
    - mp4mux_send_output
    - PROP_UINT
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_set_framing
    - gf_bs_del
    - gf_filter_pck_unref
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4_mux_on_data(void *cbk, u8 *data, u32 block_size, void *cbk_data,
      u32 cbk_magic)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_isom.c:8090,1
    - Dst: mp4_mux_format_report
      Src: /src/gpac/src/filters/mux_isom.c:8092,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - udta
    - done
    - total
    argTypes:
    - void*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8093
      start: 8087
    functionDepth: 6
    functionLinenumber: 8087
    functionLinenumberEnd: 8093
    functionName: mp4_mux_progress_cbk
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - mp4_mux_format_report
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void mp4_mux_progress_cbk(void *udta, u64 done, u64 total)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_isom.c:8097,1
    - Dst: gf_filter_set_max_extra_input_pids
      Src: /src/gpac/src/filters/mux_isom.c:8098,1
    - Dst: time
      Src: /src/gpac/src/filters/mux_isom.c:8100,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8107,1
    - Dst: gf_isom_get_mode
      Src: /src/gpac/src/filters/mux_isom.c:8112,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8114,1
    - Dst: gf_filter_act_as_sink
      Src: /src/gpac/src/filters/mux_isom.c:8118,1
    - Dst: gf_isom_open
      Src: /src/gpac/src/filters/mux_isom.c:8129,1
    - Dst: gf_isom_set_write_callback
      Src: /src/gpac/src/filters/mux_isom.c:8132,1
    - Dst: gf_isom_set_progress_callback
      Src: /src/gpac/src/filters/mux_isom.c:8134,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8137,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8141,1
    - Dst: gf_isom_set_storage_mode
      Src: /src/gpac/src/filters/mux_isom.c:8146,1
    - Dst: gf_isom_enable_mfra
      Src: /src/gpac/src/filters/mux_isom.c:8169,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/mux_isom.c:8175,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/mux_isom.c:8178,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:8186,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:8187,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8189,1
    - Dst: gf_isom_enable_compression
      Src: /src/gpac/src/filters/mux_isom.c:8196,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 99
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8228
      start: 8095
    functionDepth: 5
    functionLinenumber: 8095
    functionLinenumberEnd: 8228
    functionName: mp4_mux_initialize
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 1
    functionsReached:
    - gf_isom_enable_mfra
    - gf_list_new
    - gf_isom_get_mode
    - GF_LOG
    - gf_filter_act_as_sink
    - gf_isom_enable_compression
    - gf_isom_open
    - gf_isom_set_write_callback
    - gf_isom_set_storage_mode
    - gf_isom_set_progress_callback
    - GF_4CC
    - gf_filter_set_max_extra_input_pids
    - time
    - strlen
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4_mux_initialize(GF_Filter *filter)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_edit_list_type
      Src: /src/gpac/src/filters/mux_isom.c:8239,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/filters/mux_isom.c:8241,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/filters/mux_isom.c:8248,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/src/filters/mux_isom.c:8249,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:8251,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/filters/mux_isom.c:8254,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:8258,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:8260,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:8261,1
    - Dst: ABS
      Src: /src/gpac/src/filters/mux_isom.c:8263,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/filters/mux_isom.c:8267,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 22
    argCount: 3
    argNames:
    - ctx
    - tkw
    - ctts_mode
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8269
      start: 8231
    functionDepth: 8
    functionLinenumber: 8231
    functionLinenumberEnd: 8269
    functionName: mp4_mux_update_edit_list_for_bframes
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_sample_duration
    - ABS
    - gf_isom_remove_edits
    - gf_isom_get_sample_count
    - gf_isom_set_edit
    - gf_isom_get_edit_list_type
    - gf_sys_old_arch_compat
    - gf_timestamp_rescale
    linkageType: ''
    returnType: void
    signature: void mp4_mux_update_edit_list_for_bframes(GF_MP4MuxCtx *ctx, TrackWriter
      *tkw, u32 ctts_mode)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/filters/mux_isom.c:8282,1
    - Dst: gf_isom_remove_sample_group
      Src: /src/gpac/src/filters/mux_isom.c:8285,1
    - Dst: gf_isom_add_sample_group_info
      Src: /src/gpac/src/filters/mux_isom.c:8286,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/filters/mux_isom.c:8288,1
    - Dst: gf_isom_remove_sample_group
      Src: /src/gpac/src/filters/mux_isom.c:8291,1
    - Dst: gf_isom_add_sample_group_info
      Src: /src/gpac/src/filters/mux_isom.c:8292,1
    - Dst: gf_isom_set_track_group
      Src: /src/gpac/src/filters/mux_isom.c:8293,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/mux_isom.c:8293,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/filters/mux_isom.c:8296,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/mux_isom.c:8299,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/mux_isom.c:8305,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/filters/mux_isom.c:8306,1
    - Dst: gf_isom_is_media_encrypted
      Src: /src/gpac/src/filters/mux_isom.c:8307,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/src/filters/mux_isom.c:8308,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8319,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8329,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8332,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8338,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/mux_isom.c:8340,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:8341,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/mux_isom.c:8344,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:8345,1
    - Dst: gf_isom_remove_sample_group
      Src: /src/gpac/src/filters/mux_isom.c:8346,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 59
    argCount: 2
    argNames:
    - ctx
    - tkw
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8349
      start: 8275
    functionDepth: 6
    functionLinenumber: 8275
    functionLinenumberEnd: 8349
    functionName: mp4_mux_set_hevc_groups
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_get_info_str
    - GF_LOG
    - gf_isom_get_media_subtype
    - gf_isom_get_original_format_type
    - gf_isom_is_media_encrypted
    - gf_isom_get_track_count
    - gf_isom_add_sample_group_info
    - gf_isom_set_track_group
    - gf_isom_get_track_id
    - gf_filter_release_property
    - gf_isom_remove_sample_group
    - gf_isom_set_track_reference
    linkageType: ''
    returnType: void
    signature: void mp4_mux_set_hevc_groups(GF_MP4MuxCtx *ctx, TrackWriter *tkw)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:8361,1
    - Dst: gf_isom_set_ctts_v1
      Src: /src/gpac/src/filters/mux_isom.c:8367,1
    - Dst: gf_isom_set_cts_packing
      Src: /src/gpac/src/filters/mux_isom.c:8371,1
    - Dst: gf_isom_shift_cts_offset
      Src: /src/gpac/src/filters/mux_isom.c:8372,1
    - Dst: gf_isom_set_cts_packing
      Src: /src/gpac/src/filters/mux_isom.c:8373,1
    - Dst: gf_isom_set_composition_offset_mode
      Src: /src/gpac/src/filters/mux_isom.c:8374,1
    - Dst: mp4_mux_update_edit_list_for_bframes
      Src: /src/gpac/src/filters/mux_isom.c:8376,1
    - Dst: mp4_mux_update_edit_list_for_bframes
      Src: /src/gpac/src/filters/mux_isom.c:8380,1
    - Dst: gf_isom_update_edit_list_duration
      Src: /src/gpac/src/filters/mux_isom.c:8384,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/filters/mux_isom.c:8389,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:8405,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:8406,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:8411,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/filters/mux_isom.c:8413,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/filters/mux_isom.c:8415,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/filters/mux_isom.c:8416,1
    - Dst: gf_isom_force_ctts
      Src: /src/gpac/src/filters/mux_isom.c:8421,1
    - Dst: gf_isom_purge_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:8424,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/filters/mux_isom.c:8427,1
    - Dst: gf_isom_get_track_duration
      Src: /src/gpac/src/filters/mux_isom.c:8428,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8430,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8432,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8444,1
    - Dst: gf_m4v_get_profile_name
      Src: /src/gpac/src/filters/mux_isom.c:8444,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8449,1
    - Dst: gf_m4v_get_profile_name
      Src: /src/gpac/src/filters/mux_isom.c:8449,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/filters/mux_isom.c:8455,1
    - Dst: gf_m4v_rewrite_pl
      Src: /src/gpac/src/filters/mux_isom.c:8457,1
    - Dst: gf_isom_change_mpeg4_description
      Src: /src/gpac/src/filters/mux_isom.c:8458,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/mux_isom.c:8459,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/filters/mux_isom.c:8465,1
    - Dst: gf_isom_refresh_size_info
      Src: /src/gpac/src/filters/mux_isom.c:8471,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:8474,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/src/filters/mux_isom.c:8475,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8480,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:8482,1
    - Dst: mp4_mux_set_hevc_groups
      Src: /src/gpac/src/filters/mux_isom.c:8485,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/filters/mux_isom.c:8487,1
    - Dst: gf_isom_remove_sample
      Src: /src/gpac/src/filters/mux_isom.c:8489,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/filters/mux_isom.c:8491,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:8495,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/src/filters/mux_isom.c:8497,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/mux_isom.c:8499,1
    - Dst: gf_isom_set_forced_text
      Src: /src/gpac/src/filters/mux_isom.c:8501,1
    - Dst: gf_isom_get_mode
      Src: /src/gpac/src/filters/mux_isom.c:8504,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/src/filters/mux_isom.c:8507,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/mux_isom.c:8508,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/filters/mux_isom.c:8509,1
    - Dst: gf_isom_get_nalu_length_field
      Src: /src/gpac/src/filters/mux_isom.c:8516,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8522,1
    - Dst: gf_media_nal_rewrite_samples
      Src: /src/gpac/src/filters/mux_isom.c:8523,1
    - Dst: gf_isom_set_nalu_length_field
      Src: /src/gpac/src/filters/mux_isom.c:8526,1
    - Dst: gf_media_update_bitrate
      Src: /src/gpac/src/filters/mux_isom.c:8534,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:8537,1
    - Dst: gf_isom_apply_box_patch
      Src: /src/gpac/src/filters/mux_isom.c:8539,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8541,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:8542,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/mux_isom.c:8548,1
    CyclomaticComplexity: 61
    EdgeCount: 61
    ICount: 146
    argCount: 2
    argNames:
    - ctx
    - tkw
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8549
      start: 8351
    functionDepth: 10
    functionLinenumber: 8351
    functionLinenumberEnd: 8549
    functionName: mp4_mux_done_track
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_get_info
    - gf_isom_remove_sample
    - gf_odf_desc_del
    - gf_isom_modify_alternate_brand
    - gf_isom_set_nalu_length_field
    - gf_isom_set_pl_indication
    - gf_isom_set_ctts_v1
    - gf_m4v_rewrite_pl
    - gf_media_update_bitrate
    - mp4_mux_update_edit_list_for_bframes
    - gf_media_nal_rewrite_samples
    - gf_isom_get_track_duration
    - gf_isom_get_mode
    - gf_isom_set_edit
    - gf_isom_set_composition_offset_mode
    - gf_filter_release_property
    - gf_m4v_get_profile_name
    - gf_isom_shift_cts_offset
    - gf_isom_set_forced_text
    - gf_isom_apply_box_patch
    - gf_filter_pid_get_property_str
    - gf_get_bit_size
    - GF_LOG
    - gf_isom_remove_edits
    - gf_isom_get_esd
    - gf_isom_update_edit_list_duration
    - gf_error_to_string
    - gf_isom_purge_track_reference
    - gf_isom_refresh_size_info
    - gf_timestamp_rescale
    - gf_isom_get_nalu_length_field
    - gf_filter_pid_get_property
    - gf_filter_pid_get_info_str
    - gf_isom_change_mpeg4_description
    - mp4_mux_set_hevc_groups
    - gf_isom_get_media_duration
    - gf_isom_force_ctts
    - gf_isom_set_cts_packing
    - gf_isom_set_last_sample_duration
    - gf_isom_get_sample_description_count
    linkageType: ''
    returnType: void
    signature: void mp4_mux_done_track(GF_MP4MuxCtx *ctx, TrackWriter *tkw)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:8557,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:8559,1
    - Dst: mp4_mux_done_track
      Src: /src/gpac/src/filters/mux_isom.c:8560,1
    - Dst: gf_isom_apply_box_patch
      Src: /src/gpac/src/filters/mux_isom.c:8564,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8566,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:8566,1
    - Dst: gf_isom_set_inplace_padding
      Src: /src/gpac/src/filters/mux_isom.c:8574,1
    - Dst: gf_isom_set_storage_mode
      Src: /src/gpac/src/filters/mux_isom.c:8579,1
    - Dst: gf_isom_make_interleave_ex
      Src: /src/gpac/src/filters/mux_isom.c:8582,1
    - Dst: gf_isom_set_storage_mode
      Src: /src/gpac/src/filters/mux_isom.c:8586,1
    - Dst: gf_isom_set_storage_mode
      Src: /src/gpac/src/filters/mux_isom.c:8589,1
    - Dst: gf_isom_set_storage_mode
      Src: /src/gpac/src/filters/mux_isom.c:8592,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8596,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:8596,1
    - Dst: gf_isom_delete
      Src: /src/gpac/src/filters/mux_isom.c:8597,1
    - Dst: gf_isom_close
      Src: /src/gpac/src/filters/mux_isom.c:8599,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8601,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:8601,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/mux_isom.c:8606,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 51
    argCount: 2
    argNames:
    - ctx
    - is_final
    argTypes:
    - GF_MP4MuxCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8611
      start: 8552
    functionDepth: 11
    functionLinenumber: 8552
    functionLinenumberEnd: 8611
    functionName: mp4_mux_done
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 4
    functionsReached:
    - gf_isom_apply_box_patch
    - gf_list_get
    - gf_isom_close
    - gf_isom_delete
    - gf_isom_make_interleave_ex
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_list_count
    - gf_isom_set_inplace_padding
    - gf_error_to_string
    - mp4_mux_done_track
    - gf_isom_set_storage_mode
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4_mux_done(GF_MP4MuxCtx *ctx, Bool is_final)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_isom.c:8615,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8620,1
    - Dst: gf_isom_delete
      Src: /src/gpac/src/filters/mux_isom.c:8622,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:8625,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/mux_isom.c:8626,1
    - Dst: mp4_mux_track_writer_del
      Src: /src/gpac/src/filters/mux_isom.c:8627,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/mux_isom.c:8629,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:8631,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/mux_isom.c:8632,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/mux_isom.c:8633,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/mux_isom.c:8635,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:8636,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:8637,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:8638,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/mux_isom.c:8639,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:8640,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:8642,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 27
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8643
      start: 8613
    functionDepth: 5
    functionLinenumber: 8613
    functionLinenumberEnd: 8643
    functionName: mp4_mux_finalize
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_list_pop_back
    - gf_isom_delete
    - GF_LOG
    - mp4_mux_track_writer_del
    - gf_list_count
    - gf_filter_pck_unref
    - gf_bs_del
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void mp4_mux_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8668
      start: 8667
    functionDepth: 0
    functionLinenumber: 8667
    functionLinenumberEnd: 8668
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8934
      start: 8931
    functionDepth: 0
    functionLinenumber: 8931
    functionLinenumberEnd: 8934
    functionName: mp4mx_register
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *mp4mx_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8939
      start: 8936
    functionDepth: 0
    functionLinenumber: 8936
    functionLinenumberEnd: 8939
    functionName: mp4mx_register
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *mp4mx_register(GF_FilterSession *session)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:234,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/reframer.c:235,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframer.c:236,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/reframer.c:239,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframer.c:241,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframer.c:243,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframer.c:249,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 3
    argNames:
    - ctx
    - st
    - do_free
    argTypes:
    - GF_ReframerCtx*
    - RTStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 231
    functionDepth: 2
    functionLinenumber: 231
    functionLinenumberEnd: 250
    functionName: reframer_reset_stream
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_front
    - gf_filter_pck_unref
    - gf_list_count
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void reframer_reset_stream(GF_ReframerCtx *ctx, RTStream *st, Bool
      do_free)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_reset_properties
      Src: /src/gpac/src/filters/reframer.c:254,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframer.c:255,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframer.c:258,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframer.c:261,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframer.c:261,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframer.c:265,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframer.c:265,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/reframer.c:268,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/reframer.c:269,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframer.c:269,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 13
    argCount: 2
    argNames:
    - ctx
    - st
    argTypes:
    - GF_ReframerCtx*
    - RTStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 271
    functionName: reframer_push_props
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_reset_properties
    - gf_filter_pid_set_property_str
    - PROP_BOOL
    - gf_sys_old_arch_compat
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: void
    signature: void reframer_push_props(GF_ReframerCtx *ctx, RTStream *st)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframer.c:277,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/reframer.c:278,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/reframer.c:283,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/reframer.c:284,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/reframer.c:286,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/reframer.c:288,1
    - Dst: reframer_reset_stream
      Src: /src/gpac/src/filters/reframer.c:289,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/reframer.c:293,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/reframer.c:297,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/reframer.c:300,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframer.c:301,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/reframer.c:302,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/reframer.c:303,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframer.c:305,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:311,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:320,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:329,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:336,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/reframer.c:337,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:338,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:340,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:343,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:356,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:368,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:382,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/reframer.c:384,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframer.c:384,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframer.c:394,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframer.c:394,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframer.c:398,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframer.c:398,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/reframer.c:405,1
    - Dst: reframer_push_props
      Src: /src/gpac/src/filters/reframer.c:425,1
    - Dst: gf_filter_pid_push_properties
      Src: /src/gpac/src/filters/reframer.c:428,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 139
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 273
    functionDepth: 3
    functionLinenumber: 273
    functionLinenumberEnd: 432
    functionName: reframer_configure_pid
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_filter_pid_check_caps
    - gf_filter_pid_set_udta
    - gf_filter_pid_new
    - gf_list_new
    - gf_list_add
    - PROP_BOOL
    - gf_audio_fmt_bit_depth
    - gf_filter_get_udta
    - reframer_push_props
    - gf_filter_pid_negotiate_property
    - gf_list_del_item
    - gf_filter_pid_set_property
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_get_udta
    - reframer_reset_stream
    - gf_filter_pid_push_properties
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err reframer_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframer.c:446,1
    - Dst: strlen
      Src: /src/gpac/src/filters/reframer.c:448,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/reframer.c:450,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/reframer.c:465,1
    - Dst: strchr
      Src: /src/gpac/src/filters/reframer.c:474,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/reframer.c:475,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/reframer.c:477,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/reframer.c:479,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/reframer.c:486,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/reframer.c:488,1
    - Dst: atoi
      Src: /src/gpac/src/filters/reframer.c:501,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframer.c:504,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframer.c:504,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/reframer.c:517,1
    - Dst: strchr
      Src: /src/gpac/src/filters/reframer.c:520,1
    - Dst: atof
      Src: /src/gpac/src/filters/reframer.c:521,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/reframer.c:526,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/reframer.c:536,1
    - Dst: strchr
      Src: /src/gpac/src/filters/reframer.c:542,1
    - Dst: gf_net_parse_date
      Src: /src/gpac/src/filters/reframer.c:543,1
    - Dst: gf_parse_lfrac
      Src: /src/gpac/src/filters/reframer.c:548,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:553,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 111
    argCount: 7
    argNames:
    - ctx
    - date
    - value
    - frame_idx_plus_one
    - extract_mode
    - is_dur
    - as_timecode
    argTypes:
    - GF_ReframerCtx*
    - char*
    - GF_Fraction64*
    - u64*
    - u32*
    - Bool*
    - GF_TimeCode**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 557
      start: 434
    functionDepth: 3
    functionLinenumber: 434
    functionLinenumberEnd: 557
    functionName: reframer_parse_date
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_free
    - sscanf
    - GF_SAFEALLOC
    - atof
    - GF_LOG
    - gf_parse_lfrac
    - strcmp
    - atoi
    - gf_props_parse_value
    - gf_net_parse_date
    - strchr
    - strlen
    linkageType: ''
    returnType: Bool
    signature: Bool reframer_parse_date(GF_ReframerCtx *ctx, char *date, GF_Fraction64
      *value, u64 *frame_idx_plus_one, u32 *extract_mode, Bool *is_dur, GF_TimeCode
      **as_timecode)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: reframer_parse_date
      Src: /src/gpac/src/filters/reframer.c:618,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:619,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:655,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:677,1
    - Dst: reframer_parse_date
      Src: /src/gpac/src/filters/reframer.c:689,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:690,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:697,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/reframer.c:701,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:702,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:725,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:727,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframer.c:734,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframer.c:735,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframer.c:736,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframer.c:739,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:750,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:752,1
    - Dst: reframer_push_props
      Src: /src/gpac/src/filters/reframer.c:754,1
    - Dst: gf_filter_pid_push_properties
      Src: /src/gpac/src/filters/reframer.c:755,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/reframer.c:756,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/reframer.c:756,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:765,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:768,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/reframer.c:769,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframer.c:770,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframer.c:771,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframer.c:772,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 181
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_ReframerCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 774
      start: 559
    functionDepth: 4
    functionLinenumber: 559
    functionLinenumberEnd: 774
    functionName: reframer_load_range
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_set_discard
    - reframer_push_props
    - reframer_parse_date
    - GF_LOG
    - gf_timestamp_greater_or_equal
    - PROP_STRING
    - GF_FEVT_INIT
    - gf_filter_pid_set_property_str
    - gf_filter_pid_set_eos
    - gf_list_count
    - gf_filter_pid_send_event
    - gf_timestamp_rescale
    - gf_filter_pid_push_properties
    linkageType: ''
    returnType: void
    signature: void reframer_load_range(GF_ReframerCtx *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/reframer.c:779,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframer.c:780,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframer.c:782,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - st
    - pck
    - pck_is_ref
    argTypes:
    - GF_ReframerCtx*
    - RTStream*
    - GF_FilterPacket*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 784
      start: 776
    functionDepth: 1
    functionLinenumber: 776
    functionLinenumberEnd: 784
    functionName: reframer_drop_packet
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_drop_packet
    - gf_list_rem
    - gf_filter_pck_unref
    linkageType: ''
    returnType: void
    signature: void reframer_drop_packet(GF_ReframerCtx *ctx, RTStream *st, GF_FilterPacket
      *pck, Bool pck_is_ref)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframer.c:793,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframer.c:796,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 6
    argNames:
    - st
    - src
    - src_size
    - offset
    - dst
    - nb_samp
    argTypes:
    - RTStream*
    - u8*
    - u32
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 798
      start: 786
    functionDepth: 0
    functionLinenumber: 786
    functionLinenumberEnd: 798
    functionName: reframer_copy_raw_audio
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: void
    signature: void reframer_copy_raw_audio(RTStream *st, const u8 *src, u32 src_size,
      u32 offset, u8 *dst, u32 nb_samp)
  - BBCount: 97
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:808,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:810,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:818,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:849,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:850,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:864,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:874,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:885,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframer.c:920,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframer.c:924,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframer.c:925,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframer.c:926,1
    - Dst: gf_filter_pck_new_copy
      Src: /src/gpac/src/filters/reframer.c:949,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframer.c:952,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframer.c:953,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframer.c:954,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframer.c:955,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframer.c:956,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/reframer.c:957,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframer.c:958,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/reframer.c:959,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframer.c:969,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframer.c:973,1
    - Dst: reframer_copy_raw_audio
      Src: /src/gpac/src/filters/reframer.c:975,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:977,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/reframer.c:979,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/reframer.c:983,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframer.c:991,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:994,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframer.c:997,1
    - Dst: reframer_copy_raw_audio
      Src: /src/gpac/src/filters/reframer.c:1000,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/reframer.c:1009,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/reframer.c:1012,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1013,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframer.c:1013,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/reframer.c:1017,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframer.c:1020,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:1024,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframer.c:1028,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1046,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframer.c:1046,1
    - Dst: strchr
      Src: /src/gpac/src/filters/reframer.c:1048,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/reframer.c:1054,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/reframer.c:1056,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1058,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/reframer.c:1058,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/reframer.c:1061,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/reframer.c:1063,1
    - Dst: strlen
      Src: /src/gpac/src/filters/reframer.c:1065,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1075,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/reframer.c:1075,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1078,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframer.c:1078,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/reframer.c:1085,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/reframer.c:1087,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1089,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/reframer.c:1089,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:1092,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframer.c:1094,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframer.c:1094,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframer.c:1099,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:1104,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/reframer.c:1109,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/reframer.c:1111,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1112,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/reframer.c:1114,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/reframer.c:1115,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:1116,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1117,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframer.c:1117,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/reframer.c:1118,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:1126,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:1129,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:1134,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1135,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframer.c:1135,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframer.c:1138,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframer.c:1140,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:1144,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:1149,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframer.c:1150,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/reframer.c:1156,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframer.c:1160,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:1167,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframer.c:1169,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/reframer.c:1176,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframer.c:1182,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/reframer.c:1187,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/reframer.c:1190,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1192,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframer.c:1192,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:1198,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:1199,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:1202,1
    - Dst: assert
      Src: /src/gpac/src/filters/reframer.c:1206,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/reframer.c:1212,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/reframer.c:1217,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/reframer.c:1224,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframer.c:1230,1
    - Dst: gf_filter_pck_new_copy
      Src: /src/gpac/src/filters/reframer.c:1232,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/reframer.c:1232,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframer.c:1234,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/reframer.c:1236,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/reframer.c:1239,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1241,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframer.c:1241,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframer.c:1243,1
    - Dst: reframer_drop_packet
      Src: /src/gpac/src/filters/reframer.c:1247,1
    CyclomaticComplexity: 135
    EdgeCount: 135
    ICount: 357
    argCount: 5
    argNames:
    - filter
    - ctx
    - st
    - pck
    - pck_is_ref
    argTypes:
    - GF_Filter*
    - GF_ReframerCtx*
    - RTStream*
    - GF_FilterPacket*
    - Bool
    assertStmts:
    - condition: (ctx->ts_tc_offset.den == st->timescale)
      pos:
        line_end: 1205
        line_start: 1205
        source_file: /src/gpac/src/filters/reframer.c
    constantsTouched: []
    func_position:
      end: 1257
      start: 800
    functionDepth: 7
    functionLinenumber: 800
    functionLinenumberEnd: 1257
    functionName: reframer_send_packet
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - reframer_copy_raw_audio
    - gf_filter_pck_new_ref
    - gf_bs_new
    - PROP_STRING
    - gf_list_count
    - gf_bs_write_u32
    - strchr
    - gf_list_get
    - gf_bs_read_u32
    - gf_filter_pck_set_property
    - GF_FEVT_INIT
    - sprintf
    - gf_filter_pck_get_cts
    - PROP_BOOL
    - gf_dynstrcat
    - gf_filter_pck_discard
    - gf_filter_pck_get_duration
    - reframer_drop_packet
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_filter_pck_set_duration
    - assert
    - gf_filter_pid_set_eos
    - gf_timestamp_less
    - gf_filter_pid_send_event
    - gf_filter_pck_get_sap
    - gf_filter_pid_set_property
    - gf_timestamp_rescale
    - strlen
    - PROP_UINT
    - gf_bs_seek
    - gf_filter_pid_get_property
    - gf_filter_pck_set_cts
    - gf_filter_pck_new_copy
    - gf_filter_pck_set_dts
    - gf_filter_pck_merge_properties
    - gf_filter_pck_set_seek_flag
    - gf_timestamp_greater_or_equal
    - gf_bs_del
    - gf_timestamp_greater
    - PROP_STRING_NO_COPY
    - gf_filter_pck_get_dts
    - gf_filter_pck_send
    linkageType: ''
    returnType: Bool
    signature: Bool reframer_send_packet(GF_Filter *filter, GF_ReframerCtx *ctx, RTStream
      *st, GF_FilterPacket *pck, Bool pck_is_ref)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/reframer.c:1282,1
    - Dst: gf_net_ntp_to_utc
      Src: /src/gpac/src/filters/reframer.c:1284,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/reframer.c:1290,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/reframer.c:1300,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/reframer.c:1307,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/reframer.c:1308,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/reframer.c:1310,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:1312,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:1314,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/reframer.c:1324,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/reframer.c:1340,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/reframer.c:1342,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/reframer.c:1344,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/reframer.c:1345,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:1347,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/reframer.c:1352,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/reframer.c:1353,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:1355,1
    - Dst: gf_timestamp_less_or_equal
      Src: /src/gpac/src/filters/reframer.c:1373,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/reframer.c:1376,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/reframer.c:1382,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/reframer.c:1384,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:1385,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:1387,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/reframer.c:1394,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/reframer.c:1396,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:1398,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:1400,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 125
    argCount: 8
    argNames:
    - filter
    - ctx
    - st
    - pck
    - ts
    - dur
    - frame_idx
    - nb_audio_samples_to_keep
    argTypes:
    - GF_Filter*
    - GF_ReframerCtx*
    - RTStream*
    - GF_FilterPacket*
    - u64
    - u32
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1418
      start: 1259
    functionDepth: 1
    functionLinenumber: 1259
    functionLinenumberEnd: 1418
    functionName: reframer_check_pck_range
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_property
    - gf_filter_update_status
    - gf_timestamp_rescale_signed
    - GF_LOG
    - sprintf
    - gf_timestamp_greater
    - gf_timestamp_less
    - gf_filter_reporting_enabled
    - gf_timestamp_less_or_equal
    - gf_net_ntp_to_utc
    - gf_net_get_utc
    - gf_timestamp_rescale
    - gf_sys_clock
    linkageType: ''
    returnType: u32
    signature: u32 reframer_check_pck_range(GF_Filter *filter, GF_ReframerCtx *ctx,
      RTStream *st, GF_FilterPacket *pck, u64 ts, u32 dur, u32 frame_idx, u32 *nb_audio_samples_to_keep)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:1422,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1424,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1434,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:1436,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:1438,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/reframer.c:1440,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/reframer.c:1442,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframer.c:1443,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 3
    argNames:
    - ctx
    - ts
    - timescale
    argTypes:
    - GF_ReframerCtx*
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1447
      start: 1420
    functionDepth: 1
    functionLinenumber: 1420
    functionLinenumberEnd: 1447
    functionName: reframer_purge_queues
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pck_unref
    - gf_list_count
    - gf_filter_pck_get_cts
    - gf_list_rem
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: void
    signature: void reframer_purge_queues(GF_ReframerCtx *ctx, u64 ts, u32 timescale)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:1454,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1462,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:1463,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1467,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframer.c:1468,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/reframer.c:1470,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/reframer.c:1474,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - status
    argTypes:
    - GF_ReframerCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1475
      start: 1452
    functionDepth: 1
    functionLinenumber: 1452
    functionLinenumberEnd: 1475
    functionName: reframer_dump_mem
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pck_get_data
    - gf_list_count
    - gf_filter_pck_get_sap
    - fprintf
    linkageType: ''
    returnType: void
    signature: void reframer_dump_mem(GF_ReframerCtx *ctx, char *status)
  - BBCount: 63
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:1481,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1499,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:1500,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1515,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1517,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/reframer.c:1519,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:1522,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:1524,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/reframer.c:1561,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/reframer.c:1568,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/reframer.c:1573,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1590,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/reframer.c:1594,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/reframer.c:1596,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:1598,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:1600,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/reframer.c:1603,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1632,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/reframer.c:1637,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:1639,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:1641,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/reframer.c:1644,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1661,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:1662,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1667,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:1669,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:1671,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/reframer.c:1675,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframer.c:1681,1
    - Dst: reframer_dump_mem
      Src: /src/gpac/src/filters/reframer.c:1706,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1713,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1714,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:1719,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:1721,1
    - Dst: ABS
      Src: /src/gpac/src/filters/reframer.c:1764,1
    - Dst: ABS
      Src: /src/gpac/src/filters/reframer.c:1764,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:1779,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1789,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1790,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:1802,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:1804,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframer.c:1810,1
    CyclomaticComplexity: 100
    EdgeCount: 100
    ICount: 244
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_ReframerCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1816
      start: 1479
    functionDepth: 2
    functionLinenumber: 1479
    functionLinenumberEnd: 1816
    functionName: check_gop_split
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - ABS
    - gf_assert
    - reframer_dump_mem
    - gf_filter_pck_get_data
    - gf_timestamp_greater_or_equal
    - GF_LOG
    - gf_timestamp_greater
    - gf_list_count
    - gf_timestamp_less
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_sap
    - gf_filter_pck_get_duration
    - gf_list_last
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: void
    signature: void check_gop_split(GF_ReframerCtx *ctx)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframer.c:2915,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframer.c:2917,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:2920,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/reframer.c:2929,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/reframer.c:2930,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:2932,1
    - Dst: reframer_load_range
      Src: /src/gpac/src/filters/reframer.c:2937,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:2940,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/reframer.c:2947,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/reframer.c:2947,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/reframer.c:2950,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/reframer.c:2950,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/reframer.c:2953,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/reframer.c:2953,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 38
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2959
      start: 2912
    functionDepth: 5
    functionLinenumber: 2912
    functionLinenumberEnd: 2959
    functionName: reframer_initialize
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_strdup
    - gf_filter_override_caps
    - GF_LOG
    - GF_ARRAY_LENGTH
    - reframer_load_range
    - gf_malloc
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err reframer_initialize(GF_Filter *filter)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframer.c:2963,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/reframer.c:2967,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/reframer.c:3008,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/reframer.c:3010,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/reframer.c:3011,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframer.c:3020,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 50
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3022
      start: 2961
    functionDepth: 1
    functionLinenumber: 2961
    functionLinenumberEnd: 3022
    functionName: reframer_process_event
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - gf_filter_get_ipid
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool reframer_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframer.c:3026,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:3028,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/reframer.c:3029,1
    - Dst: reframer_reset_stream
      Src: /src/gpac/src/filters/reframer.c:3030,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/reframer.c:3032,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframer.c:3034,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframer.c:3036,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3037
      start: 3024
    functionDepth: 3
    functionLinenumber: 3024
    functionLinenumberEnd: 3037
    functionName: reframer_finalize
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_list_count
    - reframer_reset_stream
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void reframer_finalize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframer.c:3042,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframer.c:3042,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframer.c:3043,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:3044,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:3046,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - filter
    - arg_name
    - new_val
    argTypes:
    - GF_Filter*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3052
      start: 3039
    functionDepth: 1
    functionLinenumber: 3039
    functionLinenumberEnd: 3052
    functionName: reframer_update_arg
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err reframer_update_arg(GF_Filter *filter, const char *arg_name,
      const GF_PropertyValue *new_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3070
      start: 3069
    functionDepth: 0
    functionLinenumber: 3069
    functionLinenumberEnd: 3070
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3253
      start: 3250
    functionDepth: 0
    functionLinenumber: 3250
    functionLinenumberEnd: 3253
    functionName: reframer_register
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *reframer_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3258
      start: 3255
    functionDepth: 0
    functionLinenumber: 3255
    functionLinenumberEnd: 3258
    functionName: reframer_register
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *reframer_register(GF_FilterSession *session)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_id3_tag_free
      Src: /src/gpac/src/filters/dmx_m2ts.c:124,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_m2ts.c:126,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - prop
    argTypes:
    - GF_M2TS_Prop*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 127
    functionName: m2tsdmx_prop_free
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_id3_tag_free
    linkageType: ''
    returnType: void
    signature: void m2tsdmx_prop_free(GF_M2TS_Prop *prop)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:137,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_m2ts.c:178,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:181,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_m2ts.c:183,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:184,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/dmx_m2ts.c:184,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:185,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_m2ts.c:185,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 49
    argCount: 2
    argNames:
    - ctx
    - stream
    argTypes:
    - GF_M2TSDmxCtx*
    - GF_M2TS_ES*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 188
    functionName: m2tsdmx_estimate_duration
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - PROP_BOOL
    - gf_filter_pid_get_property
    - gf_filter_get_opid_count
    - GF_LOG
    - gf_filter_get_opid
    - PROP_FRAC64
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: void
    signature: void m2tsdmx_estimate_duration(GF_M2TSDmxCtx *ctx, GF_M2TS_ES *stream)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_m2ts.c:193,1
    - Dst: m2tsdmx_estimate_duration
      Src: /src/gpac/src/filters/dmx_m2ts.c:198,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - ts
    - evt_type
    - param
    argTypes:
    - GF_M2TS_Demuxer*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 190
    functionDepth: 2
    functionLinenumber: 190
    functionLinenumberEnd: 200
    functionName: m2tsdmx_on_event_duration_probe
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - m2tsdmx_estimate_duration
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void m2tsdmx_on_event_duration_probe(GF_M2TS_Demuxer *ts, u32 evt_type,
      void *param)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:204,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:207,1
    - Dst: gf_m2ts_get_sdt_info
      Src: /src/gpac/src/filters/dmx_m2ts.c:208,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:211,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:213,1
    - Dst: isalnum
      Src: /src/gpac/src/filters/dmx_m2ts.c:218,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/dmx_m2ts.c:218,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/dmx_m2ts.c:219,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_m2ts.c:219,1
    - Dst: isalnum
      Src: /src/gpac/src/filters/dmx_m2ts.c:221,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/dmx_m2ts.c:221,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/dmx_m2ts.c:222,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_m2ts.c:222,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 16
    argCount: 2
    argNames:
    - ts
    - for_pid
    argTypes:
    - GF_M2TS_Demuxer*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 225
    functionName: m2tsdmx_update_sdt
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_set_info
    - PROP_STRING
    - gf_sys_is_test_mode
    - gf_list_count
    - isalnum
    - gf_m2ts_get_sdt_info
    linkageType: ''
    returnType: void
    signature: void m2tsdmx_update_sdt(GF_M2TS_Demuxer *ts, void *for_pid)
  - BBCount: 102
    BranchProfiles: []
    Callsites:
    - Dst: gf_codecid_type
      Src: /src/gpac/src/filters/dmx_m2ts.c:244,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_m2ts.c:248,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dmx_m2ts.c:248,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:402,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:404,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_m2ts.c:447,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_m2ts.c:484,1
    - Dst: gf_m2ts_set_pes_framing
      Src: /src/gpac/src/filters/dmx_m2ts.c:487,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_m2ts.c:490,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:498,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_m2ts.c:499,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:500,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_m2ts.c:507,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filters/dmx_m2ts.c:523,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_m2ts.c:524,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dmx_m2ts.c:524,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dmx_m2ts.c:525,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:527,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:527,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:528,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:528,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_m2ts.c:531,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:536,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:536,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:537,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:537,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:538,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:538,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:539,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:539,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:541,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/dmx_m2ts.c:541,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:543,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_m2ts.c:543,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:545,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:545,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:549,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:549,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:550,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:550,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:552,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_m2ts.c:552,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:553,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_m2ts.c:553,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:554,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_m2ts.c:554,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:557,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:557,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:558,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:558,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:560,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:561,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:564,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:564,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:565,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:565,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_m2ts.c:569,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_m2ts.c:570,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:571,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:571,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_m2ts.c:572,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_m2ts.c:573,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_m2ts.c:574,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:575,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:575,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/filters/dmx_m2ts.c:576,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:577,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/dmx_m2ts.c:577,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_m2ts.c:578,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:579,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:579,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_m2ts.c:580,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_m2ts.c:582,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:584,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/dmx_m2ts.c:584,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dmx_m2ts.c:585,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:588,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_m2ts.c:591,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:592,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:592,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_m2ts.c:593,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:594,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:594,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_m2ts.c:596,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:597,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:597,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_m2ts.c:598,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:599,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:599,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_m2ts.c:601,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:604,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_m2ts.c:604,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:606,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:606,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:616,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_m2ts.c:616,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_m2ts.c:625,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_m2ts.c:628,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_m2ts.c:632,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:635,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:639,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:639,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:640,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:640,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:641,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:641,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_m2ts.c:641,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_m2ts.c:647,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:649,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_m2ts.c:649,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:657,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/dmx_m2ts.c:657,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:660,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/dmx_m2ts.c:660,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:664,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/dmx_m2ts.c:664,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:665,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:665,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:666,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_m2ts.c:666,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:671,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:671,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:673,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_m2ts.c:673,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:676,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:677,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:682,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/dmx_m2ts.c:682,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_m2ts.c:686,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_m2ts.c:688,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:690,1
    - Dst: PROP_4CC
      Src: /src/gpac/src/filters/dmx_m2ts.c:690,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:692,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:696,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_m2ts.c:696,1
    - Dst: gf_m2ts_set_pes_framing
      Src: /src/gpac/src/filters/dmx_m2ts.c:698,1
    - Dst: m2tsdmx_update_sdt
      Src: /src/gpac/src/filters/dmx_m2ts.c:703,1
    - Dst: gf_m2ts_set_pes_framing
      Src: /src/gpac/src/filters/dmx_m2ts.c:705,1
    CyclomaticComplexity: 104
    EdgeCount: 104
    ICount: 429
    argCount: 3
    argNames:
    - ctx
    - stream
    - esd
    argTypes:
    - GF_M2TSDmxCtx*
    - GF_M2TS_PES*
    - GF_ESD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 227
    functionDepth: 7
    functionLinenumber: 227
    functionLinenumberEnd: 706
    functionName: m2tsdmx_declare_pid
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - PROP_STRING
    - gf_list_find
    - gf_list_count
    - PROP_STRING_NO_COPY
    - PROP_DATA
    - PROP_FRAC64
    - gf_filter_pid_new
    - gf_stream_type_name
    - gf_4cc_to_str
    - gf_list_get
    - gf_bs_read_u32
    - gf_bs_read_utf8
    - gf_strdup
    - memcpy
    - gf_m2ts_set_pes_framing
    - sprintf
    - PROP_4CC
    - PROP_BOOL
    - gf_bs_skip_bytes
    - GF_LOG
    - gf_bs_get_position
    - m2tsdmx_update_sdt
    - gf_codecid_type
    - gf_bs_read_u8
    - gf_filter_pid_set_property
    - gf_malloc
    - gf_filter_pid_get_property
    - gf_filter_get_opid_count
    - PROP_UINT
    - gf_bs_del
    - gf_filter_get_opid
    - GF_4CC
    - gf_filter_pid_set_name
    linkageType: ''
    returnType: void
    signature: void m2tsdmx_declare_pid(GF_M2TSDmxCtx *ctx, GF_M2TS_PES *stream, GF_ESD
      *esd)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:710,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:712,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:719,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:721,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:724,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:724,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 19
    argCount: 2
    argNames:
    - ctx
    - prog
    argTypes:
    - GF_M2TSDmxCtx*
    - GF_M2TS_Program*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 708
    functionDepth: 1
    functionLinenumber: 708
    functionLinenumberEnd: 730
    functionName: m2tsdmx_setup_scte35
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - PROP_UINT
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: void
    signature: void m2tsdmx_setup_scte35(GF_M2TSDmxCtx *ctx, GF_M2TS_Program *prog)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:736,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:738,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:751,1
    - Dst: gf_m2ts_set_pes_framing
      Src: /src/gpac/src/filters/dmx_m2ts.c:752,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:759,1
    - Dst: m2tsdmx_declare_pid
      Src: /src/gpac/src/filters/dmx_m2ts.c:763,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:765,1
    - Dst: m2tsdmx_setup_scte35
      Src: /src/gpac/src/filters/dmx_m2ts.c:772,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 34
    argCount: 2
    argNames:
    - ctx
    - prog
    argTypes:
    - GF_M2TSDmxCtx*
    - GF_M2TS_Program*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 773
      start: 732
    functionDepth: 8
    functionLinenumber: 732
    functionLinenumberEnd: 773
    functionName: m2tsdmx_setup_program
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_m2ts_set_pes_framing
    - gf_list_count
    - m2tsdmx_setup_scte35
    - m2tsdmx_declare_pid
    linkageType: ''
    returnType: void
    signature: void m2tsdmx_setup_program(GF_M2TSDmxCtx *ctx, GF_M2TS_Program *prog)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:782,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dmx_m2ts.c:783,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dmx_m2ts.c:788,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:792,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_m2ts.c:792,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dmx_m2ts.c:797,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_m2ts.c:802,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_m2ts.c:806,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_m2ts.c:810,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_m2ts.c:811,1
    - Dst: gf_filter_pck_set_property_dyn
      Src: /src/gpac/src/filters/dmx_m2ts.c:816,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/dmx_m2ts.c:816,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_m2ts.c:819,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dmx_m2ts.c:823,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_m2ts.c:826,1
    - Dst: gf_id3_list_to_bitstream
      Src: /src/gpac/src/filters/dmx_m2ts.c:828,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_m2ts.c:830,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_m2ts.c:830,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dmx_m2ts.c:836,1
    - Dst: gf_filter_pck_set_property_dyn
      Src: /src/gpac/src/filters/dmx_m2ts.c:837,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/dmx_m2ts.c:837,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_m2ts.c:840,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dmx_m2ts.c:841,1
    - Dst: gf_id3_tag_free
      Src: /src/gpac/src/filters/dmx_m2ts.c:843,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_m2ts.c:844,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dmx_m2ts.c:845,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_m2ts.c:847,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_m2ts.c:850,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 52
    argCount: 3
    argNames:
    - pid
    - stream
    - pck
    argTypes:
    - GF_FilterPid*
    - GF_M2TS_ES*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 853
      start: 775
    functionDepth: 9
    functionLinenumber: 775
    functionLinenumberEnd: 853
    functionName: m2tdmx_merge_props
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_filter_pck_set_property_dyn
    - snprintf
    - gf_bs_new
    - gf_list_pop_front
    - GF_LOG
    - gf_id3_list_to_bitstream
    - gf_bs_get_content
    - gf_bs_del
    - gf_list_count
    - gf_id3_tag_free
    - PROP_DATA_NO_COPY
    - gf_list_add
    - gf_error_to_string
    - PROP_BOOL
    - gf_filter_pid_set_property
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void m2tdmx_merge_props(GF_FilterPid *pid, GF_M2TS_ES *stream, GF_FilterPacket
      *pck)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_m2ts.c:862,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_m2ts.c:866,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 3
    argNames:
    - ctx
    - prog
    - inTS
    argTypes:
    - GF_M2TSDmxCtx*
    - GF_M2TS_Program*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 870
      start: 855
    functionDepth: 1
    functionLinenumber: 855
    functionLinenumberEnd: 870
    functionName: m2tsdmx_translate_ts
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE m2tsdmx_translate_ts(GF_M2TSDmxCtx *ctx, GF_M2TS_Program *prog,
      u64 inTS)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_media_nalu_next_start_code
      Src: /src/gpac/src/filters/dmx_m2ts.c:906,1
    - Dst: gf_media_nalu_next_start_code
      Src: /src/gpac/src/filters/dmx_m2ts.c:908,1
    - Dst: gf_media_nalu_next_start_code
      Src: /src/gpac/src/filters/dmx_m2ts.c:910,1
    - Dst: gf_media_vc1_seq_header_to_dsi
      Src: /src/gpac/src/filters/dmx_m2ts.c:922,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:924,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/dmx_m2ts.c:924,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_m2ts.c:937,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_m2ts.c:939,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dmx_m2ts.c:941,1
    - Dst: m2tsdmx_translate_ts
      Src: /src/gpac/src/filters/dmx_m2ts.c:947,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_m2ts.c:948,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:950,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:950,1
    - Dst: m2tsdmx_translate_ts
      Src: /src/gpac/src/filters/dmx_m2ts.c:953,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dmx_m2ts.c:954,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:956,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:956,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_m2ts.c:958,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/dmx_m2ts.c:965,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:966,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:966,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:973,1
    - Dst: PROP_DOUBLE
      Src: /src/gpac/src/filters/dmx_m2ts.c:973,1
    - Dst: m2tdmx_merge_props
      Src: /src/gpac/src/filters/dmx_m2ts.c:978,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:982,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_m2ts.c:982,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:995,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/dmx_m2ts.c:995,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_m2ts.c:997,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 90
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - GF_M2TSDmxCtx*
    - GF_M2TS_PES_PCK*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 999
      start: 872
    functionDepth: 10
    functionLinenumber: 872
    functionLinenumberEnd: 999
    functionName: m2tsdmx_send_packet
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - m2tdmx_merge_props
    - m2tsdmx_translate_ts
    - gf_timestamp_rescale_signed
    - PROP_DATA_NO_COPY
    - gf_media_nalu_next_start_code
    - PROP_LONGUINT
    - gf_filter_pck_set_property
    - memcpy
    - PROP_BOOL
    - PROP_DOUBLE
    - gf_filter_pck_new_alloc
    - PROP_FRAC64_INT
    - gf_filter_pck_set_sap
    - gf_filter_pid_set_property
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_media_vc1_seq_header_to_dsi
    - gf_filter_pck_set_framing
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void m2tsdmx_send_packet(GF_M2TSDmxCtx *ctx, GF_M2TS_PES_PCK *pck)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1004,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:1006,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1007,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:1009,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - m4sys_es_id
    argTypes:
    - GF_M2TSDmxCtx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1014
      start: 1001
    functionDepth: 1
    functionLinenumber: 1001
    functionLinenumberEnd: 1014
    functionName: m2tsdmx_get_m4sys_stream
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_M2TS_ES
    signature: GF_M2TS_ES *m2tsdmx_get_m4sys_stream(GF_M2TSDmxCtx *ctx, u32 m4sys_es_id)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_sl_depacketize
      Src: /src/gpac/src/filters/dmx_m2ts.c:1030,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_m2ts.c:1033,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_m2ts.c:1037,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_m2ts.c:1040,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dmx_m2ts.c:1044,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dmx_m2ts.c:1048,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_m2ts.c:1051,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_m2ts.c:1054,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/src/filters/dmx_m2ts.c:1056,1
    - Dst: m2tdmx_merge_props
      Src: /src/gpac/src/filters/dmx_m2ts.c:1058,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:1061,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_m2ts.c:1061,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:1065,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/dmx_m2ts.c:1065,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_m2ts.c:1067,1
    - Dst: gf_odf_codec_new
      Src: /src/gpac/src/filters/dmx_m2ts.c:1080,1
    - Dst: gf_odf_codec_set_au
      Src: /src/gpac/src/filters/dmx_m2ts.c:1082,1
    - Dst: gf_odf_codec_decode
      Src: /src/gpac/src/filters/dmx_m2ts.c:1083,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1084,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:1087,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1091,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:1093,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_m2ts.c:1095,1
    - Dst: m2tsdmx_get_m4sys_stream
      Src: /src/gpac/src/filters/dmx_m2ts.c:1096,1
    - Dst: m2tsdmx_declare_pid
      Src: /src/gpac/src/filters/dmx_m2ts.c:1099,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_m2ts.c:1107,1
    - Dst: m2tsdmx_get_m4sys_stream
      Src: /src/gpac/src/filters/dmx_m2ts.c:1108,1
    - Dst: m2tsdmx_declare_pid
      Src: /src/gpac/src/filters/dmx_m2ts.c:1110,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/filters/dmx_m2ts.c:1116,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 72
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - GF_M2TSDmxCtx*
    - GF_M2TS_SL_PCK*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1118
      start: 1015
    functionDepth: 10
    functionLinenumber: 1015
    functionLinenumberEnd: 1118
    functionName: m2tsdmx_send_sl_packet
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - m2tdmx_merge_props
    - gf_list_count
    - gf_odf_codec_set_au
    - gf_filter_pck_set_property
    - gf_list_get
    - memcpy
    - PROP_BOOL
    - gf_filter_pck_set_carousel_version
    - gf_odf_codec_del
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_odf_codec_decode
    - gf_odf_sl_depacketize
    - PROP_FRAC64_INT
    - gf_filter_pck_set_sap
    - m2tsdmx_get_m4sys_stream
    - gf_list_enum
    - m2tsdmx_declare_pid
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_framing
    - gf_odf_codec_new
    - gf_filter_pck_send
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE m2tsdmx_send_sl_packet(GF_M2TSDmxCtx *ctx, GF_M2TS_SL_PCK
      *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_m2ts.c:1123,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_m2ts.c:1124,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:1125,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:1125,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:1126,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:1126,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:1127,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:1127,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:1128,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:1128,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:1129,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:1129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_M2TSDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1130
      start: 1121
    functionDepth: 1
    functionLinenumber: 1121
    functionLinenumberEnd: 1130
    functionName: m2tsdmx_declare_epg_pid
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_new
    - gf_assert
    - gf_filter_pid_set_property
    - PROP_UINT
    linkageType: ''
    returnType: void
    signature: void m2tsdmx_declare_epg_pid(GF_M2TSDmxCtx *ctx)
  - BBCount: 74
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_m2ts.c:1138,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1148,1
    - Dst: m2tsdmx_setup_program
      Src: /src/gpac/src/filters/dmx_m2ts.c:1154,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_m2ts.c:1156,1
    - Dst: m2tsdmx_setup_program
      Src: /src/gpac/src/filters/dmx_m2ts.c:1166,1
    - Dst: m2tsdmx_update_sdt
      Src: /src/gpac/src/filters/dmx_m2ts.c:1172,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_m2ts.c:1178,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_m2ts.c:1180,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_m2ts.c:1181,1
    - Dst: m2tsdmx_send_packet
      Src: /src/gpac/src/filters/dmx_m2ts.c:1187,1
    - Dst: m2tsdmx_send_sl_packet
      Src: /src/gpac/src/filters/dmx_m2ts.c:1191,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/dmx_m2ts.c:1201,1
    - Dst: m2tsdmx_estimate_duration
      Src: /src/gpac/src/filters/dmx_m2ts.c:1203,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_m2ts.c:1213,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1219,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:1222,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/dmx_m2ts.c:1225,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_m2ts.c:1228,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:1230,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:1230,1
    - Dst: gf_filter_pck_set_clock_type
      Src: /src/gpac/src/filters/dmx_m2ts.c:1232,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:1235,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_m2ts.c:1235,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_m2ts.c:1237,1
    - Dst: gf_net_get_utc_ts
      Src: /src/gpac/src/filters/dmx_m2ts.c:1254,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1255,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:1257,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1258,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:1260,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_m2ts.c:1267,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1278,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:1280,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1282,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:1284,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:1286,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/dmx_m2ts.c:1286,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:1287,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_m2ts.c:1287,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_m2ts.c:1306,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_m2ts.c:1309,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_m2ts.c:1314,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_m2ts.c:1319,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dmx_m2ts.c:1320,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/dmx_m2ts.c:1321,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/dmx_m2ts.c:1322,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/dmx_m2ts.c:1323,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/dmx_m2ts.c:1324,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/dmx_m2ts.c:1325,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dmx_m2ts.c:1327,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dmx_m2ts.c:1328,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dmx_m2ts.c:1330,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_m2ts.c:1331,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_m2ts.c:1334,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_m2ts.c:1336,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_m2ts.c:1349,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_m2ts.c:1352,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_m2ts.c:1357,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dmx_m2ts.c:1358,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dmx_m2ts.c:1359,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dmx_m2ts.c:1360,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/dmx_m2ts.c:1361,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/dmx_m2ts.c:1362,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/dmx_m2ts.c:1363,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/dmx_m2ts.c:1364,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/dmx_m2ts.c:1365,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dmx_m2ts.c:1367,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dmx_m2ts.c:1369,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_m2ts.c:1370,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_m2ts.c:1373,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_m2ts.c:1375,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1382,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:1384,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_m2ts.c:1386,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:1392,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_m2ts.c:1397,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_m2ts.c:1402,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_m2ts.c:1404,1
    - Dst: gf_id3_tag_new
      Src: /src/gpac/src/filters/dmx_m2ts.c:1408,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_m2ts.c:1410,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_m2ts.c:1411,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_m2ts.c:1412,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_m2ts.c:1421,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_m2ts.c:1423,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1437,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:1439,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_m2ts.c:1441,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:1447,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_m2ts.c:1452,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_m2ts.c:1455,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dmx_m2ts.c:1457,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dmx_m2ts.c:1458,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_m2ts.c:1459,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_m2ts.c:1462,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_m2ts.c:1464,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1475,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_m2ts.c:1476,1
    - Dst: m2tsdmx_prop_free
      Src: /src/gpac/src/filters/dmx_m2ts.c:1477,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_m2ts.c:1478,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_m2ts.c:1480,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_m2ts.c:1493,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_m2ts.c:1495,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dmx_m2ts.c:1496,1
    - Dst: m2tsdmx_translate_ts
      Src: /src/gpac/src/filters/dmx_m2ts.c:1501,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_m2ts.c:1502,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:1504,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:1504,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_m2ts.c:1505,1
    - Dst: gf_filter_pck_set_property_str
      Src: /src/gpac/src/filters/dmx_m2ts.c:1506,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:1506,1
    - Dst: gf_filter_pck_set_property_str
      Src: /src/gpac/src/filters/dmx_m2ts.c:1507,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:1507,1
    - Dst: gf_filter_pck_set_property_str
      Src: /src/gpac/src/filters/dmx_m2ts.c:1508,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_m2ts.c:1508,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_m2ts.c:1509,1
    CyclomaticComplexity: 112
    EdgeCount: 112
    ICount: 285
    argCount: 3
    argNames:
    - ts
    - evt_type
    - param
    argTypes:
    - GF_M2TS_Demuxer*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1513
      start: 1134
    functionDepth: 11
    functionLinenumber: 1134
    functionLinenumberEnd: 1513
    functionName: m2tsdmx_on_event
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - m2tsdmx_estimate_duration
    - m2tsdmx_translate_ts
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_list_count
    - m2tsdmx_send_sl_packet
    - m2tsdmx_setup_program
    - m2tsdmx_prop_free
    - PROP_LONGUINT
    - m2tsdmx_send_packet
    - gf_bs_write_u32
    - gf_assert
    - gf_list_get
    - gf_filter_pck_set_property
    - gf_list_new
    - gf_list_pop_back
    - memcpy
    - gf_bs_get_content
    - gf_list_add
    - PROP_BOOL
    - gf_bs_write_u64
    - gf_filter_pck_set_clock_type
    - gf_filter_get_udta
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_bs_write_int
    - m2tsdmx_update_sdt
    - PROP_FRAC64_INT
    - gf_bs_write_data
    - gf_filter_pck_set_sap
    - gf_filter_pid_set_property
    - strlen
    - gf_list_del
    - gf_filter_pck_new_shared
    - gf_filter_pid_get_property
    - gf_filter_pck_set_property_str
    - PROP_UINT
    - gf_filter_pck_set_cts
    - gf_id3_tag_new
    - gf_bs_del
    - gf_filter_pck_set_framing
    - gf_fatal_assert
    - gf_net_get_utc_ts
    - gf_bs_write_u8
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void m2tsdmx_on_event(GF_M2TS_Demuxer *ts, u32 evt_type, void *param)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_m2ts.c:1519,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1523,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_m2ts.c:1525,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dmx_m2ts.c:1526,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dmx_m2ts.c:1530,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:1536,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_m2ts.c:1537,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_m2ts.c:1544,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/dmx_m2ts.c:1545,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/dmx_m2ts.c:1552,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/dmx_m2ts.c:1560,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/dmx_m2ts.c:1562,1
    - Dst: gf_m2ts_process_data
      Src: /src/gpac/src/filters/dmx_m2ts.c:1563,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_m2ts.c:1566,1
    - Dst: gf_m2ts_demux_del
      Src: /src/gpac/src/filters/dmx_m2ts.c:1567,1
    - Dst: gf_m2ts_demux_new
      Src: /src/gpac/src/filters/dmx_m2ts.c:1568,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_m2ts.c:1578,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_m2ts.c:1579,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dmx_m2ts.c:1583,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 56
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1588
      start: 1515
    functionDepth: 6
    functionLinenumber: 1515
    functionLinenumberEnd: 1588
    functionName: m2tsdmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_feof
    - gf_filter_pid_get_property_str
    - gf_filter_pid_get_property
    - gf_filter_get_opid_count
    - gf_filter_pid_remove
    - gf_file_exists
    - gf_fread
    - gf_m2ts_process_data
    - GF_FEVT_INIT
    - gf_filter_pid_check_caps
    - gf_filter_get_opid
    - strncmp
    - gf_fopen
    - gf_filter_pid_send_event
    - gf_m2ts_demux_new
    - gf_m2ts_demux_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err m2tsdmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1594,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:1596,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1597,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:1599,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - pid
    argTypes:
    - GF_M2TSDmxCtx*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1604
      start: 1591
    functionDepth: 1
    functionLinenumber: 1591
    functionLinenumberEnd: 1604
    functionName: m2tsdmx_get_stream
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_M2TS_PES
    signature: GF_M2TS_PES *m2tsdmx_get_stream(GF_M2TSDmxCtx *ctx, GF_FilterPid *pid)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_m2ts.c:1618,1
    - Dst: gf_m2ts_set_pes_framing
      Src: /src/gpac/src/filters/dmx_m2ts.c:1619,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1626,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:1628,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_m2ts.c:1630,1
    - Dst: gf_m2ts_set_pes_framing
      Src: /src/gpac/src/filters/dmx_m2ts.c:1631,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 25
    argCount: 3
    argNames:
    - prog
    - ts
    - switch_up
    argTypes:
    - GF_M2TS_Program*
    - GF_M2TS_Demuxer*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1639
      start: 1606
    functionDepth: 6
    functionLinenumber: 1606
    functionLinenumberEnd: 1639
    functionName: m2tsdmx_switch_quality
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_list_get
    - gf_m2ts_set_pes_framing
    linkageType: ''
    returnType: void
    signature: void m2tsdmx_switch_quality(GF_M2TS_Program *prog, GF_M2TS_Demuxer
      *ts, Bool switch_up)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_m2ts.c:1647,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1652,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:1654,1
    - Dst: m2tsdmx_switch_quality
      Src: /src/gpac/src/filters/dmx_m2ts.c:1655,1
    - Dst: m2tsdmx_get_stream
      Src: /src/gpac/src/filters/dmx_m2ts.c:1669,1
    - Dst: gf_m2ts_set_pes_framing
      Src: /src/gpac/src/filters/dmx_m2ts.c:1680,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_m2ts.c:1681,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_m2ts.c:1733,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_m2ts.c:1738,1
    - Dst: m2tsdmx_get_stream
      Src: /src/gpac/src/filters/dmx_m2ts.c:1742,1
    - Dst: gf_m2ts_set_pes_framing
      Src: /src/gpac/src/filters/dmx_m2ts.c:1749,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 90
    argCount: 2
    argNames:
    - filter
    - com
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1768
      start: 1641
    functionDepth: 7
    functionLinenumber: 1641
    functionLinenumberEnd: 1768
    functionName: m2tsdmx_process_event
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - GF_LOG
    - m2tsdmx_switch_quality
    - gf_m2ts_set_pes_framing
    - GF_FEVT_INIT
    - gf_list_count
    - gf_filter_pid_send_event
    - m2tsdmx_get_stream
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool m2tsdmx_process_event(GF_Filter *filter, const GF_FilterEvent
      *com)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_m2ts.c:1774,1
    - Dst: gf_m2ts_demux_new
      Src: /src/gpac/src/filters/dmx_m2ts.c:1776,1
    - Dst: gf_m2ts_demux_dmscc_init
      Src: /src/gpac/src/filters/dmx_m2ts.c:1784,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1790
      start: 1772
    functionDepth: 2
    functionLinenumber: 1772
    functionLinenumberEnd: 1790
    functionName: m2tsdmx_initialize
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_demux_new
    - gf_m2ts_demux_dmscc_init
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err m2tsdmx_initialize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_m2ts.c:1795,1
    - Dst: gf_m2ts_demux_del
      Src: /src/gpac/src/filters/dmx_m2ts.c:1796,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1798
      start: 1793
    functionDepth: 6
    functionLinenumber: 1793
    functionLinenumberEnd: 1798
    functionName: m2tsdmx_finalize
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_demux_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void m2tsdmx_finalize(GF_Filter *filter)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_m2ts.c:1804,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_m2ts.c:1812,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_m2ts.c:1814,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1815,1
    - Dst: gf_m2ts_flush_all
      Src: /src/gpac/src/filters/dmx_m2ts.c:1817,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_m2ts.c:1819,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_m2ts.c:1820,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/dmx_m2ts.c:1828,1
    - Dst: gf_m2ts_mark_seg_start
      Src: /src/gpac/src/filters/dmx_m2ts.c:1830,1
    - Dst: gf_m2ts_reset_parsers
      Src: /src/gpac/src/filters/dmx_m2ts.c:1836,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1840,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_m2ts.c:1842,1
    - Dst: gf_filter_pid_is_playing
      Src: /src/gpac/src/filters/dmx_m2ts.c:1843,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_m2ts.c:1845,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/dmx_m2ts.c:1852,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dmx_m2ts.c:1858,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dmx_m2ts.c:1867,1
    - Dst: gf_m2ts_process_data
      Src: /src/gpac/src/filters/dmx_m2ts.c:1869,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_m2ts.c:1871,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_m2ts.c:1875,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_m2ts.c:1876,1
    - Dst: gf_m2ts_reset_parsers
      Src: /src/gpac/src/filters/dmx_m2ts.c:1878,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 62
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1886
      start: 1802
    functionDepth: 6
    functionLinenumber: 1802
    functionLinenumberEnd: 1886
    functionName: m2tsdmx_process
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_mark_seg_start
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_framing
    - GF_FEVT_INIT
    - gf_filter_ask_rt_reschedule
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pid_set_discard
    - gf_filter_pck_get_data
    - gf_m2ts_reset_parsers
    - gf_filter_pid_would_block
    - gf_filter_pid_set_eos
    - gf_m2ts_flush_all
    - gf_filter_pid_is_playing
    - gf_filter_pid_send_event
    - gf_filter_pid_is_eos
    - gf_filter_get_opid_count
    - gf_m2ts_process_data
    - gf_filter_get_opid
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err m2tsdmx_process(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_probe_data
      Src: /src/gpac/src/filters/dmx_m2ts.c:1890,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1895
      start: 1888
    functionDepth: 8
    functionLinenumber: 1888
    functionLinenumberEnd: 1895
    functionName: m2tsdmx_probe_data
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_probe_data
    linkageType: ''
    returnType: char
    signature: char *m2tsdmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1916
      start: 1915
    functionDepth: 0
    functionLinenumber: 1915
    functionLinenumberEnd: 1916
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1968
      start: 1961
    functionDepth: 0
    functionLinenumber: 1961
    functionLinenumberEnd: 1968
    functionName: m2tsdmx_register
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *m2tsdmx_register(GF_FilterSession *session)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ttml_conv.c:55,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/ttml_conv.c:60,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/ttml_conv.c:65,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/ttml_conv.c:70,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/ttml_conv.c:73,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ttml_conv.c:75,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ttml_conv.c:75,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ttml_conv.c:76,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ttml_conv.c:76,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ttml_conv.c:77,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ttml_conv.c:79,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ttml_conv.c:82,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ttml_conv.c:84,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 86
    functionName: ttmlconv_configure_pid
    functionSourceFile: /src/gpac/src/filters/ttml_conv.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - PROP_BOOL
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ttmlconv_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/ttml_conv.c:107,1
    - Dst: strchr
      Src: /src/gpac/src/filters/ttml_conv.c:108,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ttml_conv.c:111,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ttml_conv.c:111,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ttml_conv.c:111,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ttml_conv.c:113,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ttml_conv.c:113,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ttml_conv.c:115,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ttml_conv.c:115,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ttml_conv.c:117,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ttml_conv.c:122,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ttml_conv.c:123,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ttml_conv.c:124,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ttml_conv.c:125,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/ttml_conv.c:128,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ttml_conv.c:130,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ttml_conv.c:134,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ttml_conv.c:135,1
    - Dst: ttmlconv_dump_node
      Src: /src/gpac/src/filters/ttml_conv.c:138,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ttml_conv.c:141,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ttml_conv.c:142,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ttml_conv.c:143,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ttml_conv.c:144,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 46
    argCount: 3
    argNames:
    - ctx
    - p
    - dump
    argTypes:
    - TTMLConvCtx*
    - GF_XMLNode*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 145
    functionName: ttmlconv_dump_node
    functionSourceFile: /src/gpac/src/filters/ttml_conv.c
    functionUses: 1
    functionsReached:
    - ttmlconv_dump_node
    - strcmp
    - gf_list_enum
    - strchr
    - fprintf
    linkageType: ''
    returnType: void
    signature: void ttmlconv_dump_node(TTMLConvCtx *ctx, GF_XMLNode *p, FILE *dump)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ttml_conv.c:149,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ttml_conv.c:163,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/ttml_conv.c:165,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ttml_conv.c:166,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/ttml_conv.c:172,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ttml_conv.c:174,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ttml_conv.c:179,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/ttml_conv.c:180,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/ttml_conv.c:187,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/ttml_conv.c:188,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/ttml_conv.c:190,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/ttml_conv.c:208,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ttml_conv.c:212,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/filters/ttml_conv.c:216,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/filters/ttml_conv.c:218,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ttml_conv.c:220,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/filters/ttml_conv.c:220,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/ttml_conv.c:223,1
    - Dst: ttml_parse_root
      Src: /src/gpac/src/filters/ttml_conv.c:225,1
    - Dst: ttml_get_body
      Src: /src/gpac/src/filters/ttml_conv.c:228,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ttml_conv.c:229,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/ttml_conv.c:231,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ttml_conv.c:233,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/ttml_conv.c:238,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ttml_conv.c:240,1
    - Dst: ttml_get_attr
      Src: /src/gpac/src/filters/ttml_conv.c:242,1
    - Dst: ttml_get_attr
      Src: /src/gpac/src/filters/ttml_conv.c:243,1
    - Dst: ttml_get_timestamp_ex
      Src: /src/gpac/src/filters/ttml_conv.c:246,1
    - Dst: ttml_get_timestamp_ex
      Src: /src/gpac/src/filters/ttml_conv.c:247,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/ttml_conv.c:248,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/ttml_conv.c:249,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/filters/ttml_conv.c:261,1
    - Dst: ttmlconv_dump_node
      Src: /src/gpac/src/filters/ttml_conv.c:266,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/ttml_conv.c:267,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/ttml_conv.c:268,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/ttml_conv.c:270,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/ttml_conv.c:275,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/ttml_conv.c:276,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/ttml_conv.c:279,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/ttml_conv.c:280,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/ttml_conv.c:281,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/ttml_conv.c:282,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/ttml_conv.c:283,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/ttml_conv.c:284,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ttml_conv.c:289,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filters/ttml_conv.c:290,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/ttml_conv.c:291,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 120
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 147
    functionDepth: 10
    functionLinenumber: 147
    functionLinenumberEnd: 293
    functionName: ttmlconv_process
    functionSourceFile: /src/gpac/src/filters/ttml_conv.c
    functionUses: 0
    functionsReached:
    - ttml_get_attr
    - gf_xml_dom_get_root
    - gf_list_count
    - gf_filter_pid_get_packet
    - gf_realloc
    - gf_list_get
    - gf_filter_pck_set_byte_offset
    - gf_fseek
    - memcpy
    - gf_xml_dom_new
    - gf_filter_pck_get_cts
    - gf_file_temp
    - gf_filter_pck_get_duration
    - gf_filter_get_udta
    - gf_filter_pck_get_property
    - gf_ftell
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_fread
    - gf_filter_pck_set_duration
    - gf_filter_pid_set_eos
    - gf_xml_dom_parse_string
    - ttml_parse_root
    - gf_xml_dom_get_error
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - ttml_get_timestamp_ex
    - gf_list_enum
    - gf_timestamp_rescale
    - gf_fclose
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - ttmlconv_dump_node
    - ttml_get_body
    - strcmp
    - gf_xml_dom_del
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ttmlconv_process(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ttml_conv.c:297,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ttml_conv.c:298,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 295
    functionDepth: 1
    functionLinenumber: 295
    functionLinenumberEnd: 299
    functionName: ttmlconv_finalize
    functionSourceFile: /src/gpac/src/filters/ttml_conv.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ttmlconv_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 331
    functionDepth: 0
    functionLinenumber: 331
    functionLinenumberEnd: 334
    functionName: ttml2vtt_register
    functionSourceFile: /src/gpac/src/filters/ttml_conv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ttml2vtt_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ttml_conv.c:338,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 336
    functionDepth: 1
    functionLinenumber: 336
    functionLinenumberEnd: 341
    functionName: ttmlconv2_initialize
    functionSourceFile: /src/gpac/src/filters/ttml_conv.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ttmlconv2_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 372
    functionDepth: 0
    functionLinenumber: 372
    functionLinenumberEnd: 375
    functionName: ttml2srt_register
    functionSourceFile: /src/gpac/src/filters/ttml_conv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ttml2srt_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 379
    functionDepth: 0
    functionLinenumber: 379
    functionLinenumberEnd: 382
    functionName: ttml2vtt_register
    functionSourceFile: /src/gpac/src/filters/ttml_conv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ttml2vtt_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 384
    functionDepth: 0
    functionLinenumber: 384
    functionLinenumberEnd: 387
    functionName: ttml2srt_register
    functionSourceFile: /src/gpac/src/filters/ttml_conv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ttml2srt_register(GF_FilterSession *session)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_img.c:42,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_img.c:47,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_img.c:53,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_img.c:56,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_img.c:62,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_img.c:65,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_img.c:66,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_img.c:66,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_img.c:68,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_img.c:68,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_img.c:72,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_img.c:74,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 77
    functionName: imgdec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_img.c
    functionUses: 0
    functionsReached:
    - gf_filter_set_name
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err imgdec_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_img.c:86,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_img.c:88,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_img.c:90,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_img.c:91,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_img.c:96,1
    - Dst: gf_img_jpeg_dec
      Src: /src/gpac/src/filters/dec_img.c:106,1
    - Dst: gf_img_png_dec
      Src: /src/gpac/src/filters/dec_img.c:108,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_img.c:112,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_img.c:127,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_img.c:127,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_img.c:128,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_img.c:128,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_img.c:129,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_img.c:129,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_img.c:130,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_img.c:130,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dec_img.c:132,1
    - Dst: gf_img_jpeg_dec
      Src: /src/gpac/src/filters/dec_img.c:136,1
    - Dst: gf_img_png_dec
      Src: /src/gpac/src/filters/dec_img.c:138,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dec_img.c:142,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_img.c:144,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/dec_img.c:145,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_img.c:146,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_img.c:148,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 56
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 79
    functionDepth: 4
    functionLinenumber: 79
    functionLinenumberEnd: 154
    functionName: imgdec_process
    functionSourceFile: /src/gpac/src/filters/dec_img.c
    functionUses: 0
    functionsReached:
    - gf_img_jpeg_dec
    - gf_filter_pid_drop_packet
    - PROP_UINT
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - gf_filter_pck_discard
    - gf_filter_pid_set_property
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_filter_pck_send
    - gf_filter_pck_set_dependency_flags
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_packet
    - gf_img_png_dec
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err imgdec_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionName: imgdec_register
    functionSourceFile: /src/gpac/src/filters/dec_img.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *imgdec_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionName: imgdec_register
    functionSourceFile: /src/gpac/src/filters/dec_img.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *imgdec_register(GF_FilterSession *session)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_chapter_count
      Src: /src/gpac/src/filters/isoffin_load.c:40,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/isoffin_load.c:42,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/isoffin_load.c:44,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:46,1
    - Dst: gf_isom_get_chapter
      Src: /src/gpac/src/filters/isoffin_load.c:54,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/isoffin_load.c:56,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:60,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:61,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:65,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/isoffin_load.c:71,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/filters/isoffin_load.c:73,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/filters/isoffin_load.c:75,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/filters/isoffin_load.c:80,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/isoffin_load.c:85,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/isoffin_load.c:87,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:89,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/filters/isoffin_load.c:96,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/isoffin_load.c:99,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/isoffin_load.c:102,1
    - Dst: gf_isom_parse_text_sample
      Src: /src/gpac/src/filters/isoffin_load.c:103,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/isoffin_load.c:106,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/filters/isoffin_load.c:107,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/isoffin_load.c:109,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/filters/isoffin_load.c:110,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:114,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:115,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:119,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 70
    argCount: 2
    argNames:
    - file
    - opid
    argTypes:
    - GF_ISOFile*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 34
    functionDepth: 7
    functionLinenumber: 34
    functionLinenumberEnd: 121
    functionName: isor_get_chapters
    functionSourceFile: /src/gpac/src/filters/isoffin_load.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_isom_get_chapter
    - gf_bs_new
    - gf_isom_sample_del
    - gf_isom_get_sample_count
    - gf_isom_get_reference
    - gf_isom_get_reference_count
    - gf_isom_get_track_count
    - gf_bs_del
    - gf_isom_delete_text_sample
    - gf_isom_parse_text_sample
    - gf_isom_get_chapter_count
    - gf_filter_pid_set_property
    - gf_malloc
    - gf_isom_get_sample
    linkageType: ''
    returnType: void
    signature: void isor_get_chapters(GF_ISOFile *file, GF_FilterPid *opid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/filters/isoffin_load.c:125,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/isoffin_load.c:131,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/filters/isoffin_load.c:134,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_load.c:135,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:137,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:138,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 4
    argNames:
    - read
    - ch
    - rtype
    - rname
    argTypes:
    - ISOMReader*
    - ISOMChannel*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 123
    functionDepth: 3
    functionLinenumber: 123
    functionLinenumberEnd: 140
    functionName: isor_export_ref
    functionSourceFile: /src/gpac/src/filters/isoffin_load.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_get_reference
    - gf_filter_pid_set_property_str
    - gf_isom_get_reference_count
    - gf_isom_get_track_id
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void isor_export_ref(ISOMReader *read, ISOMChannel *ch, u32 rtype,
      char *rname)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_udta_count
      Src: /src/gpac/src/filters/isoffin_load.c:147,1
    - Dst: gf_isom_get_udta_count
      Src: /src/gpac/src/filters/isoffin_load.c:150,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - read
    - ch
    argTypes:
    - ISOMReader*
    - ISOMChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 143
    functionDepth: 2
    functionLinenumber: 143
    functionLinenumberEnd: 153
    functionName: isor_get_udta_count
    functionSourceFile: /src/gpac/src/filters/isoffin_load.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_udta_count
    linkageType: ''
    returnType: u32
    signature: u32 isor_get_udta_count(ISOMReader *read, ISOMChannel *ch)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_udta_count
      Src: /src/gpac/src/filters/isoffin_load.c:158,1
    - Dst: gf_isom_get_udta_type
      Src: /src/gpac/src/filters/isoffin_load.c:160,1
    - Dst: gf_isom_get_udta_type
      Src: /src/gpac/src/filters/isoffin_load.c:164,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 5
    argNames:
    - read
    - ch
    - udta_idx
    - UserDataType
    - UUID
    argTypes:
    - ISOMReader*
    - ISOMChannel*
    - u32
    - u32*
    - bin128*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 155
    functionDepth: 2
    functionLinenumber: 155
    functionLinenumberEnd: 165
    functionName: isor_get_udta_type
    functionSourceFile: /src/gpac/src/filters/isoffin_load.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_udta_count
    - gf_isom_get_udta_type
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err isor_get_udta_type(ISOMReader *read, ISOMChannel *ch, u32 udta_idx,
      u32 *UserDataType, bin128 *UUID)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_user_data_count
      Src: /src/gpac/src/filters/isoffin_load.c:171,1
    - Dst: gf_isom_get_user_data_count
      Src: /src/gpac/src/filters/isoffin_load.c:174,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - read
    - ch
    - UserDataType
    - UUID
    argTypes:
    - ISOMReader*
    - ISOMChannel*
    - u32
    - bin128
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 167
    functionDepth: 2
    functionLinenumber: 167
    functionLinenumberEnd: 176
    functionName: isor_get_user_data_count
    functionSourceFile: /src/gpac/src/filters/isoffin_load.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_user_data_count
    linkageType: ''
    returnType: u32
    signature: u32 isor_get_user_data_count(ISOMReader *read, ISOMChannel *ch, u32
      UserDataType, bin128 UUID)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_user_data_count
      Src: /src/gpac/src/filters/isoffin_load.c:181,1
    - Dst: gf_isom_get_user_data
      Src: /src/gpac/src/filters/isoffin_load.c:183,1
    - Dst: gf_isom_get_user_data
      Src: /src/gpac/src/filters/isoffin_load.c:188,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 7
    argNames:
    - read
    - ch
    - UserDataType
    - UUID
    - UserDataIndex
    - userData
    - userDataSize
    argTypes:
    - ISOMReader*
    - ISOMChannel*
    - u32
    - bin128
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 178
    functionDepth: 4
    functionLinenumber: 178
    functionLinenumberEnd: 189
    functionName: isor_get_user_data
    functionSourceFile: /src/gpac/src/filters/isoffin_load.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_user_data
    - gf_isom_get_user_data_count
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err isor_get_user_data(ISOMReader *read, ISOMChannel *ch, u32 UserDataType,
      bin128 UUID, u32 UserDataIndex, u8 **userData, u32 *userDataSize)
  - BBCount: 138
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/filters/isoffin_load.c:209,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/src/filters/isoffin_load.c:213,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/filters/isoffin_load.c:214,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/filters/isoffin_load.c:226,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_load.c:239,1
    - Dst: gf_isom_get_hevc_lhvc_type
      Src: /src/gpac/src/filters/isoffin_load.c:242,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/filters/isoffin_load.c:250,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_load.c:251,1
    - Dst: gf_isom_get_hevc_lhvc_type
      Src: /src/gpac/src/filters/isoffin_load.c:259,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_load.c:271,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/isoffin_load.c:272,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/filters/isoffin_load.c:273,1
    - Dst: gf_isom_get_reference_ID
      Src: /src/gpac/src/filters/isoffin_load.c:275,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_load.c:287,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/isoffin_load.c:292,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/isoffin_load.c:294,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:296,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:296,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:297,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:297,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:299,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:299,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/isoffin_load.c:301,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filters/isoffin_load.c:304,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/isoffin_load.c:305,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/isoffin_load.c:306,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:311,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:311,1
    - Dst: gf_isom_is_track_in_root_od
      Src: /src/gpac/src/filters/isoffin_load.c:313,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:317,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:317,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:322,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:322,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:323,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:323,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/filters/isoffin_load.c:323,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:325,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:325,1
    - Dst: isor_create_channel
      Src: /src/gpac/src/filters/isoffin_load.c:328,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:333,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:333,1
    - Dst: gf_isom_get_media_language
      Src: /src/gpac/src/filters/isoffin_load.c:334,1
    - Dst: gf_isom_get_media_language
      Src: /src/gpac/src/filters/isoffin_load.c:337,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:340,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:340,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:341,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:350,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:350,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/filters/isoffin_load.c:352,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:353,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:353,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/filters/isoffin_load.c:355,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:356,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:356,1
    - Dst: isor_export_ref
      Src: /src/gpac/src/filters/isoffin_load.c:361,1
    - Dst: isor_export_ref
      Src: /src/gpac/src/filters/isoffin_load.c:362,1
    - Dst: isor_export_ref
      Src: /src/gpac/src/filters/isoffin_load.c:363,1
    - Dst: isor_export_ref
      Src: /src/gpac/src/filters/isoffin_load.c:364,1
    - Dst: gf_isom_get_track_duration_orig
      Src: /src/gpac/src/filters/isoffin_load.c:368,1
    - Dst: gf_isom_get_track_duration
      Src: /src/gpac/src/filters/isoffin_load.c:370,1
    - Dst: gf_isom_get_duration
      Src: /src/gpac/src/filters/isoffin_load.c:373,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/filters/isoffin_load.c:375,1
    - Dst: gf_isom_get_sidx_duration
      Src: /src/gpac/src/filters/isoffin_load.c:381,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/src/filters/isoffin_load.c:395,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:396,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/isoffin_load.c:396,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/filters/isoffin_load.c:398,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:399,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/isoffin_load.c:399,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:404,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/isoffin_load.c:404,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:406,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:406,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/filters/isoffin_load.c:410,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/isoffin_load.c:412,1
    - Dst: gf_isom_get_avg_sample_delta
      Src: /src/gpac/src/filters/isoffin_load.c:413,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:424,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:424,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/filters/isoffin_load.c:434,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:435,1
    - Dst: PROP_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:435,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:438,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_load.c:438,1
    - Dst: gf_isom_get_media_data_size
      Src: /src/gpac/src/filters/isoffin_load.c:438,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/isoffin_load.c:442,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:443,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:443,1
    - Dst: gf_isom_get_constant_sample_size
      Src: /src/gpac/src/filters/isoffin_load.c:448,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:450,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:450,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_load.c:454,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:456,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:456,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:458,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:458,1
    - Dst: gf_isom_get_brand_info
      Src: /src/gpac/src/filters/isoffin_load.c:464,1
    - Dst: gf_isom_get_brands
      Src: /src/gpac/src/filters/isoffin_load.c:465,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:466,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:467,1
    - Dst: PROP_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:467,1
    - Dst: gf_isom_get_max_sample_size
      Src: /src/gpac/src/filters/isoffin_load.c:472,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:473,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:473,1
    - Dst: gf_isom_get_avg_sample_size
      Src: /src/gpac/src/filters/isoffin_load.c:475,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:476,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:476,1
    - Dst: gf_isom_get_max_sample_delta
      Src: /src/gpac/src/filters/isoffin_load.c:478,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:479,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:479,1
    - Dst: gf_isom_get_max_sample_cts_offset
      Src: /src/gpac/src/filters/isoffin_load.c:481,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:482,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:482,1
    - Dst: gf_isom_get_constant_sample_duration
      Src: /src/gpac/src/filters/isoffin_load.c:484,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:485,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:485,1
    - Dst: gf_isom_get_pl_indication
      Src: /src/gpac/src/filters/isoffin_load.c:491,1
    - Dst: gf_isom_get_pl_indication
      Src: /src/gpac/src/filters/isoffin_load.c:493,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:495,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:495,1
    - Dst: gf_isom_get_track_template
      Src: /src/gpac/src/filters/isoffin_load.c:498,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:500,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:500,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:502,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/isoffin_load.c:502,1
    - Dst: gf_isom_get_trex_template
      Src: /src/gpac/src/filters/isoffin_load.c:505,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:507,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:507,1
    - Dst: gf_isom_get_raw_user_data
      Src: /src/gpac/src/filters/isoffin_load.c:510,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:513,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:513,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:515,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/isoffin_load.c:515,1
    - Dst: gf_isom_get_duration
      Src: /src/gpac/src/filters/isoffin_load.c:520,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/filters/isoffin_load.c:521,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:522,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/isoffin_load.c:522,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/src/filters/isoffin_load.c:529,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/src/filters/isoffin_load.c:531,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:533,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:533,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:534,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:534,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:535,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/isoffin_load.c:535,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:536,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/isoffin_load.c:536,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:537,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/isoffin_load.c:537,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/isoffin_load.c:543,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/filters/isoffin_load.c:544,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/src/filters/isoffin_load.c:549,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:557,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:557,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:558,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:558,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/src/filters/isoffin_load.c:560,1
    - Dst: gf_isom_text_get_encoded_tx3g
      Src: /src/gpac/src/filters/isoffin_load.c:564,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/filters/isoffin_load.c:567,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:568,1
    - Dst: strlen
      Src: /src/gpac/src/filters/isoffin_load.c:571,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/isoffin_load.c:572,1
    - Dst: strcat
      Src: /src/gpac/src/filters/isoffin_load.c:574,1
    - Dst: strcat
      Src: /src/gpac/src/filters/isoffin_load.c:575,1
    - Dst: strlen
      Src: /src/gpac/src/filters/isoffin_load.c:579,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:580,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:580,1
    - Dst: gf_isom_apple_enum_tag
      Src: /src/gpac/src/filters/isoffin_load.c:597,1
    - Dst: gf_isom_apple_enum_tag_ex
      Src: /src/gpac/src/filters/isoffin_load.c:606,1
    - Dst: gf_itags_find_by_itag
      Src: /src/gpac/src/filters/isoffin_load.c:616,1
    - Dst: gf_itags_get_type
      Src: /src/gpac/src/filters/isoffin_load.c:618,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/isoffin_load.c:622,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/isoffin_load.c:623,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/isoffin_load.c:624,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/isoffin_load.c:625,1
    - Dst: gf_itags_get_name
      Src: /src/gpac/src/filters/isoffin_load.c:628,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:633,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:633,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:635,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:635,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:641,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:641,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:643,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:643,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:647,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_load.c:647,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:649,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_load.c:649,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:654,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:654,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:656,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:656,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:661,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_load.c:661,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:663,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_load.c:663,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/filters/isoffin_load.c:666,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:668,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:668,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:670,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:670,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:673,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_load.c:673,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:675,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_load.c:675,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:681,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/isoffin_load.c:684,1
    - Dst: gf_isom_has_time_offset_table
      Src: /src/gpac/src/filters/isoffin_load.c:686,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:687,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:687,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:690,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:690,1
    - Dst: gf_isom_get_handler_name
      Src: /src/gpac/src/filters/isoffin_load.c:695,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:697,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:697,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:699,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:699,1
    - Dst: gf_isom_get_track_flags
      Src: /src/gpac/src/filters/isoffin_load.c:699,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:701,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:701,1
    - Dst: gf_isom_get_track_flags
      Src: /src/gpac/src/filters/isoffin_load.c:701,1
    - Dst: gf_isom_get_track_switch_group_count
      Src: /src/gpac/src/filters/isoffin_load.c:703,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:705,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:705,1
    - Dst: memset
      Src: /src/gpac/src/filters/isoffin_load.c:711,1
    - Dst: memset
      Src: /src/gpac/src/filters/isoffin_load.c:712,1
    - Dst: gf_isom_get_track_matrix
      Src: /src/gpac/src/filters/isoffin_load.c:717,1
    - Dst: gf_isom_get_track_matrix
      Src: /src/gpac/src/filters/isoffin_load.c:719,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:720,1
    - Dst: gf_isom_get_udta_count
      Src: /src/gpac/src/filters/isoffin_load.c:724,1
    - Dst: gf_isom_get_udta_type
      Src: /src/gpac/src/filters/isoffin_load.c:729,1
    - Dst: gf_isom_get_user_data_count
      Src: /src/gpac/src/filters/isoffin_load.c:731,1
    - Dst: gf_isom_get_user_data
      Src: /src/gpac/src/filters/isoffin_load.c:739,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/isoffin_load.c:742,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/isoffin_load.c:742,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/isoffin_load.c:744,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/isoffin_load.c:744,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/filters/isoffin_load.c:746,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:748,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:748,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/isoffin_load.c:750,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/isoffin_load.c:751,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:753,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:753,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:754,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:757,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:757,1
    - Dst: gf_isom_get_user_data_count
      Src: /src/gpac/src/filters/isoffin_load.c:764,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/isoffin_load.c:766,1
    - Dst: memset
      Src: /src/gpac/src/filters/isoffin_load.c:767,1
    - Dst: gf_isom_get_track_kind
      Src: /src/gpac/src/filters/isoffin_load.c:770,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/isoffin_load.c:771,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/isoffin_load.c:772,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:773,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:774,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:776,1
    - Dst: gf_isom_enum_track_group
      Src: /src/gpac/src/filters/isoffin_load.c:785,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/isoffin_load.c:790,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/isoffin_load.c:790,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:791,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/isoffin_load.c:791,1
    - Dst: gf_isom_get_root_sidx_offsets
      Src: /src/gpac/src/filters/isoffin_load.c:799,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:801,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/isoffin_load.c:801,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:805,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:805,1
    CyclomaticComplexity: 166
    EdgeCount: 166
    ICount: 457
    argCount: 8
    argNames:
    - read
    - track
    - streamtype
    - use_iod
    - esid
    - depends_on_id
    - ocr_es_id
    - set_lang
    argTypes:
    - ISOMReader*
    - u32
    - u32
    - Bool
    - u32
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 809
      start: 192
    functionDepth: 6
    functionLinenumber: 192
    functionLinenumberEnd: 809
    functionName: isor_setup_channel
    functionSourceFile: /src/gpac/src/filters/isoffin_load.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_get_track_duration_orig
    - gf_isom_get_root_sidx_offsets
    - gf_stream_type_name
    - gf_realloc
    - gf_4cc_to_str
    - isor_export_ref
    - gf_isom_get_media_subtype
    - gf_isom_get_track_template
    - gf_isom_is_track_in_root_od
    - gf_utf8_is_legal
    - gf_isom_get_constant_sample_size
    - gf_sys_is_test_mode
    - PROP_FRAC64_INT
    - gf_isom_apple_enum_tag
    - gf_isom_get_user_data_count
    - gf_isom_get_udta_count
    - PROP_UINT
    - gf_isom_get_max_sample_size
    - gf_isom_apple_enum_tag_ex
    - gf_base64_encode
    - gf_isom_get_track_kind
    - gf_isom_get_timescale
    - gf_isom_get_hevc_lhvc_type
    - PROP_DATA_NO_COPY
    - PROP_DATA
    - gf_filter_pid_new
    - PROP_LONGUINT
    - gf_isom_get_avg_sample_delta
    - snprintf
    - gf_isom_get_reference_ID
    - gf_dynstrcat
    - gf_itags_get_name
    - PROP_SINT
    - gf_isom_has_time_offset_table
    - gf_isom_get_edits_count
    - gf_filter_pid_set_property_dyn
    - gf_isom_enum_track_group
    - gf_isom_get_handler_name
    - gf_isom_get_sample_description_count
    - gf_itags_get_type
    - PROP_STRING
    - gf_isom_get_sample_count
    - gf_isom_get_duration
    - gf_filter_pid_set_property_str
    - gf_isom_get_track_id
    - gf_isom_get_track_matrix
    - gf_isom_get_max_sample_delta
    - gf_isom_get_track_duration
    - PROP_4CC
    - gf_isom_get_pl_indication
    - isor_create_channel
    - gf_error_to_string
    - gf_isom_get_media_data_size
    - strlen
    - PROP_FRAC_INT
    - gf_isom_get_track_flags
    - gf_isom_get_user_data
    - gf_isom_get_media_timescale
    - gf_isom_get_brands
    - gf_isom_get_sidx_duration
    - memset
    - PROP_FRAC64
    - gf_isom_text_get_encoded_tx3g
    - strcat
    - gf_itags_find_by_itag
    - memcpy
    - gf_isom_get_max_sample_cts_offset
    - gf_isom_get_raw_user_data
    - gf_isom_get_reference
    - sprintf
    - gf_isom_get_track_count
    - PROP_BOOL
    - gf_isom_get_udta_type
    - gf_isom_get_media_type
    - gf_isom_get_track_switch_group_count
    - gf_isom_get_constant_sample_duration
    - gf_filter_pid_copy_properties
    - gf_isom_get_avg_sample_size
    - gf_isom_get_media_language
    - GF_LOG
    - gf_isom_get_brand_info
    - gf_isom_get_track_layout_info
    - gf_filter_pid_set_property
    - gf_malloc
    - gf_filter_pid_get_property
    - gf_isom_get_trex_template
    - gf_isom_get_reference_count
    - gf_isom_get_media_duration
    - PROP_STRING_NO_COPY
    - gf_filter_pid_set_name
    - gf_sys_old_arch_compat
    linkageType: ''
    returnType: ISOMChannel
    signature: ISOMChannel *isor_setup_channel(ISOMReader *read, u32 track, u32 streamtype,
      Bool use_iod, u32 esid, u32 depends_on_id, u32 ocr_es_id, Bool set_lang)
  - BBCount: 235
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_is_media_encrypted
      Src: /src/gpac/src/filters/isoffin_load.c:837,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/src/filters/isoffin_load.c:838,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/filters/isoffin_load.c:840,1
    - Dst: gf_isom_get_mpeg4_subtype
      Src: /src/gpac/src/filters/isoffin_load.c:844,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/src/filters/isoffin_load.c:846,1
    - Dst: gf_media_map_esd
      Src: /src/gpac/src/filters/isoffin_load.c:852,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/isoffin_load.c:855,1
    - Dst: gf_codecid_from_oti
      Src: /src/gpac/src/filters/isoffin_load.c:860,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/isoffin_load.c:877,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/filters/isoffin_load.c:882,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/isoffin_load.c:895,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/filters/isoffin_load.c:897,1
    - Dst: gf_isom_get_media_language
      Src: /src/gpac/src/filters/isoffin_load.c:898,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_load.c:899,1
    - Dst: gf_codecid_type
      Src: /src/gpac/src/filters/isoffin_load.c:901,1
    - Dst: gf_isom_stxt_get_description
      Src: /src/gpac/src/filters/isoffin_load.c:911,1
    - Dst: gf_isom_xml_subtitle_get_description
      Src: /src/gpac/src/filters/isoffin_load.c:915,1
    - Dst: gf_isom_xml_subtitle_get_description
      Src: /src/gpac/src/filters/isoffin_load.c:919,1
    - Dst: gf_isom_get_webvtt_config
      Src: /src/gpac/src/filters/isoffin_load.c:924,1
    - Dst: gf_isom_get_jp2_config
      Src: /src/gpac/src/filters/isoffin_load.c:929,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/filters/isoffin_load.c:933,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_load.c:935,1
    - Dst: gf_isom_get_tile_info
      Src: /src/gpac/src/filters/isoffin_load.c:937,1
    - Dst: gf_isom_get_text_description
      Src: /src/gpac/src/filters/isoffin_load.c:944,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:946,1
    - Dst: gf_odf_tx3g_write
      Src: /src/gpac/src/filters/isoffin_load.c:952,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/isoffin_load.c:953,1
    - Dst: gf_isom_flac_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:960,1
    - Dst: gf_isom_opus_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:964,1
    - Dst: gf_isom_get_pcm_config
      Src: /src/gpac/src/filters/isoffin_load.c:974,1
    - Dst: gf_isom_get_pcm_config
      Src: /src/gpac/src/filters/isoffin_load.c:998,1
    - Dst: gf_isom_get_pcm_config
      Src: /src/gpac/src/filters/isoffin_load.c:1006,1
    - Dst: gf_isom_get_lpcm_config
      Src: /src/gpac/src/filters/isoffin_load.c:1014,1
    - Dst: gf_ceil
      Src: /src/gpac/src/filters/isoffin_load.c:1020,1
    - Dst: gf_ceil
      Src: /src/gpac/src/filters/isoffin_load.c:1022,1
    - Dst: gf_isom_vvc_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1048,1
    - Dst: gf_odf_vvc_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1050,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1051,1
    - Dst: gf_isom_get_track_group
      Src: /src/gpac/src/filters/isoffin_load.c:1058,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:1058,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/isoffin_load.c:1059,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/filters/isoffin_load.c:1060,1
    - Dst: gf_isom_get_reference_ID
      Src: /src/gpac/src/filters/isoffin_load.c:1063,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_load.c:1066,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1073,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/isoffin_load.c:1074,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1075,1
    - Dst: gf_isom_get_tile_info
      Src: /src/gpac/src/filters/isoffin_load.c:1079,1
    - Dst: gf_isom_avs3v_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1084,1
    - Dst: gf_odf_avs3v_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1086,1
    - Dst: gf_odf_avs3v_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1087,1
    - Dst: gf_isom_ac3_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1096,1
    - Dst: gf_odf_ac3_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1099,1
    - Dst: gf_ac3_get_channel_layout
      Src: /src/gpac/src/filters/isoffin_load.c:1100,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1101,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1103,1
    - Dst: gf_isom_ac4_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1110,1
    - Dst: gf_odf_ac4_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1113,1
    - Dst: gf_odf_ac4_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1114,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1116,1
    - Dst: gf_isom_truehd_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1123,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/isoffin_load.c:1124,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1125,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/isoffin_load.c:1126,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/isoffin_load.c:1127,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1128,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/isoffin_load.c:1129,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/isoffin_load.c:1130,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1133,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:1147,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:1152,1
    - Dst: gf_codec_id_from_isobmf
      Src: /src/gpac/src/filters/isoffin_load.c:1158,1
    - Dst: gf_pixel_fmt_from_qt_type
      Src: /src/gpac/src/filters/isoffin_load.c:1162,1
    - Dst: gf_pixel_fmt_probe
      Src: /src/gpac/src/filters/isoffin_load.c:1163,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1188,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/isoffin_load.c:1188,1
    - Dst: gf_isom_get_generic_sample_description
      Src: /src/gpac/src/filters/isoffin_load.c:1192,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/isoffin_load.c:1195,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/isoffin_load.c:1196,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:1198,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/isoffin_load.c:1199,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:1200,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1201,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1202,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/filters/isoffin_load.c:1203,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1204,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/isoffin_load.c:1205,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/isoffin_load.c:1206,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/isoffin_load.c:1211,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1222,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1223,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/isoffin_load.c:1224,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1225,1
    - Dst: gf_isom_subtitle_get_mime
      Src: /src/gpac/src/filters/isoffin_load.c:1229,1
    - Dst: isor_setup_channel
      Src: /src/gpac/src/filters/isoffin_load.c:1234,1
    - Dst: gf_isom_get_tmcd_config
      Src: /src/gpac/src/filters/isoffin_load.c:1239,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1240,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1240,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1241,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1241,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1242,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1242,1
    - Dst: gf_isom_dovi_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1246,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/isoffin_load.c:1250,1
    - Dst: gf_odf_dovi_cfg_write_bs
      Src: /src/gpac/src/filters/isoffin_load.c:1251,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/isoffin_load.c:1252,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1253,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:1253,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/isoffin_load.c:1254,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1255,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/filters/isoffin_load.c:1257,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:1257,1
    - Dst: gf_isom_get_reference_ID
      Src: /src/gpac/src/filters/isoffin_load.c:1259,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:1259,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1260,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1260,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1266,1
    - Dst: PROP_VEC2I_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1266,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/filters/isoffin_load.c:1268,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1270,1
    - Dst: PROP_VEC2I_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1270,1
    - Dst: gf_isom_get_user_data
      Src: /src/gpac/src/filters/isoffin_load.c:1276,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/isoffin_load.c:1278,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/isoffin_load.c:1279,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1280,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1281,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1282,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1283,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/isoffin_load.c:1284,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1285,1
    - Dst: PROP_VEC2I_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1285,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1286,1
    - Dst: PROP_VEC2I_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1286,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1288,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1294,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1296,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1298,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/isoffin_load.c:1302,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1309,1
    - Dst: gf_isom_lhvc_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1310,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1313,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1321,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1324,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1329,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1333,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1338,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1339,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1344,1
    - Dst: gf_isom_svc_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1345,1
    - Dst: gf_isom_mvc_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1347,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1352,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1359,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1361,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1365,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1368,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1373,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1374,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/isoffin_load.c:1378,1
    - Dst: gf_isom_get_creation_time
      Src: /src/gpac/src/filters/isoffin_load.c:1380,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1381,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_load.c:1381,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1382,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_load.c:1382,1
    - Dst: isor_get_chapters
      Src: /src/gpac/src/filters/isoffin_load.c:1385,1
    - Dst: gf_isom_has_cenc_sample_group
      Src: /src/gpac/src/filters/isoffin_load.c:1388,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1390,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:1390,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1394,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1394,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1398,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1398,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1401,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1401,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1402,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1405,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1405,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/isoffin_load.c:1408,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1409,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_load.c:1409,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1414,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1415,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/isoffin_load.c:1421,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1424,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_load.c:1424,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1425,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1428,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:1428,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1432,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:1432,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1435,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1435,1
    - Dst: gf_isom_enable_raw_pack
      Src: /src/gpac/src/filters/isoffin_load.c:1437,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1441,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1441,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1445,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1445,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1447,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1447,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/filters/isoffin_load.c:1450,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1454,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1454,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1455,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1455,1
    - Dst: gf_isom_get_pixel_aspect_ratio
      Src: /src/gpac/src/filters/isoffin_load.c:1457,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1459,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1459,1
    - Dst: gf_isom_get_color_info
      Src: /src/gpac/src/filters/isoffin_load.c:1467,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1469,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1469,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1470,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1470,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1471,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1471,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1472,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:1472,1
    - Dst: gf_isom_get_icc_profile
      Src: /src/gpac/src/filters/isoffin_load.c:1474,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1476,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_load.c:1476,1
    - Dst: gf_isom_get_y3d_info
      Src: /src/gpac/src/filters/isoffin_load.c:1480,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1483,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1483,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1485,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1489,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1489,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1491,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1491,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1495,1
    - Dst: PROP_VEC4I_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1495,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1497,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1500,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1503,1
    - Dst: PROP_VEC3I_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1503,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1505,1
    - Dst: gf_isom_get_audio_info
      Src: /src/gpac/src/filters/isoffin_load.c:1511,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/filters/isoffin_load.c:1514,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1519,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1519,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1520,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1520,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/isoffin_load.c:1523,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1525,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1525,1
    - Dst: gf_isom_get_audio_layout
      Src: /src/gpac/src/filters/isoffin_load.c:1527,1
    - Dst: gf_audio_fmt_get_layout_from_cicp
      Src: /src/gpac/src/filters/isoffin_load.c:1529,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1530,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_load.c:1530,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1533,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_load.c:1533,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/src/filters/isoffin_load.c:1538,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/src/filters/isoffin_load.c:1539,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1543,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1543,1
    - Dst: gf_isom_get_mpegh_compatible_profiles
      Src: /src/gpac/src/filters/isoffin_load.c:1549,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/isoffin_load.c:1555,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1558,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1559,1
    - Dst: gf_isom_get_bitrate
      Src: /src/gpac/src/filters/isoffin_load.c:1565,1
    - Dst: gf_isom_get_media_data_size
      Src: /src/gpac/src/filters/isoffin_load.c:1571,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1573,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1573,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1576,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1576,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1577,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1577,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1578,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1578,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1581,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1581,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1582,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1582,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1583,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1583,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1584,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1584,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1585,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1585,1
    - Dst: strstr
      Src: /src/gpac/src/filters/isoffin_load.c:1586,1
    - Dst: gf_isom_sample_has_subsamples
      Src: /src/gpac/src/filters/isoffin_load.c:1588,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1590,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1590,1
    - Dst: gf_isom_get_mpeg4_subtype
      Src: /src/gpac/src/filters/isoffin_load.c:1594,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1597,1
    - Dst: PROP_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:1597,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/isoffin_load.c:1601,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1602,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:1602,1
    - Dst: strlen
      Src: /src/gpac/src/filters/isoffin_load.c:1602,1
    - Dst: gf_isom_get_stsd_template
      Src: /src/gpac/src/filters/isoffin_load.c:1609,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1611,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:1611,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/isoffin_load.c:1613,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/src/filters/isoffin_load.c:1615,1
    - Dst: gf_isom_get_stsd_template
      Src: /src/gpac/src/filters/isoffin_load.c:1618,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1620,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:1620,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1622,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1622,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1627,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/isoffin_load.c:1627,1
    - Dst: memset
      Src: /src/gpac/src/filters/isoffin_load.c:1633,1
    - Dst: gf_isom_get_dims_description
      Src: /src/gpac/src/filters/isoffin_load.c:1635,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1636,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1636,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1637,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1637,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1638,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1638,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1639,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:1639,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1640,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:1640,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1641,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:1641,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1643,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1643,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1645,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1645,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1647,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1647,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1649,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1649,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1651,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1651,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/filters/isoffin_load.c:1663,1
    - Dst: gf_mpegh_get_mhas_pl
      Src: /src/gpac/src/filters/isoffin_load.c:1666,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1668,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1668,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1671,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_load.c:1671,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/filters/isoffin_load.c:1673,1
    - Dst: gf_isom_get_udts_config
      Src: /src/gpac/src/filters/isoffin_load.c:1679,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1681,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_load.c:1681,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1686,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1686,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1687,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1687,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1688,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1688,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1689,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1689,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1691,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1691,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1694,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1694,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1697,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1697,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1698,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1698,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1700,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1700,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1703,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1703,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1706,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1706,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1709,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1709,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1712,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1712,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1715,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1720,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1720,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1722,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1727,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1730,1
    - Dst: gf_isom_vvc_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1733,1
    - Dst: gf_isom_get_clean_aperture
      Src: /src/gpac/src/filters/isoffin_load.c:1740,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1743,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1743,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1744,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1744,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1745,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1745,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1746,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1746,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1748,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1749,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1750,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1751,1
    - Dst: gf_isom_get_mastering_display_colour_info
      Src: /src/gpac/src/filters/isoffin_load.c:1754,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/isoffin_load.c:1758,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/isoffin_load.c:1761,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/isoffin_load.c:1762,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/isoffin_load.c:1764,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/isoffin_load.c:1765,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1766,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1767,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/isoffin_load.c:1768,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/isoffin_load.c:1769,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1770,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:1770,1
    - Dst: gf_isom_get_content_light_level_info
      Src: /src/gpac/src/filters/isoffin_load.c:1773,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/isoffin_load.c:1777,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/isoffin_load.c:1778,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/isoffin_load.c:1779,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/isoffin_load.c:1780,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/isoffin_load.c:1781,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1782,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:1782,1
    CyclomaticComplexity: 271
    EdgeCount: 271
    ICount: 813
    argCount: 6
    argNames:
    - read
    - ch
    - track
    - stsd_idx
    - streamtype
    - use_iod
    argTypes:
    - ISOMReader*
    - ISOMChannel*
    - u32
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1785
      start: 811
    functionDepth: 9
    functionLinenumber: 811
    functionLinenumberEnd: 1785
    functionName: isor_declare_track
    functionSourceFile: /src/gpac/src/filters/isoffin_load.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_avc_cfg_del
    - gf_isom_vvc_config_get
    - gf_isom_get_tile_info
    - gf_isom_get_audio_layout
    - gf_isom_get_udts_config
    - gf_isom_mvc_config_get
    - gf_isom_svc_config_get
    - gf_4cc_to_str
    - gf_bs_read_utf8
    - gf_codecid_from_oti
    - gf_isom_get_media_subtype
    - isor_get_chapters
    - gf_pixel_fmt_probe
    - gf_isom_sample_has_subsamples
    - gf_isom_stxt_get_description
    - gf_isom_get_audio_info
    - gf_isom_get_creation_time
    - gf_odf_dovi_cfg_del
    - gf_sys_is_test_mode
    - strstr
    - gf_codecid_type
    - gf_isom_ac3_config_get
    - gf_isom_subtitle_get_mime
    - gf_isom_truehd_config_get
    - PROP_VEC2I_INT
    - gf_isom_ac4_config_get
    - gf_isom_get_track_group
    - PROP_UINT
    - gf_isom_avc_config_get
    - gf_odf_dovi_cfg_write_bs
    - gf_isom_flac_config_get
    - gf_isom_get_visual_info
    - GF_4CC
    - gf_isom_get_generic_sample_description
    - gf_odf_vvc_cfg_del
    - gf_odf_avc_cfg_write
    - PROP_VEC3I_INT
    - PROP_DATA_NO_COPY
    - gf_isom_get_jp2_config
    - gf_isom_get_icc_profile
    - PROP_DATA
    - gf_bs_available
    - PROP_LONGUINT
    - gf_bs_read_u32
    - gf_media_map_esd
    - gf_bs_get_content
    - gf_isom_get_reference_ID
    - gf_ac3_get_channel_layout
    - gf_crc_32
    - gf_isom_get_text_description
    - gf_isom_get_stsd_template
    - gf_m4a_get_config
    - gf_isom_get_color_info
    - gf_isom_enable_raw_pack
    - gf_isom_get_dims_description
    - gf_odf_hevc_cfg_del
    - gf_isom_get_mpeg4_subtype
    - gf_isom_get_webvtt_config
    - gf_isom_get_sample_description_count
    - gf_codec_id_from_isobmf
    - gf_bs_new
    - gf_isom_has_cenc_sample_group
    - gf_mpegh_get_mhas_pl
    - PROP_STRING
    - gf_isom_get_bitrate
    - gf_filter_pid_set_property_str
    - gf_odf_ac4_cfg_del
    - gf_isom_get_track_id
    - gf_isom_get_pcm_config
    - gf_isom_get_original_format_type
    - gf_isom_hevc_config_get
    - gf_isom_avs3v_config_get
    - gf_odf_tx3g_write
    - gf_isom_dovi_config_get
    - gf_strdup
    - gf_isom_get_content_light_level_info
    - PROP_VEC4I_INT
    - gf_odf_desc_new
    - PROP_4CC
    - gf_isom_get_lpcm_config
    - gf_bs_skip_bytes
    - gf_isom_get_sample
    - gf_isom_get_sample_duration
    - gf_bs_write_int
    - gf_bs_get_position
    - gf_error_to_string
    - gf_isom_get_media_data_size
    - strlen
    - PROP_FRAC_INT
    - gf_odf_vvc_cfg_write
    - gf_isom_get_user_data
    - gf_isom_get_y3d_info
    - gf_isom_get_media_timescale
    - gf_odf_avs3v_cfg_del
    - gf_odf_desc_del
    - gf_bs_write_u16
    - memset
    - gf_odf_ac3_cfg_write
    - gf_bs_write_u32
    - gf_audio_fmt_get_layout_from_cicp
    - gf_odf_ac4_cfg_write
    - memcpy
    - gf_isom_sample_del
    - gf_isom_get_clean_aperture
    - gf_isom_get_reference
    - gf_ceil
    - gf_isom_get_track_count
    - gf_odf_hevc_cfg_write
    - PROP_BOOL
    - gf_isom_xml_subtitle_get_description
    - gf_isom_get_mpegh_compatible_profiles
    - isor_setup_channel
    - gf_pixel_fmt_from_qt_type
    - gf_isom_get_media_language
    - GF_LOG
    - gf_isom_get_pixel_aspect_ratio
    - gf_isom_get_tmcd_config
    - gf_isom_is_media_encrypted
    - gf_filter_pid_set_property
    - gf_malloc
    - gf_isom_opus_config_get
    - gf_isom_lhvc_config_get
    - gf_odf_avs3v_cfg_write
    - gf_isom_get_reference_count
    - gf_bs_del
    - gf_isom_get_mastering_display_colour_info
    - gf_sys_old_arch_compat
    linkageType: ''
    returnType: void
    signature: void isor_declare_track(ISOMReader *read, ISOMChannel *ch, u32 track,
      u32 stsd_idx, u32 streamtype, Bool use_iod)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: isor_declare_track
      Src: /src/gpac/src/filters/isoffin_load.c:1789,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ch
    argTypes:
    - ISOMChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1790
      start: 1787
    functionDepth: 10
    functionLinenumber: 1787
    functionLinenumberEnd: 1790
    functionName: isor_update_channel_config
    functionSourceFile: /src/gpac/src/filters/isoffin_load.c
    functionUses: 0
    functionsReached:
    - isor_declare_track
    linkageType: ''
    returnType: void
    signature: void isor_update_channel_config(ISOMChannel *ch)
  - BBCount: 77
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_root_od
      Src: /src/gpac/src/filters/isoffin_load.c:1803,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_load.c:1804,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/isoffin_load.c:1807,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/isoffin_load.c:1812,1
    - Dst: gf_isom_is_external_track
      Src: /src/gpac/src/filters/isoffin_load.c:1819,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/filters/isoffin_load.c:1820,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/filters/isoffin_load.c:1825,1
    - Dst: gf_isom_is_external_track
      Src: /src/gpac/src/filters/isoffin_load.c:1831,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_load.c:1834,1
    - Dst: gf_isom_merge_external_edit
      Src: /src/gpac/src/filters/isoffin_load.c:1842,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/isoffin_load.c:1848,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_load.c:1849,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/isoffin_load.c:1851,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/isoffin_load.c:1853,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/isoffin_load.c:1855,1
    - Dst: strlen
      Src: /src/gpac/src/filters/isoffin_load.c:1857,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:1858,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1861,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1912,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/isoffin_load.c:1912,1
    - Dst: gf_isom_is_track_enabled
      Src: /src/gpac/src/filters/isoffin_load.c:1919,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/filters/isoffin_load.c:1921,1
    - Dst: gf_isom_is_track_referenced
      Src: /src/gpac/src/filters/isoffin_load.c:1927,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1929,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1932,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_load.c:1943,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/isoffin_load.c:1947,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/isoffin_load.c:1948,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/isoffin_load.c:1949,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/isoffin_load.c:1950,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/isoffin_load.c:1951,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/isoffin_load.c:1952,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_load.c:1952,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/isoffin_load.c:1953,1
    - Dst: gf_filter_add_source
      Src: /src/gpac/src/filters/isoffin_load.c:1955,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1958,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/filters/isoffin_load.c:1966,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_load.c:1979,1
    - Dst: gf_isom_has_track_reference
      Src: /src/gpac/src/filters/isoffin_load.c:1989,1
    - Dst: gf_isom_has_track_reference
      Src: /src/gpac/src/filters/isoffin_load.c:1993,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/filters/isoffin_load.c:1999,1
    - Dst: isor_declare_track
      Src: /src/gpac/src/filters/isoffin_load.c:2002,1
    - Dst: gf_isom_get_meta_item_count
      Src: /src/gpac/src/filters/isoffin_load.c:2010,1
    - Dst: isor_declare_item_properties
      Src: /src/gpac/src/filters/isoffin_load.c:2013,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:2020,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_load.c:2024,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:2026,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/isoffin_load.c:2029,1
    - Dst: gf_isom_apple_get_tag
      Src: /src/gpac/src/filters/isoffin_load.c:2033,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/isoffin_load.c:2041,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:2043,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/isoffin_load.c:2043,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2048,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2048,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/isoffin_load.c:2049,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/isoffin_load.c:2050,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/isoffin_load.c:2052,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/isoffin_load.c:2053,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/isoffin_load.c:2054,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/isoffin_load.c:2056,1
    CyclomaticComplexity: 117
    EdgeCount: 117
    ICount: 226
    argCount: 1
    argNames:
    - read
    argTypes:
    - ISOMReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2061
      start: 1792
    functionDepth: 10
    functionLinenumber: 1792
    functionLinenumberEnd: 2061
    functionName: isor_declare_objects
    functionSourceFile: /src/gpac/src/filters/isoffin_load.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_desc_del
    - gf_filter_pid_raw_new
    - gf_filter_get_sep
    - isor_declare_track
    - gf_list_count
    - gf_isom_get_track_id
    - gf_isom_get_meta_item_count
    - gf_isom_get_root_od
    - gf_isom_get_track_by_id
    - gf_4cc_to_str
    - gf_isom_is_external_track
    - isor_declare_item_properties
    - memcpy
    - gf_isom_get_media_subtype
    - sprintf
    - gf_isom_get_track_count
    - gf_filter_add_source
    - gf_dynstrcat
    - gf_isom_get_media_type
    - gf_isom_has_track_reference
    - sscanf
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_error_to_string
    - gf_isom_is_track_referenced
    - gf_isom_apple_get_tag
    - strlen
    - gf_filter_pid_set_property
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_isom_is_track_enabled
    - gf_filter_abort
    - gf_filter_pck_set_framing
    - gf_isom_merge_external_edit
    - strcmp
    - GF_4CC
    - gf_filter_pid_set_name
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err isor_declare_objects(ISOMReader *read)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta_item_count
      Src: /src/gpac/src/filters/isoffin_load.c:2075,1
    - Dst: gf_isom_get_meta_item_info
      Src: /src/gpac/src/filters/isoffin_load.c:2079,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/filters/isoffin_load.c:2085,1
    - Dst: gf_media_map_item_esd
      Src: /src/gpac/src/filters/isoffin_load.c:2101,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/isoffin_load.c:2118,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/isoffin_load.c:2128,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2129,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2129,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2133,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2133,1
    - Dst: gf_isom_meta_item_has_ref
      Src: /src/gpac/src/filters/isoffin_load.c:2135,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2136,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:2136,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2143,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2143,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2144,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2144,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2145,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2145,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2147,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2147,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2149,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:2149,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/isoffin_load.c:2154,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2158,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2158,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2159,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2159,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2162,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:2162,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2163,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:2163,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2164,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2164,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2165,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2165,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2168,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:2168,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2169,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:2169,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2170,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:2170,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2171,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:2171,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2173,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2174,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2175,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2176,1
    - Dst: gf_isom_get_meta_primary_item_id
      Src: /src/gpac/src/filters/isoffin_load.c:2179,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2180,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:2180,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2182,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:2182,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2186,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2186,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:2188,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:2188,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:2189,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:2189,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:2190,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:2190,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2193,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2193,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2194,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2194,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2195,1
    - Dst: PROP_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:2195,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2199,1
    - Dst: PROP_VEC2I_INT
      Src: /src/gpac/src/filters/isoffin_load.c:2199,1
    - Dst: gf_isom_meta_get_item_ref_id
      Src: /src/gpac/src/filters/isoffin_load.c:2201,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2202,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2202,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2207,1
    - Dst: PROP_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:2207,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2208,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2208,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2209,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:2209,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2211,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2211,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2212,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2212,1
    - Dst: isor_create_channel
      Src: /src/gpac/src/filters/isoffin_load.c:2216,1
    - Dst: isor_declare_pssh
      Src: /src/gpac/src/filters/isoffin_load.c:2221,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 120
    argCount: 3
    argNames:
    - read
    - ch
    - item_idx
    argTypes:
    - ISOMReader*
    - ISOMChannel*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2226
      start: 2063
    functionDepth: 5
    functionLinenumber: 2063
    functionLinenumberEnd: 2226
    functionName: isor_declare_item_properties
    functionSourceFile: /src/gpac/src/filters/isoffin_load.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_meta_primary_item_id
    - gf_odf_desc_del
    - PROP_STRING
    - gf_filter_pid_set_property_str
    - gf_isom_meta_item_has_ref
    - PROP_DATA_NO_COPY
    - gf_isom_get_meta_item_count
    - gf_filter_pid_new
    - gf_media_map_item_esd
    - gf_isom_meta_get_item_ref_id
    - PROP_4CC
    - PROP_BOOL
    - gf_isom_get_meta_item_info
    - isor_declare_pssh
    - gf_isom_get_meta_image_props
    - gf_filter_pid_copy_properties
    - isor_create_channel
    - gf_filter_pid_set_property
    - PROP_VEC2I_INT
    - PROP_FRAC_INT
    - PROP_UINT
    linkageType: ''
    returnType: Bool
    signature: Bool isor_declare_item_properties(ISOMReader *read, ISOMChannel *ch,
      u32 item_idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/ff_enc.c:180,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/ff_enc.c:180,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/ff_enc.c:182,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/ff_enc.c:182,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - filter
    - media_type
    argTypes:
    - GF_Filter*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 184
    functionName: ffenc_override_caps
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - GF_ARRAY_LENGTH
    - gf_filter_override_caps
    linkageType: ''
    returnType: void
    signature: void ffenc_override_caps(GF_Filter *filter, u32 media_type)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_enc.c:189,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/ff_enc.c:190,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_enc.c:191,1
    - Dst: ffmpeg_setup_logs
      Src: /src/gpac/src/filters/ff_enc.c:193,1
    - Dst: av_packet_alloc
      Src: /src/gpac/src/filters/ff_enc.c:196,1
    - Dst: avcodec_find_encoder_by_name
      Src: /src/gpac/src/filters/ff_enc.c:203,1
    - Dst: ffenc_override_caps
      Src: /src/gpac/src/filters/ff_enc.c:205,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filters/ff_enc.c:209,1
    - Dst: avcodec_find_encoder
      Src: /src/gpac/src/filters/ff_enc.c:211,1
    - Dst: ffmpeg_codecid_from_gpac
      Src: /src/gpac/src/filters/ff_enc.c:211,1
    - Dst: ffenc_override_caps
      Src: /src/gpac/src/filters/ff_enc.c:214,1
    - Dst: gf_filter_is_temporary
      Src: /src/gpac/src/filters/ff_enc.c:217,1
    - Dst: gf_filter_meta_set_instances
      Src: /src/gpac/src/filters/ff_enc.c:218,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 186
    functionDepth: 2
    functionLinenumber: 186
    functionLinenumberEnd: 223
    functionName: ffenc_initialize
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_bs_new
    - ffmpeg_codecid_from_gpac
    - gf_filter_is_temporary
    - gf_filter_meta_set_instances
    - av_packet_alloc
    - ffmpeg_setup_logs
    - gf_codecid_parse
    - avcodec_find_encoder
    - ffenc_override_caps
    - avcodec_find_encoder_by_name
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffenc_initialize(GF_Filter *filter)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_enc.c:227,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_enc.c:228,1
    - Dst: av_frame_free
      Src: /src/gpac/src/filters/ff_enc.c:229,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_enc.c:230,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_enc.c:231,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_enc.c:233,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/ff_enc.c:234,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_enc.c:235,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/ff_enc.c:237,1
    - Dst: av_packet_free
      Src: /src/gpac/src/filters/ff_enc.c:240,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ff_enc.c:244,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/ff_enc.c:245,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_enc.c:250,1
    - Dst: avcodec_free_context
      Src: /src/gpac/src/filters/ff_enc.c:251,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_enc.c:253,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 27
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 225
    functionDepth: 5
    functionLinenumber: 225
    functionLinenumberEnd: 255
    functionName: ffenc_finalize
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_list_pop_back
    - av_packet_free
    - gf_filter_pck_unref
    - gf_list_count
    - gf_bs_del
    - av_dict_free
    - avcodec_free_context
    - fprintf
    - av_frame_free
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ffenc_finalize(GF_Filter *filter)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/ff_enc.c:260,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:261,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:263,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:263,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:265,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:265,1
    - Dst: avcodec_get_name
      Src: /src/gpac/src/filters/ff_enc.c:267,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:269,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/ff_enc.c:269,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:272,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:272,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:275,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:275,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:277,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:277,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:280,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:281,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:290,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_enc.c:290,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:291,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_enc.c:291,1
    - Dst: ffmpeg_extradata_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:319,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:321,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/ff_enc.c:321,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:327,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:327,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:329,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:332,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/ff_enc.c:332,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:334,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:337,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_enc.c:337,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/ff_enc.c:340,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:341,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:341,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:343,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 72
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_FFEncodeCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 257
    functionDepth: 1
    functionLinenumber: 257
    functionLinenumberEnd: 346
    functionName: ffenc_copy_pid_props
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - PROP_STRING
    - avcodec_get_name
    - ffmpeg_extradata_to_gpac
    - PROP_DATA_NO_COPY
    - PROP_BOOL
    - PROP_LONGSINT
    - gf_filter_pid_set_property
    - gf_timestamp_rescale
    linkageType: ''
    returnType: void
    signature: void ffenc_copy_pid_props(GF_FFEncodeCtx *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/ff_enc.c:358,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dst_pck
    - pkt
    argTypes:
    - GF_FilterPacket*
    - AVPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 349
    functionDepth: 1
    functionLinenumber: 349
    functionLinenumberEnd: 359
    functionName: ffenc_set_deps
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_dependency_flags
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE ffenc_set_deps(GF_FilterPacket *dst_pck, AVPacket *pkt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ff_enc.c:363,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:365,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - GF_FFEncodeCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 361
    functionDepth: 1
    functionLinenumber: 361
    functionLinenumberEnd: 369
    functionName: ffenc_get_cts
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_filter_pck_get_cts
    linkageType: ''
    returnType: u64
    signature: u64 ffenc_get_cts(GF_FFEncodeCtx *ctx, GF_FilterPacket *pck)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: av_packet_get_side_data
      Src: /src/gpac/src/filters/ff_enc.c:393,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/ff_enc.c:395,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/ff_enc.c:396,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/ff_enc.c:397,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/ff_enc.c:398,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_enc.c:399,1
    - Dst: gf_bs_read_u64_le
      Src: /src/gpac/src/filters/ff_enc.c:402,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ff_enc.c:421,1
    - Dst: s
      Src: /src/gpac/src/filters/ff_enc.c:421,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ff_enc.c:424,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ff_enc.c:428,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ff_enc.c:432,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_enc.c:437,1
    - Dst: s
      Src: /src/gpac/src/filters/ff_enc.c:437,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/ff_enc.c:438,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 55
    argCount: 4
    argNames:
    - filter
    - ctx
    - pkt
    - do_reporting
    argTypes:
    - GF_Filter*
    - struct _gf_ffenc_ctx*
    - AVPacket*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 372
    functionDepth: 6
    functionLinenumber: 372
    functionLinenumberEnd: 440
    functionName: ffenc_log_video
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - gf_filter_update_status
    - sprintf
    - av_packet_get_side_data
    - gf_bs_read_u64_le
    - gf_bs_read_u16
    - s
    - gf_bs_read_u8
    - gf_bs_reassign_buffer
    - gf_bs_read_u32_le
    - fprintf
    linkageType: ''
    returnType: void
    signature: void ffenc_log_video(GF_Filter *filter, struct _gf_ffenc_ctx *ctx,
      AVPacket *pkt, Bool do_reporting)
  - BBCount: 86
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_enc.c:460,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:470,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_enc.c:471,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/ff_enc.c:473,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/ff_enc.c:474,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/ff_enc.c:475,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/ff_enc.c:481,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/ff_enc.c:488,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/ff_enc.c:489,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:490,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_enc.c:491,1
    - Dst: FF_INIT_PCK
      Src: /src/gpac/src/filters/ff_enc.c:496,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/ff_enc.c:513,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/ff_enc.c:517,1
    - Dst: ffenc_get_cts
      Src: /src/gpac/src/filters/ff_enc.c:534,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:547,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:556,1
    - Dst: ffenc_get_cts
      Src: /src/gpac/src/filters/ff_enc.c:565,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/ff_enc.c:589,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_enc.c:590,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_enc.c:591,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/ff_enc.c:596,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/ff_enc.c:617,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/ff_enc.c:619,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/ff_enc.c:621,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/ff_enc.c:623,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:628,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/ff_enc.c:628,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_enc.c:629,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/ff_enc.c:634,1
    - Dst: ffenc_get_cts
      Src: /src/gpac/src/filters/ff_enc.c:654,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/ff_enc.c:655,1
    - Dst: SCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:664,1
    - Dst: SCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:666,1
    - Dst: UNSCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:673,1
    - Dst: avcodec_encode_video2
      Src: /src/gpac/src/filters/ff_enc.c:680,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_enc.c:683,1
    - Dst: avcodec_encode_video2
      Src: /src/gpac/src/filters/ff_enc.c:684,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:688,1
    - Dst: avcodec_send_frame
      Src: /src/gpac/src/filters/ff_enc.c:689,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_enc.c:691,1
    - Dst: avcodec_send_frame
      Src: /src/gpac/src/filters/ff_enc.c:693,1
    - Dst: AVERROR
      Src: /src/gpac/src/filters/ff_enc.c:696,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:703,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_enc.c:703,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_enc.c:703,1
    - Dst: avcodec_receive_packet
      Src: /src/gpac/src/filters/ff_enc.c:708,1
    - Dst: AVERROR
      Src: /src/gpac/src/filters/ff_enc.c:710,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:720,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_enc.c:720,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_enc.c:720,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/ff_enc.c:726,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/ff_enc.c:728,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_enc.c:735,1
    - Dst: UNSCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:738,1
    - Dst: UNSCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:739,1
    - Dst: UNSCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:741,1
    - Dst: UNSCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:742,1
    - Dst: UNSCALE_DUR
      Src: /src/gpac/src/filters/ff_enc.c:743,1
    - Dst: avcodec_encode_video2
      Src: /src/gpac/src/filters/ff_enc.c:748,1
    - Dst: avcodec_send_frame
      Src: /src/gpac/src/filters/ff_enc.c:751,1
    - Dst: avcodec_receive_packet
      Src: /src/gpac/src/filters/ff_enc.c:753,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_enc.c:758,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:765,1
    - Dst: avcodec_free_context
      Src: /src/gpac/src/filters/ff_enc.c:766,1
    - Dst: ffenc_configure_pid_ex
      Src: /src/gpac/src/filters/ff_enc.c:769,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_enc.c:774,1
    - Dst: UNSCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:778,1
    - Dst: UNSCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:779,1
    - Dst: UNSCALE_DUR
      Src: /src/gpac/src/filters/ff_enc.c:780,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/ff_enc.c:783,1
    - Dst: av_packet_free_side_data
      Src: /src/gpac/src/filters/ff_enc.c:787,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_enc.c:789,1
    - Dst: av_packet_free_side_data
      Src: /src/gpac/src/filters/ff_enc.c:794,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_enc.c:795,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_enc.c:800,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/ff_enc.c:802,1
    - Dst: ffenc_get_cts
      Src: /src/gpac/src/filters/ff_enc.c:803,1
    - Dst: SCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:805,1
    - Dst: UNSCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:806,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/ff_enc.c:818,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:831,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/ff_enc.c:831,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:833,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/ff_enc.c:841,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/ff_enc.c:842,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/ff_enc.c:846,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/ff_enc.c:847,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/ff_enc.c:850,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/ff_enc.c:864,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:867,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/ff_enc.c:867,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_enc.c:878,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/ff_enc.c:879,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/ff_enc.c:880,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/ff_enc.c:880,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/ff_enc.c:881,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/ff_enc.c:882,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/ff_enc.c:883,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/ff_enc.c:884,1
    - Dst: gf_pixel_get_bytes_per_pixel
      Src: /src/gpac/src/filters/ff_enc.c:884,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/ff_enc.c:885,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/ff_enc.c:886,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/ff_enc.c:887,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/ff_enc.c:888,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_enc.c:889,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:890,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/ff_enc.c:890,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/ff_enc.c:896,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_enc.c:898,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_enc.c:913,1
    - Dst: ffenc_copy_pid_props
      Src: /src/gpac/src/filters/ff_enc.c:918,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/ff_enc.c:921,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/ff_enc.c:922,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_enc.c:923,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/ff_enc.c:926,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/ff_enc.c:928,1
    - Dst: ffmpeg_generate_gpac_dsi
      Src: /src/gpac/src/filters/ff_enc.c:932,1
    - Dst: ffenc_log_video
      Src: /src/gpac/src/filters/ff_enc.c:936,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/ff_enc.c:936,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/ff_enc.c:946,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/ff_enc.c:947,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/ff_enc.c:953,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:954,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/ff_enc.c:957,1
    - Dst: ffenc_set_deps
      Src: /src/gpac/src/filters/ff_enc.c:959,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/ff_enc.c:961,1
    - Dst: av_packet_free_side_data
      Src: /src/gpac/src/filters/ff_enc.c:963,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_enc.c:964,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/ff_enc.c:969,1
    CyclomaticComplexity: 108
    EdgeCount: 108
    ICount: 410
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - struct _gf_ffenc_ctx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 972
      start: 442
    functionDepth: 9
    functionLinenumber: 442
    functionLinenumberEnd: 972
    functionName: ffenc_process_video
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_pixel_get_bytes_per_pixel
    - gf_bs_new
    - avcodec_send_frame
    - gf_bs_write_u16
    - gf_list_find
    - ffenc_get_cts
    - gf_list_count
    - memset
    - PROP_DATA_NO_COPY
    - gf_filter_pck_ref_props
    - ffenc_copy_pid_props
    - PROP_DATA
    - gf_filter_pck_get_frame_interface
    - PROP_LONGSINT
    - gf_bs_write_u32
    - gf_filter_pid_get_packet
    - gf_filter_post_process_task
    - gf_filter_pid_get_name
    - gf_list_get
    - gf_bs_get_content
    - memcpy
    - FF_RELEASE_PCK
    - GF_FEVT_INIT
    - gf_list_add
    - avcodec_receive_packet
    - av_packet_free_side_data
    - gf_filter_pck_get_duration
    - avcodec_free_context
    - gf_crc_32
    - SCALE_TS
    - gf_filter_pck_get_property
    - gf_filter_pid_drop_packet
    - gf_filter_pid_set_discard
    - ffenc_configure_pid_ex
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_filter_pck_set_duration
    - av_err2str
    - gf_filter_pid_set_eos
    - avcodec_encode_video2
    - gf_filter_pck_get_interlaced
    - gf_list_del_item
    - gf_error_to_string
    - gf_filter_pid_send_event
    - gf_filter_pid_is_eos
    - gf_filter_pck_set_sap
    - FF_INIT_PCK
    - gf_sys_clock_high_res
    - gf_malloc
    - AVERROR
    - gf_filter_pid_set_property
    - UNSCALE_DUR
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - UNSCALE_TS
    - gf_bs_del
    - gf_filter_pck_unref
    - ffmpeg_generate_gpac_dsi
    - gf_pixel_get_size_info
    - GF_FilterFrameInterface*::get_plane
    - ffenc_log_video
    - gf_filter_reporting_enabled
    - ffenc_set_deps
    - GF_4CC
    - gf_bs_write_u8
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffenc_process_video(GF_Filter *filter, struct _gf_ffenc_ctx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _ts
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 659
    functionDepth: 0
    functionLinenumber: 659
    functionLinenumberEnd: 660
    functionName: SCALE_TS
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SCALE_TS(_ts)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _ts
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 660
    functionDepth: 0
    functionLinenumber: 660
    functionLinenumberEnd: 661
    functionName: UNSCALE_TS
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: UNSCALE_TS(_ts)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _ts
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 662
      start: 661
    functionDepth: 0
    functionLinenumber: 661
    functionLinenumberEnd: 662
    functionName: UNSCALE_DUR
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: UNSCALE_DUR(_ts)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_enc.c:988,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_enc.c:990,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/ff_enc.c:997,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/ff_enc.c:998,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/ff_enc.c:999,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/ff_enc.c:1004,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/ff_enc.c:1011,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/ff_enc.c:1021,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_enc.c:1027,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_enc.c:1030,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 5
    argNames:
    - ctx
    - data
    - size
    - sample_offset
    - nb_samples
    argTypes:
    - struct _gf_ffenc_ctx*
    - u8*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1038
      start: 974
    functionDepth: 1
    functionLinenumber: 974
    functionLinenumberEnd: 1038
    functionName: ffenc_audio_append_samples
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - memcpy
    - memset
    - gf_assert
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void ffenc_audio_append_samples(struct _gf_ffenc_ctx *ctx, const u8
      *data, u32 size, u32 sample_offset, u32 nb_samples)
  - BBCount: 63
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_enc.c:1056,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1066,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_enc.c:1067,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/ff_enc.c:1069,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/ff_enc.c:1070,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/ff_enc.c:1071,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/ff_enc.c:1077,1
    - Dst: avcodec_fill_audio_frame
      Src: /src/gpac/src/filters/ff_enc.c:1092,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1095,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_enc.c:1095,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/ff_enc.c:1103,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1105,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_enc.c:1106,1
    - Dst: ffenc_get_cts
      Src: /src/gpac/src/filters/ff_enc.c:1111,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/ff_enc.c:1115,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/ff_enc.c:1116,1
    - Dst: ffenc_audio_append_samples
      Src: /src/gpac/src/filters/ff_enc.c:1124,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_enc.c:1125,1
    - Dst: ffenc_audio_append_samples
      Src: /src/gpac/src/filters/ff_enc.c:1131,1
    - Dst: avcodec_fill_audio_frame
      Src: /src/gpac/src/filters/ff_enc.c:1134,1
    - Dst: avcodec_fill_audio_frame
      Src: /src/gpac/src/filters/ff_enc.c:1138,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1143,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_enc.c:1143,1
    - Dst: ffenc_audio_append_samples
      Src: /src/gpac/src/filters/ff_enc.c:1147,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/ff_enc.c:1148,1
    - Dst: ffenc_get_cts
      Src: /src/gpac/src/filters/ff_enc.c:1149,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_enc.c:1151,1
    - Dst: ffenc_audio_append_samples
      Src: /src/gpac/src/filters/ff_enc.c:1158,1
    - Dst: avcodec_fill_audio_frame
      Src: /src/gpac/src/filters/ff_enc.c:1159,1
    - Dst: avcodec_fill_audio_frame
      Src: /src/gpac/src/filters/ff_enc.c:1162,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1166,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_enc.c:1166,1
    - Dst: FF_INIT_PCK
      Src: /src/gpac/src/filters/ff_enc.c:1178,1
    - Dst: av_channel_layout_copy
      Src: /src/gpac/src/filters/ff_enc.c:1190,1
    - Dst: avcodec_encode_audio2
      Src: /src/gpac/src/filters/ff_enc.c:1197,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1199,1
    - Dst: avcodec_send_frame
      Src: /src/gpac/src/filters/ff_enc.c:1201,1
    - Dst: AVERROR
      Src: /src/gpac/src/filters/ff_enc.c:1203,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1210,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_enc.c:1210,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_enc.c:1210,1
    - Dst: avcodec_receive_packet
      Src: /src/gpac/src/filters/ff_enc.c:1214,1
    - Dst: AVERROR
      Src: /src/gpac/src/filters/ff_enc.c:1216,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_enc.c:1224,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/ff_enc.c:1236,1
    - Dst: avcodec_encode_audio2
      Src: /src/gpac/src/filters/ff_enc.c:1243,1
    - Dst: avcodec_send_frame
      Src: /src/gpac/src/filters/ff_enc.c:1246,1
    - Dst: avcodec_receive_packet
      Src: /src/gpac/src/filters/ff_enc.c:1248,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_enc.c:1252,1
    - Dst: avcodec_free_context
      Src: /src/gpac/src/filters/ff_enc.c:1259,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1262,1
    - Dst: ffenc_configure_pid_ex
      Src: /src/gpac/src/filters/ff_enc.c:1263,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_enc.c:1268,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/ff_enc.c:1292,1
    - Dst: memmove
      Src: /src/gpac/src/filters/ff_enc.c:1294,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/ff_enc.c:1304,1
    - Dst: ffenc_audio_append_samples
      Src: /src/gpac/src/filters/ff_enc.c:1311,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_enc.c:1313,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1317,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_enc.c:1317,1
    - Dst: av_packet_free_side_data
      Src: /src/gpac/src/filters/ff_enc.c:1318,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_enc.c:1319,1
    - Dst: av_packet_free_side_data
      Src: /src/gpac/src/filters/ff_enc.c:1323,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_enc.c:1324,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/ff_enc.c:1327,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_enc.c:1329,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_enc.c:1332,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/ff_enc.c:1337,1
    - Dst: ffenc_get_cts
      Src: /src/gpac/src/filters/ff_enc.c:1338,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:1343,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/ff_enc.c:1343,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_enc.c:1353,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/ff_enc.c:1357,1
    - Dst: ffenc_get_cts
      Src: /src/gpac/src/filters/ff_enc.c:1358,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/ff_enc.c:1359,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/ff_enc.c:1366,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_enc.c:1367,1
    - Dst: ffenc_copy_pid_props
      Src: /src/gpac/src/filters/ff_enc.c:1376,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/ff_enc.c:1379,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/ff_enc.c:1380,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_enc.c:1381,1
    - Dst: ffmpeg_generate_gpac_dsi
      Src: /src/gpac/src/filters/ff_enc.c:1384,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/ff_enc.c:1388,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/ff_enc.c:1389,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/ff_enc.c:1392,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/ff_enc.c:1394,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/ff_enc.c:1396,1
    - Dst: ffenc_set_deps
      Src: /src/gpac/src/filters/ff_enc.c:1397,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/ff_enc.c:1399,1
    - Dst: av_packet_free_side_data
      Src: /src/gpac/src/filters/ff_enc.c:1401,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_enc.c:1402,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/ff_enc.c:1407,1
    CyclomaticComplexity: 76
    EdgeCount: 76
    ICount: 288
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - struct _gf_ffenc_ctx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1410
      start: 1040
    functionDepth: 3
    functionLinenumber: 1040
    functionLinenumberEnd: 1410
    functionName: ffenc_process_audio
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - avcodec_send_frame
    - ffenc_get_cts
    - gf_list_count
    - gf_filter_pck_ref_props
    - ffenc_copy_pid_props
    - PROP_LONGSINT
    - avcodec_fill_audio_frame
    - gf_filter_pid_get_packet
    - gf_filter_post_process_task
    - gf_filter_pid_get_name
    - gf_realloc
    - gf_list_get
    - memcpy
    - FF_RELEASE_PCK
    - GF_FEVT_INIT
    - gf_list_add
    - avcodec_receive_packet
    - av_packet_free_side_data
    - avcodec_free_context
    - gf_filter_pck_get_duration
    - gf_filter_pid_drop_packet
    - gf_filter_pid_set_discard
    - ffenc_configure_pid_ex
    - memmove
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_filter_pck_set_duration
    - av_err2str
    - gf_filter_pid_set_eos
    - gf_list_del_item
    - gf_filter_pck_set_sap
    - gf_filter_pid_send_event
    - gf_filter_pid_is_eos
    - FF_INIT_PCK
    - AVERROR
    - gf_timestamp_rescale
    - avcodec_encode_audio2
    - gf_filter_pid_set_property
    - ffenc_audio_append_samples
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - ffmpeg_generate_gpac_dsi
    - av_channel_layout_copy
    - ffenc_set_deps
    - gf_list_rem
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffenc_process_audio(GF_Filter *filter, struct _gf_ffenc_ctx
      *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_enc.c:1414,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/ff_enc.c:1415,1
    - Dst: GF_FFEncodeCtx*::process
      Src: /src/gpac/src/filters/ff_enc.c:1417,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1418
      start: 1412
    functionDepth: 1
    functionLinenumber: 1412
    functionLinenumberEnd: 1418
    functionName: ffenc_process
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_would_block
    - GF_FFEncodeCtx*::process
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffenc_process(GF_Filter *filter)
  - BBCount: 148
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_enc.c:1432,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/ff_enc.c:1438,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1444,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1455,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/ff_enc.c:1460,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/ff_enc.c:1464,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filters/ff_enc.c:1469,1
    - Dst: avcodec_find_encoder_by_name
      Src: /src/gpac/src/filters/ff_enc.c:1471,1
    - Dst: ffmpeg_codecid_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1473,1
    - Dst: ffmpeg_codecid_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1477,1
    - Dst: gf_filter_is_dynamic
      Src: /src/gpac/src/filters/ff_enc.c:1482,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/ff_enc.c:1485,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1489,1
    - Dst: ffmpeg_codecid_from_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1510,1
    - Dst: avcodec_find_encoder
      Src: /src/gpac/src/filters/ff_enc.c:1515,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1521,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/ff_enc.c:1521,1
    - Dst: ffmpeg_codecid_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1526,1
    - Dst: ffmpeg_stream_type_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1528,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1530,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filters/ff_enc.c:1530,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filters/ff_enc.c:1530,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/ff_enc.c:1537,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1545,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/ff_enc.c:1549,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:1551,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_enc.c:1556,1
    - Dst: ffenc_copy_pid_props
      Src: /src/gpac/src/filters/ff_enc.c:1557,1
    - Dst: GET_PROP
      Src: /src/gpac/src/filters/ff_enc.c:1574,1
    - Dst: GET_PROP
      Src: /src/gpac/src/filters/ff_enc.c:1575,1
    - Dst: GET_PROP
      Src: /src/gpac/src/filters/ff_enc.c:1576,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/ff_enc.c:1578,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/ff_enc.c:1581,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/ff_enc.c:1585,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1589,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1594,1
    - Dst: gf_media_get_reduced_frame_rate
      Src: /src/gpac/src/filters/ff_enc.c:1599,1
    - Dst: GET_PROP
      Src: /src/gpac/src/filters/ff_enc.c:1601,1
    - Dst: GET_PROP
      Src: /src/gpac/src/filters/ff_enc.c:1602,1
    - Dst: GET_PROP
      Src: /src/gpac/src/filters/ff_enc.c:1603,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1605,1
    - Dst: ffmpeg_codecid_from_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1612,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1632,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1637,1
    - Dst: ffmpeg_pixfmt_from_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1645,1
    - Dst: ffmpeg_pixfmt_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1654,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1661,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/ff_enc.c:1661,1
    - Dst: ffmpeg_pixfmt_from_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1666,1
    - Dst: ffmpeg_pixfmt_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1678,1
    - Dst: av_codec_iterate
      Src: /src/gpac/src/filters/ff_enc.c:1692,1
    - Dst: av_codec_next
      Src: /src/gpac/src/filters/ff_enc.c:1694,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1704,1
    - Dst: ffmpeg_pixfmt_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1724,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1731,1
    - Dst: ffmpeg_pixfmt_from_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1735,1
    - Dst: ffmpeg_pixfmt_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1737,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_enc.c:1738,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:1738,1
    - Dst: gf_pixel_get_downsampling
      Src: /src/gpac/src/filters/ff_enc.c:1744,1
    - Dst: ffmpeg_pixfmt_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1744,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_enc.c:1753,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:1753,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_enc.c:1759,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:1759,1
    - Dst: ffmpeg_audio_fmt_from_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1767,1
    - Dst: gf_audio_fmt_get_layout_from_cicp
      Src: /src/gpac/src/filters/ff_enc.c:1792,1
    - Dst: gf_audio_fmt_get_cicp_layout
      Src: /src/gpac/src/filters/ff_enc.c:1792,1
    - Dst: ffmpeg_channel_layout_from_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1794,1
    - Dst: gf_audio_fmt_get_layout_from_cicp
      Src: /src/gpac/src/filters/ff_enc.c:1822,1
    - Dst: gf_audio_fmt_get_cicp_layout
      Src: /src/gpac/src/filters/ff_enc.c:1822,1
    - Dst: ffmpeg_audio_fmt_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1832,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_enc.c:1833,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:1833,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_enc.c:1836,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:1836,1
    - Dst: ffmpeg_channel_layout_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1841,1
    - Dst: ffmpeg_channel_layout_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1843,1
    - Dst: gf_audio_fmt_get_num_channels_from_layout
      Src: /src/gpac/src/filters/ff_enc.c:1846,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_enc.c:1847,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:1847,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_enc.c:1848,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/ff_enc.c:1848,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1863,1
    - Dst: avcodec_alloc_context3
      Src: /src/gpac/src/filters/ff_enc.c:1866,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1876,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1884,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1888,1
    - Dst: gf_media_get_reduced_frame_rate
      Src: /src/gpac/src/filters/ff_enc.c:1901,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1929,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_enc.c:1929,1
    - Dst: gf_media_get_reduced_frame_rate
      Src: /src/gpac/src/filters/ff_enc.c:1934,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:1944,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:1945,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:1946,1
    - Dst: av_opt_find
      Src: /src/gpac/src/filters/ff_enc.c:1948,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:1949,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:1951,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:1960,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1964,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1967,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1971,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1974,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1977,1
    - Dst: av_frame_alloc
      Src: /src/gpac/src/filters/ff_enc.c:1986,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/ff_enc.c:1995,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/ff_enc.c:1997,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:2004,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:2009,1
    - Dst: ffmpeg_channel_layout_from_gpac
      Src: /src/gpac/src/filters/ff_enc.c:2011,1
    - Dst: av_channel_layout_uninit
      Src: /src/gpac/src/filters/ff_enc.c:2018,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:2021,1
    - Dst: ffmpeg_channel_layout_from_gpac
      Src: /src/gpac/src/filters/ff_enc.c:2023,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:2031,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:2051,1
    - Dst: av_frame_alloc
      Src: /src/gpac/src/filters/ff_enc.c:2056,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/ff_enc.c:2059,1
    - Dst: gf_audio_fmt_is_planar
      Src: /src/gpac/src/filters/ff_enc.c:2062,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/ff_enc.c:2066,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/ff_enc.c:2067,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_enc.c:2080,1
    - Dst: gf_m4a_get_profile
      Src: /src/gpac/src/filters/ff_enc.c:2085,1
    - Dst: gf_m4a_write_config
      Src: /src/gpac/src/filters/ff_enc.c:2087,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:2088,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/ff_enc.c:2088,1
    - Dst: ffmpeg_set_enc_dec_flags
      Src: /src/gpac/src/filters/ff_enc.c:2095,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/ff_enc.c:2106,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_enc.c:2108,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:2111,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_enc.c:2113,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:2116,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2119,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:2120,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filters/ff_enc.c:2124,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/filters/ff_enc.c:2125,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:2129,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/ff_enc.c:2129,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_enc.c:2130,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/ff_enc.c:2135,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:2137,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_enc.c:2145,1
    - Dst: ffmpeg_check_threads
      Src: /src/gpac/src/filters/ff_enc.c:2146,1
    - Dst: avcodec_open2
      Src: /src/gpac/src/filters/ff_enc.c:2147,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_enc.c:2149,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:2150,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_enc.c:2150,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_enc.c:2150,1
    - Dst: avcodec_free_context
      Src: /src/gpac/src/filters/ff_enc.c:2151,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_enc.c:2161,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_enc.c:2162,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_enc.c:2167,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_enc.c:2169,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/ff_enc.c:2170,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/ff_enc.c:2171,1
    - Dst: ffmpeg_report_options
      Src: /src/gpac/src/filters/ff_enc.c:2179,1
    - Dst: ffenc_copy_pid_props
      Src: /src/gpac/src/filters/ff_enc.c:2182,1
    CyclomaticComplexity: 208
    EdgeCount: 208
    ICount: 597
    argCount: 4
    argNames:
    - filter
    - pid
    - is_remove
    - is_force_reconf
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2184
      start: 1420
    functionDepth: 5
    functionLinenumber: 1420
    functionLinenumberEnd: 2184
    functionName: ffenc_configure_pid_ex
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 2
    functionsReached:
    - gf_free
    - av_dict_set
    - gf_pixel_get_downsampling
    - gf_audio_fmt_get_cicp_layout
    - gf_filter_is_dynamic
    - ffmpeg_channel_layout_to_gpac
    - avcodec_open2
    - gf_list_count
    - ffmpeg_audio_fmt_from_gpac
    - gf_audio_fmt_is_planar
    - memset
    - gf_audio_fmt_get_num_channels_from_layout
    - ffenc_copy_pid_props
    - PROP_DATA_NO_COPY
    - gf_fopen
    - av_dict_copy
    - gf_filter_pid_new
    - avcodec_find_encoder
    - gf_stream_type_name
    - PROP_LONGUINT
    - ffmpeg_check_threads
    - avcodec_find_encoder_by_name
    - gf_audio_fmt_get_layout_from_cicp
    - gf_filter_pid_get_name
    - gf_realloc
    - ffmpeg_set_enc_dec_flags
    - av_opt_find
    - av_dict_free
    - gf_strdup
    - snprintf
    - av_codec_next
    - ffmpeg_channel_layout_from_gpac
    - av_frame_alloc
    - sprintf
    - gf_m4a_get_profile
    - ffmpeg_audio_fmt_to_gpac
    - ffmpeg_codecid_to_gpac
    - gf_codecid_parse
    - avcodec_free_context
    - ffmpeg_pixfmt_from_gpac
    - av_codec_iterate
    - gf_audio_fmt_bit_depth
    - gf_filter_get_udta
    - gf_filter_pid_get_property_str
    - gf_utf8_is_legal
    - gf_pixel_fmt_name
    - GF_LOG
    - gf_filter_pid_negotiate_property
    - av_err2str
    - ffmpeg_pixfmt_to_gpac
    - avcodec_alloc_context3
    - gf_media_get_reduced_frame_rate
    - gf_m4a_write_config
    - gf_error_to_string
    - GET_PROP
    - gf_filter_pid_set_property
    - av_channel_layout_uninit
    - gf_filter_set_name
    - ffmpeg_report_options
    - gf_filter_pid_get_property
    - ffmpeg_codecid_from_gpac
    - gf_filter_pid_remove
    - PROP_UINT
    - gf_filter_pid_set_framing_mode
    - ffmpeg_stream_type_to_gpac
    - gf_pixel_get_size_info
    - strcmp
    - gf_filter_pid_caps_query
    - gf_codecid_name
    - gf_file_load_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffenc_configure_pid_ex(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove, Bool is_force_reconf)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _a
    - ','
    - _code
    - ','
    - _name
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1570
      start: 1563
    functionDepth: 0
    functionLinenumber: 1563
    functionLinenumberEnd: 1570
    functionName: GET_PROP
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_PROP(_a, _code, _name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ffenc_configure_pid_ex
      Src: /src/gpac/src/filters/ff_enc.c:2188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2190
      start: 2186
    functionDepth: 6
    functionLinenumber: 2186
    functionLinenumberEnd: 2190
    functionName: ffenc_configure_pid
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - ffenc_configure_pid_ex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffenc_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_enc.c:2197,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2199,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2201,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2202,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2204,1
    - Dst: strstr
      Src: /src/gpac/src/filters/ff_enc.c:2205,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2210,1
    - Dst: gf_filter_report_meta_option
      Src: /src/gpac/src/filters/ff_enc.c:2212,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2215,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2215,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2218,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2219,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2220,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2221,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2222,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2224,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2224,1
    - Dst: atoi
      Src: /src/gpac/src/filters/ff_enc.c:2225,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2227,1
    - Dst: atoi
      Src: /src/gpac/src/filters/ff_enc.c:2228,1
    - Dst: strpbrk
      Src: /src/gpac/src/filters/ff_enc.c:2229,1
    - Dst: strpbrk
      Src: /src/gpac/src/filters/ff_enc.c:2231,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_enc.c:2234,1
    - Dst: ffmpeg_update_arg
      Src: /src/gpac/src/filters/ff_enc.c:2242,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/ff_enc.c:2249,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_enc.c:2262,1
    - Dst: av_dict_get
      Src: /src/gpac/src/filters/ff_enc.c:2263,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2265,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2267,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:2271,1
    - Dst: ffmpeg_update_arg
      Src: /src/gpac/src/filters/ff_enc.c:2282,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 75
    argCount: 3
    argNames:
    - filter
    - arg_name
    - arg_val
    argTypes:
    - GF_Filter*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2283
      start: 2193
    functionDepth: 1
    functionLinenumber: 2193
    functionLinenumberEnd: 2283
    functionName: ffenc_update_arg
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - av_dict_set
    - ffmpeg_update_arg
    - strpbrk
    - sprintf
    - strstr
    - gf_filter_report_meta_option
    - strcmp
    - atoi
    - gf_props_parse_value
    - av_dict_get
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffenc_update_arg(GF_Filter *filter, const char *arg_name, const
      GF_PropertyValue *arg_val)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_enc.c:2287,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_enc.c:2302,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/ff_enc.c:2312,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2319
      start: 2285
    functionDepth: 1
    functionLinenumber: 2285
    functionLinenumberEnd: 2319
    functionName: ffenc_process_event
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool ffenc_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_enc.c:2324,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/ff_enc.c:2327,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/ff_enc.c:2332,1
    - Dst: ffenc_configure_pid_ex
      Src: /src/gpac/src/filters/ff_enc.c:2335,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - filter
    - pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2336
      start: 2321
    functionDepth: 6
    functionLinenumber: 2321
    functionLinenumberEnd: 2336
    functionName: ffenc_reconfigure_output
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_caps_query
    - ffenc_configure_pid_ex
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffenc_reconfigure_output(GF_Filter *filter, GF_FilterPid *pid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2404
      start: 2403
    functionDepth: 0
    functionLinenumber: 2403
    functionLinenumberEnd: 2404
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ffmpeg_build_register
      Src: /src/gpac/src/filters/ff_enc.c:2429,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2430
      start: 2427
    functionDepth: 1
    functionLinenumber: 2427
    functionLinenumberEnd: 2430
    functionName: ffenc_register
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - ffmpeg_build_register
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ffenc_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2438
      start: 2435
    functionDepth: 0
    functionLinenumber: 2435
    functionLinenumberEnd: 2438
    functionName: ffenc_register
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ffenc_register(GF_FilterSession *session)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_opensvc.c:81,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_opensvc.c:85,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_opensvc.c:87,1
    - Dst: SVCDecoder_close
      Src: /src/gpac/src/filters/dec_opensvc.c:91,1
    - Dst: memmove
      Src: /src/gpac/src/filters/dec_opensvc.c:99,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_opensvc.c:108,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_opensvc.c:111,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_opensvc.c:114,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_opensvc.c:115,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_opensvc.c:118,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_opensvc.c:120,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_opensvc.c:125,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_opensvc.c:142,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dec_opensvc.c:142,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dec_opensvc.c:142,1
    - Dst: memmove
      Src: /src/gpac/src/filters/dec_opensvc.c:148,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dec_opensvc.c:154,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_opensvc.c:157,1
    - Dst: memmove
      Src: /src/gpac/src/filters/dec_opensvc.c:163,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dec_opensvc.c:169,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dec_opensvc.c:179,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/dec_opensvc.c:186,1
    - Dst: SVCDecoder_init
      Src: /src/gpac/src/filters/dec_opensvc.c:190,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_opensvc.c:195,1
    - Dst: SetCommandLayer
      Src: /src/gpac/src/filters/dec_opensvc.c:196,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_opensvc.c:203,1
    - Dst: gf_avc_get_sps_info
      Src: /src/gpac/src/filters/dec_opensvc.c:206,1
    - Dst: decodeNAL
      Src: /src/gpac/src/filters/dec_opensvc.c:221,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_opensvc.c:223,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_opensvc.c:225,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_opensvc.c:228,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_opensvc.c:230,1
    - Dst: gf_avc_get_pps_info
      Src: /src/gpac/src/filters/dec_opensvc.c:233,1
    - Dst: decodeNAL
      Src: /src/gpac/src/filters/dec_opensvc.c:235,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_opensvc.c:237,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_opensvc.c:240,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/dec_opensvc.c:244,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/dec_opensvc.c:247,1
    - Dst: SVCDecoder_init
      Src: /src/gpac/src/filters/dec_opensvc.c:257,1
    - Dst: SetCommandLayer
      Src: /src/gpac/src/filters/dec_opensvc.c:258,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_opensvc.c:268,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_opensvc.c:272,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_opensvc.c:273,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_opensvc.c:273,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_opensvc.c:276,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_opensvc.c:276,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_opensvc.c:277,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_opensvc.c:277,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_opensvc.c:278,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_opensvc.c:278,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_opensvc.c:280,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/dec_opensvc.c:280,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_opensvc.c:281,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_opensvc.c:281,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 174
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 74
    functionDepth: 7
    functionLinenumber: 74
    functionLinenumberEnd: 284
    functionName: osvcdec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_opensvc.c
    functionUses: 0
    functionsReached:
    - gf_odf_avc_cfg_del
    - gf_filter_pid_check_caps
    - memset
    - gf_list_count
    - gf_filter_pid_new
    - gf_filter_pid_get_name
    - gf_list_get
    - gf_avc_get_pps_info
    - PROP_FRAC
    - SVCDecoder_init
    - gf_avc_get_sps_info
    - gf_crc_32
    - gf_filter_get_udta
    - memmove
    - gf_filter_pid_copy_properties
    - GF_LOG
    - SetCommandLayer
    - decodeNAL
    - gf_odf_avc_cfg_read
    - SVCDecoder_close
    - gf_filter_pid_set_property
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err osvcdec_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_opensvc.c:289,1
    - Dst: UpdateLayer
      Src: /src/gpac/src/filters/dec_opensvc.c:297,1
    - Dst: UpdateLayer
      Src: /src/gpac/src/filters/dec_opensvc.c:301,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - filter
    - fevt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 287
    functionDepth: 1
    functionLinenumber: 287
    functionLinenumberEnd: 308
    functionName: osvcdec_process_event
    functionSourceFile: /src/gpac/src/filters/dec_opensvc.c
    functionUses: 0
    functionsReached:
    - UpdateLayer
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool osvcdec_process_event(GF_Filter *filter, const GF_FilterEvent
      *fevt)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_opensvc.c:321,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_opensvc.c:331,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_opensvc.c:333,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_opensvc.c:336,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dec_opensvc.c:336,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dec_opensvc.c:341,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_opensvc.c:342,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_opensvc.c:344,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_opensvc.c:347,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_opensvc.c:361,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/dec_opensvc.c:367,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_opensvc.c:368,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_opensvc.c:372,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_opensvc.c:373,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_opensvc.c:375,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dec_opensvc.c:379,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_opensvc.c:385,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_opensvc.c:387,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_opensvc.c:399,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_opensvc.c:403,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dec_opensvc.c:407,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_opensvc.c:408,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_opensvc.c:417,1
    - Dst: GetDqIdMax
      Src: /src/gpac/src/filters/dec_opensvc.c:419,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_opensvc.c:423,1
    - Dst: if
      Src: /src/gpac/src/filters/dec_opensvc.c:427,1
    - Dst: SetCommandLayer
      Src: /src/gpac/src/filters/dec_opensvc.c:431,1
    - Dst: gf_media_nalu_next_start_code
      Src: /src/gpac/src/filters/dec_opensvc.c:440,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_opensvc.c:443,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_opensvc.c:449,1
    - Dst: for
      Src: /src/gpac/src/filters/dec_opensvc.c:458,1
    - Dst: gf_media_nalu_next_start_code
      Src: /src/gpac/src/filters/dec_opensvc.c:464,1
    - Dst: defined
      Src: /src/gpac/src/filters/dec_opensvc.c:472,1
    - Dst: defined
      Src: /src/gpac/src/filters/dec_opensvc.c:472,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/dec_opensvc.c:473,1
    - Dst: switch
      Src: /src/gpac/src/filters/dec_opensvc.c:474,1
    - Dst: gf_avc_get_sps_info
      Src: /src/gpac/src/filters/dec_opensvc.c:477,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_opensvc.c:478,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dec_opensvc.c:478,1
    - Dst: gf_avc_get_pps_info
      Src: /src/gpac/src/filters/dec_opensvc.c:481,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_opensvc.c:482,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dec_opensvc.c:482,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_opensvc.c:485,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dec_opensvc.c:485,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_opensvc.c:488,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dec_opensvc.c:488,1
    - Dst: GF_OSVCDecCtx*::layers
      Src: /src/gpac/src/filters/dec_opensvc.c:494,1
    - Dst: decodeNAL
      Src: /src/gpac/src/filters/dec_opensvc.c:497,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_opensvc.c:500,1
    - Dst: if
      Src: /src/gpac/src/filters/dec_opensvc.c:508,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 91
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 310
    functionDepth: 7
    functionLinenumber: 310
    functionLinenumberEnd: 511
    functionName: osvcdec_process
    functionSourceFile: /src/gpac/src/filters/dec_opensvc.c
    functionUses: 0
    functionsReached:
    - for
    - gf_log_tool_level_on
    - gf_list_count
    - memset
    - gf_filter_pck_ref_props
    - gf_media_nalu_next_start_code
    - gf_filter_pid_get_packet
    - gf_filter_pid_get_name
    - switch
    - gf_list_get
    - gf_assert
    - gf_avc_get_pps_info
    - gf_avc_get_sps_info
    - defined
    - gf_list_add
    - if
    - gf_filter_pck_get_cts
    - gf_filter_get_udta
    - gf_list_insert
    - gf_filter_pid_drop_packet
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_filter_pid_set_eos
    - GetDqIdMax
    - SetCommandLayer
    - gf_filter_pid_is_eos
    - decodeNAL
    - GF_OSVCDecCtx*::layers
    - gf_filter_pck_unref
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err osvcdec_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_opensvc.c:563,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_opensvc.c:564,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 561
    functionDepth: 1
    functionLinenumber: 561
    functionLinenumberEnd: 566
    functionName: osvcdec_initialize
    functionSourceFile: /src/gpac/src/filters/dec_opensvc.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err osvcdec_initialize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_opensvc.c:570,1
    - Dst: SVCDecoder_close
      Src: /src/gpac/src/filters/dec_opensvc.c:571,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_opensvc.c:572,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_opensvc.c:573,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_opensvc.c:574,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_opensvc.c:576,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 568
    functionDepth: 3
    functionLinenumber: 568
    functionLinenumberEnd: 577
    functionName: osvcdec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_opensvc.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_back
    - gf_filter_pck_unref
    - gf_list_count
    - SVCDecoder_close
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void osvcdec_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 582
    functionName: osvcdec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_opensvc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err osvcdec_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 583
    functionDepth: 0
    functionLinenumber: 583
    functionLinenumberEnd: 586
    functionName: osvcdec_process
    functionSourceFile: /src/gpac/src/filters/dec_opensvc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err osvcdec_process(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/dec_opensvc.c:622,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 617
    functionDepth: 6
    functionLinenumber: 617
    functionLinenumberEnd: 626
    functionName: osvcdec_register
    functionSourceFile: /src/gpac/src/filters/dec_opensvc.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *osvcdec_register(GF_FilterSession *session)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: isor_reader_release_sample
      Src: /src/gpac/src/filters/isoffin_read_ch.c:39,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/filters/isoffin_read_ch.c:43,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_read_ch.c:52,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 1
    argNames:
    - ch
    argTypes:
    - ISOMChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 57
    functionName: isor_reset_reader
    functionSourceFile: /src/gpac/src/filters/isoffin_read_ch.c
    functionUses: 0
    functionsReached:
    - isor_reader_release_sample
    - gf_isom_sample_del
    - gf_free
    linkageType: ''
    returnType: void
    signature: void isor_reset_reader(ISOMChannel *ch)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/isoffin_read_ch.c:66,1
    - Dst: gf_isom_get_last_producer_time_box
      Src: /src/gpac/src/filters/isoffin_read_ch.c:71,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/isoffin_read_ch.c:74,1
    - Dst: gf_net_get_ntp_diff_ms
      Src: /src/gpac/src/filters/isoffin_read_ch.c:78,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/filters/isoffin_read_ch.c:81,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read_ch.c:83,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/filters/isoffin_read_ch.c:88,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - read
    argTypes:
    - ISOMReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 59
    functionDepth: 5
    functionLinenumber: 59
    functionLinenumberEnd: 91
    functionName: isor_check_producer_ref_time
    functionSourceFile: /src/gpac/src/filters/isoffin_read_ch.c
    functionUses: 0
    functionsReached:
    - gf_log_tool_level_on
    - gf_net_get_ntp_diff_ms
    - GF_LOG
    - gf_sys_is_test_mode
    - gf_isom_get_last_producer_time_box
    - gf_net_get_ntp_ts
    - gf_gmtime
    linkageType: ''
    returnType: void
    signature: void isor_check_producer_ref_time(ISOMReader *read)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/isoffin_read_ch.c:100,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/filters/isoffin_read_ch.c:102,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/isoffin_read_ch.c:106,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/filters/isoffin_read_ch.c:107,1
    - Dst: gf_isom_get_sample_ex
      Src: /src/gpac/src/filters/isoffin_read_ch.c:112,1
    - Dst: gf_isom_get_sample_for_movie_time
      Src: /src/gpac/src/filters/isoffin_read_ch.c:121,1
    - Dst: gf_isom_get_sample_for_movie_time
      Src: /src/gpac/src/filters/isoffin_read_ch.c:123,1
    - Dst: gf_isom_get_sample_info_ex
      Src: /src/gpac/src/filters/isoffin_read_ch.c:127,1
    - Dst: gf_isom_get_sample_ex
      Src: /src/gpac/src/filters/isoffin_read_ch.c:129,1
    - Dst: gf_isom_get_sample_ex
      Src: /src/gpac/src/filters/isoffin_read_ch.c:148,1
    - Dst: gf_isom_get_missing_bytes
      Src: /src/gpac/src/filters/isoffin_read_ch.c:156,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 84
    argCount: 1
    argNames:
    - ch
    argTypes:
    - ISOMChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 94
    functionDepth: 5
    functionLinenumber: 94
    functionLinenumberEnd: 195
    functionName: init_reader
    functionSourceFile: /src/gpac/src/filters/isoffin_read_ch.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_isom_get_sample_ex
    - gf_isom_get_missing_bytes
    - gf_isom_get_sample_info_ex
    - gf_isom_sample_new
    - gf_isom_get_sample_for_movie_time
    linkageType: ''
    returnType: void
    signature: void init_reader(ISOMChannel *ch)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_extract_meta_item_get_cenc_info
      Src: /src/gpac/src/filters/isoffin_read_ch.c:218,1
    - Dst: gf_isom_get_sample_cenc_info
      Src: /src/gpac/src/filters/isoffin_read_ch.c:229,1
    - Dst: memset
      Src: /src/gpac/src/filters/isoffin_read_ch.c:236,1
    - Dst: gf_isom_cenc_get_sample_aux_info
      Src: /src/gpac/src/filters/isoffin_read_ch.c:243,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read_ch.c:250,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/isoffin_read_ch.c:250,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read_ch.c:267,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_read_ch.c:267,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/isoffin_read_ch.c:272,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read_ch.c:275,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_read_ch.c:275,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read_ch.c:281,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 51
    argCount: 2
    argNames:
    - ch
    - for_item
    argTypes:
    - ISOMChannel*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 198
    functionDepth: 6
    functionLinenumber: 198
    functionLinenumberEnd: 283
    functionName: isor_update_cenc_info
    functionSourceFile: /src/gpac/src/filters/isoffin_read_ch.c
    functionUses: 0
    functionsReached:
    - gf_crc_32
    - gf_filter_pid_get_property
    - GF_LOG
    - gf_filter_pid_set_property
    - memset
    - gf_isom_cenc_get_sample_aux_info
    - gf_error_to_string
    - PROP_DATA
    - gf_isom_extract_meta_item_get_cenc_info
    - gf_isom_get_sample_cenc_info
    - PROP_FRAC_INT
    linkageType: ''
    returnType: void
    signature: void isor_update_cenc_info(ISOMChannel *ch, Bool for_item)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: isor_declare_item_properties
      Src: /src/gpac/src/filters/isoffin_read_ch.c:288,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/filters/isoffin_read_ch.c:296,1
    - Dst: gf_isom_extract_meta_item_mem
      Src: /src/gpac/src/filters/isoffin_read_ch.c:303,1
    - Dst: isor_update_cenc_info
      Src: /src/gpac/src/filters/isoffin_read_ch.c:307,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 1
    argNames:
    - ch
    argTypes:
    - ISOMChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 285
    functionDepth: 7
    functionLinenumber: 285
    functionLinenumberEnd: 309
    functionName: isor_reader_get_sample_from_item
    functionSourceFile: /src/gpac/src/filters/isoffin_read_ch.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_new
    - isor_declare_item_properties
    - gf_isom_extract_meta_item_mem
    - isor_update_cenc_info
    linkageType: ''
    returnType: void
    signature: void isor_reader_get_sample_from_item(ISOMChannel *ch)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/isoffin_read_ch.c:318,1
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/isoffin_read_ch.c:320,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/isoffin_read_ch.c:324,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - size
    - udta
    argTypes:
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 311
    functionDepth: 1
    functionLinenumber: 311
    functionLinenumberEnd: 327
    functionName: isor_sample_alloc
    functionSourceFile: /src/gpac/src/filters/isoffin_read_ch.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_data
    - gf_filter_pck_expand
    - gf_filter_pck_new_alloc
    linkageType: ''
    returnType: u8
    signature: u8 *isor_sample_alloc(u32 size, void *udta)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: isor_reset_seq_list
      Src: /src/gpac/src/filters/isoffin_read_ch.c:765,1
    - Dst: isor_reset_seq_list
      Src: /src/gpac/src/filters/isoffin_read_ch.c:766,1
    - Dst: isor_reset_seq_list
      Src: /src/gpac/src/filters/isoffin_read_ch.c:767,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_read_ch.c:770,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read_ch.c:772,1
    - Dst: isor_reset_seq_list
      Src: /src/gpac/src/filters/isoffin_read_ch.c:773,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_read_ch.c:777,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read_ch.c:779,1
    - Dst: isor_reset_seq_list
      Src: /src/gpac/src/filters/isoffin_read_ch.c:780,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - ch
    argTypes:
    - ISOMChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 783
      start: 761
    functionDepth: 1
    functionLinenumber: 761
    functionLinenumberEnd: 783
    functionName: isor_reset_all_ps
    functionSourceFile: /src/gpac/src/filters/isoffin_read_ch.c
    functionUses: 0
    functionsReached:
    - isor_reset_seq_list
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void isor_reset_all_ps(ISOMChannel *ch)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_read_ch.c:805,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read_ch.c:807,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/isoffin_read_ch.c:815,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/isoffin_read_ch.c:817,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/isoffin_read_ch.c:819,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_read_ch.c:836,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read_ch.c:838,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/isoffin_read_ch.c:846,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/isoffin_read_ch.c:848,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/isoffin_read_ch.c:850,1
    - Dst: isor_ps_get_id
      Src: /src/gpac/src/filters/isoffin_read_ch.c:869,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_read_ch.c:871,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read_ch.c:873,1
    - Dst: isor_ps_get_id
      Src: /src/gpac/src/filters/isoffin_read_ch.c:876,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read_ch.c:879,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/isoffin_read_ch.c:881,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_read_ch.c:882,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_read_ch.c:883,1
    - Dst: isor_reset_all_ps
      Src: /src/gpac/src/filters/isoffin_read_ch.c:893,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/isoffin_read_ch.c:899,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/isoffin_read_ch.c:905,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/isoffin_read_ch.c:906,1
    - Dst: isor_reset_all_ps
      Src: /src/gpac/src/filters/isoffin_read_ch.c:914,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/isoffin_read_ch.c:926,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/isoffin_read_ch.c:928,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/isoffin_read_ch.c:929,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/isoffin_read_ch.c:932,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/isoffin_read_ch.c:934,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/isoffin_read_ch.c:935,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 140
    argCount: 5
    argNames:
    - ch
    - data
    - size
    - nal_type
    - needs_reset
    argTypes:
    - ISOMChannel*
    - u8*
    - u32
    - u8
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 939
      start: 785
    functionDepth: 2
    functionLinenumber: 785
    functionLinenumberEnd: 939
    functionName: isor_replace_nal
    functionSourceFile: /src/gpac/src/filters/isoffin_read_ch.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_new
    - memcmp
    - GF_SAFEALLOC
    - memcpy
    - isor_reset_all_ps
    - isor_ps_get_id
    - gf_list_count
    - gf_list_add
    - gf_malloc
    - gf_list_rem
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void isor_replace_nal(ISOMChannel *ch, u8 *data, u32 size, u8 nal_type,
      Bool *needs_reset)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_cenc_key_info_get_iv_size
      Src: /src/gpac/src/filters/isoffin_read_ch.c:969,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read_ch.c:972,1
    - Dst: gf_cenc_key_info_get_iv_size
      Src: /src/gpac/src/filters/isoffin_read_ch.c:982,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_read_ch.c:991,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1000,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 51
    argCount: 3
    argNames:
    - ch
    - pos
    - removed
    argTypes:
    - ISOMChannel*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1011
      start: 941
    functionDepth: 2
    functionLinenumber: 941
    functionLinenumberEnd: 1011
    functionName: isor_sai_bytes_removed
    functionSourceFile: /src/gpac/src/filters/isoffin_read_ch.c
    functionUses: 0
    functionsReached:
    - gf_cenc_key_info_get_iv_size
    - GF_LOG
    - GF_4CC
    linkageType: ''
    returnType: void
    signature: void isor_sai_bytes_removed(ISOMChannel *ch, u32 pos, u32 removed)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpegh_get_mhas_pl
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1031,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1033,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1033,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1036,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1036,1
    - Dst: isor_replace_nal
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1113,1
    - Dst: memmove
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1115,1
    - Dst: isor_sai_bytes_removed
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1121,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1133,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1136,1
    - Dst: gf_odf_vvc_cfg_write
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1139,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1142,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1144,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1147,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1147,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 111
    argCount: 1
    argNames:
    - ch
    argTypes:
    - ISOMChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1151
      start: 1013
    functionDepth: 3
    functionLinenumber: 1013
    functionLinenumberEnd: 1151
    functionName: isor_reader_check_config
    functionSourceFile: /src/gpac/src/filters/isoffin_read_ch.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_crc_32
    - gf_odf_vvc_cfg_write
    - memmove
    - PROP_UINT
    - gf_odf_avc_cfg_write
    - gf_mpegh_get_mhas_pl
    - isor_sai_bytes_removed
    - gf_odf_hevc_cfg_write
    - PROP_DATA_NO_COPY
    - isor_replace_nal
    - PROP_LONGUINT
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: void
    signature: void isor_reader_check_config(ISOMChannel *ch)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_enum_sample_group
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1161,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1166,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1166,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1167,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1167,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1170,1
    - Dst: strcat
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1171,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1175,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1176,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1176,1
    - Dst: gf_filter_pck_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1179,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1179,1
    - Dst: gf_isom_enum_sample_aux_data
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1188,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1194,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1194,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1195,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1195,1
    - Dst: gf_filter_pck_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1197,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1197,1
    - Dst: gf_isom_pop_emsg
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1204,1
    - Dst: gf_filter_pck_set_property_str
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1207,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1207,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 39
    argCount: 3
    argNames:
    - read
    - ch
    - pck
    argTypes:
    - ISOMReader*
    - ISOMChannel*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1209
      start: 1153
    functionDepth: 5
    functionLinenumber: 1153
    functionLinenumberEnd: 1209
    functionName: isor_set_sample_groups_and_aux_data
    functionSourceFile: /src/gpac/src/filters/isoffin_read_ch.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_4cc_to_str
    - gf_filter_pck_set_property
    - gf_filter_pck_set_property_dyn
    - gf_isom_enum_sample_aux_data
    - gf_filter_pck_set_property_str
    - sprintf
    - gf_isom_pop_emsg
    - gf_isom_enum_sample_group
    - PROP_DATA_NO_COPY
    - GF_4CC
    linkageType: ''
    returnType: void
    signature: void isor_set_sample_groups_and_aux_data(ISOMReader *read, ISOMChannel
      *ch, GF_FilterPacket *pck)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_resolve_file_template
      Src: /src/gpac/src/filters/write_nhml.c:86,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/write_nhml.c:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ipid
    - fileName
    - szFinalName
    argTypes:
    - GF_FilterPid*
    - char*
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 89
    functionName: nhmldump_get_resolved_basename
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_resolve_file_template
    - gf_file_basename
    linkageType: ''
    returnType: char
    signature: char *nhmldump_get_resolved_basename(GF_FilterPid *ipid, const char
      *fileName, char szFinalName[GF_MAX_PATH])
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: strncpy
      Src: /src/gpac/src/filters/write_nhml.c:100,1
    - Dst: gf_filter_pid_get_destination
      Src: /src/gpac/src/filters/write_nhml.c:103,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/write_nhml.c:105,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/filters/write_nhml.c:106,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/write_nhml.c:107,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filters/write_nhml.c:107,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/write_nhml.c:109,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_nhml.c:112,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/write_nhml.c:114,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/write_nhml.c:117,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/write_nhml.c:123,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:125,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:128,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/write_nhml.c:134,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_nhml.c:138,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_nhml.c:141,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:147,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_nhml.c:147,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:148,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhml.c:148,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/write_nhml.c:150,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_nhml.c:152,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_nhml.c:152,1
    - Dst: strcat
      Src: /src/gpac/src/filters/write_nhml.c:153,1
    - Dst: gf_fileio_factory
      Src: /src/gpac/src/filters/write_nhml.c:155,1
    - Dst: nhmldump_get_resolved_basename
      Src: /src/gpac/src/filters/write_nhml.c:155,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:160,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhml.c:160,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_nhml.c:163,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/write_nhml.c:164,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:165,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhml.c:165,1
    - Dst: gf_filter_connect_destination
      Src: /src/gpac/src/filters/write_nhml.c:168,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/write_nhml.c:169,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:176,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_nhml.c:176,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:177,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhml.c:177,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/write_nhml.c:179,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_nhml.c:181,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_nhml.c:181,1
    - Dst: strcat
      Src: /src/gpac/src/filters/write_nhml.c:182,1
    - Dst: gf_fileio_factory
      Src: /src/gpac/src/filters/write_nhml.c:184,1
    - Dst: nhmldump_get_resolved_basename
      Src: /src/gpac/src/filters/write_nhml.c:184,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:189,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhml.c:189,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_nhml.c:192,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/write_nhml.c:193,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:194,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhml.c:194,1
    - Dst: gf_filter_connect_destination
      Src: /src/gpac/src/filters/write_nhml.c:197,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/write_nhml.c:198,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/write_nhml.c:203,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/write_nhml.c:205,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 97
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_NHMLDumpCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 91
    functionDepth: 4
    functionLinenumber: 91
    functionLinenumberEnd: 209
    functionName: nhmldump_config_side_stream
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached:
    - gf_free
    - PROP_STRING
    - gf_fileio_translate_url
    - strcpy
    - gf_filter_connect_destination
    - gf_fileio_from_url
    - gf_filter_pid_new
    - strcat
    - gf_strdup
    - gf_fileio_factory
    - strncmp
    - nhmldump_get_resolved_basename
    - gf_filter_set_source
    - strncpy
    - gf_filter_pid_set_property
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_file_ext_start
    - strcmp
    - gf_filter_pid_set_name
    - gf_filter_pid_get_destination
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhmldump_config_side_stream(GF_Filter *filter, GF_NHMLDumpCtx
      *ctx)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_nhml.c:216,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_nhml.c:221,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_nhml.c:225,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_nhml.c:229,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/write_nhml.c:234,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:237,1
    - Dst: gf_codecid_oti
      Src: /src/gpac/src/filters/write_nhml.c:249,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:252,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/write_nhml.c:256,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_nhml.c:265,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/write_nhml.c:275,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/write_nhml.c:276,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:281,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:283,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:285,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/write_nhml.c:286,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:287,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:289,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/write_nhml.c:292,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_nhml.c:295,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_nhml.c:297,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_nhml.c:299,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/write_nhml.c:310,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/write_nhml.c:312,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:315,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhml.c:315,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_nhml.c:317,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_nhml.c:317,1
    - Dst: strcat
      Src: /src/gpac/src/filters/write_nhml.c:318,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:319,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhml.c:319,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:323,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_nhml.c:323,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:324,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhml.c:324,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:325,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhml.c:325,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:333,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/write_nhml.c:337,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/write_nhml.c:339,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 104
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 211
    functionDepth: 4
    functionLinenumber: 211
    functionLinenumberEnd: 342
    functionName: nhmldump_configure_pid
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached:
    - PROP_STRING
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - strcat
    - GF_FEVT_INIT
    - gf_audio_fmt_bit_depth
    - gf_filter_get_udta
    - GF_LOG
    - strncpy
    - gf_filter_pid_send_event
    - gf_filter_pid_set_property
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - gf_codecid_oti
    - gf_file_ext_start
    - strcmp
    - gf_filter_pid_set_name
    - gf_codecid_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhmldump_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _code
    - ','
    - _pname
    - ','
    - _name
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 344
    functionDepth: 0
    functionLinenumber: 344
    functionLinenumberEnd: 351
    functionName: NHML_PRINT_4CC
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NHML_PRINT_4CC(_code, _pname, _name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _code
    - ','
    - _pname
    - ','
    - _name
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 352
    functionDepth: 0
    functionLinenumber: 352
    functionLinenumberEnd: 359
    functionName: NHML_PRINT_UINT
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NHML_PRINT_UINT(_code, _pname, _name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _code
    - ','
    - _pname
    - ','
    - _name
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 360
    functionDepth: 0
    functionLinenumber: 360
    functionLinenumberEnd: 367
    functionName: NHML_PRINT_STRING
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NHML_PRINT_STRING(_code, _pname, _name)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:385,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:386,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:386,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:390,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:391,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:391,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:394,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:395,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:397,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:399,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:400,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:400,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:404,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:405,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:405,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:407,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:409,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/write_nhml.c:409,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:410,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:410,1
    - Dst: NHML_PRINT_4CC
      Src: /src/gpac/src/filters/write_nhml.c:412,1
    - Dst: NHML_PRINT_4CC
      Src: /src/gpac/src/filters/write_nhml.c:414,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:423,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:424,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:424,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:431,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:432,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:432,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:433,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:435,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/write_nhml.c:435,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:436,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:436,1
    - Dst: NHML_PRINT_4CC
      Src: /src/gpac/src/filters/write_nhml.c:440,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:441,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:442,1
    - Dst: NHML_PRINT_STRING
      Src: /src/gpac/src/filters/write_nhml.c:443,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:444,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:445,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:446,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:447,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:448,1
    - Dst: NHML_PRINT_STRING
      Src: /src/gpac/src/filters/write_nhml.c:450,1
    - Dst: NHML_PRINT_STRING
      Src: /src/gpac/src/filters/write_nhml.c:451,1
    - Dst: NHML_PRINT_STRING
      Src: /src/gpac/src/filters/write_nhml.c:452,1
    - Dst: NHML_PRINT_STRING
      Src: /src/gpac/src/filters/write_nhml.c:454,1
    - Dst: NHML_PRINT_STRING
      Src: /src/gpac/src/filters/write_nhml.c:455,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/write_nhml.c:458,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:459,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:460,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:460,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:463,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:464,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:465,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/write_nhml.c:467,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:469,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:470,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:470,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/write_nhml.c:472,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:474,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:475,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:475,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/write_nhml.c:477,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:479,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:480,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:480,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:482,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:487,1
    - Dst: nhmldump_get_resolved_basename
      Src: /src/gpac/src/filters/write_nhml.c:487,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:488,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:488,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/write_nhml.c:490,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_nhml.c:492,1
    - Dst: gf_filter_pck_set_readonly
      Src: /src/gpac/src/filters/write_nhml.c:493,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_nhml.c:494,1
    - Dst: NHML_PRINT_STRING
      Src: /src/gpac/src/filters/write_nhml.c:498,1
    - Dst: NHML_PRINT_STRING
      Src: /src/gpac/src/filters/write_nhml.c:499,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_nhml.c:502,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_nhml.c:504,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:509,1
    - Dst: nhmldump_get_resolved_basename
      Src: /src/gpac/src/filters/write_nhml.c:509,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:510,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:510,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:512,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:513,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:513,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/write_nhml.c:515,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/write_nhml.c:518,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_nhml.c:522,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_nhml.c:525,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_nhml.c:526,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_nhml.c:527,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 124
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_NHMLDumpCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 370
    functionDepth: 8
    functionLinenumber: 370
    functionLinenumberEnd: 528
    functionName: nhmldump_send_header
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached:
    - gf_fwrite
    - gf_4cc_to_str
    - gf_filter_pck_set_readonly
    - memcpy
    - sprintf
    - nhmldump_get_resolved_basename
    - gf_audio_fmt_bit_depth
    - gf_filter_pid_get_property_str
    - gf_filter_pck_new_alloc
    - NHML_PRINT_4CC
    - GF_LOG
    - NHML_PRINT_UINT
    - NHML_PRINT_STRING
    - gf_bs_write_data
    - gf_bs_get_content_no_truncate
    - strlen
    - gf_filter_pck_new_shared
    - gf_filter_pid_get_property
    - gf_filter_pck_set_framing
    - strcmp
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhmldump_send_header(GF_NHMLDumpCtx *ctx)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/write_nhml.c:536,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_nhml.c:537,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_nhml.c:544,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_nhml.c:545,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/write_nhml.c:547,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/write_nhml.c:548,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/write_nhml.c:549,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/write_nhml.c:550,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:563,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:564,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:564,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:568,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:569,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:569,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:572,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:573,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:573,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:576,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:577,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:577,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:580,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:581,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:581,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:584,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:585,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:585,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:588,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:589,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:589,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:591,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:592,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:592,1
    - Dst: inflateInit
      Src: /src/gpac/src/filters/write_nhml.c:607,1
    - Dst: inflate
      Src: /src/gpac/src/filters/write_nhml.c:610,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:613,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:613,1
    - Dst: inflateEnd
      Src: /src/gpac/src/filters/write_nhml.c:620,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_nhml.c:623,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/write_nhml.c:624,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:630,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:632,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:633,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:633,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/write_nhml.c:637,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/write_nhml.c:640,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/write_nhml.c:643,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_nhml.c:647,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_nhml.c:650,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_nhml.c:651,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_nhml.c:652,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 97
    argCount: 4
    argNames:
    - ctx
    - data
    - data_size
    - pck
    argTypes:
    - GF_NHMLDumpCtx*
    - char*
    - u32
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 653
      start: 530
    functionDepth: 8
    functionLinenumber: 530
    functionLinenumberEnd: 653
    functionName: nhmldump_send_dims
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - inflateEnd
    - gf_fwrite
    - gf_bs_read_u16
    - gf_bs_available
    - memcpy
    - sprintf
    - gf_filter_pck_get_cts
    - inflate
    - gf_bs_skip_bytes
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_bs_read_u8
    - gf_bs_get_content_no_truncate
    - gf_bs_reassign_buffer
    - strlen
    - gf_bs_del
    - gf_filter_pck_set_framing
    - inflateInit
    - gf_filter_pck_get_dts
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhmldump_send_dims(GF_NHMLDumpCtx *ctx, char *data, u32 data_size,
      GF_FilterPacket *pck)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filters/write_nhml.c:661,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:663,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/write_nhml.c:663,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:664,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:664,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:670,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:671,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:671,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:673,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:674,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:674,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:679,1
    - Dst: gf_props_dump_val
      Src: /src/gpac/src/filters/write_nhml.c:679,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:682,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:682,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:684,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:686,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filters/write_nhml.c:686,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:687,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:687,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 4
    argNames:
    - ctx
    - p4cc
    - pname
    - att
    argTypes:
    - GF_NHMLDumpCtx*
    - u32
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 656
    functionDepth: 6
    functionLinenumber: 656
    functionLinenumberEnd: 688
    functionName: nhmldump_pck_property
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_props_4cc_get_name
    - gf_props_get_type_name
    - sprintf
    - gf_bs_write_data
    - gf_props_dump_val
    - strlen
    linkageType: ''
    returnType: void
    signature: void nhmldump_pck_property(GF_NHMLDumpCtx *ctx, u32 p4cc, const char
      *pname, const GF_PropertyValue *att)
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/write_nhml.c:697,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/write_nhml.c:698,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_nhml.c:699,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:707,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:708,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:708,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:710,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:711,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:711,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:714,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:715,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:715,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:718,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:719,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:719,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:721,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:722,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:722,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:724,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:725,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:725,1
    - Dst: gf_filter_pck_get_roll_info
      Src: /src/gpac/src/filters/write_nhml.c:727,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:728,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:729,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:729,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:737,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:738,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:738,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/write_nhml.c:740,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:742,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:743,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:743,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/write_nhml.c:746,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:748,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:749,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:749,1
    - Dst: gf_filter_pck_get_carousel_version
      Src: /src/gpac/src/filters/write_nhml.c:751,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:753,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:754,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:754,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/write_nhml.c:756,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:758,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:759,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:759,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/write_nhml.c:761,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:763,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:764,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:764,1
    - Dst: gf_filter_pck_get_corrupted
      Src: /src/gpac/src/filters/write_nhml.c:766,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:768,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:769,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:769,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/write_nhml.c:771,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:773,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:774,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:774,1
    - Dst: gf_filter_pck_get_roll_info
      Src: /src/gpac/src/filters/write_nhml.c:776,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:778,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:779,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:779,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/write_nhml.c:781,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:783,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:784,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:784,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/write_nhml.c:790,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:791,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:792,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:792,1
    - Dst: gf_sha1_csum
      Src: /src/gpac/src/filters/write_nhml.c:796,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:797,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:798,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:798,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:800,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:801,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:801,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:803,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:804,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:804,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:808,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:809,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:809,1
    - Dst: gf_filter_pck_has_properties
      Src: /src/gpac/src/filters/write_nhml.c:812,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:814,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:815,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:815,1
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/src/filters/write_nhml.c:819,1
    - Dst: nhmldump_pck_property
      Src: /src/gpac/src/filters/write_nhml.c:822,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:824,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:825,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:825,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_nhml.c:829,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_nhml.c:833,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_nhml.c:834,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/write_nhml.c:837,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/write_nhml.c:838,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/write_nhml.c:839,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/write_nhml.c:840,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/write_nhml.c:841,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/write_nhml.c:842,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_nhml.c:846,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:852,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:853,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:853,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:855,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:857,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:858,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:858,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/write_nhml.c:863,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/filters/write_nhml.c:865,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:867,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:868,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:868,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:869,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:870,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:871,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:871,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:874,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:875,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:875,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:880,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:881,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:881,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:882,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:883,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:884,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:884,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/write_nhml.c:889,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/write_nhml.c:890,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/filters/write_nhml.c:895,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_nhml.c:897,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/write_nhml.c:899,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/filters/write_nhml.c:901,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_nhml.c:903,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/filters/write_nhml.c:906,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/write_nhml.c:908,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/write_nhml.c:911,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/write_nhml.c:914,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/write_nhml.c:915,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/write_nhml.c:917,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:918,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/write_nhml.c:921,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:928,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:929,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:929,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/write_nhml.c:931,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/write_nhml.c:933,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_nhml.c:937,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_nhml.c:939,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_nhml.c:940,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_nhml.c:941,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/write_nhml.c:948,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_nhml.c:951,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_nhml.c:955,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_nhml.c:956,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 213
    argCount: 4
    argNames:
    - ctx
    - data
    - data_size
    - pck
    argTypes:
    - GF_NHMLDumpCtx*
    - char*
    - u32
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 959
      start: 690
    functionDepth: 8
    functionLinenumber: 690
    functionLinenumberEnd: 959
    functionName: nhmldump_send_frame
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump
    - gf_filter_pck_new_ref
    - gf_filter_pck_enum_properties
    - gf_bs_new
    - gf_sha1_csum
    - gf_fwrite
    - gf_filter_pck_get_carousel_version
    - gf_bs_available
    - gf_filter_pck_get_seek_flag
    - fprintf
    - gf_realloc
    - gf_bs_read_u32
    - gf_fseek
    - gf_isom_box_del
    - memcpy
    - gf_filter_pck_get_roll_info
    - sprintf
    - gf_filter_pck_get_corrupted
    - gf_filter_pck_get_dependency_flags
    - gf_filter_pck_get_cts
    - gf_file_temp
    - gf_filter_pck_get_duration
    - gf_crc_32
    - gf_ftell
    - gf_filter_pck_get_property
    - nhmldump_pck_property
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_fread
    - gf_filter_pck_get_crypt_flags
    - gf_bs_write_data
    - gf_filter_pck_get_interlaced
    - gf_filter_pck_has_properties
    - gf_filter_pck_get_sap
    - gf_bs_read_u8
    - gf_bs_get_content_no_truncate
    - gf_bs_reassign_buffer
    - strlen
    - gf_isom_box_parse
    - gf_fclose
    - gf_filter_pck_merge_properties
    - gf_base64_encode
    - gf_bs_del
    - gf_filter_pck_set_framing
    - gf_filter_pck_get_byte_offset
    - gf_filter_pck_get_dts
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhmldump_send_frame(GF_NHMLDumpCtx *ctx, char *data, u32 data_size,
      GF_FilterPacket *pck)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_nhml.c:964,1
    - Dst: nhmldump_config_side_stream
      Src: /src/gpac/src/filters/write_nhml.c:971,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/write_nhml.c:974,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/write_nhml.c:976,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_nhml.c:981,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:982,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:983,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:983,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/write_nhml.c:985,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/write_nhml.c:988,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_nhml.c:993,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_nhml.c:995,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_nhml.c:996,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_nhml.c:997,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/write_nhml.c:1004,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/write_nhml.c:1005,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/write_nhml.c:1006,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_nhml.c:1012,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_nhml.c:1013,1
    - Dst: nhmldump_send_header
      Src: /src/gpac/src/filters/write_nhml.c:1016,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_nhml.c:1018,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/write_nhml.c:1022,1
    - Dst: nhmldump_send_dims
      Src: /src/gpac/src/filters/write_nhml.c:1026,1
    - Dst: nhmldump_send_frame
      Src: /src/gpac/src/filters/write_nhml.c:1028,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/write_nhml.c:1035,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_nhml.c:1036,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/filters/write_nhml.c:1037,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_nhml.c:1040,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 61
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1043
      start: 962
    functionDepth: 9
    functionLinenumber: 962
    functionLinenumberEnd: 1043
    functionName: nhmldump_process
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached:
    - gf_set_progress
    - gf_bs_new
    - gf_fwrite
    - nhmldump_send_frame
    - gf_filter_pid_get_packet
    - memcpy
    - sprintf
    - nhmldump_config_side_stream
    - gf_filter_pck_get_cts
    - nhmldump_send_dims
    - gf_filter_get_udta
    - gf_filter_pck_new_alloc
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - gf_filter_pid_set_eos
    - gf_bs_write_data
    - gf_filter_pck_get_timescale
    - gf_filter_pid_is_eos
    - gf_bs_get_content_no_truncate
    - gf_bs_reassign_buffer
    - strlen
    - nhmldump_send_header
    - gf_filter_pck_set_framing
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhmldump_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1048
      start: 1045
    functionDepth: 0
    functionLinenumber: 1045
    functionLinenumberEnd: 1048
    functionName: nhmldump_initialize
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhmldump_initialize(GF_Filter *filter)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_nhml.c:1052,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/write_nhml.c:1053,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/write_nhml.c:1054,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_nhml.c:1055,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_nhml.c:1056,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_nhml.c:1057,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_nhml.c:1058,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1059
      start: 1050
    functionDepth: 3
    functionLinenumber: 1050
    functionLinenumberEnd: 1059
    functionName: nhmldump_finalize
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void nhmldump_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1072
      start: 1071
    functionDepth: 0
    functionLinenumber: 1071
    functionLinenumberEnd: 1072
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1108
      start: 1105
    functionDepth: 0
    functionLinenumber: 1105
    functionLinenumberEnd: 1108
    functionName: nhmlw_register
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *nhmlw_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1113
      start: 1110
    functionDepth: 0
    functionLinenumber: 1110
    functionLinenumberEnd: 1113
    functionName: nhmlw_register
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *nhmlw_register(GF_FilterSession *session)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: avfilter_inout_free
      Src: /src/gpac/src/filters/ff_avf.c:97,1
    - Dst: avfilter_graph_free
      Src: /src/gpac/src/filters/ff_avf.c:101,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_FFAVFilterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 104
    functionName: ffavf_reset_graph
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached:
    - avfilter_inout_free
    - avfilter_graph_free
    linkageType: ''
    returnType: void
    signature: void ffavf_reset_graph(GF_FFAVFilterCtx *ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_avf.c:112,1
    - Dst: avfilter_get_by_name
      Src: /src/gpac/src/filters/ff_avf.c:115,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/ff_avf.c:116,1
    - Dst: avfilter_get_by_name
      Src: /src/gpac/src/filters/ff_avf.c:120,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/ff_avf.c:121,1
    - Dst: av_get_sample_fmt_name
      Src: /src/gpac/src/filters/ff_avf.c:123,1
    - Dst: avfilter_free
      Src: /src/gpac/src/filters/ff_avf.c:126,1
    - Dst: avfilter_graph_alloc_filter
      Src: /src/gpac/src/filters/ff_avf.c:127,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:129,1
    - Dst: avfilter_init_str
      Src: /src/gpac/src/filters/ff_avf.c:132,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:134,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:134,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - ctx
    - avpid
    argTypes:
    - GF_FFAVFilterCtx*
    - GF_FFAVPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 138
    functionName: ffavf_setup_input
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached:
    - avfilter_graph_alloc_filter
    - snprintf
    - avfilter_free
    - av_get_sample_fmt_name
    - GF_LOG
    - av_err2str
    - avfilter_get_by_name
    - avfilter_init_str
    - gf_filter_pid_get_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffavf_setup_input(GF_FFAVFilterCtx *ctx, GF_FFAVPid *avpid)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: avfilter_inout_alloc
      Src: /src/gpac/src/filters/ff_avf.c:150,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:160,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/ff_avf.c:161,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/ff_avf.c:167,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/ff_avf.c:170,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/ff_avf.c:171,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:175,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:175,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:176,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:177,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:178,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:179,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:180,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:183,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:184,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:186,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:186,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:187,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:188,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:189,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:190,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:191,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:192,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:193,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:194,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:195,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:196,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:197,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:200,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:201,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:203,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:203,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:204,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:204,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:205,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:206,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_avf.c:211,1
    - Dst: avfilter_get_by_name
      Src: /src/gpac/src/filters/ff_avf.c:212,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_avf.c:214,1
    - Dst: avfilter_get_by_name
      Src: /src/gpac/src/filters/ff_avf.c:215,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_avf.c:219,1
    - Dst: avfilter_graph_alloc_filter
      Src: /src/gpac/src/filters/ff_avf.c:221,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:223,1
    - Dst: ffmpeg_pixfmt_from_gpac
      Src: /src/gpac/src/filters/ff_avf.c:228,1
    - Dst: av_opt_set_bin
      Src: /src/gpac/src/filters/ff_avf.c:229,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:231,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:231,1
    - Dst: ffmpeg_audio_fmt_from_gpac
      Src: /src/gpac/src/filters/ff_avf.c:236,1
    - Dst: av_opt_set_bin
      Src: /src/gpac/src/filters/ff_avf.c:237,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:239,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:239,1
    - Dst: av_opt_set_bin
      Src: /src/gpac/src/filters/ff_avf.c:243,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:245,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:245,1
    - Dst: av_opt_set_bin
      Src: /src/gpac/src/filters/ff_avf.c:249,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:251,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:251,1
    - Dst: avfilter_init_str
      Src: /src/gpac/src/filters/ff_avf.c:255,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:257,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:257,1
    - Dst: av_strdup
      Src: /src/gpac/src/filters/ff_avf.c:260,1
    - Dst: avfilter_inout_alloc
      Src: /src/gpac/src/filters/ff_avf.c:265,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 109
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_FFAVFilterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 269
    functionName: ffavf_setup_outputs
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - avfilter_graph_alloc_filter
    - ffmpeg_pixfmt_from_gpac
    - PROP_UINT
    - av_strdup
    - GF_SAFEALLOC
    - GF_LOG
    - av_opt_set_bin
    - gf_filter_pid_set_property
    - av_err2str
    - sprintf
    - avfilter_get_by_name
    - gf_list_count
    - ffmpeg_audio_fmt_from_gpac
    - avfilter_init_str
    - gf_list_add
    - gf_filter_pid_new
    - avfilter_inout_alloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffavf_setup_outputs(GF_Filter *filter, GF_FFAVFilterCtx *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ffavf_reset_graph
      Src: /src/gpac/src/filters/ff_avf.c:277,1
    - Dst: avfilter_graph_alloc
      Src: /src/gpac/src/filters/ff_avf.c:278,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:280,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/ff_avf.c:282,1
    - Dst: ffavf_setup_input
      Src: /src/gpac/src/filters/ff_avf.c:283,1
    - Dst: ffavf_setup_outputs
      Src: /src/gpac/src/filters/ff_avf.c:288,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_FFAVFilterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 272
    functionDepth: 2
    functionLinenumber: 272
    functionLinenumberEnd: 292
    functionName: ffavf_reconfigure_graph
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached:
    - avfilter_graph_alloc
    - gf_list_get
    - ffavf_setup_input
    - ffavf_reset_graph
    - gf_list_count
    - ffavf_setup_outputs
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffavf_reconfigure_graph(GF_Filter *filter, GF_FFAVFilterCtx
      *ctx)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_avf.c:303,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:305,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/ff_avf.c:309,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/ff_avf.c:310,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/ff_avf.c:311,1
    - Dst: av_frame_alloc
      Src: /src/gpac/src/filters/ff_avf.c:312,1
    - Dst: ffmpeg_setup_logs
      Src: /src/gpac/src/filters/ff_avf.c:314,1
    - Dst: avfilter_graph_alloc
      Src: /src/gpac/src/filters/ff_avf.c:316,1
    - Dst: avfilter_graph_parse2
      Src: /src/gpac/src/filters/ff_avf.c:317,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:319,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:319,1
    - Dst: strstr
      Src: /src/gpac/src/filters/ff_avf.c:327,1
    - Dst: strlen
      Src: /src/gpac/src/filters/ff_avf.c:329,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/ff_avf.c:333,1
    - Dst: gf_filter_meta_set_instances
      Src: /src/gpac/src/filters/ff_avf.c:335,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_avf.c:336,1
    - Dst: avfilter_pad_get_type
      Src: /src/gpac/src/filters/ff_avf.c:344,1
    - Dst: ffmpeg_stream_type_to_gpac
      Src: /src/gpac/src/filters/ff_avf.c:345,1
    - Dst: avfilter_pad_get_type
      Src: /src/gpac/src/filters/ff_avf.c:359,1
    - Dst: ffmpeg_stream_type_to_gpac
      Src: /src/gpac/src/filters/ff_avf.c:360,1
    - Dst: avfilter_inout_free
      Src: /src/gpac/src/filters/ff_avf.c:368,1
    - Dst: avfilter_inout_free
      Src: /src/gpac/src/filters/ff_avf.c:369,1
    - Dst: avfilter_graph_free
      Src: /src/gpac/src/filters/ff_avf.c:370,1
    - Dst: avfilter_graph_alloc
      Src: /src/gpac/src/filters/ff_avf.c:371,1
    - Dst: gf_filter_set_max_extra_input_pids
      Src: /src/gpac/src/filters/ff_avf.c:374,1
    - Dst: gf_filter_set_max_extra_input_pids
      Src: /src/gpac/src/filters/ff_avf.c:376,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_avf.c:379,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:382,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:387,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:393,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:399,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:405,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/ff_avf.c:408,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/ff_avf.c:412,1
    - Dst: ffavf_setup_outputs
      Src: /src/gpac/src/filters/ff_avf.c:413,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 103
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 294
    functionDepth: 2
    functionLinenumber: 294
    functionLinenumberEnd: 416
    functionName: ffavf_initialize
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached:
    - avfilter_graph_alloc
    - gf_free
    - gf_filter_override_caps
    - gf_filter_meta_set_instances
    - avfilter_inout_free
    - memset
    - gf_filter_set_max_extra_input_pids
    - gf_filter_post_process_task
    - avfilter_pad_get_type
    - gf_list_new
    - av_frame_alloc
    - ffavf_setup_outputs
    - gf_dynstrcat
    - gf_filter_get_udta
    - GF_LOG
    - avfilter_graph_parse2
    - av_err2str
    - strstr
    - avfilter_graph_free
    - strlen
    - PROP_UINT
    - ffmpeg_stream_type_to_gpac
    - ffmpeg_setup_logs
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffavf_initialize(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: avfilter_graph_dump
      Src: /src/gpac/src/filters/ff_avf.c:420,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/ff_avf.c:424,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:425,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ff_avf.c:428,1
    - Dst: av_free
      Src: /src/gpac/src/filters/ff_avf.c:430,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:432,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - opt
    argTypes:
    - GF_FFAVFilterCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 435
      start: 418
    functionDepth: 2
    functionLinenumber: 418
    functionLinenumberEnd: 435
    functionName: ffavf_dump_graph
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached:
    - av_free
    - gf_log_tool_level_on
    - GF_LOG
    - avfilter_graph_dump
    - fprintf
    linkageType: ''
    returnType: void
    signature: void ffavf_dump_graph(GF_FFAVFilterCtx *ctx, const char *opt)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:440,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/ff_avf.c:444,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_avf.c:445,1
    - Dst: avfilter_inout_alloc
      Src: /src/gpac/src/filters/ff_avf.c:451,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/ff_avf.c:455,1
    - Dst: av_strdup
      Src: /src/gpac/src/filters/ff_avf.c:458,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/ff_avf.c:460,1
    - Dst: av_strdup
      Src: /src/gpac/src/filters/ff_avf.c:462,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_avf.c:465,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_avf.c:467,1
    - Dst: av_strdup
      Src: /src/gpac/src/filters/ff_avf.c:468,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:469,1
    - Dst: avfilter_inout_alloc
      Src: /src/gpac/src/filters/ff_avf.c:475,1
    - Dst: avfilter_graph_parse_ptr
      Src: /src/gpac/src/filters/ff_avf.c:482,1
    - Dst: avfilter_inout_free
      Src: /src/gpac/src/filters/ff_avf.c:483,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:485,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:485,1
    - Dst: avfilter_graph_config
      Src: /src/gpac/src/filters/ff_avf.c:488,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:490,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:490,1
    - Dst: ffavf_dump_graph
      Src: /src/gpac/src/filters/ff_avf.c:495,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 41
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_FFAVFilterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 436
    functionDepth: 3
    functionLinenumber: 436
    functionLinenumberEnd: 497
    functionName: ffavf_setup_filter
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - av_strdup
    - gf_filter_pid_get_property_str
    - avfilter_graph_config
    - GF_LOG
    - avfilter_inout_free
    - av_err2str
    - sprintf
    - ffavf_dump_graph
    - avfilter_inout_alloc
    - gf_list_count
    - avfilter_graph_parse_ptr
    - gf_filter_pid_get_packet
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffavf_setup_filter(GF_Filter *filter, GF_FFAVFilterCtx *ctx)
  - BBCount: 61
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_avf.c:504,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:505,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:505,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/src/filters/ff_avf.c:514,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:516,1
    - Dst: ffavf_setup_filter
      Src: /src/gpac/src/filters/ff_avf.c:518,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:525,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/ff_avf.c:533,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_avf.c:535,1
    - Dst: av_buffersrc_add_frame_flags
      Src: /src/gpac/src/filters/ff_avf.c:539,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:541,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:541,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/ff_avf.c:547,1
    - Dst: av_buffersrc_add_frame_flags
      Src: /src/gpac/src/filters/ff_avf.c:548,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:550,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:550,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/ff_avf.c:557,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/ff_avf.c:576,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/ff_avf.c:580,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/ff_avf.c:591,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/ff_avf.c:592,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ff_avf.c:596,1
    - Dst: av_buffersrc_add_frame_flags
      Src: /src/gpac/src/filters/ff_avf.c:624,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:626,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:626,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:631,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_avf.c:635,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:645,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/ff_avf.c:647,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/ff_avf.c:648,1
    - Dst: av_frame_alloc
      Src: /src/gpac/src/filters/ff_avf.c:652,1
    - Dst: av_buffersink_get_frame
      Src: /src/gpac/src/filters/ff_avf.c:654,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_avf.c:660,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_avf.c:662,1
    - Dst: AVERROR
      Src: /src/gpac/src/filters/ff_avf.c:665,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:666,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:666,1
    - Dst: av_frame_free
      Src: /src/gpac/src/filters/ff_avf.c:669,1
    - Dst: ffmpeg_pixfmt_to_gpac
      Src: /src/gpac/src/filters/ff_avf.c:686,1
    - Dst: gf_pixel_get_bytes_per_pixel
      Src: /src/gpac/src/filters/ff_avf.c:693,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/ff_avf.c:694,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/ff_avf.c:709,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:713,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/ff_avf.c:714,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/ff_avf.c:716,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_avf.c:717,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:723,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:723,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:724,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:724,1
    - Dst: ffmpeg_pixfmt_is_fullrange
      Src: /src/gpac/src/filters/ff_avf.c:725,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:726,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_avf.c:726,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:728,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:730,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:730,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:731,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:731,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:733,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:733,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:735,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:737,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:737,1
    - Dst: av_buffersink_get_frame_rate
      Src: /src/gpac/src/filters/ff_avf.c:738,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:740,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/ff_avf.c:740,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:742,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/ff_avf.c:742,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/ff_avf.c:746,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/ff_avf.c:746,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_avf.c:751,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_avf.c:756,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_avf.c:762,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_avf.c:768,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/ff_avf.c:773,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/ff_avf.c:776,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/ff_avf.c:778,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/ff_avf.c:779,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/ff_avf.c:780,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/ff_avf.c:805,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:809,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/ff_avf.c:810,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/ff_avf.c:812,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_avf.c:813,1
    - Dst: ffmpeg_channel_layout_to_gpac
      Src: /src/gpac/src/filters/ff_avf.c:825,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:826,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:826,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:827,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/ff_avf.c:827,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:828,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:828,1
    - Dst: ffmpeg_audio_fmt_to_gpac
      Src: /src/gpac/src/filters/ff_avf.c:829,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:830,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:830,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:831,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:831,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/ff_avf.c:838,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/ff_avf.c:840,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/ff_avf.c:840,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_avf.c:846,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/ff_avf.c:849,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/ff_avf.c:850,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/ff_avf.c:851,1
    - Dst: av_frame_free
      Src: /src/gpac/src/filters/ff_avf.c:853,1
    CyclomaticComplexity: 88
    EdgeCount: 88
    ICount: 280
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 854
      start: 499
    functionDepth: 5
    functionLinenumber: 499
    functionLinenumberEnd: 854
    functionName: ffavf_process
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached:
    - gf_filter_connections_pending
    - ffmpeg_channel_layout_to_gpac
    - av_buffersink_get_frame_rate
    - PROP_STRING
    - av_buffersrc_add_frame_flags
    - gf_filter_pid_set_property_str
    - gf_list_count
    - gf_filter_pck_ref_props
    - gf_filter_pck_get_frame_interface
    - PROP_LONGUINT
    - gf_filter_pid_get_packet
    - gf_list_get
    - memcpy
    - av_frame_alloc
    - ffmpeg_audio_fmt_to_gpac
    - gf_list_add
    - gf_filter_pck_get_cts
    - av_buffersink_get_frame
    - PROP_BOOL
    - gf_audio_fmt_bit_depth
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_filter_pck_set_interlaced
    - av_err2str
    - gf_filter_pid_would_block
    - gf_filter_pid_set_eos
    - ffmpeg_pixfmt_to_gpac
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - AVERROR
    - gf_filter_pid_set_property
    - PROP_FRAC_INT
    - ffmpeg_pixfmt_is_fullrange
    - PROP_UINT
    - ffavf_setup_filter
    - gf_list_pop_front
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - GF_FilterFrameInterface*::get_plane
    - gf_pixel_get_size_info
    - av_frame_free
    - gf_pixel_get_bytes_per_pixel
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffavf_process(GF_Filter *filter)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_avf.c:878,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/ff_avf.c:880,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:881,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/ff_avf.c:885,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/ff_avf.c:889,1
    - Dst: ffavf_reset_graph
      Src: /src/gpac/src/filters/ff_avf.c:892,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:893,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/ff_avf.c:894,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/ff_avf.c:896,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_avf.c:897,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/ff_avf.c:904,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/ff_avf.c:908,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/ff_avf.c:909,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:915,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:924,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:928,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:932,1
    - Dst: ffmpeg_pixfmt_from_gpac
      Src: /src/gpac/src/filters/ff_avf.c:935,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:937,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:940,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:944,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:946,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/ff_avf.c:948,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:970,1
    - Dst: ffmpeg_channel_layout_from_gpac
      Src: /src/gpac/src/filters/ff_avf.c:971,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:973,1
    - Dst: av_get_default_channel_layout
      Src: /src/gpac/src/filters/ff_avf.c:978,1
    - Dst: av_channel_layout_default
      Src: /src/gpac/src/filters/ff_avf.c:981,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:985,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:989,1
    - Dst: ffmpeg_audio_fmt_from_gpac
      Src: /src/gpac/src/filters/ff_avf.c:991,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/ff_avf.c:992,1
    - Dst: gf_audio_fmt_is_planar
      Src: /src/gpac/src/filters/ff_avf.c:993,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/ff_avf.c:1013,1
    - Dst: ffavf_setup_input
      Src: /src/gpac/src/filters/ff_avf.c:1029,1
    - Dst: ffavf_setup_outputs
      Src: /src/gpac/src/filters/ff_avf.c:1035,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 148
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1037
      start: 871
    functionDepth: 5
    functionLinenumber: 871
    functionLinenumberEnd: 1037
    functionName: ffavf_configure_pid
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - ffavf_reset_graph
    - gf_filter_pid_check_caps
    - gf_list_count
    - ffmpeg_audio_fmt_from_gpac
    - gf_audio_fmt_is_planar
    - gf_filter_pid_set_udta
    - av_channel_layout_default
    - gf_list_pop_back
    - av_get_default_channel_layout
    - ffmpeg_channel_layout_from_gpac
    - gf_list_add
    - ffavf_setup_outputs
    - ffmpeg_pixfmt_from_gpac
    - gf_audio_fmt_bit_depth
    - gf_filter_get_udta
    - ffavf_setup_input
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - gf_pixel_get_size_info
    - gf_filter_pid_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffavf_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_avf.c:1042,1
    - Dst: ffavf_reset_graph
      Src: /src/gpac/src/filters/ff_avf.c:1044,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:1045,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/ff_avf.c:1046,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_avf.c:1048,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/ff_avf.c:1050,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:1051,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/ff_avf.c:1052,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_avf.c:1054,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/ff_avf.c:1056,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:1057,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/ff_avf.c:1058,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_avf.c:1059,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/ff_avf.c:1061,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_avf.c:1062,1
    - Dst: av_frame_free
      Src: /src/gpac/src/filters/ff_avf.c:1063,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1064
      start: 1040
    functionDepth: 3
    functionLinenumber: 1040
    functionLinenumberEnd: 1064
    functionName: ffavf_finalize
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - ffavf_reset_graph
    - gf_filter_pck_unref
    - gf_list_count
    - av_frame_free
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ffavf_finalize(GF_Filter *filter)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_avf.c:1071,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_avf.c:1073,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:1075,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_avf.c:1078,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_avf.c:1079,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_avf.c:1088,1
    - Dst: ffavf_dump_graph
      Src: /src/gpac/src/filters/ff_avf.c:1089,1
    - Dst: strlen
      Src: /src/gpac/src/filters/ff_avf.c:1089,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:1095,1
    - Dst: strchr
      Src: /src/gpac/src/filters/ff_avf.c:1103,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/ff_avf.c:1103,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/ff_avf.c:1107,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/ff_avf.c:1111,1
    - Dst: avfilter_graph_send_command
      Src: /src/gpac/src/filters/ff_avf.c:1113,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:1115,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:1115,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 41
    argCount: 3
    argNames:
    - filter
    - arg_name
    - arg_val
    argTypes:
    - GF_Filter*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1122
      start: 1066
    functionDepth: 3
    functionLinenumber: 1066
    functionLinenumberEnd: 1122
    functionName: ffavf_update_arg
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - avfilter_graph_send_command
    - GF_LOG
    - strcpy
    - gf_filter_get_sep
    - av_err2str
    - ffavf_dump_graph
    - strncpy
    - strcmp
    - strchr
    - strlen
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffavf_update_arg(GF_Filter *filter, const char *arg_name, const
      GF_PropertyValue *arg_val)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_avf.c:1126,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1141
      start: 1124
    functionDepth: 1
    functionLinenumber: 1124
    functionLinenumberEnd: 1141
    functionName: ffavf_process_event
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool ffavf_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1214
      start: 1213
    functionDepth: 0
    functionLinenumber: 1213
    functionLinenumberEnd: 1214
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ffmpeg_build_register
      Src: /src/gpac/src/filters/ff_avf.c:1231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1232
      start: 1229
    functionDepth: 1
    functionLinenumber: 1229
    functionLinenumberEnd: 1232
    functionName: ffavf_register
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached:
    - ffmpeg_build_register
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ffavf_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1239
      start: 1236
    functionDepth: 0
    functionLinenumber: 1236
    functionLinenumberEnd: 1239
    functionName: ffavf_register
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ffavf_register(GF_FilterSession *session)
  - BBCount: 109
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_generic.c:114,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_generic.c:119,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/write_generic.c:124,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:125,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_generic.c:127,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:134,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/write_generic.c:140,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/write_generic.c:149,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:150,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:152,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:156,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:158,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:160,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:162,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:166,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:168,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:171,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:177,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:178,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:187,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:194,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:197,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_generic.c:197,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/write_generic.c:203,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/write_generic.c:206,1
    - Dst: gf_codecid_file_ext
      Src: /src/gpac/src/filters/write_generic.c:206,1
    - Dst: strchr
      Src: /src/gpac/src/filters/write_generic.c:208,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/write_generic.c:214,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:217,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/write_generic.c:219,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:223,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:223,1
    - Dst: gf_codecid_mime
      Src: /src/gpac/src/filters/write_generic.c:225,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:233,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:235,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:235,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:247,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:247,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:253,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:253,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:259,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:259,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:266,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:266,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:273,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:273,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:279,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:280,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:280,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/write_generic.c:284,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:285,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:292,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:293,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:293,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:299,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:300,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:300,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:305,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:306,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:306,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:311,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:312,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:312,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:317,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:318,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:318,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:324,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:325,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:325,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/write_generic.c:345,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:348,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:348,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:349,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:349,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:351,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:351,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:352,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:352,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:354,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:354,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:355,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:355,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/write_generic.c:362,1
    - Dst: gf_pixel_fmt_sname
      Src: /src/gpac/src/filters/write_generic.c:362,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/write_generic.c:363,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/write_generic.c:365,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:367,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:372,1
    - Dst: gf_pixel_fmt_parse
      Src: /src/gpac/src/filters/write_generic.c:376,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_generic.c:378,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/write_generic.c:381,1
    - Dst: gf_pixel_fmt_sname
      Src: /src/gpac/src/filters/write_generic.c:381,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/write_generic.c:386,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_generic.c:386,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/write_generic.c:394,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_generic.c:394,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/write_generic.c:395,1
    - Dst: gf_pixel_fmt_sname
      Src: /src/gpac/src/filters/write_generic.c:395,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:401,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/write_generic.c:405,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/write_generic.c:409,1
    - Dst: gf_audio_fmt_sname
      Src: /src/gpac/src/filters/write_generic.c:409,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/write_generic.c:410,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/write_generic.c:412,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:414,1
    - Dst: gf_audio_fmt_parse
      Src: /src/gpac/src/filters/write_generic.c:432,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/write_generic.c:433,1
    - Dst: gf_audio_fmt_sname
      Src: /src/gpac/src/filters/write_generic.c:433,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/write_generic.c:438,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_generic.c:438,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/write_generic.c:446,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_generic.c:446,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/write_generic.c:447,1
    - Dst: gf_audio_fmt_sname
      Src: /src/gpac/src/filters/write_generic.c:447,1
    - Dst: gf_audio_fmt_is_planar
      Src: /src/gpac/src/filters/write_generic.c:451,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/write_generic.c:456,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/write_generic.c:456,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/write_generic.c:458,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/write_generic.c:459,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:461,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_generic.c:461,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/write_generic.c:462,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:463,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/write_generic.c:463,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:465,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:465,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:466,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:466,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:471,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/write_generic.c:472,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/write_generic.c:472,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:473,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/write_generic.c:473,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:474,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:474,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:476,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:476,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:478,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:478,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/write_generic.c:485,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/write_generic.c:488,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_generic.c:489,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_generic.c:492,1
    - Dst: gf_audio_fmt_name
      Src: /src/gpac/src/filters/write_generic.c:492,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/write_generic.c:492,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/write_generic.c:495,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_generic.c:497,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_generic.c:500,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:506,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:511,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:515,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/write_generic.c:515,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:516,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_generic.c:516,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:517,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_generic.c:517,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:520,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:521,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/write_generic.c:525,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/write_generic.c:530,1
    CyclomaticComplexity: 118
    EdgeCount: 118
    ICount: 375
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 108
    functionDepth: 6
    functionLinenumber: 108
    functionLinenumberEnd: 532
    functionName: writegen_configure_pid
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_pixel_fmt_parse
    - PROP_STRING
    - strcpy
    - gf_filter_pid_check_caps
    - gf_audio_fmt_is_planar
    - gf_filter_pid_new
    - strchr
    - gf_4cc_to_str
    - gf_codecid_mime
    - stricmp
    - PROP_BOOL
    - gf_audio_fmt_bit_depth
    - gf_filter_get_udta
    - gf_filter_pid_get_property_str
    - gf_filter_pid_copy_properties
    - gf_pixel_fmt_name
    - GF_LOG
    - gf_filter_pid_negotiate_property
    - gf_audio_fmt_name
    - strncpy
    - gf_pixel_fmt_sname
    - gf_filter_pid_set_property
    - gf_codecid_file_ext
    - strlen
    - gf_audio_fmt_parse
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - gf_opts_get_bool
    - gf_audio_fmt_sname
    - gf_pixel_get_size_info
    - strcmp
    - gf_filter_pid_caps_query
    - gf_codecid_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err writegen_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memcmp
      Src: /src/gpac/src/filters/write_generic.c:546,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/write_generic.c:547,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:552,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_generic.c:556,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_generic.c:557,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_generic.c:559,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_generic.c:560,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_generic.c:561,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_generic.c:562,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_generic.c:563,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_generic.c:564,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_generic.c:565,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_generic.c:566,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_generic.c:570,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_generic.c:571,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:572,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:574,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 31
    argCount: 4
    argNames:
    - ctx
    - data
    - data_size
    - in_pck
    argTypes:
    - GF_GenDumpCtx*
    - char*
    - u32
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 534
    functionDepth: 6
    functionLinenumber: 534
    functionLinenumberEnd: 577
    functionName: writegen_write_j2k
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - memcmp
    - gf_filter_pck_new_ref
    - gf_bs_new
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_bs_reassign_buffer
    linkageType: ''
    returnType: GF_FilterPacket
    signature: GF_FilterPacket *writegen_write_j2k(GF_GenDumpCtx *ctx, char *data,
      u32 data_size, GF_FilterPacket *in_pck)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:619,1
    - Dst: memset
      Src: /src/gpac/src/filters/write_generic.c:622,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_generic.c:626,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_generic.c:627,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:629,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:630,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:631,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:632,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:633,1
    - Dst: memset
      Src: /src/gpac/src/filters/write_generic.c:635,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:644,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:649,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 31
    argCount: 3
    argNames:
    - ctx
    - data
    - data_size
    argTypes:
    - GF_GenDumpCtx*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 653
      start: 609
    functionDepth: 6
    functionLinenumber: 609
    functionLinenumberEnd: 653
    functionName: writegen_write_bmp
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_bs_new
    - memcpy
    - gf_bs_write_data
    - memset
    - gf_bs_reassign_buffer
    linkageType: ''
    returnType: GF_FilterPacket
    signature: GF_FilterPacket *writegen_write_bmp(GF_GenDumpCtx *ctx, char *data,
      u32 data_size)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:670,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:673,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:676,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/write_generic.c:680,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:683,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_generic.c:686,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_generic.c:687,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:689,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/write_generic.c:690,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:691,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:693,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/write_generic.c:694,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/filters/write_generic.c:697,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/filters/write_generic.c:699,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/filters/write_generic.c:700,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/write_generic.c:701,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/write_generic.c:702,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/filters/write_generic.c:703,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/filters/write_generic.c:704,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:706,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/write_generic.c:707,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_generic.c:709,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/write_generic.c:710,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/write_generic.c:711,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_generic.c:712,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 43
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_GenDumpCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 713
      start: 655
    functionDepth: 6
    functionLinenumber: 655
    functionLinenumberEnd: 713
    functionName: writegen_write_wav_header
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_new_alloc
    - gf_filter_pid_get_property
    - gf_bs_new
    - gf_filter_pck_set_seek_flag
    - gf_bs_write_u16_le
    - gf_filter_pck_set_framing
    - gf_bs_write_data
    - gf_bs_write_u32_le
    - gf_bs_reassign_buffer
    - gf_audio_fmt_bit_depth
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void writegen_write_wav_header(GF_GenDumpCtx *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:720,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:721,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - node
    - name
    argTypes:
    - GF_XMLNode*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 724
      start: 716
    functionDepth: 2
    functionLinenumber: 716
    functionLinenumberEnd: 724
    functionName: ttml_get_attr
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    - strcmp
    linkageType: ''
    returnType: GF_XMLAttribute
    signature: GF_XMLAttribute *ttml_get_attr(GF_XMLNode *node, char *name)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:730,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:732,1
    - Dst: ttml_get_attr
      Src: /src/gpac/src/filters/write_generic.c:738,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:739,1
    - Dst: ttml_locate_div
      Src: /src/gpac/src/filters/write_generic.c:744,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 19
    argCount: 3
    argNames:
    - body
    - region_name
    - div_idx
    argTypes:
    - GF_XMLNode*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 747
      start: 726
    functionDepth: 3
    functionLinenumber: 726
    functionLinenumberEnd: 747
    functionName: ttml_locate_div
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 1
    functionsReached:
    - ttml_get_attr
    - gf_list_enum
    - strcmp
    - ttml_locate_div
    linkageType: ''
    returnType: GF_XMLNode
    signature: GF_XMLNode *ttml_locate_div(GF_XMLNode *body, const char *region_name,
      u32 div_idx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:753,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:755,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 1
    argNames:
    - root
    argTypes:
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 749
    functionDepth: 2
    functionLinenumber: 749
    functionLinenumberEnd: 758
    functionName: ttml_get_head
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - strcmp
    linkageType: ''
    returnType: GF_XMLNode
    signature: GF_XMLNode *ttml_get_head(GF_XMLNode *root)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:764,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:766,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 1
    argNames:
    - root
    argTypes:
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 769
      start: 760
    functionDepth: 2
    functionLinenumber: 760
    functionLinenumberEnd: 769
    functionName: ttml_get_body
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    - strcmp
    linkageType: ''
    returnType: GF_XMLNode
    signature: GF_XMLNode *ttml_get_body(GF_XMLNode *root)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:775,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:779,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:780,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:781,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 2
    argNames:
    - n1
    - n2
    argTypes:
    - GF_XMLNode*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 790
      start: 771
    functionDepth: 2
    functionLinenumber: 771
    functionLinenumberEnd: 790
    functionName: ttml_same_attr
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - strcmp
    linkageType: ''
    returnType: Bool
    signature: Bool ttml_same_attr(GF_XMLNode *n1, GF_XMLNode *n2)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:796,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:800,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:801,1
    - Dst: ttml_same_attr
      Src: /src/gpac/src/filters/write_generic.c:801,1
    - Dst: ttml_merge_head
      Src: /src/gpac/src/filters/write_generic.c:807,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/write_generic.c:811,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:812,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/write_generic.c:813,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 2
    argNames:
    - node_src
    - node_dst
    argTypes:
    - GF_XMLNode*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 816
      start: 792
    functionDepth: 3
    functionLinenumber: 792
    functionLinenumberEnd: 816
    functionName: ttml_merge_head
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - ttml_merge_head
    - strcmp
    - ttml_same_attr
    - gf_list_add
    - gf_list_enum
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void ttml_merge_head(GF_XMLNode *node_src, GF_XMLNode *node_dst)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:828,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:832,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:834,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/write_generic.c:836,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/write_generic.c:837,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/write_generic.c:840,1
    - Dst: atoi
      Src: /src/gpac/src/filters/write_generic.c:842,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_generic.c:873,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_generic.c:875,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/write_generic.c:881,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_generic.c:882,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_generic.c:883,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_generic.c:884,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/write_generic.c:889,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:891,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:892,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/write_generic.c:893,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:894,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/write_generic.c:895,1
    - Dst: ttml_get_attr
      Src: /src/gpac/src/filters/write_generic.c:898,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/write_generic.c:900,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/write_generic.c:901,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/write_generic.c:907,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:909,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:910,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/write_generic.c:911,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:912,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/write_generic.c:913,1
    - Dst: ttml_get_attr
      Src: /src/gpac/src/filters/write_generic.c:916,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/write_generic.c:918,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/write_generic.c:919,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/write_generic.c:922,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/write_generic.c:926,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_generic.c:928,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/filters/write_generic.c:931,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/write_generic.c:933,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:939,1
    - Dst: ttml_embed_data
      Src: /src/gpac/src/filters/write_generic.c:941,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 114
    argCount: 5
    argNames:
    - node
    - aux_data
    - aux_data_size
    - subs_data
    - subs_data_size
    argTypes:
    - GF_XMLNode*
    - u8*
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 944
      start: 818
    functionDepth: 4
    functionLinenumber: 818
    functionLinenumberEnd: 944
    functionName: ttml_embed_data
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_strdup
    - ttml_get_attr
    - strrchr
    - GF_SAFEALLOC
    - GF_LOG
    - ttml_embed_data
    - gf_base64_encode
    - strncmp
    - strcmp
    - gf_file_ext_start
    - atoi
    - gf_list_del_item
    - gf_list_add
    - gf_list_enum
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ttml_embed_data(GF_XMLNode *node, u8 *aux_data, u32 aux_data_size,
      u8 *subs_data, u32 subs_data_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ttml_get_timestamp_ex
      Src: /src/gpac/src/filters/write_generic.c:953,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 954
      start: 950
    functionDepth: 1
    functionLinenumber: 950
    functionLinenumberEnd: 954
    functionName: ttml_get_timestamp
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - ttml_get_timestamp_ex
    linkageType: ''
    returnType: u64
    signature: u64 ttml_get_timestamp(char *value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ttml_get_timestamp
      Src: /src/gpac/src/filters/write_generic.c:962,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/write_generic.c:973,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_generic.c:975,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/write_generic.c:976,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 3
    argNames:
    - ts_offset
    - att
    - value
    argTypes:
    - s64
    - GF_XMLAttribute*
    - s64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 978
      start: 957
    functionDepth: 0
    functionLinenumber: 957
    functionLinenumberEnd: 978
    functionName: writegen_rewrite_timestamp_ttml
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - ttml_get_timestamp
    - gf_free
    - gf_strdup
    - snprintf
    linkageType: ''
    returnType: void
    signature: void writegen_rewrite_timestamp_ttml(s64 ts_offset, GF_XMLAttribute
      *att, s64 *value)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:985,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:986,1
    - Dst: writegen_rewrite_timestamp_ttml
      Src: /src/gpac/src/filters/write_generic.c:988,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:990,1
    - Dst: writegen_rewrite_timestamp_ttml
      Src: /src/gpac/src/filters/write_generic.c:992,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - offset
    - p_attributes
    argTypes:
    - u64
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 995
      start: 980
    functionDepth: 2
    functionLinenumber: 980
    functionLinenumberEnd: 995
    functionName: ttml_rewrite_timestamp
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - writegen_rewrite_timestamp_ttml
    - gf_list_enum
    - strcmp
    linkageType: ''
    returnType: void
    signature: void ttml_rewrite_timestamp(u64 offset, GF_List *p_attributes)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_generic.c:1000,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/write_generic.c:1025,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:1028,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/filters/write_generic.c:1032,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/filters/write_generic.c:1034,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_generic.c:1036,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/filters/write_generic.c:1036,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/write_generic.c:1039,1
    - Dst: ttml_embed_data
      Src: /src/gpac/src/filters/write_generic.c:1043,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/write_generic.c:1048,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/filters/write_generic.c:1049,1
    - Dst: gf_xml_dom_detach_root
      Src: /src/gpac/src/filters/write_generic.c:1053,1
    - Dst: ttml_get_body
      Src: /src/gpac/src/filters/write_generic.c:1056,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/write_generic.c:1059,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/write_generic.c:1062,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:1065,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:1067,1
    - Dst: ttml_rewrite_timestamp
      Src: /src/gpac/src/filters/write_generic.c:1069,1
    - Dst: ttml_get_head
      Src: /src/gpac/src/filters/write_generic.c:1078,1
    - Dst: ttml_get_head
      Src: /src/gpac/src/filters/write_generic.c:1079,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/write_generic.c:1082,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:1083,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/write_generic.c:1084,1
    - Dst: ttml_merge_head
      Src: /src/gpac/src/filters/write_generic.c:1086,1
    - Dst: ttml_get_body
      Src: /src/gpac/src/filters/write_generic.c:1090,1
    - Dst: ttml_get_body
      Src: /src/gpac/src/filters/write_generic.c:1091,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/write_generic.c:1093,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:1094,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/write_generic.c:1095,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/write_generic.c:1100,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/write_generic.c:1104,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:1106,1
    - Dst: ttml_get_attr
      Src: /src/gpac/src/filters/write_generic.c:1109,1
    - Dst: ttml_locate_div
      Src: /src/gpac/src/filters/write_generic.c:1112,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/write_generic.c:1115,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:1116,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/write_generic.c:1117,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:1124,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:1130,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:1131,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:1133,1
    - Dst: ttml_same_attr
      Src: /src/gpac/src/filters/write_generic.c:1135,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/write_generic.c:1143,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/write_generic.c:1145,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/write_generic.c:1147,1
    - Dst: ttml_rewrite_timestamp
      Src: /src/gpac/src/filters/write_generic.c:1151,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/write_generic.c:1154,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:1155,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/write_generic.c:1157,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/write_generic.c:1160,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/write_generic.c:1161,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/write_generic.c:1165,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_generic.c:1170,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filters/write_generic.c:1171,1
    CyclomaticComplexity: 60
    EdgeCount: 60
    ICount: 155
    argCount: 4
    argNames:
    - ctx
    - data
    - data_size
    - in_pck
    argTypes:
    - GF_GenDumpCtx*
    - char*
    - u32
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1173
      start: 998
    functionDepth: 10
    functionLinenumber: 998
    functionLinenumberEnd: 1173
    functionName: writegen_push_ttml
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_free
    - ttml_rewrite_timestamp
    - ttml_get_attr
    - gf_xml_dom_get_root
    - gf_list_count
    - gf_xml_dom_node_del
    - gf_list_get
    - gf_list_new
    - memcpy
    - ttml_locate_div
    - gf_xml_dom_new
    - gf_list_add
    - gf_filter_pck_get_property
    - gf_list_insert
    - GF_LOG
    - gf_xml_dom_parse_string
    - gf_xml_dom_get_error
    - ttml_same_attr
    - gf_list_del_item
    - gf_list_enum
    - gf_list_last
    - gf_malloc
    - ttml_merge_head
    - ttml_embed_data
    - ttml_get_body
    - strcmp
    - ttml_get_head
    - gf_xml_dom_detach_root
    - gf_xml_dom_del
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err writegen_push_ttml(GF_GenDumpCtx *ctx, char *data, u32 data_size,
      GF_FilterPacket *in_pck)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: ttml_get_body
      Src: /src/gpac/src/filters/write_generic.c:1185,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/write_generic.c:1186,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/write_generic.c:1189,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:1191,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/write_generic.c:1192,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/write_generic.c:1194,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/write_generic.c:1197,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/filters/write_generic.c:1200,1
    - Dst: gf_xml_dom_serialize_root
      Src: /src/gpac/src/filters/write_generic.c:1204,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1206,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:1207,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:1210,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_generic.c:1211,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_generic.c:1214,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/write_generic.c:1215,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/write_generic.c:1216,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/write_generic.c:1217,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/filters/write_generic.c:1220,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_generic.c:1224,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/write_generic.c:1225,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/write_generic.c:1226,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/write_generic.c:1227,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_generic.c:1228,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/write_generic.c:1229,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/write_generic.c:1230,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/write_generic.c:1232,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_generic.c:1236,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_generic.c:1237,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 52
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_GenDumpCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1238
      start: 1175
    functionDepth: 4
    functionLinenumber: 1175
    functionLinenumberEnd: 1238
    functionName: writegen_flush_ttml
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - gf_xml_dom_node_del
    - gf_filter_pck_set_dependency_flags
    - gf_list_get
    - gf_filter_pck_set_byte_offset
    - memcpy
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_duration
    - gf_xml_dom_serialize_root
    - gf_filter_pck_new_alloc
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - strlen
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - gf_filter_pck_set_framing
    - ttml_get_body
    - strcmp
    - gf_list_rem
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err writegen_flush_ttml(GF_GenDumpCtx *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1244,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:1246,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:1247,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_generic.c:1248,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/write_generic.c:1249,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_generic.c:1251,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_GenDumpCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1252
      start: 1240
    functionDepth: 1
    functionLinenumber: 1240
    functionLinenumberEnd: 1252
    functionName: writegen_flush_ttxt
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_new_alloc
    - memcpy
    - gf_filter_pck_set_framing
    - strlen
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err writegen_flush_ttxt(GF_GenDumpCtx *ctx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/filters/write_generic.c:1262,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/write_generic.c:1262,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/filters/write_generic.c:1263,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/write_generic.c:1263,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/write_generic.c:1266,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_generic.c:1271,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1272,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1272,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_generic.c:1274,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1275,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1275,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_generic.c:1277,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1278,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1278,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_generic.c:1281,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1282,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1282,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_generic.c:1284,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1285,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1285,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1288,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 6
    argNames:
    - bs
    - start_ts
    - end_ts
    - timescale
    - write_srt
    - forced
    argTypes:
    - GF_BitStream*
    - u64
    - u64
    - u32
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1291
      start: 1256
    functionDepth: 6
    functionLinenumber: 1256
    functionLinenumberEnd: 1291
    functionName: webvtt_timestamps_dump
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - strlen
    - sprintf
    - gf_webvtt_timestamp_set
    - gf_bs_write_data
    - gf_opts_get_bool
    - gf_timestamp_rescale
    linkageType: ''
    returnType: void
    signature: void webvtt_timestamps_dump(GF_BitStream *bs, u64 start_ts, u64 end_ts,
      u32 timescale, Bool write_srt, Bool forced)
  - BBCount: 96
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_generic.c:1295,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/write_generic.c:1303,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/write_generic.c:1305,1
    - Dst: writegen_write_wav_header
      Src: /src/gpac/src/filters/write_generic.c:1306,1
    - Dst: writegen_flush_ttml
      Src: /src/gpac/src/filters/write_generic.c:1307,1
    - Dst: writegen_flush_ttxt
      Src: /src/gpac/src/filters/write_generic.c:1309,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/write_generic.c:1311,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_generic.c:1321,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_generic.c:1325,1
    - Dst: writegen_flush_ttml
      Src: /src/gpac/src/filters/write_generic.c:1327,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/write_generic.c:1329,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/write_generic.c:1336,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/write_generic.c:1341,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_generic.c:1343,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_generic.c:1350,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/write_generic.c:1357,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_generic.c:1359,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/write_generic.c:1364,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/write_generic.c:1364,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_generic.c:1371,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/write_generic.c:1372,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/write_generic.c:1373,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_generic.c:1378,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/write_generic.c:1385,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:1388,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:1394,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/write_generic.c:1396,1
    - Dst: gf_filter_pck_set_readonly
      Src: /src/gpac/src/filters/write_generic.c:1398,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_generic.c:1400,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_generic.c:1402,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/write_generic.c:1405,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_generic.c:1405,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_generic.c:1410,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/write_generic.c:1421,1
    - Dst: writegen_write_j2k
      Src: /src/gpac/src/filters/write_generic.c:1424,1
    - Dst: writegen_write_bmp
      Src: /src/gpac/src/filters/write_generic.c:1426,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1432,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_generic.c:1433,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1434,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_generic.c:1435,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1436,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:1437,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_generic.c:1439,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1440,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:1442,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_generic.c:1444,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1445,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/write_generic.c:1447,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_generic.c:1448,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1449,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1452,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1453,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1454,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1455,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1456,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/write_generic.c:1458,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1460,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1462,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1466,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1469,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:1470,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:1472,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:1473,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_generic.c:1478,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:1482,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_generic.c:1485,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/write_generic.c:1486,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_generic.c:1487,1
    - Dst: gf_filter_pck_set_corrupted
      Src: /src/gpac/src/filters/write_generic.c:1488,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_generic.c:1490,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_generic.c:1497,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/write_generic.c:1499,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_generic.c:1505,1
    - Dst: writegen_push_ttml
      Src: /src/gpac/src/filters/write_generic.c:1508,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_generic.c:1510,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/write_generic.c:1515,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_generic.c:1517,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/write_generic.c:1522,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/write_generic.c:1523,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/write_generic.c:1524,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/write_generic.c:1531,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:1532,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:1536,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/write_generic.c:1541,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:1544,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:1546,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/write_generic.c:1551,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_generic.c:1559,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/write_generic.c:1560,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_generic.c:1572,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/write_generic.c:1573,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/write_generic.c:1574,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_generic.c:1579,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_generic.c:1582,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_generic.c:1583,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1589,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1591,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1592,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1594,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/write_generic.c:1596,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1598,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1599,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1601,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1602,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/write_generic.c:1604,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1606,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1607,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1609,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_generic.c:1612,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_generic.c:1621,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1622,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1622,1
    - Dst: webvtt_timestamps_dump
      Src: /src/gpac/src/filters/write_generic.c:1624,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/write_generic.c:1626,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1628,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1629,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1629,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1632,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1634,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1636,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1638,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/write_generic.c:1643,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:1646,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:1647,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/write_generic.c:1649,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_generic.c:1653,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/write_generic.c:1655,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/write_generic.c:1659,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_generic.c:1659,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_generic.c:1660,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_generic.c:1664,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/write_generic.c:1668,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_generic.c:1669,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:1673,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_generic.c:1675,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_generic.c:1676,1
    - Dst: writegen_flush_ttxt
      Src: /src/gpac/src/filters/write_generic.c:1680,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/write_generic.c:1685,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/write_generic.c:1686,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_generic.c:1688,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/write_generic.c:1690,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/write_generic.c:1691,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/filters/write_generic.c:1692,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_generic.c:1696,1
    CyclomaticComplexity: 132
    EdgeCount: 132
    ICount: 356
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1699
      start: 1293
    functionDepth: 11
    functionLinenumber: 1293
    functionLinenumberEnd: 1699
    functionName: writegen_process
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_pck_new_ref
    - gf_bs_new
    - gf_set_progress
    - gf_filter_pck_ref_props
    - writegen_flush_ttxt
    - writegen_write_j2k
    - writegen_write_bmp
    - gf_filter_pid_get_packet
    - writegen_push_ttml
    - gf_filter_pck_set_property
    - gf_filter_pck_set_readonly
    - gf_filter_pck_set_byte_offset
    - gf_assert
    - gf_filter_pck_forward
    - memcpy
    - GF_FEVT_INIT
    - sprintf
    - writegen_write_wav_header
    - gf_filter_pck_get_cts
    - gf_dynstrcat
    - gf_filter_pck_set_corrupted
    - gf_filter_pck_get_duration
    - writegen_flush_ttml
    - gf_audio_fmt_bit_depth
    - gf_filter_get_udta
    - gf_filter_pck_get_property
    - gf_filter_pid_get_property_str
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_property_str
    - gf_filter_pck_get_data
    - gf_filter_pid_set_eos
    - gf_bs_write_data
    - gf_filter_pck_get_timescale
    - gf_filter_pck_get_interlaced
    - gf_filter_pid_send_event
    - gf_filter_pck_get_sap
    - gf_filter_pid_is_eos
    - gf_bs_get_content_no_truncate
    - gf_bs_reassign_buffer
    - strlen
    - gf_timestamp_rescale
    - gf_filter_pck_new_shared
    - PROP_UINT
    - gf_filter_pid_get_property
    - gf_filter_pck_merge_properties
    - webvtt_timestamps_dump
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_unref
    - gf_timestamp_greater
    - gf_filter_pck_set_framing
    - gf_filter_pck_get_dts
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err writegen_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2103
      start: 2102
    functionDepth: 0
    functionLinenumber: 2102
    functionLinenumberEnd: 2103
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_generic.c:2132,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/write_generic.c:2133,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_generic.c:2134,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/filters/write_generic.c:2136,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/write_generic.c:2139,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2142
      start: 2130
    functionDepth: 4
    functionLinenumber: 2130
    functionLinenumberEnd: 2142
    functionName: writegen_finalize
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_del
    - gf_xml_dom_node_del
    - gf_filter_pck_unref
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void writegen_finalize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_generic.c:2171,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/write_generic.c:2173,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2176
      start: 2169
    functionDepth: 1
    functionLinenumber: 2169
    functionLinenumberEnd: 2176
    functionName: writegen_initialize
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_filter_override_caps
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err writegen_initialize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:2183,1
    - Dst: gf_pixel_fmt_all_shortnames
      Src: /src/gpac/src/filters/write_generic.c:2184,1
    - Dst: gf_audio_fmt_all_shortnames
      Src: /src/gpac/src/filters/write_generic.c:2185,1
    - Dst: gf_pixel_fmt_all_names
      Src: /src/gpac/src/filters/write_generic.c:2186,1
    - Dst: gf_audio_fmt_all_names
      Src: /src/gpac/src/filters/write_generic.c:2187,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2191
      start: 2179
    functionDepth: 2
    functionLinenumber: 2179
    functionLinenumberEnd: 2191
    functionName: writegen_register
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_pixel_fmt_all_names
    - gf_pixel_fmt_all_shortnames
    - strcmp
    - gf_audio_fmt_all_names
    - gf_audio_fmt_all_shortnames
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *writegen_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_generic.c:2196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2199
      start: 2194
    functionDepth: 1
    functionLinenumber: 2194
    functionLinenumberEnd: 2199
    functionName: writeuf_initialize
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err writeuf_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2228
      start: 2225
    functionDepth: 0
    functionLinenumber: 2225
    functionLinenumberEnd: 2228
    functionName: writeuf_register
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *writeuf_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_generic.c:2234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2239
      start: 2232
    functionDepth: 1
    functionLinenumber: 2232
    functionLinenumberEnd: 2239
    functionName: ttmlmerge_initialize
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ttmlmerge_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2266
      start: 2263
    functionDepth: 0
    functionLinenumber: 2263
    functionLinenumberEnd: 2266
    functionName: ttmlmerge_register
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ttmlmerge_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2273
      start: 2270
    functionDepth: 0
    functionLinenumber: 2270
    functionLinenumberEnd: 2273
    functionName: writegen_register
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *writegen_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2277
      start: 2274
    functionDepth: 0
    functionLinenumber: 2274
    functionLinenumberEnd: 2277
    functionName: writeuf_register
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *writeuf_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2281
      start: 2278
    functionDepth: 0
    functionLinenumber: 2278
    functionLinenumberEnd: 2281
    functionName: ttmlmerge_register
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ttmlmerge_register(GF_FilterSession *session)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_scene_size_info
      Src: /src/gpac/src/filters/dec_ttxt.c:130,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/filters/dec_ttxt.c:134,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/filters/dec_ttxt.c:136,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_ttxt.c:141,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_ttxt.c:143,1
    - Dst: gf_filter_is_dynamic
      Src: /src/gpac/src/filters/dec_ttxt.c:148,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/filters/dec_ttxt.c:161,1
    - Dst: gf_sg_get_scene_size_info
      Src: /src/gpac/src/filters/dec_ttxt.c:163,1
    - Dst: gf_scene_force_size
      Src: /src/gpac/src/filters/dec_ttxt.c:165,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/filters/dec_ttxt.c:170,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/filters/dec_ttxt.c:188,1
    - Dst: gf_scene_force_size
      Src: /src/gpac/src/filters/dec_ttxt.c:189,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dec_ttxt.c:198,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/dec_ttxt.c:220,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/dec_ttxt.c:227,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/filters/dec_ttxt.c:229,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 79
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_TTXTDec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 124
    functionDepth: 14
    functionLinenumber: 124
    functionLinenumberEnd: 230
    functionName: ttd_update_size_info
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached:
    - gf_sg_set_scene_size_info
    - INT2FIX
    - gf_filter_pid_get_property
    - gf_filter_is_dynamic
    - gf_sg_get_scene_size_info
    - gf_scene_force_size
    - gf_list_enum
    - gf_node_changed
    linkageType: ''
    returnType: void
    signature: void ttd_update_size_info(GF_TTXTDec *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/filters/dec_ttxt.c:234,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - n1
    - par
    argTypes:
    - GF_Node*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 232
    functionDepth: 2
    functionLinenumber: 232
    functionLinenumberEnd: 236
    functionName: ttd_add_child
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached:
    - gf_node_list_add_child
    - gf_node_register
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE ttd_add_child(GF_Node *n1, GF_Node *par)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_new
      Src: /src/gpac/src/filters/dec_ttxt.c:241,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/filters/dec_ttxt.c:243,1
    - Dst: gf_sg_get_next_available_node_id
      Src: /src/gpac/src/filters/dec_ttxt.c:243,1
    - Dst: gf_node_init
      Src: /src/gpac/src/filters/dec_ttxt.c:244,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ttd
    - tag
    - def_name
    argTypes:
    - GF_TTXTDec*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 239
    functionDepth: 9
    functionLinenumber: 239
    functionLinenumberEnd: 247
    functionName: ttd_create_node
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached:
    - gf_node_init
    - gf_node_set_id
    - gf_sg_get_next_available_node_id
    - gf_node_new
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE *ttd_create_node(GF_TTXTDec *ttd, u32 tag, const char *def_name)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_ttxt.c:251,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_ttxt.c:258,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_ttxt.c:265,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_ttxt.c:266,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_ttxt.c:269,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_ttxt.c:271,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/filters/dec_ttxt.c:276,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_ttxt.c:288,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_ttxt.c:292,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_ttxt.c:293,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_ttxt.c:293,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_ttxt.c:294,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_ttxt.c:294,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_ttxt.c:296,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/filters/dec_ttxt.c:300,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_ttxt.c:301,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_ttxt.c:303,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_ttxt.c:304,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_ttxt.c:316,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_ttxt.c:319,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/dec_ttxt.c:325,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/filters/dec_ttxt.c:327,1
    - Dst: gf_odf_get_text_config
      Src: /src/gpac/src/filters/dec_ttxt.c:329,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/dec_ttxt.c:331,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_ttxt.c:337,1
    - Dst: gf_odf_tx3g_read
      Src: /src/gpac/src/filters/dec_ttxt.c:344,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/dec_ttxt.c:346,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_ttxt.c:358,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_ttxt.c:362,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_ttxt.c:362,1
    - Dst: ttd_setup_scene
      Src: /src/gpac/src/filters/dec_ttxt.c:365,1
    - Dst: ttd_toggle_display
      Src: /src/gpac/src/filters/dec_ttxt.c:366,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_ttxt.c:370,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_ttxt.c:373,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 104
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 249
    functionDepth: 5
    functionLinenumber: 249
    functionLinenumberEnd: 376
    functionName: ttd_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_odf_desc_del
    - gf_filter_pid_check_caps
    - gf_list_count
    - ttd_toggle_display
    - gf_filter_pid_new
    - gf_assert
    - gf_list_get
    - gf_odf_tx3g_read
    - gf_odf_desc_new
    - gf_list_add
    - gf_odf_get_text_config
    - gf_crc_32
    - gf_filter_pid_get_timescale
    - gf_filter_get_udta
    - gf_filter_pid_copy_properties
    - ttd_setup_scene
    - gf_filter_pid_set_property
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ttd_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_new_subscene
      Src: /src/gpac/src/filters/dec_ttxt.c:383,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:385,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/src/filters/dec_ttxt.c:386,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:387,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:389,1
    - Dst: ttd_add_child
      Src: /src/gpac/src/filters/dec_ttxt.c:390,1
    - Dst: ttd_update_size_info
      Src: /src/gpac/src/filters/dec_ttxt.c:392,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:395,1
    - Dst: ttd_add_child
      Src: /src/gpac/src/filters/dec_ttxt.c:396,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:397,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:398,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:399,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:403,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:404,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:408,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:412,1
    - Dst: ttd_add_child
      Src: /src/gpac/src/filters/dec_ttxt.c:413,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:414,1
    - Dst: ttd_add_child
      Src: /src/gpac/src/filters/dec_ttxt.c:415,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:416,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:417,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:418,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:422,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:423,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:427,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:429,1
    - Dst: ttd_add_child
      Src: /src/gpac/src/filters/dec_ttxt.c:432,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_ttxt.c:434,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:435,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:439,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/filters/dec_ttxt.c:442,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/filters/dec_ttxt.c:444,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:446,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:450,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/filters/dec_ttxt.c:453,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/filters/dec_ttxt.c:455,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:457,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:458,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:459,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:460,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 66
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_TTXTDec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 378
    functionDepth: 15
    functionLinenumber: 378
    functionLinenumberEnd: 462
    functionName: ttd_setup_scene
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 1
    functionsReached:
    - ttd_create_node
    - gf_list_new
    - gf_sg_set_root_node
    - gf_node_set_private
    - gf_sg_new_subscene
    - ttd_add_child
    - gf_sg_route_new
    - gf_node_register
    - ttd_update_size_info
    linkageType: ''
    returnType: void
    signature: void ttd_setup_scene(GF_TTXTDec *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_register_extra_graph
      Src: /src/gpac/src/filters/dec_ttxt.c:468,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/filters/dec_ttxt.c:470,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/filters/dec_ttxt.c:471,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/filters/dec_ttxt.c:472,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/filters/dec_ttxt.c:473,1
    - Dst: gf_sg_del
      Src: /src/gpac/src/filters/dec_ttxt.c:475,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_ttxt.c:477,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_TTXTDec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 464
    functionDepth: 3
    functionLinenumber: 464
    functionLinenumberEnd: 478
    functionName: ttd_reset_scene
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister
    - gf_sg_del
    - gf_list_del
    - gf_scene_register_extra_graph
    linkageType: ''
    returnType: void
    signature: void ttd_reset_scene(GF_TTXTDec *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/filters/dec_ttxt.c:484,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dec_ttxt.c:489,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/filters/dec_ttxt.c:492,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 495
      start: 480
    functionDepth: 11
    functionLinenumber: 480
    functionLinenumberEnd: 495
    functionName: ttd_set_blink_fraction
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_node_get_private
    - gf_node_changed
    linkageType: ''
    returnType: void
    signature: void ttd_set_blink_fraction(GF_Node *node, GF_Route *route)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/filters/dec_ttxt.c:500,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/filters/dec_ttxt.c:514,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/filters/dec_ttxt.c:520,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/filters/dec_ttxt.c:522,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/filters/dec_ttxt.c:539,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/filters/dec_ttxt.c:544,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/filters/dec_ttxt.c:551,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 60
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 497
    functionDepth: 11
    functionLinenumber: 497
    functionLinenumberEnd: 552
    functionName: ttd_set_scroll_fraction
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached:
    - gf_node_changed
    - gf_node_get_private
    - gf_muldiv
    linkageType: ''
    returnType: void
    signature: void ttd_set_scroll_fraction(GF_Node *node, GF_Route *route)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/dec_ttxt.c:556,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/filters/dec_ttxt.c:557,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/filters/dec_ttxt.c:559,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_TTXTDec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 554
    functionDepth: 11
    functionLinenumber: 554
    functionLinenumberEnd: 561
    functionName: ttd_reset_display
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister_children
    - gf_node_changed
    - gf_list_reset
    linkageType: ''
    returnType: void
    signature: void ttd_reset_display(GF_TTXTDec *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - tsd
    - ID
    argTypes:
    - GF_TextSampleDescriptor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 563
    functionDepth: 0
    functionLinenumber: 563
    functionLinenumberEnd: 570
    functionName: ttd_find_font
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *ttd_find_font(GF_TextSampleDescriptor *tsd, u32 ID)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:575,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/filters/dec_ttxt.c:576,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:577,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:580,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/filters/dec_ttxt.c:581,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - form
    argTypes:
    - M_Form*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 572
    functionDepth: 3
    functionLinenumber: 572
    functionLinenumberEnd: 582
    functionName: ttd_add_item
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached:
    - gf_node_list_get_count
    - gf_sg_vrml_mf_append
    linkageType: ''
    returnType: void
    signature: void ttd_add_item(M_Form *form)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:587,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - form
    argTypes:
    - M_Form*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 589
      start: 584
    functionDepth: 3
    functionLinenumber: 584
    functionLinenumberEnd: 589
    functionName: ttd_add_line
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_mf_append
    linkageType: ''
    returnType: void
    signature: void ttd_add_line(M_Form *form)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: ttd_find_font
      Src: /src/gpac/src/filters/dec_ttxt.c:614,1
    - Dst: ttd_find_font
      Src: /src/gpac/src/filters/dec_ttxt.c:632,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:639,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:640,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:641,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:643,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:644,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:646,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/dec_ttxt.c:649,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/dec_ttxt.c:650,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/dec_ttxt.c:651,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/dec_ttxt.c:652,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:655,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:657,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:660,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:662,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:664,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_ttxt.c:665,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dec_ttxt.c:668,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:668,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dec_ttxt.c:669,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:669,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dec_ttxt.c:670,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:670,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:671,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/dec_ttxt.c:673,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_ttxt.c:674,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dec_ttxt.c:675,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dec_ttxt.c:677,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dec_ttxt.c:678,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dec_ttxt.c:679,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dec_ttxt.c:680,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dec_ttxt.c:680,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dec_ttxt.c:682,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dec_ttxt.c:683,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dec_ttxt.c:688,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dec_ttxt.c:689,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dec_ttxt.c:691,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dec_ttxt.c:697,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dec_ttxt.c:698,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:700,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:703,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/filters/dec_ttxt.c:704,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:708,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:709,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:711,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:712,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/filters/dec_ttxt.c:713,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:714,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/filters/dec_ttxt.c:715,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:717,1
    - Dst: gf_node_clone
      Src: /src/gpac/src/filters/dec_ttxt.c:738,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/filters/dec_ttxt.c:747,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/filters/dec_ttxt.c:748,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:749,1
    - Dst: ttd_add_item
      Src: /src/gpac/src/filters/dec_ttxt.c:750,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/filters/dec_ttxt.c:752,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_ttxt.c:754,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_ttxt.c:757,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_ttxt.c:758,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_ttxt.c:760,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/filters/dec_ttxt.c:763,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:769,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:770,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_ttxt.c:772,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_ttxt.c:773,1
    - Dst: ttd_add_line
      Src: /src/gpac/src/filters/dec_ttxt.c:777,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/filters/dec_ttxt.c:782,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 153
    argCount: 6
    argNames:
    - ctx
    - tsd
    - form
    - utf16_txt
    - utf_alloc_size
    - tc
    argTypes:
    - GF_TTXTDec*
    - GF_TextSampleDescriptor*
    - M_Form*
    - u16*
    - u32
    - TTDTextChunk*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 784
      start: 604
    functionDepth: 10
    functionLinenumber: 604
    functionLinenumberEnd: 784
    functionName: ttd_new_text_chunk
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_clone
    - strcpy
    - gf_node_unregister
    - strcat
    - gf_strdup
    - gf_utf8_wcstombs
    - memcpy
    - ttd_find_font
    - sprintf
    - gf_list_add
    - stricmp
    - gf_node_list_add_child
    - gf_sg_vrml_mf_reset
    - ttd_create_node
    - gf_sg_vrml_mf_append
    - ttd_add_item
    - gf_malloc
    - strlen
    - INT2FIX
    - ttd_add_line
    - gf_node_register
    linkageType: ''
    returnType: void
    signature: void ttd_new_text_chunk(GF_TTXTDec *ctx, GF_TextSampleDescriptor *tsd,
      M_Form *form, u16 *utf16_txt, u32 utf_alloc_size, TTDTextChunk *tc)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dec_ttxt.c:809,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_ttxt.c:814,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_ttxt.c:815,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dec_ttxt.c:819,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_ttxt.c:826,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_ttxt.c:827,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dec_ttxt.c:831,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 54
    argCount: 4
    argNames:
    - txt
    - nb_chars
    - chunks
    - mod
    argTypes:
    - GF_TextSample*
    - u32
    - GF_List*
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 851
      start: 788
    functionDepth: 2
    functionLinenumber: 788
    functionLinenumberEnd: 851
    functionName: ttd_split_chunks
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - memcpy
    - gf_list_enum
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void ttd_split_chunks(GF_TextSample *txt, u32 nb_chars, GF_List *chunks,
      GF_Box *mod)
  - BBCount: 59
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_ttxt.c:871,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/filters/dec_ttxt.c:872,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/filters/dec_ttxt.c:873,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/filters/dec_ttxt.c:875,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/filters/dec_ttxt.c:876,1
    - Dst: gf_sg_activate_routes
      Src: /src/gpac/src/filters/dec_ttxt.c:878,1
    - Dst: ttd_reset_display
      Src: /src/gpac/src/filters/dec_ttxt.c:880,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_ttxt.c:885,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dec_ttxt.c:888,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/dec_ttxt.c:908,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/dec_ttxt.c:909,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/dec_ttxt.c:910,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/dec_ttxt.c:911,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/filters/dec_ttxt.c:912,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/dec_ttxt.c:933,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/dec_ttxt.c:934,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/filters/dec_ttxt.c:941,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/filters/dec_ttxt.c:945,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/filters/dec_ttxt.c:952,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/filters/dec_ttxt.c:956,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:959,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/dec_ttxt.c:960,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/dec_ttxt.c:961,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/dec_ttxt.c:973,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/dec_ttxt.c:979,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/filters/dec_ttxt.c:981,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/filters/dec_ttxt.c:985,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/filters/dec_ttxt.c:986,1
    - Dst: ttd_create_node
      Src: /src/gpac/src/filters/dec_ttxt.c:1003,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/filters/dec_ttxt.c:1004,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:1005,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/filters/dec_ttxt.c:1006,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:1007,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/dec_ttxt.c:1008,1
    - Dst: gf_divfix
      Src: /src/gpac/src/filters/dec_ttxt.c:1014,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/dec_ttxt.c:1014,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/dec_ttxt.c:1014,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/filters/dec_ttxt.c:1022,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttxt.c:1023,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_ttxt.c:1027,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_ttxt.c:1029,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/filters/dec_ttxt.c:1035,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_ttxt.c:1039,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_ttxt.c:1042,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_ttxt.c:1044,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_ttxt.c:1047,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_ttxt.c:1057,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_ttxt.c:1059,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_ttxt.c:1063,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_ttxt.c:1066,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_ttxt.c:1068,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_ttxt.c:1073,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_ttxt.c:1079,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_ttxt.c:1081,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_ttxt.c:1085,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dec_ttxt.c:1091,1
    - Dst: ttd_split_chunks
      Src: /src/gpac/src/filters/dec_ttxt.c:1092,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_ttxt.c:1095,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_ttxt.c:1096,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dec_ttxt.c:1097,1
    - Dst: ttd_new_text_chunk
      Src: /src/gpac/src/filters/dec_ttxt.c:1098,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_ttxt.c:1099,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_ttxt.c:1101,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_ttxt.c:1102,1
    - Dst: ttd_add_line
      Src: /src/gpac/src/filters/dec_ttxt.c:1105,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1122,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1124,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1128,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:1129,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1131,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1134,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1137,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1140,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_ttxt.c:1147,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/filters/dec_ttxt.c:1150,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1152,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:1156,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:1159,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:1162,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:1168,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:1171,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:1174,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1178,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1181,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1184,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1189,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:1190,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1191,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1194,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1197,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/filters/dec_ttxt.c:1201,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1203,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1206,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1209,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:1213,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:1216,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:1219,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:1225,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:1228,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_ttxt.c:1231,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1235,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1237,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/filters/dec_ttxt.c:1239,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/filters/dec_ttxt.c:1243,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/filters/dec_ttxt.c:1244,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/filters/dec_ttxt.c:1245,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_ttxt.c:1247,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/filters/dec_ttxt.c:1249,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/filters/dec_ttxt.c:1250,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/filters/dec_ttxt.c:1255,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/filters/dec_ttxt.c:1260,1
    CyclomaticComplexity: 81
    EdgeCount: 81
    ICount: 342
    argCount: 5
    argNames:
    - ctx
    - txt
    - sample_desc_index
    - is_utf_16
    - sample_duration
    argTypes:
    - GF_TTXTDec*
    - GF_TextSample*
    - u32
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1261
      start: 854
    functionDepth: 12
    functionLinenumber: 854
    functionLinenumberEnd: 1261
    functionName: ttd_apply_sample
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - ttd_new_text_chunk
    - GF_SAFEALLOC
    - gf_list_count
    - gf_list_get
    - gf_list_new
    - gf_strdup
    - memcpy
    - gf_utf8_mbstowcs
    - gf_list_add
    - gf_node_list_add_child
    - ttd_create_node
    - gf_sg_vrml_mf_append
    - GF_LOG
    - gf_divfix
    - ttd_reset_display
    - ttd_split_chunks
    - gf_node_get_scene_time
    - gf_node_list_get_count
    - gf_list_enum
    - gf_node_changed
    - gf_malloc
    - gf_list_del
    - gf_sg_activate_routes
    - INT2FIX
    - gf_node_dirty_set
    - ttd_add_line
    - gf_node_register
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void ttd_apply_sample(GF_TTXTDec *ctx, GF_TextSample *txt, u32 sample_desc_index,
      Bool is_utf_16, u32 sample_duration)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ttd_reset_display
      Src: /src/gpac/src/filters/dec_ttxt.c:1269,1
    - Dst: ttd_update_size_info
      Src: /src/gpac/src/filters/dec_ttxt.c:1270,1
    - Dst: gf_scene_register_extra_graph
      Src: /src/gpac/src/filters/dec_ttxt.c:1271,1
    - Dst: gf_scene_register_extra_graph
      Src: /src/gpac/src/filters/dec_ttxt.c:1276,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_TTXTDec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1280
      start: 1263
    functionDepth: 15
    functionLinenumber: 1263
    functionLinenumberEnd: 1280
    functionName: ttd_toggle_display
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 1
    functionsReached:
    - ttd_update_size_info
    - ttd_reset_display
    - gf_scene_register_extra_graph
    linkageType: ''
    returnType: void
    signature: void ttd_toggle_display(GF_TTXTDec *ctx)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_ttxt.c:1284,1
    - Dst: ttd_toggle_display
      Src: /src/gpac/src/filters/dec_ttxt.c:1293,1
    - Dst: ttd_reset_scene
      Src: /src/gpac/src/filters/dec_ttxt.c:1294,1
    - Dst: ttd_toggle_display
      Src: /src/gpac/src/filters/dec_ttxt.c:1299,1
    - Dst: ttd_toggle_display
      Src: /src/gpac/src/filters/dec_ttxt.c:1303,1
    - Dst: ttd_setup_scene
      Src: /src/gpac/src/filters/dec_ttxt.c:1323,1
    - Dst: ttd_toggle_display
      Src: /src/gpac/src/filters/dec_ttxt.c:1324,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 43
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1328
      start: 1282
    functionDepth: 16
    functionLinenumber: 1282
    functionLinenumberEnd: 1328
    functionName: ttd_process_event
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached:
    - ttd_setup_scene
    - ttd_toggle_display
    - ttd_reset_scene
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool ttd_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/dec_ttxt.c:1333,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dec_ttxt.c:1335,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_ttxt.c:1340,1
    - Dst: ttd_apply_sample
      Src: /src/gpac/src/filters/dec_ttxt.c:1347,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 4
    argNames:
    - ctx
    - pck_data
    - pck_size
    - sample_duration
    argTypes:
    - GF_TTXTDec*
    - char*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1349
      start: 1330
    functionDepth: 13
    functionLinenumber: 1330
    functionLinenumberEnd: 1349
    functionName: ttd_render_simple_text
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached:
    - memset
    - memcpy
    - ttd_apply_sample
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ttd_render_simple_text(GF_TTXTDec *ctx, const char *pck_data,
      u32 pck_size, u32 sample_duration)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_ttxt.c:1356,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_ttxt.c:1360,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_ttxt.c:1366,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_ttxt.c:1368,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_ttxt.c:1370,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/filters/dec_ttxt.c:1371,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/filters/dec_ttxt.c:1372,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/filters/dec_ttxt.c:1373,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/filters/dec_ttxt.c:1374,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_ttxt.c:1390,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/dec_ttxt.c:1394,1
    - Dst: gf_timestamp_to_clocktime
      Src: /src/gpac/src/filters/dec_ttxt.c:1409,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dec_ttxt.c:1412,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/dec_ttxt.c:1412,1
    - Dst: gf_sc_check_sys_frame
      Src: /src/gpac/src/filters/dec_ttxt.c:1414,1
    - Dst: ttd_render_simple_text
      Src: /src/gpac/src/filters/dec_ttxt.c:1418,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_ttxt.c:1423,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/dec_ttxt.c:1426,1
    - Dst: ttd_render_simple_text
      Src: /src/gpac/src/filters/dec_ttxt.c:1427,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_ttxt.c:1428,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dec_ttxt.c:1432,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dec_ttxt.c:1434,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_ttxt.c:1440,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_ttxt.c:1441,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_ttxt.c:1442,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dec_ttxt.c:1443,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_ttxt.c:1449,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/filters/dec_ttxt.c:1451,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/dec_ttxt.c:1455,1
    - Dst: gf_isom_parse_text_sample
      Src: /src/gpac/src/filters/dec_ttxt.c:1458,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_ttxt.c:1460,1
    - Dst: ttd_apply_sample
      Src: /src/gpac/src/filters/dec_ttxt.c:1462,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/filters/dec_ttxt.c:1463,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_ttxt.c:1470,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dec_ttxt.c:1470,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_ttxt.c:1474,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 93
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1476
      start: 1350
    functionDepth: 14
    functionLinenumber: 1350
    functionLinenumberEnd: 1476
    functionName: ttd_process
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached:
    - gf_timestamp_rescale_signed
    - gf_sc_check_sys_frame
    - gf_bs_read_u16
    - gf_bs_available
    - gf_filter_pid_get_packet
    - gf_bs_read_u24
    - gf_assert
    - ttd_render_simple_text
    - gf_filter_pck_get_cts
    - gf_isom_parse_text_sample
    - gf_filter_pck_get_duration
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_node_get_scene_time
    - gf_bs_read_u8
    - gf_filter_pid_is_eos
    - gf_node_changed
    - gf_bs_reassign_buffer
    - gf_timestamp_rescale
    - ttd_apply_sample
    - gf_timestamp_to_clocktime
    - gf_isom_delete_text_sample
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ttd_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_ttxt.c:1480,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_ttxt.c:1481,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1483
      start: 1478
    functionDepth: 1
    functionLinenumber: 1478
    functionLinenumberEnd: 1483
    functionName: ttd_initialize
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ttd_initialize(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_ttxt.c:1487,1
    - Dst: ttd_reset_scene
      Src: /src/gpac/src/filters/dec_ttxt.c:1489,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/dec_ttxt.c:1491,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_ttxt.c:1492,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_ttxt.c:1494,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1495
      start: 1485
    functionDepth: 4
    functionLinenumber: 1485
    functionLinenumberEnd: 1495
    functionName: ttd_finalize
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_desc_del
    - gf_bs_del
    - ttd_reset_scene
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ttd_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1499
      start: 1498
    functionDepth: 0
    functionLinenumber: 1498
    functionLinenumberEnd: 1499
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1553
      start: 1546
    functionDepth: 0
    functionLinenumber: 1546
    functionLinenumberEnd: 1553
    functionName: ttxtdec_register
    functionSourceFile: /src/gpac/src/filters/dec_ttxt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ttxtdec_register(GF_FilterSession *session)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filters/sei_load.c:69,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/sei_load.c:70,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/sei_load.c:71,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/sei_load.c:71,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/sei_load.c:72,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/sei_load.c:76,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/sei_load.c:77,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/sei_load.c:78,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/sei_load.c:78,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/sei_load.c:79,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/sei_load.c:83,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/sei_load.c:84,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/sei_load.c:85,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/sei_load.c:85,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/sei_load.c:86,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/sei_load.c:90,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/sei_load.c:91,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/sei_load.c:92,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/sei_load.c:93,1
    - Dst: gf_av1_init_state
      Src: /src/gpac/src/filters/sei_load.c:95,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/sei_load.c:98,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/sei_load.c:99,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/sei_load.c:100,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/sei_load.c:101,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/sei_load.c:101,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 103
    argCount: 2
    argNames:
    - sei
    - type
    argTypes:
    - GF_SEILoader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 55
    functionDepth: 2
    functionLinenumber: 55
    functionLinenumberEnd: 105
    functionName: seiloader_set_type
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_av1_reset_state
    - gf_av1_init_state
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err seiloader_set_type(GF_SEILoader *sei, u32 type)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/sei_load.c:109,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/sei_load.c:111,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/sei_load.c:112,1
    - Dst: gf_avc_parse_nalu
      Src: /src/gpac/src/filters/sei_load.c:114,1
    - Dst: gf_hevc_parse_nalu_bs
      Src: /src/gpac/src/filters/sei_load.c:117,1
    - Dst: gf_vvc_parse_nalu_bs
      Src: /src/gpac/src/filters/sei_load.c:121,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - sei
    - params
    argTypes:
    - GF_SEILoader*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 107
    functionDepth: 8
    functionLinenumber: 107
    functionLinenumberEnd: 124
    functionName: parse_param_list
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached:
    - gf_vvc_parse_nalu_bs
    - gf_list_get
    - gf_hevc_parse_nalu_bs
    - gf_list_count
    - gf_avc_parse_nalu
    - gf_bs_reassign_buffer
    linkageType: ''
    returnType: void
    signature: void parse_param_list(GF_SEILoader *sei, GF_List *params)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/sei_load.c:130,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/sei_load.c:134,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/sei_load.c:136,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/sei_load.c:146,1
    - Dst: seiloader_set_type
      Src: /src/gpac/src/filters/sei_load.c:148,1
    - Dst: parse_param_list
      Src: /src/gpac/src/filters/sei_load.c:150,1
    - Dst: parse_param_list
      Src: /src/gpac/src/filters/sei_load.c:151,1
    - Dst: parse_param_list
      Src: /src/gpac/src/filters/sei_load.c:152,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/sei_load.c:153,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/sei_load.c:160,1
    - Dst: seiloader_set_type
      Src: /src/gpac/src/filters/sei_load.c:162,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/sei_load.c:164,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/sei_load.c:166,1
    - Dst: parse_param_list
      Src: /src/gpac/src/filters/sei_load.c:167,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/sei_load.c:169,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/sei_load.c:176,1
    - Dst: seiloader_set_type
      Src: /src/gpac/src/filters/sei_load.c:178,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/sei_load.c:180,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/sei_load.c:182,1
    - Dst: parse_param_list
      Src: /src/gpac/src/filters/sei_load.c:183,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/sei_load.c:185,1
    - Dst: gf_odf_av1_cfg_read
      Src: /src/gpac/src/filters/sei_load.c:192,1
    - Dst: seiloader_set_type
      Src: /src/gpac/src/filters/sei_load.c:194,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filters/sei_load.c:198,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 63
    argCount: 2
    argNames:
    - sei
    - pid
    argTypes:
    - GF_SEILoader*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 126
    functionDepth: 9
    functionLinenumber: 126
    functionLinenumberEnd: 206
    functionName: gf_sei_init_from_pid
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached:
    - gf_odf_hevc_cfg_read
    - gf_odf_hevc_cfg_del
    - gf_list_get
    - gf_odf_vvc_cfg_del
    - gf_odf_av1_cfg_read
    - gf_filter_pid_get_property
    - gf_odf_avc_cfg_del
    - parse_param_list
    - gf_list_count
    - gf_odf_vvc_cfg_read
    - gf_odf_av1_cfg_del
    - seiloader_set_type
    - gf_odf_avc_cfg_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sei_init_from_pid(GF_SEILoader *sei, GF_FilterPid *pid)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - sei
    argTypes:
    - GF_SEILoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 215
    functionName: get_sei_info
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE *get_sei_info(GF_SEILoader *sei)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: get_sei_info
      Src: /src/gpac/src/filters/sei_load.c:219,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/sei_load.c:221,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/sei_load.c:226,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/sei_load.c:226,1
    - Dst: gf_av1_format_mdcv_to_mpeg
      Src: /src/gpac/src/filters/sei_load.c:233,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/sei_load.c:234,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/sei_load.c:234,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/sei_load.c:236,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/sei_load.c:236,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/sei_load.c:252,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/sei_load.c:252,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/sei_load.c:259,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/sei_load.c:259,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 3
    argNames:
    - ctx
    - pck
    - skip_check
    argTypes:
    - GF_SEILoader*
    - GF_FilterPacket*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 217
    functionDepth: 2
    functionLinenumber: 217
    functionLinenumberEnd: 262
    functionName: gf_sei_load_from_state_internal
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_property
    - PROP_BOOL
    - gf_filter_pck_set_property
    - get_sei_info
    - gf_av1_format_mdcv_to_mpeg
    - PROP_DATA
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sei_load_from_state_internal(GF_SEILoader *ctx, GF_FilterPacket
      *pck, Bool skip_check)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sei_load_from_state_internal
      Src: /src/gpac/src/filters/sei_load.c:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - GF_SEILoader*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 263
    functionDepth: 3
    functionLinenumber: 263
    functionLinenumberEnd: 266
    functionName: gf_sei_load_from_state
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached:
    - gf_sei_load_from_state_internal
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sei_load_from_state(GF_SEILoader *ctx, GF_FilterPacket *pck)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/sei_load.c:271,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/sei_load.c:287,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/filters/sei_load.c:291,1
    - Dst: gf_avc_reformat_sei
      Src: /src/gpac/src/filters/sei_load.c:295,1
    - Dst: gf_avc_parse_nalu
      Src: /src/gpac/src/filters/sei_load.c:299,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/filters/sei_load.c:304,1
    - Dst: gf_hevc_parse_sei
      Src: /src/gpac/src/filters/sei_load.c:309,1
    - Dst: gf_hevc_parse_nalu_bs
      Src: /src/gpac/src/filters/sei_load.c:311,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/filters/sei_load.c:317,1
    - Dst: gf_vvc_parse_sei
      Src: /src/gpac/src/filters/sei_load.c:322,1
    - Dst: gf_vvc_parse_nalu_bs
      Src: /src/gpac/src/filters/sei_load.c:323,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/sei_load.c:335,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/sei_load.c:337,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/filters/sei_load.c:341,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/sei_load.c:343,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/sei_load.c:345,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/filters/sei_load.c:346,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/sei_load.c:348,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/sei_load.c:350,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/sei_load.c:351,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/sei_load.c:355,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/sei_load.c:356,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/sei_load.c:357,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/filters/sei_load.c:360,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 78
    argCount: 3
    argNames:
    - sei
    - pck
    - needs_load
    argTypes:
    - GF_SEILoader*
    - GF_FilterPacket*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 268
    functionDepth: 8
    functionLinenumber: 268
    functionLinenumberEnd: 369
    functionName: gf_sei_load_from_packet_nalu
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached:
    - gf_bs_peek_bits
    - gf_vvc_parse_nalu_bs
    - gf_hevc_parse_nalu_bs
    - gf_bs_seek
    - gf_filter_pck_get_data
    - gf_vvc_parse_sei
    - gf_bs_get_position
    - gf_bs_read_int
    - gf_avc_parse_nalu
    - gf_bs_read_u8
    - gf_bs_available
    - gf_avc_reformat_sei
    - gf_hevc_parse_sei
    - gf_bs_reassign_buffer
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sei_load_from_packet_nalu(GF_SEILoader *sei, GF_FilterPacket
      *pck, Bool *needs_load)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/sei_load.c:374,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/sei_load.c:380,1
    - Dst: gf_av1_parse_obu
      Src: /src/gpac/src/filters/sei_load.c:383,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 3
    argNames:
    - sei
    - pck
    - needs_load
    argTypes:
    - GF_SEILoader*
    - GF_FilterPacket*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 371
    functionDepth: 10
    functionLinenumber: 371
    functionLinenumberEnd: 396
    functionName: gf_sei_load_from_packet_av1
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_data
    - gf_av1_parse_obu
    - gf_bs_reassign_buffer
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sei_load_from_packet_av1(GF_SEILoader *sei, GF_FilterPacket
      *pck, Bool *needs_load)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sei_load_from_packet_nalu
      Src: /src/gpac/src/filters/sei_load.c:406,1
    - Dst: gf_sei_load_from_packet_av1
      Src: /src/gpac/src/filters/sei_load.c:408,1
    - Dst: gf_sei_load_from_state_internal
      Src: /src/gpac/src/filters/sei_load.c:412,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - sei
    - pck
    argTypes:
    - GF_SEILoader*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 398
    functionDepth: 11
    functionLinenumber: 398
    functionLinenumberEnd: 414
    functionName: gf_sei_load_from_packet
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached:
    - gf_sei_load_from_state_internal
    - gf_sei_load_from_packet_nalu
    - gf_sei_load_from_packet_av1
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sei_load_from_packet(GF_SEILoader *sei, GF_FilterPacket *pck)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: seiloader_set_type
      Src: /src/gpac/src/filters/sei_load.c:419,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - sei
    - avc
    argTypes:
    - GF_SEILoader*
    - AVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 416
    functionDepth: 3
    functionLinenumber: 416
    functionLinenumberEnd: 423
    functionName: gf_sei_init_from_avc
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached:
    - seiloader_set_type
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sei_init_from_avc(GF_SEILoader *sei, AVCState *avc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: seiloader_set_type
      Src: /src/gpac/src/filters/sei_load.c:427,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - sei
    - hevc
    argTypes:
    - GF_SEILoader*
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 424
    functionDepth: 3
    functionLinenumber: 424
    functionLinenumberEnd: 431
    functionName: gf_sei_init_from_hevc
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached:
    - seiloader_set_type
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sei_init_from_hevc(GF_SEILoader *sei, HEVCState *hevc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: seiloader_set_type
      Src: /src/gpac/src/filters/sei_load.c:436,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - sei
    - vvc
    argTypes:
    - GF_SEILoader*
    - VVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 433
    functionDepth: 3
    functionLinenumber: 433
    functionLinenumberEnd: 440
    functionName: gf_sei_init_from_vvc
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached:
    - seiloader_set_type
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sei_init_from_vvc(GF_SEILoader *sei, VVCState *vvc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: seiloader_set_type
      Src: /src/gpac/src/filters/sei_load.c:444,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - sei
    - av1
    argTypes:
    - GF_SEILoader*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 441
    functionDepth: 3
    functionLinenumber: 441
    functionLinenumberEnd: 448
    functionName: gf_sei_init_from_av1
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached:
    - seiloader_set_type
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sei_init_from_av1(GF_SEILoader *sei, AV1State *av1)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/sei_load.c:454,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/sei_load.c:456,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/sei_load.c:458,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 450
    functionDepth: 1
    functionLinenumber: 450
    functionLinenumberEnd: 462
    functionName: gf_sei_loader_new
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_SEILoader
    signature: GF_SEILoader *gf_sei_loader_new()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: seiloader_set_type
      Src: /src/gpac/src/filters/sei_load.c:467,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/sei_load.c:468,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/sei_load.c:469,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - sei
    argTypes:
    - GF_SEILoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 464
    functionDepth: 3
    functionLinenumber: 464
    functionLinenumberEnd: 470
    functionName: gf_sei_loader_del
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached:
    - gf_free
    - seiloader_set_type
    linkageType: ''
    returnType: void
    signature: void gf_sei_loader_del(GF_SEILoader *sei)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/sei_load.c:485,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/sei_load.c:486,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/sei_load.c:487,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/sei_load.c:490,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/sei_load.c:491,1
    - Dst: gf_sei_loader_del
      Src: /src/gpac/src/filters/sei_load.c:492,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/sei_load.c:494,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/sei_load.c:498,1
    - Dst: gf_sei_loader_new
      Src: /src/gpac/src/filters/sei_load.c:499,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/sei_load.c:500,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/sei_load.c:501,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/sei_load.c:502,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/sei_load.c:504,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/sei_load.c:505,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/sei_load.c:505,1
    - Dst: gf_sei_init_from_pid
      Src: /src/gpac/src/filters/sei_load.c:506,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 483
    functionDepth: 10
    functionLinenumber: 483
    functionLinenumberEnd: 507
    functionName: seiload_configure_pid
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached:
    - PROP_BOOL
    - gf_filter_pid_copy_properties
    - gf_filter_pid_remove
    - gf_sei_init_from_pid
    - gf_sei_loader_del
    - gf_list_del_item
    - gf_sei_loader_new
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_new
    - gf_list_add
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err seiload_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/sei_load.c:510,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/sei_load.c:512,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/sei_load.c:513,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/sei_load.c:514,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/sei_load.c:516,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/sei_load.c:518,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/sei_load.c:519,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/sei_load.c:525,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/sei_load.c:527,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/sei_load.c:529,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/sei_load.c:530,1
    - Dst: gf_sei_load_from_packet
      Src: /src/gpac/src/filters/sei_load.c:531,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/sei_load.c:532,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/sei_load.c:534,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 539
      start: 508
    functionDepth: 12
    functionLinenumber: 508
    functionLinenumberEnd: 539
    functionName: seiload_process
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_property
    - gf_filter_get_ipid_count
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_ref
    - gf_filter_pck_forward
    - gf_sei_load_from_packet
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_filter_get_ipid
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_udta
    - gf_filter_pid_get_packet
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err seiload_process(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/sei_load.c:544,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - filter
    - opid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 547
      start: 542
    functionDepth: 0
    functionLinenumber: 542
    functionLinenumberEnd: 547
    functionName: seiload_reconfigure_output
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_caps_query
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err seiload_reconfigure_output(GF_Filter *filter, GF_FilterPid *opid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/sei_load.c:551,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/sei_load.c:552,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 554
      start: 549
    functionDepth: 1
    functionLinenumber: 549
    functionLinenumberEnd: 554
    functionName: seiload_initialize
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err seiload_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/sei_load.c:557,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/sei_load.c:558,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/sei_load.c:559,1
    - Dst: gf_sei_loader_del
      Src: /src/gpac/src/filters/sei_load.c:560,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/sei_load.c:562,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 555
    functionDepth: 4
    functionLinenumber: 555
    functionLinenumberEnd: 563
    functionName: seiload_finalize
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_back
    - gf_list_count
    - gf_sei_loader_del
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void seiload_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 565
    functionDepth: 0
    functionLinenumber: 565
    functionLinenumberEnd: 566
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 603
    functionDepth: 0
    functionLinenumber: 603
    functionLinenumberEnd: 606
    functionName: seiload_register
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *seiload_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 611
      start: 608
    functionDepth: 0
    functionLinenumber: 608
    functionLinenumberEnd: 611
    functionName: seiload_register
    functionSourceFile: /src/gpac/src/filters/sei_load.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *seiload_register(GF_FilterSession *session)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_ac3.c:84,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/reframe_ac3.c:89,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/reframe_ac3.c:94,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_ac3.c:98,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_ac3.c:103,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_ac3.c:106,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_ac3.c:107,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_ac3.c:109,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_ac3.c:110,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_ac3.c:110,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_ac3.c:118,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_ac3.c:119,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac3.c:120,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_ac3.c:123,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac3.c:125,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_ac3.c:125,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 42
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 130
    functionName: ac3dmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/reframe_ac3.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - strstr
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ac3dmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_ac3.c:147,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_ac3.c:148,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/reframe_ac3.c:155,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/reframe_ac3.c:157,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/filters/reframe_ac3.c:164,1
    - Dst: GF_AC3DmxCtx*::ac3_parser_bs
      Src: /src/gpac/src/filters/reframe_ac3.c:167,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_ac3.c:181,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_ac3.c:182,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_ac3.c:189,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_ac3.c:191,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_ac3.c:192,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/reframe_ac3.c:193,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac3.c:199,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_ac3.c:199,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_ac3.c:208,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 64
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_AC3DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 132
    functionDepth: 7
    functionLinenumber: 132
    functionLinenumberEnd: 210
    functionName: ac3dmx_check_dur
    functionSourceFile: /src/gpac/src/filters/reframe_ac3.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_filter_pid_get_property
    - GF_AC3DmxCtx*::ac3_parser_bs
    - gf_fileio_is_main_thread
    - gf_bs_get_position
    - gf_bs_del
    - strncmp
    - gf_fopen_ex
    - PROP_FRAC64
    - gf_bs_from_file
    - gf_filter_pid_set_property
    - gf_bs_skip_bytes
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void ac3dmx_check_dur(GF_Filter *filter, GF_AC3DmxCtx *ctx)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_ac3.c:217,1
    - Dst: ac3dmx_check_dur
      Src: /src/gpac/src/filters/reframe_ac3.c:218,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_ac3.c:224,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_ac3.c:225,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac3.c:227,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_ac3.c:227,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac3.c:229,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_ac3.c:229,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac3.c:230,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_ac3.c:230,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac3.c:233,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_ac3.c:233,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac3.c:235,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_ac3.c:235,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_ac3.c:242,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac3.c:247,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_ac3.c:247,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac3.c:248,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_ac3.c:248,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac3.c:249,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_ac3.c:249,1
    - Dst: gf_ac3_get_channel_layout
      Src: /src/gpac/src/filters/reframe_ac3.c:250,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac3.c:251,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/reframe_ac3.c:251,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac3.c:252,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_ac3.c:252,1
    - Dst: gf_odf_ac3_cfg_write
      Src: /src/gpac/src/filters/reframe_ac3.c:255,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac3.c:256,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/reframe_ac3.c:256,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac3.c:259,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_ac3.c:259,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac3.c:263,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_ac3.c:263,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 39
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_AC3DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 212
    functionDepth: 8
    functionLinenumber: 212
    functionLinenumberEnd: 265
    functionName: ac3dmx_check_pid
    functionSourceFile: /src/gpac/src/filters/reframe_ac3.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - PROP_FRAC64
    - ac3dmx_check_dur
    - PROP_DATA_NO_COPY
    - gf_ac3_get_channel_layout
    - PROP_BOOL
    - gf_odf_ac3_cfg_write
    - gf_filter_pid_new
    - PROP_LONGUINT
    - gf_filter_pid_set_property
    - gf_timestamp_rescale
    linkageType: ''
    returnType: void
    signature: void ac3dmx_check_pid(GF_Filter *filter, GF_AC3DmxCtx *ctx)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_ac3.c:271,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_ac3.c:303,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_ac3.c:305,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 43
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 324
    functionName: ac3dmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_ac3.c
    functionUses: 0
    functionsReached:
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool ac3dmx_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_AC3DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 326
    functionDepth: 0
    functionLinenumber: 326
    functionLinenumberEnd: 336
    functionName: ac3dmx_update_cts
    functionSourceFile: /src/gpac/src/filters/reframe_ac3.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE ac3dmx_update_cts(GF_AC3DmxCtx *ctx)
  - BBCount: 47
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_ac3.c:340,1
    - Dst: ac3dmx_check_dur
      Src: /src/gpac/src/filters/reframe_ac3.c:352,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_ac3.c:357,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_ac3.c:359,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_ac3.c:362,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_ac3.c:363,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_ac3.c:374,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_ac3.c:376,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_ac3.c:382,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_ac3.c:387,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_ac3.c:400,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_ac3.c:402,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_ac3.c:408,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_ac3.c:429,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_ac3.c:431,1
    - Dst: GF_AC3DmxCtx*::ac3_parser_bs
      Src: /src/gpac/src/filters/reframe_ac3.c:438,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_ac3.c:440,1
    - Dst: ac3dmx_check_pid
      Src: /src/gpac/src/filters/reframe_ac3.c:452,1
    - Dst: ac3dmx_check_pid
      Src: /src/gpac/src/filters/reframe_ac3.c:456,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_ac3.c:464,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_ac3.c:485,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_ac3.c:488,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_ac3.c:489,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_ac3.c:490,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_ac3.c:491,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_ac3.c:493,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_ac3.c:493,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_ac3.c:495,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_ac3.c:496,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_ac3.c:497,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_ac3.c:500,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_ac3.c:503,1
    - Dst: ac3dmx_update_cts
      Src: /src/gpac/src/filters/reframe_ac3.c:505,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/src/filters/reframe_ac3.c:509,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_ac3.c:510,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_ac3.c:520,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_ac3.c:526,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_ac3.c:529,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_ac3.c:542,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_ac3.c:546,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_ac3.c:549,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 167
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 338
    functionDepth: 9
    functionLinenumber: 338
    functionLinenumberEnd: 552
    functionName: ac3dmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_ac3.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_filter_pck_ref_props
    - gf_filter_pid_get_packet
    - gf_realloc
    - gf_filter_pck_set_byte_offset
    - GF_AC3DmxCtx*::ac3_parser_bs
    - memcpy
    - ac3dmx_update_cts
    - gf_filter_pid_has_seen_eos
    - gf_filter_pck_get_cts
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - memmove
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_filter_pid_set_eos
    - gf_bs_get_position
    - ac3dmx_check_pid
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - gf_timestamp_rescale
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - gf_filter_pck_set_framing
    - ac3dmx_check_dur
    - gf_filter_pck_get_byte_offset
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ac3dmx_process(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_ac3.c:556,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_ac3.c:557,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_ac3.c:558,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_ac3.c:559,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_ac3.c:560,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 554
    functionDepth: 3
    functionLinenumber: 554
    functionLinenumberEnd: 561
    functionName: ac3dmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_ac3.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_del
    - gf_filter_pck_unref
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ac3dmx_finalize(GF_Filter *filter)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_ac3_parser
      Src: /src/gpac/src/filters/reframe_ac3.c:576,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_ac3.c:605,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_ac3.c:606,1
    - Dst: gf_eac3_parser_bs
      Src: /src/gpac/src/filters/reframe_ac3.c:608,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_ac3.c:613,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_ac3.c:618,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_ac3.c:619,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_ac3.c:623,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 64
    argCount: 3
    argNames:
    - _data
    - _size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 639
      start: 563
    functionDepth: 7
    functionLinenumber: 563
    functionLinenumberEnd: 639
    functionName: ac3dmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_ac3.c
    functionUses: 0
    functionsReached:
    - gf_eac3_parser_bs
    - gf_bs_new
    - gf_bs_get_position
    - gf_bs_del
    - gf_bs_available
    - gf_ac3_parser
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: char
    signature: char *ac3dmx_probe_data(const u8 *_data, u32 _size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 663
    functionDepth: 0
    functionLinenumber: 663
    functionLinenumberEnd: 664
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/reframe_ac3.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 690
      start: 687
    functionDepth: 0
    functionLinenumber: 687
    functionLinenumberEnd: 690
    functionName: rfac3_register
    functionSourceFile: /src/gpac/src/filters/reframe_ac3.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfac3_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 695
      start: 692
    functionDepth: 0
    functionLinenumber: 692
    functionLinenumberEnd: 695
    functionName: rfac3_register
    functionSourceFile: /src/gpac/src/filters/reframe_ac3.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfac3_register(GF_FilterSession *session)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_pipe.c:96,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_pipe.c:109,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_pipe.c:109,1
    - Dst: _setmode
      Src: /src/gpac/src/filters/in_pipe.c:114,1
    - Dst: _fileno
      Src: /src/gpac/src/filters/in_pipe.c:114,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_pipe.c:117,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_pipe.c:117,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_pipe.c:118,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_pipe.c:123,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_pipe.c:125,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_pipe.c:129,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_pipe.c:130,1
    - Dst: MIN
      Src: /src/gpac/src/filters/in_pipe.c:132,1
    - Dst: gf_filter_set_blocking
      Src: /src/gpac/src/filters/in_pipe.c:140,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_pipe.c:145,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/in_pipe.c:146,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/in_pipe.c:149,1
    - Dst: strcat
      Src: /src/gpac/src/filters/in_pipe.c:150,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_pipe.c:152,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_pipe.c:153,1
    - Dst: WaitNamedPipeA
      Src: /src/gpac/src/filters/in_pipe.c:160,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:162,1
    - Dst: GetLastError
      Src: /src/gpac/src/filters/in_pipe.c:162,1
    - Dst: CreateEvent
      Src: /src/gpac/src/filters/in_pipe.c:172,1
    - Dst: CreateNamedPipe
      Src: /src/gpac/src/filters/in_pipe.c:179,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:182,1
    - Dst: GetLastError
      Src: /src/gpac/src/filters/in_pipe.c:182,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:187,1
    - Dst: ConnectNamedPipe
      Src: /src/gpac/src/filters/in_pipe.c:189,1
    - Dst: GetLastError
      Src: /src/gpac/src/filters/in_pipe.c:189,1
    - Dst: GetLastError
      Src: /src/gpac/src/filters/in_pipe.c:189,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:190,1
    - Dst: GetLastError
      Src: /src/gpac/src/filters/in_pipe.c:190,1
    - Dst: CloseHandle
      Src: /src/gpac/src/filters/in_pipe.c:192,1
    - Dst: CreateFile
      Src: /src/gpac/src/filters/in_pipe.c:200,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:202,1
    - Dst: GetLastError
      Src: /src/gpac/src/filters/in_pipe.c:202,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/in_pipe.c:210,1
    - Dst: mknod
      Src: /src/gpac/src/filters/in_pipe.c:213,1
    - Dst: mkfifo
      Src: /src/gpac/src/filters/in_pipe.c:215,1
    - Dst: open
      Src: /src/gpac/src/filters/in_pipe.c:220,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:223,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/filters/in_pipe.c:223,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_pipe.c:234,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:238,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/in_pipe.c:247,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/in_pipe.c:249,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/in_pipe.c:252,1
    - Dst: pipein_process_event
      Src: /src/gpac/src/filters/in_pipe.c:253,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 130
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 93
    functionDepth: 4
    functionLinenumber: 93
    functionLinenumberEnd: 257
    functionName: pipein_initialize
    functionSourceFile: /src/gpac/src/filters/in_pipe.c
    functionUses: 0
    functionsReached:
    - GetLastError
    - gf_file_exists
    - _fileno
    - strcpy
    - strchr
    - gf_filter_post_process_task
    - gf_sys_is_cov_mode
    - CreateEvent
    - strcat
    - gf_filter_set_blocking
    - pipein_process_event
    - _setmode
    - open
    - strncmp
    - mknod
    - gf_filter_get_udta
    - ConnectNamedPipe
    - GF_LOG
    - strstr
    - MIN
    - mkfifo
    - strnicmp
    - gf_filter_setup_failure
    - strlen
    - gf_malloc
    - CreateFile
    - WaitNamedPipeA
    - CreateNamedPipe
    - strcmp
    - gf_errno_str
    - CloseHandle
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pipein_initialize(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_pipe.c:262,1
    - Dst: CloseHandle
      Src: /src/gpac/src/filters/in_pipe.c:266,1
    - Dst: close
      Src: /src/gpac/src/filters/in_pipe.c:268,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/filters/in_pipe.c:271,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_pipe.c:273,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 260
    functionDepth: 3
    functionLinenumber: 260
    functionLinenumberEnd: 275
    functionName: pipein_finalize
    functionSourceFile: /src/gpac/src/filters/in_pipe.c
    functionUses: 0
    functionsReached:
    - gf_free
    - close
    - gf_file_delete
    - CloseHandle
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void pipein_finalize(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_pipe.c:279,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_pipe.c:280,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_pipe.c:281,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_pipe.c:281,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - url
    - mime_type
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 284
    functionName: pipein_probe_url
    functionSourceFile: /src/gpac/src/filters/in_pipe.c
    functionUses: 0
    functionsReached:
    - strnicmp
    - strcmp
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore pipein_probe_url(const char *url, const char *mime_type)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_pipe.c:291,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_pipe.c:301,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:304,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/in_pipe.c:307,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:309,1
    - Dst: pipein_initialize
      Src: /src/gpac/src/filters/in_pipe.c:311,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/in_pipe.c:312,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 286
    functionDepth: 5
    functionLinenumber: 286
    functionLinenumberEnd: 318
    functionName: pipein_process_event
    functionSourceFile: /src/gpac/src/filters/in_pipe.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_fatal_assert
    - pipein_initialize
    - gf_filter_post_process_task
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool pipein_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_pipe.c:326,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/in_pipe.c:328,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/in_pipe.c:332,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - filter
    - pid
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 324
    functionDepth: 1
    functionLinenumber: 324
    functionLinenumberEnd: 333
    functionName: pipein_pck_destructor
    functionSourceFile: /src/gpac/src/filters/in_pipe.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_data
    - gf_filter_post_process_task
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void pipein_pck_destructor(GF_Filter *filter, GF_FilterPid *pid, GF_FilterPacket
      *pck)
  - BBCount: 66
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_pipe.c:341,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/in_pipe.c:350,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_pipe.c:351,1
    - Dst: memmove
      Src: /src/gpac/src/filters/in_pipe.c:358,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_pipe.c:369,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:373,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_pipe.c:375,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_pipe.c:377,1
    - Dst: feof
      Src: /src/gpac/src/filters/in_pipe.c:389,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_pipe.c:391,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/in_pipe.c:394,1
    - Dst: fread
      Src: /src/gpac/src/filters/in_pipe.c:398,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_pipe.c:401,1
    - Dst: WaitForMultipleObjects
      Src: /src/gpac/src/filters/in_pipe.c:411,1
    - Dst: ResetEvent
      Src: /src/gpac/src/filters/in_pipe.c:412,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:414,1
    - Dst: GetOverlappedResult
      Src: /src/gpac/src/filters/in_pipe.c:417,1
    - Dst: GetLastError
      Src: /src/gpac/src/filters/in_pipe.c:418,1
    - Dst: CloseHandle
      Src: /src/gpac/src/filters/in_pipe.c:422,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:425,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_pipe.c:426,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:429,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/in_pipe.c:431,1
    - Dst: pipein_initialize
      Src: /src/gpac/src/filters/in_pipe.c:434,1
    - Dst: ReadFile
      Src: /src/gpac/src/filters/in_pipe.c:438,1
    - Dst: GetLastError
      Src: /src/gpac/src/filters/in_pipe.c:442,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:448,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:452,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_pipe.c:453,1
    - Dst: CloseHandle
      Src: /src/gpac/src/filters/in_pipe.c:454,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_pipe.c:464,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:468,1
    - Dst: CloseHandle
      Src: /src/gpac/src/filters/in_pipe.c:469,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/in_pipe.c:472,1
    - Dst: pipein_initialize
      Src: /src/gpac/src/filters/in_pipe.c:475,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_pipe.c:477,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_pipe.c:482,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_pipe.c:484,1
    - Dst: read
      Src: /src/gpac/src/filters/in_pipe.c:489,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:500,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/filters/in_pipe.c:500,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:508,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:513,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_pipe.c:514,1
    - Dst: close
      Src: /src/gpac/src/filters/in_pipe.c:515,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/in_pipe.c:525,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/in_pipe.c:527,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_pipe.c:528,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/in_pipe.c:530,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_pipe.c:535,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_pipe.c:536,1
    - Dst: memchr
      Src: /src/gpac/src/filters/in_pipe.c:563,1
    - Dst: MIN
      Src: /src/gpac/src/filters/in_pipe.c:568,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/in_pipe.c:569,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/in_pipe.c:579,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:584,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/in_pipe.c:587,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:592,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/in_pipe.c:595,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:601,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/in_pipe.c:611,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_pipe.c:614,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_pipe.c:616,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:623,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/in_pipe.c:625,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:627,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/in_pipe.c:627,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_pipe.c:630,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/in_pipe.c:630,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_pipe.c:631,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_pipe.c:631,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/in_pipe.c:633,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:636,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/in_pipe.c:637,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/in_pipe.c:638,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_pipe.c:642,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/in_pipe.c:646,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_pipe.c:649,1
    CyclomaticComplexity: 89
    EdgeCount: 89
    ICount: 278
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 653
      start: 335
    functionDepth: 5
    functionLinenumber: 335
    functionLinenumberEnd: 653
    functionName: pipein_process
    functionSourceFile: /src/gpac/src/filters/in_pipe.c
    functionUses: 0
    functionsReached:
    - GetLastError
    - ReadFile
    - memcmp
    - read
    - gf_filter_pid_raw_new
    - fread
    - gf_sys_clock
    - gf_assert
    - ResetEvent
    - close
    - pipein_initialize
    - memchr
    - PROP_BOOL
    - gf_filter_ask_rt_reschedule
    - WaitForMultipleObjects
    - feof
    - gf_filter_get_udta
    - memmove
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_filter_pid_would_block
    - gf_filter_pid_set_eos
    - MIN
    - gf_error_to_string
    - gf_filter_setup_failure
    - gf_filter_pck_set_sap
    - gf_filter_pid_set_property
    - gf_filter_pck_new_shared
    - PROP_UINT
    - gf_filter_pid_send_flush
    - gf_filter_pck_set_framing
    - gf_errno_str
    - CloseHandle
    - GetOverlappedResult
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pipein_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 657
    functionDepth: 0
    functionLinenumber: 657
    functionLinenumberEnd: 658
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/in_pipe.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/in_pipe.c:742,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/in_pipe.c:743,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 746
      start: 740
    functionDepth: 6
    functionLinenumber: 740
    functionLinenumberEnd: 746
    functionName: pin_register
    functionSourceFile: /src/gpac/src/filters/in_pipe.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    - gf_opts_set_key
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *pin_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 748
    functionDepth: 0
    functionLinenumber: 748
    functionLinenumberEnd: 751
    functionName: pin_register
    functionSourceFile: /src/gpac/src/filters/in_pipe.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *pin_register(GF_FilterSession *session)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/ff_common.c:105,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_common.c:107,1
    - Dst: gf_itags_get_name
      Src: /src/gpac/src/filters/ff_common.c:110,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/ff_common.c:112,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_common.c:119,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/ff_common.c:125,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_common.c:128,1
    - Dst: strstr
      Src: /src/gpac/src/filters/ff_common.c:129,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_common.c:130,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filters/ff_common.c:137,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_common.c:140,1
    - Dst: gf_props_dump_val
      Src: /src/gpac/src/filters/ff_common.c:141,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_common.c:142,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 43
    argCount: 2
    argNames:
    - pid
    - metadata
    argTypes:
    - GF_FilterPid*
    - AVDictionary**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 144
    functionName: ffmpeg_tags_from_gpac
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 0
    functionsReached:
    - gf_itags_get_name
    - av_dict_set
    - gf_filter_pid_get_info
    - gf_filter_pid_get_property_str
    - gf_filter_pid_get_property
    - gf_filter_pid_enum_properties
    - strstr
    - strncmp
    - gf_filter_release_property
    - gf_props_dump_val
    linkageType: ''
    returnType: void
    signature: void ffmpeg_tags_from_gpac(GF_FilterPid *pid, AVDictionary **metadata)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: av_dict_get
      Src: /src/gpac/src/filters/ff_common.c:150,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_common.c:152,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_common.c:157,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/ff_common.c:158,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/ff_common.c:158,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_common.c:161,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/ff_common.c:162,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/ff_common.c:162,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:168,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/ff_common.c:174,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/ff_common.c:174,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_common.c:176,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/ff_common.c:176,1
    - Dst: gf_itags_get_name
      Src: /src/gpac/src/filters/ff_common.c:179,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/ff_common.c:181,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/ff_common.c:181,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_common.c:183,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/ff_common.c:183,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/ff_common.c:188,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/ff_common.c:190,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/ff_common.c:191,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/ff_common.c:193,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/ff_common.c:193,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_common.c:194,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 45
    argCount: 2
    argNames:
    - metadata
    - pid
    argTypes:
    - AVDictionary*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 146
    functionDepth: 2
    functionLinenumber: 146
    functionLinenumberEnd: 198
    functionName: ffmpeg_tags_to_gpac
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_itags_get_name
    - gf_filter_pid_set_info
    - PROP_STRING
    - gf_filter_pid_set_property_str
    - strncmp
    - strcmp
    - stricmp
    - gf_dynstrcat
    - gf_filter_pid_set_property_dyn
    - gf_filter_pid_set_property
    - av_dict_get
    linkageType: ''
    returnType: void
    signature: void ffmpeg_tags_to_gpac(AVDictionary *metadata, GF_FilterPid *pid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_common.c:271,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/ff_common.c:271,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - pfmt
    - no_warn
    argTypes:
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 262
    functionDepth: 3
    functionLinenumber: 262
    functionLinenumberEnd: 274
    functionName: ffmpeg_pixfmt_from_gpac
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 4
    functionsReached:
    - GF_LOG
    - gf_4cc_to_str
    linkageType: ''
    returnType: enum AVPixelFormat
    signature: enum AVPixelFormat ffmpeg_pixfmt_from_gpac(u32 pfmt, Bool no_warn)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: av_pix_fmt_desc_get
      Src: /src/gpac/src/filters/ff_common.c:278,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_common.c:281,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_common.c:292,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 2
    argNames:
    - pfmt
    - no_warn
    argTypes:
    - enum AVPixelFormat
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 276
    functionDepth: 1
    functionLinenumber: 276
    functionLinenumberEnd: 295
    functionName: ffmpeg_pixfmt_to_gpac
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - av_pix_fmt_desc_get
    linkageType: ''
    returnType: u32
    signature: u32 ffmpeg_pixfmt_to_gpac(enum AVPixelFormat pfmt, Bool no_warn)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - pfmt
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 297
    functionDepth: 0
    functionLinenumber: 297
    functionLinenumberEnd: 306
    functionName: ffmpeg_pixfmt_is_fullrange
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool ffmpeg_pixfmt_is_fullrange(u32 pfmt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: avcodec_pix_fmt_to_codec_tag
      Src: /src/gpac/src/filters/ff_common.c:314,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - codec_tag
    - is_full_range
    argTypes:
    - u32
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 308
    functionDepth: 0
    functionLinenumber: 308
    functionLinenumberEnd: 323
    functionName: ffmpeg_pixfmt_from_codec_tag
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 0
    functionsReached:
    - avcodec_pix_fmt_to_codec_tag
    linkageType: ''
    returnType: u32
    signature: u32 ffmpeg_pixfmt_from_codec_tag(u32 codec_tag, Bool *is_full_range)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_common.c:355,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/ff_common.c:355,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - sfmt
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 347
    functionDepth: 3
    functionLinenumber: 347
    functionLinenumberEnd: 357
    functionName: ffmpeg_audio_fmt_from_gpac
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 3
    functionsReached:
    - GF_LOG
    - gf_4cc_to_str
    linkageType: ''
    returnType: u32
    signature: u32 ffmpeg_audio_fmt_from_gpac(u32 sfmt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_common.c:367,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - sfmt
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 369
    functionName: ffmpeg_audio_fmt_to_gpac
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: u32
    signature: u32 ffmpeg_audio_fmt_to_gpac(u32 sfmt)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - gpac_ch_layout
    argTypes:
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 408
    functionDepth: 0
    functionLinenumber: 408
    functionLinenumberEnd: 417
    functionName: ffmpeg_channel_layout_from_gpac
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 ffmpeg_channel_layout_from_gpac(u64 gpac_ch_layout)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ff_ch_layout
    argTypes:
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 427
      start: 418
    functionDepth: 0
    functionLinenumber: 418
    functionLinenumberEnd: 427
    functionName: ffmpeg_channel_layout_to_gpac
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 ffmpeg_channel_layout_to_gpac(u64 ff_ch_layout)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_codecid_type
      Src: /src/gpac/src/filters/ff_common.c:563,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/src/filters/ff_common.c:564,1
    - Dst: avcodec_find_decoder_by_name
      Src: /src/gpac/src/filters/ff_common.c:566,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/ff_common.c:566,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_common.c:570,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/ff_common.c:570,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - codec_id
    - ff_codectag
    argTypes:
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 550
    functionDepth: 3
    functionLinenumber: 550
    functionLinenumberEnd: 572
    functionName: ffmpeg_codecid_from_gpac
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 2
    functionsReached:
    - avcodec_find_decoder
    - gf_4cc_to_str
    - avcodec_find_decoder_by_name
    - GF_LOG
    - gf_codecid_type
    - gf_codecid_name
    linkageType: ''
    returnType: u32
    signature: u32 ffmpeg_codecid_from_gpac(u32 codec_id, u32 *ff_codectag)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_common.c:582,1
    - Dst: avcodec_get_name
      Src: /src/gpac/src/filters/ff_common.c:582,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - codec_id
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 574
    functionDepth: 1
    functionLinenumber: 574
    functionLinenumberEnd: 584
    functionName: ffmpeg_codecid_to_gpac
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - avcodec_get_name
    linkageType: ''
    returnType: u32
    signature: u32 ffmpeg_codecid_to_gpac(u32 codec_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - codec_id
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 586
    functionDepth: 0
    functionLinenumber: 586
    functionLinenumberEnd: 595
    functionName: ffmpeg_codecid_to_gpac_audio_fmt
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ffmpeg_codecid_to_gpac_audio_fmt(u32 codec_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_common.c:622,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filters/ff_common.c:622,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - streamtype
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 614
    functionDepth: 1
    functionLinenumber: 614
    functionLinenumberEnd: 624
    functionName: ffmpeg_stream_type_from_gpac
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_stream_type_name
    linkageType: ''
    returnType: u32
    signature: u32 ffmpeg_stream_type_from_gpac(u32 streamtype)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_common.c:635,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - streamtype
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 627
    functionDepth: 1
    functionLinenumber: 627
    functionLinenumberEnd: 637
    functionName: ffmpeg_stream_type_to_gpac
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: u32
    signature: u32 ffmpeg_stream_type_to_gpac(u32 streamtype)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 1
    argNames:
    - level
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 654
      start: 641
    functionDepth: 0
    functionLinenumber: 641
    functionLinenumberEnd: 654
    functionName: ffmpeg_to_gpac_log_level
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_LOG_Level
    signature: GF_LOG_Level ffmpeg_to_gpac_log_level(int level)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - level
    argTypes:
    - GF_LOG_Level
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 666
      start: 656
    functionDepth: 0
    functionLinenumber: 656
    functionLinenumberEnd: 666
    functionName: gpac_to_ffmpeg_log_level
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int gpac_to_ffmpeg_log_level(GF_LOG_Level level)
  - BBCount: 19
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 29
    argCount: 1
    argNames:
    - avc
    argTypes:
    - AVClass*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 697
      start: 668
    functionDepth: 0
    functionLinenumber: 668
    functionLinenumberEnd: 697
    functionName: gpac_to_ffmpeg_log_tool
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_LOG_Tool
    signature: GF_LOG_Tool gpac_to_ffmpeg_log_tool(AVClass* avc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ffmpeg_to_gpac_log_level
      Src: /src/gpac/src/filters/ff_common.c:704,1
    - Dst: gpac_to_ffmpeg_log_tool
      Src: /src/gpac/src/filters/ff_common.c:705,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/ff_common.c:707,1
    - Dst: gf_log_lt
      Src: /src/gpac/src/filters/ff_common.c:709,1
    - Dst: vsnprintf
      Src: /src/gpac/src/filters/ff_common.c:714,1
    - Dst: gf_log
      Src: /src/gpac/src/filters/ff_common.c:716,1
    - Dst: AVClass*::item_name
      Src: /src/gpac/src/filters/ff_common.c:716,1
    - Dst: gf_log_va_list
      Src: /src/gpac/src/filters/ff_common.c:718,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - avcl
    - level
    - fmt
    - vl
    argTypes:
    - void*
    - int
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 720
      start: 701
    functionDepth: 2
    functionLinenumber: 701
    functionLinenumberEnd: 720
    functionName: ff_log_callback
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 0
    functionsReached:
    - AVClass*::item_name
    - gf_log
    - gpac_to_ffmpeg_log_tool
    - ffmpeg_to_gpac_log_level
    - gf_log_tool_level_on
    - gf_log_lt
    - gf_log_va_list
    - vsnprintf
    linkageType: ''
    returnType: void
    signature: void ff_log_callback(void *avcl, int level, const char *fmt, va_list
      vl)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_log_get_tool_level
      Src: /src/gpac/src/filters/ff_common.c:724,1
    - Dst: gpac_to_ffmpeg_log_level
      Src: /src/gpac/src/filters/ff_common.c:725,1
    - Dst: av_log_get_level
      Src: /src/gpac/src/filters/ff_common.c:727,1
    - Dst: av_log_set_level
      Src: /src/gpac/src/filters/ff_common.c:728,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - log_class
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 722
    functionDepth: 1
    functionLinenumber: 722
    functionLinenumberEnd: 729
    functionName: ffmpeg_setup_logs
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 2
    functionsReached:
    - av_log_get_level
    - av_log_set_level
    - gpac_to_ffmpeg_log_level
    - gf_log_get_tool_level
    linkageType: ''
    returnType: void
    signature: void ffmpeg_setup_logs(u32 log_class)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - log_class
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 734
      start: 731
    functionDepth: 0
    functionLinenumber: 731
    functionLinenumberEnd: 734
    functionName: ffmpeg_setup_logs
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ffmpeg_setup_logs(u32 log_class)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: av_register_all
      Src: /src/gpac/src/filters/ff_common.c:741,1
    - Dst: avformat_network_init
      Src: /src/gpac/src/filters/ff_common.c:743,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/ff_common.c:747,1
    - Dst: av_log_set_callback
      Src: /src/gpac/src/filters/ff_common.c:748,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 752
      start: 737
    functionDepth: 6
    functionLinenumber: 737
    functionLinenumberEnd: 752
    functionName: ffmpeg_initialize
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 0
    functionsReached:
    - avformat_network_init
    - gf_opts_get_bool
    - av_register_all
    - av_log_set_callback
    linkageType: ''
    returnType: void
    signature: void ffmpeg_initialize()
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - reg
    argTypes:
    - GF_FilterRegister*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 754
    functionDepth: 0
    functionLinenumber: 754
    functionLinenumberEnd: 758
    functionName: ffmpeg_register_set_dyn_help
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ffmpeg_register_set_dyn_help(GF_FilterRegister *reg)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_common.c:769,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_common.c:771,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_common.c:775,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/ff_common.c:777,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_common.c:779,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_common.c:785,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_common.c:786,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_common.c:787,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_common.c:789,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_common.c:790,1
    - Dst: gf_fs_remove_filter_register
      Src: /src/gpac/src/filters/ff_common.c:791,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_common.c:792,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/ff_common.c:794,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_common.c:801,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_common.c:802,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_common.c:803,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_common.c:805,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_common.c:806,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 45
    argCount: 2
    argNames:
    - session
    - reg
    argTypes:
    - GF_FilterSession*
    - GF_FilterRegister*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 807
      start: 759
    functionDepth: 3
    functionLinenumber: 759
    functionLinenumberEnd: 807
    functionName: ffmpeg_register_free
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_list_count
    - gf_fs_remove_filter_register
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void ffmpeg_register_free(GF_FilterSession *session, GF_FilterRegister
      *reg)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/ff_common.c:813,1
    - Dst: AV_VERSION_INT
      Src: /src/gpac/src/filters/ff_common.c:822,1
    - Dst: AV_VERSION_INT
      Src: /src/gpac/src/filters/ff_common.c:822,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_common.c:840,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_common.c:841,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_common.c:843,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_common.c:845,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_common.c:846,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_common.c:851,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_common.c:852,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_common.c:854,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_common.c:856,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_common.c:857,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_common.c:861,1
    - Dst: AV_VERSION_INT
      Src: /src/gpac/src/filters/ff_common.c:865,1
    - Dst: AV_VERSION_INT
      Src: /src/gpac/src/filters/ff_common.c:865,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_common.c:868,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_common.c:869,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_common.c:871,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_common.c:873,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_common.c:874,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_common.c:880,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_common.c:881,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_common.c:885,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_common.c:886,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_common.c:891,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_common.c:892,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_common.c:899,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_common.c:906,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_common.c:910,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_common.c:911,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_common.c:919,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_common.c:920,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_common.c:924,1
    - Dst: av_get_pix_fmt_name
      Src: /src/gpac/src/filters/ff_common.c:924,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_common.c:927,1
    - Dst: av_get_pix_fmt_name
      Src: /src/gpac/src/filters/ff_common.c:931,1
    - Dst: strlen
      Src: /src/gpac/src/filters/ff_common.c:934,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/ff_common.c:937,1
    - Dst: strcat
      Src: /src/gpac/src/filters/ff_common.c:939,1
    - Dst: strcat
      Src: /src/gpac/src/filters/ff_common.c:940,1
    - Dst: AV_VERSION_INT
      Src: /src/gpac/src/filters/ff_common.c:946,1
    - Dst: AV_VERSION_INT
      Src: /src/gpac/src/filters/ff_common.c:946,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_common.c:949,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_common.c:953,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 121
    argCount: 1
    argNames:
    - opt
    argTypes:
    - struct AVOption*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 957
      start: 809
    functionDepth: 1
    functionLinenumber: 809
    functionLinenumberEnd: 957
    functionName: ffmpeg_arg_translate
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_strdup
    - GF_LOG
    - av_get_pix_fmt_name
    - strlen
    - sprintf
    - AV_VERSION_INT
    - memset
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_FilterArgs
    signature: GF_FilterArgs ffmpeg_arg_translate(const struct AVOption *opt)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - st
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 968
      start: 959
    functionDepth: 0
    functionLinenumber: 959
    functionLinenumberEnd: 968
    functionName: ff_streamtype
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ff_streamtype(u32 st)
  - BBCount: 75
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/ff_common.c:982,1
    - Dst: avdevice_register_all
      Src: /src/gpac/src/filters/ff_common.c:1010,1
    - Dst: avio_enum_protocols
      Src: /src/gpac/src/filters/ff_common.c:1054,1
    - Dst: avio_protocol_get_class
      Src: /src/gpac/src/filters/ff_common.c:1056,1
    - Dst: av_iformat_next
      Src: /src/gpac/src/filters/ff_common.c:1065,1
    - Dst: av_demuxer_iterate
      Src: /src/gpac/src/filters/ff_common.c:1067,1
    - Dst: av_codec_next
      Src: /src/gpac/src/filters/ff_common.c:1079,1
    - Dst: av_codec_iterate
      Src: /src/gpac/src/filters/ff_common.c:1081,1
    - Dst: av_codec_is_decoder
      Src: /src/gpac/src/filters/ff_common.c:1084,1
    - Dst: av_input_audio_device_next
      Src: /src/gpac/src/filters/ff_common.c:1097,1
    - Dst: av_input_video_device_next
      Src: /src/gpac/src/filters/ff_common.c:1099,1
    - Dst: av_iformat_next
      Src: /src/gpac/src/filters/ff_common.c:1117,1
    - Dst: av_demuxer_iterate
      Src: /src/gpac/src/filters/ff_common.c:1119,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1128,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1129,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1130,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1131,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1132,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1133,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1134,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1135,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1136,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1137,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1138,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1139,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1140,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1141,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1142,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1143,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1144,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/ff_common.c:1145,1
    - Dst: av_codec_next
      Src: /src/gpac/src/filters/ff_common.c:1152,1
    - Dst: av_codec_iterate
      Src: /src/gpac/src/filters/ff_common.c:1154,1
    - Dst: av_codec_is_encoder
      Src: /src/gpac/src/filters/ff_common.c:1157,1
    - Dst: avio_enum_protocols
      Src: /src/gpac/src/filters/ff_common.c:1167,1
    - Dst: avio_protocol_get_class
      Src: /src/gpac/src/filters/ff_common.c:1169,1
    - Dst: av_muxer_iterate
      Src: /src/gpac/src/filters/ff_common.c:1178,1
    - Dst: av_oformat_next
      Src: /src/gpac/src/filters/ff_common.c:1180,1
    - Dst: av_filter_iterate
      Src: /src/gpac/src/filters/ff_common.c:1192,1
    - Dst: avfilter_next
      Src: /src/gpac/src/filters/ff_common.c:1194,1
    - Dst: av_bsf_iterate
      Src: /src/gpac/src/filters/ff_common.c:1210,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/ff_common.c:1219,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_common.c:1221,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/ff_common.c:1230,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_common.c:1232,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_common.c:1233,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/ff_common.c:1239,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/ff_common.c:1241,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/ff_common.c:1243,1
    - Dst: ffmpeg_codecid_to_gpac
      Src: /src/gpac/src/filters/ff_common.c:1249,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_common.c:1252,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_common.c:1253,1
    - Dst: ff_streamtype
      Src: /src/gpac/src/filters/ff_common.c:1256,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_common.c:1300,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_common.c:1301,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_common.c:1341,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_common.c:1342,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_common.c:1381,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_common.c:1382,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_common.c:1399,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_common.c:1400,1
    - Dst: ff_streamtype
      Src: /src/gpac/src/filters/ff_common.c:1412,1
    - Dst: avcodec_get_type
      Src: /src/gpac/src/filters/ff_common.c:1412,1
    - Dst: ffmpeg_codecid_to_gpac
      Src: /src/gpac/src/filters/ff_common.c:1417,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1440,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1445,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_common.c:1460,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_common.c:1461,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1480,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1488,1
    - Dst: ffmpeg_arg_translate
      Src: /src/gpac/src/filters/ff_common.c:1495,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_common.c:1497,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/ff_common.c:1500,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/ff_common.c:1501,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_common.c:1504,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_common.c:1506,1
    - Dst: ffmpeg_arg_translate
      Src: /src/gpac/src/filters/ff_common.c:1513,1
    - Dst: gf_fs_add_filter_register
      Src: /src/gpac/src/filters/ff_common.c:1519,1
    CyclomaticComplexity: 144
    EdgeCount: 144
    ICount: 380
    argCount: 3
    argNames:
    - session
    - orig_reg
    - type
    argTypes:
    - GF_FilterSession*
    - GF_FilterRegister*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1520
      start: 975
    functionDepth: 6
    functionLinenumber: 975
    functionLinenumberEnd: 1520
    functionName: ffmpeg_expand_register
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_opts_set_key
    - GF_SAFEALLOC
    - ff_streamtype
    - av_codec_is_decoder
    - av_oformat_next
    - memset
    - av_codec_is_encoder
    - avio_enum_protocols
    - avfilter_next
    - ffmpeg_arg_translate
    - av_bsf_iterate
    - gf_list_new
    - gf_strdup
    - avcodec_get_type
    - av_codec_next
    - memcpy
    - sprintf
    - ffmpeg_codecid_to_gpac
    - gf_list_add
    - gf_fs_add_filter_register
    - stricmp
    - gf_dynstrcat
    - avio_protocol_get_class
    - av_demuxer_iterate
    - av_muxer_iterate
    - av_filter_iterate
    - gf_malloc
    - av_iformat_next
    - avdevice_register_all
    - strcmp
    - av_codec_iterate
    - av_input_video_device_next
    - gf_opts_get_bool
    - av_input_audio_device_next
    linkageType: ''
    returnType: void
    signature: void ffmpeg_expand_register(GF_FilterSession *session, GF_FilterRegister
      *orig_reg, u32 type)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ffmpeg_initialize
      Src: /src/gpac/src/filters/ff_common.c:1544,1
    - Dst: avcodec_configuration
      Src: /src/gpac/src/filters/ff_common.c:1547,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/ff_common.c:1557,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_common.c:1558,1
    - Dst: avcodec_configuration
      Src: /src/gpac/src/filters/ff_common.c:1567,1
    - Dst: avcodec_alloc_context3
      Src: /src/gpac/src/filters/ff_common.c:1569,1
    - Dst: avfilter_get_class
      Src: /src/gpac/src/filters/ff_common.c:1573,1
    - Dst: av_bsf_get_class
      Src: /src/gpac/src/filters/ff_common.c:1578,1
    - Dst: avformat_alloc_context
      Src: /src/gpac/src/filters/ff_common.c:1582,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 5
    argNames:
    - session
    - orig_reg
    - default_args
    - nb_def_args
    - reg_type
    argTypes:
    - GF_FilterSession*
    - GF_FilterRegister*
    - GF_FilterArgs*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1584
      start: 1532
    functionDepth: 7
    functionLinenumber: 1532
    functionLinenumberEnd: 1584
    functionName: ffmpeg_build_register
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 2
    functionsReached:
    - avcodec_configuration
    - av_bsf_get_class
    - GF_SAFEALLOC
    - memcpy
    - avcodec_alloc_context3
    - avformat_alloc_context
    - ffmpeg_initialize
    - avfilter_get_class
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ffmpeg_build_register(GF_FilterSession *session,
      GF_FilterRegister *orig_reg, const GF_FilterArgs *default_args, u32 nb_def_args,
      u32 reg_type)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: av_dict_get
      Src: /src/gpac/src/filters/ff_common.c:1725,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1731,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/ff_common.c:1731,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/ff_common.c:1731,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/ff_common.c:1731,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1733,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1733,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1735,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1737,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 20
    argCount: 2
    argNames:
    - options
    - ctx
    argTypes:
    - AVDictionary*
    - AVCodecContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1744
      start: 1717
    functionDepth: 0
    functionLinenumber: 1717
    functionLinenumberEnd: 1744
    functionName: ffmpeg_set_enc_dec_flags
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 1
    functionsReached:
    - strcmp
    - av_dict_get
    - stricmp
    linkageType: ''
    returnType: void
    signature: void ffmpeg_set_enc_dec_flags(const AVDictionary *options, AVCodecContext
      *ctx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: av_dict_get
      Src: /src/gpac/src/filters/ff_common.c:1752,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1758,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1759,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:1761,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 18
    argCount: 2
    argNames:
    - options
    - ctx
    argTypes:
    - AVDictionary*
    - AVFormatContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1768
      start: 1746
    functionDepth: 0
    functionLinenumber: 1746
    functionLinenumberEnd: 1768
    functionName: ffmpeg_set_mx_dmx_flags
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 0
    functionsReached:
    - strcmp
    - av_dict_get
    linkageType: ''
    returnType: void
    signature: void ffmpeg_set_mx_dmx_flags(const AVDictionary *options, AVFormatContext
      *ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: av_dict_get
      Src: /src/gpac/src/filters/ff_common.c:1776,1
    - Dst: av_dict_get
      Src: /src/gpac/src/filters/ff_common.c:1779,1
    - Dst: gf_filter_report_meta_option
      Src: /src/gpac/src/filters/ff_common.c:1782,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_common.c:1785,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 3
    argNames:
    - filter
    - options
    - all_options
    argTypes:
    - GF_Filter*
    - AVDictionary*
    - AVDictionary*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1786
      start: 1770
    functionDepth: 1
    functionLinenumber: 1770
    functionLinenumberEnd: 1786
    functionName: ffmpeg_report_options
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 1
    functionsReached:
    - av_dict_free
    - av_dict_get
    - gf_filter_report_meta_option
    linkageType: ''
    returnType: void
    signature: void ffmpeg_report_options(GF_Filter *filter, AVDictionary *options,
      AVDictionary *all_options)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_common.c:1801,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_common.c:1802,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_common.c:1803,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/ff_common.c:1804,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/ff_common.c:1805,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_common.c:1806,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/ff_common.c:1807,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/ff_common.c:1813,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/ff_common.c:1816,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/ff_common.c:1816,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_common.c:1821,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_common.c:1822,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_common.c:1823,1
    - Dst: gf_bs_transfer
      Src: /src/gpac/src/filters/ff_common.c:1826,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/ff_common.c:1827,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_common.c:1829,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_common.c:1830,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_common.c:1831,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_common.c:1833,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_common.c:1835,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_common.c:1836,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_common.c:1837,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_common.c:1845,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/ff_common.c:1846,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/ff_common.c:1847,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/ff_common.c:1848,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/ff_common.c:1849,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/ff_common.c:1852,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/ff_common.c:1855,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_common.c:1857,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_common.c:1860,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_common.c:1862,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_common.c:1865,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_common.c:1867,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_common.c:1868,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_common.c:1871,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_common.c:1873,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_common.c:1876,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_common.c:1878,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 82
    argCount: 5
    argNames:
    - gpac_codec_id
    - dsi_in
    - dsi_in_size
    - dsi_out
    - dsi_out_size
    argTypes:
    - u32
    - u8*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1881
      start: 1789
    functionDepth: 10
    functionLinenumber: 1789
    functionLinenumberEnd: 1881
    functionName: ffmpeg_extradata_from_gpac
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - gf_bs_read_u16
    - gf_bs_get_content
    - memcpy
    - gf_bs_del
    - gf_bs_transfer
    - memset
    - av_malloc
    - gf_bs_get_position
    - gf_bs_read_int
    - gf_bs_read_u8
    - gf_bs_available
    - gf_bs_write_u8
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffmpeg_extradata_from_gpac(u32 gpac_codec_id, const u8 *dsi_in,
      u32 dsi_in_size, u8 **dsi_out, u32 *dsi_out_size)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_common.c:1897,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/ff_common.c:1898,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/ff_common.c:1899,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/ff_common.c:1900,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/ff_common.c:1901,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/ff_common.c:1902,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/ff_common.c:1903,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/ff_common.c:1904,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_common.c:1905,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/ff_common.c:1911,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/ff_common.c:1911,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_common.c:1913,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_common.c:1920,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/ff_common.c:1928,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_common.c:1930,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_common.c:1932,1
    - Dst: gf_media_vc1_seq_header_to_dsi
      Src: /src/gpac/src/filters/ff_common.c:1939,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_common.c:1948,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_common.c:1950,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 56
    argCount: 5
    argNames:
    - gpac_codec_id
    - data
    - size
    - dsi_out
    - dsi_out_size
    argTypes:
    - u32
    - u8*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1952
      start: 1883
    functionDepth: 9
    functionLinenumber: 1883
    functionLinenumberEnd: 1952
    functionName: ffmpeg_extradata_to_gpac
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 1
    functionsReached:
    - memcmp
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_u16
    - memcpy
    - gf_media_vc1_seq_header_to_dsi
    - gf_bs_del
    - gf_bs_write_data
    - GF_4CC
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffmpeg_extradata_to_gpac(u32 gpac_codec_id, const u8 *data,
      u32 size, u8 **dsi_out, u32 *dsi_out_size)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_vp_cfg_new
      Src: /src/gpac/src/filters/ff_common.c:1971,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_common.c:1985,1
    - Dst: gf_vp9_parse_superframe
      Src: /src/gpac/src/filters/ff_common.c:1986,1
    - Dst: gf_odf_vp_cfg_new
      Src: /src/gpac/src/filters/ff_common.c:1988,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/ff_common.c:1990,1
    - Dst: gf_vp9_parse_sample
      Src: /src/gpac/src/filters/ff_common.c:1991,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_common.c:1992,1
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/filters/ff_common.c:1993,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/ff_common.c:1997,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_common.c:2000,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_common.c:2006,1
    - Dst: gf_eac3_parser_bs
      Src: /src/gpac/src/filters/ff_common.c:2008,1
    - Dst: gf_odf_ac3_cfg_write
      Src: /src/gpac/src/filters/ff_common.c:2010,1
    - Dst: gf_ac3_parser_bs
      Src: /src/gpac/src/filters/ff_common.c:2013,1
    - Dst: gf_odf_ac3_cfg_write
      Src: /src/gpac/src/filters/ff_common.c:2014,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_common.c:2017,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_common.c:2022,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/ff_common.c:2024,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/ff_common.c:2025,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/ff_common.c:2027,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_common.c:2028,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_common.c:2030,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_common.c:2031,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/ff_common.c:2032,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/ff_common.c:2033,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_common.c:2037,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_common.c:2040,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/ff_common.c:2041,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/ff_common.c:2042,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/ff_common.c:2043,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/ff_common.c:2044,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/ff_common.c:2045,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_common.c:2046,1
    - Dst: gf_m4v_parser_new
      Src: /src/gpac/src/filters/ff_common.c:2062,1
    - Dst: gf_m4v_parse_config
      Src: /src/gpac/src/filters/ff_common.c:2063,1
    - Dst: gf_m4v_get_object_start
      Src: /src/gpac/src/filters/ff_common.c:2064,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_common.c:2065,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_common.c:2066,1
    - Dst: gf_m4v_parser_del
      Src: /src/gpac/src/filters/ff_common.c:2068,1
    - Dst: gf_odf_vp_cfg_write
      Src: /src/gpac/src/filters/ff_common.c:2074,1
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/filters/ff_common.c:2075,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_common.c:2079,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/ff_common.c:2079,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 97
    argCount: 7
    argNames:
    - out_pid
    - gpac_codec_id
    - color_primaries
    - transfer_characteristics
    - colorspace
    - data
    - size
    argTypes:
    - GF_FilterPid*
    - u32
    - u32
    - u32
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2081
      start: 1957
    functionDepth: 9
    functionLinenumber: 1957
    functionLinenumberEnd: 2081
    functionName: ffmpeg_generate_gpac_dsi
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 2
    functionsReached:
    - gf_odf_vp_cfg_new
    - gf_bs_new
    - PROP_DATA_NO_COPY
    - gf_odf_ac3_cfg_write
    - gf_bs_read_u16
    - gf_bs_write_u32
    - gf_bs_read_u32
    - gf_eac3_parser_bs
    - gf_odf_vp_cfg_write
    - gf_bs_get_content
    - memcpy
    - gf_vp9_parse_superframe
    - gf_m4v_parser_del
    - gf_m4v_parse_config
    - GF_LOG
    - gf_bs_write_int
    - gf_vp9_parse_sample
    - gf_ac3_parser_bs
    - gf_bs_get_position
    - gf_odf_vp_cfg_del
    - gf_m4v_get_object_start
    - gf_filter_pid_set_property
    - gf_malloc
    - gf_m4v_parser_new
    - gf_bs_seek
    - gf_bs_del
    - gf_bs_read_int
    linkageType: ''
    returnType: void
    signature: void ffmpeg_generate_gpac_dsi(GF_FilterPid *out_pid, u32 gpac_codec_id,
      u32 color_primaries, u32 transfer_characteristics, u32 colorspace, const u8
      *data, u32 size)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_common.c:2090,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_common.c:2093,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_common.c:2098,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_common.c:2100,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_common.c:2104,1
    - Dst: ffmpeg_pixfmt_from_gpac
      Src: /src/gpac/src/filters/ff_common.c:2106,1
    - Dst: avcodec_pix_fmt_to_codec_tag
      Src: /src/gpac/src/filters/ff_common.c:2107,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_common.c:2111,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_common.c:2116,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_common.c:2119,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_common.c:2122,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_common.c:2125,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_common.c:2128,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_common.c:2135,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_common.c:2137,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_common.c:2148,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_common.c:2150,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_common.c:2153,1
    - Dst: ffmpeg_audio_fmt_from_gpac
      Src: /src/gpac/src/filters/ff_common.c:2154,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_common.c:2158,1
    - Dst: ffmpeg_channel_layout_from_gpac
      Src: /src/gpac/src/filters/ff_common.c:2164,1
    - Dst: ffmpeg_channel_layout_from_gpac
      Src: /src/gpac/src/filters/ff_common.c:2166,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_common.c:2168,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 85
    argCount: 3
    argNames:
    - pid
    - codecpar
    - ffmpeg_timescale
    argTypes:
    - GF_FilterPid*
    - AVCodecParameters*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2183
      start: 2085
    functionDepth: 4
    functionLinenumber: 2085
    functionLinenumberEnd: 2183
    functionName: ffmpeg_codec_par_from_gpac
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 0
    functionsReached:
    - avcodec_pix_fmt_to_codec_tag
    - gf_filter_pid_get_property
    - ffmpeg_channel_layout_from_gpac
    - ffmpeg_audio_fmt_from_gpac
    - ffmpeg_pixfmt_from_gpac
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffmpeg_codec_par_from_gpac(GF_FilterPid *pid, AVCodecParameters
      *codecpar, u32 ffmpeg_timescale)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_common.c:2190,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_common.c:2190,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_common.c:2192,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_common.c:2192,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_common.c:2194,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/ff_common.c:2194,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/ff_common.c:2197,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_common.c:2199,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_common.c:2199,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_common.c:2201,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_common.c:2201,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_common.c:2204,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_common.c:2204,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_common.c:2207,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_common.c:2207,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_common.c:2210,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_common.c:2210,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_common.c:2213,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_common.c:2213,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_common.c:2218,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_common.c:2218,1
    - Dst: ffmpeg_pixfmt_to_gpac
      Src: /src/gpac/src/filters/ff_common.c:2218,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_common.c:2220,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_common.c:2220,1
    - Dst: ffmpeg_audio_fmt_to_gpac
      Src: /src/gpac/src/filters/ff_common.c:2220,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_common.c:2225,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_common.c:2225,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_common.c:2237,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_common.c:2237,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_common.c:2239,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/ff_common.c:2239,1
    - Dst: ffmpeg_channel_layout_to_gpac
      Src: /src/gpac/src/filters/ff_common.c:2239,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_common.c:2243,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_common.c:2243,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_common.c:2246,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_common.c:2246,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 48
    argCount: 3
    argNames:
    - codecpar
    - opid
    - ffmpeg_timescale
    argTypes:
    - AVCodecParameters*
    - GF_FilterPid*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2249
      start: 2185
    functionDepth: 2
    functionLinenumber: 2185
    functionLinenumberEnd: 2249
    functionName: ffmpeg_codec_par_to_gpac
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 0
    functionsReached:
    - PROP_UINT
    - ffmpeg_channel_layout_to_gpac
    - gf_sys_is_test_mode
    - ffmpeg_pixfmt_to_gpac
    - ffmpeg_audio_fmt_to_gpac
    - PROP_BOOL
    - PROP_LONGUINT
    - gf_filter_pid_set_property
    - PROP_FRAC_INT
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffmpeg_codec_par_to_gpac(AVCodecParameters *codecpar, GF_FilterPid
      *opid, u32 ffmpeg_timescale)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_dump_val
      Src: /src/gpac/src/filters/ff_common.c:2256,1
    - Dst: av_opt_set
      Src: /src/gpac/src/filters/ff_common.c:2262,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_common.c:2264,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_common.c:2269,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_common.c:2269,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 5
    argNames:
    - log_name
    - ctx
    - options
    - arg_name
    - arg_val
    argTypes:
    - char*
    - void*
    - AVDictionary**
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2273
      start: 2252
    functionDepth: 1
    functionLinenumber: 2252
    functionLinenumberEnd: 2273
    functionName: ffmpeg_update_arg
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 1
    functionsReached:
    - av_dict_set
    - av_opt_set
    - GF_LOG
    - av_err2str
    - gf_props_dump_val
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffmpeg_update_arg(const char *log_name, void *ctx, AVDictionary
      **options, const char *arg_name, const GF_PropertyValue *arg_val)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: av_dict_get
      Src: /src/gpac/src/filters/ff_common.c:2287,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_common.c:2289,1
    - Dst: atoi
      Src: /src/gpac/src/filters/ff_common.c:2290,1
    - Dst: gf_filter_on_main_thread
      Src: /src/gpac/src/filters/ff_common.c:2302,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_common.c:2306,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_common.c:2309,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 27
    argCount: 3
    argNames:
    - filter
    - options
    - codecctx
    argTypes:
    - GF_Filter*
    - AVDictionary*
    - AVCodecContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2316
      start: 2278
    functionDepth: 1
    functionLinenumber: 2278
    functionLinenumberEnd: 2316
    functionName: ffmpeg_check_threads
    functionSourceFile: /src/gpac/src/filters/ff_common.c
    functionUses: 1
    functionsReached:
    - gf_filter_on_main_thread
    - GF_LOG
    - strcmp
    - atoi
    - av_dict_get
    linkageType: ''
    returnType: void
    signature: void ffmpeg_check_threads(GF_Filter *filter, AVDictionary *options,
      AVCodecContext *codecctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: atoi
      Src: /src/gpac/src/filters/dec_mediacodec.c:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 110
    functionName: sdkInt
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached:
    - atoi
    linkageType: ''
    returnType: u8
    signature: u8 sdkInt()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AMediaFormat_setString
      Src: /src/gpac/src/filters/dec_mediacodec.c:116,1
    - Dst: AMediaFormat_setInt32
      Src: /src/gpac/src/filters/dec_mediacodec.c:117,1
    - Dst: AMediaFormat_setInt32
      Src: /src/gpac/src/filters/dec_mediacodec.c:118,1
    - Dst: AMediaFormat_setInt32
      Src: /src/gpac/src/filters/dec_mediacodec.c:119,1
    - Dst: AMediaFormat_setInt32
      Src: /src/gpac/src/filters/dec_mediacodec.c:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - format
    argTypes:
    - GF_MCDecCtx*
    - AMediaFormat*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 121
    functionName: mcdec_init_media_format
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached:
    - AMediaFormat_setString
    - AMediaFormat_setInt32
    linkageType: ''
    returnType: void
    signature: void mcdec_init_media_format(GF_MCDecCtx *ctx, AMediaFormat *format)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_mediacodec.c:126,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:127,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_mediacodec.c:128,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_mediacodec.c:129,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dec_mediacodec.c:130,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - list
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 132
    functionName: mcdec_reset_ps_list
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void mcdec_reset_ps_list(GF_List *list)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_mediacodec.c:142,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:143,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_mediacodec.c:150,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:151,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 66
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MCDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 204
    functionName: mcdec_init_avc_dec
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mcdec_init_avc_dec(GF_MCDecCtx *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:214,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_mediacodec.c:215,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/filters/dec_mediacodec.c:220,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/filters/dec_mediacodec.c:224,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_mediacodec.c:228,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dec_mediacodec.c:229,1
    - Dst: gf_odf_desc_write_bs
      Src: /src/gpac/src/filters/dec_mediacodec.c:230,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dec_mediacodec.c:231,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_mediacodec.c:232,1
    - Dst: AMediaFormat_setBuffer
      Src: /src/gpac/src/filters/dec_mediacodec.c:235,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_mediacodec.c:237,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/dec_mediacodec.c:238,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MCDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 207
    functionDepth: 9
    functionLinenumber: 207
    functionLinenumberEnd: 240
    functionName: mcdec_init_m4vp2_dec
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_filter_pid_get_property
    - gf_bs_new
    - gf_odf_desc_write_bs
    - gf_odf_desc_esd_new
    - gf_bs_get_content
    - AMediaFormat_setBuffer
    - gf_odf_desc_del
    - gf_bs_del
    - gf_m4v_get_config
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mcdec_init_m4vp2_dec(GF_MCDecCtx *ctx)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_mediacodec.c:253,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:254,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_mediacodec.c:261,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:262,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_mediacodec.c:268,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:269,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 74
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MCDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 326
    functionName: mcdec_init_hevc_dec
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mcdec_init_hevc_dec(GF_MCDecCtx *ctx)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: AMediaFormat_new
      Src: /src/gpac/src/filters/dec_mediacodec.c:333,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:336,1
    - Dst: mcdec_init_avc_dec
      Src: /src/gpac/src/filters/dec_mediacodec.c:345,1
    - Dst: mcdec_init_m4vp2_dec
      Src: /src/gpac/src/filters/dec_mediacodec.c:348,1
    - Dst: mcdec_init_hevc_dec
      Src: /src/gpac/src/filters/dec_mediacodec.c:351,1
    - Dst: mcdec_init_media_format
      Src: /src/gpac/src/filters/dec_mediacodec.c:363,1
    - Dst: mcdec_find_decoder
      Src: /src/gpac/src/filters/dec_mediacodec.c:366,1
    - Dst: AMediaCodec_createCodecByName
      Src: /src/gpac/src/filters/dec_mediacodec.c:369,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_mediacodec.c:370,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:374,1
    - Dst: mcdec_create_surface
      Src: /src/gpac/src/filters/dec_mediacodec.c:381,1
    - Dst: AMediaCodec_configure
      Src: /src/gpac/src/filters/dec_mediacodec.c:386,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:387,1
    - Dst: AMediaCodec_start
      Src: /src/gpac/src/filters/dec_mediacodec.c:391,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:392,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:398,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mediacodec.c:401,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_mediacodec.c:401,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mediacodec.c:402,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_mediacodec.c:402,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mediacodec.c:403,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_mediacodec.c:403,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mediacodec.c:405,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/dec_mediacodec.c:405,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mediacodec.c:408,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_mediacodec.c:408,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mediacodec.c:409,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_mediacodec.c:409,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mediacodec.c:411,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_mediacodec.c:411,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mediacodec.c:412,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_mediacodec.c:417,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_mediacodec.c:420,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_mediacodec.c:423,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_mediacodec.c:426,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 82
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MCDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 329
    functionDepth: 10
    functionLinenumber: 329
    functionLinenumberEnd: 430
    functionName: mcdec_init_decoder
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached:
    - AMediaFormat_new
    - gf_free
    - mcdec_init_media_format
    - PROP_UINT
    - PROP_FRAC
    - AMediaCodec_start
    - GF_LOG
    - mcdec_init_avc_dec
    - AMediaCodec_createCodecByName
    - AMediaCodec_configure
    - mcdec_create_surface
    - mcdec_find_decoder
    - gf_filter_pid_set_property
    - mcdec_init_hevc_dec
    - mcdec_init_m4vp2_dec
    - gf_filter_set_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mcdec_init_decoder(GF_MCDecCtx *ctx)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/filters/dec_mediacodec.c:440,1
    - Dst: gf_avc_read_pps
      Src: /src/gpac/src/filters/dec_mediacodec.c:444,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_mediacodec.c:447,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:449,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/dec_mediacodec.c:452,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_mediacodec.c:453,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_mediacodec.c:454,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dec_mediacodec.c:455,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_mediacodec.c:465,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_mediacodec.c:467,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_mediacodec.c:469,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_mediacodec.c:472,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_mediacodec.c:475,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 41
    argCount: 4
    argNames:
    - ctx
    - data
    - size
    - xps
    argTypes:
    - GF_MCDecCtx*
    - u8*
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 481
      start: 432
    functionDepth: 6
    functionLinenumber: 432
    functionLinenumberEnd: 481
    functionName: mcdec_register_avc_param_set
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - memcmp
    - GF_SAFEALLOC
    - memcpy
    - gf_list_count
    - gf_list_add
    - gf_avc_read_sps
    - gf_avc_read_pps
    - gf_malloc
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void mcdec_register_avc_param_set(GF_MCDecCtx *ctx, u8 *data, u32 size,
      u8 xps)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_hevc_read_sps
      Src: /src/gpac/src/filters/dec_mediacodec.c:493,1
    - Dst: gf_hevc_read_pps
      Src: /src/gpac/src/filters/dec_mediacodec.c:498,1
    - Dst: gf_hevc_read_vps
      Src: /src/gpac/src/filters/dec_mediacodec.c:503,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_mediacodec.c:510,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:512,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/dec_mediacodec.c:515,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_mediacodec.c:516,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_mediacodec.c:517,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dec_mediacodec.c:518,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_mediacodec.c:528,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_mediacodec.c:530,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_mediacodec.c:532,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_mediacodec.c:535,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_mediacodec.c:538,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 56
    argCount: 4
    argNames:
    - ctx
    - data
    - size
    - xps
    argTypes:
    - GF_MCDecCtx*
    - u8*
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 483
    functionDepth: 8
    functionLinenumber: 483
    functionLinenumberEnd: 545
    functionName: mcdec_register_hevc_param_set
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - memcmp
    - GF_SAFEALLOC
    - memcpy
    - gf_list_count
    - gf_list_add
    - gf_list_rem
    - gf_hevc_read_sps
    - gf_hevc_read_pps
    - gf_malloc
    - gf_hevc_read_vps
    linkageType: ''
    returnType: void
    signature: void mcdec_register_hevc_param_set(GF_MCDecCtx *ctx, u8 *data, u32
      size, u8 xps)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_mediacodec.c:555,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dec_mediacodec.c:558,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_mediacodec.c:559,1
    - Dst: AMediaCodec_stop
      Src: /src/gpac/src/filters/dec_mediacodec.c:560,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_mediacodec.c:562,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_mediacodec.c:568,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_mediacodec.c:571,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:573,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:578,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_mediacodec.c:579,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_mediacodec.c:586,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:587,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_mediacodec.c:591,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dec_mediacodec.c:601,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dec_mediacodec.c:602,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_mediacodec.c:605,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mediacodec.c:606,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_mediacodec.c:611,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_mediacodec.c:612,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dec_mediacodec.c:615,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dec_mediacodec.c:616,1
    - Dst: gf_filter_set_max_extra_input_pids
      Src: /src/gpac/src/filters/dec_mediacodec.c:620,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_mediacodec.c:623,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dec_mediacodec.c:624,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_mediacodec.c:628,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mediacodec.c:629,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_mediacodec.c:629,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mediacodec.c:630,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_mediacodec.c:632,1
    - Dst: AMediaCodec_delete
      Src: /src/gpac/src/filters/dec_mediacodec.c:643,1
    - Dst: mcdec_reset_ps_list
      Src: /src/gpac/src/filters/dec_mediacodec.c:645,1
    - Dst: mcdec_reset_ps_list
      Src: /src/gpac/src/filters/dec_mediacodec.c:646,1
    - Dst: mcdec_reset_ps_list
      Src: /src/gpac/src/filters/dec_mediacodec.c:647,1
    - Dst: AMediaFormat_delete
      Src: /src/gpac/src/filters/dec_mediacodec.c:649,1
    - Dst: glGenTextures
      Src: /src/gpac/src/filters/dec_mediacodec.c:654,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/dec_mediacodec.c:665,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_mediacodec.c:666,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:667,1
    - Dst: mcdec_register_avc_param_set
      Src: /src/gpac/src/filters/dec_mediacodec.c:669,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_mediacodec.c:672,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:673,1
    - Dst: mcdec_register_avc_param_set
      Src: /src/gpac/src/filters/dec_mediacodec.c:675,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:678,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:681,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/dec_mediacodec.c:685,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/filters/dec_mediacodec.c:689,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/dec_mediacodec.c:701,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_mediacodec.c:705,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:706,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_mediacodec.c:707,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:708,1
    - Dst: mcdec_register_hevc_param_set
      Src: /src/gpac/src/filters/dec_mediacodec.c:711,1
    - Dst: mcdec_register_hevc_param_set
      Src: /src/gpac/src/filters/dec_mediacodec.c:713,1
    - Dst: mcdec_register_hevc_param_set
      Src: /src/gpac/src/filters/dec_mediacodec.c:715,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:720,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:723,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:726,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/dec_mediacodec.c:729,1
    - Dst: mcdec_init_decoder
      Src: /src/gpac/src/filters/dec_mediacodec.c:732,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 152
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 547
    functionDepth: 11
    functionLinenumber: 547
    functionLinenumberEnd: 733
    functionName: mcdec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached:
    - AMediaCodec_stop
    - gf_odf_avc_cfg_del
    - gf_list_find
    - gf_list_count
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - gf_filter_set_max_extra_input_pids
    - gf_odf_hevc_cfg_read
    - gf_list_get
    - mcdec_init_decoder
    - gf_m4v_get_config
    - gf_crc_32
    - AMediaFormat_delete
    - gf_filter_get_udta
    - gf_list_insert
    - gf_filter_pid_copy_properties
    - mcdec_register_hevc_param_set
    - GF_LOG
    - gf_list_del_item
    - gf_odf_avc_cfg_read
    - gf_filter_pid_set_property
    - gf_odf_hevc_cfg_del
    - AMediaCodec_delete
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - mcdec_register_avc_param_set
    - mcdec_reset_ps_list
    - glGenTextures
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mcdec_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_mediacodec.c:739,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:741,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dec_mediacodec.c:743,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dec_mediacodec.c:744,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 4
    argNames:
    - bs
    - ps
    - active_ps
    - all
    argTypes:
    - GF_BitStream*
    - GF_List*
    - s32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 748
      start: 735
    functionDepth: 6
    functionLinenumber: 735
    functionLinenumberEnd: 748
    functionName: mcdec_write_ps
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_bs_write_data
    - gf_bs_write_u32
    linkageType: ''
    returnType: void
    signature: void mcdec_write_ps(GF_BitStream *bs, GF_List *ps, s32 active_ps, Bool
      all)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_mediacodec.c:763,1
    - Dst: mcdec_write_ps
      Src: /src/gpac/src/filters/dec_mediacodec.c:768,1
    - Dst: mcdec_write_ps
      Src: /src/gpac/src/filters/dec_mediacodec.c:769,1
    - Dst: mcdec_write_ps
      Src: /src/gpac/src/filters/dec_mediacodec.c:770,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dec_mediacodec.c:789,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dec_mediacodec.c:790,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dec_mediacodec.c:799,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_mediacodec.c:800,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 5
    argNames:
    - ctx
    - inBuffer
    - inBufferLength
    - out_buffer
    - out_size
    argTypes:
    - GF_MCDecCtx*
    - u8*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 802
      start: 751
    functionDepth: 9
    functionLinenumber: 751
    functionLinenumberEnd: 802
    functionName: mcdec_rewrite_annex_b
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_del
    - gf_bs_write_data
    - mcdec_write_ps
    - gf_bs_write_u32
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mcdec_rewrite_annex_b(GF_MCDecCtx *ctx, u8 *inBuffer, u32 inBufferLength,
      u8 **out_buffer, u32 *out_size)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_mediacodec.c:808,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dec_mediacodec.c:811,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/filters/dec_mediacodec.c:815,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_mediacodec.c:816,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_mediacodec.c:817,1
    - Dst: gf_avc_parse_nalu
      Src: /src/gpac/src/filters/dec_mediacodec.c:821,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dec_mediacodec.c:822,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:828,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_mediacodec.c:836,1
    - Dst: gf_hevc_parse_nalu_bs
      Src: /src/gpac/src/filters/dec_mediacodec.c:844,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dec_mediacodec.c:845,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:851,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_mediacodec.c:867,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 51
    argCount: 3
    argNames:
    - ctx
    - inBuffer
    - inBufferLength
    argTypes:
    - GF_MCDecCtx*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 869
      start: 804
    functionDepth: 7
    functionLinenumber: 804
    functionLinenumberEnd: 869
    functionName: mcdec_check_ps_state
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_enable_emulation_byte_removal
    - gf_bs_seek
    - GF_LOG
    - gf_hevc_parse_nalu_bs
    - gf_bs_get_position
    - gf_bs_del
    - gf_bs_read_int
    - gf_avc_parse_nalu
    - gf_bs_available
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mcdec_check_ps_state(GF_MCDecCtx *ctx, u8 *inBuffer, u32 inBufferLength)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_mediacodec.c:880,1
    - Dst: gf_register_before_exit_function
      Src: /src/gpac/src/filters/dec_mediacodec.c:891,1
    - Dst: gf_th_current
      Src: /src/gpac/src/filters/dec_mediacodec.c:891,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:892,1
    - Dst: gf_th_current
      Src: /src/gpac/src/filters/dec_mediacodec.c:892,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_mediacodec.c:899,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mediacodec.c:904,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_mediacodec.c:906,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_mediacodec.c:908,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dec_mediacodec.c:915,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dec_mediacodec.c:915,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_mediacodec.c:915,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_mediacodec.c:927,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_mediacodec.c:928,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_mediacodec.c:929,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_mediacodec.c:931,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_mediacodec.c:932,1
    - Dst: mcdec_check_ps_state
      Src: /src/gpac/src/filters/dec_mediacodec.c:936,1
    - Dst: AMediaCodec_flush
      Src: /src/gpac/src/filters/dec_mediacodec.c:941,1
    - Dst: AMediaCodec_stop
      Src: /src/gpac/src/filters/dec_mediacodec.c:942,1
    - Dst: mcdec_init_decoder
      Src: /src/gpac/src/filters/dec_mediacodec.c:944,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:946,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dec_mediacodec.c:946,1
    - Dst: AMediaCodec_dequeueInputBuffer
      Src: /src/gpac/src/filters/dec_mediacodec.c:953,1
    - Dst: AMediaCodec_getInputBuffer
      Src: /src/gpac/src/filters/dec_mediacodec.c:961,1
    - Dst: mcdec_rewrite_annex_b
      Src: /src/gpac/src/filters/dec_mediacodec.c:965,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:975,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_mediacodec.c:976,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_mediacodec.c:981,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_mediacodec.c:982,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_mediacodec.c:983,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:985,1
    - Dst: AMediaCodec_queueInputBuffer
      Src: /src/gpac/src/filters/dec_mediacodec.c:990,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:991,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:995,1
    - Dst: AMediaCodec_dequeueOutputBuffer
      Src: /src/gpac/src/filters/dec_mediacodec.c:1003,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:1007,1
    - Dst: AMediaCodec_getOutputFormat
      Src: /src/gpac/src/filters/dec_mediacodec.c:1008,1
    - Dst: AMediaFormat_getInt32
      Src: /src/gpac/src/filters/dec_mediacodec.c:1009,1
    - Dst: AMediaFormat_getInt32
      Src: /src/gpac/src/filters/dec_mediacodec.c:1010,1
    - Dst: AMediaFormat_getInt32
      Src: /src/gpac/src/filters/dec_mediacodec.c:1011,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:1019,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:1023,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:1033,1
    - Dst: AMediaCodec_getOutputBuffer
      Src: /src/gpac/src/filters/dec_mediacodec.c:1039,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:1043,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:1047,1
    - Dst: mcdec_send_frame
      Src: /src/gpac/src/filters/dec_mediacodec.c:1049,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_mediacodec.c:1055,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 129
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1057
      start: 873
    functionDepth: 11
    functionLinenumber: 873
    functionLinenumberEnd: 1057
    functionName: mcdec_process
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - AMediaCodec_stop
    - mcdec_send_frame
    - AMediaCodec_dequeueInputBuffer
    - gf_list_count
    - AMediaCodec_getOutputBuffer
    - AMediaCodec_flush
    - gf_filter_pid_get_packet
    - gf_list_get
    - gf_assert
    - mcdec_init_decoder
    - memcpy
    - gf_register_before_exit_function
    - gf_filter_pck_get_cts
    - gf_filter_get_udta
    - gf_th_current
    - AMediaCodec_getInputBuffer
    - gf_filter_pid_drop_packet
    - GF_LOG
    - gf_filter_pck_get_data
    - AMediaCodec_queueInputBuffer
    - mcdec_rewrite_annex_b
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_timescale
    - gf_error_to_string
    - gf_filter_pid_is_eos
    - gf_timestamp_rescale
    - AMediaFormat_getInt32
    - AMediaCodec_dequeueOutputBuffer
    - mcdec_check_ps_state
    - gf_filter_pck_get_dts
    - AMediaCodec_getOutputFormat
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mcdec_process(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/dec_mediacodec.c:1061,1
    - Dst: AMediaCodec_releaseOutputBuffer
      Src: /src/gpac/src/filters/dec_mediacodec.c:1066,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:1067,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_mediacodec.c:1071,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - filter
    - pid
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1072
      start: 1059
    functionDepth: 1
    functionLinenumber: 1059
    functionLinenumberEnd: 1072
    functionName: mcdec_hw_del
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_frame_interface
    - gf_list_add
    - GF_LOG
    - AMediaCodec_releaseOutputBuffer
    linkageType: ''
    returnType: void
    signature: void mcdec_hw_del(GF_Filter *filter, GF_FilterPid *pid, GF_FilterPacket
      *pck)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: AMediaCodec_getOutputFormat
      Src: /src/gpac/src/filters/dec_mediacodec.c:1080,1
    - Dst: AMediaFormat_getInt32
      Src: /src/gpac/src/filters/dec_mediacodec.c:1082,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 4
    argNames:
    - frame
    - plane_idx
    - outPlane
    - outStride
    argTypes:
    - GF_FilterFrameInterface*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1101
      start: 1074
    functionDepth: 0
    functionLinenumber: 1074
    functionLinenumberEnd: 1101
    functionName: mcdec_hw_get_plane
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached:
    - AMediaFormat_getInt32
    - AMediaCodec_getOutputFormat
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mcdec_hw_get_plane(GF_FilterFrameInterface *frame, u32 plane_idx,
      const u8 **outPlane, u32 *outStride)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: AMediaCodec_releaseOutputBuffer
      Src: /src/gpac/src/filters/dec_mediacodec.c:1114,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:1115,1
    - Dst: mcdec_update_surface
      Src: /src/gpac/src/filters/dec_mediacodec.c:1118,1
    - Dst: mcdec_get_transform_matrix
      Src: /src/gpac/src/filters/dec_mediacodec.c:1119,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 5
    argNames:
    - frame
    - plane_idx
    - gl_tex_format
    - gl_tex_id
    - texcoordmatrix
    argTypes:
    - GF_FilterFrameInterface*
    - u32
    - u32*
    - u32*
    - GF_Matrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1124
      start: 1103
    functionDepth: 1
    functionLinenumber: 1103
    functionLinenumberEnd: 1124
    functionName: mcdec_hw_get_gl_texture
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached:
    - mcdec_get_transform_matrix
    - GF_LOG
    - AMediaCodec_releaseOutputBuffer
    - mcdec_update_surface
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mcdec_hw_get_gl_texture(GF_FilterFrameInterface *frame, u32
      plane_idx, u32 *gl_tex_format, u32 *gl_tex_id, GF_Matrix * texcoordmatrix)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dec_mediacodec.c:1133,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_mediacodec.c:1135,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_mediacodec.c:1138,1
    - Dst: gf_filter_pck_new_frame_interface
      Src: /src/gpac/src/filters/dec_mediacodec.c:1158,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dec_mediacodec.c:1162,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_mediacodec.c:1165,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 3
    argNames:
    - ctx
    - frame_buffer
    - cts
    argTypes:
    - GF_MCDecCtx*
    - u8*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1169
      start: 1126
    functionDepth: 2
    functionLinenumber: 1126
    functionLinenumberEnd: 1169
    functionName: mcdec_send_frame
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_list_pop_front
    - gf_filter_pck_set_cts
    - memset
    - gf_filter_pck_new_frame_interface
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mcdec_send_frame(GF_MCDecCtx *ctx, u8 *frame_buffer, u64 cts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_mediacodec.c:1173,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_mediacodec.c:1176,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_mediacodec.c:1177,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_mediacodec.c:1179,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_mediacodec.c:1180,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_mediacodec.c:1181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1188
      start: 1171
    functionDepth: 1
    functionLinenumber: 1171
    functionLinenumberEnd: 1188
    functionName: mcdec_initialize
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mcdec_initialize(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_mediacodec.c:1192,1
    - Dst: AMediaFormat_delete
      Src: /src/gpac/src/filters/dec_mediacodec.c:1194,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:1195,1
    - Dst: AMediaCodec_delete
      Src: /src/gpac/src/filters/dec_mediacodec.c:1198,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec.c:1199,1
    - Dst: ANativeWindow_release
      Src: /src/gpac/src/filters/dec_mediacodec.c:1203,1
    - Dst: mcdec_delete_surface
      Src: /src/gpac/src/filters/dec_mediacodec.c:1208,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/filters/dec_mediacodec.c:1211,1
    - Dst: mcdec_reset_ps_list
      Src: /src/gpac/src/filters/dec_mediacodec.c:1213,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_mediacodec.c:1214,1
    - Dst: mcdec_reset_ps_list
      Src: /src/gpac/src/filters/dec_mediacodec.c:1215,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_mediacodec.c:1216,1
    - Dst: mcdec_reset_ps_list
      Src: /src/gpac/src/filters/dec_mediacodec.c:1217,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_mediacodec.c:1218,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_mediacodec.c:1220,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_mediacodec.c:1221,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_mediacodec.c:1222,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_mediacodec.c:1224,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_mediacodec.c:1225,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1226
      start: 1190
    functionDepth: 3
    functionLinenumber: 1190
    functionLinenumberEnd: 1226
    functionName: mcdec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - AMediaCodec_delete
    - GF_LOG
    - ANativeWindow_release
    - gf_list_count
    - mcdec_delete_surface
    - gf_list_del
    - mcdec_reset_ps_list
    - AMediaFormat_delete
    - glDeleteTextures
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void mcdec_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1232
      start: 1229
    functionDepth: 0
    functionLinenumber: 1229
    functionLinenumberEnd: 1232
    functionName: mcdec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mcdec_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1236
      start: 1233
    functionDepth: 0
    functionLinenumber: 1233
    functionLinenumberEnd: 1236
    functionName: mcdec_process
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mcdec_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1256
      start: 1255
    functionDepth: 0
    functionLinenumber: 1255
    functionLinenumberEnd: 1256
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1258
      start: 1257
    functionDepth: 0
    functionLinenumber: 1257
    functionLinenumberEnd: 1258
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/dec_mediacodec.c:1288,1
    - Dst: mcdec_configure_pid
      Src: /src/gpac/src/filters/dec_mediacodec.c:1297,1
    - Dst: mcdec_process
      Src: /src/gpac/src/filters/dec_mediacodec.c:1298,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1309
      start: 1285
    functionDepth: 12
    functionLinenumber: 1285
    functionLinenumberEnd: 1309
    functionName: mcdec_register
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec.c
    functionUses: 0
    functionsReached:
    - mcdec_process
    - gf_opts_get_bool
    - mcdec_configure_pid
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *mcdec_register(GF_FilterSession *session)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - state
    - msg
    argTypes:
    - GF_WCEncCtx*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 72
    functionName: wcenc_on_error
    functionSourceFile: /src/gpac/src/filters/enc_webcodec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT wcenc_on_error(GF_WCEncCtx *ctx, int state, char *msg)
  - BBCount: 62
    BranchProfiles: []
    Callsites:
    - Dst: UTF8ToString
      Src: /src/gpac/src/filters/enc_webcodec.c:75,1
    - Dst: startsWith
      Src: /src/gpac/src/filters/enc_webcodec.c:85,1
    - Dst: startsWith
      Src: /src/gpac/src/filters/enc_webcodec.c:88,1
    - Dst: startsWith
      Src: /src/gpac/src/filters/enc_webcodec.c:88,1
    - Dst: for
      Src: /src/gpac/src/filters/enc_webcodec.c:101,1
    - Dst: if
      Src: /src/gpac/src/filters/enc_webcodec.c:102,1
    - Dst: cwrap
      Src: /src/gpac/src/filters/enc_webcodec.c:106,1
    - Dst: cwrap
      Src: /src/gpac/src/filters/enc_webcodec.c:107,1
    - Dst: cwrap
      Src: /src/gpac/src/filters/enc_webcodec.c:108,1
    - Dst: cwrap
      Src: /src/gpac/src/filters/enc_webcodec.c:109,1
    - Dst: isConfigSupported
      Src: /src/gpac/src/filters/enc_webcodec.c:111,1
    - Dst: if
      Src: /src/gpac/src/filters/enc_webcodec.c:112,1
    - Dst: _to_webenc
      Src: /src/gpac/src/filters/enc_webcodec.c:113,1
    - Dst: _web_encs::push
      Src: /src/gpac/src/filters/enc_webcodec.c:115,1
    - Dst: if
      Src: /src/gpac/src/filters/enc_webcodec.c:118,1
    - Dst: log
      Src: /src/gpac/src/filters/enc_webcodec.c:121,1
    - Dst: _on_wcenc_config
      Src: /src/gpac/src/filters/enc_webcodec.c:129,1
    - Dst: _on_wcenc_frame
      Src: /src/gpac/src/filters/enc_webcodec.c:136,1
    - Dst: BigInt
      Src: /src/gpac/src/filters/enc_webcodec.c:136,1
    - Dst: enc_class::enc_class
      Src: /src/gpac/src/filters/enc_webcodec.c:139,1
    - Dst: _on_wcenc_error
      Src: /src/gpac/src/filters/enc_webcodec.c:147,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/enc_webcodec.c:156,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/enc_webcodec.c:160,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/enc_webcodec.c:165,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_webcodec.c:168,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_webcodec.c:170,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_webcodec.c:173,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filters/enc_webcodec.c:180,1
    - Dst: strchr
      Src: /src/gpac/src/filters/enc_webcodec.c:182,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filters/enc_webcodec.c:185,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/enc_webcodec.c:195,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/enc_webcodec.c:196,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/enc_webcodec.c:200,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/enc_webcodec.c:201,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/enc_webcodec.c:201,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/enc_webcodec.c:202,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/enc_webcodec.c:203,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/enc_webcodec.c:204,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/enc_webcodec.c:214,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/enc_webcodec.c:214,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/enc_webcodec.c:215,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/enc_webcodec.c:215,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_webcodec.c:219,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_webcodec.c:223,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_webcodec.c:229,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_webcodec.c:237,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_webcodec.c:239,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_webcodec.c:245,1
    - Dst: gf_pixel_fmt_is_yuv
      Src: /src/gpac/src/filters/enc_webcodec.c:261,1
    - Dst: gf_pixel_fmt_is_transparent
      Src: /src/gpac/src/filters/enc_webcodec.c:262,1
    - Dst: gf_pixel_fmt_is_transparent
      Src: /src/gpac/src/filters/enc_webcodec.c:264,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/enc_webcodec.c:269,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/enc_webcodec.c:269,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/enc_webcodec.c:273,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_webcodec.c:276,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_webcodec.c:282,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_webcodec.c:288,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_webcodec.c:294,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/enc_webcodec.c:313,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/enc_webcodec.c:313,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/enc_webcodec.c:316,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/enc_webcodec.c:323,1
    - Dst: gf_codecid_4cc_type
      Src: /src/gpac/src/filters/enc_webcodec.c:324,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/enc_webcodec.c:326,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/enc_webcodec.c:326,1
    - Dst: strncat
      Src: /src/gpac/src/filters/enc_webcodec.c:329,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/enc_webcodec.c:333,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/enc_webcodec.c:336,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/enc_webcodec.c:339,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/enc_webcodec.c:342,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/enc_webcodec.c:348,1
    - Dst: strlwr
      Src: /src/gpac/src/filters/enc_webcodec.c:352,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 218
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 74
    functionDepth: 5
    functionLinenumber: 74
    functionLinenumberEnd: 368
    functionName: EM_JS
    functionSourceFile: /src/gpac/src/filters/enc_webcodec.c
    functionUses: 0
    functionsReached:
    - for
    - strcpy
    - _to_webenc
    - BigInt
    - gf_filter_pid_check_caps
    - _on_wcenc_frame
    - strchr
    - gf_filter_pid_new
    - gf_4cc_to_str
    - gf_pixel_fmt_is_yuv
    - strncat
    - strlwr
    - if
    - gf_codecid_parse
    - PROP_BOOL
    - log
    - gf_audio_fmt_bit_depth
    - gf_filter_get_udta
    - enc_class::enc_class
    - gf_filter_pid_copy_properties
    - UTF8ToString
    - GF_LOG
    - gf_filter_pid_negotiate_property
    - gf_codecid_4cc_type
    - startsWith
    - _web_encs::push
    - strncpy
    - gf_filter_pid_set_property
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - cwrap
    - gf_filter_pid_set_framing_mode
    - _on_wcenc_error
    - gf_pixel_fmt_is_transparent
    - _on_wcenc_config
    - gf_pixel_get_size_info
    - isConfigSupported
    linkageType: ''
    returnType: void
    signature: "void EM_JS(int, wcenc_init, (int wc_ctx, int _codec_str, int bitrate,
      int width, int height, double FPS, int realtime, int sample_rate, int num_channels),
      {\n\tlet codec_str = _codec_str ? UTF8ToString(_codec_str) : null;\n\tlet config
      = {};\n\tconfig.codec = codec_str;\n\tlet enc_class = null;\n\tif (width) {\n\t\tconfig.width
      = width;\n\t\tconfig.height = height;\n\t\tconfig.framerate = FPS;\n\t\tconfig.latency
      = realtime ?  \"realtime\" : \"quality\";\n\t\tenc_class = VideoEncoder;\n\t\tif
      (codec_str.startsWith(\"avc\")) {\n\t\t\tconfig.avc = { format: \"annexb\" };\n\t\t}\n\t\telse
      if (codec_str.startsWith(\"hvc1\") || codec_str.startsWith(\"hev1\")) {\n\t\t\tconfig.hevc
      = { format: \"annexb\" };\n\t\t}\n\t} else {\n\t\tconfig.sampleRate = sample_rate;\n\t\tconfig.numberOfChannels
      = num_channels;\n\t\tenc_class = AudioEncoder;\n\t}\n\tconfig.bitrate = bitrate;\n\n\tif
      (typeof libgpac._to_webenc != 'function') {\n\t\tlibgpac._web_encs = [];\n\t\tlibgpac._to_webenc
      = (ctx) => {\n\t\t  for (let i=0; i<libgpac._web_encs.length; i++) {\n\t\t\tif
      (libgpac._web_encs[i]._wc_ctx==ctx) return libgpac._web_encs[i];\n\t\t  }\n\t\t
      \ return null;\n\t\t};\n\t\tlibgpac._on_wcenc_error = cwrap('wcenc_on_error',
      null, ['number', 'number', 'string']);\n\t\tlibgpac._on_wcenc_config = cwrap('wcenc_on_config',
      null, ['number', 'number']);\n\t\tlibgpac._on_wcenc_frame = cwrap('wcenc_on_frame',
      null, ['number', 'bigint', 'number', 'number', 'number']);\n\t\tlibgpac._on_wcenc_flush
      = cwrap('wcenc_on_flush', null, ['number']);\n\t}\n\tenc_class.isConfigSupported(config).then(
      supported => {\n\t\tif (supported.supported) {\n\t\t\tlet c = libgpac._to_webenc(wc_ctx);\n\t\t\tif
      (!c) {\n\t\t\t\tc = {_wc_ctx: wc_ctx, enc: null, _frame: null};\n\t\t\t\tlibgpac._web_encs.push(c);\n\t\t\t}\n\t\t\tif
      (!c.enc) {\n\t\t\t\tlet init_info = {\n\t\t\t\t\terror: (e) => {\n\t\t\t\t\t\tconsole.log(e.message);\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t\tinit_info.output
      = (chunk, metadata) => {\n\t\t\t\t\tlet dsize = metadata.decoderConfig || null;\n\t\t\t\t\tif
      (dsize) dsize = dsize.description || null;\n\t\t\t\t\tif (dsize) dsize = dsize.byteLength
      || 0;\n\t\t\t\t\tif (dsize) {\n\t\t\t\t\t\tc.decoderConfig = metadata.decoderConfig.description;\n\t\t\t\t\t\tlibgpac._on_wcenc_config(c._wc_ctx,
      c.decoderConfig.byteLength);\n\t\t\t\t\t\tc.decoderConfig = null;\n\t\t\t\t\t}\n\t\t\t\t\tc.chunk
      = chunk;\n\t\t\t\t\tlet sap = 1;\n\t\t\t\t\tif (typeof chunk.type != 'undefined')
      sap = (chunk.type==\"key\") ? 1 : 0;\n\t\t\t\t\tlibgpac._on_wcenc_frame(c._wc_ctx,
      BigInt(chunk.timestamp), chunk.duration, chunk.byteLength, sap);\n\t\t\t\t\tc.chunk
      = null;\n\t\t\t\t};\n\t\t\t\tc.enc = new enc_class(init_info);\n\t\t\t}\n\t\t\tc.enc.configure(config);\n\t\t\tlibgpac._on_wcenc_error(wc_ctx,
      0, null);\n\t\t} else {\n\t\t\tlibgpac._on_wcenc_error(wc_ctx, 1, \"Not Supported\");\n\t\t}\n\t}).catch(
      (e) => {\n\t\tlibgpac._on_wcenc_error(wc_ctx, 1, \"\"+e);\n\t});\n})"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _to_webenc
      Src: /src/gpac/src/filters/enc_webcodec.c:373,1
    - Dst: UTF8ToString
      Src: /src/gpac/src/filters/enc_webcodec.c:375,1
    - Dst: Uint8Array::Uint8Array
      Src: /src/gpac/src/filters/enc_webcodec.c:378,1
    - Dst: Number
      Src: /src/gpac/src/filters/enc_webcodec.c:384,1
    - Dst: layout::push
      Src: /src/gpac/src/filters/enc_webcodec.c:400,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 372
    functionDepth: 0
    functionLinenumber: 372
    functionLinenumberEnd: 401
    functionName: EM_JS
    functionSourceFile: /src/gpac/src/filters/enc_webcodec.c
    functionUses: 0
    functionsReached:
    - Number
    - UTF8ToString
    - _to_webenc
    - layout::push
    - Uint8Array::Uint8Array
    linkageType: ''
    returnType: void
    signature: "void EM_JS(int, wcenc_encode_frame, (int wc_ctx, u32 w, u32 h, u32
      uv_h, int _format, u64 ts, u32 dur, u32 planes, u32 stride1, u32 stride2, u32
      sap, int buf, u32 buf_size), {\n\tlet c = libgpac._to_webenc(wc_ctx);\n\tif
      (!c || !buf || !_format) return;\n\tlet format = UTF8ToString(_format);\n\n\t//setup
      source frame\n\tlet ab = new Uint8Array(HEAPU8.buffer, buf, buf_size);\n\tlet
      vbinit = {\n\t\tformat: format,\n\t\tlayout: [],\n\t\tcodedWidth: w,\n\t\tcodedHeight:
      h,\n\t\ttimestamp: Number(ts),\n\t\tduration: dur,\n\t};\n\tlet offset=0;\n\tfor
      (let i=0; i<planes; i++)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/enc_webcodec.c:431,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_WCEncCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 428
    functionDepth: 1
    functionLinenumber: 428
    functionLinenumberEnd: 432
    functionName: wcenc_on_flush
    functionSourceFile: /src/gpac/src/filters/enc_webcodec.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_eos
    linkageType: ''
    returnType: void
    signature: void wcenc_on_flush(GF_WCEncCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _to_webenc
      Src: /src/gpac/src/filters/enc_webcodec.c:435,1
    - Dst: flush
      Src: /src/gpac/src/filters/enc_webcodec.c:435,1
    - Dst: _on_wcenc_flush
      Src: /src/gpac/src/filters/enc_webcodec.c:437,1
    - Dst: _on_wcenc_flush
      Src: /src/gpac/src/filters/enc_webcodec.c:437,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 434
    functionDepth: 0
    functionLinenumber: 434
    functionLinenumberEnd: 437
    functionName: EM_JS
    functionSourceFile: /src/gpac/src/filters/enc_webcodec.c
    functionUses: 0
    functionsReached:
    - flush
    - _to_webenc
    - _on_wcenc_flush
    linkageType: ''
    returnType: void
    signature: "void EM_JS(int, wcenc_flush, (int wc_ctx), {\n\tlet c = libgpac._to_webenc(wc_ctx);\n\tif
      (!c || !c.enc) return;\n\tc.enc.flush().then( () => {libgpac._on_wcenc_flush(c._wc_ctx);
      }).catch ( (e)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/enc_webcodec.c:447,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/enc_webcodec.c:456,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/enc_webcodec.c:458,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/enc_webcodec.c:464,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/enc_webcodec.c:473,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/enc_webcodec.c:475,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/enc_webcodec.c:478,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/enc_webcodec.c:479,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/enc_webcodec.c:479,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/enc_webcodec.c:481,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/enc_webcodec.c:482,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/enc_webcodec.c:494,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/enc_webcodec.c:498,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_webcodec.c:511,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_webcodec.c:520,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/enc_webcodec.c:534,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 70
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 539
      start: 441
    functionDepth: 1
    functionLinenumber: 441
    functionLinenumberEnd: 539
    functionName: wcenc_process
    functionSourceFile: /src/gpac/src/filters/enc_webcodec.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_property
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_ask_rt_reschedule
    - gf_list_count
    - gf_list_add
    - gf_filter_pck_ref_props
    - gf_filter_pck_get_cts
    - gf_filter_pid_is_eos
    - gf_timestamp_rescale
    - gf_filter_pid_get_packet
    - gf_filter_post_process_task
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err wcenc_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _to_webenc
      Src: /src/gpac/src/filters/enc_webcodec.c:542,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 541
    functionDepth: 0
    functionLinenumber: 541
    functionLinenumberEnd: 546
    functionName: EM_JS
    functionSourceFile: /src/gpac/src/filters/enc_webcodec.c
    functionUses: 0
    functionsReached:
    - _to_webenc
    linkageType: ''
    returnType: void
    signature: "void EM_JS(int, wcenc_get_config, (int wc_ctx, int buf, int buf_size),
      {\n\tlet c = libgpac._to_webenc(wc_ctx);\n\tif (!c || !c.decoderConfig)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/enc_webcodec.c:555,1
    - Dst: memset
      Src: /src/gpac/src/filters/enc_webcodec.c:556,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/enc_webcodec.c:558,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/enc_webcodec.c:560,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/enc_webcodec.c:560,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/enc_webcodec.c:563,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - size
    argTypes:
    - GF_WCEncCtx*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 552
    functionDepth: 1
    functionLinenumber: 552
    functionLinenumberEnd: 565
    functionName: wcenc_on_config
    functionSourceFile: /src/gpac/src/filters/enc_webcodec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_crc_32
    - memset
    - PROP_DATA_NO_COPY
    - gf_filter_pid_set_property
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT wcenc_on_config(GF_WCEncCtx *ctx, int size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _to_webenc
      Src: /src/gpac/src/filters/enc_webcodec.c:568,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 567
    functionDepth: 0
    functionLinenumber: 567
    functionLinenumberEnd: 572
    functionName: EM_JS
    functionSourceFile: /src/gpac/src/filters/enc_webcodec.c
    functionUses: 0
    functionsReached:
    - _to_webenc
    linkageType: ''
    returnType: void
    signature: "void EM_JS(int, wcenc_get_frame, (int wc_ctx, int buf, int buf_size),
      {\n\tlet c = libgpac._to_webenc(wc_ctx);\n\tif (!c || !c.chunk)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/enc_webcodec.c:585,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/enc_webcodec.c:590,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/enc_webcodec.c:592,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/enc_webcodec.c:594,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/enc_webcodec.c:595,1
    - Dst: ABS
      Src: /src/gpac/src/filters/enc_webcodec.c:596,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/enc_webcodec.c:597,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/enc_webcodec.c:601,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/enc_webcodec.c:607,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/enc_webcodec.c:609,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/enc_webcodec.c:610,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/enc_webcodec.c:611,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/enc_webcodec.c:613,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/enc_webcodec.c:614,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/enc_webcodec.c:617,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/enc_webcodec.c:618,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/enc_webcodec.c:619,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 5
    argNames:
    - ctx
    - timestamp
    - duration
    - size
    - is_key
    argTypes:
    - GF_WCEncCtx*
    - u64
    - u32
    - u32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 578
    functionDepth: 3
    functionLinenumber: 578
    functionLinenumberEnd: 622
    functionName: wcenc_on_frame
    functionSourceFile: /src/gpac/src/filters/enc_webcodec.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - ABS
    - gf_filter_pck_new_alloc
    - gf_filter_pck_set_byte_offset
    - gf_list_pop_back
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - gf_list_count
    - gf_filter_pck_get_cts
    - gf_filter_pck_set_sap
    - gf_timestamp_rescale
    - gf_list_rem
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT wcenc_on_frame(GF_WCEncCtx *ctx, u64 timestamp, u32 duration,
      u32 size, int is_key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/enc_webcodec.c:628,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/enc_webcodec.c:630,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 626
    functionDepth: 1
    functionLinenumber: 626
    functionLinenumberEnd: 632
    functionName: wcenc_initialize
    functionSourceFile: /src/gpac/src/filters/enc_webcodec.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err wcenc_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/enc_webcodec.c:648,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/enc_webcodec.c:651,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/enc_webcodec.c:652,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/enc_webcodec.c:653,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/enc_webcodec.c:655,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 646
    functionDepth: 3
    functionLinenumber: 646
    functionLinenumberEnd: 656
    functionName: wcenc_finalize
    functionSourceFile: /src/gpac/src/filters/enc_webcodec.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_back
    - gf_filter_pck_unref
    - gf_list_count
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void wcenc_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 676
    functionDepth: 0
    functionLinenumber: 676
    functionLinenumberEnd: 679
    functionName: wcenc_configure_pid
    functionSourceFile: /src/gpac/src/filters/enc_webcodec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err wcenc_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 683
      start: 680
    functionDepth: 0
    functionLinenumber: 680
    functionLinenumberEnd: 683
    functionName: wcenc_process
    functionSourceFile: /src/gpac/src/filters/enc_webcodec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err wcenc_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 701
      start: 700
    functionDepth: 0
    functionLinenumber: 700
    functionLinenumberEnd: 701
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/enc_webcodec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: EM_ASM_INT
      Src: /src/gpac/src/filters/enc_webcodec.c:736,1
    - Dst: EM_ASM_INT
      Src: /src/gpac/src/filters/enc_webcodec.c:740,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_webcodec.c:746,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_webcodec.c:756,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/enc_webcodec.c:758,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 766
      start: 732
    functionDepth: 6
    functionLinenumber: 732
    functionLinenumberEnd: 766
    functionName: wcenc_register
    functionSourceFile: /src/gpac/src/filters/enc_webcodec.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_opts_get_bool
    - EM_ASM_INT
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *wcenc_register(GF_FilterSession *session)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:564,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:566,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 568
      start: 561
    functionDepth: 1
    functionLinenumber: 561
    functionLinenumberEnd: 568
    functionName: dasher_new_period
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_DasherPeriod
    signature: GF_DasherPeriod *dasher_new_period()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:580,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/filters/dasher.c:584,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:586,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:586,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 4
    argNames:
    - ds
    - dsi
    - SampleRate
    - Channels
    argTypes:
    - GF_DashStream*
    - GF_PropertyValue*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 594
      start: 571
    functionDepth: 4
    functionLinenumber: 571
    functionLinenumberEnd: 594
    functionName: dasher_get_audio_info_with_m4a_sbr_ps
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_m4a_get_config
    - GF_LOG
    - gf_error_to_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dasher_get_audio_info_with_m4a_sbr_ps(GF_DashStream *ds, const
      GF_PropertyValue *dsi, u32 *SampleRate, u32 *Channels)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_destination
      Src: /src/gpac/src/filters/dasher.c:601,1
    - Dst: gf_filter_pid_enum_destinations
      Src: /src/gpac/src/filters/dasher.c:604,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:605,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:611,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:613,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:615,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:623,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:623,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:625,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:625,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 598
    functionDepth: 3
    functionLinenumber: 598
    functionLinenumberEnd: 626
    functionName: dasher_ensure_outpath
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - PROP_STRING
    - gf_url_concatenate
    - strstr
    - gf_filter_pid_enum_destinations
    - gf_filter_pid_set_property
    - gf_filter_pid_get_destination
    linkageType: ''
    returnType: void
    signature: void dasher_ensure_outpath(GF_DasherCtx *ctx)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:640,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:648,1
    - Dst: gf_crypt_info_load
      Src: /src/gpac/src/filters/dasher.c:653,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:655,1
    - Dst: gf_crypt_info_del
      Src: /src/gpac/src/filters/dasher.c:659,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:666,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:668,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:670,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 54
    argCount: 2
    argNames:
    - ctx
    - ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 692
      start: 629
    functionDepth: 3
    functionLinenumber: 629
    functionLinenumberEnd: 692
    functionName: dasher_hls_setup_crypto
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_get_property
    - GF_LOG
    - gf_crypt_info_load
    - gf_list_count
    - gf_crypt_info_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dasher_hls_setup_crypto(GF_DasherCtx *ctx, GF_DashStream *ds)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:698,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:700,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:703,1
    - Dst: dasher_get_dep_bitrate
      Src: /src/gpac/src/filters/dasher.c:704,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - ctx
    - ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 694
    functionDepth: 2
    functionLinenumber: 694
    functionLinenumberEnd: 709
    functionName: dasher_get_dep_bitrate
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_find
    - dasher_get_dep_bitrate
    linkageType: ''
    returnType: u32
    signature: u32 dasher_get_dep_bitrate(GF_DasherCtx *ctx, GF_DashStream *ds)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:720,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dasher.c:720,1
    - Dst: dasher_get_dep_bitrate
      Src: /src/gpac/src/filters/dasher.c:747,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:749,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:751,1
    - Dst: dasher_update_bitrate
      Src: /src/gpac/src/filters/dasher.c:755,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 45
    argCount: 2
    argNames:
    - ctx
    - ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 711
    functionDepth: 3
    functionLinenumber: 711
    functionLinenumberEnd: 765
    functionName: dasher_update_bitrate
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - dasher_get_dep_bitrate
    - GF_LOG
    - gf_list_count
    - dasher_update_bitrate
    - gf_filter_pid_get_name
    linkageType: ''
    returnType: void
    signature: void dasher_update_bitrate(GF_DasherCtx *ctx, GF_DashStream *ds)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:772,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:777,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dasher.c:777,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:779,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dasher.c:779,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:783,1
    - Dst: dasher_flush_segment
      Src: /src/gpac/src/filters/dasher.c:791,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/dasher.c:796,1
    - Dst: dasher_update_period_duration
      Src: /src/gpac/src/filters/dasher.c:801,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dasher.c:807,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dasher.c:813,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:820,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:832,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:834,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:842,1
    - Dst: dasher_setup_period
      Src: /src/gpac/src/filters/dasher.c:844,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:851,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:857,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:859,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 79
    argCount: 4
    argNames:
    - filter
    - ctx
    - ds
    - is_new_period_request
    argTypes:
    - GF_Filter*
    - GF_DasherCtx*
    - GF_DashStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 869
      start: 768
    functionDepth: 2
    functionLinenumber: 768
    functionLinenumberEnd: 869
    functionName: dasher_stream_period_changed
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property_str
    - dasher_setup_period
    - GF_LOG
    - dasher_flush_segment
    - gf_list_find
    - gf_filter_pid_set_eos
    - dasher_update_period_duration
    - gf_list_count
    - gf_timestamp_less
    - strcmp
    - gf_list_add
    - gf_list_rem
    - gf_filter_pid_get_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dasher_stream_period_changed(GF_Filter *filter, GF_DasherCtx
      *ctx, GF_DashStream *ds, Bool is_new_period_request)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:874,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - ctx
    - ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 888
      start: 871
    functionDepth: 0
    functionLinenumber: 871
    functionLinenumberEnd: 888
    functionName: dasher_get_dash_dur
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    linkageType: ''
    returnType: void
    signature: void dasher_get_dash_dur(GF_DasherCtx *ctx, GF_DashStream *ds)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dasher.c:895,1
    - Dst: dasher_get_dash_dur
      Src: /src/gpac/src/filters/dasher.c:897,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dasher.c:914,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 2
    argNames:
    - ctx
    - ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 916
      start: 890
    functionDepth: 1
    functionLinenumber: 890
    functionLinenumberEnd: 916
    functionName: dasher_send_transport_hints
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - dasher_get_dash_dur
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: void
    signature: void dasher_send_transport_hints(GF_DasherCtx *ctx, GF_DashStream *ds)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:921,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:922,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:923,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:924,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:925,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 927
      start: 918
    functionDepth: 0
    functionLinenumber: 918
    functionLinenumberEnd: 927
    functionName: dasher_template_use_source_url
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - strstr
    linkageType: ''
    returnType: Bool
    signature: Bool dasher_template_use_source_url(const char *template)
  - BBCount: 30
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 36
    argCount: 4
    argNames:
    - cbk
    - prop_4cc
    - prop_name
    - src_prop
    argTypes:
    - void*
    - u32
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 967
      start: 929
    functionDepth: 0
    functionLinenumber: 929
    functionLinenumberEnd: 967
    functionName: dasher_merge_prop
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool dasher_merge_prop(void *cbk, u32 prop_4cc, const char *prop_name,
      const GF_PropertyValue *src_prop)
  - BBCount: 182
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dasher.c:982,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dasher.c:985,1
    - Dst: dasher_update_bitrate
      Src: /src/gpac/src/filters/dasher.c:987,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dasher.c:988,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dasher.c:989,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:992,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:994,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dasher.c:1004,1
    - Dst: dasher_reset_stream
      Src: /src/gpac/src/filters/dasher.c:1005,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1006,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dasher.c:1019,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dasher.c:1020,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dasher.c:1027,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/filters/dasher.c:1028,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dasher.c:1031,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/filters/dasher.c:1031,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:1035,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dasher.c:1036,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dasher.c:1038,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dasher.c:1040,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dasher.c:1043,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dasher.c:1048,1
    - Dst: gf_fileio_factory
      Src: /src/gpac/src/filters/dasher.c:1052,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1053,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:1054,1
    - Dst: gf_filter_connect_destination
      Src: /src/gpac/src/filters/dasher.c:1058,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:1060,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:1060,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1061,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1064,1
    - Dst: gf_filter_reset_source
      Src: /src/gpac/src/filters/dasher.c:1068,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:1069,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/dasher.c:1069,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/dasher.c:1070,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dasher.c:1072,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dasher.c:1073,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:1075,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1076,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:1076,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:1078,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1079,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:1079,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:1082,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dasher.c:1089,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1090,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1091,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1092,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1093,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1094,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:1094,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1096,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:1096,1
    - Dst: dasher_ensure_outpath
      Src: /src/gpac/src/filters/dasher.c:1098,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/dasher.c:1100,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1102,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dasher.c:1107,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dasher.c:1109,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1119,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:1119,1
    - Dst: gf_filter_pid_disable_clone
      Src: /src/gpac/src/filters/dasher.c:1127,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1131,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:1131,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1132,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:1132,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1135,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1136,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:1136,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1137,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1138,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:1138,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1139,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1140,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:1140,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1142,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:1142,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1147,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dasher.c:1149,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1151,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1151,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1152,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1157,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:1159,1
    - Dst: ctx
      Src: /src/gpac/src/filters/dasher.c:1162,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dasher.c:1164,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dasher.c:1168,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1174,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:1174,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dasher.c:1182,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:1184,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:1187,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:1188,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dasher.c:1190,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:1194,1
    - Dst: dasher_send_transport_hints
      Src: /src/gpac/src/filters/dasher.c:1202,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dasher.c:1204,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dasher.c:1206,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dasher.c:1211,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dasher.c:1212,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1213,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:1213,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dasher.c:1219,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1271,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:1274,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1276,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:1277,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1288,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1295,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1298,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1299,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:1302,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dasher.c:1302,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1307,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1308,1
    - Dst: CHECK_PROP_FRAC
      Src: /src/gpac/src/filters/dasher.c:1310,1
    - Dst: CHECK_PROP_FRAC
      Src: /src/gpac/src/filters/dasher.c:1312,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1315,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1322,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1330,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1348,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1349,1
    - Dst: CHECK_PROPL
      Src: /src/gpac/src/filters/dasher.c:1350,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1365,1
    - Dst: CHECK_PROP_FRAC64
      Src: /src/gpac/src/filters/dasher.c:1366,1
    - Dst: CHECK_PROP_STR
      Src: /src/gpac/src/filters/dasher.c:1367,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1371,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:1372,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dasher.c:1372,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1373,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1375,1
    - Dst: gf_filter_pid_orig_src_args
      Src: /src/gpac/src/filters/dasher.c:1387,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dasher.c:1389,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:1389,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1395,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dasher.c:1397,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1411,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dasher.c:1413,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1416,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dasher.c:1417,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/dasher.c:1461,1
    - Dst: CHECK_PROP_STR
      Src: /src/gpac/src/filters/dasher.c:1469,1
    - Dst: CHECK_PROP_STR
      Src: /src/gpac/src/filters/dasher.c:1470,1
    - Dst: CHECK_PROP_BOOL
      Src: /src/gpac/src/filters/dasher.c:1471,1
    - Dst: CHECK_PROP_PROP
      Src: /src/gpac/src/filters/dasher.c:1472,1
    - Dst: CHECK_PROP_PROP
      Src: /src/gpac/src/filters/dasher.c:1473,1
    - Dst: CHECK_PROP_PROP
      Src: /src/gpac/src/filters/dasher.c:1474,1
    - Dst: CHECK_PROP_PROP
      Src: /src/gpac/src/filters/dasher.c:1475,1
    - Dst: CHECK_PROP_PROP
      Src: /src/gpac/src/filters/dasher.c:1476,1
    - Dst: CHECK_PROP_BOOL
      Src: /src/gpac/src/filters/dasher.c:1477,1
    - Dst: dasher_setup_profile
      Src: /src/gpac/src/filters/dasher.c:1484,1
    - Dst: dasher_update_bitrate
      Src: /src/gpac/src/filters/dasher.c:1490,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:1494,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:1495,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dasher.c:1495,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:1499,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dasher.c:1499,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:1509,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1511,1
    - Dst: dasher_get_dash_dur
      Src: /src/gpac/src/filters/dasher.c:1514,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1534,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1539,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:1540,1
    - Dst: gf_filter_pid_resolve_file_template
      Src: /src/gpac/src/filters/dasher.c:1543,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:1546,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1550,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:1551,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:1553,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:1553,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1554,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1560,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1562,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1568,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1572,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1576,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1580,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/dasher.c:1589,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/dasher.c:1596,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/dasher.c:1600,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:1602,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:1606,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/filters/dasher.c:1608,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1614,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/dasher.c:1617,1
    - Dst: dasher_get_audio_info_with_m4a_sbr_ps
      Src: /src/gpac/src/filters/dasher.c:1637,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:1640,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:1640,1
    - Dst: dasher_get_audio_info_with_m4a_sbr_ps
      Src: /src/gpac/src/filters/dasher.c:1643,1
    - Dst: gf_odf_ac3_cfg_parse
      Src: /src/gpac/src/filters/dasher.c:1650,1
    - Dst: gf_ac3_get_surround_channels
      Src: /src/gpac/src/filters/dasher.c:1653,1
    - Dst: gf_ac3_get_total_channels
      Src: /src/gpac/src/filters/dasher.c:1655,1
    - Dst: gf_eac3_get_chan_loc_count
      Src: /src/gpac/src/filters/dasher.c:1657,1
    - Dst: gf_ac3_get_channel_layout
      Src: /src/gpac/src/filters/dasher.c:1660,1
    - Dst: gf_odf_ac4_cfg_parse
      Src: /src/gpac/src/filters/dasher.c:1666,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:1667,1
    - Dst: gf_ac4_dolby_channel_count_from_channel_mask_v1
      Src: /src/gpac/src/filters/dasher.c:1670,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:1687,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:1689,1
    - Dst: gf_odf_ac4_cfg_clean_list
      Src: /src/gpac/src/filters/dasher.c:1699,1
    - Dst: gf_audio_fmt_get_layout_from_cicp
      Src: /src/gpac/src/filters/dasher.c:1707,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1718,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1726,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1727,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1731,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1736,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1740,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1744,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1747,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1750,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1753,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1756,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1759,1
    - Dst: gf_mpd_load_cues
      Src: /src/gpac/src/filters/dasher.c:1760,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:1768,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1770,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:1771,1
    CyclomaticComplexity: 208
    EdgeCount: 208
    ICount: 620
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1777
      start: 969
    functionDepth: 7
    functionLinenumber: 969
    functionLinenumberEnd: 1777
    functionName: dasher_configure_pid
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_avc_cfg_del
    - CHECK_PROPL
    - gf_file_basename
    - gf_list_get
    - gf_filter_get_udta
    - gf_fileio_resource_url
    - gf_eac3_get_chan_loc_count
    - strstr
    - gf_ac3_get_total_channels
    - gf_odf_ac4_cfg_clean_list
    - gf_list_del_item
    - gf_filter_pid_send_event
    - dasher_get_dash_dur
    - PROP_UINT
    - gf_filter_reset_source
    - CHECK_PROP_FRAC64
    - strcmp
    - gf_filter_pid_new
    - gf_filter_pid_orig_src_args
    - dasher_update_bitrate
    - gf_odf_hevc_cfg_read
    - snprintf
    - dasher_send_transport_hints
    - GF_FEVT_INIT
    - gf_fileio_factory
    - gf_list_add
    - gf_ac3_get_channel_layout
    - CHECK_PROP_BOOL
    - gf_crc_32
    - dasher_get_audio_info_with_m4a_sbr_ps
    - gf_filter_pid_get_property_str
    - gf_filter_set_source
    - dasher_setup_profile
    - gf_odf_hevc_cfg_del
    - gf_ac3_get_surround_channels
    - gf_filter_pid_get_udta
    - GF_SAFEALLOC
    - PROP_STRING
    - gf_filter_get_sep
    - CHECK_PROP_PROP
    - gf_list_count
    - gf_fileio_from_url
    - gf_sys_clock
    - gf_filter_pid_get_name
    - gf_strdup
    - gf_list_new
    - CHECK_PROP
    - gf_ac4_dolby_channel_count_from_channel_mask_v1
    - dasher_ensure_outpath
    - gf_media_mpd_format_segment_name
    - gf_odf_ac3_cfg_parse
    - gf_error_to_string
    - gf_odf_avc_cfg_read
    - strlen
    - gf_filter_pid_disable_clone
    - gf_filter_pid_caps_query
    - gf_filter_connect_destination
    - dasher_reset_stream
    - gf_filter_pid_set_udta
    - gf_audio_fmt_get_layout_from_cicp
    - strcat
    - ctx
    - memcpy
    - strncmp
    - gf_mpd_load_cues
    - gf_filter_pid_copy_properties
    - CHECK_PROP_FRAC
    - GF_LOG
    - gf_avc_read_sps
    - gf_filter_pid_resolve_file_template
    - gf_filter_pid_set_property
    - gf_malloc
    - gf_filter_pid_get_property
    - gf_filter_pid_set_framing_mode
    - gf_file_ext_start
    - CHECK_PROP_STR
    - gf_filter_pid_set_name
    - gf_odf_ac4_cfg_parse
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dasher_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _type
    - ','
    - _mem
    - ','
    - _e
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1227
      start: 1221
    functionDepth: 0
    functionLinenumber: 1221
    functionLinenumberEnd: 1227
    functionName: CHECK_PROP
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_PROP(_type, _mem, _e)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _type
    - ','
    - _mem
    - ','
    - _e
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1233
      start: 1227
    functionDepth: 0
    functionLinenumber: 1227
    functionLinenumberEnd: 1233
    functionName: CHECK_PROPL
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_PROPL(_type, _mem, _e)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _type
    - ','
    - _mem
    - ','
    - _e
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1239
      start: 1233
    functionDepth: 0
    functionLinenumber: 1233
    functionLinenumberEnd: 1239
    functionName: CHECK_PROP_BOOL
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_PROP_BOOL(_type, _mem, _e)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _type
    - ','
    - _mem
    - ','
    - _e
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1245
      start: 1239
    functionDepth: 0
    functionLinenumber: 1239
    functionLinenumberEnd: 1245
    functionName: CHECK_PROP_FRAC
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_PROP_FRAC(_type, _mem, _e)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _type
    - ','
    - _mem
    - ','
    - _e
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1251
      start: 1245
    functionDepth: 0
    functionLinenumber: 1245
    functionLinenumberEnd: 1251
    functionName: CHECK_PROP_FRAC64
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_PROP_FRAC64(_type, _mem, _e)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _type
    - ','
    - _mem
    - ','
    - _e
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1261
      start: 1252
    functionDepth: 0
    functionLinenumber: 1252
    functionLinenumberEnd: 1261
    functionName: CHECK_PROP_STR
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_PROP_STR(_type, _mem, _e)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _type
    - ','
    - _mem
    - ','
    - _e
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1270
      start: 1262
    functionDepth: 0
    functionLinenumber: 1262
    functionLinenumberEnd: 1270
    functionName: CHECK_PROP_PROP
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_PROP_PROP(_type, _mem, _e)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_get_descriptor
      Src: /src/gpac/src/filters/dasher.c:1960,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dasher.c:1963,1
    - Dst: gf_mpd_descriptor_free
      Src: /src/gpac/src/filters/dasher.c:1964,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1968,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:1969,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:1972,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:1974,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:1976,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - ctx
    - scheme_id
    - url
    argTypes:
    - GF_DasherCtx*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1977
      start: 1958
    functionDepth: 3
    functionLinenumber: 1958
    functionLinenumberEnd: 1977
    functionName: dasher_check_chaining
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mpd_descriptor_free
    - gf_strdup
    - gf_list_new
    - gf_list_add
    - gf_list_del_item
    - gf_mpd_get_descriptor
    - gf_mpd_descriptor_new
    linkageType: ''
    returnType: void
    signature: void dasher_check_chaining(GF_DasherCtx *ctx, char *scheme_id, char
      *url)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:1987,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:1989,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1990,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1991,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1992,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:2004,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2006,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:2010,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:2012,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2015,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:2017,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:2019,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:2021,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:2023,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:2025,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:2029,1
    - Dst: strncat
      Src: /src/gpac/src/filters/dasher.c:2030,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2035,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2036,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2037,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2040,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2041,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2042,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2045,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2046,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:2050,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2051,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:2054,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2055,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:2058,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2059,1
    - Dst: dasher_check_chaining
      Src: /src/gpac/src/filters/dasher.c:2081,1
    - Dst: dasher_check_chaining
      Src: /src/gpac/src/filters/dasher.c:2082,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dasher.c:2088,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dasher.c:2091,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dasher.c:2096,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 117
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2105
      start: 1980
    functionDepth: 4
    functionLinenumber: 1980
    functionLinenumberEnd: 2105
    functionName: dasher_update_mpd
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_strdup
    - dasher_check_chaining
    - strcpy
    - sprintf
    - strncat
    - gf_list_count
    - strcmp
    - gf_list_add
    - gf_xml_dom_create_attribute
    - gf_list_enum
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dasher_update_mpd(GF_DasherCtx *ctx)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_new
      Src: /src/gpac/src/filters/dasher.c:2110,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:2112,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2114,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2115,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2116,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2117,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2120,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:2125,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:2133,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2135,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2137,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dasher.c:2143,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filters/dasher.c:2144,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/dasher.c:2147,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/dasher.c:2148,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:2152,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2154,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2156,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2157,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/dasher.c:2158,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2158,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2158,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2159,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2160,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2166,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2166,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:2172,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2174,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2175,1
    - Dst: dasher_update_mpd
      Src: /src/gpac/src/filters/dasher.c:2178,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 64
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2179
      start: 2106
    functionDepth: 5
    functionLinenumber: 2106
    functionLinenumberEnd: 2179
    functionName: dasher_setup_mpd
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_list_get
    - gf_strdup
    - strrchr
    - snprintf
    - GF_SAFEALLOC
    - gf_fileio_translate_url
    - strncmp
    - gf_mpd_new
    - gf_list_add
    - gf_sys_old_arch_compat
    - dasher_update_mpd
    - gf_timestamp_rescale
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dasher_setup_mpd(GF_DasherCtx *ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2186,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:2188,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:2190,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2192,1
    - Dst: gf_filter_pid_get_rfc_6381_codec_string
      Src: /src/gpac/src/filters/dasher.c:2201,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 15
    argCount: 5
    argNames:
    - ctx
    - ds
    - szCodec
    - force_inband
    - force_sbr
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - char*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2202
      start: 2182
    functionDepth: 1
    functionLinenumber: 2182
    functionLinenumberEnd: 2202
    functionName: dasher_get_rfc_6381_codec_name
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_filter_pid_get_property
    - gf_filter_pid_get_rfc_6381_codec_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dasher_get_rfc_6381_codec_name(GF_DasherCtx *ctx, GF_DashStream
      *ds, char *szCodec, Bool force_inband, Bool force_sbr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:2207,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:2208,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2209,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2211,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2212,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:2216,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2217,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - list
    - name
    - value
    argTypes:
    - GF_List*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2220
      start: 2204
    functionDepth: 1
    functionLinenumber: 2204
    functionLinenumberEnd: 2220
    functionName: dasher_add_x_attribute
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_strdup
    - gf_list_count
    - strcmp
    - gf_list_add
    - gf_xml_dom_create_attribute
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dasher_add_x_attribute(GF_List* list, const char *name, const
      char *value)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2231,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2239,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dasher.c:2244,1
    - Dst: gf_odf_dovi_cfg_read_bs
      Src: /src/gpac/src/filters/dasher.c:2245,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dasher.c:2246,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:2248,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2253,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2254,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:2260,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dasher.c:2260,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:2263,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dasher.c:2263,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:2266,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dasher.c:2266,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/src/filters/dasher.c:2269,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:2274,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:2277,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:2279,1
    - Dst: dasher_add_x_attribute
      Src: /src/gpac/src/filters/dasher.c:2283,1
    - Dst: dasher_add_x_attribute
      Src: /src/gpac/src/filters/dasher.c:2284,1
    - Dst: dasher_add_x_attribute
      Src: /src/gpac/src/filters/dasher.c:2285,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2287,1
    - Dst: dasher_add_x_attribute
      Src: /src/gpac/src/filters/dasher.c:2288,1
    - Dst: dasher_add_x_attribute
      Src: /src/gpac/src/filters/dasher.c:2293,1
    - Dst: dasher_add_x_attribute
      Src: /src/gpac/src/filters/dasher.c:2295,1
    - Dst: dasher_add_x_attribute
      Src: /src/gpac/src/filters/dasher.c:2300,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/src/filters/dasher.c:2303,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 63
    argCount: 3
    argNames:
    - ctx
    - ds
    - force_inband
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2306
      start: 2222
    functionDepth: 3
    functionLinenumber: 2222
    functionLinenumberEnd: 2306
    functionName: dasher_add_dolby_vision_attribute
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_list_new
    - gf_filter_pid_get_property
    - gf_bs_new
    - snprintf
    - GF_LOG
    - gf_odf_dovi_cfg_del
    - sprintf
    - gf_bs_del
    - gf_odf_dovi_cfg_read_bs
    - dasher_add_x_attribute
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dasher_add_dolby_vision_attribute(GF_DasherCtx *ctx, GF_DashStream
      *ds, Bool force_inband)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:2312,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:2314,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - for_ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2319
      start: 2308
    functionDepth: 1
    functionLinenumber: 2308
    functionLinenumberEnd: 2319
    functionName: get_base_ds
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_DashStream
    signature: GF_DashStream *get_base_ds(GF_DasherCtx *ctx, GF_DashStream *for_ds)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:2326,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2327,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dasher.c:2327,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dasher.c:2328,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2329,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dasher.c:2329,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dasher.c:2330,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2331,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dasher.c:2331,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dasher.c:2332,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2333,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dasher.c:2333,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dasher.c:2334,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2335,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dasher.c:2335,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 2
    argNames:
    - URN
    - res
    argTypes:
    - bin128
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2336
      start: 2321
    functionDepth: 0
    functionLinenumber: 2321
    functionLinenumberEnd: 2336
    functionName: get_canon_urn
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - strcat
    - strcpy
    - sprintf
    linkageType: ''
    returnType: void
    signature: void get_canon_urn(bin128 URN, char *res)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/filters/dasher.c:2340,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dasher.c:2341,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2342,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2343,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2344,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2345,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2346,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2347,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2348,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2349,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2350,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2351,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2352,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2353,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2354,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2355,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2356,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2357,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2358,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2359,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2360,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2361,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2362,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 48
    argCount: 1
    argNames:
    - canURN
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2364
      start: 2338
    functionDepth: 0
    functionLinenumber: 2338
    functionLinenumberEnd: 2364
    functionName: get_drm_kms_name
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - strcmp
    - stricmp
    linkageType: ''
    returnType: char
    signature: char *get_drm_kms_name(const char *canURN)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:2374,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dasher.c:2375,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:2379,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2390,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2406,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2411,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2412,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dasher.c:2412,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2413,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2418,1
    - Dst: get_canon_urn
      Src: /src/gpac/src/filters/dasher.c:2423,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:2424,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2425,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2426,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2430,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2433,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2434,1
    - Dst: gf_xml_dom_node_new
      Src: /src/gpac/src/filters/dasher.c:2435,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2437,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2438,1
    - Dst: gf_xml_dom_node_new
      Src: /src/gpac/src/filters/dasher.c:2440,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2442,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2443,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2444,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2453,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dasher.c:2456,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dasher.c:2457,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dasher.c:2467,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:2470,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:2471,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dasher.c:2473,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dasher.c:2474,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dasher.c:2476,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/dasher.c:2477,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/filters/dasher.c:2478,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dasher.c:2479,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:2481,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dasher.c:2484,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dasher.c:2485,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dasher.c:2488,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:2489,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/dasher.c:2491,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dasher.c:2491,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dasher.c:2493,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dasher.c:2494,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:2495,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dasher.c:2496,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dasher.c:2497,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dasher.c:2498,1
    - Dst: get_canon_urn
      Src: /src/gpac/src/filters/dasher.c:2500,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2501,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2502,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2503,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2504,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2505,1
    - Dst: get_drm_kms_name
      Src: /src/gpac/src/filters/dasher.c:2505,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2506,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:2508,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2512,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2513,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2514,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:2516,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2519,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dasher.c:2522,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/filters/dasher.c:2524,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2529,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:2535,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dasher.c:2535,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2537,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2538,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dasher.c:2538,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2539,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dasher.c:2542,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 133
    argCount: 3
    argNames:
    - ctx
    - ds
    - for_set
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - GF_MPD_AdaptationSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2544
      start: 2366
    functionDepth: 9
    functionLinenumber: 2366
    functionLinenumberEnd: 2544
    functionName: dasher_get_content_protection_desc
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_list_count
    - get_drm_kms_name
    - gf_bs_write_u32
    - gf_4cc_to_str
    - gf_list_get
    - gf_list_new
    - gf_strdup
    - gf_bs_read_u32
    - gf_bs_get_content
    - sprintf
    - gf_list_add
    - get_canon_urn
    - gf_mpd_descriptor_new
    - gf_bs_write_u24
    - GF_LOG
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_bs_read_u8
    - gf_bs_reassign_buffer
    - gf_malloc
    - gf_filter_pid_get_property
    - gf_bs_seek
    - gf_xml_dom_node_new
    - gf_bs_del
    - gf_base64_encode
    - gf_xml_dom_create_attribute
    - gf_bs_write_u8
    linkageType: ''
    returnType: GF_List
    signature: GF_List *dasher_get_content_protection_desc(GF_DasherCtx *ctx, GF_DashStream
      *ds, GF_MPD_AdaptationSet *for_set)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_codecid_mime
      Src: /src/gpac/src/filters/dasher.c:2560,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dasher.c:2562,1
    - Dst: gf_codecid_file_ext
      Src: /src/gpac/src/filters/dasher.c:2567,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2574,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2574,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2577,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2577,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2577,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2577,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2580,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2580,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2583,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2583,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2583,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2583,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2583,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2583,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2587,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2597,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 72
    argCount: 4
    argNames:
    - ctx
    - ds
    - out_subtype
    - out_ext
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2600
      start: 2546
    functionDepth: 6
    functionLinenumber: 2546
    functionLinenumberEnd: 2600
    functionName: dasher_get_mime_and_ext
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_codecid_mime
    - strchr
    - gf_codecid_file_ext
    - strcmp
    linkageType: ''
    returnType: void
    signature: void dasher_get_mime_and_ext(GF_DasherCtx *ctx, GF_DashStream *ds,
      const char **out_subtype, const char **out_ext)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: dasher_get_mime_and_ext
      Src: /src/gpac/src/filters/dasher.c:2610,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:2613,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:2615,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:2617,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:2619,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:2628,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:2636,1
    - Dst: gf_media_get_reduced_frame_rate
      Src: /src/gpac/src/filters/dasher.c:2641,1
    - Dst: gf_audio_fmt_get_dolby_chanmap_from_layout
      Src: /src/gpac/src/filters/dasher.c:2679,1
    - Dst: gf_audio_fmt_get_cicp_layout
      Src: /src/gpac/src/filters/dasher.c:2681,1
    - Dst: gf_audio_fmt_get_dolby_chanmap
      Src: /src/gpac/src/filters/dasher.c:2682,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2684,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2685,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2689,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2690,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2693,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2694,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2697,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2698,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2700,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2701,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2703,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2704,1
    - Dst: gf_audio_fmt_get_cicp_from_layout
      Src: /src/gpac/src/filters/dasher.c:2706,1
    - Dst: gf_audio_fmt_get_cicp_layout
      Src: /src/gpac/src/filters/dasher.c:2707,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:2711,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2713,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2714,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/filters/dasher.c:2717,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2719,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2721,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2722,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2724,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2725,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2726,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2730,1
    - Dst: dasher_get_rfc_6381_codec_name
      Src: /src/gpac/src/filters/dasher.c:2735,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2736,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2737,1
    - Dst: dasher_add_dolby_vision_attribute
      Src: /src/gpac/src/filters/dasher.c:2739,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/filters/dasher.c:2753,1
    - Dst: dasher_get_content_protection_desc
      Src: /src/gpac/src/filters/dasher.c:2754,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 125
    argCount: 2
    argNames:
    - ctx
    - ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2756
      start: 2603
    functionDepth: 10
    functionLinenumber: 2603
    functionLinenumberEnd: 2756
    functionName: dasher_update_rep
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - dasher_get_rfc_6381_codec_name
    - gf_free
    - gf_audio_fmt_get_cicp_layout
    - GF_SAFEALLOC
    - gf_strdup
    - sprintf
    - gf_list_add
    - gf_mpd_del_list
    - gf_dynstrcat
    - gf_mpd_descriptor_new
    - dasher_get_content_protection_desc
    - GF_LOG
    - gf_audio_fmt_get_dolby_chanmap
    - gf_audio_fmt_get_cicp_from_layout
    - gf_audio_fmt_get_dolby_chanmap_from_layout
    - gf_media_get_reduced_frame_rate
    - gf_filter_pid_get_property
    - dasher_get_mime_and_ext
    - dasher_add_dolby_vision_attribute
    linkageType: ''
    returnType: void
    signature: void dasher_update_rep(GF_DasherCtx *ctx, GF_DashStream *ds)
  - BBCount: 59
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:2762,1
    - Dst: gf_mpd_representation_new
      Src: /src/gpac/src/filters/dasher.c:2763,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2770,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dasher.c:2772,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:2775,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dasher.c:2779,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:2781,1
    - Dst: dasher_update_rep
      Src: /src/gpac/src/filters/dasher.c:2788,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2791,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2795,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2801,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2803,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dasher.c:2806,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:2806,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2807,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2811,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2816,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:2816,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2817,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2819,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2821,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2826,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2832,1
    - Dst: gf_filter_pid_get_destination
      Src: /src/gpac/src/filters/dasher.c:2834,1
    - Dst: gf_url_is_relative
      Src: /src/gpac/src/filters/dasher.c:2837,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:2838,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:2839,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dasher.c:2842,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/filters/dasher.c:2843,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/filters/dasher.c:2843,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2845,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2846,1
    - Dst: gf_url_is_relative
      Src: /src/gpac/src/filters/dasher.c:2850,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:2851,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:2852,1
    - Dst: gf_url_concatenate_parent
      Src: /src/gpac/src/filters/dasher.c:2854,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2855,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2856,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2858,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2860,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2861,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2866,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filters/dasher.c:2873,1
    - Dst: gf_xml_dom_node_new
      Src: /src/gpac/src/filters/dasher.c:2904,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2905,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2906,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:2910,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filters/dasher.c:2910,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2911,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:2913,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2914,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:2915,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filters/dasher.c:2915,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2916,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dasher.c:2928,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/filters/dasher.c:2931,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:2933,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2934,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:2938,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:2940,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dasher.c:2943,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/filters/dasher.c:2946,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:2948,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2949,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2950,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:2953,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filters/dasher.c:2953,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2954,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2958,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 179
    argCount: 3
    argNames:
    - ctx
    - ds
    - srd_rep_idx
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2961
      start: 2758
    functionDepth: 11
    functionLinenumber: 2758
    functionLinenumberEnd: 2961
    functionName: dasher_setup_rep
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_url_is_relative
    - gf_list_find
    - gf_props_dump
    - gf_fileio_from_url
    - gf_realloc
    - gf_filter_pid_enum_properties
    - gf_assert
    - gf_mpd_representation_new
    - gf_strdup
    - gf_list_new
    - dasher_update_rep
    - sprintf
    - strncmp
    - gf_list_add
    - gf_dynstrcat
    - gf_fileio_resource_url
    - gf_props_4cc_get_name
    - GF_LOG
    - strlen
    - gf_malloc
    - gf_filter_pid_get_property
    - gf_xml_dom_node_new
    - gf_base64_encode
    - gf_url_concatenate_parent
    - gf_xml_dom_create_attribute
    - GF_4CC
    - gf_props_get_type_name
    - gf_filter_pid_get_destination
    linkageType: ''
    returnType: void
    signature: void dasher_setup_rep(GF_DasherCtx *ctx, GF_DashStream *ds, u32 *srd_rep_idx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/dasher.c:2967,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2975,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 2
    argNames:
    - ds1
    - ds2
    argTypes:
    - GF_DashStream*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2978
      start: 2963
    functionDepth: 1
    functionLinenumber: 2963
    functionLinenumberEnd: 2978
    functionName: dasher_same_roles
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_props_equal
    - strcmp
    linkageType: ''
    returnType: Bool
    signature: Bool dasher_same_roles(GF_DashStream *ds1, GF_DashStream *ds2)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:2983,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:2985,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2993
      start: 2980
    functionDepth: 1
    functionLinenumber: 2980
    functionLinenumberEnd: 2993
    functionName: dasher_get_next_as_id
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: u32
    signature: u32 dasher_get_next_as_id(GF_DasherCtx *ctx)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:3009,1
    - Dst: dasher_same_roles
      Src: /src/gpac/src/filters/dasher.c:3017,1
    - Dst: dasher_get_next_as_id
      Src: /src/gpac/src/filters/dasher.c:3028,1
    - Dst: dasher_get_next_as_id
      Src: /src/gpac/src/filters/dasher.c:3032,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/dasher.c:3044,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:3058,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:3059,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/dasher.c:3060,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:3065,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:3070,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3089,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3113,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:3120,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 104
    argCount: 3
    argNames:
    - ctx
    - ds
    - ds_test
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3126
      start: 2995
    functionDepth: 2
    functionLinenumber: 2995
    functionLinenumberEnd: 3126
    functionName: dasher_same_adaptation_set
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_props_equal
    - gf_filter_pid_get_property_str
    - gf_filter_pid_get_property
    - gf_list_find
    - strcmp
    - dasher_get_next_as_id
    - dasher_same_roles
    linkageType: ''
    returnType: Bool
    signature: Bool dasher_same_adaptation_set(GF_DasherCtx *ctx, GF_DashStream *ds,
      GF_DashStream *ds_test)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:3136,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:3142,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:3145,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3146,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:3149,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - p_dst_list
    - desc_val
    argTypes:
    - GF_List**
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3152
      start: 3128
    functionDepth: 1
    functionLinenumber: 3128
    functionLinenumberEnd: 3152
    functionName: dasher_add_descriptors
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_strdup
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void dasher_add_descriptors(GF_List **p_dst_list, const GF_PropertyValue
      *desc_val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:3159,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:3160,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:3161,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:3162,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:3164,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:3165,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:3166,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:3167,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3169,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3170,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - ds
    argTypes:
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3172
      start: 3154
    functionDepth: 1
    functionLinenumber: 3154
    functionLinenumberEnd: 3172
    functionName: dasher_add_inband_event
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_strdup
    - gf_list_add
    - GF_SAFEALLOC
    linkageType: ''
    returnType: void
    signature: void dasher_add_inband_event(GF_DashStream *ds)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:3185,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:3187,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3200,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3201,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3202,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3214,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3214,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3214,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3215,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3215,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3215,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3216,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3216,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3216,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3217,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3217,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3218,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3218,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3219,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3219,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3222,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3223,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/dasher.c:3225,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3228,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:3231,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3236,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3238,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3242,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3243,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3250,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3253,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:3255,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3257,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3259,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3263,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3264,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3267,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3268,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3277,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3278,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3279,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3282,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3283,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3284,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3287,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3288,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3289,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3293,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3294,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3295,1
    - Dst: dasher_add_inband_event
      Src: /src/gpac/src/filters/dasher.c:3300,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3305,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3306,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 91
    argCount: 2
    argNames:
    - ctx
    - set
    argTypes:
    - GF_DasherCtx*
    - GF_MPD_AdaptationSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3308
      start: 3174
    functionDepth: 2
    functionLinenumber: 3174
    functionLinenumberEnd: 3308
    functionName: dasher_setup_set_defaults
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - strrchr
    - gf_filter_pid_get_property
    - dasher_add_inband_event
    - GF_LOG
    - sprintf
    - gf_list_count
    - strcmp
    - gf_list_add
    - gf_mpd_descriptor_new
    linkageType: ''
    returnType: void
    signature: void dasher_setup_set_defaults(GF_DasherCtx *ctx, GF_MPD_AdaptationSet
      *set)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:3312,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:3314,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:3320,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:3321,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 13
    argCount: 2
    argNames:
    - ctx
    - base_ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3323
      start: 3310
    functionDepth: 1
    functionLinenumber: 3310
    functionLinenumberEnd: 3323
    functionName: rewrite_dep_ids
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_strdup
    linkageType: ''
    returnType: void
    signature: void rewrite_dep_ids(GF_DasherCtx *ctx, GF_DashStream *base_ds)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:3330,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:3348,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:3360,1
    - Dst: get_base_ds
      Src: /src/gpac/src/filters/dasher.c:3370,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:3389,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dasher.c:3394,1
    - Dst: gf_mpd_representation_free
      Src: /src/gpac/src/filters/dasher.c:3397,1
    - Dst: rewrite_dep_ids
      Src: /src/gpac/src/filters/dasher.c:3400,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:3407,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 69
    argCount: 2
    argNames:
    - ctx
    - set
    argTypes:
    - GF_DasherCtx*
    - GF_MPD_AdaptationSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3414
      start: 3325
    functionDepth: 5
    functionLinenumber: 3325
    functionLinenumberEnd: 3414
    functionName: dasher_check_bitstream_switching
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_mpd_representation_free
    - gf_list_count
    - rewrite_dep_ids
    - get_base_ds
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void dasher_check_bitstream_switching(GF_DasherCtx *ctx, GF_MPD_AdaptationSet
      *set)
  - BBCount: 63
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/dasher.c:3438,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/dasher.c:3439,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:3461,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3468,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:3474,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:3476,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:3477,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:3481,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3487,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3493,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3494,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:3495,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:3497,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3499,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3500,1
    - Dst: gf_filter_get_dst_args
      Src: /src/gpac/src/filters/dasher.c:3502,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3505,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3506,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3508,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3509,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:3510,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:3513,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:3516,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3523,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:3524,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3526,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:3527,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3530,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:3531,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3533,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:3534,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3536,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:3537,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3539,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:3540,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3542,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:3543,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3550,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3552,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3553,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3556,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3557,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3561,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3562,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3565,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3566,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3569,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3570,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3583,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3585,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3588,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3589,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3595,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:3599,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3603,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3605,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:3609,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3613,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3615,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3619,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/dasher.c:3624,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3625,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:3626,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3627,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3632,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3633,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3637,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3638,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3641,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3642,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3645,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3646,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3650,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3651,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3654,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3655,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3659,1
    - Dst: gf_filter_connect_destination
      Src: /src/gpac/src/filters/dasher.c:3661,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:3663,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:3664,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:3664,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3669,1
    - Dst: gf_filter_reset_source
      Src: /src/gpac/src/filters/dasher.c:3670,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/dasher.c:3671,1
    - Dst: gf_filter_pid_get_destination_ex
      Src: /src/gpac/src/filters/dasher.c:3677,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:3679,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3681,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:3682,1
    - Dst: gf_filter_connect_destination
      Src: /src/gpac/src/filters/dasher.c:3685,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:3686,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:3688,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:3689,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:3689,1
    - Dst: gf_filter_reset_source
      Src: /src/gpac/src/filters/dasher.c:3693,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/dasher.c:3694,1
    - Dst: gf_filter_skip_seg_size_events
      Src: /src/gpac/src/filters/dasher.c:3695,1
    - Dst: gf_cryptfout_push_key
      Src: /src/gpac/src/filters/dasher.c:3700,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:3702,1
    CyclomaticComplexity: 80
    EdgeCount: 80
    ICount: 229
    argCount: 5
    argNames:
    - filter
    - ctx
    - rep
    - szInitURL
    - trash_init
    argTypes:
    - GF_Filter*
    - GF_DasherCtx*
    - GF_MPD_Representation*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3703
      start: 3428
    functionDepth: 3
    functionLinenumber: 3428
    functionLinenumberEnd: 3703
    functionName: dasher_open_destination
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_get_sep
    - gf_filter_connect_destination
    - sprintf
    - gf_filter_pid_get_destination_ex
    - gf_dynstrcat
    - gf_filter_pid_get_property_str
    - gf_filter_set_source
    - GF_LOG
    - strstr
    - gf_error_to_string
    - gf_filter_skip_seg_size_events
    - strlen
    - gf_cryptfout_push_key
    - gf_filter_pid_get_property
    - gf_filter_reset_source
    - gf_url_concatenate
    - gf_sys_old_arch_compat
    - gf_filter_get_dst_args
    linkageType: ''
    returnType: void
    signature: void dasher_open_destination(GF_Filter *filter, GF_DasherCtx *ctx,
      GF_MPD_Representation *rep, const char *szInitURL, u32 trash_init)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:3707,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:3709,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:3713,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dasher.c:3714,1
    - Dst: dasher_gather_deps
      Src: /src/gpac/src/filters/dasher.c:3715,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 3
    argNames:
    - ctx
    - dependency_id
    - multi_tracks
    argTypes:
    - GF_DasherCtx*
    - u32
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3718
      start: 3705
    functionDepth: 2
    functionLinenumber: 3705
    functionLinenumberEnd: 3718
    functionName: dasher_gather_deps
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 1
    functionsReached:
    - gf_list_insert
    - gf_list_get
    - gf_assert
    - gf_list_count
    - dasher_gather_deps
    linkageType: ''
    returnType: void
    signature: void dasher_gather_deps(GF_DasherCtx *ctx, u32 dependency_id, GF_List
      *multi_tracks)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:3723,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:3726,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:3729,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 3
    argNames:
    - ctx
    - ds
    - ref_type
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3736
      start: 3720
    functionDepth: 1
    functionLinenumber: 3720
    functionLinenumberEnd: 3736
    functionName: dasher_update_dep_list
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_filter_pid_get_property_str
    linkageType: ''
    returnType: void
    signature: void dasher_update_dep_list(GF_DasherCtx *ctx, GF_DashStream *ds, const
      char *ref_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_load_filter
      Src: /src/gpac/src/filters/dasher.c:3740,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/dasher.c:3741,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3743,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/dasher.c:3743,1
    - Dst: gf_filter_reset_source
      Src: /src/gpac/src/filters/dasher.c:3744,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/dasher.c:3745,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - filter
    - ds
    - szSRC
    argTypes:
    - GF_Filter*
    - GF_DashStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3746
      start: 3738
    functionDepth: 1
    functionLinenumber: 3738
    functionLinenumberEnd: 3746
    functionName: dasher_inject_scte35_processor
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_set_source
    - gf_filter_reset_source
    - gf_filter_get_sep
    - sprintf
    - gf_filter_load_filter
    linkageType: ''
    returnType: void
    signature: void dasher_inject_scte35_processor(GF_Filter *filter, GF_DashStream
      *ds, char *szSRC)
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:3766,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:3767,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:3770,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3772,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dasher.c:3775,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dasher.c:3778,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:3783,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:3785,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:3788,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3789,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dasher.c:3791,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3792,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3798,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dasher.c:3799,1
    - Dst: gf_filter_pid_force_single_link
      Src: /src/gpac/src/filters/dasher.c:3802,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dasher.c:3811,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3813,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:3813,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3814,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:3814,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3820,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3820,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3824,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dasher.c:3824,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3825,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:3825,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3826,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/dasher.c:3826,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3829,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:3829,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:3832,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3835,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3835,1
    - Dst: gf_filter_pid_require_source_id
      Src: /src/gpac/src/filters/dasher.c:3839,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3842,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3846,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3850,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3850,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3852,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3852,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3855,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dasher.c:3855,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3857,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:3857,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3858,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3858,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3859,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/dasher.c:3859,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3866,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dasher.c:3866,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3872,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dasher.c:3872,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3875,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dasher.c:3875,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3877,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3877,1
    - Dst: dasher_update_dep_list
      Src: /src/gpac/src/filters/dasher.c:3880,1
    - Dst: dasher_update_dep_list
      Src: /src/gpac/src/filters/dasher.c:3881,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3886,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3886,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3889,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:3889,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3891,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:3891,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3893,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3893,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3894,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:3894,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3897,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:3897,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:3901,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/dasher.c:3902,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3903,1
    - Dst: PROP_POINTER
      Src: /src/gpac/src/filters/dasher.c:3903,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3904,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3904,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:3909,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:3910,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/dasher.c:3911,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:3915,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:3916,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3917,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3919,1
    - Dst: PROP_POINTER
      Src: /src/gpac/src/filters/dasher.c:3919,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:3922,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/dasher.c:3923,1
    - Dst: dasher_gather_deps
      Src: /src/gpac/src/filters/dasher.c:3924,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:3925,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3926,1
    - Dst: PROP_POINTER
      Src: /src/gpac/src/filters/dasher.c:3926,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dasher.c:3928,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3934,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3934,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3936,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3940,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3940,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3946,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3946,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3948,1
    - Dst: gf_filter_load_filter
      Src: /src/gpac/src/filters/dasher.c:3954,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/dasher.c:3955,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3957,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/dasher.c:3957,1
    - Dst: gf_filter_reset_source
      Src: /src/gpac/src/filters/dasher.c:3958,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/dasher.c:3959,1
    - Dst: dasher_inject_scte35_processor
      Src: /src/gpac/src/filters/dasher.c:3964,1
    CyclomaticComplexity: 71
    EdgeCount: 71
    ICount: 163
    argCount: 5
    argNames:
    - filter
    - ctx
    - ds
    - multi_pids
    - init_trashed
    argTypes:
    - GF_Filter*
    - GF_DasherCtx*
    - GF_DashStream*
    - GF_List*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3965
      start: 3748
    functionDepth: 3
    functionLinenumber: 3748
    functionLinenumberEnd: 3965
    functionName: dasher_open_pid
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - PROP_STRING
    - gf_list_find
    - gf_filter_get_sep
    - gf_list_count
    - gf_filter_pid_new
    - PROP_LONGUINT
    - PROP_POINTER
    - gf_assert
    - gf_list_get
    - gf_filter_pid_require_source_id
    - gf_list_new
    - PROP_FRAC
    - sprintf
    - dasher_update_dep_list
    - gf_list_add
    - PROP_BOOL
    - dasher_inject_scte35_processor
    - gf_filter_pid_copy_properties
    - gf_filter_set_source
    - gf_list_reset
    - gf_filter_load_filter
    - gf_list_del_item
    - dasher_gather_deps
    - gf_filter_pid_set_property
    - gf_list_del
    - PROP_UINT
    - gf_filter_reset_source
    - gf_filter_pid_force_single_link
    - gf_fatal_assert
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void dasher_open_pid(GF_Filter *filter, GF_DasherCtx *ctx, GF_DashStream
      *ds, GF_List *multi_pids, Bool init_trashed)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dasher.c:3972,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:3976,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:3982,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:3985,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:3988,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:3993,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3997,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:3998,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:4000,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 1
    argNames:
    - ds
    argTypes:
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4001
      start: 3967
    functionDepth: 2
    functionLinenumber: 3967
    functionLinenumberEnd: 4001
    functionName: dasher_set_content_components
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - strcmp
    - gf_list_add
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void dasher_set_content_components(GF_DashStream *ds)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:4008,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4011,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - ds
    - url
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4012
      start: 4003
    functionDepth: 3
    functionLinenumber: 4003
    functionLinenumberEnd: 4012
    functionName: dasher_cat_mpd_url
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_url_concatenate
    linkageType: ''
    returnType: char
    signature: char * dasher_cat_mpd_url(GF_DasherCtx *ctx, GF_DashStream *ds, const
      char *url)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:4023,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4025,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:4026,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:4031,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4032,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:4033,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - ctx
    - ds
    - tpl
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4035
      start: 4020
    functionDepth: 4
    functionLinenumber: 4020
    functionLinenumberEnd: 4035
    functionName: dasher_check_template_reuse
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - dasher_cat_mpd_url
    - GF_SAFEALLOC
    - gf_list_count
    - strcmp
    - gf_list_add
    linkageType: ''
    returnType: u32
    signature: u32 dasher_check_template_reuse(GF_DasherCtx *ctx, GF_DashStream *ds,
      const char *tpl)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:4039,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:4041,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:4042,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:4043,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4044,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4045,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - ds
    - a_ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4050
      start: 4037
    functionDepth: 3
    functionLinenumber: 4037
    functionLinenumberEnd: 4050
    functionName: dasher_check_hls_variant_path
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - strcmp
    - gf_url_concatenate
    linkageType: ''
    returnType: Bool
    signature: Bool dasher_check_hls_variant_path(GF_DasherCtx *ctx, GF_DashStream
      *ds, GF_DashStream *a_ds)
  - BBCount: 188
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4074,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:4076,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:4081,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:4084,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4089,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:4092,1
    - Dst: dasher_template_use_source_url
      Src: /src/gpac/src/filters/dasher.c:4096,1
    - Dst: gf_media_get_reduced_frame_rate
      Src: /src/gpac/src/filters/dasher.c:4108,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:4112,1
    - Dst: gf_media_reduce_aspect_ratio
      Src: /src/gpac/src/filters/dasher.c:4117,1
    - Dst: if
      Src: /src/gpac/src/filters/dasher.c:4123,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:4123,1
    - Dst: dasher_template_use_source_url
      Src: /src/gpac/src/filters/dasher.c:4138,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:4142,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:4143,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:4144,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4148,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4149,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:4153,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4157,1
    - Dst: dasher_check_hls_variant_path
      Src: /src/gpac/src/filters/dasher.c:4165,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/dasher.c:4168,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:4170,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/dasher.c:4171,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:4173,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dasher.c:4175,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4185,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4189,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4203,1
    - Dst: dasher_template_use_source_url
      Src: /src/gpac/src/filters/dasher.c:4206,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4215,1
    - Dst: dasher_check_hls_variant_path
      Src: /src/gpac/src/filters/dasher.c:4222,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:4225,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:4226,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/dasher.c:4227,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:4229,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:4230,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/dasher.c:4231,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:4244,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:4246,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4254,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4274,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4288,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4294,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:4306,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4308,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:4311,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/filters/dasher.c:4316,1
    - Dst: dasher_get_content_protection_desc
      Src: /src/gpac/src/filters/dasher.c:4317,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4334,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dasher.c:4340,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:4343,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:4345,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/filters/dasher.c:4346,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/filters/dasher.c:4347,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/filters/dasher.c:4348,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/filters/dasher.c:4349,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/filters/dasher.c:4350,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:4352,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/filters/dasher.c:4353,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/filters/dasher.c:4355,1
    - Dst: gf_mpd_representation_free
      Src: /src/gpac/src/filters/dasher.c:4357,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:4360,1
    - Dst: dasher_set_content_components
      Src: /src/gpac/src/filters/dasher.c:4361,1
    - Dst: dasher_set_content_components
      Src: /src/gpac/src/filters/dasher.c:4363,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:4364,1
    - Dst: dasher_open_pid
      Src: /src/gpac/src/filters/dasher.c:4366,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:4370,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:4372,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:4377,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:4391,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:4392,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dasher.c:4400,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:4402,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:4403,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dasher.c:4404,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:4407,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:4408,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:4409,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:4413,1
    - Dst: gf_floor
      Src: /src/gpac/src/filters/dasher.c:4415,1
    - Dst: gf_floor
      Src: /src/gpac/src/filters/dasher.c:4420,1
    - Dst: gf_floor
      Src: /src/gpac/src/filters/dasher.c:4425,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:4428,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dasher.c:4428,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:4434,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:4436,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:4440,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:4445,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:4445,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:4445,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dasher.c:4446,1
    - Dst: gf_filter_pid_resolve_file_template
      Src: /src/gpac/src/filters/dasher.c:4450,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:4452,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dasher.c:4453,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:4461,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:4461,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dasher.c:4462,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:4466,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:4466,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dasher.c:4467,1
    - Dst: gf_codecid_file_ext
      Src: /src/gpac/src/filters/dasher.c:4487,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:4491,1
    - Dst: gf_pixel_fmt_sname
      Src: /src/gpac/src/filters/dasher.c:4492,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:4495,1
    - Dst: gf_audio_fmt_sname
      Src: /src/gpac/src/filters/dasher.c:4496,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/dasher.c:4499,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dasher.c:4501,1
    - Dst: gf_codecid_file_ext
      Src: /src/gpac/src/filters/dasher.c:4507,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:4509,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:4511,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/dasher.c:4514,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dasher.c:4516,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4522,1
    - Dst: gf_codecid_mime
      Src: /src/gpac/src/filters/dasher.c:4523,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4525,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4528,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dasher.c:4534,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dasher.c:4540,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4557,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4561,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4565,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4569,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:4592,1
    - Dst: dasher_check_template_reuse
      Src: /src/gpac/src/filters/dasher.c:4594,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:4597,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dasher.c:4598,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:4600,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:4606,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4607,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4608,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:4611,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:4616,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4617,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:4619,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:4623,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:4626,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:4631,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:4632,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dasher.c:4632,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dasher.c:4637,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dasher.c:4643,1
    - Dst: gf_url_is_relative
      Src: /src/gpac/src/filters/dasher.c:4645,1
    - Dst: gf_url_is_relative
      Src: /src/gpac/src/filters/dasher.c:4645,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:4647,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:4648,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:4649,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:4650,1
    - Dst: gf_url_concatenate_parent
      Src: /src/gpac/src/filters/dasher.c:4652,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4654,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4655,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:4657,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dasher.c:4660,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:4663,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:4664,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:4667,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4669,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:4673,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:4674,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:4675,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:4678,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:4679,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:4680,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4681,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:4684,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:4685,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:4689,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:4690,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4691,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:4693,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:4695,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4696,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4698,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4699,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:4703,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dasher.c:4703,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:4704,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dasher.c:4704,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:4709,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:4710,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:4717,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4719,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:4720,1
    - Dst: get_base_ds
      Src: /src/gpac/src/filters/dasher.c:4729,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:4746,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:4748,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:4751,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4758,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:4762,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:4764,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:4769,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:4772,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:4773,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:4776,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:4778,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:4782,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4786,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4787,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:4812,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4815,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dasher.c:4819,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4820,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4822,1
    - Dst: dasher_open_destination
      Src: /src/gpac/src/filters/dasher.c:4829,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4832,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4834,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:4835,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:4836,1
    - Dst: dasher_open_destination
      Src: /src/gpac/src/filters/dasher.c:4851,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:4856,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4861,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4864,1
    - Dst: dasher_open_destination
      Src: /src/gpac/src/filters/dasher.c:4867,1
    - Dst: dasher_open_destination
      Src: /src/gpac/src/filters/dasher.c:4869,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4872,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4874,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:4875,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:4876,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4890,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4891,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:4893,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:4896,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:4897,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4901,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:4903,1
    - Dst: dasher_open_destination
      Src: /src/gpac/src/filters/dasher.c:4906,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:4909,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:4911,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4914,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4916,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:4919,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:4921,1
    - Dst: dasher_open_destination
      Src: /src/gpac/src/filters/dasher.c:4923,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:4929,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:4933,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4936,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4938,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:4940,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:4944,1
    - Dst: dasher_open_destination
      Src: /src/gpac/src/filters/dasher.c:4946,1
    - Dst: dasher_open_pid
      Src: /src/gpac/src/filters/dasher.c:4950,1
    CyclomaticComplexity: 293
    EdgeCount: 293
    ICount: 715
    argCount: 3
    argNames:
    - filter
    - ctx
    - set
    argTypes:
    - GF_Filter*
    - GF_DasherCtx*
    - GF_MPD_AdaptationSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4952
      start: 4052
    functionDepth: 10
    functionLinenumber: 4052
    functionLinenumberEnd: 4952
    functionName: dasher_setup_sources
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_props_equal
    - gf_url_is_relative
    - dasher_template_use_source_url
    - GF_SAFEALLOC
    - gf_mpd_representation_free
    - strcpy
    - gf_list_find
    - gf_list_count
    - strchr
    - gf_file_basename
    - gf_filter_pid_get_packet
    - gf_filter_pid_get_name
    - strcat
    - gf_list_get
    - gf_assert
    - gf_strdup
    - strrchr
    - gf_list_new
    - gf_codecid_mime
    - dasher_cat_mpd_url
    - dasher_open_destination
    - sprintf
    - strncmp
    - gf_media_mpd_format_segment_name
    - if
    - gf_list_add
    - gf_filter_pck_get_cts
    - gf_mpd_del_list
    - stricmp
    - gf_dynstrcat
    - dasher_check_hls_variant_path
    - gf_filter_pid_get_property_str
    - gf_list_transfer
    - gf_filter_pid_set_discard
    - dasher_get_content_protection_desc
    - GF_LOG
    - dasher_check_template_reuse
    - strstr
    - dasher_set_content_components
    - strncpy
    - gf_media_get_reduced_frame_rate
    - gf_pixel_fmt_sname
    - gf_filter_pid_resolve_file_template
    - strlen
    - gf_timestamp_rescale
    - gf_codecid_file_ext
    - gf_filter_pid_get_property
    - gf_audio_fmt_sname
    - gf_url_concatenate
    - gf_floor
    - dasher_open_pid
    - gf_url_concatenate_parent
    - strcmp
    - gf_media_reduce_aspect_ratio
    - get_base_ds
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void dasher_setup_sources(GF_Filter *filter, GF_DasherCtx *ctx, GF_MPD_AdaptationSet
      *set)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4956,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dasher.c:4964,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4965,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4967,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:4969,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:4975,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 3
    argNames:
    - ds
    - stl
    - sctx
    argTypes:
    - GF_DashStream*
    - GF_MPD_SegmentTimeline*
    - GF_DASH_SegmentContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4978
      start: 4954
    functionDepth: 1
    functionLinenumber: 4954
    functionLinenumberEnd: 4978
    functionName: dasher_purge_segment_timeline
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void dasher_purge_segment_timeline(GF_DashStream *ds, GF_MPD_SegmentTimeline
      *stl, GF_DASH_SegmentContext *sctx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dasher.c:4984,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dasher.c:4989,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/dasher.c:4990,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:4994,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:4996,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:4998,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4999,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:5002,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:5004,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:5009,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:5011,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dasher.c:5014,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 5
    argNames:
    - ctx
    - ds
    - filename
    - filepath
    - part_idx
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - char*
    - char*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5015
      start: 4980
    functionDepth: 3
    functionLinenumber: 4980
    functionLinenumberEnd: 5015
    functionName: send_file_delete
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - strrchr
    - sprintf
    - GF_FEVT_INIT
    - gf_url_concatenate
    - strncmp
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: void
    signature: void send_file_delete(GF_DasherCtx *ctx, GF_DashStream *ds, const char
      *filename, const char *filepath, s32 part_idx)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5037,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5039,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5056,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:5059,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5085,1
    - Dst: send_file_delete
      Src: /src/gpac/src/filters/dasher.c:5087,1
    - Dst: send_file_delete
      Src: /src/gpac/src/filters/dasher.c:5093,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:5096,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dasher.c:5100,1
    - Dst: gf_mpd_segment_url_free
      Src: /src/gpac/src/filters/dasher.c:5104,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dasher.c:5110,1
    - Dst: gf_mpd_segment_url_free
      Src: /src/gpac/src/filters/dasher.c:5114,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5120,1
    - Dst: dasher_purge_segment_timeline
      Src: /src/gpac/src/filters/dasher.c:5126,1
    - Dst: dasher_purge_segment_timeline
      Src: /src/gpac/src/filters/dasher.c:5132,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/dasher.c:5138,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:5138,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:5139,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:5140,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:5141,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:5142,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:5143,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dasher.c:5144,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 122
    argCount: 2
    argNames:
    - ctx
    - period_dur
    argTypes:
    - GF_DasherCtx*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5162
      start: 5017
    functionDepth: 4
    functionLinenumber: 5017
    functionLinenumberEnd: 5162
    functionName: dasher_purge_segments
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_mpd_segment_url_free
    - gf_list_pop_front
    - GF_LOG
    - gf_list_find
    - gf_list_count
    - dasher_purge_segment_timeline
    - send_file_delete
    - gf_fatal_assert
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void dasher_purge_segments(GF_DasherCtx *ctx, u64 *period_dur)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5172,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5174,1
    - Dst: ABS
      Src: /src/gpac/src/filters/dasher.c:5212,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5213,1
    - Dst: dasher_purge_segments
      Src: /src/gpac/src/filters/dasher.c:5219,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5228,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5231,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:5250,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5272,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5274,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5276,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 91
    argCount: 2
    argNames:
    - ctx
    - is_period_switch
    argTypes:
    - GF_DasherCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5288
      start: 5164
    functionDepth: 5
    functionLinenumber: 5164
    functionLinenumberEnd: 5288
    functionName: dasher_update_period_duration
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - ABS
    - gf_assert
    - dasher_purge_segments
    - GF_LOG
    - gf_list_count
    linkageType: ''
    returnType: void
    signature: void dasher_update_period_duration(GF_DasherCtx *ctx, Bool is_period_switch)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/dasher.c:5296,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dasher.c:5298,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/dasher.c:5301,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5303,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dasher.c:5306,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/dasher.c:5307,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:5309,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:5309,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:5312,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dasher.c:5312,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:5315,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dasher.c:5315,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dasher.c:5316,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 5
    argNames:
    - f
    - opid
    - name
    - ds
    - is_rel_url
    argTypes:
    - FILE*
    - GF_FilterPid*
    - char*
    - GF_DashStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5317
      start: 5290
    functionDepth: 2
    functionLinenumber: 5290
    functionLinenumberEnd: 5317
    functionName: dasher_transfer_file
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_property
    - gf_filter_pck_new_alloc
    - gf_fread
    - GF_LOG
    - PROP_STRING
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_set_framing
    - gf_fsize
    - PROP_BOOL
    - PROP_LONGUINT
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void dasher_transfer_file(FILE *f, GF_FilterPid *opid, const char *name,
      GF_DashStream *ds, Bool is_rel_url)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/dasher.c:5322,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5323
      start: 5320
    functionDepth: 1
    functionLinenumber: 5320
    functionLinenumberEnd: 5323
    functionName: dasher_get_utc
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_net_get_utc
    linkageType: ''
    returnType: u64
    signature: u64 dasher_get_utc(GF_DasherCtx *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5327,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5330,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5331,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5333,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:5334,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 4
    argNames:
    - period
    - repid
    - out_set
    - out_rep
    argTypes:
    - GF_MPD_Period*
    - char*
    - GF_MPD_AdaptationSet**
    - GF_MPD_Representation**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5341
      start: 5325
    functionDepth: 1
    functionLinenumber: 5325
    functionLinenumberEnd: 5341
    functionName: dasher_get_set_and_rep
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: void
    signature: void dasher_get_set_and_rep(GF_MPD_Period *period, const char *repid,
      GF_MPD_AdaptationSet **out_set, GF_MPD_Representation **out_rep)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_STR
      Src: /src/gpac/src/filters/dasher.c:5371,1
    - Dst: CHECK_STR
      Src: /src/gpac/src/filters/dasher.c:5372,1
    - Dst: CHECK_STR
      Src: /src/gpac/src/filters/dasher.c:5373,1
    - Dst: CHECK_STR
      Src: /src/gpac/src/filters/dasher.c:5374,1
    - Dst: CHECK_VAL
      Src: /src/gpac/src/filters/dasher.c:5375,1
    - Dst: CHECK_VAL
      Src: /src/gpac/src/filters/dasher.c:5376,1
    - Dst: CHECK_VAL
      Src: /src/gpac/src/filters/dasher.c:5377,1
    - Dst: CHECK_VAL
      Src: /src/gpac/src/filters/dasher.c:5378,1
    - Dst: CHECK_VAL
      Src: /src/gpac/src/filters/dasher.c:5379,1
    - Dst: CHECK_FRAC
      Src: /src/gpac/src/filters/dasher.c:5380,1
    - Dst: CHECK_FRAC
      Src: /src/gpac/src/filters/dasher.c:5381,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5385,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - ds
    - rep
    argTypes:
    - GF_DashStream*
    - GF_MPD_Representation*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5392
      start: 5343
    functionDepth: 1
    functionLinenumber: 5343
    functionLinenumberEnd: 5392
    functionName: dasher_merge_rep
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - CHECK_VAL
    - CHECK_STR
    - CHECK_FRAC
    linkageType: ''
    returnType: Bool
    signature: Bool dasher_merge_rep(GF_DashStream *ds, GF_MPD_Representation *rep)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _v
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5352
      start: 5351
    functionDepth: 0
    functionLinenumber: 5351
    functionLinenumberEnd: 5352
    functionName: CHECK_VAL
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_VAL(_name, _v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5360
      start: 5353
    functionDepth: 0
    functionLinenumber: 5353
    functionLinenumberEnd: 5360
    functionName: CHECK_STR
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_STR(_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5370
      start: 5362
    functionDepth: 0
    functionLinenumber: 5362
    functionLinenumberEnd: 5370
    functionName: CHECK_FRAC
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_FRAC(_name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:5399,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dasher.c:5401,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dasher.c:5404,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dasher.c:5406,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/dasher.c:5407,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:5410,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:5411,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/dasher.c:5411,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:5413,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:5413,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:5416,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dasher.c:5416,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dasher.c:5418,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 4
    argNames:
    - ctx
    - ds
    - manifest
    - manifest_name
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5419
      start: 5393
    functionDepth: 3
    functionLinenumber: 5393
    functionLinenumberEnd: 5419
    functionName: dasher_forward_manifest_raw
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_property
    - gf_filter_pck_new_alloc
    - memcpy
    - PROP_STRING
    - gf_filter_pck_set_seek_flag
    - gf_url_concatenate
    - gf_filter_pck_set_framing
    - PROP_STRING_NO_COPY
    - PROP_LONGUINT
    - strlen
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void dasher_forward_manifest_raw(GF_DasherCtx *ctx, GF_DashStream *ds,
      const char *manifest, const char *manifest_name)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_new
      Src: /src/gpac/src/filters/dasher.c:5429,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/filters/dasher.c:5431,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/filters/dasher.c:5432,1
    - Dst: gf_mpd_init_from_dom
      Src: /src/gpac/src/filters/dasher.c:5435,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/dasher.c:5435,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5438,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5439,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5444,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5447,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:5449,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:5450,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5452,1
    - Dst: dasher_get_set_and_rep
      Src: /src/gpac/src/filters/dasher.c:5456,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5458,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/filters/dasher.c:5463,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/filters/dasher.c:5466,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5468,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dasher.c:5469,1
    - Dst: dasher_get_content_protection_desc
      Src: /src/gpac/src/filters/dasher.c:5470,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5472,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dasher.c:5473,1
    - Dst: dasher_get_content_protection_desc
      Src: /src/gpac/src/filters/dasher.c:5474,1
    - Dst: dasher_merge_rep
      Src: /src/gpac/src/filters/dasher.c:5476,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:5479,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:5480,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:5481,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5488,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5490,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:5491,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:5492,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:5493,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:5497,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:5498,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:5501,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:5502,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:5505,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:5506,1
    - Dst: dasher_check_chaining
      Src: /src/gpac/src/filters/dasher.c:5510,1
    - Dst: dasher_check_chaining
      Src: /src/gpac/src/filters/dasher.c:5511,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/filters/dasher.c:5515,1
    - Dst: dasher_get_utc
      Src: /src/gpac/src/filters/dasher.c:5517,1
    - Dst: gf_mpd_write
      Src: /src/gpac/src/filters/dasher.c:5518,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5520,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:5520,1
    - Dst: dasher_transfer_file
      Src: /src/gpac/src/filters/dasher.c:5524,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dasher.c:5527,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/filters/dasher.c:5528,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filters/dasher.c:5529,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dasher.c:5530,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 93
    argCount: 2
    argNames:
    - ctx
    - manifest
    argTypes:
    - GF_DasherCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5533
      start: 5422
    functionDepth: 11
    functionLinenumber: 5422
    functionLinenumberEnd: 5533
    functionName: dasher_forward_mpd
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_mpd_write
    - gf_xml_dom_get_root
    - gf_list_find
    - gf_list_count
    - dasher_merge_rep
    - dasher_transfer_file
    - gf_list_get
    - gf_list_new
    - gf_xml_dom_new
    - gf_list_add
    - gf_file_temp
    - gf_mpd_del_list
    - gf_mpd_del
    - dasher_get_content_protection_desc
    - GF_LOG
    - dasher_get_utc
    - gf_xml_dom_parse_string
    - gf_error_to_string
    - dasher_get_set_and_rep
    - gf_list_del
    - gf_fclose
    - dasher_check_chaining
    - gf_filter_pid_get_property
    - gf_mpd_new
    - strcmp
    - gf_xml_dom_create_attribute
    - gf_mpd_init_from_dom
    - gf_xml_dom_del
    linkageType: ''
    returnType: void
    signature: void dasher_forward_mpd(GF_DasherCtx *ctx, const char *manifest)
  - BBCount: 64
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5538,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dasher.c:5540,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5542,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dasher.c:5542,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5543,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5544,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5545,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dasher.c:5546,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dasher.c:5547,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/filters/dasher.c:5548,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dasher.c:5550,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5551,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5558,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dasher.c:5562,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5563,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/filters/dasher.c:5565,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/filters/dasher.c:5566,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5567,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5568,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5569,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5570,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5571,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5572,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5573,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5574,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5575,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5576,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5576,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dasher.c:5578,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/dasher.c:5579,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/dasher.c:5601,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/dasher.c:5602,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dasher.c:5604,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5605,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filters/dasher.c:5612,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5638,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5640,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/filters/dasher.c:5641,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5642,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5649,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dasher.c:5653,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/dasher.c:5656,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5659,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5660,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dasher.c:5663,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dasher.c:5664,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/filters/dasher.c:5667,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/filters/dasher.c:5667,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/filters/dasher.c:5670,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5673,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5674,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/filters/dasher.c:5677,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/filters/dasher.c:5678,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5681,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5682,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5683,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5686,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5687,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5688,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5689,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:5695,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5696,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dasher.c:5697,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/filters/dasher.c:5699,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5706,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dasher.c:5707,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5712,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/filters/dasher.c:5715,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5722,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5724,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5728,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5730,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5731,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5739,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dasher.c:5741,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dasher.c:5743,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5744,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dasher.c:5745,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5748,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5750,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dasher.c:5752,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5753,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dasher.c:5755,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5756,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5758,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dasher.c:5761,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5762,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dasher.c:5765,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5766,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5769,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5770,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dasher.c:5774,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dasher.c:5776,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5777,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dasher.c:5778,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dasher.c:5781,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dasher.c:5782,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5783,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dasher.c:5784,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dasher.c:5786,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:5787,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dasher.c:5789,1
    - Dst: gf_filter_pck_check_realloc
      Src: /src/gpac/src/filters/dasher.c:5790,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dasher.c:5791,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dasher.c:5792,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dasher.c:5793,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 222
    argCount: 2
    argNames:
    - ctx
    - opid
    argTypes:
    - GF_DasherCtx*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5796
      start: 5535
    functionDepth: 9
    functionLinenumber: 5535
    functionLinenumberEnd: 5796
    functionName: dasher_write_index
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - gf_bs_write_u16
    - gf_list_count
    - gf_bs_write_u32
    - FIX2FLT
    - gf_bs_write_float
    - gf_filter_pid_enum_properties
    - gf_list_get
    - gf_bs_get_content
    - gf_bs_write_utf8
    - gf_bs_write_u64
    - gf_bs_write_double
    - gf_filter_pck_new_alloc
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_list_last
    - strlen
    - gf_bs_seek
    - gf_filter_pck_check_realloc
    - gf_filter_pck_set_framing
    - gf_bs_del
    - GF_4CC
    - gf_bs_write_u8
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dasher_write_index(GF_DasherCtx *ctx, GF_FilterPid *opid)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: dasher_write_index
      Src: /src/gpac/src/filters/dasher.c:5808,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/filters/dasher.c:5813,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dasher.c:5835,1
    - Dst: gf_mpd_write_m3u8_master_playlist
      Src: /src/gpac/src/filters/dasher.c:5836,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dasher.c:5836,1
    - Dst: gf_mpd_write
      Src: /src/gpac/src/filters/dasher.c:5838,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5843,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:5843,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dasher.c:5844,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/dasher.c:5851,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5852,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/dasher.c:5852,1
    - Dst: gf_sha1_file_ptr
      Src: /src/gpac/src/filters/dasher.c:5855,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/dasher.c:5862,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dasher.c:5863,1
    - Dst: dasher_transfer_file
      Src: /src/gpac/src/filters/dasher.c:5866,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dasher.c:5868,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 55
    argCount: 6
    argNames:
    - ctx
    - last_period_dur
    - do_m3u8
    - m3u8_second_pass
    - opid
    - alt_name
    argTypes:
    - GF_DasherCtx*
    - u64
    - Bool
    - Bool
    - GF_FilterPid*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5870
      start: 5799
    functionDepth: 10
    functionLinenumber: 5799
    functionLinenumberEnd: 5870
    functionName: dasher_write_and_send_manifest
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_mpd_write
    - gf_fclose
    - gf_sha1_file_ptr
    - dasher_transfer_file
    - memcmp
    - gf_mpd_write_m3u8_master_playlist
    - GF_LOG
    - memcpy
    - dasher_write_index
    - gf_file_temp
    - gf_error_to_string
    - gf_file_basename
    - gf_list_last
    - gf_ftell
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dasher_write_and_send_manifest(GF_DasherCtx *ctx, u64 last_period_dur,
      Bool do_m3u8, Bool m3u8_second_pass, GF_FilterPid *opid, char *alt_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5874,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5876,1
    - Dst: dasher_update_bitrate
      Src: /src/gpac/src/filters/dasher.c:5877,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5879
      start: 5872
    functionDepth: 4
    functionLinenumber: 5872
    functionLinenumberEnd: 5879
    functionName: dasher_update_dyn_bitrates
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - dasher_update_bitrate
    linkageType: ''
    returnType: void
    signature: void dasher_update_dyn_bitrates(GF_DasherCtx *ctx)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: dasher_update_dyn_bitrates
      Src: /src/gpac/src/filters/dasher.c:5901,1
    - Dst: dasher_get_utc
      Src: /src/gpac/src/filters/dasher.c:5903,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5905,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:5912,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/filters/dasher.c:5918,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:5923,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:5924,1
    - Dst: dasher_update_mpd
      Src: /src/gpac/src/filters/dasher.c:5928,1
    - Dst: dasher_write_and_send_manifest
      Src: /src/gpac/src/filters/dasher.c:5980,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dasher.c:6003,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:6007,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dasher.c:6013,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dasher.c:6015,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:6024,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:6030,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dasher.c:6032,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:6034,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dasher.c:6035,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:6037,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:6039,1
    - Dst: dasher_transfer_file
      Src: /src/gpac/src/filters/dasher.c:6044,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dasher.c:6045,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:6047,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:6055,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dasher.c:6056,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dasher.c:6058,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dasher.c:6059,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dasher.c:6060,1
    - Dst: dasher_write_and_send_manifest
      Src: /src/gpac/src/filters/dasher.c:6063,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/dasher.c:6074,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:6076,1
    - Dst: gf_mpd_write
      Src: /src/gpac/src/filters/dasher.c:6080,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dasher.c:6081,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:6084,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:6084,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 161
    argCount: 3
    argNames:
    - filter
    - ctx
    - for_mpd_only
    argTypes:
    - GF_Filter*
    - GF_DasherCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6091
      start: 5881
    functionDepth: 11
    functionLinenumber: 5881
    functionLinenumberEnd: 6091
    functionName: dasher_send_manifest
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mpd_write
    - strcpy
    - gf_fopen
    - strcat
    - dasher_transfer_file
    - gf_list_get
    - gf_strdup
    - gf_assert
    - snprintf
    - dasher_update_dyn_bitrates
    - gf_dynstrcat
    - dasher_get_utc
    - GF_LOG
    - gf_error_to_string
    - gf_list_enum
    - gf_list_last
    - gf_fclose
    - gf_url_concatenate
    - gf_file_ext_start
    - dasher_write_and_send_manifest
    - dasher_update_mpd
    - gf_gmtime
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dasher_send_manifest(GF_Filter *filter, GF_DasherCtx *ctx, Bool
      for_mpd_only)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _prop
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6121
      start: 6119
    functionDepth: 0
    functionLinenumber: 6119
    functionLinenumberEnd: 6121
    functionName: RESET_PROP_STR
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RESET_PROP_STR(_prop)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: dasher_update_period_duration
      Src: /src/gpac/src/filters/dasher.c:6685,1
    - Dst: dasher_context_update_period_end
      Src: /src/gpac/src/filters/dasher.c:6688,1
    - Dst: dasher_send_manifest
      Src: /src/gpac/src/filters/dasher.c:6692,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6693
      start: 6678
    functionDepth: 12
    functionLinenumber: 6678
    functionLinenumberEnd: 6693
    functionName: dasher_udpate_periods_and_manifest
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - dasher_context_update_period_end
    - dasher_send_manifest
    - dasher_update_period_duration
    linkageType: ''
    returnType: void
    signature: void dasher_udpate_periods_and_manifest(GF_Filter *filter, GF_DasherCtx
      *ctx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:6705,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:6707,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:6709,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:6711,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:6713,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:6718,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:6725,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:6729,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:6733,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dasher.c:6735,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:6737,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dasher.c:6739,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 1
    argNames:
    - streams_in
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6742
      start: 6701
    functionDepth: 3
    functionLinenumber: 6701
    functionLinenumberEnd: 6742
    functionName: dasher_period_count
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_list_get
    - gf_list_pop_back
    - GF_SAFEALLOC
    - gf_list_count
    - strcmp
    - gf_list_add
    - gf_list_del
    linkageType: ''
    returnType: u32
    signature: u32 dasher_period_count(GF_List *streams_in /*GF_DashStream*/)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/filters/dasher.c:6763,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:6768,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:6773,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/dasher.c:6779,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:6781,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/filters/dasher.c:6784,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:6786,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:6786,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/dasher.c:6789,1
    - Dst: gf_dm_sess_get_stats
      Src: /src/gpac/src/filters/dasher.c:6797,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:6811,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:6811,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/dasher.c:6812,1
    - Dst: gf_dm_sess_get_cache_name
      Src: /src/gpac/src/filters/dasher.c:6816,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/filters/dasher.c:6817,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dasher.c:6821,1
    - Dst: gf_net_parse_date
      Src: /src/gpac/src/filters/dasher.c:6822,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dasher.c:6827,1
    - Dst: gf_net_ntp_to_utc
      Src: /src/gpac/src/filters/dasher.c:6832,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/filters/dasher.c:6838,1
    - Dst: gf_dm_sess_get_header
      Src: /src/gpac/src/filters/dasher.c:6842,1
    - Dst: gf_net_parse_date
      Src: /src/gpac/src/filters/dasher.c:6845,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:6852,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/dasher.c:6854,1
    - Dst: ABS
      Src: /src/gpac/src/filters/dasher.c:6855,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:6856,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:6859,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/dasher.c:6862,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 93
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6864
      start: 6744
    functionDepth: 4
    functionLinenumber: 6744
    functionLinenumberEnd: 6864
    functionName: dasher_init_utc
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_process
    - gf_dm_sess_get_cache_name
    - gf_dm_sess_del
    - gf_net_ntp_to_utc
    - strchr
    - gf_dm_sess_get_stats
    - gf_blob_get
    - strncmp
    - gf_dm_sess_new
    - gf_blob_release
    - gf_net_get_utc
    - sscanf
    - GF_LOG
    - gf_error_to_string
    - gf_filter_get_download_manager
    - ABS
    - gf_dm_sess_get_header
    - strcmp
    - gf_net_parse_date
    linkageType: ''
    returnType: void
    signature: void dasher_init_utc(GF_Filter *filter, GF_DasherCtx *ctx)
  - BBCount: 57
    BranchProfiles: []
    Callsites:
    - Dst: dasher_ensure_outpath
      Src: /src/gpac/src/filters/dasher.c:6881,1
    - Dst: dasher_update_dyn_bitrates
      Src: /src/gpac/src/filters/dasher.c:6885,1
    - Dst: dasher_udpate_periods_and_manifest
      Src: /src/gpac/src/filters/dasher.c:6887,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:6895,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:6901,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:6903,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dasher.c:6904,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:6916,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:6918,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dasher.c:6920,1
    - Dst: dasher_reset_stream
      Src: /src/gpac/src/filters/dasher.c:6923,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:6931,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:6936,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:6945,1
    - Dst: dasher_reload_context
      Src: /src/gpac/src/filters/dasher.c:6954,1
    - Dst: dasher_udpate_periods_and_manifest
      Src: /src/gpac/src/filters/dasher.c:6962,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:6963,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:6965,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dasher.c:6966,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:6973,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:6977,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:6984,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dasher.c:6999,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:7003,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dasher.c:7019,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dasher.c:7020,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dasher.c:7022,1
    - Dst: dasher_send_transport_hints
      Src: /src/gpac/src/filters/dasher.c:7024,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dasher.c:7026,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dasher.c:7028,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7034,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7036,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:7039,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:7043,1
    - Dst: gf_mpd_period_new
      Src: /src/gpac/src/filters/dasher.c:7051,1
    - Dst: dasher_setup_mpd
      Src: /src/gpac/src/filters/dasher.c:7052,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:7053,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:7058,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:7062,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:7066,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7073,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:7075,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7083,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:7086,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:7110,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:7111,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:7112,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:7117,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:7118,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:7119,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7124,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:7126,1
    - Dst: dasher_setup_period
      Src: /src/gpac/src/filters/dasher.c:7145,1
    - Dst: dasher_update_period_duration
      Src: /src/gpac/src/filters/dasher.c:7148,1
    CyclomaticComplexity: 82
    EdgeCount: 82
    ICount: 219
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7150
      start: 6867
    functionDepth: 13
    functionLinenumber: 6867
    functionLinenumberEnd: 7150
    functionName: dasher_switch_period
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - dasher_reset_stream
    - gf_list_count
    - gf_filter_pid_get_packet
    - dasher_update_period_duration
    - gf_list_get
    - gf_assert
    - gf_strdup
    - dasher_ensure_outpath
    - dasher_send_transport_hints
    - GF_FEVT_INIT
    - sprintf
    - gf_list_add
    - dasher_update_dyn_bitrates
    - gf_mpd_period_new
    - gf_filter_pid_set_discard
    - dasher_setup_period
    - GF_LOG
    - dasher_reload_context
    - gf_filter_pid_send_event
    - dasher_udpate_periods_and_manifest
    - dasher_setup_mpd
    - gf_filter_pid_remove
    - strcmp
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dasher_switch_period(GF_Filter *filter, GF_DasherCtx *ctx)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:7162,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7165,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:7167,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:7169,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dasher.c:7171,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:7178,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:7179,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:7186,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7194,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:7195,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:7202,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:7203,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:7205,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:7208,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:7213,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:7215,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:7218,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:7219,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:7221,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:7223,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:7227,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:7228,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7235,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dasher.c:7236,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:7237,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dasher.c:7239,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 71
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7241
      start: 7153
    functionDepth: 3
    functionLinenumber: 7153
    functionLinenumberEnd: 7241
    functionName: dasher_setup_ssr
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_list_get
    - gf_list_pop_back
    - gf_filter_pid_get_property
    - GF_LOG
    - sprintf
    - gf_list_count
    - gf_list_add
    - gf_malloc
    - gf_list_del
    - gf_mpd_descriptor_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dasher_setup_ssr(GF_DasherCtx *ctx)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dasher.c:7913,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:7920,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:7928,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:7937,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:7945,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:7947,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dasher.c:7950,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:7966,1
    - Dst: gf_mpd_segmentimeline_new
      Src: /src/gpac/src/filters/dasher.c:7978,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:7986,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:7989,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:7993,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8006,1
    - Dst: gf_mpd_segmentimeline_new
      Src: /src/gpac/src/filters/dasher.c:8019,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:8023,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8025,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8034,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:8039,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dasher.c:8045,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:8046,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dasher.c:8051,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:8054,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8059,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:8063,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8070,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dasher.c:8073,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:8074,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dasher.c:8081,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8094,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:8098,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 158
    argCount: 3
    argNames:
    - ctx
    - ds
    - is_ll_anouncement
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8103
      start: 7900
    functionDepth: 3
    functionLinenumber: 7900
    functionLinenumberEnd: 8103
    functionName: dasher_insert_timeline_entry
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_assert
    - gf_list_get
    - gf_list_pop_back
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_find
    - gf_list_count
    - gf_mpd_segmentimeline_new
    - gf_list_add
    - gf_list_last
    - gf_timestamp_rescale
    linkageType: ''
    returnType: void
    signature: void dasher_insert_timeline_entry(GF_DasherCtx *ctx, GF_DashStream
      *ds, Bool is_ll_anouncement)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:8121,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:8123,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8126,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8129,1
    - Dst: gf_mpd_segmentimeline_new
      Src: /src/gpac/src/filters/dasher.c:8137,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8142,1
    - Dst: gf_mpd_segmentimeline_new
      Src: /src/gpac/src/filters/dasher.c:8151,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:8155,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8158,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8159,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:8166,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 57
    argCount: 2
    argNames:
    - ctx
    - set
    argTypes:
    - GF_DasherCtx*
    - GF_MPD_AdaptationSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8169
      start: 8105
    functionDepth: 2
    functionLinenumber: 8105
    functionLinenumberEnd: 8169
    functionName: dasher_copy_segment_timelines
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_assert
    - GF_SAFEALLOC
    - gf_list_count
    - gf_mpd_segmentimeline_new
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void dasher_copy_segment_timelines(GF_DasherCtx *ctx, GF_MPD_AdaptationSet
      *set)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:8180,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8182,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8204,1
    - Dst: dasher_copy_segment_timelines
      Src: /src/gpac/src/filters/dasher.c:8207,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:8209,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:8211,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8213,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8224,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:8229,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 48
    argCount: 3
    argNames:
    - ctx
    - ds
    - sctx
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - GF_DASH_SegmentContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8230
      start: 8171
    functionDepth: 3
    functionLinenumber: 8171
    functionLinenumberEnd: 8230
    functionName: dasher_set_timeline_parts
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_assert
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_count
    - gf_list_add
    - dasher_copy_segment_timelines
    linkageType: ''
    returnType: void
    signature: void dasher_set_timeline_parts(GF_DasherCtx *ctx, GF_DashStream *ds,
      GF_DASH_SegmentContext *sctx)
  - BBCount: 61
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8254,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dasher.c:8254,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8296,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8298,1
    - Dst: dasher_insert_timeline_entry
      Src: /src/gpac/src/filters/dasher.c:8301,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/dasher.c:8308,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:8309,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:8310,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8313,1
    - Dst: gf_ceil
      Src: /src/gpac/src/filters/dasher.c:8314,1
    - Dst: gf_ceil
      Src: /src/gpac/src/filters/dasher.c:8315,1
    - Dst: ABS
      Src: /src/gpac/src/filters/dasher.c:8330,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8332,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8338,1
    - Dst: dasher_copy_segment_timelines
      Src: /src/gpac/src/filters/dasher.c:8341,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:8369,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8375,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8397,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:8437,1
    - Dst: dasher_get_utc
      Src: /src/gpac/src/filters/dasher.c:8440,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:8445,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8448,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8450,1
    - Dst: ABS
      Src: /src/gpac/src/filters/dasher.c:8450,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8472,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8479,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8496,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:8502,1
    CyclomaticComplexity: 94
    EdgeCount: 94
    ICount: 207
    argCount: 3
    argNames:
    - ctx
    - ds
    - is_last_in_period
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8506
      start: 8232
    functionDepth: 4
    functionLinenumber: 8232
    functionLinenumberEnd: 8506
    functionName: dasher_flush_segment
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - ABS
    - dasher_insert_timeline_entry
    - GF_LOG
    - dasher_get_utc
    - gf_list_find
    - gf_ceil
    - gf_list_count
    - gf_timestamp_less
    - gf_filter_pid_is_eos
    - dasher_copy_segment_timelines
    - gf_timestamp_rescale
    linkageType: ''
    returnType: void
    signature: void dasher_flush_segment(GF_DasherCtx *ctx, GF_DashStream *ds, Bool
      is_last_in_period)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:8511,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:8513,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:8514,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dasher.c:8518,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dasher.c:8522,1
    - Dst: gf_url_is_relative
      Src: /src/gpac/src/filters/dasher.c:8524,1
    - Dst: gf_url_is_relative
      Src: /src/gpac/src/filters/dasher.c:8524,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:8526,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:8527,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:8528,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:8529,1
    - Dst: gf_url_concatenate_parent
      Src: /src/gpac/src/filters/dasher.c:8531,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:8533,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:8534,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:8536,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:8539,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 4
    argNames:
    - ctx
    - ds
    - seg_url
    - seg_name
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8541
      start: 8509
    functionDepth: 3
    functionLinenumber: 8509
    functionLinenumberEnd: 8541
    functionName: dasher_strip_base
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_url_is_relative
    - gf_strdup
    - gf_filter_pid_get_property_str
    - gf_url_concatenate
    - gf_url_concatenate_parent
    - strncmp
    - gf_dynstrcat
    - gf_file_basename
    linkageType: ''
    returnType: char
    signature: char *dasher_strip_base(GF_DasherCtx *ctx, GF_DashStream *ds, char
      *seg_url, char *seg_name)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - ds
    - cts
    argTypes:
    - GF_DashStream*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8565
      start: 8543
    functionDepth: 0
    functionLinenumber: 8543
    functionLinenumberEnd: 8565
    functionName: dasher_translate_cts
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE dasher_translate_cts(GF_DashStream *ds, u64 cts)
  - BBCount: 132
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:8577,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:8578,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8580,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:8584,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8587,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:8590,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:8593,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8595,1
    - Dst: dasher_forward_mpd
      Src: /src/gpac/src/filters/dasher.c:8599,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8603,1
    - Dst: dasher_forward_manifest_raw
      Src: /src/gpac/src/filters/dasher.c:8607,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8612,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:8616,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:8617,1
    - Dst: dasher_forward_manifest_raw
      Src: /src/gpac/src/filters/dasher.c:8621,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8625,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8627,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/filters/dasher.c:8637,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8638,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dasher.c:8638,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8640,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:8642,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8644,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8647,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8648,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8649,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8652,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:8652,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8654,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/dasher.c:8654,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8657,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dasher.c:8657,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8660,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dasher.c:8660,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:8670,1
    - Dst: dasher_insert_timeline_entry
      Src: /src/gpac/src/filters/dasher.c:8680,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:8685,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:8687,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:8693,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:8696,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:8702,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:8731,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:8739,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:8743,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:8747,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:8751,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:8759,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:8760,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8766,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:8775,1
    - Dst: gf_cryptfout_push_key
      Src: /src/gpac/src/filters/dasher.c:8788,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:8804,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:8805,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:8811,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:8814,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dasher.c:8815,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:8817,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:8818,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:8819,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:8820,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:8822,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8826,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:8828,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:8830,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:8835,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:8836,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:8837,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:8838,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:8840,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:8845,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:8847,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:8848,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:8849,1
    - Dst: dasher_strip_base
      Src: /src/gpac/src/filters/dasher.c:8852,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8859,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8861,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:8871,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dasher.c:8880,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:8881,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8882,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:8886,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:8894,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:8896,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:8898,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:8900,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:8901,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8905,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:8905,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:8913,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:8915,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8921,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8929,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8932,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8940,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:8949,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8953,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:8956,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:8958,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:8961,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:8962,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:8963,1
    - Dst: dasher_strip_base
      Src: /src/gpac/src/filters/dasher.c:8965,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:8968,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:8969,1
    - Dst: dasher_strip_base
      Src: /src/gpac/src/filters/dasher.c:8972,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:8974,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8976,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:8977,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dasher.c:8978,1
    - Dst: gf_mpd_base_url_free
      Src: /src/gpac/src/filters/dasher.c:8979,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8987,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8993,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:9001,1
    - Dst: ABS
      Src: /src/gpac/src/filters/dasher.c:9012,1
    - Dst: dasher_translate_cts
      Src: /src/gpac/src/filters/dasher.c:9015,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dasher.c:9015,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dasher.c:9017,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:9019,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:9029,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:9032,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:9036,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:9039,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:9049,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:9051,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:9052,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:9057,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:9065,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:9067,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:9068,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:9072,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dasher.c:9075,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:9076,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:9081,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:9082,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:9084,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:9089,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:9091,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:9093,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:9095,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dasher.c:9099,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/dasher.c:9107,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:9109,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:9120,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:9124,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:9124,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:9126,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:9126,1
    CyclomaticComplexity: 178
    EdgeCount: 178
    ICount: 462
    argCount: 4
    argNames:
    - ctx
    - ds
    - pck
    - in_pck
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - GF_FilterPacket*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9128
      start: 8567
    functionDepth: 12
    functionLinenumber: 8567
    functionLinenumberEnd: 9128
    functionName: dasher_mark_segment_start
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - dasher_translate_cts
    - GF_SAFEALLOC
    - PROP_STRING
    - strcpy
    - gf_list_count
    - PROP_LONGUINT
    - strcat
    - gf_filter_pck_set_property
    - gf_assert
    - gf_list_new
    - gf_strdup
    - dasher_cat_mpd_url
    - dasher_insert_timeline_entry
    - gf_list_get
    - sprintf
    - dasher_forward_manifest_raw
    - gf_media_mpd_format_segment_name
    - gf_list_add
    - gf_filter_pck_get_cts
    - PROP_BOOL
    - gf_dynstrcat
    - gf_mpd_base_url_free
    - gf_filter_pck_get_duration
    - gf_net_get_ntp_ts
    - dasher_strip_base
    - gf_filter_pck_get_property
    - gf_filter_pid_get_property_str
    - GF_LOG
    - strstr
    - PROP_FRAC64_INT
    - dasher_forward_mpd
    - gf_list_del_item
    - gf_filter_pck_get_dts
    - gf_timestamp_rescale
    - gf_cryptfout_push_key
    - ABS
    - PROP_UINT
    - gf_filter_pid_get_property
    - gf_url_concatenate
    - strcmp
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void dasher_mark_segment_start(GF_DasherCtx *ctx, GF_DashStream *ds,
      GF_FilterPacket *pck, GF_FilterPacket *in_pck)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:9141,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:9144,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:9146,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:9149,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:9161,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/dasher.c:9180,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:9188,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:9193,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:9197,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dasher.c:9197,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dasher.c:9212,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dasher.c:9213,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dasher.c:9215,1
    - Dst: dasher_send_transport_hints
      Src: /src/gpac/src/filters/dasher.c:9217,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dasher.c:9219,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dasher.c:9221,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 61
    argCount: 2
    argNames:
    - ctx
    - ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9226
      start: 9130
    functionDepth: 2
    functionLinenumber: 9130
    functionLinenumberEnd: 9226
    functionName: dasher_check_loop
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_get_property
    - gf_filter_pid_set_discard
    - GF_LOG
    - dasher_send_transport_hints
    - GF_FEVT_INIT
    - gf_list_count
    - gf_timestamp_less
    - gf_filter_pid_send_event
    - gf_timestamp_rescale
    - gf_filter_pid_get_name
    linkageType: ''
    returnType: Bool
    signature: Bool dasher_check_loop(GF_DasherCtx *ctx, GF_DashStream *ds)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dasher.c:9234,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dasher.c:9237,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dasher.c:9243,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/dasher.c:9245,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:9247,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dasher.c:9247,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - ctx
    - is_session_end
    argTypes:
    - GF_DasherCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9258
      start: 9229
    functionDepth: 2
    functionLinenumber: 9229
    functionLinenumberEnd: 9258
    functionName: dasher_check_period_ready
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_discard
    - GF_LOG
    - gf_list_enum
    - gf_filter_pid_get_packet
    - gf_sys_clock
    - gf_filter_pid_get_name
    linkageType: ''
    returnType: Bool
    signature: Bool dasher_check_period_ready(GF_DasherCtx *ctx, Bool is_session_end)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/dasher.c:9268,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:9278,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:9279,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:9281,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:9288,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:9291,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:9292,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:9299,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:9306,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:9321,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:9342,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:9348,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:9349,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/dasher.c:9351,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:9352,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 71
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9353
      start: 9260
    functionDepth: 2
    functionLinenumber: 9260
    functionLinenumberEnd: 9353
    functionName: dasher_format_report
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_filter_update_status
    - snprintf
    - gf_list_find
    - sprintf
    - gf_list_count
    - gf_filter_reporting_enabled
    - gf_dynstrcat
    linkageType: ''
    returnType: void
    signature: void dasher_format_report(GF_Filter *filter, GF_DasherCtx *ctx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:9358,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dasher.c:9359,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/dasher.c:9360,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dasher.c:9364,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dasher.c:9368,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dasher.c:9371,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 3
    argNames:
    - ctx
    - ds
    - discard_all
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9373
      start: 9355
    functionDepth: 2
    functionLinenumber: 9355
    functionLinenumberEnd: 9373
    functionName: dasher_drop_input
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_drop_packet
    - gf_filter_pid_set_discard
    - gf_list_pop_front
    - gf_filter_pck_unref
    - gf_list_count
    - gf_filter_pck_get_sap
    linkageType: ''
    returnType: void
    signature: void dasher_drop_input(GF_DasherCtx *ctx, GF_DashStream *ds, Bool discard_all)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dasher.c:9384,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:9386,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dasher.c:9386,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dasher.c:9387,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - ds
    - forced
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9390
      start: 9375
    functionDepth: 1
    functionLinenumber: 9375
    functionLinenumberEnd: 9390
    functionName: dasher_inject_eods
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_property
    - gf_filter_pck_send
    - gf_filter_pck_new_alloc
    - PROP_BOOL
    linkageType: ''
    returnType: void
    signature: void dasher_inject_eods(GF_DasherCtx *ctx, GF_DashStream *ds, Bool
      forced)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:9401,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:9404,1
    - Dst: dasher_inject_eods
      Src: /src/gpac/src/filters/dasher.c:9410,1
    - Dst: dasher_flush_segment
      Src: /src/gpac/src/filters/dasher.c:9414,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:9424,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dasher.c:9425,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dasher.c:9426,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dasher.c:9430,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dasher.c:9435,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dasher.c:9438,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dasher.c:9441,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dasher.c:9442,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dasher.c:9443,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:9446,1
    - Dst: dasher_mark_segment_start
      Src: /src/gpac/src/filters/dasher.c:9449,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dasher.c:9452,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dasher.c:9457,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:9461,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 53
    argCount: 2
    argNames:
    - ctx
    - ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9463
      start: 9394
    functionDepth: 13
    functionLinenumber: 9394
    functionLinenumberEnd: 9463
    functionName: dasher_send_empty_segment
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_list_last
    - gf_filter_pck_new_alloc
    - dasher_inject_eods
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - memcpy
    - GF_LOG
    - dasher_flush_segment
    - dasher_mark_segment_start
    - gf_filter_pck_set_sap
    - gf_timestamp_rescale
    - strlen
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void dasher_send_empty_segment(GF_DasherCtx *ctx, GF_DashStream *ds)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _name
    - ','
    - _ffname
    - ','
    - _type
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionName: FF_CHECK_PROP
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FF_CHECK_PROP(_name, _ffname, _type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _name
    - ','
    - _ffname
    - ','
    - _type
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 48
    functionName: FF_CHECK_PROPL
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FF_CHECK_PROPL(_name, _ffname, _type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _name
    - ','
    - _val
    - ','
    - _type
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 53
    functionName: FF_CHECK_PROP_VAL
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FF_CHECK_PROP_VAL(_name, _val, _type)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_dec.c:120,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/ff_dec.c:121,1
    - Dst: av_packet_alloc
      Src: /src/gpac/src/filters/ff_dec.c:125,1
    - Dst: ffmpeg_setup_logs
      Src: /src/gpac/src/filters/ff_dec.c:128,1
    - Dst: gf_filter_is_temporary
      Src: /src/gpac/src/filters/ff_dec.c:130,1
    - Dst: avcodec_find_decoder_by_name
      Src: /src/gpac/src/filters/ff_dec.c:131,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filters/ff_dec.c:133,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/src/filters/ff_dec.c:135,1
    - Dst: ffmpeg_codecid_from_gpac
      Src: /src/gpac/src/filters/ff_dec.c:135,1
    - Dst: gf_filter_meta_set_instances
      Src: /src/gpac/src/filters/ff_dec.c:139,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 118
    functionDepth: 4
    functionLinenumber: 118
    functionLinenumberEnd: 143
    functionName: ffdec_initialize
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached:
    - avcodec_find_decoder
    - gf_list_new
    - avcodec_find_decoder_by_name
    - ffmpeg_codecid_from_gpac
    - gf_filter_is_temporary
    - gf_filter_meta_set_instances
    - av_packet_alloc
    - ffmpeg_setup_logs
    - gf_codecid_parse
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffdec_initialize(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_dec.c:147,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_dec.c:149,1
    - Dst: av_frame_free
      Src: /src/gpac/src/filters/ff_dec.c:150,1
    - Dst: sws_freeContext
      Src: /src/gpac/src/filters/ff_dec.c:151,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_dec.c:153,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/ff_dec.c:154,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_dec.c:155,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/ff_dec.c:157,1
    - Dst: av_packet_free
      Src: /src/gpac/src/filters/ff_dec.c:160,1
    - Dst: avcodec_free_context
      Src: /src/gpac/src/filters/ff_dec.c:164,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 145
    functionDepth: 3
    functionLinenumber: 145
    functionLinenumberEnd: 167
    functionName: ffdec_finalize
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_back
    - sws_freeContext
    - av_packet_free
    - gf_filter_pck_unref
    - gf_list_count
    - av_dict_free
    - avcodec_free_context
    - av_frame_free
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ffdec_finalize(GF_Filter *filter)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:172,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:172,1
    - Dst: ffmpeg_pixfmt_is_fullrange
      Src: /src/gpac/src/filters/ff_dec.c:177,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:183,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_dec.c:183,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:185,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:188,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:188,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:190,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:193,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:193,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:195,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:198,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:198,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:200,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - ctx
    - pix_fmt
    argTypes:
    - struct _gf_ffdec_ctx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 202
    functionName: ffdec_check_pix_fmt_change
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached:
    - ffmpeg_pixfmt_is_fullrange
    - gf_filter_pid_set_property
    - PROP_UINT
    - PROP_BOOL
    linkageType: ''
    returnType: void
    signature: void ffdec_check_pix_fmt_change(struct _gf_ffdec_ctx *ctx, u32 pix_fmt)
  - BBCount: 60
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_dec.c:222,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/ff_dec.c:225,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_dec.c:229,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/ff_dec.c:236,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/ff_dec.c:240,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_dec.c:241,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_dec.c:246,1
    - Dst: FF_INIT_PCK
      Src: /src/gpac/src/filters/ff_dec.c:254,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/ff_dec.c:259,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_dec.c:262,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_dec.c:263,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/ff_dec.c:268,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/ff_dec.c:269,1
    - Dst: avcodec_free_context
      Src: /src/gpac/src/filters/ff_dec.c:276,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_dec.c:278,1
    - Dst: avcodec_open2
      Src: /src/gpac/src/filters/ff_dec.c:279,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_dec.c:280,1
    - Dst: avcodec_flush_buffers
      Src: /src/gpac/src/filters/ff_dec.c:282,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/ff_dec.c:287,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ff_dec.c:288,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/ff_dec.c:289,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/ff_dec.c:290,1
    - Dst: avcodec_decode_video2
      Src: /src/gpac/src/filters/ff_dec.c:301,1
    - Dst: avcodec_send_packet
      Src: /src/gpac/src/filters/ff_dec.c:303,1
    - Dst: AVERROR
      Src: /src/gpac/src/filters/ff_dec.c:305,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/ff_dec.c:307,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_dec.c:308,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_dec.c:310,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:318,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_dec.c:318,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_dec.c:318,1
    - Dst: avcodec_receive_frame
      Src: /src/gpac/src/filters/ff_dec.c:322,1
    - Dst: AVERROR
      Src: /src/gpac/src/filters/ff_dec.c:324,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_dec.c:337,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_dec.c:341,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_dec.c:344,1
    - Dst: avcodec_free_context
      Src: /src/gpac/src/filters/ff_dec.c:349,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_dec.c:360,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/ff_dec.c:361,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_dec.c:362,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:364,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_dec.c:364,1
    - Dst: ffdec_configure_pid
      Src: /src/gpac/src/filters/ff_dec.c:365,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:373,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_dec.c:373,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_dec.c:373,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_dec.c:374,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_dec.c:377,1
    - Dst: ffmpeg_pixfmt_to_gpac
      Src: /src/gpac/src/filters/ff_dec.c:381,1
    - Dst: ffdec_check_pix_fmt_change
      Src: /src/gpac/src/filters/ff_dec.c:386,1
    - Dst: FF_CHECK_PROP
      Src: /src/gpac/src/filters/ff_dec.c:389,1
    - Dst: FF_CHECK_PROP
      Src: /src/gpac/src/filters/ff_dec.c:390,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/ff_dec.c:393,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:394,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_dec.c:394,1
    - Dst: FF_CHECK_PROP_VAL
      Src: /src/gpac/src/filters/ff_dec.c:398,1
    - Dst: FF_CHECK_PROP_VAL
      Src: /src/gpac/src/filters/ff_dec.c:399,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:404,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/ff_dec.c:404,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_dec.c:408,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/ff_dec.c:411,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ff_dec.c:412,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/ff_dec.c:424,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ff_dec.c:425,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/ff_dec.c:436,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_dec.c:437,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/ff_dec.c:442,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/ff_dec.c:446,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/ff_dec.c:447,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/ff_dec.c:448,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_dec.c:449,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/ff_dec.c:451,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/ff_dec.c:455,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/ff_dec.c:456,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:463,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_dec.c:463,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_dec.c:467,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_dec.c:468,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:526,1
    - Dst: av_get_pix_fmt_name
      Src: /src/gpac/src/filters/ff_dec.c:526,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/ff_dec.c:528,1
    - Dst: sws_getCachedContext
      Src: /src/gpac/src/filters/ff_dec.c:533,1
    - Dst: sws_scale
      Src: /src/gpac/src/filters/ff_dec.c:537,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/ff_dec.c:541,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/ff_dec.c:545,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/ff_dec.c:548,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/ff_dec.c:551,1
    CyclomaticComplexity: 67
    EdgeCount: 67
    ICount: 264
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - struct _gf_ffdec_ctx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 204
    functionDepth: 5
    functionLinenumber: 204
    functionLinenumberEnd: 556
    functionName: ffdec_process_video
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached:
    - avcodec_send_packet
    - avcodec_open2
    - sws_getCachedContext
    - gf_list_count
    - memset
    - FF_CHECK_PROP_VAL
    - gf_filter_pck_ref_props
    - gf_filter_pck_set_dependency_flags
    - av_dict_free
    - av_dict_copy
    - gf_filter_pck_get_seek_flag
    - gf_filter_pid_get_packet
    - gf_filter_pid_get_name
    - gf_list_get
    - gf_list_pop_back
    - PROP_FRAC
    - FF_RELEASE_PCK
    - gf_list_add
    - gf_filter_pck_get_cts
    - PROP_BOOL
    - gf_filter_pck_discard
    - gf_filter_pck_get_duration
    - avcodec_free_context
    - avcodec_receive_frame
    - sws_scale
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_set_interlaced
    - av_err2str
    - gf_filter_pid_set_eos
    - ffmpeg_pixfmt_to_gpac
    - gf_list_del_item
    - gf_filter_pck_set_sap
    - gf_filter_pck_get_sap
    - gf_filter_pid_is_eos
    - FF_INIT_PCK
    - AVERROR
    - gf_filter_pid_set_property
    - ffdec_check_pix_fmt_change
    - gf_filter_pck_set_dts
    - ffdec_configure_pid
    - gf_filter_pck_set_cts
    - av_get_pix_fmt_name
    - gf_filter_pck_merge_properties
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_send
    - avcodec_decode_video2
    - gf_filter_pck_unref
    - gf_pixel_get_size_info
    - avcodec_flush_buffers
    - gf_filter_pck_get_dts
    - FF_CHECK_PROP
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffdec_process_video(GF_Filter *filter, struct _gf_ffdec_ctx
      *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - filter
    - PID
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 852
      start: 849
    functionDepth: 0
    functionLinenumber: 849
    functionLinenumberEnd: 852
    functionName: ffsub_packet_destructor
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ffsub_packet_destructor(GF_Filter *filter, GF_FilterPid *PID,
      GF_FilterPacket *pck)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_dec.c:862,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/ff_dec.c:865,1
    - Dst: FF_INIT_PCK
      Src: /src/gpac/src/filters/ff_dec.c:868,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/ff_dec.c:870,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ff_dec.c:873,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/ff_dec.c:875,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_dec.c:881,1
    - Dst: avcodec_decode_subtitle2
      Src: /src/gpac/src/filters/ff_dec.c:882,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_dec.c:886,1
    - Dst: gf_filter_pck_new_frame_interface
      Src: /src/gpac/src/filters/ff_dec.c:890,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/ff_dec.c:892,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/ff_dec.c:893,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ff_dec.c:893,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/ff_dec.c:894,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_dec.c:897,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:900,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_dec.c:900,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_dec.c:900,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_dec.c:905,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:919,1
    - Dst: gf_irect_union
      Src: /src/gpac/src/filters/ff_dec.c:930,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/ff_dec.c:937,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:940,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:940,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:941,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:941,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:942,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/ff_dec.c:942,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:943,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/ff_dec.c:943,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:944,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:944,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_dec.c:946,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/filters/ff_dec.c:962,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/filters/ff_dec.c:963,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/filters/ff_dec.c:964,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/filters/ff_dec.c:965,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/ff_dec.c:972,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/ff_dec.c:973,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ff_dec.c:973,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/ff_dec.c:974,1
    - Dst: avsubtitle_free
      Src: /src/gpac/src/filters/ff_dec.c:979,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_dec.c:981,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_dec.c:983,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 108
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - struct _gf_ffdec_ctx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 985
      start: 854
    functionDepth: 1
    functionLinenumber: 854
    functionLinenumberEnd: 985
    functionName: ffdec_process_subtitle
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_filter_pid_get_packet
    - gf_filter_pid_get_name
    - GF_COL_G
    - GF_COL_A
    - FF_RELEASE_PCK
    - gf_filter_pck_get_cts
    - gf_filter_pck_new_frame_interface
    - gf_filter_pck_get_duration
    - GF_COL_B
    - gf_filter_pid_drop_packet
    - gf_irect_union
    - gf_filter_pck_new_alloc
    - PROP_SINT
    - gf_filter_pck_get_data
    - GF_LOG
    - avcodec_decode_subtitle2
    - av_err2str
    - gf_filter_pid_set_eos
    - GF_COL_R
    - gf_filter_pid_is_eos
    - FF_INIT_PCK
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pck_set_dts
    - avsubtitle_free
    - gf_filter_pck_merge_properties
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffdec_process_subtitle(GF_Filter *filter, struct _gf_ffdec_ctx
      *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_dec.c:990,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_dec.c:992,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_dec.c:993,1
    - Dst: GF_FFDecodeCtx*::process
      Src: /src/gpac/src/filters/ff_dec.c:997,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 998
      start: 988
    functionDepth: 1
    functionLinenumber: 988
    functionLinenumberEnd: 998
    functionName: ffdec_process
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached:
    - GF_FFDecodeCtx*::process
    - gf_filter_pid_get_packet
    - gf_filter_pid_drop_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffdec_process(GF_Filter *filter)
  - BBCount: 82
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_dec.c:1019,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/ff_dec.c:1025,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1032,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1044,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1062,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1064,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1066,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1068,1
    - Dst: ffmpeg_codecid_from_gpac
      Src: /src/gpac/src/filters/ff_dec.c:1072,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/src/filters/ff_dec.c:1073,1
    - Dst: strstr
      Src: /src/gpac/src/filters/ff_dec.c:1075,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/ff_dec.c:1075,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1080,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/ff_dec.c:1082,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/ff_dec.c:1082,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_dec.c:1083,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_dec.c:1083,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1090,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:1094,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_dec.c:1094,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/src/filters/ff_dec.c:1097,1
    - Dst: avcodec_alloc_context3
      Src: /src/gpac/src/filters/ff_dec.c:1100,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/src/filters/ff_dec.c:1102,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:1107,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_dec.c:1107,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1111,1
    - Dst: avcodec_find_decoder_by_name
      Src: /src/gpac/src/filters/ff_dec.c:1113,1
    - Dst: avcodec_alloc_context3
      Src: /src/gpac/src/filters/ff_dec.c:1115,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/ff_dec.c:1123,1
    - Dst: ffmpeg_codecid_from_gpac
      Src: /src/gpac/src/filters/ff_dec.c:1135,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1139,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/ff_dec.c:1141,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:1153,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_dec.c:1153,1
    - Dst: ffmpeg_codecid_from_gpac
      Src: /src/gpac/src/filters/ff_dec.c:1157,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/src/filters/ff_dec.c:1166,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_dec.c:1171,1
    - Dst: strlen
      Src: /src/gpac/src/filters/ff_dec.c:1172,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_dec.c:1173,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/ff_dec.c:1173,1
    - Dst: strlen
      Src: /src/gpac/src/filters/ff_dec.c:1174,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dec.c:1178,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dec.c:1179,1
    - Dst: avcodec_find_decoder_by_name
      Src: /src/gpac/src/filters/ff_dec.c:1186,1
    - Dst: avcodec_find_decoder_by_name
      Src: /src/gpac/src/filters/ff_dec.c:1193,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/ff_dec.c:1193,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:1196,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/ff_dec.c:1196,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/ff_dec.c:1197,1
    - Dst: avcodec_alloc_context3
      Src: /src/gpac/src/filters/ff_dec.c:1201,1
    - Dst: ffmpeg_set_enc_dec_flags
      Src: /src/gpac/src/filters/ff_dec.c:1210,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1228,1
    - Dst: ffmpeg_extradata_from_gpac
      Src: /src/gpac/src/filters/ff_dec.c:1246,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/ff_dec.c:1250,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1258,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/ff_dec.c:1264,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/ff_dec.c:1265,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_dec.c:1269,1
    - Dst: ffmpeg_check_threads
      Src: /src/gpac/src/filters/ff_dec.c:1270,1
    - Dst: avcodec_open2
      Src: /src/gpac/src/filters/ff_dec.c:1272,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_dec.c:1274,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/ff_dec.c:1277,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1278,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:1278,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1279,1
    - Dst: avcodec_free_context
      Src: /src/gpac/src/filters/ff_dec.c:1280,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:1285,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_dec.c:1285,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_dec.c:1285,1
    - Dst: ffmpeg_report_options
      Src: /src/gpac/src/filters/ff_dec.c:1289,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_dec.c:1290,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_dec.c:1291,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_dec.c:1296,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_dec.c:1298,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/ff_dec.c:1299,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/ff_dec.c:1305,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1306,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:1306,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1307,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1313,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1314,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1315,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1316,1
    - Dst: ffmpeg_pixfmt_to_gpac
      Src: /src/gpac/src/filters/ff_dec.c:1323,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:1325,1
    - Dst: ffdec_check_pix_fmt_change
      Src: /src/gpac/src/filters/ff_dec.c:1332,1
    - Dst: FF_CHECK_PROP
      Src: /src/gpac/src/filters/ff_dec.c:1335,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1337,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:1337,1
    - Dst: FF_CHECK_PROP
      Src: /src/gpac/src/filters/ff_dec.c:1340,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1342,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:1342,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1347,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/ff_dec.c:1347,1
    - Dst: av_frame_alloc
      Src: /src/gpac/src/filters/ff_dec.c:1350,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1353,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:1353,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1356,1
    - Dst: ffmpeg_audio_fmt_to_gpac
      Src: /src/gpac/src/filters/ff_dec.c:1368,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1369,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:1369,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/ff_dec.c:1370,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1385,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:1385,1
    - Dst: ffmpeg_channel_layout_to_gpac
      Src: /src/gpac/src/filters/ff_dec.c:1389,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1391,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/ff_dec.c:1391,1
    - Dst: FF_CHECK_PROP
      Src: /src/gpac/src/filters/ff_dec.c:1397,1
    - Dst: av_frame_alloc
      Src: /src/gpac/src/filters/ff_dec.c:1400,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1403,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:1403,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1406,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1408,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1412,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1423,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:1423,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1424,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:1424,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1425,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_dec.c:1425,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1427,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:1427,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1428,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:1428,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1429,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/ff_dec.c:1429,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1430,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/ff_dec.c:1430,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1431,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:1431,1
    CyclomaticComplexity: 108
    EdgeCount: 108
    ICount: 339
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1437
      start: 1011
    functionDepth: 11
    functionLinenumber: 1011
    functionLinenumberEnd: 1437
    functionName: ffdec_configure_pid
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 1
    functionsReached:
    - avcodec_find_decoder
    - gf_free
    - gf_filter_override_caps
    - ffmpeg_channel_layout_to_gpac
    - avcodec_open2
    - ffmpeg_check_threads
    - av_dict_copy
    - av_dict_free
    - gf_filter_pid_new
    - PROP_LONGUINT
    - gf_filter_pid_get_name
    - ffmpeg_set_enc_dec_flags
    - gf_4cc_to_str
    - gf_strdup
    - PROP_FRAC
    - av_frame_alloc
    - sprintf
    - strncmp
    - gf_codecid_name
    - ffmpeg_audio_fmt_to_gpac
    - PROP_BOOL
    - avcodec_free_context
    - gf_crc_32
    - gf_audio_fmt_bit_depth
    - gf_filter_get_udta
    - avcodec_find_decoder_by_name
    - gf_filter_pid_copy_properties
    - PROP_SINT
    - GF_LOG
    - gf_filter_pid_negotiate_property
    - av_err2str
    - avcodec_alloc_context3
    - strstr
    - ffmpeg_pixfmt_to_gpac
    - ffmpeg_extradata_from_gpac
    - gf_filter_pid_set_property
    - strlen
    - gf_filter_set_name
    - ffdec_check_pix_fmt_change
    - ffmpeg_report_options
    - gf_filter_pid_get_property
    - ffmpeg_codecid_from_gpac
    - gf_filter_pid_remove
    - PROP_UINT
    - gf_filter_pid_set_framing_mode
    - gf_opts_get_bool
    - GF_ARRAY_LENGTH
    - FF_CHECK_PROP
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffdec_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_dec.c:1442,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_dec.c:1444,1
    - Dst: gf_filter_report_meta_option
      Src: /src/gpac/src/filters/ff_dec.c:1445,1
    - Dst: ffmpeg_update_arg
      Src: /src/gpac/src/filters/ff_dec.c:1448,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - filter
    - arg_name
    - arg_val
    argTypes:
    - GF_Filter*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1449
      start: 1440
    functionDepth: 2
    functionLinenumber: 1440
    functionLinenumberEnd: 1449
    functionName: ffdec_update_arg
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached:
    - gf_filter_report_meta_option
    - strcmp
    - ffmpeg_update_arg
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffdec_update_arg(GF_Filter *filter, const char *arg_name, const
      GF_PropertyValue *arg_val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_dec.c:1453,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_dec.c:1460,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/ff_dec.c:1461,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_dec.c:1462,1
    - Dst: avcodec_flush_buffers
      Src: /src/gpac/src/filters/ff_dec.c:1468,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1472
      start: 1451
    functionDepth: 3
    functionLinenumber: 1451
    functionLinenumberEnd: 1472
    functionName: ffdec_process_event
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_back
    - gf_filter_pck_unref
    - gf_list_count
    - avcodec_flush_buffers
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool ffdec_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1550
      start: 1549
    functionDepth: 0
    functionLinenumber: 1549
    functionLinenumberEnd: 1550
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ffmpeg_build_register
      Src: /src/gpac/src/filters/ff_dec.c:1562,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1563
      start: 1560
    functionDepth: 8
    functionLinenumber: 1560
    functionLinenumberEnd: 1563
    functionName: ffdec_register
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached:
    - ffmpeg_build_register
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ffdec_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1570
      start: 1567
    functionDepth: 0
    functionLinenumber: 1567
    functionLinenumberEnd: 1570
    functionName: ffdec_register
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ffdec_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - X
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 214
    functionName: STRINGIFY
    functionSourceFile: /src/gpac/src/filters/dec_nvdec_sdk.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: STRINGIFY(X)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: LoadLibrary
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:231,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:233,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - pInstance
    - lib_path
    argTypes:
    - CUDADRIVER*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 229
    functionDepth: 1
    functionLinenumber: 229
    functionLinenumberEnd: 237
    functionName: LOAD_LIBRARY_CUDA
    functionSourceFile: /src/gpac/src/filters/dec_nvdec_sdk.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - LoadLibrary
    linkageType: ''
    returnType: CUresult
    signature: CUresult LOAD_LIBRARY_CUDA(CUDADRIVER *pInstance, const char *lib_path)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: LoadLibrary
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:241,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:243,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - pInstance
    - lib_path
    argTypes:
    - CUVIDDRIVER*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 239
    functionDepth: 1
    functionLinenumber: 239
    functionLinenumberEnd: 247
    functionName: LOAD_LIBRARY_CUVID
    functionSourceFile: /src/gpac/src/filters/dec_nvdec_sdk.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - LoadLibrary
    linkageType: ''
    returnType: CUresult
    signature: CUresult LOAD_LIBRARY_CUVID(CUVIDDRIVER *pInstance, const char *lib_path)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - name
    - ','
    - alias
    - ','
    - required
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 255
    functionName: GET_PROC_EX
    functionSourceFile: /src/gpac/src/filters/dec_nvdec_sdk.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_PROC_EX(name, alias, required)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - name
    - ','
    - alias
    - ','
    - required
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 262
    functionName: GET_PROC_EX_V2
    functionSourceFile: /src/gpac/src/filters/dec_nvdec_sdk.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_PROC_EX_V2(name, alias, required)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dlopen
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:279,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:281,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - pInstance
    - lib_path
    argTypes:
    - CUDADRIVER*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 277
    functionDepth: 1
    functionLinenumber: 277
    functionLinenumberEnd: 285
    functionName: LOAD_LIBRARY_CUDA
    functionSourceFile: /src/gpac/src/filters/dec_nvdec_sdk.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - dlopen
    linkageType: ''
    returnType: CUresult
    signature: CUresult LOAD_LIBRARY_CUDA(CUDADRIVER *pInstance, const char *lib_path)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dlopen
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:289,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:291,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - pInstance
    - lib_path
    argTypes:
    - CUVIDDRIVER*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 287
    functionDepth: 1
    functionLinenumber: 287
    functionLinenumberEnd: 295
    functionName: LOAD_LIBRARY_CUVID
    functionSourceFile: /src/gpac/src/filters/dec_nvdec_sdk.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - dlopen
    linkageType: ''
    returnType: CUresult
    signature: CUresult LOAD_LIBRARY_CUVID(CUVIDDRIVER *pInstance, const char *lib_path)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - name
    - ','
    - alias
    - ','
    - required
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 297
    functionDepth: 0
    functionLinenumber: 297
    functionLinenumberEnd: 303
    functionName: GET_PROC_EX
    functionSourceFile: /src/gpac/src/filters/dec_nvdec_sdk.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_PROC_EX(name, alias, required)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - name
    - ','
    - alias
    - ','
    - required
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 310
    functionName: GET_PROC_EX_V2
    functionSourceFile: /src/gpac/src/filters/dec_nvdec_sdk.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_PROC_EX_V2(name, alias, required)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - call
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 315
    functionDepth: 0
    functionLinenumber: 315
    functionLinenumberEnd: 322
    functionName: CHECKED_CALL
    functionSourceFile: /src/gpac/src/filters/dec_nvdec_sdk.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECKED_CALL(call)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 324
    functionName: GET_PROC_REQUIRED
    functionSourceFile: /src/gpac/src/filters/dec_nvdec_sdk.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_PROC_REQUIRED(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 324
    functionDepth: 0
    functionLinenumber: 324
    functionLinenumberEnd: 325
    functionName: GET_PROC_OPTIONAL
    functionSourceFile: /src/gpac/src/filters/dec_nvdec_sdk.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_PROC_OPTIONAL(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 325
    functionDepth: 0
    functionLinenumber: 325
    functionLinenumberEnd: 326
    functionName: GET_PROC
    functionSourceFile: /src/gpac/src/filters/dec_nvdec_sdk.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_PROC(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 326
    functionDepth: 0
    functionLinenumber: 326
    functionLinenumberEnd: 327
    functionName: GET_PROC_V2
    functionSourceFile: /src/gpac/src/filters/dec_nvdec_sdk.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_PROC_V2(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - Flags
    - cudaVersion
    - curr_lib
    argTypes:
    - unsigned int
    - int
    - CUDADRIVER
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 332
    functionName: cuInitGL
    functionSourceFile: /src/gpac/src/filters/dec_nvdec_sdk.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CUresult
    signature: CUresult cuInitGL(unsigned int Flags, int cudaVersion, CUDADRIVER curr_lib)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FreeLibrary
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:340,1
    - Dst: FreeLibrary
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:341,1
    - Dst: dlclose
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:343,1
    - Dst: dlclose
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:344,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 337
    functionDepth: 0
    functionLinenumber: 337
    functionLinenumberEnd: 348
    functionName: cuUninit
    functionSourceFile: /src/gpac/src/filters/dec_nvdec_sdk.c
    functionUses: 0
    functionsReached:
    - dlclose
    - FreeLibrary
    linkageType: ''
    returnType: void
    signature: void cuUninit()
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: CHECKED_CALL
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:357,1
    - Dst: LOAD_LIBRARY_CUDA
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:357,1
    - Dst: GET_PROC_EX
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:361,1
    - Dst: cuUninit
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:363,1
    - Dst: CHECKED_CALL
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:367,1
    - Dst: _cuInit
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:367,1
    - Dst: GET_PROC_OPTIONAL
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:370,1
    - Dst: CHECKED_CALL
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:374,1
    - Dst: cuDriverGetVersion
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:374,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:378,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:379,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:380,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:381,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:382,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:383,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:384,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:385,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:386,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:387,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:388,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:389,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:390,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:391,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:392,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:393,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:394,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:395,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:396,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:397,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:398,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:399,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:400,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:401,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:402,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:403,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:404,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:405,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:406,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:407,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:408,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:409,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:410,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:411,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:412,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:413,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:414,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:415,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:416,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:417,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:418,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:419,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:420,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:421,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:422,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:423,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:424,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:425,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:426,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:427,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:428,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:429,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:430,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:431,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:436,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:437,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:438,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:439,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:440,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:445,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:446,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:447,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:448,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:449,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:450,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:451,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:452,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:453,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:454,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:455,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:456,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:457,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:458,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:459,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:460,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:461,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:462,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:463,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:464,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:465,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:466,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:467,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:468,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:469,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:470,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:471,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:472,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:473,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:474,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:475,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:476,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:477,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:478,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:479,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:480,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:481,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:482,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:483,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:484,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:488,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:489,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:490,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:491,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:492,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:493,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:494,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:495,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:496,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:497,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:498,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:499,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:500,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:501,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:502,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:503,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:504,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:505,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:506,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:507,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:508,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:509,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:510,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:511,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:512,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:513,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:514,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:515,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:516,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:517,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:518,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:519,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:520,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:521,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:522,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:523,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:524,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:525,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:526,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:527,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:533,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:534,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:539,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:544,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:545,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:547,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:548,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:553,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:557,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:560,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:561,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:562,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:563,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:568,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:569,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:570,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:571,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:572,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:577,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:578,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:579,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:580,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:581,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:582,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:583,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:589,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:590,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:591,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:593,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:598,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:599,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:603,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:605,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:607,1
    - Dst: GET_PROC_V2
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:609,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:610,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:611,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:612,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:613,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:614,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:615,1
    - Dst: LOAD_LIBRARY_CUVID
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:619,1
    - Dst: cuUninit
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:621,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:629,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:630,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:631,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:632,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:633,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:634,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:635,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:638,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:639,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:640,1
    - Dst: cuUninit
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:642,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:646,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:647,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:648,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:651,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:652,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:656,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:657,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:661,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:662,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:663,1
    - Dst: GET_PROC
      Src: /src/gpac/src/filters/dec_nvdec_sdk.c:664,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 255
    argCount: 4
    argNames:
    - Flags
    - cudaVersion
    - cuda_path
    - cuvid_path
    argTypes:
    - unsigned int
    - int
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 668
      start: 350
    functionDepth: 2
    functionLinenumber: 350
    functionLinenumberEnd: 668
    functionName: cuInit
    functionSourceFile: /src/gpac/src/filters/dec_nvdec_sdk.c
    functionUses: 1
    functionsReached:
    - GET_PROC_OPTIONAL
    - _cuInit
    - cuDriverGetVersion
    - GET_PROC_V2
    - CHECKED_CALL
    - GET_PROC
    - LOAD_LIBRARY_CUVID
    - GET_PROC_EX
    - cuUninit
    - LOAD_LIBRARY_CUDA
    linkageType: ''
    returnType: CUresult
    signature: CUresult cuInit(unsigned int Flags, int cudaVersion, const char *cuda_path,
      const char *cuvid_path)
  - BBCount: 46
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 94
    argCount: 1
    argNames:
    - error
    argTypes:
    - CUresult
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 672
    functionDepth: 0
    functionLinenumber: 672
    functionLinenumberEnd: 722
    functionName: cudaGetErrorEnum
    functionSourceFile: /src/gpac/src/filters/dec_nvdec_sdk.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *cudaGetErrorEnum(CUresult error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/in_route_repair.c:39,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/in_route_repair.c:42,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/in_route_repair.c:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - finfo
    argTypes:
    - GF_ROUTEEventFileInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 46
    functionName: update_first_frag
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: void
    signature: void update_first_frag(GF_ROUTEEventFileInfo *finfo)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: update_first_frag
      Src: /src/gpac/src/filters/in_route_repair.c:87,1
    - Dst: gf_route_dmx_patch_frag_info
      Src: /src/gpac/src/filters/in_route_repair.c:101,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 37
    argCount: 4
    argNames:
    - ctx
    - service_id
    - finfo
    - repair_start_only
    argTypes:
    - ROUTEInCtx*
    - u32
    - GF_ROUTEEventFileInfo*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 49
    functionDepth: 3
    functionLinenumber: 49
    functionLinenumberEnd: 103
    functionName: routein_repair_segment_ts_local
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 0
    functionsReached:
    - update_first_frag
    - gf_route_dmx_patch_frag_info
    linkageType: ''
    returnType: Bool
    signature: Bool routein_repair_segment_ts_local(ROUTEInCtx *ctx, u32 service_id,
      GF_ROUTEEventFileInfo *finfo, Bool repair_start_only)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:155,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:167,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 42
    argCount: 6
    argNames:
    - finfo
    - data
    - size
    - check_start
    - cur_pos
    - box_size
    argTypes:
    - GF_ROUTEEventFileInfo*
    - u8*
    - u32
    - Bool
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 177
    functionName: next_top_level_box
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 0
    functionsReached:
    - GF_4CC
    linkageType: ''
    returnType: u32
    signature: u32 next_top_level_box(GF_ROUTEEventFileInfo *finfo, u8 *data, u32
      size, Bool check_start, u32 *cur_pos, u32 *box_size)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: update_first_frag
      Src: /src/gpac/src/filters/in_route_repair.c:219,1
    - Dst: next_top_level_box
      Src: /src/gpac/src/filters/in_route_repair.c:223,1
    - Dst: gf_route_dmx_patch_frag_info
      Src: /src/gpac/src/filters/in_route_repair.c:231,1
    - Dst: gf_route_dmx_patch_blob_size
      Src: /src/gpac/src/filters/in_route_repair.c:236,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:239,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:241,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:245,1
    - Dst: gf_route_dmx_patch_blob_size
      Src: /src/gpac/src/filters/in_route_repair.c:247,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:251,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:254,1
    - Dst: gf_route_dmx_patch_blob_size
      Src: /src/gpac/src/filters/in_route_repair.c:265,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_route_repair.c:271,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_route_repair.c:280,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:282,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:284,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:295,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/in_route_repair.c:295,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:300,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_route_repair.c:312,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_route_repair.c:321,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:323,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:327,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:330,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:337,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:358,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/in_route_repair.c:358,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:369,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:372,1
    - Dst: MAX
      Src: /src/gpac/src/filters/in_route_repair.c:378,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:380,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:396,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/in_route_repair.c:396,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_route_repair.c:400,1
    - Dst: MIN
      Src: /src/gpac/src/filters/in_route_repair.c:400,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:412,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:417,1
    - Dst: gf_route_dmx_patch_blob_size
      Src: /src/gpac/src/filters/in_route_repair.c:418,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_route_repair.c:432,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:433,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:435,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:440,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:450,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:454,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:459,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:462,1
    - Dst: gf_route_dmx_patch_frag_info
      Src: /src/gpac/src/filters/in_route_repair.c:471,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:472,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 226
    argCount: 4
    argNames:
    - ctx
    - service_id
    - finfo
    - repair_start_only
    argTypes:
    - ROUTEInCtx*
    - u32
    - GF_ROUTEEventFileInfo*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 181
    functionDepth: 3
    functionLinenumber: 181
    functionLinenumberEnd: 474
    functionName: routein_repair_segment_isobmf_local
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_assert
    - update_first_frag
    - next_top_level_box
    - GF_LOG
    - MIN
    - gf_route_dmx_patch_frag_info
    - memset
    - GF_4CC
    - MAX
    - gf_route_dmx_patch_blob_size
    linkageType: ''
    returnType: void
    signature: void routein_repair_segment_isobmf_local(ROUTEInCtx *ctx, u32 service_id,
      GF_ROUTEEventFileInfo *finfo, Bool repair_start_only)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/in_route_repair.c:478,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/in_route_repair.c:480,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_route_repair.c:486,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:491,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:494,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_route_repair.c:496,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 4
    argNames:
    - ctx
    - rsi
    - start_range
    - end_range
    argTypes:
    - ROUTEInCtx*
    - RepairSegmentInfo*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 476
    functionDepth: 3
    functionLinenumber: 476
    functionLinenumberEnd: 498
    functionName: queue_repair_range
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_list_pop_back
    - GF_SAFEALLOC
    - memset
    - gf_list_add
    linkageType: ''
    returnType: RouteRepairRange
    signature: RouteRepairRange *queue_repair_range(ROUTEInCtx *ctx, RepairSegmentInfo
      *rsi, u32 start_range, u32 end_range)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_statistics
      Src: /src/gpac/src/filters/in_route_repair.c:511,1
    - Dst: gf_filter_pid_get_statistics
      Src: /src/gpac/src/filters/in_route_repair.c:512,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:514,1
    - Dst: queue_repair_range
      Src: /src/gpac/src/filters/in_route_repair.c:522,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:555,1
    - Dst: queue_repair_range
      Src: /src/gpac/src/filters/in_route_repair.c:559,1
    - Dst: queue_repair_range
      Src: /src/gpac/src/filters/in_route_repair.c:571,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:576,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:580,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/in_route_repair.c:581,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route_repair.c:582,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route_repair.c:584,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_route_repair.c:585,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:589,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:592,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 65
    argCount: 3
    argNames:
    - ctx
    - rsi
    - finfo
    argTypes:
    - ROUTEInCtx*
    - RepairSegmentInfo*
    - GF_ROUTEEventFileInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 594
      start: 500
    functionDepth: 4
    functionLinenumber: 500
    functionLinenumberEnd: 594
    functionName: route_repair_build_ranges_full
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_assert
    - gf_list_pop_back
    - gf_list_get
    - GF_LOG
    - gf_list_count
    - queue_repair_range
    - memset
    - gf_filter_pid_get_statistics
    linkageType: ''
    returnType: void
    signature: void route_repair_build_ranges_full(ROUTEInCtx *ctx, RepairSegmentInfo
      *rsi, GF_ROUTEEventFileInfo *finfo)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:598,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/in_route_repair.c:600,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_route_repair.c:601,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route_repair.c:607,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/in_route_repair.c:615,1
    - Dst: get_dependent_samples
      Src: /src/gpac/src/filters/in_route_repair.c:617,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 26
    argCount: 4
    argNames:
    - sample_deps
    - for_sample
    - ref_sample
    - done
    argTypes:
    - GF_List*
    - SampleDepInfo*
    - SampleDepInfo*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 596
    functionDepth: 2
    functionLinenumber: 596
    functionLinenumberEnd: 622
    functionName: get_dependent_samples
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 1
    functionsReached:
    - get_dependent_samples
    - gf_list_get
    - gf_list_find
    - gf_list_count
    - gf_list_add
    linkageType: ''
    returnType: u32
    signature: u32 get_dependent_samples(GF_List *sample_deps, SampleDepInfo *for_sample,
      SampleDepInfo *ref_sample, GF_List *done)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route_repair.c:626,1
    - Dst: get_dependent_samples
      Src: /src/gpac/src/filters/in_route_repair.c:627,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/in_route_repair.c:628,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - sample_deps
    - for_sample
    argTypes:
    - GF_List*
    - SampleDepInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 624
    functionDepth: 3
    functionLinenumber: 624
    functionLinenumberEnd: 629
    functionName: update_num_dependent_samples
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 0
    functionsReached:
    - get_dependent_samples
    - gf_list_new
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void update_num_dependent_samples(GF_List *sample_deps, SampleDepInfo
      *for_sample)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_open_progressive_ex
      Src: /src/gpac/src/filters/in_route_repair.c:638,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/in_route_repair.c:641,1
    - Dst: gf_isom_open_segment
      Src: /src/gpac/src/filters/in_route_repair.c:642,1
    - Dst: gf_isom_delete
      Src: /src/gpac/src/filters/in_route_repair.c:644,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/filters/in_route_repair.c:649,1
    - Dst: gf_isom_get_sample_references
      Src: /src/gpac/src/filters/in_route_repair.c:650,1
    - Dst: gf_isom_delete
      Src: /src/gpac/src/filters/in_route_repair.c:651,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route_repair.c:655,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/in_route_repair.c:663,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/in_route_repair.c:665,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_route_repair.c:670,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_route_repair.c:674,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_route_repair.c:676,1
    - Dst: gf_isom_get_sample_info_ex
      Src: /src/gpac/src/filters/in_route_repair.c:677,1
    - Dst: gf_isom_get_sample_references
      Src: /src/gpac/src/filters/in_route_repair.c:683,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/in_route_repair.c:692,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/in_route_repair.c:699,1
    - Dst: gf_isom_delete
      Src: /src/gpac/src/filters/in_route_repair.c:702,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route_repair.c:705,1
    - Dst: update_num_dependent_samples
      Src: /src/gpac/src/filters/in_route_repair.c:706,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route_repair.c:711,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route_repair.c:713,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:714,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route_repair.c:716,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/in_route_repair.c:720,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/in_route_repair.c:725,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_route_repair.c:731,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/in_route_repair.c:733,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:735,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route_repair.c:737,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:747,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 91
    argCount: 2
    argNames:
    - ctx
    - rsi
    argTypes:
    - ROUTEInCtx*
    - RepairSegmentInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 631
    functionDepth: 8
    functionLinenumber: 631
    functionLinenumberEnd: 750
    functionName: routein_repair_get_isobmf_deps
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 0
    functionsReached:
    - gf_isom_delete
    - GF_SAFEALLOC
    - gf_isom_get_sample_count
    - gf_list_count
    - memset
    - gf_realloc
    - gf_list_new
    - gf_list_pop_back
    - gf_list_get
    - memcpy
    - sprintf
    - gf_isom_get_sample_references
    - gf_isom_open_progressive_ex
    - gf_list_add
    - gf_list_insert
    - GF_LOG
    - gf_isom_get_sample_info_ex
    - gf_isom_open_segment
    - gf_list_del
    - update_num_dependent_samples
    linkageType: ''
    returnType: void
    signature: void routein_repair_get_isobmf_deps(ROUTEInCtx *ctx, RepairSegmentInfo
      *rsi)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:757,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route_repair.c:761,1
    - Dst: drop_sample_ref
      Src: /src/gpac/src/filters/in_route_repair.c:765,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 17
    argCount: 3
    argNames:
    - sample_deps
    - ref
    - primary
    argTypes:
    - GF_List*
    - SampleDepInfo*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 770
      start: 752
    functionDepth: 1
    functionLinenumber: 752
    functionLinenumberEnd: 770
    functionName: drop_sample_ref
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - drop_sample_ref
    linkageType: ''
    returnType: void
    signature: void drop_sample_ref(GF_List *sample_deps, SampleDepInfo *ref, Bool
      primary)
  - BBCount: 53
    BranchProfiles: []
    Callsites:
    - Dst: queue_repair_range
      Src: /src/gpac/src/filters/in_route_repair.c:791,1
    - Dst: queue_repair_range
      Src: /src/gpac/src/filters/in_route_repair.c:805,1
    - Dst: next_top_level_box
      Src: /src/gpac/src/filters/in_route_repair.c:823,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:827,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:832,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:833,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:843,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:843,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:882,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:882,1
    - Dst: queue_repair_range
      Src: /src/gpac/src/filters/in_route_repair.c:917,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:922,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/in_route_repair.c:922,1
    - Dst: queue_repair_range
      Src: /src/gpac/src/filters/in_route_repair.c:933,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:942,1
    - Dst: route_repair_build_ranges_full
      Src: /src/gpac/src/filters/in_route_repair.c:947,1
    - Dst: routein_repair_get_isobmf_deps
      Src: /src/gpac/src/filters/in_route_repair.c:963,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:964,1
    - Dst: route_repair_build_ranges_full
      Src: /src/gpac/src/filters/in_route_repair.c:967,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:975,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:978,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route_repair.c:980,1
    - Dst: drop_sample_ref
      Src: /src/gpac/src/filters/in_route_repair.c:987,1
    - Dst: drop_sample_ref
      Src: /src/gpac/src/filters/in_route_repair.c:999,1
    - Dst: queue_repair_range
      Src: /src/gpac/src/filters/in_route_repair.c:1028,1
    - Dst: queue_repair_range
      Src: /src/gpac/src/filters/in_route_repair.c:1046,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:1055,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1058,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:1061,1
    - Dst: gf_route_dmx_patch_frag_info
      Src: /src/gpac/src/filters/in_route_repair.c:1062,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route_repair.c:1065,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:1067,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_route_repair.c:1073,1
    - Dst: gf_route_dmx_add_frag_hole
      Src: /src/gpac/src/filters/in_route_repair.c:1085,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1089,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/in_route_repair.c:1092,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/in_route_repair.c:1094,1
    CyclomaticComplexity: 94
    EdgeCount: 94
    ICount: 229
    argCount: 3
    argNames:
    - ctx
    - rsi
    - finfo
    argTypes:
    - ROUTEInCtx*
    - RepairSegmentInfo*
    - GF_ROUTEEventFileInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1095
      start: 774
    functionDepth: 9
    functionLinenumber: 774
    functionLinenumberEnd: 1095
    functionName: route_repair_build_ranges_isobmf
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_assert
    - gf_list_get
    - next_top_level_box
    - drop_sample_ref
    - gf_mx_p
    - GF_LOG
    - gf_route_dmx_patch_frag_info
    - gf_list_count
    - queue_repair_range
    - memset
    - gf_mx_v
    - GF_4CC
    - route_repair_build_ranges_full
    - routein_repair_get_isobmf_deps
    - gf_route_dmx_add_frag_hole
    linkageType: ''
    returnType: void
    signature: void route_repair_build_ranges_isobmf(ROUTEInCtx *ctx, RepairSegmentInfo
      *rsi, GF_ROUTEEventFileInfo *finfo)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/in_route_repair.c:1106,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/in_route_repair.c:1108,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/in_route_repair.c:1109,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/in_route_repair.c:1110,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/in_route_repair.c:1111,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/in_route_repair.c:1112,1
    - Dst: gf_m2ts_probe_data
      Src: /src/gpac/src/filters/in_route_repair.c:1114,1
    - Dst: next_top_level_box
      Src: /src/gpac/src/filters/in_route_repair.c:1116,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 3
    argNames:
    - finfo
    - data
    - size
    argTypes:
    - GF_ROUTEEventFileInfo*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1119
      start: 1104
    functionDepth: 8
    functionLinenumber: 1104
    functionLinenumberEnd: 1119
    functionName: guess_file_type
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_probe_data
    - gf_file_ext_start
    - next_top_level_box
    - stricmp
    linkageType: ''
    returnType: u32
    signature: u32 guess_file_type(GF_ROUTEEventFileInfo *finfo, u8 *data, u32 size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: guess_file_type
      Src: /src/gpac/src/filters/in_route_repair.c:1123,1
    - Dst: gf_route_dmx_set_object_hint
      Src: /src/gpac/src/filters/in_route_repair.c:1125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctx
    - finfo
    - service_id
    argTypes:
    - ROUTEInCtx*
    - GF_ROUTEEventFileInfo*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1127
      start: 1121
    functionDepth: 9
    functionLinenumber: 1121
    functionLinenumberEnd: 1127
    functionName: routein_check_type
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 0
    functionsReached:
    - guess_file_type
    - gf_route_dmx_set_object_hint
    linkageType: ''
    returnType: void
    signature: void routein_check_type(ROUTEInCtx *ctx, GF_ROUTEEventFileInfo *finfo,
      u32 service_id)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1132,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:1135,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:1136,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:1138,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:1139,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:1140,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:1141,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:1142,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:1143,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:1144,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:1145,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:1146,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:1147,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:1148,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:1149,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1150,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/in_route_repair.c:1150,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1153,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/in_route_repair.c:1153,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1162,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1165,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1167,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:1169,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:1170,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:1173,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 41
    argCount: 2
    argNames:
    - ctx
    - finfo
    argTypes:
    - ROUTEInCtx*
    - GF_ROUTEEventFileInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1176
      start: 1129
    functionDepth: 3
    functionLinenumber: 1129
    functionLinenumberEnd: 1176
    functionName: routein_check_isobmf
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - GF_LOG
    - gf_assert
    - GF_4CC
    linkageType: ''
    returnType: void
    signature: void routein_check_isobmf(ROUTEInCtx *ctx, GF_ROUTEEventFileInfo *finfo)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/in_route_repair.c:1185,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/in_route_repair.c:1194,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1200,1
    - Dst: routein_check_type
      Src: /src/gpac/src/filters/in_route_repair.c:1204,1
    - Dst: routein_repair_segment_ts_local
      Src: /src/gpac/src/filters/in_route_repair.c:1208,1
    - Dst: routein_repair_segment_isobmf_local
      Src: /src/gpac/src/filters/in_route_repair.c:1211,1
    - Dst: routein_check_isobmf
      Src: /src/gpac/src/filters/in_route_repair.c:1213,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/in_route_repair.c:1223,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 40
    argCount: 5
    argNames:
    - ctx
    - evt
    - evt_param
    - finfo
    - start_only
    argTypes:
    - ROUTEInCtx*
    - GF_ROUTEEventType
    - u32
    - GF_ROUTEEventFileInfo*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1226
      start: 1179
    functionDepth: 10
    functionLinenumber: 1179
    functionLinenumberEnd: 1226
    functionName: routein_repair_local
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - routein_repair_segment_ts_local
    - GF_LOG
    - routein_check_isobmf
    - routein_check_type
    - gf_mx_v
    - routein_repair_segment_isobmf_local
    linkageType: ''
    returnType: Bool
    signature: Bool routein_repair_local(ROUTEInCtx *ctx, GF_ROUTEEventType evt, u32
      evt_param, GF_ROUTEEventFileInfo *finfo, Bool start_only)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: next_top_level_box
      Src: /src/gpac/src/filters/in_route_repair.c:1240,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/in_route_repair.c:1248,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 1
    argNames:
    - finfo
    argTypes:
    - GF_ROUTEEventFileInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1255
      start: 1228
    functionDepth: 1
    functionLinenumber: 1228
    functionLinenumberEnd: 1255
    functionName: routein_get_max_dispatch_len
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 0
    functionsReached:
    - next_top_level_box
    - GF_4CC
    linkageType: ''
    returnType: u32
    signature: u32 routein_get_max_dispatch_len(GF_ROUTEEventFileInfo *finfo)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/filters/in_route_repair.c:1263,1
    - Dst: gf_route_dmx_get_object_info
      Src: /src/gpac/src/filters/in_route_repair.c:1264,1
    - Dst: routein_get_max_dispatch_len
      Src: /src/gpac/src/filters/in_route_repair.c:1275,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/in_route_repair.c:1279,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/in_route_repair.c:1287,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/in_route_repair.c:1300,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 34
    argCount: 4
    argNames:
    - blob
    - check_when_complete
    - start_offset
    - io_size
    argTypes:
    - GF_Blob*
    - Bool
    - u64
    - u32*
    assertStmts:
    - condition: (io_size)
      pos:
        line_end: 1262
        line_start: 1262
        source_file: /src/gpac/src/filters/in_route_repair.c
    constantsTouched: []
    func_position:
      end: 1304
      start: 1259
    functionDepth: 2
    functionLinenumber: 1259
    functionLinenumberEnd: 1304
    functionName: routein_check_blob_range
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - assert
    - routein_get_max_dispatch_len
    - gf_mx_v
    - gf_route_dmx_get_object_info
    linkageType: ''
    returnType: GF_BlobRangeStatus
    signature: GF_BlobRangeStatus routein_check_blob_range(GF_Blob *blob, Bool check_when_complete,
      u64 start_offset, u32 *io_size)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1314,1
    - Dst: routein_on_event_file
      Src: /src/gpac/src/filters/in_route_repair.c:1327,1
    - Dst: routein_get_tsio
      Src: /src/gpac/src/filters/in_route_repair.c:1335,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:1347,1
    - Dst: routein_on_event_file
      Src: /src/gpac/src/filters/in_route_repair.c:1370,1
    - Dst: routein_get_max_dispatch_len
      Src: /src/gpac/src/filters/in_route_repair.c:1381,1
    - Dst: routein_on_event_file
      Src: /src/gpac/src/filters/in_route_repair.c:1383,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:1388,1
    - Dst: routein_on_event_file
      Src: /src/gpac/src/filters/in_route_repair.c:1399,1
    - Dst: routein_on_event_file
      Src: /src/gpac/src/filters/in_route_repair.c:1404,1
    - Dst: routein_repair_local
      Src: /src/gpac/src/filters/in_route_repair.c:1409,1
    - Dst: routein_on_event_file
      Src: /src/gpac/src/filters/in_route_repair.c:1410,1
    - Dst: routein_on_event_file
      Src: /src/gpac/src/filters/in_route_repair.c:1417,1
    - Dst: routein_get_max_dispatch_len
      Src: /src/gpac/src/filters/in_route_repair.c:1423,1
    - Dst: routein_on_event_file
      Src: /src/gpac/src/filters/in_route_repair.c:1425,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:1436,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route_repair.c:1438,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/in_route_repair.c:1449,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/in_route_repair.c:1451,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route_repair.c:1452,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1456,1
    - Dst: routein_repair_local
      Src: /src/gpac/src/filters/in_route_repair.c:1463,1
    - Dst: routein_on_event_file
      Src: /src/gpac/src/filters/in_route_repair.c:1466,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1470,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_route_repair.c:1475,1
    - Dst: route_repair_build_ranges_isobmf
      Src: /src/gpac/src/filters/in_route_repair.c:1485,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_route_repair.c:1487,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_route_repair.c:1488,1
    - Dst: repair_session_dequeue
      Src: /src/gpac/src/filters/in_route_repair.c:1489,1
    - Dst: route_repair_build_ranges_full
      Src: /src/gpac/src/filters/in_route_repair.c:1493,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:1503,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:1504,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/in_route_repair.c:1508,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/in_route_repair.c:1510,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:1513,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:1514,1
    - Dst: gf_route_dmx_force_keep_object
      Src: /src/gpac/src/filters/in_route_repair.c:1519,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:1522,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route_repair.c:1524,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/in_route_repair.c:1526,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_route_repair.c:1532,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route_repair.c:1536,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:1539,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route_repair.c:1541,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/in_route_repair.c:1543,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_route_repair.c:1547,1
    CyclomaticComplexity: 70
    EdgeCount: 70
    ICount: 172
    argCount: 4
    argNames:
    - ctx
    - evt
    - evt_param
    - finfo
    argTypes:
    - ROUTEInCtx*
    - GF_ROUTEEventType
    - u32
    - GF_ROUTEEventFileInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1548
      start: 1307
    functionDepth: 11
    functionLinenumber: 1307
    functionLinenumberEnd: 1548
    functionName: routein_queue_repair
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 0
    functionsReached:
    - route_repair_build_ranges_isobmf
    - GF_SAFEALLOC
    - gf_list_count
    - gf_assert
    - gf_list_get
    - gf_list_pop_back
    - gf_list_new
    - gf_strdup
    - routein_get_max_dispatch_len
    - gf_list_add
    - repair_session_dequeue
    - gf_mx_p
    - gf_list_insert
    - routein_get_tsio
    - GF_LOG
    - gf_mx_v
    - gf_route_dmx_force_keep_object
    - routein_repair_local
    - routein_on_event_file
    - route_repair_build_ranges_full
    linkageType: ''
    returnType: void
    signature: void routein_queue_repair(ROUTEInCtx *ctx, GF_ROUTEEventType evt, u32
      evt_param, GF_ROUTEEventFileInfo *finfo)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:1562,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/in_route_repair.c:1562,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/in_route_repair.c:1566,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1574,1
    - Dst: routein_repair_local
      Src: /src/gpac/src/filters/in_route_repair.c:1577,1
    - Dst: routein_check_isobmf
      Src: /src/gpac/src/filters/in_route_repair.c:1590,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1594,1
    - Dst: routein_on_event_file
      Src: /src/gpac/src/filters/in_route_repair.c:1596,1
    - Dst: gf_route_dmx_force_keep_object
      Src: /src/gpac/src/filters/in_route_repair.c:1601,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/in_route_repair.c:1602,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:1603,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route_repair.c:1608,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route_repair.c:1610,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:1611,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_route_repair.c:1612,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/in_route_repair.c:1612,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/in_route_repair.c:1614,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_route_repair.c:1616,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_route_repair.c:1618,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route_repair.c:1623,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 60
    argCount: 2
    argNames:
    - ctx
    - rsi
    argTypes:
    - ROUTEInCtx*
    - RepairSegmentInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1626
      start: 1551
    functionDepth: 11
    functionLinenumber: 1551
    functionLinenumberEnd: 1626
    functionName: repair_session_dequeue
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_assert
    - gf_list_new
    - gf_list_pop_back
    - gf_route_dmx_force_keep_object
    - gf_list_get
    - routein_repair_local
    - GF_LOG
    - gf_list_find
    - routein_check_isobmf
    - gf_list_count
    - memset
    - gf_list_add
    - gf_list_del_item
    - routein_on_event_file
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void repair_session_dequeue(ROUTEInCtx *ctx, RepairSegmentInfo *rsi)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1645,1
    - Dst: gf_route_dmx_patch_frag_info
      Src: /src/gpac/src/filters/in_route_repair.c:1647,1
    - Dst: gf_dm_sess_get_resource_size
      Src: /src/gpac/src/filters/in_route_repair.c:1652,1
    - Dst: gf_route_dmx_patch_blob_size
      Src: /src/gpac/src/filters/in_route_repair.c:1659,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:1662,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1670,1
    - Dst: queue_repair_range
      Src: /src/gpac/src/filters/in_route_repair.c:1671,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1674,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_route_repair.c:1677,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:1690,1
    - Dst: route_repair_build_ranges_isobmf
      Src: /src/gpac/src/filters/in_route_repair.c:1695,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/filters/in_route_repair.c:1700,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:1703,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/in_route_repair.c:1708,1
    - Dst: routein_on_event_file
      Src: /src/gpac/src/filters/in_route_repair.c:1714,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/in_route_repair.c:1718,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/in_route_repair.c:1722,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:1724,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/in_route_repair.c:1731,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/in_route_repair.c:1735,1
    - Dst: repair_session_dequeue
      Src: /src/gpac/src/filters/in_route_repair.c:1743,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 83
    argCount: 3
    argNames:
    - ctx
    - rsess
    - res_code
    argTypes:
    - ROUTEInCtx*
    - RouteRepairSession*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1744
      start: 1628
    functionDepth: 12
    functionLinenumber: 1628
    functionLinenumberEnd: 1744
    functionName: repair_session_done
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 0
    functionsReached:
    - repair_session_dequeue
    - route_repair_build_ranges_isobmf
    - gf_assert
    - gf_mx_p
    - gf_list_transfer
    - GF_LOG
    - gf_list_find
    - gf_route_dmx_patch_frag_info
    - gf_list_count
    - queue_repair_range
    - gf_mx_v
    - gf_dm_sess_get_resource_size
    - gf_list_add
    - routein_on_event_file
    - gf_route_dmx_patch_blob_size
    linkageType: ''
    returnType: void
    signature: void repair_session_done(ROUTEInCtx *ctx, RouteRepairSession *rsess,
      GF_Err res_code)
  - BBCount: 56
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_route_repair.c:1760,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:1763,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route_repair.c:1766,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:1770,1
    - Dst: repair_session_done
      Src: /src/gpac/src/filters/in_route_repair.c:1776,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route_repair.c:1783,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route_repair.c:1786,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/in_route_repair.c:1795,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_route_repair.c:1796,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/in_route_repair.c:1809,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:1810,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:1811,1
    - Dst: gf_route_dmx_get_repair_info
      Src: /src/gpac/src/filters/in_route_repair.c:1814,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_route_repair.c:1815,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:1818,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route_repair.c:1819,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_route_repair.c:1820,1
    - Dst: routein_push_repair_server
      Src: /src/gpac/src/filters/in_route_repair.c:1829,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_route_repair.c:1835,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_route_repair.c:1839,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_route_repair.c:1843,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/in_route_repair.c:1847,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1852,1
    - Dst: repair_session_done
      Src: /src/gpac/src/filters/in_route_repair.c:1854,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/in_route_repair.c:1859,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/filters/in_route_repair.c:1860,1
    - Dst: gf_dm_sess_set_netcap_id
      Src: /src/gpac/src/filters/in_route_repair.c:1862,1
    - Dst: gf_dm_sess_set_timeout
      Src: /src/gpac/src/filters/in_route_repair.c:1863,1
    - Dst: gf_dm_sess_setup_from_url
      Src: /src/gpac/src/filters/in_route_repair.c:1866,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1869,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/in_route_repair.c:1869,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route_repair.c:1870,1
    - Dst: repair_session_done
      Src: /src/gpac/src/filters/in_route_repair.c:1871,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:1877,1
    - Dst: gf_dm_sess_set_range
      Src: /src/gpac/src/filters/in_route_repair.c:1879,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1880,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:1880,1
    - Dst: gf_dm_sess_set_range
      Src: /src/gpac/src/filters/in_route_repair.c:1892,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1895,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:1895,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route_repair.c:1897,1
    - Dst: gf_dm_sess_abort
      Src: /src/gpac/src/filters/in_route_repair.c:1908,1
    - Dst: gf_dm_sess_fetch_data
      Src: /src/gpac/src/filters/in_route_repair.c:1910,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_route_repair.c:1913,1
    - Dst: gf_dm_sess_get_resource_size
      Src: /src/gpac/src/filters/in_route_repair.c:1915,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1942,1
    - Dst: gf_dm_sess_abort
      Src: /src/gpac/src/filters/in_route_repair.c:1944,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/in_route_repair.c:1945,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_route_repair.c:1950,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:1952,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_route_repair.c:1958,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_route_repair.c:1962,1
    - Dst: gf_dm_sess_get_resource_size
      Src: /src/gpac/src/filters/in_route_repair.c:1975,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route_repair.c:1976,1
    - Dst: gf_route_dmx_patch_blob_size
      Src: /src/gpac/src/filters/in_route_repair.c:1980,1
    - Dst: gf_route_dmx_patch_blob_size
      Src: /src/gpac/src/filters/in_route_repair.c:2002,1
    - Dst: gf_dm_sess_get_resource_size
      Src: /src/gpac/src/filters/in_route_repair.c:2011,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:2020,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/in_route_repair.c:2024,1
    - Dst: gf_route_dmx_patch_blob_size
      Src: /src/gpac/src/filters/in_route_repair.c:2028,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/in_route_repair.c:2031,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/in_route_repair.c:2032,1
    - Dst: gf_dm_sess_abort
      Src: /src/gpac/src/filters/in_route_repair.c:2043,1
    - Dst: repair_session_done
      Src: /src/gpac/src/filters/in_route_repair.c:2045,1
    CyclomaticComplexity: 87
    EdgeCount: 87
    ICount: 242
    argCount: 2
    argNames:
    - ctx
    - rsess
    argTypes:
    - ROUTEInCtx*
    - RouteRepairSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2050
      start: 1746
    functionDepth: 13
    functionLinenumber: 1746
    functionLinenumberEnd: 2050
    functionName: repair_session_run
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - gf_dm_sess_get_resource_size
    - gf_dm_sess_del
    - strchr
    - gf_sys_clock
    - gf_dm_sess_setup_from_url
    - gf_list_get
    - gf_assert
    - repair_session_done
    - memcpy
    - strncmp
    - gf_dm_sess_new
    - gf_list_add
    - gf_dm_sess_abort
    - gf_mx_p
    - GF_LOG
    - gf_route_dmx_get_repair_info
    - strstr
    - gf_mx_v
    - gf_dm_sess_set_range
    - gf_list_del_item
    - gf_error_to_string
    - gf_route_dmx_patch_blob_size
    - strlen
    - gf_dm_sess_fetch_data
    - gf_filter_get_download_manager
    - gf_url_concatenate
    - gf_dm_sess_set_netcap_id
    - strcmp
    - gf_dm_sess_set_timeout
    - routein_push_repair_server
    linkageType: ''
    returnType: void
    signature: void repair_session_run(ROUTEInCtx *ctx, RouteRepairSession *rsess)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: repair_session_run
      Src: /src/gpac/src/filters/in_route_repair.c:2058,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - ROUTEInCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2064
      start: 2052
    functionDepth: 14
    functionLinenumber: 2052
    functionLinenumberEnd: 2064
    functionName: routein_do_repair
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 0
    functionsReached:
    - repair_session_run
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err routein_do_repair(ROUTEInCtx *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route_repair.c:2069,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route_repair.c:2071,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_route_repair.c:2072,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route_repair.c:2076,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 4
    argNames:
    - ctx
    - service_id
    - filename
    - is_delete
    argTypes:
    - ROUTEInCtx*
    - u32
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2084
      start: 2067
    functionDepth: 1
    functionLinenumber: 2067
    functionLinenumberEnd: 2084
    functionName: routein_repair_mark_file
    functionSourceFile: /src/gpac/src/filters/in_route_repair.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: void
    signature: void routein_repair_mark_file(ROUTEInCtx *ctx, u32 service_id, const
      char *filename, Bool is_delete)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_vobsub.c:70,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:72,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_vobsub.c:74,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_vobsub.c:82,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dmx_vobsub.c:84,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_vobsub.c:84,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dmx_vobsub.c:88,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dmx_vobsub.c:97,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dmx_vobsub.c:103,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_vobsub.c:103,1
    - Dst: gf_filter_remove_src
      Src: /src/gpac/src/filters/dmx_vobsub.c:108,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_vobsub.c:111,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dmx_vobsub.c:113,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filters/dmx_vobsub.c:113,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/dmx_vobsub.c:115,1
    - Dst: gf_filter_force_main_thread
      Src: /src/gpac/src/filters/dmx_vobsub.c:116,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dmx_vobsub.c:119,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dmx_vobsub.c:121,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dmx_vobsub.c:123,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/filters/dmx_vobsub.c:125,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dmx_vobsub.c:126,1
    - Dst: gf_fileio_factory
      Src: /src/gpac/src/filters/dmx_vobsub.c:127,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dmx_vobsub.c:129,1
    - Dst: gf_filter_connect_source
      Src: /src/gpac/src/filters/dmx_vobsub.c:133,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_vobsub.c:135,1
    - Dst: gf_filter_disable_probe
      Src: /src/gpac/src/filters/dmx_vobsub.c:137,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 61
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 66
    functionDepth: 5
    functionLinenumber: 66
    functionLinenumberEnd: 143
    functionName: vobsubdmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/dmx_vobsub.c
    functionUses: 0
    functionsReached:
    - strcpy
    - gf_fileio_translate_url
    - gf_fileio_is_main_thread
    - gf_filter_pid_check_caps
    - gf_fileio_from_url
    - gf_filter_disable_probe
    - gf_file_basename
    - strcat
    - gf_filter_force_main_thread
    - gf_fileio_factory
    - strncmp
    - gf_crc_32
    - gf_filter_get_udta
    - gf_filter_setup_failure
    - gf_filter_connect_source
    - strlen
    - gf_fclose
    - gf_filter_pid_get_property
    - gf_filter_get_opid_count
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - gf_filter_remove_src
    - gf_filter_get_opid
    - gf_file_ext_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vobsubdmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_vobsub.c:147,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 179
    functionName: vobsubdmx_process_event
    functionSourceFile: /src/gpac/src/filters/dmx_vobsub.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool vobsubdmx_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:190,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_vobsub.c:192,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_vobsub.c:193,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/dmx_vobsub.c:197,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_vobsub.c:199,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_vobsub.c:203,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_vobsub.c:205,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_vobsub.c:206,1
    - Dst: vobsub_read_idx
      Src: /src/gpac/src/filters/dmx_vobsub.c:210,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_vobsub.c:211,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_vobsub.c:213,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_vobsub.c:216,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dmx_vobsub.c:221,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_vobsub.c:229,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_vobsub.c:231,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dmx_vobsub.c:234,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:236,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_vobsub.c:236,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:237,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_vobsub.c:237,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:238,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_vobsub.c:238,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:239,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_vobsub.c:239,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:240,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/dmx_vobsub.c:240,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:243,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_vobsub.c:243,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:244,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_vobsub.c:244,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:245,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_vobsub.c:245,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:246,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/dmx_vobsub.c:246,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:247,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_vobsub.c:247,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dmx_vobsub.c:249,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 51
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_VOBSubDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 181
    functionDepth: 5
    functionLinenumber: 181
    functionLinenumberEnd: 253
    functionName: vobsubdmx_parse_idx
    functionSourceFile: /src/gpac/src/filters/dmx_vobsub.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_udta
    - gf_fclose
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_get_opid_count
    - GF_SAFEALLOC
    - PROP_UINT
    - GF_LOG
    - PROP_STRING
    - gf_filter_pid_set_property
    - vobsub_read_idx
    - gf_list_count
    - PROP_FRAC64
    - gf_fopen
    - gf_filter_setup_failure
    - PROP_DATA
    - gf_filter_pid_new
    - gf_list_last
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vobsubdmx_parse_idx(GF_Filter *filter, GF_VOBSubDmxCtx *ctx)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_vobsub.c:265,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_vobsub.c:268,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_vobsub.c:275,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/dmx_vobsub.c:284,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/dmx_vobsub.c:285,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_vobsub.c:286,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/dmx_vobsub.c:290,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_vobsub.c:291,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_vobsub.c:301,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_vobsub.c:309,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_vobsub.c:312,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_vobsub.c:313,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_vobsub.c:314,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dmx_vobsub.c:315,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_vobsub.c:316,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_vobsub.c:319,1
    - Dst: MIN
      Src: /src/gpac/src/filters/dmx_vobsub.c:324,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_vobsub.c:325,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/dmx_vobsub.c:328,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_vobsub.c:337,1
    - Dst: vobsub_get_subpic_duration
      Src: /src/gpac/src/filters/dmx_vobsub.c:341,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_vobsub.c:342,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_vobsub.c:346,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_vobsub.c:347,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dmx_vobsub.c:348,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_vobsub.c:351,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_vobsub.c:353,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_vobsub.c:357,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 73
    argCount: 2
    argNames:
    - ctx
    - pid
    argTypes:
    - GF_VOBSubDmxCtx*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 255
    functionDepth: 2
    functionLinenumber: 255
    functionLinenumberEnd: 360
    functionName: vobsubdmx_send_stream
    functionSourceFile: /src/gpac/src/filters/dmx_vobsub.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pck_new_alloc
    - gf_fseek
    - gf_filter_pck_set_cts
    - GF_LOG
    - gf_fread
    - memcpy
    - gf_filter_pck_set_duration
    - gf_filter_pck_send
    - MIN
    - vobsub_get_subpic_duration
    - gf_list_count
    - gf_filter_pid_would_block
    - gf_filter_pck_set_sap
    - gf_filter_pid_get_udta
    - gf_ftell
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vobsubdmx_send_stream(GF_VOBSubDmxCtx *ctx, GF_FilterPid *pid)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_vobsub.c:364,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_vobsub.c:371,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/dmx_vobsub.c:373,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_vobsub.c:375,1
    - Dst: vobsubdmx_parse_idx
      Src: /src/gpac/src/filters/dmx_vobsub.c:377,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_vobsub.c:379,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_vobsub.c:381,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:391,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_vobsub.c:393,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_vobsub.c:394,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/dmx_vobsub.c:397,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_vobsub.c:400,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_vobsub.c:402,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dmx_vobsub.c:406,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/dmx_vobsub.c:407,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_vobsub.c:409,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_vobsub.c:412,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_vobsub.c:414,1
    - Dst: vobsubdmx_send_stream
      Src: /src/gpac/src/filters/dmx_vobsub.c:415,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_vobsub.c:418,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_vobsub.c:424,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 50
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 362
    functionDepth: 6
    functionLinenumber: 362
    functionLinenumberEnd: 428
    functionName: vobsubdmx_process
    functionSourceFile: /src/gpac/src/filters/dmx_vobsub.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_framing
    - gf_filter_pid_get_property
    - gf_filter_get_opid_count
    - vobsubdmx_send_stream
    - GF_LOG
    - gf_filter_pck_get_data
    - vobsubdmx_parse_idx
    - gf_filter_pid_set_eos
    - gf_filter_get_opid
    - gf_fopen
    - gf_filter_setup_failure
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vobsubdmx_process(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_vobsub.c:432,1
    - Dst: vobsub_free
      Src: /src/gpac/src/filters/dmx_vobsub.c:433,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_vobsub.c:434,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 435
      start: 430
    functionDepth: 5
    functionLinenumber: 430
    functionLinenumberEnd: 435
    functionName: vobsubdmx_finalize
    functionSourceFile: /src/gpac/src/filters/dmx_vobsub.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - vobsub_free
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void vobsubdmx_finalize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_vobsub.c:439,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 437
    functionDepth: 0
    functionLinenumber: 437
    functionLinenumberEnd: 444
    functionName: vobsubdmx_probe_data
    functionSourceFile: /src/gpac/src/filters/dmx_vobsub.c
    functionUses: 0
    functionsReached:
    - strncmp
    linkageType: ''
    returnType: char
    signature: char * vobsubdmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 446
    functionDepth: 0
    functionLinenumber: 446
    functionLinenumberEnd: 447
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dmx_vobsub.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 484
    functionDepth: 0
    functionLinenumber: 484
    functionLinenumberEnd: 492
    functionName: vobsubdmx_register
    functionSourceFile: /src/gpac/src/filters/dmx_vobsub.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *vobsubdmx_register(GF_FilterSession *session)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_gsf.c:148,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_gsf.c:153,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_gsf.c:154,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dmx_gsf.c:156,1
    - Dst: gsfdmx_stream_del
      Src: /src/gpac/src/filters/dmx_gsf.c:157,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dmx_gsf.c:161,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 146
    functionDepth: 3
    functionLinenumber: 146
    functionLinenumberEnd: 166
    functionName: gsfdmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_back
    - gf_filter_pid_remove
    - gsfdmx_stream_del
    - gf_list_count
    - gf_filter_pid_check_caps
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gsfdmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_gsf.c:171,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_gsf.c:205,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_gsf.c:207,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dmx_gsf.c:218,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 48
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 232
    functionName: gsfdmx_process_event
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_filter_post_process_task
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool gsfdmx_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/dmx_gsf.c:243,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/dmx_gsf.c:248,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/dmx_gsf.c:257,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - ctx
    - data
    - size
    argTypes:
    - GSF_DemuxCtx*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 260
    functionName: gsfdmx_decrypt
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_crypt_set_IV
    - gf_crypt_decrypt
    linkageType: ''
    returnType: void
    signature: void gsfdmx_decrypt(GSF_DemuxCtx *ctx, char *data, u32 size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:264,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:265,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:266,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:267,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:268,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:269,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:270,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:271,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/dmx_gsf.c:273,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 262
    functionDepth: 6
    functionLinenumber: 262
    functionLinenumberEnd: 274
    functionName: gsfdmx_read_vlen
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_long_int
    - gf_bs_read_int
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gsfdmx_read_vlen(GF_BitStream *bs)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:283,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_gsf.c:287,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_gsf.c:290,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_gsf.c:293,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:296,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:297,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_gsf.c:300,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_gsf.c:301,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/dmx_gsf.c:304,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/filters/dmx_gsf.c:304,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/filters/dmx_gsf.c:307,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:310,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:311,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/filters/dmx_gsf.c:314,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/filters/dmx_gsf.c:315,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:318,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:319,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:320,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:323,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:324,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:325,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:326,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:332,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:335,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:338,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dmx_gsf.c:339,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:347,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:351,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:354,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dmx_gsf.c:355,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:359,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:363,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:366,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:368,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:371,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:375,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:376,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:379,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dmx_gsf.c:380,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:388,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:391,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:394,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:396,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:400,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:403,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:406,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_gsf.c:408,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:412,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:415,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:418,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:420,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:421,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:425,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filters/dmx_gsf.c:428,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:429,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:432,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 154
    argCount: 2
    argNames:
    - bs
    - p
    argTypes:
    - GF_BitStream*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 276
    functionDepth: 7
    functionLinenumber: 276
    functionLinenumberEnd: 436
    functionName: gsfdmx_read_prop
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_bs_read_data
    - gf_free
    - gf_bs_read_u32
    - gf_bs_read_double
    - GF_LOG
    - gf_props_type_is_enum
    - gf_bs_read_float
    - gf_bs_read_u8
    - gf_bs_read_u64
    - gsfdmx_read_vlen
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gsfdmx_read_prop(GF_BitStream *bs, GF_PropertyValue *p)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_gsf.c:443,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_gsf.c:445,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_gsf.c:450,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_gsf.c:452,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_gsf.c:454,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_gsf.c:455,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:460,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 4
    argNames:
    - filter
    - ctx
    - idx
    - pkt_type
    argTypes:
    - GF_Filter*
    - GSF_DemuxCtx*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 438
    functionDepth: 1
    functionLinenumber: 438
    functionLinenumberEnd: 462
    functionName: gsfdmx_get_stream
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_count
    - gf_list_add
    - gf_filter_pid_new
    linkageType: ''
    returnType: GSF_Stream
    signature: GSF_Stream *gsfdmx_get_stream(GF_Filter *filter, GSF_DemuxCtx *ctx,
      u32 idx, u32 pkt_type)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gsfdmx_decrypt
      Src: /src/gpac/src/filters/dmx_gsf.c:474,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dmx_gsf.c:476,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_gsf.c:480,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:485,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:486,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_gsf.c:490,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_gsf.c:492,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/dmx_gsf.c:493,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:495,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dmx_gsf.c:495,1
    - Dst: gsfdmx_read_prop
      Src: /src/gpac/src/filters/dmx_gsf.c:499,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/dmx_gsf.c:503,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:505,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filters/dmx_gsf.c:505,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filters/dmx_gsf.c:505,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/dmx_gsf.c:509,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_gsf.c:510,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_gsf.c:520,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dmx_gsf.c:522,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dmx_gsf.c:523,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_gsf.c:525,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_gsf.c:526,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_gsf.c:527,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_gsf.c:528,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_gsf.c:534,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_gsf.c:535,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:543,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:547,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dmx_gsf.c:548,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_gsf.c:551,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_gsf.c:552,1
    - Dst: gsfdmx_read_prop
      Src: /src/gpac/src/filters/dmx_gsf.c:554,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:556,1
    - Dst: gf_filter_pid_set_info_dyn
      Src: /src/gpac/src/filters/dmx_gsf.c:559,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/dmx_gsf.c:560,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:561,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filters/dmx_gsf.c:569,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 78
    argCount: 5
    argNames:
    - filter
    - ctx
    - gst
    - pck
    - is_info_update
    argTypes:
    - GF_Filter*
    - GSF_DemuxCtx*
    - GSF_Stream*
    - GSF_Packet*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 574
      start: 463
    functionDepth: 8
    functionLinenumber: 463
    functionLinenumberEnd: 574
    functionName: gsfdmx_parse_pid_info
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_props_reset_single
    - gf_log_tool_level_on
    - gf_props_dump
    - memset
    - gf_file_basename
    - gf_4cc_to_str
    - gf_bs_read_u32
    - gsfdmx_read_prop
    - GF_FEVT_INIT
    - gsfdmx_decrypt
    - gf_props_4cc_get_name
    - GF_LOG
    - gf_bs_read_u8
    - gf_filter_pid_send_event
    - gf_filter_pid_set_property_dyn
    - gsfdmx_read_vlen
    - gf_filter_pid_set_property
    - gf_bs_reassign_buffer
    - gf_malloc
    - gf_props_4cc_get_type
    - gf_filter_pid_set_info
    - gf_filter_pid_get_property
    - gf_filter_pid_set_info_dyn
    - gf_filter_pid_set_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gsfdmx_parse_pid_info(GF_Filter *filter, GSF_DemuxCtx *ctx,
      GSF_Stream *gst, GSF_Packet *pck, Bool is_info_update)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dmx_gsf.c:580,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_gsf.c:584,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_gsf.c:585,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:586,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dmx_gsf.c:586,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_gsf.c:590,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:592,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:601,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dmx_gsf.c:605,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dmx_gsf.c:606,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dmx_gsf.c:607,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:610,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/dmx_gsf.c:614,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:616,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/dmx_gsf.c:620,1
    - Dst: gsfdmx_decrypt
      Src: /src/gpac/src/filters/dmx_gsf.c:622,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:625,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:626,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:629,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:633,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:637,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dmx_gsf.c:638,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/dmx_gsf.c:640,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:642,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:644,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:647,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:648,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:650,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 64
    argCount: 5
    argNames:
    - filter
    - ctx
    - pck_data
    - pck_size
    - is_crypted
    argTypes:
    - GF_Filter*
    - GSF_DemuxCtx*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 655
      start: 576
    functionDepth: 7
    functionLinenumber: 576
    functionLinenumberEnd: 655
    functionName: gsfdmx_tune
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_4cc_to_str
    - gsfdmx_decrypt
    - gf_bs_read_u32
    - gf_free
    - memcmp
    - GF_LOG
    - gsfdmx_read_vlen
    - gf_crypt_init
    - gf_bs_read_int
    - gf_crypt_open
    - GF_4CC
    - gf_bs_read_u16
    - gf_bs_read_u8
    - gf_bs_reassign_buffer
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gsfdmx_tune(GF_Filter *filter, GSF_DemuxCtx *ctx, char *pck_data,
      u32 pck_size, Bool is_crypted)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_gsf.c:662,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GSF_Packet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 665
      start: 658
    functionDepth: 0
    functionLinenumber: 658
    functionLinenumberEnd: 665
    functionName: gsfdmx_pck_reset
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gsfdmx_pck_reset(GSF_Packet *pck)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_gsf.c:673,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:678,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:681,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dmx_gsf.c:682,1
    - Dst: gsfdmx_pck_reset
      Src: /src/gpac/src/filters/dmx_gsf.c:683,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dmx_gsf.c:684,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_gsf.c:685,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_gsf.c:694,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_gsf.c:696,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:699,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_gsf.c:704,1
    - Dst: gsfdmx_pck_reset
      Src: /src/gpac/src/filters/dmx_gsf.c:706,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dmx_gsf.c:707,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_gsf.c:708,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_gsf.c:711,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_gsf.c:713,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_gsf.c:715,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dmx_gsf.c:721,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_gsf.c:724,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 52
    argCount: 6
    argNames:
    - ctx
    - gst
    - pck_frag
    - frame_sn
    - pkt_type
    - frame_size
    argTypes:
    - GSF_DemuxCtx*
    - GSF_Stream*
    - Bool
    - s32
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 727
      start: 667
    functionDepth: 3
    functionLinenumber: 667
    functionLinenumberEnd: 727
    functionName: gsfdmx_get_packet
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_get
    - gf_list_pop_back
    - gf_filter_pck_new_alloc
    - GF_SAFEALLOC
    - GF_LOG
    - gsfdmx_pck_reset
    - gf_list_find
    - gf_list_count
    - memset
    - gf_list_add
    - gf_filter_pck_discard
    - gf_list_enum
    - gf_malloc
    - gf_list_rem
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE *gsfdmx_get_packet(GSF_DemuxCtx *ctx, GSF_Stream *gst, Bool
      pck_frag, s32 frame_sn, u8 pkt_type, u32 frame_size)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_gsf.c:736,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_gsf.c:747,1
    - Dst: memmove
      Src: /src/gpac/src/filters/dmx_gsf.c:749,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_gsf.c:769,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 43
    argCount: 3
    argNames:
    - pck
    - size
    - offset
    argTypes:
    - GSF_Packet*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 780
      start: 729
    functionDepth: 1
    functionLinenumber: 729
    functionLinenumberEnd: 780
    functionName: gsfdmx_packet_append_frag
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - memmove
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void gsfdmx_packet_append_frag(GSF_Packet *pck, u32 size, u32 offset)
  - BBCount: 48
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_gsf.c:795,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:814,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:815,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:816,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:817,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:818,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:819,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:821,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:822,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:823,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:824,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:825,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:831,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:832,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:833,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:834,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:835,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:836,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:838,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:839,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:840,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:841,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/dmx_gsf.c:855,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:856,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:860,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/dmx_gsf.c:867,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:868,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:873,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dmx_gsf.c:877,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_gsf.c:880,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_gsf.c:883,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_gsf.c:886,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:890,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_gsf.c:894,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_gsf.c:895,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/dmx_gsf.c:896,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:898,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dmx_gsf.c:898,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:899,1
    - Dst: gsfdmx_read_prop
      Src: /src/gpac/src/filters/dmx_gsf.c:905,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:907,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_gsf.c:911,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:915,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_gsf.c:920,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:921,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:924,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dmx_gsf.c:926,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:930,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:931,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_gsf.c:936,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:938,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:939,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:940,1
    - Dst: gsfdmx_read_prop
      Src: /src/gpac/src/filters/dmx_gsf.c:946,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:948,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:949,1
    - Dst: gf_filter_pck_set_property_dyn
      Src: /src/gpac/src/filters/dmx_gsf.c:953,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:954,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:957,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_gsf.c:962,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/filters/dmx_gsf.c:968,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dmx_gsf.c:973,1
    - Dst: gsfdmx_packet_append_frag
      Src: /src/gpac/src/filters/dmx_gsf.c:974,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dmx_gsf.c:976,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dmx_gsf.c:977,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_gsf.c:978,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dmx_gsf.c:979,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/dmx_gsf.c:980,1
    - Dst: gf_filter_pck_set_corrupted
      Src: /src/gpac/src/filters/dmx_gsf.c:981,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/dmx_gsf.c:982,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/src/filters/dmx_gsf.c:983,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/dmx_gsf.c:984,1
    - Dst: gf_filter_pck_set_clock_type
      Src: /src/gpac/src/filters/dmx_gsf.c:985,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/dmx_gsf.c:986,1
    - Dst: gf_filter_pck_set_crypt_flags
      Src: /src/gpac/src/filters/dmx_gsf.c:987,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_gsf.c:988,1
    - Dst: gf_filter_pck_set_roll_info
      Src: /src/gpac/src/filters/dmx_gsf.c:990,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 165
    argCount: 6
    argNames:
    - ctx
    - gst
    - gpck
    - pck_len
    - full_pck
    - bs
    argTypes:
    - GSF_DemuxCtx*
    - GSF_Stream*
    - GSF_Packet*
    - u32
    - Bool
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 992
      start: 782
    functionDepth: 8
    functionLinenumber: 782
    functionLinenumberEnd: 992
    functionName: gsfdmx_read_data_pck
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_filter_pck_set_crypt_flags
    - memset
    - gf_filter_pck_set_dependency_flags
    - gf_bs_read_u16
    - gf_filter_pck_truncate
    - gf_4cc_to_str
    - gf_filter_pck_set_property
    - gf_bs_read_u32
    - gf_filter_pck_set_property_dyn
    - gf_filter_pck_set_byte_offset
    - gsfdmx_read_prop
    - gf_filter_pck_discard
    - gf_filter_pck_set_corrupted
    - gf_filter_pck_set_carousel_version
    - gf_filter_pck_set_clock_type
    - GF_LOG
    - gf_filter_pck_set_interlaced
    - gf_filter_pck_set_duration
    - gf_bs_get_position
    - gf_filter_pck_set_sap
    - gf_bs_read_u8
    - gsfdmx_read_vlen
    - gf_malloc
    - gf_props_4cc_get_type
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_bs_read_long_int
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_set_framing
    - gf_filter_pck_set_roll_info
    - gf_bs_read_int
    - gsfdmx_packet_append_frag
    - gf_bs_read_u64
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gsfdmx_read_data_pck(GSF_DemuxCtx *ctx, GSF_Stream *gst, GSF_Packet
      *gpck, u32 pck_len, Bool full_pck, GF_BitStream *bs)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - pck_type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1006
      start: 995
    functionDepth: 0
    functionLinenumber: 995
    functionLinenumberEnd: 1006
    functionName: gsfdmx_pck_name
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gsfdmx_pck_name(u32 pck_type)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_gsf.c:1012,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dmx_gsf.c:1013,1
    - Dst: gf_filter_pck_set_corrupted
      Src: /src/gpac/src/filters/dmx_gsf.c:1017,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_gsf.c:1018,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:1020,1
    - Dst: gsfdmx_pck_reset
      Src: /src/gpac/src/filters/dmx_gsf.c:1023,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dmx_gsf.c:1024,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_gsf.c:1025,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dmx_gsf.c:1029,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_gsf.c:1031,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dmx_gsf.c:1032,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:1033,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 3
    argNames:
    - ctx
    - gst
    - is_flush
    argTypes:
    - GSF_DemuxCtx*
    - GSF_Stream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1034
      start: 1010
    functionDepth: 3
    functionLinenumber: 1010
    functionLinenumberEnd: 1034
    functionName: gsfdmx_stream_del
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_filter_pid_remove
    - gf_list_pop_front
    - gsfdmx_pck_reset
    - gf_list_find
    - gf_list_count
    - gf_list_add
    - gf_list_del_item
    - gf_filter_pck_discard
    - gf_list_del
    - gf_filter_pck_set_corrupted
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void gsfdmx_stream_del(GSF_DemuxCtx *ctx, GSF_Stream *gst, Bool is_flush)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_gsf.c:1045,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_gsf.c:1051,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:1053,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_gsf.c:1059,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_gsf.c:1068,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:1070,1
    - Dst: gsfdmx_parse_pid_info
      Src: /src/gpac/src/filters/dmx_gsf.c:1082,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:1086,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:1092,1
    - Dst: gsfdmx_stream_del
      Src: /src/gpac/src/filters/dmx_gsf.c:1095,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:1100,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_gsf.c:1103,1
    - Dst: gf_filter_pck_set_corrupted
      Src: /src/gpac/src/filters/dmx_gsf.c:1107,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_gsf.c:1108,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:1113,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:1116,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dmx_gsf.c:1121,1
    - Dst: gsfdmx_pck_reset
      Src: /src/gpac/src/filters/dmx_gsf.c:1122,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dmx_gsf.c:1123,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_gsf.c:1124,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 84
    argCount: 3
    argNames:
    - filter
    - ctx
    - gst
    argTypes:
    - GF_Filter*
    - GSF_DemuxCtx*
    - GSF_Stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1129
      start: 1036
    functionDepth: 9
    functionLinenumber: 1036
    functionLinenumberEnd: 1129
    functionName: gsfdmx_process_packets
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_assert
    - GF_LOG
    - gsfdmx_pck_reset
    - gf_list_find
    - gsfdmx_stream_del
    - gf_filter_pid_set_eos
    - gf_list_count
    - gsfdmx_parse_pid_info
    - gf_list_add
    - gf_list_rem
    - gf_filter_pck_discard
    - gf_filter_pck_set_corrupted
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gsfdmx_process_packets(GF_Filter *filter, GSF_DemuxCtx *ctx,
      GSF_Stream *gst)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_gsf.c:1141,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_gsf.c:1145,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dmx_gsf.c:1149,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dmx_gsf.c:1150,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_gsf.c:1154,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:1156,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:1157,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:1158,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:1159,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:1174,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dmx_gsf.c:1176,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:1181,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:1182,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:1185,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dmx_gsf.c:1186,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_gsf.c:1198,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:1203,1
    - Dst: gsfdmx_pck_name
      Src: /src/gpac/src/filters/dmx_gsf.c:1206,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_gsf.c:1207,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:1218,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_gsf.c:1221,1
    - Dst: gsfdmx_tune
      Src: /src/gpac/src/filters/dmx_gsf.c:1222,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_gsf.c:1227,1
    - Dst: gsfdmx_get_stream
      Src: /src/gpac/src/filters/dmx_gsf.c:1229,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:1232,1
    - Dst: gsfdmx_get_packet
      Src: /src/gpac/src/filters/dmx_gsf.c:1234,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:1239,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:1242,1
    - Dst: gsfdmx_decrypt
      Src: /src/gpac/src/filters/dmx_gsf.c:1249,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dmx_gsf.c:1252,1
    - Dst: gsfdmx_read_data_pck
      Src: /src/gpac/src/filters/dmx_gsf.c:1253,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:1263,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_gsf.c:1267,1
    - Dst: gsfdmx_packet_append_frag
      Src: /src/gpac/src/filters/dmx_gsf.c:1269,1
    - Dst: gsfdmx_process_packets
      Src: /src/gpac/src/filters/dmx_gsf.c:1273,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dmx_gsf.c:1275,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:1276,1
    - Dst: gsfdmx_pck_reset
      Src: /src/gpac/src/filters/dmx_gsf.c:1277,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dmx_gsf.c:1278,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_gsf.c:1279,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:1286,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_gsf.c:1286,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dmx_gsf.c:1290,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_gsf.c:1291,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/dmx_gsf.c:1295,1
    - Dst: memmove
      Src: /src/gpac/src/filters/dmx_gsf.c:1296,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_gsf.c:1302,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_gsf.c:1303,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 120
    argCount: 4
    argNames:
    - filter
    - ctx
    - data
    - data_size
    argTypes:
    - GF_Filter*
    - GSF_DemuxCtx*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1306
      start: 1131
    functionDepth: 10
    functionLinenumber: 1131
    functionLinenumberEnd: 1306
    functionName: gsfdmx_demux
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_list_find
    - gf_list_count
    - gsfdmx_get_stream
    - gf_bs_read_u16
    - gf_bs_available
    - gf_realloc
    - gsfdmx_pck_name
    - gsfdmx_get_packet
    - memcpy
    - GF_FEVT_INIT
    - gsfdmx_tune
    - gf_list_add
    - gf_filter_pck_discard
    - gsfdmx_decrypt
    - gf_bs_skip_bytes
    - gsfdmx_process_packets
    - memmove
    - GF_LOG
    - gsfdmx_pck_reset
    - gf_bs_get_position
    - gf_list_del_item
    - gf_error_to_string
    - gf_filter_pid_send_event
    - gsfdmx_read_vlen
    - gf_bs_reassign_buffer
    - gsfdmx_read_data_pck
    - gf_fatal_assert
    - gf_bs_read_int
    - gsfdmx_packet_append_frag
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gsfdmx_demux(GF_Filter *filter, GSF_DemuxCtx *ctx, char *data,
      u32 data_size)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_gsf.c:1311,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_gsf.c:1322,1
    - Dst: gsfdmx_demux
      Src: /src/gpac/src/filters/dmx_gsf.c:1325,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_gsf.c:1328,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_gsf.c:1337,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_gsf.c:1340,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_gsf.c:1341,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_gsf.c:1350,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_gsf.c:1351,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dmx_gsf.c:1359,1
    - Dst: gsfdmx_demux
      Src: /src/gpac/src/filters/dmx_gsf.c:1360,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_gsf.c:1361,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:1363,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 43
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1366
      start: 1308
    functionDepth: 11
    functionLinenumber: 1308
    functionLinenumberEnd: 1366
    functionName: gsfdmx_process
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gsfdmx_demux
    - gf_filter_pid_drop_packet
    - gf_filter_pid_set_discard
    - gf_filter_pck_get_data
    - gf_filter_pid_would_block
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_pid_is_eos
    - gf_list_enum
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gsfdmx_process(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memchr
      Src: /src/gpac/src/filters/dmx_gsf.c:1374,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_gsf.c:1380,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 3
    argNames:
    - data
    - data_size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1388
      start: 1368
    functionDepth: 0
    functionLinenumber: 1368
    functionLinenumberEnd: 1388
    functionName: gsfdmx_probe_data
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - strncmp
    - memchr
    linkageType: ''
    returnType: char
    signature: char *gsfdmx_probe_data(const u8 *data, u32 data_size, GF_FilterProbeScore
      *score)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - par
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1395
      start: 1390
    functionDepth: 0
    functionLinenumber: 1390
    functionLinenumberEnd: 1395
    functionName: gsfdmx_not_enough_bytes
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gsfdmx_not_enough_bytes(void *par)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_gsf.c:1399,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_gsf.c:1400,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_gsf.c:1402,1
    - Dst: gf_bs_set_eos_callback
      Src: /src/gpac/src/filters/dmx_gsf.c:1403,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/dmx_gsf.c:1406,1
    - Dst: gsfdmx_not_enough_bytes
      Src: /src/gpac/src/filters/dmx_gsf.c:1407,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_gsf.c:1410,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_gsf.c:1411,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1413
      start: 1397
    functionDepth: 1
    functionLinenumber: 1397
    functionLinenumberEnd: 1413
    functionName: gsfdmx_initialize
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_bs_set_eos_callback
    - gf_bs_new
    - gsfdmx_not_enough_bytes
    - gf_sys_is_cov_mode
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gsfdmx_initialize(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_gsf.c:1417,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_gsf.c:1418,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_gsf.c:1419,1
    - Dst: gsfdmx_stream_del
      Src: /src/gpac/src/filters/dmx_gsf.c:1420,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_gsf.c:1422,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_gsf.c:1424,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_gsf.c:1425,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dmx_gsf.c:1426,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:1427,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:1428,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_gsf.c:1430,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/dmx_gsf.c:1433,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:1435,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_gsf.c:1436,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_gsf.c:1437,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1438
      start: 1415
    functionDepth: 4
    functionLinenumber: 1415
    functionLinenumberEnd: 1438
    functionName: gsfdmx_finalize
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gsfdmx_stream_del
    - gf_bs_del
    - gf_list_count
    - gf_crypt_close
    - gf_list_del_item
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void gsfdmx_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1456
      start: 1455
    functionDepth: 0
    functionLinenumber: 1455
    functionLinenumberEnd: 1456
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1499
      start: 1496
    functionDepth: 0
    functionLinenumber: 1496
    functionLinenumberEnd: 1499
    functionName: gsfdmx_register
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *gsfdmx_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1504
      start: 1501
    functionDepth: 0
    functionLinenumber: 1501
    functionLinenumberEnd: 1504
    functionName: gsfdmx_register
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *gsfdmx_register(GF_FilterSession *session)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_file.c:73,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_file.c:83,1
    - Dst: gf_filter_pid_raw_gmem
      Src: /src/gpac/src/filters/in_file.c:84,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/in_file.c:91,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_file.c:93,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/in_file.c:93,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_file.c:95,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_file.c:95,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/in_file.c:96,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/in_file.c:98,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/in_file.c:99,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/in_file.c:101,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_file.c:102,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_file.c:103,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_file.c:107,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/in_file.c:108,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_file.c:109,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_file.c:109,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_file.c:110,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_file.c:114,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_file.c:114,1
    - Dst: gf_rand_init
      Src: /src/gpac/src/filters/in_file.c:115,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_file.c:117,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_file.c:120,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_file.c:121,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_file.c:122,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/in_file.c:128,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_file.c:134,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_file.c:134,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_file.c:134,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_file.c:135,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_file.c:138,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_file.c:140,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/in_file.c:142,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/in_file.c:148,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_file.c:149,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_file.c:151,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_file.c:155,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_file.c:156,1
    - Dst: gf_fileio_check
      Src: /src/gpac/src/filters/in_file.c:162,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/filters/in_file.c:163,1
    - Dst: close
      Src: /src/gpac/src/filters/in_file.c:167,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_file.c:174,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/in_file.c:174,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_file.c:175,1
    - Dst: gf_fd_open
      Src: /src/gpac/src/filters/in_file.c:177,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/in_file.c:181,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/in_file.c:185,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_file.c:193,1
    - Dst: gf_filter_notification_failure
      Src: /src/gpac/src/filters/in_file.c:199,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_file.c:204,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/in_file.c:206,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_file.c:206,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_file.c:211,1
    - Dst: gf_fd_fsize
      Src: /src/gpac/src/filters/in_file.c:215,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/in_file.c:218,1
    - Dst: gf_fileio_check
      Src: /src/gpac/src/filters/in_file.c:223,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_file.c:225,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_file.c:226,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/filters/in_file.c:226,1
    - Dst: lseek_64
      Src: /src/gpac/src/filters/in_file.c:239,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/in_file.c:242,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/in_file.c:254,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 146
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 71
    functionDepth: 6
    functionLinenumber: 71
    functionLinenumberEnd: 257
    functionName: filein_initialize_ex
    functionSourceFile: /src/gpac/src/filters/in_file.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fileio_check
    - gf_fileio_url
    - gf_filter_pid_raw_new
    - PROP_STRING
    - gf_filter_pid_raw_gmem
    - gf_filter_pid_new
    - strchr
    - gf_fd_open
    - gf_sys_is_cov_mode
    - gf_strdup
    - gf_fseek
    - close
    - strncmp
    - gf_fsize
    - gf_filter_get_udta
    - gf_fd_fsize
    - GF_LOG
    - gf_filter_pid_set_eos
    - strstr
    - lseek_64
    - strnicmp
    - gf_filter_pck_set_sap
    - gf_filter_setup_failure
    - gf_filter_pid_set_property
    - gf_malloc
    - gf_fclose
    - gf_filter_pck_new_shared
    - PROP_UINT
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_notification_failure
    - gf_file_ext_start
    - strcmp
    - gf_fopen_ex
    - gf_opts_get_bool
    - gf_rand_init
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err filein_initialize_ex(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_file.c:261,1
    - Dst: filein_initialize_ex
      Src: /src/gpac/src/filters/in_file.c:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 259
    functionDepth: 7
    functionLinenumber: 259
    functionLinenumberEnd: 266
    functionName: filein_initialize
    functionSourceFile: /src/gpac/src/filters/in_file.c
    functionUses: 0
    functionsReached:
    - filein_initialize_ex
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err filein_initialize(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_file.c:270,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/in_file.c:272,1
    - Dst: close
      Src: /src/gpac/src/filters/in_file.c:274,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_file.c:276,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 268
    functionDepth: 5
    functionLinenumber: 268
    functionLinenumberEnd: 277
    functionName: filein_finalize
    functionSourceFile: /src/gpac/src/filters/in_file.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - close
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void filein_finalize(GF_Filter *filter)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_file.c:287,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_file.c:287,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_file.c:289,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_file.c:290,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_file.c:292,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_file.c:293,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_file.c:294,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_file.c:295,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_file.c:296,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/filters/in_file.c:297,1
    - Dst: gf_fileio_read_mode
      Src: /src/gpac/src/filters/in_file.c:298,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_file.c:302,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_file.c:303,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/in_file.c:310,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_file.c:311,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_file.c:313,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/in_file.c:316,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 38
    argCount: 2
    argNames:
    - url
    - mime_type
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 279
    functionDepth: 4
    functionLinenumber: 279
    functionLinenumberEnd: 322
    functionName: filein_probe_url
    functionSourceFile: /src/gpac/src/filters/in_file.c
    functionUses: 0
    functionsReached:
    - gf_fileio_read_mode
    - gf_file_exists
    - strstr
    - gf_fileio_from_url
    - strncmp
    - strnicmp
    - strcmp
    - gf_file_ext_start
    - strchr
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore filein_probe_url(const char *url, const char *mime_type)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_file.c:327,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_file.c:340,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_file.c:346,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_file.c:350,1
    - Dst: GF_FALSE
      Src: /src/gpac/src/filters/in_file.c:351,1
    - Dst: gf_fileio_check
      Src: /src/gpac/src/filters/in_file.c:353,1
    - Dst: lseek_64
      Src: /src/gpac/src/filters/in_file.c:360,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/in_file.c:364,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_file.c:367,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/in_file.c:378,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_file.c:384,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/in_file.c:385,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_file.c:389,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_file.c:390,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_file.c:391,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_file.c:401,1
    - Dst: close
      Src: /src/gpac/src/filters/in_file.c:404,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/in_file.c:409,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/filters/in_file.c:412,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 324
    functionDepth: 5
    functionLinenumber: 324
    functionLinenumberEnd: 420
    functionName: filein_process_event
    functionSourceFile: /src/gpac/src/filters/in_file.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_strdup
    - gf_fileio_check
    - gf_fseek
    - GF_LOG
    - gf_realloc
    - gf_filter_pid_set_eos
    - close
    - lseek_64
    - gf_fatal_assert
    - strcmp
    - gf_file_delete
    - GF_FALSE
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool filein_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_file.c:425,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/in_file.c:428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - filter
    - pid
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 423
    functionDepth: 1
    functionLinenumber: 423
    functionLinenumberEnd: 429
    functionName: filein_pck_destructor
    functionSourceFile: /src/gpac/src/filters/in_file.c
    functionUses: 0
    functionsReached:
    - gf_filter_post_process_task
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void filein_pck_destructor(GF_Filter *filter, GF_FilterPid *pid, GF_FilterPacket
      *pck)
  - BBCount: 58
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_file.c:437,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/in_file.c:445,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/in_file.c:450,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/in_file.c:453,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/in_file.c:454,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_file.c:456,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_file.c:457,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/in_file.c:459,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/in_file.c:461,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/in_file.c:463,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/in_file.c:464,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/in_file.c:472,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/in_file.c:510,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/in_file.c:516,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/in_file.c:519,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/in_file.c:522,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/in_file.c:523,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_file.c:527,1
    - Dst: read
      Src: /src/gpac/src/filters/in_file.c:549,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/in_file.c:553,1
    - Dst: read
      Src: /src/gpac/src/filters/in_file.c:558,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/in_file.c:562,1
    - Dst: GPAC_HAS_FD
      Src: /src/gpac/src/filters/in_file.c:572,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/in_file.c:575,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_file.c:577,1
    - Dst: gf_fileio_get_stats
      Src: /src/gpac/src/filters/in_file.c:582,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/in_file.c:592,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/in_file.c:608,1
    - Dst: read
      Src: /src/gpac/src/filters/in_file.c:611,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/in_file.c:614,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/in_file.c:619,1
    - Dst: gf_fileio_check
      Src: /src/gpac/src/filters/in_file.c:622,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_file.c:624,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/in_file.c:624,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_file.c:626,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/in_file.c:626,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_file.c:632,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/in_file.c:632,1
    - Dst: gf_fileio_get_stats
      Src: /src/gpac/src/filters/in_file.c:640,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_file.c:642,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/in_file.c:642,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_file.c:645,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/in_file.c:645,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_file.c:646,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/in_file.c:646,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_file.c:647,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_file.c:647,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/in_file.c:658,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/in_file.c:669,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_file.c:672,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/in_file.c:672,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_file.c:676,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/in_file.c:676,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_file.c:680,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_file.c:683,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/in_file.c:683,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_file.c:685,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_file.c:688,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/in_file.c:688,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/in_file.c:693,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/in_file.c:696,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/in_file.c:697,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/in_file.c:698,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_file.c:702,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/in_file.c:705,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/in_file.c:707,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/in_file.c:709,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/in_file.c:710,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_file.c:714,1
    CyclomaticComplexity: 82
    EdgeCount: 82
    ICount: 218
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 718
      start: 431
    functionDepth: 2
    functionLinenumber: 431
    functionLinenumberEnd: 718
    functionName: filein_process
    functionSourceFile: /src/gpac/src/filters/in_file.c
    functionUses: 0
    functionsReached:
    - gf_fileio_check
    - GPAC_HAS_FD
    - gf_filter_pid_raw_new
    - read
    - gf_fileio_get_stats
    - PROP_FRAC64
    - PROP_LONGUINT
    - gf_file_basename
    - gf_realloc
    - gf_filter_pck_set_byte_offset
    - gf_feof
    - snprintf
    - sprintf
    - PROP_BOOL
    - gf_filter_get_udta
    - gf_filter_update_status
    - gf_fread
    - GF_LOG
    - gf_filter_pid_would_block
    - gf_filter_pid_set_eos
    - gf_filter_pck_set_sap
    - gf_filter_setup_failure
    - gf_rand
    - gf_filter_pid_set_property
    - gf_filter_pck_new_shared
    - gf_filter_pid_set_info
    - PROP_UINT
    - gf_filter_pck_set_framing
    - gf_filter_reporting_enabled
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err filein_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 722
    functionDepth: 0
    functionLinenumber: 722
    functionLinenumberEnd: 723
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/in_file.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/in_file.c:775,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/in_file.c:776,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 779
      start: 773
    functionDepth: 6
    functionLinenumber: 773
    functionLinenumberEnd: 779
    functionName: fin_register
    functionSourceFile: /src/gpac/src/filters/in_file.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    - gf_opts_set_key
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *fin_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 784
      start: 781
    functionDepth: 0
    functionLinenumber: 781
    functionLinenumberEnd: 784
    functionName: fin_register
    functionSourceFile: /src/gpac/src/filters/in_file.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *fin_register(GF_FilterSession *session)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/compose.c:46,1
    - Dst: gf_sc_disconnect
      Src: /src/gpac/src/filters/compose.c:58,1
    - Dst: gf_sc_connect_from_time
      Src: /src/gpac/src/filters/compose.c:65,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/compose.c:66,1
    - Dst: gf_sc_reload_config
      Src: /src/gpac/src/filters/compose.c:75,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/compose.c:78,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/compose.c:82,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/compose.c:83,1
    - Dst: assert
      Src: /src/gpac/src/filters/compose.c:85,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/compose.c:88,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/compose.c:89,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/compose.c:93,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/compose.c:97,1
    - Dst: gf_odm_on_eos
      Src: /src/gpac/src/filters/compose.c:100,1
    - Dst: gf_sg_get_scene_size_info
      Src: /src/gpac/src/filters/compose.c:104,1
    - Dst: gf_sc_set_scene_size
      Src: /src/gpac/src/filters/compose.c:106,1
    - Dst: gf_sc_draw_frame
      Src: /src/gpac/src/filters/compose.c:111,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/compose.c:120,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/compose.c:127,1
    - Dst: gf_filter_end_of_session
      Src: /src/gpac/src/filters/compose.c:139,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/compose.c:141,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/src/filters/compose.c:144,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/compose.c:145,1
    - Dst: gf_filter_end_of_session
      Src: /src/gpac/src/filters/compose.c:151,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/compose.c:152,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/compose.c:155,1
    - Dst: gf_sc_check_end_of_scene
      Src: /src/gpac/src/filters/compose.c:161,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/compose.c:164,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/compose.c:166,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/compose.c:168,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/compose.c:173,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/compose.c:174,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/compose.c:176,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/compose.c:177,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/compose.c:178,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/compose.c:179,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/compose.c:181,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/compose.c:189,1
    - Dst: gf_filter_end_of_session
      Src: /src/gpac/src/filters/compose.c:196,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/compose.c:197,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/compose.c:207,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 130
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts:
    - condition: (odm)
      pos:
        line_end: 84
        line_start: 84
        source_file: /src/gpac/src/filters/compose.c
    constantsTouched: []
    func_position:
      end: 210
      start: 41
    functionDepth: 15
    functionLinenumber: 41
    functionLinenumberEnd: 210
    functionName: compose_process
    functionSourceFile: /src/gpac/src/filters/compose.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sc_draw_frame
    - gf_filter_connections_pending
    - gf_list_count
    - gf_filter_get_ipid
    - gf_filter_pid_get_packet
    - gf_sys_clock
    - gf_filter_post_process_task
    - gf_list_get
    - gf_odm_on_eos
    - gf_sc_reload_config
    - gf_sc_connect_from_time
    - GF_FEVT_INIT
    - gf_sc_set_scene_size
    - gf_sc_disconnect
    - gf_filter_ask_rt_reschedule
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pid_set_discard
    - GF_LOG
    - assert
    - gf_filter_pid_set_eos
    - gf_filter_get_ipid_count
    - gf_filter_pid_is_eos
    - gf_filter_pid_send_event
    - gf_filter_abort
    - gf_sc_check_end_of_scene
    - gf_filter_end_of_session
    - gf_sg_get_scene_size_info
    - gf_filter_pid_get_udta
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err compose_process(GF_Filter *filter)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/compose.c:217,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/compose.c:222,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/compose.c:226,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 15
    argCount: 4
    argNames:
    - ctx
    - pid
    - mtype
    - parent_scene
    argTypes:
    - GF_Compositor*
    - GF_FilterPid*
    - u32
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 228
    functionName: merge_properties
    functionSourceFile: /src/gpac/src/filters/compose.c
    functionUses: 17
    functionsReached:
    - gf_filter_pid_set_property
    - gf_filter_pid_get_property
    linkageType: ''
    returnType: void
    signature: void merge_properties(GF_Compositor *ctx, GF_FilterPid *pid, u32 mtype,
      GF_Scene *parent_scene)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/compose.c:234,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/compose.c:235,1
    - Dst: gf_filter_pid_set_loose_connect
      Src: /src/gpac/src/filters/compose.c:238,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/compose.c:240,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/compose.c:240,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/compose.c:241,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/compose.c:241,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/compose.c:243,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/compose.c:243,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/compose.c:245,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/compose.c:245,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/compose.c:247,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/compose.c:247,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/compose.c:248,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/compose.c:248,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/compose.c:249,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/compose.c:249,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/compose.c:251,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/compose.c:251,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/compose.c:252,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 230
    functionDepth: 1
    functionLinenumber: 230
    functionLinenumberEnd: 253
    functionName: compositor_setup_vout
    functionSourceFile: /src/gpac/src/filters/compose.c
    functionUses: 0
    functionsReached:
    - PROP_UINT
    - PROP_FRAC
    - gf_filter_pid_set_loose_connect
    - gf_filter_pid_set_name
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: void
    signature: void compositor_setup_vout(GF_Compositor *ctx)
  - BBCount: 76
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/compose.c:264,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/compose.c:270,1
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/filters/compose.c:278,1
    - Dst: gf_scene_regenerate
      Src: /src/gpac/src/filters/compose.c:282,1
    - Dst: gf_scene_regenerate
      Src: /src/gpac/src/filters/compose.c:285,1
    - Dst: gf_scene_regenerate
      Src: /src/gpac/src/filters/compose.c:288,1
    - Dst: gf_scene_regenerate
      Src: /src/gpac/src/filters/compose.c:291,1
    - Dst: gf_scene_regenerate
      Src: /src/gpac/src/filters/compose.c:294,1
    - Dst: compositor_setup_vout
      Src: /src/gpac/src/filters/compose.c:301,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/compose.c:304,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/compose.c:308,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/compose.c:312,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/compose.c:316,1
    - Dst: gf_evg_surface_new
      Src: /src/gpac/src/filters/compose.c:318,1
    - Dst: gf_evg_surface_attach_to_buffer
      Src: /src/gpac/src/filters/compose.c:319,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/filters/compose.c:320,1
    - Dst: gf_pixel_fmt_is_transparent
      Src: /src/gpac/src/filters/compose.c:323,1
    - Dst: gf_pixel_fmt_is_yuv
      Src: /src/gpac/src/filters/compose.c:324,1
    - Dst: gf_pixel_is_wide_depth
      Src: /src/gpac/src/filters/compose.c:325,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/compose.c:333,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/compose.c:333,1
    - Dst: gf_filter_pid_is_sparse
      Src: /src/gpac/src/filters/compose.c:342,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/compose.c:356,1
    - Dst: gf_mo_update_caps_ex
      Src: /src/gpac/src/filters/compose.c:359,1
    - Dst: gf_scene_force_size_to_video
      Src: /src/gpac/src/filters/compose.c:361,1
    - Dst: gf_odm_update_duration
      Src: /src/gpac/src/filters/compose.c:364,1
    - Dst: gf_odm_check_clock_mediatime
      Src: /src/gpac/src/filters/compose.c:366,1
    - Dst: merge_properties
      Src: /src/gpac/src/filters/compose.c:369,1
    - Dst: memset
      Src: /src/gpac/src/filters/compose.c:373,1
    - Dst: gf_filter_forward_gf_event
      Src: /src/gpac/src/filters/compose.c:375,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/compose.c:384,1
    - Dst: gf_scene_new
      Src: /src/gpac/src/filters/compose.c:387,1
    - Dst: gf_odm_new
      Src: /src/gpac/src/filters/compose.c:388,1
    - Dst: gf_scene_ns_new
      Src: /src/gpac/src/filters/compose.c:389,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/compose.c:404,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/compose.c:406,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/compose.c:410,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/compose.c:420,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/compose.c:429,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/compose.c:431,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/compose.c:438,1
    - Dst: gf_filter_pid_is_filter_in_parents
      Src: /src/gpac/src/filters/compose.c:439,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/compose.c:443,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/compose.c:444,1
    - Dst: gf_scene_new
      Src: /src/gpac/src/filters/compose.c:450,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/compose.c:478,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/compose.c:479,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/compose.c:480,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/compose.c:481,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/compose.c:485,1
    - Dst: gf_scene_new
      Src: /src/gpac/src/filters/compose.c:486,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/compose.c:496,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filters/compose.c:496,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/compose.c:511,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/compose.c:526,1
    - Dst: gf_scene_ns_new
      Src: /src/gpac/src/filters/compose.c:528,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/compose.c:530,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/compose.c:531,1
    - Dst: gf_sc_set_scene
      Src: /src/gpac/src/filters/compose.c:539,1
    - Dst: gf_sg_reset
      Src: /src/gpac/src/filters/compose.c:540,1
    - Dst: gf_sc_set_scene
      Src: /src/gpac/src/filters/compose.c:541,1
    - Dst: gf_scene_insert_pid
      Src: /src/gpac/src/filters/compose.c:550,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/compose.c:553,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/compose.c:554,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/compose.c:565,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/compose.c:566,1
    - Dst: gf_filter_pid_exec_event
      Src: /src/gpac/src/filters/compose.c:567,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/compose.c:574,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/compose.c:574,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/compose.c:574,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/compose.c:578,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/compose.c:582,1
    - Dst: gf_sg_reset
      Src: /src/gpac/src/filters/compose.c:590,1
    - Dst: gf_scene_regenerate
      Src: /src/gpac/src/filters/compose.c:592,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/compose.c:595,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/compose.c:595,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/compose.c:598,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/compose.c:598,1
    - Dst: merge_properties
      Src: /src/gpac/src/filters/compose.c:600,1
    CyclomaticComplexity: 122
    EdgeCount: 122
    ICount: 265
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 255
    functionDepth: 14
    functionLinenumber: 255
    functionLinenumberEnd: 602
    functionName: compose_configure_pid
    functionSourceFile: /src/gpac/src/filters/compose.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_is_filter_in_parents
    - gf_filter_pid_set_property_str
    - gf_list_count
    - memset
    - gf_scene_force_size_to_video
    - merge_properties
    - gf_stream_type_name
    - gf_filter_post_process_task
    - gf_strdup
    - gf_list_get
    - gf_pixel_fmt_is_yuv
    - GF_FEVT_INIT
    - gf_pixel_is_wide_depth
    - gf_filter_forward_gf_event
    - gf_filter_get_udta
    - gf_filter_pid_exec_event
    - gf_scene_new
    - gf_scene_regenerate
    - gf_odm_new
    - gf_evg_surface_attach_to_buffer
    - gf_mo_update_caps_ex
    - gf_filter_pid_negotiate_property
    - GF_LOG
    - gf_evg_surface_delete
    - strnicmp
    - gf_filter_pid_send_event
    - gf_odm_disconnect
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_scene_ns_new
    - gf_odm_update_duration
    - gf_pixel_fmt_is_transparent
    - gf_sg_reset
    - gf_scene_insert_pid
    - gf_fatal_assert
    - gf_filter_pid_get_udta
    - gf_filter_pid_is_sparse
    - compositor_setup_vout
    - gf_evg_surface_new
    - gf_sc_set_scene
    - gf_odm_check_clock_mediatime
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err compose_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/compose.c:612,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/compose.c:616,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/compose.c:632,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/compose.c:632,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/compose.c:633,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/compose.c:634,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/compose.c:634,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/compose.c:644,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/compose.c:646,1
    - Dst: gf_mixer_get_config
      Src: /src/gpac/src/filters/compose.c:660,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/compose.c:661,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/compose.c:666,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/compose.c:671,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/compose.c:680,1
    - Dst: gf_audio_fmt_name
      Src: /src/gpac/src/filters/compose.c:680,1
    - Dst: gf_mixer_set_config
      Src: /src/gpac/src/filters/compose.c:681,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 65
    argCount: 2
    argNames:
    - filter
    - pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 686
      start: 606
    functionDepth: 5
    functionLinenumber: 606
    functionLinenumberEnd: 686
    functionName: compose_reconfig_output
    functionSourceFile: /src/gpac/src/filters/compose.c
    functionUses: 0
    functionsReached:
    - gf_mixer_get_config
    - PROP_UINT
    - GF_LOG
    - gf_audio_fmt_name
    - gf_pixel_get_size_info
    - gf_mixer_set_config
    - gf_filter_pid_caps_query
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err compose_reconfig_output(GF_Filter *filter, GF_FilterPid *pid)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/compose.c:696,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/compose.c:709,1
    - Dst: memset
      Src: /src/gpac/src/filters/compose.c:712,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/compose.c:713,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/filters/compose.c:716,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/filters/compose.c:719,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/compose.c:724,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/compose.c:726,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/compose.c:729,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/compose.c:733,1
    - Dst: gf_odm_service_media_event_with_download
      Src: /src/gpac/src/filters/compose.c:736,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/compose.c:739,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/src/filters/compose.c:744,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/compose.c:744,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/compose.c:749,1
    - Dst: gf_sc_get_time_in_ms
      Src: /src/gpac/src/filters/compose.c:751,1
    - Dst: abs
      Src: /src/gpac/src/filters/compose.c:753,1
    - Dst: gf_sc_play_from_time
      Src: /src/gpac/src/filters/compose.c:755,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/compose.c:762,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/compose.c:765,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/compose.c:767,1
    - Dst: gf_odm_stop
      Src: /src/gpac/src/filters/compose.c:768,1
    - Dst: gf_odm_stop
      Src: /src/gpac/src/filters/compose.c:771,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 67
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 782
      start: 688
    functionDepth: 21
    functionLinenumber: 688
    functionLinenumberEnd: 782
    functionName: compose_process_event
    functionSourceFile: /src/gpac/src/filters/compose.c
    functionUses: 0
    functionsReached:
    - gf_odm_service_media_event_with_download
    - gf_sc_get_time_in_ms
    - gf_filter_pid_get_info
    - gf_list_get
    - gf_sc_send_event
    - abs
    - gf_sc_user_event
    - gf_sc_play_from_time
    - gf_list_count
    - memset
    - gf_filter_release_property
    - gf_filter_pid_get_udta
    - gf_odm_stop
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool compose_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/compose.c:786,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - filter
    - arg_name
    - arg_val
    argTypes:
    - GF_Filter*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 789
      start: 784
    functionDepth: 1
    functionLinenumber: 784
    functionLinenumberEnd: 789
    functionName: compose_update_arg
    functionSourceFile: /src/gpac/src/filters/compose.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err compose_update_arg(GF_Filter *filter, const char *arg_name,
      const GF_PropertyValue *arg_val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/compose.c:793,1
    - Dst: gf_sc_set_scene
      Src: /src/gpac/src/filters/compose.c:796,1
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/filters/compose.c:798,1
    - Dst: gf_sc_unload
      Src: /src/gpac/src/filters/compose.c:800,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 802
      start: 791
    functionDepth: 14
    functionLinenumber: 791
    functionLinenumberEnd: 802
    functionName: compose_finalize
    functionSourceFile: /src/gpac/src/filters/compose.c
    functionUses: 0
    functionsReached:
    - gf_sc_unload
    - gf_sc_set_scene
    - gf_odm_disconnect
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void compose_finalize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/compose.c:806,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/compose.c:807,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/compose.c:808,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/compose.c:809,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/compose.c:809,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/compose.c:810,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/compose.c:810,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/compose.c:811,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/compose.c:811,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/compose.c:812,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/compose.c:812,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/compose.c:813,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/compose.c:813,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/compose.c:814,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/compose.c:814,1
    - Dst: gf_filter_pid_set_max_buffer
      Src: /src/gpac/src/filters/compose.c:815,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/compose.c:816,1
    - Dst: gf_filter_pid_set_loose_connect
      Src: /src/gpac/src/filters/compose.c:817,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_Compositor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 803
    functionDepth: 1
    functionLinenumber: 803
    functionLinenumberEnd: 819
    functionName: compositor_setup_aout
    functionSourceFile: /src/gpac/src/filters/compose.c
    functionUses: 1
    functionsReached:
    - PROP_UINT
    - gf_filter_pid_set_max_buffer
    - gf_filter_pid_set_loose_connect
    - gf_filter_pid_set_udta
    - gf_filter_pid_set_name
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: void
    signature: void compositor_setup_aout(GF_Compositor *ctx)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/compose.c:825,1
    - Dst: gf_filter_is_dynamic
      Src: /src/gpac/src/filters/compose.c:829,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/filters/compose.c:832,1
    - Dst: gf_filter_prevent_blocking
      Src: /src/gpac/src/filters/compose.c:861,1
    - Dst: gf_sc_load
      Src: /src/gpac/src/filters/compose.c:864,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/compose.c:867,1
    - Dst: gf_filter_set_session_caps
      Src: /src/gpac/src/filters/compose.c:873,1
    - Dst: gf_filter_make_sticky
      Src: /src/gpac/src/filters/compose.c:876,1
    - Dst: gf_filter_load_filter
      Src: /src/gpac/src/filters/compose.c:882,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/compose.c:885,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/compose.c:885,1
    - Dst: compositor_setup_aout
      Src: /src/gpac/src/filters/compose.c:891,1
    - Dst: compositor_setup_vout
      Src: /src/gpac/src/filters/compose.c:894,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/compose.c:897,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/compose.c:903,1
    - Dst: compose_update_arg
      Src: /src/gpac/src/filters/compose.c:904,1
    - Dst: gf_filter_set_event_target
      Src: /src/gpac/src/filters/compose.c:908,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/compose.c:910,1
    - Dst: gf_sc_connect_from_time
      Src: /src/gpac/src/filters/compose.c:912,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/compose.c:914,1
    - Dst: gf_sc_connect_from_time
      Src: /src/gpac/src/filters/compose.c:919,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/compose.c:922,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 64
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 924
      start: 821
    functionDepth: 15
    functionLinenumber: 821
    functionLinenumberEnd: 924
    functionName: compose_initialize
    functionSourceFile: /src/gpac/src/filters/compose.c
    functionUses: 0
    functionsReached:
    - gf_opts_set_key
    - gf_filter_is_dynamic
    - gf_opts_get_key
    - gf_filter_post_process_task
    - gf_sys_is_cov_mode
    - gf_sc_load
    - GF_COL_A
    - gf_filter_make_sticky
    - gf_sc_connect_from_time
    - gf_filter_get_udta
    - GF_LOG
    - gf_filter_load_filter
    - gf_error_to_string
    - gf_filter_set_session_caps
    - gf_filter_get_session_caps
    - compositor_setup_aout
    - gf_filter_set_event_target
    - gf_filter_prevent_blocking
    - compose_update_arg
    - compositor_setup_vout
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err compose_initialize(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/filters/compose.c:929,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/compose.c:932,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 936
      start: 926
    functionDepth: 0
    functionLinenumber: 926
    functionLinenumberEnd: 936
    functionName: compose_probe_url
    functionSourceFile: /src/gpac/src/filters/compose.c
    functionUses: 0
    functionsReached:
    - strnicmp
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore compose_probe_url(const char *url, const char *mime)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 940
      start: 939
    functionDepth: 0
    functionLinenumber: 939
    functionLinenumberEnd: 940
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/compose.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filters/compose.c:1243,1
    - Dst: gf_audio_fmt_all_names
      Src: /src/gpac/src/filters/compose.c:1244,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/compose.c:1246,1
    - Dst: gf_pixel_fmt_all_names
      Src: /src/gpac/src/filters/compose.c:1247,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1251
      start: 1237
    functionDepth: 2
    functionLinenumber: 1237
    functionLinenumberEnd: 1251
    functionName: compositor_register
    functionSourceFile: /src/gpac/src/filters/compose.c
    functionUses: 0
    functionsReached:
    - gf_pixel_fmt_all_names
    - strcmp
    - gf_audio_fmt_all_names
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *compositor_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1256
      start: 1253
    functionDepth: 0
    functionLinenumber: 1253
    functionLinenumberEnd: 1256
    functionName: compositor_register
    functionSourceFile: /src/gpac/src/filters/compose.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *compositor_register(GF_FilterSession *session)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_route.c:34,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_route.c:35,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_route.c:36,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 38
    functionName: routein_probe_url
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 0
    functionsReached:
    - strnicmp
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore routein_probe_url(const char *url, const char *mime)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_route.c:44,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/in_route.c:47,1
    - Dst: gf_route_dmx_purge_objects
      Src: /src/gpac/src/filters/in_route.c:48,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:51,1
    - Dst: gf_route_dmx_del
      Src: /src/gpac/src/filters/in_route.c:52,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route.c:55,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/in_route.c:56,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/in_route.c:57,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:58,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:59,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/in_route.c:61,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route.c:64,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/in_route.c:66,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:67,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/in_route.c:69,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:70,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:71,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/in_route.c:74,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:77,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/filters/in_route.c:78,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/in_route.c:79,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route.c:80,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/in_route.c:81,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:82,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:83,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/in_route.c:85,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route.c:86,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/in_route.c:87,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:89,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/filters/in_route.c:90,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/in_route.c:91,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:92,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:93,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/in_route.c:95,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route.c:97,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/in_route.c:98,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:99,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/in_route.c:101,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route.c:103,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/in_route.c:104,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:105,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:106,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/in_route.c:108,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/in_route.c:112,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:114,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 63
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 41
    functionDepth: 5
    functionLinenumber: 41
    functionLinenumberEnd: 115
    functionName: routein_finalize
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_list_pop_back
    - gf_route_dmx_purge_objects
    - gf_list_transfer
    - gf_route_dmx_del
    - gf_list_count
    - gf_dm_sess_del
    - gf_list_del
    - gf_sys_is_cov_mode
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void routein_finalize(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/in_route.c:121,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_route.c:124,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_route.c:125,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route.c:127,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/in_route.c:129,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/in_route.c:130,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/in_route.c:132,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:133,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:134,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - pid
    - finfo
    argTypes:
    - ROUTEInCtx*
    - GF_FilterPid*
    - GF_ROUTEEventFileInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 117
    functionDepth: 2
    functionLinenumber: 117
    functionLinenumberEnd: 136
    functionName: push_seg_info
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - GF_SAFEALLOC
    - gf_list_pop_front
    - GF_FEVT_INIT
    - gf_list_count
    - gf_list_add
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: void
    signature: void push_seg_info(ROUTEInCtx *ctx, GF_FilterPid *pid, GF_ROUTEEventFileInfo
      *finfo)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_route_dmx_get_object_count
      Src: /src/gpac/src/filters/in_route.c:140,1
    - Dst: gf_route_dmx_remove_first_object
      Src: /src/gpac/src/filters/in_route.c:141,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - service_id
    argTypes:
    - ROUTEInCtx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 138
    functionDepth: 3
    functionLinenumber: 138
    functionLinenumberEnd: 145
    functionName: routein_cleanup_objects
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 0
    functionsReached:
    - gf_route_dmx_remove_first_object
    - gf_route_dmx_get_object_count
    linkageType: ''
    returnType: void
    signature: void routein_cleanup_objects(ROUTEInCtx *ctx, u32 service_id)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route.c:151,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route.c:153,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_route.c:159,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/in_route.c:162,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_route.c:167,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:168,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_route.c:171,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 27
    argCount: 3
    argNames:
    - ctx
    - service_id
    - finfo
    argTypes:
    - ROUTEInCtx*
    - u32
    - GF_ROUTEEventFileInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 173
    functionName: routein_get_tsio
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_strdup
    - gf_list_new
    - GF_SAFEALLOC
    - gf_list_count
    - strcmp
    - gf_list_add
    linkageType: ''
    returnType: TSI_Output
    signature: TSI_Output *routein_get_tsio(ROUTEInCtx *ctx, u32 service_id, GF_ROUTEEventFileInfo
      *finfo)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: routein_get_tsio
      Src: /src/gpac/src/filters/in_route.c:192,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/in_route.c:199,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_route.c:201,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_route.c:201,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_route.c:205,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_route.c:205,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_route.c:206,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_route.c:206,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route.c:209,1
    - Dst: gf_route_dmx_get_repair_info
      Src: /src/gpac/src/filters/in_route.c:211,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_route.c:213,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_route.c:214,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_route.c:221,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_route.c:222,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_route.c:224,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_route.c:228,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/in_route.c:228,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/in_route.c:229,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_route.c:230,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/in_route.c:230,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_route.c:235,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/in_route.c:235,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_route.c:236,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_route.c:236,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_route.c:237,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/in_route.c:237,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_route.c:244,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_route.c:246,1
    - Dst: routein_cleanup_objects
      Src: /src/gpac/src/filters/in_route.c:251,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route.c:265,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route.c:268,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route.c:271,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route.c:272,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route.c:283,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route.c:285,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/in_route.c:293,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/in_route.c:295,1
    - Dst: gf_filter_pck_set_corrupted
      Src: /src/gpac/src/filters/in_route.c:297,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/in_route.c:299,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/in_route.c:299,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/in_route.c:304,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/in_route.c:306,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/in_route.c:306,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_route.c:308,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/in_route.c:313,1
    - Dst: gf_filter_pck_set_corrupted
      Src: /src/gpac/src/filters/in_route.c:315,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/in_route.c:317,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/in_route.c:317,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/in_route.c:320,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_route.c:321,1
    - Dst: push_seg_info
      Src: /src/gpac/src/filters/in_route.c:332,1
    - Dst: routein_cleanup_objects
      Src: /src/gpac/src/filters/in_route.c:334,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 128
    argCount: 4
    argNames:
    - ctx
    - service_id
    - finfo
    - evt_type
    argTypes:
    - ROUTEInCtx*
    - u32
    - GF_ROUTEEventFileInfo*
    - GF_ROUTEEventType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 175
    functionDepth: 4
    functionLinenumber: 175
    functionLinenumberEnd: 335
    functionName: routein_send_file
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 0
    functionsReached:
    - PROP_STRING
    - gf_filter_pid_new
    - strchr
    - gf_assert
    - gf_filter_pck_set_property
    - memcpy
    - routein_cleanup_objects
    - strncmp
    - PROP_BOOL
    - gf_filter_pck_set_corrupted
    - routein_get_tsio
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_route_dmx_get_repair_info
    - push_seg_info
    - gf_filter_pid_set_property
    - strlen
    - PROP_UINT
    - gf_filter_pck_set_framing
    - gf_file_ext_start
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void routein_send_file(ROUTEInCtx *ctx, u32 service_id, GF_ROUTEEventFileInfo
      *finfo, GF_ROUTEEventType evt_type)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: routein_cleanup_objects
      Src: /src/gpac/src/filters/in_route.c:345,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/in_route.c:349,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/in_route.c:351,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route.c:353,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/in_route.c:355,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/in_route.c:356,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route.c:358,1
    - Dst: routein_cleanup_objects
      Src: /src/gpac/src/filters/in_route.c:362,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_route.c:365,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_route.c:365,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route.c:367,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/in_route.c:368,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/filters/in_route.c:370,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:371,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 4
    argNames:
    - ctx
    - service_id
    - finfo
    - evt_type
    argTypes:
    - ROUTEInCtx*
    - u32
    - GF_ROUTEEventFileInfo*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 337
    functionDepth: 5
    functionLinenumber: 337
    functionLinenumberEnd: 375
    functionName: routein_write_to_disk
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_strdup
    - gf_list_pop_front
    - GF_LOG
    - routein_cleanup_objects
    - gf_fwrite
    - sprintf
    - gf_list_count
    - gf_fopen
    - gf_list_add
    - gf_file_delete
    linkageType: ''
    returnType: void
    signature: void routein_write_to_disk(ROUTEInCtx *ctx, u32 service_id, GF_ROUTEEventFileInfo
      *finfo, u32 evt_type)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_route.c:387,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/in_route.c:388,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/in_route.c:399,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_route.c:406,1
    - Dst: routein_write_to_disk
      Src: /src/gpac/src/filters/in_route.c:409,1
    - Dst: routein_send_file
      Src: /src/gpac/src/filters/in_route.c:413,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/in_route.c:416,1
    - Dst: gf_dm_add_cache_entry
      Src: /src/gpac/src/filters/in_route.c:420,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/in_route.c:423,1
    - Dst: gf_dm_force_headers
      Src: /src/gpac/src/filters/in_route.c:424,1
    - Dst: gf_dm_force_headers
      Src: /src/gpac/src/filters/in_route.c:426,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/in_route.c:430,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/in_route.c:435,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_route.c:436,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_route.c:436,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_route.c:438,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_route.c:438,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_route.c:439,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_route.c:439,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_route.c:440,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/in_route.c:440,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_route.c:441,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/in_route.c:441,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_route.c:442,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/in_route.c:442,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_route.c:443,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/in_route.c:443,1
    - Dst: gf_route_dmx_set_service_udta
      Src: /src/gpac/src/filters/in_route.c:445,1
    - Dst: routein_check_type
      Src: /src/gpac/src/filters/in_route.c:454,1
    - Dst: routein_write_to_disk
      Src: /src/gpac/src/filters/in_route.c:457,1
    - Dst: routein_send_file
      Src: /src/gpac/src/filters/in_route.c:461,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:466,1
    - Dst: routein_check_type
      Src: /src/gpac/src/filters/in_route.c:473,1
    - Dst: routein_send_file
      Src: /src/gpac/src/filters/in_route.c:483,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_route.c:489,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_route.c:494,1
    - Dst: gf_route_dmx_get_service_udta
      Src: /src/gpac/src/filters/in_route.c:496,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/in_route.c:498,1
    - Dst: strcat
      Src: /src/gpac/src/filters/in_route.c:500,1
    - Dst: gf_dm_force_headers
      Src: /src/gpac/src/filters/in_route.c:501,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route.c:518,1
    - Dst: gf_route_dmx_purge_objects
      Src: /src/gpac/src/filters/in_route.c:520,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:523,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_route.c:524,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/in_route.c:525,1
    - Dst: gf_dm_force_headers
      Src: /src/gpac/src/filters/in_route.c:526,1
    - Dst: routein_write_to_disk
      Src: /src/gpac/src/filters/in_route.c:537,1
    - Dst: routein_send_file
      Src: /src/gpac/src/filters/in_route.c:541,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/in_route.c:551,1
    - Dst: gf_dm_add_cache_entry
      Src: /src/gpac/src/filters/in_route.c:553,1
    - Dst: gf_dm_force_headers
      Src: /src/gpac/src/filters/in_route.c:555,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route.c:565,1
    - Dst: push_seg_info
      Src: /src/gpac/src/filters/in_route.c:567,1
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filters/in_route.c:572,1
    - Dst: gf_route_dmx_get_object_count
      Src: /src/gpac/src/filters/in_route.c:573,1
    - Dst: gf_route_dmx_remove_first_object
      Src: /src/gpac/src/filters/in_route.c:575,1
    - Dst: gf_route_dmx_get_object_count
      Src: /src/gpac/src/filters/in_route.c:577,1
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filters/in_route.c:579,1
    CyclomaticComplexity: 67
    EdgeCount: 67
    ICount: 162
    argCount: 6
    argNames:
    - ctx
    - evt
    - evt_param
    - finfo
    - is_defer_repair
    - drop_if_first
    argTypes:
    - ROUTEInCtx*
    - GF_ROUTEEventType
    - u32
    - GF_ROUTEEventFileInfo*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 377
    functionDepth: 10
    functionLinenumber: 377
    functionLinenumberEnd: 584
    functionName: routein_on_event_file
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 3
    functionsReached:
    - gf_free
    - PROP_STRING
    - gf_filter_lock
    - gf_route_dmx_get_object_count
    - routein_send_file
    - gf_route_dmx_set_service_udta
    - gf_route_dmx_remove_first_object
    - gf_filter_pid_new
    - gf_sys_clock
    - strcat
    - gf_assert
    - gf_strdup
    - sprintf
    - gf_mx_p
    - gf_route_dmx_purge_objects
    - GF_LOG
    - gf_mx_v
    - gf_dm_add_cache_entry
    - gf_dm_force_headers
    - push_seg_info
    - gf_filter_pid_set_property
    - routein_write_to_disk
    - PROP_UINT
    - routein_check_type
    - gf_file_ext_start
    - strcmp
    - gf_route_dmx_get_service_udta
    linkageType: ''
    returnType: void
    signature: void routein_on_event_file(ROUTEInCtx *ctx, GF_ROUTEEventType evt,
      u32 evt_param, GF_ROUTEEventFileInfo *finfo, Bool is_defer_repair, Bool drop_if_first)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_route.c:593,1
    - Dst: routein_send_file
      Src: /src/gpac/src/filters/in_route.c:596,1
    - Dst: gf_route_dmx_find_atsc3_service
      Src: /src/gpac/src/filters/in_route.c:601,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route.c:603,1
    - Dst: gf_route_atsc3_tune_in
      Src: /src/gpac/src/filters/in_route.c:606,1
    - Dst: routein_repair_mark_file
      Src: /src/gpac/src/filters/in_route.c:614,1
    - Dst: routein_queue_repair
      Src: /src/gpac/src/filters/in_route.c:621,1
    - Dst: routein_on_event_file
      Src: /src/gpac/src/filters/in_route.c:623,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 4
    argNames:
    - udta
    - evt
    - evt_param
    - finfo
    argTypes:
    - void*
    - GF_ROUTEEventType
    - u32
    - GF_ROUTEEventFileInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 586
    functionDepth: 12
    functionLinenumber: 586
    functionLinenumberEnd: 625
    functionName: routein_on_event
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 0
    functionsReached:
    - gf_route_atsc3_tune_in
    - routein_queue_repair
    - GF_LOG
    - routein_repair_mark_file
    - routein_send_file
    - gf_route_dmx_find_atsc3_service
    - routein_on_event_file
    - gf_sys_clock
    linkageType: ''
    returnType: void
    signature: void routein_on_event(void *udta, GF_ROUTEEventType evt, u32 evt_param,
      GF_ROUTEEventFileInfo *finfo)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_route.c:632,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_route.c:634,1
    - Dst: atoi
      Src: /src/gpac/src/filters/in_route.c:636,1
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filters/in_route.c:639,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route.c:641,1
    - Dst: gf_route_dmx_remove_object_by_name
      Src: /src/gpac/src/filters/in_route.c:642,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/in_route.c:644,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:646,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route.c:650,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:654,1
    - Dst: gf_route_atsc3_tune_in
      Src: /src/gpac/src/filters/in_route.c:656,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route.c:658,1
    - Dst: routein_repair_mark_file
      Src: /src/gpac/src/filters/in_route.c:659,1
    - Dst: gf_route_dmx_force_keep_object_by_name
      Src: /src/gpac/src/filters/in_route.c:661,1
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filters/in_route.c:663,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 33
    argCount: 3
    argNames:
    - par
    - url
    - is_destroy
    argTypes:
    - void*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 665
      start: 627
    functionDepth: 4
    functionLinenumber: 627
    functionLinenumberEnd: 665
    functionName: routein_local_cache_probe
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_route_atsc3_tune_in
    - GF_LOG
    - gf_route_dmx_remove_object_by_name
    - gf_filter_lock
    - routein_repair_mark_file
    - gf_route_dmx_force_keep_object_by_name
    - strncmp
    - atoi
    - strchr
    - gf_filter_post_process_task
    linkageType: ''
    returnType: Bool
    signature: Bool routein_local_cache_probe(void *par, char *url, Bool is_destroy)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/in_route.c:669,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/in_route.c:671,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_route.c:672,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/in_route.c:675,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/in_route.c:675,1
    - Dst: gf_route_dmx_reset_all
      Src: /src/gpac/src/filters/in_route.c:678,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - filter
    - ctx
    - no_reset
    argTypes:
    - GF_Filter*
    - ROUTEInCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 667
    functionDepth: 3
    functionLinenumber: 667
    functionLinenumberEnd: 679
    functionName: routein_set_eos
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_info_str
    - gf_filter_get_opid_count
    - PROP_STRING
    - gf_filter_pid_set_eos
    - gf_filter_get_opid
    - gf_route_dmx_reset_all
    linkageType: ''
    returnType: void
    signature: void routein_set_eos(GF_Filter *filter, ROUTEInCtx *ctx, Bool no_reset)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_route.c:685,1
    - Dst: routein_do_repair
      Src: /src/gpac/src/filters/in_route.c:688,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_route.c:690,1
    - Dst: gf_route_dmx_check_timeouts
      Src: /src/gpac/src/filters/in_route.c:698,1
    - Dst: gf_route_dmx_process
      Src: /src/gpac/src/filters/in_route.c:701,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_route.c:704,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_route.c:706,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route.c:708,1
    - Dst: routein_set_eos
      Src: /src/gpac/src/filters/in_route.c:709,1
    - Dst: gf_route_dmx_has_active_multicast
      Src: /src/gpac/src/filters/in_route.c:715,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_route.c:720,1
    - Dst: routein_do_repair
      Src: /src/gpac/src/filters/in_route.c:727,1
    - Dst: routein_set_eos
      Src: /src/gpac/src/filters/in_route.c:730,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_route.c:737,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route.c:739,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_route.c:740,1
    - Dst: routein_set_eos
      Src: /src/gpac/src/filters/in_route.c:741,1
    - Dst: routein_do_repair
      Src: /src/gpac/src/filters/in_route.c:746,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_route.c:748,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_route.c:750,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_route.c:753,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/in_route.c:756,1
    - Dst: gf_route_dmx_get_first_packet_time
      Src: /src/gpac/src/filters/in_route.c:760,1
    - Dst: gf_route_dmx_get_last_packet_time
      Src: /src/gpac/src/filters/in_route.c:761,1
    - Dst: gf_route_dmx_get_nb_packets
      Src: /src/gpac/src/filters/in_route.c:762,1
    - Dst: gf_route_dmx_get_recv_bytes
      Src: /src/gpac/src/filters/in_route.c:763,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/in_route.c:770,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/in_route.c:771,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 70
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 776
      start: 681
    functionDepth: 15
    functionLinenumber: 681
    functionLinenumberEnd: 776
    functionName: routein_process
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 0
    functionsReached:
    - gf_route_dmx_process
    - gf_route_dmx_has_active_multicast
    - gf_route_dmx_get_first_packet_time
    - gf_filter_update_status
    - gf_route_dmx_check_timeouts
    - gf_route_dmx_get_nb_packets
    - GF_LOG
    - gf_route_dmx_get_last_packet_time
    - gf_route_dmx_get_recv_bytes
    - routein_set_eos
    - sprintf
    - gf_filter_reporting_enabled
    - gf_filter_setup_failure
    - gf_filter_ask_rt_reschedule
    - routein_do_repair
    - gf_sys_clock
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err routein_process(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_route.c:783,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route.c:784,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_route.c:786,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/in_route.c:787,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:789,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/in_route.c:794,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_route.c:798,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:799,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_route.c:800,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 3
    argNames:
    - ctx
    - url
    - service_id
    argTypes:
    - ROUTEInCtx*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 802
      start: 778
    functionDepth: 1
    functionLinenumber: 778
    functionLinenumberEnd: 802
    functionName: routein_push_repair_server
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_strdup
    - gf_list_new
    - GF_SAFEALLOC
    - gf_list_count
    - strcmp
    - gf_list_add
    - gf_list_rem
    linkageType: ''
    returnType: RouteRepairServer
    signature: RouteRepairServer *routein_push_repair_server(ROUTEInCtx *ctx, const
      char *url, u32 service_id)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_route.c:809,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_route.c:815,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_route.c:819,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_route.c:824,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/in_route.c:832,1
    - Dst: gf_dm_set_localcache_provider
      Src: /src/gpac/src/filters/in_route.c:834,1
    - Dst: gf_route_atsc_dmx_new_ex
      Src: /src/gpac/src/filters/in_route.c:842,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/in_route.c:842,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/in_route.c:846,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route.c:848,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_route.c:852,1
    - Dst: atoi
      Src: /src/gpac/src/filters/in_route.c:854,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/filters/in_route.c:857,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route.c:858,1
    - Dst: gf_dvb_mabr_dmx_new
      Src: /src/gpac/src/filters/in_route.c:862,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/in_route.c:862,1
    - Dst: gf_route_dmx_new_ex
      Src: /src/gpac/src/filters/in_route.c:864,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/in_route.c:864,1
    - Dst: gf_route_set_dispatch_mode
      Src: /src/gpac/src/filters/in_route.c:880,1
    - Dst: gf_route_set_dispatch_mode
      Src: /src/gpac/src/filters/in_route.c:882,1
    - Dst: gf_route_dmx_set_reorder
      Src: /src/gpac/src/filters/in_route.c:884,1
    - Dst: gf_route_dmx_debug_tsi
      Src: /src/gpac/src/filters/in_route.c:887,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route.c:893,1
    - Dst: gf_route_atsc3_tune_in
      Src: /src/gpac/src/filters/in_route.c:895,1
    - Dst: gf_route_atsc3_tune_in
      Src: /src/gpac/src/filters/in_route.c:897,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_route.c:900,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:903,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:905,1
    - Dst: routein_push_repair_server
      Src: /src/gpac/src/filters/in_route.c:913,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/in_route.c:922,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_route.c:923,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:925,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:926,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:927,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:931,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:932,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:933,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 113
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 937
      start: 804
    functionDepth: 7
    functionLinenumber: 804
    functionLinenumberEnd: 937
    functionName: routein_initialize
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 0
    functionsReached:
    - gf_dm_set_localcache_provider
    - memset
    - atoi
    - strchr
    - gf_sys_clock
    - gf_route_atsc3_tune_in
    - gf_list_new
    - gf_route_atsc_dmx_new_ex
    - strrchr
    - gf_route_dmx_set_reorder
    - strncmp
    - gf_route_dmx_debug_tsi
    - gf_filter_get_udta
    - gf_dvb_mabr_dmx_new
    - GF_LOG
    - gf_filter_get_netcap_id
    - routein_push_repair_server
    - gf_malloc
    - gf_filter_get_download_manager
    - gf_sk_is_multicast_address
    - strcmp
    - gf_route_set_dispatch_mode
    - gf_route_dmx_new_ex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err routein_initialize(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_route.c:941,1
    - Dst: gf_route_dmx_mark_active_quality
      Src: /src/gpac/src/filters/in_route.c:951,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 954
      start: 939
    functionDepth: 2
    functionLinenumber: 939
    functionLinenumberEnd: 954
    functionName: routein_process_event
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 0
    functionsReached:
    - gf_route_dmx_mark_active_quality
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool routein_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 957
      start: 956
    functionDepth: 0
    functionLinenumber: 956
    functionLinenumberEnd: 957
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/in_route.c:1090,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/in_route.c:1091,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1094
      start: 1088
    functionDepth: 6
    functionLinenumber: 1088
    functionLinenumberEnd: 1094
    functionName: routein_register
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    - gf_opts_set_key
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *routein_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1101
      start: 1098
    functionDepth: 0
    functionLinenumber: 1098
    functionLinenumberEnd: 1101
    functionName: routein_register
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *routein_register(GF_FilterSession *session)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_vtt.c:66,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_vtt.c:71,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/write_vtt.c:76,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_vtt.c:79,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/write_vtt.c:87,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_vtt.c:89,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/write_vtt.c:89,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/write_vtt.c:92,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_vtt.c:93,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/write_vtt.c:93,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_vtt.c:96,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_vtt.c:99,1
    - Dst: gf_webvtt_parser_del
      Src: /src/gpac/src/filters/write_vtt.c:102,1
    - Dst: gf_webvtt_parser_new
      Src: /src/gpac/src/filters/write_vtt.c:105,1
    - Dst: gf_webvtt_parser_cue_callback
      Src: /src/gpac/src/filters/write_vtt.c:106,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/write_vtt.c:108,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_vtt.c:110,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_vtt.c:113,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_vtt.c:116,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_vtt.c:118,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 63
    functionDepth: 4
    functionLinenumber: 63
    functionLinenumberEnd: 121
    functionName: vttmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/write_vtt.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - GF_LOG
    - gf_webvtt_parser_cue_callback
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_check_caps
    - gf_webvtt_parser_del
    - gf_webvtt_parser_new
    - PROP_BOOL
    - gf_filter_pid_new
    - gf_codecid_name
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vttmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filters/write_vtt.c:130,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_vtt.c:132,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_vtt.c:134,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_vtt.c:137,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/write_vtt.c:145,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/write_vtt.c:146,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/write_vtt.c:148,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/write_vtt.c:149,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/write_vtt.c:150,1
    - Dst: gf_filter_pck_set_property_str
      Src: /src/gpac/src/filters/write_vtt.c:152,1
    - Dst: gf_filter_pck_set_property_str
      Src: /src/gpac/src/filters/write_vtt.c:153,1
    - Dst: gf_filter_pck_set_property_str
      Src: /src/gpac/src/filters/write_vtt.c:154,1
    - Dst: gf_filter_pck_set_property_str
      Src: /src/gpac/src/filters/write_vtt.c:158,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_vtt.c:158,1
    - Dst: gf_filter_pck_set_property_str
      Src: /src/gpac/src/filters/write_vtt.c:161,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_vtt.c:161,1
    - Dst: gf_filter_pck_set_property_str
      Src: /src/gpac/src/filters/write_vtt.c:164,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_vtt.c:164,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/write_vtt.c:168,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/write_vtt.c:169,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_vtt.c:170,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/write_vtt.c:175,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 3
    argNames:
    - ctx
    - cue
    - write_srt
    argTypes:
    - GF_WebVTTMxCtx*
    - GF_WebVTTCue*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 178
    functionName: webvtt_write_cue
    functionSourceFile: /src/gpac/src/filters/write_vtt.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_new_alloc
    - gf_filter_pck_set_property_str
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - memcpy
    - PROP_STRING
    - gf_filter_pck_merge_properties
    - gf_filter_pck_set_duration
    - gf_filter_pck_unref
    - gf_filter_pck_set_sap
    - gf_timestamp_rescale
    - strlen
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void webvtt_write_cue(GF_WebVTTMxCtx *ctx, GF_WebVTTCue *cue, Bool
      write_srt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: webvtt_write_cue
      Src: /src/gpac/src/filters/write_vtt.c:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - udta
    - cue
    argTypes:
    - void*
    - GF_WebVTTCue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 180
    functionDepth: 2
    functionLinenumber: 180
    functionLinenumberEnd: 184
    functionName: vttmx_write_cue
    functionSourceFile: /src/gpac/src/filters/write_vtt.c
    functionUses: 0
    functionsReached:
    - webvtt_write_cue
    linkageType: ''
    returnType: void
    signature: void vttmx_write_cue(void *udta, GF_WebVTTCue *cue)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_webvtt_parser_finalize
      Src: /src/gpac/src/filters/write_vtt.c:194,1
    - Dst: gf_webvtt_parser_del
      Src: /src/gpac/src/filters/write_vtt.c:195,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_WebVTTMxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 186
    functionDepth: 4
    functionLinenumber: 186
    functionLinenumberEnd: 197
    functionName: vttmx_parser_flush
    functionSourceFile: /src/gpac/src/filters/write_vtt.c
    functionUses: 0
    functionsReached:
    - gf_webvtt_parser_del
    - gf_webvtt_parser_finalize
    linkageType: ''
    returnType: void
    signature: void vttmx_parser_flush(GF_WebVTTMxCtx *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_webvtt_parser_finalize
      Src: /src/gpac/src/filters/write_vtt.c:201,1
    - Dst: gf_webvtt_parser_del
      Src: /src/gpac/src/filters/write_vtt.c:202,1
    - Dst: gf_webvtt_parser_new
      Src: /src/gpac/src/filters/write_vtt.c:203,1
    - Dst: gf_webvtt_parser_cue_callback
      Src: /src/gpac/src/filters/write_vtt.c:204,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_vtt.c:208,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_vtt.c:210,1
    - Dst: gf_filter_pck_set_property_str
      Src: /src/gpac/src/filters/write_vtt.c:212,1
    - Dst: gf_filter_pck_set_property_str
      Src: /src/gpac/src/filters/write_vtt.c:213,1
    - Dst: gf_filter_pck_set_property_str
      Src: /src/gpac/src/filters/write_vtt.c:214,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/write_vtt.c:217,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/write_vtt.c:218,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_vtt.c:219,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_WebVTTMxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 199
    functionDepth: 4
    functionLinenumber: 199
    functionLinenumberEnd: 223
    functionName: vttmx_flush_segment
    functionSourceFile: /src/gpac/src/filters/write_vtt.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_new_alloc
    - gf_filter_pck_set_property_str
    - gf_webvtt_parser_finalize
    - gf_webvtt_parser_cue_callback
    - gf_filter_pck_merge_properties
    - gf_webvtt_parser_del
    - gf_webvtt_parser_new
    - gf_filter_pck_set_sap
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void vttmx_flush_segment(GF_WebVTTMxCtx *ctx)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_vtt.c:227,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/write_vtt.c:235,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/write_vtt.c:237,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_vtt.c:240,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/write_vtt.c:241,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/write_vtt.c:242,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_vtt.c:243,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/write_vtt.c:246,1
    - Dst: vttmx_parser_flush
      Src: /src/gpac/src/filters/write_vtt.c:248,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/write_vtt.c:251,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/write_vtt.c:258,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_vtt.c:260,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/write_vtt.c:261,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/write_vtt.c:268,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/write_vtt.c:269,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_vtt.c:273,1
    - Dst: vttmx_flush_segment
      Src: /src/gpac/src/filters/write_vtt.c:274,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/write_vtt.c:283,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/write_vtt.c:285,1
    - Dst: gf_webvtt_parse_cues_from_data
      Src: /src/gpac/src/filters/write_vtt.c:288,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/write_vtt.c:289,1
    - Dst: gf_webvtt_merge_cues
      Src: /src/gpac/src/filters/write_vtt.c:291,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/write_vtt.c:293,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/write_vtt.c:294,1
    - Dst: vttmx_write_cue
      Src: /src/gpac/src/filters/write_vtt.c:295,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/filters/write_vtt.c:296,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/write_vtt.c:299,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_vtt.c:302,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/filters/write_vtt.c:303,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_vtt.c:306,1
    - Dst: vttmx_flush_segment
      Src: /src/gpac/src/filters/write_vtt.c:308,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/write_vtt.c:309,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_vtt.c:313,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 70
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 225
    functionDepth: 5
    functionLinenumber: 225
    functionLinenumberEnd: 316
    functionName: vttmx_process
    functionSourceFile: /src/gpac/src/filters/write_vtt.c
    functionUses: 0
    functionsReached:
    - gf_set_progress
    - gf_list_count
    - gf_filter_pck_ref_props
    - gf_filter_pid_get_packet
    - gf_filter_pck_set_byte_offset
    - gf_list_get
    - gf_filter_pck_forward
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_duration
    - gf_filter_get_udta
    - gf_filter_pck_get_property
    - gf_filter_pck_new_alloc
    - gf_filter_pid_drop_packet
    - vttmx_write_cue
    - gf_filter_pck_get_data
    - gf_filter_pid_set_eos
    - gf_webvtt_merge_cues
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - gf_timestamp_rescale
    - vttmx_parser_flush
    - gf_webvtt_parse_cues_from_data
    - vttmx_flush_segment
    - gf_list_del
    - gf_webvtt_cue_del
    - gf_filter_pck_unref
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vttmx_process(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_vtt.c:320,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_vtt.c:321,1
    - Dst: gf_webvtt_parser_del
      Src: /src/gpac/src/filters/write_vtt.c:323,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/write_vtt.c:326,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 318
    functionDepth: 4
    functionLinenumber: 318
    functionLinenumberEnd: 330
    functionName: vttmx_finalize
    functionSourceFile: /src/gpac/src/filters/write_vtt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_webvtt_parser_del
    - gf_filter_pck_unref
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void vttmx_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 341
    functionDepth: 0
    functionLinenumber: 341
    functionLinenumberEnd: 342
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/write_vtt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 365
    functionDepth: 0
    functionLinenumber: 365
    functionLinenumberEnd: 368
    functionName: ufvtt_register
    functionSourceFile: /src/gpac/src/filters/write_vtt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ufvtt_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 370
    functionDepth: 0
    functionLinenumber: 370
    functionLinenumberEnd: 373
    functionName: ufvtt_register
    functionSourceFile: /src/gpac/src/filters/write_vtt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ufvtt_register(GF_FilterSession *session)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_destination
      Src: /src/gpac/src/filters/write_nhnt.c:68,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/write_nhnt.c:70,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/filters/write_nhnt.c:71,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/write_nhnt.c:72,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filters/write_nhnt.c:72,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/write_nhnt.c:74,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_nhnt.c:77,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/write_nhnt.c:79,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/write_nhnt.c:82,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/write_nhnt.c:87,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:89,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/write_nhnt.c:95,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_nhnt.c:98,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhnt.c:102,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_nhnt.c:102,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhnt.c:103,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhnt.c:103,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhnt.c:104,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhnt.c:104,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/write_nhnt.c:107,1
    - Dst: strcat
      Src: /src/gpac/src/filters/write_nhnt.c:109,1
    - Dst: gf_fileio_factory
      Src: /src/gpac/src/filters/write_nhnt.c:111,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/write_nhnt.c:111,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhnt.c:115,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhnt.c:115,1
    - Dst: gf_filter_connect_destination
      Src: /src/gpac/src/filters/write_nhnt.c:117,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/write_nhnt.c:118,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhnt.c:123,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_nhnt.c:123,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhnt.c:124,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhnt.c:124,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhnt.c:125,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhnt.c:125,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/write_nhnt.c:128,1
    - Dst: strcat
      Src: /src/gpac/src/filters/write_nhnt.c:130,1
    - Dst: gf_fileio_factory
      Src: /src/gpac/src/filters/write_nhnt.c:132,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/write_nhnt.c:132,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhnt.c:136,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhnt.c:136,1
    - Dst: gf_filter_connect_destination
      Src: /src/gpac/src/filters/write_nhnt.c:138,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/write_nhnt.c:139,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 69
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_NHNTDumpCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 60
    functionDepth: 4
    functionLinenumber: 60
    functionLinenumberEnd: 145
    functionName: nhntdump_config_side_streams
    functionSourceFile: /src/gpac/src/filters/write_nhnt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - PROP_STRING
    - gf_fileio_translate_url
    - strcpy
    - gf_filter_connect_destination
    - gf_fileio_from_url
    - gf_filter_pid_new
    - gf_file_basename
    - strcat
    - gf_fileio_factory
    - strncmp
    - gf_filter_set_source
    - strncpy
    - gf_filter_pid_set_property
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_file_ext_start
    - gf_filter_pid_get_destination
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhntdump_config_side_streams(GF_Filter *filter, GF_NHNTDumpCtx
      *ctx)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_nhnt.c:152,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_nhnt.c:157,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_nhnt.c:161,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_nhnt.c:165,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/write_nhnt.c:170,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:173,1
    - Dst: gf_codecid_oti
      Src: /src/gpac/src/filters/write_nhnt.c:185,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_nhnt.c:188,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/write_nhnt.c:188,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:192,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/write_nhnt.c:196,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:201,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:203,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:205,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/write_nhnt.c:206,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:207,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:209,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/write_nhnt.c:213,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_nhnt.c:216,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_nhnt.c:218,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_nhnt.c:220,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhnt.c:224,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_nhnt.c:224,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhnt.c:225,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhnt.c:225,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhnt.c:226,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhnt.c:226,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:231,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/write_nhnt.c:234,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 71
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 147
    functionDepth: 3
    functionLinenumber: 147
    functionLinenumberEnd: 236
    functionName: nhntdump_configure_pid
    functionSourceFile: /src/gpac/src/filters/write_nhnt.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - GF_LOG
    - PROP_STRING
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_check_caps
    - gf_codecid_oti
    - gf_filter_pid_new
    - gf_codecid_name
    - gf_filter_pid_set_property
    - gf_audio_fmt_bit_depth
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhntdump_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_nhnt.c:240,1
    - Dst: nhntdump_config_side_streams
      Src: /src/gpac/src/filters/write_nhnt.c:247,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/write_nhnt.c:250,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/write_nhnt.c:252,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/write_nhnt.c:253,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/write_nhnt.c:254,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/write_nhnt.c:255,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_nhnt.c:265,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_nhnt.c:268,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_nhnt.c:269,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhnt.c:273,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/write_nhnt.c:275,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/write_nhnt.c:277,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/write_nhnt.c:279,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/write_nhnt.c:281,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/filters/write_nhnt.c:284,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:286,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_nhnt.c:287,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_nhnt.c:290,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:292,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_nhnt.c:293,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_nhnt.c:295,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_nhnt.c:296,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/write_nhnt.c:299,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_nhnt.c:301,1
    - Dst: gf_filter_pck_set_readonly
      Src: /src/gpac/src/filters/write_nhnt.c:302,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_nhnt.c:303,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/write_nhnt.c:309,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_nhnt.c:313,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_nhnt.c:317,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/filters/write_nhnt.c:320,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/write_nhnt.c:321,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/write_nhnt.c:321,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/write_nhnt.c:323,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/write_nhnt.c:324,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/write_nhnt.c:326,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/write_nhnt.c:327,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/write_nhnt.c:327,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/write_nhnt.c:329,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_nhnt.c:330,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/write_nhnt.c:332,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/write_nhnt.c:333,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/write_nhnt.c:334,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_nhnt.c:336,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_nhnt.c:337,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_nhnt.c:338,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_nhnt.c:341,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_nhnt.c:342,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/write_nhnt.c:345,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_nhnt.c:348,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_nhnt.c:352,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_nhnt.c:353,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/write_nhnt.c:358,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_nhnt.c:359,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/filters/write_nhnt.c:360,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_nhnt.c:363,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 82
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 238
    functionDepth: 6
    functionLinenumber: 238
    functionLinenumberEnd: 366
    functionName: nhntdump_process
    functionSourceFile: /src/gpac/src/filters/write_nhnt.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_ref
    - gf_bs_new
    - gf_set_progress
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_filter_pid_get_packet
    - gf_filter_pck_set_readonly
    - nhntdump_config_side_streams
    - gf_filter_pck_get_cts
    - gf_bs_write_u64
    - gf_filter_get_udta
    - gf_filter_pck_new_alloc
    - gf_bs_write_u24
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - gf_bs_write_int
    - gf_filter_pid_set_eos
    - gf_bs_write_data
    - gf_filter_pck_get_timescale
    - gf_filter_pck_get_sap
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - gf_filter_pck_new_shared
    - gf_filter_pid_get_property
    - gf_filter_pck_merge_properties
    - gf_filter_pck_set_framing
    - gf_bs_write_u8
    - gf_filter_pck_get_dts
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhntdump_process(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_nhnt.c:370,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/write_nhnt.c:371,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 368
    functionDepth: 3
    functionLinenumber: 368
    functionLinenumberEnd: 372
    functionName: nhntdump_finalize
    functionSourceFile: /src/gpac/src/filters/write_nhnt.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void nhntdump_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 384
    functionDepth: 0
    functionLinenumber: 384
    functionLinenumberEnd: 385
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/write_nhnt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 407
    functionDepth: 0
    functionLinenumber: 407
    functionLinenumberEnd: 410
    functionName: nhntw_register
    functionSourceFile: /src/gpac/src/filters/write_nhnt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *nhntw_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 412
    functionDepth: 0
    functionLinenumber: 412
    functionLinenumberEnd: 415
    functionName: nhntw_register
    functionSourceFile: /src/gpac/src/filters/write_nhnt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *nhntw_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - cbck
    - par
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionName: cenc_dec_kms_netio
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void cenc_dec_kms_netio(void *cbck, GF_NETIO_Parameter *par)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_crypt_info_load
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:160,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:162,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:164,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:167,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:168,1
    - Dst: gf_crypt_info_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:173,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 4
    argNames:
    - stream_id
    - drm_file
    - key
    - salt
    argTypes:
    - u32
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 153
    functionDepth: 3
    functionLinenumber: 153
    functionLinenumberEnd: 175
    functionName: gf_ismacryp_gpac_get_info
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_crypt_info_load
    - memcpy
    - gf_list_count
    - gf_crypt_info_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_ismacryp_gpac_get_info(u32 stream_id, char *drm_file, char
      *key, char *salt)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:186,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:187,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:190,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:191,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:192,1
    - Dst: strstr
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:195,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:195,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:197,1
    - Dst: gf_ismacryp_gpac_get_info
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:198,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:202,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:204,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:209,1
    - Dst: gf_dm_sess_get_stats
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:211,1
    - Dst: gf_ismacryp_gpac_get_info
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:215,1
    - Dst: gf_dm_sess_get_cache_name
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:215,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:217,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 34
    argCount: 3
    argNames:
    - ctx
    - cstr
    - kms_url
    argTypes:
    - GF_CENCDecCtx*
    - GF_CENCDecStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 177
    functionDepth: 5
    functionLinenumber: 177
    functionLinenumberEnd: 219
    functionName: cenc_dec_get_gpac_kms
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_dm_sess_process
    - gf_dm_sess_get_stats
    - gf_filter_pid_get_property
    - gf_ismacryp_gpac_get_info
    - GF_LOG
    - gf_dm_sess_get_cache_name
    - strstr
    - gf_fopen
    - strnicmp
    - gf_dm_sess_new
    - gf_dm_sess_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_get_gpac_kms(GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr,
      const char *kms_url)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:227,1
    - Dst: getenv
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:227,1
    - Dst: strcat
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:228,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:230,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:231,1
    - Dst: gf_fgets
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:232,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:233,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:234,1
    - Dst: gf_fgets
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:235,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:242,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:248,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:251,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:252,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 33
    argCount: 3
    argNames:
    - kms_uri
    - key
    - salt
    argTypes:
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 221
    functionDepth: 5
    functionLinenumber: 221
    functionLinenumberEnd: 256
    functionName: gf_ismacryp_mpeg4ip_get_info
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_fclose
    - gf_feof
    - sscanf
    - gf_fgets
    - strcpy
    - memcpy
    - strlen
    - gf_fopen
    - stricmp
    - getenv
    linkageType: ''
    returnType: Bool
    signature: Bool gf_ismacryp_mpeg4ip_get_info(char *kms_uri, char *key, char *salt)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:270,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:270,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:276,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:278,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:278,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:279,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:280,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:283,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:288,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:294,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:302,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:307,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:307,1
    - Dst: gf_ismacryp_mpeg4ip_get_info
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:309,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:317,1
    - Dst: cenc_dec_get_gpac_kms
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:319,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:333,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:334,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:338,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:340,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:342,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 62
    argCount: 6
    argNames:
    - ctx
    - cstr
    - scheme_type
    - scheme_version
    - scheme_uri
    - kms_uri
    argTypes:
    - GF_CENCDecCtx*
    - GF_CENCDecStream*
    - u32
    - u32
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 260
    functionDepth: 6
    functionLinenumber: 260
    functionLinenumberEnd: 348
    functionName: cenc_dec_setup_isma
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_ismacryp_mpeg4ip_get_info
    - sscanf
    - gf_filter_pid_get_property
    - memcpy
    - gf_base64_decode
    - cenc_dec_get_gpac_kms
    - strnicmp
    - stricmp
    - gf_crc_32
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_setup_isma(GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr,
      u32 scheme_type, u32 scheme_version, const char *scheme_uri, const char *kms_uri)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:358,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:364,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:367,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:368,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:369,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:377,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 3
    argNames:
    - ctx
    - cstr
    - is_play
    argTypes:
    - GF_CENCDecCtx*
    - GF_CENCDecStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 350
    functionDepth: 2
    functionLinenumber: 350
    functionLinenumberEnd: 383
    functionName: cenc_dec_access_isma
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - memcpy
    - gf_crypt_init
    - memset
    - gf_crypt_close
    - gf_crypt_open
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_access_isma(GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr,
      Bool is_play)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:397,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:398,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:400,1
    - Dst: gf_filter_pck_set_crypt_flags
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:401,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:402,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:406,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:408,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:411,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:412,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:419,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:437,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:438,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:439,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:440,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:441,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:442,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:447,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:454,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:457,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:459,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:491,1
    - Dst: gf_filter_pck_set_crypt_flags
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:492,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:494,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 81
    argCount: 3
    argNames:
    - ctx
    - cstr
    - in_pck
    argTypes:
    - GF_CENCDecCtx*
    - GF_CENCDecStream*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 385
    functionDepth: 6
    functionLinenumber: 385
    functionLinenumberEnd: 496
    functionName: cenc_dec_process_isma
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_new_ref
    - gf_bs_new
    - gf_crypt_set_IV
    - gf_filter_pck_get_data
    - gf_filter_pck_set_crypt_flags
    - gf_filter_pck_merge_properties
    - gf_bs_read_long_int
    - gf_filter_pck_get_crypt_flags
    - memcpy
    - gf_bs_del
    - gf_bs_write_data
    - gf_bs_read_int
    - gf_bs_write_u64
    - gf_bs_reassign_buffer
    - gf_bs_write_u8
    - gf_crypt_decrypt
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_process_isma(GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr,
      GF_FilterPacket *in_pck)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:511,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 6
    argNames:
    - ctx
    - cstr
    - scheme_type
    - scheme_version
    - scheme_uri
    - kms_uri
    argTypes:
    - GF_CENCDecCtx*
    - GF_CENCDecStream*
    - u32
    - u32
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 522
      start: 500
    functionDepth: 0
    functionLinenumber: 500
    functionLinenumberEnd: 522
    functionName: cenc_dec_setup_oma
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_setup_oma(GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr,
      u32 scheme_type, u32 scheme_version, const char *scheme_uri, const char *kms_uri)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:537,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:570,1
    - Dst: strcat
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:571,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:575,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:577,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:588,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:589,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:600,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:603,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:616,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:616,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:620,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:641,1
    - Dst: strcat
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:642,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:645,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:648,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 105
    argCount: 2
    argNames:
    - ctx
    - cstr
    argTypes:
    - GF_CENCDecCtx*
    - GF_CENCDecStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 526
    functionDepth: 1
    functionLinenumber: 526
    functionLinenumberEnd: 656
    functionName: cenc_dec_load_keys
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - strcat
    - sscanf
    - memcmp
    - memcpy
    - GF_LOG
    - sprintf
    - memset
    - strncmp
    - stricmp
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_load_keys(GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:666,1
    - Dst: strcat
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:669,1
    - Dst: strcat
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:670,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:673,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:673,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 3
    argNames:
    - data
    - output
    - osize
    argTypes:
    - u8*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 676
      start: 658
    functionDepth: 2
    functionLinenumber: 658
    functionLinenumberEnd: 676
    functionName: rfmt_dec_b64
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_base64_decode
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rfmt_dec_b64(u8 *data, u8 *output, u32 osize)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:695,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:700,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:703,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:708,1
    - Dst: strstr
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:719,1
    - Dst: strstr
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:720,1
    - Dst: strchr
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:733,1
    - Dst: strchr
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:734,1
    - Dst: rfmt_dec_b64
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:743,1
    - Dst: rfmt_dec_b64
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:745,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:748,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:749,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:750,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:751,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:760,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:761,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:763,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:768,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:770,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:777,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:780,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 101
    argCount: 2
    argNames:
    - usr_cbk
    - par
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 787
      start: 679
    functionDepth: 3
    functionLinenumber: 679
    functionLinenumberEnd: 787
    functionName: ck_http_io
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - memcpy
    - rfmt_dec_b64
    - strstr
    - memset
    - gf_dm_sess_del
    - strchr
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void ck_http_io(void *usr_cbk, GF_NETIO_Parameter *par)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_base64_encode
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:795,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:806,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:808,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:809,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:810,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:812,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:813,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:817,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:819,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:822,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 4
    argNames:
    - ctx
    - cstr
    - ck_url
    - ck_kid
    argTypes:
    - GF_CENCDecCtx*
    - GF_CENCDecStream*
    - char*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 826
      start: 791
    functionDepth: 1
    functionLinenumber: 791
    functionLinenumberEnd: 826
    functionName: cenc_dec_set_clearkey
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_get_download_manager
    - gf_dm_sess_process
    - gf_base64_encode
    - gf_dm_sess_new
    - gf_dynstrcat
    - gf_crc_32
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_set_clearkey(GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr,
      char *ck_url, u8 *ck_kid)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:837,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:844,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:849,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:855,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:859,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:860,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:862,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:865,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:868,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:870,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:875,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:878,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 51
    argCount: 2
    argNames:
    - usr_cbk
    - par
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 882
      start: 829
    functionDepth: 1
    functionLinenumber: 829
    functionLinenumberEnd: 882
    functionName: hls_kms_io
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memcpy
    - GF_LOG
    - memset
    - gf_dm_sess_del
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void hls_kms_io(void *usr_cbk, GF_NETIO_Parameter *par)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:891,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:893,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:895,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:899,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:905,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:909,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:915,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:918,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:922,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:923,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:925,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:934,1
    - Dst: gf_url_is_local
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:939,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:940,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:946,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:950,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:952,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:955,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:962,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:964,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:966,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:966,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:970,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:977,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:978,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:980,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 75
    argCount: 4
    argNames:
    - ctx
    - cstr
    - key_url
    - key_IV
    argTypes:
    - GF_CENCDecCtx*
    - GF_CENCDecStream*
    - char*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 984
      start: 885
    functionDepth: 5
    functionLinenumber: 885
    functionLinenumberEnd: 984
    functionName: cenc_dec_set_hls_key
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_dm_sess_process
    - memset
    - gf_fopen
    - gf_realloc
    - gf_strdup
    - gf_crypt_set_IV
    - memcpy
    - strncmp
    - gf_dm_sess_new
    - sscanf
    - GF_LOG
    - gf_fread
    - gf_url_is_local
    - gf_error_to_string
    - gf_malloc
    - strlen
    - gf_fclose
    - gf_filter_get_download_manager
    - strcmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_set_hls_key(GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr,
      char *key_url, u8 *key_IV)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:993,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:994,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1011,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1012,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1014,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1016,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1018,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1022,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1031,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1037,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1040,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1041,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1042,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1046,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1047,1
    - Dst: gf_bin128_parse
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1050,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1054,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1055,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1056,1
    - Dst: memmove
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1058,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1059,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1062,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1069,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1070,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1072,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1073,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1077,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1084,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1087,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1090,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1105,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1106,1
    - Dst: memmove
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1109,1
    - Dst: gf_bin128_parse
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1119,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1123,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1128,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1130,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1133,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1136,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1137,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1139,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1140,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1141,1
    - Dst: memmove
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1143,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1144,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1145,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1150,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1154,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1160,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1162,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1163,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1164,1
    - Dst: cenc_dec_load_keys
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1167,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 139
    argCount: 5
    argNames:
    - ctx
    - cstr
    - pssh_prop
    - is_pck_pssh
    - cinfo_prop
    argTypes:
    - GF_CENCDecCtx*
    - GF_CENCDecStream*
    - GF_PropertyValue*
    - Bool
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1171
      start: 988
    functionDepth: 7
    functionLinenumber: 988
    functionLinenumberEnd: 1171
    functionName: cenc_dec_load_pssh
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - memcmp
    - memset
    - gf_bs_available
    - gf_bin128_parse
    - gf_realloc
    - gf_bs_read_u32
    - memcpy
    - cenc_dec_load_keys
    - sprintf
    - strncmp
    - gf_bs_skip_bytes
    - memmove
    - GF_LOG
    - gf_bs_get_position
    - gf_crypt_close
    - gf_crypt_open
    - gf_bs_reassign_buffer
    - gf_malloc
    - gf_crypt_init
    - strcmp
    - gf_crypt_decrypt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_load_pssh(GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr,
      const GF_PropertyValue *pssh_prop, Bool is_pck_pssh, const GF_PropertyValue
      *cinfo_prop)
  - BBCount: 48
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1195,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1195,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1198,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1200,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1203,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1209,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1211,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1220,1
    - Dst: cenc_dec_load_keys
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1224,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1234,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1237,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1237,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1242,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1245,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1245,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1250,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1269,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1270,1
    - Dst: cenc_dec_load_pssh
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1273,1
    - Dst: gf_crypt_info_load
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1282,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1284,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1293,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1294,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1296,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1311,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1312,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1314,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1315,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1316,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1321,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1322,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1323,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1323,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1329,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1330,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1331,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1331,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1337,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1345,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1346,1
    - Dst: gf_crypt_info_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1350,1
    - Dst: cenc_dec_load_keys
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1352,1
    - Dst: gf_crypt_info_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1355,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1362,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1363,1
    - Dst: cenc_dec_set_hls_key
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1366,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1370,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1371,1
    - Dst: cenc_dec_set_clearkey
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1374,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1376,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1376,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1381,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1384,1
    CyclomaticComplexity: 77
    EdgeCount: 77
    ICount: 174
    argCount: 6
    argNames:
    - ctx
    - cstr
    - scheme_type
    - scheme_version
    - scheme_uri
    - kms_uri
    argTypes:
    - GF_CENCDecCtx*
    - GF_CENCDecStream*
    - u32
    - u32
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1386
      start: 1173
    functionDepth: 8
    functionLinenumber: 1173
    functionLinenumberEnd: 1386
    functionName: cenc_dec_setup_cenc
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - cenc_dec_load_pssh
    - gf_4cc_to_str
    - gf_list_get
    - gf_filter_pid_get_property
    - GF_LOG
    - cenc_dec_load_keys
    - gf_crypt_info_load
    - memcpy
    - cenc_dec_set_hls_key
    - cenc_dec_set_clearkey
    - gf_list_count
    - memset
    - strcmp
    - gf_error_to_string
    - gf_crypt_info_del
    - gf_crc_32
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_setup_cenc(GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr,
      u32 scheme_type, u32 scheme_version, const char *scheme_uri, const char *kms_uri)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1397,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1404,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1408,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1409,1
    - Dst: cenc_dec_set_hls_key
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1412,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1415,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1416,1
    - Dst: cenc_dec_setup_cenc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1418,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1421,1
    - Dst: cenc_dec_push_iv
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1425,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1432,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1435,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 41
    argCount: 6
    argNames:
    - ctx
    - cstr
    - scheme_type
    - scheme_version
    - scheme_uri
    - kms_uri
    argTypes:
    - GF_CENCDecCtx*
    - GF_CENCDecStream*
    - u32
    - u32
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1437
      start: 1388
    functionDepth: 9
    functionLinenumber: 1388
    functionLinenumberEnd: 1437
    functionName: cenc_dec_hls_saes
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - cenc_dec_push_iv
    - memcpy
    - GF_LOG
    - cenc_dec_set_hls_key
    - cenc_dec_setup_cenc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_hls_saes(GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr,
      u32 scheme_type, u32 scheme_version, const char *scheme_uri, const char *kms_uri)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1459,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1460,1
    - Dst: gf_crypt_info_load
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1464,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1466,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1475,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1476,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1478,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1490,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1491,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1493,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1494,1
    - Dst: gf_crypt_info_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1497,1
    - Dst: gf_crypt_info_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1501,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1503,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 54
    argCount: 6
    argNames:
    - ctx
    - cstr
    - scheme_type
    - scheme_version
    - scheme_uri
    - kms_uri
    argTypes:
    - GF_CENCDecCtx*
    - GF_CENCDecStream*
    - u32
    - u32
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1505
      start: 1440
    functionDepth: 3
    functionLinenumber: 1440
    functionLinenumberEnd: 1505
    functionName: cenc_dec_setup_adobe
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_get_property
    - gf_crypt_info_load
    - GF_LOG
    - memcpy
    - gf_list_count
    - gf_crypt_info_del
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_setup_adobe(GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr,
      u32 scheme_type, u32 scheme_version, const char *scheme_uri, const char *kms_uri)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1519,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1521,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1523,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1532,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 3
    argNames:
    - ctx
    - cstr
    - is_play
    argTypes:
    - GF_CENCDecCtx*
    - GF_CENCDecStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1539
      start: 1507
    functionDepth: 2
    functionLinenumber: 1507
    functionLinenumberEnd: 1539
    functionName: cenc_dec_access_cenc
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_crypt_close
    - gf_crypt_open
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_access_cenc(GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr,
      Bool is_play)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1546,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1548,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1556,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 3
    argNames:
    - ctx
    - cstr
    - is_play
    argTypes:
    - GF_CENCDecCtx*
    - GF_CENCDecStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1562
      start: 1541
    functionDepth: 2
    functionLinenumber: 1541
    functionLinenumberEnd: 1562
    functionName: cenc_dec_access_adobe
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_crypt_close
    - gf_crypt_open
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_access_adobe(GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr,
      Bool is_play)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1570,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1572,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1574,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1574,1
    - Dst: memmove
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1583,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1585,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1589,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1591,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1594,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1597,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1597,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 33
    argCount: 6
    argNames:
    - cstr
    - key_idx
    - IV
    - iv_size
    - const_iv_size
    - const_iv
    argTypes:
    - GF_CENCDecStream*
    - u32
    - u8*
    - u32
    - u32
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1602
      start: 1564
    functionDepth: 2
    functionLinenumber: 1564
    functionLinenumberEnd: 1602
    functionName: cenc_dec_push_iv
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 1
    functionsReached:
    - memmove
    - gf_crypt_set_IV
    - memcpy
    - GF_LOG
    - gf_crypt_init
    - gf_error_to_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_push_iv(GF_CENCDecStream *cstr, u32 key_idx, u8 *IV,
      u32 iv_size, u32 const_iv_size, const u8 *const_iv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1608,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1611,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1614,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1620,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 5
    argNames:
    - ctx
    - crypt
    - valid_key
    - data
    - size
    argTypes:
    - GF_CENCDecCtx*
    - GF_Crypt*
    - Bool
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1622
      start: 1604
    functionDepth: 1
    functionLinenumber: 1604
    functionLinenumberEnd: 1622
    functionName: cenc_decrypt_block
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_crypt_decrypt
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE cenc_decrypt_block(GF_CENCDecCtx *ctx, GF_Crypt *crypt, Bool
      valid_key, u8 *data, u32 size)
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1640,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1644,1
    - Dst: cenc_dec_load_pssh
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1646,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1648,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1650,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1651,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1653,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1654,1
    - Dst: gf_filter_pck_set_crypt_flags
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1655,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1656,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1661,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1665,1
    - Dst: gf_filter_pck_new_clone
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1669,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1680,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1682,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1686,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1690,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1693,1
    - Dst: gf_cenc_key_info_get_iv_size
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1697,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1699,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1704,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1705,1
    - Dst: cenc_dec_push_iv
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1707,1
    - Dst: gf_cenc_key_info_get_iv_size
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1715,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1717,1
    - Dst: cenc_dec_push_iv
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1718,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1738,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1742,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1743,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1749,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1752,1
    - Dst: cenc_dec_push_iv
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1758,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1769,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1772,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1773,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1778,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1793,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1797,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1798,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1803,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1806,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1810,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1811,1
    - Dst: gf_cenc_key_info_get_iv_size
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1814,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1819,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1826,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1827,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1835,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1837,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1840,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1842,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1845,1
    - Dst: cenc_decrypt_block
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1871,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1875,1
    - Dst: cenc_decrypt_block
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1893,1
    - Dst: cenc_decrypt_block
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1911,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1916,1
    - Dst: gf_filter_pck_set_crypt_flags
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1917,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1919,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1923,1
    CyclomaticComplexity: 79
    EdgeCount: 79
    ICount: 230
    argCount: 3
    argNames:
    - ctx
    - cstr
    - in_pck
    argTypes:
    - GF_CENCDecCtx*
    - GF_CENCDecStream*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1926
      start: 1623
    functionDepth: 8
    functionLinenumber: 1623
    functionLinenumberEnd: 1926
    functionName: cenc_dec_process_cenc
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_filter_pck_new_ref
    - gf_filter_pck_new_clone
    - gf_filter_pck_set_crypt_flags
    - memset
    - gf_bs_read_u16
    - gf_bs_available
    - cenc_dec_load_pssh
    - gf_filter_pck_set_property
    - gf_bs_read_u32
    - gf_assert
    - gf_crypt_set_IV
    - memcpy
    - gf_filter_pck_discard
    - gf_filter_pck_get_property
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_filter_pck_get_crypt_flags
    - cenc_decrypt_block
    - gf_bs_reassign_buffer
    - cenc_dec_push_iv
    - gf_filter_pck_merge_properties
    - gf_cenc_key_info_get_iv_size
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_process_cenc(GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr,
      GF_FilterPacket *in_pck)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1935,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1938,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1940,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1941,1
    - Dst: gf_filter_pck_set_crypt_flags
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1942,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1943,1
    - Dst: gf_filter_pck_new_clone
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1948,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1955,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1959,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1964,1
    - Dst: cenc_dec_push_iv
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1967,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1969,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1974,1
    - Dst: cenc_dec_push_iv
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1977,1
    - Dst: gf_media_nalu_emulation_bytes_remove_count
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2022,1
    - Dst: gf_media_nalu_remove_emulation_bytes
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2024,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2033,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2041,1
    - Dst: memmove
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2057,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2069,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2080,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2086,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2096,1
    - Dst: gf_filter_pck_set_crypt_flags
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2097,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2099,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2103,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 132
    argCount: 3
    argNames:
    - ctx
    - cstr
    - in_pck
    argTypes:
    - GF_CENCDecCtx*
    - GF_CENCDecStream*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2106
      start: 1928
    functionDepth: 3
    functionLinenumber: 1928
    functionLinenumberEnd: 2106
    functionName: cenc_dec_process_hls_saes
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_property
    - memmove
    - gf_filter_pck_new_ref
    - cenc_dec_push_iv
    - gf_crypt_set_IV
    - gf_filter_pck_new_clone
    - gf_filter_pck_get_data
    - gf_filter_pck_set_crypt_flags
    - gf_filter_pck_merge_properties
    - GF_LOG
    - memcpy
    - gf_filter_pck_discard
    - gf_media_nalu_remove_emulation_bytes
    - gf_filter_pck_truncate
    - gf_media_nalu_emulation_bytes_remove_count
    - gf_crypt_decrypt
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_process_hls_saes(GF_CENCDecCtx *ctx, GF_CENCDecStream
      *cstr, GF_FilterPacket *in_pck)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2121,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2122,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2125,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2134,1
    - Dst: memmove
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2137,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2139,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2141,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2141,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2146,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2148,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2148,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2155,1
    - Dst: memmove
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2162,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2163,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2164,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2166,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 45
    argCount: 3
    argNames:
    - ctx
    - cstr
    - in_pck
    argTypes:
    - GF_CENCDecCtx*
    - GF_CENCDecStream*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2168
      start: 2108
    functionDepth: 2
    functionLinenumber: 2108
    functionLinenumberEnd: 2168
    functionName: cenc_dec_process_adobe
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - memmove
    - gf_crypt_set_IV
    - gf_filter_pck_get_data
    - memcpy
    - GF_LOG
    - gf_crypt_init
    - gf_filter_pck_merge_properties
    - gf_error_to_string
    - gf_filter_pck_truncate
    - gf_crypt_decrypt
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_process_adobe(GF_CENCDecCtx *ctx, GF_CENCDecStream
      *cstr, GF_FilterPacket *in_pck)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2175,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2177,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2179,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2180,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2181,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2183,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2185,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2187,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 1
    argNames:
    - cstr
    argTypes:
    - GF_CENCDecStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2188
      start: 2170
    functionDepth: 1
    functionLinenumber: 2170
    functionLinenumberEnd: 2188
    functionName: cenc_dec_stream_del
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_crypt_close
    - gf_dm_sess_del
    linkageType: ''
    returnType: void
    signature: void cenc_dec_stream_del(GF_CENCDecStream *cstr)
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2200,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2203,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2207,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2210,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2212,1
    - Dst: cenc_dec_stream_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2213,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2217,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2220,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2222,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2224,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2227,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2228,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2229,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2231,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2235,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2237,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2239,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2244,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2245,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2246,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2250,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2259,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2266,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2267,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2272,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2274,1
    - Dst: cenc_dec_setup_isma
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2291,1
    - Dst: cenc_dec_setup_oma
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2295,1
    - Dst: cenc_dec_setup_cenc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2305,1
    - Dst: cenc_dec_setup_adobe
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2308,1
    - Dst: cenc_dec_hls_saes
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2311,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2314,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2314,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2318,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2318,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2323,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2325,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2327,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2327,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2328,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2331,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2332,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2333,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2334,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2335,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2336,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2337,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2338,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2339,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2340,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2342,1
    - Dst: PROP_4CC
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2342,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2346,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 144
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2362
      start: 2190
    functionDepth: 10
    functionLinenumber: 2190
    functionLinenumberEnd: 2362
    functionName: cenc_dec_configure_pid
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_filter_pid_check_caps
    - gf_list_count
    - memset
    - cenc_dec_setup_cenc
    - gf_filter_pid_set_udta
    - gf_filter_pid_new
    - gf_realloc
    - gf_4cc_to_str
    - gf_list_get
    - cenc_dec_hls_saes
    - PROP_4CC
    - gf_list_add
    - cenc_dec_setup_isma
    - gf_filter_get_udta
    - cenc_dec_setup_adobe
    - gf_filter_pid_copy_properties
    - GF_LOG
    - gf_list_del_item
    - gf_crypt_open
    - cenc_dec_setup_oma
    - gf_filter_pid_set_property
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - cenc_dec_stream_del
    - gf_filter_pid_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2370,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2374,1
    - Dst: cenc_dec_access_cenc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2382,1
    - Dst: cenc_dec_access_adobe
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2384,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2386,1
    - Dst: cenc_dec_access_isma
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2389,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2398
      start: 2365
    functionDepth: 3
    functionLinenumber: 2365
    functionLinenumberEnd: 2398
    functionName: cenc_dec_process_event
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - cenc_dec_access_cenc
    - cenc_dec_access_adobe
    - GF_LOG
    - gf_filter_pid_get_udta
    - cenc_dec_access_isma
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool cenc_dec_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2401,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2402,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2410,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2411,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2413,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2415,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2421,1
    - Dst: cenc_dec_process_hls_saes
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2426,1
    - Dst: cenc_dec_process_cenc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2428,1
    - Dst: cenc_dec_process_adobe
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2432,1
    - Dst: cenc_dec_process_isma
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2434,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2436,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 37
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2441
      start: 2399
    functionDepth: 9
    functionLinenumber: 2399
    functionLinenumberEnd: 2441
    functionName: cenc_dec_process
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_drop_packet
    - gf_filter_pid_set_eos
    - cenc_dec_process_adobe
    - gf_list_count
    - cenc_dec_process_cenc
    - cenc_dec_process_hls_saes
    - cenc_dec_process_isma
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_process(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2445,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2450,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2454,1
    - Dst: gf_crypt_info_load
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2459,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2461,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2465,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2467
      start: 2443
    functionDepth: 3
    functionLinenumber: 2443
    functionLinenumberEnd: 2467
    functionName: cenc_dec_initialize
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_bs_new
    - GF_LOG
    - gf_crypt_info_load
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_initialize(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2471,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2473,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2474,1
    - Dst: cenc_dec_stream_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2475,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2477,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2479,1
    - Dst: gf_crypt_info_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2480,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2481
      start: 2469
    functionDepth: 3
    functionLinenumber: 2469
    functionLinenumberEnd: 2481
    functionName: cenc_dec_finalize
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_back
    - gf_bs_del
    - gf_list_count
    - cenc_dec_stream_del
    - gf_crypt_info_del
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void cenc_dec_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2505
      start: 2504
    functionDepth: 0
    functionLinenumber: 2504
    functionLinenumberEnd: 2505
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2558
      start: 2551
    functionDepth: 0
    functionLinenumber: 2551
    functionLinenumberEnd: 2558
    functionName: cdcrypt_register
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *cdcrypt_register(GF_FilterSession *session)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:32,1
    - Dst: rtpin_rtsp_describe_process
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:33,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:34,1
    - Dst: rtpin_rtsp_setup_process
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:35,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:36,1
    - Dst: rtpin_rtsp_teardown_process
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:37,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:38,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:38,1
    - Dst: rtpin_rtsp_usercom_process
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:39,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 3
    argNames:
    - sess
    - com
    - e
    argTypes:
    - GF_RTPInRTSP*
    - GF_RTSPCommand*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 41
    functionName: rtpin_rtsp_process_response
    functionSourceFile: /src/gpac/src/filters/in_rtp_rtsp.c
    functionUses: 0
    functionsReached:
    - rtpin_rtsp_describe_process
    - strcmp
    - rtpin_rtsp_setup_process
    - rtpin_rtsp_usercom_process
    - rtpin_rtsp_teardown_process
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpin_rtsp_process_response(GF_RTPInRTSP *sess, GF_RTSPCommand
      *com, GF_Err e)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:49,1
    - Dst: gf_rtsp_session_read
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:54,1
    - Dst: gf_rtsp_get_response
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:61,1
    - Dst: rtpin_rtsp_process_response
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:63,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:66,1
    - Dst: gf_rtsp_command_del
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:67,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:68,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:72,1
    - Dst: gf_rtsp_command_del
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:73,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:77,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:81,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:83,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:87,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:91,1
    - Dst: gf_rtsp_session_reset
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:92,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:94,1
    - Dst: rtpin_rtsp_process_response
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:97,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:98,1
    - Dst: gf_rtsp_command_del
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:99,1
    - Dst: gf_rtsp_reset_aggregation
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:102,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:106,1
    - Dst: gf_rtsp_session_needs_ssl
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:111,1
    - Dst: gf_rtsp_set_ssl_ctx
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:112,1
    - Dst: gf_dm_ssl_init
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:112,1
    - Dst: gf_rtsp_get_session_state
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:124,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:129,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:129,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:130,1
    - Dst: gf_rtsp_command_del
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:131,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:148,1
    - Dst: rtpin_rtsp_describe_preprocess
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:150,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:157,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:158,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:159,1
    - Dst: rtpin_rtsp_usercom_preprocess
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:161,1
    - Dst: gf_rtsp_send_command
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:171,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:177,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:177,1
    - Dst: rtpin_rtsp_process_response
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:178,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:181,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:194,1
    - Dst: gf_rtsp_command_del
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:195,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 122
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTPInRTSP*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 43
    functionDepth: 6
    functionLinenumber: 43
    functionLinenumberEnd: 199
    functionName: rtpin_rtsp_process_commands
    functionSourceFile: /src/gpac/src/filters/in_rtp_rtsp.c
    functionUses: 3
    functionsReached:
    - gf_rtsp_reset_aggregation
    - gf_rtsp_session_read
    - gf_rtsp_session_needs_ssl
    - rtpin_rtsp_usercom_preprocess
    - gf_rtsp_session_reset
    - gf_sys_clock
    - gf_list_get
    - gf_rtsp_set_ssl_ctx
    - gf_rtsp_get_session_state
    - rtpin_rtsp_process_response
    - GF_LOG
    - gf_dm_ssl_init
    - gf_rtsp_get_response
    - gf_error_to_string
    - gf_filter_setup_failure
    - rtpin_rtsp_describe_preprocess
    - gf_rtsp_send_command
    - gf_opts_get_int
    - strcmp
    - gf_rtsp_command_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void rtpin_rtsp_process_commands(GF_RTPInRTSP *sess)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:208,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:212,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:213,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:219,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 20
    argCount: 5
    argNames:
    - rtp
    - opid
    - ES_ID
    - es_control
    - remove_stream
    argTypes:
    - GF_RTPIn*
    - GF_FilterPid*
    - u32
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 203
    functionDepth: 2
    functionLinenumber: 203
    functionLinenumberEnd: 221
    functionName: rtpin_find_stream
    functionSourceFile: /src/gpac/src/filters/in_rtp_rtsp.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    - strcmp
    - gf_list_rem
    - strstr
    linkageType: ''
    returnType: GF_RTPInStream
    signature: GF_RTPInStream *rtpin_find_stream(GF_RTPIn *rtp, GF_FilterPid *opid,
      u32 ES_ID, char *es_control, Bool remove_stream)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:228,1
    - Dst: gf_rtsp_is_my_session
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:231,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - rtp
    - control
    argTypes:
    - GF_RTPIn*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 233
    functionName: rtpin_rtsp_check
    functionSourceFile: /src/gpac/src/filters/in_rtp_rtsp.c
    functionUses: 0
    functionsReached:
    - strcmp
    - gf_rtsp_is_my_session
    linkageType: ''
    returnType: GF_RTPInRTSP
    signature: GF_RTPInRTSP *rtpin_rtsp_check(GF_RTPIn *rtp, char *control)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:244,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:249,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:250,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:252,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:254,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:254,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:254,1
    - Dst: gf_rtsp_session_new
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:258,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:259,1
    - Dst: gf_rtsp_session_set_netcap_id
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:262,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:262,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:264,1
    - Dst: gf_rtsp_set_buffer_size
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:270,1
    - Dst: gf_rtsp_set_buffer_size
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:272,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:274,1
    - Dst: gf_rtsp_response_new
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:275,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 2
    argNames:
    - rtp
    - session_control
    argTypes:
    - GF_RTPIn*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 235
    functionDepth: 4
    functionLinenumber: 235
    functionLinenumberEnd: 279
    functionName: rtpin_rtsp_new
    functionSourceFile: /src/gpac/src/filters/in_rtp_rtsp.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_list_new
    - gf_rtsp_response_new
    - GF_SAFEALLOC
    - GF_LOG
    - gf_filter_get_netcap_id
    - gf_file_ext_start
    - strnicmp
    - gf_rtsp_set_buffer_size
    - gf_rtsp_session_new
    - strchr
    - gf_rtsp_session_set_netcap_id
    linkageType: ''
    returnType: GF_RTPInRTSP
    signature: GF_RTPInRTSP *rtpin_rtsp_new(GF_RTPIn *rtp, char *session_control)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: rtpin_rtsp_check
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:285,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:297,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:304,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:305,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:306,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:307,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:308,1
    - Dst: rtpin_rtsp_check
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:312,1
    - Dst: rtpin_rtsp_new
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:314,1
    - Dst: rtpin_rtsp_check
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:321,1
    - Dst: rtpin_rtsp_check
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:322,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:324,1
    - Dst: rtpin_rtsp_new
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:325,1
    - Dst: rtpin_rtsp_new
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:327,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:332,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:333,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:333,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:334,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:335,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:336,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:350,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:351,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:357,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 54
    argCount: 3
    argNames:
    - rtp
    - stream
    - session_control
    argTypes:
    - GF_RTPIn*
    - GF_RTPInStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 281
    functionDepth: 5
    functionLinenumber: 281
    functionLinenumberEnd: 359
    functionName: rtpin_add_stream
    functionSourceFile: /src/gpac/src/filters/in_rtp_rtsp.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_strdup
    - GF_LOG
    - strstr
    - rtpin_rtsp_check
    - strnicmp
    - gf_list_add
    - rtpin_rtsp_new
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpin_add_stream(GF_RTPIn *rtp, GF_RTPInStream *stream, char
      *session_control)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:366,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:368,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - rtp
    - stream
    argTypes:
    - GF_RTPIn*
    - GF_RTPInStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 362
    functionDepth: 2
    functionLinenumber: 362
    functionLinenumberEnd: 372
    functionName: rtpin_remove_stream
    functionSourceFile: /src/gpac/src/filters/in_rtp_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void rtpin_remove_stream(GF_RTPIn *rtp, GF_RTPInStream *stream)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:379,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:380,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:381,1
    - Dst: gf_rtsp_command_del
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:388,1
    - Dst: gf_rtsp_session_reset
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:393,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - sess
    - e
    argTypes:
    - GF_RTPInRTSP*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 374
    functionDepth: 3
    functionLinenumber: 374
    functionLinenumberEnd: 395
    functionName: rtpin_rtsp_reset
    functionSourceFile: /src/gpac/src/filters/in_rtp_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_count
    - gf_rtsp_session_reset
    - gf_rtsp_command_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void rtpin_rtsp_reset(GF_RTPInRTSP *sess, GF_Err e)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: rtpin_rtsp_reset
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:401,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:402,1
    - Dst: gf_rtsp_response_del
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:403,1
    - Dst: gf_rtsp_session_del
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:404,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:405,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:406,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:407,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:408,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTPInRTSP*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 398
    functionDepth: 4
    functionLinenumber: 398
    functionLinenumberEnd: 409
    functionName: rtpin_rtsp_del
    functionSourceFile: /src/gpac/src/filters/in_rtp_rtsp.c
    functionUses: 1
    functionsReached:
    - gf_rtsp_response_del
    - gf_free
    - gf_rtsp_session_del
    - rtpin_rtsp_reset
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void rtpin_rtsp_del(GF_RTPInRTSP *sess)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/filters/out_route.c:284,1
    - Dst: gf_sk_setup_multicast
      Src: /src/gpac/src/filters/out_route.c:285,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:287,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/filters/out_route.c:290,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:292,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 4
    argNames:
    - ctx
    - sock
    - dst_ip
    - dst_port
    argTypes:
    - GF_ROUTEOutCtx*
    - GF_Socket*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 281
    functionDepth: 1
    functionLinenumber: 281
    functionLinenumberEnd: 296
    functionName: routemx_setup_socket
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_sk_setup_multicast
    - GF_LOG
    - gf_sk_bind
    - gf_sk_is_multicast_address
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err routemx_setup_socket(GF_ROUTEOutCtx *ctx, GF_Socket *sock, const
      char *dst_ip, u32 dst_port)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_route.c:302,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:305,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/filters/out_route.c:315,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/out_route.c:315,1
    - Dst: routemx_setup_socket
      Src: /src/gpac/src/filters/out_route.c:317,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_route.c:319,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:328,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:329,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 35
    argCount: 5
    argNames:
    - filter
    - ctx
    - ip
    - port
    - e
    argTypes:
    - GF_Filter*
    - GF_ROUTEOutCtx*
    - char*
    - u32
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 298
    functionDepth: 3
    functionLinenumber: 298
    functionLinenumberEnd: 331
    functionName: route_create_lct_channel
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_free
    - routemx_setup_socket
    - gf_strdup
    - GF_SAFEALLOC
    - gf_sk_del
    - gf_filter_get_netcap_id
    - gf_sk_new_ex
    linkageType: ''
    returnType: ROUTELCT
    signature: ROUTELCT *route_create_lct_channel(GF_Filter *filter, GF_ROUTEOutCtx
      *ctx, const char *ip, u32 port, GF_Err *e)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_route.c:338,1
    - Dst: route_create_lct_channel
      Src: /src/gpac/src/filters/out_route.c:341,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:343,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_route.c:351,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_route.c:353,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_route.c:356,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:361,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:364,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:365,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_route.c:368,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:371,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:377,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:381,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:382,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:388,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:389,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_route.c:390,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_route.c:391,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:392,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 58
    argCount: 7
    argNames:
    - filter
    - ctx
    - service_id
    - service_name
    - ip
    - port
    - e
    argTypes:
    - GF_Filter*
    - GF_ROUTEOutCtx*
    - u32
    - char*
    - char*
    - u32
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 333
    functionDepth: 4
    functionLinenumber: 333
    functionLinenumberEnd: 394
    functionName: routeout_create_service
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_strdup
    - route_create_lct_channel
    - GF_SAFEALLOC
    - sprintf
    - gf_list_add
    - gf_list_del
    linkageType: ''
    returnType: ROUTEService
    signature: ROUTEService *routeout_create_service(GF_Filter *filter, GF_ROUTEOutCtx
      *ctx, u32 service_id, const char *service_name, const char *ip, u32 port, GF_Err
      *e)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/out_route.c:399,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/out_route.c:403,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:404,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_route.c:405,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:406,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:409,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:410,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:411,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:412,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:413,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:414,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_route.c:417,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:418,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 2
    argNames:
    - rpid
    - is_rem
    argTypes:
    - ROUTEPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 396
    functionDepth: 3
    functionLinenumber: 396
    functionLinenumberEnd: 419
    functionName: routeout_remove_pid
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sk_del
    - gf_list_del_item
    - gf_filter_pck_unref
    linkageType: ''
    returnType: void
    signature: void routeout_remove_pid(ROUTEPid *rpid, Bool is_rem)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:423,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_route.c:424,1
    - Dst: routeout_remove_pid
      Src: /src/gpac/src/filters/out_route.c:425,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_route.c:427,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:429,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_route.c:430,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_route.c:431,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:432,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:433,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_route.c:435,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:437,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:438,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:439,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:440,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:441,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:443,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:444,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:445,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:446,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:447,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:448,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:450,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:451,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:452,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:453,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 40
    argCount: 1
    argNames:
    - serv
    argTypes:
    - ROUTEService*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 454
      start: 421
    functionDepth: 4
    functionLinenumber: 421
    functionLinenumberEnd: 454
    functionName: routeout_delete_service
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_sk_del
    - routeout_remove_pid
    - gf_list_count
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void routeout_delete_service(ROUTEService *serv)
  - BBCount: 67
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_route.c:465,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/out_route.c:468,1
    - Dst: routeout_remove_pid
      Src: /src/gpac/src/filters/out_route.c:470,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/out_route.c:474,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:484,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:486,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:487,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:489,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_route.c:494,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:495,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:501,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:510,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:512,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:516,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:519,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:523,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:527,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:528,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:532,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:540,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:542,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:550,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:560,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_route.c:561,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:562,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:565,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:570,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:573,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/out_route.c:579,1
    - Dst: routeout_create_service
      Src: /src/gpac/src/filters/out_route.c:580,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/out_route.c:581,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:589,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_route.c:593,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_route.c:601,1
    - Dst: gf_filter_pid_ignore_blocking
      Src: /src/gpac/src/filters/out_route.c:602,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:604,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_route.c:610,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/out_route.c:611,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:617,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:624,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:635,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:639,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:641,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:642,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:644,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/out_route.c:645,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:650,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:664,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:667,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/out_route.c:670,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:674,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:678,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:680,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:683,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:698,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_route.c:700,1
    - Dst: gf_net_bump_ip_address
      Src: /src/gpac/src/filters/out_route.c:703,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:703,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:707,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:709,1
    - Dst: route_create_lct_channel
      Src: /src/gpac/src/filters/out_route.c:713,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:715,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_route.c:723,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:729,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/out_route.c:734,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_route.c:735,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_route.c:737,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/out_route.c:738,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_route.c:739,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:744,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_route.c:747,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/out_route.c:754,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/out_route.c:756,1
    CyclomaticComplexity: 96
    EdgeCount: 96
    ICount: 254
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 759
      start: 456
    functionDepth: 5
    functionLinenumber: 456
    functionLinenumberEnd: 759
    functionName: routeout_configure_pid
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_pid_get_info
    - GF_SAFEALLOC
    - gf_list_find
    - gf_filter_pid_check_caps
    - gf_list_count
    - gf_filter_pid_set_udta
    - strchr
    - gf_net_bump_ip_address
    - gf_sys_clock
    - gf_filter_pid_ignore_blocking
    - gf_list_get
    - GF_FEVT_INIT
    - gf_filter_release_property
    - gf_list_add
    - gf_filter_get_udta
    - GF_LOG
    - routeout_create_service
    - gf_filter_pid_init_play_event
    - strstr
    - gf_filter_pid_send_event
    - gf_timestamp_rescale
    - gf_filter_pid_get_property
    - route_create_lct_channel
    - gf_filter_pid_set_framing_mode
    - gf_filter_abort
    - routeout_remove_pid
    - strcmp
    - GF_4CC
    - gf_filter_pid_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err routeout_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_route.c:767,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_route.c:772,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_route.c:775,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_route.c:780,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:785,1
    - Dst: gf_net_get_adapter_ip
      Src: /src/gpac/src/filters/out_route.c:791,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:794,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:799,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/out_route.c:808,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_route.c:810,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/out_route.c:811,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/out_route.c:813,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:819,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/out_route.c:828,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_route.c:830,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:832,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:833,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_route.c:835,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/filters/out_route.c:841,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:842,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/out_route.c:848,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_route.c:853,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/out_route.c:856,1
    - Dst: strlwr
      Src: /src/gpac/src/filters/out_route.c:858,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_route.c:860,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/out_route.c:863,1
    - Dst: gf_filter_is_alias
      Src: /src/gpac/src/filters/out_route.c:868,1
    - Dst: gf_filter_is_temporary
      Src: /src/gpac/src/filters/out_route.c:868,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_route.c:872,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/filters/out_route.c:875,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/out_route.c:875,1
    - Dst: routemx_setup_socket
      Src: /src/gpac/src/filters/out_route.c:876,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/filters/out_route.c:880,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/out_route.c:880,1
    - Dst: routemx_setup_socket
      Src: /src/gpac/src/filters/out_route.c:881,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_route.c:888,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_route.c:889,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/out_route.c:891,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:900,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 127
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 905
      start: 761
    functionDepth: 4
    functionLinenumber: 761
    functionLinenumberEnd: 905
    functionName: routeout_initialize
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_override_caps
    - gf_bs_new
    - gf_filter_is_temporary
    - gf_net_get_adapter_ip
    - atoi
    - strchr
    - gf_file_basename
    - gf_strdup
    - gf_list_new
    - routemx_setup_socket
    - strrchr
    - strlwr
    - gf_filter_is_alias
    - gf_filter_get_udta
    - GF_LOG
    - gf_filter_get_netcap_id
    - strncpy
    - strnicmp
    - gf_sk_new_ex
    - gf_malloc
    - gf_sys_clock_high_res
    - PROP_NAME
    - PROP_UINT
    - gf_sk_is_multicast_address
    - gf_file_ext_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err routeout_initialize(GF_Filter *filter)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_is_alias
      Src: /src/gpac/src/filters/out_route.c:911,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_route.c:914,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:916,1
    - Dst: routeout_delete_service
      Src: /src/gpac/src/filters/out_route.c:917,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_route.c:917,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_route.c:919,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_route.c:921,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_route.c:923,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:925,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:926,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:927,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:928,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:929,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:930,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/out_route.c:931,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 26
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 932
      start: 907
    functionDepth: 5
    functionLinenumber: 907
    functionLinenumberEnd: 932
    functionName: routeout_finalize
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_sk_del
    - gf_bs_del
    - gf_list_count
    - routeout_delete_service
    - gf_filter_is_alias
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void routeout_finalize(GF_Filter *filter)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:939,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:941,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_route.c:942,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_route.c:944,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:947,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_route.c:948,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:949,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:953,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 2
    argNames:
    - serv
    - url
    argTypes:
    - ROUTEService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 954
      start: 934
    functionDepth: 0
    functionLinenumber: 934
    functionLinenumberEnd: 954
    functionName: routeout_strip_base
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - strncmp
    - gf_strdup
    - strchr
    - strlen
    linkageType: ''
    returnType: char
    signature: char *routeout_strip_base(ROUTEService *serv, char *url)
  - BBCount: 53
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:966,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:970,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_route.c:981,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_route.c:984,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_route.c:988,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/out_route.c:989,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:992,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_route.c:993,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_route.c:994,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_route.c:1003,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1004,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1005,1
    - Dst: routeout_strip_base
      Src: /src/gpac/src/filters/out_route.c:1006,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_route.c:1008,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_route.c:1028,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_route.c:1032,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1036,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/out_route.c:1038,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:1042,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_route.c:1047,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1054,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:1056,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_route.c:1060,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:1065,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_route.c:1076,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/out_route.c:1077,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1079,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_route.c:1080,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_route.c:1081,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_route.c:1094,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1095,1
    - Dst: routeout_strip_base
      Src: /src/gpac/src/filters/out_route.c:1096,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_route.c:1103,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/out_route.c:1104,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1130,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_route.c:1131,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_route.c:1132,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_route.c:1136,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1137,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:1140,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:1142,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1147,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1148,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1151,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:1152,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:1154,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:1156,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_route.c:1157,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:1160,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_route.c:1162,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_route.c:1164,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1170,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1175,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1177,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:1178,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1181,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:1182,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:1185,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/out_route.c:1185,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:1185,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1186,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_route.c:1189,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_route.c:1194,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:1196,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_route.c:1216,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1223,1
    - Dst: routeout_update_stsid_bundle
      Src: /src/gpac/src/filters/out_route.c:1229,1
    CyclomaticComplexity: 76
    EdgeCount: 76
    ICount: 220
    argCount: 2
    argNames:
    - ctx
    - serv
    argTypes:
    - GF_ROUTEOutCtx*
    - ROUTEService*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1230
      start: 959
    functionDepth: 1
    functionLinenumber: 959
    functionLinenumberEnd: 1230
    functionName: routeout_check_service_updates
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_free
    - routeout_update_stsid_bundle
    - gf_list_count
    - atoi
    - strchr
    - gf_file_basename
    - gf_filter_pid_get_packet
    - gf_sys_clock
    - gf_list_get
    - gf_strdup
    - gf_assert
    - routeout_strip_base
    - snprintf
    - memcpy
    - sprintf
    - gf_dynstrcat
    - gf_crc_32
    - gf_filter_pck_get_property
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - GF_LOG
    - strstr
    - gf_malloc
    - strlen
    - gf_filter_pid_get_property
    - strcmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err routeout_check_service_updates(GF_ROUTEOutCtx *ctx, ROUTEService
      *serv)
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:1240,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:1245,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1260,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1262,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1265,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1269,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1270,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1272,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1274,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1276,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1277,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1279,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1281,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1282,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1284,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1286,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1288,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1289,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1293,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1294,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1295,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1296,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1297,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1298,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1301,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1303,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1305,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1307,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1308,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:1310,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/out_route.c:1312,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1318,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1322,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1323,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1324,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/out_route.c:1327,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:1330,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1333,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:1335,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_route.c:1336,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:1338,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1339,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1340,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1341,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1343,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1347,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1354,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1356,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1359,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1361,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1363,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1367,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1368,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1369,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1370,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1371,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1372,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1373,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1376,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1378,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1380,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1381,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1383,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:1386,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:1387,1
    - Dst: gf_sk_get_local_ip
      Src: /src/gpac/src/filters/out_route.c:1393,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_route.c:1394,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:1400,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1405,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1406,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1407,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1408,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1409,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1410,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1418,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1420,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1422,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1425,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1427,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1431,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1433,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1436,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_route.c:1439,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:1440,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:1441,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1443,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:1444,1
    - Dst: strcat
      Src: /src/gpac/src/filters/out_route.c:1456,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:1457,1
    - Dst: strcat
      Src: /src/gpac/src/filters/out_route.c:1458,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:1458,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1464,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1465,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1466,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1468,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1471,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1473,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1474,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1475,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1492,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1493,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1497,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1498,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1501,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1502,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1506,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_route.c:1507,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1512,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1516,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/out_route.c:1517,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1519,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1520,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1524,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1526,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1528,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1532,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:1536,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1539,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1540,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1541,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1542,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1545,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1548,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1551,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1555,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1556,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1560,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1564,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1566,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1571,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1574,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1576,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:1579,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1581,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:1583,1
    - Dst: gf_gz_compress_payload_ex
      Src: /src/gpac/src/filters/out_route.c:1586,1
    CyclomaticComplexity: 72
    EdgeCount: 72
    ICount: 280
    argCount: 3
    argNames:
    - ctx
    - serv
    - manifest_updated
    argTypes:
    - GF_ROUTEOutCtx*
    - ROUTEService*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1603
      start: 1234
    functionDepth: 2
    functionLinenumber: 1234
    functionLinenumberEnd: 1603
    functionName: routeout_update_stsid_bundle
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_filter_pid_get_info
    - strcpy
    - gf_list_count
    - gf_gz_compress_payload_ex
    - strchr
    - gf_file_basename
    - strcat
    - gf_list_get
    - gf_strdup
    - snprintf
    - gf_filter_release_property
    - gf_dynstrcat
    - GF_LOG
    - strstr
    - strlen
    - gf_sk_get_local_ip
    - gf_filter_pid_get_property
    - strcmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err routeout_update_stsid_bundle(GF_ROUTEOutCtx *ctx, ROUTEService
      *serv, Bool manifest_updated)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1610,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:1611,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1612,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1613,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1614,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1615,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1622,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1623,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1625,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1627,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1628,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1629,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:1630,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1631,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1632,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:1633,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1634,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1635,1
    - Dst: gf_md5_csum
      Src: /src/gpac/src/filters/out_route.c:1639,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/filters/out_route.c:1640,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1642,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1643,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1644,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1646,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 8
    argNames:
    - ctx
    - payload
    - serv
    - url
    - mime
    - data
    - size
    - TOI
    argTypes:
    - GF_ROUTEOutCtx*
    - char**
    - ROUTEService*
    - char*
    - char*
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1647
      start: 1607
    functionDepth: 4
    functionLinenumber: 1607
    functionLinenumberEnd: 1647
    functionName: inject_fdt_file_desc
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_dynstrcat
    - gf_md5_csum
    - sprintf
    - gf_base64_encode
    linkageType: ''
    returnType: void
    signature: void inject_fdt_file_desc(GF_ROUTEOutCtx *ctx, char **payload, ROUTEService
      *serv, char *url, char *mime, const u8 *data, u32 size, u32 TOI)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1656,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1657,1
    - Dst: inject_fdt_file_desc
      Src: /src/gpac/src/filters/out_route.c:1664,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:1666,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:1668,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:1672,1
    - Dst: inject_fdt_file_desc
      Src: /src/gpac/src/filters/out_route.c:1677,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:1681,1
    - Dst: inject_fdt_file_desc
      Src: /src/gpac/src/filters/out_route.c:1686,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:1691,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:1693,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1699,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_route.c:1700,1
    - Dst: inject_fdt_file_desc
      Src: /src/gpac/src/filters/out_route.c:1705,1
    - Dst: inject_fdt_file_desc
      Src: /src/gpac/src/filters/out_route.c:1714,1
    - Dst: inject_fdt_file_desc
      Src: /src/gpac/src/filters/out_route.c:1721,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:1721,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1727,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:1729,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1730,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:1732,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 66
    argCount: 3
    argNames:
    - ctx
    - serv
    - manifest_updated
    argTypes:
    - GF_ROUTEOutCtx*
    - ROUTEService*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1736
      start: 1651
    functionDepth: 5
    functionLinenumber: 1651
    functionLinenumberEnd: 1736
    functionName: routeout_update_dvb_mabr_fdt
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - inject_fdt_file_desc
    - gf_free
    - gf_list_get
    - gf_filter_pid_get_property
    - GF_LOG
    - gf_list_count
    - strcmp
    - gf_dynstrcat
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err routeout_update_dvb_mabr_fdt(GF_ROUTEOutCtx *ctx, ROUTEService
      *serv, Bool manifest_updated)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_rand
      Src: /src/gpac/src/filters/out_route.c:1740,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_ROUTEOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1745
      start: 1738
    functionDepth: 0
    functionLinenumber: 1738
    functionLinenumberEnd: 1745
    functionName: update_error_simulation_state
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_rand
    linkageType: ''
    returnType: void
    signature: void update_error_simulation_state(GF_ROUTEOutCtx *ctx)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: PUT_U32
      Src: /src/gpac/src/filters/out_route.c:1817,1
    - Dst: PUT_U16
      Src: /src/gpac/src/filters/out_route.c:1819,1
    - Dst: PUT_U16
      Src: /src/gpac/src/filters/out_route.c:1820,1
    - Dst: PUT_U32
      Src: /src/gpac/src/filters/out_route.c:1822,1
    - Dst: PUT_U32
      Src: /src/gpac/src/filters/out_route.c:1823,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/out_route.c:1829,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/out_route.c:1831,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/out_route.c:1832,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/out_route.c:1833,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/out_route.c:1837,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/out_route.c:1838,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/filters/out_route.c:1840,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/out_route.c:1842,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/out_route.c:1844,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/out_route.c:1846,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/out_route.c:1850,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/out_route.c:1851,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/out_route.c:1852,1
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/filters/out_route.c:1854,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/out_route.c:1855,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/out_route.c:1856,1
    - Dst: PUT_U16
      Src: /src/gpac/src/filters/out_route.c:1859,1
    - Dst: PUT_U16
      Src: /src/gpac/src/filters/out_route.c:1860,1
    - Dst: PUT_U32
      Src: /src/gpac/src/filters/out_route.c:1877,1
    - Dst: PUT_U32
      Src: /src/gpac/src/filters/out_route.c:1881,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_route.c:1884,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:1886,1
    - Dst: update_error_simulation_state
      Src: /src/gpac/src/filters/out_route.c:1888,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_route.c:1890,1
    - Dst: gf_sk_send
      Src: /src/gpac/src/filters/out_route.c:1891,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:1893,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_route.c:1893,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:1896,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 103
    argCount: 14
    argNames:
    - ctx
    - sock
    - tsi
    - toi
    - codepoint
    - payload
    - len
    - offset
    - serv
    - total_size
    - offset_in_frame
    - fdt_instance_id
    - is_flute
    - can_set_close
    argTypes:
    - GF_ROUTEOutCtx*
    - GF_Socket*
    - u32
    - u32
    - u32
    - u8*
    - u32
    - u32
    - ROUTEService*
    - u32
    - u32
    - u32
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1904
      start: 1747
    functionDepth: 5
    functionLinenumber: 1747
    functionLinenumberEnd: 1904
    functionName: routeout_lct_send
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_sk_send
    - update_error_simulation_state
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_write_u16
    - memcpy
    - PUT_U16
    - gf_bs_write_long_int
    - gf_error_to_string
    - gf_net_get_ntp
    - gf_bs_write_u32
    - gf_bs_reassign_buffer
    - gf_bs_write_u8
    - PUT_U32
    linkageType: ''
    returnType: u32
    signature: u32 routeout_lct_send(GF_ROUTEOutCtx *ctx, GF_Socket *sock, u32 tsi,
      u32 toi, u32 codepoint, u8 *payload, u32 len, u32 offset, ROUTEService *serv,
      u32 total_size, u32 offset_in_frame, u32 fdt_instance_id, Bool is_flute, Bool
      can_set_close)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1809
      start: 1803
    functionDepth: 0
    functionLinenumber: 1803
    functionLinenumberEnd: 1809
    functionName: PUT_U32
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PUT_U32(_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1814
      start: 1810
    functionDepth: 0
    functionLinenumber: 1810
    functionLinenumberEnd: 1814
    functionName: PUT_U16
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PUT_U16(_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: routeout_lct_send
      Src: /src/gpac/src/filters/out_route.c:1910,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 10
    argNames:
    - ctx
    - serv
    - sock
    - tsi
    - toi
    - payload
    - size
    - codepoint
    - fdt_instance_id
    - is_flute
    argTypes:
    - GF_ROUTEOutCtx*
    - ROUTEService*
    - GF_Socket*
    - u32
    - u32
    - u8*
    - u32
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1912
      start: 1906
    functionDepth: 6
    functionLinenumber: 1906
    functionLinenumberEnd: 1912
    functionName: routeout_send_file
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - routeout_lct_send
    linkageType: ''
    returnType: void
    signature: void routeout_send_file(GF_ROUTEOutCtx *ctx, ROUTEService *serv, GF_Socket
      *sock, u32 tsi, u32 toi, u8 *payload, u32 size, u32 codepoint, u32 fdt_instance_id,
      Bool is_flute)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:1916,1
    - Dst: routeout_send_file
      Src: /src/gpac/src/filters/out_route.c:1922,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - serv
    argTypes:
    - GF_ROUTEOutCtx*
    - ROUTEService*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1924
      start: 1914
    functionDepth: 7
    functionLinenumber: 1914
    functionLinenumberEnd: 1924
    functionName: routeout_service_send_stsid_bundle
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - routeout_send_file
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err routeout_service_send_stsid_bundle(GF_ROUTEOutCtx *ctx, ROUTEService
      *serv)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2670,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2671,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2672,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2673,1
    - Dst: gf_net_get_timezone
      Src: /src/gpac/src/filters/out_route.c:2674,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2678,1
    - Dst: ABS
      Src: /src/gpac/src/filters/out_route.c:2678,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2680,1
    - Dst: ABS
      Src: /src/gpac/src/filters/out_route.c:2680,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2681,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2682,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2683,1
    - Dst: gf_net_time_is_dst
      Src: /src/gpac/src/filters/out_route.c:2683,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2684,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:2686,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:2687,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_route.c:2689,1
    - Dst: gf_gz_compress_payload_ex
      Src: /src/gpac/src/filters/out_route.c:2691,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:2692,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:2706,1
    - Dst: gf_sk_send
      Src: /src/gpac/src/filters/out_route.c:2707,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:2712,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:2713,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2714,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:2720,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:2725,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/out_route.c:2728,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/out_route.c:2730,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:2732,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/out_route.c:2734,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/out_route.c:2736,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/out_route.c:2740,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_route.c:2741,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/out_route.c:2745,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_route.c:2746,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/out_route.c:2749,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_route.c:2750,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/out_route.c:2752,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/out_route.c:2755,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/out_route.c:2758,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:2761,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2763,1
    - Dst: gf_sk_get_local_ip
      Src: /src/gpac/src/filters/out_route.c:2767,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_route.c:2768,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:2772,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:2775,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2777,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2779,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:2781,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:2783,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_route.c:2785,1
    - Dst: gf_gz_compress_payload_ex
      Src: /src/gpac/src/filters/out_route.c:2787,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:2788,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:2802,1
    - Dst: gf_sk_send
      Src: /src/gpac/src/filters/out_route.c:2803,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 109
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_ROUTEOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2805
      start: 2648
    functionDepth: 2
    functionLinenumber: 2648
    functionLinenumberEnd: 2805
    functionName: routeout_send_lls
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_pid_get_info
    - strcpy
    - gf_list_count
    - atoi
    - gf_gz_compress_payload_ex
    - gf_sk_send
    - gf_list_get
    - snprintf
    - sprintf
    - gf_filter_release_property
    - gf_dynstrcat
    - gf_filter_pid_get_property_str
    - gf_net_time_is_dst
    - GF_LOG
    - strncpy
    - gf_malloc
    - strlen
    - gf_net_get_timezone
    - gf_sk_get_local_ip
    - ABS
    linkageType: ''
    returnType: void
    signature: void routeout_send_lls(GF_ROUTEOutCtx *ctx)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:2812,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:2813,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:2816,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:2818,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:2821,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2835,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2836,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2837,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2838,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2842,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2843,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2844,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2845,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2846,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2847,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2849,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2850,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2851,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2852,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2853,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2855,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 42
    argCount: 4
    argNames:
    - ctx
    - serv
    - inject_names
    - out_tot_rate
    argTypes:
    - GF_ROUTEOutCtx*
    - ROUTEService*
    - Bool
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2857
      start: 2807
    functionDepth: 1
    functionLinenumber: 2807
    functionLinenumberEnd: 2857
    functionName: mabr_get_carousel_info
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - sprintf
    - gf_list_count
    - gf_dynstrcat
    - strlen
    linkageType: ''
    returnType: char
    signature: char *mabr_get_carousel_info(GF_ROUTEOutCtx *ctx, ROUTEService *serv,
      Bool inject_names, u32 *out_tot_rate)
  - BBCount: 47
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:2866,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:2867,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2868,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2871,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:2874,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:2877,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2881,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2882,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2883,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2884,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2885,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2886,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2888,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2889,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2890,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2892,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2895,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2896,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2897,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2898,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2899,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2900,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2901,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2902,1
    - Dst: mabr_get_carousel_info
      Src: /src/gpac/src/filters/out_route.c:2905,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2908,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2909,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2913,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:2914,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2916,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:2924,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:2934,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2935,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2936,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2937,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/out_route.c:2939,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2940,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2941,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2942,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:2944,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_route.c:2947,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/out_route.c:2950,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:2961,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2975,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2978,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2979,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2981,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2982,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2984,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2987,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2988,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2990,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2991,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2992,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2993,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2994,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2996,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2997,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2998,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3001,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3003,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:3004,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:3005,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3025,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3028,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3029,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3031,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3032,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3034,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3037,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3038,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3040,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3041,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3042,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3043,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3044,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3046,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3047,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3048,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3050,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3051,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:3052,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:3053,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:3056,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:3058,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3061,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3062,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3063,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3064,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3068,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3069,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3070,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3071,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3073,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3075,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3077,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3079,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3080,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3081,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3083,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3084,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3085,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3086,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3087,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3088,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3089,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3090,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3091,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3092,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3093,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3097,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3098,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3099,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3100,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_route.c:3108,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_route.c:3111,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/out_route.c:3115,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3123,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3126,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3127,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3130,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3131,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3133,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3135,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:3137,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3138,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3141,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3142,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3144,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3145,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3147,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3152,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3153,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3154,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3155,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3156,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3157,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3158,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3159,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3160,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3165,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3166,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3167,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3168,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3170,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:3171,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:3176,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3180,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3181,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:3183,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3185,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:3189,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3193,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3194,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:3195,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:3200,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3204,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3205,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3206,1
    - Dst: mabr_get_carousel_info
      Src: /src/gpac/src/filters/out_route.c:3209,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3211,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:3212,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3215,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3218,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3220,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:3222,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:3225,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:3231,1
    CyclomaticComplexity: 68
    EdgeCount: 68
    ICount: 293
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_ROUTEOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3236
      start: 2859
    functionDepth: 2
    functionLinenumber: 2859
    functionLinenumberEnd: 3236
    functionName: routeout_update_mabr_manifest
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_filter_pid_get_property_str
    - gf_filter_pid_get_property
    - snprintf
    - GF_LOG
    - sprintf
    - mabr_get_carousel_info
    - strstr
    - gf_list_count
    - atoi
    - stricmp
    - gf_dynstrcat
    - strchr
    - strlen
    linkageType: ''
    returnType: void
    signature: void routeout_update_mabr_manifest(GF_ROUTEOutCtx *ctx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: routeout_update_mabr_manifest
      Src: /src/gpac/src/filters/out_route.c:3241,1
    - Dst: routeout_update_dvb_mabr_fdt
      Src: /src/gpac/src/filters/out_route.c:3243,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:3259,1
    - Dst: routeout_send_file
      Src: /src/gpac/src/filters/out_route.c:3262,1
    - Dst: routeout_send_file
      Src: /src/gpac/src/filters/out_route.c:3264,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_ROUTEOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3265
      start: 3238
    functionDepth: 7
    functionLinenumber: 3238
    functionLinenumberEnd: 3265
    functionName: routeout_send_mabr_manifest
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - routeout_update_mabr_manifest
    - routeout_update_dvb_mabr_fdt
    - routeout_send_file
    linkageType: ''
    returnType: void
    signature: void routeout_send_mabr_manifest(GF_ROUTEOutCtx *ctx)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_route.c:3272,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_route.c:3274,1
    - Dst: MIN
      Src: /src/gpac/src/filters/out_route.c:3275,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/out_route.c:3276,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/out_route.c:3288,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/out_route.c:3291,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_route.c:3292,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_route.c:3293,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/out_route.c:3294,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/src/filters/out_route.c:3302,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_route.c:3303,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_route.c:3304,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:3305,1
    - Dst: routeout_send_lls
      Src: /src/gpac/src/filters/out_route.c:3315,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:3318,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:3320,1
    - Dst: routeout_check_service_updates
      Src: /src/gpac/src/filters/out_route.c:3322,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_route.c:3324,1
    - Dst: routeout_send_mabr_manifest
      Src: /src/gpac/src/filters/out_route.c:3329,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:3333,1
    - Dst: routeout_process_service
      Src: /src/gpac/src/filters/out_route.c:3335,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:3347,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:3355,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:3357,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/out_route.c:3359,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_route.c:3365,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 81
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3367
      start: 3267
    functionDepth: 8
    functionLinenumber: 3267
    functionLinenumberEnd: 3367
    functionName: routeout_process
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - routeout_send_lls
    - gf_filter_connections_pending
    - gf_list_count
    - gf_filter_get_ipid
    - routeout_process_service
    - gf_sys_clock
    - routeout_send_mabr_manifest
    - gf_list_get
    - snprintf
    - GF_FEVT_INIT
    - gf_filter_ask_rt_reschedule
    - gf_filter_get_udta
    - gf_filter_update_status
    - gf_filter_pid_set_discard
    - GF_LOG
    - MIN
    - gf_filter_pid_send_event
    - gf_filter_get_ipid_count
    - gf_sys_clock_high_res
    - gf_filter_reporting_enabled
    - routeout_check_service_updates
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err routeout_process(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_route.c:3371,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_route.c:3372,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_route.c:3373,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3375
      start: 3369
    functionDepth: 0
    functionLinenumber: 3369
    functionLinenumberEnd: 3375
    functionName: routeout_probe_url
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - strnicmp
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore routeout_probe_url(const char *url, const char
      *mime)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_route.c:3380,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_route.c:3384,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:3391,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_route.c:3394,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_route.c:3396,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_route.c:3400,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 3
    argNames:
    - filter
    - url
    - mime
    argTypes:
    - GF_Filter*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3402
      start: 3376
    functionDepth: 1
    functionLinenumber: 3376
    functionLinenumberEnd: 3402
    functionName: routeout_use_alias
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - strstr
    - strncmp
    - strcmp
    - strchr
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool routeout_use_alias(GF_Filter *filter, const char *url, const char
      *mime)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3406
      start: 3405
    functionDepth: 0
    functionLinenumber: 3405
    functionLinenumberEnd: 3406
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/out_route.c:3589,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/out_route.c:3590,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3593
      start: 3587
    functionDepth: 6
    functionLinenumber: 3587
    functionLinenumberEnd: 3593
    functionName: routeout_register
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    - gf_opts_set_key
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *routeout_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3598
      start: 3595
    functionDepth: 0
    functionLinenumber: 3595
    functionLinenumberEnd: 3598
    functionName: routeout_register
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *routeout_register(GF_FilterSession *session)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/inspect.c:166,1
    - Dst: gf_log_lt
      Src: /src/gpac/src/filters/inspect.c:167,1
    - Dst: va_start
      Src: /src/gpac/src/filters/inspect.c:168,1
    - Dst: gf_log_va_list
      Src: /src/gpac/src/filters/inspect.c:169,1
    - Dst: va_end
      Src: /src/gpac/src/filters/inspect.c:170,1
    - Dst: va_start
      Src: /src/gpac/src/filters/inspect.c:174,1
    - Dst: gf_vfprintf
      Src: /src/gpac/src/filters/inspect.c:175,1
    - Dst: va_end
      Src: /src/gpac/src/filters/inspect.c:176,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - dump
    - fmt
    argTypes:
    - FILE*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 161
    functionDepth: 2
    functionLinenumber: 161
    functionLinenumberEnd: 178
    functionName: inspect_printf
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - va_end
    - gf_log_tool_level_on
    - va_start
    - gf_log_va_list
    - gf_log_lt
    - gf_vfprintf
    linkageType: ''
    returnType: void
    signature: void inspect_printf(FILE *dump, const char *fmt, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 185
    functionName: DUMP_ATT_STR
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DUMP_ATT_STR(_name, _val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 191
    functionName: DUMP_ATT_LLU
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DUMP_ATT_LLU(_name, _val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 197
    functionName: DUMP_ATT_U
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DUMP_ATT_U(_name, _val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 203
    functionName: DUMP_ATT_D
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DUMP_ATT_D(_name, _val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 209
    functionName: DUMP_ATT_X
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DUMP_ATT_X(_name, _val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 215
    functionName: DUMP_ATT_BOOL
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DUMP_ATT_BOOL(_name, _val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _name
    - ','
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 221
    functionName: DUMP_ATT_FRAC
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DUMP_ATT_FRAC(_name, _val)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ptr
    - nalh_size
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 236
    functionName: inspect_get_nal_size
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 inspect_get_nal_size(char *ptr, u32 nalh_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - sei_type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 331
    functionDepth: 0
    functionLinenumber: 331
    functionLinenumberEnd: 338
    functionName: get_sei_name
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *get_sei_name(u32 sei_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - nal_type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 373
    functionDepth: 0
    functionLinenumber: 373
    functionLinenumberEnd: 380
    functionName: get_hevc_nal_name
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *get_hevc_nal_name(u32 nal_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - nal_type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 408
    functionDepth: 0
    functionLinenumber: 408
    functionLinenumberEnd: 415
    functionName: get_vvc_nal_name
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *get_vvc_nal_name(u32 nal_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - nal_type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 442
    functionDepth: 0
    functionLinenumber: 442
    functionLinenumberEnd: 449
    functionName: get_avc_nal_name
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *get_avc_nal_name(u32 nal_type)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:465,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:467,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:469,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:471,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:473,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:477,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:479,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:482,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 8
    argNames:
    - is_nalu
    - udta
    - field_name
    - nb_bits
    - field_val
    - idx1
    - idx2
    - idx3
    argTypes:
    - Bool
    - void*
    - char*
    - u32
    - u64
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 457
    functionDepth: 3
    functionLinenumber: 457
    functionLinenumberEnd: 483
    functionName: inspect_log_bs
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - inspect_printf
    linkageType: ''
    returnType: void
    signature: void inspect_log_bs(Bool is_nalu, void *udta, const char *field_name,
      u32 nb_bits, u64 field_val, s32 idx1, s32 idx2, s32 idx3)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: inspect_log_bs
      Src: /src/gpac/src/filters/inspect.c:487,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - udta
    - field_name
    - nb_bits
    - field_val
    - idx1
    - idx2
    - idx3
    argTypes:
    - void*
    - char*
    - u32
    - u64
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 485
    functionDepth: 4
    functionLinenumber: 485
    functionLinenumberEnd: 488
    functionName: shifted_bs_log
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - inspect_log_bs
    linkageType: ''
    returnType: void
    signature: void shifted_bs_log(void *udta, const char *field_name, u32 nb_bits,
      u64 field_val, s32 idx1, s32 idx2, s32 idx3)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: inspect_log_bs
      Src: /src/gpac/src/filters/inspect.c:491,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - udta
    - field_name
    - nb_bits
    - field_val
    - idx1
    - idx2
    - idx3
    argTypes:
    - void*
    - char*
    - u32
    - u64
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 489
    functionDepth: 4
    functionLinenumber: 489
    functionLinenumberEnd: 492
    functionName: regular_bs_log
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - inspect_log_bs
    linkageType: ''
    returnType: void
    signature: void regular_bs_log(void *udta, const char *field_name, u32 nb_bits,
      u64 field_val, s32 idx1, s32 idx2, s32 idx3)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:496,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:497,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:498,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dump
    - bs
    argTypes:
    - FILE*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 494
    functionDepth: 5
    functionLinenumber: 494
    functionLinenumberEnd: 499
    functionName: dump_clli
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - inspect_printf
    - gf_bs_read_int
    linkageType: ''
    returnType: void
    signature: void dump_clli(FILE *dump, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:511,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:512,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:514,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:515,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:516,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:517,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:518,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - dump
    - bs
    - isMPEG
    argTypes:
    - FILE*
    - GF_BitStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 501
    functionDepth: 5
    functionLinenumber: 501
    functionLinenumberEnd: 529
    functionName: dump_mdcv
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - inspect_printf
    - gf_bs_read_int
    linkageType: ''
    returnType: void
    signature: void dump_mdcv(FILE *dump, GF_BitStream *bs, Bool isMPEG)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:533,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:534,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:536,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:537,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/inspect.c:539,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:540,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:543,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:544,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:545,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/inspect.c:545,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:546,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:548,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:548,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:552,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:552,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:553,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:553,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:554,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:554,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:555,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:556,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:557,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:557,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:559,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:561,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:562,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:563,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/inspect.c:564,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:565,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:567,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:569,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:571,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/inspect.c:574,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:575,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:576,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:577,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 3
    argNames:
    - dump
    - bs
    - sei_size
    argTypes:
    - FILE*
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 581
      start: 531
    functionDepth: 5
    functionLinenumber: 531
    functionLinenumberEnd: 581
    functionName: dump_t35
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_bs_read_u32
    - inspect_printf
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_bs_read_u8
    linkageType: ''
    returnType: void
    signature: void dump_t35(FILE *dump, GF_BitStream *bs, u32 sei_size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:594,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:596,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:597,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:599,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/inspect.c:603,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:605,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/inspect.c:606,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:607,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:608,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:611,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:614,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/inspect.c:618,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:620,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:623,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:624,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:625,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:629,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 3
    argNames:
    - dump
    - bs
    - sei_size
    argTypes:
    - FILE*
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 630
      start: 583
    functionDepth: 4
    functionLinenumber: 583
    functionLinenumberEnd: 630
    functionName: dump_unregistered_sei
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memcmp
    - GF_LOG
    - inspect_printf
    - gf_bs_read_u8
    - gf_bs_available
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void dump_unregistered_sei(FILE *dump, GF_BitStream *bs, u32 sei_size)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/inspect.c:639,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:642,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/inspect.c:642,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/inspect.c:644,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/inspect.c:646,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:650,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:655,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:656,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:657,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:659,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:660,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:663,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:670,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:672,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:674,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:678,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 35
    argCount: 3
    argNames:
    - dump
    - data
    - sei_size
    argTypes:
    - FILE*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 632
    functionDepth: 3
    functionLinenumber: 632
    functionLinenumberEnd: 681
    functionName: dump_udta_m2v
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - inspect_printf
    - GF_4CC
    linkageType: ''
    returnType: u32
    signature: u32 dump_udta_m2v(FILE *dump, u8 *data, u32 sei_size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:691,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:692,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:693,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:694,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:695,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:696,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:697,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:698,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:699,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:701,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:702,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:703,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:705,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:707,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:708,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:710,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:711,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:713,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:718,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:719,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:720,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:723,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:725,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 3
    argNames:
    - dump
    - bs
    - i
    argTypes:
    - FILE*
    - GF_BitStream*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 726
      start: 683
    functionDepth: 5
    functionLinenumber: 683
    functionLinenumberEnd: 726
    functionName: dump_time_code
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - inspect_printf
    - gf_bs_read_int
    linkageType: ''
    returnType: void
    signature: void dump_time_code(FILE *dump, GF_BitStream *bs, int i)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:730,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:731,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:733,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:735,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:736,1
    - Dst: dump_time_code
      Src: /src/gpac/src/filters/inspect.c:737,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - dump
    - bs
    argTypes:
    - FILE*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 740
      start: 728
    functionDepth: 6
    functionLinenumber: 728
    functionLinenumberEnd: 740
    functionName: dump_time_code_hevc
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - dump_time_code
    - inspect_printf
    - gf_bs_read_int
    linkageType: ''
    returnType: void
    signature: void dump_time_code_hevc(FILE *dump, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:744,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:745,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - bs
    - dump
    - name
    - idx
    - nbits
    argTypes:
    - GF_BitStream*
    - FILE*
    - char*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 747
      start: 742
    functionDepth: 5
    functionLinenumber: 742
    functionLinenumberEnd: 747
    functionName: gf_bs_inspect_int
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - inspect_printf
    - gf_bs_read_int
    linkageType: ''
    returnType: u32
    signature: u32 gf_bs_inspect_int(GF_BitStream *bs, FILE *dump, char *name, int
      idx, int nbits)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/inspect.c:757,1
    - Dst: gf_bs_inspect_int
      Src: /src/gpac/src/filters/inspect.c:762,1
    - Dst: gf_bs_inspect_int
      Src: /src/gpac/src/filters/inspect.c:763,1
    - Dst: gf_bs_inspect_int
      Src: /src/gpac/src/filters/inspect.c:769,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:771,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:775,1
    - Dst: gf_bs_inspect_int
      Src: /src/gpac/src/filters/inspect.c:777,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:779,1
    - Dst: gf_bs_inspect_int
      Src: /src/gpac/src/filters/inspect.c:780,1
    - Dst: gf_bs_inspect_int
      Src: /src/gpac/src/filters/inspect.c:781,1
    - Dst: gf_bs_inspect_int
      Src: /src/gpac/src/filters/inspect.c:782,1
    - Dst: gf_bs_inspect_int
      Src: /src/gpac/src/filters/inspect.c:783,1
    - Dst: gf_bs_inspect_int
      Src: /src/gpac/src/filters/inspect.c:784,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:785,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:789,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:790,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:791,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:793,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:794,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:795,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:796,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:797,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:798,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:803,1
    - Dst: gf_bs_inspect_int
      Src: /src/gpac/src/filters/inspect.c:804,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:808,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 3
    argNames:
    - dump
    - bs
    - avc
    argTypes:
    - FILE*
    - GF_BitStream*
    - AVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 812
      start: 749
    functionDepth: 6
    functionLinenumber: 749
    functionLinenumberEnd: 812
    functionName: dump_avc_pic_timing
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - GF_LOG
    - gf_bs_inspect_int
    - inspect_printf
    - gf_bs_read_int
    linkageType: ''
    returnType: void
    signature: void dump_avc_pic_timing(FILE *dump, GF_BitStream *bs, AVCState *avc)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/filters/inspect.c:816,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:819,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/inspect.c:821,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/filters/inspect.c:825,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:827,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:829,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/filters/inspect.c:830,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:832,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:834,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/inspect.c:835,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:837,1
    - Dst: get_sei_name
      Src: /src/gpac/src/filters/inspect.c:837,1
    - Dst: dump_clli
      Src: /src/gpac/src/filters/inspect.c:839,1
    - Dst: dump_mdcv
      Src: /src/gpac/src/filters/inspect.c:841,1
    - Dst: dump_avc_pic_timing
      Src: /src/gpac/src/filters/inspect.c:843,1
    - Dst: dump_time_code_hevc
      Src: /src/gpac/src/filters/inspect.c:845,1
    - Dst: dump_t35
      Src: /src/gpac/src/filters/inspect.c:847,1
    - Dst: dump_unregistered_sei
      Src: /src/gpac/src/filters/inspect.c:849,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/inspect.c:851,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:852,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:854,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/inspect.c:857,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/inspect.c:858,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:859,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/filters/inspect.c:863,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 47
    argCount: 5
    argNames:
    - dump
    - bs
    - avc
    - hevc
    - vvc
    argTypes:
    - FILE*
    - GF_BitStream*
    - AVCState*
    - HEVCState*
    - VVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 867
      start: 814
    functionDepth: 8
    functionLinenumber: 814
    functionLinenumberEnd: 867
    functionName: dump_sei
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_bs_peek_bits
    - get_sei_name
    - dump_clli
    - gf_bs_seek
    - gf_bs_enable_emulation_byte_removal
    - dump_unregistered_sei
    - dump_time_code_hevc
    - gf_bs_get_position
    - dump_avc_pic_timing
    - gf_bs_read_int
    - inspect_printf
    - dump_mdcv
    - gf_bs_available
    - gf_bs_read_u8
    - dump_t35
    - gf_bs_read_ue
    linkageType: ''
    returnType: void
    signature: void dump_sei(FILE *dump, GF_BitStream *bs, AVCState *avc, HEVCState
      *hevc, VVCState *vvc)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:871,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/inspect.c:878,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/inspect.c:879,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/inspect.c:880,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/inspect.c:883,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/inspect.c:891,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/inspect.c:892,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/inspect.c:895,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:896,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/inspect.c:897,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/inspect.c:899,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:903,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:904,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/inspect.c:911,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/inspect.c:912,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:913,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:915,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:916,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:920,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:921,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:928,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:929,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 55
    argCount: 5
    argNames:
    - dump
    - nal_size
    - sai_buffer
    - sai_buffer_size
    - nalu_offset
    argTypes:
    - FILE*
    - u32
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 930
      start: 869
    functionDepth: 7
    functionLinenumber: 869
    functionLinenumberEnd: 930
    functionName: inspect_dump_crypt
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_bs_seek
    - gf_bs_new
    - gf_bs_del
    - inspect_printf
    - gf_bs_read_u16
    - gf_bs_available
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: void
    signature: void inspect_dump_crypt(FILE *dump, u32 nal_size, u8 *sai_buffer, u32
      sai_buffer_size, u32 nalu_offset)
  - BBCount: 133
    BranchProfiles: []
    Callsites:
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:958,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:962,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/inspect.c:962,1
    - Dst: inspect_dump_crypt
      Src: /src/gpac/src/filters/inspect.c:965,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:970,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:977,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:979,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:982,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:984,1
    - Dst: gf_hevc_parse_nalu_bs
      Src: /src/gpac/src/filters/inspect.c:986,1
    - Dst: gf_hevc_parse_nalu
      Src: /src/gpac/src/filters/inspect.c:991,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:992,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:996,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:998,1
    - Dst: get_hevc_nal_name
      Src: /src/gpac/src/filters/inspect.c:999,1
    - Dst: gf_fputs
      Src: /src/gpac/src/filters/inspect.c:1001,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1003,1
    - Dst: gf_hevc_read_vps
      Src: /src/gpac/src/filters/inspect.c:1009,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1010,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1011,1
    - Dst: gf_hevc_read_sps
      Src: /src/gpac/src/filters/inspect.c:1015,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1017,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1022,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1024,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1025,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1026,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1027,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1028,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1029,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1030,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1032,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1033,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1034,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1035,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1037,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1038,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1039,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1040,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1041,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1042,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1043,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1044,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1045,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1046,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1047,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1049,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1050,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1051,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1052,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1054,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1055,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1056,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1057,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1058,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1059,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1060,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1061,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1062,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1063,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1064,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1065,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1066,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1067,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1068,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1069,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1070,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1071,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1072,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1073,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1074,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1075,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1076,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1077,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1078,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1079,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1080,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1081,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1082,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1083,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1084,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1085,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1086,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1087,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1088,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1089,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1090,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1091,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1092,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1093,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1094,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1095,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1096,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1097,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1098,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1099,1
    - Dst: gf_hevc_read_pps
      Src: /src/gpac/src/filters/inspect.c:1104,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1106,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1111,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1113,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1114,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1115,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1116,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1117,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1118,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1119,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1120,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1121,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1122,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1124,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1127,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1128,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1129,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1131,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1132,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1134,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1137,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1138,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1139,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1140,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1141,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1142,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1144,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1145,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1146,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1147,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1149,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1150,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1151,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1152,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1154,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1156,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1157,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1158,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1159,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1161,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1162,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1167,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1170,1
    - Dst: gf_fputs
      Src: /src/gpac/src/filters/inspect.c:1178,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1185,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1190,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1195,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1198,1
    - Dst: inspect_get_nal_size
      Src: /src/gpac/src/filters/inspect.c:1203,1
    - Dst: inspect_get_nal_size
      Src: /src/gpac/src/filters/inspect.c:1204,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1205,1
    - Dst: gf_fputs
      Src: /src/gpac/src/filters/inspect.c:1216,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1219,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1220,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1221,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1222,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1223,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1224,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1225,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1229,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1231,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1232,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1234,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1237,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:1241,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:1243,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1247,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:1250,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:1252,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:1255,1
    - Dst: dump_sei
      Src: /src/gpac/src/filters/inspect.c:1257,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:1258,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1259,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1261,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1270,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:1278,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:1280,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:1283,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:1285,1
    - Dst: gf_vvc_parse_nalu_bs
      Src: /src/gpac/src/filters/inspect.c:1286,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1295,1
    - Dst: gf_vvc_parse_nalu
      Src: /src/gpac/src/filters/inspect.c:1301,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1302,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1305,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1308,1
    - Dst: get_vvc_nal_name
      Src: /src/gpac/src/filters/inspect.c:1309,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1311,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1313,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1322,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1324,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1328,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1331,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1341,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1343,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1345,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1348,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1351,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1354,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1356,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1364,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1367,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1369,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1376,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1383,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1386,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1388,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1390,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1392,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1395,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:1400,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:1402,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1407,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1409,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1410,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1412,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1416,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:1419,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:1421,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:1424,1
    - Dst: dump_sei
      Src: /src/gpac/src/filters/inspect.c:1426,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:1427,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1428,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1430,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1437,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1444,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1446,1
    - Dst: get_avc_nal_name
      Src: /src/gpac/src/filters/inspect.c:1448,1
    - Dst: gf_fputs
      Src: /src/gpac/src/filters/inspect.c:1451,1
    - Dst: gf_fputs
      Src: /src/gpac/src/filters/inspect.c:1453,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:1458,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:1460,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:1463,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:1467,1
    - Dst: gf_avc_parse_nalu
      Src: /src/gpac/src/filters/inspect.c:1477,1
    - Dst: gf_avc_read_sps_bs
      Src: /src/gpac/src/filters/inspect.c:1481,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1483,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1487,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1488,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1489,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1490,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1491,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1492,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1493,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1494,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1495,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1496,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1497,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1498,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1499,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1500,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1501,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1503,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1504,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1505,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1506,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1507,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1508,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1509,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1510,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1511,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1512,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1513,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1515,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1516,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1517,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1518,1
    - Dst: gf_avc_read_pps_bs
      Src: /src/gpac/src/filters/inspect.c:1523,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1525,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1529,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1530,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1531,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1532,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1533,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1534,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1535,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1536,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1537,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1538,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1539,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1540,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1541,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1546,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:1546,1
    - Dst: gf_avc_read_sps_bs
      Src: /src/gpac/src/filters/inspect.c:1550,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1552,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1556,1
    - Dst: gf_avc_parse_nalu
      Src: /src/gpac/src/filters/inspect.c:1560,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1563,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1569,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1570,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1576,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1582,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1588,1
    - Dst: inspect_get_nal_size
      Src: /src/gpac/src/filters/inspect.c:1593,1
    - Dst: inspect_get_nal_size
      Src: /src/gpac/src/filters/inspect.c:1594,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1595,1
    - Dst: gf_fputs
      Src: /src/gpac/src/filters/inspect.c:1600,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1604,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1607,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1612,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1615,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:1616,1
    - Dst: dump_sei
      Src: /src/gpac/src/filters/inspect.c:1617,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1618,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1620,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:1625,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:1627,1
    CyclomaticComplexity: 179
    EdgeCount: 179
    ICount: 628
    argCount: 15
    argNames:
    - dump
    - ptr
    - ptr_size
    - is_svc
    - hevc
    - avc
    - vvc
    - nalh_size
    - dump_crc
    - is_encrypted
    - full_bs_dump
    - pctx
    - sai_buffer
    - sai_buffer_size
    - nalu_offset
    argTypes:
    - FILE*
    - u8*
    - u32
    - Bool
    - HEVCState*
    - AVCState*
    - VVCState*
    - u32
    - Bool
    - Bool
    - GF_InspectSampleAnalyzeMode
    - PidCtx*
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1629
      start: 934
    functionDepth: 9
    functionLinenumber: 934
    functionLinenumberEnd: 1629
    functionName: gf_inspect_dump_nalu_internal
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_fputs
    - gf_hevc_read_vps
    - gf_hevc_parse_nalu_bs
    - get_hevc_nal_name
    - gf_crc_32
    - gf_hevc_parse_nalu
    - gf_bs_set_logger
    - dump_sei
    - gf_vvc_parse_nalu
    - gf_avc_read_sps_bs
    - gf_bs_read_u8
    - gf_bs_reassign_buffer
    - gf_vvc_parse_nalu_bs
    - gf_bs_del
    - inspect_printf
    - inspect_get_nal_size
    - gf_hevc_read_sps
    - get_avc_nal_name
    - gf_hevc_read_pps
    - get_vvc_nal_name
    - gf_avc_parse_nalu
    - inspect_dump_crypt
    - gf_avc_read_pps_bs
    linkageType: ''
    returnType: void
    signature: void gf_inspect_dump_nalu_internal(FILE *dump, u8 *ptr, u32 ptr_size,
      Bool is_svc, HEVCState *hevc, AVCState *avc, VVCState *vvc, u32 nalh_size, Bool
      dump_crc, Bool is_encrypted, GF_InspectSampleAnalyzeMode full_bs_dump, PidCtx
      *pctx, u8 *sai_buffer, u32 sai_buffer_size, u32 nalu_offset)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_get_argc
      Src: /src/gpac/src/filters/inspect.c:1633,1
    - Dst: gf_sys_get_arg
      Src: /src/gpac/src/filters/inspect.c:1635,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/inspect.c:1636,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:1637,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:1638,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:1639,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1644
      start: 1631
    functionDepth: 1
    functionLinenumber: 1631
    functionLinenumberEnd: 1644
    functionName: inspect_get_analyze_mode
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - strncmp
    - gf_sys_get_argc
    - strcmp
    - gf_sys_get_arg
    linkageType: ''
    returnType: u32
    signature: u32 inspect_get_analyze_mode()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_inspect_dump_nalu_internal
      Src: /src/gpac/src/filters/inspect.c:1650,1
    - Dst: inspect_get_analyze_mode
      Src: /src/gpac/src/filters/inspect.c:1650,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 13
    argNames:
    - dump
    - ptr
    - ptr_size
    - is_svc
    - hevc
    - avc
    - vvc
    - nalh_size
    - dump_crc
    - is_encrypted
    - sai_buffer
    - sai_buffer_size
    - sample_offset
    argTypes:
    - FILE*
    - u8*
    - u32
    - Bool
    - HEVCState*
    - AVCState*
    - VVCState*
    - u32
    - Bool
    - Bool
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1651
      start: 1646
    functionDepth: 10
    functionLinenumber: 1646
    functionLinenumberEnd: 1651
    functionName: gf_inspect_dump_nalu
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 1
    functionsReached:
    - inspect_get_analyze_mode
    - gf_inspect_dump_nalu_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_inspect_dump_nalu(FILE *dump, u8 *ptr, u32 ptr_size, Bool
      is_svc, HEVCState *hevc, AVCState *avc, VVCState *vvc, u32 nalh_size, Bool dump_crc,
      Bool is_encrypted, u8 *sai_buffer, u32 sai_buffer_size, u32 sample_offset)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1655,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - dump
    - idx
    - tile
    argTypes:
    - FILE*
    - u32
    - AV1Tile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1656
      start: 1653
    functionDepth: 3
    functionLinenumber: 1653
    functionLinenumberEnd: 1656
    functionName: av1_dump_tile
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - inspect_printf
    linkageType: ''
    returnType: void
    signature: void av1_dump_tile(FILE *dump, u32 idx, AV1Tile *tile)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:1670,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1672,1
    - Dst: gf_av1_parse_obu
      Src: /src/gpac/src/filters/inspect.c:1674,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:1677,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1684,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1691,1
    - Dst: gf_av1_get_obu_name
      Src: /src/gpac/src/filters/inspect.c:1691,1
    - Dst: inspect_dump_crypt
      Src: /src/gpac/src/filters/inspect.c:1694,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1698,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1702,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/inspect.c:1702,1
    - Dst: DUMP_OBU_INT
      Src: /src/gpac/src/filters/inspect.c:1706,1
    - Dst: DUMP_OBU_INT
      Src: /src/gpac/src/filters/inspect.c:1707,1
    - Dst: DUMP_OBU_INT
      Src: /src/gpac/src/filters/inspect.c:1708,1
    - Dst: DUMP_OBU_INT
      Src: /src/gpac/src/filters/inspect.c:1709,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1710,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1711,1
    - Dst: DUMP_OBU_INT
      Src: /src/gpac/src/filters/inspect.c:1712,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1713,1
    - Dst: DUMP_OBU_INT
      Src: /src/gpac/src/filters/inspect.c:1714,1
    - Dst: DUMP_OBU_INT
      Src: /src/gpac/src/filters/inspect.c:1715,1
    - Dst: DUMP_OBU_INT
      Src: /src/gpac/src/filters/inspect.c:1716,1
    - Dst: DUMP_OBU_INT
      Src: /src/gpac/src/filters/inspect.c:1717,1
    - Dst: DUMP_OBU_INT
      Src: /src/gpac/src/filters/inspect.c:1718,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1719,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1720,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1721,1
    - Dst: DUMP_OBU_INT
      Src: /src/gpac/src/filters/inspect.c:1722,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1728,1
    - Dst: DUMP_OBU_INT
      Src: /src/gpac/src/filters/inspect.c:1731,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1733,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1735,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1736,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1737,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1738,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1739,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1742,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1744,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1745,1
    - Dst: DUMP_OBU_INT
      Src: /src/gpac/src/filters/inspect.c:1747,1
    - Dst: DUMP_OBU_INT
      Src: /src/gpac/src/filters/inspect.c:1748,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1757,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/inspect.c:1758,1
    - Dst: av1_dump_tile
      Src: /src/gpac/src/filters/inspect.c:1760,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1763,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1765,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:1769,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/filters/inspect.c:1771,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1772,1
    - Dst: dump_time_code
      Src: /src/gpac/src/filters/inspect.c:1775,1
    - Dst: dump_t35
      Src: /src/gpac/src/filters/inspect.c:1778,1
    - Dst: dump_clli
      Src: /src/gpac/src/filters/inspect.c:1781,1
    - Dst: dump_mdcv
      Src: /src/gpac/src/filters/inspect.c:1784,1
    - Dst: dump_unregistered_sei
      Src: /src/gpac/src/filters/inspect.c:1788,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:1793,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1801,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 126
    argCount: 13
    argNames:
    - dump
    - av1
    - obu_ptr
    - obu_ptr_length
    - obu_type
    - obu_size
    - hdr_size
    - dump_crc
    - pctx
    - full_dump
    - sai_buffer
    - sai_buffer_size
    - offset_in_sample
    argTypes:
    - FILE*
    - AV1State*
    - u8*
    - u64
    - ObuType
    - u64
    - u32
    - Bool
    - PidCtx*
    - GF_InspectSampleAnalyzeMode
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1804
      start: 1658
    functionDepth: 10
    functionLinenumber: 1658
    functionLinenumberEnd: 1804
    functionName: gf_inspect_dump_obu_internal
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_av1_parse_obu
    - gf_av1_get_obu_name
    - gf_crc_32
    - gf_bs_set_logger
    - DUMP_OBU_INT2
    - gf_bs_new
    - DUMP_OBU_INT
    - dump_clli
    - dump_unregistered_sei
    - gf_av1_leb128_read
    - gf_bs_del
    - dump_time_code
    - inspect_printf
    - dump_t35
    - av1_dump_tile
    - dump_mdcv
    - inspect_dump_crypt
    - fprintf
    linkageType: ''
    returnType: u64
    signature: u64 gf_inspect_dump_obu_internal(FILE *dump, AV1State *av1, u8 *obu_ptr,
      u64 obu_ptr_length, ObuType obu_type, u64 obu_size, u32 hdr_size, Bool dump_crc,
      PidCtx *pctx, GF_InspectSampleAnalyzeMode full_dump, u8 *sai_buffer, u32 sai_buffer_size,
      u32 offset_in_sample)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1689
      start: 1688
    functionDepth: 0
    functionLinenumber: 1688
    functionLinenumberEnd: 1689
    functionName: DUMP_OBU_INT
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DUMP_OBU_INT(_v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _n
    - ','
    - _v
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1690
      start: 1689
    functionDepth: 0
    functionLinenumber: 1689
    functionLinenumberEnd: 1690
    functionName: DUMP_OBU_INT2
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DUMP_OBU_INT2(_n, _v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_inspect_dump_obu_internal
      Src: /src/gpac/src/filters/inspect.c:1810,1
    - Dst: inspect_get_analyze_mode
      Src: /src/gpac/src/filters/inspect.c:1810,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 11
    argNames:
    - dump
    - av1
    - obu_ptr
    - obu_ptr_length
    - obu_type
    - obu_size
    - hdr_size
    - dump_crc
    - sai_buffer
    - sai_buffer_size
    - offset_in_sample
    argTypes:
    - FILE*
    - AV1State*
    - u8*
    - u64
    - ObuType
    - u64
    - u32
    - Bool
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1811
      start: 1806
    functionDepth: 11
    functionLinenumber: 1806
    functionLinenumberEnd: 1811
    functionName: gf_inspect_dump_obu
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 1
    functionsReached:
    - inspect_get_analyze_mode
    - gf_inspect_dump_obu_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_inspect_dump_obu(FILE *dump, AV1State *av1, u8 *obu_ptr,
      u64 obu_ptr_length, ObuType obu_type, u64 obu_size, u32 hdr_size, Bool dump_crc,
      u8 *sai_buffer, u32 sai_buffer_size, u32 offset_in_sample)
  - BBCount: 59
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:1819,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:1822,1
    - Dst: gf_media_prores_parse_bs
      Src: /src/gpac/src/filters/inspect.c:1824,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:1825,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1828,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/inspect.c:1828,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1831,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/inspect.c:1833,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1836,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/inspect.c:1837,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1842,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1843,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1844,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1845,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1848,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1849,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1850,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1851,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1854,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1855,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1856,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1857,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1858,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1861,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1862,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1863,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1864,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1865,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1866,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1867,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1868,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1869,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1870,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1871,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1872,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1873,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1876,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1877,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1878,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1879,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1880,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1881,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1882,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1883,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1886,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1887,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1888,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1889,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1890,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1893,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1894,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1895,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1896,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1899,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1902,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1903,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1904,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1905,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1907,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1910,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/inspect.c:1910,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1913,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1916,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1918,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1921,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1924,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1927,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1930,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1933,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1935,1
    CyclomaticComplexity: 68
    EdgeCount: 68
    ICount: 207
    argCount: 5
    argNames:
    - dump
    - ptr
    - frame_size
    - dump_crc
    - pctx
    argTypes:
    - FILE*
    - u8*
    - u64
    - Bool
    - PidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1937
      start: 1813
    functionDepth: 3
    functionLinenumber: 1813
    functionLinenumberEnd: 1937
    functionName: gf_inspect_dump_prores_internal
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_media_prores_parse_bs
    - gf_4cc_to_str
    - gf_bs_new
    - gf_bs_del
    - inspect_printf
    - gf_error_to_string
    - gf_bs_reassign_buffer
    - gf_crc_32
    linkageType: ''
    returnType: void
    signature: void gf_inspect_dump_prores_internal(FILE *dump, u8 *ptr, u64 frame_size,
      Bool dump_crc, PidCtx *pctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_inspect_dump_prores_internal
      Src: /src/gpac/src/filters/inspect.c:1943,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - dump
    - ptr
    - frame_size
    - dump_crc
    argTypes:
    - FILE*
    - u8*
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1944
      start: 1939
    functionDepth: 4
    functionLinenumber: 1939
    functionLinenumberEnd: 1944
    functionName: gf_inspect_dump_prores
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 1
    functionsReached:
    - gf_inspect_dump_prores_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_inspect_dump_prores(FILE *dump, u8 *ptr, u64 frame_size,
      Bool dump_crc)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_opus_parse_packet_header
      Src: /src/gpac/src/filters/inspect.c:1958,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1961,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1962,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1964,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1966,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1968,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1971,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1972,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/inspect.c:1974,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1975,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1977,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1979,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/inspect.c:1979,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1981,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:1986,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 40
    argCount: 6
    argNames:
    - dump
    - ptr
    - size
    - channel_count
    - dump_crc
    - pctx
    argTypes:
    - FILE*
    - u8*
    - u32
    - u32
    - Bool
    - PidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1992
      start: 1946
    functionDepth: 3
    functionLinenumber: 1946
    functionLinenumberEnd: 1992
    functionName: gf_inspect_dump_opus_internal
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_opus_parse_packet_header
    - inspect_printf
    - gf_crc_32
    - fprintf
    linkageType: ''
    returnType: void
    signature: void gf_inspect_dump_opus_internal(FILE *dump, u8 *ptr, u32 size, u32
      channel_count, Bool dump_crc, PidCtx *pctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_inspect_dump_opus_internal
      Src: /src/gpac/src/filters/inspect.c:1998,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - dump
    - ptr
    - size
    - channel_count
    - dump_crc
    argTypes:
    - FILE*
    - u8*
    - u64
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1999
      start: 1994
    functionDepth: 4
    functionLinenumber: 1994
    functionLinenumberEnd: 1999
    functionName: gf_inspect_dump_opus
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 1
    functionsReached:
    - gf_inspect_dump_opus_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_inspect_dump_opus(FILE *dump, u8 *ptr, u64 size, u32 channel_count,
      Bool dump_crc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2049,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2050,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2051,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2052,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2053,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2055,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2056,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2058,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2059,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2060,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2061,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2062,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2063,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 3
    argNames:
    - dump
    - bs
    - indent
    argTypes:
    - FILE*
    - GF_BitStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2064
      start: 2046
    functionDepth: 5
    functionLinenumber: 2046
    functionLinenumberEnd: 2064
    functionName: dump_mha_config
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - inspect_printf
    linkageType: ''
    returnType: void
    signature: void dump_mha_config(FILE *dump, GF_BitStream *bs, const char *indent)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2068,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2069,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2070,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2071,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - dump
    - bs
    - indent
    argTypes:
    - FILE*
    - GF_BitStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2072
      start: 2065
    functionDepth: 5
    functionLinenumber: 2065
    functionLinenumberEnd: 2072
    functionName: gf_inspect_dump_mha_frame
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - inspect_printf
    linkageType: ''
    returnType: void
    signature: void gf_inspect_dump_mha_frame(FILE *dump, GF_BitStream *bs, const
      char *indent)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:2076,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2079,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/inspect.c:2081,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/inspect.c:2085,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/inspect.c:2086,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/inspect.c:2087,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/inspect.c:2089,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2096,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/inspect.c:2098,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2101,1
    - Dst: dump_mha_config
      Src: /src/gpac/src/filters/inspect.c:2102,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2103,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2106,1
    - Dst: gf_inspect_dump_mha_frame
      Src: /src/gpac/src/filters/inspect.c:2107,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2108,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2111,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2112,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/inspect.c:2112,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2114,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2117,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2120,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2120,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2123,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/inspect.c:2123,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2127,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2129,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2129,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2130,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2133,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/inspect.c:2136,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/inspect.c:2137,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/inspect.c:2139,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2142,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 55
    argCount: 5
    argNames:
    - dump
    - ptr
    - frame_size
    - dump_crc
    - pctx
    argTypes:
    - FILE*
    - u8*
    - u64
    - Bool
    - PidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2143
      start: 2073
    functionDepth: 7
    functionLinenumber: 2073
    functionLinenumberEnd: 2143
    functionName: gf_inspect_dump_mhas
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_inspect_dump_mha_frame
    - gf_bs_align
    - gf_bs_get_position
    - inspect_printf
    - gf_bs_read_int
    - dump_mha_config
    - gf_bs_available
    - gf_bs_read_u8
    - gf_bs_reassign_buffer
    - GF_ARRAY_LENGTH
    - gf_bs_skip_bytes
    - gf_mpegh_escaped_value
    linkageType: ''
    returnType: void
    signature: void gf_inspect_dump_mhas(FILE *dump, u8 *ptr, u64 frame_size, Bool
      dump_crc, PidCtx *pctx)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:2151,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:2154,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/inspect.c:2166,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/inspect.c:2167,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/inspect.c:2168,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:2171,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/inspect.c:2173,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:2174,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/inspect.c:2174,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/inspect.c:2180,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2182,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 29
    argCount: 4
    argNames:
    - ctx
    - streamtype
    - concat
    - for_service_id
    argTypes:
    - GF_InspectCtx*
    - u32
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2185
      start: 2148
    functionDepth: 5
    functionLinenumber: 2148
    functionLinenumberEnd: 2185
    functionName: finalize_dump
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_list_get
    - gf_feof
    - gf_fseek
    - gf_fread
    - GF_LOG
    - gf_fwrite
    - gf_list_count
    - inspect_printf
    - gf_error_to_string
    linkageType: ''
    returnType: void
    signature: void finalize_dump(GF_InspectCtx *ctx, u32 streamtype, Bool concat,
      u32 for_service_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:2191,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:2193,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_InspectCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2198
      start: 2189
    functionDepth: 1
    functionLinenumber: 2189
    functionLinenumberEnd: 2198
    functionName: next_service_to_dump
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: u32
    signature: u32 next_service_to_dump(GF_InspectCtx *ctx)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/inspect.c:2203,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:2208,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:2209,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:2210,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/inspect.c:2212,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2216,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:2216,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/inspect.c:2217,1
    - Dst: inspect_dump_stats
      Src: /src/gpac/src/filters/inspect.c:2226,1
    - Dst: next_service_to_dump
      Src: /src/gpac/src/filters/inspect.c:2229,1
    - Dst: finalize_dump
      Src: /src/gpac/src/filters/inspect.c:2230,1
    - Dst: finalize_dump
      Src: /src/gpac/src/filters/inspect.c:2231,1
    - Dst: finalize_dump
      Src: /src/gpac/src/filters/inspect.c:2232,1
    - Dst: finalize_dump
      Src: /src/gpac/src/filters/inspect.c:2233,1
    - Dst: finalize_dump
      Src: /src/gpac/src/filters/inspect.c:2234,1
    - Dst: finalize_dump
      Src: /src/gpac/src/filters/inspect.c:2235,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:2241,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/inspect.c:2242,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:2245,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:2246,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:2247,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filters/inspect.c:2249,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/inspect.c:2250,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:2251,1
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/filters/inspect.c:2254,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:2255,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:2256,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/inspect.c:2258,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2261,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/inspect.c:2265,1
    - Dst: gf_fflush
      Src: /src/gpac/src/filters/inspect.c:2266,1
    - Dst: gf_ferror
      Src: /src/gpac/src/filters/inspect.c:2267,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/inspect.c:2270,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 70
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2273
      start: 2200
    functionDepth: 6
    functionLinenumber: 2200
    functionLinenumberEnd: 2273
    functionName: inspect_finalize
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_free
    - inspect_dump_stats
    - gf_list_count
    - gf_fopen
    - gf_fflush
    - gf_odf_av1_cfg_del
    - gf_sys_is_cov_mode
    - next_service_to_dump
    - finalize_dump
    - gf_filter_get_udta
    - gf_odf_vp_cfg_del
    - gf_list_del
    - gf_fclose
    - gf_list_pop_front
    - gf_bs_del
    - gf_av1_reset_state
    - strcmp
    - inspect_printf
    - gf_ferror
    linkageType: ''
    returnType: void
    signature: void inspect_finalize(GF_Filter *filter)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2281,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2283,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:2286,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:2288,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2291,1
    - Dst: atoi
      Src: /src/gpac/src/filters/inspect.c:2295,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:2297,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:2298,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2299,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:2300,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2303,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:2304,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2306,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:2307,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2309,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:2312,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:2313,1
    - Dst: DUMP_ATT_FRAC
      Src: /src/gpac/src/filters/inspect.c:2315,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2319,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2321,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 37
    argCount: 5
    argNames:
    - ctx
    - pctx
    - dump
    - pname
    - att
    argTypes:
    - GF_InspectCtx*
    - PidCtx*
    - FILE*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2323
      start: 2275
    functionDepth: 5
    functionLinenumber: 2275
    functionLinenumberEnd: 2323
    functionName: dump_temi_loc
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - DUMP_ATT_D
    - gf_bs_read_u32
    - gf_bs_new
    - DUMP_ATT_FRAC
    - DUMP_ATT_STR
    - atoi
    - inspect_printf
    - gf_bs_read_int
    - gf_bs_read_u8
    - gf_bs_reassign_buffer
    linkageType: ''
    returnType: void
    signature: void dump_temi_loc(GF_InspectCtx *ctx, PidCtx *pctx, FILE *dump, const
      char *pname, const GF_PropertyValue *att)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2330,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2332,1
    - Dst: atoi
      Src: /src/gpac/src/filters/inspect.c:2334,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:2336,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:2338,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:2340,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:2341,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:2342,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/inspect.c:2343,1
    - Dst: DUMP_ATT_LLU
      Src: /src/gpac/src/filters/inspect.c:2344,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/inspect.c:2345,1
    - Dst: DUMP_ATT_LLU
      Src: /src/gpac/src/filters/inspect.c:2346,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2348,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:2349,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2351,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:2352,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2354,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:2355,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2357,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2358,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/inspect.c:2361,1
    - Dst: DUMP_ATT_LLU
      Src: /src/gpac/src/filters/inspect.c:2362,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2365,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2367,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 34
    argCount: 5
    argNames:
    - ctx
    - pctx
    - dump
    - pname
    - att
    argTypes:
    - GF_InspectCtx*
    - PidCtx*
    - FILE*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2369
      start: 2325
    functionDepth: 5
    functionLinenumber: 2325
    functionLinenumberEnd: 2369
    functionName: dump_temi_time
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - DUMP_ATT_D
    - gf_bs_read_u32
    - gf_bs_new
    - DUMP_ATT_LLU
    - atoi
    - inspect_printf
    - gf_bs_read_int
    - gf_bs_read_u64
    - gf_bs_reassign_buffer
    linkageType: ''
    returnType: void
    signature: void dump_temi_time(GF_InspectCtx *ctx, PidCtx *pctx, FILE *dump, const
      char *pname, const GF_PropertyValue *att)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2373,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2374,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2376,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/inspect.c:2377,1
    - Dst: DUMP_ATT_LLU
      Src: /src/gpac/src/filters/inspect.c:2378,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2380,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2382,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - dump
    - bs
    argTypes:
    - GF_InspectCtx*
    - FILE*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2383
      start: 2371
    functionDepth: 6
    functionLinenumber: 2371
    functionLinenumberEnd: 2383
    functionName: scte35_parse_splice_time
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 2
    functionsReached:
    - gf_bs_read_int
    - DUMP_ATT_LLU
    - gf_bs_read_long_int
    - inspect_printf
    linkageType: ''
    returnType: void
    signature: void scte35_parse_splice_time(GF_InspectCtx *ctx, FILE *dump, GF_BitStream
      *bs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2387,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2389,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:2389,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2390,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2391,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2392,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2392,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2393,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2395,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2396,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2397,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2398,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2399,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2400,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2402,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2402,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2403,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2403,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2404,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2404,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2405,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2405,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2407,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2410,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2411,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2413,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2413,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2414,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2415,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2415,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2416,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/inspect.c:2416,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2420,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/inspect.c:2420,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2423,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2424,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/inspect.c:2425,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/inspect.c:2426,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2428,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2429,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2430,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2430,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2431,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2431,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2435,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2435,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2436,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2436,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2439,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/inspect.c:2443,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/inspect.c:2444,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2446,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2448,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2448,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2449,1
    - Dst: EIDR
      Src: /src/gpac/src/filters/inspect.c:2459,1
    - Dst: EIDR
      Src: /src/gpac/src/filters/inspect.c:2461,1
    - Dst: Id
      Src: /src/gpac/src/filters/inspect.c:2463,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/inspect.c:2468,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2471,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2473,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 51
    argCount: 2
    argNames:
    - dump
    - bs
    argTypes:
    - FILE*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2475
      start: 2385
    functionDepth: 7
    functionLinenumber: 2385
    functionLinenumberEnd: 2475
    functionName: scte35_parse_segmentation_descriptor
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 1
    functionsReached:
    - EIDR
    - gf_bs_read_u32
    - gf_bs_seek
    - Id
    - gf_bs_read_long_int
    - gf_bs_get_position
    - gf_bs_read_int
    - inspect_printf
    - gf_bs_read_u8
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: void
    signature: void scte35_parse_segmentation_descriptor(FILE *dump, GF_BitStream
      *bs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/inspect.c:2479,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2482,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2483,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:2485,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/inspect.c:2488,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:2489,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:2493,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:2495,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/inspect.c:2495,1
    - Dst: scte35_parse_segmentation_descriptor
      Src: /src/gpac/src/filters/inspect.c:2503,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - dump
    - bs
    argTypes:
    - FILE*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2510
      start: 2477
    functionDepth: 8
    functionLinenumber: 2477
    functionLinenumberEnd: 2510
    functionName: scte35_parse_splice_descriptor
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_bs_read_u32
    - GF_LOG
    - scte35_parse_segmentation_descriptor
    - gf_bs_read_u8
    - gf_bs_available
    linkageType: ''
    returnType: u8
    signature: u8 scte35_parse_splice_descriptor(FILE *dump, GF_BitStream *bs)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2514,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2516,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2517,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2518,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2520,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:2521,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2523,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/filters/inspect.c:2525,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:2526,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2527,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2531,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:2532,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2533,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2535,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/inspect.c:2536,1
    - Dst: DUMP_ATT_LLU
      Src: /src/gpac/src/filters/inspect.c:2537,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:2542,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:2544,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:2546,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2552,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2553,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:2554,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2556,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2558,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2559,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/inspect.c:2560,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2565,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:2566,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:2567,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2568,1
    - Dst: DUMP_ATT_BOOL
      Src: /src/gpac/src/filters/inspect.c:2569,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2570,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2572,1
    - Dst: DUMP_ATT_BOOL
      Src: /src/gpac/src/filters/inspect.c:2573,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2574,1
    - Dst: DUMP_ATT_BOOL
      Src: /src/gpac/src/filters/inspect.c:2575,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2576,1
    - Dst: DUMP_ATT_BOOL
      Src: /src/gpac/src/filters/inspect.c:2577,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2578,1
    - Dst: DUMP_ATT_BOOL
      Src: /src/gpac/src/filters/inspect.c:2579,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2580,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2581,1
    - Dst: scte35_parse_splice_time
      Src: /src/gpac/src/filters/inspect.c:2584,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2588,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:2589,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2591,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2592,1
    - Dst: scte35_parse_splice_time
      Src: /src/gpac/src/filters/inspect.c:2594,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2596,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2601,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2602,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2603,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/inspect.c:2604,1
    - Dst: DUMP_ATT_LLU
      Src: /src/gpac/src/filters/inspect.c:2605,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2606,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/inspect.c:2608,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2609,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2610,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2612,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2614,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/inspect.c:2616,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2620,1
    - Dst: scte35_parse_splice_time
      Src: /src/gpac/src/filters/inspect.c:2621,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2622,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2625,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:2626,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:2627,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/inspect.c:2628,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2631,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:2632,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/inspect.c:2633,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2636,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:2637,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/inspect.c:2638,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2641,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:2642,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/inspect.c:2643,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2646,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:2647,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/inspect.c:2648,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/inspect.c:2652,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/inspect.c:2652,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2655,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/inspect.c:2656,1
    - Dst: scte35_parse_splice_descriptor
      Src: /src/gpac/src/filters/inspect.c:2658,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/inspect.c:2662,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2666,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 112
    argCount: 3
    argNames:
    - ctx
    - dump
    - bs
    argTypes:
    - GF_InspectCtx*
    - FILE*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2667
      start: 2512
    functionDepth: 9
    functionLinenumber: 2512
    functionLinenumberEnd: 2667
    functionName: scte35_dump
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_size
    - DUMP_ATT_U
    - DUMP_ATT_BOOL
    - gf_bs_read_u16
    - gf_assert
    - gf_bs_read_u32
    - scte35_parse_splice_descriptor
    - DUMP_ATT_STR
    - gf_bs_skip_bytes
    - GF_LOG
    - gf_bs_get_position
    - gf_bs_read_u8
    - DUMP_ATT_D
    - gf_bs_seek
    - DUMP_ATT_LLU
    - gf_bs_read_long_int
    - gf_bs_read_int
    - inspect_printf
    - scte35_parse_splice_time
    linkageType: ''
    returnType: void
    signature: void scte35_dump(GF_InspectCtx *ctx, FILE *dump, GF_BitStream *bs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: scte35_dump
      Src: /src/gpac/src/filters/inspect.c:2673,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - dump
    - bs
    argTypes:
    - FILE*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2674
      start: 2669
    functionDepth: 10
    functionLinenumber: 2669
    functionLinenumberEnd: 2674
    functionName: scte35_dump_xml
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 1
    functionsReached:
    - scte35_dump
    linkageType: ''
    returnType: void
    signature: void scte35_dump_xml(FILE *dump, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2679,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2681,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:2685,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:2687,1
    - Dst: scte35_dump
      Src: /src/gpac/src/filters/inspect.c:2689,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2692,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2694,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 5
    argNames:
    - ctx
    - pctx
    - dump
    - pname
    - att
    argTypes:
    - GF_InspectCtx*
    - PidCtx*
    - FILE*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2696
      start: 2676
    functionDepth: 10
    functionLinenumber: 2676
    functionLinenumberEnd: 2696
    functionName: dump_scte35_info_m2ts_section
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_bs_reassign_buffer
    - inspect_printf
    - gf_bs_new
    - scte35_dump
    linkageType: ''
    returnType: void
    signature: void dump_scte35_info_m2ts_section(GF_InspectCtx *ctx, PidCtx *pctx,
      FILE *dump, const char *pname, const GF_PropertyValue *att)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2704,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2705,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2706,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/inspect.c:2707,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:2708,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2709,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2711,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:2714,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/inspect.c:2715,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/inspect.c:2716,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/inspect.c:2717,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2718,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2719,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2720,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2721,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2722,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2723,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2725,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - dump
    - bs
    argTypes:
    - FILE*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2726
      start: 2699
    functionDepth: 5
    functionLinenumber: 2699
    functionLinenumberEnd: 2726
    functionName: gf_inspect_dump_truehd_frame
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - gf_bs_read_u32
    - inspect_printf
    - gf_bs_read_u16
    linkageType: ''
    returnType: void
    signature: void gf_inspect_dump_truehd_frame(FILE *dump, GF_BitStream *bs)
  - BBCount: 82
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filters/inspect.c:2734,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/inspect.c:2737,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:2739,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:2739,1
    - Dst: strstr
      Src: /src/gpac/src/filters/inspect.c:2746,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/inspect.c:2766,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/inspect.c:2775,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:2776,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:2778,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/inspect.c:2779,1
    - Dst: strstr
      Src: /src/gpac/src/filters/inspect.c:2779,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:2788,1
    - Dst: dump_clli
      Src: /src/gpac/src/filters/inspect.c:2789,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:2790,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:2794,1
    - Dst: dump_mdcv
      Src: /src/gpac/src/filters/inspect.c:2796,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:2797,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2809,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filters/inspect.c:2809,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2810,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2813,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filters/inspect.c:2813,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2815,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2825,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/inspect.c:2831,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2832,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2834,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2839,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2841,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2843,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2850,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2852,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2854,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/inspect.c:2894,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2902,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filters/inspect.c:2902,1
    - Dst: strpbrk
      Src: /src/gpac/src/filters/inspect.c:2904,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/inspect.c:2906,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2914,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2916,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/inspect.c:2916,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2918,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2923,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/filters/inspect.c:2924,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/filters/inspect.c:2927,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2929,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filters/inspect.c:2929,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:2931,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/inspect.c:2932,1
    - Dst: dump_scte35_info_m2ts_section
      Src: /src/gpac/src/filters/inspect.c:2933,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2939,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/inspect.c:2939,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filters/inspect.c:2939,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2943,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/inspect.c:2943,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filters/inspect.c:2943,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/inspect.c:2945,1
    - Dst: dump_scte35_info_m2ts_section
      Src: /src/gpac/src/filters/inspect.c:2946,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/inspect.c:2948,1
    - Dst: dump_temi_loc
      Src: /src/gpac/src/filters/inspect.c:2949,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/inspect.c:2951,1
    - Dst: dump_temi_time
      Src: /src/gpac/src/filters/inspect.c:2952,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2956,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/inspect.c:2956,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2962,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2964,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/inspect.c:2964,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2966,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2972,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2973,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2976,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filters/inspect.c:2976,1
    - Dst: format_duration
      Src: /src/gpac/src/filters/inspect.c:2979,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2981,1
    CyclomaticComplexity: 90
    EdgeCount: 90
    ICount: 223
    argCount: 6
    argNames:
    - ctx
    - dump
    - p4cc
    - pname
    - att
    - pctx
    argTypes:
    - GF_InspectCtx*
    - FILE*
    - u32
    - char*
    - GF_PropertyValue*
    - PidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2983
      start: 2729
    functionDepth: 11
    functionLinenumber: 2729
    functionLinenumberEnd: 2983
    functionName: inspect_dump_property
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_free
    - dump_clli
    - gf_bs_new
    - strpbrk
    - gf_xml_dump_string
    - gf_props_dump
    - dump_mdcv
    - gf_4cc_to_str
    - gf_strdup
    - memcpy
    - dump_scte35_info_m2ts_section
    - strncmp
    - dump_temi_time
    - format_duration
    - gf_props_4cc_get_name
    - gf_sys_is_test_mode
    - strstr
    - strnicmp
    - gf_filter_pid_get_property
    - gf_bs_del
    - strcmp
    - inspect_printf
    - dump_temi_loc
    - gf_props_get_type_name
    linkageType: ''
    returnType: void
    signature: void inspect_dump_property(GF_InspectCtx *ctx, FILE *dump, u32 p4cc,
      const char *pname, const GF_PropertyValue *att, PidCtx *pctx)
  - BBCount: 74
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/inspect.c:2991,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/inspect.c:2994,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3004,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3010,1
    - Dst: strchr
      Src: /src/gpac/src/filters/inspect.c:3014,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3016,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3024,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3024,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3024,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3025,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3025,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/inspect.c:3026,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3026,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3027,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3033,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3033,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3034,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/inspect.c:3035,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3036,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3037,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3039,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:3040,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3041,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3042,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3044,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/inspect.c:3045,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3046,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3047,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3051,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3055,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:3056,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3057,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3058,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3062,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3066,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/inspect.c:3067,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:3068,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3070,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3071,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3074,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3074,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/inspect.c:3074,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3075,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/inspect.c:3077,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3078,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3079,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3080,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3081,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3083,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3083,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/inspect.c:3084,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3086,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3088,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3091,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3091,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/inspect.c:3091,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3092,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3092,1
    - Dst: gf_filter_pck_get_corrupted
      Src: /src/gpac/src/filters/inspect.c:3092,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3093,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3093,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/inspect.c:3093,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3094,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/inspect.c:3095,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3096,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3097,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3099,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3099,1
    - Dst: gf_filter_pck_get_roll_info
      Src: /src/gpac/src/filters/inspect.c:3099,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3100,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3100,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/inspect.c:3100,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3101,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3101,1
    - Dst: gf_filter_pck_get_carousel_version
      Src: /src/gpac/src/filters/inspect.c:3101,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3102,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3102,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3103,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3103,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3104,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3104,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/inspect.c:3104,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3105,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3105,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3105,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3106,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3106,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3107,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/filters/inspect.c:3109,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3111,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3115,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3119,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/inspect.c:3120,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3122,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3124,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/inspect.c:3125,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3128,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3130,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/inspect.c:3131,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3134,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3136,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/inspect.c:3137,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3139,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3141,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3141,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3141,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3141,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:3142,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3143,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3145,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/inspect.c:3146,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/filters/inspect.c:3148,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3156,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3156,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3157,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3159,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3162,1
    - Dst: gf_filter_pck_get_clock_type
      Src: /src/gpac/src/filters/inspect.c:3163,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3164,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3165,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3165,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3165,1
    - Dst: gf_filter_pid_get_clock_info
      Src: /src/gpac/src/filters/inspect.c:3169,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/inspect.c:3171,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/inspect.c:3172,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/inspect.c:3182,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/inspect.c:3183,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3184,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/inspect.c:3185,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3188,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:3189,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3194,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3196,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3198,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3201,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/inspect.c:3204,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filters/inspect.c:3208,1
    - Dst: strlen
      Src: /src/gpac/src/filters/inspect.c:3209,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/inspect.c:3209,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:3212,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/inspect.c:3214,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3217,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filters/inspect.c:3217,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3219,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3222,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3223,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filters/inspect.c:3223,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3225,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/inspect.c:3226,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3230,1
    - Dst: gf_format_timecode
      Src: /src/gpac/src/filters/inspect.c:3230,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3232,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filters/inspect.c:3237,1
    - Dst: strlen
      Src: /src/gpac/src/filters/inspect.c:3238,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/inspect.c:3238,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/inspect.c:3241,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/inspect.c:3243,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3246,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filters/inspect.c:3246,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3248,1
    CyclomaticComplexity: 99
    EdgeCount: 99
    ICount: 244
    argCount: 6
    argNames:
    - filter
    - ctx
    - dump
    - pck
    - pctx
    - pck_num
    argTypes:
    - GF_Filter*
    - GF_InspectCtx*
    - FILE*
    - GF_FilterPacket*
    - PidCtx*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3255
      start: 2985
    functionDepth: 3
    functionLinenumber: 2985
    functionLinenumberEnd: 3255
    functionName: inspect_dump_packet_fmt
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_props_dump
    - gf_filter_pck_get_carousel_version
    - gf_filter_pck_get_clock_type
    - gf_filter_pck_get_seek_flag
    - strchr
    - gf_filter_get_name
    - gf_assert
    - gf_filter_pck_get_framing
    - gf_filter_pck_get_corrupted
    - gf_filter_pck_get_roll_info
    - strncmp
    - gf_filter_pck_get_dependency_flags
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_duration
    - gf_crc_32
    - gf_filter_pid_get_timescale
    - gf_filter_pck_get_property
    - gf_filter_pid_get_property_str
    - gf_props_get_id
    - gf_filter_pck_get_property_str
    - gf_utf8_is_legal
    - gf_filter_pid_get_clock_info
    - gf_filter_pck_get_data
    - gf_filter_pck_get_crypt_flags
    - gf_filter_pck_get_interlaced
    - gf_filter_pck_get_timescale
    - gf_filter_pck_get_sap
    - gf_timestamp_rescale
    - strlen
    - gf_filter_pid_get_property
    - strcmp
    - gf_filter_pck_get_byte_offset
    - inspect_printf
    - GF_4CC
    - gf_filter_pck_get_dts
    - gf_format_timecode
    linkageType: ''
    returnType: void
    signature: void inspect_dump_packet_fmt(GF_Filter *filter, GF_InspectCtx *ctx,
      FILE *dump, GF_FilterPacket *pck, PidCtx *pctx, u64 pck_num)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ftype
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3269
      start: 3261
    functionDepth: 0
    functionLinenumber: 3261
    functionLinenumberEnd: 3269
    functionName: get_frame_type_name
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *get_frame_type_name(u32 ftype)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_m4v_parser_new
      Src: /src/gpac/src/filters/inspect.c:3277,1
    - Dst: gf_m4v_parser_set_inspect
      Src: /src/gpac/src/filters/inspect.c:3279,1
    - Dst: gf_m4v_parse_frame
      Src: /src/gpac/src/filters/inspect.c:3283,1
    - Dst: gf_m4v_parser_get_obj_type
      Src: /src/gpac/src/filters/inspect.c:3287,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3289,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3293,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3296,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3298,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3300,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3302,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3307,1
    - Dst: get_frame_type_name
      Src: /src/gpac/src/filters/inspect.c:3307,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3310,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3314,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3318,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3321,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3326,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3328,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3331,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3335,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3338,1
    - Dst: get_frame_type_name
      Src: /src/gpac/src/filters/inspect.c:3338,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3341,1
    - Dst: gf_m4v_get_object_start
      Src: /src/gpac/src/filters/inspect.c:3344,1
    - Dst: dump_udta_m2v
      Src: /src/gpac/src/filters/inspect.c:3346,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3351,1
    - Dst: gf_m4v_parser_del
      Src: /src/gpac/src/filters/inspect.c:3354,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 70
    argCount: 4
    argNames:
    - pctx
    - data
    - size
    - dump
    argTypes:
    - PidCtx*
    - char*
    - u32
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3355
      start: 3270
    functionDepth: 4
    functionLinenumber: 3270
    functionLinenumberEnd: 3355
    functionName: inspect_dump_mpeg124
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_m4v_parser_new
    - gf_m4v_parser_set_inspect
    - gf_m4v_parse_frame
    - gf_m4v_get_object_start
    - dump_udta_m2v
    - inspect_printf
    - gf_m4v_parser_get_obj_type
    - gf_m4v_parser_del
    - get_frame_type_name
    linkageType: ''
    returnType: void
    signature: void inspect_dump_mpeg124(PidCtx *pctx, char *data, u32 size, FILE
      *dump)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:3373,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:3376,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:3379,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/inspect.c:3380,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3389,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:3392,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:3393,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:3394,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:3395,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:3396,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3454,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/inspect.c:3456,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:3458,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 74
    argCount: 10
    argNames:
    - data
    - size
    - tmcd_flags
    - tc_num
    - tc_den
    - tmcd_fpt
    - szFmt
    - bs
    - force_ff
    - dump
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    - u32
    - char[]
    - GF_BitStream*
    - Bool
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3459
      start: 3358
    functionDepth: 7
    functionLinenumber: 3358
    functionLinenumberEnd: 3459
    functionName: inspect_format_tmcd_internal
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_bs_seek
    - gf_bs_new
    - sprintf
    - gf_bs_del
    - inspect_printf
    - gf_bs_read_int
    - gf_bs_read_u8
    - gf_bs_reassign_buffer
    linkageType: ''
    returnType: void
    signature: void inspect_format_tmcd_internal(const u8 *data, u32 size, u32 tmcd_flags,
      u32 tc_num, u32 tc_den, u32 tmcd_fpt, char szFmt[100], GF_BitStream *bs, Bool
      force_ff, FILE *dump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: inspect_format_tmcd_internal
      Src: /src/gpac/src/filters/inspect.c:3465,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - data
    - size
    - tmcd_flags
    - tc_num
    - tc_den
    - tmcd_fpt
    - szFmt
    argTypes:
    - u8*
    - u32
    - u32
    - u32
    - u32
    - u32
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3466
      start: 3462
    functionDepth: 8
    functionLinenumber: 3462
    functionLinenumberEnd: 3466
    functionName: gf_inspect_format_timecode
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 1
    functionsReached:
    - inspect_format_tmcd_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_inspect_format_timecode(const u8 *data, u32 size, u32
      tmcd_flags, u32 tc_num, u32 tc_den, u32 tmcd_fpt, char szFmt[100])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: inspect_format_tmcd_internal
      Src: /src/gpac/src/filters/inspect.c:3471,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ctx
    - pctx
    - data
    - size
    - dump
    argTypes:
    - GF_InspectCtx*
    - PidCtx*
    - u8*
    - u32
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3472
      start: 3469
    functionDepth: 8
    functionLinenumber: 3469
    functionLinenumberEnd: 3472
    functionName: inspect_dump_tmcd
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - inspect_format_tmcd_internal
    linkageType: ''
    returnType: void
    signature: void inspect_dump_tmcd(GF_InspectCtx *ctx, PidCtx *pctx, const u8 *data,
      u32 size, FILE *dump)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:3477,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/inspect.c:3479,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/filters/inspect.c:3481,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:3483,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/filters/inspect.c:3486,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/inspect.c:3488,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:3491,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 5
    argNames:
    - ctx
    - pctx
    - data
    - size
    - dump
    argTypes:
    - GF_InspectCtx*
    - PidCtx*
    - u8*
    - u32
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3493
      start: 3474
    functionDepth: 4
    functionLinenumber: 3474
    functionLinenumberEnd: 3493
    functionName: inspect_dump_boxes
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump
    - gf_bs_new
    - gf_isom_box_del
    - GF_LOG
    - gf_bs_del
    - gf_bs_available
    - gf_isom_box_parse
    linkageType: ''
    returnType: void
    signature: void inspect_dump_boxes(GF_InspectCtx *ctx, PidCtx *pctx, const u8
      *data, u32 size, FILE *dump)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:3502,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:3508,1
    - Dst: gf_vp9_parse_superframe
      Src: /src/gpac/src/filters/inspect.c:3512,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3514,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3516,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:3517,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3521,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/inspect.c:3523,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/inspect.c:3526,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3529,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3531,1
    - Dst: gf_vp9_parse_sample
      Src: /src/gpac/src/filters/inspect.c:3532,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3533,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3536,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/inspect.c:3537,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3539,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/inspect.c:3539,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3543,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3548,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:3549,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 7
    argNames:
    - ctx
    - dump
    - ptr
    - frame_size
    - dump_crc
    - pctx
    - vpversion
    argTypes:
    - GF_InspectCtx*
    - FILE*
    - u8*
    - u64
    - Bool
    - PidCtx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3550
      start: 3495
    functionDepth: 7
    functionLinenumber: 3495
    functionLinenumberEnd: 3550
    functionName: inspect_dump_vpx
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_bs_set_logger
    - gf_bs_seek
    - gf_vp9_parse_sample
    - gf_bs_get_position
    - gf_vp9_parse_superframe
    - inspect_printf
    - gf_error_to_string
    - gf_bs_reassign_buffer
    linkageType: ''
    returnType: void
    signature: void inspect_dump_vpx(GF_InspectCtx *ctx, FILE *dump, u8 *ptr, u64
      frame_size, Bool dump_crc, PidCtx *pctx, u32 vpversion)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:3557,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:3558,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:3563,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3565,1
    - Dst: memset
      Src: /src/gpac/src/filters/inspect.c:3566,1
    - Dst: gf_ac3_parser_bs
      Src: /src/gpac/src/filters/inspect.c:3567,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3569,1
    - Dst: gf_ac3_get_bitrate
      Src: /src/gpac/src/filters/inspect.c:3569,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3571,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3575,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:3576,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 7
    argNames:
    - ctx
    - dump
    - ptr
    - frame_size
    - dump_crc
    - pctx
    - is_ec3
    argTypes:
    - GF_InspectCtx*
    - FILE*
    - u8*
    - u64
    - Bool
    - PidCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3577
      start: 3552
    functionDepth: 3
    functionLinenumber: 3552
    functionLinenumberEnd: 3577
    functionName: inspect_dump_ac3_eac3
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_bs_set_logger
    - gf_bs_new
    - gf_ac3_parser_bs
    - memset
    - inspect_printf
    - gf_bs_reassign_buffer
    - gf_ac3_get_bitrate
    linkageType: ''
    returnType: void
    signature: void inspect_dump_ac3_eac3(GF_InspectCtx *ctx, FILE *dump, u8 *ptr,
      u64 frame_size, Bool dump_crc, PidCtx *pctx, Bool is_ec3)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/inspect.c:3590,1
    - Dst: gf_filter_pck_get_clock_type
      Src: /src/gpac/src/filters/inspect.c:3591,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/inspect.c:3593,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3596,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:3599,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3601,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:3605,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3606,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3607,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/inspect.c:3609,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3610,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/inspect.c:3612,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3613,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/inspect.c:3615,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3617,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3619,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/inspect.c:3621,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3622,1
    - Dst: gf_filter_pck_get_corrupted
      Src: /src/gpac/src/filters/inspect.c:3623,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3624,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/inspect.c:3625,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3626,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/inspect.c:3627,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3628,1
    - Dst: gf_filter_pck_get_carousel_version
      Src: /src/gpac/src/filters/inspect.c:3629,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3630,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3632,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3634,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 50
    argCount: 6
    argNames:
    - ctx
    - dump
    - pck
    - pid_idx
    - pck_num
    - pctx
    argTypes:
    - GF_InspectCtx*
    - FILE*
    - GF_FilterPacket*
    - u32
    - u64
    - PidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3635
      start: 3581
    functionDepth: 3
    functionLinenumber: 3581
    functionLinenumberEnd: 3635
    functionName: inspect_dump_packet_as_info
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_seek_flag
    - gf_filter_pck_get_data
    - gf_filter_pck_get_corrupted
    - gf_filter_pck_get_crypt_flags
    - gf_filter_pck_get_sap
    - gf_filter_pck_get_carousel_version
    - gf_filter_pck_get_interlaced
    - inspect_printf
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_clock_type
    - gf_filter_pck_get_frame_interface
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: void
    signature: void inspect_dump_packet_as_info(GF_InspectCtx *ctx, FILE *dump, GF_FilterPacket
      *pck, u32 pid_idx, u64 pck_num, PidCtx *pctx)
  - BBCount: 105
    BranchProfiles: []
    Callsites:
    - Dst: inspect_dump_packet_as_info
      Src: /src/gpac/src/filters/inspect.c:3652,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/inspect.c:3656,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/inspect.c:3657,1
    - Dst: gf_filter_pck_get_clock_type
      Src: /src/gpac/src/filters/inspect.c:3659,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/inspect.c:3661,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3665,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3667,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3669,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:3672,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3674,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3675,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3676,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3677,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3679,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3680,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3685,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3686,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3687,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3688,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3689,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3691,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3692,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3693,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3694,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3695,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/inspect.c:3697,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:3698,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:3701,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:3702,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:3705,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/inspect.c:3705,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/inspect.c:3706,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:3708,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:3710,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/inspect.c:3710,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:3712,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/inspect.c:3712,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:3713,1
    - Dst: gf_filter_pck_get_corrupted
      Src: /src/gpac/src/filters/inspect.c:3713,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:3714,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/inspect.c:3714,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/inspect.c:3716,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:3717,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:3720,1
    - Dst: gf_filter_pck_get_roll_info
      Src: /src/gpac/src/filters/inspect.c:3720,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:3721,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/inspect.c:3721,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:3722,1
    - Dst: gf_filter_pck_get_carousel_version
      Src: /src/gpac/src/filters/inspect.c:3722,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:3725,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/inspect.c:3727,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:3728,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:3729,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:3730,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:3731,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:3736,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3738,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3740,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3745,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3747,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/filters/inspect.c:3752,1
    - Dst: GF_FilterFrameInterface*::get_gl_texture
      Src: /src/gpac/src/filters/inspect.c:3754,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3756,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3757,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/inspect.c:3761,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3766,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3770,1
    - Dst: DUMP_ATT_X
      Src: /src/gpac/src/filters/inspect.c:3773,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/inspect.c:3773,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3779,1
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/src/filters/inspect.c:3786,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3788,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/inspect.c:3791,1
    - Dst: inspect_dump_property
      Src: /src/gpac/src/filters/inspect.c:3793,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3800,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3804,1
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/src/filters/inspect.c:3811,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/inspect.c:3813,1
    - Dst: inspect_dump_property
      Src: /src/gpac/src/filters/inspect.c:3815,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3825,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3826,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/inspect.c:3837,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3845,1
    - Dst: inspect_get_nal_size
      Src: /src/gpac/src/filters/inspect.c:3848,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3852,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3855,1
    - Dst: gf_inspect_dump_nalu_internal
      Src: /src/gpac/src/filters/inspect.c:3856,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:3865,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/inspect.c:3868,1
    - Dst: gf_inspect_dump_obu_internal
      Src: /src/gpac/src/filters/inspect.c:3879,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3882,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3886,1
    - Dst: inspect_dump_mpeg124
      Src: /src/gpac/src/filters/inspect.c:3906,1
    - Dst: gf_mp3_get_next_header_mem
      Src: /src/gpac/src/filters/inspect.c:3913,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3915,1
    - Dst: gf_mp3_frame_size
      Src: /src/gpac/src/filters/inspect.c:3918,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3919,1
    - Dst: gf_mp3_layer
      Src: /src/gpac/src/filters/inspect.c:3919,1
    - Dst: gf_mp3_version
      Src: /src/gpac/src/filters/inspect.c:3919,1
    - Dst: gf_mp3_bit_rate
      Src: /src/gpac/src/filters/inspect.c:3919,1
    - Dst: gf_mp3_num_channels
      Src: /src/gpac/src/filters/inspect.c:3919,1
    - Dst: gf_mp3_window_size
      Src: /src/gpac/src/filters/inspect.c:3919,1
    - Dst: gf_mp3_sampling_rate
      Src: /src/gpac/src/filters/inspect.c:3919,1
    - Dst: inspect_dump_tmcd
      Src: /src/gpac/src/filters/inspect.c:3926,1
    - Dst: inspect_dump_boxes
      Src: /src/gpac/src/filters/inspect.c:3929,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:3933,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3934,1
    - Dst: scte35_dump
      Src: /src/gpac/src/filters/inspect.c:3935,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3936,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:3937,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3942,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3954,1
    - Dst: gf_fputc
      Src: /src/gpac/src/filters/inspect.c:3956,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3959,1
    - Dst: gf_webvtt_parse_cues_from_data
      Src: /src/gpac/src/filters/inspect.c:3963,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:3964,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/inspect.c:3965,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/inspect.c:3966,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/inspect.c:3967,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/inspect.c:3968,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/inspect.c:3969,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/inspect.c:3970,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/inspect.c:3971,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/filters/inspect.c:3973,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/inspect.c:3975,1
    - Dst: gf_inspect_dump_prores_internal
      Src: /src/gpac/src/filters/inspect.c:3984,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:3988,1
    - Dst: gf_inspect_dump_mha_frame
      Src: /src/gpac/src/filters/inspect.c:3989,1
    - Dst: gf_inspect_dump_mhas
      Src: /src/gpac/src/filters/inspect.c:3993,1
    - Dst: inspect_dump_vpx
      Src: /src/gpac/src/filters/inspect.c:3998,1
    - Dst: inspect_dump_ac3_eac3
      Src: /src/gpac/src/filters/inspect.c:4003,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:4006,1
    - Dst: gf_inspect_dump_truehd_frame
      Src: /src/gpac/src/filters/inspect.c:4007,1
    - Dst: gf_inspect_dump_opus_internal
      Src: /src/gpac/src/filters/inspect.c:4010,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:4014,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4021,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:4023,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:4024,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:4025,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:4027,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:4028,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:4030,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4032,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4042,1
    CyclomaticComplexity: 120
    EdgeCount: 120
    ICount: 352
    argCount: 6
    argNames:
    - ctx
    - dump
    - pck
    - pid_idx
    - pck_num
    - pctx
    argTypes:
    - GF_InspectCtx*
    - FILE*
    - GF_FilterPacket*
    - u32
    - u64
    - PidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4043
      start: 3637
    functionDepth: 12
    functionLinenumber: 3637
    functionLinenumberEnd: 4043
    functionName: inspect_dump_packet
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_enum_properties
    - gf_bs_new
    - gf_mp3_sampling_rate
    - DUMP_ATT_U
    - gf_list_count
    - gf_filter_pck_get_carousel_version
    - gf_filter_pck_get_clock_type
    - GF_FilterFrameInterface*::get_gl_texture
    - gf_filter_pck_get_seek_flag
    - gf_filter_pck_get_frame_interface
    - gf_inspect_dump_nalu_internal
    - inspect_dump_vpx
    - gf_filter_pck_get_framing
    - gf_fprintf
    - inspect_dump_tmcd
    - gf_filter_pck_get_corrupted
    - gf_filter_pck_get_roll_info
    - gf_mx_init
    - gf_inspect_dump_obu_internal
    - inspect_dump_boxes
    - gf_inspect_dump_truehd_frame
    - gf_filter_pck_get_dependency_flags
    - DUMP_ATT_STR
    - strncmp
    - gf_mp3_frame_size
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_duration
    - gf_crc_32
    - gf_mp3_version
    - gf_filter_pck_get_property
    - gf_fputc
    - gf_filter_pck_get_data
    - get_and_print
    - gf_filter_pck_get_crypt_flags
    - DUMP_ATT_X
    - gf_mp3_layer
    - gf_filter_pck_get_interlaced
    - gf_inspect_dump_opus_internal
    - gf_filter_pck_get_sap
    - scte35_dump
    - gf_bs_reassign_buffer
    - inspect_dump_mpeg124
    - gf_list_del
    - gf_webvtt_parse_cues_from_data
    - DUMP_ATT_D
    - gf_mp3_num_channels
    - inspect_dump_ac3_eac3
    - gf_inspect_dump_mha_frame
    - gf_mp3_bit_rate
    - gf_list_pop_front
    - gf_webvtt_cue_del
    - gf_mp3_window_size
    - gf_bs_del
    - inspect_dump_property
    - gf_inspect_dump_prores_internal
    - GF_FilterFrameInterface*::get_plane
    - gf_filter_pck_get_byte_offset
    - inspect_printf
    - inspect_get_nal_size
    - inspect_dump_packet_as_info
    - gf_mp3_get_next_header_mem
    - gf_inspect_dump_mhas
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: void
    signature: void inspect_dump_packet(GF_InspectCtx *ctx, FILE *dump, GF_FilterPacket
      *pck, u32 pid_idx, u64 pck_num, PidCtx *pctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - name
    - ','
    - bits
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4020
      start: 4017
    functionDepth: 0
    functionLinenumber: 4017
    functionLinenumberEnd: 4020
    functionName: get_and_print
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 14
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: get_and_print(name, bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - arr
    - ','
    - name
    - ','
    - loc
    - ','
    - _is_svc
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4056
      start: 4045
    functionDepth: 0
    functionLinenumber: 4045
    functionLinenumberEnd: 4056
    functionName: DUMP_ARRAY
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DUMP_ARRAY(arr, name, loc, _is_svc)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:4061,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:4065,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:4069,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filters/inspect.c:4073,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:4074,1
    - Dst: gf_m4v_parser_del
      Src: /src/gpac/src/filters/inspect.c:4078,1
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/filters/inspect.c:4081,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 25
    argCount: 2
    argNames:
    - pctx
    - keep_parser_address
    argTypes:
    - PidCtx*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4082
      start: 4058
    functionDepth: 2
    functionLinenumber: 4058
    functionLinenumberEnd: 4082
    functionName: inspect_reset_parsers
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_av1_cfg_del
    - gf_m4v_parser_del
    - gf_odf_vp_cfg_del
    linkageType: ''
    returnType: void
    signature: void inspect_reset_parsers(PidCtx *pctx, void *keep_parser_address)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4089,1
    - Dst: gf_format_duration
      Src: /src/gpac/src/filters/inspect.c:4101,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4103,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4105,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4107,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4110,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 4
    argNames:
    - dur
    - timescale
    - dump
    - skip_name
    argTypes:
    - s64
    - u64
    - FILE*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4111
      start: 4085
    functionDepth: 3
    functionLinenumber: 4085
    functionLinenumberEnd: 4111
    functionName: format_duration
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 9
    functionsReached:
    - gf_format_duration
    - inspect_printf
    linkageType: ''
    returnType: void
    signature: void format_duration(s64 dur, u64 timescale, FILE *dump, Bool skip_name)
  - BBCount: 113
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_rfc_6381_codec_string
      Src: /src/gpac/src/filters/inspect.c:4126,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4128,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4129,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4130,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4132,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4136,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4140,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4142,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4146,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4149,1
    - Dst: gf_stream_type_short_name
      Src: /src/gpac/src/filters/inspect.c:4149,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4153,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4156,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/inspect.c:4157,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4158,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/inspect.c:4159,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4160,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/inspect.c:4161,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4164,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4165,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4167,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4169,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4170,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4173,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/inspect.c:4174,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4174,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4176,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4178,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4179,1
    - Dst: format_duration
      Src: /src/gpac/src/filters/inspect.c:4180,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4183,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4184,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4186,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4188,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4189,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4191,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4195,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4202,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4204,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4205,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4206,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4207,1
    - Dst: gf_media_get_reduced_frame_rate
      Src: /src/gpac/src/filters/inspect.c:4211,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4212,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4213,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4216,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4218,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4220,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4222,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4223,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/inspect.c:4223,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4228,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4229,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4231,1
    - Dst: gf_audio_fmt_get_layout_name
      Src: /src/gpac/src/filters/inspect.c:4231,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4233,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4234,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4237,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4238,1
    - Dst: gf_audio_fmt_name
      Src: /src/gpac/src/filters/inspect.c:4238,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4242,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4244,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4245,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4247,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4248,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4252,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4253,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/inspect.c:4253,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4254,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4256,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4259,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/inspect.c:4261,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4263,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4266,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4267,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4269,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4274,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:4275,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4276,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/inspect.c:4278,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4279,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4291,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/inspect.c:4293,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:4294,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:4295,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:4296,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:4297,1
    - Dst: gf_hevc_parse_nalu
      Src: /src/gpac/src/filters/inspect.c:4299,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4304,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4306,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4307,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4311,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4313,1
    - Dst: gf_hevc_get_profile_name
      Src: /src/gpac/src/filters/inspect.c:4313,1
    - Dst: gf_avc_hevc_get_chroma_format_name
      Src: /src/gpac/src/filters/inspect.c:4313,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/inspect.c:4315,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4318,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4320,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:4323,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:4324,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:4326,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:4327,1
    - Dst: gf_hevc_parse_nalu
      Src: /src/gpac/src/filters/inspect.c:4329,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4332,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/inspect.c:4337,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:4340,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4345,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4347,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4349,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4350,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4351,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4354,1
    - Dst: gf_avc_get_profile_name
      Src: /src/gpac/src/filters/inspect.c:4354,1
    - Dst: gf_avc_hevc_get_chroma_format_name
      Src: /src/gpac/src/filters/inspect.c:4354,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/inspect.c:4355,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4358,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4359,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/inspect.c:4362,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:4363,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:4364,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/filters/inspect.c:4365,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4366,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:4368,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/inspect.c:4369,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4376,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4378,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4380,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4383,1
    - Dst: gf_vvc_get_profile_name
      Src: /src/gpac/src/filters/inspect.c:4383,1
    - Dst: gf_avc_hevc_get_chroma_format_name
      Src: /src/gpac/src/filters/inspect.c:4383,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4385,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/inspect.c:4387,1
    - Dst: gf_odf_av1_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4393,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4394,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4396,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4398,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4399,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4400,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4401,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4402,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filters/inspect.c:4404,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4408,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/filters/inspect.c:4414,1
    - Dst: gf_m4a_object_type_name
      Src: /src/gpac/src/filters/inspect.c:4427,1
    - Dst: strstr
      Src: /src/gpac/src/filters/inspect.c:4428,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4431,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4432,1
    - Dst: gf_m4a_object_type_name
      Src: /src/gpac/src/filters/inspect.c:4432,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4433,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4435,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4438,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/filters/inspect.c:4441,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4442,1
    - Dst: gf_m4v_get_profile_name
      Src: /src/gpac/src/filters/inspect.c:4442,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4443,1
    - Dst: gf_avc_hevc_get_chroma_format_name
      Src: /src/gpac/src/filters/inspect.c:4443,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4444,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4450,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4452,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4454,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4456,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4459,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/inspect.c:4459,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4461,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4462,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4464,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4465,1
    - Dst: gf_avc_hevc_get_chroma_format_name
      Src: /src/gpac/src/filters/inspect.c:4465,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4467,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4468,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4471,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4473,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4475,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4477,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4480,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4482,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:4484,1
    - Dst: gf_odf_dovi_cfg_read_bs
      Src: /src/gpac/src/filters/inspect.c:4485,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:4486,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4488,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4490,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4491,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4492,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4493,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/src/filters/inspect.c:4494,1
    - Dst: gf_odf_ac3_cfg_parse
      Src: /src/gpac/src/filters/inspect.c:4500,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4502,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4506,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4508,1
    CyclomaticComplexity: 154
    EdgeCount: 154
    ICount: 365
    argCount: 9
    argNames:
    - ctx
    - dump
    - pid
    - pid_idx
    - is_connect
    - is_remove
    - pck_for_config
    - is_info
    - pctx
    argTypes:
    - GF_InspectCtx*
    - FILE*
    - GF_FilterPid*
    - u32
    - Bool
    - Bool
    - u64
    - Bool
    - PidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4509
      start: 4114
    functionDepth: 8
    functionLinenumber: 4114
    functionLinenumberEnd: 4509
    functionName: inspect_dump_pid_as_info
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_pid_get_info
    - gf_odf_vvc_cfg_del
    - gf_odf_av1_cfg_read
    - gf_odf_avc_cfg_del
    - GF_SAFEALLOC
    - gf_bs_new
    - gf_list_count
    - gf_odf_av1_cfg_del
    - gf_odf_hevc_cfg_read
    - gf_4cc_to_str
    - gf_list_get
    - strrchr
    - gf_filter_release_property
    - stricmp
    - gf_stream_type_short_name
    - gf_m4v_get_config
    - format_duration
    - gf_odf_vvc_cfg_read
    - gf_m4v_get_profile_name
    - gf_m4a_object_type_name
    - gf_audio_fmt_get_layout_name
    - gf_hevc_parse_nalu
    - gf_pixel_fmt_name
    - gf_hevc_get_profile_name
    - gf_audio_fmt_name
    - gf_vvc_get_profile_name
    - gf_m4a_get_config
    - gf_odf_ac3_cfg_parse
    - gf_odf_dovi_cfg_del
    - strstr
    - gf_odf_dovi_cfg_read_bs
    - gf_media_get_reduced_frame_rate
    - gf_avc_read_sps
    - gf_odf_avc_cfg_read
    - gf_filter_pid_get_rfc_6381_codec_string
    - gf_odf_hevc_cfg_del
    - gf_avc_hevc_get_chroma_format_name
    - gf_filter_pid_get_property
    - gf_avc_get_profile_name
    - gf_bs_del
    - strcmp
    - inspect_printf
    - GF_4CC
    - gf_codecid_name
    linkageType: ''
    returnType: void
    signature: void inspect_dump_pid_as_info(GF_InspectCtx *ctx, FILE *dump, GF_FilterPid
      *pid, u32 pid_idx, Bool is_connect, Bool is_remove, u64 pck_for_config, Bool
      is_info, PidCtx *pctx)
  - BBCount: 160
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_rfc_6381_codec_string
      Src: /src/gpac/src/filters/inspect.c:4531,1
    - Dst: strstr
      Src: /src/gpac/src/filters/inspect.c:4532,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/inspect.c:4533,1
    - Dst: inspect_dump_pid_as_info
      Src: /src/gpac/src/filters/inspect.c:4540,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4553,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/inspect.c:4553,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4556,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4559,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/inspect.c:4559,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4561,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/inspect.c:4561,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4563,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/inspect.c:4563,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4565,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4566,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filters/inspect.c:4574,1
    - Dst: inspect_dump_property
      Src: /src/gpac/src/filters/inspect.c:4576,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:4579,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:4581,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:4583,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4589,1
    - Dst: gf_filter_pid_get_rfc_6381_codec_string
      Src: /src/gpac/src/filters/inspect.c:4593,1
    - Dst: inspect_dump_property
      Src: /src/gpac/src/filters/inspect.c:4597,1
    - Dst: gf_filter_pid_enum_info
      Src: /src/gpac/src/filters/inspect.c:4604,1
    - Dst: inspect_dump_property
      Src: /src/gpac/src/filters/inspect.c:4606,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4612,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4617,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4619,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4624,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4625,1
    - Dst: inspect_reset_parsers
      Src: /src/gpac/src/filters/inspect.c:4642,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/inspect.c:4645,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4650,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4653,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4654,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4657,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4661,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4667,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4675,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4676,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4677,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4680,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4681,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4685,1
    - Dst: inspect_reset_parsers
      Src: /src/gpac/src/filters/inspect.c:4692,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/inspect.c:4695,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4701,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4708,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4712,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4718,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4724,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4725,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:4728,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:4729,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4731,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4733,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4735,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4737,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:4742,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:4743,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4745,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4747,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4749,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4751,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4756,1
    - Dst: inspect_reset_parsers
      Src: /src/gpac/src/filters/inspect.c:4762,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/inspect.c:4765,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4770,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4774,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4780,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4781,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:4784,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:4785,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4787,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4789,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4791,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4793,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4795,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4797,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4799,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4804,1
    - Dst: inspect_reset_parsers
      Src: /src/gpac/src/filters/inspect.c:4809,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/inspect.c:4811,1
    - Dst: gf_av1_init_state
      Src: /src/gpac/src/filters/inspect.c:4813,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4817,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filters/inspect.c:4821,1
    - Dst: gf_odf_av1_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4822,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4823,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4824,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:4828,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:4832,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:4835,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:4837,1
    - Dst: gf_inspect_dump_obu_internal
      Src: /src/gpac/src/filters/inspect.c:4839,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4844,1
    - Dst: inspect_reset_parsers
      Src: /src/gpac/src/filters/inspect.c:4857,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4860,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4863,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4864,1
    - Dst: inspect_dump_mpeg124
      Src: /src/gpac/src/filters/inspect.c:4866,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4868,1
    - Dst: gf_m4v_parser_del
      Src: /src/gpac/src/filters/inspect.c:4870,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4879,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4884,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4887,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4888,1
    - Dst: gf_fputc
      Src: /src/gpac/src/filters/inspect.c:4890,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4892,1
    - Dst: gf_odf_tx3g_read
      Src: /src/gpac/src/filters/inspect.c:4896,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4898,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4901,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4902,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4903,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4904,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4906,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4908,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/inspect.c:4909,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4918,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4921,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4922,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4924,1
    - Dst: gf_fputc
      Src: /src/gpac/src/filters/inspect.c:4926,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4929,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4930,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4938,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4943,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:4949,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:4951,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4953,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4954,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4955,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:4955,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4956,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:4956,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4957,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:4957,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/inspect.c:4958,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4960,1
    - Dst: dump_mha_config
      Src: /src/gpac/src/filters/inspect.c:4962,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4964,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4966,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4973,1
    - Dst: inspect_reset_parsers
      Src: /src/gpac/src/filters/inspect.c:4978,1
    - Dst: gf_odf_vp_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4981,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4982,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4985,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4989,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4991,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4992,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4994,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:5005,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/inspect.c:5005,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5012,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5013,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:5016,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:5018,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:5023,1
    - Dst: gf_m4a_parse_config
      Src: /src/gpac/src/filters/inspect.c:5026,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5028,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5030,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5032,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5035,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5037,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5039,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5045,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5051,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5052,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:5055,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:5057,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:5059,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:5060,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5062,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5064,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5072,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5073,1
    - Dst: gf_odf_opus_cfg_parse
      Src: /src/gpac/src/filters/inspect.c:5074,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5076,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5079,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5081,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5083,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5087,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5089,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:5096,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5097,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5098,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/inspect.c:5099,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:5106,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:5107,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/inspect.c:5108,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:5110,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:5111,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:5112,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:5113,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:5114,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:5115,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:5116,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:5117,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:5118,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:5119,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:5120,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:5121,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/inspect.c:5122,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:5123,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:5124,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:5125,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:5126,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5131,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:5132,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5134,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:5142,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/inspect.c:5142,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5144,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/inspect.c:5148,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/inspect.c:5149,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/inspect.c:5150,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/inspect.c:5151,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/inspect.c:5152,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5153,1
    CyclomaticComplexity: 148
    EdgeCount: 148
    ICount: 541
    argCount: 9
    argNames:
    - ctx
    - dump
    - pid
    - pid_idx
    - is_connect
    - is_remove
    - pck_for_config
    - is_info
    - pctx
    argTypes:
    - GF_InspectCtx*
    - FILE*
    - GF_FilterPid*
    - u32
    - Bool
    - Bool
    - u64
    - Bool
    - PidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5154
      start: 4511
    functionDepth: 12
    functionLinenumber: 4511
    functionLinenumberEnd: 5154
    functionName: inspect_dump_pid
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_odf_vvc_cfg_del
    - gf_odf_av1_cfg_read
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_odf_desc_del
    - gf_odf_avc_cfg_del
    - gf_list_count
    - gf_odf_av1_cfg_del
    - gf_m4a_parse_config
    - gf_bs_read_u16
    - gf_bs_available
    - gf_filter_pid_get_name
    - gf_odf_hevc_cfg_read
    - gf_filter_pid_enum_properties
    - gf_list_get
    - gf_odf_vp_cfg_read
    - gf_bs_read_u32
    - gf_odf_tx3g_read
    - gf_filter_pid_enum_info
    - gf_inspect_dump_obu_internal
    - gf_m4v_parser_del
    - gf_dynstrcat
    - gf_odf_vvc_cfg_read
    - gf_odf_opus_cfg_parse
    - inspect_dump_pid_as_info
    - gf_bs_set_logger
    - gf_fputc
    - GF_4CC
    - GF_LOG
    - strstr
    - gf_av1_init_state
    - gf_bs_read_u8
    - dump_mha_config
    - gf_odf_avc_cfg_read
    - gf_bs_reassign_buffer
    - inspect_dump_mpeg124
    - gf_filter_pid_get_rfc_6381_codec_string
    - gf_odf_hevc_cfg_del
    - gf_filter_pid_get_property
    - gf_bs_del
    - inspect_dump_property
    - strcmp
    - inspect_printf
    - inspect_reset_parsers
    - gf_bs_read_int
    - gf_codecid_name
    - get_and_print
    - DUMP_ARRAY
    linkageType: ''
    returnType: void
    signature: void inspect_dump_pid(GF_InspectCtx *ctx, FILE *dump, GF_FilterPid
      *pid, u32 pid_idx, Bool is_connect, Bool is_remove, u64 pck_for_config, Bool
      is_info, PidCtx *pctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - name
    - ','
    - bits
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5105
      start: 5102
    functionDepth: 0
    functionLinenumber: 5102
    functionLinenumberEnd: 5105
    functionName: get_and_print
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: get_and_print(name, bits)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/inspect.c:5158,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/inspect.c:5160,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:5161,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/inspect.c:5164,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/inspect.c:5168,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/inspect.c:5178,1
    - Dst: gf_filter_pck_get_corrupted
      Src: /src/gpac/src/filters/inspect.c:5194,1
    - Dst: gf_filter_pck_get_clock_type
      Src: /src/gpac/src/filters/inspect.c:5196,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/inspect.c:5198,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 80
    argCount: 3
    argNames:
    - ctx
    - pctx
    - pck
    argTypes:
    - GF_InspectCtx*
    - PidCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5234
      start: 5156
    functionDepth: 1
    functionLinenumber: 5156
    functionLinenumberEnd: 5234
    functionName: inspect_stats_packet
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_data
    - gf_filter_pck_get_corrupted
    - gf_filter_pck_get_crypt_flags
    - gf_filter_pck_get_timescale
    - gf_filter_pck_get_clock_type
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_sap
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: void
    signature: void inspect_stats_packet(GF_InspectCtx *ctx, PidCtx *pctx, GF_FilterPacket
      *pck)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:5238,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:5241,1
    - Dst: inspect_dump_pid
      Src: /src/gpac/src/filters/inspect.c:5243,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5245,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5247,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5249,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5250,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5251,1
    - Dst: format_duration
      Src: /src/gpac/src/filters/inspect.c:5252,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5253,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5255,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5257,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5259,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5263,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5264,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5265,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5266,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5267,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5268,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5269,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5270,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5273,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5275,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5276,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5278,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5282,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5288,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5290,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5292,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 51
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_InspectCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5295
      start: 5236
    functionDepth: 13
    functionLinenumber: 5236
    functionLinenumberEnd: 5295
    functionName: inspect_dump_stats
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - inspect_dump_pid
    - gf_list_count
    - inspect_printf
    - format_duration
    linkageType: ''
    returnType: void
    signature: void inspect_dump_stats(GF_InspectCtx *ctx)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/inspect.c:5300,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:5302,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:5307,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/inspect.c:5312,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/inspect.c:5315,1
    - Dst: gf_filter_pid_set_clock_mode
      Src: /src/gpac/src/filters/inspect.c:5318,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:5328,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/inspect.c:5330,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/inspect.c:5335,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/inspect.c:5341,1
    - Dst: gf_filter_pid_eos_received
      Src: /src/gpac/src/filters/inspect.c:5351,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/filters/inspect.c:5352,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:5355,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/inspect.c:5360,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:5361,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/filters/inspect.c:5367,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:5368,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/inspect.c:5368,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:5370,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/inspect.c:5370,1
    - Dst: inspect_dump_pid
      Src: /src/gpac/src/filters/inspect.c:5377,1
    - Dst: inspect_dump_packet_fmt
      Src: /src/gpac/src/filters/inspect.c:5386,1
    - Dst: inspect_stats_packet
      Src: /src/gpac/src/filters/inspect.c:5395,1
    - Dst: inspect_dump_packet_fmt
      Src: /src/gpac/src/filters/inspect.c:5401,1
    - Dst: inspect_dump_packet
      Src: /src/gpac/src/filters/inspect.c:5403,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/inspect.c:5409,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/inspect.c:5410,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/inspect.c:5411,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:5412,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/inspect.c:5415,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/inspect.c:5417,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:5419,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/inspect.c:5419,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/inspect.c:5420,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/inspect.c:5422,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/inspect.c:5423,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/inspect.c:5428,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/src/filters/inspect.c:5431,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:5434,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/inspect.c:5436,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/inspect.c:5437,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 121
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5444
      start: 5297
    functionDepth: 13
    functionLinenumber: 5297
    functionLinenumberEnd: 5444
    functionName: inspect_process
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_filter_connections_pending
    - gf_filter_pid_eos_received
    - gf_list_count
    - inspect_stats_packet
    - gf_filter_pid_get_packet
    - gf_sys_clock
    - gf_filter_pid_query_buffer_duration
    - gf_list_get
    - inspect_dump_pid
    - GF_FEVT_INIT
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_duration
    - gf_filter_get_udta
    - gf_filter_pid_set_clock_mode
    - gf_filter_pid_drop_packet
    - gf_filter_pid_set_discard
    - GF_LOG
    - gf_filter_pck_get_timescale
    - gf_filter_pid_send_event
    - gf_filter_pid_is_eos
    - inspect_dump_packet
    - gf_filter_pid_set_framing_mode
    - gf_timestamp_greater_or_equal
    - gf_codecid_name
    - inspect_dump_packet_fmt
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err inspect_process(GF_Filter *filter)
  - BBCount: 48
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/inspect.c:5452,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/inspect.c:5454,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/inspect.c:5455,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/inspect.c:5457,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/inspect.c:5459,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/inspect.c:5466,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:5469,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/inspect.c:5473,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5476,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5478,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5480,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/inspect.c:5486,1
    - Dst: gf_filter_pid_has_decoder
      Src: /src/gpac/src/filters/inspect.c:5496,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/inspect.c:5497,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/inspect.c:5498,1
    - Dst: strstr
      Src: /src/gpac/src/filters/inspect.c:5504,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5515,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5518,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/inspect.c:5520,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/inspect.c:5520,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5527,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5529,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5531,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5533,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:5540,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:5542,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5557,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5559,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5561,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5563,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/inspect.c:5578,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:5579,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:5580,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/inspect.c:5584,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/inspect.c:5588,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/inspect.c:5591,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/filters/inspect.c:5594,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5596,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/inspect.c:5596,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/inspect.c:5602,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/inspect.c:5605,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/inspect.c:5613,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/inspect.c:5614,1
    - Dst: gf_filter_pid_set_clock_mode
      Src: /src/gpac/src/filters/inspect.c:5622,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5624,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/inspect.c:5628,1
    CyclomaticComplexity: 63
    EdgeCount: 63
    ICount: 154
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5630
      start: 5446
    functionDepth: 6
    functionLinenumber: 5446
    functionLinenumberEnd: 5630
    functionName: inspect_configure_pid
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_list_find
    - gf_list_count
    - gf_filter_pid_set_udta
    - gf_sys_clock
    - gf_filter_post_process_task
    - gf_filter_pid_get_name
    - gf_list_new
    - gf_assert
    - gf_list_get
    - GF_FEVT_INIT
    - gf_list_add
    - gf_file_temp
    - PROP_BOOL
    - gf_filter_pid_has_decoder
    - gf_filter_get_udta
    - gf_list_insert
    - gf_filter_pid_set_clock_mode
    - gf_filter_pid_negotiate_property
    - gf_filter_pid_init_play_event
    - strstr
    - gf_filter_pid_send_event
    - gf_filter_pid_get_property
    - gf_filter_pid_set_framing_mode
    - inspect_printf
    - gf_filter_pid_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err inspect_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/inspect.c:5663,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - filter
    - arg_name
    - new_val
    argTypes:
    - GF_Filter*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5666
      start: 5661
    functionDepth: 1
    functionLinenumber: 5661
    functionLinenumberEnd: 5666
    functionName: inspect_update_arg
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err inspect_update_arg(GF_Filter *filter, const char *arg_name,
      const GF_PropertyValue *new_val)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filters/inspect.c:5670,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/inspect.c:5671,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:5674,1
    - Dst: gf_log_parse_tool
      Src: /src/gpac/src/filters/inspect.c:5678,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:5686,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:5693,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/inspect.c:5711,1
    - Dst: strstr
      Src: /src/gpac/src/filters/inspect.c:5719,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/inspect.c:5725,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/inspect.c:5728,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/inspect.c:5731,1
    - Dst: gf_filter_is_temporary
      Src: /src/gpac/src/filters/inspect.c:5734,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:5737,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:5738,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:5739,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/inspect.c:5741,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:5743,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5749,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5750,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/inspect.c:5754,1
    - Dst: inspect_update_arg
      Src: /src/gpac/src/filters/inspect.c:5755,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 76
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5760
      start: 5668
    functionDepth: 3
    functionLinenumber: 5668
    functionLinenumberEnd: 5760
    functionName: inspect_initialize
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - inspect_update_arg
    - gf_filter_override_caps
    - gf_filter_is_temporary
    - GF_LOG
    - gf_sys_is_test_mode
    - strstr
    - strcmp
    - gf_fopen
    - inspect_printf
    - gf_log_parse_tool
    - gf_filter_get_name
    - gf_sys_is_cov_mode
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err inspect_initialize(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/inspect.c:5765,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/inspect.c:5768,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5771
      start: 5762
    functionDepth: 1
    functionLinenumber: 5762
    functionLinenumberEnd: 5771
    functionName: inspect_process_event
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_udta
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool inspect_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5774
      start: 5773
    functionDepth: 0
    functionLinenumber: 5773
    functionLinenumberEnd: 5774
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5991
      start: 5988
    functionDepth: 0
    functionLinenumber: 5988
    functionLinenumberEnd: 5991
    functionName: inspect_register
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *inspect_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5996
      start: 5993
    functionDepth: 0
    functionLinenumber: 5993
    functionLinenumberEnd: 5996
    functionName: probe_register
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *probe_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6001
      start: 5998
    functionDepth: 0
    functionLinenumber: 5998
    functionLinenumberEnd: 6001
    functionName: inspect_register
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *inspect_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6006
      start: 6003
    functionDepth: 0
    functionLinenumber: 6003
    functionLinenumberEnd: 6006
    functionName: probe_register
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *probe_register(GF_FilterSession *session)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_bsf.c:61,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_bsf.c:64,1
    - Dst: av_bsf_list_alloc
      Src: /src/gpac/src/filters/ff_bsf.c:68,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_bsf.c:70,1
    - Dst: av_bsf_get_by_name
      Src: /src/gpac/src/filters/ff_bsf.c:77,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_bsf.c:79,1
    - Dst: av_bsf_list_free
      Src: /src/gpac/src/filters/ff_bsf.c:80,1
    - Dst: gf_filter_report_meta_option
      Src: /src/gpac/src/filters/ff_bsf.c:85,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/ff_bsf.c:86,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_bsf.c:99,1
    - Dst: av_bsf_list_append2
      Src: /src/gpac/src/filters/ff_bsf.c:100,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_bsf.c:102,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_bsf.c:103,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_bsf.c:103,1
    - Dst: av_bsf_list_free
      Src: /src/gpac/src/filters/ff_bsf.c:104,1
    - Dst: ffmpeg_report_options
      Src: /src/gpac/src/filters/ff_bsf.c:107,1
    - Dst: gf_filter_report_meta_option
      Src: /src/gpac/src/filters/ff_bsf.c:111,1
    - Dst: av_bsf_list_free
      Src: /src/gpac/src/filters/ff_bsf.c:115,1
    - Dst: gf_filter_meta_set_instances
      Src: /src/gpac/src/filters/ff_bsf.c:117,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_bsf.c:118,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_bsf.c:124,1
    - Dst: ffmpeg_report_options
      Src: /src/gpac/src/filters/ff_bsf.c:125,1
    - Dst: av_bsf_list_free
      Src: /src/gpac/src/filters/ff_bsf.c:127,1
    - Dst: av_bsf_list_finalize
      Src: /src/gpac/src/filters/ff_bsf.c:133,1
    - Dst: av_bsf_list_free
      Src: /src/gpac/src/filters/ff_bsf.c:134,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_bsf.c:136,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_bsf.c:136,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 64
    argCount: 2
    argNames:
    - filter
    - ff_codecid
    argTypes:
    - GF_Filter*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 54
    functionDepth: 2
    functionLinenumber: 54
    functionLinenumberEnd: 140
    functionName: ffbsf_init_bsf
    functionSourceFile: /src/gpac/src/filters/ff_bsf.c
    functionUses: 0
    functionsReached:
    - av_dict_free
    - gf_free
    - ffmpeg_report_options
    - av_bsf_list_free
    - gf_filter_meta_set_instances
    - GF_LOG
    - av_err2str
    - av_bsf_list_append2
    - gf_filter_report_meta_option
    - av_bsf_get_by_name
    - av_dict_copy
    - gf_dynstrcat
    - av_bsf_list_finalize
    - av_bsf_list_alloc
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffbsf_init_bsf(GF_Filter *filter, u32 ff_codecid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ffbsf_init_bsf
      Src: /src/gpac/src/filters/ff_bsf.c:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 142
    functionDepth: 3
    functionLinenumber: 142
    functionLinenumberEnd: 146
    functionName: ffbsf_initialize
    functionSourceFile: /src/gpac/src/filters/ff_bsf.c
    functionUses: 0
    functionsReached:
    - ffbsf_init_bsf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffbsf_initialize(GF_Filter *filter)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_bsf.c:151,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/ff_bsf.c:157,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_bsf.c:163,1
    - Dst: ffmpeg_codecid_from_gpac
      Src: /src/gpac/src/filters/ff_bsf.c:168,1
    - Dst: av_bsf_free
      Src: /src/gpac/src/filters/ff_bsf.c:174,1
    - Dst: ffbsf_init_bsf
      Src: /src/gpac/src/filters/ff_bsf.c:182,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/ff_bsf.c:187,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/ff_bsf.c:190,1
    - Dst: ffmpeg_codec_par_from_gpac
      Src: /src/gpac/src/filters/ff_bsf.c:196,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_bsf.c:199,1
    - Dst: ffmpeg_extradata_from_gpac
      Src: /src/gpac/src/filters/ff_bsf.c:201,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_bsf.c:203,1
    - Dst: av_bsf_init
      Src: /src/gpac/src/filters/ff_bsf.c:210,1
    - Dst: av_bsf_free
      Src: /src/gpac/src/filters/ff_bsf.c:212,1
    - Dst: ffmpeg_codecid_to_gpac
      Src: /src/gpac/src/filters/ff_bsf.c:221,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_bsf.c:222,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_bsf.c:222,1
    - Dst: ffmpeg_codec_par_to_gpac
      Src: /src/gpac/src/filters/ff_bsf.c:224,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_bsf.c:239,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_bsf.c:239,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_bsf.c:240,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_bsf.c:240,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_bsf.c:241,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_bsf.c:261,1
    - Dst: ffmpeg_extradata_to_gpac
      Src: /src/gpac/src/filters/ff_bsf.c:269,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_bsf.c:270,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/ff_bsf.c:270,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 104
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 149
    functionDepth: 11
    functionLinenumber: 149
    functionLinenumberEnd: 275
    functionName: ffbsf_configure_pid
    functionSourceFile: /src/gpac/src/filters/ff_bsf.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - ffmpeg_codecid_from_gpac
    - gf_filter_pid_remove
    - ffmpeg_codec_par_from_gpac
    - ffmpeg_extradata_from_gpac
    - av_bsf_free
    - PROP_UINT
    - ffmpeg_codec_par_to_gpac
    - ffmpeg_extradata_to_gpac
    - ffmpeg_codecid_to_gpac
    - av_bsf_init
    - PROP_DATA_NO_COPY
    - PROP_BOOL
    - gf_filter_pid_new
    - ffbsf_init_bsf
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffbsf_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_bsf.c:280,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_bsf.c:284,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/ff_bsf.c:286,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_bsf.c:288,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/ff_bsf.c:296,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_bsf.c:297,1
    - Dst: av_packet_alloc
      Src: /src/gpac/src/filters/ff_bsf.c:302,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/ff_bsf.c:305,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_bsf.c:307,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_bsf.c:308,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/ff_bsf.c:309,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ff_bsf.c:310,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/ff_bsf.c:311,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/ff_bsf.c:312,1
    - Dst: av_bsf_send_packet
      Src: /src/gpac/src/filters/ff_bsf.c:315,1
    - Dst: av_packet_alloc
      Src: /src/gpac/src/filters/ff_bsf.c:319,1
    - Dst: av_bsf_receive_packet
      Src: /src/gpac/src/filters/ff_bsf.c:320,1
    - Dst: av_packet_unref
      Src: /src/gpac/src/filters/ff_bsf.c:322,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/ff_bsf.c:329,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_bsf.c:331,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_bsf.c:335,1
    - Dst: ffmpeg_generate_gpac_dsi
      Src: /src/gpac/src/filters/ff_bsf.c:338,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/ff_bsf.c:343,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/ff_bsf.c:345,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/ff_bsf.c:347,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/ff_bsf.c:348,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/ff_bsf.c:349,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/ff_bsf.c:351,1
    - Dst: av_packet_unref
      Src: /src/gpac/src/filters/ff_bsf.c:353,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_bsf.c:356,1
    - Dst: AVERROR
      Src: /src/gpac/src/filters/ff_bsf.c:358,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 75
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 278
    functionDepth: 10
    functionLinenumber: 278
    functionLinenumberEnd: 370
    functionName: ffbsf_process
    functionSourceFile: /src/gpac/src/filters/ff_bsf.c
    functionUses: 0
    functionsReached:
    - av_bsf_receive_packet
    - gf_filter_pid_get_packet
    - gf_filter_pck_forward
    - memcpy
    - av_packet_alloc
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_duration
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - gf_filter_pck_set_duration
    - gf_filter_pid_set_eos
    - av_malloc
    - gf_filter_pck_set_sap
    - gf_filter_pck_get_sap
    - av_bsf_send_packet
    - gf_filter_pid_is_eos
    - AVERROR
    - gf_filter_pck_set_dts
    - av_packet_unref
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - ffmpeg_generate_gpac_dsi
    - gf_filter_pck_get_dts
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffbsf_process(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_bsf.c:376,1
    - Dst: av_bsf_free
      Src: /src/gpac/src/filters/ff_bsf.c:378,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 374
    functionDepth: 1
    functionLinenumber: 374
    functionLinenumberEnd: 380
    functionName: ffbsf_finalize
    functionSourceFile: /src/gpac/src/filters/ff_bsf.c
    functionUses: 0
    functionsReached:
    - av_bsf_free
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ffbsf_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_bsf.c:384,1
    - Dst: ffmpeg_update_arg
      Src: /src/gpac/src/filters/ff_bsf.c:385,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - filter
    - arg_name
    - arg_val
    argTypes:
    - GF_Filter*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 382
    functionDepth: 2
    functionLinenumber: 382
    functionLinenumberEnd: 386
    functionName: ffbsf_update_arg
    functionSourceFile: /src/gpac/src/filters/ff_bsf.c
    functionUses: 0
    functionsReached:
    - ffmpeg_update_arg
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffbsf_update_arg(GF_Filter *filter, const char *arg_name, const
      GF_PropertyValue *arg_val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_bsf.c:390,1
    - Dst: av_bsf_flush
      Src: /src/gpac/src/filters/ff_bsf.c:392,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 388
    functionDepth: 1
    functionLinenumber: 388
    functionLinenumberEnd: 395
    functionName: ffbsf_process_event
    functionSourceFile: /src/gpac/src/filters/ff_bsf.c
    functionUses: 0
    functionsReached:
    - av_bsf_flush
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool ffbsf_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 436
    functionDepth: 0
    functionLinenumber: 436
    functionLinenumberEnd: 437
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/ff_bsf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ffmpeg_build_register
      Src: /src/gpac/src/filters/ff_bsf.c:449,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 447
    functionDepth: 8
    functionLinenumber: 447
    functionLinenumberEnd: 450
    functionName: ffbsf_register
    functionSourceFile: /src/gpac/src/filters/ff_bsf.c
    functionUses: 0
    functionsReached:
    - ffmpeg_build_register
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ffbsf_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 455
    functionDepth: 0
    functionLinenumber: 455
    functionLinenumberEnd: 458
    functionName: ffbsf_register
    functionSourceFile: /src/gpac/src/filters/ff_bsf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ffbsf_register(GF_FilterSession *session)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_dmx.c:134,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_dmx.c:139,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/ff_dmx.c:140,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/ff_dmx.c:140,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/ff_dmx.c:142,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_dmx.c:144,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_dmx.c:147,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_dmx.c:149,1
    - Dst: avformat_close_input
      Src: /src/gpac/src/filters/ff_dmx.c:151,1
    - Dst: avformat_free_context
      Src: /src/gpac/src/filters/ff_dmx.c:152,1
    - Dst: av_freep
      Src: /src/gpac/src/filters/ff_dmx.c:155,1
    - Dst: av_freep
      Src: /src/gpac/src/filters/ff_dmx.c:156,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/ff_dmx.c:158,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_dmx.c:159,1
    - Dst: av_packet_free
      Src: /src/gpac/src/filters/ff_dmx.c:162,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 34
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 132
    functionDepth: 5
    functionLinenumber: 132
    functionLinenumberEnd: 167
    functionName: ffdmx_finalize
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_list_pop_back
    - av_packet_free
    - avformat_free_context
    - gf_list_count
    - avformat_close_input
    - av_freep
    - av_dict_free
    - gf_filter_pck_discard
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ffdmx_finalize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_dmx.c:171,1
    - Dst: av_free_packet
      Src: /src/gpac/src/filters/ff_dmx.c:174,1
    - Dst: av_packet_unref
      Src: /src/gpac/src/filters/ff_dmx.c:176,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/ff_dmx.c:179,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - filter
    - pid
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 181
    functionName: ffdmx_shared_pck_release
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - av_free_packet
    - av_packet_unref
    - gf_filter_post_process_task
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ffdmx_shared_pck_release(GF_Filter *filter, GF_FilterPid *pid,
      GF_FilterPacket *pck)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ffmpeg_extradata_to_gpac
      Src: /src/gpac/src/filters/ff_dmx.c:187,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:196,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/ff_dmx.c:196,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 4
    argNames:
    - pctx
    - exdata
    - exdata_size
    - gpac_codec_id
    argTypes:
    - PidCtx*
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 183
    functionDepth: 10
    functionLinenumber: 183
    functionLinenumberEnd: 197
    functionName: ffdmx_set_decoder_config
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_property
    - ffmpeg_extradata_to_gpac
    - PROP_DATA_NO_COPY
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffdmx_set_decoder_config(PidCtx *pctx, const u8 *exdata, u32
      exdata_size, u32 gpac_codec_id)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: av_rescale
      Src: /src/gpac/src/filters/ff_dmx.c:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - q
    - b
    argTypes:
    - AVRational
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 203
    functionName: rescale_mdcv
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - av_rescale
    linkageType: ''
    returnType: u32
    signature: u32 rescale_mdcv(AVRational q, int b)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/ff_dmx.c:240,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:244,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_dmx.c:263,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_dmx.c:265,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/ff_dmx.c:266,1
    - Dst: rescale_mdcv
      Src: /src/gpac/src/filters/ff_dmx.c:266,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/ff_dmx.c:267,1
    - Dst: rescale_mdcv
      Src: /src/gpac/src/filters/ff_dmx.c:267,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/ff_dmx.c:268,1
    - Dst: rescale_mdcv
      Src: /src/gpac/src/filters/ff_dmx.c:268,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/ff_dmx.c:269,1
    - Dst: rescale_mdcv
      Src: /src/gpac/src/filters/ff_dmx.c:269,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/ff_dmx.c:270,1
    - Dst: rescale_mdcv
      Src: /src/gpac/src/filters/ff_dmx.c:270,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/ff_dmx.c:271,1
    - Dst: rescale_mdcv
      Src: /src/gpac/src/filters/ff_dmx.c:271,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/ff_dmx.c:272,1
    - Dst: rescale_mdcv
      Src: /src/gpac/src/filters/ff_dmx.c:272,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/ff_dmx.c:273,1
    - Dst: rescale_mdcv
      Src: /src/gpac/src/filters/ff_dmx.c:273,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/ff_dmx.c:274,1
    - Dst: rescale_mdcv
      Src: /src/gpac/src/filters/ff_dmx.c:274,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/ff_dmx.c:275,1
    - Dst: rescale_mdcv
      Src: /src/gpac/src/filters/ff_dmx.c:275,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_dmx.c:276,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:277,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/ff_dmx.c:277,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_dmx.c:284,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_dmx.c:286,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/ff_dmx.c:287,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/ff_dmx.c:288,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_dmx.c:289,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:290,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/ff_dmx.c:290,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:294,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/ff_dmx.c:294,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_dmx.c:300,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_dmx.c:301,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/ff_dmx.c:302,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/ff_dmx.c:303,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/ff_dmx.c:304,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/ff_dmx.c:305,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/ff_dmx.c:306,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/ff_dmx.c:307,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/ff_dmx.c:308,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/ff_dmx.c:309,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/ff_dmx.c:311,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/ff_dmx.c:312,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/ff_dmx.c:313,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/ff_dmx.c:314,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/ff_dmx.c:315,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_dmx.c:316,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:317,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/ff_dmx.c:317,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 81
    argCount: 2
    argNames:
    - sd
    - pid
    argTypes:
    - AVPacketSideData*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 218
    functionDepth: 5
    functionLinenumber: 218
    functionLinenumberEnd: 326
    functionName: ffdmx_parse_side_data
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_write_int
    - gf_bs_del
    - memset
    - rescale_mdcv
    - PROP_DATA
    - gf_bs_write_u32
    - gf_filter_pid_set_property
    - gf_bs_write_u8
    linkageType: ''
    returnType: void
    signature: void ffdmx_parse_side_data(const AVPacketSideData *sd, GF_FilterPid
      *pid)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_dmx.c:346,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/ff_dmx.c:348,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/ff_dmx.c:356,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_dmx.c:358,1
    - Dst: memmove
      Src: /src/gpac/src/filters/ff_dmx.c:362,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/ff_dmx.c:367,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_dmx.c:373,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_dmx.c:375,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_dmx.c:383,1
    - Dst: avformat_open_input
      Src: /src/gpac/src/filters/ff_dmx.c:386,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:407,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_dmx.c:407,1
    - Dst: avformat_close_input
      Src: /src/gpac/src/filters/ff_dmx.c:408,1
    - Dst: avformat_free_context
      Src: /src/gpac/src/filters/ff_dmx.c:409,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_dmx.c:411,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_dmx.c:419,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_dmx.c:422,1
    - Dst: avformat_find_stream_info
      Src: /src/gpac/src/filters/ff_dmx.c:426,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_dmx.c:431,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_dmx.c:433,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:438,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_dmx.c:438,1
    - Dst: avformat_close_input
      Src: /src/gpac/src/filters/ff_dmx.c:440,1
    - Dst: avformat_free_context
      Src: /src/gpac/src/filters/ff_dmx.c:441,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_dmx.c:443,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:447,1
    - Dst: ffmpeg_report_options
      Src: /src/gpac/src/filters/ff_dmx.c:449,1
    - Dst: ffdmx_init_common
      Src: /src/gpac/src/filters/ff_dmx.c:450,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 111
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_FFDemuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 330
    functionDepth: 2
    functionLinenumber: 330
    functionLinenumberEnd: 457
    functionName: ffdmx_flush_input
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - gf_free
    - avformat_find_stream_info
    - av_dict_free
    - av_dict_copy
    - avformat_open_input
    - gf_filter_pid_get_packet
    - gf_realloc
    - memcpy
    - avformat_free_context
    - memmove
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - GF_LOG
    - av_err2str
    - gf_filter_pid_is_eos
    - gf_malloc
    - ffmpeg_report_options
    - ffdmx_init_common
    - avformat_close_input
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffdmx_flush_input(GF_Filter *filter, GF_FFDemuxCtx *ctx)
  - BBCount: 109
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_dmx.c:472,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/ff_dmx.c:475,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/ff_dmx.c:483,1
    - Dst: avio_read_partial
      Src: /src/gpac/src/filters/ff_dmx.c:488,1
    - Dst: AVERROR
      Src: /src/gpac/src/filters/ff_dmx.c:493,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/ff_dmx.c:494,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:501,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/ff_dmx.c:502,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/ff_dmx.c:506,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_dmx.c:508,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/ff_dmx.c:512,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:513,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_dmx.c:513,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/ff_dmx.c:526,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/ff_dmx.c:528,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/ff_dmx.c:529,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/ff_dmx.c:534,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/filters/ff_dmx.c:535,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/ff_dmx.c:538,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_dmx.c:540,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/ff_dmx.c:541,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/ff_dmx.c:543,1
    - Dst: ffdmx_flush_input
      Src: /src/gpac/src/filters/ff_dmx.c:551,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_dmx.c:562,1
    - Dst: gf_filter_pid_is_playing
      Src: /src/gpac/src/filters/ff_dmx.c:577,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/ff_dmx.c:579,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/ff_dmx.c:583,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/ff_dmx.c:587,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:592,1
    - Dst: GF_FFDemuxCtx*::on_pkt
      Src: /src/gpac/src/filters/ff_dmx.c:597,1
    - Dst: FF_INIT_PCK
      Src: /src/gpac/src/filters/ff_dmx.c:601,1
    - Dst: av_read_frame
      Src: /src/gpac/src/filters/ff_dmx.c:606,1
    - Dst: AVERROR
      Src: /src/gpac/src/filters/ff_dmx.c:611,1
    - Dst: FF_FREE_PCK
      Src: /src/gpac/src/filters/ff_dmx.c:615,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_dmx.c:623,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/ff_dmx.c:624,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/ff_dmx.c:625,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/ff_dmx.c:627,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_dmx.c:630,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:637,1
    - Dst: FF_FREE_PCK
      Src: /src/gpac/src/filters/ff_dmx.c:638,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:642,1
    - Dst: FF_FREE_PCK
      Src: /src/gpac/src/filters/ff_dmx.c:643,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:649,1
    - Dst: FF_FREE_PCK
      Src: /src/gpac/src/filters/ff_dmx.c:657,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:666,1
    - Dst: FF_FREE_PCK
      Src: /src/gpac/src/filters/ff_dmx.c:667,1
    - Dst: gf_filter_pid_is_playing
      Src: /src/gpac/src/filters/ff_dmx.c:670,1
    - Dst: FF_FREE_PCK
      Src: /src/gpac/src/filters/ff_dmx.c:671,1
    - Dst: FF_FREE_PCK
      Src: /src/gpac/src/filters/ff_dmx.c:676,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:700,1
    - Dst: FF_FREE_PCK
      Src: /src/gpac/src/filters/ff_dmx.c:702,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dmx.c:713,1
    - Dst: ffdmx_set_decoder_config
      Src: /src/gpac/src/filters/ff_dmx.c:715,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_dmx.c:719,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/ff_dmx.c:721,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/ff_dmx.c:724,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:725,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:725,1
    - Dst: gf_bs_read_u64_le
      Src: /src/gpac/src/filters/ff_dmx.c:728,1
    - Dst: ffmpeg_channel_layout_to_gpac
      Src: /src/gpac/src/filters/ff_dmx.c:729,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:730,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/ff_dmx.c:730,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/ff_dmx.c:737,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:738,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:738,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/ff_dmx.c:741,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/ff_dmx.c:742,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:743,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:743,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:744,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:744,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_dmx.c:746,1
    - Dst: ffdmx_parse_side_data
      Src: /src/gpac/src/filters/ff_dmx.c:755,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/ff_dmx.c:767,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_dmx.c:777,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/ff_dmx.c:780,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/ff_dmx.c:785,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_dmx.c:787,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/ff_dmx.c:797,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:808,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/ff_dmx.c:808,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:813,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/ff_dmx.c:818,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/ff_dmx.c:828,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:836,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/ff_dmx.c:836,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_dmx.c:841,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/ff_dmx.c:842,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/ff_dmx.c:843,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/ff_dmx.c:845,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/ff_dmx.c:851,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/ff_dmx.c:857,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/ff_dmx.c:862,1
    - Dst: gf_filter_pck_set_corrupted
      Src: /src/gpac/src/filters/ff_dmx.c:865,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/filters/ff_dmx.c:868,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:869,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/ff_dmx.c:869,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_dmx.c:876,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_dmx.c:878,1
    - Dst: gf_filter_pck_set_property_str
      Src: /src/gpac/src/filters/ff_dmx.c:881,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/ff_dmx.c:881,1
    - Dst: gf_filter_pck_set_property_str
      Src: /src/gpac/src/filters/ff_dmx.c:883,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/ff_dmx.c:883,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_dmx.c:886,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_dmx.c:888,1
    - Dst: gf_filter_pck_set_property_str
      Src: /src/gpac/src/filters/ff_dmx.c:890,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/ff_dmx.c:890,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/ff_dmx.c:897,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/ff_dmx.c:898,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/ff_dmx.c:900,1
    - Dst: FF_FREE_PCK
      Src: /src/gpac/src/filters/ff_dmx.c:905,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/ff_dmx.c:914,1
    - Dst: GF_FFDemuxCtx*::on_pkt
      Src: /src/gpac/src/filters/ff_dmx.c:920,1
    CyclomaticComplexity: 147
    EdgeCount: 147
    ICount: 382
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 927
      start: 459
    functionDepth: 11
    functionLinenumber: 459
    functionLinenumberEnd: 927
    functionName: ffdmx_process
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_filter_pid_raw_new
    - ffmpeg_channel_layout_to_gpac
    - ffdmx_parse_side_data
    - gf_list_count
    - gf_filter_pck_truncate
    - PROP_LONGUINT
    - PROP_LONGSINT
    - gf_filter_post_process_task
    - gf_filter_pck_set_property
    - gf_list_new
    - av_read_frame
    - memcpy
    - GF_FFDemuxCtx*::on_pkt
    - gf_list_add
    - ffdmx_set_decoder_config
    - gf_filter_ask_rt_reschedule
    - gf_filter_pck_discard
    - gf_filter_pck_set_corrupted
    - gf_net_get_ntp_ts
    - gf_filter_get_udta
    - gf_filter_pck_new_alloc
    - avio_read_partial
    - GF_LOG
    - gf_filter_pck_set_duration
    - av_err2str
    - gf_filter_pid_set_eos
    - gf_filter_pid_would_block
    - gf_filter_pid_is_playing
    - gf_filter_setup_failure
    - gf_filter_pck_set_sap
    - FF_INIT_PCK
    - gf_sys_clock_high_res
    - AVERROR
    - gf_list_del
    - gf_bs_read_u32_le
    - gf_filter_pid_set_property
    - gf_malloc
    - gf_filter_pck_new_shared
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pck_set_dts
    - gf_list_pop_front
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_property_str
    - gf_filter_pck_set_framing
    - gf_bs_del
    - ffdmx_flush_input
    - gf_bs_read_u64_le
    - PROP_STRING_NO_COPY
    - FF_FREE_PCK
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffdmx_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_dmx.c:932,1
    - Dst: ffmpeg_update_arg
      Src: /src/gpac/src/filters/ff_dmx.c:933,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - filter
    - arg_name
    - arg_val
    argTypes:
    - GF_Filter*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 934
      start: 930
    functionDepth: 2
    functionLinenumber: 930
    functionLinenumberEnd: 934
    functionName: ffdmx_update_arg
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - ffmpeg_update_arg
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffdmx_update_arg(GF_Filter *filter, const char *arg_name, const
      GF_PropertyValue *arg_val)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_ac3_cfg_parse
      Src: /src/gpac/src/filters/ff_dmx.c:960,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/filters/ff_dmx.c:968,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/ff_dmx.c:976,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/ff_dmx.c:978,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/ff_dmx.c:983,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/ff_dmx.c:985,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/ff_dmx.c:990,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/ff_dmx.c:992,1
    - Dst: gf_odf_av1_cfg_read
      Src: /src/gpac/src/filters/ff_dmx.c:997,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filters/ff_dmx.c:999,1
    - Dst: gf_odf_vp_cfg_read
      Src: /src/gpac/src/filters/ff_dmx.c:1005,1
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/filters/ff_dmx.c:1007,1
    - Dst: gf_odf_avs3v_cfg_read
      Src: /src/gpac/src/filters/ff_dmx.c:1012,1
    - Dst: gf_odf_avs3v_cfg_del
      Src: /src/gpac/src/filters/ff_dmx.c:1014,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 81
    argCount: 3
    argNames:
    - gpac_codec_id
    - dsi
    - dsi_size
    argTypes:
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1044
      start: 942
    functionDepth: 4
    functionLinenumber: 942
    functionLinenumberEnd: 1044
    functionName: ffdmx_valid_should_reframe
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - gf_odf_hevc_cfg_read
    - gf_odf_hevc_cfg_del
    - gf_odf_vp_cfg_read
    - gf_odf_vvc_cfg_del
    - gf_odf_av1_cfg_read
    - gf_odf_avc_cfg_del
    - gf_odf_ac3_cfg_parse
    - gf_m4a_get_config
    - gf_odf_avs3v_cfg_read
    - gf_odf_vp_cfg_del
    - gf_odf_vvc_cfg_read
    - gf_odf_av1_cfg_del
    - gf_odf_avs3v_cfg_del
    - gf_odf_avc_cfg_read
    linkageType: ''
    returnType: u32
    signature: u32 ffdmx_valid_should_reframe(u32 gpac_codec_id, u8 *dsi, u32 dsi_size)
  - BBCount: 80
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_is_temporary
      Src: /src/gpac/src/filters/ff_dmx.c:1053,1
    - Dst: gf_filter_meta_set_instances
      Src: /src/gpac/src/filters/ff_dmx.c:1054,1
    - Dst: av_packet_alloc
      Src: /src/gpac/src/filters/ff_dmx.c:1059,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_dmx.c:1062,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_dmx.c:1063,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/ff_dmx.c:1148,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1150,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1150,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_dmx.c:1152,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/ff_dmx.c:1158,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1160,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1160,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_dmx.c:1162,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/ff_dmx.c:1167,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1169,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1169,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_dmx.c:1171,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_dmx.c:1174,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/ff_dmx.c:1181,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1183,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1183,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/ff_dmx.c:1184,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1187,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1187,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1189,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1189,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1192,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1192,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1196,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/ff_dmx.c:1196,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1198,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/ff_dmx.c:1198,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1202,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/ff_dmx.c:1202,1
    - Dst: ffmpeg_tags_to_gpac
      Src: /src/gpac/src/filters/ff_dmx.c:1204,1
    - Dst: ffmpeg_codecid_to_gpac
      Src: /src/gpac/src/filters/ff_dmx.c:1206,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1208,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1208,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1211,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1211,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1215,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1215,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1225,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1225,1
    - Dst: gf_log_get_tool_level
      Src: /src/gpac/src/filters/ff_dmx.c:1230,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/filters/ff_dmx.c:1231,1
    - Dst: ffdmx_valid_should_reframe
      Src: /src/gpac/src/filters/ff_dmx.c:1232,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/filters/ff_dmx.c:1233,1
    - Dst: avcodec_get_name
      Src: /src/gpac/src/filters/ff_dmx.c:1236,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1238,1
    - Dst: PROP_POINTER
      Src: /src/gpac/src/filters/ff_dmx.c:1238,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1240,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1240,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1243,1
    - Dst: PROP_CONST_DATA
      Src: /src/gpac/src/filters/ff_dmx.c:1243,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1248,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/ff_dmx.c:1248,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_dmx.c:1253,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_dmx.c:1254,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_dmx.c:1255,1
    - Dst: ffdmx_set_decoder_config
      Src: /src/gpac/src/filters/ff_dmx.c:1263,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1268,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_dmx.c:1268,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/ff_dmx.c:1282,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1285,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_dmx.c:1285,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1286,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_dmx.c:1286,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1294,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1294,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1296,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1296,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1298,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1298,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1301,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1301,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1303,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1303,1
    - Dst: ffmpeg_codec_par_to_gpac
      Src: /src/gpac/src/filters/ff_dmx.c:1307,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1309,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1310,1
    - Dst: gf_media_get_reduced_frame_rate
      Src: /src/gpac/src/filters/ff_dmx.c:1316,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1317,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/ff_dmx.c:1317,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:1319,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1320,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/ff_dmx.c:1320,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1325,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_dmx.c:1325,1
    - Dst: ffmpeg_pixfmt_to_gpac
      Src: /src/gpac/src/filters/ff_dmx.c:1334,1
    - Dst: ffmpeg_pixfmt_is_fullrange
      Src: /src/gpac/src/filters/ff_dmx.c:1335,1
    - Dst: ffmpeg_pixfmt_from_codec_tag
      Src: /src/gpac/src/filters/ff_dmx.c:1337,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:1341,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1343,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1343,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1345,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_dmx.c:1345,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1350,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1350,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/ff_dmx.c:1350,1
    - Dst: strstr
      Src: /src/gpac/src/filters/ff_dmx.c:1354,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:1371,1
    - Dst: ffmpeg_codecid_to_gpac_audio_fmt
      Src: /src/gpac/src/filters/ff_dmx.c:1374,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1377,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1377,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1381,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1381,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1383,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/ff_dmx.c:1383,1
    - Dst: AVFMT_URL
      Src: /src/gpac/src/filters/ff_dmx.c:1383,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/ff_dmx.c:1385,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1386,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_dmx.c:1386,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1390,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1390,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1393,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_dmx.c:1393,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1395,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dmx.c:1395,1
    - Dst: ffdmx_parse_side_data
      Src: /src/gpac/src/filters/ff_dmx.c:1399,1
    - Dst: ffdmx_parse_side_data
      Src: /src/gpac/src/filters/ff_dmx.c:1403,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_dmx.c:1413,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_dmx.c:1414,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_dmx.c:1415,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/ff_dmx.c:1420,1
    - Dst: av_dict_get
      Src: /src/gpac/src/filters/ff_dmx.c:1424,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_dmx.c:1426,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_dmx.c:1427,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_dmx.c:1430,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1434,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_dmx.c:1435,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dmx.c:1439,1
    CyclomaticComplexity: 103
    EdgeCount: 103
    ICount: 276
    argCount: 3
    argNames:
    - filter
    - ctx
    - grab_type
    argTypes:
    - GF_Filter*
    - GF_FFDemuxCtx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1448
      start: 1046
    functionDepth: 11
    functionLinenumber: 1046
    functionLinenumberEnd: 1448
    functionName: ffdmx_init_common
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_filter_is_temporary
    - gf_filter_meta_set_instances
    - PROP_STRING
    - gf_file_exists
    - ffdmx_parse_side_data
    - memset
    - ffmpeg_pixfmt_from_codec_tag
    - gf_filter_pid_set_udta
    - gf_filter_pid_new
    - av_dict_get
    - PROP_POINTER
    - AVFMT_URL
    - gf_strdup
    - av_packet_alloc
    - sprintf
    - ffmpeg_codecid_to_gpac
    - ffdmx_set_decoder_config
    - PROP_BOOL
    - ffmpeg_tags_to_gpac
    - GF_LOG
    - gf_sys_is_test_mode
    - ffmpeg_pixfmt_to_gpac
    - strstr
    - PROP_FRAC64_INT
    - ffmpeg_codecid_to_gpac_audio_fmt
    - PROP_CONST_DATA
    - gf_media_get_reduced_frame_rate
    - gf_log_get_tool_level
    - gf_log_set_tool_level
    - ffmpeg_codec_par_to_gpac
    - gf_filter_pid_set_property
    - gf_malloc
    - PROP_FRAC_INT
    - gf_timestamp_rescale
    - ffmpeg_pixfmt_is_fullrange
    - PROP_UINT
    - avcodec_get_name
    - strcmp
    - GF_4CC
    - gf_filter_pid_set_name
    - ffdmx_valid_should_reframe
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffdmx_init_common(GF_Filter *filter, GF_FFDemuxCtx *ctx, u32
      grab_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fread
      Src: /src/gpac/src/filters/ff_dmx.c:1453,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/ff_dmx.c:1454,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - opaque
    - buf
    - buf_size
    argTypes:
    - void*
    - uint8_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1458
      start: 1450
    functionDepth: 2
    functionLinenumber: 1450
    functionLinenumberEnd: 1458
    functionName: ffavio_read_packet
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - gf_fread
    - gf_feof
    linkageType: ''
    returnType: int
    signature: int ffavio_read_packet(void *opaque, uint8_t *buf, int buf_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/ff_dmx.c:1464,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/ff_dmx.c:1465,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/ff_dmx.c:1466,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/ff_dmx.c:1469,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - opaque
    - offset
    - whence
    argTypes:
    - void*
    - int64_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1470
      start: 1460
    functionDepth: 2
    functionLinenumber: 1460
    functionLinenumberEnd: 1470
    functionName: ffavio_seek
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - gf_fsize
    - gf_fseek
    - gf_ftell
    linkageType: ''
    returnType: int64_t
    signature: int64_t ffavio_seek(void *opaque, int64_t offset, int whence)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_dmx.c:1475,1
    - Dst: ffmpeg_setup_logs
      Src: /src/gpac/src/filters/ff_dmx.c:1485,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/ff_dmx.c:1488,1
    - Dst: ffdmx_update_arg
      Src: /src/gpac/src/filters/ff_dmx.c:1489,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/ff_dmx.c:1489,1
    - Dst: ffmpeg_pixfmt_from_codec_tag
      Src: /src/gpac/src/filters/ff_dmx.c:1490,1
    - Dst: ffmpeg_codec_par_to_gpac
      Src: /src/gpac/src/filters/ff_dmx.c:1492,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/ff_dmx.c:1501,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/ff_dmx.c:1503,1
    - Dst: av_find_input_format
      Src: /src/gpac/src/filters/ff_dmx.c:1503,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:1506,1
    - Dst: avio_open2
      Src: /src/gpac/src/filters/ff_dmx.c:1511,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_dmx.c:1512,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:1514,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dmx.c:1520,1
    - Dst: strtoull
      Src: /src/gpac/src/filters/ff_dmx.c:1522,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:1524,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:1528,1
    - Dst: avformat_alloc_context
      Src: /src/gpac/src/filters/ff_dmx.c:1534,1
    - Dst: ffmpeg_set_mx_dmx_flags
      Src: /src/gpac/src/filters/ff_dmx.c:1535,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dmx.c:1539,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/ff_dmx.c:1540,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:1542,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_dmx.c:1545,1
    - Dst: avio_alloc_context
      Src: /src/gpac/src/filters/ff_dmx.c:1549,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:1553,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filters/ff_dmx.c:1557,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_dmx.c:1562,1
    - Dst: avformat_open_input
      Src: /src/gpac/src/filters/ff_dmx.c:1563,1
    - Dst: gf_filter_is_temporary
      Src: /src/gpac/src/filters/ff_dmx.c:1588,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/ff_dmx.c:1589,1
    - Dst: av_find_input_format
      Src: /src/gpac/src/filters/ff_dmx.c:1590,1
    - Dst: av_find_input_format
      Src: /src/gpac/src/filters/ff_dmx.c:1591,1
    - Dst: av_demuxer_iterate
      Src: /src/gpac/src/filters/ff_dmx.c:1596,1
    - Dst: av_match_name
      Src: /src/gpac/src/filters/ff_dmx.c:1597,1
    - Dst: gf_filter_meta_set_instances
      Src: /src/gpac/src/filters/ff_dmx.c:1605,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:1611,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_dmx.c:1611,1
    - Dst: avformat_close_input
      Src: /src/gpac/src/filters/ff_dmx.c:1612,1
    - Dst: avformat_free_context
      Src: /src/gpac/src/filters/ff_dmx.c:1613,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_dmx.c:1615,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_dmx.c:1622,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_dmx.c:1626,1
    - Dst: avformat_find_stream_info
      Src: /src/gpac/src/filters/ff_dmx.c:1630,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_dmx.c:1634,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_dmx.c:1636,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:1641,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_dmx.c:1641,1
    - Dst: avformat_close_input
      Src: /src/gpac/src/filters/ff_dmx.c:1643,1
    - Dst: avformat_free_context
      Src: /src/gpac/src/filters/ff_dmx.c:1644,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_dmx.c:1646,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:1651,1
    - Dst: ffmpeg_report_options
      Src: /src/gpac/src/filters/ff_dmx.c:1653,1
    - Dst: ffdmx_init_common
      Src: /src/gpac/src/filters/ff_dmx.c:1654,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 142
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1655
      start: 1473
    functionDepth: 12
    functionLinenumber: 1473
    functionLinenumberEnd: 1655
    functionName: ffdmx_initialize
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_is_temporary
    - gf_filter_meta_set_instances
    - avformat_find_stream_info
    - avio_open2
    - gf_fileio_translate_url
    - ffdmx_update_arg
    - gf_fopen
    - ffmpeg_pixfmt_from_codec_tag
    - av_dict_free
    - av_dict_copy
    - avformat_open_input
    - gf_sys_is_cov_mode
    - strrchr
    - av_find_input_format
    - avformat_free_context
    - strncmp
    - stricmp
    - gf_filter_get_udta
    - av_demuxer_iterate
    - GF_LOG
    - av_err2str
    - strtoull
    - ffmpeg_set_mx_dmx_flags
    - av_malloc
    - ffmpeg_codec_par_to_gpac
    - gf_malloc
    - ffmpeg_report_options
    - ffdmx_init_common
    - avio_alloc_context
    - avformat_alloc_context
    - ffmpeg_setup_logs
    - avformat_close_input
    - PROP_STRING_NO_COPY
    - av_match_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffdmx_initialize(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:1666,1
    - Dst: AVERROR
      Src: /src/gpac/src/filters/ff_dmx.c:1670,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_dmx.c:1674,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 3
    argNames:
    - opaque
    - buf
    - buf_size
    argTypes:
    - void*
    - uint8_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1680
      start: 1657
    functionDepth: 1
    functionLinenumber: 1657
    functionLinenumberEnd: 1680
    functionName: ffdmx_read_packet
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - memcpy
    - AVERROR
    linkageType: ''
    returnType: int
    signature: int ffdmx_read_packet(void *opaque, uint8_t *buf, int buf_size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dmx.c:1686,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/ff_dmx.c:1689,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/ff_dmx.c:1691,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 3
    argNames:
    - opaque
    - offset
    - whence
    argTypes:
    - void*
    - int64_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1707
      start: 1682
    functionDepth: 1
    functionLinenumber: 1682
    functionLinenumberEnd: 1707
    functionName: ffdmx_seek
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - gf_filter_release_property
    - gf_filter_pid_get_info
    - gf_filter_pid_get_property
    linkageType: ''
    returnType: int64_t
    signature: int64_t ffdmx_seek(void *opaque, int64_t offset, int whence)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_dmx.c:1711,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/ff_dmx.c:1716,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dmx.c:1724,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/ff_dmx.c:1725,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_dmx.c:1727,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_dmx.c:1730,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_dmx.c:1734,1
    - Dst: avio_alloc_context
      Src: /src/gpac/src/filters/ff_dmx.c:1737,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:1740,1
    - Dst: avformat_alloc_context
      Src: /src/gpac/src/filters/ff_dmx.c:1743,1
    - Dst: ffmpeg_set_mx_dmx_flags
      Src: /src/gpac/src/filters/ff_dmx.c:1744,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 33
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1746
      start: 1709
    functionDepth: 1
    functionLinenumber: 1709
    functionLinenumberEnd: 1746
    functionName: ffdmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_filter_pid_get_property
    - avio_alloc_context
    - gf_filter_pid_remove
    - GF_LOG
    - avformat_alloc_context
    - ffmpeg_set_mx_dmx_flags
    - av_malloc
    - stricmp
    - gf_malloc
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffdmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_dmx.c:1752,1
    - Dst: av_seek_frame
      Src: /src/gpac/src/filters/ff_dmx.c:1791,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:1793,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_dmx.c:1793,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:1803,1
    - Dst: av_seek_frame
      Src: /src/gpac/src/filters/ff_dmx.c:1805,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/ff_dmx.c:1807,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/ff_dmx.c:1809,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 75
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1845
      start: 1749
    functionDepth: 1
    functionLinenumber: 1749
    functionLinenumberEnd: 1845
    functionName: ffdmx_process_event
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - av_seek_frame
    - GF_LOG
    - av_err2str
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool ffdmx_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dmx.c:1849,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dmx.c:1850,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dmx.c:1851,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dmx.c:1852,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dmx.c:1853,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/ff_dmx.c:1855,1
    - Dst: av_find_input_format
      Src: /src/gpac/src/filters/ff_dmx.c:1857,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1862
      start: 1847
    functionDepth: 4
    functionLinenumber: 1847
    functionLinenumberEnd: 1862
    functionName: ffdmx_probe_url
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - strncmp
    - gf_file_ext_start
    - av_find_input_format
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore ffdmx_probe_url(const char *url, const char *mime)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: av_register_all
      Src: /src/gpac/src/filters/ff_dmx.c:1872,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_dmx.c:1875,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_dmx.c:1880,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_dmx.c:1881,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_dmx.c:1882,1
    - Dst: av_probe_input_format3
      Src: /src/gpac/src/filters/ff_dmx.c:1884,1
    - Dst: av_probe_input_format3
      Src: /src/gpac/src/filters/ff_dmx.c:1886,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_dmx.c:1888,1
    - Dst: av_probe_input_format3
      Src: /src/gpac/src/filters/ff_dmx.c:1892,1
    - Dst: av_probe_input_format3
      Src: /src/gpac/src/filters/ff_dmx.c:1894,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 38
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1907
      start: 1865
    functionDepth: 0
    functionLinenumber: 1865
    functionLinenumberEnd: 1907
    functionName: ffdmx_probe_data
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memcpy
    - av_probe_input_format3
    - memset
    - av_register_all
    - gf_malloc
    linkageType: ''
    returnType: char
    signature: char *ffdmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1910
      start: 1909
    functionDepth: 0
    functionLinenumber: 1909
    functionLinenumberEnd: 1910
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ffmpeg_build_register
      Src: /src/gpac/src/filters/ff_dmx.c:1980,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1981
      start: 1978
    functionDepth: 8
    functionLinenumber: 1978
    functionLinenumberEnd: 1981
    functionName: ffdmx_register
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - ffmpeg_build_register
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ffdmx_register(GF_FilterSession *session)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_is_instance_of
      Src: /src/gpac/src/filters/ff_dmx.c:1986,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_dmx.c:1988,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - filter
    - udta
    - on_pkt
    argTypes:
    - GF_Filter*
    - void*
    - GF_FFDemuxCallbackFn
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1998
      start: 1983
    functionDepth: 1
    functionLinenumber: 1983
    functionLinenumberEnd: 1998
    functionName: gf_filter_bind_ffdmx_callbacks
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - gf_filter_is_instance_of
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_bind_ffdmx_callbacks(GF_Filter *filter, void *udta,
      GF_FFDemuxCallbackFn on_pkt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_dmx.c:2033,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_dmx.c:2035,1
    - Dst: ffdmx_finalize
      Src: /src/gpac/src/filters/ff_dmx.c:2038,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2040
      start: 2031
    functionDepth: 6
    functionLinenumber: 2031
    functionLinenumberEnd: 2040
    functionName: ffdmxpid_finalize
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - gf_free
    - ffdmx_finalize
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ffdmxpid_finalize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/ff_dmx.c:2063,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2065
      start: 2061
    functionDepth: 6
    functionLinenumber: 2061
    functionLinenumberEnd: 2065
    functionName: ffdmxpid_register
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ffdmxpid_register(GF_FilterSession *session)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_dmx.c:2078,1
    - Dst: ffmpeg_setup_logs
      Src: /src/gpac/src/filters/ff_dmx.c:2084,1
    - Dst: avdevice_register_all
      Src: /src/gpac/src/filters/ff_dmx.c:2086,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:2089,1
    - Dst: av_find_input_format
      Src: /src/gpac/src/filters/ff_dmx.c:2106,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:2108,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:2112,1
    - Dst: av_input_video_device_next
      Src: /src/gpac/src/filters/ff_dmx.c:2122,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:2134,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dmx.c:2140,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dmx.c:2141,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dmx.c:2142,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/ff_dmx.c:2144,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_dmx.c:2145,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_dmx.c:2146,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dmx.c:2155,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/ff_dmx.c:2156,1
    - Dst: strcat
      Src: /src/gpac/src/filters/ff_dmx.c:2157,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dmx.c:2161,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_dmx.c:2163,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_dmx.c:2165,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_dmx.c:2171,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dmx.c:2175,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/ff_dmx.c:2178,1
    - Dst: strcat
      Src: /src/gpac/src/filters/ff_dmx.c:2179,1
    - Dst: avformat_alloc_context
      Src: /src/gpac/src/filters/ff_dmx.c:2186,1
    - Dst: ffmpeg_set_mx_dmx_flags
      Src: /src/gpac/src/filters/ff_dmx.c:2187,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_dmx.c:2190,1
    - Dst: avformat_open_input
      Src: /src/gpac/src/filters/ff_dmx.c:2192,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/ff_dmx.c:2193,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:2194,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_dmx.c:2195,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_dmx.c:2197,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_dmx.c:2198,1
    - Dst: avformat_open_input
      Src: /src/gpac/src/filters/ff_dmx.c:2199,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_dmx.c:2203,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_dmx.c:2205,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_dmx.c:2206,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:2209,1
    - Dst: avformat_open_input
      Src: /src/gpac/src/filters/ff_dmx.c:2210,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_dmx.c:2212,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_dmx.c:2214,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_dmx.c:2215,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:2216,1
    - Dst: avformat_open_input
      Src: /src/gpac/src/filters/ff_dmx.c:2218,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_dmx.c:2221,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:2224,1
    - Dst: avformat_open_input
      Src: /src/gpac/src/filters/ff_dmx.c:2225,1
    - Dst: av_dict_get
      Src: /src/gpac/src/filters/ff_dmx.c:2231,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_dmx.c:2233,1
    - Dst: strchr
      Src: /src/gpac/src/filters/ff_dmx.c:2235,1
    - Dst: atoi
      Src: /src/gpac/src/filters/ff_dmx.c:2236,1
    - Dst: atoi
      Src: /src/gpac/src/filters/ff_dmx.c:2239,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:2247,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_dmx.c:2248,1
    - Dst: av_dump_format
      Src: /src/gpac/src/filters/ff_dmx.c:2252,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_dmx.c:2257,1
    - Dst: strstr
      Src: /src/gpac/src/filters/ff_dmx.c:2257,1
    - Dst: strstr
      Src: /src/gpac/src/filters/ff_dmx.c:2257,1
    - Dst: avformat_find_stream_info
      Src: /src/gpac/src/filters/ff_dmx.c:2261,1
    - Dst: ffmpeg_report_options
      Src: /src/gpac/src/filters/ff_dmx.c:2263,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:2266,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_dmx.c:2266,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:2291,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:2295,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_dmx.c:2300,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_dmx.c:2301,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:2306,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dmx.c:2324,1
    - Dst: ffdmx_init_common
      Src: /src/gpac/src/filters/ff_dmx.c:2327,1
    CyclomaticComplexity: 75
    EdgeCount: 75
    ICount: 197
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2328
      start: 2070
    functionDepth: 12
    functionLinenumber: 2070
    functionLinenumberEnd: 2328
    functionName: ffavin_initialize
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - av_dict_set
    - avformat_find_stream_info
    - strcpy
    - memset
    - atoi
    - av_dict_free
    - av_dict_copy
    - avformat_open_input
    - strchr
    - av_dict_get
    - strcat
    - av_find_input_format
    - sprintf
    - strncmp
    - stricmp
    - gf_filter_get_udta
    - sscanf
    - GF_LOG
    - av_err2str
    - strstr
    - ffmpeg_set_mx_dmx_flags
    - gf_malloc
    - ffmpeg_report_options
    - ffdmx_init_common
    - avdevice_register_all
    - av_dump_format
    - avformat_alloc_context
    - ffmpeg_setup_logs
    - strcmp
    - av_input_video_device_next
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffavin_initialize(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dmx.c:2332,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dmx.c:2333,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dmx.c:2334,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2336
      start: 2330
    functionDepth: 0
    functionLinenumber: 2330
    functionLinenumberEnd: 2336
    functionName: ffavin_probe_url
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - strncmp
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore ffavin_probe_url(const char *url, const char *mime)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: av_find_input_format
      Src: /src/gpac/src/filters/ff_dmx.c:2419,1
    - Dst: AV_IS_INPUT_DEVICE
      Src: /src/gpac/src/filters/ff_dmx.c:2422,1
    - Dst: avdevice_list_input_sources
      Src: /src/gpac/src/filters/ff_dmx.c:2428,1
    - Dst: avdevice_list_input_sources
      Src: /src/gpac/src/filters/ff_dmx.c:2430,1
    - Dst: avformat_alloc_context
      Src: /src/gpac/src/filters/ff_dmx.c:2435,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_dmx.c:2439,1
    - Dst: avformat_open_input
      Src: /src/gpac/src/filters/ff_dmx.c:2440,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_dmx.c:2442,1
    - Dst: avdevice_list_devices
      Src: /src/gpac/src/filters/ff_dmx.c:2446,1
    - Dst: avformat_close_input
      Src: /src/gpac/src/filters/ff_dmx.c:2449,1
    - Dst: avformat_free_context
      Src: /src/gpac/src/filters/ff_dmx.c:2450,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/ff_dmx.c:2455,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/ff_dmx.c:2457,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/ff_dmx.c:2458,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/ff_dmx.c:2459,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_dmx.c:2462,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/ff_dmx.c:2463,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/ff_dmx.c:2464,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/ff_dmx.c:2465,1
    - Dst: avdevice_free_list_devices
      Src: /src/gpac/src/filters/ff_dmx.c:2469,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 40
    argCount: 2
    argNames:
    - dev_name
    - is_audio
    argTypes:
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2470
      start: 2414
    functionDepth: 1
    functionLinenumber: 2414
    functionLinenumberEnd: 2470
    functionName: ffavin_enum_devices
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - avdevice_list_devices
    - AV_IS_INPUT_DEVICE
    - av_dict_set
    - av_find_input_format
    - avdevice_list_input_sources
    - avdevice_free_list_devices
    - avformat_free_context
    - sprintf
    - avformat_alloc_context
    - avformat_close_input
    - av_dict_free
    - gf_dynstrcat
    - avformat_open_input
    linkageType: ''
    returnType: void
    signature: void ffavin_enum_devices(const char *dev_name, Bool is_audio)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: vsnprintf
      Src: /src/gpac/src/filters/ff_dmx.c:2476,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/ff_dmx.c:2480,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/ff_dmx.c:2482,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - avcl
    - level
    - fmt
    - vl
    argTypes:
    - void*
    - int
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2484
      start: 2472
    functionDepth: 1
    functionLinenumber: 2472
    functionLinenumberEnd: 2484
    functionName: ffavin_log_none
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - gf_dynstrcat
    - vsnprintf
    linkageType: ''
    returnType: void
    signature: void ffavin_log_none(void *avcl, int level, const char *fmt, va_list
      vl)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: ffmpeg_build_register
      Src: /src/gpac/src/filters/ff_dmx.c:2489,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/ff_dmx.c:2491,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/ff_dmx.c:2492,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/ff_dmx.c:2494,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/ff_dmx.c:2494,1
    - Dst: gf_sys_get_argc
      Src: /src/gpac/src/filters/ff_dmx.c:2499,1
    - Dst: gf_sys_get_arg
      Src: /src/gpac/src/filters/ff_dmx.c:2501,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dmx.c:2502,1
    - Dst: av_log_set_callback
      Src: /src/gpac/src/filters/ff_dmx.c:2512,1
    - Dst: av_input_audio_device_next
      Src: /src/gpac/src/filters/ff_dmx.c:2516,1
    - Dst: av_input_video_device_next
      Src: /src/gpac/src/filters/ff_dmx.c:2518,1
    - Dst: ffavin_enum_devices
      Src: /src/gpac/src/filters/ff_dmx.c:2528,1
    - Dst: av_log_set_callback
      Src: /src/gpac/src/filters/ff_dmx.c:2530,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_dmx.c:2532,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/ff_dmx.c:2535,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/ff_dmx.c:2536,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_dmx.c:2537,1
    - Dst: ffmpeg_register_set_dyn_help
      Src: /src/gpac/src/filters/ff_dmx.c:2539,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 46
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2543
      start: 2487
    functionDepth: 8
    functionLinenumber: 2487
    functionLinenumberEnd: 2543
    functionName: ffavin_register
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_opts_set_key
    - gf_opts_get_bool
    - ffavin_enum_devices
    - ffmpeg_build_register
    - strncmp
    - ffmpeg_register_set_dyn_help
    - gf_sys_get_arg
    - av_log_set_callback
    - gf_dynstrcat
    - av_input_video_device_next
    - gf_sys_get_argc
    - av_input_audio_device_next
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ffavin_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2550
      start: 2547
    functionDepth: 0
    functionLinenumber: 2547
    functionLinenumberEnd: 2550
    functionName: ffavin_register
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ffavin_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2561
      start: 2558
    functionDepth: 0
    functionLinenumber: 2558
    functionLinenumberEnd: 2561
    functionName: ffdmx_register
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ffdmx_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2565
      start: 2562
    functionDepth: 0
    functionLinenumber: 2562
    functionLinenumberEnd: 2565
    functionName: ffdmxpid_register
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ffdmxpid_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2570
      start: 2567
    functionDepth: 0
    functionLinenumber: 2567
    functionLinenumberEnd: 2570
    functionName: ffavin_register
    functionSourceFile: /src/gpac/src/filters/ff_dmx.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ffavin_register(GF_FilterSession *session)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/filelist.c:281,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/filelist.c:282,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/filelist.c:283,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/filelist.c:284,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/filelist.c:292,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/filelist.c:293,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/filelist.c:296,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/filelist.c:297,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:304,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:309,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:324,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:325,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 46
    argCount: 4
    argNames:
    - ctx
    - iopid
    - prev_timescale
    - is_reassign
    argTypes:
    - GF_FileListCtx*
    - FileListPid*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 275
    functionDepth: 1
    functionLinenumber: 275
    functionLinenumberEnd: 341
    functionName: filelist_start_ipid
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_init_play_event
    - gf_timestamp_rescale
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: void
    signature: void filelist_start_ipid(GF_FileListCtx *ctx, FileListPid *iopid, u32
      prev_timescale, Bool is_reassign)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:348,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/filelist.c:349,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - cbk
    - prop_4cc
    - prop_name
    - src_prop
    argTypes:
    - void*
    - u32
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 352
    functionName: filelist_merge_prop
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property_str
    - gf_filter_pid_get_property
    linkageType: ''
    returnType: Bool
    signature: Bool filelist_merge_prop(void *cbk, u32 prop_4cc, const char *prop_name,
      const GF_PropertyValue *src_prop)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/filelist.c:359,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/filelist.c:360,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/filelist.c:361,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:362,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/filelist.c:362,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - opid
    argTypes:
    - GF_FileListCtx*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 354
    functionDepth: 1
    functionLinenumber: 354
    functionLinenumberEnd: 363
    functionName: filelist_push_period_id
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_dynstrcat
    - gf_filter_pid_set_property
    - sprintf
    - PROP_STRING_NO_COPY
    linkageType: ''
    returnType: void
    signature: void filelist_push_period_id(GF_FileListCtx *ctx, GF_FilterPid *opid)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/filelist.c:369,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/filelist.c:369,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/filelist.c:372,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/filelist.c:372,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/filelist.c:375,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/filelist.c:375,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/filelist.c:378,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/filelist.c:378,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_FileListCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 365
    functionDepth: 1
    functionLinenumber: 365
    functionLinenumberEnd: 380
    functionName: filelist_override_caps
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - GF_ARRAY_LENGTH
    - gf_filter_override_caps
    linkageType: ''
    returnType: void
    signature: void filelist_override_caps(GF_Filter *filter, GF_FileListCtx *ctx)
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/filelist.c:393,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/filelist.c:399,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/filelist.c:407,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/filelist.c:411,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:414,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/filelist.c:415,1
    - Dst: gf_filter_force_main_thread
      Src: /src/gpac/src/filters/filelist.c:416,1
    - Dst: filelist_override_caps
      Src: /src/gpac/src/filters/filelist.c:422,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:427,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:429,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:433,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/filters/filelist.c:438,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/filelist.c:447,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/filters/filelist.c:455,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/filelist.c:458,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/filelist.c:464,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/filelist.c:467,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:468,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/filelist.c:473,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:476,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:477,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:480,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:481,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/filelist.c:488,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:492,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/filelist.c:492,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:493,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/filelist.c:493,1
    - Dst: gf_filter_pid_push_properties
      Src: /src/gpac/src/filters/filelist.c:496,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:499,1
    - Dst: gf_filter_pid_reset_properties
      Src: /src/gpac/src/filters/filelist.c:504,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/filelist.c:506,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:509,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/filelist.c:509,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:511,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/filelist.c:511,1
    - Dst: gf_filter_pid_merge_properties
      Src: /src/gpac/src/filters/filelist.c:517,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:519,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:520,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:521,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:525,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/filelist.c:525,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:526,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/filelist.c:526,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:527,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:529,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/filters/filelist.c:531,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:534,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:536,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:538,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:541,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/filelist.c:543,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:554,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/filelist.c:554,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:558,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/filelist.c:558,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:559,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/filelist.c:559,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:561,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/filelist.c:561,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:562,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/filelist.c:562,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:565,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/filelist.c:565,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:567,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:569,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/filelist.c:569,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:571,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:573,1
    - Dst: gf_filter_pid_push_properties
      Src: /src/gpac/src/filters/filelist.c:577,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:583,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:590,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:592,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:594,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/filelist.c:594,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:602,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:606,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:609,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:610,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:619,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:620,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:622,1
    - Dst: filelist_push_period_id
      Src: /src/gpac/src/filters/filelist.c:629,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:633,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:634,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/filelist.c:636,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:639,1
    - Dst: filelist_start_ipid
      Src: /src/gpac/src/filters/filelist.c:643,1
    - Dst: filelist_start_ipid
      Src: /src/gpac/src/filters/filelist.c:647,1
    CyclomaticComplexity: 75
    EdgeCount: 75
    ICount: 219
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 650
      start: 382
    functionDepth: 4
    functionLinenumber: 382
    functionLinenumberEnd: 650
    functionName: filelist_configure_pid
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_free
    - filelist_push_period_id
    - GF_SAFEALLOC
    - PROP_STRING
    - gf_fileio_is_main_thread
    - gf_filter_pid_set_property_str
    - gf_filter_pid_check_caps
    - gf_list_count
    - gf_filter_pid_set_udta
    - gf_filter_pid_new
    - PROP_LONGSINT
    - gf_list_get
    - gf_strdup
    - gf_filter_pid_reset_properties
    - gf_filter_force_main_thread
    - filelist_override_caps
    - gf_list_add
    - PROP_BOOL
    - gf_filter_pid_get_timescale
    - gf_audio_fmt_bit_depth
    - gf_filter_get_udta
    - gf_filter_pid_copy_properties
    - gf_filter_pid_set_property
    - PROP_NAME
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_merge_properties
    - filelist_start_ipid
    - strcmp
    - PROP_STRING_NO_COPY
    - gf_filter_pid_get_udta
    - gf_filter_pid_push_properties
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err filelist_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/filelist.c:657,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/filelist.c:660,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:661,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:663,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/filelist.c:672,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/filelist.c:686,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:693,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/filelist.c:701,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 43
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 652
    functionDepth: 1
    functionLinenumber: 652
    functionLinenumberEnd: 706
    functionName: filelist_process_event
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - memcpy
    - gf_filter_pid_init_play_event
    - gf_list_count
    - gf_filter_pid_send_event
    - gf_filter_post_process_task
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool filelist_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/filelist.c:715,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/src/filters/filelist.c:720,1
    - Dst: gf_isom_probe_file
      Src: /src/gpac/src/filters/filelist.c:723,1
    - Dst: strstr
      Src: /src/gpac/src/filters/filelist.c:741,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:750,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:754,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:758,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:764,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:765,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/src/filters/filelist.c:766,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:769,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:774,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:775,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:780,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 62
    argCount: 2
    argNames:
    - ctx
    - szURL
    argTypes:
    - GF_FileListCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 781
      start: 709
    functionDepth: 3
    functionLinenumber: 709
    functionLinenumberEnd: 781
    functionName: filelist_check_implicit_cat
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_probe_file
    - gf_strdup
    - gf_url_concatenate
    - strstr
    - gf_url_colon_suffix
    linkageType: ''
    returnType: void
    signature: void filelist_check_implicit_cat(GF_FileListCtx *ctx, char *szURL)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filters/filelist.c:786,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/filelist.c:794,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:799,1
    - Dst: gf_net_parse_date
      Src: /src/gpac/src/filters/filelist.c:800,1
    - Dst: gf_parse_lfrac
      Src: /src/gpac/src/filters/filelist.c:813,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 3
    argNames:
    - aval
    - frac
    - flags
    argTypes:
    - char*
    - GF_Fraction64*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 814
      start: 783
    functionDepth: 3
    functionLinenumber: 783
    functionLinenumberEnd: 814
    functionName: filelist_parse_splice_time
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_parse_lfrac
    - gf_net_parse_date
    - stricmp
    - strchr
    - strlen
    linkageType: ''
    returnType: void
    signature: void filelist_parse_splice_time(char *aval, GF_Fraction64 *frac, u32
      *flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:818,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/filelist.c:820,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/filelist.c:821,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:823,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - chap_name
    argTypes:
    - GF_FileListCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 826
      start: 816
    functionDepth: 1
    functionLinenumber: 816
    functionLinenumberEnd: 826
    functionName: push_chapter
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_timestamp_rescale
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void push_chapter(GF_FileListCtx *ctx, char *chap_name)
  - BBCount: 96
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:856,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:861,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:867,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/filelist.c:868,1
    - Dst: filelist_check_implicit_cat
      Src: /src/gpac/src/filters/filelist.c:870,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:871,1
    - Dst: gf_file_modification_time
      Src: /src/gpac/src/filters/filelist.c:883,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/filelist.c:886,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:888,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/filelist.c:902,1
    - Dst: gf_fgets
      Src: /src/gpac/src/filters/filelist.c:906,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/filelist.c:907,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/filelist.c:909,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/filelist.c:921,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/filelist.c:927,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/filelist.c:931,1
    - Dst: gf_file_modification_time
      Src: /src/gpac/src/filters/filelist.c:932,1
    - Dst: strlen
      Src: /src/gpac/src/filters/filelist.c:938,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/filelist.c:941,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/filelist.c:942,1
    - Dst: gf_file_modification_time
      Src: /src/gpac/src/filters/filelist.c:943,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:947,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:965,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:975,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/filelist.c:976,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:977,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/filelist.c:979,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:980,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:993,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1000,1
    - Dst: atoi
      Src: /src/gpac/src/filters/filelist.c:1002,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1003,1
    - Dst: atof
      Src: /src/gpac/src/filters/filelist.c:1005,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1006,1
    - Dst: atof
      Src: /src/gpac/src/filters/filelist.c:1008,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1009,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1011,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1013,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/filelist.c:1015,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1016,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/filelist.c:1018,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1019,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1024,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/filelist.c:1026,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1027,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/filelist.c:1030,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/filelist.c:1031,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/filelist.c:1032,1
    - Dst: filelist_override_caps
      Src: /src/gpac/src/filters/filelist.c:1036,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1038,1
    - Dst: atoi
      Src: /src/gpac/src/filters/filelist.c:1039,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1040,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:1041,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:1042,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1043,1
    - Dst: filelist_parse_splice_time
      Src: /src/gpac/src/filters/filelist.c:1044,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1045,1
    - Dst: filelist_parse_splice_time
      Src: /src/gpac/src/filters/filelist.c:1046,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1047,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1049,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1051,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1053,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:1054,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:1055,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1056,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/filelist.c:1058,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1061,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:1062,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:1063,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1064,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1064,1
    - Dst: strstr
      Src: /src/gpac/src/filters/filelist.c:1066,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:1067,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/filelist.c:1068,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/filelist.c:1083,1
    - Dst: strlen
      Src: /src/gpac/src/filters/filelist.c:1083,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/filelist.c:1124,1
    - Dst: gf_file_modification_time
      Src: /src/gpac/src/filters/filelist.c:1155,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:1179,1
    - Dst: strlen
      Src: /src/gpac/src/filters/filelist.c:1184,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:1185,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/filelist.c:1196,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/filelist.c:1198,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:1200,1
    - Dst: filelist_check_implicit_cat
      Src: /src/gpac/src/filters/filelist.c:1208,1
    - Dst: push_chapter
      Src: /src/gpac/src/filters/filelist.c:1210,1
    CyclomaticComplexity: 146
    EdgeCount: 146
    ICount: 345
    argCount: 4
    argNames:
    - filter
    - ctx
    - szURL
    - is_splice_update
    argTypes:
    - GF_Filter*
    - GF_FileListCtx*
    - char[]
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1212
      start: 829
    functionDepth: 5
    functionLinenumber: 829
    functionLinenumberEnd: 1212
    functionName: filelist_next_url
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - gf_fopen
    - atoi
    - gf_file_modification_time
    - strchr
    - gf_sys_clock
    - push_chapter
    - gf_list_get
    - gf_feof
    - gf_strdup
    - gf_fseek
    - atof
    - filelist_override_caps
    - strncmp
    - stricmp
    - gf_dynstrcat
    - gf_crc_32
    - sscanf
    - GF_LOG
    - gf_fgets
    - filelist_parse_splice_time
    - strstr
    - strncpy
    - strlen
    - gf_fclose
    - gf_url_concatenate
    - filelist_check_implicit_cat
    - strcmp
    linkageType: ''
    returnType: Bool
    signature: Bool filelist_next_url(GF_Filter *filter, GF_FileListCtx *ctx, char
      szURL[GF_MAX_PATH], Bool is_splice_update)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/filelist.c:1218,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:1220,1
    - Dst: gf_filter_get_src_args
      Src: /src/gpac/src/filters/filelist.c:1220,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/filelist.c:1220,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1222,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1224,1
    - Dst: gf_filter_pid_is_filter_in_parents
      Src: /src/gpac/src/filters/filelist.c:1227,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/filelist.c:1231,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/filelist.c:1232,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - failed_filter
    - udta
    - err
    argTypes:
    - GF_Filter*
    - void*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1234
      start: 1214
    functionDepth: 3
    functionLinenumber: 1214
    functionLinenumberEnd: 1234
    functionName: filelist_on_filter_setup_error
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - GF_LOG
    - gf_filter_pid_is_filter_in_parents
    - gf_list_count
    - gf_filter_get_src_args
    - gf_error_to_string
    - gf_list_del_item
    - gf_filter_post_process_task
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool filelist_on_filter_setup_error(GF_Filter *failed_filter, void
      *udta, GF_Err err)
  - BBCount: 57
    BranchProfiles: []
    Callsites:
    - Dst: filelist_next_url
      Src: /src/gpac/src/filters/filelist.c:1255,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/filelist.c:1258,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1260,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1262,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/filelist.c:1263,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/filelist.c:1265,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1271,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:1278,1
    - Dst: assert
      Src: /src/gpac/src/filters/filelist.c:1287,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/filelist.c:1289,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/filelist.c:1294,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1296,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1297,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/filters/filelist.c:1298,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1305,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/filelist.c:1306,1
    - Dst: gf_filter_remove_src
      Src: /src/gpac/src/filters/filelist.c:1307,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:1316,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1322,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1329,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/filelist.c:1330,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/filelist.c:1332,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/filelist.c:1339,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/filelist.c:1340,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/filelist.c:1341,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/filelist.c:1342,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/filelist.c:1345,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1349,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1350,1
    - Dst: gf_filter_pid_clear_eos
      Src: /src/gpac/src/filters/filelist.c:1352,1
    - Dst: filelist_start_ipid
      Src: /src/gpac/src/filters/filelist.c:1353,1
    - Dst: gf_filter_lock_all
      Src: /src/gpac/src/filters/filelist.c:1369,1
    - Dst: gf_filter_reset_source
      Src: /src/gpac/src/filters/filelist.c:1371,1
    - Dst: strstr
      Src: /src/gpac/src/filters/filelist.c:1380,1
    - Dst: strstr
      Src: /src/gpac/src/filters/filelist.c:1382,1
    - Dst: strstr
      Src: /src/gpac/src/filters/filelist.c:1384,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:1387,1
    - Dst: gf_filter_lock_all
      Src: /src/gpac/src/filters/filelist.c:1388,1
    - Dst: SET_SOURCE
      Src: /src/gpac/src/filters/filelist.c:1432,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/filelist.c:1434,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1439,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:1444,1
    - Dst: gf_filter_lock_all
      Src: /src/gpac/src/filters/filelist.c:1445,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/filelist.c:1448,1
    - Dst: memset
      Src: /src/gpac/src/filters/filelist.c:1449,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/filters/filelist.c:1454,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:1456,1
    - Dst: gf_filter_load_filter
      Src: /src/gpac/src/filters/filelist.c:1460,1
    - Dst: gf_filter_require_source_id
      Src: /src/gpac/src/filters/filelist.c:1461,1
    - Dst: gf_filter_connect_source
      Src: /src/gpac/src/filters/filelist.c:1464,1
    - Dst: gf_filter_set_setup_failure_callback
      Src: /src/gpac/src/filters/filelist.c:1467,1
    - Dst: gf_filter_require_source_id
      Src: /src/gpac/src/filters/filelist.c:1468,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/filelist.c:1473,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:1474,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/filelist.c:1474,1
    - Dst: gf_filter_lock_all
      Src: /src/gpac/src/filters/filelist.c:1480,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/filelist.c:1484,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1485,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/filelist.c:1485,1
    - Dst: SET_SOURCE
      Src: /src/gpac/src/filters/filelist.c:1487,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/filelist.c:1490,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/filelist.c:1493,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/filelist.c:1507,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/filelist.c:1510,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:1521,1
    - Dst: atoi
      Src: /src/gpac/src/filters/filelist.c:1524,1
    - Dst: atoi
      Src: /src/gpac/src/filters/filelist.c:1528,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/filelist.c:1534,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/filelist.c:1537,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:1545,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/filelist.c:1552,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:1553,1
    - Dst: gf_filter_lock_all
      Src: /src/gpac/src/filters/filelist.c:1554,1
    - Dst: SET_SOURCE
      Src: /src/gpac/src/filters/filelist.c:1562,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/filelist.c:1569,1
    - Dst: gf_filter_lock_all
      Src: /src/gpac/src/filters/filelist.c:1573,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/filelist.c:1575,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:1578,1
    CyclomaticComplexity: 77
    EdgeCount: 77
    ICount: 266
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_FileListCtx*
    assertStmts:
    - condition: (!ctx->splice_srcs)
      pos:
        line_end: 1286
        line_start: 1286
        source_file: /src/gpac/src/filters/filelist.c
    constantsTouched: []
    func_position:
      end: 1582
      start: 1237
    functionDepth: 6
    functionLinenumber: 1237
    functionLinenumberEnd: 1582
    functionName: filelist_load_next
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_send_event
    - gf_list_count
    - memset
    - atoi
    - gf_filter_set_setup_failure_callback
    - strchr
    - filelist_next_url
    - gf_list_get
    - gf_list_new
    - gf_list_pop_back
    - GF_FEVT_INIT
    - gf_filter_require_source_id
    - gf_list_add
    - gf_filter_ask_rt_reschedule
    - gf_list_insert
    - gf_filter_set_source
    - gf_list_reset
    - GF_LOG
    - assert
    - gf_filter_pid_set_eos
    - strstr
    - gf_filter_load_filter
    - gf_error_to_string
    - gf_filter_pid_send_event
    - gf_filter_connect_source
    - gf_filter_pid_clear_eos
    - gf_list_del
    - gf_filter_reset_source
    - SET_SOURCE
    - gf_filter_lock_all
    - gf_filter_pid_send_flush
    - gf_filter_remove_src
    - gf_filter_abort
    - gf_url_concatenate
    - filelist_start_ipid
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err filelist_load_next(GF_Filter *filter, GF_FileListCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _filter
    - ','
    - _from
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1427
      start: 1411
    functionDepth: 0
    functionLinenumber: 1411
    functionLinenumberEnd: 1427
    functionName: SET_SOURCE
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_SOURCE(_filter, _from)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:1587,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - iopid
    - cts
    argTypes:
    - FileListPid*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1590
      start: 1584
    functionDepth: 1
    functionLinenumber: 1584
    functionLinenumberEnd: 1590
    functionName: filelist_translate_splice_cts
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_timestamp_rescale
    linkageType: ''
    returnType: s64
    signature: s64 filelist_translate_splice_cts(FileListPid *iopid, u64 cts)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/filelist.c:1600,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/filelist.c:1601,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/filelist.c:1606,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/filelist.c:1608,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1619,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1621,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/filelist.c:1628,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/filelist.c:1640,1
    - Dst: filelist_translate_splice_cts
      Src: /src/gpac/src/filters/filelist.c:1642,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/filelist.c:1646,1
    - Dst: filelist_next_url
      Src: /src/gpac/src/filters/filelist.c:1652,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/filelist.c:1657,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/filelist.c:1666,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/filelist.c:1671,1
    - Dst: filelist_translate_splice_cts
      Src: /src/gpac/src/filters/filelist.c:1674,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:1678,1
    - Dst: filelist_translate_splice_cts
      Src: /src/gpac/src/filters/filelist.c:1685,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/filelist.c:1687,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1695,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1697,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/filelist.c:1711,1
    - Dst: filelist_next_url
      Src: /src/gpac/src/filters/filelist.c:1726,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/filelist.c:1732,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/filelist.c:1742,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:1747,1
    - Dst: filelist_translate_splice_cts
      Src: /src/gpac/src/filters/filelist.c:1755,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1757,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1759,1
    - Dst: filelist_translate_splice_cts
      Src: /src/gpac/src/filters/filelist.c:1767,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 129
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_FileListCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1771
      start: 1592
    functionDepth: 6
    functionLinenumber: 1592
    functionLinenumberEnd: 1771
    functionName: filelist_check_splice
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_net_get_utc
    - gf_list_get
    - gf_assert
    - filelist_next_url
    - gf_timestamp_greater_or_equal
    - filelist_translate_splice_cts
    - gf_list_count
    - gf_fatal_assert
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_sap
    - gf_filter_pid_is_eos
    - gf_filter_pck_get_duration
    - gf_filter_pid_get_packet
    - gf_timestamp_rescale
    linkageType: ''
    returnType: Bool
    signature: Bool filelist_check_splice(GF_FileListCtx *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/filters/filelist.c:1780,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/filelist.c:1783,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 7
    argNames:
    - iopid
    - src
    - src_size
    - offset
    - dst
    - nb_samp
    - ra
    argTypes:
    - FileListPid*
    - u8*
    - u32
    - u32
    - u8*
    - u32
    - RawAudioInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1785
      start: 1773
    functionDepth: 0
    functionLinenumber: 1773
    functionLinenumberEnd: 1785
    functionName: filelist_copy_raw_audio
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: void
    signature: void filelist_copy_raw_audio(FileListPid *iopid, const u8 *src, u32
      src_size, u32 offset, u8 *dst, u32 nb_samp, RawAudioInfo *ra)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/filelist.c:1797,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/filelist.c:1799,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/filelist.c:1809,1
    - Dst: filelist_copy_raw_audio
      Src: /src/gpac/src/filters/filelist.c:1812,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:1816,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:1817,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/filelist.c:1820,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/filelist.c:1821,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/filelist.c:1822,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/filelist.c:1824,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/filelist.c:1826,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 30
    argCount: 2
    argNames:
    - iopid
    - pck
    argTypes:
    - FileListPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1828
      start: 1787
    functionDepth: 1
    functionLinenumber: 1787
    functionLinenumberEnd: 1828
    functionName: filelist_forward_splice_pck
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_set_dts
    - gf_filter_pck_forward
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_data
    - gf_filter_pck_set_duration
    - gf_filter_pck_get_cts
    - filelist_copy_raw_audio
    - gf_timestamp_rescale
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void filelist_forward_splice_pck(FileListPid *iopid, GF_FilterPacket
      *pck)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1832,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/filelist.c:1833,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/filelist.c:1837,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1840,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/filelist.c:1846,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/filelist.c:1849,1
    - Dst: filelist_translate_splice_cts
      Src: /src/gpac/src/filters/filelist.c:1852,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/filelist.c:1853,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/filelist.c:1857,1
    - Dst: filelist_forward_splice_pck
      Src: /src/gpac/src/filters/filelist.c:1858,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:1860,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/filelist.c:1864,1
    - Dst: filelist_forward_splice_pck
      Src: /src/gpac/src/filters/filelist.c:1865,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:1868,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 29
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_FileListCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1869
      start: 1830
    functionDepth: 2
    functionLinenumber: 1830
    functionLinenumberEnd: 1869
    functionName: filelist_purge_slice
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_list_get
    - gf_filter_pid_drop_packet
    - filelist_translate_splice_cts
    - gf_timestamp_greater
    - gf_list_count
    - filelist_forward_splice_pck
    - gf_filter_pck_get_cts
    - gf_filter_pid_get_packet
    linkageType: ''
    returnType: void
    signature: void filelist_purge_slice(GF_FileListCtx *ctx)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/filelist.c:1884,1
    - Dst: ABS
      Src: /src/gpac/src/filters/filelist.c:1892,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/filelist.c:1893,1
    - Dst: filelist_copy_raw_audio
      Src: /src/gpac/src/filters/filelist.c:1896,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/filelist.c:1898,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/filelist.c:1901,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/filelist.c:1903,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/filelist.c:1906,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:1911,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/filelist.c:1928,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:1935,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/filelist.c:1938,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/filelist.c:1942,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/filelist.c:1943,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/filelist.c:1944,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:1946,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/filelist.c:1947,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:1949,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/filelist.c:1950,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:1952,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/filelist.c:1953,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/filelist.c:1979,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/filelist.c:1979,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:1983,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/filelist.c:1983,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/filelist.c:1988,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/filelist.c:1988,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/filelist.c:1990,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/filelist.c:1990,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:1992,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/filelist.c:1996,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:1999,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 105
    argCount: 4
    argNames:
    - ctx
    - iopid
    - pck
    - is_splice_forced
    argTypes:
    - GF_FileListCtx*
    - FileListPid*
    - GF_FilterPacket*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2001
      start: 1871
    functionDepth: 1
    functionLinenumber: 1871
    functionLinenumberEnd: 2001
    functionName: filelist_send_packet
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_pck_new_ref
    - PROP_STRING
    - gf_filter_pid_set_property_str
    - filelist_copy_raw_audio
    - gf_filter_pck_set_property
    - gf_filter_pck_get_cts
    - PROP_BOOL
    - gf_filter_pck_get_duration
    - gf_filter_pck_new_alloc
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - gf_filter_pck_set_duration
    - gf_timestamp_rescale
    - ABS
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_filter_pck_get_dts
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void filelist_send_packet(GF_FileListCtx *ctx, FileListPid *iopid,
      GF_FilterPacket *pck, Bool is_splice_forced)
  - BBCount: 163
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/filelist.c:2008,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/filelist.c:2018,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/filelist.c:2020,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:2023,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:2030,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:2032,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/filelist.c:2033,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:2042,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:2045,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:2046,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:2049,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/filelist.c:2051,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/filelist.c:2056,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:2057,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/filelist.c:2058,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/filelist.c:2060,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:2062,1
    - Dst: strstr
      Src: /src/gpac/src/filters/filelist.c:2067,1
    - Dst: strstr
      Src: /src/gpac/src/filters/filelist.c:2069,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:2074,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:2075,1
    - Dst: strlen
      Src: /src/gpac/src/filters/filelist.c:2082,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/filelist.c:2083,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/filelist.c:2084,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/filelist.c:2088,1
    - Dst: gf_fileio_from_mem
      Src: /src/gpac/src/filters/filelist.c:2089,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:2090,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:2091,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/filters/filelist.c:2091,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:2092,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:2104,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:2107,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/filelist.c:2110,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/filelist.c:2113,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/filelist.c:2113,1
    - Dst: filelist_load_next
      Src: /src/gpac/src/filters/filelist.c:2121,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:2125,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:2131,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2132,1
    - Dst: gf_filter_has_pid_connection_pending
      Src: /src/gpac/src/filters/filelist.c:2133,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2141,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:2149,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/filelist.c:2149,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/filelist.c:2150,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:2153,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/filelist.c:2153,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/filelist.c:2154,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/filelist.c:2162,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/filelist.c:2166,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/filelist.c:2184,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/filelist.c:2186,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/filelist.c:2191,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:2192,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/filelist.c:2195,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:2196,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/filelist.c:2202,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/filelist.c:2211,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:2213,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/filelist.c:2224,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/filelist.c:2234,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:2243,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2283,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:2289,1
    - Dst: filelist_check_splice
      Src: /src/gpac/src/filters/filelist.c:2300,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2306,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/filelist.c:2318,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:2320,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/filelist.c:2323,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:2325,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/filelist.c:2341,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/filelist.c:2343,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/filelist.c:2362,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/filelist.c:2362,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/filelist.c:2366,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/filelist.c:2368,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:2380,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:2381,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/filelist.c:2391,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/filelist.c:2404,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:2410,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:2414,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/filelist.c:2429,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:2435,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/filelist.c:2451,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:2457,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:2461,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:2471,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/filelist.c:2484,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:2488,1
    - Dst: filelist_send_packet
      Src: /src/gpac/src/filters/filelist.c:2504,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/filelist.c:2510,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/filelist.c:2511,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/filelist.c:2512,1
    - Dst: filelist_purge_slice
      Src: /src/gpac/src/filters/filelist.c:2522,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2537,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:2547,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:2553,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2559,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/filelist.c:2563,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/filelist.c:2564,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/filelist.c:2582,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/filelist.c:2584,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/filelist.c:2585,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/filelist.c:2587,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/filelist.c:2588,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:2589,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:2593,1
    - Dst: filelist_send_packet
      Src: /src/gpac/src/filters/filelist.c:2597,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:2611,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/filelist.c:2612,1
    - Dst: gf_filter_remove_src
      Src: /src/gpac/src/filters/filelist.c:2613,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/filelist.c:2615,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2620,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:2622,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:2623,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/filelist.c:2623,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:2624,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:2625,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/filelist.c:2625,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2636,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/filelist.c:2638,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/filelist.c:2639,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:2646,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/filelist.c:2652,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2657,1
    - Dst: filelist_configure_pid
      Src: /src/gpac/src/filters/filelist.c:2659,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:2660,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/filelist.c:2660,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2679,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/filelist.c:2681,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/filelist.c:2682,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:2685,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2695,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:2705,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/filelist.c:2715,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2726,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:2728,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:2729,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/filelist.c:2729,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:2730,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:2731,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/filelist.c:2731,1
    - Dst: gf_filter_pid_push_properties
      Src: /src/gpac/src/filters/filelist.c:2734,1
    - Dst: filelist_push_period_id
      Src: /src/gpac/src/filters/filelist.c:2737,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:2740,1
    - Dst: gf_filter_end_of_session
      Src: /src/gpac/src/filters/filelist.c:2760,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2762,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/filelist.c:2764,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2775,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/filelist.c:2785,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/filelist.c:2794,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/filelist.c:2807,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/filelist.c:2811,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/filelist.c:2819,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/filelist.c:2823,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2851,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/filelist.c:2854,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/filelist.c:2856,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/filelist.c:2857,1
    - Dst: filelist_start_ipid
      Src: /src/gpac/src/filters/filelist.c:2860,1
    CyclomaticComplexity: 256
    EdgeCount: 256
    ICount: 721
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2880
      start: 2003
    functionDepth: 7
    functionLinenumber: 2003
    functionLinenumberEnd: 2880
    functionName: filelist_process
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fileio_url
    - filelist_push_period_id
    - gf_timestamp_rescale_signed
    - PROP_STRING
    - gf_filter_pid_set_property_str
    - gf_list_count
    - gf_fopen
    - filelist_purge_slice
    - gf_filter_pid_set_udta
    - gf_filter_pck_get_seek_flag
    - strchr
    - gf_filter_pid_get_packet
    - gf_sys_clock
    - gf_realloc
    - gf_filter_pid_get_name
    - gf_strdup
    - gf_list_get
    - gf_list_pop_back
    - gf_filter_pck_get_framing
    - gf_assert
    - memcpy
    - GF_FEVT_INIT
    - strncmp
    - gf_filter_pck_get_cts
    - PROP_BOOL
    - gf_filter_pck_get_duration
    - gf_filter_pid_push_properties
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pid_set_discard
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pid_would_block
    - gf_filter_pid_set_eos
    - strstr
    - gf_timestamp_less
    - filelist_send_packet
    - gf_filter_pck_get_sap
    - gf_filter_pid_is_eos
    - gf_filter_pid_send_event
    - gf_fileio_from_mem
    - strlen
    - gf_timestamp_rescale
    - gf_list_del
    - gf_fclose
    - filelist_load_next
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - filelist_check_splice
    - gf_timestamp_greater_or_equal
    - gf_filter_remove_src
    - gf_filter_has_pid_connection_pending
    - gf_timestamp_greater
    - gf_filter_end_of_session
    - filelist_start_ipid
    - gf_filter_pid_is_flush_eos
    - filelist_configure_pid
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err filelist_process(GF_Filter *filter)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:2885,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/filelist.c:2887,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:2890,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2893,1
    - Dst: strlen
      Src: /src/gpac/src/filters/filelist.c:2903,1
    - Dst: strlen
      Src: /src/gpac/src/filters/filelist.c:2904,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:2908,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/filelist.c:2913,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/filelist.c:2917,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 33
    argCount: 2
    argNames:
    - ctx
    - fentry
    argTypes:
    - GF_FileListCtx*
    - FileListEntry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2918
      start: 2882
    functionDepth: 2
    functionLinenumber: 2882
    functionLinenumberEnd: 2918
    functionName: filelist_add_entry
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_get
    - GF_LOG
    - gf_list_count
    - strcmp
    - gf_list_add
    - strlen
    linkageType: ''
    returnType: void
    signature: void filelist_add_entry(GF_FileListCtx *ctx, FileListEntry *fentry)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/filelist.c:2929,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:2932,1
    - Dst: filelist_add_entry
      Src: /src/gpac/src/filters/filelist.c:2935,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 4
    argNames:
    - cbck
    - item_name
    - item_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2938
      start: 2920
    functionDepth: 3
    functionLinenumber: 2920
    functionLinenumberEnd: 2938
    functionName: filelist_enum
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - filelist_add_entry
    - GF_SAFEALLOC
    linkageType: ''
    returnType: Bool
    signature: Bool filelist_enum(void *cbck, char *item_name, char *item_path, GF_FileEnumInfo
      *file_info)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/filelist.c:2944,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/filelist.c:2945,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/filelist.c:2947,1
    - Dst: gf_filter_is_dynamic
      Src: /src/gpac/src/filters/filelist.c:2952,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:2953,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/filelist.c:2958,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/filters/filelist.c:2962,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:2964,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/filelist.c:2965,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/filelist.c:2966,1
    - Dst: gf_enum_directory
      Src: /src/gpac/src/filters/filelist.c:2979,1
    - Dst: strstr
      Src: /src/gpac/src/filters/filelist.c:2984,1
    - Dst: strstr
      Src: /src/gpac/src/filters/filelist.c:2984,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/filelist.c:2987,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:2989,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:2991,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/filelist.c:2993,1
    - Dst: gf_file_modification_time
      Src: /src/gpac/src/filters/filelist.c:2995,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/filelist.c:2996,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/filelist.c:2998,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/filelist.c:2999,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/filelist.c:3009,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:3011,1
    - Dst: filelist_add_entry
      Src: /src/gpac/src/filters/filelist.c:3016,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:3019,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:3024,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:3025,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:3032,1
    - Dst: filelist_override_caps
      Src: /src/gpac/src/filters/filelist.c:3035,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/filelist.c:3037,1
    - Dst: gf_filter_make_sticky
      Src: /src/gpac/src/filters/filelist.c:3039,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 85
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3041
      start: 2940
    functionDepth: 5
    functionLinenumber: 2940
    functionLinenumberEnd: 3041
    functionName: filelist_initialize
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_enum_directory
    - gf_dir_exists
    - GF_SAFEALLOC
    - gf_filter_is_dynamic
    - gf_file_exists
    - gf_list_count
    - gf_fopen
    - gf_file_modification_time
    - strchr
    - gf_filter_post_process_task
    - gf_list_new
    - gf_strdup
    - strrchr
    - filelist_add_entry
    - gf_filter_make_sticky
    - filelist_override_caps
    - gf_fsize
    - gf_filter_get_udta
    - GF_LOG
    - strstr
    - gf_fclose
    - gf_file_ext_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err filelist_initialize(GF_Filter *filter)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/filelist.c:3045,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:3046,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/filelist.c:3047,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3048,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:3051,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/filelist.c:3052,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3053,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3054,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/filelist.c:3056,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/filelist.c:3058,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/filelist.c:3059,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3060,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3061,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3062,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3063,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3064,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3065,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3066,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3067,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3068,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3069,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3071,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filters/filelist.c:3075,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/filelist.c:3077,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3078,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3079,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 44
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3081
      start: 3043
    functionDepth: 5
    functionLinenumber: 3043
    functionLinenumberEnd: 3081
    functionName: filelist_finalize
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_list_pop_back
    - gf_props_reset_single
    - gf_list_count
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void filelist_finalize(GF_Filter *filter)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/filters/filelist.c:3086,1
    - Dst: memchr
      Src: /src/gpac/src/filters/filelist.c:3096,1
    - Dst: memchr
      Src: /src/gpac/src/filters/filelist.c:3098,1
    - Dst: isalnum
      Src: /src/gpac/src/filters/filelist.c:3113,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:3115,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 42
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3136
      start: 3083
    functionDepth: 2
    functionLinenumber: 3083
    functionLinenumberEnd: 3136
    functionName: filelist_probe_data
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - memchr
    - strchr
    - isalnum
    - gf_utf8_is_legal
    linkageType: ''
    returnType: char
    signature: char *filelist_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3139
      start: 3138
    functionDepth: 0
    functionLinenumber: 3138
    functionLinenumberEnd: 3139
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3346
      start: 3343
    functionDepth: 0
    functionLinenumber: 3343
    functionLinenumberEnd: 3346
    functionName: flist_register
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *flist_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3351
      start: 3348
    functionDepth: 0
    functionLinenumber: 3348
    functionLinenumberEnd: 3351
    functionName: flist_register
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *flist_register(GF_FilterSession *session)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_mad.c:78,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mad.c:79,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_mad.c:79,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mad.c:80,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_mad.c:80,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mad.c:83,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_mad.c:83,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mad.c:86,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_mad.c:86,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mad.c:87,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dec_mad.c:87,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mad.c:91,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MADCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 92
    functionName: maddec_copy_props
    functionSourceFile: /src/gpac/src/filters/dec_mad.c
    functionUses: 0
    functionsReached:
    - PROP_LONGUINT
    - gf_filter_pid_set_property
    - gf_filter_pid_copy_properties
    - PROP_UINT
    linkageType: ''
    returnType: void
    signature: void maddec_copy_props(GF_MADCtx *ctx)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_mad.c:97,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_mad.c:101,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_mad.c:107,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_mad.c:112,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_mad.c:115,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_mad.c:117,1
    - Dst: maddec_copy_props
      Src: /src/gpac/src/filters/dec_mad.c:120,1
    - Dst: mad_stream_finish
      Src: /src/gpac/src/filters/dec_mad.c:125,1
    - Dst: mad_frame_finish
      Src: /src/gpac/src/filters/dec_mad.c:126,1
    - Dst: mad_synth_finish
      Src: /src/gpac/src/filters/dec_mad.c:127,1
    - Dst: mad_stream_init
      Src: /src/gpac/src/filters/dec_mad.c:129,1
    - Dst: mad_frame_init
      Src: /src/gpac/src/filters/dec_mad.c:130,1
    - Dst: mad_synth_init
      Src: /src/gpac/src/filters/dec_mad.c:131,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_mad.c:141,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_mad.c:144,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_mad.c:146,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_mad.c:150,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_mad.c:153,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_mad.c:154,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dec_mad.c:157,1
    - Dst: maddec_copy_props
      Src: /src/gpac/src/filters/dec_mad.c:159,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 51
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 94
    functionDepth: 2
    functionLinenumber: 94
    functionLinenumberEnd: 162
    functionName: maddec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_mad.c
    functionUses: 0
    functionsReached:
    - gf_filter_set_name
    - maddec_copy_props
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - mad_synth_finish
    - gf_filter_pid_set_framing_mode
    - mad_frame_finish
    - mad_synth_init
    - gf_filter_pid_check_caps
    - mad_stream_finish
    - mad_stream_init
    - mad_frame_init
    - gf_filter_pid_new
    - gf_malloc
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err maddec_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_mad.c:166,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_mad.c:168,1
    - Dst: mad_stream_finish
      Src: /src/gpac/src/filters/dec_mad.c:171,1
    - Dst: mad_frame_finish
      Src: /src/gpac/src/filters/dec_mad.c:172,1
    - Dst: mad_synth_finish
      Src: /src/gpac/src/filters/dec_mad.c:173,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 175
    functionName: maddec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_mad.c
    functionUses: 0
    functionsReached:
    - gf_free
    - mad_synth_finish
    - mad_frame_finish
    - mad_stream_finish
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void maddec_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ret
    - ','
    - s_chan
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 187
    functionName: MAD_SCALE
    functionSourceFile: /src/gpac/src/filters/dec_mad.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAD_SCALE(ret, s_chan)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_mad.c:193,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_mad.c:195,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_mad.c:198,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_mad.c:200,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_mad.c:204,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_mad.c:210,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mad.c:213,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_mad.c:217,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/dec_mad.c:219,1
    - Dst: mad_stream_buffer
      Src: /src/gpac/src/filters/dec_mad.c:223,1
    - Dst: mad_frame_decode
      Src: /src/gpac/src/filters/dec_mad.c:225,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_mad.c:228,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_mad.c:235,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_mad.c:236,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_mad.c:237,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mad.c:240,1
    - Dst: mad_stream_errorstr
      Src: /src/gpac/src/filters/dec_mad.c:240,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_mad.c:242,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_mad.c:246,1
    - Dst: mad_synth_frame
      Src: /src/gpac/src/filters/dec_mad.c:251,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mad.c:258,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_mad.c:258,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mad.c:259,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_mad.c:259,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mad.c:260,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dec_mad.c:260,1
    - Dst: memmove
      Src: /src/gpac/src/filters/dec_mad.c:265,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dec_mad.c:275,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mad.c:283,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dec_mad.c:292,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dec_mad.c:302,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_mad.c:306,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_mad.c:307,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_mad.c:308,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/dec_mad.c:309,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_mad.c:311,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dec_mad.c:313,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dec_mad.c:315,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dec_mad.c:316,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dec_mad.c:319,1
    - Dst: MAD_SCALE
      Src: /src/gpac/src/filters/dec_mad.c:326,1
    - Dst: MAD_SCALE
      Src: /src/gpac/src/filters/dec_mad.c:335,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_mad.c:343,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 126
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 345
    functionName: maddec_process
    functionSourceFile: /src/gpac/src/filters/dec_mad.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_filter_pck_set_dependency_flags
    - PROP_LONGUINT
    - gf_filter_pid_get_packet
    - memcpy
    - mad_stream_errorstr
    - gf_filter_pck_get_cts
    - mad_frame_decode
    - gf_filter_pck_get_duration
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - memmove
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_filter_pid_set_eos
    - mad_stream_buffer
    - gf_filter_pck_get_timescale
    - mad_synth_frame
    - gf_filter_pid_is_eos
    - gf_filter_pid_set_property
    - gf_timestamp_rescale
    - PROP_UINT
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - MAD_SCALE
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err maddec_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 381
    functionName: maddec_register
    functionSourceFile: /src/gpac/src/filters/dec_mad.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *maddec_register(GF_FilterSession *session)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_nhml.c:100,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dmx_nhml.c:104,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dmx_nhml.c:107,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dmx_nhml.c:111,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_nhml.c:113,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_nhml.c:114,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_nhml.c:116,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_nhml.c:117,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_nhml.c:121,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/dmx_nhml.c:122,1
    - Dst: gf_filter_force_main_thread
      Src: /src/gpac/src/filters/dmx_nhml.c:123,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 22
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 97
    functionDepth: 4
    functionLinenumber: 97
    functionLinenumberEnd: 126
    functionName: nhmldmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - gf_fileio_is_main_thread
    - strstr
    - gf_filter_force_main_thread
    - gf_filter_pid_check_caps
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhmldmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_nhml.c:135,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:151,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:160,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:162,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:163,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:163,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dmx_nhml.c:166,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dmx_nhml.c:166,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dmx_nhml.c:168,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:172,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_nhml.c:172,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:173,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dmx_nhml.c:173,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:174,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:175,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:177,1
    - Dst: atof
      Src: /src/gpac/src/filters/dmx_nhml.c:178,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:179,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_nhml.c:180,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 67
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 128
    functionDepth: 2
    functionLinenumber: 128
    functionLinenumberEnd: 218
    functionName: nhmldmx_process_event
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - sscanf
    - atof
    - atoi
    - stricmp
    - gf_list_enum
    - strchr
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool nhmldmx_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:224,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:226,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:229,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:230,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:230,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - par
    - ID
    argTypes:
    - GF_NHMLDmxCtx*
    - GF_XMLNode*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 220
    functionDepth: 2
    functionLinenumber: 220
    functionLinenumberEnd: 234
    functionName: nhmldmx_get_prop_ref
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - strcmp
    - stricmp
    linkageType: ''
    returnType: GF_XMLNode
    signature: GF_XMLNode *nhmldmx_get_prop_ref(GF_NHMLDmxCtx *ctx, GF_XMLNode *par,
      char *ID)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:240,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:245,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:247,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:248,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:248,1
    - Dst: nhmldmx_get_prop_ref
      Src: /src/gpac/src/filters/dmx_nhml.c:250,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:254,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:256,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:259,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:260,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:261,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:261,1
    - Dst: nhmldmx_get_prop_ref
      Src: /src/gpac/src/filters/dmx_nhml.c:263,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 33
    argCount: 2
    argNames:
    - ctx
    - ID
    argTypes:
    - GF_NHMLDmxCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 236
    functionDepth: 3
    functionLinenumber: 236
    functionLinenumberEnd: 268
    functionName: nhmldmx_get_props
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - strcmp
    - nhmldmx_get_prop_ref
    - stricmp
    linkageType: ''
    returnType: GF_XMLNode
    signature: GF_XMLNode *nhmldmx_get_props(GF_NHMLDmxCtx *ctx, char *ID)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:276,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:277,1
    - Dst: nhmldmx_get_props
      Src: /src/gpac/src/filters/dmx_nhml.c:278,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:286,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:293,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:299,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:300,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:301,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:302,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:303,1
    - Dst: nhmldmx_get_props
      Src: /src/gpac/src/filters/dmx_nhml.c:305,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:320,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:322,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:323,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:324,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:325,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filters/dmx_nhml.c:332,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/dmx_nhml.c:334,1
    - Dst: gf_props_parse_type
      Src: /src/gpac/src/filters/dmx_nhml.c:339,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_nhml.c:348,1
    - Dst: gf_xml_parse_bit_sequence_bs
      Src: /src/gpac/src/filters/dmx_nhml.c:350,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dmx_nhml.c:351,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_nhml.c:352,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/dmx_nhml.c:355,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:362,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:364,1
    - Dst: gf_filter_pck_set_property_dyn
      Src: /src/gpac/src/filters/dmx_nhml.c:368,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/dmx_nhml.c:370,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filters/dmx_nhml.c:373,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 88
    argCount: 3
    argNames:
    - ctx
    - props
    - pck
    argTypes:
    - GF_NHMLDmxCtx*
    - GF_XMLNode*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 269
    functionDepth: 9
    functionLinenumber: 269
    functionLinenumberEnd: 376
    functionName: nhmldmx_set_props
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_property
    - gf_props_4cc_get_type
    - gf_props_get_id
    - gf_filter_pck_set_property_dyn
    - gf_bs_new
    - gf_props_reset_single
    - gf_bs_get_content
    - gf_bs_del
    - strcmp
    - gf_xml_parse_bit_sequence_bs
    - gf_props_parse_value
    - gf_filter_pid_set_property_dyn
    - stricmp
    - gf_props_parse_type
    - gf_list_enum
    - gf_filter_pid_set_property
    - nhmldmx_get_props
    linkageType: ''
    returnType: void
    signature: void nhmldmx_set_props(GF_NHMLDmxCtx *ctx, GF_XMLNode *props, GF_FilterPacket
      *pck)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:396,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:396,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_nhml.c:397,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_nhml.c:401,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_nhml.c:402,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_nhml.c:405,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:407,1
    - Dst: gf_xml_sax_get_node_start_pos
      Src: /src/gpac/src/filters/dmx_nhml.c:408,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:411,1
    - Dst: gf_xml_sax_get_node_start_pos
      Src: /src/gpac/src/filters/dmx_nhml.c:412,1
    - Dst: gf_xml_sax_suspend
      Src: /src/gpac/src/filters/dmx_nhml.c:416,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 25
    argCount: 5
    argNames:
    - sax_cbck
    - node_name
    - name_space
    - attributes
    - nb_attributes
    argTypes:
    - void*
    - char*
    - char*
    - GF_XMLAttribute*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 388
    functionDepth: 7
    functionLinenumber: 388
    functionLinenumberEnd: 419
    functionName: nhml_node_start
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_xml_sax_get_node_start_pos
    - gf_xml_sax_suspend
    - strcmp
    - gf_list_add
    - stricmp
    linkageType: ''
    returnType: void
    signature: void nhml_node_start(void *sax_cbck, const char *node_name, const char
      *name_space, const GF_XMLAttribute *attributes, u32 nb_attributes)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dmx_nhml.c:424,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/filters/dmx_nhml.c:425,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:426,1
    - Dst: gf_xml_sax_get_node_end_pos
      Src: /src/gpac/src/filters/dmx_nhml.c:427,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:430,1
    - Dst: gf_xml_sax_get_node_end_pos
      Src: /src/gpac/src/filters/dmx_nhml.c:431,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:434,1
    - Dst: gf_xml_sax_suspend
      Src: /src/gpac/src/filters/dmx_nhml.c:436,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 14
    argCount: 3
    argNames:
    - sax_cbck
    - node_name
    - name_space
    argTypes:
    - void*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 421
    functionDepth: 7
    functionLinenumber: 421
    functionLinenumberEnd: 438
    functionName: nhml_node_end
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_xml_sax_suspend
    - strcmp
    - gf_xml_sax_get_node_end_pos
    - gf_list_last
    - gf_list_rem_last
    linkageType: ''
    returnType: void
    signature: void nhml_node_end(void *sax_cbck, const char *node_name, const char
      *name_space)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_nhml.c:451,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/dmx_nhml.c:453,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:455,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/dmx_nhml.c:460,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/dmx_nhml.c:462,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:464,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_nhml.c:470,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_nhml.c:471,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_nhml.c:473,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_nhml.c:474,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dmx_nhml.c:476,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:478,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_nhml.c:478,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_nhml.c:484,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_nhml.c:485,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dmx_nhml.c:487,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:489,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_nhml.c:489,1
    - Dst: gf_xml_sax_new
      Src: /src/gpac/src/filters/dmx_nhml.c:495,1
    - Dst: gf_xml_sax_parse_file
      Src: /src/gpac/src/filters/dmx_nhml.c:496,1
    - Dst: gf_xml_sax_del
      Src: /src/gpac/src/filters/dmx_nhml.c:497,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/dmx_nhml.c:501,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:504,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_nhml.c:508,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_nhml.c:514,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/dmx_nhml.c:516,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/dmx_nhml.c:517,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:518,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhml.c:524,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_nhml.c:525,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dmx_nhml.c:526,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/filters/dmx_nhml.c:527,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:528,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_nhml.c:530,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:531,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:532,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 85
    argCount: 4
    argNames:
    - ctx
    - xml_file
    - xmlFrom
    - xmlTo
    argTypes:
    - GF_NHMLDmxCtx*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 534
      start: 441
    functionDepth: 10
    functionLinenumber: 441
    functionLinenumberEnd: 534
    functionName: nhml_sample_from_xml
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - memset
    - gf_fopen
    - gf_xml_sax_parse_file
    - strchr
    - gf_realloc
    - gf_list_new
    - gf_strdup
    - gf_assert
    - gf_fseek
    - gf_fsize
    - gf_xml_sax_del
    - stricmp
    - gf_list_rem_last
    - gf_fread
    - GF_LOG
    - strstr
    - gf_list_last
    - gf_list_del
    - gf_fclose
    - gf_xml_sax_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhml_sample_from_xml(GF_NHMLDmxCtx *ctx, char *xml_file, char
      *xmlFrom, char *xmlTo)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:553,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_nhml.c:559,1
    - Dst: deflateInit
      Src: /src/gpac/src/filters/dmx_nhml.c:571,1
    - Dst: deflateInit2
      Src: /src/gpac/src/filters/dmx_nhml.c:573,1
    - Dst: deflateSetDictionary
      Src: /src/gpac/src/filters/dmx_nhml.c:579,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:579,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:581,1
    - Dst: deflateEnd
      Src: /src/gpac/src/filters/dmx_nhml.c:582,1
    - Dst: deflate
      Src: /src/gpac/src/filters/dmx_nhml.c:586,1
    - Dst: deflateEnd
      Src: /src/gpac/src/filters/dmx_nhml.c:588,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:592,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:595,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_nhml.c:596,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:597,1
    - Dst: MAX
      Src: /src/gpac/src/filters/dmx_nhml.c:599,1
    - Dst: MAX
      Src: /src/gpac/src/filters/dmx_nhml.c:600,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_nhml.c:601,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:604,1
    - Dst: deflateEnd
      Src: /src/gpac/src/filters/dmx_nhml.c:608,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 58
    argCount: 4
    argNames:
    - ctx
    - compress_type
    - dict
    - offset
    argTypes:
    - GF_NHMLDmxCtx*
    - u32
    - char**
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 610
      start: 544
    functionDepth: 1
    functionLinenumber: 544
    functionLinenumberEnd: 610
    functionName: compress_sample_data
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - deflateEnd
    - GF_LOG
    - memcpy
    - gf_realloc
    - deflateInit2
    - deflateInit
    - deflate
    - MAX
    - strlen
    - deflateSetDictionary
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err compress_sample_data(GF_NHMLDmxCtx *ctx, u32 compress_type,
      char **dict, u32 offset)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _fmt
    - ','
    - _value
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 621
      start: 614
    functionDepth: 0
    functionLinenumber: 614
    functionLinenumberEnd: 621
    functionName: NHML_SCAN_INT
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NHML_SCAN_INT(_fmt, _value)
  - BBCount: 127
    BranchProfiles: []
    Callsites:
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_nhml.c:648,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dmx_nhml.c:649,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_nhml.c:651,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:661,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:672,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:673,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:674,1
    - Dst: gf_stream_type_by_name
      Src: /src/gpac/src/filters/dmx_nhml.c:676,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:677,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:677,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_nhml.c:678,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:679,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:679,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_nhml.c:680,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:681,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:682,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:683,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:684,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_nhml.c:685,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filters/dmx_nhml.c:687,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:689,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:691,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dmx_nhml.c:694,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dmx_nhml.c:696,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:698,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:699,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:700,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:701,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:702,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:703,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:704,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:705,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:706,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:707,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:708,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:709,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:710,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dmx_nhml.c:711,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:712,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:714,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dmx_nhml.c:715,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:716,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:718,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:719,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:720,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:721,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:722,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:723,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:724,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:725,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:726,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:727,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:727,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:729,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:731,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_nhml.c:732,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:735,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:737,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dmx_nhml.c:738,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filters/dmx_nhml.c:740,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:742,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:744,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_nhml.c:744,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:752,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/dmx_nhml.c:753,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:755,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:756,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:757,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:758,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:759,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:759,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_nhml.c:760,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:761,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:762,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:763,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:764,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:765,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:766,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:767,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:768,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:769,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:770,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:771,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:772,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:775,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:776,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:777,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:778,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:779,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:780,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:781,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:781,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:783,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:783,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:785,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:786,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:788,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:790,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:793,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:793,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:795,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:796,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:800,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:804,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:806,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:808,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:810,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:812,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:814,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:816,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/dmx_nhml.c:817,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/dmx_nhml.c:817,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/dmx_nhml.c:818,1
    - Dst: gf_file_exists_ex
      Src: /src/gpac/src/filters/dmx_nhml.c:834,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/dmx_nhml.c:835,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:839,1
    - Dst: gf_file_exists_ex
      Src: /src/gpac/src/filters/dmx_nhml.c:844,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/dmx_nhml.c:845,1
    - Dst: gf_file_load_data_filep
      Src: /src/gpac/src/filters/dmx_nhml.c:848,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhml.c:849,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:851,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_nhml.c:857,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/dmx_nhml.c:858,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:861,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:863,1
    - Dst: nhml_sample_from_xml
      Src: /src/gpac/src/filters/dmx_nhml.c:865,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:867,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_nhml.c:867,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:868,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_nhml.c:872,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:873,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:881,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:883,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:884,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:887,1
    - Dst: gf_xml_parse_bit_sequence
      Src: /src/gpac/src/filters/dmx_nhml.c:891,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:893,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:894,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_nhml.c:901,1
    - Dst: gf_codec_id_from_isobmf
      Src: /src/gpac/src/filters/dmx_nhml.c:904,1
    - Dst: gf_codecid_type
      Src: /src/gpac/src/filters/dmx_nhml.c:906,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:910,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:910,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:911,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:911,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:912,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:912,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:914,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_nhml.c:914,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/filters/dmx_nhml.c:919,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:929,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:929,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:930,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:930,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:931,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:931,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:933,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:933,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:936,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:936,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:939,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:939,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:942,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:942,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:945,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:945,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:948,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:952,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:952,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:953,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:953,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:954,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:954,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:957,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:957,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:958,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:958,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:959,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:959,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:960,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:960,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:961,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_nhml.c:961,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:962,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:962,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:963,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:963,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:964,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:964,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:965,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:965,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:966,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:966,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:967,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:967,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:970,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:970,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:971,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:971,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:974,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:974,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:975,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:975,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:976,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:976,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:979,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:979,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:980,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:980,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:982,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:982,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:983,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:983,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:984,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:984,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:989,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:989,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:990,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:990,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:993,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:993,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:994,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:994,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:995,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:995,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:997,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:997,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:998,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:998,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:1003,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:1003,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:1004,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:1004,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:1006,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:1006,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:1007,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:1007,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:1008,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:1008,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:1009,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:1009,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:1010,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:1010,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:1011,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:1011,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:1012,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:1012,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:1017,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/dmx_nhml.c:1017,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:1022,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:1022,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/dmx_nhml.c:1025,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:1026,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_nhml.c:1026,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1029,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1030,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1031,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:1033,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_nhml.c:1033,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1038,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1040,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1042,1
    - Dst: nhmldmx_set_props
      Src: /src/gpac/src/filters/dmx_nhml.c:1044,1
    CyclomaticComplexity: 160
    EdgeCount: 160
    ICount: 433
    argCount: 3
    argNames:
    - filter
    - ctx
    - root
    argTypes:
    - GF_Filter*
    - GF_NHMLDmxCtx*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1049
      start: 622
    functionDepth: 11
    functionLinenumber: 622
    functionLinenumberEnd: 1049
    functionName: nhmldmx_config_output
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_codec_id_from_isobmf
    - PROP_STRING
    - strcpy
    - gf_stream_type_by_name
    - gf_filter_pid_set_property_str
    - PROP_DATA_NO_COPY
    - gf_file_load_data_filep
    - gf_filter_pid_new
    - PROP_LONGUINT
    - gf_strdup
    - gf_xml_parse_bit_sequence
    - memcpy
    - nhml_sample_from_xml
    - gf_fsize
    - gf_codecid_parse
    - stricmp
    - gf_dynstrcat
    - gf_file_exists_ex
    - PROP_BOOL
    - gf_m4v_get_config
    - GF_LOG
    - gf_fread
    - strncpy
    - gf_codecid_type
    - gf_error_to_string
    - gf_list_enum
    - nhmldmx_set_props
    - gf_filter_pid_set_property
    - gf_timestamp_rescale
    - strlen
    - gf_malloc
    - PROP_FRAC_INT
    - gf_fclose
    - PROP_UINT
    - gf_url_concatenate
    - gf_file_ext_start
    - strcmp
    - gf_fopen_ex
    - GF_4CC
    - GF_ARRAY_LENGTH
    - NHML_SCAN_INT
    - gf_file_load_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhmldmx_config_output(GF_Filter *filter, GF_NHMLDmxCtx *ctx,
      GF_XMLNode *root)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_nhml.c:1066,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_nhml.c:1070,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dmx_nhml.c:1071,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_nhml.c:1072,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhml.c:1073,1
    - Dst: gf_fileio_from_mem
      Src: /src/gpac/src/filters/dmx_nhml.c:1074,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/filters/dmx_nhml.c:1075,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/dmx_nhml.c:1079,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1080,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1084,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1087,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dmx_nhml.c:1088,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filters/dmx_nhml.c:1088,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_nhml.c:1089,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_nhml.c:1091,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dmx_nhml.c:1094,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_nhml.c:1096,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/filters/dmx_nhml.c:1098,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/filters/dmx_nhml.c:1099,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1101,1
    - Dst: gf_xml_dom_get_line
      Src: /src/gpac/src/filters/dmx_nhml.c:1101,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/filters/dmx_nhml.c:1101,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/dmx_nhml.c:1105,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1107,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1111,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1112,1
    - Dst: nhmldmx_config_output
      Src: /src/gpac/src/filters/dmx_nhml.c:1116,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1129,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1135,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1136,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1142,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1143,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1143,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dmx_nhml.c:1146,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dmx_nhml.c:1146,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dmx_nhml.c:1148,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1152,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_nhml.c:1152,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1153,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dmx_nhml.c:1153,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1154,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_nhml.c:1171,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:1178,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/dmx_nhml.c:1178,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:1179,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:1179,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 109
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_NHMLDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1181
      start: 1051
    functionDepth: 12
    functionLinenumber: 1051
    functionLinenumberEnd: 1181
    functionName: nhmldmx_init_parsing
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fileio_url
    - gf_xml_dom_get_root
    - gf_file_exists
    - gf_fileio_translate_url
    - atoi
    - gf_xml_dom_get_line
    - PROP_FRAC64
    - strchr
    - gf_file_basename
    - gf_filter_pid_get_packet
    - strncmp
    - gf_xml_dom_new
    - stricmp
    - gf_dynstrcat
    - gf_xml_dom_parse
    - sscanf
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_xml_dom_get_error
    - gf_list_enum
    - gf_fileio_from_mem
    - gf_filter_pid_set_property
    - gf_fclose
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_file_ext_start
    - nhmldmx_config_output
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhmldmx_init_parsing(GF_Filter *filter, GF_NHMLDmxCtx *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dmx_nhml.c:1187,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_nhml.c:1188,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - bs
    - data
    - size
    - mode
    argTypes:
    - GF_BitStream**
    - char*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1189
      start: 1185
    functionDepth: 1
    functionLinenumber: 1185
    functionLinenumberEnd: 1189
    functionName: nhml_get_bs
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_bs_reassign_buffer
    - gf_bs_new
    linkageType: ''
    returnType: void
    signature: void nhml_get_bs(GF_BitStream **bs, char *data, u32 size, u32 mode)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1195,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1201,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1205,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1206,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_nhml.c:1206,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_nhml.c:1209,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1211,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1213,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1223,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1224,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_nhml.c:1224,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1225,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1226,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1227,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1227,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1227,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1231,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1232,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1232,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1232,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1236,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_nhml.c:1236,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1237,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1238,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dmx_nhml.c:1238,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dmx_nhml.c:1239,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dmx_nhml.c:1244,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/dmx_nhml.c:1246,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/dmx_nhml.c:1248,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhml.c:1249,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1251,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dmx_nhml.c:1255,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dmx_nhml.c:1256,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dmx_nhml.c:1257,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/dmx_nhml.c:1258,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/dmx_nhml.c:1259,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dmx_nhml.c:1264,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_nhml.c:1265,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:1266,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/dmx_nhml.c:1266,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 61
    argCount: 3
    argNames:
    - ctx
    - node
    - pck
    argTypes:
    - GF_NHMLDmxCtx*
    - GF_XMLNode*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1269
      start: 1191
    functionDepth: 9
    functionLinenumber: 1191
    functionLinenumberEnd: 1269
    functionName: nhmldmx_set_subs
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_filter_pck_set_property
    - sscanf
    - gf_bs_new
    - gf_bs_get_content
    - gf_url_concatenate
    - gf_bs_write_u32
    - gf_bs_del
    - strcmp
    - atoi
    - strnicmp
    - gf_fopen
    - stricmp
    - gf_fsize
    - PROP_DATA_NO_COPY
    - gf_list_enum
    - gf_bs_write_u8
    linkageType: ''
    returnType: void
    signature: void nhmldmx_set_subs(GF_NHMLDmxCtx *ctx, GF_XMLNode *node, GF_FilterPacket
      *pck)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1275,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1279,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1281,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1285,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1286,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1287,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1287,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 18
    argCount: 2
    argNames:
    - ctx
    - id
    argTypes:
    - GF_NHMLDmxCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1293
      start: 1271
    functionDepth: 2
    functionLinenumber: 1271
    functionLinenumberEnd: 1293
    functionName: nhmldmx_find_sai
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - strcmp
    - stricmp
    linkageType: ''
    returnType: GF_XMLNode
    signature: GF_XMLNode *nhmldmx_find_sai(GF_NHMLDmxCtx *ctx, char *id)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1299,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1306,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1318,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1319,1
    - Dst: gf_4cc_parse
      Src: /src/gpac/src/filters/dmx_nhml.c:1319,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1320,1
    - Dst: nhmldmx_find_sai
      Src: /src/gpac/src/filters/dmx_nhml.c:1322,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1328,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1333,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_nhml.c:1333,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1334,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1335,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1335,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1335,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_nhml.c:1340,1
    - Dst: gf_xml_parse_bit_sequence_bs
      Src: /src/gpac/src/filters/dmx_nhml.c:1341,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dmx_nhml.c:1345,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_nhml.c:1346,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_nhml.c:1350,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dmx_nhml.c:1350,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_nhml.c:1352,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dmx_nhml.c:1352,1
    - Dst: gf_filter_pck_set_property_dyn
      Src: /src/gpac/src/filters/dmx_nhml.c:1355,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/dmx_nhml.c:1355,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 48
    argCount: 3
    argNames:
    - ctx
    - node
    - pck
    argTypes:
    - GF_NHMLDmxCtx*
    - GF_XMLNode*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1357
      start: 1295
    functionDepth: 9
    functionLinenumber: 1295
    functionLinenumberEnd: 1357
    functionName: nhmldmx_set_sai
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_filter_pck_set_property_dyn
    - gf_bs_new
    - GF_LOG
    - gf_bs_get_content
    - nhmldmx_find_sai
    - sprintf
    - gf_bs_del
    - strcmp
    - atoi
    - gf_xml_parse_bit_sequence_bs
    - PROP_DATA_NO_COPY
    - stricmp
    - gf_4cc_parse
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void nhmldmx_set_sai(GF_NHMLDmxCtx *ctx, GF_XMLNode *node, GF_FilterPacket
      *pck)
  - BBCount: 92
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1366,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1381,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1382,1
    - Dst: nhmldmx_config_output
      Src: /src/gpac/src/filters/dmx_nhml.c:1383,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1385,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:1390,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:1391,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:1392,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1413,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1414,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1414,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dmx_nhml.c:1417,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dmx_nhml.c:1417,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dmx_nhml.c:1419,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1423,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_nhml.c:1423,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1424,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_nhml.c:1426,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1428,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1430,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1430,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1431,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_nhml.c:1431,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1432,1
    - Dst: atof
      Src: /src/gpac/src/filters/dmx_nhml.c:1432,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1433,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_nhml.c:1433,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1434,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1435,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_nhml.c:1436,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1438,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1442,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1443,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dmx_nhml.c:1446,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1448,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/dmx_nhml.c:1450,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1452,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1456,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/dmx_nhml.c:1457,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1460,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/dmx_nhml.c:1461,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1465,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1465,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1467,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1467,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1471,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1471,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1473,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1473,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1475,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1475,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1477,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1477,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1479,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dmx_nhml.c:1480,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1496,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1498,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1502,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1505,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1508,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1509,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1510,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1511,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1514,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:1519,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:1519,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:1521,1
    - Dst: nhml_sample_from_xml
      Src: /src/gpac/src/filters/dmx_nhml.c:1524,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:1525,1
    - Dst: gf_xml_dom_serialize
      Src: /src/gpac/src/filters/dmx_nhml.c:1527,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1530,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:1534,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_nhml.c:1537,1
    - Dst: nhml_get_bs
      Src: /src/gpac/src/filters/dmx_nhml.c:1539,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/dmx_nhml.c:1540,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/dmx_nhml.c:1541,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dmx_nhml.c:1542,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1543,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dmx_nhml.c:1549,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:1551,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_nhml.c:1554,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/filters/dmx_nhml.c:1556,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:1562,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/dmx_nhml.c:1563,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1565,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/dmx_nhml.c:1569,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1575,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/dmx_nhml.c:1582,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/dmx_nhml.c:1583,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/dmx_nhml.c:1588,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1593,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_nhml.c:1599,1
    - Dst: nhml_get_bs
      Src: /src/gpac/src/filters/dmx_nhml.c:1601,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/dmx_nhml.c:1602,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/dmx_nhml.c:1603,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/dmx_nhml.c:1604,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1606,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1617,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_nhml.c:1623,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/dmx_nhml.c:1626,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1628,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhml.c:1639,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_nhml.c:1649,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dmx_nhml.c:1651,1
    - Dst: gf_xml_parse_bit_sequence_bs
      Src: /src/gpac/src/filters/dmx_nhml.c:1654,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_nhml.c:1656,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dmx_nhml.c:1659,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_nhml.c:1660,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_nhml.c:1664,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:1666,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1667,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1671,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_nhml.c:1676,1
    - Dst: compress_sample_data
      Src: /src/gpac/src/filters/dmx_nhml.c:1683,1
    - Dst: nhml_get_bs
      Src: /src/gpac/src/filters/dmx_nhml.c:1687,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/dmx_nhml.c:1688,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1691,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1697,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_nhml.c:1701,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:1704,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dmx_nhml.c:1705,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_nhml.c:1707,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dmx_nhml.c:1708,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_nhml.c:1709,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/dmx_nhml.c:1710,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dmx_nhml.c:1713,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/dmx_nhml.c:1716,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/dmx_nhml.c:1722,1
    - Dst: nhmldmx_set_subs
      Src: /src/gpac/src/filters/dmx_nhml.c:1726,1
    - Dst: nhmldmx_set_sai
      Src: /src/gpac/src/filters/dmx_nhml.c:1729,1
    - Dst: nhmldmx_set_props
      Src: /src/gpac/src/filters/dmx_nhml.c:1732,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_nhml.c:1734,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_nhml.c:1745,1
    CyclomaticComplexity: 119
    EdgeCount: 119
    ICount: 322
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_NHMLDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1750
      start: 1360
    functionDepth: 12
    functionLinenumber: 1360
    functionLinenumberEnd: 1750
    functionName: nhmldmx_send_sample
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_xml_dom_serialize
    - gf_bs_new
    - strcpy
    - gf_bs_write_u16
    - nhmldmx_set_subs
    - nhml_get_bs
    - atoi
    - gf_fopen
    - gf_filter_pck_set_dependency_flags
    - strchr
    - compress_sample_data
    - gf_realloc
    - gf_filter_pck_set_byte_offset
    - gf_fseek
    - atof
    - gf_bs_get_content
    - memcpy
    - nhml_sample_from_xml
    - strncmp
    - gf_fsize
    - gf_xml_parse_bit_sequence_bs
    - stricmp
    - gf_filter_pck_new_alloc
    - sscanf
    - GF_LOG
    - gf_fread
    - gf_filter_pck_set_duration
    - gf_filter_pid_would_block
    - strstr
    - gf_bs_write_data
    - strncpy
    - strnicmp
    - gf_filter_pck_set_sap
    - gf_list_enum
    - nhmldmx_set_props
    - strlen
    - gf_fclose
    - gf_filter_pck_set_dts
    - nhmldmx_set_sai
    - gf_filter_pck_set_cts
    - gf_base64_decode
    - gf_filter_pck_set_seek_flag
    - gf_url_concatenate
    - gf_bs_del
    - gf_filter_pck_set_framing
    - strcmp
    - gf_fatal_assert
    - gf_bs_write_u8
    - nhmldmx_config_output
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhmldmx_send_sample(GF_Filter *filter, GF_NHMLDmxCtx *ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_nhml.c:1761,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dmx_nhml.c:1766,1
    - Dst: gf_fileio_from_mem
      Src: /src/gpac/src/filters/dmx_nhml.c:1767,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/filters/dmx_nhml.c:1768,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/filters/dmx_nhml.c:1770,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/filters/dmx_nhml.c:1771,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1773,1
    - Dst: gf_xml_dom_get_line
      Src: /src/gpac/src/filters/dmx_nhml.c:1773,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/filters/dmx_nhml.c:1773,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/dmx_nhml.c:1777,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1779,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1783,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1784,1
    - Dst: gf_xml_dom_append_child
      Src: /src/gpac/src/filters/dmx_nhml.c:1789,1
    - Dst: gf_xml_dom_node_clone
      Src: /src/gpac/src/filters/dmx_nhml.c:1789,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filters/dmx_nhml.c:1790,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhml.c:1791,1
    - Dst: MAX
      Src: /src/gpac/src/filters/dmx_nhml.c:1794,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_nhml.c:1794,1
    - Dst: MIN
      Src: /src/gpac/src/filters/dmx_nhml.c:1795,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_NHMLDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1798
      start: 1752
    functionDepth: 11
    functionLinenumber: 1752
    functionLinenumberEnd: 1798
    functionName: nhmldmx_update_document
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_xml_dom_parse
    - gf_fileio_url
    - gf_xml_dom_get_root
    - gf_filter_pck_get_data
    - GF_LOG
    - MIN
    - gf_list_count
    - gf_xml_dom_new
    - gf_xml_dom_get_error
    - gf_xml_dom_node_clone
    - gf_xml_dom_get_line
    - stricmp
    - gf_filter_pid_get_packet
    - gf_xml_dom_append_child
    - gf_fileio_from_mem
    - gf_xml_dom_del
    - MAX
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhmldmx_update_document(GF_Filter *filter, GF_NHMLDmxCtx *ctx)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_nhml.c:1802,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_nhml.c:1807,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/dmx_nhml.c:1809,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_nhml.c:1811,1
    - Dst: nhmldmx_init_parsing
      Src: /src/gpac/src/filters/dmx_nhml.c:1815,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/dmx_nhml.c:1817,1
    - Dst: nhmldmx_update_document
      Src: /src/gpac/src/filters/dmx_nhml.c:1827,1
    - Dst: nhmldmx_send_sample
      Src: /src/gpac/src/filters/dmx_nhml.c:1832,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_nhml.c:1838,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhml.c:1840,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_nhml.c:1844,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_nhml.c:1851,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 46
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1853
      start: 1800
    functionDepth: 13
    functionLinenumber: 1800
    functionLinenumberEnd: 1853
    functionName: nhmldmx_process
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_assert
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_framing
    - nhmldmx_send_sample
    - nhmldmx_init_parsing
    - gf_filter_pid_set_eos
    - gf_filter_abort
    - gf_filter_pid_is_eos
    - nhmldmx_update_document
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhmldmx_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1859
      start: 1855
    functionDepth: 0
    functionLinenumber: 1855
    functionLinenumberEnd: 1859
    functionName: nhmldmx_initialize
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhmldmx_initialize(GF_Filter *filter)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_nhml.c:1863,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhml.c:1864,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filters/dmx_nhml.c:1866,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhml.c:1868,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1871,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_nhml.c:1873,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_nhml.c:1874,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1875,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1876,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1877,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1878
      start: 1861
    functionDepth: 8
    functionLinenumber: 1861
    functionLinenumberEnd: 1878
    functionName: nhmldmx_finalize
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_bs_del
    - gf_xml_dom_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void nhmldmx_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1882
      start: 1881
    functionDepth: 0
    functionLinenumber: 1881
    functionLinenumberEnd: 1882
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1919
      start: 1916
    functionDepth: 0
    functionLinenumber: 1916
    functionLinenumberEnd: 1919
    functionName: nhmlr_register
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *nhmlr_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1924
      start: 1921
    functionDepth: 0
    functionLinenumber: 1921
    functionLinenumberEnd: 1924
    functionName: nhmlr_register
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *nhmlr_register(GF_FilterSession *session)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_faad.c:102,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dec_faad.c:102,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 38
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_FAADCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 104
    functionName: faaddec_check_mc_config
    functionSourceFile: /src/gpac/src/filters/dec_faad.c
    functionUses: 0
    functionsReached:
    - PROP_LONGUINT
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: void
    signature: void faaddec_check_mc_config(GF_FAADCtx *ctx)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_faad.c:109,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_faad.c:117,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_faad.c:123,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_faad.c:127,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_faad.c:130,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_faad.c:131,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_faad.c:131,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_faad.c:132,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_faad.c:132,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_faad.c:133,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_faad.c:137,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_faad.c:143,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_faad.c:145,1
    - Dst: NeAACDecClose
      Src: /src/gpac/src/filters/dec_faad.c:149,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_faad.c:153,1
    - Dst: NeAACDecOpen
      Src: /src/gpac/src/filters/dec_faad.c:157,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_faad.c:159,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/filters/dec_faad.c:167,1
    - Dst: NeAACDecInit2
      Src: /src/gpac/src/filters/dec_faad.c:170,1
    - Dst: gf_stringizer
      Src: /src/gpac/src/filters/dec_faad.c:178,1
    - Dst: gf_stringizer
      Src: /src/gpac/src/filters/dec_faad.c:181,1
    - Dst: gf_stringizer
      Src: /src/gpac/src/filters/dec_faad.c:184,1
    - Dst: gf_stringizer
      Src: /src/gpac/src/filters/dec_faad.c:187,1
    - Dst: gf_stringizer
      Src: /src/gpac/src/filters/dec_faad.c:190,1
    - Dst: gf_stringizer
      Src: /src/gpac/src/filters/dec_faad.c:193,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_faad.c:195,1
    - Dst: gf_m4a_write_config
      Src: /src/gpac/src/filters/dec_faad.c:203,1
    - Dst: NeAACDecInit2
      Src: /src/gpac/src/filters/dec_faad.c:204,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_faad.c:205,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_faad.c:209,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_faad.c:220,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_faad.c:220,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_faad.c:221,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_faad.c:221,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_faad.c:222,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_faad.c:222,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dec_faad.c:225,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_faad.c:226,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_faad.c:227,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_faad.c:231,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_faad.c:232,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dec_faad.c:234,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 104
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 106
    functionDepth: 4
    functionLinenumber: 106
    functionLinenumberEnd: 238
    functionName: faaddec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_faad.c
    functionUses: 0
    functionsReached:
    - gf_free
    - NeAACDecClose
    - gf_filter_pid_check_caps
    - NeAACDecInit2
    - NeAACDecOpen
    - gf_filter_pid_new
    - gf_stringizer
    - gf_crc_32
    - gf_filter_get_udta
    - gf_filter_pid_copy_properties
    - gf_m4a_get_config
    - GF_LOG
    - gf_m4a_write_config
    - gf_filter_pid_set_property
    - gf_filter_set_name
    - PROP_UINT
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - strcmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err faaddec_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 19
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 42
    argCount: 2
    argNames:
    - ffd
    - ch_cfg
    argTypes:
    - GF_FAADCtx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 275
    functionName: faaddec_get_channel_pos
    functionSourceFile: /src/gpac/src/filters/dec_faad.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s8
    signature: s8 faaddec_get_channel_pos(GF_FAADCtx *ffd, u32 ch_cfg)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_faad.c:279,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_faad.c:285,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_faad.c:288,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_faad.c:292,1
    - Dst: NeAACDecDecode
      Src: /src/gpac/src/filters/dec_faad.c:294,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_faad.c:297,1
    - Dst: NeAACDecDecode
      Src: /src/gpac/src/filters/dec_faad.c:298,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_faad.c:302,1
    - Dst: NeAACDecGetErrorMessage
      Src: /src/gpac/src/filters/dec_faad.c:302,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_faad.c:303,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_faad.c:307,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_faad.c:308,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_faad.c:311,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_faad.c:314,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_faad.c:318,1
    - Dst: faaddec_get_channel_pos
      Src: /src/gpac/src/filters/dec_faad.c:329,1
    - Dst: faaddec_get_channel_pos
      Src: /src/gpac/src/filters/dec_faad.c:334,1
    - Dst: faaddec_get_channel_pos
      Src: /src/gpac/src/filters/dec_faad.c:339,1
    - Dst: faaddec_get_channel_pos
      Src: /src/gpac/src/filters/dec_faad.c:344,1
    - Dst: faaddec_get_channel_pos
      Src: /src/gpac/src/filters/dec_faad.c:349,1
    - Dst: faaddec_get_channel_pos
      Src: /src/gpac/src/filters/dec_faad.c:354,1
    - Dst: faaddec_get_channel_pos
      Src: /src/gpac/src/filters/dec_faad.c:359,1
    - Dst: faaddec_get_channel_pos
      Src: /src/gpac/src/filters/dec_faad.c:364,1
    - Dst: faaddec_get_channel_pos
      Src: /src/gpac/src/filters/dec_faad.c:369,1
    - Dst: faaddec_check_mc_config
      Src: /src/gpac/src/filters/dec_faad.c:374,1
    - Dst: gf_filter_pid_eos_received
      Src: /src/gpac/src/filters/dec_faad.c:377,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/dec_faad.c:378,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dec_faad.c:380,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dec_faad.c:387,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_faad.c:389,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_faad.c:393,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_faad.c:400,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_faad.c:403,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_faad.c:404,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/dec_faad.c:405,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dec_faad.c:407,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dec_faad.c:411,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dec_faad.c:414,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_faad.c:419,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_faad.c:430,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_faad.c:431,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 132
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 277
    functionDepth: 2
    functionLinenumber: 277
    functionLinenumberEnd: 433
    functionName: faaddec_process
    functionSourceFile: /src/gpac/src/filters/dec_faad.c
    functionUses: 0
    functionsReached:
    - NeAACDecGetErrorMessage
    - gf_filter_pid_eos_received
    - gf_filter_pck_set_dependency_flags
    - gf_filter_pid_get_packet
    - memcpy
    - gf_filter_pck_get_cts
    - faaddec_check_mc_config
    - gf_filter_pck_get_duration
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_filter_pck_set_duration
    - NeAACDecDecode
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_timescale
    - gf_filter_pid_is_eos
    - gf_filter_pid_set_property
    - gf_timestamp_rescale
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - faaddec_get_channel_pos
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err faaddec_process(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_faad.c:437,1
    - Dst: NeAACDecClose
      Src: /src/gpac/src/filters/dec_faad.c:438,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 435
    functionDepth: 1
    functionLinenumber: 435
    functionLinenumberEnd: 439
    functionName: faaddec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_faad.c
    functionUses: 0
    functionsReached:
    - NeAACDecClose
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void faaddec_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 467
    functionDepth: 0
    functionLinenumber: 467
    functionLinenumberEnd: 474
    functionName: faad_register
    functionSourceFile: /src/gpac/src/filters/dec_faad.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *faad_register(GF_FilterSession *session)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 3
    argNames:
    - c_opid
    - layer_id
    - temporal_id
    argTypes:
    - BSSplitOut*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 104
    functionName: match_substream
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool match_substream(BSSplitOut *c_opid, u32 layer_id, u32 temporal_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:109,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:111,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/bs_split.c:113,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/bs_split.c:117,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ps_list
    - sl
    argTypes:
    - GF_List*
    - GF_NALUFFParam*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 107
    functionDepth: 2
    functionLinenumber: 107
    functionLinenumberEnd: 118
    functionName: bs_split_svc_add_param
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_list_insert
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void bs_split_svc_add_param(GF_List *ps_list, GF_NALUFFParam *sl)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/bs_split.c:134,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/bs_split.c:135,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/bs_split.c:136,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/bs_split.c:137,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:143,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:143,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:144,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:144,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:148,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:148,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:149,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:149,1
    - Dst: CHECK_PARAM
      Src: /src/gpac/src/filters/bs_split.c:159,1
    - Dst: CHECK_PARAM
      Src: /src/gpac/src/filters/bs_split.c:162,1
    - Dst: CHECK_PARAM
      Src: /src/gpac/src/filters/bs_split.c:164,1
    - Dst: CHECK_PARAM
      Src: /src/gpac/src/filters/bs_split.c:169,1
    - Dst: CHECK_PARAM
      Src: /src/gpac/src/filters/bs_split.c:172,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:178,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:179,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/bs_split.c:182,1
    - Dst: bs_split_svc_add_param
      Src: /src/gpac/src/filters/bs_split.c:183,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:193,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:194,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/bs_split.c:197,1
    - Dst: bs_split_svc_add_param
      Src: /src/gpac/src/filters/bs_split.c:198,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/bs_split.c:204,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/bs_split.c:207,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/filters/bs_split.c:213,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:214,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/bs_split.c:214,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 71
    argCount: 2
    argNames:
    - pctx
    - c_opid
    argTypes:
    - BSSplitIn*
    - BSSplitOut*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 120
    functionDepth: 3
    functionLinenumber: 120
    functionLinenumberEnd: 216
    functionName: bs_split_check_svc_config
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_list_get
    - PROP_UINT
    - gf_odf_avc_cfg_write
    - GF_SAFEALLOC
    - memcpy
    - bs_split_svc_add_param
    - gf_list_find
    - GF_LOG
    - gf_list_count
    - PROP_DATA_NO_COPY
    - CHECK_PARAM
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: void
    signature: void bs_split_check_svc_config(BSSplitIn *pctx, BSSplitOut *c_opid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _name
    - ','
    - _id
    - ','
    - _res
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 157
    functionName: CHECK_PARAM
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_PARAM(_name, _id, _res)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:225,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:226,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/bs_split.c:254,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:256,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:257,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:259,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:260,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:261,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:262,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:263,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:264,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/bs_split.c:268,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/bs_split.c:269,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/bs_split.c:270,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/bs_split.c:270,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 47
    argCount: 2
    argNames:
    - pctx
    - c_opid
    argTypes:
    - BSSplitIn*
    - BSSplitOut*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 218
    functionDepth: 9
    functionLinenumber: 218
    functionLinenumberEnd: 271
    functionName: bs_split_update_hevc_linf
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_info_str
    - gf_list_get
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_del
    - gf_list_count
    - PROP_DATA_NO_COPY
    linkageType: ''
    returnType: void
    signature: void bs_split_update_hevc_linf(BSSplitIn *pctx, BSSplitOut *c_opid)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/bs_split.c:275,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:276,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:276,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:277,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:278,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:279,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:282,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:284,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:286,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:289,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/bs_split.c:289,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:292,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:292,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:293,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:293,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:294,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:294,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:295,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:295,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:298,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:298,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/bs_split.c:301,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:301,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/bs_split.c:302,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:302,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/bs_split.c:311,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 4
    argNames:
    - ctx
    - c_opid
    - pid
    - svc_base_id
    argTypes:
    - BSSplitCtx*
    - BSSplitOut*
    - GF_FilterPid*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 273
    functionDepth: 1
    functionLinenumber: 273
    functionLinenumberEnd: 315
    functionName: bs_split_copy_props_base
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - gf_filter_pid_set_property_str
    - PROP_BOOL
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: void
    signature: void bs_split_copy_props_base(BSSplitCtx *ctx, BSSplitOut *c_opid,
      GF_FilterPid *pid, u32 svc_base_id)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:324,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:327,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:329,1
    - Dst: match_substream
      Src: /src/gpac/src/filters/bs_split.c:333,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/bs_split.c:361,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/bs_split.c:362,1
    - Dst: strchr
      Src: /src/gpac/src/filters/bs_split.c:365,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/bs_split.c:366,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/bs_split.c:368,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/bs_split.c:414,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/bs_split.c:416,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/bs_split.c:418,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/bs_split.c:419,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_split.c:421,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:423,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:429,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:431,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:439,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:447,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:453,1
    - Dst: bs_split_copy_props_base
      Src: /src/gpac/src/filters/bs_split.c:462,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:472,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_split.c:474,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_split.c:477,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:484,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_split.c:487,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/bs_split.c:488,1
    - Dst: memset
      Src: /src/gpac/src/filters/bs_split.c:490,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:497,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/bs_split.c:497,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:499,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:499,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:502,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:502,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:506,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:506,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:511,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:511,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/bs_split.c:516,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/bs_split.c:518,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:519,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/bs_split.c:519,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:520,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:524,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:526,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:526,1
    - Dst: bs_split_check_svc_config
      Src: /src/gpac/src/filters/bs_split.c:532,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/bs_split.c:546,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:546,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/bs_split.c:547,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:547,1
    - Dst: bs_split_update_hevc_linf
      Src: /src/gpac/src/filters/bs_split.c:549,1
    CyclomaticComplexity: 67
    EdgeCount: 67
    ICount: 171
    argCount: 6
    argNames:
    - ctx
    - pctx
    - is_config
    - layer_id
    - temporal_id
    - force_dv
    argTypes:
    - BSSplitCtx*
    - BSSplitIn*
    - Bool
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 551
      start: 317
    functionDepth: 10
    functionLinenumber: 317
    functionLinenumberEnd: 551
    functionName: bs_split_get_out_stream
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_filter_pid_set_property_str
    - gf_list_count
    - memset
    - PROP_DATA_NO_COPY
    - PROP_DATA
    - gf_filter_pid_new
    - strchr
    - bs_split_copy_props_base
    - gf_odf_hevc_cfg_read
    - gf_list_get
    - match_substream
    - bs_split_update_hevc_linf
    - memcpy
    - gf_odf_hevc_cfg_write
    - gf_list_add
    - sscanf
    - gf_filter_pid_set_property
    - gf_list_last
    - gf_odf_hevc_cfg_del
    - gf_filter_pid_get_property
    - PROP_UINT
    - strcmp
    - bs_split_check_svc_config
    linkageType: ''
    returnType: BSSplitOut
    signature: BSSplitOut *bs_split_get_out_stream(BSSplitCtx *ctx, BSSplitIn *pctx,
      Bool is_config, u32 layer_id, u32 temporal_id, Bool force_dv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/bs_split.c:557,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/bs_split.c:558,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:559,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - svcc
    argTypes:
    - GF_AVCConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 553
    functionDepth: 2
    functionLinenumber: 553
    functionLinenumberEnd: 560
    functionName: bs_split_svcc_del
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached:
    - gf_odf_avc_cfg_del
    - gf_list_reset
    linkageType: ''
    returnType: void
    signature: void bs_split_svcc_del(GF_AVCConfig *svcc)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_split.c:571,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/bs_split.c:574,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/bs_split.c:577,1
    - Dst: memset
      Src: /src/gpac/src/filters/bs_split.c:578,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/bs_split.c:580,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/filters/bs_split.c:582,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:586,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:587,1
    - Dst: bs_split_svcc_del
      Src: /src/gpac/src/filters/bs_split.c:589,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:594,1
    - Dst: AVC_READ_LIST
      Src: /src/gpac/src/filters/bs_split.c:615,1
    - Dst: AVC_READ_LIST
      Src: /src/gpac/src/filters/bs_split.c:616,1
    - Dst: AVC_READ_LIST
      Src: /src/gpac/src/filters/bs_split.c:617,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:619,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_split.c:621,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/bs_split.c:623,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:628,1
    - Dst: bs_split_copy_props_base
      Src: /src/gpac/src/filters/bs_split.c:634,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:635,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/bs_split.c:635,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:636,1
    - Dst: AVC_READ_LIST
      Src: /src/gpac/src/filters/bs_split.c:643,1
    - Dst: AVC_READ_LIST
      Src: /src/gpac/src/filters/bs_split.c:644,1
    - Dst: AVC_READ_LIST
      Src: /src/gpac/src/filters/bs_split.c:645,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:649,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:650,1
    - Dst: bs_split_copy_props_base
      Src: /src/gpac/src/filters/bs_split.c:652,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:654,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:654,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:656,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:658,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 58
    argCount: 2
    argNames:
    - ctx
    - pctx
    argTypes:
    - BSSplitCtx*
    - BSSplitIn*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 562
    functionDepth: 3
    functionLinenumber: 562
    functionLinenumberEnd: 661
    functionName: avc_rewrite_pid_config
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_get_property
    - gf_bs_new
    - gf_odf_avc_cfg_write
    - gf_odf_avc_cfg_del
    - AVC_READ_LIST
    - PROP_UINT
    - gf_filter_pid_set_property
    - gf_list_count
    - memset
    - PROP_DATA_NO_COPY
    - bs_split_svcc_del
    - gf_odf_avc_cfg_read
    - bs_split_copy_props_base
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err avc_rewrite_pid_config(BSSplitCtx *ctx, BSSplitIn *pctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _list
    - ','
    - _is_sps
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 615
      start: 597
    functionDepth: 0
    functionLinenumber: 597
    functionLinenumberEnd: 615
    functionName: AVC_READ_LIST
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: AVC_READ_LIST(_list, _is_sps)
  - BBCount: 69
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_split.c:683,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_split.c:684,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/bs_split.c:691,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/bs_split.c:693,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/bs_split.c:697,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/bs_split.c:699,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:714,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:716,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:718,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:723,1
    - Dst: bs_split_get_out_stream
      Src: /src/gpac/src/filters/bs_split.c:735,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/bs_split.c:740,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:742,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/bs_split.c:745,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/bs_split.c:746,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:748,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/bs_split.c:751,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/bs_split.c:752,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:754,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:755,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/bs_split.c:762,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:764,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/bs_split.c:767,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/bs_split.c:768,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:770,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:771,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:778,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:779,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/bs_split.c:784,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/bs_split.c:785,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:787,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:788,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:789,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:790,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bs_split.c:791,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/bs_split.c:796,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/bs_split.c:799,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/bs_split.c:801,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/bs_split.c:802,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/bs_split.c:803,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:808,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:812,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/bs_split.c:818,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:820,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/bs_split.c:832,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/bs_split.c:833,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:837,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:841,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/bs_split.c:846,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/bs_split.c:857,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:869,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:871,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:873,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:876,1
    - Dst: match_substream
      Src: /src/gpac/src/filters/bs_split.c:889,1
    - Dst: gf_hevc_parse_nalu
      Src: /src/gpac/src/filters/bs_split.c:897,1
    - Dst: gf_vvc_parse_nalu
      Src: /src/gpac/src/filters/bs_split.c:911,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/bs_split.c:926,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/bs_split.c:927,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bs_split.c:929,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/bs_split.c:935,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/bs_split.c:937,1
    - Dst: gf_odf_vvc_cfg_write
      Src: /src/gpac/src/filters/bs_split.c:947,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/bs_split.c:949,1
    - Dst: bs_split_copy_props_base
      Src: /src/gpac/src/filters/bs_split.c:957,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:959,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/bs_split.c:959,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:960,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:966,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:966,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_split.c:968,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_split.c:968,1
    - Dst: bs_split_update_hevc_linf
      Src: /src/gpac/src/filters/bs_split.c:970,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:973,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:975,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/bs_split.c:976,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bs_split.c:977,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/bs_split.c:979,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bs_split.c:986,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bs_split.c:987,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:990,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:991,1
    CyclomaticComplexity: 95
    EdgeCount: 95
    ICount: 271
    argCount: 2
    argNames:
    - ctx
    - pctx
    argTypes:
    - BSSplitCtx*
    - BSSplitIn*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 993
      start: 664
    functionDepth: 11
    functionLinenumber: 664
    functionLinenumberEnd: 993
    functionName: vvc_hevc_rewrite_pid_config
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_vvc_cfg_del
    - GF_SAFEALLOC
    - bs_split_get_out_stream
    - gf_list_count
    - PROP_DATA_NO_COPY
    - bs_split_copy_props_base
    - gf_odf_hevc_cfg_read
    - gf_list_get
    - gf_list_new
    - match_substream
    - bs_split_update_hevc_linf
    - memcpy
    - gf_odf_hevc_cfg_write
    - gf_list_add
    - gf_odf_vvc_cfg_read
    - gf_hevc_parse_nalu
    - gf_vvc_parse_nalu
    - gf_filter_pid_set_property
    - gf_malloc
    - gf_list_del
    - gf_odf_hevc_cfg_del
    - gf_odf_vvc_cfg_write
    - gf_filter_pid_get_property
    - PROP_UINT
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vvc_hevc_rewrite_pid_config(BSSplitCtx *ctx, BSSplitIn *pctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:1000,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:1002,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/bs_split.c:1003,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - pctx
    argTypes:
    - BSSplitCtx*
    - BSSplitIn*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1006
      start: 996
    functionDepth: 1
    functionLinenumber: 996
    functionLinenumberEnd: 1006
    functionName: none_rewrite_pid_config
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_filter_pid_copy_properties
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err none_rewrite_pid_config(BSSplitCtx *ctx, BSSplitIn *pctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:1010,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/bs_split.c:1012,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - pctx
    - pck
    argTypes:
    - BSSplitCtx*
    - BSSplitIn*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1014
      start: 1008
    functionDepth: 1
    functionLinenumber: 1008
    functionLinenumberEnd: 1014
    functionName: none_split_packet
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pck_forward
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err none_split_packet(BSSplitCtx *ctx, BSSplitIn *pctx, GF_FilterPacket
      *pck)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/bs_split.c:1022,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:1024,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/bs_split.c:1026,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/bs_split.c:1030,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/bs_split.c:1032,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/bs_split.c:1056,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/bs_split.c:1061,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/bs_split.c:1069,1
    - Dst: gf_avc_parse_nalu
      Src: /src/gpac/src/filters/bs_split.c:1070,1
    - Dst: bs_split_get_out_stream
      Src: /src/gpac/src/filters/bs_split.c:1139,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/bs_split.c:1162,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/bs_split.c:1167,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:1173,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:1175,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:1176,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:1177,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:1178,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:1180,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:1181,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:1182,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:1184,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:1185,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:1186,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:1187,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:1188,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:1189,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:1191,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:1192,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:1193,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:1195,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_split.c:1196,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/bs_split.c:1198,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/bs_split.c:1200,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/bs_split.c:1201,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/bs_split.c:1202,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/bs_split.c:1203,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/bs_split.c:1204,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/bs_split.c:1209,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/bs_split.c:1214,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/bs_split.c:1217,1
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/bs_split.c:1219,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/bs_split.c:1222,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:1227,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:1229,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/bs_split.c:1231,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 162
    argCount: 4
    argNames:
    - ctx
    - pctx
    - pck
    - codec_type
    argTypes:
    - BSSplitCtx*
    - BSSplitIn*
    - GF_FilterPacket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1236
      start: 1016
    functionDepth: 11
    functionLinenumber: 1016
    functionLinenumberEnd: 1236
    functionName: nalu_split_packet
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - bs_split_get_out_stream
    - gf_list_count
    - gf_list_get
    - gf_filter_pck_forward
    - memcpy
    - gf_filter_pck_get_cts
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_bs_write_int
    - gf_filter_pck_set_duration
    - gf_filter_pck_expand
    - gf_filter_pck_set_sap
    - gf_bs_reassign_buffer
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_bs_del
    - gf_filter_pck_set_framing
    - gf_avc_parse_nalu
    - gf_filter_pck_get_dts
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nalu_split_packet(BSSplitCtx *ctx, BSSplitIn *pctx, GF_FilterPacket
      *pck, u32 codec_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nalu_split_packet
      Src: /src/gpac/src/filters/bs_split.c:1240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - pctx
    - pck
    argTypes:
    - BSSplitCtx*
    - BSSplitIn*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1241
      start: 1238
    functionDepth: 12
    functionLinenumber: 1238
    functionLinenumberEnd: 1241
    functionName: avc_split_packet
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached:
    - nalu_split_packet
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err avc_split_packet(BSSplitCtx *ctx, BSSplitIn *pctx, GF_FilterPacket
      *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nalu_split_packet
      Src: /src/gpac/src/filters/bs_split.c:1244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - pctx
    - pck
    argTypes:
    - BSSplitCtx*
    - BSSplitIn*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1245
      start: 1242
    functionDepth: 12
    functionLinenumber: 1242
    functionLinenumberEnd: 1245
    functionName: hevc_split_packet
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached:
    - nalu_split_packet
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hevc_split_packet(BSSplitCtx *ctx, BSSplitIn *pctx, GF_FilterPacket
      *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nalu_split_packet
      Src: /src/gpac/src/filters/bs_split.c:1248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - pctx
    - pck
    argTypes:
    - BSSplitCtx*
    - BSSplitIn*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1249
      start: 1246
    functionDepth: 12
    functionLinenumber: 1246
    functionLinenumberEnd: 1249
    functionName: vvc_split_packet
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached:
    - nalu_split_packet
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vvc_split_packet(BSSplitCtx *ctx, BSSplitIn *pctx, GF_FilterPacket
      *pck)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:1255,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/bs_split.c:1256,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/bs_split.c:1258,1
    - Dst: bs_split_svcc_del
      Src: /src/gpac/src/filters/bs_split.c:1259,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bs_split.c:1260,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:1263,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/bs_split.c:1267,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bs_split.c:1271,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/bs_split.c:1275,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/bs_split.c:1281,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/bs_split.c:1282,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bs_split.c:1283,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 5
    argNames:
    - filter
    - ctx
    - pctx
    - is_finalize
    - is_reconf
    argTypes:
    - GF_Filter*
    - BSSplitCtx*
    - BSSplitIn*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1285
      start: 1251
    functionDepth: 3
    functionLinenumber: 1251
    functionLinenumberEnd: 1285
    functionName: bs_split_reset_stream
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_odf_avc_cfg_del
    - gf_filter_pid_remove
    - gf_bs_del
    - gf_list_count
    - gf_list_del_item
    - bs_split_svcc_del
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void bs_split_reset_stream(GF_Filter *filter, BSSplitCtx *ctx, BSSplitIn
      *pctx, Bool is_finalize, Bool is_reconf)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/bs_split.c:1290,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/bs_split.c:1291,1
    - Dst: bs_split_reset_stream
      Src: /src/gpac/src/filters/bs_split.c:1296,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/bs_split.c:1297,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/bs_split.c:1301,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/bs_split.c:1306,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/bs_split.c:1308,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bs_split.c:1310,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/bs_split.c:1314,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/bs_split.c:1315,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/bs_split.c:1316,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/bs_split.c:1317,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/bs_split.c:1318,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_split.c:1321,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_split.c:1325,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/bs_split.c:1326,1
    - Dst: bs_split_reset_stream
      Src: /src/gpac/src/filters/bs_split.c:1352,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/bs_split.c:1356,1
    - Dst: BSSplitIn*::rewrite_pid_config
      Src: /src/gpac/src/filters/bs_split.c:1360,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 58
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1361
      start: 1287
    functionDepth: 4
    functionLinenumber: 1287
    functionLinenumberEnd: 1361
    functionName: bs_split_configure_pid
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_filter_pid_get_property
    - GF_SAFEALLOC
    - gf_filter_pid_set_framing_mode
    - BSSplitIn*::rewrite_pid_config
    - gf_filter_pid_check_caps
    - gf_fatal_assert
    - gf_list_add
    - bs_split_reset_stream
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bs_split_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/bs_split.c:1367,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/bs_split.c:1369,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/bs_split.c:1373,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/bs_split.c:1375,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/bs_split.c:1379,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/bs_split.c:1381,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:1382,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_split.c:1383,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/bs_split.c:1384,1
    - Dst: BSSplitIn*::split_packet
      Src: /src/gpac/src/filters/bs_split.c:1389,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/bs_split.c:1390,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 23
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1394
      start: 1364
    functionDepth: 1
    functionLinenumber: 1364
    functionLinenumberEnd: 1394
    functionName: bs_split_process
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_is_eos
    - gf_list_get
    - gf_filter_pid_drop_packet
    - BSSplitIn*::split_packet
    - gf_filter_pid_set_eos
    - gf_list_count
    - gf_filter_get_ipid
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bs_split_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/bs_split.c:1398,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/bs_split.c:1399,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1403
      start: 1396
    functionDepth: 1
    functionLinenumber: 1396
    functionLinenumberEnd: 1403
    functionName: bs_split_initialize
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bs_split_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/bs_split.c:1406,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_split.c:1407,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/bs_split.c:1408,1
    - Dst: bs_split_reset_stream
      Src: /src/gpac/src/filters/bs_split.c:1410,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/bs_split.c:1412,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1413
      start: 1404
    functionDepth: 4
    functionLinenumber: 1404
    functionLinenumberEnd: 1413
    functionName: bs_split_finalize
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_back
    - gf_list_count
    - bs_split_reset_stream
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void bs_split_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1416
      start: 1415
    functionDepth: 0
    functionLinenumber: 1415
    functionLinenumberEnd: 1416
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1493
      start: 1486
    functionDepth: 0
    functionLinenumber: 1486
    functionLinenumberEnd: 1493
    functionName: bssplit_register
    functionSourceFile: /src/gpac/src/filters/bs_split.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *bssplit_register(GF_FilterSession *session)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_sock.c:80,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/filters/out_sock.c:83,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_sock.c:84,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/out_sock.c:88,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_sock.c:90,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/out_sock.c:92,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_sock.c:93,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_sock.c:98,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_sock.c:100,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_sock.c:104,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 106
    functionName: sockout_configure_pid
    functionSourceFile: /src/gpac/src/filters/out_sock.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_sk_group_unregister
    - gf_sk_del
    - gf_filter_pid_init_play_event
    - GF_LOG
    - gf_filter_pid_check_caps
    - gf_list_count
    - gf_filter_pid_send_event
    - gf_filter_post_process_task
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sockout_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_sock.c:115,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_sock.c:119,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_sock.c:120,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_sock.c:121,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_sock.c:122,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/out_sock.c:126,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/out_sock.c:131,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_sock.c:134,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/out_sock.c:136,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_sock.c:141,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_sock.c:146,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/out_sock.c:152,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_sock.c:157,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/out_sock.c:160,1
    - Dst: strlwr
      Src: /src/gpac/src/filters/out_sock.c:162,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_sock.c:164,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/out_sock.c:167,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_sock.c:171,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_sock.c:174,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_sock.c:177,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_sock.c:180,1
    - Dst: gf_filter_is_temporary
      Src: /src/gpac/src/filters/out_sock.c:186,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_sock.c:189,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/filters/out_sock.c:193,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/out_sock.c:193,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_sock.c:195,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/out_sock.c:201,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_sock.c:203,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_sock.c:203,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_sock.c:205,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/filters/out_sock.c:209,1
    - Dst: gf_sk_setup_multicast
      Src: /src/gpac/src/filters/out_sock.c:211,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/filters/out_sock.c:218,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/filters/out_sock.c:221,1
    - Dst: gf_sk_listen
      Src: /src/gpac/src/filters/out_sock.c:222,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_sock.c:224,1
    - Dst: gf_sk_server_mode
      Src: /src/gpac/src/filters/out_sock.c:225,1
    - Dst: gf_sk_connect
      Src: /src/gpac/src/filters/out_sock.c:228,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_sock.c:234,1
    - Dst: gf_sk_group_new
      Src: /src/gpac/src/filters/out_sock.c:238,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/filters/out_sock.c:239,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/filters/out_sock.c:241,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 118
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 108
    functionDepth: 4
    functionLinenumber: 108
    functionLinenumberEnd: 245
    functionName: sockout_initialize
    functionSourceFile: /src/gpac/src/filters/out_sock.c
    functionUses: 0
    functionsReached:
    - gf_filter_override_caps
    - gf_filter_is_temporary
    - gf_sk_group_register
    - gf_sk_del
    - gf_sk_set_buffer_size
    - atoi
    - strchr
    - gf_filter_post_process_task
    - gf_list_new
    - strrchr
    - gf_sk_server_mode
    - gf_sk_connect
    - strlwr
    - gf_sk_setup_multicast
    - strncmp
    - gf_sk_group_new
    - gf_filter_get_udta
    - gf_sk_bind
    - GF_LOG
    - gf_filter_get_netcap_id
    - gf_sk_listen
    - strncpy
    - strnicmp
    - gf_filter_setup_failure
    - gf_sk_new_ex
    - PROP_NAME
    - PROP_UINT
    - gf_sk_is_multicast_address
    - gf_file_ext_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sockout_initialize(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_sock.c:249,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_sock.c:251,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_sock.c:252,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_sock.c:253,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_sock.c:254,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_sock.c:256,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_sock.c:259,1
    - Dst: gf_sk_group_del
      Src: /src/gpac/src/filters/out_sock.c:260,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 247
    functionDepth: 3
    functionLinenumber: 247
    functionLinenumberEnd: 262
    functionName: sockout_finalize
    functionSourceFile: /src/gpac/src/filters/out_sock.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_sk_del
    - gf_list_count
    - gf_sk_group_del
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void sockout_finalize(GF_Filter *filter)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_sock.c:275,1
    - Dst: gf_sk_send_ex
      Src: /src/gpac/src/filters/out_sock.c:278,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_sock.c:282,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_sock.c:282,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/out_sock.c:287,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_sock.c:290,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_sock.c:295,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_sock.c:297,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_sock.c:299,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/out_sock.c:304,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/out_sock.c:310,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_sock.c:312,1
    - Dst: gf_sk_send
      Src: /src/gpac/src/filters/out_sock.c:323,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_sock.c:325,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_sock.c:325,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 53
    argCount: 3
    argNames:
    - ctx
    - pck
    - dst_sock
    argTypes:
    - GF_SockOutCtx*
    - GF_FilterPacket*
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 264
    functionDepth: 5
    functionLinenumber: 264
    functionLinenumberEnd: 333
    functionName: sockout_send_packet
    functionSourceFile: /src/gpac/src/filters/out_sock.c
    functionUses: 0
    functionsReached:
    - gf_sk_send_ex
    - gf_sk_send
    - gf_filter_pid_get_property
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_pixel_get_size_info
    - GF_FilterFrameInterface*::get_plane
    - gf_error_to_string
    - gf_filter_pck_get_frame_interface
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sockout_send_packet(GF_SockOutCtx *ctx, GF_FilterPacket *pck,
      GF_Socket *dst_sock)
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_sock.c:341,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_sock.c:347,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_sock.c:349,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_sock.c:352,1
    - Dst: MAX
      Src: /src/gpac/src/filters/out_sock.c:352,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/out_sock.c:354,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_sock.c:356,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/out_sock.c:358,1
    - Dst: gf_sk_accept
      Src: /src/gpac/src/filters/out_sock.c:366,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_sock.c:369,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_sock.c:373,1
    - Dst: gf_sk_get_remote_address
      Src: /src/gpac/src/filters/out_sock.c:374,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_sock.c:376,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_sock.c:377,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/out_sock.c:381,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_sock.c:382,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/filters/out_sock.c:389,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_sock.c:393,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_sock.c:397,1
    - Dst: gf_sk_group_select
      Src: /src/gpac/src/filters/out_sock.c:401,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_sock.c:403,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_sock.c:409,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/out_sock.c:411,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/out_sock.c:411,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/filters/out_sock.c:417,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_sock.c:418,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_sock.c:425,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/out_sock.c:437,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_sock.c:444,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_sock.c:445,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/out_sock.c:456,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/out_sock.c:463,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_sock.c:464,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_sock.c:466,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_sock.c:467,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_sock.c:474,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/out_sock.c:475,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_sock.c:481,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/filters/out_sock.c:484,1
    - Dst: sockout_send_packet
      Src: /src/gpac/src/filters/out_sock.c:495,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/filters/out_sock.c:497,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_sock.c:498,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/out_sock.c:500,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_sock.c:501,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_sock.c:516,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_sock.c:519,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/filters/out_sock.c:527,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_sock.c:528,1
    - Dst: sockout_send_packet
      Src: /src/gpac/src/filters/out_sock.c:531,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_sock.c:535,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_sock.c:536,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/filters/out_sock.c:537,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_sock.c:538,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_sock.c:546,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_sock.c:549,1
    - Dst: sockout_send_packet
      Src: /src/gpac/src/filters/out_sock.c:551,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_sock.c:553,1
    CyclomaticComplexity: 60
    EdgeCount: 60
    ICount: 188
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 335
    functionDepth: 6
    functionLinenumber: 335
    functionLinenumberEnd: 560
    functionName: sockout_process
    functionSourceFile: /src/gpac/src/filters/out_sock.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - gf_sk_group_register
    - strcpy
    - gf_sk_del
    - gf_list_count
    - MAX
    - gf_filter_pid_get_packet
    - gf_filter_post_process_task
    - gf_sk_accept
    - gf_list_get
    - snprintf
    - GF_FEVT_INIT
    - gf_filter_pck_get_dependency_flags
    - gf_sk_get_remote_address
    - gf_list_add
    - gf_sk_group_sock_is_set
    - gf_filter_ask_rt_reschedule
    - gf_filter_get_udta
    - gf_filter_update_status
    - gf_filter_pid_drop_packet
    - gf_filter_pck_ref
    - GF_LOG
    - gf_sk_group_unregister
    - gf_filter_pid_init_play_event
    - gf_sk_group_select
    - gf_filter_pid_send_event
    - gf_filter_pid_is_eos
    - gf_rand
    - gf_sys_clock_high_res
    - gf_filter_pck_unref
    - sockout_send_packet
    - gf_filter_reporting_enabled
    - gf_filter_pid_is_flush_eos
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sockout_process(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_sock.c:564,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_sock.c:565,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_sock.c:567,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_sock.c:568,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 562
    functionDepth: 0
    functionLinenumber: 562
    functionLinenumberEnd: 571
    functionName: sockout_probe_url
    functionSourceFile: /src/gpac/src/filters/out_sock.c
    functionUses: 0
    functionsReached:
    - strnicmp
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore sockout_probe_url(const char *url, const char *mime)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 574
    functionDepth: 0
    functionLinenumber: 574
    functionLinenumberEnd: 575
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/out_sock.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/out_sock.c:653,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/out_sock.c:655,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/out_sock.c:657,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 651
    functionDepth: 6
    functionLinenumber: 651
    functionLinenumberEnd: 661
    functionName: sockout_register
    functionSourceFile: /src/gpac/src/filters/out_sock.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    - gf_opts_set_key
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *sockout_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 664
    functionDepth: 0
    functionLinenumber: 664
    functionLinenumberEnd: 667
    functionName: sockout_register
    functionSourceFile: /src/gpac/src/filters/out_sock.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *sockout_register(GF_FilterSession *session)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_theora.c:61,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_theora.c:66,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_theora.c:72,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_theora.c:75,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dec_theora.c:78,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_theora.c:79,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_theora.c:83,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_theora.c:87,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_theora.c:90,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_theora.c:91,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_theora.c:91,1
    - Dst: theora_clear
      Src: /src/gpac/src/filters/dec_theora.c:94,1
    - Dst: theora_info_clear
      Src: /src/gpac/src/filters/dec_theora.c:95,1
    - Dst: theora_comment_clear
      Src: /src/gpac/src/filters/dec_theora.c:96,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dec_theora.c:99,1
    - Dst: theora_info_init
      Src: /src/gpac/src/filters/dec_theora.c:106,1
    - Dst: theora_comment_init
      Src: /src/gpac/src/filters/dec_theora.c:107,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_theora.c:109,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dec_theora.c:110,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dec_theora.c:112,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_theora.c:113,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dec_theora.c:114,1
    - Dst: theora_decode_header
      Src: /src/gpac/src/filters/dec_theora.c:115,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_theora.c:118,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_theora.c:120,1
    - Dst: theora_decode_init
      Src: /src/gpac/src/filters/dec_theora.c:124,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_theora.c:125,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 58
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 56
    functionDepth: 6
    functionLinenumber: 56
    functionLinenumberEnd: 128
    functionName: theoradec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_theora.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_bs_new
    - gf_filter_pid_check_caps
    - gf_bs_read_u16
    - gf_bs_available
    - gf_filter_pid_new
    - theora_comment_init
    - theora_info_init
    - strncmp
    - theora_comment_clear
    - theora_clear
    - theora_info_clear
    - gf_crc_32
    - gf_filter_get_udta
    - theora_decode_init
    - gf_filter_pid_copy_properties
    - GF_LOG
    - theora_decode_header
    - gf_filter_pid_set_property
    - gf_malloc
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - gf_bs_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err theoradec_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_theora.c:138,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_theora.c:142,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_theora.c:143,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_theora.c:146,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_theora.c:147,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_theora.c:151,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_theora.c:153,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/dec_theora.c:159,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_theora.c:160,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_theora.c:164,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_theora.c:165,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_theora.c:167,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dec_theora.c:171,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_theora.c:177,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_theora.c:181,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_theora.c:182,1
    - Dst: theora_decode_packetin
      Src: /src/gpac/src/filters/dec_theora.c:189,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dec_theora.c:190,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_theora.c:191,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_theora.c:193,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_theora.c:196,1
    - Dst: theora_decode_YUVout
      Src: /src/gpac/src/filters/dec_theora.c:200,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_theora.c:202,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_theora.c:205,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/dec_theora.c:209,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_theora.c:210,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_theora.c:212,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_theora.c:212,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_theora.c:213,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_theora.c:213,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_theora.c:214,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_theora.c:214,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_theora.c:215,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/dec_theora.c:215,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_theora.c:216,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_theora.c:216,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dec_theora.c:219,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_theora.c:230,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_theora.c:235,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_theora.c:236,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dec_theora.c:243,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_theora.c:245,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/dec_theora.c:246,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_theora.c:247,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dec_theora.c:248,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/dec_theora.c:249,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_theora.c:250,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/dec_theora.c:251,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dec_theora.c:254,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_theora.c:258,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dec_theora.c:260,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_theora.c:262,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 104
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 130
    functionDepth: 2
    functionLinenumber: 130
    functionLinenumberEnd: 264
    functionName: theoradec_process
    functionSourceFile: /src/gpac/src/filters/dec_theora.c
    functionUses: 0
    functionsReached:
    - memcmp
    - gf_list_count
    - memset
    - gf_filter_pck_ref_props
    - gf_filter_pck_set_dependency_flags
    - gf_filter_pck_get_seek_flag
    - gf_filter_pid_get_packet
    - gf_list_get
    - theora_decode_packetin
    - memcpy
    - gf_list_add
    - gf_filter_pck_get_cts
    - gf_filter_pck_discard
    - gf_filter_pck_get_duration
    - gf_filter_get_udta
    - gf_list_insert
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - gf_filter_pid_set_eos
    - gf_filter_pid_is_eos
    - gf_filter_pid_set_property
    - PROP_FRAC_INT
    - PROP_UINT
    - gf_filter_pck_set_dts
    - gf_list_pop_front
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - theora_decode_YUVout
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err theoradec_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_theora.c:268,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_theora.c:269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 266
    functionDepth: 1
    functionLinenumber: 266
    functionLinenumberEnd: 271
    functionName: theoradec_initialize
    functionSourceFile: /src/gpac/src/filters/dec_theora.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err theoradec_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_theora.c:274,1
    - Dst: theora_clear
      Src: /src/gpac/src/filters/dec_theora.c:276,1
    - Dst: theora_info_clear
      Src: /src/gpac/src/filters/dec_theora.c:277,1
    - Dst: theora_comment_clear
      Src: /src/gpac/src/filters/dec_theora.c:278,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_theora.c:280,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_theora.c:281,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_theora.c:282,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_theora.c:284,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 272
    functionDepth: 3
    functionLinenumber: 272
    functionLinenumberEnd: 285
    functionName: theoradec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_theora.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_back
    - gf_filter_pck_unref
    - gf_list_count
    - theora_comment_clear
    - theora_clear
    - theora_info_clear
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void theoradec_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 311
    functionDepth: 0
    functionLinenumber: 311
    functionLinenumberEnd: 318
    functionName: theoradec_register
    functionSourceFile: /src/gpac/src/filters/dec_theora.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *theoradec_register(GF_FilterSession *session)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_adts.c:111,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_adts.c:113,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:115,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:117,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:120,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:121,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:122,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_adts.c:123,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:125,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:126,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:127,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:128,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:133,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:134,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:135,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:137,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_adts.c:142,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_adts.c:154,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_adts.c:159,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_adts.c:164,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_adts.c:167,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_adts.c:171,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_adts.c:172,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_adts.c:175,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:178,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:181,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_adts.c:182,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_adts.c:185,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 69
    argCount: 2
    argNames:
    - bs
    - hdr
    argTypes:
    - GF_BitStream*
    - ADTSHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 106
    functionDepth: 7
    functionLinenumber: 106
    functionLinenumberEnd: 189
    functionName: adts_dmx_sync_frame_bs
    functionSourceFile: /src/gpac/src/filters/reframe_adts.c
    functionUses: 0
    functionsReached:
    - gf_bs_seek
    - gf_bs_get_position
    - gf_bs_read_int
    - gf_bs_read_u8
    - gf_bs_available
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: Bool
    signature: Bool adts_dmx_sync_frame_bs(GF_BitStream *bs, ADTSHeader *hdr)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_adts.c:197,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/reframe_adts.c:202,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/reframe_adts.c:207,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_adts.c:211,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_adts.c:215,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_adts.c:216,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_adts.c:217,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_adts.c:218,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_adts.c:220,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_adts.c:220,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 226
    functionName: adts_dmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/reframe_adts.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err adts_dmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_adts.c:243,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_adts.c:244,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/reframe_adts.c:251,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/reframe_adts.c:253,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/filters/reframe_adts.c:260,1
    - Dst: adts_dmx_sync_frame_bs
      Src: /src/gpac/src/filters/reframe_adts.c:263,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_adts.c:277,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_adts.c:278,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_adts.c:285,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_adts.c:287,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_adts.c:288,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/reframe_adts.c:289,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_adts.c:296,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_adts.c:296,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_adts.c:306,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 66
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_ADTSDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 228
    functionDepth: 8
    functionLinenumber: 228
    functionLinenumberEnd: 308
    functionName: adts_dmx_check_dur
    functionSourceFile: /src/gpac/src/filters/reframe_adts.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_filter_pid_get_property
    - gf_fileio_is_main_thread
    - adts_dmx_sync_frame_bs
    - gf_bs_get_position
    - gf_bs_del
    - strncmp
    - gf_fopen_ex
    - PROP_FRAC64
    - gf_bs_from_file
    - gf_filter_pid_set_property
    - gf_bs_skip_bytes
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void adts_dmx_check_dur(GF_Filter *filter, GF_ADTSDmxCtx *ctx)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_adts.c:318,1
    - Dst: adts_dmx_check_dur
      Src: /src/gpac/src/filters/reframe_adts.c:319,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_adts.c:327,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_adts.c:330,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_adts.c:330,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_adts.c:332,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_adts.c:332,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_adts.c:336,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_adts.c:336,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_adts.c:337,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_adts.c:337,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_adts.c:338,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_adts.c:338,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_adts.c:339,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_adts.c:339,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_adts.c:341,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_adts.c:341,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_adts.c:353,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_adts.c:360,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_adts.c:360,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_adts.c:372,1
    - Dst: gf_m4a_get_profile
      Src: /src/gpac/src/filters/reframe_adts.c:421,1
    - Dst: gf_m4a_write_config_bs
      Src: /src/gpac/src/filters/reframe_adts.c:429,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/reframe_adts.c:430,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_adts.c:434,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_adts.c:435,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_adts.c:438,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_adts.c:439,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_adts.c:441,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_adts.c:444,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_adts.c:445,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/reframe_adts.c:447,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/reframe_adts.c:450,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_adts.c:451,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_adts.c:452,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/reframe_adts.c:452,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_adts.c:453,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_adts.c:453,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_adts.c:454,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_adts.c:454,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_adts.c:460,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_adts.c:460,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_adts.c:461,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_adts.c:461,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_adts.c:464,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_adts.c:464,1
    - Dst: id3dmx_flush
      Src: /src/gpac/src/filters/reframe_adts.c:468,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 127
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_ADTSDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 310
    functionDepth: 9
    functionLinenumber: 310
    functionLinenumberEnd: 472
    functionName: adts_dmx_check_pid
    functionSourceFile: /src/gpac/src/filters/reframe_adts.c
    functionUses: 0
    functionsReached:
    - PROP_BOOL
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - adts_dmx_check_dur
    - gf_bs_new
    - id3dmx_flush
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_m4a_get_profile
    - gf_bs_align
    - gf_bs_del
    - PROP_DATA_NO_COPY
    - PROP_FRAC64
    - gf_m4a_write_config_bs
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_timestamp_rescale
    linkageType: ''
    returnType: void
    signature: void adts_dmx_check_pid(GF_Filter *filter, GF_ADTSDmxCtx *ctx)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_adts.c:478,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_adts.c:519,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_adts.c:521,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 50
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 540
      start: 474
    functionDepth: 1
    functionLinenumber: 474
    functionLinenumberEnd: 540
    functionName: adts_dmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_adts.c
    functionUses: 0
    functionsReached:
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool adts_dmx_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_adts.c:544,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_ADTSDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 554
      start: 542
    functionDepth: 1
    functionLinenumber: 542
    functionLinenumberEnd: 554
    functionName: adts_dmx_update_cts
    functionSourceFile: /src/gpac/src/filters/reframe_adts.c
    functionUses: 0
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE adts_dmx_update_cts(GF_ADTSDmxCtx *ctx)
  - BBCount: 68
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_adts.c:558,1
    - Dst: adts_dmx_check_dur
      Src: /src/gpac/src/filters/reframe_adts.c:570,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_adts.c:575,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_adts.c:577,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_adts.c:580,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_adts.c:581,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_adts.c:592,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_adts.c:594,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_adts.c:599,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_adts.c:612,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_adts.c:614,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_adts.c:620,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_adts.c:655,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_adts.c:658,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_adts.c:671,1
    - Dst: id3dmx_flush
      Src: /src/gpac/src/filters/reframe_adts.c:675,1
    - Dst: memchr
      Src: /src/gpac/src/filters/reframe_adts.c:682,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_adts.c:693,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_adts.c:700,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_adts.c:702,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:706,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:708,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:714,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:715,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:717,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:718,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:719,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:720,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:722,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:723,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:724,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:725,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_adts.c:736,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_adts.c:740,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_adts.c:745,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_adts.c:755,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_adts.c:761,1
    - Dst: gf_m4a_parse_program_config_element
      Src: /src/gpac/src/filters/reframe_adts.c:762,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_adts.c:764,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_adts.c:766,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_adts.c:781,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_adts.c:797,1
    - Dst: adts_dmx_check_pid
      Src: /src/gpac/src/filters/reframe_adts.c:803,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_adts.c:835,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_adts.c:839,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_adts.c:841,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_adts.c:843,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_adts.c:845,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_adts.c:846,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_adts.c:848,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_adts.c:848,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_adts.c:850,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_adts.c:851,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_adts.c:852,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_adts.c:855,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_adts.c:858,1
    - Dst: adts_dmx_update_cts
      Src: /src/gpac/src/filters/reframe_adts.c:860,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_adts.c:865,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_adts.c:880,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_adts.c:883,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_adts.c:896,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_adts.c:900,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_adts.c:903,1
    CyclomaticComplexity: 99
    EdgeCount: 99
    ICount: 280
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 906
      start: 556
    functionDepth: 10
    functionLinenumber: 556
    functionLinenumberEnd: 906
    functionName: adts_dmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_adts.c
    functionUses: 0
    functionsReached:
    - adts_dmx_check_pid
    - id3dmx_flush
    - gf_bs_new
    - gf_filter_pck_ref_props
    - gf_filter_pid_get_packet
    - gf_realloc
    - adts_dmx_update_cts
    - gf_filter_pck_set_byte_offset
    - memcpy
    - gf_filter_pck_get_cts
    - memchr
    - gf_m4a_parse_program_config_element
    - gf_bs_skip_bytes
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - memmove
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_filter_pid_set_eos
    - gf_bs_get_position
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - gf_timestamp_rescale
    - adts_dmx_check_dur
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - gf_filter_pck_set_framing
    - gf_filter_pck_get_byte_offset
    - gf_bs_read_int
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err adts_dmx_process(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_adts.c:910,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_adts.c:911,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_adts.c:912,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_adts.c:913,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_adts.c:914,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_adts.c:915,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 916
      start: 908
    functionDepth: 3
    functionLinenumber: 908
    functionLinenumberEnd: 916
    functionName: adts_dmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_adts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_del
    - gf_filter_pck_unref
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void adts_dmx_finalize(GF_Filter *filter)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_adts.c:932,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_adts.c:942,1
    - Dst: memset
      Src: /src/gpac/src/filters/reframe_adts.c:943,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_adts.c:944,1
    - Dst: adts_dmx_sync_frame_bs
      Src: /src/gpac/src/filters/reframe_adts.c:948,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_adts.c:957,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_adts.c:971,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_adts.c:972,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_adts.c:974,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 53
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 984
      start: 918
    functionDepth: 8
    functionLinenumber: 918
    functionLinenumberEnd: 984
    functionName: adts_dmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_adts.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - GF_LOG
    - adts_dmx_sync_frame_bs
    - gf_bs_get_position
    - gf_bs_del
    - memset
    - gf_bs_available
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: char
    signature: char *adts_dmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1013
      start: 1012
    functionDepth: 0
    functionLinenumber: 1012
    functionLinenumberEnd: 1013
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/reframe_adts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1055
      start: 1052
    functionDepth: 0
    functionLinenumber: 1052
    functionLinenumberEnd: 1055
    functionName: rfadts_register
    functionSourceFile: /src/gpac/src/filters/reframe_adts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfadts_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1060
      start: 1057
    functionDepth: 0
    functionLinenumber: 1057
    functionLinenumberEnd: 1060
    functionName: rfadts_register
    functionSourceFile: /src/gpac/src/filters/reframe_adts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfadts_register(GF_FilterSession *session)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/enc_cc.c:79,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/enc_cc.c:84,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/enc_cc.c:88,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/enc_cc.c:92,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/enc_cc.c:96,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/enc_cc.c:98,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_cc.c:102,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_cc.c:107,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/enc_cc.c:113,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_cc.c:115,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/enc_cc.c:121,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/enc_cc.c:122,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_cc.c:124,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_cc.c:130,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/enc_cc.c:132,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/enc_cc.c:135,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_cc.c:145,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/enc_cc.c:147,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/enc_cc.c:150,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_cc.c:160,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/enc_cc.c:162,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/enc_cc.c:165,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 83
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 178
    functionName: ccenc_configure_pid
    functionSourceFile: /src/gpac/src/filters/enc_cc.c
    functionUses: 0
    functionsReached:
    - gf_odf_hevc_cfg_read
    - gf_odf_hevc_cfg_del
    - gf_odf_vvc_cfg_del
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_odf_avc_cfg_del
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_check_caps
    - gf_odf_vvc_cfg_read
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_new
    - gf_odf_avc_cfg_read
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ccenc_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/enc_cc.c:182,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/enc_cc.c:187,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/enc_cc.c:195,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/enc_cc.c:201,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - filter
    - cts
    argTypes:
    - GF_Filter*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 180
    functionDepth: 2
    functionLinenumber: 180
    functionLinenumberEnd: 203
    functionName: ccenc_enqueue_cc_clear
    functionSourceFile: /src/gpac/src/filters/enc_cc.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_enum
    - GF_SAFEALLOC
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ccenc_enqueue_cc_clear(GF_Filter *filter, u64 cts)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/enc_cc.c:207,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/enc_cc.c:210,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/enc_cc.c:211,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/enc_cc.c:217,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/enc_cc.c:219,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/enc_cc.c:220,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/enc_cc.c:224,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/enc_cc.c:226,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/enc_cc.c:229,1
    - Dst: memset
      Src: /src/gpac/src/filters/enc_cc.c:230,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_cc.c:233,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/enc_cc.c:240,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/enc_cc.c:242,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/enc_cc.c:243,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/enc_cc.c:249,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 2
    argNames:
    - filter
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 205
    functionDepth: 2
    functionLinenumber: 205
    functionLinenumberEnd: 251
    functionName: ccenc_enqueue_cc
    functionSourceFile: /src/gpac/src/filters/enc_cc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_assert
    - GF_SAFEALLOC
    - gf_filter_pck_get_data
    - memcpy
    - GF_LOG
    - memset
    - gf_list_enum
    - gf_list_add
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_duration
    - gf_malloc
    - gf_list_rem
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ccenc_enqueue_cc(GF_Filter *filter, GF_FilterPacket *pck)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/enc_cc.c:255,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/enc_cc.c:264,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/enc_cc.c:265,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/enc_cc.c:274,1
    - Dst: caption_frame_from_text
      Src: /src/gpac/src/filters/enc_cc.c:275,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/enc_cc.c:276,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/enc_cc.c:280,1
    - Dst: sei_free
      Src: /src/gpac/src/filters/enc_cc.c:281,1
    - Dst: sei_from_caption_clear
      Src: /src/gpac/src/filters/enc_cc.c:283,1
    - Dst: sei_from_caption_frame
      Src: /src/gpac/src/filters/enc_cc.c:283,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/enc_cc.c:291,1
    - Dst: sei_render_size
      Src: /src/gpac/src/filters/enc_cc.c:291,1
    - Dst: CHECK_OOM
      Src: /src/gpac/src/filters/enc_cc.c:292,1
    - Dst: sei_render
      Src: /src/gpac/src/filters/enc_cc.c:293,1
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/filters/enc_cc.c:297,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/enc_cc.c:299,1
    - Dst: CHECK_OOM
      Src: /src/gpac/src/filters/enc_cc.c:300,1
    - Dst: gf_media_nalu_add_emulation_bytes
      Src: /src/gpac/src/filters/enc_cc.c:301,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/enc_cc.c:302,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/enc_cc.c:307,1
    - Dst: CHECK_OOM
      Src: /src/gpac/src/filters/enc_cc.c:308,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/enc_cc.c:311,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/enc_cc.c:315,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/enc_cc.c:316,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/enc_cc.c:317,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/enc_cc.c:318,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/enc_cc.c:320,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/enc_cc.c:321,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/enc_cc.c:322,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/enc_cc.c:323,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/enc_cc.c:325,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/enc_cc.c:326,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/enc_cc.c:327,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/enc_cc.c:331,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/enc_cc.c:332,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/enc_cc.c:335,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/enc_cc.c:336,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/enc_cc.c:340,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/enc_cc.c:340,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/enc_cc.c:344,1
    - Dst: CHECK_OOM
      Src: /src/gpac/src/filters/enc_cc.c:345,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/enc_cc.c:346,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/enc_cc.c:350,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/enc_cc.c:351,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/enc_cc.c:352,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/enc_cc.c:353,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/enc_cc.c:356,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/enc_cc.c:356,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/enc_cc.c:356,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/enc_cc.c:357,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/enc_cc.c:363,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/enc_cc.c:364,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/enc_cc.c:365,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/enc_cc.c:366,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/enc_cc.c:368,1
    - Dst: ccenc_enqueue_cc_clear
      Src: /src/gpac/src/filters/enc_cc.c:373,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/enc_cc.c:378,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_cc.c:382,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/enc_cc.c:382,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/enc_cc.c:383,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/enc_cc.c:386,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/enc_cc.c:387,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 79
    argCount: 3
    argNames:
    - filter
    - vpck
    - cc
    argTypes:
    - GF_Filter*
    - GF_FilterPacket*
    - CCItem*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 253
    functionDepth: 9
    functionLinenumber: 253
    functionLinenumberEnd: 388
    functionName: ccenc_pair
    functionSourceFile: /src/gpac/src/filters/enc_cc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_media_nalu_add_emulation_bytes
    - gf_media_nalu_emulation_bytes_add_count
    - GF_SAFEALLOC
    - gf_bs_new
    - sei_from_caption_clear
    - gf_list_count
    - caption_frame_from_text
    - gf_assert
    - gf_list_get
    - sei_render_size
    - ccenc_enqueue_cc_clear
    - gf_filter_pck_forward
    - gf_bs_get_content
    - memcpy
    - sei_free
    - sei_from_caption_frame
    - sei_render
    - gf_filter_get_udta
    - gf_list_insert
    - gf_filter_pck_new_alloc
    - gf_filter_pck_ref
    - CHECK_OOM
    - gf_filter_pck_get_data
    - gf_bs_write_int
    - GF_LOG
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_error_to_string
    - gf_list_enum
    - gf_malloc
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - gf_bs_del
    - gf_filter_pck_get_dts
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void ccenc_pair(GF_Filter *filter, GF_FilterPacket *vpck, CCItem *cc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 270
    functionName: CHECK_OOM
    functionSourceFile: /src/gpac/src/filters/enc_cc.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_OOM(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ccenc_pair
      Src: /src/gpac/src/filters/enc_cc.c:393,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - filter
    - vpck
    argTypes:
    - GF_Filter*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 390
    functionDepth: 10
    functionLinenumber: 390
    functionLinenumberEnd: 395
    functionName: ccenc_forward_video
    functionSourceFile: /src/gpac/src/filters/enc_cc.c
    functionUses: 0
    functionsReached:
    - ccenc_pair
    linkageType: ''
    returnType: void
    signature: void ccenc_forward_video(GF_Filter *filter, GF_FilterPacket *vpck)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/enc_cc.c:399,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/enc_cc.c:400,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/enc_cc.c:402,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/enc_cc.c:402,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/enc_cc.c:403,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/enc_cc.c:404,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - filter
    - vpck
    argTypes:
    - GF_Filter*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 397
    functionDepth: 1
    functionLinenumber: 397
    functionLinenumberEnd: 405
    functionName: ccenc_can_use_frame
    functionSourceFile: /src/gpac/src/filters/enc_cc.c
    functionUses: 0
    functionsReached:
    - gf_timestamp_greater_or_equal
    - gf_list_count
    - gf_list_last
    - gf_filter_pck_get_dts
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool ccenc_can_use_frame(GF_Filter *filter, GF_FilterPacket *vpck)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/enc_cc.c:409,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/enc_cc.c:410,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/enc_cc.c:410,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/enc_cc.c:414,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/enc_cc.c:414,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/enc_cc.c:415,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/enc_cc.c:416,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/enc_cc.c:419,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/enc_cc.c:421,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/enc_cc.c:423,1
    - Dst: ccenc_forward_video
      Src: /src/gpac/src/filters/enc_cc.c:424,1
    - Dst: gf_timestamp_equal
      Src: /src/gpac/src/filters/enc_cc.c:429,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/enc_cc.c:430,1
    - Dst: ccenc_pair
      Src: /src/gpac/src/filters/enc_cc.c:431,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/enc_cc.c:431,1
    - Dst: ccenc_can_use_frame
      Src: /src/gpac/src/filters/enc_cc.c:436,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/enc_cc.c:444,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/enc_cc.c:445,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/enc_cc.c:447,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/enc_cc.c:449,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/enc_cc.c:462,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/enc_cc.c:463,1
    - Dst: ccenc_pair
      Src: /src/gpac/src/filters/enc_cc.c:464,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/enc_cc.c:472,1
    - Dst: ccenc_can_use_frame
      Src: /src/gpac/src/filters/enc_cc.c:475,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/enc_cc.c:475,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/enc_cc.c:477,1
    - Dst: ccenc_forward_video
      Src: /src/gpac/src/filters/enc_cc.c:478,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/enc_cc.c:486,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/enc_cc.c:487,1
    - Dst: ccenc_forward_video
      Src: /src/gpac/src/filters/enc_cc.c:488,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 47
    argCount: 2
    argNames:
    - filter
    - full_flush
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 407
    functionDepth: 11
    functionLinenumber: 407
    functionLinenumberEnd: 491
    functionName: ccenc_flush
    functionSourceFile: /src/gpac/src/filters/enc_cc.c
    functionUses: 0
    functionsReached:
    - gf_timestamp_equal
    - gf_list_get
    - gf_list_pop_front
    - ccenc_forward_video
    - gf_list_count
    - gf_timestamp_less
    - ccenc_pair
    - gf_list_del_item
    - gf_filter_pck_get_cts
    - gf_timestamp_rescale
    - ccenc_can_use_frame
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ccenc_flush(GF_Filter *filter, Bool full_flush)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/enc_cc.c:496,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/src/filters/enc_cc.c:498,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_cc.c:502,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/enc_cc.c:507,1
    - Dst: ccenc_enqueue_cc
      Src: /src/gpac/src/filters/enc_cc.c:509,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/enc_cc.c:510,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/enc_cc.c:512,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/enc_cc.c:517,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/enc_cc.c:520,1
    - Dst: ccenc_flush
      Src: /src/gpac/src/filters/enc_cc.c:521,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/enc_cc.c:522,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/enc_cc.c:523,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/enc_cc.c:527,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/enc_cc.c:528,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/enc_cc.c:529,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/enc_cc.c:530,1
    - Dst: ccenc_flush
      Src: /src/gpac/src/filters/enc_cc.c:531,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/enc_cc.c:532,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/enc_cc.c:534,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/enc_cc.c:535,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/enc_cc.c:538,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/enc_cc.c:540,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_cc.c:543,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/enc_cc.c:545,1
    - Dst: ccenc_flush
      Src: /src/gpac/src/filters/enc_cc.c:550,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/enc_cc.c:553,1
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/src/filters/enc_cc.c:554,1
    - Dst: ccenc_forward_video
      Src: /src/gpac/src/filters/enc_cc.c:555,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/enc_cc.c:555,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 49
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 493
    functionDepth: 12
    functionLinenumber: 493
    functionLinenumberEnd: 559
    functionName: ccenc_process
    functionSourceFile: /src/gpac/src/filters/enc_cc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_connections_pending
    - gf_list_pop_back
    - gf_filter_pid_drop_packet
    - gf_filter_pck_ref
    - gf_list_last
    - gf_filter_pck_forward
    - gf_filter_pck_is_blocking_ref
    - GF_LOG
    - gf_filter_get_udta
    - gf_filter_pid_set_eos
    - ccenc_forward_video
    - gf_list_count
    - gf_list_add
    - gf_filter_pid_is_eos
    - ccenc_flush
    - gf_filter_pid_get_packet
    - ccenc_enqueue_cc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ccenc_process(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/enc_cc.c:563,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/enc_cc.c:565,1
    - Dst: ccenc_enqueue_cc_clear
      Src: /src/gpac/src/filters/enc_cc.c:566,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/enc_cc.c:568,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 561
    functionDepth: 3
    functionLinenumber: 561
    functionLinenumberEnd: 571
    functionName: ccenc_initialize
    functionSourceFile: /src/gpac/src/filters/enc_cc.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ccenc_enqueue_cc_clear
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ccenc_initialize(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/enc_cc.c:575,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/enc_cc.c:577,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_cc.c:578,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/enc_cc.c:578,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/enc_cc.c:582,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/enc_cc.c:583,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/enc_cc.c:584,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/enc_cc.c:587,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/enc_cc.c:589,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_cc.c:590,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/enc_cc.c:590,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/enc_cc.c:594,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/enc_cc.c:595,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/enc_cc.c:597,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/enc_cc.c:599,1
    - Dst: sei_free
      Src: /src/gpac/src/filters/enc_cc.c:601,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/enc_cc.c:602,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 573
    functionDepth: 2
    functionLinenumber: 573
    functionLinenumberEnd: 604
    functionName: ccenc_finalize
    functionSourceFile: /src/gpac/src/filters/enc_cc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - sei_free
    - gf_filter_pck_unref
    - gf_list_count
    - gf_list_enum
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ccenc_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 625
    functionDepth: 0
    functionLinenumber: 625
    functionLinenumberEnd: 626
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/enc_cc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 649
    functionDepth: 0
    functionLinenumber: 649
    functionLinenumberEnd: 652
    functionName: ccenc_register
    functionSourceFile: /src/gpac/src/filters/enc_cc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ccenc_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 654
    functionDepth: 0
    functionLinenumber: 654
    functionLinenumberEnd: 657
    functionName: ccenc_register
    functionSourceFile: /src/gpac/src/filters/enc_cc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ccenc_register(GF_FilterSession *session)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_laser.c:48,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_laser.c:52,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_laser.c:56,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_laser.c:61,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_laser.c:64,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_laser.c:69,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dec_laser.c:75,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_laser.c:79,1
    - Dst: gf_laser_decoder_remove_stream
      Src: /src/gpac/src/filters/dec_laser.c:82,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dec_laser.c:87,1
    - Dst: gf_laser_decoder_remove_stream
      Src: /src/gpac/src/filters/dec_laser.c:88,1
    - Dst: gf_laser_decoder_configure_stream
      Src: /src/gpac/src/filters/dec_laser.c:89,1
    - Dst: gf_filter_pid_is_filter_in_parents
      Src: /src/gpac/src/filters/dec_laser.c:93,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_laser.c:98,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_laser.c:102,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_laser.c:103,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_laser.c:103,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dec_laser.c:104,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 47
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 44
    functionDepth: 2
    functionLinenumber: 44
    functionLinenumberEnd: 109
    functionName: lsrdec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_laser.c
    functionUses: 0
    functionsReached:
    - gf_laser_decoder_configure_stream
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_is_filter_in_parents
    - gf_laser_decoder_remove_stream
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsrdec_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_laser.c:114,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/dec_laser.c:127,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dec_laser.c:129,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dec_laser.c:130,1
    - Dst: gf_laser_decoder_new
      Src: /src/gpac/src/filters/dec_laser.c:137,1
    - Dst: gf_laser_decoder_set_clock
      Src: /src/gpac/src/filters/dec_laser.c:139,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dec_laser.c:140,1
    - Dst: lsrdec_configure_pid
      Src: /src/gpac/src/filters/dec_laser.c:141,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 2
    argNames:
    - filter
    - com
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 111
    functionDepth: 3
    functionLinenumber: 111
    functionLinenumberEnd: 148
    functionName: lsrdec_process_event
    functionSourceFile: /src/gpac/src/filters/dec_laser.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_udta
    - gf_laser_decoder_set_clock
    - lsrdec_configure_pid
    - gf_laser_decoder_new
    - gf_filter_get_ipid
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool lsrdec_process_event(GF_Filter *filter, const GF_FilterEvent *com)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_laser.c:159,1
    - Dst: gf_laser_decode_has_conditionnals
      Src: /src/gpac/src/filters/dec_laser.c:164,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/dec_laser.c:165,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dec_laser.c:165,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_laser.c:167,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/dec_laser.c:175,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dec_laser.c:177,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dec_laser.c:178,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dec_laser.c:180,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_laser.c:184,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_laser.c:186,1
    - Dst: gf_laser_decode_has_conditionnals
      Src: /src/gpac/src/filters/dec_laser.c:188,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/dec_laser.c:189,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dec_laser.c:189,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_laser.c:191,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_laser.c:195,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_laser.c:197,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_laser.c:200,1
    - Dst: gf_timestamp_to_clocktime
      Src: /src/gpac/src/filters/dec_laser.c:201,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_laser.c:201,1
    - Dst: gf_sc_check_sys_frame
      Src: /src/gpac/src/filters/dec_laser.c:203,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/dec_laser.c:206,1
    - Dst: gf_laser_decode_au
      Src: /src/gpac/src/filters/dec_laser.c:207,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/dec_laser.c:208,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_laser.c:210,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_laser.c:212,1
    - Dst: gf_scene_attach_to_compositor
      Src: /src/gpac/src/filters/dec_laser.c:216,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 46
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 150
    functionDepth: 11
    functionLinenumber: 150
    functionLinenumberEnd: 219
    functionName: lsrdec_process
    functionSourceFile: /src/gpac/src/filters/dec_laser.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_ipid
    - gf_sc_check_sys_frame
    - gf_filter_pid_get_packet
    - gf_scene_attach_to_compositor
    - gf_filter_pck_get_cts
    - PROP_BOOL
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_timescale
    - gf_filter_get_ipid_count
    - gf_filter_pid_is_eos
    - gf_sys_clock_high_res
    - gf_filter_pid_set_info
    - gf_laser_decode_has_conditionnals
    - gf_filter_pid_get_property
    - gf_timestamp_to_clocktime
    - gf_laser_decode_au
    - gf_filter_pid_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsrdec_process(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/dec_laser.c:224,1
    - Dst: gf_svg_get_system_paint_server_type
      Src: /src/gpac/src/filters/dec_laser.c:225,1
    - Dst: gf_svg_get_system_paint_server_name
      Src: /src/gpac/src/filters/dec_laser.c:226,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 230
    functionName: lsrdec_initialize
    functionSourceFile: /src/gpac/src/filters/dec_laser.c
    functionUses: 0
    functionsReached:
    - gf_svg_get_system_paint_server_name
    - gf_svg_get_system_paint_server_type
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err lsrdec_initialize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_laser.c:234,1
    - Dst: gf_laser_decoder_del
      Src: /src/gpac/src/filters/dec_laser.c:235,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 232
    functionDepth: 2
    functionLinenumber: 232
    functionLinenumberEnd: 236
    functionName: lsrdec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_laser.c
    functionUses: 0
    functionsReached:
    - gf_laser_decoder_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void lsrdec_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 275
    functionName: lsrdec_register
    functionSourceFile: /src/gpac/src/filters/dec_laser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *lsrdec_register(GF_FilterSession *session)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_av1.c:123,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/reframe_av1.c:128,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/reframe_av1.c:133,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_av1.c:137,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_av1.c:141,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_av1.c:142,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:143,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:145,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_av1.c:145,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_av1.c:153,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 159
    functionName: av1dmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - PROP_BOOL
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av1dmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_av1_cfg_new
      Src: /src/gpac/src/filters/reframe_av1.c:171,1
    - Dst: gf_odf_iamf_cfg_new
      Src: /src/gpac/src/filters/reframe_av1.c:174,1
    - Dst: gf_sei_loader_del
      Src: /src/gpac/src/filters/reframe_av1.c:180,1
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/filters/reframe_av1.c:184,1
    - Dst: gf_media_probe_iamf
      Src: /src/gpac/src/filters/reframe_av1.c:193,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:197,1
    - Dst: gf_media_probe_ivf
      Src: /src/gpac/src/filters/reframe_av1.c:201,1
    - Dst: gf_media_parse_ivf_file_header
      Src: /src/gpac/src/filters/reframe_av1.c:206,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_av1.c:210,1
    - Dst: gf_sei_loader_new
      Src: /src/gpac/src/filters/reframe_av1.c:213,1
    - Dst: gf_sei_init_from_av1
      Src: /src/gpac/src/filters/reframe_av1.c:214,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_av1.c:216,1
    - Dst: gf_odf_vp_cfg_new
      Src: /src/gpac/src/filters/reframe_av1.c:219,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_av1.c:221,1
    - Dst: gf_odf_vp_cfg_new
      Src: /src/gpac/src/filters/reframe_av1.c:223,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_av1.c:225,1
    - Dst: gf_odf_vp_cfg_new
      Src: /src/gpac/src/filters/reframe_av1.c:227,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:228,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/reframe_av1.c:228,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:232,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/reframe_av1.c:232,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:251,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:254,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:256,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:257,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_av1.c:262,1
    - Dst: gf_odf_vp_cfg_new
      Src: /src/gpac/src/filters/reframe_av1.c:269,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_av1.c:283,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_av1.c:285,1
    - Dst: gf_media_aom_probe_annexb
      Src: /src/gpac/src/filters/reframe_av1.c:291,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:292,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:295,1
    - Dst: aom_av1_parse_temporal_unit_from_section5
      Src: /src/gpac/src/filters/reframe_av1.c:296,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_av1.c:297,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:299,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/reframe_av1.c:302,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:307,1
    - Dst: gf_av1_get_obu_name
      Src: /src/gpac/src/filters/reframe_av1.c:307,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/reframe_av1.c:309,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:313,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:316,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:317,1
    - Dst: gf_sei_loader_new
      Src: /src/gpac/src/filters/reframe_av1.c:322,1
    - Dst: gf_sei_init_from_av1
      Src: /src/gpac/src/filters/reframe_av1.c:323,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 153
    argCount: 4
    argNames:
    - filter
    - ctx
    - bs
    - last_obu_end
    argTypes:
    - GF_Filter*
    - GF_AV1DmxCtx*
    - GF_BitStream*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 161
    functionDepth: 7
    functionLinenumber: 161
    functionLinenumberEnd: 325
    functionName: av1dmx_check_format
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_av1_get_obu_name
    - gf_odf_vp_cfg_new
    - gf_media_probe_iamf
    - gf_list_count
    - gf_4cc_to_str
    - gf_sei_init_from_av1
    - gf_sei_loader_new
    - GF_LOG
    - aom_av1_parse_temporal_unit_from_section5
    - gf_odf_iamf_cfg_new
    - gf_bs_get_position
    - gf_odf_vp_cfg_del
    - gf_filter_setup_failure
    - gf_media_parse_ivf_file_header
    - gf_media_probe_ivf
    - gf_media_aom_probe_annexb
    - gf_filter_pid_get_property
    - gf_bs_seek
    - gf_odf_av1_cfg_new
    - gf_av1_reset_state
    - gf_sei_loader_del
    - GF_4CC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av1dmx_check_format(GF_Filter *filter, GF_AV1DmxCtx *ctx, GF_BitStream
      *bs, u32 *last_obu_end)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:331,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:333,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:335,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:337,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:341,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:343,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:345,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 7
    argNames:
    - udta
    - field_name
    - nb_bits
    - field_val
    - idx1
    - idx2
    - idx3
    argTypes:
    - void*
    - char*
    - u32
    - u64
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 328
    functionDepth: 1
    functionLinenumber: 328
    functionLinenumberEnd: 346
    functionName: av1dmx_bs_log
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void av1dmx_bs_log(void *udta, const char *field_name, u32 nb_bits,
      u64 field_val, s32 idx1, s32 idx2, s32 idx3)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_av1.c:360,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_av1.c:363,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_av1.c:364,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/reframe_av1.c:373,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_av1.c:376,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:378,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/reframe_av1.c:388,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/reframe_av1.c:390,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/reframe_av1.c:398,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/reframe_av1.c:404,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/filters/reframe_av1.c:410,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/reframe_av1.c:412,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/reframe_av1.c:413,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:417,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_av1.c:419,1
    - Dst: gf_iamf_init_state
      Src: /src/gpac/src/filters/reframe_av1.c:423,1
    - Dst: gf_odf_iamf_cfg_new
      Src: /src/gpac/src/filters/reframe_av1.c:424,1
    - Dst: gf_av1_init_state
      Src: /src/gpac/src/filters/reframe_av1.c:428,1
    - Dst: gf_odf_av1_cfg_new
      Src: /src/gpac/src/filters/reframe_av1.c:430,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_av1.c:436,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:439,1
    - Dst: gf_iamf_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:446,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:449,1
    - Dst: aom_av1_parse_temporal_unit_from_section5
      Src: /src/gpac/src/filters/reframe_av1.c:455,1
    - Dst: aom_av1_parse_temporal_unit_from_annexb
      Src: /src/gpac/src/filters/reframe_av1.c:458,1
    - Dst: aom_av1_parse_temporal_unit_from_ivf
      Src: /src/gpac/src/filters/reframe_av1.c:462,1
    - Dst: gf_media_parse_ivf_frame_header
      Src: /src/gpac/src/filters/reframe_av1.c:465,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_av1.c:466,1
    - Dst: aom_iamf_parse_temporal_unit
      Src: /src/gpac/src/filters/reframe_av1.c:472,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_av1.c:501,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:511,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_av1.c:512,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/reframe_av1.c:513,1
    - Dst: gf_odf_iamf_cfg_del
      Src: /src/gpac/src/filters/reframe_av1.c:516,1
    - Dst: gf_iamf_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:517,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:518,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filters/reframe_av1.c:521,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:522,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:523,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:533,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_av1.c:533,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:535,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_av1.c:535,1
    CyclomaticComplexity: 61
    EdgeCount: 61
    ICount: 168
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_AV1DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 543
      start: 348
    functionDepth: 7
    functionLinenumber: 348
    functionLinenumberEnd: 543
    functionName: av1dmx_check_dur
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_free
    - aom_av1_parse_temporal_unit_from_annexb
    - aom_av1_parse_temporal_unit_from_ivf
    - gf_odf_iamf_cfg_del
    - GF_SAFEALLOC
    - gf_log_tool_level_on
    - gf_fileio_is_main_thread
    - gf_odf_av1_cfg_del
    - PROP_FRAC64
    - gf_bs_available
    - gf_iamf_reset_state
    - gf_realloc
    - gf_iamf_init_state
    - strncmp
    - PROP_BOOL
    - gf_bs_skip_bytes
    - gf_bs_set_logger
    - GF_LOG
    - aom_av1_parse_temporal_unit_from_section5
    - gf_odf_iamf_cfg_new
    - gf_av1_init_state
    - gf_bs_get_position
    - gf_media_parse_ivf_frame_header
    - gf_bs_from_file
    - gf_filter_pid_set_property
    - gf_fclose
    - gf_filter_pid_get_property
    - gf_bs_seek
    - gf_odf_av1_cfg_new
    - gf_bs_del
    - gf_av1_reset_state
    - aom_iamf_parse_temporal_unit
    - gf_fopen_ex
    - gf_opts_get_bool
    linkageType: ''
    returnType: void
    signature: void av1dmx_check_dur(GF_Filter *filter, GF_AV1DmxCtx *ctx)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_av1.c:551,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:571,1
    - Dst: av1dmx_check_dur
      Src: /src/gpac/src/filters/reframe_av1.c:572,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_av1.c:594,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_av1.c:596,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 51
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 616
      start: 546
    functionDepth: 8
    functionLinenumber: 546
    functionLinenumberEnd: 616
    functionName: av1dmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GF_FEVT_INIT
    - av1dmx_check_dur
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool av1dmx_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_av1.c:620,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_av1.c:621,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_AV1DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 618
    functionDepth: 1
    functionLinenumber: 618
    functionLinenumberEnd: 631
    functionName: av1dmx_update_cts
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE av1dmx_update_cts(GF_AV1DmxCtx *ctx)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_av1.c:639,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_av1.c:640,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_av1.c:649,1
    - Dst: av1dmx_check_dur
      Src: /src/gpac/src/filters/reframe_av1.c:650,1
    - Dst: gf_odf_vp_cfg_write
      Src: /src/gpac/src/filters/reframe_av1.c:657,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/reframe_av1.c:658,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_av1.c:661,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/reframe_av1.c:662,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:663,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:664,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_av1.c:668,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_av1.c:669,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/reframe_av1.c:670,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/reframe_av1.c:671,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/reframe_av1.c:673,1
    - Dst: gf_odf_av1_cfg_write
      Src: /src/gpac/src/filters/reframe_av1.c:676,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:683,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_av1.c:690,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/reframe_av1.c:691,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:692,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:693,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_av1.c:700,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_av1.c:701,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/reframe_av1.c:702,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/reframe_av1.c:704,1
    - Dst: gf_odf_iamf_cfg_write
      Src: /src/gpac/src/filters/reframe_av1.c:707,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/reframe_av1.c:710,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:714,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_av1.c:720,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:723,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:726,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:726,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:728,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/reframe_av1.c:728,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:731,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:731,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:734,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_av1.c:734,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:736,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:736,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:738,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:738,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_av1.c:742,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:743,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/reframe_av1.c:743,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:746,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:746,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:747,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:747,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:749,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:749,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:750,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:750,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:754,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_av1.c:754,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:758,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:761,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:761,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:765,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/reframe_av1.c:765,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:768,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:768,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:771,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:771,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:777,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:777,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:778,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:778,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:779,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:779,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:780,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_av1.c:780,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:784,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/reframe_av1.c:784,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/reframe_av1.c:785,1
    - Dst: gf_av1_format_mdcv_to_mpeg
      Src: /src/gpac/src/filters/reframe_av1.c:790,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:791,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/reframe_av1.c:791,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/reframe_av1.c:792,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:801,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:801,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:802,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:802,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:803,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:803,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:804,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_av1.c:804,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 133
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_AV1DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 807
      start: 633
    functionDepth: 8
    functionLinenumber: 633
    functionLinenumberEnd: 807
    functionName: av1dmx_check_pid
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - PROP_DATA_NO_COPY
    - PROP_FRAC64
    - PROP_DATA
    - gf_filter_pid_new
    - PROP_LONGSINT
    - gf_list_get
    - gf_list_pop_back
    - PROP_FRAC
    - gf_odf_vp_cfg_write
    - gf_list_add
    - PROP_BOOL
    - gf_odf_av1_cfg_write
    - gf_crc_32
    - gf_filter_pid_copy_properties
    - gf_av1_format_mdcv_to_mpeg
    - gf_odf_iamf_cfg_write
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_get_property
    - av1dmx_check_dur
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void av1dmx_check_pid(GF_Filter *filter, GF_AV1DmxCtx *ctx)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:819,1
    - Dst: gf_media_parse_ivf_frame_header
      Src: /src/gpac/src/filters/reframe_av1.c:820,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:823,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_av1.c:824,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:825,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:833,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_av1.c:842,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_av1.c:844,1
    - Dst: av1dmx_check_pid
      Src: /src/gpac/src/filters/reframe_av1.c:848,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:855,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_av1.c:860,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:862,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_av1.c:865,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_av1.c:868,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_av1.c:870,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:873,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_av1.c:875,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_av1.c:876,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_av1.c:878,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_av1.c:880,1
    - Dst: av1dmx_update_cts
      Src: /src/gpac/src/filters/reframe_av1.c:882,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 56
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_AV1DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 884
      start: 809
    functionDepth: 9
    functionLinenumber: 809
    functionLinenumberEnd: 884
    functionName: av1dmx_parse_ivf
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_filter_pck_new_alloc
    - gf_bs_seek
    - gf_filter_pck_set_cts
    - GF_LOG
    - gf_filter_pck_merge_properties
    - gf_bs_get_position
    - av1dmx_update_cts
    - gf_media_parse_ivf_frame_header
    - gf_filter_pck_get_cts
    - av1dmx_check_pid
    - gf_bs_available
    - gf_filter_pck_set_sap
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av1dmx_parse_ivf(GF_Filter *filter, GF_AV1DmxCtx *ctx)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:898,1
    - Dst: gf_media_parse_ivf_frame_header
      Src: /src/gpac/src/filters/reframe_av1.c:899,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:902,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:906,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_av1.c:907,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:908,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:917,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_av1.c:926,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_av1.c:927,1
    - Dst: gf_vp9_parse_superframe
      Src: /src/gpac/src/filters/reframe_av1.c:932,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:934,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:939,1
    - Dst: gf_vp9_parse_sample
      Src: /src/gpac/src/filters/reframe_av1.c:940,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:941,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:944,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:946,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:950,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:951,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:952,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:954,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:956,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:958,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:960,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:964,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/reframe_av1.c:965,1
    - Dst: av1dmx_check_pid
      Src: /src/gpac/src/filters/reframe_av1.c:968,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:975,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_av1.c:979,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:981,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_av1.c:984,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_av1.c:987,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_av1.c:989,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_av1.c:993,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/reframe_av1.c:1006,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:1009,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_av1.c:1010,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_av1.c:1011,1
    - Dst: av1dmx_update_cts
      Src: /src/gpac/src/filters/reframe_av1.c:1013,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 95
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_AV1DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1015
      start: 886
    functionDepth: 9
    functionLinenumber: 886
    functionLinenumberEnd: 1015
    functionName: av1dmx_parse_vp9
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_filter_pck_new_alloc
    - gf_bs_seek
    - gf_filter_pck_set_cts
    - GF_LOG
    - gf_vp9_parse_sample
    - gf_filter_pck_merge_properties
    - gf_bs_get_position
    - gf_vp9_parse_superframe
    - gf_media_parse_ivf_frame_header
    - gf_fatal_assert
    - gf_filter_pck_get_cts
    - av1dmx_check_pid
    - gf_bs_available
    - gf_filter_pck_set_sap
    - gf_filter_pck_set_dependency_flags
    - av1dmx_update_cts
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av1dmx_parse_vp9(GF_Filter *filter, GF_AV1DmxCtx *ctx)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:1028,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/reframe_av1.c:1031,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/filters/reframe_av1.c:1032,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/reframe_av1.c:1033,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:1038,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:1040,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_av1.c:1045,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_av1.c:1049,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_av1.c:1051,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_av1.c:1052,1
    - Dst: gf_filter_pck_set_switch_frame
      Src: /src/gpac/src/filters/reframe_av1.c:1053,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_av1.c:1056,1
    - Dst: gf_filter_pck_set_roll_info
      Src: /src/gpac/src/filters/reframe_av1.c:1058,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_av1.c:1059,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_av1.c:1063,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_av1.c:1066,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/reframe_av1.c:1079,1
    - Dst: gf_sei_load_from_state
      Src: /src/gpac/src/filters/reframe_av1.c:1083,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_av1.c:1085,1
    - Dst: av1dmx_update_cts
      Src: /src/gpac/src/filters/reframe_av1.c:1087,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:1088,1
    - Dst: gf_iamf_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:1089,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 55
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_AV1DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1093
      start: 1017
    functionDepth: 8
    functionLinenumber: 1017
    functionLinenumberEnd: 1093
    functionName: av1dmx_parse_flush_sample
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sei_load_from_state
    - gf_filter_pck_new_alloc
    - gf_filter_pck_set_switch_frame
    - gf_filter_pck_set_cts
    - GF_LOG
    - memcpy
    - gf_filter_pck_merge_properties
    - gf_filter_pck_set_duration
    - gf_bs_get_size
    - gf_av1_reset_state
    - gf_filter_pck_set_roll_info
    - av1dmx_update_cts
    - gf_filter_pck_set_sap
    - gf_filter_pck_set_dependency_flags
    - gf_bs_get_content_no_truncate
    - gf_iamf_reset_state
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av1dmx_parse_flush_sample(GF_Filter *filter, GF_AV1DmxCtx *ctx)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:1104,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:1108,1
    - Dst: aom_av1_parse_temporal_unit_from_section5
      Src: /src/gpac/src/filters/reframe_av1.c:1111,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:1116,1
    - Dst: aom_av1_parse_temporal_unit_from_annexb
      Src: /src/gpac/src/filters/reframe_av1.c:1119,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:1121,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:1122,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:1128,1
    - Dst: aom_av1_parse_temporal_unit_from_ivf
      Src: /src/gpac/src/filters/reframe_av1.c:1131,1
    - Dst: av1dmx_check_pid
      Src: /src/gpac/src/filters/reframe_av1.c:1139,1
    - Dst: av1dmx_parse_flush_sample
      Src: /src/gpac/src/filters/reframe_av1.c:1147,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:1155,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:1157,1
    - Dst: av1dmx_parse_flush_sample
      Src: /src/gpac/src/filters/reframe_av1.c:1167,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 56
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_AV1DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1170
      start: 1094
    functionDepth: 9
    functionLinenumber: 1094
    functionLinenumberEnd: 1170
    functionName: av1dmx_parse_av1
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - aom_av1_parse_temporal_unit_from_annexb
    - aom_av1_parse_temporal_unit_from_ivf
    - gf_bs_seek
    - aom_av1_parse_temporal_unit_from_section5
    - GF_LOG
    - gf_bs_get_position
    - gf_av1_reset_state
    - av1dmx_parse_flush_sample
    - av1dmx_check_pid
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av1dmx_parse_av1(GF_Filter *filter, GF_AV1DmxCtx *ctx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:1177,1
    - Dst: aom_iamf_parse_temporal_unit
      Src: /src/gpac/src/filters/reframe_av1.c:1181,1
    - Dst: gf_iamf_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:1183,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:1184,1
    - Dst: av1dmx_check_pid
      Src: /src/gpac/src/filters/reframe_av1.c:1189,1
    - Dst: av1dmx_parse_flush_sample
      Src: /src/gpac/src/filters/reframe_av1.c:1193,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:1200,1
    - Dst: gf_iamf_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:1202,1
    - Dst: av1dmx_parse_flush_sample
      Src: /src/gpac/src/filters/reframe_av1.c:1206,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_AV1DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1208
      start: 1172
    functionDepth: 9
    functionLinenumber: 1172
    functionLinenumberEnd: 1208
    functionName: av1dmx_parse_iamf
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_bs_seek
    - GF_LOG
    - gf_bs_get_position
    - aom_iamf_parse_temporal_unit
    - av1dmx_parse_flush_sample
    - av1dmx_check_pid
    - gf_iamf_reset_state
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av1dmx_parse_iamf(GF_Filter *filter, GF_AV1DmxCtx *ctx)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_av1.c:1215,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_av1.c:1216,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/reframe_av1.c:1219,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/reframe_av1.c:1220,1
    - Dst: av1dmx_check_format
      Src: /src/gpac/src/filters/reframe_av1.c:1224,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_av1.c:1228,1
    - Dst: av1dmx_parse_iamf
      Src: /src/gpac/src/filters/reframe_av1.c:1231,1
    - Dst: av1dmx_parse_vp9
      Src: /src/gpac/src/filters/reframe_av1.c:1233,1
    - Dst: av1dmx_parse_av1
      Src: /src/gpac/src/filters/reframe_av1.c:1235,1
    - Dst: av1dmx_parse_ivf
      Src: /src/gpac/src/filters/reframe_av1.c:1237,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:1241,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/reframe_av1.c:1251,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_av1.c:1252,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 41
    argCount: 5
    argNames:
    - filter
    - ctx
    - data
    - data_size
    - is_copy
    argTypes:
    - GF_Filter*
    - GF_AV1DmxCtx*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1258
      start: 1210
    functionDepth: 10
    functionLinenumber: 1210
    functionLinenumberEnd: 1258
    functionName: av1dmx_process_buffer
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - memmove
    - gf_bs_set_logger
    - gf_bs_new
    - av1dmx_parse_av1
    - gf_log_tool_level_on
    - av1dmx_check_format
    - av1dmx_parse_ivf
    - gf_bs_get_position
    - gf_fatal_assert
    - av1dmx_parse_iamf
    - av1dmx_parse_vp9
    - gf_bs_available
    - gf_bs_reassign_buffer
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av1dmx_process_buffer(GF_Filter *filter, GF_AV1DmxCtx *ctx,
      const char *data, u32 data_size, Bool is_copy)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_av1.c:1263,1
    - Dst: av1dmx_check_dur
      Src: /src/gpac/src/filters/reframe_av1.c:1272,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_av1.c:1277,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_av1.c:1279,1
    - Dst: av1dmx_process_buffer
      Src: /src/gpac/src/filters/reframe_av1.c:1283,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:1289,1
    - Dst: av1dmx_parse_flush_sample
      Src: /src/gpac/src/filters/reframe_av1.c:1290,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_av1.c:1294,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_av1.c:1295,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/reframe_av1.c:1303,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_av1.c:1307,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/reframe_av1.c:1315,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_av1.c:1320,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_av1.c:1322,1
    - Dst: av1dmx_process_buffer
      Src: /src/gpac/src/filters/reframe_av1.c:1327,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_av1.c:1330,1
    - Dst: av1dmx_process_buffer
      Src: /src/gpac/src/filters/reframe_av1.c:1335,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_av1.c:1342,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_av1.c:1346,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_av1.c:1348,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_av1.c:1354,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_av1.c:1356,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_av1.c:1358,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_av1.c:1361,1
    - Dst: av1dmx_process_buffer
      Src: /src/gpac/src/filters/reframe_av1.c:1363,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_av1.c:1365,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_av1.c:1372,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_av1.c:1374,1
    - Dst: av1dmx_process_buffer
      Src: /src/gpac/src/filters/reframe_av1.c:1376,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_av1.c:1377,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 91
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1379
      start: 1260
    functionDepth: 11
    functionLinenumber: 1260
    functionLinenumberEnd: 1379
    functionName: av1dmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - av1dmx_process_buffer
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_framing
    - gf_filter_pck_get_data
    - memcpy
    - gf_filter_pid_would_block
    - gf_filter_pid_set_eos
    - gf_realloc
    - gf_bs_get_position
    - gf_filter_pck_unref
    - av1dmx_parse_flush_sample
    - gf_filter_pck_ref_props
    - av1dmx_check_dur
    - gf_filter_pck_get_cts
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av1dmx_process(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_av1.c:1383,1
    - Dst: gf_av1_init_state
      Src: /src/gpac/src/filters/reframe_av1.c:1384,1
    - Dst: gf_iamf_init_state
      Src: /src/gpac/src/filters/reframe_av1.c:1387,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1390
      start: 1381
    functionDepth: 1
    functionLinenumber: 1381
    functionLinenumberEnd: 1390
    functionName: av1dmx_initialize
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_iamf_init_state
    - gf_av1_init_state
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av1dmx_initialize(GF_Filter *filter)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_av1.c:1394,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_av1.c:1395,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:1396,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:1398,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filters/reframe_av1.c:1399,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_av1.c:1400,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:1401,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:1402,1
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/filters/reframe_av1.c:1404,1
    - Dst: gf_iamf_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:1406,1
    - Dst: gf_odf_iamf_cfg_del
      Src: /src/gpac/src/filters/reframe_av1.c:1407,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_av1.c:1408,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:1409,1
    - Dst: gf_sei_loader_del
      Src: /src/gpac/src/filters/reframe_av1.c:1411,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 25
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1412
      start: 1392
    functionDepth: 4
    functionLinenumber: 1392
    functionLinenumberEnd: 1412
    functionName: av1dmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_iamf_cfg_del
    - gf_bs_del
    - gf_odf_vp_cfg_del
    - gf_av1_reset_state
    - gf_sei_loader_del
    - gf_odf_av1_cfg_del
    - gf_iamf_reset_state
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void av1dmx_finalize(GF_Filter *filter)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_av1.c:1416,1
    - Dst: gf_log_get_tool_level
      Src: /src/gpac/src/filters/reframe_av1.c:1420,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/filters/reframe_av1.c:1421,1
    - Dst: gf_media_probe_iamf
      Src: /src/gpac/src/filters/reframe_av1.c:1423,1
    - Dst: gf_media_probe_ivf
      Src: /src/gpac/src/filters/reframe_av1.c:1427,1
    - Dst: gf_media_aom_probe_annexb
      Src: /src/gpac/src/filters/reframe_av1.c:1431,1
    - Dst: gf_media_aom_probe_annexb
      Src: /src/gpac/src/filters/reframe_av1.c:1435,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/reframe_av1.c:1443,1
    - Dst: gf_av1_init_state
      Src: /src/gpac/src/filters/reframe_av1.c:1446,1
    - Dst: gf_odf_av1_cfg_new
      Src: /src/gpac/src/filters/reframe_av1.c:1447,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_av1.c:1448,1
    - Dst: aom_av1_parse_temporal_unit_from_section5
      Src: /src/gpac/src/filters/reframe_av1.c:1449,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_av1.c:1451,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_av1.c:1451,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_av1.c:1452,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_av1.c:1469,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:1477,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filters/reframe_av1.c:1484,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:1485,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:1486,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/filters/reframe_av1.c:1490,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_av1.c:1492,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 70
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1495
      start: 1414
    functionDepth: 5
    functionLinenumber: 1414
    functionLinenumberEnd: 1495
    functionName: av1dmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - gf_media_probe_iamf
    - GF_SAFEALLOC
    - gf_odf_av1_cfg_new
    - aom_av1_parse_temporal_unit_from_section5
    - gf_av1_init_state
    - gf_list_count
    - gf_av1_reset_state
    - gf_bs_del
    - gf_odf_av1_cfg_del
    - gf_log_get_tool_level
    - gf_bs_available
    - gf_log_set_tool_level
    - gf_media_probe_ivf
    - gf_media_aom_probe_annexb
    linkageType: ''
    returnType: char
    signature: char * av1dmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1529
      start: 1528
    functionDepth: 0
    functionLinenumber: 1528
    functionLinenumberEnd: 1529
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1569
      start: 1566
    functionDepth: 0
    functionLinenumber: 1566
    functionLinenumberEnd: 1569
    functionName: rfav1_register
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfav1_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1574
      start: 1571
    functionDepth: 0
    functionLinenumber: 1571
    functionLinenumberEnd: 1574
    functionName: rfav1_register
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfav1_register(GF_FilterSession *session)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_tx3g.c:67,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_tx3g.c:72,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/write_tx3g.c:77,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_tx3g.c:80,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_tx3g.c:85,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/write_tx3g.c:87,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/write_tx3g.c:94,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/write_tx3g.c:96,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_tx3g.c:104,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_tx3g.c:104,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_tx3g.c:105,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_tx3g.c:105,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_tx3g.c:107,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/write_tx3g.c:107,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_tx3g.c:108,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/write_tx3g.c:111,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_tx3g.c:111,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_tx3g.c:117,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/write_tx3g.c:120,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/filters/write_tx3g.c:121,1
    - Dst: gf_odf_get_text_config
      Src: /src/gpac/src/filters/write_tx3g.c:123,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/write_tx3g.c:125,1
    - Dst: gf_odf_tx3g_read
      Src: /src/gpac/src/filters/write_tx3g.c:131,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/write_tx3g.c:133,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/write_tx3g.c:140,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_tx3g.c:145,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/write_tx3g.c:145,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_tx3g.c:148,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/write_tx3g.c:151,1
    - Dst: tx3gmx_write_config
      Src: /src/gpac/src/filters/write_tx3g.c:154,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_tx3g.c:157,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_tx3g.c:159,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 80
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 63
    functionDepth: 5
    functionLinenumber: 63
    functionLinenumberEnd: 162
    functionName: tx3gmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - PROP_STRING
    - gf_filter_pid_set_property_str
    - gf_filter_pid_check_caps
    - tx3gmx_write_config
    - gf_filter_pid_new
    - gf_odf_tx3g_read
    - gf_odf_desc_new
    - gf_list_add
    - gf_odf_get_text_config
    - PROP_BOOL
    - gf_crc_32
    - gf_filter_get_udta
    - gf_filter_pid_copy_properties
    - GF_LOG
    - gf_filter_pid_set_property
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - gf_codecid_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tx3gmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/write_tx3g.c:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 3
    argNames:
    - ent
    - samp_ent
    - font_ent
    argTypes:
    - GF_TextSampleDescriptor*
    - GF_Tx3gSampleEntryBox*
    - GF_FontTableBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 179
    functionName: tx3gmx_get_stsd
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: void tx3gmx_get_stsd(GF_TextSampleDescriptor *ent, GF_Tx3gSampleEntryBox
      *samp_ent, GF_FontTableBox *font_ent)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_temp
      Src: /src/gpac/src/filters/write_tx3g.c:183,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/write_tx3g.c:187,1
    - Dst: tx3gmx_get_stsd
      Src: /src/gpac/src/filters/write_tx3g.c:189,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_tx3g.c:191,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_tx3g.c:193,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:197,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:198,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:199,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:201,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:203,1
    - Dst: dump_ttxt_header
      Src: /src/gpac/src/filters/write_tx3g.c:206,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:208,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/write_tx3g.c:210,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/write_tx3g.c:211,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/write_tx3g.c:213,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/write_tx3g.c:214,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_tx3g.c:215,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/write_tx3g.c:215,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/write_tx3g.c:218,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - TX3GMxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 181
    functionDepth: 6
    functionLinenumber: 181
    functionLinenumberEnd: 219
    functionName: tx3gmx_write_config
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 1
    functionsReached:
    - gf_fclose
    - gf_list_get
    - gf_filter_pid_get_property
    - gf_fseek
    - gf_fprintf
    - dump_ttxt_header
    - gf_fread
    - PROP_DATA_NO_COPY
    - tx3gmx_get_stsd
    - gf_file_temp
    - gf_filter_pid_set_property
    - gf_malloc
    - gf_ftell
    linkageType: ''
    returnType: void
    signature: void tx3gmx_write_config(TX3GMxCtx *ctx)
  - BBCount: 50
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:231,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_tx3g.c:236,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:238,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:240,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:242,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:246,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:249,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:252,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:256,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:258,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:260,1
    - Dst: tx3g_format_time
      Src: /src/gpac/src/filters/write_tx3g.c:262,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:263,1
    - Dst: tx3g_format_time
      Src: /src/gpac/src/filters/write_tx3g.c:264,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:265,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:268,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/write_tx3g.c:273,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_tx3g.c:279,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/filters/write_tx3g.c:284,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:307,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:308,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:309,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:310,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:312,1
    - Dst: gf_color_get_name
      Src: /src/gpac/src/filters/write_tx3g.c:312,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:316,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:324,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:375,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:380,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:381,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:382,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:383,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:384,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:386,1
    - Dst: gf_color_get_name
      Src: /src/gpac/src/filters/write_tx3g.c:386,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:388,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:395,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/filters/write_tx3g.c:403,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:406,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:412,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:414,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_tx3g.c:415,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:419,1
    CyclomaticComplexity: 78
    EdgeCount: 78
    ICount: 166
    argCount: 6
    argNames:
    - ctx
    - dump
    - txt
    - txtd
    - start_ts
    - end_ts
    argTypes:
    - TX3GMxCtx*
    - FILE*
    - GF_TextSample*
    - GF_Tx3gSampleEntryBox*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 226
    functionDepth: 3
    functionLinenumber: 226
    functionLinenumberEnd: 421
    functionName: dump_ttxt_sample_ttml
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_pid_get_property
    - gf_utf8_wcstombs
    - gf_fprintf
    - memcpy
    - gf_utf8_mbstowcs
    - tx3g_format_time
    - gf_color_get_name
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dump_ttxt_sample_ttml(TX3GMxCtx *ctx, FILE *dump, GF_TextSample
      *txt, GF_Tx3gSampleEntryBox *txtd, u64 start_ts, u64 end_ts)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_tx3g.c:425,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/write_tx3g.c:433,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/write_tx3g.c:435,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/write_tx3g.c:436,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/write_tx3g.c:442,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_tx3g.c:444,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_tx3g.c:449,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/write_tx3g.c:453,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_tx3g.c:456,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/write_tx3g.c:457,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_tx3g.c:465,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_tx3g.c:468,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/write_tx3g.c:472,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/write_tx3g.c:473,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_tx3g.c:475,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/write_tx3g.c:477,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/write_tx3g.c:483,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/write_tx3g.c:484,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/write_tx3g.c:485,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/write_tx3g.c:486,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/write_tx3g.c:492,1
    - Dst: gf_isom_parse_text_sample
      Src: /src/gpac/src/filters/write_tx3g.c:501,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/filters/write_tx3g.c:505,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/write_tx3g.c:510,1
    - Dst: tx3gmx_get_stsd
      Src: /src/gpac/src/filters/write_tx3g.c:515,1
    - Dst: dump_ttxt_sample_srt
      Src: /src/gpac/src/filters/write_tx3g.c:521,1
    - Dst: dump_ttxt_sample_ttml
      Src: /src/gpac/src/filters/write_tx3g.c:523,1
    - Dst: dump_ttxt_sample
      Src: /src/gpac/src/filters/write_tx3g.c:527,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/write_tx3g.c:527,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/filters/write_tx3g.c:530,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/write_tx3g.c:541,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/write_tx3g.c:542,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_tx3g.c:543,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/write_tx3g.c:545,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/write_tx3g.c:546,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_tx3g.c:547,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/write_tx3g.c:548,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_tx3g.c:549,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/write_tx3g.c:550,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/write_tx3g.c:551,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/write_tx3g.c:552,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/write_tx3g.c:554,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/write_tx3g.c:554,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_tx3g.c:557,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/write_tx3g.c:559,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_tx3g.c:562,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/write_tx3g.c:563,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/filters/write_tx3g.c:564,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_tx3g.c:567,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 106
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 423
    functionDepth: 7
    functionLinenumber: 423
    functionLinenumberEnd: 570
    functionName: tx3gmx_process
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached:
    - gf_set_progress
    - dump_ttxt_sample
    - gf_bs_read_u16
    - gf_bs_available
    - gf_filter_pid_get_packet
    - gf_list_get
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_set_property
    - gf_fseek
    - gf_filter_pck_get_cts
    - gf_isom_parse_text_sample
    - gf_file_temp
    - PROP_BOOL
    - gf_filter_pck_get_duration
    - gf_filter_get_udta
    - gf_filter_pck_get_property
    - gf_ftell
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - dump_ttxt_sample_ttml
    - gf_fread
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_timescale
    - gf_filter_pck_set_sap
    - gf_bs_read_u8
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - gf_timestamp_rescale
    - gf_fclose
    - gf_filter_pid_get_property
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_filter_pck_send
    - gf_filter_pck_set_framing
    - gf_isom_delete_text_sample
    - gf_bs_read_int
    - tx3gmx_get_stsd
    - dump_ttxt_sample_srt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tx3gmx_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_tx3g.c:574,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_tx3g.c:575,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 572
    functionDepth: 1
    functionLinenumber: 572
    functionLinenumberEnd: 577
    functionName: tx3gmx_initialize
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tx3gmx_initialize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_tx3g.c:581,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/write_tx3g.c:582,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/write_tx3g.c:583,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 579
    functionDepth: 3
    functionLinenumber: 579
    functionLinenumberEnd: 584
    functionName: tx3gmx_finalize
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - gf_bs_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void tx3gmx_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 600
      start: 599
    functionDepth: 0
    functionLinenumber: 599
    functionLinenumberEnd: 600
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 623
      start: 620
    functionDepth: 0
    functionLinenumber: 620
    functionLinenumberEnd: 623
    functionName: ufttxt_register
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ufttxt_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_tx3g.c:639,1
    - Dst: tx3gmx_initialize
      Src: /src/gpac/src/filters/write_tx3g.c:640,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 637
    functionDepth: 2
    functionLinenumber: 637
    functionLinenumberEnd: 643
    functionName: tx3g2srt_initialize
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached:
    - tx3gmx_initialize
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tx3g2srt_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 662
      start: 659
    functionDepth: 0
    functionLinenumber: 659
    functionLinenumberEnd: 662
    functionName: tx3g2srt_register
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *tx3g2srt_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_tx3g.c:679,1
    - Dst: tx3gmx_initialize
      Src: /src/gpac/src/filters/write_tx3g.c:680,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 683
      start: 677
    functionDepth: 2
    functionLinenumber: 677
    functionLinenumberEnd: 683
    functionName: tx3g2vtt_initialize
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached:
    - tx3gmx_initialize
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tx3g2vtt_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 702
      start: 699
    functionDepth: 0
    functionLinenumber: 699
    functionLinenumberEnd: 702
    functionName: tx3g2vtt_register
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *tx3g2vtt_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_tx3g.c:718,1
    - Dst: tx3gmx_initialize
      Src: /src/gpac/src/filters/write_tx3g.c:719,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 716
    functionDepth: 2
    functionLinenumber: 716
    functionLinenumberEnd: 722
    functionName: tx3g2ttml_initialize
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached:
    - tx3gmx_initialize
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tx3g2ttml_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 744
      start: 741
    functionDepth: 0
    functionLinenumber: 741
    functionLinenumberEnd: 744
    functionName: tx3g2ttml_register
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *tx3g2ttml_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 747
    functionDepth: 0
    functionLinenumber: 747
    functionLinenumberEnd: 750
    functionName: ufttxt_register
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ufttxt_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 751
    functionDepth: 0
    functionLinenumber: 751
    functionLinenumberEnd: 754
    functionName: tx3g2srt_register
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *tx3g2srt_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 755
    functionDepth: 0
    functionLinenumber: 755
    functionLinenumberEnd: 758
    functionName: tx3g2vtt_register
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *tx3g2vtt_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 762
      start: 759
    functionDepth: 0
    functionLinenumber: 759
    functionLinenumberEnd: 762
    functionName: tx3g2ttml_register
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *tx3g2ttml_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 43
    functionName: example_filter_finalize
    functionSourceFile: /src/gpac/src/filters/base_filter_example.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void example_filter_finalize(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/base_filter_example.c:51,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/base_filter_example.c:53,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/base_filter_example.c:55,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/base_filter_example.c:58,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/base_filter_example.c:60,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/base_filter_example.c:66,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/base_filter_example.c:67,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/base_filter_example.c:69,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 72
    functionName: example_filter_process
    functionSourceFile: /src/gpac/src/filters/base_filter_example.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pid_drop_packet
    - memcpy
    - gf_filter_pck_get_data
    - gf_filter_pck_merge_properties
    - gf_filter_pck_send
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err example_filter_process(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/base_filter_example.c:78,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/base_filter_example.c:90,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/base_filter_example.c:90,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/base_filter_example.c:91,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/base_filter_example.c:98,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/base_filter_example.c:99,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/base_filter_example.c:102,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/base_filter_example.c:102,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 108
    functionName: example_filter_config_input
    functionSourceFile: /src/gpac/src/filters/base_filter_example.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - strcmp
    - GF_4CC
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err example_filter_config_input(GF_Filter *filter, GF_FilterPid
      *pid, Bool is_remove)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - filter
    - arg_name
    - arg_val
    argTypes:
    - GF_Filter*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: example_filter_update_arg
    functionSourceFile: /src/gpac/src/filters/base_filter_example.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err example_filter_update_arg(GF_Filter *filter, const char *arg_name,
      const GF_PropertyValue *arg_val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/base_filter_example.c:117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 125
    functionName: example_filter_initialize
    functionSourceFile: /src/gpac/src/filters/base_filter_example.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err example_filter_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 128
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/base_filter_example.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - session
    - load_meta_filters
    argTypes:
    - GF_FilterSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 165
    functionName: ex_filter_register
    functionSourceFile: /src/gpac/src/filters/base_filter_example.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ex_filter_register(GF_FilterSession *session, Bool
      load_meta_filters)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_ac4.c:60,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/rewrite_ac4.c:65,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/rewrite_ac4.c:70,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_ac4.c:73,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_ac4.c:76,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_ac4.c:79,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/rewrite_ac4.c:87,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_ac4.c:96,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/rewrite_ac4.c:101,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/rewrite_ac4.c:104,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/rewrite_ac4.c:105,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/rewrite_ac4.c:106,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/rewrite_ac4.c:106,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/rewrite_ac4.c:107,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 47
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 109
    functionName: ac4mx_configure_pid
    functionSourceFile: /src/gpac/src/filters/rewrite_ac4.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_set_property
    - gf_filter_pid_check_caps
    - PROP_BOOL
    - gf_filter_pid_new
    - gf_crc_32
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ac4mx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_ac4.c:115,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/rewrite_ac4.c:120,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/rewrite_ac4.c:122,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/rewrite_ac4.c:123,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/rewrite_ac4.c:129,1
    - Dst: gf_filter_pck_has_properties
      Src: /src/gpac/src/filters/rewrite_ac4.c:133,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/rewrite_ac4.c:134,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewrite_ac4.c:136,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/rewrite_ac4.c:145,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/rewrite_ac4.c:148,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/rewrite_ac4.c:151,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/rewrite_ac4.c:152,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/rewrite_ac4.c:153,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/rewrite_ac4.c:154,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_ac4.c:156,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/rewrite_ac4.c:159,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/rewrite_ac4.c:161,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/rewrite_ac4.c:162,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/rewrite_ac4.c:164,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/rewrite_ac4.c:166,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewrite_ac4.c:167,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 34
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 113
    functionDepth: 5
    functionLinenumber: 113
    functionLinenumberEnd: 169
    functionName: ac4mx_process
    functionSourceFile: /src/gpac/src/filters/rewrite_ac4.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_byte_offset
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_filter_pck_forward
    - gf_filter_pck_get_data
    - gf_bs_write_int
    - memcpy
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_filter_pck_send
    - gf_filter_pck_set_framing
    - gf_filter_pck_has_properties
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_bs_write_u8
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ac4mx_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_ac4.c:173,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/rewrite_ac4.c:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 176
    functionName: ac4mx_initialize
    functionSourceFile: /src/gpac/src/filters/rewrite_ac4.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ac4mx_initialize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_ac4.c:180,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/rewrite_ac4.c:181,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 178
    functionDepth: 3
    functionLinenumber: 178
    functionLinenumberEnd: 182
    functionName: ac4mx_finalize
    functionSourceFile: /src/gpac/src/filters/rewrite_ac4.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ac4mx_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 193
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/rewrite_ac4.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 218
    functionName: ufac4_register
    functionSourceFile: /src/gpac/src/filters/rewrite_ac4.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ufac4_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 223
    functionName: ufac4_register
    functionSourceFile: /src/gpac/src/filters/rewrite_ac4.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ufac4_register(GF_FilterSession *session)
  - BBCount: 53
    BranchProfiles: []
    Callsites:
    - Dst: AVI_frame_rate
      Src: /src/gpac/src/filters/dmx_avi.c:82,1
    - Dst: gf_media_get_video_timing
      Src: /src/gpac/src/filters/dmx_avi.c:83,1
    - Dst: AVI_video_frames
      Src: /src/gpac/src/filters/dmx_avi.c:88,1
    - Dst: AVI_video_compressor
      Src: /src/gpac/src/filters/dmx_avi.c:91,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_avi.c:93,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_avi.c:96,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_avi.c:96,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_avi.c:97,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_avi.c:98,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_avi.c:99,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_avi.c:100,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_avi.c:101,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_avi.c:102,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_avi.c:103,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_avi.c:104,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_avi.c:105,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_avi.c:106,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_avi.c:107,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_avi.c:108,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_avi.c:111,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_avi.c:112,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_avi.c:115,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_avi.c:118,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_avi.c:118,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_avi.c:126,1
    - Dst: gf_4cc_parse
      Src: /src/gpac/src/filters/dmx_avi.c:127,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_avi.c:135,1
    - Dst: AVI_video_frames
      Src: /src/gpac/src/filters/dmx_avi.c:137,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:142,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:142,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:143,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:143,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:144,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:144,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:146,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:146,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:147,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:147,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:148,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/dmx_avi.c:148,1
    - Dst: AVI_video_width
      Src: /src/gpac/src/filters/dmx_avi.c:149,1
    - Dst: AVI_video_height
      Src: /src/gpac/src/filters/dmx_avi.c:150,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:151,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:151,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:152,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:152,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:153,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/dmx_avi.c:153,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:155,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:155,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/dmx_avi.c:159,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:160,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:160,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:161,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:161,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:163,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_avi.c:163,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_avi.c:164,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_avi.c:164,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:166,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/dmx_avi.c:166,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:169,1
    - Dst: AVI_audio_tracks
      Src: /src/gpac/src/filters/dmx_avi.c:173,1
    - Dst: AVI_set_audio_track
      Src: /src/gpac/src/filters/dmx_avi.c:176,1
    - Dst: AVI_audio_format
      Src: /src/gpac/src/filters/dmx_avi.c:179,1
    - Dst: AVI_audio_bits
      Src: /src/gpac/src/filters/dmx_avi.c:180,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_avi.c:183,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_avi.c:199,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_avi.c:258,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_avi.c:264,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_avi.c:266,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_avi.c:271,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_avi.c:273,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_avi.c:274,1
    - Dst: AVI_set_audio_track
      Src: /src/gpac/src/filters/dmx_avi.c:284,1
    - Dst: AVI_read_audio
      Src: /src/gpac/src/filters/dmx_avi.c:285,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_avi.c:287,1
    - Dst: gf_mp3_object_type_indication
      Src: /src/gpac/src/filters/dmx_avi.c:288,1
    - Dst: AVI_set_audio_position
      Src: /src/gpac/src/filters/dmx_avi.c:291,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:295,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:295,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:296,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:296,1
    - Dst: AVI_audio_rate
      Src: /src/gpac/src/filters/dmx_avi.c:297,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:298,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:298,1
    - Dst: AVI_audio_channels
      Src: /src/gpac/src/filters/dmx_avi.c:299,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:300,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:300,1
    - Dst: AVI_audio_mp3rate
      Src: /src/gpac/src/filters/dmx_avi.c:301,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:304,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:304,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:305,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:305,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:306,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:306,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:307,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/dmx_avi.c:307,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:309,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:309,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:312,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_avi.c:312,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:313,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:313,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:316,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:316,1
    - Dst: AVI_audio_bits
      Src: /src/gpac/src/filters/dmx_avi.c:318,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:319,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_avi.c:319,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_avi.c:326,1
    - Dst: gf_m4a_get_profile
      Src: /src/gpac/src/filters/dmx_avi.c:331,1
    - Dst: gf_m4a_write_config
      Src: /src/gpac/src/filters/dmx_avi.c:332,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:333,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/dmx_avi.c:333,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_avi.c:341,1
    CyclomaticComplexity: 75
    EdgeCount: 75
    ICount: 226
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_AVIDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 72
    functionDepth: 5
    functionLinenumber: 72
    functionLinenumberEnd: 344
    functionName: avidmx_setup
    functionSourceFile: /src/gpac/src/filters/dmx_avi.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - AVI_frame_rate
    - gf_filter_pid_set_property_str
    - AVI_audio_bits
    - gf_list_count
    - memset
    - PROP_DATA_NO_COPY
    - PROP_FRAC64
    - PROP_DATA
    - gf_filter_pid_new
    - gf_4cc_parse
    - AVI_read_audio
    - AVI_video_frames
    - gf_list_get
    - AVI_video_compressor
    - PROP_FRAC
    - gf_m4a_get_profile
    - gf_list_add
    - PROP_BOOL
    - stricmp
    - AVI_audio_rate
    - AVI_audio_mp3rate
    - GF_LOG
    - AVI_audio_format
    - gf_mp3_object_type_indication
    - AVI_video_height
    - gf_m4a_write_config
    - gf_filter_pid_set_property
    - AVI_video_width
    - AVI_audio_tracks
    - PROP_UINT
    - gf_media_get_video_timing
    - AVI_set_audio_position
    - AVI_audio_channels
    - gf_pixel_get_size_info
    - GF_4CC
    - AVI_set_audio_track
    linkageType: ''
    returnType: void
    signature: void avidmx_setup(GF_Filter *filter, GF_AVIDmxCtx *ctx)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_avi.c:349,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dmx_avi.c:354,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_avi.c:357,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_avi.c:358,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dmx_avi.c:360,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_avi.c:361,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dmx_avi.c:365,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_avi.c:373,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_avi.c:377,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_avi.c:380,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_avi.c:383,1
    - Dst: AVI_close
      Src: /src/gpac/src/filters/dmx_avi.c:387,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_avi.c:389,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_avi.c:390,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 346
    functionDepth: 6
    functionLinenumber: 346
    functionLinenumberEnd: 399
    functionName: avidmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/dmx_avi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_pop_back
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - GF_FEVT_INIT
    - gf_list_count
    - gf_filter_pid_check_caps
    - strcmp
    - AVI_close
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err avidmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_avi.c:403,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dmx_avi.c:407,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/dmx_avi.c:420,1
    - Dst: AVI_seek_start
      Src: /src/gpac/src/filters/dmx_avi.c:421,1
    - Dst: AVI_set_video_position
      Src: /src/gpac/src/filters/dmx_avi.c:424,1
    - Dst: AVI_seek_start
      Src: /src/gpac/src/filters/dmx_avi.c:426,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dmx_avi.c:427,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_avi.c:432,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_avi.c:433,1
    - Dst: AVI_set_audio_position
      Src: /src/gpac/src/filters/dmx_avi.c:442,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_avi.c:455,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_avi.c:456,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 56
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 401
    functionDepth: 1
    functionLinenumber: 401
    functionLinenumberEnd: 472
    functionName: avidmx_process_event
    functionSourceFile: /src/gpac/src/filters/dmx_avi.c
    functionUses: 0
    functionsReached:
    - AVI_set_video_position
    - gf_list_get
    - AVI_set_audio_position
    - gf_list_count
    - gf_sys_is_cov_mode
    - gf_filter_post_process_task
    - AVI_seek_start
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool avidmx_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_avi.c:476,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_avi.c:482,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/dmx_avi.c:486,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_avi.c:487,1
    - Dst: AVI_open_input_file
      Src: /src/gpac/src/filters/dmx_avi.c:492,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/dmx_avi.c:495,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_avi.c:496,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/dmx_avi.c:499,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/dmx_avi.c:501,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_avi.c:502,1
    - Dst: avidmx_setup
      Src: /src/gpac/src/filters/dmx_avi.c:505,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_avi.c:509,1
    - Dst: AVI_frame_size
      Src: /src/gpac/src/filters/dmx_avi.c:513,1
    - Dst: AVI_read_frame
      Src: /src/gpac/src/filters/dmx_avi.c:515,1
    - Dst: AVI_get_video_position
      Src: /src/gpac/src/filters/dmx_avi.c:520,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_avi.c:524,1
    - Dst: AVI_read_frame
      Src: /src/gpac/src/filters/dmx_avi.c:526,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/dmx_avi.c:527,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_avi.c:528,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dmx_avi.c:529,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dmx_avi.c:530,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_avi.c:531,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_avi.c:532,1
    - Dst: AVI_read_frame
      Src: /src/gpac/src/filters/dmx_avi.c:535,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dmx_avi.c:543,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_avi.c:546,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_avi.c:551,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_avi.c:558,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_avi.c:562,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_avi.c:570,1
    - Dst: AVI_set_audio_track
      Src: /src/gpac/src/filters/dmx_avi.c:572,1
    - Dst: AVI_audio_size
      Src: /src/gpac/src/filters/dmx_avi.c:576,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_avi.c:599,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/dmx_avi.c:602,1
    - Dst: AVI_read_audio
      Src: /src/gpac/src/filters/dmx_avi.c:603,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_avi.c:611,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_avi.c:612,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_avi.c:615,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_avi.c:616,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/dmx_avi.c:621,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_avi.c:623,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_avi.c:628,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/dmx_avi.c:634,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_avi.c:643,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_avi.c:647,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_avi.c:650,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_avi.c:653,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/dmx_avi.c:655,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dmx_avi.c:662,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 157
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 474
    functionDepth: 6
    functionLinenumber: 474
    functionLinenumberEnd: 664
    functionName: avidmx_process
    functionSourceFile: /src/gpac/src/filters/dmx_avi.c
    functionUses: 0
    functionsReached:
    - AVI_audio_size
    - gf_file_exists
    - gf_list_count
    - gf_fopen
    - AVI_read_audio
    - gf_filter_pid_get_packet
    - gf_filter_post_process_task
    - AVI_open_input_file
    - gf_filter_pck_set_byte_offset
    - gf_list_get
    - gf_filter_pck_get_framing
    - sprintf
    - gf_fsize
    - gf_filter_get_udta
    - gf_ftell
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - AVI_get_video_position
    - gf_filter_update_status
    - gf_filter_pck_set_duration
    - gf_filter_pid_would_block
    - gf_filter_pid_set_eos
    - gf_filter_pck_set_sap
    - gf_filter_setup_failure
    - avidmx_setup
    - AVI_frame_size
    - gf_fclose
    - gf_filter_pck_set_cts
    - AVI_read_frame
    - gf_filter_pck_set_framing
    - gf_filter_reporting_enabled
    - AVI_set_audio_track
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err avidmx_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_avi.c:668,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_avi.c:670,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 672
      start: 666
    functionDepth: 1
    functionLinenumber: 666
    functionLinenumberEnd: 672
    functionName: avidmx_initialize
    functionSourceFile: /src/gpac/src/filters/dmx_avi.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err avidmx_initialize(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_avi.c:676,1
    - Dst: AVI_close
      Src: /src/gpac/src/filters/dmx_avi.c:677,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_avi.c:678,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_avi.c:679,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_avi.c:680,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_avi.c:682,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_avi.c:685,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 674
    functionDepth: 6
    functionLinenumber: 674
    functionLinenumberEnd: 688
    functionName: avidmx_finalize
    functionSourceFile: /src/gpac/src/filters/dmx_avi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - GF_LOG
    - gf_list_count
    - AVI_close
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void avidmx_finalize(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_avi.c:694,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_avi.c:695,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 698
      start: 690
    functionDepth: 0
    functionLinenumber: 690
    functionLinenumberEnd: 698
    functionName: avidmx_probe_data
    functionSourceFile: /src/gpac/src/filters/dmx_avi.c
    functionUses: 0
    functionsReached:
    - strncmp
    linkageType: ''
    returnType: char
    signature: char * avidmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 713
      start: 712
    functionDepth: 0
    functionLinenumber: 712
    functionLinenumberEnd: 713
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dmx_avi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 748
      start: 741
    functionDepth: 0
    functionLinenumber: 741
    functionLinenumberEnd: 748
    functionName: avidmx_register
    functionSourceFile: /src/gpac/src/filters/dmx_avi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *avidmx_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tilesplit.c:73,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/tilesplit.c:73,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tilesplit.c:74,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/tilesplit.c:74,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tilesplit.c:81,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tilesplit.c:88,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tilesplit.c:91,1
    - Dst: PROP_VEC2I_INT
      Src: /src/gpac/src/filters/tilesplit.c:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 2
    argNames:
    - ctx
    - tinfo
    argTypes:
    - GF_TileSplitCtx*
    - TileSplitPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 94
    functionName: tilesplit_update_pid_props
    functionSourceFile: /src/gpac/src/filters/tilesplit.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_property
    - PROP_UINT
    - PROP_VEC2I_INT
    linkageType: ''
    returnType: void
    signature: void tilesplit_update_pid_props(GF_TileSplitCtx *ctx, TileSplitPid
      *tinfo)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/tilesplit.c:108,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/tilesplit.c:114,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/tilesplit.c:126,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/tilesplit.c:127,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/tilesplit.c:129,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tilesplit.c:131,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/tilesplit.c:131,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/tilesplit.c:133,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/tilesplit.c:136,1
    - Dst: memset
      Src: /src/gpac/src/filters/tilesplit.c:140,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tilesplit.c:142,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/tilesplit.c:144,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tilesplit.c:145,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/tilesplit.c:146,1
    - Dst: gf_hevc_read_pps
      Src: /src/gpac/src/filters/tilesplit.c:150,1
    - Dst: gf_hevc_read_sps
      Src: /src/gpac/src/filters/tilesplit.c:153,1
    - Dst: gf_hevc_read_vps
      Src: /src/gpac/src/filters/tilesplit.c:156,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/tilesplit.c:169,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/tilesplit.c:173,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/tilesplit.c:174,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tilesplit.c:175,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/tilesplit.c:185,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/tilesplit.c:191,1
    - Dst: memset
      Src: /src/gpac/src/filters/tilesplit.c:192,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/tilesplit.c:262,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/tilesplit.c:264,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/tilesplit.c:266,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/tilesplit.c:273,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/tilesplit.c:274,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/tilesplit.c:291,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/tilesplit.c:296,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tilesplit.c:297,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/tilesplit.c:297,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tilesplit.c:299,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/tilesplit.c:299,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tilesplit.c:301,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tilesplit.c:303,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/tilesplit.c:303,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tilesplit.c:305,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/tilesplit.c:305,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tilesplit.c:306,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tilesplit.c:307,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/tilesplit.c:307,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tilesplit.c:308,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/tilesplit.c:308,1
    - Dst: tilesplit_update_pid_props
      Src: /src/gpac/src/filters/tilesplit.c:309,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/tilesplit.c:311,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/tilesplit.c:312,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/tilesplit.c:314,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/tilesplit.c:325,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/tilesplit.c:330,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/tilesplit.c:338,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/tilesplit.c:339,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tilesplit.c:341,1
    - Dst: PROP_VEC2I_INT
      Src: /src/gpac/src/filters/tilesplit.c:341,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tilesplit.c:342,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/tilesplit.c:342,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/tilesplit.c:344,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 199
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 96
    functionDepth: 8
    functionLinenumber: 96
    functionLinenumberEnd: 346
    functionName: tilesplit_configure_pid
    functionSourceFile: /src/gpac/src/filters/tilesplit.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_pid_set_property_str
    - gf_list_count
    - memset
    - PROP_DATA
    - gf_filter_pid_new
    - gf_file_basename
    - gf_hevc_read_vps
    - gf_realloc
    - gf_odf_hevc_cfg_read
    - gf_filter_pid_get_name
    - gf_list_get
    - memcpy
    - sprintf
    - gf_odf_hevc_cfg_write
    - tilesplit_update_pid_props
    - PROP_BOOL
    - gf_filter_get_udta
    - gf_filter_pid_copy_properties
    - GF_LOG
    - gf_filter_pid_set_property
    - gf_malloc
    - PROP_VEC2I_INT
    - gf_odf_hevc_cfg_del
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - gf_hevc_read_sps
    - gf_filter_pid_set_name
    - gf_hevc_read_pps
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tilesplit_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/tilesplit.c:353,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/tilesplit.c:355,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_TileSplitCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 348
    functionDepth: 1
    functionLinenumber: 348
    functionLinenumberEnd: 357
    functionName: tilesplit_set_eos
    functionSourceFile: /src/gpac/src/filters/tilesplit.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_eos
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tilesplit_set_eos(GF_Filter *filter, GF_TileSplitCtx *ctx)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/tilesplit.c:364,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/tilesplit.c:371,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/tilesplit.c:373,1
    - Dst: tilesplit_set_eos
      Src: /src/gpac/src/filters/tilesplit.c:374,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/tilesplit.c:380,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/tilesplit.c:381,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/tilesplit.c:385,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/tilesplit.c:387,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/tilesplit.c:391,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/tilesplit.c:392,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/tilesplit.c:398,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/tilesplit.c:399,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/tilesplit.c:415,1
    - Dst: gf_hevc_parse_nalu
      Src: /src/gpac/src/filters/tilesplit.c:419,1
    - Dst: hevc_get_tile_id
      Src: /src/gpac/src/filters/tilesplit.c:442,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/tilesplit.c:444,1
    - Dst: tilesplit_update_pid_props
      Src: /src/gpac/src/filters/tilesplit.c:458,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/tilesplit.c:465,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/tilesplit.c:469,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/tilesplit.c:480,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/tilesplit.c:481,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/tilesplit.c:483,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/tilesplit.c:484,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/tilesplit.c:485,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/tilesplit.c:494,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/tilesplit.c:495,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/tilesplit.c:497,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/tilesplit.c:498,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/tilesplit.c:499,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/tilesplit.c:505,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 112
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 362
    functionDepth: 8
    functionLinenumber: 362
    functionLinenumberEnd: 507
    functionName: tilesplit_process
    functionSourceFile: /src/gpac/src/filters/tilesplit.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_filter_pid_get_packet
    - gf_filter_pck_forward
    - memcpy
    - tilesplit_update_pid_props
    - gf_filter_get_udta
    - gf_hevc_parse_nalu
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_bs_write_data
    - gf_filter_pid_is_eos
    - gf_bs_get_content_no_truncate
    - gf_bs_reassign_buffer
    - tilesplit_set_eos
    - hevc_get_tile_id
    - gf_filter_pck_merge_properties
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tilesplit_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 514
      start: 509
    functionDepth: 0
    functionLinenumber: 509
    functionLinenumberEnd: 514
    functionName: tilesplit_initialize
    functionSourceFile: /src/gpac/src/filters/tilesplit.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tilesplit_initialize(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/tilesplit.c:519,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/tilesplit.c:523,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/tilesplit.c:524,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/tilesplit.c:527,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/tilesplit.c:529,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/tilesplit.c:530,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 531
      start: 516
    functionDepth: 3
    functionLinenumber: 516
    functionLinenumberEnd: 531
    functionName: tilesplit_finalize
    functionSourceFile: /src/gpac/src/filters/tilesplit.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void tilesplit_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 554
    functionDepth: 0
    functionLinenumber: 554
    functionLinenumberEnd: 555
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/tilesplit.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 592
    functionDepth: 0
    functionLinenumber: 592
    functionLinenumberEnd: 595
    functionName: tilesplit_register
    functionSourceFile: /src/gpac/src/filters/tilesplit.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *tilesplit_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 600
      start: 597
    functionDepth: 0
    functionLinenumber: 597
    functionLinenumberEnd: 600
    functionName: tilesplit_register
    functionSourceFile: /src/gpac/src/filters/tilesplit.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *tilesplit_register(GF_FilterSession *session)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_latm.c:92,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_latm.c:93,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_latm.c:98,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_latm.c:100,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_latm.c:104,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_latm.c:105,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_latm.c:106,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_latm.c:107,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_latm.c:112,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_latm.c:115,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_latm.c:117,1
    - Dst: gf_latm_get_value
      Src: /src/gpac/src/filters/reframe_latm.c:120,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_latm.c:122,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_latm.c:123,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_latm.c:124,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_latm.c:127,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_latm.c:131,1
    - Dst: gf_latm_get_value
      Src: /src/gpac/src/filters/reframe_latm.c:134,1
    - Dst: gf_m4a_parse_config
      Src: /src/gpac/src/filters/reframe_latm.c:135,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_latm.c:138,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_latm.c:140,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_latm.c:150,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_latm.c:154,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_latm.c:161,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_latm.c:165,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_latm.c:166,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_latm.c:175,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_latm.c:178,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_latm.c:184,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_latm.c:186,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/filters/reframe_latm.c:186,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_latm.c:187,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 93
    argCount: 5
    argNames:
    - bs
    - acfg
    - nb_bytes
    - buffer
    - nb_skipped
    argTypes:
    - GF_BitStream*
    - GF_M4ADecSpecInfo*
    - u32*
    - u8*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 85
    functionDepth: 8
    functionLinenumber: 85
    functionLinenumberEnd: 195
    functionName: latm_dmx_sync_frame_bs
    functionSourceFile: /src/gpac/src/filters/reframe_latm.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_peek_bits
    - gf_bs_seek
    - gf_bs_get_position
    - gf_bs_read_int
    - gf_m4a_parse_config
    - gf_bs_read_u8
    - gf_bs_available
    - gf_latm_get_value
    linkageType: ''
    returnType: Bool
    signature: Bool latm_dmx_sync_frame_bs(GF_BitStream *bs, GF_M4ADecSpecInfo *acfg,
      u32 *nb_bytes, u8 *buffer, u32 *nb_skipped)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_latm.c:202,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/reframe_latm.c:207,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/reframe_latm.c:212,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_latm.c:216,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_latm.c:220,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_latm.c:221,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_latm.c:222,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 227
    functionName: latm_dmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/reframe_latm.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err latm_dmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_latm.c:244,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_latm.c:245,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/reframe_latm.c:252,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/reframe_latm.c:254,1
    - Dst: memset
      Src: /src/gpac/src/filters/reframe_latm.c:261,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/filters/reframe_latm.c:264,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_latm.c:267,1
    - Dst: latm_dmx_sync_frame_bs
      Src: /src/gpac/src/filters/reframe_latm.c:268,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/reframe_latm.c:269,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/reframe_latm.c:279,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_latm.c:282,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_latm.c:290,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_latm.c:292,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_latm.c:293,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/reframe_latm.c:294,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/reframe_latm.c:296,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_latm.c:301,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_latm.c:301,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_latm.c:310,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 68
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_LATMDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 229
    functionDepth: 9
    functionLinenumber: 229
    functionLinenumberEnd: 312
    functionName: latm_dmx_check_dur
    functionSourceFile: /src/gpac/src/filters/reframe_latm.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_filter_pid_get_property
    - latm_dmx_sync_frame_bs
    - gf_fileio_is_main_thread
    - gf_bs_get_position
    - gf_bs_del
    - memset
    - strncmp
    - gf_fopen_ex
    - PROP_FRAC64
    - gf_bs_from_file
    - gf_filter_pid_set_property
    - GF_ARRAY_LENGTH
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void latm_dmx_check_dur(GF_Filter *filter, GF_LATMDmxCtx *ctx)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_latm.c:320,1
    - Dst: latm_dmx_check_dur
      Src: /src/gpac/src/filters/reframe_latm.c:321,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_latm.c:324,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_latm.c:333,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_latm.c:340,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_latm.c:340,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_latm.c:341,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_latm.c:341,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_latm.c:342,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_latm.c:342,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_latm.c:343,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_latm.c:343,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_latm.c:345,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_latm.c:345,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_latm.c:348,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_latm.c:348,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_latm.c:350,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_latm.c:350,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_latm.c:360,1
    - Dst: gf_m4a_write_config
      Src: /src/gpac/src/filters/reframe_latm.c:366,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_latm.c:367,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/reframe_latm.c:367,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_latm.c:368,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_latm.c:368,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_latm.c:369,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_latm.c:369,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_latm.c:373,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_latm.c:373,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_latm.c:374,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_latm.c:374,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_latm.c:377,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_latm.c:377,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 49
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_LATMDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 314
    functionDepth: 10
    functionLinenumber: 314
    functionLinenumberEnd: 379
    functionName: latm_dmx_check_pid
    functionSourceFile: /src/gpac/src/filters/reframe_latm.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - GF_LOG
    - PROP_FRAC64
    - latm_dmx_check_dur
    - gf_m4a_write_config
    - PROP_DATA_NO_COPY
    - PROP_BOOL
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_timestamp_rescale
    linkageType: ''
    returnType: void
    signature: void latm_dmx_check_pid(GF_Filter *filter, GF_LATMDmxCtx *ctx)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_latm.c:385,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_latm.c:423,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_latm.c:425,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 48
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 381
    functionDepth: 1
    functionLinenumber: 381
    functionLinenumberEnd: 444
    functionName: latm_dmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_latm.c
    functionUses: 0
    functionsReached:
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool latm_dmx_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_latm.c:448,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_LATMDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 446
    functionDepth: 1
    functionLinenumber: 446
    functionLinenumberEnd: 458
    functionName: latm_dmx_update_cts
    functionSourceFile: /src/gpac/src/filters/reframe_latm.c
    functionUses: 0
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE latm_dmx_update_cts(GF_LATMDmxCtx *ctx)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_latm.c:462,1
    - Dst: latm_dmx_check_dur
      Src: /src/gpac/src/filters/reframe_latm.c:478,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_latm.c:483,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_latm.c:485,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_latm.c:488,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_latm.c:489,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_latm.c:497,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_latm.c:502,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_latm.c:513,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_latm.c:515,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_latm.c:519,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_latm.c:520,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_latm.c:523,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_latm.c:532,1
    - Dst: latm_dmx_sync_frame_bs
      Src: /src/gpac/src/filters/reframe_latm.c:534,1
    - Dst: latm_dmx_check_pid
      Src: /src/gpac/src/filters/reframe_latm.c:547,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_latm.c:557,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_latm.c:560,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_latm.c:562,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_latm.c:564,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_latm.c:566,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_latm.c:566,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_latm.c:568,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_latm.c:569,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_latm.c:581,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_latm.c:583,1
    - Dst: latm_dmx_update_cts
      Src: /src/gpac/src/filters/reframe_latm.c:585,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_latm.c:588,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_latm.c:591,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_latm.c:594,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_latm.c:600,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_latm.c:602,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_latm.c:609,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_latm.c:611,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_latm.c:612,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 125
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 619
      start: 460
    functionDepth: 11
    functionLinenumber: 460
    functionLinenumberEnd: 619
    functionName: latm_dmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_latm.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - latm_dmx_check_pid
    - gf_filter_pck_ref_props
    - gf_filter_pid_get_packet
    - gf_realloc
    - gf_assert
    - memcpy
    - latm_dmx_sync_frame_bs
    - gf_filter_pck_get_cts
    - latm_dmx_update_cts
    - gf_filter_get_udta
    - gf_filter_pck_new_alloc
    - memmove
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - gf_filter_pck_set_duration
    - gf_filter_pid_set_eos
    - gf_bs_get_position
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - gf_timestamp_rescale
    - gf_bs_seek
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - gf_filter_pck_set_framing
    - latm_dmx_check_dur
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err latm_dmx_process(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_latm.c:623,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_latm.c:624,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_latm.c:625,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_latm.c:626,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_latm.c:627,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 621
    functionDepth: 3
    functionLinenumber: 621
    functionLinenumberEnd: 628
    functionName: latm_dmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_latm.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_del
    - gf_filter_pck_unref
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void latm_dmx_finalize(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_latm.c:636,1
    - Dst: latm_dmx_sync_frame_bs
      Src: /src/gpac/src/filters/reframe_latm.c:639,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/reframe_latm.c:640,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_latm.c:654,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 630
    functionDepth: 9
    functionLinenumber: 630
    functionLinenumberEnd: 660
    functionName: latm_dmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_latm.c
    functionUses: 0
    functionsReached:
    - latm_dmx_sync_frame_bs
    - GF_ARRAY_LENGTH
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: char
    signature: char *latm_dmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 682
      start: 681
    functionDepth: 0
    functionLinenumber: 681
    functionLinenumberEnd: 682
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/reframe_latm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 706
    functionDepth: 0
    functionLinenumber: 706
    functionLinenumberEnd: 709
    functionName: rflatm_register
    functionSourceFile: /src/gpac/src/filters/reframe_latm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rflatm_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 714
      start: 711
    functionDepth: 0
    functionLinenumber: 711
    functionLinenumberEnd: 714
    functionName: rflatm_register
    functionSourceFile: /src/gpac/src/filters/reframe_latm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rflatm_register(GF_FilterSession *session)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/rewrite_nalu.c:73,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/rewrite_nalu.c:75,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/rewrite_nalu.c:76,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/rewrite_nalu.c:77,1
    - Dst: gf_hevc_parse_nalu
      Src: /src/gpac/src/filters/rewrite_nalu.c:86,1
    - Dst: gf_vvc_parse_nalu
      Src: /src/gpac/src/filters/rewrite_nalu.c:90,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - bs
    - list
    - for_non_rap
    argTypes:
    - GF_NALUMxCtx*
    - GF_BitStream*
    - GF_List*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 71
    functionDepth: 9
    functionLinenumber: 71
    functionLinenumberEnd: 94
    functionName: nalumx_write_ps_list
    functionSourceFile: /src/gpac/src/filters/rewrite_nalu.c
    functionUses: 0
    functionsReached:
    - gf_hevc_parse_nalu
    - gf_list_get
    - gf_vvc_parse_nalu
    - gf_list_count
    - gf_bs_write_data
    - gf_bs_write_u32
    linkageType: ''
    returnType: void
    signature: void nalumx_write_ps_list(GF_NALUMxCtx *ctx, GF_BitStream *bs, GF_List
      *list, Bool for_non_rap)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/rewrite_nalu.c:98,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/rewrite_nalu.c:100,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - cfg
    - type
    argTypes:
    - GF_HEVCConfig*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 104
    functionName: nalumx_get_hevc_ps
    functionSourceFile: /src/gpac/src/filters/rewrite_nalu.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_List
    signature: GF_List *nalumx_get_hevc_ps(GF_HEVCConfig *cfg, u8 type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/rewrite_nalu.c:107,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/rewrite_nalu.c:109,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - cfg
    - type
    argTypes:
    - GF_VVCConfig*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 113
    functionName: nalumx_get_vvc_ps
    functionSourceFile: /src/gpac/src/filters/rewrite_nalu.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_List
    signature: GF_List *nalumx_get_vvc_ps(GF_VVCConfig *cfg, u8 type)
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filters/rewrite_nalu.c:127,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/rewrite_nalu.c:131,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/rewrite_nalu.c:137,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/rewrite_nalu.c:138,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/rewrite_nalu.c:144,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/rewrite_nalu.c:148,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/rewrite_nalu.c:149,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/rewrite_nalu.c:155,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/rewrite_nalu.c:159,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/rewrite_nalu.c:160,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/rewrite_nalu.c:164,1
    - Dst: nalumx_write_ps_list
      Src: /src/gpac/src/filters/rewrite_nalu.c:167,1
    - Dst: nalumx_write_ps_list
      Src: /src/gpac/src/filters/rewrite_nalu.c:171,1
    - Dst: nalumx_write_ps_list
      Src: /src/gpac/src/filters/rewrite_nalu.c:174,1
    - Dst: nalumx_write_ps_list
      Src: /src/gpac/src/filters/rewrite_nalu.c:177,1
    - Dst: nalumx_write_ps_list
      Src: /src/gpac/src/filters/rewrite_nalu.c:180,1
    - Dst: nalumx_write_ps_list
      Src: /src/gpac/src/filters/rewrite_nalu.c:183,1
    - Dst: nalumx_write_ps_list
      Src: /src/gpac/src/filters/rewrite_nalu.c:187,1
    - Dst: nalumx_get_hevc_ps
      Src: /src/gpac/src/filters/rewrite_nalu.c:187,1
    - Dst: nalumx_write_ps_list
      Src: /src/gpac/src/filters/rewrite_nalu.c:189,1
    - Dst: nalumx_get_hevc_ps
      Src: /src/gpac/src/filters/rewrite_nalu.c:189,1
    - Dst: nalumx_write_ps_list
      Src: /src/gpac/src/filters/rewrite_nalu.c:191,1
    - Dst: nalumx_get_hevc_ps
      Src: /src/gpac/src/filters/rewrite_nalu.c:191,1
    - Dst: nalumx_write_ps_list
      Src: /src/gpac/src/filters/rewrite_nalu.c:193,1
    - Dst: nalumx_get_hevc_ps
      Src: /src/gpac/src/filters/rewrite_nalu.c:193,1
    - Dst: nalumx_write_ps_list
      Src: /src/gpac/src/filters/rewrite_nalu.c:195,1
    - Dst: nalumx_get_hevc_ps
      Src: /src/gpac/src/filters/rewrite_nalu.c:195,1
    - Dst: nalumx_write_ps_list
      Src: /src/gpac/src/filters/rewrite_nalu.c:197,1
    - Dst: nalumx_get_hevc_ps
      Src: /src/gpac/src/filters/rewrite_nalu.c:197,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/rewrite_nalu.c:204,1
    - Dst: nalumx_write_ps_list
      Src: /src/gpac/src/filters/rewrite_nalu.c:206,1
    - Dst: nalumx_get_vvc_ps
      Src: /src/gpac/src/filters/rewrite_nalu.c:206,1
    - Dst: nalumx_write_ps_list
      Src: /src/gpac/src/filters/rewrite_nalu.c:208,1
    - Dst: nalumx_get_vvc_ps
      Src: /src/gpac/src/filters/rewrite_nalu.c:208,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/rewrite_nalu.c:213,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/rewrite_nalu.c:214,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/rewrite_nalu.c:216,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/rewrite_nalu.c:217,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/rewrite_nalu.c:219,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/rewrite_nalu.c:221,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/rewrite_nalu.c:222,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/rewrite_nalu.c:223,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/rewrite_nalu.c:224,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/rewrite_nalu.c:225,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/rewrite_nalu.c:226,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 102
    argCount: 6
    argNames:
    - ctx
    - dsi
    - dsi_len
    - dsi_enh
    - dsi_enh_len
    - for_non_rap
    argTypes:
    - GF_NALUMxCtx*
    - char*
    - u32
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 115
    functionDepth: 10
    functionLinenumber: 115
    functionLinenumberEnd: 229
    functionName: nalumx_make_inband_header
    functionSourceFile: /src/gpac/src/filters/rewrite_nalu.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_hevc_cfg_read
    - gf_odf_hevc_cfg_del
    - gf_odf_vvc_cfg_del
    - gf_bs_new
    - GF_SAFEALLOC
    - nalumx_get_hevc_ps
    - GF_ARRAY_LENGTH
    - gf_bs_get_content
    - gf_odf_avc_cfg_del
    - gf_bs_del
    - nalumx_get_vvc_ps
    - nalumx_write_ps_list
    - gf_odf_vvc_cfg_read
    - gf_odf_avc_cfg_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nalumx_make_inband_header(GF_NALUMxCtx *ctx, char *dsi, u32
      dsi_len, char *dsi_enh, u32 dsi_enh_len, Bool for_non_rap)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_nalu.c:236,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/rewrite_nalu.c:241,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/rewrite_nalu.c:246,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_nalu.c:249,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_nalu.c:254,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/rewrite_nalu.c:258,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_nalu.c:260,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/rewrite_nalu.c:262,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/rewrite_nalu.c:266,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/rewrite_nalu.c:267,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/rewrite_nalu.c:267,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/rewrite_nalu.c:268,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/rewrite_nalu.c:275,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_nalu.c:287,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_nalu.c:289,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/rewrite_nalu.c:293,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/rewrite_nalu.c:296,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/rewrite_nalu.c:297,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/rewrite_nalu.c:297,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/rewrite_nalu.c:298,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/rewrite_nalu.c:301,1
    - Dst: nalumx_make_inband_header
      Src: /src/gpac/src/filters/rewrite_nalu.c:305,1
    - Dst: nalumx_make_inband_header
      Src: /src/gpac/src/filters/rewrite_nalu.c:309,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 68
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 231
    functionDepth: 11
    functionLinenumber: 231
    functionLinenumberEnd: 310
    functionName: nalumx_configure_pid
    functionSourceFile: /src/gpac/src/filters/rewrite_nalu.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property_str
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - nalumx_make_inband_header
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_set_property
    - gf_filter_pid_check_caps
    - PROP_BOOL
    - gf_filter_pid_new
    - gf_crc_32
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nalumx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: gf_hevc_parse_nalu
      Src: /src/gpac/src/filters/rewrite_nalu.c:337,1
    - Dst: gf_vvc_parse_nalu
      Src: /src/gpac/src/filters/rewrite_nalu.c:372,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 99
    argCount: 10
    argNames:
    - ctx
    - data
    - pos
    - nal_size
    - has_nal_delim
    - out_temporal_id
    - out_layer_id
    - avc_hdr
    - delim_flags
    - is_sap
    argTypes:
    - GF_NALUMxCtx*
    - u8*
    - u32
    - u32
    - Bool*
    - u32*
    - u32*
    - u8*
    - u32*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 313
    functionDepth: 9
    functionLinenumber: 313
    functionLinenumberEnd: 417
    functionName: nalumx_is_nal_skip
    functionSourceFile: /src/gpac/src/filters/rewrite_nalu.c
    functionUses: 0
    functionsReached:
    - gf_hevc_parse_nalu
    - gf_vvc_parse_nalu
    linkageType: ''
    returnType: Bool
    signature: Bool nalumx_is_nal_skip(GF_NALUMxCtx *ctx, u8 *data, u32 pos, u32 nal_size,
      Bool *has_nal_delim, u32 *out_temporal_id, u32 *out_layer_id, u8 *avc_hdr, u32
      *delim_flags, Bool *is_sap)
  - BBCount: 50
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_nalu.c:421,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/rewrite_nalu.c:433,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/rewrite_nalu.c:435,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/rewrite_nalu.c:437,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/rewrite_nalu.c:440,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/rewrite_nalu.c:441,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/rewrite_nalu.c:442,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/rewrite_nalu.c:445,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/rewrite_nalu.c:451,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewrite_nalu.c:452,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewrite_nalu.c:457,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/rewrite_nalu.c:461,1
    - Dst: gf_filter_pck_has_properties
      Src: /src/gpac/src/filters/rewrite_nalu.c:465,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/rewrite_nalu.c:466,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewrite_nalu.c:468,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/rewrite_nalu.c:471,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/rewrite_nalu.c:472,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/rewrite_nalu.c:486,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/rewrite_nalu.c:491,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/rewrite_nalu.c:492,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewrite_nalu.c:493,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/rewrite_nalu.c:504,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/rewrite_nalu.c:507,1
    - Dst: nalumx_is_nal_skip
      Src: /src/gpac/src/filters/rewrite_nalu.c:510,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/rewrite_nalu.c:522,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/rewrite_nalu.c:525,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewrite_nalu.c:528,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewrite_nalu.c:529,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/rewrite_nalu.c:544,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/rewrite_nalu.c:550,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/rewrite_nalu.c:571,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/rewrite_nalu.c:574,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/rewrite_nalu.c:575,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/rewrite_nalu.c:582,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_nalu.c:588,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_nalu.c:589,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_nalu.c:590,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_nalu.c:591,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_nalu.c:593,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_nalu.c:594,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_nalu.c:595,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_nalu.c:597,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_nalu.c:598,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_nalu.c:599,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_nalu.c:600,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_nalu.c:601,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_nalu.c:602,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_nalu.c:604,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_nalu.c:606,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_nalu.c:607,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_nalu.c:609,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_nalu.c:610,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/rewrite_nalu.c:615,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/rewrite_nalu.c:619,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/rewrite_nalu.c:620,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewrite_nalu.c:621,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/rewrite_nalu.c:624,1
    - Dst: nalumx_is_nal_skip
      Src: /src/gpac/src/filters/rewrite_nalu.c:628,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/rewrite_nalu.c:638,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/rewrite_nalu.c:644,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/rewrite_nalu.c:649,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/rewrite_nalu.c:655,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/rewrite_nalu.c:656,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/rewrite_nalu.c:658,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/rewrite_nalu.c:661,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/rewrite_nalu.c:662,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/rewrite_nalu.c:664,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/rewrite_nalu.c:665,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewrite_nalu.c:667,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/rewrite_nalu.c:669,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/rewrite_nalu.c:672,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/rewrite_nalu.c:673,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 200
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 677
      start: 419
    functionDepth: 10
    functionLinenumber: 419
    functionLinenumberEnd: 677
    functionName: nalumx_process
    functionSourceFile: /src/gpac/src/filters/rewrite_nalu.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - gf_bs_available
    - gf_bs_write_u32
    - gf_filter_pid_get_packet
    - gf_filter_pck_set_byte_offset
    - snprintf
    - gf_filter_pck_forward
    - memcpy
    - gf_filter_pck_get_dependency_flags
    - gf_bs_skip_bytes
    - gf_filter_get_udta
    - gf_filter_pck_new_alloc
    - gf_filter_pid_drop_packet
    - gf_filter_update_status
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_bs_write_int
    - gf_filter_pid_set_eos
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_filter_pck_has_properties
    - gf_filter_pck_set_sap
    - gf_filter_pck_get_sap
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - nalumx_is_nal_skip
    - gf_bs_seek
    - gf_filter_pck_merge_properties
    - gf_filter_pck_set_framing
    - gf_filter_reporting_enabled
    - gf_bs_read_int
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nalumx_process(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_nalu.c:681,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/rewrite_nalu.c:687,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 679
    functionDepth: 1
    functionLinenumber: 679
    functionLinenumberEnd: 691
    functionName: nalumx_initialize
    functionSourceFile: /src/gpac/src/filters/rewrite_nalu.c
    functionUses: 0
    functionsReached:
    - gf_sys_old_arch_compat
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nalumx_initialize(GF_Filter *filter)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_nalu.c:694,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/rewrite_nalu.c:695,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/rewrite_nalu.c:696,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/rewrite_nalu.c:697,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/rewrite_nalu.c:698,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/rewrite_nalu.c:700,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/rewrite_nalu.c:701,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 703
      start: 692
    functionDepth: 3
    functionLinenumber: 692
    functionLinenumberEnd: 703
    functionName: nalumx_finalize
    functionSourceFile: /src/gpac/src/filters/rewrite_nalu.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void nalumx_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 749
      start: 748
    functionDepth: 0
    functionLinenumber: 748
    functionLinenumberEnd: 749
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/rewrite_nalu.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 780
      start: 777
    functionDepth: 0
    functionLinenumber: 777
    functionLinenumberEnd: 780
    functionName: ufnalu_register
    functionSourceFile: /src/gpac/src/filters/rewrite_nalu.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ufnalu_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 785
      start: 782
    functionDepth: 0
    functionLinenumber: 782
    functionLinenumberEnd: 785
    functionName: ufnalu_register
    functionSourceFile: /src/gpac/src/filters/rewrite_nalu.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ufnalu_register(GF_FilterSession *session)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_nvdec.c:165,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_nvdec.c:167,1
    - Dst: cuvidCreateDecoder
      Src: /src/gpac/src/filters/dec_nvdec.c:191,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:193,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:193,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_nvdec.c:198,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filters/dec_nvdec.c:200,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:201,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 33
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - NVDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 203
    functionName: nvdec_init_decoder
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_th_id
    - cudaGetErrorEnum
    - GF_LOG
    - cuvidCreateDecoder
    - memset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nvdec_init_decoder(NVDecCtx *ctx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/dec_nvdec.c:211,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_nvdec.c:212,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_nvdec.c:214,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dec_nvdec.c:219,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_nvdec.c:222,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_nvdec.c:228,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_nvdec.c:238,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_nvdec.c:242,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_nvdec.c:244,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_nvdec.c:247,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 37
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - NVDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 205
    functionDepth: 3
    functionLinenumber: 205
    functionLinenumberEnd: 253
    functionName: load_inactive_dec
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_list_pop_back
    - GF_SAFEALLOC
    - gf_list_count
    - gf_mx_v
    - gf_list_rem
    linkageType: ''
    returnType: Bool
    signature: Bool load_inactive_dec(NVDecCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_nvdec.c:257,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_nvdec.c:258,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_nvdec.c:259,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_nvdec.c:260,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_nvdec.c:260,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_nvdec.c:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - NVDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 262
    functionName: nvdec_copy_props
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_property
    - gf_filter_pid_copy_properties
    - PROP_UINT
    linkageType: ''
    returnType: void
    signature: void nvdec_copy_props(NVDecCtx *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: cuvidDestroyDecoder
      Src: /src/gpac/src/filters/dec_nvdec.c:267,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:270,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - inst
    argTypes:
    - NVDecInstance*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 264
    functionDepth: 1
    functionLinenumber: 264
    functionLinenumberEnd: 272
    functionName: nvdec_destroy_decoder
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - cuvidDestroyDecoder
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void nvdec_destroy_decoder(NVDecInstance *inst)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/dec_nvdec.c:291,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - ctx
    - use_10bits
    argTypes:
    - NVDecCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 274
    functionDepth: 5
    functionLinenumber: 274
    functionLinenumberEnd: 292
    functionName: update_pix_fmt
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - gf_pixel_get_size_info
    linkageType: ''
    returnType: void
    signature: void update_pix_fmt(NVDecCtx *ctx, Bool use_10bits)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:308,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_nvdec.c:322,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dec_nvdec.c:323,1
    - Dst: nvdec_flush_frame
      Src: /src/gpac/src/filters/dec_nvdec.c:324,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:329,1
    - Dst: load_inactive_dec
      Src: /src/gpac/src/filters/dec_nvdec.c:351,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:352,1
    - Dst: update_pix_fmt
      Src: /src/gpac/src/filters/dec_nvdec.c:357,1
    - Dst: nvdec_destroy_decoder
      Src: /src/gpac/src/filters/dec_nvdec.c:362,1
    - Dst: update_pix_fmt
      Src: /src/gpac/src/filters/dec_nvdec.c:373,1
    - Dst: nvdec_copy_props
      Src: /src/gpac/src/filters/dec_nvdec.c:375,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_nvdec.c:376,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_nvdec.c:376,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_nvdec.c:377,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_nvdec.c:377,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_nvdec.c:378,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_nvdec.c:378,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_nvdec.c:379,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_nvdec.c:380,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_nvdec.c:380,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_nvdec.c:381,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_nvdec.c:381,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_nvdec.c:382,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_nvdec.c:382,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_nvdec.c:385,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_nvdec.c:386,1
    - Dst: nvdec_init_decoder
      Src: /src/gpac/src/filters/dec_nvdec.c:390,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 72
    argCount: 2
    argNames:
    - pUserData
    - pFormat
    argTypes:
    - void*
    - CUVIDEOFORMAT*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 294
    functionDepth: 6
    functionLinenumber: 294
    functionLinenumberEnd: 398
    functionName: HandleVideoSequence
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - nvdec_flush_frame
    - nvdec_destroy_decoder
    - PROP_UINT
    - gf_list_pop_front
    - GF_LOG
    - nvdec_init_decoder
    - nvdec_copy_props
    - update_pix_fmt
    - gf_list_count
    - load_inactive_dec
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: int
    signature: int HandleVideoSequence(void *pUserData, CUVIDEOFORMAT *pFormat)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: cuvidDecodePicture
      Src: /src/gpac/src/filters/dec_nvdec.c:403,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:406,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:406,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:409,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - pUserData
    - pPicParams
    argTypes:
    - void*
    - CUVIDPICPARAMS*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 400
    functionDepth: 1
    functionLinenumber: 400
    functionLinenumberEnd: 412
    functionName: HandlePictureDecode
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - cuvidDecodePicture
    - GF_LOG
    - cudaGetErrorEnum
    linkageType: ''
    returnType: int
    signature: int HandlePictureDecode(void *pUserData, CUVIDPICPARAMS *pPicParams)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:420,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_nvdec.c:422,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_nvdec.c:424,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_nvdec.c:430,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_nvdec.c:432,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dec_nvdec.c:434,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_nvdec.c:438,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - pUserData
    - pPicParams
    argTypes:
    - void*
    - CUVIDPARSERDISPINFO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 414
    functionDepth: 3
    functionLinenumber: 414
    functionLinenumberEnd: 440
    functionName: HandlePictureDisplay
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_get
    - gf_list_pop_back
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_count
    - gf_list_add
    linkageType: ''
    returnType: int
    signature: int HandlePictureDisplay(void *pUserData, CUVIDPARSERDISPINFO *pPicParams)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_nvdec.c:445,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_nvdec.c:447,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dec_nvdec.c:448,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dec_nvdec.c:449,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - bs
    - psl
    argTypes:
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 451
      start: 442
    functionDepth: 6
    functionLinenumber: 442
    functionLinenumberEnd: 451
    functionName: nvdec_store_paramlist
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_bs_write_data
    - gf_bs_write_u32
    linkageType: ''
    returnType: void
    signature: void nvdec_store_paramlist(GF_BitStream *bs, GF_List *psl)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_nvdec.c:456,1
    - Dst: nvdec_store_paramlist
      Src: /src/gpac/src/filters/dec_nvdec.c:459,1
    - Dst: nvdec_store_paramlist
      Src: /src/gpac/src/filters/dec_nvdec.c:460,1
    - Dst: nvdec_store_paramlist
      Src: /src/gpac/src/filters/dec_nvdec.c:461,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/dec_nvdec.c:462,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_nvdec.c:465,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_nvdec.c:467,1
    - Dst: nvdec_store_paramlist
      Src: /src/gpac/src/filters/dec_nvdec.c:468,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/dec_nvdec.c:470,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_nvdec.c:472,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dec_nvdec.c:475,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_nvdec.c:476,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 3
    argNames:
    - ctx
    - avc_cfg
    - hevc_cfg
    argTypes:
    - NVDecCtx*
    - GF_AVCConfig*
    - GF_HEVCConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 453
    functionDepth: 9
    functionLinenumber: 453
    functionLinenumberEnd: 478
    functionName: nvdec_store_xps
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - gf_odf_hevc_cfg_del
    - nvdec_store_paramlist
    - gf_list_get
    - gf_free
    - gf_bs_new
    - gf_odf_avc_cfg_del
    - gf_bs_get_content
    - gf_bs_del
    - gf_list_count
    linkageType: ''
    returnType: void
    signature: void nvdec_store_xps(NVDecCtx *ctx, GF_AVCConfig *avc_cfg, GF_HEVCConfig
      *hevc_cfg)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_nvdec.c:488,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/dec_nvdec.c:509,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/dec_nvdec.c:515,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_nvdec.c:521,1
    - Dst: nvdec_store_xps
      Src: /src/gpac/src/filters/dec_nvdec.c:527,1
    - Dst: load_inactive_dec
      Src: /src/gpac/src/filters/dec_nvdec.c:529,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:530,1
    - Dst: cuCtxPushCurrent
      Src: /src/gpac/src/filters/dec_nvdec.c:549,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:551,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:551,1
    - Dst: cuvidCreateVideoParser
      Src: /src/gpac/src/filters/dec_nvdec.c:553,1
    - Dst: cuCtxPopCurrent
      Src: /src/gpac/src/filters/dec_nvdec.c:554,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:557,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:557,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:562,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_nvdec.c:566,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_nvdec.c:569,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_nvdec.c:572,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_nvdec.c:575,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_nvdec.c:578,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_nvdec.c:581,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 89
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - NVDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 481
    functionDepth: 10
    functionLinenumber: 481
    functionLinenumberEnd: 587
    functionName: nvdec_configure_stream
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - gf_odf_hevc_cfg_read
    - cuCtxPushCurrent
    - nvdec_store_xps
    - gf_filter_pid_get_property
    - cudaGetErrorEnum
    - GF_LOG
    - memset
    - cuCtxPopCurrent
    - cuvidCreateVideoParser
    - gf_odf_avc_cfg_read
    - load_inactive_dec
    - gf_filter_set_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nvdec_configure_stream(GF_Filter *filter, NVDecCtx *ctx)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_nvdec.c:595,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_nvdec.c:602,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_nvdec.c:610,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/dec_nvdec.c:611,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_nvdec.c:613,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_nvdec.c:615,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_nvdec.c:623,1
    - Dst: gf_filter_request_opengl
      Src: /src/gpac/src/filters/dec_nvdec.c:630,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:632,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dec_nvdec.c:632,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_nvdec.c:639,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_nvdec.c:663,1
    - Dst: nvdec_copy_props
      Src: /src/gpac/src/filters/dec_nvdec.c:664,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_nvdec.c:666,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_nvdec.c:666,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dec_nvdec.c:669,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_nvdec.c:674,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_nvdec.c:678,1
    - Dst: cuDeviceGet
      Src: /src/gpac/src/filters/dec_nvdec.c:693,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:695,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:695,1
    - Dst: cuDeviceComputeCapability
      Src: /src/gpac/src/filters/dec_nvdec.c:699,1
    - Dst: cuDeviceGetName
      Src: /src/gpac/src/filters/dec_nvdec.c:700,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:702,1
    - Dst: cuGLCtxCreate
      Src: /src/gpac/src/filters/dec_nvdec.c:706,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/filters/dec_nvdec.c:709,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/filters/dec_nvdec.c:710,1
    - Dst: GET_GLFUN
      Src: /src/gpac/src/filters/dec_nvdec.c:711,1
    - Dst: cuCtxCreate
      Src: /src/gpac/src/filters/dec_nvdec.c:717,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:723,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:723,1
    - Dst: cuCtxCreate
      Src: /src/gpac/src/filters/dec_nvdec.c:724,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:726,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:726,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:731,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:731,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filters/dec_nvdec.c:751,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/dec_nvdec.c:752,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_nvdec.c:753,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_nvdec.c:754,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 130
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 761
      start: 589
    functionDepth: 2
    functionLinenumber: 589
    functionLinenumberEnd: 761
    functionName: nvdec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_check_caps
    - cuDeviceComputeCapability
    - gf_filter_pid_new
    - gf_mx_new
    - gf_assert
    - gf_list_new
    - nvdec_copy_props
    - GET_GLFUN
    - gf_list_add
    - gf_crc_32
    - gf_filter_get_udta
    - gf_mx_p
    - GF_LOG
    - gf_mx_v
    - gf_error_to_string
    - gf_filter_pid_set_property
    - cuDeviceGetName
    - gf_filter_request_opengl
    - cuGLCtxCreate
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - cudaGetErrorEnum
    - gf_filter_pid_set_framing_mode
    - cuDeviceGet
    - cuCtxCreate
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nvdec_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_nvdec.c:765,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_nvdec.c:767,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_nvdec.c:768,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_nvdec.c:769,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_nvdec.c:773,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_nvdec.c:774,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_nvdec.c:775,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_nvdec.c:779,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/dec_nvdec.c:780,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:782,1
    - Dst: nvdec_destroy_decoder
      Src: /src/gpac/src/filters/dec_nvdec.c:783,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:785,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_nvdec.c:788,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_nvdec.c:790,1
    - Dst: nvdec_destroy_decoder
      Src: /src/gpac/src/filters/dec_nvdec.c:796,1
    - Dst: cuvidDestroyVideoParser
      Src: /src/gpac/src/filters/dec_nvdec.c:797,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_nvdec.c:798,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 40
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 806
      start: 763
    functionDepth: 3
    functionLinenumber: 763
    functionLinenumberEnd: 806
    functionName: nvdec_process_event
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_assert
    - gf_list_pop_back
    - cuvidDestroyVideoParser
    - nvdec_destroy_decoder
    - GF_LOG
    - gf_list_count
    - gf_mx_v
    - gf_list_add
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool nvdec_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_nvdec.c:848,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_nvdec.c:849,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_nvdec.c:850,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - NVDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 852
      start: 846
    functionDepth: 3
    functionLinenumber: 846
    functionLinenumberEnd: 852
    functionName: nvdec_reset_pcks
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_pop_back
    - gf_filter_pck_unref
    linkageType: ''
    returnType: void
    signature: void nvdec_reset_pcks(NVDecCtx *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_nvdec.c:858,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_nvdec.c:860,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_nvdec.c:861,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_nvdec.c:862,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/dec_nvdec.c:863,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dec_nvdec.c:864,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dec_nvdec.c:865,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_nvdec.c:866,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dec_nvdec.c:871,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dec_nvdec.c:872,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/dec_nvdec.c:873,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/dec_nvdec.c:874,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - ctx
    - f
    - dst_pck
    argTypes:
    - NVDecCtx*
    - NVDecFrame*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 876
      start: 854
    functionDepth: 1
    functionLinenumber: 854
    functionLinenumberEnd: 876
    functionName: nvdec_merge_pck_props
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_interlaced
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - gf_list_count
    - gf_filter_pck_get_interlaced
    - gf_filter_pck_get_cts
    - gf_filter_pck_set_dependency_flags
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void nvdec_merge_pck_props(NVDecCtx *ctx, NVDecFrame *f,  GF_FilterPacket
      *dst_pck)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_nvdec.c:887,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_nvdec.c:889,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_nvdec.c:892,1
    - Dst: cuCtxPushCurrent
      Src: /src/gpac/src/filters/dec_nvdec.c:894,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:896,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:896,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dec_nvdec.c:899,1
    - Dst: nvdec_flush_frame
      Src: /src/gpac/src/filters/dec_nvdec.c:900,1
    - Dst: cuCtxPopCurrent
      Src: /src/gpac/src/filters/dec_nvdec.c:901,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/dec_nvdec.c:911,1
    - Dst: nvdec_configure_stream
      Src: /src/gpac/src/filters/dec_nvdec.c:914,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_nvdec.c:921,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_nvdec.c:926,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_nvdec.c:933,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_nvdec.c:937,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_nvdec.c:938,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_nvdec.c:939,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_nvdec.c:947,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/dec_nvdec.c:950,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dec_nvdec.c:954,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dec_nvdec.c:972,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dec_nvdec.c:973,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/dec_nvdec.c:978,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_nvdec.c:979,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_nvdec.c:985,1
    - Dst: cuCtxPushCurrent
      Src: /src/gpac/src/filters/dec_nvdec.c:988,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:990,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:990,1
    - Dst: cuvidParseVideoData
      Src: /src/gpac/src/filters/dec_nvdec.c:996,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:998,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:998,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/dec_nvdec.c:1005,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_nvdec.c:1006,1
    - Dst: nvdec_destroy_decoder
      Src: /src/gpac/src/filters/dec_nvdec.c:1011,1
    - Dst: cuCtxPopCurrent
      Src: /src/gpac/src/filters/dec_nvdec.c:1019,1
    - Dst: nvdec_init_decoder
      Src: /src/gpac/src/filters/dec_nvdec.c:1025,1
    - Dst: cuCtxPopCurrent
      Src: /src/gpac/src/filters/dec_nvdec.c:1027,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_nvdec.c:1032,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dec_nvdec.c:1034,1
    - Dst: cuCtxPopCurrent
      Src: /src/gpac/src/filters/dec_nvdec.c:1037,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_nvdec.c:1039,1
    - Dst: nvdec_reset_pcks
      Src: /src/gpac/src/filters/dec_nvdec.c:1040,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_nvdec.c:1041,1
    - Dst: nvdec_flush_frame
      Src: /src/gpac/src/filters/dec_nvdec.c:1046,1
    - Dst: cuCtxPopCurrent
      Src: /src/gpac/src/filters/dec_nvdec.c:1047,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 133
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1049
      start: 878
    functionDepth: 11
    functionLinenumber: 878
    functionLinenumberEnd: 1049
    functionName: nvdec_process
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - nvdec_destroy_decoder
    - cuvidParseVideoData
    - gf_list_count
    - memset
    - nvdec_configure_stream
    - gf_filter_pck_ref_props
    - gf_bs_write_u32
    - gf_filter_pid_get_packet
    - gf_list_add
    - cuCtxPopCurrent
    - gf_filter_pck_get_cts
    - gf_filter_ask_rt_reschedule
    - gf_filter_get_udta
    - cuCtxPushCurrent
    - nvdec_reset_pcks
    - gf_filter_pid_drop_packet
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_filter_pid_set_eos
    - gf_bs_write_data
    - gf_filter_pck_get_sap
    - gf_filter_pid_is_eos
    - gf_bs_get_content_no_truncate
    - nvdec_flush_frame
    - nvdec_init_decoder
    - cudaGetErrorEnum
    - gf_list_pop_front
    - gf_bs_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nvdec_process(GF_Filter *filter)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: nvdec_send_hw_frame
      Src: /src/gpac/src/filters/dec_nvdec.c:1061,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_nvdec.c:1064,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dec_nvdec.c:1065,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_nvdec.c:1068,1
    - Dst: nvdec_merge_pck_props
      Src: /src/gpac/src/filters/dec_nvdec.c:1072,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/dec_nvdec.c:1074,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dec_nvdec.c:1075,1
    - Dst: cuvidMapVideoFrame
      Src: /src/gpac/src/filters/dec_nvdec.c:1077,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_nvdec.c:1080,1
    - Dst: MIN
      Src: /src/gpac/src/filters/dec_nvdec.c:1088,1
    - Dst: cuMemcpy2D
      Src: /src/gpac/src/filters/dec_nvdec.c:1091,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:1093,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:1093,1
    - Dst: MIN
      Src: /src/gpac/src/filters/dec_nvdec.c:1100,1
    - Dst: cuMemcpy2D
      Src: /src/gpac/src/filters/dec_nvdec.c:1103,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:1105,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:1105,1
    - Dst: cuvidUnmapVideoFrame
      Src: /src/gpac/src/filters/dec_nvdec.c:1109,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_nvdec.c:1111,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:1114,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:1114,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dec_nvdec.c:1116,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_nvdec.c:1119,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_nvdec.c:1120,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 54
    argCount: 2
    argNames:
    - ctx
    - f
    argTypes:
    - NVDecCtx*
    - NVDecFrame*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1122
      start: 1051
    functionDepth: 2
    functionLinenumber: 1051
    functionLinenumberEnd: 1122
    functionName: nvdec_flush_frame
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 2
    functionsReached:
    - gf_assert
    - gf_filter_pck_new_alloc
    - cudaGetErrorEnum
    - nvdec_send_hw_frame
    - GF_LOG
    - gf_filter_pck_send
    - MIN
    - memset
    - nvdec_merge_pck_props
    - gf_list_add
    - cuMemcpy2D
    - gf_filter_pck_discard
    - gf_filter_pck_get_seek_flag
    - cuvidMapVideoFrame
    - cuvidUnmapVideoFrame
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nvdec_flush_frame(NVDecCtx *ctx, NVDecFrame *f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/dec_nvdec.c:1126,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_nvdec.c:1130,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_nvdec.c:1131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - filter
    - pid
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1132
      start: 1124
    functionDepth: 1
    functionLinenumber: 1124
    functionLinenumberEnd: 1132
    functionName: nvframe_release
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_frame_interface
    - memset
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void nvframe_release(GF_Filter *filter, GF_FilterPid *pid, GF_FilterPacket
      *pck)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: cuCtxPushCurrent
      Src: /src/gpac/src/filters/dec_nvdec.c:1154,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:1156,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:1156,1
    - Dst: cuGLUnregisterBufferObject
      Src: /src/gpac/src/filters/dec_nvdec.c:1161,1
    - Dst: cuGLUnregisterBufferObject
      Src: /src/gpac/src/filters/dec_nvdec.c:1162,1
    - Dst: glDeleteBuffers
      Src: /src/gpac/src/filters/dec_nvdec.c:1163,1
    - Dst: glDeleteBuffers
      Src: /src/gpac/src/filters/dec_nvdec.c:1164,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/filters/dec_nvdec.c:1166,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/filters/dec_nvdec.c:1167,1
    - Dst: cuGLUnregisterBufferObject
      Src: /src/gpac/src/filters/dec_nvdec.c:1172,1
    - Dst: glDeleteBuffers
      Src: /src/gpac/src/filters/dec_nvdec.c:1173,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/filters/dec_nvdec.c:1175,1
    - Dst: cuGLUnregisterBufferObject
      Src: /src/gpac/src/filters/dec_nvdec.c:1179,1
    - Dst: glDeleteBuffers
      Src: /src/gpac/src/filters/dec_nvdec.c:1180,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/filters/dec_nvdec.c:1182,1
    - Dst: glGenBuffers
      Src: /src/gpac/src/filters/dec_nvdec.c:1193,1
    - Dst: glGenTextures
      Src: /src/gpac/src/filters/dec_nvdec.c:1194,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/filters/dec_nvdec.c:1196,1
    - Dst: glBufferData
      Src: /src/gpac/src/filters/dec_nvdec.c:1197,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/filters/dec_nvdec.c:1198,1
    - Dst: cuGLRegisterBufferObject
      Src: /src/gpac/src/filters/dec_nvdec.c:1200,1
    - Dst: glBindTexture
      Src: /src/gpac/src/filters/dec_nvdec.c:1202,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/filters/dec_nvdec.c:1203,1
    - Dst: glBindTexture
      Src: /src/gpac/src/filters/dec_nvdec.c:1204,1
    - Dst: cuCtxPopCurrent
      Src: /src/gpac/src/filters/dec_nvdec.c:1211,1
    - Dst: glGenBuffers
      Src: /src/gpac/src/filters/dec_nvdec.c:1219,1
    - Dst: glGenTextures
      Src: /src/gpac/src/filters/dec_nvdec.c:1220,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/filters/dec_nvdec.c:1222,1
    - Dst: glBufferData
      Src: /src/gpac/src/filters/dec_nvdec.c:1223,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/filters/dec_nvdec.c:1224,1
    - Dst: cuGLRegisterBufferObject
      Src: /src/gpac/src/filters/dec_nvdec.c:1226,1
    - Dst: glBindTexture
      Src: /src/gpac/src/filters/dec_nvdec.c:1228,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/filters/dec_nvdec.c:1229,1
    - Dst: glBindTexture
      Src: /src/gpac/src/filters/dec_nvdec.c:1230,1
    - Dst: cuCtxPopCurrent
      Src: /src/gpac/src/filters/dec_nvdec.c:1236,1
    - Dst: cuGLMapBufferObject
      Src: /src/gpac/src/filters/dec_nvdec.c:1244,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:1246,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:1246,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_nvdec.c:1249,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_nvdec.c:1251,1
    - Dst: cuvidMapVideoFrame
      Src: /src/gpac/src/filters/dec_nvdec.c:1255,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:1258,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:1258,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_nvdec.c:1261,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_nvdec.c:1263,1
    - Dst: MIN
      Src: /src/gpac/src/filters/dec_nvdec.c:1277,1
    - Dst: cuMemcpy2D
      Src: /src/gpac/src/filters/dec_nvdec.c:1281,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:1283,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:1283,1
    - Dst: cuvidUnmapVideoFrame
      Src: /src/gpac/src/filters/dec_nvdec.c:1287,1
    - Dst: cuGLUnmapBufferObject
      Src: /src/gpac/src/filters/dec_nvdec.c:1288,1
    - Dst: cuCtxPopCurrent
      Src: /src/gpac/src/filters/dec_nvdec.c:1291,1
    - Dst: glBindTexture
      Src: /src/gpac/src/filters/dec_nvdec.c:1294,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/filters/dec_nvdec.c:1295,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/filters/dec_nvdec.c:1304,1
    - Dst: glPixelTransferf
      Src: /src/gpac/src/filters/dec_nvdec.c:1311,1
    - Dst: glPixelTransferf
      Src: /src/gpac/src/filters/dec_nvdec.c:1312,1
    - Dst: glPixelTransferf
      Src: /src/gpac/src/filters/dec_nvdec.c:1315,1
    - Dst: glPixelTransferf
      Src: /src/gpac/src/filters/dec_nvdec.c:1316,1
    - Dst: glTexSubImage2D
      Src: /src/gpac/src/filters/dec_nvdec.c:1321,1
    - Dst: glTexSubImage2D
      Src: /src/gpac/src/filters/dec_nvdec.c:1323,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/filters/dec_nvdec.c:1326,1
    - Dst: glBindTexture
      Src: /src/gpac/src/filters/dec_nvdec.c:1327,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 140
    argCount: 5
    argNames:
    - frame
    - plane_idx
    - gl_tex_format
    - gl_tex_id
    - texcoordmatrix
    argTypes:
    - GF_FilterFrameInterface*
    - u32
    - u32*
    - u32*
    - GF_NVCodecMatrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1330
      start: 1139
    functionDepth: 1
    functionLinenumber: 1139
    functionLinenumberEnd: 1330
    functionName: nvframe_get_gl_texture
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - glTexSubImage2D
    - glPixelStorei
    - glBufferData
    - cuGLMapBufferObject
    - memset
    - cuMemcpy2D
    - cuGLRegisterBufferObject
    - cuvidUnmapVideoFrame
    - gf_assert
    - glBindTexture
    - cuGLUnmapBufferObject
    - cuCtxPopCurrent
    - glDeleteBuffers
    - cuvidMapVideoFrame
    - cuCtxPushCurrent
    - GF_LOG
    - MIN
    - glGenBuffers
    - glPixelTransferf
    - glBindBuffer
    - cuGLUnregisterBufferObject
    - cudaGetErrorEnum
    - glTexImage2D
    - glGenTextures
    - glDeleteTextures
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nvframe_get_gl_texture(GF_FilterFrameInterface *frame, u32 plane_idx,
      u32 *gl_tex_format, u32 *gl_tex_id, GF_NVCodecMatrix * texcoordmatrix)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dec_nvdec.c:1351,1
    - Dst: cuCtxPushCurrent
      Src: /src/gpac/src/filters/dec_nvdec.c:1355,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:1357,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:1357,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_nvdec.c:1361,1
    - Dst: cuvidMapVideoFrame
      Src: /src/gpac/src/filters/dec_nvdec.c:1365,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_nvdec.c:1368,1
    - Dst: MIN
      Src: /src/gpac/src/filters/dec_nvdec.c:1376,1
    - Dst: cuMemcpy2D
      Src: /src/gpac/src/filters/dec_nvdec.c:1379,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:1381,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:1381,1
    - Dst: cuMemcpy2D
      Src: /src/gpac/src/filters/dec_nvdec.c:1391,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:1393,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:1393,1
    - Dst: cuvidUnmapVideoFrame
      Src: /src/gpac/src/filters/dec_nvdec.c:1397,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:1400,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:1400,1
    - Dst: cuCtxPopCurrent
      Src: /src/gpac/src/filters/dec_nvdec.c:1403,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 70
    argCount: 4
    argNames:
    - frame
    - plane_idx
    - outPlane
    - outStride
    argTypes:
    - GF_FilterFrameInterface*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1424
      start: 1334
    functionDepth: 1
    functionLinenumber: 1334
    functionLinenumberEnd: 1424
    functionName: nvframe_get_frame
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - cuCtxPushCurrent
    - cudaGetErrorEnum
    - GF_LOG
    - MIN
    - cuvidUnmapVideoFrame
    - memset
    - cuMemcpy2D
    - cuCtxPopCurrent
    - cuvidMapVideoFrame
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nvframe_get_frame(GF_FilterFrameInterface *frame, u32 plane_idx,
      const u8 **outPlane, u32 *outStride)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_nvdec.c:1441,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_nvdec.c:1441,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_nvdec.c:1442,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_nvdec.c:1442,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_nvdec.c:1443,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_nvdec.c:1443,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_nvdec.c:1444,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_nvdec.c:1444,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_nvdec.c:1448,1
    - Dst: gf_filter_pck_new_frame_interface
      Src: /src/gpac/src/filters/dec_nvdec.c:1451,1
    - Dst: nvdec_merge_pck_props
      Src: /src/gpac/src/filters/dec_nvdec.c:1454,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/dec_nvdec.c:1455,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dec_nvdec.c:1456,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_nvdec.c:1459,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - ctx
    - f
    argTypes:
    - NVDecCtx*
    - NVDecFrame*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1463
      start: 1427
    functionDepth: 2
    functionLinenumber: 1427
    functionLinenumberEnd: 1463
    functionName: nvdec_send_hw_frame
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 1
    functionsReached:
    - PROP_UINT
    - gf_filter_pck_discard
    - gf_list_count
    - nvdec_merge_pck_props
    - gf_filter_pck_new_frame_interface
    - gf_filter_pck_get_seek_flag
    - gf_filter_pid_set_property
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nvdec_send_hw_frame(NVDecCtx *ctx, NVDecFrame *f)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/dec_nvdec.c:1479,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/dec_nvdec.c:1480,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/dec_nvdec.c:1481,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/dec_nvdec.c:1482,1
    - Dst: cuInit
      Src: /src/gpac/src/filters/dec_nvdec.c:1484,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:1486,1
    - Dst: cuInit
      Src: /src/gpac/src/filters/dec_nvdec.c:1487,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:1491,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:1493,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:1493,1
    - Dst: cuDeviceGetCount
      Src: /src/gpac/src/filters/dec_nvdec.c:1495,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:1497,1
    - Dst: cudaGetErrorEnum
      Src: /src/gpac/src/filters/dec_nvdec.c:1497,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_nvdec.c:1500,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1511
      start: 1470
    functionDepth: 5
    functionLinenumber: 1470
    functionLinenumberEnd: 1511
    functionName: init_cuda_sdk
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - cudaGetErrorEnum
    - cuInit
    - GF_LOG
    - gf_opts_get_key
    - cuDeviceGetCount
    linkageType: ''
    returnType: void
    signature: void init_cuda_sdk()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_nvdec.c:1516,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_nvdec.c:1518,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_nvdec.c:1519,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_nvdec.c:1520,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1522
      start: 1514
    functionDepth: 1
    functionLinenumber: 1514
    functionLinenumberEnd: 1522
    functionName: nvdec_initialize
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nvdec_initialize(GF_Filter *filter)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_nvdec.c:1526,1
    - Dst: nvdec_reset_pcks
      Src: /src/gpac/src/filters/dec_nvdec.c:1528,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_nvdec.c:1529,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_nvdec.c:1532,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_nvdec.c:1533,1
    - Dst: nvdec_destroy_decoder
      Src: /src/gpac/src/filters/dec_nvdec.c:1534,1
    - Dst: cuvidDestroyVideoParser
      Src: /src/gpac/src/filters/dec_nvdec.c:1535,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_nvdec.c:1536,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_nvdec.c:1538,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/filters/dec_nvdec.c:1540,1
    - Dst: nvdec_destroy_decoder
      Src: /src/gpac/src/filters/dec_nvdec.c:1544,1
    - Dst: cuvidDestroyVideoParser
      Src: /src/gpac/src/filters/dec_nvdec.c:1545,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_nvdec.c:1546,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_nvdec.c:1550,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_nvdec.c:1551,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_nvdec.c:1552,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_nvdec.c:1554,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_nvdec.c:1555,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_nvdec.c:1556,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_nvdec.c:1557,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_nvdec.c:1559,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_nvdec.c:1561,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_nvdec.c:1562,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_nvdec.c:1563,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 34
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1564
      start: 1524
    functionDepth: 4
    functionLinenumber: 1524
    functionLinenumberEnd: 1564
    functionName: nvdec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - nvdec_reset_pcks
    - gf_free
    - cuvidDestroyVideoParser
    - gf_list_pop_back
    - gf_mx_del
    - nvdec_destroy_decoder
    - gf_list_count
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void nvdec_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1586
      start: 1585
    functionDepth: 0
    functionLinenumber: 1585
    functionLinenumberEnd: 1586
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: cuCtxDestroy
      Src: /src/gpac/src/filters/dec_nvdec.c:1631,1
    - Dst: cuUninit
      Src: /src/gpac/src/filters/dec_nvdec.c:1633,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - session
    - freg
    argTypes:
    - GF_FilterSession*
    - GF_FilterRegister*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1637
      start: 1628
    functionDepth: 1
    functionLinenumber: 1628
    functionLinenumberEnd: 1637
    functionName: nvdec_register_free
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - cuCtxDestroy
    - cuUninit
    linkageType: ''
    returnType: void
    signature: void nvdec_register_free(GF_FilterSession *session, GF_FilterRegister
      *freg)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/dec_nvdec.c:1642,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/dec_nvdec.c:1642,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/dec_nvdec.c:1650,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dec_nvdec.c:1651,1
    - Dst: init_cuda_sdk
      Src: /src/gpac/src/filters/dec_nvdec.c:1654,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/dec_nvdec.c:1658,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/dec_nvdec.c:1659,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1666
      start: 1639
    functionDepth: 6
    functionLinenumber: 1639
    functionLinenumberEnd: 1666
    functionName: nvdec_register
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached:
    - gf_opts_set_key
    - strstr
    - init_cuda_sdk
    - gf_opts_get_key
    - gf_opts_get_bool
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *nvdec_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1673
      start: 1670
    functionDepth: 0
    functionLinenumber: 1670
    functionLinenumberEnd: 1673
    functionName: nvdec_register
    functionSourceFile: /src/gpac/src/filters/dec_nvdec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *nvdec_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ExceptionDescribe
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:59,1
    - Dst: ExceptionClear
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - env
    argTypes:
    - JNIEnv*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 61
    functionName: HandleJNIError
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec_jni.c
    functionUses: 0
    functionsReached:
    - ExceptionDescribe
    - ExceptionClear
    linkageType: ''
    returnType: void
    signature: void HandleJNIError(JNIEnv *env)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CallObjectMethod
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:65,1
    - Dst: NewStringUTF
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - name
    argTypes:
    - JNIEnv*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: FindAppClass
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec_jni.c
    functionUses: 0
    functionsReached:
    - NewStringUTF
    - CallObjectMethod
    linkageType: ''
    returnType: jclass
    signature: jclass FindAppClass(JNIEnv* env, const char* name)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: FindClass
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:71,1
    - Dst: GetObjectClass
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:73,1
    - Dst: FindClass
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:75,1
    - Dst: GetMethodID
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:77,1
    - Dst: CallObjectMethod
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:79,1
    - Dst: GetMethodID
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:81,1
    - Dst: DeleteLocalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:87,1
    - Dst: DeleteLocalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:89,1
    - Dst: DeleteLocalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:91,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 31
    argCount: 2
    argNames:
    - env
    - name
    argTypes:
    - JNIEnv*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 93
    functionName: CacheAppClassLoader
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec_jni.c
    functionUses: 0
    functionsReached:
    - GetMethodID
    - FindClass
    - GetObjectClass
    - DeleteLocalRef
    - CallObjectMethod
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CacheAppClassLoader(JNIEnv* env, const char* name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GetEnv
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:102,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - vm
    - reserved
    argTypes:
    - JavaVM*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 107
    functionName: JNI_OnLoad
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec_jni.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - GetEnv
    linkageType: ''
    returnType: jint
    signature: jint JNI_OnLoad(JavaVM* vm, void* reserved)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GetEnv
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:112,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 114
    functionName: GetEnv
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec_jni.c
    functionUses: 18
    functionsReached:
    - GetEnv
    linkageType: ''
    returnType: JNIEnv
    signature: JNIEnv * GetEnv()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: GetJavaVM
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec_jni.c
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: JavaVM
    signature: JavaVM * GetJavaVM()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:132,1
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:133,1
    - Dst: DetachCurrentThread
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:133,1
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - param
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 135
    functionName: mcdec_exit_callback
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec_jni.c
    functionUses: 0
    functionsReached:
    - GetJavaVM
    - GF_LOG
    - DetachCurrentThread
    linkageType: ''
    returnType: u32
    signature: u32 mcdec_exit_callback(void * param)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:146,1
    - Dst: GetEnv
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:146,1
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:146,1
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:148,1
    - Dst: AttachCurrentThread
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:148,1
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:148,1
    - Dst: FindClass
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:154,1
    - Dst: NewGlobalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:155,1
    - Dst: FindClass
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:159,1
    - Dst: NewGlobalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:160,1
    - Dst: GetMethodID
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:166,1
    - Dst: GetMethodID
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:170,1
    - Dst: GetMethodID
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:174,1
    - Dst: GetMethodID
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:178,1
    - Dst: GetMethodID
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:182,1
    - Dst: NewObject
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:188,1
    - Dst: NewObject
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:192,1
    - Dst: ANativeWindow_fromSurface
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:195,1
    - Dst: CallVoidMethod
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:197,1
    - Dst: ExceptionCheck
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:198,1
    - Dst: HandleJNIError
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:199,1
    - Dst: DeleteLocalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:205,1
    - Dst: DeleteLocalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:207,1
    - Dst: DeleteLocalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:209,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 78
    argCount: 4
    argNames:
    - tex_id
    - window
    - surface_rendering
    - surfaceTex
    argTypes:
    - GLuint
    - ANativeWindow**
    - Bool*
    - GF_MCDecSurfaceTexture*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 212
    functionName: mcdec_create_surface
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec_jni.c
    functionUses: 1
    functionsReached:
    - GetMethodID
    - NewGlobalRef
    - HandleJNIError
    - CallVoidMethod
    - NewObject
    - GetJavaVM
    - AttachCurrentThread
    - GetEnv
    - FindClass
    - ANativeWindow_fromSurface
    - DeleteLocalRef
    - ExceptionCheck
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mcdec_create_surface(GLuint tex_id, ANativeWindow ** window,
      Bool * surface_rendering, GF_MCDecSurfaceTexture * surfaceTex)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: CallObjectMethod
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:220,1
    - Dst: ExceptionCheck
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:221,1
    - Dst: HandleJNIError
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:222,1
    - Dst: GetStringUTFChars
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:227,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:228,1
    - Dst: ReleaseStringUTFChars
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:229,1
    - Dst: DeleteLocalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:234,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 4
    argNames:
    - env
    - mediaCodecList
    - findId
    - mediaFomat
    argTypes:
    - JNIEnv*
    - jobject
    - jmethodID
    - jobject
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 237
    functionName: mcdec_get_decoder_name
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec_jni.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GetStringUTFChars
    - HandleJNIError
    - ReleaseStringUTFChars
    - CallObjectMethod
    - DeleteLocalRef
    - ExceptionCheck
    linkageType: ''
    returnType: char
    signature: char * mcdec_get_decoder_name(JNIEnv * env, jobject mediaCodecList,
      jmethodID findId, jobject mediaFomat)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:251,1
    - Dst: GetEnv
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:251,1
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:251,1
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:253,1
    - Dst: AttachCurrentThread
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:253,1
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:253,1
    - Dst: FindClass
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:259,1
    - Dst: NewGlobalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:260,1
    - Dst: FindClass
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:264,1
    - Dst: NewGlobalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:265,1
    - Dst: GetMethodID
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:271,1
    - Dst: GetMethodID
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:275,1
    - Dst: GetStaticMethodID
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:279,1
    - Dst: GetMethodID
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:283,1
    - Dst: NewObject
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:286,1
    - Dst: NewStringUTF
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:289,1
    - Dst: CallStaticObjectMethod
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:290,1
    - Dst: ExceptionCheck
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:291,1
    - Dst: HandleJNIError
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:292,1
    - Dst: mcdec_get_decoder_name
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:295,1
    - Dst: NewStringUTF
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:298,1
    - Dst: CallVoidMethod
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:299,1
    - Dst: ExceptionCheck
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:300,1
    - Dst: HandleJNIError
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:301,1
    - Dst: mcdec_get_decoder_name
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:304,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:307,1
    - Dst: DeleteLocalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:316,1
    - Dst: DeleteLocalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:318,1
    - Dst: DeleteLocalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:320,1
    - Dst: DeleteLocalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:322,1
    - Dst: DeleteLocalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:324,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 93
    argCount: 4
    argNames:
    - mime
    - width
    - height
    - is_adaptive
    argTypes:
    - char*
    - u32
    - u32
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 239
    functionDepth: 2
    functionLinenumber: 239
    functionLinenumberEnd: 328
    functionName: mcdec_find_decoder
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec_jni.c
    functionUses: 1
    functionsReached:
    - gf_free
    - GetMethodID
    - NewGlobalRef
    - HandleJNIError
    - ExceptionCheck
    - CallVoidMethod
    - NewObject
    - GetJavaVM
    - AttachCurrentThread
    - GetEnv
    - FindClass
    - NewStringUTF
    - mcdec_get_decoder_name
    - DeleteLocalRef
    - GetStaticMethodID
    - CallStaticObjectMethod
    linkageType: ''
    returnType: char
    signature: char * mcdec_find_decoder(const char * mime, u32 width, u32 height,  Bool
      * is_adaptive)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:335,1
    - Dst: GetEnv
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:335,1
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:335,1
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:337,1
    - Dst: AttachCurrentThread
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:337,1
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:337,1
    - Dst: CallVoidMethod
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:341,1
    - Dst: ExceptionCheck
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:342,1
    - Dst: HandleJNIError
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:343,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - surfaceTex
    argTypes:
    - GF_MCDecSurfaceTexture
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 330
    functionDepth: 1
    functionLinenumber: 330
    functionLinenumberEnd: 347
    functionName: mcdec_update_surface
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec_jni.c
    functionUses: 1
    functionsReached:
    - HandleJNIError
    - CallVoidMethod
    - GetJavaVM
    - AttachCurrentThread
    - GetEnv
    - ExceptionCheck
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mcdec_update_surface(GF_MCDecSurfaceTexture surfaceTex)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:360,1
    - Dst: GetEnv
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:360,1
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:360,1
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:362,1
    - Dst: AttachCurrentThread
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:362,1
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:362,1
    - Dst: NewFloatArray
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:366,1
    - Dst: CallVoidMethod
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:369,1
    - Dst: ExceptionCheck
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:370,1
    - Dst: HandleJNIError
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:371,1
    - Dst: GetArrayLength
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:374,1
    - Dst: GetFloatArrayElements
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:375,1
    - Dst: ExceptionCheck
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:376,1
    - Dst: HandleJNIError
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:377,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:381,1
    - Dst: ReleaseFloatArrayElements
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:384,1
    - Dst: ExceptionCheck
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:385,1
    - Dst: HandleJNIError
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:386,1
    - Dst: DeleteLocalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:393,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 40
    argCount: 2
    argNames:
    - mx
    - surfaceTex
    argTypes:
    - GF_Matrix*
    - GF_MCDecSurfaceTexture
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 349
    functionDepth: 1
    functionLinenumber: 349
    functionLinenumberEnd: 395
    functionName: mcdec_get_transform_matrix
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec_jni.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - HandleJNIError
    - ExceptionCheck
    - ReleaseFloatArrayElements
    - CallVoidMethod
    - GetArrayLength
    - GetFloatArrayElements
    - GetJavaVM
    - AttachCurrentThread
    - GetEnv
    - DeleteLocalRef
    - NewFloatArray
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mcdec_get_transform_matrix(GF_Matrix * mx, GF_MCDecSurfaceTexture
      surfaceTex)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:402,1
    - Dst: GetEnv
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:402,1
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:402,1
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:404,1
    - Dst: AttachCurrentThread
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:404,1
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:404,1
    - Dst: DeleteGlobalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:408,1
    - Dst: DeleteGlobalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:410,1
    - Dst: DeleteGlobalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:412,1
    - Dst: DeleteGlobalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:414,1
    - Dst: DeleteGlobalRef
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:416,1
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:420,1
    - Dst: DetachCurrentThread
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:420,1
    - Dst: GetJavaVM
      Src: /src/gpac/src/filters/dec_mediacodec_jni.c:420,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - surfaceTex
    argTypes:
    - GF_MCDecSurfaceTexture
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 397
    functionDepth: 0
    functionLinenumber: 397
    functionLinenumberEnd: 424
    functionName: mcdec_delete_surface
    functionSourceFile: /src/gpac/src/filters/dec_mediacodec_jni.c
    functionUses: 1
    functionsReached:
    - DetachCurrentThread
    - DeleteGlobalRef
    - GetJavaVM
    - AttachCurrentThread
    - GetEnv
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mcdec_delete_surface(GF_MCDecSurfaceTexture  surfaceTex)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_nalu.c:270,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/reframe_nalu.c:275,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/reframe_nalu.c:280,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_nalu.c:284,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_nalu.c:289,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_nalu.c:299,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_nalu.c:320,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_nalu.c:322,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_nalu.c:323,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_nalu.c:324,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_nalu.c:325,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_nalu.c:326,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_nalu.c:327,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_nalu.c:331,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_nalu.c:335,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_nalu.c:337,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_nalu.c:338,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_nalu.c:339,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_nalu.c:340,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_nalu.c:341,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_nalu.c:342,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_nalu.c:346,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_nalu.c:347,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_nalu.c:348,1
    - Dst: naludmx_reset_param_sets
      Src: /src/gpac/src/filters/reframe_nalu.c:357,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:362,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:363,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/reframe_nalu.c:364,1
    - Dst: gf_sei_init_from_hevc
      Src: /src/gpac/src/filters/reframe_nalu.c:369,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:372,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:373,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/reframe_nalu.c:374,1
    - Dst: gf_sei_init_from_vvc
      Src: /src/gpac/src/filters/reframe_nalu.c:379,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:382,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:383,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/reframe_nalu.c:384,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:386,1
    - Dst: gf_sei_init_from_avc
      Src: /src/gpac/src/filters/reframe_nalu.c:389,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_nalu.c:393,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_nalu.c:397,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_nalu.c:402,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_nalu.c:405,1
    - Dst: naludmx_finalize_au_flags
      Src: /src/gpac/src/filters/reframe_nalu.c:418,1
    - Dst: naludmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_nalu.c:420,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_nalu.c:428,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:431,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:431,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:432,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:432,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:434,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:435,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_nalu.c:436,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:437,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:437,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:439,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_nalu.c:439,1
    CyclomaticComplexity: 65
    EdgeCount: 65
    ICount: 151
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 266
    functionDepth: 4
    functionLinenumber: 266
    functionLinenumberEnd: 447
    functionName: naludmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_free
    - naludmx_reset_param_sets
    - GF_SAFEALLOC
    - gf_sei_init_from_avc
    - gf_sei_init_from_hevc
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - GF_FEVT_INIT
    - PROP_BOOL
    - gf_filter_get_udta
    - gf_filter_pid_copy_properties
    - GF_LOG
    - strstr
    - gf_filter_pid_send_event
    - gf_filter_pid_set_property
    - gf_filter_pid_get_property
    - naludmx_enqueue_or_dispatch
    - gf_filter_pid_remove
    - PROP_UINT
    - gf_sei_init_from_vvc
    - naludmx_finalize_au_flags
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err naludmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_nalu.c:453,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 4
    argNames:
    - bs
    - offset
    - fsize
    - sc_size
    argTypes:
    - GF_BitStream*
    - u64
    - u64
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 449
    functionDepth: 4
    functionLinenumber: 449
    functionLinenumberEnd: 474
    functionName: naludmx_next_start_code
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    linkageType: ''
    returnType: u64
    signature: u64 naludmx_next_start_code(GF_BitStream *bs, u64 offset, u64 fsize,
      u32 *sc_size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_nalu.c:479,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_nalu.c:484,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_nalu.c:491,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/reframe_nalu.c:497,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_nalu.c:502,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/filters/reframe_nalu.c:504,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 25
    argCount: 2
    argNames:
    - bs
    - avc
    argTypes:
    - GF_BitStream*
    - AVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 509
      start: 476
    functionDepth: 8
    functionLinenumber: 476
    functionLinenumberEnd: 509
    functionName: naludmx_probe_recovery_sei
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_bs_peek_bits
    - gf_bs_read_int
    - gf_bs_available
    - gf_bs_read_ue
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: void
    signature: void naludmx_probe_recovery_sei(GF_BitStream *bs, AVCState *avc)
  - BBCount: 73
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_nalu.c:525,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_nalu.c:526,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/reframe_nalu.c:535,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_nalu.c:538,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:540,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/reframe_nalu.c:554,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/reframe_nalu.c:557,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/reframe_nalu.c:560,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/reframe_nalu.c:564,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:566,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:567,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:568,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/reframe_nalu.c:569,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/filters/reframe_nalu.c:579,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/filters/reframe_nalu.c:580,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_nalu.c:581,1
    - Dst: naludmx_next_start_code
      Src: /src/gpac/src/filters/reframe_nalu.c:583,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:585,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:586,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_nalu.c:587,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/reframe_nalu.c:588,1
    - Dst: gf_hevc_parse_nalu_bs
      Src: /src/gpac/src/filters/reframe_nalu.c:604,1
    - Dst: gf_vvc_parse_nalu_bs
      Src: /src/gpac/src/filters/reframe_nalu.c:639,1
    - Dst: gf_avc_parse_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:660,1
    - Dst: naludmx_probe_recovery_sei
      Src: /src/gpac/src/filters/reframe_nalu.c:676,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_nalu.c:695,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/reframe_nalu.c:711,1
    - Dst: naludmx_next_start_code
      Src: /src/gpac/src/filters/reframe_nalu.c:712,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_nalu.c:712,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_nalu.c:717,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_nalu.c:719,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/reframe_nalu.c:720,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:721,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:722,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:723,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:732,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_nalu.c:732,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:734,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_nalu.c:734,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_nalu.c:743,1
    CyclomaticComplexity: 72
    EdgeCount: 72
    ICount: 210
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_NALUDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 745
      start: 511
    functionDepth: 9
    functionLinenumber: 511
    functionLinenumberEnd: 745
    functionName: naludmx_check_dur
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - gf_fileio_is_main_thread
    - naludmx_next_start_code
    - naludmx_probe_recovery_sei
    - PROP_FRAC64
    - gf_bs_available
    - gf_realloc
    - gf_hevc_parse_nalu_bs
    - strncmp
    - PROP_BOOL
    - gf_bs_enable_emulation_byte_removal
    - GF_LOG
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_from_file
    - gf_filter_pid_set_property
    - gf_fclose
    - gf_vvc_parse_nalu_bs
    - gf_filter_pid_get_property
    - gf_bs_del
    - gf_fopen_ex
    - gf_avc_parse_nalu
    - gf_opts_get_bool
    linkageType: ''
    returnType: void
    signature: void naludmx_check_dur(GF_Filter *filter, GF_NALUDmxCtx *ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_nalu.c:1075,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:1077,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:1078,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:1081,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:1082,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:1083,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:1084,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:1085,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:1086,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/reframe_nalu.c:1089,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_nalu.c:1090,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/reframe_nalu.c:1091,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/reframe_nalu.c:1091,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_NALUDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1092
      start: 1060
    functionDepth: 9
    functionLinenumber: 1060
    functionLinenumberEnd: 1092
    functionName: naludmx_set_hevc_linf
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_info_str
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_del
    - PROP_DATA_NO_COPY
    linkageType: ''
    returnType: void
    signature: void naludmx_set_hevc_linf(GF_NALUDmxCtx *ctx)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1113,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1116,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1123,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1126,1
    - Dst: gf_odf_hevc_cfg_new
      Src: /src/gpac/src/filters/reframe_nalu.c:1134,1
    - Dst: gf_odf_hevc_cfg_new
      Src: /src/gpac/src/filters/reframe_nalu.c:1135,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1141,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1143,1
    - Dst: naludmx_add_param_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:1154,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1157,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1160,1
    - Dst: naludmx_add_param_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:1217,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1221,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1223,1
    - Dst: naludmx_add_param_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:1227,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1231,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1233,1
    - Dst: naludmx_add_param_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:1237,1
    - Dst: naludmx_hevc_set_parall_type
      Src: /src/gpac/src/filters/reframe_nalu.c:1244,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/reframe_nalu.c:1245,1
    - Dst: naludmx_hevc_set_parall_type
      Src: /src/gpac/src/filters/reframe_nalu.c:1249,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/reframe_nalu.c:1250,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1251,1
    - Dst: naludmx_hevc_set_parall_type
      Src: /src/gpac/src/filters/reframe_nalu.c:1252,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/reframe_nalu.c:1253,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1260,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1262,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/reframe_nalu.c:1263,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1265,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1267,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/reframe_nalu.c:1268,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/reframe_nalu.c:1270,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/reframe_nalu.c:1271,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 144
    argCount: 11
    argNames:
    - ctx
    - dsi
    - dsi_size
    - dsi_enh
    - dsi_enh_size
    - max_width
    - max_height
    - max_enh_width
    - max_enh_height
    - sar
    - has_hevc_base
    argTypes:
    - GF_NALUDmxCtx*
    - u8**
    - u32*
    - u8**
    - u32*
    - u32*
    - u32*
    - u32*
    - u32*
    - GF_Fraction*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1273
      start: 1094
    functionDepth: 3
    functionLinenumber: 1094
    functionLinenumberEnd: 1273
    functionName: naludmx_create_hevc_decoder_config
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_odf_hevc_cfg_del
    - gf_list_get
    - gf_list_reset
    - gf_list_count
    - gf_odf_hevc_cfg_write
    - naludmx_hevc_set_parall_type
    - naludmx_add_param_nalu
    - gf_odf_hevc_cfg_new
    linkageType: ''
    returnType: Bool
    signature: Bool naludmx_create_hevc_decoder_config(GF_NALUDmxCtx *ctx, u8 **dsi,
      u32 *dsi_size, u8 **dsi_enh, u32 *dsi_enh_size, u32 *max_width, u32 *max_height,
      u32 *max_enh_width, u32 *max_enh_height, GF_Fraction *sar, Bool *has_hevc_base)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1292,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1295,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1303,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1306,1
    - Dst: gf_odf_vvc_cfg_new
      Src: /src/gpac/src/filters/reframe_nalu.c:1315,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1320,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1322,1
    - Dst: naludmx_add_param_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:1331,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1334,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1337,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:1362,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/reframe_nalu.c:1363,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:1365,1
    - Dst: gf_media_get_reduced_frame_rate
      Src: /src/gpac/src/filters/reframe_nalu.c:1389,1
    - Dst: naludmx_add_param_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:1406,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1409,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1411,1
    - Dst: naludmx_add_param_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:1415,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1418,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1420,1
    - Dst: naludmx_add_param_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:1424,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1427,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1429,1
    - Dst: naludmx_add_param_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:1433,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1436,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1438,1
    - Dst: naludmx_add_param_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:1442,1
    - Dst: gf_odf_vvc_cfg_write
      Src: /src/gpac/src/filters/reframe_nalu.c:1448,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1454,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1456,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/reframe_nalu.c:1457,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/reframe_nalu.c:1459,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 145
    argCount: 11
    argNames:
    - ctx
    - dsi
    - dsi_size
    - dsi_enh
    - dsi_enh_size
    - max_width
    - max_height
    - max_enh_width
    - max_enh_height
    - sar
    - has_vvc_base
    argTypes:
    - GF_NALUDmxCtx*
    - u8**
    - u32*
    - u8**
    - u32*
    - u32*
    - u32*
    - u32*
    - u32*
    - GF_Fraction*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1461
      start: 1276
    functionDepth: 3
    functionLinenumber: 1276
    functionLinenumberEnd: 1461
    functionName: naludmx_create_vvc_decoder_config
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_odf_vvc_cfg_write
    - gf_odf_vvc_cfg_del
    - gf_list_reset
    - memcpy
    - gf_list_count
    - gf_odf_vvc_cfg_new
    - gf_media_get_reduced_frame_rate
    - naludmx_add_param_nalu
    - gf_malloc
    linkageType: ''
    returnType: Bool
    signature: Bool naludmx_create_vvc_decoder_config(GF_NALUDmxCtx *ctx, u8 **dsi,
      u32 *dsi_size, u8 **dsi_enh, u32 *dsi_enh_size, u32 *max_width, u32 *max_height,
      u32 *max_enh_width, u32 *max_enh_height, GF_Fraction *sar, Bool *has_vvc_base)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1477,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1477,1
    - Dst: gf_odf_avc_cfg_new
      Src: /src/gpac/src/filters/reframe_nalu.c:1480,1
    - Dst: gf_odf_avc_cfg_new
      Src: /src/gpac/src/filters/reframe_nalu.c:1481,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1486,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1489,1
    - Dst: gf_avcc_use_extensions
      Src: /src/gpac/src/filters/reframe_nalu.c:1515,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:1565,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/reframe_nalu.c:1579,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1583,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1585,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:1586,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/reframe_nalu.c:1588,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1592,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1594,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/reframe_nalu.c:1596,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1600,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:1602,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/reframe_nalu.c:1604,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/filters/reframe_nalu.c:1611,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/filters/reframe_nalu.c:1613,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1614,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/filters/reframe_nalu.c:1615,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/reframe_nalu.c:1618,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/reframe_nalu.c:1619,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/reframe_nalu.c:1620,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/reframe_nalu.c:1621,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/reframe_nalu.c:1622,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/reframe_nalu.c:1623,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/reframe_nalu.c:1624,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/reframe_nalu.c:1625,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 133
    argCount: 10
    argNames:
    - ctx
    - dsi
    - dsi_size
    - dsi_enh
    - dsi_enh_size
    - max_width
    - max_height
    - max_enh_width
    - max_enh_height
    - sar
    argTypes:
    - GF_NALUDmxCtx*
    - u8**
    - u32*
    - u8**
    - u32*
    - u32*
    - u32*
    - u32*
    - u32*
    - GF_Fraction*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1631
      start: 1463
    functionDepth: 3
    functionLinenumber: 1463
    functionLinenumberEnd: 1631
    functionName: naludmx_create_avc_decoder_config
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_new
    - gf_odf_avc_cfg_write
    - gf_avcc_use_extensions
    - gf_list_reset
    - GF_LOG
    - gf_odf_avc_cfg_del
    - gf_list_count
    - gf_list_add
    - gf_odf_avc_cfg_new
    linkageType: ''
    returnType: Bool
    signature: Bool naludmx_create_avc_decoder_config(GF_NALUDmxCtx *ctx, u8 **dsi,
      u32 *dsi_size, u8 **dsi_enh, u32 *dsi_enh_size, u32 *max_width, u32 *max_height,
      u32 *max_enh_width, u32 *max_enh_height, GF_Fraction *sar)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: naludmx_finalize_au_flags
      Src: /src/gpac/src/filters/reframe_nalu.c:1636,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_NALUDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1645
      start: 1633
    functionDepth: 1
    functionLinenumber: 1633
    functionLinenumberEnd: 1645
    functionName: naludmx_end_access_unit
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - naludmx_finalize_au_flags
    linkageType: ''
    returnType: void
    signature: void naludmx_end_access_unit(GF_NALUDmxCtx *ctx)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1659,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/reframe_nalu.c:1659,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/reframe_nalu.c:1660,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1666,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/reframe_nalu.c:1666,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/reframe_nalu.c:1667,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 2
    argNames:
    - ctx
    - reset_crc
    argTypes:
    - GF_NALUDmxCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1669
      start: 1647
    functionDepth: 1
    functionLinenumber: 1647
    functionLinenumberEnd: 1669
    functionName: naludmx_update_clli_mdcv
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_crc_32
    - gf_filter_pid_set_property
    - PROP_DATA
    linkageType: ''
    returnType: void
    signature: void naludmx_update_clli_mdcv(GF_NALUDmxCtx *ctx, Bool reset_crc)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: gf_dolby_vision_level
      Src: /src/gpac/src/filters/reframe_nalu.c:1687,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:1691,1
    - Dst: memset
      Src: /src/gpac/src/filters/reframe_nalu.c:1792,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_nalu.c:1793,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/reframe_nalu.c:1794,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/reframe_nalu.c:1795,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:1796,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:1797,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:1798,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:1799,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:1800,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:1801,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:1803,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/reframe_nalu.c:1804,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/reframe_nalu.c:1805,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/reframe_nalu.c:1806,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/reframe_nalu.c:1807,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_nalu.c:1808,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1809,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/reframe_nalu.c:1809,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 109
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_NALUDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1810
      start: 1671
    functionDepth: 5
    functionLinenumber: 1671
    functionLinenumberEnd: 1810
    functionName: naludmx_set_dolby_vision
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - GF_LOG
    - gf_bs_write_int
    - gf_dolby_vision_level
    - gf_bs_del
    - memset
    - PROP_DATA
    - gf_bs_write_u32
    - gf_filter_pid_set_property
    - gf_bs_write_u8
    linkageType: ''
    returnType: void
    signature: void naludmx_set_dolby_vision(GF_NALUDmxCtx *ctx)
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1828,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1828,1
    - Dst: naludmx_create_hevc_decoder_config
      Src: /src/gpac/src/filters/reframe_nalu.c:1846,1
    - Dst: naludmx_create_vvc_decoder_config
      Src: /src/gpac/src/filters/reframe_nalu.c:1848,1
    - Dst: naludmx_create_avc_decoder_config
      Src: /src/gpac/src/filters/reframe_nalu.c:1850,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/reframe_nalu.c:1855,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/reframe_nalu.c:1856,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:1859,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:1860,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_nalu.c:1866,1
    - Dst: naludmx_check_dur
      Src: /src/gpac/src/filters/reframe_nalu.c:1868,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:1876,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:1877,1
    - Dst: naludmx_end_access_unit
      Src: /src/gpac/src/filters/reframe_nalu.c:1882,1
    - Dst: naludmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_nalu.c:1889,1
    - Dst: naludmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_nalu.c:1893,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1896,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:1897,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_nalu.c:1901,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1905,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:1905,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1906,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1907,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1908,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:1908,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1910,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_nalu.c:1910,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1918,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:1918,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1919,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:1919,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1921,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:1921,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1922,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:1922,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1925,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/reframe_nalu.c:1925,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1927,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1930,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1931,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/reframe_nalu.c:1931,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1933,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:1933,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1934,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_nalu.c:1934,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1939,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:1939,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1940,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/reframe_nalu.c:1940,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1942,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:1942,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1943,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/reframe_nalu.c:1943,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1944,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/reframe_nalu.c:1944,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1948,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:1948,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:1951,1
    - Dst: naludmx_set_hevc_oinf
      Src: /src/gpac/src/filters/reframe_nalu.c:1952,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:1954,1
    - Dst: naludmx_set_hevc_linf
      Src: /src/gpac/src/filters/reframe_nalu.c:1956,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1959,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_nalu.c:1959,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1962,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:1962,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1965,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_nalu.c:1965,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1970,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:1970,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1971,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:1971,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1972,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:1972,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1973,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_nalu.c:1973,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1975,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:1975,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1986,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:1986,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1987,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:1987,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1988,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:1988,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1989,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_nalu.c:1989,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1995,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1996,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1997,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:1998,1
    - Dst: naludmx_update_clli_mdcv
      Src: /src/gpac/src/filters/reframe_nalu.c:2001,1
    - Dst: naludmx_set_dolby_vision
      Src: /src/gpac/src/filters/reframe_nalu.c:2003,1
    CyclomaticComplexity: 61
    EdgeCount: 61
    ICount: 154
    argCount: 4
    argNames:
    - filter
    - ctx
    - force_au_flush
    - next_is_idr
    argTypes:
    - GF_Filter*
    - GF_NALUDmxCtx*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2004
      start: 1812
    functionDepth: 10
    functionLinenumber: 1812
    functionLinenumberEnd: 2004
    functionName: naludmx_check_pid
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_free
    - naludmx_update_clli_mdcv
    - naludmx_create_hevc_decoder_config
    - gf_list_count
    - PROP_DATA_NO_COPY
    - PROP_FRAC64
    - naludmx_set_dolby_vision
    - gf_filter_pid_new
    - PROP_FRAC
    - naludmx_create_vvc_decoder_config
    - naludmx_set_hevc_oinf
    - PROP_BOOL
    - gf_crc_32
    - gf_filter_pid_copy_properties
    - naludmx_check_dur
    - GF_LOG
    - gf_filter_pid_set_property
    - naludmx_create_avc_decoder_config
    - naludmx_enqueue_or_dispatch
    - PROP_UINT
    - gf_filter_pid_get_property
    - naludmx_set_hevc_linf
    - naludmx_end_access_unit
    linkageType: ''
    returnType: void
    signature: void naludmx_check_pid(GF_Filter *filter, GF_NALUDmxCtx *ctx, Bool
      force_au_flush, Bool next_is_idr)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_nalu.c:2011,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2035,1
    - Dst: naludmx_check_dur
      Src: /src/gpac/src/filters/reframe_nalu.c:2036,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_nalu.c:2059,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/reframe_nalu.c:2060,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_nalu.c:2071,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_nalu.c:2073,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:2085,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/reframe_nalu.c:2086,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/reframe_nalu.c:2087,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_nalu.c:2089,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 78
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2103
      start: 2006
    functionDepth: 10
    functionLinenumber: 2006
    functionLinenumberEnd: 2103
    functionName: naludmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_back
    - naludmx_check_dur
    - GF_LOG
    - gf_filter_pck_discard
    - GF_FEVT_INIT
    - gf_filter_pck_unref
    - gf_list_count
    - gf_filter_pid_send_event
    - gf_filter_pid_is_eos
    - gf_filter_post_process_task
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool naludmx_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:2107,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:2115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_NALUDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2119
      start: 2105
    functionDepth: 1
    functionLinenumber: 2105
    functionLinenumberEnd: 2119
    functionName: naludmx_update_time
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE naludmx_update_time(GF_NALUDmxCtx *ctx)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/reframe_nalu.c:2129,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:2134,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:2149,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:2153,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:2159,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:2173,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:2177,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:2181,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:2185,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:2202,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:2206,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:2211,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:2213,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:2224,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:2226,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_nalu.c:2241,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:2242,1
    - Dst: naludmx_end_access_unit
      Src: /src/gpac/src/filters/reframe_nalu.c:2249,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/reframe_nalu.c:2255,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/reframe_nalu.c:2257,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:2259,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:2262,1
    - Dst: naludmx_end_access_unit
      Src: /src/gpac/src/filters/reframe_nalu.c:2270,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/reframe_nalu.c:2272,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 146
    argCount: 7
    argNames:
    - ctx
    - data
    - size
    - ps_type
    - ps_id
    - tid
    - lid
    argTypes:
    - GF_NALUDmxCtx*
    - char*
    - u32
    - u32
    - s32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2273
      start: 2121
    functionDepth: 2
    functionLinenumber: 2121
    functionLinenumberEnd: 2273
    functionName: naludmx_queue_param_set
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_new
    - gf_assert
    - GF_SAFEALLOC
    - memcpy
    - gf_list_count
    - gf_list_add
    - naludmx_end_access_unit
    - gf_crc_32
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void naludmx_queue_param_set(GF_NALUDmxCtx *ctx, char *data, u32 size,
      u32 ps_type, s32 ps_id, u32 tid, u32 lid)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_nalu.c:2283,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframe_nalu.c:2285,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_nalu.c:2292,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2295,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_nalu.c:2304,1
    - Dst: gf_filter_pck_set_roll_info
      Src: /src/gpac/src/filters/reframe_nalu.c:2305,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_nalu.c:2310,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/reframe_nalu.c:2315,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_nalu.c:2319,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:2322,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_nalu.c:2323,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/src/filters/reframe_nalu.c:2325,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:2329,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/reframe_nalu.c:2329,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/reframe_nalu.c:2343,1
    - Dst: naludmx_update_clli_mdcv
      Src: /src/gpac/src/filters/reframe_nalu.c:2350,1
    - Dst: naludmx_update_clli_mdcv
      Src: /src/gpac/src/filters/reframe_nalu.c:2354,1
    - Dst: gf_sei_load_from_state
      Src: /src/gpac/src/filters/reframe_nalu.c:2358,1
    - Dst: naludmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_nalu.c:2364,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 68
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_NALUDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2367
      start: 2275
    functionDepth: 4
    functionLinenumber: 2275
    functionLinenumberEnd: 2367
    functionName: naludmx_finalize_au_flags
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 2
    functionsReached:
    - gf_assert
    - gf_filter_pck_set_property
    - naludmx_update_clli_mdcv
    - gf_sei_load_from_state
    - naludmx_enqueue_or_dispatch
    - gf_filter_pck_set_cts
    - GF_LOG
    - gf_filter_pck_set_interlaced
    - gf_filter_pck_set_roll_info
    - gf_filter_pck_set_sap
    - gf_filter_pck_get_cts
    - PROP_DATA
    - gf_filter_pck_set_dependency_flags
    - gf_filter_pck_set_carousel_version
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: void
    signature: void naludmx_finalize_au_flags(GF_NALUDmxCtx *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2374,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - size
    argTypes:
    - GF_NALUDmxCtx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2377
      start: 2369
    functionDepth: 1
    functionLinenumber: 2369
    functionLinenumberEnd: 2377
    functionName: naludmx_update_nalu_maxsize
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void naludmx_update_nalu_maxsize(GF_NALUDmxCtx *ctx, u32 size)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_nalu.c:2381,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_nalu.c:2385,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_nalu.c:2386,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:2387,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_nalu.c:2392,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_nalu.c:2394,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_nalu.c:2398,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_nalu.c:2399,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_nalu.c:2402,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_nalu.c:2404,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/src/filters/reframe_nalu.c:2407,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_nalu.c:2409,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/reframe_nalu.c:2411,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_nalu.c:2414,1
    - Dst: naludmx_update_time
      Src: /src/gpac/src/filters/reframe_nalu.c:2418,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:2441,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/reframe_nalu.c:2441,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:2447,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_nalu.c:2451,1
    - Dst: naludmx_update_nalu_maxsize
      Src: /src/gpac/src/filters/reframe_nalu.c:2453,1
    - Dst: naludmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_nalu.c:2455,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 64
    argCount: 5
    argNames:
    - ctx
    - nal_size
    - skip_nal_field
    - au_start
    - pck_data
    argTypes:
    - GF_NALUDmxCtx*
    - u32
    - Bool
    - Bool*
    - u8**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2458
      start: 2379
    functionDepth: 5
    functionLinenumber: 2379
    functionLinenumberEnd: 2458
    functionName: naludmx_start_nalu
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - naludmx_update_nalu_maxsize
    - gf_filter_pck_set_property
    - gf_filter_pck_new_alloc
    - naludmx_enqueue_or_dispatch
    - gf_bs_new
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - PROP_SINT
    - gf_bs_write_int
    - gf_filter_pck_merge_properties
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_set_framing
    - naludmx_update_time
    - gf_filter_pck_set_sap
    - gf_filter_pck_set_carousel_version
    - gf_bs_reassign_buffer
    linkageType: ''
    returnType: GF_FilterPacket
    signature: GF_FilterPacket *naludmx_start_nalu(GF_NALUDmxCtx *ctx, u32 nal_size,
      Bool skip_nal_field, Bool *au_start, u8 **pck_data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_nalu.c:2464,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:2466,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_nalu.c:2467,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/reframe_nalu.c:2468,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/reframe_nalu.c:2469,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/reframe_nalu.c:2470,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/reframe_nalu.c:2471,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/reframe_nalu.c:2472,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - subs_size
    - subs_priority
    - subs_reserved
    argTypes:
    - GF_NALUDmxCtx*
    - u32
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2475
      start: 2460
    functionDepth: 4
    functionLinenumber: 2460
    functionLinenumberEnd: 2475
    functionName: naludmx_add_subsample
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_bs_write_u32
    - gf_bs_reassign_buffer
    - gf_bs_write_u8
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void naludmx_add_subsample(GF_NALUDmxCtx *ctx, u32 subs_size, u8 subs_priority,
      u32 subs_reserved)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_nalu.c:2481,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_nalu.c:2484,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_nalu.c:2485,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:2486,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:2487,1
    - Dst: gf_avc_reformat_sei
      Src: /src/gpac/src/filters/reframe_nalu.c:2490,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_nalu.c:2492,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:2493,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 4
    argNames:
    - ctx
    - data
    - size
    - avc_sei_rewrite
    argTypes:
    - GF_NALUDmxCtx*
    - u8*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2498
      start: 2477
    functionDepth: 7
    functionLinenumber: 2477
    functionLinenumberEnd: 2498
    functionName: naludmx_push_prefix
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_seek
    - memcpy
    - gf_bs_write_int
    - gf_avc_reformat_sei
    - gf_bs_reassign_buffer
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void naludmx_push_prefix(GF_NALUDmxCtx *ctx, u8 *data, u32 size, Bool
      avc_sei_rewrite)
  - BBCount: 66
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_nalu.c:2509,1
    - Dst: gf_hevc_parse_nalu_bs
      Src: /src/gpac/src/filters/reframe_nalu.c:2510,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2515,1
    - Dst: gf_hevc_read_vps_ex
      Src: /src/gpac/src/filters/reframe_nalu.c:2529,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2534,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2536,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2543,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2545,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2552,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2554,1
    - Dst: gf_hevc_parse_sei
      Src: /src/gpac/src/filters/reframe_nalu.c:2559,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2561,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:2564,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:2564,1
    - Dst: naludmx_push_prefix
      Src: /src/gpac/src/filters/reframe_nalu.c:2568,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:2574,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:2574,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:2575,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:2575,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:2576,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:2576,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:2639,1
    - Dst: naludmx_set_dolby_vision
      Src: /src/gpac/src/filters/reframe_nalu.c:2658,1
    - Dst: naludmx_set_dolby_vision
      Src: /src/gpac/src/filters/reframe_nalu.c:2667,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2673,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 181
    argCount: 6
    argNames:
    - ctx
    - data
    - size
    - skip_nal
    - is_slice
    - is_islice
    argTypes:
    - GF_NALUDmxCtx*
    - char*
    - u32
    - Bool*
    - u32*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2689
      start: 2500
    functionDepth: 8
    functionLinenumber: 2500
    functionLinenumberEnd: 2689
    functionName: naludmx_parse_nal_hevc
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - PROP_UINT
    - gf_hevc_parse_nalu_bs
    - naludmx_push_prefix
    - GF_LOG
    - memcpy
    - gf_filter_pid_set_property
    - naludmx_set_dolby_vision
    - gf_hevc_parse_sei
    - gf_hevc_read_vps_ex
    - naludmx_queue_param_set
    - gf_bs_reassign_buffer
    linkageType: ''
    returnType: s32
    signature: s32 naludmx_parse_nal_hevc(GF_NALUDmxCtx *ctx, char *data, u32 size,
      Bool *skip_nal, u32 *is_slice, Bool *is_islice)
  - BBCount: 55
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_nalu.c:2700,1
    - Dst: gf_vvc_parse_nalu_bs
      Src: /src/gpac/src/filters/reframe_nalu.c:2701,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2706,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2726,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2728,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2735,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2737,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2744,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2746,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2752,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2757,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2765,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2767,1
    - Dst: naludmx_push_prefix
      Src: /src/gpac/src/filters/reframe_nalu.c:2772,1
    - Dst: gf_vvc_parse_sei
      Src: /src/gpac/src/filters/reframe_nalu.c:2777,1
    - Dst: naludmx_push_prefix
      Src: /src/gpac/src/filters/reframe_nalu.c:2781,1
    - Dst: gf_vvc_parse_sei
      Src: /src/gpac/src/filters/reframe_nalu.c:2789,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:2846,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2860,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 170
    argCount: 6
    argNames:
    - ctx
    - data
    - size
    - skip_nal
    - is_slice
    - is_islice
    argTypes:
    - GF_NALUDmxCtx*
    - char*
    - u32
    - Bool*
    - u32*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2876
      start: 2692
    functionDepth: 8
    functionLinenumber: 2692
    functionLinenumberEnd: 2876
    functionName: naludmx_parse_nal_vvc
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_vvc_parse_nalu_bs
    - naludmx_push_prefix
    - GF_LOG
    - memcpy
    - gf_vvc_parse_sei
    - gf_bs_reassign_buffer
    - naludmx_queue_param_set
    linkageType: ''
    returnType: s32
    signature: s32 naludmx_parse_nal_vvc(GF_NALUDmxCtx *ctx, char *data, u32 size,
      Bool *skip_nal, u32 *is_slice, Bool *is_islice)
  - BBCount: 56
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_nalu.c:2884,1
    - Dst: gf_avc_parse_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:2886,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2889,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2901,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2904,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2912,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2914,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2922,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2924,1
    - Dst: naludmx_push_prefix
      Src: /src/gpac/src/filters/reframe_nalu.c:2931,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:2949,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:2999,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:3000,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/reframe_nalu.c:3003,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:3005,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/reframe_nalu.c:3006,1
    - Dst: naludmx_set_dolby_vision
      Src: /src/gpac/src/filters/reframe_nalu.c:3045,1
    - Dst: naludmx_set_dolby_vision
      Src: /src/gpac/src/filters/reframe_nalu.c:3054,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 163
    argCount: 7
    argNames:
    - ctx
    - data
    - size
    - nal_type
    - skip_nal
    - is_slice
    - is_islice
    argTypes:
    - GF_NALUDmxCtx*
    - char*
    - u32
    - u32
    - Bool*
    - u32*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3059
      start: 2878
    functionDepth: 8
    functionLinenumber: 2878
    functionLinenumberEnd: 3059
    functionName: naludmx_parse_nal_avc
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_new
    - naludmx_push_prefix
    - GF_LOG
    - memcpy
    - gf_list_count
    - gf_list_add
    - gf_avc_parse_nalu
    - naludmx_set_dolby_vision
    - gf_bs_reassign_buffer
    - naludmx_queue_param_set
    - gf_list_rem
    linkageType: ''
    returnType: s32
    signature: s32 naludmx_parse_nal_avc(GF_NALUDmxCtx *ctx, char *data, u32 size,
      u32 nal_type, Bool *skip_nal, u32 *is_slice, Bool *is_islice)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_nalu.c:3066,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframe_nalu.c:3072,1
    - Dst: gf_filter_pid_get_clock_info
      Src: /src/gpac/src/filters/reframe_nalu.c:3078,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_nalu.c:3099,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:3100,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/reframe_nalu.c:3100,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_nalu.c:3103,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:3104,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/reframe_nalu.c:3104,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/reframe_nalu.c:3111,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_nalu.c:3112,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_nalu.c:3114,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/reframe_nalu.c:3117,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 50
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - GF_NALUDmxCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3119
      start: 3061
    functionDepth: 1
    functionLinenumber: 3061
    functionLinenumberEnd: 3119
    functionName: naldmx_switch_timestamps
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pid_get_clock_info
    - PROP_FRAC
    - gf_filter_pck_get_framing
    - gf_filter_pck_unref
    - gf_filter_pck_ref_props
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_duration
    - gf_filter_pid_set_property
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: void
    signature: void naldmx_switch_timestamps(GF_NALUDmxCtx *ctx, GF_FilterPacket *pck)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: naldmx_switch_timestamps
      Src: /src/gpac/src/filters/reframe_nalu.c:3129,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_nalu.c:3131,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 5
    argNames:
    - ctx
    - nalu_store_before
    - bytes_drop
    - drop_packet
    - pck
    argTypes:
    - GF_NALUDmxCtx*
    - u32*
    - u32
    - Bool*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3136
      start: 3121
    functionDepth: 2
    functionLinenumber: 3121
    functionLinenumberEnd: 3136
    functionName: naldmx_check_timestamp_switch
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - naldmx_switch_timestamps
    - gf_filter_pid_drop_packet
    linkageType: ''
    returnType: void
    signature: void naldmx_check_timestamp_switch(GF_NALUDmxCtx *ctx, u32 *nalu_store_before,
      u32 bytes_drop, Bool *drop_packet, GF_FilterPacket *pck)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3141,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3143,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3145,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3147,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3151,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3153,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3155,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 7
    argNames:
    - udta
    - field_name
    - nb_bits
    - field_val
    - idx1
    - idx2
    - idx3
    argTypes:
    - void*
    - char*
    - u32
    - u64
    - s32
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3156
      start: 3138
    functionDepth: 1
    functionLinenumber: 3138
    functionLinenumberEnd: 3156
    functionName: naldmx_bs_log
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void naldmx_bs_log(void *udta, const char *field_name, u32 nb_bits,
      u64 field_val, s32 idx1, s32 idx2, s32 idx3)
  - BBCount: 195
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_nalu.c:3161,1
    - Dst: naludmx_check_dur
      Src: /src/gpac/src/filters/reframe_nalu.c:3179,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_nalu.c:3181,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_nalu.c:3183,1
    - Dst: naludmx_finalize_au_flags
      Src: /src/gpac/src/filters/reframe_nalu.c:3194,1
    - Dst: naludmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_nalu.c:3200,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_nalu.c:3201,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/reframe_nalu.c:3205,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:3205,1
    - Dst: naludmx_set_hevc_oinf
      Src: /src/gpac/src/filters/reframe_nalu.c:3207,1
    - Dst: naludmx_set_hevc_linf
      Src: /src/gpac/src/filters/reframe_nalu.c:3208,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/reframe_nalu.c:3209,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:3209,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_nalu.c:3212,1
    - Dst: naldmx_switch_timestamps
      Src: /src/gpac/src/filters/reframe_nalu.c:3232,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_nalu.c:3237,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_nalu.c:3240,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_nalu.c:3246,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:3249,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/reframe_nalu.c:3257,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:3260,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_nalu.c:3265,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_nalu.c:3271,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/reframe_nalu.c:3274,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/reframe_nalu.c:3275,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_nalu.c:3279,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:3282,1
    - Dst: gf_media_nalu_next_start_code
      Src: /src/gpac/src/filters/reframe_nalu.c:3318,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:3327,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:3331,1
    - Dst: naldmx_check_timestamp_switch
      Src: /src/gpac/src/filters/reframe_nalu.c:3335,1
    - Dst: gf_media_nalu_next_start_code
      Src: /src/gpac/src/filters/reframe_nalu.c:3454,1
    - Dst: naludmx_parse_nal_hevc
      Src: /src/gpac/src/filters/reframe_nalu.c:3468,1
    - Dst: naludmx_parse_nal_vvc
      Src: /src/gpac/src/filters/reframe_nalu.c:3470,1
    - Dst: naludmx_parse_nal_avc
      Src: /src/gpac/src/filters/reframe_nalu.c:3472,1
    - Dst: naludmx_end_access_unit
      Src: /src/gpac/src/filters/reframe_nalu.c:3483,1
    - Dst: naludmx_check_pid
      Src: /src/gpac/src/filters/reframe_nalu.c:3488,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:3494,1
    - Dst: naldmx_check_timestamp_switch
      Src: /src/gpac/src/filters/reframe_nalu.c:3497,1
    - Dst: naludmx_check_pid
      Src: /src/gpac/src/filters/reframe_nalu.c:3501,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:3505,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3506,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_nalu.c:3509,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3528,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3530,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:3533,1
    - Dst: naldmx_check_timestamp_switch
      Src: /src/gpac/src/filters/reframe_nalu.c:3536,1
    - Dst: gf_hevc_slice_is_IDR
      Src: /src/gpac/src/filters/reframe_nalu.c:3563,1
    - Dst: gf_hevc_slice_is_intra
      Src: /src/gpac/src/filters/reframe_nalu.c:3567,1
    - Dst: gf_hevc_slice_is_IDR
      Src: /src/gpac/src/filters/reframe_nalu.c:3570,1
    - Dst: gf_vvc_slice_is_ref
      Src: /src/gpac/src/filters/reframe_nalu.c:3603,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3686,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_nalu.c:3697,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:3699,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:3701,1
    - Dst: gf_avc_slice_is_intra
      Src: /src/gpac/src/filters/reframe_nalu.c:3722,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3770,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/reframe_nalu.c:3786,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_nalu.c:3787,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:3808,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:3811,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:3812,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframe_nalu.c:3813,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_nalu.c:3815,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_nalu.c:3820,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3833,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3871,1
    - Dst: naludmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_nalu.c:3889,1
    - Dst: naludmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_nalu.c:3922,1
    - Dst: naludmx_start_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:3968,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:3969,1
    - Dst: naludmx_add_subsample
      Src: /src/gpac/src/filters/reframe_nalu.c:3972,1
    - Dst: naludmx_start_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:3977,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:3978,1
    - Dst: naludmx_add_subsample
      Src: /src/gpac/src/filters/reframe_nalu.c:3980,1
    - Dst: naludmx_start_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:3986,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:3987,1
    - Dst: naludmx_add_subsample
      Src: /src/gpac/src/filters/reframe_nalu.c:3989,1
    - Dst: naludmx_start_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:3995,1
    - Dst: naludmx_add_subsample
      Src: /src/gpac/src/filters/reframe_nalu.c:4000,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:4005,1
    - Dst: naldmx_check_timestamp_switch
      Src: /src/gpac/src/filters/reframe_nalu.c:4015,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/reframe_nalu.c:4019,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:4021,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:4022,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_nalu.c:4024,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4031,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:4034,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_nalu.c:4035,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_nalu.c:4041,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/reframe_nalu.c:4048,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/reframe_nalu.c:4051,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/reframe_nalu.c:4052,1
    - Dst: naludmx_finalize_au_flags
      Src: /src/gpac/src/filters/reframe_nalu.c:4056,1
    - Dst: naludmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_nalu.c:4058,1
    CyclomaticComplexity: 237
    EdgeCount: 237
    ICount: 670
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4061
      start: 3159
    functionDepth: 11
    functionLinenumber: 3159
    functionLinenumberEnd: 4061
    functionName: naludmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_log_tool_level_on
    - gf_list_find
    - gf_list_count
    - gf_media_nalu_next_start_code
    - naludmx_parse_nal_avc
    - gf_filter_pid_get_packet
    - gf_realloc
    - gf_hevc_slice_is_intra
    - gf_assert
    - naludmx_parse_nal_hevc
    - gf_list_get
    - gf_avc_slice_is_intra
    - memcpy
    - naldmx_check_timestamp_switch
    - sprintf
    - naludmx_set_hevc_oinf
    - gf_filter_pck_get_cts
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_bs_set_logger
    - naludmx_end_access_unit
    - memmove
    - naludmx_check_dur
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_update_status
    - gf_filter_pid_would_block
    - gf_filter_pid_set_eos
    - naludmx_start_nalu
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - gf_filter_pid_set_info_str
    - gf_filter_pid_set_info
    - naludmx_enqueue_or_dispatch
    - PROP_UINT
    - naludmx_add_subsample
    - naldmx_switch_timestamps
    - gf_filter_pck_set_cts
    - gf_filter_pck_unref
    - naludmx_set_hevc_linf
    - naludmx_check_pid
    - gf_hevc_slice_is_IDR
    - gf_filter_pck_get_byte_offset
    - gf_filter_reporting_enabled
    - gf_vvc_slice_is_ref
    - naludmx_finalize_au_flags
    - naludmx_parse_nal_vvc
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err naludmx_process(GF_Filter *filter)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_nalu.c:4065,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:4066,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:4067,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4084,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4094,1
    - Dst: gf_sei_loader_new
      Src: /src/gpac/src/filters/reframe_nalu.c:4097,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4099
      start: 4063
    functionDepth: 2
    functionLinenumber: 4063
    functionLinenumberEnd: 4099
    functionName: naludmx_initialize
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_new
    - gf_sei_loader_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err naludmx_initialize(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:4104,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/reframe_nalu.c:4105,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:4106,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:4107,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/reframe_nalu.c:4111,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ps
    - do_free
    argTypes:
    - GF_List*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4112
      start: 4101
    functionDepth: 3
    functionLinenumber: 4101
    functionLinenumberEnd: 4112
    functionName: naludmx_del_param_list
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_pop_back
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void naludmx_del_param_list(GF_List *ps, Bool do_free)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4123,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4130,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4132,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4135,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:4140,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:4143,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4146,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4150,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4154,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4159,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4161,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 40
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_NALUDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4164
      start: 4114
    functionDepth: 1
    functionLinenumber: 4114
    functionLinenumberEnd: 4164
    functionName: naludmx_log_stats
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void naludmx_log_stats(GF_NALUDmxCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: naludmx_del_param_list
      Src: /src/gpac/src/filters/reframe_nalu.c:4168,1
    - Dst: naludmx_del_param_list
      Src: /src/gpac/src/filters/reframe_nalu.c:4169,1
    - Dst: naludmx_del_param_list
      Src: /src/gpac/src/filters/reframe_nalu.c:4170,1
    - Dst: naludmx_del_param_list
      Src: /src/gpac/src/filters/reframe_nalu.c:4171,1
    - Dst: naludmx_del_param_list
      Src: /src/gpac/src/filters/reframe_nalu.c:4172,1
    - Dst: naludmx_del_param_list
      Src: /src/gpac/src/filters/reframe_nalu.c:4173,1
    - Dst: naludmx_del_param_list
      Src: /src/gpac/src/filters/reframe_nalu.c:4174,1
    - Dst: naludmx_del_param_list
      Src: /src/gpac/src/filters/reframe_nalu.c:4175,1
    - Dst: naludmx_del_param_list
      Src: /src/gpac/src/filters/reframe_nalu.c:4176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - do_free
    argTypes:
    - GF_NALUDmxCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4177
      start: 4166
    functionDepth: 4
    functionLinenumber: 4166
    functionLinenumberEnd: 4177
    functionName: naludmx_reset_param_sets
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 1
    functionsReached:
    - naludmx_del_param_list
    linkageType: ''
    returnType: void
    signature: void naludmx_reset_param_sets(GF_NALUDmxCtx *ctx, Bool do_free)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_nalu.c:4181,1
    - Dst: naludmx_log_stats
      Src: /src/gpac/src/filters/reframe_nalu.c:4183,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_nalu.c:4185,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_nalu.c:4186,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:4187,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:4188,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:4190,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/reframe_nalu.c:4191,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/reframe_nalu.c:4192,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/reframe_nalu.c:4194,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:4196,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:4197,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:4198,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_nalu.c:4200,1
    - Dst: naludmx_reset_param_sets
      Src: /src/gpac/src/filters/reframe_nalu.c:4203,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:4205,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:4206,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:4207,1
    - Dst: gf_sei_loader_del
      Src: /src/gpac/src/filters/reframe_nalu.c:4208,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 34
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4209
      start: 4179
    functionDepth: 5
    functionLinenumber: 4179
    functionLinenumberEnd: 4209
    functionName: naludmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - naludmx_reset_param_sets
    - gf_bs_del
    - gf_list_count
    - gf_filter_pck_unref
    - gf_sei_loader_del
    - gf_filter_pck_discard
    - naludmx_log_stats
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void naludmx_finalize(GF_Filter *filter)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_media_nalu_next_start_code
      Src: /src/gpac/src/filters/reframe_nalu.c:4232,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 118
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4344
      start: 4212
    functionDepth: 1
    functionLinenumber: 4212
    functionLinenumberEnd: 4344
    functionName: naludmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_media_nalu_next_start_code
    linkageType: ''
    returnType: char
    signature: char *naludmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4385
      start: 4384
    functionDepth: 0
    functionLinenumber: 4384
    functionLinenumberEnd: 4385
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4456
      start: 4453
    functionDepth: 0
    functionLinenumber: 4453
    functionLinenumberEnd: 4456
    functionName: rfnalu_register
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfnalu_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4461
      start: 4458
    functionDepth: 0
    functionLinenumber: 4458
    functionLinenumberEnd: 4461
    functionName: rfnalu_register
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfnalu_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewind.c:57,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/rewind.c:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 60
    functionName: rewind_initialize
    functionSourceFile: /src/gpac/src/filters/rewind.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rewind_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewind.c:64,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/rewind.c:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 2
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: rewind_finalize
    functionSourceFile: /src/gpac/src/filters/rewind.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void rewind_finalize(GF_Filter *filter)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewind.c:73,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/rewind.c:76,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/rewind.c:81,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewind.c:85,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewind.c:90,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewind.c:94,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/rewind.c:98,1
    - Dst: gf_audio_fmt_is_planar
      Src: /src/gpac/src/filters/rewind.c:99,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/rewind.c:103,1
    - Dst: gf_filter_pid_set_max_buffer
      Src: /src/gpac/src/filters/rewind.c:104,1
    - Dst: gf_filter_pid_get_max_buffer
      Src: /src/gpac/src/filters/rewind.c:104,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/rewind.c:109,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 111
    functionName: rewind_configure_pid
    functionSourceFile: /src/gpac/src/filters/rewind.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_get_max_buffer
    - gf_filter_pid_remove
    - gf_filter_pid_set_max_buffer
    - gf_filter_pid_check_caps
    - gf_audio_fmt_is_planar
    - gf_filter_pid_new
    - gf_audio_fmt_bit_depth
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rewind_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/rewind.c:118,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewind.c:120,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/rewind.c:121,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/rewind.c:125,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewind.c:128,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/rewind.c:128,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/rewind.c:136,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/rewind.c:138,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/rewind.c:139,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/rewind.c:145,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/rewind.c:146,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/rewind.c:148,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - GF_RewindCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 113
    functionDepth: 3
    functionLinenumber: 113
    functionLinenumberEnd: 152
    functionName: rewind_process_video
    functionSourceFile: /src/gpac/src/filters/rewind.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_back
    - gf_filter_pck_ref
    - gf_filter_pid_drop_packet
    - gf_filter_pck_forward
    - GF_LOG
    - gf_filter_pck_unref
    - gf_list_count
    - gf_list_add
    - gf_filter_pck_get_sap
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rewind_process_video(GF_RewindCtx *ctx, GF_FilterPacket *pck)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewind.c:160,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/rewind.c:164,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/rewind.c:167,1
    - Dst: rewind_process_video
      Src: /src/gpac/src/filters/rewind.c:169,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/rewind.c:171,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/rewind.c:177,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewind.c:178,1
    - Dst: rewind_process_video
      Src: /src/gpac/src/filters/rewind.c:183,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/rewind.c:185,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/rewind.c:187,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/rewind.c:189,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/rewind.c:202,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/rewind.c:210,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/rewind.c:213,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewind.c:214,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 45
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 154
    functionDepth: 4
    functionLinenumber: 154
    functionLinenumberEnd: 216
    functionName: rewind_process
    functionSourceFile: /src/gpac/src/filters/rewind.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_filter_pck_forward
    - gf_filter_pck_get_data
    - memcpy
    - gf_filter_pck_merge_properties
    - rewind_process_video
    - gf_filter_pid_set_eos
    - gf_filter_pck_send
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rewind_process(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewind.c:220,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 226
    functionName: rewind_process_event
    functionSourceFile: /src/gpac/src/filters/rewind.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool rewind_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 238
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/rewind.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 262
    functionDepth: 0
    functionLinenumber: 262
    functionLinenumberEnd: 265
    functionName: rewind_register
    functionSourceFile: /src/gpac/src/filters/rewind.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rewind_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 270
    functionName: rewind_register
    functionSourceFile: /src/gpac/src/filters/rewind.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rewind_register(GF_FilterSession *session)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_cc.c:93,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dec_cc.c:98,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_cc.c:102,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_cc.c:106,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_cc.c:110,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dec_cc.c:112,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dec_cc.c:115,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_cc.c:118,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_cc.c:119,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_cc.c:119,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_cc.c:120,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_cc.c:120,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_cc.c:121,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dec_cc.c:121,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_cc.c:123,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_cc.c:127,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_cc.c:147,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/dec_cc.c:149,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/dec_cc.c:152,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_cc.c:162,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/dec_cc.c:164,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/dec_cc.c:167,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_cc.c:177,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/dec_cc.c:179,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/dec_cc.c:182,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 90
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 91
    functionDepth: 2
    functionLinenumber: 91
    functionLinenumberEnd: 195
    functionName: ccdec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_cc.c
    functionUses: 0
    functionsReached:
    - gf_odf_hevc_cfg_read
    - PROP_BOOL
    - gf_odf_hevc_cfg_del
    - gf_odf_vvc_cfg_del
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_odf_avc_cfg_del
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_check_caps
    - gf_odf_vvc_cfg_read
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_new
    - gf_odf_avc_cfg_read
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ccdec_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CCDecCtx*::pck_new_alloc
      Src: /src/gpac/src/filters/dec_cc.c:200,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_cc.c:202,1
    - Dst: CCDecCtx*::pck_truncate
      Src: /src/gpac/src/filters/dec_cc.c:204,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dec_cc.c:205,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dec_cc.c:206,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dec_cc.c:207,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dec_cc.c:208,1
    - Dst: CCDecCtx*::pck_send
      Src: /src/gpac/src/filters/dec_cc.c:211,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - ctx
    - size
    - ts
    argTypes:
    - CCDecCtx*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 214
    functionName: ccdec_post
    functionSourceFile: /src/gpac/src/filters/dec_cc.c
    functionUses: 0
    functionsReached:
    - CCDecCtx*::pck_send
    - gf_filter_pck_set_cts
    - memcpy
    - CCDecCtx*::pck_truncate
    - gf_filter_pck_set_duration
    - CCDecCtx*::pck_new_alloc
    - gf_filter_pck_set_framing
    - gf_filter_pck_set_sap
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ccdec_post(CCDecCtx *ctx, u32 size, u64 ts)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strrchr
      Src: /src/gpac/src/filters/dec_cc.c:221,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/dec_cc.c:222,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 1
    argNames:
    - input
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 229
    functionName: find_last_separator
    functionSourceFile: /src/gpac/src/filters/dec_cc.c
    functionUses: 0
    functionsReached:
    - strrchr
    linkageType: ''
    returnType: int
    signature: int find_last_separator(const char *input)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_cc.c:233,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - ctx
    - size
    - ts
    argTypes:
    - CCDecCtx*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 231
    functionDepth: 1
    functionLinenumber: 231
    functionLinenumberEnd: 244
    functionName: same_crc
    functionSourceFile: /src/gpac/src/filters/dec_cc.c
    functionUses: 0
    functionsReached:
    - gf_crc_32
    linkageType: ''
    returnType: Bool
    signature: Bool same_crc(CCDecCtx *ctx, u32 size, u64 ts)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/filters/dec_cc.c:251,1
    - Dst: memmove
      Src: /src/gpac/src/filters/dec_cc.c:252,1
    - Dst: ccdec_post
      Src: /src/gpac/src/filters/dec_cc.c:257,1
    - Dst: memmove
      Src: /src/gpac/src/filters/dec_cc.c:259,1
    - Dst: same_crc
      Src: /src/gpac/src/filters/dec_cc.c:264,1
    - Dst: ccdec_post
      Src: /src/gpac/src/filters/dec_cc.c:269,1
    - Dst: find_last_separator
      Src: /src/gpac/src/filters/dec_cc.c:272,1
    - Dst: ccdec_post
      Src: /src/gpac/src/filters/dec_cc.c:273,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 3
    argNames:
    - ctx
    - size
    - ts
    argTypes:
    - CCDecCtx*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 246
    functionDepth: 2
    functionLinenumber: 246
    functionLinenumberEnd: 285
    functionName: text_aggregate_and_post
    functionSourceFile: /src/gpac/src/filters/dec_cc.c
    functionUses: 0
    functionsReached:
    - ccdec_post
    - memmove
    - find_last_separator
    - strncmp
    - same_crc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err text_aggregate_and_post(CCDecCtx *ctx, u32 size, u64 ts)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dec_cc.c:289,1
    - Dst: cea708_init
      Src: /src/gpac/src/filters/dec_cc.c:293,1
    - Dst: cea708_parse_h262
      Src: /src/gpac/src/filters/dec_cc.c:295,1
    - Dst: cea708_parse_h264
      Src: /src/gpac/src/filters/dec_cc.c:297,1
    - Dst: cea708_cc_count
      Src: /src/gpac/src/filters/dec_cc.c:300,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_cc.c:303,1
    - Dst: caption_frame_init
      Src: /src/gpac/src/filters/dec_cc.c:304,1
    - Dst: cea708_cc_data
      Src: /src/gpac/src/filters/dec_cc.c:315,1
    - Dst: libcaption_status_update
      Src: /src/gpac/src/filters/dec_cc.c:320,1
    - Dst: caption_frame_decode
      Src: /src/gpac/src/filters/dec_cc.c:320,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_cc.c:326,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_cc.c:327,1
    - Dst: caption_frame_to_text
      Src: /src/gpac/src/filters/dec_cc.c:331,1
    - Dst: text_aggregate_and_post
      Src: /src/gpac/src/filters/dec_cc.c:333,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 27
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - CCDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 287
    functionDepth: 3
    functionLinenumber: 287
    functionLinenumberEnd: 334
    functionName: ccdec_flush_queue
    functionSourceFile: /src/gpac/src/filters/dec_cc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - cea708_parse_h264
    - cea708_cc_count
    - caption_frame_decode
    - cea708_cc_data
    - caption_frame_to_text
    - text_aggregate_and_post
    - cea708_init
    - gf_list_pop_front
    - GF_SAFEALLOC
    - caption_frame_init
    - libcaption_status_update
    - cea708_parse_h262
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ccdec_flush_queue(CCDecCtx *ctx)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_cc.c:341,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_cc.c:344,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_cc.c:346,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_cc.c:348,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_cc.c:355,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_cc.c:364,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_cc.c:366,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_cc.c:370,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_cc.c:372,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_cc.c:380,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_cc.c:382,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dec_cc.c:384,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_cc.c:391,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_cc.c:394,1
    - Dst: ccdec_flush_queue
      Src: /src/gpac/src/filters/dec_cc.c:396,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 56
    argCount: 6
    argNames:
    - ctx
    - ts
    - data
    - max_size
    - m2v
    - keep_data
    argTypes:
    - CCDecCtx*
    - u64
    - u8*
    - u32
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 336
    functionDepth: 4
    functionLinenumber: 336
    functionLinenumberEnd: 399
    functionName: ccdec_queue_data
    functionSourceFile: /src/gpac/src/filters/dec_cc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_insert
    - gf_list_get
    - GF_SAFEALLOC
    - memcpy
    - gf_list_count
    - ccdec_flush_queue
    - gf_list_add
    - GF_4CC
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ccdec_queue_data(CCDecCtx *ctx, u64 ts, u8 *data, u32 max_size,
      Bool m2v, Bool keep_data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filters/dec_cc.c:406,1
    - Dst: ccdec_post
      Src: /src/gpac/src/filters/dec_cc.c:407,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dec_cc.c:407,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - CCDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 401
    functionDepth: 2
    functionLinenumber: 401
    functionLinenumberEnd: 408
    functionName: ccdec_flush
    functionSourceFile: /src/gpac/src/filters/dec_cc.c
    functionUses: 0
    functionsReached:
    - ccdec_post
    - strlen
    linkageType: ''
    returnType: void
    signature: void ccdec_flush(CCDecCtx *ctx)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_cc.c:414,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_cc.c:417,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_cc.c:419,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_cc.c:420,1
    - Dst: ccdec_flush_queue
      Src: /src/gpac/src/filters/dec_cc.c:421,1
    - Dst: ccdec_flush
      Src: /src/gpac/src/filters/dec_cc.c:423,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_cc.c:424,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_cc.c:429,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_cc.c:431,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_cc.c:434,1
    - Dst: gf_m4v_parser_new
      Src: /src/gpac/src/filters/dec_cc.c:438,1
    - Dst: gf_m4v_parser_set_inspect
      Src: /src/gpac/src/filters/dec_cc.c:439,1
    - Dst: gf_m4v_parse_frame
      Src: /src/gpac/src/filters/dec_cc.c:448,1
    - Dst: gf_m4v_parser_get_obj_type
      Src: /src/gpac/src/filters/dec_cc.c:452,1
    - Dst: ccdec_queue_data
      Src: /src/gpac/src/filters/dec_cc.c:456,1
    - Dst: gf_m4v_get_object_start
      Src: /src/gpac/src/filters/dec_cc.c:464,1
    - Dst: ccdec_queue_data
      Src: /src/gpac/src/filters/dec_cc.c:465,1
    - Dst: gf_m4v_parser_del
      Src: /src/gpac/src/filters/dec_cc.c:472,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_cc.c:474,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dec_cc.c:475,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_cc.c:483,1
    - Dst: gf_av1_parse_obu_header
      Src: /src/gpac/src/filters/dec_cc.c:485,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_cc.c:486,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/filters/dec_cc.c:489,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_cc.c:490,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_cc.c:492,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dec_cc.c:494,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dec_cc.c:497,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_cc.c:498,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_cc.c:500,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dec_cc.c:502,1
    - Dst: ccdec_queue_data
      Src: /src/gpac/src/filters/dec_cc.c:504,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dec_cc.c:506,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dec_cc.c:510,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_cc.c:546,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dec_cc.c:547,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/filters/dec_cc.c:548,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_cc.c:551,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dec_cc.c:553,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/filters/dec_cc.c:557,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_cc.c:559,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_cc.c:561,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/filters/dec_cc.c:562,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_cc.c:564,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_cc.c:566,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_cc.c:571,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_cc.c:572,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_cc.c:575,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dec_cc.c:578,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_cc.c:581,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dec_cc.c:582,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_cc.c:585,1
    - Dst: ccdec_queue_data
      Src: /src/gpac/src/filters/dec_cc.c:588,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_cc.c:592,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/filters/dec_cc.c:595,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_cc.c:605,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 156
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 410
    functionDepth: 8
    functionLinenumber: 410
    functionLinenumberEnd: 607
    functionName: ccdec_process
    functionSourceFile: /src/gpac/src/filters/dec_cc.c
    functionUses: 0
    functionsReached:
    - gf_bs_peek_bits
    - ccdec_flush
    - gf_bs_new
    - gf_list_count
    - gf_av1_parse_obu_header
    - gf_m4v_parser_get_obj_type
    - gf_bs_read_u16
    - gf_bs_available
    - gf_filter_pid_get_packet
    - gf_m4v_parse_frame
    - gf_filter_pck_get_cts
    - gf_m4v_parser_del
    - gf_bs_skip_bytes
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_bs_enable_emulation_byte_removal
    - gf_filter_pck_get_data
    - gf_av1_leb128_read
    - gf_filter_pid_set_eos
    - gf_bs_get_position
    - gf_m4v_get_object_start
    - ccdec_flush_queue
    - gf_bs_read_u8
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - gf_malloc
    - gf_m4v_parser_new
    - gf_m4v_parser_set_inspect
    - gf_bs_seek
    - gf_bs_read_int
    - ccdec_queue_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ccdec_process(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_cc.c:611,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_cc.c:615,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 618
      start: 609
    functionDepth: 1
    functionLinenumber: 609
    functionLinenumberEnd: 618
    functionName: ccdec_initialize
    functionSourceFile: /src/gpac/src/filters/dec_cc.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ccdec_initialize(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_cc.c:622,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_cc.c:623,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_cc.c:624,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_cc.c:625,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_cc.c:626,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_cc.c:628,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_cc.c:629,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_cc.c:630,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 620
    functionDepth: 3
    functionLinenumber: 620
    functionLinenumberEnd: 631
    functionName: ccdec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_cc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_bs_del
    - gf_list_count
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ccdec_finalize(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_cc.c:635,1
    - Dst: caption_frame_init
      Src: /src/gpac/src/filters/dec_cc.c:637,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 640
      start: 633
    functionDepth: 1
    functionLinenumber: 633
    functionLinenumberEnd: 640
    functionName: ccdec_process_event
    functionSourceFile: /src/gpac/src/filters/dec_cc.c
    functionUses: 0
    functionsReached:
    - caption_frame_init
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool ccdec_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 663
    functionDepth: 0
    functionLinenumber: 663
    functionLinenumberEnd: 664
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dec_cc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 694
      start: 691
    functionDepth: 0
    functionLinenumber: 691
    functionLinenumberEnd: 694
    functionName: ccdec_register
    functionSourceFile: /src/gpac/src/filters/dec_cc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ccdec_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 699
      start: 696
    functionDepth: 0
    functionLinenumber: 696
    functionLinenumberEnd: 699
    functionName: ccdec_register
    functionSourceFile: /src/gpac/src/filters/dec_cc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ccdec_register(GF_FilterSession *session)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_truehd.c:103,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/reframe_truehd.c:108,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/reframe_truehd.c:113,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_truehd.c:118,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_truehd.c:122,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_truehd.c:123,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:124,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:125,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_truehd.c:125,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 129
    functionName: truehd_configure_pid
    functionSourceFile: /src/gpac/src/filters/reframe_truehd.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err truehd_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_truehd.c:138,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/reframe_truehd.c:140,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/reframe_truehd.c:143,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_truehd.c:144,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_truehd.c:148,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_truehd.c:150,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:153,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_truehd.c:153,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:154,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_truehd.c:154,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:155,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_truehd.c:155,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:158,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_truehd.c:158,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:160,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_truehd.c:160,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:161,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_truehd.c:161,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:162,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_truehd.c:162,1
    - Dst: gf_odf_ac3_cfg_write
      Src: /src/gpac/src/filters/reframe_truehd.c:164,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:165,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/reframe_truehd.c:165,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_truehd.c:168,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_truehd.c:169,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_truehd.c:170,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_truehd.c:171,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_truehd.c:173,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_truehd.c:174,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_truehd.c:175,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_truehd.c:176,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_truehd.c:177,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 3
    argNames:
    - ctx
    - bs
    - hdr
    argTypes:
    - GF_TrueHDDmxCtx*
    - GF_BitStream*
    - GF_AC3Header*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 132
    functionDepth: 6
    functionLinenumber: 132
    functionLinenumberEnd: 178
    functionName: truehd_aux_ac3
    functionSourceFile: /src/gpac/src/filters/reframe_truehd.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - memcmp
    - PROP_DATA_NO_COPY
    - gf_odf_ac3_cfg_write
    - PROP_FRAC64
    - gf_filter_pid_new
    - gf_filter_pck_set_byte_offset
    - memcpy
    - PROP_BOOL
    - gf_filter_pid_copy_properties
    - gf_filter_pck_new_alloc
    - gf_filter_pck_set_sap
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_filter_pck_set_framing
    - gf_filter_pid_set_name
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void truehd_aux_ac3(GF_TrueHDDmxCtx *ctx, GF_BitStream *bs, GF_AC3Header
      *hdr)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/reframe_truehd.c:183,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_truehd.c:185,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_truehd.c:186,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_truehd.c:192,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/filters/reframe_truehd.c:193,1
    - Dst: gf_ac3_parser_bs
      Src: /src/gpac/src/filters/reframe_truehd.c:197,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_truehd.c:200,1
    - Dst: truehd_aux_ac3
      Src: /src/gpac/src/filters/reframe_truehd.c:204,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_truehd.c:206,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_truehd.c:208,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_truehd.c:209,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_truehd.c:217,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_truehd.c:218,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/reframe_truehd.c:219,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_truehd.c:220,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/filters/reframe_truehd.c:232,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_truehd.c:233,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_truehd.c:244,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_truehd.c:245,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_truehd.c:246,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_truehd.c:247,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_truehd.c:248,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_truehd.c:249,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_truehd.c:250,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_truehd.c:251,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/reframe_truehd.c:253,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/reframe_truehd.c:258,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/reframe_truehd.c:259,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_truehd.c:260,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_truehd.c:261,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 76
    argCount: 4
    argNames:
    - ctx
    - bs
    - hdr
    - frame_start
    argTypes:
    - GF_TrueHDDmxCtx*
    - GF_BitStream*
    - TrueHDHdr*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 181
    functionDepth: 8
    functionLinenumber: 181
    functionLinenumberEnd: 264
    functionName: truehd_parse_frame
    functionSourceFile: /src/gpac/src/filters/reframe_truehd.c
    functionUses: 0
    functionsReached:
    - gf_bs_peek_bits
    - gf_bs_read_u32
    - gf_ac3_parser_bs
    - gf_bs_get_position
    - memset
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_bs_available
    - truehd_aux_ac3
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err truehd_parse_frame(GF_TrueHDDmxCtx *ctx, GF_BitStream *bs, TrueHDHdr
      *hdr, u64 *frame_start)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - sample_rate
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 281
    functionName: truehd_frame_dur
    functionSourceFile: /src/gpac/src/filters/reframe_truehd.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 truehd_frame_dur(u32 sample_rate)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_truehd.c:297,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_truehd.c:298,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/reframe_truehd.c:305,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/reframe_truehd.c:307,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/filters/reframe_truehd.c:314,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_truehd.c:317,1
    - Dst: truehd_parse_frame
      Src: /src/gpac/src/filters/reframe_truehd.c:320,1
    - Dst: truehd_frame_dur
      Src: /src/gpac/src/filters/reframe_truehd.c:332,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_truehd.c:341,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_truehd.c:342,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_truehd.c:350,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_truehd.c:352,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/reframe_truehd.c:353,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:359,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_truehd.c:359,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_truehd.c:362,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 65
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_TrueHDDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 282
    functionDepth: 9
    functionLinenumber: 282
    functionLinenumberEnd: 364
    functionName: truehd_check_dur
    functionSourceFile: /src/gpac/src/filters/reframe_truehd.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_filter_pid_get_property
    - gf_bs_seek
    - gf_fileio_is_main_thread
    - truehd_parse_frame
    - gf_bs_get_position
    - gf_bs_del
    - strncmp
    - PROP_FRAC64
    - gf_fopen_ex
    - truehd_frame_dur
    - gf_bs_available
    - gf_bs_from_file
    - gf_filter_pid_set_property
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void truehd_check_dur(GF_Filter *filter, GF_TrueHDDmxCtx *ctx)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_truehd.c:372,1
    - Dst: truehd_check_dur
      Src: /src/gpac/src/filters/reframe_truehd.c:373,1
    - Dst: truehd_frame_dur
      Src: /src/gpac/src/filters/reframe_truehd.c:378,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_truehd.c:382,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:383,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_truehd.c:383,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:384,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_truehd.c:384,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:385,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_truehd.c:385,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:388,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_truehd.c:388,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:390,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_truehd.c:390,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_truehd.c:425,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:431,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_truehd.c:431,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:432,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_truehd.c:432,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:433,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_truehd.c:433,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:435,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_truehd.c:435,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:440,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_truehd.c:440,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_truehd.c:442,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/reframe_truehd.c:443,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_truehd.c:444,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_truehd.c:445,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/reframe_truehd.c:446,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/reframe_truehd.c:447,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_truehd.c:448,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:449,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/reframe_truehd.c:449,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_truehd.c:452,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_truehd.c:452,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 90
    argCount: 3
    argNames:
    - filter
    - ctx
    - hdr
    argTypes:
    - GF_Filter*
    - GF_TrueHDDmxCtx*
    - TrueHDHdr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 454
      start: 366
    functionDepth: 10
    functionLinenumber: 366
    functionLinenumberEnd: 454
    functionName: truehd_check_pid
    functionSourceFile: /src/gpac/src/filters/reframe_truehd.c
    functionUses: 0
    functionsReached:
    - truehd_check_dur
    - PROP_BOOL
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_del
    - PROP_FRAC64
    - PROP_DATA_NO_COPY
    - truehd_frame_dur
    - gf_filter_pid_new
    - gf_bs_write_u32
    - gf_filter_pid_set_property
    - gf_timestamp_rescale
    linkageType: ''
    returnType: void
    signature: void truehd_check_pid(GF_Filter *filter, GF_TrueHDDmxCtx *ctx, TrueHDHdr
      *hdr)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_truehd.c:460,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_truehd.c:494,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_truehd.c:496,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 45
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 456
    functionDepth: 1
    functionLinenumber: 456
    functionLinenumberEnd: 515
    functionName: truehd_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_truehd.c
    functionUses: 0
    functionsReached:
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool truehd_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - hdr
    argTypes:
    - GF_TrueHDDmxCtx*
    - TrueHDHdr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 517
    functionDepth: 0
    functionLinenumber: 517
    functionLinenumberEnd: 527
    functionName: truehd_update_cts
    functionSourceFile: /src/gpac/src/filters/reframe_truehd.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE truehd_update_cts(GF_TrueHDDmxCtx *ctx, TrueHDHdr *hdr)
  - BBCount: 48
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_truehd.c:531,1
    - Dst: truehd_check_dur
      Src: /src/gpac/src/filters/reframe_truehd.c:545,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_truehd.c:550,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_truehd.c:552,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_truehd.c:555,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_truehd.c:557,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_truehd.c:558,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_truehd.c:569,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_truehd.c:571,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_truehd.c:576,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_truehd.c:589,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_truehd.c:592,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_truehd.c:598,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_truehd.c:620,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_truehd.c:622,1
    - Dst: truehd_parse_frame
      Src: /src/gpac/src/filters/reframe_truehd.c:629,1
    - Dst: truehd_check_pid
      Src: /src/gpac/src/filters/reframe_truehd.c:654,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_truehd.c:683,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_truehd.c:691,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_truehd.c:693,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_truehd.c:695,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_truehd.c:696,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_truehd.c:697,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_truehd.c:698,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_truehd.c:699,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_truehd.c:702,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_truehd.c:704,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_truehd.c:707,1
    - Dst: truehd_update_cts
      Src: /src/gpac/src/filters/reframe_truehd.c:709,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_truehd.c:713,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_truehd.c:722,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_truehd.c:728,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_truehd.c:731,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_truehd.c:744,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_truehd.c:748,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_truehd.c:751,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 181
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 529
    functionDepth: 11
    functionLinenumber: 529
    functionLinenumberEnd: 754
    functionName: truehd_process
    functionSourceFile: /src/gpac/src/filters/reframe_truehd.c
    functionUses: 0
    functionsReached:
    - truehd_check_dur
    - gf_bs_new
    - gf_filter_pck_ref_props
    - gf_filter_pid_get_packet
    - gf_realloc
    - gf_filter_pck_set_byte_offset
    - memcpy
    - truehd_parse_frame
    - gf_filter_pck_get_cts
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - memmove
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - truehd_update_cts
    - truehd_check_pid
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - gf_filter_pck_set_framing
    - gf_filter_pck_get_byte_offset
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err truehd_process(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_truehd.c:758,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_truehd.c:759,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_truehd.c:760,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_truehd.c:761,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_truehd.c:762,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 756
    functionDepth: 3
    functionLinenumber: 756
    functionLinenumberEnd: 763
    functionName: truehd_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_truehd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_del
    - gf_filter_pck_unref
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void truehd_finalize(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_truehd.c:768,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_truehd.c:769,1
    - Dst: truehd_parse_frame
      Src: /src/gpac/src/filters/reframe_truehd.c:772,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_truehd.c:778,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_truehd.c:780,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 786
      start: 765
    functionDepth: 9
    functionLinenumber: 765
    functionLinenumberEnd: 786
    functionName: truehd_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_truehd.c
    functionUses: 0
    functionsReached:
    - gf_bs_seek
    - gf_bs_new
    - gf_bs_del
    - truehd_parse_frame
    - gf_bs_available
    linkageType: ''
    returnType: char
    signature: char *truehd_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 803
      start: 802
    functionDepth: 0
    functionLinenumber: 802
    functionLinenumberEnd: 803
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/reframe_truehd.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 827
    functionDepth: 0
    functionLinenumber: 827
    functionLinenumberEnd: 830
    functionName: rftruehd_register
    functionSourceFile: /src/gpac/src/filters/reframe_truehd.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rftruehd_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 835
      start: 832
    functionDepth: 0
    functionLinenumber: 832
    functionLinenumberEnd: 835
    functionName: rftruehd_register
    functionSourceFile: /src/gpac/src/filters/reframe_truehd.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rftruehd_register(GF_FilterSession *session)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: CloseHandle
      Src: /src/gpac/src/filters/out_pipe.c:89,1
    - Dst: close
      Src: /src/gpac/src/filters/out_pipe.c:92,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_pipe.c:99,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_pipe.c:102,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_pipe.c:104,1
    - Dst: strcat
      Src: /src/gpac/src/filters/out_pipe.c:106,1
    - Dst: strcat
      Src: /src/gpac/src/filters/out_pipe.c:107,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_pipe.c:110,1
    - Dst: gf_filter_pid_resolve_file_template
      Src: /src/gpac/src/filters/out_pipe.c:112,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_pipe.c:114,1
    - Dst: CloseHandle
      Src: /src/gpac/src/filters/out_pipe.c:123,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_pipe.c:126,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_pipe.c:127,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_pipe.c:130,1
    - Dst: strcat
      Src: /src/gpac/src/filters/out_pipe.c:131,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_pipe.c:133,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_pipe.c:134,1
    - Dst: WaitNamedPipeA
      Src: /src/gpac/src/filters/out_pipe.c:141,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_pipe.c:143,1
    - Dst: GetLastError
      Src: /src/gpac/src/filters/out_pipe.c:143,1
    - Dst: CreateNamedPipe
      Src: /src/gpac/src/filters/out_pipe.c:147,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_pipe.c:156,1
    - Dst: GetLastError
      Src: /src/gpac/src/filters/out_pipe.c:156,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_pipe.c:160,1
    - Dst: ConnectNamedPipe
      Src: /src/gpac/src/filters/out_pipe.c:161,1
    - Dst: GetLastError
      Src: /src/gpac/src/filters/out_pipe.c:161,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_pipe.c:162,1
    - Dst: GetLastError
      Src: /src/gpac/src/filters/out_pipe.c:162,1
    - Dst: CloseHandle
      Src: /src/gpac/src/filters/out_pipe.c:164,1
    - Dst: CreateFile
      Src: /src/gpac/src/filters/out_pipe.c:174,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_pipe.c:176,1
    - Dst: GetLastError
      Src: /src/gpac/src/filters/out_pipe.c:176,1
    - Dst: close
      Src: /src/gpac/src/filters/out_pipe.c:182,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/out_pipe.c:185,1
    - Dst: mknod
      Src: /src/gpac/src/filters/out_pipe.c:187,1
    - Dst: mkfifo
      Src: /src/gpac/src/filters/out_pipe.c:189,1
    - Dst: open
      Src: /src/gpac/src/filters/out_pipe.c:194,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_pipe.c:197,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/filters/out_pipe.c:197,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_pipe.c:204,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_pipe.c:205,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 88
    argCount: 5
    argNames:
    - ctx
    - filename
    - ext
    - file_idx
    - explicit_overwrite
    argTypes:
    - GF_PipeOutCtx*
    - char*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 82
    functionDepth: 4
    functionLinenumber: 82
    functionLinenumberEnd: 207
    functionName: pipeout_open_close
    functionSourceFile: /src/gpac/src/filters/out_pipe.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GetLastError
    - gf_file_exists
    - strcpy
    - strchr
    - strcat
    - gf_strdup
    - open
    - close
    - strncmp
    - mknod
    - ConnectNamedPipe
    - GF_LOG
    - mkfifo
    - gf_filter_pid_resolve_file_template
    - strlen
    - CreateFile
    - WaitNamedPipeA
    - CreateNamedPipe
    - strcmp
    - gf_errno_str
    - CloseHandle
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pipeout_open_close(GF_PipeOutCtx *ctx, const char *filename,
      const char *ext, u32 file_idx, Bool explicit_overwrite)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_pipe.c:212,1
    - Dst: pipeout_open_close
      Src: /src/gpac/src/filters/out_pipe.c:214,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_pipe.c:216,1
    - Dst: pipeout_open_close
      Src: /src/gpac/src/filters/out_pipe.c:218,1
    - Dst: pipeout_open_close
      Src: /src/gpac/src/filters/out_pipe.c:221,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - ctx
    - explicit_overwrite
    argTypes:
    - GF_PipeOutCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 209
    functionDepth: 5
    functionLinenumber: 209
    functionLinenumberEnd: 224
    functionName: pipeout_setup_file
    functionSourceFile: /src/gpac/src/filters/out_pipe.c
    functionUses: 0
    functionsReached:
    - pipeout_open_close
    - gf_filter_pid_get_property
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pipeout_setup_file(GF_PipeOutCtx *ctx, Bool explicit_overwrite)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_pipe.c:228,1
    - Dst: pipeout_open_close
      Src: /src/gpac/src/filters/out_pipe.c:231,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/out_pipe.c:234,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/out_pipe.c:238,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_pipe.c:239,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_pipe.c:243,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_pipe.c:245,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 225
    functionDepth: 5
    functionLinenumber: 225
    functionLinenumberEnd: 249
    functionName: pipeout_configure_pid
    functionSourceFile: /src/gpac/src/filters/out_pipe.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - GF_LOG
    - gf_filter_pid_init_play_event
    - pipeout_open_close
    - gf_filter_pid_check_caps
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pipeout_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_pipe.c:254,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_pipe.c:258,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_pipe.c:258,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/out_pipe.c:259,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/out_pipe.c:266,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_pipe.c:277,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/out_pipe.c:282,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_pipe.c:287,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/out_pipe.c:290,1
    - Dst: strlwr
      Src: /src/gpac/src/filters/out_pipe.c:292,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_pipe.c:294,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/out_pipe.c:297,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 39
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 251
    functionDepth: 4
    functionLinenumber: 251
    functionLinenumberEnd: 299
    functionName: pipeout_initialize
    functionSourceFile: /src/gpac/src/filters/out_pipe.c
    functionUses: 0
    functionsReached:
    - PROP_NAME
    - PROP_UINT
    - gf_filter_override_caps
    - GF_LOG
    - strstr
    - strlwr
    - strncpy
    - gf_file_ext_start
    - strnicmp
    - gf_filter_setup_failure
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pipeout_initialize(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_pipe.c:303,1
    - Dst: pipeout_open_close
      Src: /src/gpac/src/filters/out_pipe.c:307,1
    - Dst: pipeout_open_close
      Src: /src/gpac/src/filters/out_pipe.c:310,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/filters/out_pipe.c:314,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_pipe.c:315,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 301
    functionDepth: 5
    functionLinenumber: 301
    functionLinenumberEnd: 317
    functionName: pipeout_finalize
    functionSourceFile: /src/gpac/src/filters/out_pipe.c
    functionUses: 0
    functionsReached:
    - pipeout_open_close
    - gf_free
    - gf_file_delete
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void pipeout_finalize(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: WriteFile
      Src: /src/gpac/src/filters/out_pipe.c:325,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_pipe.c:326,1
    - Dst: GetLastError
      Src: /src/gpac/src/filters/out_pipe.c:326,1
    - Dst: write
      Src: /src/gpac/src/filters/out_pipe.c:330,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_pipe.c:332,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/filters/out_pipe.c:332,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_pipe.c:336,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_pipe.c:338,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_PipeOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 320
    functionDepth: 1
    functionLinenumber: 320
    functionLinenumberEnd: 340
    functionName: pout_write_marker
    functionSourceFile: /src/gpac/src/filters/out_pipe.c
    functionUses: 0
    functionsReached:
    - GetLastError
    - GF_LOG
    - write
    - gf_errno_str
    - WriteFile
    linkageType: ''
    returnType: void
    signature: void pout_write_marker(GF_PipeOutCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_pipe.c:487,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 486
    functionDepth: 1
    functionLinenumber: 486
    functionLinenumberEnd: 488
    functionName: if
    functionSourceFile: /src/gpac/src/filters/out_pipe.c
    functionUses: 6
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: else
    signature: else if (pck_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_pipe.c:510,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_pipe.c:511,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 508
    functionDepth: 0
    functionLinenumber: 508
    functionLinenumberEnd: 513
    functionName: pipeout_probe_url
    functionSourceFile: /src/gpac/src/filters/out_pipe.c
    functionUses: 0
    functionsReached:
    - strnicmp
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore pipeout_probe_url(const char *url, const char *mime)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 516
    functionDepth: 0
    functionLinenumber: 516
    functionLinenumberEnd: 517
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/out_pipe.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/out_pipe.c:580,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/out_pipe.c:581,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 578
    functionDepth: 6
    functionLinenumber: 578
    functionLinenumberEnd: 584
    functionName: pout_register
    functionSourceFile: /src/gpac/src/filters/out_pipe.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    - gf_opts_set_key
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *pout_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 589
      start: 586
    functionDepth: 0
    functionLinenumber: 586
    functionLinenumberEnd: 589
    functionName: pout_register
    functionSourceFile: /src/gpac/src/filters/out_pipe.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *pout_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 43
    functionName: DEL_SHADER
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEL_SHADER(_a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: DEL_PROGRAM
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEL_PROGRAM(_a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/out_video.c:196,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_VideoOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 199
    functionName: vout_make_gl_current
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - memset
    - GF_VideoOutCtx*::video_out::ProcessEvent
    linkageType: ''
    returnType: void
    signature: void vout_make_gl_current(GF_VideoOutCtx *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filters/out_video.c:207,1
    - Dst: glShaderSource
      Src: /src/gpac/src/filters/out_video.c:208,1
    - Dst: glCompileShader
      Src: /src/gpac/src/filters/out_video.c:209,1
    - Dst: glGetShaderiv
      Src: /src/gpac/src/filters/out_video.c:211,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_video.c:213,1
    - Dst: glGetShaderInfoLog
      Src: /src/gpac/src/filters/out_video.c:215,1
    - Dst: glGetInfoLogARB
      Src: /src/gpac/src/filters/out_video.c:217,1
    - Dst: glGetInfoLogARB
      Src: /src/gpac/src/filters/out_video.c:219,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:221,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_video.c:222,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - shader_id
    - name
    - source
    argTypes:
    - GF_SHADERID
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 201
    functionDepth: 1
    functionLinenumber: 201
    functionLinenumberEnd: 226
    functionName: vout_compile_shader
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - gf_free
    - glGetInfoLogARB
    - glGetShaderInfoLog
    - glGetShaderiv
    - GF_LOG
    - strlen
    - glCompileShader
    - glShaderSource
    - gf_malloc
    linkageType: ''
    returnType: Bool
    signature: Bool vout_compile_shader(GF_SHADERID shader_id, const char *name, const
      char *source)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filters/out_video.c:234,1
    - Dst: vout_make_gl_current
      Src: /src/gpac/src/filters/out_video.c:235,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/filters/out_video.c:237,1
    - Dst: glClear
      Src: /src/gpac/src/filters/out_video.c:241,1
    - Dst: GF_VideoOutCtx*::video_out::Flush
      Src: /src/gpac/src/filters/out_video.c:242,1
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filters/out_video.c:245,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_VideoOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 229
    functionDepth: 1
    functionLinenumber: 229
    functionLinenumberEnd: 248
    functionName: vout_reset_overlay
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - vout_make_gl_current
    - gf_filter_lock
    - glClear
    - GF_VideoOutCtx*::video_out::Flush
    - glDeleteTextures
    linkageType: ''
    returnType: void
    signature: void vout_reset_overlay(GF_Filter *filter, GF_VideoOutCtx *ctx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/out_video.c:254,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/out_video.c:259,1
    - Dst: gf_filter_pid_orig_src_args
      Src: /src/gpac/src/filters/out_video.c:262,1
    - Dst: gf_filter_pid_get_source_filter_name
      Src: /src/gpac/src/filters/out_video.c:263,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_video.c:265,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_video.c:266,1
    - Dst: gf_filter_path_escape_colon
      Src: /src/gpac/src/filters/out_video.c:268,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:271,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_VideoOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 250
    functionDepth: 1
    functionLinenumber: 250
    functionLinenumberEnd: 273
    functionName: vout_set_caption
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property_str
    - gf_filter_path_escape_colon
    - GF_VideoOutCtx*::video_out::ProcessEvent
    - memset
    - strncmp
    - gf_filter_pid_get_source_filter_name
    - gf_filter_pid_orig_src_args
    linkageType: ''
    returnType: void
    signature: void vout_set_caption(GF_VideoOutCtx *ctx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/out_video.c:279,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/out_video.c:288,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:295,1
    - Dst: gf_opengl_init
      Src: /src/gpac/src/filters/out_video.c:297,1
    - Dst: gf_opengl_init
      Src: /src/gpac/src/filters/out_video.c:307,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:310,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:314,1
    - Dst: memset
      Src: /src/gpac/src/filters/out_video.c:319,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:323,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_video.c:328,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_video.c:331,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 44
    argCount: 3
    argNames:
    - ctx
    - dw
    - dh
    argTypes:
    - GF_VideoOutCtx*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 275
    functionDepth: 6
    functionLinenumber: 275
    functionLinenumberEnd: 334
    functionName: resize_video_output
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - gf_opengl_init
    - GF_VideoOutCtx*::video_out::ProcessEvent
    - GF_LOG
    - GF_FEVT_INIT
    - memset
    - gf_filter_pid_send_event
    - gf_opts_get_bool
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err resize_video_output(GF_VideoOutCtx *ctx, u32 dw, u32 dh)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: glUseProgram
      Src: /src/gpac/src/filters/out_video.c:341,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/filters/out_video.c:345,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/filters/out_video.c:353,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/filters/out_video.c:354,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/filters/out_video.c:355,1
    - Dst: glUniformMatrix4fv
      Src: /src/gpac/src/filters/out_video.c:357,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/filters/out_video.c:358,1
    - Dst: glUniform1i
      Src: /src/gpac/src/filters/out_video.c:360,1
    - Dst: glUseProgram
      Src: /src/gpac/src/filters/out_video.c:361,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/filters/out_video.c:365,1
    - Dst: glUniform1i
      Src: /src/gpac/src/filters/out_video.c:366,1
    - Dst: glUseProgram
      Src: /src/gpac/src/filters/out_video.c:367,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_VideoOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 336
    functionDepth: 1
    functionLinenumber: 336
    functionLinenumberEnd: 370
    functionName: load_gl_tx_matrix
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - glUniformMatrix4fv
    - gf_mx_add_translation
    - gf_mx_init
    - glGetUniformLocation
    - glUseProgram
    - gf_mx_add_scale
    - glUniform1i
    linkageType: ''
    returnType: void
    signature: void load_gl_tx_matrix(GF_VideoOutCtx *ctx)
  - BBCount: 117
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_video.c:380,1
    - Dst: vout_draw_frame
      Src: /src/gpac/src/filters/out_video.c:384,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_video.c:385,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_video.c:391,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_video.c:395,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/out_video.c:396,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:400,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:403,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:405,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:407,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:410,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:412,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:414,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:418,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:425,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:428,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:438,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:441,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:443,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:446,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:450,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:455,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:457,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:459,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:461,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:468,1
    - Dst: gf_prop_matrix_decompose
      Src: /src/gpac/src/filters/out_video.c:470,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_video.c:477,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_video.c:485,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/out_video.c:487,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_video.c:492,1
    - Dst: vout_set_caption
      Src: /src/gpac/src/filters/out_video.c:500,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_video.c:504,1
    - Dst: load_gl_tx_matrix
      Src: /src/gpac/src/filters/out_video.c:517,1
    - Dst: resize_video_output
      Src: /src/gpac/src/filters/out_video.c:556,1
    - Dst: GF_VideoOutCtx*::video_out::SetFullScreen
      Src: /src/gpac/src/filters/out_video.c:571,1
    - Dst: memset
      Src: /src/gpac/src/filters/out_video.c:576,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:581,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/out_video.c:594,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_video.c:598,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:707,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/out_video.c:707,1
    - Dst: vout_make_gl_current
      Src: /src/gpac/src/filters/out_video.c:713,1
    - Dst: DEL_SHADER
      Src: /src/gpac/src/filters/out_video.c:714,1
    - Dst: DEL_SHADER
      Src: /src/gpac/src/filters/out_video.c:715,1
    - Dst: DEL_PROGRAM
      Src: /src/gpac/src/filters/out_video.c:716,1
    - Dst: gf_gl_txw_reset
      Src: /src/gpac/src/filters/out_video.c:717,1
    - Dst: vout_make_gl_current
      Src: /src/gpac/src/filters/out_video.c:723,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/filters/out_video.c:724,1
    - Dst: glCreateProgram
      Src: /src/gpac/src/filters/out_video.c:725,1
    - Dst: glCreateShader
      Src: /src/gpac/src/filters/out_video.c:726,1
    - Dst: vout_compile_shader
      Src: /src/gpac/src/filters/out_video.c:727,1
    - Dst: glCreateShader
      Src: /src/gpac/src/filters/out_video.c:729,1
    - Dst: gf_gl_txw_setup
      Src: /src/gpac/src/filters/out_video.c:730,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/filters/out_video.c:732,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_video.c:735,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_video.c:742,1
    - Dst: gf_gl_txw_insert_fragment_shader
      Src: /src/gpac/src/filters/out_video.c:745,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_video.c:746,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:751,1
    - Dst: vout_compile_shader
      Src: /src/gpac/src/filters/out_video.c:753,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_video.c:754,1
    - Dst: glAttachShader
      Src: /src/gpac/src/filters/out_video.c:756,1
    - Dst: glAttachShader
      Src: /src/gpac/src/filters/out_video.c:757,1
    - Dst: glLinkProgram
      Src: /src/gpac/src/filters/out_video.c:758,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:763,1
    - Dst: glClear
      Src: /src/gpac/src/filters/out_video.c:769,1
    - Dst: glViewport
      Src: /src/gpac/src/filters/out_video.c:770,1
    - Dst: glClear
      Src: /src/gpac/src/filters/out_video.c:772,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:773,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:775,1
    - Dst: glHint
      Src: /src/gpac/src/filters/out_video.c:776,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:777,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:778,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:779,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:781,1
    - Dst: glBlendFunc
      Src: /src/gpac/src/filters/out_video.c:782,1
    - Dst: glEnable
      Src: /src/gpac/src/filters/out_video.c:784,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:786,1
    - Dst: load_gl_tx_matrix
      Src: /src/gpac/src/filters/out_video.c:789,1
    - Dst: gf_pixel_fmt_is_transparent
      Src: /src/gpac/src/filters/out_video.c:821,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/out_video.c:825,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/out_video.c:825,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:829,1
    CyclomaticComplexity: 107
    EdgeCount: 107
    ICount: 393
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 831
      start: 372
    functionDepth: 7
    functionLinenumber: 372
    functionLinenumberEnd: 831
    functionName: vout_configure_pid
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - gf_free
    - DEL_SHADER
    - gf_filter_pid_check_caps
    - memset
    - GL_CHECK_ERR
    - glAttachShader
    - gf_gl_txw_setup
    - resize_video_output
    - gf_prop_matrix_decompose
    - gf_assert
    - GF_VideoOutCtx*::video_out::ProcessEvent
    - vout_make_gl_current
    - DEL_PROGRAM
    - glCreateProgram
    - glViewport
    - GF_FEVT_INIT
    - glDisable
    - load_gl_tx_matrix
    - gf_dynstrcat
    - gf_filter_get_udta
    - vout_draw_frame
    - gf_pixel_fmt_name
    - GF_LOG
    - gf_filter_pid_negotiate_property
    - gf_filter_pid_init_play_event
    - GF_VideoOutCtx*::video_out::SetFullScreen
    - vout_compile_shader
    - glLinkProgram
    - gf_filter_pid_send_event
    - gf_timestamp_rescale
    - vout_set_caption
    - glEnable
    - gf_gl_txw_insert_fragment_shader
    - gf_filter_pid_get_property
    - PROP_UINT
    - glCreateShader
    - gf_filter_pck_unref
    - glClear
    - glBlendFunc
    - gf_pixel_get_size_info
    - gf_gl_txw_reset
    - gf_pixel_fmt_is_transparent
    - glHint
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vout_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: vout_reset_overlay
      Src: /src/gpac/src/filters/out_video.c:849,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_video.c:852,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_video.c:855,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_video.c:871,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_video.c:902,1
    - Dst: gf_filter_remove
      Src: /src/gpac/src/filters/out_video.c:907,1
    - Dst: gf_filter_ui_event
      Src: /src/gpac/src/filters/out_video.c:912,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/out_video.c:922,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/out_video.c:923,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_video.c:935,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 90
    argCount: 2
    argNames:
    - cbk
    - evt
    argTypes:
    - void*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 938
      start: 833
    functionDepth: 2
    functionLinenumber: 833
    functionLinenumberEnd: 938
    functionName: vout_on_event
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - vout_reset_overlay
    - GF_FEVT_INIT
    - gf_filter_ui_event
    - gf_filter_pid_send_event
    - gf_filter_remove
    linkageType: ''
    returnType: Bool
    signature: Bool vout_on_event(void *cbk, GF_Event *evt)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_video.c:951,1
    - Dst: gf_filter_claim_opengl_provider
      Src: /src/gpac/src/filters/out_video.c:957,1
    - Dst: gf_module_load
      Src: /src/gpac/src/filters/out_video.c:962,1
    - Dst: gpac_force_step_mode
      Src: /src/gpac/src/filters/out_video.c:967,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:978,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/out_video.c:981,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/out_video.c:982,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:985,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/out_video.c:991,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/out_video.c:992,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/out_video.c:993,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/out_video.c:994,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/out_video.c:995,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/out_video.c:996,1
    - Dst: GF_VideoOutCtx*::video_out::Setup
      Src: /src/gpac/src/filters/out_video.c:1001,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1003,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/filters/out_video.c:1004,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1014,1
    - Dst: memset
      Src: /src/gpac/src/filters/out_video.c:1022,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:1029,1
    - Dst: gf_opengl_init
      Src: /src/gpac/src/filters/out_video.c:1032,1
    - Dst: gf_filter_register_opengl_provider
      Src: /src/gpac/src/filters/out_video.c:1034,1
    - Dst: gf_filter_set_event_target
      Src: /src/gpac/src/filters/out_video.c:1044,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_video.c:1046,1
    - Dst: gf_filter_load_script
      Src: /src/gpac/src/filters/out_video.c:1050,1
    - Dst: vout_set_caption
      Src: /src/gpac/src/filters/out_video.c:1054,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 79
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1056
      start: 945
    functionDepth: 6
    functionLinenumber: 945
    functionLinenumberEnd: 1056
    functionName: vout_initialize
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - GF_VideoOutCtx*::video_out::ProcessEvent
    - gf_opts_set_key
    - sscanf
    - gf_opengl_init
    - gf_filter_load_script
    - GF_LOG
    - gf_modules_close_interface
    - GF_VideoOutCtx*::video_out::Setup
    - gf_filter_register_opengl_provider
    - gf_module_load
    - gf_filter_set_event_target
    - memset
    - gf_opts_get_key
    - vout_set_caption
    - gpac_force_step_mode
    - gf_filter_post_process_task
    - gf_filter_claim_opengl_provider
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vout_initialize(GF_Filter *filter)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_video.c:1060,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_video.c:1063,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filters/out_video.c:1069,1
    - Dst: DEL_SHADER
      Src: /src/gpac/src/filters/out_video.c:1073,1
    - Dst: DEL_SHADER
      Src: /src/gpac/src/filters/out_video.c:1074,1
    - Dst: DEL_PROGRAM
      Src: /src/gpac/src/filters/out_video.c:1075,1
    - Dst: gf_gl_txw_reset
      Src: /src/gpac/src/filters/out_video.c:1076,1
    - Dst: glDeleteBuffers
      Src: /src/gpac/src/filters/out_video.c:1078,1
    - Dst: glDeleteBuffers
      Src: /src/gpac/src/filters/out_video.c:1079,1
    - Dst: gf_filter_unclaim_opengl_provider
      Src: /src/gpac/src/filters/out_video.c:1085,1
    - Dst: GF_VideoOutCtx*::video_out::Shutdown
      Src: /src/gpac/src/filters/out_video.c:1086,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/filters/out_video.c:1087,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_video.c:1091,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1094
      start: 1058
    functionDepth: 3
    functionLinenumber: 1058
    functionLinenumberEnd: 1094
    functionName: vout_finalize
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - gf_free
    - DEL_PROGRAM
    - DEL_SHADER
    - GF_VideoOutCtx*::video_out::Shutdown
    - gf_modules_close_interface
    - gf_sleep
    - gf_filter_unclaim_opengl_provider
    - gf_filter_pck_unref
    - gf_gl_txw_reset
    - glDeleteBuffers
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void vout_finalize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: glMatrixMode
      Src: /src/gpac/src/filters/out_video.c:1132,1
    - Dst: glLoadIdentity
      Src: /src/gpac/src/filters/out_video.c:1133,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/filters/out_video.c:1134,1
    - Dst: glLoadIdentity
      Src: /src/gpac/src/filters/out_video.c:1135,1
    - Dst: glEnable
      Src: /src/gpac/src/filters/out_video.c:1137,1
    - Dst: glEnable
      Src: /src/gpac/src/filters/out_video.c:1138,1
    - Dst: glBindTexture
      Src: /src/gpac/src/filters/out_video.c:1139,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/filters/out_video.c:1141,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/filters/out_video.c:1142,1
    - Dst: glClientActiveTexture
      Src: /src/gpac/src/filters/out_video.c:1143,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/filters/out_video.c:1144,1
    - Dst: glTexCoordPointer
      Src: /src/gpac/src/filters/out_video.c:1145,1
    - Dst: glDrawElements
      Src: /src/gpac/src/filters/out_video.c:1147,1
    - Dst: glDisableClientState
      Src: /src/gpac/src/filters/out_video.c:1148,1
    - Dst: glDisableClientState
      Src: /src/gpac/src/filters/out_video.c:1149,1
    - Dst: glActiveTexture
      Src: /src/gpac/src/filters/out_video.c:1151,1
    - Dst: glBindTexture
      Src: /src/gpac/src/filters/out_video.c:1152,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:1153,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 27
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_VideoOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1155
      start: 1098
    functionDepth: 0
    functionLinenumber: 1098
    functionLinenumberEnd: 1155
    functionName: vout_draw_overlay
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - glTexCoordPointer
    - glBindTexture
    - glMatrixMode
    - glDisable
    - glClientActiveTexture
    - glDisableClientState
    - glEnableClientState
    - glDrawElements
    - glVertexPointer
    - glActiveTexture
    - glLoadIdentity
    - glEnable
    linkageType: ''
    returnType: void
    signature: void vout_draw_overlay(GF_VideoOutCtx *ctx)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_gl_txw_bind
      Src: /src/gpac/src/filters/out_video.c:1164,1
    - Dst: glGenBuffers
      Src: /src/gpac/src/filters/out_video.c:1245,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/filters/out_video.c:1246,1
    - Dst: glBufferData
      Src: /src/gpac/src/filters/out_video.c:1247,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/filters/out_video.c:1248,1
    - Dst: glGenBuffers
      Src: /src/gpac/src/filters/out_video.c:1250,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/filters/out_video.c:1251,1
    - Dst: glBufferData
      Src: /src/gpac/src/filters/out_video.c:1252,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/filters/out_video.c:1253,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/filters/out_video.c:1256,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/filters/out_video.c:1258,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/filters/out_video.c:1259,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/src/filters/out_video.c:1260,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/filters/out_video.c:1263,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/filters/out_video.c:1265,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/filters/out_video.c:1266,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/src/filters/out_video.c:1267,1
    - Dst: glDrawArrays
      Src: /src/gpac/src/filters/out_video.c:1269,1
    - Dst: glDisableVertexAttribArray
      Src: /src/gpac/src/filters/out_video.c:1270,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1272,1
    - Dst: glDisableVertexAttribArray
      Src: /src/gpac/src/filters/out_video.c:1274,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1276,1
    - Dst: glActiveTexture
      Src: /src/gpac/src/filters/out_video.c:1279,1
    - Dst: glBindTexture
      Src: /src/gpac/src/filters/out_video.c:1280,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/filters/out_video.c:1281,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:1283,1
    - Dst: glUseProgram
      Src: /src/gpac/src/filters/out_video.c:1286,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_video.c:1291,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/out_video.c:1291,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_video.c:1292,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_video.c:1294,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_video.c:1297,1
    - Dst: glFlush
      Src: /src/gpac/src/filters/out_video.c:1299,1
    - Dst: glReadPixels
      Src: /src/gpac/src/filters/out_video.c:1301,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/filters/out_video.c:1302,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/out_video.c:1304,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_video.c:1307,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/out_video.c:1308,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1311,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_video.c:1311,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 111
    argCount: 2
    argNames:
    - ctx
    - flip_texture
    argTypes:
    - GF_VideoOutCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1314
      start: 1157
    functionDepth: 5
    functionLinenumber: 1157
    functionLinenumberEnd: 1314
    functionName: vout_draw_gl_quad
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - gf_gl_txw_bind
    - glBufferData
    - gf_fwrite
    - gf_fopen
    - GL_CHECK_ERR
    - glActiveTexture
    - gf_file_basename
    - strchr
    - glGetAttribLocation
    - snprintf
    - glBindTexture
    - glDisable
    - glDrawArrays
    - glEnableVertexAttribArray
    - GF_LOG
    - glGenBuffers
    - glVertexAttribPointer
    - gf_error_to_string
    - glReadPixels
    - gf_malloc
    - glBindBuffer
    - gf_fclose
    - glFlush
    - glDisableVertexAttribArray
    - glUseProgram
    linkageType: ''
    returnType: void
    signature: void vout_draw_gl_quad(GF_VideoOutCtx *ctx, Bool flip_texture)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: glDeleteTextures
      Src: /src/gpac/src/filters/out_video.c:1319,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/filters/out_video.c:1325,1
    - Dst: glLoadIdentity
      Src: /src/gpac/src/filters/out_video.c:1326,1
    - Dst: vout_draw_gl_quad
      Src: /src/gpac/src/filters/out_video.c:1329,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/filters/out_video.c:1330,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - hwf
    argTypes:
    - GF_VideoOutCtx*
    - GF_FilterFrameInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1331
      start: 1316
    functionDepth: 6
    functionLinenumber: 1316
    functionLinenumberEnd: 1331
    functionName: vout_draw_gl_hw_textures
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - glMatrixMode
    - vout_draw_gl_quad
    - GL_CHECK_ERR
    - glLoadIdentity
    - glDeleteTextures
    linkageType: ''
    returnType: void
    signature: void vout_draw_gl_hw_textures(GF_VideoOutCtx *ctx, GF_FilterFrameInterface
      *hwf)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: glDeleteBuffers
      Src: /src/gpac/src/filters/out_video.c:1336,1
    - Dst: glDeleteBuffers
      Src: /src/gpac/src/filters/out_video.c:1340,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_VideoOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1343
      start: 1333
    functionDepth: 0
    functionLinenumber: 1333
    functionLinenumberEnd: 1343
    functionName: vbo_changed
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - glDeleteBuffers
    linkageType: ''
    returnType: void
    signature: void vbo_changed(GF_VideoOutCtx *ctx)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: vout_make_gl_current
      Src: /src/gpac/src/filters/out_video.c:1353,1
    - Dst: glUseProgram
      Src: /src/gpac/src/filters/out_video.c:1354,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_video.c:1406,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/filters/out_video.c:1409,1
    - Dst: gf_mx_ortho
      Src: /src/gpac/src/filters/out_video.c:1412,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/filters/out_video.c:1414,1
    - Dst: glUniformMatrix4fv
      Src: /src/gpac/src/filters/out_video.c:1416,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/filters/out_video.c:1422,1
    - Dst: glLoadMatrixf
      Src: /src/gpac/src/filters/out_video.c:1423,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/filters/out_video.c:1424,1
    - Dst: vbo_changed
      Src: /src/gpac/src/filters/out_video.c:1427,1
    - Dst: glViewport
      Src: /src/gpac/src/filters/out_video.c:1430,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/filters/out_video.c:1433,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/filters/out_video.c:1434,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/filters/out_video.c:1435,1
    - Dst: glClearColor
      Src: /src/gpac/src/filters/out_video.c:1436,1
    - Dst: glClearColor
      Src: /src/gpac/src/filters/out_video.c:1438,1
    - Dst: glClear
      Src: /src/gpac/src/filters/out_video.c:1440,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/out_video.c:1447,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:1456,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:1458,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:1459,1
    - Dst: glBlendFunc
      Src: /src/gpac/src/filters/out_video.c:1461,1
    - Dst: glEnable
      Src: /src/gpac/src/filters/out_video.c:1462,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:1464,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/filters/out_video.c:1468,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/filters/out_video.c:1469,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/filters/out_video.c:1470,1
    - Dst: glClearColor
      Src: /src/gpac/src/filters/out_video.c:1471,1
    - Dst: glClear
      Src: /src/gpac/src/filters/out_video.c:1472,1
    - Dst: vout_draw_gl_hw_textures
      Src: /src/gpac/src/filters/out_video.c:1476,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_video.c:1478,1
    - Dst: gf_gl_txw_upload
      Src: /src/gpac/src/filters/out_video.c:1481,1
    - Dst: vout_draw_gl_quad
      Src: /src/gpac/src/filters/out_video.c:1484,1
    - Dst: glUseProgram
      Src: /src/gpac/src/filters/out_video.c:1490,1
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filters/out_video.c:1495,1
    - Dst: glGenTextures
      Src: /src/gpac/src/filters/out_video.c:1498,1
    - Dst: glBindTexture
      Src: /src/gpac/src/filters/out_video.c:1501,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/filters/out_video.c:1503,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/filters/out_video.c:1504,1
    - Dst: glEnable
      Src: /src/gpac/src/filters/out_video.c:1506,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/filters/out_video.c:1507,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/filters/out_video.c:1508,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/filters/out_video.c:1510,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/filters/out_video.c:1511,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/filters/out_video.c:1514,1
    - Dst: glEnable
      Src: /src/gpac/src/filters/out_video.c:1518,1
    - Dst: glBindTexture
      Src: /src/gpac/src/filters/out_video.c:1520,1
    - Dst: glTexSubImage2D
      Src: /src/gpac/src/filters/out_video.c:1521,1
    - Dst: vout_draw_overlay
      Src: /src/gpac/src/filters/out_video.c:1524,1
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filters/out_video.c:1526,1
    - Dst: GF_VideoOutCtx*::video_out::Flush
      Src: /src/gpac/src/filters/out_video.c:1530,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 142
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - GF_VideoOutCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1531
      start: 1345
    functionDepth: 7
    functionLinenumber: 1345
    functionLinenumberEnd: 1531
    functionName: vout_draw_gl
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - gf_free
    - glTexSubImage2D
    - glUniformMatrix4fv
    - gf_filter_lock
    - vout_draw_overlay
    - gf_filter_pck_get_frame_interface
    - GF_COL_G
    - vout_draw_gl_hw_textures
    - vout_make_gl_current
    - glBindTexture
    - glMatrixMode
    - gf_mx_init
    - glViewport
    - glDisable
    - glTexParameteri
    - GF_COL_B
    - gf_filter_pck_get_data
    - GF_COL_R
    - vbo_changed
    - glGetUniformLocation
    - glLoadMatrixf
    - glEnable
    - gf_gl_txw_upload
    - gf_mx_ortho
    - glClearColor
    - glClear
    - glBlendFunc
    - glTexImage2D
    - vout_draw_gl_quad
    - glUseProgram
    - GF_VideoOutCtx*::video_out::Flush
    - glGenTextures
    linkageType: ''
    returnType: void
    signature: void vout_draw_gl(GF_VideoOutCtx *ctx, GF_FilterPacket *pck)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/out_video.c:1545,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_video.c:1553,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/out_video.c:1557,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1561,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/out_video.c:1564,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1566,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/out_video.c:1570,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1572,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/out_video.c:1576,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1578,1
    - Dst: memset
      Src: /src/gpac/src/filters/out_video.c:1591,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:1596,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1598,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_video.c:1598,1
    - Dst: GF_VideoOutCtx*::video_out::Blit
      Src: /src/gpac/src/filters/out_video.c:1626,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1628,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_video.c:1628,1
    - Dst: GF_VideoOutCtx*::video_out::LockBackBuffer
      Src: /src/gpac/src/filters/out_video.c:1634,1
    - Dst: gf_stretch_bits
      Src: /src/gpac/src/filters/out_video.c:1636,1
    - Dst: GF_VideoOutCtx*::video_out::LockBackBuffer
      Src: /src/gpac/src/filters/out_video.c:1637,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1639,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_video.c:1639,1
    - Dst: memset
      Src: /src/gpac/src/filters/out_video.c:1648,1
    - Dst: GF_VideoOutCtx*::video_out::Blit
      Src: /src/gpac/src/filters/out_video.c:1658,1
    - Dst: memset
      Src: /src/gpac/src/filters/out_video.c:1662,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:1665,1
    - Dst: GF_VideoOutCtx*::video_out::LockBackBuffer
      Src: /src/gpac/src/filters/out_video.c:1672,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_video.c:1675,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/out_video.c:1675,1
    - Dst: gf_pixel_fmt_sname
      Src: /src/gpac/src/filters/out_video.c:1676,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_video.c:1679,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_video.c:1680,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_video.c:1682,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/out_video.c:1684,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_video.c:1688,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/out_video.c:1691,1
    - Dst: GF_VideoOutCtx*::video_out::LockBackBuffer
      Src: /src/gpac/src/filters/out_video.c:1695,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1699,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_video.c:1699,1
    - Dst: GF_VideoOutCtx*::video_out::Flush
      Src: /src/gpac/src/filters/out_video.c:1707,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1709,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_video.c:1709,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 142
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - GF_VideoOutCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1712
      start: 1534
    functionDepth: 5
    functionLinenumber: 1534
    functionLinenumberEnd: 1712
    functionName: vout_draw_2d
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - gf_fwrite
    - memset
    - gf_fopen
    - gf_filter_pck_get_frame_interface
    - strchr
    - gf_file_basename
    - GF_VideoOutCtx*::video_out::ProcessEvent
    - snprintf
    - GF_VideoOutCtx*::video_out::LockBackBuffer
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_error_to_string
    - gf_pixel_fmt_sname
    - gf_fclose
    - GF_VideoOutCtx*::video_out::Blit
    - gf_stretch_bits
    - GF_FilterFrameInterface*::get_plane
    - strcmp
    - GF_VideoOutCtx*::video_out::Flush
    linkageType: ''
    returnType: void
    signature: void vout_draw_2d(GF_VideoOutCtx *ctx, GF_FilterPacket *pck)
  - BBCount: 84
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_video.c:1717,1
    - Dst: resize_video_output
      Src: /src/gpac/src/filters/out_video.c:1724,1
    - Dst: vout_configure_pid
      Src: /src/gpac/src/filters/out_video.c:1730,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:1733,1
    - Dst: vout_draw_frame
      Src: /src/gpac/src/filters/out_video.c:1738,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_video.c:1739,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_video.c:1745,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_video.c:1746,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/out_video.c:1748,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_video.c:1749,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_video.c:1752,1
    - Dst: vout_draw_frame
      Src: /src/gpac/src/filters/out_video.c:1768,1
    - Dst: gf_filter_has_connect_errors
      Src: /src/gpac/src/filters/out_video.c:1770,1
    - Dst: gf_filter_all_sinks_done
      Src: /src/gpac/src/filters/out_video.c:1774,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/src/filters/out_video.c:1774,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_video.c:1783,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_video.c:1787,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/out_video.c:1789,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/out_video.c:1789,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_video.c:1792,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_video.c:1793,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_video.c:1800,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_video.c:1804,1
    - Dst: vout_draw_frame
      Src: /src/gpac/src/filters/out_video.c:1808,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1812,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_video.c:1813,1
    - Dst: gf_filter_all_sinks_done
      Src: /src/gpac/src/filters/out_video.c:1818,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_video.c:1819,1
    - Dst: vout_draw_frame
      Src: /src/gpac/src/filters/out_video.c:1825,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1832,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_video.c:1833,1
    - Dst: vout_draw_frame
      Src: /src/gpac/src/filters/out_video.c:1859,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_video.c:1862,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/out_video.c:1865,1
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/src/filters/out_video.c:1871,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/filters/out_video.c:1877,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1879,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/src/filters/out_video.c:1881,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_video.c:1882,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/out_video.c:1884,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_video.c:1886,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/out_video.c:1887,1
    - Dst: vout_draw_frame
      Src: /src/gpac/src/filters/out_video.c:1891,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_video.c:1896,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1898,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/src/filters/out_video.c:1903,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1904,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_video.c:1905,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/out_video.c:1916,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_video.c:1917,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/out_video.c:1923,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_video.c:1926,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_video.c:1930,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_video.c:1931,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/out_video.c:1932,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/src/filters/out_video.c:1934,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_video.c:1935,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_video.c:1941,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_video.c:1948,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_video.c:1951,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_video.c:1952,1
    - Dst: gf_filter_get_clock_hint
      Src: /src/gpac/src/filters/out_video.c:1962,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_video.c:1966,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_video.c:1972,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_video.c:1985,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1986,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_video.c:1986,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_video.c:1991,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1995,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_video.c:1995,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_video.c:2009,1
    - Dst: ABS
      Src: /src/gpac/src/filters/out_video.c:2012,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_video.c:2035,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_video.c:2043,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:2049,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_video.c:2049,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_video.c:2051,1
    - Dst: ABS
      Src: /src/gpac/src/filters/out_video.c:2057,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:2058,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_video.c:2058,1
    - Dst: gf_filter_ui_event
      Src: /src/gpac/src/filters/out_video.c:2063,1
    - Dst: gf_filter_ui_event
      Src: /src/gpac/src/filters/out_video.c:2070,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_video.c:2077,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_video.c:2081,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/out_video.c:2081,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/out_video.c:2084,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_video.c:2085,1
    - Dst: ABS
      Src: /src/gpac/src/filters/out_video.c:2092,1
    - Dst: gf_filter_pid_get_first_packet_cts
      Src: /src/gpac/src/filters/out_video.c:2102,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:2109,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_video.c:2109,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_video.c:2111,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_video.c:2112,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:2117,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_video.c:2117,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/out_video.c:2119,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_video.c:2120,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/out_video.c:2124,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:2125,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_video.c:2125,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_video.c:2132,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_video.c:2135,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/out_video.c:2137,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/out_video.c:2145,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/filters/out_video.c:2147,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_video.c:2152,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_video.c:2154,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_video.c:2156,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/out_video.c:2157,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/out_video.c:2157,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/out_video.c:2158,1
    - Dst: vout_draw_frame
      Src: /src/gpac/src/filters/out_video.c:2165,1
    CyclomaticComplexity: 115
    EdgeCount: 115
    ICount: 339
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2166
      start: 1714
    functionDepth: 8
    functionLinenumber: 1714
    functionLinenumberEnd: 2166
    functionName: vout_process
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - gf_filter_connections_pending
    - gf_filter_pid_get_first_packet_cts
    - gf_filter_has_connect_errors
    - gf_filter_pid_get_packet
    - gf_sys_clock
    - gf_filter_pid_query_buffer_duration
    - resize_video_output
    - gf_filter_get_clock_hint
    - GF_VideoOutCtx*::video_out::ProcessEvent
    - GF_FEVT_INIT
    - sprintf
    - gf_filter_pid_has_seen_eos
    - gf_filter_pck_get_cts
    - gf_filter_ask_rt_reschedule
    - gf_filter_pck_get_duration
    - gf_filter_get_udta
    - gf_filter_pck_get_property
    - vout_configure_pid
    - vout_draw_frame
    - gf_filter_pid_drop_packet
    - gf_filter_pid_set_discard
    - gf_filter_update_status
    - gf_filter_pck_ref
    - GF_LOG
    - gf_pixel_fmt_name
    - gf_filter_pid_init_play_event
    - gf_filter_pid_send_event
    - gf_filter_pid_is_eos
    - gf_filter_all_sinks_done
    - gf_sys_clock_high_res
    - gf_timestamp_rescale
    - ABS
    - gf_filter_pck_is_blocking_ref
    - gf_filter_pck_unref
    - gf_timestamp_greater
    - gf_filter_ui_event
    - gf_filter_reporting_enabled
    - gf_filter_pid_is_flush_eos
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vout_process(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: glGetError
      Src: /src/gpac/src/filters/out_video.c:2174,1
    - Dst: vout_draw_gl
      Src: /src/gpac/src/filters/out_video.c:2175,1
    - Dst: glGetError
      Src: /src/gpac/src/filters/out_video.c:2176,1
    - Dst: vout_draw_2d
      Src: /src/gpac/src/filters/out_video.c:2180,1
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/src/filters/out_video.c:2185,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_video.c:2189,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_video.c:2193,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 21
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_VideoOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2197
      start: 2168
    functionDepth: 8
    functionLinenumber: 2168
    functionLinenumberEnd: 2197
    functionName: vout_draw_frame
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 2
    functionsReached:
    - vout_draw_2d
    - gf_filter_pck_is_blocking_ref
    - gf_filter_pck_unref
    - vout_draw_gl
    - glGetError
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vout_draw_frame(GF_VideoOutCtx *ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_video.c:2202,1
    - Dst: vout_set_caption
      Src: /src/gpac/src/filters/out_video.c:2203,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_video.c:2207,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:2210,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - filter
    - fevt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2216
      start: 2199
    functionDepth: 2
    functionLinenumber: 2199
    functionLinenumberEnd: 2216
    functionName: vout_process_event
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - GF_VideoOutCtx*::video_out::ProcessEvent
    - vout_set_caption
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool vout_process_event(GF_Filter *filter, const GF_FilterEvent *fevt)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_video.c:2220,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_video.c:2222,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_video.c:2228,1
    - Dst: vout_reset_overlay
      Src: /src/gpac/src/filters/out_video.c:2232,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_video.c:2238,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_video.c:2241,1
    - Dst: vout_reset_overlay
      Src: /src/gpac/src/filters/out_video.c:2242,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_video.c:2246,1
    - Dst: GF_VideoOutCtx*::video_out::SetFullScreen
      Src: /src/gpac/src/filters/out_video.c:2249,1
    - Dst: GF_VideoOutCtx*::video_out::SetFullScreen
      Src: /src/gpac/src/filters/out_video.c:2255,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_video.c:2262,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_video.c:2262,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_video.c:2267,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_video.c:2270,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:2271,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_video.c:2276,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_video.c:2278,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_video.c:2289,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 71
    argCount: 3
    argNames:
    - filter
    - arg_name
    - new_val
    argTypes:
    - GF_Filter*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2295
      start: 2218
    functionDepth: 2
    functionLinenumber: 2218
    functionLinenumberEnd: 2295
    functionName: vout_update_arg
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - vout_reset_overlay
    - GF_LOG
    - GF_FEVT_INIT
    - GF_VideoOutCtx*::video_out::SetFullScreen
    - strcmp
    - gf_filter_pid_send_event
    - gf_filter_post_process_task
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vout_update_arg(GF_Filter *filter, const char *arg_name, const
      GF_PropertyValue *new_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2300
      start: 2299
    functionDepth: 0
    functionLinenumber: 2299
    functionLinenumberEnd: 2300
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2396
      start: 2393
    functionDepth: 0
    functionLinenumber: 2393
    functionLinenumberEnd: 2396
    functionName: vout_register
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *vout_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2401
      start: 2398
    functionDepth: 0
    functionLinenumber: 2398
    functionLinenumberEnd: 2401
    functionName: vout_register
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *vout_register(GF_FilterSession *session)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/out_file.c:106,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_file.c:111,1
    - Dst: strcat
      Src: /src/gpac/src/filters/out_file.c:112,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/filters/out_file.c:113,1
    - Dst: gf_file_move
      Src: /src/gpac/src/filters/out_file.c:114,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_file.c:115,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - ctx
    - final_flush
    argTypes:
    - GF_FileOutCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 103
    functionDepth: 5
    functionLinenumber: 103
    functionLinenumberEnd: 117
    functionName: fileout_close_hls_chunk
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_fclose
    - gf_file_move
    - gf_free
    - strcpy
    - gf_file_delete
    linkageType: ''
    returnType: void
    signature: void fileout_close_hls_chunk(GF_FileOutCtx *ctx, Bool final_flush)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_file.c:123,1
    - Dst: strcat
      Src: /src/gpac/src/filters/out_file.c:124,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/filters/out_file.c:125,1
    - Dst: gf_file_move
      Src: /src/gpac/src/filters/out_file.c:126,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_FileOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 119
    functionDepth: 3
    functionLinenumber: 119
    functionLinenumberEnd: 128
    functionName: fileout_check_close
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached:
    - strcat
    - strcpy
    - gf_file_delete
    - gf_file_move
    linkageType: ''
    returnType: void
    signature: void fileout_check_close(GF_FileOutCtx *ctx)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:135,1
    - Dst: close
      Src: /src/gpac/src/filters/out_file.c:136,1
    - Dst: fileout_close_hls_chunk
      Src: /src/gpac/src/filters/out_file.c:137,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:141,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/out_file.c:142,1
    - Dst: fileout_close_hls_chunk
      Src: /src/gpac/src/filters/out_file.c:143,1
    - Dst: fileout_check_close
      Src: /src/gpac/src/filters/out_file.c:145,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_file.c:155,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_file.c:156,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_file.c:159,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_file.c:159,1
    - Dst: _setmode
      Src: /src/gpac/src/filters/out_file.c:166,1
    - Dst: _fileno
      Src: /src/gpac/src/filters/out_file.c:166,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_file.c:177,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filters/out_file.c:178,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/out_file.c:183,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/out_file.c:185,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/out_file.c:185,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/out_file.c:186,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/out_file.c:188,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_file.c:188,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_file.c:188,1
    - Dst: strcat
      Src: /src/gpac/src/filters/out_file.c:189,1
    - Dst: strcat
      Src: /src/gpac/src/filters/out_file.c:190,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/out_file.c:193,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/out_file.c:193,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/out_file.c:194,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_file.c:199,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_file.c:200,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_file.c:201,1
    - Dst: gf_filter_pid_resolve_file_template
      Src: /src/gpac/src/filters/out_file.c:202,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_file.c:205,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_file.c:206,1
    - Dst: gf_filter_pid_resolve_file_template_ex
      Src: /src/gpac/src/filters/out_file.c:207,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/out_file.c:214,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_file.c:216,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/out_file.c:219,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/out_file.c:224,1
    - Dst: scanf
      Src: /src/gpac/src/filters/out_file.c:225,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_file.c:236,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:241,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_file.c:244,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_file.c:247,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/out_file.c:248,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_file.c:248,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_file.c:248,1
    - Dst: strcat
      Src: /src/gpac/src/filters/out_file.c:249,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/out_file.c:253,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_file.c:254,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/out_file.c:257,1
    - Dst: gf_fd_open
      Src: /src/gpac/src/filters/out_file.c:259,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/out_file.c:262,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_file.c:264,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:265,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_file.c:267,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:275,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 106
    argCount: 7
    argNames:
    - ctx
    - filename
    - ext
    - file_idx
    - explicit_overwrite
    - file_suffix
    - check_no_open
    argTypes:
    - GF_FileOutCtx*
    - char*
    - char*
    - u32
    - Bool
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 130
    functionDepth: 6
    functionLinenumber: 130
    functionLinenumberEnd: 280
    functionName: fileout_open_close
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached:
    - gf_file_exists
    - fileout_check_close
    - _fileno
    - gf_fileio_translate_url
    - strcpy
    - gf_filter_pid_resolve_file_template_ex
    - gf_fopen
    - fprintf
    - gf_fd_open
    - strcat
    - gf_assert
    - fileout_close_hls_chunk
    - _setmode
    - close
    - strncmp
    - GF_LOG
    - strncpy
    - scanf
    - gf_filter_pid_resolve_file_template
    - strlen
    - gf_fclose
    - gf_file_ext_start
    - strcmp
    - gf_fopen_ex
    - gf_opts_get_bool
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fileout_open_close(GF_FileOutCtx *ctx, const char *filename,
      const char *ext, u32 file_idx, Bool explicit_overwrite, char *file_suffix, Bool
      check_no_open)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:287,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:288,1
    - Dst: fileout_open_close
      Src: /src/gpac/src/filters/out_file.c:291,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:295,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_file.c:298,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_file.c:300,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_file.c:303,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_file.c:304,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_file.c:305,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_file.c:306,1
    - Dst: fileout_open_close
      Src: /src/gpac/src/filters/out_file.c:312,1
    - Dst: fileout_open_close
      Src: /src/gpac/src/filters/out_file.c:315,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:317,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:318,1
    - Dst: fileout_open_close
      Src: /src/gpac/src/filters/out_file.c:320,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 41
    argCount: 2
    argNames:
    - ctx
    - explicit_overwrite
    argTypes:
    - GF_FileOutCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 282
    functionDepth: 7
    functionLinenumber: 282
    functionLinenumberEnd: 322
    functionName: fileout_setup_file
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - fileout_open_close
    - strstr
    - strncmp
    - strchr
    linkageType: ''
    returnType: void
    signature: void fileout_setup_file(GF_FileOutCtx *ctx, Bool explicit_overwrite)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_file.c:326,1
    - Dst: fileout_open_close
      Src: /src/gpac/src/filters/out_file.c:329,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/out_file.c:332,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/out_file.c:336,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_file.c:337,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:341,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:344,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:348,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:351,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_file.c:360,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:362,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:367,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 40
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 323
    functionDepth: 7
    functionLinenumber: 323
    functionLinenumberEnd: 373
    functionName: fileout_configure_pid
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_pid_get_property
    - gf_filter_pid_init_play_event
    - fileout_open_close
    - gf_filter_pid_check_caps
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fileout_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_file.c:379,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_file.c:390,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_file.c:390,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_file.c:390,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/out_file.c:391,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/out_file.c:394,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/out_file.c:399,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/out_file.c:401,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_file.c:405,1
    - Dst: gf_fileio_open_url
      Src: /src/gpac/src/filters/out_file.c:407,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/filters/out_file.c:407,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/out_file.c:409,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filters/out_file.c:412,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_file.c:418,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_file.c:420,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/out_file.c:428,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:433,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/out_file.c:438,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_file.c:443,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/out_file.c:446,1
    - Dst: strlwr
      Src: /src/gpac/src/filters/out_file.c:448,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_file.c:450,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/out_file.c:453,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 70
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 459
      start: 375
    functionDepth: 4
    functionLinenumber: 375
    functionLinenumberEnd: 459
    functionName: fileout_initialize
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached:
    - PROP_NAME
    - PROP_UINT
    - gf_filter_override_caps
    - GF_LOG
    - gf_fileio_translate_url
    - gf_fileio_open_url
    - strstr
    - strlwr
    - gf_fileio_from_url
    - strncpy
    - strncmp
    - strnicmp
    - gf_file_ext_start
    - stricmp
    - gf_filter_setup_failure
    - strchr
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fileout_initialize(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_file.c:464,1
    - Dst: fileout_close_hls_chunk
      Src: /src/gpac/src/filters/out_file.c:466,1
    - Dst: fileout_open_close
      Src: /src/gpac/src/filters/out_file.c:468,1
    - Dst: gf_fileio_open_url
      Src: /src/gpac/src/filters/out_file.c:470,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_file.c:473,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_file.c:474,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_file.c:475,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_file.c:477,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_file.c:479,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_file.c:480,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 481
      start: 461
    functionDepth: 7
    functionLinenumber: 461
    functionLinenumberEnd: 481
    functionName: fileout_finalize
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - fileout_close_hls_chunk
    - fileout_open_close
    - gf_fileio_open_url
    - gf_list_count
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void fileout_finalize(GF_Filter *filter)
  - BBCount: 93
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_file.c:491,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_file.c:493,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/out_file.c:501,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/out_file.c:501,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/out_file.c:502,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_file.c:504,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/out_file.c:504,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/out_file.c:505,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_file.c:514,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_file.c:522,1
    - Dst: lseek_64
      Src: /src/gpac/src/filters/out_file.c:528,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/out_file.c:532,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_file.c:540,1
    - Dst: fileout_open_close
      Src: /src/gpac/src/filters/out_file.c:543,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/out_file.c:549,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/out_file.c:551,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_file.c:554,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:563,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:565,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:566,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:567,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_file.c:570,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_file.c:572,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:574,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:577,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_file.c:579,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_file.c:580,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:596,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_file.c:600,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_file.c:608,1
    - Dst: lseek_64
      Src: /src/gpac/src/filters/out_file.c:614,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/out_file.c:618,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_file.c:627,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:629,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:633,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:646,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:648,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:649,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:653,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:656,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/out_file.c:658,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:665,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/out_file.c:669,1
    - Dst: fileout_open_close
      Src: /src/gpac/src/filters/out_file.c:671,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_file.c:674,1
    - Dst: fileout_setup_file
      Src: /src/gpac/src/filters/out_file.c:682,1
    - Dst: gf_fileio_check
      Src: /src/gpac/src/filters/out_file.c:687,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:691,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_file.c:693,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_file.c:694,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_file.c:698,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/out_file.c:699,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/filters/out_file.c:700,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_file.c:701,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:703,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_file.c:705,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_file.c:705,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:709,1
    - Dst: gf_mpd_resolve_subnumber
      Src: /src/gpac/src/filters/out_file.c:712,1
    - Dst: fileout_close_hls_chunk
      Src: /src/gpac/src/filters/out_file.c:714,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_file.c:717,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_file.c:718,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_file.c:723,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/out_file.c:724,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/out_file.c:725,1
    - Dst: gf_fileio_open_url
      Src: /src/gpac/src/filters/out_file.c:729,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/filters/out_file.c:729,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/out_file.c:731,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_file.c:734,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/out_file.c:736,1
    - Dst: gf_fileio_write_ready
      Src: /src/gpac/src/filters/out_file.c:743,1
    - Dst: gf_fileio_write_ready
      Src: /src/gpac/src/filters/out_file.c:745,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/out_file.c:751,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_file.c:767,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/out_file.c:769,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/out_file.c:771,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/out_file.c:772,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:774,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:776,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/out_file.c:778,1
    - Dst: write
      Src: /src/gpac/src/filters/out_file.c:787,1
    - Dst: lseek_64
      Src: /src/gpac/src/filters/out_file.c:788,1
    - Dst: lseek_64
      Src: /src/gpac/src/filters/out_file.c:789,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_file.c:793,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/out_file.c:794,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_file.c:795,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:799,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_file.c:805,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:807,1
    - Dst: lseek_64
      Src: /src/gpac/src/filters/out_file.c:817,1
    - Dst: read
      Src: /src/gpac/src/filters/out_file.c:818,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_file.c:822,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/out_file.c:823,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:827,1
    - Dst: lseek_64
      Src: /src/gpac/src/filters/out_file.c:833,1
    - Dst: write
      Src: /src/gpac/src/filters/out_file.c:834,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_file.c:838,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_file.c:839,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:843,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_file.c:849,1
    - Dst: lseek_64
      Src: /src/gpac/src/filters/out_file.c:855,1
    - Dst: write
      Src: /src/gpac/src/filters/out_file.c:856,1
    - Dst: lseek_64
      Src: /src/gpac/src/filters/out_file.c:857,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_file.c:861,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_file.c:862,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_file.c:863,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:867,1
    - Dst: write
      Src: /src/gpac/src/filters/out_file.c:876,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_file.c:879,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:882,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_file.c:889,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:891,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:901,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:903,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:905,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/out_file.c:910,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/out_file.c:916,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:918,1
    - Dst: write
      Src: /src/gpac/src/filters/out_file.c:931,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_file.c:934,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:936,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:945,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:947,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:950,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_file.c:952,1
    - Dst: lseek_64
      Src: /src/gpac/src/filters/out_file.c:957,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/out_file.c:960,1
    - Dst: fileout_open_close
      Src: /src/gpac/src/filters/out_file.c:962,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_file.c:964,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/out_file.c:968,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_file.c:970,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/out_file.c:970,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/out_file.c:971,1
    CyclomaticComplexity: 123
    EdgeCount: 123
    ICount: 376
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 974
      start: 483
    functionDepth: 8
    functionLinenumber: 483
    functionLinenumberEnd: 974
    functionName: fileout_process
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fileio_check
    - read
    - strcpy
    - fileout_open_close
    - gf_fwrite
    - gf_list_count
    - gf_fileio_from_url
    - fileout_setup_file
    - gf_filter_pck_get_seek_flag
    - gf_filter_pck_get_frame_interface
    - gf_file_basename
    - gf_filter_pid_get_packet
    - gf_strdup
    - gf_filter_pck_get_framing
    - snprintf
    - fileout_close_hls_chunk
    - strrchr
    - gf_fseek
    - GF_FEVT_INIT
    - sprintf
    - gf_filter_pck_get_dependency_flags
    - strncmp
    - gf_list_add
    - gf_fileio_write_ready
    - gf_dynstrcat
    - gf_ftell
    - gf_filter_pck_get_property
    - gf_filter_get_udta
    - gf_filter_update_status
    - gf_filter_pid_drop_packet
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_fread
    - gf_fileio_open_url
    - lseek_64
    - gf_filter_pck_get_interlaced
    - write
    - gf_mpd_resolve_subnumber
    - gf_filter_pid_send_event
    - gf_filter_pid_is_eos
    - gf_filter_setup_failure
    - gf_malloc
    - gf_filter_pid_get_property
    - gf_list_pop_front
    - gf_url_concatenate
    - gf_filter_abort
    - gf_pixel_get_size_info
    - gf_file_delete
    - gf_filter_reporting_enabled
    - gf_filter_pid_is_flush_eos
    - gf_fopen_ex
    - gf_filter_pck_get_byte_offset
    - GF_FilterFrameInterface*::get_plane
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err fileout_process(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_file.c:981,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:983,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:985,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_file.c:988,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_file.c:988,1
    - Dst: gf_fileio_file_delete
      Src: /src/gpac/src/filters/out_file.c:991,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/out_file.c:995,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/filters/out_file.c:996,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_file.c:997,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/filters/out_file.c:999,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1005
      start: 978
    functionDepth: 3
    functionLinenumber: 978
    functionLinenumberEnd: 1005
    functionName: fileout_process_event
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_fileio_file_delete
    - gf_url_concatenate
    - strncmp
    - gf_file_delete
    - strchr
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool fileout_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/filters/out_file.c:1008,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_file.c:1010,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_file.c:1011,1
    - Dst: gf_fileio_write_mode
      Src: /src/gpac/src/filters/out_file.c:1012,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/filters/out_file.c:1012,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1019
      start: 1006
    functionDepth: 3
    functionLinenumber: 1006
    functionLinenumberEnd: 1019
    functionName: fileout_probe_url
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached:
    - gf_fileio_from_url
    - gf_fileio_write_mode
    - strnicmp
    - strstr
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore fileout_probe_url(const char *url, const char *mime)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1023
      start: 1022
    functionDepth: 0
    functionLinenumber: 1022
    functionLinenumberEnd: 1023
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/out_file.c:1101,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/out_file.c:1102,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1105
      start: 1099
    functionDepth: 6
    functionLinenumber: 1099
    functionLinenumberEnd: 1105
    functionName: fout_register
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    - gf_opts_set_key
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *fout_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1110
      start: 1107
    functionDepth: 0
    functionLinenumber: 1107
    functionLinenumberEnd: 1110
    functionName: fout_register
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *fout_register(GF_FilterSession *session)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_openhevc.c:136,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_openhevc.c:139,1
    - Dst: oh_select_active_layer
      Src: /src/gpac/src/filters/dec_openhevc.c:148,1
    - Dst: oh_select_view_layer
      Src: /src/gpac/src/filters/dec_openhevc.c:149,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/dec_openhevc.c:153,1
    - Dst: oh_select_active_layer
      Src: /src/gpac/src/filters/dec_openhevc.c:162,1
    - Dst: oh_select_view_layer
      Src: /src/gpac/src/filters/dec_openhevc.c:163,1
    - Dst: gf_filter_pid_is_playing
      Src: /src/gpac/src/filters/dec_openhevc.c:167,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dec_openhevc.c:170,1
    - Dst: gf_filter_pid_get_max_buffer
      Src: /src/gpac/src/filters/dec_openhevc.c:171,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dec_openhevc.c:172,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dec_openhevc.c:174,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dec_openhevc.c:175,1
    - Dst: oh_extradata_cpy_lhvc
      Src: /src/gpac/src/filters/dec_openhevc.c:183,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_openhevc.c:188,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_openhevc.c:189,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_openhevc.c:190,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_openhevc.c:191,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_openhevc.c:192,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/dec_openhevc.c:193,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dec_openhevc.c:194,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dec_openhevc.c:198,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_openhevc.c:199,1
    - Dst: oh_start
      Src: /src/gpac/src/filters/dec_openhevc.c:202,1
    - Dst: oh_decode
      Src: /src/gpac/src/filters/dec_openhevc.c:206,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_openhevc.c:207,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/dec_openhevc.c:209,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 56
    argCount: 4
    argNames:
    - ctx
    - pid
    - codecid
    - stream
    argTypes:
    - GF_OHEVCDecCtx*
    - GF_FilterPid*
    - u32
    - GF_HEVCStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 128
    functionDepth: 9
    functionLinenumber: 128
    functionLinenumberEnd: 211
    functionName: ohevcdec_configure_scalable_pid
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - gf_list_count
    - gf_odf_hevc_cfg_read
    - oh_start
    - gf_list_get
    - gf_bs_get_content
    - oh_extradata_cpy_lhvc
    - GF_FEVT_INIT
    - oh_decode
    - oh_select_active_layer
    - gf_bs_write_int
    - gf_bs_write_data
    - gf_filter_pid_is_playing
    - gf_filter_pid_send_event
    - gf_odf_hevc_cfg_del
    - gf_filter_pid_get_property
    - gf_filter_pid_get_max_buffer
    - gf_bs_del
    - oh_select_view_layer
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ohevcdec_configure_scalable_pid(GF_OHEVCDecCtx *ctx, GF_FilterPid
      *pid, u32 codecid, GF_HEVCStream *stream)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_openhevc.c:216,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_openhevc.c:218,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/dec_openhevc.c:219,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dec_openhevc.c:220,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - bs
    - list
    - nalu_size_length
    argTypes:
    - GF_BitStream*
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 214
    functionDepth: 6
    functionLinenumber: 214
    functionLinenumberEnd: 222
    functionName: ohevcdec_write_ps_list
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_bs_write_data
    - gf_bs_write_int
    linkageType: ''
    returnType: void
    signature: void ohevcdec_write_ps_list(GF_BitStream *bs, GF_List *list, u32 nalu_size_length)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_openhevc.c:226,1
    - Dst: ohevcdec_write_ps_list
      Src: /src/gpac/src/filters/dec_openhevc.c:227,1
    - Dst: ohevcdec_write_ps_list
      Src: /src/gpac/src/filters/dec_openhevc.c:228,1
    - Dst: ohevcdec_write_ps_list
      Src: /src/gpac/src/filters/dec_openhevc.c:229,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_openhevc.c:230,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dec_openhevc.c:231,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_openhevc.c:232,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 5
    argNames:
    - stream
    - nal_unit_size
    - sps
    - pps
    - vps
    argTypes:
    - GF_HEVCStream*
    - u32
    - GF_List*
    - GF_List*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 224
    functionDepth: 9
    functionLinenumber: 224
    functionLinenumberEnd: 233
    functionName: ohevcdec_create_inband
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_del
    - ohevcdec_write_ps_list
    linkageType: ''
    returnType: void
    signature: void ohevcdec_create_inband(GF_HEVCStream *stream, u32 nal_unit_size,
      GF_List *sps, GF_List *pps, GF_List *vps)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/dec_openhevc.c:245,1
    - Dst: gf_log_va_list
      Src: /src/gpac/src/filters/dec_openhevc.c:246,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 4
    argNames:
    - udta
    - l
    - fmt
    - vl
    argTypes:
    - void*
    - int
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 237
    functionDepth: 2
    functionLinenumber: 237
    functionLinenumberEnd: 248
    functionName: openhevc_log_callback
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - gf_log_tool_level_on
    - gf_log_va_list
    linkageType: ''
    returnType: void
    signature: void openhevc_log_callback(void *udta, int l, const char*fmt, va_list
      vl)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_openhevc.c:253,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_openhevc.c:256,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_openhevc.c:257,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_openhevc.c:259,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_openhevc.c:260,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_openhevc.c:262,1
    - Dst: libOpenHevcVersion
      Src: /src/gpac/src/filters/dec_openhevc.c:262,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 264
    functionName: ohevcdec_set_codec_name
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - gf_filter_set_name
    - libOpenHevcVersion
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ohevcdec_set_codec_name(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_OHEVCDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 282
    functionName: ohevcdec_get_pixel_format
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 ohevcdec_get_pixel_format(GF_OHEVCDecCtx *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_openhevc.c:288,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:289,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_openhevc.c:289,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:290,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:291,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:294,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_openhevc.c:294,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:295,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_openhevc.c:295,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:296,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_openhevc.c:296,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:297,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:299,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_openhevc.c:299,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:301,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_openhevc.c:301,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:302,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_openhevc.c:302,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:304,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_openhevc.c:304,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:305,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:308,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_openhevc.c:308,1
    - Dst: ohevcdec_get_pixel_format
      Src: /src/gpac/src/filters/dec_openhevc.c:310,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:311,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_openhevc.c:311,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:312,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/dec_openhevc.c:312,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_OHEVCDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 284
    functionDepth: 1
    functionLinenumber: 284
    functionLinenumberEnd: 313
    functionName: ohevc_set_out_props
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - PROP_FRAC
    - gf_filter_pid_set_property
    - ohevcdec_get_pixel_format
    linkageType: ''
    returnType: void
    signature: void ohevc_set_out_props(GF_OHEVCDecCtx *ctx)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_openhevc.c:722,1
    - Dst: oh_select_view_layer
      Src: /src/gpac/src/filters/dec_openhevc.c:735,1
    - Dst: oh_select_active_layer
      Src: /src/gpac/src/filters/dec_openhevc.c:736,1
    - Dst: oh_close
      Src: /src/gpac/src/filters/dec_openhevc.c:750,1
    - Dst: ohevcdec_configure_pid
      Src: /src/gpac/src/filters/dec_openhevc.c:754,1
    - Dst: oh_select_active_layer
      Src: /src/gpac/src/filters/dec_openhevc.c:759,1
    - Dst: oh_select_view_layer
      Src: /src/gpac/src/filters/dec_openhevc.c:760,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 39
    argCount: 2
    argNames:
    - filter
    - fevt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 720
    functionDepth: 1
    functionLinenumber: 720
    functionLinenumberEnd: 768
    functionName: ohevcdec_process_event
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - oh_select_active_layer
    - oh_close
    - ohevcdec_configure_pid
    - oh_select_view_layer
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool ohevcdec_process_event(GF_Filter *filter, const GF_FilterEvent
      *fevt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_openhevc.c:773,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dec_openhevc.c:775,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - filter
    - pid
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 776
      start: 771
    functionDepth: 1
    functionLinenumber: 771
    functionLinenumberEnd: 776
    functionName: ohevcframe_release
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - gf_filter_post_process_task
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ohevcframe_release(GF_Filter *filter, GF_FilterPid *pid, GF_FilterPacket
      *pck)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 4
    argNames:
    - frame
    - plane_idx
    - outPlane
    - outStride
    argTypes:
    - GF_FilterFrameInterface*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 798
      start: 778
    functionDepth: 0
    functionLinenumber: 778
    functionLinenumberEnd: 798
    functionName: ohevcframe_get_plane
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ohevcframe_get_plane(GF_FilterFrameInterface *frame, u32 plane_idx,
      const u8 **outPlane, u32 *outStride)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: oh_output_update
      Src: /src/gpac/src/filters/dec_openhevc.c:809,1
    - Dst: gf_filter_pck_new_frame_interface
      Src: /src/gpac/src/filters/dec_openhevc.c:811,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_openhevc.c:815,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_openhevc.c:817,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_openhevc.c:818,1
    - Dst: gf_filter_pck_get_carousel_version
      Src: /src/gpac/src/filters/dec_openhevc.c:819,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/src/filters/dec_openhevc.c:820,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_openhevc.c:822,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dec_openhevc.c:823,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_openhevc.c:824,1
    - Dst: ohevc_set_out_props
      Src: /src/gpac/src/filters/dec_openhevc.c:827,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dec_openhevc.c:834,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_openhevc.c:837,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_OHEVCDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 800
    functionDepth: 2
    functionLinenumber: 800
    functionLinenumberEnd: 839
    functionName: ohevcdec_send_output_frame
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pck_set_cts
    - oh_output_update
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - gf_list_count
    - gf_filter_pck_get_carousel_version
    - gf_filter_pck_get_cts
    - gf_filter_pck_new_frame_interface
    - gf_filter_pck_set_carousel_version
    - ohevc_set_out_props
    - gf_list_rem
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ohevcdec_send_output_frame(GF_OHEVCDecCtx *ctx)
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: oh_frameinfo_update
      Src: /src/gpac/src/filters/dec_openhevc.c:852,1
    - Dst: oh_cropped_frameinfo
      Src: /src/gpac/src/filters/dec_openhevc.c:854,1
    - Dst: oh_cropped_frameinfo_from_layer
      Src: /src/gpac/src/filters/dec_openhevc.c:855,1
    - Dst: oh_output_update
      Src: /src/gpac/src/filters/dec_openhevc.c:857,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_openhevc.c:872,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_openhevc.c:874,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_openhevc.c:875,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/dec_openhevc.c:879,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dec_openhevc.c:880,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_openhevc.c:881,1
    - Dst: ohevc_set_out_props
      Src: /src/gpac/src/filters/dec_openhevc.c:917,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_openhevc.c:920,1
    - Dst: ohevcdec_send_output_frame
      Src: /src/gpac/src/filters/dec_openhevc.c:923,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dec_openhevc.c:934,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_openhevc.c:936,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dec_openhevc.c:937,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dec_openhevc.c:940,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_openhevc.c:941,1
    - Dst: oh_output_update
      Src: /src/gpac/src/filters/dec_openhevc.c:958,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_openhevc.c:971,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_openhevc.c:974,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_openhevc.c:977,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_openhevc.c:982,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_openhevc.c:985,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_openhevc.c:988,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_openhevc.c:993,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_openhevc.c:997,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_openhevc.c:1000,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_openhevc.c:1008,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dec_openhevc.c:1016,1
    - Dst: oh_output_cropped_cpy_from_layer
      Src: /src/gpac/src/filters/dec_openhevc.c:1031,1
    - Dst: oh_output_cropped_cpy_from_layer
      Src: /src/gpac/src/filters/dec_openhevc.c:1032,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dec_openhevc.c:1035,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_openhevc.c:1036,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dec_openhevc.c:1038,1
    - Dst: oh_output_update
      Src: /src/gpac/src/filters/dec_openhevc.c:1056,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_openhevc.c:1058,1
    - Dst: oh_output_cropped_cpy
      Src: /src/gpac/src/filters/dec_openhevc.c:1061,1
    - Dst: gf_filter_pck_get_carousel_version
      Src: /src/gpac/src/filters/dec_openhevc.c:1066,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/src/filters/dec_openhevc.c:1067,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_openhevc.c:1069,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dec_openhevc.c:1070,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_openhevc.c:1071,1
    - Dst: ohevc_set_out_props
      Src: /src/gpac/src/filters/dec_openhevc.c:1074,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dec_openhevc.c:1076,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_openhevc.c:1078,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dec_openhevc.c:1080,1
    CyclomaticComplexity: 68
    EdgeCount: 68
    ICount: 202
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_OHEVCDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1083
      start: 840
    functionDepth: 3
    functionLinenumber: 840
    functionLinenumberEnd: 1083
    functionName: ohevcdec_flush_picture
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pck_get_carousel_version
    - gf_filter_pck_get_seek_flag
    - oh_output_cropped_cpy
    - ohevc_set_out_props
    - gf_list_get
    - oh_output_update
    - memcpy
    - gf_filter_pck_get_cts
    - gf_filter_pck_discard
    - gf_filter_pck_set_carousel_version
    - gf_filter_pck_new_alloc
    - oh_cropped_frameinfo
    - GF_LOG
    - gf_list_del_item
    - oh_output_cropped_cpy_from_layer
    - gf_filter_pck_set_cts
    - oh_frameinfo_update
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - oh_cropped_frameinfo_from_layer
    - ohevcdec_send_output_frame
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ohevcdec_flush_picture(GF_OHEVCDecCtx *ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/dec_openhevc.c:1088,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/dec_openhevc.c:1094,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/dec_openhevc.c:1097,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - stream
    - ts
    argTypes:
    - GF_OHEVCDecCtx*
    - GF_HEVCStream*
    - s64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1104
      start: 1085
    functionDepth: 1
    functionLinenumber: 1085
    functionLinenumberEnd: 1104
    functionName: translate_ts_temi
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - gf_timestamp_rescale_signed
    linkageType: ''
    returnType: u64
    signature: u64 translate_ts_temi(GF_OHEVCDecCtx *ctx, GF_HEVCStream *stream, s64
      ts)
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_openhevc.c:1116,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_openhevc.c:1124,1
    - Dst: oh_flush
      Src: /src/gpac/src/filters/dec_openhevc.c:1127,1
    - Dst: oh_decode_lhvc
      Src: /src/gpac/src/filters/dec_openhevc.c:1131,1
    - Dst: oh_decode
      Src: /src/gpac/src/filters/dec_openhevc.c:1134,1
    - Dst: ohevcdec_flush_picture
      Src: /src/gpac/src/filters/dec_openhevc.c:1137,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_openhevc.c:1139,1
    - Dst: oh_close
      Src: /src/gpac/src/filters/dec_openhevc.c:1142,1
    - Dst: ohevcdec_configure_pid
      Src: /src/gpac/src/filters/dec_openhevc.c:1146,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_openhevc.c:1152,1
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/src/filters/dec_openhevc.c:1158,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dec_openhevc.c:1162,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_openhevc.c:1164,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_openhevc.c:1165,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dec_openhevc.c:1166,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dec_openhevc.c:1167,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_openhevc.c:1169,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_openhevc.c:1176,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_openhevc.c:1181,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_openhevc.c:1185,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dec_openhevc.c:1185,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/dec_openhevc.c:1190,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_openhevc.c:1191,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dec_openhevc.c:1195,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_openhevc.c:1196,1
    - Dst: translate_ts_temi
      Src: /src/gpac/src/filters/dec_openhevc.c:1200,1
    - Dst: translate_ts_temi
      Src: /src/gpac/src/filters/dec_openhevc.c:1201,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_openhevc.c:1204,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_openhevc.c:1210,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_openhevc.c:1213,1
    - Dst: oh_start
      Src: /src/gpac/src/filters/dec_openhevc.c:1229,1
    - Dst: oh_decode_lhvc
      Src: /src/gpac/src/filters/dec_openhevc.c:1237,1
    - Dst: oh_decode
      Src: /src/gpac/src/filters/dec_openhevc.c:1240,1
    - Dst: ohevcdec_flush_picture
      Src: /src/gpac/src/filters/dec_openhevc.c:1243,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_openhevc.c:1250,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_openhevc.c:1251,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_openhevc.c:1252,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_openhevc.c:1253,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/dec_openhevc.c:1262,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_openhevc.c:1263,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/src/filters/dec_openhevc.c:1264,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_openhevc.c:1274,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dec_openhevc.c:1277,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_openhevc.c:1278,1
    - Dst: translate_ts_temi
      Src: /src/gpac/src/filters/dec_openhevc.c:1282,1
    - Dst: translate_ts_temi
      Src: /src/gpac/src/filters/dec_openhevc.c:1283,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_openhevc.c:1296,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dec_openhevc.c:1301,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_openhevc.c:1303,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_openhevc.c:1304,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_openhevc.c:1308,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_openhevc.c:1312,1
    - Dst: oh_decode_lhvc
      Src: /src/gpac/src/filters/dec_openhevc.c:1318,1
    - Dst: oh_decode_lhvc
      Src: /src/gpac/src/filters/dec_openhevc.c:1320,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dec_openhevc.c:1328,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_openhevc.c:1330,1
    - Dst: oh_decode
      Src: /src/gpac/src/filters/dec_openhevc.c:1333,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_openhevc.c:1336,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dec_openhevc.c:1336,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_openhevc.c:1341,1
    - Dst: oh_decode
      Src: /src/gpac/src/filters/dec_openhevc.c:1345,1
    - Dst: ohevcdec_flush_picture
      Src: /src/gpac/src/filters/dec_openhevc.c:1354,1
    CyclomaticComplexity: 71
    EdgeCount: 71
    ICount: 187
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1355
      start: 1106
    functionDepth: 5
    functionLinenumber: 1106
    functionLinenumberEnd: 1355
    functionName: ohevcdec_process
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_pck_enum_properties
    - gf_bs_new
    - translate_ts_temi
    - gf_list_count
    - oh_close
    - gf_filter_pck_ref_props
    - gf_filter_pid_get_packet
    - gf_filter_pid_get_name
    - gf_realloc
    - oh_start
    - gf_bs_read_u32
    - gf_list_pop_back
    - memcpy
    - oh_decode
    - strncmp
    - ohevcdec_configure_pid
    - gf_list_add
    - gf_filter_pck_get_cts
    - gf_filter_pck_set_carousel_version
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - GF_LOG
    - gf_filter_pck_get_data
    - ohevcdec_flush_picture
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_sap
    - gf_filter_pid_is_eos
    - oh_decode_lhvc
    - gf_bs_del
    - gf_filter_pck_unref
    - oh_flush
    - gf_bs_read_u64
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ohevcdec_process(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_openhevc.c:1360,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/src/filters/dec_openhevc.c:1363,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_openhevc.c:1365,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_openhevc.c:1368,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1372
      start: 1357
    functionDepth: 1
    functionLinenumber: 1357
    functionLinenumberEnd: 1372
    functionName: ohevcdec_initialize
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - gf_sys_get_rti
    - GF_LOG
    - gf_list_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ohevcdec_initialize(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_openhevc.c:1376,1
    - Dst: oh_start
      Src: /src/gpac/src/filters/dec_openhevc.c:1378,1
    - Dst: oh_close
      Src: /src/gpac/src/filters/dec_openhevc.c:1379,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_openhevc.c:1381,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_openhevc.c:1382,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_openhevc.c:1384,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_openhevc.c:1385,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_openhevc.c:1386,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_openhevc.c:1388,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1389
      start: 1374
    functionDepth: 3
    functionLinenumber: 1374
    functionLinenumberEnd: 1389
    functionName: ohevcdec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - oh_start
    - gf_list_pop_back
    - gf_filter_pck_unref
    - gf_list_count
    - oh_close
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ohevcdec_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1408
      start: 1407
    functionDepth: 0
    functionLinenumber: 1407
    functionLinenumberEnd: 1408
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1462
      start: 1453
    functionDepth: 0
    functionLinenumber: 1453
    functionLinenumberEnd: 1462
    functionName: ohevcdec_register
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ohevcdec_register(GF_FilterSession *session)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_odf.c:43,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_odf.c:49,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_odf.c:53,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_odf.c:58,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dec_odf.c:65,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_odf.c:69,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dec_odf.c:74,1
    - Dst: gf_filter_pid_is_filter_in_parents
      Src: /src/gpac/src/filters/dec_odf.c:79,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_odf.c:84,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_odf.c:87,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_odf.c:88,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_odf.c:88,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dec_odf.c:89,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 36
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 93
    functionName: odf_dec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_odf.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_is_filter_in_parents
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err odf_dec_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/dec_odf.c:98,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_odf.c:101,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/filters/dec_odf.c:104,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - odm
    - od
    argTypes:
    - GF_ObjectManager*
    - GF_ObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 95
    functionDepth: 4
    functionLinenumber: 95
    functionLinenumberEnd: 108
    functionName: attach_desc_to_odm
    functionSourceFile: /src/gpac/src/filters/dec_odf.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_odf_desc_copy
    - gf_odf_desc_del
    linkageType: ''
    returnType: void
    signature: void attach_desc_to_odm(GF_ObjectManager *odm, GF_ObjectDescriptor
      *od)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_new
      Src: /src/gpac/src/filters/dec_odf.c:116,1
    - Dst: attach_desc_to_odm
      Src: /src/gpac/src/filters/dec_odf.c:122,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_odf.c:124,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_odf.c:126,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_odf.c:128,1
    - Dst: gf_scene_new
      Src: /src/gpac/src/filters/dec_odf.c:131,1
    - Dst: gf_odm_setup_remote_object
      Src: /src/gpac/src/filters/dec_odf.c:140,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_odf.c:145,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_odf.c:148,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_odf.c:156,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_odf.c:158,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_odf.c:162,1
    - Dst: attach_desc_to_odm
      Src: /src/gpac/src/filters/dec_odf.c:167,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dec_odf.c:179,1
    - Dst: gf_odm_new
      Src: /src/gpac/src/filters/dec_odf.c:198,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_odf.c:206,1
    - Dst: attach_desc_to_odm
      Src: /src/gpac/src/filters/dec_odf.c:208,1
    - Dst: gf_scene_setup_object
      Src: /src/gpac/src/filters/dec_odf.c:211,1
    - Dst: gf_input_sensor_setup_object
      Src: /src/gpac/src/filters/dec_odf.c:212,1
    - Dst: gf_mo_new
      Src: /src/gpac/src/filters/dec_odf.c:215,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_odf.c:219,1
    - Dst: gf_clock_set_time
      Src: /src/gpac/src/filters/dec_odf.c:221,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_odf.c:226,1
    - Dst: gf_scene_new
      Src: /src/gpac/src/filters/dec_odf.c:233,1
    - Dst: attach_desc_to_odm
      Src: /src/gpac/src/filters/dec_odf.c:243,1
    - Dst: gf_odm_setup_object
      Src: /src/gpac/src/filters/dec_odf.c:246,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 111
    argCount: 2
    argNames:
    - scene
    - od
    argTypes:
    - GF_Scene*
    - GF_ObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 109
    functionDepth: 8
    functionLinenumber: 109
    functionLinenumberEnd: 249
    functionName: ODS_SetupOD
    functionSourceFile: /src/gpac/src/filters/dec_odf.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_scene_new
    - gf_odm_setup_remote_object
    - gf_odm_new
    - gf_scene_setup_object
    - GF_LOG
    - gf_odm_setup_object
    - gf_list_count
    - gf_clock_set_time
    - gf_list_add
    - attach_desc_to_odm
    - gf_list_enum
    - gf_input_sensor_setup_object
    - gf_mo_new
    linkageType: ''
    returnType: void
    signature: void ODS_SetupOD(GF_Scene *scene, GF_ObjectDescriptor *od)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_odf.c:256,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_odf.c:260,1
    - Dst: ODS_SetupOD
      Src: /src/gpac/src/filters/dec_odf.c:261,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - scene
    - odU
    argTypes:
    - GF_Scene*
    - GF_ODUpdate*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 251
    functionDepth: 9
    functionLinenumber: 251
    functionLinenumberEnd: 264
    functionName: ODS_ODUpdate
    functionSourceFile: /src/gpac/src/filters/dec_odf.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - ODS_SetupOD
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ODS_ODUpdate(GF_Scene *scene, GF_ODUpdate *odU)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_find_odm
      Src: /src/gpac/src/filters/dec_odf.c:272,1
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/filters/dec_odf.c:273,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - scene
    - odR
    argTypes:
    - GF_Scene*
    - GF_ODRemove*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 268
    functionDepth: 4
    functionLinenumber: 268
    functionLinenumberEnd: 276
    functionName: ODS_RemoveOD
    functionSourceFile: /src/gpac/src/filters/dec_odf.c
    functionUses: 0
    functionsReached:
    - gf_scene_find_odm
    - gf_odm_disconnect
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ODS_RemoveOD(GF_Scene *scene, GF_ODRemove *odR)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_find_odm
      Src: /src/gpac/src/filters/dec_odf.c:286,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_odf.c:290,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_odf.c:294,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dec_odf.c:298,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/dec_odf.c:302,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_odf.c:305,1
    - Dst: gf_odm_setup_es
      Src: /src/gpac/src/filters/dec_odf.c:306,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dec_odf.c:310,1
    - Dst: gf_scene_setup_object
      Src: /src/gpac/src/filters/dec_odf.c:315,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 2
    argNames:
    - scene
    - ESDs
    argTypes:
    - GF_Scene*
    - GF_ESDUpdate*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 278
    functionDepth: 8
    functionLinenumber: 278
    functionLinenumberEnd: 320
    functionName: ODS_UpdateESD
    functionSourceFile: /src/gpac/src/filters/dec_odf.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_odf_desc_del
    - gf_scene_setup_object
    - gf_odm_setup_es
    - gf_list_count
    - gf_scene_find_odm
    - gf_list_add
    - gf_list_enum
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ODS_UpdateESD(GF_Scene *scene, GF_ESDUpdate *ESDs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_scene_find_odm
      Src: /src/gpac/src/filters/dec_odf.c:325,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - scene
    - ESDs
    argTypes:
    - GF_Scene*
    - GF_ESDRemove*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 332
    functionName: ODS_RemoveESD
    functionSourceFile: /src/gpac/src/filters/dec_odf.c
    functionUses: 0
    functionsReached:
    - gf_scene_find_odm
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ODS_RemoveESD(GF_Scene *scene, GF_ESDRemove *ESDs)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_odf.c:344,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_odf.c:348,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/dec_odf.c:354,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dec_odf.c:357,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dec_odf.c:358,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dec_odf.c:359,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_odf.c:362,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_odf.c:364,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_odf.c:366,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_odf.c:369,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_odf.c:371,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_odf.c:376,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_odf.c:379,1
    - Dst: gf_timestamp_to_clocktime
      Src: /src/gpac/src/filters/dec_odf.c:380,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_odf.c:380,1
    - Dst: gf_sc_check_sys_frame
      Src: /src/gpac/src/filters/dec_odf.c:382,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/dec_odf.c:385,1
    - Dst: gf_odf_codec_new
      Src: /src/gpac/src/filters/dec_odf.c:386,1
    - Dst: gf_odf_codec_set_au
      Src: /src/gpac/src/filters/dec_odf.c:388,1
    - Dst: gf_odf_codec_decode
      Src: /src/gpac/src/filters/dec_odf.c:389,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_odf.c:391,1
    - Dst: gf_odf_codec_get_com
      Src: /src/gpac/src/filters/dec_odf.c:395,1
    - Dst: ODS_ODUpdate
      Src: /src/gpac/src/filters/dec_odf.c:401,1
    - Dst: ODS_RemoveOD
      Src: /src/gpac/src/filters/dec_odf.c:404,1
    - Dst: ODS_UpdateESD
      Src: /src/gpac/src/filters/dec_odf.c:407,1
    - Dst: ODS_RemoveESD
      Src: /src/gpac/src/filters/dec_odf.c:410,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_odf.c:416,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_odf.c:417,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dec_odf.c:418,1
    - Dst: IS_UpdateIPMP
      Src: /src/gpac/src/filters/dec_odf.c:419,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/filters/dec_odf.c:443,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/filters/dec_odf.c:446,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/dec_odf.c:448,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_odf.c:449,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 83
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 334
    functionDepth: 10
    functionLinenumber: 334
    functionLinenumberEnd: 453
    functionName: odf_dec_process
    functionSourceFile: /src/gpac/src/filters/dec_odf.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_get_ipid
    - gf_sc_check_sys_frame
    - gf_odf_codec_set_au
    - gf_filter_pid_get_packet
    - ODS_ODUpdate
    - ODS_RemoveESD
    - gf_list_get
    - gf_odf_com_del
    - gf_filter_pck_get_cts
    - gf_odf_codec_del
    - ODS_RemoveOD
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - gf_odf_codec_decode
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_timescale
    - ODS_UpdateESD
    - gf_filter_get_ipid_count
    - gf_filter_pid_is_eos
    - gf_sys_clock_high_res
    - IS_UpdateIPMP
    - gf_filter_pid_get_property
    - gf_timestamp_to_clocktime
    - gf_odf_codec_get_com
    - gf_odf_codec_new
    - gf_filter_pid_get_udta
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err odf_dec_process(GF_Filter *filter)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_odf.c:460,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/dec_odf.c:473,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dec_odf.c:476,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dec_odf.c:477,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dec_odf.c:484,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 2
    argNames:
    - filter
    - com
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 457
    functionDepth: 1
    functionLinenumber: 457
    functionLinenumberEnd: 490
    functionName: odf_dec_process_event
    functionSourceFile: /src/gpac/src/filters/dec_odf.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_udta
    - gf_filter_get_ipid
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool odf_dec_process_event(GF_Filter *filter, const GF_FilterEvent
      *com)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 520
      start: 517
    functionDepth: 0
    functionLinenumber: 517
    functionLinenumberEnd: 520
    functionName: odfdec_register
    functionSourceFile: /src/gpac/src/filters/dec_odf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *odfdec_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 522
    functionDepth: 0
    functionLinenumber: 522
    functionLinenumberEnd: 525
    functionName: odfdec_register
    functionSourceFile: /src/gpac/src/filters/dec_odf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *odfdec_register(GF_FilterSession *session)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:95,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_nhnt.c:96,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/dmx_nhnt.c:102,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/filters/dmx_nhnt.c:107,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_nhnt.c:110,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:110,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:110,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:110,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:110,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_nhnt.c:114,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhnt.c:115,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:118,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:119,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:120,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dmx_nhnt.c:121,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/filters/dmx_nhnt.c:122,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_nhnt.c:123,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_nhnt.c:124,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_nhnt.c:125,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dmx_nhnt.c:130,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_nhnt.c:132,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/filters/dmx_nhnt.c:133,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_nhnt.c:134,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_nhnt.c:135,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_nhnt.c:136,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_nhnt.c:138,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_nhnt.c:141,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_nhnt.c:142,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_nhnt.c:143,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_nhnt.c:145,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_nhnt.c:146,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_nhnt.c:147,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_nhnt.c:160,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_nhnt.c:169,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhnt.c:170,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:177,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/dmx_nhnt.c:177,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:179,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhnt.c:179,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 79
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_NHNTDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 82
    functionDepth: 5
    functionLinenumber: 82
    functionLinenumberEnd: 182
    functionName: nhntdmx_check_dur
    functionSourceFile: /src/gpac/src/filters/dmx_nhnt.c
    functionUses: 0
    functionsReached:
    - gf_fopen
    - PROP_FRAC64
    - gf_bs_available
    - gf_bs_read_u16
    - gf_bs_read_u24
    - gf_realloc
    - gf_bs_read_u32
    - strncmp
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_bs_from_file
    - gf_filter_pid_set_property
    - gf_fclose
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_bs_del
    - gf_bs_read_int
    - GF_4CC
    - gf_bs_read_u64
    linkageType: ''
    returnType: void
    signature: void nhntdmx_check_dur(GF_NHNTDmxCtx *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_nhnt.c:187,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dmx_nhnt.c:191,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dmx_nhnt.c:194,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dmx_nhnt.c:198,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:201,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/dmx_nhnt.c:202,1
    - Dst: gf_filter_force_main_thread
      Src: /src/gpac/src/filters/dmx_nhnt.c:203,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 185
    functionDepth: 4
    functionLinenumber: 185
    functionLinenumberEnd: 207
    functionName: nhntdmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/dmx_nhnt.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - gf_fileio_is_main_thread
    - gf_filter_force_main_thread
    - gf_filter_pid_check_caps
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhntdmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_nhnt.c:214,1
    - Dst: nhntdmx_check_dur
      Src: /src/gpac/src/filters/dmx_nhnt.c:221,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_nhnt.c:244,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_nhnt.c:246,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 209
    functionDepth: 6
    functionLinenumber: 209
    functionLinenumberEnd: 264
    functionName: nhntdmx_process_event
    functionSourceFile: /src/gpac/src/filters/dmx_nhnt.c
    functionUses: 0
    functionsReached:
    - nhntdmx_check_dur
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool nhntdmx_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_nhnt.c:268,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_nhnt.c:277,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_nhnt.c:279,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_nhnt.c:279,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dmx_nhnt.c:282,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/dmx_nhnt.c:283,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_nhnt.c:285,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_nhnt.c:288,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dmx_nhnt.c:291,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:294,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_nhnt.c:296,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhnt.c:297,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_nhnt.c:313,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/dmx_nhnt.c:315,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filters/dmx_nhnt.c:315,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/dmx_nhnt.c:315,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/dmx_nhnt.c:317,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/dmx_nhnt.c:317,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/dmx_nhnt.c:319,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/dmx_nhnt.c:321,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/dmx_nhnt.c:323,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhnt.c:323,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhnt.c:324,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dmx_nhnt.c:327,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/dmx_nhnt.c:328,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhnt.c:331,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_nhnt.c:332,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dmx_nhnt.c:333,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_nhnt.c:338,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:338,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:338,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:338,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:338,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhnt.c:342,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dmx_nhnt.c:342,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_nhnt.c:343,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dmx_nhnt.c:344,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_nhnt.c:348,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:351,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhnt.c:351,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/dmx_nhnt.c:353,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:354,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_nhnt.c:354,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:357,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:359,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhnt.c:361,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:363,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhnt.c:363,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:365,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:366,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhnt.c:366,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dmx_nhnt.c:368,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/filters/dmx_nhnt.c:369,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_nhnt.c:370,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:371,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhnt.c:371,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_nhnt.c:372,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_nhnt.c:373,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:374,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhnt.c:374,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dmx_nhnt.c:377,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filters/dmx_nhnt.c:377,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dmx_nhnt.c:379,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dmx_nhnt.c:381,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dmx_nhnt.c:383,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/dmx_nhnt.c:385,1
    - Dst: gf_file_load_data_filep
      Src: /src/gpac/src/filters/dmx_nhnt.c:388,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhnt.c:389,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/filters/dmx_nhnt.c:395,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:397,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhnt.c:397,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:398,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhnt.c:398,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:399,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhnt.c:399,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:400,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/dmx_nhnt.c:400,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:405,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/dmx_nhnt.c:405,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhnt.c:407,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:411,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_nhnt.c:411,1
    - Dst: nhntdmx_check_dur
      Src: /src/gpac/src/filters/dmx_nhnt.c:413,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dmx_nhnt.c:417,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dmx_nhnt.c:424,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/filters/dmx_nhnt.c:428,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_nhnt.c:429,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_nhnt.c:430,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_nhnt.c:431,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_nhnt.c:433,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_nhnt.c:436,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_nhnt.c:437,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_nhnt.c:438,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_nhnt.c:440,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_nhnt.c:441,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_nhnt.c:442,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/dmx_nhnt.c:453,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_nhnt.c:455,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/dmx_nhnt.c:458,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhnt.c:460,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dmx_nhnt.c:462,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_nhnt.c:464,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dmx_nhnt.c:465,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_nhnt.c:466,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/dmx_nhnt.c:467,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/dmx_nhnt.c:468,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_nhnt.c:469,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_nhnt.c:471,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_nhnt.c:474,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 158
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 266
    functionDepth: 7
    functionLinenumber: 266
    functionLinenumberEnd: 476
    functionName: nhntdmx_process
    functionSourceFile: /src/gpac/src/filters/dmx_nhnt.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - PROP_STRING
    - gf_fileio_translate_url
    - strcpy
    - PROP_DATA_NO_COPY
    - gf_bs_read_u16
    - gf_file_load_data_filep
    - gf_filter_pid_new
    - PROP_LONGUINT
    - gf_bs_available
    - gf_filter_pid_get_packet
    - gf_bs_read_u24
    - strcat
    - gf_4cc_to_str
    - gf_assert
    - gf_bs_read_u32
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_get_framing
    - strrchr
    - gf_fseek
    - strncmp
    - gf_fsize
    - PROP_BOOL
    - gf_m4v_get_config
    - gf_bs_skip_bytes
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pid_set_discard
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_fread
    - gf_filter_pid_would_block
    - gf_filter_pid_set_eos
    - strncpy
    - gf_filter_pck_set_sap
    - gf_bs_read_u8
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - gf_filter_pid_set_property
    - strlen
    - PROP_FRAC_INT
    - gf_fclose
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_set_framing
    - nhntdmx_check_dur
    - gf_file_ext_start
    - gf_fopen_ex
    - gf_bs_read_int
    - GF_4CC
    - gf_bs_read_u64
    - GF_ARRAY_LENGTH
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhntdmx_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 478
    functionDepth: 0
    functionLinenumber: 478
    functionLinenumberEnd: 482
    functionName: nhntdmx_initialize
    functionSourceFile: /src/gpac/src/filters/dmx_nhnt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nhntdmx_initialize(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_nhnt.c:486,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhnt.c:487,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_nhnt.c:488,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhnt.c:489,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 484
    functionDepth: 5
    functionLinenumber: 484
    functionLinenumberEnd: 490
    functionName: nhntdmx_finalize
    functionSourceFile: /src/gpac/src/filters/dmx_nhnt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_bs_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void nhntdmx_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 493
    functionDepth: 0
    functionLinenumber: 493
    functionLinenumberEnd: 494
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dmx_nhnt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 530
    functionDepth: 0
    functionLinenumber: 530
    functionLinenumberEnd: 533
    functionName: nhntr_register
    functionSourceFile: /src/gpac/src/filters/dmx_nhnt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *nhntr_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 538
      start: 535
    functionDepth: 0
    functionLinenumber: 535
    functionLinenumberEnd: 538
    functionName: nhntr_register
    functionSourceFile: /src/gpac/src/filters/dmx_nhnt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *nhntr_register(GF_FilterSession *session)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_mpeghdec.c:73,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_mpeghdec.c:77,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_mpeghdec.c:83,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_mpeghdec.c:87,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_mpeghdec.c:90,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mpeghdec.c:91,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_mpeghdec.c:91,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mpeghdec.c:92,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_mpeghdec.c:92,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mpeghdec.c:93,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_mpeghdec.c:97,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_mpeghdec.c:99,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_mpeghdec.c:101,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_mpeghdec.c:103,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_mpeghdec.c:105,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_mpeghdec.c:108,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_mpeghdec.c:115,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_mpeghdec.c:117,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mpeghdec.c:123,1
    - Dst: mpeghdecoder_init
      Src: /src/gpac/src/filters/dec_mpeghdec.c:131,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mpeghdec.c:134,1
    - Dst: mpeghdecoder_setMhaConfig
      Src: /src/gpac/src/filters/dec_mpeghdec.c:142,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mpeghdec.c:144,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mpeghdec.c:148,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mpeghdec.c:154,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_mpeghdec.c:154,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mpeghdec.c:155,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_mpeghdec.c:155,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dec_mpeghdec.c:157,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 68
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 159
    functionName: mpegh_dec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_mpeghdec.c
    functionUses: 0
    functionsReached:
    - gf_crc_32
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - GF_LOG
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_check_caps
    - mpeghdecoder_setMhaConfig
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - mpeghdecoder_init
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mpegh_dec_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_mpeghdec.c:163,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_mpeghdec.c:168,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_mpeghdec.c:171,1
    - Dst: mpeghdecoder_flushAndGet
      Src: /src/gpac/src/filters/dec_mpeghdec.c:175,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mpeghdec.c:177,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_mpeghdec.c:184,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_mpeghdec.c:185,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/dec_mpeghdec.c:186,1
    - Dst: mpeghdecoder_flush
      Src: /src/gpac/src/filters/dec_mpeghdec.c:188,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dec_mpeghdec.c:190,1
    - Dst: mpeghdecoder_process
      Src: /src/gpac/src/filters/dec_mpeghdec.c:191,1
    - Dst: mpeghdecoder_destroy
      Src: /src/gpac/src/filters/dec_mpeghdec.c:194,1
    - Dst: mpegh_dec_configure_pid
      Src: /src/gpac/src/filters/dec_mpeghdec.c:197,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_mpeghdec.c:200,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/dec_mpeghdec.c:204,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_mpeghdec.c:205,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_mpeghdec.c:208,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dec_mpeghdec.c:215,1
    - Dst: mpeghdecoder_getSamples
      Src: /src/gpac/src/filters/dec_mpeghdec.c:218,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dec_mpeghdec.c:220,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_mpeghdec.c:223,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dec_mpeghdec.c:237,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mpeghdec.c:243,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_mpeghdec.c:243,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_mpeghdec.c:247,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_mpeghdec.c:247,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/filters/dec_mpeghdec.c:249,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dec_mpeghdec.c:252,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_mpeghdec.c:254,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_mpeghdec.c:256,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/dec_mpeghdec.c:257,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_mpeghdec.c:263,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dec_mpeghdec.c:264,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_mpeghdec.c:268,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dec_mpeghdec.c:270,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dec_mpeghdec.c:271,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_mpeghdec.c:272,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 90
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 161
    functionDepth: 2
    functionLinenumber: 161
    functionLinenumberEnd: 275
    functionName: mpegh_dec_process
    functionSourceFile: /src/gpac/src/filters/dec_mpeghdec.c
    functionUses: 0
    functionsReached:
    - gf_timestamp_rescale_signed
    - gf_filter_pck_ref_props
    - gf_filter_pck_truncate
    - gf_filter_pck_get_seek_flag
    - gf_filter_pid_get_packet
    - gf_list_get
    - mpeghdecoder_getSamples
    - mpegh_dec_configure_pid
    - gf_list_add
    - gf_filter_pck_get_cts
    - gf_filter_pck_discard
    - mpeghdecoder_flush
    - gf_filter_get_udta
    - mpeghdecoder_destroy
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_filter_pid_set_eos
    - gf_filter_pid_is_eos
    - gf_filter_pid_set_property
    - gf_timestamp_rescale
    - PROP_UINT
    - gf_filter_pck_set_dts
    - gf_list_pop_front
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - mpeghdecoder_flushAndGet
    - mpeghdecoder_process
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mpegh_dec_process(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_mpeghdec.c:280,1
    - Dst: mpeghdecoder_flush
      Src: /src/gpac/src/filters/dec_mpeghdec.c:281,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_mpeghdec.c:283,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_mpeghdec.c:284,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_mpeghdec.c:285,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 277
    functionDepth: 3
    functionLinenumber: 277
    functionLinenumberEnd: 289
    functionName: mpegh_dec_process_event
    functionSourceFile: /src/gpac/src/filters/dec_mpeghdec.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_back
    - gf_filter_pck_unref
    - gf_list_count
    - mpeghdecoder_flush
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool mpegh_dec_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_mpeghdec.c:293,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_mpeghdec.c:294,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 291
    functionDepth: 1
    functionLinenumber: 291
    functionLinenumberEnd: 296
    functionName: mpegh_dec_initialize
    functionSourceFile: /src/gpac/src/filters/dec_mpeghdec.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mpegh_dec_initialize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_mpeghdec.c:300,1
    - Dst: mpeghdecoder_destroy
      Src: /src/gpac/src/filters/dec_mpeghdec.c:301,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_mpeghdec.c:302,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_mpeghdec.c:303,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_mpeghdec.c:304,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_mpeghdec.c:306,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 298
    functionDepth: 3
    functionLinenumber: 298
    functionLinenumberEnd: 307
    functionName: mpegh_dec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_mpeghdec.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_back
    - mpeghdecoder_destroy
    - gf_filter_pck_unref
    - gf_list_count
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void mpegh_dec_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 309
    functionDepth: 0
    functionLinenumber: 309
    functionLinenumberEnd: 310
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dec_mpeghdec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 341
    functionDepth: 0
    functionLinenumber: 341
    functionLinenumberEnd: 344
    functionName: mpeghdec_register
    functionSourceFile: /src/gpac/src/filters/dec_mpeghdec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *mpeghdec_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 346
    functionDepth: 0
    functionLinenumber: 346
    functionLinenumberEnd: 349
    functionName: mpeghdec_register
    functionSourceFile: /src/gpac/src/filters/dec_mpeghdec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *mpeghdec_register(GF_FilterSession *session)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/hevcmerge.c:155,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/filters/hevcmerge.c:156,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/hevcmerge.c:157,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/hevcmerge.c:158,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:161,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:161,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcmerge.c:162,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcmerge.c:162,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcmerge.c:163,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcmerge.c:163,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:164,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:164,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcmerge.c:165,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcmerge.c:165,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcmerge.c:166,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcmerge.c:166,1
    - Dst: gf_bs_write_se
      Src: /src/gpac/src/filters/hevcmerge.c:167,1
    - Dst: gf_bs_read_se
      Src: /src/gpac/src/filters/hevcmerge.c:167,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:168,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:168,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:169,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:170,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcmerge.c:172,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcmerge.c:172,1
    - Dst: gf_bs_write_se
      Src: /src/gpac/src/filters/hevcmerge.c:173,1
    - Dst: gf_bs_read_se
      Src: /src/gpac/src/filters/hevcmerge.c:173,1
    - Dst: gf_bs_write_se
      Src: /src/gpac/src/filters/hevcmerge.c:174,1
    - Dst: gf_bs_read_se
      Src: /src/gpac/src/filters/hevcmerge.c:174,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:175,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:175,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:178,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:179,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:180,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:180,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcmerge.c:181,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/hevcmerge.c:185,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcmerge.c:186,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcmerge.c:188,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:190,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcmerge.c:196,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcmerge.c:201,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:205,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcmerge.c:208,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:216,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:218,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:219,1
    - Dst: gf_bs_get_bit_position
      Src: /src/gpac/src/filters/hevcmerge.c:222,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:223,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:223,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/filters/hevcmerge.c:227,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/hevcmerge.c:227,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:228,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/hevcmerge.c:228,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/hevcmerge.c:231,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/hevcmerge.c:233,1
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/filters/hevcmerge.c:235,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/hevcmerge.c:236,1
    - Dst: gf_media_nalu_add_emulation_bytes
      Src: /src/gpac/src/filters/hevcmerge.c:237,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 60
    argCount: 5
    argNames:
    - ctx
    - in_PPS
    - in_PPS_length
    - out_PPS
    - out_PPS_length
    argTypes:
    - GF_HEVCMergeCtx*
    - char*
    - u32
    - char**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 149
    functionDepth: 8
    functionLinenumber: 149
    functionLinenumberEnd: 238
    functionName: hevcmerge_rewrite_pps
    functionSourceFile: /src/gpac/src/filters/hevcmerge.c
    functionUses: 0
    functionsReached:
    - gf_media_nalu_add_emulation_bytes
    - gf_bs_new
    - gf_media_nalu_emulation_bytes_add_count
    - gf_bs_get_size
    - gf_list_count
    - gf_assert
    - gf_list_get
    - gf_bs_write_ue
    - gf_bs_write_se
    - gf_bs_enable_emulation_byte_removal
    - gf_bs_read_se
    - gf_bs_write_int
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_bs_get_content_no_truncate
    - gf_bs_reassign_buffer
    - gf_malloc
    - gf_bs_get_bit_position
    - gf_bs_read_int
    - gf_bs_read_ue
    linkageType: ''
    returnType: void
    signature: void hevcmerge_rewrite_pps(GF_HEVCMergeCtx *ctx, char *in_PPS, u32
      in_PPS_length, char **out_PPS, u32 *out_PPS_length)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/hevcmerge.c:262,1
    - Dst: gf_media_nalu_remove_emulation_bytes
      Src: /src/gpac/src/filters/hevcmerge.c:264,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/hevcmerge.c:265,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/filters/hevcmerge.c:267,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/hevcmerge.c:268,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/hevcmerge.c:269,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/hevcmerge.c:271,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/hevcmerge.c:272,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:279,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:279,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:280,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:281,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:282,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:282,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:284,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:286,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:288,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:305,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:305,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcmerge.c:308,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcmerge.c:309,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:315,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:320,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:326,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:328,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/hevcmerge.c:333,1
    - Dst: gf_bs_get_bit_position
      Src: /src/gpac/src/filters/hevcmerge.c:333,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:334,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:334,1
    - Dst: gf_bs_write_se
      Src: /src/gpac/src/filters/hevcmerge.c:338,1
    - Dst: gf_bs_read_se
      Src: /src/gpac/src/filters/hevcmerge.c:339,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/hevcmerge.c:342,1
    - Dst: gf_bs_get_bit_position
      Src: /src/gpac/src/filters/hevcmerge.c:342,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:343,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:343,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcmerge.c:346,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:350,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/hevcmerge.c:355,1
    - Dst: gf_bs_get_bit_position
      Src: /src/gpac/src/filters/hevcmerge.c:355,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:356,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:359,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:361,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/hevcmerge.c:363,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcmerge.c:366,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/hevcmerge.c:367,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/hevcmerge.c:370,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/hevcmerge.c:373,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/hevcmerge.c:374,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/hevcmerge.c:383,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/hevcmerge.c:385,1
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/filters/hevcmerge.c:388,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/hevcmerge.c:391,1
    - Dst: gf_media_nalu_add_emulation_bytes
      Src: /src/gpac/src/filters/hevcmerge.c:393,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 95
    argCount: 4
    argNames:
    - ctx
    - tile_pid
    - in_slice
    - in_slice_length
    argTypes:
    - GF_HEVCMergeCtx*
    - HEVCTilePidCtx*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 240
    functionDepth: 8
    functionLinenumber: 240
    functionLinenumberEnd: 395
    functionName: hevcmerge_rewrite_slice
    functionSourceFile: /src/gpac/src/filters/hevcmerge.c
    functionUses: 0
    functionsReached:
    - gf_media_nalu_add_emulation_bytes
    - gf_bs_new
    - gf_media_nalu_emulation_bytes_add_count
    - gf_bs_available
    - gf_realloc
    - gf_assert
    - memcpy
    - gf_bs_write_ue
    - gf_bs_write_se
    - gf_bs_enable_emulation_byte_removal
    - gf_bs_read_se
    - gf_bs_write_int
    - GF_LOG
    - gf_bs_align
    - gf_bs_get_position
    - gf_media_nalu_remove_emulation_bytes
    - gf_bs_get_content_no_truncate
    - gf_bs_reassign_buffer
    - gf_bs_get_bit_position
    - gf_bs_read_int
    - gf_bs_read_ue
    linkageType: ''
    returnType: u32
    signature: u32 hevcmerge_rewrite_slice(GF_HEVCMergeCtx *ctx, HEVCTilePidCtx *tile_pid,
      char *in_slice, u32 in_slice_length)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/hevcmerge.c:402,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcmerge.c:406,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:407,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcmerge.c:408,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:410,1
    - Dst: hevc_rewrite_sps
      Src: /src/gpac/src/filters/hevcmerge.c:415,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcmerge.c:416,1
    - Dst: hevcmerge_rewrite_pps
      Src: /src/gpac/src/filters/hevcmerge.c:425,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcmerge.c:426,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/hevcmerge.c:432,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/hevcmerge.c:433,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcmerge.c:435,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/hevcmerge.c:435,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 4
    argNames:
    - ctx
    - opid
    - data
    - size
    argTypes:
    - GF_HEVCMergeCtx*
    - GF_FilterPid*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 397
    functionDepth: 9
    functionLinenumber: 397
    functionLinenumberEnd: 437
    functionName: hevcmerge_rewrite_config
    functionSourceFile: /src/gpac/src/filters/hevcmerge.c
    functionUses: 0
    functionsReached:
    - gf_odf_hevc_cfg_read
    - gf_free
    - gf_list_get
    - hevc_rewrite_sps
    - gf_odf_hevc_cfg_del
    - hevcmerge_rewrite_pps
    - gf_list_count
    - gf_odf_hevc_cfg_write
    - PROP_DATA_NO_COPY
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hevcmerge_rewrite_config(GF_HEVCMergeCtx *ctx, GF_FilterPid
      *opid, char *data, u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/filters/hevcmerge.c:448,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - output_nal
    - rewritten_nal
    - out_nal_size
    argTypes:
    - GF_HEVCMergeCtx*
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 439
    functionDepth: 0
    functionLinenumber: 439
    functionLinenumberEnd: 449
    functionName: hevcmerge_write_nal
    functionSourceFile: /src/gpac/src/filters/hevcmerge.c
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: void
    signature: void hevcmerge_write_nal(GF_HEVCMergeCtx *ctx, char *output_nal, char
      *rewritten_nal, u32 out_nal_size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcmerge.c:462,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:464,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 3
    argNames:
    - ctx
    - tile_pid
    - use_y_coord
    argTypes:
    - GF_HEVCMergeCtx*
    - HEVCTilePidCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 451
    functionDepth: 1
    functionLinenumber: 451
    functionLinenumberEnd: 477
    functionName: hevcmerge_compute_address
    functionSourceFile: /src/gpac/src/filters/hevcmerge.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: u32
    signature: u32 hevcmerge_compute_address(GF_HEVCMergeCtx *ctx, HEVCTilePidCtx
      *tile_pid, Bool use_y_coord)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcmerge.c:486,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcmerge.c:487,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcmerge.c:488,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcmerge.c:492,1
    - Dst: memset
      Src: /src/gpac/src/filters/hevcmerge.c:495,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/hevcmerge.c:499,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:507,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/hevcmerge.c:509,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/hevcmerge.c:510,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/hevcmerge.c:511,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:530,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/hevcmerge.c:545,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcmerge.c:557,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcmerge.c:559,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcmerge.c:562,1
    - Dst: PROP_VEC2I_INT
      Src: /src/gpac/src/filters/hevcmerge.c:562,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcmerge.c:564,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 53
    argCount: 2
    argNames:
    - ctx
    - use_abs_pos
    argTypes:
    - GF_HEVCMergeCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 479
    functionDepth: 1
    functionLinenumber: 479
    functionLinenumberEnd: 565
    functionName: hevcmerge_build_srdmap
    functionSourceFile: /src/gpac/src/filters/hevcmerge.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_assert
    - gf_filter_pid_get_property
    - GF_LOG
    - gf_list_count
    - memset
    - gf_filter_pid_set_property
    - gf_malloc
    - PROP_VEC2I_INT
    linkageType: ''
    returnType: void
    signature: void hevcmerge_build_srdmap(GF_HEVCMergeCtx *ctx, Bool use_abs_pos)
  - BBCount: 83
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcmerge.c:576,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:579,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:598,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:602,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:606,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcmerge.c:609,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:617,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:622,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:648,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/hevcmerge.c:654,1
    - Dst: memset
      Src: /src/gpac/src/filters/hevcmerge.c:655,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/hevcmerge.c:668,1
    - Dst: memset
      Src: /src/gpac/src/filters/hevcmerge.c:669,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/hevcmerge.c:686,1
    - Dst: memmove
      Src: /src/gpac/src/filters/hevcmerge.c:687,1
    - Dst: memset
      Src: /src/gpac/src/filters/hevcmerge.c:688,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/hevcmerge.c:700,1
    - Dst: memset
      Src: /src/gpac/src/filters/hevcmerge.c:701,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/hevcmerge.c:713,1
    - Dst: memmove
      Src: /src/gpac/src/filters/hevcmerge.c:714,1
    - Dst: memset
      Src: /src/gpac/src/filters/hevcmerge.c:715,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:727,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/hevcmerge.c:733,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/hevcmerge.c:738,1
    - Dst: memmove
      Src: /src/gpac/src/filters/hevcmerge.c:739,1
    - Dst: memset
      Src: /src/gpac/src/filters/hevcmerge.c:741,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:752,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:763,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:767,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:771,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:782,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:796,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:799,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/hevcmerge.c:808,1
    - Dst: memset
      Src: /src/gpac/src/filters/hevcmerge.c:809,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:820,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/hevcmerge.c:862,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:871,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:887,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:912,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:914,1
    - Dst: hevcmerge_compute_address
      Src: /src/gpac/src/filters/hevcmerge.c:915,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:917,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/hevcmerge.c:918,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:930,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:938,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/hevcmerge.c:954,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:959,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcmerge.c:963,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:964,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/hevcmerge.c:969,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcmerge.c:974,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:975,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/hevcmerge.c:979,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/hevcmerge.c:985,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/hevcmerge.c:991,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/hevcmerge.c:998,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcmerge.c:998,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcmerge.c:998,1
    - Dst: hevcmerge_build_srdmap
      Src: /src/gpac/src/filters/hevcmerge.c:1001,1
    CyclomaticComplexity: 154
    EdgeCount: 154
    ICount: 358
    argCount: 2
    argNames:
    - ctx
    - pid
    argTypes:
    - GF_HEVCMergeCtx*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1004
      start: 567
    functionDepth: 2
    functionLinenumber: 567
    functionLinenumberEnd: 1004
    functionName: hevcmerge_rebuild_grid
    functionSourceFile: /src/gpac/src/filters/hevcmerge.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_insert
    - gf_list_get
    - gf_assert
    - memmove
    - hevcmerge_compute_address
    - gf_list_reset
    - GF_LOG
    - gf_list_count
    - memset
    - gf_filter_pid_get_name
    - gf_list_add
    - hevcmerge_build_srdmap
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hevcmerge_rebuild_grid(GF_HEVCMergeCtx *ctx,  GF_FilterPid *pid)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_source
      Src: /src/gpac/src/filters/hevcmerge.c:1012,1
    - Dst: gf_filter_pid_get_source
      Src: /src/gpac/src/filters/hevcmerge.c:1013,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1034,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1035,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1036,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1037,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1038,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1039,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1040,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1041,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1042,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1043,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1044,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1045,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1046,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1047,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1048,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1050,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1051,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1052,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1053,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1054,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1055,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1056,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1061,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1062,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1063,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1064,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1065,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1066,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1067,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1068,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1069,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1070,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1071,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1072,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1073,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1074,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1075,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1076,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1077,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1078,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1079,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1080,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1081,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1082,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1083,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1084,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1085,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1086,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1087,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1088,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1089,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1090,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1091,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1092,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1093,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1094,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1095,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1096,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1097,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1098,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1099,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1100,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1101,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1102,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1103,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1104,1
    - Dst: CHECK_SPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1105,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1131,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1132,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1133,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1134,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1135,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1136,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1137,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1138,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1139,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1140,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1141,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1142,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1143,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1144,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1145,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1146,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1147,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1148,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1149,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1150,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1151,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1152,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1153,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1154,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1155,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1156,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1157,1
    - Dst: CHECK_PPS_VAL
      Src: /src/gpac/src/filters/hevcmerge.c:1158,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcmerge.c:1161,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcmerge.c:1162,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 127
    argCount: 3
    argNames:
    - ctx
    - pid_base
    - pid_o
    argTypes:
    - GF_HEVCMergeCtx*
    - HEVCTilePidCtx*
    - HEVCTilePidCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1165
      start: 1006
    functionDepth: 1
    functionLinenumber: 1006
    functionLinenumberEnd: 1165
    functionName: hevcmerge_check_sps_pps
    functionSourceFile: /src/gpac/src/filters/hevcmerge.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_pid_get_source
    - CHECK_PPS_VAL
    - CHECK_SPS_VAL
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hevcmerge_check_sps_pps(GF_HEVCMergeCtx *ctx, HEVCTilePidCtx
      *pid_base, HEVCTilePidCtx *pid_o)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1025
      start: 1019
    functionDepth: 0
    functionLinenumber: 1019
    functionLinenumberEnd: 1025
    functionName: CHECK_SPS_VAL
    functionSourceFile: /src/gpac/src/filters/hevcmerge.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_SPS_VAL(__name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1118
      start: 1112
    functionDepth: 0
    functionLinenumber: 1112
    functionLinenumberEnd: 1118
    functionName: CHECK_PPS_VAL
    functionSourceFile: /src/gpac/src/filters/hevcmerge.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_PPS_VAL(__name)
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/hevcmerge.c:1175,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/hevcmerge.c:1182,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/hevcmerge.c:1183,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcmerge.c:1184,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcmerge.c:1185,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/hevcmerge.c:1187,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/hevcmerge.c:1196,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/hevcmerge.c:1199,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/hevcmerge.c:1202,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/hevcmerge.c:1206,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/hevcmerge.c:1209,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/hevcmerge.c:1214,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/hevcmerge.c:1217,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/hevcmerge.c:1220,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/hevcmerge.c:1223,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/hevcmerge.c:1225,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/hevcmerge.c:1233,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/hevcmerge.c:1237,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/hevcmerge.c:1244,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/hevcmerge.c:1251,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcmerge.c:1256,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:1257,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcmerge.c:1258,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:1259,1
    - Dst: gf_hevc_read_sps
      Src: /src/gpac/src/filters/hevcmerge.c:1263,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:1268,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:1275,1
    - Dst: gf_hevc_read_vps
      Src: /src/gpac/src/filters/hevcmerge.c:1282,1
    - Dst: gf_hevc_read_pps
      Src: /src/gpac/src/filters/hevcmerge.c:1285,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/hevcmerge.c:1295,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/hevcmerge.c:1298,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/hevcmerge.c:1299,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcmerge.c:1300,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/hevcmerge.c:1300,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcmerge.c:1302,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcmerge.c:1303,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcmerge.c:1304,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcmerge.c:1305,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcmerge.c:1307,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcmerge.c:1308,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcmerge.c:1309,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcmerge.c:1310,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/hevcmerge.c:1320,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:1330,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:1341,1
    - Dst: hevcmerge_rebuild_grid
      Src: /src/gpac/src/filters/hevcmerge.c:1362,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:1370,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcmerge.c:1371,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:1372,1
    - Dst: hevcmerge_check_sps_pps
      Src: /src/gpac/src/filters/hevcmerge.c:1373,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcmerge.c:1380,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/hevcmerge.c:1380,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcmerge.c:1381,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/hevcmerge.c:1381,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:1385,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/hevcmerge.c:1394,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/hevcmerge.c:1395,1
    - Dst: hevcmerge_rewrite_config
      Src: /src/gpac/src/filters/hevcmerge.c:1396,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 188
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1397
      start: 1168
    functionDepth: 10
    functionLinenumber: 1168
    functionLinenumberEnd: 1397
    functionName: hevcmerge_configure_pid
    functionSourceFile: /src/gpac/src/filters/hevcmerge.c
    functionUses: 0
    functionsReached:
    - gf_free
    - hevcmerge_rebuild_grid
    - GF_SAFEALLOC
    - gf_list_count
    - gf_filter_pid_check_caps
    - hevcmerge_check_sps_pps
    - gf_filter_pid_set_udta
    - gf_filter_pid_new
    - gf_hevc_read_vps
    - gf_odf_hevc_cfg_read
    - gf_list_get
    - gf_assert
    - gf_list_add
    - gf_crc_32
    - gf_filter_get_udta
    - gf_filter_pid_copy_properties
    - GF_LOG
    - gf_list_del_item
    - gf_filter_pid_send_event
    - gf_filter_pid_set_property
    - hevcmerge_rewrite_config
    - gf_odf_hevc_cfg_del
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - gf_hevc_read_sps
    - gf_filter_pid_get_udta
    - gf_hevc_read_pps
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hevcmerge_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/hevcmerge.c:1410,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcmerge.c:1415,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:1421,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/hevcmerge.c:1427,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/hevcmerge.c:1429,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/hevcmerge.c:1435,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/hevcmerge.c:1437,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/hevcmerge.c:1443,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcmerge.c:1451,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/hevcmerge.c:1452,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/hevcmerge.c:1455,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:1459,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/hevcmerge.c:1460,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:1465,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/hevcmerge.c:1465,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/hevcmerge.c:1469,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/hevcmerge.c:1471,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/hevcmerge.c:1474,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/hevcmerge.c:1480,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/hevcmerge.c:1482,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcmerge.c:1487,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/hevcmerge.c:1488,1
    - Dst: gf_hevc_parse_nalu
      Src: /src/gpac/src/filters/hevcmerge.c:1489,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/hevcmerge.c:1490,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:1496,1
    - Dst: hevcmerge_rewrite_slice
      Src: /src/gpac/src/filters/hevcmerge.c:1499,1
    - Dst: gf_hevc_parse_nalu
      Src: /src/gpac/src/filters/hevcmerge.c:1504,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/hevcmerge.c:1516,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/hevcmerge.c:1519,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/hevcmerge.c:1525,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/hevcmerge.c:1529,1
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/hevcmerge.c:1534,1
    - Dst: hevcmerge_write_nal
      Src: /src/gpac/src/filters/hevcmerge.c:1536,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/hevcmerge.c:1538,1
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/hevcmerge.c:1548,1
    - Dst: hevcmerge_write_nal
      Src: /src/gpac/src/filters/hevcmerge.c:1549,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/hevcmerge.c:1555,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 109
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1558
      start: 1399
    functionDepth: 9
    functionLinenumber: 1399
    functionLinenumberEnd: 1558
    functionName: hevcmerge_process
    functionSourceFile: /src/gpac/src/filters/hevcmerge.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bs_available
    - gf_filter_pid_get_packet
    - gf_realloc
    - gf_list_get
    - gf_assert
    - memcpy
    - gf_bs_skip_bytes
    - gf_filter_get_udta
    - gf_hevc_parse_nalu
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_filter_pck_expand
    - gf_filter_pid_set_eos
    - hevcmerge_write_nal
    - gf_bs_get_position
    - gf_timestamp_less
    - gf_filter_pid_is_eos
    - hevcmerge_rewrite_slice
    - gf_bs_reassign_buffer
    - gf_filter_pck_merge_properties
    - gf_bs_read_int
    - gf_filter_pck_get_dts
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hevcmerge_process(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/hevcmerge.c:1562,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1578
      start: 1560
    functionDepth: 1
    functionLinenumber: 1560
    functionLinenumberEnd: 1578
    functionName: hevcmerge_process_event
    functionSourceFile: /src/gpac/src/filters/hevcmerge.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool hevcmerge_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:1581,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/hevcmerge.c:1582,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/hevcmerge.c:1583,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/hevcmerge.c:1584,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/hevcmerge.c:1585,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/hevcmerge.c:1586,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1588
      start: 1579
    functionDepth: 1
    functionLinenumber: 1579
    functionLinenumberEnd: 1588
    functionName: hevcmerge_initialize
    functionSourceFile: /src/gpac/src/filters/hevcmerge.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_new
    - gf_bs_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hevcmerge_initialize(GF_Filter *filter)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcmerge.c:1592,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/hevcmerge.c:1593,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcmerge.c:1594,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcmerge.c:1595,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcmerge.c:1596,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/hevcmerge.c:1597,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/hevcmerge.c:1598,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/hevcmerge.c:1600,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcmerge.c:1602,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcmerge.c:1603,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/hevcmerge.c:1604,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcmerge.c:1605,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/hevcmerge.c:1607,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/hevcmerge.c:1608,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcmerge.c:1610,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1612
      start: 1590
    functionDepth: 3
    functionLinenumber: 1590
    functionLinenumberEnd: 1612
    functionName: hevcmerge_finalize
    functionSourceFile: /src/gpac/src/filters/hevcmerge.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - GF_LOG
    - gf_bs_del
    - gf_list_count
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void hevcmerge_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1625
      start: 1624
    functionDepth: 0
    functionLinenumber: 1624
    functionLinenumberEnd: 1625
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/hevcmerge.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1697
      start: 1694
    functionDepth: 0
    functionLinenumber: 1694
    functionLinenumberEnd: 1697
    functionName: hevcmerge_register
    functionSourceFile: /src/gpac/src/filters/hevcmerge.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *hevcmerge_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1702
      start: 1699
    functionDepth: 0
    functionLinenumber: 1699
    functionLinenumberEnd: 1702
    functionName: hevcmerge_register
    functionSourceFile: /src/gpac/src/filters/hevcmerge.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *hevcmerge_register(GF_FilterSession *session)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_flac.c:91,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/reframe_flac.c:96,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/reframe_flac.c:101,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_flac.c:105,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/reframe_flac.c:108,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_flac.c:113,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_flac.c:114,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_flac.c:115,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_flac.c:116,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_flac.c:116,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 120
    functionName: flac_dmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property_str
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err flac_dmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_flac.c:134,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_flac.c:135,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/reframe_flac.c:142,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/reframe_flac.c:144,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/reframe_flac.c:149,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/reframe_flac.c:151,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/reframe_flac.c:152,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_flac.c:159,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 31
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_FLACDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 122
    functionDepth: 6
    functionLinenumber: 122
    functionLinenumberEnd: 161
    functionName: flac_dmx_check_dur
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_filter_pid_get_property
    - gf_fseek
    - gf_fileio_is_main_thread
    - strncmp
    - gf_fopen_ex
    - gf_ftell
    linkageType: ''
    returnType: void
    signature: void flac_dmx_check_dur(GF_Filter *filter, GF_FLACDmxCtx *ctx)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 1
    argNames:
    - in_lay
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 178
    functionName: flac_channel_layout
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u64
    signature: u64 flac_channel_layout(u32 in_lay)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/reframe_flac.c:182,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_flac.c:184,1
    - Dst: flac_dmx_check_dur
      Src: /src/gpac/src/filters/reframe_flac.c:185,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_flac.c:192,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_flac.c:193,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_flac.c:193,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_flac.c:194,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_flac.c:196,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_flac.c:196,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_flac.c:199,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_flac.c:199,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_flac.c:201,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_flac.c:201,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/reframe_flac.c:203,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_flac.c:205,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/reframe_flac.c:205,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_flac.c:207,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_flac.c:207,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_flac.c:208,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_flac.c:208,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_flac.c:209,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_flac.c:209,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_flac.c:210,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_flac.c:210,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_flac.c:211,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_flac.c:211,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_flac.c:213,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_flac.c:213,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_flac.c:216,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_flac.c:216,1
    - Dst: flac_channel_layout
      Src: /src/gpac/src/filters/reframe_flac.c:219,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_flac.c:220,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/reframe_flac.c:220,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 4
    argNames:
    - filter
    - ctx
    - dsi
    - dsi_size
    argTypes:
    - GF_Filter*
    - GF_FLACDmxCtx*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 180
    functionDepth: 7
    functionLinenumber: 180
    functionLinenumberEnd: 223
    functionName: flac_dmx_check_pid
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached:
    - PROP_BOOL
    - gf_crc_32
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - flac_dmx_check_dur
    - flac_channel_layout
    - PROP_LONGUINT
    - PROP_FRAC64
    - gf_filter_pid_set_name
    - gf_filter_pid_new
    - PROP_DATA
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: void
    signature: void flac_dmx_check_pid(GF_Filter *filter, GF_FLACDmxCtx *ctx, u8 *dsi,
      u32 dsi_size)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_flac.c:229,1
    - Dst: flac_dmx_check_dur
      Src: /src/gpac/src/filters/reframe_flac.c:246,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_flac.c:269,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_flac.c:271,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_flac.c:278,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 53
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 225
    functionDepth: 7
    functionLinenumber: 225
    functionLinenumberEnd: 292
    functionName: flac_dmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached:
    - flac_dmx_check_dur
    - GF_FEVT_INIT
    - gf_filter_pck_unref
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool flac_dmx_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - nb_samp
    argTypes:
    - GF_FLACDmxCtx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 294
    functionDepth: 0
    functionLinenumber: 294
    functionLinenumberEnd: 304
    functionName: flac_dmx_update_cts
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE flac_dmx_update_cts(GF_FLACDmxCtx *ctx, u32 nb_samp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - data
    - len
    argTypes:
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 342
    functionDepth: 0
    functionLinenumber: 342
    functionLinenumberEnd: 348
    functionName: flac_dmx_crc8
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u8
    signature: u8 flac_dmx_crc8(u8 *data, u32 len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - data
    - len
    argTypes:
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 394
    functionName: flac_dmx_crc16
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 flac_dmx_crc16(const u8 *data, u32 len)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_flac.c:414,1
    - Dst: gf_bs_mark_overflow
      Src: /src/gpac/src/filters/reframe_flac.c:415,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:416,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:420,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:421,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:424,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:428,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:437,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:441,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_flac.c:444,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_flac.c:449,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:458,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:459,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_flac.c:475,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/reframe_flac.c:476,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/reframe_flac.c:477,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_flac.c:482,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_flac.c:484,1
    - Dst: flac_dmx_crc8
      Src: /src/gpac/src/filters/reframe_flac.c:485,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:491,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:494,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/filters/reframe_flac.c:503,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 86
    argCount: 4
    argNames:
    - ctx
    - data
    - size
    - hdr
    argTypes:
    - GF_FLACDmxCtx*
    - char*
    - u32
    - FLACHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 407
    functionDepth: 5
    functionLinenumber: 407
    functionLinenumberEnd: 511
    functionName: flac_parse_header
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached:
    - flac_dmx_crc8
    - gf_bs_mark_overflow
    - gf_bs_get_position
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_bs_is_overflow
    - gf_bs_read_u8
    - gf_bs_reassign_buffer
    linkageType: ''
    returnType: Bool
    signature: Bool flac_parse_header(GF_FLACDmxCtx *ctx, char *data, u32 size, FLACHeader
      *hdr)
  - BBCount: 52
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_flac.c:515,1
    - Dst: memset
      Src: /src/gpac/src/filters/reframe_flac.c:523,1
    - Dst: flac_dmx_check_dur
      Src: /src/gpac/src/filters/reframe_flac.c:534,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_flac.c:539,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_flac.c:541,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_flac.c:544,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_flac.c:545,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_flac.c:557,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_flac.c:560,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_flac.c:573,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_flac.c:575,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_flac.c:581,1
    - Dst: memchr
      Src: /src/gpac/src/filters/reframe_flac.c:612,1
    - Dst: flac_parse_header
      Src: /src/gpac/src/filters/reframe_flac.c:621,1
    - Dst: flac_dmx_crc16
      Src: /src/gpac/src/filters/reframe_flac.c:629,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/reframe_flac.c:639,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_flac.c:653,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_flac.c:654,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_flac.c:655,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_flac.c:656,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_flac.c:660,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_flac.c:663,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:664,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:665,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:666,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/reframe_flac.c:669,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/reframe_flac.c:670,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/filters/reframe_flac.c:671,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/filters/reframe_flac.c:672,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:673,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:674,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:675,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/reframe_flac.c:679,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_flac.c:682,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_flac.c:683,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_flac.c:688,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_flac.c:693,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_flac.c:697,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/reframe_flac.c:698,1
    - Dst: flac_dmx_check_pid
      Src: /src/gpac/src/filters/reframe_flac.c:702,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_flac.c:712,1
    - Dst: flac_parse_header
      Src: /src/gpac/src/filters/reframe_flac.c:720,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_flac.c:723,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_flac.c:723,1
    - Dst: flac_channel_layout
      Src: /src/gpac/src/filters/reframe_flac.c:728,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_flac.c:729,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/reframe_flac.c:729,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_flac.c:749,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_flac.c:751,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_flac.c:753,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_flac.c:755,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_flac.c:757,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_flac.c:757,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_flac.c:759,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_flac.c:760,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_flac.c:763,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_flac.c:765,1
    - Dst: flac_dmx_update_cts
      Src: /src/gpac/src/filters/reframe_flac.c:767,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_flac.c:769,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_flac.c:770,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_flac.c:773,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_flac.c:784,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_flac.c:788,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_flac.c:791,1
    CyclomaticComplexity: 80
    EdgeCount: 80
    ICount: 216
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 794
      start: 513
    functionDepth: 8
    functionLinenumber: 513
    functionLinenumberEnd: 794
    functionName: flac_dmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached:
    - flac_dmx_update_cts
    - flac_channel_layout
    - memset
    - gf_filter_pck_ref_props
    - gf_bs_read_u16
    - gf_bs_available
    - PROP_LONGUINT
    - gf_filter_pid_get_packet
    - gf_bs_read_u24
    - gf_realloc
    - gf_filter_pck_set_byte_offset
    - gf_bs_read_u32
    - flac_parse_header
    - gf_assert
    - memcpy
    - gf_filter_pck_get_cts
    - memchr
    - gf_bs_skip_bytes
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - flac_dmx_crc16
    - gf_filter_pid_set_discard
    - gf_filter_pck_new_alloc
    - memmove
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_filter_pid_set_eos
    - gf_bs_get_position
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - gf_filter_pid_set_property
    - gf_timestamp_rescale
    - PROP_UINT
    - flac_dmx_check_dur
    - gf_filter_pck_set_cts
    - gf_bs_read_long_int
    - gf_filter_pck_unref
    - gf_filter_pck_set_framing
    - gf_filter_pck_get_byte_offset
    - gf_fatal_assert
    - gf_bs_read_int
    - flac_dmx_check_pid
    - GF_4CC
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err flac_dmx_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_flac.c:798,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_flac.c:799,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 801
      start: 796
    functionDepth: 1
    functionLinenumber: 796
    functionLinenumberEnd: 801
    functionName: flac_dmx_initialize
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err flac_dmx_initialize(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_flac.c:804,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_flac.c:805,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_flac.c:806,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_flac.c:807,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_flac.c:808,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 809
      start: 802
    functionDepth: 3
    functionLinenumber: 802
    functionLinenumberEnd: 809
    functionName: flac_dmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_del
    - gf_filter_pck_unref
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void flac_dmx_finalize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_flac.c:814,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 812
    functionDepth: 0
    functionLinenumber: 812
    functionLinenumberEnd: 819
    functionName: flac_dmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached:
    - strncmp
    linkageType: ''
    returnType: char
    signature: char *flac_dmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 838
    functionDepth: 0
    functionLinenumber: 838
    functionLinenumberEnd: 839
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/reframe_flac.c:872,1
    - Dst: flac_dmx_crc16
      Src: /src/gpac/src/filters/reframe_flac.c:874,1
    - Dst: flac_channel_layout
      Src: /src/gpac/src/filters/reframe_flac.c:875,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 881
      start: 868
    functionDepth: 1
    functionLinenumber: 868
    functionLinenumberEnd: 881
    functionName: rfflac_register
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached:
    - flac_channel_layout
    - flac_dmx_crc16
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfflac_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 886
      start: 883
    functionDepth: 0
    functionLinenumber: 883
    functionLinenumberEnd: 886
    functionName: rfflac_register
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfflac_register(GF_FilterSession *session)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/unframer.c:35,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/unframer.c:40,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/unframer.c:41,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/unframer.c:45,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/unframer.c:49,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/unframer.c:51,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/unframer.c:55,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/unframer.c:56,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/unframer.c:63,1
    - Dst: gf_codecid_has_unframer
      Src: /src/gpac/src/filters/unframer.c:64,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/unframer.c:77,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 36
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 79
    functionName: unframer_configure_pid
    functionSourceFile: /src/gpac/src/filters/unframer.c
    functionUses: 0
    functionsReached:
    - gf_codecid_has_unframer
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err unframer_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/unframer.c:85,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/unframer.c:87,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/unframer.c:89,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/unframer.c:90,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/unframer.c:92,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/unframer.c:93,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/unframer.c:96,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/unframer.c:97,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 101
    functionName: unframer_process
    functionSourceFile: /src/gpac/src/filters/unframer.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_ipid_count
    - gf_filter_pid_drop_packet
    - gf_filter_pck_forward
    - gf_filter_pid_set_eos
    - gf_filter_get_ipid
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_udta
    - gf_filter_pid_get_packet
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err unframer_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionName: unframer_register
    functionSourceFile: /src/gpac/src/filters/unframer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *unframer_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: unframer_register
    functionSourceFile: /src/gpac/src/filters/unframer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *unframer_register(GF_FilterSession *session)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtsp_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:177,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_rtsp.c:180,1
    - Dst: gf_rtsp_session_del
      Src: /src/gpac/src/filters/out_rtsp.c:183,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 2
    argNames:
    - ctx
    - sess
    argTypes:
    - GF_RTSPOutCtx*
    - GF_RTSPOutSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 171
    functionDepth: 4
    functionLinenumber: 171
    functionLinenumberEnd: 186
    functionName: rtspout_send_response
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_rtsp_session_del
    - gf_rtsp_send_response
    - gf_sys_clock
    linkageType: ''
    returnType: void
    signature: void rtspout_send_response(GF_RTSPOutCtx *ctx, GF_RTSPOutSession *sess)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:190,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_RTSPOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 188
    functionDepth: 1
    functionLinenumber: 188
    functionLinenumberEnd: 196
    functionName: rtspout_check_last_sess
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: void
    signature: void rtspout_check_last_sess(GF_RTSPOutCtx *ctx)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/filters/out_rtsp.c:209,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/out_rtsp.c:211,1
    - Dst: rtspout_process_setup
      Src: /src/gpac/src/filters/out_rtsp.c:215,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:216,1
    - Dst: rtpout_create_sdp
      Src: /src/gpac/src/filters/out_rtsp.c:227,1
    - Dst: rtpout_create_sdp
      Src: /src/gpac/src/filters/out_rtsp.c:229,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/out_rtsp.c:233,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_rtsp.c:234,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_rtsp.c:235,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/out_rtsp.c:236,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/out_rtsp.c:238,1
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/filters/out_rtsp.c:241,1
    - Dst: rtspout_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:247,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:250,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 42
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPOutSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 198
    functionDepth: 7
    functionLinenumber: 198
    functionLinenumberEnd: 253
    functionName: rtspout_send_sdp
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - rtpout_create_sdp
    - gf_rtsp_response_reset
    - gf_fseek
    - gf_fread
    - gf_ftell
    - strncpy
    - strchr
    - gf_malloc
    - rtspout_send_response
    - rtspout_process_setup
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtspout_send_sdp(GF_RTSPOutSession *sess)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/out_rtsp.c:259,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_rtsp.c:260,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_rtsp.c:261,1
    - Dst: rtpout_del_stream
      Src: /src/gpac/src/filters/out_rtsp.c:264,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - st
    argTypes:
    - GF_RTPOutStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 255
    functionDepth: 4
    functionLinenumber: 255
    functionLinenumberEnd: 265
    functionName: rtspout_del_stream
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - rtpout_del_stream
    - gf_filter_pid_set_discard
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    linkageType: ''
    returnType: void
    signature: void rtspout_del_stream(GF_RTPOutStream *st)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:271,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_rtsp.c:272,1
    - Dst: rtspout_del_stream
      Src: /src/gpac/src/filters/out_rtsp.c:273,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_rtsp.c:275,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:278,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:280,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:283,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_rtsp.c:284,1
    - Dst: gf_filter_remove_src
      Src: /src/gpac/src/filters/out_rtsp.c:285,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_rtsp.c:288,1
    - Dst: gf_rtsp_session_del
      Src: /src/gpac/src/filters/out_rtsp.c:289,1
    - Dst: gf_rtsp_command_del
      Src: /src/gpac/src/filters/out_rtsp.c:290,1
    - Dst: gf_rtsp_response_del
      Src: /src/gpac/src/filters/out_rtsp.c:291,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/out_rtsp.c:292,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:293,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:296,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:297,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:298,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 2
    argNames:
    - filter
    - sess
    argTypes:
    - GF_Filter*
    - GF_RTSPOutSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 268
    functionDepth: 5
    functionLinenumber: 268
    functionLinenumberEnd: 299
    functionName: rtspout_del_session
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_rtsp_response_del
    - gf_list_pop_back
    - rtspout_del_stream
    - gf_filter_remove_src
    - gf_list_count
    - gf_rtsp_session_del
    - gf_list_del_item
    - gf_rtsp_command_del
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void rtspout_del_session(GF_Filter *filter, GF_RTSPOutSession *sess)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:304,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:307,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:314,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:316,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:318,1
    - Dst: gf_filter_pid_is_filter_in_parents
      Src: /src/gpac/src/filters/out_rtsp.c:319,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 3
    argNames:
    - filter
    - ctx
    - pid
    argTypes:
    - GF_Filter*
    - GF_RTSPOutCtx*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 302
    functionDepth: 1
    functionLinenumber: 302
    functionLinenumberEnd: 325
    functionName: rtspout_locate_session_for_pid
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_filter_pid_is_filter_in_parents
    linkageType: ''
    returnType: GF_RTSPOutSession
    signature: GF_RTSPOutSession *rtspout_locate_session_for_pid(GF_Filter *filter,
      GF_RTSPOutCtx *ctx, GF_FilterPid *pid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_rtsp.c:330,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - udta
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 331
    functionName: rtspout_on_rtcp
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_sys_clock
    linkageType: ''
    returnType: void
    signature: void rtspout_on_rtcp(void *udta)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_rtsp.c:335,1
    - Dst: rtspout_locate_session_for_pid
      Src: /src/gpac/src/filters/out_rtsp.c:342,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/out_rtsp.c:346,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/out_rtsp.c:349,1
    - Dst: rtspout_del_stream
      Src: /src/gpac/src/filters/out_rtsp.c:350,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:352,1
    - Dst: rtspout_del_session
      Src: /src/gpac/src/filters/out_rtsp.c:353,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/out_rtsp.c:357,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtsp.c:363,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtsp.c:372,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:373,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtsp.c:376,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:377,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/out_rtsp.c:386,1
    - Dst: rtspout_del_stream
      Src: /src/gpac/src/filters/out_rtsp.c:387,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_rtsp.c:394,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_rtsp.c:396,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/out_rtsp.c:404,1
    - Dst: rtspout_on_rtcp
      Src: /src/gpac/src/filters/out_rtsp.c:405,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/out_rtsp.c:407,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/out_rtsp.c:414,1
    - Dst: rtpout_init_streamer
      Src: /src/gpac/src/filters/out_rtsp.c:416,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/out_rtsp.c:416,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_rtsp.c:421,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_rtsp.c:422,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtsp.c:431,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:433,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/out_rtsp.c:433,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 87
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 333
    functionDepth: 6
    functionLinenumber: 333
    functionLinenumberEnd: 439
    functionName: rtspout_configure_pid
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_list_find
    - rtspout_del_stream
    - gf_list_count
    - gf_filter_pid_set_udta
    - gf_sys_is_cov_mode
    - gf_filter_pid_get_name
    - rtspout_locate_session_for_pid
    - rtspout_del_session
    - GF_FEVT_INIT
    - gf_list_add
    - gf_filter_get_udta
    - GF_LOG
    - gf_filter_get_netcap_id
    - gf_list_del_item
    - gf_filter_pid_send_event
    - rtpout_init_streamer
    - gf_filter_pid_get_property
    - strcmp
    - gf_filter_pid_get_udta
    - rtspout_on_rtcp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtspout_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtsp_session_new_server
      Src: /src/gpac/src/filters/out_rtsp.c:447,1
    - Dst: gf_rtsp_session_set_netcap_id
      Src: /src/gpac/src/filters/out_rtsp.c:449,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/out_rtsp.c:449,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_rtsp.c:452,1
    - Dst: gf_rtsp_session_del
      Src: /src/gpac/src/filters/out_rtsp.c:454,1
    - Dst: gf_rtsp_command_new
      Src: /src/gpac/src/filters/out_rtsp.c:458,1
    - Dst: gf_rtsp_response_new
      Src: /src/gpac/src/filters/out_rtsp.c:459,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_rtsp.c:460,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_rtsp.c:461,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/out_rtsp.c:463,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_rtsp.c:464,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/out_rtsp.c:466,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_rtsp.c:473,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_rtsp.c:474,1
    - Dst: gf_rtsp_set_buffer_size
      Src: /src/gpac/src/filters/out_rtsp.c:478,1
    - Dst: gf_rtsp_get_remote_address
      Src: /src/gpac/src/filters/out_rtsp.c:479,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:480,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_rtsp.c:481,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_rtsp.c:486,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 38
    argCount: 2
    argNames:
    - ctx
    - single_session
    argTypes:
    - GF_RTSPOutCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 441
    functionDepth: 4
    functionLinenumber: 441
    functionLinenumberEnd: 489
    functionName: rtspout_check_new_session
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_rtsp_response_new
    - gf_list_new
    - gf_rtsp_command_new
    - gf_rtsp_get_remote_address
    - GF_SAFEALLOC
    - GF_LOG
    - strcpy
    - gf_filter_get_netcap_id
    - gf_rtsp_session_new_server
    - gf_sys_is_test_mode
    - sprintf
    - gf_rtsp_session_del
    - gf_rtsp_set_buffer_size
    - gf_list_add
    - gf_rand
    - gf_rtsp_session_set_netcap_id
    - gf_sys_clock
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtspout_check_new_session(GF_RTSPOutCtx *ctx, Bool single_session)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_rtsp.c:498,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_rtsp.c:504,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:512,1
    - Dst: gf_filter_make_sticky
      Src: /src/gpac/src/filters/out_rtsp.c:515,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_rtsp.c:518,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/out_rtsp.c:522,1
    - Dst: MIN
      Src: /src/gpac/src/filters/out_rtsp.c:523,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_rtsp.c:524,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_rtsp.c:526,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_rtsp.c:529,1
    - Dst: rtspout_check_new_session
      Src: /src/gpac/src/filters/out_rtsp.c:531,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:532,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_rtsp.c:539,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:542,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:546,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/out_rtsp.c:551,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:552,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/out_rtsp.c:555,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:556,1
    - Dst: gf_ssl_init_lib
      Src: /src/gpac/src/filters/out_rtsp.c:559,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:560,1
    - Dst: gf_ssl_server_context_new
      Src: /src/gpac/src/filters/out_rtsp.c:563,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:569,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/filters/out_rtsp.c:581,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/out_rtsp.c:581,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/filters/out_rtsp.c:582,1
    - Dst: gf_sk_listen
      Src: /src/gpac/src/filters/out_rtsp.c:583,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:585,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_rtsp.c:585,1
    - Dst: gf_sk_server_mode
      Src: /src/gpac/src/filters/out_rtsp.c:589,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:591,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_rtsp.c:592,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_rtsp.c:594,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/filters/out_rtsp.c:597,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_rtsp.c:599,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_rtsp.c:600,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_rtsp.c:601,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/out_rtsp.c:602,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/filters/out_rtsp.c:603,1
    - Dst: gf_cfg_get_section_count
      Src: /src/gpac/src/filters/out_rtsp.c:604,1
    - Dst: gf_cfg_get_section_name
      Src: /src/gpac/src/filters/out_rtsp.c:606,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:607,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/filters/out_rtsp.c:607,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:608,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/filters/out_rtsp.c:611,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:612,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:612,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_rtsp.c:613,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_rtsp.c:616,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_rtsp.c:617,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_rtsp.c:618,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/filters/out_rtsp.c:619,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_rtsp.c:621,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_rtsp.c:622,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_rtsp.c:624,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/filters/out_rtsp.c:628,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_rtsp.c:629,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/filters/out_rtsp.c:630,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_rtsp.c:631,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/filters/out_rtsp.c:632,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_rtsp.c:633,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/filters/out_rtsp.c:635,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:637,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:640,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:641,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 137
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 645
      start: 491
    functionDepth: 6
    functionLinenumber: 491
    functionLinenumberEnd: 645
    functionName: rtspout_initialize
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_dir_exists
    - GF_SAFEALLOC
    - gf_file_exists
    - gf_ssl_init_lib
    - gf_cfg_new
    - gf_list_count
    - rtspout_check_new_session
    - atoi
    - strchr
    - gf_filter_post_process_task
    - gf_list_new
    - gf_list_get
    - gf_strdup
    - gf_sk_server_mode
    - gf_cfg_del
    - gf_filter_make_sticky
    - gf_cfg_get_key
    - gf_list_add
    - gf_dynstrcat
    - gf_filter_get_udta
    - gf_sk_bind
    - GF_LOG
    - gf_filter_get_netcap_id
    - MIN
    - gf_sk_listen
    - strstr
    - strncpy
    - gf_cfg_get_section_count
    - gf_error_to_string
    - gf_sk_new_ex
    - strlen
    - gf_ssl_server_context_new
    - strcmp
    - gf_cfg_get_section_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtspout_initialize(GF_Filter *filter)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_rtsp.c:649,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:651,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:652,1
    - Dst: rtspout_del_session
      Src: /src/gpac/src/filters/out_rtsp.c:653,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_rtsp.c:655,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_rtsp.c:657,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:658,1
    - Dst: gf_ssl_server_context_del
      Src: /src/gpac/src/filters/out_rtsp.c:662,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:666,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_rtsp.c:667,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:668,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:669,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:670,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:671,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:672,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:673,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_rtsp.c:675,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 676
      start: 647
    functionDepth: 6
    functionLinenumber: 647
    functionLinenumberEnd: 676
    functionName: rtspout_finalize
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_pop_back
    - gf_sk_del
    - rtspout_del_session
    - gf_list_count
    - gf_ssl_server_context_del
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void rtspout_finalize(GF_Filter *filter)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:682,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:687,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_rtsp.c:691,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/out_rtsp.c:693,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_rtsp.c:694,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/out_rtsp.c:700,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/out_rtsp.c:702,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_rtsp.c:706,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_rtsp.c:711,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/out_rtsp.c:714,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_rtsp.c:716,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:718,1
    - Dst: gf_rand_init
      Src: /src/gpac/src/filters/out_rtsp.c:720,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:722,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/out_rtsp.c:723,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:726,1
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/filters/out_rtsp.c:731,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:735,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_rtsp.c:740,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_rtsp.c:743,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_rtsp.c:743,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_rtsp.c:744,1
    - Dst: gf_rtp_streamer_get_next_rtp_sn
      Src: /src/gpac/src/filters/out_rtsp.c:745,1
    - Dst: gf_rtp_streamer_get_timescale
      Src: /src/gpac/src/filters/out_rtsp.c:748,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_rtsp.c:750,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_rtsp.c:752,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/out_rtsp.c:755,1
    - Dst: gf_rtp_streamer_get_ssrc
      Src: /src/gpac/src/filters/out_rtsp.c:756,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_rtsp.c:761,1
    - Dst: rtspout_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:766,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 69
    argCount: 2
    argNames:
    - ctx
    - sess
    argTypes:
    - GF_RTSPOutCtx*
    - GF_RTSPOutSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 769
      start: 679
    functionDepth: 5
    functionLinenumber: 679
    functionLinenumberEnd: 769
    functionName: rtspout_init_clock
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_list_count
    - gf_filter_pck_get_seek_flag
    - gf_filter_pid_get_packet
    - gf_sys_is_cov_mode
    - gf_list_get
    - sprintf
    - gf_rtp_streamer_get_timescale
    - gf_rtp_streamer_get_next_rtp_sn
    - gf_list_add
    - gf_filter_pck_get_cts
    - gf_filter_pid_drop_packet
    - gf_rtsp_response_reset
    - GF_LOG
    - rtspout_send_response
    - gf_rand
    - gf_rtp_streamer_get_ssrc
    - gf_sys_clock_high_res
    - gf_malloc
    - strlen
    - gf_timestamp_rescale
    - gf_rand_init
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: Bool
    signature: Bool rtspout_init_clock(GF_RTSPOutCtx *ctx, GF_RTSPOutSession *sess)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:774,1
    - Dst: memset
      Src: /src/gpac/src/filters/out_rtsp.c:776,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:779,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_rtsp.c:784,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_rtsp.c:786,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/out_rtsp.c:794,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_rtsp.c:795,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/out_rtsp.c:800,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_rtsp.c:803,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 4
    argNames:
    - sess
    - send_stop
    - send_play
    - start_range
    argTypes:
    - GF_RTSPOutSession*
    - Bool
    - Bool
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 808
      start: 771
    functionDepth: 1
    functionLinenumber: 771
    functionLinenumberEnd: 808
    functionName: rtspout_send_event
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_set_discard
    - gf_list_count
    - memset
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: void
    signature: void rtspout_send_event(GF_RTSPOutSession *sess, Bool send_stop, Bool
      send_play, Double start_range)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: rtspout_init_clock
      Src: /src/gpac/src/filters/out_rtsp.c:817,1
    - Dst: gf_rtsp_check_connection
      Src: /src/gpac/src/filters/out_rtsp.c:821,1
    - Dst: rtpout_process_rtp
      Src: /src/gpac/src/filters/out_rtsp.c:830,1
    - Dst: rtspout_send_event
      Src: /src/gpac/src/filters/out_rtsp.c:835,1
    - Dst: rtspout_del_session
      Src: /src/gpac/src/filters/out_rtsp.c:837,1
    - Dst: rtspout_check_last_sess
      Src: /src/gpac/src/filters/out_rtsp.c:838,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 3
    argNames:
    - filter
    - ctx
    - sess
    argTypes:
    - GF_Filter*
    - GF_RTSPOutCtx*
    - GF_RTSPOutSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 845
      start: 810
    functionDepth: 8
    functionLinenumber: 810
    functionLinenumberEnd: 845
    functionName: rtspout_process_rtp
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - rtspout_init_clock
    - rtpout_process_rtp
    - rtspout_del_session
    - gf_rtsp_check_connection
    - rtspout_check_last_sess
    - rtspout_send_event
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtspout_process_rtp(GF_Filter *filter, GF_RTSPOutCtx *ctx, GF_RTSPOutSession
      *sess)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtsp_session_write_interleaved
      Src: /src/gpac/src/filters/out_rtsp.c:855,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - cbk1
    - cbk2
    - is_rtcp
    - pck
    - pck_size
    argTypes:
    - void*
    - void*
    - Bool
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 856
      start: 847
    functionDepth: 4
    functionLinenumber: 847
    functionLinenumberEnd: 856
    functionName: rtspout_interleave_packet
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_rtsp_session_write_interleaved
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtspout_interleave_packet(void *cbk1, void *cbk2, Bool is_rtcp,
      u8 *pck, u32 pck_size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/out_rtsp.c:862,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:864,1
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/filters/out_rtsp.c:868,1
    - Dst: rtspout_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:874,1
    - Dst: rtspout_del_session
      Src: /src/gpac/src/filters/out_rtsp.c:876,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - f
    - on_setup_error_udta
    - e
    argTypes:
    - GF_Filter*
    - void*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 879
      start: 858
    functionDepth: 6
    functionLinenumber: 858
    functionLinenumberEnd: 879
    functionName: rtspout_on_filter_setup_error
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_rtsp_response_reset
    - rtspout_del_session
    - gf_list_count
    - gf_list_del_item
    - rtspout_send_response
    linkageType: ''
    returnType: Bool
    signature: Bool rtspout_on_filter_setup_error(GF_Filter *f, void *on_setup_error_udta,
      GF_Err e)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:885,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:887,1
    - Dst: gf_filter_get_arg_str
      Src: /src/gpac/src/filters/out_rtsp.c:888,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:889,1
    - Dst: gf_filter_connect_source
      Src: /src/gpac/src/filters/out_rtsp.c:895,1
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/filters/out_rtsp.c:897,1
    - Dst: rtspout_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:900,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_rtsp.c:903,1
    - Dst: gf_filter_set_setup_failure_callback
      Src: /src/gpac/src/filters/out_rtsp.c:904,1
    - Dst: rtspout_send_sdp
      Src: /src/gpac/src/filters/out_rtsp.c:909,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 4
    argNames:
    - filter
    - ctx
    - sess
    - src_url
    argTypes:
    - GF_Filter*
    - GF_RTSPOutCtx*
    - GF_RTSPOutSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 915
      start: 881
    functionDepth: 8
    functionLinenumber: 881
    functionLinenumberEnd: 915
    functionName: rtspout_load_media_service
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_get_arg_str
    - gf_rtsp_response_reset
    - gf_list_count
    - rtspout_send_sdp
    - strcmp
    - gf_list_add
    - gf_filter_set_setup_failure_callback
    - gf_filter_connect_source
    - rtspout_send_response
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtspout_load_media_service(GF_Filter *filter, GF_RTSPOutCtx
      *ctx, GF_RTSPOutSession *sess, char *src_url)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:919,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:920,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:924,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:927,1
    - Dst: gf_filter_pid_is_filter_in_parents
      Src: /src/gpac/src/filters/out_rtsp.c:928,1
    - Dst: gf_filter_has_pid_connection_pending
      Src: /src/gpac/src/filters/out_rtsp.c:937,1
    - Dst: rtspout_send_sdp
      Src: /src/gpac/src/filters/out_rtsp.c:943,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - filter
    - sess
    argTypes:
    - GF_Filter*
    - GF_RTSPOutSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 945
      start: 917
    functionDepth: 8
    functionLinenumber: 917
    functionLinenumberEnd: 945
    functionName: rtspout_check_sdp
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_is_filter_in_parents
    - gf_filter_has_pid_connection_pending
    - gf_list_count
    - rtspout_send_sdp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtspout_check_sdp(GF_Filter *filter, GF_RTSPOutSession *sess)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:949,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:953,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:957,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:959,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:961,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 18
    argCount: 3
    argNames:
    - ctx
    - sess
    - port
    argTypes:
    - GF_RTSPOutCtx*
    - GF_RTSPOutSession*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 967
      start: 947
    functionDepth: 1
    functionLinenumber: 947
    functionLinenumberEnd: 967
    functionName: rtspout_get_next_mcast_port
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: void
    signature: void rtspout_get_next_mcast_port(GF_RTSPOutCtx *ctx, GF_RTSPOutSession
      *sess, u32 *port)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:971,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:974,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:976,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_rtsp.c:981,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_rtsp.c:982,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:984,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 17
    argCount: 2
    argNames:
    - ctx
    - res_path
    argTypes:
    - GF_RTSPOutCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 988
      start: 969
    functionDepth: 1
    functionLinenumber: 969
    functionLinenumberEnd: 988
    functionName: rtspout_locate_mcast
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - strstr
    - gf_list_count
    - strcmp
    - strchr
    linkageType: ''
    returnType: GF_RTSPOutSession
    signature: GF_RTSPOutSession *rtspout_locate_mcast(GF_RTSPOutCtx *ctx, char *res_path)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:995,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:1001,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_rtsp.c:1004,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_rtsp.c:1008,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_rtsp.c:1009,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/out_rtsp.c:1010,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:1012,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:1021,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_rtsp.c:1022,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1024,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_rtsp.c:1027,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:1051,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_rtsp.c:1054,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/filters/out_rtsp.c:1055,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_rtsp.c:1055,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_rtsp.c:1057,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:1060,1
    - Dst: gf_creds_check_password
      Src: /src/gpac/src/filters/out_rtsp.c:1066,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:1068,1
    - Dst: gf_creds_check_membership
      Src: /src/gpac/src/filters/out_rtsp.c:1075,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:1077,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:1084,1
    - Dst: gf_creds_check_membership
      Src: /src/gpac/src/filters/out_rtsp.c:1090,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 96
    argCount: 5
    argNames:
    - ctx
    - res_path
    - com
    - err_code
    - mcast_mode
    argTypes:
    - GF_RTSPOutCtx*
    - char*
    - GF_RTSPCommand*
    - u32*
    - GF_RTSPOutMulticastMode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1096
      start: 990
    functionDepth: 7
    functionLinenumber: 990
    functionLinenumberEnd: 1096
    functionName: rtspout_get_local_res_path
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_file_exists
    - gf_base64_decode
    - gf_list_count
    - strncmp
    - strcmp
    - gf_creds_check_password
    - gf_creds_check_membership
    - gf_dynstrcat
    - strchr
    - strlen
    linkageType: ''
    returnType: char
    signature: char *rtspout_get_local_res_path(GF_RTSPOutCtx *ctx, char *res_path,
      GF_RTSPCommand *com, u32 *err_code, GF_RTSPOutMulticastMode *mcast_mode)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filters/out_rtsp.c:1102,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_rtsp.c:1103,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/out_rtsp.c:1104,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - sess
    - ctrl
    argTypes:
    - GF_RTSPOutSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1110
      start: 1098
    functionDepth: 0
    functionLinenumber: 1098
    functionLinenumberEnd: 1110
    functionName: rtspout_get_ctrl_id
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - strncmp
    - sscanf
    - strlen
    linkageType: ''
    returnType: u32
    signature: u32 rtspout_get_ctrl_id(GF_RTSPOutSession *sess, char *ctrl)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:1117,1
    - Dst: rtspout_get_ctrl_id
      Src: /src/gpac/src/filters/out_rtsp.c:1122,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1126,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:1131,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:1133,1
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/filters/out_rtsp.c:1143,1
    - Dst: rtspout_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:1146,1
    - Dst: gf_rtsp_session_del
      Src: /src/gpac/src/filters/out_rtsp.c:1148,1
    - Dst: rtspout_check_last_sess
      Src: /src/gpac/src/filters/out_rtsp.c:1150,1
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/filters/out_rtsp.c:1154,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/out_rtsp.c:1163,1
    - Dst: rand
      Src: /src/gpac/src/filters/out_rtsp.c:1178,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/filters/out_rtsp.c:1182,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_rtsp.c:1191,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_rtsp.c:1191,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_rtsp.c:1191,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:1192,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/filters/out_rtsp.c:1198,1
    - Dst: rtspout_get_local_res_path
      Src: /src/gpac/src/filters/out_rtsp.c:1205,1
    - Dst: rtspout_get_next_mcast_port
      Src: /src/gpac/src/filters/out_rtsp.c:1229,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:1233,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_rtsp.c:1243,1
    - Dst: gf_rtp_streamer_init_rtsp
      Src: /src/gpac/src/filters/out_rtsp.c:1247,1
    - Dst: gf_rtsp_generate_session_id
      Src: /src/gpac/src/filters/out_rtsp.c:1252,1
    - Dst: gf_rtsp_get_session_ip
      Src: /src/gpac/src/filters/out_rtsp.c:1257,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:1258,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_rtsp.c:1262,1
    - Dst: gf_rtp_streamer_set_interleave_callbacks
      Src: /src/gpac/src/filters/out_rtsp.c:1268,1
    - Dst: rtspout_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:1272,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/out_rtsp.c:1273,1
    - Dst: gf_rtsp_session_del
      Src: /src/gpac/src/filters/out_rtsp.c:1281,1
    - Dst: rtspout_check_last_sess
      Src: /src/gpac/src/filters/out_rtsp.c:1283,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 152
    argCount: 3
    argNames:
    - ctx
    - sess
    - ctrl
    argTypes:
    - GF_RTSPOutCtx*
    - GF_RTSPOutSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1286
      start: 1112
    functionDepth: 8
    functionLinenumber: 1112
    functionLinenumberEnd: 1286
    functionName: rtspout_process_setup
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_find
    - gf_list_count
    - rtspout_get_ctrl_id
    - gf_rtp_streamer_set_interleave_callbacks
    - rtspout_get_next_mcast_port
    - gf_list_get
    - gf_strdup
    - gf_rtp_streamer_init_rtsp
    - gf_list_add
    - rtspout_get_local_res_path
    - gf_rtsp_response_reset
    - rand
    - gf_list_reset
    - GF_LOG
    - strstr
    - gf_rtsp_generate_session_id
    - gf_sk_is_multicast_address
    - gf_rtsp_session_del
    - strcmp
    - rtspout_check_last_sess
    - gf_rtsp_get_session_ip
    - rtspout_send_response
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtspout_process_setup(GF_RTSPOutCtx *ctx, GF_RTSPOutSession
      *sess, char *ctrl)
  - BBCount: 85
    BranchProfiles: []
    Callsites:
    - Dst: rtspout_check_sdp
      Src: /src/gpac/src/filters/out_rtsp.c:1299,1
    - Dst: gf_rtsp_get_command
      Src: /src/gpac/src/filters/out_rtsp.c:1304,1
    - Dst: gf_rtsp_session_del
      Src: /src/gpac/src/filters/out_rtsp.c:1309,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:1316,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:1320,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:1323,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1326,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_rtsp.c:1331,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_rtsp.c:1332,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_rtsp.c:1338,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_rtsp.c:1339,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_rtsp.c:1342,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_rtsp.c:1342,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1345,1
    - Dst: gf_rtsp_command_del
      Src: /src/gpac/src/filters/out_rtsp.c:1354,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_rtsp.c:1359,1
    - Dst: rtspout_del_session
      Src: /src/gpac/src/filters/out_rtsp.c:1360,1
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/filters/out_rtsp.c:1367,1
    - Dst: rtspout_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:1370,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1375,1
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/filters/out_rtsp.c:1376,1
    - Dst: rtspout_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:1380,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1384,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1385,1
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/filters/out_rtsp.c:1387,1
    - Dst: rtspout_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:1390,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1393,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1393,1
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/filters/out_rtsp.c:1394,1
    - Dst: rtspout_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:1397,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1400,1
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/filters/out_rtsp.c:1401,1
    - Dst: rtspout_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:1404,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1410,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1411,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1415,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_rtsp.c:1419,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_rtsp.c:1420,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/out_rtsp.c:1424,1
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/filters/out_rtsp.c:1426,1
    - Dst: rtspout_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:1429,1
    - Dst: rtspout_locate_mcast
      Src: /src/gpac/src/filters/out_rtsp.c:1438,1
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/filters/out_rtsp.c:1445,1
    - Dst: rtspout_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:1448,1
    - Dst: rtspout_send_sdp
      Src: /src/gpac/src/filters/out_rtsp.c:1450,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_rtsp.c:1460,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_rtsp.c:1461,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1463,1
    - Dst: rtspout_get_local_res_path
      Src: /src/gpac/src/filters/out_rtsp.c:1472,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:1475,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_rtsp.c:1482,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_rtsp.c:1488,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_rtsp.c:1489,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_rtsp.c:1494,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_rtsp.c:1495,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_rtsp.c:1496,1
    - Dst: rtspout_get_local_res_path
      Src: /src/gpac/src/filters/out_rtsp.c:1497,1
    - Dst: gf_filter_is_supported_source
      Src: /src/gpac/src/filters/out_rtsp.c:1498,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_rtsp.c:1499,1
    - Dst: gf_filter_url_is_filter
      Src: /src/gpac/src/filters/out_rtsp.c:1500,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_rtsp.c:1501,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_rtsp.c:1506,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:1515,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/out_rtsp.c:1516,1
    - Dst: rtspout_load_media_service
      Src: /src/gpac/src/filters/out_rtsp.c:1519,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:1524,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_rtsp.c:1526,1
    - Dst: rtspout_get_local_res_path
      Src: /src/gpac/src/filters/out_rtsp.c:1530,1
    - Dst: rtspout_load_media_service
      Src: /src/gpac/src/filters/out_rtsp.c:1534,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:1535,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:1542,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_rtsp.c:1543,1
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/filters/out_rtsp.c:1546,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_rtsp.c:1550,1
    - Dst: rtspout_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:1552,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_rtsp.c:1558,1
    - Dst: rtspout_process_setup
      Src: /src/gpac/src/filters/out_rtsp.c:1564,1
    - Dst: rtspout_send_sdp
      Src: /src/gpac/src/filters/out_rtsp.c:1566,1
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/filters/out_rtsp.c:1577,1
    - Dst: rtspout_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:1580,1
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/filters/out_rtsp.c:1586,1
    - Dst: rtspout_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:1589,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/out_rtsp.c:1596,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1600,1
    - Dst: rtspout_process_setup
      Src: /src/gpac/src/filters/out_rtsp.c:1601,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1605,1
    - Dst: rtspout_get_ctrl_id
      Src: /src/gpac/src/filters/out_rtsp.c:1608,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1609,1
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/filters/out_rtsp.c:1622,1
    - Dst: rtspout_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:1625,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_rtsp.c:1633,1
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/filters/out_rtsp.c:1638,1
    - Dst: rtspout_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:1641,1
    - Dst: rtspout_send_event
      Src: /src/gpac/src/filters/out_rtsp.c:1648,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1655,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_rtsp.c:1658,1
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/filters/out_rtsp.c:1660,1
    - Dst: rtspout_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:1663,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1667,1
    - Dst: rtspout_send_event
      Src: /src/gpac/src/filters/out_rtsp.c:1669,1
    - Dst: gf_rtsp_response_reset
      Src: /src/gpac/src/filters/out_rtsp.c:1671,1
    - Dst: rtspout_send_response
      Src: /src/gpac/src/filters/out_rtsp.c:1674,1
    - Dst: rtspout_send_event
      Src: /src/gpac/src/filters/out_rtsp.c:1676,1
    - Dst: rtspout_del_session
      Src: /src/gpac/src/filters/out_rtsp.c:1679,1
    - Dst: rtspout_check_last_sess
      Src: /src/gpac/src/filters/out_rtsp.c:1680,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtsp.c:1686,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_rtsp.c:1689,1
    CyclomaticComplexity: 116
    EdgeCount: 116
    ICount: 343
    argCount: 3
    argNames:
    - filter
    - ctx
    - sess_ptr
    argTypes:
    - GF_Filter*
    - GF_RTSPOutCtx*
    - GF_RTSPOutSession**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1694
      start: 1289
    functionDepth: 9
    functionLinenumber: 1289
    functionLinenumberEnd: 1694
    functionName: rtspout_process_session_signaling
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_url_is_filter
    - rtspout_locate_mcast
    - gf_list_count
    - rtspout_get_ctrl_id
    - rtspout_check_sdp
    - strchr
    - gf_sys_clock
    - rtspout_process_setup
    - gf_list_get
    - gf_list_new
    - gf_strdup
    - strrchr
    - rtspout_load_media_service
    - memcpy
    - rtspout_del_session
    - strncmp
    - rtspout_send_sdp
    - gf_list_add
    - rtspout_get_local_res_path
    - gf_rtsp_response_reset
    - gf_filter_is_supported_source
    - GF_LOG
    - strstr
    - rtspout_send_event
    - gf_sys_clock_high_res
    - strlen
    - gf_list_del
    - gf_rtsp_get_command
    - gf_list_pop_front
    - gf_rtsp_session_del
    - strcmp
    - rtspout_check_last_sess
    - gf_rtsp_command_del
    - rtspout_send_response
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtspout_process_session_signaling(GF_Filter *filter, GF_RTSPOutCtx
      *ctx, GF_RTSPOutSession **sess_ptr)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtsp_get_session_cookie
      Src: /src/gpac/src/filters/out_rtsp.c:1700,1
    - Dst: gf_rtsp_get_session_ip
      Src: /src/gpac/src/filters/out_rtsp.c:1701,1
    - Dst: rtspout_del_session
      Src: /src/gpac/src/filters/out_rtsp.c:1703,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:1706,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:1708,1
    - Dst: gf_rtsp_get_session_cookie
      Src: /src/gpac/src/filters/out_rtsp.c:1711,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1713,1
    - Dst: gf_rtsp_get_session_ip
      Src: /src/gpac/src/filters/out_rtsp.c:1714,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_rtsp.c:1715,1
    - Dst: gf_rtsp_merge_tunnel
      Src: /src/gpac/src/filters/out_rtsp.c:1717,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:1719,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_rtsp.c:1719,1
    - Dst: rtspout_del_session
      Src: /src/gpac/src/filters/out_rtsp.c:1720,1
    - Dst: rtspout_del_session
      Src: /src/gpac/src/filters/out_rtsp.c:1724,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:1727,1
    - Dst: rtspout_del_session
      Src: /src/gpac/src/filters/out_rtsp.c:1728,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 28
    argCount: 3
    argNames:
    - filter
    - ctx
    - sess
    argTypes:
    - GF_Filter*
    - GF_RTSPOutCtx*
    - GF_RTSPOutSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1729
      start: 1696
    functionDepth: 6
    functionLinenumber: 1696
    functionLinenumberEnd: 1729
    functionName: rtspout_merge_http_tunnel
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - GF_LOG
    - rtspout_del_session
    - gf_list_count
    - gf_rtsp_get_session_cookie
    - strcmp
    - gf_rtsp_merge_tunnel
    - gf_error_to_string
    - gf_rtsp_get_session_ip
    linkageType: ''
    returnType: void
    signature: void rtspout_merge_http_tunnel(GF_Filter *filter, GF_RTSPOutCtx *ctx,
      GF_RTSPOutSession *sess)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_rtsp.c:1735,1
    - Dst: rtspout_check_new_session
      Src: /src/gpac/src/filters/out_rtsp.c:1741,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_rtsp.c:1746,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:1747,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:1750,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtsp.c:1754,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtsp.c:1756,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_rtsp.c:1759,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_rtsp.c:1763,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_rtsp.c:1764,1
    - Dst: rtspout_process_session_signaling
      Src: /src/gpac/src/filters/out_rtsp.c:1772,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/out_rtsp.c:1774,1
    - Dst: rtspout_merge_http_tunnel
      Src: /src/gpac/src/filters/out_rtsp.c:1775,1
    - Dst: rtspout_process_rtp
      Src: /src/gpac/src/filters/out_rtsp.c:1784,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_rtsp.c:1789,1
    - Dst: rtspout_del_session
      Src: /src/gpac/src/filters/out_rtsp.c:1793,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtsp.c:1801,1
    - Dst: rtspout_del_session
      Src: /src/gpac/src/filters/out_rtsp.c:1802,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_rtsp.c:1817,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_rtsp.c:1819,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 75
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1822
      start: 1731
    functionDepth: 10
    functionLinenumber: 1731
    functionLinenumberEnd: 1822
    functionName: rtspout_process
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - rtspout_process_rtp
    - rtspout_process_session_signaling
    - rtspout_merge_http_tunnel
    - GF_LOG
    - gf_sys_clock_high_res
    - rtspout_del_session
    - GF_FEVT_INIT
    - gf_list_count
    - rtspout_check_new_session
    - gf_filter_pid_send_event
    - gf_filter_ask_rt_reschedule
    - gf_filter_post_process_task
    - gf_filter_pid_get_packet
    - gf_sys_clock
    - gf_list_rem
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtspout_process(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_rtsp.c:1826,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_rtsp.c:1827,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_rtsp.c:1828,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1830
      start: 1824
    functionDepth: 0
    functionLinenumber: 1824
    functionLinenumberEnd: 1830
    functionName: rtspout_probe_url
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - strnicmp
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore rtspout_probe_url(const char *url, const char *mime)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1849
      start: 1848
    functionDepth: 0
    functionLinenumber: 1848
    functionLinenumberEnd: 1849
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/out_rtsp.c:1967,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/out_rtsp.c:1968,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1971
      start: 1965
    functionDepth: 6
    functionLinenumber: 1965
    functionLinenumberEnd: 1971
    functionName: rtspout_register
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    - gf_opts_set_key
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rtspout_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1978
      start: 1975
    functionDepth: 0
    functionLinenumber: 1975
    functionLinenumberEnd: 1978
    functionName: rtspout_register
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rtspout_register(GF_FilterSession *session)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/enc_png.c:56,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/enc_png.c:62,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/enc_png.c:68,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/enc_png.c:73,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/enc_png.c:76,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/enc_png.c:77,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/enc_png.c:77,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/enc_png.c:78,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/enc_png.c:79,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/enc_png.c:80,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/enc_png.c:81,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/enc_png.c:83,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_png.c:85,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_png.c:89,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_png.c:93,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_png.c:97,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_png.c:100,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/enc_png.c:103,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/enc_png.c:124,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/enc_png.c:124,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/enc_png.c:129,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 66
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 53
    functionDepth: 5
    functionLinenumber: 53
    functionLinenumberEnd: 132
    functionName: pngenc_configure_pid
    functionSourceFile: /src/gpac/src/filters/enc_png.c
    functionUses: 0
    functionsReached:
    - gf_filter_set_name
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_filter_pid_negotiate_property
    - gf_realloc
    - gf_filter_pid_check_caps
    - gf_pixel_get_size_info
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pngenc_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/enc_png.c:136,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/enc_png.c:137,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 138
    functionName: pngenc_finalize
    functionSourceFile: /src/gpac/src/filters/enc_png.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void pngenc_finalize(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: png_get_io_ptr
      Src: /src/gpac/src/filters/enc_png.c:144,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/enc_png.c:147,1
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/enc_png.c:156,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/enc_png.c:161,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - png
    - data
    - size
    argTypes:
    - png_structp
    - png_bytep
    - png_size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 163
    functionName: pngenc_write
    functionSourceFile: /src/gpac/src/filters/enc_png.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_filter_pck_expand
    - gf_filter_pck_new_alloc
    - png_get_io_ptr
    linkageType: ''
    returnType: void
    signature: void pngenc_write(png_structp png, png_bytep data, png_size_t size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_png.c:168,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - png
    argTypes:
    - png_structp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 170
    functionName: pngenc_flush
    functionSourceFile: /src/gpac/src/filters/enc_png.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void pngenc_flush(png_structp png)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_png.c:175,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_png.c:177,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - cbk
    - msg
    argTypes:
    - png_structp
    - png_const_charp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 179
    functionName: pngenc_error
    functionSourceFile: /src/gpac/src/filters/enc_png.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void pngenc_error(png_structp cbk, png_const_charp msg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_png.c:183,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_png.c:185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - cbk
    - msg
    argTypes:
    - png_structp
    - png_const_charp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 187
    functionName: pngenc_warn
    functionSourceFile: /src/gpac/src/filters/enc_png.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void pngenc_warn(png_structp cbk, png_const_charp msg)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/enc_png.c:192,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/enc_png.c:202,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/enc_png.c:207,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/enc_png.c:208,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/enc_png.c:214,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/enc_png.c:216,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/enc_png.c:218,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/enc_png.c:221,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_png.c:223,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/enc_png.c:224,1
    - Dst: png_create_write_struct
      Src: /src/gpac/src/filters/enc_png.c:229,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/enc_png.c:232,1
    - Dst: png_create_info_struct
      Src: /src/gpac/src/filters/enc_png.c:237,1
    - Dst: png_destroy_write_struct
      Src: /src/gpac/src/filters/enc_png.c:239,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/enc_png.c:240,1
    - Dst: setjmp
      Src: /src/gpac/src/filters/enc_png.c:247,1
    - Dst: png_jmpbuf
      Src: /src/gpac/src/filters/enc_png.c:247,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/enc_png.c:255,1
    - Dst: png_set_write_fn
      Src: /src/gpac/src/filters/enc_png.c:262,1
    - Dst: png_set_IHDR
      Src: /src/gpac/src/filters/enc_png.c:264,1
    - Dst: memset
      Src: /src/gpac/src/filters/enc_png.c:266,1
    - Dst: png_set_sBIT
      Src: /src/gpac/src/filters/enc_png.c:285,1
    - Dst: png_set_text
      Src: /src/gpac/src/filters/enc_png.c:301,1
    - Dst: png_write_info
      Src: /src/gpac/src/filters/enc_png.c:305,1
    - Dst: png_set_shift
      Src: /src/gpac/src/filters/enc_png.c:310,1
    - Dst: png_set_packing
      Src: /src/gpac/src/filters/enc_png.c:313,1
    - Dst: png_set_bgr
      Src: /src/gpac/src/filters/enc_png.c:317,1
    - Dst: png_set_filler
      Src: /src/gpac/src/filters/enc_png.c:320,1
    - Dst: png_set_bgr
      Src: /src/gpac/src/filters/enc_png.c:321,1
    - Dst: png_set_filler
      Src: /src/gpac/src/filters/enc_png.c:324,1
    - Dst: png_set_bgr
      Src: /src/gpac/src/filters/enc_png.c:327,1
    - Dst: png_write_image
      Src: /src/gpac/src/filters/enc_png.c:334,1
    - Dst: png_write_end
      Src: /src/gpac/src/filters/enc_png.c:335,1
    - Dst: png_destroy_write_struct
      Src: /src/gpac/src/filters/enc_png.c:339,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/filters/enc_png.c:342,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/enc_png.c:343,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/enc_png.c:344,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/enc_png.c:346,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/enc_png.c:355,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 128
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 357
    functionName: pngenc_process
    functionSourceFile: /src/gpac/src/filters/enc_png.c
    functionUses: 0
    functionsReached:
    - png_write_info
    - memset
    - gf_filter_pck_truncate
    - gf_filter_pck_get_frame_interface
    - gf_filter_pid_get_packet
    - png_set_bgr
    - png_set_IHDR
    - png_write_end
    - png_set_filler
    - png_set_sBIT
    - png_create_write_struct
    - gf_filter_pck_discard
    - png_jmpbuf
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - png_write_image
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pid_set_eos
    - png_destroy_write_struct
    - gf_filter_pid_is_eos
    - png_set_packing
    - png_create_info_struct
    - gf_filter_pck_merge_properties
    - png_set_text
    - GF_FilterFrameInterface*::get_plane
    - png_set_write_fn
    - png_set_shift
    - setjmp
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pngenc_process(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/enc_png.c:362,1
    - Dst: pngenc_flush
      Src: /src/gpac/src/filters/enc_png.c:363,1
    - Dst: pngenc_error
      Src: /src/gpac/src/filters/enc_png.c:364,1
    - Dst: pngenc_warn
      Src: /src/gpac/src/filters/enc_png.c:365,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 359
    functionDepth: 2
    functionLinenumber: 359
    functionLinenumberEnd: 369
    functionName: pngenc_initialize
    functionSourceFile: /src/gpac/src/filters/enc_png.c
    functionUses: 0
    functionsReached:
    - pngenc_flush
    - pngenc_warn
    - pngenc_error
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pngenc_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 393
    functionDepth: 0
    functionLinenumber: 393
    functionLinenumberEnd: 400
    functionName: pngenc_register
    functionSourceFile: /src/gpac/src/filters/enc_png.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *pngenc_register(GF_FilterSession *session)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/enc_jpg.c:64,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/enc_jpg.c:69,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/enc_jpg.c:75,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/enc_jpg.c:82,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/enc_jpg.c:85,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/enc_jpg.c:86,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/enc_jpg.c:86,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/enc_jpg.c:87,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/enc_jpg.c:88,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/enc_jpg.c:89,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/enc_jpg.c:90,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/enc_jpg.c:93,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/enc_jpg.c:95,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/enc_jpg.c:98,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_jpg.c:101,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_jpg.c:105,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_jpg.c:109,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_jpg.c:113,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/enc_jpg.c:116,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/enc_jpg.c:119,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/enc_jpg.c:124,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/enc_jpg.c:124,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 50
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 60
    functionDepth: 5
    functionLinenumber: 60
    functionLinenumberEnd: 130
    functionName: jpgenc_configure_pid
    functionSourceFile: /src/gpac/src/filters/enc_jpg.c
    functionUses: 0
    functionsReached:
    - gf_filter_set_name
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_filter_pid_negotiate_property
    - sprintf
    - gf_filter_pid_check_caps
    - gf_pixel_get_size_info
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jpgenc_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_jpg.c:138,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_jpg.c:140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - cinfo
    argTypes:
    - j_common_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 142
    functionName: jpgenc_output_message
    functionSourceFile: /src/gpac/src/filters/enc_jpg.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void jpgenc_output_message (j_common_ptr cinfo)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_jpg.c:149,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_jpg.c:151,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - cinfo
    - lev
    argTypes:
    - j_common_ptr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 153
    functionName: jpgenc_nonfatal_error2
    functionSourceFile: /src/gpac/src/filters/enc_jpg.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void jpgenc_nonfatal_error2(j_common_ptr cinfo, int lev)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_jpg.c:158,1
    - Dst: jpgenc_output_message
      Src: /src/gpac/src/filters/enc_jpg.c:161,1
    - Dst: longjmp
      Src: /src/gpac/src/filters/enc_jpg.c:162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - cinfo
    argTypes:
    - j_common_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 155
    functionDepth: 2
    functionLinenumber: 155
    functionLinenumberEnd: 164
    functionName: jpgenc_fatal_error
    functionSourceFile: /src/gpac/src/filters/enc_jpg.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - jpgenc_output_message
    - longjmp
    linkageType: ''
    returnType: void
    signature: void jpgenc_fatal_error(j_common_ptr cinfo)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/enc_jpg.c:174,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - cinfo
    argTypes:
    - j_compress_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 180
    functionName: jpgenc_init_dest
    functionSourceFile: /src/gpac/src/filters/enc_jpg.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    linkageType: ''
    returnType: void
    signature: void jpgenc_init_dest(j_compress_ptr cinfo)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/enc_jpg.c:191,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - cinfo
    argTypes:
    - j_compress_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 198
    functionName: jpgenc_empty_output
    functionSourceFile: /src/gpac/src/filters/enc_jpg.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_expand
    linkageType: ''
    returnType: boolean
    signature: boolean jpgenc_empty_output(j_compress_ptr cinfo)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/filters/enc_jpg.c:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - cinfo
    argTypes:
    - j_compress_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 206
    functionName: jpgenc_term_dest
    functionSourceFile: /src/gpac/src/filters/enc_jpg.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_truncate
    linkageType: ''
    returnType: void
    signature: void jpgenc_term_dest(j_compress_ptr cinfo)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/enc_jpg.c:210,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/enc_jpg.c:223,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/enc_jpg.c:228,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/enc_jpg.c:229,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/enc_jpg.c:236,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/enc_jpg.c:238,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/enc_jpg.c:240,1
    - Dst: jpeg_std_error
      Src: /src/gpac/src/filters/enc_jpg.c:249,1
    - Dst: setjmp
      Src: /src/gpac/src/filters/enc_jpg.c:254,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_jpg.c:255,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/enc_jpg.c:265,1
    - Dst: jpeg_create_compress
      Src: /src/gpac/src/filters/enc_jpg.c:275,1
    - Dst: jpeg_set_defaults
      Src: /src/gpac/src/filters/enc_jpg.c:284,1
    - Dst: jpeg_set_colorspace
      Src: /src/gpac/src/filters/enc_jpg.c:296,1
    - Dst: jpeg_set_quality
      Src: /src/gpac/src/filters/enc_jpg.c:297,1
    - Dst: MIN
      Src: /src/gpac/src/filters/enc_jpg.c:297,1
    - Dst: jpeg_start_compress
      Src: /src/gpac/src/filters/enc_jpg.c:301,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/enc_jpg.c:311,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_jpg.c:313,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/enc_jpg.c:317,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_jpg.c:319,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/enc_jpg.c:323,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/enc_jpg.c:325,1
    - Dst: jpeg_write_raw_data
      Src: /src/gpac/src/filters/enc_jpg.c:340,1
    - Dst: jpeg_finish_compress
      Src: /src/gpac/src/filters/enc_jpg.c:342,1
    - Dst: jpeg_destroy_compress
      Src: /src/gpac/src/filters/enc_jpg.c:346,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/enc_jpg.c:349,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/enc_jpg.c:350,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/enc_jpg.c:352,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/enc_jpg.c:361,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 134
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 363
    functionName: jpgenc_process
    functionSourceFile: /src/gpac/src/filters/enc_jpg.c
    functionUses: 0
    functionsReached:
    - jpeg_set_colorspace
    - jpeg_set_quality
    - jpeg_start_compress
    - gf_filter_pck_get_frame_interface
    - jpeg_std_error
    - gf_filter_pid_get_packet
    - jpeg_set_defaults
    - jpeg_finish_compress
    - jpeg_create_compress
    - gf_filter_pck_discard
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pid_set_eos
    - MIN
    - jpeg_destroy_compress
    - jpeg_write_raw_data
    - gf_filter_pid_is_eos
    - gf_filter_pck_merge_properties
    - GF_FilterFrameInterface*::get_plane
    - setjmp
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jpgenc_process(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/enc_jpg.c:368,1
    - Dst: jpgenc_output_message
      Src: /src/gpac/src/filters/enc_jpg.c:369,1
    - Dst: jpgenc_nonfatal_error2
      Src: /src/gpac/src/filters/enc_jpg.c:370,1
    - Dst: jpgenc_fatal_error
      Src: /src/gpac/src/filters/enc_jpg.c:371,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 365
    functionDepth: 3
    functionLinenumber: 365
    functionLinenumberEnd: 375
    functionName: jpgenc_initialize
    functionSourceFile: /src/gpac/src/filters/enc_jpg.c
    functionUses: 0
    functionsReached:
    - jpgenc_fatal_error
    - jpgenc_output_message
    - jpgenc_nonfatal_error2
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jpgenc_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 384
    functionDepth: 0
    functionLinenumber: 384
    functionLinenumberEnd: 385
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/enc_jpg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 418
    functionName: jpgenc_register
    functionSourceFile: /src/gpac/src/filters/enc_jpg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *jpgenc_register(GF_FilterSession *session)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/tssplit.c:96,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/tssplit.c:98,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/tssplit.c:101,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/tssplit.c:106,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/tssplit.c:111,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/tssplit.c:121,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/tssplit.c:123,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/tssplit.c:124,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/tssplit.c:125,1
    - Dst: assert
      Src: /src/gpac/src/filters/tssplit.c:133,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/tssplit.c:135,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/tssplit.c:147,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/tssplit.c:149,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/tssplit.c:151,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/tssplit.c:155,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/tssplit.c:156,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/tssplit.c:158,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/tssplit.c:164,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/tssplit.c:166,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/tssplit.c:168,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/tssplit.c:171,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/tssplit.c:172,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/tssplit.c:174,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 76
    argCount: 5
    argNames:
    - ctx
    - stream
    - data
    - size
    - pcr_plus_one
    argTypes:
    - GF_M2TSSplitCtx*
    - GF_M2TSSplit_SPTS*
    - u8*
    - u32
    - u64
    assertStmts:
    - condition: (stream->nb_pck<ctx->nb_pack)
      pos:
        line_end: 132
        line_start: 132
        source_file: /src/gpac/src/filters/tssplit.c
    constantsTouched: []
    func_position:
      end: 176
      start: 87
    functionDepth: 2
    functionLinenumber: 87
    functionLinenumberEnd: 176
    functionName: m2tssplit_send_packet
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - memcpy
    - gf_filter_pck_expand
    - assert
    - gf_filter_pck_set_framing
    - gf_sys_clock_high_res
    - gf_timestamp_rescale
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void m2tssplit_send_packet(GF_M2TSSplitCtx *ctx, GF_M2TSSplit_SPTS
      *stream, u8 *data, u32 size, u64 pcr_plus_one)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:181,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/tssplit.c:182,1
    - Dst: m2tssplit_send_packet
      Src: /src/gpac/src/filters/tssplit.c:185,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/tssplit.c:186,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_M2TSSplitCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 178
    functionDepth: 3
    functionLinenumber: 178
    functionLinenumberEnd: 188
    functionName: m2tssplit_flush
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - m2tssplit_send_packet
    - gf_filter_pid_set_eos
    linkageType: ''
    returnType: void
    signature: void m2tssplit_flush(GF_M2TSSplitCtx *ctx)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 3
    argNames:
    - ts
    - evt_type
    - param
    argTypes:
    - GF_M2TS_Demuxer*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 224
    functionName: m2tssplit_on_event_duration_probe
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void m2tssplit_on_event_duration_probe(GF_M2TS_Demuxer *ts, u32 evt_type,
      void *param)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/tssplit.c:230,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/tssplit.c:231,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/tssplit.c:235,1
    - Dst: memset
      Src: /src/gpac/src/filters/tssplit.c:241,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/tssplit.c:246,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/tssplit.c:248,1
    - Dst: gf_m2ts_process_data
      Src: /src/gpac/src/filters/tssplit.c:249,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/tssplit.c:252,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/tssplit.c:256,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/tssplit.c:261,1
    - Dst: gf_m2ts_demux_del
      Src: /src/gpac/src/filters/tssplit.c:264,1
    - Dst: gf_m2ts_demux_new
      Src: /src/gpac/src/filters/tssplit.c:265,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 2
    argNames:
    - ctx
    - pid
    argTypes:
    - GF_M2TSSplitCtx*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 226
    functionDepth: 6
    functionLinenumber: 226
    functionLinenumberEnd: 269
    functionName: m2ts_split_estimate_duration
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_m2ts_demux_new
    - gf_feof
    - gf_filter_pid_get_property
    - gf_fread
    - gf_m2ts_process_data
    - memset
    - strncmp
    - gf_fopen
    - gf_fsize
    - gf_timestamp_rescale
    - gf_m2ts_demux_del
    linkageType: ''
    returnType: void
    signature: void m2ts_split_estimate_duration(GF_M2TSSplitCtx *ctx, GF_FilterPid
      *pid)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/tssplit.c:273,1
    - Dst: m2tssplit_flush
      Src: /src/gpac/src/filters/tssplit.c:277,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:278,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/tssplit.c:279,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/tssplit.c:280,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/tssplit.c:281,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/tssplit.c:282,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/tssplit.c:286,1
    - Dst: m2ts_split_estimate_duration
      Src: /src/gpac/src/filters/tssplit.c:290,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/tssplit.c:295,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/tssplit.c:298,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/tssplit.c:300,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/tssplit.c:302,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/tssplit.c:303,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tssplit.c:304,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/tssplit.c:304,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tssplit.c:306,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/tssplit.c:306,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tssplit.c:307,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/tssplit.c:307,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 271
    functionDepth: 7
    functionLinenumber: 271
    functionLinenumberEnd: 312
    functionName: m2tssplit_configure_pid
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - m2ts_split_estimate_duration
    - gf_filter_pid_copy_properties
    - m2tssplit_flush
    - gf_filter_pid_remove
    - GF_SAFEALLOC
    - PROP_UINT
    - gf_list_count
    - gf_filter_pid_check_caps
    - gf_list_add
    - PROP_FRAC64
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_malloc
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err m2tssplit_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/tssplit.c:319,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:324,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/tssplit.c:345,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/tssplit.c:347,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:351,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:355,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/tssplit.c:356,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/tssplit.c:361,1
    - Dst: gf_m2ts_reset_parsers
      Src: /src/gpac/src/filters/tssplit.c:365,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:377,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/tssplit.c:378,1
    - Dst: m2tssplit_send_packet
      Src: /src/gpac/src/filters/tssplit.c:380,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/tssplit.c:382,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 58
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 314
    functionDepth: 6
    functionLinenumber: 314
    functionLinenumberEnd: 391
    functionName: m2tssplit_process_event
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_m2ts_reset_parsers
    - gf_realloc
    - GF_FEVT_INIT
    - gf_list_count
    - m2tssplit_send_packet
    - gf_filter_pid_send_event
    - gf_filter_pck_discard
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool m2tssplit_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/tssplit.c:395,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/tssplit.c:399,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/tssplit.c:401,1
    - Dst: m2tssplit_flush
      Src: /src/gpac/src/filters/tssplit.c:402,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/tssplit.c:405,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/tssplit.c:408,1
    - Dst: gf_m2ts_process_data
      Src: /src/gpac/src/filters/tssplit.c:410,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/tssplit.c:412,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/tssplit.c:414,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 393
    functionDepth: 4
    functionLinenumber: 393
    functionLinenumberEnd: 418
    functionName: m2tssplit_process
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_drop_packet
    - m2tssplit_flush
    - gf_filter_pck_get_data
    - gf_sys_clock_high_res
    - gf_m2ts_process_data
    - gf_filter_ask_rt_reschedule
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err m2tssplit_process(GF_Filter *filter)
  - BBCount: 77
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:428,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/tssplit.c:434,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/tssplit.c:435,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:437,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/tssplit.c:438,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/tssplit.c:444,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/tssplit.c:450,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/tssplit.c:452,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/tssplit.c:458,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/tssplit.c:462,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/tssplit.c:464,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/tssplit.c:465,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/tssplit.c:466,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/tssplit.c:467,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/tssplit.c:468,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/tssplit.c:469,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/tssplit.c:470,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/tssplit.c:471,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/tssplit.c:472,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/tssplit.c:473,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/tssplit.c:474,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/tssplit.c:475,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/tssplit.c:476,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/tssplit.c:477,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/tssplit.c:489,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/tssplit.c:490,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/tssplit.c:491,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/tssplit.c:492,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/tssplit.c:493,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/tssplit.c:494,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/tssplit.c:497,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/tssplit.c:498,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/tssplit.c:499,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/tssplit.c:501,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/tssplit.c:503,1
    - Dst: memset
      Src: /src/gpac/src/filters/tssplit.c:511,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/tssplit.c:513,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/tssplit.c:518,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/tssplit.c:520,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/tssplit.c:521,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/tssplit.c:522,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:530,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/tssplit.c:532,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/tssplit.c:537,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/tssplit.c:539,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/tssplit.c:540,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/tssplit.c:541,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:550,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/tssplit.c:551,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/tssplit.c:597,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tssplit.c:598,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/tssplit.c:598,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tssplit.c:599,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/tssplit.c:599,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tssplit.c:600,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/tssplit.c:600,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tssplit.c:601,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/tssplit.c:601,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tssplit.c:603,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/tssplit.c:603,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/tssplit.c:605,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/tssplit.c:607,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/tssplit.c:608,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/tssplit.c:609,1
    - Dst: m2tssplit_send_packet
      Src: /src/gpac/src/filters/tssplit.c:639,1
    - Dst: m2tssplit_send_packet
      Src: /src/gpac/src/filters/tssplit.c:641,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:666,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/tssplit.c:668,1
    - Dst: m2tssplit_send_packet
      Src: /src/gpac/src/filters/tssplit.c:674,1
    - Dst: m2tssplit_send_packet
      Src: /src/gpac/src/filters/tssplit.c:676,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 206
    argCount: 3
    argNames:
    - ts
    - evt_type
    - par
    argTypes:
    - struct tag_m2ts_demux*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 421
    functionDepth: 7
    functionLinenumber: 421
    functionLinenumberEnd: 681
    functionName: m2tssplit_on_event
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - PROP_STRING
    - gf_bs_write_u16
    - gf_list_count
    - memset
    - PROP_FRAC64
    - gf_filter_pid_new
    - gf_bs_write_u32
    - gf_list_get
    - gf_assert
    - memcpy
    - gf_list_add
    - gf_crc_32
    - gf_filter_pck_new_alloc
    - gf_bs_write_int
    - gf_bs_get_position
    - m2tssplit_send_packet
    - gf_filter_pid_set_property
    - gf_malloc
    - PROP_UINT
    - gf_bs_seek
    - gf_filter_pck_set_framing
    - gf_bs_write_u8
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void m2tssplit_on_event(struct tag_m2ts_demux *ts, u32 evt_type, void
      *par)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/tssplit.c:685,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/tssplit.c:686,1
    - Dst: gf_m2ts_demux_new
      Src: /src/gpac/src/filters/tssplit.c:687,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/tssplit.c:692,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 699
      start: 683
    functionDepth: 1
    functionLinenumber: 683
    functionLinenumberEnd: 699
    functionName: m2tssplit_initialize
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_m2ts_demux_new
    - gf_bs_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err m2tssplit_initialize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/tssplit.c:703,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:705,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/tssplit.c:706,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/tssplit.c:707,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/tssplit.c:708,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/tssplit.c:710,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/tssplit.c:711,1
    - Dst: gf_m2ts_demux_del
      Src: /src/gpac/src/filters/tssplit.c:712,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 713
      start: 701
    functionDepth: 6
    functionLinenumber: 701
    functionLinenumberEnd: 713
    functionName: m2tssplit_finalize
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_m2ts_demux_del
    - gf_bs_del
    - gf_list_count
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void m2tssplit_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 722
    functionDepth: 0
    functionLinenumber: 722
    functionLinenumberEnd: 723
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 755
    functionDepth: 0
    functionLinenumber: 755
    functionLinenumberEnd: 758
    functionName: tssplit_register
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *tssplit_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 770
      start: 769
    functionDepth: 0
    functionLinenumber: 769
    functionLinenumberEnd: 770
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: m2tssplit_initialize
      Src: /src/gpac/src/filters/tssplit.c:780,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/tssplit.c:782,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 786
      start: 778
    functionDepth: 2
    functionLinenumber: 778
    functionLinenumberEnd: 786
    functionName: m2ts_gendts_initialize
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached:
    - m2tssplit_initialize
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err m2ts_gendts_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 808
      start: 805
    functionDepth: 0
    functionLinenumber: 805
    functionLinenumberEnd: 808
    functionName: tsgendts_register
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *tsgendts_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 814
      start: 811
    functionDepth: 0
    functionLinenumber: 811
    functionLinenumberEnd: 814
    functionName: tssplit_register
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *tssplit_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 818
      start: 815
    functionDepth: 0
    functionLinenumber: 815
    functionLinenumberEnd: 818
    functionName: tsgendts_register
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *tsgendts_register(GF_FilterSession *session)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_mp3.c:88,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/reframe_mp3.c:93,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/reframe_mp3.c:98,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_mp3.c:102,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/reframe_mp3.c:105,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_mp3.c:110,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_mp3.c:111,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mp3.c:112,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_mp3.c:113,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mp3.c:115,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mp3.c:115,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 120
    functionName: mp3_dmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/reframe_mp3.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property_str
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp3_dmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_mp3.c:135,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_mp3.c:136,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/reframe_mp3.c:143,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/reframe_mp3.c:145,1
    - Dst: gf_mp3_get_next_header
      Src: /src/gpac/src/filters/reframe_mp3.c:157,1
    - Dst: gf_mp3_sampling_rate
      Src: /src/gpac/src/filters/reframe_mp3.c:159,1
    - Dst: gf_mp3_window_size
      Src: /src/gpac/src/filters/reframe_mp3.c:169,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/reframe_mp3.c:172,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_mp3.c:176,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/reframe_mp3.c:184,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/reframe_mp3.c:185,1
    - Dst: gf_mp3_frame_size
      Src: /src/gpac/src/filters/reframe_mp3.c:185,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/reframe_mp3.c:187,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mp3.c:193,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_mp3.c:193,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_mp3.c:196,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 62
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_MP3DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 122
    functionDepth: 6
    functionLinenumber: 122
    functionLinenumberEnd: 198
    functionName: mp3_dmx_check_dur
    functionSourceFile: /src/gpac/src/filters/reframe_mp3.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_filter_pid_get_property
    - gf_fseek
    - gf_mp3_get_next_header
    - gf_mp3_sampling_rate
    - gf_realloc
    - gf_fileio_is_main_thread
    - gf_mp3_window_size
    - strncmp
    - gf_mp3_frame_size
    - gf_fopen_ex
    - PROP_FRAC64
    - gf_filter_pid_set_property
    - gf_ftell
    linkageType: ''
    returnType: void
    signature: void mp3_dmx_check_dur(GF_Filter *filter, GF_MP3DmxCtx *ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/src/filters/reframe_mp3.c:206,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/reframe_mp3.c:207,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/filters/reframe_mp3.c:208,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/reframe_mp3.c:212,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/reframe_mp3.c:212,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/reframe_mp3.c:214,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/reframe_mp3.c:214,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mp3.c:217,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_mp3.c:219,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/reframe_mp3.c:222,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/reframe_mp3.c:222,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/reframe_mp3.c:224,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/reframe_mp3.c:224,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 4
    argNames:
    - apid
    - name
    - buf
    - is_dyn
    argTypes:
    - GF_FilterPid*
    - char*
    - u8*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 202
    functionDepth: 2
    functionLinenumber: 202
    functionLinenumberEnd: 227
    functionName: id3dmx_set_string
    functionSourceFile: /src/gpac/src/filters/reframe_mp3.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_utf8_wcstombs
    - PROP_STRING
    - GF_LOG
    - gf_filter_pid_set_property_str
    - gf_utf8_wcslen
    - gf_filter_pid_set_property_dyn
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void id3dmx_set_string(GF_FilterPid *apid, char *name, u8 *buf, Bool
      is_dyn)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_mp3.c:231,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_mp3.c:235,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_mp3.c:236,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_mp3.c:237,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mp3.c:238,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mp3.c:239,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mp3.c:240,1
    - Dst: gf_id3_read_size
      Src: /src/gpac/src/filters/reframe_mp3.c:241,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_mp3.c:248,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_mp3.c:255,1
    - Dst: gf_id3_read_size
      Src: /src/gpac/src/filters/reframe_mp3.c:256,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/reframe_mp3.c:257,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mp3.c:264,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/reframe_mp3.c:264,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_mp3.c:269,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_mp3.c:274,1
    - Dst: gf_itags_find_by_id3tag
      Src: /src/gpac/src/filters/reframe_mp3.c:280,1
    - Dst: memchr
      Src: /src/gpac/src/filters/reframe_mp3.c:283,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/reframe_mp3.c:285,1
    - Dst: id3dmx_set_string
      Src: /src/gpac/src/filters/reframe_mp3.c:286,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/reframe_mp3.c:288,1
    - Dst: strncat
      Src: /src/gpac/src/filters/reframe_mp3.c:289,1
    - Dst: id3dmx_set_string
      Src: /src/gpac/src/filters/reframe_mp3.c:290,1
    - Dst: memchr
      Src: /src/gpac/src/filters/reframe_mp3.c:296,1
    - Dst: memchr
      Src: /src/gpac/src/filters/reframe_mp3.c:298,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/reframe_mp3.c:307,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mp3.c:309,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/reframe_mp3.c:309,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/reframe_mp3.c:314,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mp3.c:315,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_mp3.c:315,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_mp3.c:316,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_mp3.c:318,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mp3.c:319,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_mp3.c:320,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_mp3.c:323,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mp3.c:326,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/reframe_mp3.c:326,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mp3.c:329,1
    - Dst: gf_itags_get_name
      Src: /src/gpac/src/filters/reframe_mp3.c:333,1
    - Dst: id3dmx_set_string
      Src: /src/gpac/src/filters/reframe_mp3.c:334,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/reframe_mp3.c:336,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/reframe_mp3.c:336,1
    - Dst: id3dmx_set_string
      Src: /src/gpac/src/filters/reframe_mp3.c:338,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/reframe_mp3.c:340,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/reframe_mp3.c:340,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_mp3.c:345,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_mp3.c:346,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 85
    argCount: 5
    argNames:
    - filter
    - id3_buf
    - id3_buf_size
    - audio_pid
    - video_pid_p
    argTypes:
    - GF_Filter*
    - u8*
    - u32
    - GF_FilterPid*
    - GF_FilterPid**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 229
    functionDepth: 7
    functionLinenumber: 229
    functionLinenumberEnd: 347
    functionName: id3dmx_flush
    functionSourceFile: /src/gpac/src/filters/reframe_mp3.c
    functionUses: 2
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_bs_new
    - gf_filter_pid_raw_new
    - strcpy
    - gf_bs_read_u16
    - gf_bs_available
    - PROP_DATA
    - gf_realloc
    - gf_4cc_to_str
    - gf_bs_read_u32
    - memcpy
    - sprintf
    - strncat
    - memchr
    - stricmp
    - gf_id3_read_size
    - PROP_BOOL
    - gf_bs_skip_bytes
    - gf_itags_get_name
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_error_to_string
    - gf_bs_read_u8
    - gf_filter_pid_set_property_dyn
    - id3dmx_set_string
    - gf_filter_pid_set_property
    - gf_itags_find_by_id3tag
    - gf_filter_pck_set_framing
    - gf_bs_del
    - gf_bs_read_int
    - gf_filter_pid_set_name
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void id3dmx_flush(GF_Filter *filter, u8 *id3_buf, u32 id3_buf_size,
      GF_FilterPid *audio_pid, GF_FilterPid **video_pid_p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: id3dmx_flush
      Src: /src/gpac/src/filters/reframe_mp3.c:350,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_MP3DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 348
    functionDepth: 8
    functionLinenumber: 348
    functionLinenumberEnd: 352
    functionName: mp3_dmx_flush_id3
    functionSourceFile: /src/gpac/src/filters/reframe_mp3.c
    functionUses: 0
    functionsReached:
    - id3dmx_flush
    linkageType: ''
    returnType: void
    signature: void mp3_dmx_flush_id3(GF_Filter *filter, GF_MP3DmxCtx *ctx)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_mp3.c:359,1
    - Dst: mp3_dmx_check_dur
      Src: /src/gpac/src/filters/reframe_mp3.c:360,1
    - Dst: gf_mp3_object_type_indication
      Src: /src/gpac/src/filters/reframe_mp3.c:363,1
    - Dst: gf_mp3_layer
      Src: /src/gpac/src/filters/reframe_mp3.c:364,1
    - Dst: gf_mp3_sampling_rate
      Src: /src/gpac/src/filters/reframe_mp3.c:375,1
    - Dst: gf_mp3_num_channels
      Src: /src/gpac/src/filters/reframe_mp3.c:375,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_mp3.c:383,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_mp3.c:384,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mp3.c:386,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mp3.c:386,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mp3.c:388,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mp3.c:390,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mp3.c:390,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mp3.c:393,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_mp3.c:393,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mp3.c:395,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_mp3.c:395,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/reframe_mp3.c:397,1
    - Dst: gf_mp3_num_channels
      Src: /src/gpac/src/filters/reframe_mp3.c:399,1
    - Dst: gf_mp3_sampling_rate
      Src: /src/gpac/src/filters/reframe_mp3.c:401,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_mp3.c:406,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mp3.c:412,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mp3.c:412,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mp3.c:413,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mp3.c:413,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mp3.c:414,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mp3.c:414,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mp3.c:415,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mp3.c:415,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mp3.c:416,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mp3.c:416,1
    - Dst: gf_mp3_window_size
      Src: /src/gpac/src/filters/reframe_mp3.c:416,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mp3.c:418,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mp3.c:418,1
    - Dst: gf_mp3_bit_rate
      Src: /src/gpac/src/filters/reframe_mp3.c:418,1
    - Dst: mp3_dmx_flush_id3
      Src: /src/gpac/src/filters/reframe_mp3.c:421,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 50
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_MP3DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 354
    functionDepth: 9
    functionLinenumber: 354
    functionLinenumberEnd: 423
    functionName: mp3_dmx_check_pid
    functionSourceFile: /src/gpac/src/filters/reframe_mp3.c
    functionUses: 0
    functionsReached:
    - gf_mp3_num_channels
    - PROP_BOOL
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_mp3_bit_rate
    - gf_mp3_sampling_rate
    - gf_mp3_layer
    - gf_mp3_object_type_indication
    - gf_mp3_window_size
    - mp3_dmx_check_dur
    - PROP_FRAC64
    - gf_filter_pid_set_name
    - gf_filter_pid_new
    - mp3_dmx_flush_id3
    - gf_filter_pid_set_property
    - gf_timestamp_rescale
    linkageType: ''
    returnType: void
    signature: void mp3_dmx_check_pid(GF_Filter *filter, GF_MP3DmxCtx *ctx)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_mp3.c:429,1
    - Dst: mp3_dmx_check_dur
      Src: /src/gpac/src/filters/reframe_mp3.c:446,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_mp3.c:469,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_mp3.c:471,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mp3.c:478,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 53
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 425
    functionDepth: 7
    functionLinenumber: 425
    functionLinenumberEnd: 492
    functionName: mp3_dmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_mp3.c
    functionUses: 0
    functionsReached:
    - GF_FEVT_INIT
    - gf_filter_pck_unref
    - mp3_dmx_check_dur
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool mp3_dmx_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mp3_window_size
      Src: /src/gpac/src/filters/reframe_mp3.c:496,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP3DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 505
      start: 494
    functionDepth: 2
    functionLinenumber: 494
    functionLinenumberEnd: 505
    functionName: mp3_dmx_update_cts
    functionSourceFile: /src/gpac/src/filters/reframe_mp3.c
    functionUses: 0
    functionsReached:
    - gf_mp3_window_size
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE mp3_dmx_update_cts(GF_MP3DmxCtx *ctx)
  - BBCount: 51
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_mp3.c:509,1
    - Dst: mp3_dmx_check_dur
      Src: /src/gpac/src/filters/reframe_mp3.c:523,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_mp3.c:528,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_mp3.c:530,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_mp3.c:533,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mp3.c:534,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_mp3.c:546,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_mp3.c:549,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_mp3.c:562,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mp3.c:564,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_mp3.c:570,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_mp3.c:606,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mp3.c:609,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mp3.c:622,1
    - Dst: mp3_dmx_flush_id3
      Src: /src/gpac/src/filters/reframe_mp3.c:626,1
    - Dst: gf_mp3_get_next_header_mem
      Src: /src/gpac/src/filters/reframe_mp3.c:632,1
    - Dst: gf_mp3_frame_size
      Src: /src/gpac/src/filters/reframe_mp3.c:640,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mp3.c:650,1
    - Dst: mp3_dmx_check_pid
      Src: /src/gpac/src/filters/reframe_mp3.c:661,1
    - Dst: gf_mp3_window_size
      Src: /src/gpac/src/filters/reframe_mp3.c:669,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mp3.c:687,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_mp3.c:690,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mp3.c:692,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_mp3.c:694,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_mp3.c:696,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_mp3.c:696,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_mp3.c:698,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_mp3.c:699,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_mp3.c:700,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_mp3.c:703,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_mp3.c:706,1
    - Dst: mp3_dmx_update_cts
      Src: /src/gpac/src/filters/reframe_mp3.c:708,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mp3.c:717,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mp3.c:733,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_mp3.c:736,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_mp3.c:749,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_mp3.c:753,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_mp3.c:756,1
    CyclomaticComplexity: 73
    EdgeCount: 73
    ICount: 198
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 759
      start: 507
    functionDepth: 10
    functionLinenumber: 507
    functionLinenumberEnd: 759
    functionName: mp3_dmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_mp3.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_ref_props
    - mp3_dmx_flush_id3
    - gf_filter_pid_get_packet
    - gf_realloc
    - gf_filter_pck_set_byte_offset
    - memcpy
    - mp3_dmx_check_pid
    - mp3_dmx_update_cts
    - gf_mp3_frame_size
    - gf_filter_pck_get_cts
    - gf_filter_get_udta
    - gf_filter_pck_new_alloc
    - memmove
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_filter_pid_set_eos
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - gf_timestamp_rescale
    - gf_filter_pck_set_cts
    - gf_mp3_window_size
    - gf_filter_pck_unref
    - gf_filter_pck_set_framing
    - gf_filter_pck_get_byte_offset
    - mp3_dmx_check_dur
    - gf_mp3_get_next_header_mem
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp3_dmx_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 761
    functionDepth: 0
    functionLinenumber: 761
    functionLinenumberEnd: 765
    functionName: mp3_dmx_initialize
    functionSourceFile: /src/gpac/src/filters/reframe_mp3.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp3_dmx_initialize(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_mp3.c:769,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_mp3.c:770,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_mp3.c:771,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_mp3.c:772,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_mp3.c:773,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mp3.c:774,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 775
      start: 767
    functionDepth: 3
    functionLinenumber: 767
    functionLinenumberEnd: 775
    functionName: mp3_dmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_mp3.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_del
    - gf_filter_pck_unref
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void mp3_dmx_finalize(GF_Filter *filter)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mp3.c:795,1
    - Dst: gf_mp3_get_next_header_mem
      Src: /src/gpac/src/filters/reframe_mp3.c:806,1
    - Dst: gf_mp3_version
      Src: /src/gpac/src/filters/reframe_mp3.c:811,1
    - Dst: gf_mp3_frame_size
      Src: /src/gpac/src/filters/reframe_mp3.c:817,1
    - Dst: gf_mp3_num_channels
      Src: /src/gpac/src/filters/reframe_mp3.c:831,1
    - Dst: gf_mp3_layer
      Src: /src/gpac/src/filters/reframe_mp3.c:840,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 71
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 871
      start: 778
    functionDepth: 4
    functionLinenumber: 778
    functionLinenumberEnd: 871
    functionName: mp3_dmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_mp3.c
    functionUses: 0
    functionsReached:
    - gf_mp3_num_channels
    - GF_LOG
    - gf_mp3_layer
    - gf_mp3_frame_size
    - gf_mp3_get_next_header_mem
    - gf_mp3_version
    linkageType: ''
    returnType: char
    signature: char *mp3_dmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 899
      start: 898
    functionDepth: 0
    functionLinenumber: 898
    functionLinenumberEnd: 899
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/reframe_mp3.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 928
      start: 925
    functionDepth: 0
    functionLinenumber: 925
    functionLinenumberEnd: 928
    functionName: rfmp3_register
    functionSourceFile: /src/gpac/src/filters/reframe_mp3.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfmp3_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 933
      start: 930
    functionDepth: 0
    functionLinenumber: 930
    functionLinenumberEnd: 933
    functionName: rfmp3_register
    functionSourceFile: /src/gpac/src/filters/reframe_mp3.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfmp3_register(GF_FilterSession *session)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:161,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:162,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:169,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:171,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:175,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:183,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:185,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:187,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:190,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:194,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:199,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:201,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:205,1
    - Dst: strlen
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:210,1
    - Dst: gf_rand_init
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:213,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:221,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:225,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:238,1
    - Dst: memset
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:243,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:244,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:245,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:246,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:248,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:252,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:254,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:254,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:258,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:258,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:260,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:263,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:264,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:265,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:267,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:268,1
    - Dst: strcat
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:269,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:274,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:274,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:275,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:275,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:276,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:276,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:277,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:277,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:280,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:280,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:287,1
    - Dst: strlen
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:288,1
    - Dst: strlen
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:288,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:289,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:290,1
    - Dst: strcat
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:291,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:293,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:293,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:295,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:295,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:298,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:298,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:300,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:300,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:301,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:301,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:302,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:302,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:307,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:322,1
    - Dst: gf_isom_add_desc_to_description
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:330,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:331,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:333,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:335,1
    - Dst: gf_ipmpx_data_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:346,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:351,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:356,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:358,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:360,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:363,1
    - Dst: gf_odf_codec_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:364,1
    - Dst: gf_odf_codec_set_au
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:365,1
    - Dst: gf_odf_codec_decode
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:366,1
    - Dst: gf_odf_codec_add_com
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:367,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:368,1
    - Dst: gf_odf_codec_encode
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:371,1
    - Dst: gf_odf_codec_get_au
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:372,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:374,1
    - Dst: gf_isom_update_sample
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:375,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:376,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:379,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:380,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:381,1
    - Dst: gf_isom_add_desc_to_root_od
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:384,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:385,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 192
    argCount: 5
    argNames:
    - ctx
    - cstr
    - is_isma
    - scheme_uri
    - kms_uri
    argTypes:
    - GF_CENCEncCtx*
    - GF_CENCStream*
    - Bool
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 156
    functionDepth: 9
    functionLinenumber: 156
    functionLinenumberEnd: 391
    functionName: isma_enc_configure
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_vvc_cfg_del
    - gf_odf_avc_cfg_del
    - gf_odf_desc_del
    - PROP_STRING
    - strcpy
    - memset
    - gf_odf_com_new
    - PROP_LONGUINT
    - gf_odf_codec_set_au
    - gf_odf_codec_get_au
    - gf_filter_pid_get_name
    - gf_odf_hevc_cfg_read
    - gf_realloc
    - strcat
    - memcpy
    - gf_isom_sample_del
    - sprintf
    - gf_isom_get_track_count
    - gf_ipmpx_data_new
    - gf_odf_desc_new
    - gf_list_add
    - stricmp
    - PROP_BOOL
    - gf_odf_vvc_cfg_read
    - gf_isom_get_media_type
    - gf_odf_codec_del
    - gf_isom_get_sample
    - gf_isom_add_desc_to_root_od
    - GF_LOG
    - gf_odf_codec_decode
    - gf_isom_update_sample
    - gf_crypt_close
    - gf_crypt_open
    - gf_error_to_string
    - gf_odf_avc_cfg_read
    - gf_filter_pid_set_property
    - strlen
    - gf_malloc
    - gf_odf_hevc_cfg_del
    - gf_isom_add_desc_to_description
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_odf_codec_encode
    - gf_crypt_init
    - gf_base64_encode
    - gf_odf_codec_new
    - PROP_STRING_NO_COPY
    - gf_rand_init
    - gf_odf_codec_add_com
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err isma_enc_configure(GF_CENCEncCtx *ctx, GF_CENCStream *cstr,
      Bool is_isma, const char *scheme_uri, const char *kms_uri)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:395,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:396,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:398,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:403,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:406,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:406,1
    - Dst: strlen
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:406,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - ctx
    - cstr
    argTypes:
    - GF_CENCEncCtx*
    - GF_CENCStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 393
    functionDepth: 2
    functionLinenumber: 393
    functionLinenumberEnd: 411
    functionName: adobe_enc_configure
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - memcpy
    - gf_crypt_close
    - gf_crypt_open
    - PROP_DATA
    - gf_filter_pid_set_property
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err adobe_enc_configure(GF_CENCEncCtx *ctx, GF_CENCStream *cstr)
  - BBCount: 48
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:422,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:423,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:425,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:428,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:430,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:431,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:434,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:435,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:438,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:439,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:440,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:442,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:447,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:458,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:459,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:460,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:462,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:466,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:474,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:475,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:476,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:478,1
    - Dst: atoi
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:479,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:480,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:482,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:484,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:486,1
    - Dst: gf_bin128_parse
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:487,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:489,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:493,1
    - Dst: gf_bin128_parse
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:494,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:496,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:500,1
    - Dst: atoi
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:501,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:506,1
    - Dst: gf_xml_parse_bit_sequence
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:510,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:512,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:516,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:517,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:518,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:520,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:521,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:523,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:527,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:529,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:530,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:531,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:531,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:532,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:533,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:537,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:539,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:540,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:545,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:554,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:556,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:557,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:558,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:562,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:566,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:569,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:570,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:571,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:574,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:577,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:579,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:580,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:581,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:582,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:583,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:587,1
    - Dst: gf_crypt_encrypt
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:588,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:589,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:593,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:594,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:596,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:598,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:601,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:602,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:605,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:606,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:607,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:608,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:612,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:617,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:618,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:619,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:620,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:621,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:622,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:622,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:624,1
    CyclomaticComplexity: 69
    EdgeCount: 69
    ICount: 192
    argCount: 3
    argNames:
    - ctx
    - cstr
    - cfile_name
    argTypes:
    - GF_CENCEncCtx*
    - GF_CENCStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 627
      start: 413
    functionDepth: 11
    functionLinenumber: 413
    functionLinenumberEnd: 627
    functionName: cenc_parse_pssh
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_read_data
    - gf_xml_dom_get_root
    - gf_bs_new
    - gf_list_count
    - gf_xml_dom_node_del
    - PROP_DATA_NO_COPY
    - atoi
    - gf_bs_available
    - gf_bs_write_u32
    - gf_bin128_parse
    - gf_list_new
    - gf_list_pop_back
    - gf_xml_parse_bit_sequence
    - gf_bs_read_u32
    - gf_bs_get_content
    - gf_xml_dom_new
    - gf_list_add
    - gf_xml_dom_parse
    - GF_LOG
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_crypt_close
    - gf_crypt_encrypt
    - gf_crypt_open
    - gf_bs_read_u8
    - gf_list_enum
    - gf_filter_pid_set_property
    - gf_malloc
    - gf_list_del
    - gf_bs_seek
    - gf_crypt_init
    - gf_bs_del
    - strcmp
    - gf_bs_read_int
    - gf_xml_dom_del
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_parse_pssh(GF_CENCEncCtx *ctx, GF_CENCStream *cstr, const
      char *cfile_name)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:633,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:634,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:638,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:642,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:646,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:650,1
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:654,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:658,1
    - Dst: gf_odf_ac4_cfg_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:662,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:663,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 37
    argCount: 1
    argNames:
    - cstr
    argTypes:
    - GF_CENCStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 629
    functionDepth: 3
    functionLinenumber: 629
    functionLinenumberEnd: 667
    functionName: cenc_pid_reset_codec_states
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_ac4_cfg_del
    - gf_odf_av1_cfg_del
    - gf_odf_vp_cfg_del
    linkageType: ''
    returnType: void
    signature: void cenc_pid_reset_codec_states(GF_CENCStream *cstr)
  - BBCount: 114
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:679,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:680,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:684,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:738,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:738,1
    - Dst: cenc_pid_reset_codec_states
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:743,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:748,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:752,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:756,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:760,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:762,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:766,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:768,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:772,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:774,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:792,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:795,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:809,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:816,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:817,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:818,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:820,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:821,1
    - Dst: gf_avc_read_pps
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:822,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:824,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:827,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:829,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:830,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:831,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:833,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:834,1
    - Dst: gf_avc_read_pps
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:835,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:837,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:840,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:849,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:857,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:859,1
    - Dst: gf_hevc_parse_ps
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:864,1
    - Dst: gf_hevc_parse_ps
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:865,1
    - Dst: gf_hevc_parse_ps
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:866,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:868,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:869,1
    - Dst: gf_hevc_parse_ps
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:871,1
    - Dst: gf_hevc_parse_ps
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:872,1
    - Dst: gf_hevc_parse_ps
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:873,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:880,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:885,1
    - Dst: gf_odf_av1_cfg_read
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:893,1
    - Dst: gf_odf_vp_cfg_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:903,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:913,1
    - Dst: gf_vvc_parse_ps
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:917,1
    - Dst: gf_vvc_parse_ps
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:918,1
    - Dst: gf_vvc_parse_ps
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:919,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:921,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:922,1
    - Dst: gf_vvc_parse_ps
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:924,1
    - Dst: gf_vvc_parse_ps
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:925,1
    - Dst: gf_vvc_parse_ps
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:926,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:933,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:938,1
    - Dst: gf_odf_ac4_cfg_parse
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:944,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:955,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:963,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:963,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:973,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:976,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:982,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1001,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1019,1
    - Dst: memset
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1021,1
    - Dst: gf_rand_init
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1028,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1036,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1051,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1060,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1067,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1069,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1072,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1075,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1080,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1088,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1090,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1092,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1102,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1102,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1103,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1103,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1107,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1109,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1110,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1114,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1115,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1117,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1118,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1123,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1124,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1125,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1126,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1128,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1129,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1132,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1133,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1134,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1134,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1138,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1138,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1142,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1142,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1144,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1149,1
    - Dst: PROP_4CC
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1149,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1152,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1152,1
    - Dst: cenc_parse_pssh
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1156,1
    CyclomaticComplexity: 138
    EdgeCount: 138
    ICount: 393
    argCount: 3
    argNames:
    - ctx
    - cstr
    - cfile_name
    argTypes:
    - GF_CENCEncCtx*
    - GF_CENCStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1157
      start: 669
    functionDepth: 12
    functionLinenumber: 669
    functionLinenumberEnd: 1157
    functionName: cenc_enc_configure
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_odf_vvc_cfg_del
    - gf_odf_av1_cfg_read
    - gf_odf_vp_cfg_new
    - gf_odf_avc_cfg_del
    - GF_SAFEALLOC
    - gf_bs_new
    - PROP_STRING
    - gf_bs_write_u16
    - gf_list_count
    - memset
    - gf_hevc_parse_ps
    - PROP_DATA_NO_COPY
    - gf_avc_read_pps
    - gf_odf_hevc_cfg_read
    - gf_4cc_to_str
    - gf_list_get
    - memcpy
    - gf_bs_get_content
    - cenc_parse_pssh
    - PROP_4CC
    - PROP_BOOL
    - gf_odf_vvc_cfg_read
    - gf_crc_32
    - gf_props_parse_value
    - GF_LOG
    - cenc_pid_reset_codec_states
    - gf_vvc_parse_ps
    - gf_bs_write_data
    - gf_bs_write_u8
    - gf_crypt_close
    - gf_crypt_open
    - gf_avc_read_sps
    - gf_odf_avc_cfg_read
    - gf_filter_pid_set_property
    - gf_malloc
    - PROP_FRAC_INT
    - gf_odf_hevc_cfg_del
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_crypt_init
    - gf_bs_del
    - gf_odf_ac4_cfg_parse
    - gf_codecid_name
    - gf_rand_init
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_enc_configure(GF_CENCEncCtx *ctx, GF_CENCStream *cstr,
      const char *cfile_name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1164,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1166,1
    - Dst: gf_crypt_info_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1167,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1169,1
    - Dst: cenc_pid_reset_codec_states
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1170,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1172,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1173,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1174,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1176,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1178,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 1
    argNames:
    - cstr
    argTypes:
    - GF_CENCStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1179
      start: 1160
    functionDepth: 4
    functionLinenumber: 1160
    functionLinenumberEnd: 1179
    functionName: cenc_free_pid_context
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - cenc_pid_reset_codec_states
    - gf_list_count
    - gf_xml_dom_node_del
    - gf_crypt_close
    - gf_crypt_info_del
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void cenc_free_pid_context(GF_CENCStream *cstr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_rand
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1186,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1188,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1191,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - data
    argTypes:
    - bin128
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1195
      start: 1181
    functionDepth: 0
    functionLinenumber: 1181
    functionLinenumberEnd: 1195
    functionName: cenc_gen_bin128
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_rand
    linkageType: ''
    returnType: void
    signature: void cenc_gen_bin128(bin128 data)
  - BBCount: 68
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1207,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1214,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1216,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1218,1
    - Dst: cenc_free_pid_context
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1220,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1225,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1228,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1230,1
    - Dst: gf_crypt_info_load
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1233,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1235,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1235,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1246,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1247,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1249,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1257,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1263,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1265,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1265,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1283,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1283,1
    - Dst: gf_crypt_info_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1284,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1289,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1291,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1294,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1296,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1297,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1299,1
    - Dst: gf_crypt_info_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1302,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1315,1
    - Dst: memset
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1316,1
    - Dst: gf_rand_init
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1327,1
    - Dst: cenc_gen_bin128
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1328,1
    - Dst: cenc_gen_bin128
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1329,1
    - Dst: cenc_gen_bin128
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1330,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1334,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1336,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1340,1
    - Dst: PROP_4CC
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1340,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1343,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1351,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1351,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1354,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1354,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1359,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1359,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1364,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1364,1
    - Dst: strlen
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1370,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1385,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1385,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1392,1
    - Dst: memset
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1394,1
    - Dst: isma_enc_configure
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1403,1
    - Dst: isma_enc_configure
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1405,1
    - Dst: adobe_enc_configure
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1407,1
    - Dst: cenc_enc_configure
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1414,1
    - Dst: cenc_enc_configure
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1417,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 198
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1423
      start: 1197
    functionDepth: 13
    functionLinenumber: 1197
    functionLinenumberEnd: 1423
    functionName: cenc_enc_configure_pid
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_filter_pid_check_caps
    - gf_list_count
    - memset
    - gf_filter_pid_set_udta
    - gf_filter_pid_new
    - gf_stream_type_name
    - gf_filter_pid_get_name
    - gf_realloc
    - gf_4cc_to_str
    - gf_list_get
    - PROP_4CC
    - gf_list_add
    - stricmp
    - gf_filter_get_udta
    - gf_filter_pid_copy_properties
    - GF_LOG
    - cenc_enc_configure
    - gf_list_del_item
    - adobe_enc_configure
    - cenc_free_pid_context
    - gf_filter_pid_set_property
    - strlen
    - gf_malloc
    - gf_filter_pid_get_udta
    - cenc_gen_bin128
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - isma_enc_configure
    - gf_crypt_info_load
    - gf_filter_pid_set_framing_mode
    - gf_crypt_info_del
    - gf_rand_init
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_enc_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1433,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1434,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1448,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1455,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1484,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1486,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1489,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1492,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1493,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1501,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1521,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1522,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1523,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1524,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1525,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1526,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1531,1
    - Dst: gf_crypt_encrypt
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1535,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1544,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1545,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1548,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1549,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1552,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1559,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 102
    argCount: 3
    argNames:
    - ctx
    - cstr
    - pck
    argTypes:
    - GF_CENCEncCtx*
    - GF_CENCStream*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1561
      start: 1426
    functionDepth: 6
    functionLinenumber: 1426
    functionLinenumberEnd: 1561
    functionName: isma_process
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_write_long_int
    - gf_crypt_set_IV
    - memcpy
    - gf_filter_pck_get_cts
    - gf_bs_write_u64
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_write_data
    - gf_crypt_encrypt
    - gf_filter_pck_get_sap
    - gf_rand
    - gf_bs_reassign_buffer
    - gf_filter_pck_merge_properties
    - gf_bs_del
    - GF_4CC
    - gf_bs_write_u8
    - gf_crypt_decrypt
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err isma_process(GF_CENCEncCtx *ctx, GF_CENCStream *cstr, GF_FilterPacket
      *pck)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1573,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1589,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1591,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1600,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1602,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1603,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1608,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1609,1
    - Dst: gf_crypt_get_IV
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1613,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1617,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1617,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1618,1
    - Dst: memset
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1622,1
    - Dst: gf_crypt_encrypt
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1625,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1631,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1637,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 57
    argCount: 3
    argNames:
    - ctx
    - cstr
    - pck
    argTypes:
    - GF_CENCEncCtx*
    - GF_CENCStream*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1639
      start: 1563
    functionDepth: 2
    functionLinenumber: 1563
    functionLinenumberEnd: 1639
    functionName: adobe_process
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - memcpy
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_merge_properties
    - gf_crypt_init
    - gf_crypt_get_IV
    - memset
    - gf_crypt_encrypt
    - gf_error_to_string
    - gf_filter_pck_get_sap
    - gf_filter_pck_discard
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err adobe_process(GF_CENCEncCtx *ctx, GF_CENCStream *cstr, GF_FilterPacket
      *pck)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - x
    - x_size
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1657
      start: 1643
    functionDepth: 0
    functionLinenumber: 1643
    functionLinenumberEnd: 1657
    functionName: increase_counter
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void increase_counter(char *x, int x_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_crypt_get_IV
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1664,1
    - Dst: increase_counter
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1683,1
    - Dst: memset
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1686,1
    - Dst: increase_counter
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1689,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1693,1
    - Dst: memset
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1695,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1696,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - mc
    - IV
    - IV_size
    argTypes:
    - GF_Crypt*
    - char[]
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1697
      start: 1659
    functionDepth: 1
    functionLinenumber: 1659
    functionLinenumberEnd: 1697
    functionName: cenc_resync_IV
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_crypt_set_IV
    - memcpy
    - gf_crypt_get_IV
    - memset
    - increase_counter
    linkageType: ''
    returnType: void
    signature: void cenc_resync_IV(GF_Crypt *mc, char IV[16], u8 IV_size)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 1
    argNames:
    - nal_type
    argTypes:
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1718
      start: 1701
    functionDepth: 0
    functionLinenumber: 1701
    functionLinenumberEnd: 1718
    functionName: avc_is_vcl_or_sei
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int avc_is_vcl_or_sei(u8 nal_type)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1724,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1729,1
    - Dst: gf_avc_parse_nalu
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1730,1
    - Dst: avc_is_vcl_or_sei
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1732,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1733,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1734,1
    - Dst: gf_hevc_parse_nalu_bs
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1749,1
    - Dst: gf_vvc_parse_nalu_bs
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1759,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1769,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1774,1
    - Dst: avc_is_vcl_or_sei
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1776,1
    - Dst: avc_is_vcl_or_sei
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1781,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1793,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1794,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 68
    argCount: 5
    argNames:
    - cstr
    - plaintext_bs
    - samp_data
    - nal_size
    - bytes_in_nalhr
    argTypes:
    - GF_CENCStream*
    - GF_BitStream*
    - char*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1796
      start: 1721
    functionDepth: 8
    functionLinenumber: 1721
    functionLinenumberEnd: 1796
    functionName: cenc_get_clear_bytes
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_bs_peek_bits
    - gf_vvc_parse_nalu_bs
    - gf_assert
    - avc_is_vcl_or_sei
    - gf_hevc_parse_nalu_bs
    - gf_bs_seek
    - gf_bs_enable_emulation_byte_removal
    - gf_bs_align
    - gf_bs_get_position
    - gf_avc_parse_nalu
    linkageType: ''
    returnType: u32
    signature: u32 cenc_get_clear_bytes(GF_CENCStream *cstr, GF_BitStream *plaintext_bs,
      char *samp_data, u32 nal_size, u32 bytes_in_nalhr)
  - BBCount: 127
    BranchProfiles: []
    Callsites:
    - Dst: gf_crypt_get_IV
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1833,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1839,1
    - Dst: gf_filter_pck_new_clone
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1843,1
    - Dst: gf_filter_pck_new_copy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1845,1
    - Dst: gf_filter_pck_set_crypt_flags
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1849,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1851,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1852,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1854,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1857,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1861,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1862,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1867,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1869,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1871,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1897,1
    - Dst: cenc_get_clear_bytes
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1901,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1905,1
    - Dst: gf_av1_parse_obu
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1906,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1908,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1911,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1945,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1948,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1949,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1950,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1967,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1971,1
    - Dst: gf_vp9_parse_superframe
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1972,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1974,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1981,1
    - Dst: gf_vp9_parse_sample
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1982,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1984,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1984,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1988,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1991,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1993,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1994,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1995,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1995,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:1997,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2000,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2014,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2017,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2018,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2019,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2031,1
    - Dst: gf_ac4_parser_bs
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2032,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2034,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2051,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2052,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2052,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2076,1
    - Dst: strstr
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2077,1
    - Dst: strlen
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2079,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2087,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2148,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2153,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2156,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2160,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2167,1
    - Dst: gf_crypt_encrypt
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2175,1
    - Dst: gf_crypt_encrypt
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2195,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2209,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2212,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2213,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2214,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2243,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2246,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2247,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2248,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2261,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2276,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2280,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2288,1
    - Dst: gf_crypt_encrypt
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2292,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2306,1
    - Dst: gf_crypt_encrypt
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2313,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2316,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2320,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2326,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2329,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2330,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2331,1
    - Dst: cenc_resync_IV
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2336,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2343,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2344,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2345,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2346,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2349,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2351,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2351,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2353,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2356,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2363,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2365,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2366,1
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2368,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2370,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2376,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2377,1
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2378,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2379,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2380,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2384,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2385,1
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2387,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2388,1
    - Dst: gf_media_nalu_add_emulation_bytes
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2392,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2396,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2398,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2400,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2413,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2415,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2418,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2423,1
    - Dst: strcat
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2424,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2427,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2437,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2438,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2441,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2444,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2445,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2446,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2447,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2449,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2453,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2456,1
    - Dst: atoi
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2457,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2463,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2468,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2470,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2471,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2472,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2473,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2475,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2481,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2494,1
    - Dst: gf_bin128_parse
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2498,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2499,1
    - Dst: gf_bin128_parse
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2502,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2503,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2505,1
    - Dst: gf_crypt_encrypt
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2507,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2508,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2513,1
    - Dst: strcat
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2514,1
    - Dst: gf_xml_parse_bit_sequence
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2521,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2523,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2523,1
    - Dst: gf_bin128_parse
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2526,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2527,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2528,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2530,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2531,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2533,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2534,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2537,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2541,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2542,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2543,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2544,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2547,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2548,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2549,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2549,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2553,1
    CyclomaticComplexity: 168
    EdgeCount: 168
    ICount: 544
    argCount: 3
    argNames:
    - ctx
    - cstr
    - pck
    argTypes:
    - GF_CENCEncCtx*
    - GF_CENCStream*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2555
      start: 1799
    functionDepth: 10
    functionLinenumber: 1799
    functionLinenumberEnd: 2555
    functionName: cenc_encrypt_packet
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_media_nalu_add_emulation_bytes
    - gf_bs_new
    - gf_media_nalu_emulation_bytes_add_count
    - gf_filter_pck_new_clone
    - cenc_get_clear_bytes
    - gf_filter_pck_set_crypt_flags
    - gf_bs_write_u16
    - PROP_DATA_NO_COPY
    - atoi
    - gf_bs_available
    - gf_bs_write_u32
    - gf_ac4_parser_bs
    - gf_bin128_parse
    - strcat
    - gf_assert
    - gf_filter_pck_set_property
    - gf_xml_parse_bit_sequence
    - gf_crypt_set_IV
    - gf_bs_get_content
    - memcpy
    - sprintf
    - gf_vp9_parse_superframe
    - stricmp
    - gf_filter_pck_discard
    - gf_bs_skip_bytes
    - cenc_resync_IV
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_bs_write_int
    - gf_vp9_parse_sample
    - gf_filter_pck_expand
    - strstr
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_crypt_close
    - gf_crypt_encrypt
    - gf_crypt_open
    - gf_error_to_string
    - gf_rand
    - gf_list_enum
    - gf_bs_reassign_buffer
    - strlen
    - gf_malloc
    - gf_av1_parse_obu
    - gf_filter_pid_get_property
    - gf_bs_seek
    - gf_filter_pck_new_copy
    - gf_crypt_get_IV
    - gf_crypt_init
    - gf_bs_del
    - strcmp
    - gf_bs_read_int
    - gf_filter_pck_get_dts
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_encrypt_packet(GF_CENCEncCtx *ctx, GF_CENCStream *cstr,
      GF_FilterPacket *pck)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2565,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2567,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2569,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2573,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2607,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2610,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2623,1
    - Dst: memset
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2626,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2627,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2628,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2630,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2634,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2636,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2639,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2641,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2642,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2645,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2645,1
    - Dst: gf_filter_pck_set_crypt_flags
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2647,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2648,1
    - Dst: memset
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2660,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2663,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2668,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2676,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2678,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2678,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2694,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2696,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2704,1
    - Dst: cenc_gen_bin128
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2719,1
    - Dst: cenc_gen_bin128
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2720,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2723,1
    - Dst: gf_crypt_set_key
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2726,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2728,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2728,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2742,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2745,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2749,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2749,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2752,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2752,1
    - Dst: cenc_encrypt_packet
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2756,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2758,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2758,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2758,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 165
    argCount: 3
    argNames:
    - ctx
    - cstr
    - pck
    argTypes:
    - GF_CENCEncCtx*
    - GF_CENCStream*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2764
      start: 2557
    functionDepth: 11
    functionLinenumber: 2557
    functionLinenumberEnd: 2764
    functionName: cenc_process
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_ref
    - gf_bs_new
    - PROP_STRING
    - gf_bs_write_u16
    - gf_filter_pck_set_crypt_flags
    - memset
    - PROP_DATA_NO_COPY
    - cenc_encrypt_packet
    - PROP_DATA
    - gf_bs_write_u32
    - gf_filter_pid_get_name
    - gf_filter_pck_set_property
    - memcpy
    - gf_bs_get_content
    - gf_crypt_set_key
    - gf_filter_pck_get_property
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_bs_write_data
    - gf_error_to_string
    - gf_filter_pck_get_sap
    - gf_filter_pid_set_property
    - cenc_gen_bin128
    - gf_filter_pck_merge_properties
    - gf_crypt_init
    - gf_bs_del
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_process(GF_CENCEncCtx *ctx, GF_CENCStream *cstr, GF_FilterPacket
      *pck)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2768,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2769,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2774,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2775,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2777,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2778,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2785,1
    - Dst: isma_process
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2788,1
    - Dst: adobe_process
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2790,1
    - Dst: cenc_process
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2792,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2794,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2802
      start: 2766
    functionDepth: 12
    functionLinenumber: 2766
    functionLinenumberEnd: 2802
    functionName: cenc_enc_process
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_drop_packet
    - cenc_process
    - gf_filter_pck_forward
    - isma_process
    - adobe_process
    - gf_filter_pid_set_eos
    - gf_list_count
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_enc_process(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2806,1
    - Dst: gf_crypt_info_load
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2810,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2812,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2817,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2819
      start: 2804
    functionDepth: 3
    functionLinenumber: 2804
    functionLinenumberEnd: 2819
    functionName: cenc_enc_initialize
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_crypt_info_load
    - gf_list_new
    - GF_LOG
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_enc_initialize(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2824,1
    - Dst: gf_crypt_info_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2825,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2826,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2827,1
    - Dst: cenc_free_pid_context
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2829,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2831,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2832,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2833,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2835,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2837
      start: 2821
    functionDepth: 5
    functionLinenumber: 2821
    functionLinenumberEnd: 2837
    functionName: cenc_enc_finalize
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_back
    - cenc_free_pid_context
    - gf_bs_del
    - gf_list_count
    - gf_crypt_info_del
    - fprintf
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void cenc_enc_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2851
      start: 2850
    functionDepth: 0
    functionLinenumber: 2850
    functionLinenumberEnd: 2851
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2890,1
    - Dst: cenc_gen_bin128
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:2892,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2900
      start: 2885
    functionDepth: 1
    functionLinenumber: 2885
    functionLinenumberEnd: 2900
    functionName: cecrypt_register
    functionSourceFile: /src/gpac/src/filters/encrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - cenc_gen_bin128
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *cecrypt_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/unit_test_filter.c:71,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/unit_test_filter.c:73,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:74,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filters/unit_test_filter.c:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - filter
    - pid
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 75
    functionName: test_pck_del
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_udta
    - GF_LOG
    - gf_assert
    - gf_filter_get_name
    linkageType: ''
    returnType: void
    signature: void test_pck_del(GF_Filter *filter, GF_FilterPid *pid, GF_FilterPacket
      *pck)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/src/filters/unit_test_filter.c:84,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/unit_test_filter.c:89,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:89,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/unit_test_filter.c:90,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - pck
    - nb_pck
    argTypes:
    - GF_FilterPacket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 92
    functionName: dump_properties
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_property
    - gf_filter_pck_get_property_str
    - gf_filter_pck_enum_properties
    - GF_4CC
    linkageType: ''
    returnType: void
    signature: void dump_properties(GF_FilterPacket *pck, u32 nb_pck)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/unit_test_filter.c:98,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/unit_test_filter.c:100,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/unit_test_filter.c:102,1
    - Dst: gf_sha1_finish
      Src: /src/gpac/src/filters/unit_test_filter.c:104,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:107,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filters/unit_test_filter.c:107,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/unit_test_filter.c:109,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:109,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:111,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filters/unit_test_filter.c:111,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:113,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filters/unit_test_filter.c:113,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/unit_test_filter.c:114,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:115,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filters/unit_test_filter.c:115,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:117,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filters/unit_test_filter.c:117,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/unit_test_filter.c:121,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/unit_test_filter.c:123,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 94
    functionDepth: 4
    functionLinenumber: 94
    functionLinenumberEnd: 124
    functionName: ut_filter_finalize
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sha1_finish
    - gf_list_get
    - gf_filter_pid_get_property
    - memcmp
    - GF_LOG
    - gf_list_count
    - GF_4CC
    - gf_filter_get_name
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ut_filter_finalize(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/unit_test_filter.c:128,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/unit_test_filter.c:132,1
    - Dst: strchr
      Src: /src/gpac/src/filters/unit_test_filter.c:134,1
    - Dst: strchr
      Src: /src/gpac/src/filters/unit_test_filter.c:140,1
    - Dst: gf_filter_send_update
      Src: /src/gpac/src/filters/unit_test_filter.c:147,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/unit_test_filter.c:149,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - filter
    - nb_pck
    argTypes:
    - GF_Filter*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 151
    functionName: ut_filter_send_update
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_filter_send_update
    - strchr
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ut_filter_send_update(GF_Filter *filter, u32 nb_pck)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/unit_test_filter.c:159,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/unit_test_filter.c:161,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/unit_test_filter.c:163,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/unit_test_filter.c:164,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:169,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/unit_test_filter.c:180,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/unit_test_filter.c:181,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/unit_test_filter.c:182,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/unit_test_filter.c:183,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/unit_test_filter.c:183,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/unit_test_filter.c:185,1
    - Dst: gf_sha1_update
      Src: /src/gpac/src/filters/unit_test_filter.c:186,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/unit_test_filter.c:204,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/unit_test_filter.c:209,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/unit_test_filter.c:211,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/unit_test_filter.c:217,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/unit_test_filter.c:219,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/unit_test_filter.c:227,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/unit_test_filter.c:234,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/unit_test_filter.c:238,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/unit_test_filter.c:239,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/unit_test_filter.c:247,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 61
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 154
    functionDepth: 3
    functionLinenumber: 154
    functionLinenumberEnd: 253
    functionName: ut_filter_process_filter
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_assert
    - gf_filter_pck_new_shared
    - gf_filter_pck_new_alloc
    - gf_filter_pck_new_ref
    - gf_filter_pck_get_framing
    - gf_filter_pid_drop_packet
    - GF_LOG
    - gf_filter_pck_get_data
    - memcpy
    - gf_sha1_update
    - gf_filter_pck_merge_properties
    - gf_filter_pck_send
    - gf_filter_pck_set_framing
    - gf_list_count
    - gf_filter_pid_get_udta
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ut_filter_process_filter(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - filter
    - pid
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 258
    functionName: ut_source_pck_del
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ut_source_pck_del(GF_Filter *filter, GF_FilterPid *pid, GF_FilterPacket
      *pck)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/unit_test_filter.c:263,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - frame
    - plane_idx
    - outPlane
    - outStride
    argTypes:
    - struct _gf_filter_frame_interface*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 268
    functionName: ut_source_ifce_get_plane
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ut_source_ifce_get_plane(struct _gf_filter_frame_interface *frame,
      u32 plane_idx, const u8 **outPlane, u32 *outStride)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/unit_test_filter.c:275,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/unit_test_filter.c:278,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/unit_test_filter.c:280,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/unit_test_filter.c:285,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:294,1
    - Dst: gf_filter_pck_new_frame_interface
      Src: /src/gpac/src/filters/unit_test_filter.c:302,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/unit_test_filter.c:305,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/unit_test_filter.c:306,1
    - Dst: gf_sha1_update
      Src: /src/gpac/src/filters/unit_test_filter.c:307,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/unit_test_filter.c:309,1
    - Dst: gf_sha1_update
      Src: /src/gpac/src/filters/unit_test_filter.c:310,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:312,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/unit_test_filter.c:314,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:318,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:318,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:323,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:323,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/unit_test_filter.c:323,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:324,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:324,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/unit_test_filter.c:324,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:325,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:325,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/unit_test_filter.c:325,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:326,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:326,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/unit_test_filter.c:326,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:327,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:327,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/unit_test_filter.c:327,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:328,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:328,1
    - Dst: PROP_FLOAT
      Src: /src/gpac/src/filters/unit_test_filter.c:328,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:329,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:329,1
    - Dst: PROP_DOUBLE
      Src: /src/gpac/src/filters/unit_test_filter.c:329,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:330,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:330,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/unit_test_filter.c:330,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:331,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:331,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/unit_test_filter.c:331,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:332,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:332,1
    - Dst: PROP_POINTER
      Src: /src/gpac/src/filters/unit_test_filter.c:332,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:335,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:335,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/unit_test_filter.c:335,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:336,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:336,1
    - Dst: PROP_CONST_DATA
      Src: /src/gpac/src/filters/unit_test_filter.c:336,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:338,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:338,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/unit_test_filter.c:338,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:339,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:339,1
    - Dst: PROP_CONST_DATA
      Src: /src/gpac/src/filters/unit_test_filter.c:339,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:341,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:341,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/unit_test_filter.c:341,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:342,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:342,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/unit_test_filter.c:342,1
    - Dst: memset
      Src: /src/gpac/src/filters/unit_test_filter.c:343,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:345,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:345,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:347,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:347,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:349,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:349,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:351,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:351,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/unit_test_filter.c:354,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/unit_test_filter.c:355,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:356,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:356,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:360,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:360,1
    - Dst: gf_filter_pck_set_property_str
      Src: /src/gpac/src/filters/unit_test_filter.c:362,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/unit_test_filter.c:362,1
    - Dst: gf_filter_pck_set_property_dyn
      Src: /src/gpac/src/filters/unit_test_filter.c:363,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/unit_test_filter.c:363,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/unit_test_filter.c:366,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/unit_test_filter.c:367,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/unit_test_filter.c:368,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/unit_test_filter.c:370,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/src/filters/unit_test_filter.c:371,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/unit_test_filter.c:372,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/unit_test_filter.c:373,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/unit_test_filter.c:374,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:375,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/unit_test_filter.c:375,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/unit_test_filter.c:378,1
    - Dst: gf_filter_pck_set_roll_info
      Src: /src/gpac/src/filters/unit_test_filter.c:379,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/unit_test_filter.c:380,1
    - Dst: ut_filter_send_update
      Src: /src/gpac/src/filters/unit_test_filter.c:384,1
    - Dst: gf_sha1_finish
      Src: /src/gpac/src/filters/unit_test_filter.c:389,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:397,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:397,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/unit_test_filter.c:401,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/unit_test_filter.c:403,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/unit_test_filter.c:406,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 114
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 270
    functionDepth: 4
    functionLinenumber: 270
    functionLinenumberEnd: 411
    functionName: ut_filter_process_source
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached:
    - PROP_STRING
    - gf_list_count
    - memset
    - gf_filter_pck_set_dependency_flags
    - PROP_DATA
    - PROP_LONGUINT
    - PROP_LONGSINT
    - PROP_FLOAT
    - PROP_POINTER
    - gf_list_get
    - gf_filter_pck_set_property
    - gf_strdup
    - gf_filter_pck_set_property_dyn
    - gf_filter_pck_set_byte_offset
    - memcpy
    - PROP_BOOL
    - gf_filter_pck_new_frame_interface
    - gf_filter_pck_set_carousel_version
    - PROP_DOUBLE
    - gf_filter_get_udta
    - gf_sha1_finish
    - gf_filter_pck_new_alloc
    - gf_filter_pck_ref
    - PROP_SINT
    - GF_LOG
    - gf_filter_pck_set_interlaced
    - gf_filter_pck_set_duration
    - gf_sha1_update
    - PROP_FRAC64_INT
    - PROP_CONST_DATA
    - ut_filter_send_update
    - gf_filter_pck_set_sap
    - gf_filter_pid_set_property
    - gf_malloc
    - PROP_FRAC_INT
    - gf_filter_pck_new_shared
    - PROP_UINT
    - gf_filter_pck_set_property_str
    - gf_filter_pid_remove
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_unref
    - gf_filter_pck_set_roll_info
    - GF_4CC
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ut_filter_process_source(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/unit_test_filter.c:418,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/unit_test_filter.c:420,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/unit_test_filter.c:424,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/unit_test_filter.c:426,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/unit_test_filter.c:428,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/unit_test_filter.c:432,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/filters/unit_test_filter.c:436,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/unit_test_filter.c:437,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:438,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:438,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/unit_test_filter.c:439,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/unit_test_filter.c:440,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/filters/unit_test_filter.c:441,1
    - Dst: gf_sha1_update
      Src: /src/gpac/src/filters/unit_test_filter.c:444,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:447,1
    - Dst: dump_properties
      Src: /src/gpac/src/filters/unit_test_filter.c:449,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/unit_test_filter.c:451,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 414
    functionDepth: 3
    functionLinenumber: 414
    functionLinenumberEnd: 458
    functionName: ut_filter_process_sink
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pck_set_property
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_send
    - gf_filter_pck_merge_properties
    - gf_sha1_update
    - dump_properties
    - gf_filter_pck_set_framing
    - gf_list_count
    - gf_log_set_strict_error
    - GF_4CC
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ut_filter_process_sink(GF_Filter *filter)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/unit_test_filter.c:467,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:470,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/unit_test_filter.c:475,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/unit_test_filter.c:477,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/unit_test_filter.c:481,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:481,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/unit_test_filter.c:482,1
    - Dst: gf_filter_pid_reset_properties
      Src: /src/gpac/src/filters/unit_test_filter.c:488,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/unit_test_filter.c:489,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/unit_test_filter.c:496,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:498,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filters/unit_test_filter.c:498,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/unit_test_filter.c:500,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:502,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filters/unit_test_filter.c:502,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/unit_test_filter.c:505,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:505,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/unit_test_filter.c:506,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/unit_test_filter.c:511,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/unit_test_filter.c:514,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/unit_test_filter.c:515,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/filters/unit_test_filter.c:520,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:521,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:521,1
    - Dst: gf_filter_pid_reset_properties
      Src: /src/gpac/src/filters/unit_test_filter.c:522,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/unit_test_filter.c:523,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/unit_test_filter.c:524,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/unit_test_filter.c:525,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/filters/unit_test_filter.c:526,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/unit_test_filter.c:531,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/unit_test_filter.c:534,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/filters/unit_test_filter.c:537,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/unit_test_filter.c:538,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/unit_test_filter.c:539,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/unit_test_filter.c:540,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/unit_test_filter.c:541,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/filters/unit_test_filter.c:542,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:545,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:545,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/unit_test_filter.c:547,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/unit_test_filter.c:548,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/unit_test_filter.c:550,1
    - Dst: gf_sha1_starts
      Src: /src/gpac/src/filters/unit_test_filter.c:551,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/unit_test_filter.c:556,1
    - Dst: gf_sha1_starts
      Src: /src/gpac/src/filters/unit_test_filter.c:557,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/unit_test_filter.c:558,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/unit_test_filter.c:559,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 70
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 461
    functionDepth: 2
    functionLinenumber: 461
    functionLinenumberEnd: 563
    functionName: ut_filter_config_input
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_ref
    - GF_SAFEALLOC
    - gf_list_count
    - gf_sha1_starts
    - gf_filter_pid_set_udta
    - gf_filter_pid_new
    - gf_filter_get_name
    - gf_filter_pid_get_packet
    - gf_list_get
    - gf_assert
    - gf_filter_pid_reset_properties
    - GF_FEVT_INIT
    - gf_log_set_strict_error
    - gf_list_add
    - gf_filter_get_udta
    - gf_filter_pid_get_property_str
    - gf_filter_pid_copy_properties
    - gf_filter_pck_new_alloc
    - gf_filter_pid_drop_packet
    - GF_LOG
    - gf_filter_pid_send_event
    - gf_filter_pid_set_property
    - gf_filter_pck_new_shared
    - gf_filter_pid_get_property
    - gf_filter_pid_set_framing_mode
    - strcmp
    - GF_4CC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ut_filter_config_input(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/unit_test_filter.c:571,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/unit_test_filter.c:575,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/unit_test_filter.c:577,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/unit_test_filter.c:578,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/unit_test_filter.c:579,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:584,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:584,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/unit_test_filter.c:587,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/unit_test_filter.c:588,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/filters/unit_test_filter.c:591,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/unit_test_filter.c:592,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/filters/unit_test_filter.c:593,1
    - Dst: gf_sha1_starts
      Src: /src/gpac/src/filters/unit_test_filter.c:596,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:599,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/unit_test_filter.c:599,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:600,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/unit_test_filter.c:600,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:601,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/unit_test_filter.c:601,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:602,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/unit_test_filter.c:602,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:603,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/unit_test_filter.c:603,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:604,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/unit_test_filter.c:604,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/unit_test_filter.c:605,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:606,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/unit_test_filter.c:606,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 30
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 611
      start: 566
    functionDepth: 2
    functionLinenumber: 566
    functionLinenumberEnd: 611
    functionName: ut_filter_config_source
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached:
    - PROP_UINT
    - GF_SAFEALLOC
    - GF_4CC
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_set_property_str
    - gf_sha1_starts
    - gf_log_set_strict_error
    - gf_list_add
    - gf_filter_pid_set_property_dyn
    - gf_filter_pid_set_udta
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - PROP_FRAC_INT
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ut_filter_config_source(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - filter
    - arg_name
    - arg_val
    argTypes:
    - GF_Filter*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 614
    functionDepth: 0
    functionLinenumber: 614
    functionLinenumberEnd: 617
    functionName: ut_filter_update_arg
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ut_filter_update_arg(GF_Filter *filter, const char *arg_name,
      const GF_PropertyValue *arg_val)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/unit_test_filter.c:622,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/unit_test_filter.c:624,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:632,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:634,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:636,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:638,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:640,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:642,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:644,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:646,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:648,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:650,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:652,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:654,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:656,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:658,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:660,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:662,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:664,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:666,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:668,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:669,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:670,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/unit_test_filter.c:674,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:675,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:677,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:679,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:681,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/unit_test_filter.c:683,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:684,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:686,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:688,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:690,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:692,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:694,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:696,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:698,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:700,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:702,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:704,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:706,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:708,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:710,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:712,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:714,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:716,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/unit_test_filter.c:717,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:718,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/unit_test_filter.c:720,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:722,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:724,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:726,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:728,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:730,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:732,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:734,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:736,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:738,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:740,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:742,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:744,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:746,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:748,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/unit_test_filter.c:751,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:752,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/unit_test_filter.c:753,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:754,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:756,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:758,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:760,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:762,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/unit_test_filter.c:764,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/unit_test_filter.c:766,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:767,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:769,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/filters/unit_test_filter.c:772,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:774,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:775,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:776,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:777,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:778,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:779,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:780,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:781,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:782,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:783,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:784,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:785,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:786,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:787,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:788,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:789,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:790,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:791,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:792,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:793,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:794,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:795,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:796,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:797,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:798,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:799,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:800,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:801,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:802,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:803,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:804,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:805,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:806,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:807,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:808,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:809,1
    - Dst: memset
      Src: /src/gpac/src/filters/unit_test_filter.c:811,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filters/unit_test_filter.c:815,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/unit_test_filter.c:817,1
    - Dst: gf_props_dump_val
      Src: /src/gpac/src/filters/unit_test_filter.c:818,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/unit_test_filter.c:825,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/unit_test_filter.c:828,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/unit_test_filter.c:830,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/unit_test_filter.c:837,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/filters/unit_test_filter.c:840,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/unit_test_filter.c:843,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filters/unit_test_filter.c:843,1
    - Dst: gf_filter_set_max_extra_input_pids
      Src: /src/gpac/src/filters/unit_test_filter.c:845,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/unit_test_filter.c:847,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filters/unit_test_filter.c:847,1
    - Dst: ut_filter_config_source
      Src: /src/gpac/src/filters/unit_test_filter.c:850,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 215
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 853
      start: 619
    functionDepth: 3
    functionLinenumber: 619
    functionLinenumberEnd: 853
    functionName: utfilter_initialize
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_props_equal
    - gf_list_new
    - memcmp
    - ut_filter_config_source
    - GF_LOG
    - gf_props_get_type_name
    - gf_props_dump_val
    - sprintf
    - memset
    - gf_log_set_strict_error
    - strcmp
    - GF_4CC
    - gf_filter_set_max_extra_input_pids
    - gf_filter_get_name
    - gf_props_parse_value
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err utfilter_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 856
      start: 855
    functionDepth: 0
    functionLinenumber: 855
    functionLinenumberEnd: 856
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 979
      start: 976
    functionDepth: 0
    functionLinenumber: 976
    functionLinenumberEnd: 979
    functionName: ut_filter_register
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ut_filter_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 980
    functionDepth: 0
    functionLinenumber: 980
    functionLinenumberEnd: 983
    functionName: ut_source_register
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ut_source_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 987
      start: 984
    functionDepth: 0
    functionLinenumber: 984
    functionLinenumberEnd: 987
    functionName: ut_sink_register
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ut_sink_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 991
      start: 988
    functionDepth: 0
    functionLinenumber: 988
    functionLinenumberEnd: 991
    functionName: ut_sink2_register
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ut_sink2_register(GF_FilterSession *session)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_saf.c:73,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 69
    functionDepth: 2
    functionLinenumber: 69
    functionLinenumberEnd: 77
    functionName: GF_SAFStream *saf_get_channel(GF_SAFDmxCtx *saf, u32 stream_id)
    functionSourceFile: /src/gpac/src/filters/dmx_saf.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE GF_SAFStream *saf_get_channel(GF_SAFDmxCtx *saf, u32 stream_id)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_saf.c:87,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_saf.c:91,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_saf.c:97,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dmx_saf.c:103,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_saf.c:104,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_saf.c:108,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_saf.c:109,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_saf.c:110,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_saf.c:111,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_saf.c:112,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_saf.c:116,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_saf.c:118,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_saf.c:119,1
    - Dst: saf_get_channel
      Src: /src/gpac/src/filters/dmx_saf.c:122,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dmx_saf.c:128,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_saf.c:131,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_saf.c:132,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_saf.c:134,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_saf.c:135,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_saf.c:139,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_saf.c:140,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_saf.c:140,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_saf.c:141,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_saf.c:141,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_saf.c:142,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_saf.c:142,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_saf.c:144,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_saf.c:144,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_saf.c:146,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_saf.c:147,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_saf.c:147,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_saf.c:148,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_saf.c:149,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_saf.c:149,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/filters/dmx_saf.c:150,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_saf.c:151,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_saf.c:151,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_saf.c:153,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/dmx_saf.c:153,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_saf.c:154,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_saf.c:154,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dmx_saf.c:157,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dmx_saf.c:160,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dmx_saf.c:161,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dmx_saf.c:165,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_saf.c:166,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dmx_saf.c:167,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_saf.c:170,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/dmx_saf.c:170,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_saf.c:173,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dmx_saf.c:174,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_saf.c:175,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/dmx_saf.c:175,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_saf.c:177,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_saf.c:184,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_saf.c:185,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_saf.c:187,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_saf.c:191,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_saf.c:193,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/dmx_saf.c:196,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_saf.c:198,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dmx_saf.c:201,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_saf.c:204,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_saf.c:208,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_saf.c:209,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_saf.c:215,1
    - Dst: memmove
      Src: /src/gpac/src/filters/dmx_saf.c:218,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 115
    argCount: 4
    argNames:
    - filter
    - ctx
    - data
    - data_size
    argTypes:
    - GF_Filter*
    - GF_SAFDmxCtx*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 79
    functionDepth: 7
    functionLinenumber: 79
    functionLinenumberEnd: 221
    functionName: safdmx_demux
    functionSourceFile: /src/gpac/src/filters/dmx_saf.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_new
    - GF_SAFEALLOC
    - PROP_DATA_NO_COPY
    - PROP_FRAC64
    - gf_bs_available
    - gf_filter_pid_new
    - gf_bs_read_u16
    - gf_bs_read_u24
    - gf_realloc
    - gf_assert
    - gf_list_get
    - memcpy
    - gf_list_add
    - PROP_BOOL
    - gf_bs_skip_bytes
    - gf_filter_pck_new_alloc
    - memmove
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_bs_get_position
    - gf_filter_pck_set_sap
    - gf_bs_read_u8
    - gf_list_enum
    - gf_filter_pid_set_property
    - gf_malloc
    - PROP_NAME
    - PROP_UINT
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_seek_flag
    - gf_bs_del
    - gf_bs_read_int
    - saf_get_channel
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void safdmx_demux(GF_Filter *filter, GF_SAFDmxCtx *ctx, char *data,
      u32 data_size)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_saf.c:241,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_saf.c:244,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_saf.c:245,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/dmx_saf.c:253,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/filters/dmx_saf.c:258,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/filters/dmx_saf.c:259,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dmx_saf.c:265,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dmx_saf.c:266,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_saf.c:267,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_saf.c:268,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_saf.c:269,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_saf.c:270,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_saf.c:271,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dmx_saf.c:279,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/filters/dmx_saf.c:280,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_saf.c:282,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dmx_saf.c:295,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_saf.c:297,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_saf.c:298,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_saf.c:299,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_saf.c:305,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_saf.c:306,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/dmx_saf.c:306,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 68
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_SAFDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 230
    functionDepth: 7
    functionLinenumber: 230
    functionLinenumberEnd: 309
    functionName: safdmx_check_dur
    functionSourceFile: /src/gpac/src/filters/dmx_saf.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_filter_pid_get_property
    - gf_bs_get_size
    - gf_bs_del
    - gf_bs_skip_bytes
    - PROP_FRAC64
    - strncmp
    - gf_fopen
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_bs_available
    - gf_bs_from_file
    - gf_list_enum
    - gf_filter_pid_set_property
    - gf_bs_read_u24
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void safdmx_check_dur(GF_SAFDmxCtx *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_saf.c:315,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_saf.c:321,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dmx_saf.c:323,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dmx_saf.c:327,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 312
    functionDepth: 2
    functionLinenumber: 312
    functionLinenumberEnd: 332
    functionName: safdmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/dmx_saf.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_check_caps
    - gf_list_enum
    - gf_filter_pid_remove
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err safdmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_saf.c:337,1
    - Dst: safdmx_check_dur
      Src: /src/gpac/src/filters/dmx_saf.c:347,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_saf.c:367,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_saf.c:370,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 39
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 334
    functionDepth: 8
    functionLinenumber: 334
    functionLinenumberEnd: 388
    functionName: safdmx_process_event
    functionSourceFile: /src/gpac/src/filters/dmx_saf.c
    functionUses: 0
    functionsReached:
    - safdmx_check_dur
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool safdmx_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_saf.c:392,1
    - Dst: safdmx_check_dur
      Src: /src/gpac/src/filters/dmx_saf.c:400,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_saf.c:404,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_saf.c:405,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_saf.c:411,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dmx_saf.c:416,1
    - Dst: safdmx_demux
      Src: /src/gpac/src/filters/dmx_saf.c:417,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_saf.c:418,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 390
    functionDepth: 8
    functionLinenumber: 390
    functionLinenumberEnd: 420
    functionName: safdmx_process
    functionSourceFile: /src/gpac/src/filters/dmx_saf.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - gf_filter_pid_would_block
    - safdmx_check_dur
    - safdmx_demux
    - gf_list_enum
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err safdmx_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_saf.c:424,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_saf.c:425,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 427
      start: 422
    functionDepth: 1
    functionLinenumber: 422
    functionLinenumberEnd: 427
    functionName: safdmx_initialize
    functionSourceFile: /src/gpac/src/filters/dmx_saf.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err safdmx_initialize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_saf.c:431,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_saf.c:433,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dmx_saf.c:434,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/filters/dmx_saf.c:435,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_saf.c:436,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_saf.c:438,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_saf.c:439,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 429
    functionDepth: 2
    functionLinenumber: 429
    functionLinenumberEnd: 440
    functionName: safdmx_finalize
    functionSourceFile: /src/gpac/src/filters/dmx_saf.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_count
    - gf_list_last
    - gf_list_rem_last
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void safdmx_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 442
    functionDepth: 0
    functionLinenumber: 442
    functionLinenumberEnd: 446
    functionName: safdmx_probe_data
    functionSourceFile: /src/gpac/src/filters/dmx_saf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *safdmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 474
    functionDepth: 0
    functionLinenumber: 474
    functionLinenumberEnd: 477
    functionName: safdmx_register
    functionSourceFile: /src/gpac/src/filters/dmx_saf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *safdmx_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 479
    functionDepth: 0
    functionLinenumber: 479
    functionLinenumberEnd: 482
    functionName: safdmx_register
    functionSourceFile: /src/gpac/src/filters/dmx_saf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *safdmx_register(GF_FilterSession *session)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_audio.c:96,1
    - Dst: GF_AudioOutCtx*::audio_out::Configure
      Src: /src/gpac/src/filters/out_audio.c:103,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:105,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_audio.c:105,1
    - Dst: GF_AudioOutCtx*::audio_out::Configure
      Src: /src/gpac/src/filters/out_audio.c:109,1
    - Dst: GF_AudioOutCtx*::audio_out::SetVolume
      Src: /src/gpac/src/filters/out_audio.c:115,1
    - Dst: GF_AudioOutCtx*::audio_out::SetPan
      Src: /src/gpac/src/filters/out_audio.c:120,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/out_audio.c:133,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/out_audio.c:133,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/out_audio.c:136,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/out_audio.c:136,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/out_audio.c:139,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/out_audio.c:139,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/out_audio.c:141,1
    - Dst: PROP_DOUBLE
      Src: /src/gpac/src/filters/out_audio.c:141,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/out_audio.c:157,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/out_audio.c:162,1
    - Dst: GF_AudioOutCtx*::audio_out::GetAudioDelay
      Src: /src/gpac/src/filters/out_audio.c:165,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:167,1
    - Dst: GF_AudioOutCtx*::audio_out::GetTotalBufferTime
      Src: /src/gpac/src/filters/out_audio.c:171,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:173,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 79
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_AudioOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 175
    functionName: aout_reconfig
    functionSourceFile: /src/gpac/src/filters/out_audio.c
    functionUses: 0
    functionsReached:
    - gf_audio_fmt_bit_depth
    - PROP_UINT
    - GF_LOG
    - gf_filter_pid_negotiate_property
    - GF_AudioOutCtx*::audio_out::GetTotalBufferTime
    - gf_filter_abort
    - GF_AudioOutCtx*::audio_out::Configure
    - GF_AudioOutCtx*::audio_out::SetPan
    - GF_AudioOutCtx*::audio_out::SetVolume
    - gf_error_to_string
    - GF_AudioOutCtx*::audio_out::GetAudioDelay
    - gf_filter_pid_get_packet
    - PROP_DOUBLE
    linkageType: ''
    returnType: void
    signature: void aout_reconfig(GF_AudioOutCtx *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_log_tag
      Src: /src/gpac/src/filters/out_audio.c:182,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:186,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filters/out_audio.c:186,1
    - Dst: aout_reconfig
      Src: /src/gpac/src/filters/out_audio.c:190,1
    - Dst: GF_AudioOutCtx*::audio_out::WriteAudio
      Src: /src/gpac/src/filters/out_audio.c:192,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filters/out_audio.c:194,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:197,1
    - Dst: GF_AudioOutCtx*::audio_out::Shutdown
      Src: /src/gpac/src/filters/out_audio.c:198,1
    - Dst: gf_filter_log_tag
      Src: /src/gpac/src/filters/out_audio.c:200,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - p
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 178
    functionDepth: 2
    functionLinenumber: 178
    functionLinenumberEnd: 202
    functionName: aout_th_proc
    functionSourceFile: /src/gpac/src/filters/out_audio.c
    functionUses: 0
    functionsReached:
    - gf_th_id
    - GF_AudioOutCtx*::audio_out::Shutdown
    - GF_LOG
    - gf_filter_log_tag
    - gf_sleep
    - GF_AudioOutCtx*::audio_out::WriteAudio
    - aout_reconfig
    linkageType: ''
    returnType: u32
    signature: u32 aout_th_proc(void *p)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/out_audio.c:212,1
    - Dst: gf_filter_log_tag
      Src: /src/gpac/src/filters/out_audio.c:221,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_audio.c:226,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_audio.c:227,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:229,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/out_audio.c:230,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_audio.c:231,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/filters/out_audio.c:249,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:251,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_audio.c:255,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/out_audio.c:258,1
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/src/filters/out_audio.c:264,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/src/filters/out_audio.c:264,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/out_audio.c:265,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_audio.c:268,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/filters/out_audio.c:273,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:279,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_audio.c:279,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/filters/out_audio.c:284,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:285,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/src/filters/out_audio.c:286,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:287,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_audio.c:288,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/out_audio.c:293,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/filters/out_audio.c:294,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:295,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_audio.c:308,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/out_audio.c:310,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/out_audio.c:311,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:314,1
    - Dst: gf_filter_log_tag
      Src: /src/gpac/src/filters/out_audio.c:316,1
    - Dst: gf_filter_log_tag
      Src: /src/gpac/src/filters/out_audio.c:321,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_audio.c:327,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/out_audio.c:329,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_audio.c:331,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/out_audio.c:333,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_audio.c:341,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_audio.c:348,1
    - Dst: gf_filter_pid_get_clock_info
      Src: /src/gpac/src/filters/out_audio.c:351,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_audio.c:352,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:354,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/out_audio.c:364,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_audio.c:365,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_audio.c:368,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_audio.c:369,1
    - Dst: gf_filter_log_tag
      Src: /src/gpac/src/filters/out_audio.c:373,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_audio.c:378,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_audio.c:386,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_audio.c:391,1
    - Dst: gf_filter_hint_single_clock
      Src: /src/gpac/src/filters/out_audio.c:394,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_audio.c:394,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:395,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_audio.c:395,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_audio.c:403,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/out_audio.c:405,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/filters/out_audio.c:407,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_audio.c:408,1
    - Dst: gf_audio_fmt_name
      Src: /src/gpac/src/filters/out_audio.c:408,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/out_audio.c:409,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_audio.c:413,1
    - Dst: gf_filter_log_tag
      Src: /src/gpac/src/filters/out_audio.c:420,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_audio.c:423,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_audio.c:426,1
    - Dst: gf_filter_log_tag
      Src: /src/gpac/src/filters/out_audio.c:428,1
    - Dst: gf_filter_log_tag
      Src: /src/gpac/src/filters/out_audio.c:432,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 175
    argCount: 3
    argNames:
    - ptr
    - buffer
    - buffer_size
    argTypes:
    - void*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 206
    functionDepth: 2
    functionLinenumber: 206
    functionLinenumberEnd: 434
    functionName: aout_fill_output
    functionSourceFile: /src/gpac/src/filters/out_audio.c
    functionUses: 0
    functionsReached:
    - gf_log_tool_level_on
    - memset
    - gf_filter_pid_get_packet
    - gf_sys_clock
    - gf_filter_pid_query_buffer_duration
    - memcpy
    - GF_FEVT_INIT
    - sprintf
    - gf_filter_pid_has_seen_eos
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_property
    - gf_filter_pid_drop_packet
    - gf_filter_update_status
    - gf_filter_pid_get_clock_info
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_filter_log_tag
    - gf_filter_pid_init_play_event
    - gf_audio_fmt_name
    - gf_filter_pid_send_event
    - gf_filter_pid_is_eos
    - gf_sys_clock_high_res
    - gf_timestamp_rescale
    - gf_filter_pck_is_blocking_ref
    - gf_timestamp_greater
    - gf_filter_hint_single_clock
    - gf_filter_pid_is_flush_eos
    - gf_filter_reporting_enabled
    linkageType: ''
    returnType: u32
    signature: u32 aout_fill_output(void *ptr, u8 *buffer, u32 buffer_size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_set_priority
      Src: /src/gpac/src/filters/out_audio.c:442,1
    - Dst: GF_AudioOutCtx*::audio_out::SetPriority
      Src: /src/gpac/src/filters/out_audio.c:446,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - prio
    argTypes:
    - GF_AudioOutCtx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 436
    functionDepth: 0
    functionLinenumber: 436
    functionLinenumberEnd: 448
    functionName: aout_set_priority
    functionSourceFile: /src/gpac/src/filters/out_audio.c
    functionUses: 0
    functionsReached:
    - gf_th_set_priority
    - GF_AudioOutCtx*::audio_out::SetPriority
    linkageType: ''
    returnType: void
    signature: void aout_set_priority(GF_AudioOutCtx *ctx, u32 prio)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_audio.c:456,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_audio.c:459,1
    - Dst: gf_filter_hint_single_clock
      Src: /src/gpac/src/filters/out_audio.c:465,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_audio.c:468,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/out_audio.c:471,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_audio.c:476,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_audio.c:479,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_audio.c:481,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_audio.c:483,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_audio.c:485,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/out_audio.c:489,1
    - Dst: GF_AudioOutCtx*::audio_out::SetVolume
      Src: /src/gpac/src/filters/out_audio.c:490,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/out_audio.c:493,1
    - Dst: GF_AudioOutCtx*::audio_out::SetPan
      Src: /src/gpac/src/filters/out_audio.c:494,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/out_audio.c:496,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_audio.c:498,1
    - Dst: aout_set_priority
      Src: /src/gpac/src/filters/out_audio.c:499,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_audio.c:503,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_audio.c:506,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_audio.c:510,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_audio.c:533,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_audio.c:554,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/out_audio.c:564,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_audio.c:565,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/out_audio.c:575,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_audio.c:576,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_audio.c:585,1
    - Dst: aout_set_priority
      Src: /src/gpac/src/filters/out_audio.c:586,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_audio.c:588,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_audio.c:597,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 116
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 599
      start: 450
    functionDepth: 1
    functionLinenumber: 450
    functionLinenumberEnd: 599
    functionName: aout_configure_pid
    functionSourceFile: /src/gpac/src/filters/out_audio.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_filter_pid_get_info
    - gf_filter_pid_get_property
    - gf_filter_pid_send_event
    - gf_filter_pid_init_play_event
    - GF_FEVT_INIT
    - gf_filter_pid_check_caps
    - GF_AudioOutCtx*::audio_out::SetPan
    - gf_filter_hint_single_clock
    - GF_AudioOutCtx*::audio_out::SetVolume
    - gf_filter_release_property
    - aout_set_priority
    - gf_filter_post_process_task
    - gf_timestamp_rescale
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err aout_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_audio.c:606,1
    - Dst: gf_module_load
      Src: /src/gpac/src/filters/out_audio.c:611,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:614,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/out_audio.c:617,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/out_audio.c:618,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:624,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/out_audio.c:629,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/out_audio.c:630,1
    - Dst: GF_AudioOutCtx*::audio_out::Setup
      Src: /src/gpac/src/filters/out_audio.c:631,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:634,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/filters/out_audio.c:635,1
    - Dst: GF_AudioOutCtx*::audio_out::QueryOutputSampleRate
      Src: /src/gpac/src/filters/out_audio.c:644,1
    - Dst: gf_th_new
      Src: /src/gpac/src/filters/out_audio.c:649,1
    - Dst: gf_th_run
      Src: /src/gpac/src/filters/out_audio.c:650,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:652,1
    - Dst: aout_set_priority
      Src: /src/gpac/src/filters/out_audio.c:657,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 39
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 601
    functionDepth: 6
    functionLinenumber: 601
    functionLinenumberEnd: 660
    functionName: aout_initialize
    functionSourceFile: /src/gpac/src/filters/out_audio.c
    functionUses: 0
    functionsReached:
    - gf_th_run
    - gf_opts_set_key
    - sscanf
    - GF_LOG
    - gf_modules_close_interface
    - gf_th_new
    - gf_module_load
    - GF_AudioOutCtx*::audio_out::Setup
    - gf_opts_get_key
    - aout_set_priority
    - GF_AudioOutCtx*::audio_out::QueryOutputSampleRate
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err aout_initialize(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_audio.c:664,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:671,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filters/out_audio.c:674,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:676,1
    - Dst: gf_th_del
      Src: /src/gpac/src/filters/out_audio.c:677,1
    - Dst: GF_AudioOutCtx*::audio_out::Shutdown
      Src: /src/gpac/src/filters/out_audio.c:682,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/filters/out_audio.c:684,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 687
      start: 662
    functionDepth: 3
    functionLinenumber: 662
    functionLinenumberEnd: 687
    functionName: aout_finalize
    functionSourceFile: /src/gpac/src/filters/out_audio.c
    functionUses: 0
    functionsReached:
    - GF_AudioOutCtx*::audio_out::Shutdown
    - GF_LOG
    - gf_modules_close_interface
    - gf_sleep
    - gf_th_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void aout_finalize(GF_Filter *filter)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_audio.c:725,1
    - Dst: GF_AudioOutCtx*::audio_out::Play
      Src: /src/gpac/src/filters/out_audio.c:730,1
    - Dst: GF_AudioOutCtx*::audio_out::Play
      Src: /src/gpac/src/filters/out_audio.c:734,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 742
      start: 723
    functionDepth: 1
    functionLinenumber: 723
    functionLinenumberEnd: 742
    functionName: aout_process_event
    functionSourceFile: /src/gpac/src/filters/out_audio.c
    functionUses: 0
    functionsReached:
    - GF_AudioOutCtx*::audio_out::Play
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool aout_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_audio.c:746,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_audio.c:748,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_audio.c:752,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_audio.c:762,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_audio.c:764,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_audio.c:768,1
    - Dst: GF_AudioOutCtx*::audio_out::SetVolume
      Src: /src/gpac/src/filters/out_audio.c:770,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_audio.c:772,1
    - Dst: GF_AudioOutCtx*::audio_out::SetPan
      Src: /src/gpac/src/filters/out_audio.c:774,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 30
    argCount: 3
    argNames:
    - filter
    - arg_name
    - new_val
    argTypes:
    - GF_Filter*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 777
      start: 744
    functionDepth: 1
    functionLinenumber: 744
    functionLinenumberEnd: 777
    functionName: aout_update_arg
    functionSourceFile: /src/gpac/src/filters/out_audio.c
    functionUses: 0
    functionsReached:
    - GF_FEVT_INIT
    - strcmp
    - GF_AudioOutCtx*::audio_out::SetPan
    - GF_AudioOutCtx*::audio_out::SetVolume
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err aout_update_arg(GF_Filter *filter, const char *arg_name, const
      GF_PropertyValue *new_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 782
      start: 781
    functionDepth: 0
    functionLinenumber: 781
    functionLinenumberEnd: 782
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/out_audio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 841
      start: 838
    functionDepth: 0
    functionLinenumber: 838
    functionLinenumberEnd: 841
    functionName: aout_register
    functionSourceFile: /src/gpac/src/filters/out_audio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *aout_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 844
    functionDepth: 0
    functionLinenumber: 844
    functionLinenumberEnd: 847
    functionName: aout_register
    functionSourceFile: /src/gpac/src/filters/out_audio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *aout_register(GF_FilterSession *session)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_qcp.c:71,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_qcp.c:76,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/write_qcp.c:81,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_qcp.c:84,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_qcp.c:88,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_qcp.c:92,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_qcp.c:96,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/write_qcp.c:97,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/write_qcp.c:101,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_qcp.c:102,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_qcp.c:102,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_qcp.c:105,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_qcp.c:105,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_qcp.c:108,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_qcp.c:108,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_qcp.c:110,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_qcp.c:114,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_qcp.c:114,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_qcp.c:115,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_qcp.c:119,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_qcp.c:119,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_qcp.c:121,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_qcp.c:124,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_qcp.c:124,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_qcp.c:131,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/write_qcp.c:131,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_qcp.c:135,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/write_qcp.c:138,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_qcp.c:140,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_qcp.c:142,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_qcp.c:147,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_qcp.c:149,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_qcp.c:156,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_qcp.c:156,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 79
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 67
    functionDepth: 2
    functionLinenumber: 67
    functionLinenumberEnd: 161
    functionName: qcpmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/write_qcp.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - PROP_STRING
    - memcpy
    - GF_LOG
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - gf_codecid_name
    - gf_filter_pid_set_property
    - gf_audio_fmt_bit_depth
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err qcpmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_qcp.c:189,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_qcp.c:198,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_qcp.c:210,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_qcp.c:213,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_qcp.c:215,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/write_qcp.c:216,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_qcp.c:217,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_qcp.c:218,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/write_qcp.c:219,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/write_qcp.c:220,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/write_qcp.c:221,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_qcp.c:222,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/filters/write_qcp.c:223,1
    - Dst: memset
      Src: /src/gpac/src/filters/write_qcp.c:224,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/write_qcp.c:225,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_qcp.c:226,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/filters/write_qcp.c:227,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/filters/write_qcp.c:228,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/filters/write_qcp.c:229,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/filters/write_qcp.c:230,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/filters/write_qcp.c:231,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/write_qcp.c:232,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/write_qcp.c:236,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/write_qcp.c:237,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/write_qcp.c:239,1
    - Dst: memset
      Src: /src/gpac/src/filters/write_qcp.c:242,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_qcp.c:243,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_qcp.c:244,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/write_qcp.c:245,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/write_qcp.c:246,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/write_qcp.c:247,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_qcp.c:248,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/write_qcp.c:249,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/write_qcp.c:253,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/write_qcp.c:256,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_qcp.c:257,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/write_qcp.c:258,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/write_qcp.c:259,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_qcp.c:261,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/write_qcp.c:262,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_qcp.c:266,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 79
    argCount: 3
    argNames:
    - ctx
    - data_size
    - frame_count
    argTypes:
    - GF_QCPMxCtx*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 163
    functionDepth: 6
    functionLinenumber: 163
    functionLinenumberEnd: 267
    functionName: qcpmx_send_header
    functionSourceFile: /src/gpac/src/filters/write_qcp.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_new_alloc
    - gf_filter_pid_get_property
    - gf_bs_new
    - strcpy
    - gf_bs_write_u16
    - gf_filter_pck_set_seek_flag
    - gf_bs_write_u16_le
    - gf_bs_del
    - gf_bs_write_data
    - memset
    - gf_filter_pck_set_framing
    - gf_bs_write_u32_le
    - gf_bs_write_u8
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void qcpmx_send_header(GF_QCPMxCtx *ctx, u32 data_size, u32 frame_count)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_qcp.c:271,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/write_qcp.c:276,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/write_qcp.c:278,1
    - Dst: qcpmx_send_header
      Src: /src/gpac/src/filters/write_qcp.c:280,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_qcp.c:284,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_qcp.c:287,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_qcp.c:289,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/write_qcp.c:292,1
    - Dst: qcpmx_send_header
      Src: /src/gpac/src/filters/write_qcp.c:299,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/write_qcp.c:302,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_qcp.c:321,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_qcp.c:322,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_qcp.c:326,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_qcp.c:329,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/write_qcp.c:333,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_qcp.c:337,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/write_qcp.c:338,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_qcp.c:340,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_qcp.c:343,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/write_qcp.c:346,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_qcp.c:347,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/filters/write_qcp.c:348,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_qcp.c:351,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 62
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 269
    functionDepth: 7
    functionLinenumber: 269
    functionLinenumberEnd: 354
    functionName: qcpmx_process
    functionSourceFile: /src/gpac/src/filters/write_qcp.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_new_alloc
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_ref
    - gf_set_progress
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_send
    - memcpy
    - gf_filter_pid_set_eos
    - gf_filter_pck_merge_properties
    - gf_filter_pck_set_framing
    - gf_filter_pck_get_timescale
    - qcpmx_send_header
    - gf_filter_pck_get_cts
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err qcpmx_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 370
    functionDepth: 0
    functionLinenumber: 370
    functionLinenumberEnd: 371
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/write_qcp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 391
    functionDepth: 0
    functionLinenumber: 391
    functionLinenumberEnd: 394
    functionName: writeqcp_register
    functionSourceFile: /src/gpac/src/filters/write_qcp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *writeqcp_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 396
    functionDepth: 0
    functionLinenumber: 396
    functionLinenumberEnd: 399
    functionName: writeqcp_register
    functionSourceFile: /src/gpac/src/filters/write_qcp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *writeqcp_register(GF_FilterSession *session)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:39,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_ts.c:41,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_ts.c:43,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ts.c:49,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_ts.c:49,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:51,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_ts.c:54,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_ts.c:56,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ts.c:62,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_ts.c:62,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 20
    argCount: 5
    argNames:
    - ipid
    - opid
    - file_exts
    - mime_types
    - def_ext
    argTypes:
    - GF_FilterPid*
    - GF_FilterPid*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 63
    functionName: mux_assign_mime_file_ext
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_get_property
    - PROP_STRING
    - strstr
    - gf_filter_pid_set_property
    - strlen
    linkageType: ''
    returnType: void
    signature: void mux_assign_mime_file_ext(GF_FilterPid *ipid, GF_FilterPid *opid,
      const char *file_exts, const char *mime_types, const char *def_ext)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/mux_ts.c:258,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:262,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:263,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:265,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:266,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:267,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:268,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:269,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:270,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:272,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:273,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_ts.c:276,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/mux_ts.c:278,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:279,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/mux_ts.c:281,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:282,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:285,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/mux_ts.c:287,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_ts.c:287,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_ts.c:288,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_ts.c:288,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/mux_ts.c:290,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/mux_ts.c:292,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/mux_ts.c:294,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:295,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/mux_ts.c:296,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:318,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:319,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:321,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:322,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:323,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:324,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:325,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:326,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:327,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:328,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:329,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:331,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/mux_ts.c:333,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:335,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/mux_ts.c:338,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 83
    argCount: 15
    argNames:
    - bs
    - is_realtime
    - timeline_id
    - timecode
    - timescale
    - mode_64bits
    - ntp
    - temi_url
    - temi_delay
    - last_url_time
    - is_reload
    - is_splicing
    - announce
    - is_paused
    - is_discontinuity
    argTypes:
    - GF_BitStream*
    - Bool
    - u32
    - u64
    - u32
    - u32
    - u64
    - char*
    - u32
    - u32*
    - Bool
    - Bool
    - GF_Fraction*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 247
    functionDepth: 7
    functionLinenumber: 247
    functionLinenumberEnd: 342
    functionName: tsmux_format_af_descriptor
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - gf_bs_seek
    - gf_bs_write_int
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_bs_write_u8
    - strnicmp
    - gf_bs_write_u64
    - gf_bs_write_u32
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tsmux_format_af_descriptor(GF_BitStream *bs, Bool is_realtime,
      u32 timeline_id, u64 timecode, u32 timescale, u32 mode_64bits, u64 ntp, const
      char *temi_url, u32 temi_delay, u32 *last_url_time, Bool is_reload, Bool is_splicing,
      GF_Fraction *announce, Bool is_paused, Bool is_discontinuity)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/filters/mux_ts.c:347,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 3
    argNames:
    - ctx
    - timescale
    - slc
    argTypes:
    - GF_TSMuxCtx*
    - u32
    - GF_SLConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 362
    functionName: tsmux_get_sl_config
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_new
    linkageType: ''
    returnType: GF_SLConfig
    signature: GF_SLConfig *tsmux_get_sl_config(GF_TSMuxCtx *ctx, u32 timescale, GF_SLConfig
      *slc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_codec_new
      Src: /src/gpac/src/filters/mux_ts.c:370,1
    - Dst: gf_odf_codec_set_au
      Src: /src/gpac/src/filters/mux_ts.c:372,1
    - Dst: gf_odf_codec_decode
      Src: /src/gpac/src/filters/mux_ts.c:373,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_ts.c:374,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_ts.c:376,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_ts.c:380,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_ts.c:382,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/mux_ts.c:384,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_ts.c:385,1
    - Dst: tsmux_get_sl_config
      Src: /src/gpac/src/filters/mux_ts.c:386,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/mux_ts.c:393,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_ts.c:394,1
    - Dst: tsmux_get_sl_config
      Src: /src/gpac/src/filters/mux_ts.c:395,1
    - Dst: gf_odf_codec_encode
      Src: /src/gpac/src/filters/mux_ts.c:400,1
    - Dst: gf_odf_codec_get_au
      Src: /src/gpac/src/filters/mux_ts.c:403,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/filters/mux_ts.c:404,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 2
    argNames:
    - ctx
    - es_pck
    argTypes:
    - GF_TSMuxCtx*
    - GF_ESIPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 364
    functionDepth: 2
    functionLinenumber: 364
    functionLinenumberEnd: 406
    functionName: tsmux_rewrite_odf
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - tsmux_get_sl_config
    - gf_list_get
    - gf_assert
    - gf_odf_codec_get_au
    - gf_odf_codec_encode
    - gf_odf_codec_decode
    - gf_list_count
    - gf_odf_codec_new
    - gf_odf_codec_set_au
    - gf_odf_codec_del
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void tsmux_rewrite_odf(GF_TSMuxCtx *ctx, GF_ESIPacket *es_pck)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_ts.c:410,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - GF_TSMuxCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 408
    functionDepth: 0
    functionLinenumber: 408
    functionLinenumberEnd: 417
    functionName: tsmux_check_mpd_start_time
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_property
    linkageType: ''
    returnType: void
    signature: void tsmux_check_mpd_start_time(GF_TSMuxCtx *ctx, GF_FilterPacket *pck)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_mux_table_update
      Src: /src/gpac/src/filters/mux_ts.c:423,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ts.c:427,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - muxer
    - stream
    argTypes:
    - GF_M2TS_Mux*
    - GF_M2TS_Mux_Stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 419
    functionDepth: 2
    functionLinenumber: 419
    functionLinenumberEnd: 438
    functionName: tsmux_stream_process_scte35
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_m2ts_mux_table_update
    linkageType: ''
    returnType: u32
    signature: u32 tsmux_stream_process_scte35(GF_M2TS_Mux *muxer, GF_M2TS_Mux_Stream
      *stream)
  - BBCount: 84
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_ts.c:454,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/mux_ts.c:459,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/mux_ts.c:468,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_ts.c:481,1
    - Dst: tsmux_check_mpd_start_time
      Src: /src/gpac/src/filters/mux_ts.c:497,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_ts.c:506,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/mux_ts.c:508,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_ts.c:511,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/mux_ts.c:513,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_ts.c:518,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/mux_ts.c:520,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_ts.c:522,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/mux_ts.c:524,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_ts.c:533,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/mux_ts.c:535,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_ts.c:538,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_ts.c:542,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_ts.c:549,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_ts.c:550,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_ts.c:561,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_ts.c:563,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_ts.c:574,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/mux_ts.c:579,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/mux_ts.c:584,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/mux_ts.c:593,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_ts.c:598,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/mux_ts.c:600,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/mux_ts.c:601,1
    - Dst: gf_filter_pck_get_carousel_version
      Src: /src/gpac/src/filters/mux_ts.c:602,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_ts.c:611,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_ts.c:612,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_ts.c:630,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/mux_ts.c:631,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_ts.c:634,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_ts.c:637,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_ts.c:650,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_ts.c:661,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_ts.c:667,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/filters/mux_ts.c:673,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_ts.c:678,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/filters/mux_ts.c:681,1
    - Dst: gf_net_ntp_add_usec
      Src: /src/gpac/src/filters/mux_ts.c:687,1
    - Dst: tsmux_format_af_descriptor
      Src: /src/gpac/src/filters/mux_ts.c:689,1
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/src/filters/mux_ts.c:698,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/mux_ts.c:700,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_ts.c:701,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/mux_ts.c:703,1
    - Dst: atoi
      Src: /src/gpac/src/filters/mux_ts.c:707,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_ts.c:709,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_ts.c:710,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_ts.c:711,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_ts.c:712,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/mux_ts.c:714,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/mux_ts.c:715,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/filters/mux_ts.c:717,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_ts.c:718,1
    - Dst: tsmux_format_af_descriptor
      Src: /src/gpac/src/filters/mux_ts.c:722,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/mux_ts.c:724,1
    - Dst: atoi
      Src: /src/gpac/src/filters/mux_ts.c:725,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_ts.c:726,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/mux_ts.c:728,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/mux_ts.c:729,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/mux_ts.c:730,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_ts.c:731,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_ts.c:732,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_ts.c:733,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_ts.c:734,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_ts.c:735,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/mux_ts.c:739,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/filters/mux_ts.c:741,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/filters/mux_ts.c:743,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_ts.c:744,1
    - Dst: tsmux_format_af_descriptor
      Src: /src/gpac/src/filters/mux_ts.c:748,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/mux_ts.c:752,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/mux_ts.c:760,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_ts.c:762,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_ts.c:763,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/mux_ts.c:764,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_ts.c:765,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_ts.c:777,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_ts.c:792,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_ts.c:794,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/mux_ts.c:807,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/mux_ts.c:808,1
    - Dst: tsmux_rewrite_odf
      Src: /src/gpac/src/filters/mux_ts.c:812,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ts.c:817,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_ts.c:835,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_ts.c:837,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_ts.c:838,1
    - Dst: gf_webvtt_parse_cues_from_data
      Src: /src/gpac/src/filters/mux_ts.c:840,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_ts.c:841,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_ts.c:842,1
    - Dst: webvtt_write_cue_bs
      Src: /src/gpac/src/filters/mux_ts.c:843,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/filters/mux_ts.c:844,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/mux_ts.c:846,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/mux_ts.c:847,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_ts.c:848,1
    - Dst: GF_ESInterface*::output_ctrl
      Src: /src/gpac/src/filters/mux_ts.c:855,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_ts.c:856,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_ts.c:859,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ts.c:862,1
    CyclomaticComplexity: 101
    EdgeCount: 101
    ICount: 320
    argCount: 3
    argNames:
    - ifce
    - act_type
    - param
    argTypes:
    - GF_ESInterface*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 873
      start: 440
    functionDepth: 9
    functionLinenumber: 440
    functionLinenumberEnd: 873
    functionName: tsmux_esi_ctrl
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_ESInterface*::output_ctrl
    - gf_bs_new
    - gf_filter_pck_enum_properties
    - strcpy
    - gf_list_count
    - memset
    - gf_filter_pck_get_carousel_version
    - atoi
    - tsmux_check_mpd_start_time
    - gf_filter_pid_get_packet
    - gf_strdup
    - gf_list_get
    - gf_bs_read_u32
    - gf_assert
    - memcpy
    - gf_bs_get_content
    - strncmp
    - tsmux_rewrite_odf
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_duration
    - gf_net_get_ntp_ts
    - gf_filter_pck_get_property
    - gf_net_ntp_add_usec
    - gf_filter_pid_drop_packet
    - GF_LOG
    - gf_filter_pck_get_data
    - webvtt_write_cue_bs
    - gf_filter_pck_get_sap
    - gf_filter_pid_is_eos
    - gf_bs_read_u8
    - gf_bs_is_overflow
    - gf_bs_reassign_buffer
    - gf_bs_get_content_no_truncate
    - gf_timestamp_rescale
    - gf_malloc
    - gf_webvtt_parse_cues_from_data
    - gf_list_del
    - gf_webvtt_cue_del
    - gf_timestamp_greater_or_equal
    - tsmux_format_af_descriptor
    - gf_bs_del
    - gf_filter_pid_is_flush_eos
    - gf_bs_read_int
    - gf_bs_read_u64
    - gf_filter_pck_get_dts
    - gf_filter_pck_get_property_str
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tsmux_esi_ctrl(GF_ESInterface *ifce, u32 act_type, void *param)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/mux_ts.c:880,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/filters/mux_ts.c:881,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:884,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/filters/mux_ts.c:886,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/mux_ts.c:892,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_ts.c:893,1
    - Dst: tsmux_get_sl_config
      Src: /src/gpac/src/filters/mux_ts.c:896,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_ts.c:897,1
    - Dst: tsmux_get_sl_config
      Src: /src/gpac/src/filters/mux_ts.c:899,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - ctx
    - prog
    argTypes:
    - GF_TSMuxCtx*
    - GF_M2TS_Mux_Program*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 876
    functionDepth: 2
    functionLinenumber: 876
    functionLinenumberEnd: 902
    functionName: update_m4sys_info
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - tsmux_get_sl_config
    - gf_filter_pid_get_property
    - gf_odf_desc_del
    - gf_odf_desc_esd_new
    - memcpy
    - gf_odf_desc_new
    - gf_list_add
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void update_m4sys_info(GF_TSMuxCtx *ctx, GF_M2TS_Mux_Program *prog)
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/mux_ts.c:909,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:912,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:914,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:924,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:927,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:932,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:935,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:940,1
    - Dst: gf_lang_find
      Src: /src/gpac/src/filters/mux_ts.c:942,1
    - Dst: gf_lang_get_3cc
      Src: /src/gpac/src/filters/mux_ts.c:944,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_ts.c:945,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:949,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:955,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:960,1
    - Dst: update_m4sys_info
      Src: /src/gpac/src/filters/mux_ts.c:966,1
    - Dst: update_m4sys_info
      Src: /src/gpac/src/filters/mux_ts.c:968,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:982,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_ts.c:984,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:989,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/mux_ts.c:1009,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/mux_ts.c:1012,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/mux_ts.c:1026,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ts.c:1027,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1031,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_ts.c:1033,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:1034,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/mux_ts.c:1035,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/mux_ts.c:1036,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:1037,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1038,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/filters/mux_ts.c:1039,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1041,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:1042,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:1046,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_ts.c:1047,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:1049,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1053,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:1054,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1055,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:1056,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1058,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:1059,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1060,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:1061,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/mux_ts.c:1064,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_ts.c:1065,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/mux_ts.c:1066,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_ts.c:1073,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/mux_ts.c:1077,1
    - Dst: gf_4cc_parse
      Src: /src/gpac/src/filters/mux_ts.c:1080,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 161
    argCount: 4
    argNames:
    - ctx
    - prog
    - tspid
    - stream_type
    argTypes:
    - GF_TSMuxCtx*
    - GF_M2TS_Mux_Program*
    - M2Pid*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1089
      start: 904
    functionDepth: 9
    functionLinenumber: 904
    functionLinenumberEnd: 1089
    functionName: tsmux_setup_esi
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memcmp
    - gf_bs_new
    - memset
    - gf_4cc_parse
    - gf_bs_write_u32
    - memcpy
    - gf_bs_get_content
    - gf_bs_write_utf8
    - stricmp
    - gf_crc_32
    - gf_filter_pid_get_property_str
    - gf_bs_write_data
    - gf_lang_get_3cc
    - gf_filter_pid_get_property
    - gf_lang_find
    - gf_bs_del
    - GF_4CC
    - update_m4sys_info
    - gf_bs_write_u8
    linkageType: ''
    returnType: Bool
    signature: Bool tsmux_setup_esi(GF_TSMuxCtx *ctx, GF_M2TS_Mux_Program *prog, M2Pid
      *tspid, u32 stream_type)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_ts.c:1098,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_ts.c:1127,1
    - Dst: strchr
      Src: /src/gpac/src/filters/mux_ts.c:1131,1
    - Dst: atoi
      Src: /src/gpac/src/filters/mux_ts.c:1139,1
    - Dst: atoi
      Src: /src/gpac/src/filters/mux_ts.c:1148,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/mux_ts.c:1151,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/mux_ts.c:1154,1
    - Dst: atoi
      Src: /src/gpac/src/filters/mux_ts.c:1158,1
    - Dst: atoi
      Src: /src/gpac/src/filters/mux_ts.c:1171,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_ts.c:1185,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_ts.c:1186,1
    - Dst: strchr
      Src: /src/gpac/src/filters/mux_ts.c:1190,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/mux_ts.c:1201,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/mux_ts.c:1202,1
    - Dst: atoi
      Src: /src/gpac/src/filters/mux_ts.c:1203,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_ts.c:1205,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_ts.c:1215,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 116
    argCount: 2
    argNames:
    - ctx
    - tspid
    argTypes:
    - GF_TSMuxCtx*
    - M2Pid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1221
      start: 1091
    functionDepth: 1
    functionLinenumber: 1091
    functionLinenumberEnd: 1221
    functionName: tsmux_setup_temi
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_pid_get_property_str
    - gf_strdup
    - sscanf
    - GF_SAFEALLOC
    - GF_LOG
    - atoi
    - gf_list_add
    - strchr
    - strlen
    linkageType: ''
    returnType: void
    signature: void tsmux_setup_temi(GF_TSMuxCtx *ctx, M2Pid *tspid)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_ts.c:1226,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/mux_ts.c:1227,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ts.c:1228,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ts.c:1229,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/mux_ts.c:1231,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ts.c:1233,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_ts.c:1234,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ts.c:1236,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ts.c:1237,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ts.c:1238,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ts.c:1239,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 1
    argNames:
    - tspid
    argTypes:
    - M2Pid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1240
      start: 1223
    functionDepth: 3
    functionLinenumber: 1223
    functionLinenumberEnd: 1240
    functionName: tsmux_del_stream
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_bs_del
    - gf_list_count
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void tsmux_del_stream(M2Pid *tspid)
  - BBCount: 56
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_ts.c:1251,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/mux_ts.c:1254,1
    - Dst: gf_m2ts_program_stream_remove
      Src: /src/gpac/src/filters/mux_ts.c:1257,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/mux_ts.c:1259,1
    - Dst: tsmux_del_stream
      Src: /src/gpac/src/filters/mux_ts.c:1260,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/mux_ts.c:1264,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1267,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1270,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1274,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/mux_ts.c:1278,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/mux_ts.c:1279,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1281,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1284,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1292,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1293,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1294,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1295,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_ts.c:1295,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1296,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_ts.c:1296,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1297,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_ts.c:1297,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1298,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/mux_ts.c:1298,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1299,1
    - Dst: mux_assign_mime_file_ext
      Src: /src/gpac/src/filters/mux_ts.c:1300,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/mux_ts.c:1302,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/mux_ts.c:1309,1
    - Dst: gf_m2ts_mux_use_single_au_pes_mode
      Src: /src/gpac/src/filters/mux_ts.c:1312,1
    - Dst: gf_m2ts_mux_set_initial_pcr
      Src: /src/gpac/src/filters/mux_ts.c:1317,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1319,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/mux_ts.c:1324,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/mux_ts.c:1327,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/mux_ts.c:1329,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/mux_ts.c:1331,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/mux_ts.c:1333,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_ts.c:1337,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/mux_ts.c:1338,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/mux_ts.c:1342,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/mux_ts.c:1345,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/mux_ts.c:1349,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/mux_ts.c:1351,1
    - Dst: gf_m2ts_mux_program_find
      Src: /src/gpac/src/filters/mux_ts.c:1360,1
    - Dst: gf_m2ts_mux_program_count
      Src: /src/gpac/src/filters/mux_ts.c:1368,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_ts.c:1371,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_ts.c:1377,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1381,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_ts.c:1395,1
    - Dst: gf_m2ts_mux_program_add
      Src: /src/gpac/src/filters/mux_ts.c:1399,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/mux_ts.c:1404,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/mux_ts.c:1406,1
    - Dst: gf_m2ts_mux_program_set_name
      Src: /src/gpac/src/filters/mux_ts.c:1408,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/mux_ts.c:1409,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1411,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1418,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/mux_ts.c:1421,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_ts.c:1438,1
    - Dst: gf_m2ts_mux_program_get_pmt_pid
      Src: /src/gpac/src/filters/mux_ts.c:1440,1
    - Dst: gf_m2ts_mux_program_get_stream_count
      Src: /src/gpac/src/filters/mux_ts.c:1441,1
    - Dst: gf_m2ts_program_stream_add
      Src: /src/gpac/src/filters/mux_ts.c:1442,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/mux_ts.c:1445,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_ts.c:1448,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_ts.c:1451,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_ts.c:1463,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_ts.c:1473,1
    - Dst: gf_m2ts_mux_program_get_pmt_pid
      Src: /src/gpac/src/filters/mux_ts.c:1480,1
    - Dst: gf_m2ts_mux_program_get_stream_count
      Src: /src/gpac/src/filters/mux_ts.c:1481,1
    - Dst: gf_m2ts_mux_program_get_pcr_pid
      Src: /src/gpac/src/filters/mux_ts.c:1482,1
    - Dst: tsmux_setup_esi
      Src: /src/gpac/src/filters/mux_ts.c:1490,1
    - Dst: gf_m2ts_program_stream_add
      Src: /src/gpac/src/filters/mux_ts.c:1491,1
    - Dst: tsmux_setup_temi
      Src: /src/gpac/src/filters/mux_ts.c:1492,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1498,1
    - Dst: tsmux_setup_esi
      Src: /src/gpac/src/filters/mux_ts.c:1514,1
    - Dst: tsmux_setup_esi
      Src: /src/gpac/src/filters/mux_ts.c:1522,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1528,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/mux_ts.c:1545,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1563,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_ts.c:1565,1
    CyclomaticComplexity: 73
    EdgeCount: 73
    ICount: 263
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1570
      start: 1242
    functionDepth: 10
    functionLinenumber: 1242
    functionLinenumberEnd: 1570
    functionName: tsmux_configure_pid
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_info
    - GF_SAFEALLOC
    - gf_filter_pid_check_caps
    - gf_m2ts_mux_program_find
    - gf_m2ts_program_stream_remove
    - gf_m2ts_mux_program_count
    - gf_filter_pid_set_udta
    - gf_filter_pid_new
    - gf_m2ts_mux_program_set_name
    - gf_realloc
    - gf_strdup
    - gf_assert
    - gf_m2ts_mux_program_add
    - GF_FEVT_INIT
    - gf_filter_release_property
    - gf_list_add
    - PROP_BOOL
    - mux_assign_mime_file_ext
    - gf_m2ts_mux_program_get_stream_count
    - tsmux_setup_esi
    - gf_filter_get_udta
    - gf_filter_pid_get_property_str
    - GF_LOG
    - gf_list_del_item
    - gf_filter_pid_send_event
    - gf_filter_pid_set_property
    - tsmux_del_stream
    - gf_timestamp_rescale
    - gf_m2ts_mux_set_initial_pcr
    - gf_filter_pid_get_udta
    - gf_m2ts_mux_program_get_pmt_pid
    - gf_m2ts_program_stream_add
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_set_framing_mode
    - gf_m2ts_mux_use_single_au_pes_mode
    - tsmux_setup_temi
    - gf_timestamp_greater
    - gf_filter_pid_set_name
    - gf_m2ts_mux_program_get_pcr_pid
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tsmux_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_TSMuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1593
      start: 1572
    functionDepth: 0
    functionLinenumber: 1572
    functionLinenumberEnd: 1593
    functionName: tsmux_assign_pcr
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void tsmux_assign_pcr(GF_TSMuxCtx *ctx)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_ts.c:1599,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_ts.c:1604,1
    - Dst: gf_filter_pid_get_buffer_occupancy
      Src: /src/gpac/src/filters/mux_ts.c:1605,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/src/filters/mux_ts.c:1606,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_ts.c:1611,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/src/filters/mux_ts.c:1613,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_ts.c:1616,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_ts.c:1617,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_ts.c:1621,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/filters/mux_ts.c:1621,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/mux_ts.c:1627,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_ts.c:1634,1
    - Dst: gf_m2ts_mux_update_config
      Src: /src/gpac/src/filters/mux_ts.c:1640,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 39
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_TSMuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1642
      start: 1595
    functionDepth: 2
    functionLinenumber: 1595
    functionLinenumberEnd: 1642
    functionName: tsmux_init_buffering
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_m2ts_mux_update_config
    - GF_LOG
    - gf_sys_clock
    - gf_filter_pid_get_timescale
    - gf_list_count
    - gf_filter_pid_has_seen_eos
    - gf_filter_pck_get_cts
    - gf_filter_pid_get_packet
    - gf_timestamp_rescale
    - gf_filter_pck_get_dts
    - gf_filter_pid_get_buffer_occupancy
    linkageType: ''
    returnType: Bool
    signature: Bool tsmux_init_buffering(GF_Filter *filter, GF_TSMuxCtx *ctx)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_ts.c:1650,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_ts.c:1651,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_ts.c:1655,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_ts.c:1663,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/mux_ts.c:1676,1
    - Dst: gf_filter_connect_destination
      Src: /src/gpac/src/filters/mux_ts.c:1679,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/mux_ts.c:1680,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1681,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_ts.c:1681,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1682,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_ts.c:1682,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1683,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_ts.c:1683,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/mux_ts.c:1684,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/mux_ts.c:1685,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/mux_ts.c:1687,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_ts.c:1690,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/mux_ts.c:1691,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:1694,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:1695,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_ts.c:1695,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:1696,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_ts.c:1696,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:1697,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:1698,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_ts.c:1698,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:1701,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:1702,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_ts.c:1702,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/mux_ts.c:1703,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:1704,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:1706,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:1708,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/mux_ts.c:1710,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/mux_ts.c:1711,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:1713,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_ts.c:1714,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/mux_ts.c:1716,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/mux_ts.c:1717,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:1722,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:1723,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:1724,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:1725,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:1726,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_ts.c:1727,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1729,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_ts.c:1729,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/mux_ts.c:1731,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/mux_ts.c:1736,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/mux_ts.c:1740,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 75
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_TSMuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1743
      start: 1644
    functionDepth: 5
    functionLinenumber: 1644
    functionLinenumberEnd: 1743
    functionName: tsmux_send_seg_event
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - PROP_STRING
    - gf_bs_write_u16
    - gf_filter_connect_destination
    - gf_list_count
    - gf_filter_pid_new
    - gf_bs_write_u32
    - gf_list_get
    - gf_filter_pck_set_property
    - GF_FEVT_INIT
    - gf_bs_write_u64
    - gf_filter_set_source
    - gf_filter_pck_new_alloc
    - gf_bs_write_int
    - gf_filter_pid_send_event
    - gf_bs_reassign_buffer
    - gf_filter_pid_set_property
    - gf_timestamp_rescale
    - PROP_UINT
    - gf_file_ext_start
    - GF_4CC
    - gf_filter_pid_set_name
    - gf_bs_write_u8
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void tsmux_send_seg_event(GF_Filter *filter, GF_TSMuxCtx *ctx)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/mux_ts.c:1773,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 37
    argCount: 2
    argNames:
    - ctx
    - final_flush
    argTypes:
    - GF_TSMuxCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1784
      start: 1745
    functionDepth: 0
    functionLinenumber: 1745
    functionLinenumberEnd: 1784
    functionName: tsmux_insert_sidx
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void tsmux_insert_sidx(GF_TSMuxCtx *ctx, Bool final_flush)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/mux_ts.c:1790,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/mux_ts.c:1798,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 2
    argNames:
    - ctx
    - is_last
    argTypes:
    - GF_TSMuxCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1804
      start: 1786
    functionDepth: 1
    functionLinenumber: 1786
    functionLinenumberEnd: 1804
    functionName: tsmux_flush_frag_llhas
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: void
    signature: void tsmux_flush_frag_llhas(GF_TSMuxCtx *ctx, Bool is_last)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_ts.c:1808,1
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filters/mux_ts.c:1810,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/mux_ts.c:1814,1
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filters/mux_ts.c:1815,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - filter
    - pid
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1817
      start: 1806
    functionDepth: 1
    functionLinenumber: 1806
    functionLinenumberEnd: 1817
    functionName: ts_mux_on_packet_del
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - gf_filter_lock
    - gf_filter_post_process_task
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ts_mux_on_packet_del(GF_Filter *filter, GF_FilterPid *pid, GF_FilterPacket
      *pck)
  - BBCount: 60
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_ts.c:1825,1
    - Dst: tsmux_assign_pcr
      Src: /src/gpac/src/filters/mux_ts.c:1829,1
    - Dst: tsmux_init_buffering
      Src: /src/gpac/src/filters/mux_ts.c:1832,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/mux_ts.c:1833,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_ts.c:1838,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_ts.c:1841,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_ts.c:1842,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1844,1
    - Dst: tsmux_check_mpd_start_time
      Src: /src/gpac/src/filters/mux_ts.c:1847,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1849,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/mux_ts.c:1851,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1852,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/mux_ts.c:1854,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1855,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/mux_ts.c:1857,1
    - Dst: gf_m2ts_mux_update_config
      Src: /src/gpac/src/filters/mux_ts.c:1865,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/mux_ts.c:1874,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_ts.c:1876,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/mux_ts.c:1877,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/mux_ts.c:1881,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_ts.c:1886,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_ts.c:1888,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_ts.c:1894,1
    - Dst: tsmux_flush_frag_llhas
      Src: /src/gpac/src/filters/mux_ts.c:1911,1
    - Dst: tsmux_flush_frag_llhas
      Src: /src/gpac/src/filters/mux_ts.c:1917,1
    - Dst: tsmux_insert_sidx
      Src: /src/gpac/src/filters/mux_ts.c:1922,1
    - Dst: tsmux_send_seg_event
      Src: /src/gpac/src/filters/mux_ts.c:1923,1
    - Dst: gf_m2ts_mux_process
      Src: /src/gpac/src/filters/mux_ts.c:1949,1
    - Dst: tsmux_insert_sidx
      Src: /src/gpac/src/filters/mux_ts.c:1957,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_ts.c:1960,1
    - Dst: gf_filter_pck_new_alloc_destructor
      Src: /src/gpac/src/filters/mux_ts.c:1973,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/mux_ts.c:1976,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_ts.c:1980,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_ts.c:1981,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_ts.c:1984,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1985,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_ts.c:1985,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1987,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_ts.c:1987,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1989,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/mux_ts.c:1989,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1991,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_ts.c:1991,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1999,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_ts.c:1999,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_ts.c:2006,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_ts.c:2006,1
    - Dst: gf_m2ts_get_ts_clock_90k
      Src: /src/gpac/src/filters/mux_ts.c:2011,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/mux_ts.c:2012,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/mux_ts.c:2013,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_ts.c:2016,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_ts.c:2017,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_ts.c:2017,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_ts.c:2019,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/mux_ts.c:2019,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_ts.c:2023,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/mux_ts.c:2023,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/mux_ts.c:2026,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_ts.c:2046,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_ts.c:2048,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/mux_ts.c:2052,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/mux_ts.c:2056,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/mux_ts.c:2065,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/mux_ts.c:2066,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/mux_ts.c:2069,1
    - Dst: gf_m2ts_get_sys_clock
      Src: /src/gpac/src/filters/mux_ts.c:2069,1
    - Dst: gf_m2ts_get_ts_clock
      Src: /src/gpac/src/filters/mux_ts.c:2069,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/mux_ts.c:2070,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_ts.c:2074,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_ts.c:2075,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_ts.c:2077,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/mux_ts.c:2088,1
    - Dst: tsmux_insert_sidx
      Src: /src/gpac/src/filters/mux_ts.c:2090,1
    - Dst: tsmux_send_seg_event
      Src: /src/gpac/src/filters/mux_ts.c:2091,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/mux_ts.c:2098,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_ts.c:2103,1
    - Dst: gf_m2ts_get_sys_clock
      Src: /src/gpac/src/filters/mux_ts.c:2103,1
    - Dst: gf_m2ts_get_ts_clock
      Src: /src/gpac/src/filters/mux_ts.c:2103,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/mux_ts.c:2113,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/mux_ts.c:2117,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/mux_ts.c:2122,1
    CyclomaticComplexity: 76
    EdgeCount: 76
    ICount: 241
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2128
      start: 1819
    functionDepth: 6
    functionLinenumber: 1819
    functionLinenumberEnd: 2128
    functionName: tsmux_process
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - PROP_STRING
    - strcpy
    - gf_list_count
    - PROP_FRAC64
    - tsmux_check_mpd_start_time
    - gf_filter_pid_get_packet
    - gf_sys_clock
    - gf_list_get
    - gf_filter_pck_set_property
    - memcpy
    - tsmux_assign_pcr
    - sprintf
    - tsmux_flush_frag_llhas
    - tsmux_init_buffering
    - gf_filter_pck_new_alloc_destructor
    - gf_filter_ask_rt_reschedule
    - gf_filter_get_udta
    - gf_filter_pck_get_property
    - gf_filter_pck_new_alloc
    - gf_filter_update_status
    - gf_m2ts_get_ts_clock_90k
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_m2ts_mux_update_config
    - PROP_UINT
    - gf_filter_pck_set_dts
    - gf_m2ts_get_ts_clock
    - gf_m2ts_mux_process
    - gf_filter_pck_set_cts
    - tsmux_send_seg_event
    - gf_filter_pid_send_flush
    - gf_filter_pck_set_framing
    - gf_m2ts_get_sys_clock
    - gf_filter_reporting_enabled
    - PROP_STRING_NO_COPY
    - tsmux_insert_sidx
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tsmux_process(GF_Filter *filter)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_ts.c:2132,1
    - Dst: gf_filter_set_max_extra_input_pids
      Src: /src/gpac/src/filters/mux_ts.c:2133,1
    - Dst: gf_m2ts_mux_new
      Src: /src/gpac/src/filters/mux_ts.c:2135,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/mux_ts.c:2139,1
    - Dst: gf_m2ts_mux_use_single_au_pes_mode
      Src: /src/gpac/src/filters/mux_ts.c:2142,1
    - Dst: gf_m2ts_mux_set_initial_pcr
      Src: /src/gpac/src/filters/mux_ts.c:2149,1
    - Dst: gf_m2ts_mux_set_pcr_max_interval
      Src: /src/gpac/src/filters/mux_ts.c:2151,1
    - Dst: gf_m2ts_mux_enable_pcr_only_packets
      Src: /src/gpac/src/filters/mux_ts.c:2152,1
    - Dst: gf_m2ts_mux_enable_sdt
      Src: /src/gpac/src/filters/mux_ts.c:2156,1
    - Dst: gf_filter_block_enabled
      Src: /src/gpac/src/filters/mux_ts.c:2159,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/mux_ts.c:2164,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/mux_ts.c:2165,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/mux_ts.c:2168,1
    - Dst: gf_m2ts_get_sys_clock
      Src: /src/gpac/src/filters/mux_ts.c:2169,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2173
      start: 2130
    functionDepth: 3
    functionLinenumber: 2130
    functionLinenumberEnd: 2173
    functionName: tsmux_initialize
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_m2ts_mux_enable_sdt
    - gf_m2ts_mux_use_single_au_pes_mode
    - gf_sys_is_test_mode
    - gf_m2ts_mux_set_initial_pcr
    - gf_m2ts_mux_enable_pcr_only_packets
    - gf_filter_block_enabled
    - gf_m2ts_get_sys_clock
    - gf_filter_set_max_extra_input_pids
    - gf_m2ts_mux_new
    - gf_m2ts_mux_set_pcr_max_interval
    - gf_malloc
    - gf_sys_is_cov_mode
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err tsmux_initialize(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_ts.c:2178,1
    - Dst: gf_m2ts_get_ts_clock
      Src: /src/gpac/src/filters/mux_ts.c:2182,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_ts.c:2184,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_ts.c:2189,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/mux_ts.c:2190,1
    - Dst: tsmux_del_stream
      Src: /src/gpac/src/filters/mux_ts.c:2191,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/mux_ts.c:2193,1
    - Dst: gf_m2ts_mux_del
      Src: /src/gpac/src/filters/mux_ts.c:2194,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ts.c:2195,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ts.c:2196,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_ts.c:2197,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ts.c:2198,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2199
      start: 2176
    functionDepth: 4
    functionLinenumber: 2176
    functionLinenumberEnd: 2199
    functionName: tsmux_finalize
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_m2ts_get_ts_clock
    - GF_LOG
    - gf_bs_del
    - gf_list_count
    - gf_m2ts_mux_del
    - tsmux_del_stream
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void tsmux_finalize(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_ts.c:2205,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_ts.c:2206,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_ts.c:2207,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2221
      start: 2201
    functionDepth: 1
    functionLinenumber: 2201
    functionLinenumberEnd: 2221
    functionName: tsmux_process_event
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool tsmux_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2290
      start: 2289
    functionDepth: 0
    functionLinenumber: 2289
    functionLinenumberEnd: 2290
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2431
      start: 2428
    functionDepth: 0
    functionLinenumber: 2428
    functionLinenumberEnd: 2431
    functionName: m2tsmx_register
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *m2tsmx_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2438
      start: 2435
    functionDepth: 0
    functionLinenumber: 2435
    functionLinenumberEnd: 2438
    functionName: m2tsmx_register
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *m2tsmx_register(GF_FilterSession *session)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_ogg.c:80,1
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filters/mux_ogg.c:81,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/mux_ogg.c:83,1
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filters/mux_ogg.c:84,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - filter
    - pid
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 85
    functionName: oggmux_on_packet_del
    functionSourceFile: /src/gpac/src/filters/mux_ogg.c
    functionUses: 0
    functionsReached:
    - gf_filter_lock
    - gf_filter_post_process_task
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void oggmux_on_packet_del(GF_Filter *filter, GF_FilterPid *pid, GF_FilterPacket
      *pck)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_alloc_destructor
      Src: /src/gpac/src/filters/mux_ogg.c:94,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/mux_ogg.c:97,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_ogg.c:101,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_ogg.c:102,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_ogg.c:105,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_ogg.c:107,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_ogg.c:109,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_ogg.c:111,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_ogg.c:117,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/mux_ogg.c:118,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 3
    argNames:
    - ctx
    - pctx
    - in_pck
    argTypes:
    - OGGMuxCtx*
    - OGGMuxStream*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 122
    functionName: oggmux_send_page
    functionSourceFile: /src/gpac/src/filters/mux_ogg.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_property
    - gf_filter_pck_set_property
    - gf_filter_pck_new_alloc
    - memcpy
    - gf_filter_pck_set_framing
    - gf_filter_pck_new_alloc_destructor
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err oggmux_send_page(OGGMuxCtx *ctx, OGGMuxStream *pctx, GF_FilterPacket
      *in_pck)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ogg.c:126,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_ogg.c:133,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_ogg.c:134,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_ogg.c:135,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/mux_ogg.c:136,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_ogg.c:137,1
    - Dst: ogg_stream_packetin
      Src: /src/gpac/src/filters/mux_ogg.c:138,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ogg.c:139,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_ogg.c:143,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_ogg.c:144,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/mux_ogg.c:145,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/filters/mux_ogg.c:145,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_ogg.c:146,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/mux_ogg.c:147,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_ogg.c:148,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/mux_ogg.c:149,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/mux_ogg.c:150,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_ogg.c:151,1
    - Dst: ogg_stream_packetin
      Src: /src/gpac/src/filters/mux_ogg.c:152,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ogg.c:153,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_ogg.c:156,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_ogg.c:157,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_ogg.c:158,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/mux_ogg.c:159,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_ogg.c:160,1
    - Dst: ogg_stream_packetin
      Src: /src/gpac/src/filters/mux_ogg.c:161,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ogg.c:162,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_ogg.c:165,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/mux_ogg.c:166,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/mux_ogg.c:167,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/mux_ogg.c:168,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/mux_ogg.c:170,1
    - Dst: ogg_stream_packetin
      Src: /src/gpac/src/filters/mux_ogg.c:171,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_ogg.c:175,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/mux_ogg.c:176,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_ogg.c:177,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_ogg.c:178,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_ogg.c:179,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_ogg.c:190,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_ogg.c:193,1
    - Dst: ogg_stream_pageout
      Src: /src/gpac/src/filters/mux_ogg.c:200,1
    - Dst: oggmux_send_page
      Src: /src/gpac/src/filters/mux_ogg.c:201,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 66
    argCount: 3
    argNames:
    - ctx
    - pctx
    - in_pck
    argTypes:
    - OGGMuxCtx*
    - OGGMuxStream*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 124
    functionDepth: 9
    functionLinenumber: 124
    functionLinenumberEnd: 205
    functionName: oggmux_send_config
    functionSourceFile: /src/gpac/src/filters/mux_ogg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - gf_bs_read_u16
    - gf_bs_available
    - gf_bs_write_u32_le
    - ogg_stream_packetin
    - gf_bs_get_content
    - ogg_stream_pageout
    - gf_bs_skip_bytes
    - GF_LOG
    - gf_sys_is_test_mode
    - gf_bs_get_position
    - gf_bs_write_data
    - strlen
    - gf_filter_pid_get_property
    - gf_bs_del
    - gf_gpac_version
    - gf_bs_read_int
    - oggmux_send_page
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err oggmux_send_config(OGGMuxCtx *ctx, OGGMuxStream *pctx, GF_FilterPacket
      *in_pck)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_ogg.c:211,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/mux_ogg.c:213,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/mux_ogg.c:216,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/mux_ogg.c:217,1
    - Dst: ogg_stream_clear
      Src: /src/gpac/src/filters/mux_ogg.c:218,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ogg.c:219,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_ogg.c:222,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/mux_ogg.c:223,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ogg.c:228,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/mux_ogg.c:244,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ogg.c:247,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/mux_ogg.c:254,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/mux_ogg.c:255,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ogg.c:257,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ogg.c:258,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ogg.c:259,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ogg.c:260,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ogg.c:261,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_ogg.c:261,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ogg.c:262,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_ogg.c:262,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ogg.c:263,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_ogg.c:263,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ogg.c:264,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/mux_ogg.c:267,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_ogg.c:269,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/mux_ogg.c:270,1
    - Dst: ogg_stream_init
      Src: /src/gpac/src/filters/mux_ogg.c:273,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/mux_ogg.c:278,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/mux_ogg.c:280,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ogg.c:283,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/mux_ogg.c:286,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ogg.c:288,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_ogg.c:293,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ogg.c:296,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ogg.c:300,1
    - Dst: oggmux_send_config
      Src: /src/gpac/src/filters/mux_ogg.c:311,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 93
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 207
    functionDepth: 10
    functionLinenumber: 207
    functionLinenumberEnd: 312
    functionName: oggmux_configure_pid
    functionSourceFile: /src/gpac/src/filters/mux_ogg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - PROP_STRING
    - gf_list_count
    - oggmux_send_config
    - gf_filter_pid_set_udta
    - gf_filter_pid_new
    - GF_FEVT_INIT
    - gf_list_add
    - gf_filter_pck_discard
    - gf_filter_get_udta
    - gf_filter_pid_copy_properties
    - GF_LOG
    - gf_list_del_item
    - gf_filter_pid_send_event
    - gf_filter_pid_set_property
    - gf_filter_pid_get_udta
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - ogg_stream_init
    - gf_filter_pid_set_framing_mode
    - ogg_stream_clear
    - gf_filter_pid_set_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err oggmux_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_ogg.c:318,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/mux_ogg.c:319,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/mux_ogg.c:322,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - OGGMuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 314
    functionDepth: 1
    functionLinenumber: 314
    functionLinenumberEnd: 327
    functionName: oggmux_send_seg_info
    functionSourceFile: /src/gpac/src/filters/mux_ogg.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: void
    signature: void oggmux_send_seg_info(OGGMuxCtx *ctx)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_ogg.c:331,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_ogg.c:332,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_ogg.c:337,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_ogg.c:338,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/mux_ogg.c:344,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/mux_ogg.c:348,1
    - Dst: gf_filter_pck_dangling_copy
      Src: /src/gpac/src/filters/mux_ogg.c:349,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/mux_ogg.c:350,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/mux_ogg.c:352,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_ogg.c:359,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_ogg.c:369,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_ogg.c:371,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/mux_ogg.c:378,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/mux_ogg.c:386,1
    - Dst: ogg_stream_clear
      Src: /src/gpac/src/filters/mux_ogg.c:390,1
    - Dst: ogg_stream_init
      Src: /src/gpac/src/filters/mux_ogg.c:391,1
    - Dst: oggmux_send_config
      Src: /src/gpac/src/filters/mux_ogg.c:393,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_ogg.c:418,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/mux_ogg.c:422,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/mux_ogg.c:425,1
    - Dst: ogg_stream_packetin
      Src: /src/gpac/src/filters/mux_ogg.c:428,1
    - Dst: ogg_stream_pageout
      Src: /src/gpac/src/filters/mux_ogg.c:430,1
    - Dst: oggmux_send_page
      Src: /src/gpac/src/filters/mux_ogg.c:431,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_ogg.c:434,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_ogg.c:441,1
    - Dst: ogg_stream_flush
      Src: /src/gpac/src/filters/mux_ogg.c:443,1
    - Dst: oggmux_send_page
      Src: /src/gpac/src/filters/mux_ogg.c:444,1
    - Dst: ogg_stream_clear
      Src: /src/gpac/src/filters/mux_ogg.c:446,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/mux_ogg.c:448,1
    - Dst: oggmux_send_seg_info
      Src: /src/gpac/src/filters/mux_ogg.c:449,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_ogg.c:462,1
    - Dst: ogg_stream_flush
      Src: /src/gpac/src/filters/mux_ogg.c:465,1
    - Dst: oggmux_send_page
      Src: /src/gpac/src/filters/mux_ogg.c:466,1
    - Dst: oggmux_send_seg_info
      Src: /src/gpac/src/filters/mux_ogg.c:468,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/mux_ogg.c:475,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_ogg.c:478,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 126
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 486
      start: 328
    functionDepth: 10
    functionLinenumber: 328
    functionLinenumberEnd: 486
    functionName: oggmux_process
    functionSourceFile: /src/gpac/src/filters/mux_ogg.c
    functionUses: 0
    functionsReached:
    - oggmux_send_seg_info
    - gf_list_count
    - gf_filter_pck_dangling_copy
    - oggmux_send_config
    - gf_filter_pck_get_frame_interface
    - gf_filter_pid_get_packet
    - ogg_stream_packetin
    - gf_list_get
    - ogg_stream_pageout
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_duration
    - gf_filter_get_udta
    - gf_filter_pck_get_property
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_sap
    - gf_filter_pid_is_eos
    - ogg_stream_flush
    - ogg_stream_init
    - gf_timestamp_greater_or_equal
    - gf_timestamp_greater
    - ogg_stream_clear
    - oggmux_send_page
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err oggmux_process(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_ogg.c:490,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 488
    functionDepth: 1
    functionLinenumber: 488
    functionLinenumberEnd: 498
    functionName: oggmux_process_event
    functionSourceFile: /src/gpac/src/filters/mux_ogg.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool oggmux_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_ogg.c:502,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/mux_ogg.c:503,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 512
      start: 500
    functionDepth: 1
    functionLinenumber: 500
    functionLinenumberEnd: 512
    functionName: oggmux_initialize
    functionSourceFile: /src/gpac/src/filters/mux_ogg.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err oggmux_initialize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_ogg.c:516,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_ogg.c:518,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/mux_ogg.c:519,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/mux_ogg.c:520,1
    - Dst: ogg_stream_clear
      Src: /src/gpac/src/filters/mux_ogg.c:521,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ogg.c:522,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/mux_ogg.c:524,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 514
    functionDepth: 3
    functionLinenumber: 514
    functionLinenumberEnd: 525
    functionName: oggmux_finalize
    functionSourceFile: /src/gpac/src/filters/mux_ogg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_list_count
    - ogg_stream_clear
    - gf_filter_pck_discard
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void oggmux_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 527
    functionDepth: 0
    functionLinenumber: 527
    functionLinenumberEnd: 528
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/mux_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 583
      start: 575
    functionDepth: 0
    functionLinenumber: 575
    functionLinenumberEnd: 583
    functionName: oggmx_register
    functionSourceFile: /src/gpac/src/filters/mux_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *oggmx_register(GF_FilterSession *session)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_webcodec.c:61,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - state
    - msg
    argTypes:
    - GF_WCDecCtx*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 68
    functionName: wcdec_on_error
    functionSourceFile: /src/gpac/src/filters/dec_webcodec.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT wcdec_on_error(GF_WCDecCtx *ctx, int state, char *msg)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: UTF8ToString
      Src: /src/gpac/src/filters/dec_webcodec.c:71,1
    - Dst: Uint8Array::Uint8Array
      Src: /src/gpac/src/filters/dec_webcodec.c:85,1
    - Dst: for
      Src: /src/gpac/src/filters/dec_webcodec.c:91,1
    - Dst: if
      Src: /src/gpac/src/filters/dec_webcodec.c:92,1
    - Dst: cwrap
      Src: /src/gpac/src/filters/dec_webcodec.c:96,1
    - Dst: cwrap
      Src: /src/gpac/src/filters/dec_webcodec.c:97,1
    - Dst: cwrap
      Src: /src/gpac/src/filters/dec_webcodec.c:98,1
    - Dst: cwrap
      Src: /src/gpac/src/filters/dec_webcodec.c:99,1
    - Dst: cwrap
      Src: /src/gpac/src/filters/dec_webcodec.c:100,1
    - Dst: _to_webdec
      Src: /src/gpac/src/filters/dec_webcodec.c:102,1
    - Dst: _web_decs::push
      Src: /src/gpac/src/filters/dec_webcodec.c:105,1
    - Dst: isConfigSupported
      Src: /src/gpac/src/filters/dec_webcodec.c:107,1
    - Dst: if
      Src: /src/gpac/src/filters/dec_webcodec.c:108,1
    - Dst: if
      Src: /src/gpac/src/filters/dec_webcodec.c:109,1
    - Dst: _on_wcdec_error
      Src: /src/gpac/src/filters/dec_webcodec.c:112,1
    - Dst: _on_wcdec_frame
      Src: /src/gpac/src/filters/dec_webcodec.c:118,1
    - Dst: BigInt
      Src: /src/gpac/src/filters/dec_webcodec.c:118,1
    - Dst: close
      Src: /src/gpac/src/filters/dec_webcodec.c:119,1
    - Dst: _on_wcdec_audio
      Src: /src/gpac/src/filters/dec_webcodec.c:124,1
    - Dst: BigInt
      Src: /src/gpac/src/filters/dec_webcodec.c:124,1
    - Dst: close
      Src: /src/gpac/src/filters/dec_webcodec.c:125,1
    - Dst: dec_class::dec_class
      Src: /src/gpac/src/filters/dec_webcodec.c:129,1
    - Dst: _on_wcdec_error
      Src: /src/gpac/src/filters/dec_webcodec.c:137,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_webcodec.c:146,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_webcodec.c:150,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_webcodec.c:155,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_webcodec.c:158,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_webcodec.c:160,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_webcodec.c:166,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_webcodec.c:170,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_webcodec.c:171,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_webcodec.c:179,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dec_webcodec.c:180,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_webcodec.c:184,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_webcodec.c:185,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_webcodec.c:185,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_webcodec.c:186,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_webcodec.c:201,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_webcodec.c:206,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_webcodec.c:212,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_webcodec.c:215,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_webcodec.c:221,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_webcodec.c:221,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_webcodec.c:223,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_webcodec.c:226,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_webcodec.c:231,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_webcodec.c:231,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dec_webcodec.c:234,1
    - Dst: gf_filter_pid_get_rfc_6381_codec_string
      Src: /src/gpac/src/filters/dec_webcodec.c:237,1
    - Dst: strlwr
      Src: /src/gpac/src/filters/dec_webcodec.c:238,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 85
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 251
    functionName: EM_JS
    functionSourceFile: /src/gpac/src/filters/dec_webcodec.c
    functionUses: 0
    functionsReached:
    - for
    - strcpy
    - BigInt
    - gf_filter_pid_check_caps
    - _on_wcdec_frame
    - gf_filter_pid_new
    - _on_wcdec_audio
    - close
    - strlwr
    - if
    - gf_crc_32
    - gf_filter_get_udta
    - _on_wcdec_error
    - gf_filter_pid_copy_properties
    - UTF8ToString
    - GF_LOG
    - dec_class::dec_class
    - _to_webdec
    - gf_filter_pid_set_property
    - gf_filter_pid_get_rfc_6381_codec_string
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - cwrap
    - gf_filter_pid_set_framing_mode
    - isConfigSupported
    - Uint8Array::Uint8Array
    - _web_decs::push
    linkageType: ''
    returnType: void
    signature: "void EM_JS(int, wcdec_init, (int wc_ctx, int _codec_str, int width,
      int height, int sample_rate, int num_channels, int dsi, int dsi_size), {\n\tlet
      codec_str = _codec_str ? UTF8ToString(_codec_str) : null;\n\tlet config = {};\n\tconfig.codec
      = codec_str;\n\tlet dec_class = null;\n\tif (width) {\n\t\tconfig.codedWidth
      = width;\n\t\tconfig.codedHeight = height;\n\t\tdec_class = VideoDecoder;\n\t}
      else {\n\t\tconfig.sampleRate = sample_rate;\n\t\tconfig.numberOfChannels =
      num_channels;\n\t\tdec_class = AudioDecoder;\n\t}\n\tif (dsi_size) {\n\t\tconfig.description
      = new Uint8Array(HEAPU8.buffer, dsi, dsi_size);\n\t}\n\n\tif (typeof libgpac._to_webdec
      != 'function') {\n\t\tlibgpac._web_decs = [];\n\t\tlibgpac._to_webdec = (ctx)
      => {\n          for (let i=0; i<libgpac._web_decs.length; i++) {\n            if
      (libgpac._web_decs[i]._wc_ctx==ctx) return libgpac._web_decs[i];\n          }\n
      \         return null;\n\t\t};\n\t\tlibgpac._on_wcdec_error = cwrap('wcdec_on_error',
      null, ['number', 'number', 'string']);\n\t\tlibgpac._on_wcdec_frame = cwrap('wcdec_on_video',
      null, ['number', 'bigint', 'string', 'number', 'number']);\n\t\tlibgpac._on_wcdec_audio
      = cwrap('wcdec_on_audio', null, ['number', 'bigint', 'string', 'number', 'number',
      'number']);\n\t\tlibgpac._on_wcdec_flush = cwrap('wcdec_on_flush', null, ['number']);\n\t\tlibgpac._on_wcdec_frame_copy
      = cwrap('wcdec_on_frame_copy', null, ['number', 'number', 'number']);\n\t}\n\tlet
      c = libgpac._to_webdec(wc_ctx);\n\tif (!c) {\n\t\tc = {_wc_ctx: wc_ctx, dec:
      null, _frame: null};\n\t\tlibgpac._web_decs.push(c);\n\t}\n\tdec_class.isConfigSupported(config).then(
      supported => {\n\t\tif (supported.supported) {\n\t\t\tif (!c.dec) {\n\t\t\t\tlet
      init_info = {\n\t\t\t\t\terror: (e) => {\n\t\t\t\t\t\tlibgpac._on_wcdec_error(c._wc_ctx,
      1, \"\"+e);\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t\tif (width && height) {\n\t\t\t\t\tinit_info.output
      = (frame) => {\n\t\t\t\t\t\tc._frame = frame;\n\t\t\t\t\t\tlibgpac._on_wcdec_frame(c._wc_ctx,
      BigInt(frame.timestamp), frame.format, frame.codedWidth, frame.codedHeight);\n\t\t\t\t\t\tif
      (c._frame) frame.close();\n\t\t\t\t\t};\n\t\t\t\t} else {\n\t\t\t\t\tinit_info.output
      = (frame) => {\n\t\t\t\t\t\tc._frame = frame;\n\t\t\t\t\t\tlibgpac._on_wcdec_audio(c._wc_ctx,
      BigInt(frame.timestamp), frame.format, frame.numberOfFrames, frame.numberOfChannels,
      frame.sampleRate);\n\t\t\t\t\t\tif (c._frame) frame.close();\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\tc.dec
      = new dec_class(init_info);\n\t\t\t}\n\t\t\tc.dec.configure(config);\n\t\t\tlibgpac._on_wcdec_error(c._wc_ctx,
      0, null);\n\t\t} else {\n\t\t\tlibgpac._on_wcdec_error(c._wc_ctx, 1, null);\n\t\t}\n\t}).catch(
      (e) => {\n\t\tlibgpac._on_wcdec_error(c._wc_ctx, 1, \"\"+e);\n\t});\n})"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _to_webdec
      Src: /src/gpac/src/filters/dec_webcodec.c:256,1
    - Dst: Number
      Src: /src/gpac/src/filters/dec_webcodec.c:259,1
    - Dst: Uint8Array::Uint8Array
      Src: /src/gpac/src/filters/dec_webcodec.c:261,1
    - Dst: EncodedVideoChunk::EncodedVideoChunk
      Src: /src/gpac/src/filters/dec_webcodec.c:258,1
    - Dst: dec::decode
      Src: /src/gpac/src/filters/dec_webcodec.c:256,1
    - Dst: _to_webdec
      Src: /src/gpac/src/filters/dec_webcodec.c:267,1
    - Dst: Number
      Src: /src/gpac/src/filters/dec_webcodec.c:270,1
    - Dst: Uint8Array::Uint8Array
      Src: /src/gpac/src/filters/dec_webcodec.c:272,1
    - Dst: EncodedAudioChunk::EncodedAudioChunk
      Src: /src/gpac/src/filters/dec_webcodec.c:269,1
    - Dst: let::dec::decode
      Src: /src/gpac/src/filters/dec_webcodec.c:274,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 5
    argNames:
    - wc_ctx
    - buf
    - buf_size
    - key
    - ts
    argTypes:
    - int
    - int
    - int
    - int
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 275
    functionName: EM_JS
    functionSourceFile: /src/gpac/src/filters/dec_webcodec.c
    functionUses: 0
    functionsReached:
    - let::dec::decode
    - Number
    - dec::decode
    - EncodedVideoChunk::EncodedVideoChunk
    - _to_webdec
    - EncodedAudioChunk::EncodedAudioChunk
    - Uint8Array::Uint8Array
    linkageType: ''
    returnType: void
    signature: "void EM_JS(int, wcdec_push_frame, (int wc_ctx, int buf, int buf_size,
      int key, u64 ts), {\n\tlet c = libgpac._to_webdec(wc_ctx);\n\tif (!c || !c.dec)
      return;\n\tconst chunk = new EncodedVideoChunk({\n\t\ttimestamp: Number(ts),\n\t\ttype:
      key ? \"key\" : \"delta\",\n\t\tdata: new Uint8Array(HEAPU8.buffer, buf, buf_size)\n
      \ });\n  c.dec.decode(chunk);\n})\n\nEM_JS(int, wcdec_push_audio, (int wc_ctx,
      int buf, int buf_size, int key, u64 ts)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_webcodec.c:303,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dec_webcodec.c:305,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_webcodec.c:308,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - ctx
    - pck
    - res_ok
    argTypes:
    - GF_WCDecCtx*
    - GF_FilterPacket*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 296
    functionDepth: 1
    functionLinenumber: 296
    functionLinenumberEnd: 309
    functionName: wcdec_on_frame_copy
    functionSourceFile: /src/gpac/src/filters/dec_webcodec.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_discard
    - gf_filter_pid_set_eos
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void wcdec_on_frame_copy(GF_WCDecCtx *ctx, GF_FilterPacket *pck, int
      res_ok)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/filters/dec_webcodec.c:313,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dec_webcodec.c:314,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dec_webcodec.c:315,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dec_webcodec.c:316,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dec_webcodec.c:317,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dec_webcodec.c:318,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dec_webcodec.c:319,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dec_webcodec.c:320,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dec_webcodec.c:321,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - format
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 311
    functionDepth: 0
    functionLinenumber: 311
    functionLinenumberEnd: 323
    functionName: webcodec_pixfmt_to_gpac
    functionSourceFile: /src/gpac/src/filters/dec_webcodec.c
    functionUses: 0
    functionsReached:
    - stricmp
    linkageType: ''
    returnType: u32
    signature: u32 webcodec_pixfmt_to_gpac(char *format)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: webcodec_pixfmt_to_gpac
      Src: /src/gpac/src/filters/dec_webcodec.c:332,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_webcodec.c:334,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/dec_webcodec.c:341,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_webcodec.c:342,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_webcodec.c:342,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_webcodec.c:343,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_webcodec.c:343,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_webcodec.c:344,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_webcodec.c:344,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dec_webcodec.c:347,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_webcodec.c:349,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_webcodec.c:351,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_webcodec.c:355,1
    - Dst: ABS
      Src: /src/gpac/src/filters/dec_webcodec.c:356,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dec_webcodec.c:357,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dec_webcodec.c:363,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_webcodec.c:365,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dec_webcodec.c:368,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_webcodec.c:370,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_webcodec.c:371,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 42
    argCount: 5
    argNames:
    - ctx
    - timestamp
    - format
    - width
    - height
    argTypes:
    - GF_WCDecCtx*
    - u64
    - char*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 324
    functionDepth: 5
    functionLinenumber: 324
    functionLinenumberEnd: 379
    functionName: wcdec_on_video
    functionSourceFile: /src/gpac/src/filters/dec_webcodec.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - ABS
    - gf_filter_pck_new_alloc
    - PROP_UINT
    - gf_filter_pck_set_cts
    - GF_LOG
    - gf_filter_pck_merge_properties
    - webcodec_pixfmt_to_gpac
    - gf_filter_pck_unref
    - gf_list_count
    - gf_pixel_get_size_info
    - gf_filter_pck_get_cts
    - gf_filter_pid_set_property
    - gf_timestamp_rescale
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT wcdec_on_video(GF_WCDecCtx *ctx, u64 timestamp, char *format,
      u32 width, u32 height)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/filters/dec_webcodec.c:393,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dec_webcodec.c:394,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dec_webcodec.c:395,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dec_webcodec.c:396,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dec_webcodec.c:397,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dec_webcodec.c:398,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dec_webcodec.c:399,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dec_webcodec.c:400,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - format
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 391
    functionDepth: 0
    functionLinenumber: 391
    functionLinenumberEnd: 402
    functionName: webcodec_audiofmt_to_gpac
    functionSourceFile: /src/gpac/src/filters/dec_webcodec.c
    functionUses: 0
    functionsReached:
    - stricmp
    linkageType: ''
    returnType: u32
    signature: u32 webcodec_audiofmt_to_gpac(char *format)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: webcodec_audiofmt_to_gpac
      Src: /src/gpac/src/filters/dec_webcodec.c:412,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_webcodec.c:414,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_webcodec.c:419,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_webcodec.c:419,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_webcodec.c:421,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_webcodec.c:421,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_webcodec.c:423,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_webcodec.c:423,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/dec_webcodec.c:424,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dec_webcodec.c:427,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_webcodec.c:430,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_webcodec.c:432,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_webcodec.c:436,1
    - Dst: ABS
      Src: /src/gpac/src/filters/dec_webcodec.c:437,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dec_webcodec.c:438,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dec_webcodec.c:444,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_webcodec.c:446,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dec_webcodec.c:449,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_webcodec.c:451,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_webcodec.c:452,1
    - Dst: gf_audio_fmt_is_planar
      Src: /src/gpac/src/filters/dec_webcodec.c:457,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_webcodec.c:469,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 50
    argCount: 6
    argNames:
    - ctx
    - timestamp
    - format
    - num_frames
    - num_channels
    - sample_rate
    argTypes:
    - GF_WCDecCtx*
    - u64
    - char*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 404
    functionDepth: 1
    functionLinenumber: 404
    functionLinenumberEnd: 470
    functionName: wcdec_on_audio
    functionSourceFile: /src/gpac/src/filters/dec_webcodec.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - ABS
    - gf_filter_pck_new_alloc
    - PROP_UINT
    - gf_filter_pck_set_cts
    - GF_LOG
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - gf_list_count
    - gf_audio_fmt_is_planar
    - gf_filter_pck_get_cts
    - gf_list_rem
    - gf_timestamp_rescale
    - gf_filter_pid_set_property
    - webcodec_audiofmt_to_gpac
    - gf_audio_fmt_bit_depth
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT wcdec_on_audio(GF_WCDecCtx *ctx, u64 timestamp, char *format,
      u32 num_frames, u32 num_channels, u32 sample_rate)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_webcodec.c:477,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_WCDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 472
    functionDepth: 1
    functionLinenumber: 472
    functionLinenumberEnd: 478
    functionName: wcdec_on_flush
    functionSourceFile: /src/gpac/src/filters/dec_webcodec.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_eos
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT wcdec_on_flush(GF_WCDecCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _to_webdec
      Src: /src/gpac/src/filters/dec_webcodec.c:481,1
    - Dst: flush
      Src: /src/gpac/src/filters/dec_webcodec.c:481,1
    - Dst: _on_wcdec_flush
      Src: /src/gpac/src/filters/dec_webcodec.c:483,1
    - Dst: _on_wcdec_flush
      Src: /src/gpac/src/filters/dec_webcodec.c:483,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 480
    functionDepth: 0
    functionLinenumber: 480
    functionLinenumberEnd: 483
    functionName: EM_JS
    functionSourceFile: /src/gpac/src/filters/dec_webcodec.c
    functionUses: 0
    functionsReached:
    - flush
    - _on_wcdec_flush
    - _to_webdec
    linkageType: ''
    returnType: void
    signature: "void EM_JS(int, wcdec_flush, (int wc_ctx), {\n\tlet c = libgpac._to_webdec(wc_ctx);\n\tif
      (!c || !c.dec) return;\n\tc.dec.flush().then( () => { libgpac._on_wcdec_flush(c._wc_ctx);
      }).catch ( (e)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_webcodec.c:494,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_webcodec.c:502,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dec_webcodec.c:508,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_webcodec.c:514,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_webcodec.c:516,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dec_webcodec.c:522,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dec_webcodec.c:529,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_webcodec.c:535,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/dec_webcodec.c:537,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_webcodec.c:540,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dec_webcodec.c:541,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_webcodec.c:541,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/dec_webcodec.c:542,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/dec_webcodec.c:550,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_webcodec.c:551,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_webcodec.c:552,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 52
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 557
      start: 487
    functionDepth: 1
    functionLinenumber: 487
    functionLinenumberEnd: 557
    functionName: wcdec_process
    functionSourceFile: /src/gpac/src/filters/dec_webcodec.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - gf_filter_ask_rt_reschedule
    - gf_list_count
    - gf_list_add
    - gf_filter_pck_ref_props
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_sap
    - gf_filter_pid_is_eos
    - gf_timestamp_rescale
    - gf_filter_pid_get_packet
    - gf_filter_post_process_task
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err wcdec_process(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_webcodec.c:561,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 559
    functionDepth: 1
    functionLinenumber: 559
    functionLinenumberEnd: 573
    functionName: wcdec_process_event
    functionSourceFile: /src/gpac/src/filters/dec_webcodec.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool wcdec_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_webcodec.c:577,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_webcodec.c:579,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 581
      start: 575
    functionDepth: 1
    functionLinenumber: 575
    functionLinenumberEnd: 581
    functionName: wcdec_initialize
    functionSourceFile: /src/gpac/src/filters/dec_webcodec.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err wcdec_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_webcodec.c:597,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_webcodec.c:600,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_webcodec.c:601,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_webcodec.c:602,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_webcodec.c:604,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 595
    functionDepth: 3
    functionLinenumber: 595
    functionLinenumberEnd: 605
    functionName: wcdec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_webcodec.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_back
    - gf_filter_pck_unref
    - gf_list_count
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void wcdec_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 627
      start: 624
    functionDepth: 0
    functionLinenumber: 624
    functionLinenumberEnd: 627
    functionName: wcdec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_webcodec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err wcdec_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 628
    functionDepth: 0
    functionLinenumber: 628
    functionLinenumberEnd: 631
    functionName: wcdec_process
    functionSourceFile: /src/gpac/src/filters/dec_webcodec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err wcdec_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 648
      start: 647
    functionDepth: 0
    functionLinenumber: 647
    functionLinenumberEnd: 648
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dec_webcodec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: EM_ASM_INT
      Src: /src/gpac/src/filters/dec_webcodec.c:679,1
    - Dst: EM_ASM_INT
      Src: /src/gpac/src/filters/dec_webcodec.c:683,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_webcodec.c:689,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_webcodec.c:699,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/dec_webcodec.c:701,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 675
    functionDepth: 6
    functionLinenumber: 675
    functionLinenumberEnd: 709
    functionName: wcdec_register
    functionSourceFile: /src/gpac/src/filters/dec_webcodec.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_opts_get_bool
    - EM_ASM_INT
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *wcdec_register(GF_FilterSession *session)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/load_svg.c:68,1
    - Dst: inflateInit2
      Src: /src/gpac/src/filters/load_svg.c:75,1
    - Dst: inflateInit
      Src: /src/gpac/src/filters/load_svg.c:77,1
    - Dst: inflate
      Src: /src/gpac/src/filters/load_svg.c:83,1
    - Dst: gf_sm_load_string
      Src: /src/gpac/src/filters/load_svg.c:89,1
    - Dst: inflateEnd
      Src: /src/gpac/src/filters/load_svg.c:95,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 4
    argNames:
    - svgin
    - buffer
    - buffer_len
    - is_dims
    argTypes:
    - SVGIn*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 61
    functionDepth: 2
    functionLinenumber: 61
    functionLinenumberEnd: 99
    functionName: svgin_deflate
    functionSourceFile: /src/gpac/src/filters/load_svg.c
    functionUses: 0
    functionsReached:
    - gf_sm_load_string
    - inflateEnd
    - inflateInit2
    - memset
    - inflateInit
    - inflate
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svgin_deflate(SVGIn *svgin, const char *buffer, u32 buffer_len,
      Bool is_dims)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/load_svg.c:110,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/load_svg.c:115,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/load_svg.c:123,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/load_svg.c:127,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/load_svg.c:129,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/load_svg.c:130,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_svg.c:132,1
    - Dst: gf_fileio_from_mem
      Src: /src/gpac/src/filters/load_svg.c:133,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/filters/load_svg.c:134,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/load_svg.c:136,1
    - Dst: svgin_configure_pid
      Src: /src/gpac/src/filters/load_svg.c:137,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/load_svg.c:145,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/load_svg.c:147,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/load_svg.c:148,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/load_svg.c:153,1
    - Dst: gf_sm_load_string
      Src: /src/gpac/src/filters/load_svg.c:154,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/load_svg.c:155,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/load_svg.c:160,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/load_svg.c:162,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/load_svg.c:163,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/load_svg.c:168,1
    - Dst: svgin_deflate
      Src: /src/gpac/src/filters/load_svg.c:169,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/load_svg.c:170,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/load_svg.c:182,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/load_svg.c:184,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/load_svg.c:185,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/load_svg.c:190,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/load_svg.c:192,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/load_svg.c:193,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/load_svg.c:194,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/load_svg.c:197,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/load_svg.c:199,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/load_svg.c:200,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/load_svg.c:201,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/load_svg.c:205,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/load_svg.c:212,1
    - Dst: svgin_deflate
      Src: /src/gpac/src/filters/load_svg.c:217,1
    - Dst: gf_sm_load_string
      Src: /src/gpac/src/filters/load_svg.c:219,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/load_svg.c:222,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/load_svg.c:226,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_svg.c:227,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/load_svg.c:236,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/load_svg.c:238,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/load_svg.c:239,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/src/filters/load_svg.c:245,1
    - Dst: gf_sm_load_run
      Src: /src/gpac/src/filters/load_svg.c:246,1
    - Dst: gf_gzopen
      Src: /src/gpac/src/filters/load_svg.c:255,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/src/filters/load_svg.c:258,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/load_svg.c:261,1
    - Dst: gf_gzread
      Src: /src/gpac/src/filters/load_svg.c:266,1
    - Dst: gf_gzeof
      Src: /src/gpac/src/filters/load_svg.c:269,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/filters/load_svg.c:270,1
    - Dst: gf_gzclose
      Src: /src/gpac/src/filters/load_svg.c:271,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/src/filters/load_svg.c:273,1
    - Dst: gf_sm_load_string
      Src: /src/gpac/src/filters/load_svg.c:280,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/filters/load_svg.c:289,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/load_svg.c:290,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/filters/load_svg.c:300,1
    - Dst: gf_scene_attach_to_compositor
      Src: /src/gpac/src/filters/load_svg.c:301,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/src/filters/load_svg.c:305,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/load_svg.c:307,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/load_svg.c:310,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/load_svg.c:312,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 172
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 103
    functionDepth: 12
    functionLinenumber: 103
    functionLinenumberEnd: 318
    functionName: svgin_process
    functionSourceFile: /src/gpac/src/filters/load_svg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_set_progress
    - gf_fileio_url
    - gf_bs_new
    - gf_sm_load_init
    - gf_sm_load_run
    - gf_bs_read_u16
    - gf_bs_available
    - gf_filter_pid_get_packet
    - gf_sys_clock
    - gf_scene_attach_to_compositor
    - svgin_deflate
    - gf_bs_read_u32
    - gf_gzclose
    - gf_filter_pck_get_framing
    - memcpy
    - svgin_configure_pid
    - gf_sg_get_root_node
    - gf_bs_skip_bytes
    - gf_filter_get_udta
    - gf_sm_load_string
    - gf_filter_pck_ref
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - gf_filter_pid_set_eos
    - gf_bs_get_position
    - gf_gzopen
    - gf_sm_load_done
    - gf_bs_read_u8
    - gf_filter_pid_is_eos
    - gf_fileio_from_mem
    - gf_malloc
    - gf_fclose
    - gf_filter_pid_get_property
    - gf_filter_pck_unref
    - gf_bs_del
    - gf_gzeof
    - gf_gzread
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svgin_process(GF_Filter *filter)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/load_svg.c:322,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/load_svg.c:330,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_svg.c:333,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_svg.c:336,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_svg.c:339,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/load_svg.c:345,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/load_svg.c:373,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/load_svg.c:377,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/load_svg.c:388,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/load_svg.c:390,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_svg.c:391,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_svg.c:391,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_svg.c:392,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_svg.c:392,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_svg.c:393,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/load_svg.c:393,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/load_svg.c:394,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/load_svg.c:398,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/load_svg.c:400,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/load_svg.c:402,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/load_svg.c:404,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 67
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 320
    functionDepth: 1
    functionLinenumber: 320
    functionLinenumberEnd: 408
    functionName: svgin_configure_pid
    functionSourceFile: /src/gpac/src/filters/load_svg.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_set_udta
    - PROP_BOOL
    - gf_filter_set_name
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_set_framing_mode
    - GF_FEVT_INIT
    - gf_filter_pid_check_caps
    - gf_filter_pid_send_event
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svgin_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/load_svg.c:413,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/src/filters/load_svg.c:423,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/load_svg.c:431,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/load_svg.c:433,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/load_svg.c:434,1
    - Dst: memset
      Src: /src/gpac/src/filters/load_svg.c:441,1
    - Dst: gf_get_default_cache_directory
      Src: /src/gpac/src/filters/load_svg.c:444,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/src/filters/load_svg.c:451,1
    - Dst: gf_clock_set_time
      Src: /src/gpac/src/filters/load_svg.c:454,1
    - Dst: gf_odm_check_buffering
      Src: /src/gpac/src/filters/load_svg.c:457,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 2
    argNames:
    - filter
    - com
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 410
    functionDepth: 12
    functionLinenumber: 410
    functionLinenumberEnd: 464
    functionName: svgin_process_event
    functionSourceFile: /src/gpac/src/filters/load_svg.c
    functionUses: 0
    functionsReached:
    - gf_get_default_cache_directory
    - gf_sm_load_init
    - gf_odm_check_buffering
    - gf_clock_set_time
    - memset
    - gf_filter_get_ipid
    - gf_sm_load_done
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool svgin_process_event(GF_Filter *filter, const GF_FilterEvent *com)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 482
    functionDepth: 0
    functionLinenumber: 482
    functionLinenumberEnd: 483
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/load_svg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 508
    functionDepth: 0
    functionLinenumber: 508
    functionLinenumberEnd: 515
    functionName: svgplay_register
    functionSourceFile: /src/gpac/src/filters/load_svg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *svgplay_register(GF_FilterSession *session)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_h263.c:80,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/reframe_h263.c:85,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/reframe_h263.c:90,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_h263.c:94,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_h263.c:98,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_h263.c:99,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_h263.c:100,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 107
    functionName: h263dmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/reframe_h263.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h263dmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_h263.c:115,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/reframe_h263.c:118,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_h263.c:127,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_h263.c:128,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_h263.c:131,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_h263.c:132,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_h263.c:138,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/filters/reframe_h263.c:139,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 110
    functionDepth: 7
    functionLinenumber: 110
    functionLinenumberEnd: 141
    functionName: h263dmx_next_start_code_bs
    functionSourceFile: /src/gpac/src/filters/reframe_h263.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_seek
    - gf_bs_get_size
    - gf_bs_get_position
    - gf_bs_read_u16
    - gf_bs_available
    linkageType: ''
    returnType: u32
    signature: u32 h263dmx_next_start_code_bs(GF_BitStream *bs)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_h263.c:156,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_h263.c:157,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/reframe_h263.c:164,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/reframe_h263.c:166,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/filters/reframe_h263.c:173,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_h263.c:176,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_h263.c:178,1
    - Dst: h263dmx_next_start_code_bs
      Src: /src/gpac/src/filters/reframe_h263.c:179,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_h263.c:180,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_h263.c:181,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_h263.c:194,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_h263.c:202,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_h263.c:204,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_h263.c:205,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/reframe_h263.c:206,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_h263.c:212,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_h263.c:212,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_h263.c:222,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 62
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_H263DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 142
    functionDepth: 8
    functionLinenumber: 142
    functionLinenumberEnd: 224
    functionName: h263dmx_check_dur
    functionSourceFile: /src/gpac/src/filters/reframe_h263.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_bs_read_u32
    - gf_filter_pid_get_property
    - gf_bs_seek
    - gf_fileio_is_main_thread
    - gf_bs_get_position
    - gf_bs_del
    - PROP_FRAC64
    - strncmp
    - h263dmx_next_start_code_bs
    - gf_fopen_ex
    - gf_bs_read_u8
    - gf_bs_available
    - gf_bs_from_file
    - gf_filter_pid_set_property
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void h263dmx_check_dur(GF_Filter *filter, GF_H263DmxCtx *ctx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_h263.c:230,1
    - Dst: h263dmx_check_dur
      Src: /src/gpac/src/filters/reframe_h263.c:231,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_h263.c:237,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_h263.c:239,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_h263.c:239,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_h263.c:241,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_h263.c:241,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_h263.c:242,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_h263.c:243,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_h263.c:243,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_h263.c:244,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_h263.c:244,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_h263.c:245,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_h263.c:245,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_h263.c:246,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/reframe_h263.c:246,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_h263.c:250,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_h263.c:250,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_h263.c:251,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_h263.c:251,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_h263.c:254,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_h263.c:254,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_h263.c:258,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_h263.c:258,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 4
    argNames:
    - filter
    - ctx
    - width
    - height
    argTypes:
    - GF_Filter*
    - GF_H263DmxCtx*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 226
    functionDepth: 9
    functionLinenumber: 226
    functionLinenumberEnd: 260
    functionName: h263dmx_check_pid
    functionSourceFile: /src/gpac/src/filters/reframe_h263.c
    functionUses: 0
    functionsReached:
    - PROP_BOOL
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - PROP_FRAC
    - PROP_FRAC64
    - h263dmx_check_dur
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: void
    signature: void h263dmx_check_pid(GF_Filter *filter, GF_H263DmxCtx *ctx, u32 width,
      u32 height)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_h263.c:267,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_h263.c:298,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_h263.c:300,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 319
    functionName: h263dmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_h263.c
    functionUses: 0
    functionsReached:
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool h263dmx_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_h263.c:323,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_h263.c:324,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_H263DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 321
    functionDepth: 1
    functionLinenumber: 321
    functionLinenumberEnd: 334
    functionName: h263dmx_update_cts
    functionSourceFile: /src/gpac/src/filters/reframe_h263.c
    functionUses: 0
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE h263dmx_update_cts(GF_H263DmxCtx *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 337
    functionDepth: 0
    functionLinenumber: 337
    functionLinenumberEnd: 356
    functionName: h263dmx_next_start_code
    functionSourceFile: /src/gpac/src/filters/reframe_h263.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: s32
    signature: s32 h263dmx_next_start_code(u8 *data, u32 size)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 4
    argNames:
    - bs
    - fmt
    - w
    - h
    argTypes:
    - GF_BitStream*
    - u32
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 358
    functionDepth: 0
    functionLinenumber: 358
    functionLinenumberEnd: 385
    functionName: h263_get_pic_size
    functionSourceFile: /src/gpac/src/filters/reframe_h263.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void h263_get_pic_size(GF_BitStream *bs, u32 fmt, u32 *w, u32 *h)
  - BBCount: 50
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_h263.c:389,1
    - Dst: h263dmx_check_dur
      Src: /src/gpac/src/filters/reframe_h263.c:400,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_h263.c:402,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_h263.c:404,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_h263.c:406,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_h263.c:407,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_h263.c:414,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_h263.c:415,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:424,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_h263.c:426,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:430,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_h263.c:441,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_h263.c:445,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_h263.c:447,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/reframe_h263.c:451,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:467,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_h263.c:474,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:477,1
    - Dst: h263dmx_next_start_code
      Src: /src/gpac/src/filters/reframe_h263.c:478,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_h263.c:482,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_h263.c:485,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:487,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_h263.c:488,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_h263.c:489,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_h263.c:490,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/reframe_h263.c:491,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_h263.c:494,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_h263.c:496,1
    - Dst: h263dmx_next_start_code
      Src: /src/gpac/src/filters/reframe_h263.c:499,1
    - Dst: h263dmx_next_start_code
      Src: /src/gpac/src/filters/reframe_h263.c:503,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_h263.c:527,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_h263.c:531,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_h263.c:534,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_h263.c:537,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_h263.c:541,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:543,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_h263.c:555,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:557,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_h263.c:561,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_h263.c:562,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_h263.c:563,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/reframe_h263.c:564,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_h263.c:565,1
    - Dst: h263dmx_update_cts
      Src: /src/gpac/src/filters/reframe_h263.c:567,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_h263.c:571,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_h263.c:573,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_h263.c:575,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_h263.c:578,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_h263.c:579,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_h263.c:581,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_h263.c:583,1
    - Dst: h263_get_pic_size
      Src: /src/gpac/src/filters/reframe_h263.c:584,1
    - Dst: h263dmx_check_pid
      Src: /src/gpac/src/filters/reframe_h263.c:586,1
    - Dst: h263dmx_next_start_code
      Src: /src/gpac/src/filters/reframe_h263.c:602,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:613,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_h263.c:622,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_h263.c:625,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:627,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_h263.c:631,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:633,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:635,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_h263.c:637,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_h263.c:641,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_h263.c:642,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_h263.c:643,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_h263.c:644,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/reframe_h263.c:645,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_h263.c:646,1
    - Dst: h263dmx_update_cts
      Src: /src/gpac/src/filters/reframe_h263.c:652,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/reframe_h263.c:657,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_h263.c:662,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 218
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 665
      start: 387
    functionDepth: 10
    functionLinenumber: 387
    functionLinenumberEnd: 665
    functionName: h263dmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_h263.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - h263_get_pic_size
    - gf_filter_pck_ref_props
    - gf_filter_pid_get_packet
    - gf_filter_pck_set_byte_offset
    - memcpy
    - gf_filter_pck_get_cts
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_filter_pid_would_block
    - gf_filter_pid_set_eos
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - h263dmx_next_start_code
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_unref
    - gf_filter_pck_set_framing
    - gf_filter_pck_get_byte_offset
    - h263dmx_check_pid
    - h263dmx_update_cts
    - gf_bs_read_int
    - h263dmx_check_dur
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err h263dmx_process(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_h263.c:669,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_h263.c:670,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_h263.c:671,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 672
      start: 667
    functionDepth: 3
    functionLinenumber: 667
    functionLinenumberEnd: 672
    functionName: h263dmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_h263.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void h263dmx_finalize(GF_Filter *filter)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: h263dmx_next_start_code
      Src: /src/gpac/src/filters/reframe_h263.c:680,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_h263.c:686,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_h263.c:689,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_h263.c:690,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_h263.c:691,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_h263.c:693,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_h263.c:694,1
    - Dst: h263dmx_next_start_code
      Src: /src/gpac/src/filters/reframe_h263.c:710,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 40
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 731
      start: 674
    functionDepth: 5
    functionLinenumber: 674
    functionLinenumberEnd: 731
    functionName: h263dmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_h263.c
    functionUses: 0
    functionsReached:
    - h263dmx_next_start_code
    - gf_bs_read_int
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: char
    signature: char * h263dmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 749
    functionDepth: 0
    functionLinenumber: 749
    functionLinenumberEnd: 750
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/reframe_h263.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 778
      start: 775
    functionDepth: 0
    functionLinenumber: 775
    functionLinenumberEnd: 778
    functionName: rfh263_register
    functionSourceFile: /src/gpac/src/filters/reframe_h263.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfh263_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 783
      start: 780
    functionDepth: 0
    functionLinenumber: 780
    functionLinenumberEnd: 783
    functionName: rfh263_register
    functionSourceFile: /src/gpac/src/filters/reframe_h263.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfh263_register(GF_FilterSession *session)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 4
    argNames:
    - ctx
    - line_src
    - line_dst
    - FourBytes_start_index
    argTypes:
    - GF_VFlipCtx*
    - u8*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 92
    functionName: swap_2Ys_YUVpixel
    functionSourceFile: /src/gpac/src/filters/vflip.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void swap_2Ys_YUVpixel(GF_VFlipCtx *ctx, u8 *line_src, u8 *line_dst,
      u32 FourBytes_start_index)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/filters/vflip.c:103,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/vflip.c:104,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/vflip.c:105,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/vflip.c:111,1
    - Dst: swap_2Ys_YUVpixel
      Src: /src/gpac/src/filters/vflip.c:123,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 53
    argCount: 5
    argNames:
    - ctx
    - line_src
    - line_dst
    - plane_idx
    - wiB
    argTypes:
    - GF_VFlipCtx*
    - u8*
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 184
    functionName: horizontal_flip_per_line
    functionSourceFile: /src/gpac/src/filters/vflip.c
    functionUses: 0
    functionsReached:
    - memcpy
    - swap_2Ys_YUVpixel
    linkageType: ''
    returnType: void
    signature: void horizontal_flip_per_line(GF_VFlipCtx *ctx, u8 *line_src, u8 *line_dst,
      u32 plane_idx, u32 wiB)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: horizontal_flip_per_line
      Src: /src/gpac/src/filters/vflip.c:193,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 7
    argNames:
    - ctx
    - src_plane
    - dst_plane
    - height
    - plane_idx
    - wiB
    - src_stride
    argTypes:
    - GF_VFlipCtx*
    - u8*
    - u8*
    - u32
    - u32
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 186
    functionDepth: 2
    functionLinenumber: 186
    functionLinenumberEnd: 195
    functionName: horizontal_flip
    functionSourceFile: /src/gpac/src/filters/vflip.c
    functionUses: 0
    functionsReached:
    - horizontal_flip_per_line
    linkageType: ''
    returnType: void
    signature: void horizontal_flip(GF_VFlipCtx *ctx, u8 *src_plane, u8 *dst_plane,
      u32 height, u32 plane_idx, u32 wiB, u32 *src_stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/filters/vflip.c:207,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/vflip.c:208,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/vflip.c:209,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 6
    argNames:
    - ctx
    - src_plane
    - dst_plane
    - height
    - plane_idx
    - wiB
    argTypes:
    - GF_VFlipCtx*
    - u8*
    - u8*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 211
    functionName: vertical_flip
    functionSourceFile: /src/gpac/src/filters/vflip.c
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: void
    signature: void vertical_flip(GF_VFlipCtx *ctx, u8 *src_plane, u8 *dst_plane,
      u32 height, u32 plane_idx, u32 wiB)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/vflip.c:224,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/vflip.c:225,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/vflip.c:228,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/vflip.c:229,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/vflip.c:236,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/vflip.c:237,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/vflip.c:240,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/vflip.c:241,1
    - Dst: memset
      Src: /src/gpac/src/filters/vflip.c:243,1
    - Dst: memset
      Src: /src/gpac/src/filters/vflip.c:244,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/vflip.c:262,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/vflip.c:266,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/vflip.c:267,1
    - Dst: gf_pixel_get_bytes_per_pixel
      Src: /src/gpac/src/filters/vflip.c:271,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/vflip.c:275,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/vflip.c:277,1
    - Dst: gf_filter_pck_new_clone
      Src: /src/gpac/src/filters/vflip.c:279,1
    - Dst: vertical_flip
      Src: /src/gpac/src/filters/vflip.c:332,1
    - Dst: horizontal_flip
      Src: /src/gpac/src/filters/vflip.c:334,1
    - Dst: vertical_flip
      Src: /src/gpac/src/filters/vflip.c:336,1
    - Dst: horizontal_flip
      Src: /src/gpac/src/filters/vflip.c:337,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/vflip.c:341,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/vflip.c:342,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 111
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 213
    functionDepth: 5
    functionLinenumber: 213
    functionLinenumberEnd: 344
    functionName: vflip_process
    functionSourceFile: /src/gpac/src/filters/vflip.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_filter_pck_forward
    - gf_filter_pck_new_clone
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_merge_properties
    - gf_filter_pck_send
    - gf_filter_pid_set_eos
    - vertical_flip
    - memset
    - GF_FilterFrameInterface*::get_plane
    - horizontal_flip
    - gf_filter_pid_is_eos
    - gf_filter_pck_get_frame_interface
    - gf_filter_pid_get_packet
    - gf_pixel_get_bytes_per_pixel
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vflip_process(GF_Filter *filter)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/vflip.c:352,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/vflip.c:356,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/vflip.c:361,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/vflip.c:365,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/vflip.c:368,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/vflip.c:374,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/vflip.c:376,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/vflip.c:378,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/vflip.c:380,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/vflip.c:382,1
    - Dst: memset
      Src: /src/gpac/src/filters/vflip.c:408,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/vflip.c:411,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/vflip.c:413,1
    - Dst: memset
      Src: /src/gpac/src/filters/vflip.c:421,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/vflip.c:422,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/vflip.c:424,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/vflip.c:435,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/vflip.c:437,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/vflip.c:438,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/vflip.c:452,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/vflip.c:452,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/vflip.c:453,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/vflip.c:453,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/vflip.c:455,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/vflip.c:455,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/vflip.c:457,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/vflip.c:457,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/vflip.c:459,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/vflip.c:459,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/vflip.c:462,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 97
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 347
    functionDepth: 5
    functionLinenumber: 347
    functionLinenumberEnd: 464
    functionName: vflip_configure_pid
    functionSourceFile: /src/gpac/src/filters/vflip.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - PROP_FRAC
    - GF_LOG
    - gf_filter_pid_set_framing_mode
    - gf_realloc
    - gf_filter_pid_check_caps
    - memset
    - gf_pixel_get_size_info
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vflip_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/vflip.c:468,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/vflip.c:469,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/vflip.c:470,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 466
    functionDepth: 1
    functionLinenumber: 466
    functionLinenumberEnd: 471
    functionName: vflip_finalize
    functionSourceFile: /src/gpac/src/filters/vflip.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void vflip_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 474
    functionDepth: 0
    functionLinenumber: 474
    functionLinenumberEnd: 475
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/vflip.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 508
    functionDepth: 0
    functionLinenumber: 508
    functionLinenumberEnd: 511
    functionName: vflip_register
    functionSourceFile: /src/gpac/src/filters/vflip.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *vflip_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 513
    functionDepth: 0
    functionLinenumber: 513
    functionLinenumberEnd: 516
    functionName: vflip_register
    functionSourceFile: /src/gpac/src/filters/vflip.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *vflip_register(GF_FilterSession *session)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_ogg.c:108,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_ogg.c:110,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_OGGDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 104
    functionDepth: 2
    functionLinenumber: 104
    functionLinenumberEnd: 112
    functionName: oggdmx_signal_eos
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_filter_pid_set_eos
    linkageType: ''
    returnType: void
    signature: void oggdmx_signal_eos(GF_OGGDmxCtx *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ogg.c:117,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ogg.c:119,1
    - Dst: ogg_stream_pagein
      Src: /src/gpac/src/filters/dmx_ogg.c:120,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - oggpage
    argTypes:
    - GF_OGGDmxCtx*
    - ogg_page*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 114
    functionDepth: 2
    functionLinenumber: 114
    functionLinenumberEnd: 123
    functionName: oggdmx_find_stream_for_page
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - ogg_stream_pagein
    linkageType: ''
    returnType: GF_OGGStream
    signature: GF_OGGStream *oggdmx_find_stream_for_page(GF_OGGDmxCtx *ctx, ogg_page
      *oggpage)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_ogg.c:129,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_ogg.c:132,1
    - Dst: oggpack_readinit
      Src: /src/gpac/src/filters/dmx_ogg.c:134,1
    - Dst: oggpack_adv
      Src: /src/gpac/src/filters/dmx_ogg.c:135,1
    - Dst: oggpack_read
      Src: /src/gpac/src/filters/dmx_ogg.c:136,1
    - Dst: oggpack_read
      Src: /src/gpac/src/filters/dmx_ogg.c:137,1
    - Dst: oggpack_adv
      Src: /src/gpac/src/filters/dmx_ogg.c:138,1
    - Dst: oggpack_read
      Src: /src/gpac/src/filters/dmx_ogg.c:139,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_ogg.c:144,1
    - Dst: oggpack_readinit
      Src: /src/gpac/src/filters/dmx_ogg.c:146,1
    - Dst: oggpack_adv
      Src: /src/gpac/src/filters/dmx_ogg.c:147,1
    - Dst: oggpack_adv
      Src: /src/gpac/src/filters/dmx_ogg.c:148,1
    - Dst: oggpack_adv
      Src: /src/gpac/src/filters/dmx_ogg.c:149,1
    - Dst: oggpack_read
      Src: /src/gpac/src/filters/dmx_ogg.c:150,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_ogg.c:155,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_ogg.c:161,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_ogg.c:168,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_ogg.c:174,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_ogg.c:175,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_ogg.c:176,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_ogg.c:177,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_ogg.c:178,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_ogg.c:179,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_ogg.c:180,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_ogg.c:181,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_ogg.c:182,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_ogg.c:183,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_ogg.c:184,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ogg.c:185,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ogg.c:186,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_ogg.c:187,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_ogg.c:188,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_ogg.c:189,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_ogg.c:190,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_ogg.c:191,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_ogg.c:199,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_ogg.c:207,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 69
    argCount: 2
    argNames:
    - oggpacket
    - info
    argTypes:
    - ogg_packet*
    - OGGInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 125
    functionDepth: 5
    functionLinenumber: 125
    functionLinenumberEnd: 209
    functionName: oggdmx_get_stream_info
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached:
    - oggpack_readinit
    - gf_bs_read_u32
    - gf_bs_new
    - gf_bs_del
    - memset
    - strncmp
    - gf_bs_read_int
    - oggpack_read
    - oggpack_adv
    linkageType: ''
    returnType: void
    signature: void oggdmx_get_stream_info(ogg_packet *oggpacket, OGGInfo *info)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_ogg.c:217,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dmx_ogg.c:220,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:221,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ogg.c:221,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:222,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ogg.c:222,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:223,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ogg.c:223,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:224,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ogg.c:224,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:225,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ogg.c:225,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:226,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ogg.c:226,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filters/dmx_ogg.c:228,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_ogg.c:229,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dmx_ogg.c:230,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_ogg.c:234,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_ogg.c:235,1
    - Dst: gf_odf_opus_cfg_write_bs
      Src: /src/gpac/src/filters/dmx_ogg.c:236,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dmx_ogg.c:243,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_ogg.c:244,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:246,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/dmx_ogg.c:246,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:250,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ogg.c:250,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:253,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ogg.c:253,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:256,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ogg.c:256,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:258,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ogg.c:258,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:260,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/dmx_ogg.c:260,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:262,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/dmx_ogg.c:262,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:265,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/dmx_ogg.c:265,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:266,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ogg.c:266,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 43
    argCount: 3
    argNames:
    - filter
    - ctx
    - st
    argTypes:
    - GF_Filter*
    - GF_OGGDmxCtx*
    - GF_OGGStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 211
    functionDepth: 9
    functionLinenumber: 211
    functionLinenumberEnd: 268
    functionName: oggdmx_declare_pid
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached:
    - PROP_UINT
    - gf_bs_new
    - gf_odf_opus_cfg_write_bs
    - PROP_FRAC
    - gf_bs_get_content
    - gf_list_find
    - sprintf
    - gf_bs_del
    - PROP_DATA_NO_COPY
    - PROP_FRAC64
    - gf_filter_pid_set_name
    - gf_filter_pid_new
    - gf_stream_type_name
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: void
    signature: void oggdmx_declare_pid(GF_Filter *filter, GF_OGGDmxCtx *ctx, GF_OGGStream
      *st)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: ogg_page_serialno
      Src: /src/gpac/src/filters/dmx_ogg.c:277,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_ogg.c:279,1
    - Dst: ogg_stream_clear
      Src: /src/gpac/src/filters/dmx_ogg.c:282,1
    - Dst: ogg_stream_init
      Src: /src/gpac/src/filters/dmx_ogg.c:283,1
    - Dst: ogg_stream_pagein
      Src: /src/gpac/src/filters/dmx_ogg.c:284,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_ogg.c:292,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_ogg.c:294,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_ogg.c:300,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_ogg.c:302,1
    - Dst: ogg_stream_clear
      Src: /src/gpac/src/filters/dmx_ogg.c:304,1
    - Dst: ogg_stream_init
      Src: /src/gpac/src/filters/dmx_ogg.c:308,1
    - Dst: ogg_stream_pagein
      Src: /src/gpac/src/filters/dmx_ogg.c:309,1
    - Dst: ogg_stream_packetpeek
      Src: /src/gpac/src/filters/dmx_ogg.c:311,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ogg.c:312,1
    - Dst: oggdmx_get_stream_info
      Src: /src/gpac/src/filters/dmx_ogg.c:315,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ogg.c:321,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_ogg.c:322,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ogg.c:326,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_ogg.c:327,1
    - Dst: oggdmx_declare_pid
      Src: /src/gpac/src/filters/dmx_ogg.c:334,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_ogg.c:338,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/dmx_ogg.c:344,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/dmx_ogg.c:346,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 72
    argCount: 3
    argNames:
    - filter
    - ctx
    - oggpage
    argTypes:
    - GF_Filter*
    - GF_OGGDmxCtx*
    - ogg_page*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 270
    functionDepth: 10
    functionLinenumber: 270
    functionLinenumberEnd: 354
    functionName: oggdmx_new_stream
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_pid_get_info
    - ogg_stream_init
    - ogg_page_serialno
    - ogg_stream_pagein
    - GF_SAFEALLOC
    - GF_LOG
    - ogg_stream_packetpeek
    - gf_filter_pid_set_eos
    - oggdmx_declare_pid
    - gf_filter_release_property
    - ogg_stream_clear
    - gf_list_add
    - oggdmx_get_stream_info
    - gf_list_enum
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err oggdmx_new_stream(GF_Filter *filter, GF_OGGDmxCtx *ctx, ogg_page
      *oggpage)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_ogg.c:359,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_ogg.c:365,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dmx_ogg.c:367,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dmx_ogg.c:371,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 356
    functionDepth: 2
    functionLinenumber: 356
    functionLinenumberEnd: 376
    functionName: oggdmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_check_caps
    - gf_list_enum
    - gf_filter_pid_remove
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err oggdmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_ogg.c:396,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_ogg.c:399,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_ogg.c:400,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/dmx_ogg.c:408,1
    - Dst: ogg_sync_init
      Src: /src/gpac/src/filters/dmx_ogg.c:411,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_ogg.c:412,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_ogg.c:413,1
    - Dst: ogg_sync_pageout
      Src: /src/gpac/src/filters/dmx_ogg.c:418,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/dmx_ogg.c:422,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/dmx_ogg.c:425,1
    - Dst: ogg_sync_buffer
      Src: /src/gpac/src/filters/dmx_ogg.c:427,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_ogg.c:428,1
    - Dst: ogg_sync_wrote
      Src: /src/gpac/src/filters/dmx_ogg.c:429,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/dmx_ogg.c:431,1
    - Dst: ogg_page_bos
      Src: /src/gpac/src/filters/dmx_ogg.c:434,1
    - Dst: ogg_stream_init
      Src: /src/gpac/src/filters/dmx_ogg.c:435,1
    - Dst: ogg_page_serialno
      Src: /src/gpac/src/filters/dmx_ogg.c:435,1
    - Dst: ogg_stream_pagein
      Src: /src/gpac/src/filters/dmx_ogg.c:436,1
    - Dst: ogg_stream_packetpeek
      Src: /src/gpac/src/filters/dmx_ogg.c:437,1
    - Dst: ogg_stream_pagein
      Src: /src/gpac/src/filters/dmx_ogg.c:438,1
    - Dst: ogg_stream_packetpeek
      Src: /src/gpac/src/filters/dmx_ogg.c:439,1
    - Dst: oggdmx_get_stream_info
      Src: /src/gpac/src/filters/dmx_ogg.c:440,1
    - Dst: ogg_stream_init
      Src: /src/gpac/src/filters/dmx_ogg.c:444,1
    - Dst: ogg_page_serialno
      Src: /src/gpac/src/filters/dmx_ogg.c:444,1
    - Dst: ogg_stream_clear
      Src: /src/gpac/src/filters/dmx_ogg.c:449,1
    - Dst: ogg_stream_pagein
      Src: /src/gpac/src/filters/dmx_ogg.c:451,1
    - Dst: ogg_stream_packetout
      Src: /src/gpac/src/filters/dmx_ogg.c:452,1
    - Dst: gf_vorbis_parse_header
      Src: /src/gpac/src/filters/dmx_ogg.c:456,1
    - Dst: gf_vorbis_check_frame
      Src: /src/gpac/src/filters/dmx_ogg.c:458,1
    - Dst: gf_opus_parse_header
      Src: /src/gpac/src/filters/dmx_ogg.c:463,1
    - Dst: gf_opus_check_frame
      Src: /src/gpac/src/filters/dmx_ogg.c:465,1
    - Dst: ogg_sync_clear
      Src: /src/gpac/src/filters/dmx_ogg.c:474,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/dmx_ogg.c:475,1
    - Dst: ogg_stream_clear
      Src: /src/gpac/src/filters/dmx_ogg.c:477,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_ogg.c:501,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:503,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/dmx_ogg.c:503,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_ogg.c:507,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 107
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_OGGDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 378
    functionDepth: 6
    functionLinenumber: 378
    functionLinenumberEnd: 508
    functionName: oggdmx_check_dur
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached:
    - ogg_stream_pagein
    - ogg_stream_packetpeek
    - ogg_stream_packetout
    - memset
    - gf_fopen
    - PROP_FRAC64
    - oggdmx_get_stream_info
    - gf_opus_parse_header
    - ogg_sync_wrote
    - gf_feof
    - ogg_page_serialno
    - memcpy
    - ogg_sync_buffer
    - ogg_sync_pageout
    - strncmp
    - gf_opus_check_frame
    - gf_ftell
    - ogg_page_bos
    - ogg_sync_clear
    - ogg_sync_init
    - gf_fread
    - gf_vorbis_check_frame
    - gf_list_enum
    - gf_filter_pid_set_property
    - gf_fclose
    - gf_filter_pid_get_property
    - ogg_stream_init
    - gf_vorbis_parse_header
    - ogg_stream_clear
    linkageType: ''
    returnType: void
    signature: void oggdmx_check_dur(GF_Filter *filter, GF_OGGDmxCtx *ctx)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_ogg.c:515,1
    - Dst: oggdmx_check_dur
      Src: /src/gpac/src/filters/dmx_ogg.c:528,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_ogg.c:548,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_ogg.c:557,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_ogg.c:559,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_ogg.c:571,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 57
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 510
    functionDepth: 7
    functionLinenumber: 510
    functionLinenumberEnd: 584
    functionName: oggdmx_process_event
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached:
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - oggdmx_check_dur
    - gf_list_enum
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool oggdmx_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_ogg.c:589,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_ogg.c:590,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/filters/dmx_ogg.c:591,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_ogg.c:591,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_ogg.c:594,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_ogg.c:595,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_ogg.c:599,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_ogg.c:607,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_ogg.c:612,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/dmx_ogg.c:614,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ogg.c:616,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_ogg.c:616,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dmx_ogg.c:621,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:622,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_ogg.c:622,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_ogg.c:623,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dmx_ogg.c:625,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_ogg.c:626,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_ogg.c:627,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_ogg.c:630,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:633,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/dmx_ogg.c:633,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_ogg.c:656,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/dmx_ogg.c:656,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ogg.c:660,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 100
    argCount: 3
    argNames:
    - filter
    - st
    - data_b64
    argTypes:
    - GF_Filter*
    - GF_OGGStream*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 586
    functionDepth: 2
    functionLinenumber: 586
    functionLinenumberEnd: 661
    functionName: oggdmx_parse_picture
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_pid_raw_new
    - gf_filter_pid_set_property_str
    - PROP_DATA
    - memcpy
    - PROP_BOOL
    - gf_filter_get_udta
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_error_to_string
    - gf_filter_pid_set_property
    - strlen
    - gf_malloc
    - gf_base64_decode
    - gf_filter_pck_set_framing
    - GF_4CC
    - gf_filter_pid_set_name
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void oggdmx_parse_picture(GF_Filter *filter, GF_OGGStream *st, u8 *data_b64)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_ogg.c:668,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_ogg.c:675,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_ogg.c:675,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dmx_ogg.c:678,1
    - Dst: gf_itags_find_by_name
      Src: /src/gpac/src/filters/dmx_ogg.c:682,1
    - Dst: gf_itags_get_name
      Src: /src/gpac/src/filters/dmx_ogg.c:684,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_ogg.c:685,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_ogg.c:685,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ogg.c:686,1
    - Dst: oggdmx_parse_picture
      Src: /src/gpac/src/filters/dmx_ogg.c:687,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ogg.c:689,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_ogg.c:690,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_ogg.c:690,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/dmx_ogg.c:698,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_ogg.c:698,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_ogg.c:710,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 49
    argCount: 4
    argNames:
    - filter
    - st
    - data
    - size
    argTypes:
    - GF_Filter*
    - GF_OGGStream*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 663
    functionDepth: 3
    functionLinenumber: 663
    functionLinenumberEnd: 719
    functionName: oggdmx_parse_tags
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached:
    - gf_itags_get_name
    - PROP_STRING
    - oggdmx_parse_picture
    - gf_filter_pid_set_property_str
    - strcmp
    - gf_itags_find_by_name
    - GF_4CC
    - gf_filter_pid_set_property_dyn
    - strchr
    linkageType: ''
    returnType: void
    signature: void oggdmx_parse_tags(GF_Filter *filter, GF_OGGStream *st, u8 *data,
      u32 size)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_ogg.c:725,1
    - Dst: oggdmx_check_dur
      Src: /src/gpac/src/filters/dmx_ogg.c:731,1
    - Dst: ogg_sync_clear
      Src: /src/gpac/src/filters/dmx_ogg.c:735,1
    - Dst: ogg_sync_init
      Src: /src/gpac/src/filters/dmx_ogg.c:736,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_ogg.c:743,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_ogg.c:744,1
    - Dst: ogg_sync_pageout
      Src: /src/gpac/src/filters/dmx_ogg.c:754,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_ogg.c:758,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_ogg.c:760,1
    - Dst: oggdmx_signal_eos
      Src: /src/gpac/src/filters/dmx_ogg.c:760,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dmx_ogg.c:763,1
    - Dst: ogg_sync_buffer
      Src: /src/gpac/src/filters/dmx_ogg.c:764,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_ogg.c:765,1
    - Dst: ogg_sync_wrote
      Src: /src/gpac/src/filters/dmx_ogg.c:766,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_ogg.c:767,1
    - Dst: ogg_page_bos
      Src: /src/gpac/src/filters/dmx_ogg.c:772,1
    - Dst: oggdmx_new_stream
      Src: /src/gpac/src/filters/dmx_ogg.c:773,1
    - Dst: oggdmx_find_stream_for_page
      Src: /src/gpac/src/filters/dmx_ogg.c:778,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ogg.c:780,1
    - Dst: ogg_page_eos
      Src: /src/gpac/src/filters/dmx_ogg.c:784,1
    - Dst: ogg_stream_packetout
      Src: /src/gpac/src/filters/dmx_ogg.c:787,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_ogg.c:793,1
    - Dst: gf_vorbis_parse_header
      Src: /src/gpac/src/filters/dmx_ogg.c:798,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ogg.c:800,1
    - Dst: gf_opus_parse_header
      Src: /src/gpac/src/filters/dmx_ogg.c:806,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ogg.c:808,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_ogg.c:817,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/dmx_ogg.c:818,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dmx_ogg.c:819,1
    - Dst: oggdmx_declare_pid
      Src: /src/gpac/src/filters/dmx_ogg.c:825,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ogg.c:832,1
    - Dst: oggpackB_readinit
      Src: /src/gpac/src/filters/dmx_ogg.c:839,1
    - Dst: oggpackB_read
      Src: /src/gpac/src/filters/dmx_ogg.c:841,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_ogg.c:843,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_ogg.c:846,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_ogg.c:847,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_ogg.c:848,1
    - Dst: oggpackB_read
      Src: /src/gpac/src/filters/dmx_ogg.c:848,1
    - Dst: gf_vorbis_check_frame
      Src: /src/gpac/src/filters/dmx_ogg.c:856,1
    - Dst: gf_opus_check_frame
      Src: /src/gpac/src/filters/dmx_ogg.c:860,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/dmx_ogg.c:862,1
    - Dst: oggdmx_parse_tags
      Src: /src/gpac/src/filters/dmx_ogg.c:863,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:869,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/dmx_ogg.c:869,1
    - Dst: ogg_page_eos
      Src: /src/gpac/src/filters/dmx_ogg.c:873,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_ogg.c:878,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_ogg.c:881,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_ogg.c:882,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dmx_ogg.c:883,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_ogg.c:886,1
    - Dst: gf_filter_pck_set_roll_info
      Src: /src/gpac/src/filters/dmx_ogg.c:888,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_ogg.c:889,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_ogg.c:891,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_ogg.c:897,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 139
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 722
    functionDepth: 11
    functionLinenumber: 722
    functionLinenumberEnd: 902
    functionName: oggdmx_process
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_write_u16
    - ogg_stream_packetout
    - oggdmx_parse_tags
    - oggdmx_check_dur
    - PROP_LONGSINT
    - gf_opus_parse_header
    - gf_filter_pid_get_packet
    - ogg_sync_wrote
    - memcpy
    - ogg_sync_buffer
    - oggpackB_readinit
    - ogg_sync_pageout
    - gf_opus_check_frame
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - ogg_page_bos
    - ogg_sync_clear
    - ogg_sync_init
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_filter_pid_would_block
    - oggdmx_new_stream
    - gf_bs_get_position
    - gf_bs_write_data
    - oggdmx_declare_pid
    - ogg_page_eos
    - strnicmp
    - gf_filter_pck_set_sap
    - gf_vorbis_check_frame
    - gf_filter_pid_is_eos
    - gf_list_enum
    - gf_filter_pid_set_property
    - oggdmx_signal_eos
    - gf_filter_pck_set_cts
    - oggdmx_find_stream_for_page
    - gf_filter_pck_send
    - gf_vorbis_parse_header
    - gf_filter_pck_set_roll_info
    - oggpackB_read
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err oggdmx_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_ogg.c:906,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_ogg.c:907,1
    - Dst: ogg_sync_init
      Src: /src/gpac/src/filters/dmx_ogg.c:908,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 910
      start: 904
    functionDepth: 1
    functionLinenumber: 904
    functionLinenumberEnd: 910
    functionName: oggdmx_initialize
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - ogg_sync_init
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err oggdmx_initialize(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_ogg.c:914,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ogg.c:917,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ogg.c:918,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dmx_ogg.c:919,1
    - Dst: ogg_stream_clear
      Src: /src/gpac/src/filters/dmx_ogg.c:920,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_ogg.c:921,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ogg.c:922,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ogg.c:923,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ogg.c:924,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_ogg.c:926,1
    - Dst: ogg_sync_clear
      Src: /src/gpac/src/filters/dmx_ogg.c:927,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 928
      start: 912
    functionDepth: 3
    functionLinenumber: 912
    functionLinenumberEnd: 928
    functionName: oggdmx_finalize
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - ogg_sync_clear
    - gf_bs_del
    - gf_list_count
    - ogg_stream_clear
    - gf_list_del
    - gf_list_rem
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void oggdmx_finalize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_ogg.c:932,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 937
      start: 930
    functionDepth: 0
    functionLinenumber: 930
    functionLinenumberEnd: 937
    functionName: oggdmx_probe_data
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached:
    - strncmp
    linkageType: ''
    returnType: char
    signature: char *oggdmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 959
      start: 958
    functionDepth: 0
    functionLinenumber: 958
    functionLinenumberEnd: 959
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 994
      start: 986
    functionDepth: 0
    functionLinenumber: 986
    functionLinenumberEnd: 994
    functionName: oggdmx_register
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *oggdmx_register(GF_FilterSession *session)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - len
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 117
    functionName: get_vlen_size
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE get_vlen_size(u32 len)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:122,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:123,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:125,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:126,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:127,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:129,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:130,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:131,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:132,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:134,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:135,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:136,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:137,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:138,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:140,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:141,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:142,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:143,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/filters/mux_gsf.c:144,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 2
    argNames:
    - ctx
    - len
    argTypes:
    - GSFMxCtx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 119
    functionDepth: 5
    functionLinenumber: 119
    functionLinenumberEnd: 146
    functionName: gsfmx_write_vlen
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_bs_write_long_int
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gsfmx_write_vlen(GSFMxCtx *ctx, u32 len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: get_vlen_size
      Src: /src/gpac/src/filters/mux_gsf.c:150,1
    - Dst: get_vlen_size
      Src: /src/gpac/src/filters/mux_gsf.c:151,1
    - Dst: get_vlen_size
      Src: /src/gpac/src/filters/mux_gsf.c:155,1
    - Dst: get_vlen_size
      Src: /src/gpac/src/filters/mux_gsf.c:157,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 8
    argNames:
    - ctx
    - gst
    - use_seq_num
    - first_frag
    - no_frag
    - pck_size
    - block_size
    - block_offset
    argTypes:
    - GSFMxCtx*
    - GSFStream*
    - Bool
    - Bool
    - Bool
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 160
    functionName: gsfmx_get_header_size
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - get_vlen_size
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gsfmx_get_header_size(GSFMxCtx *ctx, GSFStream *gst, Bool
      use_seq_num, Bool first_frag, Bool no_frag, u32 pck_size, u32 block_size, u32
      block_offset)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/mux_gsf.c:172,1
    - Dst: gf_crypt_encrypt
      Src: /src/gpac/src/filters/mux_gsf.c:177,1
    - Dst: gf_crypt_encrypt
      Src: /src/gpac/src/filters/mux_gsf.c:186,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - ctx
    - data
    - nb_crypt_bytes
    argTypes:
    - GSFMxCtx*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 189
    functionName: gsfmx_encrypt
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_crypt_encrypt
    - gf_crypt_set_IV
    linkageType: ''
    returnType: void
    signature: void gsfmx_encrypt(GSFMxCtx *ctx, char *data, u32 nb_crypt_bytes)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/mux_gsf.c:200,1
    - Dst: gsfmx_encrypt
      Src: /src/gpac/src/filters/mux_gsf.c:212,1
    - Dst: gsfmx_get_header_size
      Src: /src/gpac/src/filters/mux_gsf.c:222,1
    - Dst: gsfmx_get_header_size
      Src: /src/gpac/src/filters/mux_gsf.c:225,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/mux_gsf.c:230,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/mux_gsf.c:234,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:238,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:240,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:241,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:242,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:244,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:246,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:249,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/mux_gsf.c:251,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:256,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:257,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:260,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/mux_gsf.c:262,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_gsf.c:263,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_gsf.c:264,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:279,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/mux_gsf.c:282,1
    - Dst: gsfmx_encrypt
      Src: /src/gpac/src/filters/mux_gsf.c:287,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/mux_gsf.c:291,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_gsf.c:292,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_gsf.c:294,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_gsf.c:296,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_gsf.c:298,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_gsf.c:300,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/mux_gsf.c:302,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 85
    argCount: 7
    argNames:
    - ctx
    - gst
    - pck_type
    - is_end
    - is_redundant
    - frame_size
    - frame_hdr_size
    argTypes:
    - GSFMxCtx*
    - GSFStream*
    - GF_GSFPacketType
    - Bool
    - Bool
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 191
    functionDepth: 8
    functionLinenumber: 191
    functionLinenumberEnd: 306
    functionName: gsfmx_send_packets
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_filter_pck_new_alloc
    - gsfmx_write_vlen
    - memcpy
    - gf_bs_write_int
    - gf_bs_write_u16
    - gsfmx_encrypt
    - GF_LOG
    - gsfmx_get_header_size
    - gf_bs_get_position
    - gf_filter_pck_set_framing
    - gf_filter_pck_set_dependency_flags
    - gf_bs_get_content_no_truncate
    - gf_bs_reassign_buffer
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void gsfmx_send_packets(GSFMxCtx *ctx, GSFStream *gst, GF_GSFPacketType
      pck_type, Bool is_end, Bool is_redundant, u32 frame_size, u32 frame_hdr_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/mux_gsf.c:310,1
    - Dst: gsfmx_send_packets
      Src: /src/gpac/src/filters/mux_gsf.c:312,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - gst
    argTypes:
    - GSFMxCtx*
    - GSFStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 308
    functionDepth: 9
    functionLinenumber: 308
    functionLinenumberEnd: 313
    functionName: gsfmx_send_pid_rem
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gsfmx_send_packets
    - gf_bs_reassign_buffer
    linkageType: ''
    returnType: void
    signature: void gsfmx_send_pid_rem(GSFMxCtx *ctx, GSFStream *gst)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/mux_gsf.c:317,1
    - Dst: gsfmx_send_packets
      Src: /src/gpac/src/filters/mux_gsf.c:319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - gst
    - is_eos
    argTypes:
    - GSFMxCtx*
    - GSFStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 315
    functionDepth: 9
    functionLinenumber: 315
    functionLinenumberEnd: 320
    functionName: gsfmx_send_pid_eos
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gsfmx_send_packets
    - gf_bs_reassign_buffer
    linkageType: ''
    returnType: void
    signature: void gsfmx_send_pid_eos(GSFMxCtx *ctx, GSFStream *gst, Bool is_eos)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/mux_gsf.c:325,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filters/mux_gsf.c:328,1
    - Dst: gf_props_get_base_type
      Src: /src/gpac/src/filters/mux_gsf.c:329,1
    - Dst: gf_props_get_base_type
      Src: /src/gpac/src/filters/mux_gsf.c:329,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:331,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filters/mux_gsf.c:334,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filters/mux_gsf.c:334,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filters/mux_gsf.c:334,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:341,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - p
    - prop_4cc
    argTypes:
    - GF_PropertyValue*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 322
    functionDepth: 1
    functionLinenumber: 322
    functionLinenumberEnd: 349
    functionName: gsfmx_can_serialize_prop
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_props_4cc_get_type
    - gf_props_get_base_type
    - gf_props_4cc_get_name
    - GF_LOG
    - gf_props_type_is_enum
    - gf_props_get_type_name
    linkageType: ''
    returnType: Bool
    signature: Bool gsfmx_can_serialize_prop(const GF_PropertyValue *p, u32 prop_4cc)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:357,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_gsf.c:360,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/mux_gsf.c:364,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/mux_gsf.c:367,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:370,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:371,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/mux_gsf.c:374,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/mux_gsf.c:375,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/filters/mux_gsf.c:378,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/filters/mux_gsf.c:378,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/filters/mux_gsf.c:381,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:384,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:385,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/filters/mux_gsf.c:388,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/filters/mux_gsf.c:389,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:392,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:393,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:394,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:397,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:398,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:399,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:400,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_gsf.c:405,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:406,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_gsf.c:407,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:414,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_gsf.c:415,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:421,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_gsf.c:424,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:425,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_gsf.c:426,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:433,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:435,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:440,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_gsf.c:442,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:447,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:449,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:450,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:454,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filters/mux_gsf.c:457,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:458,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:461,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 106
    argCount: 2
    argNames:
    - ctx
    - p
    argTypes:
    - GSFMxCtx*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 351
    functionDepth: 6
    functionLinenumber: 351
    functionLinenumberEnd: 464
    functionName: gsfmx_write_prop
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gsfmx_write_vlen
    - GF_LOG
    - gf_bs_write_double
    - strlen
    - gf_props_type_is_enum
    - gf_bs_write_data
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_bs_write_u8
    - FIX2FLT
    - gf_bs_write_float
    linkageType: ''
    returnType: void
    signature: void gsfmx_write_prop(GSFMxCtx *ctx, const GF_PropertyValue *p)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filters/mux_gsf.c:468,1
    - Dst: gf_props_4cc_get_flags
      Src: /src/gpac/src/filters/mux_gsf.c:475,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_gsf.c:480,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_gsf.c:481,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_gsf.c:482,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filters/mux_gsf.c:486,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_gsf.c:487,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_gsf.c:488,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_gsf.c:489,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 25
    argCount: 4
    argNames:
    - ctx
    - prop_4cc
    - prop_name
    - sep_l
    argTypes:
    - GSFMxCtx*
    - u32
    - char*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 495
      start: 466
    functionDepth: 3
    functionLinenumber: 466
    functionLinenumberEnd: 495
    functionName: gsfmx_is_prop_skip
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_props_4cc_get_name
    - strstr
    - strcmp
    - strlen
    - gf_props_4cc_get_flags
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gsfmx_is_prop_skip(GSFMxCtx *ctx, u32 prop_4cc, const char
      *prop_name, u8 sep_l)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/mux_gsf.c:506,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filters/mux_gsf.c:511,1
    - Dst: gsfmx_can_serialize_prop
      Src: /src/gpac/src/filters/mux_gsf.c:513,1
    - Dst: gsfmx_is_prop_skip
      Src: /src/gpac/src/filters/mux_gsf.c:514,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/mux_gsf.c:517,1
    - Dst: gf_filter_pid_get_alias_udta
      Src: /src/gpac/src/filters/mux_gsf.c:533,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/mux_gsf.c:535,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_gsf.c:540,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_gsf.c:542,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_gsf.c:555,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/mux_gsf.c:561,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:562,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:563,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_gsf.c:568,1
    - Dst: gsfmx_write_prop
      Src: /src/gpac/src/filters/mux_gsf.c:571,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_gsf.c:574,1
    - Dst: gsfmx_write_prop
      Src: /src/gpac/src/filters/mux_gsf.c:577,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_gsf.c:581,1
    - Dst: gsfmx_write_prop
      Src: /src/gpac/src/filters/mux_gsf.c:584,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_gsf.c:587,1
    - Dst: gsfmx_write_prop
      Src: /src/gpac/src/filters/mux_gsf.c:590,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_gsf.c:593,1
    - Dst: gsfmx_write_prop
      Src: /src/gpac/src/filters/mux_gsf.c:596,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filters/mux_gsf.c:605,1
    - Dst: gsfmx_can_serialize_prop
      Src: /src/gpac/src/filters/mux_gsf.c:607,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/mux_gsf.c:610,1
    - Dst: gsfmx_is_prop_skip
      Src: /src/gpac/src/filters/mux_gsf.c:613,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_gsf.c:622,1
    - Dst: gsfmx_write_prop
      Src: /src/gpac/src/filters/mux_gsf.c:624,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/mux_gsf.c:627,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:629,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filters/mux_gsf.c:629,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filters/mux_gsf.c:629,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filters/mux_gsf.c:638,1
    - Dst: gsfmx_can_serialize_prop
      Src: /src/gpac/src/filters/mux_gsf.c:640,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/mux_gsf.c:641,1
    - Dst: gsfmx_is_prop_skip
      Src: /src/gpac/src/filters/mux_gsf.c:643,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_gsf.c:646,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_gsf.c:648,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:649,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_gsf.c:650,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/mux_gsf.c:652,1
    - Dst: gsfmx_write_prop
      Src: /src/gpac/src/filters/mux_gsf.c:653,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/mux_gsf.c:656,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:658,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filters/mux_gsf.c:658,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filters/mux_gsf.c:658,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 126
    argCount: 3
    argNames:
    - filter
    - ctx
    - gst
    argTypes:
    - GF_Filter*
    - GSFMxCtx*
    - GSFStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 662
      start: 497
    functionDepth: 7
    functionLinenumber: 497
    functionLinenumberEnd: 662
    functionName: gsfmx_write_pid_config
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gsfmx_is_prop_skip
    - gf_log_tool_level_on
    - gf_filter_get_sep
    - gf_props_dump
    - gf_bs_write_u32
    - gf_filter_pid_enum_properties
    - gf_4cc_to_str
    - gsfmx_write_prop
    - gf_filter_pid_get_alias_udta
    - gf_props_4cc_get_name
    - gsfmx_write_vlen
    - GF_LOG
    - gf_bs_write_data
    - strlen
    - gf_props_4cc_get_type
    - gf_filter_pid_get_property
    - gsfmx_can_serialize_prop
    - gf_file_ext_start
    - gf_bs_write_u8
    linkageType: ''
    returnType: void
    signature: void gsfmx_write_pid_config(GF_Filter *filter, GSFMxCtx *ctx, GSFStream
      *gst)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_gsf.c:671,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/mux_gsf.c:674,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_gsf.c:679,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_gsf.c:683,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_gsf.c:683,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/mux_gsf.c:685,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_gsf.c:688,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/mux_gsf.c:689,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/mux_gsf.c:690,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:692,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:693,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:696,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_gsf.c:698,1
    - Dst: gsfmx_send_packets
      Src: /src/gpac/src/filters/mux_gsf.c:701,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 3
    argNames:
    - filter
    - ctx
    - is_carousel_update
    argTypes:
    - GF_Filter*
    - GSFMxCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 703
      start: 666
    functionDepth: 9
    functionLinenumber: 666
    functionLinenumberEnd: 703
    functionName: gsfmx_send_header
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gsfmx_write_vlen
    - gsfmx_send_packets
    - gf_bs_write_u16
    - gf_bs_write_int
    - gf_bs_write_data
    - gf_bs_write_u8
    - GF_4CC
    - gf_bs_write_u32
    - gf_bs_reassign_buffer
    - strlen
    linkageType: ''
    returnType: void
    signature: void gsfmx_send_header(GF_Filter *filter, GSFMxCtx *ctx, Bool is_carousel_update)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gsfmx_send_header
      Src: /src/gpac/src/filters/mux_gsf.c:708,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/mux_gsf.c:711,1
    - Dst: gsfmx_write_pid_config
      Src: /src/gpac/src/filters/mux_gsf.c:715,1
    - Dst: gsfmx_send_packets
      Src: /src/gpac/src/filters/mux_gsf.c:717,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 5
    argNames:
    - filter
    - ctx
    - gst
    - is_info
    - is_carousel_update
    argTypes:
    - GF_Filter*
    - GSFMxCtx*
    - GSFStream*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 718
      start: 705
    functionDepth: 10
    functionLinenumber: 705
    functionLinenumberEnd: 718
    functionName: gsfmx_send_pid_config
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gsfmx_send_packets
    - gsfmx_send_header
    - gf_bs_reassign_buffer
    - gsfmx_write_pid_config
    linkageType: ''
    returnType: void
    signature: void gsfmx_send_pid_config(GF_Filter *filter, GSFMxCtx *ctx, GSFStream
      *gst, Bool is_info, Bool is_carousel_update)
  - BBCount: 65
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/src/filters/mux_gsf.c:744,1
    - Dst: gsfmx_can_serialize_prop
      Src: /src/gpac/src/filters/mux_gsf.c:746,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/mux_gsf.c:748,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/mux_gsf.c:757,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/mux_gsf.c:759,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/mux_gsf.c:761,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_gsf.c:763,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_gsf.c:765,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_gsf.c:767,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_gsf.c:769,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_gsf.c:771,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/mux_gsf.c:774,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:775,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_gsf.c:783,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_gsf.c:784,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/mux_gsf.c:809,1
    - Dst: MAX
      Src: /src/gpac/src/filters/mux_gsf.c:839,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_gsf.c:846,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:850,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:851,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:852,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:853,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:854,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:855,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/mux_gsf.c:858,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:859,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/mux_gsf.c:860,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:861,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/mux_gsf.c:862,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:863,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:864,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/mux_gsf.c:867,1
    - Dst: gf_filter_pck_get_corrupted
      Src: /src/gpac/src/filters/mux_gsf.c:869,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/mux_gsf.c:871,1
    - Dst: gf_filter_pck_get_carousel_version
      Src: /src/gpac/src/filters/mux_gsf.c:873,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/mux_gsf.c:875,1
    - Dst: gf_filter_pck_get_clock_type
      Src: /src/gpac/src/filters/mux_gsf.c:877,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/mux_gsf.c:879,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:882,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:887,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:888,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:889,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:890,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:891,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:892,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:895,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:896,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:897,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:898,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/filters/mux_gsf.c:903,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:904,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:908,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/filters/mux_gsf.c:910,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:911,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:916,1
    - Dst: gf_filter_pck_get_roll_info
      Src: /src/gpac/src/filters/mux_gsf.c:920,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/mux_gsf.c:921,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/mux_gsf.c:924,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/mux_gsf.c:927,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/mux_gsf.c:930,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:933,1
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/src/filters/mux_gsf.c:940,1
    - Dst: gsfmx_can_serialize_prop
      Src: /src/gpac/src/filters/mux_gsf.c:942,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/mux_gsf.c:944,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_gsf.c:946,1
    - Dst: gsfmx_write_prop
      Src: /src/gpac/src/filters/mux_gsf.c:948,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:952,1
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/src/filters/mux_gsf.c:957,1
    - Dst: gsfmx_can_serialize_prop
      Src: /src/gpac/src/filters/mux_gsf.c:959,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/mux_gsf.c:960,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_gsf.c:961,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_gsf.c:962,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:963,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_gsf.c:964,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/mux_gsf.c:966,1
    - Dst: gsfmx_write_prop
      Src: /src/gpac/src/filters/mux_gsf.c:967,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:969,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/mux_gsf.c:972,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_gsf.c:987,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:989,1
    - Dst: gsfmx_send_packets
      Src: /src/gpac/src/filters/mux_gsf.c:991,1
    - Dst: gf_pixel_get_bytes_per_pixel
      Src: /src/gpac/src/filters/mux_gsf.c:993,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/mux_gsf.c:998,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:1000,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_gsf.c:1007,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:1009,1
    - Dst: gsfmx_send_packets
      Src: /src/gpac/src/filters/mux_gsf.c:1014,1
    CyclomaticComplexity: 85
    EdgeCount: 85
    ICount: 230
    argCount: 3
    argNames:
    - ctx
    - gst
    - pck
    argTypes:
    - GSFMxCtx*
    - GSFStream*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1016
      start: 720
    functionDepth: 9
    functionLinenumber: 720
    functionLinenumberEnd: 1016
    functionName: gsfmx_write_data_packet
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_pixel_get_bytes_per_pixel
    - gf_filter_pck_enum_properties
    - gf_bs_write_u16
    - gf_filter_pck_get_carousel_version
    - gf_filter_pck_get_clock_type
    - gf_bs_write_long_int
    - MAX
    - gf_filter_pck_get_frame_interface
    - gf_filter_pck_get_seek_flag
    - gf_bs_write_u32
    - gf_4cc_to_str
    - gf_assert
    - gf_filter_pck_get_framing
    - gsfmx_write_prop
    - gsfmx_send_packets
    - gf_filter_pck_get_corrupted
    - gf_filter_pck_get_roll_info
    - gf_filter_pck_get_dependency_flags
    - gf_filter_pck_get_cts
    - gf_bs_write_u64
    - gf_filter_pck_get_duration
    - gsfmx_write_vlen
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_bs_write_int
    - gf_filter_pck_get_crypt_flags
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_filter_pck_get_interlaced
    - gf_filter_pck_get_sap
    - gf_bs_reassign_buffer
    - strlen
    - gf_props_4cc_get_type
    - gf_filter_pid_get_property
    - gsfmx_can_serialize_prop
    - gf_pixel_get_size_info
    - gf_filter_pck_get_byte_offset
    - GF_FilterFrameInterface*::get_plane
    - gf_bs_write_u8
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: void
    signature: void gsfmx_write_data_packet(GSFMxCtx *ctx, GSFStream *gst, GF_FilterPacket
      *pck)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_gsf.c:1022,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/mux_gsf.c:1025,1
    - Dst: gsfmx_send_pid_rem
      Src: /src/gpac/src/filters/mux_gsf.c:1028,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/mux_gsf.c:1029,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_gsf.c:1030,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_gsf.c:1031,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/mux_gsf.c:1032,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/mux_gsf.c:1037,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/mux_gsf.c:1041,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/mux_gsf.c:1042,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/mux_gsf.c:1044,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_gsf.c:1045,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_gsf.c:1045,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_gsf.c:1046,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_gsf.c:1047,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_gsf.c:1048,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_gsf.c:1049,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_gsf.c:1050,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_gsf.c:1050,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_gsf.c:1051,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_gsf.c:1051,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_gsf.c:1054,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/mux_gsf.c:1056,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/mux_gsf.c:1058,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_gsf.c:1060,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/mux_gsf.c:1062,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_gsf.c:1068,1
    - Dst: gsfmx_send_pid_config
      Src: /src/gpac/src/filters/mux_gsf.c:1074,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 52
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1076
      start: 1018
    functionDepth: 11
    functionLinenumber: 1018
    functionLinenumberEnd: 1076
    functionName: gsfmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - PROP_STRING
    - gf_list_count
    - gf_filter_pid_check_caps
    - gsfmx_send_pid_rem
    - gf_filter_pid_set_udta
    - gf_filter_pid_new
    - gf_list_add
    - gf_filter_get_udta
    - gf_filter_pid_copy_properties
    - gf_list_del_item
    - gf_filter_pid_set_property
    - gf_filter_pid_get_udta
    - PROP_UINT
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gsfmx_send_pid_config
    - gf_filter_pid_set_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gsfmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_gsf.c:1081,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_gsf.c:1082,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_gsf.c:1086,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_gsf.c:1087,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/mux_gsf.c:1089,1
    - Dst: gsfmx_send_pid_eos
      Src: /src/gpac/src/filters/mux_gsf.c:1092,1
    - Dst: gsfmx_write_data_packet
      Src: /src/gpac/src/filters/mux_gsf.c:1099,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_gsf.c:1100,1
    - Dst: gsfmx_send_header
      Src: /src/gpac/src/filters/mux_gsf.c:1104,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_gsf.c:1106,1
    - Dst: gsfmx_send_pid_config
      Src: /src/gpac/src/filters/mux_gsf.c:1107,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/mux_gsf.c:1112,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1116
      start: 1079
    functionDepth: 11
    functionLinenumber: 1079
    functionLinenumberEnd: 1116
    functionName: gsfmx_process
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gsfmx_write_data_packet
    - gf_filter_pid_drop_packet
    - gsfmx_send_header
    - gsfmx_send_pid_config
    - gf_filter_pid_set_eos
    - gf_list_count
    - gsfmx_send_pid_eos
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gsfmx_process(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_gsf.c:1120,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/mux_gsf.c:1122,1
    - Dst: gsfmx_send_pid_config
      Src: /src/gpac/src/filters/mux_gsf.c:1124,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1128
      start: 1118
    functionDepth: 11
    functionLinenumber: 1118
    functionLinenumberEnd: 1128
    functionName: gsfmx_process_event
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_udta
    - gsfmx_send_pid_config
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool gsfmx_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_gsf.c:1136,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/mux_gsf.c:1140,1
    - Dst: gf_filter_is_dynamic
      Src: /src/gpac/src/filters/mux_gsf.c:1144,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_gsf.c:1146,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_gsf.c:1150,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_gsf.c:1150,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_gsf.c:1154,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_gsf.c:1158,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/mux_gsf.c:1161,1
    - Dst: gf_filter_is_alias
      Src: /src/gpac/src/filters/mux_gsf.c:1163,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_gsf.c:1165,1
    - Dst: gf_filter_act_as_sink
      Src: /src/gpac/src/filters/mux_gsf.c:1170,1
    - Dst: gf_filter_is_temporary
      Src: /src/gpac/src/filters/mux_gsf.c:1173,1
    - Dst: gf_rand_init
      Src: /src/gpac/src/filters/mux_gsf.c:1177,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_gsf.c:1185,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:1187,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/mux_gsf.c:1192,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/mux_gsf.c:1193,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/mux_gsf.c:1194,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/mux_gsf.c:1195,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/mux_gsf.c:1199,1
    - Dst: strcat
      Src: /src/gpac/src/filters/mux_gsf.c:1200,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:1202,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/mux_gsf.c:1204,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:1206,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/mux_gsf.c:1209,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:1211,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_gsf.c:1211,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:1216,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/mux_gsf.c:1220,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 72
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1227
      start: 1134
    functionDepth: 4
    functionLinenumber: 1134
    functionLinenumberEnd: 1227
    functionName: gsfmx_initialize
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_filter_override_caps
    - gf_filter_is_temporary
    - gf_filter_is_dynamic
    - PROP_STRING
    - strcat
    - gf_list_new
    - memcpy
    - sprintf
    - gf_filter_is_alias
    - gf_filter_get_udta
    - gf_filter_act_as_sink
    - GF_LOG
    - gf_crypt_open
    - gf_error_to_string
    - gf_rand
    - PROP_UINT
    - gf_crypt_init
    - gf_file_ext_start
    - gf_rand_init
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gsfmx_initialize(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_gsf.c:1231,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_gsf.c:1232,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/mux_gsf.c:1233,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_gsf.c:1234,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/mux_gsf.c:1236,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_gsf.c:1238,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_gsf.c:1239,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/mux_gsf.c:1241,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1243
      start: 1229
    functionDepth: 3
    functionLinenumber: 1229
    functionLinenumberEnd: 1243
    functionName: gsfmx_finalize
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_bs_del
    - gf_list_count
    - gf_crypt_close
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void gsfmx_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_gsf.c:1247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - filter
    - url
    - mime
    argTypes:
    - GF_Filter*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1249
      start: 1245
    functionDepth: 1
    functionLinenumber: 1245
    functionLinenumberEnd: 1249
    functionName: gsfmx_use_alias
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool gsfmx_use_alias(GF_Filter *filter, const char *url, const char
      *mime)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1264
      start: 1263
    functionDepth: 0
    functionLinenumber: 1263
    functionLinenumberEnd: 1264
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1354
      start: 1351
    functionDepth: 0
    functionLinenumber: 1351
    functionLinenumberEnd: 1354
    functionName: gsfmx_register
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *gsfmx_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1359
      start: 1356
    functionDepth: 0
    functionLinenumber: 1356
    functionLinenumberEnd: 1359
    functionName: gsfmx_register
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *gsfmx_register(GF_FilterSession *session)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/in_rtp_sdp.c:51,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_sdp.c:54,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_sdp.c:56,1
    - Dst: gf_rtsp_range_parse
      Src: /src/gpac/src/filters/in_rtp_sdp.c:56,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_sdp.c:58,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_rtp_sdp.c:58,1
    - Dst: gf_rtsp_range_del
      Src: /src/gpac/src/filters/in_rtp_sdp.c:64,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_sdp.c:71,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/in_rtp_sdp.c:77,1
    - Dst: rtpin_stream_new
      Src: /src/gpac/src/filters/in_rtp_sdp.c:78,1
    - Dst: rtpin_add_stream
      Src: /src/gpac/src/filters/in_rtp_sdp.c:84,1
    - Dst: rtpin_stream_del
      Src: /src/gpac/src/filters/in_rtp_sdp.c:86,1
    - Dst: gf_rtsp_set_buffer_size
      Src: /src/gpac/src/filters/in_rtp_sdp.c:99,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 51
    argCount: 3
    argNames:
    - rtp
    - sdp
    - for_stream
    argTypes:
    - GF_RTPIn*
    - GF_SDPInfo*
    - GF_RTPInStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 34
    functionDepth: 6
    functionLinenumber: 34
    functionLinenumberEnd: 106
    functionName: rtpin_setup_sdp
    functionSourceFile: /src/gpac/src/filters/in_rtp_sdp.c
    functionUses: 0
    functionsReached:
    - rtpin_add_stream
    - GF_LOG
    - gf_rtsp_range_parse
    - strncmp
    - strcmp
    - gf_rtsp_set_buffer_size
    - rtpin_stream_del
    - gf_list_enum
    - rtpin_stream_new
    - gf_rtsp_range_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpin_setup_sdp(GF_RTPIn *rtp, GF_SDPInfo *sdp, GF_RTPInStream
      *for_stream)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp_sdp.c:120,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp_sdp.c:120,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp_sdp.c:124,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp_sdp.c:127,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/filters/in_rtp_sdp.c:129,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp_sdp.c:131,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp_sdp.c:131,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp_sdp.c:135,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp_sdp.c:138,1
    - Dst: gf_base16_decode
      Src: /src/gpac/src/filters/in_rtp_sdp.c:140,1
    - Dst: gf_odf_desc_read
      Src: /src/gpac/src/filters/in_rtp_sdp.c:146,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 2
    argNames:
    - rtp
    - iod_str
    argTypes:
    - GF_RTPIn*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 112
    functionDepth: 2
    functionLinenumber: 112
    functionLinenumberEnd: 148
    functionName: rtpin_sdp_load_iod
    functionSourceFile: /src/gpac/src/filters/in_rtp_sdp.c
    functionUses: 0
    functionsReached:
    - gf_base64_decode
    - gf_odf_desc_read
    - strstr
    - gf_base16_decode
    - strnicmp
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpin_sdp_load_iod(GF_RTPIn *rtp, char *iod_str)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_sdp.c:157,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_rtp_sdp.c:161,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/in_rtp_sdp.c:162,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:164,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_sdp.c:164,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:166,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_sdp.c:166,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:168,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_sdp.c:168,1
    - Dst: gf_rtp_get_clockrate
      Src: /src/gpac/src/filters/in_rtp_sdp.c:168,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:175,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/in_rtp_sdp.c:175,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:176,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_sdp.c:176,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:178,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_sdp.c:178,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:181,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/in_rtp_sdp.c:181,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:188,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_sdp.c:188,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp_sdp.c:194,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp_sdp.c:196,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:198,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/in_rtp_sdp.c:198,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:205,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/in_rtp_sdp.c:205,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:214,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_sdp.c:214,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:221,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_sdp.c:221,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:222,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_sdp.c:222,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:225,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/in_rtp_sdp.c:225,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/in_rtp_sdp.c:228,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_sdp.c:228,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/in_rtp_sdp.c:230,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/in_rtp_sdp.c:230,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:235,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:236,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:238,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_sdp.c:238,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:240,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_sdp.c:240,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:242,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/in_rtp_sdp.c:242,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:245,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_sdp.c:245,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:247,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_sdp.c:247,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:252,1
    - Dst: PROP_4CC
      Src: /src/gpac/src/filters/in_rtp_sdp.c:252,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:254,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_sdp.c:254,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:255,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/in_rtp_sdp.c:255,1
    - Dst: gf_filter_pid_recompute_dts
      Src: /src/gpac/src/filters/in_rtp_sdp.c:260,1
    - Dst: gf_filter_pid_recompute_dts
      Src: /src/gpac/src/filters/in_rtp_sdp.c:262,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/filters/in_rtp_sdp.c:275,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:276,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_sdp.c:276,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:277,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_sdp.c:277,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:281,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_sdp.c:281,1
    - Dst: gf_rtp_get_clockrate
      Src: /src/gpac/src/filters/in_rtp_sdp.c:281,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:282,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_sdp.c:282,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_sdp.c:293,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/in_rtp_sdp.c:293,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 114
    argCount: 4
    argNames:
    - stream
    - force_iod
    - ch_idx
    - ocr_es_id
    argTypes:
    - GF_RTPInStream*
    - Bool
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 151
    functionDepth: 4
    functionLinenumber: 151
    functionLinenumberEnd: 296
    functionName: rtpin_declare_pid
    functionSourceFile: /src/gpac/src/filters/in_rtp_sdp.c
    functionUses: 0
    functionsReached:
    - PROP_BOOL
    - gf_assert
    - gf_list_get
    - PROP_UINT
    - gf_m4a_get_config
    - GF_LOG
    - gf_rtp_get_clockrate
    - PROP_STRING
    - gf_filter_pid_set_property_str
    - gf_list_count
    - PROP_4CC
    - PROP_DATA_NO_COPY
    - gf_filter_pid_recompute_dts
    - PROP_FRAC64
    - PROP_DATA
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: void
    signature: void rtpin_declare_pid(GF_RTPInStream *stream, Bool force_iod, u32
      ch_idx, u32 *ocr_es_id)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/in_rtp_sdp.c:306,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp_sdp.c:307,1
    - Dst: rtpin_declare_pid
      Src: /src/gpac/src/filters/in_rtp_sdp.c:311,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 11
    argCount: 2
    argNames:
    - rtp
    - force_iod
    argTypes:
    - GF_RTPIn*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 299
    functionDepth: 5
    functionLinenumber: 299
    functionLinenumberEnd: 314
    functionName: rtpin_declare_media
    functionSourceFile: /src/gpac/src/filters/in_rtp_sdp.c
    functionUses: 0
    functionsReached:
    - rtpin_declare_pid
    - gf_list_enum
    - strnicmp
    linkageType: ''
    returnType: void
    signature: void rtpin_declare_media(GF_RTPIn *rtp, Bool force_iod)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_sdp_info_new
      Src: /src/gpac/src/filters/in_rtp_sdp.c:329,1
    - Dst: gf_sdp_info_parse
      Src: /src/gpac/src/filters/in_rtp_sdp.c:330,1
    - Dst: rtpin_setup_sdp
      Src: /src/gpac/src/filters/in_rtp_sdp.c:332,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp_sdp.c:334,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_rtp_sdp.c:339,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_sdp.c:341,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_rtp_sdp.c:342,1
    - Dst: gf_sdp_info_del
      Src: /src/gpac/src/filters/in_rtp_sdp.c:345,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/in_rtp_sdp.c:353,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_sdp.c:355,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_sdp.c:357,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/in_rtp_sdp.c:358,1
    - Dst: rtpin_sdp_load_iod
      Src: /src/gpac/src/filters/in_rtp_sdp.c:367,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/in_rtp_sdp.c:373,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_rtp_sdp.c:388,1
    - Dst: rtpin_declare_media
      Src: /src/gpac/src/filters/in_rtp_sdp.c:389,1
    - Dst: rtpin_stream_setup
      Src: /src/gpac/src/filters/in_rtp_sdp.c:394,1
    - Dst: gf_sdp_info_del
      Src: /src/gpac/src/filters/in_rtp_sdp.c:396,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 57
    argCount: 4
    argNames:
    - rtp
    - sdp_text
    - sdp_len
    - stream
    argTypes:
    - GF_RTPIn*
    - char*
    - u32
    - GF_RTPInStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 316
    functionDepth: 7
    functionLinenumber: 316
    functionLinenumberEnd: 397
    functionName: rtpin_load_sdp
    functionSourceFile: /src/gpac/src/filters/in_rtp_sdp.c
    functionUses: 1
    functionsReached:
    - gf_sdp_info_new
    - stricmp
    - GF_LOG
    - gf_sdp_info_del
    - rtpin_sdp_load_iod
    - gf_list_count
    - rtpin_setup_sdp
    - strcmp
    - gf_filter_setup_failure
    - gf_list_enum
    - rtpin_stream_setup
    - rtpin_declare_media
    - gf_sdp_info_parse
    linkageType: ''
    returnType: void
    signature: void rtpin_load_sdp(GF_RTPIn *rtp, char *sdp_text, u32 sdp_len, GF_RTPInStream
      *stream)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/resample_audio.c:67,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/resample_audio.c:68,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/resample_audio.c:73,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/resample_audio.c:82,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 4
    argNames:
    - callback
    - size
    - planar_stride
    - audio_delay_ms
    argTypes:
    - void*
    - u32*
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 92
    functionName: resample_fetch_frame
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_data
    - gf_assert
    - gf_filter_pid_get_packet
    linkageType: ''
    returnType: u8
    signature: u8 *resample_fetch_frame(void *callback, u32 *size, u32 *planar_stride,
      u32 audio_delay_ms)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/resample_audio.c:98,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/resample_audio.c:101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - callback
    - nb_bytes
    argTypes:
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 107
    functionName: resample_release_frame
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_filter_pid_drop_packet
    linkageType: ''
    returnType: void
    signature: void resample_release_frame(void *callback, u32 nb_bytes)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ai
    - for_reconf
    argTypes:
    - struct _audiointerface*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 117
    functionName: resample_get_config
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool resample_get_config(struct _audiointerface *ai, Bool for_reconf)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - callback
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionName: resample_is_muted
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool resample_is_muted(void *callback)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - callback
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 126
    functionName: resample_get_speed
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Fixed
    signature: Fixed resample_get_speed(void *callback)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - callback
    - vol
    argTypes:
    - void*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 132
    functionName: resample_get_channel_volume
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool resample_get_channel_volume(void *callback, Fixed *vol)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/resample_audio.c:136,1
    - Dst: gf_mixer_new
      Src: /src/gpac/src/filters/resample_audio.c:137,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 149
    functionName: resample_initialize
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached:
    - gf_mixer_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err resample_initialize(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/resample_audio.c:153,1
    - Dst: gf_mixer_del
      Src: /src/gpac/src/filters/resample_audio.c:154,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/resample_audio.c:155,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 151
    functionDepth: 2
    functionLinenumber: 151
    functionLinenumberEnd: 156
    functionName: resample_finalize
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached:
    - gf_mixer_del
    - gf_filter_pid_drop_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void resample_finalize(GF_Filter *filter)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/resample_audio.c:164,1
    - Dst: gf_mixer_remove_input
      Src: /src/gpac/src/filters/resample_audio.c:167,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/resample_audio.c:168,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/resample_audio.c:171,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/resample_audio.c:175,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/resample_audio.c:179,1
    - Dst: gf_filter_pid_set_max_buffer
      Src: /src/gpac/src/filters/resample_audio.c:180,1
    - Dst: gf_filter_pid_get_max_buffer
      Src: /src/gpac/src/filters/resample_audio.c:180,1
    - Dst: gf_mixer_add_input
      Src: /src/gpac/src/filters/resample_audio.c:184,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/resample_audio.c:188,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/resample_audio.c:193,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/resample_audio.c:198,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/resample_audio.c:202,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/resample_audio.c:207,1
    - Dst: gf_audio_fmt_get_layout_from_name
      Src: /src/gpac/src/filters/resample_audio.c:218,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/resample_audio.c:220,1
    - Dst: gf_audio_fmt_get_num_channels_from_layout
      Src: /src/gpac/src/filters/resample_audio.c:222,1
    - Dst: gf_audio_fmt_get_cicp_layout
      Src: /src/gpac/src/filters/resample_audio.c:229,1
    - Dst: gf_audio_fmt_get_layout_from_cicp
      Src: /src/gpac/src/filters/resample_audio.c:230,1
    - Dst: gf_mixer_set_config
      Src: /src/gpac/src/filters/resample_audio.c:233,1
    - Dst: gf_audio_fmt_is_planar
      Src: /src/gpac/src/filters/resample_audio.c:239,1
    - Dst: gf_audio_fmt_is_planar
      Src: /src/gpac/src/filters/resample_audio.c:245,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/resample_audio.c:250,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/resample_audio.c:255,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/resample_audio.c:255,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/resample_audio.c:256,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/resample_audio.c:256,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/resample_audio.c:257,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/resample_audio.c:257,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/resample_audio.c:258,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/resample_audio.c:258,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/resample_audio.c:259,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/resample_audio.c:259,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 86
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 159
    functionDepth: 3
    functionLinenumber: 159
    functionLinenumberEnd: 261
    functionName: resample_configure_pid
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached:
    - gf_audio_fmt_get_cicp_layout
    - gf_filter_pid_set_max_buffer
    - gf_filter_pid_check_caps
    - gf_audio_fmt_is_planar
    - gf_audio_fmt_get_num_channels_from_layout
    - gf_mixer_remove_input
    - gf_filter_pid_new
    - PROP_LONGUINT
    - gf_mixer_add_input
    - gf_audio_fmt_get_layout_from_cicp
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pid_copy_properties
    - GF_LOG
    - gf_audio_fmt_get_layout_from_name
    - gf_filter_pid_set_property
    - gf_filter_pid_get_max_buffer
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - PROP_UINT
    - gf_mixer_set_config
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err resample_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/resample_audio.c:269,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/resample_audio.c:273,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/resample_audio.c:278,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/resample_audio.c:281,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/resample_audio.c:284,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/resample_audio.c:293,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/resample_audio.c:294,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/resample_audio.c:294,1
    - Dst: FIX2INT
      Src: /src/gpac/src/filters/resample_audio.c:294,1
    - Dst: ABS
      Src: /src/gpac/src/filters/resample_audio.c:303,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/resample_audio.c:313,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/resample_audio.c:314,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/resample_audio.c:321,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/resample_audio.c:334,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/resample_audio.c:338,1
    - Dst: gf_mixer_get_output
      Src: /src/gpac/src/filters/resample_audio.c:340,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/resample_audio.c:342,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/filters/resample_audio.c:346,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/resample_audio.c:348,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/resample_audio.c:349,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/resample_audio.c:350,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/resample_audio.c:351,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/resample_audio.c:364,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 79
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 264
    functionDepth: 4
    functionLinenumber: 264
    functionLinenumberEnd: 368
    functionName: resample_process
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_truncate
    - gf_filter_pid_get_packet
    - gf_filter_pck_forward
    - gf_filter_pck_get_cts
    - gf_filter_pck_discard
    - gf_audio_fmt_bit_depth
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - gf_filter_pck_set_duration
    - gf_filter_pid_set_eos
    - gf_filter_pid_is_eos
    - gf_timestamp_rescale
    - ABS
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - FIX2INT
    - gf_mixer_get_output
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err resample_process(GF_Filter *filter)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/resample_audio.c:376,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/resample_audio.c:380,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/resample_audio.c:384,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/resample_audio.c:388,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/resample_audio.c:392,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/resample_audio.c:395,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/resample_audio.c:397,1
    - Dst: gf_mixer_set_config
      Src: /src/gpac/src/filters/resample_audio.c:410,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/resample_audio.c:417,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/resample_audio.c:417,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/resample_audio.c:418,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/resample_audio.c:418,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/resample_audio.c:419,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/resample_audio.c:419,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/resample_audio.c:420,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/resample_audio.c:420,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/resample_audio.c:421,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/resample_audio.c:421,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/resample_audio.c:425,1
    - Dst: FIX2INT
      Src: /src/gpac/src/filters/resample_audio.c:426,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/resample_audio.c:427,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 50
    argCount: 2
    argNames:
    - filter
    - pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 370
    functionDepth: 2
    functionLinenumber: 370
    functionLinenumberEnd: 431
    functionName: resample_reconfigure_output
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - PROP_UINT
    - GF_FEVT_INIT
    - FIX2INT
    - gf_mixer_set_config
    - gf_filter_pid_send_event
    - gf_filter_pid_caps_query
    - PROP_LONGUINT
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err resample_reconfigure_output(GF_Filter *filter, GF_FilterPid
      *pid)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/resample_audio.c:438,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/resample_audio.c:439,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/resample_audio.c:445,1
    - Dst: FIX2INT
      Src: /src/gpac/src/filters/resample_audio.c:446,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/resample_audio.c:447,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 433
    functionDepth: 1
    functionLinenumber: 433
    functionLinenumberEnd: 453
    functionName: resample_process_event
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - GF_FEVT_INIT
    - FIX2INT
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool resample_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 469
    functionDepth: 0
    functionLinenumber: 469
    functionLinenumberEnd: 470
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_audio_fmt_cicp_all_names
      Src: /src/gpac/src/filters/resample_audio.c:498,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 496
    functionDepth: 2
    functionLinenumber: 496
    functionLinenumberEnd: 500
    functionName: resample_register
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached:
    - gf_audio_fmt_cicp_all_names
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *resample_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 505
      start: 502
    functionDepth: 0
    functionLinenumber: 502
    functionLinenumberEnd: 505
    functionName: resample_register
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *resample_register(GF_FilterSession *session)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_ac4.c:72,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/reframe_ac4.c:77,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/reframe_ac4.c:83,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_ac4.c:89,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_ac4.c:95,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_ac4.c:96,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac4.c:97,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_ac4.c:100,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac4.c:102,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_ac4.c:102,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 110
    functionName: ac4dmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/reframe_ac4.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ac4dmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_ac4.c:127,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_ac4.c:128,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/reframe_ac4.c:135,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/reframe_ac4.c:137,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/filters/reframe_ac4.c:142,1
    - Dst: gf_ac4_parser_bs
      Src: /src/gpac/src/filters/reframe_ac4.c:146,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_ac4.c:153,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_ac4.c:154,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_ac4.c:159,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_ac4.c:162,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_ac4.c:163,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/reframe_ac4.c:164,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac4.c:170,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_ac4.c:170,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_ac4.c:181,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 49
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_AC4DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 112
    functionDepth: 8
    functionLinenumber: 112
    functionLinenumberEnd: 183
    functionName: ac4dmx_check_dur
    functionSourceFile: /src/gpac/src/filters/reframe_ac4.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_filter_pid_get_property
    - gf_filter_pid_set_property
    - gf_fileio_is_main_thread
    - gf_bs_get_position
    - gf_bs_del
    - strncmp
    - gf_fopen_ex
    - PROP_FRAC64
    - gf_bs_from_file
    - gf_ac4_parser_bs
    - gf_bs_skip_bytes
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void ac4dmx_check_dur(GF_Filter *filter, GF_AC4DmxCtx *ctx)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_ac4.c:190,1
    - Dst: ac4dmx_check_dur
      Src: /src/gpac/src/filters/reframe_ac4.c:191,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_ac4.c:202,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_ac4.c:204,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac4.c:206,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_ac4.c:206,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac4.c:209,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_ac4.c:209,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac4.c:210,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_ac4.c:210,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac4.c:213,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_ac4.c:213,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac4.c:217,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_ac4.c:217,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_ac4.c:227,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac4.c:233,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_ac4.c:233,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac4.c:234,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_ac4.c:234,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac4.c:235,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_ac4.c:235,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac4.c:237,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_ac4.c:237,1
    - Dst: gf_odf_ac4_cfg_write
      Src: /src/gpac/src/filters/reframe_ac4.c:238,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac4.c:239,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/reframe_ac4.c:239,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_ac4.c:242,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_ac4.c:242,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 40
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_AC4DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 185
    functionDepth: 9
    functionLinenumber: 185
    functionLinenumberEnd: 244
    functionName: ac4dmx_check_pid
    functionSourceFile: /src/gpac/src/filters/reframe_ac4.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_odf_ac4_cfg_write
    - ac4dmx_check_dur
    - PROP_FRAC64
    - PROP_DATA_NO_COPY
    - PROP_BOOL
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_timestamp_rescale
    linkageType: ''
    returnType: void
    signature: void ac4dmx_check_pid(GF_Filter *filter, GF_AC4DmxCtx *ctx)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_ac4.c:250,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_ac4.c:289,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_ac4.c:291,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 43
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 246
    functionDepth: 1
    functionLinenumber: 246
    functionLinenumberEnd: 305
    functionName: ac4dmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_ac4.c
    functionUses: 0
    functionsReached:
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool ac4dmx_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_ac4.c:309,1
    - Dst: ac4dmx_check_dur
      Src: /src/gpac/src/filters/reframe_ac4.c:323,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_ac4.c:331,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_ac4.c:333,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_ac4.c:336,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_ac4.c:339,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_ac4.c:352,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_ac4.c:354,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_ac4.c:361,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_ac4.c:363,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_ac4.c:377,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_ac4.c:380,1
    - Dst: gf_ac4_parser_bs
      Src: /src/gpac/src/filters/reframe_ac4.c:388,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_ac4.c:390,1
    - Dst: ac4dmx_check_pid
      Src: /src/gpac/src/filters/reframe_ac4.c:403,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_ac4.c:409,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_ac4.c:412,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_ac4.c:450,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_ac4.c:456,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_ac4.c:461,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_ac4.c:463,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_ac4.c:464,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_ac4.c:466,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_ac4.c:468,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_ac4.c:469,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_ac4.c:472,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_ac4.c:489,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_ac4.c:498,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_ac4.c:502,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_ac4.c:514,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_ac4.c:518,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_ac4.c:521,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 154
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 307
    functionDepth: 10
    functionLinenumber: 307
    functionLinenumberEnd: 524
    functionName: ac4dmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_ac4.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - ac4dmx_check_dur
    - gf_filter_pck_ref_props
    - gf_filter_pid_get_packet
    - gf_ac4_parser_bs
    - gf_realloc
    - memcpy
    - gf_filter_pck_get_cts
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - memmove
    - gf_filter_pck_get_data
    - gf_filter_pck_set_duration
    - gf_filter_pid_set_eos
    - gf_bs_get_position
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - gf_timestamp_rescale
    - ac4dmx_check_pid
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - gf_filter_pck_set_framing
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ac4dmx_process(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_ac4.c:528,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_ac4.c:529,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_ac4.c:530,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_ac4.c:531,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_ac4.c:532,1
    - Dst: gf_odf_ac4_cfg_clean_list
      Src: /src/gpac/src/filters/reframe_ac4.c:534,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 526
    functionDepth: 3
    functionLinenumber: 526
    functionLinenumberEnd: 535
    functionName: ac4dmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_ac4.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_del
    - gf_filter_pck_unref
    - gf_odf_ac4_cfg_clean_list
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ac4dmx_finalize(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_log_get_tool_level
      Src: /src/gpac/src/filters/reframe_ac4.c:543,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/filters/reframe_ac4.c:544,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_ac4.c:546,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_ac4.c:547,1
    - Dst: gf_ac4_parser_bs
      Src: /src/gpac/src/filters/reframe_ac4.c:549,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_ac4.c:554,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_ac4.c:561,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_ac4.c:562,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/filters/reframe_ac4.c:566,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_ac4.c:567,1
    - Dst: gf_odf_ac4_cfg_clean_list
      Src: /src/gpac/src/filters/reframe_ac4.c:569,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 27
    argCount: 3
    argNames:
    - _data
    - _size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 537
    functionDepth: 8
    functionLinenumber: 537
    functionLinenumberEnd: 577
    functionName: ac4dmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_ac4.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_get_position
    - gf_bs_del
    - gf_odf_ac4_cfg_clean_list
    - gf_log_get_tool_level
    - gf_bs_available
    - gf_log_set_tool_level
    - gf_ac4_parser_bs
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: char
    signature: char *ac4dmx_probe_data(const u8 *_data, u32 _size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 600
      start: 599
    functionDepth: 0
    functionLinenumber: 599
    functionLinenumberEnd: 600
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/reframe_ac4.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 621
    functionDepth: 0
    functionLinenumber: 621
    functionLinenumberEnd: 624
    functionName: rfac4_register
    functionSourceFile: /src/gpac/src/filters/reframe_ac4.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfac4_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 626
    functionDepth: 0
    functionLinenumber: 626
    functionLinenumberEnd: 629
    functionName: rfac4_register
    functionSourceFile: /src/gpac/src/filters/reframe_ac4.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfac4_register(GF_FilterSession *session)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_img.c:89,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/reframe_img.c:97,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/reframe_img.c:100,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_img.c:105,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_img.c:109,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_img.c:110,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_img.c:111,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 115
    functionName: img_configure_pid
    functionSourceFile: /src/gpac/src/filters/reframe_img.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err img_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_img.c:120,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_img.c:134,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_img.c:136,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 146
    functionName: img_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_img.c
    functionUses: 0
    functionsReached:
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool img_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_img.c:150,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_img.c:161,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_img.c:163,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_img.c:165,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_img.c:171,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_img.c:189,1
    - Dst: gf_img_parse
      Src: /src/gpac/src/filters/reframe_img.c:190,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_img.c:191,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_img.c:195,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_img.c:197,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/reframe_img.c:201,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/reframe_img.c:201,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_img.c:201,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/reframe_img.c:203,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_img.c:203,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/reframe_img.c:205,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/reframe_img.c:205,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_img.c:205,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/reframe_img.c:207,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/reframe_img.c:210,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/reframe_img.c:213,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_img.c:213,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_img.c:218,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_img.c:222,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_img.c:224,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_img.c:232,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_img.c:233,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_img.c:233,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_img.c:234,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_img.c:234,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_img.c:235,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_img.c:235,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_img.c:236,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_img.c:236,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_img.c:237,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_img.c:237,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_img.c:239,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/reframe_img.c:239,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_img.c:241,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_img.c:242,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_img.c:242,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_img.c:246,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_img.c:246,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_img.c:247,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_img.c:247,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_img.c:250,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_img.c:250,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_img.c:258,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_img.c:263,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_img.c:264,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_img.c:265,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_img.c:266,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_img.c:267,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_img.c:268,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_img.c:271,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_img.c:273,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_img.c:275,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/reframe_img.c:280,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_img.c:283,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_img.c:285,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_img.c:286,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_img.c:287,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_img.c:289,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_img.c:290,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_img.c:294,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/reframe_img.c:296,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_img.c:297,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/reframe_img.c:298,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/reframe_img.c:299,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_img.c:300,1
    - Dst: gf_ntohl
      Src: /src/gpac/src/filters/reframe_img.c:301,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_img.c:303,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_img.c:304,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_img.c:314,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_img.c:326,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_img.c:332,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_img.c:336,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_img.c:336,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_img.c:337,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_img.c:337,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_img.c:338,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_img.c:338,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_img.c:340,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_img.c:343,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_img.c:345,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_img.c:346,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_img.c:347,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_img.c:374,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_img.c:375,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 191
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 148
    functionDepth: 7
    functionLinenumber: 148
    functionLinenumberEnd: 377
    functionName: img_process
    functionSourceFile: /src/gpac/src/filters/reframe_img.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_filter_pck_new_ref
    - gf_bs_new
    - PROP_DATA_NO_COPY
    - gf_bs_read_u16
    - gf_bs_available
    - gf_filter_pid_new
    - gf_filter_pid_get_packet
    - gf_img_parse
    - gf_bs_read_u32
    - PROP_BOOL
    - stricmp
    - gf_bs_skip_bytes
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pid_copy_properties
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_filter_pid_set_eos
    - gf_bs_get_position
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - gf_filter_pid_set_property
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_bs_del
    - strcmp
    - gf_ntohl
    - GF_4CC
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err img_process(GF_Filter *filter)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_img.c:393,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_img.c:394,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_img.c:395,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_img.c:399,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_img.c:402,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_img.c:405,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_img.c:409,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 28
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 381
    functionDepth: 4
    functionLinenumber: 381
    functionLinenumberEnd: 415
    functionName: img_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_img.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_bs_new
    - gf_bs_del
    linkageType: ''
    returnType: char
    signature: char * img_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 429
    functionDepth: 0
    functionLinenumber: 429
    functionLinenumberEnd: 430
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/reframe_img.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 455
    functionDepth: 0
    functionLinenumber: 455
    functionLinenumberEnd: 458
    functionName: rfimg_register
    functionSourceFile: /src/gpac/src/filters/reframe_img.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfimg_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 463
      start: 460
    functionDepth: 0
    functionLinenumber: 460
    functionLinenumberEnd: 463
    functionName: rfimg_register
    functionSourceFile: /src/gpac/src/filters/reframe_img.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfimg_register(GF_FilterSession *session)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/gpac/src/filters/in_dvb4linux.c:97,1
    - Dst: close
      Src: /src/gpac/src/filters/in_dvb4linux.c:99,1
    - Dst: close
      Src: /src/gpac/src/filters/in_dvb4linux.c:101,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DVBLinuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 105
    functionName: dvblin_stop
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - close
    linkageType: ''
    returnType: void
    signature: void dvblin_stop(GF_DVBLinuxCtx *ctx)
  - BBCount: 104
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/in_dvb4linux.c:114,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/in_dvb4linux.c:118,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/in_dvb4linux.c:122,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:124,1
    - Dst: atoi
      Src: /src/gpac/src/filters/in_dvb4linux.c:138,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/in_dvb4linux.c:141,1
    - Dst: gf_fgets
      Src: /src/gpac/src/filters/in_dvb4linux.c:143,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_dvb4linux.c:149,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:152,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/in_dvb4linux.c:154,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_dvb4linux.c:158,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:161,1
    - Dst: atoi
      Src: /src/gpac/src/filters/in_dvb4linux.c:163,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_dvb4linux.c:166,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:169,1
    - Dst: atoi
      Src: /src/gpac/src/filters/in_dvb4linux.c:171,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:177,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:181,1
    - Dst: gf_strict_atoui
      Src: /src/gpac/src/filters/in_dvb4linux.c:187,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:203,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:207,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_dvb4linux.c:207,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:211,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/in_dvb4linux.c:216,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:219,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:220,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:227,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:228,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:229,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:230,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:231,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:232,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:233,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:234,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:235,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:239,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:240,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:241,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:242,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:243,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:245,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:246,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:247,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:249,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:250,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:252,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:253,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:254,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:257,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:258,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:259,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:260,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:270,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:270,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/in_dvb4linux.c:274,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:276,1
    - Dst: abs
      Src: /src/gpac/src/filters/in_dvb4linux.c:342,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/in_dvb4linux.c:358,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:361,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/in_dvb4linux.c:368,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:371,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:373,1
    - Dst: atoi
      Src: /src/gpac/src/filters/in_dvb4linux.c:375,1
    CyclomaticComplexity: 125
    EdgeCount: 125
    ICount: 316
    argCount: 3
    argNames:
    - ctx
    - chan_name
    - params
    argTypes:
    - GF_DVBLinuxCtx*
    - char*
    - GF_DVBParams*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 107
    functionDepth: 5
    functionLinenumber: 107
    functionLinenumberEnd: 378
    functionName: dvblin_get_channel_params
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_feof
    - sscanf
    - GF_LOG
    - gf_fgets
    - abs
    - strcpy
    - strstr
    - strncpy
    - memset
    - gf_fopen
    - atoi
    - strcmp
    - strnicmp
    - strncmp
    - gf_strict_atoui
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dvblin_get_channel_params(GF_DVBLinuxCtx *ctx, char *chan_name,
      GF_DVBParams *params)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _cmd
    - ','
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 383
    functionDepth: 0
    functionLinenumber: 383
    functionLinenumberEnd: 389
    functionName: DVB_SET_PROP
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DVB_SET_PROP(_cmd, _val)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ioctl
      Src: /src/gpac/src/filters/in_dvb4linux.c:393,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:394,1
    - Dst: ioctl
      Src: /src/gpac/src/filters/in_dvb4linux.c:398,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:399,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filters/in_dvb4linux.c:402,1
    - Dst: ioctl
      Src: /src/gpac/src/filters/in_dvb4linux.c:404,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:405,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filters/in_dvb4linux.c:408,1
    - Dst: ioctl
      Src: /src/gpac/src/filters/in_dvb4linux.c:410,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:411,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filters/in_dvb4linux.c:414,1
    - Dst: ioctl
      Src: /src/gpac/src/filters/in_dvb4linux.c:416,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:417,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filters/in_dvb4linux.c:420,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 5
    argNames:
    - ctx
    - cmd
    - voltage
    - tone_mode
    - mini_c
    argTypes:
    - GF_DVBLinuxCtx*
    - struct dvb_diseqc_master_cmd*
    - fe_sec_voltage_t
    - fe_sec_tone_mode_t
    - fe_sec_mini_cmd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 391
    functionDepth: 1
    functionLinenumber: 391
    functionLinenumberEnd: 422
    functionName: send_diseqc
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - ioctl
    - gf_sleep
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err send_diseqc(GF_DVBLinuxCtx *ctx, struct dvb_diseqc_master_cmd
      *cmd, fe_sec_voltage_t voltage, fe_sec_tone_mode_t tone_mode, fe_sec_mini_cmd_t
      mini_c)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/in_dvb4linux.c:437,1
    - Dst: dvblin_get_channel_params
      Src: /src/gpac/src/filters/in_dvb4linux.c:442,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:445,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/in_dvb4linux.c:447,1
    - Dst: open
      Src: /src/gpac/src/filters/in_dvb4linux.c:450,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:451,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:456,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:457,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:458,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:459,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:460,1
    - Dst: send_diseqc
      Src: /src/gpac/src/filters/in_dvb4linux.c:485,1
    - Dst: dvblin_stop
      Src: /src/gpac/src/filters/in_dvb4linux.c:487,1
    - Dst: send_diseqc
      Src: /src/gpac/src/filters/in_dvb4linux.c:498,1
    - Dst: dvblin_stop
      Src: /src/gpac/src/filters/in_dvb4linux.c:500,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/in_dvb4linux.c:503,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:505,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:506,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:507,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:508,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/in_dvb4linux.c:520,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:531,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:532,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:533,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:534,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:535,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:536,1
    - Dst: dvblin_stop
      Src: /src/gpac/src/filters/in_dvb4linux.c:547,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:553,1
    - Dst: ioctl
      Src: /src/gpac/src/filters/in_dvb4linux.c:556,1
    - Dst: ioctl
      Src: /src/gpac/src/filters/in_dvb4linux.c:558,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:561,1
    - Dst: dvblin_stop
      Src: /src/gpac/src/filters/in_dvb4linux.c:562,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/in_dvb4linux.c:567,1
    - Dst: open
      Src: /src/gpac/src/filters/in_dvb4linux.c:568,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:569,1
    - Dst: dvblin_stop
      Src: /src/gpac/src/filters/in_dvb4linux.c:570,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_dvb4linux.c:577,1
    - Dst: ioctl
      Src: /src/gpac/src/filters/in_dvb4linux.c:584,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:585,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/in_dvb4linux.c:589,1
    - Dst: open
      Src: /src/gpac/src/filters/in_dvb4linux.c:590,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:591,1
    - Dst: dvblin_stop
      Src: /src/gpac/src/filters/in_dvb4linux.c:592,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:595,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_dvb4linux.c:596,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 107
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DVBLinuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 426
    functionDepth: 6
    functionLinenumber: 426
    functionLinenumberEnd: 598
    functionName: dvblin_tune
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - open
    - GF_LOG
    - gf_sys_clock
    - sprintf
    - memset
    - ioctl
    - DVB_SET_PROP
    - dvblin_stop
    - strchr
    - fprintf
    - dvblin_get_channel_params
    - send_diseqc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dvblin_tune(GF_DVBLinuxCtx *ctx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/in_dvb4linux.c:609,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/in_dvb4linux.c:613,1
    - Dst: gf_fgets
      Src: /src/gpac/src/filters/in_dvb4linux.c:614,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:619,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:621,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:624,1
    - Dst: atoi
      Src: /src/gpac/src/filters/in_dvb4linux.c:626,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/in_dvb4linux.c:631,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 28
    argCount: 2
    argNames:
    - ctx
    - url
    argTypes:
    - GF_DVBLinuxCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 633
      start: 601
    functionDepth: 5
    functionLinenumber: 601
    functionLinenumberEnd: 633
    functionName: gf_dvblin_get_freq_from_url
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_feof
    - gf_fgets
    - gf_fopen
    - strcmp
    - atoi
    - strchr
    linkageType: ''
    returnType: u32
    signature: u32 gf_dvblin_get_freq_from_url(GF_DVBLinuxCtx *ctx, const char *url)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_dvblin_get_freq_from_url
      Src: /src/gpac/src/filters/in_dvb4linux.c:642,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:643,1
    - Dst: dvblin_tune
      Src: /src/gpac/src/filters/in_dvb4linux.c:648,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:650,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DVBLinuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 654
      start: 636
    functionDepth: 7
    functionLinenumber: 636
    functionLinenumberEnd: 654
    functionName: dvblin_setup_demux
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_dvblin_get_freq_from_url
    - dvblin_tune
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dvblin_setup_demux(GF_DVBLinuxCtx *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_dvb4linux.c:659,1
    - Dst: dvblin_stop
      Src: /src/gpac/src/filters/in_dvb4linux.c:660,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_dvb4linux.c:661,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 662
      start: 657
    functionDepth: 1
    functionLinenumber: 657
    functionLinenumberEnd: 662
    functionName: dvblin_finalize
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - dvblin_stop
    - gf_free
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void dvblin_finalize(GF_Filter *filter)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_dvb4linux.c:666,1
    - Dst: dvblin_setup_demux
      Src: /src/gpac/src/filters/in_dvb4linux.c:674,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/in_dvb4linux.c:676,1
    - Dst: dvblin_stop
      Src: /src/gpac/src/filters/in_dvb4linux.c:679,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 686
      start: 664
    functionDepth: 8
    functionLinenumber: 664
    functionLinenumberEnd: 686
    functionName: dvblin_process_event
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - dvblin_stop
    - dvblin_setup_demux
    - gf_filter_post_process_task
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool dvblin_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_dvb4linux.c:694,1
    - Dst: read
      Src: /src/gpac/src/filters/in_dvb4linux.c:701,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_dvb4linux.c:704,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_dvb4linux.c:705,1
    - Dst: dvblin_stop
      Src: /src/gpac/src/filters/in_dvb4linux.c:706,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_dvb4linux.c:710,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/in_dvb4linux.c:717,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_dvb4linux.c:719,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/in_dvb4linux.c:724,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_dvb4linux.c:724,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/in_dvb4linux.c:728,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/in_dvb4linux.c:730,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/in_dvb4linux.c:731,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_dvb4linux.c:732,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 40
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 688
    functionDepth: 1
    functionLinenumber: 688
    functionLinenumberEnd: 738
    functionName: dvblin_process
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - PROP_UINT
    - read
    - gf_filter_pid_raw_new
    - memcpy
    - gf_filter_pck_send
    - gf_filter_ask_rt_reschedule
    - gf_filter_pid_set_property_str
    - gf_filter_pck_set_framing
    - gf_filter_setup_failure
    - dvblin_stop
    - gf_sys_clock
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dvblin_process(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:742,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - url
    - mime_type
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 744
      start: 740
    functionDepth: 0
    functionLinenumber: 740
    functionLinenumberEnd: 744
    functionName: dvblin_probe_url
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - strnicmp
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore dvblin_probe_url(const char *url, const char *mime_type)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_dvb4linux.c:750,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:753,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/in_dvb4linux.c:755,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:756,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:759,1
    - Dst: dvbin_list_channels
      Src: /src/gpac/src/filters/in_dvb4linux.c:761,1
    - Dst: dvblin_setup_demux
      Src: /src/gpac/src/filters/in_dvb4linux.c:765,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/in_dvb4linux.c:769,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 773
      start: 748
    functionDepth: 8
    functionLinenumber: 748
    functionLinenumberEnd: 773
    functionName: dvblin_initialize
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - gf_file_exists
    - GF_LOG
    - dvbin_list_channels
    - dvblin_setup_demux
    - strnicmp
    - stricmp
    - gf_malloc
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dvblin_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 779
      start: 776
    functionDepth: 0
    functionLinenumber: 776
    functionLinenumberEnd: 779
    functionName: dvblin_process
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dvblin_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 784
      start: 783
    functionDepth: 0
    functionLinenumber: 783
    functionLinenumberEnd: 784
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 786
      start: 785
    functionDepth: 0
    functionLinenumber: 785
    functionLinenumberEnd: 786
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_dvb4linux.c:848,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - session
    - freg
    argTypes:
    - GF_FilterSession*
    - GF_FilterRegister*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 849
      start: 846
    functionDepth: 0
    functionLinenumber: 846
    functionLinenumberEnd: 849
    functionName: dvbin_cleanreg
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void dvbin_cleanreg(GF_FilterSession *session, GF_FilterRegister *freg)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_solve_path
      Src: /src/gpac/src/filters/in_dvb4linux.c:863,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/in_dvb4linux.c:865,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/in_dvb4linux.c:869,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/in_dvb4linux.c:875,1
    - Dst: gf_fgets
      Src: /src/gpac/src/filters/in_dvb4linux.c:877,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:882,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:884,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:887,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:889,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_dvb4linux.c:894,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_dvb4linux.c:895,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_dvb4linux.c:897,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_dvb4linux.c:898,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_dvb4linux.c:899,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_dvb4linux.c:900,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_dvb4linux.c:901,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/in_dvb4linux.c:906,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_dvb4linux.c:907,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/in_dvb4linux.c:911,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 50
    argCount: 2
    argNames:
    - for_reg
    - _for_ctx
    argTypes:
    - GF_FilterRegister*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 918
      start: 853
    functionDepth: 5
    functionLinenumber: 853
    functionLinenumberEnd: 918
    functionName: dvbin_list_channels
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 1
    functionsReached:
    - gf_fclose
    - gf_strdup
    - gf_feof
    - gf_fgets
    - gf_fopen
    - gf_dynstrcat
    - strchr
    - gf_sys_solve_path
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dvbin_list_channels(GF_FilterRegister *for_reg, void *_for_ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/in_dvb4linux.c:924,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/in_dvb4linux.c:924,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/in_dvb4linux.c:933,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/in_dvb4linux.c:934,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/in_dvb4linux.c:936,1
    - Dst: dvbin_list_channels
      Src: /src/gpac/src/filters/in_dvb4linux.c:941,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 945
      start: 921
    functionDepth: 6
    functionLinenumber: 921
    functionLinenumberEnd: 945
    functionName: dvbin_register
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - dvbin_list_channels
    - gf_opts_get_bool
    - gf_opts_set_key
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *dvbin_register(GF_FilterSession *session)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/io_fcryp.c:85,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/io_fcryp.c:88,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/io_fcryp.c:92,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/io_fcryp.c:94,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/io_fcryp.c:95,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/io_fcryp.c:96,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/io_fcryp.c:96,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/io_fcryp.c:98,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/io_fcryp.c:99,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/io_fcryp.c:102,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/io_fcryp.c:103,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/io_fcryp.c:103,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/io_fcryp.c:107,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 109
    functionName: cryptfile_configure_pid
    functionSourceFile: /src/gpac/src/filters/io_fcryp.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - gf_filter_pid_get_property
    - PROP_NAME
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_set_eos
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cryptfile_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_notification_failure
      Src: /src/gpac/src/filters/io_fcryp.c:119,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/io_fcryp.c:121,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/io_fcryp.c:123,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - failed_filter
    - udta
    - err
    argTypes:
    - GF_Filter*
    - void*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 125
    functionName: cryptfile_on_filter_setup_error
    functionSourceFile: /src/gpac/src/filters/io_fcryp.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    - gf_filter_abort
    - gf_filter_notification_failure
    linkageType: ''
    returnType: Bool
    signature: Bool cryptfile_on_filter_setup_error(GF_Filter *failed_filter, void
      *udta, GF_Err err)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/io_fcryp.c:131,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/io_fcryp.c:134,1
    - Dst: gf_filter_get_src_args
      Src: /src/gpac/src/filters/io_fcryp.c:136,1
    - Dst: strstr
      Src: /src/gpac/src/filters/io_fcryp.c:137,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/io_fcryp.c:142,1
    - Dst: cryptfile_on_filter_setup_error
      Src: /src/gpac/src/filters/io_fcryp.c:143,1
    - Dst: gf_filter_connect_source
      Src: /src/gpac/src/filters/io_fcryp.c:147,1
    - Dst: gf_filter_set_setup_failure_callback
      Src: /src/gpac/src/filters/io_fcryp.c:149,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/io_fcryp.c:150,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 127
    functionDepth: 2
    functionLinenumber: 127
    functionLinenumberEnd: 151
    functionName: cryptfin_initialize
    functionSourceFile: /src/gpac/src/filters/io_fcryp.c
    functionUses: 0
    functionsReached:
    - gf_filter_set_source
    - cryptfile_on_filter_setup_error
    - strstr
    - strncmp
    - gf_filter_get_src_args
    - gf_filter_set_setup_failure_callback
    - gf_filter_connect_source
    - gf_sys_is_cov_mode
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cryptfin_initialize(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/io_fcryp.c:155,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/io_fcryp.c:156,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/io_fcryp.c:157,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/io_fcryp.c:160,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/io_fcryp.c:161,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/io_fcryp.c:162,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/io_fcryp.c:164,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 153
    functionDepth: 2
    functionLinenumber: 153
    functionLinenumberEnd: 166
    functionName: cryptfile_finalize
    functionSourceFile: /src/gpac/src/filters/io_fcryp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_front
    - gf_list_count
    - gf_crypt_close
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void cryptfile_finalize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/filters/io_fcryp.c:170,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - url
    - mime_type
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 172
    functionName: cryptfile_probe_url
    functionSourceFile: /src/gpac/src/filters/io_fcryp.c
    functionUses: 0
    functionsReached:
    - strnicmp
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore cryptfile_probe_url(const char *url, const char
      *mime_type)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/io_fcryp.c:177,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/io_fcryp.c:179,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/io_fcryp.c:183,1
    - Dst: gf_crypt_set_key
      Src: /src/gpac/src/filters/io_fcryp.c:185,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/io_fcryp.c:187,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_CryptFileCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 174
    functionDepth: 2
    functionLinenumber: 174
    functionLinenumberEnd: 190
    functionName: cryptfile_set_key
    functionSourceFile: /src/gpac/src/filters/io_fcryp.c
    functionUses: 0
    functionsReached:
    - gf_crypt_set_IV
    - GF_LOG
    - gf_crypt_init
    - gf_crypt_set_key
    - gf_crypt_open
    linkageType: ''
    returnType: void
    signature: void cryptfile_set_key(GF_CryptFileCtx *ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/io_fcryp.c:198,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/io_fcryp.c:203,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/io_fcryp.c:209,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/io_fcryp.c:209,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - usr_cbk
    - parameter
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 193
    functionDepth: 1
    functionLinenumber: 193
    functionLinenumberEnd: 213
    functionName: cryptfin_net_io
    functionSourceFile: /src/gpac/src/filters/io_fcryp.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - memcpy
    - gf_error_to_string
    linkageType: ''
    returnType: void
    signature: void cryptfin_net_io(void *usr_cbk, GF_NETIO_Parameter *parameter)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/io_fcryp.c:224,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/io_fcryp.c:229,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/io_fcryp.c:231,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/io_fcryp.c:232,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/io_fcryp.c:239,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/io_fcryp.c:240,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/io_fcryp.c:250,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/filters/io_fcryp.c:256,1
    - Dst: gf_dm_sess_setup_from_url
      Src: /src/gpac/src/filters/io_fcryp.c:258,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/io_fcryp.c:261,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/io_fcryp.c:261,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/io_fcryp.c:265,1
    - Dst: cryptfile_set_key
      Src: /src/gpac/src/filters/io_fcryp.c:273,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/io_fcryp.c:277,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/io_fcryp.c:290,1
    - Dst: gf_filter_pck_new_clone
      Src: /src/gpac/src/filters/io_fcryp.c:291,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/io_fcryp.c:294,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/io_fcryp.c:297,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/filters/io_fcryp.c:301,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/io_fcryp.c:302,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/io_fcryp.c:304,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/io_fcryp.c:307,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/io_fcryp.c:308,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/io_fcryp.c:318,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/io_fcryp.c:322,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/io_fcryp.c:323,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/io_fcryp.c:324,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/io_fcryp.c:325,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/io_fcryp.c:326,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/io_fcryp.c:329,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/io_fcryp.c:335,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/filters/io_fcryp.c:339,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/io_fcryp.c:341,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/io_fcryp.c:341,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/io_fcryp.c:343,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/io_fcryp.c:343,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/io_fcryp.c:345,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/io_fcryp.c:346,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 112
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 216
    functionDepth: 3
    functionLinenumber: 216
    functionLinenumberEnd: 348
    functionName: cryptfin_process
    functionSourceFile: /src/gpac/src/filters/io_fcryp.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_process
    - gf_filter_pck_new_clone
    - gf_filter_pck_truncate
    - gf_filter_pid_get_packet
    - gf_dm_sess_setup_from_url
    - gf_filter_pck_get_framing
    - gf_crypt_set_IV
    - gf_filter_pck_forward
    - memcpy
    - gf_dm_sess_new
    - PROP_BOOL
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_filter_pid_set_eos
    - cryptfile_set_key
    - gf_error_to_string
    - gf_filter_pid_is_eos
    - gf_filter_get_download_manager
    - gf_filter_pid_set_info
    - gf_filter_pck_merge_properties
    - gf_filter_pck_set_framing
    - gf_crypt_decrypt
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cryptfin_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 352
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/io_fcryp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 391
    functionDepth: 0
    functionLinenumber: 391
    functionLinenumberEnd: 394
    functionName: cryptin_register
    functionSourceFile: /src/gpac/src/filters/io_fcryp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *cryptin_register(GF_FilterSession *session)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_is_instance_of
      Src: /src/gpac/src/filters/io_fcryp.c:399,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/io_fcryp.c:401,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/io_fcryp.c:404,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/io_fcryp.c:406,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/io_fcryp.c:409,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/io_fcryp.c:415,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/io_fcryp.c:421,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/io_fcryp.c:423,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/io_fcryp.c:427,1
    - Dst: strlen
      Src: /src/gpac/src/filters/io_fcryp.c:428,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/io_fcryp.c:430,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/io_fcryp.c:440,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/io_fcryp.c:443,1
    - Dst: cryptfile_set_key
      Src: /src/gpac/src/filters/io_fcryp.c:444,1
    - Dst: gf_url_is_local
      Src: /src/gpac/src/filters/io_fcryp.c:447,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/io_fcryp.c:448,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/io_fcryp.c:451,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/io_fcryp.c:453,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/io_fcryp.c:455,1
    - Dst: cryptfile_set_key
      Src: /src/gpac/src/filters/io_fcryp.c:458,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/io_fcryp.c:460,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 54
    argCount: 3
    argNames:
    - filter
    - key_url
    - key_IV
    argTypes:
    - GF_Filter*
    - char*
    - bin128
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 396
    functionDepth: 5
    functionLinenumber: 396
    functionLinenumberEnd: 464
    functionName: gf_cryptfin_set_kms
    functionSourceFile: /src/gpac/src/filters/io_fcryp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_strdup
    - sscanf
    - memcpy
    - GF_LOG
    - gf_fread
    - gf_filter_is_instance_of
    - cryptfile_set_key
    - gf_url_is_local
    - strncmp
    - strcmp
    - gf_fopen
    - strlen
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void gf_cryptfin_set_kms(GF_Filter *filter, const char *key_url, bin128
      key_IV)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/io_fcryp.c:473,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/io_fcryp.c:476,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/io_fcryp.c:477,1
    - Dst: gf_filter_get_src_args
      Src: /src/gpac/src/filters/io_fcryp.c:481,1
    - Dst: strstr
      Src: /src/gpac/src/filters/io_fcryp.c:482,1
    - Dst: gf_filter_connect_destination
      Src: /src/gpac/src/filters/io_fcryp.c:486,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/io_fcryp.c:488,1
    - Dst: gf_filter_mirror_forced_caps
      Src: /src/gpac/src/filters/io_fcryp.c:490,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 469
    functionDepth: 1
    functionLinenumber: 469
    functionLinenumberEnd: 493
    functionName: cryptfout_initialize
    functionSourceFile: /src/gpac/src/filters/io_fcryp.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_set_source
    - gf_filter_mirror_forced_caps
    - gf_filter_connect_destination
    - strstr
    - strncmp
    - gf_filter_get_src_args
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cryptfout_initialize(GF_Filter *filter)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/io_fcryp.c:503,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/io_fcryp.c:504,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/io_fcryp.c:510,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/io_fcryp.c:510,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/io_fcryp.c:512,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/io_fcryp.c:520,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/io_fcryp.c:524,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/io_fcryp.c:529,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/io_fcryp.c:531,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/io_fcryp.c:536,1
    - Dst: gf_crypt_encrypt
      Src: /src/gpac/src/filters/io_fcryp.c:541,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/io_fcryp.c:543,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/io_fcryp.c:546,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/io_fcryp.c:549,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/io_fcryp.c:560,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/io_fcryp.c:562,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/io_fcryp.c:565,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/io_fcryp.c:566,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/io_fcryp.c:568,1
    - Dst: gf_crypt_set_key
      Src: /src/gpac/src/filters/io_fcryp.c:569,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/io_fcryp.c:570,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/io_fcryp.c:573,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/io_fcryp.c:575,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/io_fcryp.c:580,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/io_fcryp.c:581,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/io_fcryp.c:586,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/io_fcryp.c:588,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/io_fcryp.c:591,1
    - Dst: gf_crypt_encrypt
      Src: /src/gpac/src/filters/io_fcryp.c:595,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/io_fcryp.c:597,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/io_fcryp.c:598,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/io_fcryp.c:599,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/io_fcryp.c:604,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/io_fcryp.c:617,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/io_fcryp.c:621,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/io_fcryp.c:622,1
    - Dst: gf_crypt_encrypt
      Src: /src/gpac/src/filters/io_fcryp.c:626,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/io_fcryp.c:628,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/io_fcryp.c:629,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/io_fcryp.c:632,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/io_fcryp.c:635,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/io_fcryp.c:636,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 119
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 638
      start: 495
    functionDepth: 2
    functionLinenumber: 495
    functionLinenumberEnd: 638
    functionName: cryptfout_process
    functionSourceFile: /src/gpac/src/filters/io_fcryp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memcmp
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_framing
    - gf_crypt_set_IV
    - gf_filter_pck_forward
    - memcpy
    - gf_crypt_set_key
    - gf_filter_get_udta
    - gf_list_insert
    - gf_filter_pck_new_alloc
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - gf_filter_pid_set_eos
    - gf_crypt_encrypt
    - gf_crypt_open
    - gf_filter_pid_is_eos
    - gf_list_pop_front
    - gf_filter_pck_merge_properties
    - gf_crypt_init
    - gf_filter_pck_set_framing
    - gf_filter_pid_is_flush_eos
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cryptfout_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 668
    functionDepth: 0
    functionLinenumber: 668
    functionLinenumberEnd: 671
    functionName: cryptout_register
    functionSourceFile: /src/gpac/src/filters/io_fcryp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *cryptout_register(GF_FilterSession *session)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_is_instance_of
      Src: /src/gpac/src/filters/io_fcryp.c:677,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/io_fcryp.c:680,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/io_fcryp.c:681,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/io_fcryp.c:685,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/io_fcryp.c:686,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/io_fcryp.c:689,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - filter
    - key
    - IV
    argTypes:
    - GF_Filter*
    - bin128*
    - bin128*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 690
      start: 673
    functionDepth: 1
    functionLinenumber: 673
    functionLinenumberEnd: 690
    functionName: gf_cryptfout_push_key
    functionSourceFile: /src/gpac/src/filters/io_fcryp.c
    functionUses: 2
    functionsReached:
    - GF_SAFEALLOC
    - memcpy
    - gf_filter_is_instance_of
    - gf_list_add
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_cryptfout_push_key(GF_Filter *filter, bin128 *key, bin128
      *IV)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 697
      start: 694
    functionDepth: 0
    functionLinenumber: 694
    functionLinenumberEnd: 697
    functionName: cryptin_register
    functionSourceFile: /src/gpac/src/filters/io_fcryp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *cryptin_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 701
      start: 698
    functionDepth: 0
    functionLinenumber: 698
    functionLinenumberEnd: 701
    functionName: cryptout_register
    functionSourceFile: /src/gpac/src/filters/io_fcryp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *cryptout_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - filter
    - key
    - IV
    argTypes:
    - GF_Filter*
    - bin128*
    - bin128*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 703
    functionDepth: 0
    functionLinenumber: 703
    functionLinenumberEnd: 706
    functionName: gf_cryptfout_push_key
    functionSourceFile: /src/gpac/src/filters/io_fcryp.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_cryptfout_push_key(GF_Filter *filter, bin128 *key, bin128
      *IV)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_bifs.c:52,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_bifs.c:55,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_bifs.c:60,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/filters/dec_bifs.c:68,1
    - Dst: gf_bifs_decoder_new
      Src: /src/gpac/src/filters/dec_bifs.c:69,1
    - Dst: gf_bifs_decoder_new
      Src: /src/gpac/src/filters/dec_bifs.c:72,1
    - Dst: gf_bifs_decoder_configure_stream
      Src: /src/gpac/src/filters/dec_bifs.c:77,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 2
    argNames:
    - ctx
    - pid
    argTypes:
    - GF_BIFSDecCtx*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 45
    functionDepth: 3
    functionLinenumber: 45
    functionLinenumberEnd: 81
    functionName: bifs_dec_configure_bifs_dec
    functionSourceFile: /src/gpac/src/filters/dec_bifs.c
    functionUses: 0
    functionsReached:
    - gf_bifs_decoder_new
    - gf_bifs_decoder_configure_stream
    - gf_node_get_graph
    - gf_filter_pid_get_property
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bifs_dec_configure_bifs_dec(GF_BIFSDecCtx *ctx, GF_FilterPid
      *pid)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_bifs.c:86,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_bifs.c:90,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_bifs.c:94,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_bifs.c:99,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dec_bifs.c:105,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_bifs.c:109,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dec_bifs.c:113,1
    - Dst: bifs_dec_configure_bifs_dec
      Src: /src/gpac/src/filters/dec_bifs.c:114,1
    - Dst: gf_filter_pid_is_filter_in_parents
      Src: /src/gpac/src/filters/dec_bifs.c:118,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_bifs.c:124,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_bifs.c:127,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_bifs.c:128,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_bifs.c:128,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dec_bifs.c:129,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 34
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 83
    functionDepth: 4
    functionLinenumber: 83
    functionLinenumberEnd: 134
    functionName: bifs_dec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_bifs.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_is_filter_in_parents
    - bifs_dec_configure_bifs_dec
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bifs_dec_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_bifs.c:148,1
    - Dst: gf_bifs_decode_has_conditionnals
      Src: /src/gpac/src/filters/dec_bifs.c:154,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/dec_bifs.c:155,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dec_bifs.c:155,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_bifs.c:157,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/dec_bifs.c:164,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dec_bifs.c:166,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dec_bifs.c:167,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dec_bifs.c:169,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_bifs.c:173,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_bifs.c:175,1
    - Dst: gf_bifs_decode_has_conditionnals
      Src: /src/gpac/src/filters/dec_bifs.c:177,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/dec_bifs.c:178,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dec_bifs.c:178,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_bifs.c:180,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_bifs.c:184,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_bifs.c:186,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_bifs.c:189,1
    - Dst: gf_timestamp_to_clocktime
      Src: /src/gpac/src/filters/dec_bifs.c:190,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_bifs.c:190,1
    - Dst: gf_sc_check_sys_frame
      Src: /src/gpac/src/filters/dec_bifs.c:192,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/dec_bifs.c:197,1
    - Dst: gf_bifs_decode_au
      Src: /src/gpac/src/filters/dec_bifs.c:198,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/dec_bifs.c:199,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_bifs.c:201,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_bifs.c:203,1
    - Dst: gf_scene_attach_to_compositor
      Src: /src/gpac/src/filters/dec_bifs.c:207,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 48
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 138
    functionDepth: 11
    functionLinenumber: 138
    functionLinenumberEnd: 210
    functionName: bifs_dec_process
    functionSourceFile: /src/gpac/src/filters/dec_bifs.c
    functionUses: 0
    functionsReached:
    - gf_bifs_decode_has_conditionnals
    - gf_filter_get_ipid
    - gf_sc_check_sys_frame
    - gf_filter_pid_get_packet
    - gf_scene_attach_to_compositor
    - gf_filter_pck_get_cts
    - PROP_BOOL
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_timescale
    - gf_filter_get_ipid_count
    - gf_filter_pid_is_eos
    - gf_sys_clock_high_res
    - gf_filter_pid_set_info
    - gf_filter_pid_get_property
    - gf_timestamp_to_clocktime
    - gf_filter_pid_get_udta
    - gf_bifs_decode_au
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bifs_dec_process(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_bifs.c:214,1
    - Dst: gf_bifs_decoder_del
      Src: /src/gpac/src/filters/dec_bifs.c:215,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 212
    functionDepth: 3
    functionLinenumber: 212
    functionLinenumberEnd: 216
    functionName: bifs_dec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_bifs.c
    functionUses: 0
    functionsReached:
    - gf_bifs_decoder_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void bifs_dec_finalize(GF_Filter *filter)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_bifs.c:222,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/dec_bifs.c:238,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dec_bifs.c:240,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dec_bifs.c:241,1
    - Dst: bifs_dec_configure_bifs_dec
      Src: /src/gpac/src/filters/dec_bifs.c:248,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dec_bifs.c:249,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 2
    argNames:
    - filter
    - com
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 219
    functionDepth: 4
    functionLinenumber: 219
    functionLinenumberEnd: 255
    functionName: bifs_dec_process_event
    functionSourceFile: /src/gpac/src/filters/dec_bifs.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_udta
    - gf_filter_get_ipid
    - bifs_dec_configure_bifs_dec
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool bifs_dec_process_event(GF_Filter *filter, const GF_FilterEvent
      *com)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 285
    functionDepth: 0
    functionLinenumber: 285
    functionLinenumberEnd: 292
    functionName: bifsdec_register
    functionSourceFile: /src/gpac/src/filters/dec_bifs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *bifsdec_register(GF_FilterSession *session)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_sock.c:98,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_sock.c:102,1
    - Dst: gf_sk_group_new
      Src: /src/gpac/src/filters/in_sock.c:105,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_sock.c:108,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_sock.c:112,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_sock.c:115,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_sock.c:117,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_sock.c:125,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/filters/in_sock.c:129,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/in_sock.c:129,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_sock.c:131,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/in_sock.c:138,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_sock.c:140,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_sock.c:140,1
    - Dst: atoi
      Src: /src/gpac/src/filters/in_sock.c:142,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/filters/in_sock.c:148,1
    - Dst: gf_sk_setup_multicast_ex
      Src: /src/gpac/src/filters/in_sock.c:149,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/filters/in_sock.c:156,1
    - Dst: gf_sk_connect
      Src: /src/gpac/src/filters/in_sock.c:159,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/filters/in_sock.c:161,1
    - Dst: gf_sk_listen
      Src: /src/gpac/src/filters/in_sock.c:163,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/in_sock.c:165,1
    - Dst: gf_sk_server_mode
      Src: /src/gpac/src/filters/in_sock.c:166,1
    - Dst: gf_sk_connect
      Src: /src/gpac/src/filters/in_sock.c:170,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/in_sock.c:173,1
    - Dst: gf_sk_get_remote_address
      Src: /src/gpac/src/filters/in_sock.c:174,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/in_sock.c:179,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/filters/in_sock.c:184,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_sock.c:186,1
    - Dst: gf_filter_prevent_blocking
      Src: /src/gpac/src/filters/in_sock.c:194,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/filters/in_sock.c:196,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/filters/in_sock.c:197,1
    - Dst: gf_filter_set_blocking
      Src: /src/gpac/src/filters/in_sock.c:200,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/in_sock.c:202,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_sock.c:205,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_sock.c:206,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_sock.c:206,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_sock.c:209,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_sock.c:213,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 101
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 92
    functionDepth: 3
    functionLinenumber: 92
    functionLinenumberEnd: 216
    functionName: sockin_initialize
    functionSourceFile: /src/gpac/src/filters/in_sock.c
    functionUses: 0
    functionsReached:
    - gf_sk_group_register
    - strcpy
    - gf_sk_del
    - gf_sk_set_buffer_size
    - atoi
    - strchr
    - gf_filter_post_process_task
    - gf_sk_set_block_mode
    - gf_sys_clock
    - gf_filter_set_blocking
    - gf_list_new
    - strrchr
    - gf_sk_server_mode
    - gf_sk_connect
    - gf_sk_group_new
    - gf_sk_get_remote_address
    - gf_sk_setup_multicast_ex
    - gf_filter_get_udta
    - gf_sk_bind
    - GF_LOG
    - gf_filter_get_netcap_id
    - gf_sk_listen
    - strstr
    - strnicmp
    - gf_sk_new_ex
    - gf_malloc
    - gf_sk_is_multicast_address
    - gf_filter_prevent_blocking
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sockin_initialize(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/in_sock.c:220,1
    - Dst: gf_rtp_reorderer_del
      Src: /src/gpac/src/filters/in_sock.c:223,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - sc
    argTypes:
    - GF_SockInClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 218
    functionDepth: 2
    functionLinenumber: 218
    functionLinenumberEnd: 226
    functionName: sockin_client_reset
    functionSourceFile: /src/gpac/src/filters/in_sock.c
    functionUses: 0
    functionsReached:
    - gf_sk_del
    - gf_rtp_reorderer_del
    linkageType: ''
    returnType: void
    signature: void sockin_client_reset(GF_SockInClient *sc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_sock.c:230,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_sock.c:233,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/in_sock.c:234,1
    - Dst: sockin_client_reset
      Src: /src/gpac/src/filters/in_sock.c:235,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_sock.c:236,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/in_sock.c:238,1
    - Dst: sockin_client_reset
      Src: /src/gpac/src/filters/in_sock.c:240,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_sock.c:241,1
    - Dst: gf_sk_group_del
      Src: /src/gpac/src/filters/in_sock.c:242,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 228
    functionDepth: 3
    functionLinenumber: 228
    functionLinenumberEnd: 243
    functionName: sockin_finalize
    functionSourceFile: /src/gpac/src/filters/in_sock.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - sockin_client_reset
    - gf_list_count
    - gf_sk_group_del
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void sockin_finalize(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_sock.c:247,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_sock.c:248,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_sock.c:250,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_sock.c:251,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - url
    - mime_type
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 254
    functionName: sockin_probe_url
    functionSourceFile: /src/gpac/src/filters/in_sock.c
    functionUses: 0
    functionsReached:
    - strnicmp
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore sockin_probe_url(const char *url, const char *mime_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/in_sock.c:261,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/in_sock.c:263,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_sock.c:266,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - filter
    - pid
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 257
    functionDepth: 1
    functionLinenumber: 257
    functionLinenumberEnd: 268
    functionName: sockin_rtp_destructor
    functionSourceFile: /src/gpac/src/filters/in_sock.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_udta
    - gf_filter_pck_get_data
    - gf_free
    linkageType: ''
    returnType: void
    signature: void sockin_rtp_destructor(GF_Filter *filter, GF_FilterPid *pid, GF_FilterPacket
      *pck)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_sock.c:274,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 271
    functionDepth: 1
    functionLinenumber: 271
    functionLinenumberEnd: 287
    functionName: sockin_process_event
    functionSourceFile: /src/gpac/src/filters/in_sock.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool sockin_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/in_sock.c:302,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/in_sock.c:306,1
    - Dst: gf_sk_receive_no_select
      Src: /src/gpac/src/filters/in_sock.c:313,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/in_sock.c:325,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_sock.c:328,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_sock.c:349,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_sock.c:349,1
    - Dst: gf_rtp_reorderer_new
      Src: /src/gpac/src/filters/in_sock.c:367,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/in_sock.c:379,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/in_sock.c:384,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/in_sock.c:387,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_sock.c:389,1
    - Dst: sockin_process_event
      Src: /src/gpac/src/filters/in_sock.c:392,1
    - Dst: gf_rtp_reorderer_add
      Src: /src/gpac/src/filters/in_sock.c:404,1
    - Dst: gf_rtp_reorderer_get
      Src: /src/gpac/src/filters/in_sock.c:406,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/in_sock.c:408,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/in_sock.c:410,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_sock.c:411,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/in_sock.c:424,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/in_sock.c:427,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/in_sock.c:429,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_sock.c:430,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/in_sock.c:435,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_sock.c:441,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_sock.c:441,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_sock.c:442,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 120
    argCount: 3
    argNames:
    - filter
    - ctx
    - sock_c
    argTypes:
    - GF_Filter*
    - GF_SockInCtx*
    - GF_SockInClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 289
    functionDepth: 7
    functionLinenumber: 289
    functionLinenumberEnd: 452
    functionName: sockin_read_client
    functionSourceFile: /src/gpac/src/filters/in_sock.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_raw_new
    - memset
    - gf_filter_pid_set_udta
    - gf_sys_clock
    - gf_sys_is_cov_mode
    - memcpy
    - sockin_process_event
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_filter_pid_would_block
    - gf_filter_pid_set_eos
    - gf_sys_clock_high_res
    - gf_rtp_reorderer_add
    - gf_rtp_reorderer_get
    - gf_filter_pck_new_shared
    - gf_filter_pid_set_info
    - PROP_UINT
    - gf_filter_pid_send_flush
    - gf_filter_pck_set_framing
    - gf_rtp_reorderer_new
    - gf_sk_receive_no_select
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sockin_read_client(GF_Filter *filter, GF_SockInCtx *ctx, GF_SockInClient
      *sock_c)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_sock.c:459,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_sock.c:468,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_sock.c:474,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_sock.c:477,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_sock.c:479,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_sock.c:480,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_SockInCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 454
    functionDepth: 1
    functionLinenumber: 454
    functionLinenumberEnd: 485
    functionName: sockin_check_eos
    functionSourceFile: /src/gpac/src/filters/in_sock.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_eos
    - GF_LOG
    - gf_sys_clock
    - gf_filter_setup_failure
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sockin_check_eos(GF_Filter *filter, GF_SockInCtx *ctx)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_sock.c:492,1
    - Dst: gf_sk_group_select
      Src: /src/gpac/src/filters/in_sock.c:496,1
    - Dst: sockin_check_eos
      Src: /src/gpac/src/filters/in_sock.c:499,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_sock.c:502,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_sock.c:505,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_sock.c:506,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_sock.c:512,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_sock.c:513,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_sock.c:519,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/filters/in_sock.c:527,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/in_sock.c:528,1
    - Dst: sockin_read_client
      Src: /src/gpac/src/filters/in_sock.c:534,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/filters/in_sock.c:539,1
    - Dst: gf_sk_accept
      Src: /src/gpac/src/filters/in_sock.c:540,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_sock.c:544,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/in_sock.c:546,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_sock.c:547,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/in_sock.c:552,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_sock.c:554,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/in_sock.c:560,1
    - Dst: gf_sk_get_remote_address
      Src: /src/gpac/src/filters/in_sock.c:561,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/filters/in_sock.c:562,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_sock.c:564,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/filters/in_sock.c:566,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_sock.c:567,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_sock.c:573,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_sock.c:575,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/filters/in_sock.c:578,1
    - Dst: sockin_read_client
      Src: /src/gpac/src/filters/in_sock.c:580,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_sock.c:582,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/filters/in_sock.c:584,1
    - Dst: sockin_client_reset
      Src: /src/gpac/src/filters/in_sock.c:586,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_sock.c:589,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/in_sock.c:590,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_sock.c:592,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/in_sock.c:593,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_sock.c:602,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_sock.c:609,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 118
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 615
      start: 487
    functionDepth: 8
    functionLinenumber: 487
    functionLinenumberEnd: 615
    functionName: sockin_process
    functionSourceFile: /src/gpac/src/filters/in_sock.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - gf_sk_group_register
    - gf_sk_del
    - strcpy
    - gf_list_count
    - gf_sk_set_block_mode
    - gf_sys_clock
    - sockin_check_eos
    - gf_sk_accept
    - gf_list_get
    - gf_list_add
    - sockin_read_client
    - gf_sk_group_sock_is_set
    - gf_sk_get_remote_address
    - gf_filter_ask_rt_reschedule
    - gf_filter_get_udta
    - GF_LOG
    - gf_sk_group_unregister
    - gf_filter_pid_set_eos
    - gf_sk_group_select
    - sockin_client_reset
    - gf_list_del_item
    - gf_sys_clock_high_res
    - gf_filter_pid_remove
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sockin_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 620
      start: 619
    functionDepth: 0
    functionLinenumber: 619
    functionLinenumberEnd: 620
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/in_sock.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/in_sock.c:699,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/in_sock.c:701,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/in_sock.c:703,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 707
      start: 697
    functionDepth: 6
    functionLinenumber: 697
    functionLinenumberEnd: 707
    functionName: sockin_register
    functionSourceFile: /src/gpac/src/filters/in_sock.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    - gf_opts_set_key
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *sockin_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 713
      start: 710
    functionDepth: 0
    functionLinenumber: 710
    functionLinenumberEnd: 713
    functionName: sockin_register
    functionSourceFile: /src/gpac/src/filters/in_sock.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *sockin_register(GF_FilterSession *session)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_del
      Src: /src/gpac/src/filters/out_http.c:318,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:319,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:320,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - hio
    argTypes:
    - GF_HTTPFileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 316
    functionDepth: 4
    functionLinenumber: 316
    functionLinenumberEnd: 321
    functionName: httpio_del
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fileio_del
    linkageType: ''
    returnType: void
    signature: void httpio_del(GF_HTTPFileIO *hio)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/filters/out_http.c:325,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 3
    argNames:
    - fileio
    - offset
    - whence
    argTypes:
    - GF_FileIO*
    - u64
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 323
    functionDepth: 1
    functionLinenumber: 323
    functionLinenumberEnd: 332
    functionName: httpio_seek
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_fileio_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err httpio_seek(GF_FileIO *fileio, u64 offset, s32 whence)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/filters/out_http.c:335,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_http.c:342,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - fileio
    - buffer
    - bytes
    argTypes:
    - GF_FileIO*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 333
    functionDepth: 1
    functionLinenumber: 333
    functionLinenumberEnd: 346
    functionName: httpio_read
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_fileio_get_udta
    linkageType: ''
    returnType: u32
    signature: u32 httpio_read(GF_FileIO *fileio, u8 *buffer, u32 bytes)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/filters/out_http.c:349,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/out_http.c:352,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_http.c:354,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - fileio
    - buffer
    - bytes
    argTypes:
    - GF_FileIO*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 347
    functionDepth: 1
    functionLinenumber: 347
    functionLinenumberEnd: 358
    functionName: httpio_write
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_realloc
    - gf_fileio_get_udta
    linkageType: ''
    returnType: u32
    signature: u32 httpio_write(GF_FileIO *fileio, u8 *buffer, u32 bytes)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/filters/out_http.c:361,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 364
    functionName: httpio_tell
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_fileio_get_udta
    linkageType: ''
    returnType: s64
    signature: s64 httpio_tell(GF_FileIO *fileio)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/filters/out_http.c:369,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 367
    functionDepth: 1
    functionLinenumber: 367
    functionLinenumberEnd: 373
    functionName: httpio_eof
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_fileio_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool httpio_eof(GF_FileIO *fileio)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/filters/out_http.c:379,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:383,1
    - Dst: httpio_del
      Src: /src/gpac/src/filters/out_http.c:388,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_http.c:391,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:392,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/filters/out_http.c:392,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/out_http.c:393,1
    - Dst: httpio_del
      Src: /src/gpac/src/filters/out_http.c:394,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_http.c:399,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:402,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:407,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:413,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/filters/out_http.c:413,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/out_http.c:414,1
    - Dst: httpio_del
      Src: /src/gpac/src/filters/out_http.c:415,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:423,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_http.c:424,1
    - Dst: gf_fileio_new
      Src: /src/gpac/src/filters/out_http.c:430,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:432,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:437,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_http.c:438,1
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/filters/out_http.c:444,1
    - Dst: gf_fileio_new
      Src: /src/gpac/src/filters/out_http.c:447,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/filters/out_http.c:447,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:449,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 61
    argCount: 4
    argNames:
    - fileio_ref
    - url
    - mode
    - out_err
    argTypes:
    - GF_FileIO*
    - char*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 375
    functionDepth: 5
    functionLinenumber: 375
    functionLinenumberEnd: 455
    functionName: httpio_open
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fileio_new
    - gf_assert
    - gf_list_get
    - httpio_del
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_count
    - strcmp
    - gf_list_del_item
    - gf_fileio_resource_url
    - gf_list_rem
    - gf_fileio_get_udta
    linkageType: ''
    returnType: GF_FileIO
    signature: GF_FileIO *httpio_open(GF_FileIO *fileio_ref, const char *url, const
      char *mode, GF_Err *out_err)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_subsession_count
      Src: /src/gpac/src/filters/out_http.c:463,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:466,1
    - Dst: gf_dm_sess_close_hmux
      Src: /src/gpac/src/filters/out_http.c:469,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/filters/out_http.c:477,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/out_http.c:480,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:484,1
    - Dst: GF_HTTPOutSession*::cbk_close
      Src: /src/gpac/src/filters/out_http.c:491,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/out_http.c:493,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:494,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/out_http.c:495,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:496,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:498,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:501,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_http.c:505,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:507,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_http.c:509,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 50
    argCount: 2
    argNames:
    - sess
    - code
    argTypes:
    - GF_HTTPOutSession*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 457
    functionDepth: 3
    functionLinenumber: 457
    functionLinenumberEnd: 513
    functionName: httpout_close_session
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_dm_sess_close_hmux
    - GF_LOG
    - gf_sk_group_unregister
    - JS_SetOpaque
    - JS_FreeValue
    - JS_IsUndefined
    - gf_js_lock
    - gf_dm_sess_del
    - gf_dm_sess_subsession_count
    - gf_list_del
    - GF_HTTPOutSession*::cbk_close
    linkageType: ''
    returnType: void
    signature: void httpout_close_session(GF_HTTPOutSession *sess, GF_Err code)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_HTTPOutSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 517
    functionDepth: 0
    functionLinenumber: 517
    functionLinenumberEnd: 521
    functionName: httpout_mark_session_done
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void httpout_mark_session_done(GF_HTTPOutSession *sess)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_flush_close
      Src: /src/gpac/src/filters/out_http.c:531,1
    - Dst: log_request_done
      Src: /src/gpac/src/filters/out_http.c:545,1
    - Dst: httpout_mark_session_done
      Src: /src/gpac/src/filters/out_http.c:546,1
    - Dst: httpout_close_session
      Src: /src/gpac/src/filters/out_http.c:549,1
    - Dst: GF_HTTPOutSession*::cbk_close
      Src: /src/gpac/src/filters/out_http.c:552,1
    - Dst: gf_dm_sess_server_reset
      Src: /src/gpac/src/filters/out_http.c:557,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 3
    argNames:
    - sess
    - close_session
    - from_cbk
    argTypes:
    - GF_HTTPOutSession*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 523
    functionDepth: 4
    functionLinenumber: 523
    functionLinenumberEnd: 561
    functionName: httpout_sess_flush_close
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_server_reset
    - gf_dm_sess_flush_close
    - httpout_mark_session_done
    - httpout_close_session
    - log_request_done
    - GF_HTTPOutSession*::cbk_close
    linkageType: ''
    returnType: Bool
    signature: Bool httpout_sess_flush_close(GF_HTTPOutSession *sess, Bool close_session,
      Bool from_cbk)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_gmtime
      Src: /src/gpac/src/filters/out_http.c:570,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:601,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:603,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 72
    argCount: 3
    argNames:
    - time
    - szDate
    - for_listing
    argTypes:
    - u64
    - char[]
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 563
    functionDepth: 1
    functionLinenumber: 563
    functionLinenumberEnd: 605
    functionName: httpout_format_date
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 1
    functionsReached:
    - sprintf
    - gf_gmtime
    linkageType: ''
    returnType: void
    signature: void httpout_format_date(u64 time, char szDate[200], Bool for_listing)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:627,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:629,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:632,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:635,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:637,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:638,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:639,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:640,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:641,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:642,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:645,1
    - Dst: httpout_format_date
      Src: /src/gpac/src/filters/out_http.c:649,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:650,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:654,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:662,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:663,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:664,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 52
    argCount: 5
    argNames:
    - cbck
    - item_name
    - item_path
    - file_info
    - is_dir
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 613
    functionDepth: 2
    functionLinenumber: 613
    functionLinenumberEnd: 667
    functionName: httpout_dir_file_enum
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_dynstrcat
    - httpout_format_date
    - strlen
    - sprintf
    linkageType: ''
    returnType: Bool
    signature: Bool httpout_dir_file_enum(void *cbck, char *item_name, char *item_path,
      GF_FileEnumInfo *file_info, Bool is_dir)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: httpout_dir_file_enum
      Src: /src/gpac/src/filters/out_http.c:670,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - cbck
    - item_name
    - item_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 668
    functionDepth: 3
    functionLinenumber: 668
    functionLinenumberEnd: 671
    functionName: httpout_dir_enum
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - httpout_dir_file_enum
    linkageType: ''
    returnType: Bool
    signature: Bool httpout_dir_enum(void *cbck, char *item_name, char *item_path,
      GF_FileEnumInfo *file_info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: httpout_dir_file_enum
      Src: /src/gpac/src/filters/out_http.c:674,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - cbck
    - item_name
    - item_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 675
      start: 672
    functionDepth: 3
    functionLinenumber: 672
    functionLinenumberEnd: 675
    functionName: httpout_file_enum
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - httpout_dir_file_enum
    linkageType: ''
    returnType: Bool
    signature: Bool httpout_file_enum(void *cbck, char *item_name, char *item_path,
      GF_FileEnumInfo *file_info)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:681,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:687,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_http.c:688,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:689,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:690,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:692,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:694,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:695,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:699,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:706,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:707,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:708,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:709,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:710,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:714,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:716,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/out_http.c:719,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:727,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:729,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:731,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:734,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:735,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:737,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:740,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:740,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:742,1
    - Dst: httpout_dir_file_enum
      Src: /src/gpac/src/filters/out_http.c:746,1
    - Dst: gf_enum_directory
      Src: /src/gpac/src/filters/out_http.c:748,1
    - Dst: gf_enum_directory
      Src: /src/gpac/src/filters/out_http.c:749,1
    - Dst: gf_enum_directory
      Src: /src/gpac/src/filters/out_http.c:754,1
    - Dst: gf_enum_directory
      Src: /src/gpac/src/filters/out_http.c:755,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:758,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:759,1
    - Dst: gf_sk_get_host_name
      Src: /src/gpac/src/filters/out_http.c:760,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:761,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:762,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:763,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:765,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:767,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:768,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:769,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 73
    argCount: 3
    argNames:
    - ctx
    - full_path
    - di
    argTypes:
    - GF_HTTPOutCtx*
    - char*
    - HTTP_DIRInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 771
      start: 677
    functionDepth: 3
    functionLinenumber: 677
    functionLinenumberEnd: 771
    functionName: httpout_create_listing
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_list_get
    - gf_enum_directory
    - strrchr
    - httpout_dir_file_enum
    - sprintf
    - gf_list_count
    - strncmp
    - strcmp
    - gf_sk_get_host_name
    - gf_dynstrcat
    - strchr
    - strlen
    linkageType: ''
    returnType: char
    signature: char *httpout_create_listing(GF_HTTPOutCtx *ctx, char *full_path, HTTP_DIRInfo
      *di)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_http.c:778,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:781,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:784,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:785,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:787,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:788,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:789,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:791,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:793,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - ctx
    - in
    argTypes:
    - GF_HTTPOutCtx*
    - GF_HTTPOutInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 794
      start: 774
    functionDepth: 1
    functionLinenumber: 774
    functionLinenumberEnd: 794
    functionName: httpout_set_local_path
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_assert
    - gf_list_get
    - gf_dynstrcat
    - strchr
    - strlen
    linkageType: ''
    returnType: void
    signature: void httpout_set_local_path(GF_HTTPOutCtx *ctx, GF_HTTPOutInput *in)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:830,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_http.c:836,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:841,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:843,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/out_http.c:854,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/out_http.c:863,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/out_http.c:866,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/out_http.c:876,1
    - Dst: gf_dm_sess_get_header
      Src: /src/gpac/src/filters/out_http.c:907,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_http.c:908,1
    - Dst: gf_dm_sess_get_header
      Src: /src/gpac/src/filters/out_http.c:910,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:911,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:911,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:911,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_http.c:980,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:987,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:990,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:993,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:999,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:1001,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:1003,1
    CyclomaticComplexity: 74
    EdgeCount: 74
    ICount: 172
    argCount: 3
    argNames:
    - sess
    - range
    - response_body
    argTypes:
    - GF_HTTPOutSession*
    - char*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1005
      start: 805
    functionDepth: 1
    functionLinenumber: 805
    functionLinenumberEnd: 1005
    functionName: httpout_sess_parse_range
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - sscanf
    - gf_fseek
    - gf_dm_sess_get_header
    - GF_LOG
    - strncmp
    - strcmp
    - gf_dynstrcat
    - strchr
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: Bool
    signature: Bool httpout_sess_parse_range(GF_HTTPOutSession *sess, char *range,
      char **response_body)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:1017,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1021,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1021,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1024,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1024,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1027,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1027,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1030,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1030,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1033,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1033,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1036,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1036,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 38
    argCount: 2
    argNames:
    - sess
    - method
    argTypes:
    - GF_HTTPOutSession*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1042
      start: 1007
    functionDepth: 0
    functionLinenumber: 1007
    functionLinenumberEnd: 1042
    functionName: httpout_do_log
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - strcmp
    - strstr
    linkageType: ''
    returnType: u32
    signature: u32 httpout_do_log(GF_HTTPOutSession *sess, u32 method)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 1
    argNames:
    - method
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1058
      start: 1045
    functionDepth: 0
    functionLinenumber: 1045
    functionLinenumberEnd: 1058
    functionName: get_method_name
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *get_method_name(u32 method)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_is_hmux
      Src: /src/gpac/src/filters/out_http.c:1067,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_http.c:1072,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_http.c:1076,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_http.c:1079,1
    - Dst: gf_dm_sess_new_subsession
      Src: /src/gpac/src/filters/out_http.c:1080,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:1082,1
    - Dst: gf_dm_sess_set_timeout
      Src: /src/gpac/src/filters/out_http.c:1085,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:1086,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:1087,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 2
    argNames:
    - sess
    - stream_id
    argTypes:
    - GF_HTTPOutSession*
    - s64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1093
      start: 1061
    functionDepth: 2
    functionLinenumber: 1061
    functionLinenumberEnd: 1093
    functionName: httpout_new_subsession
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - strcpy
    - gf_list_add
    - gf_dm_sess_new_subsession
    - gf_dm_sess_set_timeout
    - gf_dm_sess_is_hmux
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err httpout_new_subsession(GF_HTTPOutSession *sess, s64 stream_id)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:1102,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:1104,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:1105,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:1107,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1119,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/filters/out_http.c:1124,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:1124,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:1126,1
    - Dst: gf_creds_check_password
      Src: /src/gpac/src/filters/out_http.c:1132,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 34
    argCount: 3
    argNames:
    - di
    - auth_header
    - for_write
    argTypes:
    - HTTP_DIRInfo*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1136
      start: 1096
    functionDepth: 7
    functionLinenumber: 1096
    functionLinenumberEnd: 1136
    functionName: httpout_auth_check
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_base64_decode
    - strstr
    - strcmp
    - gf_creds_check_password
    - strchr
    - strlen
    linkageType: ''
    returnType: u32
    signature: u32 httpout_auth_check(HTTP_DIRInfo *di, const char *auth_header, Bool
      for_write)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1144,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1145,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/out_http.c:1146,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/out_http.c:1147,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/out_http.c:1148,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/out_http.c:1149,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/out_http.c:1150,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/out_http.c:1152,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1154,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1155,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1156,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1157,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1158,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 3
    argNames:
    - udta
    - done
    - total
    argTypes:
    - void*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1160
      start: 1139
    functionDepth: 6
    functionLinenumber: 1139
    functionLinenumberEnd: 1160
    functionName: js_sess_throttle
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_NewInt64
    - gf_js_lock
    - JS_GetPropertyStr
    - JS_ToInt32
    - js_dump_error
    linkageType: ''
    returnType: u32
    signature: u32 js_sess_throttle(void *udta, u64 done, u64 total)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1165,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/out_http.c:1167,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1168,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1171,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/filters/out_http.c:1172,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/out_http.c:1173,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/out_http.c:1175,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/out_http.c:1176,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/out_http.c:1178,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1180,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1181,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1182,1
    - Dst: GF_HTTPOutSession*::cbk_close
      Src: /src/gpac/src/filters/out_http.c:1185,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/out_http.c:1186,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1187,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1190,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 3
    argNames:
    - udta
    - buffer
    - buffer_size
    argTypes:
    - void*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1192
      start: 1162
    functionDepth: 6
    functionLinenumber: 1162
    functionLinenumberEnd: 1192
    functionName: js_sess_read
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_SetOpaque
    - JS_IsUndefined
    - JS_NewArrayBuffer
    - gf_js_lock
    - JS_GetPropertyStr
    - JS_ToInt32
    - js_dump_error
    - GF_HTTPOutSession*::cbk_close
    linkageType: ''
    returnType: s32
    signature: s32 js_sess_read(void *udta, u8 *buffer, u32 buffer_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/out_http.c:1196,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1198,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1199,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/filters/out_http.c:1200,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/out_http.c:1201,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/out_http.c:1202,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/out_http.c:1203,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1205,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1206,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1207,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1208,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - udta
    - data
    - size
    argTypes:
    - void*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1210
      start: 1193
    functionDepth: 6
    functionLinenumber: 1193
    functionLinenumberEnd: 1210
    functionName: js_sess_write
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_IsUndefined
    - JS_NewArrayBuffer
    - gf_js_lock
    - JS_GetPropertyStr
    - js_dump_error
    linkageType: ''
    returnType: u32
    signature: u32 js_sess_write(void *udta, const u8 *data, u32 size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/out_http.c:1214,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1216,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1217,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/out_http.c:1218,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/out_http.c:1219,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/out_http.c:1220,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/out_http.c:1221,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1223,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1224,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1225,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1226,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - udta
    - code
    argTypes:
    - void*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1227
      start: 1211
    functionDepth: 6
    functionLinenumber: 1211
    functionLinenumberEnd: 1227
    functionName: js_sess_close
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_IsUndefined
    - gf_js_lock
    - JS_GetPropertyStr
    - js_dump_error
    - JS_NewInt32
    linkageType: ''
    returnType: void
    signature: void js_sess_close(void *udta, GF_Err code)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/filters/out_http.c:1232,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/out_http.c:1235,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/out_http.c:1237,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1239,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filters/out_http.c:1240,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/out_http.c:1241,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:1242,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/out_http.c:1243,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1245,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1247,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/out_http.c:1248,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1250,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1254,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1256,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/out_http.c:1257,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1259,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/filters/out_http.c:1261,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1262,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1263,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/out_http.c:1264,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/out_http.c:1265,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_http.c:1267,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:1268,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:1268,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:1269,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:1269,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/out_http.c:1270,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_http.c:1271,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/out_http.c:1272,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/out_http.c:1272,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/out_http.c:1275,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/out_http.c:1276,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1277,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1278,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1279,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1281,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1286,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/out_http.c:1288,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1290,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1292,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/out_http.c:1294,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1296,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1300,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/out_http.c:1301,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1303,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1307,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/out_http.c:1309,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1313,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/out_http.c:1315,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 74
    argCount: 4
    argNames:
    - c
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1319
      start: 1229
    functionDepth: 2
    functionLinenumber: 1229
    functionLinenumberEnd: 1319
    functionName: httpout_js_send
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - gf_strdup
    - gf_list_new
    - JS_IsFunction
    - JS_FreeValue
    - JS_GetPropertyUint32
    - js_throw_err_msg
    - JS_ToInt32
    - JS_GetPropertyStr
    - gf_list_add
    - atoi
    - stricmp
    - JS_GetAnyOpaque
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue httpout_js_send(JSContext *c, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1328,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/out_http.c:1330,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/out_http.c:1331,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1332,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/out_http.c:1335,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/out_http.c:1336,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1337,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/out_http.c:1337,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1338,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/out_http.c:1338,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1339,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/out_http.c:1339,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1340,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/filters/out_http.c:1340,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1341,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/out_http.c:1341,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1342,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/out_http.c:1342,1
    - Dst: gf_dm_sess_use_tls
      Src: /src/gpac/src/filters/out_http.c:1342,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1343,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/out_http.c:1343,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1344,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/out_http.c:1344,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1345,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/out_http.c:1345,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filters/out_http.c:1347,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1348,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filters/out_http.c:1349,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1350,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/out_http.c:1354,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1355,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/out_http.c:1355,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1356,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/out_http.c:1356,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filters/out_http.c:1357,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/out_http.c:1361,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/out_http.c:1362,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/out_http.c:1363,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1364,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/out_http.c:1365,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1366,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1368,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1372,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1374,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 45
    argCount: 7
    argNames:
    - udta
    - sess
    - method
    - url
    - auth_code
    - nb_hdrs
    - headers
    argTypes:
    - void*
    - GF_HTTPOutSession*
    - char*
    - char*
    - u32
    - u32
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1376
      start: 1321
    functionDepth: 6
    functionLinenumber: 1321
    functionLinenumberEnd: 1376
    functionName: httpout_js_on_request
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_SetOpaque
    - gf_dm_sess_use_tls
    - JS_SetPropertyUint32
    - JS_IsUndefined
    - JS_NewString
    - JS_NewInt64
    - JS_NewBool
    - gf_js_lock
    - JS_NewInt32
    - JS_NewObject
    - JS_NewCFunction
    - js_dump_error
    - JS_SetPropertyStr
    - JS_NewArray
    linkageType: ''
    returnType: s32
    signature: s32 httpout_js_on_request(void *udta, GF_HTTPOutSession *sess, const
      char * method, const char *url, u32 auth_code, u32 nb_hdrs, const char **headers)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1380,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1381,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1385,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1387,1
    - Dst: gf_js_delete_context
      Src: /src/gpac/src/filters/out_http.c:1389,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_HTTPOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1392
      start: 1378
    functionDepth: 4
    functionLinenumber: 1378
    functionLinenumberEnd: 1392
    functionName: httpout_cleanup_js
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - gf_js_lock
    - gf_js_delete_context
    linkageType: ''
    returnType: void
    signature: void httpout_cleanup_js(GF_HTTPOutCtx *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_http.c:1396,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1397,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/out_http.c:1398,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1399,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/out_http.c:1400,1
    - Dst: httpout_cleanup_js
      Src: /src/gpac/src/filters/out_http.c:1404,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/out_http.c:1407,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - f
    - jsc
    - obj
    argTypes:
    - GF_Filter*
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1411
      start: 1394
    functionDepth: 5
    functionLinenumber: 1394
    functionLinenumberEnd: 1411
    functionName: httpout_bind_js
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_IsFunction
    - JS_FreeValue
    - js_throw_err_msg
    - JS_GetPropertyStr
    - httpout_cleanup_js
    - gf_filter_get_udta
    linkageType: ''
    returnType: JSValue
    signature: JSValue httpout_bind_js(GF_Filter *f, JSContext *jsc, JSValueConst
      obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:1417,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/out_http.c:1418,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/out_http.c:1419,1
    - Dst: gf_dm_sess_set_header_ex
      Src: /src/gpac/src/filters/out_http.c:1420,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:1421,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:1422,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_http.c:1424,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_HTTPOutSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1426
      start: 1414
    functionDepth: 2
    functionLinenumber: 1414
    functionLinenumberEnd: 1426
    functionName: httpout_push_headers
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_dm_sess_set_header_ex
    - gf_list_pop_front
    - gf_list_count
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void httpout_push_headers(GF_HTTPOutSession *sess)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:2552,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:2575,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:2577,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 54
    argCount: 3
    argNames:
    - usr_cbk
    - parameter
    - is_llhas
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2594
      start: 2527
    functionDepth: 0
    functionLinenumber: 2527
    functionLinenumberEnd: 2594
    functionName: httpout_in_io_ex
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - sprintf
    linkageType: ''
    returnType: void
    signature: void httpout_in_io_ex(void *usr_cbk, GF_NETIO_Parameter *parameter,
      Bool is_llhas)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: httpout_in_io_ex
      Src: /src/gpac/src/filters/out_http.c:2598,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - usr_cbk
    - parameter
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2599
      start: 2596
    functionDepth: 1
    functionLinenumber: 2596
    functionLinenumberEnd: 2599
    functionName: httpout_in_io
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - httpout_in_io_ex
    linkageType: ''
    returnType: void
    signature: void httpout_in_io(void *usr_cbk, GF_NETIO_Parameter *parameter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: httpout_in_io_ex
      Src: /src/gpac/src/filters/out_http.c:2602,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - usr_cbk
    - parameter
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2603
      start: 2600
    functionDepth: 1
    functionLinenumber: 2600
    functionLinenumberEnd: 2603
    functionName: httpout_in_io_llhas
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - httpout_in_io_ex
    linkageType: ''
    returnType: void
    signature: void httpout_in_io_llhas(void *usr_cbk, GF_NETIO_Parameter *parameter)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_http.c:2611,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/out_http.c:2614,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/filters/out_http.c:2615,1
    - Dst: gf_cfg_get_section_count
      Src: /src/gpac/src/filters/out_http.c:2616,1
    - Dst: gf_cfg_get_section_name
      Src: /src/gpac/src/filters/out_http.c:2618,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:2619,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2621,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/filters/out_http.c:2628,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:2629,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:2629,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:2630,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_http.c:2633,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2634,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:2635,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/filters/out_http.c:2636,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2638,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:2639,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:2641,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/filters/out_http.c:2645,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2646,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/filters/out_http.c:2647,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2648,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/filters/out_http.c:2649,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2650,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/filters/out_http.c:2651,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2652,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/filters/out_http.c:2657,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:2660,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/filters/out_http.c:2663,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2664,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/filters/out_http.c:2665,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2667,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_http.c:2671,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2672,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:2673,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_http.c:2679,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2680,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2681,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:2682,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:2686,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:2688,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:2689,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:2692,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:2694,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_http.c:2696,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_http.c:2698,1
    - Dst: gf_fileio_new
      Src: /src/gpac/src/filters/out_http.c:2704,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/filters/out_http.c:2705,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/out_http.c:2712,1
    - Dst: httpio_eof
      Src: /src/gpac/src/filters/out_http.c:2713,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 101
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_HTTPOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2717
      start: 2605
    functionDepth: 6
    functionLinenumber: 2605
    functionLinenumberEnd: 2717
    functionName: httpout_configure_directories
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_fileio_new
    - gf_dir_exists
    - gf_fileio_url
    - GF_SAFEALLOC
    - gf_file_exists
    - gf_cfg_new
    - gf_list_count
    - gf_sys_is_cov_mode
    - gf_list_new
    - gf_strdup
    - gf_list_get
    - gf_cfg_del
    - gf_cfg_get_key
    - strncmp
    - gf_list_add
    - gf_dynstrcat
    - GF_LOG
    - gf_mkdir
    - strstr
    - gf_cfg_get_section_count
    - strlen
    - httpio_eof
    - strcmp
    - gf_cfg_get_section_name
    linkageType: ''
    returnType: void
    signature: void httpout_configure_directories(GF_HTTPOutCtx *ctx)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_http.c:2723,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:2726,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/out_http.c:2731,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:2740,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2744,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2749,1
    - Dst: gf_filter_pid_get_alias_udta
      Src: /src/gpac/src/filters/out_http.c:2756,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2760,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_http.c:2764,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:2771,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_http.c:2773,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_http.c:2784,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2789,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:2795,1
    - Dst: gf_get_default_cache_directory
      Src: /src/gpac/src/filters/out_http.c:2801,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:2802,1
    - Dst: gf_sys_get_process_id
      Src: /src/gpac/src/filters/out_http.c:2802,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_http.c:2802,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/out_http.c:2802,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2803,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_http.c:2807,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2808,1
    - Dst: gf_filter_make_sticky
      Src: /src/gpac/src/filters/out_http.c:2809,1
    - Dst: httpout_configure_directories
      Src: /src/gpac/src/filters/out_http.c:2810,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2813,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:2820,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:2821,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2822,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:2824,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2827,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/filters/out_http.c:2842,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/out_http.c:2842,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:2844,1
    - Dst: gf_dm_sess_set_timeout
      Src: /src/gpac/src/filters/out_http.c:2847,1
    - Dst: gf_dm_sess_set_sock_group
      Src: /src/gpac/src/filters/out_http.c:2848,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2851,1
    - Dst: httpout_set_local_path
      Src: /src/gpac/src/filters/out_http.c:2854,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:2856,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_http.c:2862,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:2865,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:2868,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2869,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:2871,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/out_http.c:2874,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:2875,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/out_http.c:2880,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_http.c:2881,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/out_http.c:2885,1
    - Dst: httpout_delete_input
      Src: /src/gpac/src/filters/out_http.c:2886,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 140
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2894
      start: 2719
    functionDepth: 7
    functionLinenumber: 2719
    functionLinenumberEnd: 2894
    functionName: httpout_configure_pid
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sys_get_process_id
    - gf_dm_sess_set_timeout
    - httpout_configure_directories
    - GF_SAFEALLOC
    - gf_list_count
    - httpout_set_local_path
    - gf_filter_pid_set_udta
    - strchr
    - gf_dm_sess_set_sock_group
    - gf_get_default_cache_directory
    - gf_list_new
    - gf_strdup
    - gf_filter_make_sticky
    - gf_filter_pid_get_alias_udta
    - sprintf
    - gf_dm_sess_new
    - gf_list_add
    - gf_filter_get_udta
    - GF_LOG
    - gf_filter_pid_init_play_event
    - strstr
    - gf_list_del_item
    - gf_filter_pid_send_event
    - gf_rand
    - gf_sys_clock_high_res
    - gf_malloc
    - gf_filter_get_download_manager
    - PROP_NAME
    - gf_filter_pid_get_property
    - httpout_delete_input
    - gf_filter_pid_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err httpout_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_probe
      Src: /src/gpac/src/filters/out_http.c:2898,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_http.c:2900,1
    - Dst: httpout_mark_session_done
      Src: /src/gpac/src/filters/out_http.c:2901,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2904,1
    - Dst: httpout_close_session
      Src: /src/gpac/src/filters/out_http.c:2905,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_HTTPOutSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2908
      start: 2896
    functionDepth: 4
    functionLinenumber: 2896
    functionLinenumberEnd: 2908
    functionName: httpout_check_connection
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - httpout_mark_session_done
    - gf_sk_probe
    - httpout_close_session
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: void
    signature: void httpout_check_connection(GF_HTTPOutSession *sess)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2914,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:2918,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:2920,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:2921,1
    - Dst: httpout_check_connection
      Src: /src/gpac/src/filters/out_http.c:2922,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2927,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 3
    argNames:
    - ctx
    - peer_address
    - peer_port
    argTypes:
    - GF_HTTPOutCtx*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2932
      start: 2910
    functionDepth: 5
    functionLinenumber: 2910
    functionLinenumberEnd: 2932
    functionName: httpout_accept_connection
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - GF_LOG
    - gf_list_count
    - strcmp
    - httpout_check_connection
    linkageType: ''
    returnType: Bool
    signature: Bool httpout_accept_connection(GF_HTTPOutCtx *ctx, const char *peer_address,
      u32 peer_port)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: httpout_accept_connection
      Src: /src/gpac/src/filters/out_http.c:2940,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_http.c:2943,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_http.c:2950,1
    - Dst: gf_dm_sess_set_callback
      Src: /src/gpac/src/filters/out_http.c:2955,1
    - Dst: gf_dm_sess_set_timeout
      Src: /src/gpac/src/filters/out_http.c:2957,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:2962,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:2963,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_http.c:2965,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2968,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 4
    argNames:
    - udta
    - http_sess
    - address
    - port
    argTypes:
    - void*
    - GF_DownloadSession*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2972
      start: 2936
    functionDepth: 6
    functionLinenumber: 2936
    functionLinenumberEnd: 2972
    functionName: on_h3_accept
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - GF_LOG
    - strcpy
    - gf_list_add
    - httpout_accept_connection
    - gf_dm_sess_set_timeout
    - gf_dm_sess_set_callback
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: Bool
    signature: Bool on_h3_accept(void *udta, GF_DownloadSession *http_sess, const
      char *address, u32 port)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_accept
      Src: /src/gpac/src/filters/out_http.c:2991,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2997,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:2997,1
    - Dst: gf_sk_get_remote_address_port
      Src: /src/gpac/src/filters/out_http.c:3000,1
    - Dst: httpout_accept_connection
      Src: /src/gpac/src/filters/out_http.c:3002,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_http.c:3003,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_http.c:3007,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_http.c:3009,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_http.c:3019,1
    - Dst: gf_ssl_new
      Src: /src/gpac/src/filters/out_http.c:3025,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3027,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:3027,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3028,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_http.c:3029,1
    - Dst: gf_dm_sess_new_server
      Src: /src/gpac/src/filters/out_http.c:3035,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/out_http.c:3035,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_http.c:3038,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3039,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:3039,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3040,1
    - Dst: gf_dm_sess_set_timeout
      Src: /src/gpac/src/filters/out_http.c:3045,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:3050,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:3051,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/filters/out_http.c:3052,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/filters/out_http.c:3054,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/filters/out_http.c:3055,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/out_http.c:3056,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3059,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 64
    argCount: 2
    argNames:
    - ctx
    - serversock
    argTypes:
    - GF_HTTPOutCtx*
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3064
      start: 2975
    functionDepth: 6
    functionLinenumber: 2975
    functionLinenumberEnd: 3064
    functionName: httpout_check_new_session
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sk_accept
    - gf_filter_get_download_manager
    - GF_SAFEALLOC
    - gf_sk_group_register
    - GF_LOG
    - gf_sk_del
    - gf_sk_get_remote_address_port
    - gf_dm_sess_new_server
    - strcpy
    - gf_sk_set_buffer_size
    - gf_list_add
    - gf_error_to_string
    - httpout_accept_connection
    - gf_dm_sess_set_timeout
    - gf_sys_clock_high_res
    - gf_ssl_new
    linkageType: ''
    returnType: void
    signature: void httpout_check_new_session(GF_HTTPOutCtx *ctx, GF_Socket *serversock)
  - BBCount: 63
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_http.c:3074,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3077,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3081,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_http.c:3090,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:3091,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_http.c:3092,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:3093,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/out_http.c:3101,1
    - Dst: MIN
      Src: /src/gpac/src/filters/out_http.c:3102,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:3103,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_http.c:3105,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:3109,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:3111,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/out_http.c:3117,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3123,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/out_http.c:3127,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_http.c:3132,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/out_http.c:3135,1
    - Dst: strlwr
      Src: /src/gpac/src/filters/out_http.c:3137,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_http.c:3139,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/out_http.c:3142,1
    - Dst: gf_filter_is_alias
      Src: /src/gpac/src/filters/out_http.c:3146,1
    - Dst: gf_filter_is_temporary
      Src: /src/gpac/src/filters/out_http.c:3146,1
    - Dst: gf_filter_make_sticky
      Src: /src/gpac/src/filters/out_http.c:3151,1
    - Dst: httpout_configure_directories
      Src: /src/gpac/src/filters/out_http.c:3152,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3161,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_http.c:3165,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_http.c:3166,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_http.c:3167,1
    - Dst: gf_sk_group_new
      Src: /src/gpac/src/filters/out_http.c:3170,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:3173,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:3176,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3185,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3189,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/out_http.c:3194,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3195,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/out_http.c:3198,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3199,1
    - Dst: gf_ssl_init_lib
      Src: /src/gpac/src/filters/out_http.c:3202,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3203,1
    - Dst: gf_ssl_server_context_new
      Src: /src/gpac/src/filters/out_http.c:3206,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3212,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3217,1
    - Dst: gf_filter_set_blocking
      Src: /src/gpac/src/filters/out_http.c:3224,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/out_http.c:3228,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/out_http.c:3233,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:3234,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:3235,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3239,1
    - Dst: gf_ssl_server_context_new
      Src: /src/gpac/src/filters/out_http.c:3245,1
    - Dst: gf_dm_quic_server_new
      Src: /src/gpac/src/filters/out_http.c:3250,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/out_http.c:3250,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/out_http.c:3250,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3255,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:3255,1
    - Dst: gf_dm_quic_get_socket
      Src: /src/gpac/src/filters/out_http.c:3258,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/filters/out_http.c:3260,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3261,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3263,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/filters/out_http.c:3269,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/out_http.c:3269,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/filters/out_http.c:3270,1
    - Dst: gf_sk_listen
      Src: /src/gpac/src/filters/out_http.c:3271,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3273,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:3273,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/filters/out_http.c:3276,1
    - Dst: gf_sk_server_mode
      Src: /src/gpac/src/filters/out_http.c:3277,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3278,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3280,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/filters/out_http.c:3284,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/out_http.c:3284,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/filters/out_http.c:3285,1
    - Dst: gf_sk_listen
      Src: /src/gpac/src/filters/out_http.c:3286,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3288,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:3288,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/filters/out_http.c:3291,1
    - Dst: gf_sk_server_mode
      Src: /src/gpac/src/filters/out_http.c:3292,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3294,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3296,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:3301,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filters/out_http.c:3312,1
    - Dst: gf_js_create_context
      Src: /src/gpac/src/filters/out_http.c:3315,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3317,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3318,1
    - Dst: JS_SetContextOpaque
      Src: /src/gpac/src/filters/out_http.c:3321,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/out_http.c:3324,1
    - Dst: js_load_constants
      Src: /src/gpac/src/filters/out_http.c:3325,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:3327,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/out_http.c:3327,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/out_http.c:3327,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/out_http.c:3328,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:3329,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/out_http.c:3331,1
    - Dst: JS_DetectModule
      Src: /src/gpac/src/filters/out_http.c:3331,1
    - Dst: qjs_init_all_modules
      Src: /src/gpac/src/filters/out_http.c:3333,1
    - Dst: JS_Eval
      Src: /src/gpac/src/filters/out_http.c:3337,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3338,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/out_http.c:3340,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3341,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/out_http.c:3342,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:3343,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:3344,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:3347,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:3348,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:3350,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/out_http.c:3351,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:3352,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3354,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_http.c:3360,1
    CyclomaticComplexity: 80
    EdgeCount: 80
    ICount: 248
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3362
      start: 3066
    functionDepth: 7
    functionLinenumber: 3066
    functionLinenumberEnd: 3362
    functionName: httpout_initialize
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_GetGlobalObject
    - gf_filter_override_caps
    - httpout_configure_directories
    - gf_filter_is_temporary
    - gf_file_exists
    - gf_sk_group_register
    - gf_ssl_init_lib
    - atoi
    - gf_opts_get_key
    - gf_dm_quic_get_socket
    - strchr
    - js_load_constants
    - gf_file_basename
    - gf_filter_post_process_task
    - gf_filter_set_blocking
    - gf_list_new
    - gf_strdup
    - JS_DetectModule
    - gf_sk_server_mode
    - gf_filter_make_sticky
    - JS_NewString
    - strlwr
    - strncmp
    - qjs_init_all_modules
    - gf_sk_group_new
    - js_dump_error
    - gf_filter_is_alias
    - JS_SetContextOpaque
    - gf_filter_get_udta
    - gf_sk_bind
    - JS_IsFunction
    - gf_js_create_context
    - GF_LOG
    - gf_dm_quic_server_new
    - gf_filter_get_netcap_id
    - MIN
    - gf_sk_listen
    - strstr
    - strncpy
    - JS_GetPropertyStr
    - gf_error_to_string
    - gf_sk_new_ex
    - strlen
    - gf_filter_get_download_manager
    - JS_Eval
    - PROP_NAME
    - PROP_UINT
    - JS_IsException
    - JS_FreeValue
    - gf_ssl_server_context_new
    - gf_file_ext_start
    - strcmp
    - JS_NewObject
    - JS_SetPropertyStr
    - gf_opts_get_bool
    - gf_file_load_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err httpout_initialize(GF_Filter *filter)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/out_http.c:3366,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/out_http.c:3367,1
    - Dst: httpout_close_session
      Src: /src/gpac/src/filters/out_http.c:3369,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3370,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3371,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3372,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3373,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/out_http.c:3374,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/out_http.c:3375,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3376,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/out_http.c:3379,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/out_http.c:3380,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3385,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_HTTPOutSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3386
      start: 3364
    functionDepth: 5
    functionLinenumber: 3364
    functionLinenumberEnd: 3386
    functionName: httpout_del_session
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_filter_pid_remove
    - JS_SetOpaque
    - JS_IsUndefined
    - httpout_close_session
    - gf_list_del_item
    linkageType: ''
    returnType: void
    signature: void httpout_del_session(GF_HTTPOutSession *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_http.c:3393,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:3395,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:3397,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/filters/out_http.c:3398,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:3399,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3400,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:3401,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/filters/out_http.c:3401,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 2
    argNames:
    - sess
    - in
    argTypes:
    - GF_HTTPOutSession*
    - GF_HTTPOutInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3405
      start: 3388
    functionDepth: 1
    functionLinenumber: 3388
    functionLinenumberEnd: 3405
    functionName: httpout_check_mem_path
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_strdup
    - gf_fileio_url
    - gf_list_count
    - strncmp
    - strcmp
    - gf_fileio_resource_url
    linkageType: ''
    returnType: void
    signature: void httpout_check_mem_path(GF_HTTPOutSession *sess, GF_HTTPOutInput
      *in)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3411,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/out_http.c:3413,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:3420,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:3422,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:3425,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_http.c:3427,1
    - Dst: httpout_check_mem_path
      Src: /src/gpac/src/filters/out_http.c:3433,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/out_http.c:3434,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/out_http.c:3438,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_http.c:3439,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3444,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3446,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 37
    argCount: 3
    argNames:
    - ctx
    - in
    - final_flush
    argTypes:
    - GF_HTTPOutCtx*
    - GF_HTTPOutInput*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3448
      start: 3407
    functionDepth: 5
    functionLinenumber: 3407
    functionLinenumberEnd: 3448
    functionName: httpout_close_llhas_part
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_list_get
    - gf_assert
    - gf_fseek
    - GF_LOG
    - gf_list_count
    - strcmp
    - gf_fopen
    - gf_fsize
    - httpout_check_mem_path
    linkageType: ''
    returnType: void
    signature: void httpout_close_llhas_part(GF_HTTPOutCtx *ctx, GF_HTTPOutInput *in,
      Bool final_flush)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3452,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3453,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3454,1
    - Dst: httpout_close_llhas_part
      Src: /src/gpac/src/filters/out_http.c:3456,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/out_http.c:3458,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/out_http.c:3459,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3460,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/filters/out_http.c:3463,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/out_http.c:3464,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:3467,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_http.c:3468,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3469,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_http.c:3471,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:3474,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_http.c:3475,1
    - Dst: httpio_del
      Src: /src/gpac/src/filters/out_http.c:3476,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_http.c:3478,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:3481,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_http.c:3482,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3483,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_http.c:3485,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/out_http.c:3487,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/out_http.c:3488,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3489,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3491,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 44
    argCount: 2
    argNames:
    - ctx
    - in
    argTypes:
    - GF_HTTPOutCtx*
    - GF_HTTPOutInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3492
      start: 3450
    functionDepth: 6
    functionLinenumber: 3450
    functionLinenumberEnd: 3492
    functionName: httpout_delete_input
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_list_pop_back
    - httpio_del
    - gf_sk_group_unregister
    - gf_list_count
    - gf_dm_sess_del
    - gf_filter_pck_discard
    - httpout_close_llhas_part
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void httpout_delete_input(GF_HTTPOutCtx *ctx, GF_HTTPOutInput *in)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_http.c:3496,1
    - Dst: gf_filter_is_alias
      Src: /src/gpac/src/filters/out_http.c:3499,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:3502,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:3503,1
    - Dst: httpout_del_session
      Src: /src/gpac/src/filters/out_http.c:3505,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_http.c:3507,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_http.c:3508,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:3510,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_http.c:3511,1
    - Dst: httpout_delete_input
      Src: /src/gpac/src/filters/out_http.c:3512,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_http.c:3514,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_http.c:3515,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_http.c:3516,1
    - Dst: gf_dm_quic_server_del
      Src: /src/gpac/src/filters/out_http.c:3519,1
    - Dst: gf_sk_group_del
      Src: /src/gpac/src/filters/out_http.c:3523,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3524,1
    - Dst: gf_fileio_del
      Src: /src/gpac/src/filters/out_http.c:3526,1
    - Dst: gf_ssl_server_context_del
      Src: /src/gpac/src/filters/out_http.c:3529,1
    - Dst: gf_ssl_server_context_del
      Src: /src/gpac/src/filters/out_http.c:3533,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:3539,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_http.c:3540,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3541,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3542,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3543,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3544,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3545,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3546,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3547,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_http.c:3549,1
    - Dst: httpout_cleanup_js
      Src: /src/gpac/src/filters/out_http.c:3553,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 50
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3556
      start: 3494
    functionDepth: 7
    functionLinenumber: 3494
    functionLinenumberEnd: 3556
    functionName: httpout_finalize
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_pop_back
    - httpout_cleanup_js
    - gf_sk_del
    - gf_dm_quic_server_del
    - httpout_delete_input
    - gf_fileio_del
    - gf_list_count
    - gf_sk_group_del
    - gf_ssl_server_context_del
    - gf_filter_is_alias
    - httpout_del_session
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void httpout_finalize(GF_Filter *filter)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: GF_HTTPOutSession*::cbk_write
      Src: /src/gpac/src/filters/out_http.c:3563,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/out_http.c:3575,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/out_http.c:3579,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_http.c:3581,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/out_http.c:3582,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/out_http.c:3583,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/out_http.c:3589,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_http.c:3593,1
    - Dst: gf_fflush
      Src: /src/gpac/src/filters/out_http.c:3597,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_http.c:3610,1
    - Dst: gf_fflush
      Src: /src/gpac/src/filters/out_http.c:3614,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_http.c:3620,1
    - Dst: gf_fflush
      Src: /src/gpac/src/filters/out_http.c:3627,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_http.c:3630,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3633,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 71
    argCount: 3
    argNames:
    - sess
    - data
    - size
    argTypes:
    - GF_HTTPOutSession*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3637
      start: 3558
    functionDepth: 2
    functionLinenumber: 3558
    functionLinenumberEnd: 3637
    functionName: httpout_sess_data_upload
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_fseek
    - gf_filter_pid_raw_new
    - memcpy
    - GF_LOG
    - gf_fwrite
    - gf_filter_pck_set_framing
    - gf_fatal_assert
    - gf_fflush
    - GF_HTTPOutSession*::cbk_write
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err httpout_sess_data_upload(GF_HTTPOutSession *sess, const u8 *data,
      u32 size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3647,1
    - Dst: get_method_name
      Src: /src/gpac/src/filters/out_http.c:3647,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3649,1
    - Dst: get_method_name
      Src: /src/gpac/src/filters/out_http.c:3649,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_http.c:3652,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3662,1
    - Dst: get_method_name
      Src: /src/gpac/src/filters/out_http.c:3662,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_HTTPOutSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3665
      start: 3639
    functionDepth: 2
    functionLinenumber: 3639
    functionLinenumberEnd: 3665
    functionName: log_request_done
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_sys_clock_high_res
    - get_method_name
    linkageType: ''
    returnType: void
    signature: void log_request_done(GF_HTTPOutSession *sess)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_flush_close
      Src: /src/gpac/src/filters/out_http.c:4158,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/out_http.c:4160,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4165,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:4165,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 34
    argCount: 3
    argNames:
    - ctx
    - in
    - for_llhas
    argTypes:
    - GF_HTTPOutCtx*
    - GF_HTTPOutInput*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4183
      start: 4142
    functionDepth: 4
    functionLinenumber: 4142
    functionLinenumberEnd: 4183
    functionName: httpout_close_upload
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_dm_sess_process
    - gf_error_to_string
    - gf_dm_sess_flush_close
    linkageType: ''
    returnType: Bool
    signature: Bool httpout_close_upload(GF_HTTPOutCtx *ctx, GF_HTTPOutInput *in,
      Bool for_llhas)
  - BBCount: 60
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:4206,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:4208,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:4214,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:4215,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4220,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:4223,1
    - Dst: gf_filter_pid_share_origin
      Src: /src/gpac/src/filters/out_http.c:4227,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:4230,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/out_http.c:4231,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:4235,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:4237,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4253,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:4259,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:4260,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4261,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4266,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:4276,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:4280,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4281,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4283,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/filters/out_http.c:4295,1
    - Dst: gf_dm_sess_setup_from_url
      Src: /src/gpac/src/filters/out_http.c:4298,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/out_http.c:4301,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4309,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:4309,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4311,1
    - Dst: gf_dm_sess_is_hmux
      Src: /src/gpac/src/filters/out_http.c:4314,1
    - Dst: httpout_close_upload
      Src: /src/gpac/src/filters/out_http.c:4317,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4320,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4328,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:4334,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:4335,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:4336,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:4338,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:4340,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4345,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:4347,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/filters/out_http.c:4348,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:4349,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/out_http.c:4351,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4352,1
    - Dst: httpio_del
      Src: /src/gpac/src/filters/out_http.c:4354,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/filters/out_http.c:4359,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4360,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4361,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:4365,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4368,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:4369,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4371,1
    - Dst: httpout_set_local_path
      Src: /src/gpac/src/filters/out_http.c:4373,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_http.c:4386,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/out_http.c:4387,1
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/filters/out_http.c:4393,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4396,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:4398,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/filters/out_http.c:4399,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:4400,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/out_http.c:4405,1
    - Dst: httpio_del
      Src: /src/gpac/src/filters/out_http.c:4406,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:4411,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_http.c:4414,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4418,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/out_http.c:4419,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:4420,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:4423,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:4423,1
    CyclomaticComplexity: 84
    EdgeCount: 84
    ICount: 205
    argCount: 7
    argNames:
    - ctx
    - in
    - name
    - is_delete
    - is_static
    - is_fake
    - check_no_open
    argTypes:
    - GF_HTTPOutCtx*
    - GF_HTTPOutInput*
    - char*
    - Bool
    - Bool
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4426
      start: 4186
    functionDepth: 6
    functionLinenumber: 4186
    functionLinenumberEnd: 4426
    functionName: httpout_open_input
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_dm_sess_process
    - gf_list_count
    - httpout_set_local_path
    - strchr
    - gf_dm_sess_setup_from_url
    - gf_list_get
    - gf_strdup
    - gf_assert
    - strrchr
    - httpio_del
    - gf_list_new
    - gf_list_add
    - gf_dynstrcat
    - gf_dm_sess_is_hmux
    - gf_fileio_resource_url
    - GF_LOG
    - gf_sk_group_unregister
    - strstr
    - gf_error_to_string
    - strlen
    - gf_filter_pid_share_origin
    - httpout_close_upload
    - gf_list_pop_front
    - strcmp
    - gf_file_delete
    - gf_fopen_ex
    - gf_list_rem
    - gf_fileio_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool httpout_open_input(GF_HTTPOutCtx *ctx, GF_HTTPOutInput *in, const
      char *name, Bool is_delete, Bool is_static, Bool is_fake, Bool check_no_open)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_http.c:4433,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_http.c:4434,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4436,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:4436,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/out_http.c:4443,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_http.c:4444,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_http.c:4445,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 2
    argNames:
    - in
    - e
    argTypes:
    - GF_HTTPOutInput*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4447
      start: 4428
    functionDepth: 1
    functionLinenumber: 4428
    functionLinenumberEnd: 4447
    functionName: httpout_input_in_error
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_discard
    - GF_LOG
    - GF_FEVT_INIT
    - gf_error_to_string
    - gf_filter_pid_send_event
    - gf_sys_clock
    linkageType: ''
    returnType: void
    signature: void httpout_input_in_error(GF_HTTPOutInput *in, GF_Err e)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4455,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4460,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4462,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:4462,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4466,1
    - Dst: httpout_close_upload
      Src: /src/gpac/src/filters/out_http.c:4468,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - ctx
    - in
    argTypes:
    - GF_HTTPOutCtx*
    - GF_HTTPOutInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4469
      start: 4450
    functionDepth: 5
    functionLinenumber: 4450
    functionLinenumberEnd: 4469
    functionName: httpout_close_input_llhas
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - httpout_close_upload
    - gf_error_to_string
    - gf_dm_sess_send
    linkageType: ''
    returnType: void
    signature: void httpout_close_input_llhas(GF_HTTPOutCtx *ctx, GF_HTTPOutInput
      *in)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: httpout_close_input_llhas
      Src: /src/gpac/src/filters/out_http.c:4473,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4479,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4484,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4486,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:4486,1
    - Dst: httpout_input_in_error
      Src: /src/gpac/src/filters/out_http.c:4488,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4495,1
    - Dst: httpout_close_upload
      Src: /src/gpac/src/filters/out_http.c:4497,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4503,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_http.c:4507,1
    - Dst: httpout_close_llhas_part
      Src: /src/gpac/src/filters/out_http.c:4509,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4512,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:4514,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_http.c:4516,1
    - Dst: httpout_check_mem_path
      Src: /src/gpac/src/filters/out_http.c:4519,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/out_http.c:4523,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/out_http.c:4530,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_http.c:4531,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/out_http.c:4536,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4541,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:4543,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4549,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4552,1
    - Dst: httpout_sess_flush_close
      Src: /src/gpac/src/filters/out_http.c:4555,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 72
    argCount: 2
    argNames:
    - ctx
    - in
    argTypes:
    - GF_HTTPOutCtx*
    - GF_HTTPOutInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4562
      start: 4471
    functionDepth: 6
    functionLinenumber: 4471
    functionLinenumberEnd: 4562
    functionName: httpout_close_input
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - httpout_input_in_error
    - gf_assert
    - gf_list_get
    - httpout_close_upload
    - gf_fseek
    - httpout_close_llhas_part
    - GF_LOG
    - gf_dm_sess_send
    - gf_list_count
    - httpout_sess_flush_close
    - gf_fopen
    - gf_fsize
    - gf_error_to_string
    - httpout_check_mem_path
    - httpout_close_input_llhas
    linkageType: ''
    returnType: void
    signature: void httpout_close_input(GF_HTTPOutCtx *ctx, GF_HTTPOutInput *in)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_setup_from_url
      Src: /src/gpac/src/filters/out_http.c:4568,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/out_http.c:4571,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4578,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:4578,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4585,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:4586,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 3
    argNames:
    - ctx
    - in
    - dst
    argTypes:
    - GF_HTTPOutCtx*
    - GF_HTTPOutInput*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4590
      start: 4566
    functionDepth: 1
    functionLinenumber: 4566
    functionLinenumberEnd: 4590
    functionName: httpout_open_input_llhas
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_dm_sess_process
    - gf_strdup
    - GF_LOG
    - gf_error_to_string
    - gf_dm_sess_setup_from_url
    linkageType: ''
    returnType: Bool
    signature: Bool httpout_open_input_llhas(GF_HTTPOutCtx *ctx, GF_HTTPOutInput *in,
      char *dst)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:4607,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:4608,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4621,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4625,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4626,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4627,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4629,1
    - Dst: httpout_open_input_llhas
      Src: /src/gpac/src/filters/out_http.c:4637,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/out_http.c:4640,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filters/out_http.c:4642,1
    - Dst: httpout_open_input
      Src: /src/gpac/src/filters/out_http.c:4652,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/out_http.c:4655,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filters/out_http.c:4657,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4671,1
    - Dst: httpout_input_in_error
      Src: /src/gpac/src/filters/out_http.c:4672,1
    - Dst: httpout_close_input
      Src: /src/gpac/src/filters/out_http.c:4673,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4678,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:4678,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4686,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4691,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_http.c:4692,1
    - Dst: gf_fflush
      Src: /src/gpac/src/filters/out_http.c:4693,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4696,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_http.c:4697,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4699,1
    - Dst: gf_fflush
      Src: /src/gpac/src/filters/out_http.c:4704,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:4711,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:4718,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:4719,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4720,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4721,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4722,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4724,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/out_http.c:4732,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_http.c:4733,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:4740,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:4741,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4743,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4744,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4745,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4747,1
    - Dst: httpout_close_session
      Src: /src/gpac/src/filters/out_http.c:4750,1
    CyclomaticComplexity: 67
    EdgeCount: 67
    ICount: 142
    argCount: 6
    argNames:
    - ctx
    - in
    - pck_data
    - pck_size
    - file_start
    - no_llhas
    argTypes:
    - GF_HTTPOutCtx*
    - GF_HTTPOutInput*
    - u8*
    - u32
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4760
      start: 4592
    functionDepth: 7
    functionLinenumber: 4592
    functionLinenumberEnd: 4760
    functionName: httpout_write_input
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_process
    - httpout_input_in_error
    - gf_list_get
    - gf_fseek
    - GF_LOG
    - httpout_open_input
    - sprintf
    - gf_sleep
    - gf_dm_sess_send
    - gf_list_count
    - gf_fwrite
    - httpout_open_input_llhas
    - gf_fflush
    - gf_fsize
    - httpout_close_session
    - httpout_close_input
    - gf_error_to_string
    - strlen
    linkageType: ''
    returnType: u32
    signature: u32 httpout_write_input(GF_HTTPOutCtx *ctx, GF_HTTPOutInput *in, const
      u8 *pck_data, u32 pck_size, Bool file_start, Bool no_llhas)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_get_socket
      Src: /src/gpac/src/filters/out_http.c:4770,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/filters/out_http.c:4772,1
    - Dst: gf_sk_group_select
      Src: /src/gpac/src/filters/out_http.c:4773,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/filters/out_http.c:4774,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/filters/out_http.c:4775,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/filters/out_http.c:4778,1
    - Dst: gf_dm_sess_flush_async
      Src: /src/gpac/src/filters/out_http.c:4781,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4786,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:4791,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/filters/out_http.c:4798,1
    - Dst: gf_dm_sess_flush_async
      Src: /src/gpac/src/filters/out_http.c:4802,1
    - Dst: gf_dm_sess_async_pending
      Src: /src/gpac/src/filters/out_http.c:4804,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4806,1
    - Dst: httpout_del_session
      Src: /src/gpac/src/filters/out_http.c:4807,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 42
    argCount: 2
    argNames:
    - ctx
    - in
    argTypes:
    - GF_HTTPOutCtx*
    - GF_HTTPOutInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4814
      start: 4762
    functionDepth: 6
    functionLinenumber: 4762
    functionLinenumberEnd: 4814
    functionName: httpout_input_write_ready
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_get_socket
    - gf_list_get
    - gf_sk_group_register
    - gf_dm_sess_flush_async
    - GF_LOG
    - gf_sk_group_select
    - gf_sk_set_buffer_size
    - gf_list_count
    - gf_sk_group_sock_is_set
    - gf_dm_sess_async_pending
    - httpout_del_session
    linkageType: ''
    returnType: Bool
    signature: Bool httpout_input_write_ready(GF_HTTPOutCtx *ctx, GF_HTTPOutInput
      *in)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_http.c:4820,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_http.c:4828,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_http.c:4837,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 1
    argNames:
    - in
    argTypes:
    - GF_HTTPOutInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4840
      start: 4816
    functionDepth: 1
    functionLinenumber: 4816
    functionLinenumberEnd: 4840
    functionName: httpin_send_seg_info
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: void
    signature: void httpin_send_seg_info(GF_HTTPOutInput *in)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4846,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/out_http.c:4847,1
    - Dst: httpout_open_input
      Src: /src/gpac/src/filters/out_http.c:4848,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4851,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:4853,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:4854,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/out_http.c:4855,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4856,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4861,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_http.c:4865,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 2
    argNames:
    - ctx
    - in
    argTypes:
    - GF_HTTPOutCtx*
    - GF_HTTPOutInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4868
      start: 4842
    functionDepth: 7
    functionLinenumber: 4842
    functionLinenumberEnd: 4868
    functionName: httpout_prune_files
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_pop_front
    - httpout_open_input
    - gf_list_count
    - strcmp
    - gf_list_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void httpout_prune_files(GF_HTTPOutCtx *ctx, GF_HTTPOutInput *in)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_http.c:4879,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - in
    - pck
    argTypes:
    - GF_HTTPOutInput*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4881
      start: 4870
    functionDepth: 1
    functionLinenumber: 4870
    functionLinenumberEnd: 4881
    functionName: httpout_input_drop
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_drop_packet
    linkageType: ''
    returnType: void
    signature: void httpout_input_drop(GF_HTTPOutInput *in, GF_FilterPacket *pck)
  - BBCount: 106
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4886,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:4897,1
    - Dst: httpout_prune_files
      Src: /src/gpac/src/filters/out_http.c:4900,1
    - Dst: httpout_close_upload
      Src: /src/gpac/src/filters/out_http.c:4908,1
    - Dst: httpout_close_upload
      Src: /src/gpac/src/filters/out_http.c:4913,1
    - Dst: gf_dm_sess_flush_async
      Src: /src/gpac/src/filters/out_http.c:4923,1
    - Dst: gf_dm_sess_flush_async
      Src: /src/gpac/src/filters/out_http.c:4927,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_http.c:4932,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/out_http.c:4935,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/out_http.c:4935,1
    - Dst: httpin_send_seg_info
      Src: /src/gpac/src/filters/out_http.c:4941,1
    - Dst: httpout_close_input
      Src: /src/gpac/src/filters/out_http.c:4943,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/out_http.c:4953,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4953,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/out_http.c:4963,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_http.c:4976,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/out_http.c:4987,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_http.c:5002,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_http.c:5010,1
    - Dst: gf_filter_pck_dangling_clone
      Src: /src/gpac/src/filters/out_http.c:5011,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_http.c:5012,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_http.c:5016,1
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/out_http.c:5017,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_http.c:5018,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_http.c:5023,1
    - Dst: gf_filter_pck_dangling_clone
      Src: /src/gpac/src/filters/out_http.c:5024,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_http.c:5025,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_http.c:5029,1
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/out_http.c:5030,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_http.c:5031,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_http.c:5034,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_http.c:5042,1
    - Dst: httpin_send_seg_info
      Src: /src/gpac/src/filters/out_http.c:5044,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_http.c:5046,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_http.c:5053,1
    - Dst: httpin_send_seg_info
      Src: /src/gpac/src/filters/out_http.c:5055,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/out_http.c:5062,1
    - Dst: httpout_input_in_error
      Src: /src/gpac/src/filters/out_http.c:5065,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5066,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:5066,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_http.c:5071,1
    - Dst: gf_dm_sess_is_hmux
      Src: /src/gpac/src/filters/out_http.c:5078,1
    - Dst: httpout_close_input
      Src: /src/gpac/src/filters/out_http.c:5096,1
    - Dst: httpout_prune_files
      Src: /src/gpac/src/filters/out_http.c:5099,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_http.c:5105,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:5107,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_http.c:5112,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_http.c:5118,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_http.c:5124,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:5126,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:5127,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_http.c:5130,1
    - Dst: gf_filter_pid_get_alias_udta
      Src: /src/gpac/src/filters/out_http.c:5137,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5141,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/out_http.c:5141,1
    - Dst: httpout_input_in_error
      Src: /src/gpac/src/filters/out_http.c:5142,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/out_http.c:5151,1
    - Dst: httpout_open_input
      Src: /src/gpac/src/filters/out_http.c:5154,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:5155,1
    - Dst: httpout_input_in_error
      Src: /src/gpac/src/filters/out_http.c:5159,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/out_http.c:5164,1
    - Dst: gf_filter_pck_get_carousel_version
      Src: /src/gpac/src/filters/out_http.c:5164,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_http.c:5165,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/out_http.c:5168,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_http.c:5169,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_http.c:5182,1
    - Dst: gf_mpd_resolve_subnumber
      Src: /src/gpac/src/filters/out_http.c:5184,1
    - Dst: httpout_close_llhas_part
      Src: /src/gpac/src/filters/out_http.c:5186,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_http.c:5187,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5188,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/out_http.c:5190,1
    - Dst: gf_mpd_resolve_subnumber
      Src: /src/gpac/src/filters/out_http.c:5193,1
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/filters/out_http.c:5198,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:5201,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/filters/out_http.c:5211,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/out_http.c:5211,1
    - Dst: gf_dm_sess_set_sock_group
      Src: /src/gpac/src/filters/out_http.c:5214,1
    - Dst: gf_dm_sess_set_timeout
      Src: /src/gpac/src/filters/out_http.c:5215,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/out_http.c:5221,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5225,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:5225,1
    - Dst: httpout_close_input_llhas
      Src: /src/gpac/src/filters/out_http.c:5232,1
    - Dst: gf_mpd_resolve_subnumber
      Src: /src/gpac/src/filters/out_http.c:5236,1
    - Dst: httpout_open_input_llhas
      Src: /src/gpac/src/filters/out_http.c:5237,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:5238,1
    - Dst: httpout_close_input
      Src: /src/gpac/src/filters/out_http.c:5247,1
    - Dst: httpout_input_drop
      Src: /src/gpac/src/filters/out_http.c:5249,1
    - Dst: httpout_input_in_error
      Src: /src/gpac/src/filters/out_http.c:5251,1
    - Dst: httpout_input_write_ready
      Src: /src/gpac/src/filters/out_http.c:5258,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5261,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_http.c:5265,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/out_http.c:5267,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/out_http.c:5270,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/out_http.c:5271,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5273,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/out_http.c:5275,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5276,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/out_http.c:5281,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5285,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:5285,1
    - Dst: httpout_close_input
      Src: /src/gpac/src/filters/out_http.c:5291,1
    - Dst: httpout_open_input
      Src: /src/gpac/src/filters/out_http.c:5299,1
    - Dst: httpout_write_input
      Src: /src/gpac/src/filters/out_http.c:5303,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5305,1
    - Dst: httpout_close_input
      Src: /src/gpac/src/filters/out_http.c:5307,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/out_http.c:5317,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5321,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:5321,1
    - Dst: httpout_open_input
      Src: /src/gpac/src/filters/out_http.c:5326,1
    - Dst: httpout_write_input
      Src: /src/gpac/src/filters/out_http.c:5331,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5333,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:5340,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:5342,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:5344,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/out_http.c:5349,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/out_http.c:5355,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5357,1
    - Dst: httpout_write_input
      Src: /src/gpac/src/filters/out_http.c:5368,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5370,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5379,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5383,1
    - Dst: httpout_input_drop
      Src: /src/gpac/src/filters/out_http.c:5387,1
    - Dst: httpout_close_input
      Src: /src/gpac/src/filters/out_http.c:5389,1
    - Dst: gf_dm_sess_async_pending
      Src: /src/gpac/src/filters/out_http.c:5391,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:5399,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_http.c:5400,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_http.c:5412,1
    CyclomaticComplexity: 189
    EdgeCount: 189
    ICount: 423
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_HTTPOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5413
      start: 4883
    functionDepth: 8
    functionLinenumber: 4883
    functionLinenumberEnd: 5413
    functionName: httpout_process_inputs
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_dm_sess_process
    - gf_list_count
    - gf_filter_pck_get_carousel_version
    - gf_filter_pck_get_frame_interface
    - gf_filter_pck_get_seek_flag
    - httpout_input_drop
    - gf_filter_pid_get_packet
    - gf_dm_sess_set_sock_group
    - gf_filter_post_process_task
    - gf_filter_pid_get_name
    - gf_realloc
    - gf_list_get
    - gf_assert
    - httpout_input_in_error
    - gf_filter_pck_get_framing
    - gf_strdup
    - httpout_close_input_llhas
    - memcpy
    - gf_filter_pid_get_alias_udta
    - gf_filter_pck_get_dependency_flags
    - gf_dm_sess_new
    - gf_list_add
    - httpout_prune_files
    - httpout_close_input
    - gf_dm_sess_is_hmux
    - gf_filter_pck_get_property
    - gf_filter_pid_drop_packet
    - gf_dm_sess_flush_async
    - gf_filter_pck_get_data
    - gf_filter_pck_expand
    - GF_LOG
    - httpout_open_input
    - gf_sys_is_test_mode
    - httpout_open_input_llhas
    - gf_filter_pck_get_interlaced
    - gf_mpd_resolve_subnumber
    - gf_error_to_string
    - gf_filter_pid_is_eos
    - gf_filter_pck_dangling_clone
    - gf_filter_get_download_manager
    - httpout_close_upload
    - gf_filter_pid_get_property
    - httpout_input_write_ready
    - gf_url_concatenate
    - httpin_send_seg_info
    - gf_pixel_get_size_info
    - gf_filter_pck_get_byte_offset
    - httpout_write_input
    - gf_filter_pid_is_flush_eos
    - gf_fopen_ex
    - GF_FilterFrameInterface*::get_plane
    - gf_dm_sess_set_timeout
    - gf_dm_sess_async_pending
    - httpout_close_llhas_part
    - gf_fileio_get_udta
    linkageType: ''
    returnType: void
    signature: void httpout_process_inputs(GF_HTTPOutCtx *ctx)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_http.c:5419,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:5426,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filters/out_http.c:5427,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:5428,1
    - Dst: gf_sk_group_select
      Src: /src/gpac/src/filters/out_http.c:5435,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/filters/out_http.c:5438,1
    - Dst: httpout_check_new_session
      Src: /src/gpac/src/filters/out_http.c:5439,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/filters/out_http.c:5441,1
    - Dst: httpout_check_new_session
      Src: /src/gpac/src/filters/out_http.c:5442,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/filters/out_http.c:5446,1
    - Dst: gf_dm_quic_process
      Src: /src/gpac/src/filters/out_http.c:5447,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:5450,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:5452,1
    - Dst: httpout_sess_flush_close
      Src: /src/gpac/src/filters/out_http.c:5453,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_http.c:5459,1
    - Dst: memset
      Src: /src/gpac/src/filters/out_http.c:5465,1
    - Dst: httpout_sess_io
      Src: /src/gpac/src/filters/out_http.c:5468,1
    - Dst: httpout_process_session
      Src: /src/gpac/src/filters/out_http.c:5477,1
    - Dst: httpout_del_session
      Src: /src/gpac/src/filters/out_http.c:5481,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:5491,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:5495,1
    - Dst: gf_dm_quic_verify
      Src: /src/gpac/src/filters/out_http.c:5499,1
    - Dst: httpout_process_inputs
      Src: /src/gpac/src/filters/out_http.c:5503,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:5507,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:5510,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_http.c:5513,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5515,1
    - Dst: httpout_close_session
      Src: /src/gpac/src/filters/out_http.c:5517,1
    - Dst: httpout_del_session
      Src: /src/gpac/src/filters/out_http.c:5519,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:5540,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_http.c:5545,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 93
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5549
      start: 5415
    functionDepth: 10
    functionLinenumber: 5415
    functionLinenumberEnd: 5549
    functionName: httpout_process
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - memset
    - httpout_sess_flush_close
    - httpout_close_session
    - gf_filter_post_process_task
    - js_std_loop
    - gf_list_get
    - httpout_check_new_session
    - gf_sk_group_sock_is_set
    - gf_filter_ask_rt_reschedule
    - gf_filter_get_udta
    - GF_LOG
    - gf_sk_group_select
    - gf_dm_quic_verify
    - gf_sys_clock_high_res
    - gf_dm_quic_process
    - gf_js_lock
    - httpout_process_session
    - httpout_del_session
    - httpout_sess_io
    - httpout_process_inputs
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err httpout_process(GF_Filter *filter)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_http.c:5554,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:5558,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:5560,1
    - Dst: httpout_close_session
      Src: /src/gpac/src/filters/out_http.c:5562,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/out_http.c:5573,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_http.c:5580,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:5581,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:5581,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5583
      start: 5551
    functionDepth: 4
    functionLinenumber: 5551
    functionLinenumberEnd: 5583
    functionName: httpout_process_event
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_new
    - gf_strdup
    - gf_list_count
    - httpout_close_session
    - gf_list_add
    - gf_filter_pid_get_udta
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool httpout_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_http.c:5587,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_http.c:5588,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5590
      start: 5585
    functionDepth: 0
    functionLinenumber: 5585
    functionLinenumberEnd: 5590
    functionName: httpout_probe_url
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - strnicmp
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore httpout_probe_url(const char *url, const char *mime)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_http.c:5596,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:5599,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:5602,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:5604,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_http.c:5608,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - filter
    - url
    - mime
    argTypes:
    - GF_Filter*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5610
      start: 5592
    functionDepth: 1
    functionLinenumber: 5592
    functionLinenumberEnd: 5610
    functionName: httpout_use_alias
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - strstr
    - strncmp
    - strcmp
    - strchr
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool httpout_use_alias(GF_Filter *filter, const char *url, const char
      *mime)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5621
      start: 5620
    functionDepth: 0
    functionLinenumber: 5620
    functionLinenumberEnd: 5621
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/out_http.c:5816,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/out_http.c:5817,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5820
      start: 5814
    functionDepth: 6
    functionLinenumber: 5814
    functionLinenumberEnd: 5820
    functionName: httpout_register
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    - gf_opts_set_key
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *httpout_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5829
      start: 5826
    functionDepth: 0
    functionLinenumber: 5826
    functionLinenumberEnd: 5829
    functionName: httpout_register
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *httpout_register(GF_FilterSession *session)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_is_instance_of
      Src: /src/gpac/src/filters/out_http.c:5841,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_http.c:5843,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - filter
    - udta
    argTypes:
    - GF_Filter*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5856
      start: 5835
    functionDepth: 1
    functionLinenumber: 5835
    functionLinenumberEnd: 5856
    functionName: gf_filter_bind_httpout_callbacks
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 1
    functionsReached:
    - gf_filter_is_instance_of
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_filter_bind_httpout_callbacks(GF_Filter *filter, void
      *udta,\n\ts32 (*on_request)(void *udta, GF_HTTPOutSession *session, const char
      *method, const char *url, u32 auth_code, u32 nb_hdrs, const char **hdrs)\n)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5873,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:5879,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:5880,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5890,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5899,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_http.c:5904,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:5908,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:5908,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:5909,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:5909,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/out_http.c:5910,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_http.c:5911,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5919,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 60
    argCount: 6
    argNames:
    - sess
    - udta
    - reply
    - body_or_file
    - nb_headers
    - headers
    argTypes:
    - GF_HTTPOutSession*
    - void*
    - u32
    - char*
    - u32
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5931
      start: 5858
    functionDepth: 1
    functionLinenumber: 5858
    functionLinenumberEnd: 5931
    functionName: gf_httpout_send_request
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_list_new
    - GF_LOG
    - gf_list_add
    - atoi
    - stricmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_httpout_send_request(GF_HTTPOutSession *sess, void *udta,\n\tu32
      reply,\n\tchar *body_or_file,\n\tu32 nb_headers,\n\tconst char **headers,\n\tu32
      (*throttle)(void *udta, u64 done, u64 total),\n\ts32 (*read)(void *udta, u8
      *buffer, u32 buffer_size),\n\tu32 (*write)(void *udta, const u8 *buffer, u32
      buffer_size),\n\tvoid (*close)(void *udta, GF_Err reason)\n)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/bs_agg.c:99,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_agg.c:103,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_agg.c:104,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/bs_agg.c:105,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_agg.c:108,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/bs_agg.c:109,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bs_agg.c:114,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bs_agg.c:115,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/bs_agg.c:117,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 41
    argCount: 2
    argNames:
    - cfg_out
    - cfg_in
    argTypes:
    - GF_AVCConfig*
    - GF_AVCConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 122
    functionName: bsagg_transfer_avc_params
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_new
    - memcmp
    - gf_list_pop_front
    - gf_list_count
    - gf_list_add
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bsagg_transfer_avc_params(GF_AVCConfig *cfg_out, GF_AVCConfig
      *cfg_in)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_agg.c:132,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_agg.c:135,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_agg.c:136,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_agg.c:139,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_agg.c:140,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/bs_agg.c:146,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/bs_agg.c:150,1
    - Dst: gf_filter_pid_set_udta_flags
      Src: /src/gpac/src/filters/bs_agg.c:154,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/bs_agg.c:163,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/bs_agg.c:165,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/bs_agg.c:168,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/bs_agg.c:169,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/bs_agg.c:170,1
    - Dst: bsagg_transfer_avc_params
      Src: /src/gpac/src/filters/bs_agg.c:174,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/bs_agg.c:177,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/bs_agg.c:182,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/bs_agg.c:190,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_agg.c:192,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_agg.c:192,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_agg.c:193,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_agg.c:194,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_agg.c:195,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/filters/bs_agg.c:200,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_agg.c:201,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/bs_agg.c:201,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/filters/bs_agg.c:204,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_agg.c:205,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/bs_agg.c:205,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_agg.c:207,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/bs_agg.c:210,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/bs_agg.c:211,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 73
    argCount: 2
    argNames:
    - ctx
    - pctx
    argTypes:
    - BSAggCtx*
    - BSAggOut*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 124
    functionDepth: 3
    functionLinenumber: 124
    functionLinenumberEnd: 213
    functionName: avc_rewrite_pid_config
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_set_udta_flags
    - gf_list_new
    - gf_filter_pid_get_property
    - gf_odf_avc_cfg_del
    - GF_SAFEALLOC
    - gf_filter_pid_copy_properties
    - memcpy
    - PROP_UINT
    - gf_odf_avc_cfg_write
    - bsagg_transfer_avc_params
    - gf_list_count
    - PROP_DATA_NO_COPY
    - gf_odf_avc_cfg_read
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err avc_rewrite_pid_config(BSAggCtx *ctx, BSAggOut *pctx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_agg.c:217,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_agg.c:218,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/bs_agg.c:219,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_agg.c:222,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/bs_agg.c:227,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/bs_agg.c:232,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/bs_agg.c:234,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_agg.c:236,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_agg.c:237,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/bs_agg.c:238,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_agg.c:241,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/bs_agg.c:242,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/bs_agg.c:247,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bs_agg.c:250,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bs_agg.c:251,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/bs_agg.c:255,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bs_agg.c:256,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 37
    argCount: 2
    argNames:
    - array_out
    - array_in
    argTypes:
    - GF_List*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 215
    functionDepth: 2
    functionLinenumber: 215
    functionLinenumberEnd: 260
    functionName: bsagg_transfer_param_array
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_list_get
    - memcmp
    - GF_SAFEALLOC
    - gf_list_pop_front
    - gf_list_count
    - gf_list_add
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bsagg_transfer_param_array(GF_List *array_out, GF_List *array_in)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_vvc_cfg_new
      Src: /src/gpac/src/filters/bs_agg.c:275,1
    - Dst: gf_odf_hevc_cfg_new
      Src: /src/gpac/src/filters/bs_agg.c:278,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_agg.c:285,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_agg.c:288,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_agg.c:289,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_agg.c:292,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_agg.c:293,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_agg.c:296,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/bs_agg.c:302,1
    - Dst: GOTO_ERR
      Src: /src/gpac/src/filters/bs_agg.c:303,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/bs_agg.c:306,1
    - Dst: GOTO_ERR
      Src: /src/gpac/src/filters/bs_agg.c:307,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/bs_agg.c:312,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/bs_agg.c:313,1
    - Dst: GOTO_ERR
      Src: /src/gpac/src/filters/bs_agg.c:315,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/bs_agg.c:316,1
    - Dst: gf_filter_pid_set_udta_flags
      Src: /src/gpac/src/filters/bs_agg.c:319,1
    - Dst: bsagg_transfer_param_array
      Src: /src/gpac/src/filters/bs_agg.c:320,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/bs_agg.c:323,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/bs_agg.c:326,1
    - Dst: GOTO_ERR
      Src: /src/gpac/src/filters/bs_agg.c:327,1
    - Dst: bsagg_transfer_param_array
      Src: /src/gpac/src/filters/bs_agg.c:329,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/bs_agg.c:330,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/bs_agg.c:339,1
    - Dst: GOTO_ERR
      Src: /src/gpac/src/filters/bs_agg.c:340,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/bs_agg.c:343,1
    - Dst: GOTO_ERR
      Src: /src/gpac/src/filters/bs_agg.c:344,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/bs_agg.c:348,1
    - Dst: gf_filter_pid_set_udta_flags
      Src: /src/gpac/src/filters/bs_agg.c:352,1
    - Dst: bsagg_transfer_param_array
      Src: /src/gpac/src/filters/bs_agg.c:354,1
    - Dst: bsagg_transfer_param_array
      Src: /src/gpac/src/filters/bs_agg.c:361,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/bs_agg.c:366,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/bs_agg.c:369,1
    - Dst: GOTO_ERR
      Src: /src/gpac/src/filters/bs_agg.c:370,1
    - Dst: bsagg_transfer_param_array
      Src: /src/gpac/src/filters/bs_agg.c:372,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/bs_agg.c:373,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/bs_agg.c:381,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_agg.c:383,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bs_agg.c:383,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_agg.c:384,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_agg.c:385,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_agg.c:386,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_agg.c:389,1
    - Dst: gf_odf_vvc_cfg_write
      Src: /src/gpac/src/filters/bs_agg.c:396,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_agg.c:397,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/bs_agg.c:397,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_agg.c:398,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/bs_agg.c:403,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_agg.c:404,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/bs_agg.c:404,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/bs_agg.c:408,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_agg.c:409,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/bs_agg.c:409,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bs_agg.c:411,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/bs_agg.c:419,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/bs_agg.c:420,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/bs_agg.c:421,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 140
    argCount: 2
    argNames:
    - ctx
    - pctx
    argTypes:
    - BSAggCtx*
    - BSAggOut*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 262
    functionDepth: 3
    functionLinenumber: 262
    functionLinenumberEnd: 423
    functionName: vvc_hevc_rewrite_pid_config
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached:
    - bsagg_transfer_param_array
    - gf_odf_vvc_cfg_del
    - gf_list_count
    - PROP_DATA_NO_COPY
    - gf_odf_hevc_cfg_new
    - gf_realloc
    - gf_odf_hevc_cfg_read
    - gf_list_get
    - gf_filter_pid_set_udta_flags
    - memcpy
    - gf_odf_hevc_cfg_write
    - gf_odf_vvc_cfg_read
    - gf_filter_pid_copy_properties
    - gf_filter_pid_set_property
    - gf_odf_hevc_cfg_del
    - gf_odf_vvc_cfg_write
    - gf_filter_pid_get_property
    - GOTO_ERR
    - PROP_UINT
    - gf_odf_vvc_cfg_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vvc_hevc_rewrite_pid_config(BSAggCtx *ctx, BSAggOut *pctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _e
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 283
    functionName: GOTO_ERR
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GOTO_ERR(_e)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_agg.c:428,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/bs_agg.c:429,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - c_opid
    argTypes:
    - BSAggCtx*
    - BSAggOut*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 426
    functionDepth: 1
    functionLinenumber: 426
    functionLinenumberEnd: 431
    functionName: none_rewrite_pid_config
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_copy_properties
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err none_rewrite_pid_config(BSAggCtx *ctx, BSAggOut *c_opid)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_agg.c:435,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/bs_agg.c:438,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/bs_agg.c:440,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/bs_agg.c:441,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/bs_agg.c:446,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/bs_agg.c:447,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - ctx
    - c_opid
    argTypes:
    - BSAggCtx*
    - BSAggOut*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 451
      start: 433
    functionDepth: 1
    functionLinenumber: 433
    functionLinenumberEnd: 451
    functionName: none_process
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_drop_packet
    - gf_filter_pck_forward
    - gf_filter_pid_set_eos
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_packet
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err none_process(BSAggCtx *ctx, BSAggOut *c_opid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/filters/bs_agg.c:457,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - cbk
    - prop_4cc
    - prop_name
    - src_prop
    argTypes:
    - void*
    - u32
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 453
    functionDepth: 0
    functionLinenumber: 453
    functionLinenumberEnd: 460
    functionName: bsagg_filter_prop
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached:
    - strncmp
    linkageType: ''
    returnType: Bool
    signature: Bool bsagg_filter_prop(void *cbk, u32 prop_4cc, const char *prop_name,
      const GF_PropertyValue *src_prop)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/bs_agg.c:479,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_agg.c:481,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_agg.c:482,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_agg.c:485,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_agg.c:486,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_agg.c:487,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_agg.c:488,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_agg.c:489,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bs_agg.c:490,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/bs_agg.c:493,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/bs_agg.c:494,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/bs_agg.c:495,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/bs_agg.c:495,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 1
    argNames:
    - pctx
    argTypes:
    - BSAggOut*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 462
    functionDepth: 9
    functionLinenumber: 462
    functionLinenumberEnd: 496
    functionName: bsagg_set_linf
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_info_str
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_del
    - PROP_DATA_NO_COPY
    linkageType: ''
    returnType: void
    signature: void bsagg_set_linf(BSAggOut *pctx)
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_agg.c:508,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_agg.c:512,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/bs_agg.c:513,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/bs_agg.c:515,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/bs_agg.c:521,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/bs_agg.c:523,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/bs_agg.c:527,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/bs_agg.c:531,1
    - Dst: bsagg_set_linf
      Src: /src/gpac/src/filters/bs_agg.c:537,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/bs_agg.c:538,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_agg.c:548,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/bs_agg.c:549,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/bs_agg.c:552,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/bs_agg.c:553,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/bs_agg.c:556,1
    - Dst: gf_timestamp_less_or_equal
      Src: /src/gpac/src/filters/bs_agg.c:557,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/bs_agg.c:559,1
    - Dst: gf_filter_pid_get_udta_flags
      Src: /src/gpac/src/filters/bs_agg.c:562,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/bs_agg.c:579,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/bs_agg.c:584,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/bs_agg.c:594,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_agg.c:665,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_agg.c:667,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/bs_agg.c:688,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/bs_agg.c:696,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/bs_agg.c:698,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/bs_agg.c:703,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/bs_agg.c:718,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/bs_agg.c:726,1
    - Dst: gf_filter_pck_merge_properties_filter
      Src: /src/gpac/src/filters/bs_agg.c:731,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/bs_agg.c:734,1
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/bs_agg.c:743,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_agg.c:744,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_agg.c:746,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/bs_agg.c:758,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/bs_agg.c:763,1
    CyclomaticComplexity: 80
    EdgeCount: 80
    ICount: 201
    argCount: 3
    argNames:
    - ctx
    - pctx
    - codec_type
    argTypes:
    - BSAggCtx*
    - BSAggOut*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 766
      start: 498
    functionDepth: 10
    functionLinenumber: 498
    functionLinenumberEnd: 766
    functionName: nalu_process
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_list_count
    - gf_filter_pck_merge_properties_filter
    - gf_filter_pid_get_packet
    - gf_realloc
    - gf_list_get
    - memcpy
    - gf_list_add
    - gf_filter_pck_get_cts
    - gf_list_insert
    - gf_filter_pck_new_alloc
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_expand
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_timescale
    - gf_timestamp_less
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_udta_flags
    - bsagg_set_linf
    - gf_timestamp_less_or_equal
    - gf_filter_pck_get_dts
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nalu_process(BSAggCtx *ctx, BSAggOut *pctx, u32 codec_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nalu_process
      Src: /src/gpac/src/filters/bs_agg.c:770,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - c_opid
    argTypes:
    - BSAggCtx*
    - BSAggOut*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 771
      start: 768
    functionDepth: 11
    functionLinenumber: 768
    functionLinenumberEnd: 771
    functionName: avc_process
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached:
    - nalu_process
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err avc_process(BSAggCtx *ctx, BSAggOut *c_opid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nalu_process
      Src: /src/gpac/src/filters/bs_agg.c:774,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - c_opid
    argTypes:
    - BSAggCtx*
    - BSAggOut*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 775
      start: 772
    functionDepth: 11
    functionLinenumber: 772
    functionLinenumberEnd: 775
    functionName: hevc_process
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached:
    - nalu_process
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hevc_process(BSAggCtx *ctx, BSAggOut *c_opid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nalu_process
      Src: /src/gpac/src/filters/bs_agg.c:778,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - c_opid
    argTypes:
    - BSAggCtx*
    - BSAggOut*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 779
      start: 776
    functionDepth: 11
    functionLinenumber: 776
    functionLinenumberEnd: 779
    functionName: vvc_process
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached:
    - nalu_process
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vvc_process(BSAggCtx *ctx, BSAggOut *c_opid)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_agg.c:783,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_agg.c:786,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_agg.c:787,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_agg.c:789,1
    - Dst: bs_agg_is_base
      Src: /src/gpac/src/filters/bs_agg.c:792,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 13
    argCount: 4
    argNames:
    - pctx
    - codec_id
    - dep_id
    - rec_level
    argTypes:
    - BSAggOut*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 796
      start: 781
    functionDepth: 1
    functionLinenumber: 781
    functionLinenumberEnd: 796
    functionName: bs_agg_is_base
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - bs_agg_is_base
    - gf_filter_pid_get_property
    linkageType: ''
    returnType: Bool
    signature: Bool bs_agg_is_base(BSAggOut *pctx, u32 codec_id, u32 dep_id, u32 rec_level)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_agg.c:800,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_agg.c:802,1
    - Dst: bs_agg_is_base
      Src: /src/gpac/src/filters/bs_agg.c:803,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - codec_id
    - dep_id
    argTypes:
    - BSAggCtx*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 807
      start: 798
    functionDepth: 2
    functionLinenumber: 798
    functionLinenumberEnd: 807
    functionName: bs_agg_get_base
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - bs_agg_is_base
    linkageType: ''
    returnType: BSAggOut
    signature: BSAggOut *bs_agg_get_base(BSAggCtx *ctx, u32 codec_id, u32 dep_id)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_agg.c:811,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/bs_agg.c:812,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bs_agg.c:813,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bs_agg.c:814,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/bs_agg.c:816,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/bs_agg.c:817,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bs_agg.c:818,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - pctx
    argTypes:
    - BSAggOut*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 809
    functionDepth: 3
    functionLinenumber: 809
    functionLinenumberEnd: 819
    functionName: bs_agg_reset_stream
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_pop_back
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void bs_agg_reset_stream(BSAggOut *pctx)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/bs_agg.c:825,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/bs_agg.c:826,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/bs_agg.c:831,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_agg.c:832,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/bs_agg.c:833,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/bs_agg.c:834,1
    - Dst: bs_agg_reset_stream
      Src: /src/gpac/src/filters/bs_agg.c:835,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/bs_agg.c:837,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/bs_agg.c:841,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_agg.c:844,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bs_agg.c:850,1
    - Dst: bs_agg_get_base
      Src: /src/gpac/src/filters/bs_agg.c:852,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/bs_agg.c:855,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/bs_agg.c:857,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/bs_agg.c:858,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/bs_agg.c:860,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/bs_agg.c:861,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/bs_agg.c:864,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/bs_agg.c:865,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_agg.c:893,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/bs_agg.c:894,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bs_agg.c:895,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bs_agg.c:896,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/bs_agg.c:901,1
    - Dst: BSAggOut*::rewrite_pid_config
      Src: /src/gpac/src/filters/bs_agg.c:905,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 68
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 906
      start: 821
    functionDepth: 4
    functionLinenumber: 821
    functionLinenumberEnd: 906
    functionName: bs_agg_configure_pid
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_list_pop_back
    - BSAggOut*::rewrite_pid_config
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - bs_agg_reset_stream
    - GF_SAFEALLOC
    - gf_filter_pid_set_framing_mode
    - gf_list_count
    - gf_filter_pid_check_caps
    - bs_agg_get_base
    - gf_list_add
    - gf_list_del_item
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bs_agg_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/bs_agg.c:912,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_agg.c:914,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bs_agg.c:916,1
    - Dst: BSAggOut*::agg_process
      Src: /src/gpac/src/filters/bs_agg.c:917,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 923
      start: 909
    functionDepth: 1
    functionLinenumber: 909
    functionLinenumberEnd: 923
    functionName: bs_agg_process
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - BSAggOut*::agg_process
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bs_agg_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/bs_agg.c:928,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/bs_agg.c:929,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 933
      start: 926
    functionDepth: 1
    functionLinenumber: 926
    functionLinenumberEnd: 933
    functionName: bs_agg_initialize
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bs_agg_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/bs_agg.c:936,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bs_agg.c:938,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/bs_agg.c:939,1
    - Dst: bs_agg_reset_stream
      Src: /src/gpac/src/filters/bs_agg.c:940,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/bs_agg.c:942,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 934
    functionDepth: 4
    functionLinenumber: 934
    functionLinenumberEnd: 943
    functionName: bs_agg_finalize
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_back
    - bs_agg_reset_stream
    - gf_list_count
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void bs_agg_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 946
      start: 945
    functionDepth: 0
    functionLinenumber: 945
    functionLinenumberEnd: 946
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 991
      start: 988
    functionDepth: 0
    functionLinenumber: 988
    functionLinenumberEnd: 991
    functionName: bsagg_register
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *bsagg_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 996
      start: 993
    functionDepth: 0
    functionLinenumber: 993
    functionLinenumberEnd: 996
    functionName: bsagg_register
    functionSourceFile: /src/gpac/src/filters/bs_agg.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *bsagg_register(GF_FilterSession *session)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 53
    argCount: 1
    argNames:
    - hevc
    argTypes:
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 144
    functionName: hevcsplit_get_slice_tile_index
    functionSourceFile: /src/gpac/src/filters/hevcsplit.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 hevcsplit_get_slice_tile_index(HEVCState *hevc)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 60
    argCount: 8
    argNames:
    - hevc
    - index_row
    - index_col
    - pps_id
    - width
    - height
    - tx
    - ty
    argTypes:
    - HEVCState*
    - u32
    - u32
    - u32
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 221
    functionName: hevcsplit_get_tile_pixel_coords
    functionSourceFile: /src/gpac/src/filters/hevcsplit.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void hevcsplit_get_tile_pixel_coords(HEVCState *hevc, u32 index_row,
      u32 index_col, u32 pps_id, u32 *width, u32 *height, u32 *tx, u32 *ty)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:229,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:229,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/filters/hevcsplit.c:230,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/hevcsplit.c:230,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:231,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:231,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/filters/hevcsplit.c:232,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/hevcsplit.c:232,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:234,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:234,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:237,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:238,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:239,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:240,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:244,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:244,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:249,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:249,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:250,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:250,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:251,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:251,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/filters/hevcsplit.c:252,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/hevcsplit.c:252,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:255,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:255,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 4
    argNames:
    - bs_in
    - bs_out
    - ProfilePresentFlag
    - MaxNumSubLayersMinus1
    argTypes:
    - GF_BitStream*
    - GF_BitStream*
    - Bool
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 224
    functionDepth: 6
    functionLinenumber: 224
    functionLinenumberEnd: 257
    functionName: hevc_write_profile_tier_level
    functionSourceFile: /src/gpac/src/filters/hevcsplit.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_bs_read_long_int
    - gf_bs_read_int
    - gf_bs_write_long_int
    linkageType: ''
    returnType: void
    signature: void hevc_write_profile_tier_level(GF_BitStream *bs_in, GF_BitStream
      *bs_out, Bool ProfilePresentFlag, u8 MaxNumSubLayersMinus1)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/hevcsplit.c:270,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/filters/hevcsplit.c:271,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/hevcsplit.c:272,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/filters/hevcsplit.c:273,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:277,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:277,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:278,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:279,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:280,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:280,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:282,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:282,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:286,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:287,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:291,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:292,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:296,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:296,1
    - Dst: hevc_write_profile_tier_level
      Src: /src/gpac/src/filters/hevcsplit.c:297,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcsplit.c:300,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcsplit.c:300,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:303,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:304,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:306,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:306,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcsplit.c:310,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcsplit.c:311,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:313,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:313,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcsplit.c:315,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcsplit.c:316,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcsplit.c:319,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcsplit.c:320,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:323,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:325,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcsplit.c:330,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcsplit.c:331,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcsplit.c:332,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcsplit.c:333,1
    - Dst: gf_bs_get_bit_position
      Src: /src/gpac/src/filters/hevcsplit.c:338,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:339,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:339,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/filters/hevcsplit.c:343,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/hevcsplit.c:343,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:344,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/hevcsplit.c:344,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/hevcsplit.c:348,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcsplit.c:350,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/hevcsplit.c:354,1
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/filters/hevcsplit.c:356,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/hevcsplit.c:357,1
    - Dst: gf_media_nalu_add_emulation_bytes
      Src: /src/gpac/src/filters/hevcsplit.c:358,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/hevcsplit.c:361,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/hevcsplit.c:362,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcsplit.c:363,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 69
    argCount: 6
    argNames:
    - in_SPS
    - in_SPS_length
    - width
    - height
    - out_SPS
    - out_SPS_length
    argTypes:
    - char*
    - u32
    - u32
    - u32
    - char**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 260
    functionDepth: 9
    functionLinenumber: 260
    functionLinenumberEnd: 364
    functionName: hevc_rewrite_sps
    functionSourceFile: /src/gpac/src/filters/hevcsplit.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_media_nalu_add_emulation_bytes
    - gf_bs_write_ue
    - gf_bs_new
    - gf_bs_enable_emulation_byte_removal
    - hevc_write_profile_tier_level
    - gf_bs_get_bit_position
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_media_nalu_emulation_bytes_add_count
    - gf_bs_get_size
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_del
    - gf_bs_read_int
    - gf_bs_read_u8
    - gf_bs_read_ue
    linkageType: ''
    returnType: void
    signature: void hevc_rewrite_sps(char *in_SPS, u32 in_SPS_length, u32 width, u32
      height, char **out_SPS, u32 *out_SPS_length)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/hevcsplit.c:372,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/filters/hevcsplit.c:373,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/hevcsplit.c:376,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/hevcsplit.c:377,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:380,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:380,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcsplit.c:381,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcsplit.c:381,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcsplit.c:382,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcsplit.c:382,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:383,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:383,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcsplit.c:384,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcsplit.c:384,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcsplit.c:385,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcsplit.c:385,1
    - Dst: gf_bs_write_se
      Src: /src/gpac/src/filters/hevcsplit.c:386,1
    - Dst: gf_bs_read_se
      Src: /src/gpac/src/filters/hevcsplit.c:386,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:387,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:387,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:388,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:389,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcsplit.c:391,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcsplit.c:391,1
    - Dst: gf_bs_write_se
      Src: /src/gpac/src/filters/hevcsplit.c:392,1
    - Dst: gf_bs_read_se
      Src: /src/gpac/src/filters/hevcsplit.c:392,1
    - Dst: gf_bs_write_se
      Src: /src/gpac/src/filters/hevcsplit.c:393,1
    - Dst: gf_bs_read_se
      Src: /src/gpac/src/filters/hevcsplit.c:393,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:394,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:394,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:396,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:397,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:399,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:399,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcsplit.c:403,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcsplit.c:404,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:405,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcsplit.c:409,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcsplit.c:411,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:413,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:416,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:417,1
    - Dst: gf_bs_get_bit_position
      Src: /src/gpac/src/filters/hevcsplit.c:420,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:421,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:421,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/filters/hevcsplit.c:425,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/hevcsplit.c:425,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:426,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/hevcsplit.c:426,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/hevcsplit.c:430,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/hevcsplit.c:432,1
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/filters/hevcsplit.c:434,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/hevcsplit.c:435,1
    - Dst: gf_media_nalu_add_emulation_bytes
      Src: /src/gpac/src/filters/hevcsplit.c:436,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 46
    argCount: 5
    argNames:
    - ctx
    - in_PPS
    - in_PPS_length
    - out_PPS
    - out_PPS_length
    argTypes:
    - GF_HEVCSplitCtx*
    - char*
    - u32
    - char**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 367
    functionDepth: 8
    functionLinenumber: 367
    functionLinenumberEnd: 437
    functionName: hevcsplit_rewrite_pps_no_grid
    functionSourceFile: /src/gpac/src/filters/hevcsplit.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_media_nalu_add_emulation_bytes
    - gf_bs_write_ue
    - gf_bs_new
    - gf_bs_enable_emulation_byte_removal
    - gf_bs_write_se
    - gf_bs_read_se
    - gf_bs_write_int
    - gf_bs_get_bit_position
    - gf_media_nalu_emulation_bytes_add_count
    - gf_bs_get_size
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_read_int
    - gf_bs_read_u8
    - gf_bs_get_content_no_truncate
    - gf_bs_reassign_buffer
    - gf_bs_read_ue
    linkageType: ''
    returnType: void
    signature: void hevcsplit_rewrite_pps_no_grid(GF_HEVCSplitCtx *ctx, char *in_PPS,
      u32 in_PPS_length, char **out_PPS, u32 *out_PPS_length)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/hevcsplit.c:456,1
    - Dst: gf_media_nalu_remove_emulation_bytes
      Src: /src/gpac/src/filters/hevcsplit.c:459,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/hevcsplit.c:461,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/filters/hevcsplit.c:462,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/hevcsplit.c:464,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/hevcsplit.c:465,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/hevcsplit.c:468,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/hevcsplit.c:469,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:475,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:475,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:476,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:477,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:478,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:478,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:480,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:481,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:498,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:498,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/filters/hevcsplit.c:501,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/filters/hevcsplit.c:502,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:509,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:515,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/hevcsplit.c:522,1
    - Dst: gf_bs_get_bit_position
      Src: /src/gpac/src/filters/hevcsplit.c:522,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:523,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:523,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:530,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/hevcsplit.c:534,1
    - Dst: gf_bs_get_bit_position
      Src: /src/gpac/src/filters/hevcsplit.c:534,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:535,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:538,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcsplit.c:540,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/hevcsplit.c:544,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/hevcsplit.c:545,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/hevcsplit.c:549,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/hevcsplit.c:551,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/hevcsplit.c:553,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/hevcsplit.c:559,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/hevcsplit.c:562,1
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/filters/hevcsplit.c:564,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/hevcsplit.c:567,1
    - Dst: gf_media_nalu_add_emulation_bytes
      Src: /src/gpac/src/filters/hevcsplit.c:570,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 76
    argCount: 3
    argNames:
    - ctx
    - in_slice
    - in_slice_length
    argTypes:
    - GF_HEVCSplitCtx*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 440
    functionDepth: 8
    functionLinenumber: 440
    functionLinenumberEnd: 572
    functionName: hevcsplit_remove_slice_address
    functionSourceFile: /src/gpac/src/filters/hevcsplit.c
    functionUses: 0
    functionsReached:
    - gf_media_nalu_add_emulation_bytes
    - gf_bs_new
    - gf_media_nalu_emulation_bytes_add_count
    - gf_bs_available
    - gf_realloc
    - gf_assert
    - memcpy
    - gf_bs_write_ue
    - gf_bs_enable_emulation_byte_removal
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_align
    - gf_bs_get_position
    - gf_media_nalu_remove_emulation_bytes
    - gf_bs_get_content_no_truncate
    - gf_bs_reassign_buffer
    - gf_bs_get_bit_position
    - gf_bs_read_int
    - gf_bs_read_ue
    linkageType: ''
    returnType: u32
    signature: u32 hevcsplit_remove_slice_address(GF_HEVCSplitCtx *ctx, u8 *in_slice,
      u32 in_slice_length)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_hevc_parse_nalu
      Src: /src/gpac/src/filters/hevcsplit.c:580,1
    - Dst: hevcsplit_get_slice_tile_index
      Src: /src/gpac/src/filters/hevcsplit.c:599,1
    - Dst: hevcsplit_remove_slice_address
      Src: /src/gpac/src/filters/hevcsplit.c:600,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 28
    argCount: 6
    argNames:
    - filter
    - ctx
    - in_nal
    - in_nal_size
    - out_tile_index
    - out_nal_size
    argTypes:
    - GF_Filter*
    - GF_HEVCSplitCtx*
    - char*
    - u32
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 574
    functionDepth: 9
    functionLinenumber: 574
    functionLinenumberEnd: 609
    functionName: hevcsplit_rewrite_nal
    functionSourceFile: /src/gpac/src/filters/hevcsplit.c
    functionUses: 0
    functionsReached:
    - gf_hevc_parse_nalu
    - hevcsplit_remove_slice_address
    - hevcsplit_get_slice_tile_index
    linkageType: ''
    returnType: char
    signature: char *hevcsplit_rewrite_nal(GF_Filter *filter, GF_HEVCSplitCtx *ctx,
      char *in_nal, u32 in_nal_size, u32 *out_tile_index, u32 *out_nal_size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/hevcsplit.c:616,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcsplit.c:620,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcsplit.c:621,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcsplit.c:622,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcsplit.c:624,1
    - Dst: hevc_rewrite_sps
      Src: /src/gpac/src/filters/hevcsplit.c:629,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcsplit.c:630,1
    - Dst: hevcsplit_rewrite_pps_no_grid
      Src: /src/gpac/src/filters/hevcsplit.c:639,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcsplit.c:640,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/hevcsplit.c:646,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/hevcsplit.c:647,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcsplit.c:649,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/hevcsplit.c:649,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 6
    argNames:
    - ctx
    - opid
    - data
    - size
    - new_width
    - new_height
    argTypes:
    - GF_HEVCSplitCtx*
    - GF_FilterPid*
    - char*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 651
      start: 611
    functionDepth: 10
    functionLinenumber: 611
    functionLinenumberEnd: 651
    functionName: hevcsplit_rewrite_dsi
    functionSourceFile: /src/gpac/src/filters/hevcsplit.c
    functionUses: 0
    functionsReached:
    - gf_odf_hevc_cfg_read
    - gf_free
    - gf_list_get
    - hevc_rewrite_sps
    - hevcsplit_rewrite_pps_no_grid
    - gf_odf_hevc_cfg_del
    - gf_list_count
    - gf_odf_hevc_cfg_write
    - PROP_DATA_NO_COPY
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hevcsplit_rewrite_dsi(GF_HEVCSplitCtx *ctx, GF_FilterPid *opid,
      char *data, u32 size, u32 new_width, u32 new_height)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/filters/hevcsplit.c:662,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - output_nal
    - rewritten_nal
    - out_nal_size
    - hevc_nalu_size_length
    argTypes:
    - char*
    - char*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 663
      start: 653
    functionDepth: 0
    functionLinenumber: 653
    functionLinenumberEnd: 663
    functionName: hevcsplit_write_nal
    functionSourceFile: /src/gpac/src/filters/hevcsplit.c
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: void
    signature: void hevcsplit_write_nal(char *output_nal, char *rewritten_nal, u32
      out_nal_size, u32 hevc_nalu_size_length)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcsplit.c:667,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/hevcsplit.c:669,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/hevcsplit.c:671,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/hevcsplit.c:672,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/hevcsplit.c:673,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/hevcsplit.c:675,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - filter
    - ctx
    - pid
    argTypes:
    - GF_Filter*
    - GF_HEVCSplitCtx*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 678
      start: 665
    functionDepth: 1
    functionLinenumber: 665
    functionLinenumberEnd: 678
    functionName: hevcsplit_config_passthrough
    functionSourceFile: /src/gpac/src/filters/hevcsplit.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_copy_properties
    - GF_SAFEALLOC
    - gf_list_add
    - gf_filter_pid_set_udta
    - gf_filter_pid_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hevcsplit_config_passthrough(GF_Filter *filter, GF_HEVCSplitCtx
      *ctx, GF_FilterPid *pid)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/hevcsplit.c:686,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/hevcsplit.c:690,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/hevcsplit.c:694,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/hevcsplit.c:695,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcsplit.c:696,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/hevcsplit.c:698,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/hevcsplit.c:699,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/hevcsplit.c:706,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/hevcsplit.c:709,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/hevcsplit.c:715,1
    - Dst: hevcsplit_config_passthrough
      Src: /src/gpac/src/filters/hevcsplit.c:719,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/hevcsplit.c:724,1
    - Dst: memset
      Src: /src/gpac/src/filters/hevcsplit.c:734,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/hevcsplit.c:737,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcsplit.c:741,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcsplit.c:743,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcsplit.c:744,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcsplit.c:746,1
    - Dst: gf_hevc_read_sps
      Src: /src/gpac/src/filters/hevcsplit.c:750,1
    - Dst: gf_hevc_read_pps
      Src: /src/gpac/src/filters/hevcsplit.c:755,1
    - Dst: gf_hevc_read_vps
      Src: /src/gpac/src/filters/hevcsplit.c:760,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/hevcsplit.c:764,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcsplit.c:773,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/hevcsplit.c:780,1
    - Dst: hevcsplit_config_passthrough
      Src: /src/gpac/src/filters/hevcsplit.c:783,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcsplit.c:790,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/hevcsplit.c:792,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcsplit.c:792,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/hevcsplit.c:794,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/hevcsplit.c:796,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/hevcsplit.c:797,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/hevcsplit.c:798,1
    - Dst: hevcsplit_get_tile_pixel_coords
      Src: /src/gpac/src/filters/hevcsplit.c:801,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/hevcsplit.c:802,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcsplit.c:804,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/hevcsplit.c:804,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcsplit.c:805,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/hevcsplit.c:805,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcsplit.c:806,1
    - Dst: PROP_VEC2I_INT
      Src: /src/gpac/src/filters/hevcsplit.c:806,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/hevcsplit.c:807,1
    - Dst: PROP_VEC2I_INT
      Src: /src/gpac/src/filters/hevcsplit.c:807,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/hevcsplit.c:808,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/hevcsplit.c:808,1
    - Dst: hevcsplit_rewrite_dsi
      Src: /src/gpac/src/filters/hevcsplit.c:810,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcsplit.c:813,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 97
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 680
    functionDepth: 11
    functionLinenumber: 680
    functionLinenumberEnd: 817
    functionName: hevcsplit_configure_pid
    functionSourceFile: /src/gpac/src/filters/hevcsplit.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - gf_filter_pid_set_property_str
    - gf_filter_pid_check_caps
    - memset
    - gf_list_count
    - gf_filter_pid_set_udta
    - gf_filter_pid_new
    - gf_hevc_read_vps
    - gf_odf_hevc_cfg_read
    - gf_list_get
    - gf_assert
    - hevcsplit_config_passthrough
    - gf_list_add
    - PROP_BOOL
    - gf_crc_32
    - gf_filter_get_udta
    - gf_filter_pid_copy_properties
    - hevcsplit_get_tile_pixel_coords
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_VEC2I_INT
    - gf_odf_hevc_cfg_del
    - gf_filter_pid_get_property
    - gf_filter_get_opid_count
    - gf_filter_pid_remove
    - PROP_UINT
    - gf_filter_pid_set_framing_mode
    - hevcsplit_rewrite_dsi
    - gf_filter_get_opid
    - gf_hevc_read_sps
    - gf_filter_pid_get_udta
    - gf_hevc_read_pps
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hevcsplit_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/hevcsplit.c:829,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/hevcsplit.c:830,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/hevcsplit.c:832,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/hevcsplit.c:834,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/hevcsplit.c:835,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/hevcsplit.c:838,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/hevcsplit.c:839,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/hevcsplit.c:848,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/hevcsplit.c:849,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/hevcsplit.c:850,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/hevcsplit.c:851,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/hevcsplit.c:855,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/hevcsplit.c:858,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/hevcsplit.c:862,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/hevcsplit.c:864,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/hevcsplit.c:864,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/hevcsplit.c:864,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/hevcsplit.c:866,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/hevcsplit.c:869,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/hevcsplit.c:870,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/hevcsplit.c:872,1
    - Dst: gf_hevc_parse_nalu
      Src: /src/gpac/src/filters/hevcsplit.c:874,1
    - Dst: hevcsplit_rewrite_nal
      Src: /src/gpac/src/filters/hevcsplit.c:878,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/hevcsplit.c:885,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/hevcsplit.c:886,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/hevcsplit.c:891,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/hevcsplit.c:894,1
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/hevcsplit.c:898,1
    - Dst: hevcsplit_write_nal
      Src: /src/gpac/src/filters/hevcsplit.c:900,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/hevcsplit.c:903,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/hevcsplit.c:904,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/hevcsplit.c:909,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/hevcsplit.c:912,1
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/hevcsplit.c:916,1
    - Dst: hevcsplit_write_nal
      Src: /src/gpac/src/filters/hevcsplit.c:918,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/hevcsplit.c:921,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/hevcsplit.c:924,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/hevcsplit.c:925,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/hevcsplit.c:929,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 86
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 934
      start: 819
    functionDepth: 10
    functionLinenumber: 819
    functionLinenumberEnd: 934
    functionName: hevcsplit_process
    functionSourceFile: /src/gpac/src/filters/hevcsplit.c
    functionUses: 0
    functionsReached:
    - gf_bs_available
    - gf_filter_pid_get_packet
    - hevcsplit_write_nal
    - gf_filter_pck_forward
    - gf_filter_pck_get_cts
    - gf_bs_skip_bytes
    - hevcsplit_rewrite_nal
    - gf_hevc_parse_nalu
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_expand
    - gf_filter_pid_set_eos
    - gf_bs_get_position
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - gf_filter_pck_merge_properties
    - gf_filter_get_opid
    - gf_bs_read_int
    - gf_filter_pid_get_udta
    - gf_filter_pck_get_dts
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hevcsplit_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/hevcsplit.c:938,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/hevcsplit.c:939,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/hevcsplit.c:940,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/hevcsplit.c:941,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 936
    functionDepth: 1
    functionLinenumber: 936
    functionLinenumberEnd: 943
    functionName: hevcsplit_initialize
    functionSourceFile: /src/gpac/src/filters/hevcsplit.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_bs_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hevcsplit_initialize(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/hevcsplit.c:948,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcsplit.c:949,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcsplit.c:950,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcsplit.c:951,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/hevcsplit.c:953,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/hevcsplit.c:954,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/hevcsplit.c:955,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/hevcsplit.c:957,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/hevcsplit.c:960,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/hevcsplit.c:961,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/hevcsplit.c:963,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 964
      start: 945
    functionDepth: 3
    functionLinenumber: 945
    functionLinenumberEnd: 964
    functionName: hevcsplit_finalize
    functionSourceFile: /src/gpac/src/filters/hevcsplit.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_bs_del
    - gf_list_count
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void hevcsplit_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 977
      start: 976
    functionDepth: 0
    functionLinenumber: 976
    functionLinenumberEnd: 977
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/hevcsplit.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1003
      start: 1000
    functionDepth: 0
    functionLinenumber: 1000
    functionLinenumberEnd: 1003
    functionName: hevcsplit_register
    functionSourceFile: /src/gpac/src/filters/hevcsplit.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister * hevcsplit_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1008
      start: 1005
    functionDepth: 0
    functionLinenumber: 1005
    functionLinenumberEnd: 1008
    functionName: hevcsplit_register
    functionSourceFile: /src/gpac/src/filters/hevcsplit.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister * hevcsplit_register(GF_FilterSession *session)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_mhas.c:65,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/rewrite_mhas.c:70,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/rewrite_mhas.c:75,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_mhas.c:78,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_mhas.c:82,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_mhas.c:85,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/rewrite_mhas.c:95,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_mhas.c:104,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/rewrite_mhas.c:109,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/rewrite_mhas.c:112,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/rewrite_mhas.c:113,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/rewrite_mhas.c:114,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/rewrite_mhas.c:114,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/rewrite_mhas.c:115,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 50
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 117
    functionName: mhasmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/rewrite_mhas.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_set_property
    - gf_filter_pid_check_caps
    - PROP_BOOL
    - gf_filter_pid_new
    - gf_crc_32
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mhasmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_mhas.c:123,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/rewrite_mhas.c:130,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/rewrite_mhas.c:132,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/rewrite_mhas.c:133,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/rewrite_mhas.c:139,1
    - Dst: gf_filter_pck_has_properties
      Src: /src/gpac/src/filters/rewrite_mhas.c:143,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/rewrite_mhas.c:144,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewrite_mhas.c:146,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/rewrite_mhas.c:150,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/rewrite_mhas.c:167,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/rewrite_mhas.c:170,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/rewrite_mhas.c:174,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/rewrite_mhas.c:175,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/rewrite_mhas.c:176,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_mhas.c:179,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_mhas.c:180,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_mhas.c:183,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_mhas.c:184,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_mhas.c:186,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/rewrite_mhas.c:188,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_mhas.c:190,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_mhas.c:191,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_mhas.c:193,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_mhas.c:194,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_mhas.c:196,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/rewrite_mhas.c:199,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/rewrite_mhas.c:208,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/rewrite_mhas.c:213,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/rewrite_mhas.c:216,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/rewrite_mhas.c:221,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/rewrite_mhas.c:222,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/rewrite_mhas.c:224,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/rewrite_mhas.c:226,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewrite_mhas.c:227,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 84
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 121
    functionDepth: 6
    functionLinenumber: 121
    functionLinenumberEnd: 229
    functionName: mhasmx_process
    functionSourceFile: /src/gpac/src/filters/rewrite_mhas.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_ref
    - gf_filter_pid_get_packet
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_forward
    - memcpy
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - gf_bs_write_int
    - gf_filter_pid_set_eos
    - gf_bs_write_data
    - gf_filter_pck_has_properties
    - gf_filter_pck_get_sap
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - gf_filter_pck_merge_properties
    - gf_filter_pck_set_framing
    - gf_bs_write_u8
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mhasmx_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_mhas.c:233,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/rewrite_mhas.c:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 231
    functionDepth: 1
    functionLinenumber: 231
    functionLinenumberEnd: 236
    functionName: mhasmx_initialize
    functionSourceFile: /src/gpac/src/filters/rewrite_mhas.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mhasmx_initialize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_mhas.c:240,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/rewrite_mhas.c:241,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 238
    functionDepth: 3
    functionLinenumber: 238
    functionLinenumberEnd: 242
    functionName: mhasmx_finalize
    functionSourceFile: /src/gpac/src/filters/rewrite_mhas.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void mhasmx_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 256
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/rewrite_mhas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 281
    functionName: ufmhas_register
    functionSourceFile: /src/gpac/src/filters/rewrite_mhas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ufmhas_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 286
    functionName: ufmhas_register
    functionSourceFile: /src/gpac/src/filters/rewrite_mhas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ufmhas_register(GF_FilterSession *session)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/restamp.c:82,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/restamp.c:83,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/restamp.c:89,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/restamp.c:91,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/restamp.c:92,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/restamp.c:93,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/restamp.c:94,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/restamp.c:95,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/restamp.c:97,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/restamp.c:99,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/restamp.c:103,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/restamp.c:107,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/restamp.c:110,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/restamp.c:111,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/restamp.c:112,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/restamp.c:114,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/restamp.c:117,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/restamp.c:125,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/restamp.c:126,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/restamp.c:132,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/restamp.c:136,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/restamp.c:140,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/restamp.c:140,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/restamp.c:157,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/restamp.c:159,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/restamp.c:162,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/restamp.c:165,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/restamp.c:167,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/restamp.c:172,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/restamp.c:172,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/restamp.c:175,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/restamp.c:183,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/restamp.c:190,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/restamp.c:191,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/restamp.c:195,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/restamp.c:202,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/restamp.c:202,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/restamp.c:207,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/restamp.c:207,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/restamp.c:210,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/restamp.c:217,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/restamp.c:217,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/restamp.c:219,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/restamp.c:224,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/restamp.c:224,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/restamp.c:228,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/restamp.c:228,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 134
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 78
    functionDepth: 3
    functionLinenumber: 78
    functionLinenumberEnd: 233
    functionName: restamp_configure_pid
    functionSourceFile: /src/gpac/src/filters/restamp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - gf_timestamp_rescale_signed
    - gf_list_count
    - gf_filter_pid_check_caps
    - gf_filter_pid_set_udta
    - PROP_FRAC64
    - gf_filter_pid_new
    - PROP_LONGSINT
    - gf_list_new
    - PROP_FRAC
    - gf_list_add
    - gf_filter_get_udta
    - gf_filter_pid_copy_properties
    - gf_filter_pid_negotiate_property
    - gf_list_del_item
    - gf_filter_pid_set_property
    - gf_list_del
    - PROP_FRAC_INT
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_list_pop_front
    - gf_filter_pid_set_framing_mode
    - gf_filter_pck_unref
    - gf_fatal_assert
    - gf_filter_pid_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err restamp_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/restamp.c:246,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/restamp.c:246,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/restamp.c:310,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/restamp.c:316,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/restamp.c:327,1
    - Dst: ABS
      Src: /src/gpac/src/filters/restamp.c:328,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 88
    argCount: 5
    argNames:
    - ctx
    - pctx
    - ots
    - is_ref_ts
    - pck
    argTypes:
    - RestampCtx*
    - RestampPid*
    - u64
    - Bool
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 235
    functionDepth: 1
    functionLinenumber: 235
    functionLinenumberEnd: 341
    functionName: restamp_get_timestamp
    functionSourceFile: /src/gpac/src/filters/restamp.c
    functionUses: 0
    functionsReached:
    - ABS
    - gf_timestamp_rescale_signed
    - gf_filter_pck_get_duration
    - gf_filter_pid_set_property
    - gf_timestamp_rescale
    - PROP_LONGSINT
    linkageType: ''
    returnType: u64
    signature: u64 restamp_get_timestamp(RestampCtx *ctx, RestampPid *pctx, u64 ots,
      Bool is_ref_ts, GF_FilterPacket *pck)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/restamp.c:356,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/restamp.c:358,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/restamp.c:359,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/restamp.c:361,1
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/src/filters/restamp.c:365,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/restamp.c:368,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/restamp.c:370,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/restamp.c:372,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/restamp.c:385,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/restamp.c:387,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/restamp.c:388,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 32
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - RestampCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 343
    functionDepth: 1
    functionLinenumber: 343
    functionLinenumberEnd: 392
    functionName: restamp_config_timing
    functionSourceFile: /src/gpac/src/filters/restamp.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pck_is_blocking_ref
    - gf_timestamp_rescale_signed
    - gf_list_count
    - gf_filter_pck_get_cts
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_packet
    - gf_timestamp_rescale
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: void
    signature: void restamp_config_timing(GF_Filter *filter, RestampCtx *ctx)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/restamp.c:398,1
    - Dst: restamp_config_timing
      Src: /src/gpac/src/filters/restamp.c:401,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/restamp.c:405,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/restamp.c:407,1
    - Dst: restamp_configure_pid
      Src: /src/gpac/src/filters/restamp.c:410,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/restamp.c:416,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/restamp.c:419,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/restamp.c:421,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/restamp.c:425,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/restamp.c:427,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/restamp.c:437,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/restamp.c:440,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/restamp.c:441,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/restamp.c:442,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/restamp.c:444,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/restamp.c:445,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/restamp.c:453,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/restamp.c:454,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/restamp.c:456,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/restamp.c:459,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/restamp.c:467,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/restamp.c:469,1
    - Dst: restamp_get_timestamp
      Src: /src/gpac/src/filters/restamp.c:470,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/restamp.c:470,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/restamp.c:473,1
    - Dst: restamp_get_timestamp
      Src: /src/gpac/src/filters/restamp.c:476,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/restamp.c:476,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/restamp.c:478,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/restamp.c:481,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/restamp.c:485,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/restamp.c:488,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/restamp.c:490,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/restamp.c:492,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/restamp.c:494,1
    - Dst: restamp_get_timestamp
      Src: /src/gpac/src/filters/restamp.c:497,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/restamp.c:501,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/restamp.c:505,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/restamp.c:507,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/restamp.c:509,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/restamp.c:514,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/restamp.c:516,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/restamp.c:518,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/restamp.c:522,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/restamp.c:525,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/restamp.c:526,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/restamp.c:528,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/restamp.c:530,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/restamp.c:533,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/restamp.c:537,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/restamp.c:540,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 123
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 395
    functionDepth: 4
    functionLinenumber: 395
    functionLinenumberEnd: 546
    functionName: restamp_process
    functionSourceFile: /src/gpac/src/filters/restamp.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_ref
    - gf_list_count
    - restamp_config_timing
    - gf_filter_pid_get_packet
    - gf_list_get
    - gf_assert
    - gf_list_add
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_duration
    - gf_filter_get_udta
    - gf_list_insert
    - gf_filter_pck_ref
    - gf_filter_pid_drop_packet
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_filter_pid_set_eos
    - gf_filter_pid_is_eos
    - restamp_configure_pid
    - gf_filter_pck_set_dts
    - gf_list_pop_front
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - restamp_get_timestamp
    - gf_filter_pck_unref
    - gf_filter_pck_get_dts
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err restamp_process(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/restamp.c:551,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/restamp.c:555,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 548
    functionDepth: 1
    functionLinenumber: 548
    functionLinenumberEnd: 558
    functionName: restamp_process_event
    functionSourceFile: /src/gpac/src/filters/restamp.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_udta
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: Bool
    signature: Bool restamp_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/restamp.c:562,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - filter
    - arg_name
    - new_val
    argTypes:
    - GF_Filter*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 560
    functionDepth: 1
    functionLinenumber: 560
    functionLinenumberEnd: 565
    functionName: restamp_update_arg
    functionSourceFile: /src/gpac/src/filters/restamp.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err restamp_update_arg(GF_Filter *filter, const char *arg_name,
      const GF_PropertyValue *new_val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/restamp.c:582,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/restamp.c:583,1
    - Dst: restamp_update_arg
      Src: /src/gpac/src/filters/restamp.c:586,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/restamp.c:593,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/restamp.c:593,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 580
    functionDepth: 2
    functionLinenumber: 580
    functionLinenumberEnd: 597
    functionName: restamp_initialize
    functionSourceFile: /src/gpac/src/filters/restamp.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_override_caps
    - restamp_update_arg
    - GF_ARRAY_LENGTH
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err restamp_initialize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/restamp.c:600,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/restamp.c:601,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/restamp.c:602,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/restamp.c:603,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/restamp.c:604,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/restamp.c:605,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/restamp.c:606,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/restamp.c:608,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/restamp.c:609,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/restamp.c:611,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 598
    functionDepth: 3
    functionLinenumber: 598
    functionLinenumberEnd: 612
    functionName: restamp_finalize
    functionSourceFile: /src/gpac/src/filters/restamp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_list_pop_front
    - gf_filter_pck_unref
    - gf_list_count
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void restamp_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 615
      start: 614
    functionDepth: 0
    functionLinenumber: 614
    functionLinenumberEnd: 615
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/restamp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 685
    functionDepth: 0
    functionLinenumber: 685
    functionLinenumberEnd: 688
    functionName: restamp_register
    functionSourceFile: /src/gpac/src/filters/restamp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *restamp_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 693
      start: 690
    functionDepth: 0
    functionLinenumber: 690
    functionLinenumberEnd: 693
    functionName: restamp_register
    functionSourceFile: /src/gpac/src/filters/restamp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *restamp_register(GF_FilterSession *session)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_obu.c:68,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/rewrite_obu.c:73,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/rewrite_obu.c:78,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_obu.c:81,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/rewrite_obu.c:86,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/rewrite_obu.c:92,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/rewrite_obu.c:95,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/rewrite_obu.c:97,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/rewrite_obu.c:97,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/rewrite_obu.c:101,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_obu.c:106,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/rewrite_obu.c:111,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/rewrite_obu.c:113,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/rewrite_obu.c:114,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/rewrite_obu.c:114,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/rewrite_obu.c:116,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/rewrite_obu.c:119,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewrite_obu.c:123,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filters/rewrite_obu.c:134,1
    - Dst: gf_odf_av1_cfg_read
      Src: /src/gpac/src/filters/rewrite_obu.c:139,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewrite_obu.c:141,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/rewrite_obu.c:146,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/rewrite_obu.c:151,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/rewrite_obu.c:152,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/rewrite_obu.c:153,1
    - Dst: gf_av1_leb128_size
      Src: /src/gpac/src/filters/rewrite_obu.c:157,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_obu.c:162,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_obu.c:164,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_obu.c:166,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/rewrite_obu.c:172,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/rewrite_obu.c:172,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/rewrite_obu.c:173,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 96
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 64
    functionDepth: 2
    functionLinenumber: 64
    functionLinenumberEnd: 176
    functionName: obumx_configure_pid
    functionSourceFile: /src/gpac/src/filters/rewrite_obu.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_av1_cfg_read
    - gf_filter_pid_set_property_str
    - gf_filter_pid_check_caps
    - gf_odf_av1_cfg_del
    - gf_filter_pid_new
    - PROP_BOOL
    - gf_crc_32
    - gf_filter_get_udta
    - gf_filter_pid_get_property_str
    - gf_filter_pid_copy_properties
    - GF_LOG
    - gf_av1_leb128_size
    - gf_list_enum
    - gf_filter_pid_set_property
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - strcmp
    - gf_filter_pid_caps_query
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err obumx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewrite_obu.c:192,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/rewrite_obu.c:195,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewrite_obu.c:197,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/rewrite_obu.c:200,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewrite_obu.c:202,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/rewrite_obu.c:205,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/rewrite_obu.c:207,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/rewrite_obu.c:209,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/rewrite_obu.c:210,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 4
    argNames:
    - opid
    - bs
    - src_pck
    - pcks
    argTypes:
    - GF_FilterPid*
    - GF_BitStream*
    - GF_FilterPacket*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 181
    functionDepth: 9
    functionLinenumber: 181
    functionLinenumberEnd: 212
    functionName: obumx_add_packet
    functionSourceFile: /src/gpac/src/filters/rewrite_obu.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_pck_new_alloc
    - memcpy
    - GF_LOG
    - gf_filter_pck_merge_properties
    - gf_bs_get_content
    - gf_list_add
    linkageType: ''
    returnType: GF_Err
    signature: "GF_Err obumx_add_packet(GF_FilterPid *opid,\n\t\t\t\t\t\t\t   GF_BitStream
      *bs,\n\t\t\t\t\t\t\t   GF_FilterPacket *src_pck,\n\t\t\t\t\t\t\t   GF_List *pcks)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/filters/rewrite_obu.c:226,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/rewrite_obu.c:227,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewrite_obu.c:229,1
    - Dst: gf_media_nalu_add_emulation_bytes
      Src: /src/gpac/src/filters/rewrite_obu.c:235,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 4
    argNames:
    - in_data
    - in_size
    - out_data
    - out_size
    argTypes:
    - u8*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 239
    functionName: format_obu_mpeg2ts
    functionSourceFile: /src/gpac/src/filters/rewrite_obu.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_media_nalu_add_emulation_bytes
    - gf_malloc
    - gf_media_nalu_emulation_bytes_add_count
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err format_obu_mpeg2ts(u8* in_data, u32 in_size, u8 **out_data,
      u32 *out_size)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/rewrite_obu.c:248,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/rewrite_obu.c:249,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/rewrite_obu.c:250,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/rewrite_obu.c:254,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/rewrite_obu.c:255,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewrite_obu.c:258,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/rewrite_obu.c:259,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/rewrite_obu.c:261,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/rewrite_obu.c:263,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/rewrite_obu.c:272,1
    - Dst: gf_av1_parse_obu_header
      Src: /src/gpac/src/filters/rewrite_obu.c:275,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/rewrite_obu.c:276,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/filters/rewrite_obu.c:279,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/rewrite_obu.c:280,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/rewrite_obu.c:282,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/rewrite_obu.c:285,1
    - Dst: obumx_add_packet
      Src: /src/gpac/src/filters/rewrite_obu.c:290,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/rewrite_obu.c:291,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/rewrite_obu.c:292,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/rewrite_obu.c:297,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/rewrite_obu.c:298,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewrite_obu.c:300,1
    - Dst: format_obu_mpeg2ts
      Src: /src/gpac/src/filters/rewrite_obu.c:302,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewrite_obu.c:304,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/rewrite_obu.c:306,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/rewrite_obu.c:308,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/rewrite_obu.c:310,1
    - Dst: obumx_add_packet
      Src: /src/gpac/src/filters/rewrite_obu.c:313,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/rewrite_obu.c:314,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/rewrite_obu.c:318,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/rewrite_obu.c:321,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/rewrite_obu.c:322,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/rewrite_obu.c:323,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/rewrite_obu.c:324,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/rewrite_obu.c:325,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/rewrite_obu.c:327,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/rewrite_obu.c:328,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/rewrite_obu.c:331,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/rewrite_obu.c:335,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/rewrite_obu.c:336,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/rewrite_obu.c:337,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/rewrite_obu.c:338,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/rewrite_obu.c:342,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/rewrite_obu.c:343,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/rewrite_obu.c:345,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/rewrite_obu.c:347,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewrite_obu.c:350,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 73
    argCount: 4
    argNames:
    - ctx
    - src_pck
    - data
    - src_pck_size
    argTypes:
    - GF_OBUMxCtx*
    - GF_FilterPacket*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 244
    functionDepth: 10
    functionLinenumber: 244
    functionLinenumberEnd: 352
    functionName: obumx_process_mpeg2au
    functionSourceFile: /src/gpac/src/filters/rewrite_obu.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_bs_new
    - format_obu_mpeg2ts
    - gf_list_count
    - gf_av1_parse_obu_header
    - gf_filter_pck_set_dependency_flags
    - gf_bs_available
    - gf_list_new
    - gf_list_get
    - gf_filter_pck_get_dependency_flags
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_duration
    - gf_filter_pid_drop_packet
    - GF_LOG
    - obumx_add_packet
    - gf_av1_leb128_read
    - gf_filter_pck_set_duration
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_filter_pck_set_sap
    - gf_filter_pck_get_sap
    - gf_bs_reassign_buffer
    - gf_malloc
    - gf_list_del
    - gf_bs_seek
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_bs_del
    - gf_list_rem
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err obumx_process_mpeg2au(GF_OBUMxCtx *ctx, GF_FilterPacket *src_pck,
      u8 *data, u32 src_pck_size)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_obu.c:358,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/rewrite_obu.c:363,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/rewrite_obu.c:365,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/rewrite_obu.c:366,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/rewrite_obu.c:372,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewrite_obu.c:373,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/rewrite_obu.c:377,1
    - Dst: gf_filter_pck_has_properties
      Src: /src/gpac/src/filters/rewrite_obu.c:381,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/rewrite_obu.c:382,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewrite_obu.c:384,1
    - Dst: obumx_process_mpeg2au
      Src: /src/gpac/src/filters/rewrite_obu.c:389,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/rewrite_obu.c:398,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/rewrite_obu.c:400,1
    - Dst: memset
      Src: /src/gpac/src/filters/rewrite_obu.c:409,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/rewrite_obu.c:424,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/rewrite_obu.c:425,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/rewrite_obu.c:427,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/rewrite_obu.c:432,1
    - Dst: gf_av1_parse_obu_header
      Src: /src/gpac/src/filters/rewrite_obu.c:434,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewrite_obu.c:437,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/filters/rewrite_obu.c:440,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/rewrite_obu.c:441,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/rewrite_obu.c:442,1
    - Dst: gf_av1_leb128_size
      Src: /src/gpac/src/filters/rewrite_obu.c:445,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewrite_obu.c:450,1
    - Dst: gf_av1_leb128_size
      Src: /src/gpac/src/filters/rewrite_obu.c:456,1
    - Dst: gf_av1_leb128_size
      Src: /src/gpac/src/filters/rewrite_obu.c:462,1
    - Dst: gf_av1_leb128_size
      Src: /src/gpac/src/filters/rewrite_obu.c:465,1
    - Dst: gf_av1_leb128_size
      Src: /src/gpac/src/filters/rewrite_obu.c:469,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/rewrite_obu.c:474,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/rewrite_obu.c:477,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/rewrite_obu.c:479,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/rewrite_obu.c:480,1
    - Dst: gf_av1_leb128_write
      Src: /src/gpac/src/filters/rewrite_obu.c:485,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/rewrite_obu.c:486,1
    - Dst: gf_av1_leb128_write
      Src: /src/gpac/src/filters/rewrite_obu.c:487,1
    - Dst: gf_av1_leb128_write
      Src: /src/gpac/src/filters/rewrite_obu.c:490,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/rewrite_obu.c:491,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/rewrite_obu.c:492,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/rewrite_obu.c:497,1
    - Dst: gf_av1_leb128_write
      Src: /src/gpac/src/filters/rewrite_obu.c:498,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/rewrite_obu.c:499,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/rewrite_obu.c:503,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/rewrite_obu.c:505,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/rewrite_obu.c:510,1
    - Dst: gf_av1_parse_obu_header
      Src: /src/gpac/src/filters/rewrite_obu.c:512,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/filters/rewrite_obu.c:513,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/rewrite_obu.c:515,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/rewrite_obu.c:516,1
    - Dst: gf_av1_leb128_write
      Src: /src/gpac/src/filters/rewrite_obu.c:521,1
    - Dst: gf_av1_leb128_write
      Src: /src/gpac/src/filters/rewrite_obu.c:526,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/rewrite_obu.c:527,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/rewrite_obu.c:530,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/rewrite_obu.c:530,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/rewrite_obu.c:535,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/rewrite_obu.c:535,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/filters/rewrite_obu.c:536,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/filters/rewrite_obu.c:537,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/rewrite_obu.c:542,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/rewrite_obu.c:542,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/rewrite_obu.c:545,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/rewrite_obu.c:545,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/rewrite_obu.c:548,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/rewrite_obu.c:548,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/rewrite_obu.c:551,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/rewrite_obu.c:551,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/rewrite_obu.c:554,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/filters/rewrite_obu.c:558,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/filters/rewrite_obu.c:559,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/rewrite_obu.c:560,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/rewrite_obu.c:561,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_obu.c:562,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/rewrite_obu.c:565,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/rewrite_obu.c:567,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/rewrite_obu.c:568,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/rewrite_obu.c:572,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/rewrite_obu.c:572,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/rewrite_obu.c:572,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/rewrite_obu.c:573,1
    - Dst: gf_bs_write_u64_le
      Src: /src/gpac/src/filters/rewrite_obu.c:574,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/rewrite_obu.c:578,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/rewrite_obu.c:579,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/rewrite_obu.c:584,1
    - Dst: gf_av1_leb128_write
      Src: /src/gpac/src/filters/rewrite_obu.c:585,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/rewrite_obu.c:586,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/rewrite_obu.c:590,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/rewrite_obu.c:596,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewrite_obu.c:597,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 182
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 600
      start: 354
    functionDepth: 11
    functionLinenumber: 354
    functionLinenumberEnd: 600
    functionName: obumx_process
    functionSourceFile: /src/gpac/src/filters/rewrite_obu.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - memset
    - gf_av1_parse_obu_header
    - gf_bs_write_u64_le
    - gf_bs_available
    - gf_av1_leb128_write
    - gf_bs_write_u32
    - gf_bs_write_u32_le
    - gf_filter_pid_get_packet
    - obumx_process_mpeg2au
    - gf_assert
    - gf_filter_pck_forward
    - gf_filter_pck_get_dependency_flags
    - gf_filter_pck_get_cts
    - gf_bs_skip_bytes
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_av1_leb128_read
    - gf_filter_pid_set_eos
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_filter_pck_get_timescale
    - gf_filter_pck_has_properties
    - gf_av1_leb128_size
    - gf_filter_pck_get_sap
    - gf_filter_pid_is_eos
    - gf_list_enum
    - gf_bs_reassign_buffer
    - gf_timestamp_rescale
    - gf_filter_pid_get_property
    - gf_filter_pck_merge_properties
    - gf_bs_write_u16_le
    - GF_4CC
    - gf_bs_write_u8
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err obumx_process(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_obu.c:604,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/rewrite_obu.c:605,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/rewrite_obu.c:606,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filters/rewrite_obu.c:607,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 608
      start: 602
    functionDepth: 3
    functionLinenumber: 602
    functionLinenumberEnd: 608
    functionName: obumx_finalize
    functionSourceFile: /src/gpac/src/filters/rewrite_obu.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_odf_av1_cfg_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void obumx_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 623
    functionDepth: 0
    functionLinenumber: 623
    functionLinenumberEnd: 624
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/rewrite_obu.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 651
      start: 648
    functionDepth: 0
    functionLinenumber: 648
    functionLinenumberEnd: 651
    functionName: ufobu_register
    functionSourceFile: /src/gpac/src/filters/rewrite_obu.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ufobu_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 653
    functionDepth: 0
    functionLinenumber: 653
    functionLinenumberEnd: 656
    functionName: ufobu_register
    functionSourceFile: /src/gpac/src/filters/rewrite_obu.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ufobu_register(GF_FilterSession *session)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_ac52.c:67,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_ac52.c:71,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_ac52.c:77,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dec_ac52.c:81,1
    - Dst: a52_init
      Src: /src/gpac/src/filters/dec_ac52.c:87,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_ac52.c:89,1
    - Dst: a52_samples
      Src: /src/gpac/src/filters/dec_ac52.c:93,1
    - Dst: a52_free
      Src: /src/gpac/src/filters/dec_ac52.c:95,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_ac52.c:96,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_ac52.c:100,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_ac52.c:103,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_ac52.c:104,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_ac52.c:104,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_ac52.c:105,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_ac52.c:105,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_ac52.c:106,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_ac52.c:106,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 33
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 108
    functionName: a52dec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_ac52.c
    functionUses: 0
    functionsReached:
    - a52_samples
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - gf_filter_pid_remove
    - a52_init
    - gf_filter_pid_set_framing_mode
    - GF_LOG
    - a52_free
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err a52dec_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_ac52.c:112,1
    - Dst: a52_free
      Src: /src/gpac/src/filters/dec_ac52.c:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: a52dec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_ac52.c
    functionUses: 0
    functionsReached:
    - a52_free
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void a52dec_finalize(GF_Filter *filter)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_ac52.c:154,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dec_ac52.c:154,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_A52DecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 156
    functionName: a52dec_check_mc_config
    functionSourceFile: /src/gpac/src/filters/dec_ac52.c
    functionUses: 0
    functionsReached:
    - PROP_LONGUINT
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: void
    signature: void a52dec_check_mc_config(GF_A52DecCtx *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - i
    argTypes:
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 167
    functionName: blah
    functionSourceFile: /src/gpac/src/filters/dec_ac52.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE blah (s32 i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blah
      Src: /src/gpac/src/filters/dec_ac52.c:178,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - _f
    - samps
    - nchannels
    argTypes:
    - float*
    - s16*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 180
    functionName: float_to_int
    functionSourceFile: /src/gpac/src/filters/dec_ac52.c
    functionUses: 0
    functionsReached:
    - blah
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE float_to_int (float * _f, s16 *samps, int nchannels)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_ac52.c:198,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_ac52.c:200,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_ac52.c:203,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_ac52.c:204,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_ac52.c:209,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_ac52.c:211,1
    - Dst: a52_syncinfo
      Src: /src/gpac/src/filters/dec_ac52.c:212,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_ac52.c:223,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_ac52.c:223,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_ac52.c:224,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_ac52.c:224,1
    - Dst: a52dec_check_mc_config
      Src: /src/gpac/src/filters/dec_ac52.c:225,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_ac52.c:229,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_ac52.c:229,1
    - Dst: a52_frame
      Src: /src/gpac/src/filters/dec_ac52.c:232,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_ac52.c:233,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_ac52.c:234,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dec_ac52.c:237,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_ac52.c:241,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_ac52.c:242,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_ac52.c:243,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_ac52.c:245,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dec_ac52.c:247,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dec_ac52.c:251,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dec_ac52.c:254,1
    - Dst: a52_block
      Src: /src/gpac/src/filters/dec_ac52.c:260,1
    - Dst: float_to_int
      Src: /src/gpac/src/filters/dec_ac52.c:263,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_ac52.c:265,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 62
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 188
    functionDepth: 2
    functionLinenumber: 188
    functionLinenumberEnd: 268
    functionName: a52dec_process
    functionSourceFile: /src/gpac/src/filters/dec_ac52.c
    functionUses: 0
    functionsReached:
    - float_to_int
    - a52dec_check_mc_config
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_cts
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_filter_pck_set_duration
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_timescale
    - gf_filter_pid_is_eos
    - gf_filter_pid_set_property
    - a52_block
    - PROP_UINT
    - gf_filter_pck_set_cts
    - a52_syncinfo
    - gf_filter_pck_merge_properties
    - a52_frame
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err a52dec_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 302
    functionName: a52dec_register
    functionSourceFile: /src/gpac/src/filters/dec_ac52.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *a52dec_register(GF_FilterSession *session)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_mhas.c:98,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/reframe_mhas.c:103,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/reframe_mhas.c:108,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_mhas.c:111,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_mhas.c:116,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/reframe_mhas.c:122,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_mhas.c:127,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_mhas.c:128,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mhas.c:129,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 33
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 133
    functionName: mhas_dmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/reframe_mhas.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property_str
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mhas_dmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_mhas.c:151,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_mhas.c:152,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/reframe_mhas.c:159,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/reframe_mhas.c:161,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/filters/reframe_mhas.c:168,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_mhas.c:173,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/filters/reframe_mhas.c:174,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_mhas.c:178,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_mhas.c:180,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_mhas.c:184,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/reframe_mhas.c:185,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/reframe_mhas.c:186,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/reframe_mhas.c:187,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_mhas.c:189,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_mhas.c:191,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_mhas.c:192,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:197,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_mhas.c:201,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:202,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:204,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:208,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:216,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:217,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:218,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:219,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/reframe_mhas.c:224,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_mhas.c:225,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_mhas.c:227,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_mhas.c:233,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_mhas.c:246,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_mhas.c:247,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/reframe_mhas.c:248,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mhas.c:252,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_mhas.c:252,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_mhas.c:261,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 101
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_MHASDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 135
    functionDepth: 8
    functionLinenumber: 135
    functionLinenumberEnd: 263
    functionName: mhas_dmx_check_dur
    functionSourceFile: /src/gpac/src/filters/reframe_mhas.c
    functionUses: 0
    functionsReached:
    - gf_bs_peek_bits
    - gf_fclose
    - gf_filter_pid_get_property
    - gf_realloc
    - gf_fileio_is_main_thread
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_del
    - PROP_FRAC64
    - strncmp
    - gf_fopen_ex
    - gf_bs_read_int
    - gf_bs_read_u8
    - gf_bs_available
    - gf_bs_from_file
    - gf_filter_pid_set_property
    - gf_bs_skip_bytes
    - gf_mpegh_escaped_value
    linkageType: ''
    returnType: void
    signature: void mhas_dmx_check_dur(GF_Filter *filter, GF_MHASDmxCtx *ctx)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_mhas.c:270,1
    - Dst: mhas_dmx_check_dur
      Src: /src/gpac/src/filters/reframe_mhas.c:271,1
    - Dst: gf_audio_fmt_get_layout_from_cicp
      Src: /src/gpac/src/filters/reframe_mhas.c:293,1
    - Dst: gf_audio_fmt_get_num_channels_from_layout
      Src: /src/gpac/src/filters/reframe_mhas.c:294,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_mhas.c:300,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mhas.c:301,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mhas.c:301,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mhas.c:302,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mhas.c:304,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mhas.c:304,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mhas.c:307,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_mhas.c:307,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mhas.c:309,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_mhas.c:309,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/reframe_mhas.c:311,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/reframe_mhas.c:314,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mhas.c:321,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mhas.c:322,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mhas.c:322,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mhas.c:323,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/reframe_mhas.c:323,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mhas.c:325,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mhas.c:325,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mhas.c:326,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mhas.c:326,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mhas.c:329,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mhas.c:329,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mhas.c:330,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mhas.c:330,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mhas.c:332,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/reframe_mhas.c:332,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mhas.c:333,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mhas.c:333,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mhas.c:334,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mhas.c:334,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mhas.c:337,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mhas.c:337,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 60
    argCount: 9
    argNames:
    - filter
    - ctx
    - PL
    - sample_rate
    - frame_len
    - CICPspeakerLayoutIdx
    - numSpeakers
    - dsi
    - dsi_size
    argTypes:
    - GF_Filter*
    - GF_MHASDmxCtx*
    - u32
    - u32
    - u32
    - s32
    - s32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 265
    functionDepth: 9
    functionLinenumber: 265
    functionLinenumberEnd: 339
    functionName: mhas_dmx_check_pid
    functionSourceFile: /src/gpac/src/filters/reframe_mhas.c
    functionUses: 0
    functionsReached:
    - PROP_BOOL
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - memcpy
    - PROP_DATA_NO_COPY
    - gf_audio_fmt_get_num_channels_from_layout
    - mhas_dmx_check_dur
    - PROP_FRAC64
    - gf_filter_pid_set_name
    - gf_filter_pid_new
    - PROP_LONGUINT
    - gf_filter_pid_set_property
    - gf_malloc
    - gf_audio_fmt_get_layout_from_cicp
    linkageType: ''
    returnType: void
    signature: void mhas_dmx_check_pid(GF_Filter *filter, GF_MHASDmxCtx *ctx, u32
      PL, u32 sample_rate, u32 frame_len, s32 CICPspeakerLayoutIdx, s32 numSpeakers,
      u8 *dsi, u32 dsi_size)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_mhas.c:345,1
    - Dst: mhas_dmx_check_dur
      Src: /src/gpac/src/filters/reframe_mhas.c:362,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_mhas.c:385,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_mhas.c:387,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mhas.c:394,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 53
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 341
    functionDepth: 9
    functionLinenumber: 341
    functionLinenumberEnd: 408
    functionName: mhas_dmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_mhas.c
    functionUses: 0
    functionsReached:
    - GF_FEVT_INIT
    - gf_filter_pck_unref
    - mhas_dmx_check_dur
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool mhas_dmx_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - pck_dur
    argTypes:
    - GF_MHASDmxCtx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 410
    functionDepth: 0
    functionLinenumber: 410
    functionLinenumberEnd: 420
    functionName: mhas_dmx_update_cts
    functionSourceFile: /src/gpac/src/filters/reframe_mhas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE mhas_dmx_update_cts(GF_MHASDmxCtx *ctx, u32 pck_dur)
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 42
    argCount: 1
    argNames:
    - pck_type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 423
    functionDepth: 0
    functionLinenumber: 423
    functionLinenumberEnd: 449
    functionName: mhas_pck_name
    functionSourceFile: /src/gpac/src/filters/reframe_mhas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *mhas_pck_name(u32 pck_type)
  - BBCount: 69
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_mhas.c:454,1
    - Dst: mhas_dmx_check_dur
      Src: /src/gpac/src/filters/reframe_mhas.c:469,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_mhas.c:474,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_mhas.c:476,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_mhas.c:479,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mhas.c:480,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_mhas.c:495,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_mhas.c:498,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_mhas.c:511,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mhas.c:513,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_mhas.c:519,1
    - Dst: memchr
      Src: /src/gpac/src/filters/reframe_mhas.c:541,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mhas.c:547,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mhas.c:551,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_mhas.c:558,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/reframe_mhas.c:572,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/reframe_mhas.c:573,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/reframe_mhas.c:574,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mhas.c:583,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mhas.c:591,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_mhas.c:599,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_mhas.c:602,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mhas.c:604,1
    - Dst: GF_TRUE
      Src: /src/gpac/src/filters/reframe_mhas.c:607,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/filters/reframe_mhas.c:611,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_mhas.c:620,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:621,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:623,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:628,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:631,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:632,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:635,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:637,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/reframe_mhas.c:639,1
    - Dst: mhas_dmx_check_pid
      Src: /src/gpac/src/filters/reframe_mhas.c:643,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:650,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:651,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:652,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:653,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_mhas.c:665,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/reframe_mhas.c:675,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_mhas.c:676,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_mhas.c:678,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mhas.c:680,1
    - Dst: mhas_pck_name
      Src: /src/gpac/src/filters/reframe_mhas.c:680,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_mhas.c:698,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mhas.c:709,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/reframe_mhas.c:709,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_mhas.c:720,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_mhas.c:723,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_mhas.c:725,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mhas.c:727,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_mhas.c:731,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_mhas.c:733,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_mhas.c:734,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_mhas.c:735,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_mhas.c:736,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_mhas.c:740,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mhas.c:742,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_mhas.c:743,1
    - Dst: mhas_dmx_update_cts
      Src: /src/gpac/src/filters/reframe_mhas.c:749,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mhas.c:757,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_mhas.c:760,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/reframe_mhas.c:771,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_mhas.c:790,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mhas.c:800,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_mhas.c:804,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_mhas.c:809,1
    CyclomaticComplexity: 96
    EdgeCount: 96
    ICount: 265
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 813
      start: 452
    functionDepth: 10
    functionLinenumber: 452
    functionLinenumberEnd: 813
    functionName: mhas_dmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_mhas.c
    functionUses: 0
    functionsReached:
    - gf_bs_peek_bits
    - gf_filter_pck_ref_props
    - gf_bs_available
    - PROP_LONGSINT
    - gf_filter_pid_get_packet
    - mhas_dmx_check_pid
    - gf_realloc
    - gf_filter_pck_set_byte_offset
    - memcpy
    - gf_filter_pck_get_cts
    - memchr
    - gf_bs_skip_bytes
    - gf_mpegh_escaped_value
    - gf_filter_get_udta
    - gf_filter_pck_new_alloc
    - memmove
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_filter_pid_would_block
    - gf_filter_pid_set_eos
    - gf_bs_align
    - gf_bs_get_position
    - GF_TRUE
    - gf_filter_pck_set_sap
    - gf_bs_read_u8
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - gf_filter_pid_set_property
    - gf_timestamp_rescale
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - gf_filter_pck_set_framing
    - gf_filter_pck_get_byte_offset
    - mhas_dmx_check_dur
    - gf_bs_read_int
    - mhas_dmx_update_cts
    - mhas_pck_name
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mhas_dmx_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - udta
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 815
    functionDepth: 0
    functionLinenumber: 815
    functionLinenumberEnd: 819
    functionName: mhas_buffer_too_small
    functionSourceFile: /src/gpac/src/filters/reframe_mhas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void mhas_buffer_too_small(void *udta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_mhas.c:823,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_mhas.c:824,1
    - Dst: gf_bs_set_eos_callback
      Src: /src/gpac/src/filters/reframe_mhas.c:825,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 821
    functionDepth: 1
    functionLinenumber: 821
    functionLinenumberEnd: 827
    functionName: mhas_dmx_initialize
    functionSourceFile: /src/gpac/src/filters/reframe_mhas.c
    functionUses: 0
    functionsReached:
    - gf_bs_set_eos_callback
    - gf_bs_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mhas_dmx_initialize(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_mhas.c:830,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_mhas.c:831,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_mhas.c:832,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_mhas.c:833,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mhas.c:834,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 835
      start: 828
    functionDepth: 3
    functionLinenumber: 828
    functionLinenumberEnd: 835
    functionName: mhas_dmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_mhas.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_del
    - gf_filter_pck_unref
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void mhas_dmx_finalize(GF_Filter *filter)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: memchr
      Src: /src/gpac/src/filters/reframe_mhas.c:848,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_mhas.c:859,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_mhas.c:860,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_mhas.c:862,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/reframe_mhas.c:863,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/reframe_mhas.c:864,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/reframe_mhas.c:865,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_mhas.c:866,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_mhas.c:872,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_mhas.c:874,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 34
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 880
      start: 838
    functionDepth: 7
    functionLinenumber: 838
    functionLinenumberEnd: 880
    functionName: mhas_dmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_mhas.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_del
    - memchr
    - gf_bs_available
    - gf_bs_skip_bytes
    - gf_mpegh_escaped_value
    linkageType: ''
    returnType: char
    signature: char *mhas_dmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 900
      start: 899
    functionDepth: 0
    functionLinenumber: 899
    functionLinenumberEnd: 900
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/reframe_mhas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 934
      start: 931
    functionDepth: 0
    functionLinenumber: 931
    functionLinenumberEnd: 934
    functionName: rfmhas_register
    functionSourceFile: /src/gpac/src/filters/reframe_mhas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfmhas_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 939
      start: 936
    functionDepth: 0
    functionLinenumber: 936
    functionLinenumberEnd: 939
    functionName: rfmhas_register
    functionSourceFile: /src/gpac/src/filters/reframe_mhas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfmhas_register(GF_FilterSession *session)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:238,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/filters/jsfilter.c:242,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 236
    functionDepth: 1
    functionLinenumber: 236
    functionLinenumberEnd: 245
    functionName: jsf_filter_mark
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: void jsf_filter_mark(JSRuntime *rt, JSValueConst val, JS_MarkFunc *mark_func)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:255,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/filters/jsfilter.c:257,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 253
    functionDepth: 1
    functionLinenumber: 253
    functionLinenumberEnd: 259
    functionName: jsf_filter_inst_mark
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: void jsf_filter_inst_mark(JSRuntime *rt, JSValueConst val, JS_MarkFunc
      *mark_func)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:261,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/filters/jsfilter.c:263,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:264,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 260
    functionDepth: 1
    functionLinenumber: 260
    functionLinenumberEnd: 265
    functionName: jsf_filter_inst_finalizer
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_free
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void jsf_filter_inst_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:281,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:285,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:289,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:291,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:296,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:302,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 31
    argCount: 1
    argNames:
    - evt
    argTypes:
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 306
    functionName: jsf_event_reset
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void jsf_event_reset(GF_FilterEvent *evt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:310,1
    - Dst: jsf_event_reset
      Src: /src/gpac/src/filters/jsfilter.c:313,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:314,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 308
    functionDepth: 1
    functionLinenumber: 308
    functionLinenumberEnd: 315
    functionName: jsf_evt_finalizer
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_free
    - jsf_event_reset
    linkageType: ''
    returnType: void
    signature: void jsf_evt_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:325,1
    - Dst: JS_DetachArrayBuffer
      Src: /src/gpac/src/filters/jsfilter.c:326,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:327,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - pckctx
    argTypes:
    - JSContext*
    - GF_JSPckCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 323
    functionDepth: 1
    functionLinenumber: 323
    functionLinenumberEnd: 330
    functionName: jsf_pck_detach_ab
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - JS_IsUndefined
    - JS_DetachArrayBuffer
    linkageType: ''
    returnType: void
    signature: void jsf_pck_detach_ab(JSContext *ctx, GF_JSPckCtx *pckctx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:334,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:337,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/filters/jsfilter.c:338,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/jsfilter.c:345,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:347,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/filters/jsfilter.c:356,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:359,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:360,1
    - Dst: memset
      Src: /src/gpac/src/filters/jsfilter.c:361,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 332
    functionDepth: 1
    functionLinenumber: 332
    functionLinenumberEnd: 363
    functionName: jsf_pck_finalizer
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_GetOpaque
    - JS_FreeValueRT
    - JS_IsUndefined
    - memset
    - gf_list_add
    - gf_filter_pck_discard
    linkageType: ''
    returnType: void
    signature: void jsf_pck_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:367,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/filters/jsfilter.c:371,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:373,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/filters/jsfilter.c:374,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:377,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/filters/jsfilter.c:378,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 365
    functionDepth: 1
    functionLinenumber: 365
    functionLinenumberEnd: 380
    functionName: jsf_filter_pck_mark
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_MarkValue
    - JS_IsUndefined
    linkageType: ''
    returnType: void
    signature: void jsf_filter_pck_mark(JSRuntime *rt, JSValueConst val, JS_MarkFunc
      *mark_func)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/jsfilter.c:398,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:400,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:401,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:402,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:402,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:403,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:404,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/jsfilter.c:405,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:407,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:408,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:408,1
    - Dst: jsff_get_session
      Src: /src/gpac/src/filters/jsfilter.c:409,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:410,1
    - Dst: gf_fs_get_download_manager
      Src: /src/gpac/src/filters/jsfilter.c:411,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 1
    argNames:
    - c
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 395
    functionDepth: 1
    functionLinenumber: 395
    functionLinenumberEnd: 414
    functionName: jsf_get_download_manager
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 1
    functionsReached:
    - JS_GetGlobalObject
    - gf_filter_get_download_manager
    - gf_fs_get_download_manager
    - JS_IsNull
    - JS_IsException
    - JS_FreeValue
    - JS_GetOpaque
    - JS_GetPropertyStr
    - jsff_get_session
    linkageType: ''
    returnType: GF_DownloadManager
    signature: GF_DownloadManager *jsf_get_download_manager(JSContext *c)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/jsfilter.c:420,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:423,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:424,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:424,1
    - Dst: jsff_get_session
      Src: /src/gpac/src/filters/jsfilter.c:425,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:426,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:428,1
    - Dst: gf_fs_get_font_manager
      Src: /src/gpac/src/filters/jsfilter.c:429,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:433,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:434,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:435,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:435,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:436,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:437,1
    - Dst: gf_filter_get_font_manager
      Src: /src/gpac/src/filters/jsfilter.c:439,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - c
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 417
    functionDepth: 1
    functionLinenumber: 417
    functionLinenumberEnd: 443
    functionName: jsf_get_font_manager
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 1
    functionsReached:
    - JS_GetGlobalObject
    - JS_IsNull
    - gf_filter_get_font_manager
    - JS_IsException
    - JS_FreeValue
    - JS_GetOpaque
    - JS_GetPropertyStr
    - gf_fs_get_font_manager
    - jsff_get_session
    linkageType: ''
    returnType: struct _gf_ft_mgr
    signature: struct _gf_ft_mgr *jsf_get_font_manager(JSContext *c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/jsfilter.c:448,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:450,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:451,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:452,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:452,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:453,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:454,1
    - Dst: gf_filter_request_opengl
      Src: /src/gpac/src/filters/jsfilter.c:456,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - c
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 445
    functionDepth: 1
    functionLinenumber: 445
    functionLinenumberEnd: 457
    functionName: jsf_request_opengl
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 1
    functionsReached:
    - JS_GetGlobalObject
    - gf_filter_request_opengl
    - JS_IsNull
    - JS_IsException
    - JS_FreeValue
    - JS_GetOpaque
    - JS_GetPropertyStr
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jsf_request_opengl(JSContext *c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/jsfilter.c:461,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:463,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:464,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:465,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:465,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:466,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:467,1
    - Dst: gf_filter_set_active_opengl_context
      Src: /src/gpac/src/filters/jsfilter.c:469,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - c
    - do_activate
    argTypes:
    - JSContext*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 458
    functionDepth: 1
    functionLinenumber: 458
    functionLinenumberEnd: 470
    functionName: jsf_set_gl_active
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 2
    functionsReached:
    - JS_GetGlobalObject
    - gf_filter_set_active_opengl_context
    - JS_IsNull
    - JS_IsException
    - JS_FreeValue
    - JS_GetOpaque
    - JS_GetPropertyStr
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jsf_set_gl_active(JSContext *c, Bool do_activate)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:474,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - c
    - obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 472
    functionDepth: 1
    functionLinenumber: 472
    functionLinenumberEnd: 477
    functionName: jsf_is_packet
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 3
    functionsReached:
    - JS_GetOpaque
    linkageType: ''
    returnType: Bool
    signature: Bool jsf_is_packet(JSContext *c, JSValue obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:480,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - c
    - obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 478
    functionDepth: 1
    functionLinenumber: 478
    functionLinenumberEnd: 483
    functionName: jsf_get_packet
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 1
    functionsReached:
    - JS_GetOpaque
    linkageType: ''
    returnType: GF_FilterPacket
    signature: GF_FilterPacket *jsf_get_packet(JSContext *c, JSValue obj)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:490,1
    - Dst: GETPROP
      Src: /src/gpac/src/filters/jsfilter.c:498,1
    - Dst: GETPROP
      Src: /src/gpac/src/filters/jsfilter.c:500,1
    - Dst: GETPROP
      Src: /src/gpac/src/filters/jsfilter.c:501,1
    - Dst: GETPROP
      Src: /src/gpac/src/filters/jsfilter.c:502,1
    - Dst: GETPROP
      Src: /src/gpac/src/filters/jsfilter.c:503,1
    - Dst: GETPROP
      Src: /src/gpac/src/filters/jsfilter.c:504,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/jsfilter.c:509,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/jsfilter.c:512,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/jsfilter.c:515,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/jsfilter.c:516,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/jsfilter.c:518,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/jsfilter.c:519,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 11
    argNames:
    - c
    - obj
    - width
    - height
    - pf
    - stride
    - stride_uv
    - data
    - p_u
    - p_v
    - p_a
    argTypes:
    - JSContext*
    - JSValue
    - u32*
    - u32*
    - u32*
    - u32*
    - u32*
    - u8**
    - u8**
    - u8**
    - u8**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 522
      start: 485
    functionDepth: 1
    functionLinenumber: 485
    functionLinenumberEnd: 522
    functionName: jsf_get_filter_packet_planes
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 2
    functionsReached:
    - JS_GetOpaque
    - gf_filter_pck_get_data
    - GF_FilterFrameInterface*::get_plane
    - GETPROP
    - gf_filter_pck_get_frame_interface
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jsf_get_filter_packet_planes(JSContext *c, JSValue obj, u32
      *width, u32 *height, u32 *pf, u32 *stride, u32 *stride_uv, const u8 **data,
      const u8 **p_u, const u8 **p_v, const u8 **p_a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _code
    - ','
    - _v
    - ','
    - opt
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 493
    functionDepth: 0
    functionLinenumber: 493
    functionLinenumberEnd: 498
    functionName: GETPROP
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GETPROP(_code, _v, opt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/jsfilter.c:527,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:528,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:529,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:530,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:530,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:534,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:535,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/jsfilter.c:538,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:539,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:541,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:542,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:543,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:544,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:545,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - c
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 547
      start: 524
    functionDepth: 1
    functionLinenumber: 524
    functionLinenumberEnd: 547
    functionName: jsf_get_script_filename
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 5
    functionsReached:
    - JS_GetGlobalObject
    - JS_ToCString
    - JS_IsNull
    - JS_IsException
    - JS_FreeValue
    - JS_GetOpaque
    - JS_IsUndefined
    - JS_GetPropertyStr
    - JS_FreeCString
    linkageType: ''
    returnType: char
    signature: char *jsf_get_script_filename(JSContext *c)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:557,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:560,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:562,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/jsfilter.c:562,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:564,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:566,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:568,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/filters/jsfilter.c:568,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:570,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:575,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:577,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:578,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:578,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:579,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:579,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:582,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:583,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:583,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:584,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:584,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:587,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:588,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:588,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:589,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:589,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:590,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:590,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:593,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:594,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:594,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:595,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:595,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:596,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:596,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:597,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:597,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:600,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:601,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:601,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:602,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:602,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:605,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:606,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:606,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:607,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:607,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filters/jsfilter.c:610,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filters/jsfilter.c:612,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:612,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filters/jsfilter.c:616,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filters/jsfilter.c:618,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:618,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/jsfilter.c:618,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filters/jsfilter.c:622,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filters/jsfilter.c:624,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:624,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filters/jsfilter.c:628,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:630,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:631,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:631,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:632,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:632,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filters/jsfilter.c:633,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filters/jsfilter.c:637,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filters/jsfilter.c:639,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:639,1
    - Dst: JS_NewArrayBufferCopy
      Src: /src/gpac/src/filters/jsfilter.c:643,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filters/jsfilter.c:646,1
    - Dst: gf_props_enum_name
      Src: /src/gpac/src/filters/jsfilter.c:647,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:649,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 99
    argCount: 2
    argNames:
    - ctx
    - new_val
    argTypes:
    - JSContext*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 653
      start: 549
    functionDepth: 3
    functionLinenumber: 549
    functionLinenumberEnd: 653
    functionName: jsf_NewProp
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_props_enum_name
    - JS_NewFloat64
    - JS_SetPropertyUint32
    - gf_props_type_is_enum
    - JS_NewString
    - JS_NewInt64
    - JS_NewArrayBufferCopy
    - JS_NewBool
    - JS_SetPropertyStr
    - JS_NewObject
    - JS_NewInt32
    - JS_NewArray
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_NewProp(JSContext *ctx, const GF_PropertyValue *new_val)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_codecid_file_ext
      Src: /src/gpac/src/filters/jsfilter.c:661,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:662,1
    - Dst: strchr
      Src: /src/gpac/src/filters/jsfilter.c:664,1
    - Dst: JS_NewStringLen
      Src: /src/gpac/src/filters/jsfilter.c:666,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:668,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:672,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filters/jsfilter.c:672,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:675,1
    - Dst: gf_audio_fmt_get_layout_name
      Src: /src/gpac/src/filters/jsfilter.c:675,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:679,1
    - Dst: gf_props_enum_name
      Src: /src/gpac/src/filters/jsfilter.c:679,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:683,1
    - Dst: gf_props_enum_name
      Src: /src/gpac/src/filters/jsfilter.c:683,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filters/jsfilter.c:687,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 3
    argNames:
    - ctx
    - prop
    - p4cc
    argTypes:
    - JSContext*
    - GF_PropertyValue*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 655
    functionDepth: 6
    functionLinenumber: 655
    functionLinenumberEnd: 691
    functionName: jsf_NewPropTranslate
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_audio_fmt_get_layout_name
    - gf_props_enum_name
    - JS_NewString
    - jsf_NewProp
    - JS_NewStringLen
    - GF_JS_EXCEPTION
    - strchr
    - gf_stream_type_name
    - gf_codecid_file_ext
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_NewPropTranslate(JSContext *ctx, const GF_PropertyValue
      *prop, u32 p4cc)
  - BBCount: 50
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/jsfilter.c:696,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/jsfilter.c:700,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filters/jsfilter.c:702,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:703,1
    - Dst: gf_stream_type_by_name
      Src: /src/gpac/src/filters/jsfilter.c:706,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filters/jsfilter.c:709,1
    - Dst: gf_audio_fmt_get_layout_from_name
      Src: /src/gpac/src/filters/jsfilter.c:712,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/jsfilter.c:714,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/jsfilter.c:714,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:716,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/filters/jsfilter.c:720,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:722,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:724,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:725,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:727,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/filters/jsfilter.c:731,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:732,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/filters/jsfilter.c:735,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:739,1
    - Dst: JS_ToIndex
      Src: /src/gpac/src/filters/jsfilter.c:740,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:741,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:744,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/filters/jsfilter.c:746,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filters/jsfilter.c:747,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:750,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:753,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:756,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:761,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/jsfilter.c:767,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/jsfilter.c:770,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:774,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/jsfilter.c:775,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:776,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:779,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:782,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filters/jsfilter.c:785,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:796,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:797,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:798,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:801,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:803,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:804,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:805,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:808,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:810,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:811,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:813,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:814,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:818,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:820,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:821,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:823,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:824,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:827,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:829,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:830,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:832,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:833,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:837,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:839,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:840,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:842,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:843,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:849,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/filters/jsfilter.c:894,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/jsfilter.c:903,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/jsfilter.c:904,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:909,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:918,1
    - Dst: strlen
      Src: /src/gpac/src/filters/jsfilter.c:926,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 215
    argCount: 6
    argNames:
    - filter
    - ctx
    - value
    - p4cc
    - prop
    - prop_type
    argTypes:
    - GF_Filter*
    - JSContext*
    - JSValue
    - u32
    - GF_PropertyValue*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 931
      start: 693
    functionDepth: 2
    functionLinenumber: 693
    functionLinenumberEnd: 931
    functionName: jsf_ToProp_ex
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 5
    functionsReached:
    - JS_IsNumber
    - gf_filter_get_sep
    - gf_stream_type_by_name
    - JS_IsInteger
    - memset
    - JS_ToFloat64
    - JS_FreeCString
    - JS_ToCString
    - JS_IsString
    - gf_strdup
    - memcpy
    - JS_IsUndefined
    - JS_ToBool
    - JS_ToInt64
    - gf_codecid_parse
    - JS_IsObject
    - JS_IsBool
    - gf_props_parse_value
    - JS_IsNull
    - JS_GetPropertyUint32
    - GF_LOG
    - gf_audio_fmt_get_layout_from_name
    - JS_ToInt32
    - JS_GetPropertyStr
    - gf_malloc
    - strlen
    - gf_props_4cc_get_type
    - JS_IsArray
    - JS_FreeValue
    - JS_ToIndex
    - JS_GetArrayBuffer
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jsf_ToProp_ex(GF_Filter *filter, JSContext *ctx, JSValue value,
      u32 p4cc, GF_PropertyValue *prop, u32 prop_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsf_ToProp_ex
      Src: /src/gpac/src/filters/jsfilter.c:935,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - filter
    - ctx
    - value
    - p4cc
    - prop
    argTypes:
    - GF_Filter*
    - JSContext*
    - JSValue
    - u32
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 937
      start: 933
    functionDepth: 3
    functionLinenumber: 933
    functionLinenumberEnd: 937
    functionName: jsf_ToProp
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - jsf_ToProp_ex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jsf_ToProp(GF_Filter *filter, JSContext *ctx, JSValue value,
      u32 p4cc, GF_PropertyValue *prop)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:942,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:944,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:947,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:947,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:947,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:948,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:949,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:955,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:956,1
    - Dst: gf_filter_set_max_extra_input_pids
      Src: /src/gpac/src/filters/jsfilter.c:957,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:961,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:962,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:962,1
    - Dst: gf_filter_set_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:963,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:966,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:967,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:967,1
    - Dst: gf_filter_set_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:968,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:971,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:972,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:972,1
    - Dst: gf_filter_set_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:973,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:976,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:977,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:977,1
    - Dst: gf_filter_set_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:978,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:981,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:982,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:982,1
    - Dst: gf_filter_set_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:983,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:986,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:987,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:987,1
    - Dst: gf_filter_set_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:988,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:991,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:992,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:992,1
    - Dst: gf_filter_set_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:993,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:996,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:997,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:997,1
    - Dst: gf_filter_set_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:998,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1003,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:1004,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/jsfilter.c:1006,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1009,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:1013,1
    - Dst: gf_filter_require_source_id
      Src: /src/gpac/src/filters/jsfilter.c:1014,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 79
    argCount: 4
    argNames:
    - ctx
    - this_val
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 938
    functionDepth: 1
    functionLinenumber: 938
    functionLinenumberEnd: 1018
    functionName: jsf_filter_prop_set
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_get_session_caps
    - JS_DupValue
    - JS_ToCString
    - gf_strdup
    - JS_IsNull
    - JS_IsFunction
    - JS_GetOpaque
    - JS_FreeValue
    - JS_IsUndefined
    - JS_ToBool
    - gf_filter_require_source_id
    - JS_ToInt32
    - gf_filter_set_session_caps
    - GF_JS_EXCEPTION
    - gf_filter_set_max_extra_input_pids
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_prop_set(JSContext *ctx, JSValueConst this_val,
      JSValueConst value, int magic)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1029,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1031,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:1034,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1038,1
    - Dst: gf_filter_get_max_extra_input_pids
      Src: /src/gpac/src/filters/jsfilter.c:1038,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:1040,1
    - Dst: gf_filter_block_enabled
      Src: /src/gpac/src/filters/jsfilter.c:1040,1
    - Dst: gf_filter_get_output_buffer_max
      Src: /src/gpac/src/filters/jsfilter.c:1042,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1043,1
    - Dst: gf_filter_get_output_buffer_max
      Src: /src/gpac/src/filters/jsfilter.c:1045,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1046,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/jsfilter.c:1050,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:1051,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/jsfilter.c:1054,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:1055,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/jsfilter.c:1058,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:1059,1
    - Dst: gf_filter_get_src_args
      Src: /src/gpac/src/filters/jsfilter.c:1062,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:1063,1
    - Dst: gf_filter_get_dst_args
      Src: /src/gpac/src/filters/jsfilter.c:1065,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:1066,1
    - Dst: gf_filter_get_dst_name
      Src: /src/gpac/src/filters/jsfilter.c:1068,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:1069,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:1070,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:1073,1
    - Dst: gf_filter_all_sinks_done
      Src: /src/gpac/src/filters/jsfilter.c:1073,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:1075,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/jsfilter.c:1075,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:1078,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1079,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:1081,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1082,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:1084,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1085,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:1087,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1088,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:1090,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1091,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:1093,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1094,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:1096,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1097,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:1099,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1100,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1103,1
    - Dst: gf_filter_get_num_events_queued
      Src: /src/gpac/src/filters/jsfilter.c:1103,1
    - Dst: gf_filter_get_clock_hint
      Src: /src/gpac/src/filters/jsfilter.c:1105,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:1106,1
    - Dst: gf_filter_get_clock_hint
      Src: /src/gpac/src/filters/jsfilter.c:1110,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:1114,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:1116,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/src/filters/jsfilter.c:1116,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:1118,1
    - Dst: jsf_get_script_filename
      Src: /src/gpac/src/filters/jsfilter.c:1123,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/jsfilter.c:1125,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/jsfilter.c:1126,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:1128,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:1132,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 101
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1139
      start: 1020
    functionDepth: 2
    functionLinenumber: 1020
    functionLinenumberEnd: 1139
    functionName: jsf_filter_prop_get
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_connections_pending
    - gf_filter_get_sep
    - JS_NewInt64
    - gf_filter_get_clock_hint
    - gf_filter_get_max_extra_input_pids
    - JS_DupValue
    - strrchr
    - JS_NewFloat64
    - JS_GetOpaque
    - JS_NewString
    - gf_filter_block_enabled
    - gf_filter_get_dst_name
    - gf_filter_get_num_events_queued
    - JS_NewInt32
    - gf_filter_get_output_buffer_max
    - gf_filter_get_src_args
    - gf_filter_all_sinks_done
    - gf_filter_get_session_caps
    - JS_NewBool
    - gf_filter_reporting_enabled
    - GF_JS_EXCEPTION
    - jsf_get_script_filename
    - gf_filter_get_dst_args
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_prop_get(JSContext *ctx, JSValueConst this_val,
      int magic)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1151,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1152,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:1154,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:1155,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1155,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1156,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1157,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/jsfilter.c:1159,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:1165,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:1166,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1166,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1167,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1169,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1170,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:1173,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:1174,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:1175,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1176,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1181,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1182,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1183,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:1187,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:1188,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1188,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1189,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:1191,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:1192,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1192,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1193,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:1195,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:1196,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1197,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/jsfilter.c:1198,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/jsfilter.c:1199,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/jsfilter.c:1200,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1202,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1204,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/jsfilter.c:1206,1
    - Dst: memset
      Src: /src/gpac/src/filters/jsfilter.c:1207,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/jsfilter.c:1208,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/jsfilter.c:1209,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/jsfilter.c:1210,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/jsfilter.c:1211,1
    - Dst: gf_filter_define_args
      Src: /src/gpac/src/filters/jsfilter.c:1218,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1220,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1221,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1222,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1223,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 71
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1225
      start: 1141
    functionDepth: 1
    functionLinenumber: 1141
    functionLinenumberEnd: 1225
    functionName: jsf_filter_set_arg
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - gf_strdup
    - JS_GetOpaque
    - JS_FreeValue
    - JS_IsUndefined
    - memset
    - strcmp
    - JS_GetPropertyStr
    - JS_ToInt32
    - gf_filter_define_args
    - GF_JS_EXCEPTION
    - JS_FreeCString
    - gf_realloc
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_set_arg(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1238,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1239,1
    - Dst: memset
      Src: /src/gpac/src/filters/jsfilter.c:1242,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:1248,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:1249,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1249,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1250,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1251,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filters/jsfilter.c:1252,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1253,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:1255,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/jsfilter.c:1256,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:1259,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:1260,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1260,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1261,1
    - Dst: gf_stream_type_by_name
      Src: /src/gpac/src/filters/jsfilter.c:1265,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filters/jsfilter.c:1268,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/jsfilter.c:1270,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/jsfilter.c:1270,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1272,1
    - Dst: GETB
      Src: /src/gpac/src/filters/jsfilter.c:1279,1
    - Dst: GETB
      Src: /src/gpac/src/filters/jsfilter.c:1280,1
    - Dst: GETB
      Src: /src/gpac/src/filters/jsfilter.c:1281,1
    - Dst: GETB
      Src: /src/gpac/src/filters/jsfilter.c:1282,1
    - Dst: GETB
      Src: /src/gpac/src/filters/jsfilter.c:1283,1
    - Dst: GETB
      Src: /src/gpac/src/filters/jsfilter.c:1284,1
    - Dst: gf_filter_push_caps
      Src: /src/gpac/src/filters/jsfilter.c:1310,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1311,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/jsfilter.c:1315,1
    - Dst: memset
      Src: /src/gpac/src/filters/jsfilter.c:1316,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/jsfilter.c:1324,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 74
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1326
      start: 1228
    functionDepth: 2
    functionLinenumber: 1228
    functionLinenumberEnd: 1326
    functionName: jsf_filter_set_cap
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_override_caps
    - gf_filter_get_sep
    - gf_stream_type_by_name
    - memset
    - gf_filter_push_caps
    - JS_FreeCString
    - gf_realloc
    - JS_ToCString
    - JS_GetOpaque
    - JS_IsUndefined
    - gf_codecid_parse
    - gf_props_parse_value
    - gf_props_get_id
    - JS_GetPropertyStr
    - GETB
    - gf_props_4cc_get_type
    - js_throw_err
    - JS_FreeValue
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_set_cap(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _v
    - ','
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1279
      start: 1274
    functionDepth: 0
    functionLinenumber: 1274
    functionLinenumberEnd: 1279
    functionName: GETB
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GETB(_v, _n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1330,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1331,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1332,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1333,1
    - Dst: gf_filter_set_description
      Src: /src/gpac/src/filters/jsfilter.c:1334,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1335,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1337
      start: 1328
    functionDepth: 1
    functionLinenumber: 1328
    functionLinenumberEnd: 1337
    functionName: jsf_filter_set_desc
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_set_description
    - JS_ToCString
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_set_desc(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1341,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1342,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:1344,1
    - Dst: gf_filter_set_class_hint
      Src: /src/gpac/src/filters/jsfilter.c:1345,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1347
      start: 1339
    functionDepth: 1
    functionLinenumber: 1339
    functionLinenumberEnd: 1347
    functionName: jsf_filter_set_class_hint
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - gf_filter_set_class_hint
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_set_class_hint(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1351,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1352,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1353,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1354,1
    - Dst: gf_filter_set_version
      Src: /src/gpac/src/filters/jsfilter.c:1355,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1356,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1358
      start: 1349
    functionDepth: 1
    functionLinenumber: 1349
    functionLinenumberEnd: 1358
    functionName: jsf_filter_set_version
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_GetOpaque
    - gf_filter_set_version
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_set_version(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1362,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1363,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1364,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1365,1
    - Dst: gf_filter_set_author
      Src: /src/gpac/src/filters/jsfilter.c:1366,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1367,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1369
      start: 1360
    functionDepth: 1
    functionLinenumber: 1360
    functionLinenumberEnd: 1369
    functionName: jsf_filter_set_author
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_GetOpaque
    - gf_filter_set_author
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_set_author(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1374,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1375,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1376,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1377,1
    - Dst: gf_filter_set_help
      Src: /src/gpac/src/filters/jsfilter.c:1378,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1379,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1381
      start: 1372
    functionDepth: 1
    functionLinenumber: 1372
    functionLinenumberEnd: 1381
    functionName: jsf_filter_set_help
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - gf_filter_set_help
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_set_help(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1385,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1386,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:1387,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1391,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1392,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/jsfilter.c:1393,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1394,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/jsfilter.c:1395,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/jsfilter.c:1397,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:1398,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:1398,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1399,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1402
      start: 1383
    functionDepth: 1
    functionLinenumber: 1383
    functionLinenumberEnd: 1402
    functionName: jsf_filter_set_name
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - gf_strdup
    - JS_GetGlobalObject
    - JS_GetOpaque
    - JS_FreeValue
    - JS_NewString
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - JS_FreeCString
    - gf_filter_set_name
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_set_name(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1408,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1409,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/jsfilter.c:1410,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1411,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:1414,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:1416,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:1417,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:1420,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:1422,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1423,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/jsfilter.c:1424,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1426
      start: 1405
    functionDepth: 2
    functionLinenumber: 1405
    functionLinenumberEnd: 1426
    functionName: jsf_filter_new_pid
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_DupValue
    - js_throw_err
    - GF_SAFEALLOC
    - JS_GetOpaque
    - JS_SetOpaque
    - gf_list_add
    - gf_filter_pid_set_udta
    - GF_JS_EXCEPTION
    - gf_filter_pid_new
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_new_pid(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1431,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1432,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1433,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1434,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1435,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:1437,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/filters/jsfilter.c:1441,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/filters/jsfilter.c:1443,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1445
      start: 1428
    functionDepth: 1
    functionLinenumber: 1428
    functionLinenumberEnd: 1445
    functionName: jsf_filter_send_event
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - gf_filter_send_event
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_send_event(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1454,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1455,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1456,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1457,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1458,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:1461,1
    - Dst: gf_filter_get_info_str
      Src: /src/gpac/src/filters/jsfilter.c:1462,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1463,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filters/jsfilter.c:1465,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:1466,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1466,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filters/jsfilter.c:1468,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1469,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:1471,1
    - Dst: gf_filter_get_info
      Src: /src/gpac/src/filters/jsfilter.c:1472,1
    - Dst: jsf_NewPropTranslate
      Src: /src/gpac/src/filters/jsfilter.c:1474,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/jsfilter.c:1476,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1478
      start: 1447
    functionDepth: 7
    functionLinenumber: 1447
    functionLinenumberEnd: 1478
    functionName: jsf_filter_get_info
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - gf_props_get_id
    - js_throw_err
    - JS_GetOpaque
    - JS_ToBool
    - JS_NewInt32
    - gf_filter_get_info_str
    - jsf_NewProp
    - gf_filter_get_info
    - gf_filter_release_property
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - jsf_NewPropTranslate
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_get_info(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1486,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1487,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1488,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1489,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:1490,1
    - Dst: gf_filter_is_supported_mime
      Src: /src/gpac/src/filters/jsfilter.c:1490,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1491,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1493
      start: 1482
    functionDepth: 1
    functionLinenumber: 1482
    functionLinenumberEnd: 1493
    functionName: jsf_filter_is_supported_mime
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_GetOpaque
    - gf_filter_is_supported_mime
    - JS_NewBool
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_is_supported_mime(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1500,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1501,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1502,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1503,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1505,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1507,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1508,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:1511,1
    - Dst: gf_filter_is_supported_source
      Src: /src/gpac/src/filters/jsfilter.c:1511,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1512,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1513,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1515
      start: 1495
    functionDepth: 1
    functionLinenumber: 1495
    functionLinenumberEnd: 1515
    functionName: jsf_filter_is_supported_source
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - gf_filter_is_supported_source
    - JS_GetOpaque
    - JS_NewBool
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_is_supported_source(JSContext *ctx, JSValueConst
      this_val, int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1521,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1522,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1524,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:1526,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/jsfilter.c:1527,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1528,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1530
      start: 1517
    functionDepth: 1
    functionLinenumber: 1517
    functionLinenumberEnd: 1530
    functionName: jsf_filter_update_status
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - gf_filter_update_status
    - JS_GetOpaque
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_update_status(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1535,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1536,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:1539,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1540,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/jsfilter.c:1542,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/jsfilter.c:1544,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1547
      start: 1532
    functionDepth: 1
    functionLinenumber: 1532
    functionLinenumberEnd: 1547
    functionName: jsf_filter_reschedule_in
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_filter_ask_rt_reschedule
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - gf_filter_post_process_task
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_reschedule_in(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:1561,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:1563,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:1564,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:1566,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:1569,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:1570,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/jsfilter.c:1571,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:1573,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:1574,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1576,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:1578,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filters/jsfilter.c:1579,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:1585,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1586,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1588,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:1589,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 3
    argNames:
    - filter
    - callback
    - reschedule_ms
    argTypes:
    - GF_Filter*
    - void*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1591
      start: 1556
    functionDepth: 6
    functionLinenumber: 1556
    functionLinenumberEnd: 1591
    functionName: jsf_task_exec
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_Call
    - JS_IsException
    - GF_LOG
    - JS_FreeValue
    - JS_IsUndefined
    - JS_IsInteger
    - gf_js_lock
    - JS_ToInt32
    - js_dump_error
    - js_std_loop
    linkageType: ''
    returnType: Bool
    signature: Bool jsf_task_exec(GF_Filter *filter, void *callback, u32 *reschedule_ms)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1595,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1596,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:1598,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1599,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filters/jsfilter.c:1600,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1601,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:1603,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:1605,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:1607,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:1610,1
    - Dst: gf_filter_post_task
      Src: /src/gpac/src/filters/jsfilter.c:1612,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1614
      start: 1592
    functionDepth: 2
    functionLinenumber: 1592
    functionLinenumberEnd: 1614
    functionName: jsf_filter_post_task
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - js_throw_err
    - GF_SAFEALLOC
    - JS_GetOpaque
    - JS_IsFunction
    - gf_filter_post_task
    - GF_JS_EXCEPTION
    - JS_IsObject
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_post_task(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1620,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1621,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:1622,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1623,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:1627,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1628,1
    - Dst: gf_filter_notification_failure
      Src: /src/gpac/src/filters/jsfilter.c:1630,1
    - Dst: gf_filter_notification_failure
      Src: /src/gpac/src/filters/jsfilter.c:1632,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/jsfilter.c:1634,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 15
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1636
      start: 1616
    functionDepth: 1
    functionLinenumber: 1616
    functionLinenumberEnd: 1636
    functionName: jsf_filter_notify_failure
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_filter_notification_failure
    - JS_ToInt32
    - gf_filter_setup_failure
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_notify_failure(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1642,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1643,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:1644,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1645,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:1648,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1649,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:1653,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1654,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:1655,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1656,1
    - Dst: gf_filter_hint_single_clock
      Src: /src/gpac/src/filters/jsfilter.c:1658,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1660
      start: 1638
    functionDepth: 1
    functionLinenumber: 1638
    functionLinenumberEnd: 1660
    functionName: jsf_filter_hint_clock
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_ToInt64
    - gf_filter_hint_single_clock
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_hint_clock(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1669,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1670,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1671,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1673,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1674,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1675,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:1676,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1677,1
    - Dst: gf_filter_send_update
      Src: /src/gpac/src/filters/jsfilter.c:1681,1
    - Dst: gf_filter_send_update
      Src: /src/gpac/src/filters/jsfilter.c:1683,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1686,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1687,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1688,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1690
      start: 1662
    functionDepth: 1
    functionLinenumber: 1662
    functionLinenumberEnd: 1690
    functionName: jsf_filter_send_update
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_GetOpaque
    - gf_filter_send_update
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_send_update(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1699,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1700,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1701,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1702,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1705,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1707,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1708,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:1711,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:1714,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1716,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1717,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:1718,1
    - Dst: gf_filter_connect_source
      Src: /src/gpac/src/filters/jsfilter.c:1723,1
    - Dst: gf_filter_connect_destination
      Src: /src/gpac/src/filters/jsfilter.c:1725,1
    - Dst: gf_filter_load_filter
      Src: /src/gpac/src/filters/jsfilter.c:1727,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1729,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1730,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:1732,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:1733,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:1737,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1738,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 42
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - mode
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - GF_JSFilterMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1740
      start: 1692
    functionDepth: 2
    functionLinenumber: 1692
    functionLinenumberEnd: 1740
    functionName: jsf_filter_load_filter
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - JS_NewObjectClass
    - js_throw_err
    - GF_SAFEALLOC
    - JS_GetOpaque
    - JS_SetOpaque
    - gf_filter_connect_destination
    - JS_ToBool
    - gf_filter_load_filter
    - GF_JS_EXCEPTION
    - gf_filter_connect_source
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_load_filter(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv, GF_JSFilterMode mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsf_filter_load_filter
      Src: /src/gpac/src/filters/jsfilter.c:1744,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1746
      start: 1742
    functionDepth: 3
    functionLinenumber: 1742
    functionLinenumberEnd: 1746
    functionName: jsf_filter_add_source
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - jsf_filter_load_filter
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_add_source(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsf_filter_load_filter
      Src: /src/gpac/src/filters/jsfilter.c:1749,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1750
      start: 1747
    functionDepth: 3
    functionLinenumber: 1747
    functionLinenumberEnd: 1750
    functionName: jsf_filter_add_dest
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - jsf_filter_load_filter
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_add_dest(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsf_filter_load_filter
      Src: /src/gpac/src/filters/jsfilter.c:1753,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1754
      start: 1751
    functionDepth: 3
    functionLinenumber: 1751
    functionLinenumberEnd: 1754
    functionName: jsf_filter_add_filter
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - jsf_filter_load_filter
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_add_filter(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1758,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1760,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:1761,1
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filters/jsfilter.c:1762,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1764
      start: 1756
    functionDepth: 1
    functionLinenumber: 1756
    functionLinenumberEnd: 1764
    functionName: jsf_filter_lock
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_filter_lock
    - GF_JS_EXCEPTION
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_lock(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1767,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1769,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:1770,1
    - Dst: gf_filter_lock_all
      Src: /src/gpac/src/filters/jsfilter.c:1771,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1773
      start: 1765
    functionDepth: 1
    functionLinenumber: 1765
    functionLinenumberEnd: 1773
    functionName: jsf_filter_lock_all
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_filter_lock_all
    - GF_JS_EXCEPTION
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_lock_all(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1776,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1777,1
    - Dst: gf_filter_make_sticky
      Src: /src/gpac/src/filters/jsfilter.c:1778,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1780
      start: 1774
    functionDepth: 1
    functionLinenumber: 1774
    functionLinenumberEnd: 1780
    functionName: jsf_filter_make_sticky
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_filter_make_sticky
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_make_sticky(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1783,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1784,1
    - Dst: gf_filter_prevent_blocking
      Src: /src/gpac/src/filters/jsfilter.c:1785,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:1785,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1787
      start: 1781
    functionDepth: 1
    functionLinenumber: 1781
    functionLinenumberEnd: 1787
    functionName: jsf_filter_prevent_blocking
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - gf_filter_prevent_blocking
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_prevent_blocking(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1790,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1791,1
    - Dst: gf_filter_block_eos
      Src: /src/gpac/src/filters/jsfilter.c:1792,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:1792,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1794
      start: 1788
    functionDepth: 1
    functionLinenumber: 1788
    functionLinenumberEnd: 1794
    functionName: jsf_filter_block_eos
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - gf_filter_block_eos
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_block_eos(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1799,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1800,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/jsfilter.c:1801,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1803
      start: 1797
    functionDepth: 1
    functionLinenumber: 1797
    functionLinenumberEnd: 1803
    functionName: jsf_filter_abort
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - gf_filter_abort
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_abort(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1812,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1813,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1814,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1818,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1822,1
    - Dst: jsff_get_filter
      Src: /src/gpac/src/filters/jsfilter.c:1826,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1829,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1833,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1835,1
    - Dst: gf_filter_set_source_restricted
      Src: /src/gpac/src/filters/jsfilter.c:1841,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/jsfilter.c:1843,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1845,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:1846,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 31
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - use_restricted
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1848
      start: 1808
    functionDepth: 2
    functionLinenumber: 1808
    functionLinenumberEnd: 1848
    functionName: jsf_filter_set_source_internal
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - gf_filter_set_source
    - js_throw_err
    - JS_GetOpaque
    - gf_filter_set_source_restricted
    - GF_JS_EXCEPTION
    - jsff_get_filter
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_set_source_internal(JSContext *ctx, JSValueConst
      this_val, int argc, JSValueConst *argv, Bool use_restricted)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsf_filter_set_source_internal
      Src: /src/gpac/src/filters/jsfilter.c:1852,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1853
      start: 1850
    functionDepth: 3
    functionLinenumber: 1850
    functionLinenumberEnd: 1853
    functionName: jsf_filter_set_source
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - jsf_filter_set_source_internal
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_set_source(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsf_filter_set_source_internal
      Src: /src/gpac/src/filters/jsfilter.c:1857,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1858
      start: 1855
    functionDepth: 3
    functionLinenumber: 1855
    functionLinenumberEnd: 1858
    functionName: jsf_filter_set_source_restricted
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - jsf_filter_set_source_internal
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_set_source_restricted(JSContext *ctx, JSValueConst
      this_val, int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1862,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1863,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1864,1
    - Dst: gf_filter_reset_source
      Src: /src/gpac/src/filters/jsfilter.c:1865,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1867
      start: 1860
    functionDepth: 1
    functionLinenumber: 1860
    functionLinenumberEnd: 1867
    functionName: jsf_filter_reset_source
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - gf_filter_reset_source
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_reset_source(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1871,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1872,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1873,1
    - Dst: gf_filter_set_blocking
      Src: /src/gpac/src/filters/jsfilter.c:1874,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:1874,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1876
      start: 1869
    functionDepth: 1
    functionLinenumber: 1869
    functionLinenumberEnd: 1876
    functionName: jsf_filter_set_blocking
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_filter_set_blocking
    - GF_JS_EXCEPTION
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_set_blocking(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1956,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1957,1
    - Dst: gf_filter_remove_src
      Src: /src/gpac/src/filters/jsfilter.c:1959,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1961
      start: 1954
    functionDepth: 1
    functionLinenumber: 1954
    functionLinenumberEnd: 1961
    functionName: jsf_filter_remove
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - gf_filter_remove_src
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_remove(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1968,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1969,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:1970,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filters/jsfilter.c:1970,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1971,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1972,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:1978,1
    - Dst: gf_filter_has_pid_connection_pending
      Src: /src/gpac/src/filters/jsfilter.c:1978,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1979
      start: 1965
    functionDepth: 1
    functionLinenumber: 1965
    functionLinenumberEnd: 1979
    functionName: jsf_filter_has_pid_connections_pending
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_IsNull
    - JS_GetOpaque
    - gf_filter_has_pid_connection_pending
    - JS_NewBool
    - GF_JS_EXCEPTION
    - JS_IsObject
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_has_pid_connections_pending(JSContext *ctx, JSValueConst
      this_val, int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:1987,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1989,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:1991,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/filters/jsfilter.c:1992,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:1992,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1994,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1995,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:1996,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filters/jsfilter.c:1997,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - f
    - on_setup_error_udta
    - e
    argTypes:
    - GF_Filter*
    - void*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1999
      start: 1981
    functionDepth: 2
    functionLinenumber: 1981
    functionLinenumberEnd: 1999
    functionName: jsf_on_setup_error
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_FreeValue
    - JS_ToBool
    - gf_js_lock
    - JS_NewInt32
    - JS_IsBool
    - js_std_loop
    linkageType: ''
    returnType: Bool
    signature: Bool jsf_on_setup_error(GF_Filter *f, void *on_setup_error_udta, GF_Err
      e)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2011,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2012,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2016,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filters/jsfilter.c:2016,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2018,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2020,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2023
      start: 2009
    functionDepth: 1
    functionLinenumber: 2009
    functionLinenumberEnd: 2023
    functionName: jsf_filter_inst_prop_get
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_filter_get_name
    - GF_JS_EXCEPTION
    - JS_NewString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_inst_prop_get(JSContext *ctx, JSValueConst this_val,
      int magic)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2028,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2029,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:2033,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:2033,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:2033,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:2034,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:2034,1
    - Dst: gf_filter_set_setup_failure_callback
      Src: /src/gpac/src/filters/jsfilter.c:2036,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2038,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2039,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:2044,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:2045,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/jsfilter.c:2046,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2047,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 22
    argCount: 4
    argNames:
    - ctx
    - this_val
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2051
      start: 2025
    functionDepth: 1
    functionLinenumber: 2025
    functionLinenumberEnd: 2051
    functionName: jsf_filter_inst_prop_set
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - JS_DupValue
    - gf_strdup
    - JS_IsNull
    - JS_IsFunction
    - JS_GetOpaque
    - JS_FreeValue
    - JS_IsUndefined
    - gf_filter_set_setup_failure_callback
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_inst_prop_set(JSContext *ctx, JSValueConst this_val,
      JSValueConst value, int magic)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2057,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2058,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:2059,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2060,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2061,1
    - Dst: gf_filter_get_arg_str
      Src: /src/gpac/src/filters/jsfilter.c:2063,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2064,1
    - Dst: gf_filter_get_arg
      Src: /src/gpac/src/filters/jsfilter.c:2067,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filters/jsfilter.c:2068,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2072,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2074
      start: 2053
    functionDepth: 4
    functionLinenumber: 2053
    functionLinenumberEnd: 2074
    functionName: jsf_filter_inst_get_arg
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - gf_filter_get_arg_str
    - JS_GetOpaque
    - gf_filter_get_arg
    - JS_NewString
    - JS_ToBool
    - jsf_NewProp
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_inst_get_arg(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2079,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2080,1
    - Dst: gf_filter_disable_probe
      Src: /src/gpac/src/filters/jsfilter.c:2081,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2083
      start: 2077
    functionDepth: 1
    functionLinenumber: 2077
    functionLinenumberEnd: 2083
    functionName: jsf_filter_inst_disable_probe
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_filter_disable_probe
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_inst_disable_probe(JSContext *ctx, JSValueConst
      this_val, int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2086,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2087,1
    - Dst: gf_filter_disable_inputs
      Src: /src/gpac/src/filters/jsfilter.c:2088,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2090
      start: 2084
    functionDepth: 1
    functionLinenumber: 2084
    functionLinenumberEnd: 2090
    functionName: jsf_filter_inst_disable_inputs
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_filter_disable_inputs
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_filter_inst_disable_inputs(JSContext *ctx, JSValueConst
      this_val, int argc, JSValueConst *argv)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2116,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2117,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:2120,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/jsfilter.c:2121,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2124,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/jsfilter.c:2125,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:2128,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2129,1
    - Dst: gf_filter_pid_set_max_buffer
      Src: /src/gpac/src/filters/jsfilter.c:2130,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2133,1
    - Dst: gf_filter_pid_set_loose_connect
      Src: /src/gpac/src/filters/jsfilter.c:2134,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/jsfilter.c:2137,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2137,1
    - Dst: gf_filter_pid_set_clock_mode
      Src: /src/gpac/src/filters/jsfilter.c:2140,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2140,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/jsfilter.c:2143,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2143,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2146,1
    - Dst: gf_filter_pid_require_source_id
      Src: /src/gpac/src/filters/jsfilter.c:2147,1
    - Dst: gf_filter_pid_recompute_dts
      Src: /src/gpac/src/filters/jsfilter.c:2150,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2150,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2155,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2156,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 43
    argCount: 4
    argNames:
    - ctx
    - this_val
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2158
      start: 2111
    functionDepth: 2
    functionLinenumber: 2111
    functionLinenumberEnd: 2158
    functionName: jsf_pid_set_prop
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - gf_filter_pid_set_clock_mode
    - gf_filter_pid_require_source_id
    - gf_filter_pid_set_discard
    - js_throw_err
    - JS_GetOpaque
    - gf_filter_pid_set_name
    - gf_filter_pid_set_max_buffer
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_set_eos
    - JS_ToBool
    - gf_filter_pid_set_loose_connect
    - JS_ToInt32
    - gf_filter_pid_recompute_dts
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_set_prop(JSContext *ctx, JSValueConst this_val, JSValueConst
      value, int magic)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2164,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2165,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2168,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/jsfilter.c:2168,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2170,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/jsfilter.c:2170,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2172,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/src/filters/jsfilter.c:2172,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2174,1
    - Dst: gf_filter_pid_eos_received
      Src: /src/gpac/src/filters/jsfilter.c:2174,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2176,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/jsfilter.c:2176,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2178,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/jsfilter.c:2178,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2180,1
    - Dst: gf_filter_pid_is_sparse
      Src: /src/gpac/src/filters/jsfilter.c:2180,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2182,1
    - Dst: gf_filter_pid_get_filter_name
      Src: /src/gpac/src/filters/jsfilter.c:2182,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2184,1
    - Dst: gf_filter_pid_get_source_filter_name
      Src: /src/gpac/src/filters/jsfilter.c:2184,1
    - Dst: gf_filter_pid_get_args
      Src: /src/gpac/src/filters/jsfilter.c:2186,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2187,1
    - Dst: gf_filter_pid_orig_src_args
      Src: /src/gpac/src/filters/jsfilter.c:2189,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2190,1
    - Dst: gf_filter_pid_orig_src_args
      Src: /src/gpac/src/filters/jsfilter.c:2192,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2193,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2195,1
    - Dst: gf_filter_pid_get_max_buffer
      Src: /src/gpac/src/filters/jsfilter.c:2195,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:2197,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/filters/jsfilter.c:2197,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/filters/jsfilter.c:2199,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2200,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2202,1
    - Dst: gf_filter_pid_first_packet_is_empty
      Src: /src/gpac/src/filters/jsfilter.c:2202,1
    - Dst: gf_filter_pid_get_first_packet_cts
      Src: /src/gpac/src/filters/jsfilter.c:2204,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:2205,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2209,1
    - Dst: gf_filter_pid_get_packet_count
      Src: /src/gpac/src/filters/jsfilter.c:2209,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2211,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/filters/jsfilter.c:2211,1
    - Dst: gf_filter_pid_get_source
      Src: /src/gpac/src/filters/jsfilter.c:2213,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2215,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:2216,1
    - Dst: gf_filter_pid_get_destination
      Src: /src/gpac/src/filters/jsfilter.c:2221,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2223,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:2224,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2229,1
    - Dst: gf_filter_pid_get_min_pck_duration
      Src: /src/gpac/src/filters/jsfilter.c:2229,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2231,1
    - Dst: gf_filter_pid_is_playing
      Src: /src/gpac/src/filters/jsfilter.c:2231,1
    - Dst: gf_filter_pid_get_next_ts
      Src: /src/gpac/src/filters/jsfilter.c:2233,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:2235,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2238,1
    - Dst: gf_filter_pid_has_decoder
      Src: /src/gpac/src/filters/jsfilter.c:2238,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 75
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2241
      start: 2160
    functionDepth: 1
    functionLinenumber: 2160
    functionLinenumberEnd: 2241
    functionName: jsf_pid_get_prop
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_pid_eos_received
    - gf_filter_pid_get_first_packet_cts
    - JS_NewInt64
    - gf_filter_pid_orig_src_args
    - gf_filter_pid_get_next_ts
    - gf_filter_pid_query_buffer_duration
    - gf_filter_pid_get_name
    - JS_GetOpaque
    - JS_NewString
    - gf_filter_pid_has_seen_eos
    - JS_NewInt32
    - gf_filter_pid_get_filter_name
    - gf_filter_pid_get_timescale
    - gf_filter_pid_has_decoder
    - gf_filter_pid_get_packet_count
    - gf_filter_pid_get_args
    - gf_filter_pid_get_source
    - gf_filter_pid_would_block
    - gf_filter_pid_get_min_pck_duration
    - gf_filter_pid_is_playing
    - gf_filter_pid_first_packet_is_empty
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_source_filter_name
    - gf_filter_pid_get_max_buffer
    - JS_NewBool
    - gf_filter_pid_is_flush_eos
    - GF_JS_EXCEPTION
    - gf_filter_pid_is_sparse
    - gf_filter_pid_get_destination
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_get_prop(JSContext *ctx, JSValueConst this_val, int
      magic)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2245,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2246,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2247,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2248,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/jsfilter.c:2252,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/jsfilter.c:2257,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2259
      start: 2243
    functionDepth: 1
    functionLinenumber: 2243
    functionLinenumberEnd: 2259
    functionName: jsf_pid_send_event
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_filter_pid_init_play_event
    - GF_JS_EXCEPTION
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_send_event(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2268,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2269,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:2270,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2271,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2273,1
    - Dst: gf_filter_pid_enum_info
      Src: /src/gpac/src/filters/jsfilter.c:2274,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filters/jsfilter.c:2276,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filters/jsfilter.c:2279,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2280,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:2282,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2283,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2283,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2284,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2284,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2285,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filters/jsfilter.c:2285,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2287
      start: 2261
    functionDepth: 4
    functionLinenumber: 2261
    functionLinenumberEnd: 2287
    functionName: jsf_pid_enum_properties
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_enum_properties
    - gf_props_4cc_get_name
    - JS_GetOpaque
    - gf_filter_pid_enum_info
    - JS_NewString
    - JS_ToBool
    - JS_ToInt32
    - JS_NewInt32
    - jsf_NewProp
    - JS_NewObject
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_enum_properties(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2295,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2296,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:2297,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2298,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2299,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/filters/jsfilter.c:2301,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/jsfilter.c:2303,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2305,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filters/jsfilter.c:2307,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2308,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2308,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filters/jsfilter.c:2310,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2311,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2312,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/jsfilter.c:2314,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/jsfilter.c:2316,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/jsfilter.c:2320,1
    - Dst: gf_prop_matrix_decompose
      Src: /src/gpac/src/filters/jsfilter.c:2324,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2325,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2326,1
    - Dst: jsf_NewPropTranslate
      Src: /src/gpac/src/filters/jsfilter.c:2333,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/jsfilter.c:2335,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 43
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - is_info
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2337
      start: 2289
    functionDepth: 7
    functionLinenumber: 2289
    functionLinenumberEnd: 2337
    functionName: jsf_pid_get_property_ex
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - gf_prop_matrix_decompose
    - gf_filter_pid_get_property_str
    - gf_props_get_id
    - gf_filter_pid_get_info
    - gf_filter_pid_get_property
    - gf_filter_pid_get_info_str
    - JS_GetOpaque
    - JS_ToBool
    - JS_NewInt32
    - jsf_NewProp
    - gf_filter_release_property
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - jsf_NewPropTranslate
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_get_property_ex(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv, Bool is_info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsf_pid_get_property_ex
      Src: /src/gpac/src/filters/jsfilter.c:2340,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2341
      start: 2338
    functionDepth: 8
    functionLinenumber: 2338
    functionLinenumberEnd: 2341
    functionName: jsf_pid_get_property
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - jsf_pid_get_property_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_get_property(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsf_pid_get_property_ex
      Src: /src/gpac/src/filters/jsfilter.c:2344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2345
      start: 2342
    functionDepth: 8
    functionLinenumber: 2342
    functionLinenumberEnd: 2345
    functionName: jsf_pid_get_info
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - jsf_pid_get_property_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_get_info(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2353,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2354,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/jsfilter.c:2356,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/jsfilter.c:2358,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/jsfilter.c:2363,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2364,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:2367,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/jsfilter.c:2368,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:2370,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2371,1
    - Dst: memset
      Src: /src/gpac/src/filters/jsfilter.c:2373,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2376,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2381,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2383
      start: 2348
    functionDepth: 3
    functionLinenumber: 2348
    functionLinenumberEnd: 2383
    functionName: jsf_pid_get_packet
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - gf_assert
    - JS_DupValue
    - gf_list_pop_back
    - js_throw_err
    - GF_SAFEALLOC
    - JS_GetOpaque
    - JS_SetOpaque
    - js_throw_err_msg
    - memset
    - GF_JS_EXCEPTION
    - gf_filter_pid_get_packet
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_get_packet(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2387,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2388,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/jsfilter.c:2390,1
    - Dst: gf_filter_pid_get_packet_count
      Src: /src/gpac/src/filters/jsfilter.c:2393,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/jsfilter.c:2394,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2402,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/jsfilter.c:2404,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2406
      start: 2384
    functionDepth: 2
    functionLinenumber: 2384
    functionLinenumberEnd: 2406
    functionName: jsf_pid_drop_packet
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_packet_count
    - gf_filter_pid_drop_packet
    - JS_GetOpaque
    - JS_FreeValue
    - js_throw_err_msg
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_drop_packet(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2410,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2411,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2412,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2413,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2414,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2415,1
    - Dst: gf_filter_pid_is_filter_in_parents
      Src: /src/gpac/src/filters/jsfilter.c:2415,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2416
      start: 2408
    functionDepth: 1
    functionLinenumber: 2408
    functionLinenumberEnd: 2416
    functionName: jsf_pid_is_filter_in_parents
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_NewBool
    - GF_JS_EXCEPTION
    - gf_filter_pid_is_filter_in_parents
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_is_filter_in_parents(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2423,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2424,1
    - Dst: gf_filter_pid_get_buffer_occupancy
      Src: /src/gpac/src/filters/jsfilter.c:2426,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:2427,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2428,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2428,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2429,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2429,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2430,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2430,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2431,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2431,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2432,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2432,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2434
      start: 2418
    functionDepth: 1
    functionLinenumber: 2418
    functionLinenumberEnd: 2434
    functionName: jsf_pid_get_buffer_occupancy
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_NewBool
    - JS_NewInt32
    - JS_NewObject
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - gf_filter_pid_get_buffer_occupancy
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_get_buffer_occupancy(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2437,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2438,1
    - Dst: gf_filter_pid_clear_eos
      Src: /src/gpac/src/filters/jsfilter.c:2439,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2439,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2441
      start: 2435
    functionDepth: 1
    functionLinenumber: 2435
    functionLinenumberEnd: 2441
    functionName: jsf_pid_clear_eos
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_filter_pid_clear_eos
    - GF_JS_EXCEPTION
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_clear_eos(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2444,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2445,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2446,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/jsfilter.c:2446,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2447
      start: 2442
    functionDepth: 1
    functionLinenumber: 2442
    functionLinenumberEnd: 2447
    functionName: jsf_pid_check_caps
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_filter_pid_check_caps
    - JS_NewBool
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_check_caps(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2450,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2451,1
    - Dst: gf_filter_pid_discard_block
      Src: /src/gpac/src/filters/jsfilter.c:2452,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2454
      start: 2448
    functionDepth: 1
    functionLinenumber: 2448
    functionLinenumberEnd: 2454
    functionName: jsf_pid_discard_block
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - gf_filter_pid_discard_block
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_discard_block(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2457,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2458,1
    - Dst: gf_filter_pid_allow_direct_dispatch
      Src: /src/gpac/src/filters/jsfilter.c:2459,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2461
      start: 2455
    functionDepth: 1
    functionLinenumber: 2455
    functionLinenumberEnd: 2461
    functionName: jsf_pid_allow_direct_dispatch
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_filter_pid_allow_direct_dispatch
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_allow_direct_dispatch(JSContext *ctx, JSValueConst
      this_val, int argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2468,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2469,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:2471,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2473,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:2475,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2476,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2477,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:2481,1
    - Dst: gf_filter_pid_resolve_file_template
      Src: /src/gpac/src/filters/jsfilter.c:2483,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2484,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2487,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2488,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2489
      start: 2462
    functionDepth: 2
    functionLinenumber: 2462
    functionLinenumberEnd: 2489
    functionName: jsf_pid_resolve_file_template
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - js_throw_err
    - JS_GetOpaque
    - JS_NewString
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - gf_filter_pid_resolve_file_template
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_resolve_file_template(JSContext *ctx, JSValueConst
      this_val, int argc, JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2495,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2496,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:2498,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2499,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2501,1
    - Dst: gf_filter_pid_caps_query_str
      Src: /src/gpac/src/filters/jsfilter.c:2503,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2504,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filters/jsfilter.c:2506,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2507,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2507,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filters/jsfilter.c:2509,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2510,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2512,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/jsfilter.c:2514,1
    - Dst: jsf_NewPropTranslate
      Src: /src/gpac/src/filters/jsfilter.c:2516,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2519
      start: 2491
    functionDepth: 7
    functionLinenumber: 2491
    functionLinenumberEnd: 2519
    functionName: jsf_pid_query_caps
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - gf_props_get_id
    - js_throw_err
    - gf_filter_pid_caps_query
    - JS_GetOpaque
    - gf_filter_pid_caps_query_str
    - JS_ToBool
    - JS_NewInt32
    - jsf_NewProp
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - jsf_NewPropTranslate
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_query_caps(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2527,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2528,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:2529,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2530,1
    - Dst: gf_filter_pid_get_statistics
      Src: /src/gpac/src/filters/jsfilter.c:2532,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2534,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:2536,1
    - Dst: SET_PROPB
      Src: /src/gpac/src/filters/jsfilter.c:2544,1
    - Dst: SET_PROP32
      Src: /src/gpac/src/filters/jsfilter.c:2545,1
    - Dst: SET_PROP32
      Src: /src/gpac/src/filters/jsfilter.c:2546,1
    - Dst: SET_PROP32
      Src: /src/gpac/src/filters/jsfilter.c:2547,1
    - Dst: SET_PROP32
      Src: /src/gpac/src/filters/jsfilter.c:2548,1
    - Dst: SET_PROP32
      Src: /src/gpac/src/filters/jsfilter.c:2549,1
    - Dst: SET_PROP32
      Src: /src/gpac/src/filters/jsfilter.c:2550,1
    - Dst: SET_PROP64
      Src: /src/gpac/src/filters/jsfilter.c:2551,1
    - Dst: SET_PROP64
      Src: /src/gpac/src/filters/jsfilter.c:2552,1
    - Dst: SET_PROP64
      Src: /src/gpac/src/filters/jsfilter.c:2553,1
    - Dst: SET_PROP32
      Src: /src/gpac/src/filters/jsfilter.c:2554,1
    - Dst: SET_PROP32
      Src: /src/gpac/src/filters/jsfilter.c:2555,1
    - Dst: SET_PROP32
      Src: /src/gpac/src/filters/jsfilter.c:2556,1
    - Dst: SET_PROP64
      Src: /src/gpac/src/filters/jsfilter.c:2557,1
    - Dst: SET_PROP64
      Src: /src/gpac/src/filters/jsfilter.c:2558,1
    - Dst: SET_PROP64
      Src: /src/gpac/src/filters/jsfilter.c:2559,1
    - Dst: SET_PROP64
      Src: /src/gpac/src/filters/jsfilter.c:2560,1
    - Dst: SET_PROP64
      Src: /src/gpac/src/filters/jsfilter.c:2561,1
    - Dst: SET_PROP32
      Src: /src/gpac/src/filters/jsfilter.c:2562,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2564
      start: 2521
    functionDepth: 2
    functionLinenumber: 2521
    functionLinenumberEnd: 2564
    functionName: jsf_pid_get_statistics
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - SET_PROPB
    - js_throw_err
    - JS_GetOpaque
    - SET_PROP32
    - JS_ToInt32
    - JS_NewObject
    - GF_JS_EXCEPTION
    - gf_filter_pid_get_statistics
    - SET_PROP64
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_get_statistics(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2539
      start: 2537
    functionDepth: 0
    functionLinenumber: 2537
    functionLinenumberEnd: 2539
    functionName: SET_PROP32
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_PROP32(_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2541
      start: 2539
    functionDepth: 0
    functionLinenumber: 2539
    functionLinenumberEnd: 2541
    functionName: SET_PROP64
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_PROP64(_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2543
      start: 2541
    functionDepth: 0
    functionLinenumber: 2541
    functionLinenumberEnd: 2543
    functionName: SET_PROPB
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_PROPB(_val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/jsfilter.c:2569,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:2571,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/jsfilter.c:2573,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/jsfilter.c:2575,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:2577,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2579,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2580,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:2581,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2582,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2583,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2585,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2586,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2587,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2590,1
    - Dst: jsf_pck_detach_ab
      Src: /src/gpac/src/filters/jsfilter.c:2592,1
    - Dst: memset
      Src: /src/gpac/src/filters/jsfilter.c:2593,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:2594,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/jsfilter.c:2595,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:2599,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 3
    argNames:
    - filter
    - PID
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2600
      start: 2566
    functionDepth: 2
    functionLinenumber: 2566
    functionLinenumberEnd: 2600
    functionName: jsf_pck_shared_del
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - JS_DupValue
    - JS_Call
    - JS_FreeValue
    - JS_IsUndefined
    - gf_list_count
    - memset
    - gf_js_lock
    - jsf_pck_detach_ab
    - gf_list_add
    - gf_filter_pid_get_udta
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void jsf_pck_shared_del(GF_Filter *filter, GF_FilterPid *PID, GF_FilterPacket
      *pck)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/jsfilter.c:2612,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:2613,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/jsfilter.c:2614,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2617,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2618,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:2619,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:2621,1
    - Dst: jsf_pck_shared_del
      Src: /src/gpac/src/filters/jsfilter.c:2623,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - filter
    - PID
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2624
      start: 2610
    functionDepth: 3
    functionLinenumber: 2610
    functionLinenumberEnd: 2624
    functionName: jsf_pck_gl_ifce_del
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - jsf_pck_shared_del
    - JS_FreeValue
    - gf_js_lock
    - gf_filter_pid_get_udta
    - gf_filter_pck_get_frame_interface
    linkageType: ''
    returnType: void
    signature: void jsf_pck_gl_ifce_del(GF_Filter *filter, GF_FilterPid *PID, GF_FilterPacket
      *pck)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:2639,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2641,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2642,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2643,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:2644,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:2645,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/jsfilter.c:2646,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:2648,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filters/jsfilter.c:2648,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2651,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filters/jsfilter.c:2652,1
    - Dst: wgl_texture_get_id
      Src: /src/gpac/src/filters/jsfilter.c:2654,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:2657,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2660,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2661,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:2662,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2664,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2668,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2669,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2670,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:2671,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 5
    argNames:
    - frame
    - plane_idx
    - gl_tex_format
    - gl_tex_id
    - texcoordmatrix
    argTypes:
    - GF_FilterFrameInterface*
    - u32
    - u32*
    - u32*
    - GF_Matrix_unexposed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2673
      start: 2630
    functionDepth: 6
    functionLinenumber: 2630
    functionLinenumberEnd: 2673
    functionName: jsf_pck_gl_get_texture
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_IsNull
    - JS_Call
    - JS_IsException
    - wgl_texture_get_id
    - JS_FreeValue
    - gf_js_lock
    - JS_GetPropertyStr
    - JS_ToInt32
    - js_dump_error
    - JS_NewInt32
    - JS_IsObject
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jsf_pck_gl_get_texture(GF_FilterFrameInterface *frame, u32 plane_idx,
      u32 *gl_tex_format, u32 *gl_tex_id, GF_Matrix_unexposed * texcoordmatrix)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2688,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2690,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/jsfilter.c:2692,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/jsfilter.c:2695,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:2697,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2699,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:2701,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:2702,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:2703,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2704,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2706,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:2714,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2717,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/jsfilter.c:2722,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filters/jsfilter.c:2726,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:2726,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:2729,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2731,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:2732,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:2733,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2734,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:2737,1
    - Dst: strlen
      Src: /src/gpac/src/filters/jsfilter.c:2738,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/jsfilter.c:2741,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2742,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2743,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/jsfilter.c:2744,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:2745,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:2747,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2748,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2750,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/jsfilter.c:2754,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/jsfilter.c:2756,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2757,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2763,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/jsfilter.c:2766,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:2767,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2768,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2771,1
    - Dst: gf_filter_pck_new_copy
      Src: /src/gpac/src/filters/jsfilter.c:2772,1
    - Dst: gf_filter_pck_new_clone
      Src: /src/gpac/src/filters/jsfilter.c:2774,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filters/jsfilter.c:2781,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2782,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2783,1
    - Dst: JS_IsArrayBuffer
      Src: /src/gpac/src/filters/jsfilter.c:2785,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/filters/jsfilter.c:2785,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/jsfilter.c:2789,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2790,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/jsfilter.c:2791,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:2792,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:2794,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2795,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2797,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/jsfilter.c:2800,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2802,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2803,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/jsfilter.c:2805,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:2812,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2815,1
    - Dst: gf_filter_pck_new_frame_interface
      Src: /src/gpac/src/filters/jsfilter.c:2819,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/jsfilter.c:2820,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:2821,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2823,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:2824,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2825,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2827,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2828,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/filters/jsfilter.c:2832,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2832,1
    - Dst: webgl_get_frame_interface
      Src: /src/gpac/src/filters/jsfilter.c:2841,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:2842,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:2843,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2844,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/jsfilter.c:2847,1
    - Dst: gf_filter_pck_new_frame_interface
      Src: /src/gpac/src/filters/jsfilter.c:2848,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2853,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2854,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2859,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2860,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 157
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2864
      start: 2680
    functionDepth: 3
    functionLinenumber: 2680
    functionLinenumberEnd: 2864
    functionName: jsf_pid_new_packet
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_ref
    - GF_SAFEALLOC
    - gf_filter_pck_new_clone
    - JS_IsInteger
    - JS_FreeCString
    - JS_ToCString
    - JS_IsString
    - gf_list_pop_back
    - JS_DupValue
    - gf_list_new
    - gf_assert
    - JS_GetOpaque
    - memcpy
    - JS_ToBool
    - gf_list_add
    - gf_filter_pck_new_frame_interface
    - JS_IsObject
    - JS_IsBool
    - JS_NewObjectClass
    - gf_filter_pck_new_alloc
    - JS_IsNull
    - JS_IsFunction
    - js_throw_err_msg
    - webgl_get_frame_interface
    - JS_ToInt32
    - strlen
    - gf_filter_pck_new_shared
    - js_throw_err
    - JS_IsException
    - gf_filter_pck_new_copy
    - JS_SetOpaque
    - JS_FreeValue
    - JS_IsArrayBuffer
    - GF_JS_EXCEPTION
    - JS_GetArrayBuffer
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_new_packet(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2872,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2873,1
    - Dst: gf_filter_pid_get_clock_info
      Src: /src/gpac/src/filters/jsfilter.c:2874,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:2875,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2876,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2876,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2877,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2877,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2878,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:2878,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2880
      start: 2866
    functionDepth: 1
    functionLinenumber: 2866
    functionLinenumberEnd: 2880
    functionName: jsf_pid_get_clock_info
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_clock_info
    - JS_GetOpaque
    - JS_NewInt64
    - JS_NewInt32
    - JS_NewObject
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_get_clock_info(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2889,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2890,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:2891,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2892,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filters/jsfilter.c:2894,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2895,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:2900,1
    - Dst: jsf_ToProp
      Src: /src/gpac/src/filters/jsfilter.c:2901,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2902,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2904,1
    - Dst: gf_filter_pid_set_info_dyn
      Src: /src/gpac/src/filters/jsfilter.c:2908,1
    - Dst: gf_filter_pid_negotiate_property_dyn
      Src: /src/gpac/src/filters/jsfilter.c:2910,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/jsfilter.c:2912,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2915,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2916,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:2917,1
    - Dst: jsf_ToProp
      Src: /src/gpac/src/filters/jsfilter.c:2918,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2920,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/jsfilter.c:2925,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/jsfilter.c:2927,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/jsfilter.c:2929,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filters/jsfilter.c:2934,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2936,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 48
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - mode
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2938
      start: 2883
    functionDepth: 4
    functionLinenumber: 2883
    functionLinenumberEnd: 2938
    functionName: jsf_pid_set_property_ex
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - gf_filter_pid_set_info
    - gf_props_get_id
    - js_throw_err
    - JS_IsNull
    - jsf_ToProp
    - JS_GetOpaque
    - gf_filter_pid_set_info_dyn
    - gf_filter_pid_negotiate_property
    - gf_filter_pid_set_property
    - gf_props_reset_single
    - JS_ToBool
    - GF_JS_EXCEPTION
    - gf_filter_pid_set_property_dyn
    - gf_filter_pid_negotiate_property_dyn
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_set_property_ex(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv, u32 mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsf_pid_set_property_ex
      Src: /src/gpac/src/filters/jsfilter.c:2941,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2942
      start: 2939
    functionDepth: 5
    functionLinenumber: 2939
    functionLinenumberEnd: 2942
    functionName: jsf_pid_set_property
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - jsf_pid_set_property_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_set_property(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsf_pid_set_property_ex
      Src: /src/gpac/src/filters/jsfilter.c:2945,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2946
      start: 2943
    functionDepth: 5
    functionLinenumber: 2943
    functionLinenumberEnd: 2946
    functionName: jsf_pid_set_info
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - jsf_pid_set_property_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_set_info(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsf_pid_set_property_ex
      Src: /src/gpac/src/filters/jsfilter.c:2949,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2950
      start: 2947
    functionDepth: 5
    functionLinenumber: 2947
    functionLinenumberEnd: 2950
    functionName: jsf_pid_negotiate_prop
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - jsf_pid_set_property_ex
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_negotiate_prop(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2955,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2956,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2957,1
    - Dst: gf_filter_pid_ignore_blocking
      Src: /src/gpac/src/filters/jsfilter.c:2958,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2961
      start: 2952
    functionDepth: 1
    functionLinenumber: 2952
    functionLinenumberEnd: 2961
    functionName: jsf_pid_ignore_blocking
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - gf_filter_pid_ignore_blocking
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_ignore_blocking(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2965,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2966,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/jsfilter.c:2968,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2971,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2973
      start: 2963
    functionDepth: 1
    functionLinenumber: 2963
    functionLinenumberEnd: 2973
    functionName: jsf_pid_remove
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_SetOpaque
    - GF_JS_EXCEPTION
    - gf_filter_pid_remove
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_remove(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2978,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2979,1
    - Dst: gf_filter_pid_reset_properties
      Src: /src/gpac/src/filters/jsfilter.c:2980,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2981,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2983
      start: 2975
    functionDepth: 2
    functionLinenumber: 2975
    functionLinenumberEnd: 2983
    functionName: jsf_pid_reset_props
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - js_throw_err
    - gf_filter_pid_reset_properties
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_reset_props(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2988,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2989,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2990,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2991,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/jsfilter.c:2992,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2993,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2995
      start: 2985
    functionDepth: 2
    functionLinenumber: 2985
    functionLinenumberEnd: 2995
    functionName: jsf_pid_copy_props
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_filter_pid_copy_properties
    - GF_JS_EXCEPTION
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_copy_props(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:3001,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3002,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filters/jsfilter.c:3003,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3003,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:3004,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3005,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/jsfilter.c:3006,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:3007,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3009
      start: 2997
    functionDepth: 2
    functionLinenumber: 2997
    functionLinenumberEnd: 3009
    functionName: jsf_pid_forward
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - gf_filter_pck_forward
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - JS_IsObject
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_forward(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:3014,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3015,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3016,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:3017,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/jsfilter.c:3021,1
    - Dst: filter_source_id_match
      Src: /src/gpac/src/filters/jsfilter.c:3025,1
    - Dst: gf_filter_last_id_in_chain
      Src: /src/gpac/src/filters/jsfilter.c:3028,1
    - Dst: filter_source_id_match
      Src: /src/gpac/src/filters/jsfilter.c:3029,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:3033,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3035
      start: 3011
    functionDepth: 1
    functionLinenumber: 3011
    functionLinenumberEnd: 3035
    functionName: jsf_pid_match_source
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - gf_filter_last_id_in_chain
    - JS_GetOpaque
    - strncmp
    - filter_source_id_match
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pid_match_source(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 121
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 207
    argCount: 3
    argNames:
    - evt_type
    - ui_type
    - magic
    argTypes:
    - u32
    - u8
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3383
      start: 3174
    functionDepth: 0
    functionLinenumber: 3174
    functionLinenumberEnd: 3383
    functionName: jsf_check_evt
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool jsf_check_evt(u32 evt_type, u8 ui_type, int magic)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:3387,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/jsfilter.c:3388,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:3389,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:3390,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - value
    - ptr
    argTypes:
    - JSContext*
    - JSValue
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3392
      start: 3385
    functionDepth: 1
    functionLinenumber: 3385
    functionLinenumberEnd: 3392
    functionName: to_event_string
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - gf_strdup
    - JS_FreeCString
    linkageType: ''
    returnType: void
    signature: void to_event_string(JSContext *ctx, JSValue value, char **ptr)
  - BBCount: 75
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:3399,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3400,1
    - Dst: jsf_check_evt
      Src: /src/gpac/src/filters/jsfilter.c:3401,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3402,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3406,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3409,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3409,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3411,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3411,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3413,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3416,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3419,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3419,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3423,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3426,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3429,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3429,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:3432,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3432,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:3434,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3434,1
    - Dst: to_event_string
      Src: /src/gpac/src/filters/jsfilter.c:3436,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3439,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3442,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3442,1
    - Dst: to_event_string
      Src: /src/gpac/src/filters/jsfilter.c:3445,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3448,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:3451,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3451,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:3453,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3453,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:3455,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3455,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:3457,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3457,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3460,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3463,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3463,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3465,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3465,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3467,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3467,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3469,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3469,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3471,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3471,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3472,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3472,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3473,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3473,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3474,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3474,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3476,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3479,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3479,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3480,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3480,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3481,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3481,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3483,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3486,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3486,1
    - Dst: to_event_string
      Src: /src/gpac/src/filters/jsfilter.c:3488,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3490,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3490,1
    - Dst: to_event_string
      Src: /src/gpac/src/filters/jsfilter.c:3492,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3494,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3494,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3497,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3497,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3504,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3504,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/jsfilter.c:3505,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3508,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3508,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3511,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3511,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/jsfilter.c:3512,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3515,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3515,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3518,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3518,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/jsfilter.c:3519,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3521,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3521,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3522,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3522,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3523,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3523,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3524,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3524,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3527,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3527,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/jsfilter.c:3528,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3531,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3531,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/jsfilter.c:3532,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3535,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3535,1
    - Dst: to_event_string
      Src: /src/gpac/src/filters/jsfilter.c:3538,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3541,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3541,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3542,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3542,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3543,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3543,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3544,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3544,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3545,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3545,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3546,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3546,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3549,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3549,1
    - Dst: to_event_string
      Src: /src/gpac/src/filters/jsfilter.c:3557,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:3560,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 176
    argCount: 4
    argNames:
    - ctx
    - this_val
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3562
      start: 3394
    functionDepth: 2
    functionLinenumber: 3394
    functionLinenumberEnd: 3562
    functionName: jsf_event_set_prop
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - to_event_string
    - js_throw_err
    - JS_GetOpaque
    - JS_ToBool
    - jsf_check_evt
    - JS_ToInt64
    - JS_ToInt32
    - JS_ToFloat64
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_event_set_prop(JSContext *ctx, JSValueConst this_val, JSValueConst
      value, int magic)
  - BBCount: 116
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:3566,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3567,1
    - Dst: jsf_check_evt
      Src: /src/gpac/src/filters/jsfilter.c:3568,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3569,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3571,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3603,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3605,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filters/jsfilter.c:3605,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3607,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3608,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:3609,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:3610,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3611,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:3612,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:3613,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3614,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:3616,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:3617,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3618,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:3619,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3620,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3622,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:3623,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:3624,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:3625,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:3626,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:3627,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:3629,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3630,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3631,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3632,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3633,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3635,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3636,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3637,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3638,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:3639,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3641,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3642,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3643,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:3644,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3646,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3647,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3648,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3649,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3650,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3653,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3654,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3656,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3659,1
    - Dst: gf_dom_get_key_name
      Src: /src/gpac/src/filters/jsfilter.c:3659,1
    - Dst: memset
      Src: /src/gpac/src/filters/jsfilter.c:3668,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3684,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3689,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/filters/jsfilter.c:3689,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3690,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3693,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/filters/jsfilter.c:3693,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3694,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3695,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/filters/jsfilter.c:3695,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3696,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3697,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filters/jsfilter.c:3701,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filters/jsfilter.c:3705,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3705,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3712,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3715,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/filters/jsfilter.c:3715,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3717,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/filters/jsfilter.c:3717,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3719,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3720,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3721,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3722,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3724,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3725,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3726,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3727,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3728,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3731,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3736,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3741,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3745,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3747,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3750,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3752,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3755,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3757,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3759,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 276
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3763
      start: 3564
    functionDepth: 1
    functionLinenumber: 3564
    functionLinenumberEnd: 3763
    functionName: jsf_event_get_prop
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - JS_GetOpaque
    - JS_SetPropertyUint32
    - gf_filter_event_name
    - JS_NewString
    - JS_NewInt64
    - jsf_check_evt
    - gf_dom_get_key_name
    - JS_NewBool
    - memset
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - JS_NewArray
    - FIX2FLT
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_event_get_prop(JSContext *ctx, JSValueConst this_val, int
      magic)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:3767,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3769
      start: 3765
    functionDepth: 1
    functionLinenumber: 3765
    functionLinenumberEnd: 3769
    functionName: jsf_get_event
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    linkageType: ''
    returnType: GF_FilterEvent
    signature: GF_FilterEvent *jsf_get_event(JSContext *ctx, JSValueConst this_val)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3859,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3860,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3861,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3863,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:3864,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:3865,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:3867,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:3869,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:3870,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:3875,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3877
      start: 3853
    functionDepth: 2
    functionLinenumber: 3853
    functionLinenumberEnd: 3877
    functionName: jsf_event_constructor
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - js_throw_err
    - GF_SAFEALLOC
    - JS_IsException
    - JS_FreeValue
    - JS_SetOpaque
    - JS_ToInt32
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_event_constructor(JSContext *ctx, JSValueConst new_target,
      int argc, JSValueConst *argv)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:3917,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3918,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/jsfilter.c:3923,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/jsfilter.c:3924,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3924,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/jsfilter.c:3927,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/jsfilter.c:3928,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3928,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:3931,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/jsfilter.c:3932,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:3934,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3934,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/jsfilter.c:3935,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:3939,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/jsfilter.c:3940,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:3942,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3942,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/jsfilter.c:3943,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3947,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3947,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/jsfilter.c:3948,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3951,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3951,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/jsfilter.c:3952,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3955,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3955,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/jsfilter.c:3956,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/jsfilter.c:3959,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3959,1
    - Dst: gf_filter_pck_set_corrupted
      Src: /src/gpac/src/filters/jsfilter.c:3962,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3962,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:3965,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/jsfilter.c:3966,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:3968,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3968,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/jsfilter.c:3969,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3973,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3973,1
    - Dst: gf_filter_pck_set_roll_info
      Src: /src/gpac/src/filters/jsfilter.c:3974,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3977,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3977,1
    - Dst: gf_filter_pck_set_crypt_flags
      Src: /src/gpac/src/filters/jsfilter.c:3978,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3981,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3981,1
    - Dst: gf_filter_pck_set_clock_type
      Src: /src/gpac/src/filters/jsfilter.c:3982,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3985,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3985,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/src/filters/jsfilter.c:3986,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3989,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3989,1
    - Dst: gf_filter_pck_set_seq_num
      Src: /src/gpac/src/filters/jsfilter.c:3990,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3993,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3993,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/jsfilter.c:3994,1
    - Dst: gf_filter_pck_set_seq_num
      Src: /src/gpac/src/filters/jsfilter.c:3997,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:4000,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4000,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/jsfilter.c:4001,1
    - Dst: gf_filter_pck_set_seq_num
      Src: /src/gpac/src/filters/jsfilter.c:4004,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:4007,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4007,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/jsfilter.c:4008,1
    - Dst: gf_filter_pck_set_seq_num
      Src: /src/gpac/src/filters/jsfilter.c:4011,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:4014,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4014,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/jsfilter.c:4015,1
    - Dst: gf_filter_pck_set_seq_num
      Src: /src/gpac/src/filters/jsfilter.c:4018,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:4022,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4023,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 121
    argCount: 4
    argNames:
    - ctx
    - this_val
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4025
      start: 3909
    functionDepth: 2
    functionLinenumber: 3909
    functionLinenumberEnd: 4025
    functionName: jsf_pck_set_prop
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_crypt_flags
    - JS_FreeCString
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_get_framing
    - JS_GetOpaque
    - JS_ToBool
    - JS_ToInt64
    - gf_filter_pck_get_dependency_flags
    - gf_filter_pck_set_corrupted
    - gf_filter_pck_set_clock_type
    - gf_filter_pck_set_carousel_version
    - JS_IsNull
    - gf_filter_pck_set_interlaced
    - gf_filter_pck_set_duration
    - JS_ToInt32
    - gf_filter_pck_set_sap
    - js_throw_err
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_set_framing
    - gf_filter_pck_set_roll_info
    - GF_JS_EXCEPTION
    - gf_filter_pck_set_seq_num
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pck_set_prop(JSContext *ctx, JSValueConst this_val, JSValueConst
      value, int magic)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4033,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4034,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/jsfilter.c:4039,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4040,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/jsfilter.c:4042,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4043,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/jsfilter.c:4045,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:4047,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/jsfilter.c:4049,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:4051,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:4053,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/jsfilter.c:4053,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:4055,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/jsfilter.c:4055,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:4057,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/jsfilter.c:4057,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:4059,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/jsfilter.c:4059,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4061,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/jsfilter.c:4061,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4063,1
    - Dst: gf_filter_pck_get_corrupted
      Src: /src/gpac/src/filters/jsfilter.c:4063,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/jsfilter.c:4065,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:4067,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:4069,1
    - Dst: gf_filter_pck_get_roll_info
      Src: /src/gpac/src/filters/jsfilter.c:4069,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:4071,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/jsfilter.c:4071,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:4073,1
    - Dst: gf_filter_pck_get_clock_type
      Src: /src/gpac/src/filters/jsfilter.c:4073,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:4075,1
    - Dst: gf_filter_pck_get_carousel_version
      Src: /src/gpac/src/filters/jsfilter.c:4075,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:4077,1
    - Dst: gf_filter_pck_get_seq_num
      Src: /src/gpac/src/filters/jsfilter.c:4077,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4079,1
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/src/filters/jsfilter.c:4079,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/jsfilter.c:4081,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4082,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/jsfilter.c:4084,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4085,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/jsfilter.c:4087,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4088,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/jsfilter.c:4090,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4091,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/jsfilter.c:4093,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:4094,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:4096,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/jsfilter.c:4097,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/filters/jsfilter.c:4099,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:4101,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/jsfilter.c:4103,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4104,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4105,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/jsfilter.c:4108,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4110,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4111,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4115,1
    - Dst: gf_filter_pck_has_properties
      Src: /src/gpac/src/filters/jsfilter.c:4115,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 85
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4118
      start: 4027
    functionDepth: 1
    functionLinenumber: 4027
    functionLinenumberEnd: 4118
    functionName: jsf_pck_get_prop
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - gf_filter_pck_get_carousel_version
    - gf_filter_pck_get_clock_type
    - gf_filter_pck_get_seek_flag
    - gf_filter_pck_get_frame_interface
    - JS_DupValue
    - gf_filter_pck_get_framing
    - JS_GetOpaque
    - gf_filter_pck_get_corrupted
    - gf_filter_pck_get_roll_info
    - JS_IsUndefined
    - gf_filter_pck_get_dependency_flags
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_seq_num
    - JS_NewInt32
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_data
    - gf_filter_pck_get_crypt_flags
    - gf_filter_pck_get_timescale
    - gf_filter_pck_get_interlaced
    - gf_filter_pck_has_properties
    - gf_filter_pck_get_sap
    - gf_filter_pck_is_blocking_ref
    - JS_NewBool
    - gf_filter_pck_get_byte_offset
    - JS_NewArrayBuffer
    - GF_JS_EXCEPTION
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pck_get_prop(JSContext *ctx, JSValueConst this_val, int
      magic)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4123,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4124,1
    - Dst: gf_filter_pck_set_readonly
      Src: /src/gpac/src/filters/jsfilter.c:4127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4129
      start: 4120
    functionDepth: 1
    functionLinenumber: 4120
    functionLinenumberEnd: 4129
    functionName: jsf_pck_set_readonly
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_filter_pck_set_readonly
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pck_set_readonly(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4138,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4139,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:4142,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4143,1
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/src/filters/jsfilter.c:4145,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filters/jsfilter.c:4147,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4148,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:4150,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4151,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:4151,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4152,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:4152,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4153,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filters/jsfilter.c:4153,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4155
      start: 4130
    functionDepth: 4
    functionLinenumber: 4130
    functionLinenumberEnd: 4155
    functionName: jsf_pck_enum_properties
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_props_4cc_get_name
    - gf_filter_pck_enum_properties
    - JS_GetOpaque
    - JS_NewString
    - JS_ToInt32
    - JS_NewInt32
    - jsf_NewProp
    - JS_NewObject
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pck_enum_properties(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4163,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4164,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:4167,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4168,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:4169,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/jsfilter.c:4170,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:4171,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filters/jsfilter.c:4173,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4174,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:4174,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filters/jsfilter.c:4176,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:4177,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4179,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/jsfilter.c:4181,1
    - Dst: jsf_NewPropTranslate
      Src: /src/gpac/src/filters/jsfilter.c:4183,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4186
      start: 4157
    functionDepth: 7
    functionLinenumber: 4157
    functionLinenumberEnd: 4186
    functionName: jsf_pck_get_property
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_property
    - JS_ToCString
    - gf_props_get_id
    - js_throw_err
    - JS_GetOpaque
    - JS_ToBool
    - JS_NewInt32
    - jsf_NewProp
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - jsf_NewPropTranslate
    - JS_FreeCString
    - gf_filter_pck_get_property_str
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pck_get_property(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4192,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4193,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:4195,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/jsfilter.c:4197,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:4199,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4201,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/jsfilter.c:4203,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/jsfilter.c:4205,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/jsfilter.c:4207,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:4210,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4213,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:4214,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4215
      start: 4188
    functionDepth: 3
    functionLinenumber: 4188
    functionLinenumberEnd: 4215
    functionName: jsf_pck_ref
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_DupValue
    - gf_list_pop_back
    - gf_filter_pck_ref
    - js_throw_err
    - GF_SAFEALLOC
    - JS_GetOpaque
    - memcpy
    - JS_SetOpaque
    - JS_ToBool
    - gf_filter_pck_ref_props
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pck_ref(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4220,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4221,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/jsfilter.c:4223,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/jsfilter.c:4225,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4227,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4228,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4229,1
    - Dst: memset
      Src: /src/gpac/src/filters/jsfilter.c:4231,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:4232,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4234
      start: 4217
    functionDepth: 2
    functionLinenumber: 4217
    functionLinenumberEnd: 4234
    functionName: jsf_pck_unref
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_FreeValue
    - JS_SetOpaque
    - js_throw_err_msg
    - gf_filter_pck_unref
    - memset
    - gf_list_add
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pck_unref(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4239,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4240,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/jsfilter.c:4242,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:4245,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4246,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/jsfilter.c:4249,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4250,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:4253,1
    - Dst: memset
      Src: /src/gpac/src/filters/jsfilter.c:4254,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4258
      start: 4236
    functionDepth: 2
    functionLinenumber: 4236
    functionLinenumberEnd: 4258
    functionName: jsf_pck_send
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_FreeValue
    - JS_SetOpaque
    - js_throw_err_msg
    - JS_IsUndefined
    - memset
    - gf_list_add
    - GF_JS_EXCEPTION
    - gf_filter_pck_send
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pck_send(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4262,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4263,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/jsfilter.c:4266,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4268
      start: 4259
    functionDepth: 1
    functionLinenumber: 4259
    functionLinenumberEnd: 4268
    functionName: jsf_pck_discard
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_filter_pck_discard
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pck_discard(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4276,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4277,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:4280,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4281,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:4283,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:4284,1
    - Dst: jsf_ToProp
      Src: /src/gpac/src/filters/jsfilter.c:4285,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:4286,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4287,1
    - Dst: gf_filter_pck_set_property_dyn
      Src: /src/gpac/src/filters/jsfilter.c:4288,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filters/jsfilter.c:4289,1
    - Dst: gf_filter_pck_set_property_dyn
      Src: /src/gpac/src/filters/jsfilter.c:4291,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filters/jsfilter.c:4294,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:4297,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/jsfilter.c:4298,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:4301,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/filters/jsfilter.c:4303,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:4303,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/jsfilter.c:4305,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/jsfilter.c:4305,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/filters/jsfilter.c:4305,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:4307,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/jsfilter.c:4308,1
    - Dst: jsf_ToProp
      Src: /src/gpac/src/filters/jsfilter.c:4311,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4312,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/jsfilter.c:4321,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filters/jsfilter.c:4322,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4325,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 47
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4327
      start: 4270
    functionDepth: 4
    functionLinenumber: 4270
    functionLinenumberEnd: 4327
    functionName: jsf_pck_set_property
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - gf_filter_pck_set_property
    - gf_filter_pck_set_property_dyn
    - gf_props_get_id
    - js_throw_err
    - JS_IsNull
    - jsf_ToProp
    - JS_GetOpaque
    - gf_props_reset_single
    - js_throw_err_msg
    - JS_ToBool
    - gf_net_get_ntp_ts
    - GF_JS_EXCEPTION
    - PROP_LONGUINT
    - JS_IsBool
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pck_set_property(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4336,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4337,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filters/jsfilter.c:4340,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:4340,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:4344,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:4345,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:4347,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4348,1
    - Dst: strlen
      Src: /src/gpac/src/filters/jsfilter.c:4349,1
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/jsfilter.c:4352,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:4354,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4355,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/jsfilter.c:4358,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:4359,1
    - Dst: jsf_pck_detach_ab
      Src: /src/gpac/src/filters/jsfilter.c:4362,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/filters/jsfilter.c:4363,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filters/jsfilter.c:4366,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4366,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/filters/jsfilter.c:4369,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4371,1
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/jsfilter.c:4373,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4375,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/jsfilter.c:4377,1
    - Dst: jsf_pck_detach_ab
      Src: /src/gpac/src/filters/jsfilter.c:4379,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/filters/jsfilter.c:4381,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 37
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4382
      start: 4329
    functionDepth: 2
    functionLinenumber: 4329
    functionLinenumberEnd: 4382
    functionName: jsf_pck_append_data
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - js_throw_err
    - JS_GetOpaque
    - memcpy
    - gf_filter_pck_expand
    - JS_IsInteger
    - JS_NewArrayBuffer
    - JS_ToInt32
    - jsf_pck_detach_ab
    - JS_GetArrayBuffer
    - GF_JS_EXCEPTION
    - JS_IsObject
    - strlen
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pck_append_data(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4389,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4390,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:4393,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/filters/jsfilter.c:4395,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4396,1
    - Dst: jsf_pck_detach_ab
      Src: /src/gpac/src/filters/jsfilter.c:4398,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4400
      start: 4384
    functionDepth: 2
    functionLinenumber: 4384
    functionLinenumberEnd: 4400
    functionName: jsf_pck_truncate
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - js_throw_err
    - JS_GetOpaque
    - JS_ToInt32
    - jsf_pck_detach_ab
    - gf_filter_pck_truncate
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pck_truncate(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4404,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4406,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4407,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4409,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/jsfilter.c:4410,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4411,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4413
      start: 4401
    functionDepth: 2
    functionLinenumber: 4401
    functionLinenumberEnd: 4413
    functionName: jsf_pck_copy_props
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_filter_pck_merge_properties
    - GF_JS_EXCEPTION
    - js_throw_err
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pck_copy_props(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4420,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4422,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4424,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4426,1
    - Dst: gf_filter_pck_dangling_copy
      Src: /src/gpac/src/filters/jsfilter.c:4428,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4429,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:4433,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:4435,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/jsfilter.c:4436,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:4438,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4439,1
    - Dst: memset
      Src: /src/gpac/src/filters/jsfilter.c:4441,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4448,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4450
      start: 4415
    functionDepth: 3
    functionLinenumber: 4415
    functionLinenumberEnd: 4450
    functionName: jsf_pck_clone
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_DupValue
    - gf_list_pop_back
    - js_throw_err
    - GF_SAFEALLOC
    - JS_GetOpaque
    - JS_SetOpaque
    - memset
    - gf_filter_pck_dangling_copy
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_pck_clone(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/jsfilter.c:4501,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:4504,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:4505,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:4506,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:4507,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/jsfilter.c:4508,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:4511,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:4512,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4514,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:4515,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filters/jsfilter.c:4517,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4519
      start: 4497
    functionDepth: 6
    functionLinenumber: 4497
    functionLinenumberEnd: 4519
    functionName: jsfilter_process
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_IsException
    - GF_LOG
    - JS_FreeValue
    - JS_IsInteger
    - gf_js_lock
    - JS_ToInt32
    - js_dump_error
    - js_std_loop
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jsfilter_process(GF_Filter *filter)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/jsfilter.c:4526,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/jsfilter.c:4532,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:4537,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:4538,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:4541,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:4542,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:4543,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/jsfilter.c:4544,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:4547,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:4548,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4550,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4555,1
    - Dst: gf_js_call_gc
      Src: /src/gpac/src/filters/jsfilter.c:4563,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4565,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4566,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/jsfilter.c:4567,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/jsfilter.c:4568,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:4569,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:4570,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filters/jsfilter.c:4571,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:4575,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:4578,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:4583,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/jsfilter.c:4584,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:4585,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4586,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:4589,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:4590,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:4591,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/jsfilter.c:4592,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/jsfilter.c:4594,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:4596,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:4597,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4598,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:4600,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filters/jsfilter.c:4601,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 63
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4603
      start: 4523
    functionDepth: 6
    functionLinenumber: 4523
    functionLinenumberEnd: 4603
    functionName: jsfilter_configure_pid
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - JS_IsInteger
    - gf_filter_pid_set_udta
    - js_std_loop
    - gf_list_add
    - js_dump_error
    - gf_filter_get_udta
    - JS_NewObjectClass
    - JS_IsFunction
    - GF_LOG
    - JS_ToInt32
    - gf_list_del_item
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_SetOpaque
    - gf_filter_abort
    - gf_js_lock
    - gf_filter_pid_get_udta
    - gf_js_call_gc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jsfilter_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4607
      start: 4605
    functionDepth: 0
    functionLinenumber: 4605
    functionLinenumberEnd: 4607
    functionName: DEF_CONST
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEF_CONST( _val )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:4612,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4613,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/filters/jsfilter.c:4613,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4614,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4616,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4617,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4618,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4619,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4621,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4622,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4623,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4624,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4625,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4626,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4627,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4628,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4629,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4630,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4631,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4632,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4633,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4634,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4635,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4636,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4637,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4638,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4639,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4640,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4641,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4642,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4643,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4644,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4645,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4646,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4647,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4649,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4650,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4651,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4652,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4653,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4654,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4656,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4657,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4658,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4659,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4660,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4661,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4662,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4663,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4664,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4665,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4666,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4667,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4668,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4669,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4670,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4672,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4674,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4675,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4676,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4677,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4678,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4679,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4680,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4682,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4683,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4684,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4686,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4687,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4688,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4689,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4690,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4691,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4693,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4694,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4695,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4696,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4697,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4698,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4699,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4701,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4702,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4703,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4704,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4705,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4706,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4707,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4708,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4709,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4710,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4711,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4712,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4713,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4714,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4715,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4716,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4717,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4718,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4719,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4720,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4721,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4722,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4723,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4724,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4725,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4726,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4727,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4728,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4729,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4730,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4731,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4732,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4733,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4734,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4735,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4736,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4737,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4738,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4739,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4741,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4742,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4743,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4745,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4746,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4748,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4749,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4750,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4751,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4752,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4753,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4754,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4755,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4756,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4757,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4758,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4759,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4760,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4761,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4762,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4763,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4764,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4765,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4766,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4767,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4768,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4769,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4770,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4771,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4772,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4774,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4775,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4776,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4777,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4778,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4779,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4781,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4782,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4783,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4784,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4785,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4786,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4787,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4788,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4789,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4790,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4791,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4792,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4795,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/filters/jsfilter.c:4795,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4796,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/filters/jsfilter.c:4796,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/filters/jsfilter.c:4800,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/filters/jsfilter.c:4801,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/filters/jsfilter.c:4801,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:4802,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/filters/jsfilter.c:4803,1
    - Dst: countof
      Src: /src/gpac/src/filters/jsfilter.c:4803,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/filters/jsfilter.c:4804,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/filters/jsfilter.c:4806,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4807,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 174
    argCount: 2
    argNames:
    - ctx
    - global_obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4808
      start: 4608
    functionDepth: 1
    functionLinenumber: 4608
    functionLinenumberEnd: 4808
    functionName: js_load_constants
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 2
    functionsReached:
    - JS_NewClass
    - JS_NewObjectClass
    - JS_SetPropertyFunctionList
    - JS_NewCFunction2
    - DEF_CONST
    - countof
    - JS_SetClassProto
    - JS_NewClassID
    - JS_NewObject
    - JS_NewCFunction
    - JS_SetPropertyStr
    - JS_GetRuntime
    linkageType: ''
    returnType: void
    signature: void js_load_constants(JSContext *ctx, JSValue global_obj)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/jsfilter.c:4819,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:4822,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/jsfilter.c:4827,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/jsfilter.c:4828,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/jsfilter.c:4829,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/jsfilter.c:4834,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:4837,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/jsfilter.c:4840,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:4841,1
    - Dst: gf_js_create_context
      Src: /src/gpac/src/filters/jsfilter.c:4846,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:4848,1
    - Dst: JS_SetContextOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4851,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/jsfilter.c:4852,1
    - Dst: js_load_constants
      Src: /src/gpac/src/filters/jsfilter.c:4853,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/filters/jsfilter.c:4855,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/filters/jsfilter.c:4860,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/filters/jsfilter.c:4861,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:4863,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/filters/jsfilter.c:4864,1
    - Dst: countof
      Src: /src/gpac/src/filters/jsfilter.c:4864,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4865,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4867,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/filters/jsfilter.c:4870,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/filters/jsfilter.c:4871,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:4872,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/filters/jsfilter.c:4873,1
    - Dst: countof
      Src: /src/gpac/src/filters/jsfilter.c:4873,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/filters/jsfilter.c:4874,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/filters/jsfilter.c:4877,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/filters/jsfilter.c:4878,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:4879,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/filters/jsfilter.c:4880,1
    - Dst: countof
      Src: /src/gpac/src/filters/jsfilter.c:4880,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/filters/jsfilter.c:4881,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/filters/jsfilter.c:4885,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/filters/jsfilter.c:4886,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:4887,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/filters/jsfilter.c:4888,1
    - Dst: countof
      Src: /src/gpac/src/filters/jsfilter.c:4888,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/filters/jsfilter.c:4889,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4892,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:4892,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/jsfilter.c:4892,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4894,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filters/jsfilter.c:4900,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:4902,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/jsfilter.c:4902,1
    - Dst: strstr
      Src: /src/gpac/src/filters/jsfilter.c:4905,1
    - Dst: strstr
      Src: /src/gpac/src/filters/jsfilter.c:4905,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:4906,1
    - Dst: strstr
      Src: /src/gpac/src/filters/jsfilter.c:4910,1
    - Dst: gf_fs_load_js_api
      Src: /src/gpac/src/filters/jsfilter.c:4914,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:4916,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/jsfilter.c:4916,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:4917,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/jsfilter.c:4929,1
    - Dst: JS_DetectModule
      Src: /src/gpac/src/filters/jsfilter.c:4929,1
    - Dst: qjs_init_all_modules
      Src: /src/gpac/src/filters/jsfilter.c:4930,1
    - Dst: JS_Eval
      Src: /src/gpac/src/filters/jsfilter.c:4939,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:4940,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:4944,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:4945,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/jsfilter.c:4946,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4947,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4950,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filters/jsfilter.c:4951,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 100
    argCount: 2
    argNames:
    - filter
    - custom_ctx
    argTypes:
    - GF_Filter*
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4953
      start: 4810
    functionDepth: 6
    functionLinenumber: 4810
    functionLinenumberEnd: 4953
    functionName: jsfilter_initialize_ex
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_GetGlobalObject
    - JS_SetPropertyFunctionList
    - GF_SAFEALLOC
    - gf_file_exists
    - gf_fs_load_js_api
    - js_load_constants
    - gf_file_basename
    - js_std_loop
    - JS_NewClass
    - gf_strdup
    - gf_list_new
    - JS_DetectModule
    - JS_NewString
    - JS_NewClassID
    - qjs_init_all_modules
    - js_dump_error
    - JS_GetRuntime
    - JS_SetContextOpaque
    - gf_filter_get_udta
    - JS_NewObjectClass
    - gf_js_create_context
    - GF_LOG
    - countof
    - JS_SetClassProto
    - strstr
    - gf_error_to_string
    - JS_Eval
    - JS_IsException
    - JS_FreeValue
    - JS_SetOpaque
    - JS_SetPropertyStr
    - gf_opts_get_bool
    - gf_file_load_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jsfilter_initialize_ex(GF_Filter *filter, JSContext *custom_ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsfilter_initialize_ex
      Src: /src/gpac/src/filters/jsfilter.c:4958,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4959
      start: 4956
    functionDepth: 7
    functionLinenumber: 4956
    functionLinenumberEnd: 4959
    functionName: jsfilter_initialize
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - jsfilter_initialize_ex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jsfilter_initialize(GF_Filter *filter)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/jsfilter.c:4964,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:4967,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/jsfilter.c:4970,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/jsfilter.c:4972,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4973,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/jsfilter.c:4975,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/jsfilter.c:4976,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4977,1
    - Dst: jsf_pck_detach_ab
      Src: /src/gpac/src/filters/jsfilter.c:4979,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4987,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4990,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4993,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:4995,1
    - Dst: gf_fs_unload_script
      Src: /src/gpac/src/filters/jsfilter.c:4998,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/jsfilter.c:5002,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/jsfilter.c:5003,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/jsfilter.c:5005,1
    - Dst: jsfs_on_filter_destroyed
      Src: /src/gpac/src/filters/jsfilter.c:5007,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:5009,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:5010,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/jsfilter.c:5013,1
    - Dst: gf_js_delete_context
      Src: /src/gpac/src/filters/jsfilter.c:5014,1
    - Dst: gf_js_call_gc
      Src: /src/gpac/src/filters/jsfilter.c:5016,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/jsfilter.c:5019,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/jsfilter.c:5020,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/jsfilter.c:5022,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:5023,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/jsfilter.c:5025,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:5027,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/jsfilter.c:5029,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/jsfilter.c:5030,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:5031,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/jsfilter.c:5033,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:5038,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:5040,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:5042,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:5044,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:5046,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:5049,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 68
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5050
      start: 4961
    functionDepth: 4
    functionLinenumber: 4961
    functionLinenumberEnd: 5050
    functionName: jsfilter_finalize
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_list_get
    - gf_list_pop_back
    - gf_js_delete_context
    - JS_FreeValue
    - JS_SetOpaque
    - JS_IsUndefined
    - gf_js_call_gc
    - gf_list_count
    - gf_js_lock
    - jsf_pck_detach_ab
    - jsfs_on_filter_destroyed
    - gf_mx_v
    - gf_fs_unload_script
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void jsfilter_finalize(GF_Filter *filter)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/jsfilter.c:5056,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:5065,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:5066,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:5067,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:5068,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:5069,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/jsfilter.c:5070,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:5071,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:5072,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:5075,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:5076,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:5078,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/jsfilter.c:5082,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/jsfilter.c:5085,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/jsfilter.c:5085,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filters/jsfilter.c:5086,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/jsfilter.c:5092,1
    - Dst: JS_NewAtom
      Src: /src/gpac/src/filters/jsfilter.c:5093,1
    - Dst: JS_DeleteProperty
      Src: /src/gpac/src/filters/jsfilter.c:5094,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:5095,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/filters/jsfilter.c:5096,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:5100,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/jsfilter.c:5107,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:5114,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filters/jsfilter.c:5116,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:5118,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:5119,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:5124,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:5126,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:5127,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:5128,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/jsfilter.c:5129,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:5132,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:5133,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:5134,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:5135,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:5136,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:5137,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 68
    argCount: 3
    argNames:
    - filter
    - arg_name
    - new_val
    argTypes:
    - GF_Filter*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5139
      start: 5054
    functionDepth: 6
    functionLinenumber: 5054
    functionLinenumberEnd: 5139
    functionName: jsfilter_update_arg
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetGlobalObject
    - JS_FreeAtom
    - JS_IsInteger
    - JS_DeleteProperty
    - gf_opts_get_key
    - jsf_NewProp
    - js_std_loop
    - JS_NewString
    - JS_SetPropertyStr
    - js_dump_error
    - gf_filter_get_udta
    - JS_IsFunction
    - GF_LOG
    - JS_ToInt32
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - gf_js_lock
    - strcmp
    - JS_NewAtom
    - gf_opts_get_bool
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err jsfilter_update_arg(GF_Filter *filter, const char *arg_name,
      const GF_PropertyValue *new_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:5143,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:5144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - evt
    argTypes:
    - JSContext*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5146
      start: 5141
    functionDepth: 1
    functionLinenumber: 5141
    functionLinenumberEnd: 5146
    functionName: js_init_evt_obj
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_SetOpaque
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_init_evt_obj(JSContext *ctx, const GF_FilterEvent *evt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/jsfilter.c:5153,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:5156,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:5159,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/jsfilter.c:5161,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:5162,1
    - Dst: js_init_evt_obj
      Src: /src/gpac/src/filters/jsfilter.c:5166,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:5168,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:5169,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:5170,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/jsfilter.c:5171,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:5174,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:5176,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:5177,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:5178,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:5179,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:5180,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filters/jsfilter.c:5182,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5184
      start: 5148
    functionDepth: 6
    functionLinenumber: 5148
    functionLinenumberEnd: 5184
    functionName: jsfilter_process_event
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_IsFunction
    - JS_Call
    - JS_IsException
    - GF_LOG
    - JS_FreeValue
    - JS_SetOpaque
    - JS_ToBool
    - gf_js_lock
    - js_init_evt_obj
    - js_dump_error
    - gf_filter_pid_get_udta
    - js_std_loop
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool jsfilter_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5203
      start: 5202
    functionDepth: 0
    functionLinenumber: 5202
    functionLinenumberEnd: 5203
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5242
      start: 5239
    functionDepth: 0
    functionLinenumber: 5239
    functionLinenumberEnd: 5242
    functionName: jsf_register
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *jsf_register(GF_FilterSession *session)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: jsfilter_initialize_ex
      Src: /src/gpac/src/filters/jsfilter.c:5248,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:5249,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/jsfilter.c:5250,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:5259,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5260
      start: 5245
    functionDepth: 7
    functionLinenumber: 5245
    functionLinenumberEnd: 5260
    functionName: jsfilter_initialize_custom
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - jsfilter_initialize_ex
    - JS_DupValue
    - js_throw_err
    - gf_filter_get_udta
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfilter_initialize_custom(GF_Filter *filter, JSContext *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:5264,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5267
      start: 5262
    functionDepth: 1
    functionLinenumber: 5262
    functionLinenumberEnd: 5267
    functionName: jsf_custom_filter_opaque
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    linkageType: ''
    returnType: GF_Filter
    signature: GF_Filter *jsf_custom_filter_opaque(JSContext *ctx, JSValueConst this_val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/jsfilter.c:5270,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - f
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5273
      start: 5268
    functionDepth: 1
    functionLinenumber: 5268
    functionLinenumberEnd: 5273
    functionName: jsf_custom_filter_context
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: JSContext
    signature: JSContext *jsf_custom_filter_context(GF_Filter *f)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/jsfilter.c:5276,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - f
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5279
      start: 5274
    functionDepth: 1
    functionLinenumber: 5274
    functionLinenumberEnd: 5279
    functionName: jsf_custom_filter_obj
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsf_custom_filter_obj(GF_Filter *f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5287
      start: 5284
    functionDepth: 0
    functionLinenumber: 5284
    functionLinenumberEnd: 5287
    functionName: jsf_register
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *jsf_register(GF_FilterSession *session)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: mpeg2ps_get_max_time_msec
      Src: /src/gpac/src/filters/dmx_mpegps.c:72,1
    - Dst: mpeg2ps_get_first_cts
      Src: /src/gpac/src/filters/dmx_mpegps.c:74,1
    - Dst: mpeg2ps_get_video_stream_count
      Src: /src/gpac/src/filters/dmx_mpegps.c:76,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_mpegps.c:82,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_mpegps.c:84,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_mpegps.c:89,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_mpegps.c:91,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_mpegps.c:93,1
    - Dst: mpeg2ps_get_video_stream_id
      Src: /src/gpac/src/filters/dmx_mpegps.c:97,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dmx_mpegps.c:100,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dmx_mpegps.c:101,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:102,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:102,1
    - Dst: mpeg2ps_get_video_stream_type
      Src: /src/gpac/src/filters/dmx_mpegps.c:103,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:105,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:105,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:108,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:108,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:113,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:113,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:114,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:114,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:115,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:115,1
    - Dst: mpeg2ps_get_video_stream_framerate
      Src: /src/gpac/src/filters/dmx_mpegps.c:117,1
    - Dst: gf_media_get_video_timing
      Src: /src/gpac/src/filters/dmx_mpegps.c:119,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:120,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/dmx_mpegps.c:120,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:122,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:122,1
    - Dst: mpeg2ps_get_video_stream_width
      Src: /src/gpac/src/filters/dmx_mpegps.c:122,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:123,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:123,1
    - Dst: mpeg2ps_get_video_stream_height
      Src: /src/gpac/src/filters/dmx_mpegps.c:123,1
    - Dst: mpeg2ps_get_video_stream_aspect_ratio
      Src: /src/gpac/src/filters/dmx_mpegps.c:124,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:128,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/dmx_mpegps.c:128,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:130,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/dmx_mpegps.c:130,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:131,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_mpegps.c:131,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_mpegps.c:132,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_mpegps.c:132,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:134,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:134,1
    - Dst: mpeg2ps_get_video_stream_bitrate
      Src: /src/gpac/src/filters/dmx_mpegps.c:134,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:136,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:136,1
    - Dst: mpeg2ps_get_audio_stream_count
      Src: /src/gpac/src/filters/dmx_mpegps.c:139,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_mpegps.c:144,1
    - Dst: mpeg2ps_get_audio_stream_type
      Src: /src/gpac/src/filters/dmx_mpegps.c:146,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_mpegps.c:151,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_mpegps.c:156,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_mpegps.c:158,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_mpegps.c:160,1
    - Dst: mpeg2ps_get_audio_stream_id
      Src: /src/gpac/src/filters/dmx_mpegps.c:164,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dmx_mpegps.c:167,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_mpegps.c:168,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dmx_mpegps.c:169,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:170,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:170,1
    - Dst: mpeg2ps_get_audio_stream_type
      Src: /src/gpac/src/filters/dmx_mpegps.c:171,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:173,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:173,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:176,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:176,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:177,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_mpegps.c:177,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:180,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:180,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_mpegps.c:180,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:185,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:185,1
    - Dst: mpeg2ps_get_audio_stream_sample_freq
      Src: /src/gpac/src/filters/dmx_mpegps.c:185,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:186,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:186,1
    - Dst: mpeg2ps_get_audio_stream_channels
      Src: /src/gpac/src/filters/dmx_mpegps.c:186,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:187,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:187,1
    - Dst: mpeg2ps_get_audio_stream_bitrate
      Src: /src/gpac/src/filters/dmx_mpegps.c:187,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:189,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:189,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:190,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:190,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:191,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:191,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:192,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/dmx_mpegps.c:192,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:193,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_mpegps.c:193,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_mpegps.c:194,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_mpegps.c:194,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:196,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_mpegps.c:196,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 113
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_M2PSDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 64
    functionDepth: 3
    functionLinenumber: 64
    functionLinenumberEnd: 198
    functionName: m2psdmx_setup
    functionSourceFile: /src/gpac/src/filters/dmx_mpegps.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - mpeg2ps_get_video_stream_type
    - mpeg2ps_get_video_stream_width
    - gf_filter_pid_set_property_str
    - gf_list_count
    - PROP_FRAC64
    - gf_filter_pid_new
    - gf_list_get
    - PROP_FRAC
    - mpeg2ps_get_audio_stream_channels
    - mpeg2ps_get_audio_stream_bitrate
    - mpeg2ps_get_video_stream_id
    - sprintf
    - mpeg2ps_get_video_stream_aspect_ratio
    - gf_list_add
    - PROP_BOOL
    - gf_filter_pid_copy_properties
    - mpeg2ps_get_video_stream_height
    - mpeg2ps_get_audio_stream_type
    - mpeg2ps_get_audio_stream_sample_freq
    - mpeg2ps_get_audio_stream_id
    - gf_filter_pid_set_property
    - mpeg2ps_get_video_stream_count
    - mpeg2ps_get_max_time_msec
    - PROP_UINT
    - mpeg2ps_get_video_stream_framerate
    - gf_media_get_video_timing
    - mpeg2ps_get_video_stream_bitrate
    - mpeg2ps_get_audio_stream_count
    - GF_4CC
    - gf_filter_pid_set_name
    - mpeg2ps_get_first_cts
    linkageType: ''
    returnType: void
    signature: void m2psdmx_setup(GF_Filter *filter, GF_M2PSDmxCtx *ctx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_mpegps.c:205,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_mpegps.c:209,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_mpegps.c:210,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dmx_mpegps.c:212,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_mpegps.c:213,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dmx_mpegps.c:217,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_mpegps.c:225,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_mpegps.c:229,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_mpegps.c:232,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_mpegps.c:235,1
    - Dst: mpeg2ps_close
      Src: /src/gpac/src/filters/dmx_mpegps.c:238,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_mpegps.c:239,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_mpegps.c:240,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 201
    functionDepth: 4
    functionLinenumber: 201
    functionLinenumberEnd: 249
    functionName: m2psdmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/dmx_mpegps.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_pop_back
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - GF_FEVT_INIT
    - gf_list_count
    - gf_filter_pid_check_caps
    - strcmp
    - gf_filter_pid_send_event
    - mpeg2ps_close
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err m2psdmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_mpegps.c:254,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dmx_mpegps.c:264,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_mpegps.c:273,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_mpegps.c:274,1
    - Dst: mpeg2ps_seek_video_frame
      Src: /src/gpac/src/filters/dmx_mpegps.c:280,1
    - Dst: mpeg2ps_seek_audio_frame
      Src: /src/gpac/src/filters/dmx_mpegps.c:282,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_mpegps.c:290,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_mpegps.c:291,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 42
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 251
    functionDepth: 10
    functionLinenumber: 251
    functionLinenumberEnd: 308
    functionName: m2psdmx_process_event
    functionSourceFile: /src/gpac/src/filters/dmx_mpegps.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_count
    - mpeg2ps_seek_audio_frame
    - mpeg2ps_seek_video_frame
    - gf_filter_post_process_task
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool m2psdmx_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_mpegps.c:312,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_mpegps.c:316,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/dmx_mpegps.c:320,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_mpegps.c:322,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_mpegps.c:325,1
    - Dst: mpeg2ps_init
      Src: /src/gpac/src/filters/dmx_mpegps.c:327,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/dmx_mpegps.c:330,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_mpegps.c:331,1
    - Dst: m2psdmx_setup
      Src: /src/gpac/src/filters/dmx_mpegps.c:334,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_mpegps.c:340,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_mpegps.c:345,1
    - Dst: mpeg2ps_seek_video_frame
      Src: /src/gpac/src/filters/dmx_mpegps.c:348,1
    - Dst: mpeg2ps_seek_audio_frame
      Src: /src/gpac/src/filters/dmx_mpegps.c:350,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_mpegps.c:362,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_mpegps.c:368,1
    - Dst: mpeg2ps_get_video_frame
      Src: /src/gpac/src/filters/dmx_mpegps.c:373,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_mpegps.c:384,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_mpegps.c:387,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_mpegps.c:388,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dmx_mpegps.c:394,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_mpegps.c:395,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dmx_mpegps.c:396,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dmx_mpegps.c:398,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_mpegps.c:400,1
    - Dst: mpeg2ps_get_audio_frame
      Src: /src/gpac/src/filters/dmx_mpegps.c:403,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_mpegps.c:408,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_mpegps.c:411,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_mpegps.c:414,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dmx_mpegps.c:415,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dmx_mpegps.c:417,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_mpegps.c:419,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_mpegps.c:421,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_mpegps.c:427,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_mpegps.c:428,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 98
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 310
    functionDepth: 11
    functionLinenumber: 310
    functionLinenumberEnd: 433
    functionName: m2psdmx_process
    functionSourceFile: /src/gpac/src/filters/dmx_mpegps.c
    functionUses: 0
    functionsReached:
    - gf_file_exists
    - gf_list_count
    - gf_filter_pid_get_packet
    - gf_list_get
    - gf_filter_pck_get_framing
    - memcpy
    - mpeg2ps_seek_video_frame
    - mpeg2ps_get_audio_frame
    - gf_filter_get_udta
    - mpeg2ps_init
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_filter_pid_would_block
    - m2psdmx_setup
    - gf_filter_pid_set_eos
    - gf_filter_pck_set_sap
    - gf_filter_setup_failure
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_send
    - gf_filter_pck_set_framing
    - mpeg2ps_seek_audio_frame
    - mpeg2ps_get_video_frame
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err m2psdmx_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_mpegps.c:437,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_mpegps.c:438,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 435
    functionDepth: 1
    functionLinenumber: 435
    functionLinenumberEnd: 440
    functionName: m2psdmx_initialize
    functionSourceFile: /src/gpac/src/filters/dmx_mpegps.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err m2psdmx_initialize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_mpegps.c:444,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_mpegps.c:446,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_mpegps.c:447,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_mpegps.c:448,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_mpegps.c:450,1
    - Dst: mpeg2ps_close
      Src: /src/gpac/src/filters/dmx_mpegps.c:451,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 442
    functionDepth: 4
    functionLinenumber: 442
    functionLinenumberEnd: 452
    functionName: m2psdmx_finalize
    functionSourceFile: /src/gpac/src/filters/dmx_mpegps.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_list_count
    - mpeg2ps_close
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void m2psdmx_finalize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 6
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 454
    functionDepth: 0
    functionLinenumber: 454
    functionLinenumberEnd: 462
    functionName: m2psdmx_probe_data
    functionSourceFile: /src/gpac/src/filters/dmx_mpegps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *m2psdmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 497
    functionDepth: 0
    functionLinenumber: 497
    functionLinenumberEnd: 504
    functionName: m2psdmx_register
    functionSourceFile: /src/gpac/src/filters/dmx_mpegps.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *m2psdmx_register(GF_FilterSession *session)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_mpgvid.c:98,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/reframe_mpgvid.c:103,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/reframe_mpgvid.c:108,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:120,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:124,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/reframe_mpgvid.c:131,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:137,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:152,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_mpgvid.c:153,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_mpgvid.c:153,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:155,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_mpgvid.c:156,1
    - Dst: strstr
      Src: /src/gpac/src/filters/reframe_mpgvid.c:156,1
    - Dst: gf_m4v_parser_del_no_bs
      Src: /src/gpac/src/filters/reframe_mpgvid.c:161,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_mpgvid.c:166,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_mpgvid.c:167,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:168,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 70
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 175
    functionName: mpgviddmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/reframe_mpgvid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property_str
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - strstr
    - gf_filter_pid_check_caps
    - gf_m4v_parser_del_no_bs
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mpgviddmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/reframe_mpgvid.c:192,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:195,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mpgvid.c:197,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:210,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_mpgvid.c:211,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/reframe_mpgvid.c:218,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/reframe_mpgvid.c:220,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/filters/reframe_mpgvid.c:227,1
    - Dst: gf_m4v_parser_bs_new
      Src: /src/gpac/src/filters/reframe_mpgvid.c:229,1
    - Dst: gf_m4v_parse_config
      Src: /src/gpac/src/filters/reframe_mpgvid.c:230,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mpgvid.c:232,1
    - Dst: gf_m4v_parser_del
      Src: /src/gpac/src/filters/reframe_mpgvid.c:234,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/reframe_mpgvid.c:235,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_mpgvid.c:241,1
    - Dst: gf_m4v_get_object_start
      Src: /src/gpac/src/filters/reframe_mpgvid.c:247,1
    - Dst: gf_m4v_parse_frame
      Src: /src/gpac/src/filters/reframe_mpgvid.c:248,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mpgvid.c:250,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_mpgvid.c:263,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_mpgvid.c:272,1
    - Dst: gf_m4v_parser_del
      Src: /src/gpac/src/filters/reframe_mpgvid.c:273,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/reframe_mpgvid.c:274,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:280,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_mpgvid.c:280,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:282,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_mpgvid.c:282,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:291,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 90
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_MPGVidDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 178
    functionDepth: 6
    functionLinenumber: 178
    functionLinenumberEnd: 293
    functionName: mpgviddmx_check_dur
    functionSourceFile: /src/gpac/src/filters/reframe_mpgvid.c
    functionUses: 0
    functionsReached:
    - gf_fileio_is_main_thread
    - PROP_FRAC64
    - gf_bs_available
    - gf_realloc
    - gf_m4v_parse_frame
    - strncmp
    - gf_m4v_parser_del
    - PROP_BOOL
    - gf_m4v_parse_config
    - GF_LOG
    - gf_bs_get_position
    - gf_m4v_parser_bs_new
    - gf_m4v_get_object_start
    - gf_bs_from_file
    - gf_filter_pid_set_property
    - gf_fclose
    - gf_filter_pid_get_property
    - gf_fopen_ex
    - gf_opts_get_bool
    linkageType: ''
    returnType: void
    signature: void mpgviddmx_check_dur(GF_Filter *filter, GF_MPGVidDmxCtx *ctx)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/reframe_mpgvid.c:299,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_mpgvid.c:309,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_mpgvid.c:313,1
    - Dst: gf_filter_pck_get_carousel_version
      Src: /src/gpac/src/filters/reframe_mpgvid.c:314,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_mpgvid.c:316,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/src/filters/reframe_mpgvid.c:319,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_mpgvid.c:320,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_mpgvid.c:325,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:328,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_mpgvid.c:330,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/reframe_mpgvid.c:335,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_mpgvid.c:336,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_mpgvid.c:338,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/reframe_mpgvid.c:340,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_mpgvid.c:344,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/reframe_mpgvid.c:345,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 38
    argCount: 4
    argNames:
    - ctx
    - pck
    - flush_ref
    - is_eos
    argTypes:
    - GF_MPGVidDmxCtx*
    - GF_FilterPacket*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 296
    functionDepth: 2
    functionLinenumber: 296
    functionLinenumberEnd: 346
    functionName: mpgviddmx_enqueue_or_dispatch
    functionSourceFile: /src/gpac/src/filters/reframe_mpgvid.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_assert
    - gf_list_new
    - gf_filter_pck_get_framing
    - gf_list_reset
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_framing
    - gf_list_count
    - gf_filter_pck_get_carousel_version
    - gf_list_add
    - gf_filter_pck_get_cts
    - gf_filter_pck_discard
    - gf_filter_pck_set_carousel_version
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void mpgviddmx_enqueue_or_dispatch(GF_MPGVidDmxCtx *ctx, GF_FilterPacket
      *pck, Bool flush_ref, Bool is_eos)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_mpgvid.c:352,1
    - Dst: mpgviddmx_check_dur
      Src: /src/gpac/src/filters/reframe_mpgvid.c:353,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_mpgvid.c:359,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:362,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_mpgvid.c:362,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:364,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_mpgvid.c:364,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:365,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mpgvid.c:365,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:366,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mpgvid.c:366,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:369,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:370,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/reframe_mpgvid.c:370,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:372,1
    - Dst: mpgviddmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_mpgvid.c:375,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:382,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mpgvid.c:382,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:383,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mpgvid.c:383,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:384,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/reframe_mpgvid.c:384,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:387,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:412,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mpgvid.c:412,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:414,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mpgvid.c:414,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:416,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mpgvid.c:416,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:419,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mpgvid.c:419,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/reframe_mpgvid.c:426,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mpgvid.c:427,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_mpgvid.c:436,1
    - Dst: memchr
      Src: /src/gpac/src/filters/reframe_mpgvid.c:440,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:447,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/reframe_mpgvid.c:447,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:451,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mpgvid.c:451,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:454,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mpgvid.c:454,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:457,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_mpgvid.c:457,1
    - Dst: mpgviddmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_mpgvid.c:460,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 93
    argCount: 4
    argNames:
    - filter
    - ctx
    - vosh_size
    - data
    argTypes:
    - GF_Filter*
    - GF_MPGVidDmxCtx*
    - u32
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 348
    functionDepth: 7
    functionLinenumber: 348
    functionLinenumberEnd: 462
    functionName: mpgviddmx_check_pid
    functionSourceFile: /src/gpac/src/filters/reframe_mpgvid.c
    functionUses: 0
    functionsReached:
    - PROP_BOOL
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - gf_filter_pid_get_property
    - PROP_FRAC
    - memcpy
    - strncmp
    - PROP_DATA_NO_COPY
    - memchr
    - PROP_FRAC64
    - gf_filter_pid_new
    - mpgviddmx_enqueue_or_dispatch
    - mpgviddmx_check_dur
    - gf_filter_pid_set_property
    - gf_malloc
    - PROP_FRAC_INT
    linkageType: ''
    returnType: void
    signature: void mpgviddmx_check_pid(GF_Filter *filter, GF_MPGVidDmxCtx *ctx, u32
      vosh_size, u8 *data)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_mpgvid.c:469,1
    - Dst: mpgviddmx_check_dur
      Src: /src/gpac/src/filters/reframe_mpgvid.c:493,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_mpgvid.c:514,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_mpgvid.c:516,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mpgvid.c:523,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_mpgvid.c:526,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/reframe_mpgvid.c:527,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/reframe_mpgvid.c:528,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 63
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 543
      start: 464
    functionDepth: 7
    functionLinenumber: 464
    functionLinenumberEnd: 543
    functionName: mpgviddmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_mpgvid.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_front
    - GF_FEVT_INIT
    - gf_filter_pck_unref
    - gf_list_count
    - gf_filter_pid_send_event
    - gf_filter_pck_discard
    - mpgviddmx_check_dur
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool mpgviddmx_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:547,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:561,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MPGVidDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 545
    functionDepth: 1
    functionLinenumber: 545
    functionLinenumberEnd: 565
    functionName: mpgviddmx_update_time
    functionSourceFile: /src/gpac/src/filters/reframe_mpgvid.c
    functionUses: 0
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE mpgviddmx_update_time(GF_MPGVidDmxCtx *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:593,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 568
    functionDepth: 1
    functionLinenumber: 568
    functionLinenumberEnd: 595
    functionName: mpgviddmx_next_start_code
    functionSourceFile: /src/gpac/src/filters/reframe_mpgvid.c
    functionUses: 0
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: s32
    signature: s32 mpgviddmx_next_start_code(u8 *data, u32 size)
  - BBCount: 120
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_mpgvid.c:599,1
    - Dst: mpgviddmx_check_dur
      Src: /src/gpac/src/filters/reframe_mpgvid.c:612,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_mpgvid.c:614,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_mpgvid.c:616,1
    - Dst: mpgviddmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_mpgvid.c:617,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_mpgvid.c:619,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mpgvid.c:620,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_mpgvid.c:627,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_mpgvid.c:628,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_mpgvid.c:636,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframe_mpgvid.c:641,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/reframe_mpgvid.c:661,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mpgvid.c:666,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_mpgvid.c:668,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_mpgvid.c:675,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mpgvid.c:677,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/reframe_mpgvid.c:690,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:695,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:699,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_mpgvid.c:707,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_mpgvid.c:709,1
    - Dst: gf_m4v_parser_bs_new
      Src: /src/gpac/src/filters/reframe_mpgvid.c:712,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mpgvid.c:734,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_mpgvid.c:746,1
    - Dst: mpgviddmx_next_start_code
      Src: /src/gpac/src/filters/reframe_mpgvid.c:747,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_mpgvid.c:752,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_mpgvid.c:755,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_mpgvid.c:756,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_mpgvid.c:757,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_mpgvid.c:758,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mpgvid.c:759,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_mpgvid.c:760,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_mpgvid.c:763,1
    - Dst: mpgviddmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_mpgvid.c:766,1
    - Dst: mpgviddmx_next_start_code
      Src: /src/gpac/src/filters/reframe_mpgvid.c:790,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mpgvid.c:795,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:805,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_mpgvid.c:810,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_mpgvid.c:813,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mpgvid.c:814,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_mpgvid.c:815,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_mpgvid.c:816,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_mpgvid.c:817,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_mpgvid.c:820,1
    - Dst: mpgviddmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_mpgvid.c:823,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mpgvid.c:825,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:831,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:835,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:842,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_mpgvid.c:850,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_mpgvid.c:853,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_mpgvid.c:854,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_mpgvid.c:855,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_mpgvid.c:856,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_mpgvid.c:860,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:862,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mpgvid.c:864,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_mpgvid.c:868,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mpgvid.c:870,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:871,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/src/filters/reframe_mpgvid.c:876,1
    - Dst: mpgviddmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_mpgvid.c:877,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mpgvid.c:885,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_mpgvid.c:893,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_mpgvid.c:896,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mpgvid.c:897,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mpgvid.c:898,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_mpgvid.c:905,1
    - Dst: gf_m4v_parse_config
      Src: /src/gpac/src/filters/reframe_mpgvid.c:906,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_mpgvid.c:911,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_mpgvid.c:916,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_mpgvid.c:918,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_mpgvid.c:921,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mpgvid.c:924,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/reframe_mpgvid.c:924,1
    - Dst: gf_m4v_get_object_start
      Src: /src/gpac/src/filters/reframe_mpgvid.c:926,1
    - Dst: mpgviddmx_check_pid
      Src: /src/gpac/src/filters/reframe_mpgvid.c:930,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_mpgvid.c:943,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:946,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_mpgvid.c:951,1
    - Dst: gf_m4v_parse_config
      Src: /src/gpac/src/filters/reframe_mpgvid.c:953,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_mpgvid.c:959,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_mpgvid.c:964,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_mpgvid.c:966,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_mpgvid.c:969,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mpgvid.c:972,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/reframe_mpgvid.c:972,1
    - Dst: gf_m4v_get_object_start
      Src: /src/gpac/src/filters/reframe_mpgvid.c:974,1
    - Dst: mpgviddmx_check_pid
      Src: /src/gpac/src/filters/reframe_mpgvid.c:978,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:980,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:994,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_mpgvid.c:998,1
    - Dst: gf_m4v_parse_config
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1000,1
    - Dst: gf_m4v_get_object_start
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1002,1
    - Dst: mpgviddmx_check_pid
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1006,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1008,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1022,1
    - Dst: gf_m4v_parser_reset
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1047,1
    - Dst: gf_m4v_parse_frame
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1049,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1058,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1061,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1062,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1063,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1064,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1065,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1068,1
    - Dst: mpgviddmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1072,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1093,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1106,1
    - Dst: mpgviddmx_update_time
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1124,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1133,1
    - Dst: mpgviddmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1150,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1166,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1169,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1172,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1173,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1176,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1178,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1181,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1183,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1188,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1189,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1190,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1192,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1193,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1194,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1200,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1202,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1203,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1204,1
    - Dst: mpgviddmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1207,1
    - Dst: mpgviddmx_update_time
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1209,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1211,1
    - Dst: mpgviddmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1212,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1217,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1221,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1225,1
    CyclomaticComplexity: 148
    EdgeCount: 148
    ICount: 504
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1228
      start: 597
    functionDepth: 8
    functionLinenumber: 597
    functionLinenumberEnd: 1228
    functionName: mpgviddmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_mpgvid.c
    functionUses: 0
    functionsReached:
    - mpgviddmx_next_start_code
    - gf_bs_new
    - gf_filter_pck_ref_props
    - mpgviddmx_check_dur
    - gf_filter_pid_get_packet
    - gf_realloc
    - gf_assert
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_get_framing
    - memcpy
    - gf_m4v_parse_frame
    - gf_filter_pck_get_cts
    - mpgviddmx_enqueue_or_dispatch
    - gf_filter_pck_set_carousel_version
    - gf_filter_get_udta
    - gf_m4v_parse_config
    - memmove
    - gf_filter_pck_new_alloc
    - gf_filter_pid_drop_packet
    - mpgviddmx_update_time
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_filter_pid_would_block
    - gf_filter_pid_set_eos
    - gf_m4v_parser_bs_new
    - gf_m4v_get_object_start
    - gf_filter_pck_set_sap
    - gf_error_to_string
    - gf_filter_pid_is_eos
    - gf_bs_read_u8
    - gf_bs_reassign_buffer
    - gf_m4v_parser_reset
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_unref
    - gf_filter_pck_set_framing
    - mpgviddmx_check_pid
    - gf_filter_pck_get_byte_offset
    - gf_bs_read_int
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mpgviddmx_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1232,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1237
      start: 1230
    functionDepth: 1
    functionLinenumber: 1230
    functionLinenumberEnd: 1237
    functionName: mpgviddmx_initialize
    functionSourceFile: /src/gpac/src/filters/reframe_mpgvid.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mpgviddmx_initialize(GF_Filter *filter)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1241,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1242,1
    - Dst: gf_m4v_parser_del_no_bs
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1243,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1244,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1245,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1247,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1248,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1249,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1251,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1253,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1255,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1257,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1260,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1263
      start: 1239
    functionDepth: 3
    functionLinenumber: 1239
    functionLinenumberEnd: 1263
    functionName: mpgviddmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_mpgvid.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - GF_LOG
    - gf_bs_del
    - gf_list_count
    - gf_filter_pck_unref
    - gf_m4v_parser_del_no_bs
    - gf_filter_pck_discard
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void mpgviddmx_finalize(GF_Filter *filter)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1277,1
    - Dst: gf_m4v_parser_new
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1278,1
    - Dst: gf_m4v_parse_frame
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1284,1
    - Dst: gf_m4v_parser_get_obj_type
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1287,1
    - Dst: gf_m4v_parser_del
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1321,1
    - Dst: memset
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1327,1
    - Dst: gf_m4v_parser_new
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1328,1
    - Dst: gf_m4v_parse_frame
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1333,1
    - Dst: gf_m4v_parser_del
      Src: /src/gpac/src/filters/reframe_mpgvid.c:1349,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 79
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1355
      start: 1267
    functionDepth: 4
    functionLinenumber: 1267
    functionLinenumberEnd: 1355
    functionName: mpgvdmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_mpgvid.c
    functionUses: 0
    functionsReached:
    - gf_m4v_parser_new
    - gf_m4v_parse_frame
    - memset
    - gf_m4v_parser_del
    - gf_m4v_parser_get_obj_type
    linkageType: ''
    returnType: char
    signature: char * mpgvdmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1387
      start: 1386
    functionDepth: 0
    functionLinenumber: 1386
    functionLinenumberEnd: 1387
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/reframe_mpgvid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1419
      start: 1416
    functionDepth: 0
    functionLinenumber: 1416
    functionLinenumberEnd: 1419
    functionName: rfmpgvid_register
    functionSourceFile: /src/gpac/src/filters/reframe_mpgvid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfmpgvid_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1424
      start: 1421
    functionDepth: 0
    functionLinenumber: 1421
    functionLinenumberEnd: 1424
    functionName: rfmpgvid_register
    functionSourceFile: /src/gpac/src/filters/reframe_mpgvid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfmpgvid_register(GF_FilterSession *session)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - stream
    - e
    argTypes:
    - GF_RTPInStream*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 43
    functionName: rtpin_stream_ack_connect
    functionSourceFile: /src/gpac/src/filters/in_rtp_stream.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void rtpin_stream_ack_connect(GF_RTPInStream *stream, GF_Err e)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_depacketizer_reset
      Src: /src/gpac/src/filters/in_rtp_stream.c:47,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/filters/in_rtp_stream.c:56,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/filters/in_rtp_stream.c:58,1
    - Dst: gf_rtp_set_ssm
      Src: /src/gpac/src/filters/in_rtp_stream.c:60,1
    - Dst: gf_rtp_initialize
      Src: /src/gpac/src/filters/in_rtp_stream.c:62,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/filters/in_rtp_stream.c:66,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/filters/in_rtp_stream.c:68,1
    - Dst: gf_rtp_reset_buffers
      Src: /src/gpac/src/filters/in_rtp_stream.c:72,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 2
    argNames:
    - stream
    - ResetOnly
    argTypes:
    - GF_RTPInStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 45
    functionDepth: 2
    functionLinenumber: 45
    functionLinenumberEnd: 74
    functionName: rtpin_stream_init
    functionSourceFile: /src/gpac/src/filters/in_rtp_stream.c
    functionUses: 3
    functionsReached:
    - gf_rtp_set_ssm
    - gf_rtp_reset_buffers
    - gf_sk_group_register
    - gf_sk_group_unregister
    - gf_rtp_initialize
    - gf_rtp_depacketizer_reset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpin_stream_init(GF_RTPInStream *stream, Bool ResetOnly)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp_stream.c:79,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/in_rtp_stream.c:80,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/in_rtp_stream.c:81,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - stream
    argTypes:
    - GF_RTPInStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 76
    functionDepth: 3
    functionLinenumber: 76
    functionLinenumberEnd: 83
    functionName: rtpin_stream_reset_queue
    functionSourceFile: /src/gpac/src/filters/in_rtp_stream.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_filter_pck_discard
    - gf_list_pop_back
    linkageType: ''
    returnType: void
    signature: void rtpin_stream_reset_queue(GF_RTPInStream *stream)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: rtpin_rtsp_teardown
      Src: /src/gpac/src/filters/in_rtp_stream.c:89,1
    - Dst: rtpin_remove_stream
      Src: /src/gpac/src/filters/in_rtp_stream.c:92,1
    - Dst: rtpin_find_stream
      Src: /src/gpac/src/filters/in_rtp_stream.c:94,1
    - Dst: gf_rtp_depacketizer_del
      Src: /src/gpac/src/filters/in_rtp_stream.c:97,1
    - Dst: gf_rtp_del
      Src: /src/gpac/src/filters/in_rtp_stream.c:98,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_stream.c:99,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_stream.c:100,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_stream.c:101,1
    - Dst: rtpin_stream_reset_queue
      Src: /src/gpac/src/filters/in_rtp_stream.c:103,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/in_rtp_stream.c:104,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_stream.c:106,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 1
    argNames:
    - stream
    argTypes:
    - GF_RTPInStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 85
    functionDepth: 4
    functionLinenumber: 85
    functionLinenumberEnd: 107
    functionName: rtpin_stream_del
    functionSourceFile: /src/gpac/src/filters/in_rtp_stream.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_rtp_depacketizer_del
    - rtpin_stream_reset_queue
    - rtpin_find_stream
    - gf_rtp_del
    - rtpin_rtsp_teardown
    - rtpin_remove_stream
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void rtpin_stream_del(GF_RTPInStream *stream)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp_stream.c:117,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/in_rtp_stream.c:119,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/in_rtp_stream.c:121,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_rtp_stream.c:122,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_rtp_stream.c:125,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp_stream.c:127,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/in_rtp_stream.c:128,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_rtp_stream.c:129,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 3
    argNames:
    - stream
    - pck
    - cts
    argTypes:
    - GF_RTPInStream*
    - GF_FilterPacket*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 109
    functionDepth: 2
    functionLinenumber: 109
    functionLinenumberEnd: 131
    functionName: rtpin_stream_queue_pck
    functionSourceFile: /src/gpac/src/filters/in_rtp_stream.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_pop_front
    - gf_list_count
    - gf_list_add
    - gf_filter_pck_get_cts
    - gf_list_rem
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void rtpin_stream_queue_pck(GF_RTPInStream *stream, GF_FilterPacket
      *pck, u64 cts)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_stream.c:144,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_stream.c:145,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_stream.c:147,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_stream.c:148,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_stream.c:150,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_rtp_stream.c:166,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_rtp_stream.c:173,1
    - Dst: gf_rtp_is_disc
      Src: /src/gpac/src/filters/in_rtp_stream.c:178,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/in_rtp_stream.c:187,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/in_rtp_stream.c:190,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/in_rtp_stream.c:192,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/in_rtp_stream.c:194,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/in_rtp_stream.c:202,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/in_rtp_stream.c:211,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/in_rtp_stream.c:213,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_stream.c:217,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_stream.c:217,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_stream.c:221,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_stream.c:221,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/in_rtp_stream.c:223,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_rtp_stream.c:227,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/in_rtp_stream.c:227,1
    - Dst: gf_net_ntp_to_utc
      Src: /src/gpac/src/filters/in_rtp_stream.c:233,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/in_rtp_stream.c:237,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/in_rtp_stream.c:239,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/in_rtp_stream.c:239,1
    - Dst: gf_rtp_get_current_time
      Src: /src/gpac/src/filters/in_rtp_stream.c:247,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/in_rtp_stream.c:249,1
    - Dst: PROP_DOUBLE
      Src: /src/gpac/src/filters/in_rtp_stream.c:249,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_stream.c:251,1
    - Dst: gf_filter_pck_set_corrupted
      Src: /src/gpac/src/filters/in_rtp_stream.c:258,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/in_rtp_stream.c:262,1
    - Dst: rtpin_stream_queue_pck
      Src: /src/gpac/src/filters/in_rtp_stream.c:266,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_rtp_stream.c:268,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 103
    argCount: 5
    argNames:
    - udta
    - payload
    - size
    - hdr
    - e
    argTypes:
    - void*
    - u8*
    - u32
    - GF_SLHeader*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 133
    functionDepth: 3
    functionLinenumber: 133
    functionLinenumberEnd: 273
    functionName: rtp_sl_packet_cbk
    functionSourceFile: /src/gpac/src/filters/in_rtp_stream.c
    functionUses: 0
    functionsReached:
    - gf_timestamp_rescale_signed
    - PROP_DATA
    - gf_net_ntp_to_utc
    - PROP_LONGUINT
    - gf_sys_clock
    - gf_assert
    - gf_filter_pck_set_property
    - memcpy
    - rtpin_stream_queue_pck
    - gf_filter_pck_set_corrupted
    - PROP_DOUBLE
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_filter_pid_set_property
    - gf_timestamp_rescale
    - PROP_UINT
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_seek_flag
    - gf_rtp_get_current_time
    - gf_filter_pck_set_framing
    - gf_rtp_is_disc
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void rtp_sl_packet_cbk(void *udta, u8 *payload, u32 size, GF_SLHeader
      *hdr, GF_Err e)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/in_rtp_stream.c:279,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/in_rtp_stream.c:282,1
    - Dst: gf_rtp_new_ex
      Src: /src/gpac/src/filters/in_rtp_stream.c:285,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/in_rtp_stream.c:285,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_rtp_stream.c:287,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_stream.c:291,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/filters/in_rtp_stream.c:296,1
    - Dst: gf_rtp_setup_transport
      Src: /src/gpac/src/filters/in_rtp_stream.c:303,1
    - Dst: rtpin_stream_del
      Src: /src/gpac/src/filters/in_rtp_stream.c:304,1
    - Dst: gf_rtp_setup_payload
      Src: /src/gpac/src/filters/in_rtp_stream.c:309,1
    - Dst: gf_rtp_enable_nat_keepalive
      Src: /src/gpac/src/filters/in_rtp_stream.c:315,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 32
    argCount: 4
    argNames:
    - rtp
    - flow_ip
    - port
    - for_satip
    argTypes:
    - GF_RTPIn*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 275
    functionDepth: 5
    functionLinenumber: 275
    functionLinenumberEnd: 320
    functionName: rtpin_stream_new_standalone
    functionSourceFile: /src/gpac/src/filters/in_rtp_stream.c
    functionUses: 1
    functionsReached:
    - gf_strdup
    - gf_rtp_enable_nat_keepalive
    - GF_SAFEALLOC
    - gf_filter_get_netcap_id
    - gf_rtp_setup_payload
    - gf_sk_is_multicast_address
    - memset
    - gf_rtp_new_ex
    - rtpin_stream_del
    - gf_rtp_setup_transport
    - gf_malloc
    linkageType: ''
    returnType: GF_RTPInStream
    signature: GF_RTPInStream *rtpin_stream_new_standalone(GF_RTPIn *rtp, const char
      *flow_ip, u32 port, Bool for_satip)
  - BBCount: 48
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/in_rtp_stream.c:347,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:348,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:349,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:350,1
    - Dst: atoi
      Src: /src/gpac/src/filters/in_rtp_stream.c:350,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:351,1
    - Dst: atoi
      Src: /src/gpac/src/filters/in_rtp_stream.c:351,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:352,1
    - Dst: gf_rtsp_range_parse
      Src: /src/gpac/src/filters/in_rtp_stream.c:352,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:353,1
    - Dst: atoi
      Src: /src/gpac/src/filters/in_rtp_stream.c:354,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:355,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:357,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/in_rtp_stream.c:358,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:359,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_rtp_stream.c:361,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/in_rtp_stream.c:362,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp_stream.c:363,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/in_rtp_stream.c:364,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_rtp_stream.c:366,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/in_rtp_stream.c:368,1
    - Dst: gf_rtsp_range_del
      Src: /src/gpac/src/filters/in_rtp_stream.c:376,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:381,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp_stream.c:383,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:384,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:388,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:389,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:389,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:391,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:392,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:392,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:395,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:395,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:396,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:396,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp_stream.c:400,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp_stream.c:403,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_rtp_stream.c:406,1
    - Dst: rtpin_find_stream
      Src: /src/gpac/src/filters/in_rtp_stream.c:416,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/in_rtp_stream.c:419,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/in_rtp_stream.c:422,1
    - Dst: gf_rtp_new_ex
      Src: /src/gpac/src/filters/in_rtp_stream.c:426,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/in_rtp_stream.c:426,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_stream.c:427,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_rtp_stream.c:434,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/filters/in_rtp_stream.c:437,1
    - Dst: gf_rtp_setup_transport
      Src: /src/gpac/src/filters/in_rtp_stream.c:449,1
    - Dst: rtpin_stream_del
      Src: /src/gpac/src/filters/in_rtp_stream.c:450,1
    - Dst: gf_rtp_depacketizer_new
      Src: /src/gpac/src/filters/in_rtp_stream.c:454,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_stream.c:456,1
    - Dst: rtpin_stream_del
      Src: /src/gpac/src/filters/in_rtp_stream.c:457,1
    - Dst: gf_rtp_setup_payload
      Src: /src/gpac/src/filters/in_rtp_stream.c:461,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_rtp_stream.c:464,1
    - Dst: gf_rtp_enable_nat_keepalive
      Src: /src/gpac/src/filters/in_rtp_stream.c:472,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:486,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp_stream.c:486,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_rtp_stream.c:487,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp_stream.c:489,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/in_rtp_stream.c:490,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/filters/in_rtp_stream.c:491,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp_stream.c:491,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:494,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:495,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp_stream.c:495,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_stream.c:501,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_stream.c:502,1
    - Dst: gf_gz_decompress_payload_ex
      Src: /src/gpac/src/filters/in_rtp_stream.c:505,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_stream.c:506,1
    CyclomaticComplexity: 66
    EdgeCount: 66
    ICount: 167
    argCount: 4
    argNames:
    - rtp
    - media
    - sdp
    - input_stream
    argTypes:
    - GF_RTPIn*
    - GF_SDPMedia*
    - GF_SDPInfo*
    - GF_RTPInStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 322
    functionDepth: 5
    functionLinenumber: 322
    functionLinenumberEnd: 516
    functionName: rtpin_stream_new
    functionSourceFile: /src/gpac/src/filters/in_rtp_stream.c
    functionUses: 1
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - gf_rtsp_range_parse
    - gf_list_count
    - memset
    - atoi
    - gf_rtp_setup_transport
    - strchr
    - gf_list_get
    - gf_strdup
    - gf_list_new
    - gf_rtp_enable_nat_keepalive
    - gf_gz_decompress_payload_ex
    - strncmp
    - rtpin_stream_del
    - stricmp
    - sscanf
    - rtpin_find_stream
    - GF_LOG
    - gf_filter_get_netcap_id
    - strstr
    - strnicmp
    - gf_list_enum
    - gf_malloc
    - strlen
    - gf_base64_decode
    - gf_rtp_setup_payload
    - gf_sk_is_multicast_address
    - strcmp
    - gf_rtp_new_ex
    - gf_rtp_depacketizer_new
    - gf_rtsp_range_del
    linkageType: ''
    returnType: GF_RTPInStream
    signature: GF_RTPInStream *rtpin_stream_new(GF_RTPIn *rtp, GF_SDPMedia *media,
      GF_SDPInfo *sdp, GF_RTPInStream *input_stream)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/in_rtp_stream.c:524,1
    - Dst: PROP_FLOAT
      Src: /src/gpac/src/filters/in_rtp_stream.c:524,1
    - Dst: gf_rtp_get_loss
      Src: /src/gpac/src/filters/in_rtp_stream.c:524,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/in_rtp_stream.c:526,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_stream.c:526,1
    - Dst: gf_rtsp_get_session_port
      Src: /src/gpac/src/filters/in_rtp_stream.c:526,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/in_rtp_stream.c:527,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_stream.c:527,1
    - Dst: gf_rtp_get_low_interleave_id
      Src: /src/gpac/src/filters/in_rtp_stream.c:527,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/in_rtp_stream.c:528,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_stream.c:528,1
    - Dst: gf_rtp_get_hight_interleave_id
      Src: /src/gpac/src/filters/in_rtp_stream.c:528,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/in_rtp_stream.c:531,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_stream.c:531,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/in_rtp_stream.c:532,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_stream.c:532,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_stream.c:537,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/in_rtp_stream.c:544,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_stream.c:544,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/in_rtp_stream.c:549,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_stream.c:549,1
    - Dst: gf_rtp_get_tcp_bytes_sent
      Src: /src/gpac/src/filters/in_rtp_stream.c:551,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/in_rtp_stream.c:554,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_rtp_stream.c:554,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 31
    argCount: 1
    argNames:
    - stream
    argTypes:
    - GF_RTPInStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 518
    functionDepth: 1
    functionLinenumber: 518
    functionLinenumberEnd: 555
    functionName: rtpin_stream_update_stats
    functionSourceFile: /src/gpac/src/filters/in_rtp_stream.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_info_str
    - gf_rtp_get_tcp_bytes_sent
    - gf_rtsp_get_session_port
    - PROP_UINT
    - gf_rtp_get_low_interleave_id
    - gf_rtp_get_loss
    - gf_rtp_get_hight_interleave_id
    - gf_sys_clock
    - PROP_FLOAT
    linkageType: ''
    returnType: void
    signature: void rtpin_stream_update_stats(GF_RTPInStream *stream)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_decode_rtp
      Src: /src/gpac/src/filters/in_rtp_stream.c:567,1
    - Dst: gf_rtp_depacketizer_new
      Src: /src/gpac/src/filters/in_rtp_stream.c:575,1
    - Dst: rtpin_declare_pid
      Src: /src/gpac/src/filters/in_rtp_stream.c:581,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_stream.c:589,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_stream.c:610,1
    - Dst: gf_rtp_get_current_time
      Src: /src/gpac/src/filters/in_rtp_stream.c:616,1
    - Dst: gf_rtp_depacketizer_process
      Src: /src/gpac/src/filters/in_rtp_stream.c:637,1
    - Dst: gf_rtp_get_clockrate
      Src: /src/gpac/src/filters/in_rtp_stream.c:643,1
    - Dst: ABSDIFF
      Src: /src/gpac/src/filters/in_rtp_stream.c:644,1
    - Dst: gf_rtp_get_current_time
      Src: /src/gpac/src/filters/in_rtp_stream.c:644,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_stream.c:646,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_rtp_stream.c:647,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_stream.c:652,1
    - Dst: rtpin_stream_update_stats
      Src: /src/gpac/src/filters/in_rtp_stream.c:655,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 67
    argCount: 3
    argNames:
    - stream
    - pck
    - size
    argTypes:
    - GF_RTPInStream*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 558
    functionDepth: 5
    functionLinenumber: 558
    functionLinenumberEnd: 658
    functionName: rtpin_stream_on_rtp_pck
    functionSourceFile: /src/gpac/src/filters/in_rtp_stream.c
    functionUses: 2
    functionsReached:
    - ABSDIFF
    - rtpin_declare_pid
    - GF_LOG
    - gf_rtp_get_clockrate
    - gf_sys_clock
    - gf_rtp_get_current_time
    - gf_filter_pid_set_eos
    - rtpin_stream_update_stats
    - gf_rtp_depacketizer_new
    - gf_rtp_depacketizer_process
    - gf_rtp_decode_rtp
    linkageType: ''
    returnType: void
    signature: void rtpin_stream_on_rtp_pck(GF_RTPInStream *stream, char *pck, u32
      size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp_stream.c:662,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp_stream.c:666,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp_stream.c:676,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/in_rtp_stream.c:680,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_RTPIn*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 683
      start: 660
    functionDepth: 1
    functionLinenumber: 660
    functionLinenumberEnd: 683
    functionName: rtpin_adjust_sync
    functionSourceFile: /src/gpac/src/filters/in_rtp_stream.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_timestamp_rescale
    linkageType: ''
    returnType: void
    signature: void rtpin_adjust_sync(GF_RTPIn *ctx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtp_decode_rtcp
      Src: /src/gpac/src/filters/in_rtp_stream.c:695,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/in_rtp_stream.c:709,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_stream.c:714,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_stream.c:714,1
    - Dst: rtpin_adjust_sync
      Src: /src/gpac/src/filters/in_rtp_stream.c:719,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 3
    argNames:
    - stream
    - pck
    - size
    argTypes:
    - GF_RTPInStream*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 685
    functionDepth: 2
    functionLinenumber: 685
    functionLinenumberEnd: 728
    functionName: rtpin_stream_on_rtcp_pck
    functionSourceFile: /src/gpac/src/filters/in_rtp_stream.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_rtp_decode_rtcp
    - gf_timestamp_rescale
    - gf_sys_clock
    - rtpin_adjust_sync
    linkageType: ''
    returnType: void
    signature: void rtpin_stream_on_rtcp_pck(GF_RTPInStream *stream, char *pck, u32
      size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: rtpin_stream_on_rtcp_pck
      Src: /src/gpac/src/filters/in_rtp_stream.c:735,1
    - Dst: rtpin_stream_on_rtp_pck
      Src: /src/gpac/src/filters/in_rtp_stream.c:737,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 5
    argNames:
    - sess
    - cbk
    - buffer
    - bufferSize
    - IsRTCP
    argTypes:
    - GF_RTSPSession*
    - void*
    - u8*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 740
      start: 730
    functionDepth: 6
    functionLinenumber: 730
    functionLinenumberEnd: 740
    functionName: rtpin_rtsp_data_cbk
    functionSourceFile: /src/gpac/src/filters/in_rtp_stream.c
    functionUses: 0
    functionsReached:
    - rtpin_stream_on_rtp_pck
    - rtpin_stream_on_rtcp_pck
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpin_rtsp_data_cbk(GF_RTSPSession *sess, void *cbk, u8 *buffer,
      u32 bufferSize, Bool IsRTCP)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/filters/in_rtp_stream.c:749,1
    - Dst: gf_rtp_read_rtcp
      Src: /src/gpac/src/filters/in_rtp_stream.c:750,1
    - Dst: rtpin_stream_on_rtcp_pck
      Src: /src/gpac/src/filters/in_rtp_stream.c:753,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/filters/in_rtp_stream.c:758,1
    - Dst: gf_rtp_read_rtp
      Src: /src/gpac/src/filters/in_rtp_stream.c:759,1
    - Dst: rtpin_stream_on_rtp_pck
      Src: /src/gpac/src/filters/in_rtp_stream.c:762,1
    - Dst: gf_rtp_set_loss_rate
      Src: /src/gpac/src/filters/in_rtp_stream.c:771,1
    - Dst: gf_rtp_send_rtcp_report
      Src: /src/gpac/src/filters/in_rtp_stream.c:772,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_stream.c:782,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_stream.c:784,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_stream.c:788,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_stream.c:793,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 55
    argCount: 1
    argNames:
    - stream
    argTypes:
    - GF_RTPInStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 807
      start: 744
    functionDepth: 6
    functionLinenumber: 744
    functionLinenumberEnd: 807
    functionName: rtpin_stream_read
    functionSourceFile: /src/gpac/src/filters/in_rtp_stream.c
    functionUses: 1
    functionsReached:
    - rtpin_stream_on_rtp_pck
    - rtpin_stream_on_rtcp_pck
    - gf_rtp_send_rtcp_report
    - GF_LOG
    - gf_rtp_read_rtcp
    - gf_rtp_set_loss_rate
    - gf_rtp_read_rtp
    - gf_sk_group_sock_is_set
    - gf_sys_clock
    linkageType: ''
    returnType: u32
    signature: u32 rtpin_stream_read(GF_RTPInStream *stream)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_adts.c:82,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/rewrite_adts.c:87,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/rewrite_adts.c:92,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_adts.c:95,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/rewrite_adts.c:115,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/rewrite_adts.c:118,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/rewrite_adts.c:119,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/rewrite_adts.c:120,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/rewrite_adts.c:120,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/rewrite_adts.c:122,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/rewrite_adts.c:122,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/rewrite_adts.c:124,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_adts.c:126,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_adts.c:132,1
    - Dst: memset
      Src: /src/gpac/src/filters/rewrite_adts.c:137,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_adts.c:143,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/rewrite_adts.c:146,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/filters/rewrite_adts.c:150,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_adts.c:155,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_adts.c:167,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/filters/rewrite_adts.c:169,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewrite_adts.c:176,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewrite_adts.c:180,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewrite_adts.c:186,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewrite_adts.c:192,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewrite_adts.c:202,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewrite_adts.c:207,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/rewrite_adts.c:211,1
    - Dst: gf_m4a_write_program_config_element_bs
      Src: /src/gpac/src/filters/rewrite_adts.c:212,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/rewrite_adts.c:213,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/rewrite_adts.c:215,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/rewrite_adts.c:216,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/rewrite_adts.c:218,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_adts.c:222,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/rewrite_adts.c:239,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/rewrite_adts.c:239,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 128
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 77
    functionDepth: 9
    functionLinenumber: 77
    functionLinenumberEnd: 241
    functionName: adtsmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/rewrite_adts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - gf_filter_pid_check_caps
    - memset
    - gf_filter_pid_new
    - gf_bs_get_content
    - PROP_BOOL
    - gf_crc_32
    - gf_filter_get_udta
    - gf_filter_pid_copy_properties
    - gf_m4a_get_config
    - GF_LOG
    - gf_filter_pid_set_property
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - gf_m4a_write_program_config_element_bs
    - gf_bs_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err adtsmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_adts.c:247,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/rewrite_adts.c:252,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/rewrite_adts.c:254,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/rewrite_adts.c:255,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/rewrite_adts.c:261,1
    - Dst: gf_filter_pck_has_properties
      Src: /src/gpac/src/filters/rewrite_adts.c:265,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/rewrite_adts.c:266,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewrite_adts.c:268,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/rewrite_adts.c:276,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/rewrite_adts.c:279,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/rewrite_adts.c:280,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:282,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:283,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/rewrite_adts.c:285,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/rewrite_adts.c:292,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/rewrite_adts.c:294,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:303,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:305,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:306,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:307,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:308,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:309,1
    - Dst: gf_m4a_write_config_bs
      Src: /src/gpac/src/filters/rewrite_adts.c:312,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/rewrite_adts.c:314,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:316,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:317,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:318,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:319,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:323,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:329,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:332,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/rewrite_adts.c:336,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/rewrite_adts.c:337,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/rewrite_adts.c:339,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/filters/rewrite_adts.c:340,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/rewrite_adts.c:355,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/rewrite_adts.c:358,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/rewrite_adts.c:359,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:361,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:362,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:363,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:364,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:365,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:366,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:367,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:368,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:369,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:370,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:371,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/rewrite_adts.c:373,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/rewrite_adts.c:378,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/rewrite_adts.c:382,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/rewrite_adts.c:385,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/rewrite_adts.c:386,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/rewrite_adts.c:389,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/rewrite_adts.c:391,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewrite_adts.c:392,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 110
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 245
    functionDepth: 6
    functionLinenumber: 245
    functionLinenumberEnd: 394
    functionName: adtsmx_process
    functionSourceFile: /src/gpac/src/filters/rewrite_adts.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_filter_pck_truncate
    - gf_filter_pid_get_packet
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_forward
    - memcpy
    - gf_filter_pck_get_cts
    - gf_m4a_write_config_bs
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - gf_bs_write_int
    - gf_filter_pid_set_eos
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_filter_pck_has_properties
    - gf_filter_pck_get_sap
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - gf_timestamp_greater_or_equal
    - gf_filter_pck_merge_properties
    - gf_filter_pck_set_framing
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err adtsmx_process(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_adts.c:398,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/rewrite_adts.c:399,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/rewrite_adts.c:401,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 396
    functionDepth: 3
    functionLinenumber: 396
    functionLinenumberEnd: 403
    functionName: adtsmx_finalize
    functionSourceFile: /src/gpac/src/filters/rewrite_adts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void adtsmx_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 417
    functionDepth: 0
    functionLinenumber: 417
    functionLinenumberEnd: 418
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/rewrite_adts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 443
    functionDepth: 0
    functionLinenumber: 443
    functionLinenumberEnd: 446
    functionName: ufadts_register
    functionSourceFile: /src/gpac/src/filters/rewrite_adts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ufadts_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_adts.c:450,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 448
    functionDepth: 1
    functionLinenumber: 448
    functionLinenumberEnd: 453
    functionName: latmmx_initialize
    functionSourceFile: /src/gpac/src/filters/rewrite_adts.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err latmmx_initialize(GF_Filter*filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 455
    functionDepth: 0
    functionLinenumber: 455
    functionLinenumberEnd: 456
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/rewrite_adts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 490
    functionDepth: 0
    functionLinenumber: 490
    functionLinenumberEnd: 493
    functionName: uflatm_register
    functionSourceFile: /src/gpac/src/filters/rewrite_adts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *uflatm_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 495
    functionDepth: 0
    functionLinenumber: 495
    functionLinenumberEnd: 498
    functionName: ufadts_register
    functionSourceFile: /src/gpac/src/filters/rewrite_adts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ufadts_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 499
    functionDepth: 0
    functionLinenumber: 499
    functionLinenumberEnd: 502
    functionName: uflatm_register
    functionSourceFile: /src/gpac/src/filters/rewrite_adts.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *uflatm_register(GF_FilterSession *session)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/filters/dec_ttml.c:79,1
    - Dst: gf_sg_get_scene_size_info
      Src: /src/gpac/src/filters/dec_ttml.c:82,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_ttml.c:86,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_ttml.c:88,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/filters/dec_ttml.c:98,1
    - Dst: gf_scene_force_size
      Src: /src/gpac/src/filters/dec_ttml.c:99,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/filters/dec_ttml.c:102,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dec_ttml.c:106,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/filters/dec_ttml.c:107,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/filters/dec_ttml.c:108,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/filters/dec_ttml.c:111,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dec_ttml.c:113,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/filters/dec_ttml.c:114,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/filters/dec_ttml.c:115,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_TTMLDec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 73
    functionDepth: 14
    functionLinenumber: 73
    functionLinenumberEnd: 117
    functionName: ttmldec_update_size_info
    functionSourceFile: /src/gpac/src/filters/dec_ttml.c
    functionUses: 0
    functionsReached:
    - gf_sg_set_scene_size_info
    - gf_svg_parse_attribute
    - gf_filter_pid_get_property
    - gf_node_get_attribute_by_tag
    - sprintf
    - gf_sg_get_scene_size_info
    - gf_scene_force_size
    - gf_sg_get_root_node
    linkageType: ''
    returnType: void
    signature: void ttmldec_update_size_info(GF_TTMLDec *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_new_subscene
      Src: /src/gpac/src/filters/dec_ttml.c:124,1
    - Dst: gf_sg_add_namespace
      Src: /src/gpac/src/filters/dec_ttml.c:127,1
    - Dst: gf_sg_add_namespace
      Src: /src/gpac/src/filters/dec_ttml.c:128,1
    - Dst: gf_sg_add_namespace
      Src: /src/gpac/src/filters/dec_ttml.c:129,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/filters/dec_ttml.c:130,1
    - Dst: gf_node_new
      Src: /src/gpac/src/filters/dec_ttml.c:133,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttml.c:134,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/src/filters/dec_ttml.c:135,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/src/filters/dec_ttml.c:136,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/filters/dec_ttml.c:137,1
    - Dst: ttmldec_update_size_info
      Src: /src/gpac/src/filters/dec_ttml.c:138,1
    - Dst: gf_node_init
      Src: /src/gpac/src/filters/dec_ttml.c:139,1
    - Dst: gf_node_new
      Src: /src/gpac/src/filters/dec_ttml.c:141,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_ttml.c:142,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/filters/dec_ttml.c:143,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/filters/dec_ttml.c:145,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dec_ttml.c:146,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/filters/dec_ttml.c:147,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dec_ttml.c:150,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dec_ttml.c:151,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/filters/dec_ttml.c:152,1
    - Dst: gf_node_init
      Src: /src/gpac/src/filters/dec_ttml.c:155,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 27
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_TTMLDec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 119
    functionDepth: 15
    functionLinenumber: 119
    functionLinenumberEnd: 157
    functionName: ttmldec_setup_scene
    functionSourceFile: /src/gpac/src/filters/dec_ttml.c
    functionUses: 0
    functionsReached:
    - gf_sg_set_scene_size_info
    - gf_svg_parse_attribute
    - gf_node_init
    - gf_node_list_add_child
    - strcat
    - gf_sg_set_root_node
    - ttmldec_update_size_info
    - gf_node_get_attribute_by_tag
    - strcpy
    - gf_sg_new_subscene
    - strstr
    - gf_node_new
    - gf_node_register
    - gf_node_get_attribute_by_name
    - gf_sg_add_namespace
    linkageType: ''
    returnType: void
    signature: void ttmldec_setup_scene(GF_TTMLDec *ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_ttml.c:162,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_ttml.c:166,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_ttml.c:173,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_ttml.c:174,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_ttml.c:178,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_ttml.c:182,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_ttml.c:183,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_ttml.c:183,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_ttml.c:184,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_ttml.c:184,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_ttml.c:186,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_ttml.c:188,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 192
    functionName: ttmldec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_ttml.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ttmldec_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ttmldec_update_size_info
      Src: /src/gpac/src/filters/dec_ttml.c:201,1
    - Dst: gf_scene_register_extra_graph
      Src: /src/gpac/src/filters/dec_ttml.c:202,1
    - Dst: gf_scene_register_extra_graph
      Src: /src/gpac/src/filters/dec_ttml.c:207,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_TTMLDec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 195
    functionDepth: 15
    functionLinenumber: 195
    functionLinenumberEnd: 211
    functionName: ttmldec_toggle_display
    functionSourceFile: /src/gpac/src/filters/dec_ttml.c
    functionUses: 0
    functionsReached:
    - ttmldec_update_size_info
    - gf_scene_register_extra_graph
    linkageType: ''
    returnType: void
    signature: void ttmldec_toggle_display(GF_TTMLDec *ctx)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_ttml.c:215,1
    - Dst: ttmldec_toggle_display
      Src: /src/gpac/src/filters/dec_ttml.c:224,1
    - Dst: gf_sg_del
      Src: /src/gpac/src/filters/dec_ttml.c:226,1
    - Dst: ttmldec_toggle_display
      Src: /src/gpac/src/filters/dec_ttml.c:232,1
    - Dst: ttmldec_toggle_display
      Src: /src/gpac/src/filters/dec_ttml.c:236,1
    - Dst: ttmldec_setup_scene
      Src: /src/gpac/src/filters/dec_ttml.c:251,1
    - Dst: ttmldec_toggle_display
      Src: /src/gpac/src/filters/dec_ttml.c:252,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 36
    argCount: 2
    argNames:
    - filter
    - com
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 213
    functionDepth: 16
    functionLinenumber: 213
    functionLinenumberEnd: 255
    functionName: ttmldec_process_event
    functionSourceFile: /src/gpac/src/filters/dec_ttml.c
    functionUses: 0
    functionsReached:
    - ttmldec_toggle_display
    - gf_sg_del
    - ttmldec_setup_scene
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool ttmldec_process_event(GF_Filter *filter, const GF_FilterEvent
      *com)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: svg_script_get_context
      Src: /src/gpac/src/filters/dec_ttml.c:263,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/dec_ttml.c:277,1
    - Dst: MAX
      Src: /src/gpac/src/filters/dec_ttml.c:279,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dec_ttml.c:291,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/dec_ttml.c:291,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dec_ttml.c:292,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/dec_ttml.c:292,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dec_ttml.c:293,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/dec_ttml.c:293,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dec_ttml.c:294,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/dec_ttml.c:294,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dec_ttml.c:295,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/dec_ttml.c:295,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dec_ttml.c:296,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/dec_ttml.c:296,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dec_ttml.c:297,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dec_ttml.c:297,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_ttml.c:299,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_TTMLDec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 259
    functionDepth: 1
    functionLinenumber: 259
    functionLinenumberEnd: 303
    functionName: ttmldec_get_js_context
    functionSourceFile: /src/gpac/src/filters/dec_ttml.c
    functionUses: 0
    functionsReached:
    - JS_GetGlobalObject
    - JS_NewFloat64
    - JS_FreeValue
    - JS_NewString
    - JS_NewInt32
    - svg_script_get_context
    - JS_SetPropertyStr
    - MAX
    linkageType: ''
    returnType: JSContext
    signature: JSContext *ttmldec_get_js_context(GF_TTMLDec *ctx)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_ttml.c:320,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_ttml.c:324,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_ttml.c:330,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_ttml.c:332,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_ttml.c:333,1
    - Dst: ttmldec_get_js_context
      Src: /src/gpac/src/filters/dec_ttml.c:339,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_ttml.c:341,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_ttml.c:349,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/dec_ttml.c:352,1
    - Dst: gf_odm_check_buffering
      Src: /src/gpac/src/filters/dec_ttml.c:359,1
    - Dst: gf_timestamp_to_clocktime
      Src: /src/gpac/src/filters/dec_ttml.c:360,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dec_ttml.c:361,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/dec_ttml.c:361,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/filters/dec_ttml.c:364,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/dec_ttml.c:367,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/dec_ttml.c:368,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/dec_ttml.c:369,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/dec_ttml.c:370,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/dec_ttml.c:372,1
    - Dst: gf_clock_time_absolute
      Src: /src/gpac/src/filters/dec_ttml.c:372,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/dec_ttml.c:374,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/dec_ttml.c:375,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/dec_ttml.c:376,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/filters/dec_ttml.c:380,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/dec_ttml.c:381,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_ttml.c:386,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_ttml.c:387,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_ttml.c:389,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_ttml.c:390,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/dec_ttml.c:391,1
    - Dst: gf_sc_check_sys_frame
      Src: /src/gpac/src/filters/dec_ttml.c:395,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_ttml.c:398,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dec_ttml.c:399,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dec_ttml.c:404,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dec_ttml.c:405,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_ttml.c:406,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_ttml.c:407,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_ttml.c:408,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_ttml.c:409,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_ttml.c:410,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_ttml.c:415,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_ttml.c:416,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_ttml.c:419,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_ttml.c:420,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_ttml.c:428,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_ttml.c:429,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/filters/dec_ttml.c:435,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/filters/dec_ttml.c:436,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/dec_ttml.c:439,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/dec_ttml.c:440,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/dec_ttml.c:441,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/dec_ttml.c:442,1
    - Dst: gf_sg_new
      Src: /src/gpac/src/filters/dec_ttml.c:449,1
    - Dst: gf_sg_init_from_xml_node
      Src: /src/gpac/src/filters/dec_ttml.c:451,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/dec_ttml.c:451,1
    - Dst: dom_document_construct_external
      Src: /src/gpac/src/filters/dec_ttml.c:452,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/dec_ttml.c:454,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/dec_ttml.c:455,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/dec_ttml.c:457,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/dec_ttml.c:459,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/dec_ttml.c:460,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/dec_ttml.c:461,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/filters/dec_ttml.c:464,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/dec_ttml.c:465,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_ttml.c:471,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_ttml.c:472,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_ttml.c:473,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_ttml.c:474,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_ttml.c:476,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_ttml.c:477,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/dec_ttml.c:479,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filters/dec_ttml.c:482,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_ttml.c:484,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_ttml.c:485,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/dec_ttml.c:489,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dec_ttml.c:491,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 138
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 307
    functionDepth: 10
    functionLinenumber: 307
    functionLinenumberEnd: 494
    functionName: ttmldec_process
    functionSourceFile: /src/gpac/src/filters/dec_ttml.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_GetGlobalObject
    - JS_IsNumber
    - gf_timestamp_rescale_signed
    - gf_xml_dom_get_root
    - JS_NewInt64
    - gf_sc_check_sys_frame
    - gf_bs_available
    - gf_sg_init_from_xml_node
    - gf_filter_pid_get_packet
    - dom_document_construct_external
    - gf_filter_post_process_task
    - gf_sg_new
    - gf_bs_read_u32
    - JS_NewFloat64
    - memcpy
    - gf_odm_check_buffering
    - gf_xml_dom_new
    - gf_filter_pck_get_cts
    - js_dump_error
    - gf_filter_ask_rt_reschedule
    - gf_filter_pck_get_duration
    - gf_filter_get_udta
    - gf_filter_pck_get_property
    - gf_filter_pid_drop_packet
    - JS_IsFunction
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_xml_dom_parse_string
    - JS_ToInt32
    - JS_GetPropertyStr
    - gf_bs_read_u8
    - gf_clock_time
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - gf_timestamp_rescale
    - gf_malloc
    - gf_clock_time_absolute
    - gf_timestamp_to_clocktime
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - ttmldec_get_js_context
    - gf_js_lock
    - gf_xml_dom_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ttmldec_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_ttml.c:498,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - filter
    - arg_name
    - new_val
    argTypes:
    - GF_Filter*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 501
      start: 496
    functionDepth: 1
    functionLinenumber: 496
    functionLinenumberEnd: 501
    functionName: ttmldec_update_arg
    functionSourceFile: /src/gpac/src/filters/dec_ttml.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ttmldec_update_arg(GF_Filter *filter, const char *arg_name,
      const GF_PropertyValue *new_val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_ttml.c:505,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_ttml.c:508,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/dec_ttml.c:510,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_ttml.c:511,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_ttml.c:514,1
    - Dst: ttmldec_update_arg
      Src: /src/gpac/src/filters/dec_ttml.c:518,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 503
    functionDepth: 4
    functionLinenumber: 503
    functionLinenumberEnd: 521
    functionName: ttmldec_initialize
    functionSourceFile: /src/gpac/src/filters/dec_ttml.c
    functionUses: 0
    functionsReached:
    - ttmldec_update_arg
    - gf_bs_new
    - gf_file_exists
    - GF_LOG
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ttmldec_initialize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_ttml.c:525,1
    - Dst: ttmldec_toggle_display
      Src: /src/gpac/src/filters/dec_ttml.c:529,1
    - Dst: gf_sg_del
      Src: /src/gpac/src/filters/dec_ttml.c:530,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_ttml.c:532,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 523
    functionDepth: 16
    functionLinenumber: 523
    functionLinenumberEnd: 533
    functionName: ttmldec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_ttml.c
    functionUses: 0
    functionsReached:
    - ttmldec_toggle_display
    - gf_sg_del
    - gf_bs_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ttmldec_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 535
    functionDepth: 0
    functionLinenumber: 535
    functionLinenumberEnd: 536
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dec_ttml.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 596
      start: 589
    functionDepth: 0
    functionLinenumber: 589
    functionLinenumberEnd: 596
    functionName: ttmldec_register
    functionSourceFile: /src/gpac/src/filters/dec_ttml.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ttmldec_register(GF_FilterSession *session)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_vtb.c:190,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/dec_vtb.c:197,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:201,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:203,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:207,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/dec_vtb.c:210,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:211,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/dec_vtb.c:221,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_vtb.c:222,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_vtb.c:223,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_vtb.c:225,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_vtb.c:228,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_vtb.c:231,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/dec_vtb.c:231,1
    - Dst: CVPixelBufferRetain
      Src: /src/gpac/src/filters/dec_vtb.c:234,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/dec_vtb.c:236,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_vtb.c:239,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dec_vtb.c:240,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_vtb.c:241,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:243,1
    - Dst: if
      Src: /src/gpac/src/filters/dec_vtb.c:245,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_vtb.c:246,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/dec_vtb.c:248,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:249,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:251,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_vtb.c:256,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dec_vtb.c:257,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_vtb.c:258,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/dec_vtb.c:272,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dec_vtb.c:277,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_vtb.c:279,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 71
    argCount: 7
    argNames:
    - opaque
    - sourceFrameRefCon
    - status
    - flags
    - image
    - pts
    - duration
    argTypes:
    - void*
    - void*
    - OSStatus
    - VTDecodeInfoFlags
    - CVImageBufferRef
    - CMTime
    - CMTime
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 184
    functionDepth: 3
    functionLinenumber: 184
    functionLinenumberEnd: 282
    functionName: vtbdec_on_frame
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_list_count
    - memset
    - gf_filter_pck_ref_props
    - gf_filter_pck_get_seek_flag
    - gf_assert
    - gf_list_pop_back
    - gf_list_get
    - CVPixelBufferRetain
    - if
    - gf_filter_pck_get_cts
    - gf_list_insert
    - gf_mx_p
    - GF_LOG
    - gf_filter_pck_get_timescale
    - gf_mx_v
    - gf_filter_pck_get_sap
    - gf_timestamp_greater
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: void
    signature: void vtbdec_on_frame(void *opaque, void *sourceFrameRefCon, OSStatus
      status, VTDecodeInfoFlags flags, CVImageBufferRef image, CMTime pts, CMTime
      duration)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CFNumberCreate
      Src: /src/gpac/src/filters/dec_vtb.c:296,1
    - Dst: CFNumberCreate
      Src: /src/gpac/src/filters/dec_vtb.c:297,1
    - Dst: CFNumberCreate
      Src: /src/gpac/src/filters/dec_vtb.c:298,1
    - Dst: CFDictionaryCreateMutable
      Src: /src/gpac/src/filters/dec_vtb.c:300,1
    - Dst: CFDictionaryCreateMutable
      Src: /src/gpac/src/filters/dec_vtb.c:301,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:303,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:304,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:305,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:306,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:307,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:308,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:312,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:315,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:316,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 2
    argNames:
    - ctx
    - pix_fmt
    argTypes:
    - GF_VTBDecCtx*
    - OSType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 319
    functionName: vtbdec_create_buffer_attributes
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - CFRelease
    - CFDictionarySetValue
    - CFDictionaryCreateMutable
    - CFNumberCreate
    linkageType: ''
    returnType: CFDictionaryRef
    signature: CFDictionaryRef vtbdec_create_buffer_attributes(GF_VTBDecCtx *ctx,
      OSType pix_fmt)
  - BBCount: 92
    BranchProfiles: []
    Callsites:
    - Dst: CFDictionaryCreateMutable
      Src: /src/gpac/src/filters/dec_vtb.c:338,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:358,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_vtb.c:359,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_vtb.c:361,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_vtb.c:368,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:372,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:372,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:379,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:380,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_vtb.c:384,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:390,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:391,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_vtb.c:395,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/filters/dec_vtb.c:406,1
    - Dst: gf_avc_read_pps
      Src: /src/gpac/src/filters/dec_vtb.c:408,1
    - Dst: gf_odf_avc_cfg_new
      Src: /src/gpac/src/filters/dec_vtb.c:460,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:471,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:472,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/filters/dec_vtb.c:473,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/dec_vtb.c:474,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/dec_vtb.c:475,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/dec_vtb.c:476,1
    - Dst: CFDictionaryCreateMutable
      Src: /src/gpac/src/filters/dec_vtb.c:478,1
    - Dst: CFDataCreate
      Src: /src/gpac/src/filters/dec_vtb.c:479,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:481,1
    - Dst: CFSTR
      Src: /src/gpac/src/filters/dec_vtb.c:481,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:482,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:483,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:485,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:487,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:492,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:492,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:492,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:503,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:504,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:512,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:513,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:520,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:521,1
    - Dst: gf_odf_hevc_cfg_new
      Src: /src/gpac/src/filters/dec_vtb.c:574,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_vtb.c:595,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_vtb.c:599,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:600,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:601,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_vtb.c:603,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_vtb.c:607,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:608,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:609,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_vtb.c:611,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:618,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/dec_vtb.c:620,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/dec_vtb.c:621,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/dec_vtb.c:622,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/dec_vtb.c:624,1
    - Dst: CFDictionaryCreateMutable
      Src: /src/gpac/src/filters/dec_vtb.c:626,1
    - Dst: CFDataCreate
      Src: /src/gpac/src/filters/dec_vtb.c:627,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:629,1
    - Dst: CFSTR
      Src: /src/gpac/src/filters/dec_vtb.c:629,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:630,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:631,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:633,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:635,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/filters/dec_vtb.c:687,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/filters/dec_vtb.c:690,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_vtb.c:693,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dec_vtb.c:694,1
    - Dst: gf_odf_desc_write_bs
      Src: /src/gpac/src/filters/dec_vtb.c:695,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dec_vtb.c:696,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_vtb.c:697,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/dec_vtb.c:700,1
    - Dst: CFDictionaryCreateMutable
      Src: /src/gpac/src/filters/dec_vtb.c:702,1
    - Dst: CFDataCreate
      Src: /src/gpac/src/filters/dec_vtb.c:703,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:704,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:707,1
    - Dst: CFSTR
      Src: /src/gpac/src/filters/dec_vtb.c:707,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:708,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:709,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:711,1
    - Dst: CMVideoFormatDescriptionCreate
      Src: /src/gpac/src/filters/dec_vtb.c:759,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:762,1
    - Dst: vtbdec_create_buffer_attributes
      Src: /src/gpac/src/filters/dec_vtb.c:765,1
    - Dst: CFDictionaryCreateMutable
      Src: /src/gpac/src/filters/dec_vtb.c:772,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:773,1
    - Dst: VTDecompressionSessionCreate
      Src: /src/gpac/src/filters/dec_vtb.c:776,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:779,1
    - Dst: VTDecompressionSessionCreate
      Src: /src/gpac/src/filters/dec_vtb.c:784,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:789,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:791,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:829,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:829,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:830,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:830,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:831,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:831,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_vtb.c:832,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:833,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/dec_vtb.c:833,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:834,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:834,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/dec_vtb.c:836,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dec_vtb.c:840,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_vtb.c:842,1
    CyclomaticComplexity: 103
    EdgeCount: 103
    ICount: 437
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_VTBDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 845
      start: 321
    functionDepth: 9
    functionLinenumber: 321
    functionLinenumberEnd: 845
    functionName: vtbdec_init_decoder
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - gf_free
    - vtbdec_create_buffer_attributes
    - CFDictionarySetValue
    - gf_odf_avc_cfg_write
    - gf_odf_avc_cfg_del
    - CFDataCreate
    - GF_SAFEALLOC
    - gf_bs_new
    - gf_odf_desc_write_bs
    - gf_odf_desc_del
    - gf_list_count
    - CFSTR
    - CFDictionaryCreateMutable
    - gf_bs_write_u32
    - gf_avc_read_pps
    - gf_odf_hevc_cfg_new
    - gf_list_get
    - gf_list_new
    - VTDecompressionSessionCreate
    - PROP_FRAC
    - snprintf
    - gf_odf_desc_esd_new
    - gf_bs_get_content
    - CMVideoFormatDescriptionCreate
    - gf_odf_hevc_cfg_write
    - gf_list_add
    - gf_m4v_get_config
    - gf_crc_32
    - gf_list_reset
    - CFRelease
    - gf_odf_avc_cfg_new
    - gf_avc_read_sps
    - gf_filter_pid_set_property
    - gf_filter_set_name
    - gf_odf_hevc_cfg_del
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_bs_del
    - gf_opts_get_bool
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vtbdec_init_decoder(GF_Filter *filter, GF_VTBDecCtx *ctx)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_vtb.c:854,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dec_vtb.c:855,1
    - Dst: gf_hevc_read_sps_bs
      Src: /src/gpac/src/filters/dec_vtb.c:860,1
    - Dst: gf_hevc_read_pps_bs
      Src: /src/gpac/src/filters/dec_vtb.c:865,1
    - Dst: gf_hevc_read_vps_bs
      Src: /src/gpac/src/filters/dec_vtb.c:870,1
    - Dst: gf_avc_read_sps_bs
      Src: /src/gpac/src/filters/dec_vtb.c:877,1
    - Dst: gf_avc_read_pps_bs
      Src: /src/gpac/src/filters/dec_vtb.c:880,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:887,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:889,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/dec_vtb.c:892,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:893,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:894,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dec_vtb.c:895,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_vtb.c:904,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_vtb.c:906,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:908,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_vtb.c:911,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_vtb.c:914,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:915,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 66
    argCount: 5
    argNames:
    - ctx
    - data
    - size
    - is_sps
    - hevc_nal_type
    argTypes:
    - GF_VTBDecCtx*
    - char*
    - u32
    - Bool
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 917
      start: 847
    functionDepth: 7
    functionLinenumber: 847
    functionLinenumberEnd: 917
    functionName: vtbdec_register_param_sets
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_hevc_read_vps_bs
    - gf_hevc_read_pps_bs
    - gf_list_get
    - memcmp
    - gf_bs_new
    - GF_SAFEALLOC
    - memcpy
    - gf_hevc_read_sps_bs
    - gf_avc_read_sps_bs
    - gf_list_count
    - gf_list_add
    - gf_bs_reassign_buffer
    - gf_crc_32
    - gf_malloc
    - gf_list_rem
    - gf_avc_read_pps_bs
    linkageType: ''
    returnType: void
    signature: void vtbdec_register_param_sets(GF_VTBDecCtx *ctx, char *data, u32
      size, Bool is_sps, u8 hevc_nal_type)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:925,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:927,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:932,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/dec_vtb.c:935,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:937,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:938,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dec_vtb.c:939,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 3
    argNames:
    - ctx
    - is_sps
    - idx
    argTypes:
    - GF_VTBDecCtx*
    - Bool
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 947
      start: 919
    functionDepth: 1
    functionLinenumber: 919
    functionLinenumberEnd: 947
    functionName: vtbdec_purge_param_sets
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - memcmp
    - gf_list_count
    - gf_list_rem
    linkageType: ''
    returnType: u32
    signature: u32 vtbdec_purge_param_sets(GF_VTBDecCtx *ctx, Bool is_sps, s32 idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:951,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:952,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:953,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:954,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dec_vtb.c:955,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_vtb.c:957,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - list
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 958
      start: 949
    functionDepth: 2
    functionLinenumber: 949
    functionLinenumberEnd: 958
    functionName: vtbdec_del_param_list
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_list_count
    - gf_list_rem
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void vtbdec_del_param_list(GF_List *list)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_vtb.c:966,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dec_vtb.c:969,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:970,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_vtb.c:971,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_vtb.c:976,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:977,1
    - Dst: vtbdec_flush_frame
      Src: /src/gpac/src/filters/dec_vtb.c:978,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_vtb.c:982,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:984,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:989,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_vtb.c:990,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:998,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:999,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_vtb.c:1003,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dec_vtb.c:1013,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dec_vtb.c:1014,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_vtb.c:1017,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1018,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_vtb.c:1023,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_vtb.c:1024,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_vtb.c:1026,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1027,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:1027,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1028,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1029,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1030,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:1030,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1031,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:1031,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1032,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:1032,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1033,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/dec_vtb.c:1033,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1034,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:1034,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1037,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dec_vtb.c:1037,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1039,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:1039,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1046,1
    - Dst: vtbdec_flush_frame
      Src: /src/gpac/src/filters/dec_vtb.c:1047,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dec_vtb.c:1050,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dec_vtb.c:1051,1
    - Dst: gf_filter_set_max_extra_input_pids
      Src: /src/gpac/src/filters/dec_vtb.c:1055,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_vtb.c:1058,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dec_vtb.c:1059,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_vtb.c:1063,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1064,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:1064,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1065,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1066,1
    - Dst: vtbdec_del_param_list
      Src: /src/gpac/src/filters/dec_vtb.c:1075,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_vtb.c:1076,1
    - Dst: vtbdec_del_param_list
      Src: /src/gpac/src/filters/dec_vtb.c:1077,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_vtb.c:1078,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/dec_vtb.c:1096,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1097,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1098,1
    - Dst: vtbdec_register_param_sets
      Src: /src/gpac/src/filters/dec_vtb.c:1100,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1103,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1104,1
    - Dst: vtbdec_register_param_sets
      Src: /src/gpac/src/filters/dec_vtb.c:1106,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1109,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_vtb.c:1112,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1115,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_vtb.c:1118,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1122,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1122,1
    - Dst: vtbdec_init_decoder
      Src: /src/gpac/src/filters/dec_vtb.c:1123,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/dec_vtb.c:1127,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1132,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dec_vtb.c:1132,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1133,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:1133,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1135,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1136,1
    - Dst: vtbdec_del_param_list
      Src: /src/gpac/src/filters/dec_vtb.c:1146,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_vtb.c:1147,1
    - Dst: vtbdec_del_param_list
      Src: /src/gpac/src/filters/dec_vtb.c:1148,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_vtb.c:1149,1
    - Dst: vtbdec_del_param_list
      Src: /src/gpac/src/filters/dec_vtb.c:1150,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_vtb.c:1151,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/dec_vtb.c:1166,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1168,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1169,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1172,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1173,1
    - Dst: vtbdec_register_param_sets
      Src: /src/gpac/src/filters/dec_vtb.c:1176,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1180,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1183,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1186,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1190,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1190,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1190,1
    - Dst: vtbdec_init_decoder
      Src: /src/gpac/src/filters/dec_vtb.c:1191,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/dec_vtb.c:1195,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1200,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dec_vtb.c:1200,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1201,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:1201,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1203,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1204,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_vtb.c:1213,1
    - Dst: vtbdec_init_decoder
      Src: /src/gpac/src/filters/dec_vtb.c:1224,1
    - Dst: vtbdec_init_decoder
      Src: /src/gpac/src/filters/dec_vtb.c:1228,1
    CyclomaticComplexity: 68
    EdgeCount: 68
    ICount: 221
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1229
      start: 960
    functionDepth: 10
    functionLinenumber: 960
    functionLinenumberEnd: 1229
    functionName: vtbdec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - gf_odf_avc_cfg_del
    - vtbdec_del_param_list
    - gf_list_find
    - gf_list_count
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - gf_filter_set_max_extra_input_pids
    - gf_odf_hevc_cfg_read
    - gf_list_get
    - gf_list_new
    - gf_assert
    - PROP_FRAC
    - vtbdec_register_param_sets
    - PROP_BOOL
    - vtbdec_flush_frame
    - gf_crc_32
    - gf_filter_get_udta
    - gf_list_insert
    - gf_filter_pid_copy_properties
    - GF_LOG
    - vtbdec_init_decoder
    - gf_list_del_item
    - gf_odf_avc_cfg_read
    - gf_filter_pid_set_property
    - gf_odf_hevc_cfg_del
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vtbdec_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:1235,1
    - Dst: VTDecompressionSessionInvalidate
      Src: /src/gpac/src/filters/dec_vtb.c:1239,1
    - Dst: vtbdec_del_param_list
      Src: /src/gpac/src/filters/dec_vtb.c:1242,1
    - Dst: vtbdec_del_param_list
      Src: /src/gpac/src/filters/dec_vtb.c:1244,1
    - Dst: vtbdec_del_param_list
      Src: /src/gpac/src/filters/dec_vtb.c:1246,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_VTBDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1248
      start: 1232
    functionDepth: 3
    functionLinenumber: 1232
    functionLinenumberEnd: 1248
    functionName: vtbdec_delete_decoder
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - vtbdec_del_param_list
    - CFRelease
    - VTDecompressionSessionInvalidate
    linkageType: ''
    returnType: void
    signature: void vtbdec_delete_decoder(GF_VTBDecCtx *ctx)
  - BBCount: 50
    BranchProfiles: []
    Callsites:
    - Dst: gf_media_nalu_next_start_code
      Src: /src/gpac/src/filters/dec_vtb.c:1266,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_vtb.c:1270,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1282,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1291,1
    - Dst: gf_media_nalu_next_start_code
      Src: /src/gpac/src/filters/dec_vtb.c:1296,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1303,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_vtb.c:1318,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dec_vtb.c:1319,1
    - Dst: vtbdec_register_param_sets
      Src: /src/gpac/src/filters/dec_vtb.c:1325,1
    - Dst: vtbdec_register_param_sets
      Src: /src/gpac/src/filters/dec_vtb.c:1329,1
    - Dst: gf_avc_parse_nalu
      Src: /src/gpac/src/filters/dec_vtb.c:1342,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_vtb.c:1355,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dec_vtb.c:1356,1
    - Dst: gf_hevc_parse_nalu_bs
      Src: /src/gpac/src/filters/dec_vtb.c:1358,1
    - Dst: vtbdec_register_param_sets
      Src: /src/gpac/src/filters/dec_vtb.c:1364,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1390,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1390,1
    - Dst: vtbdec_init_decoder
      Src: /src/gpac/src/filters/dec_vtb.c:1391,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_vtb.c:1402,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dec_vtb.c:1404,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dec_vtb.c:1412,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dec_vtb.c:1413,1
    - Dst: vtbdec_purge_param_sets
      Src: /src/gpac/src/filters/dec_vtb.c:1429,1
    - Dst: vtbdec_purge_param_sets
      Src: /src/gpac/src/filters/dec_vtb.c:1430,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/dec_vtb.c:1443,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 169
    argCount: 7
    argNames:
    - filter
    - ctx
    - inBuffer
    - inBufferLength
    - dts
    - out_buffer
    - out_size
    argTypes:
    - GF_Filter*
    - GF_VTBDecCtx*
    - char*
    - u32
    - u64
    - char**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1447
      start: 1250
    functionDepth: 10
    functionLinenumber: 1250
    functionLinenumberEnd: 1447
    functionName: vtbdec_parse_nal_units
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_bs_new
    - gf_hevc_parse_nalu_bs
    - GF_LOG
    - vtbdec_register_param_sets
    - gf_list_count
    - gf_bs_write_data
    - vtbdec_purge_param_sets
    - vtbdec_init_decoder
    - gf_bs_get_content_no_truncate
    - gf_media_nalu_next_start_code
    - gf_avc_parse_nalu
    - gf_bs_write_u32
    - gf_bs_reassign_buffer
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vtbdec_parse_nal_units(GF_Filter *filter, GF_VTBDecCtx *ctx,
      char *inBuffer, u32 inBufferLength, u64 dts, char **out_buffer, u32 *out_size)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: vtbdec_send_output_frame
      Src: /src/gpac/src/filters/dec_vtb.c:1458,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/dec_vtb.c:1460,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dec_vtb.c:1461,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1462,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_vtb.c:1463,1
    - Dst: CVPixelBufferLockBaseAddress
      Src: /src/gpac/src/filters/dec_vtb.c:1466,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1468,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/dec_vtb.c:1469,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:1470,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_vtb.c:1471,1
    - Dst: CVPixelBufferGetPixelFormatType
      Src: /src/gpac/src/filters/dec_vtb.c:1475,1
    - Dst: CVPixelBufferGetPlaneCount
      Src: /src/gpac/src/filters/dec_vtb.c:1485,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dec_vtb.c:1489,1
    - Dst: CVPixelBufferGetBaseAddressOfPlane
      Src: /src/gpac/src/filters/dec_vtb.c:1494,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_vtb.c:1495,1
    - Dst: CVPixelBufferGetBaseAddressOfPlane
      Src: /src/gpac/src/filters/dec_vtb.c:1498,1
    - Dst: CVPixelBufferGetBytesPerRowOfPlane
      Src: /src/gpac/src/filters/dec_vtb.c:1499,1
    - Dst: CVPixelBufferGetHeightOfPlane
      Src: /src/gpac/src/filters/dec_vtb.c:1500,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_vtb.c:1514,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_vtb.c:1519,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_vtb.c:1525,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/dec_vtb.c:1526,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_vtb.c:1527,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dec_vtb.c:1528,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_vtb.c:1529,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_vtb.c:1530,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_vtb.c:1532,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 43
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_VTBDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1533
      start: 1452
    functionDepth: 2
    functionLinenumber: 1452
    functionLinenumberEnd: 1533
    functionName: vtbdec_flush_frame
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 1
    functionsReached:
    - gf_filter_pck_set_dependency_flags
    - CVPixelBufferGetPlaneCount
    - CVPixelBufferGetHeightOfPlane
    - vtbdec_send_output_frame
    - memcpy
    - gf_list_add
    - gf_filter_pck_get_cts
    - gf_mx_p
    - gf_filter_pck_new_alloc
    - GF_LOG
    - CVPixelBufferGetBaseAddressOfPlane
    - gf_filter_pck_get_timescale
    - gf_mx_v
    - CVPixelBufferLockBaseAddress
    - CVPixelBufferGetBytesPerRowOfPlane
    - gf_filter_pck_set_dts
    - gf_list_pop_front
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - CVPixelBufferGetPixelFormatType
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vtbdec_flush_frame(GF_Filter *filter, GF_VTBDecCtx *ctx)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_vtb.c:1552,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1557,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1562,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1564,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_vtb.c:1566,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dec_vtb.c:1573,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dec_vtb.c:1573,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_vtb.c:1573,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1581,1
    - Dst: vtbdec_flush_frame
      Src: /src/gpac/src/filters/dec_vtb.c:1582,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_vtb.c:1584,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_vtb.c:1587,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1588,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_vtb.c:1589,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/dec_vtb.c:1591,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1592,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/dec_vtb.c:1595,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1596,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_vtb.c:1600,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1604,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/filters/dec_vtb.c:1612,1
    - Dst: vtbdec_init_decoder
      Src: /src/gpac/src/filters/dec_vtb.c:1618,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1620,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1629,1
    - Dst: gf_mpegv12_get_config
      Src: /src/gpac/src/filters/dec_vtb.c:1638,1
    - Dst: vtbdec_init_decoder
      Src: /src/gpac/src/filters/dec_vtb.c:1645,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1647,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1653,1
    - Dst: vtbdec_parse_nal_units
      Src: /src/gpac/src/filters/dec_vtb.c:1669,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dec_vtb.c:1669,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1671,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1685,1
    - Dst: vtbdec_flush_frame
      Src: /src/gpac/src/filters/dec_vtb.c:1686,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/dec_vtb.c:1691,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:1695,1
    - Dst: VTDecompressionSessionInvalidate
      Src: /src/gpac/src/filters/dec_vtb.c:1699,1
    - Dst: vtbdec_init_decoder
      Src: /src/gpac/src/filters/dec_vtb.c:1702,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1706,1
    - Dst: CMBlockBufferCreateWithMemoryBlock
      Src: /src/gpac/src/filters/dec_vtb.c:1711,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1715,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1717,1
    - Dst: CMSampleBufferCreate
      Src: /src/gpac/src/filters/dec_vtb.c:1721,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:1725,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1727,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1728,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1731,1
    - Dst: VTDecompressionSessionDecodeFrame
      Src: /src/gpac/src/filters/dec_vtb.c:1734,1
    - Dst: VTDecompressionSessionWaitForAsynchronousFrames
      Src: /src/gpac/src/filters/dec_vtb.c:1736,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:1739,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:1740,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1748,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1756,1
    - Dst: vtbdec_flush_frame
      Src: /src/gpac/src/filters/dec_vtb.c:1768,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 174
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1769
      start: 1541
    functionDepth: 11
    functionLinenumber: 1541
    functionLinenumberEnd: 1769
    functionName: vtbdec_process
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - gf_mpegv12_get_config
    - gf_list_count
    - vtbdec_parse_nal_units
    - gf_filter_pid_get_packet
    - gf_list_get
    - gf_assert
    - VTDecompressionSessionWaitForAsynchronousFrames
    - gf_filter_ask_rt_reschedule
    - gf_m4v_get_config
    - vtbdec_flush_frame
    - gf_filter_get_udta
    - CMSampleBufferCreate
    - gf_filter_pid_drop_packet
    - CMBlockBufferCreateWithMemoryBlock
    - gf_filter_pck_get_data
    - CFRelease
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_timescale
    - vtbdec_init_decoder
    - gf_filter_pck_get_sap
    - gf_filter_pid_is_eos
    - gf_timestamp_rescale
    - VTDecompressionSessionDecodeFrame
    - gf_filter_pck_get_dts
    - VTDecompressionSessionInvalidate
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vtbdec_process(GF_Filter *filter)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/dec_vtb.c:1773,1
    - Dst: CVPixelBufferUnlockBaseAddress
      Src: /src/gpac/src/filters/dec_vtb.c:1776,1
    - Dst: CVBufferRelease
      Src: /src/gpac/src/filters/dec_vtb.c:1779,1
    - Dst: CVBufferRelease
      Src: /src/gpac/src/filters/dec_vtb.c:1780,1
    - Dst: CVBufferRelease
      Src: /src/gpac/src/filters/dec_vtb.c:1781,1
    - Dst: GF_CVOpenGLTextureCacheFlush
      Src: /src/gpac/src/filters/dec_vtb.c:1783,1
    - Dst: CVPixelBufferRelease
      Src: /src/gpac/src/filters/dec_vtb.c:1787,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filters/dec_vtb.c:1791,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/dec_vtb.c:1792,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:1793,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_vtb.c:1794,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 3
    argNames:
    - filter
    - pid
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1795
      start: 1771
    functionDepth: 1
    functionLinenumber: 1771
    functionLinenumberEnd: 1795
    functionName: vtbframe_release
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_mx_p
    - CVBufferRelease
    - CVPixelBufferRelease
    - GF_CVOpenGLTextureCacheFlush
    - gf_mx_v
    - gf_list_add
    - CVPixelBufferUnlockBaseAddress
    - gf_filter_pck_get_frame_interface
    linkageType: ''
    returnType: void
    signature: void vtbframe_release(GF_Filter *filter, GF_FilterPid *pid, GF_FilterPacket
      *pck)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_vtb.c:1804,1
    - Dst: CVPixelBufferLockBaseAddress
      Src: /src/gpac/src/filters/dec_vtb.c:1806,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1808,1
    - Dst: CVPixelBufferIsPlanar
      Src: /src/gpac/src/filters/dec_vtb.c:1815,1
    - Dst: CVPixelBufferGetBaseAddressOfPlane
      Src: /src/gpac/src/filters/dec_vtb.c:1816,1
    - Dst: CVPixelBufferGetBytesPerRowOfPlane
      Src: /src/gpac/src/filters/dec_vtb.c:1818,1
    - Dst: CVPixelBufferGetBytesPerRow
      Src: /src/gpac/src/filters/dec_vtb.c:1822,1
    - Dst: CVPixelBufferGetBaseAddress
      Src: /src/gpac/src/filters/dec_vtb.c:1823,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 4
    argNames:
    - frame
    - plane_idx
    - outPlane
    - outStride
    argTypes:
    - GF_FilterFrameInterface*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1828
      start: 1797
    functionDepth: 1
    functionLinenumber: 1797
    functionLinenumberEnd: 1828
    functionName: vtbframe_get_plane
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - CVPixelBufferIsPlanar
    - CVPixelBufferGetBytesPerRowOfPlane
    - GF_LOG
    - CVPixelBufferGetBaseAddressOfPlane
    - CVPixelBufferGetBytesPerRow
    - CVPixelBufferGetBaseAddress
    - CVPixelBufferLockBaseAddress
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vtbframe_get_plane(GF_FilterFrameInterface *frame, u32 plane_idx,
      const u8 **outPlane, u32 *outStride)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CGLGetCurrentContext
      Src: /src/gpac/src/filters/dec_vtb.c:1842,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1843
      start: 1840
    functionDepth: 0
    functionLinenumber: 1840
    functionLinenumberEnd: 1843
    functionName: myGetGLContext
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - CGLGetCurrentContext
    linkageType: ''
    returnType: void
    signature: void *myGetGLContext()
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: myGetGLContext
      Src: /src/gpac/src/filters/dec_vtb.c:1859,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1861,1
    - Dst: CVOpenGLESTextureCacheCreate
      Src: /src/gpac/src/filters/dec_vtb.c:1869,1
    - Dst: CVOpenGLTextureCacheCreate
      Src: /src/gpac/src/filters/dec_vtb.c:1871,1
    - Dst: CGLGetPixelFormat
      Src: /src/gpac/src/filters/dec_vtb.c:1871,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1874,1
    - Dst: CVPixelBufferLockBaseAddress
      Src: /src/gpac/src/filters/dec_vtb.c:1880,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1882,1
    - Dst: CVPixelBufferIsPlanar
      Src: /src/gpac/src/filters/dec_vtb.c:1888,1
    - Dst: CVPixelBufferGetPlaneCount
      Src: /src/gpac/src/filters/dec_vtb.c:1889,1
    - Dst: CVPixelBufferGetPlaneCount
      Src: /src/gpac/src/filters/dec_vtb.c:1890,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1891,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1895,1
    - Dst: CVOpenGLESTextureCacheCreateTextureFromImage
      Src: /src/gpac/src/filters/dec_vtb.c:1916,1
    - Dst: CVOpenGLTextureCacheCreateTextureFromImage
      Src: /src/gpac/src/filters/dec_vtb.c:1918,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1922,1
    - Dst: GF_CVOpenGLTextureGetTarget
      Src: /src/gpac/src/filters/dec_vtb.c:1926,1
    - Dst: GF_CVOpenGLTextureGetName
      Src: /src/gpac/src/filters/dec_vtb.c:1927,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 66
    argCount: 5
    argNames:
    - frame
    - plane_idx
    - gl_tex_format
    - gl_tex_id
    - texcoordmatrix
    argTypes:
    - GF_FilterFrameInterface*
    - u32
    - u32*
    - u32*
    - GF_CodecMatrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1930
      start: 1847
    functionDepth: 1
    functionLinenumber: 1847
    functionLinenumberEnd: 1930
    functionName: vtbframe_get_gl_texture
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - CVOpenGLESTextureCacheCreateTextureFromImage
    - GF_CVOpenGLTextureGetTarget
    - CVPixelBufferIsPlanar
    - GF_LOG
    - GF_CVOpenGLTextureGetName
    - CVOpenGLTextureCacheCreate
    - CGLGetPixelFormat
    - CVOpenGLESTextureCacheCreate
    - myGetGLContext
    - CVPixelBufferLockBaseAddress
    - CVOpenGLTextureCacheCreateTextureFromImage
    - CVPixelBufferGetPlaneCount
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vtbframe_get_gl_texture(GF_FilterFrameInterface *frame, u32
      plane_idx, u32 *gl_tex_format, u32 *gl_tex_id, GF_CodecMatrix * texcoordmatrix)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/dec_vtb.c:1938,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dec_vtb.c:1939,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_vtb.c:1940,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1943,1
    - Dst: if
      Src: /src/gpac/src/filters/dec_vtb.c:1948,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filters/dec_vtb.c:1955,1
    - Dst: gf_filter_pck_new_frame_interface
      Src: /src/gpac/src/filters/dec_vtb.c:1957,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_vtb.c:1960,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/dec_vtb.c:1961,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_vtb.c:1963,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dec_vtb.c:1964,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_vtb.c:1965,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_vtb.c:1966,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_vtb.c:1969,1
    - Dst: vtbdec_process_event
      Src: /src/gpac/src/filters/dec_vtb.c:1976,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_vtb.c:1978,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/dec_vtb.c:1980,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1981,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_vtb.c:1982,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_vtb.c:1983,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:1985,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_vtb.c:1987,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_vtb.c:1998,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_vtb.c:2004,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_vtb.c:2005,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_vtb.c:2006,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filters/dec_vtb.c:2007,1
    - Dst: gf_filter_force_main_thread
      Src: /src/gpac/src/filters/dec_vtb.c:2009,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_VTBDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2012
      start: 1933
    functionDepth: 3
    functionLinenumber: 1933
    functionLinenumberEnd: 2012
    functionName: vtbdec_send_output_frame
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - vtbdec_process_event
    - gf_filter_pck_set_dependency_flags
    - gf_mx_new
    - gf_list_new
    - gf_list_pop_back
    - gf_filter_force_main_thread
    - if
    - gf_list_add
    - gf_filter_pck_get_cts
    - gf_filter_pck_new_frame_interface
    - gf_filter_get_udta
    - gf_mx_p
    - GF_LOG
    - gf_filter_pck_get_timescale
    - gf_mx_v
    - safe_int_inc
    - gf_filter_pck_set_dts
    - gf_list_pop_front
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vtbdec_send_output_frame(GF_Filter *filter, GF_VTBDecCtx *ctx)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_vtb.c:2016,1
    - Dst: vtbdec_delete_decoder
      Src: /src/gpac/src/filters/dec_vtb.c:2017,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:2021,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:2026,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_vtb.c:2027,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_vtb.c:2028,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:2029,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_vtb.c:2031,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:2035,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_vtb.c:2036,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_vtb.c:2037,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:2038,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_vtb.c:2040,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_vtb.c:2042,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_vtb.c:2044,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_vtb.c:2045,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_vtb.c:2046,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:2047,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/filters/dec_vtb.c:2048,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2049
      start: 2014
    functionDepth: 4
    functionLinenumber: 2014
    functionLinenumberEnd: 2049
    functionName: vtbdec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_mx_del
    - CFRelease
    - gf_filter_pck_unref
    - gf_list_count
    - gf_bs_del
    - vtbdec_delete_decoder
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void vtbdec_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2082
      start: 2081
    functionDepth: 0
    functionLinenumber: 2081
    functionLinenumberEnd: 2082
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2123
      start: 2116
    functionDepth: 0
    functionLinenumber: 2116
    functionLinenumberEnd: 2123
    functionName: vtbdec_register
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *vtbdec_register(GF_FilterSession *session)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/filters/dec_webvtt.c:88,1
    - Dst: gf_sg_get_scene_size_info
      Src: /src/gpac/src/filters/dec_webvtt.c:91,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_webvtt.c:95,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_webvtt.c:97,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/filters/dec_webvtt.c:108,1
    - Dst: gf_scene_force_size
      Src: /src/gpac/src/filters/dec_webvtt.c:109,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/filters/dec_webvtt.c:112,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dec_webvtt.c:114,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/filters/dec_webvtt.c:115,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/filters/dec_webvtt.c:116,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/filters/dec_webvtt.c:119,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dec_webvtt.c:121,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/filters/dec_webvtt.c:122,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/filters/dec_webvtt.c:123,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_VTTDec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 82
    functionDepth: 14
    functionLinenumber: 82
    functionLinenumberEnd: 126
    functionName: vttd_update_size_info
    functionSourceFile: /src/gpac/src/filters/dec_webvtt.c
    functionUses: 0
    functionsReached:
    - gf_sg_set_scene_size_info
    - gf_svg_parse_attribute
    - gf_filter_pid_get_property
    - gf_node_get_attribute_by_tag
    - sprintf
    - gf_sg_get_scene_size_info
    - gf_scene_force_size
    - gf_sg_get_root_node
    linkageType: ''
    returnType: void
    signature: void vttd_update_size_info(GF_VTTDec *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_new_subscene
      Src: /src/gpac/src/filters/dec_webvtt.c:133,1
    - Dst: gf_sg_add_namespace
      Src: /src/gpac/src/filters/dec_webvtt.c:136,1
    - Dst: gf_sg_add_namespace
      Src: /src/gpac/src/filters/dec_webvtt.c:137,1
    - Dst: gf_sg_add_namespace
      Src: /src/gpac/src/filters/dec_webvtt.c:138,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/filters/dec_webvtt.c:139,1
    - Dst: gf_node_new
      Src: /src/gpac/src/filters/dec_webvtt.c:142,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_webvtt.c:143,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/src/filters/dec_webvtt.c:144,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/src/filters/dec_webvtt.c:145,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/filters/dec_webvtt.c:146,1
    - Dst: vttd_update_size_info
      Src: /src/gpac/src/filters/dec_webvtt.c:147,1
    - Dst: gf_node_init
      Src: /src/gpac/src/filters/dec_webvtt.c:148,1
    - Dst: gf_node_new
      Src: /src/gpac/src/filters/dec_webvtt.c:150,1
    - Dst: gf_node_register
      Src: /src/gpac/src/filters/dec_webvtt.c:151,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/filters/dec_webvtt.c:152,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/filters/dec_webvtt.c:154,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dec_webvtt.c:155,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/filters/dec_webvtt.c:156,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dec_webvtt.c:159,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dec_webvtt.c:160,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/filters/dec_webvtt.c:161,1
    - Dst: gf_node_init
      Src: /src/gpac/src/filters/dec_webvtt.c:164,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 27
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_VTTDec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 128
    functionDepth: 15
    functionLinenumber: 128
    functionLinenumberEnd: 166
    functionName: vttd_setup_scene
    functionSourceFile: /src/gpac/src/filters/dec_webvtt.c
    functionUses: 0
    functionsReached:
    - gf_sg_set_scene_size_info
    - gf_svg_parse_attribute
    - gf_node_init
    - gf_node_list_add_child
    - strcat
    - gf_sg_set_root_node
    - gf_node_get_attribute_by_tag
    - strcpy
    - vttd_update_size_info
    - gf_sg_new_subscene
    - strstr
    - gf_node_new
    - gf_node_register
    - gf_node_get_attribute_by_name
    - gf_sg_add_namespace
    linkageType: ''
    returnType: void
    signature: void vttd_setup_scene(GF_VTTDec *ctx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_webvtt.c:174,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_webvtt.c:178,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_webvtt.c:185,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_webvtt.c:186,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_webvtt.c:188,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_webvtt.c:190,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_webvtt.c:195,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_webvtt.c:199,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_webvtt.c:200,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_webvtt.c:200,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_webvtt.c:201,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_webvtt.c:201,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_webvtt.c:204,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_webvtt.c:207,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_webvtt.c:212,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_webvtt.c:213,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/filters/dec_webvtt.c:216,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_webvtt.c:219,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_webvtt.c:221,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_webvtt.c:222,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_webvtt.c:225,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 44
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 168
    functionDepth: 4
    functionLinenumber: 168
    functionLinenumberEnd: 228
    functionName: vttd_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_webvtt.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_crc_32
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_bs_new
    - gf_bs_read_u32
    - gf_isom_box_del
    - memcpy
    - gf_bs_del
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - gf_isom_box_parse
    - gf_filter_pid_set_property
    - gf_malloc
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vttd_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: vttd_update_size_info
      Src: /src/gpac/src/filters/dec_webvtt.c:237,1
    - Dst: gf_scene_register_extra_graph
      Src: /src/gpac/src/filters/dec_webvtt.c:238,1
    - Dst: gf_scene_register_extra_graph
      Src: /src/gpac/src/filters/dec_webvtt.c:243,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_VTTDec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 231
    functionDepth: 15
    functionLinenumber: 231
    functionLinenumberEnd: 247
    functionName: vttd_toggle_display
    functionSourceFile: /src/gpac/src/filters/dec_webvtt.c
    functionUses: 0
    functionsReached:
    - vttd_update_size_info
    - gf_scene_register_extra_graph
    linkageType: ''
    returnType: void
    signature: void vttd_toggle_display(GF_VTTDec *ctx)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_webvtt.c:251,1
    - Dst: vttd_toggle_display
      Src: /src/gpac/src/filters/dec_webvtt.c:260,1
    - Dst: gf_sg_del
      Src: /src/gpac/src/filters/dec_webvtt.c:262,1
    - Dst: vttd_toggle_display
      Src: /src/gpac/src/filters/dec_webvtt.c:268,1
    - Dst: vttd_toggle_display
      Src: /src/gpac/src/filters/dec_webvtt.c:272,1
    - Dst: vttd_setup_scene
      Src: /src/gpac/src/filters/dec_webvtt.c:287,1
    - Dst: vttd_toggle_display
      Src: /src/gpac/src/filters/dec_webvtt.c:288,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 36
    argCount: 2
    argNames:
    - filter
    - com
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 249
    functionDepth: 16
    functionLinenumber: 249
    functionLinenumberEnd: 291
    functionName: vttd_process_event
    functionSourceFile: /src/gpac/src/filters/dec_webvtt.c
    functionUses: 0
    functionsReached:
    - gf_sg_del
    - vttd_setup_scene
    - vttd_toggle_display
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool vttd_process_event(GF_Filter *filter, const GF_FilterEvent *com)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: svg_script_get_context
      Src: /src/gpac/src/filters/dec_webvtt.c:298,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/dec_webvtt.c:312,1
    - Dst: MAX
      Src: /src/gpac/src/filters/dec_webvtt.c:314,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dec_webvtt.c:326,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/dec_webvtt.c:326,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dec_webvtt.c:327,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/dec_webvtt.c:327,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dec_webvtt.c:328,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/dec_webvtt.c:328,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dec_webvtt.c:329,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/dec_webvtt.c:329,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dec_webvtt.c:330,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/dec_webvtt.c:330,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dec_webvtt.c:331,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/dec_webvtt.c:331,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_webvtt.c:333,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 2
    argNames:
    - ctx
    - sg
    argTypes:
    - GF_VTTDec*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 295
    functionDepth: 1
    functionLinenumber: 295
    functionLinenumberEnd: 337
    functionName: vtt_script_get_context
    functionSourceFile: /src/gpac/src/filters/dec_webvtt.c
    functionUses: 0
    functionsReached:
    - JS_GetGlobalObject
    - JS_NewFloat64
    - JS_FreeValue
    - JS_NewString
    - svg_script_get_context
    - JS_SetPropertyStr
    - MAX
    linkageType: ''
    returnType: JSContext
    signature: JSContext *vtt_script_get_context(GF_VTTDec *ctx, GF_SceneGraph *sg)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: vtt_script_get_context
      Src: /src/gpac/src/filters/dec_webvtt.c:345,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/dec_webvtt.c:348,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/dec_webvtt.c:349,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/dec_webvtt.c:350,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/dec_webvtt.c:351,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/dec_webvtt.c:356,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/dec_webvtt.c:357,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/dec_webvtt.c:358,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/dec_webvtt.c:359,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/dec_webvtt.c:360,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/dec_webvtt.c:361,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/dec_webvtt.c:363,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/dec_webvtt.c:364,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/dec_webvtt.c:365,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_webvtt.c:368,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_webvtt.c:369,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_webvtt.c:370,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_webvtt.c:371,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_webvtt.c:372,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_webvtt.c:373,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_webvtt.c:374,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_webvtt.c:376,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_webvtt.c:377,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/dec_webvtt.c:379,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 32
    argCount: 8
    argNames:
    - ctx
    - node
    - id
    - start
    - end
    - settings
    - payload
    - comment
    argTypes:
    - GF_VTTDec*
    - GF_Node*
    - char*
    - char*
    - char*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 340
    functionDepth: 6
    functionLinenumber: 340
    functionLinenumberEnd: 381
    functionName: vttd_js_add_cue
    functionSourceFile: /src/gpac/src/filters/dec_webvtt.c
    functionUses: 0
    functionsReached:
    - JS_GetGlobalObject
    - JS_IsFunction
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_NewString
    - gf_js_lock
    - JS_GetPropertyStr
    - js_dump_error
    - vtt_script_get_context
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vttd_js_add_cue(GF_VTTDec *ctx, GF_Node *node, const char *id,
      const char *start, const char *end, const char *settings, const char *payload,
      char *comment)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: vtt_script_get_context
      Src: /src/gpac/src/filters/dec_webvtt.c:388,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/dec_webvtt.c:391,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/dec_webvtt.c:392,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/dec_webvtt.c:393,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/dec_webvtt.c:394,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/dec_webvtt.c:397,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/dec_webvtt.c:398,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/dec_webvtt.c:399,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_webvtt.c:402,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_webvtt.c:404,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dec_webvtt.c:405,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/dec_webvtt.c:406,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - ctx
    - node
    argTypes:
    - GF_VTTDec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 383
    functionDepth: 6
    functionLinenumber: 383
    functionLinenumberEnd: 408
    functionName: vttd_js_remove_cues
    functionSourceFile: /src/gpac/src/filters/dec_webvtt.c
    functionUses: 0
    functionsReached:
    - JS_GetGlobalObject
    - JS_IsFunction
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - gf_js_lock
    - JS_GetPropertyStr
    - js_dump_error
    - vtt_script_get_context
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vttd_js_remove_cues(GF_VTTDec *ctx, GF_Node *node)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_webvtt.c:418,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_webvtt.c:422,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_webvtt.c:428,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_webvtt.c:430,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_webvtt.c:431,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/filters/dec_webvtt.c:443,1
    - Dst: gf_clock_diff
      Src: /src/gpac/src/filters/dec_webvtt.c:444,1
    - Dst: vttd_js_remove_cues
      Src: /src/gpac/src/filters/dec_webvtt.c:445,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_webvtt.c:449,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_webvtt.c:452,1
    - Dst: gf_sc_sys_frame_pending
      Src: /src/gpac/src/filters/dec_webvtt.c:456,1
    - Dst: gf_sc_check_sys_frame
      Src: /src/gpac/src/filters/dec_webvtt.c:458,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_webvtt.c:459,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_webvtt.c:467,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/dec_webvtt.c:470,1
    - Dst: gf_timestamp_to_clocktime
      Src: /src/gpac/src/filters/dec_webvtt.c:476,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dec_webvtt.c:478,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/dec_webvtt.c:478,1
    - Dst: gf_sc_check_sys_frame
      Src: /src/gpac/src/filters/dec_webvtt.c:479,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_webvtt.c:482,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dec_webvtt.c:484,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/dec_webvtt.c:484,1
    - Dst: gf_webvtt_parse_cues_from_data
      Src: /src/gpac/src/filters/dec_webvtt.c:486,1
    - Dst: vttd_js_remove_cues
      Src: /src/gpac/src/filters/dec_webvtt.c:487,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_webvtt.c:488,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_webvtt.c:489,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_webvtt.c:491,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dec_webvtt.c:492,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dec_webvtt.c:493,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dec_webvtt.c:494,1
    - Dst: vttd_js_add_cue
      Src: /src/gpac/src/filters/dec_webvtt.c:495,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/filters/dec_webvtt.c:497,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_webvtt.c:500,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_webvtt.c:501,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 69
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 410
    functionDepth: 7
    functionLinenumber: 410
    functionLinenumberEnd: 503
    functionName: vttd_process
    functionSourceFile: /src/gpac/src/filters/dec_webvtt.c
    functionUses: 0
    functionsReached:
    - gf_timestamp_rescale_signed
    - gf_list_count
    - gf_sc_check_sys_frame
    - vttd_js_add_cue
    - vttd_js_remove_cues
    - gf_filter_pid_get_packet
    - gf_clock_diff
    - gf_list_get
    - sprintf
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_duration
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - gf_filter_pid_set_eos
    - gf_clock_time
    - gf_filter_pid_is_eos
    - gf_timestamp_rescale
    - gf_list_del
    - gf_webvtt_parse_cues_from_data
    - gf_sc_sys_frame_pending
    - gf_timestamp_to_clocktime
    - gf_webvtt_cue_del
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vttd_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_webvtt.c:507,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - filter
    - arg_name
    - new_val
    argTypes:
    - GF_Filter*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 505
    functionDepth: 1
    functionLinenumber: 505
    functionLinenumberEnd: 510
    functionName: vtt_update_arg
    functionSourceFile: /src/gpac/src/filters/dec_webvtt.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vtt_update_arg(GF_Filter *filter, const char *arg_name, const
      GF_PropertyValue *new_val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_webvtt.c:514,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_webvtt.c:517,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/dec_webvtt.c:519,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_webvtt.c:520,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_webvtt.c:523,1
    - Dst: vtt_update_arg
      Src: /src/gpac/src/filters/dec_webvtt.c:526,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 512
    functionDepth: 4
    functionLinenumber: 512
    functionLinenumberEnd: 529
    functionName: vttd_initialize
    functionSourceFile: /src/gpac/src/filters/dec_webvtt.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_file_exists
    - GF_LOG
    - gf_filter_get_udta
    - vtt_update_arg
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vttd_initialize(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_webvtt.c:533,1
    - Dst: gf_scene_register_extra_graph
      Src: /src/gpac/src/filters/dec_webvtt.c:537,1
    - Dst: gf_sg_del
      Src: /src/gpac/src/filters/dec_webvtt.c:539,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_webvtt.c:542,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_webvtt.c:543,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 544
      start: 531
    functionDepth: 3
    functionLinenumber: 531
    functionLinenumberEnd: 544
    functionName: vttd_finalize
    functionSourceFile: /src/gpac/src/filters/dec_webvtt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_scene_register_extra_graph
    - gf_sg_del
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void vttd_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 547
      start: 546
    functionDepth: 0
    functionLinenumber: 546
    functionLinenumberEnd: 547
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dec_webvtt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 596
    functionDepth: 0
    functionLinenumber: 596
    functionLinenumberEnd: 603
    functionName: vttdec_register
    functionSourceFile: /src/gpac/src/filters/dec_webvtt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *vttdec_register(GF_FilterSession *session)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_rawpcm.c:62,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/reframe_rawpcm.c:67,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/reframe_rawpcm.c:72,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_rawpcm.c:76,1
    - Dst: gf_audio_fmt_parse
      Src: /src/gpac/src/filters/reframe_rawpcm.c:78,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_rawpcm.c:83,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_rawpcm.c:84,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_rawpcm.c:88,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_rawpcm.c:92,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/reframe_rawpcm.c:95,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_rawpcm.c:98,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_rawpcm.c:105,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_rawpcm.c:107,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/reframe_rawpcm.c:108,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawpcm.c:109,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawpcm.c:109,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawpcm.c:110,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawpcm.c:110,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawpcm.c:112,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawpcm.c:112,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawpcm.c:113,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawpcm.c:113,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawpcm.c:114,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawpcm.c:114,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawpcm.c:115,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawpcm.c:115,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawpcm.c:116,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawpcm.c:116,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawpcm.c:117,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawpcm.c:117,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawpcm.c:118,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_rawpcm.c:118,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawpcm.c:119,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/reframe_rawpcm.c:119,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_rawpcm.c:121,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawpcm.c:124,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawpcm.c:124,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_rawpcm.c:126,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawpcm.c:134,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/reframe_rawpcm.c:134,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 66
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 138
    functionName: pcmreframe_configure_pid
    functionSourceFile: /src/gpac/src/filters/reframe_rawpcm.c
    functionUses: 0
    functionsReached:
    - gf_audio_fmt_parse
    - PROP_BOOL
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - GF_LOG
    - gf_filter_pid_set_framing_mode
    - GF_FEVT_INIT
    - gf_filter_pid_check_caps
    - PROP_FRAC64_INT
    - gf_filter_pid_send_event
    - gf_filter_pid_new
    - PROP_LONGUINT
    - gf_filter_pid_set_property
    - gf_audio_fmt_bit_depth
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pcmreframe_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_rawpcm.c:144,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_rawpcm.c:182,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_rawpcm.c:184,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/reframe_rawpcm.c:193,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 48
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 206
    functionName: pcmreframe_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_rawpcm.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_discard
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool pcmreframe_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_rawpcm.c:215,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_rawpcm.c:216,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_rawpcm.c:217,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_rawpcm.c:220,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_PCMReframeCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 222
    functionName: pcmreframe_flush_packet
    functionSourceFile: /src/gpac/src/filters/reframe_rawpcm.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void pcmreframe_flush_packet(GF_PCMReframeCtx *ctx)
  - BBCount: 61
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_rawpcm.c:225,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_rawpcm.c:235,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_rawpcm.c:237,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/filters/reframe_rawpcm.c:239,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_rawpcm.c:240,1
    - Dst: pcmreframe_flush_packet
      Src: /src/gpac/src/filters/reframe_rawpcm.c:241,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_rawpcm.c:244,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_rawpcm.c:250,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_rawpcm.c:251,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_rawpcm.c:258,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_rawpcm.c:259,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_rawpcm.c:261,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_rawpcm.c:263,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_rawpcm.c:265,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_rawpcm.c:266,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_rawpcm.c:269,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_rawpcm.c:270,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_rawpcm.c:271,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_rawpcm.c:274,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_rawpcm.c:275,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_rawpcm.c:276,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_rawpcm.c:277,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_rawpcm.c:281,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_rawpcm.c:282,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/filters/reframe_rawpcm.c:287,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/filters/reframe_rawpcm.c:288,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_rawpcm.c:289,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_rawpcm.c:290,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/filters/reframe_rawpcm.c:291,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/filters/reframe_rawpcm.c:292,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/filters/reframe_rawpcm.c:320,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/filters/reframe_rawpcm.c:321,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_rawpcm.c:322,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_rawpcm.c:344,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/filters/reframe_rawpcm.c:346,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/reframe_rawpcm.c:348,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_rawpcm.c:349,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_rawpcm.c:354,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_rawpcm.c:355,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_rawpcm.c:358,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_rawpcm.c:363,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_rawpcm.c:367,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_rawpcm.c:371,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_rawpcm.c:375,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_rawpcm.c:377,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_rawpcm.c:379,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_rawpcm.c:381,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/reframe_rawpcm.c:382,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_rawpcm.c:383,1
    - Dst: pcmreframe_configure_pid
      Src: /src/gpac/src/filters/reframe_rawpcm.c:388,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_rawpcm.c:410,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_rawpcm.c:413,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_rawpcm.c:414,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_rawpcm.c:415,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_rawpcm.c:416,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_rawpcm.c:420,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_rawpcm.c:425,1
    - Dst: pcmreframe_flush_packet
      Src: /src/gpac/src/filters/reframe_rawpcm.c:427,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_rawpcm.c:441,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_rawpcm.c:442,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_rawpcm.c:443,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_rawpcm.c:449,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_rawpcm.c:451,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_rawpcm.c:453,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_rawpcm.c:459,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_rawpcm.c:462,1
    CyclomaticComplexity: 67
    EdgeCount: 67
    ICount: 234
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 223
    functionDepth: 7
    functionLinenumber: 223
    functionLinenumberEnd: 467
    functionName: pcmreframe_process
    functionSourceFile: /src/gpac/src/filters/reframe_rawpcm.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - gf_filter_pck_truncate
    - gf_bs_available
    - gf_filter_pid_get_packet
    - gf_realloc
    - gf_filter_pck_set_byte_offset
    - gf_bs_read_u32
    - memcpy
    - GF_FEVT_INIT
    - pcmreframe_flush_packet
    - gf_bs_skip_bytes
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pid_set_discard
    - gf_filter_pck_new_alloc
    - pcmreframe_configure_pid
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_filter_pid_set_eos
    - gf_bs_get_position
    - gf_bs_read_u16_le
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - gf_bs_is_overflow
    - gf_filter_pid_send_event
    - gf_bs_read_u32_le
    - gf_malloc
    - gf_filter_pck_set_cts
    - gf_bs_del
    - gf_filter_pck_get_byte_offset
    - GF_4CC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pcmreframe_process(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_rawpcm.c:473,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_rawpcm.c:474,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_rawpcm.c:475,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_rawpcm.c:476,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_rawpcm.c:477,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_rawpcm.c:478,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_rawpcm.c:480,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_rawpcm.c:484,1
    - Dst: gf_audio_fmt_all_shortnames
      Src: /src/gpac/src/filters/reframe_rawpcm.c:486,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 469
    functionDepth: 4
    functionLinenumber: 469
    functionLinenumberEnd: 487
    functionName: pcmreframe_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_rawpcm.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_bs_new
    - gf_bs_del
    - gf_audio_fmt_all_shortnames
    - GF_4CC
    linkageType: ''
    returnType: char
    signature: char *pcmreframe_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_rawpcm.c:492,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/reframe_rawpcm.c:493,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_rawpcm.c:494,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 495
      start: 490
    functionDepth: 1
    functionLinenumber: 490
    functionLinenumberEnd: 495
    functionName: pcmreframe_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_rawpcm.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_discard
    - gf_free
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void pcmreframe_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 512
      start: 511
    functionDepth: 0
    functionLinenumber: 511
    functionLinenumberEnd: 512
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/reframe_rawpcm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_audio_fmt_all_names
      Src: /src/gpac/src/filters/reframe_rawpcm.c:540,1
    - Dst: gf_audio_fmt_all_shortnames
      Src: /src/gpac/src/filters/reframe_rawpcm.c:541,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 543
      start: 538
    functionDepth: 2
    functionLinenumber: 538
    functionLinenumberEnd: 543
    functionName: rfpcm_register
    functionSourceFile: /src/gpac/src/filters/reframe_rawpcm.c
    functionUses: 0
    functionsReached:
    - gf_audio_fmt_all_shortnames
    - gf_audio_fmt_all_names
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfpcm_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 545
    functionDepth: 0
    functionLinenumber: 545
    functionLinenumberEnd: 548
    functionName: rfpcm_register
    functionSourceFile: /src/gpac/src/filters/reframe_rawpcm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfpcm_register(GF_FilterSession *session)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_xvid.c:83,1
    - Dst: xvid_init
      Src: /src/gpac/src/filters/dec_xvid.c:91,1
    - Dst: xvid_init
      Src: /src/gpac/src/filters/dec_xvid.c:93,1
    - Dst: xvid_global
      Src: /src/gpac/src/filters/dec_xvid.c:99,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_xvid.c:124,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 126
    functionName: xviddec_initialize
    functionSourceFile: /src/gpac/src/filters/dec_xvid.c
    functionUses: 0
    functionsReached:
    - xvid_global
    - xvid_init
    - gf_list_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err xviddec_initialize(GF_Filter *filter)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_xvid.c:141,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_xvid.c:145,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_xvid.c:151,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_xvid.c:159,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dec_xvid.c:160,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_xvid.c:164,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_xvid.c:165,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_xvid.c:165,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_xvid.c:167,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_xvid.c:169,1
    - Dst: xvid_decore
      Src: /src/gpac/src/filters/dec_xvid.c:173,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_xvid.c:178,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/filters/dec_xvid.c:185,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_xvid.c:189,1
    - Dst: xvid_decore
      Src: /src/gpac/src/filters/dec_xvid.c:203,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_xvid.c:210,1
    - Dst: xvid_decore
      Src: /src/gpac/src/filters/dec_xvid.c:215,1
    - Dst: xvid_decore
      Src: /src/gpac/src/filters/dec_xvid.c:218,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_xvid.c:224,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_xvid.c:224,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_xvid.c:225,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_xvid.c:225,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_xvid.c:226,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_xvid.c:226,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_xvid.c:227,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_xvid.c:228,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/dec_xvid.c:228,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_xvid.c:229,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_xvid.c:229,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 72
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 128
    functionDepth: 5
    functionLinenumber: 128
    functionLinenumberEnd: 232
    functionName: xviddec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_xvid.c
    functionUses: 0
    functionsReached:
    - gf_crc_32
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - xvid_decore
    - gf_filter_pid_set_framing_mode
    - GF_LOG
    - PROP_FRAC
    - gf_filter_pid_check_caps
    - memset
    - gf_filter_pid_new
    - gf_m4v_get_config
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err xviddec_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_xvid.c:236,1
    - Dst: xvid_decore
      Src: /src/gpac/src/filters/dec_xvid.c:237,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_xvid.c:238,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_xvid.c:239,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_xvid.c:240,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_xvid.c:242,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 234
    functionDepth: 3
    functionLinenumber: 234
    functionLinenumberEnd: 243
    functionName: xviddec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_xvid.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_back
    - xvid_decore
    - gf_filter_pck_unref
    - gf_list_count
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void xviddec_finalize(GF_Filter *filter)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_xvid.c:259,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_xvid.c:262,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_xvid.c:267,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_xvid.c:269,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_xvid.c:270,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/dec_xvid.c:274,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_xvid.c:275,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_xvid.c:279,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_xvid.c:280,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_xvid.c:282,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dec_xvid.c:286,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_xvid.c:292,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_xvid.c:296,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dec_xvid.c:305,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_xvid.c:363,1
    - Dst: xvid_decore
      Src: /src/gpac/src/filters/dec_xvid.c:365,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dec_xvid.c:367,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_xvid.c:368,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_xvid.c:370,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dec_xvid.c:371,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_xvid.c:373,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_xvid.c:374,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dec_xvid.c:383,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_xvid.c:384,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_xvid.c:390,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/dec_xvid.c:391,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/dec_xvid.c:392,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_xvid.c:393,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dec_xvid.c:394,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/dec_xvid.c:395,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_xvid.c:396,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dec_xvid.c:397,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dec_xvid.c:400,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_xvid.c:404,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dec_xvid.c:406,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_xvid.c:415,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_xvid.c:418,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 129
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 245
    functionDepth: 2
    functionLinenumber: 245
    functionLinenumberEnd: 424
    functionName: xviddec_process
    functionSourceFile: /src/gpac/src/filters/dec_xvid.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - memset
    - gf_filter_pck_ref_props
    - gf_filter_pck_set_dependency_flags
    - gf_filter_pck_get_seek_flag
    - gf_filter_pid_get_packet
    - gf_list_get
    - gf_list_add
    - gf_filter_pck_get_cts
    - gf_filter_pck_discard
    - gf_filter_pck_get_duration
    - gf_filter_get_udta
    - gf_list_insert
    - gf_filter_pck_new_alloc
    - gf_filter_pid_drop_packet
    - xvid_decore
    - gf_filter_pck_get_data
    - gf_filter_pid_set_eos
    - gf_filter_pid_is_eos
    - gf_filter_pck_set_dts
    - gf_list_pop_front
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err xviddec_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 435
    functionDepth: 0
    functionLinenumber: 435
    functionLinenumberEnd: 436
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dec_xvid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 468
    functionDepth: 0
    functionLinenumber: 468
    functionLinenumberEnd: 475
    functionName: xviddec_register
    functionSourceFile: /src/gpac/src/filters/dec_xvid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *xviddec_register(GF_FilterSession *session)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: AVI_close
      Src: /src/gpac/src/filters/mux_avi.c:78,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/mux_avi.c:83,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/mux_avi.c:83,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_avi.c:84,1
    - Dst: AVI_open_output_file
      Src: /src/gpac/src/filters/mux_avi.c:88,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_avi.c:91,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_avi.c:95,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 4
    argNames:
    - ctx
    - filename
    - ext
    - file_idx
    argTypes:
    - GF_AVIMuxCtx*
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 73
    functionDepth: 6
    functionLinenumber: 73
    functionLinenumberEnd: 100
    functionName: avimux_open_close
    functionSourceFile: /src/gpac/src/filters/mux_avi.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - AVI_close
    - strcmp
    - AVI_open_output_file
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err avimux_open_close(GF_AVIMuxCtx *ctx, const char *filename, const
      char *ext, u32 file_idx)
  - BBCount: 57
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_avi.c:110,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/mux_avi.c:112,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/mux_avi.c:116,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_avi.c:117,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_avi.c:119,1
    - Dst: avimux_open_close
      Src: /src/gpac/src/filters/mux_avi.c:120,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/mux_avi.c:123,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_avi.c:129,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_avi.c:131,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_avi.c:133,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_avi.c:143,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_avi.c:145,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_avi.c:147,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_avi.c:149,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_avi.c:151,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_avi.c:154,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_avi.c:156,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_avi.c:158,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_avi.c:160,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/mux_avi.c:165,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/mux_avi.c:170,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/mux_avi.c:191,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_avi.c:191,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_avi.c:195,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/mux_avi.c:197,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_avi.c:197,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_avi.c:204,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/mux_avi.c:208,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_avi.c:208,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/mux_avi.c:220,1
    - Dst: gf_4cc_parse
      Src: /src/gpac/src/filters/mux_avi.c:222,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/mux_avi.c:226,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_avi.c:226,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_avi.c:227,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/mux_avi.c:227,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/mux_avi.c:232,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/mux_avi.c:235,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_avi.c:236,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/mux_avi.c:253,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/mux_avi.c:254,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/mux_avi.c:256,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_avi.c:282,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/mux_avi.c:282,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_avi.c:291,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/mux_avi.c:293,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_avi.c:296,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_avi.c:298,1
    - Dst: gf_filter_pid_resolve_file_template
      Src: /src/gpac/src/filters/mux_avi.c:301,1
    - Dst: avimux_open_close
      Src: /src/gpac/src/filters/mux_avi.c:302,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_avi.c:306,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_avi.c:308,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/mux_avi.c:323,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_avi.c:324,1
    CyclomaticComplexity: 73
    EdgeCount: 73
    ICount: 214
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 102
    functionDepth: 7
    functionLinenumber: 102
    functionLinenumberEnd: 328
    functionName: avimux_configure_pid
    functionSourceFile: /src/gpac/src/filters/mux_avi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - strcpy
    - gf_list_count
    - gf_filter_pid_check_caps
    - gf_filter_pid_set_udta
    - gf_4cc_parse
    - gf_filter_pid_get_packet
    - gf_4cc_to_str
    - memcpy
    - GF_FEVT_INIT
    - gf_list_add
    - gf_filter_get_udta
    - gf_filter_pck_get_property
    - gf_filter_pid_get_property_str
    - GF_LOG
    - gf_filter_pid_negotiate_property
    - avimux_open_close
    - strncpy
    - gf_list_del_item
    - gf_filter_pid_send_event
    - gf_filter_pid_is_eos
    - gf_filter_pid_resolve_file_template
    - gf_malloc
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_get_udta
    - gf_codecid_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err avimux_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_avi.c:332,1
    - Dst: avimux_open_close
      Src: /src/gpac/src/filters/mux_avi.c:333,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_avi.c:334,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/mux_avi.c:335,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_avi.c:336,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/mux_avi.c:338,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_avi.c:339,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 330
    functionDepth: 7
    functionLinenumber: 330
    functionLinenumberEnd: 340
    functionName: avimux_finalize
    functionSourceFile: /src/gpac/src/filters/mux_avi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - avimux_open_close
    - gf_list_count
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void avimux_finalize(GF_Filter *filter)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_avi.c:351,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_avi.c:356,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_avi.c:359,1
    - Dst: avimux_configure_pid
      Src: /src/gpac/src/filters/mux_avi.c:360,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_avi.c:378,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_avi.c:391,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/mux_avi.c:393,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_avi.c:402,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_avi.c:412,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_avi.c:416,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/mux_avi.c:422,1
    - Dst: AVI_set_audio
      Src: /src/gpac/src/filters/mux_avi.c:425,1
    - Dst: AVI_get_audio_track
      Src: /src/gpac/src/filters/mux_avi.c:426,1
    - Dst: AVI_set_audio_track
      Src: /src/gpac/src/filters/mux_avi.c:428,1
    - Dst: AVI_write_audio
      Src: /src/gpac/src/filters/mux_avi.c:430,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_avi.c:431,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_avi.c:433,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_avi.c:441,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/mux_avi.c:454,1
    - Dst: AVI_set_video
      Src: /src/gpac/src/filters/mux_avi.c:460,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/mux_avi.c:465,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_avi.c:470,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_avi.c:483,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/mux_avi.c:484,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/mux_avi.c:485,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/mux_avi.c:487,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/mux_avi.c:489,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/mux_avi.c:493,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/mux_avi.c:502,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_avi.c:505,1
    - Dst: AVI_write_frame
      Src: /src/gpac/src/filters/mux_avi.c:507,1
    - Dst: AVI_write_frame
      Src: /src/gpac/src/filters/mux_avi.c:509,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/mux_avi.c:514,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_avi.c:517,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_avi.c:522,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_avi.c:524,1
    - Dst: avimux_open_close
      Src: /src/gpac/src/filters/mux_avi.c:530,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_avi.c:532,1
    - Dst: avimux_open_close
      Src: /src/gpac/src/filters/mux_avi.c:542,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 161
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 547
      start: 342
    functionDepth: 8
    functionLinenumber: 342
    functionLinenumberEnd: 547
    functionName: avimux_process
    functionSourceFile: /src/gpac/src/filters/mux_avi.c
    functionUses: 0
    functionsReached:
    - avimux_configure_pid
    - AVI_set_audio
    - gf_list_count
    - gf_filter_pck_get_frame_interface
    - gf_filter_pid_get_packet
    - gf_realloc
    - gf_list_get
    - memcpy
    - AVI_set_video
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_duration
    - AVI_get_audio_track
    - gf_filter_get_udta
    - gf_filter_pck_get_property
    - AVI_write_frame
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - GF_LOG
    - AVI_write_audio
    - avimux_open_close
    - gf_filter_pck_get_sap
    - gf_filter_pid_is_eos
    - gf_timestamp_rescale
    - GF_FilterFrameInterface*::get_plane
    - gf_pixel_get_size_info
    - AVI_set_audio_track
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err avimux_process(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/mux_avi.c:551,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/mux_avi.c:552,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/mux_avi.c:554,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/mux_avi.c:555,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 549
    functionDepth: 4
    functionLinenumber: 549
    functionLinenumberEnd: 558
    functionName: avimux_probe_url
    functionSourceFile: /src/gpac/src/filters/mux_avi.c
    functionUses: 0
    functionsReached:
    - gf_file_ext_start
    - stricmp
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore avimux_probe_url(const char *url, const char *mime)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 563
    functionDepth: 0
    functionLinenumber: 563
    functionLinenumberEnd: 564
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/mux_avi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_avi.c:670,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/mux_avi.c:673,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/mux_avi.c:675,1
    - Dst: gf_filter_is_temporary
      Src: /src/gpac/src/filters/mux_avi.c:677,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/mux_avi.c:680,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_avi.c:680,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/mux_avi.c:681,1
    - Dst: strchr
      Src: /src/gpac/src/filters/mux_avi.c:684,1
    - Dst: strchr
      Src: /src/gpac/src/filters/mux_avi.c:685,1
    - Dst: avimux_open_close
      Src: /src/gpac/src/filters/mux_avi.c:688,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 667
    functionDepth: 7
    functionLinenumber: 667
    functionLinenumberEnd: 691
    functionName: avimux_initialize
    functionSourceFile: /src/gpac/src/filters/mux_avi.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_override_caps
    - gf_filter_is_temporary
    - avimux_open_close
    - strstr
    - strnicmp
    - gf_filter_setup_failure
    - strchr
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err avimux_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 703
      start: 695
    functionDepth: 0
    functionLinenumber: 695
    functionLinenumberEnd: 703
    functionName: avimx_register
    functionSourceFile: /src/gpac/src/filters/mux_avi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *avimx_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _to_webgrab
      Src: /src/gpac/src/filters/avin_web.c:64,1
    - Dst: _on_wgrab_error
      Src: /src/gpac/src/filters/avin_web.c:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 68
    functionName: EM_JS
    functionSourceFile: /src/gpac/src/filters/avin_web.c
    functionUses: 0
    functionsReached:
    - _on_wgrab_error
    - _to_webgrab
    linkageType: ''
    returnType: void
    signature: "void EM_JS(int, webgrab_next_video, (int wg_ctx),\n{\n\tlet c = libgpac._to_webgrab(wg_ctx);\n\tif
      (!c)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _to_webgrab
      Src: /src/gpac/src/filters/avin_web.c:94,1
    - Dst: _on_wgrab_error
      Src: /src/gpac/src/filters/avin_web.c:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 98
    functionName: EM_JS
    functionSourceFile: /src/gpac/src/filters/avin_web.c
    functionUses: 0
    functionsReached:
    - _on_wgrab_error
    - _to_webgrab
    linkageType: ''
    returnType: void
    signature: "void EM_JS(int, webgrab_next_audio, (int wg_ctx),\n{\n\tlet c = libgpac._to_webgrab(wg_ctx);\n\tif
      (!c)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/avin_web.c:119,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/avin_web.c:125,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/avin_web.c:126,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/avin_web.c:127,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/avin_web.c:130,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/avin_web.c:134,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/avin_web.c:135,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/avin_web.c:136,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/avin_web.c:140,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 23
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 117
    functionDepth: 2
    functionLinenumber: 117
    functionLinenumberEnd: 147
    functionName: webgrab_process
    functionSourceFile: /src/gpac/src/filters/avin_web.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_front
    - gf_filter_pid_set_eos
    - gf_filter_get_udta
    - gf_list_count
    - gf_sys_clock_high_res
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err webgrab_process(GF_Filter *filter)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/avin_web.c:152,1
    - Dst: webgrab_next_video
      Src: /src/gpac/src/filters/avin_web.c:156,1
    - Dst: webgrab_next_audio
      Src: /src/gpac/src/filters/avin_web.c:159,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 175
    functionName: webgrab_process_event
    functionSourceFile: /src/gpac/src/filters/avin_web.c
    functionUses: 0
    functionsReached:
    - webgrab_next_video
    - webgrab_next_audio
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool webgrab_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/avin_web.c:180,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/avin_web.c:183,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - res_code
    - msg
    argTypes:
    - GF_WebGrab*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 186
    functionName: webgrab_on_error
    functionSourceFile: /src/gpac/src/filters/avin_web.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_filter_setup_failure
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT webgrab_on_error(GF_WebGrab *ctx, int res_code, char *msg)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/avin_web.c:211,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/avin_web.c:212,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/avin_web.c:214,1
    - Dst: webgrab_next_video
      Src: /src/gpac/src/filters/avin_web.c:216,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - pck
    - res_ok
    argTypes:
    - GF_WebGrab*
    - GF_FilterPacket*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 217
    functionName: webgrab_on_frame_copy
    functionSourceFile: /src/gpac/src/filters/avin_web.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_discard
    - webgrab_next_video
    - gf_list_add
    - gf_filter_post_process_task
    linkageType: ''
    returnType: void
    signature: void webgrab_on_frame_copy(GF_WebGrab *ctx, GF_FilterPacket *pck, int
      res_ok)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: webcodec_pixfmt_to_gpac
      Src: /src/gpac/src/filters/avin_web.c:224,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/avin_web.c:226,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/avin_web.c:228,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/avin_web.c:228,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/avin_web.c:229,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/avin_web.c:229,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/avin_web.c:230,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/avin_web.c:230,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/avin_web.c:231,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/avin_web.c:231,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/avin_web.c:234,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/avin_web.c:234,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/avin_web.c:235,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/avin_web.c:235,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/avin_web.c:236,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/avin_web.c:236,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/avin_web.c:240,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/avin_web.c:245,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/avin_web.c:248,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/avin_web.c:252,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/avin_web.c:258,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/avin_web.c:262,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/filters/avin_web.c:264,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/avin_web.c:265,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/avin_web.c:265,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 5
    argNames:
    - ctx
    - width
    - height
    - pixfmt
    - ts
    argTypes:
    - GF_WebGrab*
    - u32
    - u32
    - char*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 219
    functionDepth: 5
    functionLinenumber: 219
    functionLinenumberEnd: 272
    functionName: webgrab_on_video_frame
    functionSourceFile: /src/gpac/src/filters/avin_web.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_property
    - gf_filter_pck_new_alloc
    - PROP_UINT
    - gf_filter_pck_set_cts
    - GF_LOG
    - gf_sys_clock_high_res
    - webcodec_pixfmt_to_gpac
    - gf_pixel_get_size_info
    - gf_net_get_ntp_ts
    - gf_filter_pid_new
    - PROP_LONGUINT
    - gf_filter_pid_set_property
    - gf_timestamp_rescale
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT webgrab_on_video_frame(GF_WebGrab *ctx, u32 width, u32 height,
      char * pixfmt, u64 ts)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: webcodec_audiofmt_to_gpac
      Src: /src/gpac/src/filters/avin_web.c:290,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/avin_web.c:292,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/avin_web.c:294,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/avin_web.c:294,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/avin_web.c:295,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/avin_web.c:295,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/avin_web.c:296,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/avin_web.c:296,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/avin_web.c:297,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/avin_web.c:297,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/avin_web.c:300,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/avin_web.c:300,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/avin_web.c:301,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/avin_web.c:301,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/avin_web.c:302,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/avin_web.c:302,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/avin_web.c:306,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/avin_web.c:311,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/avin_web.c:315,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/avin_web.c:318,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/filters/avin_web.c:320,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/avin_web.c:321,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/avin_web.c:321,1
    - Dst: gf_audio_fmt_is_planar
      Src: /src/gpac/src/filters/avin_web.c:326,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/avin_web.c:339,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/avin_web.c:340,1
    - Dst: webgrab_next_audio
      Src: /src/gpac/src/filters/avin_web.c:342,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 6
    argNames:
    - ctx
    - sr
    - channels
    - afmt
    - num_frames
    - ts
    argTypes:
    - GF_WebGrab*
    - u32
    - u32
    - char*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 286
    functionDepth: 1
    functionLinenumber: 286
    functionLinenumberEnd: 343
    functionName: webgrab_on_audio_data
    functionSourceFile: /src/gpac/src/filters/avin_web.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_property
    - gf_filter_pck_new_alloc
    - PROP_UINT
    - webgrab_next_audio
    - gf_filter_pck_set_cts
    - GF_LOG
    - gf_audio_fmt_is_planar
    - gf_net_get_ntp_ts
    - gf_list_add
    - gf_filter_post_process_task
    - gf_filter_pid_new
    - PROP_LONGUINT
    - gf_filter_pid_set_property
    - webcodec_audiofmt_to_gpac
    - gf_audio_fmt_bit_depth
    linkageType: ''
    returnType: void
    signature: void webgrab_on_audio_data(GF_WebGrab *ctx, u32 sr, u32 channels, char
      * afmt, u32 num_frames, u64 ts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: for
      Src: /src/gpac/src/filters/avin_web.c:350,1
    - Dst: if
      Src: /src/gpac/src/filters/avin_web.c:351,1
    - Dst: cwrap
      Src: /src/gpac/src/filters/avin_web.c:355,1
    - Dst: cwrap
      Src: /src/gpac/src/filters/avin_web.c:356,1
    - Dst: cwrap
      Src: /src/gpac/src/filters/avin_web.c:357,1
    - Dst: cwrap
      Src: /src/gpac/src/filters/avin_web.c:358,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - function
    argTypes:
    - typeof
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 359
    functionName: EM_JS
    functionSourceFile: /src/gpac/src/filters/avin_web.c
    functionUses: 0
    functionsReached:
    - cwrap
    - if
    - for
    linkageType: ''
    returnType: void
    signature: "void EM_JS(int, webgrab_start_usermedia, (int wg_ctx, int vid, int
      aud, int canv_id, int w, int h, int back, int alpha),\n{\n\tif (typeof libgpac._to_webgrab
      != 'function')"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/avin_web.c:434,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/avin_web.c:439,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/avin_web.c:440,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/avin_web.c:444,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/avin_web.c:445,1
    - Dst: gf_filter_prevent_blocking
      Src: /src/gpac/src/filters/avin_web.c:449,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/avin_web.c:452,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/avin_web.c:453,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 430
    functionDepth: 1
    functionLinenumber: 430
    functionLinenumberEnd: 455
    functionName: webgrab_initialize
    functionSourceFile: /src/gpac/src/filters/avin_web.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_prevent_blocking
    - strncmp
    - strcmp
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err webgrab_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/avin_web.c:475,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/avin_web.c:477,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/avin_web.c:478,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/avin_web.c:479,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/avin_web.c:481,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/avin_web.c:482,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/avin_web.c:483,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/avin_web.c:484,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/avin_web.c:486,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 473
    functionDepth: 2
    functionLinenumber: 473
    functionLinenumberEnd: 487
    functionName: webgrab_finalize
    functionSourceFile: /src/gpac/src/filters/avin_web.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_front
    - gf_list_count
    - gf_filter_pck_discard
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void webgrab_finalize(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/filters/avin_web.c:491,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/avin_web.c:492,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/avin_web.c:493,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/avin_web.c:494,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 489
    functionDepth: 0
    functionLinenumber: 489
    functionLinenumberEnd: 496
    functionName: webgrab_probe_url
    functionSourceFile: /src/gpac/src/filters/avin_web.c
    functionUses: 0
    functionsReached:
    - strncmp
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore webgrab_probe_url(const char *url, const char *mime)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 509
    functionDepth: 0
    functionLinenumber: 509
    functionLinenumberEnd: 510
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/avin_web.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 526
      start: 523
    functionDepth: 0
    functionLinenumber: 523
    functionLinenumberEnd: 526
    functionName: webgrab_process_dummy
    functionSourceFile: /src/gpac/src/filters/avin_web.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err webgrab_process_dummy(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: EM_ASM_INT
      Src: /src/gpac/src/filters/avin_web.c:564,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/avin_web.c:569,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/avin_web.c:573,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 581
      start: 560
    functionDepth: 6
    functionLinenumber: 560
    functionLinenumberEnd: 581
    functionName: webgrab_register
    functionSourceFile: /src/gpac/src/filters/avin_web.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_opts_get_bool
    - EM_ASM_INT
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *webgrab_register(GF_FilterSession *session)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_scte35.c:86,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/dec_scte35.c:89,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/filters/dec_scte35.c:91,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_scte35.c:93,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/filters/dec_scte35.c:98,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_scte35.c:101,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_scte35.c:102,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - SCTE35DecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 84
    functionDepth: 4
    functionLinenumber: 84
    functionLinenumberEnd: 104
    functionName: scte35dec_initialize_internal
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_isom_box_size
    - gf_bs_new
    - gf_isom_box_del
    - gf_isom_box_write
    - gf_bs_del
    - gf_isom_box_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err scte35dec_initialize_internal(SCTE35DecCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_scte35.c:108,1
    - Dst: scte35dec_initialize_internal
      Src: /src/gpac/src/filters/dec_scte35.c:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 106
    functionDepth: 5
    functionLinenumber: 106
    functionLinenumberEnd: 113
    functionName: scte35dec_initialize
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - scte35dec_initialize_internal
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err scte35dec_initialize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_scte35.c:117,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_scte35.c:118,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_scte35.c:119,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_scte35.c:120,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_scte35.c:122,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_scte35.c:124,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - SCTE35DecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 115
    functionDepth: 4
    functionLinenumber: 115
    functionLinenumberEnd: 127
    functionName: scte35dec_finalize_internal
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_isom_box_del
    - gf_filter_pck_unref
    - gf_list_count
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void scte35dec_finalize_internal(SCTE35DecCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_scte35.c:131,1
    - Dst: scte35dec_finalize_internal
      Src: /src/gpac/src/filters/dec_scte35.c:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 129
    functionDepth: 5
    functionLinenumber: 129
    functionLinenumberEnd: 133
    functionName: scte35dec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - scte35dec_finalize_internal
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void scte35dec_finalize(GF_Filter *filter)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_scte35.c:137,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dec_scte35.c:140,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_scte35.c:144,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_scte35.c:148,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_scte35.c:152,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dec_scte35.c:154,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/dec_scte35.c:155,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dec_scte35.c:158,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_scte35.c:161,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_scte35.c:164,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_scte35.c:172,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_scte35.c:172,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_scte35.c:173,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_scte35.c:173,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_scte35.c:174,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dec_scte35.c:174,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_scte35.c:176,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_scte35.c:179,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 38
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 185
    functionName: scte35dec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - PROP_BOOL
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_rand
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_check_caps
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err scte35dec_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_scte35.c:195,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dec_scte35.c:204,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 208
    functionName: scte35dec_process_event
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool scte35dec_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_scte35.c:214,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_scte35.c:215,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:218,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dec_scte35.c:223,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:225,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dec_scte35.c:226,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dec_scte35.c:229,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dec_scte35.c:230,1
    - Dst: SCTE35DecCtx*::pck_send
      Src: /src/gpac/src/filters/dec_scte35.c:231,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 4
    argNames:
    - ctx
    - pck
    - dts
    - dur
    argTypes:
    - SCTE35DecCtx*
    - GF_FilterPacket*
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 233
    functionName: scte35dec_send_pck
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_dts
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - gf_filter_pck_set_framing
    - SCTE35DecCtx*::pck_send
    - gf_filter_pck_set_sap
    linkageType: ''
    returnType: void
    signature: void scte35dec_send_pck(SCTE35DecCtx *ctx, GF_FilterPacket *pck, u64
      dts, u32 dur)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SCTE35DecCtx*::pck_new_shared
      Src: /src/gpac/src/filters/dec_scte35.c:237,1
    - Dst: scte35dec_send_pck
      Src: /src/gpac/src/filters/dec_scte35.c:240,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctx
    - dts
    - dur
    argTypes:
    - SCTE35DecCtx*
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 235
    functionDepth: 2
    functionLinenumber: 235
    functionLinenumberEnd: 242
    functionName: scte35dec_flush_emeb
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - scte35dec_send_pck
    - SCTE35DecCtx*::pck_new_shared
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err scte35dec_flush_emeb(SCTE35DecCtx *ctx, u64 dts, u32 dur)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_scte35.c:247,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_scte35.c:251,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_scte35.c:252,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dec_scte35.c:254,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_scte35.c:258,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - ctx
    - dts
    - emib
    argTypes:
    - SCTE35DecCtx*
    - u64
    - GF_EventMessageBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 244
    functionDepth: 2
    functionLinenumber: 244
    functionLinenumberEnd: 259
    functionName: scte35dec_schedule
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_get
    - GF_SAFEALLOC
    - gf_list_count
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void scte35dec_schedule(SCTE35DecCtx *ctx, u64 dts, GF_EventMessageBox
      *emib)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: MIN
      Src: /src/gpac/src/filters/dec_scte35.c:264,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - dts
    - evt_dts
    - max_dur
    - evt_dur
    argTypes:
    - u64
    - u64
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 261
    functionDepth: 1
    functionLinenumber: 261
    functionLinenumberEnd: 270
    functionName: compute_emib_duration
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - MIN
    linkageType: ''
    returnType: u32
    signature: u32 compute_emib_duration(u64 dts, u64 evt_dts, u32 max_dur, u32 evt_dur)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/dec_scte35.c:274,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_scte35.c:274,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dec_scte35.c:278,1
    - Dst: SCTE35DecCtx*::pck_new_alloc
      Src: /src/gpac/src/filters/dec_scte35.c:282,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_scte35.c:288,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/filters/dec_scte35.c:289,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_scte35.c:290,1
    - Dst: compute_emib_duration
      Src: /src/gpac/src/filters/dec_scte35.c:293,1
    - Dst: scte35dec_send_pck
      Src: /src/gpac/src/filters/dec_scte35.c:295,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_scte35.c:313,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_scte35.c:314,1
    - Dst: scte35dec_schedule
      Src: /src/gpac/src/filters/dec_scte35.c:316,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_scte35.c:317,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_scte35.c:327,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_scte35.c:328,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 44
    argCount: 3
    argNames:
    - ctx
    - dts
    - max_dur
    argTypes:
    - SCTE35DecCtx*
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 272
    functionDepth: 4
    functionLinenumber: 272
    functionLinenumberEnd: 331
    functionName: scte35dec_flush_emib
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_free
    - scte35dec_send_pck
    - SCTE35DecCtx*::pck_new_alloc
    - gf_bs_new
    - gf_isom_box_del
    - gf_list_pop_front
    - gf_isom_box_write
    - gf_bs_del
    - gf_list_count
    - gf_fatal_assert
    - compute_emib_duration
    - scte35dec_schedule
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err scte35dec_flush_emib(SCTE35DecCtx *ctx, u64 dts, u32 max_dur)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_scte35.c:336,1
    - Dst: scte35dec_flush_emeb
      Src: /src/gpac/src/filters/dec_scte35.c:337,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - first_evt
    - timestamp
    - dur
    argTypes:
    - SCTE35DecCtx*
    - Event*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 333
    functionDepth: 3
    functionLinenumber: 333
    functionLinenumberEnd: 340
    functionName: scte35_insert_emeb_before_emib
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - scte35dec_flush_emeb
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err scte35_insert_emeb_before_emib(SCTE35DecCtx *ctx, Event *first_evt,
      u64 timestamp, u64 dur)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_scte35.c:344,1
    - Dst: scte35dec_flush_emeb
      Src: /src/gpac/src/filters/dec_scte35.c:345,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_scte35.c:348,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_scte35.c:353,1
    - Dst: MIN
      Src: /src/gpac/src/filters/dec_scte35.c:356,1
    - Dst: scte35_insert_emeb_before_emib
      Src: /src/gpac/src/filters/dec_scte35.c:357,1
    - Dst: scte35_insert_emeb_before_emib
      Src: /src/gpac/src/filters/dec_scte35.c:366,1
    - Dst: scte35dec_flush_emib
      Src: /src/gpac/src/filters/dec_scte35.c:373,1
    - Dst: scte35dec_flush_emeb
      Src: /src/gpac/src/filters/dec_scte35.c:378,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 3
    argNames:
    - ctx
    - ts
    - dur
    argTypes:
    - SCTE35DecCtx*
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 342
    functionDepth: 5
    functionLinenumber: 342
    functionLinenumberEnd: 382
    functionName: scte35dec_push_box
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_assert
    - MIN
    - gf_list_count
    - scte35dec_flush_emeb
    - scte35_insert_emeb_before_emib
    - scte35dec_flush_emib
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err scte35dec_push_box(SCTE35DecCtx *ctx, const u64 ts, const u32
      dur)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_scte35.c:389,1
    - Dst: scte35dec_push_box
      Src: /src/gpac/src/filters/dec_scte35.c:392,1
    - Dst: scte35dec_push_box
      Src: /src/gpac/src/filters/dec_scte35.c:395,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - SCTE35DecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 384
    functionDepth: 6
    functionLinenumber: 384
    functionLinenumberEnd: 397
    functionName: scte35dec_flush
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - scte35dec_push_box
    linkageType: ''
    returnType: void
    signature: void scte35dec_flush(SCTE35DecCtx *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:401,1
    - Dst: scte35dec_push_box
      Src: /src/gpac/src/filters/dec_scte35.c:408,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - SCTE35DecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 399
    functionDepth: 6
    functionLinenumber: 399
    functionLinenumberEnd: 409
    functionName: new_segment
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 1
    functionsReached:
    - scte35dec_push_box
    - GF_LOG
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err new_segment(SCTE35DecCtx *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:413,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:415,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/dec_scte35.c:416,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:418,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 411
    functionDepth: 6
    functionLinenumber: 411
    functionLinenumberEnd: 421
    functionName: scte35dec_parse_splice_time
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_long_int
    - gf_bs_read_int
    linkageType: ''
    returnType: u64
    signature: u64 scte35dec_parse_splice_time(GF_BitStream *bs)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_scte35.c:426,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:429,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:431,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:434,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:435,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:436,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:437,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/filters/dec_scte35.c:438,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:439,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:443,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:444,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:445,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/dec_scte35.c:446,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:449,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:453,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:454,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:456,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dec_scte35.c:457,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:458,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dec_scte35.c:459,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:463,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_scte35.c:468,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:469,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:470,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:472,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:473,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:474,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:475,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:476,1
    - Dst: scte35dec_parse_splice_time
      Src: /src/gpac/src/filters/dec_scte35.c:479,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:485,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:487,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_scte35.c:489,1
    - Dst: scte35dec_parse_splice_time
      Src: /src/gpac/src/filters/dec_scte35.c:490,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:497,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:498,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/dec_scte35.c:499,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:506,1
    - Dst: scte35dec_parse_splice_time
      Src: /src/gpac/src/filters/dec_scte35.c:513,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:515,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:521,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dec_scte35.c:522,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/dec_scte35.c:523,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:526,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dec_scte35.c:531,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_scte35.c:532,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_scte35.c:533,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:535,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:536,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dec_scte35.c:538,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:539,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_scte35.c:543,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_scte35.c:547,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:548,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:549,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:550,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:553,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:554,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:555,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:558,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:559,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:560,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:561,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:563,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:567,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dec_scte35.c:569,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/dec_scte35.c:573,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:576,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:577,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dec_scte35.c:578,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:579,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:580,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:581,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:597,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:598,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:604,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dec_scte35.c:609,1
    - Dst: MAX
      Src: /src/gpac/src/filters/dec_scte35.c:609,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dec_scte35.c:614,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_scte35.c:620,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 144
    argCount: 6
    argNames:
    - data
    - size
    - pts
    - dur
    - splice_event_id
    - needs_idr
    argTypes:
    - u8*
    - u32
    - u64*
    - u64*
    - u32*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 423
    functionDepth: 7
    functionLinenumber: 423
    functionLinenumberEnd: 622
    functionName: scte35dec_get_timing
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_bs_read_u32
    - gf_bs_new
    - gf_bs_read_u16
    - gf_bs_seek
    - GF_LOG
    - gf_bs_read_long_int
    - gf_bs_get_size
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_del
    - gf_bs_read_int
    - gf_bs_read_u8
    - gf_bs_available
    - MAX
    - scte35dec_parse_splice_time
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: Bool
    signature: Bool scte35dec_get_timing(const u8 *data, u32 size, u64 *pts, u64 *dur,
      u32 *splice_event_id, Bool *needs_idr)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:635,1
    - Dst: MIN
      Src: /src/gpac/src/filters/dec_scte35.c:648,1
    - Dst: scte35dec_push_box
      Src: /src/gpac/src/filters/dec_scte35.c:649,1
    - Dst: MAX
      Src: /src/gpac/src/filters/dec_scte35.c:653,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 4
    argNames:
    - ctx
    - dts
    - timescale
    - dur
    argTypes:
    - SCTE35DecCtx*
    - u64
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 654
      start: 624
    functionDepth: 6
    functionLinenumber: 624
    functionLinenumberEnd: 654
    functionName: scte35dec_process_timing
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - scte35dec_push_box
    - GF_LOG
    - MAX
    - MIN
    linkageType: ''
    returnType: void
    signature: void scte35dec_process_timing(SCTE35DecCtx *ctx, u64 dts, u32 timescale,
      u32 dur)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: scte35dec_get_timing
      Src: /src/gpac/src/filters/dec_scte35.c:662,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/dec_scte35.c:665,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:671,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:673,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_scte35.c:675,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_scte35.c:676,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_scte35.c:678,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/filters/dec_scte35.c:682,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_scte35.c:684,1
    - Dst: scte35dec_schedule
      Src: /src/gpac/src/filters/dec_scte35.c:689,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_scte35.c:691,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 4
    argNames:
    - ctx
    - data
    - size
    - dts
    argTypes:
    - SCTE35DecCtx*
    - u8*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 694
      start: 656
    functionDepth: 8
    functionLinenumber: 656
    functionLinenumberEnd: 694
    functionName: scte35dec_process_emsg
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_isom_box_size
    - gf_isom_box_del
    - GF_LOG
    - scte35dec_get_timing
    - gf_isom_box_new
    - gf_malloc
    - scte35dec_schedule
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err scte35dec_process_emsg(SCTE35DecCtx *ctx, const u8 *data, u32
      size, u64 dts)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_scte35.c:698,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dec_scte35.c:702,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_scte35.c:703,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_scte35.c:704,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - cts
    argTypes:
    - SCTE35DecCtx*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 707
      start: 696
    functionDepth: 4
    functionLinenumber: 696
    functionLinenumberEnd: 707
    functionName: scte35dec_is_splice_point
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_front
    - gf_free
    - gf_list_get
    - gf_isom_box_del
    linkageType: ''
    returnType: Bool
    signature: Bool scte35dec_is_splice_point(SCTE35DecCtx *ctx, u64 cts)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_scte35.c:712,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_scte35.c:717,1
    - Dst: scte35dec_push_box
      Src: /src/gpac/src/filters/dec_scte35.c:718,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/filters/dec_scte35.c:721,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:732,1
    - Dst: new_segment
      Src: /src/gpac/src/filters/dec_scte35.c:738,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 3
    argNames:
    - ctx
    - dts
    - dur
    argTypes:
    - SCTE35DecCtx*
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 743
      start: 709
    functionDepth: 7
    functionLinenumber: 709
    functionLinenumberEnd: 743
    functionName: scte35dec_process_dispatch
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - GF_LOG
    - gf_list_count
    - scte35dec_push_box
    - new_segment
    - gf_list_rem_last
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err scte35dec_process_dispatch(SCTE35DecCtx *ctx, u64 dts, u32 dur)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_clone
      Src: /src/gpac/src/filters/dec_scte35.c:747,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_scte35.c:751,1
    - Dst: scte35dec_is_splice_point
      Src: /src/gpac/src/filters/dec_scte35.c:752,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:753,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dec_scte35.c:754,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dec_scte35.c:754,1
    - Dst: SCTE35DecCtx*::pck_send
      Src: /src/gpac/src/filters/dec_scte35.c:757,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - SCTE35DecCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 745
    functionDepth: 5
    functionLinenumber: 745
    functionLinenumberEnd: 758
    functionName: scte35dec_process_passthrough
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_property
    - gf_filter_pck_new_clone
    - GF_LOG
    - SCTE35DecCtx*::pck_send
    - scte35dec_is_splice_point
    - gf_filter_pck_get_cts
    - PROP_BOOL
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err scte35dec_process_passthrough(SCTE35DecCtx *ctx, GF_FilterPacket
      *pck)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_scte35.c:765,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_scte35.c:768,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dec_scte35.c:775,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/filters/dec_scte35.c:777,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:779,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:784,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_scte35.c:786,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:794,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dec_scte35.c:796,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:797,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_scte35.c:799,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_scte35.c:808,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_scte35.c:810,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/dec_scte35.c:813,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 44
    argCount: 4
    argNames:
    - ctx
    - pck
    - size
    - own
    argTypes:
    - SCTE35DecCtx*
    - GF_FilterPacket*
    - u32*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 821
      start: 760
    functionDepth: 4
    functionLinenumber: 760
    functionLinenumberEnd: 821
    functionName: scte35dec_pck_get_data
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_property_str
    - gf_bs_new
    - gf_isom_box_del
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_bs_del
    - strcmp
    - gf_bs_available
    - gf_isom_box_parse
    linkageType: ''
    returnType: u8
    signature: u8 *scte35dec_pck_get_data(SCTE35DecCtx *ctx, GF_FilterPacket *pck,
      u32 *size, Bool *own)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_scte35.c:825,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_scte35.c:827,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_scte35.c:829,1
    - Dst: scte35dec_flush
      Src: /src/gpac/src/filters/dec_scte35.c:830,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_scte35.c:831,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dec_scte35.c:837,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_scte35.c:840,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dec_scte35.c:842,1
    - Dst: scte35dec_process_dispatch
      Src: /src/gpac/src/filters/dec_scte35.c:844,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/dec_scte35.c:845,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_scte35.c:846,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:852,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/dec_scte35.c:854,1
    - Dst: scte35dec_process_timing
      Src: /src/gpac/src/filters/dec_scte35.c:856,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_scte35.c:856,1
    - Dst: scte35dec_pck_get_data
      Src: /src/gpac/src/filters/dec_scte35.c:860,1
    - Dst: scte35dec_process_emsg
      Src: /src/gpac/src/filters/dec_scte35.c:862,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_scte35.c:864,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:866,1
    - Dst: scte35dec_process_passthrough
      Src: /src/gpac/src/filters/dec_scte35.c:871,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dec_scte35.c:873,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_scte35.c:876,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/dec_scte35.c:879,1
    - Dst: scte35dec_process_dispatch
      Src: /src/gpac/src/filters/dec_scte35.c:882,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_scte35.c:885,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 42
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 888
      start: 823
    functionDepth: 9
    functionLinenumber: 823
    functionLinenumberEnd: 888
    functionName: scte35dec_process
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_free
    - scte35dec_process_dispatch
    - gf_filter_pck_ref_props
    - scte35dec_process_emsg
    - gf_filter_pid_get_packet
    - scte35dec_process_passthrough
    - gf_filter_pck_forward
    - gf_filter_pck_get_duration
    - scte35dec_pck_get_data
    - gf_filter_get_udta
    - gf_filter_pck_get_property
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pid_set_eos
    - scte35dec_process_timing
    - gf_filter_pck_get_timescale
    - gf_filter_pid_is_eos
    - scte35dec_flush
    - gf_filter_pck_unref
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err scte35dec_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 913
      start: 912
    functionDepth: 0
    functionLinenumber: 912
    functionLinenumberEnd: 913
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 940
    functionDepth: 0
    functionLinenumber: 940
    functionLinenumberEnd: 943
    functionName: scte35dec_register
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *scte35dec_register(GF_FilterSession *session)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_prores.c:79,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/reframe_prores.c:84,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/reframe_prores.c:89,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_prores.c:93,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_prores.c:97,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_prores.c:98,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:99,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_prores.c:107,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 112
    functionName: proresdmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/reframe_prores.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err proresdmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_prores.c:125,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_prores.c:128,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_prores.c:129,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/reframe_prores.c:138,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_prores.c:141,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_prores.c:143,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/reframe_prores.c:152,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/reframe_prores.c:154,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/filters/reframe_prores.c:159,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_prores.c:163,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_prores.c:167,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_prores.c:168,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_prores.c:169,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_prores.c:170,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_prores.c:171,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_prores.c:178,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_prores.c:183,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_prores.c:184,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/reframe_prores.c:185,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:191,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_prores.c:191,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:193,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_prores.c:193,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 68
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_ProResDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 115
    functionDepth: 7
    functionLinenumber: 115
    functionLinenumberEnd: 201
    functionName: proresdmx_check_dur
    functionSourceFile: /src/gpac/src/filters/reframe_prores.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - PROP_BOOL
    - gf_bs_read_u32
    - gf_filter_pid_get_property
    - gf_bs_seek
    - GF_LOG
    - gf_fileio_is_main_thread
    - gf_bs_get_position
    - gf_bs_del
    - PROP_FRAC64
    - strncmp
    - gf_fopen_ex
    - GF_4CC
    - gf_bs_available
    - gf_bs_from_file
    - gf_opts_get_bool
    - gf_filter_pid_set_property
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void proresdmx_check_dur(GF_Filter *filter, GF_ProResDmxCtx *ctx)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_prores.c:209,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_prores.c:230,1
    - Dst: proresdmx_check_dur
      Src: /src/gpac/src/filters/reframe_prores.c:231,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_prores.c:263,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_prores.c:265,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 58
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 204
    functionDepth: 8
    functionLinenumber: 204
    functionLinenumberEnd: 284
    functionName: proresdmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_prores.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - proresdmx_check_dur
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool proresdmx_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_prores.c:289,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_prores.c:290,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_ProResDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 286
    functionDepth: 1
    functionLinenumber: 286
    functionLinenumberEnd: 303
    functionName: proresdmx_update_cts
    functionSourceFile: /src/gpac/src/filters/reframe_prores.c
    functionUses: 0
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE proresdmx_update_cts(GF_ProResDmxCtx *ctx)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_CFG
      Src: /src/gpac/src/filters/reframe_prores.c:314,1
    - Dst: CHECK_CFG
      Src: /src/gpac/src/filters/reframe_prores.c:315,1
    - Dst: CHECK_CFG
      Src: /src/gpac/src/filters/reframe_prores.c:316,1
    - Dst: CHECK_CFG
      Src: /src/gpac/src/filters/reframe_prores.c:317,1
    - Dst: CHECK_CFG
      Src: /src/gpac/src/filters/reframe_prores.c:318,1
    - Dst: CHECK_CFG
      Src: /src/gpac/src/filters/reframe_prores.c:319,1
    - Dst: CHECK_CFG
      Src: /src/gpac/src/filters/reframe_prores.c:320,1
    - Dst: CHECK_CFG
      Src: /src/gpac/src/filters/reframe_prores.c:321,1
    - Dst: CHECK_CFG
      Src: /src/gpac/src/filters/reframe_prores.c:322,1
    - Dst: CHECK_CFG
      Src: /src/gpac/src/filters/reframe_prores.c:323,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_prores.c:354,1
    - Dst: proresdmx_check_dur
      Src: /src/gpac/src/filters/reframe_prores.c:355,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_prores.c:364,1
    - Dst: strlen
      Src: /src/gpac/src/filters/reframe_prores.c:365,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_prores.c:366,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_prores.c:375,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:376,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_prores.c:376,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:377,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_prores.c:377,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:379,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_prores.c:379,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_prores.c:382,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:383,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/reframe_prores.c:383,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:385,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_prores.c:385,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:386,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_prores.c:386,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:390,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_prores.c:390,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:393,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:399,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:402,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/reframe_prores.c:402,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:405,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/reframe_prores.c:405,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:408,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/reframe_prores.c:408,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:411,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:416,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_prores.c:416,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:418,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_prores.c:418,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:421,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_prores.c:421,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:426,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_prores.c:426,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:429,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_prores.c:429,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:431,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_prores.c:431,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:432,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_prores.c:432,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:433,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_prores.c:433,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:436,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_prores.c:436,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 139
    argCount: 3
    argNames:
    - filter
    - ctx
    - finfo
    argTypes:
    - GF_Filter*
    - GF_ProResDmxCtx*
    - GF_ProResFrameInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 305
    functionDepth: 8
    functionLinenumber: 305
    functionLinenumberEnd: 437
    functionName: proresdmx_check_pid
    functionSourceFile: /src/gpac/src/filters/reframe_prores.c
    functionUses: 0
    functionsReached:
    - PROP_BOOL
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - gf_filter_pid_get_property
    - PROP_FRAC
    - memcpy
    - proresdmx_check_dur
    - PROP_FRAC64
    - CHECK_CFG
    - GF_4CC
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - strlen
    - PROP_FRAC_INT
    linkageType: ''
    returnType: void
    signature: void proresdmx_check_pid(GF_Filter *filter, GF_ProResDmxCtx *ctx, GF_ProResFrameInfo
      *finfo)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 312
    functionDepth: 0
    functionLinenumber: 312
    functionLinenumberEnd: 313
    functionName: CHECK_CFG
    functionSourceFile: /src/gpac/src/filters/reframe_prores.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_CFG(_name)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_prores.c:446,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_prores.c:447,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_prores.c:449,1
    - Dst: gf_media_prores_parse_bs
      Src: /src/gpac/src/filters/reframe_prores.c:453,1
    - Dst: proresdmx_check_pid
      Src: /src/gpac/src/filters/reframe_prores.c:458,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_prores.c:463,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_prores.c:467,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_prores.c:469,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_prores.c:471,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_prores.c:473,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_prores.c:474,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_prores.c:475,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_prores.c:476,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_prores.c:478,1
    - Dst: proresdmx_update_cts
      Src: /src/gpac/src/filters/reframe_prores.c:479,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_prores.c:480,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_prores.c:488,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_prores.c:493,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_prores.c:495,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_prores.c:504,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_prores.c:505,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 57
    argCount: 5
    argNames:
    - filter
    - ctx
    - data
    - data_size
    - is_copy
    argTypes:
    - GF_Filter*
    - GF_ProResDmxCtx*
    - u8*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 441
    functionDepth: 9
    functionLinenumber: 441
    functionLinenumberEnd: 511
    functionName: proresdmx_process_buffer
    functionSourceFile: /src/gpac/src/filters/reframe_prores.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - proresdmx_check_pid
    - gf_bs_new
    - gf_bs_available
    - gf_filter_pck_set_byte_offset
    - gf_assert
    - GF_FEVT_INIT
    - gf_filter_pck_new_alloc
    - memmove
    - gf_filter_pid_set_eos
    - gf_bs_get_position
    - gf_filter_pck_set_sap
    - gf_filter_pid_send_event
    - gf_bs_reassign_buffer
    - gf_media_prores_parse_bs
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - proresdmx_update_cts
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err proresdmx_process_buffer(GF_Filter *filter, GF_ProResDmxCtx
      *ctx, const u8 *data, u32 data_size, Bool is_copy)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_prores.c:516,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/reframe_prores.c:525,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_prores.c:529,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_prores.c:531,1
    - Dst: proresdmx_process_buffer
      Src: /src/gpac/src/filters/reframe_prores.c:535,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_prores.c:544,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_prores.c:545,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/reframe_prores.c:553,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_prores.c:557,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/reframe_prores.c:566,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_prores.c:571,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_prores.c:573,1
    - Dst: proresdmx_process_buffer
      Src: /src/gpac/src/filters/reframe_prores.c:578,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_prores.c:581,1
    - Dst: proresdmx_process_buffer
      Src: /src/gpac/src/filters/reframe_prores.c:586,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_prores.c:592,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_prores.c:595,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_prores.c:597,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_prores.c:603,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_prores.c:605,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_prores.c:607,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_prores.c:610,1
    - Dst: proresdmx_process_buffer
      Src: /src/gpac/src/filters/reframe_prores.c:612,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_prores.c:614,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_prores.c:621,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_prores.c:623,1
    - Dst: proresdmx_process_buffer
      Src: /src/gpac/src/filters/reframe_prores.c:625,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_prores.c:626,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 88
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 513
    functionDepth: 10
    functionLinenumber: 513
    functionLinenumberEnd: 628
    functionName: proresdmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_prores.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_filter_pid_drop_packet
    - gf_filter_pid_set_discard
    - gf_filter_pck_get_framing
    - gf_filter_pck_get_data
    - memcpy
    - gf_filter_pid_would_block
    - gf_filter_pid_set_eos
    - gf_realloc
    - gf_filter_pck_unref
    - gf_filter_pck_ref_props
    - gf_filter_pck_get_cts
    - gf_filter_pid_is_eos
    - proresdmx_process_buffer
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err proresdmx_process(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_prores.c:632,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_prores.c:633,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_prores.c:634,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_prores.c:635,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 630
    functionDepth: 3
    functionLinenumber: 630
    functionLinenumberEnd: 636
    functionName: proresdmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_prores.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void proresdmx_finalize(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 647
      start: 638
    functionDepth: 0
    functionLinenumber: 638
    functionLinenumberEnd: 647
    functionName: proresdmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_prores.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * proresdmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 674
      start: 673
    functionDepth: 0
    functionLinenumber: 673
    functionLinenumberEnd: 674
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/reframe_prores.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 703
      start: 700
    functionDepth: 0
    functionLinenumber: 700
    functionLinenumberEnd: 703
    functionName: rfprores_register
    functionSourceFile: /src/gpac/src/filters/reframe_prores.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfprores_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 708
      start: 705
    functionDepth: 0
    functionLinenumber: 705
    functionLinenumberEnd: 708
    functionName: rfprores_register
    functionSourceFile: /src/gpac/src/filters/reframe_prores.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfprores_register(GF_FilterSession *session)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/in_rtp_signaling.c:35,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - rtp
    - stream
    argTypes:
    - GF_RTPIn*
    - GF_RTPInStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 31
    functionDepth: 2
    functionLinenumber: 31
    functionLinenumberEnd: 39
    functionName: rtpin_stream_is_valid
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: Bool
    signature: Bool rtpin_stream_is_valid(GF_RTPIn *rtp, GF_RTPInStream *stream)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/in_rtp_signaling.c:47,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - stream
    argTypes:
    - GF_RTPInStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 42
    functionDepth: 2
    functionLinenumber: 42
    functionLinenumberEnd: 53
    functionName: rtpin_rtsp_is_active
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: Bool
    signature: Bool rtpin_rtsp_is_active(GF_RTPInStream *stream)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/in_rtp_signaling.c:67,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_rtp_signaling.c:69,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 4
    argNames:
    - sess
    - stream
    - com
    - needs_sess_id
    argTypes:
    - GF_RTPInRTSP*
    - GF_RTPInStream*
    - GF_RTSPCommand*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 55
    functionDepth: 2
    functionLinenumber: 55
    functionLinenumberEnd: 70
    functionName: rtpin_rtsp_queue_command
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void rtpin_rtsp_queue_command(GF_RTPInRTSP *sess, GF_RTPInStream *stream,
      GF_RTSPCommand *com, Bool needs_sess_id)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtsp_command_new
      Src: /src/gpac/src/filters/in_rtp_signaling.c:83,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:84,1
    - Dst: gf_rtp_is_unicast
      Src: /src/gpac/src/filters/in_rtp_signaling.c:87,1
    - Dst: gf_rtp_is_interleaved
      Src: /src/gpac/src/filters/in_rtp_signaling.c:87,1
    - Dst: gf_rtp_set_ports
      Src: /src/gpac/src/filters/in_rtp_signaling.c:88,1
    - Dst: gf_rtp_set_ports
      Src: /src/gpac/src/filters/in_rtp_signaling.c:90,1
    - Dst: gf_rtsp_transport_clone
      Src: /src/gpac/src/filters/in_rtp_signaling.c:93,1
    - Dst: gf_rtp_get_transport
      Src: /src/gpac/src/filters/in_rtp_signaling.c:93,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:103,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:105,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:106,1
    - Dst: gf_rtp_setup_transport
      Src: /src/gpac/src/filters/in_rtp_signaling.c:114,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:118,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:119,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/in_rtp_signaling.c:122,1
    - Dst: gf_rtp_setup_transport
      Src: /src/gpac/src/filters/in_rtp_signaling.c:124,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:128,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_rtp_signaling.c:135,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp_signaling.c:136,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:137,1
    - Dst: rtpin_rtsp_queue_command
      Src: /src/gpac/src/filters/in_rtp_signaling.c:142,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 44
    argCount: 1
    argNames:
    - stream
    argTypes:
    - GF_RTPInStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 78
    functionDepth: 3
    functionLinenumber: 78
    functionLinenumberEnd: 143
    functionName: rtpin_rtsp_setup_send
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_rtsp_command_new
    - gf_rtp_set_ports
    - gf_list_find
    - rtpin_rtsp_queue_command
    - gf_rtp_is_unicast
    - gf_list_add
    - gf_rtsp_transport_clone
    - gf_rtp_setup_transport
    - gf_rtp_get_transport
    - strlen
    - gf_rtp_is_interleaved
    linkageType: ''
    returnType: void
    signature: void rtpin_rtsp_setup_send(GF_RTPInStream *stream)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_rtp_signaling.c:157,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_rtp_signaling.c:159,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_rtp_signaling.c:160,1
    - Dst: rtpin_stream_init
      Src: /src/gpac/src/filters/in_rtp_signaling.c:168,1
    - Dst: rtpin_stream_ack_connect
      Src: /src/gpac/src/filters/in_rtp_signaling.c:170,1
    - Dst: rtpin_rtsp_setup_send
      Src: /src/gpac/src/filters/in_rtp_signaling.c:172,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 2
    argNames:
    - stream
    - ch_desc
    argTypes:
    - GF_RTPInStream*
    - RTPIn_StreamDescribe*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 146
    functionDepth: 4
    functionLinenumber: 146
    functionLinenumberEnd: 175
    functionName: rtpin_stream_setup
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 2
    functionsReached:
    - gf_assert
    - rtpin_stream_ack_connect
    - rtpin_rtsp_setup_send
    - rtpin_stream_init
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpin_stream_setup(GF_RTPInStream *stream, RTPIn_StreamDescribe
      *ch_desc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - par
    - par2
    - is_rtcp
    - pck
    - pck_size
    argTypes:
    - void*
    - void*
    - Bool
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionName: rtpin_rtsp_tcp_send_report
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpin_rtsp_tcp_send_report(void *par, void *par2, Bool is_rtcp,
      u8 *pck, u32 pck_size)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_signaling.c:201,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp_signaling.c:209,1
    - Dst: rtpin_do_authenticate
      Src: /src/gpac/src/filters/in_rtp_signaling.c:212,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:232,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_rtp_signaling.c:235,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:236,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/in_rtp_signaling.c:241,1
    - Dst: gf_rtp_get_ports
      Src: /src/gpac/src/filters/in_rtp_signaling.c:244,1
    - Dst: gf_rtp_is_interleaved
      Src: /src/gpac/src/filters/in_rtp_signaling.c:246,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_signaling.c:247,1
    - Dst: gf_rtp_setup_transport
      Src: /src/gpac/src/filters/in_rtp_signaling.c:252,1
    - Dst: gf_rtsp_get_server_name
      Src: /src/gpac/src/filters/in_rtp_signaling.c:252,1
    - Dst: rtpin_stream_init
      Src: /src/gpac/src/filters/in_rtp_signaling.c:257,1
    - Dst: gf_rtp_is_interleaved
      Src: /src/gpac/src/filters/in_rtp_signaling.c:263,1
    - Dst: gf_rtsp_set_interleave_callback
      Src: /src/gpac/src/filters/in_rtp_signaling.c:265,1
    - Dst: gf_rtp_set_interleave_callbacks
      Src: /src/gpac/src/filters/in_rtp_signaling.c:267,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/in_rtp_signaling.c:270,1
    - Dst: rtpin_rtsp_tcp_send_report
      Src: /src/gpac/src/filters/in_rtp_signaling.c:271,1
    - Dst: rtpin_satip_get_server_ip
      Src: /src/gpac/src/filters/in_rtp_signaling.c:272,1
    - Dst: gf_rtsp_command_new
      Src: /src/gpac/src/filters/in_rtp_signaling.c:279,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:280,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/in_rtp_signaling.c:281,1
    - Dst: rtpin_rtsp_queue_command
      Src: /src/gpac/src/filters/in_rtp_signaling.c:286,1
    - Dst: rtpin_stream_ack_connect
      Src: /src/gpac/src/filters/in_rtp_signaling.c:294,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 107
    argCount: 3
    argNames:
    - sess
    - com
    - e
    argTypes:
    - GF_RTPInRTSP*
    - GF_RTSPCommand*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 182
    functionDepth: 3
    functionLinenumber: 182
    functionLinenumberEnd: 297
    functionName: rtpin_rtsp_setup_process
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 1
    functionsReached:
    - gf_rtp_set_interleave_callbacks
    - GF_SAFEALLOC
    - rtpin_stream_init
    - gf_rtp_setup_transport
    - rtpin_stream_ack_connect
    - gf_sys_is_cov_mode
    - gf_strdup
    - gf_assert
    - rtpin_rtsp_queue_command
    - gf_rtp_get_ports
    - rtpin_rtsp_tcp_send_report
    - gf_rtsp_command_new
    - GF_LOG
    - strstr
    - gf_rtsp_get_server_name
    - gf_list_enum
    - gf_rtp_is_interleaved
    - rtpin_satip_get_server_ip
    - gf_rtsp_set_interleave_callback
    - rtpin_do_authenticate
    linkageType: ''
    returnType: void
    signature: void rtpin_rtsp_setup_process(GF_RTPInRTSP *sess, GF_RTSPCommand *com,
      GF_Err e)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_signaling.c:310,1
    - Dst: rtpin_find_stream
      Src: /src/gpac/src/filters/in_rtp_signaling.c:315,1
    - Dst: rtpin_stream_setup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:319,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:321,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:322,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - sess
    - com
    argTypes:
    - GF_RTPInRTSP*
    - GF_RTSPCommand*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 304
    functionDepth: 5
    functionLinenumber: 304
    functionLinenumberEnd: 324
    functionName: rtpin_rtsp_describe_preprocess
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 1
    functionsReached:
    - gf_free
    - GF_LOG
    - rtpin_stream_setup
    - rtpin_find_stream
    linkageType: ''
    returnType: Bool
    signature: Bool rtpin_rtsp_describe_preprocess(GF_RTPInRTSP *sess, GF_RTSPCommand
      *com)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp_signaling.c:347,1
    - Dst: rtpin_find_stream
      Src: /src/gpac/src/filters/in_rtp_signaling.c:364,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_signaling.c:366,1
    - Dst: rtpin_load_sdp
      Src: /src/gpac/src/filters/in_rtp_signaling.c:370,1
    - Dst: rtpin_stream_setup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:377,1
    - Dst: rtpin_do_authenticate
      Src: /src/gpac/src/filters/in_rtp_signaling.c:384,1
    - Dst: rtpin_stream_ack_connect
      Src: /src/gpac/src/filters/in_rtp_signaling.c:390,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_signaling.c:393,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_rtp_signaling.c:394,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:397,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 70
    argCount: 3
    argNames:
    - sess
    - com
    - e
    argTypes:
    - GF_RTPInRTSP*
    - GF_RTSPCommand*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 327
    functionDepth: 8
    functionLinenumber: 327
    functionLinenumberEnd: 399
    functionName: rtpin_rtsp_describe_process
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 1
    functionsReached:
    - gf_free
    - rtpin_find_stream
    - GF_LOG
    - strstr
    - rtpin_do_authenticate
    - gf_filter_setup_failure
    - rtpin_stream_setup
    - rtpin_stream_ack_connect
    - rtpin_load_sdp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpin_rtsp_describe_process(GF_RTPInRTSP *sess, GF_RTSPCommand
      *com, GF_Err e)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: rtpin_find_stream
      Src: /src/gpac/src/filters/in_rtp_signaling.c:410,1
    - Dst: rtpin_stream_ack_connect
      Src: /src/gpac/src/filters/in_rtp_signaling.c:416,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/in_rtp_signaling.c:421,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:422,1
    - Dst: rtpin_stream_setup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:424,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:426,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:427,1
    - Dst: gf_rtsp_command_new
      Src: /src/gpac/src/filters/in_rtp_signaling.c:434,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:436,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:442,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/in_rtp_signaling.c:445,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:450,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_rtp_signaling.c:451,1
    - Dst: rtpin_stream_new_standalone
      Src: /src/gpac/src/filters/in_rtp_signaling.c:455,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_signaling.c:457,1
    - Dst: rtpin_add_stream
      Src: /src/gpac/src/filters/in_rtp_signaling.c:460,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_signaling.c:462,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:469,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:470,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/in_rtp_signaling.c:472,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:473,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:479,1
    - Dst: rtpin_rtsp_queue_command
      Src: /src/gpac/src/filters/in_rtp_signaling.c:487,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 61
    argCount: 3
    argNames:
    - sess
    - esd_url
    - opid
    argTypes:
    - GF_RTPInRTSP*
    - char*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 402
    functionDepth: 6
    functionLinenumber: 402
    functionLinenumberEnd: 488
    functionName: rtpin_rtsp_describe_send
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_rtsp_command_new
    - rtpin_find_stream
    - rtpin_add_stream
    - GF_SAFEALLOC
    - GF_LOG
    - rtpin_stream_new_standalone
    - rtpin_rtsp_queue_command
    - gf_list_add
    - rtpin_stream_setup
    - rtpin_stream_ack_connect
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void rtpin_rtsp_describe_send(GF_RTPInRTSP *sess, char *esd_url, GF_FilterPid
      *opid)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/in_rtp_signaling.c:497,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 10
    argCount: 1
    argNames:
    - stream
    argTypes:
    - GF_RTPInStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 491
    functionDepth: 2
    functionLinenumber: 491
    functionLinenumberEnd: 502
    functionName: rtpin_rtsp_skip_command
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void rtpin_rtsp_skip_command(GF_RTPInStream *stream)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_signaling.c:517,1
    - Dst: rtpin_stream_is_valid
      Src: /src/gpac/src/filters/in_rtp_signaling.c:522,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:523,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_rtp_signaling.c:528,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_rtp_signaling.c:529,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_signaling.c:543,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_signaling.c:543,1
    - Dst: rtpin_rtsp_skip_command
      Src: /src/gpac/src/filters/in_rtp_signaling.c:550,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:556,1
    - Dst: gf_rtsp_reset_aggregation
      Src: /src/gpac/src/filters/in_rtp_signaling.c:563,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_signaling.c:567,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filters/in_rtp_signaling.c:567,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/in_rtp_signaling.c:567,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:569,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 50
    argCount: 2
    argNames:
    - sess
    - com
    argTypes:
    - GF_RTPInRTSP*
    - GF_RTSPCommand*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 509
    functionDepth: 3
    functionLinenumber: 509
    functionLinenumberEnd: 572
    functionName: rtpin_rtsp_usercom_preprocess
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 1
    functionsReached:
    - gf_free
    - rtpin_rtsp_skip_command
    - gf_assert
    - gf_rtsp_reset_aggregation
    - rtpin_stream_is_valid
    - GF_LOG
    - gf_filter_event_name
    - strcmp
    - gf_error_to_string
    linkageType: ''
    returnType: Bool
    signature: Bool rtpin_rtsp_usercom_preprocess(GF_RTPInRTSP *sess, GF_RTSPCommand
      *com)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: rtpin_stream_is_valid
      Src: /src/gpac/src/filters/in_rtp_signaling.c:585,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:586,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_rtp_signaling.c:591,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_signaling.c:597,1
    - Dst: gf_rtsp_session_reset
      Src: /src/gpac/src/filters/in_rtp_signaling.c:623,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp_signaling.c:641,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp_signaling.c:646,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp_signaling.c:650,1
    - Dst: rtpin_find_stream
      Src: /src/gpac/src/filters/in_rtp_signaling.c:651,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/in_rtp_signaling.c:654,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp_signaling.c:661,1
    - Dst: rtpin_find_stream
      Src: /src/gpac/src/filters/in_rtp_signaling.c:662,1
    - Dst: gf_rtp_set_info_rtp
      Src: /src/gpac/src/filters/in_rtp_signaling.c:667,1
    - Dst: rtpin_stream_init
      Src: /src/gpac/src/filters/in_rtp_signaling.c:681,1
    - Dst: gf_rtp_set_info_rtp
      Src: /src/gpac/src/filters/in_rtp_signaling.c:683,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/in_rtp_signaling.c:685,1
    - Dst: gf_rtp_is_interleaved
      Src: /src/gpac/src/filters/in_rtp_signaling.c:694,1
    - Dst: gf_rtsp_register_interleave
      Src: /src/gpac/src/filters/in_rtp_signaling.c:695,1
    - Dst: gf_rtp_get_low_interleave_id
      Src: /src/gpac/src/filters/in_rtp_signaling.c:697,1
    - Dst: gf_rtp_get_hight_interleave_id
      Src: /src/gpac/src/filters/in_rtp_signaling.c:698,1
    - Dst: rtpin_stream_init
      Src: /src/gpac/src/filters/in_rtp_signaling.c:705,1
    - Dst: gf_rtp_is_interleaved
      Src: /src/gpac/src/filters/in_rtp_signaling.c:707,1
    - Dst: gf_rtsp_register_interleave
      Src: /src/gpac/src/filters/in_rtp_signaling.c:708,1
    - Dst: gf_rtp_get_low_interleave_id
      Src: /src/gpac/src/filters/in_rtp_signaling.c:709,1
    - Dst: gf_rtp_get_hight_interleave_id
      Src: /src/gpac/src/filters/in_rtp_signaling.c:709,1
    - Dst: rtpin_rtsp_skip_command
      Src: /src/gpac/src/filters/in_rtp_signaling.c:715,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_signaling.c:720,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp_signaling.c:723,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp_signaling.c:725,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:733,1
    - Dst: gf_rtsp_reset_aggregation
      Src: /src/gpac/src/filters/in_rtp_signaling.c:742,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_signaling.c:746,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/in_rtp_signaling.c:746,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:748,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_signaling.c:751,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 140
    argCount: 3
    argNames:
    - sess
    - com
    - e
    argTypes:
    - GF_RTPInRTSP*
    - GF_RTSPCommand*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 574
    functionDepth: 3
    functionLinenumber: 574
    functionLinenumberEnd: 753
    functionName: rtpin_rtsp_usercom_process
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_rtsp_reset_aggregation
    - gf_list_count
    - rtpin_stream_init
    - gf_rtsp_session_reset
    - gf_sys_clock
    - gf_assert
    - gf_list_get
    - rtpin_stream_is_valid
    - gf_rtp_get_hight_interleave_id
    - gf_rtp_set_info_rtp
    - rtpin_find_stream
    - gf_rtp_get_low_interleave_id
    - GF_LOG
    - gf_timestamp_less
    - gf_error_to_string
    - gf_timestamp_rescale
    - gf_rtp_is_interleaved
    - rtpin_rtsp_skip_command
    - gf_rtsp_register_interleave
    - strcmp
    linkageType: ''
    returnType: void
    signature: void rtpin_rtsp_usercom_process(GF_RTPInRTSP *sess, GF_RTSPCommand
      *com, GF_Err e)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/in_rtp_signaling.c:785,1
    - Dst: rtpin_rtsp_setup_send
      Src: /src/gpac/src/filters/in_rtp_signaling.c:788,1
    - Dst: rtpin_rtsp_setup_send
      Src: /src/gpac/src/filters/in_rtp_signaling.c:791,1
    - Dst: gf_rtsp_command_new
      Src: /src/gpac/src/filters/in_rtp_signaling.c:796,1
    - Dst: gf_rtsp_range_new
      Src: /src/gpac/src/filters/in_rtp_signaling.c:801,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:805,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_signaling.c:815,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_signaling.c:826,1
    - Dst: gf_rtsp_range_del
      Src: /src/gpac/src/filters/in_rtp_signaling.c:841,1
    - Dst: rtpin_rtsp_skip_command
      Src: /src/gpac/src/filters/in_rtp_signaling.c:848,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp_signaling.c:850,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:851,1
    - Dst: rtpin_rtsp_is_active
      Src: /src/gpac/src/filters/in_rtp_signaling.c:853,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:855,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:859,1
    - Dst: gf_rtsp_range_new
      Src: /src/gpac/src/filters/in_rtp_signaling.c:861,1
    - Dst: gf_rtp_get_current_time
      Src: /src/gpac/src/filters/in_rtp_signaling.c:863,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_signaling.c:864,1
    - Dst: rtpin_rtsp_skip_command
      Src: /src/gpac/src/filters/in_rtp_signaling.c:870,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp_signaling.c:871,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:872,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_signaling.c:879,1
    - Dst: rtpin_stream_init
      Src: /src/gpac/src/filters/in_rtp_signaling.c:882,1
    - Dst: gf_rtp_is_interleaved
      Src: /src/gpac/src/filters/in_rtp_signaling.c:889,1
    - Dst: gf_rtsp_unregister_interleave
      Src: /src/gpac/src/filters/in_rtp_signaling.c:890,1
    - Dst: gf_rtp_get_low_interleave_id
      Src: /src/gpac/src/filters/in_rtp_signaling.c:890,1
    - Dst: gf_rtsp_command_del
      Src: /src/gpac/src/filters/in_rtp_signaling.c:893,1
    - Dst: rtpin_rtsp_is_active
      Src: /src/gpac/src/filters/in_rtp_signaling.c:894,1
    - Dst: rtpin_rtsp_teardown
      Src: /src/gpac/src/filters/in_rtp_signaling.c:895,1
    - Dst: gf_rtsp_command_del
      Src: /src/gpac/src/filters/in_rtp_signaling.c:902,1
    - Dst: rtpin_rtsp_is_active
      Src: /src/gpac/src/filters/in_rtp_signaling.c:904,1
    - Dst: rtpin_rtsp_teardown
      Src: /src/gpac/src/filters/in_rtp_signaling.c:905,1
    - Dst: gf_rtsp_range_new
      Src: /src/gpac/src/filters/in_rtp_signaling.c:911,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:914,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:918,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_signaling.c:921,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filters/in_rtp_signaling.c:921,1
    - Dst: gf_rtsp_command_del
      Src: /src/gpac/src/filters/in_rtp_signaling.c:922,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/in_rtp_signaling.c:926,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/in_rtp_signaling.c:928,1
    - Dst: rtpin_rtsp_queue_command
      Src: /src/gpac/src/filters/in_rtp_signaling.c:931,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 138
    argCount: 3
    argNames:
    - sess
    - stream
    - evt
    argTypes:
    - GF_RTPInRTSP*
    - GF_RTPInStream*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 933
      start: 756
    functionDepth: 4
    functionLinenumber: 756
    functionLinenumberEnd: 933
    functionName: rtpin_rtsp_usercom_send
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 2
    functionsReached:
    - gf_rtsp_unregister_interleave
    - gf_rtsp_range_new
    - rtpin_stream_init
    - gf_sys_clock
    - gf_strdup
    - rtpin_rtsp_setup_send
    - memcpy
    - gf_filter_event_name
    - rtpin_rtsp_queue_command
    - gf_rtsp_command_new
    - gf_rtp_get_low_interleave_id
    - GF_LOG
    - rtpin_rtsp_teardown
    - gf_list_enum
    - strlen
    - gf_malloc
    - gf_rtp_is_interleaved
    - rtpin_rtsp_skip_command
    - gf_rtp_get_current_time
    - gf_rtsp_command_del
    - gf_rtsp_range_del
    - rtpin_rtsp_is_active
    linkageType: ''
    returnType: void
    signature: void rtpin_rtsp_usercom_send(GF_RTPInRTSP *sess, GF_RTPInStream *stream,
      const GF_FilterEvent *evt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:943,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:946,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp_signaling.c:950,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp_signaling.c:952,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - sess
    - com
    - e
    argTypes:
    - GF_RTPInRTSP*
    - GF_RTSPCommand*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 939
    functionDepth: 1
    functionLinenumber: 939
    functionLinenumberEnd: 955
    functionName: rtpin_rtsp_teardown_process
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void rtpin_rtsp_teardown_process(GF_RTPInRTSP *sess, GF_RTSPCommand
      *com, GF_Err e)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_rtsp_command_new
      Src: /src/gpac/src/filters/in_rtp_signaling.c:966,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:967,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:970,1
    - Dst: rtpin_rtsp_queue_command
      Src: /src/gpac/src/filters/in_rtp_signaling.c:974,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - sess
    - stream
    argTypes:
    - GF_RTPInRTSP*
    - GF_RTPInStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 975
      start: 957
    functionDepth: 3
    functionLinenumber: 957
    functionLinenumberEnd: 975
    functionName: rtpin_rtsp_teardown
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 4
    functionsReached:
    - rtpin_rtsp_queue_command
    - gf_strdup
    - gf_rtsp_command_new
    linkageType: ''
    returnType: void
    signature: void rtpin_rtsp_teardown(GF_RTPInRTSP *sess, GF_RTPInStream *stream)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vorbis.c:63,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vorbis.c:63,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vorbis.c:64,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vorbis.c:64,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vorbis.c:65,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vorbis.c:65,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vorbis.c:90,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dec_vorbis.c:90,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_VorbisDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 91
    functionName: vorbisdec_set_props
    functionSourceFile: /src/gpac/src/filters/dec_vorbis.c
    functionUses: 0
    functionsReached:
    - PROP_LONGUINT
    - gf_filter_pid_set_property
    - PROP_UINT
    linkageType: ''
    returnType: void
    signature: void vorbisdec_set_props(GF_VorbisDecCtx *ctx)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_vorbis.c:97,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_vorbis.c:102,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_vorbis.c:108,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_vorbis.c:111,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dec_vorbis.c:114,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_vorbis.c:115,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vorbis.c:119,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_vorbis.c:123,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_vorbis.c:127,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vorbis.c:128,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vorbis.c:128,1
    - Dst: vorbis_block_clear
      Src: /src/gpac/src/filters/dec_vorbis.c:131,1
    - Dst: vorbis_dsp_clear
      Src: /src/gpac/src/filters/dec_vorbis.c:132,1
    - Dst: vorbis_info_clear
      Src: /src/gpac/src/filters/dec_vorbis.c:133,1
    - Dst: vorbis_comment_clear
      Src: /src/gpac/src/filters/dec_vorbis.c:134,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dec_vorbis.c:137,1
    - Dst: vorbis_info_init
      Src: /src/gpac/src/filters/dec_vorbis.c:139,1
    - Dst: vorbis_comment_init
      Src: /src/gpac/src/filters/dec_vorbis.c:140,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_vorbis.c:147,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dec_vorbis.c:148,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dec_vorbis.c:150,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_vorbis.c:151,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dec_vorbis.c:152,1
    - Dst: vorbis_synthesis_headerin
      Src: /src/gpac/src/filters/dec_vorbis.c:153,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vorbis.c:156,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_vorbis.c:158,1
    - Dst: vorbis_synthesis_init
      Src: /src/gpac/src/filters/dec_vorbis.c:162,1
    - Dst: vorbis_block_init
      Src: /src/gpac/src/filters/dec_vorbis.c:163,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_vorbis.c:164,1
    - Dst: vorbisdec_set_props
      Src: /src/gpac/src/filters/dec_vorbis.c:166,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 61
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 92
    functionDepth: 6
    functionLinenumber: 92
    functionLinenumberEnd: 168
    functionName: vorbisdec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_vorbis.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - vorbisdec_set_props
    - gf_bs_new
    - gf_filter_pid_check_caps
    - gf_bs_read_u16
    - gf_bs_available
    - gf_filter_pid_new
    - vorbis_synthesis_init
    - vorbis_comment_clear
    - vorbis_dsp_clear
    - vorbis_info_init
    - vorbis_block_clear
    - strncmp
    - vorbis_comment_init
    - vorbis_synthesis_headerin
    - gf_crc_32
    - gf_filter_get_udta
    - gf_filter_pid_copy_properties
    - GF_LOG
    - vorbis_block_init
    - vorbis_info_clear
    - gf_filter_pid_set_property
    - gf_malloc
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - gf_bs_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vorbisdec_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 27
    argCount: 4
    argNames:
    - samples
    - pcm
    - buf
    - channels
    argTypes:
    - u32
    - Float**
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 203
    functionName: vorbis_to_intern
    functionSourceFile: /src/gpac/src/filters/dec_vorbis.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE vorbis_to_intern(u32 samples, Float **pcm, char *buf, u32
      channels)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_vorbis.c:211,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_vorbis.c:214,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_vorbis.c:216,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_vorbis.c:227,1
    - Dst: vorbis_synthesis
      Src: /src/gpac/src/filters/dec_vorbis.c:234,1
    - Dst: vorbis_synthesis_blockin
      Src: /src/gpac/src/filters/dec_vorbis.c:235,1
    - Dst: vorbisdec_set_props
      Src: /src/gpac/src/filters/dec_vorbis.c:238,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dec_vorbis.c:242,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_vorbis.c:246,1
    - Dst: vorbis_synthesis_pcmout
      Src: /src/gpac/src/filters/dec_vorbis.c:251,1
    - Dst: vorbis_to_intern
      Src: /src/gpac/src/filters/dec_vorbis.c:252,1
    - Dst: vorbis_synthesis_read
      Src: /src/gpac/src/filters/dec_vorbis.c:255,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_vorbis.c:259,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_vorbis.c:264,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_vorbis.c:265,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vorbis.c:266,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dec_vorbis.c:268,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dec_vorbis.c:271,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dec_vorbis.c:272,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dec_vorbis.c:275,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_vorbis.c:279,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_vorbis.c:280,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 61
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 205
    functionDepth: 2
    functionLinenumber: 205
    functionLinenumberEnd: 282
    functionName: vorbisdec_process
    functionSourceFile: /src/gpac/src/filters/dec_vorbis.c
    functionUses: 0
    functionsReached:
    - vorbisdec_set_props
    - vorbis_synthesis_blockin
    - vorbis_synthesis_read
    - vorbis_to_intern
    - gf_filter_pid_get_packet
    - gf_assert
    - vorbis_synthesis_pcmout
    - gf_filter_pck_get_cts
    - gf_filter_get_udta
    - gf_filter_pck_new_alloc
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - vorbis_synthesis
    - gf_filter_pck_set_duration
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_timescale
    - gf_filter_pid_is_eos
    - gf_timestamp_rescale
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vorbisdec_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_vorbis.c:286,1
    - Dst: vorbis_block_clear
      Src: /src/gpac/src/filters/dec_vorbis.c:288,1
    - Dst: vorbis_dsp_clear
      Src: /src/gpac/src/filters/dec_vorbis.c:289,1
    - Dst: vorbis_info_clear
      Src: /src/gpac/src/filters/dec_vorbis.c:290,1
    - Dst: vorbis_comment_clear
      Src: /src/gpac/src/filters/dec_vorbis.c:291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 284
    functionDepth: 1
    functionLinenumber: 284
    functionLinenumberEnd: 292
    functionName: vorbisdec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_vorbis.c
    functionUses: 0
    functionsReached:
    - vorbis_block_clear
    - vorbis_info_clear
    - vorbis_comment_clear
    - vorbis_dsp_clear
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void vorbisdec_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 318
    functionDepth: 0
    functionLinenumber: 318
    functionLinenumberEnd: 325
    functionName: vorbisdec_register
    functionSourceFile: /src/gpac/src/filters/dec_vorbis.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *vorbisdec_register(GF_FilterSession *session)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/evg_rescale.c:74,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/evg_rescale.c:77,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/evg_rescale.c:80,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/evg_rescale.c:81,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/evg_rescale.c:88,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/evg_rescale.c:89,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/evg_rescale.c:97,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/evg_rescale.c:101,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/evg_rescale.c:102,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/evg_rescale.c:105,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/evg_rescale.c:106,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/evg_rescale.c:110,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/evg_rescale.c:113,1
    - Dst: gf_evg_surface_attach_to_buffer
      Src: /src/gpac/src/filters/evg_rescale.c:123,1
    - Dst: CHK_EXIT
      Src: /src/gpac/src/filters/evg_rescale.c:124,1
    - Dst: gf_evg_enable_threading
      Src: /src/gpac/src/filters/evg_rescale.c:126,1
    - Dst: gf_color_parse
      Src: /src/gpac/src/filters/evg_rescale.c:129,1
    - Dst: gf_evg_surface_clear
      Src: /src/gpac/src/filters/evg_rescale.c:130,1
    - Dst: CHK_EXIT
      Src: /src/gpac/src/filters/evg_rescale.c:131,1
    - Dst: gf_evg_stencil_set_texture_planes
      Src: /src/gpac/src/filters/evg_rescale.c:135,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/evg_rescale.c:142,1
    - Dst: gf_evg_stencil_set_texture_planes
      Src: /src/gpac/src/filters/evg_rescale.c:159,1
    - Dst: CHK_EXIT
      Src: /src/gpac/src/filters/evg_rescale.c:163,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/filters/evg_rescale.c:165,1
    - Dst: CHK_EXIT
      Src: /src/gpac/src/filters/evg_rescale.c:166,1
    - Dst: gf_evg_surface_fill
      Src: /src/gpac/src/filters/evg_rescale.c:167,1
    - Dst: CHK_EXIT
      Src: /src/gpac/src/filters/evg_rescale.c:168,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/evg_rescale.c:170,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/evg_rescale.c:171,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 74
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 67
    functionDepth: 8
    functionLinenumber: 67
    functionLinenumberEnd: 173
    functionName: evgs_process
    functionSourceFile: /src/gpac/src/filters/evg_rescale.c
    functionUses: 0
    functionsReached:
    - gf_evg_stencil_set_texture_planes
    - gf_filter_pck_get_frame_interface
    - gf_filter_pid_get_packet
    - gf_filter_pck_forward
    - gf_evg_surface_clear
    - gf_filter_get_udta
    - gf_color_parse
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_evg_surface_attach_to_buffer
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_evg_surface_fill
    - gf_filter_pid_is_eos
    - CHK_EXIT
    - gf_filter_pck_merge_properties
    - GF_FilterFrameInterface*::get_plane
    - gf_evg_enable_threading
    - gf_evg_surface_set_path
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evgs_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 121
    functionName: CHK_EXIT
    functionSourceFile: /src/gpac/src/filters/evg_rescale.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHK_EXIT(_msg)
  - BBCount: 61
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/evg_rescale.c:181,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/evg_rescale.c:185,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/evg_rescale.c:190,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/evg_rescale.c:194,1
    - Dst: gf_filter_is_dynamic
      Src: /src/gpac/src/filters/evg_rescale.c:205,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/evg_rescale.c:206,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/evg_rescale.c:208,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/evg_rescale.c:209,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/evg_rescale.c:209,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/evg_rescale.c:210,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/evg_rescale.c:211,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/evg_rescale.c:211,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/evg_rescale.c:212,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/evg_rescale.c:213,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/evg_rescale.c:213,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/evg_rescale.c:216,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/evg_rescale.c:224,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/evg_rescale.c:226,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/evg_rescale.c:228,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/evg_rescale.c:230,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/evg_rescale.c:232,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/evg_rescale.c:234,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/evg_rescale.c:238,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/evg_rescale.c:246,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/evg_rescale.c:341,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/evg_rescale.c:343,1
    - Dst: gf_evg_texture_format_ok
      Src: /src/gpac/src/filters/evg_rescale.c:349,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/evg_rescale.c:351,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/evg_rescale.c:353,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/evg_rescale.c:353,1
    - Dst: gf_pixel_fmt_is_transparent
      Src: /src/gpac/src/filters/evg_rescale.c:356,1
    - Dst: gf_evg_surface_format_ok
      Src: /src/gpac/src/filters/evg_rescale.c:360,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/evg_rescale.c:362,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/evg_rescale.c:365,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/evg_rescale.c:365,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/evg_rescale.c:369,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/evg_rescale.c:370,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/evg_rescale.c:371,1
    - Dst: gf_path_reset
      Src: /src/gpac/src/filters/evg_rescale.c:375,1
    - Dst: gf_path_add_rect_center
      Src: /src/gpac/src/filters/evg_rescale.c:376,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/evg_rescale.c:376,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/evg_rescale.c:376,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/evg_rescale.c:384,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/evg_rescale.c:384,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/evg_rescale.c:384,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/evg_rescale.c:387,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/evg_rescale.c:387,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/evg_rescale.c:388,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/evg_rescale.c:388,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/evg_rescale.c:389,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/evg_rescale.c:389,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/evg_rescale.c:390,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/evg_rescale.c:390,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/evg_rescale.c:391,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/evg_rescale.c:391,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/evg_rescale.c:392,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/evg_rescale.c:392,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/evg_rescale.c:395,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/evg_rescale.c:395,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/evg_rescale.c:397,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/evg_rescale.c:397,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/evg_rescale.c:399,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/evg_rescale.c:402,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/evg_rescale.c:403,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/evg_rescale.c:404,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/evg_rescale.c:405,1
    CyclomaticComplexity: 60
    EdgeCount: 60
    ICount: 190
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 175
    functionDepth: 5
    functionLinenumber: 175
    functionLinenumberEnd: 408
    functionName: evgs_configure_pid
    functionSourceFile: /src/gpac/src/filters/evg_rescale.c
    functionUses: 0
    functionsReached:
    - gf_path_add_rect_center
    - gf_filter_is_dynamic
    - gf_filter_pid_check_caps
    - gf_evg_texture_format_ok
    - gf_filter_pid_new
    - PROP_FRAC
    - gf_evg_surface_format_ok
    - gf_filter_get_udta
    - gf_filter_pid_copy_properties
    - gf_pixel_fmt_name
    - GF_LOG
    - gf_filter_pid_set_property
    - INT2FIX
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_pixel_fmt_is_transparent
    - gf_pixel_get_size_info
    - gf_path_reset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evgs_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/evg_rescale.c:412,1
    - Dst: gf_evg_surface_new
      Src: /src/gpac/src/filters/evg_rescale.c:414,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/filters/evg_rescale.c:417,1
    - Dst: gf_path_new
      Src: /src/gpac/src/filters/evg_rescale.c:419,1
    - Dst: gf_evg_stencil_set_filter
      Src: /src/gpac/src/filters/evg_rescale.c:429,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 410
    functionDepth: 2
    functionLinenumber: 410
    functionLinenumberEnd: 432
    functionName: evgs_initialize
    functionSourceFile: /src/gpac/src/filters/evg_rescale.c
    functionUses: 0
    functionsReached:
    - gf_path_new
    - gf_evg_stencil_new
    - gf_evg_stencil_set_filter
    - gf_evg_surface_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evgs_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/evg_rescale.c:435,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/filters/evg_rescale.c:436,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/filters/evg_rescale.c:437,1
    - Dst: gf_path_del
      Src: /src/gpac/src/filters/evg_rescale.c:438,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 433
    functionDepth: 2
    functionLinenumber: 433
    functionLinenumberEnd: 440
    functionName: evgs_finalize
    functionSourceFile: /src/gpac/src/filters/evg_rescale.c
    functionUses: 0
    functionsReached:
    - gf_evg_surface_delete
    - gf_path_del
    - gf_evg_stencil_delete
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void evgs_finalize(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/evg_rescale.c:446,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/evg_rescale.c:449,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/evg_rescale.c:452,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/evg_rescale.c:455,1
    - Dst: evgs_configure_pid
      Src: /src/gpac/src/filters/evg_rescale.c:461,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - filter
    - pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 443
    functionDepth: 6
    functionLinenumber: 443
    functionLinenumberEnd: 462
    functionName: evgs_reconfigure_output
    functionSourceFile: /src/gpac/src/filters/evg_rescale.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_caps_query
    - evgs_configure_pid
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err evgs_reconfigure_output(GF_Filter *filter, GF_FilterPid *pid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 465
    functionDepth: 0
    functionLinenumber: 465
    functionLinenumberEnd: 466
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/evg_rescale.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 538
    functionDepth: 0
    functionLinenumber: 538
    functionLinenumberEnd: 545
    functionName: evgs_register
    functionSourceFile: /src/gpac/src/filters/evg_rescale.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *evgs_register(GF_FilterSession *session)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_dash.c:214,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_dash.c:215,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dmx_dash.c:217,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_dash.c:219,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:221,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ref
    - prop_name
    - str_list
    argTypes:
    - GF_FilterPacket*
    - u32
    - GF_List**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 206
    functionDepth: 2
    functionLinenumber: 206
    functionLinenumberEnd: 222
    functionName: dashdmx_set_string_list_prop
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_property
    - gf_list_pop_front
    - gf_list_count
    - gf_malloc
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void dashdmx_set_string_list_prop(GF_FilterPacket *ref, u32 prop_name,
      GF_List **str_list)
  - BBCount: 50
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/dmx_dash.c:240,1
    - Dst: gf_filter_pck_new_copy
      Src: /src/gpac/src/filters/dmx_dash.c:243,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/dmx_dash.c:248,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_dash.c:249,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_dash.c:250,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dmx_dash.c:253,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:256,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_dash.c:256,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:257,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_dash.c:257,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/filters/dmx_dash.c:257,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/dmx_dash.c:263,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dmx_dash.c:266,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:267,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_dash.c:272,1
    - Dst: gf_dash_group_next_seg_info
      Src: /src/gpac/src/filters/dmx_dash.c:279,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:281,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:281,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:282,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_dash.c:282,1
    - Dst: gf_dash_group_next_seg_info
      Src: /src/gpac/src/filters/dmx_dash.c:290,1
    - Dst: gf_dash_group_next_seg_info
      Src: /src/gpac/src/filters/dmx_dash.c:292,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:295,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:295,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:296,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:296,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:297,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/dmx_dash.c:297,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:300,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:301,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:301,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dmx_dash.c:307,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/src/filters/dmx_dash.c:309,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dmx_dash.c:311,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_dash.c:315,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:321,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/dmx_dash.c:321,1
    - Dst: dashdmx_set_string_list_prop
      Src: /src/gpac/src/filters/dmx_dash.c:324,1
    - Dst: dashdmx_set_string_list_prop
      Src: /src/gpac/src/filters/dmx_dash.c:325,1
    - Dst: gf_filter_pid_get_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:328,1
    - Dst: gf_filter_pid_set_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:330,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:331,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_dash.c:331,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_dash.c:333,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/dmx_dash.c:338,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dmx_dash.c:340,1
    - Dst: gf_filter_pid_get_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:342,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:345,1
    - Dst: PROP_DOUBLE
      Src: /src/gpac/src/filters/dmx_dash.c:345,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:350,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_dash.c:350,1
    - Dst: gf_filter_pid_set_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:353,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_dash.c:356,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_dash.c:358,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dmx_dash.c:363,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dmx_dash.c:364,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/dmx_dash.c:365,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dmx_dash.c:371,1
    - Dst: gf_dash_group_get_presentation_time_offset
      Src: /src/gpac/src/filters/dmx_dash.c:378,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dmx_dash.c:388,1
    - Dst: gf_dash_get_period_duration
      Src: /src/gpac/src/filters/dmx_dash.c:398,1
    - Dst: gf_dash_is_m3u8
      Src: /src/gpac/src/filters/dmx_dash.c:406,1
    - Dst: gf_dash_is_dynamic_mpd
      Src: /src/gpac/src/filters/dmx_dash.c:408,1
    - Dst: gf_dash_group_next_seg_info
      Src: /src/gpac/src/filters/dmx_dash.c:411,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:414,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dmx_dash.c:421,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dmx_dash.c:422,1
    - Dst: gf_dash_get_period_start
      Src: /src/gpac/src/filters/dmx_dash.c:425,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dmx_dash.c:434,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/dmx_dash.c:435,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dmx_dash.c:436,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:443,1
    - Dst: gf_filter_pid_get_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:463,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:465,1
    - Dst: gf_filter_pid_set_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:466,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_dash.c:468,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:472,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:483,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:492,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/dmx_dash.c:504,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dmx_dash.c:508,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dmx_dash.c:509,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_dash.c:510,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/dmx_dash.c:511,1
    - Dst: gf_filter_pid_get_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:514,1
    - Dst: gf_filter_pid_set_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:517,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:519,1
    - Dst: PROP_DOUBLE
      Src: /src/gpac/src/filters/dmx_dash.c:519,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:522,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_dash.c:522,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_dash.c:525,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_dash.c:526,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 221
    argCount: 5
    argNames:
    - ctx
    - in_pck
    - in_pid
    - out_pid
    - group
    argTypes:
    - GF_DASHDmxCtx*
    - GF_FilterPacket*
    - GF_FilterPid*
    - GF_FilterPid*
    - GF_DASHGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 225
    functionDepth: 5
    functionLinenumber: 225
    functionLinenumberEnd: 527
    functionName: dashdmx_forward_packet
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - dashdmx_set_string_list_prop
    - gf_filter_pck_new_ref
    - gf_timestamp_rescale_signed
    - PROP_STRING
    - gf_dash_get_period_duration
    - PROP_STRING_NO_COPY
    - PROP_FRAC64
    - gf_filter_pck_get_seek_flag
    - PROP_LONGUINT
    - gf_dash_get_period_start
    - gf_filter_pck_set_property
    - gf_filter_pid_set_udta_flags
    - gf_filter_pck_get_framing
    - gf_filter_pck_get_cts
    - PROP_BOOL
    - gf_filter_pck_set_carousel_version
    - gf_net_get_ntp_ts
    - PROP_DOUBLE
    - gf_filter_pck_get_property
    - gf_filter_pid_drop_packet
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_filter_pck_get_timescale
    - gf_filter_pid_is_eos
    - gf_dash_group_get_presentation_time_offset
    - gf_timestamp_rescale
    - PROP_UINT
    - gf_dash_is_m3u8
    - gf_filter_pid_get_property
    - gf_filter_pck_set_cts
    - gf_filter_pck_new_copy
    - gf_filter_pck_set_dts
    - gf_filter_pck_merge_properties
    - gf_dash_is_dynamic_mpd
    - gf_filter_pid_get_udta_flags
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_set_framing
    - gf_dash_group_next_seg_info
    - gf_filter_pck_get_dts
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void dashdmx_forward_packet(GF_DASHDmxCtx *ctx, GF_FilterPacket *in_pck,
      GF_FilterPid *in_pid, GF_FilterPid *out_pid, GF_DASHGroup *group)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:535,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_dash.c:535,1
    - Dst: gf_dash_set_group_download_state
      Src: /src/gpac/src/filters/dmx_dash.c:537,1
    - Dst: gf_dash_get_group_done
      Src: /src/gpac/src/filters/dmx_dash.c:539,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dmx_dash.c:542,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 3
    argNames:
    - failed_filter
    - udta
    - err
    argTypes:
    - GF_Filter*
    - void*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 530
    functionDepth: 7
    functionLinenumber: 530
    functionLinenumberEnd: 560
    functionName: dashdmx_on_filter_setup_error
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_group_done
    - GF_LOG
    - gf_error_to_string
    - gf_dash_set_group_download_state
    - gf_filter_post_process_task
    linkageType: ''
    returnType: Bool
    signature: Bool dashdmx_on_filter_setup_error(GF_Filter *failed_filter, void *udta,
      GF_Err err)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:580,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_dash.c:584,1
    - Dst: gf_dash_set_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:588,1
    - Dst: gf_dash_get_url
      Src: /src/gpac/src/filters/dmx_dash.c:590,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/dmx_dash.c:591,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/dmx_dash.c:592,1
    - Dst: gf_dash_group_get_segment_init_keys
      Src: /src/gpac/src/filters/dmx_dash.c:595,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:597,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_dash.c:601,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:603,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:605,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:607,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:609,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/dmx_dash.c:611,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/dmx_dash.c:617,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:619,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_dash.c:621,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:622,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_dash.c:624,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:625,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:626,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:632,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dmx_dash.c:633,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:634,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:637,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:638,1
    - Dst: gf_filter_connect_source
      Src: /src/gpac/src/filters/dmx_dash.c:641,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:643,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_dash.c:643,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:644,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:645,1
    - Dst: gf_dash_set_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:646,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:649,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/dmx_dash.c:651,1
    - Dst: gf_filter_set_setup_failure_callback
      Src: /src/gpac/src/filters/dmx_dash.c:653,1
    - Dst: gf_dash_group_init_segment_is_media
      Src: /src/gpac/src/filters/dmx_dash.c:655,1
    - Dst: gf_cryptfin_set_kms
      Src: /src/gpac/src/filters/dmx_dash.c:671,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:673,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_dash.c:679,1
    - Dst: gf_dash_group_discard_segment
      Src: /src/gpac/src/filters/dmx_dash.c:683,1
    - Dst: gf_dash_group_get_num_groups_depending_on
      Src: /src/gpac/src/filters/dmx_dash.c:684,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:686,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 99
    argCount: 6
    argNames:
    - ctx
    - group_index
    - mime
    - init_segment_name
    - start_range
    - end_range
    argTypes:
    - GF_DASHDmxCtx*
    - u32
    - char*
    - char*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 567
    functionDepth: 6
    functionLinenumber: 567
    functionLinenumberEnd: 689
    functionName: dashdmx_load_source
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - gf_dash_group_get_num_groups_depending_on
    - gf_filter_get_sep
    - gf_cryptfin_set_kms
    - gf_filter_set_setup_failure_callback
    - gf_dash_group_get_segment_init_keys
    - snprintf
    - memcpy
    - sprintf
    - gf_dash_group_init_segment_is_media
    - strncmp
    - gf_dynstrcat
    - gf_filter_set_source
    - gf_dash_get_url
    - GF_LOG
    - strnicmp
    - gf_error_to_string
    - gf_dash_set_group_udta
    - gf_filter_connect_source
    - gf_dash_group_discard_segment
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dashdmx_load_source(GF_DASHDmxCtx *ctx, u32 group_index, const
      char *mime, const char *init_segment_name, u64 start_range, u64 end_range)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_delete_cached_file_entry_session
      Src: /src/gpac/src/filters/dmx_dash.c:697,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - dashio
    - session
    - cache_url
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 699
      start: 691
    functionDepth: 0
    functionLinenumber: 691
    functionLinenumberEnd: 699
    functionName: dashdmx_io_delete_cache_file
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dm_delete_cached_file_entry_session
    linkageType: ''
    returnType: void
    signature: void dashdmx_io_delete_cache_file(GF_DASHFileIO *dashio, GF_DASHFileIOSession
      session, const char *cache_url)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:723,1
    - Dst: gf_dm_sess_detach_async
      Src: /src/gpac/src/filters/dmx_dash.c:727,1
    - Dst: gf_dm_sess_force_memory_mode
      Src: /src/gpac/src/filters/dmx_dash.c:729,1
    - Dst: gf_dm_sess_setup_from_url
      Src: /src/gpac/src/filters/dmx_dash.c:732,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/filters/dmx_dash.c:744,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 4
    argNames:
    - dashio
    - persistent
    - url
    - group_idx
    argTypes:
    - GF_DASHFileIO*
    - Bool
    - char*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 705
    functionDepth: 0
    functionLinenumber: 705
    functionLinenumberEnd: 750
    functionName: dashdmx_io_create
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_dm_sess_setup_from_url
    - gf_dm_sess_new
    - gf_dm_sess_detach_async
    - gf_dm_sess_force_memory_mode
    linkageType: ''
    returnType: GF_DASHFileIOSession
    signature: GF_DASHFileIOSession dashdmx_io_create(GF_DASHFileIO *dashio, Bool
      persistent, const char *url, s32 group_idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/dmx_dash.c:757,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 759
      start: 752
    functionDepth: 0
    functionLinenumber: 752
    functionLinenumberEnd: 759
    functionName: dashdmx_io_del
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_del
    linkageType: ''
    returnType: void
    signature: void dashdmx_io_del(GF_DASHFileIO *dashio, GF_DASHFileIOSession session)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_process_headers
      Src: /src/gpac/src/filters/dmx_dash.c:765,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 769
      start: 760
    functionDepth: 0
    functionLinenumber: 760
    functionLinenumberEnd: 769
    functionName: dashdmx_io_init
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_process_headers
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dashdmx_io_init(GF_DASHFileIO *dashio, GF_DASHFileIOSession
      session)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/dmx_dash.c:775,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 779
      start: 770
    functionDepth: 0
    functionLinenumber: 770
    functionLinenumberEnd: 779
    functionName: dashdmx_io_run
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_process
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dashdmx_io_run(GF_DASHFileIO *dashio, GF_DASHFileIOSession session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_get_resource_name
      Src: /src/gpac/src/filters/dmx_dash.c:783,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 787
      start: 780
    functionDepth: 0
    functionLinenumber: 780
    functionLinenumberEnd: 787
    functionName: dashdmx_io_get_url
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_get_resource_name
    linkageType: ''
    returnType: char
    signature: char *dashdmx_io_get_url(GF_DASHFileIO *dashio, GF_DASHFileIOSession
      session)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_url
      Src: /src/gpac/src/filters/dmx_dash.c:797,1
    - Dst: gf_dm_sess_get_cache_name
      Src: /src/gpac/src/filters/dmx_dash.c:799,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 803
      start: 788
    functionDepth: 1
    functionLinenumber: 788
    functionLinenumberEnd: 803
    functionName: dashdmx_io_get_cache_name
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_get_cache_name
    - gf_fileio_url
    linkageType: ''
    returnType: char
    signature: char *dashdmx_io_get_cache_name(GF_DASHFileIO *dashio, GF_DASHFileIOSession
      session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_mime_type
      Src: /src/gpac/src/filters/dmx_dash.c:807,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 811
      start: 804
    functionDepth: 0
    functionLinenumber: 804
    functionLinenumberEnd: 811
    functionName: dashdmx_io_get_mime
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_mime_type
    linkageType: ''
    returnType: char
    signature: char *dashdmx_io_get_mime(GF_DASHFileIO *dashio, GF_DASHFileIOSession
      session)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_get_header
      Src: /src/gpac/src/filters/dmx_dash.c:816,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:820,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/filters/dmx_dash.c:823,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/dmx_dash.c:824,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - dashio
    - session
    - header_name
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 812
    functionDepth: 1
    functionLinenumber: 812
    functionLinenumberEnd: 827
    functionName: dashdmx_io_get_header_value
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_get_header
    - gf_filter_release_property
    - gf_filter_pid_get_property_str
    - gf_filter_pid_get_info_str
    linkageType: ''
    returnType: char
    signature: char *dashdmx_io_get_header_value(GF_DASHFileIO *dashio, GF_DASHFileIOSession
      session, const char *header_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_get_utc_start
      Src: /src/gpac/src/filters/dmx_dash.c:831,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 835
      start: 828
    functionDepth: 0
    functionLinenumber: 828
    functionLinenumberEnd: 835
    functionName: dashdmx_io_get_utc_start_time
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_get_utc_start
    linkageType: ''
    returnType: u64
    signature: u64 dashdmx_io_get_utc_start_time(GF_DASHFileIO *dashio, GF_DASHFileIOSession
      session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_setup_from_url
      Src: /src/gpac/src/filters/dmx_dash.c:839,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - dashio
    - session
    - url
    - group_idx
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    - char*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 836
    functionDepth: 0
    functionLinenumber: 836
    functionLinenumberEnd: 843
    functionName: dashdmx_io_setup_from_url
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_setup_from_url
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dashdmx_io_setup_from_url(GF_DASHFileIO *dashio, GF_DASHFileIOSession
      session, const char *url, s32 group_idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_set_range
      Src: /src/gpac/src/filters/dmx_dash.c:847,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - dashio
    - session
    - start_range
    - end_range
    - discontinue_cache
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    - u64
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 851
      start: 844
    functionDepth: 0
    functionLinenumber: 844
    functionLinenumberEnd: 851
    functionName: dashdmx_io_set_range
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_set_range
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dashdmx_io_set_range(GF_DASHFileIO *dashio, GF_DASHFileIOSession
      session, u64 start_range, u64 end_range, Bool discontinue_cache)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_get_stats
      Src: /src/gpac/src/filters/dmx_dash.c:858,1
    - Dst: gf_dm_get_data_rate
      Src: /src/gpac/src/filters/dmx_dash.c:861,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 866
      start: 853
    functionDepth: 0
    functionLinenumber: 853
    functionLinenumberEnd: 866
    functionName: dashdmx_io_get_bytes_per_sec
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dm_get_data_rate
    - gf_dm_sess_get_stats
    linkageType: ''
    returnType: u32
    signature: u32 dashdmx_io_get_bytes_per_sec(GF_DASHFileIO *dashio, GF_DASHFileIOSession
      session)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_get_stats
      Src: /src/gpac/src/filters/dmx_dash.c:872,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 885
      start: 868
    functionDepth: 0
    functionLinenumber: 868
    functionLinenumberEnd: 885
    functionName: dashdmx_io_get_status
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_get_stats
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dashdmx_io_get_status(GF_DASHFileIO *dashio, GF_DASHFileIOSession
      session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_abort
      Src: /src/gpac/src/filters/dmx_dash.c:891,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 892
      start: 889
    functionDepth: 0
    functionLinenumber: 889
    functionLinenumberEnd: 892
    functionName: dashdmx_io_abort
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_abort
    linkageType: ''
    returnType: void
    signature: void dashdmx_io_abort(GF_DASHFileIO *dashio, GF_DASHFileIOSession session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_get_stats
      Src: /src/gpac/src/filters/dmx_dash.c:896,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 898
      start: 893
    functionDepth: 0
    functionLinenumber: 893
    functionLinenumberEnd: 898
    functionName: dashdmx_io_get_total_size
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_get_stats
    linkageType: ''
    returnType: u32
    signature: u32 dashdmx_io_get_total_size(GF_DASHFileIO *dashio, GF_DASHFileIOSession
      session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_dm_sess_get_stats
      Src: /src/gpac/src/filters/dmx_dash.c:902,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 904
      start: 899
    functionDepth: 0
    functionLinenumber: 899
    functionLinenumberEnd: 904
    functionName: dashdmx_io_get_bytes_done
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_get_stats
    linkageType: ''
    returnType: u32
    signature: u32 dashdmx_io_get_bytes_done(GF_DASHFileIO *dashio, GF_DASHFileIOSession
      session)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/dmx_dash.c:914,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:916,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:916,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:917,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/dmx_dash.c:917,1
    - Dst: gf_dash_get_period_duration
      Src: /src/gpac/src/filters/dmx_dash.c:917,1
    - Dst: gf_dash_group_get_srd_info
      Src: /src/gpac/src/filters/dmx_dash.c:920,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/dmx_dash.c:923,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:924,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:924,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:925,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:925,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:926,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:926,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:927,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:927,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:928,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:928,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:929,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:929,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:930,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:930,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:931,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:933,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filters/dmx_dash.c:936,1
    - Dst: gf_dash_group_get_num_qualities
      Src: /src/gpac/src/filters/dmx_dash.c:938,1
    - Dst: gf_dash_group_get_quality_info
      Src: /src/gpac/src/filters/dmx_dash.c:944,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/dmx_dash.c:950,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:951,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/dmx_dash.c:951,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:952,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/dmx_dash.c:952,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:953,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/dmx_dash.c:953,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:954,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:954,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:955,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/dmx_dash.c:955,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:958,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:958,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:959,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:959,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:960,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/dmx_dash.c:960,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/dmx_dash.c:961,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:962,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:962,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:963,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:963,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:964,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/dmx_dash.c:966,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:967,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:967,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:968,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:968,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:969,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:972,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:972,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:973,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:973,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:975,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/dmx_dash.c:975,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:976,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/dmx_dash.c:976,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_dash.c:979,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filters/dmx_dash.c:980,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_dash.c:982,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filters/dmx_dash.c:984,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/dmx_dash.c:984,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:986,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:988,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filters/dmx_dash.c:990,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:993,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/dmx_dash.c:995,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:996,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:997,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 68
    argCount: 2
    argNames:
    - ctx
    - group_idx
    argTypes:
    - GF_DASHDmxCtx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 998
      start: 909
    functionDepth: 4
    functionLinenumber: 909
    functionLinenumberEnd: 998
    functionName: dashdmx_js_declare_group
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - JS_NewFloat64
    - JS_Call
    - JS_FreeValue
    - JS_SetPropertyUint32
    - gf_dash_group_get_srd_info
    - JS_NewString
    - JS_NewInt64
    - gf_dash_get_period_duration
    - gf_list_count
    - JS_NewBool
    - JS_NewInt32
    - JS_NewObject
    - JS_SetPropertyStr
    - gf_dash_group_get_quality_info
    - JS_NewArray
    - gf_dash_group_get_num_qualities
    linkageType: ''
    returnType: void
    signature: void dashdmx_js_declare_group(GF_DASHDmxCtx *ctx, u32 group_idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_DASHDmxCtx*::on_new_group
      Src: /src/gpac/src/filters/dmx_dash.c:1004,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/dmx_dash.c:1006,1
    - Dst: dashdmx_js_declare_group
      Src: /src/gpac/src/filters/dmx_dash.c:1007,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - group_idx
    argTypes:
    - GF_DASHDmxCtx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1010
      start: 1001
    functionDepth: 5
    functionLinenumber: 1001
    functionLinenumberEnd: 1010
    functionName: dashdmx_declare_group
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - dashdmx_js_declare_group
    - JS_IsFunction
    - GF_DASHDmxCtx*::on_new_group
    linkageType: ''
    returnType: void
    signature: void dashdmx_declare_group(GF_DASHDmxCtx *ctx, u32 group_idx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:1021,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:1023,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_dash.c:1028,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_dash.c:1029,1
    - Dst: memmove
      Src: /src/gpac/src/filters/dmx_dash.c:1030,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_dash.c:1031,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_dash.c:1039,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:1040,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:1042,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_dash.c:1047,1
    - Dst: memmove
      Src: /src/gpac/src/filters/dmx_dash.c:1048,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 34
    argCount: 4
    argNames:
    - manifest_payload
    - manifest_payload_len
    - keep_base_url
    - relative_url
    argTypes:
    - char*
    - u32
    - GF_DASHBaseURLControlMode
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1053
      start: 1012
    functionDepth: 0
    functionLinenumber: 1012
    functionLinenumberEnd: 1053
    functionName: process_base_url
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - memcpy
    - memmove
    - strlen
    - strstr
    linkageType: ''
    returnType: void
    signature: void process_base_url(char *manifest_payload, u32 manifest_payload_len,
      GF_DASHBaseURLControlMode keep_base_url, const char *relative_url)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filters/dmx_dash.c:1062,1
    - Dst: process_base_url
      Src: /src/gpac/src/filters/dmx_dash.c:1067,1
    - Dst: gf_dash_is_m3u8
      Src: /src/gpac/src/filters/dmx_dash.c:1071,1
    - Dst: gf_dash_is_dynamic_mpd
      Src: /src/gpac/src/filters/dmx_dash.c:1072,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1075,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1075,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_dash.c:1077,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:1079,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_dash.c:1080,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dmx_dash.c:1081,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1082,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1082,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1084,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_dash.c:1084,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_dash.c:1086,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_dash.c:1090,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_dash.c:1091,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_dash.c:1092,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_dash.c:1093,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_dash.c:1095,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_dash.c:1095,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:1098,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:1104,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 37
    argCount: 4
    argNames:
    - dashio
    - manifest_name
    - cache_url
    - group_idx
    argTypes:
    - GF_DASHFileIO*
    - char*
    - char*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1106
      start: 1056
    functionDepth: 3
    functionLinenumber: 1056
    functionLinenumberEnd: 1106
    functionName: dashdmx_io_manifest_updated
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_free
    - PROP_STRING
    - PROP_LONGUINT
    - gf_filter_pck_set_property
    - gf_assert
    - gf_list_new
    - gf_strdup
    - memcpy
    - gf_list_add
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_filter_pid_set_property
    - process_base_url
    - PROP_UINT
    - gf_dash_is_m3u8
    - gf_file_load_data
    - gf_dash_is_dynamic_mpd
    - gf_filter_pck_set_framing
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void dashdmx_io_manifest_updated(GF_DASHFileIO *dashio, const char
      *manifest_name, const char *cache_url, s32 group_idx)
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_dash.c:1118,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/dmx_dash.c:1126,1
    - Dst: gf_dash_groups_set_language
      Src: /src/gpac/src/filters/dmx_dash.c:1127,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/dmx_dash.c:1127,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:1129,1
    - Dst: gf_dash_switch_quality
      Src: /src/gpac/src/filters/dmx_dash.c:1130,1
    - Dst: dashin_abort
      Src: /src/gpac/src/filters/dmx_dash.c:1132,1
    - Dst: gf_dash_groups_set_language
      Src: /src/gpac/src/filters/dmx_dash.c:1137,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/dmx_dash.c:1137,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/dmx_dash.c:1148,1
    - Dst: gf_dash_is_group_selected
      Src: /src/gpac/src/filters/dmx_dash.c:1149,1
    - Dst: gf_dash_get_url
      Src: /src/gpac/src/filters/dmx_dash.c:1150,1
    - Dst: gf_dash_group_loop_detected
      Src: /src/gpac/src/filters/dmx_dash.c:1151,1
    - Dst: gf_dash_is_dynamic_mpd
      Src: /src/gpac/src/filters/dmx_dash.c:1152,1
    - Dst: gf_dash_group_get_language
      Src: /src/gpac/src/filters/dmx_dash.c:1153,1
    - Dst: gf_dash_group_get_num_components
      Src: /src/gpac/src/filters/dmx_dash.c:1154,1
    - Dst: gf_dash_get_utc_drift_estimate
      Src: /src/gpac/src/filters/dmx_dash.c:1155,1
    - Dst: gf_dash_group_set_codec_stat
      Src: /src/gpac/src/filters/dmx_dash.c:1159,1
    - Dst: gf_dash_group_set_buffer_levels
      Src: /src/gpac/src/filters/dmx_dash.c:1160,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:1163,1
    - Dst: gf_dash_set_automatic_switching
      Src: /src/gpac/src/filters/dmx_dash.c:1164,1
    - Dst: gf_dash_group_select_quality
      Src: /src/gpac/src/filters/dmx_dash.c:1165,1
    - Dst: gf_dash_override_ntp
      Src: /src/gpac/src/filters/dmx_dash.c:1168,1
    - Dst: gf_dash_group_set_quality_degradation_hint
      Src: /src/gpac/src/filters/dmx_dash.c:1171,1
    - Dst: GF_DASHDmxCtx*::on_period_reset
      Src: /src/gpac/src/filters/dmx_dash.c:1176,1
    - Dst: gf_dash_is_dynamic_mpd
      Src: /src/gpac/src/filters/dmx_dash.c:1176,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/dmx_dash.c:1178,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:1180,1
    - Dst: gf_dash_is_dynamic_mpd
      Src: /src/gpac/src/filters/dmx_dash.c:1180,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/dmx_dash.c:1181,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:1182,1
    - Dst: gf_dash_get_group_count
      Src: /src/gpac/src/filters/dmx_dash.c:1188,1
    - Dst: gf_dash_is_group_selectable
      Src: /src/gpac/src/filters/dmx_dash.c:1194,1
    - Dst: gf_dash_is_group_selected
      Src: /src/gpac/src/filters/dmx_dash.c:1197,1
    - Dst: gf_dash_group_enum_descriptor
      Src: /src/gpac/src/filters/dmx_dash.c:1203,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:1206,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:1207,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:1208,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:1209,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:1210,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:1211,1
    - Dst: gf_dash_group_select
      Src: /src/gpac/src/filters/dmx_dash.c:1218,1
    - Dst: gf_dash_group_has_dependent_group
      Src: /src/gpac/src/filters/dmx_dash.c:1224,1
    - Dst: gf_dash_group_select
      Src: /src/gpac/src/filters/dmx_dash.c:1225,1
    - Dst: dashdmx_declare_group
      Src: /src/gpac/src/filters/dmx_dash.c:1226,1
    - Dst: gf_dash_group_get_segment_init_url
      Src: /src/gpac/src/filters/dmx_dash.c:1230,1
    - Dst: dashdmx_load_source
      Src: /src/gpac/src/filters/dmx_dash.c:1232,1
    - Dst: gf_dash_group_select
      Src: /src/gpac/src/filters/dmx_dash.c:1234,1
    - Dst: gf_dash_group_get_video_info
      Src: /src/gpac/src/filters/dmx_dash.c:1239,1
    - Dst: gf_dash_group_get_srd_max_size_info
      Src: /src/gpac/src/filters/dmx_dash.c:1244,1
    - Dst: dashdmx_declare_group
      Src: /src/gpac/src/filters/dmx_dash.c:1248,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:1257,1
    - Dst: gf_dash_get_group_count
      Src: /src/gpac/src/filters/dmx_dash.c:1265,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1266,1
    - Dst: gf_filter_remove_src
      Src: /src/gpac/src/filters/dmx_dash.c:1269,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:1272,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:1273,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:1274,1
    - Dst: gf_dash_set_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1275,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:1277,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:1278,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1279,1
    - Dst: GF_DASHDmxCtx*::on_period_reset
      Src: /src/gpac/src/filters/dmx_dash.c:1283,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/dmx_dash.c:1285,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:1286,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/dmx_dash.c:1287,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:1288,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1295,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:1298,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:1301,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1309,1
    - Dst: gf_dash_group_has_dependent_group
      Src: /src/gpac/src/filters/dmx_dash.c:1312,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1313,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:1321,1
    - Dst: gf_dash_group_get_as_id
      Src: /src/gpac/src/filters/dmx_dash.c:1323,1
    - Dst: gf_dash_get_period_id
      Src: /src/gpac/src/filters/dmx_dash.c:1324,1
    - Dst: gf_dash_group_get_num_qualities
      Src: /src/gpac/src/filters/dmx_dash.c:1326,1
    - Dst: gf_dash_group_get_quality_info
      Src: /src/gpac/src/filters/dmx_dash.c:1329,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:1332,1
    - Dst: gf_dash_get_timeshift_buffer_pos
      Src: /src/gpac/src/filters/dmx_dash.c:1337,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:1338,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:1339,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/dmx_dash.c:1340,1
    - Dst: PROP_DOUBLE
      Src: /src/gpac/src/filters/dmx_dash.c:1340,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:1346,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:1347,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/dmx_dash.c:1348,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1348,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1353,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:1354,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:1355,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1356,1
    - Dst: gf_filter_pid_get_statistics
      Src: /src/gpac/src/filters/dmx_dash.c:1360,1
    - Dst: gf_filter_pid_get_statistics
      Src: /src/gpac/src/filters/dmx_dash.c:1362,1
    - Dst: gf_dash_group_set_codec_stat
      Src: /src/gpac/src/filters/dmx_dash.c:1372,1
    - Dst: gf_dash_group_set_buffer_levels
      Src: /src/gpac/src/filters/dmx_dash.c:1375,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:1387,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:1388,1
    - Dst: gf_filter_pid_set_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:1392,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/filters/dmx_dash.c:1395,1
    - Dst: gf_filter_pid_get_next_ts
      Src: /src/gpac/src/filters/dmx_dash.c:1396,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/dmx_dash.c:1399,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dmx_dash.c:1405,1
    CyclomaticComplexity: 90
    EdgeCount: 90
    ICount: 211
    argCount: 4
    argNames:
    - dashio
    - dash_evt
    - group_idx
    - error_code
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHEventType
    - s32
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1411
      start: 1110
    functionDepth: 9
    functionLinenumber: 1110
    functionLinenumberEnd: 1411
    functionName: dashdmx_io_on_dash_event
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_dash_get_period_id
    - gf_dash_group_select_quality
    - gf_dash_is_group_selectable
    - gf_filter_send_event
    - gf_dash_get_group_udta
    - gf_dash_group_get_segment_init_url
    - gf_opts_get_key
    - gf_filter_pid_set_udta
    - dashin_abort
    - gf_dash_group_set_buffer_levels
    - gf_dash_override_ntp
    - gf_dash_group_get_quality_info
    - GF_DASHDmxCtx*::on_period_reset
    - gf_sys_is_cov_mode
    - gf_dash_get_group_count
    - gf_dash_group_get_num_qualities
    - gf_filter_pid_get_statistics
    - gf_dash_group_enum_descriptor
    - gf_filter_pid_set_udta_flags
    - gf_filter_pid_get_next_ts
    - gf_filter_post_process_task
    - gf_dash_group_get_num_components
    - GF_FEVT_INIT
    - gf_dash_group_get_video_info
    - gf_dash_group_get_language
    - gf_dash_group_has_dependent_group
    - gf_dash_group_set_codec_stat
    - dashdmx_declare_group
    - JS_NewInt32
    - gf_filter_pid_get_timescale
    - gf_dash_group_loop_detected
    - gf_dash_groups_set_language
    - PROP_DOUBLE
    - gf_dash_get_url
    - JS_IsFunction
    - GF_LOG
    - gf_dash_group_get_srd_max_size_info
    - gf_dash_group_select
    - gf_dash_set_automatic_switching
    - gf_dash_get_timeshift_buffer_pos
    - gf_dash_get_utc_drift_estimate
    - gf_filter_setup_failure
    - gf_dash_set_group_udta
    - gf_filter_pid_send_event
    - gf_dash_switch_quality
    - gf_dash_is_group_selected
    - dashdmx_load_source
    - gf_dash_group_get_as_id
    - gf_filter_pid_set_info
    - PROP_UINT
    - gf_filter_get_opid_count
    - JS_Call
    - JS_FreeValue
    - gf_dash_is_dynamic_mpd
    - gf_filter_remove_src
    - gf_timestamp_greater
    - gf_filter_get_opid
    - strcmp
    - gf_dash_group_set_quality_degradation_hint
    - gf_filter_pid_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dashdmx_io_on_dash_event(GF_DASHFileIO *dashio, GF_DASHEventType
      dash_evt, s32 group_idx, GF_Err error_code)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_output_buffer_max
      Src: /src/gpac/src/filters/dmx_dash.c:1416,1
    - Dst: gf_dash_get_min_buffer_time
      Src: /src/gpac/src/filters/dmx_dash.c:1422,1
    - Dst: gf_dash_set_user_buffer
      Src: /src/gpac/src/filters/dmx_dash.c:1427,1
    - Dst: gf_dash_group_set_max_buffer_playout
      Src: /src/gpac/src/filters/dmx_dash.c:1429,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - group
    argTypes:
    - GF_DASHDmxCtx*
    - GF_DASHGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1430
      start: 1413
    functionDepth: 3
    functionLinenumber: 1413
    functionLinenumberEnd: 1430
    functionName: dashdmx_setup_buffer
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_min_buffer_time
    - gf_dash_group_set_max_buffer_playout
    - gf_filter_get_output_buffer_max
    - gf_dash_set_user_buffer
    linkageType: ''
    returnType: void
    signature: void dashdmx_setup_buffer(GF_DASHDmxCtx *ctx, GF_DASHGroup *group)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/dmx_dash.c:1435,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dmx_dash.c:1439,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1442,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DASHDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1447
      start: 1433
    functionDepth: 1
    functionLinenumber: 1433
    functionLinenumberEnd: 1447
    functionName: dashdmx_dash_playback_mode
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_ipid
    - gf_filter_pid_get_property
    - gf_filter_get_ipid_count
    linkageType: ''
    returnType: u32
    signature: u32 dashdmx_dash_playback_mode(GF_DASHDmxCtx *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_group_count
      Src: /src/gpac/src/filters/dmx_dash.c:1454,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1455,1
    - Dst: gf_filter_pid_is_filter_in_parents
      Src: /src/gpac/src/filters/dmx_dash.c:1457,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - src_pid
    argTypes:
    - GF_DASHDmxCtx*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1461
      start: 1450
    functionDepth: 2
    functionLinenumber: 1450
    functionLinenumberEnd: 1461
    functionName: dashdmx_group_idx_from_pid
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_group_udta
    - gf_dash_get_group_count
    - gf_filter_pid_is_filter_in_parents
    linkageType: ''
    returnType: s32
    signature: s32 dashdmx_group_idx_from_pid(GF_DASHDmxCtx *ctx, GF_FilterPid *src_pid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:1467,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:1468,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1469,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - group
    argTypes:
    - GF_DASHDmxCtx*
    - GF_DASHGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1473
      start: 1463
    functionDepth: 1
    functionLinenumber: 1463
    functionLinenumberEnd: 1473
    functionName: dashdmx_opid_from_group
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_udta
    - gf_filter_get_opid
    - gf_filter_get_opid_count
    linkageType: ''
    returnType: GF_FilterPid
    signature: GF_FilterPid *dashdmx_opid_from_group(GF_DASHDmxCtx *ctx, GF_DASHGroup
      *group)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:1479,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1484,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1486,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1488,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1489,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1490,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:1495,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1497,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1500,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1502,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1504,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1505,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1506,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/dmx_dash.c:1508,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/dmx_dash.c:1513,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/dmx_dash.c:1515,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/dmx_dash.c:1518,1
    - Dst: gf_filter_pid_is_playing
      Src: /src/gpac/src/filters/dmx_dash.c:1526,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_dash.c:1531,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 39
    argCount: 4
    argNames:
    - ctx
    - input
    - run_status
    - for_group
    argTypes:
    - GF_DASHDmxCtx*
    - GF_FilterPid*
    - u32*
    - GF_DASHGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1532
      start: 1475
    functionDepth: 1
    functionLinenumber: 1475
    functionLinenumberEnd: 1532
    functionName: dashdmx_create_output_pid
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_props_equal
    - gf_filter_pid_get_property
    - gf_filter_get_opid_count
    - gf_filter_get_opid
    - gf_filter_pid_is_playing
    - gf_filter_pid_get_udta
    - gf_filter_pid_new
    linkageType: ''
    returnType: GF_FilterPid
    signature: GF_FilterPid *dashdmx_create_output_pid(GF_DASHDmxCtx *ctx, GF_FilterPid
      *input, u32 *run_status, GF_DASHGroup *for_group)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1539,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:1540,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - cbk
    - prop_4cc
    - prop_name
    - src_prop
    argTypes:
    - void*
    - u32
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1543
      start: 1534
    functionDepth: 0
    functionLinenumber: 1534
    functionLinenumberEnd: 1543
    functionName: dashdmx_merge_prop
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property_str
    - gf_filter_pid_get_property
    linkageType: ''
    returnType: Bool
    signature: Bool dashdmx_merge_prop(void *cbk, u32 prop_4cc, const char *prop_name,
      const GF_PropertyValue *src_prop)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1554,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1556,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1559,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1560,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1563,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1564,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1567,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1568,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1572,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1577,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1578,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1581,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1582,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1586,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1590,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1592,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1594,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1598,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1599,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1604,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1605,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1608,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1609,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1613,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1614,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 73
    argCount: 2
    argNames:
    - q_desc
    - qinfo
    argTypes:
    - char**
    - GF_DASHQualityInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1617
      start: 1546
    functionDepth: 1
    functionLinenumber: 1546
    functionLinenumberEnd: 1617
    functionName: dashdm_format_qinfo
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dynstrcat
    - snprintf
    linkageType: ''
    returnType: void
    signature: void dashdm_format_qinfo(char **q_desc, GF_DASHQualityInfo *qinfo)
  - BBCount: 53
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dmx_dash.c:1630,1
    - Dst: gf_dash_group_get_as_id
      Src: /src/gpac/src/filters/dmx_dash.c:1635,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1638,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1640,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1642,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dmx_dash.c:1644,1
    - Dst: dashdmx_dash_playback_mode
      Src: /src/gpac/src/filters/dmx_dash.c:1647,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1648,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1648,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1650,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1651,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1651,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1652,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1652,1
    - Dst: gf_dash_group_get_sar
      Src: /src/gpac/src/filters/dmx_dash.c:1656,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1658,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/dmx_dash.c:1658,1
    - Dst: gf_dash_get_duration
      Src: /src/gpac/src/filters/dmx_dash.c:1662,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1664,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/dmx_dash.c:1664,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1666,1
    - Dst: gf_dash_group_get_time_shift_buffer_depth
      Src: /src/gpac/src/filters/dmx_dash.c:1668,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1670,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/dmx_dash.c:1670,1
    - Dst: gf_dash_get_min_buffer_time
      Src: /src/gpac/src/filters/dmx_dash.c:1674,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1675,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1675,1
    - Dst: gf_dash_get_max_segment_duration
      Src: /src/gpac/src/filters/dmx_dash.c:1680,1
    - Dst: gf_dash_is_low_latency
      Src: /src/gpac/src/filters/dmx_dash.c:1682,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:1687,1
    - Dst: gf_dash_set_low_latency_mode
      Src: /src/gpac/src/filters/dmx_dash.c:1690,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:1694,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:1695,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1696,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1696,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_dash.c:1701,1
    - Dst: gf_dash_group_get_num_qualities
      Src: /src/gpac/src/filters/dmx_dash.c:1704,1
    - Dst: gf_dash_group_get_quality_info
      Src: /src/gpac/src/filters/dmx_dash.c:1708,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:1718,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:1719,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:1720,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:1721,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:1722,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:1723,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_dash.c:1727,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_dash.c:1729,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_dash.c:1731,1
    - Dst: dashdm_format_qinfo
      Src: /src/gpac/src/filters/dmx_dash.c:1734,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_dash.c:1736,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/dmx_dash.c:1742,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/dmx_dash.c:1746,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1746,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_dash.c:1747,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_dash.c:1750,1
    - Dst: gf_dash_get_dependent_group_index
      Src: /src/gpac/src/filters/dmx_dash.c:1756,1
    - Dst: gf_dash_group_get_srd_info
      Src: /src/gpac/src/filters/dmx_dash.c:1758,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1766,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_dash.c:1768,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_dash.c:1770,1
    - Dst: gf_dash_group_get_num_qualities
      Src: /src/gpac/src/filters/dmx_dash.c:1772,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_dash.c:1774,1
    - Dst: gf_dash_group_get_quality_info
      Src: /src/gpac/src/filters/dmx_dash.c:1778,1
    - Dst: dashdm_format_qinfo
      Src: /src/gpac/src/filters/dmx_dash.c:1781,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1784,1
    - Dst: gf_filter_pid_set_info_dyn
      Src: /src/gpac/src/filters/dmx_dash.c:1785,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/dmx_dash.c:1787,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1792,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1792,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1794,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_dash.c:1794,1
    - Dst: gf_dash_group_has_init_segment
      Src: /src/gpac/src/filters/dmx_dash.c:1796,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1797,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_dash.c:1797,1
    - Dst: gf_dash_is_dynamic_mpd
      Src: /src/gpac/src/filters/dmx_dash.c:1802,1
    - Dst: gf_dash_group_get_time_shift_buffer_depth
      Src: /src/gpac/src/filters/dmx_dash.c:1804,1
    - Dst: gf_dash_group_get_segment_duration
      Src: /src/gpac/src/filters/dmx_dash.c:1805,1
    - Dst: gf_dash_get_max_segment_duration
      Src: /src/gpac/src/filters/dmx_dash.c:1810,1
    - Dst: gf_dash_get_max_segment_duration
      Src: /src/gpac/src/filters/dmx_dash.c:1811,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1816,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1816,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1818,1
    - Dst: gf_dash_get_info
      Src: /src/gpac/src/filters/dmx_dash.c:1823,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/dmx_dash.c:1824,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1824,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/dmx_dash.c:1825,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1825,1
    - Dst: gf_dash_group_enum_descriptor
      Src: /src/gpac/src/filters/dmx_dash.c:1828,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1834,1
    - Dst: gf_dash_group_enum_descriptor
      Src: /src/gpac/src/filters/dmx_dash.c:1838,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:1840,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1840,1
    - Dst: gf_dash_group_enum_descriptor
      Src: /src/gpac/src/filters/dmx_dash.c:1843,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:1845,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1845,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/dmx_dash.c:1848,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/dmx_dash.c:1849,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/dmx_dash.c:1849,1
    - Dst: gf_dash_get_utc_drift_estimate
      Src: /src/gpac/src/filters/dmx_dash.c:1849,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_dash.c:1852,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_dash.c:1853,1
    - Dst: gf_dash_group_get_srd_info
      Src: /src/gpac/src/filters/dmx_dash.c:1856,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1864,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1865,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1869,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1872,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1873,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/dmx_dash.c:1875,1
    - Dst: gf_dash_group_enum_descriptor
      Src: /src/gpac/src/filters/dmx_dash.c:1879,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:1882,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1883,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1883,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1884,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1884,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_dash.c:1884,1
    - Dst: dashdmx_notify_group_quality
      Src: /src/gpac/src/filters/dmx_dash.c:1896,1
    - Dst: gf_filter_pid_merge_properties
      Src: /src/gpac/src/filters/dmx_dash.c:1902,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1906,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/dmx_dash.c:1906,1
    - Dst: gf_dash_group_enum_descriptor
      Src: /src/gpac/src/filters/dmx_dash.c:1914,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:1917,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1923,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_dash.c:1923,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1927,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1927,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1928,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/dmx_dash.c:1928,1
    - Dst: gf_dash_group_get_clearkey_uri
      Src: /src/gpac/src/filters/dmx_dash.c:1931,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1933,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1933,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1934,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/dmx_dash.c:1934,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1941,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1941,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1942,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1942,1
    - Dst: gf_dash_group_get_segment_duration
      Src: /src/gpac/src/filters/dmx_dash.c:1944,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1945,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/dmx_dash.c:1945,1
    - Dst: gf_dash_group_next_seg_info
      Src: /src/gpac/src/filters/dmx_dash.c:1947,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1949,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1949,1
    - Dst: gf_dash_group_get_representation_id
      Src: /src/gpac/src/filters/dmx_dash.c:1953,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1955,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1955,1
    - Dst: gf_dash_get_period_start
      Src: /src/gpac/src/filters/dmx_dash.c:1957,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1958,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_dash.c:1958,1
    - Dst: gf_dash_group_get_representation_id
      Src: /src/gpac/src/filters/dmx_dash.c:1961,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1962,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1962,1
    - Dst: gf_dash_get_base_group_index
      Src: /src/gpac/src/filters/dmx_dash.c:1965,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1966,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1966,1
    - Dst: gf_dash_get_period_id
      Src: /src/gpac/src/filters/dmx_dash.c:1968,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1969,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1969,1
    - Dst: gf_dash_group_get_as_id
      Src: /src/gpac/src/filters/dmx_dash.c:1971,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1972,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1972,1
    CyclomaticComplexity: 81
    EdgeCount: 81
    ICount: 240
    argCount: 6
    argNames:
    - ctx
    - group
    - group_idx
    - opid
    - ipid
    - is_period_switch
    argTypes:
    - GF_DASHDmxCtx*
    - GF_DASHGroup*
    - u32
    - GF_FilterPid*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1973
      start: 1621
    functionDepth: 6
    functionLinenumber: 1621
    functionLinenumberEnd: 1973
    functionName: dashdmx_declare_properties
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_period_id
    - gf_dash_get_dependent_group_index
    - PROP_STRING
    - gf_filter_pid_set_property_str
    - gf_dash_group_get_sar
    - memset
    - gf_dash_group_get_time_shift_buffer_depth
    - gf_dash_group_get_representation_id
    - atoi
    - PROP_DATA
    - gf_dash_get_period_start
    - gf_dash_group_get_quality_info
    - PROP_LONGUINT
    - gf_dash_group_has_init_segment
    - gf_dash_group_get_num_qualities
    - gf_realloc
    - gf_strdup
    - dashdm_format_qinfo
    - gf_dash_group_enum_descriptor
    - PROP_FRAC
    - sprintf
    - gf_dash_group_next_seg_info
    - strncmp
    - PROP_BOOL
    - gf_dash_group_get_clearkey_uri
    - gf_dash_get_info
    - dashdmx_dash_playback_mode
    - gf_filter_pid_copy_properties
    - PROP_SINT
    - GF_LOG
    - gf_sys_is_test_mode
    - strstr
    - gf_dash_is_low_latency
    - PROP_FRAC64_INT
    - gf_dash_set_low_latency_mode
    - gf_dash_get_utc_drift_estimate
    - gf_filter_pid_set_property
    - gf_malloc
    - PROP_FRAC_INT
    - gf_dash_group_get_as_id
    - gf_filter_pid_set_info_str
    - dashdmx_notify_group_quality
    - gf_filter_pid_set_info
    - gf_filter_pid_set_info_dyn
    - PROP_UINT
    - gf_filter_pid_get_property
    - gf_dash_get_max_segment_duration
    - gf_filter_get_opid_count
    - PROP_NAME
    - gf_dash_get_base_group_index
    - gf_dash_get_duration
    - gf_dash_get_min_buffer_time
    - gf_dash_group_get_srd_info
    - gf_dash_is_dynamic_mpd
    - gf_filter_get_opid
    - gf_filter_pid_merge_properties
    - strcmp
    - gf_dash_group_get_segment_duration
    - gf_filter_pid_set_name
    - gf_opts_get_bool
    linkageType: ''
    returnType: void
    signature: void dashdmx_declare_properties(GF_DASHDmxCtx *ctx, GF_DASHGroup *group,
      u32 group_idx, GF_FilterPid *opid, GF_FilterPid *ipid, Bool is_period_switch)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1981,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:1988,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:1989,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1990,1
    - Dst: gf_filter_remove_src
      Src: /src/gpac/src/filters/dmx_dash.c:1992,1
    - Dst: gf_dash_close
      Src: /src/gpac/src/filters/dmx_dash.c:1995,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1998,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dmx_dash.c:2001,1
    - Dst: gf_dash_all_groups_done
      Src: /src/gpac/src/filters/dmx_dash.c:2002,1
    - Dst: gf_dash_in_last_period
      Src: /src/gpac/src/filters/dmx_dash.c:2002,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dmx_dash.c:2003,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2005,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2006,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dmx_dash.c:2012,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2013,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dmx_dash.c:2023,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:2025,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:2028,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_dash.c:2030,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dmx_dash.c:2039,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_dash.c:2041,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dmx_dash.c:2042,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/dmx_dash.c:2045,1
    - Dst: gf_fileio_from_mem
      Src: /src/gpac/src/filters/dmx_dash.c:2046,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_dash.c:2049,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:2052,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2054,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_dash.c:2063,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dmx_dash.c:2064,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dmx_dash.c:2065,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2066,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:2068,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:2068,1
    - Dst: gf_dash_open
      Src: /src/gpac/src/filters/dmx_dash.c:2072,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2074,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_dash.c:2074,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_dash.c:2075,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dmx_dash.c:2079,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:2081,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_dash.c:2082,1
    - Dst: gf_dash_is_m3u8
      Src: /src/gpac/src/filters/dmx_dash.c:2084,1
    - Dst: gf_dash_is_smooth_streaming
      Src: /src/gpac/src/filters/dmx_dash.c:2084,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:2091,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:2094,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:2095,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dmx_dash.c:2096,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:2098,1
    - Dst: dashdmx_group_idx_from_pid
      Src: /src/gpac/src/filters/dmx_dash.c:2106,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:2108,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:2109,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:2111,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:2112,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2114,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2117,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2120,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2123,1
    - Dst: dashdmx_create_output_pid
      Src: /src/gpac/src/filters/dmx_dash.c:2126,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2127,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2128,1
    - Dst: gf_filter_pid_set_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:2130,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:2135,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:2136,1
    - Dst: gf_dash_group_select
      Src: /src/gpac/src/filters/dmx_dash.c:2138,1
    - Dst: gf_dash_set_group_done
      Src: /src/gpac/src/filters/dmx_dash.c:2141,1
    - Dst: gf_dash_group_select
      Src: /src/gpac/src/filters/dmx_dash.c:2142,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:2144,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:2145,1
    - Dst: dashdmx_declare_properties
      Src: /src/gpac/src/filters/dmx_dash.c:2152,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:2156,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 139
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2159
      start: 1975
    functionDepth: 15
    functionLinenumber: 1975
    functionLinenumberEnd: 2159
    functionName: dashdmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_dash_in_last_period
    - gf_filter_pid_check_caps
    - gf_dash_get_group_udta
    - gf_dash_open
    - gf_filter_pid_set_udta
    - gf_filter_pid_new
    - strchr
    - gf_filter_pid_get_packet
    - gf_dash_all_groups_done
    - gf_filter_post_process_task
    - gf_strdup
    - gf_filter_pid_set_udta_flags
    - GF_FEVT_INIT
    - gf_filter_get_udta
    - gf_filter_pck_ref
    - gf_filter_pid_drop_packet
    - gf_filter_pid_copy_properties
    - gf_dash_set_group_done
    - GF_LOG
    - gf_filter_pck_get_data
    - strstr
    - gf_dash_group_select
    - gf_error_to_string
    - gf_filter_setup_failure
    - gf_filter_pid_send_event
    - gf_dash_close
    - gf_fileio_from_mem
    - gf_filter_pid_set_property
    - dashdmx_create_output_pid
    - gf_fclose
    - gf_filter_pid_get_property
    - gf_filter_get_opid_count
    - gf_filter_pid_remove
    - gf_filter_pid_set_name
    - gf_filter_pid_set_framing_mode
    - PROP_UINT
    - gf_dash_is_m3u8
    - gf_dash_is_smooth_streaming
    - gf_filter_remove_src
    - gf_filter_pck_unref
    - gf_filter_get_opid
    - dashdmx_group_idx_from_pid
    - dashdmx_declare_properties
    - gf_filter_pid_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dashdmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/dmx_dash.c:2169,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2170,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2171,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/dmx_dash.c:2172,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/dmx_dash.c:2173,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2174,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2174,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2175,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2175,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2176,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/dmx_dash.c:2176,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2177,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/dmx_dash.c:2177,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2178,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2178,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2179,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2179,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2180,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2180,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2181,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2181,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2182,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2182,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2183,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2183,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2184,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2184,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2185,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2185,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/dmx_dash.c:2186,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2187,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/dmx_dash.c:2189,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/dmx_dash.c:2190,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2192,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2195,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/dmx_dash.c:2196,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 29
    argCount: 5
    argNames:
    - udta
    - group
    - base_group
    - force_lower_complexity
    - stats
    argTypes:
    - void*
    - u32
    - u32
    - Bool
    - GF_DASHCustomAlgoInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2198
      start: 2163
    functionDepth: 6
    functionLinenumber: 2163
    functionLinenumberEnd: 2198
    functionName: dashdmx_algo_js
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_NewBool
    - gf_js_lock
    - JS_ToInt32
    - JS_SetPropertyStr
    - JS_NewObject
    - js_dump_error
    - JS_NewInt32
    linkageType: ''
    returnType: s32
    signature: s32 dashdmx_algo_js(void *udta, u32 group, u32 base_group, Bool force_lower_complexity,
      GF_DASHCustomAlgoInfo *stats)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/dmx_dash.c:2206,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2208,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/dmx_dash.c:2209,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2210,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2210,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2211,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/dmx_dash.c:2211,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2212,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/dmx_dash.c:2212,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2213,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/dmx_dash.c:2213,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2214,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2214,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2215,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2215,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/dmx_dash.c:2216,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2217,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2218,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2220,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/dmx_dash.c:2222,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 8
    argNames:
    - udta
    - group
    - bits_per_sec
    - total_bytes
    - bytes_done
    - us_since_start
    - buffer_dur_ms
    - current_seg_dur
    argTypes:
    - void*
    - u32
    - u32
    - u64
    - u64
    - u64
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2224
      start: 2200
    functionDepth: 2
    functionLinenumber: 2200
    functionLinenumberEnd: 2224
    functionName: dashdmx_download_monitor_js
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_FreeValue
    - JS_NewInt64
    - gf_js_lock
    - JS_ToInt32
    - JS_SetPropertyStr
    - JS_NewObject
    - JS_NewInt32
    linkageType: ''
    returnType: s32
    signature: s32 dashdmx_download_monitor_js(void *udta, u32 group, u32 bits_per_sec,
      u64 total_bytes, u64 bytes_done, u64 us_since_start, u32 buffer_dur_ms, u32
      current_seg_dur)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/dmx_dash.c:2228,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2229,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2230,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2231,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2232,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2235,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/dmx_dash.c:2237,1
    - Dst: gf_js_delete_context
      Src: /src/gpac/src/filters/dmx_dash.c:2239,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DASHDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2244
      start: 2225
    functionDepth: 4
    functionLinenumber: 2225
    functionLinenumberEnd: 2244
    functionName: dashdmx_cleanup_js
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - gf_js_lock
    - gf_js_delete_context
    linkageType: ''
    returnType: void
    signature: void dashdmx_cleanup_js(GF_DASHDmxCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _field
    - ','
    - _name
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2252
      start: 2246
    functionDepth: 0
    functionLinenumber: 2246
    functionLinenumberEnd: 2252
    functionName: GET_FUN
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_FUN(_field, _name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2256,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2259,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/dmx_dash.c:2260,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2261,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/dmx_dash.c:2262,1
    - Dst: dashdmx_cleanup_js
      Src: /src/gpac/src/filters/dmx_dash.c:2266,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/dmx_dash.c:2269,1
    - Dst: GET_FUN
      Src: /src/gpac/src/filters/dmx_dash.c:2272,1
    - Dst: GET_FUN
      Src: /src/gpac/src/filters/dmx_dash.c:2273,1
    - Dst: GET_FUN
      Src: /src/gpac/src/filters/dmx_dash.c:2274,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/dmx_dash.c:2276,1
    - Dst: gf_dash_set_algo_custom
      Src: /src/gpac/src/filters/dmx_dash.c:2277,1
    - Dst: gf_dash_set_algo_custom
      Src: /src/gpac/src/filters/dmx_dash.c:2280,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 3
    argNames:
    - f
    - ctx
    - obj
    argTypes:
    - GF_Filter*
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2284
      start: 2254
    functionDepth: 5
    functionLinenumber: 2254
    functionLinenumberEnd: 2284
    functionName: dashdmx_bind_js
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - dashdmx_cleanup_js
    - JS_DupValue
    - GET_FUN
    - JS_IsFunction
    - gf_dash_set_algo_custom
    - JS_FreeValue
    - js_throw_err_msg
    - JS_GetPropertyStr
    - gf_filter_get_udta
    linkageType: ''
    returnType: JSValue
    signature: JSValue dashdmx_bind_js(GF_Filter *f, JSContext *ctx, JSValueConst
      obj)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filters/dmx_dash.c:2296,1
    - Dst: gf_js_create_context
      Src: /src/gpac/src/filters/dmx_dash.c:2299,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2301,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:2302,1
    - Dst: JS_SetContextOpaque
      Src: /src/gpac/src/filters/dmx_dash.c:2305,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/dmx_dash.c:2308,1
    - Dst: js_load_constants
      Src: /src/gpac/src/filters/dmx_dash.c:2309,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2312,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/dmx_dash.c:2312,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dmx_dash.c:2312,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/dmx_dash.c:2313,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2314,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/dmx_dash.c:2316,1
    - Dst: JS_DetectModule
      Src: /src/gpac/src/filters/dmx_dash.c:2316,1
    - Dst: qjs_init_all_modules
      Src: /src/gpac/src/filters/dmx_dash.c:2318,1
    - Dst: JS_Eval
      Src: /src/gpac/src/filters/dmx_dash.c:2322,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:2323,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/dmx_dash.c:2325,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2326,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/dmx_dash.c:2327,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2328,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2329,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2332,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2333,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2335,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/dmx_dash.c:2336,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2337,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2339,1
    - Dst: GET_FUN
      Src: /src/gpac/src/filters/dmx_dash.c:2344,1
    - Dst: GET_FUN
      Src: /src/gpac/src/filters/dmx_dash.c:2345,1
    - Dst: GET_FUN
      Src: /src/gpac/src/filters/dmx_dash.c:2346,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 45
    argCount: 2
    argNames:
    - dashctx
    - jsfile
    argTypes:
    - GF_DASHDmxCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2348
      start: 2287
    functionDepth: 6
    functionLinenumber: 2287
    functionLinenumberEnd: 2348
    functionName: dashdmx_initialize_js
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_GetGlobalObject
    - js_load_constants
    - gf_file_basename
    - JS_DetectModule
    - JS_NewString
    - qjs_init_all_modules
    - js_dump_error
    - JS_SetContextOpaque
    - JS_IsFunction
    - gf_js_create_context
    - GF_LOG
    - JS_GetPropertyStr
    - JS_Eval
    - GET_FUN
    - JS_IsException
    - JS_FreeValue
    - JS_NewObject
    - JS_SetPropertyStr
    - gf_opts_get_bool
    - gf_file_load_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dashdmx_initialize_js(GF_DASHDmxCtx *dashctx, char *jsfile)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2368,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/dmx_dash.c:2372,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:2419,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:2420,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:2421,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:2422,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:2423,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:2424,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:2425,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:2426,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2429,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/dmx_dash.c:2437,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dmx_dash.c:2438,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:2440,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/dmx_dash.c:2441,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dmx_dash.c:2442,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/dmx_dash.c:2443,1
    - Dst: gf_opts_default_shared_directory
      Src: /src/gpac/src/filters/dmx_dash.c:2448,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dmx_dash.c:2449,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dmx_dash.c:2450,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/dmx_dash.c:2451,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:2453,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dmx_dash.c:2454,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/dmx_dash.c:2455,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2460,1
    - Dst: dashdmx_initialize_js
      Src: /src/gpac/src/filters/dmx_dash.c:2463,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2465,1
    - Dst: gf_dash_new
      Src: /src/gpac/src/filters/dmx_dash.c:2472,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2475,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/dmx_dash.c:2481,1
    - Dst: gf_dash_set_max_resolution
      Src: /src/gpac/src/filters/dmx_dash.c:2482,1
    - Dst: gf_dash_set_algo
      Src: /src/gpac/src/filters/dmx_dash.c:2485,1
    - Dst: gf_dash_set_utc_shift
      Src: /src/gpac/src/filters/dmx_dash.c:2486,1
    - Dst: gf_dash_set_suggested_presentation_delay
      Src: /src/gpac/src/filters/dmx_dash.c:2487,1
    - Dst: gf_dash_set_mcast_ast_shift
      Src: /src/gpac/src/filters/dmx_dash.c:2488,1
    - Dst: gf_dash_enable_utc_drift_compensation
      Src: /src/gpac/src/filters/dmx_dash.c:2489,1
    - Dst: gf_dash_set_tile_adaptation_mode
      Src: /src/gpac/src/filters/dmx_dash.c:2490,1
    - Dst: gf_dash_set_min_timeout_between_404
      Src: /src/gpac/src/filters/dmx_dash.c:2492,1
    - Dst: gf_dash_set_segment_expiration_threshold
      Src: /src/gpac/src/filters/dmx_dash.c:2493,1
    - Dst: gf_dash_set_switching_probe_count
      Src: /src/gpac/src/filters/dmx_dash.c:2494,1
    - Dst: gf_dash_set_agressive_adaptation
      Src: /src/gpac/src/filters/dmx_dash.c:2495,1
    - Dst: gf_dash_enable_single_range_llhls
      Src: /src/gpac/src/filters/dmx_dash.c:2496,1
    - Dst: gf_dash_debug_groups
      Src: /src/gpac/src/filters/dmx_dash.c:2497,1
    - Dst: gf_dash_disable_speed_adaptation
      Src: /src/gpac/src/filters/dmx_dash.c:2498,1
    - Dst: gf_dash_ignore_xlink
      Src: /src/gpac/src/filters/dmx_dash.c:2499,1
    - Dst: gf_dash_set_period_xlink_query_string
      Src: /src/gpac/src/filters/dmx_dash.c:2500,1
    - Dst: gf_dash_set_low_latency_mode
      Src: /src/gpac/src/filters/dmx_dash.c:2501,1
    - Dst: gf_dash_split_adaptation_sets
      Src: /src/gpac/src/filters/dmx_dash.c:2503,1
    - Dst: gf_dash_disable_low_quality_tiles
      Src: /src/gpac/src/filters/dmx_dash.c:2504,1
    - Dst: gf_dash_set_chaining_mode
      Src: /src/gpac/src/filters/dmx_dash.c:2505,1
    - Dst: gf_dash_set_auto_switch
      Src: /src/gpac/src/filters/dmx_dash.c:2506,1
    - Dst: gf_dash_enable_cross_as_switch
      Src: /src/gpac/src/filters/dmx_dash.c:2507,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/dmx_dash.c:2511,1
    - Dst: gf_filter_block_eos
      Src: /src/gpac/src/filters/dmx_dash.c:2515,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/dmx_dash.c:2519,1
    - Dst: gf_dash_set_algo_custom
      Src: /src/gpac/src/filters/dmx_dash.c:2520,1
    - Dst: gf_dash_set_algo_custom
      Src: /src/gpac/src/filters/dmx_dash.c:2523,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/dmx_dash.c:2531,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/dmx_dash.c:2531,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/dmx_dash.c:2536,1
    - Dst: dashdmx_on_filter_setup_error
      Src: /src/gpac/src/filters/dmx_dash.c:2537,1
    - Dst: gf_filter_set_blocking
      Src: /src/gpac/src/filters/dmx_dash.c:2542,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 147
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2545
      start: 2365
    functionDepth: 9
    functionLinenumber: 2365
    functionLinenumberEnd: 2545
    functionName: dashdmx_initialize
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dash_set_suggested_presentation_delay
    - gf_filter_override_caps
    - gf_file_exists
    - strcpy
    - gf_dash_set_algo
    - gf_dash_set_chaining_mode
    - gf_dash_set_mcast_ast_shift
    - gf_dash_split_adaptation_sets
    - gf_sys_is_cov_mode
    - strcat
    - gf_filter_set_blocking
    - gf_dash_set_algo_custom
    - gf_dash_enable_single_range_llhls
    - gf_dash_ignore_xlink
    - gf_filter_block_eos
    - gf_dash_set_tile_adaptation_mode
    - gf_dash_set_agressive_adaptation
    - gf_dash_new
    - gf_dash_set_utc_shift
    - gf_filter_get_udta
    - dashdmx_initialize_js
    - JS_IsFunction
    - GF_LOG
    - gf_dash_set_min_timeout_between_404
    - gf_sys_is_test_mode
    - strstr
    - gf_dash_disable_low_quality_tiles
    - gf_dash_set_max_resolution
    - gf_dash_debug_groups
    - gf_dash_enable_utc_drift_compensation
    - gf_dash_set_period_xlink_query_string
    - gf_dash_set_low_latency_mode
    - gf_filter_get_session_caps
    - gf_filter_get_download_manager
    - gf_dash_set_auto_switch
    - gf_dash_set_switching_probe_count
    - strcmp
    - gf_opts_default_shared_directory
    - gf_dash_set_segment_expiration_threshold
    - gf_dash_disable_speed_adaptation
    - gf_dash_enable_cross_as_switch
    - dashdmx_on_filter_setup_error
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dashdmx_initialize(GF_Filter *filter)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2549,1
    - Dst: gf_dash_del
      Src: /src/gpac/src/filters/dmx_dash.c:2552,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:2555,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:2558,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_dash.c:2561,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:2562,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_dash.c:2562,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_dash.c:2563,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_dash.c:2566,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:2567,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_dash.c:2567,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_dash.c:2568,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_dash.c:2572,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dmx_dash.c:2573,1
    - Dst: dashdmx_cleanup_js
      Src: /src/gpac/src/filters/dmx_dash.c:2577,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2579
      start: 2547
    functionDepth: 7
    functionLinenumber: 2547
    functionLinenumberEnd: 2579
    functionName: dashdmx_finalize
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - dashdmx_cleanup_js
    - gf_list_pop_back
    - gf_filter_pck_unref
    - gf_list_count
    - gf_dash_del
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void dashdmx_finalize(GF_Filter *filter)
  - BBCount: 52
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2588,1
    - Dst: gf_dash_set_tile_adaptation_mode
      Src: /src/gpac/src/filters/dmx_dash.c:2596,1
    - Dst: gf_dash_set_automatic_switching
      Src: /src/gpac/src/filters/dmx_dash.c:2598,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2601,1
    - Dst: gf_dash_group_set_quality_degradation_hint
      Src: /src/gpac/src/filters/dmx_dash.c:2605,1
    - Dst: gf_dash_group_get_num_groups_depending_on
      Src: /src/gpac/src/filters/dmx_dash.c:2608,1
    - Dst: gf_dash_get_dependent_group_index
      Src: /src/gpac/src/filters/dmx_dash.c:2611,1
    - Dst: gf_dash_set_automatic_switching
      Src: /src/gpac/src/filters/dmx_dash.c:2615,1
    - Dst: gf_dash_group_select_quality
      Src: /src/gpac/src/filters/dmx_dash.c:2616,1
    - Dst: gf_dash_switch_quality
      Src: /src/gpac/src/filters/dmx_dash.c:2618,1
    - Dst: gf_dash_override_ntp
      Src: /src/gpac/src/filters/dmx_dash.c:2623,1
    - Dst: gf_dash_get_group_count
      Src: /src/gpac/src/filters/dmx_dash.c:2629,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2630,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_dash.c:2633,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_dash.c:2633,1
    - Dst: dashdmx_opid_from_group
      Src: /src/gpac/src/filters/dmx_dash.c:2634,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:2637,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:2639,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2656,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/dmx_dash.c:2658,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dmx_dash.c:2661,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2662,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2668,1
    - Dst: gf_dash_group_set_visible_rect
      Src: /src/gpac/src/filters/dmx_dash.c:2671,1
    - Dst: gf_dash_group_get_presentation_time_offset
      Src: /src/gpac/src/filters/dmx_dash.c:2685,1
    - Dst: gf_dash_is_m3u8
      Src: /src/gpac/src/filters/dmx_dash.c:2700,1
    - Dst: gf_dash_in_period_setup
      Src: /src/gpac/src/filters/dmx_dash.c:2706,1
    - Dst: gf_dash_get_period_duration
      Src: /src/gpac/src/filters/dmx_dash.c:2707,1
    - Dst: gf_dash_get_period_start
      Src: /src/gpac/src/filters/dmx_dash.c:2709,1
    - Dst: gf_dash_set_speed
      Src: /src/gpac/src/filters/dmx_dash.c:2718,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2728,1
    - Dst: gf_dash_set_timeshift
      Src: /src/gpac/src/filters/dmx_dash.c:2733,1
    - Dst: gf_dash_seek
      Src: /src/gpac/src/filters/dmx_dash.c:2735,1
    - Dst: gf_dash_get_period_switch_status
      Src: /src/gpac/src/filters/dmx_dash.c:2739,1
    - Dst: gf_dash_is_dynamic_mpd
      Src: /src/gpac/src/filters/dmx_dash.c:2746,1
    - Dst: gf_dash_get_period_switch_status
      Src: /src/gpac/src/filters/dmx_dash.c:2748,1
    - Dst: gf_dash_group_seek
      Src: /src/gpac/src/filters/dmx_dash.c:2754,1
    - Dst: gf_dash_group_segment_switch_forced
      Src: /src/gpac/src/filters/dmx_dash.c:2758,1
    - Dst: gf_dash_group_select
      Src: /src/gpac/src/filters/dmx_dash.c:2760,1
    - Dst: gf_dash_set_group_done
      Src: /src/gpac/src/filters/dmx_dash.c:2761,1
    - Dst: gf_dash_is_dynamic_mpd
      Src: /src/gpac/src/filters/dmx_dash.c:2764,1
    - Dst: gf_dash_group_get_start_range
      Src: /src/gpac/src/filters/dmx_dash.c:2769,1
    - Dst: gf_dash_group_get_presentation_time_offset
      Src: /src/gpac/src/filters/dmx_dash.c:2770,1
    - Dst: dashdmx_setup_buffer
      Src: /src/gpac/src/filters/dmx_dash.c:2774,1
    - Dst: gf_filter_prevent_blocking
      Src: /src/gpac/src/filters/dmx_dash.c:2776,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:2784,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dmx_dash.c:2785,1
    - Dst: gf_dash_set_group_done
      Src: /src/gpac/src/filters/dmx_dash.c:2796,1
    - Dst: gf_dash_group_select
      Src: /src/gpac/src/filters/dmx_dash.c:2797,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:2803,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:2819,1
    - Dst: gf_dash_set_speed
      Src: /src/gpac/src/filters/dmx_dash.c:2824,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/dmx_dash.c:2830,1
    - Dst: gf_dash_set_max_resolution
      Src: /src/gpac/src/filters/dmx_dash.c:2831,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 194
    argCount: 2
    argNames:
    - filter
    - fevt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2843
      start: 2581
    functionDepth: 14
    functionLinenumber: 2581
    functionLinenumberEnd: 2843
    functionName: dashdmx_process_event
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_dependent_group_index
    - gf_dash_group_select_quality
    - gf_dash_group_seek
    - gf_dash_group_get_num_groups_depending_on
    - gf_dash_group_segment_switch_forced
    - gf_filter_send_event
    - gf_dash_get_group_udta
    - gf_dash_get_period_duration
    - gf_filter_get_ipid
    - gf_dash_group_get_start_range
    - gf_dash_get_period_start
    - gf_dash_override_ntp
    - gf_dash_get_group_count
    - gf_filter_post_process_task
    - GF_FEVT_INIT
    - gf_dash_set_tile_adaptation_mode
    - strncmp
    - dashdmx_setup_buffer
    - gf_filter_get_udta
    - gf_dash_set_group_done
    - GF_LOG
    - gf_dash_group_select
    - gf_dash_set_automatic_switching
    - gf_dash_in_period_setup
    - dashdmx_opid_from_group
    - gf_dash_group_set_visible_rect
    - gf_dash_set_max_resolution
    - gf_filter_get_ipid_count
    - gf_filter_pid_send_event
    - gf_dash_group_get_presentation_time_offset
    - strlen
    - gf_dash_switch_quality
    - gf_dash_set_speed
    - gf_filter_get_session_caps
    - gf_dash_is_m3u8
    - gf_dash_is_dynamic_mpd
    - gf_filter_prevent_blocking
    - gf_dash_set_timeshift
    - gf_dash_group_set_quality_degradation_hint
    - gf_filter_pid_get_udta
    - gf_dash_get_period_switch_status
    - gf_dash_seek
    linkageType: ''
    returnType: Bool
    signature: Bool dashdmx_process_event(GF_Filter *filter, const GF_FilterEvent
      *fevt)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:2852,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:2854,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2855,1
    - Dst: gf_dash_group_get_active_quality
      Src: /src/gpac/src/filters/dmx_dash.c:2857,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:2859,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:2859,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:2861,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:2861,1
    - Dst: gf_dash_get_automatic_switching
      Src: /src/gpac/src/filters/dmx_dash.c:2861,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:2862,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:2862,1
    - Dst: gf_dash_get_tile_adaptation_mode
      Src: /src/gpac/src/filters/dmx_dash.c:2862,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_dash.c:2868,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_dash.c:2871,1
    - Dst: gf_dash_get_dependent_group_index
      Src: /src/gpac/src/filters/dmx_dash.c:2874,1
    - Dst: gf_dash_group_get_active_quality
      Src: /src/gpac/src/filters/dmx_dash.c:2875,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:2878,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:2879,1
    - Dst: gf_dash_get_url
      Src: /src/gpac/src/filters/dmx_dash.c:2887,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:2892,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:2892,1
    - Dst: gf_dash_group_get_quality_info
      Src: /src/gpac/src/filters/dmx_dash.c:2895,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:2897,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:2897,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:2899,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:2899,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:2901,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2904,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:2905,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:2907,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:2907,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dmx_dash.c:2908,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:2910,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_dash.c:2910,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:2911,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:2911,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:2912,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:2912,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:2913,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:2913,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:2914,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:2914,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:2916,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:2916,1
    - Dst: gf_dash_group_get_segment_duration
      Src: /src/gpac/src/filters/dmx_dash.c:2923,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:2924,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/dmx_dash.c:2924,1
    - Dst: gf_dash_group_get_representation_id
      Src: /src/gpac/src/filters/dmx_dash.c:2927,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:2928,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:2928,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 59
    argCount: 2
    argNames:
    - ctx
    - group
    argTypes:
    - GF_DASHDmxCtx*
    - GF_DASHGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2930
      start: 2846
    functionDepth: 4
    functionLinenumber: 2846
    functionLinenumberEnd: 2930
    functionName: dashdmx_notify_group_quality
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_dash_group_get_active_quality
    - gf_dash_get_dependent_group_index
    - PROP_STRING
    - gf_filter_pid_set_property_str
    - memset
    - gf_dash_group_get_representation_id
    - strchr
    - gf_dash_group_get_quality_info
    - PROP_BOOL
    - gf_dash_get_url
    - GF_LOG
    - gf_filter_pid_set_property
    - gf_malloc
    - PROP_FRAC_INT
    - PROP_UINT
    - gf_filter_get_opid_count
    - gf_filter_get_opid
    - gf_dash_group_get_segment_duration
    - gf_filter_pid_get_udta
    - gf_dash_get_tile_adaptation_mode
    - gf_dash_get_automatic_switching
    linkageType: ''
    returnType: void
    signature: void dashdmx_notify_group_quality(GF_DASHDmxCtx *ctx, GF_DASHGroup
      *group)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_info
      Src: /src/gpac/src/filters/dmx_dash.c:2946,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/dmx_dash.c:2951,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/dmx_dash.c:2954,1
    - Dst: gf_filter_get_info
      Src: /src/gpac/src/filters/dmx_dash.c:2960,1
    - Dst: gf_filter_get_info
      Src: /src/gpac/src/filters/dmx_dash.c:2963,1
    - Dst: gf_filter_get_info
      Src: /src/gpac/src/filters/dmx_dash.c:2966,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/dmx_dash.c:2969,1
    - Dst: gf_dash_group_check_bandwidth
      Src: /src/gpac/src/filters/dmx_dash.c:2970,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/dmx_dash.c:2972,1
    - Dst: gf_filter_get_info
      Src: /src/gpac/src/filters/dmx_dash.c:2977,1
    - Dst: gf_filter_get_info
      Src: /src/gpac/src/filters/dmx_dash.c:2980,1
    - Dst: gf_filter_get_info_str
      Src: /src/gpac/src/filters/dmx_dash.c:2983,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:2984,1
    - Dst: gf_dash_group_store_stats
      Src: /src/gpac/src/filters/dmx_dash.c:2992,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/dmx_dash.c:2992,1
    - Dst: gf_filter_get_info
      Src: /src/gpac/src/filters/dmx_dash.c:2994,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/dmx_dash.c:2998,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 47
    argCount: 2
    argNames:
    - ctx
    - group
    argTypes:
    - GF_DASHDmxCtx*
    - GF_DASHGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2999
      start: 2934
    functionDepth: 10
    functionLinenumber: 2934
    functionLinenumberEnd: 2999
    functionName: dashdmx_update_group_stats
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_filter_release_property
    - gf_filter_get_info
    - gf_filter_get_info_str
    - strcmp
    - gf_dash_group_store_stats
    - gf_sys_clock_high_res
    - gf_sys_clock
    - gf_dash_group_check_bandwidth
    linkageType: ''
    returnType: void
    signature: void dashdmx_update_group_stats(GF_DASHDmxCtx *ctx, GF_DASHGroup *group)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_is_smooth_streaming
      Src: /src/gpac/src/filters/dmx_dash.c:3014,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_dash.c:3021,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3025,1
    - Dst: gf_dash_group_discard_segment
      Src: /src/gpac/src/filters/dmx_dash.c:3027,1
    - Dst: dashdmx_opid_from_group
      Src: /src/gpac/src/filters/dmx_dash.c:3032,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:3034,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:3036,1
    - Dst: gf_dash_process
      Src: /src/gpac/src/filters/dmx_dash.c:3045,1
    - Dst: gf_dash_get_period_switch_status
      Src: /src/gpac/src/filters/dmx_dash.c:3050,1
    - Dst: gf_dash_in_last_period
      Src: /src/gpac/src/filters/dmx_dash.c:3050,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:3061,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:3062,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3063,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_dash.c:3065,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3068,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3072,1
    - Dst: dashdmx_update_group_stats
      Src: /src/gpac/src/filters/dmx_dash.c:3082,1
    - Dst: dashdmx_update_group_stats
      Src: /src/gpac/src/filters/dmx_dash.c:3085,1
    - Dst: gf_dash_group_get_next_segment_location
      Src: /src/gpac/src/filters/dmx_dash.c:3091,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3110,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/dmx_dash.c:3111,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3114,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_dash.c:3114,1
    - Dst: dashdmx_notify_group_quality
      Src: /src/gpac/src/filters/dmx_dash.c:3132,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_dash.c:3135,1
    - Dst: gf_cryptfin_set_kms
      Src: /src/gpac/src/filters/dmx_dash.c:3143,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:3146,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:3153,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_dash.c:3154,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3159,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/filters/dmx_dash.c:3164,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:3165,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3168,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/dmx_dash.c:3175,1
    - Dst: gf_dash_group_store_stats
      Src: /src/gpac/src/filters/dmx_dash.c:3184,1
    - Dst: gf_cryptfin_set_kms
      Src: /src/gpac/src/filters/dmx_dash.c:3192,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:3197,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:3198,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_dash.c:3202,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/filters/dmx_dash.c:3205,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:3208,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:3213,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 159
    argCount: 2
    argNames:
    - ctx
    - group
    argTypes:
    - GF_DASHDmxCtx*
    - GF_DASHGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3214
      start: 3001
    functionDepth: 16
    functionLinenumber: 3001
    functionLinenumberEnd: 3214
    functionName: dashdmx_switch_segment
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_dash_in_last_period
    - gf_filter_send_event
    - gf_cryptfin_set_kms
    - dashdmx_update_group_stats
    - gf_assert
    - gf_strdup
    - gf_dash_process
    - GF_FEVT_INIT
    - gf_filter_ask_rt_reschedule
    - gf_net_get_ntp_ts
    - GF_LOG
    - gf_filter_pid_would_block
    - dashdmx_opid_from_group
    - gf_error_to_string
    - gf_filter_pid_send_event
    - gf_sys_clock_high_res
    - gf_dash_group_discard_segment
    - dashdmx_notify_group_quality
    - gf_filter_get_opid_count
    - gf_dash_is_smooth_streaming
    - gf_dash_group_get_next_segment_location
    - gf_filter_get_opid
    - gf_dash_group_store_stats
    - strcmp
    - gf_filter_pid_get_udta
    - gf_dash_get_period_switch_status
    linkageType: ''
    returnType: void
    signature: void dashdmx_switch_segment(GF_DASHDmxCtx *ctx, GF_DASHGroup *group)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/dmx_dash.c:3221,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dmx_dash.c:3223,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dmx_dash.c:3224,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:3225,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:3226,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:3228,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:3229,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_dash.c:3230,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3232,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DASHDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3235
      start: 3216
    functionDepth: 1
    functionLinenumber: 3216
    functionLinenumberEnd: 3235
    functionName: dashin_abort
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 1
    functionsReached:
    - gf_filter_get_ipid_count
    - gf_filter_pid_set_discard
    - gf_filter_get_opid_count
    - GF_LOG
    - GF_FEVT_INIT
    - gf_filter_pid_set_eos
    - gf_filter_get_opid
    - gf_filter_get_ipid
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dashin_abort(GF_DASHDmxCtx *ctx)
  - BBCount: 65
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3244,1
    - Dst: dashdmx_configure_pid
      Src: /src/gpac/src/filters/dmx_dash.c:3253,1
    - Dst: gf_dash_get_group_count
      Src: /src/gpac/src/filters/dmx_dash.c:3258,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3260,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_dash.c:3275,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:3277,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:3279,1
    - Dst: dashdmx_process_event
      Src: /src/gpac/src/filters/dmx_dash.c:3281,1
    - Dst: dashdmx_process_event
      Src: /src/gpac/src/filters/dmx_dash.c:3285,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_dash.c:3293,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_dash.c:3295,1
    - Dst: gf_dash_process
      Src: /src/gpac/src/filters/dmx_dash.c:3297,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/dmx_dash.c:3299,1
    - Dst: gf_filter_prevent_blocking
      Src: /src/gpac/src/filters/dmx_dash.c:3303,1
    - Dst: dashin_abort
      Src: /src/gpac/src/filters/dmx_dash.c:3307,1
    - Dst: gf_dash_get_min_wait_ms
      Src: /src/gpac/src/filters/dmx_dash.c:3312,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/dmx_dash.c:3316,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dmx_dash.c:3323,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3327,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3328,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_dash.c:3336,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_dash.c:3341,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_dash.c:3351,1
    - Dst: gf_filter_pid_is_playing
      Src: /src/gpac/src/filters/dmx_dash.c:3351,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dmx_dash.c:3359,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3360,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3363,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_dash.c:3366,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3371,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3377,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dmx_dash.c:3381,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3382,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3385,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_dash.c:3388,1
    - Dst: gf_filter_pid_clear_eos
      Src: /src/gpac/src/filters/dmx_dash.c:3389,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3390,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/filters/dmx_dash.c:3393,1
    - Dst: gf_dash_group_push_tfrf
      Src: /src/gpac/src/filters/dmx_dash.c:3395,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/filters/dmx_dash.c:3395,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/dmx_dash.c:3397,1
    - Dst: gf_filter_pid_get_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:3399,1
    - Dst: gf_filter_pid_set_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:3400,1
    - Dst: dashdmx_update_group_stats
      Src: /src/gpac/src/filters/dmx_dash.c:3402,1
    - Dst: dashdmx_switch_segment
      Src: /src/gpac/src/filters/dmx_dash.c:3405,1
    - Dst: gf_filter_prevent_blocking
      Src: /src/gpac/src/filters/dmx_dash.c:3407,1
    - Dst: dashdmx_update_group_stats
      Src: /src/gpac/src/filters/dmx_dash.c:3415,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dmx_dash.c:3422,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3423,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3426,1
    - Dst: gf_filter_pid_clear_eos
      Src: /src/gpac/src/filters/dmx_dash.c:3429,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3430,1
    - Dst: gf_filter_pid_get_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:3432,1
    - Dst: gf_filter_pid_set_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:3433,1
    - Dst: dashdmx_switch_segment
      Src: /src/gpac/src/filters/dmx_dash.c:3435,1
    - Dst: gf_filter_prevent_blocking
      Src: /src/gpac/src/filters/dmx_dash.c:3436,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/filters/dmx_dash.c:3444,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dmx_dash.c:3445,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dmx_dash.c:3447,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dmx_dash.c:3450,1
    - Dst: dashdmx_forward_packet
      Src: /src/gpac/src/filters/dmx_dash.c:3456,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/dmx_dash.c:3465,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/dmx_dash.c:3471,1
    - Dst: gf_filter_get_num_events_queued
      Src: /src/gpac/src/filters/dmx_dash.c:3477,1
    - Dst: gf_dash_in_last_period
      Src: /src/gpac/src/filters/dmx_dash.c:3483,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dmx_dash.c:3489,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3493,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3494,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dmx_dash.c:3504,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3508,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3509,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_dash.c:3521,1
    - Dst: gf_dash_get_group_done
      Src: /src/gpac/src/filters/dmx_dash.c:3521,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_dash.c:3522,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:3532,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:3533,1
    - Dst: gf_dash_get_period_switch_status
      Src: /src/gpac/src/filters/dmx_dash.c:3537,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3539,1
    - Dst: gf_dash_request_period_switch
      Src: /src/gpac/src/filters/dmx_dash.c:3545,1
    - Dst: gf_dash_is_in_setup
      Src: /src/gpac/src/filters/dmx_dash.c:3550,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dmx_dash.c:3551,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/dmx_dash.c:3553,1
    CyclomaticComplexity: 116
    EdgeCount: 116
    ICount: 237
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3556
      start: 3237
    functionDepth: 17
    functionLinenumber: 3237
    functionLinenumberEnd: 3556
    functionName: dashdmx_process
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dash_in_last_period
    - gf_dash_get_group_udta
    - memset
    - gf_filter_get_ipid
    - dashin_abort
    - gf_filter_pid_get_packet
    - gf_dash_get_group_count
    - gf_dash_group_push_tfrf
    - dashdmx_update_group_stats
    - gf_filter_post_process_task
    - gf_dash_get_group_done
    - gf_filter_pid_set_udta_flags
    - gf_dash_process
    - GF_FEVT_INIT
    - gf_filter_release_property
    - gf_filter_pck_get_cts
    - gf_filter_ask_rt_reschedule
    - gf_filter_get_num_events_queued
    - dashdmx_configure_pid
    - gf_dash_is_in_setup
    - gf_filter_pid_get_timescale
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - GF_LOG
    - gf_filter_pid_would_block
    - gf_filter_pid_set_eos
    - dashdmx_forward_packet
    - gf_dash_request_period_switch
    - gf_filter_pid_is_playing
    - gf_filter_get_ipid_count
    - gf_filter_pid_is_eos
    - gf_filter_pid_send_event
    - gf_filter_pid_clear_eos
    - gf_timestamp_rescale
    - gf_dash_get_min_wait_ms
    - dashdmx_switch_segment
    - gf_filter_get_opid_count
    - gf_filter_pid_get_info_str
    - gf_filter_pid_get_udta_flags
    - gf_filter_prevent_blocking
    - gf_filter_get_opid
    - gf_filter_pid_get_udta
    - gf_dash_get_period_switch_status
    - dashdmx_process_event
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dashdmx_process(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:3564,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:3565,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:3566,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:3567,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:3568,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3589
      start: 3558
    functionDepth: 0
    functionLinenumber: 3558
    functionLinenumberEnd: 3589
    functionName: dashdmx_probe_data
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - strstr
    linkageType: ''
    returnType: char
    signature: char *dashdmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3592
      start: 3591
    functionDepth: 0
    functionLinenumber: 3591
    functionLinenumberEnd: 3592
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3800
      start: 3793
    functionDepth: 0
    functionLinenumber: 3793
    functionLinenumberEnd: 3800
    functionName: dashin_register
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *dashin_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_DASHDmxCtx*::on_rate_adaptation
      Src: /src/gpac/src/filters/dmx_dash.c:3807,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - udta
    - group_idx
    - base_group_idx
    - force_lower_complexity
    - stats
    argTypes:
    - void*
    - u32
    - u32
    - Bool
    - GF_DASHCustomAlgoInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3808
      start: 3804
    functionDepth: 0
    functionLinenumber: 3804
    functionLinenumberEnd: 3808
    functionName: dashdmx_rate_adaptation_ext
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - GF_DASHDmxCtx*::on_rate_adaptation
    linkageType: ''
    returnType: s32
    signature: s32 dashdmx_rate_adaptation_ext(void *udta, u32 group_idx, u32 base_group_idx,
      Bool force_lower_complexity, GF_DASHCustomAlgoInfo *stats)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_dash.c:3825,1
    - Dst: GF_DASHDmxCtx*::on_download_monitor
      Src: /src/gpac/src/filters/dmx_dash.c:3832,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 8
    argNames:
    - udta
    - group_idx
    - bits_per_sec
    - total_bytes
    - bytes_done
    - us_since_start
    - buffer_dur_ms
    - current_seg_dur
    argTypes:
    - void*
    - u32
    - u32
    - u64
    - u64
    - u64
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3833
      start: 3821
    functionDepth: 0
    functionLinenumber: 3821
    functionLinenumberEnd: 3833
    functionName: dashdmx_download_monitor_ext
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - memset
    - GF_DASHDmxCtx*::on_download_monitor
    linkageType: ''
    returnType: s32
    signature: s32 dashdmx_download_monitor_ext(void *udta, u32 group_idx, u32 bits_per_sec,
      u64 total_bytes, u64 bytes_done, u64 us_since_start, u32 buffer_dur_ms, u32
      current_seg_dur)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_is_instance_of
      Src: /src/gpac/src/filters/dmx_dash.c:3846,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3848,1
    - Dst: gf_dash_set_algo_custom
      Src: /src/gpac/src/filters/dmx_dash.c:3857,1
    - Dst: gf_dash_set_algo
      Src: /src/gpac/src/filters/dmx_dash.c:3865,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 2
    argNames:
    - filter
    - udta
    argTypes:
    - GF_Filter*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3871
      start: 3837
    functionDepth: 1
    functionLinenumber: 3837
    functionLinenumberEnd: 3871
    functionName: gf_filter_bind_dash_algo_callbacks
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 1
    functionsReached:
    - gf_dash_set_algo
    - gf_filter_is_instance_of
    - gf_dash_set_algo_custom
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_EXPORT
    signature: "GF_EXPORT gf_filter_bind_dash_algo_callbacks(GF_Filter *filter, void
      *udta,\n\t\tvoid (*period_reset)(void *udta, u32 type),\n\t\tvoid (*new_group)(void
      *udta, u32 group_idx, void *dash),\n\t\ts32 (*rate_adaptation)(void *udta, u32
      group_idx, u32 base_group_idx, Bool force_low_complex, void *stats),\n\t\ts32
      (*download_monitor)(void *udta, u32 group_idx, void *stats)\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_command_apply_list
      Src: /src/gpac/src/filters/load_bt_xmt.c:80,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/filters/load_bt_xmt.c:80,1
    - Dst: gf_scene_get_time
      Src: /src/gpac/src/filters/load_bt_xmt.c:80,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_bt_xmt.c:83,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_bt_xmt.c:84,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:85,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/load_bt_xmt.c:86,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:88,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - c
    - scene
    argTypes:
    - M_Conditional*
    - GF_Scene*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 75
    functionDepth: 17
    functionLinenumber: 75
    functionLinenumberEnd: 92
    functionName: CTXLoad_ExecuteConditional
    functionSourceFile: /src/gpac/src/filters/load_bt_xmt.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_sg_command_apply_list
    - gf_list_count
    - gf_node_get_graph
    - gf_sg_command_del
    - gf_list_del
    - gf_scene_get_time
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void CTXLoad_ExecuteConditional(M_Conditional *c, GF_Scene *scene)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/filters/load_bt_xmt.c:96,1
    - Dst: CTXLoad_ExecuteConditional
      Src: /src/gpac/src/filters/load_bt_xmt.c:99,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 94
    functionDepth: 18
    functionLinenumber: 94
    functionLinenumberEnd: 100
    functionName: CTXLoad_OnActivate
    functionSourceFile: /src/gpac/src/filters/load_bt_xmt.c
    functionUses: 0
    functionsReached:
    - CTXLoad_ExecuteConditional
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void CTXLoad_OnActivate(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/filters/load_bt_xmt.c:104,1
    - Dst: CTXLoad_ExecuteConditional
      Src: /src/gpac/src/filters/load_bt_xmt.c:108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 102
    functionDepth: 18
    functionLinenumber: 102
    functionLinenumberEnd: 109
    functionName: CTXLoad_OnReverseActivate
    functionSourceFile: /src/gpac/src/filters/load_bt_xmt.c
    functionUses: 0
    functionsReached:
    - CTXLoad_ExecuteConditional
    - gf_node_get_private
    linkageType: ''
    returnType: void
    signature: void CTXLoad_OnReverseActivate(GF_Node *node, GF_Route *route)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/filters/load_bt_xmt.c:113,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/filters/load_bt_xmt.c:117,1
    - Dst: gf_scene_node_callback
      Src: /src/gpac/src/filters/load_bt_xmt.c:119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - cbk
    - type
    - node
    - param
    argTypes:
    - void*
    - GF_SGNodeCbkType
    - GF_Node*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 111
    functionDepth: 28
    functionLinenumber: 111
    functionLinenumberEnd: 121
    functionName: CTXLoad_NodeCallback
    functionSourceFile: /src/gpac/src/filters/load_bt_xmt.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_node_set_private
    - gf_scene_node_callback
    linkageType: ''
    returnType: void
    signature: void CTXLoad_NodeCallback(void *cbk, GF_SGNodeCbkType type, GF_Node
      *node, void *param)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_sm_new
      Src: /src/gpac/src/filters/load_bt_xmt.c:128,1
    - Dst: memset
      Src: /src/gpac/src/filters/load_bt_xmt.c:129,1
    - Dst: gf_get_default_cache_directory
      Src: /src/gpac/src/filters/load_bt_xmt.c:136,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/load_bt_xmt.c:141,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_bt_xmt.c:143,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:145,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:146,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:147,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:148,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:149,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:150,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:151,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:152,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 2
    argNames:
    - filter
    - priv
    argTypes:
    - GF_Filter*
    - CTXLoadPriv*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 123
    functionDepth: 3
    functionLinenumber: 123
    functionLinenumberEnd: 156
    functionName: CTXLoad_Setup
    functionSourceFile: /src/gpac/src/filters/load_bt_xmt.c
    functionUses: 0
    functionsReached:
    - gf_get_default_cache_directory
    - gf_list_new
    - gf_filter_pid_get_property
    - memset
    - strcmp
    - gf_sm_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err CTXLoad_Setup(GF_Filter *filter, CTXLoadPriv *priv)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/load_bt_xmt.c:160,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/load_bt_xmt.c:166,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/load_bt_xmt.c:172,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_bt_xmt.c:176,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/load_bt_xmt.c:179,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/load_bt_xmt.c:189,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/load_bt_xmt.c:193,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:201,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/load_bt_xmt.c:211,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/load_bt_xmt.c:213,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_bt_xmt.c:214,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_bt_xmt.c:214,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_bt_xmt.c:215,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_bt_xmt.c:215,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_bt_xmt.c:216,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/load_bt_xmt.c:216,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/load_bt_xmt.c:218,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_bt_xmt.c:223,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/load_bt_xmt.c:231,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/load_bt_xmt.c:234,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/load_bt_xmt.c:237,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/load_bt_xmt.c:240,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/load_bt_xmt.c:243,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/load_bt_xmt.c:246,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/load_bt_xmt.c:249,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/load_bt_xmt.c:252,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 77
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 259
    functionName: ctxload_configure_pid
    functionSourceFile: /src/gpac/src/filters/load_bt_xmt.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_udta
    - PROP_BOOL
    - gf_filter_set_name
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - GF_FEVT_INIT
    - gf_filter_pid_check_caps
    - strcmp
    - gf_filter_pid_send_event
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ctxload_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/load_bt_xmt.c:264,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/src/filters/load_bt_xmt.c:275,1
    - Dst: gf_sm_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:276,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/load_bt_xmt.c:285,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/load_bt_xmt.c:287,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/load_bt_xmt.c:288,1
    - Dst: gf_sg_set_node_callback
      Src: /src/gpac/src/filters/load_bt_xmt.c:294,1
    - Dst: CTXLoad_Setup
      Src: /src/gpac/src/filters/load_bt_xmt.c:298,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 33
    argCount: 2
    argNames:
    - filter
    - com
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 261
    functionDepth: 13
    functionLinenumber: 261
    functionLinenumberEnd: 306
    functionName: ctxload_process_event
    functionSourceFile: /src/gpac/src/filters/load_bt_xmt.c
    functionUses: 0
    functionsReached:
    - gf_sg_set_node_callback
    - CTXLoad_Setup
    - gf_filter_get_ipid
    - gf_sm_del
    - gf_sm_load_done
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool ctxload_process_event(GF_Filter *filter, const GF_FilterEvent
      *com)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_bt_xmt.c:313,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_bt_xmt.c:317,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - od
    - ESID
    argTypes:
    - GF_ObjectDescriptor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 308
    functionDepth: 1
    functionLinenumber: 308
    functionLinenumberEnd: 321
    functionName: CTXLoad_StreamInRootOD
    functionSourceFile: /src/gpac/src/filters/load_bt_xmt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: Bool
    signature: Bool CTXLoad_StreamInRootOD(GF_ObjectDescriptor *od, u32 ESID)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_utc_time_since_1970
      Src: /src/gpac/src/filters/load_bt_xmt.c:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - cbk
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 324
    functionDepth: 0
    functionLinenumber: 324
    functionLinenumberEnd: 333
    functionName: CTXLoad_GetVRMLTime
    functionSourceFile: /src/gpac/src/filters/load_bt_xmt.c
    functionUses: 0
    functionsReached:
    - gf_utc_time_since_1970
    linkageType: ''
    returnType: Double
    signature: Double CTXLoad_GetVRMLTime(void *cbk)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_bt_xmt.c:342,1
    - Dst: CTXLoad_StreamInRootOD
      Src: /src/gpac/src/filters/load_bt_xmt.c:345,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_bt_xmt.c:349,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_bt_xmt.c:351,1
    - Dst: gf_scene_set_duration
      Src: /src/gpac/src/filters/load_bt_xmt.c:358,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_bt_xmt.c:361,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/load_bt_xmt.c:361,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/load_bt_xmt.c:364,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 28
    argCount: 1
    argNames:
    - priv
    argTypes:
    - CTXLoadPriv*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 335
    functionDepth: 6
    functionLinenumber: 335
    functionLinenumberEnd: 366
    functionName: CTXLoad_CheckStreams
    functionSourceFile: /src/gpac/src/filters/load_bt_xmt.c
    functionUses: 0
    functionsReached:
    - PROP_STRING
    - gf_filter_pid_set_eos
    - gf_list_count
    - gf_scene_set_duration
    - gf_list_enum
    - gf_filter_pid_set_property
    - CTXLoad_StreamInRootOD
    linkageType: ''
    returnType: void
    signature: void CTXLoad_CheckStreams(CTXLoadPriv *priv )
  - BBCount: 87
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/load_bt_xmt.c:379,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/load_bt_xmt.c:384,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/load_bt_xmt.c:392,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/load_bt_xmt.c:396,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/load_bt_xmt.c:398,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/load_bt_xmt.c:399,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_bt_xmt.c:401,1
    - Dst: gf_fileio_from_mem
      Src: /src/gpac/src/filters/load_bt_xmt.c:402,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/filters/load_bt_xmt.c:403,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/load_bt_xmt.c:405,1
    - Dst: ctxload_configure_pid
      Src: /src/gpac/src/filters/load_bt_xmt.c:406,1
    - Dst: CTXLoad_Setup
      Src: /src/gpac/src/filters/load_bt_xmt.c:416,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/load_bt_xmt.c:421,1
    - Dst: gf_odm_check_buffering
      Src: /src/gpac/src/filters/load_bt_xmt.c:431,1
    - Dst: gf_clock_set_time
      Src: /src/gpac/src/filters/load_bt_xmt.c:432,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/load_bt_xmt.c:433,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/load_bt_xmt.c:434,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/load_bt_xmt.c:441,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/src/filters/load_bt_xmt.c:443,1
    - Dst: CTXLoad_Setup
      Src: /src/gpac/src/filters/load_bt_xmt.c:446,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_bt_xmt.c:449,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/load_bt_xmt.c:463,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/load_bt_xmt.c:469,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/load_bt_xmt.c:470,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/load_bt_xmt.c:473,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/load_bt_xmt.c:480,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/src/filters/load_bt_xmt.c:483,1
    - Dst: gf_sm_load_string
      Src: /src/gpac/src/filters/load_bt_xmt.c:489,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/load_bt_xmt.c:492,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/filters/load_bt_xmt.c:496,1
    - Dst: gf_scene_attach_to_compositor
      Src: /src/gpac/src/filters/load_bt_xmt.c:497,1
    - Dst: CTXLoad_CheckStreams
      Src: /src/gpac/src/filters/load_bt_xmt.c:499,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/src/filters/load_bt_xmt.c:508,1
    - Dst: CTXLoad_CheckStreams
      Src: /src/gpac/src/filters/load_bt_xmt.c:510,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/filters/load_bt_xmt.c:511,1
    - Dst: gf_sg_set_scene_time_callback
      Src: /src/gpac/src/filters/load_bt_xmt.c:515,1
    - Dst: gf_sm_load_run
      Src: /src/gpac/src/filters/load_bt_xmt.c:522,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/src/filters/load_bt_xmt.c:523,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/filters/load_bt_xmt.c:525,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/src/filters/load_bt_xmt.c:529,1
    - Dst: gf_sm_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:530,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_bt_xmt.c:533,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/load_bt_xmt.c:533,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/load_bt_xmt.c:535,1
    - Dst: CTXLoad_CheckStreams
      Src: /src/gpac/src/filters/load_bt_xmt.c:541,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_bt_xmt.c:542,1
    - Dst: gf_scene_attach_to_compositor
      Src: /src/gpac/src/filters/load_bt_xmt.c:543,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_bt_xmt.c:551,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/filters/load_bt_xmt.c:553,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_bt_xmt.c:575,1
    - Dst: gf_timestamp_to_clocktime
      Src: /src/gpac/src/filters/load_bt_xmt.c:576,1
    - Dst: gf_clock_diff
      Src: /src/gpac/src/filters/load_bt_xmt.c:578,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_bt_xmt.c:585,1
    - Dst: gf_timestamp_to_clocktime
      Src: /src/gpac/src/filters/load_bt_xmt.c:586,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_bt_xmt.c:591,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_bt_xmt.c:592,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/load_bt_xmt.c:593,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:594,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/load_bt_xmt.c:597,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:598,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_bt_xmt.c:599,1
    - Dst: gf_clock_diff
      Src: /src/gpac/src/filters/load_bt_xmt.c:604,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/load_bt_xmt.c:611,1
    - Dst: gf_sc_sys_frame_pending
      Src: /src/gpac/src/filters/load_bt_xmt.c:612,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_bt_xmt.c:615,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_bt_xmt.c:621,1
    - Dst: gf_sg_command_apply
      Src: /src/gpac/src/filters/load_bt_xmt.c:622,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/load_bt_xmt.c:627,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:628,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_bt_xmt.c:634,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_bt_xmt.c:636,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/load_bt_xmt.c:637,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_bt_xmt.c:642,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_bt_xmt.c:646,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/load_bt_xmt.c:647,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_bt_xmt.c:649,1
    - Dst: ODS_SetupOD
      Src: /src/gpac/src/filters/load_bt_xmt.c:658,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:665,1
    - Dst: CTXLoad_StreamInRootOD
      Src: /src/gpac/src/filters/load_bt_xmt.c:669,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:673,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_bt_xmt.c:678,1
    - Dst: ODS_SetupOD
      Src: /src/gpac/src/filters/load_bt_xmt.c:690,1
    - Dst: gf_odf_encode_ui_config
      Src: /src/gpac/src/filters/load_bt_xmt.c:693,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:694,1
    - Dst: ODS_SetupOD
      Src: /src/gpac/src/filters/load_bt_xmt.c:695,1
    - Dst: ODS_SetupOD
      Src: /src/gpac/src/filters/load_bt_xmt.c:697,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:699,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/load_bt_xmt.c:704,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_bt_xmt.c:706,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_bt_xmt.c:709,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:715,1
    - Dst: gf_sm_import_bifs_subtitle
      Src: /src/gpac/src/filters/load_bt_xmt.c:718,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:721,1
    - Dst: ODS_SetupOD
      Src: /src/gpac/src/filters/load_bt_xmt.c:727,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:728,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/load_bt_xmt.c:735,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/load_bt_xmt.c:738,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/load_bt_xmt.c:741,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/load_bt_xmt.c:744,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:744,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:744,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/load_bt_xmt.c:745,1
    - Dst: strcat
      Src: /src/gpac/src/filters/load_bt_xmt.c:746,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/load_bt_xmt.c:749,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/load_bt_xmt.c:749,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:753,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/filters/load_bt_xmt.c:754,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:755,1
    - Dst: ODS_SetupOD
      Src: /src/gpac/src/filters/load_bt_xmt.c:760,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:761,1
    - Dst: gf_scene_find_odm
      Src: /src/gpac/src/filters/load_bt_xmt.c:770,1
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/filters/load_bt_xmt.c:771,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/load_bt_xmt.c:779,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:782,1
    - Dst: gf_scene_attach_to_compositor
      Src: /src/gpac/src/filters/load_bt_xmt.c:791,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_bt_xmt.c:795,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/load_bt_xmt.c:797,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:798,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_bt_xmt.c:799,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/load_bt_xmt.c:806,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/load_bt_xmt.c:809,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/load_bt_xmt.c:811,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/load_bt_xmt.c:821,1
    CyclomaticComplexity: 128
    EdgeCount: 128
    ICount: 358
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 823
      start: 368
    functionDepth: 16
    functionLinenumber: 368
    functionLinenumberEnd: 823
    functionName: ctxload_process
    functionSourceFile: /src/gpac/src/filters/load_bt_xmt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fileio_url
    - gf_odf_desc_del
    - strcpy
    - gf_sm_load_init
    - gf_sg_set_scene_time_callback
    - gf_list_count
    - gf_fopen
    - gf_scene_find_odm
    - CTXLoad_CheckStreams
    - gf_sm_load_run
    - gf_sm_import_bifs_subtitle
    - ctxload_configure_pid
    - gf_filter_pid_get_packet
    - gf_sys_clock
    - gf_scene_attach_to_compositor
    - gf_sg_set_scene_size_info
    - gf_clock_diff
    - gf_list_get
    - ODS_SetupOD
    - strcat
    - gf_filter_pck_get_framing
    - gf_fseek
    - gf_strdup
    - gf_odm_check_buffering
    - gf_odf_com_del
    - CTXLoad_Setup
    - gf_odf_desc_new
    - gf_list_add
    - gf_filter_ask_rt_reschedule
    - gf_filter_get_udta
    - gf_sm_load_string
    - gf_list_insert
    - gf_filter_pck_ref
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - gf_fread
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_sm_del
    - gf_sm_load_done
    - gf_error_to_string
    - gf_clock_time
    - gf_list_enum
    - gf_fileio_from_mem
    - gf_timestamp_rescale
    - gf_list_del
    - gf_sc_sys_frame_pending
    - CTXLoad_StreamInRootOD
    - gf_fclose
    - gf_odf_encode_ui_config
    - gf_malloc
    - strlen
    - gf_filter_pid_get_property
    - gf_timestamp_to_clocktime
    - gf_odm_disconnect
    - gf_url_concatenate
    - gf_filter_pck_unref
    - gf_clock_set_time
    - gf_sg_command_del
    - gf_sg_command_apply
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ctxload_process(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/load_bt_xmt.c:828,1
    - Dst: gf_sm_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:830,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:831,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/load_bt_xmt.c:834,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/load_bt_xmt.c:835,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 837
      start: 826
    functionDepth: 13
    functionLinenumber: 826
    functionLinenumberEnd: 837
    functionName: ctxload_finalize
    functionSourceFile: /src/gpac/src/filters/load_bt_xmt.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_filter_pck_unref
    - gf_sm_del
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ctxload_finalize(GF_Filter *filter)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_utf_get_string_from_bom
      Src: /src/gpac/src/filters/load_bt_xmt.c:854,1
    - Dst: strchr
      Src: /src/gpac/src/filters/load_bt_xmt.c:859,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:867,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:871,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:874,1
    - Dst: gf_strmemstr
      Src: /src/gpac/src/filters/load_bt_xmt.c:879,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:881,1
    - Dst: strchr
      Src: /src/gpac/src/filters/load_bt_xmt.c:884,1
    - Dst: gf_strmemstr
      Src: /src/gpac/src/filters/load_bt_xmt.c:892,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:894,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:894,1
    - Dst: gf_strmemstr
      Src: /src/gpac/src/filters/load_bt_xmt.c:895,1
    - Dst: gf_strmemstr
      Src: /src/gpac/src/filters/load_bt_xmt.c:898,1
    - Dst: gf_strmemstr
      Src: /src/gpac/src/filters/load_bt_xmt.c:899,1
    - Dst: gf_strmemstr
      Src: /src/gpac/src/filters/load_bt_xmt.c:902,1
    - Dst: gf_strmemstr
      Src: /src/gpac/src/filters/load_bt_xmt.c:903,1
    - Dst: gf_strmemstr
      Src: /src/gpac/src/filters/load_bt_xmt.c:904,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:907,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:907,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:909,1
    - Dst: gf_strmemstr
      Src: /src/gpac/src/filters/load_bt_xmt.c:909,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:911,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:911,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:913,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:913,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:915,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:915,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:917,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:917,1
    - Dst: strchr
      Src: /src/gpac/src/filters/load_bt_xmt.c:925,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:932,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:932,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:936,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:936,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:943,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:943,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:944,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:944,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:945,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:945,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:946,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:946,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:947,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:947,1
    - Dst: gf_strmemstr
      Src: /src/gpac/src/filters/load_bt_xmt.c:952,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:958,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:958,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:959,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:959,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:960,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:960,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:961,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:961,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:962,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:962,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:963,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:963,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_bt_xmt.c:964,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_bt_xmt.c:964,1
    - Dst: gf_strmemstr
      Src: /src/gpac/src/filters/load_bt_xmt.c:966,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_bt_xmt.c:973,1
    CyclomaticComplexity: 61
    EdgeCount: 61
    ICount: 107
    argCount: 3
    argNames:
    - probe_data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 981
      start: 840
    functionDepth: 3
    functionLinenumber: 840
    functionLinenumberEnd: 981
    functionName: ctxload_probe_data
    functionSourceFile: /src/gpac/src/filters/load_bt_xmt.c
    functionUses: 0
    functionsReached:
    - gf_utf_get_string_from_bom
    - gf_free
    - strncmp
    - gf_strmemstr
    - strchr
    - strlen
    linkageType: ''
    returnType: char
    signature: char *ctxload_probe_data(const u8 *probe_data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 994
      start: 993
    functionDepth: 0
    functionLinenumber: 993
    functionLinenumberEnd: 994
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/load_bt_xmt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1029
      start: 1022
    functionDepth: 0
    functionLinenumber: 1022
    functionLinenumberEnd: 1029
    functionName: btplay_register
    functionSourceFile: /src/gpac/src/filters/load_bt_xmt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *btplay_register(GF_FilterSession *session)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 4
    argNames:
    - frame
    - plane_idx
    - outPlane
    - outStride
    argTypes:
    - GF_FilterFrameInterface*
    - u32
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 81
    functionName: vcrop_frame_get_plane
    functionSourceFile: /src/gpac/src/filters/vcrop.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vcrop_frame_get_plane(GF_FilterFrameInterface *frame, u32 plane_idx,
      const u8 **outPlane, u32 *outStride)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/vcrop.c:86,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/vcrop.c:89,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/vcrop.c:90,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/vcrop.c:92,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - filter
    - pid
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 93
    functionName: vcrop_packet_destruct
    functionSourceFile: /src/gpac/src/filters/vcrop.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_frame_interface
    - gf_assert
    - gf_list_add
    - gf_filter_pck_unref
    linkageType: ''
    returnType: void
    signature: void vcrop_packet_destruct(GF_Filter *filter, GF_FilterPid *pid, GF_FilterPacket
      *pck)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/vcrop.c:109,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/vcrop.c:110,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/vcrop.c:113,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/vcrop.c:114,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/vcrop.c:121,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/vcrop.c:122,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/vcrop.c:125,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/vcrop.c:126,1
    - Dst: memset
      Src: /src/gpac/src/filters/vcrop.c:128,1
    - Dst: memset
      Src: /src/gpac/src/filters/vcrop.c:129,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/vcrop.c:147,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/vcrop.c:151,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/vcrop.c:152,1
    - Dst: gf_pixel_get_bytes_per_pixel
      Src: /src/gpac/src/filters/vcrop.c:156,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/vcrop.c:185,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/vcrop.c:187,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/vcrop.c:191,1
    - Dst: gf_filter_pck_new_frame_interface
      Src: /src/gpac/src/filters/vcrop.c:214,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/vcrop.c:219,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/vcrop.c:220,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/vcrop.c:221,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/vcrop.c:223,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/vcrop.c:228,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/vcrop.c:231,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/vcrop.c:244,1
    - Dst: memset
      Src: /src/gpac/src/filters/vcrop.c:249,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/vcrop.c:257,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/vcrop.c:266,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/vcrop.c:279,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/vcrop.c:290,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/vcrop.c:305,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/vcrop.c:313,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/vcrop.c:319,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/vcrop.c:320,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 190
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 96
    functionDepth: 5
    functionLinenumber: 96
    functionLinenumberEnd: 322
    functionName: vcrop_process
    functionSourceFile: /src/gpac/src/filters/vcrop.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - memset
    - gf_filter_pck_get_frame_interface
    - gf_filter_pid_get_packet
    - gf_list_pop_back
    - gf_filter_pck_forward
    - memcpy
    - gf_filter_pck_new_frame_interface
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - gf_filter_pck_ref
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_filter_pid_is_eos
    - gf_filter_pck_merge_properties
    - GF_FilterFrameInterface*::get_plane
    - gf_pixel_get_bytes_per_pixel
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vcrop_process(GF_Filter *filter)
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/vcrop.c:332,1
    - Dst: memset
      Src: /src/gpac/src/filters/vcrop.c:333,1
    - Dst: memset
      Src: /src/gpac/src/filters/vcrop.c:334,1
    - Dst: strchr
      Src: /src/gpac/src/filters/vcrop.c:338,1
    - Dst: strchr
      Src: /src/gpac/src/filters/vcrop.c:341,1
    - Dst: atoi
      Src: /src/gpac/src/filters/vcrop.c:344,1
    - Dst: strchr
      Src: /src/gpac/src/filters/vcrop.c:348,1
    - Dst: atoi
      Src: /src/gpac/src/filters/vcrop.c:351,1
    - Dst: strchr
      Src: /src/gpac/src/filters/vcrop.c:354,1
    - Dst: atoi
      Src: /src/gpac/src/filters/vcrop.c:357,1
    - Dst: atoi
      Src: /src/gpac/src/filters/vcrop.c:363,1
    - Dst: GET_DIM
      Src: /src/gpac/src/filters/vcrop.c:383,1
    - Dst: GET_DIM
      Src: /src/gpac/src/filters/vcrop.c:384,1
    - Dst: GET_DIM
      Src: /src/gpac/src/filters/vcrop.c:386,1
    - Dst: GET_DIM
      Src: /src/gpac/src/filters/vcrop.c:387,1
    - Dst: GET_DIM
      Src: /src/gpac/src/filters/vcrop.c:388,1
    - Dst: GET_DIM
      Src: /src/gpac/src/filters/vcrop.c:389,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/vcrop.c:391,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/vcrop.c:395,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/vcrop.c:399,1
    - Dst: ROUND_IT
      Src: /src/gpac/src/filters/vcrop.c:417,1
    - Dst: ROUND_IT
      Src: /src/gpac/src/filters/vcrop.c:418,1
    - Dst: ROUND_IT
      Src: /src/gpac/src/filters/vcrop.c:419,1
    - Dst: ROUND_IT
      Src: /src/gpac/src/filters/vcrop.c:420,1
    - Dst: ROUND_IT
      Src: /src/gpac/src/filters/vcrop.c:430,1
    - Dst: ROUND_IT
      Src: /src/gpac/src/filters/vcrop.c:431,1
    - Dst: ROUND_IT
      Src: /src/gpac/src/filters/vcrop.c:433,1
    - Dst: ROUND_IT
      Src: /src/gpac/src/filters/vcrop.c:434,1
    - Dst: ROUND_IT
      Src: /src/gpac/src/filters/vcrop.c:439,1
    - Dst: ROUND_IT
      Src: /src/gpac/src/filters/vcrop.c:440,1
    - Dst: ROUND_IT
      Src: /src/gpac/src/filters/vcrop.c:441,1
    - Dst: ROUND_IT
      Src: /src/gpac/src/filters/vcrop.c:442,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 114
    argCount: 4
    argNames:
    - ctx
    - src_w
    - src_h
    - pfmt
    argTypes:
    - GF_VCropCtx*
    - u32
    - u32
    - GF_PixelFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 324
    functionDepth: 1
    functionLinenumber: 324
    functionLinenumberEnd: 447
    functionName: parse_crop_props
    functionSourceFile: /src/gpac/src/filters/vcrop.c
    functionUses: 0
    functionsReached:
    - ROUND_IT
    - GF_LOG
    - memset
    - atoi
    - GET_DIM
    - strchr
    linkageType: ''
    returnType: Bool
    signature: Bool parse_crop_props(GF_VCropCtx *ctx, u32 src_w, u32 src_h, GF_PixelFormat
      pfmt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _dst
    - ','
    - _i
    - ','
    - _s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 379
    functionName: GET_DIM
    functionSourceFile: /src/gpac/src/filters/vcrop.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_DIM(_dst, _i, _s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 403
    functionDepth: 0
    functionLinenumber: 403
    functionLinenumberEnd: 404
    functionName: ROUND_IT
    functionSourceFile: /src/gpac/src/filters/vcrop.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ROUND_IT(_a)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/vcrop.c:455,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/vcrop.c:459,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/vcrop.c:464,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/vcrop.c:468,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/vcrop.c:471,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/vcrop.c:477,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/vcrop.c:479,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/vcrop.c:481,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/vcrop.c:483,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/vcrop.c:485,1
    - Dst: parse_crop_props
      Src: /src/gpac/src/filters/vcrop.c:499,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/vcrop.c:510,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/vcrop.c:511,1
    - Dst: memset
      Src: /src/gpac/src/filters/vcrop.c:515,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/vcrop.c:518,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/vcrop.c:520,1
    - Dst: memset
      Src: /src/gpac/src/filters/vcrop.c:528,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/vcrop.c:529,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/vcrop.c:531,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/vcrop.c:542,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/vcrop.c:549,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/vcrop.c:549,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/vcrop.c:550,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/vcrop.c:550,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/vcrop.c:552,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/vcrop.c:552,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/vcrop.c:554,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/vcrop.c:554,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/vcrop.c:556,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/vcrop.c:556,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/vcrop.c:558,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/vcrop.c:558,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/vcrop.c:560,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/vcrop.c:560,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/vcrop.c:563,1
    - Dst: PROP_VEC2I
      Src: /src/gpac/src/filters/vcrop.c:563,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/vcrop.c:566,1
    - Dst: PROP_VEC2I
      Src: /src/gpac/src/filters/vcrop.c:566,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 108
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 569
      start: 449
    functionDepth: 5
    functionLinenumber: 449
    functionLinenumberEnd: 569
    functionName: vcrop_configure_pid
    functionSourceFile: /src/gpac/src/filters/vcrop.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - PROP_FRAC
    - GF_LOG
    - gf_filter_pid_check_caps
    - memset
    - gf_pixel_get_size_info
    - PROP_VEC2I
    - gf_filter_pid_new
    - parse_crop_props
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vcrop_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/vcrop.c:573,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/vcrop.c:575,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/vcrop.c:576,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/vcrop.c:577,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/vcrop.c:579,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/vcrop.c:582,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/vcrop.c:583,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/vcrop.c:584,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/vcrop.c:586,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 571
    functionDepth: 3
    functionLinenumber: 571
    functionLinenumberEnd: 588
    functionName: vcrop_finalize
    functionSourceFile: /src/gpac/src/filters/vcrop.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_list_count
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void vcrop_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 591
    functionDepth: 0
    functionLinenumber: 591
    functionLinenumberEnd: 592
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/vcrop.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 628
    functionDepth: 0
    functionLinenumber: 628
    functionLinenumberEnd: 631
    functionName: vcrop_register
    functionSourceFile: /src/gpac/src/filters/vcrop.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *vcrop_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 633
    functionDepth: 0
    functionLinenumber: 633
    functionLinenumberEnd: 636
    functionName: vcrop_register
    functionSourceFile: /src/gpac/src/filters/vcrop.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *vcrop_register(GF_FilterSession *session)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_rawvid.c:63,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/reframe_rawvid.c:68,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/reframe_rawvid.c:73,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:79,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:80,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_rawvid.c:82,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_rawvid.c:84,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/reframe_rawvid.c:85,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:86,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawvid.c:86,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:87,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawvid.c:87,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:89,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawvid.c:89,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:90,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_rawvid.c:90,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:95,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:97,1
    - Dst: gf_pixel_fmt_parse
      Src: /src/gpac/src/filters/reframe_rawvid.c:101,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_rawvid.c:106,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_rawvid.c:110,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/reframe_rawvid.c:124,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_rawvid.c:125,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_rawvid.c:131,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_rawvid.c:133,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/reframe_rawvid.c:134,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:135,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawvid.c:135,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:136,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawvid.c:136,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:137,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawvid.c:137,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:138,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawvid.c:138,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:140,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawvid.c:140,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:141,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/reframe_rawvid.c:141,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:142,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawvid.c:142,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:144,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawvid.c:144,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:146,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawvid.c:146,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:147,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawvid.c:147,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:148,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_rawvid.c:148,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/reframe_rawvid.c:151,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:154,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawvid.c:154,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:157,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:160,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:166,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/reframe_rawvid.c:166,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:170,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawvid.c:170,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:171,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawvid.c:171,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 95
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 59
    functionDepth: 5
    functionLinenumber: 59
    functionLinenumberEnd: 174
    functionName: rawvidreframe_configure_pid
    functionSourceFile: /src/gpac/src/filters/reframe_rawvid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_pixel_fmt_parse
    - gf_filter_pid_set_framing_mode
    - GF_LOG
    - PROP_FRAC
    - gf_filter_pid_check_caps
    - PROP_FRAC64_INT
    - gf_pixel_get_size_info
    - strcmp
    - PROP_BOOL
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rawvidreframe_configure_pid(GF_Filter *filter, GF_FilterPid
      *pid, Bool is_remove)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_rawvid.c:180,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_rawvid.c:215,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_rawvid.c:218,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/reframe_rawvid.c:227,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 48
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 240
    functionName: rawvidreframe_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_rawvid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_discard
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool rawvidreframe_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_rawvid.c:244,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_rawvid.c:254,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_rawvid.c:256,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_rawvid.c:258,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_rawvid.c:262,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_rawvid.c:268,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_rawvid.c:269,1
    - Dst: strchr
      Src: /src/gpac/src/filters/reframe_rawvid.c:279,1
    - Dst: strchr
      Src: /src/gpac/src/filters/reframe_rawvid.c:280,1
    - Dst: strlen
      Src: /src/gpac/src/filters/reframe_rawvid.c:285,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:287,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:290,1
    - Dst: atoi
      Src: /src/gpac/src/filters/reframe_rawvid.c:292,1
    - Dst: atoi
      Src: /src/gpac/src/filters/reframe_rawvid.c:293,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/reframe_rawvid.c:294,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/reframe_rawvid.c:297,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:298,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/reframe_rawvid.c:298,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:301,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:302,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:303,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:304,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:305,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:306,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:307,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:308,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_rawvid.c:310,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:316,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:317,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:318,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:318,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_rawvid.c:320,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/reframe_rawvid.c:326,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/reframe_rawvid.c:326,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:343,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawvid.c:343,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:344,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawvid.c:344,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:345,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawvid.c:345,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:346,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/reframe_rawvid.c:346,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:347,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawvid.c:347,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/reframe_rawvid.c:349,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_rawvid.c:362,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/reframe_rawvid.c:364,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_rawvid.c:367,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_rawvid.c:371,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_rawvid.c:372,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_rawvid.c:373,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_rawvid.c:374,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_rawvid.c:378,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_rawvid.c:384,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/reframe_rawvid.c:387,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/reframe_rawvid.c:390,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_rawvid.c:393,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_rawvid.c:410,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_rawvid.c:416,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_rawvid.c:418,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_rawvid.c:420,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_rawvid.c:426,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 167
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 242
    functionDepth: 5
    functionLinenumber: 242
    functionLinenumberEnd: 428
    functionName: rawvidreframe_process
    functionSourceFile: /src/gpac/src/filters/reframe_rawvid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_ref
    - PROP_STRING
    - gf_filter_pid_set_property_str
    - atoi
    - strchr
    - gf_filter_pid_get_packet
    - gf_assert
    - gf_filter_pck_set_byte_offset
    - PROP_FRAC
    - memcpy
    - GF_FEVT_INIT
    - strncmp
    - gf_filter_pck_discard
    - gf_filter_get_udta
    - gf_filter_pck_new_alloc
    - sscanf
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_interlaced
    - gf_filter_pid_set_eos
    - gf_filter_pck_set_sap
    - gf_filter_pid_send_event
    - gf_filter_pid_is_eos
    - gf_filter_pid_set_property
    - strlen
    - PROP_UINT
    - gf_filter_pck_set_cts
    - gf_pixel_get_size_info
    - gf_filter_pck_get_byte_offset
    - strcmp
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rawvidreframe_process(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_rawvid.c:432,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/reframe_rawvid.c:433,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 430
    functionDepth: 1
    functionLinenumber: 430
    functionLinenumberEnd: 434
    functionName: rawvidreframe_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_rawvid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_discard
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void rawvidreframe_finalize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:438,1
    - Dst: gf_pixel_fmt_all_shortnames
      Src: /src/gpac/src/filters/reframe_rawvid.c:443,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 436
    functionDepth: 2
    functionLinenumber: 436
    functionLinenumberEnd: 444
    functionName: rawvidreframe_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_rawvid.c
    functionUses: 0
    functionsReached:
    - gf_pixel_fmt_all_shortnames
    - strncmp
    linkageType: ''
    returnType: char
    signature: char *rawvidreframe_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 463
    functionDepth: 0
    functionLinenumber: 463
    functionLinenumberEnd: 464
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/reframe_rawvid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_pixel_fmt_all_names
      Src: /src/gpac/src/filters/reframe_rawvid.c:495,1
    - Dst: gf_pixel_fmt_all_shortnames
      Src: /src/gpac/src/filters/reframe_rawvid.c:496,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 493
    functionDepth: 2
    functionLinenumber: 493
    functionLinenumberEnd: 498
    functionName: rfrawvid_register
    functionSourceFile: /src/gpac/src/filters/reframe_rawvid.c
    functionUses: 0
    functionsReached:
    - gf_pixel_fmt_all_names
    - gf_pixel_fmt_all_shortnames
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfrawvid_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 500
    functionDepth: 0
    functionLinenumber: 500
    functionLinenumberEnd: 503
    functionName: rfrawvid_register
    functionSourceFile: /src/gpac/src/filters/reframe_rawvid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfrawvid_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __str
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 52
    functionName: CHECK_STR
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_STR(__str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - __str
    - ','
    - __sep
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 196
    functionName: REM_TRAIL_MARKS
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: REM_TRAIL_MARKS(__str, __sep)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_fread
      Src: /src/gpac/src/filters/load_text.c:201,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/load_text.c:209,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/load_text.c:216,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/load_text.c:219,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/load_text.c:222,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/load_text.c:228,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_text.c:230,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:234,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:234,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:235,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:235,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:236,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:236,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:236,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:236,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/filters/load_text.c:240,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/filters/load_text.c:240,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/filters/load_text.c:240,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:243,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/load_text.c:243,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 42
    argCount: 2
    argNames:
    - ctx
    - in_src
    argTypes:
    - GF_TXTIn*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 197
    functionDepth: 5
    functionLinenumber: 197
    functionLinenumberEnd: 245
    functionName: gf_text_get_utf_type
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_fseek
    - gf_utf8_is_legal
    - gf_fread
    - GF_LOG
    - gf_opts_get_key
    - stricmp
    - gf_filter_pid_get_name
    linkageType: ''
    returnType: s32
    signature: s32 gf_text_get_utf_type(GF_TXTIn *ctx, FILE *in_src)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - cbk
    - cur_samp
    - count
    argTypes:
    - void*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 246
    functionDepth: 0
    functionLinenumber: 246
    functionLinenumberEnd: 250
    functionName: ttxt_dom_progress
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ttxt_dom_progress(void *cbk, u64 cur_samp, u64 count)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/load_text.c:254,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_TXTIn*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 256
    functionName: txtin_check_blocking
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_would_block
    linkageType: ''
    returnType: Bool
    signature: Bool txtin_check_blocking(GF_TXTIn *ctx)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/load_text.c:263,1
    - Dst: gf_text_get_utf_type
      Src: /src/gpac/src/filters/load_text.c:265,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/load_text.c:270,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/load_text.c:272,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/filters/load_text.c:278,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/load_text.c:280,1
    - Dst: REM_TRAIL_MARKS
      Src: /src/gpac/src/filters/load_text.c:285,1
    - Dst: strchr
      Src: /src/gpac/src/filters/load_text.c:289,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:294,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/load_text.c:296,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/load_text.c:297,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/load_text.c:298,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:299,1
    - Dst: gf_fgets
      Src: /src/gpac/src/filters/load_text.c:302,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:305,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:305,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:306,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:307,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:307,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:309,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:311,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_text.c:314,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_text.c:314,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_text.c:316,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/load_text.c:319,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 54
    argCount: 3
    argNames:
    - ctx
    - filename
    - fmt
    argTypes:
    - GF_TXTIn*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 258
    functionDepth: 6
    functionLinenumber: 258
    functionLinenumberEnd: 321
    functionName: gf_text_guess_format
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 1
    functionsReached:
    - REM_TRAIL_MARKS
    - gf_fclose
    - gf_utf8_wcstombs
    - gf_fread
    - gf_fgets
    - strstr
    - gf_text_get_utf_type
    - gf_file_ext_start
    - gf_fopen
    - strnicmp
    - strncmp
    - strchr
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_text_guess_format(GF_TXTIn *ctx, const char *filename, u32
      *fmt)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/load_text.c:328,1
    - Dst: memset
      Src: /src/gpac/src/filters/load_text.c:335,1
    - Dst: gf_fgets
      Src: /src/gpac/src/filters/load_text.c:336,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:341,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/load_text.c:343,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/load_text.c:351,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/load_text.c:359,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/load_text.c:367,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/load_text.c:378,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/load_text.c:395,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/load_text.c:403,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:404,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/load_text.c:405,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:408,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/load_text.c:412,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/filters/load_text.c:433,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/load_text.c:436,1
    - Dst: gf_fgetc
      Src: /src/gpac/src/filters/load_text.c:438,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:441,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/load_text.c:443,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 102
    argCount: 5
    argNames:
    - szLine
    - lineSize
    - txt_in
    - unicode_type
    - io_progress
    argTypes:
    - char*
    - u32
    - FILE*
    - s32
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 325
    functionDepth: 2
    functionLinenumber: 325
    functionLinenumberEnd: 448
    functionName: gf_text_get_utf8_line
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 1
    functionsReached:
    - gf_utf8_wcstombs
    - gf_fseek
    - gf_fgets
    - GF_ARRAY_LENGTH
    - GF_LOG
    - strcpy
    - memset
    - gf_fgetc
    - strlen
    - gf_ftell
    linkageType: ''
    returnType: char
    signature: char *gf_text_get_utf8_line(char *szLine, u32 lineSize, FILE *txt_in,
      s32 unicode_type, Bool *io_progress)
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: gf_swf_get_duration
      Src: /src/gpac/src/filters/load_text.c:460,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:465,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/load_text.c:465,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:466,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:466,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/load_text.c:472,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/load_text.c:473,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/load_text.c:474,1
    - Dst: gf_text_get_utf8_line
      Src: /src/gpac/src/filters/load_text.c:478,1
    - Dst: REM_TRAIL_MARKS
      Src: /src/gpac/src/filters/load_text.c:480,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:485,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_text.c:493,1
    - Dst: strchr
      Src: /src/gpac/src/filters/load_text.c:494,1
    - Dst: strchr
      Src: /src/gpac/src/filters/load_text.c:496,1
    - Dst: strchr
      Src: /src/gpac/src/filters/load_text.c:500,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:504,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:506,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:514,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:519,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:521,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/load_text.c:529,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:532,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/load_text.c:532,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:533,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:533,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/load_text.c:539,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:540,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:548,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:549,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:553,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:557,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:559,1
    - Dst: atof
      Src: /src/gpac/src/filters/load_text.c:562,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:566,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:567,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:574,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/load_text.c:574,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:575,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:575,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:584,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:586,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:592,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:593,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:595,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:597,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:603,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:605,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:606,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:607,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:609,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:619,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/load_text.c:619,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:620,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:620,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:624,1
    CyclomaticComplexity: 72
    EdgeCount: 72
    ICount: 150
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_TXTIn*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 451
    functionDepth: 3
    functionLinenumber: 451
    functionLinenumberEnd: 625
    functionName: txtin_probe_duration
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_get_root
    - gf_swf_get_duration
    - atoi
    - PROP_FRAC64
    - strchr
    - REM_TRAIL_MARKS
    - gf_feof
    - gf_fseek
    - atof
    - strncmp
    - gf_ftell
    - sscanf
    - GF_LOG
    - strstr
    - gf_list_enum
    - gf_filter_pid_set_property
    - PROP_UINT
    - strcmp
    - gf_text_get_utf8_line
    linkageType: ''
    returnType: void
    signature: void txtin_probe_duration(GF_TXTIn *ctx)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/load_text.c:635,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/load_text.c:639,1
    - Dst: gf_text_get_utf_type
      Src: /src/gpac/src/filters/load_text.c:641,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/load_text.c:643,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:645,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/load_text.c:654,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:655,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:655,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:658,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:658,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:660,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:660,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:662,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:662,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:664,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:664,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:666,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/load_text.c:666,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:669,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:669,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:670,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:670,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:673,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:673,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:674,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:674,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:675,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/load_text.c:675,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:676,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/load_text.c:676,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/filters/load_text.c:678,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/load_text.c:679,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/load_text.c:682,1
    - Dst: gf_odf_tx3g_write
      Src: /src/gpac/src/filters/load_text.c:702,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:703,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/load_text.c:703,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/load_text.c:705,1
    - Dst: gf_isom_new_text_sample
      Src: /src/gpac/src/filters/load_text.c:712,1
    - Dst: txtin_probe_duration
      Src: /src/gpac/src/filters/load_text.c:719,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 82
    argCount: 3
    argNames:
    - filter
    - ctx
    - gen_dsi_only
    argTypes:
    - GF_Filter*
    - GF_TXTIn*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 627
    functionDepth: 6
    functionLinenumber: 627
    functionLinenumberEnd: 723
    functionName: txtin_setup_srt
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - txtin_probe_duration
    - gf_odf_desc_del
    - PROP_STRING
    - gf_text_get_utf_type
    - gf_fopen
    - PROP_DATA_NO_COPY
    - gf_filter_pid_new
    - PROP_LONGUINT
    - gf_odf_tx3g_write
    - gf_strdup
    - gf_odf_desc_new
    - gf_fsize
    - PROP_SINT
    - GF_LOG
    - gf_filter_pid_set_property
    - gf_malloc
    - gf_isom_new_text_sample
    - gf_fclose
    - PROP_UINT
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txtin_setup_srt(GF_Filter *filter, GF_TXTIn *ctx, Bool gen_dsi_only)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/load_text.c:743,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/load_text.c:746,1
    - Dst: gf_isom_text_sample_size
      Src: /src/gpac/src/filters/load_text.c:749,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/load_text.c:751,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/load_text.c:754,1
    - Dst: gf_isom_text_sample_write_bs
      Src: /src/gpac/src/filters/load_text.c:755,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/load_text.c:760,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/load_text.c:761,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/load_text.c:763,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/load_text.c:764,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/load_text.c:765,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/load_text.c:767,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 34
    argCount: 5
    argNames:
    - ctx
    - txt_samp
    - ts
    - duration
    - is_rap
    argTypes:
    - GF_TXTIn*
    - GF_TextSample*
    - u64
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 725
    functionDepth: 5
    functionLinenumber: 725
    functionLinenumberEnd: 768
    functionName: txtin_process_send_text_sample
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_isom_text_sample_size
    - gf_filter_pck_set_cts
    - memcpy
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_isom_text_sample_write_bs
    - gf_bs_reassign_buffer
    - gf_timestamp_rescale
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void txtin_process_send_text_sample(GF_TXTIn *ctx, GF_TextSample *txt_samp,
      u64 ts, u32 duration, Bool is_rap)
  - BBCount: 57
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:778,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/load_text.c:779,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/load_text.c:780,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/filters/load_text.c:782,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:784,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:786,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:787,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/filters/load_text.c:808,1
    - Dst: strlwr
      Src: /src/gpac/src/filters/load_text.c:811,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_text.c:812,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:813,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:814,1
    - Dst: strchr
      Src: /src/gpac/src/filters/load_text.c:823,1
    - Dst: gf_color_parse
      Src: /src/gpac/src/filters/load_text.c:837,1
    - Dst: strchr
      Src: /src/gpac/src/filters/load_text.c:840,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_text.c:848,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_text.c:855,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_text.c:859,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:866,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/load_text.c:880,1
    - Dst: gf_isom_text_add_style
      Src: /src/gpac/src/filters/load_text.c:881,1
    - Dst: gf_isom_text_add_style
      Src: /src/gpac/src/filters/load_text.c:892,1
    - Dst: gf_isom_text_add_style
      Src: /src/gpac/src/filters/load_text.c:972,1
    - Dst: gf_isom_text_add_style
      Src: /src/gpac/src/filters/load_text.c:988,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/filters/load_text.c:999,1
    - Dst: gf_isom_text_add_text
      Src: /src/gpac/src/filters/load_text.c:1002,1
    - Dst: gf_isom_text_set_forced
      Src: /src/gpac/src/filters/load_text.c:1003,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:1006,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:1007,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 216
    argCount: 5
    argNames:
    - ctx
    - szLine
    - char_l
    - set_start_c
    - set_end_c
    argTypes:
    - GF_TXTIn*
    - char*
    - u32*
    - Bool*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1009
      start: 770
    functionDepth: 5
    functionLinenumber: 770
    functionLinenumberEnd: 1009
    functionName: parse_srt_line
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_color_parse
    - gf_assert
    - gf_utf8_wcstombs
    - GF_LOG
    - gf_utf8_mbstowcs
    - strlen
    - strstr
    - strlwr
    - strncmp
    - gf_isom_text_add_style
    - gf_isom_text_add_text
    - gf_isom_text_set_forced
    - strchr
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err parse_srt_line(GF_TXTIn *ctx, char *szLine, u32 *char_l, Bool
      *set_start_c, Bool *set_end_c)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: txtin_setup_srt
      Src: /src/gpac/src/filters/load_text.c:1024,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/load_text.c:1040,1
    - Dst: gf_text_get_utf8_line
      Src: /src/gpac/src/filters/load_text.c:1046,1
    - Dst: REM_TRAIL_MARKS
      Src: /src/gpac/src/filters/load_text.c:1049,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:1051,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/load_text.c:1061,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/load_text.c:1063,1
    - Dst: gf_text_get_utf8_line
      Src: /src/gpac/src/filters/load_text.c:1065,1
    - Dst: REM_TRAIL_MARKS
      Src: /src/gpac/src/filters/load_text.c:1066,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/load_text.c:1069,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:1075,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:1078,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/load_text.c:1079,1
    - Dst: gf_isom_new_text_sample
      Src: /src/gpac/src/filters/load_text.c:1093,1
    - Dst: txtin_process_send_text_sample
      Src: /src/gpac/src/filters/load_text.c:1094,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/filters/load_text.c:1095,1
    - Dst: txtin_process_send_text_sample
      Src: /src/gpac/src/filters/load_text.c:1099,1
    - Dst: gf_isom_text_reset
      Src: /src/gpac/src/filters/load_text.c:1106,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/load_text.c:1109,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/load_text.c:1109,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/load_text.c:1109,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:1119,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:1120,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:1124,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:1130,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:1131,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:1133,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:1134,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:1135,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:1147,1
    - Dst: txtin_process_send_text_sample
      Src: /src/gpac/src/filters/load_text.c:1158,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:1163,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:1167,1
    - Dst: gf_isom_text_add_text
      Src: /src/gpac/src/filters/load_text.c:1178,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:1182,1
    - Dst: gf_isom_text_add_text
      Src: /src/gpac/src/filters/load_text.c:1183,1
    - Dst: parse_srt_line
      Src: /src/gpac/src/filters/load_text.c:1186,1
    - Dst: txtin_check_blocking
      Src: /src/gpac/src/filters/load_text.c:1192,1
    - Dst: gf_isom_text_reset
      Src: /src/gpac/src/filters/load_text.c:1200,1
    - Dst: txtin_process_send_text_sample
      Src: /src/gpac/src/filters/load_text.c:1201,1
    - Dst: gf_isom_text_reset
      Src: /src/gpac/src/filters/load_text.c:1204,1
    CyclomaticComplexity: 65
    EdgeCount: 65
    ICount: 172
    argCount: 3
    argNames:
    - filter
    - ctx
    - ipck
    argTypes:
    - GF_Filter*
    - GF_TXTIn*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1207
      start: 1011
    functionDepth: 7
    functionLinenumber: 1011
    functionLinenumberEnd: 1207
    functionName: txtin_process_srt
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_isom_text_add_text
    - PROP_LONGUINT
    - REM_TRAIL_MARKS
    - gf_feof
    - gf_fseek
    - txtin_process_send_text_sample
    - txtin_setup_srt
    - parse_srt_line
    - txtin_check_blocking
    - gf_ftell
    - sscanf
    - GF_LOG
    - strstr
    - strlen
    - gf_isom_text_reset
    - gf_isom_new_text_sample
    - gf_filter_pid_set_info
    - gf_isom_delete_text_sample
    - gf_text_get_utf8_line
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txtin_process_srt(GF_Filter *filter, GF_TXTIn *ctx, GF_FilterPacket
      *ipck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:1222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - user
    - e
    - message
    - line
    argTypes:
    - void*
    - GF_Err
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1224
      start: 1220
    functionDepth: 1
    functionLinenumber: 1220
    functionLinenumberEnd: 1224
    functionName: gf_webvtt_import_report
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_webvtt_import_report(void *user, GF_Err e, char *message,
      const char *line)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:1230,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_text.c:1232,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:1233,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/load_text.c:1233,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:1235,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/load_text.c:1235,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:1235,1
    - Dst: gf_webvtt_parser_suspend
      Src: /src/gpac/src/filters/load_text.c:1238,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - user
    - config
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1240
      start: 1226
    functionDepth: 1
    functionLinenumber: 1226
    functionLinenumberEnd: 1240
    functionName: gf_webvtt_import_header
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_webvtt_parser_suspend
    - strncmp
    - PROP_DATA
    - gf_filter_pid_set_property
    - strlen
    linkageType: ''
    returnType: void
    signature: void gf_webvtt_import_header(void *user, const char *config)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_webvtt_sample_get_start
      Src: /src/gpac/src/filters/load_text.c:1248,1
    - Dst: gf_webvtt_sample_get_end
      Src: /src/gpac/src/filters/load_text.c:1249,1
    - Dst: gf_isom_webvtt_cues_count
      Src: /src/gpac/src/filters/load_text.c:1258,1
    - Dst: gf_isom_webvtt_to_sample
      Src: /src/gpac/src/filters/load_text.c:1261,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/load_text.c:1267,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/load_text.c:1269,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/load_text.c:1270,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/load_text.c:1271,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/load_text.c:1275,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/load_text.c:1277,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/filters/load_text.c:1280,1
    - Dst: gf_webvtt_sample_del
      Src: /src/gpac/src/filters/load_text.c:1282,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/load_text.c:1284,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/load_text.c:1284,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/load_text.c:1284,1
    - Dst: txtin_check_blocking
      Src: /src/gpac/src/filters/load_text.c:1286,1
    - Dst: gf_webvtt_parser_suspend
      Src: /src/gpac/src/filters/load_text.c:1288,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - user
    - samp
    argTypes:
    - void*
    - GF_WebVTTSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1290
      start: 1242
    functionDepth: 8
    functionLinenumber: 1242
    functionLinenumberEnd: 1290
    functionName: gf_webvtt_flush_sample
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_info
    - gf_filter_pck_new_alloc
    - gf_isom_webvtt_cues_count
    - memcpy
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_duration
    - gf_isom_sample_del
    - gf_ftell
    - gf_webvtt_sample_get_start
    - gf_webvtt_parser_suspend
    - gf_isom_webvtt_to_sample
    - gf_filter_pck_set_sap
    - gf_webvtt_sample_del
    - gf_webvtt_sample_get_end
    - PROP_LONGUINT
    - txtin_check_blocking
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void gf_webvtt_flush_sample(void *user, GF_WebVTTSample *samp)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/load_text.c:1300,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/load_text.c:1305,1
    - Dst: gf_text_get_utf_type
      Src: /src/gpac/src/filters/load_text.c:1307,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/load_text.c:1309,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:1311,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/load_text.c:1315,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/load_text.c:1316,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/load_text.c:1324,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:1326,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:1326,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:1327,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:1327,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:1328,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:1328,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:1329,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/load_text.c:1329,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:1335,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:1335,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:1336,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:1336,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:1337,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:1337,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:1338,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:1338,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:1339,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/load_text.c:1339,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:1340,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/load_text.c:1340,1
    - Dst: gf_webvtt_parser_new
      Src: /src/gpac/src/filters/load_text.c:1342,1
    - Dst: gf_webvtt_parser_init
      Src: /src/gpac/src/filters/load_text.c:1344,1
    - Dst: gf_webvtt_parser_del
      Src: /src/gpac/src/filters/load_text.c:1346,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:1348,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/load_text.c:1348,1
    - Dst: gf_webvtt_parser_parse_ext
      Src: /src/gpac/src/filters/load_text.c:1351,1
    - Dst: txtin_probe_duration
      Src: /src/gpac/src/filters/load_text.c:1354,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 56
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_TXTIn*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1356
      start: 1292
    functionDepth: 6
    functionLinenumber: 1292
    functionLinenumberEnd: 1356
    functionName: txtin_webvtt_setup
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - txtin_probe_duration
    - PROP_STRING
    - gf_text_get_utf_type
    - gf_webvtt_parser_del
    - gf_fopen
    - gf_filter_pid_new
    - PROP_LONGUINT
    - gf_webvtt_parser_parse_ext
    - gf_webvtt_parser_init
    - gf_fsize
    - PROP_SINT
    - GF_LOG
    - strnicmp
    - gf_error_to_string
    - gf_filter_pid_set_property
    - gf_fclose
    - PROP_UINT
    - gf_file_ext_start
    - gf_webvtt_parser_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txtin_webvtt_setup(GF_Filter *filter, GF_TXTIn *ctx)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: txtin_webvtt_setup
      Src: /src/gpac/src/filters/load_text.c:1368,1
    - Dst: gf_webvtt_parser_restart
      Src: /src/gpac/src/filters/load_text.c:1375,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/load_text.c:1380,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/load_text.c:1382,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/load_text.c:1384,1
    - Dst: gf_webvtt_parser_parse_payload
      Src: /src/gpac/src/filters/load_text.c:1387,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/load_text.c:1388,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/load_text.c:1389,1
    - Dst: gf_webvtt_parser_not_done
      Src: /src/gpac/src/filters/load_text.c:1393,1
    - Dst: gf_webvtt_parser_parse_ext
      Src: /src/gpac/src/filters/load_text.c:1395,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:1399,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/load_text.c:1399,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 3
    argNames:
    - filter
    - ctx
    - ipck
    argTypes:
    - GF_Filter*
    - GF_TXTIn*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1402
      start: 1360
    functionDepth: 7
    functionLinenumber: 1360
    functionLinenumberEnd: 1402
    functionName: txtin_process_webvtt
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - txtin_webvtt_setup
    - gf_webvtt_parser_restart
    - GF_LOG
    - gf_error_to_string
    - gf_webvtt_parser_parse_payload
    - gf_webvtt_parser_not_done
    - gf_webvtt_parser_parse_ext
    - gf_timestamp_rescale
    - gf_filter_pck_get_property_str
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txtin_process_webvtt(GF_Filter *filter, GF_TXTIn *ctx, GF_FilterPacket
      *ipck)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:1410,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 38
    argCount: 2
    argNames:
    - str
    - strip_lines
    argTypes:
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1452
      start: 1406
    functionDepth: 0
    functionLinenumber: 1406
    functionLinenumberEnd: 1452
    functionName: ttxt_parse_string
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: char
    signature: char *ttxt_parse_string(char *str, Bool strip_lines)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:1459,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:1460,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:1464,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:1465,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_text.c:1467,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_text.c:1469,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/load_text.c:1470,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/load_text.c:1470,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/load_text.c:1471,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/filters/load_text.c:1472,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - root
    - out_body_node
    argTypes:
    - GF_XMLNode*
    - GF_XMLNode**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1479
      start: 1454
    functionDepth: 4
    functionLinenumber: 1454
    functionLinenumberEnd: 1479
    functionName: ebu_ttd_remove_samples
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_assert
    - gf_list_find
    - gf_list_count
    - gf_xml_dom_node_del
    - strcmp
    - gf_list_enum
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void ebu_ttd_remove_samples(GF_XMLNode *root, GF_XMLNode **out_body_node)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:1489,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:1494,1
    - Dst: atof
      Src: /src/gpac/src/filters/load_text.c:1502,1
    - Dst: atof
      Src: /src/gpac/src/filters/load_text.c:1508,1
    - Dst: atof
      Src: /src/gpac/src/filters/load_text.c:1515,1
    - Dst: atof
      Src: /src/gpac/src/filters/load_text.c:1521,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:1529,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:1530,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:1536,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:1541,1
    - Dst: strchr
      Src: /src/gpac/src/filters/load_text.c:1555,1
    - Dst: strchr
      Src: /src/gpac/src/filters/load_text.c:1556,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:1561,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:1579,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:1590,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:1595,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:1603,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 108
    argCount: 5
    argNames:
    - value
    - tick_rate
    - ttml_fps_num
    - ttml_fps_den
    - ttml_sfps
    argTypes:
    - char*
    - u32
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1608
      start: 1485
    functionDepth: 1
    functionLinenumber: 1485
    functionLinenumberEnd: 1608
    functionName: ttml_get_timestamp_ex
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 2
    functionsReached:
    - sscanf
    - atof
    - GF_LOG
    - atoi
    - strchr
    - strlen
    linkageType: ''
    returnType: u64
    signature: u64 ttml_get_timestamp_ex(char *value, u32 tick_rate, u32 *ttml_fps_num,
      u32 *ttml_fps_den, u32 *ttml_sfps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ttml_get_timestamp_ex
      Src: /src/gpac/src/filters/load_text.c:1616,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - value
    argTypes:
    - GF_TXTIn*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1618
      start: 1614
    functionDepth: 2
    functionLinenumber: 1614
    functionLinenumberEnd: 1618
    functionName: ttml_get_timestamp
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 1
    functionsReached:
    - ttml_get_timestamp_ex
    linkageType: ''
    returnType: u64
    signature: u64 ttml_get_timestamp(GF_TXTIn *ctx, char *value)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:1627,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_text.c:1632,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_text.c:1633,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/load_text.c:1655,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:1656,1
    - Dst: ttml_push_interval
      Src: /src/gpac/src/filters/load_text.c:1657,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/load_text.c:1664,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:1665,1
    - Dst: ttml_push_interval
      Src: /src/gpac/src/filters/load_text.c:1666,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/load_text.c:1670,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_text.c:1675,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_text.c:1676,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/load_text.c:1678,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/load_text.c:1681,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 52
    argCount: 4
    argNames:
    - ctx
    - begin
    - end
    - out_interval
    argTypes:
    - GF_TXTIn*
    - s64
    - s64
    - TTMLInterval**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1682
      start: 1619
    functionDepth: 2
    functionLinenumber: 1619
    functionLinenumberEnd: 1682
    functionName: ttml_push_interval
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_insert
    - gf_list_get
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_count
    - ttml_push_interval
    - gf_list_add
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ttml_push_interval(GF_TXTIn *ctx, s64 begin, s64 end, TTMLInterval
      **out_interval)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_text.c:1686,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/load_text.c:1687,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_text.c:1689,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/load_text.c:1690,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:1692,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:1693,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/load_text.c:1696,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:1698,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_TXTIn*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1700
      start: 1684
    functionDepth: 3
    functionLinenumber: 1684
    functionLinenumberEnd: 1700
    functionName: ttml_reset_intervals
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_pop_back
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void ttml_reset_intervals(GF_TXTIn *ctx)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_clone
      Src: /src/gpac/src/filters/load_text.c:1712,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/load_text.c:1714,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/load_text.c:1719,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:1724,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/load_text.c:1727,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:1729,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/load_text.c:1737,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:1739,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:1740,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 4
    argNames:
    - ctx
    - interval
    - f_data
    - f_size
    argTypes:
    - GF_TXTIn*
    - TTMLInterval*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1744
      start: 1704
    functionDepth: 3
    functionLinenumber: 1704
    functionLinenumberEnd: 1744
    functionName: ttml_push_res
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - GF_SAFEALLOC
    - gf_list_clone
    - gf_list_add
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ttml_push_res(GF_TXTIn *ctx, TTMLInterval *interval, u8 *f_data,
      u32 f_size)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:1763,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:1767,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:1772,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:1775,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:1775,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:1775,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:1781,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:1784,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:1788,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_text.c:1791,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:1792,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/load_text.c:1795,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filters/load_text.c:1797,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:1798,1
    - Dst: ttml_push_res
      Src: /src/gpac/src/filters/load_text.c:1801,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_text.c:1804,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:1805,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/load_text.c:1806,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/load_text.c:1807,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:1815,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:1819,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/load_text.c:1821,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/filters/load_text.c:1823,1
    - Dst: ttml_push_res
      Src: /src/gpac/src/filters/load_text.c:1825,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_text.c:1828,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/load_text.c:1829,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/load_text.c:1831,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/load_text.c:1833,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/load_text.c:1834,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/load_text.c:1835,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/load_text.c:1836,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/load_text.c:1840,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/load_text.c:1841,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/load_text.c:1842,1
    - Dst: gf_xml_dom_node_reset
      Src: /src/gpac/src/filters/load_text.c:1844,1
    - Dst: ttml_push_resources
      Src: /src/gpac/src/filters/load_text.c:1849,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 89
    argCount: 4
    argNames:
    - ctx
    - interval
    - node
    - parent_source_node
    argTypes:
    - GF_TXTIn*
    - TTMLInterval*
    - GF_XMLNode*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1853
      start: 1746
    functionDepth: 4
    functionLinenumber: 1746
    functionLinenumberEnd: 1853
    functionName: ttml_push_resources
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_xml_dom_node_reset
    - GF_SAFEALLOC
    - gf_list_count
    - ttml_push_resources
    - gf_strdup
    - gf_list_new
    - sprintf
    - strncmp
    - gf_list_add
    - strstr
    - gf_list_del_item
    - gf_list_enum
    - gf_malloc
    - strlen
    - gf_base64_decode
    - gf_url_concatenate
    - strcmp
    - ttml_push_res
    - gf_file_load_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ttml_push_resources(GF_TXTIn *ctx, TTMLInterval *interval, GF_XMLNode
      *node, GF_XMLNode *parent_source_node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ttml_get_timestamp
      Src: /src/gpac/src/filters/load_text.c:1861,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/load_text.c:1877,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:1879,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/load_text.c:1880,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 5
    argNames:
    - ctx
    - ttml_zero
    - att
    - value
    - drop
    argTypes:
    - GF_TXTIn*
    - s64
    - GF_XMLAttribute*
    - s64*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1882
      start: 1856
    functionDepth: 0
    functionLinenumber: 1856
    functionLinenumberEnd: 1882
    functionName: ttml_rewrite_timestamp
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 1
    functionsReached:
    - ttml_get_timestamp
    - gf_free
    - gf_strdup
    - snprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ttml_rewrite_timestamp(GF_TXTIn *ctx, s64 ttml_zero, GF_XMLAttribute
      *att, s64 *value, Bool *drop)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:2021,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2023,1
    - Dst: strchr
      Src: /src/gpac/src/filters/load_text.c:2025,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:2029,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:2030,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2031,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:2035,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:2035,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:2038,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:2039,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:2041,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:2042,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:2045,1
    - Dst: strchr
      Src: /src/gpac/src/filters/load_text.c:2046,1
    - Dst: strchr
      Src: /src/gpac/src/filters/load_text.c:2047,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:2051,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:2055,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:2058,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:2059,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 50
    argCount: 6
    argNames:
    - root
    - lang
    - tick_rate
    - ttml_fps_num
    - ttml_fps_den
    - ttml_sfps
    argTypes:
    - GF_XMLNode*
    - char**
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2068
      start: 2007
    functionDepth: 2
    functionLinenumber: 2007
    functionLinenumberEnd: 2068
    functionName: ttml_parse_root
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - strcmp
    - atoi
    - gf_list_enum
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ttml_parse_root(GF_XMLNode *root, const char **lang, u32 *tick_rate,
      u32 *ttml_fps_num, u32 *ttml_fps_den, u32 *ttml_sfps)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/filters/load_text.c:2083,1
    - Dst: gf_xml_dom_enable_passthrough
      Src: /src/gpac/src/filters/load_text.c:2085,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/filters/load_text.c:2086,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2088,1
    - Dst: gf_xml_dom_get_line
      Src: /src/gpac/src/filters/load_text.c:2088,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/filters/load_text.c:2088,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/load_text.c:2093,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2095,1
    - Dst: gf_xml_dom_node_check_namespace
      Src: /src/gpac/src/filters/load_text.c:2101,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2103,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2105,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2111,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/load_text.c:2113,1
    - Dst: ttml_parse_root
      Src: /src/gpac/src/filters/load_text.c:2115,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:2123,1
    - Dst: gf_xml_dom_node_check_namespace
      Src: /src/gpac/src/filters/load_text.c:2127,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2129,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2132,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2140,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/load_text.c:2144,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/load_text.c:2147,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:2152,1
    - Dst: gf_xml_dom_node_check_namespace
      Src: /src/gpac/src/filters/load_text.c:2154,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2156,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/load_text.c:2159,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/load_text.c:2165,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:2166,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:2166,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:2167,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:2167,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:2168,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:2168,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:2169,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/load_text.c:2169,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:2172,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:2172,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:2173,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:2173,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:2174,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:2174,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:2175,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/load_text.c:2175,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:2176,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/load_text.c:2176,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/load_text.c:2177,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/load_text.c:2177,1
    - Dst: gf_xml_dom_node_clone
      Src: /src/gpac/src/filters/load_text.c:2180,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/load_text.c:2180,1
    - Dst: ebu_ttd_remove_samples
      Src: /src/gpac/src/filters/load_text.c:2185,1
    - Dst: txtin_probe_duration
      Src: /src/gpac/src/filters/load_text.c:2199,1
    - Dst: ttml_setup_intervals
      Src: /src/gpac/src/filters/load_text.c:2201,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/load_text.c:2206,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/load_text.c:2206,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/load_text.c:2208,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 119
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_TXTIn*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2211
      start: 2073
    functionDepth: 11
    functionLinenumber: 2073
    functionLinenumberEnd: 2211
    functionName: gf_text_ttml_setup
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - txtin_probe_duration
    - gf_xml_dom_get_root
    - PROP_STRING
    - gf_filter_pid_set_property_str
    - gf_xml_dom_get_line
    - gf_filter_pid_new
    - PROP_LONGUINT
    - gf_xml_dom_enable_passthrough
    - gf_list_new
    - gf_xml_dom_new
    - gf_list_add
    - gf_xml_dom_node_clone
    - ttml_setup_intervals
    - gf_xml_dom_parse
    - PROP_SINT
    - gf_list_reset
    - GF_LOG
    - ttml_parse_root
    - gf_xml_dom_get_error
    - ebu_ttd_remove_samples
    - gf_list_enum
    - gf_filter_pid_set_property
    - gf_xml_dom_node_check_namespace
    - PROP_UINT
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_text_ttml_setup(GF_Filter *filter, GF_TXTIn *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 11
    argCount: 3
    argNames:
    - interval
    - ts_begin
    - ts_end
    argTypes:
    - TTMLInterval*
    - s64
    - s64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2229
      start: 2213
    functionDepth: 0
    functionLinenumber: 2213
    functionLinenumberEnd: 2229
    functionName: ttml_check_range
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool ttml_check_range(TTMLInterval *interval, s64 ts_begin, s64 ts_end)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/load_text.c:2238,1
    - Dst: gf_xml_dom_serialize_root
      Src: /src/gpac/src/filters/load_text.c:2239,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/load_text.c:2240,1
    - Dst: ttxt_parse_string
      Src: /src/gpac/src/filters/load_text.c:2244,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:2246,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/load_text.c:2248,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:2250,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/load_text.c:2253,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:2254,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/load_text.c:2256,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/load_text.c:2258,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/load_text.c:2260,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/load_text.c:2263,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/load_text.c:2266,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/load_text.c:2267,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/load_text.c:2270,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 3
    argNames:
    - ctx
    - sample_start
    - sample_end
    argTypes:
    - GF_TXTIn*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2271
      start: 2231
    functionDepth: 3
    functionLinenumber: 2231
    functionLinenumberEnd: 2271
    functionName: ttml_send_empty_sample
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_new
    - gf_xml_dom_serialize_root
    - gf_filter_pck_new_alloc
    - gf_filter_pck_set_cts
    - memcpy
    - gf_filter_pck_set_duration
    - ttxt_parse_string
    - gf_filter_pck_set_sap
    - gf_timestamp_rescale
    - strlen
    - gf_list_del
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ttml_send_empty_sample(GF_TXTIn *ctx, u64 sample_start, u64
      sample_end)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_text_ttml_setup
      Src: /src/gpac/src/filters/load_text.c:2285,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_text.c:2294,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2296,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:2298,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/load_text.c:2299,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_text.c:2305,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/load_text.c:2307,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_text.c:2309,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_text.c:2312,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_text.c:2313,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_text.c:2315,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_text.c:2323,1
    - Dst: gf_xml_dom_node_check_namespace
      Src: /src/gpac/src/filters/load_text.c:2327,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2329,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:2336,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:2337,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2339,1
    - Dst: ttml_get_timestamp
      Src: /src/gpac/src/filters/load_text.c:2343,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:2344,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2346,1
    - Dst: ttml_get_timestamp
      Src: /src/gpac/src/filters/load_text.c:2350,1
    - Dst: ttml_check_range
      Src: /src/gpac/src/filters/load_text.c:2354,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_text.c:2356,1
    - Dst: gf_xml_dom_append_child
      Src: /src/gpac/src/filters/load_text.c:2358,1
    - Dst: gf_xml_dom_append_child
      Src: /src/gpac/src/filters/load_text.c:2360,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/load_text.c:2361,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:2367,1
    - Dst: gf_xml_dom_node_check_namespace
      Src: /src/gpac/src/filters/load_text.c:2370,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2372,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:2378,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:2379,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2381,1
    - Dst: ttml_get_timestamp
      Src: /src/gpac/src/filters/load_text.c:2385,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:2386,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2388,1
    - Dst: ttml_get_timestamp
      Src: /src/gpac/src/filters/load_text.c:2392,1
    - Dst: ttml_check_range
      Src: /src/gpac/src/filters/load_text.c:2397,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_text.c:2399,1
    - Dst: gf_xml_dom_append_child
      Src: /src/gpac/src/filters/load_text.c:2401,1
    - Dst: gf_xml_dom_append_child
      Src: /src/gpac/src/filters/load_text.c:2403,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/load_text.c:2404,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/load_text.c:2411,1
    - Dst: gf_xml_dom_append_child
      Src: /src/gpac/src/filters/load_text.c:2413,1
    - Dst: gf_xml_dom_serialize_root
      Src: /src/gpac/src/filters/load_text.c:2424,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_text.c:2427,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/load_text.c:2429,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2443,1
    - Dst: ttxt_parse_string
      Src: /src/gpac/src/filters/load_text.c:2448,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:2450,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_text.c:2453,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/load_text.c:2463,1
    - Dst: ttml_send_empty_sample
      Src: /src/gpac/src/filters/load_text.c:2476,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2483,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/load_text.c:2486,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/load_text.c:2491,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/load_text.c:2492,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/load_text.c:2494,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/load_text.c:2496,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/load_text.c:2499,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/load_text.c:2502,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/load_text.c:2503,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/load_text.c:2506,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/load_text.c:2507,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/load_text.c:2512,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/load_text.c:2516,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/load_text.c:2517,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/load_text.c:2518,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/load_text.c:2519,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/load_text.c:2520,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_text.c:2524,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/load_text.c:2525,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/load_text.c:2529,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/load_text.c:2530,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/load_text.c:2531,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/load_text.c:2532,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/load_text.c:2533,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/load_text.c:2535,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/load_text.c:2536,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/load_text.c:2537,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/load_text.c:2537,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/load_text.c:2539,1
    CyclomaticComplexity: 63
    EdgeCount: 63
    ICount: 186
    argCount: 3
    argNames:
    - filter
    - ctx
    - ipck
    argTypes:
    - GF_Filter*
    - GF_TXTIn*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2540
      start: 2273
    functionDepth: 12
    functionLinenumber: 2273
    functionLinenumberEnd: 2540
    functionName: gf_text_process_ttml
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_get_root
    - gf_bs_new
    - gf_list_count
    - PROP_DATA_NO_COPY
    - gf_text_ttml_setup
    - gf_bs_write_u32
    - gf_list_get
    - gf_assert
    - gf_filter_pck_set_property
    - memcpy
    - gf_bs_get_content
    - ttml_check_range
    - gf_xml_dom_append_child
    - gf_xml_dom_serialize_root
    - gf_filter_pck_new_alloc
    - gf_list_reset
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_filter_pid_set_eos
    - ttml_get_timestamp
    - ttxt_parse_string
    - gf_filter_pck_set_sap
    - ttml_send_empty_sample
    - gf_list_enum
    - gf_list_last
    - strlen
    - gf_timestamp_rescale
    - gf_xml_dom_node_check_namespace
    - PROP_UINT
    - gf_filter_pck_set_cts
    - gf_bs_del
    - strcmp
    - gf_bs_write_u8
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_text_process_ttml(GF_Filter *filter, GF_TXTIn *ctx, GF_FilterPacket
      *ipck)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/load_text.c:2575,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/load_text.c:2577,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/load_text.c:2578,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/load_text.c:2579,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/load_text.c:2580,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/load_text.c:2582,1
    - Dst: txtin_check_blocking
      Src: /src/gpac/src/filters/load_text.c:2585,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 5
    argNames:
    - user
    - data
    - length
    - timestamp
    - isRap
    argTypes:
    - void*
    - u8*
    - u32
    - u64
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2588
      start: 2561
    functionDepth: 2
    functionLinenumber: 2561
    functionLinenumberEnd: 2588
    functionName: swf_svg_add_iso_sample
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_set_cts
    - memcpy
    - gf_filter_pck_set_framing
    - gf_filter_pck_set_sap
    - txtin_check_blocking
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_svg_add_iso_sample(void *user, const u8 *data, u32 length,
      u64 timestamp, Bool isRap)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:2596,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/load_text.c:2596,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:2596,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/load_text.c:2602,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/load_text.c:2604,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/load_text.c:2605,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/load_text.c:2607,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 4
    argNames:
    - user
    - data
    - length
    - isHeader
    argTypes:
    - void*
    - u8*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2611
      start: 2590
    functionDepth: 1
    functionLinenumber: 2590
    functionLinenumberEnd: 2611
    functionName: swf_svg_add_iso_header
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - memcpy
    - gf_filter_pck_set_framing
    - PROP_DATA
    - gf_filter_pid_set_property
    - strlen
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err swf_svg_add_iso_header(void *user, const u8 *data, u32 length,
      Bool isHeader)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_swf_reader_new
      Src: /src/gpac/src/filters/load_text.c:2618,1
    - Dst: gf_swf_read_header
      Src: /src/gpac/src/filters/load_text.c:2619,1
    - Dst: gf_swf_reader_set_user_mode
      Src: /src/gpac/src/filters/load_text.c:2621,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/load_text.c:2625,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:2626,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:2626,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:2627,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:2627,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:2628,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:2628,1
    - Dst: FIX2INT
      Src: /src/gpac/src/filters/load_text.c:2632,1
    - Dst: FIX2INT
      Src: /src/gpac/src/filters/load_text.c:2633,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:2639,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:2639,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:2640,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:2640,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:2641,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:2641,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:2642,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/load_text.c:2642,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:2643,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/load_text.c:2643,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/load_text.c:2645,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/load_text.c:2645,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2648,1
    - Dst: swf_to_svg_init
      Src: /src/gpac/src/filters/load_text.c:2649,1
    - Dst: txtin_probe_duration
      Src: /src/gpac/src/filters/load_text.c:2653,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_TXTIn*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2656
      start: 2613
    functionDepth: 9
    functionLinenumber: 2613
    functionLinenumberEnd: 2656
    functionName: gf_text_swf_setup
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_swf_reader_set_user_mode
    - txtin_probe_duration
    - PROP_UINT
    - PROP_SINT
    - PROP_STRING
    - GF_LOG
    - gf_filter_pid_set_property_str
    - gf_swf_read_header
    - FIX2INT
    - swf_to_svg_init
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_swf_reader_new
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_text_swf_setup(GF_Filter *filter, GF_TXTIn *ctx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_text_swf_setup
      Src: /src/gpac/src/filters/load_text.c:2666,1
    - Dst: gf_swf_reader_del
      Src: /src/gpac/src/filters/load_text.c:2672,1
    - Dst: gf_swf_reader_new
      Src: /src/gpac/src/filters/load_text.c:2673,1
    - Dst: gf_swf_read_header
      Src: /src/gpac/src/filters/load_text.c:2674,1
    - Dst: gf_swf_reader_set_user_mode
      Src: /src/gpac/src/filters/load_text.c:2675,1
    - Dst: swf_parse_tag
      Src: /src/gpac/src/filters/load_text.c:2681,1
    - Dst: GF_TXTIn*::swf_parse::finalize
      Src: /src/gpac/src/filters/load_text.c:2686,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 3
    argNames:
    - filter
    - ctx
    - ipck
    argTypes:
    - GF_Filter*
    - GF_TXTIn*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2691
      start: 2658
    functionDepth: 13
    functionLinenumber: 2658
    functionLinenumberEnd: 2691
    functionName: gf_text_process_swf
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_swf_reader_set_user_mode
    - swf_parse_tag
    - gf_swf_read_header
    - GF_TXTIn*::swf_parse::finalize
    - gf_swf_reader_del
    - gf_swf_reader_new
    - gf_text_swf_setup
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_text_process_swf(GF_Filter *filter, GF_TXTIn *ctx, GF_FilterPacket
      *ipck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2699,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_TXTIn*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2701
      start: 2697
    functionDepth: 1
    functionLinenumber: 2697
    functionLinenumberEnd: 2701
    functionName: gf_text_process_swf
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_text_process_swf(GF_Filter *filter, GF_TXTIn *ctx)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: txtin_setup_srt
      Src: /src/gpac/src/filters/load_text.c:2720,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/load_text.c:2728,1
    - Dst: gf_text_get_utf8_line
      Src: /src/gpac/src/filters/load_text.c:2741,1
    - Dst: REM_TRAIL_MARKS
      Src: /src/gpac/src/filters/load_text.c:2749,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:2752,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2757,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/load_text.c:2761,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2762,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/load_text.c:2762,1
    - Dst: MIN
      Src: /src/gpac/src/filters/load_text.c:2769,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/load_text.c:2769,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:2770,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2772,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2778,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/load_text.c:2782,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2783,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/load_text.c:2783,1
    - Dst: MIN
      Src: /src/gpac/src/filters/load_text.c:2790,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/load_text.c:2790,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:2791,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2795,1
    - Dst: gf_isom_new_text_sample
      Src: /src/gpac/src/filters/load_text.c:2800,1
    - Dst: txtin_process_send_text_sample
      Src: /src/gpac/src/filters/load_text.c:2801,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/filters/load_text.c:2803,1
    - Dst: gf_isom_new_text_sample
      Src: /src/gpac/src/filters/load_text.c:2816,1
    - Dst: txtin_process_send_text_sample
      Src: /src/gpac/src/filters/load_text.c:2817,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/filters/load_text.c:2818,1
    - Dst: gf_isom_new_text_sample
      Src: /src/gpac/src/filters/load_text.c:2821,1
    - Dst: gf_isom_text_add_text
      Src: /src/gpac/src/filters/load_text.c:2822,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:2822,1
    - Dst: txtin_process_send_text_sample
      Src: /src/gpac/src/filters/load_text.c:2823,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/filters/load_text.c:2824,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/load_text.c:2828,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/load_text.c:2828,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/load_text.c:2828,1
    - Dst: txtin_check_blocking
      Src: /src/gpac/src/filters/load_text.c:2830,1
    - Dst: gf_isom_new_text_sample
      Src: /src/gpac/src/filters/load_text.c:2838,1
    - Dst: txtin_process_send_text_sample
      Src: /src/gpac/src/filters/load_text.c:2839,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/filters/load_text.c:2840,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/load_text.c:2843,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:2843,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 118
    argCount: 3
    argNames:
    - filter
    - ctx
    - ipck
    argTypes:
    - GF_Filter*
    - GF_TXTIn*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2846
      start: 2707
    functionDepth: 7
    functionLinenumber: 2707
    functionLinenumberEnd: 2846
    functionName: gf_text_process_sub
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - atoi
    - gf_isom_text_add_text
    - PROP_LONGUINT
    - REM_TRAIL_MARKS
    - gf_fseek
    - txtin_process_send_text_sample
    - txtin_setup_srt
    - txtin_check_blocking
    - gf_ftell
    - GF_LOG
    - MIN
    - strlen
    - gf_isom_new_text_sample
    - gf_filter_pid_set_info_str
    - gf_filter_pid_set_info
    - PROP_UINT
    - gf_isom_delete_text_sample
    - gf_text_get_utf8_line
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_text_process_sub(GF_Filter *filter, GF_TXTIn *ctx, GF_FilterPacket
      *ipck)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - line
    - ','
    - str
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2851
      start: 2850
    functionDepth: 0
    functionLinenumber: 2850
    functionLinenumberEnd: 2851
    functionName: LINE_CAT
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: LINE_CAT(line, str)
  - BBCount: 59
    BranchProfiles: []
    Callsites:
    - Dst: txtin_setup_srt
      Src: /src/gpac/src/filters/load_text.c:2862,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/load_text.c:2873,1
    - Dst: gf_text_get_utf8_line
      Src: /src/gpac/src/filters/load_text.c:2882,1
    - Dst: REM_TRAIL_MARKS
      Src: /src/gpac/src/filters/load_text.c:2891,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:2894,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_text.c:2898,1
    - Dst: strchr
      Src: /src/gpac/src/filters/load_text.c:2900,1
    - Dst: strchr
      Src: /src/gpac/src/filters/load_text.c:2902,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:2906,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:2908,1
    - Dst: strchr
      Src: /src/gpac/src/filters/load_text.c:2915,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:2919,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:2921,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:2936,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_text.c:2937,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:2938,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_text.c:2939,1
    - Dst: strchr
      Src: /src/gpac/src/filters/load_text.c:2948,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2956,1
    - Dst: txtin_process_send_text_sample
      Src: /src/gpac/src/filters/load_text.c:2962,1
    - Dst: gf_isom_new_text_sample
      Src: /src/gpac/src/filters/load_text.c:2966,1
    - Dst: txtin_process_send_text_sample
      Src: /src/gpac/src/filters/load_text.c:2967,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/filters/load_text.c:2968,1
    - Dst: gf_isom_text_reset
      Src: /src/gpac/src/filters/load_text.c:2974,1
    - Dst: memset
      Src: /src/gpac/src/filters/load_text.c:2976,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:2978,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2985,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:2994,1
    - Dst: parse_srt_line
      Src: /src/gpac/src/filters/load_text.c:2998,1
    - Dst: memset
      Src: /src/gpac/src/filters/load_text.c:3002,1
    - Dst: gf_isom_text_add_text
      Src: /src/gpac/src/filters/load_text.c:3003,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:3016,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:3024,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:3027,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:3030,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/filters/load_text.c:3031,1
    - Dst: LINE_CAT
      Src: /src/gpac/src/filters/load_text.c:3045,1
    - Dst: LINE_CAT
      Src: /src/gpac/src/filters/load_text.c:3046,1
    - Dst: LINE_CAT
      Src: /src/gpac/src/filters/load_text.c:3048,1
    - Dst: LINE_CAT
      Src: /src/gpac/src/filters/load_text.c:3049,1
    - Dst: LINE_CAT
      Src: /src/gpac/src/filters/load_text.c:3051,1
    - Dst: LINE_CAT
      Src: /src/gpac/src/filters/load_text.c:3052,1
    - Dst: LINE_CAT
      Src: /src/gpac/src/filters/load_text.c:3054,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/load_text.c:3057,1
    - Dst: LINE_CAT
      Src: /src/gpac/src/filters/load_text.c:3058,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:3059,1
    - Dst: LINE_CAT
      Src: /src/gpac/src/filters/load_text.c:3062,1
    - Dst: LINE_CAT
      Src: /src/gpac/src/filters/load_text.c:3063,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:3069,1
    - Dst: parse_srt_line
      Src: /src/gpac/src/filters/load_text.c:3077,1
    - Dst: txtin_process_send_text_sample
      Src: /src/gpac/src/filters/load_text.c:3079,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/load_text.c:3082,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/load_text.c:3082,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/load_text.c:3082,1
    - Dst: txtin_check_blocking
      Src: /src/gpac/src/filters/load_text.c:3084,1
    - Dst: gf_isom_new_text_sample
      Src: /src/gpac/src/filters/load_text.c:3091,1
    - Dst: txtin_process_send_text_sample
      Src: /src/gpac/src/filters/load_text.c:3092,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/filters/load_text.c:3093,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/load_text.c:3096,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:3096,1
    CyclomaticComplexity: 91
    EdgeCount: 91
    ICount: 238
    argCount: 3
    argNames:
    - filter
    - ctx
    - ipck
    argTypes:
    - GF_Filter*
    - GF_TXTIn*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3099
      start: 2852
    functionDepth: 7
    functionLinenumber: 2852
    functionLinenumberEnd: 3099
    functionName: gf_text_process_ssa
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_isom_text_add_text
    - strchr
    - PROP_LONGUINT
    - REM_TRAIL_MARKS
    - gf_fseek
    - txtin_process_send_text_sample
    - sprintf
    - strncmp
    - txtin_setup_srt
    - parse_srt_line
    - txtin_check_blocking
    - gf_ftell
    - sscanf
    - GF_LOG
    - strstr
    - GF_COL_ARGB
    - strlen
    - gf_isom_text_reset
    - gf_isom_new_text_sample
    - gf_filter_pid_set_info_str
    - gf_filter_pid_set_info
    - PROP_UINT
    - gf_isom_delete_text_sample
    - gf_text_get_utf8_line
    - LINE_CAT
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_text_process_ssa(GF_Filter *filter, GF_TXTIn *ctx, GF_FilterPacket
      *ipck)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:3107,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:3108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - val
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3118
      start: 3103
    functionDepth: 1
    functionLinenumber: 3103
    functionLinenumberEnd: 3118
    functionName: ttxt_get_color
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - sscanf
    linkageType: ''
    returnType: u32
    signature: u32 ttxt_get_color(char *val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/load_text.c:3124,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3125,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3126,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3126,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3127,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3127,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3128,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3128,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3129,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3129,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - n
    - box
    argTypes:
    - GF_XMLNode*
    - GF_BoxRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3131
      start: 3120
    functionDepth: 2
    functionLinenumber: 3120
    functionLinenumberEnd: 3131
    functionName: ttxt_parse_text_box
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_list_enum
    - atoi
    - stricmp
    linkageType: ''
    returnType: void
    signature: void ttxt_parse_text_box(GF_XMLNode *n, GF_BoxRecord *box)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/load_text.c:3137,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3142,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3143,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3143,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3144,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3144,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3145,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3145,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3146,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3146,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3147,1
    - Dst: ttxt_get_color
      Src: /src/gpac/src/filters/load_text.c:3147,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3148,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:3149,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:3150,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:3151,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:3152,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 27
    argCount: 3
    argNames:
    - ctx
    - n
    - style
    argTypes:
    - GF_TXTIn*
    - GF_XMLNode*
    - GF_StyleRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3155
      start: 3133
    functionDepth: 2
    functionLinenumber: 3133
    functionLinenumberEnd: 3155
    functionName: ttxt_parse_text_style
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - ttxt_get_color
    - strstr
    - memset
    - atoi
    - stricmp
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void ttxt_parse_text_style(GF_TXTIn *ctx, GF_XMLNode *n, GF_StyleRecord
      *style)
  - BBCount: 62
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/filters/load_text.c:3165,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/filters/load_text.c:3166,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:3168,1
    - Dst: gf_xml_dom_get_line
      Src: /src/gpac/src/filters/load_text.c:3168,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/filters/load_text.c:3168,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/load_text.c:3171,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:3173,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3177,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:3178,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/load_text.c:3188,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3189,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:3189,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3190,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:3190,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3191,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:3191,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3192,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/load_text.c:3192,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3193,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3196,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:3196,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3197,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:3197,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_text.c:3199,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_text.c:3203,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3209,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3222,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3223,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3223,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3224,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3224,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3225,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3225,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3226,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3226,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3227,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3227,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3228,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3228,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/load_text.c:3232,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:3232,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3235,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:3235,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3236,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:3236,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3237,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:3237,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3238,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:3238,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3239,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/load_text.c:3239,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3240,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/load_text.c:3240,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3243,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3246,1
    - Dst: memset
      Src: /src/gpac/src/filters/load_text.c:3248,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3255,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3256,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3257,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3258,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3259,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3261,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3262,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3263,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3264,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3266,1
    - Dst: ttxt_get_color
      Src: /src/gpac/src/filters/load_text.c:3266,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3267,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3267,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3268,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3268,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3269,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3269,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3270,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3271,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3272,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3273,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3275,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3277,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3278,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3279,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3280,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3283,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3284,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3284,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3284,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3286,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3292,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3294,1
    - Dst: ttxt_parse_text_box
      Src: /src/gpac/src/filters/load_text.c:3294,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3295,1
    - Dst: ttxt_parse_text_style
      Src: /src/gpac/src/filters/load_text.c:3295,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3296,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3299,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3301,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/load_text.c:3303,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3306,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3307,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3307,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3308,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/load_text.c:3308,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/load_text.c:3324,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/load_text.c:3326,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/load_text.c:3328,1
    - Dst: gf_odf_tx3g_write
      Src: /src/gpac/src/filters/load_text.c:3332,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/load_text.c:3333,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/load_text.c:3334,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:3337,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:3338,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:3348,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_text.c:3351,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3352,1
    - Dst: txtin_probe_duration
      Src: /src/gpac/src/filters/load_text.c:3359,1
    CyclomaticComplexity: 81
    EdgeCount: 81
    ICount: 207
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_TXTIn*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3362
      start: 3157
    functionDepth: 11
    functionLinenumber: 3157
    functionLinenumberEnd: 3362
    functionName: txtin_setup_ttxt
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_free
    - txtin_probe_duration
    - gf_xml_dom_get_root
    - GF_SAFEALLOC
    - PROP_STRING
    - gf_filter_pid_set_property_str
    - gf_list_count
    - memset
    - atoi
    - gf_xml_dom_get_line
    - gf_filter_pid_new
    - PROP_LONGUINT
    - gf_realloc
    - gf_odf_tx3g_write
    - gf_list_get
    - gf_strdup
    - gf_list_new
    - gf_xml_dom_new
    - gf_list_add
    - stricmp
    - ttxt_get_color
    - gf_xml_dom_parse
    - PROP_SINT
    - GF_LOG
    - gf_xml_dom_get_error
    - gf_list_enum
    - gf_filter_pid_set_property
    - gf_malloc
    - ttxt_parse_text_box
    - PROP_UINT
    - strcmp
    - ttxt_parse_text_style
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txtin_setup_ttxt(GF_Filter *filter, GF_TXTIn *ctx)
  - BBCount: 55
    BranchProfiles: []
    Callsites:
    - Dst: txtin_setup_ttxt
      Src: /src/gpac/src/filters/load_text.c:3373,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/load_text.c:3385,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_text.c:3392,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3398,1
    - Dst: gf_isom_new_text_sample
      Src: /src/gpac/src/filters/load_text.c:3400,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3407,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3408,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:3410,1
    - Dst: atof
      Src: /src/gpac/src/filters/load_text.c:3413,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3416,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3416,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3417,1
    - Dst: ttxt_parse_string
      Src: /src/gpac/src/filters/load_text.c:3419,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:3420,1
    - Dst: gf_isom_text_add_text
      Src: /src/gpac/src/filters/load_text.c:3421,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3425,1
    - Dst: gf_isom_text_set_scroll_delay
      Src: /src/gpac/src/filters/load_text.c:3425,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3425,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3426,1
    - Dst: gf_isom_text_set_highlight_color
      Src: /src/gpac/src/filters/load_text.c:3426,1
    - Dst: ttxt_get_color
      Src: /src/gpac/src/filters/load_text.c:3426,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3427,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3427,1
    - Dst: gf_isom_text_set_wrap
      Src: /src/gpac/src/filters/load_text.c:3427,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3428,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3429,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3429,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3429,1
    - Dst: gf_isom_text_set_forced
      Src: /src/gpac/src/filters/load_text.c:3431,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3440,1
    - Dst: ttxt_parse_string
      Src: /src/gpac/src/filters/load_text.c:3443,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:3444,1
    - Dst: gf_isom_text_add_text
      Src: /src/gpac/src/filters/load_text.c:3445,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3451,1
    - Dst: ttxt_parse_text_style
      Src: /src/gpac/src/filters/load_text.c:3453,1
    - Dst: gf_isom_text_add_style
      Src: /src/gpac/src/filters/load_text.c:3454,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3456,1
    - Dst: ttxt_parse_text_box
      Src: /src/gpac/src/filters/load_text.c:3458,1
    - Dst: gf_isom_text_set_box
      Src: /src/gpac/src/filters/load_text.c:3459,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3461,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3465,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3466,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3466,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3467,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3467,1
    - Dst: gf_isom_text_add_highlight
      Src: /src/gpac/src/filters/load_text.c:3469,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3471,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3475,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3476,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3476,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3477,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3477,1
    - Dst: gf_isom_text_add_blink
      Src: /src/gpac/src/filters/load_text.c:3479,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3481,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3487,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3488,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3488,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3489,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3489,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3490,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/load_text.c:3490,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3491,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/load_text.c:3491,1
    - Dst: gf_isom_text_add_hyperlink
      Src: /src/gpac/src/filters/load_text.c:3493,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:3494,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:3495,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3497,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3502,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3503,1
    - Dst: atof
      Src: /src/gpac/src/filters/load_text.c:3503,1
    - Dst: gf_isom_text_add_karaoke
      Src: /src/gpac/src/filters/load_text.c:3505,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3507,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3511,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3515,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3516,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3516,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3517,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3517,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3518,1
    - Dst: atof
      Src: /src/gpac/src/filters/load_text.c:3518,1
    - Dst: gf_isom_text_set_karaoke_segment
      Src: /src/gpac/src/filters/load_text.c:3520,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_text.c:3529,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3530,1
    - Dst: gf_isom_new_text_sample
      Src: /src/gpac/src/filters/load_text.c:3535,1
    - Dst: txtin_process_send_text_sample
      Src: /src/gpac/src/filters/load_text.c:3536,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/filters/load_text.c:3537,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_text.c:3543,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3549,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3552,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3553,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:3555,1
    - Dst: atof
      Src: /src/gpac/src/filters/load_text.c:3558,1
    - Dst: txtin_process_send_text_sample
      Src: /src/gpac/src/filters/load_text.c:3566,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/filters/load_text.c:3568,1
    - Dst: txtin_check_blocking
      Src: /src/gpac/src/filters/load_text.c:3576,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/load_text.c:3588,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/load_text.c:3588,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/load_text.c:3589,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:3589,1
    CyclomaticComplexity: 79
    EdgeCount: 79
    ICount: 201
    argCount: 3
    argNames:
    - filter
    - ctx
    - ipck
    argTypes:
    - GF_Filter*
    - GF_TXTIn*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3593
      start: 3364
    functionDepth: 12
    functionLinenumber: 3364
    functionLinenumberEnd: 3593
    functionName: txtin_process_ttxt
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_xml_dom_get_root
    - atoi
    - gf_isom_text_add_text
    - gf_list_get
    - gf_isom_text_set_highlight_color
    - gf_strdup
    - txtin_process_send_text_sample
    - atof
    - gf_isom_text_add_karaoke
    - gf_isom_text_add_highlight
    - txtin_setup_ttxt
    - gf_isom_text_add_style
    - stricmp
    - PROP_BOOL
    - txtin_check_blocking
    - gf_isom_text_add_hyperlink
    - gf_isom_text_set_karaoke_segment
    - ttxt_get_color
    - sscanf
    - gf_isom_text_add_blink
    - ttxt_parse_string
    - gf_isom_text_set_forced
    - gf_list_enum
    - gf_isom_text_set_scroll_delay
    - gf_isom_text_set_box
    - strlen
    - gf_filter_pid_set_property
    - gf_isom_new_text_sample
    - ttxt_parse_text_box
    - gf_filter_pid_set_info_str
    - PROP_UINT
    - strcmp
    - gf_isom_delete_text_sample
    - ttxt_parse_text_style
    - gf_isom_text_set_wrap
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txtin_process_ttxt(GF_Filter *filter, GF_TXTIn *ctx, GF_FilterPacket
      *ipck)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:3601,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:3602,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - value
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3616
      start: 3596
    functionDepth: 1
    functionLinenumber: 3596
    functionLinenumberEnd: 3616
    functionName: tx3g_get_color
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - sscanf
    linkageType: ''
    returnType: u32
    signature: u32 tx3g_get_color(char *value)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/load_text.c:3622,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3623,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3624,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3624,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3625,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3625,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3626,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3626,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3627,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3627,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - n
    - box
    argTypes:
    - GF_XMLNode*
    - GF_BoxRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3629
      start: 3618
    functionDepth: 2
    functionLinenumber: 3618
    functionLinenumberEnd: 3629
    functionName: tx3g_parse_text_box
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_list_enum
    - atoi
    - stricmp
    linkageType: ''
    returnType: void
    signature: void tx3g_parse_text_box(GF_XMLNode *n, GF_BoxRecord *box)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _val
    - ','
    - __isend
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3641
      start: 3637
    functionDepth: 0
    functionLinenumber: 3637
    functionLinenumberEnd: 3641
    functionName: GET_MARKER_POS
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_MARKER_POS(_val, __isend)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/filters/load_text.c:3653,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/filters/load_text.c:3654,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:3656,1
    - Dst: gf_xml_dom_get_line
      Src: /src/gpac/src/filters/load_text.c:3656,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/filters/load_text.c:3656,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filters/load_text.c:3657,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/load_text.c:3662,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:3664,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filters/load_text.c:3665,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3670,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:3671,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3678,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3679,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3679,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3680,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3680,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3681,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3681,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3682,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3682,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3683,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/load_text.c:3685,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/load_text.c:3695,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3696,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:3696,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3697,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:3697,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3698,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:3698,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3699,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/load_text.c:3699,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3703,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:3703,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3704,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:3704,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3705,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:3705,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3706,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:3706,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3707,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/load_text.c:3707,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3708,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/load_text.c:3708,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_text.c:3711,1
    - Dst: txtin_probe_duration
      Src: /src/gpac/src/filters/load_text.c:3713,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 64
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_TXTIn*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3716
      start: 3645
    functionDepth: 11
    functionLinenumber: 3645
    functionLinenumberEnd: 3716
    functionName: txtin_texml_setup
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - txtin_probe_duration
    - gf_xml_dom_get_root
    - PROP_STRING
    - gf_list_count
    - atoi
    - gf_xml_dom_get_line
    - gf_filter_pid_new
    - PROP_LONGUINT
    - gf_xml_dom_new
    - gf_xml_dom_parse
    - sscanf
    - PROP_SINT
    - GF_LOG
    - gf_xml_dom_get_error
    - gf_list_enum
    - gf_filter_pid_set_property
    - PROP_UINT
    - strcmp
    - gf_xml_dom_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txtin_texml_setup(GF_Filter *filter, GF_TXTIn *ctx)
  - BBCount: 95
    BranchProfiles: []
    Callsites:
    - Dst: txtin_texml_setup
      Src: /src/gpac/src/filters/load_text.c:3731,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/load_text.c:3745,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_text.c:3755,1
    - Dst: memset
      Src: /src/gpac/src/filters/load_text.c:3758,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_text.c:3759,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3761,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3766,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3767,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3767,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3768,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3768,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3774,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3777,1
    - Dst: memset
      Src: /src/gpac/src/filters/load_text.c:3781,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3788,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3789,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3790,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3791,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3792,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3794,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3795,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3796,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3797,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3799,1
    - Dst: tx3g_get_color
      Src: /src/gpac/src/filters/load_text.c:3799,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3800,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:3802,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:3804,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:3805,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:3806,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:3807,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:3812,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3813,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3818,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3820,1
    - Dst: tx3g_parse_text_box
      Src: /src/gpac/src/filters/load_text.c:3820,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3821,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3824,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3826,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/load_text.c:3829,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3830,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3831,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3831,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:3832,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/load_text.c:3832,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3837,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3840,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3842,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/load_text.c:3845,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:3846,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/load_text.c:3847,1
    - Dst: memset
      Src: /src/gpac/src/filters/load_text.c:3853,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3855,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3856,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3856,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3859,1
    - Dst: gf_token_get_strip
      Src: /src/gpac/src/filters/load_text.c:3864,1
    - Dst: gf_token_get_strip
      Src: /src/gpac/src/filters/load_text.c:3866,1
    - Dst: strchr
      Src: /src/gpac/src/filters/load_text.c:3868,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3870,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3872,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3878,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3878,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3879,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3879,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3880,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3880,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3881,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3881,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3882,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3882,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3883,1
    - Dst: tx3g_get_color
      Src: /src/gpac/src/filters/load_text.c:3883,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/load_text.c:3899,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/load_text.c:3901,1
    - Dst: gf_odf_tx3g_write
      Src: /src/gpac/src/filters/load_text.c:3904,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_text.c:3906,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_text.c:3907,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/load_text.c:3909,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:3915,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/load_text.c:3918,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/load_text.c:3923,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/load_text.c:3924,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_text.c:3925,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/load_text.c:3929,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:3930,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:3933,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:3934,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3939,1
    - Dst: gf_isom_new_text_sample
      Src: /src/gpac/src/filters/load_text.c:3946,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3949,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3950,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3950,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3951,1
    - Dst: gf_isom_text_set_scroll_delay
      Src: /src/gpac/src/filters/load_text.c:3951,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3951,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3952,1
    - Dst: gf_isom_text_set_highlight_color
      Src: /src/gpac/src/filters/load_text.c:3952,1
    - Dst: tx3g_get_color
      Src: /src/gpac/src/filters/load_text.c:3952,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3956,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3958,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3962,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3963,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3963,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3968,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3970,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/load_text.c:3971,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:3972,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/load_text.c:3973,1
    - Dst: memset
      Src: /src/gpac/src/filters/load_text.c:3977,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:3981,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:3982,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:3982,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:3987,1
    - Dst: gf_isom_text_add_text
      Src: /src/gpac/src/filters/load_text.c:3988,1
    - Dst: strlen
      Src: /src/gpac/src/filters/load_text.c:3988,1
    - Dst: gf_isom_text_add_style
      Src: /src/gpac/src/filters/load_text.c:4001,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:4005,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:4007,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:4008,1
    - Dst: GET_MARKER_POS
      Src: /src/gpac/src/filters/load_text.c:4008,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:4009,1
    - Dst: GET_MARKER_POS
      Src: /src/gpac/src/filters/load_text.c:4009,1
    - Dst: gf_isom_text_add_highlight
      Src: /src/gpac/src/filters/load_text.c:4011,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:4013,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:4015,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:4016,1
    - Dst: GET_MARKER_POS
      Src: /src/gpac/src/filters/load_text.c:4016,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:4017,1
    - Dst: GET_MARKER_POS
      Src: /src/gpac/src/filters/load_text.c:4017,1
    - Dst: gf_isom_text_add_blink
      Src: /src/gpac/src/filters/load_text.c:4019,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:4021,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:4025,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:4026,1
    - Dst: GET_MARKER_POS
      Src: /src/gpac/src/filters/load_text.c:4026,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:4027,1
    - Dst: GET_MARKER_POS
      Src: /src/gpac/src/filters/load_text.c:4027,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:4028,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:4028,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/load_text.c:4028,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:4029,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:4029,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/load_text.c:4029,1
    - Dst: gf_isom_text_add_hyperlink
      Src: /src/gpac/src/filters/load_text.c:4031,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:4032,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:4033,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/load_text.c:4035,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:4039,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:4040,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:4040,1
    - Dst: gf_isom_text_add_karaoke
      Src: /src/gpac/src/filters/load_text.c:4042,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:4044,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:4047,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/load_text.c:4049,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:4050,1
    - Dst: GET_MARKER_POS
      Src: /src/gpac/src/filters/load_text.c:4050,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:4051,1
    - Dst: GET_MARKER_POS
      Src: /src/gpac/src/filters/load_text.c:4051,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:4052,1
    - Dst: atoi
      Src: /src/gpac/src/filters/load_text.c:4052,1
    - Dst: gf_isom_text_set_karaoke_segment
      Src: /src/gpac/src/filters/load_text.c:4054,1
    - Dst: gf_isom_text_set_box
      Src: /src/gpac/src/filters/load_text.c:4062,1
    - Dst: txtin_process_send_text_sample
      Src: /src/gpac/src/filters/load_text.c:4065,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/filters/load_text.c:4067,1
    - Dst: txtin_check_blocking
      Src: /src/gpac/src/filters/load_text.c:4070,1
    CyclomaticComplexity: 153
    EdgeCount: 153
    ICount: 353
    argCount: 3
    argNames:
    - filter
    - ctx
    - ipck
    argTypes:
    - GF_Filter*
    - GF_TXTIn*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4078
      start: 3718
    functionDepth: 12
    functionLinenumber: 3718
    functionLinenumberEnd: 4078
    functionName: txtin_process_texml
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_free
    - memcmp
    - gf_xml_dom_get_root
    - GF_SAFEALLOC
    - tx3g_get_color
    - gf_list_count
    - memset
    - atoi
    - gf_isom_text_add_text
    - strchr
    - gf_realloc
    - gf_odf_tx3g_write
    - gf_list_get
    - gf_strdup
    - gf_list_new
    - gf_isom_text_set_highlight_color
    - txtin_process_send_text_sample
    - gf_isom_text_add_karaoke
    - gf_isom_text_add_highlight
    - gf_list_add
    - gf_isom_text_add_style
    - stricmp
    - txtin_texml_setup
    - txtin_check_blocking
    - gf_isom_text_add_hyperlink
    - gf_isom_text_set_karaoke_segment
    - tx3g_parse_text_box
    - GF_LOG
    - gf_isom_text_add_blink
    - strstr
    - gf_list_enum
    - gf_isom_text_set_scroll_delay
    - gf_token_get_strip
    - gf_malloc
    - gf_filter_pid_set_property
    - strlen
    - gf_isom_new_text_sample
    - GET_MARKER_POS
    - gf_isom_text_set_box
    - strcmp
    - gf_isom_delete_text_sample
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txtin_process_texml(GF_Filter *filter, GF_TXTIn *ctx, GF_FilterPacket
      *ipck)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/load_text.c:4089,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/load_text.c:4090,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/load_text.c:4092,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/load_text.c:4099,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/load_text.c:4100,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/load_text.c:4102,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/load_text.c:4103,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/load_text.c:4104,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/load_text.c:4105,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/load_text.c:4106,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/load_text.c:4107,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/load_text.c:4108,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/load_text.c:4111,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/load_text.c:4114,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/load_text.c:4115,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/load_text.c:4116,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/load_text.c:4117,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/load_text.c:4118,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/load_text.c:4119,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/load_text.c:4121,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/load_text.c:4122,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/load_text.c:4124,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/load_text.c:4126,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/load_text.c:4127,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/load_text.c:4130,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 44
    argCount: 3
    argNames:
    - filter
    - ctx
    - ipck
    argTypes:
    - GF_Filter*
    - GF_TXTIn*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4131
      start: 4080
    functionDepth: 6
    functionLinenumber: 4080
    functionLinenumberEnd: 4131
    functionName: txtin_process_simple
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_ref
    - gf_bs_new
    - gf_timestamp_rescale_signed
    - gf_bs_write_u32
    - memcpy
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_duration
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - gf_filter_pck_set_duration
    - gf_bs_write_data
    - gf_filter_pck_set_sap
    - gf_timestamp_rescale
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_merge_properties
    - gf_bs_del
    - gf_filter_pck_set_framing
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txtin_process_simple(GF_Filter *filter, GF_TXTIn *ctx, GF_FilterPacket
      *ipck)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/load_text.c:4137,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/load_text.c:4142,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/load_text.c:4148,1
    - Dst: gf_webvtt_parser_flush
      Src: /src/gpac/src/filters/load_text.c:4152,1
    - Dst: gf_isom_text_reset
      Src: /src/gpac/src/filters/load_text.c:4157,1
    - Dst: txtin_process_send_text_sample
      Src: /src/gpac/src/filters/load_text.c:4158,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/load_text.c:4162,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/load_text.c:4171,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/load_text.c:4173,1
    - Dst: memset
      Src: /src/gpac/src/filters/load_text.c:4178,1
    - Dst: gf_blob_register
      Src: /src/gpac/src/filters/load_text.c:4181,1
    - Dst: gf_text_guess_format
      Src: /src/gpac/src/filters/load_text.c:4183,1
    - Dst: gf_blob_unregister
      Src: /src/gpac/src/filters/load_text.c:4184,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:4185,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/load_text.c:4187,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/load_text.c:4188,1
    - Dst: txtin_configure_pid_ex
      Src: /src/gpac/src/filters/load_text.c:4191,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/load_text.c:4193,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/load_text.c:4202,1
    - Dst: GF_TXTIn*::text_process
      Src: /src/gpac/src/filters/load_text.c:4208,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/load_text.c:4209,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/load_text.c:4217,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/load_text.c:4219,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/load_text.c:4223,1
    - Dst: gf_blob_register
      Src: /src/gpac/src/filters/load_text.c:4226,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/load_text.c:4232,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/filters/load_text.c:4241,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/load_text.c:4244,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/load_text.c:4246,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/load_text.c:4249,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/load_text.c:4250,1
    - Dst: GF_TXTIn*::text_process
      Src: /src/gpac/src/filters/load_text.c:4260,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/load_text.c:4264,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/load_text.c:4266,1
    - Dst: memmove
      Src: /src/gpac/src/filters/load_text.c:4271,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/load_text.c:4283,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/load_text.c:4289,1
    - Dst: GF_TXTIn*::text_process
      Src: /src/gpac/src/filters/load_text.c:4296,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/load_text.c:4300,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/load_text.c:4302,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/load_text.c:4304,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:4304,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/load_text.c:4305,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:4305,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/load_text.c:4307,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 152
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4311
      start: 4135
    functionDepth: 6
    functionLinenumber: 4135
    functionLinenumberEnd: 4311
    functionName: txtin_process
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_text_guess_format
    - gf_fwrite
    - memset
    - gf_filter_pid_get_packet
    - gf_realloc
    - gf_filter_pck_get_framing
    - gf_fseek
    - txtin_process_send_text_sample
    - memcpy
    - txtin_configure_pid_ex
    - GF_TXTIn*::text_process
    - gf_file_temp
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_duration
    - gf_filter_get_udta
    - gf_ftell
    - gf_filter_pid_drop_packet
    - memmove
    - gf_filter_pck_get_data
    - gf_filter_pid_set_eos
    - gf_blob_register
    - gf_filter_setup_failure
    - gf_filter_pid_is_eos
    - gf_isom_text_reset
    - gf_fclose
    - gf_filter_pid_set_info
    - PROP_UINT
    - gf_webvtt_parser_flush
    - gf_blob_unregister
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txtin_process(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/filters/load_text.c:4315,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/load_text.c:4317,1
    - Dst: gf_webvtt_parser_del
      Src: /src/gpac/src/filters/load_text.c:4320,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filters/load_text.c:4323,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/filters/load_text.c:4325,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_TXTIn*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4327
      start: 4313
    functionDepth: 8
    functionLinenumber: 4313
    functionLinenumberEnd: 4327
    functionName: ttxtin_reset
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_xml_dom_node_del
    - gf_webvtt_parser_del
    - gf_isom_delete_text_sample
    - gf_xml_dom_del
    linkageType: ''
    returnType: void
    signature: void ttxtin_reset(GF_TXTIn *ctx)
  - BBCount: 67
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/load_text.c:4334,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/load_text.c:4345,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/load_text.c:4353,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_text.c:4356,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_text.c:4359,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_text.c:4364,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_text.c:4373,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_text.c:4381,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/load_text.c:4387,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_text.c:4388,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_text.c:4392,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_text.c:4396,1
    - Dst: strstr
      Src: /src/gpac/src/filters/load_text.c:4398,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/load_text.c:4410,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/load_text.c:4414,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:4415,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/load_text.c:4416,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/load_text.c:4418,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/load_text.c:4428,1
    - Dst: ttxtin_reset
      Src: /src/gpac/src/filters/load_text.c:4430,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:4432,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/load_text.c:4433,1
    - Dst: gf_text_guess_format
      Src: /src/gpac/src/filters/load_text.c:4439,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/load_text.c:4442,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/load_text.c:4472,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/load_text.c:4483,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:4484,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:4484,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:4501,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:4501,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:4502,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:4503,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_text.c:4504,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:4505,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:4505,1
    - Dst: txtin_setup_srt
      Src: /src/gpac/src/filters/load_text.c:4560,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:4563,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/load_text.c:4563,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_text.c:4568,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_text.c:4570,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_text.c:4570,1
    CyclomaticComplexity: 81
    EdgeCount: 81
    ICount: 215
    argCount: 4
    argNames:
    - filter
    - pid
    - is_remove
    - force_fmt
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4574
      start: 4329
    functionDepth: 9
    functionLinenumber: 4329
    functionLinenumberEnd: 4574
    functionName: txtin_configure_pid_ex
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 1
    functionsReached:
    - gf_free
    - ttxtin_reset
    - gf_text_guess_format
    - gf_filter_pid_check_caps
    - PROP_DATA
    - gf_filter_pid_new
    - gf_strdup
    - GF_FEVT_INIT
    - txtin_setup_srt
    - gf_filter_get_udta
    - gf_filter_pid_copy_properties
    - GF_LOG
    - strstr
    - gf_filter_pid_send_event
    - gf_filter_pid_set_property
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_set_framing_mode
    - strcmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txtin_configure_pid_ex(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove, u32 force_fmt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: txtin_configure_pid_ex
      Src: /src/gpac/src/filters/load_text.c:4578,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4579
      start: 4576
    functionDepth: 10
    functionLinenumber: 4576
    functionLinenumberEnd: 4579
    functionName: txtin_configure_pid
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - txtin_configure_pid_ex
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txtin_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/load_text.c:4582,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/load_text.c:4589,1
    - Dst: ttxtin_reset
      Src: /src/gpac/src/filters/load_text.c:4595,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/load_text.c:4597,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4615
      start: 4580
    functionDepth: 9
    functionLinenumber: 4580
    functionLinenumberEnd: 4615
    functionName: txtin_process_event
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - ttxtin_reset
    - gf_filter_post_process_task
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool txtin_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/load_text.c:4620,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/load_text.c:4621,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4626
      start: 4617
    functionDepth: 1
    functionLinenumber: 4617
    functionLinenumberEnd: 4626
    functionName: txtin_initialize
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err txtin_initialize(GF_Filter *filter)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/load_text.c:4630,1
    - Dst: ttxtin_reset
      Src: /src/gpac/src/filters/load_text.c:4632,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/load_text.c:4634,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_text.c:4637,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/load_text.c:4638,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:4639,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:4640,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/load_text.c:4642,1
    - Dst: gf_swf_reader_del
      Src: /src/gpac/src/filters/load_text.c:4645,1
    - Dst: ttml_reset_intervals
      Src: /src/gpac/src/filters/load_text.c:4649,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/load_text.c:4650,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_text.c:4653,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/load_text.c:4654,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:4655,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:4656,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/load_text.c:4658,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/load_text.c:4661,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:4663,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:4664,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:4665,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4666
      start: 4628
    functionDepth: 9
    functionLinenumber: 4628
    functionLinenumberEnd: 4666
    functionName: txtin_finalize
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - ttxtin_reset
    - gf_free
    - gf_list_pop_back
    - gf_bs_del
    - gf_list_count
    - ttml_reset_intervals
    - gf_swf_reader_del
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void txtin_finalize(GF_Filter *filter)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_utf_get_string_from_bom
      Src: /src/gpac/src/filters/load_text.c:4675,1
    - Dst: strchr
      Src: /src/gpac/src/filters/load_text.c:4680,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_text.c:4691,1
    - Dst: PROBE_OK
      Src: /src/gpac/src/filters/load_text.c:4692,1
    - Dst: gf_strmemstr
      Src: /src/gpac/src/filters/load_text.c:4694,1
    - Dst: PROBE_OK
      Src: /src/gpac/src/filters/load_text.c:4695,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_text.c:4697,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_text.c:4697,1
    - Dst: PROBE_OK
      Src: /src/gpac/src/filters/load_text.c:4698,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/load_text.c:4700,1
    - Dst: PROBE_OK
      Src: /src/gpac/src/filters/load_text.c:4701,1
    - Dst: gf_strmemstr
      Src: /src/gpac/src/filters/load_text.c:4704,1
    - Dst: PROBE_OK
      Src: /src/gpac/src/filters/load_text.c:4705,1
    - Dst: gf_strmemstr
      Src: /src/gpac/src/filters/load_text.c:4709,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:4710,1
    - Dst: gf_strmemstr
      Src: /src/gpac/src/filters/load_text.c:4714,1
    - Dst: gf_strmemstr
      Src: /src/gpac/src/filters/load_text.c:4714,1
    - Dst: PROBE_OK
      Src: /src/gpac/src/filters/load_text.c:4715,1
    - Dst: gf_strmemstr
      Src: /src/gpac/src/filters/load_text.c:4717,1
    - Dst: PROBE_OK
      Src: /src/gpac/src/filters/load_text.c:4718,1
    - Dst: gf_strmemstr
      Src: /src/gpac/src/filters/load_text.c:4720,1
    - Dst: gf_strmemstr
      Src: /src/gpac/src/filters/load_text.c:4720,1
    - Dst: PROBE_OK
      Src: /src/gpac/src/filters/load_text.c:4721,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_text.c:4724,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 40
    argCount: 3
    argNames:
    - data
    - data_size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4726
      start: 4669
    functionDepth: 3
    functionLinenumber: 4669
    functionLinenumberEnd: 4726
    functionName: txtin_probe_data
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - gf_utf_get_string_from_bom
    - gf_free
    - PROBE_OK
    - strncmp
    - gf_strmemstr
    - strchr
    linkageType: ''
    returnType: char
    signature: char *txtin_probe_data(const u8 *data, u32 data_size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _score
    - ','
    - _mime
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4690
      start: 4685
    functionDepth: 0
    functionLinenumber: 4685
    functionLinenumberEnd: 4690
    functionName: PROBE_OK
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PROBE_OK(_score, _mime)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4766
      start: 4765
    functionDepth: 0
    functionLinenumber: 4765
    functionLinenumberEnd: 4766
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4877
      start: 4874
    functionDepth: 0
    functionLinenumber: 4874
    functionLinenumberEnd: 4877
    functionName: txtin_register
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *txtin_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/load_text.c:4881,1
    - Dst: txtin_initialize
      Src: /src/gpac/src/filters/load_text.c:4882,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4885
      start: 4879
    functionDepth: 2
    functionLinenumber: 4879
    functionLinenumberEnd: 4885
    functionName: vtt2tx3g_initialize
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - txtin_initialize
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vtt2tx3g_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4899
      start: 4898
    functionDepth: 0
    functionLinenumber: 4898
    functionLinenumberEnd: 4899
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4936
      start: 4933
    functionDepth: 0
    functionLinenumber: 4933
    functionLinenumberEnd: 4936
    functionName: vtt2tx3g_register
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *vtt2tx3g_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/load_text.c:4940,1
    - Dst: txtin_initialize
      Src: /src/gpac/src/filters/load_text.c:4941,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4944
      start: 4938
    functionDepth: 2
    functionLinenumber: 4938
    functionLinenumberEnd: 4944
    functionName: rfsrt_initialize
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached:
    - txtin_initialize
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rfsrt_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4959
      start: 4958
    functionDepth: 0
    functionLinenumber: 4958
    functionLinenumberEnd: 4959
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4991
      start: 4988
    functionDepth: 0
    functionLinenumber: 4988
    functionLinenumberEnd: 4991
    functionName: rfsrt_register
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfsrt_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4997
      start: 4994
    functionDepth: 0
    functionLinenumber: 4994
    functionLinenumberEnd: 4997
    functionName: txtin_register
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *txtin_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5002
      start: 4999
    functionDepth: 0
    functionLinenumber: 4999
    functionLinenumberEnd: 5002
    functionName: vtt2tx3g_register
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *vtt2tx3g_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5007
      start: 5004
    functionDepth: 0
    functionLinenumber: 5004
    functionLinenumberEnd: 5007
    functionName: rfsrt_register
    functionSourceFile: /src/gpac/src/filters/load_text.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfsrt_register(GF_FilterSession *session)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_qcp.c:86,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/reframe_qcp.c:91,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/reframe_qcp.c:96,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 101
    functionName: qcpdmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/reframe_qcp.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_check_caps
    - gf_filter_pid_remove
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err qcpdmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_qcp.c:122,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_qcp.c:123,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/reframe_qcp.c:130,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/reframe_qcp.c:132,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/filters/reframe_qcp.c:141,1
    - Dst: qcpdmx_process_header
      Src: /src/gpac/src/filters/reframe_qcp.c:143,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_qcp.c:145,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/reframe_qcp.c:145,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_qcp.c:148,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_qcp.c:150,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:151,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_qcp.c:152,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_qcp.c:154,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_qcp.c:155,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_qcp.c:156,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_qcp.c:163,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/reframe_qcp.c:164,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/reframe_qcp.c:169,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/reframe_qcp.c:177,1
    - Dst: gf_fgetc
      Src: /src/gpac/src/filters/reframe_qcp.c:180,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/reframe_qcp.c:188,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/reframe_qcp.c:192,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_qcp.c:201,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_qcp.c:209,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/reframe_qcp.c:210,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_qcp.c:216,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_qcp.c:216,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_qcp.c:217,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_qcp.c:217,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_qcp.c:220,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_qcp.c:222,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_qcp.c:222,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 99
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_QCPDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 105
    functionDepth: 7
    functionLinenumber: 105
    functionLinenumberEnd: 223
    functionName: qcpdmx_check_dur
    functionSourceFile: /src/gpac/src/filters/reframe_qcp.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - qcpdmx_process_header
    - gf_fileio_is_main_thread
    - PROP_FRAC64
    - gf_bs_available
    - gf_realloc
    - gf_fseek
    - strncmp
    - PROP_BOOL
    - gf_bs_skip_bytes
    - gf_ftell
    - GF_LOG
    - gf_error_to_string
    - gf_bs_from_file
    - gf_filter_pid_set_property
    - gf_bs_read_u32_le
    - gf_fclose
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_bs_del
    - gf_fopen_ex
    - gf_fgetc
    linkageType: ''
    returnType: void
    signature: void qcpdmx_check_dur(GF_Filter *filter, GF_QCPDmxCtx *ctx)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_qcp.c:230,1
    - Dst: qcpdmx_check_dur
      Src: /src/gpac/src/filters/reframe_qcp.c:242,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_qcp.c:268,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_qcp.c:270,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 46
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 225
    functionDepth: 8
    functionLinenumber: 225
    functionLinenumberEnd: 288
    functionName: qcpdmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_qcp.c
    functionUses: 0
    functionsReached:
    - qcpdmx_check_dur
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool qcpdmx_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_qcp.c:304,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:306,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_qcp.c:307,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_qcp.c:308,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_qcp.c:309,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_qcp.c:312,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:313,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_qcp.c:314,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:315,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_qcp.c:316,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_qcp.c:317,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_qcp.c:318,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_qcp.c:321,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_qcp.c:323,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:326,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_qcp.c:327,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_qcp.c:328,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_qcp.c:329,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_qcp.c:332,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_qcp.c:334,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_qcp.c:335,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:338,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/filters/reframe_qcp.c:340,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:342,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/filters/reframe_qcp.c:345,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/filters/reframe_qcp.c:346,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/filters/reframe_qcp.c:347,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/filters/reframe_qcp.c:348,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/filters/reframe_qcp.c:349,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_qcp.c:350,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_qcp.c:352,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_qcp.c:358,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_qcp.c:359,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_qcp.c:362,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_qcp.c:364,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_qcp.c:365,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_qcp.c:367,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_qcp.c:367,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_qcp.c:369,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_qcp.c:371,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_qcp.c:374,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_qcp.c:375,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:379,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_qcp.c:380,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_qcp.c:381,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_qcp.c:382,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_qcp.c:385,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_qcp.c:387,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_qcp.c:388,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_qcp.c:390,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_qcp.c:391,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_qcp.c:395,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_qcp.c:398,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_qcp.c:399,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_qcp.c:400,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_qcp.c:400,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_qcp.c:401,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_qcp.c:401,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_qcp.c:402,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_qcp.c:402,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_qcp.c:403,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_qcp.c:403,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_qcp.c:404,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_qcp.c:404,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_qcp.c:405,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_qcp.c:405,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_qcp.c:406,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_qcp.c:406,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_qcp.c:407,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_qcp.c:407,1
    - Dst: qcpdmx_check_dur
      Src: /src/gpac/src/filters/reframe_qcp.c:409,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 108
    argCount: 5
    argNames:
    - filter
    - ctx
    - data
    - size
    - file_bs
    argTypes:
    - GF_Filter*
    - GF_QCPDmxCtx*
    - char*
    - u32
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 296
    functionDepth: 8
    functionLinenumber: 296
    functionLinenumberEnd: 413
    functionName: qcpdmx_process_header
    functionSourceFile: /src/gpac/src/filters/reframe_qcp.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_data
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_bs_new
    - gf_bs_seek
    - PROP_UINT
    - GF_LOG
    - gf_filter_pid_set_property
    - gf_bs_del
    - strncmp
    - strnicmp
    - gf_bs_read_u16_le
    - gf_bs_read_u8
    - gf_filter_pid_new
    - qcpdmx_check_dur
    - gf_bs_read_u32_le
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err qcpdmx_process_header(GF_Filter *filter, GF_QCPDmxCtx *ctx,
      char *data, u32 size, GF_BitStream *file_bs)
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_qcp.c:417,1
    - Dst: qcpdmx_check_dur
      Src: /src/gpac/src/filters/reframe_qcp.c:425,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_qcp.c:432,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_qcp.c:434,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_qcp.c:436,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_qcp.c:437,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_qcp.c:443,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_qcp.c:444,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_qcp.c:459,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_qcp.c:461,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_qcp.c:463,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_qcp.c:464,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_qcp.c:465,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_qcp.c:467,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_qcp.c:469,1
    - Dst: assert
      Src: /src/gpac/src/filters/reframe_qcp.c:471,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_qcp.c:475,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_qcp.c:485,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_qcp.c:509,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_qcp.c:511,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_qcp.c:513,1
    - Dst: qcpdmx_process_header
      Src: /src/gpac/src/filters/reframe_qcp.c:518,1
    - Dst: qcpdmx_process_header
      Src: /src/gpac/src/filters/reframe_qcp.c:520,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/reframe_qcp.c:527,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_qcp.c:529,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_qcp.c:538,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_qcp.c:553,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_qcp.c:555,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_qcp.c:557,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_qcp.c:562,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_qcp.c:564,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_qcp.c:568,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_qcp.c:570,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:574,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_qcp.c:575,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_qcp.c:582,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_qcp.c:597,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_qcp.c:632,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_qcp.c:634,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_qcp.c:636,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_qcp.c:637,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_qcp.c:638,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_qcp.c:639,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_qcp.c:641,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_qcp.c:643,1
    - Dst: assert
      Src: /src/gpac/src/filters/reframe_qcp.c:646,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_qcp.c:651,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/reframe_qcp.c:663,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_qcp.c:668,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 201
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts:
    - condition: (ctx->data_chunk_remain >= to_send)
      pos:
        line_end: 470
        line_start: 470
        source_file: /src/gpac/src/filters/reframe_qcp.c
    - condition: (ctx->data_chunk_remain >= size)
      pos:
        line_end: 645
        line_start: 645
        source_file: /src/gpac/src/filters/reframe_qcp.c
    constantsTouched: []
    func_position:
      end: 671
      start: 415
    functionDepth: 9
    functionLinenumber: 415
    functionLinenumberEnd: 671
    functionName: qcpdmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_qcp.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - qcpdmx_process_header
    - gf_bs_new
    - gf_filter_pid_get_packet
    - gf_realloc
    - gf_assert
    - gf_filter_pck_set_byte_offset
    - memcpy
    - gf_filter_get_udta
    - gf_filter_pck_new_alloc
    - gf_filter_pid_drop_packet
    - gf_filter_pck_get_data
    - assert
    - gf_filter_pck_set_duration
    - gf_filter_pid_set_eos
    - gf_filter_pid_would_block
    - strnicmp
    - gf_filter_pck_set_sap
    - gf_filter_setup_failure
    - gf_filter_pid_is_eos
    - gf_bs_reassign_buffer
    - gf_bs_read_u32_le
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_framing
    - gf_filter_pck_get_byte_offset
    - qcpdmx_check_dur
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err qcpdmx_process(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_qcp.c:675,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_qcp.c:676,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_qcp.c:677,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_qcp.c:678,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 673
    functionDepth: 3
    functionLinenumber: 673
    functionLinenumberEnd: 679
    functionName: qcpdmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_qcp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void qcpdmx_finalize(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_qcp.c:688,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:691,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_qcp.c:695,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_qcp.c:698,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:699,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_qcp.c:700,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_qcp.c:705,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 681
    functionDepth: 6
    functionLinenumber: 681
    functionLinenumberEnd: 709
    functionName: qcpdmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_qcp.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_new
    - gf_bs_del
    - strnicmp
    - gf_bs_read_u32_le
    linkageType: ''
    returnType: char
    signature: char *qcpdmx_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 726
      start: 725
    functionDepth: 0
    functionLinenumber: 725
    functionLinenumberEnd: 726
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/reframe_qcp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 752
      start: 749
    functionDepth: 0
    functionLinenumber: 749
    functionLinenumberEnd: 752
    functionName: rfqcp_register
    functionSourceFile: /src/gpac/src/filters/reframe_qcp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfqcp_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 757
      start: 754
    functionDepth: 0
    functionLinenumber: 754
    functionLinenumberEnd: 757
    functionName: rfqcp_register
    functionSourceFile: /src/gpac/src/filters/reframe_qcp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *rfqcp_register(GF_FilterSession *session)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_uncv.c:172,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_uncv.c:174,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_uncv.c:176,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_uncv.c:178,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_uncv.c:179,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_uncv.c:180,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_uncv.c:182,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - UNCVConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 183
    functionName: uncv_del
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void uncv_del(UNCVConfig *cfg)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_uncv.c:189,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_uncv.c:190,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_uncv.c:191,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:197,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_uncv.c:199,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:207,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_uncv.c:209,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 44
    argCount: 1
    argNames:
    - uncv
    argTypes:
    - UNCVConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 222
    functionName: uncv_load_profile
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    - GF_4CC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err uncv_load_profile(UNCVConfig *uncv)
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_uncv.c:236,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_uncv.c:240,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dec_uncv.c:241,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_uncv.c:242,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_uncv.c:243,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_uncv.c:244,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_uncv.c:246,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_uncv.c:249,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:255,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_uncv.c:256,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dec_uncv.c:262,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/filters/dec_uncv.c:264,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_uncv.c:268,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:270,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_uncv.c:271,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_uncv.c:272,1
    - Dst: uncv_load_profile
      Src: /src/gpac/src/filters/dec_uncv.c:274,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_uncv.c:280,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:286,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_uncv.c:291,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dec_uncv.c:293,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:294,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:295,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:296,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:298,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:299,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:300,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_uncv.c:301,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_uncv.c:302,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_uncv.c:303,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_uncv.c:304,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_uncv.c:305,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_uncv.c:306,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_uncv.c:307,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_uncv.c:308,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_uncv.c:309,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_uncv.c:310,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_uncv.c:311,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_uncv.c:316,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:321,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_uncv.c:325,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dec_uncv.c:326,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_uncv.c:332,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:339,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_uncv.c:344,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_uncv.c:347,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:348,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:349,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_uncv.c:356,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:363,1
    - Dst: uncv_get_val
      Src: /src/gpac/src/filters/dec_uncv.c:372,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/dec_uncv.c:373,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_uncv.c:376,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:378,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_uncv.c:384,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dec_uncv.c:385,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dec_uncv.c:386,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:392,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_uncv.c:400,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/filters/dec_uncv.c:401,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_uncv.c:405,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/filters/dec_uncv.c:407,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dec_uncv.c:410,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_uncv.c:412,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:416,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:421,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:428,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:435,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:440,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:444,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:451,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:456,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:462,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:467,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:471,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:478,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:484,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:491,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:495,1
    - Dst: uncv_del
      Src: /src/gpac/src/filters/dec_uncv.c:500,1
    CyclomaticComplexity: 81
    EdgeCount: 81
    ICount: 263
    argCount: 3
    argNames:
    - dsi
    - dsi_size
    - out_err
    argTypes:
    - u8*
    - u32
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 224
    functionDepth: 7
    functionLinenumber: 224
    functionLinenumberEnd: 504
    functionName: uncv_parse_config
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - GF_SAFEALLOC
    - uncv_load_profile
    - memset
    - gf_bs_read_u16
    - gf_bs_available
    - gf_bs_read_utf8
    - gf_bs_read_u32
    - uncv_get_val
    - gf_bs_skip_bytes
    - GF_LOG
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_read_float
    - gf_bs_read_u8
    - gf_bs_is_overflow
    - gf_malloc
    - gf_bs_del
    - gf_bs_read_int
    - uncv_del
    - GF_4CC
    linkageType: ''
    returnType: UNCVConfig
    signature: UNCVConfig *uncv_parse_config(u8 *dsi, u32 dsi_size, GF_Err *out_err)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/gpac/src/filters/dec_uncv.c:512,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dec_uncv.c:512,1
    - Dst: uncv_parse_config
      Src: /src/gpac/src/filters/dec_uncv.c:516,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dec_uncv.c:520,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dec_uncv.c:520,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dec_uncv.c:526,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dec_uncv.c:527,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dec_uncv.c:527,1
    - Dst: strcat
      Src: /src/gpac/src/filters/dec_uncv.c:528,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dec_uncv.c:534,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dec_uncv.c:534,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dec_uncv.c:534,1
    - Dst: uncv_del
      Src: /src/gpac/src/filters/dec_uncv.c:536,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 4
    argNames:
    - szCodec
    - subtype
    - dsi
    - dsi_size
    argTypes:
    - char*
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 538
      start: 507
    functionDepth: 8
    functionLinenumber: 507
    functionLinenumberEnd: 538
    functionName: rfc_6381_get_codec_uncv
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 1
    functionsReached:
    - strcat
    - gf_4cc_to_str
    - uncv_parse_config
    - snprintf
    - sprintf
    - uncv_del
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rfc_6381_get_codec_uncv(char *szCodec, u32 subtype, u8 *dsi,
      u32 dsi_size)
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 11
    argNames:
    - type
    - has_mono
    - has_yuv
    - has_rgb
    - has_alpha
    - has_depth
    - has_disp
    - has_pal
    - has_fa
    - has_pad
    - has_non_int
    argTypes:
    - u32
    - Bool*
    - Bool*
    - Bool*
    - Bool*
    - Bool*
    - Bool*
    - Bool*
    - Bool*
    - Bool*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 562
      start: 541
    functionDepth: 0
    functionLinenumber: 541
    functionLinenumberEnd: 562
    functionName: uncv_check_comp_type
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void uncv_check_comp_type(u32 type, Bool *has_mono, Bool *has_yuv,
      Bool *has_rgb, Bool *has_alpha, Bool *has_depth, Bool *has_disp, Bool *has_pal,
      Bool *has_fa, Bool *has_pad, Bool *has_non_int)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: uncv_check_comp_type
      Src: /src/gpac/src/filters/dec_uncv.c:567,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 12
    argNames:
    - comps
    - nb_comps
    - has_mono
    - has_yuv
    - has_rgb
    - has_alpha
    - has_depth
    - has_disp
    - has_pal
    - has_fa
    - has_pad
    - has_non_int
    argTypes:
    - UNCVComponentInfo*
    - u32
    - Bool*
    - Bool*
    - Bool*
    - Bool*
    - Bool*
    - Bool*
    - Bool*
    - Bool*
    - Bool*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 563
    functionDepth: 1
    functionLinenumber: 563
    functionLinenumberEnd: 570
    functionName: uncv_check_comps_type
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - uncv_check_comp_type
    linkageType: ''
    returnType: void
    signature: void uncv_check_comps_type(UNCVComponentInfo *comps, u32 nb_comps,
      Bool *has_mono, Bool *has_yuv, Bool *has_rgb, Bool *has_alpha, Bool *has_depth,
      Bool *has_disp, Bool *has_pal, Bool *has_fa, Bool *has_pad, Bool *has_non_int)
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: uncv_check_comps_type
      Src: /src/gpac/src/filters/dec_uncv.c:579,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_uncv.c:582,1
    - Dst: uncv_check_comps_type
      Src: /src/gpac/src/filters/dec_uncv.c:583,1
    - Dst: uncv_check_comp_type
      Src: /src/gpac/src/filters/dec_uncv.c:589,1
    CyclomaticComplexity: 158
    EdgeCount: 158
    ICount: 105
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - UNCVDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 716
      start: 572
    functionDepth: 2
    functionLinenumber: 572
    functionLinenumberEnd: 716
    functionName: uncv_get_compat
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - uncv_check_comps_type
    - gf_assert
    - uncv_check_comp_type
    linkageType: ''
    returnType: u32
    signature: u32 uncv_get_compat(UNCVDecCtx *ctx)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 41
    argCount: 3
    argNames:
    - ctx
    - comp_bits
    - clen
    argTypes:
    - UNCVDecCtx*
    - u32*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 774
      start: 718
    functionDepth: 0
    functionLinenumber: 718
    functionLinenumberEnd: 774
    functionName: uncv_get_line_size
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 uncv_get_line_size(UNCVDecCtx *ctx, u32 *comp_bits, u32 clen)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: uncv_del
      Src: /src/gpac/src/filters/dec_uncv.c:778,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_uncv.c:784,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_uncv.c:785,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_uncv.c:786,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_uncv.c:787,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_uncv.c:789,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_uncv.c:793,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_uncv.c:797,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_uncv.c:801,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - UNCVDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 804
      start: 776
    functionDepth: 3
    functionLinenumber: 776
    functionLinenumberEnd: 804
    functionName: uncv_reset
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - gf_free
    - uncv_del
    - gf_bs_del
    linkageType: ''
    returnType: void
    signature: void uncv_reset(UNCVDecCtx *ctx)
  - BBCount: 66
    BranchProfiles: []
    Callsites:
    - Dst: uncv_reset
      Src: /src/gpac/src/filters/dec_uncv.c:810,1
    - Dst: uncv_parse_config
      Src: /src/gpac/src/filters/dec_uncv.c:812,1
    - Dst: uncv_get_compat
      Src: /src/gpac/src/filters/dec_uncv.c:823,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:841,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:844,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/dec_uncv.c:844,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:864,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:872,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:877,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:883,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:887,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:892,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:898,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:906,1
    - Dst: uncv_get_line_size
      Src: /src/gpac/src/filters/dec_uncv.c:978,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:990,1
    - Dst: uncv_get_line_size
      Src: /src/gpac/src/filters/dec_uncv.c:997,1
    - Dst: uncv_get_line_size
      Src: /src/gpac/src/filters/dec_uncv.c:1049,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_uncv.c:1050,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:1057,1
    - Dst: gf_floor
      Src: /src/gpac/src/filters/dec_uncv.c:1080,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:1092,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_uncv.c:1093,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_uncv.c:1096,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:1099,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_uncv.c:1100,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:1104,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:1113,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_uncv.c:1114,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:1117,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_uncv.c:1118,1
    CyclomaticComplexity: 103
    EdgeCount: 103
    ICount: 253
    argCount: 3
    argNames:
    - ctx
    - dsi
    - dsi_size
    argTypes:
    - UNCVDecCtx*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1121
      start: 806
    functionDepth: 8
    functionLinenumber: 806
    functionLinenumberEnd: 1121
    functionName: uncv_config
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - uncv_parse_config
    - gf_free
    - uncv_get_line_size
    - gf_bs_new
    - gf_pixel_fmt_name
    - GF_LOG
    - uncv_get_compat
    - gf_floor
    - memset
    - uncv_reset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err uncv_config(UNCVDecCtx *ctx, u8 *dsi, u32 dsi_size)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_uncv.c:1126,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_uncv.c:1131,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_uncv.c:1137,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_uncv.c:1140,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_uncv.c:1144,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_uncv.c:1147,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_uncv.c:1151,1
    - Dst: uncv_config
      Src: /src/gpac/src/filters/dec_uncv.c:1155,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_uncv.c:1159,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_uncv.c:1161,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_uncv.c:1162,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_uncv.c:1162,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_uncv.c:1163,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_uncv.c:1163,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_uncv.c:1164,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1166
      start: 1123
    functionDepth: 9
    functionLinenumber: 1123
    functionLinenumberEnd: 1166
    functionName: uncvdec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - uncv_config
    - gf_filter_pid_check_caps
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err uncvdec_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dec_uncv.c:1176,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - bsr
    argTypes:
    - UNCVDecCtx*
    - BSRead*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1182
      start: 1169
    functionDepth: 1
    functionLinenumber: 1169
    functionLinenumberEnd: 1182
    functionName: uncv_setup_block
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - gf_bs_reassign_buffer
    linkageType: ''
    returnType: void
    signature: void uncv_setup_block(UNCVDecCtx *ctx, BSRead *bsr)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dec_uncv.c:1195,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dec_uncv.c:1196,1
    - Dst: uncv_setup_block
      Src: /src/gpac/src/filters/dec_uncv.c:1201,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dec_uncv.c:1233,1
    - Dst: uncv_setup_block
      Src: /src/gpac/src/filters/dec_uncv.c:1234,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 43
    argCount: 3
    argNames:
    - ctx
    - data
    - size
    argTypes:
    - UNCVDecCtx*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1240
      start: 1185
    functionDepth: 7
    functionLinenumber: 1185
    functionLinenumberEnd: 1240
    functionName: uncv_start_frame
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - uncv_setup_block
    - gf_bs_reassign_buffer
    - gf_bs_seek
    linkageType: ''
    returnType: void
    signature: void uncv_start_frame(UNCVDecCtx *ctx, const u8 *data, u32 size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dec_uncv.c:1249,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - config
    - tile_x
    - tile_y
    argTypes:
    - UNCVDecCtx*
    - UNCVConfig*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1256
      start: 1243
    functionDepth: 7
    functionLinenumber: 1243
    functionLinenumberEnd: 1256
    functionName: uncv_start_tile
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - gf_bs_seek
    linkageType: ''
    returnType: void
    signature: void uncv_start_tile(UNCVDecCtx *ctx, UNCVConfig *config, u32 tile_x,
      u32 tile_y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - UNCVDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1260
      start: 1258
    functionDepth: 0
    functionLinenumber: 1258
    functionLinenumberEnd: 1260
    functionName: uncv_end_tile
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void uncv_end_tile(UNCVDecCtx *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/dec_uncv.c:1267,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_uncv.c:1273,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dec_uncv.c:1275,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dec_uncv.c:1281,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_uncv.c:1283,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - ctx
    - config
    argTypes:
    - UNCVDecCtx*
    - UNCVConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1285
      start: 1262
    functionDepth: 7
    functionLinenumber: 1262
    functionLinenumberEnd: 1285
    functionName: uncv_end_line
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - gf_bs_skip_bytes
    - gf_bs_seek
    - gf_bs_align
    - gf_bs_get_position
    linkageType: ''
    returnType: void
    signature: void uncv_end_line(UNCVDecCtx *ctx, UNCVConfig *config)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/filters/dec_uncv.c:1293,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/filters/dec_uncv.c:1295,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/dec_uncv.c:1305,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:1309,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dec_uncv.c:1311,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/dec_uncv.c:1312,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/dec_uncv.c:1314,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/dec_uncv.c:1317,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 3
    argNames:
    - bs
    - comp
    - ctx
    argTypes:
    - GF_BitStream*
    - UNCVComponentInfo*
    - UNCVDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1325
      start: 1288
    functionDepth: 7
    functionLinenumber: 1288
    functionLinenumberEnd: 1325
    functionName: uncv_get_val
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_double
    - gf_bs_seek
    - gf_bs_read_long_int
    - gf_bs_align
    - gf_bs_read_float
    - gf_bs_read_u8
    linkageType: ''
    returnType: u8
    signature: u8 uncv_get_val(GF_BitStream *bs, UNCVComponentInfo *comp, UNCVDecCtx
      *ctx)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dec_uncv.c:1367,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:1370,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_uncv.c:1374,1
    - Dst: uncv_get_val
      Src: /src/gpac/src/filters/dec_uncv.c:1380,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_uncv.c:1383,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_uncv.c:1386,1
    - Dst: uncv_get_val
      Src: /src/gpac/src/filters/dec_uncv.c:1391,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_uncv.c:1395,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 52
    argCount: 5
    argNames:
    - ctx
    - config
    - bsr
    - comp_idx
    - x
    argTypes:
    - UNCVDecCtx*
    - UNCVConfig*
    - BSRead*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1399
      start: 1327
    functionDepth: 8
    functionLinenumber: 1327
    functionLinenumberEnd: 1399
    functionName: uncv_pull_block
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - uncv_get_val
    - gf_bs_read_int
    - gf_bs_seek
    - gf_bs_read_u8
    linkageType: ''
    returnType: void
    signature: void uncv_pull_block(UNCVDecCtx *ctx, UNCVConfig *config, BSRead *bsr,
      u32 comp_idx, u32 x)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:1407,1
    - Dst: uncv_set_pix_val
      Src: /src/gpac/src/filters/dec_uncv.c:1414,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 5
    argNames:
    - ctx
    - comp
    - val
    - x
    - y
    argTypes:
    - UNCVDecCtx*
    - UNCVComponentInfo*
    - u8
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1428
      start: 1401
    functionDepth: 1
    functionLinenumber: 1401
    functionLinenumberEnd: 1428
    functionName: uncv_set_pix_val
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - uncv_set_pix_val
    linkageType: ''
    returnType: void
    signature: void uncv_set_pix_val(UNCVDecCtx *ctx, UNCVComponentInfo *comp, u8
      val, u32 x, u32 y)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: uncv_pull_block
      Src: /src/gpac/src/filters/dec_uncv.c:1437,1
    - Dst: uncv_set_pix_val
      Src: /src/gpac/src/filters/dec_uncv.c:1445,1
    - Dst: uncv_get_val
      Src: /src/gpac/src/filters/dec_uncv.c:1450,1
    - Dst: uncv_set_pix_val
      Src: /src/gpac/src/filters/dec_uncv.c:1455,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 7
    argNames:
    - ctx
    - config
    - bsr
    - comp
    - no_write
    - x
    - y
    argTypes:
    - UNCVDecCtx*
    - UNCVConfig*
    - BSRead*
    - UNCVComponentInfo*
    - Bool
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1458
      start: 1430
    functionDepth: 9
    functionLinenumber: 1430
    functionLinenumberEnd: 1458
    functionName: uncv_pull_val
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - uncv_set_pix_val
    - uncv_pull_block
    - uncv_get_val
    linkageType: ''
    returnType: void
    signature: void uncv_pull_val(UNCVDecCtx *ctx, UNCVConfig *config, BSRead *bsr,
      UNCVComponentInfo *comp, Bool no_write, u32 x, u32 y)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_uncv.c:1463,1
    - Dst: uncv_pull_val
      Src: /src/gpac/src/filters/dec_uncv.c:1465,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/dec_uncv.c:1471,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_uncv.c:1473,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:1475,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:1478,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 6
    argNames:
    - ctx
    - config
    - x
    - y
    - out_data
    - offset
    argTypes:
    - UNCVDecCtx*
    - UNCVConfig*
    - u32
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1482
      start: 1460
    functionDepth: 10
    functionLinenumber: 1460
    functionLinenumberEnd: 1482
    functionName: read_pixel_interleave_pixel
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_read_u8
    - uncv_pull_val
    linkageType: ''
    returnType: void
    signature: void read_pixel_interleave_pixel(UNCVDecCtx *ctx, UNCVConfig *config,
      u32 x, u32 y, u8 *out_data, u32 offset)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_uncv.c:1487,1
    - Dst: uncv_pull_val
      Src: /src/gpac/src/filters/dec_uncv.c:1492,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/dec_uncv.c:1498,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_uncv.c:1499,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:1501,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:1504,1
    - Dst: uncv_set_pix_val
      Src: /src/gpac/src/filters/dec_uncv.c:1516,1
    - Dst: uncv_set_pix_val
      Src: /src/gpac/src/filters/dec_uncv.c:1521,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 6
    argNames:
    - ctx
    - config
    - x
    - y
    - out_data
    - offset
    argTypes:
    - UNCVDecCtx*
    - UNCVConfig*
    - u32
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1525
      start: 1484
    functionDepth: 10
    functionLinenumber: 1484
    functionLinenumberEnd: 1525
    functionName: read_pixel_interleave_multiy
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_read_u8
    - uncv_set_pix_val
    - uncv_pull_val
    linkageType: ''
    returnType: void
    signature: void read_pixel_interleave_multiy(UNCVDecCtx *ctx, UNCVConfig *config,
      u32 x, u32 y, u8 *out_data, u32 offset)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: uncv_pull_val
      Src: /src/gpac/src/filters/dec_uncv.c:1531,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 6
    argNames:
    - ctx
    - config
    - x
    - y
    - out_data
    - offset
    argTypes:
    - UNCVDecCtx*
    - UNCVConfig*
    - u32
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1533
      start: 1528
    functionDepth: 10
    functionLinenumber: 1528
    functionLinenumberEnd: 1533
    functionName: read_pixel_interleave_comp
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - uncv_pull_val
    linkageType: ''
    returnType: void
    signature: void read_pixel_interleave_comp(UNCVDecCtx *ctx, UNCVConfig *config,
      u32 x, u32 y, u8 *out_data, u32 offset)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: uncv_pull_val
      Src: /src/gpac/src/filters/dec_uncv.c:1541,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    argCount: 6
    argNames:
    - ctx
    - config
    - x
    - y
    - out_data
    - offset
    argTypes:
    - UNCVDecCtx*
    - UNCVConfig*
    - u32
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1543
      start: 1535
    functionDepth: 10
    functionLinenumber: 1535
    functionLinenumberEnd: 1543
    functionName: read_pixel_interleave_comp_yuv
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - uncv_pull_val
    linkageType: ''
    returnType: void
    signature: void read_pixel_interleave_comp_yuv(UNCVDecCtx *ctx, UNCVConfig *config,
      u32 x, u32 y, u8 *out_data, u32 offset)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: uncv_pull_val
      Src: /src/gpac/src/filters/dec_uncv.c:1557,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 6
    argNames:
    - ctx
    - config
    - x
    - y
    - out_data
    - offset
    argTypes:
    - UNCVDecCtx*
    - UNCVConfig*
    - u32
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1559
      start: 1545
    functionDepth: 10
    functionLinenumber: 1545
    functionLinenumberEnd: 1559
    functionName: read_pixel_interleave_comp_yuv_420
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - uncv_pull_val
    linkageType: ''
    returnType: void
    signature: void read_pixel_interleave_comp_yuv_420(UNCVDecCtx *ctx, UNCVConfig
      *config, u32 x, u32 y, u8 *out_data, u32 offset)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: uncv_pull_val
      Src: /src/gpac/src/filters/dec_uncv.c:1573,1
    - Dst: uncv_pull_val
      Src: /src/gpac/src/filters/dec_uncv.c:1577,1
    - Dst: uncv_pull_val
      Src: /src/gpac/src/filters/dec_uncv.c:1579,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 6
    argNames:
    - ctx
    - config
    - x
    - y
    - out_data
    - offset
    argTypes:
    - UNCVDecCtx*
    - UNCVConfig*
    - u32
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1583
      start: 1561
    functionDepth: 10
    functionLinenumber: 1561
    functionLinenumberEnd: 1583
    functionName: read_pixel_interleave_mixed
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - uncv_pull_val
    linkageType: ''
    returnType: void
    signature: void read_pixel_interleave_mixed(UNCVDecCtx *ctx, UNCVConfig *config,
      u32 x, u32 y, u8 *out_data, u32 offset)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_uncv.c:1590,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_uncv.c:1592,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_uncv.c:1594,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_uncv.c:1595,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/dec_uncv.c:1601,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_uncv.c:1602,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_uncv.c:1607,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_uncv.c:1609,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dec_uncv.c:1614,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_uncv.c:1615,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_uncv.c:1617,1
    - Dst: uncv_start_frame
      Src: /src/gpac/src/filters/dec_uncv.c:1619,1
    - Dst: uncv_start_tile
      Src: /src/gpac/src/filters/dec_uncv.c:1626,1
    - Dst: UNCVDecCtx*::read_pixel
      Src: /src/gpac/src/filters/dec_uncv.c:1632,1
    - Dst: uncv_end_line
      Src: /src/gpac/src/filters/dec_uncv.c:1645,1
    - Dst: uncv_end_tile
      Src: /src/gpac/src/filters/dec_uncv.c:1647,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_uncv.c:1650,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_uncv.c:1651,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 48
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1653
      start: 1587
    functionDepth: 8
    functionLinenumber: 1587
    functionLinenumberEnd: 1653
    functionName: uncvdec_process
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_filter_pck_forward
    - gf_filter_pck_get_data
    - gf_filter_pck_merge_properties
    - gf_filter_pck_send
    - gf_filter_pid_set_eos
    - uncv_start_tile
    - uncv_start_frame
    - memset
    - uncv_end_line
    - UNCVDecCtx*::read_pixel
    - uncv_end_tile
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err uncvdec_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_uncv.c:1657,1
    - Dst: uncv_reset
      Src: /src/gpac/src/filters/dec_uncv.c:1658,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1659
      start: 1655
    functionDepth: 4
    functionLinenumber: 1655
    functionLinenumberEnd: 1659
    functionName: uncvdec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - uncv_reset
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void uncvdec_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1671
      start: 1670
    functionDepth: 0
    functionLinenumber: 1670
    functionLinenumberEnd: 1671
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1697
      start: 1694
    functionDepth: 0
    functionLinenumber: 1694
    functionLinenumberEnd: 1697
    functionName: uncvdec_register
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *uncvdec_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1702
      start: 1699
    functionDepth: 0
    functionLinenumber: 1699
    functionLinenumberEnd: 1702
    functionName: uncvdec_register
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *uncvdec_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/gpac/src/filters/dec_uncv.c:1706,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dec_uncv.c:1706,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - szCodec
    - subtype
    - dsi
    - dsi_size
    argTypes:
    - char*
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1708
      start: 1704
    functionDepth: 3
    functionLinenumber: 1704
    functionLinenumberEnd: 1708
    functionName: rfc_6381_get_codec_uncv
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 1
    functionsReached:
    - gf_4cc_to_str
    - snprintf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rfc_6381_get_codec_uncv(char *szCodec, u32 subtype, u8 *dsi,
      u32 dsi_size)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_j2k.c:79,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_j2k.c:83,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_j2k.c:89,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_j2k.c:92,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_j2k.c:98,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_j2k.c:108,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_j2k.c:110,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_j2k.c:111,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_j2k.c:111,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dec_j2k.c:112,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_j2k.c:113,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_j2k.c:114,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_j2k.c:115,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dec_j2k.c:119,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_j2k.c:121,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_j2k.c:127,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_j2k.c:128,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dec_j2k.c:129,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_j2k.c:130,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_j2k.c:132,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_j2k.c:159,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_j2k.c:161,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_j2k.c:169,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dec_j2k.c:170,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_j2k.c:173,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_j2k.c:174,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_j2k.c:174,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_j2k.c:176,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_j2k.c:176,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_j2k.c:177,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_j2k.c:177,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_j2k.c:179,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_j2k.c:179,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_j2k.c:180,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_j2k.c:180,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_j2k.c:181,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dec_j2k.c:181,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 91
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 76
    functionDepth: 7
    functionLinenumber: 76
    functionLinenumberEnd: 184
    functionName: j2kdec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_j2k.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_filter_pid_check_caps
    - gf_bs_read_u16
    - gf_bs_available
    - gf_filter_pid_new
    - gf_bs_read_u32
    - PROP_BOOL
    - gf_crc_32
    - gf_bs_skip_bytes
    - gf_filter_get_udta
    - gf_filter_pid_copy_properties
    - gf_bs_read_u8
    - gf_filter_pid_set_property
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - gf_bs_del
    - GF_4CC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err j2kdec_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_j2k.c:192,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_j2k.c:194,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - msg
    - client_data
    argTypes:
    - char*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 196
    functionName: error_callback
    functionSourceFile: /src/gpac/src/filters/dec_j2k.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void error_callback(const char *msg, void *client_data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_j2k.c:203,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_j2k.c:205,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - msg
    - client_data
    argTypes:
    - char*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 207
    functionName: warning_callback
    functionSourceFile: /src/gpac/src/filters/dec_j2k.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void warning_callback(const char *msg, void *client_data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_j2k.c:214,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_j2k.c:216,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - msg
    - client_data
    argTypes:
    - char*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 211
    functionDepth: 1
    functionLinenumber: 211
    functionLinenumberEnd: 218
    functionName: info_callback
    functionSourceFile: /src/gpac/src/filters/dec_j2k.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void info_callback(const char *msg, void *client_data)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 227
    functionName: int_ceildivpow2
    functionSourceFile: /src/gpac/src/filters/dec_j2k.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int int_ceildivpow2(int a, int b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_j2k.c:243,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - out_buffer
    - nb_bytes
    - user_data
    argTypes:
    - void*
    - OPJ_SIZE_T
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 246
    functionName: j2kdec_stream_read
    functionSourceFile: /src/gpac/src/filters/dec_j2k.c
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: OPJ_SIZE_T
    signature: OPJ_SIZE_T j2kdec_stream_read(void *out_buffer, OPJ_SIZE_T nb_bytes,
      void *user_data)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - nb_bytes
    - user_data
    argTypes:
    - OPJ_OFF_T
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 248
    functionDepth: 0
    functionLinenumber: 248
    functionLinenumberEnd: 270
    functionName: j2kdec_stream_skip
    functionSourceFile: /src/gpac/src/filters/dec_j2k.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPJ_OFF_T
    signature: OPJ_OFF_T j2kdec_stream_skip(OPJ_OFF_T nb_bytes, void *user_data)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - nb_bytes
    - user_data
    argTypes:
    - OPJ_OFF_T
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 272
    functionDepth: 0
    functionLinenumber: 272
    functionLinenumberEnd: 278
    functionName: j2kdec_stream_seek
    functionSourceFile: /src/gpac/src/filters/dec_j2k.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPJ_BOOL
    signature: OPJ_BOOL j2kdec_stream_seek(OPJ_OFF_T nb_bytes, void *user_data)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_j2k.c:300,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_j2k.c:303,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_j2k.c:305,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_j2k.c:306,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_j2k.c:309,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_j2k.c:311,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_j2k.c:320,1
    - Dst: opj_set_default_decoder_parameters
      Src: /src/gpac/src/filters/dec_j2k.c:323,1
    - Dst: opj_create_decompress
      Src: /src/gpac/src/filters/dec_j2k.c:326,1
    - Dst: opj_set_info_handler
      Src: /src/gpac/src/filters/dec_j2k.c:330,1
    - Dst: opj_set_warning_handler
      Src: /src/gpac/src/filters/dec_j2k.c:331,1
    - Dst: opj_set_error_handler
      Src: /src/gpac/src/filters/dec_j2k.c:332,1
    - Dst: opj_setup_decoder
      Src: /src/gpac/src/filters/dec_j2k.c:334,1
    - Dst: opj_stream_default_create
      Src: /src/gpac/src/filters/dec_j2k.c:336,1
    - Dst: opj_stream_set_read_function
      Src: /src/gpac/src/filters/dec_j2k.c:337,1
    - Dst: opj_stream_set_skip_function
      Src: /src/gpac/src/filters/dec_j2k.c:338,1
    - Dst: opj_stream_set_seek_function
      Src: /src/gpac/src/filters/dec_j2k.c:339,1
    - Dst: opj_stream_set_user_data
      Src: /src/gpac/src/filters/dec_j2k.c:343,1
    - Dst: opj_stream_set_user_data_length
      Src: /src/gpac/src/filters/dec_j2k.c:344,1
    - Dst: opj_read_header
      Src: /src/gpac/src/filters/dec_j2k.c:346,1
    - Dst: opj_set_decode_area
      Src: /src/gpac/src/filters/dec_j2k.c:347,1
    - Dst: opj_decode
      Src: /src/gpac/src/filters/dec_j2k.c:349,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_j2k.c:351,1
    - Dst: opj_image_destroy
      Src: /src/gpac/src/filters/dec_j2k.c:352,1
    - Dst: opj_create_decompress
      Src: /src/gpac/src/filters/dec_j2k.c:360,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_j2k.c:363,1
    - Dst: opj_set_event_mgr
      Src: /src/gpac/src/filters/dec_j2k.c:369,1
    - Dst: opj_setup_decoder
      Src: /src/gpac/src/filters/dec_j2k.c:372,1
    - Dst: opj_cio_open
      Src: /src/gpac/src/filters/dec_j2k.c:374,1
    - Dst: opj_decode_with_info
      Src: /src/gpac/src/filters/dec_j2k.c:376,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_j2k.c:379,1
    - Dst: opj_stream_destroy
      Src: /src/gpac/src/filters/dec_j2k.c:382,1
    - Dst: opj_destroy_codec
      Src: /src/gpac/src/filters/dec_j2k.c:383,1
    - Dst: opj_destroy_decompress
      Src: /src/gpac/src/filters/dec_j2k.c:385,1
    - Dst: opj_cio_close
      Src: /src/gpac/src/filters/dec_j2k.c:386,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_j2k.c:388,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_j2k.c:418,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_j2k.c:430,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_j2k.c:430,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_j2k.c:435,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_j2k.c:435,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_j2k.c:440,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_j2k.c:440,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_j2k.c:445,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_j2k.c:445,1
    - Dst: opj_end_decompress
      Src: /src/gpac/src/filters/dec_j2k.c:449,1
    - Dst: opj_stream_destroy
      Src: /src/gpac/src/filters/dec_j2k.c:450,1
    - Dst: opj_destroy_codec
      Src: /src/gpac/src/filters/dec_j2k.c:452,1
    - Dst: opj_cio_close
      Src: /src/gpac/src/filters/dec_j2k.c:456,1
    - Dst: opj_destroy_decompress
      Src: /src/gpac/src/filters/dec_j2k.c:461,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dec_j2k.c:466,1
    - Dst: int_ceildivpow2
      Src: /src/gpac/src/filters/dec_j2k.c:470,1
    - Dst: int_ceildivpow2
      Src: /src/gpac/src/filters/dec_j2k.c:472,1
    - Dst: int_ceildivpow2
      Src: /src/gpac/src/filters/dec_j2k.c:497,1
    - Dst: int_ceildivpow2
      Src: /src/gpac/src/filters/dec_j2k.c:499,1
    - Dst: int_ceildivpow2
      Src: /src/gpac/src/filters/dec_j2k.c:514,1
    - Dst: int_ceildivpow2
      Src: /src/gpac/src/filters/dec_j2k.c:516,1
    - Dst: opj_image_destroy
      Src: /src/gpac/src/filters/dec_j2k.c:571,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/dec_j2k.c:574,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dec_j2k.c:575,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_j2k.c:577,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/dec_j2k.c:578,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_j2k.c:579,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_j2k.c:581,1
    CyclomaticComplexity: 72
    EdgeCount: 72
    ICount: 229
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 583
      start: 282
    functionDepth: 1
    functionLinenumber: 282
    functionLinenumberEnd: 583
    functionName: j2kdec_process
    functionSourceFile: /src/gpac/src/filters/dec_j2k.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - memset
    - gf_filter_pck_set_dependency_flags
    - opj_read_header
    - opj_stream_set_read_function
    - gf_filter_pck_get_seek_flag
    - gf_filter_pid_get_packet
    - opj_destroy_decompress
    - opj_setup_decoder
    - opj_set_default_decoder_parameters
    - opj_set_event_mgr
    - opj_set_warning_handler
    - gf_filter_pck_discard
    - opj_destroy_codec
    - opj_cio_open
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - opj_set_info_handler
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pid_set_eos
    - opj_stream_set_seek_function
    - opj_cio_close
    - opj_end_decompress
    - int_ceildivpow2
    - opj_stream_set_user_data
    - gf_filter_pid_is_eos
    - opj_stream_set_user_data_length
    - gf_filter_pid_set_property
    - opj_create_decompress
    - opj_decode
    - opj_set_decode_area
    - PROP_UINT
    - gf_filter_pck_merge_properties
    - opj_set_error_handler
    - opj_stream_set_skip_function
    - opj_image_destroy
    - opj_decode_with_info
    - opj_stream_default_create
    - opj_stream_destroy
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err j2kdec_process(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/dec_j2k.c:588,1
    - Dst: error_callback
      Src: /src/gpac/src/filters/dec_j2k.c:589,1
    - Dst: warning_callback
      Src: /src/gpac/src/filters/dec_j2k.c:590,1
    - Dst: info_callback
      Src: /src/gpac/src/filters/dec_j2k.c:591,1
    - Dst: j2kdec_stream_skip
      Src: /src/gpac/src/filters/dec_j2k.c:593,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 585
    functionDepth: 2
    functionLinenumber: 585
    functionLinenumberEnd: 598
    functionName: j2kdec_initialize
    functionSourceFile: /src/gpac/src/filters/dec_j2k.c
    functionUses: 0
    functionsReached:
    - info_callback
    - error_callback
    - warning_callback
    - j2kdec_stream_skip
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err j2kdec_initialize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 638
      start: 631
    functionDepth: 0
    functionLinenumber: 631
    functionLinenumberEnd: 638
    functionName: j2kdec_register
    functionSourceFile: /src/gpac/src/filters/dec_j2k.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *j2kdec_register(GF_FilterSession *session)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_http.c:91,1
    - Dst: gf_filter_notification_failure
      Src: /src/gpac/src/filters/in_http.c:94,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - filter
    - ctx
    - e
    argTypes:
    - GF_Filter*
    - GF_HTTPInCtx*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 98
    functionName: httpin_notify_error
    functionSourceFile: /src/gpac/src/filters/in_http.c
    functionUses: 0
    functionsReached:
    - gf_filter_notification_failure
    - gf_filter_setup_failure
    linkageType: ''
    returnType: void
    signature: void httpin_notify_error(GF_Filter *filter, GF_HTTPInCtx *ctx, GF_Err
      e)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_http.c:102,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/in_http.c:108,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/in_http.c:111,1
    - Dst: gf_filter_set_blocking
      Src: /src/gpac/src/filters/in_http.c:130,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_http.c:135,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_http.c:139,1
    - Dst: gf_filter_pid_raw_gmem
      Src: /src/gpac/src/filters/in_http.c:140,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_http.c:144,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_http.c:144,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/in_http.c:146,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_http.c:149,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/filters/in_http.c:152,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_http.c:154,1
    - Dst: gf_dm_sess_set_netcap_id
      Src: /src/gpac/src/filters/in_http.c:158,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/in_http.c:158,1
    - Dst: gf_dm_sess_set_range
      Src: /src/gpac/src/filters/in_http.c:160,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/in_http.c:164,1
    - Dst: httpin_notify_error
      Src: /src/gpac/src/filters/in_http.c:165,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 54
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 100
    functionDepth: 2
    functionLinenumber: 100
    functionLinenumberEnd: 169
    functionName: httpin_initialize
    functionSourceFile: /src/gpac/src/filters/in_http.c
    functionUses: 0
    functionsReached:
    - gf_filter_set_blocking
    - gf_filter_get_download_manager
    - gf_filter_pid_raw_new
    - gf_sys_clock
    - gf_filter_get_netcap_id
    - strstr
    - gf_filter_pid_raw_gmem
    - gf_dm_sess_set_netcap_id
    - strncmp
    - gf_dm_sess_new
    - gf_dm_sess_set_range
    - gf_filter_setup_failure
    - httpin_notify_error
    - gf_malloc
    - gf_sys_is_cov_mode
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err httpin_initialize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_http.c:176,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_HTTPInCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 180
    functionName: httpin_set_eos
    functionSourceFile: /src/gpac/src/filters/in_http.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_eos
    linkageType: ''
    returnType: void
    signature: void httpin_set_eos(GF_HTTPInCtx *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_http.c:185,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/in_http.c:187,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_http.c:189,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/in_http.c:190,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 183
    functionDepth: 5
    functionLinenumber: 183
    functionLinenumberEnd: 191
    functionName: httpin_finalize
    functionSourceFile: /src/gpac/src/filters/in_http.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_del
    - gf_free
    - gf_fclose
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void httpin_finalize(GF_Filter *filter)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_http.c:198,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_http.c:199,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_http.c:200,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_http.c:203,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_http.c:205,1
    - Dst: gf_dm_can_handle_url
      Src: /src/gpac/src/filters/in_http.c:206,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_http.c:208,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 2
    argNames:
    - url
    - mime_type
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 196
    functionDepth: 2
    functionLinenumber: 196
    functionLinenumberEnd: 214
    functionName: httpin_probe_url
    functionSourceFile: /src/gpac/src/filters/in_http.c
    functionUses: 0
    functionsReached:
    - strnicmp
    - gf_dm_can_handle_url
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore httpin_probe_url(const char *url, const char *mime_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_http.c:218,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_http.c:221,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/in_http.c:225,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - filter
    - pid
    - pck
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 226
    functionName: httpin_rel_pck
    functionSourceFile: /src/gpac/src/filters/in_http.c
    functionUses: 0
    functionsReached:
    - gf_filter_post_process_task
    - gf_filter_pid_set_eos
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void httpin_rel_pck(GF_Filter *filter, GF_FilterPid *pid, GF_FilterPacket
      *pck)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_http.c:232,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/in_http.c:241,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_http.c:250,1
    - Dst: gf_dm_sess_abort
      Src: /src/gpac/src/filters/in_http.c:251,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/in_http.c:252,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/in_http.c:256,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/in_http.c:256,1
    - Dst: httpin_set_eos
      Src: /src/gpac/src/filters/in_http.c:259,1
    - Dst: gf_dm_sess_get_cache_name
      Src: /src/gpac/src/filters/in_http.c:267,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/in_http.c:268,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/in_http.c:273,1
    - Dst: gf_dm_sess_abort
      Src: /src/gpac/src/filters/in_http.c:275,1
    - Dst: gf_dm_sess_set_range
      Src: /src/gpac/src/filters/in_http.c:276,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_http.c:282,1
    - Dst: httpin_set_eos
      Src: /src/gpac/src/filters/in_http.c:285,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_http.c:291,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/in_http.c:291,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/in_http.c:291,1
    - Dst: gf_filter_notification_failure
      Src: /src/gpac/src/filters/in_http.c:293,1
    - Dst: gf_dm_delete_cached_file_entry_session
      Src: /src/gpac/src/filters/in_http.c:297,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_http.c:299,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/in_http.c:299,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/in_http.c:299,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_http.c:302,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_http.c:305,1
    - Dst: gf_dm_sess_abort
      Src: /src/gpac/src/filters/in_http.c:308,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/in_http.c:309,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_http.c:313,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/in_http.c:317,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_http.c:324,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_http.c:326,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/in_http.c:328,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/in_http.c:331,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/in_http.c:333,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_http.c:336,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_http.c:338,1
    - Dst: gf_dm_sess_abort
      Src: /src/gpac/src/filters/in_http.c:347,1
    - Dst: httpin_set_eos
      Src: /src/gpac/src/filters/in_http.c:349,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_http.c:353,1
    - Dst: gf_dm_sess_force_memory_mode
      Src: /src/gpac/src/filters/in_http.c:359,1
    - Dst: gf_dm_sess_setup_from_url
      Src: /src/gpac/src/filters/in_http.c:360,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/filters/in_http.c:372,1
    - Dst: gf_dm_sess_set_netcap_id
      Src: /src/gpac/src/filters/in_http.c:373,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/in_http.c:373,1
    - Dst: gf_dm_sess_set_range
      Src: /src/gpac/src/filters/in_http.c:377,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_http.c:382,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/in_http.c:382,1
    - Dst: httpin_notify_error
      Src: /src/gpac/src/filters/in_http.c:383,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_http.c:385,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_http.c:389,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/in_http.c:394,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_http.c:395,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/in_http.c:395,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 154
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 228
    functionDepth: 5
    functionLinenumber: 228
    functionLinenumberEnd: 401
    functionName: httpin_process_event
    functionSourceFile: /src/gpac/src/filters/in_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_pid_raw_new
    - gf_dm_sess_get_cache_name
    - gf_fopen
    - gf_dm_sess_del
    - gf_file_basename
    - gf_filter_post_process_task
    - gf_dm_sess_force_memory_mode
    - gf_dm_sess_setup_from_url
    - gf_strdup
    - gf_fseek
    - strncmp
    - gf_dm_sess_new
    - gf_dm_sess_abort
    - PROP_BOOL
    - httpin_set_eos
    - httpin_notify_error
    - gf_filter_get_udta
    - GF_LOG
    - gf_filter_get_netcap_id
    - gf_filter_pid_set_eos
    - gf_dm_sess_set_range
    - gf_dm_delete_cached_file_entry_session
    - gf_error_to_string
    - gf_filter_pid_set_property
    - gf_filter_pid_set_info_str
    - gf_fclose
    - gf_filter_pck_new_shared
    - gf_dm_sess_set_netcap_id
    - gf_filter_notification_failure
    - gf_filter_pck_set_framing
    - gf_filter_pck_send
    linkageType: ''
    returnType: Bool
    signature: Bool httpin_process_event(GF_Filter *filter, const GF_FilterEvent *evt)
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/in_http.c:414,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/in_http.c:431,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_http.c:436,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_http.c:438,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/in_http.c:457,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/in_http.c:460,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_http.c:464,1
    - Dst: httpin_set_eos
      Src: /src/gpac/src/filters/in_http.c:466,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/in_http.c:469,1
    - Dst: gf_dm_sess_get_cache_name
      Src: /src/gpac/src/filters/in_http.c:479,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_http.c:480,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/filters/in_http.c:482,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_http.c:486,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/in_http.c:498,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_http.c:500,1
    - Dst: gf_dm_sess_fetch_data
      Src: /src/gpac/src/filters/in_http.c:503,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/filters/in_http.c:512,1
    - Dst: gf_dm_sess_fetch_data
      Src: /src/gpac/src/filters/in_http.c:517,1
    - Dst: gf_dm_sess_get_stats
      Src: /src/gpac/src/filters/in_http.c:521,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_http.c:522,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_http.c:522,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_http.c:524,1
    - Dst: gf_dm_sess_is_regulated
      Src: /src/gpac/src/filters/in_http.c:524,1
    - Dst: httpin_notify_error
      Src: /src/gpac/src/filters/in_http.c:528,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_http.c:541,1
    - Dst: gf_dm_sess_abort
      Src: /src/gpac/src/filters/in_http.c:544,1
    - Dst: gf_dm_sess_get_stats
      Src: /src/gpac/src/filters/in_http.c:548,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_http.c:552,1
    - Dst: httpin_notify_error
      Src: /src/gpac/src/filters/in_http.c:553,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_http.c:565,1
    - Dst: gf_dm_sess_get_cache_name
      Src: /src/gpac/src/filters/in_http.c:569,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_http.c:573,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/filters/in_http.c:576,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_http.c:582,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/in_http.c:584,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/filters/in_http.c:586,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/in_http.c:588,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/in_http.c:590,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_http.c:593,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/in_http.c:598,1
    - Dst: gf_dm_sess_mime_type
      Src: /src/gpac/src/filters/in_http.c:598,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_http.c:601,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/in_http.c:601,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_http.c:605,1
    - Dst: PROP_POINTER
      Src: /src/gpac/src/filters/in_http.c:605,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/in_http.c:609,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filters/in_http.c:615,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/in_http.c:618,1
    - Dst: gf_dm_sess_enum_headers
      Src: /src/gpac/src/filters/in_http.c:622,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/in_http.c:623,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/in_http.c:623,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_http.c:630,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_http.c:630,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_http.c:632,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/in_http.c:632,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_http.c:633,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/in_http.c:633,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_http.c:635,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/in_http.c:635,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_http.c:636,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/in_http.c:636,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/in_http.c:654,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/in_http.c:657,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/in_http.c:659,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/in_http.c:660,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/in_http.c:661,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_http.c:665,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/in_http.c:667,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/in_http.c:669,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/in_http.c:671,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/in_http.c:672,1
    - Dst: gf_dm_sess_get_cache_name
      Src: /src/gpac/src/filters/in_http.c:676,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_http.c:678,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/in_http.c:678,1
    - Dst: httpin_set_eos
      Src: /src/gpac/src/filters/in_http.c:680,1
    CyclomaticComplexity: 66
    EdgeCount: 66
    ICount: 203
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 685
      start: 405
    functionDepth: 5
    functionLinenumber: 405
    functionLinenumberEnd: 685
    functionName: httpin_process
    functionSourceFile: /src/gpac/src/filters/in_http.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_raw_new
    - PROP_STRING
    - gf_dm_sess_get_cache_name
    - gf_filter_pid_set_property_str
    - gf_fopen
    - PROP_LONGUINT
    - gf_file_basename
    - gf_sys_clock
    - PROP_POINTER
    - gf_filter_pid_enum_properties
    - gf_assert
    - gf_dm_sess_get_stats
    - gf_filter_pck_set_byte_offset
    - gf_blob_get
    - memcpy
    - sprintf
    - gf_dm_sess_abort
    - httpin_set_eos
    - gf_blob_release
    - gf_filter_ask_rt_reschedule
    - PROP_BOOL
    - httpin_notify_error
    - gf_dm_sess_is_regulated
    - gf_filter_get_udta
    - gf_filter_update_status
    - gf_fread
    - GF_LOG
    - gf_filter_pid_would_block
    - gf_filter_pid_set_eos
    - gf_sys_is_test_mode
    - strnicmp
    - gf_dm_sess_enum_headers
    - gf_filter_pck_set_sap
    - gf_filter_pid_set_property_dyn
    - gf_filter_pid_set_property
    - gf_dm_sess_fetch_data
    - gf_filter_pck_new_shared
    - gf_filter_pid_set_info
    - PROP_UINT
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_framing
    - gf_dm_sess_mime_type
    - gf_filter_reporting_enabled
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err httpin_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 690
      start: 689
    functionDepth: 0
    functionLinenumber: 689
    functionLinenumberEnd: 690
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/in_http.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_http.c:748,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - session
    - freg
    argTypes:
    - GF_FilterSession*
    - struct __gf_filter_register*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 749
      start: 746
    functionDepth: 0
    functionLinenumber: 746
    functionLinenumberEnd: 749
    functionName: httpin_reg_free
    functionSourceFile: /src/gpac/src/filters/in_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void httpin_reg_free(GF_FilterSession *session, struct __gf_filter_register
      *freg)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/in_http.c:755,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_http.c:756,1
    - Dst: curl_version_info
      Src: /src/gpac/src/filters/in_http.c:758,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_http.c:761,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_http.c:762,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_http.c:763,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_http.c:765,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/in_http.c:770,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_http.c:771,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/in_http.c:776,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_http.c:779,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_http.c:780,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_http.c:781,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_http.c:783,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_http.c:784,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_http.c:785,1
    - Dst: curl_version_info
      Src: /src/gpac/src/filters/in_http.c:786,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_http.c:787,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_http.c:788,1
    - Dst: curl_easy_option_next
      Src: /src/gpac/src/filters/in_http.c:789,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_http.c:800,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_http.c:801,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_http.c:802,1
    - Dst: curl_easy_option_next
      Src: /src/gpac/src/filters/in_http.c:804,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 52
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 811
      start: 753
    functionDepth: 6
    functionLinenumber: 753
    functionLinenumberEnd: 811
    functionName: httpin_register
    functionSourceFile: /src/gpac/src/filters/in_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_opts_set_key
    - gf_opts_get_bool
    - strcmp
    - curl_easy_option_next
    - gf_dynstrcat
    - curl_version_info
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *httpin_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 816
      start: 813
    functionDepth: 0
    functionLinenumber: 813
    functionLinenumberEnd: 816
    functionName: httpin_register
    functionSourceFile: /src/gpac/src/filters/in_http.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *httpin_register(GF_FilterSession *session)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_mp4v.c:55,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/rewrite_mp4v.c:60,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/rewrite_mp4v.c:65,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/rewrite_mp4v.c:69,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/rewrite_mp4v.c:74,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/rewrite_mp4v.c:75,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/rewrite_mp4v.c:75,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/rewrite_mp4v.c:77,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/rewrite_mp4v.c:78,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/rewrite_mp4v.c:80,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/rewrite_mp4v.c:84,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 99
    functionName: m4vmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/rewrite_mp4v.c
    functionUses: 0
    functionsReached:
    - gf_crc_32
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_check_caps
    - PROP_BOOL
    - gf_filter_pid_new
    - gf_filter_pid_set_property
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err m4vmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_mp4v.c:104,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/rewrite_mp4v.c:109,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/rewrite_mp4v.c:111,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/rewrite_mp4v.c:112,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/rewrite_mp4v.c:118,1
    - Dst: gf_filter_pck_has_properties
      Src: /src/gpac/src/filters/rewrite_mp4v.c:122,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/rewrite_mp4v.c:123,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewrite_mp4v.c:125,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/rewrite_mp4v.c:129,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/rewrite_mp4v.c:131,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/rewrite_mp4v.c:155,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/rewrite_mp4v.c:158,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/rewrite_mp4v.c:169,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/rewrite_mp4v.c:170,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/rewrite_mp4v.c:171,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/rewrite_mp4v.c:172,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/rewrite_mp4v.c:180,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/rewrite_mp4v.c:182,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 63
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 184
    functionName: m4vmx_process
    functionSourceFile: /src/gpac/src/filters/rewrite_mp4v.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_byte_offset
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_filter_pck_forward
    - gf_filter_pck_get_data
    - memcpy
    - gf_filter_pck_merge_properties
    - gf_filter_pck_send
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_dependency_flags
    - gf_filter_pck_has_properties
    - gf_filter_pck_get_sap
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err m4vmx_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 197
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/rewrite_mp4v.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 220
    functionName: ufm4v_register
    functionSourceFile: /src/gpac/src/filters/rewrite_mp4v.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ufm4v_register(GF_FilterSession *session)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/rewrite_mp4v.c:237,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 232
    functionDepth: 1
    functionLinenumber: 232
    functionLinenumberEnd: 240
    functionName: vc1mx_initialize
    functionSourceFile: /src/gpac/src/filters/rewrite_mp4v.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vc1mx_initialize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/rewrite_mp4v.c:260,1
    - Dst: vc1mx_initialize
      Src: /src/gpac/src/filters/rewrite_mp4v.c:261,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 256
    functionDepth: 2
    functionLinenumber: 256
    functionLinenumberEnd: 264
    functionName: ufvc1_register
    functionSourceFile: /src/gpac/src/filters/rewrite_mp4v.c
    functionUses: 0
    functionsReached:
    - vc1mx_initialize
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ufvc1_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 270
    functionName: ufm4v_register
    functionSourceFile: /src/gpac/src/filters/rewrite_mp4v.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ufm4v_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 274
    functionName: ufvc1_register
    functionSourceFile: /src/gpac/src/filters/rewrite_mp4v.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ufvc1_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/bsrw.c:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - pctx
    - pck
    argTypes:
    - GF_BSRWCtx*
    - BSRWPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: none_rewrite_packet
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_forward
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err none_rewrite_packet(GF_BSRWCtx *ctx, BSRWPid *pctx, GF_FilterPacket
      *pck)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bsrw.c:100,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/bsrw.c:107,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/bsrw.c:108,1
    - Dst: gf_m4v_rewrite_par
      Src: /src/gpac/src/filters/bsrw.c:112,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bsrw.c:117,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bsrw.c:120,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/bsrw.c:120,1
    - Dst: gf_m4v_rewrite_pl
      Src: /src/gpac/src/filters/bsrw.c:124,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bsrw.c:125,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bsrw.c:125,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bsrw.c:131,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/bsrw.c:131,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - ctx
    - pctx
    argTypes:
    - GF_BSRWCtx*
    - BSRWPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 93
    functionDepth: 3
    functionLinenumber: 93
    functionLinenumberEnd: 134
    functionName: m4v_rewrite_pid_config
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_pid_get_property
    - PROP_FRAC
    - PROP_UINT
    - memcpy
    - gf_m4v_rewrite_par
    - PROP_DATA_NO_COPY
    - gf_m4v_rewrite_pl
    - gf_filter_pid_set_property
    - gf_malloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err m4v_rewrite_pid_config(GF_BSRWCtx *ctx, BSRWPid *pctx)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/bsrw.c:138,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/bsrw.c:142,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/bsrw.c:142,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/bsrw.c:142,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/bsrw.c:160,1
    - Dst: gf_timecode_less
      Src: /src/gpac/src/filters/bsrw.c:165,1
    - Dst: gf_timecode_greater
      Src: /src/gpac/src/filters/bsrw.c:167,1
    - Dst: strstr
      Src: /src/gpac/src/filters/bsrw.c:172,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/bsrw.c:174,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/bsrw.c:181,1
    - Dst: gf_ceil
      Src: /src/gpac/src/filters/bsrw.c:188,1
    - Dst: memset
      Src: /src/gpac/src/filters/bsrw.c:191,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/bsrw.c:258,1
    - Dst: gf_net_ntp_to_utc
      Src: /src/gpac/src/filters/bsrw.c:259,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/bsrw.c:261,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/bsrw.c:265,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/bsrw.c:268,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/bsrw.c:269,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/filters/bsrw.c:276,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/bsrw.c:279,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/bsrw.c:287,1
    - Dst: gf_ceil
      Src: /src/gpac/src/filters/bsrw.c:292,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/bsrw.c:296,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/bsrw.c:310,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/bsrw.c:311,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 125
    argCount: 5
    argNames:
    - pck
    - ctx
    - pctx
    - tc_in
    - tc_out
    argTypes:
    - GF_FilterPacket*
    - GF_BSRWCtx*
    - BSRWPid*
    - GF_TimeCode*
    - GF_TimeCode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 327
    functionName: bsrw_manipulate_tc
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_property
    - gf_assert
    - memcpy
    - GF_LOG
    - gf_filter_pck_get_duration
    - gf_ceil
    - strstr
    - memset
    - gf_filter_pck_get_timescale
    - gf_timecode_less
    - gf_filter_pck_get_cts
    - gf_net_ntp_to_utc
    - gf_timecode_greater
    - gf_net_get_utc
    - gf_timestamp_rescale
    - gf_gmtime
    linkageType: ''
    returnType: Bool
    signature: Bool bsrw_manipulate_tc(GF_FilterPacket *pck, GF_BSRWCtx *ctx, BSRWPid
      *pctx, GF_TimeCode *tc_in, GF_TimeCode *tc_out)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/bsrw.c:334,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/bsrw.c:336,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/bsrw.c:338,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/bsrw.c:341,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/bsrw.c:343,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/bsrw.c:344,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/bsrw.c:349,1
    - Dst: gf_avc_parse_nalu
      Src: /src/gpac/src/filters/bsrw.c:350,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/bsrw.c:351,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/bsrw.c:353,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/bsrw.c:354,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/bsrw.c:357,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/bsrw.c:360,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/bsrw.c:366,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/bsrw.c:372,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/bsrw.c:373,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/bsrw.c:378,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/bsrw.c:381,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/bsrw.c:382,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/bsrw.c:386,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/bsrw.c:397,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/bsrw.c:399,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/bsrw.c:404,1
    - Dst: bsrw_manipulate_tc
      Src: /src/gpac/src/filters/bsrw.c:408,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:411,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:414,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:415,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:416,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:418,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:419,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:420,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:421,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:425,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/bsrw.c:428,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:429,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:435,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:436,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:438,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:439,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:440,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:441,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:442,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:443,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:444,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:445,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:446,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:447,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:448,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:449,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:451,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:452,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:453,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:454,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:455,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:456,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:457,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:458,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:459,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:460,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:461,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:462,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/bsrw.c:466,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/bsrw.c:469,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:473,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/bsrw.c:476,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/bsrw.c:477,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:478,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/bsrw.c:482,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:483,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/bsrw.c:484,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/bsrw.c:489,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/bsrw.c:490,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/bsrw.c:492,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/bsrw.c:493,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/bsrw.c:498,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/bsrw.c:503,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/bsrw.c:509,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/bsrw.c:510,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/bsrw.c:517,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/bsrw.c:518,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/bsrw.c:521,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/bsrw.c:522,1
    - Dst: gf_avc_reformat_sei
      Src: /src/gpac/src/filters/bsrw.c:529,1
    - Dst: gf_hevc_reformat_sei
      Src: /src/gpac/src/filters/bsrw.c:532,1
    - Dst: gf_vvc_reformat_sei
      Src: /src/gpac/src/filters/bsrw.c:535,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:544,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/bsrw.c:545,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/bsrw.c:549,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/bsrw.c:550,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/bsrw.c:552,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/bsrw.c:556,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/bsrw.c:558,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/bsrw.c:558,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/bsrw.c:562,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/bsrw.c:563,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bsrw.c:566,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/bsrw.c:567,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/bsrw.c:568,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/bsrw.c:570,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 159
    argCount: 4
    argNames:
    - ctx
    - pctx
    - pck
    - codec_type
    argTypes:
    - GF_BSRWCtx*
    - BSRWPid*
    - GF_FilterPacket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 329
    functionDepth: 7
    functionLinenumber: 329
    functionLinenumberEnd: 571
    functionName: nalu_rewrite_packet
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_bs_new
    - PROP_DATA
    - gf_bs_available
    - gf_avc_reformat_sei
    - gf_realloc
    - gf_hevc_reformat_sei
    - gf_filter_pck_set_property
    - gf_filter_pck_forward
    - gf_vvc_reformat_sei
    - gf_bs_skip_bytes
    - gf_filter_pck_get_property
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_write_data
    - gf_bs_read_u8
    - gf_malloc
    - bsrw_manipulate_tc
    - gf_bs_seek
    - gf_filter_pck_merge_properties
    - gf_bs_del
    - gf_bs_read_int
    - gf_avc_parse_nalu
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err nalu_rewrite_packet(GF_BSRWCtx *ctx, BSRWPid *pctx, GF_FilterPacket
      *pck, u32 codec_type)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bsrw.c:584,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/bsrw.c:587,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/bsrw.c:590,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bsrw.c:591,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bsrw.c:592,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/filters/bsrw.c:593,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/bsrw.c:595,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/bsrw.c:596,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bsrw.c:600,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bsrw.c:601,1
    - Dst: gf_avc_read_pps
      Src: /src/gpac/src/filters/bsrw.c:602,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/bsrw.c:604,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/bsrw.c:605,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/bsrw.c:610,1
    - Dst: nalu_rewrite_packet
      Src: /src/gpac/src/filters/bsrw.c:614,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 3
    argNames:
    - ctx
    - pctx
    - pck
    argTypes:
    - GF_BSRWCtx*
    - BSRWPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 615
      start: 573
    functionDepth: 8
    functionLinenumber: 573
    functionLinenumberEnd: 615
    functionName: avc_rewrite_packet
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_get_property
    - gf_odf_avc_cfg_del
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_count
    - nalu_rewrite_packet
    - gf_avc_read_sps
    - gf_odf_avc_cfg_read
    - gf_avc_read_pps
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err avc_rewrite_packet(GF_BSRWCtx *ctx, BSRWPid *pctx, GF_FilterPacket
      *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nalu_rewrite_packet
      Src: /src/gpac/src/filters/bsrw.c:618,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - pctx
    - pck
    argTypes:
    - GF_BSRWCtx*
    - BSRWPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 619
      start: 616
    functionDepth: 8
    functionLinenumber: 616
    functionLinenumberEnd: 619
    functionName: hevc_rewrite_packet
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - nalu_rewrite_packet
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hevc_rewrite_packet(GF_BSRWCtx *ctx, BSRWPid *pctx, GF_FilterPacket
      *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nalu_rewrite_packet
      Src: /src/gpac/src/filters/bsrw.c:622,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - pctx
    - pck
    argTypes:
    - GF_BSRWCtx*
    - BSRWPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 623
      start: 620
    functionDepth: 8
    functionLinenumber: 620
    functionLinenumberEnd: 623
    functionName: vvc_rewrite_packet
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - nalu_rewrite_packet
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vvc_rewrite_packet(GF_BSRWCtx *ctx, BSRWPid *pctx, GF_FilterPacket
      *pck)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/bsrw.c:628,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/bsrw.c:630,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/bsrw.c:636,1
    - Dst: gf_media_probe_iamf
      Src: /src/gpac/src/filters/bsrw.c:640,1
    - Dst: gf_media_probe_ivf
      Src: /src/gpac/src/filters/bsrw.c:640,1
    - Dst: gf_media_aom_probe_annexb
      Src: /src/gpac/src/filters/bsrw.c:640,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/bsrw.c:641,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/bsrw.c:642,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/bsrw.c:643,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/bsrw.c:647,1
    - Dst: bsrw_manipulate_tc
      Src: /src/gpac/src/filters/bsrw.c:651,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/bsrw.c:653,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/bsrw.c:654,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/bsrw.c:657,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/bsrw.c:659,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/bsrw.c:665,1
    - Dst: gf_av1_leb128_write
      Src: /src/gpac/src/filters/bsrw.c:666,1
    - Dst: gf_av1_leb128_write
      Src: /src/gpac/src/filters/bsrw.c:667,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:668,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:669,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:670,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:671,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:672,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:673,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:674,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:675,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/bsrw.c:676,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/bsrw.c:677,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/bsrw.c:681,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/bsrw.c:682,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/bsrw.c:684,1
    - Dst: gf_av1_parse_obu_header
      Src: /src/gpac/src/filters/bsrw.c:690,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/bsrw.c:692,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/bsrw.c:693,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/bsrw.c:694,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/bsrw.c:695,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/filters/bsrw.c:701,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/bsrw.c:703,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/bsrw.c:704,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/bsrw.c:705,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/bsrw.c:706,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/bsrw.c:709,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/filters/bsrw.c:714,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/bsrw.c:718,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/bsrw.c:722,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/bsrw.c:725,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/bsrw.c:726,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/bsrw.c:732,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/bsrw.c:733,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/bsrw.c:734,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/bsrw.c:737,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/bsrw.c:739,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/bsrw.c:739,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/bsrw.c:742,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/bsrw.c:743,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/bsrw.c:746,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/bsrw.c:747,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/bsrw.c:749,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 77
    argCount: 3
    argNames:
    - ctx
    - pctx
    - pck
    argTypes:
    - GF_BSRWCtx*
    - BSRWPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 625
    functionDepth: 7
    functionLinenumber: 625
    functionLinenumberEnd: 750
    functionName: av1_rewrite_packet
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_new
    - gf_media_probe_iamf
    - gf_av1_parse_obu_header
    - PROP_DATA
    - gf_bs_available
    - gf_av1_leb128_write
    - gf_filter_pck_set_property
    - gf_filter_pck_forward
    - gf_filter_pck_get_property
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_bs_write_int
    - gf_av1_leb128_read
    - gf_bs_align
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_media_probe_ivf
    - gf_media_aom_probe_annexb
    - bsrw_manipulate_tc
    - gf_bs_seek
    - gf_filter_pck_merge_properties
    - gf_bs_del
    - gf_bs_write_u8
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av1_rewrite_packet(GF_BSRWCtx *ctx, BSRWPid *pctx, GF_FilterPacket
      *pck)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bsrw.c:756,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/bsrw.c:756,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bsrw.c:759,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/bsrw.c:759,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bsrw.c:763,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bsrw.c:763,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bsrw.c:765,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bsrw.c:765,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bsrw.c:767,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bsrw.c:767,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 2
    argNames:
    - pctx
    - vui
    argTypes:
    - BSRWPid*
    - GF_VUIInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 769
      start: 753
    functionDepth: 1
    functionLinenumber: 753
    functionLinenumberEnd: 769
    functionName: update_props
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_property
    - PROP_UINT
    - PROP_FRAC_INT
    - PROP_BOOL
    linkageType: ''
    returnType: void
    signature: void update_props(BSRWPid *pctx, GF_VUIInfo *vui)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bsrw.c:781,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/bsrw.c:783,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/bsrw.c:783,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bsrw.c:786,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/bsrw.c:790,1
    - Dst: gf_avc_change_vui
      Src: /src/gpac/src/filters/bsrw.c:796,1
    - Dst: update_props
      Src: /src/gpac/src/filters/bsrw.c:798,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bsrw.c:806,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/bsrw.c:808,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/filters/bsrw.c:825,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/bsrw.c:828,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bsrw.c:831,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/bsrw.c:831,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 50
    argCount: 2
    argNames:
    - ctx
    - pctx
    argTypes:
    - GF_BSRWCtx*
    - BSRWPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 772
    functionDepth: 7
    functionLinenumber: 772
    functionLinenumberEnd: 839
    functionName: avc_rewrite_pid_config
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_get_property
    - gf_odf_avc_cfg_write
    - gf_odf_avc_cfg_del
    - gf_filter_pid_negotiate_property
    - update_props
    - gf_list_count
    - gf_avc_change_vui
    - PROP_DATA_NO_COPY
    - PROP_BOOL
    - gf_odf_avc_cfg_read
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err avc_rewrite_pid_config(GF_BSRWCtx *ctx, BSRWPid *pctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bsrw.c:845,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bsrw.c:861,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - ctx
    - pctx
    argTypes:
    - GF_BSRWCtx*
    - BSRWPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 864
      start: 841
    functionDepth: 1
    functionLinenumber: 841
    functionLinenumberEnd: 864
    functionName: reconfigure_alternative_transfer_characteristic
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_property
    - gf_filter_pid_get_property
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err reconfigure_alternative_transfer_characteristic(GF_BSRWCtx *ctx,
      BSRWPid *pctx)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bsrw.c:875,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/bsrw.c:877,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/bsrw.c:877,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bsrw.c:880,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/bsrw.c:884,1
    - Dst: gf_hevc_change_vui
      Src: /src/gpac/src/filters/bsrw.c:889,1
    - Dst: update_props
      Src: /src/gpac/src/filters/bsrw.c:891,1
    - Dst: reconfigure_alternative_transfer_characteristic
      Src: /src/gpac/src/filters/bsrw.c:901,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/bsrw.c:903,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/bsrw.c:905,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bsrw.c:908,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/bsrw.c:908,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 38
    argCount: 2
    argNames:
    - ctx
    - pctx
    argTypes:
    - GF_BSRWCtx*
    - BSRWPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 916
      start: 866
    functionDepth: 8
    functionLinenumber: 866
    functionLinenumberEnd: 916
    functionName: hevc_rewrite_pid_config
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - gf_odf_hevc_cfg_read
    - gf_odf_hevc_cfg_del
    - gf_filter_pid_get_property
    - gf_filter_pid_negotiate_property
    - gf_hevc_change_vui
    - update_props
    - gf_odf_hevc_cfg_write
    - PROP_DATA_NO_COPY
    - PROP_BOOL
    - reconfigure_alternative_transfer_characteristic
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err hevc_rewrite_pid_config(GF_BSRWCtx *ctx, BSRWPid *pctx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bsrw.c:927,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/bsrw.c:931,1
    - Dst: gf_vvc_change_vui
      Src: /src/gpac/src/filters/bsrw.c:935,1
    - Dst: update_props
      Src: /src/gpac/src/filters/bsrw.c:937,1
    - Dst: reconfigure_alternative_transfer_characteristic
      Src: /src/gpac/src/filters/bsrw.c:943,1
    - Dst: gf_odf_vvc_cfg_write
      Src: /src/gpac/src/filters/bsrw.c:945,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/bsrw.c:947,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bsrw.c:950,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/bsrw.c:950,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 2
    argNames:
    - ctx
    - pctx
    argTypes:
    - GF_BSRWCtx*
    - BSRWPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 961
      start: 918
    functionDepth: 6
    functionLinenumber: 918
    functionLinenumberEnd: 961
    functionName: vvc_rewrite_pid_config
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - gf_odf_vvc_cfg_write
    - gf_odf_vvc_cfg_del
    - gf_filter_pid_get_property
    - gf_vvc_change_vui
    - PROP_DATA_NO_COPY
    - update_props
    - gf_odf_vvc_cfg_read
    - reconfigure_alternative_transfer_characteristic
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err vvc_rewrite_pid_config(GF_BSRWCtx *ctx, BSRWPid *pctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bsrw.c:968,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/bsrw.c:970,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/bsrw.c:970,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - pctx
    argTypes:
    - GF_BSRWCtx*
    - BSRWPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 979
      start: 963
    functionDepth: 1
    functionLinenumber: 963
    functionLinenumberEnd: 979
    functionName: av1_rewrite_pid_config
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_negotiate_property
    - gf_filter_pid_get_property
    - PROP_BOOL
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av1_rewrite_pid_config(GF_BSRWCtx *ctx, BSRWPid *pctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - pctx
    argTypes:
    - GF_BSRWCtx*
    - BSRWPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 985
      start: 981
    functionDepth: 0
    functionLinenumber: 981
    functionLinenumberEnd: 985
    functionName: none_rewrite_pid_config
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err none_rewrite_pid_config(GF_BSRWCtx *ctx, BSRWPid *pctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BSRWPid*::rewrite_pid_config
      Src: /src/gpac/src/filters/bsrw.c:989,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - pctx
    argTypes:
    - GF_BSRWCtx*
    - BSRWPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 993
      start: 987
    functionDepth: 1
    functionLinenumber: 987
    functionLinenumberEnd: 993
    functionName: rewrite_pid_config
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 3
    functionsReached:
    - BSRWPid*::rewrite_pid_config
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rewrite_pid_config(GF_BSRWCtx *ctx, BSRWPid *pctx)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 2
    argNames:
    - ctx
    - pctx
    argTypes:
    - GF_BSRWCtx*
    - BSRWPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1027
      start: 995
    functionDepth: 0
    functionLinenumber: 995
    functionLinenumberEnd: 1027
    functionName: init_vui
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void init_vui(GF_BSRWCtx *ctx, BSRWPid *pctx)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_clone
      Src: /src/gpac/src/filters/bsrw.c:1032,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/bsrw.c:1058,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bsrw.c:1065,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/bsrw.c:1065,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bsrw.c:1072,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bsrw.c:1072,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bsrw.c:1079,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bsrw.c:1079,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/bsrw.c:1086,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/bsrw.c:1086,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/bsrw.c:1090,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 44
    argCount: 3
    argNames:
    - ctx
    - pctx
    - pck
    argTypes:
    - GF_BSRWCtx*
    - BSRWPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1091
      start: 1029
    functionDepth: 1
    functionLinenumber: 1029
    functionLinenumberEnd: 1091
    functionName: prores_rewrite_packet
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - PROP_UINT
    - PROP_FRAC
    - gf_filter_pck_new_clone
    - GF_LOG
    - gf_filter_pid_set_property
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err prores_rewrite_packet(GF_BSRWCtx *ctx, BSRWPid *pctx, GF_FilterPacket
      *pck)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/bsrw.c:1097,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/bsrw.c:1098,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/bsrw.c:1104,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/bsrw.c:1107,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/bsrw.c:1108,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bsrw.c:1109,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/bsrw.c:1113,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bsrw.c:1116,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/bsrw.c:1117,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/bsrw.c:1121,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/bsrw.c:1124,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/bsrw.c:1127,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/bsrw.c:1128,1
    - Dst: init_vui
      Src: /src/gpac/src/filters/bsrw.c:1131,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/bsrw.c:1171,1
    - Dst: gf_ceil
      Src: /src/gpac/src/filters/bsrw.c:1180,1
    - Dst: gf_ceil
      Src: /src/gpac/src/filters/bsrw.c:1181,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/bsrw.c:1183,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/bsrw.c:1188,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/bsrw.c:1191,1
    - Dst: rewrite_pid_config
      Src: /src/gpac/src/filters/bsrw.c:1194,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 86
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1196
      start: 1094
    functionDepth: 3
    functionLinenumber: 1094
    functionLinenumberEnd: 1196
    functionName: bsrw_configure_pid
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_remove
    - GF_SAFEALLOC
    - GF_LOG
    - gf_filter_pid_set_framing_mode
    - gf_ceil
    - gf_filter_pid_check_caps
    - gf_fatal_assert
    - gf_list_add
    - gf_list_del_item
    - init_vui
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_new
    - rewrite_pid_config
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bsrw_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/bsrw.c:1202,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/bsrw.c:1204,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/bsrw.c:1208,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/bsrw.c:1210,1
    - Dst: init_vui
      Src: /src/gpac/src/filters/bsrw.c:1216,1
    - Dst: rewrite_pid_config
      Src: /src/gpac/src/filters/bsrw.c:1217,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/bsrw.c:1220,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/bsrw.c:1222,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/bsrw.c:1223,1
    - Dst: BSRWPid*::rewrite_packet
      Src: /src/gpac/src/filters/bsrw.c:1226,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/bsrw.c:1227,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 26
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1231
      start: 1199
    functionDepth: 2
    functionLinenumber: 1199
    functionLinenumberEnd: 1231
    functionName: bsrw_process
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_is_eos
    - gf_filter_pid_drop_packet
    - gf_filter_pid_set_eos
    - gf_filter_get_ipid
    - init_vui
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_filter_pid_get_packet
    - rewrite_pid_config
    - BSRWPid*::rewrite_packet
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bsrw_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/bsrw.c:1235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - filter
    - arg_name
    - new_val
    argTypes:
    - GF_Filter*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1238
      start: 1233
    functionDepth: 1
    functionLinenumber: 1233
    functionLinenumberEnd: 1238
    functionName: bsrw_update_arg
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bsrw_update_arg(GF_Filter *filter, const char *arg_name, const
      GF_PropertyValue *new_val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/src/filters/bsrw.c:1254,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - date_in
    - tc_out
    argTypes:
    - char*
    - GF_TimeCode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1262
      start: 1241
    functionDepth: 0
    functionLinenumber: 1241
    functionLinenumberEnd: 1262
    functionName: bsrw_parse_date
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - sscanf
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bsrw_parse_date(const char *date_in, GF_TimeCode *tc_out)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/bsrw.c:1266,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/bsrw.c:1267,1
    - Dst: bsrw_parse_date
      Src: /src/gpac/src/filters/bsrw.c:1270,1
    - Dst: bsrw_parse_date
      Src: /src/gpac/src/filters/bsrw.c:1271,1
    - Dst: strstr
      Src: /src/gpac/src/filters/bsrw.c:1272,1
    - Dst: bsrw_parse_date
      Src: /src/gpac/src/filters/bsrw.c:1273,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/bsrw.c:1280,1
    - Dst: bsrw_update_arg
      Src: /src/gpac/src/filters/bsrw.c:1286,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1289
      start: 1264
    functionDepth: 2
    functionLinenumber: 1264
    functionLinenumberEnd: 1289
    functionName: bsrw_initialize
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - bsrw_update_arg
    - gf_list_new
    - GF_LOG
    - bsrw_parse_date
    - strstr
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err bsrw_initialize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/bsrw.c:1292,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/bsrw.c:1293,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/bsrw.c:1294,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bsrw.c:1295,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/bsrw.c:1296,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/bsrw.c:1298,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1299
      start: 1290
    functionDepth: 3
    functionLinenumber: 1290
    functionLinenumberEnd: 1299
    functionName: bsrw_finalize
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_list_count
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void bsrw_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1302
      start: 1301
    functionDepth: 0
    functionLinenumber: 1301
    functionLinenumberEnd: 1302
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/bsrw.c:1435,1
    - Dst: gf_cicp_color_primaries_all_names
      Src: /src/gpac/src/filters/bsrw.c:1436,1
    - Dst: gf_cicp_color_transfer_all_names
      Src: /src/gpac/src/filters/bsrw.c:1437,1
    - Dst: gf_cicp_color_matrix_all_names
      Src: /src/gpac/src/filters/bsrw.c:1438,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1441
      start: 1432
    functionDepth: 6
    functionLinenumber: 1432
    functionLinenumberEnd: 1441
    functionName: bsrw_register
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    - gf_cicp_color_matrix_all_names
    - gf_cicp_color_primaries_all_names
    - gf_cicp_color_transfer_all_names
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *bsrw_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1446
      start: 1443
    functionDepth: 0
    functionLinenumber: 1443
    functionLinenumberEnd: 1446
    functionName: bsrw_register
    functionSourceFile: /src/gpac/src/filters/bsrw.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *bsrw_register(GF_FilterSession *session)
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_rescale.c:107,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_rescale.c:110,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/ff_rescale.c:113,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_rescale.c:114,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/ff_rescale.c:121,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_rescale.c:122,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_rescale.c:130,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/ff_rescale.c:134,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/ff_rescale.c:135,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_rescale.c:138,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_rescale.c:139,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_rescale.c:143,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_rescale.c:144,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/ff_rescale.c:145,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/ff_rescale.c:148,1
    - Dst: AV_RL32
      Src: /src/gpac/src/filters/ff_rescale.c:162,1
    - Dst: AV_RL32
      Src: /src/gpac/src/filters/ff_rescale.c:189,1
    - Dst: AV_RL32
      Src: /src/gpac/src/filters/ff_rescale.c:203,1
    - Dst: AV_RL32
      Src: /src/gpac/src/filters/ff_rescale.c:216,1
    - Dst: AV_RL32
      Src: /src/gpac/src/filters/ff_rescale.c:237,1
    - Dst: gf_evg_stencil_set_texture_planes
      Src: /src/gpac/src/filters/ff_rescale.c:263,1
    - Dst: gf_evg_stencil_get_pixel_wide_fast
      Src: /src/gpac/src/filters/ff_rescale.c:289,1
    - Dst: GF_COLW_R
      Src: /src/gpac/src/filters/ff_rescale.c:290,1
    - Dst: GF_COLW_G
      Src: /src/gpac/src/filters/ff_rescale.c:291,1
    - Dst: GF_COLW_B
      Src: /src/gpac/src/filters/ff_rescale.c:292,1
    - Dst: GF_COLW_A
      Src: /src/gpac/src/filters/ff_rescale.c:294,1
    - Dst: gf_evg_stencil_get_pixel_fast
      Src: /src/gpac/src/filters/ff_rescale.c:296,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/filters/ff_rescale.c:297,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/filters/ff_rescale.c:298,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/filters/ff_rescale.c:299,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/filters/ff_rescale.c:301,1
    - Dst: gf_evg_stencil_get_pixel_fast
      Src: /src/gpac/src/filters/ff_rescale.c:309,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/filters/ff_rescale.c:310,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/filters/ff_rescale.c:311,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/filters/ff_rescale.c:312,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/filters/ff_rescale.c:314,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_rescale.c:329,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/ff_rescale.c:349,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_rescale.c:353,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_rescale.c:354,1
    - Dst: gf_color_parse
      Src: /src/gpac/src/filters/ff_rescale.c:396,1
    - Dst: gf_evg_surface_attach_to_buffer
      Src: /src/gpac/src/filters/ff_rescale.c:397,1
    - Dst: gf_evg_surface_clear
      Src: /src/gpac/src/filters/ff_rescale.c:398,1
    - Dst: sws_scale
      Src: /src/gpac/src/filters/ff_rescale.c:403,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_rescale.c:405,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_rescale.c:406,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/ff_rescale.c:407,1
    - Dst: gf_evg_surface_attach_to_buffer
      Src: /src/gpac/src/filters/ff_rescale.c:514,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/filters/ff_rescale.c:515,1
    - Dst: gf_evg_surface_set_path
      Src: /src/gpac/src/filters/ff_rescale.c:516,1
    - Dst: gf_evg_surface_fill
      Src: /src/gpac/src/filters/ff_rescale.c:517,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/ff_rescale.c:519,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_rescale.c:520,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/ff_rescale.c:536,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_rescale.c:537,1
    CyclomaticComplexity: 78
    EdgeCount: 78
    ICount: 323
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 539
      start: 97
    functionDepth: 8
    functionLinenumber: 97
    functionLinenumberEnd: 539
    functionName: ffsws_process
    functionSourceFile: /src/gpac/src/filters/ff_rescale.c
    functionUses: 0
    functionsReached:
    - GF_COLW_B
    - memset
    - gf_evg_stencil_set_texture_planes
    - gf_filter_pck_get_frame_interface
    - gf_filter_pid_get_packet
    - GF_COLW_R
    - GF_COL_G
    - GF_COL_A
    - gf_filter_pck_forward
    - gf_evg_surface_clear
    - gf_evg_surface_set_path
    - AV_RL32
    - gf_filter_pck_discard
    - gf_evg_stencil_set_texture
    - gf_evg_stencil_get_pixel_wide_fast
    - gf_filter_get_udta
    - gf_color_parse
    - sws_scale
    - GF_COL_B
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - gf_evg_surface_attach_to_buffer
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_evg_surface_fill
    - GF_COL_R
    - gf_filter_pid_is_eos
    - gf_evg_stencil_get_pixel_fast
    - GF_COLW_G
    - gf_filter_pck_merge_properties
    - GF_FilterFrameInterface*::get_plane
    - GF_COLW_A
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffsws_process(GF_Filter *filter)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 32
    argCount: 2
    argNames:
    - mode
    - has_param
    argTypes:
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 541
    functionDepth: 0
    functionLinenumber: 541
    functionLinenumberEnd: 559
    functionName: get_sws_mode
    functionSourceFile: /src/gpac/src/filters/ff_rescale.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 get_sws_mode(u32 mode, u32 *has_param)
  - BBCount: 78
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_rescale.c:568,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/ff_rescale.c:572,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/ff_rescale.c:577,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/ff_rescale.c:581,1
    - Dst: gf_filter_is_dynamic
      Src: /src/gpac/src/filters/ff_rescale.c:592,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/ff_rescale.c:593,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_rescale.c:595,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_rescale.c:596,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_rescale.c:596,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_rescale.c:597,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_rescale.c:598,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_rescale.c:598,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_rescale.c:599,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_rescale.c:600,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_rescale.c:600,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_rescale.c:603,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_rescale.c:611,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_rescale.c:613,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_rescale.c:615,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_rescale.c:617,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_rescale.c:619,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_rescale.c:623,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/ff_rescale.c:631,1
    - Dst: gf_pixel_get_downsampling
      Src: /src/gpac/src/filters/ff_rescale.c:639,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_rescale.c:695,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/ff_rescale.c:696,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_rescale.c:698,1
    - Dst: get_sws_mode
      Src: /src/gpac/src/filters/ff_rescale.c:703,1
    - Dst: ffmpeg_pixfmt_from_gpac
      Src: /src/gpac/src/filters/ff_rescale.c:713,1
    - Dst: ffmpeg_pixfmt_from_gpac
      Src: /src/gpac/src/filters/ff_rescale.c:716,1
    - Dst: ffmpeg_pixfmt_from_gpac
      Src: /src/gpac/src/filters/ff_rescale.c:718,1
    - Dst: gf_evg_stencil_set_texture
      Src: /src/gpac/src/filters/ff_rescale.c:721,1
    - Dst: gf_pixel_fmt_is_yuv
      Src: /src/gpac/src/filters/ff_rescale.c:722,1
    - Dst: gf_pixel_is_wide_depth
      Src: /src/gpac/src/filters/ff_rescale.c:723,1
    - Dst: gf_pixel_fmt_is_transparent
      Src: /src/gpac/src/filters/ff_rescale.c:724,1
    - Dst: ffmpeg_pixfmt_from_gpac
      Src: /src/gpac/src/filters/ff_rescale.c:731,1
    - Dst: ffmpeg_pixfmt_from_gpac
      Src: /src/gpac/src/filters/ff_rescale.c:738,1
    - Dst: ffmpeg_pixfmt_from_gpac
      Src: /src/gpac/src/filters/ff_rescale.c:741,1
    - Dst: ffmpeg_pixfmt_from_gpac
      Src: /src/gpac/src/filters/ff_rescale.c:743,1
    - Dst: gf_evg_surface_attach_to_buffer
      Src: /src/gpac/src/filters/ff_rescale.c:746,1
    - Dst: gf_pixel_fmt_is_yuv
      Src: /src/gpac/src/filters/ff_rescale.c:747,1
    - Dst: gf_pixel_is_wide_depth
      Src: /src/gpac/src/filters/ff_rescale.c:748,1
    - Dst: gf_pixel_fmt_is_transparent
      Src: /src/gpac/src/filters/ff_rescale.c:749,1
    - Dst: ffmpeg_pixfmt_from_gpac
      Src: /src/gpac/src/filters/ff_rescale.c:756,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_rescale.c:766,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_rescale.c:769,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/ff_rescale.c:770,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/ff_rescale.c:771,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/ff_rescale.c:774,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_rescale.c:776,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/ff_rescale.c:780,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/ff_rescale.c:786,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/ff_rescale.c:795,1
    - Dst: gf_pixel_get_bytes_per_pixel
      Src: /src/gpac/src/filters/ff_rescale.c:805,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_rescale.c:807,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/ff_rescale.c:808,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_rescale.c:810,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/ff_rescale.c:819,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/ff_rescale.c:827,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/ff_rescale.c:837,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/ff_rescale.c:838,1
    - Dst: gf_path_reset
      Src: /src/gpac/src/filters/ff_rescale.c:844,1
    - Dst: gf_path_add_rect_center
      Src: /src/gpac/src/filters/ff_rescale.c:845,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/ff_rescale.c:845,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filters/ff_rescale.c:845,1
    - Dst: sws_getCachedContext
      Src: /src/gpac/src/filters/ff_rescale.c:859,1
    - Dst: sws_isSupportedInput
      Src: /src/gpac/src/filters/ff_rescale.c:863,1
    - Dst: sws_isSupportedInput
      Src: /src/gpac/src/filters/ff_rescale.c:864,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_rescale.c:865,1
    - Dst: sws_getColorspaceDetails
      Src: /src/gpac/src/filters/ff_rescale.c:874,1
    - Dst: sws_setColorspaceDetails
      Src: /src/gpac/src/filters/ff_rescale.c:886,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_rescale.c:892,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/ff_rescale.c:892,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/ff_rescale.c:892,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_rescale.c:908,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_rescale.c:908,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_rescale.c:909,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_rescale.c:909,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_rescale.c:912,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_rescale.c:912,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_rescale.c:913,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_rescale.c:915,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_rescale.c:915,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_rescale.c:917,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_rescale.c:917,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_rescale.c:919,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_rescale.c:922,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_rescale.c:922,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_rescale.c:923,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_rescale.c:923,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_rescale.c:926,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/ff_rescale.c:926,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_rescale.c:928,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/ff_rescale.c:928,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_rescale.c:930,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_rescale.c:933,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_rescale.c:934,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_rescale.c:935,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_rescale.c:936,1
    CyclomaticComplexity: 110
    EdgeCount: 110
    ICount: 320
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 939
      start: 561
    functionDepth: 5
    functionLinenumber: 561
    functionLinenumberEnd: 939
    functionName: ffsws_configure_pid
    functionSourceFile: /src/gpac/src/filters/ff_rescale.c
    functionUses: 0
    functionsReached:
    - gf_path_add_rect_center
    - gf_pixel_get_downsampling
    - get_sws_mode
    - gf_filter_is_dynamic
    - sws_getCachedContext
    - gf_filter_pid_check_caps
    - memset
    - gf_filter_pid_new
    - gf_realloc
    - sws_isSupportedInput
    - gf_pixel_fmt_is_yuv
    - PROP_FRAC
    - gf_pixel_is_wide_depth
    - gf_evg_stencil_set_texture
    - ffmpeg_pixfmt_from_gpac
    - gf_filter_get_udta
    - gf_filter_pid_copy_properties
    - sws_setColorspaceDetails
    - gf_pixel_fmt_name
    - gf_evg_surface_attach_to_buffer
    - GF_LOG
    - gf_filter_pid_set_property
    - INT2FIX
    - gf_filter_pid_get_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_pixel_fmt_is_transparent
    - gf_pixel_get_size_info
    - gf_path_reset
    - sws_getColorspaceDetails
    - gf_pixel_get_bytes_per_pixel
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffsws_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_rescale.c:943,1
    - Dst: ffmpeg_setup_logs
      Src: /src/gpac/src/filters/ff_rescale.c:944,1
    - Dst: gf_evg_surface_new
      Src: /src/gpac/src/filters/ff_rescale.c:946,1
    - Dst: gf_evg_stencil_new
      Src: /src/gpac/src/filters/ff_rescale.c:947,1
    - Dst: gf_path_new
      Src: /src/gpac/src/filters/ff_rescale.c:948,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 958
      start: 941
    functionDepth: 2
    functionLinenumber: 941
    functionLinenumberEnd: 958
    functionName: ffsws_initialize
    functionSourceFile: /src/gpac/src/filters/ff_rescale.c
    functionUses: 0
    functionsReached:
    - gf_path_new
    - gf_evg_stencil_new
    - ffmpeg_setup_logs
    - gf_evg_surface_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffsws_initialize(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_rescale.c:961,1
    - Dst: sws_freeContext
      Src: /src/gpac/src/filters/ff_rescale.c:962,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_rescale.c:963,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_rescale.c:964,1
    - Dst: gf_evg_surface_delete
      Src: /src/gpac/src/filters/ff_rescale.c:966,1
    - Dst: gf_evg_stencil_delete
      Src: /src/gpac/src/filters/ff_rescale.c:967,1
    - Dst: gf_path_del
      Src: /src/gpac/src/filters/ff_rescale.c:968,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 971
      start: 959
    functionDepth: 2
    functionLinenumber: 959
    functionLinenumberEnd: 971
    functionName: ffsws_finalize
    functionSourceFile: /src/gpac/src/filters/ff_rescale.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_evg_stencil_delete
    - gf_path_del
    - gf_evg_surface_delete
    - sws_freeContext
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ffsws_finalize(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_rescale.c:977,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/ff_rescale.c:980,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/ff_rescale.c:983,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/ff_rescale.c:986,1
    - Dst: ffsws_configure_pid
      Src: /src/gpac/src/filters/ff_rescale.c:988,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - filter
    - pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 989
      start: 974
    functionDepth: 6
    functionLinenumber: 974
    functionLinenumberEnd: 989
    functionName: ffsws_reconfigure_output
    functionSourceFile: /src/gpac/src/filters/ff_rescale.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_caps_query
    - ffsws_configure_pid
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffsws_reconfigure_output(GF_Filter *filter, GF_FilterPid *pid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 993
      start: 992
    functionDepth: 0
    functionLinenumber: 992
    functionLinenumberEnd: 993
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/ff_rescale.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_pixel_fmt_all_names
      Src: /src/gpac/src/filters/ff_rescale.c:1081,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1086
      start: 1078
    functionDepth: 2
    functionLinenumber: 1078
    functionLinenumberEnd: 1086
    functionName: ffsws_register
    functionSourceFile: /src/gpac/src/filters/ff_rescale.c
    functionUses: 0
    functionsReached:
    - gf_pixel_fmt_all_names
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ffsws_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _mux
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 43
    functionName: AVFMT_URL
    functionSourceFile: /src/gpac/src/filters/ff_common.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: AVFMT_URL(_mux)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _mux
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: AVFMT_URL
    functionSourceFile: /src/gpac/src/filters/ff_common.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: AVFMT_URL(_mux)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _pkt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: FF_FREE_PCK
    functionSourceFile: /src/gpac/src/filters/ff_common.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FF_FREE_PCK(_pkt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ctx
    - ','
    - _pkt
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: FF_INIT_PCK
    functionSourceFile: /src/gpac/src/filters/ff_common.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FF_INIT_PCK(ctx, _pkt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _pkt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 55
    functionName: FF_FREE_PCK
    functionSourceFile: /src/gpac/src/filters/ff_common.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FF_FREE_PCK(_pkt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _pkt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 56
    functionName: FF_RELEASE_PCK
    functionSourceFile: /src/gpac/src/filters/ff_common.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FF_RELEASE_PCK(_pkt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ctx
    - ','
    - _pkt
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 57
    functionName: FF_INIT_PCK
    functionSourceFile: /src/gpac/src/filters/ff_common.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FF_INIT_PCK(ctx, _pkt)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:116,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:118,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dmx_ghi.c:121,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:123,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/dmx_ghi.c:123,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:124,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/dmx_ghi.c:124,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:125,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_ghi.c:125,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dmx_ghi.c:125,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:126,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_ghi.c:126,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dmx_ghi.c:126,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:128,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ghi.c:128,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:133,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_ghi.c:133,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:136,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_ghi.c:136,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:139,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_ghi.c:139,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:142,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_ghi.c:142,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_ghi.c:145,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_ghi.c:145,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_ghi.c:146,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ghi.c:146,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_ghi.c:147,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ghi.c:147,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:149,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_ghi.c:149,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:150,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ghi.c:150,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_ghi.c:153,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_ghi.c:153,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_ghi.c:155,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_ghi.c:155,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:158,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ghi.c:158,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:161,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ghi.c:161,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:165,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_ghi.c:165,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:167,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_ghi.c:167,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:170,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_ghi.c:170,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dmx_ghi.c:173,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 52
    argCount: 2
    argNames:
    - ctx
    - st
    argTypes:
    - GHIDmxCtx*
    - GHIStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 175
    functionName: set_opids_props
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - PROP_STRING
    - gf_filter_pid_set_property_str
    - gf_list_count
    - PROP_FRAC64_INT
    - gf_filter_pid_set_name
    - PROP_LONGUINT
    - gf_file_basename
    - gf_filter_pid_set_property
    - PROP_FRAC_INT
    linkageType: ''
    returnType: void
    signature: void set_opids_props(GHIDmxCtx *ctx, GHIStream *st)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:182,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:186,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_ghi.c:189,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:194,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:200,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dmx_ghi.c:204,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_ghi.c:206,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dmx_ghi.c:208,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dmx_ghi.c:209,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_ghi.c:210,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:211,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_ghi.c:211,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/dmx_ghi.c:212,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_ghi.c:213,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_ghi.c:217,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dmx_ghi.c:218,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_ghi.c:219,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_ghi.c:220,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:221,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_ghi.c:221,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/dmx_ghi.c:222,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_ghi.c:223,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_ghi.c:225,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 3
    argNames:
    - ctx
    - st
    - opid
    argTypes:
    - GHIDmxCtx*
    - GHIStream*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 226
    functionName: ghi_dmx_send_seg_times
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pck_set_property
    - gf_filter_pck_new_alloc
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_seek_flag
    - gf_filter_pid_set_eos
    - gf_list_count
    - gf_filter_pck_set_sap
    - PROP_BOOL
    - gf_timestamp_rescale
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void ghi_dmx_send_seg_times(GHIDmxCtx *ctx, GHIStream *st, GF_FilterPid
      *opid)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_ghi.c:230,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dmx_ghi.c:236,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_ghi.c:242,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_ghi.c:243,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dmx_ghi.c:244,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_ghi.c:248,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_ghi.c:250,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_ghi.c:252,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:255,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:256,1
    - Dst: gf_filter_pid_is_filter_in_parents
      Src: /src/gpac/src/filters/dmx_ghi.c:257,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ghi.c:262,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ghi.c:263,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:271,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dmx_ghi.c:271,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dmx_ghi.c:276,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_ghi.c:277,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_ghi.c:279,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_ghi.c:281,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dmx_ghi.c:284,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_ghi.c:289,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_ghi.c:290,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dmx_ghi.c:291,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:294,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_ghi.c:295,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_ghi.c:296,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dmx_ghi.c:297,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dmx_ghi.c:299,1
    - Dst: set_opids_props
      Src: /src/gpac/src/filters/dmx_ghi.c:302,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 66
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 228
    functionDepth: 2
    functionLinenumber: 228
    functionLinenumberEnd: 305
    functionName: ghi_dmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_udta
    - gf_list_get
    - set_opids_props
    - gf_filter_pid_get_property
    - gf_filter_pid_set_discard
    - gf_filter_pid_set_framing_mode
    - GF_LOG
    - GF_FEVT_INIT
    - gf_filter_pid_is_filter_in_parents
    - gf_filter_pid_check_caps
    - gf_list_count
    - strcmp
    - gf_filter_pid_get_name
    - gf_list_add
    - gf_filter_pid_send_event
    - gf_filter_pid_get_udta
    - gf_filter_pid_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ghi_dmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_ghi.c:310,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_ghi.c:311,1
    - Dst: ghi_dmx_send_seg_times
      Src: /src/gpac/src/filters/dmx_ghi.c:317,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:321,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_ghi.c:322,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dmx_ghi.c:323,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_ghi.c:324,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_ghi.c:325,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:326,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_ghi.c:326,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dmx_ghi.c:327,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dmx_ghi.c:328,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_ghi.c:329,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_ghi.c:331,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_ghi.c:335,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_ghi.c:358,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 51
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 307
    functionDepth: 2
    functionLinenumber: 307
    functionLinenumberEnd: 373
    functionName: ghi_dmx_process_event
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pck_set_property
    - gf_filter_pck_new_alloc
    - ghi_dmx_send_seg_times
    - gf_filter_pck_set_dts
    - gf_filter_pid_send_event
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_duration
    - gf_filter_pck_send
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - gf_filter_pck_set_sap
    - PROP_BOOL
    - gf_filter_pid_get_udta
    - gf_timestamp_rescale
    - gf_filter_get_udta
    linkageType: ''
    returnType: Bool
    signature: Bool ghi_dmx_process_event(GF_Filter *filter, const GF_FilterEvent
      *evt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_ghi.c:378,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - failed_filter
    - udta
    - err
    argTypes:
    - GF_Filter*
    - void*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 375
    functionDepth: 1
    functionLinenumber: 375
    functionLinenumberEnd: 380
    functionName: ghi_dmx_on_filter_setup_error
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_filter_setup_failure
    linkageType: ''
    returnType: Bool
    signature: Bool ghi_dmx_on_filter_setup_error(GF_Filter *failed_filter, void *udta,
      GF_Err err)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:385,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_ghi.c:388,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dmx_ghi.c:389,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_ghi.c:390,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_ghi.c:393,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dmx_ghi.c:394,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_ghi.c:395,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:401,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:402,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:412,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ghi.c:414,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_ghi.c:415,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ghi.c:416,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filters/dmx_ghi.c:416,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ghi.c:417,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ghi.c:418,1
    - Dst: gf_props_parse_type
      Src: /src/gpac/src/filters/dmx_ghi.c:418,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ghi.c:419,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/dmx_ghi.c:422,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filters/dmx_ghi.c:423,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_ghi.c:428,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_ghi.c:438,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/filters/dmx_ghi.c:441,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/dmx_ghi.c:443,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filters/dmx_ghi.c:454,1
    - Dst: gf_stream_type_by_name
      Src: /src/gpac/src/filters/dmx_ghi.c:459,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/dmx_ghi.c:461,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:467,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/dmx_ghi.c:469,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filters/dmx_ghi.c:471,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ghi.c:473,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:475,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:476,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dmx_ghi.c:477,1
    - Dst: set_opids_props
      Src: /src/gpac/src/filters/dmx_ghi.c:479,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 83
    argCount: 3
    argNames:
    - filter
    - ctx
    - st
    argTypes:
    - GF_Filter*
    - GHIDmxCtx*
    - GHIStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 481
      start: 382
    functionDepth: 2
    functionLinenumber: 382
    functionLinenumberEnd: 481
    functionName: ghi_dmx_declare_opid_xml
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_props_reset_single
    - gf_stream_type_by_name
    - gf_list_count
    - gf_filter_pid_set_udta
    - gf_filter_pid_new
    - gf_realloc
    - gf_list_get
    - gf_list_add
    - gf_codecid_parse
    - gf_props_parse_value
    - gf_props_get_id
    - gf_filter_pid_copy_properties
    - gf_props_4cc_get_name
    - gf_props_parse_type
    - gf_filter_pid_set_property_dyn
    - gf_list_enum
    - gf_filter_pid_set_property
    - strlen
    - gf_props_4cc_get_type
    - set_opids_props
    - gf_base64_decode
    - strcmp
    linkageType: ''
    returnType: void
    signature: void ghi_dmx_declare_opid_xml(GF_Filter *filter, GHIDmxCtx *ctx, GHIStream
      *st)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:486,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_ghi.c:488,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dmx_ghi.c:489,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_ghi.c:490,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_ghi.c:493,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dmx_ghi.c:494,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_ghi.c:495,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:499,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dmx_ghi.c:500,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dmx_ghi.c:502,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:511,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/filters/dmx_ghi.c:514,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:515,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/dmx_ghi.c:517,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:528,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_ghi.c:532,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_ghi.c:535,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:538,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:539,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_ghi.c:542,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_ghi.c:543,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/dmx_ghi.c:546,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/filters/dmx_ghi.c:546,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/filters/dmx_ghi.c:549,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:552,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:553,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/filters/dmx_ghi.c:556,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/filters/dmx_ghi.c:557,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:560,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:561,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:562,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:565,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:566,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:567,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:568,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/filters/dmx_ghi.c:573,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:580,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dmx_ghi.c:581,1
    - Dst: gf_bs_mark_overflow
      Src: /src/gpac/src/filters/dmx_ghi.c:582,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_ghi.c:585,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dmx_ghi.c:586,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:593,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_ghi.c:594,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/filters/dmx_ghi.c:596,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:604,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_ghi.c:605,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:607,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:611,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_ghi.c:612,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:614,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:615,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:623,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/dmx_ghi.c:625,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ghi.c:626,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filters/dmx_ghi.c:628,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_ghi.c:630,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/filters/dmx_ghi.c:630,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:637,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:638,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dmx_ghi.c:639,1
    - Dst: set_opids_props
      Src: /src/gpac/src/filters/dmx_ghi.c:641,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 135
    argCount: 4
    argNames:
    - filter
    - ctx
    - st
    - bs
    argTypes:
    - GF_Filter*
    - GHIDmxCtx*
    - GHIStream*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 483
    functionDepth: 7
    functionLinenumber: 483
    functionLinenumberEnd: 642
    functionName: ghi_dmx_declare_opid_bin
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_free
    - gf_bs_read_double
    - gf_props_reset_single
    - gf_list_count
    - gf_filter_pid_set_udta
    - gf_bs_available
    - gf_filter_pid_new
    - gf_bs_read_utf8
    - gf_list_get
    - gf_bs_read_u32
    - gf_bs_mark_overflow
    - gf_list_add
    - gf_bs_skip_bytes
    - FLT2FIX
    - gf_filter_pid_copy_properties
    - gf_bs_get_position
    - gf_bs_read_float
    - gf_bs_read_u8
    - gf_filter_pid_set_property_dyn
    - gf_bs_is_overflow
    - gf_filter_pid_set_property
    - gf_malloc
    - gf_props_4cc_get_type
    - set_opids_props
    - gf_bs_seek
    - gf_bs_read_u64
    linkageType: ''
    returnType: void
    signature: void ghi_dmx_declare_opid_bin(GF_Filter *filter, GHIDmxCtx *ctx, GHIStream
      *st, GF_BitStream *bs)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:658,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:659,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ghi.c:665,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GHIDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 672
      start: 644
    functionDepth: 1
    functionLinenumber: 644
    functionLinenumberEnd: 672
    functionName: ghi_dmx_unmark_muxed
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: void
    signature: void ghi_dmx_unmark_muxed(GHIDmxCtx *ctx)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/filters/dmx_ghi.c:679,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ghi.c:682,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/dmx_ghi.c:689,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ghi.c:699,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ghi.c:706,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - ctx
    - st
    argTypes:
    - GHIDmxCtx*
    - GHIStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 674
    functionDepth: 0
    functionLinenumber: 674
    functionLinenumberEnd: 711
    functionName: ghi_dmx_check_mux
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - strchr
    - strcmp
    - gf_props_parse_value
    linkageType: ''
    returnType: Bool
    signature: Bool ghi_dmx_check_mux(GHIDmxCtx *ctx, GHIStream *st)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dmx_ghi.c:716,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_ghi.c:722,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_ghi.c:723,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_ghi.c:725,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:726,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_ghi.c:728,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:729,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:731,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_ghi.c:734,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:735,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_ghi.c:738,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:739,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:742,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:743,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 4
    argNames:
    - ctx
    - bs
    - st
    - num_seg
    argTypes:
    - GHIDmxCtx*
    - GF_BitStream*
    - GHIStream*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 713
    functionDepth: 7
    functionLinenumber: 713
    functionLinenumberEnd: 751
    functionName: ghi_dmx_parse_seg
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_bs_seek
    - GF_SAFEALLOC
    - gf_list_add
    - gf_bs_read_u64
    linkageType: ''
    returnType: void
    signature: void ghi_dmx_parse_seg(GHIDmxCtx *ctx, GF_BitStream *bs, GHIStream
      *st, s32 num_seg)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:755,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:756,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:757,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:758,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_ghi.c:759,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_ghi.c:760,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/filters/dmx_ghi.c:761,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:763,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_ghi.c:768,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_ghi.c:770,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_ghi.c:772,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_ghi.c:774,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_ghi.c:777,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:778,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/filters/dmx_ghi.c:780,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/filters/dmx_ghi.c:782,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:785,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:786,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:788,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:789,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:790,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:791,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:792,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:793,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:794,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_ghi.c:795,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_ghi.c:796,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dmx_ghi.c:797,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_ghi.c:800,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:801,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dmx_ghi.c:802,1
    - Dst: ghi_dmx_check_mux
      Src: /src/gpac/src/filters/dmx_ghi.c:804,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_ghi.c:807,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dmx_ghi.c:808,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:822,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dmx_ghi.c:832,1
    - Dst: ghi_dmx_parse_seg
      Src: /src/gpac/src/filters/dmx_ghi.c:833,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:835,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:845,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_ghi.c:863,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dmx_ghi.c:864,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 95
    argCount: 3
    argNames:
    - filter
    - ctx
    - bs
    argTypes:
    - GF_Filter*
    - GHIDmxCtx*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 867
      start: 753
    functionDepth: 8
    functionLinenumber: 753
    functionLinenumberEnd: 867
    functionName: ghi_dmx_init_bin
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_utf8
    - gf_list_new
    - gf_bs_read_u32
    - gf_list_get
    - GF_SAFEALLOC
    - GF_LOG
    - gf_bs_get_position
    - gf_list_add
    - ghi_dmx_parse_seg
    - gf_bs_read_u8
    - gf_bs_read_u16
    - gf_bs_read_u64
    - ghi_dmx_check_mux
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ghi_dmx_init_bin(GF_Filter *filter, GHIDmxCtx *ctx, GF_BitStream
      *bs)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/filters/dmx_ghi.c:873,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/filters/dmx_ghi.c:874,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filters/dmx_ghi.c:877,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:878,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_ghi.c:878,1
    - Dst: gf_mpd_new
      Src: /src/gpac/src/filters/dmx_ghi.c:881,1
    - Dst: gf_mpd_init_from_dom
      Src: /src/gpac/src/filters/dmx_ghi.c:882,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/dmx_ghi.c:882,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filters/dmx_ghi.c:883,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:885,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_ghi.c:885,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/filters/dmx_ghi.c:886,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:895,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:897,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/filters/dmx_ghi.c:898,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:904,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:906,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:907,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:908,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_ghi.c:911,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_ghi.c:934,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_ghi.c:935,1
    - Dst: ghi_dmx_check_mux
      Src: /src/gpac/src/filters/dmx_ghi.c:937,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:941,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:942,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:942,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/filters/dmx_ghi.c:943,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:950,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:969,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:983,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/filters/dmx_ghi.c:987,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 92
    argCount: 3
    argNames:
    - filter
    - ctx
    - data
    argTypes:
    - GF_Filter*
    - GHIDmxCtx*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 992
      start: 869
    functionDepth: 11
    functionLinenumber: 869
    functionLinenumberEnd: 992
    functionName: ghi_dmx_init_xml
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_new
    - gf_xml_dom_get_root
    - GF_SAFEALLOC
    - GF_LOG
    - gf_xml_dom_parse_string
    - gf_list_count
    - gf_xml_dom_new
    - gf_mpd_new
    - gf_list_add
    - gf_error_to_string
    - gf_mpd_del
    - gf_mpd_init_from_dom
    - ghi_dmx_check_mux
    - gf_xml_dom_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ghi_dmx_init_xml(GF_Filter *filter, GHIDmxCtx *ctx, const u8
      *data)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_ghi.c:998,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dmx_ghi.c:1001,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_ghi.c:1006,1
    - Dst: ghi_dmx_init_bin
      Src: /src/gpac/src/filters/dmx_ghi.c:1007,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/filters/dmx_ghi.c:1008,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/filters/dmx_ghi.c:1009,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_ghi.c:1010,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_ghi.c:1012,1
    - Dst: ghi_dmx_init_xml
      Src: /src/gpac/src/filters/dmx_ghi.c:1014,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ghi.c:1015,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_ghi.c:1023,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_ghi.c:1024,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_ghi.c:1025,1
    - Dst: ghi_dmx_unmark_muxed
      Src: /src/gpac/src/filters/dmx_ghi.c:1030,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:1033,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:1034,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:1037,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:1038,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ghi.c:1039,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_ghi.c:1045,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dmx_ghi.c:1046,1
    - Dst: ghi_dmx_parse_seg
      Src: /src/gpac/src/filters/dmx_ghi.c:1055,1
    - Dst: ghi_dmx_declare_opid_bin
      Src: /src/gpac/src/filters/dmx_ghi.c:1059,1
    - Dst: ghi_dmx_declare_opid_xml
      Src: /src/gpac/src/filters/dmx_ghi.c:1061,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_ghi.c:1066,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_ghi.c:1069,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/dmx_ghi.c:1073,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_ghi.c:1074,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_ghi.c:1075,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/dmx_ghi.c:1080,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_ghi.c:1081,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_ghi.c:1082,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/dmx_ghi.c:1085,1
    - Dst: gf_filter_connect_source
      Src: /src/gpac/src/filters/dmx_ghi.c:1097,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ghi.c:1098,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_ghi.c:1100,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_ghi.c:1101,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:1103,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_ghi.c:1103,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_ghi.c:1104,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/dmx_ghi.c:1107,1
    - Dst: gf_filter_set_setup_failure_callback
      Src: /src/gpac/src/filters/dmx_ghi.c:1109,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_ghi.c:1112,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_ghi.c:1113,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dmx_ghi.c:1114,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:1117,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 97
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GHIDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1119
      start: 993
    functionDepth: 12
    functionLinenumber: 993
    functionLinenumberEnd: 1119
    functionName: ghi_dmx_init
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_new
    - gf_filter_get_sep
    - gf_list_count
    - ghi_dmx_parse_seg
    - gf_filter_set_setup_failure_callback
    - gf_filter_pid_get_packet
    - ghi_dmx_unmark_muxed
    - gf_list_get
    - gf_strdup
    - memcpy
    - sprintf
    - ghi_dmx_init_xml
    - gf_dynstrcat
    - ghi_dmx_declare_opid_bin
    - gf_filter_pid_drop_packet
    - ghi_dmx_declare_opid_xml
    - gf_utf8_is_legal
    - gf_filter_set_source
    - gf_filter_pid_set_discard
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_timestamp_less
    - gf_error_to_string
    - ghi_dmx_init_bin
    - gf_filter_setup_failure
    - gf_bs_is_overflow
    - gf_filter_connect_source
    - gf_malloc
    - gf_filter_pid_get_property
    - gf_url_concatenate
    - gf_bs_del
    - strcmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ghi_dmx_init(GF_Filter *filter, GHIDmxCtx *ctx)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_ghi.c:1123,1
    - Dst: ghi_dmx_init
      Src: /src/gpac/src/filters/dmx_ghi.c:1128,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:1131,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:1133,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:1138,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_ghi.c:1139,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_ghi.c:1141,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_ghi.c:1143,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dmx_ghi.c:1147,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/dmx_ghi.c:1152,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dmx_ghi.c:1154,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:1156,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_ghi.c:1156,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:1158,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ghi.c:1158,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:1163,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ghi.c:1163,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_ghi.c:1166,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/dmx_ghi.c:1170,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_ghi.c:1174,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_ghi.c:1175,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_ghi.c:1176,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:1179,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:1182,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_ghi.c:1184,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 55
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1188
      start: 1121
    functionDepth: 13
    functionLinenumber: 1121
    functionLinenumberEnd: 1188
    functionName: ghi_dmx_process
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_ref
    - gf_list_count
    - ghi_dmx_init
    - gf_filter_pid_get_packet
    - gf_list_get
    - gf_filter_pck_set_property
    - gf_filter_pck_forward
    - GF_FEVT_INIT
    - PROP_BOOL
    - gf_filter_get_udta
    - gf_filter_pid_drop_packet
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_filter_pid_send_event
    - gf_filter_pid_is_eos
    - PROP_UINT
    - gf_filter_pck_merge_properties
    - gf_filter_pck_get_dts
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ghi_dmx_process(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_ghi.c:1192,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_ghi.c:1193,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:1199,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:1203,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1207
      start: 1190
    functionDepth: 1
    functionLinenumber: 1190
    functionLinenumberEnd: 1207
    functionName: ghi_dmx_initialize
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_new
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ghi_dmx_initialize(GF_Filter *filter)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_ghi.c:1211,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:1213,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_ghi.c:1214,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filters/dmx_ghi.c:1218,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:1221,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_ghi.c:1222,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ghi.c:1223,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_ghi.c:1225,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:1229,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_ghi.c:1230,1
    - Dst: gf_mpd_segment_url_free
      Src: /src/gpac/src/filters/dmx_ghi.c:1231,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_ghi.c:1233,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:1236,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_ghi.c:1237,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/filters/dmx_ghi.c:1238,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_ghi.c:1240,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_ghi.c:1243,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ghi.c:1244,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ghi.c:1245,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ghi.c:1246,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ghi.c:1247,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_ghi.c:1249,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ghi.c:1250,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1252
      start: 1209
    functionDepth: 4
    functionLinenumber: 1209
    functionLinenumberEnd: 1252
    functionName: ghi_dmx_finalize
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_mpd_segment_url_free
    - gf_props_reset_single
    - gf_list_count
    - gf_xml_dom_node_del
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ghi_dmx_finalize(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 3
    argNames:
    - data
    - data_size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1263
      start: 1255
    functionDepth: 0
    functionLinenumber: 1255
    functionLinenumberEnd: 1263
    functionName: ghi_dmx_probe_data
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *ghi_dmx_probe_data(const u8 *data, u32 data_size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1266
      start: 1265
    functionDepth: 0
    functionLinenumber: 1265
    functionLinenumberEnd: 1266
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1382
      start: 1379
    functionDepth: 0
    functionLinenumber: 1379
    functionLinenumberEnd: 1382
    functionName: ghidmx_register
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ghidmx_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1387
      start: 1384
    functionDepth: 0
    functionLinenumber: 1384
    functionLinenumberEnd: 1387
    functionName: ghidmx_register
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ghidmx_register(GF_FilterSession *session)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/ff_mx.c:133,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_mx.c:139,1
    - Dst: avformat_init_output
      Src: /src/gpac/src/filters/ff_mx.c:141,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:144,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_mx.c:144,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_mx.c:146,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/ff_mx.c:147,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/ff_mx.c:151,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/ff_mx.c:153,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/ff_mx.c:154,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_mx.c:163,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/ff_mx.c:164,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ff_mx.c:165,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:174,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/ff_mx.c:177,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/ff_mx.c:189,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/ff_mx.c:190,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:193,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/ff_mx.c:196,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/ff_mx.c:202,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:205,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:206,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:211,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/ff_mx.c:213,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_mx.c:220,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_mx.c:222,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_mx.c:223,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_mx.c:236,1
    - Dst: avformat_write_header
      Src: /src/gpac/src/filters/ff_mx.c:240,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:242,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_mx.c:242,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_mx.c:244,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/ff_mx.c:245,1
    - Dst: ffmpeg_report_options
      Src: /src/gpac/src/filters/ff_mx.c:249,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 93
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_FFMuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 124
    functionDepth: 2
    functionLinenumber: 124
    functionLinenumberEnd: 252
    functionName: ffmx_init_mux
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - av_dict_set
    - avformat_init_output
    - memset
    - gf_filter_get_ipid
    - av_dict_free
    - av_dict_copy
    - gf_filter_pid_get_packet
    - gf_assert
    - gf_filter_pck_get_cts
    - GF_LOG
    - av_err2str
    - av_malloc
    - gf_filter_get_ipid_count
    - gf_timestamp_rescale
    - ffmpeg_report_options
    - gf_filter_pid_get_property
    - gf_filter_abort
    - gf_timestamp_greater
    - gf_filter_pid_get_udta
    - avformat_write_header
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffmx_init_mux(GF_Filter *filter, GF_FFMuxCtx *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/ff_mx.c:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - opaque
    - buf
    - buf_size
    argTypes:
    - void*
    - uint8_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 258
    functionDepth: 2
    functionLinenumber: 258
    functionLinenumberEnd: 263
    functionName: ffavio_write_packet
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - gf_fwrite
    linkageType: ''
    returnType: int
    signature: int ffavio_write_packet(void *opaque, const uint8_t *buf, int buf_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/ff_mx.c:269,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/ff_mx.c:270,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/ff_mx.c:271,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/ff_mx.c:274,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - opaque
    - offset
    - whence
    argTypes:
    - void*
    - int64_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 265
    functionDepth: 2
    functionLinenumber: 265
    functionLinenumberEnd: 275
    functionName: ffavio_seek
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - gf_fsize
    - gf_fseek
    - gf_ftell
    linkageType: ''
    returnType: int64_t
    signature: int64_t ffavio_seek(void *opaque, int64_t offset, int whence)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_mx.c:284,1
    - Dst: gf_url_is_local
      Src: /src/gpac/src/filters/ff_mx.c:290,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/ff_mx.c:291,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/ff_mx.c:292,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/ff_mx.c:297,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_mx.c:299,1
    - Dst: avio_alloc_context
      Src: /src/gpac/src/filters/ff_mx.c:302,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:306,1
    - Dst: avio_open2
      Src: /src/gpac/src/filters/ff_mx.c:311,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:313,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_mx.c:313,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/ff_mx.c:318,1
    - Dst: av_freep
      Src: /src/gpac/src/filters/ff_mx.c:321,1
    - Dst: av_strdup
      Src: /src/gpac/src/filters/ff_mx.c:322,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 2
    argNames:
    - ctx
    - final_name
    argTypes:
    - GF_FFMuxCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 277
    functionDepth: 5
    functionLinenumber: 277
    functionLinenumberEnd: 328
    functionName: ffmx_open_url
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - av_strdup
    - avio_alloc_context
    - GF_LOG
    - avio_open2
    - av_err2str
    - gf_url_is_local
    - strncpy
    - strncmp
    - gf_fopen
    - av_malloc
    - av_freep
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffmx_open_url(GF_FFMuxCtx *ctx, char *final_name)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_mx.c:333,1
    - Dst: ffmpeg_setup_logs
      Src: /src/gpac/src/filters/ff_mx.c:337,1
    - Dst: av_packet_alloc
      Src: /src/gpac/src/filters/ff_mx.c:341,1
    - Dst: avformat_alloc_context
      Src: /src/gpac/src/filters/ff_mx.c:344,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/ff_mx.c:348,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_mx.c:352,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filters/ff_mx.c:353,1
    - Dst: strchr
      Src: /src/gpac/src/filters/ff_mx.c:355,1
    - Dst: strchr
      Src: /src/gpac/src/filters/ff_mx.c:356,1
    - Dst: avio_open2
      Src: /src/gpac/src/filters/ff_mx.c:362,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_mx.c:363,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:365,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_mx.c:371,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/ff_mx.c:375,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:381,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/ff_mx.c:386,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/ff_mx.c:391,1
    - Dst: gf_filter_set_max_extra_input_pids
      Src: /src/gpac/src/filters/ff_mx.c:392,1
    - Dst: av_guess_format
      Src: /src/gpac/src/filters/ff_mx.c:396,1
    - Dst: strstr
      Src: /src/gpac/src/filters/ff_mx.c:401,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/ff_mx.c:407,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/ff_mx.c:409,1
    - Dst: av_guess_format
      Src: /src/gpac/src/filters/ff_mx.c:410,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/ff_mx.c:411,1
    - Dst: av_guess_format
      Src: /src/gpac/src/filters/ff_mx.c:412,1
    - Dst: av_guess_format
      Src: /src/gpac/src/filters/ff_mx.c:414,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:418,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:420,1
    - Dst: gf_filter_is_temporary
      Src: /src/gpac/src/filters/ff_mx.c:428,1
    - Dst: gf_filter_meta_set_instances
      Src: /src/gpac/src/filters/ff_mx.c:429,1
    - Dst: ffmx_open_url
      Src: /src/gpac/src/filters/ff_mx.c:437,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 82
    argCount: 2
    argNames:
    - filter
    - use_templates
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 329
    functionDepth: 6
    functionLinenumber: 329
    functionLinenumberEnd: 438
    functionName: ffmx_initialize_ex
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - gf_filter_override_caps
    - gf_filter_is_temporary
    - gf_filter_meta_set_instances
    - PROP_STRING
    - gf_fileio_translate_url
    - avio_open2
    - av_dict_free
    - gf_filter_set_max_extra_input_pids
    - strchr
    - gf_list_new
    - av_packet_alloc
    - strncmp
    - ffmx_open_url
    - gf_filter_get_udta
    - GF_LOG
    - strstr
    - strncpy
    - av_guess_format
    - PROP_UINT
    - avformat_alloc_context
    - ffmpeg_setup_logs
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffmx_initialize_ex(GF_Filter *filter, Bool use_templates)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_mx.c:442,1
    - Dst: ffmx_initialize_ex
      Src: /src/gpac/src/filters/ff_mx.c:448,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 440
    functionDepth: 7
    functionLinenumber: 440
    functionLinenumberEnd: 449
    functionName: ffmx_initialize
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - ffmx_initialize_ex
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffmx_initialize(GF_Filter *filter)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: avformat_alloc_output_context2
      Src: /src/gpac/src/filters/ff_mx.c:459,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_mx.c:465,1
    - Dst: avformat_new_stream
      Src: /src/gpac/src/filters/ff_mx.c:480,1
    - Dst: avformat_free_context
      Src: /src/gpac/src/filters/ff_mx.c:481,1
    - Dst: avcodec_parameters_copy
      Src: /src/gpac/src/filters/ff_mx.c:486,1
    - Dst: av_codec_get_id
      Src: /src/gpac/src/filters/ff_mx.c:488,1
    - Dst: av_codec_get_tag
      Src: /src/gpac/src/filters/ff_mx.c:489,1
    - Dst: MKTAG
      Src: /src/gpac/src/filters/ff_mx.c:499,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_mx.c:503,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_mx.c:506,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/ff_mx.c:507,1
    - Dst: avformat_free_context
      Src: /src/gpac/src/filters/ff_mx.c:515,1
    - Dst: GF_FFMuxCtx*::muxer::io_close
      Src: /src/gpac/src/filters/ff_mx.c:519,1
    - Dst: GF_FFMuxCtx*::muxer::io_close2
      Src: /src/gpac/src/filters/ff_mx.c:521,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/ff_mx.c:527,1
    - Dst: av_freep
      Src: /src/gpac/src/filters/ff_mx.c:530,1
    - Dst: av_strdup
      Src: /src/gpac/src/filters/ff_mx.c:531,1
    - Dst: gf_url_is_local
      Src: /src/gpac/src/filters/ff_mx.c:537,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/ff_mx.c:538,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/ff_mx.c:539,1
    - Dst: GF_FFMuxCtx*::muxer::io_open
      Src: /src/gpac/src/filters/ff_mx.c:542,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:544,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_mx.c:544,1
    - Dst: av_opt_set
      Src: /src/gpac/src/filters/ff_mx.c:551,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_mx.c:555,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_mx.c:556,1
    - Dst: avformat_write_header
      Src: /src/gpac/src/filters/ff_mx.c:557,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_mx.c:558,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:560,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_mx.c:560,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 78
    argCount: 3
    argNames:
    - filter
    - ctx
    - seg_name
    argTypes:
    - GF_Filter*
    - GF_FFMuxCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 450
    functionDepth: 5
    functionLinenumber: 450
    functionLinenumberEnd: 566
    functionName: ffmx_start_seg
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - av_dict_set
    - av_opt_set
    - gf_list_count
    - GF_FFMuxCtx*::muxer::io_close
    - gf_fopen
    - avcodec_parameters_copy
    - av_dict_copy
    - av_dict_free
    - avformat_new_stream
    - gf_list_get
    - av_strdup
    - GF_FFMuxCtx*::muxer::io_open
    - avformat_free_context
    - GF_LOG
    - av_codec_get_tag
    - av_err2str
    - avformat_alloc_output_context2
    - GF_FFMuxCtx*::muxer::io_close2
    - gf_url_is_local
    - strncpy
    - av_freep
    - av_codec_get_id
    - gf_fclose
    - MKTAG
    - avformat_write_header
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffmx_start_seg(GF_Filter *filter, GF_FFMuxCtx *ctx, const char
      *seg_name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: av_write_frame
      Src: /src/gpac/src/filters/ff_mx.c:574,1
    - Dst: av_write_trailer
      Src: /src/gpac/src/filters/ff_mx.c:581,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:583,1
    - Dst: AVFMT_URL
      Src: /src/gpac/src/filters/ff_mx.c:583,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:589,1
    - Dst: AVFMT_URL
      Src: /src/gpac/src/filters/ff_mx.c:589,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_mx.c:589,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/ff_mx.c:596,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/ff_mx.c:597,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/ff_mx.c:615,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 3
    argNames:
    - filter
    - ctx
    - send_evt_only
    argTypes:
    - GF_Filter*
    - GF_FFMuxCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 569
    functionDepth: 1
    functionLinenumber: 569
    functionLinenumberEnd: 617
    functionName: ffmx_close_seg
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - AVFMT_URL
    - GF_LOG
    - av_err2str
    - GF_FEVT_INIT
    - av_write_frame
    - gf_filter_get_ipid
    - av_write_trailer
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffmx_close_seg(GF_Filter *filter, GF_FFMuxCtx *ctx, Bool send_evt_only)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:624,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:628,1
    - Dst: av_packet_new_side_data
      Src: /src/gpac/src/filters/ff_mx.c:636,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_mx.c:639,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_mx.c:641,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_mx.c:642,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_mx.c:644,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:651,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:653,1
    - Dst: av_packet_new_side_data
      Src: /src/gpac/src/filters/ff_mx.c:656,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_mx.c:658,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/ff_mx.c:659,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/ff_mx.c:660,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/ff_mx.c:661,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_mx.c:662,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:674,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:677,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:680,1
    - Dst: ffmpeg_channel_layout_from_gpac
      Src: /src/gpac/src/filters/ff_mx.c:682,1
    - Dst: av_packet_new_side_data
      Src: /src/gpac/src/filters/ff_mx.c:692,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_mx.c:694,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/ff_mx.c:695,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/ff_mx.c:697,1
    - Dst: gf_bs_write_u64_le
      Src: /src/gpac/src/filters/ff_mx.c:699,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/ff_mx.c:701,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_mx.c:702,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 65
    argCount: 3
    argNames:
    - pid
    - st
    - pkt
    argTypes:
    - GF_FilterPid*
    - GF_FFMuxStream*
    - AVPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 705
      start: 619
    functionDepth: 6
    functionLinenumber: 619
    functionLinenumberEnd: 705
    functionName: ffmx_inject_config
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_bs_new
    - memcpy
    - ffmpeg_channel_layout_from_gpac
    - gf_bs_del
    - av_packet_new_side_data
    - gf_bs_write_u64_le
    - gf_bs_write_u32_le
    linkageType: ''
    returnType: void
    signature: void ffmx_inject_config(GF_FilterPid *pid, GF_FFMuxStream *st, AVPacket
      *pkt)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/ff_mx.c:712,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/ff_mx.c:714,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/ff_mx.c:716,1
    - Dst: strlen
      Src: /src/gpac/src/filters/ff_mx.c:720,1
    - Dst: av_packet_new_side_data
      Src: /src/gpac/src/filters/ff_mx.c:721,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_mx.c:722,1
    - Dst: strlen
      Src: /src/gpac/src/filters/ff_mx.c:725,1
    - Dst: av_packet_new_side_data
      Src: /src/gpac/src/filters/ff_mx.c:726,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_mx.c:727,1
    - Dst: strlen
      Src: /src/gpac/src/filters/ff_mx.c:730,1
    - Dst: av_packet_new_side_data
      Src: /src/gpac/src/filters/ff_mx.c:731,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_mx.c:734,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_mx.c:736,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - ipck
    - pkt
    argTypes:
    - GF_FilterPacket*
    - AVPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 739
      start: 706
    functionDepth: 0
    functionLinenumber: 706
    functionLinenumberEnd: 739
    functionName: ffmx_inject_webvtt
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - memcpy
    - memset
    - av_packet_new_side_data
    - strlen
    - gf_filter_pck_get_property_str
    linkageType: ''
    returnType: void
    signature: void ffmx_inject_webvtt(GF_FilterPacket *ipck, AVPacket *pkt)
  - BBCount: 65
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_mx.c:744,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/ff_mx.c:745,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/ff_mx.c:750,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_mx.c:752,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/ff_mx.c:754,1
    - Dst: avio_flush
      Src: /src/gpac/src/filters/ff_mx.c:755,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/ff_mx.c:757,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/ff_mx.c:767,1
    - Dst: avio_write
      Src: /src/gpac/src/filters/ff_mx.c:772,1
    - Dst: AVERROR
      Src: /src/gpac/src/filters/ff_mx.c:774,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/ff_mx.c:777,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_mx.c:781,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/ff_mx.c:782,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:786,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_mx.c:786,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/ff_mx.c:787,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_mx.c:796,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/src/filters/ff_mx.c:808,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/ff_mx.c:811,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/ff_mx.c:812,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/ff_mx.c:814,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/ff_mx.c:815,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:817,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/ff_mx.c:822,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_mx.c:823,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/ff_mx.c:824,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:828,1
    - Dst: ffmx_configure_pid
      Src: /src/gpac/src/filters/ff_mx.c:833,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/ff_mx.c:847,1
    - Dst: gf_filter_pck_get_roll_info
      Src: /src/gpac/src/filters/ff_mx.c:853,1
    - Dst: ffmx_init_mux
      Src: /src/gpac/src/filters/ff_mx.c:859,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/ff_mx.c:869,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/ff_mx.c:870,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_mx.c:887,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/ff_mx.c:889,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/ff_mx.c:889,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ff_mx.c:894,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/ff_mx.c:897,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_mx.c:902,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:905,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_mx.c:906,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/ff_mx.c:911,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/ff_mx.c:916,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/ff_mx.c:927,1
    - Dst: ffmx_close_seg
      Src: /src/gpac/src/filters/ff_mx.c:929,1
    - Dst: ffmx_start_seg
      Src: /src/gpac/src/filters/ff_mx.c:930,1
    - Dst: ffmx_close_seg
      Src: /src/gpac/src/filters/ff_mx.c:934,1
    - Dst: FF_INIT_PCK
      Src: /src/gpac/src/filters/ff_mx.c:945,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/ff_mx.c:948,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ff_mx.c:949,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:954,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/ff_mx.c:957,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/ff_mx.c:958,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/ff_mx.c:960,1
    - Dst: av_packet_rescale_ts
      Src: /src/gpac/src/filters/ff_mx.c:967,1
    - Dst: ffmx_inject_config
      Src: /src/gpac/src/filters/ff_mx.c:971,1
    - Dst: ffmx_inject_webvtt
      Src: /src/gpac/src/filters/ff_mx.c:973,1
    - Dst: av_interleaved_write_frame
      Src: /src/gpac/src/filters/ff_mx.c:977,1
    - Dst: av_write_frame
      Src: /src/gpac/src/filters/ff_mx.c:979,1
    - Dst: av_packet_free_side_data
      Src: /src/gpac/src/filters/ff_mx.c:982,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_mx.c:985,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_mx.c:987,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:990,1
    - Dst: AVFMT_URL
      Src: /src/gpac/src/filters/ff_mx.c:990,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_mx.c:990,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/ff_mx.c:993,1
    - Dst: av_write_trailer
      Src: /src/gpac/src/filters/ff_mx.c:1004,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1006,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_mx.c:1006,1
    - Dst: avformat_free_context
      Src: /src/gpac/src/filters/ff_mx.c:1010,1
    - Dst: ffmx_initialize_ex
      Src: /src/gpac/src/filters/ff_mx.c:1013,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/ff_mx.c:1015,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/ff_mx.c:1016,1
    - Dst: ffmx_configure_pid
      Src: /src/gpac/src/filters/ff_mx.c:1020,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/ff_mx.c:1029,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/ff_mx.c:1030,1
    - Dst: ffmx_close_seg
      Src: /src/gpac/src/filters/ff_mx.c:1041,1
    - Dst: av_write_trailer
      Src: /src/gpac/src/filters/ff_mx.c:1043,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1045,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_mx.c:1045,1
    CyclomaticComplexity: 95
    EdgeCount: 95
    ICount: 252
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1054
      start: 741
    functionDepth: 7
    functionLinenumber: 741
    functionLinenumberEnd: 1054
    functionName: ffmx_process
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - gf_filter_connections_pending
    - ffmx_start_seg
    - ffmx_inject_config
    - gf_filter_get_ipid
    - av_write_trailer
    - av_packet_rescale_ts
    - gf_filter_pid_get_packet
    - gf_sys_clock
    - AVFMT_URL
    - avformat_free_context
    - FF_RELEASE_PCK
    - gf_filter_pck_get_roll_info
    - av_interleaved_write_frame
    - ffmx_initialize_ex
    - gf_filter_pck_get_cts
    - gf_filter_ask_rt_reschedule
    - av_packet_free_side_data
    - gf_filter_pck_get_duration
    - gf_filter_get_udta
    - gf_filter_pck_get_property
    - avio_flush
    - gf_filter_pid_drop_packet
    - gf_filter_pid_set_discard
    - gf_filter_pck_get_data
    - GF_LOG
    - ffmx_init_mux
    - av_err2str
    - av_write_frame
    - gf_filter_pck_get_interlaced
    - gf_filter_get_ipid_count
    - gf_filter_pid_is_eos
    - gf_filter_pck_get_sap
    - FF_INIT_PCK
    - AVERROR
    - gf_filter_pid_get_property
    - ffmx_close_seg
    - gf_filter_abort
    - gf_timestamp_greater
    - avio_write
    - gf_filter_pid_is_flush_eos
    - gf_filter_pid_get_udta
    - ffmx_configure_pid
    - ffmx_inject_webvtt
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffmx_process(GF_Filter *filter)
  - BBCount: 122
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_mx.c:1079,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/ff_mx.c:1086,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1092,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1096,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1102,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1112,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filters/ff_mx.c:1112,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1121,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1126,1
    - Dst: ffmpeg_stream_type_from_gpac
      Src: /src/gpac/src/filters/ff_mx.c:1157,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1161,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1169,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1213,1
    - Dst: gf_audio_fmt_name
      Src: /src/gpac/src/filters/ff_mx.c:1213,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1218,1
    - Dst: ffmpeg_codecid_from_gpac
      Src: /src/gpac/src/filters/ff_mx.c:1221,1
    - Dst: GF_FFMuxCtx*::muxer::oformat::query_codec
      Src: /src/gpac/src/filters/ff_mx.c:1228,1
    - Dst: avformat_query_codec
      Src: /src/gpac/src/filters/ff_mx.c:1231,1
    - Dst: ffmpeg_codecid_to_gpac
      Src: /src/gpac/src/filters/ff_mx.c:1249,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_mx.c:1251,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_mx.c:1251,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_mx.c:1254,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_mx.c:1254,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_mx.c:1255,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_mx.c:1255,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1262,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/ff_mx.c:1262,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/src/filters/ff_mx.c:1266,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1275,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/ff_mx.c:1279,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/ff_mx.c:1281,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/ff_mx.c:1282,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/ff_mx.c:1284,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/ff_mx.c:1285,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_mx.c:1298,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/ff_mx.c:1300,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1304,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1307,1
    - Dst: gf_filter_pid_resolve_file_template
      Src: /src/gpac/src/filters/ff_mx.c:1310,1
    - Dst: ffmx_open_url
      Src: /src/gpac/src/filters/ff_mx.c:1311,1
    - Dst: avformat_new_stream
      Src: /src/gpac/src/filters/ff_mx.c:1316,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_mx.c:1321,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1324,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1329,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/ff_mx.c:1334,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/ff_mx.c:1335,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1342,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1344,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1351,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1354,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1357,1
    - Dst: ffmpeg_channel_layout_from_gpac
      Src: /src/gpac/src/filters/ff_mx.c:1360,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1370,1
    - Dst: ffmpeg_extradata_from_gpac
      Src: /src/gpac/src/filters/ff_mx.c:1383,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1386,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1389,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1399,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1406,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1409,1
    - Dst: ffmpeg_codec_par_from_gpac
      Src: /src/gpac/src/filters/ff_mx.c:1412,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1416,1
    - Dst: av_channel_layout_uninit
      Src: /src/gpac/src/filters/ff_mx.c:1428,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1431,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1433,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1441,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1443,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1446,1
    - Dst: ffmpeg_audio_fmt_from_gpac
      Src: /src/gpac/src/filters/ff_mx.c:1447,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1451,1
    - Dst: ffmpeg_channel_layout_from_gpac
      Src: /src/gpac/src/filters/ff_mx.c:1460,1
    - Dst: ffmpeg_channel_layout_from_gpac
      Src: /src/gpac/src/filters/ff_mx.c:1462,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1465,1
    - Dst: ffmpeg_tags_from_gpac
      Src: /src/gpac/src/filters/ff_mx.c:1480,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1483,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_mx.c:1485,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_mx.c:1487,1
    - Dst: av_stream_add_side_data
      Src: /src/gpac/src/filters/ff_mx.c:1489,1
    - Dst: av_packet_side_data_add
      Src: /src/gpac/src/filters/ff_mx.c:1491,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1500,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_mx.c:1502,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_mx.c:1504,1
    - Dst: av_stream_add_side_data
      Src: /src/gpac/src/filters/ff_mx.c:1506,1
    - Dst: av_packet_side_data_add
      Src: /src/gpac/src/filters/ff_mx.c:1508,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1516,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_mx.c:1518,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_mx.c:1519,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_mx.c:1521,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_mx.c:1522,1
    - Dst: av_stream_add_side_data
      Src: /src/gpac/src/filters/ff_mx.c:1524,1
    - Dst: av_packet_side_data_add
      Src: /src/gpac/src/filters/ff_mx.c:1526,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_mx.c:1532,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1535,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_mx.c:1540,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_mx.c:1541,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_mx.c:1542,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_mx.c:1544,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_mx.c:1546,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_mx.c:1548,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_mx.c:1550,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_mx.c:1552,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_mx.c:1554,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_mx.c:1556,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_mx.c:1558,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/ff_mx.c:1560,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/ff_mx.c:1562,1
    - Dst: av_stream_add_side_data
      Src: /src/gpac/src/filters/ff_mx.c:1565,1
    - Dst: av_packet_side_data_add
      Src: /src/gpac/src/filters/ff_mx.c:1567,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_mx.c:1573,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1576,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_mx.c:1578,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_mx.c:1579,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/ff_mx.c:1581,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/ff_mx.c:1582,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/ff_mx.c:1583,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/ff_mx.c:1584,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/ff_mx.c:1585,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/ff_mx.c:1586,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/ff_mx.c:1587,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/ff_mx.c:1588,1
    - Dst: av_stream_add_side_data
      Src: /src/gpac/src/filters/ff_mx.c:1590,1
    - Dst: av_packet_side_data_add
      Src: /src/gpac/src/filters/ff_mx.c:1592,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_mx.c:1598,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1602,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1605,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/ff_mx.c:1614,1
    CyclomaticComplexity: 124
    EdgeCount: 124
    ICount: 427
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1616
      start: 1069
    functionDepth: 11
    functionLinenumber: 1069
    functionLinenumberEnd: 1616
    functionName: ffmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 1
    functionsReached:
    - avcodec_find_decoder
    - gf_bs_new
    - GF_SAFEALLOC
    - ffmpeg_audio_fmt_from_gpac
    - memset
    - gf_filter_pid_set_udta
    - gf_bs_read_u16
    - gf_stream_type_name
    - gf_filter_pid_get_packet
    - avformat_new_stream
    - gf_bs_read_u32
    - memcpy
    - ffmpeg_channel_layout_from_gpac
    - ffmpeg_codecid_to_gpac
    - gf_list_add
    - ffmx_open_url
    - gf_crc_32
    - gf_filter_get_udta
    - gf_filter_pck_get_property
    - ffmpeg_codec_par_from_gpac
    - ffmpeg_stream_type_from_gpac
    - av_stream_add_side_data
    - GF_LOG
    - gf_audio_fmt_name
    - gf_filter_pid_negotiate_property
    - gf_filter_pid_init_play_event
    - av_packet_side_data_add
    - ffmpeg_tags_from_gpac
    - av_malloc
    - GF_FFMuxCtx*::muxer::oformat::query_codec
    - gf_filter_pid_send_event
    - gf_filter_pid_is_eos
    - ffmpeg_extradata_from_gpac
    - gf_filter_pid_resolve_file_template
    - gf_bs_read_u8
    - av_channel_layout_uninit
    - avformat_query_codec
    - gf_filter_pid_get_property
    - ffmpeg_codecid_from_gpac
    - PROP_UINT
    - gf_filter_pid_set_framing_mode
    - gf_bs_del
    - strcmp
    - gf_bs_read_int
    - gf_filter_pid_get_udta
    - gf_codecid_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_mx.c:1620,1
    - Dst: ffmx_close_seg
      Src: /src/gpac/src/filters/ff_mx.c:1624,1
    - Dst: av_write_trailer
      Src: /src/gpac/src/filters/ff_mx.c:1626,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1628,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_mx.c:1628,1
    - Dst: GF_FFMuxCtx*::muxer::io_close
      Src: /src/gpac/src/filters/ff_mx.c:1635,1
    - Dst: GF_FFMuxCtx*::muxer::io_close2
      Src: /src/gpac/src/filters/ff_mx.c:1637,1
    - Dst: av_packet_free
      Src: /src/gpac/src/filters/ff_mx.c:1642,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_mx.c:1645,1
    - Dst: avformat_free_context
      Src: /src/gpac/src/filters/ff_mx.c:1646,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_mx.c:1647,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/ff_mx.c:1648,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_mx.c:1649,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/ff_mx.c:1651,1
    - Dst: av_freep
      Src: /src/gpac/src/filters/ff_mx.c:1653,1
    - Dst: avio_context_free
      Src: /src/gpac/src/filters/ff_mx.c:1654,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/ff_mx.c:1656,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 32
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1658
      start: 1618
    functionDepth: 5
    functionLinenumber: 1618
    functionLinenumberEnd: 1658
    functionName: ffmx_finalize
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_list_pop_back
    - avio_context_free
    - av_packet_free
    - GF_LOG
    - ffmx_close_seg
    - avformat_free_context
    - av_err2str
    - GF_FFMuxCtx*::muxer::io_close2
    - gf_list_count
    - GF_FFMuxCtx*::muxer::io_close
    - av_freep
    - av_write_trailer
    - av_dict_free
    - gf_list_del
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void ffmx_finalize(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_mx.c:1662,1
    - Dst: ffmpeg_update_arg
      Src: /src/gpac/src/filters/ff_mx.c:1663,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - filter
    - arg_name
    - arg_val
    argTypes:
    - GF_Filter*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1664
      start: 1660
    functionDepth: 2
    functionLinenumber: 1660
    functionLinenumberEnd: 1664
    functionName: ffmx_update_arg
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - ffmpeg_update_arg
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffmx_update_arg(GF_Filter *filter, const char *arg_name, const
      GF_PropertyValue *arg_val)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_mx.c:1669,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filters/ff_mx.c:1670,1
    - Dst: av_guess_format
      Src: /src/gpac/src/filters/ff_mx.c:1675,1
    - Dst: av_guess_format
      Src: /src/gpac/src/filters/ff_mx.c:1676,1
    - Dst: av_guess_format
      Src: /src/gpac/src/filters/ff_mx.c:1677,1
    - Dst: strstr
      Src: /src/gpac/src/filters/ff_mx.c:1681,1
    - Dst: avio_find_protocol_name
      Src: /src/gpac/src/filters/ff_mx.c:1685,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 19
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1689
      start: 1666
    functionDepth: 4
    functionLinenumber: 1666
    functionLinenumberEnd: 1689
    functionName: ffmx_probe_url
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - gf_fileio_translate_url
    - strstr
    - avio_find_protocol_name
    - strncmp
    - av_guess_format
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore ffmx_probe_url(const char *url, const char *mime)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1752
      start: 1751
    functionDepth: 0
    functionLinenumber: 1751
    functionLinenumberEnd: 1752
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ffmpeg_build_register
      Src: /src/gpac/src/filters/ff_mx.c:1778,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1779
      start: 1776
    functionDepth: 8
    functionLinenumber: 1776
    functionLinenumberEnd: 1779
    functionName: ffmx_register
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - ffmpeg_build_register
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ffmx_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1786
      start: 1783
    functionDepth: 0
    functionLinenumber: 1783
    functionLinenumberEnd: 1786
    functionName: ffmx_register
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *ffmx_register(GF_FilterSession *session)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/isoffin_read.c:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - reader
    - pid
    argTypes:
    - ISOMReader*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 34
    functionDepth: 2
    functionLinenumber: 34
    functionLinenumberEnd: 42
    functionName: isor_get_channel
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    linkageType: ''
    returnType: ISOMChannel
    signature: ISOMChannel *isor_get_channel(ISOMReader *reader, GF_FilterPid *pid)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/src/filters/isoffin_read.c:47,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/isoffin_read.c:48,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/isoffin_read.c:49,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/isoffin_read.c:50,1
    - Dst: strstr
      Src: /src/gpac/src/filters/isoffin_read.c:51,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - url
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 54
    functionName: isor_is_local
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - strnicmp
    - strstr
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE isor_is_local(const char *url)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read.c:66,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/isoffin_read.c:67,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/isoffin_read.c:76,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/isoffin_read.c:78,1
    - Dst: gf_filter_force_main_thread
      Src: /src/gpac/src/filters/isoffin_read.c:80,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/isoffin_read.c:81,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/isoffin_read.c:86,1
    - Dst: strlen
      Src: /src/gpac/src/filters/isoffin_read.c:86,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/isoffin_read.c:88,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/isoffin_read.c:90,1
    - Dst: strchr
      Src: /src/gpac/src/filters/isoffin_read.c:93,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read.c:95,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/isoffin_read.c:97,1
    - Dst: strchr
      Src: /src/gpac/src/filters/isoffin_read.c:98,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/isoffin_read.c:103,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/isoffin_read.c:105,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/isoffin_read.c:107,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/isoffin_read.c:109,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/isoffin_read.c:111,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/isoffin_read.c:113,1
    - Dst: atoi
      Src: /src/gpac/src/filters/isoffin_read.c:114,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/isoffin_read.c:115,1
    - Dst: atoi
      Src: /src/gpac/src/filters/isoffin_read.c:116,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/isoffin_read.c:117,1
    - Dst: atoi
      Src: /src/gpac/src/filters/isoffin_read.c:118,1
    - Dst: atoi
      Src: /src/gpac/src/filters/isoffin_read.c:120,1
    - Dst: isor_is_local
      Src: /src/gpac/src/filters/isoffin_read.c:126,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_read.c:127,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read.c:131,1
    - Dst: gf_isom_open_progressive
      Src: /src/gpac/src/filters/isoffin_read.c:138,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_read.c:144,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read.c:154,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:160,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/isoffin_read.c:160,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/isoffin_read.c:161,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_read.c:162,1
    - Dst: gf_isom_is_fragmented
      Src: /src/gpac/src/filters/isoffin_read.c:165,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/filters/isoffin_read.c:167,1
    - Dst: gf_isom_text_set_streaming_mode
      Src: /src/gpac/src/filters/isoffin_read.c:172,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_read.c:174,1
    - Dst: isor_declare_objects
      Src: /src/gpac/src/filters/isoffin_read.c:175,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/isoffin_read.c:177,1
    - Dst: gf_isom_reset_data_offset
      Src: /src/gpac/src/filters/isoffin_read.c:183,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 119
    argCount: 3
    argNames:
    - filter
    - read
    - input_is_eos
    argTypes:
    - GF_Filter*
    - ISOMReader*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 57
    functionDepth: 11
    functionLinenumber: 57
    functionLinenumberEnd: 187
    functionName: isoffin_setup
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_get_timescale
    - gf_isom_text_set_streaming_mode
    - gf_fileio_is_main_thread
    - atoi
    - isor_declare_objects
    - strchr
    - gf_filter_post_process_task
    - gf_strdup
    - gf_filter_force_main_thread
    - strncmp
    - gf_crc_32
    - GF_LOG
    - strnicmp
    - gf_error_to_string
    - gf_filter_setup_failure
    - gf_isom_is_fragmented
    - strlen
    - gf_isom_open_progressive
    - gf_filter_pid_get_property
    - gf_isom_reset_data_offset
    - gf_file_ext_start
    - gf_fatal_assert
    - isor_is_local
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err isoffin_setup(GF_Filter *filter, ISOMReader *read, Bool input_is_eos)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: isor_reset_reader
      Src: /src/gpac/src/filters/isoffin_read.c:191,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/isoffin_read.c:192,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/isoffin_read.c:193,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/isoffin_read.c:194,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_read.c:195,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ch
    argTypes:
    - ISOMChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 189
    functionDepth: 2
    functionLinenumber: 189
    functionLinenumberEnd: 196
    functionName: isoffin_delete_channel
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_odf_hevc_cfg_del
    - gf_free
    - gf_odf_vvc_cfg_del
    - gf_odf_avc_cfg_del
    - isor_reset_reader
    linkageType: ''
    returnType: void
    signature: void isoffin_delete_channel(ISOMChannel *ch)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_read.c:201,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read.c:202,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/isoffin_read.c:203,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/isoffin_read.c:205,1
    - Dst: isoffin_delete_channel
      Src: /src/gpac/src/filters/isoffin_read.c:206,1
    - Dst: gf_isom_close
      Src: /src/gpac/src/filters/isoffin_read.c:209,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - read
    argTypes:
    - ISOMReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 198
    functionDepth: 11
    functionLinenumber: 198
    functionLinenumberEnd: 213
    functionName: isoffin_disconnect
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_pid_remove
    - gf_list_count
    - isoffin_delete_channel
    - gf_list_rem
    - gf_isom_close
    linkageType: ''
    returnType: void
    signature: void isoffin_disconnect(ISOMReader *read)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_min_negative_cts_offset
      Src: /src/gpac/src/filters/isoffin_read.c:217,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:220,1
    - Dst: MAX
      Src: /src/gpac/src/filters/isoffin_read.c:226,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:230,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:238,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/isoffin_read.c:238,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - read
    - ch
    argTypes:
    - ISOMReader*
    - ISOMChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 239
    functionName: isoffin_set_channel_ctso
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_isom_get_min_negative_cts_offset
    - MAX
    - PROP_LONGSINT
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: void
    signature: void isoffin_set_channel_ctso(ISOMReader *read, ISOMChannel *ch)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read.c:251,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:258,1
    - Dst: gf_isom_probe_file_range
      Src: /src/gpac/src/filters/isoffin_read.c:262,1
    - Dst: gf_isom_release_segment
      Src: /src/gpac/src/filters/isoffin_read.c:266,1
    - Dst: gf_isom_reset_fragment_info
      Src: /src/gpac/src/filters/isoffin_read.c:267,1
    - Dst: gf_isom_open_segment
      Src: /src/gpac/src/filters/isoffin_read.c:275,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_read.c:284,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read.c:285,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/filters/isoffin_read.c:291,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:292,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:292,1
    - Dst: isoffin_set_channel_ctso
      Src: /src/gpac/src/filters/isoffin_read.c:295,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:302,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/isoffin_read.c:302,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/isoffin_read.c:302,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:306,1
    - Dst: gf_isom_get_smooth_next_tfdt
      Src: /src/gpac/src/filters/isoffin_read.c:318,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:319,1
    - Dst: gf_isom_is_smooth_streaming_moov
      Src: /src/gpac/src/filters/isoffin_read.c:321,1
    - Dst: strstr
      Src: /src/gpac/src/filters/isoffin_read.c:322,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/isoffin_read.c:325,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:327,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/isoffin_read.c:327,1
    - Dst: gf_isom_close
      Src: /src/gpac/src/filters/isoffin_read.c:331,1
    - Dst: gf_isom_open_progressive
      Src: /src/gpac/src/filters/isoffin_read.c:332,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:343,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/isoffin_read.c:343,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/isoffin_read.c:343,1
    - Dst: gf_isom_enable_traf_map_templates
      Src: /src/gpac/src/filters/isoffin_read.c:347,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/isoffin_read.c:362,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_read.c:364,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_read.c:367,1
    - Dst: gf_isom_release_segment
      Src: /src/gpac/src/filters/isoffin_read.c:370,1
    - Dst: gf_isom_reset_fragment_info
      Src: /src/gpac/src/filters/isoffin_read.c:372,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read.c:375,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:381,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/isoffin_read.c:381,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:386,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:388,1
    - Dst: isor_check_producer_ref_time
      Src: /src/gpac/src/filters/isoffin_read.c:391,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/isoffin_read.c:392,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read.c:396,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_read.c:400,1
    - Dst: gf_isom_get_highest_track_in_scalable_segment
      Src: /src/gpac/src/filters/isoffin_read.c:407,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/filters/isoffin_read.c:410,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_read.c:414,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:419,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/filters/isoffin_read.c:419,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/filters/isoffin_read.c:423,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/isoffin_read.c:425,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:426,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:429,1
    - Dst: isor_update_channel_config
      Src: /src/gpac/src/filters/isoffin_read.c:439,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/filters/isoffin_read.c:442,1
    - Dst: isor_set_crypt_config
      Src: /src/gpac/src/filters/isoffin_read.c:445,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 135
    argCount: 3
    argNames:
    - filter
    - read
    - next_url
    argTypes:
    - GF_Filter*
    - ISOMReader*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 241
    functionDepth: 11
    functionLinenumber: 241
    functionLinenumberEnd: 452
    functionName: isoffin_reconfigure
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_probe_file_range
    - isor_check_producer_ref_time
    - gf_isom_get_sample_count
    - gf_filter_pid_set_property_str
    - gf_list_count
    - gf_isom_get_highest_track_in_scalable_segment
    - gf_isom_is_smooth_streaming_moov
    - gf_isom_get_track_id
    - gf_isom_get_track_by_id
    - gf_isom_set_nalu_extract_mode
    - gf_filter_post_process_task
    - gf_list_get
    - gf_isom_release_segment
    - gf_isom_reset_fragment_info
    - sprintf
    - gf_isom_get_track_count
    - gf_isom_enable_traf_map_templates
    - gf_net_get_utc
    - gf_isom_close
    - isor_update_channel_config
    - gf_filter_pid_get_property_str
    - GF_LOG
    - strstr
    - gf_isom_open_segment
    - gf_error_to_string
    - gf_filter_pid_set_property
    - gf_isom_open_progressive
    - isoffin_set_channel_ctso
    - gf_filter_pid_get_property
    - PROP_UINT
    - isor_set_crypt_config
    - gf_isom_get_smooth_next_tfdt
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err isoffin_reconfigure(GF_Filter *filter, ISOMReader *read, const
      char *next_url)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/isoffin_read.c:457,1
    - Dst: isoffin_disconnect
      Src: /src/gpac/src/filters/isoffin_read.c:460,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read.c:467,1
    - Dst: gf_isom_reset_data_offset
      Src: /src/gpac/src/filters/isoffin_read.c:479,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/isoffin_read.c:485,1
    - Dst: strlen
      Src: /src/gpac/src/filters/isoffin_read.c:485,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read.c:488,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:496,1
    - Dst: isoffin_reconfigure
      Src: /src/gpac/src/filters/isoffin_read.c:506,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read.c:510,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/isoffin_read.c:514,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/isoffin_read.c:516,1
    - Dst: isoffin_setup
      Src: /src/gpac/src/filters/isoffin_read.c:518,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 48
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 519
      start: 454
    functionDepth: 12
    functionLinenumber: 454
    functionLinenumberEnd: 519
    functionName: isoffin_configure_pid
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - GF_LOG
    - GF_FEVT_INIT
    - gf_isom_reset_data_offset
    - isoffin_reconfigure
    - isoffin_disconnect
    - isoffin_setup
    - gf_filter_pid_send_event
    - gf_crc_32
    - strlen
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err isoffin_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/isoffin_read.c:523,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/isoffin_read.c:526,1
    - Dst: isoffin_setup
      Src: /src/gpac/src/filters/isoffin_read.c:534,1
    - Dst: gf_isom_is_fragmented
      Src: /src/gpac/src/filters/isoffin_read.c:539,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/filters/isoffin_read.c:540,1
    - Dst: gf_isom_enable_traf_map_templates
      Src: /src/gpac/src/filters/isoffin_read.c:544,1
    - Dst: gf_isom_open_segment
      Src: /src/gpac/src/filters/isoffin_read.c:547,1
    - Dst: isor_declare_objects
      Src: /src/gpac/src/filters/isoffin_read.c:551,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/isoffin_read.c:553,1
    - Dst: isoffin_setup
      Src: /src/gpac/src/filters/isoffin_read.c:557,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 521
    functionDepth: 12
    functionLinenumber: 521
    functionLinenumberEnd: 561
    functionName: isoffin_initialize
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_isom_get_timescale
    - gf_isom_open_segment
    - gf_isom_enable_traf_map_templates
    - isoffin_setup
    - isor_declare_objects
    - gf_isom_is_fragmented
    - gf_filter_post_process_task
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err isoffin_initialize(GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/isoffin_read.c:566,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_read.c:570,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read.c:571,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/isoffin_read.c:572,1
    - Dst: isoffin_delete_channel
      Src: /src/gpac/src/filters/isoffin_read.c:573,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/isoffin_read.c:575,1
    - Dst: gf_isom_close
      Src: /src/gpac/src/filters/isoffin_read.c:577,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_read.c:580,1
    - Dst: gf_blob_unregister
      Src: /src/gpac/src/filters/isoffin_read.c:582,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_read.c:583,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 585
      start: 564
    functionDepth: 11
    functionLinenumber: 564
    functionLinenumberEnd: 585
    functionName: isoffin_finalize
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_isom_close
    - gf_list_get
    - gf_blob_unregister
    - gf_list_count
    - isoffin_delete_channel
    - gf_list_del
    - gf_list_rem
    - gf_filter_get_udta
    linkageType: ''
    returnType: void
    signature: void isoffin_finalize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/isoffin_read.c:591,1
    - Dst: gf_isom_get_pssh_count
      Src: /src/gpac/src/filters/isoffin_read.c:594,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/isoffin_read.c:595,1
    - Dst: gf_isom_get_pssh_info
      Src: /src/gpac/src/filters/isoffin_read.c:605,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/isoffin_read.c:607,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/isoffin_read.c:608,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/isoffin_read.c:610,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/isoffin_read.c:612,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/isoffin_read.c:615,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/isoffin_read.c:616,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/isoffin_read.c:618,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/isoffin_read.c:619,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:620,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_read.c:620,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - ch
    argTypes:
    - ISOMChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 621
      start: 587
    functionDepth: 9
    functionLinenumber: 587
    functionLinenumberEnd: 621
    functionName: isor_declare_pssh
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 1
    functionsReached:
    - gf_bs_new
    - gf_bs_get_content
    - gf_isom_get_pssh_info
    - gf_bs_del
    - gf_bs_write_data
    - PROP_DATA_NO_COPY
    - gf_bs_write_u32
    - gf_filter_pid_set_property
    - gf_isom_get_pssh_count
    linkageType: ''
    returnType: void
    signature: void isor_declare_pssh(ISOMChannel *ch)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/src/filters/isoffin_read.c:645,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/filters/isoffin_read.c:653,1
    - Dst: gf_isom_is_media_encrypted
      Src: /src/gpac/src/filters/isoffin_read.c:654,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/src/filters/isoffin_read.c:655,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:668,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:668,1
    - Dst: gf_isom_is_ismacryp_media
      Src: /src/gpac/src/filters/isoffin_read.c:674,1
    - Dst: gf_isom_get_ismacryp_info
      Src: /src/gpac/src/filters/isoffin_read.c:675,1
    - Dst: gf_isom_is_omadrm_media
      Src: /src/gpac/src/filters/isoffin_read.c:676,1
    - Dst: gf_isom_get_omadrm_info
      Src: /src/gpac/src/filters/isoffin_read.c:678,1
    - Dst: gf_isom_is_cenc_media
      Src: /src/gpac/src/filters/isoffin_read.c:681,1
    - Dst: gf_isom_get_cenc_info
      Src: /src/gpac/src/filters/isoffin_read.c:684,1
    - Dst: gf_isom_is_adobe_protection_media
      Src: /src/gpac/src/filters/isoffin_read.c:687,1
    - Dst: gf_isom_get_adobe_protection_info
      Src: /src/gpac/src/filters/isoffin_read.c:693,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:695,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_read.c:695,1
    - Dst: strlen
      Src: /src/gpac/src/filters/isoffin_read.c:695,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:698,1
    - Dst: PROP_4CC
      Src: /src/gpac/src/filters/isoffin_read.c:698,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:699,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:699,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:700,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_read.c:700,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:701,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_read.c:701,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:703,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_read.c:703,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:704,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:704,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:705,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:705,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:706,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:706,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:707,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_read.c:707,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:708,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_read.c:708,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:709,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_read.c:709,1
    - Dst: isor_declare_pssh
      Src: /src/gpac/src/filters/isoffin_read.c:716,1
    - Dst: gf_isom_cenc_get_default_info
      Src: /src/gpac/src/filters/isoffin_read.c:718,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:720,1
    - Dst: PROP_4CC
      Src: /src/gpac/src/filters/isoffin_read.c:720,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:722,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_read.c:722,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:725,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_read.c:725,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:727,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_read.c:727,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/isoffin_read.c:728,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 77
    argCount: 1
    argNames:
    - ch
    argTypes:
    - ISOMChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 623
    functionDepth: 10
    functionLinenumber: 623
    functionLinenumberEnd: 730
    functionName: isor_set_crypt_config
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 1
    functionsReached:
    - PROP_STRING
    - gf_isom_get_original_format_type
    - PROP_DATA
    - PROP_LONGUINT
    - gf_isom_get_media_subtype
    - gf_isom_get_omadrm_info
    - gf_isom_is_omadrm_media
    - PROP_4CC
    - PROP_BOOL
    - gf_crc_32
    - isor_declare_pssh
    - gf_isom_get_cenc_info
    - gf_isom_get_adobe_protection_info
    - gf_isom_cenc_get_default_info
    - gf_isom_is_media_encrypted
    - gf_isom_get_ismacryp_info
    - gf_isom_is_adobe_protection_media
    - gf_filter_pid_set_property
    - strlen
    - gf_isom_is_cenc_media
    - PROP_FRAC_INT
    - PROP_UINT
    - gf_isom_is_ismacryp_media
    - gf_isom_get_sample_description_count
    linkageType: ''
    returnType: void
    signature: void isor_set_crypt_config(ISOMChannel *ch)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/isoffin_read.c:740,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/isoffin_read.c:747,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_read.c:752,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/filters/isoffin_read.c:753,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/filters/isoffin_read.c:763,1
    - Dst: gf_isom_get_avc_svc_type
      Src: /src/gpac/src/filters/isoffin_read.c:765,1
    - Dst: gf_isom_get_hevc_lhvc_type
      Src: /src/gpac/src/filters/isoffin_read.c:766,1
    - Dst: gf_isom_get_edit_list_type
      Src: /src/gpac/src/filters/isoffin_read.c:780,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:784,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/isoffin_read.c:784,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/src/filters/isoffin_read.c:787,1
    - Dst: isoffin_set_channel_ctso
      Src: /src/gpac/src/filters/isoffin_read.c:793,1
    - Dst: gf_isom_has_sync_points
      Src: /src/gpac/src/filters/isoffin_read.c:795,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:796,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_read.c:796,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/filters/isoffin_read.c:801,1
    - Dst: gf_isom_get_cts_to_dts_shift
      Src: /src/gpac/src/filters/isoffin_read.c:803,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:805,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:805,1
    - Dst: gf_isom_is_track_encrypted
      Src: /src/gpac/src/filters/isoffin_read.c:808,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/filters/isoffin_read.c:825,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read.c:834,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:835,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:835,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:837,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:837,1
    - Dst: isor_set_crypt_config
      Src: /src/gpac/src/filters/isoffin_read.c:839,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:843,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/filters/isoffin_read.c:845,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 99
    argCount: 5
    argNames:
    - read
    - pid
    - track
    - item_id
    - force_no_extractors
    argTypes:
    - ISOMReader*
    - GF_FilterPid*
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 849
      start: 733
    functionDepth: 11
    functionLinenumber: 733
    functionLinenumberEnd: 849
    functionName: isor_create_channel
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 2
    functionsReached:
    - GF_SAFEALLOC
    - gf_isom_get_hevc_lhvc_type
    - gf_isom_get_track_id
    - isor_set_crypt_config
    - gf_isom_set_nalu_extract_mode
    - PROP_LONGSINT
    - gf_isom_get_reference
    - gf_list_add
    - PROP_BOOL
    - gf_isom_get_media_type
    - gf_isom_has_sync_points
    - GF_LOG
    - gf_isom_get_edit_list_type
    - gf_isom_get_edits_count
    - gf_isom_get_avc_svc_type
    - gf_filter_pid_set_property
    - isoffin_set_channel_ctso
    - PROP_UINT
    - gf_filter_pid_get_property
    - gf_isom_get_media_timescale
    - gf_isom_get_cts_to_dts_shift
    - gf_isom_is_track_encrypted
    linkageType: ''
    returnType: ISOMChannel
    signature: ISOMChannel *isor_create_channel(ISOMReader *read, GF_FilterPid *pid,
      u32 track, u32 item_id, Bool force_no_extractors)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/isoffin_read.c:859,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_read.c:860,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/filters/isoffin_read.c:865,1
    - Dst: gf_isom_has_track_reference
      Src: /src/gpac/src/filters/isoffin_read.c:871,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/filters/isoffin_read.c:879,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/filters/isoffin_read.c:882,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_read.c:883,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read.c:884,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/isoffin_read.c:890,1
    - Dst: gf_isom_get_sample_for_media_time
      Src: /src/gpac/src/filters/isoffin_read.c:891,1
    - Dst: gf_isom_get_sample_for_media_time
      Src: /src/gpac/src/filters/isoffin_read.c:899,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/filters/isoffin_read.c:920,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/filters/isoffin_read.c:923,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/isoffin_read.c:930,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/filters/isoffin_read.c:936,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 65
    argCount: 3
    argNames:
    - ch
    - the_file
    - switch_up
    argTypes:
    - ISOMChannel*
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 939
      start: 852
    functionDepth: 4
    functionLinenumber: 852
    functionLinenumberEnd: 939
    functionName: isoffin_channel_switch_quality
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_sample_for_media_time
    - gf_list_get
    - gf_isom_has_track_reference
    - gf_isom_get_reference
    - gf_isom_get_reference_count
    - gf_isom_get_track_count
    - gf_list_count
    - gf_filter_pid_set_eos
    - gf_isom_get_track_id
    - gf_isom_set_nalu_extract_mode
    - gf_timestamp_rescale
    linkageType: ''
    returnType: u32
    signature: u32 isoffin_channel_switch_quality(ISOMChannel *ch, GF_ISOFile *the_file,
      Bool switch_up)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_blob_register
      Src: /src/gpac/src/filters/isoffin_read.c:1282,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/isoffin_read.c:1285,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/isoffin_read.c:1288,1
    - Dst: gf_isom_open_progressive_ex
      Src: /src/gpac/src/filters/isoffin_read.c:1293,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/isoffin_read.c:1296,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_read.c:1303,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:1304,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/isoffin_read.c:1305,1
    - Dst: gf_isom_is_fragmented
      Src: /src/gpac/src/filters/isoffin_read.c:1316,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/filters/isoffin_read.c:1317,1
    - Dst: isor_declare_objects
      Src: /src/gpac/src/filters/isoffin_read.c:1318,1
    - Dst: gf_isom_refresh_fragmented
      Src: /src/gpac/src/filters/isoffin_read.c:1325,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:1327,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/isoffin_read.c:1327,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 47
    argCount: 4
    argNames:
    - filter
    - read
    - pck_data
    - data_size
    argTypes:
    - GF_Filter*
    - ISOMReader*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1333
      start: 1275
    functionDepth: 11
    functionLinenumber: 1275
    functionLinenumberEnd: 1333
    functionName: isoffin_push_buffer
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - GF_4CC
    - memcpy
    - GF_LOG
    - gf_isom_get_timescale
    - isor_declare_objects
    - gf_isom_open_progressive_ex
    - gf_blob_register
    - gf_isom_refresh_fragmented
    - gf_filter_setup_failure
    - gf_error_to_string
    - gf_isom_is_fragmented
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void isoffin_push_buffer(GF_Filter *filter, ISOMReader *read, const
      u8 *pck_data, u32 data_size)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_current_top_box_offset
      Src: /src/gpac/src/filters/isoffin_read.c:1349,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/isoffin_read.c:1358,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/isoffin_read.c:1361,1
    - Dst: memmove
      Src: /src/gpac/src/filters/isoffin_read.c:1366,1
    - Dst: gf_isom_set_removed_bytes
      Src: /src/gpac/src/filters/isoffin_read.c:1369,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:1371,1
    - Dst: gf_isom_refresh_fragmented
      Src: /src/gpac/src/filters/isoffin_read.c:1375,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_read.c:1381,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read.c:1383,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/filters/isoffin_read.c:1385,1
    - Dst: gf_isom_purge_samples
      Src: /src/gpac/src/filters/isoffin_read.c:1392,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/filters/isoffin_read.c:1395,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/isoffin_read.c:1396,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:1397,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 2
    argNames:
    - read
    - min_offset
    argTypes:
    - ISOMReader*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1399
      start: 1335
    functionDepth: 2
    functionLinenumber: 1335
    functionLinenumberEnd: 1399
    functionName: isoffin_purge_mem
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_list_get
    - memmove
    - gf_isom_purge_samples
    - GF_LOG
    - gf_isom_get_current_top_box_offset
    - gf_isom_get_sample_count
    - gf_list_count
    - gf_isom_refresh_fragmented
    - gf_isom_set_removed_bytes
    linkageType: ''
    returnType: void
    signature: void isoffin_purge_mem(ISOMReader *read, u64 min_offset)
  - BBCount: 95
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/isoffin_read.c:1403,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_read.c:1404,1
    - Dst: isoffin_configure_pid
      Src: /src/gpac/src/filters/isoffin_read.c:1421,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/isoffin_read.c:1431,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/isoffin_read.c:1437,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read.c:1445,1
    - Dst: gf_dm_sess_get_cache_name
      Src: /src/gpac/src/filters/isoffin_read.c:1447,1
    - Dst: gf_isom_switch_source
      Src: /src/gpac/src/filters/isoffin_read.c:1449,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/isoffin_read.c:1457,1
    - Dst: isoffin_push_buffer
      Src: /src/gpac/src/filters/isoffin_read.c:1458,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/isoffin_read.c:1462,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/isoffin_read.c:1465,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/isoffin_read.c:1470,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/isoffin_read.c:1471,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/filters/isoffin_read.c:1477,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/isoffin_read.c:1479,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read.c:1498,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/isoffin_read.c:1504,1
    - Dst: isoffin_setup
      Src: /src/gpac/src/filters/isoffin_read.c:1518,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read.c:1529,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read.c:1538,1
    - Dst: gf_isom_refresh_fragmented
      Src: /src/gpac/src/filters/isoffin_read.c:1542,1
    - Dst: gf_filter_end_of_session
      Src: /src/gpac/src/filters/isoffin_read.c:1545,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:1546,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/isoffin_read.c:1546,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:1550,1
    - Dst: d
      Src: /src/gpac/src/filters/isoffin_read.c:1550,1
    - Dst: gf_filter_end_of_session
      Src: /src/gpac/src/filters/isoffin_read.c:1554,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/isoffin_read.c:1555,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/isoffin_read.c:1559,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read.c:1561,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:1562,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/filters/isoffin_read.c:1562,1
    - Dst: isor_check_producer_ref_time
      Src: /src/gpac/src/filters/isoffin_read.c:1566,1
    - Dst: isor_check_producer_ref_time
      Src: /src/gpac/src/filters/isoffin_read.c:1571,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read.c:1579,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/isoffin_read.c:1590,1
    - Dst: isor_reader_get_sample_from_item
      Src: /src/gpac/src/filters/isoffin_read.c:1594,1
    - Dst: isor_reader_get_sample
      Src: /src/gpac/src/filters/isoffin_read.c:1596,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/isoffin_read.c:1599,1
    - Dst: isor_reader_release_sample
      Src: /src/gpac/src/filters/isoffin_read.c:1608,1
    - Dst: isor_reader_release_sample
      Src: /src/gpac/src/filters/isoffin_read.c:1620,1
    - Dst: isor_update_channel_config
      Src: /src/gpac/src/filters/isoffin_read.c:1625,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/filters/isoffin_read.c:1630,1
    - Dst: gf_isom_has_sync_points
      Src: /src/gpac/src/filters/isoffin_read.c:1630,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1633,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_read.c:1633,1
    - Dst: isor_reader_check_config
      Src: /src/gpac/src/filters/isoffin_read.c:1637,1
    - Dst: gf_filter_pck_check_realloc
      Src: /src/gpac/src/filters/isoffin_read.c:1642,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/isoffin_read.c:1649,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/isoffin_read.c:1651,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/isoffin_read.c:1655,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/isoffin_read.c:1659,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/isoffin_read.c:1661,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/isoffin_read.c:1662,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/isoffin_read.c:1664,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/isoffin_read.c:1667,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/isoffin_read.c:1671,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/isoffin_read.c:1673,1
    - Dst: gf_filter_pck_set_roll_info
      Src: /src/gpac/src/filters/isoffin_read.c:1674,1
    - Dst: gf_filter_pck_set_switch_frame
      Src: /src/gpac/src/filters/isoffin_read.c:1678,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/isoffin_read.c:1684,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/isoffin_read.c:1685,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/isoffin_read.c:1688,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1689,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:1689,1
    - Dst: gf_isom_get_sample_references
      Src: /src/gpac/src/filters/isoffin_read.c:1694,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1695,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/isoffin_read.c:1695,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1701,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/isoffin_read.c:1715,1
    - Dst: gf_filter_pck_set_corrupted
      Src: /src/gpac/src/filters/isoffin_read.c:1717,1
    - Dst: gf_filter_pck_set_crypt_flags
      Src: /src/gpac/src/filters/isoffin_read.c:1719,1
    - Dst: gf_filter_pck_set_seq_num
      Src: /src/gpac/src/filters/isoffin_read.c:1720,1
    - Dst: gf_isom_sample_get_subsamples_buffer
      Src: /src/gpac/src/filters/isoffin_read.c:1723,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1725,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_read.c:1725,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1729,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_read.c:1729,1
    - Dst: gf_isom_sample_is_fragment_start
      Src: /src/gpac/src/filters/isoffin_read.c:1735,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1740,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_read.c:1740,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1742,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:1742,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1746,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/isoffin_read.c:1746,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1750,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_read.c:1750,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1753,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/isoffin_read.c:1753,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1756,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_read.c:1756,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1761,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_read.c:1761,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1763,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_read.c:1763,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/filters/isoffin_read.c:1770,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1771,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_read.c:1771,1
    - Dst: isor_set_sample_groups_and_aux_data
      Src: /src/gpac/src/filters/isoffin_read.c:1775,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/isoffin_read.c:1778,1
    - Dst: gf_filter_pck_set_clock_type
      Src: /src/gpac/src/filters/isoffin_read.c:1782,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/isoffin_read.c:1784,1
    - Dst: isor_reader_release_sample
      Src: /src/gpac/src/filters/isoffin_read.c:1785,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/isoffin_read.c:1792,1
    - Dst: gf_isom_get_tfrf
      Src: /src/gpac/src/filters/isoffin_read.c:1810,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/isoffin_read.c:1812,1
    - Dst: PROP_POINTER
      Src: /src/gpac/src/filters/isoffin_read.c:1812,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/isoffin_read.c:1815,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/isoffin_read.c:1818,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/isoffin_read.c:1825,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/isoffin_read.c:1831,1
    - Dst: isoffin_purge_mem
      Src: /src/gpac/src/filters/isoffin_read.c:1849,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/isoffin_read.c:1856,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/isoffin_read.c:1857,1
    CyclomaticComplexity: 143
    EdgeCount: 143
    ICount: 351
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1866
      start: 1401
    functionDepth: 13
    functionLinenumber: 1401
    functionLinenumberEnd: 1866
    functionName: isoffin_process
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_is_fragment_start
    - isor_reader_check_config
    - gf_log_tool_level_on
    - gf_dm_sess_get_cache_name
    - gf_isom_switch_source
    - gf_isom_get_sample_count
    - isor_check_producer_ref_time
    - gf_filter_pck_set_crypt_flags
    - gf_list_count
    - PROP_DATA_NO_COPY
    - isoffin_setup
    - gf_filter_pck_set_dependency_flags
    - PROP_DATA
    - PROP_LONGUINT
    - gf_filter_pid_get_packet
    - gf_filter_pid_get_name
    - isor_reader_release_sample
    - PROP_POINTER
    - gf_list_get
    - gf_filter_pck_set_property
    - gf_filter_pck_set_byte_offset
    - memcpy
    - isor_reader_get_sample
    - gf_isom_get_sample_references
    - GF_FEVT_INIT
    - gf_filter_release_property
    - PROP_BOOL
    - gf_filter_pck_discard
    - gf_filter_pck_set_corrupted
    - gf_filter_pck_set_clock_type
    - gf_isom_get_tfrf
    - isor_set_sample_groups_and_aux_data
    - d
    - gf_filter_ask_rt_reschedule
    - gf_filter_get_udta
    - isor_update_channel_config
    - gf_isom_has_sync_points
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_alloc
    - isor_reader_get_sample_from_item
    - PROP_SINT
    - gf_isom_sample_get_subsamples_buffer
    - gf_filter_pck_get_data
    - GF_LOG
    - gf_filter_pck_set_duration
    - gf_filter_pid_would_block
    - gf_filter_pid_set_eos
    - PROP_FRAC64_INT
    - gf_error_to_string
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - gf_filter_pck_get_sap
    - gf_filter_pid_send_event
    - gf_filter_pid_set_property
    - gf_filter_pid_set_info_str
    - gf_filter_pck_new_shared
    - gf_filter_pid_get_property
    - gf_filter_pck_set_dts
    - gf_filter_pid_get_info_str
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_switch_frame
    - PROP_UINT
    - gf_filter_pck_check_realloc
    - gf_filter_pck_set_seek_flag
    - gf_filter_pid_send_flush
    - isoffin_configure_pid
    - gf_filter_end_of_session
    - isoffin_purge_mem
    - gf_filter_pck_set_roll_info
    - gf_filter_pid_is_flush_eos
    - gf_isom_refresh_fragmented
    - gf_filter_pck_set_seq_num
    - isoffin_push_buffer
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err isoffin_process(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_probe_data
      Src: /src/gpac/src/filters/isoffin_read.c:1870,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1875
      start: 1868
    functionDepth: 2
    functionLinenumber: 1868
    functionLinenumberEnd: 1875
    functionName: isoffin_probe_data
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_probe_data
    linkageType: ''
    returnType: char
    signature: char *isoffin_probe_data(const u8 *data, u32 size, GF_FilterProbeScore
      *score)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1878
      start: 1877
    functionDepth: 0
    functionLinenumber: 1877
    functionLinenumberEnd: 1878
    functionName: OFFS
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OFFS(_n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1996
      start: 1993
    functionDepth: 0
    functionLinenumber: 1993
    functionLinenumberEnd: 1996
    functionName: mp4dmx_register
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *mp4dmx_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2001
      start: 1998
    functionDepth: 0
    functionLinenumber: 1998
    functionLinenumberEnd: 2001
    functionName: mp4dmx_register
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *mp4dmx_register(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:8,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:9,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 3
    argNames:
    - pid
    - data_size
    - data
    argTypes:
    - GF_FilterPid*
    - u32
    - u8**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15
      start: 5
    functionDepth: 1
    functionLinenumber: 5
    functionLinenumberEnd: 15
    functionName: pck_new_alloc
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 157
    functionsReached:
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_FilterPacket
    signature: GF_FilterPacket * pck_new_alloc(GF_FilterPid *pid, u32 data_size, u8
      **data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:20,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - pid
    - data
    - data_size
    - destruct
    argTypes:
    - GF_FilterPid*
    - u8*
    - u32
    - gf_fsess_packet_destructor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 17
    functionDepth: 1
    functionLinenumber: 17
    functionLinenumberEnd: 27
    functionName: pck_new_shared
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 20
    functionsReached:
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_FilterPacket
    signature: GF_FilterPacket * pck_new_shared(GF_FilterPid *pid, const u8 *data,
      u32 data_size, gf_fsess_packet_destructor destruct)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - num_frames
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 60
    functionName: SEND_VIDEO
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SEND_VIDEO(num_frames)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 68
    functionName: SEND_EVENT
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SEND_EVENT()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - pck_send_fct
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 75
    functionName: UT_SCTE35_INIT
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: UT_SCTE35_INIT(pck_send_fct)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 81
    functionName: UT_SCTE35_PCK_SEND_FINALIZE
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: UT_SCTE35_PCK_SEND_FINALIZE()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 88
    functionName: unittest
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached:
    - assert_equal
    linkageType: ''
    returnType: void
    signature: void unittest(scte35dec_safety)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:102,1
    - Dst: assert_less
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:107,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:108,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:108,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:109,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:109,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:112,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:113,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:114,1
    - Dst: assert_equal_mem
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:115,1
    - Dst: UT_SCTE35_PCK_SEND_FINALIZE
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 119
    functionName: pck_send_no_event
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached:
    - assert_equal_mem
    - gf_filter_pck_get_data
    - UT_SCTE35_PCK_SEND_FINALIZE
    - assert_equal
    - gf_filter_pck_get_duration
    - assert_less
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pck_send_no_event(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: UT_SCTE35_INIT
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:123,1
    - Dst: SEND_VIDEO
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:126,1
    - Dst: scte35dec_flush
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:128,1
    - Dst: scte35dec_finalize_internal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:129,1
    - Dst: pck_send
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 121
    functionDepth: 7
    functionLinenumber: 121
    functionLinenumberEnd: 131
    functionName: unittest
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached:
    - pck_send
    - scte35dec_flush
    - UT_SCTE35_INIT
    - SEND_VIDEO
    - scte35dec_finalize_internal
    linkageType: ''
    returnType: void
    signature: void unittest(scte35dec_no_event)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:145,1
    - Dst: assert_less
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:150,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:151,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:151,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:152,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:152,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:155,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:156,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:157,1
    - Dst: assert_equal_mem
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:158,1
    - Dst: UT_SCTE35_PCK_SEND_FINALIZE
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:160,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 162
    functionName: pck_send_segmentation_no_event
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached:
    - assert_equal_mem
    - gf_filter_pck_get_data
    - UT_SCTE35_PCK_SEND_FINALIZE
    - assert_equal
    - gf_filter_pck_get_duration
    - assert_less
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pck_send_segmentation_no_event(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: UT_SCTE35_INIT
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:166,1
    - Dst: SEND_VIDEO
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:170,1
    - Dst: scte35dec_flush
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:172,1
    - Dst: scte35dec_finalize_internal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:173,1
    - Dst: pck_send
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 164
    functionDepth: 7
    functionLinenumber: 164
    functionLinenumberEnd: 175
    functionName: unittest
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached:
    - pck_send
    - scte35dec_flush
    - UT_SCTE35_INIT
    - SEND_VIDEO
    - scte35dec_finalize_internal
    linkageType: ''
    returnType: void
    signature: void unittest(scte35dec_segmentation_no_event)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:182,1
    - Dst: scte35dec_initialize_internal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:182,1
    - Dst: SEND_EVENT
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:186,1
    - Dst: assert_true
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:187,1
    - Dst: scte35dec_is_splice_point
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:187,1
    - Dst: scte35dec_flush
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:189,1
    - Dst: scte35dec_finalize_internal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 179
    functionDepth: 7
    functionLinenumber: 179
    functionLinenumberEnd: 191
    functionName: unittest
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached:
    - scte35dec_initialize_internal
    - scte35dec_flush
    - scte35dec_is_splice_point
    - assert_equal
    - SEND_EVENT
    - assert_true
    - scte35dec_finalize_internal
    linkageType: ''
    returnType: void
    signature: void unittest(scte35dec_splice_point_with_idr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:208,1
    - Dst: assert_less
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:213,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:214,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:214,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:215,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:215,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:218,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:219,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:223,1
    - Dst: assert_equal_mem
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:224,1
    - Dst: assert_less_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:227,1
    - Dst: assert_equal_mem
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:228,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:230,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:231,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:232,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:232,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:233,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:233,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:234,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:234,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:235,1
    - Dst: assert_true
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:238,1
    - Dst: UT_SCTE35_PCK_SEND_FINALIZE
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:241,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 195
    functionDepth: 7
    functionLinenumber: 195
    functionLinenumberEnd: 243
    functionName: pck_send_simple
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached:
    - assert_equal_mem
    - assert_less_equal
    - gf_bs_read_u32
    - gf_bs_new
    - gf_bs_seek
    - assert_true
    - gf_filter_pck_get_data
    - gf_bs_read_u64
    - UT_SCTE35_PCK_SEND_FINALIZE
    - gf_bs_del
    - assert_equal
    - gf_filter_pck_get_duration
    - assert_less
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pck_send_simple(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: UT_SCTE35_INIT
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:247,1
    - Dst: SEND_VIDEO
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:250,1
    - Dst: SEND_EVENT
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:252,1
    - Dst: SEND_VIDEO
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:253,1
    - Dst: scte35dec_flush
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:255,1
    - Dst: scte35dec_finalize_internal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:256,1
    - Dst: pck_send
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 245
    functionDepth: 7
    functionLinenumber: 245
    functionLinenumberEnd: 258
    functionName: unittest
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached:
    - pck_send
    - scte35dec_flush
    - UT_SCTE35_INIT
    - SEND_VIDEO
    - SEND_EVENT
    - scte35dec_finalize_internal
    linkageType: ''
    returnType: void
    signature: void unittest(scte35dec_simple)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:275,1
    - Dst: assert_less
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:280,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:281,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:281,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:282,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:282,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:285,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:286,1
    - Dst: UT_SCTE35_PCK_SEND_FINALIZE
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:288,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 290
    functionName: pck_send_initial_delay
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_data
    - UT_SCTE35_PCK_SEND_FINALIZE
    - assert_equal
    - gf_filter_pck_get_duration
    - assert_less
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pck_send_initial_delay(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: UT_SCTE35_INIT
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:294,1
    - Dst: SEND_VIDEO
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:298,1
    - Dst: SEND_EVENT
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:300,1
    - Dst: scte35dec_flush
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:302,1
    - Dst: scte35dec_flush
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:303,1
    - Dst: scte35dec_finalize_internal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:304,1
    - Dst: pck_send
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:305,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 292
    functionDepth: 7
    functionLinenumber: 292
    functionLinenumberEnd: 306
    functionName: unittest
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached:
    - pck_send
    - scte35dec_flush
    - UT_SCTE35_INIT
    - SEND_VIDEO
    - SEND_EVENT
    - scte35dec_finalize_internal
    linkageType: ''
    returnType: void
    signature: void unittest(scte35dec_initial_delay)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:323,1
    - Dst: assert_less
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:328,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:329,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:329,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:330,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:330,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:333,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:334,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:338,1
    - Dst: assert_equal_mem
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:339,1
    - Dst: assert_less_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:342,1
    - Dst: assert_equal_mem
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:343,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:345,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:346,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:347,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:347,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:348,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:348,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:349,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:349,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:350,1
    - Dst: assert_true
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:353,1
    - Dst: UT_SCTE35_PCK_SEND_FINALIZE
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:356,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 310
    functionDepth: 7
    functionLinenumber: 310
    functionLinenumberEnd: 358
    functionName: pck_send_segmentation_beginning
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached:
    - assert_equal_mem
    - assert_less_equal
    - gf_bs_read_u32
    - gf_bs_new
    - gf_bs_seek
    - assert_true
    - gf_filter_pck_get_data
    - gf_bs_read_u64
    - UT_SCTE35_PCK_SEND_FINALIZE
    - gf_bs_del
    - assert_equal
    - gf_filter_pck_get_duration
    - assert_less
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pck_send_segmentation_beginning(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: UT_SCTE35_INIT
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:362,1
    - Dst: SEND_EVENT
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:366,1
    - Dst: SEND_VIDEO
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:367,1
    - Dst: scte35dec_flush
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:369,1
    - Dst: scte35dec_finalize_internal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:370,1
    - Dst: pck_send
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:371,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 360
    functionDepth: 7
    functionLinenumber: 360
    functionLinenumberEnd: 372
    functionName: unittest
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached:
    - pck_send
    - scte35dec_flush
    - UT_SCTE35_INIT
    - SEND_VIDEO
    - SEND_EVENT
    - scte35dec_finalize_internal
    linkageType: ''
    returnType: void
    signature: void unittest(scte35dec_segmentation_beginning)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:393,1
    - Dst: assert_less
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:398,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:399,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:399,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:400,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:400,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:403,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:404,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:408,1
    - Dst: assert_equal_mem
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:409,1
    - Dst: assert_less_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:412,1
    - Dst: assert_equal_mem
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:413,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:415,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:416,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:417,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:417,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:418,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:418,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:419,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:419,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:420,1
    - Dst: assert_true
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:423,1
    - Dst: UT_SCTE35_PCK_SEND_FINALIZE
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:426,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 376
    functionDepth: 7
    functionLinenumber: 376
    functionLinenumberEnd: 428
    functionName: pck_send_segmentation_end
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached:
    - assert_equal_mem
    - assert_less_equal
    - gf_bs_read_u32
    - gf_bs_new
    - gf_bs_seek
    - assert_true
    - gf_filter_pck_get_data
    - gf_bs_read_u64
    - UT_SCTE35_PCK_SEND_FINALIZE
    - gf_bs_del
    - assert_equal
    - gf_filter_pck_get_duration
    - assert_less
    - gf_filter_pck_get_dts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pck_send_segmentation_end(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: UT_SCTE35_INIT
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:432,1
    - Dst: SEND_VIDEO
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:436,1
    - Dst: SEND_EVENT
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:437,1
    - Dst: scte35dec_flush
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:439,1
    - Dst: scte35dec_flush
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:440,1
    - Dst: scte35dec_finalize_internal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:441,1
    - Dst: pck_send
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 430
    functionDepth: 7
    functionLinenumber: 430
    functionLinenumberEnd: 443
    functionName: unittest
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached:
    - pck_send
    - scte35dec_flush
    - UT_SCTE35_INIT
    - SEND_VIDEO
    - SEND_EVENT
    - scte35dec_finalize_internal
    linkageType: ''
    returnType: void
    signature: void unittest(scte35dec_short_segmentation_end)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - pck
    - size
    argTypes:
    - GF_FilterPacket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11
      start: 7
    functionDepth: 0
    functionLinenumber: 7
    functionLinenumberEnd: 11
    functionName: pck_truncate
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_cc.c
    functionUses: 16
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pck_truncate(GF_FilterPacket *pck, u32 size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:16,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:17,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 3
    argNames:
    - pid
    - data_size
    - data
    argTypes:
    - GF_FilterPid*
    - u32
    - u8**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 13
    functionDepth: 1
    functionLinenumber: 13
    functionLinenumberEnd: 23
    functionName: pck_new_alloc
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_cc.c
    functionUses: 157
    functionsReached:
    - gf_malloc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_FilterPacket
    signature: GF_FilterPacket * pck_new_alloc(GF_FilterPid *pid, u32 data_size, u8
      **data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:39,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:42,1
    - Dst: text_aggregate_and_post
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:43,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:45,1
    - Dst: strncpy
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:46,1
    - Dst: text_aggregate_and_post
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:47,1
    - Dst: ccdec_flush
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:52,1
    - Dst: pck_send
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:53,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - agg
    - text_with_overlaps
    argTypes:
    - int
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 29
    functionDepth: 3
    functionLinenumber: 29
    functionLinenumberEnd: 55
    functionName: ccdec_test_template
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_cc.c
    functionUses: 0
    functionsReached:
    - text_aggregate_and_post
    - pck_send
    - ccdec_flush
    - strncpy
    - assert_equal
    - strlen
    linkageType: ''
    returnType: void
    signature: void ccdec_test_template(int agg, Bool text_with_overlaps, GF_Err (*pck_send)(GF_FilterPacket
      *pck))
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:65,1
    - Dst: assert_true
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:69,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:72,1
    - Dst: assert_equal_str
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:73,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:74,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:75,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 79
    functionName: pck_send_default
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_cc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - assert_equal_str
    - gf_filter_pck_get_data
    - assert_equal
    - assert_true
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pck_send_default(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ccdec_test_template
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 4
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: unittest
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_cc.c
    functionUses: 0
    functionsReached:
    - ccdec_test_template
    linkageType: ''
    returnType: void
    signature: void unittest(ccdec_default)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:94,1
    - Dst: assert_true
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:99,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:102,1
    - Dst: assert_equal_str
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:103,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:104,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:105,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 108
    functionName: pck_send_aggregation
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_cc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - assert_equal_str
    - gf_filter_pck_get_data
    - assert_equal
    - assert_true
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pck_send_aggregation(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ccdec_test_template
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 4
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: unittest
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_cc.c
    functionUses: 0
    functionsReached:
    - ccdec_test_template
    linkageType: ''
    returnType: void
    signature: void unittest(ccdec_aggregation)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ccdec_test_template
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 4
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: unittest
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_cc.c
    functionUses: 0
    functionsReached:
    - ccdec_test_template
    linkageType: ''
    returnType: void
    signature: void unittest(ccdec_aggregation_overlaps)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:129,1
    - Dst: assert_true
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:133,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:136,1
    - Dst: assert_equal_str
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:137,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:138,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:139,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 142
    functionName: pck_send_several_entries
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_cc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - assert_equal_str
    - gf_filter_pck_get_data
    - assert_equal
    - assert_true
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pck_send_several_entries(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strcpy
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:156,1
    - Dst: text_aggregate_and_post
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:157,1
    - Dst: strlen
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:157,1
    - Dst: strcpy
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:159,1
    - Dst: text_aggregate_and_post
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:160,1
    - Dst: strlen
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:160,1
    - Dst: ccdec_flush
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:163,1
    - Dst: CCDecCtx::pck_send
      Src: /src/gpac/src/filters/unittests/ut_dec_cc.c:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 145
    functionDepth: 3
    functionLinenumber: 145
    functionLinenumberEnd: 166
    functionName: unittest
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_cc.c
    functionUses: 0
    functionsReached:
    - text_aggregate_and_post
    - ccdec_flush
    - strcpy
    - CCDecCtx::pck_send
    - strlen
    linkageType: ''
    returnType: void
    signature: void unittest(ccdec_several_entries)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __pid
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 41
    functionName: PID_IS_INPUT
    functionSourceFile: /src/gpac/src/filter_core/filter_session.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PID_IS_INPUT(__pid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __pid
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 42
    functionName: PID_IS_OUTPUT
    functionSourceFile: /src/gpac/src/filter_core/filter_session.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PID_IS_OUTPUT(__pid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __pck
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 43
    functionName: PCK_IS_INPUT
    functionSourceFile: /src/gpac/src/filter_core/filter_session.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PCK_IS_INPUT(__pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __pck
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: PCK_IS_OUTPUT
    functionSourceFile: /src/gpac/src/filter_core/filter_session.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PCK_IS_OUTPUT(__pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __f
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 46
    functionName: FSESS_CHECK_THREAD
    functionSourceFile: /src/gpac/src/filter_core/filter_session.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FSESS_CHECK_THREAD(__f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _a
    - ','
    - _b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 104
    functionName: gf_props_hash_djb2
    functionSourceFile: /src/gpac/src/filter_core/filter_session.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: gf_props_hash_djb2(_a, _b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:70,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:75,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session_js.c:77,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:78,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:79,1
    - Dst: gf_mx_toggle_log
      Src: /src/gpac/src/filter_core/filter_session_js.c:83,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:85,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:86,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session_js.c:88,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filter_core/filter_session_js.c:89,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:90,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:92,1
    - Dst: gf_mx_toggle_log
      Src: /src/gpac/src/filter_core/filter_session_js.c:94,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 97
    functionName: jsfs_mark
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_fs_lock_filters
    - JS_GetOpaque
    - JS_IsUndefined
    - gf_list_count
    - gf_mx_toggle_log
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: void jsfs_mark(JSRuntime *rt, JSValueConst val, JS_MarkFunc *mark_func)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:102,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/filter_core/filter_session_js.c:106,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:108,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 109
    functionName: jsfs_finalizer
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_free
    - gf_fs_del
    linkageType: ''
    returnType: void
    signature: void jsfs_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - c
    - this_val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 139
    functionName: jsff_get_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 2
    functionsReached:
    - JS_GetOpaque
    linkageType: ''
    returnType: GF_Filter
    signature: GF_Filter *jsff_get_filter(JSContext *c, JSValue this_val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - c
    - this_val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 146
    functionName: jsff_get_session
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 2
    functionsReached:
    - JS_GetOpaque
    linkageType: ''
    returnType: GF_FilterSession
    signature: GF_FilterSession *jsff_get_session(JSContext *c, JSValue this_val)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:155,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:157,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session_js.c:159,1
    - Dst: jsfs_new_filter_obj
      Src: /src/gpac/src/filter_core/filter_session_js.c:160,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session_js.c:162,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:163,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session_js.c:165,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:166,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session_js.c:168,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:169,1
    - Dst: JS_Call
      Src: /src/gpac/src/filter_core/filter_session_js.c:172,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:173,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filter_core/filter_session_js.c:175,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filter_core/filter_session_js.c:176,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:178,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filter_core/filter_session_js.c:179,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:180,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 3
    argNames:
    - task
    - text
    - for_filter
    argTypes:
    - JSFS_Task*
    - char*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 151
    functionDepth: 6
    functionLinenumber: 151
    functionLinenumberEnd: 181
    functionName: jsfs_exec_task_custom
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - JS_DupValue
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_NewString
    - jsfs_new_filter_obj
    - gf_js_lock
    - js_dump_error
    - js_std_loop
    linkageType: ''
    returnType: void
    signature: void jsfs_exec_task_custom(JSFS_Task *task, const char *text, GF_Filter
      *for_filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filter_core/filter_session_js.c:186,1
    - Dst: jsfs_exec_task_custom
      Src: /src/gpac/src/filter_core/filter_session_js.c:188,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 4
    argNames:
    - fs
    - task_type
    - text
    - for_filter
    argTypes:
    - GF_FilterSession*
    - u32
    - char*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 182
    functionDepth: 7
    functionLinenumber: 182
    functionLinenumberEnd: 190
    functionName: jsfs_exec_tasks_custom
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - jsfs_exec_task_custom
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void jsfs_exec_tasks_custom(GF_FilterSession *fs, u32 task_type, const
      char *text, GF_Filter *for_filter)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_session
      Src: /src/gpac/src/filter_core/filter_session_js.c:194,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:196,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:200,1
    - Dst: gf_fs_get_filters_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:200,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:202,1
    - Dst: gf_fs_is_last_task
      Src: /src/gpac/src/filter_core/filter_session_js.c:204,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:211,1
    - Dst: gf_dm_get_data_rate
      Src: /src/gpac/src/filter_core/filter_session_js.c:211,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:218,1
    - Dst: gf_dm_get_global_rate
      Src: /src/gpac/src/filter_core/filter_session_js.c:218,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:222,1
    - Dst: gf_fs_get_last_process_error
      Src: /src/gpac/src/filter_core/filter_session_js.c:222,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:224,1
    - Dst: gf_fs_get_last_connect_error
      Src: /src/gpac/src/filter_core/filter_session_js.c:224,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:226,1
    - Dst: jsf_get_script_filename
      Src: /src/gpac/src/filter_core/filter_session_js.c:226,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 192
    functionDepth: 2
    functionLinenumber: 192
    functionLinenumberEnd: 229
    functionName: jsfs_prop_get
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_fs_get_filters_count
    - gf_fs_get_last_process_error
    - gf_fs_is_last_task
    - JS_NewString
    - gf_fs_get_last_connect_error
    - gf_dm_get_data_rate
    - gf_dm_get_global_rate
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - jsf_get_script_filename
    - jsff_get_session
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_prop_get(JSContext *ctx, JSValueConst this_val, int magic)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_session
      Src: /src/gpac/src/filter_core/filter_session_js.c:233,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:235,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:242,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:242,1
    - Dst: gf_dm_set_data_rate
      Src: /src/gpac/src/filter_core/filter_session_js.c:243,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 4
    argNames:
    - ctx
    - this_val
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 231
    functionDepth: 2
    functionLinenumber: 231
    functionLinenumberEnd: 249
    functionName: jsfs_prop_set
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_dm_set_data_rate
    - JS_ToInt32
    - jsff_get_session
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_prop_set(JSContext *ctx, JSValueConst this_val, JSValueConst
      value, int magic)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:261,1
    - Dst: JS_Call
      Src: /src/gpac/src/filter_core/filter_session_js.c:262,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filter_core/filter_session_js.c:265,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filter_core/filter_session_js.c:266,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:268,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:269,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filter_core/filter_session_js.c:272,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:273,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:280,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filter_core/filter_session_js.c:281,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:282,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:286,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:287,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_session_js.c:288,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:289,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 3
    argNames:
    - fs
    - udta
    - timeout_ms
    argTypes:
    - GF_FilterSession*
    - void*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 251
    functionDepth: 6
    functionLinenumber: 251
    functionLinenumberEnd: 293
    functionName: jsfs_task_exec
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_IsInteger
    - JS_ToBool
    - gf_js_lock
    - JS_ToInt32
    - gf_list_del_item
    - js_dump_error
    - JS_IsBool
    - js_std_loop
    linkageType: ''
    returnType: Bool
    signature: Bool jsfs_task_exec(GF_FilterSession *fs, void *udta, u32 *timeout_ms)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_session
      Src: /src/gpac/src/filter_core/filter_session_js.c:300,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:301,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filter_core/filter_session_js.c:302,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:302,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session_js.c:304,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:305,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filter_core/filter_session_js.c:311,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:312,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:314,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:316,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:319,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:320,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session_js.c:321,1
    - Dst: gf_fs_post_user_task_delay
      Src: /src/gpac/src/filter_core/filter_session_js.c:323,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:325,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:327,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 295
    functionDepth: 2
    functionLinenumber: 295
    functionLinenumberEnd: 328
    functionName: jsfs_post_task
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - JS_DupValue
    - GF_SAFEALLOC
    - JS_IsFunction
    - JS_NewInt64
    - gf_fs_post_user_task_delay
    - JS_ToInt32
    - gf_list_add
    - GF_JS_EXCEPTION
    - jsff_get_session
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_post_task(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_session
      Src: /src/gpac/src/filter_core/filter_session_js.c:333,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:334,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:336,1
    - Dst: gf_fs_abort
      Src: /src/gpac/src/filter_core/filter_session_js.c:338,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 330
    functionDepth: 2
    functionLinenumber: 330
    functionLinenumberEnd: 340
    functionName: jsfs_abort
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_fs_abort
    - JS_ToInt32
    - jsff_get_session
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_abort(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_session
      Src: /src/gpac/src/filter_core/filter_session_js.c:344,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:345,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:346,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:346,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:347,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:349,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 341
    functionDepth: 2
    functionLinenumber: 341
    functionLinenumberEnd: 351
    functionName: jsfs_lock_filters
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_fs_lock_filters
    - JS_ToBool
    - GF_JS_EXCEPTION
    - JS_IsBool
    - jsff_get_session
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_lock_filters(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: jsfs_exec_tasks_custom
      Src: /src/gpac/src/filter_core/filter_session_js.c:356,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - new_filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 353
    functionDepth: 8
    functionLinenumber: 353
    functionLinenumberEnd: 357
    functionName: jsfs_on_filter_created
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - jsfs_exec_tasks_custom
    linkageType: ''
    returnType: void
    signature: void jsfs_on_filter_created(GF_Filter *new_filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: jsfs_exec_tasks_custom
      Src: /src/gpac/src/filter_core/filter_session_js.c:362,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 359
    functionDepth: 8
    functionLinenumber: 359
    functionLinenumberEnd: 363
    functionName: jsfs_on_filter_pid_reconfig
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - jsfs_exec_tasks_custom
    linkageType: ''
    returnType: void
    signature: void jsfs_on_filter_pid_reconfig(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: jsfs_exec_tasks_custom
      Src: /src/gpac/src/filter_core/filter_session_js.c:368,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 365
    functionDepth: 8
    functionLinenumber: 365
    functionLinenumberEnd: 369
    functionName: jsfs_on_filter_arg_update
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - jsfs_exec_tasks_custom
    linkageType: ''
    returnType: void
    signature: void jsfs_on_filter_arg_update(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filter_core/filter_session_js.c:373,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:374,1
    - Dst: jsfs_exec_tasks_custom
      Src: /src/gpac/src/filter_core/filter_session_js.c:379,1
    - Dst: gf_js_get_rt
      Src: /src/gpac/src/filter_core/filter_session_js.c:382,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:385,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:386,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/filter_core/filter_session_js.c:387,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:389,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - del_filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 371
    functionDepth: 8
    functionLinenumber: 371
    functionLinenumberEnd: 391
    functionName: jsfs_on_filter_destroyed
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 1
    functionsReached:
    - jsfs_exec_tasks_custom
    - JS_GetOpaque
    - JS_SetOpaque
    - JS_FreeValueRT
    - JS_IsUndefined
    - gf_js_get_rt
    - gf_js_lock
    linkageType: ''
    returnType: void
    signature: void jsfs_on_filter_destroyed(GF_Filter *del_filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filter_core/filter_session_js.c:403,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:406,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session_js.c:408,1
    - Dst: js_init_evt_obj
      Src: /src/gpac/src/filter_core/filter_session_js.c:415,1
    - Dst: JS_Call
      Src: /src/gpac/src/filter_core/filter_session_js.c:416,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:417,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:418,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filter_core/filter_session_js.c:420,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filter_core/filter_session_js.c:421,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:425,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:427,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:430,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filter_core/filter_session_js.c:431,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:432,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 2
    argNames:
    - fs
    - evt
    argTypes:
    - GF_FilterSession*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 393
    functionDepth: 6
    functionLinenumber: 393
    functionLinenumberEnd: 437
    functionName: jsfs_on_event
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_SetOpaque
    - JS_ToBool
    - memset
    - gf_js_lock
    - js_init_evt_obj
    - js_dump_error
    - gf_list_enum
    - js_std_loop
    linkageType: ''
    returnType: Bool
    signature: Bool jsfs_on_event(GF_FilterSession *fs, GF_Event *evt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:448,1
    - Dst: JSFAuthContext*::on_usr_pass
      Src: /src/gpac/src/filter_core/filter_session_js.c:452,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:454,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 446
    functionDepth: 1
    functionLinenumber: 446
    functionLinenumberEnd: 455
    functionName: jsf_auth_finalizer
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_free
    - JSFAuthContext*::on_usr_pass
    linkageType: ''
    returnType: void
    signature: void jsf_auth_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:463,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:465,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:468,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:469,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:471,1
    - Dst: JSFAuthContext*::on_usr_pass
      Src: /src/gpac/src/filter_core/filter_session_js.c:474,1
    - Dst: JSFAuthContext*::on_usr_pass
      Src: /src/gpac/src/filter_core/filter_session_js.c:476,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:480,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:481,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 461
    functionDepth: 1
    functionLinenumber: 461
    functionLinenumberEnd: 483
    functionName: js_auth_done
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JSFAuthContext*::on_usr_pass
    - JS_GetOpaque
    - JS_ToBool
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_auth_done(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/filter_core/filter_session_js.c:497,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:500,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session_js.c:503,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:505,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filter_core/filter_session_js.c:510,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:511,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:513,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:514,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:515,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:516,1
    - Dst: JS_Call
      Src: /src/gpac/src/filter_core/filter_session_js.c:519,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:521,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:522,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:523,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:524,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:525,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filter_core/filter_session_js.c:527,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filter_core/filter_session_js.c:528,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:532,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filter_core/filter_session_js.c:534,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:535,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 36
    argCount: 2
    argNames:
    - fs
    - evt
    argTypes:
    - GF_FilterSession*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 538
      start: 490
    functionDepth: 6
    functionLinenumber: 490
    functionLinenumberEnd: 538
    functionName: jsfs_on_auth
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - GF_SAFEALLOC
    - JS_Call
    - JS_FreeValue
    - JS_SetOpaque
    - JS_IsException
    - JS_NewString
    - JS_NewBool
    - gf_js_lock
    - js_dump_error
    - gf_list_enum
    - js_std_loop
    linkageType: ''
    returnType: Bool
    signature: Bool jsfs_on_auth(GF_FilterSession *fs, GF_Event *evt)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_session
      Src: /src/gpac/src/filter_core/filter_session_js.c:546,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:547,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:551,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:552,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filter_core/filter_session_js.c:553,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:554,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filter_core/filter_session_js.c:559,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:571,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:572,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_session_js.c:573,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:574,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session_js.c:578,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:579,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session_js.c:580,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:584,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:585,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:586,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 39
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - cbk_type
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 541
    functionDepth: 3
    functionLinenumber: 541
    functionLinenumberEnd: 587
    functionName: jsfs_set_fun_callback
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_DupValue
    - JS_IsFunction
    - GF_SAFEALLOC
    - JS_FreeValue
    - JS_NewInt64
    - JS_ToInt64
    - gf_list_add
    - gf_list_del_item
    - GF_JS_EXCEPTION
    - gf_list_enum
    - jsff_get_session
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_set_fun_callback(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv, u32 cbk_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsfs_set_fun_callback
      Src: /src/gpac/src/filter_core/filter_session_js.c:591,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 589
    functionDepth: 4
    functionLinenumber: 589
    functionLinenumberEnd: 592
    functionName: jsfs_set_new_filter_fun
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - jsfs_set_fun_callback
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_set_new_filter_fun(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsfs_set_fun_callback
      Src: /src/gpac/src/filter_core/filter_session_js.c:595,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 596
      start: 593
    functionDepth: 4
    functionLinenumber: 593
    functionLinenumberEnd: 596
    functionName: jsfs_set_del_filter_fun
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - jsfs_set_fun_callback
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_set_del_filter_fun(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsfs_set_fun_callback
      Src: /src/gpac/src/filter_core/filter_session_js.c:599,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 600
      start: 597
    functionDepth: 4
    functionLinenumber: 597
    functionLinenumberEnd: 600
    functionName: jsfs_set_filter_pid_modif_fun
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - jsfs_set_fun_callback
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_set_filter_pid_modif_fun(JSContext *ctx, JSValueConst
      this_val, int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsfs_set_fun_callback
      Src: /src/gpac/src/filter_core/filter_session_js.c:603,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 601
    functionDepth: 4
    functionLinenumber: 601
    functionLinenumberEnd: 604
    functionName: jsfs_set_filter_arg_update_fun
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - jsfs_set_fun_callback
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_set_filter_arg_update_fun(JSContext *ctx, JSValueConst
      this_val, int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsfs_set_fun_callback
      Src: /src/gpac/src/filter_core/filter_session_js.c:607,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 608
      start: 605
    functionDepth: 4
    functionLinenumber: 605
    functionLinenumberEnd: 608
    functionName: jsfs_set_event_fun
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - jsfs_set_fun_callback
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_set_event_fun(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsfs_set_fun_callback
      Src: /src/gpac/src/filter_core/filter_session_js.c:611,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 609
    functionDepth: 4
    functionLinenumber: 609
    functionLinenumberEnd: 612
    functionName: jsfs_set_auth_fun
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - jsfs_set_fun_callback
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_set_auth_fun(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsfs_set_fun_callback
      Src: /src/gpac/src/filter_core/filter_session_js.c:615,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 616
      start: 613
    functionDepth: 4
    functionLinenumber: 613
    functionLinenumberEnd: 616
    functionName: jsfs_remove_callback
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - jsfs_set_fun_callback
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_remove_callback(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:658,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:660,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:664,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filter_core/filter_session_js.c:664,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:666,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:668,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:670,1
    - Dst: gf_filter_get_id
      Src: /src/gpac/src/filter_core/filter_session_js.c:672,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:674,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:676,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:676,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:678,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:678,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:680,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:682,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:684,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:686,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:688,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:691,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:693,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:695,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:697,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:699,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:701,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:703,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:705,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:707,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:711,1
    - Dst: gf_filter_get_stats
      Src: /src/gpac/src/filter_core/filter_session_js.c:713,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:715,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:716,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:717,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:718,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:719,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:720,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:721,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:722,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:723,1
    - Dst: gf_filter_get_stats
      Src: /src/gpac/src/filter_core/filter_session_js.c:726,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:728,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filter_core/filter_session_js.c:728,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:730,1
    - Dst: gf_filter_get_stats
      Src: /src/gpac/src/filter_core/filter_session_js.c:732,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:734,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filter_core/filter_session_js.c:734,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:736,1
    - Dst: gf_filter_get_stats
      Src: /src/gpac/src/filter_core/filter_session_js.c:739,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:741,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:742,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:742,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:743,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:743,1
    - Dst: gf_filter_get_stats
      Src: /src/gpac/src/filter_core/filter_session_js.c:747,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:749,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:750,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:750,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:751,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:751,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:755,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:758,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 111
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 761
      start: 652
    functionDepth: 2
    functionLinenumber: 652
    functionLinenumberEnd: 761
    functionName: jsfs_f_prop_get
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_opid_count
    - JS_GetOpaque
    - JS_NewString
    - JS_NewInt64
    - gf_filter_get_stats
    - gf_filter_get_id
    - JS_NewBool
    - gf_stream_type_name
    - JS_SetPropertyStr
    - JS_NewObject
    - gf_filter_get_ipid_count
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - gf_codecid_name
    - gf_filter_get_name
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_f_prop_get(JSContext *ctx, JSValueConst this_val, int
      magic)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_filter
      Src: /src/gpac/src/filter_core/filter_session_js.c:767,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:769,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:772,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:776,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:777,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session_js.c:778,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:779,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 4
    argNames:
    - ctx
    - this_val
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 783
      start: 763
    functionDepth: 2
    functionLinenumber: 763
    functionLinenumberEnd: 783
    functionName: jsfs_f_prop_set
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_ToCString
    - gf_strdup
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - jsff_get_filter
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_f_prop_set(JSContext *ctx, JSValueConst this_val, JSValueConst
      value, int magic)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:788,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 792
      start: 786
    functionDepth: 1
    functionLinenumber: 786
    functionLinenumberEnd: 792
    functionName: jsff_is_destroyed
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_is_destroyed(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:802,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:804,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filter_core/filter_session_js.c:806,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:807,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:808,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filter_core/filter_session_js.c:810,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:811,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:813,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:814,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filter_core/filter_session_js.c:817,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:818,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filter_core/filter_session_js.c:820,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:821,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:827,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:828,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:829,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/filter_core/filter_session_js.c:829,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:831,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:832,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:833,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/filter_core/filter_session_js.c:833,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:835,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:836,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:837,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:839,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:840,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:841,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filter_core/filter_session_js.c:841,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filter_core/filter_session_js.c:843,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_session_js.c:845,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filter_core/filter_session_js.c:847,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:849,1
    - Dst: jsf_NewPropTranslate
      Src: /src/gpac/src/filter_core/filter_session_js.c:851,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filter_core/filter_session_js.c:853,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filter_core/filter_session_js.c:861,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_session_js.c:865,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:869,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:870,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filter_core/filter_session_js.c:870,1
    - Dst: jsf_NewPropTranslate
      Src: /src/gpac/src/filter_core/filter_session_js.c:872,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filter_core/filter_session_js.c:874,1
    - Dst: JS_Call
      Src: /src/gpac/src/filter_core/filter_session_js.c:876,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filter_core/filter_session_js.c:877,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filter_core/filter_session_js.c:878,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:880,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:881,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:882,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:883,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 71
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - is_output
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 886
      start: 797
    functionDepth: 7
    functionLinenumber: 797
    functionLinenumberEnd: 886
    functionName: jsff_enum_pid_props
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - gf_filter_get_ipid
    - jsf_NewProp
    - JS_FreeCString
    - gf_filter_pid_query_buffer_duration
    - JS_ToCString
    - JS_IsString
    - gf_filter_pid_enum_properties
    - JS_GetOpaque
    - JS_NewString
    - js_dump_error
    - gf_filter_pid_get_property_str
    - gf_props_get_id
    - gf_props_4cc_get_name
    - JS_IsFunction
    - JS_ToInt32
    - gf_filter_pid_is_eos
    - jsf_NewPropTranslate
    - gf_filter_pid_get_property
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - gf_filter_get_opid
    - JS_NewBool
    - strcmp
    - GF_JS_EXCEPTION
    - gf_props_get_type_name
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_enum_pid_props(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv, Bool is_output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsff_enum_pid_props
      Src: /src/gpac/src/filter_core/filter_session_js.c:889,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 890
      start: 887
    functionDepth: 8
    functionLinenumber: 887
    functionLinenumberEnd: 890
    functionName: jsff_enum_ipid_props
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - jsff_enum_pid_props
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_enum_ipid_props(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsff_enum_pid_props
      Src: /src/gpac/src/filter_core/filter_session_js.c:893,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 894
      start: 891
    functionDepth: 8
    functionLinenumber: 891
    functionLinenumberEnd: 894
    functionName: jsff_enum_opid_props
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - jsff_enum_pid_props
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_enum_opid_props(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:902,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:904,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:905,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:906,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filter_core/filter_session_js.c:908,1
    - Dst: jsfs_new_filter_obj
      Src: /src/gpac/src/filter_core/filter_session_js.c:912,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 913
      start: 897
    functionDepth: 1
    functionLinenumber: 897
    functionLinenumberEnd: 913
    functionName: jsff_get_pid_source
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - jsfs_new_filter_obj
    - gf_filter_get_ipid
    - JS_ToInt32
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_get_pid_source(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:920,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:922,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:923,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:924,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filter_core/filter_session_js.c:926,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filter_core/filter_session_js.c:929,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:930,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:930,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session_js.c:933,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filter_core/filter_session_js.c:934,1
    - Dst: jsfs_new_filter_obj
      Src: /src/gpac/src/filter_core/filter_session_js.c:934,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 937
      start: 915
    functionDepth: 1
    functionLinenumber: 915
    functionLinenumberEnd: 937
    functionName: jsff_get_pid_sinks
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - JS_GetOpaque
    - JS_SetPropertyUint32
    - gf_filter_get_opid
    - jsfs_new_filter_obj
    - JS_ToInt32
    - JS_NewInt32
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - JS_NewArray
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_get_pid_sinks(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:952,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:958,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:959,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:959,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:960,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:960,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filter_core/filter_session_js.c:960,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_session_js.c:964,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session_js.c:965,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session_js.c:968,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session_js.c:969,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session_js.c:970,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:972,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:972,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:973,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_session_js.c:975,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session_js.c:976,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:980,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filter_core/filter_session_js.c:980,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_session_js.c:982,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session_js.c:983,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:987,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filter_core/filter_session_js.c:987,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter_session_js.c:990,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:991,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filter_core/filter_session_js.c:991,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter_session_js.c:992,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:994,1
    - Dst: gf_filter_get_arg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1000,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1001,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1001,1
    - Dst: gf_filter_parse_prop_solve_env_var
      Src: /src/gpac/src/filter_core/filter_session_js.c:1003,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1004,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1004,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter_session_js.c:1005,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1007,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1012,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1012,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1014,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1014,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1016,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1016,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1017,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1017,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1018,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1018,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1020,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1020,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1023,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1023,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1026,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 78
    argCount: 6
    argNames:
    - ctx
    - fs
    - freg
    - f_inst
    - val_only
    - array
    argTypes:
    - JSContext*
    - GF_FilterSession*
    - GF_FilterRegister*
    - GF_Filter*
    - Bool
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1029
      start: 939
    functionDepth: 4
    functionLinenumber: 939
    functionLinenumberEnd: 1029
    functionName: get_filter_args
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - snprintf
    - gf_props_reset_single
    - gf_filter_get_arg
    - strlen
    - JS_SetPropertyUint32
    - JS_NewString
    - strstr
    - JS_NewBool
    - strcmp
    - jsf_NewProp
    - gf_props_parse_value
    - JS_NewObject
    - gf_filter_parse_prop_solve_env_var
    - JS_SetPropertyStr
    - strchr
    - gf_props_get_type_name
    linkageType: ''
    returnType: void
    signature: void get_filter_args(JSContext *ctx, GF_FilterSession *fs,  const GF_FilterRegister
      *freg, GF_Filter *f_inst, Bool val_only, JSValue array)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1034,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1036,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1038,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1038,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filter_core/filter_session_js.c:1041,1
    - Dst: get_filter_args
      Src: /src/gpac/src/filter_core/filter_session_js.c:1042,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1044
      start: 1031
    functionDepth: 5
    functionLinenumber: 1031
    functionLinenumberEnd: 1044
    functionName: jsff_all_args
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - get_filter_args
    - JS_ToBool
    - GF_JS_EXCEPTION
    - JS_IsBool
    - JS_NewArray
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_all_args(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:1048,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session_js.c:1050,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1051,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - fs
    - name
    argTypes:
    - GF_FilterSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1054
      start: 1046
    functionDepth: 1
    functionLinenumber: 1046
    functionLinenumberEnd: 1054
    functionName: find_reg
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *find_reg(GF_FilterSession *fs, char *name)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1062,1
    - Dst: find_reg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1065,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1071,1
    - Dst: gf_fs_load_source_dest_internal
      Src: /src/gpac/src/filter_core/filter_session_js.c:1072,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1073,1
    - Dst: gf_fs_load_source_dest_internal
      Src: /src/gpac/src/filter_core/filter_session_js.c:1074,1
    - Dst: get_filter_args
      Src: /src/gpac/src/filter_core/filter_session_js.c:1081,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session_js.c:1087,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session_js.c:1088,1
    - Dst: gf_fs_reg_all
      Src: /src/gpac/src/filter_core/filter_session_js.c:1092,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1097,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session_js.c:1101,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session_js.c:1102,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1103,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session_js.c:1104,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session_js.c:1106,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session_js.c:1108,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1110,1
    - Dst: gf_fs_load_source
      Src: /src/gpac/src/filter_core/filter_session_js.c:1111,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1112,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/filter_core/filter_session_js.c:1113,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter_session_js.c:1115,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:1117,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1120,1
    - Dst: get_filter_args
      Src: /src/gpac/src/filter_core/filter_session_js.c:1127,1
    - Dst: gf_filter_meta_get_instances
      Src: /src/gpac/src/filter_core/filter_session_js.c:1128,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1131,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session_js.c:1133,1
    - Dst: find_reg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1135,1
    - Dst: get_filter_args
      Src: /src/gpac/src/filter_core/filter_session_js.c:1137,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_session_js.c:1147,1
    - Dst: GF_Filter*::freg::finalize
      Src: /src/gpac/src/filter_core/filter_session_js.c:1149,1
    - Dst: gf_filter_del
      Src: /src/gpac/src/filter_core/filter_session_js.c:1151,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1154,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 76
    argCount: 6
    argNames:
    - ctx
    - fs
    - meta_fs
    - regname
    - finst
    - args
    argTypes:
    - JSContext*
    - GF_FilterSession*
    - GF_FilterSession**
    - char*
    - GF_Filter*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1156
      start: 1058
    functionDepth: 5
    functionLinenumber: 1058
    functionLinenumberEnd: 1156
    functionName: jsfs_get_filter_args
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fs_lock_filters
    - GF_SAFEALLOC
    - strchr
    - find_reg
    - gf_list_new
    - gf_strdup
    - sprintf
    - strncmp
    - gf_fs_reg_all
    - gf_dynstrcat
    - GF_Filter*::freg::finalize
    - gf_fs_load_filter
    - gf_filter_del
    - strstr
    - gf_list_del_item
    - gf_fs_load_source
    - gf_fs_load_destination
    - gf_filter_meta_get_instances
    - get_filter_args
    - gf_fs_load_source_dest_internal
    linkageType: ''
    returnType: Bool
    signature: Bool jsfs_get_filter_args(JSContext *ctx, GF_FilterSession *fs, GF_FilterSession
      **meta_fs, char *regname, GF_Filter *finst, JSValue args)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:1160,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_session_js.c:1161,1
    - Dst: GF_FilterRegister*::register_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:1163,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session_js.c:1165,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:1166,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - metafs
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1167
      start: 1158
    functionDepth: 3
    functionLinenumber: 1158
    functionLinenumberEnd: 1167
    functionName: del_meta_fs
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_back
    - gf_list_count
    - GF_FilterRegister*::register_free
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void del_meta_fs(GF_FilterSession *metafs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_session
      Src: /src/gpac/src/filter_core/filter_session_js.c:1172,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1173,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1175,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1176,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filter_core/filter_session_js.c:1179,1
    - Dst: jsfs_get_filter_args
      Src: /src/gpac/src/filter_core/filter_session_js.c:1180,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1181,1
    - Dst: del_meta_fs
      Src: /src/gpac/src/filter_core/filter_session_js.c:1183,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:1186,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1187,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1190
      start: 1169
    functionDepth: 6
    functionLinenumber: 1169
    functionLinenumberEnd: 1190
    functionName: jsfs_filter_args
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - jsff_get_session
    - JS_FreeValue
    - del_meta_fs
    - jsfs_get_filter_args
    - GF_JS_EXCEPTION
    - JS_NewArray
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_filter_args(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_session
      Src: /src/gpac/src/filter_core/filter_session_js.c:1195,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1196,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1198,1
    - Dst: gf_fs_run
      Src: /src/gpac/src/filter_core/filter_session_js.c:1200,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1201,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1202
      start: 1193
    functionDepth: 2
    functionLinenumber: 1193
    functionLinenumberEnd: 1202
    functionName: jsfs_run_sess
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - gf_fs_run
    - jsff_get_session
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_run_sess(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_session
      Src: /src/gpac/src/filter_core/filter_session_js.c:1207,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1208,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1210,1
    - Dst: gf_fs_stop
      Src: /src/gpac/src/filter_core/filter_session_js.c:1212,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1213,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1214
      start: 1205
    functionDepth: 2
    functionLinenumber: 1205
    functionLinenumberEnd: 1214
    functionName: jsfs_stop_sess
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - gf_fs_stop
    - jsff_get_session
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_stop_sess(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_session
      Src: /src/gpac/src/filter_core/filter_session_js.c:1217,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1218,1
    - Dst: gf_fs_print_connections
      Src: /src/gpac/src/filter_core/filter_session_js.c:1219,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1221
      start: 1215
    functionDepth: 2
    functionLinenumber: 1215
    functionLinenumberEnd: 1221
    functionName: jsfs_print_connections
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - jsff_get_session
    - gf_fs_print_connections
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_print_connections(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_session
      Src: /src/gpac/src/filter_core/filter_session_js.c:1225,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1226,1
    - Dst: gf_fs_print_stats
      Src: /src/gpac/src/filter_core/filter_session_js.c:1227,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1229
      start: 1223
    functionDepth: 2
    functionLinenumber: 1223
    functionLinenumberEnd: 1229
    functionName: jsfs_print_stats
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - jsff_get_session
    - gf_fs_print_stats
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_print_stats(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1236,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1238,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1240,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1241,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1248,1
    - Dst: gf_filter_get_arg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1252,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1253,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1254,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1258,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1260
      start: 1231
    functionDepth: 4
    functionLinenumber: 1231
    functionLinenumberEnd: 1260
    functionName: jsff_get_arg
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_GetOpaque
    - gf_filter_get_arg
    - strcmp
    - jsf_NewProp
    - GF_JS_EXCEPTION
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_get_arg(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1269,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1271,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1273,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1274,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1276,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1278,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1279,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1281,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1282,1
    - Dst: gf_fs_send_update
      Src: /src/gpac/src/filter_core/filter_session_js.c:1284,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1285,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1286,1
    - Dst: gf_filter_get_arg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1292,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1293,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1294,1
    - Dst: jsf_ToProp_ex
      Src: /src/gpac/src/filter_core/filter_session_js.c:1297,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1299,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1300,1
    - Dst: gf_props_dump_val
      Src: /src/gpac/src/filter_core/filter_session_js.c:1303,1
    - Dst: gf_fs_send_update
      Src: /src/gpac/src/filter_core/filter_session_js.c:1304,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter_session_js.c:1305,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1308,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1310
      start: 1265
    functionDepth: 3
    functionLinenumber: 1265
    functionLinenumberEnd: 1310
    functionName: jsff_update
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - jsf_ToProp_ex
    - gf_props_reset_single
    - JS_GetOpaque
    - gf_filter_get_arg
    - js_throw_err_msg
    - JS_ToInt32
    - gf_props_dump_val
    - GF_JS_EXCEPTION
    - gf_fs_send_update
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_update(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1314,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1316,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1318,1
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:1319,1
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:1321,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1324
      start: 1312
    functionDepth: 1
    functionLinenumber: 1312
    functionLinenumberEnd: 1324
    functionName: jsff_lock
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_filter_lock
    - GF_JS_EXCEPTION
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_lock(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1328,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1330,1
    - Dst: gf_filter_remove
      Src: /src/gpac/src/filter_core/filter_session_js.c:1332,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1334
      start: 1326
    functionDepth: 1
    functionLinenumber: 1326
    functionLinenumberEnd: 1334
    functionName: jsff_remove
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - gf_filter_remove
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_remove(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1346,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1348,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:1350,1
    - Dst: jsf_custom_filter_opaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1351,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1352,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1354,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1355,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1360,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1362,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1362,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1363,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filter_core/filter_session_js.c:1364,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1365,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1369,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1371,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1372,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1376,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1380,1
    - Dst: gf_fs_load_source
      Src: /src/gpac/src/filter_core/filter_session_js.c:1381,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1383,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/filter_core/filter_session_js.c:1384,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter_session_js.c:1386,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1390,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_session_js.c:1390,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1391,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1392,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1393,1
    - Dst: gf_filter_set_source_restricted
      Src: /src/gpac/src/filter_core/filter_session_js.c:1397,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filter_core/filter_session_js.c:1399,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1401,1
    - Dst: gf_filter_reconnect_output
      Src: /src/gpac/src/filter_core/filter_session_js.c:1406,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1408,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1409,1
    - Dst: jsfs_new_filter_obj
      Src: /src/gpac/src/filter_core/filter_session_js.c:1411,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 65
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1412
      start: 1338
    functionDepth: 2
    functionLinenumber: 1338
    functionLinenumberEnd: 1412
    functionName: jsff_insert_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_fs_lock_filters
    - gf_filter_reconnect_output
    - JS_FreeCString
    - JS_ToCString
    - JS_IsString
    - JS_GetOpaque
    - gf_filter_set_source_restricted
    - strncmp
    - jsfs_new_filter_obj
    - JS_IsObject
    - gf_filter_set_source
    - gf_fs_load_filter
    - js_throw_err_msg
    - JS_ToInt32
    - gf_error_to_string
    - gf_fs_load_source
    - jsf_custom_filter_opaque
    - gf_fs_load_destination
    - gf_filter_get_opid
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_insert_filter(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1418,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1420,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1424,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1424,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filter_core/filter_session_js.c:1426,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1427,1
    - Dst: gf_filter_reconnect_output
      Src: /src/gpac/src/filter_core/filter_session_js.c:1431,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1433,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_session_js.c:1433,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1435
      start: 1414
    functionDepth: 2
    functionLinenumber: 1414
    functionLinenumberEnd: 1435
    functionName: jsff_reconnect_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - js_throw_err_msg
    - gf_filter_get_opid
    - JS_ToInt32
    - gf_error_to_string
    - gf_filter_reconnect_output
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_reconnect_filter(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1441,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1443,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1445,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1445,1
    - Dst: gf_filter_get_possible_destinations
      Src: /src/gpac/src/filter_core/filter_session_js.c:1449,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1452,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_session_js.c:1452,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1454,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:1455,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1457
      start: 1437
    functionDepth: 2
    functionLinenumber: 1437
    functionLinenumberEnd: 1457
    functionName: jsff_get_destinations
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_get_possible_destinations
    - JS_GetOpaque
    - js_throw_err_msg
    - JS_NewString
    - JS_ToInt32
    - gf_error_to_string
    - GF_JS_EXCEPTION
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_get_destinations(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: jsf_custom_filter_context
      Src: /src/gpac/src/filter_core/filter_session_js.c:1465,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filter_core/filter_session_js.c:1467,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:1469,1
    - Dst: jsf_custom_filter_obj
      Src: /src/gpac/src/filter_core/filter_session_js.c:1470,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1472,1
    - Dst: jsfs_new_filter_obj
      Src: /src/gpac/src/filter_core/filter_session_js.c:1474,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1475,1
    - Dst: JS_Call
      Src: /src/gpac/src/filter_core/filter_session_js.c:1476,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filter_core/filter_session_js.c:1477,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filter_core/filter_session_js.c:1477,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:1478,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:1479,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:1480,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:1481,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filter_core/filter_session_js.c:1482,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:1483,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - src_f
    - on_setup_error_udta
    - e
    argTypes:
    - GF_Filter*
    - void*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1485
      start: 1462
    functionDepth: 6
    functionLinenumber: 1462
    functionLinenumberEnd: 1485
    functionName: jsff_on_setup_error
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - jsf_custom_filter_context
    - JS_IsException
    - JS_FreeValue
    - JS_IsUndefined
    - jsf_custom_filter_obj
    - jsfs_new_filter_obj
    - gf_js_lock
    - JS_GetPropertyStr
    - js_dump_error
    - JS_NewInt32
    - js_std_loop
    linkageType: ''
    returnType: Bool
    signature: Bool jsff_on_setup_error(GF_Filter *src_f, void *on_setup_error_udta,
      GF_Err e)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: jsf_custom_filter_opaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1489,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1491,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1493,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1494,1
    - Dst: gf_filter_set_setup_failure_callback
      Src: /src/gpac/src/filter_core/filter_session_js.c:1496,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1498
      start: 1487
    functionDepth: 2
    functionLinenumber: 1487
    functionLinenumberEnd: 1498
    functionName: jsff_watch_setup_failure
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - jsf_custom_filter_opaque
    - gf_filter_set_setup_failure_callback
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_watch_setup_failure(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1513,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1515,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1517,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1517,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1518,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filter_core/filter_session_js.c:1519,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1520,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1521,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1522,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1523,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session_js.c:1523,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1524,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1525,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1527,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session_js.c:1530,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1531,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session_js.c:1532,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1533,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session_js.c:1534,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session_js.c:1536,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session_js.c:1538,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1540,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1541,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/filter_core/filter_session_js.c:1542,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter_session_js.c:1544,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:1546,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1549,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_session_js.c:1549,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1550,1
    - Dst: gf_filter_pid_compute_link
      Src: /src/gpac/src/filter_core/filter_session_js.c:1555,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filter_core/filter_session_js.c:1557,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:1558,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session_js.c:1561,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:1565,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1566,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1567,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1567,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filter_core/filter_session_js.c:1568,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1569,1
    - Dst: jsfs_get_filter_args
      Src: /src/gpac/src/filter_core/filter_session_js.c:1572,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1574,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1574,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session_js.c:1577,1
    - Dst: del_meta_fs
      Src: /src/gpac/src/filter_core/filter_session_js.c:1579,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_session_js.c:1583,1
    - Dst: GF_Filter*::freg::finalize
      Src: /src/gpac/src/filter_core/filter_session_js.c:1585,1
    - Dst: gf_filter_del
      Src: /src/gpac/src/filter_core/filter_session_js.c:1587,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1588,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 66
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1590
      start: 1503
    functionDepth: 6
    functionLinenumber: 1503
    functionLinenumberEnd: 1590
    functionName: jsff_compute_link
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fs_lock_filters
    - gf_filter_pid_compute_link
    - del_meta_fs
    - gf_list_count
    - JS_NewArray
    - JS_FreeCString
    - JS_ToCString
    - gf_strdup
    - gf_list_get
    - JS_GetOpaque
    - JS_SetPropertyUint32
    - sprintf
    - JS_NewString
    - JS_ToBool
    - strncmp
    - jsfs_get_filter_args
    - gf_dynstrcat
    - GF_Filter*::freg::finalize
    - gf_fs_load_filter
    - gf_filter_del
    - js_throw_err_msg
    - strstr
    - JS_ToInt32
    - gf_list_del_item
    - gf_error_to_string
    - strlen
    - gf_list_del
    - gf_fs_load_destination
    - gf_filter_get_opid
    - JS_NewObject
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_compute_link(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1594,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1595,1
    - Dst: gf_filter_require_source_id
      Src: /src/gpac/src/filter_core/filter_session_js.c:1596,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1598
      start: 1592
    functionDepth: 1
    functionLinenumber: 1592
    functionLinenumberEnd: 1598
    functionName: jsff_require_source_id
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - GF_JS_EXCEPTION
    - gf_filter_require_source_id
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_require_source_id(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1601,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1603,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:1604,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filter_core/filter_session_js.c:1604,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1605,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1607,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1609,1
    - Dst: dashdmx_bind_js
      Src: /src/gpac/src/filter_core/filter_session_js.c:1612,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1614,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1617,1
    - Dst: httpout_bind_js
      Src: /src/gpac/src/filter_core/filter_session_js.c:1620,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1622,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1626,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1627
      start: 1599
    functionDepth: 6
    functionLinenumber: 1599
    functionLinenumberEnd: 1627
    functionName: jsff_bind
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_IsNull
    - dashdmx_bind_js
    - JS_GetOpaque
    - js_throw_err_msg
    - strcmp
    - GF_JS_EXCEPTION
    - JS_IsObject
    - httpout_bind_js
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_bind(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1633,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1636,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1638,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1639,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filter_core/filter_session_js.c:1642,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filter_core/filter_session_js.c:1643,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1645,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1648,1
    - Dst: gf_filter_pid_get_statistics
      Src: /src/gpac/src/filter_core/filter_session_js.c:1651,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:1652,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filter_core/filter_session_js.c:1653,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1655,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1662,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1663,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1664,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1665,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1666,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1667,1
    - Dst: SET_U64
      Src: /src/gpac/src/filter_core/filter_session_js.c:1668,1
    - Dst: SET_U64
      Src: /src/gpac/src/filter_core/filter_session_js.c:1669,1
    - Dst: SET_U64
      Src: /src/gpac/src/filter_core/filter_session_js.c:1670,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1671,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1672,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1673,1
    - Dst: SET_U64
      Src: /src/gpac/src/filter_core/filter_session_js.c:1674,1
    - Dst: SET_U64
      Src: /src/gpac/src/filter_core/filter_session_js.c:1675,1
    - Dst: SET_U64
      Src: /src/gpac/src/filter_core/filter_session_js.c:1676,1
    - Dst: SET_U64
      Src: /src/gpac/src/filter_core/filter_session_js.c:1677,1
    - Dst: SET_U64
      Src: /src/gpac/src/filter_core/filter_session_js.c:1678,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1679,1
    - Dst: SET_U64
      Src: /src/gpac/src/filter_core/filter_session_js.c:1680,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1681,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1682,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1683,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 40
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - is_input
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1685
      start: 1629
    functionDepth: 1
    functionLinenumber: 1629
    functionLinenumberEnd: 1685
    functionName: jsff_get_stats
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_IsException
    - SET_U64
    - gf_filter_get_opid
    - gf_filter_get_ipid
    - JS_ToInt32
    - SET_U32
    - JS_SetPropertyStr
    - JS_NewObject
    - GF_JS_EXCEPTION
    - gf_filter_pid_get_statistics
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_get_stats(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv, Bool is_input)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1658
      start: 1656
    functionDepth: 0
    functionLinenumber: 1656
    functionLinenumberEnd: 1658
    functionName: SET_U32
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_U32(_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1661
      start: 1659
    functionDepth: 0
    functionLinenumber: 1659
    functionLinenumberEnd: 1661
    functionName: SET_U64
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SET_U64(_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_stats
      Src: /src/gpac/src/filter_core/filter_session_js.c:1689,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1690
      start: 1687
    functionDepth: 2
    functionLinenumber: 1687
    functionLinenumberEnd: 1690
    functionName: jsff_ipid_stats
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - jsff_get_stats
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_ipid_stats(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_stats
      Src: /src/gpac/src/filter_core/filter_session_js.c:1694,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1695
      start: 1692
    functionDepth: 2
    functionLinenumber: 1692
    functionLinenumberEnd: 1695
    functionName: jsff_opid_stats
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - jsff_get_stats
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsff_opid_stats(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - name
    - ','
    - fgetter
    - ','
    - fsetter
    - ','
    - magic
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1698
      start: 1697
    functionDepth: 0
    functionLinenumber: 1697
    functionLinenumberEnd: 1698
    functionName: JS_CGETSET_MAGIC_DEF_ENUM
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JS_CGETSET_MAGIC_DEF_ENUM(name, fgetter, fsetter, magic)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filter_core/filter_session_js.c:1752,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filter_core/filter_session_js.c:1753,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/filter_core/filter_session_js.c:1754,1
    - Dst: countof
      Src: /src/gpac/src/filter_core/filter_session_js.c:1754,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1755,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:1757,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - f
    argTypes:
    - JSContext*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1758
      start: 1750
    functionDepth: 1
    functionLinenumber: 1750
    functionLinenumberEnd: 1758
    functionName: jsfs_new_filter_obj
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 5
    functionsReached:
    - JS_NewObjectClass
    - JS_DupValue
    - JS_SetPropertyFunctionList
    - JS_SetOpaque
    - countof
    - JS_IsUndefined
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_new_filter_obj(JSContext *ctx, GF_Filter *f)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_session
      Src: /src/gpac/src/filter_core/filter_session_js.c:1764,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1765,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1767,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1768,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1771,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:1772,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session_js.c:1774,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1775,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1778,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1780,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1782,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1783,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session_js.c:1785,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1787,1
    - Dst: jsfs_new_filter_obj
      Src: /src/gpac/src/filter_core/filter_session_js.c:1789,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1790
      start: 1760
    functionDepth: 2
    functionLinenumber: 1760
    functionLinenumberEnd: 1790
    functionName: jsfs_get_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_IsString
    - gf_list_get
    - gf_fs_lock_filters
    - gf_list_count
    - jsfs_new_filter_obj
    - strcmp
    - JS_ToInt32
    - GF_JS_EXCEPTION
    - jsff_get_session
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_get_filter(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_session
      Src: /src/gpac/src/filter_core/filter_session_js.c:1801,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1803,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1805,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1806,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1810,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1812,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1814,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1819,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1823,1
    - Dst: jsf_get_script_filename
      Src: /src/gpac/src/filter_core/filter_session_js.c:1825,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1826,1
    - Dst: gf_fs_load_source
      Src: /src/gpac/src/filter_core/filter_session_js.c:1827,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1829,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/filter_core/filter_session_js.c:1830,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter_session_js.c:1832,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1836,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_session_js.c:1836,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1837,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1838,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1839,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1842,1
    - Dst: gf_filter_set_source_restricted
      Src: /src/gpac/src/filter_core/filter_session_js.c:1845,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filter_core/filter_session_js.c:1847,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1850,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1851,1
    - Dst: jsfs_new_filter_obj
      Src: /src/gpac/src/filter_core/filter_session_js.c:1853,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 47
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1855
      start: 1793
    functionDepth: 2
    functionLinenumber: 1793
    functionLinenumberEnd: 1855
    functionName: jsfs_add_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - gf_fs_load_destination
    - gf_filter_set_source
    - gf_fs_lock_filters
    - gf_fs_load_filter
    - JS_GetOpaque
    - js_throw_err_msg
    - JS_ToBool
    - gf_filter_set_source_restricted
    - strncmp
    - jsfs_new_filter_obj
    - gf_error_to_string
    - GF_JS_EXCEPTION
    - gf_fs_load_source
    - jsf_get_script_filename
    - jsff_get_session
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_add_filter(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_session
      Src: /src/gpac/src/filter_core/filter_session_js.c:1864,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1867,1
    - Dst: jsf_get_event
      Src: /src/gpac/src/filter_core/filter_session_js.c:1869,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1870,1
    - Dst: jsff_get_filter
      Src: /src/gpac/src/filter_core/filter_session_js.c:1873,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1874,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1875,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/filter_core/filter_session_js.c:1878,1
    - Dst: gf_fs_fire_event
      Src: /src/gpac/src/filter_core/filter_session_js.c:1881,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1883,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1884
      start: 1857
    functionDepth: 2
    functionLinenumber: 1857
    functionLinenumberEnd: 1884
    functionName: jsfs_fire_event
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_filter_send_event
    - gf_fs_fire_event
    - JS_ToBool
    - jsf_get_event
    - JS_NewBool
    - GF_JS_EXCEPTION
    - jsff_get_filter
    - jsff_get_session
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_fire_event(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_session
      Src: /src/gpac/src/filter_core/filter_session_js.c:1889,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1891,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1892,1
    - Dst: gf_fs_enable_reporting
      Src: /src/gpac/src/filter_core/filter_session_js.c:1893,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1895
      start: 1886
    functionDepth: 2
    functionLinenumber: 1886
    functionLinenumberEnd: 1895
    functionName: jsfs_reporting
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_fs_enable_reporting
    - jsff_get_session
    - JS_ToBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_reporting(JSContext *ctx, JSValueConst this_val, int argc,
      JSValueConst *argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_session
      Src: /src/gpac/src/filter_core/filter_session_js.c:1905,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1906,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1908,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1910,1
    - Dst: gf_fs_new_filter
      Src: /src/gpac/src/filter_core/filter_session_js.c:1914,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1915,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filter_core/filter_session_js.c:1916,1
    - Dst: jsfilter_initialize_custom
      Src: /src/gpac/src/filter_core/filter_session_js.c:1918,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filter_core/filter_session_js.c:1919,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filter_core/filter_session_js.c:1919,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1921,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/filter_core/filter_session_js.c:1921,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1923
      start: 1899
    functionDepth: 8
    functionLinenumber: 1899
    functionLinenumberEnd: 1923
    functionName: jsfs_new_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - jsfilter_initialize_custom
    - js_throw_err
    - JS_IsNull
    - JS_IsException
    - JS_ToInt32
    - JS_NewCFunction
    - GF_JS_EXCEPTION
    - JS_SetPropertyStr
    - jsff_get_session
    - JS_FreeCString
    - gf_fs_new_filter
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_new_filter(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_session
      Src: /src/gpac/src/filter_core/filter_session_js.c:1929,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1930,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:1931,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1931,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1933,1
    - Dst: jsf_custom_filter_opaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1935,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1938,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1941,1
    - Dst: jsf_custom_filter_opaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1943,1
    - Dst: gf_filter_remove_src
      Src: /src/gpac/src/filter_core/filter_session_js.c:1946,1
    - Dst: gf_filter_remove
      Src: /src/gpac/src/filter_core/filter_session_js.c:1948,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1950
      start: 1925
    functionDepth: 2
    functionLinenumber: 1925
    functionLinenumberEnd: 1950
    functionName: jsfs_remove_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - gf_filter_remove
    - gf_filter_remove_src
    - GF_JS_EXCEPTION
    - JS_IsObject
    - jsf_custom_filter_opaque
    - jsff_get_session
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_remove_filter(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session_js.c:1989,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:1990,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session_js.c:1994,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filter_core/filter_session_js.c:1995,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1996,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:1997,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session_js.c:2001,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - c
    - fs
    argTypes:
    - JSContext*
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2002
      start: 1986
    functionDepth: 1
    functionLinenumber: 1986
    functionLinenumberEnd: 2002
    functionName: gf_fs_unload_js_api
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - JS_FreeValue
    - JS_SetOpaque
    - JS_IsUndefined
    - gf_list_count
    - gf_mx_v
    linkageType: ''
    returnType: void
    signature: void gf_fs_unload_js_api(JSContext *c, GF_FilterSession *fs)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session_js.c:2009,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:2011,1
    - Dst: gf_fs_new_defaults
      Src: /src/gpac/src/filter_core/filter_session_js.c:2014,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:2015,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2020,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filter_core/filter_session_js.c:2021,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:2022,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2023,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2025,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filter_core/filter_session_js.c:2026,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:2027,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2028,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2030,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filter_core/filter_session_js.c:2031,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:2032,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2033,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2035,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filter_core/filter_session_js.c:2036,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:2037,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2038,1
    - Dst: gf_fs_new
      Src: /src/gpac/src/filter_core/filter_session_js.c:2040,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:2041,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:2043,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filter_core/filter_session_js.c:2047,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filter_core/filter_session_js.c:2048,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/filter_core/filter_session_js.c:2049,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:2050,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:2054,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 37
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2056
      start: 2005
    functionDepth: 1
    functionLinenumber: 2005
    functionLinenumberEnd: 2056
    functionName: session_constructor
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_IsObject
    - JS_ToCString
    - JS_IsString
    - JS_NewObjectClass
    - gf_free
    - GF_SAFEALLOC
    - JS_IsException
    - JS_FreeValue
    - JS_SetOpaque
    - JS_IsUndefined
    - gf_fs_del
    - JS_ToInt32
    - JS_GetPropertyStr
    - GF_JS_EXCEPTION
    - gf_fs_new_defaults
    - gf_fs_new
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue session_constructor(JSContext *ctx, JSValueConst new_target,
      int argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/filter_core/filter_session_js.c:2067,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:2068,1
    - Dst: js_load_constants
      Src: /src/gpac/src/filter_core/filter_session_js.c:2070,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filter_core/filter_session_js.c:2075,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filter_core/filter_session_js.c:2076,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filter_core/filter_session_js.c:2077,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session_js.c:2080,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session_js.c:2084,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/filter_core/filter_session_js.c:2091,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/filter_core/filter_session_js.c:2092,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/filter_core/filter_session_js.c:2094,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/filter_core/filter_session_js.c:2095,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/filter_core/filter_session_js.c:2097,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/filter_core/filter_session_js.c:2098,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filter_core/filter_session_js.c:2100,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/filter_core/filter_session_js.c:2101,1
    - Dst: countof
      Src: /src/gpac/src/filter_core/filter_session_js.c:2101,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/filter_core/filter_session_js.c:2102,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filter_core/filter_session_js.c:2104,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/filter_core/filter_session_js.c:2105,1
    - Dst: countof
      Src: /src/gpac/src/filter_core/filter_session_js.c:2105,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:2107,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2108,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filter_core/filter_session_js.c:2111,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/filter_core/filter_session_js.c:2112,1
    - Dst: countof
      Src: /src/gpac/src/filter_core/filter_session_js.c:2112,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/filter_core/filter_session_js.c:2113,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/filter_core/filter_session_js.c:2114,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2115,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2119,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 40
    argCount: 2
    argNames:
    - c
    - fs
    argTypes:
    - JSContext*
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2121
      start: 2057
    functionDepth: 2
    functionLinenumber: 2057
    functionLinenumberEnd: 2121
    functionName: gf_fs_load_js_api
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 2
    functionsReached:
    - JS_GetGlobalObject
    - gf_list_new
    - JS_NewClass
    - JS_NewObjectClass
    - JS_SetPropertyFunctionList
    - JS_NewCFunction2
    - GF_SAFEALLOC
    - DEF_CONST
    - JS_FreeValue
    - JS_SetOpaque
    - countof
    - JS_SetClassProto
    - JS_NewClassID
    - JS_SetPropertyStr
    - js_load_constants
    - JS_GetRuntime
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_fs_load_js_api(JSContext *c, GF_FilterSession *fs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2074
      start: 2072
    functionDepth: 0
    functionLinenumber: 2072
    functionLinenumberEnd: 2074
    functionName: DEF_CONST
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEF_CONST( _val )
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:2143,1
    - Dst: gf_opts_default_shared_directory
      Src: /src/gpac/src/filter_core/filter_session_js.c:2144,1
    - Dst: strcat
      Src: /src/gpac/src/filter_core/filter_session_js.c:2145,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filter_core/filter_session_js.c:2146,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filter_core/filter_session_js.c:2151,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session_js.c:2156,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_session_js.c:2156,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:2168,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2169,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:2169,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filter_core/filter_session_js.c:2169,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2170,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:2170,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2171,1
    - Dst: gf_js_create_context
      Src: /src/gpac/src/filter_core/filter_session_js.c:2173,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session_js.c:2175,1
    - Dst: JS_SetContextOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:2178,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:2180,1
    - Dst: gf_fs_load_js_api
      Src: /src/gpac/src/filter_core/filter_session_js.c:2181,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2184,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:2184,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filter_core/filter_session_js.c:2184,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2185,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:2185,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2186,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_session_js.c:2189,1
    - Dst: JS_DetectModule
      Src: /src/gpac/src/filter_core/filter_session_js.c:2189,1
    - Dst: qjs_init_all_modules
      Src: /src/gpac/src/filter_core/filter_session_js.c:2191,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:2195,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2196,1
    - Dst: jsfs_new_filter_obj
      Src: /src/gpac/src/filter_core/filter_session_js.c:2196,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2197,1
    - Dst: JS_Eval
      Src: /src/gpac/src/filter_core/filter_session_js.c:2199,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:2200,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filter_core/filter_session_js.c:2202,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session_js.c:2203,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filter_core/filter_session_js.c:2204,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2205,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2208,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filter_core/filter_session_js.c:2209,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 64
    argCount: 4
    argNames:
    - fs
    - jsfile
    - in_ctx
    - for_filter
    argTypes:
    - GF_FilterSession*
    - char*
    - JSContext*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2212
      start: 2123
    functionDepth: 6
    functionLinenumber: 2123
    functionLinenumberEnd: 2212
    functionName: gf_fs_load_script_ex
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_GetGlobalObject
    - gf_fs_load_js_api
    - gf_file_basename
    - js_std_loop
    - strcat
    - JS_DetectModule
    - JS_NewString
    - strncmp
    - qjs_init_all_modules
    - jsfs_new_filter_obj
    - js_dump_error
    - JS_SetContextOpaque
    - gf_js_create_context
    - GF_LOG
    - gf_error_to_string
    - JS_Eval
    - JS_IsException
    - JS_FreeValue
    - gf_opts_default_shared_directory
    - JS_SetPropertyStr
    - gf_opts_get_bool
    - gf_file_load_data
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_fs_load_script_ex(GF_FilterSession *fs, const char *jsfile,
      JSContext *in_ctx, GF_Filter *for_filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_load_script_ex
      Src: /src/gpac/src/filter_core/filter_session_js.c:2217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - fs
    - jsfile
    argTypes:
    - GF_FilterSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2218
      start: 2214
    functionDepth: 7
    functionLinenumber: 2214
    functionLinenumberEnd: 2218
    functionName: gf_fs_load_script
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_fs_load_script_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_load_script(GF_FilterSession *fs, const char *jsfile)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:2222,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session_js.c:2224,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:2228,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2229,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2230,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:2231,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:2233,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_session_js.c:2234,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:2241,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:2242,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2243,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:2245,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:2246,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:2247,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2248,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2249,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2250,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:2251,1
    - Dst: gf_js_delete_context
      Src: /src/gpac/src/filter_core/filter_session_js.c:2254,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:2257,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session_js.c:2258,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 2
    argNames:
    - fs
    - js_ctx
    argTypes:
    - GF_FilterSession*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2261
      start: 2220
    functionDepth: 4
    functionLinenumber: 2220
    functionLinenumberEnd: 2261
    functionName: gf_fs_unload_script
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 2
    functionsReached:
    - gf_free
    - JS_GetGlobalObject
    - gf_list_get
    - JS_GetOpaque
    - JS_FreeValue
    - JS_SetOpaque
    - gf_list_del
    - gf_list_count
    - gf_js_lock
    - JS_GetPropertyStr
    - JS_SetPropertyStr
    - gf_list_rem
    - gf_js_delete_context
    linkageType: ''
    returnType: void
    signature: void gf_fs_unload_script(GF_FilterSession *fs, void *js_ctx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session_js.c:2267,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:2269,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session_js.c:2271,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2272,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:2274,1
    - Dst: gf_filter_get_arg
      Src: /src/gpac/src/filter_core/filter_session_js.c:2276,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session_js.c:2280,1
    - Dst: gf_fs_load_script_ex
      Src: /src/gpac/src/filter_core/filter_session_js.c:2284,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session_js.c:2285,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 3
    argNames:
    - filter
    - js_file
    - filters_blacklist
    argTypes:
    - GF_Filter*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2286
      start: 2262
    functionDepth: 7
    functionLinenumber: 2262
    functionLinenumberEnd: 2286
    functionName: gf_filter_load_script
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_fs_load_script_ex
    - gf_filter_get_arg
    - strstr
    - gf_list_count
    - strcmp
    - gf_mx_v
    linkageType: ''
    returnType: void
    signature: void gf_filter_load_script(GF_Filter *filter, const char *js_file,
      const char *filters_blacklist)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_DupValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2292,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:2305,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2306,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2307,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 3
    argNames:
    - ctx
    - udta
    - tag_type
    argTypes:
    - JSContext*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2312
      start: 2288
    functionDepth: 1
    functionLinenumber: 2288
    functionLinenumberEnd: 2312
    functionName: gf_fs_get_script_data
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 1
    functionsReached:
    - JS_FreeValue
    - JS_GetGlobalObject
    - JS_DupValue
    - JS_GetPropertyStr
    linkageType: ''
    returnType: JSValue
    signature: JSValue gf_fs_get_script_data(JSContext *ctx, void *udta, u32 tag_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - fs
    - jsfile
    argTypes:
    - GF_FilterSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2319
      start: 2315
    functionDepth: 0
    functionLinenumber: 2315
    functionLinenumberEnd: 2319
    functionName: gf_fs_load_script
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_load_script(GF_FilterSession *fs, const char *jsfile)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - fs
    - js_ctx
    argTypes:
    - GF_FilterSession*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2323
      start: 2320
    functionDepth: 0
    functionLinenumber: 2320
    functionLinenumberEnd: 2323
    functionName: gf_fs_unload_script
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_fs_unload_script(GF_FilterSession *fs, void *js_ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - filter
    - js_file
    - filters_blacklist
    argTypes:
    - GF_Filter*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2327
      start: 2324
    functionDepth: 0
    functionLinenumber: 2324
    functionLinenumberEnd: 2327
    functionName: gf_filter_load_script
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_filter_load_script(GF_Filter *filter, const char *js_file,
      const char *filters_blacklist)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _ptr
    - ','
    - _comparand
    - ','
    - _replacement
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 32
    functionName: atomic_compare_and_swap
    functionSourceFile: /src/gpac/src/filter_core/filter_queue.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: atomic_compare_and_swap(_ptr, _comparand, _replacement)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _ptr
    - ','
    - _comparand
    - ','
    - _replacement
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 34
    functionName: atomic_compare_and_swap
    functionSourceFile: /src/gpac/src/filter_core/filter_queue.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: atomic_compare_and_swap(_ptr, _comparand, _replacement)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - _ptr
    - ','
    - _comparand
    - ','
    - _replacement
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: atomic_compare_and_swap
    functionSourceFile: /src/gpac/src/filter_core/filter_queue.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: atomic_compare_and_swap(_ptr, _comparand, _replacement)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_queue.c:68,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_queue.c:72,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_queue.c:77,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_queue.c:79,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_queue.c:85,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_queue.c:87,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_queue.c:88,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 1
    argNames:
    - mx
    argTypes:
    - GF_Mutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 65
    functionDepth: 6
    functionLinenumber: 65
    functionLinenumberEnd: 93
    functionName: gf_fq_new
    functionSourceFile: /src/gpac/src/filter_core/filter_queue.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_opts_get_bool
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_FilterQueue
    signature: GF_FilterQueue *gf_fq_new(const GF_Mutex *mx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: item_delete
      Src: /src/gpac/src/filter_core/filter_queue.c:105,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_queue.c:106,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_queue.c:113,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_queue.c:115,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - q
    argTypes:
    - GF_FilterQueue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 116
    functionName: gf_fq_del
    functionSourceFile: /src/gpac/src/filter_core/filter_queue.c
    functionUses: 0
    functionsReached:
    - gf_free
    - item_delete
    linkageType: ''
    returnType: void
    signature: void gf_fq_del(GF_FilterQueue *q, void (*item_delete)(void *) )
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: atomic_compare_and_swap
      Src: /src/gpac/src/filter_core/filter_queue.c:128,1
    - Dst: atomic_compare_and_swap
      Src: /src/gpac/src/filter_core/filter_queue.c:133,1
    - Dst: atomic_compare_and_swap
      Src: /src/gpac/src/filter_core/filter_queue.c:137,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - it
    - tail_ptr
    argTypes:
    - GF_LFQItem*
    - GF_LFQItem**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 138
    functionName: gf_fq_lockfree_enqueue
    functionSourceFile: /src/gpac/src/filter_core/filter_queue.c
    functionUses: 0
    functionsReached:
    - atomic_compare_and_swap
    linkageType: ''
    returnType: void
    signature: void gf_fq_lockfree_enqueue(GF_LFQItem *it, GF_LFQItem **tail_ptr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: atomic_compare_and_swap
      Src: /src/gpac/src/filter_core/filter_queue.c:161,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_queue.c:163,1
    - Dst: atomic_compare_and_swap
      Src: /src/gpac/src/filter_core/filter_queue.c:166,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 3
    argNames:
    - head_ptr
    - tail_ptr
    - prev_head
    argTypes:
    - GF_LFQItem**
    - GF_LFQItem**
    - GF_LFQItem**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 173
    functionName: gf_fq_lockfree_dequeue
    functionSourceFile: /src/gpac/src/filter_core/filter_queue.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - atomic_compare_and_swap
    linkageType: ''
    returnType: void
    signature: void *gf_fq_lockfree_dequeue(GF_LFQItem **head_ptr, GF_LFQItem **tail_ptr,
      GF_LFQItem **prev_head)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_queue.c:178,1
    - Dst: gf_fq_lockfree_dequeue
      Src: /src/gpac/src/filter_core/filter_queue.c:180,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_queue.c:182,1
    - Dst: gf_fq_lockfree_enqueue
      Src: /src/gpac/src/filter_core/filter_queue.c:188,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_queue.c:189,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - q
    - item
    argTypes:
    - GF_FilterQueue*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 175
    functionDepth: 2
    functionLinenumber: 175
    functionLinenumberEnd: 190
    functionName: gf_lfq_add
    functionSourceFile: /src/gpac/src/filter_core/filter_queue.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - GF_SAFEALLOC
    - gf_fq_lockfree_enqueue
    - safe_int_inc
    - gf_fq_lockfree_dequeue
    linkageType: ''
    returnType: void
    signature: void gf_lfq_add(GF_FilterQueue *q, void *item)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fq_lockfree_dequeue
      Src: /src/gpac/src/filter_core/filter_queue.c:197,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_queue.c:199,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_queue.c:200,1
    - Dst: gf_fq_lockfree_enqueue
      Src: /src/gpac/src/filter_core/filter_queue.c:204,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - q
    argTypes:
    - GF_FilterQueue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 192
    functionDepth: 2
    functionLinenumber: 192
    functionLinenumberEnd: 207
    functionName: gf_lfq_pop
    functionSourceFile: /src/gpac/src/filter_core/filter_queue.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_assert
    - gf_fq_lockfree_dequeue
    - gf_fq_lockfree_enqueue
    linkageType: ''
    returnType: void
    signature: void *gf_lfq_pop(GF_FilterQueue *q)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - q
    argTypes:
    - GF_FilterQueue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionName: gf_fq_count
    functionSourceFile: /src/gpac/src/filter_core/filter_queue.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_fq_count(GF_FilterQueue *q)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_queue.c:218,1
    - Dst: gf_lfq_add
      Src: /src/gpac/src/filter_core/filter_queue.c:221,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_queue.c:223,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_queue.c:230,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_queue.c:243,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 2
    argNames:
    - fq
    - item
    argTypes:
    - GF_FilterQueue*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 215
    functionDepth: 3
    functionLinenumber: 215
    functionLinenumberEnd: 245
    functionName: gf_fq_add
    functionSourceFile: /src/gpac/src/filter_core/filter_queue.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_assert
    - GF_SAFEALLOC
    - gf_lfq_add
    - gf_mx_v
    linkageType: ''
    returnType: void
    signature: void gf_fq_add(GF_FilterQueue *fq, void *item)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_lfq_pop
      Src: /src/gpac/src/filter_core/filter_queue.c:255,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_queue.c:258,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_queue.c:273,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_queue.c:279,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 1
    argNames:
    - fq
    argTypes:
    - GF_FilterQueue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 247
    functionDepth: 3
    functionLinenumber: 247
    functionLinenumberEnd: 281
    functionName: gf_fq_pop
    functionSourceFile: /src/gpac/src/filter_core/filter_queue.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_assert
    - gf_mx_v
    - gf_lfq_pop
    linkageType: ''
    returnType: void
    signature: void *gf_fq_pop(GF_FilterQueue *fq)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_queue.c:290,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_queue.c:292,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - fq
    argTypes:
    - GF_FilterQueue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 297
    functionName: gf_fq_head
    functionSourceFile: /src/gpac/src/filter_core/filter_queue.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    linkageType: ''
    returnType: void
    signature: void *gf_fq_head(GF_FilterQueue *fq)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_queue.c:304,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_queue.c:307,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_queue.c:316,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 2
    argNames:
    - fq
    - idx
    argTypes:
    - GF_FilterQueue*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 300
    functionDepth: 1
    functionLinenumber: 300
    functionLinenumberEnd: 328
    functionName: gf_fq_get
    functionSourceFile: /src/gpac/src/filter_core/filter_queue.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_assert
    - gf_mx_v
    linkageType: ''
    returnType: void
    signature: void *gf_fq_get(GF_FilterQueue *fq, u32 idx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_queue.c:334,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_queue.c:337,1
    - Dst: enum_func
      Src: /src/gpac/src/filter_core/filter_queue.c:341,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_queue.c:344,1
    - Dst: enum_func
      Src: /src/gpac/src/filter_core/filter_queue.c:348,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - fq
    - udta
    argTypes:
    - GF_FilterQueue*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 330
    functionDepth: 1
    functionLinenumber: 330
    functionLinenumberEnd: 352
    functionName: gf_fq_enum
    functionSourceFile: /src/gpac/src/filter_core/filter_queue.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_assert
    - gf_mx_v
    - enum_func
    linkageType: ''
    returnType: void
    signature: void gf_fq_enum(GF_FilterQueue *fq, void (*enum_func)(void *udta1,
      void *item), void *udta)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_queue.c:360,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - fq
    - item
    argTypes:
    - GF_FilterQueue*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 354
    functionDepth: 4
    functionLinenumber: 354
    functionLinenumberEnd: 362
    functionName: gf_fq_res_add
    functionSourceFile: /src/gpac/src/filter_core/filter_queue.c
    functionUses: 0
    functionsReached:
    - gf_fq_add
    linkageType: ''
    returnType: Bool
    signature: Bool gf_fq_res_add(GF_FilterQueue *fq, void *item)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:47,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:47,1
    - Dst: gf_sema_notify
      Src: /src/gpac/src/filter_core/filter_session.c:48,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:49,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:57,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:58,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:63,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:63,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:69,1
    - Dst: gf_sema_wait_for
      Src: /src/gpac/src/filter_core/filter_session.c:70,1
    - Dst: gf_sema_wait
      Src: /src/gpac/src/filter_core/filter_session.c:73,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:79,1
    - Dst: gf_sema_wait_for
      Src: /src/gpac/src/filter_core/filter_session.c:80,1
    - Dst: gf_sema_wait
      Src: /src/gpac/src/filter_core/filter_session.c:83,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 37
    argCount: 3
    argNames:
    - fsess
    - notify
    - main
    argTypes:
    - GF_FilterSession*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 90
    functionName: gf_fs_sema_io
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_sema_wait_for
    - gf_th_id
    - gf_fs_sema_io
    - gf_sema_wait
    - GF_LOG
    - gf_sema_notify
    - gf_fq_count
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gf_fs_sema_io(GF_FilterSession *fsess, Bool notify, Bool main)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: GF_FilterRegister*::register_free
      Src: /src/gpac/src/filter_core/filter_session.c:98,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:103,1
    - Dst: GF_FilterRegister*::register_free
      Src: /src/gpac/src/filter_core/filter_session.c:104,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:108,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:109,1
    - Dst: GF_FilterRegister*::register_free
      Src: /src/gpac/src/filter_core/filter_session.c:110,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:113,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:114,1
    - Dst: GF_FilterRegister*::register_free
      Src: /src/gpac/src/filter_core/filter_session.c:115,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:120,1
    - Dst: GF_FilterRegister*::register_free
      Src: /src/gpac/src/filter_core/filter_session.c:121,1
    - Dst: gf_filter_has_in_caps
      Src: /src/gpac/src/filter_core/filter_session.c:130,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:132,1
    - Dst: GF_FilterRegister*::register_free
      Src: /src/gpac/src/filter_core/filter_session.c:133,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:137,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:138,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:139,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:141,1
    - Dst: gf_filter_sess_build_graph
      Src: /src/gpac/src/filter_core/filter_session.c:142,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 44
    argCount: 2
    argNames:
    - fsess
    - freg
    argTypes:
    - GF_FilterSession*
    - GF_FilterRegister*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 144
    functionName: gf_fs_add_filter_register
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_filter_sess_build_graph
    - GF_LOG
    - gf_list_count
    - gf_mx_v
    - gf_list_add
    - GF_FilterRegister*::register_free
    - strchr
    - gf_filter_has_in_caps
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_add_filter_register(GF_FilterSession *fsess, const
      GF_FilterRegister *freg)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_abort
      Src: /src/gpac/src/filter_core/filter_session.c:150,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:155,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_session.c:155,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:157,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_session.c:157,1
    - Dst: jsfs_on_event
      Src: /src/gpac/src/filter_core/filter_session.c:163,1
    - Dst: jsfs_on_auth
      Src: /src/gpac/src/filter_core/filter_session.c:169,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filter_core/filter_session.c:174,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:180,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:181,1
    - Dst: gf_read_line_input
      Src: /src/gpac/src/filter_core/filter_session.c:182,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:184,1
    - Dst: gf_read_line_input
      Src: /src/gpac/src/filter_core/filter_session.c:185,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:187,1
    - Dst: GF_Event*::auth::on_usr_pass
      Src: /src/gpac/src/filter_core/filter_session.c:190,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 38
    argCount: 2
    argNames:
    - ptr
    - evt
    argTypes:
    - void*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 146
    functionDepth: 7
    functionLinenumber: 146
    functionLinenumberEnd: 197
    functionName: fs_default_event_proc
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - jsfs_on_auth
    - gf_read_line_input
    - GF_LOG
    - gf_sys_is_test_mode
    - GF_Event*::auth::on_usr_pass
    - gf_error_to_string
    - gf_fs_abort
    - fprintf
    - jsfs_on_event
    linkageType: ''
    returnType: Bool
    signature: Bool fs_default_event_proc(void *ptr, GF_Event *evt)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session.c:217,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:219,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_session.c:230,1
    - Dst: emscripten_is_main_runtime_thread
      Src: /src/gpac/src/filter_core/filter_session.c:235,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:237,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:241,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session.c:246,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/src/filter_core/filter_session.c:247,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:251,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filter_core/filter_session.c:261,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter_session.c:265,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter_session.c:268,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filter_core/filter_session.c:269,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter_session.c:276,1
    - Dst: gf_sema_new
      Src: /src/gpac/src/filter_core/filter_session.c:280,1
    - Dst: gf_sema_new
      Src: /src/gpac/src/filter_core/filter_session.c:282,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:292,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:294,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:302,1
    - Dst: gf_sema_del
      Src: /src/gpac/src/filter_core/filter_session.c:304,1
    - Dst: gf_sema_del
      Src: /src/gpac/src/filter_core/filter_session.c:306,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filter_core/filter_session.c:322,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter_session.c:326,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter_session.c:328,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter_session.c:329,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter_session.c:330,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter_session.c:332,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:336,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/filter_core/filter_session.c:338,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filter_core/filter_session.c:343,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filter_core/filter_session.c:344,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session.c:351,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:353,1
    - Dst: gf_th_new
      Src: /src/gpac/src/filter_core/filter_session.c:354,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:356,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:360,1
    - Dst: gf_fs_set_separators
      Src: /src/gpac/src/filter_core/filter_session.c:364,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:366,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:369,1
    - Dst: gf_fs_reg_all
      Src: /src/gpac/src/filter_core/filter_session.c:374,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filter_core/filter_session.c:381,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter_session.c:384,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:386,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:389,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/filter_core/filter_session.c:396,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/filter_core/filter_session.c:397,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/filter_core/filter_session.c:398,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:400,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_session.c:401,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filter_core/filter_session.c:405,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:406,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:409,1
    - Dst: gf_filter_sess_build_graph
      Src: /src/gpac/src/filter_core/filter_session.c:413,1
    - Dst: gf_sys_has_filter_global_args
      Src: /src/gpac/src/filter_core/filter_session.c:418,1
    - Dst: gf_sys_has_filter_global_meta_args
      Src: /src/gpac/src/filter_core/filter_session.c:418,1
    - Dst: gf_sys_get_argc
      Src: /src/gpac/src/filter_core/filter_session.c:419,1
    - Dst: gf_sys_get_arg
      Src: /src/gpac/src/filter_core/filter_session.c:421,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:424,1
    - Dst: gf_fs_push_arg
      Src: /src/gpac/src/filter_core/filter_session.c:426,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:429,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:429,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filter_core/filter_session.c:430,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_session.c:437,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:440,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:443,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 161
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 208
    functionDepth: 7
    functionLinenumber: 208
    functionLinenumberEnd: 446
    functionName: GF_FilterSession *gf_fs_new(s32 nb_threads, GF_FilterSchedulerType
      sched_type, GF_FilterSessionFlags flags, const char *blacklist)
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_logs_thread_tag
    - gf_opts_set_key
    - GF_SAFEALLOC
    - gf_sys_has_filter_global_meta_args
    - memset
    - gf_opts_get_key
    - gf_sys_get_arg
    - gf_mx_new
    - strchr
    - gf_sys_get_rti
    - gf_filter_sess_build_graph
    - gf_list_new
    - gf_strdup
    - gf_fs_push_arg
    - gf_sys_has_filter_global_args
    - sprintf
    - gf_sema_del
    - gf_list_add
    - gf_fs_reg_all
    - GF_LOG
    - gf_th_new
    - strstr
    - gf_sema_new
    - gf_fs_del
    - gf_sys_get_argc
    - emscripten_is_main_runtime_thread
    - gf_opts_get_int
    - strcmp
    - gf_fs_set_separators
    - gf_opts_get_bool
    - gf_fq_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterSession *gf_fs_new(s32 nb_threads, GF_FilterSchedulerType
      sched_type, GF_FilterSessionFlags flags, const char *blacklist)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:452,1
    - Dst: gf_sys_get_argc
      Src: /src/gpac/src/filter_core/filter_session.c:464,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:465,1
    - Dst: gf_sys_is_arg_used
      Src: /src/gpac/src/filter_core/filter_session.c:467,1
    - Dst: gf_sys_get_arg
      Src: /src/gpac/src/filter_core/filter_session.c:468,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:469,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:469,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:476,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:478,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:481,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:482,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:486,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:488,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session.c:495,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:497,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:503,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 67
    argCount: 6
    argNames:
    - session
    - szArg
    - was_found
    - type
    - meta_filter
    - sub_opt_name
    argTypes:
    - GF_FilterSession*
    - char*
    - Bool
    - GF_FSArgItemType
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 450
    functionDepth: 1
    functionLinenumber: 450
    functionLinenumberEnd: 535
    functionName: gf_fs_push_arg
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - gf_list_get
    - gf_strdup
    - GF_SAFEALLOC
    - gf_list_count
    - gf_sys_is_arg_used
    - strncmp
    - strcmp
    - gf_list_add
    - gf_sys_get_arg
    - gf_sys_get_argc
    - strlen
    linkageType: ''
    returnType: void
    signature: void gf_fs_push_arg(GF_FilterSession *session, const char *szArg, Bool
      was_found, GF_FSArgItemType type, GF_Filter *meta_filter, const char *sub_opt_name)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/filter_core/filter_session.c:544,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter_session.c:545,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter_session.c:546,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:549,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:550,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:551,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:552,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:553,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:555,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_session.c:582,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_session.c:585,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_session.c:588,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_session.c:591,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_session.c:594,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_session.c:597,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_session.c:602,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_session.c:605,1
    - Dst: gf_fs_new
      Src: /src/gpac/src/filter_core/filter_session.c:609,1
    - Dst: gf_fs_set_max_resolution_chain_length
      Src: /src/gpac/src/filter_core/filter_session.c:612,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/filter_core/filter_session.c:612,1
    - Dst: gf_fs_set_max_sleep_time
      Src: /src/gpac/src/filter_core/filter_session.c:614,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/filter_core/filter_session.c:614,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter_session.c:616,1
    - Dst: gf_fs_set_separators
      Src: /src/gpac/src/filter_core/filter_session.c:618,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 59
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 621
      start: 538
    functionDepth: 6
    functionLinenumber: 538
    functionLinenumberEnd: 621
    functionName: GF_FilterSession *gf_fs_new_defaults(GF_FilterSessionFlags inflags)
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_opts_get_int
    - gf_fs_set_max_resolution_chain_length
    - strcmp
    - gf_opts_get_key
    - gf_fs_set_separators
    - gf_opts_get_bool
    - gf_fs_new
    - gf_fs_set_max_sleep_time
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterSession *gf_fs_new_defaults(GF_FilterSessionFlags
      inflags)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:628,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - session
    - separator_set
    argTypes:
    - GF_FilterSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 646
      start: 624
    functionDepth: 0
    functionLinenumber: 624
    functionLinenumberEnd: 646
    functionName: gf_fs_set_separators
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 2
    functionsReached:
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_set_separators(GF_FilterSession *session, const char
      *separator_set)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - session
    - max_chain_length
    argTypes:
    - GF_FilterSession*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 654
      start: 648
    functionDepth: 0
    functionLinenumber: 648
    functionLinenumberEnd: 654
    functionName: gf_fs_set_max_resolution_chain_length
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_set_max_resolution_chain_length(GF_FilterSession *session,
      u32 max_chain_length)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - session
    - max_sleep
    argTypes:
    - GF_FilterSession*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 662
      start: 656
    functionDepth: 0
    functionLinenumber: 656
    functionLinenumberEnd: 662
    functionName: gf_fs_set_max_sleep_time
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_set_max_sleep_time(GF_FilterSession *session, u32 max_sleep)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 669
      start: 664
    functionDepth: 0
    functionLinenumber: 664
    functionLinenumberEnd: 669
    functionName: gf_fs_get_max_resolution_chain_length
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_get_max_resolution_chain_length(GF_FilterSession *session)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:676,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_session.c:677,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:678,1
    - Dst: gf_filter_sess_reset_graph
      Src: /src/gpac/src/filter_core/filter_session.c:679,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - session
    - freg
    argTypes:
    - GF_FilterSession*
    - GF_FilterRegister*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 680
      start: 671
    functionDepth: 3
    functionLinenumber: 671
    functionLinenumberEnd: 680
    functionName: gf_fs_remove_filter_register
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_filter_sess_reset_graph
    - gf_mx_v
    - gf_list_del_item
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_remove_filter_register(GF_FilterSession *session, GF_FilterRegister
      *freg)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - fs
    - cbk_udta
    argTypes:
    - GF_FilterSession*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 693
      start: 682
    functionDepth: 0
    functionLinenumber: 682
    functionLinenumberEnd: 693
    functionName: gf_fs_set_ui_callback
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_set_ui_callback(GF_FilterSession *fs, Bool (*ui_event_proc)(void
      *opaque, GF_Event *event), void *cbk_udta)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:698,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:699,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - it
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 700
      start: 695
    functionDepth: 0
    functionLinenumber: 695
    functionLinenumberEnd: 700
    functionName: gf_propalloc_del
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_propalloc_del(void *it)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:707,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:710,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 18
    argCount: 6
    argNames:
    - fsess
    - idx
    - argname
    - argtype
    - meta_filter
    - meta_sub_opt
    argTypes:
    - GF_FilterSession*
    - u32*
    - char**
    - u32*
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 720
      start: 703
    functionDepth: 1
    functionLinenumber: 703
    functionLinenumberEnd: 720
    functionName: gf_fs_enum_unmapped_options
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_enum_unmapped_options(GF_FilterSession *fsess, u32
      *idx, const char **argname, u32 *argtype, const char **meta_filter, const char
      **meta_sub_opt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: task_canceled
      Src: /src/gpac/src/filter_core/filter_session.c:726,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:727,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - p
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 723
    functionDepth: 1
    functionLinenumber: 723
    functionLinenumberEnd: 728
    functionName: gf_task_del
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_free
    - task_canceled
    linkageType: ''
    returnType: void
    signature: void gf_task_del(void *p)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:733,1
    - Dst: gf_fs_stop
      Src: /src/gpac/src/filter_core/filter_session.c:735,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:736,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:739,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_session.c:740,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:741,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:742,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:744,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:748,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:750,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:754,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:759,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filter_core/filter_session.c:760,1
    - Dst: gf_filter_pid_inst_del
      Src: /src/gpac/src/filter_core/filter_session.c:761,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:763,1
    - Dst: gf_filter_reset_pending_packets
      Src: /src/gpac/src/filter_core/filter_session.c:767,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:769,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:771,1
    - Dst: gf_filter_pid_inst_reset
      Src: /src/gpac/src/filter_core/filter_session.c:772,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:774,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:781,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter_session.c:788,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_session.c:790,1
    - Dst: GF_Filter*::freg::finalize
      Src: /src/gpac/src/filter_core/filter_session.c:791,1
    - Dst: gf_logs_thread_tag_del
      Src: /src/gpac/src/filter_core/filter_session.c:792,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:798,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_session.c:799,1
    - Dst: gf_filter_del
      Src: /src/gpac/src/filter_core/filter_session.c:801,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:803,1
    - Dst: gf_fs_unload_script
      Src: /src/gpac/src/filter_core/filter_session.c:807,1
    - Dst: gf_dm_del
      Src: /src/gpac/src/filter_core/filter_session.c:810,1
    - Dst: gf_font_manager_del
      Src: /src/gpac/src/filter_core/filter_session.c:814,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:818,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_session.c:819,1
    - Dst: GF_FilterRegister*::register_free
      Src: /src/gpac/src/filter_core/filter_session.c:820,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:822,1
    - Dst: gf_fq_del
      Src: /src/gpac/src/filter_core/filter_session.c:826,1
    - Dst: gf_fq_del
      Src: /src/gpac/src/filter_core/filter_session.c:829,1
    - Dst: gf_fq_del
      Src: /src/gpac/src/filter_core/filter_session.c:834,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:836,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_session.c:837,1
    - Dst: gf_th_del
      Src: /src/gpac/src/filter_core/filter_session.c:838,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:839,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:841,1
    - Dst: gf_fq_del
      Src: /src/gpac/src/filter_core/filter_session.c:846,1
    - Dst: gf_fq_del
      Src: /src/gpac/src/filter_core/filter_session.c:849,1
    - Dst: gf_fq_del
      Src: /src/gpac/src/filter_core/filter_session.c:852,1
    - Dst: gf_fq_del
      Src: /src/gpac/src/filter_core/filter_session.c:854,1
    - Dst: gf_fq_del
      Src: /src/gpac/src/filter_core/filter_session.c:857,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/filter_core/filter_session.c:861,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/filter_core/filter_session.c:864,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/filter_core/filter_session.c:867,1
    - Dst: gf_sema_del
      Src: /src/gpac/src/filter_core/filter_session.c:870,1
    - Dst: gf_sema_del
      Src: /src/gpac/src/filter_core/filter_session.c:873,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/filter_core/filter_session.c:876,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/filter_core/filter_session.c:879,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/filter_core/filter_session.c:881,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:882,1
    - Dst: gf_filter_sess_reset_graph
      Src: /src/gpac/src/filter_core/filter_session.c:885,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:886,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/filter_core/filter_session.c:888,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:891,1
    - Dst: GF_FilterSession*::gl_driver::Shutdown
      Src: /src/gpac/src/filter_core/filter_session.c:893,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/filter_core/filter_session.c:894,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:899,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_session.c:900,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:901,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:903,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:907,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:908,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:910,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_session.c:912,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:913,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:914,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 134
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 915
      start: 730
    functionDepth: 5
    functionLinenumber: 730
    functionLinenumberEnd: 915
    functionName: gf_fs_del
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 19
    functionsReached:
    - gf_free
    - gf_logs_thread_tag
    - gf_logs_thread_untag
    - GF_FilterSession*::gl_driver::Shutdown
    - gf_list_count
    - gf_dm_del
    - GF_FilterRegister*::register_free
    - gf_fs_unload_script
    - gf_th_del
    - FSESS_CHECK_THREAD
    - gf_assert
    - gf_list_pop_back
    - gf_list_get
    - gf_filter_pid_inst_reset
    - gf_logs_thread_tag_del
    - gf_sema_del
    - gf_filter_pid_inst_del
    - gf_fs_stop
    - GF_Filter*::freg::finalize
    - gf_mx_p
    - gf_fq_del
    - GF_LOG
    - gf_filter_del
    - gf_filter_sess_reset_graph
    - gf_modules_close_interface
    - gf_mx_v
    - gf_font_manager_del
    - gf_list_del
    - gf_list_pop_front
    - gf_filter_reset_pending_packets
    - gf_mx_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_del(GF_FilterSession *fsess)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:920,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 921
      start: 917
    functionDepth: 1
    functionLinenumber: 917
    functionLinenumberEnd: 921
    functionName: gf_fs_filters_registers_count
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 8
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_filters_registers_count(GF_FilterSession *fsess)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:926,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 927
      start: 923
    functionDepth: 1
    functionLinenumber: 923
    functionLinenumberEnd: 927
    functionName: GF_FilterRegister * gf_fs_get_filter_register(GF_FilterSession *fsess,
      u32 idx)
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterRegister * gf_fs_get_filter_register(GF_FilterSession
      *fsess, u32 idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filter_core/filter_session.c:932,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - udta
    - item
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 933
      start: 930
    functionDepth: 1
    functionLinenumber: 930
    functionLinenumberEnd: 933
    functionName: check_task_list_enum
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_fatal_assert
    linkageType: ''
    returnType: void
    signature: void check_task_list_enum(void *udta, void *item)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fq_enum
      Src: /src/gpac/src/filter_core/filter_session.c:937,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - fq
    - task
    argTypes:
    - GF_FilterQueue*
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 939
      start: 934
    functionDepth: 2
    functionLinenumber: 934
    functionLinenumberEnd: 939
    functionName: check_task_list
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_fq_enum
    linkageType: ''
    returnType: void
    signature: void check_task_list(GF_FilterQueue *fq, GF_FSTask *task)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:947,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:948,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:954,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:959,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session.c:960,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:966,1
    - Dst: task_fun
      Src: /src/gpac/src/filter_core/filter_session.c:969,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:972,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:994,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:995,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:996,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_session.c:1000,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_session.c:1002,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1004,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session.c:1008,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:1022,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:1025,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1034,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:1049,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:1050,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1052,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:1052,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:1052,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1056,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:1056,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:1059,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:1066,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:1067,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:1068,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:1070,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1072,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:1072,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:1073,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:1077,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:1079,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:1080,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:1082,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:1083,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:1084,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 99
    argCount: 11
    argNames:
    - fsess
    - task_fun
    - filter
    - pid
    - log_name
    - udta
    - is_configure
    - force_main_thread
    - force_direct_call
    - class_type
    - delay_ms
    argTypes:
    - GF_FilterSession*
    - gf_fs_task_callback
    - GF_Filter*
    - GF_FilterPid*
    - char*
    - void*
    - Bool
    - Bool
    - Bool
    - GF_TaskClassType
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1087
      start: 942
    functionDepth: 4
    functionLinenumber: 942
    functionLinenumberEnd: 1087
    functionName: gf_fs_post_task_ex
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_mx_p
    - gf_assert
    - gf_th_id
    - gf_fs_sema_io
    - check_task_list
    - GF_LOG
    - gf_fq_count
    - memset
    - safe_int_inc
    - gf_fq_pop
    - gf_mx_v
    - gf_fq_add
    - task_fun
    - gf_sys_clock_high_res
    - gf_malloc
    linkageType: ''
    returnType: void
    signature: void gf_fs_post_task_ex(GF_FilterSession *fsess, gf_fs_task_callback
      task_fun, GF_Filter *filter, GF_FilterPid *pid, const char *log_name, void *udta,
      Bool is_configure, Bool force_main_thread, Bool force_direct_call, GF_TaskClassType
      class_type, u32 delay_ms)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_post_task_ex
      Src: /src/gpac/src/filter_core/filter_session.c:1091,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - fsess
    - task_fun
    - filter
    - pid
    - log_name
    - udta
    argTypes:
    - GF_FilterSession*
    - gf_fs_task_callback
    - GF_Filter*
    - GF_FilterPid*
    - char*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1092
      start: 1089
    functionDepth: 5
    functionLinenumber: 1089
    functionLinenumberEnd: 1092
    functionName: gf_fs_post_task
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_fs_post_task_ex
    linkageType: ''
    returnType: void
    signature: void gf_fs_post_task(GF_FilterSession *fsess, gf_fs_task_callback task_fun,
      GF_Filter *filter, GF_FilterPid *pid, const char *log_name, void *udta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_post_task_ex
      Src: /src/gpac/src/filter_core/filter_session.c:1096,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - fsess
    - task_fun
    - filter
    - pid
    - log_name
    - udta
    - class_id
    argTypes:
    - GF_FilterSession*
    - gf_fs_task_callback
    - GF_Filter*
    - GF_FilterPid*
    - char*
    - void*
    - GF_TaskClassType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1097
      start: 1094
    functionDepth: 5
    functionLinenumber: 1094
    functionLinenumberEnd: 1097
    functionName: gf_fs_post_task_class
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_fs_post_task_ex
    linkageType: ''
    returnType: void
    signature: void gf_fs_post_task_class(GF_FilterSession *fsess, gf_fs_task_callback
      task_fun, GF_Filter *filter, GF_FilterPid *pid, const char *log_name, void *udta,
      GF_TaskClassType class_id)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_equal
      Src: /src/gpac/src/filter_core/filter_session.c:1125,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filter_core/filter_session.c:1131,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filter_core/filter_session.c:1139,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 47
    argCount: 7
    argNames:
    - f_reg
    - incode
    - cap_input
    - outcode
    - cap_output
    - exact_match_only
    - out_cap_excluded
    argTypes:
    - GF_FilterRegister*
    - u32
    - GF_PropertyValue*
    - u32
    - GF_PropertyValue*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1156
      start: 1099
    functionDepth: 1
    functionLinenumber: 1099
    functionLinenumberEnd: 1156
    functionName: gf_fs_check_filter_register_cap_ex
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_props_equal
    linkageType: ''
    returnType: Bool
    signature: Bool gf_fs_check_filter_register_cap_ex(const GF_FilterRegister *f_reg,
      u32 incode, GF_PropertyValue *cap_input, u32 outcode, GF_PropertyValue *cap_output,
      Bool exact_match_only, Bool out_cap_excluded)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_check_filter_register_cap_ex
      Src: /src/gpac/src/filter_core/filter_session.c:1160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - f_reg
    - incode
    - cap_input
    - outcode
    - cap_output
    - exact_match_only
    argTypes:
    - GF_FilterRegister*
    - u32
    - GF_PropertyValue*
    - u32
    - GF_PropertyValue*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1161
      start: 1157
    functionDepth: 2
    functionLinenumber: 1157
    functionLinenumberEnd: 1161
    functionName: gf_fs_check_filter_register_cap
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_fs_check_filter_register_cap_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_check_filter_register_cap(const GF_FilterRegister *f_reg,
      u32 incode, GF_PropertyValue *cap_input, u32 outcode, GF_PropertyValue *cap_output,
      Bool exact_match_only)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1180,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1182,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:1186,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filter_core/filter_session.c:1189,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1192,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:1212,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:1214,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:1215,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:1217,1
    - Dst: gf_fs_check_filter_register_cap_ex
      Src: /src/gpac/src/filter_core/filter_session.c:1220,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1226,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:1227,1
    - Dst: gf_filter_new
      Src: /src/gpac/src/filter_core/filter_session.c:1231,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:1234,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:1235,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1239,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_session.c:1239,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:1243,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 76
    argCount: 4
    argNames:
    - fsess
    - args
    - filter_blacklist
    - out_err
    argTypes:
    - GF_FilterSession*
    - char*
    - GF_List*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1245
      start: 1163
    functionDepth: 2
    functionLinenumber: 1163
    functionLinenumberEnd: 1245
    functionName: gf_fs_load_encoder
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_list_new
    - GF_LOG
    - gf_list_find
    - strstr
    - gf_list_count
    - gf_fs_check_filter_register_cap_ex
    - gf_list_add
    - gf_codecid_parse
    - gf_error_to_string
    - strchr
    - gf_filter_new
    - gf_list_del
    linkageType: ''
    returnType: GF_Filter
    signature: GF_Filter *gf_fs_load_encoder(GF_FilterSession *fsess, const char *args,
      GF_List *filter_blacklist, GF_Err *out_err)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:1252,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:1253,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:1256,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:1258,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:1259,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 2
    argNames:
    - fsess
    - name
    argTypes:
    - GF_FilterSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1264
      start: 1247
    functionDepth: 1
    functionLinenumber: 1247
    functionLinenumberEnd: 1264
    functionName: gf_fs_filter_exists
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strcmp
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_filter_exists(GF_FilterSession *fsess, const char *name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:1268,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:1269,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_session.c:1271,1
    - Dst: strcpy
      Src: /src/gpac/src/filter_core/filter_session.c:1273,1
    - Dst: strcat
      Src: /src/gpac/src/filter_core/filter_session.c:1275,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter_session.c:1276,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter_session.c:1277,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:1279,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1280,1
    - Dst: strcat
      Src: /src/gpac/src/filter_core/filter_session.c:1285,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter_session.c:1286,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter_session.c:1287,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:1289,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1290,1
    - Dst: strcat
      Src: /src/gpac/src/filter_core/filter_session.c:1295,1
    - Dst: strcat
      Src: /src/gpac/src/filter_core/filter_session.c:1296,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter_session.c:1297,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter_session.c:1298,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:1300,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1301,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:1304,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 3
    argNames:
    - path
    - file_name
    - file_ext
    argTypes:
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1306
      start: 1266
    functionDepth: 4
    functionLinenumber: 1266
    functionLinenumberEnd: 1306
    functionName: locate_js_script
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - strcat
    - gf_free
    - gf_file_exists
    - GF_LOG
    - strcpy
    - strlen
    - strncpy
    - gf_malloc
    linkageType: ''
    returnType: Bool
    signature: Bool locate_js_script(char *path, const char *file_name, const char
      *file_ext)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_default_shared_directory
      Src: /src/gpac/src/filter_core/filter_session.c:1311,1
    - Dst: strcat
      Src: /src/gpac/src/filter_core/filter_session.c:1312,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1313,1
    - Dst: locate_js_script
      Src: /src/gpac/src/filter_core/filter_session.c:1314,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1318,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter_session.c:1320,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:1322,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter_session.c:1326,1
    - Dst: strcpy
      Src: /src/gpac/src/filter_core/filter_session.c:1330,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:1332,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:1333,1
    - Dst: strcat
      Src: /src/gpac/src/filter_core/filter_session.c:1335,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1336,1
    - Dst: locate_js_script
      Src: /src/gpac/src/filter_core/filter_session.c:1337,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 3
    argNames:
    - szPath
    - file_name
    - file_ext
    argTypes:
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1343
      start: 1308
    functionDepth: 5
    functionLinenumber: 1308
    functionLinenumberEnd: 1343
    functionName: gf_fs_solve_js_script
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - strcat
    - GF_LOG
    - strcpy
    - locate_js_script
    - strncpy
    - gf_opts_default_shared_directory
    - gf_opts_get_key
    - strcmp
    - strchr
    - strlen
    linkageType: ''
    returnType: Bool
    signature: Bool gf_fs_solve_js_script(char *szPath, const char *file_name, const
      char *file_ext)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:1349,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:1352,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:1353,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:1357,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:1361,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1365,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:1371,1
    - Dst: gf_fs_load_encoder
      Src: /src/gpac/src/filter_core/filter_session.c:1372,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:1374,1
    - Dst: gf_fs_load_encoder
      Src: /src/gpac/src/filter_core/filter_session.c:1375,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:1380,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:1381,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:1381,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1386,1
    - Dst: gf_filter_new
      Src: /src/gpac/src/filter_core/filter_session.c:1392,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1396,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:1403,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filter_core/filter_session.c:1404,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filter_core/filter_session.c:1415,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1419,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1419,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1419,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter_session.c:1426,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1428,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter_session.c:1429,1
    - Dst: strcpy
      Src: /src/gpac/src/filter_core/filter_session.c:1432,1
    - Dst: gf_fs_solve_js_script
      Src: /src/gpac/src/filter_core/filter_session.c:1433,1
    - Dst: strcat
      Src: /src/gpac/src/filter_core/filter_session.c:1435,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter_session.c:1436,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter_session.c:1437,1
    - Dst: strcat
      Src: /src/gpac/src/filter_core/filter_session.c:1439,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filter_core/filter_session.c:1445,1
    - Dst: gf_fread
      Src: /src/gpac/src/filter_core/filter_session.c:1449,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filter_core/filter_session.c:1450,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1454,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1454,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1455,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1455,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1465,1
    - Dst: strcat
      Src: /src/gpac/src/filter_core/filter_session.c:1466,1
    - Dst: strcat
      Src: /src/gpac/src/filter_core/filter_session.c:1468,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter_session.c:1469,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 106
    argCount: 4
    argNames:
    - fsess
    - name
    - err_code
    - probe_only
    argTypes:
    - GF_FilterSession*
    - char*
    - GF_Err*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1474
      start: 1345
    functionDepth: 6
    functionLinenumber: 1345
    functionLinenumberEnd: 1474
    functionName: gf_fs_load_filter_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_fs_solve_js_script
    - gf_file_exists
    - strcpy
    - gf_list_count
    - gf_fopen
    - gf_fs_load_encoder
    - strchr
    - gf_filter_new
    - gf_filter_post_process_task
    - strcat
    - gf_assert
    - gf_list_get
    - sprintf
    - strncmp
    - gf_fs_load_filter
    - GF_LOG
    - gf_fread
    - strstr
    - strncpy
    - strlen
    - gf_fclose
    - gf_file_ext_start
    - strcmp
    linkageType: ''
    returnType: GF_Filter
    signature: GF_Filter *gf_fs_load_filter_internal(GF_FilterSession *fsess, const
      char *name, GF_Err *err_code, Bool *probe_only)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_load_filter_internal
      Src: /src/gpac/src/filter_core/filter_session.c:1479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - fsess
    - name
    - err_code
    argTypes:
    - GF_FilterSession*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1480
      start: 1476
    functionDepth: 7
    functionLinenumber: 1476
    functionLinenumberEnd: 1480
    functionName: gf_fs_load_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 18
    functionsReached:
    - gf_fs_load_filter_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_fs_load_filter(GF_FilterSession *fsess, const char *name,
      GF_Err *err_code)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:1491,1
    - Dst: atoi
      Src: /src/gpac/src/filter_core/filter_session.c:1495,1
    - Dst: atoi
      Src: /src/gpac/src/filter_core/filter_session.c:1497,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:1502,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:1506,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:1511,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:1517,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_session.c:1519,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1522,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1525,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:1535,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:1537,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:1537,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1540,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filter_core/filter_session.c:1543,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 52
    argCount: 4
    argNames:
    - link
    - filter
    - loaded_filters
    - ext_link
    argTypes:
    - char*
    - GF_Filter*
    - GF_List*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1545
      start: 1482
    functionDepth: 1
    functionLinenumber: 1482
    functionLinenumberEnd: 1545
    functionName: gf_fs_process_link_directive
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_set_source
    - sscanf
    - GF_LOG
    - gf_list_count
    - atoi
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_process_link_directive(char *link, GF_Filter *filter,
      GF_List *loaded_filters, char *ext_link)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:1564,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:1568,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:1570,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:1580,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:1580,1
    - Dst: gf_fs_load_source
      Src: /src/gpac/src/filter_core/filter_session.c:1581,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:1585,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:1585,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/filter_core/filter_session.c:1586,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:1593,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:1600,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:1602,1
    - Dst: gf_fs_process_link_directive
      Src: /src/gpac/src/filter_core/filter_session.c:1605,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:1609,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:1613,1
    - Dst: gf_fs_load_source
      Src: /src/gpac/src/filter_core/filter_session.c:1614,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:1615,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/filter_core/filter_session.c:1616,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1619,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1620,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter_session.c:1625,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1639,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_session.c:1639,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1641,1
    - Dst: gf_filter_tag_subsession
      Src: /src/gpac/src/filter_core/filter_session.c:1647,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:1649,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filter_core/filter_session.c:1650,1
    - Dst: gf_fs_process_link_directive
      Src: /src/gpac/src/filter_core/filter_session.c:1651,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:1654,1
    - Dst: gf_filter_is_source
      Src: /src/gpac/src/filter_core/filter_session.c:1658,1
    - Dst: gf_filter_tag_subsession
      Src: /src/gpac/src/filter_core/filter_session.c:1661,1
    - Dst: gf_filter_is_sink
      Src: /src/gpac/src/filter_core/filter_session.c:1668,1
    - Dst: gf_filter_is_source
      Src: /src/gpac/src/filter_core/filter_session.c:1671,1
    - Dst: gf_filter_tag_subsession
      Src: /src/gpac/src/filter_core/filter_session.c:1676,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:1682,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:1683,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 122
    argCount: 5
    argNames:
    - fsess
    - argc
    - argv
    - out_loaded_filters
    - out_links_directive
    argTypes:
    - GF_FilterSession*
    - int
    - char*[]
    - GF_List**
    - GF_List**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1686
      start: 1547
    functionDepth: 8
    functionLinenumber: 1547
    functionLinenumberEnd: 1686
    functionName: gf_fs_parse_filter_graph
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_fs_load_destination
    - gf_list_new
    - gf_fs_load_filter
    - gf_list_pop_front
    - GF_LOG
    - gf_filter_tag_subsession
    - strstr
    - gf_filter_is_source
    - gf_list_count
    - strncmp
    - strcmp
    - gf_fs_process_link_directive
    - gf_list_add
    - gf_error_to_string
    - gf_filter_is_sink
    - gf_fs_load_source
    - strchr
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_parse_filter_graph(GF_FilterSession *fsess, int argc,
      char *argv[], GF_List **out_loaded_filters, GF_List **out_links_directive)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: isspace
      Src: /src/gpac/src/filter_core/filter_session.c:1700,1
    - Dst: isspace
      Src: /src/gpac/src/filter_core/filter_session.c:1710,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_session.c:1715,1
    - Dst: gf_fs_parse_filter_graph
      Src: /src/gpac/src/filter_core/filter_session.c:1722,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:1723,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 29
    argCount: 4
    argNames:
    - fsess
    - graph_str
    - out_loaded_filters
    - out_links_directive
    argTypes:
    - GF_FilterSession*
    - char*
    - GF_List**
    - GF_List**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1725
      start: 1688
    functionDepth: 9
    functionLinenumber: 1688
    functionLinenumberEnd: 1725
    functionName: gf_fs_parse_filter_graph_str
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_free
    - isspace
    - gf_fs_parse_filter_graph
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_parse_filter_graph_str(GF_FilterSession *fsess, char
      *graph_str, GF_List **out_loaded_filters, GF_List **out_links_directive)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1730,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1733,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1735,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1738,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1741,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1744,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filter_core/filter_session.c:1744,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1747,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1749,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1751,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:1751,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1755,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1757,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_session.c:1757,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1759,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1760,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1764,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 37
    argCount: 3
    argNames:
    - taskn
    - task
    - for_filter
    argTypes:
    - u32*
    - GF_FSTask*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1765
      start: 1727
    functionDepth: 2
    functionLinenumber: 1727
    functionLinenumberEnd: 1765
    functionName: print_task
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_filter_event_name
    - gf_sys_clock_high_res
    - fprintf
    - gf_filter_pid_get_name
    linkageType: ''
    returnType: void
    signature: void print_task(u32 *taskn, GF_FSTask *task, Bool for_filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: print_task
      Src: /src/gpac/src/filter_core/filter_session.c:1769,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - udta
    - item
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1770
      start: 1767
    functionDepth: 3
    functionLinenumber: 1767
    functionLinenumberEnd: 1770
    functionName: print_task_list
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - print_task
    linkageType: ''
    returnType: void
    signature: void print_task_list(void *udta, void *item)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: print_task
      Src: /src/gpac/src/filter_core/filter_session.c:1774,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - udta
    - item
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1775
      start: 1772
    functionDepth: 3
    functionLinenumber: 1772
    functionLinenumberEnd: 1775
    functionName: print_task_list_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - print_task
    linkageType: ''
    returnType: void
    signature: void print_task_list_filter(void *udta, void *item)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - udta
    - item
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1791
      start: 1784
    functionDepth: 0
    functionLinenumber: 1784
    functionLinenumberEnd: 1791
    functionName: gather_pck_size
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gather_pck_size(void *udta, void *item)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1798,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filter_core/filter_session.c:1798,1
    - Dst: gf_fs_print_connections
      Src: /src/gpac/src/filter_core/filter_session.c:1801,1
    - Dst: gf_fs_print_stats
      Src: /src/gpac/src/filter_core/filter_session.c:1804,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1807,1
    - Dst: gf_fq_enum
      Src: /src/gpac/src/filter_core/filter_session.c:1808,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1810,1
    - Dst: gf_fq_enum
      Src: /src/gpac/src/filter_core/filter_session.c:1812,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1817,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:1818,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:1819,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:1822,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1823,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1824,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1825,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1826,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1827,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1828,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1830,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1831,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1832,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1833,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:1835,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1836,1
    - Dst: gf_fq_enum
      Src: /src/gpac/src/filter_core/filter_session.c:1837,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1839,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session.c:1843,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:1844,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:1847,1
    - Dst: gf_fq_enum
      Src: /src/gpac/src/filter_core/filter_session.c:1848,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:1852,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1856,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1858,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1860,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1862,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1864,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:1866,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1868,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 76
    argCount: 2
    argNames:
    - fsess
    - dbg_flags
    argTypes:
    - GF_FilterSession*
    - GF_SessionDebugFlag
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1869
      start: 1793
    functionDepth: 2
    functionLinenumber: 1793
    functionLinenumberEnd: 1869
    functionName: gf_fs_print_debug_info
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_fq_enum
    - gf_fs_print_stats
    - gf_fq_count
    - gf_fs_print_connections
    - gf_list_count
    - memset
    - gf_mx_v
    - gf_net_get_utc
    - fprintf
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_print_debug_info(GF_FilterSession *fsess, GF_SessionDebugFlag
      dbg_flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:1887,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:1888,1
    - Dst: gf_th_async_call
      Src: /src/gpac/src/filter_core/filter_session.c:1889,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - thid
    - sess_thread
    - enter_time
    argTypes:
    - u32
    - GF_SessionThread*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1893
      start: 1882
    functionDepth: 2
    functionLinenumber: 1882
    functionLinenumberEnd: 1893
    functionName: em_check_yield_th_proc
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_th_async_call
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: Bool
    signature: Bool em_check_yield_th_proc(u32 thid, GF_SessionThread *sess_thread,
      u64 enter_time)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1900
      start: 1899
    functionDepth: 0
    functionLinenumber: 1899
    functionLinenumberEnd: 1900
    functionName: gf_th_log_name
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: gf_th_log_name(_t)
  - BBCount: 101
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:1907,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:1908,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:1913,1
    - Dst: gf_th_log_name
      Src: /src/gpac/src/filter_core/filter_session.c:1916,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1936,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1940,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_session.c:1942,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:1947,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:1951,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:1957,1
    - Dst: gf_fs_print_debug_info
      Src: /src/gpac/src/filter_core/filter_session.c:1970,1
    - Dst: emscripten_main_thread_process_queued_calls
      Src: /src/gpac/src/filter_core/filter_session.c:1975,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:1979,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1982,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:1984,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:1987,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:1990,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_session.c:1996,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_session.c:1999,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2002,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2004,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_session.c:2017,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2020,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2021,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2025,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2026,1
    - Dst: gf_fq_head
      Src: /src/gpac/src/filter_core/filter_session.c:2029,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2031,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2032,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:2038,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2041,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2042,1
    - Dst: gf_log_pop_extra
      Src: /src/gpac/src/filter_core/filter_session.c:2044,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2066,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2079,1
    - Dst: gf_log_pop_extra
      Src: /src/gpac/src/filter_core/filter_session.c:2082,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2086,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2091,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2095,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2096,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2100,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:2100,1
    - Dst: gf_sema_notify
      Src: /src/gpac/src/filter_core/filter_session.c:2101,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2102,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:2102,1
    - Dst: gf_sema_notify
      Src: /src/gpac/src/filter_core/filter_session.c:2103,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2108,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:2108,1
    - Dst: gf_sema_notify
      Src: /src/gpac/src/filter_core/filter_session.c:2109,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2110,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:2110,1
    - Dst: gf_sema_notify
      Src: /src/gpac/src/filter_core/filter_session.c:2111,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2116,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:2117,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2121,1
    - Dst: em_check_yield_th_proc
      Src: /src/gpac/src/filter_core/filter_session.c:2124,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filter_core/filter_session.c:2130,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2136,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2137,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2139,1
    - Dst: gf_log_push_extra
      Src: /src/gpac/src/filter_core/filter_session.c:2143,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:2155,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2157,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2158,1
    - Dst: gf_log_pop_extra
      Src: /src/gpac/src/filter_core/filter_session.c:2160,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2170,1
    - Dst: gf_fq_head
      Src: /src/gpac/src/filter_core/filter_session.c:2186,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2188,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2190,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2191,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2192,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2195,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2198,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2207,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2220,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2223,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filter_core/filter_session.c:2224,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2226,1
    - Dst: gf_fq_head
      Src: /src/gpac/src/filter_core/filter_session.c:2234,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2235,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2236,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2237,1
    - Dst: gf_fq_get
      Src: /src/gpac/src/filter_core/filter_session.c:2241,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2244,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:2245,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2248,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_session.c:2250,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2252,1
    - Dst: em_check_yield_th_proc
      Src: /src/gpac/src/filter_core/filter_session.c:2255,1
    - Dst: gf_fq_get
      Src: /src/gpac/src/filter_core/filter_session.c:2267,1
    - Dst: gf_fq_head
      Src: /src/gpac/src/filter_core/filter_session.c:2276,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2282,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:2293,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2296,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2303,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2306,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2315,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2318,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filter_core/filter_session.c:2320,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2321,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2324,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2328,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2332,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2332,1
    - Dst: gf_log_pop_extra
      Src: /src/gpac/src/filter_core/filter_session.c:2334,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2339,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2340,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2341,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2342,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2346,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2347,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2353,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2356,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2357,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2364,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2372,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2374,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:2375,1
    - Dst: em_check_yield_th_proc
      Src: /src/gpac/src/filter_core/filter_session.c:2380,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2389,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2396,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:2398,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2403,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2403,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2405,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2405,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:2407,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2408,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2409,1
    - Dst: GF_FSTask*::run_task
      Src: /src/gpac/src/filter_core/filter_session.c:2417,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2421,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:2422,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:2447,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2448,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_session.c:2477,1
    - Dst: gf_fq_head
      Src: /src/gpac/src/filter_core/filter_session.c:2479,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2487,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_session.c:2505,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2512,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2514,1
    - Dst: gf_log_pop_extra
      Src: /src/gpac/src/filter_core/filter_session.c:2518,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_session.c:2523,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2526,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2530,1
    - Dst: gf_log_pop_extra
      Src: /src/gpac/src/filter_core/filter_session.c:2532,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2537,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2538,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2539,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2544,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2546,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2556,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2560,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:2563,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2566,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2567,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2568,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2569,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2574,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2579,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2579,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2580,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2584,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2586,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2590,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2591,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2592,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2594,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:2597,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:2598,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2600,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2601,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2603,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2606,1
    - Dst: gf_fq_res_add
      Src: /src/gpac/src/filter_core/filter_session.c:2608,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:2609,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2615,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:2616,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2623,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2625,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2629,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2633,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2638,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:2639,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:2644,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2647,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2653,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2656,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:2658,1
    - Dst: gf_logs_thread_tag_del
      Src: /src/gpac/src/filter_core/filter_session.c:2661,1
    - Dst: gf_sema_notify
      Src: /src/gpac/src/filter_core/filter_session.c:2667,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2668,1
    - Dst: gf_sema_notify
      Src: /src/gpac/src/filter_core/filter_session.c:2670,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2671,1
    CyclomaticComplexity: 193
    EdgeCount: 193
    ICount: 478
    argCount: 1
    argNames:
    - sess_thread
    argTypes:
    - GF_SessionThread*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2675
      start: 1902
    functionDepth: 5
    functionLinenumber: 1902
    functionLinenumberEnd: 2675
    functionName: gf_fs_thread_proc
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_logs_thread_tag
    - gf_list_find
    - gf_sema_notify
    - gf_log_push_extra
    - gf_list_count
    - gf_fq_pop
    - gf_log_pop_extra
    - gf_assert
    - gf_list_get
    - gf_fs_sema_io
    - gf_fq_head
    - gf_logs_thread_tag_del
    - emscripten_main_thread_process_queued_calls
    - gf_fq_add
    - gf_fq_res_add
    - gf_fq_get
    - gf_mx_p
    - check_task_list
    - GF_LOG
    - em_check_yield_th_proc
    - gf_sleep
    - gf_th_log_name
    - safe_int_inc
    - gf_mx_v
    - gf_sys_clock_high_res
    - safe_int_dec
    - gf_th_id
    - gf_fs_print_debug_info
    - gf_fq_count
    - GF_FSTask*::run_task
    linkageType: ''
    returnType: u32
    signature: u32 gf_fs_thread_proc(GF_SessionThread *sess_thread)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_thread_proc
      Src: /src/gpac/src/filter_core/filter_session.c:2688,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:2705,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2707,1
    - Dst: gf_th_run
      Src: /src/gpac/src/filter_core/filter_session.c:2708,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:2711,1
    - Dst: gf_fs_thread_proc
      Src: /src/gpac/src/filter_core/filter_session.c:2724,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filter_core/filter_session.c:2736,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2741
      start: 2678
    functionDepth: 6
    functionLinenumber: 2678
    functionLinenumberEnd: 2741
    functionName: gf_fs_run
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 14
    functionsReached:
    - gf_th_run
    - gf_list_get
    - gf_sleep
    - gf_fs_thread_proc
    - gf_list_count
    - safe_int_inc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_run(GF_FilterSession *fsess)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_session.c:2746,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_session.c:2748,1
    - Dst: GF_FSTask*::pid::filter::freg::process_event
      Src: /src/gpac/src/filter_core/filter_session.c:2749,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_session.c:2750,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter_session.c:2752,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:2754,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2756
      start: 2743
    functionDepth: 3
    functionLinenumber: 2743
    functionLinenumberEnd: 2756
    functionName: filter_abort_task
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_logs_thread_tag
    - gf_logs_thread_untag
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - GF_FSTask*::pid::filter::freg::process_event
    linkageType: ''
    returnType: void
    signature: void filter_abort_task(GF_FSTask *task)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2763,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:2765,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:2775,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:2776,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2779,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2787,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:2788,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2796,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2798,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter_session.c:2799,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:2800,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_session.c:2802,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2807,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2808,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:2809,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2811,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:2823,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter_session.c:2824,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_session.c:2828,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_session.c:2830,1
    - Dst: GF_FilterPid*::filter::freg::process_event
      Src: /src/gpac/src/filter_core/filter_session.c:2831,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_session.c:2832,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter_session.c:2834,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter_session.c:2837,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2840,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:2841,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2853,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_session.c:2854,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:2858,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2860,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_session.c:2861,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filter_core/filter_session.c:2862,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter_session.c:2864,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2866,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_session.c:2870,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filter_core/filter_session.c:2871,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter_session.c:2873,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2878,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:2879,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2881,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 77
    argCount: 2
    argNames:
    - fsess
    - flush_type
    argTypes:
    - GF_FilterSession*
    - GF_FSFlushType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2883
      start: 2758
    functionDepth: 6
    functionLinenumber: 2758
    functionLinenumberEnd: 2883
    functionName: gf_fs_abort
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 10
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_th_id
    - gf_logs_thread_tag
    - gf_filter_pid_get_property
    - GF_FilterPid*::filter::freg::process_event
    - gf_logs_thread_untag
    - GF_LOG
    - gf_fs_post_task
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - gf_list_count
    - gf_mx_v
    - safe_int_inc
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_abort(GF_FilterSession *fsess, GF_FSFlushType flush_type)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:2890,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2894,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2906,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2911,1
    - Dst: gf_fs_thread_proc
      Src: /src/gpac/src/filter_core/filter_session.c:2916,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2917,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2920,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:2926,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2932,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filter_core/filter_session.c:2934,1
    - Dst: gf_fs_thread_proc
      Src: /src/gpac/src/filter_core/filter_session.c:2937,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 39
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2942
      start: 2885
    functionDepth: 6
    functionLinenumber: 2885
    functionLinenumberEnd: 2942
    functionName: gf_fs_stop
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 4
    functionsReached:
    - gf_fs_sema_io
    - GF_LOG
    - gf_sleep
    - gf_fs_thread_proc
    - gf_list_count
    - gf_fq_count
    - safe_int_inc
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_stop(GF_FilterSession *fsess)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2947,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2949,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:2950,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2951,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2954,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2958,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2960,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2963,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2966,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2969,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2970,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 28
    argCount: 3
    argNames:
    - f
    - skip_id
    - skip_args
    argTypes:
    - GF_Filter*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2971
      start: 2944
    functionDepth: 1
    functionLinenumber: 2944
    functionLinenumberEnd: 2971
    functionName: print_filter_name
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - strcmp
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE print_filter_name(GF_Filter *f, Bool skip_id, Bool skip_args)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2984,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:2985,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:2987,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2989,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2996,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2999,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:3002,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:3003,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3007,1
    - Dst: print_filter_name
      Src: /src/gpac/src/filter_core/filter_session.c:3008,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3009,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3012,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3014,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3016,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3020,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3022,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3026,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3028,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3031,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3035,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_session.c:3037,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3039,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3041,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3043,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3048,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_session.c:3049,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3051,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3053,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3057,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:3061,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:3062,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:3064,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3067,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3068,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3070,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3073,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3081,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3083,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3089,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 82
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3091
      start: 2973
    functionDepth: 2
    functionLinenumber: 2973
    functionLinenumberEnd: 3091
    functionName: gf_fs_print_stats
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 11
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_filter_pid_get_property
    - GF_LOG
    - print_filter_name
    - gf_list_count
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_print_stats(GF_FilterSession *fsess)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3099,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3103,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3106,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:3112,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:3113,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:3115,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3118,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3126,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3128,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3136,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3138,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3140,1
    - Dst: print_filter_name
      Src: /src/gpac/src/filter_core/filter_session.c:3143,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3145,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:3145,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:3148,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:3152,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3154,1
    - Dst: print_filter_name
      Src: /src/gpac/src/filter_core/filter_session.c:3155,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3157,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3159,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3161,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:3166,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3169,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3171,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:3172,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:3173,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3177,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filter_core/filter_session.c:3178,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:3179,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3184,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3186,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:3188,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:3190,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_session.c:3192,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3199,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_session.c:3200,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3207,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3223,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3235,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_session.c:3237,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3247,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_session.c:3250,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3251,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3259,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3260,1
    - Dst: gf_fs_print_filter_outputs
      Src: /src/gpac/src/filter_core/filter_session.c:3266,1
    - Dst: gf_fs_print_filter_outputs
      Src: /src/gpac/src/filter_core/filter_session.c:3268,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:3273,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:3275,1
    CyclomaticComplexity: 61
    EdgeCount: 61
    ICount: 140
    argCount: 9
    argNames:
    - f
    - filters_done
    - indent
    - pid
    - alias_for
    - src_num_tiled_pids
    - skip_print
    - nb_recursion
    - max_length
    argTypes:
    - GF_Filter*
    - GF_List*
    - u32
    - GF_FilterPid*
    - GF_Filter*
    - u32
    - Bool
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3276
      start: 3093
    functionDepth: 3
    functionLinenumber: 3093
    functionLinenumberEnd: 3276
    functionName: gf_fs_print_filter_outputs
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_list_new
    - gf_list_get
    - gf_filter_pid_get_property
    - gf_list_pop_front
    - GF_LOG
    - gf_fs_print_filter_outputs
    - gf_list_find
    - print_filter_name
    - sprintf
    - gf_list_count
    - gf_list_add
    - gf_list_del_item
    - strlen
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_fs_print_filter_outputs(GF_Filter *f, GF_List *filters_done,
      u32 indent, GF_FilterPid *pid, GF_Filter *alias_for, u32 src_num_tiled_pids,
      Bool skip_print, s32 nb_recursion, u32 max_length)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3282,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3284,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter_session.c:3293,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter_session.c:3295,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3301,1
    - Dst: gf_fs_print_filter_outputs
      Src: /src/gpac/src/filter_core/filter_session.c:3303,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 22
    argCount: 3
    argNames:
    - fsess
    - filters_done
    - ignore_sinks
    argTypes:
    - GF_FilterSession*
    - GF_List*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3305
      start: 3278
    functionDepth: 4
    functionLinenumber: 3278
    functionLinenumberEnd: 3305
    functionName: gf_fs_print_not_connected_filters
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_filter_has_out_caps
    - GF_LOG
    - gf_fs_print_filter_outputs
    - gf_list_count
    linkageType: ''
    returnType: void
    signature: void gf_fs_print_not_connected_filters(GF_FilterSession *fsess, GF_List
      *filters_done, Bool ignore_sinks)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_print_not_connected_filters
      Src: /src/gpac/src/filter_core/filter_session.c:3310,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3311
      start: 3307
    functionDepth: 5
    functionLinenumber: 3307
    functionLinenumberEnd: 3311
    functionName: gf_fs_print_non_connected
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 7
    functionsReached:
    - gf_fs_print_not_connected_filters
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_print_non_connected(GF_FilterSession *fsess)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_print_not_connected_filters
      Src: /src/gpac/src/filter_core/filter_session.c:3316,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - fsess
    - ignore_sinks
    argTypes:
    - GF_FilterSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3317
      start: 3313
    functionDepth: 5
    functionLinenumber: 3313
    functionLinenumberEnd: 3317
    functionName: gf_fs_print_non_connected_ex
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_fs_print_not_connected_filters
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_print_non_connected_ex(GF_FilterSession *fsess, Bool
      ignore_sinks)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3326,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:3327,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:3329,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3331,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3333,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3339,1
    - Dst: gf_fs_print_filter_outputs
      Src: /src/gpac/src/filter_core/filter_session.c:3341,1
    - Dst: gf_fs_print_not_connected_filters
      Src: /src/gpac/src/filter_core/filter_session.c:3344,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3347,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:3350,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3354,1
    - Dst: gf_fs_print_filter_outputs
      Src: /src/gpac/src/filter_core/filter_session.c:3356,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:3359,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:3360,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 34
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3361
      start: 3319
    functionDepth: 5
    functionLinenumber: 3319
    functionLinenumberEnd: 3361
    functionName: gf_fs_print_connections
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 11
    functionsReached:
    - gf_mx_p
    - gf_list_new
    - gf_list_get
    - GF_LOG
    - gf_fs_print_filter_outputs
    - gf_list_find
    - gf_list_count
    - gf_mx_v
    - gf_fs_print_not_connected_filters
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_print_connections(GF_FilterSession *fsess)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_enum_unmapped_options
      Src: /src/gpac/src/filter_core/filter_session.c:3374,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:3381,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:3383,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:3388,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3395,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3398,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 27
    argCount: 2
    argNames:
    - fsess
    - ignore_args
    argTypes:
    - GF_FilterSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3401
      start: 3363
    functionDepth: 2
    functionLinenumber: 3363
    functionLinenumberEnd: 3401
    functionName: gf_fs_print_unused_args
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 6
    functionsReached:
    - gf_fs_enum_unmapped_options
    - GF_LOG
    - strstr
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_print_unused_args(GF_FilterSession *fsess, const char
      *ignore_args)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:3416,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3420,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3422,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3423,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3426,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3429,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:3441,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:3446,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3450,1
    - Dst: filter_parse_logs
      Src: /src/gpac/src/filter_core/filter_session.c:3451,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3463,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3465,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:3470,1
    - Dst: gf_filter_update_arg_apply
      Src: /src/gpac/src/filter_core/filter_session.c:3471,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:3472,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session.c:3479,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:3481,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:3482,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:3485,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:3486,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter_session.c:3489,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 74
    argCount: 6
    argNames:
    - fsess
    - fid
    - filter
    - name
    - val
    - propagate_mask
    argTypes:
    - GF_FilterSession*
    - char*
    - GF_Filter*
    - char*
    - char*
    - GF_EventPropagateType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3490
      start: 3403
    functionDepth: 6
    functionLinenumber: 3403
    functionLinenumberEnd: 3490
    functionName: gf_fs_send_update
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 3
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_strdup
    - GF_SAFEALLOC
    - gf_fs_post_task
    - filter_parse_logs
    - gf_list_count
    - strcmp
    - gf_mx_v
    - gf_filter_update_arg_apply
    - strchr
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_send_update(GF_FilterSession *fsess, const char *fid,
      GF_Filter *filter, const char *name, const char *val, GF_EventPropagateType
      propagate_mask)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filter_core/filter_session.c:3497,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3498,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter_session.c:3503,1
    - Dst: strlwr
      Src: /src/gpac/src/filter_core/filter_session.c:3505,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:3506,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter_session.c:3511,1
    - Dst: strlwr
      Src: /src/gpac/src/filter_core/filter_session.c:3513,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:3520,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:3521,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:3528,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:3532,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter_session.c:3535,1
    - Dst: strlwr
      Src: /src/gpac/src/filter_core/filter_session.c:3537,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:3543,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3548,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3559,1
    - Dst: GF_FilterRegister*::probe_url
      Src: /src/gpac/src/filter_core/filter_session.c:3566,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:3595,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 91
    argCount: 5
    argNames:
    - fsess
    - freg
    - url
    - _mime
    - fargs
    argTypes:
    - GF_FilterSession*
    - GF_FilterRegister*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3604
      start: 3492
    functionDepth: 4
    functionLinenumber: 3492
    functionLinenumberEnd: 3604
    functionName: probe_meta_check_builtin_format
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - GF_FilterRegister*::probe_url
    - sprintf
    - strstr
    - strlwr
    - gf_list_count
    - strncpy
    - gf_file_ext_start
    - strcmp
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore probe_meta_check_builtin_format(GF_FilterSession
      *fsess, GF_FilterRegister *freg, const char *url, const char *_mime, char *fargs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3611,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3614,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_session.c:3618,1
    - Dst: GF_FilterPidInst*::filter::freg::use_alias
      Src: /src/gpac/src/filter_core/filter_session.c:3619,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_session.c:3620,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_session.c:3623,1
    - Dst: locate_alias_sink
      Src: /src/gpac/src/filter_core/filter_session.c:3626,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 3
    argNames:
    - filter
    - url
    - mime_type
    argTypes:
    - GF_Filter*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3631
      start: 3606
    functionDepth: 3
    functionLinenumber: 3606
    functionLinenumberEnd: 3631
    functionName: locate_alias_sink
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - GF_FilterPidInst*::filter::freg::use_alias
    - gf_list_get
    - gf_logs_thread_tag
    - locate_alias_sink
    - gf_logs_thread_untag
    linkageType: ''
    returnType: GF_Filter
    signature: GF_Filter *locate_alias_sink(GF_Filter *filter, const char *url, const
      char *mime_type)
  - BBCount: 84
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session.c:3648,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:3660,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:3661,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:3663,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter_session.c:3666,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:3668,1
    - Dst: strlwr
      Src: /src/gpac/src/filter_core/filter_session.c:3672,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:3673,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:3674,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_session.c:3677,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:3679,1
    - Dst: strlwr
      Src: /src/gpac/src/filter_core/filter_session.c:3684,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:3693,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:3693,1
    - Dst: gf_sys_solve_path
      Src: /src/gpac/src/filter_core/filter_session.c:3694,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:3698,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:3698,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:3700,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:3700,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filter_core/filter_session.c:3701,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:3704,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:3707,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:3708,1
    - Dst: memmove
      Src: /src/gpac/src/filter_core/filter_session.c:3709,1
    - Dst: gf_fs_path_escape_colon
      Src: /src/gpac/src/filter_core/filter_session.c:3714,1
    - Dst: gf_url_is_local
      Src: /src/gpac/src/filter_core/filter_session.c:3716,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:3719,1
    - Dst: gf_url_to_fs_path
      Src: /src/gpac/src/filter_core/filter_session.c:3722,1
    - Dst: gf_fs_path_escape_colon
      Src: /src/gpac/src/filter_core/filter_session.c:3723,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filter_core/filter_session.c:3726,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:3728,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:3729,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3738,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:3738,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3738,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3738,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter_session.c:3738,1
    - Dst: gf_fs_solve_js_script
      Src: /src/gpac/src/filter_core/filter_session.c:3740,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:3743,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:3746,1
    - Dst: gf_fs_load_filter_internal
      Src: /src/gpac/src/filter_core/filter_session.c:3747,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:3753,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:3754,1
    - Dst: gf_fs_path_escape_colon_ex
      Src: /src/gpac/src/filter_core/filter_session.c:3770,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:3772,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:3776,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:3779,1
    - Dst: locate_alias_sink
      Src: /src/gpac/src/filter_core/filter_session.c:3786,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3794,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3799,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:3801,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:3801,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:3803,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3812,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3813,1
    - Dst: GF_FilterRegister*::probe_url
      Src: /src/gpac/src/filter_core/filter_session.c:3820,1
    - Dst: GF_FilterRegister*::probe_url
      Src: /src/gpac/src/filter_core/filter_session.c:3822,1
    - Dst: probe_meta_check_builtin_format
      Src: /src/gpac/src/filter_core/filter_session.c:3827,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:3845,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3852,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:3857,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:3864,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_session.c:3865,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:3867,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:3871,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:3872,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:3874,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:3876,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:3880,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:3884,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:3889,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:3891,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3902,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3904,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_session.c:3906,1
    - Dst: GF_Filter*::freg::use_alias
      Src: /src/gpac/src/filter_core/filter_session.c:3907,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_session.c:3908,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_session.c:3912,1
    - Dst: gf_filter_new
      Src: /src/gpac/src/filter_core/filter_session.c:3917,1
    - Dst: jsfs_on_filter_destroyed
      Src: /src/gpac/src/filter_core/filter_session.c:3921,1
    - Dst: GF_Filter*::session::on_filter_create_destroy
      Src: /src/gpac/src/filter_core/filter_session.c:3924,1
    - Dst: gf_filter_new_finalize
      Src: /src/gpac/src/filter_core/filter_session.c:3927,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:3932,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:3935,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:3939,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:3940,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:3947,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filter_core/filter_session.c:3951,1
    CyclomaticComplexity: 129
    EdgeCount: 129
    ICount: 276
    argCount: 11
    argNames:
    - fsess
    - url
    - user_args
    - parent_url
    - err
    - filter
    - dst_filter
    - for_source
    - no_args_inherit
    - probe_only
    - probe_reg
    argTypes:
    - GF_FilterSession*
    - char*
    - char*
    - char*
    - GF_Err*
    - GF_Filter*
    - GF_Filter*
    - Bool
    - Bool
    - Bool*
    - GF_FilterRegister**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3954
      start: 3633
    functionDepth: 9
    functionLinenumber: 3633
    functionLinenumberEnd: 3954
    functionName: gf_fs_load_source_dest_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_fs_solve_js_script
    - gf_logs_thread_tag
    - locate_alias_sink
    - gf_logs_thread_untag
    - gf_file_exists
    - gf_list_find
    - gf_list_count
    - memset
    - gf_url_to_fs_path
    - jsfs_on_filter_destroyed
    - strchr
    - gf_filter_new
    - gf_filter_post_process_task
    - gf_filter_new_finalize
    - gf_strdup
    - gf_list_get
    - snprintf
    - GF_Filter*::freg::use_alias
    - sprintf
    - strlwr
    - strncmp
    - gf_list_add
    - gf_dynstrcat
    - memmove
    - gf_fs_load_filter_internal
    - GF_LOG
    - strstr
    - gf_url_is_local
    - strncpy
    - GF_Filter*::session::on_filter_create_destroy
    - gf_fs_path_escape_colon
    - gf_sys_solve_path
    - strlen
    - gf_malloc
    - GF_FilterRegister*::probe_url
    - gf_url_concatenate
    - gf_file_ext_start
    - strcmp
    - probe_meta_check_builtin_format
    - gf_fs_path_escape_colon_ex
    linkageType: ''
    returnType: GF_Filter
    signature: GF_Filter *gf_fs_load_source_dest_internal(GF_FilterSession *fsess,
      const char *url, const char *user_args, const char *parent_url, GF_Err *err,
      GF_Filter *filter, GF_Filter *dst_filter, Bool for_source, Bool no_args_inherit,
      Bool *probe_only, const GF_FilterRegister **probe_reg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_load_source_dest_internal
      Src: /src/gpac/src/filter_core/filter_session.c:3959,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - fsess
    - url
    - args
    - parent_url
    - err
    argTypes:
    - GF_FilterSession*
    - char*
    - char*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3960
      start: 3956
    functionDepth: 10
    functionLinenumber: 3956
    functionLinenumberEnd: 3960
    functionName: gf_fs_load_source
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 9
    functionsReached:
    - gf_fs_load_source_dest_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_fs_load_source(GF_FilterSession *fsess, const char *url,
      const char *args, const char *parent_url, GF_Err *err)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_load_source_dest_internal
      Src: /src/gpac/src/filter_core/filter_session.c:3965,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - fsess
    - url
    - args
    - parent_url
    - err
    argTypes:
    - GF_FilterSession*
    - char*
    - char*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3966
      start: 3962
    functionDepth: 10
    functionLinenumber: 3962
    functionLinenumberEnd: 3966
    functionName: gf_fs_load_destination
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 13
    functionsReached:
    - gf_fs_load_source_dest_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_fs_load_destination(GF_FilterSession *fsess, const char
      *url, const char *args, const char *parent_url, GF_Err *err)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sleep
      Src: /src/gpac/src/filter_core/filter_session.c:3974,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:3975,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:3977,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:3979,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:3980,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 2
    argNames:
    - filter
    - el
    argTypes:
    - GF_Filter*
    - GF_FSEventListener*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3982
      start: 3969
    functionDepth: 1
    functionLinenumber: 3969
    functionLinenumberEnd: 3982
    functionName: gf_filter_add_event_listener
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 2
    functionsReached:
    - gf_mx_p
    - gf_list_new
    - gf_sleep
    - gf_mx_v
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_add_event_listener(GF_Filter *filter, GF_FSEventListener
      *el)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_sleep
      Src: /src/gpac/src/filter_core/filter_session.c:3989,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:3990,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_session.c:3991,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3992,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:3993,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:3996,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 2
    argNames:
    - filter
    - el
    argTypes:
    - GF_Filter*
    - GF_FSEventListener*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3998
      start: 3984
    functionDepth: 3
    functionLinenumber: 3984
    functionLinenumberEnd: 3998
    functionName: gf_filter_remove_event_listener
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 2
    functionsReached:
    - gf_mx_p
    - gf_sleep
    - gf_list_count
    - gf_mx_v
    - gf_list_del_item
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_remove_event_listener(GF_Filter *filter, GF_FSEventListener
      *el)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:4009,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:4011,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filter_core/filter_session.c:4012,1
    - Dst: GF_FSEventListener*::on_event
      Src: /src/gpac/src/filter_core/filter_session.c:4013,1
    - Dst: gf_fs_ui_event
      Src: /src/gpac/src/filter_core/filter_session.c:4023,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 4
    argNames:
    - fsess
    - evt
    - consumed
    - skip_user
    argTypes:
    - GF_FilterSession*
    - GF_Event*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4027
      start: 4000
    functionDepth: 2
    functionLinenumber: 4000
    functionLinenumberEnd: 4027
    functionName: gf_fs_forward_gf_event
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_fs_ui_event
    - gf_mx_v
    - gf_list_enum
    - GF_FSEventListener*::on_event
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_forward_gf_event(GF_FilterSession *fsess, GF_Event
      *evt, Bool consumed, Bool skip_user)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_forward_gf_event
      Src: /src/gpac/src/filter_core/filter_session.c:4033,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - filter
    - evt
    - consumed
    - skip_user
    argTypes:
    - GF_Filter*
    - GF_Event*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4035
      start: 4029
    functionDepth: 3
    functionLinenumber: 4029
    functionLinenumberEnd: 4035
    functionName: gf_filter_forward_gf_event
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 5
    functionsReached:
    - gf_fs_forward_gf_event
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_forward_gf_event(GF_Filter *filter, GF_Event *evt,
      Bool consumed, Bool skip_user)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_forward_gf_event
      Src: /src/gpac/src/filter_core/filter_session.c:4040,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4041
      start: 4037
    functionDepth: 4
    functionLinenumber: 4037
    functionLinenumberEnd: 4041
    functionName: gf_filter_send_gf_event
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 3
    functionsReached:
    - gf_filter_forward_gf_event
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_send_gf_event(GF_Filter *filter, GF_Event *evt)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter_session.c:4056,1
    - Dst: strrchr
      Src: /src/gpac/src/filter_core/filter_session.c:4062,1
    - Dst: strrchr
      Src: /src/gpac/src/filter_core/filter_session.c:4063,1
    - Dst: gf_filter_caps_bundle_count
      Src: /src/gpac/src/filter_core/filter_session.c:4067,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session.c:4070,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter_session.c:4074,1
    - Dst: gf_filter_has_in_caps
      Src: /src/gpac/src/filter_core/filter_session.c:4075,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session.c:4077,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session.c:4078,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:4079,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:4080,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:4083,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:4088,1
    - Dst: gf_filter_caps_bundle_count
      Src: /src/gpac/src/filter_core/filter_session.c:4092,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session.c:4093,1
    - Dst: gf_filter_caps_to_caps_match
      Src: /src/gpac/src/filter_core/filter_session.c:4099,1
    - Dst: gf_filter_caps_to_caps_match
      Src: /src/gpac/src/filter_core/filter_session.c:4105,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:4114,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:4115,1
    - Dst: bundle_cache_free
      Src: /src/gpac/src/filter_core/filter_session.c:4117,1
    - Dst: bundle_cache_free
      Src: /src/gpac/src/filter_core/filter_session.c:4119,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:4125,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4128,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4130,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4136,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4138,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:4141,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4143,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4145,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4149,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4151,1
    - Dst: reset_bundle_cache
      Src: /src/gpac/src/filter_core/filter_session.c:4155,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:4156,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:4157,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 84
    argCount: 3
    argNames:
    - session
    - filter_name
    - js_filter
    argTypes:
    - GF_FilterSession*
    - char*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4158
      start: 4044
    functionDepth: 8
    functionLinenumber: 4044
    functionLinenumberEnd: 4158
    functionName: gf_fs_print_jsf_connection
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - bundle_cache_free
    - reset_bundle_cache
    - gf_list_new
    - gf_list_get
    - strrchr
    - gf_fs_load_filter
    - GF_SAFEALLOC
    - gf_filter_has_out_caps
    - GF_LOG
    - gf_filter_caps_to_caps_match
    - gf_list_count
    - memset
    - gf_list_add
    - print_fn
    - gf_filter_caps_bundle_count
    - gf_filter_has_in_caps
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_fs_print_jsf_connection(GF_FilterSession *session, char *filter_name,
      GF_Filter *js_filter, void (*print_fn)(FILE *output, GF_SysPrintArgFlags flags,
      const char *fmt, ...) )
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_log_get_tool_level
      Src: /src/gpac/src/filter_core/filter_session.c:4166,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/filter_core/filter_session.c:4168,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:4170,1
    - Dst: gf_fs_print_jsf_connection
      Src: /src/gpac/src/filter_core/filter_session.c:4171,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/filter_core/filter_session.c:4172,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:4175,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:4176,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:4179,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:4180,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4185,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4187,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:4193,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4195,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4197,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:4199,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4202,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4204,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4210,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4212,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4217,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4219,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4225,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4227,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filter_core/filter_session.c:4229,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4235,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4237,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:4239,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:4241,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:4242,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:4248,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:4250,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4253,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4255,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:4257,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4260,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4262,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4268,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4270,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4274,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4276,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filter_core/filter_session.c:4281,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4284,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4286,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter_session.c:4292,1
    - Dst: gf_fs_print_jsf_connection
      Src: /src/gpac/src/filter_core/filter_session.c:4294,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4297,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4299,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:4302,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/filter_core/filter_session.c:4303,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 111
    argCount: 2
    argNames:
    - session
    - filter_name
    argTypes:
    - GF_FilterSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4304
      start: 4160
    functionDepth: 9
    functionLinenumber: 4160
    functionLinenumberEnd: 4304
    functionName: gf_fs_print_all_connections
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_list_get
    - gf_fs_load_filter
    - gf_list_reset
    - GF_LOG
    - gf_list_find
    - strstr
    - gf_list_count
    - strcmp
    - gf_list_add
    - gf_log_get_tool_level
    - print_fn
    - gf_fs_print_jsf_connection
    - gf_log_set_tool_level
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_print_all_connections(GF_FilterSession *session, char
      *filter_name, void (*print_fn)(FILE *output, GF_SysPrintArgFlags flags, const
      char *fmt, ...) )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_print_jsf_connection
      Src: /src/gpac/src/filter_core/filter_session.c:4312,1
    - Dst: gf_fs_print_all_connections
      Src: /src/gpac/src/filter_core/filter_session.c:4314,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4316
      start: 4307
    functionDepth: 10
    functionLinenumber: 4307
    functionLinenumberEnd: 4316
    functionName: gf_filter_print_all_connections
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_fs_print_jsf_connection
    - gf_fs_print_all_connections
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_print_all_connections(GF_Filter *filter, void (*print_fn)(FILE
      *output, GF_SysPrintArgFlags flags, const char *fmt, ...) )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session.c:4325,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - filter
    - caps
    argTypes:
    - GF_Filter*
    - GF_FilterSessionCaps*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4328
      start: 4318
    functionDepth: 0
    functionLinenumber: 4318
    functionLinenumberEnd: 4328
    functionName: gf_filter_get_session_caps
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 5
    functionsReached:
    - memset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_get_session_caps(GF_Filter *filter, GF_FilterSessionCaps
      *caps)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - filter
    - caps
    argTypes:
    - GF_Filter*
    - GF_FilterSessionCaps*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4337
      start: 4330
    functionDepth: 0
    functionLinenumber: 4330
    functionLinenumberEnd: 4337
    functionName: gf_filter_set_session_caps
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_set_session_caps(GF_Filter *filter, GF_FilterSessionCaps
      *caps)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - filter
    - sep_type
    argTypes:
    - GF_Filter*
    - GF_FilterSessionSepType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4350
      start: 4339
    functionDepth: 0
    functionLinenumber: 4339
    functionLinenumberEnd: 4350
    functionName: gf_filter_get_sep
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_get_sep(GF_Filter *filter, GF_FilterSessionSepType
      sep_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_forward_gf_event
      Src: /src/gpac/src/filter_core/filter_session.c:4364,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 7
    argNames:
    - usr_cbk
    - secure
    - site_url
    - usr_name
    - password
    - async_pass
    - async_udta
    argTypes:
    - void*
    - Bool
    - char*
    - char*
    - char*
    - gf_dm_on_usr_pass
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4365
      start: 4353
    functionDepth: 3
    functionLinenumber: 4353
    functionLinenumberEnd: 4365
    functionName: gf_fsess_get_user_pass
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_fs_forward_gf_event
    linkageType: ''
    returnType: Bool
    signature: Bool gf_fsess_get_user_pass(void *usr_cbk, Bool secure, const char
      *site_url, char *usr_name, char *password, gf_dm_on_usr_pass async_pass, void
      *async_udta)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4375,1
    - Dst: gf_dm_new
      Src: /src/gpac/src/filter_core/filter_session.c:4380,1
    - Dst: gf_dm_set_auth_callback
      Src: /src/gpac/src/filter_core/filter_session.c:4383,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - fs
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4390
      start: 4368
    functionDepth: 2
    functionLinenumber: 4368
    functionLinenumberEnd: 4390
    functionName: gf_fs_get_download_manager
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_dm_new
    - gf_dm_set_auth_callback
    linkageType: ''
    returnType: GF_DownloadManager
    signature: GF_DownloadManager *gf_fs_get_download_manager(GF_FilterSession *fs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_get_download_manager
      Src: /src/gpac/src/filter_core/filter_session.c:4396,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4397
      start: 4392
    functionDepth: 3
    functionLinenumber: 4392
    functionLinenumberEnd: 4397
    functionName: GF_DownloadManager *gf_filter_get_download_manager(GF_Filter *filter)
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_fs_get_download_manager
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_DownloadManager *gf_filter_get_download_manager(GF_Filter
      *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_font_manager_new
      Src: /src/gpac/src/filter_core/filter_session.c:4406,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4410
      start: 4399
    functionDepth: 0
    functionLinenumber: 4399
    functionLinenumberEnd: 4410
    functionName: gf_fs_get_font_manager
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_font_manager_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_fs_get_font_manager(GF_FilterSession *fsess)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_get_font_manager
      Src: /src/gpac/src/filter_core/filter_session.c:4416,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4417
      start: 4412
    functionDepth: 1
    functionLinenumber: 4412
    functionLinenumberEnd: 4417
    functionName: gf_filter_get_font_manager
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 2
    functionsReached:
    - gf_fs_get_font_manager
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_get_font_manager(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:4421,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:4422,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4423
      start: 4419
    functionDepth: 1
    functionLinenumber: 4419
    functionLinenumberEnd: 4423
    functionName: gf_fs_cleanup_filters
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_assert
    linkageType: ''
    returnType: void
    signature: void gf_fs_cleanup_filters(GF_FilterSession *fsess)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - fs
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4433
      start: 4425
    functionDepth: 0
    functionLinenumber: 4425
    functionLinenumberEnd: 4433
    functionName: gf_fs_get_last_connect_error
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_get_last_connect_error(GF_FilterSession *fs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - fs
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4443
      start: 4435
    functionDepth: 0
    functionLinenumber: 4435
    functionLinenumberEnd: 4443
    functionName: gf_fs_get_last_process_error
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_get_last_process_error(GF_FilterSession *fs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_UserTask*::task_execute
      Src: /src/gpac/src/filter_core/filter_session.c:4461,1
    - Dst: GF_UserTask*::task_execute_filter
      Src: /src/gpac/src/filter_core/filter_session.c:4463,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:4469,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:4472,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:4475,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:4476,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4478
      start: 4454
    functionDepth: 2
    functionLinenumber: 4454
    functionLinenumberEnd: 4478
    functionName: gf_fs_user_task
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_assert
    - GF_UserTask*::task_execute_filter
    - GF_UserTask*::task_execute
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: void
    signature: void gf_fs_user_task(GF_FSTask *task)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session.c:4486,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:4492,1
    - Dst: gf_fs_post_task_ex
      Src: /src/gpac/src/filter_core/filter_session.c:4493,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 5
    argNames:
    - fsess
    - udta_callback
    - log_name
    - force_main
    - delay_ms
    argTypes:
    - GF_FilterSession*
    - void*
    - char*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4495
      start: 4481
    functionDepth: 5
    functionLinenumber: 4481
    functionLinenumberEnd: 4495
    functionName: gf_fs_post_user_task_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_fs_post_task_ex
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_fs_post_user_task_internal(GF_FilterSession *fsess, Bool
      (*task_execute) (GF_FilterSession *fsess, void *callback, u32 *reschedule_ms),
      void *udta_callback, const char *log_name, Bool force_main, u32 delay_ms)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_post_user_task_internal
      Src: /src/gpac/src/filter_core/filter_session.c:4500,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - fsess
    - udta_callback
    - log_name
    argTypes:
    - GF_FilterSession*
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4501
      start: 4497
    functionDepth: 6
    functionLinenumber: 4497
    functionLinenumberEnd: 4501
    functionName: gf_fs_post_user_task
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 7
    functionsReached:
    - gf_fs_post_user_task_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_post_user_task(GF_FilterSession *fsess, Bool (*task_execute)
      (GF_FilterSession *fsess, void *callback, u32 *reschedule_ms), void *udta_callback,
      const char *log_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_post_user_task_internal
      Src: /src/gpac/src/filter_core/filter_session.c:4506,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - fsess
    - udta_callback
    - log_name
    - delay_ms
    argTypes:
    - GF_FilterSession*
    - void*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4507
      start: 4503
    functionDepth: 6
    functionLinenumber: 4503
    functionLinenumberEnd: 4507
    functionName: gf_fs_post_user_task_delay
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_fs_post_user_task_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_post_user_task_delay(GF_FilterSession *fsess, Bool
      (*task_execute) (GF_FilterSession *fsess, void *callback, u32 *reschedule_ms),
      void *udta_callback, const char *log_name, u32 delay_ms)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_post_user_task_internal
      Src: /src/gpac/src/filter_core/filter_session.c:4512,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - fsess
    - udta_callback
    - log_name
    argTypes:
    - GF_FilterSession*
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4513
      start: 4509
    functionDepth: 6
    functionLinenumber: 4509
    functionLinenumberEnd: 4513
    functionName: gf_fs_post_user_task_main
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_fs_post_user_task_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_post_user_task_main(GF_FilterSession *fsess, Bool (*task_execute)
      (GF_FilterSession *fsess, void *callback, u32 *reschedule_ms), void *udta_callback,
      const char *log_name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session.c:4520,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:4527,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:4529,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:4530,1
    - Dst: gf_fs_post_task_class
      Src: /src/gpac/src/filter_core/filter_session.c:4533,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - filter
    - udta
    - task_name
    argTypes:
    - GF_Filter*
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4535
      start: 4515
    functionDepth: 6
    functionLinenumber: 4515
    functionLinenumberEnd: 4535
    functionName: gf_filter_post_task
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 3
    functionsReached:
    - gf_dynstrcat
    - gf_fs_post_task_class
    - gf_strdup
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_post_task(GF_Filter *filter, Bool (*task_execute)
      (GF_Filter *filter, void *callback, u32 *reschedule_ms), void *udta, const char
      *task_name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:4543,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:4544,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4547
      start: 4538
    functionDepth: 1
    functionLinenumber: 4538
    functionLinenumberEnd: 4547
    functionName: gf_fs_is_last_task
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 5
    functionsReached:
    - gf_fq_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_is_last_task(GF_FilterSession *fsess)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4554
      start: 4549
    functionDepth: 0
    functionLinenumber: 4549
    functionLinenumberEnd: 4554
    functionName: gf_fs_in_final_flush
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_in_final_flush(GF_FilterSession *fsess)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:4560,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:4563,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:4568,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 2
    argNames:
    - fsess
    - mime
    argTypes:
    - GF_FilterSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4573
      start: 4555
    functionDepth: 1
    functionLinenumber: 4555
    functionLinenumberEnd: 4573
    functionName: gf_fs_is_supported_mime
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strstr
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_is_supported_mime(GF_FilterSession *fsess, const char
      *mime)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - session
    - reporting_on
    argTypes:
    - GF_FilterSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4580
      start: 4576
    functionDepth: 0
    functionLinenumber: 4576
    functionLinenumberEnd: 4580
    functionName: gf_fs_enable_reporting
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_enable_reporting(GF_FilterSession *session, Bool reporting_on)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:4586,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:4587,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - session
    - do_lock
    argTypes:
    - GF_FilterSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4588
      start: 4582
    functionDepth: 0
    functionLinenumber: 4582
    functionLinenumberEnd: 4588
    functionName: gf_fs_lock_filters
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 10
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_lock_filters(GF_FilterSession *session, Bool do_lock)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:4593,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4594
      start: 4590
    functionDepth: 1
    functionLinenumber: 4590
    functionLinenumberEnd: 4594
    functionName: gf_fs_get_filters_count
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 8
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_get_filters_count(GF_FilterSession *session)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:4598,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - session
    - idx
    argTypes:
    - GF_FilterSession*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4599
      start: 4595
    functionDepth: 1
    functionLinenumber: 4595
    functionLinenumberEnd: 4599
    functionName: gf_fs_get_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 2
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_fs_get_filter(GF_FilterSession *session, u32 idx)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session.c:4607,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:4626,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:4638,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:4653,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:4658,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:4661,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:4690,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 86
    argCount: 2
    argNames:
    - f
    - stats
    argTypes:
    - GF_Filter*
    - GF_FilterStats*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4699
      start: 4601
    functionDepth: 1
    functionLinenumber: 4601
    functionLinenumberEnd: 4699
    functionName: gf_filter_get_stats
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 2
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - memset
    - strncmp
    - strcmp
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_get_stats(GF_Filter *f, GF_FilterStats *stats)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_stats
      Src: /src/gpac/src/filter_core/filter_session.c:4705,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:4705,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - session
    - idx
    - stats
    argTypes:
    - GF_FilterSession*
    - u32
    - GF_FilterStats*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4706
      start: 4701
    functionDepth: 2
    functionLinenumber: 4701
    functionLinenumberEnd: 4706
    functionName: gf_fs_get_filter_stats
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 5
    functionsReached:
    - gf_filter_get_stats
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_get_filter_stats(GF_FilterSession *session, u32 idx,
      GF_FilterStats *stats)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:4711,1
    - Dst: GF_FilterSession*::ui_event_proc
      Src: /src/gpac/src/filter_core/filter_session.c:4712,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:4713,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - session
    - uievt
    argTypes:
    - GF_FilterSession*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4715
      start: 4708
    functionDepth: 0
    functionLinenumber: 4708
    functionLinenumberEnd: 4715
    functionName: gf_fs_ui_event
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    - GF_FilterSession*::ui_event_proc
    linkageType: ''
    returnType: Bool
    signature: Bool gf_fs_ui_event(GF_FilterSession *session, GF_Event *uievt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:4720,1
    - Dst: gf_filter_sess_build_graph
      Src: /src/gpac/src/filter_core/filter_session.c:4721,1
    - Dst: gf_filter_sess_reset_graph
      Src: /src/gpac/src/filter_core/filter_session.c:4724,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - fsess
    - for_load
    argTypes:
    - GF_FilterSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4726
      start: 4717
    functionDepth: 1
    functionLinenumber: 4717
    functionLinenumberEnd: 4726
    functionName: gf_fs_check_graph_load
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_sess_build_graph
    - gf_filter_sess_reset_graph
    linkageType: ''
    returnType: void
    signature: void gf_fs_check_graph_load(GF_FilterSession *fsess, Bool for_load)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session.c:4735,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:4748,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:4749,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:4751,1
    - Dst: gf_filter_new
      Src: /src/gpac/src/filter_core/filter_session.c:4757,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filter_core/filter_session.c:4759,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 4
    argNames:
    - fsess
    - name
    - flags
    - e
    argTypes:
    - GF_FilterSession*
    - char*
    - u32
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4762
      start: 4728
    functionDepth: 1
    functionLinenumber: 4728
    functionLinenumberEnd: 4762
    functionName: gf_fs_new_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 3
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - sprintf
    - strchr
    - gf_filter_new
    - gf_filter_set_name
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_fs_new_filter(GF_FilterSession *fsess, const char *name,
      u32 flags, GF_Err *e)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - cbk
    - evt
    argTypes:
    - void*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4773
      start: 4770
    functionDepth: 0
    functionLinenumber: 4770
    functionLinenumberEnd: 4773
    functionName: fsess_on_event
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool fsess_on_event(void *cbk, GF_Event *evt)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_FilterSession*::ext_gl_callback
      Src: /src/gpac/src/filter_core/filter_session.c:4783,1
    - Dst: gf_opengl_init
      Src: /src/gpac/src/filter_core/filter_session.c:4784,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:4789,1
    - Dst: gf_module_load
      Src: /src/gpac/src/filter_core/filter_session.c:4794,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter_session.c:4794,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4797,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter_session.c:4800,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filter_core/filter_session.c:4801,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter_session.c:4808,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_session.c:4809,1
    - Dst: GF_FilterSession*::gl_driver::Setup
      Src: /src/gpac/src/filter_core/filter_session.c:4811,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4813,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/filter_core/filter_session.c:4814,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session.c:4820,1
    - Dst: GF_FilterSession*::gl_driver::ProcessEvent
      Src: /src/gpac/src/filter_core/filter_session.c:4828,1
    - Dst: gf_opengl_init
      Src: /src/gpac/src/filter_core/filter_session.c:4831,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 47
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4834
      start: 4775
    functionDepth: 6
    functionLinenumber: 4775
    functionLinenumberEnd: 4834
    functionName: gf_fs_check_gl_provider
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_opengl_init
    - gf_opts_set_key
    - sscanf
    - GF_FilterSession*::gl_driver::Setup
    - GF_LOG
    - gf_modules_close_interface
    - GF_FilterSession*::gl_driver::ProcessEvent
    - gf_module_load
    - GF_FilterSession*::ext_gl_callback
    - gf_list_count
    - memset
    - gf_opts_get_key
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_fs_check_gl_provider(GF_FilterSession *session)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_FilterSession*::ext_gl_callback
      Src: /src/gpac/src/filter_core/filter_session.c:4840,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session.c:4844,1
    - Dst: GF_FilterSession*::gl_driver::ProcessEvent
      Src: /src/gpac/src/filter_core/filter_session.c:4846,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - session
    - do_activate
    argTypes:
    - GF_FilterSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4847
      start: 4836
    functionDepth: 0
    functionLinenumber: 4836
    functionLinenumberEnd: 4847
    functionName: gf_fs_set_gl
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - GF_FilterSession*::ext_gl_callback
    - memset
    - GF_FilterSession*::gl_driver::ProcessEvent
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_fs_set_gl(GF_FilterSession *session, Bool do_activate)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4861
      start: 4849
    functionDepth: 0
    functionLinenumber: 4849
    functionLinenumberEnd: 4861
    functionName: gf_filter_claim_opengl_provider
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_VideoOutput
    signature: GF_VideoOutput *gf_filter_claim_opengl_provider(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 2
    argNames:
    - filter
    - video_out
    argTypes:
    - GF_Filter*
    - GF_VideoOutput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4880
      start: 4863
    functionDepth: 0
    functionLinenumber: 4863
    functionLinenumberEnd: 4880
    functionName: gf_filter_unclaim_opengl_provider
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_filter_unclaim_opengl_provider(GF_Filter *filter, GF_VideoOutput
      * video_out)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4886
      start: 4883
    functionDepth: 0
    functionLinenumber: 4883
    functionLinenumberEnd: 4886
    functionName: gf_filter_claim_opengl_provider
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void *gf_filter_claim_opengl_provider(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - filter
    - vout
    argTypes:
    - GF_Filter*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4890
      start: 4887
    functionDepth: 0
    functionLinenumber: 4887
    functionLinenumberEnd: 4890
    functionName: gf_filter_unclaim_opengl_provider
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_filter_unclaim_opengl_provider(GF_Filter *filter, void *vout)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_get_download_manager
      Src: /src/gpac/src/filter_core/filter_session.c:4900,1
    - Dst: gf_dm_get_data_rate
      Src: /src/gpac/src/filter_core/filter_session.c:4903,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - fs
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4907
      start: 4895
    functionDepth: 3
    functionLinenumber: 4895
    functionLinenumberEnd: 4907
    functionName: gf_fs_get_http_max_rate
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_dm_get_data_rate
    - gf_fs_get_download_manager
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_get_http_max_rate(GF_FilterSession *fs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_get_download_manager
      Src: /src/gpac/src/filter_core/filter_session.c:4915,1
    - Dst: gf_dm_set_data_rate
      Src: /src/gpac/src/filter_core/filter_session.c:4918,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - fs
    - rate
    argTypes:
    - GF_FilterSession*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4921
      start: 4909
    functionDepth: 3
    functionLinenumber: 4909
    functionLinenumberEnd: 4921
    functionName: gf_fs_set_http_max_rate
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_dm_set_data_rate
    - gf_fs_get_download_manager
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_set_http_max_rate(GF_FilterSession *fs, u32 rate)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_get_download_manager
      Src: /src/gpac/src/filter_core/filter_session.c:4928,1
    - Dst: gf_dm_get_global_rate
      Src: /src/gpac/src/filter_core/filter_session.c:4931,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - fs
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4935
      start: 4923
    functionDepth: 3
    functionLinenumber: 4923
    functionLinenumberEnd: 4935
    functionName: gf_fs_get_http_rate
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_fs_get_download_manager
    - gf_dm_get_global_rate
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_get_http_rate(GF_FilterSession *fs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_load_source_dest_internal
      Src: /src/gpac/src/filter_core/filter_session.c:4942,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - session
    - url
    - parent_url
    argTypes:
    - GF_FilterSession*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4944
      start: 4937
    functionDepth: 10
    functionLinenumber: 4937
    functionLinenumberEnd: 4944
    functionName: gf_fs_is_supported_source
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_fs_load_source_dest_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_is_supported_source(GF_FilterSession *session, const
      char *url, const char *parent_url)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:4958,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_session.c:4960,1
    - Dst: GF_Filter*::freg::process_event
      Src: /src/gpac/src/filter_core/filter_session.c:4961,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_session.c:4962,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:4964,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:4969,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/filter_core/filter_session.c:4973,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:4974,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session.c:4978,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:4979,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:4982,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:4988,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_session.c:4989,1
    - Dst: GF_Filter*::freg::process_event
      Src: /src/gpac/src/filter_core/filter_session.c:4990,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_session.c:4991,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:4993,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session.c:4997,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 51
    argCount: 4
    argNames:
    - fs
    - f
    - evt
    - upstream
    argTypes:
    - GF_FilterSession*
    - GF_Filter*
    - GF_FilterEvent*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5001
      start: 4947
    functionDepth: 3
    functionLinenumber: 4947
    functionLinenumberEnd: 5001
    functionName: gf_fs_fire_event
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 2
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_logs_thread_tag
    - gf_logs_thread_untag
    - gf_fs_lock_filters
    - gf_filter_send_event
    - gf_list_count
    - gf_mx_v
    - GF_Filter*::freg::process_event
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_fire_event(GF_FilterSession *fs, GF_Filter *f, GF_FilterEvent
      *evt, Bool upstream)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - session
    - on_create_destroy
    - udta
    - force_sync
    argTypes:
    - GF_FilterSession*
    - gf_fs_on_filter_creation
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5011
      start: 5003
    functionDepth: 0
    functionLinenumber: 5003
    functionLinenumberEnd: 5011
    functionName: gf_fs_set_filter_creation_callback
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_set_filter_creation_callback(GF_FilterSession *session,
      gf_fs_on_filter_creation on_create_destroy, void *udta, Bool force_sync)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5018
      start: 5013
    functionDepth: 0
    functionLinenumber: 5013
    functionLinenumberEnd: 5018
    functionName: gf_fs_get_rt_udta
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_fs_get_rt_udta(GF_FilterSession *session)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:5024,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - session
    - on_gl_activate
    - udta
    argTypes:
    - GF_FilterSession*
    - gf_fs_gl_activate
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5028
      start: 5020
    functionDepth: 1
    functionLinenumber: 5020
    functionLinenumberEnd: 5028
    functionName: gf_fs_set_external_gl_provider
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_set_external_gl_provider(GF_FilterSession *session,
      gf_fs_gl_activate on_gl_activate, void *udta)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:5035,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filter_core/filter_session.c:5036,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:5037,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filter_core/filter_session.c:5039,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filter_core/filter_session.c:5041,1
    - Dst: strcpy
      Src: /src/gpac/src/filter_core/filter_session.c:5042,1
    - Dst: strcpy
      Src: /src/gpac/src/filter_core/filter_session.c:5043,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 5
    argNames:
    - loc
    - parent
    - path
    - relocated_path
    - localized_rel_path
    argTypes:
    - GF_FSLocales*
    - char*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5047
      start: 5031
    functionDepth: 5
    functionLinenumber: 5031
    functionLinenumberEnd: 5047
    functionName: fsess_find_res
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_strdup
    - strcpy
    - gf_url_concatenate
    - gf_fopen
    linkageType: ''
    returnType: Bool
    signature: Bool fsess_find_res(GF_FSLocales *loc, char *parent, char *path, char
      *relocated_path, char *localized_rel_path)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:5061,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:5061,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:5061,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:5067,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_session.c:5067,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter_session.c:5070,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:5071,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:5071,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:5078,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:5081,1
    - Dst: strcpy
      Src: /src/gpac/src/filter_core/filter_session.c:5084,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:5094,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter_session.c:5096,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:5096,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:5099,1
    - Dst: fsess_find_res
      Src: /src/gpac/src/filter_core/filter_session.c:5100,1
    - Dst: strrchr
      Src: /src/gpac/src/filter_core/filter_session.c:5105,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:5108,1
    - Dst: fsess_find_res
      Src: /src/gpac/src/filter_core/filter_session.c:5109,1
    - Dst: fsess_find_res
      Src: /src/gpac/src/filter_core/filter_session.c:5114,1
    - Dst: strcpy
      Src: /src/gpac/src/filter_core/filter_session.c:5117,1
    - Dst: strcpy
      Src: /src/gpac/src/filter_core/filter_session.c:5118,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 47
    argCount: 5
    argNames:
    - __self
    - locales_parent_path
    - rel_path
    - relocated_path
    - localized_rel_path
    argTypes:
    - void*
    - char*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5120
      start: 5053
    functionDepth: 6
    functionLinenumber: 5053
    functionLinenumberEnd: 5120
    functionName: fs_check_locales
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - strrchr
    - strcpy
    - sprintf
    - strstr
    - fsess_find_res
    - strncpy
    - strncmp
    - strnicmp
    - gf_opts_get_key
    - strcmp
    - strchr
    - strlen
    linkageType: ''
    returnType: Bool
    signature: Bool fs_check_locales(void *__self, const char *locales_parent_path,
      const char *rel_path, char *relocated_path, char *localized_rel_path)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:5128,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:5131,1
    - Dst: GF_URIRelocator*::relocate_uri
      Src: /src/gpac/src/filter_core/filter_session.c:5132,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 5
    argNames:
    - session
    - service_url
    - parent_url
    - out_relocated_url
    - out_localized_url
    argTypes:
    - GF_FilterSession*
    - char*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5137
      start: 5123
    functionDepth: 1
    functionLinenumber: 5123
    functionLinenumberEnd: 5137
    functionName: gf_fs_relocate_url
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - GF_URIRelocator*::relocate_uri
    linkageType: ''
    returnType: Bool
    signature: Bool gf_fs_relocate_url(GF_FilterSession *session, const char *service_url,
      const char *parent_url, char *out_relocated_url, char *out_localized_url)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_relocate_url
      Src: /src/gpac/src/filter_core/filter_session.c:5143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - filter
    - service_url
    - parent_url
    - out_relocated_url
    - out_localized_url
    argTypes:
    - GF_Filter*
    - char*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5144
      start: 5139
    functionDepth: 2
    functionLinenumber: 5139
    functionLinenumberEnd: 5144
    functionName: gf_filter_relocate_url
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_fs_relocate_url
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_relocate_url(GF_Filter *filter, const char *service_url,
      const char *parent_url, char *out_relocated_url, char *out_localized_url)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:5152,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:5153,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:5155,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:5161,1
    - Dst: gf_filter_get_arg
      Src: /src/gpac/src/filter_core/filter_session.c:5165,1
    - Dst: gf_filter_get_arg
      Src: /src/gpac/src/filter_core/filter_session.c:5166,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filter_core/filter_session.c:5168,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filter_core/filter_session.c:5169,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:5172,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5173
      start: 5146
    functionDepth: 1
    functionLinenumber: 5146
    functionLinenumberEnd: 5173
    functionName: gf_fs_send_deferred_play
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_filter_get_arg
    - gf_filter_pid_init_play_event
    - gf_list_count
    - gf_mx_v
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_send_deferred_play(GF_FilterSession *fsess)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:5180,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:5181,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:5182,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - fs
    - filter
    argTypes:
    - GF_FilterSession*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5186
      start: 5175
    functionDepth: 2
    functionLinenumber: 5175
    functionLinenumberEnd: 5186
    functionName: gf_fs_check_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    - gf_list_find
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_check_filter(GF_FilterSession *fs, GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - fs
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5192
      start: 5189
    functionDepth: 0
    functionLinenumber: 5189
    functionLinenumberEnd: 5192
    functionName: gf_fs_force_non_blocking
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_fs_force_non_blocking(GF_FilterSession *fs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:5196,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5199
      start: 5193
    functionDepth: 0
    functionLinenumber: 5193
    functionLinenumberEnd: 5199
    functionName: gf_filter_on_main_thread
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_th_id
    linkageType: ''
    returnType: Bool
    signature: Bool gf_filter_on_main_thread(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionName: gf_void_del
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_void_del(void *p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:42,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - p
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionName: gf_filterpacket_del
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_filterpacket_del(void *p)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:55,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/src/filter_core/filter.c:58,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:60,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:61,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:62,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:63,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:64,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:65,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:66,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:68,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:69,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:71,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter.c:80,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter.c:82,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:83,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:97,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:99,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:104,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:104,1
    - Dst: strrchr
      Src: /src/gpac/src/filter_core/filter.c:111,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter.c:113,1
    - Dst: strrchr
      Src: /src/gpac/src/filter_core/filter.c:118,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/filter_core/filter.c:120,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:124,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:131,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 73
    argCount: 4
    argNames:
    - sess
    - path
    - needs_escape
    - for_source
    argTypes:
    - GF_FilterSession*
    - char*
    - Bool*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 48
    functionDepth: 4
    functionLinenumber: 48
    functionLinenumberEnd: 135
    functionName: gf_fs_path_escape_colon_ex
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_dir_exists
    - sscanf
    - snprintf
    - strrchr
    - gf_file_exists
    - sprintf
    - strstr
    - strncmp
    - strcmp
    - gf_url_colon_suffix
    - strchr
    linkageType: ''
    returnType: char
    signature: char *gf_fs_path_escape_colon_ex(GF_FilterSession *sess, const char
      *path, Bool *needs_escape, Bool for_source)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_path_escape_colon_ex
      Src: /src/gpac/src/filter_core/filter.c:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sess
    - path
    argTypes:
    - GF_FilterSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 136
    functionDepth: 5
    functionLinenumber: 136
    functionLinenumberEnd: 139
    functionName: gf_fs_path_escape_colon
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_fs_path_escape_colon_ex
    linkageType: ''
    returnType: char
    signature: char *gf_fs_path_escape_colon(GF_FilterSession *sess, const char *path)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_path_escape_colon_ex
      Src: /src/gpac/src/filter_core/filter.c:143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - f
    - path
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 140
    functionDepth: 5
    functionLinenumber: 140
    functionLinenumberEnd: 144
    functionName: gf_filter_path_escape_colon
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_fs_path_escape_colon_ex
    linkageType: ''
    returnType: char
    signature: char *gf_filter_path_escape_colon(GF_Filter *f, const char *path)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:157,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:161,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:162,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:167,1
    - Dst: gf_fs_path_escape_colon
      Src: /src/gpac/src/filter_core/filter.c:169,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:175,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:176,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 3
    argNames:
    - fsess
    - in_args
    - is_dst
    argTypes:
    - GF_FilterSession*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 146
    functionDepth: 6
    functionLinenumber: 146
    functionLinenumberEnd: 180
    functionName: gf_filter_get_args_stripped
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_fs_path_escape_colon
    - strncmp
    - sprintf
    - strstr
    linkageType: ''
    returnType: char
    signature: char *gf_filter_get_args_stripped(GF_FilterSession *fsess, const char
      *in_args, Bool is_dst)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_args_stripped
      Src: /src/gpac/src/filter_core/filter.c:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 182
    functionDepth: 7
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionName: gf_filter_get_dst_args
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached:
    - gf_filter_get_args_stripped
    linkageType: ''
    returnType: char
    signature: char *gf_filter_get_dst_args(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 189
    functionName: gf_filter_get_src_args
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *gf_filter_get_src_args(GF_Filter *filter)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:195,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:199,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:203,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:205,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:210,1
    - Dst: gf_fs_path_escape_colon
      Src: /src/gpac/src/filter_core/filter.c:213,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:217,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:220,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 191
    functionDepth: 6
    functionLinenumber: 191
    functionLinenumberEnd: 223
    functionName: gf_filter_get_dst_name
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached:
    - gf_list_get
    - gf_strdup
    - sprintf
    - strstr
    - gf_fs_path_escape_colon
    linkageType: ''
    returnType: char
    signature: char *gf_filter_get_dst_name(GF_Filter *filter)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:246,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:249,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:253,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:255,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:257,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:259,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:261,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:263,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:265,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:267,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:269,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:275,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:277,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:279,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 49
    argCount: 5
    argNames:
    - fsess
    - out_args
    - in_args
    - is_src
    - first_sep_inserted
    argTypes:
    - GF_FilterSession*
    - char**
    - char*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 239
    functionDepth: 1
    functionLinenumber: 239
    functionLinenumberEnd: 291
    functionName: filter_push_args
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - strncmp
    - strchr
    - gf_dynstrcat
    linkageType: ''
    returnType: void
    signature: void filter_push_args(GF_FilterSession *fsess, char **out_args, char
      *in_args, Bool is_src, Bool first_sep_inserted)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:305,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter.c:310,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:312,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter.c:326,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filter_core/filter.c:327,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter.c:333,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filter_core/filter.c:334,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter.c:336,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter.c:339,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter.c:340,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter.c:341,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter.c:344,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter.c:346,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter.c:347,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter.c:348,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter.c:349,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:354,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:355,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:356,1
    - Dst: gf_filter_get_args_stripped
      Src: /src/gpac/src/filter_core/filter.c:373,1
    - Dst: gf_filter_get_args_stripped
      Src: /src/gpac/src/filter_core/filter.c:378,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:383,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:396,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:396,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:396,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:398,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:399,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:414,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:433,1
    - Dst: filter_push_args
      Src: /src/gpac/src/filter_core/filter.c:440,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:443,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:444,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:447,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:448,1
    - Dst: filter_push_args
      Src: /src/gpac/src/filter_core/filter.c:452,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:453,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:454,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:459,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:462,1
    - Dst: gf_filter_new_finalize
      Src: /src/gpac/src/filter_core/filter.c:465,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:470,1
    - Dst: gf_filter_new_finalize
      Src: /src/gpac/src/filter_core/filter.c:478,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:479,1
    - Dst: gf_filter_new_finalize
      Src: /src/gpac/src/filter_core/filter.c:483,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:485,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:489,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter.c:489,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filter_core/filter.c:490,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:496,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:501,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:510,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:514,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:515,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:520,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:526,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:527,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 175
    argCount: 8
    argNames:
    - fsess
    - freg
    - src_args
    - dst_args
    - arg_type
    - err
    - multi_sink_target
    - is_dynamic_filter
    argTypes:
    - GF_FilterSession*
    - GF_FilterRegister*
    - char*
    - char*
    - GF_FilterArgType
    - GF_Err*
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 293
    functionDepth: 7
    functionLinenumber: 293
    functionLinenumberEnd: 532
    functionName: gf_filter_new
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 4
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - gf_list_count
    - gf_mx_new
    - gf_filter_new_finalize
    - gf_list_new
    - gf_strdup
    - gf_list_get
    - snprintf
    - sprintf
    - gf_list_add
    - gf_dynstrcat
    - gf_mx_p
    - GF_LOG
    - strstr
    - gf_mx_v
    - safe_int_inc
    - gf_error_to_string
    - gf_filter_setup_failure
    - strlen
    - filter_push_args
    - strcmp
    - gf_filter_get_args_stripped
    - gf_fq_new
    linkageType: ''
    returnType: GF_Filter
    signature: GF_Filter *gf_filter_new(GF_FilterSession *fsess, const GF_FilterRegister
      *freg, const char *src_args, const char *dst_args, GF_FilterArgType arg_type,
      GF_Err *err, GF_Filter *multi_sink_target, Bool is_dynamic_filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter.c:538,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter.c:539,1
    - Dst: gf_filter_pid_post_init_task
      Src: /src/gpac/src/filter_core/filter.c:540,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 534
    functionDepth: 4
    functionLinenumber: 534
    functionLinenumberEnd: 546
    functionName: gf_filter_check_pending_pids
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_fq_pop
    - gf_filter_pid_post_init_task
    - gf_fq_count
    linkageType: ''
    returnType: void
    signature: void gf_filter_check_pending_pids(GF_Filter *filter)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filter_core/filter.c:550,1
    - Dst: gf_filter_parse_args
      Src: /src/gpac/src/filter_core/filter.c:552,1
    - Dst: gf_filter_force_main_thread
      Src: /src/gpac/src/filter_core/filter.c:561,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:573,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:575,1
    - Dst: GF_Filter*::freg::initialize
      Src: /src/gpac/src/filter_core/filter.c:578,1
    - Dst: GF_Filter*::freg::initialize
      Src: /src/gpac/src/filter_core/filter.c:581,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:583,1
    - Dst: gf_filter_parse_args
      Src: /src/gpac/src/filter_core/filter.c:589,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:590,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:593,1
    - Dst: GF_Filter*::freg::update_arg
      Src: /src/gpac/src/filter_core/filter.c:594,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:595,1
    - Dst: gf_filter_check_pending_pids
      Src: /src/gpac/src/filter_core/filter.c:602,1
    - Dst: jsfs_on_filter_created
      Src: /src/gpac/src/filter_core/filter.c:605,1
    - Dst: GF_Filter*::session::on_filter_create_destroy
      Src: /src/gpac/src/filter_core/filter.c:608,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 43
    argCount: 3
    argNames:
    - filter
    - args
    - arg_type
    argTypes:
    - GF_Filter*
    - char*
    - GF_FilterArgType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 610
      start: 548
    functionDepth: 9
    functionLinenumber: 548
    functionLinenumberEnd: 610
    functionName: gf_filter_new_finalize
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached:
    - gf_filter_set_name
    - gf_logs_thread_tag
    - gf_logs_thread_untag
    - GF_Filter*::freg::initialize
    - gf_filter_force_main_thread
    - GF_Filter*::freg::update_arg
    - GF_Filter*::session::on_filter_create_destroy
    - strchr
    - gf_filter_parse_args
    - jsfs_on_filter_created
    - gf_filter_check_pending_pids
    - FSESS_CHECK_THREAD
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_filter_new_finalize(GF_Filter *filter, const char *args,
      GF_FilterArgType arg_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:616,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filter_core/filter.c:617,1
    - Dst: gf_filter_packet_destroy
      Src: /src/gpac/src/filter_core/filter.c:618,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:620,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 623
      start: 612
    functionDepth: 2
    functionLinenumber: 612
    functionLinenumberEnd: 623
    functionName: gf_filter_reset_pending_packets
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_pop_front
    - gf_filter_packet_destroy
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_filter_reset_pending_packets(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:632,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - _task
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 633
      start: 629
    functionDepth: 0
    functionLinenumber: 629
    functionLinenumberEnd: 633
    functionName: task_del
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 5
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void task_del(void *_task)
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:637,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:638,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:639,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:640,1
    - Dst: jsfs_on_filter_destroyed
      Src: /src/gpac/src/filter_core/filter.c:644,1
    - Dst: GF_Filter*::session::on_filter_create_destroy
      Src: /src/gpac/src/filter_core/filter.c:648,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:651,1
    - Dst: gf_fs_check_gl_provider
      Src: /src/gpac/src/filter_core/filter.c:652,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:658,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:659,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:660,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:661,1
    - Dst: gf_filter_reset_pending_packets
      Src: /src/gpac/src/filter_core/filter.c:667,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:670,1
    - Dst: gf_filter_pid_del
      Src: /src/gpac/src/filter_core/filter.c:671,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter.c:671,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:673,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:676,1
    - Dst: gf_filter_pid_inst_del
      Src: /src/gpac/src/filter_core/filter.c:677,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter.c:677,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:679,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:682,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:683,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:684,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:685,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:686,1
    - Dst: gf_fq_del
      Src: /src/gpac/src/filter_core/filter.c:688,1
    - Dst: gf_fq_del
      Src: /src/gpac/src/filter_core/filter.c:689,1
    - Dst: reset_filter_args
      Src: /src/gpac/src/filter_core/filter.c:691,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:692,1
    - Dst: gf_fq_del
      Src: /src/gpac/src/filter_core/filter.c:695,1
    - Dst: gf_fq_del
      Src: /src/gpac/src/filter_core/filter.c:697,1
    - Dst: gf_fq_del
      Src: /src/gpac/src/filter_core/filter.c:699,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/filter_core/filter.c:701,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/filter_core/filter.c:703,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:705,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:706,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:707,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:708,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:709,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:710,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:711,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:712,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:713,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:714,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:715,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:719,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:720,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:722,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:723,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:724,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:725,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:726,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:739,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:741,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter.c:747,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:751,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:753,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:755,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:757,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:760,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:763,1
    - Dst: gf_log_pop_extra
      Src: /src/gpac/src/filter_core/filter.c:767,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:768,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:769,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:770,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:776,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:781,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter.c:782,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:792,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter.c:793,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:795,1
    - Dst: gf_filter_sess_reset_graph
      Src: /src/gpac/src/filter_core/filter.c:797,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:798,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:799,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:801,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 136
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 802
      start: 635
    functionDepth: 9
    functionLinenumber: 635
    functionLinenumberEnd: 802
    functionName: gf_filter_del
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 3
    functionsReached:
    - gf_free
    - gf_props_reset_single
    - gf_list_count
    - jsfs_on_filter_destroyed
    - gf_log_pop_extra
    - gf_filter_pid_del
    - gf_fs_check_gl_provider
    - gf_assert
    - gf_list_pop_back
    - gf_list_get
    - gf_filter_pid_inst_del
    - gf_mx_p
    - gf_fq_del
    - GF_LOG
    - gf_filter_sess_reset_graph
    - GF_Filter*::session::on_filter_create_destroy
    - gf_mx_v
    - gf_list_del_item
    - gf_list_del
    - safe_int_dec
    - gf_filter_reset_pending_packets
    - reset_filter_args
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void gf_filter_del(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:807,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 810
      start: 804
    functionDepth: 1
    functionLinenumber: 804
    functionLinenumberEnd: 810
    functionName: gf_filter_get_udta
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 615
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_get_udta(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:815,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 812
    functionDepth: 1
    functionLinenumber: 812
    functionLinenumberEnd: 819
    functionName: gf_filter_get_name
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 17
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_filter_get_name(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:824,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:826,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:827,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - filter
    - name
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 828
      start: 821
    functionDepth: 1
    functionLinenumber: 821
    functionLinenumberEnd: 828
    functionName: gf_filter_set_name
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 17
    functionsReached:
    - gf_free
    - gf_assert
    - gf_strdup
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_set_name(GF_Filter *filter, const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:832,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:834,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:835,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - filter
    - ID
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 836
      start: 830
    functionDepth: 1
    functionLinenumber: 830
    functionLinenumberEnd: 836
    functionName: gf_filter_set_id
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_assert
    - gf_strdup
    linkageType: ''
    returnType: void
    signature: void gf_filter_set_id(GF_Filter *filter, const char *ID)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:841,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 838
    functionDepth: 1
    functionLinenumber: 838
    functionLinenumberEnd: 843
    functionName: gf_filter_get_status
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_filter_get_status(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:848,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 850
      start: 845
    functionDepth: 1
    functionLinenumber: 845
    functionLinenumberEnd: 850
    functionName: gf_filter_get_bytes_done
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_get_bytes_done(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:857,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:858,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:860,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 862
      start: 853
    functionDepth: 0
    functionLinenumber: 853
    functionLinenumberEnd: 862
    functionName: gf_filter_reset_source
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 6
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_reset_source(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:866,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:868,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:871,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:874,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:876,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:878,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:880,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:884,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:887,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - filter
    - sources_ID
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 888
      start: 864
    functionDepth: 1
    functionLinenumber: 864
    functionLinenumberEnd: 888
    functionName: gf_filter_set_sources
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_assert
    - gf_strdup
    - strstr
    - gf_mx_v
    - gf_dynstrcat
    - strlen
    linkageType: ''
    returnType: void
    signature: void gf_filter_set_sources(GF_Filter *filter, const char *sources_ID)
  - BBCount: 55
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:984,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:989,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filter_core/filter.c:990,1
    - Dst: gf_filter_force_main_thread
      Src: /src/gpac/src/filter_core/filter.c:991,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1000,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1018,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1020,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1033,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filter_core/filter.c:1039,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1046,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filter_core/filter.c:1046,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1050,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 150
    argCount: 3
    argNames:
    - filter
    - a
    - argv
    argTypes:
    - GF_Filter*
    - GF_FilterArgs*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1052
      start: 890
    functionDepth: 4
    functionLinenumber: 890
    functionLinenumberEnd: 1052
    functionName: gf_filter_set_arg
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_props_type_is_enum
    - gf_fileio_is_main_thread
    - gf_filter_force_main_thread
    - strncmp
    - gf_props_get_type_name
    linkageType: ''
    returnType: void
    signature: void gf_filter_set_arg(GF_Filter *filter, const GF_FilterArgs *a, GF_PropertyValue
      *argv)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1070,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1071,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1076,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1077,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filter_core/filter.c:1086,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter.c:1089,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filter_core/filter.c:1091,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filter_core/filter.c:1093,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:1095,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:1096,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:1097,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:1098,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1099,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:1105,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter.c:1111,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filter_core/filter.c:1111,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filter_core/filter.c:1112,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filter_core/filter.c:1113,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:1113,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1114,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter.c:1117,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:1120,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:1122,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:1128,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter.c:1143,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter.c:1149,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:1150,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:1154,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:1155,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:1156,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:1157,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:1158,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1159,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 81
    argCount: 3
    argNames:
    - filter
    - pid
    - value
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1166
      start: 1055
    functionDepth: 1
    functionLinenumber: 1055
    functionLinenumberEnd: 1166
    functionName: filter_solve_prop_template
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - gf_props_dump
    - gf_list_count
    - strchr
    - gf_strdup
    - gf_list_get
    - sprintf
    - strncmp
    - gf_list_add
    - gf_dynstrcat
    - gf_crc_32
    - gf_filter_pid_get_property_str
    - gf_props_get_id
    - sscanf
    - strstr
    - strncpy
    - strlen
    - gf_filter_pid_get_property
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: void
    signature: void filter_solve_prop_template(GF_Filter *filter, GF_FilterPid *pid,
      char **value)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter.c:1173,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:1175,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:1176,1
    - Dst: filter_solve_prop_template
      Src: /src/gpac/src/filter_core/filter.c:1177,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter.c:1178,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1179,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter.c:1183,1
    - Dst: gf_opts_default_shared_directory
      Src: /src/gpac/src/filter_core/filter.c:1184,1
    - Dst: strcat
      Src: /src/gpac/src/filter_core/filter.c:1185,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1188,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter.c:1191,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter.c:1191,1
    - Dst: gf_sys_solve_path
      Src: /src/gpac/src/filter_core/filter.c:1192,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1195,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter.c:1198,1
    - Dst: gf_fs_solve_js_script
      Src: /src/gpac/src/filter_core/filter.c:1201,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1204,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter.c:1207,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter.c:1208,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter.c:1211,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter.c:1212,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter.c:1216,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 43
    argCount: 6
    argNames:
    - fs
    - f
    - type
    - name
    - value
    - enum_values
    argTypes:
    - GF_FilterSession*
    - GF_Filter*
    - u32
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1218
      start: 1168
    functionDepth: 6
    functionLinenumber: 1168
    functionLinenumberEnd: 1218
    functionName: gf_filter_parse_prop_solve_env_var
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_free
    - strcat
    - gf_strdup
    - gf_fs_solve_js_script
    - GF_LOG
    - strstr
    - strnicmp
    - gf_opts_default_shared_directory
    - gf_opts_get_key
    - gf_sys_solve_path
    - gf_props_parse_value
    - filter_solve_prop_template
    linkageType: ''
    returnType: GF_PropertyValue
    signature: GF_PropertyValue gf_filter_parse_prop_solve_env_var(GF_FilterSession
      *fs, GF_Filter *f, u32 type, const char *name, const char *value, const char
      *enum_values)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1231,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1235,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1241,1
    - Dst: gf_filter_parse_prop_solve_env_var
      Src: /src/gpac/src/filter_core/filter.c:1249,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:1254,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:1258,1
    - Dst: GF_Filter*::freg::update_arg
      Src: /src/gpac/src/filter_core/filter.c:1259,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:1260,1
    - Dst: gf_filter_set_arg
      Src: /src/gpac/src/filter_core/filter.c:1264,1
    - Dst: jsfs_on_filter_arg_update
      Src: /src/gpac/src/filter_core/filter.c:1267,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1270,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter.c:1270,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1273,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 45
    argCount: 4
    argNames:
    - filter
    - arg_name
    - arg_value
    - is_sync_call
    argTypes:
    - GF_Filter*
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1278
      start: 1220
    functionDepth: 9
    functionLinenumber: 1220
    functionLinenumberEnd: 1278
    functionName: gf_filter_update_arg_apply
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_logs_thread_tag
    - gf_logs_thread_untag
    - GF_LOG
    - gf_filter_set_arg
    - GF_Filter*::freg::update_arg
    - strcmp
    - jsfs_on_filter_arg_update
    - gf_error_to_string
    - gf_filter_parse_prop_solve_env_var
    - FSESS_CHECK_THREAD
    linkageType: ''
    returnType: Bool
    signature: Bool gf_filter_update_arg_apply(GF_Filter *filter, const char *arg_name,
      const char *arg_value, Bool is_sync_call)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_update_arg_apply
      Src: /src/gpac/src/filter_core/filter.c:1283,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1288,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter.c:1291,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:1293,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:1296,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:1298,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter.c:1299,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:1299,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:1302,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:1303,1
    - Dst: gf_fs_send_update
      Src: /src/gpac/src/filter_core/filter.c:1305,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filter_core/filter.c:1307,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:1308,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:1311,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:1313,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter.c:1314,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:1314,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:1317,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:1318,1
    - Dst: gf_fs_send_update
      Src: /src/gpac/src/filter_core/filter.c:1320,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:1323,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:1326,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1328,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1331,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1332,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1333,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1334
      start: 1279
    functionDepth: 10
    functionLinenumber: 1279
    functionLinenumberEnd: 1334
    functionName: gf_filter_update_arg_task
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_list_new
    - gf_list_get
    - gf_list_reset
    - GF_LOG
    - gf_list_find
    - gf_list_count
    - gf_mx_v
    - gf_list_add
    - gf_filter_update_arg_apply
    - gf_fs_send_update
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_filter_update_arg_task(GF_FSTask *task)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1341,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1342,1
    - Dst: gf_log_pop_extra
      Src: /src/gpac/src/filter_core/filter.c:1343,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1344,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter.c:1346,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:1350,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1359,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1360,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:1368,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1374,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1375,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1376,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1377,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1378,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1379,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1379,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1385,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1388,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1397,1
    - Dst: gf_log_parse_tool
      Src: /src/gpac/src/filter_core/filter.c:1400,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1402,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter.c:1412,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter.c:1413,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1427,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 84
    argCount: 2
    argNames:
    - filter
    - _logs
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1428
      start: 1338
    functionDepth: 2
    functionLinenumber: 1338
    functionLinenumberEnd: 1428
    functionName: filter_parse_logs
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_strdup
    - GF_SAFEALLOC
    - GF_LOG
    - strstr
    - strcmp
    - gf_log_pop_extra
    - gf_log_parse_tool
    - strchr
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void filter_parse_logs(GF_Filter *filter, const char *_logs)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_has_filter_global_args
      Src: /src/gpac/src/filter_core/filter.c:1439,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:1440,1
    - Dst: gf_sys_get_argc
      Src: /src/gpac/src/filter_core/filter.c:1441,1
    - Dst: gf_sys_get_arg
      Src: /src/gpac/src/filter_core/filter.c:1447,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1454,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1455,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1456,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1464,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/src/filter_core/filter.c:1469,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:1474,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1477,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1481,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter.c:1482,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1487,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter.c:1488,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1493,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter.c:1494,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1500,1
    - Dst: stricmp
      Src: /src/gpac/src/filter_core/filter.c:1502,1
    - Dst: stricmp
      Src: /src/gpac/src/filter_core/filter.c:1503,1
    - Dst: stricmp
      Src: /src/gpac/src/filter_core/filter.c:1504,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1507,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1513,1
    - Dst: filter_parse_logs
      Src: /src/gpac/src/filter_core/filter.c:1517,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter.c:1524,1
    - Dst: MIN
      Src: /src/gpac/src/filter_core/filter.c:1525,1
    - Dst: gf_fs_push_arg
      Src: /src/gpac/src/filter_core/filter.c:1526,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter.c:1537,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter.c:1543,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter.c:1545,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter.c:1548,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter.c:1550,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter.c:1553,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter.c:1555,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter.c:1559,1
    - Dst: filter_parse_logs
      Src: /src/gpac/src/filter_core/filter.c:1560,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1565,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter.c:1566,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 115
    argCount: 5
    argNames:
    - filter
    - sec_name
    - arg_name
    - arg_val
    - first_arg
    argTypes:
    - GF_Filter*
    - char*
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1573
      start: 1431
    functionDepth: 5
    functionLinenumber: 1431
    functionLinenumberEnd: 1573
    functionName: gf_filter_load_arg_config
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_fs_push_arg
    - gf_sys_mark_arg_used
    - gf_sys_has_filter_global_args
    - GF_LOG
    - filter_parse_logs
    - MIN
    - strncpy
    - strncmp
    - gf_props_parse_value
    - gf_opts_get_key
    - strcmp
    - gf_sys_get_arg
    - stricmp
    - gf_sys_get_argc
    - strchr
    - strlen
    linkageType: ''
    returnType: char
    signature: char *gf_filter_load_arg_config(GF_Filter *filter, const char *sec_name,
      const char *arg_name, const char *arg_val, Bool first_arg)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key_count
      Src: /src/gpac/src/filter_core/filter.c:1580,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:1582,1
    - Dst: gf_opts_get_key_name
      Src: /src/gpac/src/filter_core/filter.c:1587,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1593,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter.c:1600,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter.c:1603,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:1607,1
    - Dst: GF_Filter*::freg::update_arg
      Src: /src/gpac/src/filter_core/filter.c:1608,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:1609,1
    - Dst: gf_sys_has_filter_global_meta_args
      Src: /src/gpac/src/filter_core/filter.c:1611,1
    - Dst: gf_sys_has_filter_global_args
      Src: /src/gpac/src/filter_core/filter.c:1613,1
    - Dst: gf_sys_get_argc
      Src: /src/gpac/src/filter_core/filter.c:1618,1
    - Dst: gf_sys_get_arg
      Src: /src/gpac/src/filter_core/filter.c:1625,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1633,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1634,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1635,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1643,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter.c:1649,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter.c:1654,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:1658,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter.c:1660,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:1665,1
    - Dst: GF_Filter*::freg::update_arg
      Src: /src/gpac/src/filter_core/filter.c:1666,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:1667,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1669,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/filter_core/filter.c:1669,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 74
    argCount: 2
    argNames:
    - sec_name
    - filter
    argTypes:
    - char*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1675
      start: 1575
    functionDepth: 5
    functionLinenumber: 1575
    functionLinenumberEnd: 1675
    functionName: gf_filter_load_meta_args_config
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_logs_thread_tag
    - gf_logs_thread_untag
    - gf_sys_has_filter_global_meta_args
    - memset
    - gf_opts_get_key
    - gf_sys_get_arg
    - strchr
    - FSESS_CHECK_THREAD
    - gf_sys_has_filter_global_args
    - memcpy
    - strncmp
    - GF_LOG
    - GF_Filter*::freg::update_arg
    - strncpy
    - gf_sys_get_argc
    - strlen
    - gf_opts_get_key_name
    - gf_opts_get_key_count
    - strcmp
    - gf_errno_str
    linkageType: ''
    returnType: void
    signature: void gf_filter_load_meta_args_config(const char *sec_name, GF_Filter
      *filter)
  - BBCount: 150
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter.c:1686,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1720,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1730,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1745,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:1751,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:1753,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1763,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1763,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:1764,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1766,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1770,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1770,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1771,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1772,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1773,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1774,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1775,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1776,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1777,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1778,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1779,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1780,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1781,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1782,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1783,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1784,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1785,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1789,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1790,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1791,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1792,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1793,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1794,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1795,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1796,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1798,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1799,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1801,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter.c:1814,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter.c:1816,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1817,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:1829,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:1830,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:1837,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:1843,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1858,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1860,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1868,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1919,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1920,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1928,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:1934,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1938,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1938,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1938,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1957,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1957,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1958,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1960,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1962,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1968,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1971,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1972,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1973,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1974,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1975,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter.c:1976,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1979,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter.c:1982,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1988,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:1998,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter.c:2003,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter.c:2005,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:2008,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2020,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2020,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2040,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2043,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:2050,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:2050,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:2053,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:2062,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2072,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2076,1
    - Dst: gf_opts_get_key_restricted
      Src: /src/gpac/src/filter_core/filter.c:2079,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2082,1
    - Dst: gf_filter_parse_prop_solve_env_var
      Src: /src/gpac/src/filter_core/filter.c:2085,1
    - Dst: gf_filter_set_arg
      Src: /src/gpac/src/filter_core/filter.c:2092,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:2094,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:2095,1
    - Dst: GF_Filter*::freg::update_arg
      Src: /src/gpac/src/filter_core/filter.c:2096,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:2097,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter.c:2100,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:2107,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2111,1
    - Dst: gf_filter_set_id
      Src: /src/gpac/src/filter_core/filter.c:2113,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2118,1
    - Dst: gf_filter_set_sources
      Src: /src/gpac/src/filter_core/filter.c:2120,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2125,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2127,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2127,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2127,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2137,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filter_core/filter.c:2139,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2144,1
    - Dst: atoi
      Src: /src/gpac/src/filter_core/filter.c:2146,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2152,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2158,1
    - Dst: atoi
      Src: /src/gpac/src/filter_core/filter.c:2160,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2165,1
    - Dst: atoi
      Src: /src/gpac/src/filter_core/filter.c:2167,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2171,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2174,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2179,1
    - Dst: filter_parse_logs
      Src: /src/gpac/src/filter_core/filter.c:2184,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2192,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2194,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2196,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2198,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2203,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter.c:2212,1
    - Dst: gf_filter_parse_prop_solve_env_var
      Src: /src/gpac/src/filter_core/filter.c:2217,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter.c:2221,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:2222,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2227,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2233,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:2235,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:2236,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2242,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:2243,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:2244,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2249,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2255,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2258,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2258,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2258,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2267,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:2268,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:2269,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2274,1
    - Dst: stricmp
      Src: /src/gpac/src/filter_core/filter.c:2275,1
    - Dst: stricmp
      Src: /src/gpac/src/filter_core/filter.c:2276,1
    - Dst: stricmp
      Src: /src/gpac/src/filter_core/filter.c:2277,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter.c:2283,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filter_core/filter.c:2287,1
    - Dst: gf_feof
      Src: /src/gpac/src/filter_core/filter.c:2289,1
    - Dst: gf_fgets
      Src: /src/gpac/src/filter_core/filter.c:2293,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:2295,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/filter_core/filter.c:2297,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2298,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:2303,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:2311,1
    - Dst: filter_parse_dyn_args
      Src: /src/gpac/src/filter_core/filter.c:2316,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filter_core/filter.c:2319,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2321,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2324,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter.c:2330,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:2331,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:2332,1
    - Dst: GF_Filter*::freg::update_arg
      Src: /src/gpac/src/filter_core/filter.c:2333,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:2334,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:2335,1
    - Dst: gf_fs_push_arg
      Src: /src/gpac/src/filter_core/filter.c:2350,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:2363,1
    CyclomaticComplexity: 294
    EdgeCount: 294
    ICount: 530
    argCount: 10
    argNames:
    - filter
    - args
    - arg_type
    - for_script
    - szSrc
    - szDst
    - szEscape
    - szSecName
    - has_meta_args
    - argfile_level
    argTypes:
    - GF_Filter*
    - char*
    - GF_FilterArgType
    - Bool
    - char*
    - char*
    - char*
    - char*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2364
      start: 1677
    functionDepth: 7
    functionLinenumber: 1677
    functionLinenumberEnd: 2364
    functionName: filter_parse_dyn_args
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_logs_thread_tag
    - gf_logs_thread_untag
    - gf_props_reset_single
    - gf_file_exists
    - filter_parse_dyn_args
    - gf_fopen
    - atoi
    - strchr
    - FSESS_CHECK_THREAD
    - gf_realloc
    - gf_filter_set_sources
    - gf_strdup
    - gf_feof
    - gf_fs_push_arg
    - snprintf
    - gf_filter_set_id
    - strncmp
    - stricmp
    - gf_opts_get_key_restricted
    - gf_props_parse_value
    - sscanf
    - gf_utf8_is_legal
    - GF_LOG
    - gf_fgets
    - strstr
    - filter_parse_logs
    - strncpy
    - GF_Filter*::freg::update_arg
    - gf_filter_parse_prop_solve_env_var
    - gf_malloc
    - strlen
    - gf_filter_set_name
    - gf_fclose
    - gf_filter_set_arg
    - strcmp
    linkageType: ''
    returnType: void
    signature: void filter_parse_dyn_args(GF_Filter *filter, const char *args, GF_FilterArgType
      arg_type, Bool for_script, char *szSrc, char *szDst, char *szEscape, char *szSecName,
      Bool has_meta_args, u32 argfile_level)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2381,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter.c:2384,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2386,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter.c:2389,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:2393,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:2394,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:2395,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter.c:2397,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2416,1
    - Dst: gf_filter_load_arg_config
      Src: /src/gpac/src/filter_core/filter.c:2425,1
    - Dst: gf_filter_parse_prop_solve_env_var
      Src: /src/gpac/src/filter_core/filter.c:2430,1
    - Dst: gf_filter_set_arg
      Src: /src/gpac/src/filter_core/filter.c:2434,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:2436,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:2437,1
    - Dst: GF_Filter*::freg::update_arg
      Src: /src/gpac/src/filter_core/filter.c:2438,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:2439,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter.c:2440,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2443,1
    - Dst: gf_filter_load_meta_args_config
      Src: /src/gpac/src/filter_core/filter.c:2448,1
    - Dst: filter_parse_dyn_args
      Src: /src/gpac/src/filter_core/filter.c:2451,1
    - Dst: gf_filter_force_main_thread
      Src: /src/gpac/src/filter_core/filter.c:2462,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 62
    argCount: 4
    argNames:
    - filter
    - args
    - arg_type
    - for_script
    argTypes:
    - GF_Filter*
    - char*
    - GF_FilterArgType
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2465
      start: 2367
    functionDepth: 8
    functionLinenumber: 2367
    functionLinenumberEnd: 2465
    functionName: gf_filter_parse_args
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_filter_load_arg_config
    - gf_logs_thread_tag
    - snprintf
    - gf_logs_thread_untag
    - gf_props_reset_single
    - GF_LOG
    - gf_filter_set_arg
    - sprintf
    - gf_filter_force_main_thread
    - filter_parse_dyn_args
    - memset
    - GF_Filter*::freg::update_arg
    - strcmp
    - gf_filter_parse_prop_solve_env_var
    - gf_filter_load_meta_args_config
    - gf_malloc
    - FSESS_CHECK_THREAD
    linkageType: ''
    returnType: void
    signature: void gf_filter_parse_args(GF_Filter *filter, const char *args, GF_FilterArgType
      arg_type, Bool for_script)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter.c:2481,1
    - Dst: gf_filter_set_arg
      Src: /src/gpac/src/filter_core/filter.c:2483,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2486
      start: 2467
    functionDepth: 5
    functionLinenumber: 2467
    functionLinenumberEnd: 2486
    functionName: reset_filter_args
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - memset
    - gf_filter_set_arg
    linkageType: ''
    returnType: void
    signature: void reset_filter_args(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2496,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2498,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2501,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2504,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter.c:2505,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:2507,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:2508,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:2509,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter.c:2510,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:2513,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter.c:2516,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2520
      start: 2488
    functionDepth: 6
    functionLinenumber: 2488
    functionLinenumberEnd: 2520
    functionName: gf_filter_check_output_reconfig
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_mx_p
    - gf_list_get
    - gf_assert
    - gf_fs_post_task
    - gf_mx_v
    - safe_int_inc
    - gf_list_del_item
    - gf_props_del
    linkageType: ''
    returnType: void
    signature: void gf_filter_check_output_reconfig(GF_Filter *filter)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2533,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2538,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter.c:2544,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 21
    argCount: 2
    argNames:
    - src_pidinst
    - needs_flush
    argTypes:
    - GF_FilterPidInst*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2548
      start: 2522
    functionDepth: 1
    functionLinenumber: 2522
    functionLinenumberEnd: 2548
    functionName: filter_relink_get_upper_pid
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_fq_count
    linkageType: ''
    returnType: GF_FilterPidInst
    signature: GF_FilterPidInst *filter_relink_get_upper_pid(GF_FilterPidInst *src_pidinst,
      Bool *needs_flush)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: filter_relink_get_upper_pid
      Src: /src/gpac/src/filter_core/filter.c:2555,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2561,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter.c:2562,1
    - Dst: gf_filter_relink_dst
      Src: /src/gpac/src/filter_core/filter.c:2567,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2568
      start: 2550
    functionDepth: 2
    functionLinenumber: 2550
    functionLinenumberEnd: 2568
    functionName: gf_filter_relink_task
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_filter_relink_dst
    - gf_assert
    - filter_relink_get_upper_pid
    linkageType: ''
    returnType: void
    signature: void gf_filter_relink_task(GF_FSTask *task)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: filter_relink_get_upper_pid
      Src: /src/gpac/src/filter_core/filter.c:2585,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filter_core/filter.c:2586,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:2592,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter.c:2594,1
    - Dst: gf_fs_check_graph_load
      Src: /src/gpac/src/filter_core/filter.c:2599,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:2606,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:2608,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2612,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:2614,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter.c:2617,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:2619,1
    - Dst: gf_filter_pid_resolve_link_length
      Src: /src/gpac/src/filter_core/filter.c:2622,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:2627,1
    - Dst: gf_fs_check_graph_load
      Src: /src/gpac/src/filter_core/filter.c:2638,1
    - Dst: gf_fs_check_graph_load
      Src: /src/gpac/src/filter_core/filter.c:2643,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter.c:2648,1
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter.c:2649,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter.c:2650,1
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter.c:2651,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter.c:2654,1
    - Dst: gf_filter_renegotiate_output_dst
      Src: /src/gpac/src/filter_core/filter.c:2658,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 59
    argCount: 2
    argNames:
    - from_pidinst
    - reason
    argTypes:
    - GF_FilterPidInst*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2659
      start: 2570
    functionDepth: 6
    functionLinenumber: 2570
    functionLinenumberEnd: 2659
    functionName: gf_filter_relink_dst
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_send_event_internal
    - gf_mx_p
    - gf_list_get
    - gf_fs_post_disconnect_task
    - gf_filter_pid_resolve_link_length
    - gf_fs_post_task
    - GF_FEVT_INIT
    - filter_relink_get_upper_pid
    - safe_int_inc
    - gf_fatal_assert
    - gf_fs_check_graph_load
    - gf_mx_v
    - gf_filter_renegotiate_output_dst
    - gf_filter_pid_caps_match
    linkageType: ''
    returnType: void
    signature: void gf_filter_relink_dst(GF_FilterPidInst *from_pidinst, GF_Err reason)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2669,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2676,1
    - Dst: gf_fs_load_encoder
      Src: /src/gpac/src/filter_core/filter.c:2684,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:2688,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:2689,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:2690,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter.c:2696,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter.c:2697,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2701,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2702,1
    - Dst: gf_filter_remove_internal
      Src: /src/gpac/src/filter_core/filter.c:2706,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2710,1
    - Dst: gf_fs_check_graph_load
      Src: /src/gpac/src/filter_core/filter.c:2719,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:2721,1
    - Dst: gf_filter_pid_resolve_link_for_caps
      Src: /src/gpac/src/filter_core/filter.c:2722,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:2724,1
    - Dst: gf_filter_pid_resolve_link_for_caps
      Src: /src/gpac/src/filter_core/filter.c:2728,1
    - Dst: gf_fs_check_graph_load
      Src: /src/gpac/src/filter_core/filter.c:2738,1
    - Dst: gf_filter_pid_resolve_link
      Src: /src/gpac/src/filter_core/filter.c:2739,1
    - Dst: gf_fs_check_graph_load
      Src: /src/gpac/src/filter_core/filter.c:2742,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2745,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:2749,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter.c:2754,1
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter.c:2755,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter.c:2756,1
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter.c:2757,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter.c:2760,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:2767,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:2772,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2773,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2774,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:2787,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:2788,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter.c:2789,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filter_core/filter.c:2794,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:2796,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:2801,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:2802,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:2803,1
    - Dst: gf_filter_pid_post_connect_task
      Src: /src/gpac/src/filter_core/filter.c:2804,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter.c:2806,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 95
    argCount: 5
    argNames:
    - pid
    - filter
    - filter_dst
    - dst_pidi
    - src_pidi
    argTypes:
    - GF_FilterPid*
    - GF_Filter*
    - GF_Filter*
    - GF_FilterPidInst*
    - GF_FilterPidInst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2808
      start: 2663
    functionDepth: 6
    functionLinenumber: 2663
    functionLinenumberEnd: 2808
    functionName: gf_filter_renegotiate_output_dst
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_find
    - gf_filter_pid_resolve_link_for_caps
    - gf_fs_load_encoder
    - gf_assert
    - gf_strdup
    - gf_list_get
    - gf_fs_post_disconnect_task
    - gf_filter_pid_resolve_link
    - gf_fs_post_task
    - GF_FEVT_INIT
    - gf_list_add
    - gf_filter_remove_internal
    - gf_fs_check_graph_load
    - gf_filter_pid_caps_match
    - gf_filter_pid_send_event_internal
    - gf_mx_p
    - GF_LOG
    - safe_int_inc
    - gf_mx_v
    - gf_list_del_item
    - gf_list_del
    - gf_filter_pid_post_connect_task
    - gf_fatal_assert
    linkageType: ''
    returnType: void
    signature: void gf_filter_renegotiate_output_dst(GF_FilterPid *pid, GF_Filter
      *filter, GF_Filter *filter_dst, GF_FilterPidInst *dst_pidi, GF_FilterPidInst
      *src_pidi)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:2816,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2817,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2821,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2824,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2825,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:2831,1
    - Dst: GF_Filter*::freg::reconfigure_output
      Src: /src/gpac/src/filter_core/filter.c:2832,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:2833,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2840,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter.c:2840,1
    - Dst: gf_filter_pid_retry_caps_negotiate
      Src: /src/gpac/src/filter_core/filter.c:2841,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:2842,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2845,1
    - Dst: gf_filter_check_output_reconfig
      Src: /src/gpac/src/filter_core/filter.c:2847,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:2851,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2854,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter.c:2855,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter.c:2856,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:2862,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 43
    argCount: 2
    argNames:
    - filter
    - pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2864
      start: 2810
    functionDepth: 7
    functionLinenumber: 2810
    functionLinenumberEnd: 2864
    functionName: gf_filter_reconf_output
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_mx_p
    - gf_list_get
    - gf_assert
    - gf_logs_thread_tag
    - gf_filter_check_output_reconfig
    - gf_logs_thread_untag
    - GF_LOG
    - GF_Filter*::freg::reconfigure_output
    - gf_mx_v
    - gf_error_to_string
    - gf_filter_pid_retry_caps_negotiate
    - gf_list_del
    - gf_props_del
    linkageType: ''
    returnType: Bool
    signature: Bool gf_filter_reconf_output(GF_Filter *filter, GF_FilterPid *pid)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2869,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter.c:2870,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:2872,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2875,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:2886,1
    - Dst: gf_filter_pid_caps_negociate_match
      Src: /src/gpac/src/filter_core/filter.c:2889,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:2896,1
    - Dst: GF_Filter*::freg::reconfigure_output
      Src: /src/gpac/src/filter_core/filter.c:2897,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:2898,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2901,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2902,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2904,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter.c:2904,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2906,1
    - Dst: gf_filter_pid_retry_caps_negotiate
      Src: /src/gpac/src/filter_core/filter.c:2908,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2912,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter.c:2912,1
    - Dst: gf_filter_check_output_reconfig
      Src: /src/gpac/src/filter_core/filter.c:2915,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2918,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2926,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter.c:2927,1
    - Dst: gf_filter_renegotiate_output_dst
      Src: /src/gpac/src/filter_core/filter.c:2933,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2940,1
    - Dst: gf_filter_renegotiate_output_dst
      Src: /src/gpac/src/filter_core/filter.c:2942,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2945,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter.c:2946,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter.c:2947,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:2951,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:2956,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 61
    argCount: 2
    argNames:
    - filter
    - force_afchain_insert
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2957
      start: 2866
    functionDepth: 7
    functionLinenumber: 2866
    functionLinenumberEnd: 2957
    functionName: gf_filter_renegotiate_output
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_mx_p
    - gf_assert
    - gf_list_get
    - gf_logs_thread_tag
    - gf_filter_check_output_reconfig
    - gf_logs_thread_untag
    - GF_LOG
    - gf_list_find
    - gf_list_count
    - GF_Filter*::freg::reconfigure_output
    - gf_mx_v
    - gf_filter_renegotiate_output_dst
    - gf_error_to_string
    - gf_filter_pid_caps_negociate_match
    - gf_filter_pid_retry_caps_negotiate
    - gf_list_del
    - gf_props_del
    linkageType: ''
    returnType: void
    signature: void gf_filter_renegotiate_output(GF_Filter *filter, Bool force_afchain_insert)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_renegotiate_output
      Src: /src/gpac/src/filter_core/filter.c:2963,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2964
      start: 2959
    functionDepth: 8
    functionLinenumber: 2959
    functionLinenumberEnd: 2964
    functionName: gf_filter_renegotiate_output_task
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_filter_renegotiate_output
    linkageType: ''
    returnType: void
    signature: void gf_filter_renegotiate_output_task(GF_FSTask *task)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - fs
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2971
      start: 2966
    functionDepth: 0
    functionLinenumber: 2966
    functionLinenumberEnd: 2971
    functionName: session_should_abort
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool session_should_abort(GF_FilterSession *fs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: session_should_abort
      Src: /src/gpac/src/filter_core/filter.c:2975,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:2981,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2983,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2984,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter.c:2985,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:2992,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:2998,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3011,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3013,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3015,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 28
    argCount: 2
    argNames:
    - filter
    - task
    argTypes:
    - GF_Filter*
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3016
      start: 2973
    functionDepth: 1
    functionLinenumber: 2973
    functionLinenumberEnd: 3016
    functionName: gf_filter_check_pending_tasks
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_mx_p
    - gf_assert
    - session_should_abort
    - GF_LOG
    - safe_int_inc
    - gf_mx_v
    linkageType: ''
    returnType: void
    signature: void gf_filter_check_pending_tasks(GF_Filter *filter, GF_FSTask *task)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mem_get_stats
      Src: /src/gpac/src/filter_core/filter.c:3029,1
    - Dst: GF_Filter*::freg::process
      Src: /src/gpac/src/filter_core/filter.c:3030,1
    - Dst: gf_mem_get_stats
      Src: /src/gpac/src/filter_core/filter.c:3033,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3063
      start: 3019
    functionDepth: 1
    functionLinenumber: 3019
    functionLinenumberEnd: 3063
    functionName: gf_filter_process_check_alloc
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - GF_Filter*::freg::process
    - gf_mem_get_stats
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_filter_process_check_alloc(GF_Filter *filter)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter.c:3079,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter.c:3085,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3087,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter.c:3087,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/src/filter_core/filter.c:3091,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter.c:3093,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3099,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter.c:3099,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3101,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter.c:3101,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3116,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3118,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filter_core/filter.c:3119,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3122,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter.c:3123,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3125,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 54
    argCount: 3
    argNames:
    - filter
    - e
    - for_reconnection
    argTypes:
    - GF_Filter*
    - GF_Err
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3129
      start: 3066
    functionDepth: 2
    functionLinenumber: 3066
    functionLinenumberEnd: 3129
    functionName: check_filter_error
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_filter_connections_pending
    - gf_list_get
    - gf_filter_pid_set_discard
    - GF_LOG
    - gf_list_find
    - gf_filter_pid_set_eos
    - gf_mx_v
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE check_filter_error(GF_Filter *filter, GF_Err e, Bool for_reconnection)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3137,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3138,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3139,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3145,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3146,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3148,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3153,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3158,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter.c:3167,1
    - Dst: check_filter_error
      Src: /src/gpac/src/filter_core/filter.c:3168,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3173,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3183,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3188,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3189,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3192,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3195,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3198,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3201,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3203,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3212,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:3219,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filter_core/filter.c:3220,1
    - Dst: gf_filter_pck_send_internal
      Src: /src/gpac/src/filter_core/filter.c:3221,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:3224,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filter_core/filter.c:3225,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3227,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:3231,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:3234,1
    - Dst: gf_filter_renegotiate_output
      Src: /src/gpac/src/filter_core/filter.c:3239,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3242,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:3246,1
    - Dst: gf_filter_process_check_alloc
      Src: /src/gpac/src/filter_core/filter.c:3250,1
    - Dst: GF_Filter*::freg::process
      Src: /src/gpac/src/filter_core/filter.c:3253,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:3255,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3257,1
    - Dst: gf_filter_check_pending_pids
      Src: /src/gpac/src/filter_core/filter.c:3260,1
    - Dst: session_should_abort
      Src: /src/gpac/src/filter_core/filter.c:3264,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3273,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3278,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3283,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3285,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3292,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3294,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3296,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:3298,1
    - Dst: gf_filter_relink_dst
      Src: /src/gpac/src/filter_core/filter.c:3300,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3303,1
    - Dst: check_filter_error
      Src: /src/gpac/src/filter_core/filter.c:3306,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3317,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3324,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter.c:3331,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3337,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filter_core/filter.c:3338,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3345,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3348,1
    - Dst: gf_filter_check_pending_tasks
      Src: /src/gpac/src/filter_core/filter.c:3349,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3352,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 153
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3355
      start: 3131
    functionDepth: 8
    functionLinenumber: 3131
    functionLinenumberEnd: 3355
    functionName: gf_filter_process_task
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - session_should_abort
    - gf_logs_thread_tag
    - gf_logs_thread_untag
    - GF_Filter*::freg::process
    - gf_list_count
    - gf_filter_check_pending_tasks
    - gf_filter_pid_get_packet
    - gf_filter_check_pending_pids
    - FSESS_CHECK_THREAD
    - gf_assert
    - gf_list_get
    - gf_filter_renegotiate_output
    - gf_list_add
    - gf_list_insert
    - gf_mx_p
    - GF_LOG
    - gf_filter_process_check_alloc
    - gf_filter_relink_dst
    - gf_mx_v
    - gf_list_del_item
    - gf_sys_clock_high_res
    - gf_list_del
    - check_filter_error
    - gf_filter_pck_send_internal
    - gf_list_pop_front
    - gf_fq_count
    linkageType: ''
    returnType: void
    signature: void gf_filter_process_task(GF_FSTask *task)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3369,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:3372,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filter_core/filter.c:3373,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filter_core/filter.c:3374,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:3376,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:3383,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:3387,1
    - Dst: gf_filter_process_check_alloc
      Src: /src/gpac/src/filter_core/filter.c:3391,1
    - Dst: GF_Filter*::freg::process
      Src: /src/gpac/src/filter_core/filter.c:3394,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:3396,1
    - Dst: gf_filter_check_pending_pids
      Src: /src/gpac/src/filter_core/filter.c:3401,1
    - Dst: session_should_abort
      Src: /src/gpac/src/filter_core/filter.c:3405,1
    - Dst: check_filter_error
      Src: /src/gpac/src/filter_core/filter.c:3412,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 38
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3413
      start: 3357
    functionDepth: 5
    functionLinenumber: 3357
    functionLinenumberEnd: 3413
    functionName: gf_filter_process_inline
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - session_should_abort
    - gf_logs_thread_tag
    - gf_logs_thread_untag
    - gf_list_pop_front
    - GF_LOG
    - gf_filter_process_check_alloc
    - GF_Filter*::freg::process
    - gf_filter_check_pending_pids
    - gf_list_count
    - FSESS_CHECK_THREAD
    - check_filter_error
    - gf_list_del
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void gf_filter_process_inline(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_send_update
      Src: /src/gpac/src/filter_core/filter.c:3418,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 5
    argNames:
    - filter
    - fid
    - name
    - val
    - propagate_mask
    argTypes:
    - GF_Filter*
    - char*
    - char*
    - char*
    - GF_EventPropagateType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3419
      start: 3415
    functionDepth: 7
    functionLinenumber: 3415
    functionLinenumberEnd: 3419
    functionName: gf_filter_send_update
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 4
    functionsReached:
    - gf_fs_send_update
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_send_update(GF_Filter *filter, const char *fid,
      const char *name, const char *val, GF_EventPropagateType propagate_mask)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3427,1
    - Dst: gf_filter_get_args_stripped
      Src: /src/gpac/src/filter_core/filter.c:3432,1
    - Dst: gf_filter_get_args_stripped
      Src: /src/gpac/src/filter_core/filter.c:3434,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:3439,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:3440,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:3441,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:3444,1
    - Dst: memmove
      Src: /src/gpac/src/filter_core/filter.c:3445,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:3452,1
    - Dst: gf_filter_new
      Src: /src/gpac/src/filter_core/filter.c:3455,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:3456,1
    - Dst: gf_filter_new
      Src: /src/gpac/src/filter_core/filter.c:3458,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3463,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - filter
    - source_filter
    argTypes:
    - GF_Filter*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3466
      start: 3421
    functionDepth: 8
    functionLinenumber: 3421
    functionLinenumberEnd: 3466
    functionName: gf_filter_clone
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_get
    - gf_strdup
    - memmove
    - GF_LOG
    - gf_filter_new
    - strstr
    - gf_filter_get_args_stripped
    - strlen
    - gf_dynstrcat
    linkageType: ''
    returnType: GF_Filter
    signature: GF_Filter *gf_filter_clone(GF_Filter *filter, GF_Filter *source_filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3472
      start: 3468
    functionDepth: 0
    functionLinenumber: 3468
    functionLinenumberEnd: 3472
    functionName: gf_filter_get_ipid_count
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 28
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_get_ipid_count(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3477,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3478
      start: 3474
    functionDepth: 1
    functionLinenumber: 3474
    functionLinenumberEnd: 3478
    functionName: GF_FilterPid *gf_filter_get_ipid(GF_Filter *filter, u32 idx)
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterPid *gf_filter_get_ipid(GF_Filter *filter, u32 idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3484
      start: 3480
    functionDepth: 0
    functionLinenumber: 3480
    functionLinenumberEnd: 3484
    functionName: gf_filter_get_opid_count
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 22
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_get_opid_count(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3489,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3490
      start: 3486
    functionDepth: 1
    functionLinenumber: 3486
    functionLinenumberEnd: 3490
    functionName: GF_FilterPid *gf_filter_get_opid(GF_Filter *filter, u32 idx)
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterPid *gf_filter_get_opid(GF_Filter *filter, u32 idx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter.c:3502,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3508,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3509,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:3512,1
    - Dst: gf_fs_post_task_ex
      Src: /src/gpac/src/filter_core/filter.c:3513,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:3514,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3515,1
    - Dst: gf_fs_post_task_ex
      Src: /src/gpac/src/filter_core/filter.c:3517,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3519,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3520,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter.c:3525,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3529,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3531,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 24
    argCount: 2
    argNames:
    - filter
    - use_direct_dispatch
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3532
      start: 3492
    functionDepth: 5
    functionLinenumber: 3492
    functionLinenumberEnd: 3532
    functionName: gf_filter_post_process_task_internal
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_assert
    - GF_LOG
    - gf_fq_count
    - safe_int_inc
    - gf_mx_v
    - gf_fs_post_task_ex
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: void
    signature: void gf_filter_post_process_task_internal(GF_Filter *filter, Bool use_direct_dispatch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_post_process_task_internal
      Src: /src/gpac/src/filter_core/filter.c:3537,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3538
      start: 3534
    functionDepth: 6
    functionLinenumber: 3534
    functionLinenumberEnd: 3538
    functionName: gf_filter_post_process_task
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 61
    functionsReached:
    - gf_filter_post_process_task_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_post_process_task(GF_Filter *filter)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter.c:3553,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filter_core/filter.c:3560,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter.c:3572,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3576,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 2
    argNames:
    - filter
    - us_until_next
    argTypes:
    - GF_Filter*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3577
      start: 3539
    functionDepth: 7
    functionLinenumber: 3539
    functionLinenumberEnd: 3577
    functionName: gf_filter_ask_rt_reschedule
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 35
    functionsReached:
    - GF_LOG
    - gf_sys_clock_high_res
    - gf_filter_post_process_task
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_ask_rt_reschedule(GF_Filter *filter, u32 us_until_next)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter.c:3590,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 3
    argNames:
    - filter
    - source_filter
    - udta
    argTypes:
    - GF_Filter*
    - GF_Filter*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3592
      start: 3579
    functionDepth: 1
    functionLinenumber: 3579
    functionLinenumberEnd: 3592
    functionName: gf_filter_set_setup_failure_callback
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 9
    functionsReached:
    - gf_filter_post_remove
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_set_setup_failure_callback(GF_Filter *filter, GF_Filter
      *source_filter, Bool (*on_setup_error)(GF_Filter *f, void *on_setup_error_udta,
      GF_Err e), void *udta)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:3609,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:3615,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:3617,1
    - Dst: GF_Filter*::freg::finalize
      Src: /src/gpac/src/filter_core/filter.c:3618,1
    - Dst: gf_logs_thread_tag_del
      Src: /src/gpac/src/filter_core/filter.c:3619,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3621,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:3623,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3625,1
    - Dst: gf_filter_reset_pending_packets
      Src: /src/gpac/src/filter_core/filter.c:3629,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3631,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3633,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:3635,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter.c:3636,1
    - Dst: gf_filter_instance_detach_pid
      Src: /src/gpac/src/filter_core/filter.c:3637,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:3640,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter.c:3642,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3644,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter.c:3647,1
    - Dst: gf_filter_pid_inst_check_delete
      Src: /src/gpac/src/filter_core/filter.c:3650,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filter_core/filter.c:3657,1
    - Dst: gf_filter_pid_del
      Src: /src/gpac/src/filter_core/filter.c:3658,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3660,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter.c:3662,1
    - Dst: gf_filter_del
      Src: /src/gpac/src/filter_core/filter.c:3664,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 43
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3667
      start: 3602
    functionDepth: 10
    functionLinenumber: 3602
    functionLinenumberEnd: 3667
    functionName: gf_filter_setup_failure_task
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_logs_thread_tag
    - gf_filter_pid_inst_check_delete
    - gf_list_count
    - gf_fq_pop
    - gf_filter_pid_del
    - FSESS_CHECK_THREAD
    - gf_list_get
    - gf_list_pop_back
    - gf_logs_thread_tag_del
    - GF_Filter*::freg::finalize
    - gf_mx_p
    - gf_list_reset
    - GF_LOG
    - gf_filter_del
    - gf_mx_v
    - gf_filter_instance_detach_pid
    - gf_list_del_item
    - gf_filter_reset_pending_packets
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_filter_setup_failure_task(GF_FSTask *task)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: struct _gf_filter_setup_failure*::filter::on_setup_error
      Src: /src/gpac/src/filter_core/filter.c:3673,1
    - Dst: gf_fs_post_task_class
      Src: /src/gpac/src/filter_core/filter.c:3679,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:3681,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3683
      start: 3669
    functionDepth: 6
    functionLinenumber: 3669
    functionLinenumberEnd: 3683
    functionName: gf_filter_setup_failure_notify_task
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fs_post_task_class
    - struct _gf_filter_setup_failure*::filter::on_setup_error
    linkageType: ''
    returnType: void
    signature: void gf_filter_setup_failure_notify_task(GF_FSTask *task)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter.c:3691,1
    - Dst: gf_fs_post_task_class
      Src: /src/gpac/src/filter_core/filter.c:3700,1
    - Dst: gf_fs_post_task_class
      Src: /src/gpac/src/filter_core/filter.c:3703,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - filter
    - reason
    - force_disconnect
    argTypes:
    - GF_Filter*
    - GF_Err
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3705
      start: 3685
    functionDepth: 6
    functionLinenumber: 3685
    functionLinenumberEnd: 3705
    functionName: gf_filter_notification_failure
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 6
    functionsReached:
    - gf_fs_post_task_class
    - gf_malloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_notification_failure(GF_Filter *filter, GF_Err
      reason, Bool force_disconnect)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3721,1
    - Dst: gf_filter_reset_pending_packets
      Src: /src/gpac/src/filter_core/filter.c:3728,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3730,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3733,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:3736,1
    - Dst: gf_filter_instance_detach_pid
      Src: /src/gpac/src/filter_core/filter.c:3738,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:3740,1
    - Dst: gf_fs_post_pid_instance_delete_task
      Src: /src/gpac/src/filter_core/filter.c:3745,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3747,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3757,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter.c:3757,1
    - Dst: gf_filter_notification_failure
      Src: /src/gpac/src/filter_core/filter.c:3760,1
    - Dst: gf_filter_notification_failure
      Src: /src/gpac/src/filter_core/filter.c:3764,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 38
    argCount: 2
    argNames:
    - filter
    - reason
    argTypes:
    - GF_Filter*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3766
      start: 3707
    functionDepth: 7
    functionLinenumber: 3707
    functionLinenumberEnd: 3766
    functionName: gf_filter_setup_failure
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 37
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - GF_LOG
    - gf_filter_reset_pending_packets
    - gf_filter_notification_failure
    - gf_list_count
    - gf_mx_v
    - gf_filter_instance_detach_pid
    - gf_list_del_item
    - gf_fs_post_pid_instance_delete_task
    - gf_error_to_string
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_setup_failure(GF_Filter *filter, GF_Err reason)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3773,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - udta
    - item
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3774
      start: 3770
    functionDepth: 1
    functionLinenumber: 3770
    functionLinenumberEnd: 3774
    functionName: task_postponed_log
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void task_postponed_log(void *udta, void *item)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter.c:3781,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3789,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filter_core/filter.c:3795,1
    - Dst: gf_fq_enum
      Src: /src/gpac/src/filter_core/filter.c:3796,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3801,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter.c:3802,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter.c:3805,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:3808,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:3810,1
    - Dst: GF_Filter*::freg::finalize
      Src: /src/gpac/src/filter_core/filter.c:3811,1
    - Dst: gf_logs_thread_tag_del
      Src: /src/gpac/src/filter_core/filter.c:3812,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3815,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:3817,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3819,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3822,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3824,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:3826,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter.c:3827,1
    - Dst: gf_filter_instance_detach_pid
      Src: /src/gpac/src/filter_core/filter.c:3828,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3830,1
    - Dst: gf_filter_del
      Src: /src/gpac/src/filter_core/filter.c:3832,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 37
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3835
      start: 3777
    functionDepth: 10
    functionLinenumber: 3777
    functionLinenumberEnd: 3835
    functionName: gf_filter_remove_task
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_mx_p
    - gf_assert
    - gf_list_pop_back
    - gf_logs_thread_tag
    - gf_logs_thread_tag_del
    - gf_log_tool_level_on
    - gf_fq_enum
    - GF_LOG
    - gf_filter_del
    - gf_fq_count
    - gf_list_count
    - gf_fq_pop
    - gf_mx_v
    - gf_list_del_item
    - gf_filter_instance_detach_pid
    - GF_Filter*::freg::finalize
    - FSESS_CHECK_THREAD
    linkageType: ''
    returnType: void
    signature: void gf_filter_remove_task(GF_FSTask *task)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3841,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3842,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3843,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:3845,1
    - Dst: gf_fs_post_task_ex
      Src: /src/gpac/src/filter_core/filter.c:3847,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3848
      start: 3837
    functionDepth: 5
    functionLinenumber: 3837
    functionLinenumberEnd: 3848
    functionName: gf_filter_post_remove
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_assert
    - safe_int_inc
    - gf_fs_post_task_ex
    linkageType: ''
    returnType: void
    signature: void gf_filter_post_remove(GF_Filter *filter)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_try_lock
      Src: /src/gpac/src/filter_core/filter.c:3860,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3862,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3866,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3875,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:3882,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3884,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter.c:3889,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:3892,1
    - Dst: gf_filter_pid_del
      Src: /src/gpac/src/filter_core/filter.c:3893,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3897,1
    - Dst: gf_filter_tag_remove
      Src: /src/gpac/src/filter_core/filter.c:3898,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3901,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter.c:3902,1
    - Dst: gf_mx_try_lock
      Src: /src/gpac/src/filter_core/filter.c:3903,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3907,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 47
    argCount: 4
    argNames:
    - filter
    - source_filter
    - until_filter
    - keep_end_connections
    argTypes:
    - GF_Filter*
    - GF_Filter*
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3908
      start: 3850
    functionDepth: 1
    functionLinenumber: 3850
    functionLinenumberEnd: 3908
    functionName: gf_filter_tag_remove
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_fs_post_disconnect_task
    - gf_mx_try_lock
    - gf_list_count
    - gf_filter_tag_remove
    - gf_mx_v
    - gf_filter_pid_del
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_filter_tag_remove(GF_Filter *filter, GF_Filter *source_filter,
      GF_Filter *until_filter, Bool keep_end_connections)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter.c:3927,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3930,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3932,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3938,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3941,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3944,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3947,1
    - Dst: gf_filter_tag_remove
      Src: /src/gpac/src/filter_core/filter.c:3950,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter.c:3956,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter.c:3962,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3963,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3968,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3975,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3981,1
    - Dst: gf_filter_remove_internal
      Src: /src/gpac/src/filter_core/filter.c:3988,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3991,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 53
    argCount: 3
    argNames:
    - filter
    - until_filter
    - keep_end_connections
    argTypes:
    - GF_Filter*
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3992
      start: 3910
    functionDepth: 6
    functionLinenumber: 3910
    functionLinenumberEnd: 3992
    functionName: gf_filter_remove_internal
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached:
    - gf_mx_p
    - gf_assert
    - gf_list_get
    - gf_fs_post_disconnect_task
    - GF_LOG
    - gf_list_find
    - gf_filter_tag_remove
    - gf_filter_post_remove
    - gf_mx_v
    - gf_filter_remove_internal
    linkageType: ''
    returnType: void
    signature: void gf_filter_remove_internal(GF_Filter *filter, GF_Filter *until_filter,
      Bool keep_end_connections)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_remove_internal
      Src: /src/gpac/src/filter_core/filter.c:3997,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - filter
    - src_filter
    argTypes:
    - GF_Filter*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3998
      start: 3994
    functionDepth: 7
    functionLinenumber: 3994
    functionLinenumberEnd: 3998
    functionName: gf_filter_remove_src
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 10
    functionsReached:
    - gf_filter_remove_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_remove_src(GF_Filter *filter, GF_Filter *src_filter)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:4006,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4012,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:4022,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter.c:4025,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4030,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filter_core/filter.c:4031,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4036,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter.c:4042,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filter_core/filter.c:4043,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter.c:4045,1
    - Dst: gf_filter_remove_internal
      Src: /src/gpac/src/filter_core/filter.c:4049,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filter_core/filter.c:4056,1
    - Dst: gf_filter_remove
      Src: /src/gpac/src/filter_core/filter.c:4059,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:4063,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter.c:4065,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filter_core/filter.c:4067,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter.c:4068,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter.c:4073,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:4076,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 48
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4077
      start: 4000
    functionDepth: 7
    functionLinenumber: 4000
    functionLinenumberEnd: 4077
    functionName: gf_filter_remove_local
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_mx_p
    - gf_list_get
    - gf_assert
    - gf_fs_post_disconnect_task
    - gf_filter_pid_set_discard
    - gf_filter_pid_remove
    - GF_FEVT_INIT
    - gf_filter_post_remove
    - gf_mx_v
    - gf_filter_remove_internal
    - gf_filter_pid_send_event
    - gf_filter_remove
    linkageType: ''
    returnType: void
    signature: void gf_filter_remove_local(GF_FSTask *task)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:4083,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter.c:4085,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4086
      start: 4079
    functionDepth: 6
    functionLinenumber: 4079
    functionLinenumberEnd: 4086
    functionName: gf_filter_remove
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 7
    functionsReached:
    - safe_int_inc
    - gf_fs_post_task
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_remove(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_remove_internal
      Src: /src/gpac/src/filter_core/filter.c:4097,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4101,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4103,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter.c:4105,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - filter
    - dst_filter
    argTypes:
    - GF_Filter*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4109
      start: 4089
    functionDepth: 7
    functionLinenumber: 4089
    functionLinenumberEnd: 4109
    functionName: gf_filter_remove_dst
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_fs_post_disconnect_task
    - gf_filter_remove_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_remove_dst(GF_Filter *filter, GF_Filter *dst_filter)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_reset_pending_packets
      Src: /src/gpac/src/filter_core/filter.c:4121,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:4123,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter.c:4124,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter.c:4126,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:4128,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:4130,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:4133,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:4135,1
    - Dst: GF_Filter*::freg::finalize
      Src: /src/gpac/src/filter_core/filter.c:4136,1
    - Dst: gf_logs_thread_tag_del
      Src: /src/gpac/src/filter_core/filter.c:4137,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:4141,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:4151,1
    - Dst: reset_filter_args
      Src: /src/gpac/src/filter_core/filter.c:4164,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:4165,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:4168,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:4184,1
    - Dst: gf_fs_load_source_dest_internal
      Src: /src/gpac/src/filter_core/filter.c:4188,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:4189,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:4193,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:4198,1
    - Dst: gf_filter_swap_source_register
      Src: /src/gpac/src/filter_core/filter.c:4199,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:4202,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4203,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:4204,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4208,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:4212,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:4214,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:4216,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filter_core/filter.c:4223,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:4224,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 89
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4226
      start: 4112
    functionDepth: 10
    functionLinenumber: 4112
    functionLinenumberEnd: 4226
    functionName: gf_filter_swap_source_register
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_logs_thread_tag
    - gf_list_count
    - FSESS_CHECK_THREAD
    - gf_list_get
    - gf_list_pop_back
    - gf_logs_thread_tag_del
    - gf_fs_post_task
    - gf_list_add
    - GF_Filter*::freg::finalize
    - gf_mx_p
    - GF_LOG
    - gf_filter_swap_source_register
    - gf_mx_v
    - gf_filter_setup_failure
    - gf_filter_reset_pending_packets
    - reset_filter_args
    - gf_fs_load_source_dest_internal
    - strcmp
    linkageType: ''
    returnType: Bool
    signature: Bool gf_filter_swap_source_register(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4238,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:4242,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filter_core/filter.c:4243,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:4244,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filter_core/filter.c:4248,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:4250,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filter_core/filter.c:4251,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:4253,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filter_core/filter.c:4256,1
    - Dst: gf_filter_pck_set_clock_type
      Src: /src/gpac/src/filter_core/filter.c:4257,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filter_core/filter.c:4266,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4271
      start: 4228
    functionDepth: 1
    functionLinenumber: 4228
    functionLinenumberEnd: 4271
    functionName: gf_filter_forward_clock
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_filter_pck_new_shared
    - gf_filter_pck_set_cts
    - GF_LOG
    - gf_mx_v
    - gf_filter_pck_set_clock_type
    - gf_list_last
    - gf_timestamp_rescale
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void gf_filter_forward_clock(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_load_source_dest_internal
      Src: /src/gpac/src/filter_core/filter.c:4278,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - filter
    - url
    - parent_url
    argTypes:
    - GF_Filter*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4280
      start: 4273
    functionDepth: 10
    functionLinenumber: 4273
    functionLinenumberEnd: 4280
    functionName: gf_filter_is_supported_source
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 4
    functionsReached:
    - gf_fs_load_source_dest_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_is_supported_source(GF_Filter *filter, const char
      *url, const char *parent_url)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:4285,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:4286,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:4287,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4289,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:4291,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:4292,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:4299,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 21
    argCount: 3
    argNames:
    - filter
    - url
    - act_as_source
    argTypes:
    - GF_Filter*
    - char*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4309
      start: 4282
    functionDepth: 1
    functionLinenumber: 4282
    functionLinenumberEnd: 4309
    functionName: gf_filter_url_is_filter
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_list_count
    - strncmp
    - strcmp
    - strchr
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_url_is_filter(GF_Filter *filter, const char *url,
      Bool *act_as_source)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4323,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4327,1
    - Dst: gf_filter_get_args_stripped
      Src: /src/gpac/src/filter_core/filter.c:4333,1
    - Dst: gf_filter_get_dst_args
      Src: /src/gpac/src/filter_core/filter.c:4335,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:4344,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:4345,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:4346,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:4351,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:4352,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:4353,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:4353,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:4354,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:4356,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:4357,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:4360,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:4362,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:4363,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:4364,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:4370,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:4371,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:4373,1
    - Dst: memmove
      Src: /src/gpac/src/filter_core/filter.c:4374,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:4374,1
    - Dst: gf_filter_url_is_filter
      Src: /src/gpac/src/filter_core/filter.c:4383,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter.c:4384,1
    - Dst: gf_fs_load_source_dest_internal
      Src: /src/gpac/src/filter_core/filter.c:4386,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:4388,1
    - Dst: gf_filter_set_id
      Src: /src/gpac/src/filter_core/filter.c:4393,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filter_core/filter.c:4394,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:4401,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter.c:4403,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:4404,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:4405,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 80
    argCount: 6
    argNames:
    - filter
    - url
    - parent_url
    - inherit_args
    - is_src_add
    - err
    argTypes:
    - GF_Filter*
    - char*
    - char*
    - Bool
    - Bool
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4407
      start: 4311
    functionDepth: 10
    functionLinenumber: 4311
    functionLinenumberEnd: 4407
    functionName: gf_filter_connect_source_internal
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_url_is_filter
    - strchr
    - gf_list_get
    - gf_list_new
    - gf_filter_set_id
    - sprintf
    - gf_list_add
    - gf_dynstrcat
    - gf_mx_p
    - memmove
    - gf_fs_load_filter
    - strstr
    - gf_mx_v
    - strlen
    - gf_filter_set_name
    - gf_fs_load_source_dest_internal
    - gf_filter_get_args_stripped
    - gf_filter_get_dst_args
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_connect_source_internal(GF_Filter *filter, const
      char *url, const char *parent_url, Bool inherit_args, Bool is_src_add, GF_Err
      *err)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_connect_source_internal
      Src: /src/gpac/src/filter_core/filter.c:4412,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - filter
    - url
    - parent_url
    - inherit_args
    - err
    argTypes:
    - GF_Filter*
    - char*
    - char*
    - Bool
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4413
      start: 4409
    functionDepth: 11
    functionLinenumber: 4409
    functionLinenumberEnd: 4413
    functionName: gf_filter_connect_source
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 8
    functionsReached:
    - gf_filter_connect_source_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_connect_source(GF_Filter *filter, const char *url,
      const char *parent_url, Bool inherit_args, GF_Err *err)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_connect_source_internal
      Src: /src/gpac/src/filter_core/filter.c:4417,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - filter
    - url
    - parent_url
    - inherit_args
    - err
    argTypes:
    - GF_Filter*
    - char*
    - char*
    - Bool
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4418
      start: 4414
    functionDepth: 11
    functionLinenumber: 4414
    functionLinenumberEnd: 4418
    functionName: gf_filter_add_source
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_filter_connect_source_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_add_source(GF_Filter *filter, const char *url,
      const char *parent_url, Bool inherit_args, GF_Err *err)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_load_source_dest_internal
      Src: /src/gpac/src/filter_core/filter.c:4424,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - filter
    - url
    - err
    argTypes:
    - GF_Filter*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4425
      start: 4420
    functionDepth: 10
    functionLinenumber: 4420
    functionLinenumberEnd: 4425
    functionName: gf_filter_connect_destination
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 7
    functionsReached:
    - gf_fs_load_source_dest_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_connect_destination(GF_Filter *filter, const char
      *url, GF_Err *err)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4436,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4445,1
    - Dst: gf_filter_get_output_buffer_max
      Src: /src/gpac/src/filter_core/filter.c:4446,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 23
    argCount: 3
    argNames:
    - filter
    - max_buf
    - max_playout_buf
    argTypes:
    - GF_Filter*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4454
      start: 4428
    functionDepth: 1
    functionLinenumber: 4428
    functionLinenumberEnd: 4454
    functionName: gf_filter_get_output_buffer_max
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 4
    functionsReached:
    - gf_list_get
    - gf_filter_get_output_buffer_max
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_get_output_buffer_max(GF_Filter *filter, u32 *max_buf,
      u32 *max_playout_buf)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4460
      start: 4456
    functionDepth: 0
    functionLinenumber: 4456
    functionLinenumberEnd: 4460
    functionName: gf_filter_make_sticky
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_make_sticky(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4471,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4473,1
    - Dst: gf_filter_get_num_events_queued
      Src: /src/gpac/src/filter_core/filter.c:4474,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4478
      start: 4462
    functionDepth: 1
    functionLinenumber: 4462
    functionLinenumberEnd: 4478
    functionName: gf_filter_get_num_events_queued_internal
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_num_events_queued
    - gf_list_get
    linkageType: ''
    returnType: u32
    signature: u32 gf_filter_get_num_events_queued_internal(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:4485,1
    - Dst: gf_filter_get_num_events_queued_internal
      Src: /src/gpac/src/filter_core/filter.c:4486,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:4487,1
    - Dst: gf_filter_get_num_events_queued_internal
      Src: /src/gpac/src/filter_core/filter.c:4490,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4492
      start: 4479
    functionDepth: 2
    functionLinenumber: 4479
    functionLinenumberEnd: 4492
    functionName: gf_filter_get_num_events_queued
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 5
    functionsReached:
    - gf_mx_p
    - gf_filter_get_num_events_queued_internal
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_get_num_events_queued(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - filter
    - time_in_us
    - media_timestamp
    argTypes:
    - GF_Filter*
    - u64
    - GF_Fraction64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4500
      start: 4494
    functionDepth: 0
    functionLinenumber: 4494
    functionLinenumberEnd: 4500
    functionName: gf_filter_hint_single_clock
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_hint_single_clock(GF_Filter *filter, u64 time_in_us,
      GF_Fraction64 media_timestamp)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - filter
    - time_in_us
    - media_timestamp
    argTypes:
    - GF_Filter*
    - u64*
    - GF_Fraction64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4508
      start: 4502
    functionDepth: 0
    functionLinenumber: 4502
    functionLinenumberEnd: 4508
    functionName: gf_filter_get_clock_hint
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_get_clock_hint(GF_Filter *filter, u64 *time_in_us,
      GF_Fraction64 *media_timestamp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:4517,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:4518,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:4520,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - filter
    - id
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4523
      start: 4510
    functionDepth: 0
    functionLinenumber: 4510
    functionLinenumberEnd: 4523
    functionName: gf_filter_assign_id
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_strdup
    - sprintf
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_assign_id(GF_Filter *filter, const char *id)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4530
      start: 4525
    functionDepth: 0
    functionLinenumber: 4525
    functionLinenumberEnd: 4530
    functionName: gf_filter_get_id
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_get_id(GF_Filter *filter)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter.c:4539,1
    - Dst: gf_filter_assign_id
      Src: /src/gpac/src/filter_core/filter.c:4542,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:4548,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:4551,1
    - Dst: gf_filter_set_sources
      Src: /src/gpac/src/filter_core/filter.c:4552,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:4553,1
    - Dst: gf_filter_set_sources
      Src: /src/gpac/src/filter_core/filter.c:4555,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 3
    argNames:
    - filter
    - link_from
    - link_ext
    argTypes:
    - GF_Filter*
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4563
      start: 4532
    functionDepth: 2
    functionLinenumber: 4532
    functionLinenumberEnd: 4563
    functionName: gf_filter_set_source
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 23
    functionsReached:
    - gf_free
    - gf_filter_set_sources
    - gf_filter_in_parent_chain
    - gf_dynstrcat
    - gf_filter_assign_id
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_set_source(GF_Filter *filter, GF_Filter *link_from,
      const char *link_ext)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filter_core/filter.c:4568,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:4571,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:4573,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - filter
    - link_from
    - link_ext
    argTypes:
    - GF_Filter*
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4575
      start: 4565
    functionDepth: 3
    functionLinenumber: 4565
    functionLinenumberEnd: 4575
    functionName: gf_filter_set_source_restricted
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 5
    functionsReached:
    - gf_free
    - gf_strdup
    - gf_filter_set_source
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_set_source_restricted(GF_Filter *filter, GF_Filter
      *link_from, const char *link_ext)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_caps_bundle_count
      Src: /src/gpac/src/filter_core/filter.c:4585,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - filter
    - caps
    - nb_caps
    argTypes:
    - GF_Filter*
    - GF_FilterCapability*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4589
      start: 4578
    functionDepth: 1
    functionLinenumber: 4578
    functionLinenumberEnd: 4589
    functionName: gf_filter_override_caps
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 19
    functionsReached:
    - gf_filter_caps_bundle_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_override_caps(GF_Filter *filter, const GF_FilterCapability
      *caps, u32 nb_caps )
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4597
      start: 4591
    functionDepth: 0
    functionLinenumber: 4591
    functionLinenumberEnd: 4597
    functionName: gf_filter_act_as_sink
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_act_as_sink(GF_Filter *filter)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter.c:4606,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter.c:4614,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter.c:4620,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:4631,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:4636,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:4641,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 45
    argCount: 5
    argNames:
    - pid
    - evt
    - start
    - speed
    - log_name
    argTypes:
    - GF_FilterPid*
    - GF_FilterEvent*
    - Double
    - Double
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4651
      start: 4600
    functionDepth: 1
    functionLinenumber: 4600
    functionLinenumberEnd: 4651
    functionName: gf_filter_pid_init_play_event
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 20
    functionsReached:
    - memset
    - gf_filter_pid_get_property_first
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_init_play_event(GF_FilterPid *pid, GF_FilterEvent
      *evt, Double start, Double speed, const char *log_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - filter
    - max_extra_pids
    argTypes:
    - GF_Filter*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4657
      start: 4653
    functionDepth: 0
    functionLinenumber: 4653
    functionLinenumberEnd: 4657
    functionName: gf_filter_set_max_extra_input_pids
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_set_max_extra_input_pids(GF_Filter *filter, u32
      max_extra_pids)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4663
      start: 4658
    functionDepth: 0
    functionLinenumber: 4658
    functionLinenumberEnd: 4663
    functionName: gf_filter_get_max_extra_input_pids
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_get_max_extra_input_pids(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4669
      start: 4664
    functionDepth: 0
    functionLinenumber: 4664
    functionLinenumberEnd: 4669
    functionName: gf_filter_block_enabled
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_block_enabled(GF_Filter *filter)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:4673,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4675,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:4693,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:4694,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:4695,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter.c:4698,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter.c:4700,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filter_core/filter.c:4700,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 25
    argCount: 3
    argNames:
    - sess
    - pid
    - for_mime
    argTypes:
    - GF_FilterSession*
    - GF_FilterPid*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4704
      start: 4671
    functionDepth: 1
    functionLinenumber: 4671
    functionLinenumberEnd: 4704
    functionName: filter_guess_file_ext
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - PROP_STRING
    - strstr
    - gf_list_count
    - strncpy
    - strchr
    - gf_filter_pid_set_property
    - strlen
    linkageType: ''
    returnType: void
    signature: void filter_guess_file_ext(GF_FilterSession *sess, GF_FilterPid *pid,
      const char *for_mime)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filter_core/filter.c:4714,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter.c:4723,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filter_core/filter.c:4723,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter.c:4725,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filter_core/filter.c:4725,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter.c:4730,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter.c:4731,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filter_core/filter.c:4731,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter.c:4733,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filter_core/filter.c:4734,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter.c:4738,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filter_core/filter.c:4740,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:4743,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filter_core/filter.c:4744,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filter_core/filter.c:4745,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filter_core/filter.c:4748,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter.c:4752,1
    - Dst: strlwr
      Src: /src/gpac/src/filter_core/filter.c:4754,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter.c:4755,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filter_core/filter.c:4755,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:4756,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:4759,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:4759,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:4761,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filter_core/filter.c:4763,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filter_core/filter.c:4765,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:4770,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:4771,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter.c:4775,1
    - Dst: strlwr
      Src: /src/gpac/src/filter_core/filter.c:4777,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter.c:4778,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filter_core/filter.c:4778,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:4779,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:4792,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:4793,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4796,1
    - Dst: GF_FilterRegister*::probe_data
      Src: /src/gpac/src/filter_core/filter.c:4799,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:4811,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:4822,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:4833,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:4841,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:4853,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter.c:4854,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter.c:4857,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filter_core/filter.c:4857,1
    - Dst: filter_guess_file_ext
      Src: /src/gpac/src/filter_core/filter.c:4861,1
    CyclomaticComplexity: 66
    EdgeCount: 66
    ICount: 131
    argCount: 9
    argNames:
    - filter
    - url
    - local_file
    - mime_type
    - fext
    - probe_data
    - probe_size
    - trust_mime
    - out_pid
    argTypes:
    - GF_Filter*
    - char*
    - char*
    - char*
    - char*
    - u8*
    - u32
    - Bool
    - GF_FilterPid**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4866
      start: 4706
    functionDepth: 4
    functionLinenumber: 4706
    functionLinenumberEnd: 4866
    functionName: gf_filter_pid_raw_new
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 13
    functionsReached:
    - PROP_STRING
    - gf_fileio_translate_url
    - gf_list_count
    - gf_filter_pid_new
    - strchr
    - gf_file_basename
    - gf_list_get
    - strlwr
    - strncmp
    - gf_mx_p
    - GF_LOG
    - gf_filter_pid_set_eos
    - strstr
    - strncpy
    - strnicmp
    - gf_mx_v
    - gf_filter_pid_set_property
    - strlen
    - GF_FilterRegister*::probe_data
    - filter_guess_file_ext
    - PROP_UINT
    - gf_file_ext_start
    - gf_filter_pid_set_name
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_raw_new(GF_Filter *filter, const char *url,
      const char *local_file, const char *mime_type, const char *fext, const u8 *probe_data,
      u32 probe_size, Bool trust_mime, GF_FilterPid **out_pid)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_blob_get
      Src: /src/gpac/src/filter_core/filter.c:4875,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filter_core/filter.c:4879,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/filter_core/filter.c:4881,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter.c:4884,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filter_core/filter.c:4884,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filter_core/filter.c:4885,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filter_core/filter.c:4886,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filter_core/filter.c:4887,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter.c:4888,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/filter_core/filter.c:4889,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - filter
    - url
    - out_pid
    argTypes:
    - GF_Filter*
    - char*
    - GF_FilterPid**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4891
      start: 4868
    functionDepth: 5
    functionLinenumber: 4868
    functionLinenumberEnd: 4891
    functionName: gf_filter_pid_raw_gmem
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached:
    - gf_filter_pck_new_shared
    - gf_filter_pid_raw_new
    - gf_blob_get
    - PROP_STRING
    - gf_filter_pid_set_eos
    - gf_filter_pck_set_sap
    - gf_blob_release
    - gf_filter_pid_set_property
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_raw_gmem(GF_Filter *filter, const char *url,
      GF_FilterPid **out_pid)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:4901,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:4902,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4905,1
    - Dst: GF_FilterRegister*::probe_data
      Src: /src/gpac/src/filter_core/filter.c:4908,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:4919,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 26
    argCount: 4
    argNames:
    - filter
    - data
    - size
    - pscore
    argTypes:
    - GF_Filter*
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4922
      start: 4893
    functionDepth: 1
    functionLinenumber: 4893
    functionLinenumberEnd: 4922
    functionName: gf_filter_probe_data
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_list_count
    - gf_mx_v
    - GF_FilterRegister*::probe_data
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_probe_data(GF_Filter *filter, u8 *data, u32 size,
      GF_FilterProbeScore *pscore)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:4935,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filter_core/filter.c:5002,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 86
    argCount: 4
    argNames:
    - filter
    - arg_name
    - prop
    - min_max_enum
    argTypes:
    - GF_Filter*
    - char*
    - GF_PropertyValue*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5013
      start: 4924
    functionDepth: 1
    functionLinenumber: 4924
    functionLinenumberEnd: 5013
    functionName: gf_filter_get_arg_internal
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - strcmp
    - gf_props_type_is_enum
    linkageType: ''
    returnType: Bool
    signature: Bool gf_filter_get_arg_internal(GF_Filter *filter, const char *arg_name,
      GF_PropertyValue *prop, const char **min_max_enum)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_arg_internal
      Src: /src/gpac/src/filter_core/filter.c:5020,1
    - Dst: gf_props_dump_val
      Src: /src/gpac/src/filter_core/filter.c:5022,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - filter
    - arg_name
    - dump
    argTypes:
    - GF_Filter*
    - char*
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5023
      start: 5015
    functionDepth: 2
    functionLinenumber: 5015
    functionLinenumberEnd: 5023
    functionName: gf_filter_get_arg_str
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 5
    functionsReached:
    - gf_filter_get_arg_internal
    - gf_props_dump_val
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_get_arg_str(GF_Filter *filter, const char *arg_name,
      char dump[GF_PROP_DUMP_ARG_SIZE])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_arg_internal
      Src: /src/gpac/src/filter_core/filter.c:5030,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - filter
    - arg_name
    - prop
    argTypes:
    - GF_Filter*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5031
      start: 5025
    functionDepth: 2
    functionLinenumber: 5025
    functionLinenumberEnd: 5031
    functionName: gf_filter_get_arg
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 6
    functionsReached:
    - gf_filter_get_arg_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_get_arg(GF_Filter *filter, const char *arg_name,
      GF_PropertyValue *prop)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_is_supported_mime
      Src: /src/gpac/src/filter_core/filter.c:5036,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - filter
    - mime
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5037
      start: 5033
    functionDepth: 2
    functionLinenumber: 5033
    functionLinenumberEnd: 5037
    functionName: gf_filter_is_supported_mime
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached:
    - gf_fs_is_supported_mime
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_is_supported_mime(GF_Filter *filter, const char
      *mime)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_ui_event
      Src: /src/gpac/src/filter_core/filter.c:5042,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - filter
    - uievt
    argTypes:
    - GF_Filter*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5043
      start: 5039
    functionDepth: 1
    functionLinenumber: 5039
    functionLinenumberEnd: 5043
    functionName: gf_filter_ui_event
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 5
    functionsReached:
    - gf_fs_ui_event
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_ui_event(GF_Filter *filter, GF_Event *uievt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5053,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:5054,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5057,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5059,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5060,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5062,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5065,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5069,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5070,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5073,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5075
      start: 5045
    functionDepth: 1
    functionLinenumber: 5045
    functionLinenumberEnd: 5075
    functionName: gf_filter_all_sinks_done
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 4
    functionsReached:
    - gf_list_count
    - gf_mx_p
    - gf_list_get
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_all_sinks_done(GF_Filter *filter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter.c:5087,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:5088,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:5091,1
    - Dst: gf_fs_check_gl_provider
      Src: /src/gpac/src/filter_core/filter.c:5092,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:5094,1
    - Dst: gf_fs_abort
      Src: /src/gpac/src/filter_core/filter.c:5095,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 2
    argNames:
    - filter
    - do_register
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5099
      start: 5078
    functionDepth: 7
    functionLinenumber: 5078
    functionLinenumberEnd: 5099
    functionName: gf_filter_register_opengl_provider
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached:
    - gf_fs_check_gl_provider
    - GF_LOG
    - gf_list_find
    - gf_list_add
    - gf_list_del_item
    - gf_fs_abort
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_register_opengl_provider(GF_Filter *filter, Bool
      do_register)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_check_gl_provider
      Src: /src/gpac/src/filter_core/filter.c:5109,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:5115,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5120
      start: 5101
    functionDepth: 7
    functionLinenumber: 5101
    functionLinenumberEnd: 5120
    functionName: gf_filter_request_opengl
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 4
    functionsReached:
    - gf_fs_check_gl_provider
    - safe_int_inc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_request_opengl(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_set_gl
      Src: /src/gpac/src/filter_core/filter.c:5127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - filter
    - do_activate
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5131
      start: 5122
    functionDepth: 1
    functionLinenumber: 5122
    functionLinenumberEnd: 5131
    functionName: gf_filter_set_active_opengl_context
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_fs_set_gl
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_set_active_opengl_context(GF_Filter *filter, Bool
      do_activate)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5139,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:5140,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:5141,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5144,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:5149,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:5151,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5155,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter.c:5156,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5160,1
    - Dst: enum_pids
      Src: /src/gpac/src/filter_core/filter.c:5164,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter.c:5167,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5173,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5179,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5182,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 43
    argCount: 5
    argNames:
    - filter
    - protocol_scheme
    - expand_proto
    - (*enum_pids)(void *udta, u32 *idx)
    - udta
    argTypes:
    - GF_Filter*
    - char*
    - Bool
    - GF_FilterPid*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5184
      start: 5134
    functionDepth: 1
    functionLinenumber: 5134
    functionLinenumberEnd: 5184
    functionName: gf_filter_count_source_by_protocol
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_filter_in_parent_chain
    - gf_list_count
    - strncmp
    - gf_mx_v
    - enum_pids
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_count_source_by_protocol(GF_Filter *filter, const
      char *protocol_scheme, Bool expand_proto, GF_FilterPid * (*enum_pids)(void *udta,
      u32 *idx), void *udta)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5191
      start: 5186
    functionDepth: 0
    functionLinenumber: 5186
    functionLinenumberEnd: 5191
    functionName: gf_filter_disable_probe
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_disable_probe(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5198
      start: 5193
    functionDepth: 0
    functionLinenumber: 5193
    functionLinenumberEnd: 5198
    functionName: gf_filter_disable_inputs
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_disable_inputs(GF_Filter *filter)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5206,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter.c:5217,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter.c:5221,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5229,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5235,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5237,1
    - Dst: gf_filter_has_pid_connection_pending_internal
      Src: /src/gpac/src/filter_core/filter.c:5238,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5244,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5249,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 45
    argCount: 2
    argNames:
    - filter
    - stop_at_filter
    argTypes:
    - GF_Filter*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5251
      start: 5200
    functionDepth: 1
    functionLinenumber: 5200
    functionLinenumberEnd: 5251
    functionName: gf_filter_has_pid_connection_pending_internal
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_filter_has_pid_connection_pending_internal
    - gf_filter_has_out_caps
    - gf_mx_v
    linkageType: ''
    returnType: Bool
    signature: Bool gf_filter_has_pid_connection_pending_internal(GF_Filter *filter,
      GF_Filter *stop_at_filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5260,1
    - Dst: gf_filter_has_pid_connection_pending_internal
      Src: /src/gpac/src/filter_core/filter.c:5261,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5262,1
    - Dst: gf_filter_has_pid_connection_pending_internal
      Src: /src/gpac/src/filter_core/filter.c:5265,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - filter
    - stop_at_filter
    argTypes:
    - GF_Filter*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5267
      start: 5253
    functionDepth: 2
    functionLinenumber: 5253
    functionLinenumberEnd: 5267
    functionName: gf_filter_has_pid_connection_pending
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 3
    functionsReached:
    - gf_mx_p
    - gf_filter_has_pid_connection_pending_internal
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_has_pid_connection_pending(GF_Filter *filter, GF_Filter
      *stop_at_filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5274
      start: 5269
    functionDepth: 0
    functionLinenumber: 5269
    functionLinenumberEnd: 5274
    functionName: gf_filter_reporting_enabled
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 17
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_reporting_enabled(GF_Filter *filter)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:5289,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter.c:5292,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter.c:5298,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter.c:5305,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter.c:5310,1
    - Dst: gf_fs_ui_event
      Src: /src/gpac/src/filter_core/filter.c:5311,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 3
    argNames:
    - filter
    - percent
    - szStatus
    argTypes:
    - GF_Filter*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5313
      start: 5276
    functionDepth: 2
    functionLinenumber: 5276
    functionLinenumberEnd: 5313
    functionName: gf_filter_update_status
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 18
    functionsReached:
    - memcpy
    - gf_list_find
    - gf_fs_ui_event
    - memset
    - strlen
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_update_status(GF_Filter *filter, u32 percent, char
      *szStatus)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:5319,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:5321,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5326,1
    - Dst: gf_fs_push_arg
      Src: /src/gpac/src/filter_core/filter.c:5330,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5331,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 4
    argNames:
    - filter
    - arg
    - was_found
    - sub_opt_name
    argTypes:
    - GF_Filter*
    - char*
    - Bool
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5332
      start: 5315
    functionDepth: 2
    functionLinenumber: 5315
    functionLinenumberEnd: 5332
    functionName: gf_filter_report_meta_option
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 4
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    - gf_fs_push_arg
    - strstr
    linkageType: ''
    returnType: void
    signature: void gf_filter_report_meta_option(GF_Filter *filter, const char *arg,
      Bool was_found, const char *sub_opt_name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:5338,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:5340,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - filter
    - new_desc
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5342
      start: 5334
    functionDepth: 0
    functionLinenumber: 5334
    functionLinenumberEnd: 5342
    functionName: gf_filter_set_description
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_strdup
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_filter_set_description(GF_Filter *filter, const char *new_desc)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - filter
    - class_hint
    argTypes:
    - GF_Filter*
    - GF_ClassTypeHint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5348
      start: 5343
    functionDepth: 0
    functionLinenumber: 5343
    functionLinenumberEnd: 5348
    functionName: gf_filter_set_class_hint
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_filter_set_class_hint(GF_Filter *filter, GF_ClassTypeHint
      class_hint)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5353
      start: 5349
    functionDepth: 0
    functionLinenumber: 5349
    functionLinenumberEnd: 5353
    functionName: gf_filter_get_description
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_get_description(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5358
      start: 5354
    functionDepth: 0
    functionLinenumber: 5354
    functionLinenumberEnd: 5358
    functionName: GF_ClassTypeHint::gf_filter_get_class_hint
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_ClassTypeHint gf_filter_get_class_hint(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:5364,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:5366,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - filter
    - new_desc
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5368
      start: 5360
    functionDepth: 0
    functionLinenumber: 5360
    functionLinenumberEnd: 5368
    functionName: gf_filter_set_version
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_strdup
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_filter_set_version(GF_Filter *filter, const char *new_desc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5373
      start: 5369
    functionDepth: 0
    functionLinenumber: 5369
    functionLinenumberEnd: 5373
    functionName: gf_filter_get_version
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_get_version(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:5379,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:5381,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - filter
    - new_desc
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5383
      start: 5375
    functionDepth: 0
    functionLinenumber: 5375
    functionLinenumberEnd: 5383
    functionName: gf_filter_set_author
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_strdup
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_filter_set_author(GF_Filter *filter, const char *new_desc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5388
      start: 5384
    functionDepth: 0
    functionLinenumber: 5384
    functionLinenumberEnd: 5388
    functionName: gf_filter_get_author
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_get_author(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:5394,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:5396,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - filter
    - new_desc
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5398
      start: 5390
    functionDepth: 0
    functionLinenumber: 5390
    functionLinenumberEnd: 5398
    functionName: gf_filter_set_help
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_strdup
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_filter_set_help(GF_Filter *filter, const char *new_desc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5403
      start: 5399
    functionDepth: 0
    functionLinenumber: 5399
    functionLinenumberEnd: 5403
    functionName: gf_filter_get_help
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_get_help(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - filter
    - args
    argTypes:
    - GF_Filter*
    - GF_FilterArgs*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5410
      start: 5405
    functionDepth: 0
    functionLinenumber: 5405
    functionLinenumberEnd: 5410
    functionName: gf_filter_define_args
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_filter_define_args(GF_Filter *filter, GF_FilterArgs *args)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5415
      start: 5411
    functionDepth: 0
    functionLinenumber: 5411
    functionLinenumberEnd: 5415
    functionName: GF_FilterArgs *gf_filter_get_args(GF_Filter *filter)
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterArgs *gf_filter_get_args(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5423
      start: 5417
    functionDepth: 0
    functionLinenumber: 5417
    functionLinenumberEnd: 5423
    functionName: GF_FilterCapability *gf_filter_get_caps(GF_Filter *filter, u32 *nb_caps)
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterCapability *gf_filter_get_caps(GF_Filter *filter,
      u32 *nb_caps)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter.c:5429,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:5432,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - filter
    - name
    - err_code
    argTypes:
    - GF_Filter*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5435
      start: 5425
    functionDepth: 8
    functionLinenumber: 5425
    functionLinenumberEnd: 5435
    functionName: gf_filter_load_filter
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 5
    functionsReached:
    - strstr
    - gf_fs_load_filter
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_load_filter(GF_Filter *filter, const char *name,
      GF_Err *err_code)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5443
      start: 5438
    functionDepth: 0
    functionLinenumber: 5438
    functionLinenumberEnd: 5443
    functionName: gf_filter_end_of_session
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_end_of_session(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5450
      start: 5445
    functionDepth: 0
    functionLinenumber: 5445
    functionLinenumberEnd: 5450
    functionName: gf_filter_is_alias
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_is_alias(GF_Filter *filter)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5460,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:5461,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5464,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5468,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5469,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5471,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5478,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5479,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5484,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5485,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter.c:5495,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter.c:5497,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter.c:5500,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5504,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5505,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5509,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 53
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5512
      start: 5452
    functionDepth: 1
    functionLinenumber: 5452
    functionLinenumberEnd: 5512
    functionName: gf_filter_connections_pending
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 12
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_filter_has_out_caps
    - gf_filter_in_parent_chain
    - gf_list_count
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_connections_pending(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - filter
    - prevent_blocking_enabled
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5520
      start: 5514
    functionDepth: 0
    functionLinenumber: 5514
    functionLinenumberEnd: 5520
    functionName: gf_filter_prevent_blocking
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_prevent_blocking(GF_Filter *filter, Bool prevent_blocking_enabled)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5526
      start: 5522
    functionDepth: 0
    functionLinenumber: 5522
    functionLinenumberEnd: 5526
    functionName: gf_filter_is_dynamic
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_is_dynamic(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - filter
    - do_block
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5532
      start: 5528
    functionDepth: 0
    functionLinenumber: 5528
    functionLinenumberEnd: 5532
    functionName: gf_filter_block_eos
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_block_eos(GF_Filter *filter, Bool do_block)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter.c:5540,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:5548,1
    - Dst: gf_filter_check_pending_pids
      Src: /src/gpac/src/filter_core/filter.c:5549,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:5553,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5556,1
    - Dst: gf_filter_pid_post_init_task
      Src: /src/gpac/src/filter_core/filter.c:5558,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 2
    argNames:
    - filter
    - for_pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5561
      start: 5534
    functionDepth: 5
    functionLinenumber: 5534
    functionLinenumberEnd: 5561
    functionName: gf_filter_reconnect_output
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 6
    functionsReached:
    - gf_list_get
    - GF_LOG
    - gf_filter_pid_post_init_task
    - PID_IS_INPUT
    - gf_filter_check_pending_pids
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_reconnect_output(GF_Filter *filter, GF_FilterPid
      *for_pid)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - filter
    - enable_events
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5569
      start: 5563
    functionDepth: 0
    functionLinenumber: 5563
    functionLinenumberEnd: 5569
    functionName: gf_filter_set_event_target
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_set_event_target(GF_Filter *filter, Bool enable_events)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:5577,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:5582,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter.c:5590,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter.c:5592,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:5598,1
    - Dst: gf_filter_caps_bundle_count
      Src: /src/gpac/src/filter_core/filter.c:5602,1
    - Dst: gf_filter_sess_reset_graph
      Src: /src/gpac/src/filter_core/filter.c:5608,1
    - Dst: gf_filter_sess_build_graph
      Src: /src/gpac/src/filter_core/filter.c:5609,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 6
    argNames:
    - filter
    - code
    - value
    - name
    - flags
    - priority
    argTypes:
    - GF_Filter*
    - u32
    - GF_PropertyValue*
    - char*
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5612
      start: 5571
    functionDepth: 1
    functionLinenumber: 5571
    functionLinenumberEnd: 5612
    functionName: gf_filter_push_caps
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 3
    functionsReached:
    - gf_filter_sess_build_graph
    - gf_strdup
    - GF_LOG
    - gf_filter_sess_reset_graph
    - memset
    - gf_filter_caps_bundle_count
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_push_caps(GF_Filter *filter, u32 code, GF_PropertyValue
      *value, const char *name, u32 flags, u8 priority)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:5618,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5623
      start: 5614
    functionDepth: 1
    functionLinenumber: 5614
    functionLinenumberEnd: 5623
    functionName: gf_filter_set_process_ckb
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_set_process_ckb(GF_Filter *filter, GF_Err (*process_cbk)(GF_Filter
      *filter) )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:5630,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5635
      start: 5626
    functionDepth: 1
    functionLinenumber: 5626
    functionLinenumberEnd: 5635
    functionName: gf_filter_set_configure_ckb
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_set_configure_ckb(GF_Filter *filter, GF_Err (*configure_cbk)(GF_Filter
      *filter, GF_FilterPid *PID, Bool is_remove) )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:5641,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5646
      start: 5637
    functionDepth: 1
    functionLinenumber: 5637
    functionLinenumberEnd: 5646
    functionName: gf_filter_set_process_event_ckb
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_set_process_event_ckb(GF_Filter *filter, Bool (*process_event_cbk)(GF_Filter
      *filter, const GF_FilterEvent *evt) )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:5652,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5657
      start: 5648
    functionDepth: 1
    functionLinenumber: 5648
    functionLinenumberEnd: 5657
    functionName: gf_filter_set_reconfigure_output_ckb
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_set_reconfigure_output_ckb(GF_Filter *filter, GF_Err
      (*reconfigure_output_cbk)(GF_Filter *filter, GF_FilterPid *PID) )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:5663,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - filter
    - (*probe_data_cbk)(const u8 *data, u32 size, GF_FilterProbeScore *score)
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5668
      start: 5659
    functionDepth: 1
    functionLinenumber: 5659
    functionLinenumberEnd: 5668
    functionName: gf_filter_set_probe_data_cbk
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_set_probe_data_cbk(GF_Filter *filter, const char
      * (*probe_data_cbk)(const u8 *data, u32 size, GF_FilterProbeScore *score) )
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5683
      start: 5671
    functionDepth: 0
    functionLinenumber: 5671
    functionLinenumberEnd: 5683
    functionName: GF_FilterArgs *gf_filter_enumerate_args(GF_Filter *filter, u32 idx)
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterArgs *gf_filter_enumerate_args(GF_Filter *filter,
      u32 idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - filter
    - udta
    argTypes:
    - GF_Filter*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5691
      start: 5685
    functionDepth: 0
    functionLinenumber: 5685
    functionLinenumberEnd: 5691
    functionName: gf_filter_set_rt_udta
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_set_rt_udta(GF_Filter *filter, void *udta)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5698
      start: 5693
    functionDepth: 0
    functionLinenumber: 5693
    functionLinenumberEnd: 5698
    functionName: gf_filter_get_rt_udta
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_get_rt_udta(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - filter
    - freg
    argTypes:
    - GF_Filter*
    - GF_FilterRegister*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5706
      start: 5701
    functionDepth: 0
    functionLinenumber: 5701
    functionLinenumberEnd: 5706
    functionName: gf_filter_is_instance_of
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_filter_is_instance_of(GF_Filter *filter, const GF_FilterRegister
      *freg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5714,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter.c:5715,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5717,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filter_core/filter.c:5718,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filter_core/filter.c:5720,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5723,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter.c:5724,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5727,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5728
      start: 5708
    functionDepth: 1
    functionLinenumber: 5708
    functionLinenumberEnd: 5728
    functionName: gf_filter_abort
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 13
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_filter_pid_set_discard
    - GF_FEVT_INIT
    - gf_filter_pid_set_eos
    - gf_mx_v
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_abort(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5735,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5737,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - filter
    - do_lock
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5738
      start: 5730
    functionDepth: 0
    functionLinenumber: 5730
    functionLinenumberEnd: 5738
    functionName: gf_filter_lock
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 8
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_lock(GF_Filter *filter, Bool do_lock)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5745,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5747,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - filter
    - do_lock
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5748
      start: 5740
    functionDepth: 0
    functionLinenumber: 5740
    functionLinenumberEnd: 5748
    functionName: gf_filter_lock_all
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 3
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_lock_all(GF_Filter *filter, Bool do_lock)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - filter
    - dst_filter
    argTypes:
    - GF_Filter*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5757
      start: 5750
    functionDepth: 0
    functionLinenumber: 5750
    functionLinenumberEnd: 5757
    functionName: gf_filter_mirror_forced_caps
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_filter_mirror_forced_caps(GF_Filter *filter, GF_Filter *dst_filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5763
      start: 5759
    functionDepth: 0
    functionLinenumber: 5759
    functionLinenumberEnd: 5763
    functionName: gf_filter_require_source_id
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_require_source_id(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - filter
    - is_blocking
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5768
      start: 5765
    functionDepth: 0
    functionLinenumber: 5765
    functionLinenumberEnd: 5768
    functionName: gf_filter_set_blocking
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_filter_set_blocking(GF_Filter *filter, Bool is_blocking)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5774
      start: 5770
    functionDepth: 0
    functionLinenumber: 5770
    functionLinenumberEnd: 5774
    functionName: GF_FilterRegister *gf_filter_get_register(GF_Filter *filter)
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterRegister *gf_filter_get_register(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:5781,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter.c:5783,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - filter
    - do_tag
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5784
      start: 5776
    functionDepth: 1
    functionLinenumber: 5776
    functionLinenumberEnd: 5784
    functionName: gf_filter_force_main_thread
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 11
    functionsReached:
    - safe_int_dec
    - safe_int_inc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_force_main_thread(GF_Filter *filter, Bool do_tag)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter.c:5791,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter.c:5793,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5794
      start: 5786
    functionDepth: 1
    functionLinenumber: 5786
    functionLinenumberEnd: 5794
    functionName: gf_filter_is_sink
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_filter_has_out_caps
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_is_sink(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_has_in_caps
      Src: /src/gpac/src/filter_core/filter.c:5801,1
    - Dst: gf_filter_has_in_caps
      Src: /src/gpac/src/filter_core/filter.c:5803,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5804
      start: 5796
    functionDepth: 1
    functionLinenumber: 5796
    functionLinenumberEnd: 5804
    functionName: gf_filter_is_source
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_filter_has_in_caps
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_is_source(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_is_sink
      Src: /src/gpac/src/filter_core/filter.c:5815,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - filter
    - subsession_id
    - source_id
    argTypes:
    - GF_Filter*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5820
      start: 5806
    functionDepth: 2
    functionLinenumber: 5806
    functionLinenumberEnd: 5820
    functionName: gf_filter_tag_subsession
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_filter_is_sink
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_tag_subsession(GF_Filter *filter, u32 subsession_id,
      u32 source_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5827
      start: 5822
    functionDepth: 0
    functionLinenumber: 5822
    functionLinenumberEnd: 5827
    functionName: gf_filter_has_connect_errors
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_has_connect_errors(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5833
      start: 5829
    functionDepth: 0
    functionLinenumber: 5829
    functionLinenumberEnd: 5833
    functionName: gf_filter_is_temporary
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_is_temporary(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:5839,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:5840,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - filter
    - instance_names_list
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5841
      start: 5835
    functionDepth: 0
    functionLinenumber: 5835
    functionLinenumberEnd: 5841
    functionName: gf_filter_meta_set_instances
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 7
    functionsReached:
    - gf_free
    - gf_strdup
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_meta_set_instances(GF_Filter *filter, const char
      *instance_names_list)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5847
      start: 5843
    functionDepth: 0
    functionLinenumber: 5843
    functionLinenumberEnd: 5847
    functionName: gf_filter_meta_get_instances
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_meta_get_instances(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5852
      start: 5849
    functionDepth: 0
    functionLinenumber: 5849
    functionLinenumberEnd: 5852
    functionName: gf_filter_skip_seg_size_events
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_filter_skip_seg_size_events(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5859
      start: 5855
    functionDepth: 0
    functionLinenumber: 5855
    functionLinenumberEnd: 5859
    functionName: gf_filter_get_netcap_id
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_get_netcap_id(GF_Filter *filter)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter.c:5867,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5869,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:5870,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter.c:5870,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:5871,1
    - Dst: gf_filter_pid_dump_buffers
      Src: /src/gpac/src/filter_core/filter.c:5873,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5873,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:5879,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter.c:5879,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5881,1
    - Dst: gf_filter_pid_dump_buffers
      Src: /src/gpac/src/filter_core/filter.c:5882,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5884
      start: 5863
    functionDepth: 1
    functionLinenumber: 5863
    functionLinenumberEnd: 5884
    functionName: gf_filter_pid_dump_buffers
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - PID_IS_OUTPUT
    - GF_LOG
    - gf_fq_count
    - gf_list_count
    - gf_filter_pid_dump_buffers
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_dump_buffers(GF_FilterPid *pid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_dump_buffers
      Src: /src/gpac/src/filter_core/filter.c:5890,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5890,1
    - Dst: gf_filter_pid_dump_buffers
      Src: /src/gpac/src/filter_core/filter.c:5893,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5893,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - f
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5895
      start: 5885
    functionDepth: 2
    functionLinenumber: 5885
    functionLinenumberEnd: 5895
    functionName: gf_filter_dump_buffers
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_dump_buffers
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_dump_buffers(GF_Filter *f)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filter_core/filter.c:5911,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:5914,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:5914,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:5916,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:5917,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:5918,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:5919,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:5921,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:5923,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter.c:5925,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:5926,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/filter_core/filter.c:5927,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter.c:5929,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:5931,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter.c:5934,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter.c:5937,1
    - Dst: gf_filter_pid_compute_link
      Src: /src/gpac/src/filter_core/filter.c:5941,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:5944,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:5948,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:5949,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:5952,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5954,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:5957,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:5960,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:5961,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:5963,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:5966,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:5968,1
    - Dst: GF_Filter*::freg::finalize
      Src: /src/gpac/src/filter_core/filter.c:5970,1
    - Dst: gf_filter_del
      Src: /src/gpac/src/filter_core/filter.c:5972,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter.c:5973,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 65
    argCount: 5
    argNames:
    - filter
    - opid_idx
    - fname
    - all_links
    - res_chain
    argTypes:
    - GF_Filter*
    - u32
    - char*
    - Bool
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5976
      start: 5898
    functionDepth: 11
    functionLinenumber: 5898
    functionLinenumberEnd: 5976
    functionName: gf_filter_probe_link_internal
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fs_lock_filters
    - gf_filter_pid_compute_link
    - gf_list_count
    - gf_strdup
    - gf_list_new
    - gf_list_get
    - sprintf
    - strncmp
    - gf_list_add
    - gf_dynstrcat
    - GF_Filter*::freg::finalize
    - gf_fs_load_filter
    - gf_filter_del
    - strstr
    - gf_list_del_item
    - strlen
    - gf_list_del
    - gf_fs_load_destination
    - gf_filter_get_opid
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_filter_probe_link_internal(GF_Filter *filter, u32 opid_idx,
      const char *fname, Bool all_links, char **res_chain)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_probe_link_internal
      Src: /src/gpac/src/filter_core/filter.c:5981,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - filter
    - opid_idx
    - fname
    - res_chain
    argTypes:
    - GF_Filter*
    - u32
    - char*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5982
      start: 5978
    functionDepth: 12
    functionLinenumber: 5978
    functionLinenumberEnd: 5982
    functionName: gf_filter_probe_links
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_filter_probe_link_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_probe_links(GF_Filter *filter, u32 opid_idx, const
      char *fname, char **res_chain)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_probe_link_internal
      Src: /src/gpac/src/filter_core/filter.c:5987,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - filter
    - opid_idx
    - fname
    - res_chain
    argTypes:
    - GF_Filter*
    - u32
    - char*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5988
      start: 5984
    functionDepth: 12
    functionLinenumber: 5984
    functionLinenumberEnd: 5988
    functionName: gf_filter_probe_link
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached:
    - gf_filter_probe_link_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_probe_link(GF_Filter *filter, u32 opid_idx, const
      char *fname, char **res_chain)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5998,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:6004,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:6007,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:6018,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter.c:6024,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:6031,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 38
    argCount: 3
    argNames:
    - filter
    - opid_idx
    - res_list
    argTypes:
    - GF_Filter*
    - s32
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6036
      start: 5991
    functionDepth: 1
    functionLinenumber: 5991
    functionLinenumberEnd: 6036
    functionName: gf_filter_get_possible_destinations
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_dynstrcat
    - gf_filter_pid_caps_match
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_get_possible_destinations(GF_Filter *filter, s32
      opid_idx, char **res_list)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:6044,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:6046,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - filter
    - is_untag
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6047
      start: 6038
    functionDepth: 3
    functionLinenumber: 6038
    functionLinenumberEnd: 6047
    functionName: gf_filter_log_tag
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached:
    - gf_logs_thread_tag
    - gf_logs_thread_untag
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_log_tag(GF_Filter *filter, Bool is_untag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 37
    functionName: REG_DEC
    functionSourceFile: /src/gpac/src/filter_core/filter_register.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: REG_DEC(__n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - __n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 214
    functionName: REG_IT
    functionSourceFile: /src/gpac/src/filter_core/filter_register.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: REG_IT(__n)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter_register.c:395,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filter_core/filter_register.c:400,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_register.c:407,1
    - Dst: fun
      Src: /src/gpac/src/filter_core/filter_register.c:416,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_register.c:418,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_register.c:418,1
    - Dst: gf_fs_add_filter_register
      Src: /src/gpac/src/filter_core/filter_register.c:419,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_register.c:424,1
    - Dst: gf_modules_count
      Src: /src/gpac/src/filter_core/filter_register.c:425,1
    - Dst: gf_modules_load_filter
      Src: /src/gpac/src/filter_core/filter_register.c:427,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_register.c:433,1
    - Dst: GF_FilterRegister*::register_free
      Src: /src/gpac/src/filter_core/filter_register.c:440,1
    - Dst: gf_fs_add_filter_register
      Src: /src/gpac/src/filter_core/filter_register.c:444,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter_register.c:449,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 54
    argCount: 2
    argNames:
    - fsess
    - a_sess
    argTypes:
    - GF_FilterSession*
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 451
      start: 382
    functionDepth: 6
    functionLinenumber: 382
    functionLinenumberEnd: 451
    functionName: gf_fs_reg_all
    functionSourceFile: /src/gpac/src/filter_core/filter_register.c
    functionUses: 2
    functionsReached:
    - gf_assert
    - gf_modules_count
    - gf_modules_load_filter
    - gf_props_reset_single
    - strcmp
    - gf_props_parse_value
    - gf_fs_add_filter_register
    - GF_FilterRegister*::register_free
    - gf_opts_get_bool
    - fun
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: void
    signature: void gf_fs_reg_all(GF_FilterSession *fsess, GF_FilterSession *a_sess)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_fs_add_filter_register
      Src: /src/gpac/src/filter_core/filter_register.c:457,1
    - Dst: ut_source_register
      Src: /src/gpac/src/filter_core/filter_register.c:457,1
    - Dst: gf_fs_add_filter_register
      Src: /src/gpac/src/filter_core/filter_register.c:458,1
    - Dst: ut_filter_register
      Src: /src/gpac/src/filter_core/filter_register.c:458,1
    - Dst: gf_fs_add_filter_register
      Src: /src/gpac/src/filter_core/filter_register.c:459,1
    - Dst: ut_sink_register
      Src: /src/gpac/src/filter_core/filter_register.c:459,1
    - Dst: gf_fs_add_filter_register
      Src: /src/gpac/src/filter_core/filter_register.c:460,1
    - Dst: ut_sink2_register
      Src: /src/gpac/src/filter_core/filter_register.c:460,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 453
    functionDepth: 2
    functionLinenumber: 453
    functionLinenumberEnd: 462
    functionName: gf_fs_register_test_filters
    functionSourceFile: /src/gpac/src/filter_core/filter_register.c
    functionUses: 0
    functionsReached:
    - ut_sink_register
    - ut_filter_register
    - ut_sink2_register
    - ut_source_register
    - gf_fs_add_filter_register
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_register_test_filters(GF_FilterSession *fsess)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filter_core/filter_props.c:53,1
    - Dst: cst_parse
      Src: /src/gpac/src/filter_core/filter_props.c:56,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:58,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - type
    - value
    argTypes:
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 60
    functionName: gf_props_parse_enum
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - GF_ARRAY_LENGTH
    - cst_parse
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_props_parse_enum(u32 type, const char *value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filter_core/filter_props.c:65,1
    - Dst: cst_name
      Src: /src/gpac/src/filter_core/filter_props.c:68,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - type
    - value
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 72
    functionName: gf_props_enum_name
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 3
    functionsReached:
    - GF_LOG
    - GF_ARRAY_LENGTH
    - cst_name
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_props_enum_name(u32 type, u32 value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filter_core/filter_props.c:77,1
    - Dst: cst_all_names
      Src: /src/gpac/src/filter_core/filter_props.c:80,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:82,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 84
    functionName: gf_props_enum_all_names
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - cst_all_names
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_props_enum_all_names(u32 type)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - type
    argTypes:
    - GF_PropType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 90
    functionName: gf_props_type_is_enum
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_props_type_is_enum(GF_PropType type)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:100,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:105,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_props.c:108,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_props.c:112,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:117,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:120,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:122,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:125,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:127,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:131,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_props.c:132,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_props.c:133,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:137,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:145,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:155,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:156,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:158,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 59
    argCount: 7
    argNames:
    - p
    - list_sep_char
    - name
    - value
    - prefix
    - scode
    - size
    argTypes:
    - GF_PropertyValue*
    - char
    - char*
    - char*
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 164
    functionName: parse_data_format
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_strdup
    - sscanf
    - memcpy
    - GF_LOG
    - strlen
    - strcmp
    - strchr
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void parse_data_format(GF_PropertyValue *p, char list_sep_char, const
      char *name, const char *value, const char *prefix, const char *scode, u32 size)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:171,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:173,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:176,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:179,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 2
    argNames:
    - str
    - val
    argTypes:
    - char*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 187
    functionName: parse_time
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 2
    functionsReached:
    - sscanf
    linkageType: ''
    returnType: Bool
    signature: Bool parse_time(const char *str, u64 *val)
  - BBCount: 169
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_props.c:196,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:203,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:204,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_props.c:213,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:214,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_props.c:217,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:218,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:226,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:226,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:226,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:228,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:228,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:228,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:231,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:236,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:237,1
    - Dst: parse_time
      Src: /src/gpac/src/filter_core/filter_props.c:238,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:239,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:240,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:247,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:255,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:256,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:262,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:263,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:268,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:272,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/filter_core/filter_props.c:276,1
    - Dst: MIN
      Src: /src/gpac/src/filter_core/filter_props.c:276,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:277,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_props.c:280,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:291,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:294,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:300,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:301,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:302,1
    - Dst: parse_time
      Src: /src/gpac/src/filter_core/filter_props.c:307,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:308,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:309,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filter_core/filter_props.c:310,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:312,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:318,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:323,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filter_core/filter_props.c:324,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:326,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:331,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:332,1
    - Dst: parse_time
      Src: /src/gpac/src/filter_core/filter_props.c:333,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:334,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:335,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:342,1
    - Dst: parse_time
      Src: /src/gpac/src/filter_core/filter_props.c:343,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:344,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:345,1
    - Dst: parse_time
      Src: /src/gpac/src/filter_core/filter_props.c:352,1
    - Dst: gf_parse_frac
      Src: /src/gpac/src/filter_core/filter_props.c:356,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:357,1
    - Dst: parse_time
      Src: /src/gpac/src/filter_core/filter_props.c:363,1
    - Dst: gf_parse_lfrac
      Src: /src/gpac/src/filter_core/filter_props.c:367,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:368,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:374,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:375,1
    - Dst: parse_time
      Src: /src/gpac/src/filter_core/filter_props.c:376,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filter_core/filter_props.c:376,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:378,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:382,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:383,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filter_core/filter_props.c:387,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:392,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:393,1
    - Dst: parse_time
      Src: /src/gpac/src/filter_core/filter_props.c:394,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:397,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:401,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:405,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:409,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:410,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:414,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:415,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:417,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:419,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:424,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:428,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:429,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:436,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:438,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:441,1
    - Dst: stricmp
      Src: /src/gpac/src/filter_core/filter_props.c:441,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:444,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:447,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:450,1
    - Dst: stricmp
      Src: /src/gpac/src/filter_core/filter_props.c:453,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:456,1
    - Dst: stricmp
      Src: /src/gpac/src/filter_core/filter_props.c:456,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:459,1
    - Dst: stricmp
      Src: /src/gpac/src/filter_core/filter_props.c:459,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:463,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:463,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:464,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:471,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:472,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:472,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:473,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:479,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:480,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:480,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:481,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:487,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:488,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:488,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:489,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:498,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filter_core/filter_props.c:501,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:503,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:507,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/filter_core/filter_props.c:509,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/filter_core/filter_props.c:510,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:512,1
    - Dst: gf_xml_dom_get_root_idx
      Src: /src/gpac/src/filter_core/filter_props.c:514,1
    - Dst: gf_xml_parse_bit_sequence
      Src: /src/gpac/src/filter_core/filter_props.c:517,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:520,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_props.c:520,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filter_core/filter_props.c:525,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_props.c:527,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:536,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:538,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:541,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_props.c:542,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:549,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:552,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/filter_core/filter_props.c:554,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/filter_core/filter_props.c:555,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:557,1
    - Dst: gf_xml_dom_get_root_idx
      Src: /src/gpac/src/filter_core/filter_props.c:559,1
    - Dst: gf_xml_parse_bit_sequence
      Src: /src/gpac/src/filter_core/filter_props.c:562,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:565,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_props.c:565,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filter_core/filter_props.c:568,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:569,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filter_core/filter_props.c:570,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:572,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:576,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:578,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_props.c:579,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/filter_core/filter_props.c:581,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:583,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:588,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:592,1
    - Dst: parse_data_format
      Src: /src/gpac/src/filter_core/filter_props.c:593,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:594,1
    - Dst: parse_data_format
      Src: /src/gpac/src/filter_core/filter_props.c:595,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:596,1
    - Dst: parse_data_format
      Src: /src/gpac/src/filter_core/filter_props.c:597,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:598,1
    - Dst: parse_data_format
      Src: /src/gpac/src/filter_core/filter_props.c:599,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:600,1
    - Dst: parse_data_format
      Src: /src/gpac/src/filter_core/filter_props.c:601,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:602,1
    - Dst: parse_data_format
      Src: /src/gpac/src/filter_core/filter_props.c:603,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:604,1
    - Dst: parse_data_format
      Src: /src/gpac/src/filter_core/filter_props.c:605,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:606,1
    - Dst: parse_data_format
      Src: /src/gpac/src/filter_core/filter_props.c:607,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:608,1
    - Dst: parse_data_format
      Src: /src/gpac/src/filter_core/filter_props.c:609,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:610,1
    - Dst: parse_data_format
      Src: /src/gpac/src/filter_core/filter_props.c:611,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:612,1
    - Dst: parse_data_format
      Src: /src/gpac/src/filter_core/filter_props.c:613,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:614,1
    - Dst: parse_data_format
      Src: /src/gpac/src/filter_core/filter_props.c:615,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:617,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_props.c:619,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:626,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:627,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:639,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:642,1
    - Dst: memmove
      Src: /src/gpac/src/filter_core/filter_props.c:643,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:645,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:649,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:654,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:662,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_props.c:666,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter_props.c:667,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:669,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filter_core/filter_props.c:672,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:674,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_props.c:676,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:680,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_props.c:682,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:701,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:706,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter_props.c:708,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:712,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:713,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_props.c:716,1
    - Dst: gf_4cc_parse
      Src: /src/gpac/src/filter_core/filter_props.c:719,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:721,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_props.c:724,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:728,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_props.c:729,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:733,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:734,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:734,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:735,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_props.c:739,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filter_core/filter_props.c:751,1
    - Dst: gf_props_parse_enum
      Src: /src/gpac/src/filter_core/filter_props.c:753,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:756,1
    CyclomaticComplexity: 245
    EdgeCount: 245
    ICount: 561
    argCount: 5
    argNames:
    - type
    - name
    - value
    - enum_values
    - list_sep_char
    argTypes:
    - u32
    - char*
    - char*
    - char*
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 189
    functionDepth: 11
    functionLinenumber: 189
    functionLinenumberEnd: 763
    functionName: GF_PropertyValue::gf_props_parse_value
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_free
    - parse_time
    - memset
    - gf_props_parse_enum
    - gf_4cc_parse
    - strchr
    - gf_strlcpy
    - gf_realloc
    - gf_xml_parse_bit_sequence
    - gf_strdup
    - gf_props_type_is_enum
    - gf_parse_lfrac
    - parse_data_format
    - strncmp
    - gf_xml_dom_new
    - stricmp
    - FLT2FIX
    - gf_xml_dom_parse
    - sscanf
    - memmove
    - GF_LOG
    - strstr
    - MIN
    - gf_xml_dom_get_root_idx
    - strncpy
    - strnicmp
    - gf_error_to_string
    - strlen
    - gf_malloc
    - INT2FIX
    - gf_base64_decode
    - strcmp
    - GF_4CC
    - gf_parse_frac
    - gf_xml_dom_del
    - gf_file_load_data
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_PropertyValue gf_props_parse_value(u32 type, const char
      *name, const char *value, const char *enum_values, char list_sep_char)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filter_core/filter_props.c:787,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 24
    argCount: 1
    argNames:
    - type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 791
      start: 765
    functionDepth: 1
    functionLinenumber: 765
    functionLinenumberEnd: 791
    functionName: gf_props_get_base_type
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 1
    functionsReached:
    - gf_props_type_is_enum
    linkageType: ''
    returnType: u32
    signature: u32 gf_props_get_base_type(u32 type)
  - BBCount: 55
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_get_base_type
      Src: /src/gpac/src/filter_core/filter_props.c:796,1
    - Dst: gf_props_get_base_type
      Src: /src/gpac/src/filter_core/filter_props.c:797,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:833,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:834,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:836,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:839,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:840,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_props.c:844,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:846,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:851,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:852,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_props.c:856,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:858,1
    - Dst: memcmp
      Src: /src/gpac/src/filter_core/filter_props.c:871,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:884,1
    - Dst: memcmp
      Src: /src/gpac/src/filter_core/filter_props.c:902,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filter_core/filter_props.c:911,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:915,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 122
    argCount: 3
    argNames:
    - p1
    - p2
    - strict_compare
    argTypes:
    - GF_PropertyValue*
    - GF_PropertyValue*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 919
      start: 793
    functionDepth: 2
    functionLinenumber: 793
    functionLinenumberEnd: 919
    functionName: gf_props_equal_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_props_get_base_type
    - memcmp
    - GF_LOG
    - gf_props_type_is_enum
    - strncmp
    - strcmp
    - strchr
    - strlen
    linkageType: ''
    returnType: Bool
    signature: Bool gf_props_equal_internal(const GF_PropertyValue *p1, const GF_PropertyValue
      *p2, Bool strict_compare)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_equal_internal
      Src: /src/gpac/src/filter_core/filter_props.c:923,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p1
    - p2
    argTypes:
    - GF_PropertyValue*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 924
      start: 920
    functionDepth: 3
    functionLinenumber: 920
    functionLinenumberEnd: 924
    functionName: gf_props_equal
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 7
    functionsReached:
    - gf_props_equal_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_props_equal(const GF_PropertyValue *p1, const GF_PropertyValue
      *p2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_equal_internal
      Src: /src/gpac/src/filter_core/filter_props.c:928,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p1
    - p2
    argTypes:
    - GF_PropertyValue*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 929
      start: 925
    functionDepth: 3
    functionLinenumber: 925
    functionLinenumberEnd: 929
    functionName: gf_props_equal_strict
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_props_equal_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_props_equal_strict(const GF_PropertyValue *p1, const GF_PropertyValue
      *p2)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - p4cc
    - str
    argTypes:
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 932
    functionDepth: 0
    functionLinenumber: 932
    functionLinenumberEnd: 948
    functionName: gf_props_hash_djb2
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE gf_props_hash_djb2(u32 p4cc, const char *str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_props.c:955,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_props.c:958,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_props.c:964,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_props.c:967,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 970
      start: 951
    functionDepth: 4
    functionLinenumber: 951
    functionLinenumberEnd: 970
    functionName: gf_props_new
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_fq_pop
    - gf_assert
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_PropertyMap
    signature: GF_PropertyMap * gf_props_new(GF_Filter *filter)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:976,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:980,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:986,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:994,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:996,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1000
      start: 972
    functionDepth: 0
    functionLinenumber: 972
    functionLinenumberEnd: 1000
    functionName: gf_props_reset_single
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 17
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_props_reset_single(GF_PropertyValue *p)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_props.c:1003,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_props.c:1004,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1006,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1011,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_props.c:1015,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1023,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1025,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1032,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_props.c:1038,1
    - Dst: gf_fq_res_add
      Src: /src/gpac/src/filter_core/filter_props.c:1039,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1040,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1041,1
    - Dst: gf_fq_res_add
      Src: /src/gpac/src/filter_core/filter_props.c:1044,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1045,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 41
    argCount: 1
    argNames:
    - it
    argTypes:
    - GF_PropertyEntry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1049
      start: 1001
    functionDepth: 5
    functionLinenumber: 1001
    functionLinenumberEnd: 1049
    functionName: gf_props_del_property
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_free
    - gf_assert
    - gf_fq_res_add
    linkageType: ''
    returnType: void
    signature: void gf_props_del_property(GF_PropertyEntry *it)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1054,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_props.c:1057,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1058,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - pmap
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1061
      start: 1051
    functionDepth: 2
    functionLinenumber: 1051
    functionLinenumberEnd: 1061
    functionName: gf_propmap_del
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_propmap_del(void *pmap)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_props.c:1069,1
    - Dst: gf_props_del_property
      Src: /src/gpac/src/filter_core/filter_props.c:1070,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_props.c:1070,1
    - Dst: gf_fq_res_add
      Src: /src/gpac/src/filter_core/filter_props.c:1073,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_props.c:1074,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_props.c:1079,1
    - Dst: gf_props_del_property
      Src: /src/gpac/src/filter_core/filter_props.c:1080,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_props.c:1080,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - prop
    argTypes:
    - GF_PropertyMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1083
      start: 1062
    functionDepth: 6
    functionLinenumber: 1062
    functionLinenumberEnd: 1083
    functionName: gf_props_reset
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_list_pop_back
    - gf_props_del_property
    - gf_list_count
    - gf_fq_res_add
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_props_reset(GF_PropertyMap *prop)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_props.c:1087,1
    - Dst: gf_props_reset
      Src: /src/gpac/src/filter_core/filter_props.c:1091,1
    - Dst: gf_fq_res_add
      Src: /src/gpac/src/filter_core/filter_props.c:1094,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_props.c:1095,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1096,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - map
    argTypes:
    - GF_PropertyMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1098
      start: 1085
    functionDepth: 7
    functionLinenumber: 1085
    functionLinenumberEnd: 1098
    functionName: gf_props_del
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 3
    functionsReached:
    - gf_free
    - gf_assert
    - gf_props_reset
    - gf_fq_res_add
    - gf_list_del
    linkageType: ''
    returnType: void
    signature: void gf_props_del(GF_PropertyMap *map)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_props.c:1107,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_props.c:1109,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:1110,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_props.c:1111,1
    - Dst: gf_props_del_property
      Src: /src/gpac/src/filter_core/filter_props.c:1112,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_props.c:1118,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_props.c:1120,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:1121,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_props.c:1122,1
    - Dst: gf_props_del_property
      Src: /src/gpac/src/filter_core/filter_props.c:1123,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 17
    argCount: 4
    argNames:
    - map
    - hash
    - p4cc
    - name
    argTypes:
    - GF_PropertyMap*
    - u32
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1128
      start: 1103
    functionDepth: 6
    functionLinenumber: 1103
    functionLinenumberEnd: 1128
    functionName: gf_props_remove_property
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_props_del_property
    - gf_list_count
    - strcmp
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_props_remove_property(GF_PropertyMap *map, u32 hash, u32 p4cc,
      const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_props.c:1136,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_props.c:1138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - map
    argTypes:
    - GF_PropertyMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1140
      start: 1132
    functionDepth: 4
    functionLinenumber: 1132
    functionLinenumberEnd: 1140
    functionName: gf_props_get_list
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - gf_fq_pop
    linkageType: ''
    returnType: GF_List
    signature: GF_List *gf_props_get_list(GF_PropertyMap *map)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter_props.c:1150,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_props.c:1154,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_props.c:1157,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_props.c:1167,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_props.c:1172,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_props.c:1174,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_props.c:1178,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_props.c:1187,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_props.c:1189,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_props.c:1196,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_props.c:1198,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_props.c:1201,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 64
    argCount: 3
    argNames:
    - prop
    - value
    - is_old_prop
    argTypes:
    - GF_PropertyEntry*
    - GF_PropertyValue*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1207
      start: 1143
    functionDepth: 1
    functionLinenumber: 1143
    functionLinenumberEnd: 1207
    functionName: gf_props_assign_value
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_assert
    - gf_props_reset_single
    - memcpy
    - memset
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_props_assign_value(GF_PropertyEntry *prop, const GF_PropertyValue
      *value, Bool is_old_prop)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:1218,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_props.c:1218,1
    - Dst: gf_props_get_list
      Src: /src/gpac/src/filter_core/filter_props.c:1224,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_props.c:1227,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:1229,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_props.c:1229,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_props.c:1229,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_props.c:1231,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:1232,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_props.c:1232,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_props.c:1233,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_props.c:1239,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_props.c:1241,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_props.c:1245,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_props.c:1254,1
    - Dst: gf_props_assign_value
      Src: /src/gpac/src/filter_core/filter_props.c:1258,1
    - Dst: gf_props_del_property
      Src: /src/gpac/src/filter_core/filter_props.c:1260,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_props.c:1265,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_props.c:1267,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 46
    argCount: 6
    argNames:
    - map
    - hash
    - p4cc
    - name
    - dyn_name
    - value
    argTypes:
    - GF_PropertyMap*
    - u32
    - u32
    - char*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1270
      start: 1209
    functionDepth: 6
    functionLinenumber: 1209
    functionLinenumberEnd: 1270
    functionName: gf_props_insert_property
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_list_get
    - gf_assert
    - gf_strdup
    - GF_SAFEALLOC
    - GF_LOG
    - gf_props_del_property
    - gf_list_count
    - gf_fq_pop
    - gf_props_get_list
    - gf_list_add
    - gf_props_assign_value
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_props_insert_property(GF_PropertyMap *map, u32 hash, u32
      p4cc, const char *name, char *dyn_name, const GF_PropertyValue *value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_hash_djb2
      Src: /src/gpac/src/filter_core/filter_props.c:1275,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_props.c:1276,1
    - Dst: gf_props_remove_property
      Src: /src/gpac/src/filter_core/filter_props.c:1277,1
    - Dst: gf_props_insert_property
      Src: /src/gpac/src/filter_core/filter_props.c:1281,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_props.c:1282,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 5
    argNames:
    - map
    - p4cc
    - name
    - dyn_name
    - value
    argTypes:
    - GF_PropertyMap*
    - u32
    - char*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1284
      start: 1272
    functionDepth: 7
    functionLinenumber: 1272
    functionLinenumberEnd: 1284
    functionName: gf_props_set_property
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_props_insert_property
    - gf_props_hash_djb2
    - gf_props_remove_property
    - gf_mx_v
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_props_set_property(GF_PropertyMap *map, u32 p4cc, const char
      *name, char *dyn_name, const GF_PropertyValue *value)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_hash_djb2
      Src: /src/gpac/src/filter_core/filter_props.c:1291,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_props.c:1293,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_props.c:1295,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:1297,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_props.c:1304,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:1306,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_props.c:1312,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:1314,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 43
    argCount: 3
    argNames:
    - map
    - prop_4cc
    - name
    argTypes:
    - GF_PropertyMap*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1340
      start: 1286
    functionDepth: 1
    functionLinenumber: 1286
    functionLinenumberEnd: 1340
    functionName: gf_props_get_property_entry
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_props_hash_djb2
    - GF_LOG
    - gf_list_count
    - strcmp
    - strlen
    linkageType: ''
    returnType: GF_PropertyEntry
    signature: GF_PropertyEntry *gf_props_get_property_entry(GF_PropertyMap *map,
      u32 prop_4cc, const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_get_property_entry
      Src: /src/gpac/src/filter_core/filter_props.c:1344,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - map
    - prop_4cc
    - name
    argTypes:
    - GF_PropertyMap*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1347
      start: 1342
    functionDepth: 2
    functionLinenumber: 1342
    functionLinenumberEnd: 1347
    functionName: gf_props_get_property
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_props_get_property_entry
    linkageType: ''
    returnType: GF_PropertyValue
    signature: GF_PropertyValue *gf_props_get_property(GF_PropertyMap *map, u32 prop_4cc,
      const char *name)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_props.c:1367,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_props.c:1369,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_props.c:1370,1
    - Dst: filter_prop
      Src: /src/gpac/src/filter_core/filter_props.c:1371,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_props.c:1372,1
    - Dst: gf_props_remove_property
      Src: /src/gpac/src/filter_core/filter_props.c:1375,1
    - Dst: gf_props_hash_djb2
      Src: /src/gpac/src/filter_core/filter_props.c:1375,1
    - Dst: gf_props_get_list
      Src: /src/gpac/src/filter_core/filter_props.c:1379,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_props.c:1382,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_props.c:1385,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 4
    argNames:
    - dst_props
    - src_props
    - filter_prop
    - cbk
    argTypes:
    - GF_PropertyMap*
    - GF_PropertyMap*
    - gf_filter_prop_filter
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1395
      start: 1349
    functionDepth: 7
    functionLinenumber: 1349
    functionLinenumberEnd: 1395
    functionName: gf_props_merge_property
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_assert
    - gf_props_hash_djb2
    - gf_props_remove_property
    - filter_prop
    - gf_list_count
    - safe_int_inc
    - gf_props_get_list
    - gf_list_add
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_props_merge_property(GF_PropertyMap *dst_props, GF_PropertyMap
      *src_props, gf_filter_prop_filter filter_prop, void *cbk)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_props.c:1413,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_props.c:1419,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_props.c:1433,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_props.c:1438,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 45
    argCount: 4
    argNames:
    - props
    - io_idx
    - prop_4cc
    - prop_name
    argTypes:
    - GF_PropertyMap*
    - u32*
    - u32*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1448
      start: 1397
    functionDepth: 1
    functionLinenumber: 1397
    functionLinenumberEnd: 1448
    functionName: gf_props_enum_property
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: GF_PropertyValue
    signature: GF_PropertyValue *gf_props_enum_property(GF_PropertyMap *props, u32
      *io_idx, u32 *prop_4cc, const char **prop_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:1501,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - type
    argTypes:
    - GF_PropType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1503
      start: 1494
    functionDepth: 1
    functionLinenumber: 1494
    functionLinenumberEnd: 1503
    functionName: gf_props_get_type_name
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 10
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_props_get_type_name(GF_PropType type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:1512,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - type
    argTypes:
    - GF_PropType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1514
      start: 1505
    functionDepth: 1
    functionLinenumber: 1505
    functionLinenumberEnd: 1514
    functionName: gf_props_get_type_desc
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_props_get_type_desc(GF_PropType type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:1521,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:1523,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1525
      start: 1516
    functionDepth: 1
    functionLinenumber: 1516
    functionLinenumberEnd: 1525
    functionName: GF_PropType::gf_props_parse_type
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - strcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_PropType gf_props_parse_type(const char *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _a
    - ','
    - _b
    - ','
    - _c
    - ','
    - _d
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1529
      start: 1528
    functionDepth: 0
    functionLinenumber: 1528
    functionLinenumberEnd: 1529
    functionName: DEC_PROP
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEC_PROP(_a, _b, _c, _d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - _a
    - ','
    - _b
    - ','
    - _c
    - ','
    - _d
    - ','
    - _e
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1530
      start: 1529
    functionDepth: 0
    functionLinenumber: 1529
    functionLinenumberEnd: 1530
    functionName: DEC_PROP_F
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEC_PROP_F(_a, _b, _c, _d, _e)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _a
    - ','
    - _b
    - ','
    - _c
    - ','
    - _d
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1532
      start: 1531
    functionDepth: 0
    functionLinenumber: 1531
    functionLinenumberEnd: 1532
    functionName: DEC_PROP
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEC_PROP(_a, _b, _c, _d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - _a
    - ','
    - _b
    - ','
    - _c
    - ','
    - _d
    - ','
    - _e
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1533
      start: 1532
    functionDepth: 0
    functionLinenumber: 1532
    functionLinenumberEnd: 1533
    functionName: DEC_PROP_F
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEC_PROP_F(_a, _b, _c, _d, _e)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:1908,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filter_core/filter_props.c:1910,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:1911,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 25
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1933
      start: 1903
    functionDepth: 0
    functionLinenumber: 1903
    functionLinenumberEnd: 1933
    functionName: gf_props_get_id
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 20
    functionsReached:
    - strcmp
    - strlen
    - GF_4CC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_props_get_id(const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1940
      start: 1935
    functionDepth: 0
    functionLinenumber: 1935
    functionLinenumberEnd: 1940
    functionName: GF_BuiltInProperty *gf_props_get_description(u32 prop_idx)
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_BuiltInProperty *gf_props_get_description(u32 prop_idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - prop_4cc
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1950
      start: 1942
    functionDepth: 0
    functionLinenumber: 1942
    functionLinenumberEnd: 1950
    functionName: gf_props_4cc_get_name
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 16
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_props_4cc_get_name(u32 prop_4cc)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - prop_4cc
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1960
      start: 1952
    functionDepth: 0
    functionLinenumber: 1952
    functionLinenumberEnd: 1960
    functionName: gf_props_4cc_get_flags
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_props_4cc_get_flags(u32 prop_4cc)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - prop_4cc
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1970
      start: 1962
    functionDepth: 0
    functionLinenumber: 1962
    functionLinenumberEnd: 1970
    functionName: gf_props_4cc_get_type
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_props_4cc_get_type(u32 prop_4cc)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:1979,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_props.c:1979,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:1984,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_props.c:1984,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:1990,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_props.c:1990,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:1993,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:1999,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_props.c:1999,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_props.c:1999,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2005
      start: 1972
    functionDepth: 3
    functionLinenumber: 1972
    functionLinenumberEnd: 2005
    functionName: gf_props_sanity_check
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - strcmp
    - gf_4cc_to_str
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_props_sanity_check()
  - BBCount: 52
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2025,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:2028,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:2033,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:2037,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter_props.c:2040,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2049,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:2050,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2053,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2057,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_props.c:2057,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2060,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2063,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2068,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2070,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2076,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2078,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2082,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2085,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/filter_core/filter_props.c:2085,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2088,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2091,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2094,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2097,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2100,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2111,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2114,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2116,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2119,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filter_core/filter_props.c:2119,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2123,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter_props.c:2133,1
    - Dst: strcat
      Src: /src/gpac/src/filter_core/filter_props.c:2135,1
    - Dst: strncat
      Src: /src/gpac/src/filter_core/filter_props.c:2136,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:2138,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:2140,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2157,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2159,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_props.c:2159,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2161,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2163,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter_props.c:2166,1
    - Dst: strcat
      Src: /src/gpac/src/filter_core/filter_props.c:2168,1
    - Dst: strncat
      Src: /src/gpac/src/filter_core/filter_props.c:2169,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:2171,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:2173,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2180,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2183,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filter_core/filter_props.c:2186,1
    - Dst: gf_props_enum_name
      Src: /src/gpac/src/filter_core/filter_props.c:2187,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 168
    argCount: 4
    argNames:
    - att
    - dump
    - dump_data_flags
    - min_max_enum
    argTypes:
    - GF_PropertyValue*
    - char[]
    - GF_PropDumpDataMode
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2191
      start: 2007
    functionDepth: 3
    functionLinenumber: 2007
    functionLinenumberEnd: 2191
    functionName: gf_props_dump_val
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 8
    functionsReached:
    - strcat
    - gf_4cc_to_str
    - gf_props_enum_name
    - GF_LOG
    - gf_props_type_is_enum
    - sprintf
    - strncat
    - strncpy
    - strchr
    - gf_crc_32
    - strlen
    - FIX2FLT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_props_dump_val(const GF_PropertyValue *att, char dump[GF_PROP_DUMP_ARG_SIZE],
      GF_PropDumpDataMode dump_data_flags, const char *min_max_enum)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filter_core/filter_props.c:2200,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filter_core/filter_props.c:2202,1
    - Dst: gf_net_ntp_to_utc
      Src: /src/gpac/src/filter_core/filter_props.c:2214,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/filter_core/filter_props.c:2223,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2228,1
    - Dst: gf_audio_fmt_get_cicp_name
      Src: /src/gpac/src/filter_core/filter_props.c:2235,1
    - Dst: gf_audio_fmt_get_cicp_from_layout
      Src: /src/gpac/src/filter_core/filter_props.c:2235,1
    - Dst: gf_props_dump_val
      Src: /src/gpac/src/filter_core/filter_props.c:2237,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/filter_core/filter_props.c:2242,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filter_core/filter_props.c:2247,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filter_core/filter_props.c:2248,1
    - Dst: gf_props_enum_name
      Src: /src/gpac/src/filter_core/filter_props.c:2249,1
    - Dst: gf_props_dump_val
      Src: /src/gpac/src/filter_core/filter_props.c:2251,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 45
    argCount: 4
    argNames:
    - p4cc
    - att
    - dump
    - dump_data_mode
    argTypes:
    - u32
    - GF_PropertyValue*
    - char[]
    - GF_PropDumpDataMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2254
      start: 2194
    functionDepth: 4
    functionLinenumber: 2194
    functionLinenumberEnd: 2254
    functionName: gf_props_dump
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 7
    functionsReached:
    - gf_audio_fmt_get_cicp_name
    - gf_props_4cc_get_type
    - gf_props_enum_name
    - snprintf
    - gf_utf8_is_legal
    - gf_props_type_is_enum
    - gf_audio_fmt_get_cicp_from_layout
    - gf_props_dump_val
    - gf_net_ntp_to_utc
    - gf_codecid_name
    - gf_stream_type_name
    - gf_gmtime
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_props_dump(u32 p4cc, const GF_PropertyValue *att, char
      dump[GF_PROP_DUMP_ARG_SIZE], GF_PropDumpDataMode dump_data_mode)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_dump
      Src: /src/gpac/src/filter_core/filter_props.c:2260,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_props.c:2262,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - p4cc
    - att
    - dump_data_mode
    argTypes:
    - u32
    - GF_PropertyValue*
    - GF_PropDumpDataMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2263
      start: 2256
    functionDepth: 5
    functionLinenumber: 2256
    functionLinenumberEnd: 2263
    functionName: gf_props_dump_alloc
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_props_dump
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_props_dump_alloc(u32 p4cc, const GF_PropertyValue *att,
      GF_PropDumpDataMode dump_data_mode)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: INT2FIX
      Src: /src/gpac/src/filter_core/filter_props.c:2273,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filter_core/filter_props.c:2274,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filter_core/filter_props.c:2275,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filter_core/filter_props.c:2276,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filter_core/filter_props.c:2277,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filter_core/filter_props.c:2278,1
    - Dst: gf_mx2d_decompose
      Src: /src/gpac/src/filter_core/filter_props.c:2279,1
    - Dst: ABSDIFF
      Src: /src/gpac/src/filter_core/filter_props.c:2283,1
    - Dst: ABSDIFF
      Src: /src/gpac/src/filter_core/filter_props.c:2284,1
    - Dst: ABSDIFF
      Src: /src/gpac/src/filter_core/filter_props.c:2286,1
    - Dst: ABSDIFF
      Src: /src/gpac/src/filter_core/filter_props.c:2292,1
    - Dst: ABSDIFF
      Src: /src/gpac/src/filter_core/filter_props.c:2295,1
    - Dst: ABSDIFF
      Src: /src/gpac/src/filter_core/filter_props.c:2298,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 3
    argNames:
    - p
    - flip_mode
    - rot_mode
    argTypes:
    - GF_PropertyValue*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2303
      start: 2265
    functionDepth: 2
    functionLinenumber: 2265
    functionLinenumberEnd: 2303
    functionName: gf_prop_matrix_decompose
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 3
    functionsReached:
    - ABSDIFF
    - gf_mx2d_decompose
    - INT2FIX
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_prop_matrix_decompose(const GF_PropertyValue *p, u32 *flip_mode,
      u32 *rot_mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_pck.c:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - pck
    - pid
    argTypes:
    - GF_FilterPacket*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 37
    functionName: gf_filter_pck_reset_props
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: void gf_filter_pck_reset_props(GF_FilterPacket *pck, GF_FilterPid *pid)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: PCK_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pck.c:42,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:43,1
    - Dst: gf_props_new
      Src: /src/gpac/src/filter_core/filter_pck.c:63,1
    - Dst: gf_props_merge_property
      Src: /src/gpac/src/filter_core/filter_pck.c:67,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 4
    argNames:
    - pck_src
    - pck_dst
    - filter_prop
    - cbk
    argTypes:
    - GF_FilterPacket*
    - GF_FilterPacket*
    - gf_filter_prop_filter
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 39
    functionDepth: 8
    functionLinenumber: 39
    functionLinenumberEnd: 68
    functionName: gf_filter_pck_merge_properties_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_props_merge_property
    - gf_props_new
    - PCK_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_merge_properties_filter(GF_FilterPacket *pck_src,
      GF_FilterPacket *pck_dst, gf_filter_prop_filter filter_prop, void *cbk)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_merge_properties_filter
      Src: /src/gpac/src/filter_core/filter_pck.c:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - pck_src
    - pck_dst
    argTypes:
    - GF_FilterPacket*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 70
    functionDepth: 9
    functionLinenumber: 70
    functionLinenumberEnd: 74
    functionName: gf_filter_pck_merge_properties
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 94
    functionsReached:
    - gf_filter_pck_merge_properties_filter
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_merge_properties(GF_FilterPacket *pck_src,
      GF_FilterPacket *pck_dst)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 2
    argNames:
    - udta
    - item
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 100
    functionName: pck_queue_enum
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void pck_queue_enum(void *udta, void *item)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pck.c:108,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:109,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pck.c:113,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_pck.c:118,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pck.c:119,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pck.c:120,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_pck.c:125,1
    - Dst: gf_fq_enum
      Src: /src/gpac/src/filter_core/filter_pck.c:127,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_pck.c:141,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pck.c:143,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:144,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_pck.c:154,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:156,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_pck.c:159,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pck.c:161,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:162,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_pck.c:175,1
    - Dst: gf_filter_pck_reset_props
      Src: /src/gpac/src/filter_core/filter_pck.c:190,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 62
    argCount: 3
    argNames:
    - pid
    - data_size
    - data
    argTypes:
    - GF_FilterPid*
    - u32
    - u8**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 102
    functionDepth: 4
    functionLinenumber: 102
    functionLinenumberEnd: 192
    functionName: gf_filter_pck_new_alloc_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAFEALLOC
    - GF_LOG
    - gf_fq_enum
    - gf_filter_pck_reset_props
    - gf_fq_count
    - memset
    - gf_fq_pop
    - PID_IS_INPUT
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_FilterPacket
    signature: GF_FilterPacket *gf_filter_pck_new_alloc_internal(GF_FilterPid *pid,
      u32 data_size, u8 **data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_alloc_internal
      Src: /src/gpac/src/filter_core/filter_pck.c:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 194
    functionDepth: 5
    functionLinenumber: 194
    functionLinenumberEnd: 198
    functionName: GF_FilterPacket *gf_filter_pck_new_alloc(GF_FilterPid *pid, u32
      data_size, u8 **data)
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterPacket *gf_filter_pck_new_alloc(GF_FilterPid *pid,
      u32 data_size, u8 **data)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filter_core/filter_pck.c:205,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_pck.c:211,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pck.c:213,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:214,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:222,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pck.c:223,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pck.c:224,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_pck.c:230,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:232,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_pck.c:235,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pck.c:237,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:238,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 41
    argCount: 2
    argNames:
    - cached_pck
    - data_length
    argTypes:
    - GF_FilterPacket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 200
    functionDepth: 8
    functionLinenumber: 200
    functionLinenumberEnd: 246
    functionName: gf_filter_pck_new_dangling_packet
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_free
    - safe_int_dec
    - gf_assert
    - GF_SAFEALLOC
    - GF_LOG
    - gf_props_del
    - gf_filter_pck_discard
    - gf_malloc
    - gf_realloc
    linkageType: ''
    returnType: GF_FilterPacket
    signature: GF_FilterPacket *gf_filter_pck_new_dangling_packet(GF_FilterPacket
      *cached_pck, u32 data_length)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pck.c:261,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pck.c:263,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pck.c:265,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:269,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filter_core/filter_pck.c:274,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:275,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pck.c:280,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter_pck.c:282,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filter_core/filter_pck.c:282,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter_pck.c:283,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filter_core/filter_pck.c:283,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filter_core/filter_pck.c:285,1
    - Dst: gf_filter_pck_new_dangling_packet
      Src: /src/gpac/src/filter_core/filter_pck.c:288,1
    - Dst: frame_ifce::get_plane
      Src: /src/gpac/src/filter_core/filter_pck.c:300,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:302,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_pck.c:313,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filter_core/filter_pck.c:318,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 58
    argCount: 5
    argNames:
    - pid
    - pck_source
    - data
    - dangling_packet
    - cached_pck
    argTypes:
    - GF_FilterPid*
    - GF_FilterPacket*
    - u8**
    - Bool
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 248
    functionDepth: 10
    functionLinenumber: 248
    functionLinenumberEnd: 320
    functionName: gf_filter_pck_clone_frame_interface
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - PROP_UINT
    - gf_filter_pid_get_property
    - GF_LOG
    - memcpy
    - gf_filter_pck_merge_properties
    - gf_filter_pck_new_dangling_packet
    - gf_pixel_get_size_info
    - frame_ifce::get_plane
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: GF_FilterPacket
    signature: GF_FilterPacket *gf_filter_pck_clone_frame_interface(GF_FilterPid *pid,
      GF_FilterPacket *pck_source, u8 **data, Bool dangling_packet, GF_FilterPacket
      *cached_pck)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: PCK_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pck.c:330,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:331,1
    - Dst: gf_filter_pck_clone_frame_interface
      Src: /src/gpac/src/filter_core/filter_pck.c:338,1
    - Dst: gf_filter_pck_new_dangling_packet
      Src: /src/gpac/src/filter_core/filter_pck.c:358,1
    - Dst: gf_filter_pck_new_alloc_internal
      Src: /src/gpac/src/filter_core/filter_pck.c:363,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_pck.c:366,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filter_core/filter_pck.c:369,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filter_core/filter_pck.c:375,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_pck.c:377,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:379,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:390,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:391,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:392,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filter_core/filter_pck.c:393,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filter_core/filter_pck.c:398,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filter_core/filter_pck.c:400,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 74
    argCount: 6
    argNames:
    - pid
    - pck_source
    - data
    - force_copy
    - dangling_packet
    - cached_pck
    argTypes:
    - GF_FilterPid*
    - GF_FilterPacket*
    - u8**
    - Bool
    - Bool
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 322
    functionDepth: 11
    functionLinenumber: 322
    functionLinenumberEnd: 404
    functionName: gf_filter_pck_new_clone_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - PCK_IS_OUTPUT
    - gf_filter_pck_new_ref
    - GF_SAFEALLOC
    - GF_LOG
    - memcpy
    - gf_filter_pck_merge_properties
    - gf_filter_pck_new_dangling_packet
    - gf_filter_pck_new_alloc_internal
    - safe_int_inc
    - gf_filter_pck_clone_frame_interface
    - gf_filter_pck_discard
    linkageType: ''
    returnType: GF_FilterPacket
    signature: GF_FilterPacket *gf_filter_pck_new_clone_internal(GF_FilterPid *pid,
      GF_FilterPacket *pck_source, u8 **data, Bool force_copy, Bool dangling_packet,
      GF_FilterPacket *cached_pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_clone_internal
      Src: /src/gpac/src/filter_core/filter_pck.c:409,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 406
    functionDepth: 12
    functionLinenumber: 406
    functionLinenumberEnd: 410
    functionName: GF_FilterPacket *gf_filter_pck_dangling_copy(GF_FilterPacket *pck_source,
      GF_FilterPacket *cached_pck)
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_clone_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterPacket *gf_filter_pck_dangling_copy(GF_FilterPacket
      *pck_source, GF_FilterPacket *cached_pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_clone_internal
      Src: /src/gpac/src/filter_core/filter_pck.c:415,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 412
    functionDepth: 12
    functionLinenumber: 412
    functionLinenumberEnd: 416
    functionName: GF_FilterPacket *gf_filter_pck_dangling_clone(GF_FilterPacket *pck_source,
      GF_FilterPacket *cached_pck)
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_clone_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterPacket *gf_filter_pck_dangling_clone(GF_FilterPacket
      *pck_source, GF_FilterPacket *cached_pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_clone_internal
      Src: /src/gpac/src/filter_core/filter_pck.c:422,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 419
    functionDepth: 12
    functionLinenumber: 419
    functionLinenumberEnd: 423
    functionName: GF_FilterPacket *gf_filter_pck_new_clone(GF_FilterPid *pid, GF_FilterPacket
      *pck_source, u8 **data)
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_clone_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterPacket *gf_filter_pck_new_clone(GF_FilterPid *pid,
      GF_FilterPacket *pck_source, u8 **data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_clone_internal
      Src: /src/gpac/src/filter_core/filter_pck.c:427,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 424
    functionDepth: 12
    functionLinenumber: 424
    functionLinenumberEnd: 428
    functionName: GF_FilterPacket *gf_filter_pck_new_copy(GF_FilterPid *pid, GF_FilterPacket
      *pck_source, u8 **data)
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_clone_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterPacket *gf_filter_pck_new_copy(GF_FilterPid *pid,
      GF_FilterPacket *pck_source, u8 **data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_alloc_internal
      Src: /src/gpac/src/filter_core/filter_pck.c:434,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 431
    functionDepth: 5
    functionLinenumber: 431
    functionLinenumberEnd: 441
    functionName: GF_FilterPacket *gf_filter_pck_new_alloc_destructor(GF_FilterPid
      *pid, u32 data_size, u8 **data, gf_fsess_packet_destructor destruct)
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterPacket *gf_filter_pck_new_alloc_destructor(GF_FilterPid
      *pid, u32 data_size, u8 **data, gf_fsess_packet_destructor destruct)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:449,1
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pck.c:452,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:453,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_pck.c:457,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_pck.c:459,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:469,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:470,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:471,1
    - Dst: gf_filter_pck_reset_props
      Src: /src/gpac/src/filter_core/filter_pck.c:473,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 443
    functionDepth: 4
    functionLinenumber: 443
    functionLinenumberEnd: 478
    functionName: GF_FilterPacket *gf_filter_pck_new_shared_internal(GF_FilterPid
      *pid, const u8 *data, u32 data_size, gf_fsess_packet_destructor destruct, Bool
      intern_pck)
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - GF_LOG
    - gf_filter_pck_reset_props
    - gf_fq_pop
    - safe_int_inc
    - PID_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterPacket *gf_filter_pck_new_shared_internal(GF_FilterPid
      *pid, const u8 *data, u32 data_size, gf_fsess_packet_destructor destruct, Bool
      intern_pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_shared_internal
      Src: /src/gpac/src/filter_core/filter_pck.c:483,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 484
      start: 480
    functionDepth: 0
    functionLinenumber: 480
    functionLinenumberEnd: 484
    functionName: GF_FilterPacket *gf_filter_pck_new_shared(GF_FilterPid *pid, const
      u8 *data, u32 data_size, gf_fsess_packet_destructor destruct)
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_shared_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterPacket *gf_filter_pck_new_shared(GF_FilterPid *pid,
      const u8 *data, u32 data_size, gf_fsess_packet_destructor destruct)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filter_core/filter_pck.c:504,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:510,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:511,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:520,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:521,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 486
    functionDepth: 1
    functionLinenumber: 486
    functionLinenumberEnd: 523
    functionName: GF_FilterPacket *gf_filter_pck_new_ref_destructor(GF_FilterPid *pid,
      u32 data_offset, u32 data_size, GF_FilterPacket *reference, gf_fsess_packet_destructor
      destruct)
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_filter_pck_new_shared
    - safe_int_inc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterPacket *gf_filter_pck_new_ref_destructor(GF_FilterPid
      *pid, u32 data_offset, u32 data_size, GF_FilterPacket *reference, gf_fsess_packet_destructor
      destruct)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_ref_destructor
      Src: /src/gpac/src/filter_core/filter_pck.c:528,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 525
    functionDepth: 0
    functionLinenumber: 525
    functionLinenumberEnd: 529
    functionName: GF_FilterPacket *gf_filter_pck_new_ref(GF_FilterPid *pid, u32 data_offset,
      u32 data_size, GF_FilterPacket *reference)
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_ref_destructor
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterPacket *gf_filter_pck_new_ref(GF_FilterPid *pid,
      u32 data_offset, u32 data_size, GF_FilterPacket *reference)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PCK_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pck.c:534,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:535,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 540
      start: 531
    functionDepth: 1
    functionLinenumber: 531
    functionLinenumberEnd: 540
    functionName: gf_filter_pck_set_readonly
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 6
    functionsReached:
    - GF_LOG
    - PCK_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_readonly(GF_FilterPacket *pck)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filter_core/filter_pck.c:547,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 542
    functionDepth: 0
    functionLinenumber: 542
    functionLinenumberEnd: 556
    functionName: GF_FilterPacket *gf_filter_pck_new_frame_interface(GF_FilterPid
      *pid, GF_FilterFrameInterface *frame_ifce, gf_fsess_packet_destructor destruct)
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_shared
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterPacket *gf_filter_pck_new_frame_interface(GF_FilterPid
      *pid, GF_FilterFrameInterface *frame_ifce, gf_fsess_packet_destructor destruct)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filter_core/filter_pck.c:564,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:567,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:568,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:569,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:570,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filter_core/filter_pck.c:572,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filter_core/filter_pck.c:579,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - reference
    - pid
    argTypes:
    - GF_FilterPacket*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 558
    functionDepth: 10
    functionLinenumber: 558
    functionLinenumberEnd: 580
    functionName: gf_filter_pck_forward
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 37
    functionsReached:
    - gf_assert
    - gf_filter_pck_new_shared
    - gf_filter_pck_merge_properties
    - safe_int_inc
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_forward(GF_FilterPacket *reference, GF_FilterPid
      *pid)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:596,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:597,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:598,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:601,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:603,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:614,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:616,1
    - Dst: GF_FilterPacket*::destructor
      Src: /src/gpac/src/filter_core/filter_pck.c:621,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:629,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pck.c:630,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pck.c:631,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:634,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pck.c:635,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pck.c:639,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pck.c:640,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pck.c:641,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pck.c:643,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pck.c:646,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:654,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pck.c:655,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pck.c:656,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:662,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pck.c:663,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:665,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pck.c:666,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:669,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:676,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:677,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pck.c:678,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pck.c:679,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:681,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:682,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pck.c:683,1
    - Dst: gf_filter_packet_destroy
      Src: /src/gpac/src/filter_core/filter_pck.c:684,1
    - Dst: gf_fq_res_add
      Src: /src/gpac/src/filter_core/filter_pck.c:692,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pck.c:693,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pck.c:696,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pck.c:697,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pck.c:699,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pck.c:700,1
    - Dst: gf_fq_res_add
      Src: /src/gpac/src/filter_core/filter_pck.c:703,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pck.c:704,1
    - Dst: gf_fq_res_add
      Src: /src/gpac/src/filter_core/filter_pck.c:707,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pck.c:708,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pck.c:709,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 112
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 712
      start: 583
    functionDepth: 8
    functionLinenumber: 583
    functionLinenumberEnd: 712
    functionName: gf_filter_packet_destroy
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 2
    functionsReached:
    - safe_int_dec
    - gf_mx_p
    - gf_assert
    - gf_free
    - GF_FilterPacket*::destructor
    - GF_LOG
    - gf_filter_packet_destroy
    - gf_mx_v
    - gf_list_del_item
    - gf_fq_res_add
    - gf_props_del
    linkageType: ''
    returnType: void
    signature: void gf_filter_packet_destroy(GF_FilterPacket *pck)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pck.c:726,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_pck.c:734,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:735,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filter_core/filter_pck.c:737,1
    - Dst: safe_int64_add
      Src: /src/gpac/src/filter_core/filter_pck.c:738,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_pck.c:741,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pck.c:746,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:748,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filter_core/filter_pck.c:760,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pck.c:765,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_pck.c:784,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filter_core/filter_pck.c:789,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:794,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pck.c:799,1
    - Dst: gf_fq_res_add
      Src: /src/gpac/src/filter_core/filter_pck.c:806,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pck.c:807,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:811,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:815,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filter_core/filter_pck.c:818,1
    - Dst: safe_int64_add
      Src: /src/gpac/src/filter_core/filter_pck.c:819,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_pck.c:825,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:829,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pck.c:830,1
    - Dst: gf_filter_packet_destroy
      Src: /src/gpac/src/filter_core/filter_pck.c:831,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:838,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 92
    argCount: 1
    argNames:
    - dst
    argTypes:
    - GF_FilterPidInst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 842
      start: 714
    functionDepth: 10
    functionLinenumber: 714
    functionLinenumberEnd: 842
    functionName: gf_filter_aggregate_packets
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_free
    - safe_int_dec
    - gf_list_get
    - gf_list_pop_back
    - gf_assert
    - safe_int64_add
    - gf_filter_pck_new_alloc
    - memcpy
    - GF_LOG
    - gf_filter_pck_merge_properties
    - gf_filter_packet_destroy
    - gf_list_count
    - safe_int_inc
    - gf_fq_add
    - gf_fq_res_add
    - gf_timestamp_rescale
    - gf_list_rem
    linkageType: ''
    returnType: Bool
    signature: Bool gf_filter_aggregate_packets(GF_FilterPidInst *dst)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PCK_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pck.c:847,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:848,1
    - Dst: gf_filter_packet_destroy
      Src: /src/gpac/src/filter_core/filter_pck.c:854,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 856
      start: 844
    functionDepth: 9
    functionLinenumber: 844
    functionLinenumberEnd: 856
    functionName: gf_filter_pck_discard
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 58
    functionsReached:
    - GF_LOG
    - gf_filter_packet_destroy
    - PCK_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_discard(GF_FilterPacket *pck)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PCK_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pck.c:1398,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:1399,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filter_core/filter_pck.c:1406,1
    - Dst: gf_filter_pck_send_internal
      Src: /src/gpac/src/filter_core/filter_pck.c:1409,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1410
      start: 1395
    functionDepth: 10
    functionLinenumber: 1395
    functionLinenumberEnd: 1410
    functionName: gf_filter_pck_send
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 176
    functionsReached:
    - gf_filter_pck_discard
    - GF_LOG
    - gf_filter_pck_send_internal
    - PCK_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_send(GF_FilterPacket *pck)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:1419,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:1421,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1424
      start: 1412
    functionDepth: 1
    functionLinenumber: 1412
    functionLinenumberEnd: 1424
    functionName: gf_filter_pck_ref
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 14
    functionsReached:
    - safe_int_inc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_ref(GF_FilterPacket **pck)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:1432,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:1434,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1437
      start: 1426
    functionDepth: 1
    functionLinenumber: 1426
    functionLinenumberEnd: 1437
    functionName: GF_FilterPacket *gf_filter_pck_ref_ex(GF_FilterPacket *pck)
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - safe_int_inc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterPacket *gf_filter_pck_ref_ex(GF_FilterPacket *pck)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_pck.c:1450,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_pck.c:1452,1
    - Dst: gf_filter_pck_reset_props
      Src: /src/gpac/src/filter_core/filter_pck.c:1459,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:1467,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:1471,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:1474,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 32
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1477
      start: 1439
    functionDepth: 4
    functionLinenumber: 1439
    functionLinenumberEnd: 1477
    functionName: gf_filter_pck_ref_props
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 30
    functionsReached:
    - gf_filter_pck_reset_props
    - gf_fq_pop
    - safe_int_inc
    - GF_SAFEALLOC
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_ref_props(GF_FilterPacket **pck)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1482,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1485,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1488,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pck.c:1489,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pck.c:1492,1
    - Dst: gf_filter_packet_destroy
      Src: /src/gpac/src/filter_core/filter_pck.c:1493,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1495
      start: 1479
    functionDepth: 9
    functionLinenumber: 1479
    functionLinenumberEnd: 1495
    functionName: gf_filter_pck_unref
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 105
    functionsReached:
    - safe_int_dec
    - gf_assert
    - gf_filter_packet_destroy
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_unref(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1500,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1501,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1502,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - pck
    - size
    argTypes:
    - GF_FilterPacket*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1507
      start: 1497
    functionDepth: 1
    functionLinenumber: 1497
    functionLinenumberEnd: 1507
    functionName: gf_filter_pck_get_data
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 161
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_pck_get_data(GF_FilterPacket *pck, u32 *size)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1512,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1513,1
    - Dst: PCK_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pck.c:1514,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:1515,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filter_core/filter_pck.c:1522,1
    - Dst: gf_props_get_base_type
      Src: /src/gpac/src/filter_core/filter_pck.c:1525,1
    - Dst: gf_props_get_base_type
      Src: /src/gpac/src/filter_core/filter_pck.c:1525,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:1526,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pck.c:1527,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filter_core/filter_pck.c:1528,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filter_core/filter_pck.c:1530,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filter_core/filter_pck.c:1532,1
    - Dst: exit
      Src: /src/gpac/src/filter_core/filter_pck.c:1533,1
    - Dst: gf_props_4cc_get_flags
      Src: /src/gpac/src/filter_core/filter_pck.c:1535,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:1537,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pck.c:1538,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filter_core/filter_pck.c:1541,1
    - Dst: exit
      Src: /src/gpac/src/filter_core/filter_pck.c:1542,1
    - Dst: gf_props_hash_djb2
      Src: /src/gpac/src/filter_core/filter_pck.c:1547,1
    - Dst: gf_props_new
      Src: /src/gpac/src/filter_core/filter_pck.c:1550,1
    - Dst: gf_props_remove_property
      Src: /src/gpac/src/filter_core/filter_pck.c:1552,1
    - Dst: gf_props_insert_property
      Src: /src/gpac/src/filter_core/filter_pck.c:1556,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 31
    argCount: 5
    argNames:
    - pck
    - prop_4cc
    - prop_name
    - dyn_name
    - value
    argTypes:
    - GF_FilterPacket*
    - u32
    - char*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1557
      start: 1509
    functionDepth: 7
    functionLinenumber: 1509
    functionLinenumberEnd: 1557
    functionName: gf_filter_pck_set_property_full
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_props_4cc_get_type
    - gf_props_get_base_type
    - gf_props_hash_djb2
    - gf_props_4cc_get_name
    - gf_props_remove_property
    - gf_props_insert_property
    - GF_LOG
    - gf_sys_is_test_mode
    - gf_props_4cc_get_flags
    - exit
    - gf_props_new
    - gf_props_get_type_name
    - PCK_IS_INPUT
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_filter_pck_set_property_full(GF_FilterPacket *pck, u32 prop_4cc,
      const char *prop_name, char *dyn_name, const GF_PropertyValue *value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_set_property_full
      Src: /src/gpac/src/filter_core/filter_pck.c:1562,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - pck
    - prop_4cc
    - value
    argTypes:
    - GF_FilterPacket*
    - u32
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1563
      start: 1559
    functionDepth: 8
    functionLinenumber: 1559
    functionLinenumberEnd: 1563
    functionName: gf_filter_pck_set_property
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 48
    functionsReached:
    - gf_filter_pck_set_property_full
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_property(GF_FilterPacket *pck, u32 prop_4cc,
      const GF_PropertyValue *value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_set_property_full
      Src: /src/gpac/src/filter_core/filter_pck.c:1568,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - pck
    - name
    - value
    argTypes:
    - GF_FilterPacket*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1569
      start: 1565
    functionDepth: 8
    functionLinenumber: 1565
    functionLinenumberEnd: 1569
    functionName: gf_filter_pck_set_property_str
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 6
    functionsReached:
    - gf_filter_pck_set_property_full
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_property_str(GF_FilterPacket *pck, const
      char *name, const GF_PropertyValue *value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_set_property_full
      Src: /src/gpac/src/filter_core/filter_pck.c:1574,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - pck
    - name
    - value
    argTypes:
    - GF_FilterPacket*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1575
      start: 1571
    functionDepth: 8
    functionLinenumber: 1571
    functionLinenumberEnd: 1575
    functionName: gf_filter_pck_set_property_dyn
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 8
    functionsReached:
    - gf_filter_pck_set_property_full
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_property_dyn(GF_FilterPacket *pck, char
      *name, const GF_PropertyValue *value)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1584
      start: 1577
    functionDepth: 0
    functionLinenumber: 1577
    functionLinenumberEnd: 1584
    functionName: gf_filter_pck_has_properties
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_has_properties(GF_FilterPacket *pck)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pck.c:1594,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pck.c:1595,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pck.c:1597,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pck.c:1600,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pck.c:1607,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:1609,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pck.c:1609,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:1611,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_pck.c:1613,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pck.c:1616,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1619
      start: 1587
    functionDepth: 3
    functionLinenumber: 1587
    functionLinenumberEnd: 1619
    functionName: GF_PropertyValue *pck_check_prop(GF_FilterPacket *pck, u32 prop_4cc,
      const char *prop_name, const GF_PropertyValue *ret)
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_list_new
    - gf_list_get
    - gf_props_4cc_get_name
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_count
    - strcmp
    - gf_list_add
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE GF_PropertyValue *pck_check_prop(GF_FilterPacket *pck, u32
      prop_4cc, const char *prop_name, const GF_PropertyValue *ret)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _a
    - ','
    - _b
    - ','
    - _str
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1622
      start: 1621
    functionDepth: 0
    functionLinenumber: 1621
    functionLinenumberEnd: 1622
    functionName: pck_check_prop
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: pck_check_prop(_a, _b, _str, c)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filter_core/filter_pck.c:1630,1
    - Dst: gf_props_4cc_get_flags
      Src: /src/gpac/src/filter_core/filter_pck.c:1631,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:1634,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pck.c:1635,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filter_core/filter_pck.c:1638,1
    - Dst: exit
      Src: /src/gpac/src/filter_core/filter_pck.c:1639,1
    - Dst: pck_check_prop
      Src: /src/gpac/src/filter_core/filter_pck.c:1642,1
    - Dst: gf_props_get_property
      Src: /src/gpac/src/filter_core/filter_pck.c:1642,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1643
      start: 1624
    functionDepth: 3
    functionLinenumber: 1624
    functionLinenumberEnd: 1643
    functionName: GF_PropertyValue *gf_filter_pck_get_property(GF_FilterPacket *_pck,
      u32 prop_4cc)
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_props_4cc_get_type
    - gf_props_4cc_get_name
    - GF_LOG
    - gf_props_get_property
    - gf_sys_is_test_mode
    - exit
    - pck_check_prop
    - gf_props_4cc_get_flags
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_PropertyValue *gf_filter_pck_get_property(GF_FilterPacket
      *_pck, u32 prop_4cc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: pck_check_prop
      Src: /src/gpac/src/filter_core/filter_pck.c:1651,1
    - Dst: gf_props_get_property
      Src: /src/gpac/src/filter_core/filter_pck.c:1651,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1652
      start: 1645
    functionDepth: 3
    functionLinenumber: 1645
    functionLinenumberEnd: 1652
    functionName: GF_PropertyValue *gf_filter_pck_get_property_str(GF_FilterPacket
      *_pck, const char *prop_name)
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_props_get_property
    - pck_check_prop
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_PropertyValue *gf_filter_pck_get_property_str(GF_FilterPacket
      *_pck, const char *prop_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_enum_property
      Src: /src/gpac/src/filter_core/filter_pck.c:1658,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1659
      start: 1654
    functionDepth: 2
    functionLinenumber: 1654
    functionLinenumberEnd: 1659
    functionName: GF_PropertyValue *gf_filter_pck_enum_properties(GF_FilterPacket
      *pck, u32 *idx, u32 *prop_4cc, const char **prop_name)
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_props_enum_property
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_PropertyValue *gf_filter_pck_enum_properties(GF_FilterPacket
      *pck, u32 *idx, u32 *prop_4cc, const char **prop_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _pname
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1667
      start: 1661
    functionDepth: 0
    functionLinenumber: 1661
    functionLinenumberEnd: 1667
    functionName: PCK_SETTER_CHECK
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PCK_SETTER_CHECK(_pname)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PCK_SETTER_CHECK
      Src: /src/gpac/src/filter_core/filter_pck.c:1671,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - pck
    - is_start
    - is_end
    argTypes:
    - GF_FilterPacket*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1679
      start: 1668
    functionDepth: 1
    functionLinenumber: 1668
    functionLinenumberEnd: 1679
    functionName: gf_filter_pck_set_framing
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 81
    functionsReached:
    - PCK_SETTER_CHECK
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_framing(GF_FilterPacket *pck, Bool is_start,
      Bool is_end)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1684,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - pck
    - is_start
    - is_end
    argTypes:
    - GF_FilterPacket*
    - Bool*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1690
      start: 1681
    functionDepth: 1
    functionLinenumber: 1681
    functionLinenumberEnd: 1690
    functionName: gf_filter_pck_get_framing
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 29
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_get_framing(GF_FilterPacket *pck, Bool *is_start,
      Bool *is_end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PCK_SETTER_CHECK
      Src: /src/gpac/src/filter_core/filter_pck.c:1696,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - pck
    - dts
    argTypes:
    - GF_FilterPacket*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1699
      start: 1693
    functionDepth: 1
    functionLinenumber: 1693
    functionLinenumberEnd: 1699
    functionName: gf_filter_pck_set_dts
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 51
    functionsReached:
    - PCK_SETTER_CHECK
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_dts(GF_FilterPacket *pck, u64 dts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1704,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1707
      start: 1701
    functionDepth: 1
    functionLinenumber: 1701
    functionLinenumberEnd: 1707
    functionName: gf_filter_pck_get_dts
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 60
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_get_dts(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PCK_SETTER_CHECK
      Src: /src/gpac/src/filter_core/filter_pck.c:1712,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - pck
    - cts
    argTypes:
    - GF_FilterPacket*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1715
      start: 1709
    functionDepth: 1
    functionLinenumber: 1709
    functionLinenumberEnd: 1715
    functionName: gf_filter_pck_set_cts
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 92
    functionsReached:
    - PCK_SETTER_CHECK
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_cts(GF_FilterPacket *pck, u64 cts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1720,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1723
      start: 1717
    functionDepth: 1
    functionLinenumber: 1717
    functionLinenumberEnd: 1723
    functionName: gf_filter_pck_get_cts
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 121
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_get_cts(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1728,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1731
      start: 1725
    functionDepth: 1
    functionLinenumber: 1725
    functionLinenumberEnd: 1731
    functionName: gf_filter_pck_get_timescale
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 32
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_get_timescale(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PCK_SETTER_CHECK
      Src: /src/gpac/src/filter_core/filter_pck.c:1736,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - pck
    - sap_type
    argTypes:
    - GF_FilterPacket*
    - GF_FilterSAPType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1741
      start: 1733
    functionDepth: 1
    functionLinenumber: 1733
    functionLinenumberEnd: 1741
    functionName: gf_filter_pck_set_sap
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 73
    functionsReached:
    - PCK_SETTER_CHECK
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_sap(GF_FilterPacket *pck, GF_FilterSAPType
      sap_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1746,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1749
      start: 1743
    functionDepth: 1
    functionLinenumber: 1743
    functionLinenumberEnd: 1749
    functionName: GF_FilterSAPType::gf_filter_pck_get_sap
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterSAPType gf_filter_pck_get_sap(GF_FilterPacket *pck)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PCK_SETTER_CHECK
      Src: /src/gpac/src/filter_core/filter_pck.c:1754,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - pck
    - is_switch_frame
    argTypes:
    - GF_FilterPacket*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1760
      start: 1751
    functionDepth: 1
    functionLinenumber: 1751
    functionLinenumberEnd: 1760
    functionName: gf_filter_pck_set_switch_frame
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 2
    functionsReached:
    - PCK_SETTER_CHECK
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_switch_frame(GF_FilterPacket *pck, Bool
      is_switch_frame)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1765,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1768
      start: 1762
    functionDepth: 1
    functionLinenumber: 1762
    functionLinenumberEnd: 1768
    functionName: gf_filter_pck_get_switch_frame
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 1
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_get_switch_frame(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PCK_SETTER_CHECK
      Src: /src/gpac/src/filter_core/filter_pck.c:1773,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - pck
    - roll_count
    argTypes:
    - GF_FilterPacket*
    - s16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1776
      start: 1770
    functionDepth: 1
    functionLinenumber: 1770
    functionLinenumberEnd: 1776
    functionName: gf_filter_pck_set_roll_info
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 7
    functionsReached:
    - PCK_SETTER_CHECK
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_roll_info(GF_FilterPacket *pck, s16 roll_count)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1781,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1784
      start: 1778
    functionDepth: 1
    functionLinenumber: 1778
    functionLinenumberEnd: 1784
    functionName: gf_filter_pck_get_roll_info
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 8
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_get_roll_info(GF_FilterPacket *pck)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PCK_SETTER_CHECK
      Src: /src/gpac/src/filter_core/filter_pck.c:1789,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - pck
    - is_interlaced
    argTypes:
    - GF_FilterPacket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1793
      start: 1786
    functionDepth: 1
    functionLinenumber: 1786
    functionLinenumberEnd: 1793
    functionName: gf_filter_pck_set_interlaced
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 11
    functionsReached:
    - PCK_SETTER_CHECK
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_interlaced(GF_FilterPacket *pck, u32 is_interlaced)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1798,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1801
      start: 1795
    functionDepth: 1
    functionLinenumber: 1795
    functionLinenumberEnd: 1801
    functionName: gf_filter_pck_get_interlaced
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 13
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_get_interlaced(GF_FilterPacket *pck)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PCK_SETTER_CHECK
      Src: /src/gpac/src/filter_core/filter_pck.c:1806,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - pck
    - is_corrupted
    argTypes:
    - GF_FilterPacket*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1810
      start: 1803
    functionDepth: 1
    functionLinenumber: 1803
    functionLinenumberEnd: 1810
    functionName: gf_filter_pck_set_corrupted
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 9
    functionsReached:
    - PCK_SETTER_CHECK
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_corrupted(GF_FilterPacket *pck, Bool is_corrupted)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1815,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1818
      start: 1812
    functionDepth: 1
    functionLinenumber: 1812
    functionLinenumberEnd: 1818
    functionName: gf_filter_pck_get_corrupted
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 8
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_get_corrupted(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PCK_SETTER_CHECK
      Src: /src/gpac/src/filter_core/filter_pck.c:1823,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - pck
    - duration
    argTypes:
    - GF_FilterPacket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1827
      start: 1820
    functionDepth: 1
    functionLinenumber: 1820
    functionLinenumberEnd: 1827
    functionName: gf_filter_pck_set_duration
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 58
    functionsReached:
    - PCK_SETTER_CHECK
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_duration(GF_FilterPacket *pck, u32 duration)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1832,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1835
      start: 1829
    functionDepth: 1
    functionLinenumber: 1829
    functionLinenumberEnd: 1835
    functionName: gf_filter_pck_get_duration
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 60
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_get_duration(GF_FilterPacket *pck)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PCK_SETTER_CHECK
      Src: /src/gpac/src/filter_core/filter_pck.c:1840,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - pck
    - is_seek
    argTypes:
    - GF_FilterPacket*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1844
      start: 1837
    functionDepth: 1
    functionLinenumber: 1837
    functionLinenumberEnd: 1844
    functionName: gf_filter_pck_set_seek_flag
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 22
    functionsReached:
    - PCK_SETTER_CHECK
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_seek_flag(GF_FilterPacket *pck, Bool is_seek)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1849,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1852
      start: 1846
    functionDepth: 1
    functionLinenumber: 1846
    functionLinenumberEnd: 1852
    functionName: gf_filter_pck_get_seek_flag
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 23
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_get_seek_flag(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PCK_SETTER_CHECK
      Src: /src/gpac/src/filter_core/filter_pck.c:1857,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - pck
    - dep_flags
    argTypes:
    - GF_FilterPacket*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1861
      start: 1854
    functionDepth: 1
    functionLinenumber: 1854
    functionLinenumberEnd: 1861
    functionName: gf_filter_pck_set_dependency_flags
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 23
    functionsReached:
    - PCK_SETTER_CHECK
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_dependency_flags(GF_FilterPacket *pck,
      u8 dep_flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1866,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1869
      start: 1863
    functionDepth: 1
    functionLinenumber: 1863
    functionLinenumberEnd: 1869
    functionName: gf_filter_pck_get_dependency_flags
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 15
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_get_dependency_flags(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PCK_SETTER_CHECK
      Src: /src/gpac/src/filter_core/filter_pck.c:1874,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - pck
    - version_number
    argTypes:
    - GF_FilterPacket*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1877
      start: 1871
    functionDepth: 1
    functionLinenumber: 1871
    functionLinenumberEnd: 1877
    functionName: gf_filter_pck_set_carousel_version
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 14
    functionsReached:
    - PCK_SETTER_CHECK
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_carousel_version(GF_FilterPacket *pck,
      u8 version_number)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1882,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1885
      start: 1879
    functionDepth: 1
    functionLinenumber: 1879
    functionLinenumberEnd: 1885
    functionName: gf_filter_pck_get_carousel_version
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 12
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_get_carousel_version(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PCK_SETTER_CHECK
      Src: /src/gpac/src/filter_core/filter_pck.c:1890,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - pck
    - byte_offset
    argTypes:
    - GF_FilterPacket*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1893
      start: 1887
    functionDepth: 1
    functionLinenumber: 1887
    functionLinenumberEnd: 1893
    functionName: gf_filter_pck_set_byte_offset
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 43
    functionsReached:
    - PCK_SETTER_CHECK
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_byte_offset(GF_FilterPacket *pck, u64 byte_offset)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1898,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1901
      start: 1895
    functionDepth: 1
    functionLinenumber: 1895
    functionLinenumberEnd: 1901
    functionName: gf_filter_pck_get_byte_offset
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 22
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_get_byte_offset(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PCK_SETTER_CHECK
      Src: /src/gpac/src/filter_core/filter_pck.c:1906,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - pck
    - crypt_flag
    argTypes:
    - GF_FilterPacket*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1910
      start: 1903
    functionDepth: 1
    functionLinenumber: 1903
    functionLinenumberEnd: 1910
    functionName: gf_filter_pck_set_crypt_flags
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 8
    functionsReached:
    - PCK_SETTER_CHECK
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_crypt_flags(GF_FilterPacket *pck, u8 crypt_flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1917
      start: 1912
    functionDepth: 0
    functionLinenumber: 1912
    functionLinenumberEnd: 1917
    functionName: gf_filter_pck_get_crypt_flags
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_get_crypt_flags(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PCK_SETTER_CHECK
      Src: /src/gpac/src/filter_core/filter_pck.c:1922,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - pck
    - seq_num
    argTypes:
    - GF_FilterPacket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1925
      start: 1919
    functionDepth: 1
    functionLinenumber: 1919
    functionLinenumberEnd: 1925
    functionName: gf_filter_pck_set_seq_num
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 3
    functionsReached:
    - PCK_SETTER_CHECK
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_seq_num(GF_FilterPacket *pck, u32 seq_num)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1932
      start: 1927
    functionDepth: 0
    functionLinenumber: 1927
    functionLinenumberEnd: 1932
    functionName: gf_filter_pck_get_seq_num
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_get_seq_num(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PCK_SETTER_CHECK
      Src: /src/gpac/src/filter_core/filter_pck.c:1937,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - pck
    - ctype
    argTypes:
    - GF_FilterPacket*
    - GF_FilterClockType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1941
      start: 1934
    functionDepth: 1
    functionLinenumber: 1934
    functionLinenumberEnd: 1941
    functionName: gf_filter_pck_set_clock_type
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 6
    functionsReached:
    - PCK_SETTER_CHECK
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_clock_type(GF_FilterPacket *pck, GF_FilterClockType
      ctype)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1948
      start: 1943
    functionDepth: 0
    functionLinenumber: 1943
    functionLinenumberEnd: 1948
    functionName: GF_FilterClockType::gf_filter_pck_get_clock_type
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterClockType gf_filter_pck_get_clock_type(GF_FilterPacket
      *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1953,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1955
      start: 1950
    functionDepth: 1
    functionLinenumber: 1950
    functionLinenumberEnd: 1955
    functionName: GF_FilterFrameInterface *gf_filter_pck_get_frame_interface(GF_FilterPacket
      *pck)
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_assert
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterFrameInterface *gf_filter_pck_get_frame_interface(GF_FilterPacket
      *pck)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1960,1
    - Dst: PCK_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pck.c:1961,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:1962,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:1966,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:1970,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_pck.c:1978,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 5
    argNames:
    - pck
    - nb_bytes_to_add
    - data_start
    - new_range_start
    - new_size
    argTypes:
    - GF_FilterPacket*
    - u32
    - u8**
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1991
      start: 1957
    functionDepth: 1
    functionLinenumber: 1957
    functionLinenumberEnd: 1991
    functionName: gf_filter_pck_expand
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 12
    functionsReached:
    - GF_LOG
    - gf_assert
    - PCK_IS_INPUT
    - gf_realloc
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_expand(GF_FilterPacket *pck, u32 nb_bytes_to_add,
      u8 **data_start, u8 **new_range_start, u32 *new_size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1996,1
    - Dst: PCK_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pck.c:1997,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:1998,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:2002,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - pck
    - size
    argTypes:
    - GF_FilterPacket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2007
      start: 1993
    functionDepth: 1
    functionLinenumber: 1993
    functionLinenumberEnd: 2007
    functionName: gf_filter_pck_truncate
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 15
    functionsReached:
    - GF_LOG
    - gf_assert
    - PCK_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_truncate(GF_FilterPacket *pck, u32 size)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2025
      start: 2009
    functionDepth: 0
    functionLinenumber: 2009
    functionLinenumberEnd: 2025
    functionName: gf_filter_pck_is_blocking_ref
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_is_blocking_ref(GF_FilterPacket *pck)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PCK_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pck.c:2030,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - pck
    - data
    - size
    argTypes:
    - GF_FilterPacket*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2040
      start: 2027
    functionDepth: 1
    functionLinenumber: 2027
    functionLinenumberEnd: 2040
    functionName: gf_filter_pck_check_realloc
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 2
    functionsReached:
    - PCK_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_check_realloc(GF_FilterPacket *pck, u8 *data,
      u32 size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:37,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:38,1
    - Dst: gf_filter_packet_destroy
      Src: /src/gpac/src/filter_core/filter_pid.c:39,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - pcki
    argTypes:
    - GF_FilterPacketInstance*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 35
    functionDepth: 9
    functionLinenumber: 35
    functionLinenumberEnd: 42
    functionName: pcki_del
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_free
    - gf_assert
    - gf_filter_packet_destroy
    linkageType: ''
    returnType: void
    signature: void pcki_del(GF_FilterPacketInstance *pcki)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:46,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:47,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_pid.c:48,1
    - Dst: pcki_del
      Src: /src/gpac/src/filter_core/filter_pid.c:49,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:52,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_pid.c:53,1
    - Dst: pcki_del
      Src: /src/gpac/src/filter_core/filter_pid.c:54,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - pidinst
    argTypes:
    - GF_FilterPidInst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 44
    functionDepth: 10
    functionLinenumber: 44
    functionLinenumberEnd: 56
    functionName: gf_filter_pid_inst_reset
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - pcki_del
    - gf_assert
    - gf_list_pop_back
    - gf_fq_count
    - gf_list_count
    - gf_fq_pop
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_inst_reset(GF_FilterPidInst *pidinst)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:60,1
    - Dst: gf_filter_pid_inst_reset
      Src: /src/gpac/src/filter_core/filter_pid.c:61,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:63,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:64,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:67,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:68,1
    - Dst: gf_fq_del
      Src: /src/gpac/src/filter_core/filter_pid.c:71,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/filter_core/filter_pid.c:72,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:73,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:75,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:78,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:81,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:82,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:85,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pid.c:86,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:90,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_pid.c:95,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:97,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:99,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:102,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 37
    argCount: 1
    argNames:
    - pidinst
    argTypes:
    - GF_FilterPidInst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 58
    functionDepth: 11
    functionLinenumber: 58
    functionLinenumberEnd: 103
    functionName: gf_filter_pid_inst_del
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - safe_int_dec
    - gf_mx_p
    - gf_assert
    - gf_filter_pid_inst_reset
    - gf_list_pop_back
    - gf_free
    - gf_fq_del
    - gf_list_find
    - gf_list_count
    - gf_props_del
    - gf_mx_v
    - gf_list_del_item
    - gf_list_del
    - gf_mx_del
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_inst_del(GF_FilterPidInst *pidinst)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_inst_del
      Src: /src/gpac/src/filter_core/filter_pid.c:111,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - pidinst
    argTypes:
    - GF_FilterPidInst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 105
    functionDepth: 12
    functionLinenumber: 105
    functionLinenumberEnd: 113
    functionName: gf_filter_pid_inst_check_delete
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_inst_del
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_inst_check_delete(GF_FilterPidInst *pidinst)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_pid.c:119,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:126,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:128,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filter_core/filter_pid.c:129,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter_pid.c:132,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:134,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - filter
    - pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 116
    functionDepth: 7
    functionLinenumber: 116
    functionLinenumberEnd: 137
    functionName: gf_filter_pid_inst_new
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - snprintf
    - GF_SAFEALLOC
    - gf_list_find
    - gf_mx_new
    - gf_fq_new
    linkageType: ''
    returnType: GF_FilterPidInst
    signature: GF_FilterPidInst *gf_filter_pid_inst_new(GF_Filter *filter, GF_FilterPid
      *pid)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:149,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:151,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:152,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:153,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:155,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:161,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:176,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:181,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:183,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:185,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:187,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:188,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:190,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:201,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filter_core/filter_pid.c:204,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:207,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 46
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 139
    functionDepth: 7
    functionLinenumber: 139
    functionLinenumberEnd: 208
    functionName: gf_filter_pid_check_unblock
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_mx_p
    - gf_assert
    - GF_LOG
    - safe_int_inc
    - gf_mx_v
    - gf_filter_post_process_task
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_check_unblock(GF_FilterPid *pid)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:218,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:225,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:227,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:228,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:232,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:238,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter_pid.c:241,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:244,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:245,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:246,1
    - Dst: gf_filter_pid_post_connect_task
      Src: /src/gpac/src/filter_core/filter_pid.c:247,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 29
    argCount: 1
    argNames:
    - pidi
    argTypes:
    - GF_FilterPidInst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 251
    functionName: gf_filter_pid_inst_check_dependencies
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_fs_post_disconnect_task
    - gf_filter_pid_post_connect_task
    - GF_LOG
    - safe_int_inc
    - gf_mx_v
    - gf_filter_pid_get_property_first
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_inst_check_dependencies(GF_FilterPidInst *pidi)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:260,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:263,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:267,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:272,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:286,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:288,1
    - Dst: MAX
      Src: /src/gpac/src/filter_core/filter_pid.c:296,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:305,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:308,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:310,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:313,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:320,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:326,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:329,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:332,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:335,1
    - Dst: MAX
      Src: /src/gpac/src/filter_core/filter_pid.c:343,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:356,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:358,1
    - Dst: gf_filter_pid_inst_check_dependencies
      Src: /src/gpac/src/filter_core/filter_pid.c:361,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:369,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:395,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 114
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 253
    functionDepth: 2
    functionLinenumber: 253
    functionLinenumberEnd: 396
    functionName: gf_filter_pid_update_caps
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_mx_p
    - gf_list_get
    - GF_LOG
    - gf_filter_pid_inst_check_dependencies
    - safe_int_inc
    - gf_mx_v
    - MAX
    - gf_filter_pid_get_property_first
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_update_caps(GF_FilterPid *pid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 398
    functionDepth: 0
    functionLinenumber: 398
    functionLinenumberEnd: 402
    functionName: TASK_REQUEUE
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TASK_REQUEUE(_t)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:409,1
    - Dst: TASK_REQUEUE
      Src: /src/gpac/src/filter_core/filter_pid.c:412,1
    - Dst: gf_filter_pid_inst_reset
      Src: /src/gpac/src/filter_core/filter_pid.c:419,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:424,1
    - Dst: TASK_REQUEUE
      Src: /src/gpac/src/filter_core/filter_pid.c:425,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:431,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:432,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:433,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:434,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:440,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:443,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:444,1
    - Dst: gf_filter_pid_inst_del
      Src: /src/gpac/src/filter_core/filter_pid.c:446,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:453,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:454,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:465,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:467,1
    - Dst: gf_filter_pid_check_unblock
      Src: /src/gpac/src/filter_core/filter_pid.c:476,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filter_core/filter_pid.c:478,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:482,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:484,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:485,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:490,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:491,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:500,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:506,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:509,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:514,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:519,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 74
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 520
      start: 402
    functionDepth: 12
    functionLinenumber: 402
    functionLinenumberEnd: 520
    functionName: gf_filter_pid_inst_delete_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_mx_p
    - gf_assert
    - gf_filter_pid_inst_reset
    - gf_list_get
    - gf_filter_pid_check_unblock
    - GF_LOG
    - gf_list_find
    - gf_filter_pid_would_block
    - gf_fq_count
    - gf_list_count
    - gf_filter_post_remove
    - gf_filter_pid_inst_del
    - gf_mx_v
    - gf_list_del_item
    - TASK_REQUEUE
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_inst_delete_task(GF_FSTask *task)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:524,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter_pid.c:525,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - session
    - filter
    - pid
    - pidinst
    argTypes:
    - GF_FilterSession*
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPidInst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 526
      start: 522
    functionDepth: 6
    functionLinenumber: 522
    functionLinenumberEnd: 526
    functionName: gf_fs_post_pid_instance_delete_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - safe_int_inc
    - gf_fs_post_task
    linkageType: ''
    returnType: void
    signature: void gf_fs_post_pid_instance_delete_task(GF_FilterSession *session,
      GF_Filter *filter, GF_FilterPid *pid, GF_FilterPidInst *pidinst)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_inst_reset
      Src: /src/gpac/src/filter_core/filter_pid.c:536,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:538,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:539,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:540,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:541,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:544,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:546,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:547,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:548,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:549,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:553,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:554,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:557,1
    - Dst: gf_filter_pid_inst_check_delete
      Src: /src/gpac/src/filter_core/filter_pid.c:560,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:568,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:570,1
    - Dst: gf_filter_pid_inst_swap_delete
      Src: /src/gpac/src/filter_core/filter_pid.c:573,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:578,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 4
    argNames:
    - filter
    - pid
    - pidinst
    - dst_swapinst
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_FilterPidInst*
    - GF_FilterPidInst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 529
    functionDepth: 13
    functionLinenumber: 529
    functionLinenumberEnd: 579
    functionName: gf_filter_pid_inst_swap_delete
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - safe_int_dec
    - gf_mx_p
    - gf_assert
    - gf_filter_pid_inst_reset
    - gf_list_get
    - gf_filter_pid_inst_swap_delete
    - GF_LOG
    - gf_filter_pid_inst_check_delete
    - gf_list_find
    - gf_list_count
    - gf_filter_post_remove
    - gf_mx_v
    - gf_list_del_item
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_inst_swap_delete(GF_Filter *filter, GF_FilterPid
      *pid, GF_FilterPidInst *pidinst, GF_FilterPidInst *dst_swapinst)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TASK_REQUEUE
      Src: /src/gpac/src/filter_core/filter_pid.c:593,1
    - Dst: gf_filter_pid_inst_swap_delete
      Src: /src/gpac/src/filter_core/filter_pid.c:599,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 7
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 600
      start: 581
    functionDepth: 14
    functionLinenumber: 581
    functionLinenumberEnd: 600
    functionName: gf_filter_pid_inst_swap_delete_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - TASK_REQUEUE
    - gf_filter_pid_inst_swap_delete
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_inst_swap_delete_task(GF_FSTask *task)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:610,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:617,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:626,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:628,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:629,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:630,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:631,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:632,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:633,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:634,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:642,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_pid.c:648,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:650,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:651,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:654,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:655,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:656,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_pid.c:659,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:660,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:663,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:667,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:668,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filter_core/filter_pid.c:669,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:671,1
    - Dst: gf_props_merge_property
      Src: /src/gpac/src/filter_core/filter_pid.c:693,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:694,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:695,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pid.c:696,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filter_core/filter_pid.c:704,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:713,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:714,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:717,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:718,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter_pid.c:719,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:722,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:723,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:725,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:726,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:727,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:730,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:732,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:733,1
    - Dst: gf_filter_pid_inst_check_delete
      Src: /src/gpac/src/filter_core/filter_pid.c:734,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:738,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:744,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter_pid.c:748,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 118
    argCount: 2
    argNames:
    - filter
    - dst
    argTypes:
    - GF_Filter*
    - GF_FilterPidInst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 602
    functionDepth: 13
    functionLinenumber: 602
    functionLinenumberEnd: 750
    functionName: gf_filter_pid_inst_swap
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_inst_check_delete
    - gf_list_find
    - gf_list_count
    - gf_fq_pop
    - gf_filter_post_process_task
    - gf_props_del
    - gf_assert
    - gf_list_new
    - gf_fs_post_task
    - gf_list_add
    - gf_fq_add
    - gf_mx_p
    - gf_props_merge_property
    - GF_LOG
    - gf_filter_post_remove
    - gf_mx_v
    - safe_int_inc
    - gf_list_del_item
    - safe_int_dec
    - gf_list_pop_front
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_inst_swap(GF_Filter *filter, GF_FilterPidInst *dst)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:760,1
    - Dst: gf_fq_get
      Src: /src/gpac/src/filter_core/filter_pid.c:762,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:765,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:766,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:768,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:770,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:772,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:775,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:776,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:778,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 1
    argNames:
    - pidinst
    argTypes:
    - GF_FilterPidInst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 781
      start: 755
    functionDepth: 2
    functionLinenumber: 755
    functionLinenumberEnd: 781
    functionName: gf_filter_instance_detach_pid
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 3
    functionsReached:
    - safe_int_dec
    - gf_assert
    - gf_list_get
    - gf_fq_count
    - gf_list_count
    - gf_fq_get
    linkageType: ''
    returnType: void
    signature: void gf_filter_instance_detach_pid(GF_FilterPidInst *pidinst)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:787,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:790,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:793,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:794,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 797
      start: 783
    functionDepth: 1
    functionLinenumber: 783
    functionLinenumberEnd: 797
    functionName: task_canceled
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_free
    - free_evt
    linkageType: ''
    returnType: void
    signature: void task_canceled(GF_FSTask *task)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_pid.c:809,1
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:810,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_pid.c:812,1
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:813,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter_pid.c:815,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_pid.c:818,1
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:819,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 821
      start: 806
    functionDepth: 1
    functionLinenumber: 806
    functionLinenumberEnd: 821
    functionName: gf_filter_pid_connect_failure
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event_internal
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_connect_failure(GF_FilterPid *pid)
  - BBCount: 81
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:838,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:842,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:844,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:845,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:851,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:853,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:855,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:861,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:869,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:870,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:878,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:879,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:886,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:898,1
    - Dst: gf_filter_pid_inst_new
      Src: /src/gpac/src/filter_core/filter_pid.c:901,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:910,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:912,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:913,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:914,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:916,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:918,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:919,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:920,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:921,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:927,1
    - Dst: gf_filter_pid_update_caps
      Src: /src/gpac/src/filter_core/filter_pid.c:932,1
    - Dst: gf_filter_pid_inst_swap
      Src: /src/gpac/src/filter_core/filter_pid.c:939,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter_pid.c:948,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:951,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_pid.c:952,1
    - Dst: GF_Filter*::freg::configure_pid
      Src: /src/gpac/src/filter_core/filter_pid.c:953,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_pid.c:954,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:979,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filter_core/filter_pid.c:983,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:990,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_pid.c:990,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:996,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_pid.c:996,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:997,1
    - Dst: gf_filter_relink_dst
      Src: /src/gpac/src/filter_core/filter_pid.c:998,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1005,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1006,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1007,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_pid.c:1010,1
    - Dst: GF_Filter*::freg::configure_pid
      Src: /src/gpac/src/filter_core/filter_pid.c:1011,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_pid.c:1012,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1013,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1015,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1016,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1017,1
    - Dst: gf_filter_instance_detach_pid
      Src: /src/gpac/src/filter_core/filter_pid.c:1019,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1020,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1024,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1025,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1026,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1029,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1030,1
    - Dst: gf_fq_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1032,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1037,1
    - Dst: gf_filter_pid_inst_check_delete
      Src: /src/gpac/src/filter_core/filter_pid.c:1040,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1042,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1054,1
    - Dst: gf_filter_pid_post_connect_task
      Src: /src/gpac/src/filter_core/filter_pid.c:1055,1
    - Dst: gf_filter_clone
      Src: /src/gpac/src/filter_core/filter_pid.c:1058,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1063,1
    - Dst: gf_filter_pid_post_connect_task
      Src: /src/gpac/src/filter_core/filter_pid.c:1064,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1067,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1072,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_pid.c:1072,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1076,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_pid.c:1076,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1087,1
    - Dst: gf_filter_pid_connect_failure
      Src: /src/gpac/src/filter_core/filter_pid.c:1094,1
    - Dst: gf_fs_post_pid_instance_delete_task
      Src: /src/gpac/src/filter_core/filter_pid.c:1100,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1104,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:1107,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1109,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1110,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_pid.c:1111,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter_pid.c:1112,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_pid.c:1114,1
    - Dst: GF_Filter*::freg::configure_pid
      Src: /src/gpac/src/filter_core/filter_pid.c:1115,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_pid.c:1116,1
    - Dst: gf_filter_pid_post_init_task
      Src: /src/gpac/src/filter_core/filter_pid.c:1118,1
    - Dst: gf_fs_post_pid_instance_delete_task
      Src: /src/gpac/src/filter_core/filter_pid.c:1119,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1127,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1132,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1133,1
    - Dst: gf_filter_pid_post_init_task
      Src: /src/gpac/src/filter_core/filter_pid.c:1136,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1139,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1139,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1144,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1146,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filter_core/filter_pid.c:1149,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:1151,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:1158,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1163,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1165,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1166,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1167,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pid.c:1168,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:1174,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:1175,1
    - Dst: gf_filter_notification_failure
      Src: /src/gpac/src/filter_core/filter_pid.c:1179,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:1181,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1186,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_pid.c:1189,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_pid.c:1191,1
    - Dst: GF_FilterPid*::filter::freg::process_event
      Src: /src/gpac/src/filter_core/filter_pid.c:1192,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_pid.c:1193,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1211,1
    - Dst: gf_fq_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1213,1
    - Dst: gf_filter_check_pending_pids
      Src: /src/gpac/src/filter_core/filter_pid.c:1217,1
    - Dst: jsfs_on_filter_pid_reconfig
      Src: /src/gpac/src/filter_core/filter_pid.c:1223,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1227,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1229,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1230,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1233,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1242,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1244,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1245,1
    - Dst: gf_filter_instance_detach_pid
      Src: /src/gpac/src/filter_core/filter_pid.c:1246,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1247,1
    - Dst: gf_filter_reset_pending_packets
      Src: /src/gpac/src/filter_core/filter_pid.c:1252,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1258,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:1263,1
    - Dst: gf_fs_post_pid_instance_delete_task
      Src: /src/gpac/src/filter_core/filter_pid.c:1267,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1273,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1274,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_pid.c:1282,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filter_core/filter_pid.c:1283,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_pid.c:1287,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filter_core/filter_pid.c:1288,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filter_core/filter_pid.c:1296,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:1301,1
    - Dst: gf_filter_pid_update_caps
      Src: /src/gpac/src/filter_core/filter_pid.c:1311,1
    CyclomaticComplexity: 118
    EdgeCount: 118
    ICount: 355
    argCount: 3
    argNames:
    - filter
    - pid
    - ctype
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_PidConnectType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1313
      start: 822
    functionDepth: 14
    functionLinenumber: 822
    functionLinenumberEnd: 1313
    functionName: gf_filter_pid_configure
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_logs_thread_tag
    - gf_logs_thread_untag
    - gf_filter_pid_inst_check_delete
    - gf_filter_pid_connect_failure
    - gf_list_find
    - gf_list_count
    - GF_Filter*::freg::configure_pid
    - gf_fs_post_pid_instance_delete_task
    - gf_filter_post_process_task
    - gf_filter_check_pending_pids
    - FSESS_CHECK_THREAD
    - gf_props_del
    - gf_assert
    - gf_list_get
    - gf_list_new
    - gf_list_pop_back
    - GF_FEVT_INIT
    - gf_list_add
    - gf_filter_clone
    - gf_fq_get
    - gf_filter_pid_post_init_task
    - gf_mx_p
    - gf_list_reset
    - GF_LOG
    - gf_filter_relink_dst
    - gf_filter_post_remove
    - gf_mx_v
    - gf_filter_instance_detach_pid
    - gf_list_del_item
    - gf_error_to_string
    - gf_filter_pid_inst_new
    - jsfs_on_filter_pid_reconfig
    - gf_filter_pid_send_event
    - gf_list_del
    - safe_int_dec
    - gf_filter_pid_update_caps
    - gf_filter_pid_post_connect_task
    - GF_FilterPid*::filter::freg::process_event
    - gf_filter_pid_remove
    - gf_filter_reset_pending_packets
    - gf_filter_pid_inst_swap
    - gf_fq_count
    - gf_filter_notification_failure
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_filter_pid_configure(GF_Filter *filter, GF_FilterPid *pid,
      GF_PidConnectType ctype)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1328,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1329,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:1330,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1337,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1339,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:1341,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1345,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_pid.c:1347,1
    - Dst: GF_Filter*::freg::configure_pid
      Src: /src/gpac/src/filter_core/filter_pid.c:1348,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_pid.c:1349,1
    - Dst: gf_filter_pid_inst_del
      Src: /src/gpac/src/filter_core/filter_pid.c:1350,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1353,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:1354,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1357,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1358,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1362,1
    - Dst: gf_filter_clone
      Src: /src/gpac/src/filter_core/filter_pid.c:1367,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1372,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1374,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1376,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1377,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1379,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1380,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1381,1
    - Dst: gf_filter_pid_connect_failure
      Src: /src/gpac/src/filter_core/filter_pid.c:1384,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1390,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1391,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1392,1
    - Dst: gf_filter_pid_configure
      Src: /src/gpac/src/filter_core/filter_pid.c:1393,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1402,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1403,1
    - Dst: gf_fs_cleanup_filters
      Src: /src/gpac/src/filter_core/filter_pid.c:1405,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 67
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1407
      start: 1315
    functionDepth: 15
    functionLinenumber: 1315
    functionLinenumberEnd: 1407
    functionName: gf_filter_pid_connect_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_logs_thread_tag
    - gf_logs_thread_untag
    - gf_filter_pid_connect_failure
    - gf_list_count
    - GF_Filter*::freg::configure_pid
    - gf_assert
    - gf_list_get
    - gf_filter_pid_inst_del
    - gf_fs_cleanup_filters
    - gf_filter_clone
    - gf_mx_p
    - GF_LOG
    - gf_filter_post_remove
    - gf_filter_pid_configure
    - gf_mx_v
    - gf_list_del_item
    - gf_list_del
    - safe_int_dec
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_connect_task(GF_FSTask *task)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1411,1
    - Dst: gf_filter_pid_configure
      Src: /src/gpac/src/filter_core/filter_pid.c:1414,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1421
      start: 1409
    functionDepth: 15
    functionLinenumber: 1409
    functionLinenumberEnd: 1421
    functionName: gf_filter_pid_reconfigure_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_filter_pid_configure
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_reconfigure_task(GF_FSTask *task)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1426,1
    - Dst: gf_filter_pid_configure
      Src: /src/gpac/src/filter_core/filter_pid.c:1429,1
    - Dst: gf_filter_aggregate_packets
      Src: /src/gpac/src/filter_core/filter_pid.c:1444,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:1445,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:1446,1
    - Dst: gf_filter_pid_inst_del
      Src: /src/gpac/src/filter_core/filter_pid.c:1453,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1455
      start: 1423
    functionDepth: 15
    functionLinenumber: 1423
    functionLinenumberEnd: 1455
    functionName: gf_filter_pid_reconfigure_task_discard
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_drop_packet
    - GF_LOG
    - gf_filter_pid_configure
    - gf_filter_pid_inst_del
    - gf_filter_pid_get_packet
    - gf_filter_aggregate_packets
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_reconfigure_task_discard(GF_FSTask *task)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1459,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1461,1
    - Dst: gf_filter_pid_configure
      Src: /src/gpac/src/filter_core/filter_pid.c:1466,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1468,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1472,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1473,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:1481,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1483,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1485,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1486,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1492,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1494,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1495,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1496
      start: 1457
    functionDepth: 15
    functionLinenumber: 1457
    functionLinenumberEnd: 1496
    functionName: gf_filter_pid_disconnect_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_mx_p
    - GF_LOG
    - gf_list_count
    - gf_filter_post_remove
    - gf_filter_pid_configure
    - gf_mx_v
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_disconnect_task(GF_FSTask *task)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:1503,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:1505,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:1506,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter_pid.c:1508,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - session
    - filter
    - pid
    argTypes:
    - GF_FilterSession*
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1509
      start: 1498
    functionDepth: 6
    functionLinenumber: 1498
    functionLinenumberEnd: 1509
    functionName: gf_fs_post_disconnect_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 7
    functionsReached:
    - safe_int_inc
    - gf_fs_post_task
    linkageType: ''
    returnType: void
    signature: void gf_fs_post_disconnect_task(GF_FilterSession *session, GF_Filter
      *filter, GF_FilterPid *pid)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: TASK_REQUEUE
      Src: /src/gpac/src/filter_core/filter_pid.c:1522,1
    - Dst: TASK_REQUEUE
      Src: /src/gpac/src/filter_core/filter_pid.c:1526,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1532,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1539,1
    - Dst: gf_filter_process_inline
      Src: /src/gpac/src/filter_core/filter_pid.c:1545,1
    - Dst: TASK_REQUEUE
      Src: /src/gpac/src/filter_core/filter_pid.c:1549,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1553,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1554,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1555,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1556,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1560,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1562,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1569,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1570,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1572,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1573,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1574,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pid.c:1575,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1580,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1582,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1583,1
    - Dst: safe_int_sub
      Src: /src/gpac/src/filter_core/filter_pid.c:1584,1
    - Dst: gf_filter_pid_inst_reset
      Src: /src/gpac/src/filter_core/filter_pid.c:1585,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1587,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1588,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1589,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1590,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1593,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:1596,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:1598,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:1599,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1607,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1608,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 71
    argCount: 2
    argNames:
    - task
    - no_flush
    argTypes:
    - GF_FSTask*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1609
      start: 1511
    functionDepth: 11
    functionLinenumber: 1511
    functionLinenumberEnd: 1609
    functionName: gf_filter_pid_detach_task_ex
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_mx_p
    - gf_list_get
    - gf_assert
    - gf_filter_pid_inst_reset
    - gf_list_new
    - safe_int_sub
    - GF_LOG
    - gf_filter_process_inline
    - gf_list_find
    - gf_fq_count
    - gf_list_count
    - gf_mx_v
    - gf_list_add
    - gf_list_del_item
    - TASK_REQUEUE
    - gf_props_del
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_detach_task_ex(GF_FSTask *task, Bool no_flush)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_detach_task_ex
      Src: /src/gpac/src/filter_core/filter_pid.c:1613,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1614
      start: 1611
    functionDepth: 12
    functionLinenumber: 1611
    functionLinenumberEnd: 1614
    functionName: gf_filter_pid_detach_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_detach_task_ex
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_detach_task(GF_FSTask *task)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_detach_task_ex
      Src: /src/gpac/src/filter_core/filter_pid.c:1618,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1619
      start: 1616
    functionDepth: 12
    functionLinenumber: 1616
    functionLinenumberEnd: 1619
    functionName: gf_filter_pid_detach_task_no_flush
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_detach_task_ex
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_detach_task_no_flush(GF_FSTask *task)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:1624,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1625,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1627,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:1628,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_pid.c:1629,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - pid
    - name
    argTypes:
    - GF_FilterPid*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1631
      start: 1621
    functionDepth: 1
    functionLinenumber: 1621
    functionLinenumberEnd: 1631
    functionName: gf_filter_pid_set_name
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 31
    functionsReached:
    - gf_free
    - gf_strdup
    - GF_LOG
    - strcmp
    - PID_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_set_name(GF_FilterPid *pid, const char *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1637
      start: 1633
    functionDepth: 0
    functionLinenumber: 1633
    functionLinenumberEnd: 1637
    functionName: gf_filter_pid_get_name
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 47
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_pid_get_name(GF_FilterPid *pid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:1642,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1646
      start: 1639
    functionDepth: 1
    functionLinenumber: 1639
    functionLinenumberEnd: 1646
    functionName: gf_filter_pid_get_filter_name
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 3
    functionsReached:
    - PID_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_pid_get_filter_name(GF_FilterPid *pid)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_pid.c:1656,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1657,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1659,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1663,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1665,1
    - Dst: gf_filter_pid_orig_src_args
      Src: /src/gpac/src/filter_core/filter_pid.c:1668,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1670,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1673,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1678,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 26
    argCount: 2
    argNames:
    - pid
    - for_unicity
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1680
      start: 1648
    functionDepth: 1
    functionLinenumber: 1648
    functionLinenumberEnd: 1680
    functionName: gf_filter_pid_orig_src_args
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 5
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - strstr
    - gf_mx_v
    - strcmp
    - gf_filter_pid_orig_src_args
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_pid_orig_src_args(GF_FilterPid *pid, Bool for_unicity)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1689,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1691,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1694,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1696,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1701
      start: 1682
    functionDepth: 1
    functionLinenumber: 1682
    functionLinenumberEnd: 1701
    functionName: gf_filter_pid_get_source_filter_name
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 3
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_pid_get_source_filter_name(GF_FilterPid *pid)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 5
    argNames:
    - pid
    - max_slots
    - nb_pck
    - max_duration
    - duration
    argTypes:
    - GF_FilterPid*
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1717
      start: 1703
    functionDepth: 0
    functionLinenumber: 1703
    functionLinenumberEnd: 1717
    functionName: gf_filter_pid_get_buffer_occupancy
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_get_buffer_occupancy(GF_FilterPid *pid, u32
      *max_slots, u32 *nb_pck, u32 *max_duration, u32 *duration)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:1722,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - pid
    - udta
    argTypes:
    - GF_FilterPid*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1727
      start: 1719
    functionDepth: 1
    functionLinenumber: 1719
    functionLinenumberEnd: 1727
    functionName: gf_filter_pid_set_udta
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 58
    functionsReached:
    - PID_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_set_udta(GF_FilterPid *pid, void *udta)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:1732,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1737
      start: 1729
    functionDepth: 1
    functionLinenumber: 1729
    functionLinenumberEnd: 1737
    functionName: gf_filter_pid_get_udta
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 86
    functionsReached:
    - PID_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_pid_get_udta(GF_FilterPid *pid)
  - BBCount: 77
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:1755,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1761,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1764,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1767,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1770,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1773,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:1779,1
    - Dst: gf_filter_pid_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:1780,1
    - Dst: gf_4cc_parse
      Src: /src/gpac/src/filter_core/filter_pid.c:1781,1
    - Dst: gf_filter_pid_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:1789,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:1809,1
    - Dst: atoi
      Src: /src/gpac/src/filter_core/filter_pid.c:1810,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1813,1
    - Dst: gf_filter_pid_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:1814,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1834,1
    - Dst: gf_filter_pid_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:1835,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:1848,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:1850,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:1853,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1860,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1868,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1869,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1885,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1885,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1895,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filter_core/filter_pid.c:1907,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:1915,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filter_core/filter_pid.c:1916,1
    - Dst: gf_filter_pid_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:1918,1
    - Dst: gf_filter_pid_get_property_entry_str
      Src: /src/gpac/src/filter_core/filter_pid.c:1921,1
    - Dst: gf_props_dump_val
      Src: /src/gpac/src/filter_core/filter_pid.c:1934,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filter_core/filter_pid.c:1947,1
    - Dst: gf_stream_type_by_name
      Src: /src/gpac/src/filter_core/filter_pid.c:1952,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filter_core/filter_pid.c:1954,1
    - Dst: gf_filter_pid_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:1956,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter_pid.c:1964,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filter_core/filter_pid.c:1968,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:2006,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pid.c:2006,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter_pid.c:2012,1
    CyclomaticComplexity: 97
    EdgeCount: 97
    ICount: 238
    argCount: 6
    argNames:
    - src_pid
    - frag_name
    - pid_excluded
    - needs_resolve
    - prop_not_found
    - prop_dump_buffer
    argTypes:
    - GF_FilterPid*
    - char*
    - Bool*
    - Bool*
    - Bool*
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2017
      start: 1739
    functionDepth: 4
    functionLinenumber: 1739
    functionLinenumberEnd: 2017
    functionName: filter_pid_check_fragment
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_props_equal
    - gf_props_reset_single
    - gf_stream_type_by_name
    - gf_filter_pid_get_property_entry_str
    - atoi
    - gf_4cc_parse
    - strchr
    - gf_list_get
    - gf_codecid_parse
    - gf_props_parse_value
    - gf_props_get_id
    - gf_filter_pid_get_property_entry
    - gf_props_4cc_get_name
    - GF_4CC
    - GF_LOG
    - strnicmp
    - strlen
    - strcmp
    - gf_props_dump_val
    linkageType: ''
    returnType: Bool
    signature: Bool filter_pid_check_fragment(GF_FilterPid *src_pid, char *frag_name,
      Bool *pid_excluded, Bool *needs_resolve, Bool *prop_not_found, char prop_dump_buffer[GF_PROP_DUMP_ARG_SIZE])
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:2038,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:2057,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:2061,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:2065,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:2077,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:2088,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_pid.c:2094,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:2095,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:2096,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:2107,1
    - Dst: filter_pid_check_fragment
      Src: /src/gpac/src/filter_core/filter_pid.c:2110,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:2114,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:2115,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_pid.c:2119,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:2119,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:2119,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter_pid.c:2121,1
    - Dst: strcat
      Src: /src/gpac/src/filter_core/filter_pid.c:2123,1
    - Dst: strcat
      Src: /src/gpac/src/filter_core/filter_pid.c:2124,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:2129,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:2130,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:2134,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:2137,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:2161,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:2183,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:2196,1
    CyclomaticComplexity: 59
    EdgeCount: 59
    ICount: 145
    argCount: 6
    argNames:
    - src_pid
    - src_filter_id
    - dst_filter
    - pid_excluded
    - needs_clone
    - ext_source_ids
    argTypes:
    - GF_FilterPid*
    - char*
    - GF_Filter*
    - Bool*
    - Bool*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2204
      start: 2019
    functionDepth: 5
    functionLinenumber: 2019
    functionLinenumberEnd: 2204
    functionName: filter_source_id_match
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_malloc
    - strcat
    - gf_assert
    - gf_strdup
    - filter_pid_check_fragment
    - gf_free
    - strncpy
    - strncmp
    - strcmp
    - strchr
    - strlen
    linkageType: ''
    returnType: Bool
    signature: Bool filter_source_id_match(GF_FilterPid *src_pid, const char *src_filter_id,
      GF_Filter *dst_filter, Bool *pid_excluded, Bool *needs_clone, const char *ext_source_ids)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:2214,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:2216,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:2221,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:2222,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:2226,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:2227,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:2228,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:2232,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:2233,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:2234,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:2235,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:2239,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 2
    argNames:
    - parent
    - filter
    argTypes:
    - GF_Filter*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2241
      start: 2206
    functionDepth: 1
    functionLinenumber: 2206
    functionLinenumberEnd: 2241
    functionName: gf_filter_in_parent_chain
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 5
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_filter_in_parent_chain
    - gf_list_count
    - gf_mx_v
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_in_parent_chain(GF_Filter *parent, GF_Filter *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 2
    argNames:
    - c1
    - c2
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2252
      start: 2244
    functionDepth: 0
    functionLinenumber: 2244
    functionLinenumberEnd: 2252
    functionName: cap_code_match
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool cap_code_match(u32 c1, u32 c2)
  - BBCount: 64
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:2302,1
    - Dst: gf_codecid_type
      Src: /src/gpac/src/filter_core/filter_pid.c:2303,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:2318,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:2371,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filter_core/filter_pid.c:2381,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:2390,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:2392,1
    - Dst: gf_filter_pid_get_property_str_first
      Src: /src/gpac/src/filter_core/filter_pid.c:2397,1
    - Dst: cap_code_match
      Src: /src/gpac/src/filter_core/filter_pid.c:2442,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:2444,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filter_core/filter_pid.c:2459,1
    CyclomaticComplexity: 124
    EdgeCount: 124
    ICount: 185
    argCount: 7
    argNames:
    - src_pid_or_ipid
    - freg
    - filter_inst
    - priority
    - dst_bundle_idx
    - dst_filter
    - for_bundle_idx
    argTypes:
    - GF_FilterPid*
    - GF_FilterRegister*
    - GF_Filter*
    - s16*
    - u32*
    - GF_Filter*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2502
      start: 2255
    functionDepth: 4
    functionLinenumber: 2255
    functionLinenumberEnd: 2502
    functionName: gf_filter_pid_caps_match
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 3
    functionsReached:
    - cap_code_match
    - gf_props_equal
    - gf_filter_pid_get_property
    - gf_filter_pid_get_property_str_first
    - strcmp
    - gf_codecid_type
    - gf_filter_pid_get_property_first
    linkageType: ''
    returnType: Bool
    signature: Bool gf_filter_pid_caps_match(GF_FilterPid *src_pid_or_ipid, const
      GF_FilterRegister *freg, GF_Filter *filter_inst, s16 *priority, u32 *dst_bundle_idx,
      GF_Filter *dst_filter, s32 for_bundle_idx)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 2
    argNames:
    - caps
    - nb_caps
    argTypes:
    - GF_FilterCapability*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2519
      start: 2504
    functionDepth: 0
    functionLinenumber: 2504
    functionLinenumberEnd: 2519
    functionName: gf_filter_caps_bundle_count
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: u32
    signature: u32 gf_filter_caps_bundle_count(const GF_FilterCapability *caps, u32
      nb_caps)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - caps
    - nb_caps
    - check_in
    argTypes:
    - GF_FilterCapability*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2539
      start: 2521
    functionDepth: 0
    functionLinenumber: 2521
    functionLinenumberEnd: 2539
    functionName: gf_filter_has_in_out_caps
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Bool
    signature: Bool gf_filter_has_in_out_caps(const GF_FilterCapability *caps, u32
      nb_caps, Bool check_in)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_has_in_out_caps
      Src: /src/gpac/src/filter_core/filter_pid.c:2542,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - caps
    - nb_caps
    argTypes:
    - GF_FilterCapability*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2543
      start: 2540
    functionDepth: 1
    functionLinenumber: 2540
    functionLinenumberEnd: 2543
    functionName: gf_filter_has_out_caps
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 5
    functionsReached:
    - gf_filter_has_in_out_caps
    linkageType: ''
    returnType: Bool
    signature: Bool gf_filter_has_out_caps(const GF_FilterCapability *caps, u32 nb_caps)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_has_in_out_caps
      Src: /src/gpac/src/filter_core/filter_pid.c:2546,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - caps
    - nb_caps
    argTypes:
    - GF_FilterCapability*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2547
      start: 2544
    functionDepth: 1
    functionLinenumber: 2544
    functionLinenumberEnd: 2547
    functionName: gf_filter_has_in_caps
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 3
    functionsReached:
    - gf_filter_has_in_out_caps
    linkageType: ''
    returnType: Bool
    signature: Bool gf_filter_has_in_caps(const GF_FilterCapability *caps, u32 nb_caps)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:2555,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:2557,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:2559,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - b
    argTypes:
    - GF_BundleDesc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2560
      start: 2549
    functionDepth: 0
    functionLinenumber: 2549
    functionLinenumberEnd: 2560
    functionName: cache_bundle_free
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void cache_bundle_free(GF_BundleDesc *b)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:2569,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:2572,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_pid.c:2575,1
    - Dst: cap_code_match
      Src: /src/gpac/src/filter_core/filter_pid.c:2605,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:2607,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_pid.c:2614,1
    - Dst: cache_bundle_free
      Src: /src/gpac/src/filter_core/filter_pid.c:2616,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_pid.c:2634,1
    - Dst: cache_bundle_free
      Src: /src/gpac/src/filter_core/filter_pid.c:2636,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_pid.c:2662,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_pid.c:2669,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 98
    argCount: 6
    argNames:
    - freg
    - b_idx
    - bundle_cache
    - caps
    - nb_caps
    - for_output
    argTypes:
    - GF_FilterRegister*
    - u32
    - GF_BundleCache*
    - GF_FilterCapability*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2675
      start: 2562
    functionDepth: 1
    functionLinenumber: 2562
    functionLinenumberEnd: 2675
    functionName: caps_load_bundle
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - cap_code_match
    - cache_bundle_free
    - gf_assert
    - GF_SAFEALLOC
    - strcmp
    - gf_realloc
    linkageType: ''
    returnType: GF_BundleDesc
    signature: GF_BundleDesc *caps_load_bundle(const GF_FilterRegister *freg, u32
      b_idx, GF_BundleCache *bundle_cache, const GF_FilterCapability *caps, u32 nb_caps,
      Bool for_output)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:2684,1
    - Dst: caps_load_bundle
      Src: /src/gpac/src/filter_core/filter_pid.c:2691,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:2695,1
    - Dst: caps_load_bundle
      Src: /src/gpac/src/filter_core/filter_pid.c:2701,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:2706,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:2713,1
    - Dst: cap_code_match
      Src: /src/gpac/src/filter_core/filter_pid.c:2730,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:2733,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filter_core/filter_pid.c:2773,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filter_core/filter_pid.c:2795,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filter_core/filter_pid.c:2808,1
    CyclomaticComplexity: 63
    EdgeCount: 63
    ICount: 133
    argCount: 9
    argNames:
    - src
    - src_bundle_idx
    - dst_reg
    - dst_filter
    - dst_bundle_idx
    - loaded_filter_flags
    - src_stream_type
    - bundle_cache_src
    - bundle_cache_dst
    argTypes:
    - GF_FilterRegister*
    - u32
    - GF_FilterRegister*
    - GF_Filter*
    - u32
    - u32*
    - s32*
    - GF_BundleCache*
    - GF_BundleCache*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2878
      start: 2677
    functionDepth: 4
    functionLinenumber: 2677
    functionLinenumberEnd: 2878
    functionName: gf_filter_caps_to_caps_match
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - cap_code_match
    - caps_load_bundle
    - gf_assert
    - gf_props_equal
    - GF_LOG
    - strcmp
    linkageType: ''
    returnType: u32
    signature: u32 gf_filter_caps_to_caps_match(const GF_FilterRegister *src, u32
      src_bundle_idx, const GF_FilterRegister *dst_reg, GF_Filter *dst_filter, u32
      dst_bundle_idx, u32 *loaded_filter_flags, s32 *src_stream_type, GF_BundleCache
      *bundle_cache_src, GF_BundleCache *bundle_cache_dst)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:2886,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter_pid.c:2890,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - _pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2893
      start: 2880
    functionDepth: 5
    functionLinenumber: 2880
    functionLinenumberEnd: 2893
    functionName: gf_filter_pid_check_caps
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 99
    functionsReached:
    - PID_IS_OUTPUT
    - gf_filter_pid_caps_match
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_check_caps(GF_FilterPid *_pid)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_pid.c:2901,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:2904,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:2905,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:2906,1
    - Dst: strcat
      Src: /src/gpac/src/filter_core/filter_pid.c:2913,1
    - Dst: strncat
      Src: /src/gpac/src/filter_core/filter_pid.c:2915,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 4
    argNames:
    - sess
    - prefRegister
    - reg_key
    - args
    argTypes:
    - GF_FilterSession*
    - char[]
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2916
      start: 2896
    functionDepth: 0
    functionLinenumber: 2896
    functionLinenumberEnd: 2916
    functionName: concat_reg
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - strcat
    - strstr
    - strncat
    - strchr
    - strlen
    linkageType: ''
    returnType: void
    signature: void concat_reg(GF_FilterSession *sess, char prefRegister[1001], const
      char *reg_key, const char *args)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:2950,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 44
    argCount: 2
    argNames:
    - freg
    - bundle_idx
    argTypes:
    - GF_FilterRegister*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2963
      start: 2918
    functionDepth: 0
    functionLinenumber: 2918
    functionLinenumberEnd: 2963
    functionName: gf_filter_out_caps_solved_by_connection
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: Bool
    signature: Bool gf_filter_out_caps_solved_by_connection(const GF_FilterRegister
      *freg, u32 bundle_idx)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_enable_edges
      Src: /src/gpac/src/filter_core/filter_pid.c:3061,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 63
    argCount: 9
    argNames:
    - fsess
    - reg_desc
    - src_cap_idx
    - src_freg
    - rlevel
    - dst_stream_type
    - parent_desc
    - pid
    - pid_stream_type
    argTypes:
    - GF_FilterSession*
    - GF_FilterRegDesc*
    - u32
    - GF_FilterRegister*
    - u32
    - s32
    - GF_FilterRegDesc*
    - GF_FilterPid*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3083
      start: 2971
    functionDepth: 1
    functionLinenumber: 2971
    functionLinenumberEnd: 3083
    functionName: gf_filter_pid_enable_edges
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_enable_edges
    linkageType: ''
    returnType: u32
    signature: u32 gf_filter_pid_enable_edges(GF_FilterSession *fsess, GF_FilterRegDesc
      *reg_desc, u32 src_cap_idx, const GF_FilterRegister *src_freg, u32 rlevel, s32
      dst_stream_type, GF_FilterRegDesc *parent_desc, GF_FilterPid *pid, u32 pid_stream_type)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_pid.c:3095,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_pid.c:3096,1
    - Dst: gf_filter_caps_to_caps_match
      Src: /src/gpac/src/filter_core/filter_pid.c:3107,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_pid.c:3113,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:3115,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:3116,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:3117,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_pid.c:3119,1
    - Dst: gf_filter_caps_to_caps_match
      Src: /src/gpac/src/filter_core/filter_pid.c:3139,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_pid.c:3145,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 52
    argCount: 4
    argNames:
    - reg_desc
    - a_reg
    - nb_dst_caps
    - dst_filter
    argTypes:
    - GF_FilterRegDesc*
    - GF_FilterRegDesc*
    - u32
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3160
      start: 3085
    functionDepth: 5
    functionLinenumber: 3085
    functionLinenumberEnd: 3160
    functionName: gf_filter_reg_build_graph_single
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - GF_SAFEALLOC
    - gf_filter_caps_to_caps_match
    - memset
    - gf_realloc
    linkageType: ''
    returnType: void
    signature: void gf_filter_reg_build_graph_single(GF_FilterRegDesc *reg_desc, GF_FilterRegDesc
      *a_reg, u32 nb_dst_caps, GF_Filter *dst_filter)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_pid.c:3174,1
    - Dst: gf_filter_caps_bundle_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3178,1
    - Dst: gf_filter_has_in_caps
      Src: /src/gpac/src/filter_core/filter_pid.c:3183,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter_pid.c:3191,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3194,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3196,1
    - Dst: gf_filter_reg_build_graph_single
      Src: /src/gpac/src/filter_core/filter_pid.c:3199,1
    - Dst: gf_filter_reg_build_graph_single
      Src: /src/gpac/src/filter_core/filter_pid.c:3203,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 30
    argCount: 5
    argNames:
    - links
    - freg
    - src_pid
    - dst_filter
    - orig_nb_bundles
    argTypes:
    - GF_List*
    - GF_FilterRegister*
    - GF_FilterPid*
    - GF_Filter*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3206
      start: 3162
    functionDepth: 6
    functionLinenumber: 3162
    functionLinenumberEnd: 3206
    functionName: gf_filter_reg_build_graph
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - GF_SAFEALLOC
    - gf_filter_has_out_caps
    - gf_list_count
    - gf_filter_reg_build_graph_single
    - gf_filter_caps_bundle_count
    - gf_filter_has_in_caps
    linkageType: ''
    returnType: GF_FilterRegDesc
    signature: GF_FilterRegDesc *gf_filter_reg_build_graph(GF_List *links, const GF_FilterRegister
      *freg, GF_FilterPid *src_pid, GF_Filter *dst_filter, u32 orig_nb_bundles)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: cache_bundle_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3214,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3216,1
    - Dst: cache_bundle_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3220,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3222,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3224,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - reg_desc
    argTypes:
    - GF_FilterRegDesc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3226
      start: 3208
    functionDepth: 1
    functionLinenumber: 3208
    functionLinenumberEnd: 3226
    functionName: bundle_cache_free
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_free
    - cache_bundle_free
    linkageType: ''
    returnType: void
    signature: void bundle_cache_free(GF_FilterRegDesc *reg_desc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3230,1
    - Dst: bundle_cache_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3232,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3232,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3234
      start: 3228
    functionDepth: 2
    functionLinenumber: 3228
    functionLinenumberEnd: 3234
    functionName: reset_bundle_cache
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - bundle_cache_free
    linkageType: ''
    returnType: void
    signature: void reset_bundle_cache(GF_FilterSession *fsess)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:3240,1
    - Dst: gf_filter_reg_build_graph
      Src: /src/gpac/src/filter_core/filter_pid.c:3243,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3245,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:3247,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_pid.c:3251,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3253,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3255,1
    - Dst: gf_filter_reg_build_graph
      Src: /src/gpac/src/filter_core/filter_pid.c:3256,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3258,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:3260,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3263,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_pid.c:3263,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3267,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3269,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3270,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3272,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3274,1
    - Dst: reset_bundle_cache
      Src: /src/gpac/src/filter_core/filter_pid.c:3278,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 2
    argNames:
    - fsess
    - for_reg
    argTypes:
    - GF_FilterSession*
    - GF_FilterRegister*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3279
      start: 3236
    functionDepth: 7
    functionLinenumber: 3236
    functionLinenumberEnd: 3279
    functionName: gf_filter_sess_build_graph
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - reset_bundle_cache
    - gf_list_new
    - gf_list_get
    - GF_LOG
    - gf_filter_reg_build_graph
    - gf_list_count
    - gf_list_add
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: void
    signature: void gf_filter_sess_build_graph(GF_FilterSession *fsess, const GF_FilterRegister
      *for_reg)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:3283,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3287,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3290,1
    - Dst: memmove
      Src: /src/gpac/src/filter_core/filter_pid.c:3298,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3306,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:3307,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3308,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3309,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3312,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_pid.c:3313,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3314,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3315,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:3318,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 2
    argNames:
    - fsess
    - freg
    argTypes:
    - GF_FilterSession*
    - GF_FilterRegister*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3319
      start: 3281
    functionDepth: 3
    functionLinenumber: 3281
    functionLinenumberEnd: 3319
    functionName: gf_filter_sess_reset_graph
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 5
    functionsReached:
    - gf_free
    - gf_mx_p
    - gf_list_get
    - gf_list_pop_back
    - memmove
    - gf_list_count
    - gf_mx_v
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_filter_sess_reset_graph(GF_FilterSession *fsess, const GF_FilterRegister
      *freg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filter_core/filter_pid.c:3325,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3328,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3330,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3333,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3335,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3337,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3340,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3341,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3344,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3346,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - is_before
    - reg_dst
    - dijkstra_nodes
    argTypes:
    - Bool
    - GF_FilterRegDesc*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3348
      start: 3322
    functionDepth: 2
    functionLinenumber: 3322
    functionLinenumberEnd: 3348
    functionName: dump_graph_edges
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_log_tool_level_on
    - gf_list_get
    - GF_LOG
    linkageType: ''
    returnType: void
    signature: void dump_graph_edges(Bool is_before, GF_FilterRegDesc *reg_dst, GF_List
      *dijkstra_nodes)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_enum_property
      Src: /src/gpac/src/filter_core/filter_pid.c:3359,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:3367,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 18
    argCount: 2
    argNames:
    - pid
    - freg
    argTypes:
    - GF_FilterPid*
    - GF_FilterRegister*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3378
      start: 3351
    functionDepth: 2
    functionLinenumber: 3351
    functionLinenumberEnd: 3378
    functionName: gf_filter_pid_caps_negociate_match
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - strcmp
    - gf_props_enum_property
    linkageType: ''
    returnType: Bool
    signature: Bool gf_filter_pid_caps_negociate_match(GF_FilterPid *pid, const GF_FilterRegister
      *freg)
  - BBCount: 64
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_pid.c:3391,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3393,1
    - Dst: gf_filter_sess_build_graph
      Src: /src/gpac/src/filter_core/filter_pid.c:3394,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:3396,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:3400,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3409,1
    - Dst: gf_props_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:3411,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3419,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3424,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:3426,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:3469,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:3474,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:3482,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:3486,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:3491,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:3492,1
    - Dst: gf_filter_pid_caps_negociate_match
      Src: /src/gpac/src/filter_core/filter_pid.c:3500,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter_pid.c:3520,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:3551,1
    - Dst: gf_filter_reg_build_graph
      Src: /src/gpac/src/filter_core/filter_pid.c:3555,1
    - Dst: dump_graph_edges
      Src: /src/gpac/src/filter_core/filter_pid.c:3562,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter_pid.c:3575,1
    - Dst: gf_filter_pid_enable_edges
      Src: /src/gpac/src/filter_core/filter_pid.c:3608,1
    - Dst: reset_bundle_cache
      Src: /src/gpac/src/filter_core/filter_pid.c:3611,1
    - Dst: dump_graph_edges
      Src: /src/gpac/src/filter_core/filter_pid.c:3615,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3620,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3623,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:3636,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3643,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3644,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3646,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3647,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3649,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_pid.c:3653,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3657,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3665,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3673,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:3683,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3689,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter_pid.c:3710,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_pid.c:3719,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3727,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3733,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_pid.c:3740,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3741,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3748,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3759,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:3760,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:3761,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3764,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3766,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:3768,1
    - Dst: bundle_cache_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3770,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3771,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3772,1
    CyclomaticComplexity: 118
    EdgeCount: 118
    ICount: 265
    argCount: 7
    argNames:
    - pid
    - dst
    - prefRegister
    - reconfigurable_only
    - tmp_blacklist
    - link_info
    - out_reg_chain
    argTypes:
    - GF_FilterPid*
    - GF_Filter*
    - char*
    - Bool
    - GF_List*
    - GF_LinkInfo*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3773
      start: 3380
    functionDepth: 8
    functionLinenumber: 3380
    functionLinenumberEnd: 3773
    functionName: gf_filter_pid_resolve_link_dijkstra
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - bundle_cache_free
    - gf_free
    - gf_props_get_property
    - gf_list_find
    - gf_filter_reg_build_graph
    - gf_list_count
    - gf_filter_sess_build_graph
    - gf_list_new
    - gf_list_get
    - gf_assert
    - gf_list_add
    - gf_filter_pid_caps_match
    - reset_bundle_cache
    - dump_graph_edges
    - GF_LOG
    - strstr
    - gf_sys_clock_high_res
    - gf_list_del
    - gf_filter_pid_get_property
    - gf_filter_pid_enable_edges
    - gf_filter_pid_caps_negociate_match
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_resolve_link_dijkstra(GF_FilterPid *pid, GF_Filter
      *dst, const char *prefRegister, Bool reconfigurable_only, GF_List *tmp_blacklist,
      GF_LinkInfo *link_info, GF_List *out_reg_chain)
  - BBCount: 76
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:3799,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:3805,1
    - Dst: concat_reg
      Src: /src/gpac/src/filter_core/filter_pid.c:3808,1
    - Dst: concat_reg
      Src: /src/gpac/src/filter_core/filter_pid.c:3809,1
    - Dst: concat_reg
      Src: /src/gpac/src/filter_core/filter_pid.c:3810,1
    - Dst: concat_reg
      Src: /src/gpac/src/filter_core/filter_pid.c:3811,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:3813,1
    - Dst: gf_filter_pid_resolve_link_dijkstra
      Src: /src/gpac/src/filter_core/filter_pid.c:3814,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:3815,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3817,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3833,1
    - Dst: gf_filter_swap_source_register
      Src: /src/gpac/src/filter_core/filter_pid.c:3844,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3846,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3848,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3853,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3858,1
    - Dst: gf_filter_is_sink
      Src: /src/gpac/src/filter_core/filter_pid.c:3860,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_pid.c:3867,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:3871,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3873,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3874,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3876,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3881,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3882,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:3883,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:3883,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3890,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3891,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:3892,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:3892,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3899,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:3901,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3909,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:3911,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:3921,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:3922,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3924,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:3927,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:3942,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3943,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:3944,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filter_core/filter_pid.c:3950,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3951,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_pid.c:3955,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3972,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3973,1
    - Dst: gf_filter_out_caps_solved_by_connection
      Src: /src/gpac/src/filter_core/filter_pid.c:3999,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:4003,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:4005,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:4008,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:4016,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4017,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:4035,1
    - Dst: gf_filter_reconnect_output
      Src: /src/gpac/src/filter_core/filter_pid.c:4043,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:4048,1
    - Dst: gf_filter_new
      Src: /src/gpac/src/filter_core/filter_pid.c:4050,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_pid.c:4053,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_pid.c:4093,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_pid.c:4095,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_pid.c:4097,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4101,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4108,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4113,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:4127,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:4129,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4130,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:4133,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:4145,1
    CyclomaticComplexity: 129
    EdgeCount: 129
    ICount: 264
    argCount: 7
    argNames:
    - pid
    - dst
    - filter_reassigned
    - reconfigurable_only_type
    - min_chain_len
    - skip_if_in_filter_list
    - skipped
    argTypes:
    - GF_FilterPid*
    - GF_Filter*
    - Bool*
    - u32
    - u32*
    - GF_List*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4147
      start: 3785
    functionDepth: 11
    functionLinenumber: 3785
    functionLinenumberEnd: 4147
    functionName: gf_filter_pid_resolve_link_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_log_tool_level_on
    - gf_list_find
    - gf_list_count
    - gf_filter_is_sink
    - gf_filter_reconnect_output
    - gf_filter_new
    - gf_list_new
    - gf_list_get
    - gf_assert
    - gf_strdup
    - sprintf
    - gf_list_add
    - gf_filter_out_caps_solved_by_connection
    - gf_mx_p
    - GF_LOG
    - gf_filter_swap_source_register
    - strstr
    - gf_mx_v
    - concat_reg
    - gf_list_del_item
    - gf_list_del
    - gf_filter_pid_resolve_link_dijkstra
    - gf_opts_get_bool
    linkageType: ''
    returnType: GF_Filter
    signature: GF_Filter *gf_filter_pid_resolve_link_internal(GF_FilterPid *pid, GF_Filter
      *dst, Bool *filter_reassigned, u32 reconfigurable_only_type, u32 *min_chain_len,
      GF_List *skip_if_in_filter_list, Bool *skipped)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_resolve_link_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:4151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - pid
    - dst
    - filter_reassigned
    argTypes:
    - GF_FilterPid*
    - GF_Filter*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4152
      start: 4149
    functionDepth: 12
    functionLinenumber: 4149
    functionLinenumberEnd: 4152
    functionName: gf_filter_pid_resolve_link
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_resolve_link_internal
    linkageType: ''
    returnType: GF_Filter
    signature: GF_Filter *gf_filter_pid_resolve_link(GF_FilterPid *pid, GF_Filter
      *dst, Bool *filter_reassigned)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_resolve_link_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:4156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - pid
    - dst
    - filter_reassigned
    - skip_if_in_filter_list
    - skipped
    argTypes:
    - GF_FilterPid*
    - GF_Filter*
    - Bool*
    - GF_List*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4157
      start: 4154
    functionDepth: 12
    functionLinenumber: 4154
    functionLinenumberEnd: 4157
    functionName: gf_filter_pid_resolve_link_check_loaded
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_resolve_link_internal
    linkageType: ''
    returnType: GF_Filter
    signature: GF_Filter *gf_filter_pid_resolve_link_check_loaded(GF_FilterPid *pid,
      GF_Filter *dst, Bool *filter_reassigned, GF_List *skip_if_in_filter_list, Bool
      *skipped)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_resolve_link_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:4161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - pid
    - dst
    - check_reconfig_only
    argTypes:
    - GF_FilterPid*
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4162
      start: 4159
    functionDepth: 12
    functionLinenumber: 4159
    functionLinenumberEnd: 4162
    functionName: gf_filter_pid_resolve_link_for_caps
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_resolve_link_internal
    linkageType: ''
    returnType: GF_Filter
    signature: GF_Filter *gf_filter_pid_resolve_link_for_caps(GF_FilterPid *pid, GF_Filter
      *dst, Bool check_reconfig_only)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_resolve_link_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:4167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - pid
    - dst
    argTypes:
    - GF_FilterPid*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4169
      start: 4164
    functionDepth: 12
    functionLinenumber: 4164
    functionLinenumberEnd: 4169
    functionName: gf_filter_pid_resolve_link_length
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_resolve_link_internal
    linkageType: ''
    returnType: u32
    signature: u32 gf_filter_pid_resolve_link_length(GF_FilterPid *pid, GF_Filter
      *dst)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_needs_explicit_resolution
      Src: /src/gpac/src/filter_core/filter_pid.c:4182,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:4185,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter_pid.c:4188,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4189,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4193,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:4197,1
    - Dst: concat_reg
      Src: /src/gpac/src/filter_core/filter_pid.c:4200,1
    - Dst: concat_reg
      Src: /src/gpac/src/filter_core/filter_pid.c:4201,1
    - Dst: concat_reg
      Src: /src/gpac/src/filter_core/filter_pid.c:4202,1
    - Dst: concat_reg
      Src: /src/gpac/src/filter_core/filter_pid.c:4203,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:4205,1
    - Dst: gf_filter_pid_resolve_link_dijkstra
      Src: /src/gpac/src/filter_core/filter_pid.c:4206,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:4207,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:4208,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:4209,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4212,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4214,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 4
    argNames:
    - pid
    - dst
    - tmp_blacklist
    - link_info
    argTypes:
    - GF_FilterPid*
    - GF_Filter*
    - GF_List*
    - GF_LinkInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4216
      start: 4173
    functionDepth: 9
    functionLinenumber: 4173
    functionLinenumberEnd: 4216
    functionName: gf_filter_pid_compute_link
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - gf_mx_p
    - gf_list_new
    - gf_filter_pid_needs_explicit_resolution
    - sprintf
    - gf_filter_pid_resolve_link_dijkstra
    - gf_list_count
    - gf_mx_v
    - gf_list_add
    - concat_reg
    - gf_list_del
    - gf_filter_pid_caps_match
    linkageType: ''
    returnType: GF_List
    signature: GF_List *gf_filter_pid_compute_link(GF_FilterPid *pid, GF_Filter *dst,
      GF_List *tmp_blacklist, GF_LinkInfo *link_info)
  - BBCount: 64
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_pid.c:4251,1
    - Dst: gf_fs_path_escape_colon
      Src: /src/gpac/src/filter_core/filter_pid.c:4254,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4256,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4260,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_pid.c:4266,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:4279,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:4279,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:4279,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter_pid.c:4279,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filter_core/filter_pid.c:4282,1
    - Dst: gf_feof
      Src: /src/gpac/src/filter_core/filter_pid.c:4284,1
    - Dst: gf_fgets
      Src: /src/gpac/src/filter_core/filter_pid.c:4288,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:4290,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4291,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4299,1
    - Dst: gf_filter_pid_set_args_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:4304,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filter_core/filter_pid.c:4306,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:4308,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4315,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:4322,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filter_core/filter_pid.c:4323,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filter_core/filter_pid.c:4324,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filter_core/filter_pid.c:4327,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filter_core/filter_pid.c:4328,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4337,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:4340,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4349,1
    - Dst: filter_pid_check_fragment
      Src: /src/gpac/src/filter_core/filter_pid.c:4355,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:4361,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4362,1
    - Dst: strpbrk
      Src: /src/gpac/src/filter_core/filter_pid.c:4391,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_pid.c:4392,1
    - Dst: filter_solve_prop_template
      Src: /src/gpac/src/filter_core/filter_pid.c:4393,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter_pid.c:4394,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:4396,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:4402,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter_pid.c:4404,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filter_core/filter_pid.c:4406,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4415,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter_pid.c:4416,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filter_core/filter_pid.c:4418,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filter_core/filter_pid.c:4419,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filter_core/filter_pid.c:4420,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filter_core/filter_pid.c:4421,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filter_core/filter_pid.c:4423,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter_pid.c:4425,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4428,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter_pid.c:4429,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filter_core/filter_pid.c:4431,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filter_core/filter_pid.c:4432,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filter_core/filter_pid.c:4433,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filter_core/filter_pid.c:4434,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filter_core/filter_pid.c:4435,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filter_core/filter_pid.c:4436,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filter_core/filter_pid.c:4437,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filter_core/filter_pid.c:4438,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filter_core/filter_pid.c:4439,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filter_core/filter_pid.c:4440,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filter_core/filter_pid.c:4441,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filter_core/filter_pid.c:4442,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filter_core/filter_pid.c:4444,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter_pid.c:4446,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filter_core/filter_pid.c:4452,1
    - Dst: gf_stream_type_by_name
      Src: /src/gpac/src/filter_core/filter_pid.c:4462,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter_pid.c:4471,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:4475,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter_pid.c:4482,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter_pid.c:4484,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_pid.c:4489,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filter_core/filter_pid.c:4490,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter_pid.c:4502,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:4506,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter_pid.c:4507,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:4508,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter_pid.c:4509,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4513,1
    - Dst: gf_props_parse_type
      Src: /src/gpac/src/filter_core/filter_pid.c:4516,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:4518,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_pid.c:4524,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter_pid.c:4529,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter_pid.c:4534,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filter_core/filter_pid.c:4536,1
    CyclomaticComplexity: 105
    EdgeCount: 105
    ICount: 275
    argCount: 5
    argNames:
    - filter
    - pid
    - args
    - use_default_seps
    - argfile_level
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - char*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4552
      start: 4219
    functionDepth: 9
    functionLinenumber: 4219
    functionLinenumberEnd: 4552
    functionName: gf_filter_pid_set_args_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_opts_set_key
    - gf_bs_new
    - gf_props_reset_single
    - gf_file_exists
    - strpbrk
    - gf_bs_write_u16
    - gf_filter_pid_set_property_str
    - gf_stream_type_by_name
    - memset
    - gf_fopen
    - strchr
    - gf_bs_write_u32
    - filter_solve_prop_template
    - filter_pid_check_fragment
    - gf_feof
    - gf_strdup
    - gf_bs_get_content
    - strncmp
    - gf_filter_pid_set_args_internal
    - gf_codecid_parse
    - gf_props_parse_value
    - gf_props_get_id
    - gf_fgets
    - GF_LOG
    - strstr
    - strncpy
    - gf_fs_path_escape_colon
    - gf_props_parse_type
    - gf_filter_pid_set_property_dyn
    - gf_filter_pid_set_property
    - strlen
    - gf_fclose
    - gf_props_4cc_get_type
    - gf_bs_del
    - strcmp
    - GF_4CC
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_set_args_internal(GF_Filter *filter, GF_FilterPid
      *pid, char *args, Bool use_default_seps, u32 argfile_level)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:4558,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:4559,1
    - Dst: gf_filter_pid_set_args_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:4567,1
    - Dst: gf_filter_pid_set_args_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:4570,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 4
    argNames:
    - pid
    - args
    - direct_merge
    - use_default_seps
    argTypes:
    - GF_FilterPid*
    - char*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4573
      start: 4554
    functionDepth: 10
    functionLinenumber: 4554
    functionLinenumberEnd: 4573
    functionName: gf_filter_pid_push_properties
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - GF_LOG
    - PID_IS_INPUT
    - gf_filter_pid_set_args_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_push_properties(GF_FilterPid *pid, char *args,
      Bool direct_merge, Bool use_default_seps)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_args_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:4585,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - filter
    - pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4587
      start: 4575
    functionDepth: 10
    functionLinenumber: 4575
    functionLinenumberEnd: 4587
    functionName: gf_filter_pid_set_args
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_args_internal
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_set_args(GF_Filter *filter, GF_FilterPid *pid)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:4598,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:4600,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:4602,1
    - Dst: gf_filter_last_id_in_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:4607,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:4609,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:4616,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 25
    argCount: 2
    argNames:
    - filter
    - ignore_first
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4618
      start: 4589
    functionDepth: 1
    functionLinenumber: 4589
    functionLinenumberEnd: 4618
    functionName: gf_filter_last_id_in_chain
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_mx_v
    - gf_filter_last_id_in_chain
    linkageType: ''
    returnType: char
    signature: char *gf_filter_last_id_in_chain(GF_Filter *filter, Bool ignore_first)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:4622,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:4627,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4628,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:4630,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter_pid.c:4633,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - src_pid
    - pid
    - dst_filter
    argTypes:
    - GF_FilterPid*
    - GF_FilterPid*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4634
      start: 4620
    functionDepth: 7
    functionLinenumber: 4620
    functionLinenumberEnd: 4634
    functionName: gf_filter_pid_retry_caps_negotiate
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - gf_assert
    - gf_list_new
    - gf_fs_post_disconnect_task
    - safe_int_inc
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_retry_caps_negotiate(GF_FilterPid *src_pid, GF_FilterPid
      *pid, GF_Filter *dst_filter)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:4644,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:4649,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:4651,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 65
    argCount: 2
    argNames:
    - pid
    - dst
    argTypes:
    - GF_FilterPid*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4720
      start: 4637
    functionDepth: 1
    functionLinenumber: 4637
    functionLinenumberEnd: 4720
    functionName: gf_filter_pid_needs_explicit_resolution
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_get_property_first
    linkageType: ''
    returnType: Bool
    signature: Bool gf_filter_pid_needs_explicit_resolution(GF_FilterPid *pid, GF_Filter
      *dst)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:4726,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:4727,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:4730,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:4730,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:4731,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filter_core/filter_pid.c:4732,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:4735,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:4735,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4739,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 2
    argNames:
    - possible_linked_resolutions
    - filter_dst
    argTypes:
    - GF_List*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4740
      start: 4722
    functionDepth: 2
    functionLinenumber: 4722
    functionLinenumberEnd: 4740
    functionName: add_possible_link_destination
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_get
    - gf_list_find
    - gf_list_count
    - gf_list_add
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void add_possible_link_destination(GF_List *possible_linked_resolutions,
      GF_Filter *filter_dst)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:4748,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filter_core/filter_pid.c:4749,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:4750,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pid.c:4750,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filter_core/filter_pid.c:4750,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4752
      start: 4743
    functionDepth: 5
    functionLinenumber: 4743
    functionLinenumberEnd: 4752
    functionName: dump_pid_props
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_props_4cc_get_name
    - GF_LOG
    - gf_props_dump
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void dump_pid_props(GF_FilterPid *pid)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:4763,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:4765,1
    - Dst: gf_pid_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:4766,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:4774,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 2
    argNames:
    - pid
    - look_for_pid
    argTypes:
    - GF_FilterPid*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4776
      start: 4755
    functionDepth: 1
    functionLinenumber: 4755
    functionLinenumberEnd: 4776
    functionName: gf_pid_in_parent_chain
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_mx_v
    - gf_pid_in_parent_chain
    linkageType: ''
    returnType: Bool
    signature: Bool gf_pid_in_parent_chain(GF_FilterPid *pid, GF_FilterPid *look_for_pid)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:4780,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:4782,1
    - Dst: filter_match_target_dst
      Src: /src/gpac/src/filter_core/filter_pid.c:4784,1
    - Dst: filter_match_target_dst
      Src: /src/gpac/src/filter_core/filter_pid.c:4786,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - flist
    - dst
    argTypes:
    - GF_List*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4790
      start: 4778
    functionDepth: 1
    functionLinenumber: 4778
    functionLinenumberEnd: 4790
    functionName: filter_match_target_dst
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - filter_match_target_dst
    linkageType: ''
    returnType: Bool
    signature: Bool filter_match_target_dst(GF_List *flist, GF_Filter *dst)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:4796,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:4798,1
    - Dst: parent_chain_has_dyn_pids
      Src: /src/gpac/src/filter_core/filter_pid.c:4799,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:4800,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:4804,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4806
      start: 4792
    functionDepth: 1
    functionLinenumber: 4792
    functionLinenumberEnd: 4806
    functionName: parent_chain_has_dyn_pids
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_mx_v
    - parent_chain_has_dyn_pids
    linkageType: ''
    returnType: Bool
    signature: Bool parent_chain_has_dyn_pids(GF_Filter *filter)
  - BBCount: 181
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:4838,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:4839,1
    - Dst: gf_filter_reconf_output
      Src: /src/gpac/src/filter_core/filter_pid.c:4851,1
    - Dst: gf_fs_check_graph_load
      Src: /src/gpac/src/filter_core/filter_pid.c:4855,1
    - Dst: gf_filter_pid_set_args
      Src: /src/gpac/src/filter_core/filter_pid.c:4858,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:4865,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:4870,1
    - Dst: gf_filter_last_id_in_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:4878,1
    - Dst: gf_filter_last_id_in_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:4880,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:4895,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:4897,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:4898,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:4899,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:4901,1
    - Dst: gf_list_clone
      Src: /src/gpac/src/filter_core/filter_pid.c:4921,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:4941,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:4954,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:4965,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter_pid.c:4989,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter_pid.c:4991,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5006,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5007,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5019,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5025,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5026,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5037,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5038,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5041,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5042,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5044,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5052,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5078,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5082,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5083,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5085,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5087,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5090,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5097,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:5098,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5099,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5100,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5103,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5104,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5105,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:5106,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5113,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5131,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter_pid.c:5144,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5145,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5150,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5156,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5162,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5170,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5179,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5185,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5186,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5191,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:5207,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5209,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5210,1
    - Dst: gf_pid_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5212,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5215,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5218,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:5219,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5222,1
    - Dst: gf_pid_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5224,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5227,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5232,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5233,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5234,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5235,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5236,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5238,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5239,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5240,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5253,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5257,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5267,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5271,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5281,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5288,1
    - Dst: filter_source_id_match
      Src: /src/gpac/src/filter_core/filter_pid.c:5298,1
    - Dst: gf_filter_last_id_in_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5307,1
    - Dst: filter_source_id_match
      Src: /src/gpac/src/filter_core/filter_pid.c:5308,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5315,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5330,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5337,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5349,1
    - Dst: filter_source_id_match
      Src: /src/gpac/src/filter_core/filter_pid.c:5352,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5354,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5360,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5366,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5375,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:5386,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:5389,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:5395,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filter_core/filter_pid.c:5398,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5401,1
    - Dst: gf_codecid_type
      Src: /src/gpac/src/filter_core/filter_pid.c:5405,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter_pid.c:5411,1
    - Dst: gf_filter_set_id
      Src: /src/gpac/src/filter_core/filter_pid.c:5412,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:5413,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filter_core/filter_pid.c:5414,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_pid.c:5415,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter_pid.c:5424,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5455,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5457,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5465,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5465,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:5467,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter_pid.c:5476,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5496,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5498,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5499,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5500,1
    - Dst: gf_filter_pid_needs_explicit_resolution
      Src: /src/gpac/src/filter_core/filter_pid.c:5515,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5516,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5524,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5525,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:5534,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:5543,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5546,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:5547,1
    - Dst: add_possible_link_destination
      Src: /src/gpac/src/filter_core/filter_pid.c:5553,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5569,1
    - Dst: gf_filter_pid_resolve_link_check_loaded
      Src: /src/gpac/src/filter_core/filter_pid.c:5575,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5583,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5584,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5585,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:5586,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5587,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5588,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5589,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5590,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5600,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5601,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:5602,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5603,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5604,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5605,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5606,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:5616,1
    - Dst: gf_filter_pid_resolve_link
      Src: /src/gpac/src/filter_core/filter_pid.c:5621,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5624,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5625,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:5626,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5627,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5628,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5629,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5630,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5648,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5649,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:5652,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5659,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5660,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:5666,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5670,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:5673,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:5674,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:5675,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5678,1
    - Dst: gf_filter_pid_post_connect_task
      Src: /src/gpac/src/filter_core/filter_pid.c:5679,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:5682,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5684,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5688,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5689,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5690,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5700,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5701,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:5703,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5716,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5719,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5720,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5721,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5722,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5724,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5725,1
    - Dst: filter_match_target_dst
      Src: /src/gpac/src/filter_core/filter_pid.c:5730,1
    - Dst: filter_match_target_dst
      Src: /src/gpac/src/filter_core/filter_pid.c:5731,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:5735,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5744,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5745,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5746,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5747,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5749,1
    - Dst: filter_match_target_dst
      Src: /src/gpac/src/filter_core/filter_pid.c:5750,1
    - Dst: filter_match_target_dst
      Src: /src/gpac/src/filter_core/filter_pid.c:5751,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:5753,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:5755,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:5761,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5765,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5770,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5779,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5781,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5784,1
    - Dst: filter_source_id_match
      Src: /src/gpac/src/filter_core/filter_pid.c:5788,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:5790,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5796,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5803,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:5804,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5805,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5807,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5808,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5809,1
    - Dst: gf_fs_check_graph_load
      Src: /src/gpac/src/filter_core/filter_pid.c:5810,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5813,1
    - Dst: gf_filter_clone
      Src: /src/gpac/src/filter_core/filter_pid.c:5821,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5823,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:5824,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_pid.c:5825,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5827,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:5828,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter_pid.c:5838,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5840,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5861,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5864,1
    - Dst: gf_fs_check_graph_load
      Src: /src/gpac/src/filter_core/filter_pid.c:5869,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5871,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5872,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5873,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5874,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5877,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:5878,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5884,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:5885,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter_pid.c:5891,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:5892,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5898,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5903,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5907,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:5908,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5914,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_pid.c:5917,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_pid.c:5919,1
    - Dst: GF_FilterPid*::filter::freg::process_event
      Src: /src/gpac/src/filter_core/filter_pid.c:5920,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_pid.c:5921,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_pid.c:5925,1
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:5927,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_pid.c:5929,1
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:5931,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter_pid.c:5933,1
    - Dst: parent_chain_has_dyn_pids
      Src: /src/gpac/src/filter_core/filter_pid.c:5936,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filter_core/filter_pid.c:5942,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5951,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:5952,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5956,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter_pid.c:5958,1
    CyclomaticComplexity: 400
    EdgeCount: 400
    ICount: 734
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5966
      start: 4814
    functionDepth: 13
    functionLinenumber: 4814
    functionLinenumberEnd: 5966
    functionName: gf_filter_pid_init_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_logs_thread_tag
    - gf_logs_thread_untag
    - gf_filter_pid_needs_explicit_resolution
    - gf_filter_pid_set_args
    - gf_list_find
    - gf_pid_in_parent_chain
    - gf_list_count
    - gf_assert
    - gf_list_new
    - gf_list_get
    - gf_strdup
    - gf_fs_post_disconnect_task
    - gf_filter_set_id
    - gf_filter_pid_resolve_link
    - gf_filter_in_parent_chain
    - add_possible_link_destination
    - GF_FEVT_INIT
    - gf_fs_check_graph_load
    - gf_codecid_parse
    - gf_list_add
    - gf_filter_clone
    - gf_filter_pid_get_property_first
    - gf_filter_pid_caps_match
    - gf_filter_pid_send_event_internal
    - gf_filter_last_id_in_chain
    - gf_mx_p
    - gf_fs_load_filter
    - GF_LOG
    - gf_filter_has_out_caps
    - gf_filter_pid_set_eos
    - gf_list_clone
    - gf_filter_reconf_output
    - gf_filter_post_remove
    - gf_mx_v
    - gf_codecid_type
    - gf_list_del_item
    - safe_int_inc
    - filter_source_id_match
    - filter_match_target_dst
    - gf_filter_setup_failure
    - gf_list_del
    - gf_filter_set_name
    - safe_int_dec
    - gf_filter_pid_post_connect_task
    - gf_filter_pid_get_property
    - GF_FilterPid*::filter::freg::process_event
    - parent_chain_has_dyn_pids
    - strcmp
    - gf_filter_pid_resolve_link_check_loaded
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_init_task(GF_FSTask *task)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5031
      start: 5027
    functionDepth: 0
    functionLinenumber: 5027
    functionLinenumberEnd: 5031
    functionName: if
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: RELOCK_FILTER_LIST
    signature: RELOCK_FILTER_LIST if (in_parent_chain)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5193
      start: 5188
    functionDepth: 1
    functionLinenumber: 5188
    functionLinenumberEnd: 5193
    functionName: if
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 10
    functionsReached:
    - GF_LOG
    linkageType: ''
    returnType: RELOCK_FILTER_LIST
    signature: RELOCK_FILTER_LIST if (in_parent_chain)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5232,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5233,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5234,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5235,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5236,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5238,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5239,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5240,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5243
      start: 5229
    functionDepth: 3
    functionLinenumber: 5229
    functionLinenumberEnd: 5243
    functionName: if
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 10
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_list_get
    - gf_list_del_item
    linkageType: ''
    returnType: RELOCK_FILTER_LIST
    signature: RELOCK_FILTER_LIST if (cyclic_detected)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5970,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5971,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5973,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5975,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5976,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5977,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5978,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:5979,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:5980,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:5981,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5982,1
    - Dst: gf_fs_post_task_ex
      Src: /src/gpac/src/filter_core/filter_pid.c:5983,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - filter
    - pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5984
      start: 5968
    functionDepth: 5
    functionLinenumber: 5968
    functionLinenumberEnd: 5984
    functionName: gf_filter_pid_post_connect_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - gf_mx_p
    - gf_assert
    - safe_int_inc
    - gf_mx_v
    - gf_fs_post_task_ex
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_post_connect_task(GF_Filter *filter, GF_FilterPid
      *pid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:5992,1
    - Dst: gf_fs_post_task_ex
      Src: /src/gpac/src/filter_core/filter_pid.c:5998,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - filter
    - pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5999
      start: 5987
    functionDepth: 5
    functionLinenumber: 5987
    functionLinenumberEnd: 5999
    functionName: gf_filter_pid_post_init_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 3
    functionsReached:
    - safe_int_inc
    - gf_fs_post_task_ex
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_post_init_task(GF_Filter *filter, GF_FilterPid *pid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:6006,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6007,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - pid
    - requires_full_blocks
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6012
      start: 6001
    functionDepth: 1
    functionLinenumber: 6001
    functionLinenumberEnd: 6012
    functionName: gf_filter_pid_set_framing_mode
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 72
    functionsReached:
    - GF_LOG
    - PID_IS_OUTPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_set_framing_mode(GF_FilterPid *pid, Bool requires_full_blocks)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6020,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_pid.c:6022,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6024,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:6028,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:6029,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:6030,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6031,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:6032,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:6033,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6034,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:6039,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_pid.c:6040,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_pid.c:6043,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6047,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filter_core/filter_pid.c:6048,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6050,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6051,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6053
      start: 6014
    functionDepth: 4
    functionLinenumber: 6014
    functionLinenumberEnd: 6053
    functionName: GF_FilterPid *gf_filter_pid_new(GF_Filter *filter)
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_new
    - gf_strdup
    - gf_list_get
    - gf_filter_pid_copy_properties
    - GF_SAFEALLOC
    - GF_LOG
    - sprintf
    - gf_list_count
    - gf_mx_v
    - gf_list_add
    - gf_fq_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterPid *gf_filter_pid_new(GF_Filter *filter)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6058,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:6059,1
    - Dst: gf_filter_pid_inst_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6060,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_pid.c:6060,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6062,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:6064,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_pid.c:6065,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6066,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:6067,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6068,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6071,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6074,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:6075,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6076,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6081,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6084,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:6085,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6086,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:6089,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:6090,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6091
      start: 6055
    functionDepth: 12
    functionLinenumber: 6055
    functionLinenumberEnd: 6091
    functionName: gf_filter_pid_del
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 3
    functionsReached:
    - safe_int_dec
    - gf_free
    - gf_assert
    - gf_list_pop_back
    - GF_LOG
    - gf_list_count
    - gf_filter_pid_inst_del
    - gf_list_del
    - gf_props_del
    linkageType: ''
    returnType: GF_NOT_EXPORTED
    signature: GF_NOT_EXPORTED gf_filter_pid_del(GF_FilterPid *pid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6095,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6096
      start: 6093
    functionDepth: 13
    functionLinenumber: 6093
    functionLinenumberEnd: 6096
    functionName: gf_filter_pid_del_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_del
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_del_task(GF_FSTask *task)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6105,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filter_core/filter_pid.c:6106,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6107,1
    - Dst: gf_props_new
      Src: /src/gpac/src/filter_core/filter_pid.c:6113,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6117,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:6118,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6119,1
    - Dst: gf_props_merge_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6127,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6129,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:6130,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6132,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:6133,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6134,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6135,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6143,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 37
    argCount: 2
    argNames:
    - pid
    - merge_props
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6153
      start: 6098
    functionDepth: 8
    functionLinenumber: 6098
    functionLinenumberEnd: 6153
    functionName: check_new_pid_props
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_mx_p
    - gf_assert
    - gf_list_last
    - gf_props_merge_property
    - gf_list_get
    - gf_mx_v
    - gf_list_add
    - gf_list_del_item
    - gf_props_new
    - gf_props_del
    linkageType: ''
    returnType: GF_PropertyMap
    signature: GF_PropertyMap *check_new_pid_props(GF_FilterPid *pid, Bool merge_props)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:6159,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6160,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filter_core/filter_pid.c:6166,1
    - Dst: gf_props_get_base_type
      Src: /src/gpac/src/filter_core/filter_pid.c:6169,1
    - Dst: gf_props_get_base_type
      Src: /src/gpac/src/filter_core/filter_pid.c:6169,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6170,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pid.c:6171,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filter_core/filter_pid.c:6172,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filter_core/filter_pid.c:6174,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filter_core/filter_pid.c:6176,1
    - Dst: exit
      Src: /src/gpac/src/filter_core/filter_pid.c:6177,1
    - Dst: gf_props_4cc_get_flags
      Src: /src/gpac/src/filter_core/filter_pid.c:6179,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6181,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pid.c:6182,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filter_core/filter_pid.c:6185,1
    - Dst: exit
      Src: /src/gpac/src/filter_core/filter_pid.c:6186,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6190,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filter_core/filter_pid.c:6192,1
    - Dst: gf_props_equal_strict
      Src: /src/gpac/src/filter_core/filter_pid.c:6197,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:6198,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:6199,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter_pid.c:6200,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filter_core/filter_pid.c:6206,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6207,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6209,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_pid.c:6210,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_pid.c:6210,1
    - Dst: gf_props_new
      Src: /src/gpac/src/filter_core/filter_pid.c:6220,1
    - Dst: check_new_pid_props
      Src: /src/gpac/src/filter_core/filter_pid.c:6225,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6228,1
    - Dst: gf_props_set_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6244,1
    - Dst: gf_props_set_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6246,1
    - Dst: gf_props_set_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6247,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:6254,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filter_core/filter_pid.c:6255,1
    - Dst: gf_props_set_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6257,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 80
    argCount: 6
    argNames:
    - pid
    - prop_4cc
    - prop_name
    - dyn_name
    - value
    - is_info
    argTypes:
    - GF_FilterPid*
    - u32
    - char*
    - char*
    - GF_PropertyValue*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6258
      start: 6155
    functionDepth: 9
    functionLinenumber: 6155
    functionLinenumberEnd: 6258
    functionName: gf_filter_pid_set_property_full
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_props_set_property
    - gf_props_reset_single
    - check_new_pid_props
    - gf_props_4cc_get_flags
    - sprintf
    - exit
    - PID_IS_INPUT
    - gf_filter_pid_get_property_str
    - gf_props_4cc_get_name
    - GF_LOG
    - gf_sys_is_test_mode
    - strstr
    - strnicmp
    - gf_props_equal_strict
    - gf_props_new
    - gf_props_4cc_get_type
    - gf_props_get_base_type
    - gf_filter_pid_get_property
    - gf_filter_pid_set_name
    - gf_props_get_type_name
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_filter_pid_set_property_full(GF_FilterPid *pid, u32 prop_4cc,
      const char *prop_name, char *dyn_name, const GF_PropertyValue *value, Bool is_info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property_full
      Src: /src/gpac/src/filter_core/filter_pid.c:6264,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - pid
    - prop_4cc
    - value
    argTypes:
    - GF_FilterPid*
    - u32
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6265
      start: 6260
    functionDepth: 10
    functionLinenumber: 6260
    functionLinenumberEnd: 6265
    functionName: gf_filter_pid_set_property
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 287
    functionsReached:
    - gf_filter_pid_set_property_full
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_set_property(GF_FilterPid *pid, u32 prop_4cc,
      const GF_PropertyValue *value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property_full
      Src: /src/gpac/src/filter_core/filter_pid.c:6271,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - pid
    - name
    - value
    argTypes:
    - GF_FilterPid*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6272
      start: 6267
    functionDepth: 10
    functionLinenumber: 6267
    functionLinenumberEnd: 6272
    functionName: gf_filter_pid_set_property_str
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 38
    functionsReached:
    - gf_filter_pid_set_property_full
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_set_property_str(GF_FilterPid *pid, const char
      *name, const GF_PropertyValue *value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property_full
      Src: /src/gpac/src/filter_core/filter_pid.c:6278,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - pid
    - name
    - value
    argTypes:
    - GF_FilterPid*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6279
      start: 6274
    functionDepth: 10
    functionLinenumber: 6274
    functionLinenumberEnd: 6279
    functionName: gf_filter_pid_set_property_dyn
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 14
    functionsReached:
    - gf_filter_pid_set_property_full
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_set_property_dyn(GF_FilterPid *pid, char *name,
      const GF_PropertyValue *value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property_full
      Src: /src/gpac/src/filter_core/filter_pid.c:6285,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - pid
    - prop_4cc
    - value
    argTypes:
    - GF_FilterPid*
    - u32
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6286
      start: 6281
    functionDepth: 10
    functionLinenumber: 6281
    functionLinenumberEnd: 6286
    functionName: gf_filter_pid_set_info
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 19
    functionsReached:
    - gf_filter_pid_set_property_full
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_set_info(GF_FilterPid *pid, u32 prop_4cc, const
      GF_PropertyValue *value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property_full
      Src: /src/gpac/src/filter_core/filter_pid.c:6292,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - pid
    - name
    - value
    argTypes:
    - GF_FilterPid*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6293
      start: 6288
    functionDepth: 10
    functionLinenumber: 6288
    functionLinenumberEnd: 6293
    functionName: gf_filter_pid_set_info_str
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 12
    functionsReached:
    - gf_filter_pid_set_property_full
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_set_info_str(GF_FilterPid *pid, const char
      *name, const GF_PropertyValue *value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_property_full
      Src: /src/gpac/src/filter_core/filter_pid.c:6299,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - pid
    - name
    - value
    argTypes:
    - GF_FilterPid*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6300
      start: 6295
    functionDepth: 10
    functionLinenumber: 6295
    functionLinenumberEnd: 6300
    functionName: gf_filter_pid_set_info_dyn
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - gf_filter_pid_set_property_full
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_set_info_dyn(GF_FilterPid *pid, char *name,
      const GF_PropertyValue *value)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:6307,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6308,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6313,1
    - Dst: gf_props_new
      Src: /src/gpac/src/filter_core/filter_pid.c:6314,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:6315,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:6317,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6320,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:6323,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:6328,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:6329,1
    - Dst: gf_props_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6333,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filter_core/filter_pid.c:6335,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filter_core/filter_pid.c:6342,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6344,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pid.c:6345,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filter_core/filter_pid.c:6346,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:6352,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter_pid.c:6353,1
    - Dst: gf_props_set_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6355,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 37
    argCount: 5
    argNames:
    - pid
    - prop_4cc
    - prop_name
    - dyn_name
    - value
    argTypes:
    - GF_FilterPid*
    - u32
    - char*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6356
      start: 6302
    functionDepth: 8
    functionLinenumber: 6302
    functionLinenumberEnd: 6356
    functionName: gf_filter_pid_negotiate_property_full
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_props_equal
    - gf_assert
    - gf_list_new
    - PID_IS_OUTPUT
    - gf_props_4cc_get_name
    - gf_props_set_property
    - GF_LOG
    - gf_log_tool_level_on
    - gf_list_find
    - gf_props_get_property
    - gf_props_dump
    - gf_fs_post_task
    - gf_fq_count
    - safe_int_inc
    - gf_list_add
    - gf_props_new
    - gf_list_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_filter_pid_negotiate_property_full(GF_FilterPid *pid, u32
      prop_4cc, const char *prop_name, char *dyn_name, const GF_PropertyValue *value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_negotiate_property_full
      Src: /src/gpac/src/filter_core/filter_pid.c:6362,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - pid
    - prop_4cc
    - value
    argTypes:
    - GF_FilterPid*
    - u32
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6363
      start: 6358
    functionDepth: 9
    functionLinenumber: 6358
    functionLinenumberEnd: 6363
    functionName: gf_filter_pid_negotiate_property
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 21
    functionsReached:
    - gf_filter_pid_negotiate_property_full
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_negotiate_property(GF_FilterPid *pid, u32 prop_4cc,
      const GF_PropertyValue *value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_negotiate_property_full
      Src: /src/gpac/src/filter_core/filter_pid.c:6369,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - pid
    - name
    - value
    argTypes:
    - GF_FilterPid*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6370
      start: 6365
    functionDepth: 9
    functionLinenumber: 6365
    functionLinenumberEnd: 6370
    functionName: gf_filter_pid_negotiate_property_str
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_negotiate_property_full
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_negotiate_property_str(GF_FilterPid *pid, const
      char *name, const GF_PropertyValue *value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_negotiate_property_full
      Src: /src/gpac/src/filter_core/filter_pid.c:6376,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - pid
    - name
    - value
    argTypes:
    - GF_FilterPid*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6377
      start: 6372
    functionDepth: 9
    functionLinenumber: 6372
    functionLinenumberEnd: 6377
    functionName: gf_filter_pid_negotiate_property_dyn
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 3
    functionsReached:
    - gf_filter_pid_negotiate_property_full
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_negotiate_property_dyn(GF_FilterPid *pid, char
      *name, const GF_PropertyValue *value)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:6382,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6387,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6388,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6389,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6390,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:6391,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6400,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6402,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filter_core/filter_pid.c:6404,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6405,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - pid
    - first_prop_if_output
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6409
      start: 6380
    functionDepth: 1
    functionLinenumber: 6380
    functionLinenumberEnd: 6409
    functionName: filter_pid_get_prop_map
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_list_last
    - gf_mx_v
    - gf_fatal_assert
    - safe_int_inc
    - PID_IS_INPUT
    linkageType: ''
    returnType: GF_PropertyMap
    signature: GF_PropertyMap *filter_pid_get_prop_map(GF_FilterPid *pid, Bool first_prop_if_output)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:6418,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:6419,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6421,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:6424,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pid.c:6430,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6432,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:6432,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6434,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_pid.c:6436,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:6439,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6442
      start: 6412
    functionDepth: 3
    functionLinenumber: 6412
    functionLinenumberEnd: 6442
    functionName: GF_PropertyValue *pid_check_prop(GF_FilterPid *pid, u32 prop_4cc,
      const char *prop_name, const GF_PropertyValue *ret)
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_4cc_to_str
    - gf_list_new
    - gf_list_get
    - gf_props_4cc_get_name
    - GF_SAFEALLOC
    - GF_LOG
    - gf_list_count
    - strcmp
    - gf_list_add
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE GF_PropertyValue *pid_check_prop(GF_FilterPid *pid, u32 prop_4cc,
      const char *prop_name, const GF_PropertyValue *ret)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _a
    - ','
    - _b
    - ','
    - _str
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6445
      start: 6444
    functionDepth: 0
    functionLinenumber: 6444
    functionLinenumberEnd: 6445
    functionName: pid_check_prop
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: pid_check_prop(_a, _b, _str, c)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_4cc_get_flags
      Src: /src/gpac/src/filter_core/filter_pid.c:6449,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6451,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pid.c:6452,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filter_core/filter_pid.c:6455,1
    - Dst: exit
      Src: /src/gpac/src/filter_core/filter_pid.c:6456,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - pid
    - prop_4cc
    argTypes:
    - GF_FilterPid*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6458
      start: 6447
    functionDepth: 1
    functionLinenumber: 6447
    functionLinenumberEnd: 6458
    functionName: check_prop_type
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_props_4cc_get_name
    - GF_LOG
    - gf_sys_is_test_mode
    - exit
    - gf_props_4cc_get_flags
    linkageType: ''
    returnType: void
    signature: void check_prop_type(GF_FilterPid *pid, u32 prop_4cc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: filter_pid_get_prop_map
      Src: /src/gpac/src/filter_core/filter_pid.c:6463,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filter_core/filter_pid.c:6467,1
    - Dst: check_prop_type
      Src: /src/gpac/src/filter_core/filter_pid.c:6468,1
    - Dst: pid_check_prop
      Src: /src/gpac/src/filter_core/filter_pid.c:6470,1
    - Dst: gf_props_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6470,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6471
      start: 6460
    functionDepth: 3
    functionLinenumber: 6460
    functionLinenumberEnd: 6471
    functionName: GF_PropertyValue *gf_filter_pid_get_property(GF_FilterPid *pid,
      u32 prop_4cc)
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_props_4cc_get_type
    - filter_pid_get_prop_map
    - gf_props_get_property
    - check_prop_type
    - pid_check_prop
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_PropertyValue *gf_filter_pid_get_property(GF_FilterPid
      *pid, u32 prop_4cc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: filter_pid_get_prop_map
      Src: /src/gpac/src/filter_core/filter_pid.c:6475,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filter_core/filter_pid.c:6479,1
    - Dst: check_prop_type
      Src: /src/gpac/src/filter_core/filter_pid.c:6480,1
    - Dst: pid_check_prop
      Src: /src/gpac/src/filter_core/filter_pid.c:6482,1
    - Dst: gf_props_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6482,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - pid
    - prop_4cc
    argTypes:
    - GF_FilterPid*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6483
      start: 6473
    functionDepth: 3
    functionLinenumber: 6473
    functionLinenumberEnd: 6483
    functionName: gf_filter_pid_get_property_first
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 6
    functionsReached:
    - gf_props_4cc_get_type
    - filter_pid_get_prop_map
    - gf_props_get_property
    - check_prop_type
    - pid_check_prop
    linkageType: ''
    returnType: GF_PropertyValue
    signature: GF_PropertyValue *gf_filter_pid_get_property_first(GF_FilterPid *pid,
      u32 prop_4cc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: filter_pid_get_prop_map
      Src: /src/gpac/src/filter_core/filter_pid.c:6488,1
    - Dst: pid_check_prop
      Src: /src/gpac/src/filter_core/filter_pid.c:6491,1
    - Dst: gf_props_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6491,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6492
      start: 6485
    functionDepth: 3
    functionLinenumber: 6485
    functionLinenumberEnd: 6492
    functionName: GF_PropertyValue *gf_filter_pid_get_property_str(GF_FilterPid *pid,
      const char *prop_name)
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - filter_pid_get_prop_map
    - gf_props_get_property
    - pid_check_prop
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_PropertyValue *gf_filter_pid_get_property_str(GF_FilterPid
      *pid, const char *prop_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: filter_pid_get_prop_map
      Src: /src/gpac/src/filter_core/filter_pid.c:6496,1
    - Dst: pid_check_prop
      Src: /src/gpac/src/filter_core/filter_pid.c:6499,1
    - Dst: gf_props_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6499,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - pid
    - prop_name
    argTypes:
    - GF_FilterPid*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6500
      start: 6494
    functionDepth: 3
    functionLinenumber: 6494
    functionLinenumberEnd: 6500
    functionName: gf_filter_pid_get_property_str_first
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - filter_pid_get_prop_map
    - gf_props_get_property
    - pid_check_prop
    linkageType: ''
    returnType: GF_PropertyValue
    signature: GF_PropertyValue *gf_filter_pid_get_property_str_first(GF_FilterPid
      *pid, const char *prop_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: filter_pid_get_prop_map
      Src: /src/gpac/src/filter_core/filter_pid.c:6504,1
    - Dst: gf_props_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:6507,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - pid
    - prop_4cc
    argTypes:
    - GF_FilterPid*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6508
      start: 6502
    functionDepth: 2
    functionLinenumber: 6502
    functionLinenumberEnd: 6508
    functionName: gf_filter_pid_get_property_entry
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - filter_pid_get_prop_map
    - gf_props_get_property_entry
    linkageType: ''
    returnType: GF_PropertyEntry
    signature: GF_PropertyEntry *gf_filter_pid_get_property_entry(GF_FilterPid *pid,
      u32 prop_4cc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: filter_pid_get_prop_map
      Src: /src/gpac/src/filter_core/filter_pid.c:6513,1
    - Dst: gf_props_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:6516,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6517
      start: 6510
    functionDepth: 2
    functionLinenumber: 6510
    functionLinenumberEnd: 6517
    functionName: GF_PropertyEntry *gf_filter_pid_get_property_entry_str(GF_FilterPid
      *pid, const char *prop_name)
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - filter_pid_get_prop_map
    - gf_props_get_property_entry
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_PropertyEntry *gf_filter_pid_get_property_entry_str(GF_FilterPid
      *pid, const char *prop_name)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6527,1
    - Dst: filter_pid_get_prop_map
      Src: /src/gpac/src/filter_core/filter_pid.c:6529,1
    - Dst: gf_props_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:6532,1
    - Dst: gf_props_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:6539,1
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:6542,1
    - Dst: gf_props_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:6548,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6552,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6555,1
    - Dst: gf_filter_pid_get_info_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:6560,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6563,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6567,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6572,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:6580,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 65
    argCount: 5
    argNames:
    - pid
    - prop_4cc
    - prop_name
    - first_call
    - propentry
    argTypes:
    - GF_FilterPid*
    - u32
    - char*
    - Bool
    - GF_PropertyEntry**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6583
      start: 6519
    functionDepth: 2
    functionLinenumber: 6519
    functionLinenumberEnd: 6583
    functionName: gf_filter_pid_get_info_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - PID_IS_OUTPUT
    - filter_pid_get_prop_map
    - gf_props_get_property_entry
    - gf_filter_pid_get_info_internal
    - gf_mx_v
    - safe_int_inc
    linkageType: ''
    returnType: GF_PropertyValue
    signature: GF_PropertyValue *gf_filter_pid_get_info_internal(GF_FilterPid *pid,
      u32 prop_4cc, const char *prop_name, Bool first_call,  GF_PropertyEntry **propentry)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6590,1
    - Dst: gf_filter_pid_get_info_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:6593,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6594
      start: 6585
    functionDepth: 3
    functionLinenumber: 6585
    functionLinenumberEnd: 6594
    functionName: GF_PropertyValue *gf_filter_pid_get_info(GF_FilterPid *pid, u32
      prop_4cc, GF_PropertyEntry **propentry)
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_info_internal
    - gf_filter_release_property
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_PropertyValue *gf_filter_pid_get_info(GF_FilterPid *pid,
      u32 prop_4cc, GF_PropertyEntry **propentry)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6601,1
    - Dst: gf_filter_pid_get_info_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:6604,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6605
      start: 6596
    functionDepth: 3
    functionLinenumber: 6596
    functionLinenumberEnd: 6605
    functionName: GF_PropertyValue *gf_filter_pid_get_info_str(GF_FilterPid *pid,
      const char *prop_name, GF_PropertyEntry **propentry)
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_info_internal
    - gf_filter_release_property
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_PropertyValue *gf_filter_pid_get_info_str(GF_FilterPid
      *pid, const char *prop_name, GF_PropertyEntry **propentry)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:6611,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:6618,1
    - Dst: gf_props_enum_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6621,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:6633,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:6634,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6641,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6645,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:6647,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:6650,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:6651,1
    - Dst: gf_filter_pid_enum_info_local
      Src: /src/gpac/src/filter_core/filter_pid.c:6653,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6656,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6662,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 46
    argCount: 5
    argNames:
    - pid
    - idx
    - prop_4cc
    - prop_name
    - list
    argTypes:
    - GF_FilterPid*
    - u32*
    - u32*
    - char**
    - GF_List**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6665
      start: 6607
    functionDepth: 2
    functionLinenumber: 6607
    functionLinenumberEnd: 6665
    functionName: gf_filter_pid_enum_info_local
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_list_new
    - gf_list_get
    - PID_IS_OUTPUT
    - gf_list_find
    - gf_filter_pid_enum_info_local
    - gf_props_enum_property
    - gf_mx_v
    - gf_list_add
    linkageType: ''
    returnType: GF_PropertyValue
    signature: GF_PropertyValue *gf_filter_pid_enum_info_local(GF_FilterPid *pid,
      u32 *idx, u32 *prop_4cc, const char **prop_name, GF_List **list)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_enum_info_local
      Src: /src/gpac/src/filter_core/filter_pid.c:6670,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6671,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6673
      start: 6666
    functionDepth: 3
    functionLinenumber: 6666
    functionLinenumberEnd: 6673
    functionName: GF_PropertyValue *gf_filter_pid_enum_info(GF_FilterPid *pid, u32
      *idx, u32 *prop_4cc, const char **prop_name)
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_enum_info_local
    - gf_list_del
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_PropertyValue *gf_filter_pid_enum_info(GF_FilterPid *pid,
      u32 *idx, u32 *prop_4cc, const char **prop_name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6680,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6681,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6685,1
    - Dst: gf_filter_pid_get_info_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:6686,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6688,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6689,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6694,1
    - Dst: gf_filter_pid_get_info_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:6695,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6697,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6698,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6702,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6703,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 4
    argNames:
    - filter
    - prop_4cc
    - prop_name
    - propentry
    argTypes:
    - GF_Filter*
    - u32
    - char*
    - GF_PropertyEntry**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6705
      start: 6675
    functionDepth: 3
    functionLinenumber: 6675
    functionLinenumberEnd: 6705
    functionName: gf_filter_get_info_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_info_internal
    - gf_mx_p
    - gf_list_get
    - gf_mx_v
    linkageType: ''
    returnType: GF_PropertyValue
    signature: GF_PropertyValue *gf_filter_get_info_internal(GF_Filter *filter, u32
      prop_4cc, const char *prop_name, GF_PropertyEntry **propentry)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6712,1
    - Dst: gf_filter_get_info_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:6715,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6716
      start: 6707
    functionDepth: 4
    functionLinenumber: 6707
    functionLinenumberEnd: 6716
    functionName: GF_PropertyValue *gf_filter_get_info(GF_Filter *filter, u32 prop_4cc,
      GF_PropertyEntry **propentry)
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_release_property
    - gf_filter_get_info_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_PropertyValue *gf_filter_get_info(GF_Filter *filter, u32
      prop_4cc, GF_PropertyEntry **propentry)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6723,1
    - Dst: gf_filter_get_info_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:6726,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6727
      start: 6718
    functionDepth: 4
    functionLinenumber: 6718
    functionLinenumberEnd: 6727
    functionName: GF_PropertyValue *gf_filter_get_info_str(GF_Filter *filter, const
      char *prop_name, GF_PropertyEntry **propentry)
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_release_property
    - gf_filter_get_info_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_PropertyValue *gf_filter_get_info_str(GF_Filter *filter,
      const char *prop_name, GF_PropertyEntry **propentry)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_props_del_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6733,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - propentry
    argTypes:
    - GF_PropertyEntry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6735
      start: 6729
    functionDepth: 6
    functionLinenumber: 6729
    functionLinenumberEnd: 6735
    functionName: gf_filter_release_property
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 31
    functionsReached:
    - gf_props_del_property
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_release_property(GF_PropertyEntry *propentry)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:6742,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6743,1
    - Dst: check_new_pid_props
      Src: /src/gpac/src/filter_core/filter_pid.c:6747,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6750,1
    - Dst: gf_props_reset
      Src: /src/gpac/src/filter_core/filter_pid.c:6753,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6756
      start: 6737
    functionDepth: 9
    functionLinenumber: 6737
    functionLinenumberEnd: 6756
    functionName: gf_filter_pid_reset_properties
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 5
    functionsReached:
    - GF_LOG
    - check_new_pid_props
    - PID_IS_INPUT
    - gf_props_reset
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_reset_properties(GF_FilterPid *pid)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:6761,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6762,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6766,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filter_core/filter_pid.c:6767,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6768,1
    - Dst: check_new_pid_props
      Src: /src/gpac/src/filter_core/filter_pid.c:6772,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6775,1
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:6779,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6783,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6784,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6785,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6786,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:6787,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6797,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filter_core/filter_pid.c:6798,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6799,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6801,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filter_core/filter_pid.c:6806,1
    - Dst: gf_props_reset
      Src: /src/gpac/src/filter_core/filter_pid.c:6809,1
    - Dst: gf_props_merge_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6813,1
    - Dst: gf_props_merge_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6817,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 46
    argCount: 5
    argNames:
    - dst_pid
    - src_pid
    - filter_prop
    - cbk
    - is_merge
    argTypes:
    - GF_FilterPid*
    - GF_FilterPid*
    - gf_filter_prop_filter
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6818
      start: 6758
    functionDepth: 9
    functionLinenumber: 6758
    functionLinenumberEnd: 6818
    functionName: gf_filter_pid_merge_properties_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_props_merge_property
    - gf_props_reset
    - GF_LOG
    - check_new_pid_props
    - PID_IS_INPUT
    - gf_mx_v
    - gf_fatal_assert
    - safe_int_inc
    - gf_filter_pid_set_name
    - gf_list_last
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_filter_pid_merge_properties_internal(GF_FilterPid *dst_pid,
      GF_FilterPid *src_pid, gf_filter_prop_filter filter_prop, void *cbk, Bool is_merge)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_merge_properties_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:6823,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - dst_pid
    - src_pid
    - filter_prop
    - cbk
    argTypes:
    - GF_FilterPid*
    - GF_FilterPid*
    - gf_filter_prop_filter
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6824
      start: 6820
    functionDepth: 10
    functionLinenumber: 6820
    functionLinenumberEnd: 6824
    functionName: gf_filter_pid_merge_properties
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - gf_filter_pid_merge_properties_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_merge_properties(GF_FilterPid *dst_pid, GF_FilterPid
      *src_pid, gf_filter_prop_filter filter_prop, void *cbk )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_merge_properties_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:6828,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dst_pid
    - src_pid
    argTypes:
    - GF_FilterPid*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6829
      start: 6825
    functionDepth: 10
    functionLinenumber: 6825
    functionLinenumberEnd: 6829
    functionName: gf_filter_pid_copy_properties
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 124
    functionsReached:
    - gf_filter_pid_merge_properties_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_copy_properties(GF_FilterPid *dst_pid, GF_FilterPid
      *src_pid)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:6836,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6837,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:6839,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:6843,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6845
      start: 6832
    functionDepth: 1
    functionLinenumber: 6832
    functionLinenumberEnd: 6845
    functionName: gf_filter_pid_get_packet_count
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 5
    functionsReached:
    - gf_list_get
    - PID_IS_OUTPUT
    - gf_fq_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_get_packet_count(GF_FilterPid *pid)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6853,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6854,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:6855,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:6858,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:6859,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter_pid.c:6860,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6869,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:6870,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6872,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6886,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6888,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:6893,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 38
    argCount: 2
    argNames:
    - pidi
    - pcki
    argTypes:
    - GF_FilterPidInst*
    - GF_FilterPacketInstance*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6895
      start: 6847
    functionDepth: 7
    functionLinenumber: 6847
    functionLinenumberEnd: 6895
    functionName: gf_filter_pid_filter_internal_packet
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_assert
    - gf_fs_post_disconnect_task
    - gf_filter_pid_drop_packet
    - GF_LOG
    linkageType: ''
    returnType: Bool
    signature: Bool gf_filter_pid_filter_internal_packet(GF_FilterPidInst *pidi, GF_FilterPacketInstance
      *pcki)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6912,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:6913,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6915,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:6916,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6917,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6918,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:6923,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6929,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6936,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6938,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filter_core/filter_pid.c:6944,1
    - Dst: gf_filter_pid_configure
      Src: /src/gpac/src/filter_core/filter_pid.c:6947,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 38
    argCount: 3
    argNames:
    - pidinst
    - pcki
    - do_notif
    argTypes:
    - GF_FilterPidInst*
    - GF_FilterPacketInstance*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6955
      start: 6897
    functionDepth: 15
    functionLinenumber: 6897
    functionLinenumberEnd: 6955
    functionName: filter_pck_check_prop_change
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_mx_p
    - gf_assert
    - gf_list_reset
    - GF_LOG
    - gf_filter_pid_configure
    - gf_mx_v
    - safe_int_inc
    - gf_list_del_item
    - gf_props_del
    linkageType: ''
    returnType: Bool
    signature: Bool filter_pck_check_prop_change(GF_FilterPidInst *pidinst, GF_FilterPacketInstance
      *pcki, Bool do_notif)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6963,1
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:6966,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6967,1
    - Dst: gf_fq_head
      Src: /src/gpac/src/filter_core/filter_pid.c:6976,1
    - Dst: gf_filter_pid_check_unblock
      Src: /src/gpac/src/filter_core/filter_pid.c:6984,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6988,1
    - Dst: gf_filter_pid_filter_internal_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:6990,1
    - Dst: filter_pck_check_prop_change
      Src: /src/gpac/src/filter_core/filter_pid.c:7003,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_pid.c:7011,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_pid.c:7018,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_pid.c:7022,1
    - Dst: GF_FilterPidInst*::filter::freg::process_event
      Src: /src/gpac/src/filter_core/filter_pid.c:7023,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_pid.c:7024,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_pid.c:7031,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 58
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7034
      start: 6957
    functionDepth: 16
    functionLinenumber: 6957
    functionLinenumberEnd: 7034
    functionName: GF_FilterPacket *gf_filter_pid_get_packet(GF_FilterPid *pid)
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - filter_pck_check_prop_change
    - gf_assert
    - gf_th_id
    - gf_fq_head
    - gf_filter_pid_check_unblock
    - PID_IS_OUTPUT
    - gf_logs_thread_tag
    - GF_FilterPidInst*::filter::freg::process_event
    - GF_LOG
    - gf_logs_thread_untag
    - GF_FEVT_INIT
    - gf_filter_pid_filter_internal_packet
    - gf_sys_clock_high_res
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterPacket *gf_filter_pid_get_packet(GF_FilterPid *pid)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_fq_get
      Src: /src/gpac/src/filter_core/filter_pid.c:7042,1
    - Dst: gf_filter_pid_filter_internal_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:7057,1
    - Dst: gf_filter_pid_probe_next_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:7058,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 1
    argNames:
    - pidinst
    argTypes:
    - GF_FilterPidInst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7063
      start: 7036
    functionDepth: 8
    functionLinenumber: 7036
    functionLinenumberEnd: 7063
    functionName: gf_filter_pid_probe_next_packet
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_fq_get
    - gf_filter_pid_probe_next_packet
    - gf_filter_pid_filter_internal_packet
    linkageType: ''
    returnType: GF_FilterPacketInstance
    signature: GF_FilterPacketInstance *gf_filter_pid_probe_next_packet(GF_FilterPidInst
      *pidinst)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:7070,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7071,1
    - Dst: gf_filter_pid_probe_next_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:7076,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7081,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:7085,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filter_core/filter_pid.c:7087,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - pid
    - cts
    argTypes:
    - GF_FilterPid*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7091
      start: 7065
    functionDepth: 9
    functionLinenumber: 7065
    functionLinenumberEnd: 7091
    functionName: gf_filter_pid_get_first_packet_cts
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 6
    functionsReached:
    - gf_assert
    - gf_list_get
    - PID_IS_OUTPUT
    - GF_LOG
    - gf_filter_pid_probe_next_packet
    - gf_timestamp_rescale
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_get_first_packet_cts(GF_FilterPid *pid, u64
      *cts)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:7098,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7099,1
    - Dst: gf_filter_pid_probe_next_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:7104,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7109,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7114
      start: 7093
    functionDepth: 9
    functionLinenumber: 7093
    functionLinenumberEnd: 7114
    functionName: gf_filter_pid_first_packet_is_empty
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - GF_LOG
    - gf_assert
    - gf_filter_pid_probe_next_packet
    - PID_IS_OUTPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_first_packet_is_empty(GF_FilterPid *pid)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:7121,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7122,1
    - Dst: gf_filter_pid_probe_next_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:7127,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7132,1
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/src/filter_core/filter_pid.c:7133,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7134
      start: 7116
    functionDepth: 9
    functionLinenumber: 7116
    functionLinenumberEnd: 7134
    functionName: gf_filter_pid_first_packet_is_blocking_ref
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - gf_assert
    - PID_IS_OUTPUT
    - gf_filter_pck_is_blocking_ref
    - GF_LOG
    - gf_filter_pid_probe_next_packet
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_first_packet_is_blocking_ref(GF_FilterPid *pid)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_pid.c:7139,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filter_core/filter_pid.c:7165,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 64
    argCount: 2
    argNames:
    - pidi
    - pck
    argTypes:
    - GF_FilterPidInst*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7211
      start: 7137
    functionDepth: 2
    functionLinenumber: 7137
    functionLinenumberEnd: 7211
    functionName: gf_filter_pidinst_update_stats
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_sys_clock_high_res
    - gf_timestamp_rescale
    linkageType: ''
    returnType: void
    signature: void gf_filter_pidinst_update_stats(GF_FilterPidInst *pidi, GF_FilterPacket
      *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 1
    argNames:
    - pidi
    argTypes:
    - GF_FilterPidInst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7230
      start: 7213
    functionDepth: 0
    functionLinenumber: 7213
    functionLinenumberEnd: 7230
    functionName: gf_filter_pidinst_reset_stats
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_filter_pidinst_reset_stats(GF_FilterPidInst *pidi)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7245,1
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:7248,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7249,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_pid.c:7256,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7266,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7279,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:7280,1
    - Dst: gf_filter_pidinst_update_stats
      Src: /src/gpac/src/filter_core/filter_pid.c:7283,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:7292,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:7293,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filter_core/filter_pid.c:7299,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7301,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7304,1
    - Dst: safe_int64_sub
      Src: /src/gpac/src/filter_core/filter_pid.c:7305,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:7323,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:7327,1
    - Dst: gf_filter_pid_check_unblock
      Src: /src/gpac/src/filter_core/filter_pid.c:7334,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:7336,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filter_core/filter_pid.c:7339,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7344,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7346,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7348,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7350,1
    - Dst: gf_mem_get_stats
      Src: /src/gpac/src/filter_core/filter_pid.c:7361,1
    - Dst: gf_fq_res_add
      Src: /src/gpac/src/filter_core/filter_pid.c:7365,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:7366,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7369,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:7370,1
    - Dst: gf_filter_packet_destroy
      Src: /src/gpac/src/filter_core/filter_pid.c:7371,1
    - Dst: gf_mem_get_stats
      Src: /src/gpac/src/filter_core/filter_pid.c:7376,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7385,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:7386,1
    - Dst: gf_filter_forward_clock
      Src: /src/gpac/src/filter_core/filter_pid.c:7388,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 100
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7391
      start: 7232
    functionDepth: 9
    functionLinenumber: 7232
    functionLinenumberEnd: 7391
    functionName: gf_filter_pid_drop_packet
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 153
    functionsReached:
    - gf_free
    - gf_mem_get_stats
    - gf_log_tool_level_on
    - safe_int64_sub
    - gf_fq_pop
    - gf_assert
    - gf_list_get
    - PID_IS_OUTPUT
    - gf_fq_res_add
    - gf_filter_forward_clock
    - gf_filter_pidinst_update_stats
    - gf_mx_p
    - GF_LOG
    - gf_mx_v
    - gf_timestamp_rescale
    - safe_int_dec
    - gf_filter_pid_check_unblock
    - gf_filter_packet_destroy
    - gf_fq_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_drop_packet(GF_FilterPid *pid)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:7399,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7400,1
    - Dst: gf_fq_head
      Src: /src/gpac/src/filter_core/filter_pid.c:7413,1
    - Dst: gf_filter_pid_filter_internal_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:7415,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7422
      start: 7393
    functionDepth: 8
    functionLinenumber: 7393
    functionLinenumberEnd: 7422
    functionName: gf_filter_pid_is_eos
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 131
    functionsReached:
    - GF_LOG
    - gf_fq_head
    - PID_IS_OUTPUT
    - gf_filter_pid_filter_internal_packet
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_is_eos(GF_FilterPid *pid)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:7428,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7429,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7437
      start: 7424
    functionDepth: 1
    functionLinenumber: 7424
    functionLinenumberEnd: 7437
    functionName: gf_filter_pid_is_flush_eos
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 13
    functionsReached:
    - GF_LOG
    - PID_IS_OUTPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_is_flush_eos(GF_FilterPid *pid)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:7446,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7447,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7457,1
    - Dst: gf_filter_pck_new_shared_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:7459,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7461,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filter_core/filter_pid.c:7464,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filter_core/filter_pid.c:7468,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:7471,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:7474,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:7480,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 2
    argNames:
    - pid
    - is_flush
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7481
      start: 7440
    functionDepth: 11
    functionLinenumber: 7440
    functionLinenumberEnd: 7481
    functionName: gf_filter_pid_set_eos_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - GF_LOG
    - gf_filter_pck_set_framing
    - gf_mx_v
    - gf_filter_pck_new_shared_internal
    - PID_IS_INPUT
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_set_eos_internal(GF_FilterPid *pid, Bool is_flush)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_set_eos_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:7486,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7487
      start: 7483
    functionDepth: 12
    functionLinenumber: 7483
    functionLinenumberEnd: 7487
    functionName: gf_filter_pid_set_eos
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 160
    functionsReached:
    - gf_filter_pid_set_eos_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_set_eos(GF_FilterPid *pid)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:7494,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:7496,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:7500,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:7501,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:7504,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:7506,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filter_core/filter_pid.c:7507,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:7508,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7511,1
    - Dst: gf_props_enum_property
      Src: /src/gpac/src/filter_core/filter_pid.c:7515,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7516
      start: 7489
    functionDepth: 2
    functionLinenumber: 7489
    functionLinenumberEnd: 7516
    functionName: GF_PropertyValue *gf_filter_pid_enum_properties(GF_FilterPid *pid,
      u32 *idx, u32 *prop_4cc, const char **prop_name)
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_list_last
    - GF_LOG
    - gf_props_enum_property
    - safe_int_inc
    - gf_mx_v
    - PID_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_PropertyValue *gf_filter_pid_enum_properties(GF_FilterPid
      *pid, u32 *idx, u32 *prop_4cc, const char **prop_name)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:7526,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:7540,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7564,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:7584,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:7585,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7586,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filter_core/filter_pid.c:7589,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7591,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7593,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7598,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:7599,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 52
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7601
      start: 7518
    functionDepth: 2
    functionLinenumber: 7518
    functionLinenumberEnd: 7601
    functionName: gf_filter_pid_would_block
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 33
    functionsReached:
    - gf_mx_p
    - gf_assert
    - GF_LOG
    - gf_log_tool_level_on
    - safe_int_inc
    - gf_mx_v
    - PID_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_would_block(GF_FilterPid *pid)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7608
      start: 7603
    functionDepth: 0
    functionLinenumber: 7603
    functionLinenumberEnd: 7608
    functionName: gf_filter_pid_is_sparse
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_is_sparse(GF_FilterPid *pid)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:7617,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:7655,1
    - Dst: gf_filter_pid_query_buffer_duration_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:7658,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:7658,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:7667,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:7684,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:7688,1
    - Dst: gf_filter_pid_query_buffer_duration_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:7689,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 61
    argCount: 3
    argNames:
    - pid
    - check_pid_full
    - force_update
    argTypes:
    - GF_FilterPid*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7696
      start: 7610
    functionDepth: 1
    functionLinenumber: 7610
    functionLinenumberEnd: 7696
    functionName: gf_filter_pid_query_buffer_duration_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_mx_v
    - gf_filter_pid_query_buffer_duration_internal
    - PID_IS_INPUT
    linkageType: ''
    returnType: u64
    signature: u64 gf_filter_pid_query_buffer_duration_internal(GF_FilterPid *pid,
      Bool check_pid_full, Bool force_update)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_query_buffer_duration_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:7701,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - pid
    - check_pid_full
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7703
      start: 7698
    functionDepth: 2
    functionLinenumber: 7698
    functionLinenumberEnd: 7703
    functionName: gf_filter_pid_query_buffer_duration
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 13
    functionsReached:
    - gf_filter_pid_query_buffer_duration_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_query_buffer_duration(GF_FilterPid *pid, Bool
      check_pid_full)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:7708,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7709,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:7714,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:7716,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/src/filter_core/filter_pid.c:7717,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:7718,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:7722,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7724
      start: 7704
    functionDepth: 1
    functionLinenumber: 7704
    functionLinenumberEnd: 7724
    functionName: gf_filter_pid_has_seen_eos
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 9
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - PID_IS_OUTPUT
    - GF_LOG
    - gf_mx_v
    - gf_filter_pid_has_seen_eos
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_has_seen_eos(GF_FilterPid *pid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:7729,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7730,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7735
      start: 7726
    functionDepth: 1
    functionLinenumber: 7726
    functionLinenumberEnd: 7735
    functionName: gf_filter_pid_eos_received
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - GF_LOG
    - PID_IS_OUTPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_eos_received(GF_FilterPid *pid)
  - BBCount: 26
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 53
    argCount: 1
    argNames:
    - type
    argTypes:
    - GF_FEventType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7769
      start: 7738
    functionDepth: 0
    functionLinenumber: 7738
    functionLinenumberEnd: 7769
    functionName: gf_filter_event_name
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_event_name(GF_FEventType type)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7774,1
    - Dst: gf_filter_aggregate_packets
      Src: /src/gpac/src/filter_core/filter_pid.c:7779,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:7782,1
    - Dst: gf_fq_head
      Src: /src/gpac/src/filter_core/filter_pid.c:7783,1
    - Dst: filter_pck_check_prop_change
      Src: /src/gpac/src/filter_core/filter_pid.c:7789,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:7791,1
    - Dst: gf_filter_pidinst_reset_stats
      Src: /src/gpac/src/filter_core/filter_pid.c:7794,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7796,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:7797,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7808,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:7809,1
    - Dst: gf_filter_pid_check_unblock
      Src: /src/gpac/src/filter_core/filter_pid.c:7813,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 2
    argNames:
    - task
    - had_eos
    argTypes:
    - GF_FSTask*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7814
      start: 7771
    functionDepth: 16
    functionLinenumber: 7771
    functionLinenumberEnd: 7814
    functionName: gf_filter_pid_reset_task_ex
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - filter_pck_check_prop_change
    - safe_int_dec
    - gf_assert
    - gf_fq_head
    - gf_filter_pid_drop_packet
    - gf_filter_pid_check_unblock
    - GF_LOG
    - gf_filter_pidinst_reset_stats
    - gf_fq_count
    - gf_filter_aggregate_packets
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_reset_task_ex(GF_FSTask *task, Bool *had_eos)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_reset_task_ex
      Src: /src/gpac/src/filter_core/filter_pid.c:7818,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7819
      start: 7816
    functionDepth: 17
    functionLinenumber: 7816
    functionLinenumberEnd: 7819
    functionName: gf_filter_pid_reset_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_reset_task_ex
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_reset_task(GF_FSTask *task)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_reset_task_ex
      Src: /src/gpac/src/filter_core/filter_pid.c:7825,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7828
      start: 7821
    functionDepth: 17
    functionLinenumber: 7821
    functionLinenumberEnd: 7828
    functionName: gf_filter_pid_reset_stop_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_reset_task_ex
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_reset_stop_task(GF_FSTask *task)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7837
      start: 7836
    functionDepth: 0
    functionLinenumber: 7836
    functionLinenumberEnd: 7837
    functionName: TO_REFSTRING
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TO_REFSTRING(_v)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: TO_REFSTRING
      Src: /src/gpac/src/filter_core/filter_pid.c:7842,1
    - Dst: TO_REFSTRING
      Src: /src/gpac/src/filter_core/filter_pid.c:7847,1
    - Dst: TO_REFSTRING
      Src: /src/gpac/src/filter_core/filter_pid.c:7852,1
    - Dst: TO_REFSTRING
      Src: /src/gpac/src/filter_core/filter_pid.c:7854,1
    - Dst: TO_REFSTRING
      Src: /src/gpac/src/filter_core/filter_pid.c:7861,1
    - Dst: TO_REFSTRING
      Src: /src/gpac/src/filter_core/filter_pid.c:7863,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 3
    argNames:
    - evt
    - r_idx
    - ref_str
    argTypes:
    - GF_FilterEvent*
    - u32
    - GF_RefString**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7869
      start: 7838
    functionDepth: 1
    functionLinenumber: 7838
    functionLinenumberEnd: 7869
    functionName: evt_get_refstr
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - TO_REFSTRING
    linkageType: ''
    returnType: Bool
    signature: Bool evt_get_refstr(GF_FilterEvent *evt, u32 r_idx, GF_RefString **ref_str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_pid.c:7873,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:7874,1
    - Dst: evt_get_refstr
      Src: /src/gpac/src/filter_core/filter_pid.c:7878,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:7880,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - evt
    argTypes:
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7884
      start: 7870
    functionDepth: 2
    functionLinenumber: 7870
    functionLinenumberEnd: 7884
    functionName: dup_evt
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - memcpy
    - safe_int_inc
    - evt_get_refstr
    - gf_malloc
    linkageType: ''
    returnType: GF_FilterEvent
    signature: GF_FilterEvent *dup_evt(GF_FilterEvent *evt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: evt_get_refstr
      Src: /src/gpac/src/filter_core/filter_pid.c:7891,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7893,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:7894,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:7895,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:7900,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - evt
    argTypes:
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7901
      start: 7886
    functionDepth: 2
    functionLinenumber: 7886
    functionLinenumberEnd: 7901
    functionName: free_evt
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - safe_int_dec
    - gf_free
    - gf_assert
    - evt_get_refstr
    linkageType: ''
    returnType: void
    signature: void free_evt(GF_FilterEvent *evt)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_pid.c:7905,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:7906,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:7947,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_pid.c:7948,1
    - Dst: strcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:7950,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 53
    argCount: 1
    argNames:
    - evt
    argTypes:
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7957
      start: 7903
    functionDepth: 0
    functionLinenumber: 7903
    functionLinenumberEnd: 7957
    functionName: init_evt
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - memcpy
    - strcpy
    - strlen
    - gf_malloc
    linkageType: ''
    returnType: GF_FilterEvent
    signature: GF_FilterEvent *init_evt(GF_FilterEvent *evt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:7969,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:7972,1
    - Dst: filter_pid_is_raw_source
      Src: /src/gpac/src/filter_core/filter_pid.c:7977,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:7982,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7984
      start: 7960
    functionDepth: 1
    functionLinenumber: 7960
    functionLinenumberEnd: 7984
    functionName: filter_pid_is_raw_source
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - filter_pid_is_raw_source
    - gf_mx_p
    - gf_list_get
    - gf_mx_v
    linkageType: ''
    returnType: Bool
    signature: Bool filter_pid_is_raw_source(GF_FilterPid *pid)
  - BBCount: 71
    BranchProfiles: []
    Callsites:
    - Dst: TASK_REQUEUE
      Src: /src/gpac/src/filter_core/filter_pid.c:8002,1
    - Dst: TASK_REQUEUE
      Src: /src/gpac/src/filter_core/filter_pid.c:8007,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:8013,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:8014,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8017,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8054,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:8056,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8059,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8064,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8073,1
    - Dst: filter_pid_is_raw_source
      Src: /src/gpac/src/filter_core/filter_pid.c:8083,1
    - Dst: gf_filter_pid_check_unblock
      Src: /src/gpac/src/filter_core/filter_pid.c:8092,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filter_core/filter_pid.c:8094,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8103,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_pid.c:8103,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8105,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8118,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_pid.c:8118,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8120,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_pid.c:8120,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:8123,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8125,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:8129,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filter_core/filter_pid.c:8134,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8134,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8139,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8140,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8145,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_pid.c:8145,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8146,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8151,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_pid.c:8151,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8152,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8157,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8166,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8170,1
    - Dst: gf_filter_pid_check_unblock
      Src: /src/gpac/src/filter_core/filter_pid.c:8172,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter_pid.c:8177,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_pid.c:8179,1
    - Dst: GF_Filter*::freg::process_event
      Src: /src/gpac/src/filter_core/filter_pid.c:8180,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_pid.c:8181,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8184,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8193,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_pid.c:8193,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:8199,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8223,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:8227,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:8230,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8232,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter_pid.c:8236,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter_pid.c:8238,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:8240,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8243,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:8246,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filter_core/filter_pid.c:8251,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8261,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8264,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filter_core/filter_pid.c:8268,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filter_core/filter_pid.c:8271,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filter_core/filter_pid.c:8274,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:8276,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8279,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filter_core/filter_pid.c:8290,1
    - Dst: gf_filter_pid_check_unblock
      Src: /src/gpac/src/filter_core/filter_pid.c:8293,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:8299,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8304,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8305,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:8309,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8314,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:8322,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:8325,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:8330,1
    - Dst: dup_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8333,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:8336,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8338,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_pid.c:8338,1
    - Dst: gf_fs_post_task_class
      Src: /src/gpac/src/filter_core/filter_pid.c:8340,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8342,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:8343,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8344,1
    CyclomaticComplexity: 110
    EdgeCount: 110
    ICount: 258
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8346
      start: 7986
    functionDepth: 8
    functionLinenumber: 7986
    functionLinenumberEnd: 8346
    functionName: gf_filter_pid_send_event_downstream
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_logs_thread_tag
    - gf_logs_thread_untag
    - gf_list_find
    - filter_pid_is_raw_source
    - gf_filter_post_process_task
    - FSESS_CHECK_THREAD
    - dup_evt
    - gf_list_get
    - gf_assert
    - gf_list_new
    - gf_filter_event_name
    - gf_fs_post_task
    - free_evt
    - gf_list_add
    - gf_mx_p
    - gf_filter_pid_set_discard
    - GF_LOG
    - gf_fs_post_task_class
    - gf_filter_pid_would_block
    - gf_mx_v
    - safe_int_inc
    - GF_Filter*::freg::process_event
    - gf_list_del
    - safe_int_dec
    - gf_filter_pid_check_unblock
    - TASK_REQUEUE
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_send_event_downstream(GF_FSTask *task)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: TASK_REQUEUE
      Src: /src/gpac/src/filter_core/filter_pid.c:8356,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_pid.c:8361,1
    - Dst: GF_Filter*::freg::process_event
      Src: /src/gpac/src/filter_core/filter_pid.c:8362,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_pid.c:8363,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8369,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8372,1
    - Dst: dup_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8374,1
    - Dst: gf_fs_post_task_class
      Src: /src/gpac/src/filter_core/filter_pid.c:8376,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8380,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8381
      start: 8348
    functionDepth: 6
    functionLinenumber: 8348
    functionLinenumberEnd: 8381
    functionName: gf_filter_pid_send_event_upstream
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_logs_thread_tag
    - gf_logs_thread_untag
    - gf_fs_post_task_class
    - free_evt
    - GF_Filter*::freg::process_event
    - TASK_REQUEUE
    - dup_evt
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_send_event_upstream(GF_FSTask *task)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:8403,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8407,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_pid.c:8407,1
    - Dst: init_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8412,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8415,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8419,1
    - Dst: dup_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8421,1
    - Dst: gf_fs_post_task_class
      Src: /src/gpac/src/filter_core/filter_pid.c:8423,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8426,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:8437,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8440,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8448,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8453,1
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:8465,1
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:8471,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8477,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:8486,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8490,1
    - Dst: init_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8496,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:8500,1
    - Dst: gf_fs_post_task_class
      Src: /src/gpac/src/filter_core/filter_pid.c:8502,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 84
    argCount: 3
    argNames:
    - pid
    - evt
    - force_downstream
    argTypes:
    - GF_FilterPid*
    - GF_FilterEvent*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8503
      start: 8383
    functionDepth: 6
    functionLinenumber: 8383
    functionLinenumberEnd: 8503
    functionName: gf_filter_pid_send_event_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - PID_IS_OUTPUT
    - GF_LOG
    - gf_fs_post_task_class
    - gf_filter_event_name
    - free_evt
    - gf_mx_v
    - safe_int_inc
    - init_evt
    - PID_IS_INPUT
    - dup_evt
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_send_event_internal(GF_FilterPid *pid, GF_FilterEvent
      *evt, Bool force_downstream)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:8512,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - pid
    - evt
    argTypes:
    - GF_FilterPid*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8513
      start: 8505
    functionDepth: 7
    functionLinenumber: 8505
    functionLinenumberEnd: 8513
    functionName: gf_filter_pid_send_event
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 146
    functionsReached:
    - gf_filter_pid_send_event_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_send_event(GF_FilterPid *pid, GF_FilterEvent
      *evt)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:8531,1
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:8532,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8539,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_pid.c:8539,1
    - Dst: init_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8563,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8565,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:8568,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8572,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_pid.c:8572,1
    - Dst: gf_fs_post_task_class
      Src: /src/gpac/src/filter_core/filter_pid.c:8575,1
    - Dst: gf_fs_post_task_class
      Src: /src/gpac/src/filter_core/filter_pid.c:8577,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 51
    argCount: 3
    argNames:
    - filter
    - evt
    - upstream
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8579
      start: 8515
    functionDepth: 7
    functionLinenumber: 8515
    functionLinenumberEnd: 8579
    functionName: gf_filter_send_event
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 8
    functionsReached:
    - gf_filter_pid_send_event_internal
    - gf_list_get
    - PID_IS_OUTPUT
    - GF_LOG
    - gf_fs_post_task_class
    - gf_filter_event_name
    - safe_int_inc
    - init_evt
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_send_event(GF_Filter *filter, GF_FilterEvent *evt,
      Bool upstream)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8587,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter_pid.c:8593,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_pid.c:8595,1
    - Dst: GF_FilterPid*::pid::filter::freg::process_event
      Src: /src/gpac/src/filter_core/filter_pid.c:8596,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_pid.c:8597,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - pid
    - evt
    argTypes:
    - GF_FilterPid*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8599
      start: 8581
    functionDepth: 3
    functionLinenumber: 8581
    functionLinenumberEnd: 8599
    functionName: gf_filter_pid_exec_event
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - gf_logs_thread_tag
    - gf_logs_thread_untag
    - GF_LOG
    - GF_FilterPid*::pid::filter::freg::process_event
    - FSESS_CHECK_THREAD
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_exec_event(GF_FilterPid *pid, GF_FilterEvent
      *evt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:8607,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - pid
    - filter
    argTypes:
    - GF_FilterPid*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8608
      start: 8602
    functionDepth: 2
    functionLinenumber: 8602
    functionLinenumberEnd: 8608
    functionName: gf_filter_pid_is_filter_in_parents
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 13
    functionsReached:
    - gf_filter_in_parent_chain
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_is_filter_in_parents(GF_FilterPid *pid, GF_Filter
      *filter)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:8618,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:8620,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - pid
    - other_pid
    argTypes:
    - GF_FilterPid*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8623
      start: 8612
    functionDepth: 2
    functionLinenumber: 8612
    functionLinenumberEnd: 8623
    functionName: gf_filter_pid_share_origin
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - gf_filter_in_parent_chain
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_share_origin(GF_FilterPid *pid, GF_FilterPid
      *other_pid)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filter_core/filter_pid.c:8664,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filter_core/filter_pid.c:8669,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 43
    argCount: 2
    argNames:
    - pidi
    - stats
    argTypes:
    - GF_FilterPidInst*
    - GF_FilterPidStatistics*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8680
      start: 8625
    functionDepth: 0
    functionLinenumber: 8625
    functionLinenumberEnd: 8680
    functionName: filter_pid_inst_collect_stats
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_timestamp_less
    linkageType: ''
    returnType: void
    signature: void filter_pid_inst_collect_stats(GF_FilterPidInst *pidi, GF_FilterPidStatistics
      *stats)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:8685,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8686,1
    - Dst: filter_pid_inst_collect_stats
      Src: /src/gpac/src/filter_core/filter_pid.c:8689,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - pidi_list
    - stats
    argTypes:
    - GF_List*
    - GF_FilterPidStatistics*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8691
      start: 8682
    functionDepth: 1
    functionLinenumber: 8682
    functionLinenumberEnd: 8691
    functionName: filter_pid_collect_stats
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - filter_pid_inst_collect_stats
    linkageType: ''
    returnType: void
    signature: void filter_pid_collect_stats(GF_List *pidi_list, GF_FilterPidStatistics
      *stats)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8699,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8702,1
    - Dst: filter_locate_enc_dec_sink
      Src: /src/gpac/src/filter_core/filter_pid.c:8707,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 11
    argCount: 2
    argNames:
    - filter
    - locate_decoder
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8712
      start: 8694
    functionDepth: 1
    functionLinenumber: 8694
    functionLinenumberEnd: 8712
    functionName: filter_locate_enc_dec_sink
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - filter_locate_enc_dec_sink
    linkageType: ''
    returnType: GF_Filter
    signature: GF_Filter *filter_locate_enc_dec_sink(GF_Filter *filter, Bool locate_decoder)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:8718,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8721,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8725,1
    - Dst: filter_locate_enc_dec_sink
      Src: /src/gpac/src/filter_core/filter_pid.c:8728,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8730,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8734,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - filter
    - locate_decoder
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8736
      start: 8714
    functionDepth: 2
    functionLinenumber: 8714
    functionLinenumberEnd: 8736
    functionName: filter_locate_enc_dec_src
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_mx_v
    - filter_locate_enc_dec_sink
    linkageType: ''
    returnType: GF_Filter
    signature: GF_Filter *filter_locate_enc_dec_src(GF_Filter *filter, Bool locate_decoder)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8746,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8749,1
    - Dst: filter_locate_sink
      Src: /src/gpac/src/filter_core/filter_pid.c:8750,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8755
      start: 8738
    functionDepth: 1
    functionLinenumber: 8738
    functionLinenumberEnd: 8755
    functionName: filter_locate_sink
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - filter_locate_sink
    - gf_list_get
    linkageType: ''
    returnType: GF_Filter
    signature: GF_Filter *filter_locate_sink(GF_Filter *filter)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_pid.c:8763,1
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:8771,1
    - Dst: filter_pid_collect_stats
      Src: /src/gpac/src/filter_core/filter_pid.c:8772,1
    - Dst: filter_pid_inst_collect_stats
      Src: /src/gpac/src/filter_core/filter_pid.c:8775,1
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:8778,1
    - Dst: filter_pid_collect_stats
      Src: /src/gpac/src/filter_core/filter_pid.c:8779,1
    - Dst: filter_locate_enc_dec_src
      Src: /src/gpac/src/filter_core/filter_pid.c:8787,1
    - Dst: filter_locate_enc_dec_sink
      Src: /src/gpac/src/filter_core/filter_pid.c:8792,1
    - Dst: filter_locate_sink
      Src: /src/gpac/src/filter_core/filter_pid.c:8795,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:8801,1
    - Dst: filter_pid_collect_stats
      Src: /src/gpac/src/filter_core/filter_pid.c:8802,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8803,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 42
    argCount: 3
    argNames:
    - pid
    - stats
    - location
    argTypes:
    - GF_FilterPid*
    - GF_FilterPidStatistics*
    - GF_FilterPidStatsLocation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8805
      start: 8756
    functionDepth: 3
    functionLinenumber: 8756
    functionLinenumberEnd: 8805
    functionName: gf_filter_pid_get_statistics
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 8
    functionsReached:
    - gf_mx_p
    - filter_pid_inst_collect_stats
    - PID_IS_OUTPUT
    - filter_locate_sink
    - memset
    - filter_pid_collect_stats
    - gf_mx_v
    - filter_locate_enc_dec_src
    - filter_locate_enc_dec_sink
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_get_statistics(GF_FilterPid *pid, GF_FilterPidStatistics
      *stats, GF_FilterPidStatsLocation location)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:8811,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8812,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8822,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8828,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter_pid.c:8829,1
    - Dst: gf_filter_pck_new_shared_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:8835,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8837,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filter_core/filter_pid.c:8840,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:8841,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:8842,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filter_core/filter_pid.c:8844,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8845
      start: 8807
    functionDepth: 11
    functionLinenumber: 8807
    functionLinenumberEnd: 8845
    functionName: gf_filter_pid_remove
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 109
    functionsReached:
    - gf_list_get
    - gf_fs_post_disconnect_task
    - GF_LOG
    - gf_filter_pck_set_framing
    - safe_int_inc
    - gf_filter_pck_new_shared_internal
    - PID_IS_INPUT
    - gf_filter_pck_send
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_remove(GF_FilterPid *pid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:8850,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8851,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8857,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filter_core/filter_pid.c:8858,1
    - Dst: gf_filter_process_inline
      Src: /src/gpac/src/filter_core/filter_pid.c:8863,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8864
      start: 8847
    functionDepth: 6
    functionLinenumber: 8847
    functionLinenumberEnd: 8864
    functionName: gf_filter_pid_try_pull
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_filter_process_inline
    - gf_sleep
    - PID_IS_OUTPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_try_pull(GF_FilterPid *pid)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:8872,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8873,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - pid
    - clock_time
    - timescale
    argTypes:
    - GF_FilterPid*
    - u64*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8881
      start: 8867
    functionDepth: 1
    functionLinenumber: 8867
    functionLinenumberEnd: 8881
    functionName: GF_FilterClockType::gf_filter_pid_get_clock_info
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - PID_IS_OUTPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_FilterClockType gf_filter_pid_get_clock_info(GF_FilterPid
      *pid, u64 *clock_time, u32 *timescale)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:8889,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8890,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filter_core/filter_pid.c:8893,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8895
      start: 8883
    functionDepth: 1
    functionLinenumber: 8883
    functionLinenumberEnd: 8895
    functionName: gf_filter_pid_get_timescale
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 11
    functionsReached:
    - gf_list_get
    - gf_list_last
    - PID_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_get_timescale(GF_FilterPid *pid)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:8902,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8903,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8910,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8914,1
    - Dst: gf_filter_pid_check_unblock
      Src: /src/gpac/src/filter_core/filter_pid.c:8923,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:8928,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8930,1
    - Dst: gf_filter_pid_clear_eos
      Src: /src/gpac/src/filter_core/filter_pid.c:8931,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8933,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:8941,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8943,1
    - Dst: gf_filter_pid_clear_eos
      Src: /src/gpac/src/filter_core/filter_pid.c:8944,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8946,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 38
    argCount: 2
    argNames:
    - pid
    - clear_all
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8948
      start: 8897
    functionDepth: 8
    functionLinenumber: 8897
    functionLinenumberEnd: 8948
    functionName: gf_filter_pid_clear_eos
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 5
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - gf_filter_pid_check_unblock
    - PID_IS_OUTPUT
    - GF_LOG
    - gf_mx_v
    - gf_filter_pid_clear_eos
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_clear_eos(GF_FilterPid *pid, Bool clear_all)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:8954,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8955,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - pid
    - filter_in_charge
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8959
      start: 8950
    functionDepth: 1
    functionLinenumber: 8950
    functionLinenumberEnd: 8959
    functionName: gf_filter_pid_set_clock_mode
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - GF_LOG
    - PID_IS_OUTPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_set_clock_mode(GF_FilterPid *pid, Bool filter_in_charge)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:8964,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8965,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8970
      start: 8961
    functionDepth: 1
    functionLinenumber: 8961
    functionLinenumberEnd: 8970
    functionName: gf_filter_pid_get_args
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - PID_IS_OUTPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_pid_get_args(GF_FilterPid *pid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:8975,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8976,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - pid
    - total_duration_us
    argTypes:
    - GF_FilterPid*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8980
      start: 8972
    functionDepth: 1
    functionLinenumber: 8972
    functionLinenumberEnd: 8980
    functionName: gf_filter_pid_set_max_buffer
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 6
    functionsReached:
    - GF_LOG
    - PID_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_set_max_buffer(GF_FilterPid *pid, u32 total_duration_us)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:8985,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8986,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8990
      start: 8982
    functionDepth: 1
    functionLinenumber: 8982
    functionLinenumberEnd: 8990
    functionName: gf_filter_pid_get_max_buffer
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 5
    functionsReached:
    - GF_LOG
    - PID_IS_OUTPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_get_max_buffer(GF_FilterPid *pid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:8996,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8997,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9001
      start: 8993
    functionDepth: 1
    functionLinenumber: 8993
    functionLinenumberEnd: 9001
    functionName: gf_filter_pid_set_loose_connect
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 3
    functionsReached:
    - GF_LOG
    - PID_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_set_loose_connect(GF_FilterPid *pid)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9008,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filter_core/filter_pid.c:9013,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9014,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9017,1
    - Dst: gf_props_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9031,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9034,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9041,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filter_core/filter_pid.c:9043,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:9052,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9053,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9059,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 62
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9085
      start: 9003
    functionDepth: 3
    functionLinenumber: 9003
    functionLinenumberEnd: 9085
    functionName: GF_PropertyValue *gf_filter_pid_caps_query(GF_FilterPid *pid, u32
      prop_4cc)
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - GF_LOG
    - gf_props_get_property
    - gf_list_count
    - PID_IS_INPUT
    - gf_filter_pid_caps_query
    - gf_list_last
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_PropertyValue *gf_filter_pid_caps_query(GF_FilterPid *pid,
      u32 prop_4cc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9091,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9092,1
    - Dst: gf_props_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9096,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9097
      start: 9087
    functionDepth: 3
    functionLinenumber: 9087
    functionLinenumberEnd: 9097
    functionName: GF_PropertyValue *gf_filter_pid_caps_query_str(GF_FilterPid *pid,
      const char *prop_name)
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_props_get_property
    - PID_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_PropertyValue *gf_filter_pid_caps_query_str(GF_FilterPid
      *pid, const char *prop_name)
  - BBCount: 74
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:9107,1
    - Dst: strcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:9108,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:9111,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9128,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:9143,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9145,1
    - Dst: strcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:9146,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:9156,1
    - Dst: strcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:9158,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9162,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9166,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9168,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9169,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9172,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9174,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9175,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9177,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9181,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_pid.c:9184,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9194,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9195,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9196,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9199,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9199,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9200,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9202,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9203,1
    - Dst: gf_stream_type_short_name
      Src: /src/gpac/src/filter_core/filter_pid.c:9206,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9210,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:9211,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9212,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filter_core/filter_pid.c:9215,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9216,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9218,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9221,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9225,1
    - Dst: gf_filter_pid_get_property_str_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9226,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filter_core/filter_pid.c:9228,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9231,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9236,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9238,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9240,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9242,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9244,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9246,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9248,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9250,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9252,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9254,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:9257,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:9258,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filter_core/filter_pid.c:9260,1
    - Dst: gf_filter_pid_get_property_str_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9263,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filter_core/filter_pid.c:9265,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9267,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9269,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9273,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filter_core/filter_pid.c:9275,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9277,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filter_core/filter_pid.c:9279,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9281,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filter_core/filter_pid.c:9283,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9285,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filter_core/filter_pid.c:9287,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9294,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:9299,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9345,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9347,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9352,1
    - Dst: gf_props_dump_val
      Src: /src/gpac/src/filter_core/filter_pid.c:9366,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:9373,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9376,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filter_core/filter_pid.c:9377,1
    - Dst: strcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:9380,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_pid.c:9383,1
    - Dst: strrchr
      Src: /src/gpac/src/filter_core/filter_pid.c:9384,1
    - Dst: strrchr
      Src: /src/gpac/src/filter_core/filter_pid.c:9385,1
    - Dst: strrchr
      Src: /src/gpac/src/filter_core/filter_pid.c:9392,1
    - Dst: strncpy
      Src: /src/gpac/src/filter_core/filter_pid.c:9396,1
    - Dst: strcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:9399,1
    - Dst: strcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:9403,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9406,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:9409,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9410,1
    - Dst: strcat
      Src: /src/gpac/src/filter_core/filter_pid.c:9414,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:9415,1
    CyclomaticComplexity: 108
    EdgeCount: 108
    ICount: 306
    argCount: 6
    argNames:
    - pid
    - szTemplate
    - szFinalName
    - file_idx
    - file_suffix
    - filename
    argTypes:
    - GF_FilterPid*
    - char[]
    - char[]
    - u32
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9427
      start: 9100
    functionDepth: 4
    functionLinenumber: 9100
    functionLinenumberEnd: 9427
    functionName: gf_filter_pid_resolve_file_template_ex
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - strcpy
    - gf_fileio_translate_url
    - strchr
    - gf_filter_pid_get_packet
    - strcat
    - strrchr
    - gf_props_dump_val
    - sprintf
    - strncmp
    - gf_filter_pck_get_cts
    - gf_stream_type_short_name
    - gf_filter_pid_get_property_first
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_property
    - gf_props_get_id
    - GF_LOG
    - strstr
    - strncpy
    - gf_filter_pck_get_sap
    - strlen
    - gf_filter_pid_get_property_str_first
    - strcmp
    - GF_4CC
    - gf_filter_pck_get_dts
    - gf_filter_pck_get_property_str
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_resolve_file_template_ex(GF_FilterPid *pid,
      const char szTemplate[GF_MAX_PATH], char szFinalName[GF_MAX_PATH], u32 file_idx,
      const char *file_suffix, const char *filename)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_resolve_file_template_ex
      Src: /src/gpac/src/filter_core/filter_pid.c:9432,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - pid
    - szTemplate
    - szFinalName
    - file_idx
    - file_suffix
    argTypes:
    - GF_FilterPid*
    - char[]
    - char[]
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9433
      start: 9429
    functionDepth: 5
    functionLinenumber: 9429
    functionLinenumberEnd: 9433
    functionName: gf_filter_pid_resolve_file_template
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 9
    functionsReached:
    - gf_filter_pid_resolve_file_template_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_resolve_file_template(GF_FilterPid *pid, const
      char szTemplate[GF_MAX_PATH], char szFinalName[GF_MAX_PATH], u32 file_idx, const
      char *file_suffix)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9440,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9441,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9445,1
    - Dst: gf_filter_aggregate_packets
      Src: /src/gpac/src/filter_core/filter_pid.c:9446,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:9450,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:9451,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:9460,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - pid
    - discard_on
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9465
      start: 9436
    functionDepth: 11
    functionLinenumber: 9436
    functionLinenumberEnd: 9465
    functionName: gf_filter_pid_set_discard
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 36
    functionsReached:
    - gf_filter_pid_drop_packet
    - PID_IS_OUTPUT
    - GF_LOG
    - gf_fq_count
    - gf_filter_pid_get_packet
    - gf_filter_aggregate_packets
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_set_discard(GF_FilterPid *pid, Bool discard_on)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:9475,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:9477,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_pid.c:9479,1
    - Dst: gf_fs_path_escape_colon
      Src: /src/gpac/src/filter_core/filter_pid.c:9482,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:9485,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_pid.c:9487,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:9488,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - sess
    - _args
    - is_dst
    argTypes:
    - GF_FilterSession*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9491
      start: 9467
    functionDepth: 6
    functionLinenumber: 9467
    functionLinenumberEnd: 9491
    functionName: gf_filter_pid_get_dst_string
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - memcpy
    - strlen
    - sprintf
    - strstr
    - gf_fs_path_escape_colon
    - gf_malloc
    linkageType: ''
    returnType: char
    signature: char *gf_filter_pid_get_dst_string(GF_FilterSession *sess, const char
      *_args, Bool is_dst)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9500,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9501,1
    - Dst: gf_filter_pid_get_dst_string
      Src: /src/gpac/src/filter_core/filter_pid.c:9507,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9512,1
    - Dst: gf_filter_pid_get_dst_string
      Src: /src/gpac/src/filter_core/filter_pid.c:9517,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9521,1
    - Dst: gf_filter_pid_get_destination
      Src: /src/gpac/src/filter_core/filter_pid.c:9522,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 26
    argCount: 2
    argNames:
    - pid
    - dst_idx
    argTypes:
    - GF_FilterPid*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9527
      start: 9494
    functionDepth: 7
    functionLinenumber: 9494
    functionLinenumberEnd: 9527
    functionName: gf_filter_pid_get_destination_ex
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - GF_LOG
    - PID_IS_INPUT
    - gf_filter_pid_get_dst_string
    - gf_filter_pid_get_destination
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_pid_get_destination_ex(GF_FilterPid *pid, u32
      dst_idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_destination_ex
      Src: /src/gpac/src/filter_core/filter_pid.c:9531,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9532
      start: 9528
    functionDepth: 8
    functionLinenumber: 9528
    functionLinenumberEnd: 9532
    functionName: gf_filter_pid_get_destination
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 6
    functionsReached:
    - gf_filter_pid_get_destination_ex
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_pid_get_destination(GF_FilterPid *pid)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9541,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9542,1
    - Dst: gf_filter_pid_get_dst_string
      Src: /src/gpac/src/filter_core/filter_pid.c:9549,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:9553,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9555,1
    - Dst: gf_filter_pid_get_dst_string
      Src: /src/gpac/src/filter_core/filter_pid.c:9559,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:9561,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:9565,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9567
      start: 9534
    functionDepth: 7
    functionLinenumber: 9534
    functionLinenumberEnd: 9567
    functionName: gf_filter_pid_get_source
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - PID_IS_OUTPUT
    - GF_LOG
    - gf_mx_v
    - gf_filter_pid_get_dst_string
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_pid_get_source(GF_FilterPid *pid)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9572,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9573,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9579,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:9580,1
    - Dst: gf_filter_pid_first_pid_for_source
      Src: /src/gpac/src/filter_core/filter_pid.c:9582,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - pid
    - source
    argTypes:
    - GF_FilterPid*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9587
      start: 9569
    functionDepth: 2
    functionLinenumber: 9569
    functionLinenumberEnd: 9587
    functionName: gf_filter_pid_first_pid_for_source
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - gf_list_get
    - gf_filter_pid_first_pid_for_source
    - PID_IS_OUTPUT
    - GF_LOG
    - gf_filter_in_parent_chain
    linkageType: ''
    returnType: GF_FilterPid
    signature: GF_FilterPid *gf_filter_pid_first_pid_for_source(GF_FilterPid *pid,
      GF_Filter *source)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9592,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9593,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9597,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:9600,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:9602,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:9603,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:9604,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:9606,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9607
      start: 9589
    functionDepth: 1
    functionLinenumber: 9589
    functionLinenumberEnd: 9607
    functionName: gf_filter_pid_discard_block
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - safe_int_dec
    - gf_mx_p
    - gf_assert
    - GF_LOG
    - gf_mx_v
    - PID_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_discard_block(GF_FilterPid *pid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9612,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9613,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9618
      start: 9609
    functionDepth: 1
    functionLinenumber: 9609
    functionLinenumberEnd: 9618
    functionName: gf_filter_pid_require_source_id
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 3
    functionsReached:
    - GF_LOG
    - PID_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_require_source_id(GF_FilterPid *pid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9623,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9624,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9628
      start: 9620
    functionDepth: 1
    functionLinenumber: 9620
    functionLinenumberEnd: 9628
    functionName: gf_filter_pid_get_min_pck_duration
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - GF_LOG
    - PID_IS_OUTPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_get_min_pck_duration(GF_FilterPid *pid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9633,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9634,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - pid
    - do_recompute
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9638
      start: 9630
    functionDepth: 1
    functionLinenumber: 9630
    functionLinenumberEnd: 9638
    functionName: gf_filter_pid_recompute_dts
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 3
    functionsReached:
    - GF_LOG
    - PID_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_recompute_dts(GF_FilterPid *pid, Bool do_recompute)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9646
      start: 9640
    functionDepth: 0
    functionLinenumber: 9640
    functionLinenumberEnd: 9646
    functionName: gf_filter_pid_is_playing
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_is_playing(GF_FilterPid *pid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9651,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9652,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9661
      start: 9648
    functionDepth: 1
    functionLinenumber: 9648
    functionLinenumberEnd: 9661
    functionName: gf_filter_pid_allow_direct_dispatch
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - PID_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_allow_direct_dispatch(GF_FilterPid *pid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9667,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9668,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - _pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9674
      start: 9663
    functionDepth: 1
    functionLinenumber: 9663
    functionLinenumberEnd: 9674
    functionName: gf_filter_pid_get_alias_udta
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 3
    functionsReached:
    - GF_LOG
    - PID_IS_OUTPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_pid_get_alias_udta(GF_FilterPid *_pid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9680
      start: 9676
    functionDepth: 0
    functionLinenumber: 9676
    functionLinenumberEnd: 9680
    functionName: gf_filter_pid_get_owner
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_pid_get_owner(GF_FilterPid *pid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9685,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9686,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9690
      start: 9682
    functionDepth: 1
    functionLinenumber: 9682
    functionLinenumberEnd: 9690
    functionName: gf_filter_pid_get_source_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - PID_IS_OUTPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_pid_get_source_filter(GF_FilterPid *pid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9696,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9697,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9701,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - pid
    - idx
    argTypes:
    - GF_FilterPid*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9703
      start: 9692
    functionDepth: 1
    functionLinenumber: 9692
    functionLinenumberEnd: 9703
    functionName: gf_filter_pid_enum_destinations
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - gf_list_get
    - PID_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_filter_pid_enum_destinations(GF_FilterPid *pid, u32 idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9709,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9710,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - pid
    - do_ignore
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9716
      start: 9705
    functionDepth: 1
    functionLinenumber: 9705
    functionLinenumberEnd: 9716
    functionName: gf_filter_pid_ignore_blocking
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - PID_IS_OUTPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_ignore_blocking(GF_FilterPid *pid, Bool do_ignore)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9729
      start: 9718
    functionDepth: 0
    functionLinenumber: 9718
    functionLinenumberEnd: 9729
    functionName: gf_filter_pid_get_next_ts
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_get_next_ts(GF_FilterPid *pid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9735,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9739
      start: 9731
    functionDepth: 1
    functionLinenumber: 9731
    functionLinenumberEnd: 9739
    functionName: gf_filter_pid_get_udta_flags
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - PID_IS_OUTPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_get_udta_flags(GF_FilterPid *pid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9745,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - pid
    - flags
    argTypes:
    - GF_FilterPid*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9751
      start: 9741
    functionDepth: 1
    functionLinenumber: 9741
    functionLinenumberEnd: 9751
    functionName: gf_filter_pid_set_udta_flags
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 6
    functionsReached:
    - PID_IS_OUTPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_set_udta_flags(GF_FilterPid *pid, u32 flags)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9757,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9758,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:9763,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9765,1
    - Dst: gf_filter_pid_has_decoder
      Src: /src/gpac/src/filter_core/filter_pid.c:9766,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:9767,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:9771,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9773
      start: 9753
    functionDepth: 1
    functionLinenumber: 9753
    functionLinenumberEnd: 9773
    functionName: gf_filter_pid_has_decoder
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - gf_mx_p
    - gf_list_get
    - PID_IS_OUTPUT
    - GF_LOG
    - gf_mx_v
    - gf_filter_pid_has_decoder
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_has_decoder(GF_FilterPid *pid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9779,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9780,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_pid.c:9784,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - pid
    - rtt_ms
    - jitter_us
    - loss_rate
    argTypes:
    - GF_FilterPid*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9789
      start: 9775
    functionDepth: 2
    functionLinenumber: 9775
    functionLinenumberEnd: 9789
    functionName: gf_filter_pid_set_rt_stats
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - gf_sys_clock_high_res
    - PID_IS_OUTPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_set_rt_stats(GF_FilterPid *pid, u32 rtt_ms,
      u32 jitter_us, u32 loss_rate)
  - BBCount: 102
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_pid.c:9819,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9823,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9827,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9831,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9834,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9835,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filter_core/filter_pid.c:9837,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9842,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9843,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9844,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9845,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9854,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9859,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9877,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:9881,1
    - Dst: gf_codecid_4cc_type
      Src: /src/gpac/src/filter_core/filter_pid.c:9885,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:9886,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:9886,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9890,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9894,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filter_core/filter_pid.c:9897,1
    - Dst: gf_odf_dovi_cfg_read_bs
      Src: /src/gpac/src/filter_core/filter_pid.c:9898,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filter_core/filter_pid.c:9899,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9901,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:9901,1
    - Dst: rfc_6381_get_codec_dolby_vision
      Src: /src/gpac/src/filter_core/filter_pid.c:9910,1
    - Dst: rfc_6381_get_codec_dolby_vision
      Src: /src/gpac/src/filter_core/filter_pid.c:9913,1
    - Dst: rfc_6381_get_codec_dolby_vision
      Src: /src/gpac/src/filter_core/filter_pid.c:9916,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/src/filter_core/filter_pid.c:9921,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/src/filter_core/filter_pid.c:9924,1
    - Dst: rfc_6381_get_codec_aac
      Src: /src/gpac/src/filter_core/filter_pid.c:9934,1
    - Dst: dolby_get_codec_ac4
      Src: /src/gpac/src/filter_core/filter_pid.c:9936,1
    - Dst: gf_odf_iamf_cfg_read
      Src: /src/gpac/src/filter_core/filter_pid.c:9938,1
    - Dst: rfc_6381_get_codec_iamf
      Src: /src/gpac/src/filter_core/filter_pid.c:9939,1
    - Dst: gf_odf_iamf_cfg_del
      Src: /src/gpac/src/filter_core/filter_pid.c:9940,1
    - Dst: rfc_6381_get_codec_m4v
      Src: /src/gpac/src/filter_core/filter_pid.c:9945,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filter_core/filter_pid.c:9960,1
    - Dst: rfc_6381_get_codec_avc
      Src: /src/gpac/src/filter_core/filter_pid.c:9962,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filter_core/filter_pid.c:9963,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:9967,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:9967,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9968,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filter_core/filter_pid.c:10004,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filter_core/filter_pid.c:10006,1
    - Dst: rfc_6381_get_codec_hevc
      Src: /src/gpac/src/filter_core/filter_pid.c:10011,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:10013,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10013,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filter_core/filter_pid.c:10016,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10019,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:10023,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10023,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10025,1
    - Dst: gf_odf_av1_cfg_read
      Src: /src/gpac/src/filter_core/filter_pid.c:10033,1
    - Dst: rfc_6381_get_codec_av1
      Src: /src/gpac/src/filter_core/filter_pid.c:10035,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filter_core/filter_pid.c:10036,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10039,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:10042,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10042,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10043,1
    - Dst: gf_odf_vp_cfg_read
      Src: /src/gpac/src/filter_core/filter_pid.c:10052,1
    - Dst: rfc_6381_get_codec_vpx
      Src: /src/gpac/src/filter_core/filter_pid.c:10055,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:10056,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10057,1
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/filter_core/filter_pid.c:10058,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10061,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10061,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:10064,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10064,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10065,1
    - Dst: gf_odf_avs3v_cfg_read
      Src: /src/gpac/src/filter_core/filter_pid.c:10072,1
    - Dst: rfc_6381_get_codec_avs3v
      Src: /src/gpac/src/filter_core/filter_pid.c:10074,1
    - Dst: gf_odf_avs3v_cfg_del
      Src: /src/gpac/src/filter_core/filter_pid.c:10075,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10078,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:10081,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10081,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10082,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:10088,1
    - Dst: rfc_6381_get_codec_mpegha
      Src: /src/gpac/src/filter_core/filter_pid.c:10096,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filter_core/filter_pid.c:10103,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:10105,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10105,1
    - Dst: rfc_6381_get_codec_vvc
      Src: /src/gpac/src/filter_core/filter_pid.c:10107,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filter_core/filter_pid.c:10108,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10111,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10111,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:10114,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10114,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10115,1
    - Dst: rfc_6381_get_codec_uncv
      Src: /src/gpac/src/filter_core/filter_pid.c:10121,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:10123,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10123,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10124,1
    - Dst: gf_codecid_4cc_type
      Src: /src/gpac/src/filter_core/filter_pid.c:10127,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:10129,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:10134,1
    - Dst: gf_pixel_fmt_to_qt_type
      Src: /src/gpac/src/filter_core/filter_pid.c:10135,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:10138,1
    - Dst: gf_audio_fmt_to_isobmf
      Src: /src/gpac/src/filter_core/filter_pid.c:10139,1
    - Dst: gf_codecid_mime
      Src: /src/gpac/src/filter_core/filter_pid.c:10144,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:10145,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:10147,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10148,1
    - Dst: strcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:10149,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10152,1
    - Dst: strcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:10153,1
    - Dst: rfc6381_codec_name_default
      Src: /src/gpac/src/filter_core/filter_pid.c:10157,1
    CyclomaticComplexity: 92
    EdgeCount: 92
    ICount: 297
    argCount: 6
    argNames:
    - pid
    - szCodec
    - force_inband
    - force_sbr
    - tile_base_dcd
    - out_inband_forced
    argTypes:
    - GF_FilterPid*
    - char*
    - Bool
    - Bool
    - GF_PropertyValue*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10160
      start: 9809
    functionDepth: 9
    functionLinenumber: 9809
    functionLinenumberEnd: 10160
    functionName: gf_filter_pid_get_rfc_6381_codec_string
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - gf_odf_vvc_cfg_del
    - gf_odf_av1_cfg_read
    - gf_bs_new
    - gf_odf_iamf_cfg_del
    - gf_odf_avc_cfg_del
    - rfc_6381_get_codec_hevc
    - strcpy
    - rfc_6381_get_codec_mpegha
    - memset
    - rfc_6381_get_codec_uncv
    - dolby_get_codec_ac4
    - gf_odf_av1_cfg_del
    - strchr
    - rfc_6381_get_codec_vpx
    - gf_odf_hevc_cfg_read
    - gf_4cc_to_str
    - gf_odf_vp_cfg_read
    - rfc_6381_get_codec_aac
    - gf_codecid_mime
    - rfc6381_codec_name_default
    - snprintf
    - rfc_6381_get_codec_dolby_vision
    - gf_odf_vvc_cfg_read
    - gf_filter_pid_get_property_str
    - rfc_6381_get_codec_avc
    - gf_odf_iamf_cfg_read
    - GF_LOG
    - gf_codecid_4cc_type
    - gf_odf_avs3v_cfg_read
    - gf_odf_dovi_cfg_del
    - gf_odf_dovi_cfg_read_bs
    - gf_odf_vp_cfg_del
    - rfc_6381_get_codec_m4v
    - gf_odf_avc_cfg_read
    - gf_odf_hevc_cfg_del
    - rfc_6381_get_codec_av1
    - gf_filter_pid_get_property
    - rfc_6381_get_codec_vvc
    - rfc_6381_get_codec_avs3v
    - gf_bs_del
    - gf_audio_fmt_to_isobmf
    - strcmp
    - gf_odf_avs3v_cfg_del
    - gf_pixel_fmt_to_qt_type
    - rfc_6381_get_codec_iamf
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_get_rfc_6381_codec_string(GF_FilterPid *pid,
      char *szCodec, Bool force_inband, Bool force_sbr, const GF_PropertyValue *tile_base_dcd,
      u32 *out_inband_forced)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:10167,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10168,1
    - Dst: gf_filter_pid_set_eos_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:10174,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10177
      start: 10162
    functionDepth: 12
    functionLinenumber: 10162
    functionLinenumberEnd: 10177
    functionName: gf_filter_pid_send_flush
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 6
    functionsReached:
    - GF_LOG
    - PID_IS_INPUT
    - gf_filter_pid_set_eos_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_send_flush(GF_FilterPid *pid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:10182,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10183,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10187
      start: 10179
    functionDepth: 1
    functionLinenumber: 10179
    functionLinenumberEnd: 10187
    functionName: gf_filter_pid_force_single_link
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - PID_IS_INPUT
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_force_single_link(GF_FilterPid *pid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:10191,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10192,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10196
      start: 10188
    functionDepth: 1
    functionLinenumber: 10188
    functionLinenumberEnd: 10196
    functionName: gf_filter_pid_disable_clone
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - PID_IS_INPUT
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_disable_clone(GF_FilterPid *pid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - el
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 37
    functionName: LIST_HEAD_INIT
    functionSourceFile: /src/gpac/src/quickjs/list.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: LIST_HEAD_INIT(el)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - el
    - ','
    - type
    - ','
    - member
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 40
    functionName: list_entry
    functionSourceFile: /src/gpac/src/quickjs/list.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: list_entry(el, type, member)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - head
    argTypes:
    - struct list_head*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 45
    functionName: init_list_head
    functionSourceFile: /src/gpac/src/quickjs/list.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void init_list_head(struct list_head *head)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - el
    - prev
    - next
    argTypes:
    - struct list_head*
    - struct list_head*
    - struct list_head*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 55
    functionName: __list_add
    functionSourceFile: /src/gpac/src/quickjs/list.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void __list_add(struct list_head *el,\n                              struct
      list_head *prev, struct list_head *next)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __list_add
      Src: /src/gpac/src/quickjs/list.h:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - el
    - head
    argTypes:
    - struct list_head*
    - struct list_head*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: list_add
    functionSourceFile: /src/gpac/src/quickjs/list.h
    functionUses: 904
    functionsReached:
    - __list_add
    linkageType: ''
    returnType: void
    signature: void list_add(struct list_head *el, struct list_head *head)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __list_add
      Src: /src/gpac/src/quickjs/list.h:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - el
    - head
    argTypes:
    - struct list_head*
    - struct list_head*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: list_add_tail
    functionSourceFile: /src/gpac/src/quickjs/list.h
    functionUses: 0
    functionsReached:
    - __list_add
    linkageType: ''
    returnType: void
    signature: void list_add_tail(struct list_head *el, struct list_head *head)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - el
    argTypes:
    - struct list_head*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 78
    functionName: list_del
    functionSourceFile: /src/gpac/src/quickjs/list.h
    functionUses: 521
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void list_del(struct list_head *el)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - el
    argTypes:
    - struct list_head*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: list_empty
    functionSourceFile: /src/gpac/src/quickjs/list.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int list_empty(struct list_head *el)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - el
    - ','
    - head
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: list_for_each
    functionSourceFile: /src/gpac/src/quickjs/list.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: list_for_each(el, head)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - el
    - ','
    - el1
    - ','
    - head
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: list_for_each_safe
    functionSourceFile: /src/gpac/src/quickjs/list.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: list_for_each_safe(el, el1, head)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - el
    - ','
    - head
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: list_for_each_prev
    functionSourceFile: /src/gpac/src/quickjs/list.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: list_for_each_prev(el, head)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - el
    - ','
    - el1
    - ','
    - head
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 98
    functionName: list_for_each_prev_safe
    functionSourceFile: /src/gpac/src/quickjs/list.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: list_for_each_prev_safe(el, el1, head)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lre_case_conv
      Src: /src/gpac/src/quickjs/libunicode.c:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - c
    - conv_type
    argTypes:
    - uint32_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 56
    functionName: lre_case_conv1
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - lre_case_conv
    linkageType: ''
    returnType: int
    signature: int lre_case_conv1(uint32_t c, int conv_type)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: lre_case_conv1
      Src: /src/gpac/src/quickjs/libunicode.c:128,1
    - Dst: lre_case_conv1
      Src: /src/gpac/src/quickjs/libunicode.c:129,1
    - Dst: lre_case_conv1
      Src: /src/gpac/src/quickjs/libunicode.c:141,1
    - Dst: lre_case_conv1
      Src: /src/gpac/src/quickjs/libunicode.c:142,1
    - Dst: lre_case_conv1
      Src: /src/gpac/src/quickjs/libunicode.c:143,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 86
    argCount: 5
    argNames:
    - res
    - c
    - conv_type
    - idx
    - v
    argTypes:
    - uint32_t*
    - uint32_t
    - int
    - uint32_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 59
    functionDepth: 2
    functionLinenumber: 59
    functionLinenumberEnd: 149
    functionName: lre_case_conv_entry
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - lre_case_conv1
    linkageType: ''
    returnType: int
    signature: int lre_case_conv_entry(uint32_t *res, uint32_t c, int conv_type, uint32_t
      idx, uint32_t v)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: countof
      Src: /src/gpac/src/quickjs/libunicode.c:173,1
    - Dst: lre_case_conv_entry
      Src: /src/gpac/src/quickjs/libunicode.c:184,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 3
    argNames:
    - res
    - c
    - conv_type
    argTypes:
    - uint32_t*
    - uint32_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 156
    functionDepth: 3
    functionLinenumber: 156
    functionLinenumberEnd: 190
    functionName: lre_case_conv
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 1
    functionsReached:
    - lre_case_conv_entry
    - countof
    linkageType: ''
    returnType: int
    signature: int lre_case_conv(uint32_t *res, uint32_t c, int conv_type)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: lre_case_conv_entry
      Src: /src/gpac/src/quickjs/libunicode.c:198,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/libunicode.c:213,1
    - Dst: lre_case_conv_entry
      Src: /src/gpac/src/quickjs/libunicode.c:218,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 4
    argNames:
    - c
    - idx
    - v
    - is_unicode
    argTypes:
    - uint32_t
    - uint32_t
    - uint32_t
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 192
    functionDepth: 3
    functionLinenumber: 192
    functionLinenumberEnd: 224
    functionName: lre_case_folding_entry
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - lre_case_conv_entry
    - likely
    linkageType: ''
    returnType: int
    signature: int lre_case_folding_entry(uint32_t c, uint32_t idx, uint32_t v, BOOL
      is_unicode)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: countof
      Src: /src/gpac/src/quickjs/libunicode.c:245,1
    - Dst: lre_case_folding_entry
      Src: /src/gpac/src/quickjs/libunicode.c:256,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 2
    argNames:
    - c
    - is_unicode
    argTypes:
    - uint32_t
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 227
    functionDepth: 4
    functionLinenumber: 227
    functionLinenumberEnd: 261
    functionName: lre_canonicalize
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - lre_case_folding_entry
    - countof
    linkageType: ''
    returnType: int
    signature: int lre_canonicalize(uint32_t c, BOOL is_unicode)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 266
    functionName: get_le24
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t get_le24(const uint8_t *ptr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: get_le24
      Src: /src/gpac/src/quickjs/libunicode.c:278,1
    - Dst: get_le24
      Src: /src/gpac/src/quickjs/libunicode.c:285,1
    - Dst: get_le24
      Src: /src/gpac/src/quickjs/libunicode.c:291,1
    - Dst: get_le24
      Src: /src/gpac/src/quickjs/libunicode.c:299,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 4
    argNames:
    - pcode
    - c
    - index_table
    - index_table_len
    argTypes:
    - uint32_t*
    - uint32_t
    - uint8_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 271
    functionDepth: 1
    functionLinenumber: 271
    functionLinenumberEnd: 302
    functionName: get_index_pos
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - get_le24
    linkageType: ''
    returnType: int
    signature: "int get_index_pos(uint32_t *pcode, uint32_t c,\n                         const
      uint8_t *index_table, int index_table_len)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: get_index_pos
      Src: /src/gpac/src/quickjs/libunicode.c:311,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 4
    argNames:
    - c
    - table
    - index_table
    - index_table_len
    argTypes:
    - uint32_t
    - uint8_t*
    - uint8_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 304
    functionDepth: 2
    functionLinenumber: 304
    functionLinenumberEnd: 345
    functionName: lre_is_in_table
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - get_index_pos
    linkageType: ''
    returnType: BOOL
    signature: "BOOL lre_is_in_table(uint32_t c, const uint8_t *table,\n                            const
      uint8_t *index_table, int index_table_len)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: countof
      Src: /src/gpac/src/quickjs/libunicode.c:353,1
    - Dst: lre_is_in_table
      Src: /src/gpac/src/quickjs/libunicode.c:367,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - c
    argTypes:
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 347
    functionDepth: 3
    functionLinenumber: 347
    functionLinenumberEnd: 370
    functionName: lre_is_cased
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - lre_is_in_table
    - countof
    linkageType: ''
    returnType: BOOL
    signature: BOOL lre_is_cased(uint32_t c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lre_is_in_table
      Src: /src/gpac/src/quickjs/libunicode.c:374,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 372
    functionDepth: 3
    functionLinenumber: 372
    functionLinenumberEnd: 377
    functionName: lre_is_case_ignorable
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - lre_is_in_table
    linkageType: ''
    returnType: BOOL
    signature: BOOL lre_is_case_ignorable(uint32_t c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/libunicode.c:385,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - cr
    argTypes:
    - CharRange*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 381
    functionDepth: 0
    functionLinenumber: 381
    functionLinenumberEnd: 386
    functionName: cr_dump
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - printf
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused cr_dump(CharRange *cr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: realloc
      Src: /src/gpac/src/quickjs/libunicode.c:390,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - opaque
    - ptr
    - size
    argTypes:
    - void*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 388
    functionDepth: 1
    functionLinenumber: 388
    functionLinenumberEnd: 391
    functionName: cr_default_realloc
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - realloc
    linkageType: ''
    returnType: void
    signature: void *cr_default_realloc(void *opaque, void *ptr, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - cr
    - mem_opaque
    - realloc_func
    argTypes:
    - CharRange*
    - void*
    - DynBufReallocFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 393
    functionDepth: 0
    functionLinenumber: 393
    functionLinenumberEnd: 399
    functionName: cr_init
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void cr_init(CharRange *cr, void *mem_opaque, DynBufReallocFunc *realloc_func)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CharRange*::realloc_func
      Src: /src/gpac/src/quickjs/libunicode.c:403,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - cr
    argTypes:
    - CharRange*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 401
    functionDepth: 0
    functionLinenumber: 401
    functionLinenumberEnd: 404
    functionName: cr_free
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - CharRange*::realloc_func
    linkageType: ''
    returnType: void
    signature: void cr_free(CharRange *cr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: max_int
      Src: /src/gpac/src/quickjs/libunicode.c:412,1
    - Dst: CharRange*::realloc_func
      Src: /src/gpac/src/quickjs/libunicode.c:413,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - cr
    - size
    argTypes:
    - CharRange*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 406
    functionDepth: 1
    functionLinenumber: 406
    functionLinenumberEnd: 421
    functionName: cr_realloc
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - max_int
    - CharRange*::realloc_func
    linkageType: ''
    returnType: int
    signature: int cr_realloc(CharRange *cr, int size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: cr_realloc
      Src: /src/gpac/src/quickjs/libunicode.c:425,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/libunicode.c:427,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - cr
    - cr1
    argTypes:
    - CharRange*
    - CharRange*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 423
    functionDepth: 2
    functionLinenumber: 423
    functionLinenumberEnd: 430
    functionName: cr_copy
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - memcpy
    - cr_realloc
    linkageType: ''
    returnType: int
    signature: int cr_copy(CharRange *cr, const CharRange *cr1)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 1
    argNames:
    - cr
    argTypes:
    - CharRange*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 459
      start: 433
    functionDepth: 0
    functionLinenumber: 433
    functionLinenumberEnd: 459
    functionName: cr_compress
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void cr_compress(CharRange *cr)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: abort
      Src: /src/gpac/src/quickjs/libunicode.c:506,1
    - Dst: cr_add_point
      Src: /src/gpac/src/quickjs/libunicode.c:509,1
    - Dst: cr_compress
      Src: /src/gpac/src/quickjs/libunicode.c:513,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 53
    argCount: 6
    argNames:
    - cr
    - a_pt
    - a_len
    - b_pt
    - b_len
    - op
    argTypes:
    - CharRange*
    - uint32_t*
    - int
    - uint32_t*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 462
    functionDepth: 1
    functionLinenumber: 462
    functionLinenumberEnd: 515
    functionName: cr_op
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - cr_compress
    - abort
    - cr_add_point
    linkageType: ''
    returnType: int
    signature: "int cr_op(CharRange *cr, const uint32_t *a_pt, int a_len,\n          const
      uint32_t *b_pt, int b_len, int op)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cr_op
      Src: /src/gpac/src/quickjs/libunicode.c:524,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:525,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - cr
    - b_pt
    - b_len
    - op
    argTypes:
    - CharRange*
    - uint32_t*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 517
    functionDepth: 2
    functionLinenumber: 517
    functionLinenumberEnd: 527
    functionName: cr_op1
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - cr_op
    - cr_free
    linkageType: ''
    returnType: int
    signature: int cr_op1(CharRange *cr, const uint32_t *b_pt, int b_len, int op)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: cr_realloc
      Src: /src/gpac/src/quickjs/libunicode.c:533,1
    - Dst: memmove
      Src: /src/gpac/src/quickjs/libunicode.c:535,1
    - Dst: cr_compress
      Src: /src/gpac/src/quickjs/libunicode.c:539,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - cr
    argTypes:
    - CharRange*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 529
    functionDepth: 2
    functionLinenumber: 529
    functionLinenumberEnd: 541
    functionName: cr_invert
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - cr_realloc
    - memmove
    - cr_compress
    linkageType: ''
    returnType: int
    signature: int cr_invert(CharRange *cr)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:556,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:556,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:556,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:556,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:556,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:556,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:557,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:557,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:557,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:557,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:559,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:559,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:559,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:559,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:559,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:559,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:559,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:561,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:561,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:561,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:561,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:561,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:561,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:561,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:561,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:561,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:561,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:561,1
    - Dst: MR
      Src: /src/gpac/src/quickjs/libunicode.c:561,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/libunicode.c:573,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:586,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:594,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:597,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:600,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:606,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 50
    argCount: 2
    argNames:
    - cr
    - case_mask
    argTypes:
    - CharRange*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 613
      start: 552
    functionDepth: 1
    functionLinenumber: 552
    functionLinenumberEnd: 613
    functionName: unicode_case1
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - cr_add_interval
    - MR
    - countof
    linkageType: ''
    returnType: int
    signature: int unicode_case1(CharRange *cr, int case_mask)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 554
    functionDepth: 0
    functionLinenumber: 554
    functionLinenumberEnd: 555
    functionName: MR
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MR(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - p1
    - p2
    - arg
    argTypes:
    - void*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 620
      start: 615
    functionDepth: 0
    functionLinenumber: 615
    functionLinenumberEnd: 620
    functionName: point_cmp
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int point_cmp(const void *p1, const void *p2, void *arg)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: rqsort
      Src: /src/gpac/src/quickjs/libunicode.c:627,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 1
    argNames:
    - cr
    argTypes:
    - CharRange*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 622
    functionDepth: 1
    functionLinenumber: 622
    functionLinenumberEnd: 656
    functionName: cr_sort_and_remove_overlap
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - rqsort
    linkageType: ''
    returnType: void
    signature: void cr_sort_and_remove_overlap(CharRange *cr)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: cr_init
      Src: /src/gpac/src/quickjs/libunicode.c:665,1
    - Dst: cr_init
      Src: /src/gpac/src/quickjs/libunicode.c:666,1
    - Dst: cr_init
      Src: /src/gpac/src/quickjs/libunicode.c:667,1
    - Dst: cr_init
      Src: /src/gpac/src/quickjs/libunicode.c:668,1
    - Dst: unicode_case1
      Src: /src/gpac/src/quickjs/libunicode.c:670,1
    - Dst: cr_op
      Src: /src/gpac/src/quickjs/libunicode.c:672,1
    - Dst: cr_invert
      Src: /src/gpac/src/quickjs/libunicode.c:675,1
    - Dst: cr_op
      Src: /src/gpac/src/quickjs/libunicode.c:677,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/libunicode.c:699,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/libunicode.c:699,1
    - Dst: lre_case_folding_entry
      Src: /src/gpac/src/quickjs/libunicode.c:704,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:712,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:719,1
    - Dst: cr_sort_and_remove_overlap
      Src: /src/gpac/src/quickjs/libunicode.c:724,1
    - Dst: cr_op
      Src: /src/gpac/src/quickjs/libunicode.c:728,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:731,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:732,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:733,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:734,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:737,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:738,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:739,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:740,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 72
    argCount: 2
    argNames:
    - cr
    - is_unicode
    argTypes:
    - CharRange*
    - BOOL
    assertStmts:
    - condition: (idx < countof(case_conv_table1))
      pos:
        line_end: 698
        line_start: 698
        source_file: /src/gpac/src/quickjs/libunicode.c
    constantsTouched: []
    func_position:
      end: 742
      start: 660
    functionDepth: 4
    functionLinenumber: 660
    functionLinenumberEnd: 742
    functionName: cr_regexp_canonicalize
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - cr_sort_and_remove_overlap
    - cr_add_interval
    - lre_case_folding_entry
    - assert
    - countof
    - cr_free
    - cr_invert
    - cr_init
    - cr_op
    - unicode_case1
    linkageType: ''
    returnType: int
    signature: int cr_regexp_canonicalize(CharRange *cr, BOOL is_unicode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lre_is_in_table
      Src: /src/gpac/src/quickjs/libunicode.c:748,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 746
    functionDepth: 3
    functionLinenumber: 746
    functionLinenumberEnd: 751
    functionName: lre_is_id_start
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - lre_is_in_table
    linkageType: ''
    returnType: BOOL
    signature: BOOL lre_is_id_start(uint32_t c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lre_is_id_start
      Src: /src/gpac/src/quickjs/libunicode.c:755,1
    - Dst: lre_is_in_table
      Src: /src/gpac/src/quickjs/libunicode.c:756,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 759
      start: 753
    functionDepth: 4
    functionLinenumber: 753
    functionLinenumberEnd: 759
    functionName: lre_is_id_continue
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - lre_is_id_start
    - lre_is_in_table
    linkageType: ''
    returnType: BOOL
    signature: BOOL lre_is_id_continue(uint32_t c)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - c
    argTypes:
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 811
      start: 801
    functionDepth: 0
    functionLinenumber: 801
    functionLinenumberEnd: 811
    functionName: unicode_get_short_code
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t unicode_get_short_code(uint32_t c)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - c
    argTypes:
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 820
      start: 813
    functionDepth: 0
    functionLinenumber: 813
    functionLinenumberEnd: 820
    functionName: unicode_get_lower_simple
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t unicode_get_lower_simple(uint32_t c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 825
      start: 822
    functionDepth: 0
    functionLinenumber: 822
    functionLinenumberEnd: 825
    functionName: unicode_get16
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint16_t
    signature: uint16_t unicode_get16(const uint8_t *p)
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: unicode_get16
      Src: /src/gpac/src/quickjs/libunicode.c:851,1
    - Dst: unicode_get16
      Src: /src/gpac/src/quickjs/libunicode.c:863,1
    - Dst: unicode_get_short_code
      Src: /src/gpac/src/quickjs/libunicode.c:880,1
    - Dst: unicode_get16
      Src: /src/gpac/src/quickjs/libunicode.c:898,1
    - Dst: unicode_get16
      Src: /src/gpac/src/quickjs/libunicode.c:919,1
    - Dst: unicode_get16
      Src: /src/gpac/src/quickjs/libunicode.c:933,1
    - Dst: unicode_get_short_code
      Src: /src/gpac/src/quickjs/libunicode.c:935,1
    - Dst: unicode_get16
      Src: /src/gpac/src/quickjs/libunicode.c:938,1
    - Dst: unicode_get16
      Src: /src/gpac/src/quickjs/libunicode.c:939,1
    - Dst: unicode_get16
      Src: /src/gpac/src/quickjs/libunicode.c:941,1
    - Dst: unicode_get_short_code
      Src: /src/gpac/src/quickjs/libunicode.c:948,1
    - Dst: unicode_get16
      Src: /src/gpac/src/quickjs/libunicode.c:952,1
    - Dst: unicode_get_lower_simple
      Src: /src/gpac/src/quickjs/libunicode.c:956,1
    - Dst: unicode_get_short_code
      Src: /src/gpac/src/quickjs/libunicode.c:958,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 127
    argCount: 6
    argNames:
    - res
    - c
    - idx
    - code
    - len
    - type
    argTypes:
    - uint32_t*
    - uint32_t
    - int
    - uint32_t
    - uint32_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 963
      start: 827
    functionDepth: 1
    functionLinenumber: 827
    functionLinenumberEnd: 963
    functionName: unicode_decomp_entry
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - unicode_get_short_code
    - unicode_get_lower_simple
    - unicode_get16
    linkageType: ''
    returnType: int
    signature: "int unicode_decomp_entry(uint32_t *res, uint32_t c,\n                                int
      idx, uint32_t code, uint32_t len,\n                                uint32_t
      type)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: countof
      Src: /src/gpac/src/quickjs/libunicode.c:974,1
    - Dst: unicode_decomp_entry
      Src: /src/gpac/src/quickjs/libunicode.c:990,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 3
    argNames:
    - res
    - c
    - is_compat1
    argTypes:
    - uint32_t*
    - uint32_t
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 994
      start: 968
    functionDepth: 2
    functionLinenumber: 968
    functionLinenumberEnd: 994
    functionName: unicode_decomp_char
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - unicode_decomp_entry
    - countof
    linkageType: ''
    returnType: int
    signature: int unicode_decomp_char(uint32_t *res, uint32_t c, BOOL is_compat1)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: countof
      Src: /src/gpac/src/quickjs/libunicode.c:1004,1
    - Dst: unicode_decomp_entry
      Src: /src/gpac/src/quickjs/libunicode.c:1017,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 2
    argNames:
    - c0
    - c1
    argTypes:
    - uint32_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1030
      start: 997
    functionDepth: 2
    functionLinenumber: 997
    functionLinenumberEnd: 1030
    functionName: unicode_compose_pair
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - unicode_decomp_entry
    - countof
    linkageType: ''
    returnType: int
    signature: int unicode_compose_pair(uint32_t c0, uint32_t c1)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: get_index_pos
      Src: /src/gpac/src/quickjs/libunicode.c:1039,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 44
    argCount: 1
    argNames:
    - c
    argTypes:
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1089
      start: 1033
    functionDepth: 2
    functionLinenumber: 1033
    functionLinenumberEnd: 1089
    functionName: unicode_get_cc
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - get_index_pos
    linkageType: ''
    returnType: int
    signature: int unicode_get_cc(uint32_t c)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: unicode_get_cc
      Src: /src/gpac/src/quickjs/libunicode.c:1096,1
    - Dst: unicode_get_cc
      Src: /src/gpac/src/quickjs/libunicode.c:1102,1
    - Dst: unicode_get_cc
      Src: /src/gpac/src/quickjs/libunicode.c:1107,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/libunicode.c:1116,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/libunicode.c:1118,1
    - Dst: unicode_get_cc
      Src: /src/gpac/src/quickjs/libunicode.c:1118,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/libunicode.c:1120,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 2
    argNames:
    - buf
    - len
    argTypes:
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1125
      start: 1091
    functionDepth: 3
    functionLinenumber: 1091
    functionLinenumberEnd: 1125
    functionName: sort_cc
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - unicode_get_cc
    - printf
    linkageType: ''
    returnType: void
    signature: void sort_cc(int *buf, int len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/libunicode.c:1139,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/libunicode.c:1140,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/libunicode.c:1143,1
    - Dst: unicode_decomp_char
      Src: /src/gpac/src/quickjs/libunicode.c:1145,1
    - Dst: to_nfd_rec
      Src: /src/gpac/src/quickjs/libunicode.c:1147,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/libunicode.c:1149,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 4
    argNames:
    - dbuf
    - src
    - src_len
    - is_compat
    argTypes:
    - DynBuf*
    - int*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1153
      start: 1127
    functionDepth: 3
    functionLinenumber: 1127
    functionLinenumberEnd: 1153
    functionName: to_nfd_rec
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 1
    functionsReached:
    - unicode_decomp_char
    - dbuf_put_u32
    - to_nfd_rec
    linkageType: ''
    returnType: void
    signature: "void to_nfd_rec(DynBuf *dbuf,\n                       const int *src,
      int src_len, int is_compat)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unicode_compose_pair
      Src: /src/gpac/src/quickjs/libunicode.c:1167,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 9
    argCount: 2
    argNames:
    - c0
    - c1
    argTypes:
    - uint32_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1169
      start: 1156
    functionDepth: 3
    functionLinenumber: 1156
    functionLinenumberEnd: 1169
    functionName: compose_pair
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 1
    functionsReached:
    - unicode_compose_pair
    linkageType: ''
    returnType: int
    signature: int compose_pair(uint32_t c0, uint32_t c1)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_init2
      Src: /src/gpac/src/quickjs/libunicode.c:1181,1
    - Dst: dbuf_claim
      Src: /src/gpac/src/quickjs/libunicode.c:1182,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/libunicode.c:1192,1
    - Dst: to_nfd_rec
      Src: /src/gpac/src/quickjs/libunicode.c:1198,1
    - Dst: dbuf_error
      Src: /src/gpac/src/quickjs/libunicode.c:1199,1
    - Dst: sort_cc
      Src: /src/gpac/src/quickjs/libunicode.c:1207,1
    - Dst: unicode_get_cc
      Src: /src/gpac/src/quickjs/libunicode.c:1220,1
    - Dst: unicode_get_cc
      Src: /src/gpac/src/quickjs/libunicode.c:1223,1
    - Dst: compose_pair
      Src: /src/gpac/src/quickjs/libunicode.c:1232,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 60
    argCount: 6
    argNames:
    - pdst
    - src
    - src_len
    - n_type
    - opaque
    - realloc_func
    argTypes:
    - uint32_t**
    - uint32_t*
    - int
    - UnicodeNormalizationEnum
    - void*
    - DynBufReallocFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1242
      start: 1171
    functionDepth: 4
    functionLinenumber: 1171
    functionLinenumberEnd: 1242
    functionName: unicode_normalize
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - compose_pair
    - dbuf_claim
    - sort_cc
    - to_nfd_rec
    - memcpy
    - dbuf_error
    - unicode_get_cc
    - dbuf_init2
    linkageType: ''
    returnType: int
    signature: "int unicode_normalize(uint32_t **pdst, const uint32_t *src, int src_len,\n
      \                     UnicodeNormalizationEnum n_type,\n                      void
      *opaque, DynBufReallocFunc *realloc_func)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/quickjs/libunicode.c:1254,1
    - Dst: strchr
      Src: /src/gpac/src/quickjs/libunicode.c:1257,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/libunicode.c:1259,1
    - Dst: memcmp
      Src: /src/gpac/src/quickjs/libunicode.c:1262,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 2
    argNames:
    - name_table
    - name
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1271
      start: 1246
    functionDepth: 0
    functionLinenumber: 1246
    functionLinenumberEnd: 1271
    functionName: unicode_find_name
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - strchr
    - strlen
    - memcmp
    linkageType: ''
    returnType: int
    signature: int unicode_find_name(const char *name_table, const char *name)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: unicode_find_name
      Src: /src/gpac/src/quickjs/libunicode.c:1285,1
    - Dst: cr_init
      Src: /src/gpac/src/quickjs/libunicode.c:1293,1
    - Dst: cr_init
      Src: /src/gpac/src/quickjs/libunicode.c:1294,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/libunicode.c:1300,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:1321,1
    - Dst: cr_invert
      Src: /src/gpac/src/quickjs/libunicode.c:1329,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/libunicode.c:1336,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:1356,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:1362,1
    - Dst: cr_invert
      Src: /src/gpac/src/quickjs/libunicode.c:1373,1
    - Dst: cr_op
      Src: /src/gpac/src/quickjs/libunicode.c:1375,1
    - Dst: cr_op
      Src: /src/gpac/src/quickjs/libunicode.c:1379,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:1383,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:1384,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:1389,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:1390,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 111
    argCount: 3
    argNames:
    - cr
    - script_name
    - is_ext
    argTypes:
    - CharRange*
    - char*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1393
      start: 1275
    functionDepth: 3
    functionLinenumber: 1275
    functionLinenumberEnd: 1393
    functionName: unicode_script
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - cr_add_interval
    - countof
    - cr_free
    - cr_invert
    - unicode_find_name
    - cr_init
    - cr_op
    linkageType: ''
    returnType: int
    signature: "int unicode_script(CharRange *cr,\n                   const char *script_name,
      BOOL is_ext)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - id
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1396
      start: 1395
    functionDepth: 0
    functionLinenumber: 1395
    functionLinenumberEnd: 1396
    functionName: M
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 31
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: M(id)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: countof
      Src: /src/gpac/src/quickjs/libunicode.c:1403,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1437,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1437,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1439,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1439,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1442,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:1444,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:1451,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 49
    argCount: 2
    argNames:
    - cr
    - gc_mask
    argTypes:
    - CharRange*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1456
      start: 1397
    functionDepth: 1
    functionLinenumber: 1397
    functionLinenumberEnd: 1456
    functionName: unicode_general_category1
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - M
    - cr_add_interval
    - countof
    linkageType: ''
    returnType: int
    signature: int unicode_general_category1(CharRange *cr, uint32_t gc_mask)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:1481,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:1497,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 2
    argNames:
    - cr
    - prop_idx
    argTypes:
    - CharRange*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1503
      start: 1458
    functionDepth: 1
    functionLinenumber: 1458
    functionLinenumberEnd: 1503
    functionName: unicode_prop1
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - cr_add_interval
    linkageType: ''
    returnType: int
    signature: int unicode_prop1(CharRange *cr, int prop_idx)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/gpac/src/quickjs/libunicode.c:1525,1
    - Dst: va_arg
      Src: /src/gpac/src/quickjs/libunicode.c:1528,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/libunicode.c:1531,1
    - Dst: va_arg
      Src: /src/gpac/src/quickjs/libunicode.c:1532,1
    - Dst: cr_init
      Src: /src/gpac/src/quickjs/libunicode.c:1533,1
    - Dst: unicode_general_category1
      Src: /src/gpac/src/quickjs/libunicode.c:1534,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/libunicode.c:1538,1
    - Dst: va_arg
      Src: /src/gpac/src/quickjs/libunicode.c:1539,1
    - Dst: cr_init
      Src: /src/gpac/src/quickjs/libunicode.c:1540,1
    - Dst: unicode_prop1
      Src: /src/gpac/src/quickjs/libunicode.c:1541,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/libunicode.c:1545,1
    - Dst: va_arg
      Src: /src/gpac/src/quickjs/libunicode.c:1546,1
    - Dst: cr_init
      Src: /src/gpac/src/quickjs/libunicode.c:1547,1
    - Dst: unicode_case1
      Src: /src/gpac/src/quickjs/libunicode.c:1548,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/libunicode.c:1556,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/libunicode.c:1557,1
    - Dst: cr_init
      Src: /src/gpac/src/quickjs/libunicode.c:1561,1
    - Dst: cr_op
      Src: /src/gpac/src/quickjs/libunicode.c:1563,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:1566,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:1567,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/libunicode.c:1573,1
    - Dst: cr_invert
      Src: /src/gpac/src/quickjs/libunicode.c:1574,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/libunicode.c:1580,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/libunicode.c:1584,1
    - Dst: cr_copy
      Src: /src/gpac/src/quickjs/libunicode.c:1585,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:1586,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:1590,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 72
    argCount: 1
    argNames:
    - cr
    argTypes:
    - CharRange*
    assertStmts:
    - condition: (stack_len < POP_STACK_LEN_MAX)
      pos:
        line_end: 1556
        line_start: 1556
        source_file: /src/gpac/src/quickjs/libunicode.c
    - condition: (stack_len < POP_STACK_LEN_MAX)
      pos:
        line_end: 1537
        line_start: 1537
        source_file: /src/gpac/src/quickjs/libunicode.c
    - condition: (stack_len >= 2)
      pos:
        line_end: 1555
        line_start: 1555
        source_file: /src/gpac/src/quickjs/libunicode.c
    - condition: (stack_len < POP_STACK_LEN_MAX)
      pos:
        line_end: 1530
        line_start: 1530
        source_file: /src/gpac/src/quickjs/libunicode.c
    - condition: (stack_len == 1)
      pos:
        line_end: 1583
        line_start: 1583
        source_file: /src/gpac/src/quickjs/libunicode.c
    - condition: (stack_len < POP_STACK_LEN_MAX)
      pos:
        line_end: 1544
        line_start: 1544
        source_file: /src/gpac/src/quickjs/libunicode.c
    - condition: (stack_len >= 1)
      pos:
        line_end: 1572
        line_start: 1572
        source_file: /src/gpac/src/quickjs/libunicode.c
    constantsTouched: []
    func_position:
      end: 1592
      start: 1518
    functionDepth: 3
    functionLinenumber: 1518
    functionLinenumberEnd: 1592
    functionName: unicode_prop_ops
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - unicode_case1
    - cr_copy
    - va_start
    - assert
    - unicode_general_category1
    - cr_free
    - cr_invert
    - va_arg
    - cr_init
    - cr_op
    - abort
    - unicode_prop1
    linkageType: ''
    returnType: int
    signature: int unicode_prop_ops(CharRange *cr, ...)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unicode_find_name
      Src: /src/gpac/src/quickjs/libunicode.c:1612,1
    - Dst: unicode_general_category1
      Src: /src/gpac/src/quickjs/libunicode.c:1620,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - cr
    - gc_name
    argTypes:
    - CharRange*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1621
      start: 1607
    functionDepth: 2
    functionLinenumber: 1607
    functionLinenumberEnd: 1621
    functionName: unicode_general_category
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - unicode_find_name
    - unicode_general_category1
    linkageType: ''
    returnType: int
    signature: int unicode_general_category(CharRange *cr, const char *gc_name)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: unicode_find_name
      Src: /src/gpac/src/quickjs/libunicode.c:1630,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:1638,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:1642,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1646,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1647,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1652,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1653,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1659,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1660,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1666,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1667,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1673,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1674,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1674,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1674,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1682,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1683,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1683,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1683,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1683,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1683,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1683,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1693,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1694,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1694,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1694,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1694,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1694,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1694,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1694,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1694,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1694,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1701,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1702,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1702,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1708,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1709,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1709,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1709,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1709,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1709,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1709,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1722,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1723,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1723,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1723,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1723,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1723,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1723,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1724,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1724,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1724,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1724,1
    - Dst: unicode_case1
      Src: /src/gpac/src/quickjs/libunicode.c:1739,1
    - Dst: unicode_case1
      Src: /src/gpac/src/quickjs/libunicode.c:1742,1
    - Dst: unicode_case1
      Src: /src/gpac/src/quickjs/libunicode.c:1745,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1748,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1755,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1762,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1770,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1771,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1771,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1771,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1771,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1771,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1771,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1782,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1783,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1783,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1783,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1783,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1783,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1783,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1784,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1784,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1784,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1784,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1797,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1798,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1798,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1798,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1798,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1806,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/libunicode.c:1814,1
    - Dst: unicode_prop1
      Src: /src/gpac/src/quickjs/libunicode.c:1816,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 82
    argCount: 2
    argNames:
    - cr
    - prop_name
    argTypes:
    - CharRange*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1820
      start: 1626
    functionDepth: 4
    functionLinenumber: 1626
    functionLinenumberEnd: 1820
    functionName: unicode_prop
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - unicode_prop1
    - cr_add_interval
    - M
    - countof
    - unicode_find_name
    - unicode_prop_ops
    - unicode_case1
    linkageType: ''
    returnType: int
    signature: int unicode_prop(CharRange *cr, const char *prop_name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: countof
      Src: /src/gpac/src/quickjs/libunicode.c:1906,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - c
    argTypes:
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1916
      start: 1902
    functionDepth: 0
    functionLinenumber: 1902
    functionLinenumberEnd: 1916
    functionName: lre_is_space_non_ascii
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - countof
    linkageType: ''
    returnType: BOOL
    signature: BOOL lre_is_space_non_ascii(uint32_t c)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: unicode_prop1
      Src: /src/gpac/src/quickjs/libunicode.c:1928,1
    - Dst: cb
      Src: /src/gpac/src/quickjs/libunicode.c:1933,1
    - Dst: unicode_prop1
      Src: /src/gpac/src/quickjs/libunicode.c:1939,1
    - Dst: cb
      Src: /src/gpac/src/quickjs/libunicode.c:1945,1
    - Dst: unicode_prop1
      Src: /src/gpac/src/quickjs/libunicode.c:1951,1
    - Dst: cb
      Src: /src/gpac/src/quickjs/libunicode.c:1958,1
    - Dst: unicode_prop1
      Src: /src/gpac/src/quickjs/libunicode.c:1964,1
    - Dst: cb
      Src: /src/gpac/src/quickjs/libunicode.c:1973,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/libunicode.c:1983,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/libunicode.c:2004,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/libunicode.c:2060,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/libunicode.c:2061,1
    - Dst: cb
      Src: /src/gpac/src/quickjs/libunicode.c:2063,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/libunicode.c:2071,1
    - Dst: cb
      Src: /src/gpac/src/quickjs/libunicode.c:2081,1
    - Dst: unicode_prop1
      Src: /src/gpac/src/quickjs/libunicode.c:2086,1
    - Dst: cb
      Src: /src/gpac/src/quickjs/libunicode.c:2093,1
    - Dst: unicode_sequence_prop1
      Src: /src/gpac/src/quickjs/libunicode.c:2101,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 167
    argCount: 4
    argNames:
    - seq_prop_idx
    - cb
    - opaque
    - cr
    argTypes:
    - int
    - UnicodeSequencePropCB*
    - void*
    - CharRange*
    assertStmts:
    - condition: (mod_count < 2)
      pos:
        line_end: 2003
        line_start: 2003
        source_file: /src/gpac/src/quickjs/libunicode.c
    constantsTouched: []
    func_position:
      end: 2111
      start: 1920
    functionDepth: 2
    functionLinenumber: 1920
    functionLinenumberEnd: 2111
    functionName: unicode_sequence_prop1
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 1
    functionsReached:
    - printf
    - assert
    - countof
    - cb
    - unicode_sequence_prop1
    - unicode_prop1
    linkageType: ''
    returnType: int
    signature: "int unicode_sequence_prop1(int seq_prop_idx, UnicodeSequencePropCB
      *cb, void *opaque,\n                                  CharRange *cr)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unicode_find_name
      Src: /src/gpac/src/quickjs/libunicode.c:2119,1
    - Dst: unicode_sequence_prop1
      Src: /src/gpac/src/quickjs/libunicode.c:2122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - prop_name
    - cb
    - opaque
    - cr
    argTypes:
    - char*
    - UnicodeSequencePropCB*
    - void*
    - CharRange*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2123
      start: 2115
    functionDepth: 3
    functionLinenumber: 2115
    functionLinenumberEnd: 2123
    functionName: unicode_sequence_prop
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - unicode_find_name
    - unicode_sequence_prop1
    linkageType: ''
    returnType: int
    signature: "int unicode_sequence_prop(const char *prop_name, UnicodeSequencePropCB
      *cb, void *opaque,\n                          CharRange *cr)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - classid
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 197
    functionName: typed_array_size_log2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: typed_array_size_log2(classid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 239
    functionName: JS_VALUE_GET_OBJ
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JS_VALUE_GET_OBJ(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 240
    functionName: JS_VALUE_GET_STRING
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JS_VALUE_GET_STRING(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 241
    functionName: JS_VALUE_GET_STRING_ROPE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JS_VALUE_GET_STRING_ROPE(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - id
    - ','
    - size
    - ','
    - n_pop
    - ','
    - n_push
    - ','
    - f
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1072
      start: 1071
    functionDepth: 0
    functionLinenumber: 1071
    functionLinenumberEnd: 1072
    functionName: DEF
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEF(id, size, n_pop, n_push, f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - id
    - ','
    - size
    - ','
    - n_pop
    - ','
    - n_push
    - ','
    - f
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1084
      start: 1083
    functionDepth: 0
    functionLinenumber: 1083
    functionLinenumberEnd: 1084
    functionName: def
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: def(id, size, n_pop, n_push, f)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:1360,1
    - Dst: JS_RunGC
      Src: /src/gpac/src/quickjs/quickjs.c:1363,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - rt
    - size
    argTypes:
    - JSRuntime*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1367
      start: 1349
    functionDepth: 1
    functionLinenumber: 1349
    functionLinenumberEnd: 1367
    functionName: js_trigger_gc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_RunGC
    - printf
    linkageType: ''
    returnType: void
    signature: void js_trigger_gc(JSRuntime *rt, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1372
      start: 1369
    functionDepth: 0
    functionLinenumber: 1369
    functionLinenumberEnd: 1372
    functionName: js_malloc_usable_size_unknown
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t js_malloc_usable_size_unknown(const void *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSRuntime*::mf::js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:1376,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - size
    argTypes:
    - JSRuntime*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1377
      start: 1374
    functionDepth: 1
    functionLinenumber: 1374
    functionLinenumberEnd: 1377
    functionName: js_malloc_rt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JSRuntime*::mf::js_malloc
    linkageType: ''
    returnType: void
    signature: void *js_malloc_rt(JSRuntime *rt, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSRuntime*::mf::js_free
      Src: /src/gpac/src/quickjs/quickjs.c:1381,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - ptr
    argTypes:
    - JSRuntime*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1382
      start: 1379
    functionDepth: 1
    functionLinenumber: 1379
    functionLinenumberEnd: 1382
    functionName: js_free_rt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JSRuntime*::mf::js_free
    linkageType: ''
    returnType: void
    signature: void js_free_rt(JSRuntime *rt, void *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSRuntime*::mf::js_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:1386,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - rt
    - ptr
    - size
    argTypes:
    - JSRuntime*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1387
      start: 1384
    functionDepth: 1
    functionLinenumber: 1384
    functionLinenumberEnd: 1387
    functionName: js_realloc_rt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JSRuntime*::mf::js_realloc
    linkageType: ''
    returnType: void
    signature: void *js_realloc_rt(JSRuntime *rt, void *ptr, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSRuntime*::mf::js_malloc_usable_size
      Src: /src/gpac/src/quickjs/quickjs.c:1391,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - ptr
    argTypes:
    - JSRuntime*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1392
      start: 1389
    functionDepth: 1
    functionLinenumber: 1389
    functionLinenumberEnd: 1392
    functionName: js_malloc_usable_size_rt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JSRuntime*::mf::js_malloc_usable_size
    linkageType: ''
    returnType: size_t
    signature: size_t js_malloc_usable_size_rt(JSRuntime *rt, const void *ptr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:1397,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:1400,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - size
    argTypes:
    - JSRuntime*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1401
      start: 1394
    functionDepth: 2
    functionLinenumber: 1394
    functionLinenumberEnd: 1401
    functionName: js_mallocz_rt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memset
    - js_malloc_rt
    linkageType: ''
    returnType: void
    signature: void *js_mallocz_rt(JSRuntime *rt, size_t size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:1407,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:1408,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:1409,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - size
    argTypes:
    - JSContext*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1413
      start: 1404
    functionDepth: 2
    functionLinenumber: 1404
    functionLinenumberEnd: 1413
    functionName: js_malloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ThrowOutOfMemory
    - unlikely
    - js_malloc_rt
    linkageType: ''
    returnType: void
    signature: void *js_malloc(JSContext *ctx, size_t size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_mallocz_rt
      Src: /src/gpac/src/quickjs/quickjs.c:1419,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:1420,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:1421,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - size
    argTypes:
    - JSContext*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1425
      start: 1416
    functionDepth: 3
    functionLinenumber: 1416
    functionLinenumberEnd: 1425
    functionName: js_mallocz
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowOutOfMemory
    - js_mallocz_rt
    - unlikely
    linkageType: ''
    returnType: void
    signature: void *js_mallocz(JSContext *ctx, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:1429,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - ptr
    argTypes:
    - JSContext*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1430
      start: 1427
    functionDepth: 2
    functionLinenumber: 1427
    functionLinenumberEnd: 1430
    functionName: js_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - js_free_rt
    linkageType: ''
    returnType: void
    signature: void js_free(JSContext *ctx, void *ptr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_realloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:1436,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:1437,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:1438,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - ptr
    - size
    argTypes:
    - JSContext*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1442
      start: 1433
    functionDepth: 2
    functionLinenumber: 1433
    functionLinenumberEnd: 1442
    functionName: js_realloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_realloc_rt
    - JS_ThrowOutOfMemory
    - unlikely
    linkageType: ''
    returnType: void
    signature: void *js_realloc(JSContext *ctx, void *ptr, size_t size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_realloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:1448,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:1449,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:1450,1
    - Dst: js_malloc_usable_size_rt
      Src: /src/gpac/src/quickjs/quickjs.c:1454,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - ptr
    - size
    - pslack
    argTypes:
    - JSContext*
    - void*
    - size_t
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1458
      start: 1445
    functionDepth: 2
    functionLinenumber: 1445
    functionLinenumberEnd: 1458
    functionName: js_realloc2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_realloc_rt
    - JS_ThrowOutOfMemory
    - unlikely
    - js_malloc_usable_size_rt
    linkageType: ''
    returnType: void
    signature: void *js_realloc2(JSContext *ctx, void *ptr, size_t size, size_t *pslack)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc_usable_size_rt
      Src: /src/gpac/src/quickjs/quickjs.c:1462,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - ptr
    argTypes:
    - JSContext*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1463
      start: 1460
    functionDepth: 2
    functionLinenumber: 1460
    functionLinenumberEnd: 1463
    functionName: js_malloc_usable_size
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_malloc_usable_size_rt
    linkageType: ''
    returnType: size_t
    signature: size_t js_malloc_usable_size(JSContext *ctx, const void *ptr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:1469,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:1471,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - s
    - n
    argTypes:
    - JSContext*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1475
      start: 1466
    functionDepth: 3
    functionLinenumber: 1466
    functionLinenumberEnd: 1475
    functionName: js_strndup
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc
    - memcpy
    linkageType: ''
    returnType: char
    signature: char *js_strndup(JSContext *ctx, const char *s, size_t n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_strndup
      Src: /src/gpac/src/quickjs/quickjs.c:1479,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:1479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - str
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1480
      start: 1477
    functionDepth: 4
    functionLinenumber: 1477
    functionLinenumberEnd: 1480
    functionName: js_strdup
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - strlen
    - js_strndup
    linkageType: ''
    returnType: char
    signature: char *js_strdup(JSContext *ctx, const char *str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:1489,1
    - Dst: js_realloc2
      Src: /src/gpac/src/quickjs/quickjs.c:1490,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - ctx
    - parray
    - elem_size
    - psize
    - req_size
    argTypes:
    - JSContext*
    - void**
    - int
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1497
      start: 1482
    functionDepth: 3
    functionLinenumber: 1482
    functionLinenumberEnd: 1497
    functionName: js_realloc_array
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - max_int
    - js_realloc2
    linkageType: ''
    returnType: no_inline
    signature: "no_inline js_realloc_array(JSContext *ctx, void **parray,\n                                      int
      elem_size, int *psize, int req_size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:1503,1
    - Dst: js_realloc_array
      Src: /src/gpac/src/quickjs/quickjs.c:1504,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - ctx
    - parray
    - elem_size
    - psize
    - req_size
    argTypes:
    - JSContext*
    - void**
    - int
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1507
      start: 1500
    functionDepth: 4
    functionLinenumber: 1500
    functionLinenumberEnd: 1507
    functionName: js_resize_array
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_realloc_array
    - unlikely
    linkageType: ''
    returnType: int
    signature: "int js_resize_array(JSContext *ctx, void **parray, int elem_size,\n
      \                                 int *psize, int req_size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_init2
      Src: /src/gpac/src/quickjs/quickjs.c:1511,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - DynBuf*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1512
      start: 1509
    functionDepth: 1
    functionLinenumber: 1509
    functionLinenumberEnd: 1512
    functionName: js_dbuf_init
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_init2
    linkageType: ''
    returnType: void
    signature: void js_dbuf_init(JSContext *ctx, DynBuf *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSRuntime*::mf::js_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:1522,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - opaque
    - ptr
    - size
    argTypes:
    - void*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1524
      start: 1514
    functionDepth: 3
    functionLinenumber: 1514
    functionLinenumberEnd: 1524
    functionName: js_realloc_bytecode_rt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JSRuntime*::mf::js_realloc
    linkageType: ''
    returnType: void
    signature: void *js_realloc_bytecode_rt(void *opaque, void *ptr, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_init2
      Src: /src/gpac/src/quickjs/quickjs.c:1528,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - DynBuf*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1529
      start: 1526
    functionDepth: 1
    functionLinenumber: 1526
    functionLinenumberEnd: 1529
    functionName: js_dbuf_bytecode_init
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_init2
    linkageType: ''
    returnType: void
    signature: void js_dbuf_bytecode_init(JSContext *ctx, DynBuf *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1533
      start: 1531
    functionDepth: 0
    functionLinenumber: 1531
    functionLinenumberEnd: 1533
    functionName: is_digit
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int is_digit(int c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p
    - idx
    argTypes:
    - JSString*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1537
      start: 1535
    functionDepth: 0
    functionLinenumber: 1535
    functionLinenumberEnd: 1537
    functionName: string_get
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int string_get(const JSString *p, int idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:1603,1
    - Dst: JS_NewClass1
      Src: /src/gpac/src/quickjs/quickjs.c:1606,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - rt
    - tab
    - start
    - count
    argTypes:
    - JSRuntime*
    - JSClassShortDef*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1610
      start: 1595
    functionDepth: 1
    functionLinenumber: 1595
    functionLinenumberEnd: 1610
    functionName: init_class_range
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memset
    - JS_NewClass1
    linkageType: ''
    returnType: int
    signature: "int init_class_range(JSRuntime *rt, JSClassShortDef const *tab,\n
      \                           int start, int count)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1617
      start: 1614
    functionDepth: 0
    functionLinenumber: 1614
    functionLinenumberEnd: 1617
    functionName: js_get_stack_pointer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uintptr_t
    signature: uintptr_t js_get_stack_pointer(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - alloca_size
    argTypes:
    - JSRuntime*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1622
      start: 1619
    functionDepth: 0
    functionLinenumber: 1619
    functionLinenumberEnd: 1622
    functionName: js_check_stack_overflow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL js_check_stack_overflow(JSRuntime *rt, size_t alloca_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _AddressOfReturnAddress
      Src: /src/gpac/src/quickjs/quickjs.c:1628,1
    - Dst: __builtin_frame_address
      Src: /src/gpac/src/quickjs/quickjs.c:1630,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1632
      start: 1625
    functionDepth: 0
    functionLinenumber: 1625
    functionLinenumberEnd: 1632
    functionName: js_get_stack_pointer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - __builtin_frame_address
    - _AddressOfReturnAddress
    linkageType: ''
    returnType: uintptr_t
    signature: uintptr_t js_get_stack_pointer(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_get_stack_pointer
      Src: /src/gpac/src/quickjs/quickjs.c:1637,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:1638,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - rt
    - alloca_size
    argTypes:
    - JSRuntime*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1639
      start: 1634
    functionDepth: 1
    functionLinenumber: 1634
    functionLinenumberEnd: 1639
    functionName: js_check_stack_overflow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_get_stack_pointer
    - unlikely
    linkageType: ''
    returnType: BOOL
    signature: BOOL js_check_stack_overflow(JSRuntime *rt, size_t alloca_size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:1647,1
    - Dst: JSMallocFunctions*::js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:1651,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:1654,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:1663,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:1664,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:1665,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:1667,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:1670,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:1672,1
    - Dst: JS_InitAtoms
      Src: /src/gpac/src/quickjs/quickjs.c:1674,1
    - Dst: init_class_range
      Src: /src/gpac/src/quickjs/quickjs.c:1678,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:1679,1
    - Dst: init_shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:1689,1
    - Dst: JS_UpdateStackTop
      Src: /src/gpac/src/quickjs/quickjs.c:1693,1
    - Dst: JS_FreeRuntime
      Src: /src/gpac/src/quickjs/quickjs.c:1699,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 45
    argCount: 2
    argNames:
    - mf
    - opaque
    argTypes:
    - JSMallocFunctions*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1701
      start: 1642
    functionDepth: 3
    functionLinenumber: 1642
    functionLinenumberEnd: 1701
    functionName: JS_NewRuntime2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_InitAtoms
    - JS_UpdateStackTop
    - JS_FreeRuntime
    - countof
    - memset
    - init_shape_hash
    - init_class_range
    - init_list_head
    - JSMallocFunctions*::js_malloc
    linkageType: ''
    returnType: JSRuntime
    signature: JSRuntime *JS_NewRuntime2(const JSMallocFunctions *mf, void *opaque)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1706
      start: 1703
    functionDepth: 0
    functionLinenumber: 1703
    functionLinenumberEnd: 1706
    functionName: JS_GetRuntimeOpaque
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void *JS_GetRuntimeOpaque(JSRuntime *rt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - opaque
    argTypes:
    - JSRuntime*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1711
      start: 1708
    functionDepth: 0
    functionLinenumber: 1708
    functionLinenumberEnd: 1711
    functionName: JS_SetRuntimeOpaque
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void JS_SetRuntimeOpaque(JSRuntime *rt, void *opaque)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: malloc_size
      Src: /src/gpac/src/quickjs/quickjs.c:1717,1
    - Dst: _msize
      Src: /src/gpac/src/quickjs/quickjs.c:1719,1
    - Dst: malloc_usable_size
      Src: /src/gpac/src/quickjs/quickjs.c:1723,1
    - Dst: malloc_usable_size
      Src: /src/gpac/src/quickjs/quickjs.c:1726,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1728
      start: 1714
    functionDepth: 0
    functionLinenumber: 1714
    functionLinenumberEnd: 1728
    functionName: js_def_malloc_usable_size
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - malloc_usable_size
    - malloc_size
    - _msize
    linkageType: ''
    returnType: size_t
    signature: size_t js_def_malloc_usable_size(const void *ptr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:1735,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:1737,1
    - Dst: malloc
      Src: /src/gpac/src/quickjs/quickjs.c:1740,1
    - Dst: js_def_malloc_usable_size
      Src: /src/gpac/src/quickjs/quickjs.c:1745,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - size
    argTypes:
    - JSMallocState*
    - size_t
    assertStmts:
    - condition: (size != 0)
      pos:
        line_end: 1734
        line_start: 1734
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 1747
      start: 1730
    functionDepth: 1
    functionLinenumber: 1730
    functionLinenumberEnd: 1747
    functionName: js_def_malloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_def_malloc_usable_size
    - assert
    - unlikely
    - malloc
    linkageType: ''
    returnType: void
    signature: void *js_def_malloc(JSMallocState *s, size_t size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_def_malloc_usable_size
      Src: /src/gpac/src/quickjs/quickjs.c:1755,1
    - Dst: free
      Src: /src/gpac/src/quickjs/quickjs.c:1756,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - ptr
    argTypes:
    - JSMallocState*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1757
      start: 1749
    functionDepth: 1
    functionLinenumber: 1749
    functionLinenumberEnd: 1757
    functionName: js_def_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_def_malloc_usable_size
    - free
    linkageType: ''
    returnType: void
    signature: void js_def_free(JSMallocState *s, void *ptr)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: js_def_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:1766,1
    - Dst: js_def_malloc_usable_size
      Src: /src/gpac/src/quickjs/quickjs.c:1768,1
    - Dst: free
      Src: /src/gpac/src/quickjs/quickjs.c:1772,1
    - Dst: realloc
      Src: /src/gpac/src/quickjs/quickjs.c:1778,1
    - Dst: js_def_malloc_usable_size
      Src: /src/gpac/src/quickjs/quickjs.c:1782,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 3
    argNames:
    - s
    - ptr
    - size
    argTypes:
    - JSMallocState*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1784
      start: 1759
    functionDepth: 2
    functionLinenumber: 1759
    functionLinenumberEnd: 1784
    functionName: js_def_realloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_def_malloc_usable_size
    - free
    - js_def_malloc
    - realloc
    linkageType: ''
    returnType: void
    signature: void *js_def_realloc(JSMallocState *s, void *ptr, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewRuntime2
      Src: /src/gpac/src/quickjs/quickjs.c:1795,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1796
      start: 1793
    functionDepth: 4
    functionLinenumber: 1793
    functionLinenumberEnd: 1796
    functionName: JS_NewRuntime
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_NewRuntime2
    linkageType: ''
    returnType: JSRuntime
    signature: JSRuntime *JS_NewRuntime(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - limit
    argTypes:
    - JSRuntime*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1801
      start: 1798
    functionDepth: 0
    functionLinenumber: 1798
    functionLinenumberEnd: 1801
    functionName: JS_SetMemoryLimit
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void JS_SetMemoryLimit(JSRuntime *rt, size_t limit)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - gc_threshold
    argTypes:
    - JSRuntime*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1807
      start: 1804
    functionDepth: 0
    functionLinenumber: 1804
    functionLinenumberEnd: 1807
    functionName: JS_SetGCThreshold
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void JS_SetGCThreshold(JSRuntime *rt, size_t gc_threshold)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1810
      start: 1809
    functionDepth: 0
    functionLinenumber: 1809
    functionLinenumberEnd: 1810
    functionName: malloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1025
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: malloc(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1811
      start: 1810
    functionDepth: 0
    functionLinenumber: 1810
    functionLinenumberEnd: 1811
    functionName: free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2788
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: free(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - p
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1812
      start: 1811
    functionDepth: 0
    functionLinenumber: 1811
    functionLinenumberEnd: 1812
    functionName: realloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 358
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: realloc(p,s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - rt
    - cb
    - opaque
    argTypes:
    - JSRuntime*
    - JSInterruptHandler*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1817
      start: 1813
    functionDepth: 0
    functionLinenumber: 1813
    functionLinenumberEnd: 1817
    functionName: JS_SetInterruptHandler
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void JS_SetInterruptHandler(JSRuntime *rt, JSInterruptHandler *cb,
      void *opaque)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - can_block
    argTypes:
    - JSRuntime*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1822
      start: 1819
    functionDepth: 0
    functionLinenumber: 1819
    functionLinenumberEnd: 1822
    functionName: JS_SetCanBlock
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void JS_SetCanBlock(JSRuntime *rt, BOOL can_block)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - sf
    argTypes:
    - JSRuntime*
    - JSSharedArrayBufferFunctions*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1828
      start: 1824
    functionDepth: 0
    functionLinenumber: 1824
    functionLinenumberEnd: 1828
    functionName: JS_SetSharedArrayBufferFunctions
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void JS_SetSharedArrayBufferFunctions(JSRuntime *rt,\n                                      const
      JSSharedArrayBufferFunctions *sf)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - flags
    argTypes:
    - JSRuntime*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1833
      start: 1830
    functionDepth: 0
    functionLinenumber: 1830
    functionLinenumberEnd: 1833
    functionName: JS_SetStripInfo
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void JS_SetStripInfo(JSRuntime *rt, int flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1838
      start: 1835
    functionDepth: 0
    functionLinenumber: 1835
    functionLinenumberEnd: 1838
    functionName: JS_GetStripInfo
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int JS_GetStripInfo(JSRuntime *rt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:1848,1
    - Dst: JS_DupContext
      Src: /src/gpac/src/quickjs/quickjs.c:1851,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:1855,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:1857,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 4
    argNames:
    - ctx
    - job_func
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSJobFunc*
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1859
      start: 1841
    functionDepth: 3
    functionLinenumber: 1841
    functionLinenumberEnd: 1859
    functionName: JS_EnqueueJob
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc
    - JS_DupContext
    - list_add_tail
    - JS_DupValue
    linkageType: ''
    returnType: int
    signature: "int JS_EnqueueJob(JSContext *ctx, JSJobFunc *job_func,\n                  int
      argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: list_empty
      Src: /src/gpac/src/quickjs/quickjs.c:1863,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1864
      start: 1861
    functionDepth: 1
    functionLinenumber: 1861
    functionLinenumberEnd: 1864
    functionName: JS_IsJobPending
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_empty
    linkageType: ''
    returnType: BOOL
    signature: BOOL JS_IsJobPending(JSRuntime *rt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: list_empty
      Src: /src/gpac/src/quickjs/quickjs.c:1878,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:1885,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:1886,1
    - Dst: JSJobEntry*::job_func
      Src: /src/gpac/src/quickjs/quickjs.c:1888,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:1890,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:1891,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:1895,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:1896,1
    - Dst: JS_FreeContext
      Src: /src/gpac/src/quickjs/quickjs.c:1903,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 2
    argNames:
    - rt
    - pctx
    argTypes:
    - JSRuntime*
    - JSContext**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1905
      start: 1871
    functionDepth: 3
    functionLinenumber: 1871
    functionLinenumberEnd: 1905
    functionName: JS_ExecutePendingJob
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JSJobEntry*::job_func
    - list_empty
    - JS_FreeContext
    - JS_IsException
    - JS_FreeValue
    - list_entry
    - list_del
    - js_free
    linkageType: ''
    returnType: int
    signature: int JS_ExecutePendingJob(JSRuntime *rt, JSContext **pctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - JSAtomStruct*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1910
      start: 1907
    functionDepth: 0
    functionLinenumber: 1907
    functionLinenumberEnd: 1910
    functionName: atom_get_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t atom_get_free(const JSAtomStruct *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - JSAtomStruct*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1915
      start: 1912
    functionDepth: 0
    functionLinenumber: 1912
    functionLinenumberEnd: 1915
    functionName: atom_is_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL atom_is_free(const JSAtomStruct *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1920
      start: 1917
    functionDepth: 0
    functionLinenumber: 1917
    functionLinenumberEnd: 1920
    functionName: atom_set_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSAtomStruct
    signature: JSAtomStruct *atom_set_free(uint32_t v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:1926,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:1927,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:1936,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - rt
    - max_len
    - is_wide_char
    argTypes:
    - JSRuntime*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1939
      start: 1923
    functionDepth: 2
    functionLinenumber: 1923
    functionLinenumberEnd: 1939
    functionName: js_alloc_string_rt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_add_tail
    - unlikely
    - js_malloc_rt
    linkageType: ''
    returnType: JSString
    signature: JSString *js_alloc_string_rt(JSRuntime *rt, int max_len, int is_wide_char)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_alloc_string_rt
      Src: /src/gpac/src/quickjs/quickjs.c:1944,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:1945,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:1946,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - max_len
    - is_wide_char
    argTypes:
    - JSContext*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1950
      start: 1941
    functionDepth: 3
    functionLinenumber: 1941
    functionLinenumberEnd: 1950
    functionName: js_alloc_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowOutOfMemory
    - unlikely
    - js_alloc_string_rt
    linkageType: ''
    returnType: JSString
    signature: JSString *js_alloc_string(JSContext *ctx, int max_len, int is_wide_char)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_FreeAtomStruct
      Src: /src/gpac/src/quickjs/quickjs.c:1957,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:1960,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:1962,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - rt
    - str
    argTypes:
    - JSRuntime*
    - JSString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1965
      start: 1953
    functionDepth: 2
    functionLinenumber: 1953
    functionLinenumberEnd: 1965
    functionName: js_free_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - JS_FreeAtomStruct
    - list_del
    linkageType: ''
    returnType: void
    signature: void js_free_string(JSRuntime *rt, JSString *str)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - rt
    - s
    argTypes:
    - JSRuntime*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1971
      start: 1967
    functionDepth: 0
    functionLinenumber: 1967
    functionLinenumberEnd: 1971
    functionName: JS_SetRuntimeInfo
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void JS_SetRuntimeInfo(JSRuntime *rt, const char *s)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:1978,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:1980,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:1981,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:1983,1
    - Dst: JS_FreeContext
      Src: /src/gpac/src/quickjs/quickjs.c:1984,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:1985,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:1987,1
    - Dst: JS_RunGCInternal
      Src: /src/gpac/src/quickjs/quickjs.c:1991,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:2002,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:2003,1
    - Dst: gc_decref
      Src: /src/gpac/src/quickjs/quickjs.c:2006,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:2009,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:2010,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2013,1
    - Dst: JS_DumpObjectHeader
      Src: /src/gpac/src/quickjs/quickjs.c:2014,1
    - Dst: JS_DumpGCObject
      Src: /src/gpac/src/quickjs/quickjs.c:2017,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:2022,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:2023,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2029,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:2032,1
    - Dst: list_empty
      Src: /src/gpac/src/quickjs/quickjs.c:2032,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:2033,1
    - Dst: list_empty
      Src: /src/gpac/src/quickjs/quickjs.c:2033,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:2039,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2042,1
    - Dst: atom_is_free
      Src: /src/gpac/src/quickjs/quickjs.c:2051,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2056,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2058,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2064,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2066,1
    - Dst: JS_DumpString
      Src: /src/gpac/src/quickjs/quickjs.c:2070,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2073,1
    - Dst: JS_DumpString
      Src: /src/gpac/src/quickjs/quickjs.c:2074,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2075,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2079,1
    - Dst: JS_DumpString
      Src: /src/gpac/src/quickjs/quickjs.c:2080,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2081,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2083,1
    - Dst: JS_DumpString
      Src: /src/gpac/src/quickjs/quickjs.c:2084,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2085,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2090,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2092,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2098,1
    - Dst: atom_is_free
      Src: /src/gpac/src/quickjs/quickjs.c:2105,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:2107,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2109,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2112,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2113,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2114,1
    - Dst: list_empty
      Src: /src/gpac/src/quickjs/quickjs.c:2116,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2118,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2120,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:2124,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:2125,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2127,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2129,1
    - Dst: JS_DumpString
      Src: /src/gpac/src/quickjs/quickjs.c:2131,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2133,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2135,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:2137,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2138,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2141,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2147,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2148,1
    - Dst: JSRuntime*::mf::js_free
      Src: /src/gpac/src/quickjs/quickjs.c:2157,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 134
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts:
    - condition: (list_empty(&rt->weakref_list))
      pos:
        line_end: 2032
        line_start: 2032
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (list_empty(&rt->gc_obj_list))
      pos:
        line_end: 2031
        line_start: 2031
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 2159
      start: 1973
    functionDepth: 3
    functionLinenumber: 1973
    functionLinenumberEnd: 2159
    functionName: JS_FreeRuntime
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - printf
    - JS_DumpObjectHeader
    - JS_FreeAtomRT
    - JS_FreeContext
    - JS_FreeValueRT
    - atom_is_free
    - list_entry
    - list_for_each
    - init_list_head
    - list_empty
    - JS_RunGCInternal
    - gc_decref
    - list_for_each_safe
    - assert
    - JS_DumpGCObject
    - JSRuntime*::mf::js_free
    - list_del
    - JS_DumpString
    - js_free_rt
    linkageType: ''
    returnType: void
    signature: void JS_FreeRuntime(JSRuntime *rt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_mallocz_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2166,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:2170,1
    - Dst: js_malloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2172,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2175,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:2179,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:2186,1
    - Dst: JS_AddIntrinsicBasicObjects
      Src: /src/gpac/src/quickjs/quickjs.c:2188,1
    - Dst: JS_FreeContext
      Src: /src/gpac/src/quickjs/quickjs.c:2189,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2193
      start: 2161
    functionDepth: 3
    functionLinenumber: 2161
    functionLinenumberEnd: 2193
    functionName: JS_NewContextRaw
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - add_gc_object
    - JS_FreeContext
    - list_add_tail
    - JS_AddIntrinsicBasicObjects
    - js_malloc_rt
    - js_free_rt
    - js_mallocz_rt
    - init_list_head
    linkageType: ''
    returnType: JSContext
    signature: JSContext *JS_NewContextRaw(JSRuntime *rt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewContextRaw
      Src: /src/gpac/src/quickjs/quickjs.c:2199,1
    - Dst: JS_AddIntrinsicBaseObjects
      Src: /src/gpac/src/quickjs/quickjs.c:2203,1
    - Dst: JS_AddIntrinsicDate
      Src: /src/gpac/src/quickjs/quickjs.c:2204,1
    - Dst: JS_AddIntrinsicEval
      Src: /src/gpac/src/quickjs/quickjs.c:2205,1
    - Dst: JS_AddIntrinsicStringNormalize
      Src: /src/gpac/src/quickjs/quickjs.c:2206,1
    - Dst: JS_AddIntrinsicRegExp
      Src: /src/gpac/src/quickjs/quickjs.c:2207,1
    - Dst: JS_AddIntrinsicJSON
      Src: /src/gpac/src/quickjs/quickjs.c:2208,1
    - Dst: JS_AddIntrinsicProxy
      Src: /src/gpac/src/quickjs/quickjs.c:2209,1
    - Dst: JS_AddIntrinsicMapSet
      Src: /src/gpac/src/quickjs/quickjs.c:2210,1
    - Dst: JS_AddIntrinsicTypedArrays
      Src: /src/gpac/src/quickjs/quickjs.c:2211,1
    - Dst: JS_AddIntrinsicPromise
      Src: /src/gpac/src/quickjs/quickjs.c:2212,1
    - Dst: JS_AddIntrinsicWeakRef
      Src: /src/gpac/src/quickjs/quickjs.c:2213,1
    - Dst: JS_FreeContext
      Src: /src/gpac/src/quickjs/quickjs.c:2214,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 9
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2218
      start: 2195
    functionDepth: 4
    functionLinenumber: 2195
    functionLinenumberEnd: 2218
    functionName: JS_NewContext
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - JS_AddIntrinsicProxy
    - JS_AddIntrinsicJSON
    - JS_AddIntrinsicEval
    - JS_FreeContext
    - JS_AddIntrinsicTypedArrays
    - JS_AddIntrinsicWeakRef
    - JS_NewContextRaw
    - JS_AddIntrinsicStringNormalize
    - JS_AddIntrinsicRegExp
    - JS_AddIntrinsicBaseObjects
    - JS_AddIntrinsicDate
    - JS_AddIntrinsicPromise
    - JS_AddIntrinsicMapSet
    linkageType: ''
    returnType: JSContext
    signature: JSContext *JS_NewContext(JSRuntime *rt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2223
      start: 2220
    functionDepth: 0
    functionLinenumber: 2220
    functionLinenumberEnd: 2223
    functionName: JS_GetContextOpaque
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 18
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void *JS_GetContextOpaque(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - opaque
    argTypes:
    - JSContext*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2228
      start: 2225
    functionDepth: 0
    functionLinenumber: 2225
    functionLinenumberEnd: 2228
    functionName: JS_SetContextOpaque
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void JS_SetContextOpaque(JSContext *ctx, void *opaque)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - pval
    - new_val
    argTypes:
    - JSContext*
    - JSValue*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2238
      start: 2232
    functionDepth: 1
    functionLinenumber: 2232
    functionLinenumberEnd: 2238
    functionName: set_value
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    linkageType: ''
    returnType: void
    signature: void set_value(JSContext *ctx, JSValue *pval, JSValue new_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:2244,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:2246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ctx
    - class_id
    - obj
    argTypes:
    - JSContext*
    - JSClassID
    - JSValue
    assertStmts:
    - condition: (class_id < rt->class_count)
      pos:
        line_end: 2243
        line_start: 2243
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 2247
      start: 2240
    functionDepth: 2
    functionLinenumber: 2240
    functionLinenumberEnd: 2247
    functionName: JS_SetClassProto
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 9
    functionsReached:
    - assert
    - set_value
    linkageType: ''
    returnType: void
    signature: void JS_SetClassProto(JSContext *ctx, JSClassID class_id, JSValue obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:2253,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:2255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - class_id
    argTypes:
    - JSContext*
    - JSClassID
    assertStmts:
    - condition: (class_id < rt->class_count)
      pos:
        line_end: 2252
        line_start: 2252
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 2256
      start: 2249
    functionDepth: 1
    functionLinenumber: 2249
    functionLinenumberEnd: 2256
    functionName: JS_GetClassProto
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - assert
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_GetClassProto(JSContext *ctx, JSClassID class_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:2267,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:2268,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:2274,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2277,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:2277,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - flag
    argTypes:
    - JSContext*
    - JSFreeModuleEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2280
      start: 2264
    functionDepth: 1
    functionLinenumber: 2264
    functionLinenumberEnd: 2280
    functionName: js_free_modules
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - JS_FreeValue
    - list_for_each_safe
    - list_entry
    - list_del
    linkageType: ''
    returnType: void
    signature: void js_free_modules(JSContext *ctx, JSFreeModuleEnum flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2286
      start: 2282
    functionDepth: 0
    functionLinenumber: 2282
    functionLinenumberEnd: 2286
    functionName: JS_DupContext
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: JSContext
    signature: JSContext *JS_DupContext(JSContext *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:2295,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:2296,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2297,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:2297,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2300,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2301,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2303,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2304,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2306,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2308,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2311,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2313,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2314,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2315,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2316,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2317,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2318,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2319,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:2322,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 3
    argNames:
    - rt
    - ctx
    - mark_func
    argTypes:
    - JSRuntime*
    - JSContext*
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2323
      start: 2289
    functionDepth: 1
    functionLinenumber: 2289
    functionLinenumberEnd: 2323
    functionName: JS_MarkContext
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - mark_func
    - list_entry
    - list_for_each
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: "void JS_MarkContext(JSRuntime *rt, JSContext *ctx,\n                           JS_MarkFunc
      *mark_func)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:2332,1
    - Dst: JS_DumpAtoms
      Src: /src/gpac/src/quickjs/quickjs.c:2335,1
    - Dst: JS_DumpShapes
      Src: /src/gpac/src/quickjs/quickjs.c:2338,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2344,1
    - Dst: JS_DumpObjectHeader
      Src: /src/gpac/src/quickjs/quickjs.c:2345,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:2346,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:2347,1
    - Dst: JS_DumpGCObject
      Src: /src/gpac/src/quickjs/quickjs.c:2348,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2350,1
    - Dst: JS_ComputeMemoryUsage
      Src: /src/gpac/src/quickjs/quickjs.c:2356,1
    - Dst: JS_DumpMemoryUsage
      Src: /src/gpac/src/quickjs/quickjs.c:2357,1
    - Dst: js_free_modules
      Src: /src/gpac/src/quickjs/quickjs.c:2361,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2363,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2364,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2366,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2367,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2369,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2371,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2374,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2376,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2377,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2378,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2379,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2380,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2381,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2382,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2383,1
    - Dst: js_free_shape_null
      Src: /src/gpac/src/quickjs/quickjs.c:2385,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:2387,1
    - Dst: remove_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:2388,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2389,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 41
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts:
    - condition: (ctx->header.ref_count == 0)
      pos:
        line_end: 2331
        line_start: 2331
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 2390
      start: 2325
    functionDepth: 2
    functionLinenumber: 2325
    functionLinenumberEnd: 2390
    functionName: JS_FreeContext
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 6
    functionsReached:
    - remove_gc_object
    - js_free_shape_null
    - printf
    - JS_DumpObjectHeader
    - JS_DumpShapes
    - JS_DumpMemoryUsage
    - JS_FreeValue
    - assert
    - JS_ComputeMemoryUsage
    - JS_DumpGCObject
    - js_free_rt
    - list_entry
    - list_for_each
    - JS_DumpAtoms
    - js_free_modules
    - list_del
    linkageType: ''
    returnType: void
    signature: void JS_FreeContext(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2395
      start: 2392
    functionDepth: 0
    functionLinenumber: 2392
    functionLinenumberEnd: 2395
    functionName: JS_GetRuntime
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 21
    functionsReached: []
    linkageType: ''
    returnType: JSRuntime
    signature: JSRuntime *JS_GetRuntime(JSContext *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2404
      start: 2397
    functionDepth: 0
    functionLinenumber: 2397
    functionLinenumberEnd: 2404
    functionName: update_stack_limit
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void update_stack_limit(JSRuntime *rt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update_stack_limit
      Src: /src/gpac/src/quickjs/quickjs.c:2409,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - rt
    - stack_size
    argTypes:
    - JSRuntime*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2410
      start: 2406
    functionDepth: 1
    functionLinenumber: 2406
    functionLinenumberEnd: 2410
    functionName: JS_SetMaxStackSize
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - update_stack_limit
    linkageType: ''
    returnType: void
    signature: void JS_SetMaxStackSize(JSRuntime *rt, size_t stack_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_get_stack_pointer
      Src: /src/gpac/src/quickjs/quickjs.c:2414,1
    - Dst: update_stack_limit
      Src: /src/gpac/src/quickjs/quickjs.c:2415,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2416
      start: 2412
    functionDepth: 1
    functionLinenumber: 2412
    functionLinenumberEnd: 2416
    functionName: JS_UpdateStackTop
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_get_stack_pointer
    - update_stack_limit
    linkageType: ''
    returnType: void
    signature: void JS_UpdateStackTop(JSRuntime *rt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2422
      start: 2418
    functionDepth: 0
    functionLinenumber: 2418
    functionLinenumberEnd: 2422
    functionName: is_strict_mode
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL is_strict_mode(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2432
      start: 2431
    functionDepth: 0
    functionLinenumber: 2431
    functionLinenumberEnd: 2432
    functionName: JS_ATOM_COUNT_RESIZE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JS_ATOM_COUNT_RESIZE(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2440
      start: 2433
    functionDepth: 0
    functionLinenumber: 2433
    functionLinenumberEnd: 2440
    functionName: __JS_AtomIsConst
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL __JS_AtomIsConst(JSAtom v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2445
      start: 2442
    functionDepth: 0
    functionLinenumber: 2442
    functionLinenumberEnd: 2445
    functionName: __JS_AtomIsTaggedInt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL __JS_AtomIsTaggedInt(JSAtom v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2450
      start: 2447
    functionDepth: 0
    functionLinenumber: 2447
    functionLinenumberEnd: 2450
    functionName: __JS_AtomFromUInt32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom __JS_AtomFromUInt32(uint32_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - atom
    argTypes:
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2455
      start: 2452
    functionDepth: 0
    functionLinenumber: 2452
    functionLinenumberEnd: 2455
    functionName: __JS_AtomToUInt32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t __JS_AtomToUInt32(JSAtom atom)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2460
      start: 2457
    functionDepth: 0
    functionLinenumber: 2457
    functionLinenumberEnd: 2460
    functionName: is_num
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int is_num(int c)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:2472,1
    - Dst: is_num
      Src: /src/gpac/src/quickjs/quickjs.c:2473,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:2481,1
    - Dst: is_num
      Src: /src/gpac/src/quickjs/quickjs.c:2482,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 2
    argNames:
    - pval
    - p
    argTypes:
    - uint32_t*
    - JSString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2495
      start: 2463
    functionDepth: 1
    functionLinenumber: 2463
    functionLinenumberEnd: 2495
    functionName: is_num_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - is_num
    - string_get
    linkageType: ''
    returnType: BOOL
    signature: BOOL is_num_string(uint32_t *pval, const JSString *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - str
    - len
    - h
    argTypes:
    - uint8_t*
    - size_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2505
      start: 2498
    functionDepth: 0
    functionLinenumber: 2498
    functionLinenumberEnd: 2505
    functionName: hash_string8
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t hash_string8(const uint8_t *str, size_t len, uint32_t h)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - str
    - len
    - h
    argTypes:
    - uint16_t*
    - size_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2515
      start: 2507
    functionDepth: 0
    functionLinenumber: 2507
    functionLinenumberEnd: 2515
    functionName: hash_string16
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint32_t
    signature: "uint32_t hash_string16(const uint16_t *str,\n                                     size_t
      len, uint32_t h)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: hash_string16
      Src: /src/gpac/src/quickjs/quickjs.c:2520,1
    - Dst: hash_string8
      Src: /src/gpac/src/quickjs/quickjs.c:2522,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - str
    - h
    argTypes:
    - JSString*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2524
      start: 2517
    functionDepth: 1
    functionLinenumber: 2517
    functionLinenumberEnd: 2524
    functionName: hash_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - hash_string16
    - hash_string8
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t hash_string(const JSString *str, uint32_t h)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:2528,1
    - Dst: hash_string
      Src: /src/gpac/src/quickjs/quickjs.c:2529,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:2529,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:2531,1
    - Dst: hash_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:2532,1
    - Dst: hash_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:2533,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - val
    - h
    argTypes:
    - JSValueConst
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2535
      start: 2526
    functionDepth: 2
    functionLinenumber: 2526
    functionLinenumberEnd: 2535
    functionName: hash_string_rope
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - hash_string_rope
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_STRING
    - hash_string
    - JS_VALUE_GET_STRING_ROPE
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t hash_string_rope(JSValueConst val, uint32_t h)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fputc
      Src: /src/gpac/src/quickjs/quickjs.c:2540,1
    - Dst: fputc
      Src: /src/gpac/src/quickjs/quickjs.c:2541,1
    - Dst: fputc
      Src: /src/gpac/src/quickjs/quickjs.c:2543,1
    - Dst: fputc
      Src: /src/gpac/src/quickjs/quickjs.c:2545,1
    - Dst: fputc
      Src: /src/gpac/src/quickjs/quickjs.c:2546,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:2548,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 3
    argNames:
    - fo
    - c
    - sep
    argTypes:
    - FILE*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2550
      start: 2537
    functionDepth: 0
    functionLinenumber: 2537
    functionLinenumberEnd: 2550
    functionName: JS_DumpChar
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - fputc
    - fprintf
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused JS_DumpChar(FILE *fo, int c, int sep)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2557,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2560,1
    - Dst: putchar
      Src: /src/gpac/src/quickjs/quickjs.c:2562,1
    - Dst: JS_DumpChar
      Src: /src/gpac/src/quickjs/quickjs.c:2564,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:2564,1
    - Dst: putchar
      Src: /src/gpac/src/quickjs/quickjs.c:2566,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - rt
    - p
    argTypes:
    - JSRuntime*
    - JSString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2567
      start: 2552
    functionDepth: 1
    functionLinenumber: 2552
    functionLinenumberEnd: 2567
    functionName: JS_DumpString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - string_get
    - printf
    - JS_DumpChar
    - putchar
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused JS_DumpString(JSRuntime *rt, const JSString *p)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2574,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2576,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2580,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2583,1
    - Dst: JS_DumpString
      Src: /src/gpac/src/quickjs/quickjs.c:2584,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2587,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2590,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2591,1
    - Dst: atom_is_free
      Src: /src/gpac/src/quickjs/quickjs.c:2594,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2595,1
    - Dst: JS_DumpString
      Src: /src/gpac/src/quickjs/quickjs.c:2597,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2598,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2601,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2602
      start: 2569
    functionDepth: 2
    functionLinenumber: 2569
    functionLinenumberEnd: 2602
    functionName: JS_DumpAtoms
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_DumpString
    - printf
    - atom_is_free
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused JS_DumpAtoms(JSRuntime *rt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:2609,1
    - Dst: js_mallocz_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2611,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2626,1
    - Dst: JS_ATOM_COUNT_RESIZE
      Src: /src/gpac/src/quickjs/quickjs.c:2629,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 2
    argNames:
    - rt
    - new_hash_size
    argTypes:
    - JSRuntime*
    - int
    assertStmts:
    - condition: ((new_hash_size & (new_hash_size - 1)) == 0)
      pos:
        line_end: 2608
        line_start: 2608
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 2632
      start: 2604
    functionDepth: 3
    functionLinenumber: 2604
    functionLinenumberEnd: 2632
    functionName: JS_ResizeAtomHash
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - js_mallocz_rt
    - JS_ATOM_COUNT_RESIZE
    - assert
    linkageType: ''
    returnType: int
    signature: int JS_ResizeAtomHash(JSRuntime *rt, int new_hash_size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_ResizeAtomHash
      Src: /src/gpac/src/quickjs/quickjs.c:2644,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:2655,1
    - Dst: __JS_NewAtomInit
      Src: /src/gpac/src/quickjs/quickjs.c:2656,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2661
      start: 2634
    functionDepth: 4
    functionLinenumber: 2634
    functionLinenumberEnd: 2661
    functionName: JS_InitAtoms
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - __JS_NewAtomInit
    - strlen
    - JS_ResizeAtomHash
    linkageType: ''
    returnType: int
    signature: int JS_InitAtoms(JSRuntime *rt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomIsConst
      Src: /src/gpac/src/quickjs/quickjs.c:2667,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - rt
    - v
    argTypes:
    - JSRuntime*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2672
      start: 2663
    functionDepth: 1
    functionLinenumber: 2663
    functionLinenumberEnd: 2672
    functionName: JS_DupAtomRT
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - __JS_AtomIsConst
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom JS_DupAtomRT(JSRuntime *rt, JSAtom v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomIsConst
      Src: /src/gpac/src/quickjs/quickjs.c:2679,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - v
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2685
      start: 2674
    functionDepth: 1
    functionLinenumber: 2674
    functionLinenumberEnd: 2685
    functionName: JS_DupAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - __JS_AtomIsConst
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom JS_DupAtom(JSContext *ctx, JSAtom v)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:2693,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:2707,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - ctx
    - v
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2709
      start: 2687
    functionDepth: 1
    functionLinenumber: 2687
    functionLinenumberEnd: 2709
    functionName: JS_AtomGetKind
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - __JS_AtomIsTaggedInt
    - abort
    linkageType: ''
    returnType: JSAtomKindEnum
    signature: JSAtomKindEnum JS_AtomGetKind(JSContext *ctx, JSAtom v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_AtomGetKind
      Src: /src/gpac/src/quickjs/quickjs.c:2713,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - v
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2714
      start: 2711
    functionDepth: 2
    functionLinenumber: 2711
    functionLinenumberEnd: 2714
    functionName: JS_AtomIsString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AtomGetKind
    linkageType: ''
    returnType: BOOL
    signature: BOOL JS_AtomIsString(JSContext *ctx, JSAtom v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:2725,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - rt
    - p
    argTypes:
    - JSRuntime*
    - JSAtomStruct*
    assertStmts:
    - condition: (i != 0)
      pos:
        line_end: 2724
        line_start: 2724
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 2731
      start: 2716
    functionDepth: 0
    functionLinenumber: 2716
    functionLinenumberEnd: 2731
    functionName: js_get_atom_index
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - assert
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom js_get_atom_index(JSRuntime *rt, JSAtomStruct *p)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2742,1
    - Dst: JS_DumpString
      Src: /src/gpac/src/quickjs/quickjs.c:2742,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2742,1
    - Dst: js_get_atom_index
      Src: /src/gpac/src/quickjs/quickjs.c:2748,1
    - Dst: __JS_AtomIsConst
      Src: /src/gpac/src/quickjs/quickjs.c:2750,1
    - Dst: hash_string
      Src: /src/gpac/src/quickjs/quickjs.c:2756,1
    - Dst: js_string_memcmp
      Src: /src/gpac/src/quickjs/quickjs.c:2765,1
    - Dst: __JS_AtomIsConst
      Src: /src/gpac/src/quickjs/quickjs.c:2766,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:2791,1
    - Dst: js_realloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2795,1
    - Dst: js_mallocz_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2802,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2804,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:2810,1
    - Dst: atom_set_free
      Src: /src/gpac/src/quickjs/quickjs.c:2825,1
    - Dst: js_malloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2834,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:2837,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:2843,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:2845,1
    - Dst: js_free_string
      Src: /src/gpac/src/quickjs/quickjs.c:2847,1
    - Dst: js_malloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2850,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:2857,1
    - Dst: atom_get_free
      Src: /src/gpac/src/quickjs/quickjs.c:2863,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:2875,1
    - Dst: JS_ResizeAtomHash
      Src: /src/gpac/src/quickjs/quickjs.c:2876,1
    - Dst: js_free_string
      Src: /src/gpac/src/quickjs/quickjs.c:2886,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 116
    argCount: 3
    argNames:
    - rt
    - str
    - atom_type
    argTypes:
    - JSRuntime*
    - JSString*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2888
      start: 2735
    functionDepth: 4
    functionLinenumber: 2735
    functionLinenumberEnd: 2888
    functionName: __JS_NewAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - atom_get_free
    - printf
    - js_get_atom_index
    - atom_set_free
    - __JS_AtomIsConst
    - JS_DumpString
    - memcpy
    - list_add_tail
    - unlikely
    - JS_ResizeAtomHash
    - hash_string
    - js_malloc_rt
    - js_realloc_rt
    - js_free_rt
    - js_free_string
    - js_string_memcmp
    - max_int
    - js_mallocz_rt
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom __JS_NewAtom(JSRuntime *rt, JSString *str, int atom_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_alloc_string_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2895,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:2898,1
    - Dst: __JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:2900,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - rt
    - str
    - len
    - atom_type
    argTypes:
    - JSRuntime*
    - char*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2901
      start: 2891
    functionDepth: 5
    functionLinenumber: 2891
    functionLinenumberEnd: 2901
    functionName: __JS_NewAtomInit
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - memcpy
    - js_alloc_string_rt
    - __JS_NewAtom
    linkageType: ''
    returnType: JSAtom
    signature: "JSAtom __JS_NewAtomInit(JSRuntime *rt, const char *str, int len,\n
      \                              int atom_type)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: hash_string8
      Src: /src/gpac/src/quickjs/quickjs.c:2910,1
    - Dst: memcmp
      Src: /src/gpac/src/quickjs/quickjs.c:2920,1
    - Dst: __JS_AtomIsConst
      Src: /src/gpac/src/quickjs/quickjs.c:2921,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 4
    argNames:
    - rt
    - str
    - len
    - atom_type
    argTypes:
    - JSRuntime*
    - char*
    - size_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2928
      start: 2904
    functionDepth: 1
    functionLinenumber: 2904
    functionLinenumberEnd: 2928
    functionName: __JS_FindAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - hash_string8
    - memcmp
    - __JS_AtomIsConst
    linkageType: ''
    returnType: JSAtom
    signature: "JSAtom __JS_FindAtom(JSRuntime *rt, const char *str, size_t len,\n
      \                           int atom_type)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:2933,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:2950,1
    - Dst: atom_set_free
      Src: /src/gpac/src/quickjs/quickjs.c:2962,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:2966,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2973,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:2976,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 2
    argNames:
    - rt
    - p
    argTypes:
    - JSRuntime*
    - JSAtomStruct*
    assertStmts:
    - condition: (i != 0)
      pos:
        line_end: 2949
        line_start: 2949
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (rt->atom_count >= 0)
      pos:
        line_end: 2975
        line_start: 2975
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 2977
      start: 2930
    functionDepth: 2
    functionLinenumber: 2930
    functionLinenumberEnd: 2977
    functionName: JS_FreeAtomStruct
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - atom_set_free
    - assert
    - unlikely
    - js_free_rt
    - list_del
    linkageType: ''
    returnType: void
    signature: void JS_FreeAtomStruct(JSRuntime *rt, JSAtomStruct *p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_FreeAtomStruct
      Src: /src/gpac/src/quickjs/quickjs.c:2986,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - i
    argTypes:
    - JSRuntime*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2987
      start: 2979
    functionDepth: 3
    functionLinenumber: 2979
    functionLinenumberEnd: 2987
    functionName: __JS_FreeAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtomStruct
    linkageType: ''
    returnType: void
    signature: void __JS_FreeAtom(JSRuntime *rt, uint32_t i)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: is_num_string
      Src: /src/gpac/src/quickjs/quickjs.c:2994,1
    - Dst: js_free_string
      Src: /src/gpac/src/quickjs/quickjs.c:2996,1
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:2997,1
    - Dst: __JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:3001,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - p
    argTypes:
    - JSContext*
    - JSString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3002
      start: 2990
    functionDepth: 5
    functionLinenumber: 2990
    functionLinenumberEnd: 3002
    functionName: JS_NewAtomStr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - is_num_string
    - __JS_AtomFromUInt32
    - js_free_string
    - __JS_NewAtom
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom JS_NewAtomStr(JSContext *ctx, JSString *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - buf
    - len
    argTypes:
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3013
      start: 3005
    functionDepth: 0
    functionLinenumber: 3005
    functionLinenumberEnd: 3013
    functionName: count_ascii
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t count_ascii(const uint8_t *buf, size_t len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:3021,1
    - Dst: count_ascii
      Src: /src/gpac/src/quickjs/quickjs.c:3022,1
    - Dst: __JS_FindAtom
      Src: /src/gpac/src/quickjs/quickjs.c:3023,1
    - Dst: JS_NewStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:3027,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:3028,1
    - Dst: JS_NewAtomStr
      Src: /src/gpac/src/quickjs/quickjs.c:3030,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:3030,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - str
    - len
    argTypes:
    - JSContext*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3031
      start: 3016
    functionDepth: 6
    functionLinenumber: 3016
    functionLinenumberEnd: 3031
    functionName: JS_NewAtomLen
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - count_ascii
    - JS_IsException
    - JS_VALUE_GET_STRING
    - __JS_FindAtom
    - JS_NewStringLen
    - JS_NewAtomStr
    - is_digit
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom JS_NewAtomLen(JSContext *ctx, const char *str, size_t len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewAtomLen
      Src: /src/gpac/src/quickjs/quickjs.c:3035,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:3035,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - str
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3036
      start: 3033
    functionDepth: 7
    functionLinenumber: 3033
    functionLinenumberEnd: 3036
    functionName: JS_NewAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 4
    functionsReached:
    - JS_NewAtomLen
    - strlen
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom JS_NewAtom(JSContext *ctx, const char *str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:3041,1
    - Dst: u32toa
      Src: /src/gpac/src/quickjs/quickjs.c:3046,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:3047,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:3048,1
    - Dst: __JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:3050,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:3050,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - n
    argTypes:
    - JSContext*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3053
      start: 3038
    functionDepth: 5
    functionLinenumber: 3038
    functionLinenumberEnd: 3053
    functionName: JS_NewAtomUInt32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - u32toa
    - JS_IsException
    - JS_VALUE_GET_STRING
    - __JS_NewAtom
    - js_new_string8_len
    - __JS_AtomFromUInt32
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom JS_NewAtomUInt32(JSContext *ctx, uint32_t n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:3058,1
    - Dst: i64toa
      Src: /src/gpac/src/quickjs/quickjs.c:3063,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:3064,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:3065,1
    - Dst: __JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:3067,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:3067,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - n
    argTypes:
    - JSContext*
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3070
      start: 3055
    functionDepth: 5
    functionLinenumber: 3055
    functionLinenumberEnd: 3070
    functionName: JS_NewAtomInt64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - i64toa
    - JS_IsException
    - JS_VALUE_GET_STRING
    - __JS_NewAtom
    - js_new_string8_len
    - __JS_AtomFromUInt32
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom JS_NewAtomInt64(JSContext *ctx, int64_t n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: __JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:3077,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:3079,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:3080,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctx
    - p
    - atom_type
    argTypes:
    - JSContext*
    - JSString*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3081
      start: 3073
    functionDepth: 5
    functionLinenumber: 3073
    functionLinenumberEnd: 3081
    functionName: JS_NewSymbol
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowOutOfMemory
    - JS_MKPTR
    - __JS_NewAtom
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_NewSymbol(JSContext *ctx, JSString *p, int atom_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:3090,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:3090,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:3091,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:3093,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:3093,1
    - Dst: JS_NewSymbol
      Src: /src/gpac/src/quickjs/quickjs.c:3094,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - descr
    - atom_type
    argTypes:
    - JSContext*
    - JSAtom
    - int
    assertStmts:
    - condition: (!__JS_AtomIsTaggedInt(descr))
      pos:
        line_end: 3089
        line_start: 3089
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (descr < rt->atom_size)
      pos:
        line_end: 3090
        line_start: 3090
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 3095
      start: 3084
    functionDepth: 6
    functionLinenumber: 3084
    functionLinenumberEnd: 3095
    functionName: JS_NewSymbolFromAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_MKPTR
    - assert
    - __JS_AtomIsTaggedInt
    - JS_NewSymbol
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_NewSymbolFromAtom(JSContext *ctx, JSAtom descr,\n                                    int
      atom_type)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:3103,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:3104,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:3104,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:3107,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:3109,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:3117,1
    - Dst: atom_is_free
      Src: /src/gpac/src/quickjs/quickjs.c:3117,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:3130,1
    - Dst: unicode_to_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:3136,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 4
    argNames:
    - rt
    - buf
    - buf_size
    - atom
    argTypes:
    - JSRuntime*
    - char*
    - int
    - JSAtom
    assertStmts:
    - condition: (atom < rt->atom_size)
      pos:
        line_end: 3106
        line_start: 3106
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (!atom_is_free(p))
      pos:
        line_end: 3116
        line_start: 3116
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 3144
      start: 3100
    functionDepth: 1
    functionLinenumber: 3100
    functionLinenumberEnd: 3144
    functionName: JS_AtomGetStrRT
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - snprintf
    - __JS_AtomToUInt32
    - __JS_AtomIsTaggedInt
    - assert
    - unicode_to_utf8
    - atom_is_free
    - string_get
    linkageType: ''
    returnType: char
    signature: "char *JS_AtomGetStrRT(JSRuntime *rt, char *buf, int buf_size,\n                                   JSAtom
      atom)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_AtomGetStrRT
      Src: /src/gpac/src/quickjs/quickjs.c:3148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - buf
    - buf_size
    - atom
    argTypes:
    - JSContext*
    - char*
    - int
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3149
      start: 3146
    functionDepth: 2
    functionLinenumber: 3146
    functionLinenumberEnd: 3149
    functionName: JS_AtomGetStr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AtomGetStrRT
    linkageType: ''
    returnType: char
    signature: char *JS_AtomGetStr(JSContext *ctx, char *buf, int buf_size, JSAtom
      atom)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:3155,1
    - Dst: u32toa
      Src: /src/gpac/src/quickjs/quickjs.c:3156,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:3156,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:3157,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:3161,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:3171,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:3171,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:3173,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:3173,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 3
    argNames:
    - ctx
    - atom
    - force_string
    argTypes:
    - JSContext*
    - JSAtom
    - BOOL
    assertStmts:
    - condition: (atom < rt->atom_size)
      pos:
        line_end: 3160
        line_start: 3160
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 3176
      start: 3151
    functionDepth: 1
    functionLinenumber: 3151
    functionLinenumberEnd: 3176
    functionName: __JS_AtomToValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - u32toa
    - __JS_AtomToUInt32
    - JS_MKPTR
    - __JS_AtomIsTaggedInt
    - assert
    - js_new_string8_len
    linkageType: ''
    returnType: JSValue
    signature: JSValue __JS_AtomToValue(JSContext *ctx, JSAtom atom, BOOL force_string)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:3180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - atom
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3181
      start: 3178
    functionDepth: 2
    functionLinenumber: 3178
    functionLinenumberEnd: 3181
    functionName: JS_AtomToValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - __JS_AtomToValue
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_AtomToValue(JSContext *ctx, JSAtom atom)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:3185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - atom
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3186
      start: 3183
    functionDepth: 2
    functionLinenumber: 3183
    functionLinenumberEnd: 3186
    functionName: JS_AtomToString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - __JS_AtomToValue
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_AtomToString(JSContext *ctx, JSAtom atom)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:3192,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:3193,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:3200,1
    - Dst: is_num_string
      Src: /src/gpac/src/quickjs/quickjs.c:3203,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - ctx
    - pval
    - atom
    argTypes:
    - JSContext*
    - uint32_t*
    - JSAtom
    assertStmts:
    - condition: (atom < rt->atom_size)
      pos:
        line_end: 3199
        line_start: 3199
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 3211
      start: 3190
    functionDepth: 2
    functionLinenumber: 3190
    functionLinenumberEnd: 3211
    functionName: JS_AtomIsArrayIndex
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - is_num_string
    - __JS_AtomIsTaggedInt
    - assert
    - __JS_AtomToUInt32
    linkageType: ''
    returnType: BOOL
    signature: BOOL JS_AtomIsArrayIndex(JSContext *ctx, uint32_t *pval, JSAtom atom)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:3224,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:3225,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:3225,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:3226,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:3232,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:3234,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:3236,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:3238,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:3245,1
    - Dst: is_num
      Src: /src/gpac/src/quickjs/quickjs.c:3246,1
    - Dst: JS_ToNumber
      Src: /src/gpac/src/quickjs/quickjs.c:3249,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:3249,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:3250,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:3252,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:3253,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:3254,1
    - Dst: js_string_eq
      Src: /src/gpac/src/quickjs/quickjs.c:3257,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:3257,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:3258,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:3262,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 2
    argNames:
    - ctx
    - atom
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts:
    - condition: (atom < rt->atom_size)
      pos:
        line_end: 3225
        line_start: 3225
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 3265
      start: 3216
    functionDepth: 1
    functionLinenumber: 3216
    functionLinenumberEnd: 3265
    functionName: JS_AtomIsNumericIndex1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - __JS_AtomToUInt32
    - is_num
    - JS_MKPTR
    - __JS_NewFloat64
    - __JS_AtomIsTaggedInt
    - assert
    - JS_IsException
    - JS_FreeValue
    - JS_ToNumber
    - JS_VALUE_GET_STRING
    - js_string_eq
    - string_get
    - JS_ToString
    - JS_NewInt32
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_AtomIsNumericIndex1(JSContext *ctx, JSAtom atom)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_AtomIsNumericIndex1
      Src: /src/gpac/src/quickjs/quickjs.c:3271,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:3272,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:3272,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:3274,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:3276,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - atom
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3278
      start: 3268
    functionDepth: 2
    functionLinenumber: 3268
    functionLinenumberEnd: 3278
    functionName: JS_AtomIsNumericIndex
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_FreeValue
    - JS_IsUndefined
    - likely
    - JS_AtomIsNumericIndex1
    linkageType: ''
    returnType: int
    signature: int JS_AtomIsNumericIndex(JSContext *ctx, JSAtom atom)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomIsConst
      Src: /src/gpac/src/quickjs/quickjs.c:3282,1
    - Dst: __JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:3283,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - v
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3284
      start: 3280
    functionDepth: 4
    functionLinenumber: 3280
    functionLinenumberEnd: 3284
    functionName: JS_FreeAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 5
    functionsReached:
    - __JS_FreeAtom
    - __JS_AtomIsConst
    linkageType: ''
    returnType: void
    signature: void JS_FreeAtom(JSContext *ctx, JSAtom v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomIsConst
      Src: /src/gpac/src/quickjs/quickjs.c:3288,1
    - Dst: __JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:3289,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - rt
    - v
    argTypes:
    - JSRuntime*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3290
      start: 3286
    functionDepth: 4
    functionLinenumber: 3286
    functionLinenumberEnd: 3290
    functionName: JS_FreeAtomRT
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - __JS_FreeAtom
    - __JS_AtomIsConst
    linkageType: ''
    returnType: void
    signature: void JS_FreeAtomRT(JSRuntime *rt, JSAtom v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:3299,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - v
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3306
      start: 3293
    functionDepth: 1
    functionLinenumber: 3293
    functionLinenumberEnd: 3306
    functionName: JS_AtomSymbolHasDescription
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - __JS_AtomIsTaggedInt
    linkageType: ''
    returnType: BOOL
    signature: BOOL JS_AtomSymbolHasDescription(JSContext *ctx, JSAtom v)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:3314,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:3315,1
    - Dst: JS_ToCStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:3320,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:3321,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - ctx
    - plen
    - atom
    argTypes:
    - JSContext*
    - size_t*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3323
      start: 3309
    functionDepth: 3
    functionLinenumber: 3309
    functionLinenumberEnd: 3323
    functionName: JS_AtomToCStringLen
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_AtomToString
    - JS_FreeValue
    - JS_ToCStringLen
    linkageType: ''
    returnType: char
    signature: char *JS_AtomToCStringLen(JSContext *ctx, size_t *plen, JSAtom atom)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:3334,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:3335,1
    - Dst: JS_ToCStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:3337,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:3340,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:3341,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:3344,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:3345,1
    - Dst: JS_NewAtomLen
      Src: /src/gpac/src/quickjs/quickjs.c:3347,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:3348,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:3349,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:3350,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:3353,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:3354,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 3
    argNames:
    - ctx
    - name
    - str1
    argTypes:
    - JSContext*
    - JSAtom
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3356
      start: 3326
    functionDepth: 7
    functionLinenumber: 3326
    functionLinenumberEnd: 3356
    functionName: js_atom_concat_str
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - js_malloc
    - memcpy
    - JS_FreeValue
    - JS_ToCStringLen
    - JS_AtomToString
    - JS_NewAtomLen
    - strlen
    - JS_FreeCString
    - js_free
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom js_atom_concat_str(JSContext *ctx, JSAtom name, const char *str1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: u32toa
      Src: /src/gpac/src/quickjs/quickjs.c:3362,1
    - Dst: js_atom_concat_str
      Src: /src/gpac/src/quickjs/quickjs.c:3364,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - name
    - n
    argTypes:
    - JSContext*
    - JSAtom
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3365
      start: 3358
    functionDepth: 8
    functionLinenumber: 3358
    functionLinenumberEnd: 3365
    functionName: js_atom_concat_num
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_atom_concat_str
    - u32toa
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom js_atom_concat_num(JSContext *ctx, JSAtom name, uint32_t n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:3369,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:3369,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3370
      start: 3367
    functionDepth: 1
    functionLinenumber: 3367
    functionLinenumberEnd: 3370
    functionName: JS_IsEmptyString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: BOOL
    signature: BOOL JS_IsEmptyString(JSValueConst v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: pthread_mutex_lock
      Src: /src/gpac/src/quickjs/quickjs.c:3383,1
    - Dst: pthread_mutex_unlock
      Src: /src/gpac/src/quickjs/quickjs.c:3391,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - pclass_id
    argTypes:
    - JSClassID*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3394
      start: 3379
    functionDepth: 0
    functionLinenumber: 3379
    functionLinenumberEnd: 3394
    functionName: JS_NewClassID
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 8
    functionsReached:
    - pthread_mutex_lock
    - pthread_mutex_unlock
    linkageType: ''
    returnType: JSClassID
    signature: JSClassID JS_NewClassID(JSClassID *pclass_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:3399,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:3401,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - v
    argTypes:
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3403
      start: 3396
    functionDepth: 1
    functionLinenumber: 3396
    functionLinenumberEnd: 3403
    functionName: JS_GetClassID
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: JSClassID
    signature: JSClassID JS_GetClassID(JSValue v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - class_id
    argTypes:
    - JSRuntime*
    - JSClassID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3409
      start: 3405
    functionDepth: 0
    functionLinenumber: 3405
    functionLinenumberEnd: 3409
    functionName: JS_IsRegisteredClass
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL JS_IsRegisteredClass(JSRuntime *rt, JSClassID class_id)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:3427,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:3428,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:3431,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:3432,1
    - Dst: js_realloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:3434,1
    - Dst: js_realloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:3443,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:3447,1
    - Dst: JS_DupAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:3454,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 4
    argNames:
    - rt
    - class_id
    - class_def
    - name
    argTypes:
    - JSRuntime*
    - JSClassID
    - JSClassDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3460
      start: 3413
    functionDepth: 2
    functionLinenumber: 3413
    functionLinenumberEnd: 3460
    functionName: JS_NewClass1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_DupAtomRT
    - js_realloc_rt
    - memset
    - max_int
    - list_entry
    - list_for_each
    linkageType: ''
    returnType: int
    signature: "int JS_NewClass1(JSRuntime *rt, JSClassID class_id,\n                        const
      JSClassDef *class_def, JSAtom name)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:3467,1
    - Dst: __JS_FindAtom
      Src: /src/gpac/src/quickjs/quickjs.c:3468,1
    - Dst: __JS_NewAtomInit
      Src: /src/gpac/src/quickjs/quickjs.c:3470,1
    - Dst: JS_NewClass1
      Src: /src/gpac/src/quickjs/quickjs.c:3474,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:3475,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - rt
    - class_id
    - class_def
    argTypes:
    - JSRuntime*
    - JSClassID
    - JSClassDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3477
      start: 3462
    functionDepth: 6
    functionLinenumber: 3462
    functionLinenumberEnd: 3477
    functionName: JS_NewClass
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 8
    functionsReached:
    - JS_FreeAtomRT
    - __JS_FindAtom
    - __JS_NewAtomInit
    - JS_NewClass1
    - strlen
    linkageType: ''
    returnType: int
    signature: int JS_NewClass(JSRuntime *rt, JSClassID class_id, const JSClassDef
      *class_def)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:3484,1
    - Dst: js_alloc_string
      Src: /src/gpac/src/quickjs/quickjs.c:3486,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:3489,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:3491,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - ctx
    - buf
    - len
    argTypes:
    - JSContext*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3492
      start: 3479
    functionDepth: 4
    functionLinenumber: 3479
    functionLinenumberEnd: 3492
    functionName: js_new_string8_len
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - JS_MKPTR
    - JS_AtomToString
    - memcpy
    - js_alloc_string
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_new_string8_len(JSContext *ctx, const char *buf, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:3496,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:3496,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - buf
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3497
      start: 3494
    functionDepth: 5
    functionLinenumber: 3494
    functionLinenumberEnd: 3497
    functionName: js_new_string8
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_new_string8_len
    - strlen
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_new_string8(JSContext *ctx, const char *buf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_alloc_string
      Src: /src/gpac/src/quickjs/quickjs.c:3502,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:3505,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:3506,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - buf
    - len
    argTypes:
    - JSContext*
    - uint16_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3507
      start: 3499
    functionDepth: 4
    functionLinenumber: 3499
    functionLinenumberEnd: 3507
    functionName: js_new_string16_len
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - memcpy
    - js_alloc_string
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_new_string16_len(JSContext *ctx, const uint16_t *buf, int
      len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:3513,1
    - Dst: js_new_string16_len
      Src: /src/gpac/src/quickjs/quickjs.c:3516,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - c
    argTypes:
    - JSContext*
    - uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3518
      start: 3509
    functionDepth: 5
    functionLinenumber: 3509
    functionLinenumberEnd: 3518
    functionName: js_new_string_char
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_new_string16_len
    - js_new_string8_len
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_new_string_char(JSContext *ctx, uint16_t c)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:3524,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:3524,1
    - Dst: js_new_string16_len
      Src: /src/gpac/src/quickjs/quickjs.c:3534,1
    - Dst: js_alloc_string
      Src: /src/gpac/src/quickjs/quickjs.c:3536,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:3543,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:3545,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 4
    argNames:
    - ctx
    - p
    - start
    - end
    argTypes:
    - JSContext*
    - JSString*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3547
      start: 3520
    functionDepth: 5
    functionLinenumber: 3520
    functionLinenumberEnd: 3547
    functionName: js_sub_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_MKPTR
    - js_new_string16_len
    - js_new_string8_len
    - js_alloc_string
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_sub_string(JSContext *ctx, JSString *p, int start, int end)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_alloc_string
      Src: /src/gpac/src/quickjs/quickjs.c:3570,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:3571,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:3577,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 4
    argNames:
    - ctx
    - s
    - size
    - is_wide
    argTypes:
    - JSContext*
    - StringBuffer*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3580
      start: 3562
    functionDepth: 4
    functionLinenumber: 3562
    functionLinenumberEnd: 3580
    functionName: string_buffer_init2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - unlikely
    - list_del
    - js_alloc_string
    linkageType: ''
    returnType: int
    signature: "int string_buffer_init2(JSContext *ctx, StringBuffer *s, int size,\n
      \                              int is_wide)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string_buffer_init2
      Src: /src/gpac/src/quickjs/quickjs.c:3584,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - s
    - size
    argTypes:
    - JSContext*
    - StringBuffer*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3585
      start: 3582
    functionDepth: 5
    functionLinenumber: 3582
    functionLinenumberEnd: 3585
    functionName: string_buffer_init
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_init2
    linkageType: ''
    returnType: int
    signature: int string_buffer_init(JSContext *ctx, StringBuffer *s, int size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:3589,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - StringBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3591
      start: 3587
    functionDepth: 3
    functionLinenumber: 3587
    functionLinenumberEnd: 3591
    functionName: string_buffer_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free
    linkageType: ''
    returnType: void
    signature: void string_buffer_free(StringBuffer *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:3595,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - StringBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3600
      start: 3593
    functionDepth: 3
    functionLinenumber: 3593
    functionLinenumberEnd: 3600
    functionName: string_buffer_set_error
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free
    linkageType: ''
    returnType: int
    signature: int string_buffer_set_error(StringBuffer *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_realloc2
      Src: /src/gpac/src/quickjs/quickjs.c:3611,1
    - Dst: string_buffer_set_error
      Src: /src/gpac/src/quickjs/quickjs.c:3613,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - s
    - size
    argTypes:
    - StringBuffer*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3622
      start: 3602
    functionDepth: 4
    functionLinenumber: 3602
    functionLinenumberEnd: 3622
    functionName: string_buffer_widen
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_realloc2
    - string_buffer_set_error
    linkageType: ''
    returnType: no_inline
    signature: no_inline string_buffer_widen(StringBuffer *s, int size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:3634,1
    - Dst: string_buffer_set_error
      Src: /src/gpac/src/quickjs/quickjs.c:3635,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:3637,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:3637,1
    - Dst: string_buffer_widen
      Src: /src/gpac/src/quickjs/quickjs.c:3639,1
    - Dst: js_realloc2
      Src: /src/gpac/src/quickjs/quickjs.c:3642,1
    - Dst: string_buffer_set_error
      Src: /src/gpac/src/quickjs/quickjs.c:3644,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:3645,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - s
    - new_len
    - c
    argTypes:
    - StringBuffer*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3649
      start: 3624
    functionDepth: 5
    functionLinenumber: 3624
    functionLinenumberEnd: 3649
    functionName: string_buffer_realloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_realloc2
    - string_buffer_widen
    - max_int
    - JS_ThrowInternalError
    - min_int
    - string_buffer_set_error
    linkageType: ''
    returnType: no_inline
    signature: no_inline string_buffer_realloc(StringBuffer *s, int new_len, int c)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:3653,1
    - Dst: string_buffer_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:3654,1
    - Dst: string_buffer_widen
      Src: /src/gpac/src/quickjs/quickjs.c:3662,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - s
    - c
    argTypes:
    - StringBuffer*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3667
      start: 3651
    functionDepth: 6
    functionLinenumber: 3651
    functionLinenumberEnd: 3667
    functionName: string_buffer_putc16_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_realloc
    - unlikely
    - string_buffer_widen
    linkageType: ''
    returnType: no_inline
    signature: no_inline string_buffer_putc16_slow(StringBuffer *s, uint32_t c)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:3672,1
    - Dst: string_buffer_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:3673,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - s
    - c
    argTypes:
    - StringBuffer*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3682
      start: 3670
    functionDepth: 6
    functionLinenumber: 3670
    functionLinenumberEnd: 3682
    functionName: string_buffer_putc8
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_realloc
    - unlikely
    linkageType: ''
    returnType: int
    signature: int string_buffer_putc8(StringBuffer *s, uint32_t c)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:3687,1
    - Dst: string_buffer_putc16_slow
      Src: /src/gpac/src/quickjs/quickjs.c:3696,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - c
    argTypes:
    - StringBuffer*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3697
      start: 3685
    functionDepth: 7
    functionLinenumber: 3685
    functionLinenumberEnd: 3697
    functionName: string_buffer_putc16
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_putc16_slow
    - likely
    linkageType: ''
    returnType: int
    signature: int string_buffer_putc16(StringBuffer *s, uint32_t c)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:3701,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:3703,1
    - Dst: get_hi_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:3703,1
    - Dst: get_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:3705,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:3707,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - s
    - c
    argTypes:
    - StringBuffer*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3708
      start: 3699
    functionDepth: 8
    functionLinenumber: 3699
    functionLinenumberEnd: 3708
    functionName: string_buffer_putc_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_putc16
    - get_hi_surrogate
    - unlikely
    - get_lo_surrogate
    linkageType: ''
    returnType: int
    signature: int string_buffer_putc_slow(StringBuffer *s, uint32_t c)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:3713,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:3718,1
    - Dst: get_hi_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:3719,1
    - Dst: get_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:3720,1
    - Dst: string_buffer_putc_slow
      Src: /src/gpac/src/quickjs/quickjs.c:3728,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - s
    - c
    argTypes:
    - StringBuffer*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3729
      start: 3711
    functionDepth: 9
    functionLinenumber: 3711
    functionLinenumberEnd: 3729
    functionName: string_buffer_putc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_hi_surrogate
    - get_lo_surrogate
    - string_buffer_putc_slow
    - likely
    linkageType: ''
    returnType: int
    signature: int string_buffer_putc(StringBuffer *s, uint32_t c)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: is_hi_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:3737,1
    - Dst: is_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:3739,1
    - Dst: from_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:3740,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - p
    - pidx
    argTypes:
    - JSString*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3749
      start: 3731
    functionDepth: 1
    functionLinenumber: 3731
    functionLinenumberEnd: 3749
    functionName: string_getc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - is_lo_surrogate
    - is_hi_surrogate
    - from_surrogate
    linkageType: ''
    returnType: int
    signature: int string_getc(const JSString *p, int *pidx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: string_buffer_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:3756,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:3765,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - s
    - p
    - len
    argTypes:
    - StringBuffer*
    - uint8_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3769
      start: 3751
    functionDepth: 6
    functionLinenumber: 3751
    functionLinenumberEnd: 3769
    functionName: string_buffer_write8
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memcpy
    - string_buffer_realloc
    linkageType: ''
    returnType: int
    signature: int string_buffer_write8(StringBuffer *s, const uint8_t *p, int len)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: string_buffer_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:3779,1
    - Dst: string_buffer_widen
      Src: /src/gpac/src/quickjs/quickjs.c:3782,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:3786,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 3
    argNames:
    - s
    - p
    - len
    argTypes:
    - StringBuffer*
    - uint16_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3795
      start: 3771
    functionDepth: 6
    functionLinenumber: 3771
    functionLinenumberEnd: 3795
    functionName: string_buffer_write16
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memcpy
    - string_buffer_realloc
    - string_buffer_widen
    linkageType: ''
    returnType: int
    signature: int string_buffer_write16(StringBuffer *s, const uint16_t *p, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string_buffer_write8
      Src: /src/gpac/src/quickjs/quickjs.c:3800,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:3800,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - str
    argTypes:
    - StringBuffer*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3801
      start: 3798
    functionDepth: 7
    functionLinenumber: 3798
    functionLinenumberEnd: 3801
    functionName: string_buffer_puts8
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - strlen
    - string_buffer_write8
    linkageType: ''
    returnType: int
    signature: int string_buffer_puts8(StringBuffer *s, const char *str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: string_buffer_write16
      Src: /src/gpac/src/quickjs/quickjs.c:3809,1
    - Dst: string_buffer_write8
      Src: /src/gpac/src/quickjs/quickjs.c:3811,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - s
    - p
    - from
    - to
    argTypes:
    - StringBuffer*
    - JSString*
    - uint32_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3812
      start: 3803
    functionDepth: 7
    functionLinenumber: 3803
    functionLinenumberEnd: 3812
    functionName: string_buffer_concat
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_write16
    - string_buffer_write8
    linkageType: ''
    returnType: int
    signature: "int string_buffer_concat(StringBuffer *s, const JSString *p,\n                                uint32_t
      from, uint32_t to)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:3824,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:3824,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:3825,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:3826,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:3828,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:3830,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:3832,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:3833,1
    - Dst: string_buffer_set_error
      Src: /src/gpac/src/quickjs/quickjs.c:3834,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:3835,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:3836,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:3837,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:3841,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:3842,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - StringBuffer*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3843
      start: 3814
    functionDepth: 8
    functionLinenumber: 3814
    functionLinenumberEnd: 3843
    functionName: string_buffer_concat_value
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - string_buffer_concat
    - JS_VALUE_GET_TAG
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - unlikely
    - JS_VALUE_GET_STRING_ROPE
    - JS_ToString
    - string_buffer_concat_value
    - string_buffer_set_error
    linkageType: ''
    returnType: int
    signature: int string_buffer_concat_value(StringBuffer *s, JSValueConst v)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:3852,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:3855,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:3855,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:3856,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:3857,1
    - Dst: string_buffer_set_error
      Src: /src/gpac/src/quickjs/quickjs.c:3858,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:3860,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:3861,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:3862,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - StringBuffer*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3864
      start: 3845
    functionDepth: 8
    functionLinenumber: 3845
    functionLinenumberEnd: 3864
    functionName: string_buffer_concat_value_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_concat
    - JS_VALUE_GET_TAG
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - unlikely
    - JS_ToStringFree
    - string_buffer_set_error
    linkageType: ''
    returnType: int
    signature: int string_buffer_concat_value_free(StringBuffer *s, JSValue v)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: string_buffer_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:3870,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:3874,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - s
    - c
    - count
    argTypes:
    - StringBuffer*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3878
      start: 3866
    functionDepth: 8
    functionLinenumber: 3866
    functionLinenumberEnd: 3878
    functionName: string_buffer_fill
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_putc16
    - string_buffer_realloc
    linkageType: ''
    returnType: int
    signature: int string_buffer_fill(StringBuffer *s, int c, int count)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:3887,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:3889,1
    - Dst: js_realloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:3895,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:3904,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:3909,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 1
    argNames:
    - s
    argTypes:
    - StringBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3910
      start: 3880
    functionDepth: 3
    functionLinenumber: 3880
    functionLinenumberEnd: 3910
    functionName: string_buffer_end
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - list_add_tail
    - js_realloc_rt
    - JS_AtomToString
    - js_free
    linkageType: ''
    returnType: JSValue
    signature: JSValue string_buffer_end(StringBuffer *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: count_ascii
      Src: /src/gpac/src/quickjs/quickjs.c:3922,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:3925,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:3928,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:3930,1
    - Dst: string_buffer_write8
      Src: /src/gpac/src/quickjs/quickjs.c:3932,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:3935,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:3938,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:3944,1
    - Dst: get_hi_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:3944,1
    - Dst: get_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:3945,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:3959,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:3963,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:3966,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 45
    argCount: 3
    argNames:
    - ctx
    - buf
    - buf_len
    argTypes:
    - JSContext*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3968
      start: 3913
    functionDepth: 8
    functionLinenumber: 3913
    functionLinenumberEnd: 3968
    functionName: JS_NewStringLen
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - string_buffer_end
    - count_ascii
    - string_buffer_write8
    - get_lo_surrogate
    - string_buffer_free
    - js_new_string8_len
    - string_buffer_init
    - unicode_from_utf8
    - string_buffer_putc16
    - get_hi_surrogate
    - string_buffer_putc8
    - JS_ThrowInternalError
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_NewStringLen(JSContext *ctx, const char *buf, size_t buf_len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:3977,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:3977,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:3978,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:3979,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:3982,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:3983,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:3984,1
    - Dst: string_buffer_init2
      Src: /src/gpac/src/quickjs/quickjs.c:3986,1
    - Dst: string_buffer_write8
      Src: /src/gpac/src/quickjs/quickjs.c:3989,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:3990,1
    - Dst: string_buffer_write8
      Src: /src/gpac/src/quickjs/quickjs.c:3991,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:3993,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:3994,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:3997,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 4
    argNames:
    - ctx
    - str1
    - str2
    - str3
    argTypes:
    - JSContext*
    - char*
    - JSValue
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3999
      start: 3970
    functionDepth: 8
    functionLinenumber: 3970
    functionLinenumberEnd: 3999
    functionName: JS_ConcatString3
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_concat
    - string_buffer_end
    - JS_VALUE_GET_TAG
    - string_buffer_write8
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - unlikely
    - JS_ToStringFree
    - strlen
    - string_buffer_init2
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_ConcatString3(JSContext *ctx, const char *str1,\n                                JSValue
      str2, const char *str3)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:4003,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:4006,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:4007,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - str
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4009
      start: 4001
    functionDepth: 8
    functionLinenumber: 4001
    functionLinenumberEnd: 4009
    functionName: JS_NewAtomString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewAtom
    - JS_FreeAtom
    - JS_AtomToString
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_NewAtomString(JSContext *ctx, const char *str)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4021,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:4022,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:4023,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:4026,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4029,1
    - Dst: js_alloc_string
      Src: /src/gpac/src/quickjs/quickjs.c:4050,1
    - Dst: js_alloc_string
      Src: /src/gpac/src/quickjs/quickjs.c:4068,1
    - Dst: is_hi_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:4078,1
    - Dst: is_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:4081,1
    - Dst: from_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:4083,1
    - Dst: unicode_to_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:4093,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4100,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 73
    argCount: 4
    argNames:
    - ctx
    - plen
    - val1
    - cesu8
    argTypes:
    - JSContext*
    - size_t*
    - JSValueConst
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4108
      start: 4014
    functionDepth: 4
    functionLinenumber: 4014
    functionLinenumberEnd: 4108
    functionName: JS_ToCStringLen2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - unicode_to_utf8
    - is_lo_surrogate
    - JS_ToString
    - is_hi_surrogate
    - from_surrogate
    - js_alloc_string
    linkageType: ''
    returnType: char
    signature: char *JS_ToCStringLen2(JSContext *ctx, size_t *plen, JSValueConst val1,
      BOOL cesu8)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: container_of
      Src: /src/gpac/src/quickjs/quickjs.c:4116,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4117,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:4117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - ptr
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4118
      start: 4110
    functionDepth: 1
    functionLinenumber: 4110
    functionLinenumberEnd: 4118
    functionName: JS_FreeCString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 160
    functionsReached:
    - JS_MKPTR
    - JS_FreeValue
    - container_of
    linkageType: ''
    returnType: void
    signature: void JS_FreeCString(JSContext *ctx, const char *ptr)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - src1
    - src2
    - len
    argTypes:
    - uint16_t*
    - uint8_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4129
      start: 4120
    functionDepth: 0
    functionLinenumber: 4120
    functionLinenumberEnd: 4129
    functionName: memcmp16_8
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int memcmp16_8(const uint16_t *src1, const uint8_t *src2, int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - src1
    - src2
    - len
    argTypes:
    - uint16_t*
    - uint16_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4140
      start: 4131
    functionDepth: 0
    functionLinenumber: 4131
    functionLinenumberEnd: 4140
    functionName: memcmp16
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int memcmp16(const uint16_t *src1, const uint16_t *src2, int len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:4147,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:4148,1
    - Dst: memcmp
      Src: /src/gpac/src/quickjs/quickjs.c:4149,1
    - Dst: memcmp16_8
      Src: /src/gpac/src/quickjs/quickjs.c:4151,1
    - Dst: memcmp16_8
      Src: /src/gpac/src/quickjs/quickjs.c:4154,1
    - Dst: memcmp16
      Src: /src/gpac/src/quickjs/quickjs.c:4156,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 5
    argNames:
    - p1
    - pos1
    - p2
    - pos2
    - len
    argTypes:
    - JSString*
    - int
    - JSString*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4159
      start: 4142
    functionDepth: 1
    functionLinenumber: 4142
    functionLinenumberEnd: 4159
    functionName: js_string_memcmp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - memcmp16_8
    - memcmp16
    - memcmp
    - likely
    linkageType: ''
    returnType: int
    signature: "int js_string_memcmp(const JSString *p1, int pos1, const JSString
      *p2,\n                            int pos2, int len)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_string_memcmp
      Src: /src/gpac/src/quickjs/quickjs.c:4168,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - p1
    - p2
    argTypes:
    - JSContext*
    - JSString*
    - JSString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4169
      start: 4161
    functionDepth: 2
    functionLinenumber: 4161
    functionLinenumberEnd: 4169
    functionName: js_string_eq
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_string_memcmp
    linkageType: ''
    returnType: BOOL
    signature: "BOOL js_string_eq(JSContext *ctx,\n                         const
      JSString *p1, const JSString *p2)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:4176,1
    - Dst: js_string_memcmp
      Src: /src/gpac/src/quickjs/quickjs.c:4177,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - ctx
    - p1
    - p2
    argTypes:
    - JSContext*
    - JSString*
    - JSString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4187
      start: 4172
    functionDepth: 2
    functionLinenumber: 4172
    functionLinenumberEnd: 4187
    functionName: js_string_compare
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - min_int
    - js_string_memcmp
    linkageType: ''
    returnType: int
    signature: "int js_string_compare(JSContext *ctx,\n                             const
      JSString *p1, const JSString *p2)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:4192,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - dst
    - p
    - offset
    - len
    argTypes:
    - uint16_t*
    - JSString*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4200
      start: 4189
    functionDepth: 0
    functionLinenumber: 4189
    functionLinenumberEnd: 4200
    functionName: copy_str16
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: void
    signature: void copy_str16(uint16_t *dst, const JSString *p, int offset, int len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:4211,1
    - Dst: js_alloc_string
      Src: /src/gpac/src/quickjs/quickjs.c:4213,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:4217,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:4218,1
    - Dst: copy_str16
      Src: /src/gpac/src/quickjs/quickjs.c:4221,1
    - Dst: copy_str16
      Src: /src/gpac/src/quickjs/quickjs.c:4222,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:4224,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - ctx
    - p1
    - p2
    argTypes:
    - JSContext*
    - JSString*
    - JSString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4225
      start: 4202
    functionDepth: 4
    functionLinenumber: 4202
    functionLinenumberEnd: 4225
    functionName: JS_ConcatString1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - memcpy
    - copy_str16
    - JS_ThrowInternalError
    - js_alloc_string
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_ConcatString1(JSContext *ctx,\n                                const
      JSString *p1, const JSString *p2)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4228,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4229,1
    - Dst: js_malloc_usable_size
      Src: /src/gpac/src/quickjs/quickjs.c:4236,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:4240,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:4253,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 3
    argNames:
    - ctx
    - p1
    - op2
    argTypes:
    - JSContext*
    - JSString*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4261
      start: 4227
    functionDepth: 3
    functionLinenumber: 4227
    functionLinenumberEnd: 4261
    functionName: JS_ConcatStringInPlace
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memcpy
    - js_malloc_usable_size
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: BOOL
    signature: BOOL JS_ConcatStringInPlace(JSContext *ctx, JSString *p1, JSValueConst
      op2)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4267,1
    - Dst: JS_ConcatStringInPlace
      Src: /src/gpac/src/quickjs/quickjs.c:4268,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4269,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4272,1
    - Dst: JS_ConcatString1
      Src: /src/gpac/src/quickjs/quickjs.c:4273,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4274,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4275,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - ctx
    - op1
    - op2
    argTypes:
    - JSContext*
    - JSValue
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4277
      start: 4263
    functionDepth: 5
    functionLinenumber: 4263
    functionLinenumberEnd: 4277
    functionName: JS_ConcatString2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - JS_ConcatStringInPlace
    - JS_ConcatString1
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ConcatString2(JSContext *ctx, JSValue op1, JSValue op2)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4282,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:4283,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4283,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:4285,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4287,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4288,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:4290,1
    - Dst: string_rope_get
      Src: /src/gpac/src/quickjs/quickjs.c:4292,1
    - Dst: string_rope_get
      Src: /src/gpac/src/quickjs/quickjs.c:4294,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - val
    - idx
    argTypes:
    - JSValueConst
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4296
      start: 4280
    functionDepth: 1
    functionLinenumber: 4280
    functionLinenumberEnd: 4296
    functionName: string_rope_get
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - string_rope_get
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_STRING_ROPE
    - string_get
    linkageType: ''
    returnType: int
    signature: int string_rope_get(JSValueConst val, uint32_t idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - val
    argTypes:
    - JSStringRopeIter*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4307
      start: 4303
    functionDepth: 0
    functionLinenumber: 4303
    functionLinenumberEnd: 4307
    functionName: string_rope_iter_init
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void string_rope_iter_init(JSStringRopeIter *s, JSValueConst val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4319,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4320,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:4321,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:4322,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSStringRopeIter*
    assertStmts:
    - condition: (s->stack_len < JS_STRING_ROPE_MAX_DEPTH)
      pos:
        line_end: 4321
        line_start: 4321
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 4326
      start: 4310
    functionDepth: 1
    functionLinenumber: 4310
    functionLinenumberEnd: 4326
    functionName: string_rope_iter_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_TAG
    - assert
    - JS_VALUE_GET_STRING_ROPE
    linkageType: ''
    returnType: JSString
    signature: JSString *string_rope_iter_next(JSStringRopeIter *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4330,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4331,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:4333,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - val
    argTypes:
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4334
      start: 4328
    functionDepth: 1
    functionLinenumber: 4328
    functionLinenumberEnd: 4334
    functionName: string_rope_get_len
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_STRING_ROPE
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t string_rope_get_len(JSValueConst val)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: string_rope_get_len
      Src: /src/gpac/src/quickjs/quickjs.c:4344,1
    - Dst: string_rope_get_len
      Src: /src/gpac/src/quickjs/quickjs.c:4345,1
    - Dst: min_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:4350,1
    - Dst: string_rope_iter_init
      Src: /src/gpac/src/quickjs/quickjs.c:4351,1
    - Dst: string_rope_iter_init
      Src: /src/gpac/src/quickjs/quickjs.c:4352,1
    - Dst: string_rope_iter_next
      Src: /src/gpac/src/quickjs/quickjs.c:4353,1
    - Dst: string_rope_iter_next
      Src: /src/gpac/src/quickjs/quickjs.c:4354,1
    - Dst: min_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:4358,1
    - Dst: min_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:4359,1
    - Dst: js_string_memcmp
      Src: /src/gpac/src/quickjs/quickjs.c:4360,1
    - Dst: string_rope_iter_next
      Src: /src/gpac/src/quickjs/quickjs.c:4366,1
    - Dst: string_rope_iter_next
      Src: /src/gpac/src/quickjs/quickjs.c:4371,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 36
    argCount: 4
    argNames:
    - ctx
    - op1
    - op2
    - eq_only
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4383
      start: 4336
    functionDepth: 2
    functionLinenumber: 4336
    functionLinenumberEnd: 4383
    functionName: js_string_rope_compare
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - min_uint32
    - string_rope_iter_next
    - string_rope_iter_init
    - js_string_memcmp
    - string_rope_get_len
    linkageType: ''
    returnType: int
    signature: "int js_string_rope_compare(JSContext *ctx, JSValueConst op1,\n                                  JSValueConst
      op2, BOOL eq_only)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:4393,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4396,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4397,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:4398,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4399,1
    - Dst: string_buffer_init2
      Src: /src/gpac/src/quickjs/quickjs.c:4402,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:4404,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:4406,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4409,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4410,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:4411,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:4412,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4414,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4417,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 2
    argNames:
    - ctx
    - rope
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4419
      start: 4387
    functionDepth: 9
    functionLinenumber: 4387
    functionLinenumberEnd: 4419
    functionName: js_linearize_string_rope
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - string_buffer_end
    - JS_VALUE_GET_TAG
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_STRING_ROPE
    - string_buffer_concat_value
    - JS_AtomToString
    - string_buffer_init2
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_linearize_string_rope(JSContext *ctx, JSValue rope)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4431,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4432,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:4437,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4443,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4444,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:4448,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:4451,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:4454,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:4457,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:4466,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:4470,1
    - Dst: js_rebalancee_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:4472,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4474,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:4475,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:4475,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4477,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4483,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4484,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 49
    argCount: 3
    argNames:
    - ctx
    - op1
    - op2
    argTypes:
    - JSContext*
    - JSValue
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4486
      start: 4424
    functionDepth: 3
    functionLinenumber: 4424
    functionLinenumberEnd: 4486
    functionName: js_new_string_rope
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - JS_VALUE_GET_TAG
    - js_malloc
    - JS_MKPTR
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_STRING_ROPE
    - js_rebalancee_string_rope
    - max_int
    - JS_ThrowInternalError
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_new_string_rope(JSContext *ctx, JSValue op1, JSValue op2)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4508,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4509,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:4523,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:4525,1
    - Dst: js_new_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:4528,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:4529,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:4535,1
    - Dst: js_new_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:4536,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:4536,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:4537,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:4540,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:4542,1
    - Dst: js_new_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:4543,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:4545,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:4551,1
    - Dst: js_rebalancee_string_rope_rec
      Src: /src/gpac/src/quickjs/quickjs.c:4552,1
    - Dst: js_rebalancee_string_rope_rec
      Src: /src/gpac/src/quickjs/quickjs.c:4553,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 3
    argNames:
    - ctx
    - buckets
    - val
    argTypes:
    - JSContext*
    - JSValue*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4556
      start: 4505
    functionDepth: 4
    functionLinenumber: 4505
    functionLinenumberEnd: 4556
    functionName: js_rebalancee_string_rope_rec
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - JS_IsNull
    - js_rebalancee_string_rope_rec
    - JS_IsException
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_STRING_ROPE
    - js_new_string_rope
    linkageType: ''
    returnType: int
    signature: "int js_rebalancee_string_rope_rec(JSContext *ctx, JSValue *buckets,\n
      \                                         JSValueConst val)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: js_rebalancee_string_rope_rec
      Src: /src/gpac/src/quickjs/quickjs.c:4568,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:4573,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:4575,1
    - Dst: js_new_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:4578,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:4579,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:4585,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:4586,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4591,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 2
    argNames:
    - ctx
    - rope
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4594
      start: 4561
    functionDepth: 5
    functionLinenumber: 4561
    functionLinenumberEnd: 4594
    functionName: js_rebalancee_string_rope
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_IsNull
    - js_rebalancee_string_rope_rec
    - JS_IsException
    - JS_FreeValue
    - JS_AtomToString
    - js_new_string_rope
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_rebalancee_string_rope(JSContext *ctx, JSValueConst rope)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:4602,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4602,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4603,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:4604,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:4605,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4606,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:4610,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4610,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4611,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:4612,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:4613,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4614,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4620,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4621,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4623,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4627,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4628,1
    - Dst: JS_ConcatString2
      Src: /src/gpac/src/quickjs/quickjs.c:4630,1
    - Dst: js_new_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:4632,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:4636,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4637,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4638,1
    - Dst: JS_ConcatString2
      Src: /src/gpac/src/quickjs/quickjs.c:4640,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:4640,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:4641,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4642,1
    - Dst: js_new_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:4645,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:4645,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4646,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4651,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4653,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4655,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:4658,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4659,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4660,1
    - Dst: JS_ConcatString2
      Src: /src/gpac/src/quickjs/quickjs.c:4662,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:4662,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:4663,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4664,1
    - Dst: js_new_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:4667,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:4667,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4668,1
    - Dst: js_new_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:4672,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 63
    argCount: 3
    argNames:
    - ctx
    - op1
    - op2
    argTypes:
    - JSContext*
    - JSValue
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4673
      start: 4598
    functionDepth: 6
    functionLinenumber: 4598
    functionLinenumberEnd: 4673
    functionName: JS_ConcatString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - unlikely
    - JS_ToStringFree
    - JS_VALUE_GET_STRING_ROPE
    - JS_ConcatString2
    - js_new_string_rope
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ConcatString(JSContext *ctx, JSValue op1, JSValue op2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - hash_size
    - prop_size
    argTypes:
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4681
      start: 4677
    functionDepth: 0
    functionLinenumber: 4677
    functionLinenumberEnd: 4681
    functionName: get_shape_size
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t get_shape_size(size_t hash_size, size_t prop_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sh_alloc
    - hash_size
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4686
      start: 4683
    functionDepth: 0
    functionLinenumber: 4683
    functionLinenumberEnd: 4686
    functionName: get_shape_from_alloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSShape
    signature: JSShape *get_shape_from_alloc(void *sh_alloc, size_t hash_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sh
    argTypes:
    - JSShape*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4691
      start: 4688
    functionDepth: 0
    functionLinenumber: 4688
    functionLinenumberEnd: 4691
    functionName: prop_hash_end
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t *prop_hash_end(JSShape *sh)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: prop_hash_end
      Src: /src/gpac/src/quickjs/quickjs.c:4695,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sh
    argTypes:
    - JSShape*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4696
      start: 4693
    functionDepth: 1
    functionLinenumber: 4693
    functionLinenumberEnd: 4696
    functionName: get_alloc_from_shape
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - prop_hash_end
    linkageType: ''
    returnType: void
    signature: void *get_alloc_from_shape(JSShape *sh)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sh
    argTypes:
    - JSShape*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4701
      start: 4698
    functionDepth: 0
    functionLinenumber: 4698
    functionLinenumberEnd: 4701
    functionName: get_shape_prop
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSShapeProperty
    signature: JSShapeProperty *get_shape_prop(JSShape *sh)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_mallocz_rt
      Src: /src/gpac/src/quickjs/quickjs.c:4708,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4713
      start: 4703
    functionDepth: 3
    functionLinenumber: 4703
    functionLinenumberEnd: 4713
    functionName: init_shape_hash
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_mallocz_rt
    linkageType: ''
    returnType: int
    signature: int init_shape_hash(JSRuntime *rt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - h
    - val
    argTypes:
    - uint32_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4719
      start: 4716
    functionDepth: 0
    functionLinenumber: 4716
    functionLinenumberEnd: 4719
    functionName: shape_hash
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t shape_hash(uint32_t h, uint32_t val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - h
    - hash_bits
    argTypes:
    - uint32_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4725
      start: 4722
    functionDepth: 0
    functionLinenumber: 4722
    functionLinenumberEnd: 4725
    functionName: get_shape_hash
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t get_shape_hash(uint32_t h, int hash_bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:4730,1
    - Dst: shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:4732,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - proto
    argTypes:
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4734
      start: 4727
    functionDepth: 1
    functionLinenumber: 4727
    functionLinenumberEnd: 4734
    functionName: shape_initial_hash
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - shape_hash
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t shape_initial_hash(JSObject *proto)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_mallocz_rt
      Src: /src/gpac/src/quickjs/quickjs.c:4743,1
    - Dst: get_shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:4750,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:4755,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - rt
    - new_shape_hash_bits
    argTypes:
    - JSRuntime*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4760
      start: 4736
    functionDepth: 3
    functionLinenumber: 4736
    functionLinenumberEnd: 4760
    functionName: resize_shape_hash
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - js_mallocz_rt
    - get_shape_hash
    linkageType: ''
    returnType: int
    signature: int resize_shape_hash(JSRuntime *rt, int new_shape_hash_bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:4765,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - sh
    argTypes:
    - JSRuntime*
    - JSShape*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4769
      start: 4762
    functionDepth: 1
    functionLinenumber: 4762
    functionLinenumberEnd: 4769
    functionName: js_shape_hash_link
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_shape_hash
    linkageType: ''
    returnType: void
    signature: void js_shape_hash_link(JSRuntime *rt, JSShape *sh)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:4776,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - rt
    - sh
    argTypes:
    - JSRuntime*
    - JSShape*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4782
      start: 4771
    functionDepth: 1
    functionLinenumber: 4771
    functionLinenumberEnd: 4782
    functionName: js_shape_hash_unlink
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_shape_hash
    linkageType: ''
    returnType: void
    signature: void js_shape_hash_unlink(JSRuntime *rt, JSShape *sh)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:4792,1
    - Dst: get_shape_size
      Src: /src/gpac/src/quickjs/quickjs.c:4792,1
    - Dst: get_shape_from_alloc
      Src: /src/gpac/src/quickjs/quickjs.c:4795,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:4797,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:4799,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:4799,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:4801,1
    - Dst: prop_hash_end
      Src: /src/gpac/src/quickjs/quickjs.c:4801,1
    - Dst: prop_hash_end
      Src: /src/gpac/src/quickjs/quickjs.c:4801,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 4
    argNames:
    - ctx
    - proto
    - hash_size
    - prop_size
    argTypes:
    - JSContext*
    - JSObject*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4809
      start: 4785
    functionDepth: 3
    functionLinenumber: 4785
    functionLinenumberEnd: 4809
    functionName: js_new_shape_nohash
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - add_gc_object
    - js_malloc
    - JS_MKPTR
    - memset
    - get_shape_size
    - prop_hash_end
    - get_shape_from_alloc
    linkageType: ''
    returnType: JSShape
    signature: "JSShape *js_new_shape_nohash(JSContext *ctx, JSObject *proto,\n                                           int
      hash_size, int prop_size)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: resize_shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:4820,1
    - Dst: js_new_shape_nohash
      Src: /src/gpac/src/quickjs/quickjs.c:4823,1
    - Dst: shape_initial_hash
      Src: /src/gpac/src/quickjs/quickjs.c:4828,1
    - Dst: js_shape_hash_link
      Src: /src/gpac/src/quickjs/quickjs.c:4830,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - ctx
    - proto
    - hash_size
    - prop_size
    argTypes:
    - JSContext*
    - JSObject*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4832
      start: 4812
    functionDepth: 4
    functionLinenumber: 4812
    functionLinenumberEnd: 4832
    functionName: js_new_shape2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_shape_hash_link
    - resize_shape_hash
    - shape_initial_hash
    - js_new_shape_nohash
    linkageType: ''
    returnType: no_inline
    signature: "no_inline *js_new_shape2(JSContext *ctx, JSObject *proto,\n                                        int
      hash_size, int prop_size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_new_shape2
      Src: /src/gpac/src/quickjs/quickjs.c:4836,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - proto
    argTypes:
    - JSContext*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4838
      start: 4834
    functionDepth: 5
    functionLinenumber: 4834
    functionLinenumberEnd: 4838
    functionName: js_new_shape
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_new_shape2
    linkageType: ''
    returnType: JSShape
    signature: JSShape *js_new_shape(JSContext *ctx, JSObject *proto)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: get_shape_size
      Src: /src/gpac/src/quickjs/quickjs.c:4852,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:4853,1
    - Dst: get_alloc_from_shape
      Src: /src/gpac/src/quickjs/quickjs.c:4856,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:4857,1
    - Dst: get_shape_from_alloc
      Src: /src/gpac/src/quickjs/quickjs.c:4858,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:4860,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:4863,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:4863,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:4865,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:4866,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - ctx
    - sh1
    argTypes:
    - JSContext*
    - JSShape*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4869
      start: 4843
    functionDepth: 3
    functionLinenumber: 4843
    functionLinenumberEnd: 4869
    functionName: js_clone_shape
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - get_shape_prop
    - add_gc_object
    - js_malloc
    - memcpy
    - JS_MKPTR
    - get_shape_size
    - JS_DupAtom
    - get_alloc_from_shape
    - get_shape_from_alloc
    linkageType: ''
    returnType: JSShape
    signature: JSShape *js_clone_shape(JSContext *ctx, JSShape *sh1)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - sh
    argTypes:
    - JSShape*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4875
      start: 4871
    functionDepth: 0
    functionLinenumber: 4871
    functionLinenumberEnd: 4875
    functionName: js_dup_shape
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSShape
    signature: JSShape *js_dup_shape(JSShape *sh)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:4882,1
    - Dst: js_shape_hash_unlink
      Src: /src/gpac/src/quickjs/quickjs.c:4884,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:4886,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:4886,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:4888,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:4890,1
    - Dst: remove_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:4893,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:4894,1
    - Dst: get_alloc_from_shape
      Src: /src/gpac/src/quickjs/quickjs.c:4894,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - rt
    - sh
    argTypes:
    - JSRuntime*
    - JSShape*
    assertStmts:
    - condition: (sh->header.ref_count == 0)
      pos:
        line_end: 4881
        line_start: 4881
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 4895
      start: 4877
    functionDepth: 5
    functionLinenumber: 4877
    functionLinenumberEnd: 4895
    functionName: js_free_shape0
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - remove_gc_object
    - get_shape_prop
    - js_shape_hash_unlink
    - JS_FreeAtomRT
    - JS_MKPTR
    - assert
    - JS_FreeValueRT
    - get_alloc_from_shape
    - js_free_rt
    linkageType: ''
    returnType: void
    signature: void js_free_shape0(JSRuntime *rt, JSShape *sh)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:4899,1
    - Dst: js_free_shape0
      Src: /src/gpac/src/quickjs/quickjs.c:4900,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - rt
    - sh
    argTypes:
    - JSRuntime*
    - JSShape*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4902
      start: 4897
    functionDepth: 6
    functionLinenumber: 4897
    functionLinenumberEnd: 4902
    functionName: js_free_shape
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_shape0
    - unlikely
    linkageType: ''
    returnType: void
    signature: void js_free_shape(JSRuntime *rt, JSShape *sh)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_free_shape
      Src: /src/gpac/src/quickjs/quickjs.c:4907,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - rt
    - sh
    argTypes:
    - JSRuntime*
    - JSShape*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4908
      start: 4904
    functionDepth: 7
    functionLinenumber: 4904
    functionLinenumberEnd: 4908
    functionName: js_free_shape_null
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_free_shape
    linkageType: ''
    returnType: void
    signature: void js_free_shape_null(JSRuntime *rt, JSShape *sh)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:4922,1
    - Dst: js_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:4927,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:4928,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:4938,1
    - Dst: get_shape_size
      Src: /src/gpac/src/quickjs/quickjs.c:4938,1
    - Dst: get_shape_from_alloc
      Src: /src/gpac/src/quickjs/quickjs.c:4941,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:4942,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:4944,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:4946,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:4952,1
    - Dst: prop_hash_end
      Src: /src/gpac/src/quickjs/quickjs.c:4952,1
    - Dst: prop_hash_end
      Src: /src/gpac/src/quickjs/quickjs.c:4953,1
    - Dst: prop_hash_end
      Src: /src/gpac/src/quickjs/quickjs.c:4957,1
    - Dst: prop_hash_end
      Src: /src/gpac/src/quickjs/quickjs.c:4958,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:4963,1
    - Dst: prop_hash_end
      Src: /src/gpac/src/quickjs/quickjs.c:4963,1
    - Dst: prop_hash_end
      Src: /src/gpac/src/quickjs/quickjs.c:4963,1
    - Dst: prop_hash_end
      Src: /src/gpac/src/quickjs/quickjs.c:4964,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:4966,1
    - Dst: get_alloc_from_shape
      Src: /src/gpac/src/quickjs/quickjs.c:4966,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 38
    argCount: 4
    argNames:
    - ctx
    - psh
    - p
    - count
    argTypes:
    - JSContext*
    - JSShape**
    - JSObject*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4970
      start: 4911
    functionDepth: 3
    functionLinenumber: 4911
    functionLinenumberEnd: 4970
    functionName: resize_properties
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc
    - memcpy
    - js_realloc
    - list_add_tail
    - unlikely
    - js_free
    - memset
    - get_shape_size
    - prop_hash_end
    - get_alloc_from_shape
    - max_int
    - list_del
    - get_shape_from_alloc
    linkageType: ''
    returnType: no_inline
    signature: "no_inline resize_properties(JSContext *ctx, JSShape **psh,\n                                       JSObject
      *p, uint32_t count)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:4983,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:4985,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:4987,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:4996,1
    - Dst: get_shape_size
      Src: /src/gpac/src/quickjs/quickjs.c:4996,1
    - Dst: get_shape_from_alloc
      Src: /src/gpac/src/quickjs/quickjs.c:4999,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:5000,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:5001,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:5002,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:5004,1
    - Dst: prop_hash_end
      Src: /src/gpac/src/quickjs/quickjs.c:5004,1
    - Dst: prop_hash_end
      Src: /src/gpac/src/quickjs/quickjs.c:5005,1
    - Dst: prop_hash_end
      Src: /src/gpac/src/quickjs/quickjs.c:5016,1
    - Dst: prop_hash_end
      Src: /src/gpac/src/quickjs/quickjs.c:5017,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:5024,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:5031,1
    - Dst: get_alloc_from_shape
      Src: /src/gpac/src/quickjs/quickjs.c:5031,1
    - Dst: js_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:5034,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 46
    argCount: 2
    argNames:
    - ctx
    - p
    argTypes:
    - JSContext*
    - JSObject*
    assertStmts:
    - condition: (!sh->is_hashed)
      pos:
        line_end: 4982
        line_start: 4982
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (new_size <= sh->prop_size)
      pos:
        line_end: 4986
        line_start: 4986
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (j == (sh->prop_count - sh->deleted_prop_count))
      pos:
        line_end: 5023
        line_start: 5023
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 5038
      start: 4973
    functionDepth: 3
    functionLinenumber: 4973
    functionLinenumberEnd: 5038
    functionName: compact_properties
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc
    - memcpy
    - js_free
    - assert
    - list_add_tail
    - js_realloc
    - memset
    - get_shape_size
    - prop_hash_end
    - get_alloc_from_shape
    - max_int
    - list_del
    - get_shape_from_alloc
    linkageType: ''
    returnType: int
    signature: int compact_properties(JSContext *ctx, JSObject *p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: js_shape_hash_unlink
      Src: /src/gpac/src/quickjs/quickjs.c:5051,1
    - Dst: shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:5052,1
    - Dst: shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:5052,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:5055,1
    - Dst: resize_properties
      Src: /src/gpac/src/quickjs/quickjs.c:5056,1
    - Dst: js_shape_hash_link
      Src: /src/gpac/src/quickjs/quickjs.c:5060,1
    - Dst: js_shape_hash_link
      Src: /src/gpac/src/quickjs/quickjs.c:5067,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:5071,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:5073,1
    - Dst: prop_hash_end
      Src: /src/gpac/src/quickjs/quickjs.c:5078,1
    - Dst: prop_hash_end
      Src: /src/gpac/src/quickjs/quickjs.c:5079,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 5
    argNames:
    - ctx
    - psh
    - p
    - atom
    - prop_flags
    argTypes:
    - JSContext*
    - JSShape**
    - JSObject*
    - JSAtom
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5081
      start: 5040
    functionDepth: 4
    functionLinenumber: 5040
    functionLinenumberEnd: 5081
    functionName: add_shape_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_shape_prop
    - js_shape_hash_unlink
    - js_shape_hash_link
    - unlikely
    - shape_hash
    - resize_properties
    - JS_DupAtom
    - prop_hash_end
    linkageType: ''
    returnType: int
    signature: "int add_shape_property(JSContext *ctx, JSShape **psh,\n                              JSObject
      *p, JSAtom atom, int prop_flags)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: shape_initial_hash
      Src: /src/gpac/src/quickjs/quickjs.c:5090,1
    - Dst: get_shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:5091,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - rt
    - proto
    argTypes:
    - JSRuntime*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5100
      start: 5085
    functionDepth: 2
    functionLinenumber: 5085
    functionLinenumberEnd: 5100
    functionName: find_hashed_shape_proto
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_shape_hash
    - shape_initial_hash
    linkageType: ''
    returnType: JSShape
    signature: JSShape *find_hashed_shape_proto(JSRuntime *rt, JSObject *proto)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:5111,1
    - Dst: shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:5112,1
    - Dst: get_shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:5113,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:5121,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:5122,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:5125,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:5126,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 22
    argCount: 4
    argNames:
    - rt
    - sh
    - atom
    - prop_flags
    argTypes:
    - JSRuntime*
    - JSShape*
    - JSAtom
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5133
      start: 5104
    functionDepth: 1
    functionLinenumber: 5104
    functionLinenumberEnd: 5133
    functionName: find_hashed_shape_prop
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - unlikely
    - shape_hash
    - get_shape_hash
    linkageType: ''
    returnType: JSShape
    signature: "JSShape *find_hashed_shape_prop(JSRuntime *rt, JSShape *sh,\n                                       JSAtom
      atom, int prop_flags)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:5141,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:5145,1
    - Dst: JS_AtomGetStrRT
      Src: /src/gpac/src/quickjs/quickjs.c:5145,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:5148,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - rt
    - i
    - sh
    argTypes:
    - JSRuntime*
    - int
    - JSShape*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5149
      start: 5135
    functionDepth: 2
    functionLinenumber: 5135
    functionLinenumberEnd: 5149
    functionName: JS_DumpShape
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - JS_AtomGetStrRT
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused JS_DumpShape(JSRuntime *rt, int i, JSShape *sh)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:5159,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:5160,1
    - Dst: JS_DumpShape
      Src: /src/gpac/src/quickjs/quickjs.c:5163,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:5164,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:5168,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:5169,1
    - Dst: JS_DumpShape
      Src: /src/gpac/src/quickjs/quickjs.c:5173,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:5177,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts:
    - condition: (sh->is_hashed)
      pos:
        line_end: 5163
        line_start: 5163
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 5178
      start: 5151
    functionDepth: 3
    functionLinenumber: 5151
    functionLinenumberEnd: 5178
    functionName: JS_DumpShapes
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - printf
    - JS_DumpShape
    - assert
    - list_entry
    - list_for_each
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused JS_DumpShapes(JSRuntime *rt)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: js_trigger_gc
      Src: /src/gpac/src/quickjs/quickjs.c:5184,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:5185,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:5186,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:5201,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:5202,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:5203,1
    - Dst: js_free_shape
      Src: /src/gpac/src/quickjs/quickjs.c:5205,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:5221,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:5226,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:5229,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:5277,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:5278,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 93
    argCount: 3
    argNames:
    - ctx
    - sh
    - class_id
    argTypes:
    - JSContext*
    - JSShape*
    - JSClassID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5279
      start: 5180
    functionDepth: 7
    functionLinenumber: 5180
    functionLinenumberEnd: 5279
    functionName: JS_NewObjectFromShape
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - add_gc_object
    - js_malloc
    - js_free
    - JS_MKPTR
    - js_trigger_gc
    - unlikely
    - likely
    - add_property
    - JS_NewInt32
    - js_free_shape
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_NewObjectFromShape(JSContext *ctx, JSShape *sh, JSClassID
      class_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:5283,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5286,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - proto_val
    argTypes:
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5287
      start: 5281
    functionDepth: 1
    functionLinenumber: 5281
    functionLinenumberEnd: 5287
    functionName: get_proto_obj
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: JSObject
    signature: JSObject *get_proto_obj(JSValueConst proto_val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: get_proto_obj
      Src: /src/gpac/src/quickjs/quickjs.c:5296,1
    - Dst: find_hashed_shape_proto
      Src: /src/gpac/src/quickjs/quickjs.c:5297,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:5298,1
    - Dst: js_dup_shape
      Src: /src/gpac/src/quickjs/quickjs.c:5299,1
    - Dst: js_new_shape
      Src: /src/gpac/src/quickjs/quickjs.c:5301,1
    - Dst: JS_NewObjectFromShape
      Src: /src/gpac/src/quickjs/quickjs.c:5305,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - ctx
    - proto_val
    - class_id
    argTypes:
    - JSContext*
    - JSValueConst
    - JSClassID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5306
      start: 5290
    functionDepth: 8
    functionLinenumber: 5290
    functionLinenumberEnd: 5306
    functionName: JS_NewObjectProtoClass
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_new_shape
    - js_dup_shape
    - likely
    - find_hashed_shape_proto
    - JS_NewObjectFromShape
    - get_proto_obj
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_NewObjectProtoClass(JSContext *ctx, JSValueConst proto_val,\n
      \                              JSClassID class_id)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: clz32
      Src: /src/gpac/src/quickjs/quickjs.c:5321,1
    - Dst: get_proto_obj
      Src: /src/gpac/src/quickjs/quickjs.c:5324,1
    - Dst: js_new_shape_nohash
      Src: /src/gpac/src/quickjs/quickjs.c:5325,1
    - Dst: JS_NewObjectFromShape
      Src: /src/gpac/src/quickjs/quickjs.c:5328,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 4
    argNames:
    - ctx
    - proto_val
    - class_id
    - n_alloc_props
    argTypes:
    - JSContext*
    - JSValueConst
    - JSClassID
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5329
      start: 5310
    functionDepth: 8
    functionLinenumber: 5310
    functionLinenumberEnd: 5329
    functionName: JS_NewObjectProtoClassAlloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - clz32
    - JS_NewObjectFromShape
    - get_proto_obj
    - js_new_shape_nohash
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_NewObjectProtoClassAlloc(JSContext *ctx, JSValueConst proto_val,\n
      \                                          JSClassID class_id, int n_alloc_props)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:5336,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5337,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:5345,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5349
      start: 5332
    functionDepth: 1
    functionLinenumber: 5332
    functionLinenumberEnd: 5349
    functionName: JS_GetObjectData
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_DupValue
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_GetObjectData(JSContext *ctx, JSValueConst obj)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:5356,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5357,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:5365,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:5372,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:5373,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:5374,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 3
    argNames:
    - ctx
    - obj
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5376
      start: 5352
    functionDepth: 1
    functionLinenumber: 5352
    functionLinenumberEnd: 5376
    functionName: JS_SetObjectData
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    linkageType: ''
    returnType: int
    signature: int JS_SetObjectData(JSContext *ctx, JSValueConst obj, JSValue val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:5380,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - class_id
    argTypes:
    - JSContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5381
      start: 5378
    functionDepth: 9
    functionLinenumber: 5378
    functionLinenumberEnd: 5381
    functionName: JS_NewObjectClass
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 106
    functionsReached:
    - JS_NewObjectProtoClass
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_NewObjectClass(JSContext *ctx, int class_id)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:5385,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - proto
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5386
      start: 5383
    functionDepth: 9
    functionLinenumber: 5383
    functionLinenumberEnd: 5386
    functionName: JS_NewObjectProto
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectProtoClass
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_NewObjectProto(JSContext *ctx, JSValueConst proto)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectFromShape
      Src: /src/gpac/src/quickjs/quickjs.c:5390,1
    - Dst: js_dup_shape
      Src: /src/gpac/src/quickjs/quickjs.c:5390,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5392
      start: 5388
    functionDepth: 8
    functionLinenumber: 5388
    functionLinenumberEnd: 5392
    functionName: JS_NewArray
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 23
    functionsReached:
    - JS_NewObjectFromShape
    - js_dup_shape
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_NewArray(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:5397,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5398
      start: 5394
    functionDepth: 9
    functionLinenumber: 5394
    functionLinenumberEnd: 5398
    functionName: JS_NewObject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 67
    functionsReached:
    - JS_NewObjectProtoClass
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_NewObject(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:5404,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:5404,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:5406,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:5407,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ctx
    - func_obj
    - name
    - len
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5408
      start: 5400
    functionDepth: 3
    functionLinenumber: 5400
    functionLinenumberEnd: 5408
    functionName: js_function_set_properties
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt32
    - JS_AtomToString
    - JS_DefinePropertyValue
    linkageType: ''
    returnType: void
    signature: "void js_function_set_properties(JSContext *ctx, JSValueConst func_obj,\n
      \                                      JSAtom name, int len)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 1
    argNames:
    - class_id
    argTypes:
    - JSClassID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5416
      start: 5410
    functionDepth: 0
    functionLinenumber: 5410
    functionLinenumberEnd: 5416
    functionName: js_class_has_bytecode
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL js_class_has_bytecode(JSClassID class_id)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:5422,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5424,1
    - Dst: js_class_has_bytecode
      Src: /src/gpac/src/quickjs/quickjs.c:5425,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - val
    argTypes:
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5428
      start: 5419
    functionDepth: 1
    functionLinenumber: 5419
    functionLinenumberEnd: 5428
    functionName: JS_GetFunctionBytecode
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    - js_class_has_bytecode
    linkageType: ''
    returnType: JSFunctionBytecode
    signature: JSFunctionBytecode *JS_GetFunctionBytecode(JSValueConst val)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:5436,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5438,1
    - Dst: js_class_has_bytecode
      Src: /src/gpac/src/quickjs/quickjs.c:5439,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:5445,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:5445,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:5447,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5448,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:5448,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - ctx
    - func_obj
    - home_obj
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5453
      start: 5430
    functionDepth: 1
    functionLinenumber: 5430
    functionLinenumberEnd: 5453
    functionName: js_method_set_home_object
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - js_class_has_bytecode
    - JS_MKPTR
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    linkageType: ''
    returnType: void
    signature: "void js_method_set_home_object(JSContext *ctx, JSValueConst func_obj,\n
      \                                     JSValueConst home_obj)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:5459,1
    - Dst: JS_AtomSymbolHasDescription
      Src: /src/gpac/src/quickjs/quickjs.c:5460,1
    - Dst: JS_ConcatString3
      Src: /src/gpac/src/quickjs/quickjs.c:5461,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5464
      start: 5455
    functionDepth: 9
    functionLinenumber: 5455
    functionLinenumberEnd: 5464
    functionName: js_get_function_name
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AtomToString
    - JS_AtomSymbolHasDescription
    - JS_ConcatString3
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_get_function_name(JSContext *ctx, JSAtom name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: js_get_function_name
      Src: /src/gpac/src/quickjs/quickjs.c:5475,1
    - Dst: JS_ConcatString3
      Src: /src/gpac/src/quickjs/quickjs.c:5477,1
    - Dst: JS_ConcatString3
      Src: /src/gpac/src/quickjs/quickjs.c:5479,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:5481,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:5483,1
    - Dst: js_method_set_home_object
      Src: /src/gpac/src/quickjs/quickjs.c:5486,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - ctx
    - func_obj
    - name
    - flags
    - home_obj
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - int
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5488
      start: 5470
    functionDepth: 10
    functionLinenumber: 5470
    functionLinenumberEnd: 5488
    functionName: js_method_set_properties
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_get_function_name
    - js_method_set_home_object
    - JS_IsException
    - JS_DefinePropertyValue
    - JS_ConcatString3
    linkageType: ''
    returnType: int
    signature: "int js_method_set_properties(JSContext *ctx, JSValueConst func_obj,\n
      \                                   JSAtom name, int flags, JSValueConst home_obj)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectProtoClassAlloc
      Src: /src/gpac/src/quickjs/quickjs.c:5501,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:5503,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:5505,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5507,1
    - Dst: JS_DupContext
      Src: /src/gpac/src/quickjs/quickjs.c:5508,1
    - Dst: JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:5519,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:5521,1
    - Dst: js_function_set_properties
      Src: /src/gpac/src/quickjs/quickjs.c:5524,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:5525,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 8
    argNames:
    - ctx
    - func
    - name
    - length
    - cproto
    - magic
    - proto_val
    - n_fields
    argTypes:
    - JSContext*
    - JSCFunction*
    - char*
    - int
    - JSCFunctionEnum
    - int
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5527
      start: 5491
    functionDepth: 9
    functionLinenumber: 5491
    functionLinenumberEnd: 5527
    functionName: JS_NewCFunction3
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupContext
    - JS_FreeAtom
    - JS_IsException
    - JS_FreeValue
    - JS_NewObjectProtoClass
    - JS_VALUE_GET_OBJ
    - JS_NewObjectProtoClassAlloc
    - JS_NewAtom
    - js_function_set_properties
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_NewCFunction3(JSContext *ctx, JSCFunction *func,\n                                const
      char *name,\n                                int length, JSCFunctionEnum cproto,
      int magic,\n                                JSValueConst proto_val, int n_fields)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewCFunction3
      Src: /src/gpac/src/quickjs/quickjs.c:5534,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ctx
    - func
    - name
    - length
    - cproto
    - magic
    argTypes:
    - JSContext*
    - JSCFunction*
    - char*
    - int
    - JSCFunctionEnum
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5536
      start: 5530
    functionDepth: 10
    functionLinenumber: 5530
    functionLinenumberEnd: 5536
    functionName: JS_NewCFunction2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 8
    functionsReached:
    - JS_NewCFunction3
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_NewCFunction2(JSContext *ctx, JSCFunction *func,\n                         const
      char *name,\n                         int length, JSCFunctionEnum cproto, int
      magic)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:5548,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:5553,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:5555,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5557
      start: 5546
    functionDepth: 2
    functionLinenumber: 5546
    functionLinenumberEnd: 5557
    functionName: js_c_function_data_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - js_free_rt
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void js_c_function_data_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:5562,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:5567,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5570
      start: 5559
    functionDepth: 1
    functionLinenumber: 5559
    functionLinenumberEnd: 5570
    functionName: js_c_function_data_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: "void js_c_function_data_mark(JSRuntime *rt, JSValueConst val,\n                                    JS_MarkFunc
      *mark_func)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:5576,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:5581,1
    - Dst: alloca
      Src: /src/gpac/src/quickjs/quickjs.c:5582,1
    - Dst: JSCFunctionDataRecord*::func
      Src: /src/gpac/src/quickjs/quickjs.c:5591,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 6
    argNames:
    - ctx
    - func_obj
    - this_val
    - argc
    - argv
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5592
      start: 5572
    functionDepth: 1
    functionLinenumber: 5572
    functionLinenumberEnd: 5592
    functionName: js_c_function_data_call
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - alloca
    - unlikely
    - JSCFunctionDataRecord*::func
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_c_function_data_call(JSContext *ctx, JSValueConst func_obj,\n
      \                                      JSValueConst this_val,\n                                       int
      argc, JSValueConst *argv, int flags)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:5602,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:5604,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:5606,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:5608,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:5616,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:5617,1
    - Dst: js_function_set_properties
      Src: /src/gpac/src/quickjs/quickjs.c:5618,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 6
    argNames:
    - ctx
    - func
    - length
    - magic
    - data_len
    - data
    argTypes:
    - JSContext*
    - JSCFunctionData*
    - int
    - int
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5621
      start: 5594
    functionDepth: 9
    functionLinenumber: 5594
    functionLinenumberEnd: 5621
    functionName: JS_NewCFunctionData
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_IsException
    - JS_FreeValue
    - js_malloc
    - JS_NewObjectProtoClass
    - JS_SetOpaque
    - js_function_set_properties
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_NewCFunctionData(JSContext *ctx, JSCFunctionData *func,\n
      \                           int length, int magic, int data_len,\n                            JSValueConst
      *data)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pr
    argTypes:
    - JSProperty*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5626
      start: 5623
    functionDepth: 0
    functionLinenumber: 5623
    functionLinenumberEnd: 5626
    functionName: js_autoinit_get_realm
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSContext
    signature: JSContext *js_autoinit_get_realm(JSProperty *pr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pr
    argTypes:
    - JSProperty*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5631
      start: 5628
    functionDepth: 0
    functionLinenumber: 5628
    functionLinenumberEnd: 5631
    functionName: js_autoinit_get_id
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSAutoInitIDEnum
    signature: JSAutoInitIDEnum js_autoinit_get_id(JSProperty *pr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_FreeContext
      Src: /src/gpac/src/quickjs/quickjs.c:5635,1
    - Dst: js_autoinit_get_realm
      Src: /src/gpac/src/quickjs/quickjs.c:5635,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - pr
    argTypes:
    - JSRuntime*
    - JSProperty*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5636
      start: 5633
    functionDepth: 3
    functionLinenumber: 5633
    functionLinenumberEnd: 5636
    functionName: js_autoinit_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_autoinit_get_realm
    - JS_FreeContext
    linkageType: ''
    returnType: void
    signature: void js_autoinit_free(JSRuntime *rt, JSProperty *pr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:5641,1
    - Dst: js_autoinit_get_realm
      Src: /src/gpac/src/quickjs/quickjs.c:5641,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - rt
    - pr
    - mark_func
    argTypes:
    - JSRuntime*
    - JSProperty*
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5642
      start: 5638
    functionDepth: 1
    functionLinenumber: 5638
    functionLinenumberEnd: 5642
    functionName: js_autoinit_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_autoinit_get_realm
    - mark_func
    linkageType: ''
    returnType: void
    signature: "void js_autoinit_mark(JSRuntime *rt, JSProperty *pr,\n                             JS_MarkFunc
      *mark_func)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:5646,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:5649,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:5649,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:5651,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:5651,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:5653,1
    - Dst: js_autoinit_free
      Src: /src/gpac/src/quickjs/quickjs.c:5655,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:5658,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - rt
    - pr
    - prop_flags
    argTypes:
    - JSRuntime*
    - JSProperty*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5660
      start: 5644
    functionDepth: 4
    functionLinenumber: 5644
    functionLinenumberEnd: 5660
    functionName: free_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - js_autoinit_free
    - unlikely
    - JS_FreeValueRT
    - free_var_ref
    linkageType: ''
    returnType: void
    signature: void free_property(JSRuntime *rt, JSProperty *pr, int prop_flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: prop_hash_end
      Src: /src/gpac/src/quickjs/quickjs.c:5670,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:5671,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:5674,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5680
      start: 5662
    functionDepth: 1
    functionLinenumber: 5662
    functionLinenumberEnd: 5680
    functionName: "JSShapeProperty *find_own_property1(JSObject *p,\n                                                        JSAtom
      atom)"
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - likely
    - get_shape_prop
    - prop_hash_end
    linkageType: ''
    returnType: force_inline
    signature: "force_inline JSShapeProperty *find_own_property1(JSObject *p,\n                                                        JSAtom
      atom)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: prop_hash_end
      Src: /src/gpac/src/quickjs/quickjs.c:5691,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:5692,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:5695,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5704
      start: 5682
    functionDepth: 1
    functionLinenumber: 5682
    functionLinenumberEnd: 5704
    functionName: "JSShapeProperty *find_own_property(JSProperty **ppr,\n                                                       JSObject
      *p,\n                                                       JSAtom atom)"
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - likely
    - get_shape_prop
    - prop_hash_end
    linkageType: ''
    returnType: force_inline
    signature: "force_inline JSShapeProperty *find_own_property(JSProperty **ppr,\n
      \                                                      JSObject *p,\n                                                       JSAtom
      atom)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5709
      start: 5707
    functionDepth: 0
    functionLinenumber: 5707
    functionLinenumberEnd: 5709
    functionName: set_cycle_flag
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_cycle_flag(JSContext *ctx, JSValueConst obj)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:5714,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:5717,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:5719,1
    - Dst: async_func_free
      Src: /src/gpac/src/quickjs/quickjs.c:5721,1
    - Dst: remove_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:5723,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:5724,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - rt
    - var_ref
    argTypes:
    - JSRuntime*
    - JSVarRef*
    assertStmts:
    - condition: (var_ref->header.ref_count > 0)
      pos:
        line_end: 5713
        line_start: 5713
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 5727
      start: 5711
    functionDepth: 2
    functionLinenumber: 5711
    functionLinenumberEnd: 5727
    functionName: free_var_ref
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - async_func_free
    - remove_gc_object
    - assert
    - JS_FreeValueRT
    - js_free_rt
    - list_del
    linkageType: ''
    returnType: void
    signature: void free_var_ref(JSRuntime *rt, JSVarRef *var_ref)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5731,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:5735,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:5737,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5738
      start: 5729
    functionDepth: 2
    functionLinenumber: 5729
    functionLinenumberEnd: 5738
    functionName: js_array_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - JS_VALUE_GET_OBJ
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void js_array_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5743,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:5747,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5749
      start: 5740
    functionDepth: 1
    functionLinenumber: 5740
    functionLinenumberEnd: 5749
    functionName: js_array_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: "void js_array_mark(JSRuntime *rt, JSValueConst val,\n                          JS_MarkFunc
      *mark_func)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5753,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:5754,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5756
      start: 5751
    functionDepth: 1
    functionLinenumber: 5751
    functionLinenumberEnd: 5756
    functionName: js_object_data_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void js_object_data_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5761,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:5762,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5763
      start: 5758
    functionDepth: 1
    functionLinenumber: 5758
    functionLinenumberEnd: 5763
    functionName: js_object_data_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: "void js_object_data_mark(JSRuntime *rt, JSValueConst val,\n                                JS_MarkFunc
      *mark_func)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5767,1
    - Dst: JS_FreeContext
      Src: /src/gpac/src/quickjs/quickjs.c:5770,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5771
      start: 5765
    functionDepth: 3
    functionLinenumber: 5765
    functionLinenumberEnd: 5771
    functionName: js_c_function_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_FreeContext
    linkageType: ''
    returnType: void
    signature: void js_c_function_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5776,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:5779,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5780
      start: 5773
    functionDepth: 1
    functionLinenumber: 5773
    functionLinenumberEnd: 5780
    functionName: js_c_function_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - mark_func
    linkageType: ''
    returnType: void
    signature: "void js_c_function_mark(JSRuntime *rt, JSValueConst val,\n                               JS_MarkFunc
      *mark_func)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5784,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:5791,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:5791,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:5798,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:5799,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:5801,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:5801,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5803
      start: 5782
    functionDepth: 3
    functionLinenumber: 5782
    functionLinenumberEnd: 5803
    functionName: js_bytecode_function_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - JS_VALUE_GET_OBJ
    - JS_FreeValueRT
    - free_var_ref
    - js_free_rt
    linkageType: ''
    returnType: void
    signature: void js_bytecode_function_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5808,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:5814,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:5814,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:5822,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:5828,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:5828,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5830
      start: 5805
    functionDepth: 1
    functionLinenumber: 5805
    functionLinenumberEnd: 5830
    functionName: js_bytecode_function_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - JS_VALUE_GET_OBJ
    - JS_MarkValue
    - mark_func
    linkageType: ''
    returnType: void
    signature: "void js_bytecode_function_mark(JSRuntime *rt, JSValueConst val,\n
      \                                     JS_MarkFunc *mark_func)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5834,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:5838,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:5839,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:5841,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:5843,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5844
      start: 5832
    functionDepth: 2
    functionLinenumber: 5832
    functionLinenumberEnd: 5844
    functionName: js_bound_function_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - JS_VALUE_GET_OBJ
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void js_bound_function_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5849,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:5853,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:5854,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:5856,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5857
      start: 5846
    functionDepth: 1
    functionLinenumber: 5846
    functionLinenumberEnd: 5857
    functionName: js_bound_function_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: "void js_bound_function_mark(JSRuntime *rt, JSValueConst val,\n                                JS_MarkFunc
      *mark_func)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5861,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:5865,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:5868,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:5870,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:5872,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5873
      start: 5859
    functionDepth: 5
    functionLinenumber: 5859
    functionLinenumberEnd: 5873
    functionName: js_for_in_iterator_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - JS_FreeAtomRT
    - JS_VALUE_GET_OBJ
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void js_for_in_iterator_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5878,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:5880,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5881
      start: 5875
    functionDepth: 1
    functionLinenumber: 5875
    functionLinenumberEnd: 5881
    functionName: js_for_in_iterator_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: "void js_for_in_iterator_mark(JSRuntime *rt, JSValueConst val,\n                                JS_MarkFunc
      *mark_func)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:5894,1
    - Dst: free_property
      Src: /src/gpac/src/quickjs/quickjs.c:5896,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:5899,1
    - Dst: js_free_shape
      Src: /src/gpac/src/quickjs/quickjs.c:5902,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:5910,1
    - Dst: remove_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:5918,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:5921,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:5925,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:5930,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 33
    argCount: 2
    argNames:
    - rt
    - p
    argTypes:
    - JSRuntime*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5935
      start: 5883
    functionDepth: 7
    functionLinenumber: 5883
    functionLinenumberEnd: 5935
    functionName: free_object
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - remove_gc_object
    - get_shape_prop
    - JS_MKPTR
    - list_add_tail
    - free_property
    - js_free_rt
    - js_free_shape
    linkageType: ''
    returnType: void
    signature: void free_object(JSRuntime *rt, JSObject *p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: free_object
      Src: /src/gpac/src/quickjs/quickjs.c:5941,1
    - Dst: free_function_bytecode
      Src: /src/gpac/src/quickjs/quickjs.c:5944,1
    - Dst: __async_func_free
      Src: /src/gpac/src/quickjs/quickjs.c:5947,1
    - Dst: js_free_module_def
      Src: /src/gpac/src/quickjs/quickjs.c:5950,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:5953,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - rt
    - gp
    argTypes:
    - JSRuntime*
    - JSGCObjectHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5955
      start: 5937
    functionDepth: 8
    functionLinenumber: 5937
    functionLinenumberEnd: 5955
    functionName: free_gc_object
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - free_object
    - __async_func_free
    - free_function_bytecode
    - js_free_module_def
    - abort
    linkageType: ''
    returnType: void
    signature: void free_gc_object(JSRuntime *rt, JSGCObjectHeader *gp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:5967,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:5968,1
    - Dst: free_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:5969,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts:
    - condition: (p->ref_count == 0)
      pos:
        line_end: 5967
        line_start: 5967
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 5972
      start: 5957
    functionDepth: 9
    functionLinenumber: 5957
    functionLinenumberEnd: 5972
    functionName: free_zero_refcount
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_entry
    - assert
    - free_gc_object
    linkageType: ''
    returnType: void
    signature: void free_zero_refcount(JSRuntime *rt)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:5977,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:5981,1
    - Dst: JS_DumpObject
      Src: /src/gpac/src/quickjs/quickjs.c:5983,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5983,1
    - Dst: JS_DumpValueShort
      Src: /src/gpac/src/quickjs/quickjs.c:5985,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:5986,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:5994,1
    - Dst: JS_FreeAtomStruct
      Src: /src/gpac/src/quickjs/quickjs.c:5996,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:5999,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6001,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:6008,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:6009,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:6010,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6011,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:6018,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:6020,1
    - Dst: list_add
      Src: /src/gpac/src/quickjs/quickjs.c:6021,1
    - Dst: free_zero_refcount
      Src: /src/gpac/src/quickjs/quickjs.c:6024,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:6031,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6032,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:6037,1
    - Dst: JS_FreeAtomStruct
      Src: /src/gpac/src/quickjs/quickjs.c:6038,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:6042,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 49
    argCount: 2
    argNames:
    - rt
    - v
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6044
      start: 5975
    functionDepth: 10
    functionLinenumber: 5975
    functionLinenumberEnd: 6044
    functionName: __JS_FreeValueRT
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - JS_FreeAtomStruct
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_PTR
    - list_add
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_OBJ
    - JS_DumpValueShort
    - JS_VALUE_GET_STRING_ROPE
    - JS_FreeValueRT
    - free_zero_refcount
    - js_free_rt
    - abort
    - JS_DumpObject
    - list_del
    linkageType: ''
    returnType: void
    signature: void __JS_FreeValueRT(JSRuntime *rt, JSValue v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:6048,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - v
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6049
      start: 6046
    functionDepth: 11
    functionLinenumber: 6046
    functionLinenumberEnd: 6049
    functionName: __JS_FreeValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - __JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void __JS_FreeValue(JSContext *ctx, JSValue v)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:6061,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:6062,1
    - Dst: map_delete_weakrefs
      Src: /src/gpac/src/quickjs/quickjs.c:6065,1
    - Dst: weakref_delete_weakref
      Src: /src/gpac/src/quickjs/quickjs.c:6068,1
    - Dst: finrec_delete_weakref
      Src: /src/gpac/src/quickjs/quickjs.c:6071,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:6074,1
    - Dst: free_zero_refcount
      Src: /src/gpac/src/quickjs/quickjs.c:6080,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6081
      start: 6053
    functionDepth: 10
    functionLinenumber: 6053
    functionLinenumberEnd: 6081
    functionName: gc_remove_weak_objects
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - finrec_delete_weakref
    - map_delete_weakrefs
    - weakref_delete_weakref
    - free_zero_refcount
    - list_entry
    - list_for_each
    - abort
    linkageType: ''
    returnType: void
    signature: void gc_remove_weak_objects(JSRuntime *rt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:6088,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - rt
    - h
    - type
    argTypes:
    - JSRuntime*
    - JSGCObjectHeader*
    - JSGCObjectTypeEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6089
      start: 6083
    functionDepth: 2
    functionLinenumber: 6083
    functionLinenumberEnd: 6089
    functionName: add_gc_object
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 4
    functionsReached:
    - list_add_tail
    linkageType: ''
    returnType: void
    signature: "void add_gc_object(JSRuntime *rt, JSGCObjectHeader *h,\n                          JSGCObjectTypeEnum
      type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:6093,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - h
    argTypes:
    - JSGCObjectHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6094
      start: 6091
    functionDepth: 1
    functionLinenumber: 6091
    functionLinenumberEnd: 6094
    functionName: remove_gc_object
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 4
    functionsReached:
    - list_del
    linkageType: ''
    returnType: void
    signature: void remove_gc_object(JSGCObjectHeader *h)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_HAS_REF_COUNT
      Src: /src/gpac/src/quickjs/quickjs.c:6098,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:6099,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:6103,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:6103,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6109
      start: 6096
    functionDepth: 1
    functionLinenumber: 6096
    functionLinenumberEnd: 6109
    functionName: JS_MarkValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 24
    functionsReached:
    - JS_VALUE_HAS_REF_COUNT
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_PTR
    - mark_func
    linkageType: ''
    returnType: void
    signature: void JS_MarkValue(JSRuntime *rt, JSValueConst val, JS_MarkFunc *mark_func)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:6122,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:6124,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:6131,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:6133,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:6137,1
    - Dst: js_autoinit_mark
      Src: /src/gpac/src/quickjs/quickjs.c:6139,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6142,1
    - Dst: gc_mark
      Src: /src/gpac/src/quickjs/quickjs.c:6152,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:6152,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6162,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:6165,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6172,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:6174,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6185,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6186,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6194,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6197,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6198,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:6205,1
    - Dst: JS_MarkContext
      Src: /src/gpac/src/quickjs/quickjs.c:6212,1
    - Dst: js_mark_module_def
      Src: /src/gpac/src/quickjs/quickjs.c:6218,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:6222,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 81
    argCount: 3
    argNames:
    - rt
    - gp
    - mark_func
    argTypes:
    - JSRuntime*
    - JSGCObjectHeader*
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6224
      start: 6111
    functionDepth: 2
    functionLinenumber: 6111
    functionLinenumberEnd: 6224
    functionName: mark_children
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_shape_prop
    - JS_MKPTR
    - js_autoinit_mark
    - gc_mark
    - mark_func
    - js_mark_module_def
    - abort
    - JS_MarkContext
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: "void mark_children(JSRuntime *rt, JSGCObjectHeader *gp,\n                          JS_MarkFunc
      *mark_func)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:6228,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:6231,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:6232,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - rt
    - p
    argTypes:
    - JSRuntime*
    - JSGCObjectHeader*
    assertStmts:
    - condition: (p->ref_count > 0)
      pos:
        line_end: 6227
        line_start: 6227
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 6234
      start: 6226
    functionDepth: 2
    functionLinenumber: 6226
    functionLinenumberEnd: 6234
    functionName: gc_decref_child
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_add_tail
    - assert
    - list_del
    linkageType: ''
    returnType: void
    signature: void gc_decref_child(JSRuntime *rt, JSGCObjectHeader *p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:6241,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:6246,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:6247,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:6248,1
    - Dst: mark_children
      Src: /src/gpac/src/quickjs/quickjs.c:6249,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:6252,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:6253,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts:
    - condition: (p->mark == 0)
      pos:
        line_end: 6247
        line_start: 6247
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 6256
      start: 6236
    functionDepth: 3
    functionLinenumber: 6236
    functionLinenumberEnd: 6256
    functionName: gc_decref
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - mark_children
    - list_for_each_safe
    - assert
    - list_add_tail
    - list_entry
    - init_list_head
    - list_del
    linkageType: ''
    returnType: void
    signature: void gc_decref(JSRuntime *rt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:6264,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:6265,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - rt
    - p
    argTypes:
    - JSRuntime*
    - JSGCObjectHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6268
      start: 6258
    functionDepth: 2
    functionLinenumber: 6258
    functionLinenumberEnd: 6268
    functionName: gc_scan_incref_child
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_add_tail
    - list_del
    linkageType: ''
    returnType: void
    signature: void gc_scan_incref_child(JSRuntime *rt, JSGCObjectHeader *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - p
    argTypes:
    - JSRuntime*
    - JSGCObjectHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6273
      start: 6270
    functionDepth: 0
    functionLinenumber: 6270
    functionLinenumberEnd: 6273
    functionName: gc_scan_incref_child2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gc_scan_incref_child2(JSRuntime *rt, JSGCObjectHeader *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:6281,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:6282,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:6283,1
    - Dst: mark_children
      Src: /src/gpac/src/quickjs/quickjs.c:6285,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:6289,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:6290,1
    - Dst: mark_children
      Src: /src/gpac/src/quickjs/quickjs.c:6291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts:
    - condition: (p->ref_count > 0)
      pos:
        line_end: 6282
        line_start: 6282
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 6293
      start: 6275
    functionDepth: 3
    functionLinenumber: 6275
    functionLinenumberEnd: 6293
    functionName: gc_scan
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_entry
    - mark_children
    - list_for_each
    - assert
    linkageType: ''
    returnType: void
    signature: void gc_scan(JSRuntime *rt)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:6309,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:6320,1
    - Dst: JS_DumpObjectHeader
      Src: /src/gpac/src/quickjs/quickjs.c:6321,1
    - Dst: JS_DumpGCObject
      Src: /src/gpac/src/quickjs/quickjs.c:6324,1
    - Dst: free_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:6326,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:6329,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:6330,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:6336,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:6337,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:6338,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6347,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:6351,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 37
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts:
    - condition: "(p->gc_obj_type == JS_GC_OBJ_TYPE_JS_OBJECT ||\n               p->gc_obj_type
        == JS_GC_OBJ_TYPE_FUNCTION_BYTECODE ||\n               p->gc_obj_type == JS_GC_OBJ_TYPE_ASYNC_FUNCTION
        ||\n               p->gc_obj_type == JS_GC_OBJ_TYPE_MODULE)"
      pos:
        line_end: 6340
        line_start: 6337
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 6352
      start: 6295
    functionDepth: 9
    functionLinenumber: 6295
    functionLinenumberEnd: 6352
    functionName: gc_free_cycles
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - JS_DumpObjectHeader
    - free_gc_object
    - list_add_tail
    - list_for_each_safe
    - assert
    - JS_DumpGCObject
    - js_free_rt
    - list_entry
    - init_list_head
    - list_del
    linkageType: ''
    returnType: void
    signature: void gc_free_cycles(JSRuntime *rt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gc_remove_weak_objects
      Src: /src/gpac/src/quickjs/quickjs.c:6360,1
    - Dst: gc_decref
      Src: /src/gpac/src/quickjs/quickjs.c:6365,1
    - Dst: gc_scan
      Src: /src/gpac/src/quickjs/quickjs.c:6368,1
    - Dst: gc_free_cycles
      Src: /src/gpac/src/quickjs/quickjs.c:6371,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - rt
    - remove_weak_objects
    argTypes:
    - JSRuntime*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6372
      start: 6354
    functionDepth: 11
    functionLinenumber: 6354
    functionLinenumberEnd: 6372
    functionName: JS_RunGCInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - gc_free_cycles
    - gc_scan
    - gc_remove_weak_objects
    - gc_decref
    linkageType: ''
    returnType: void
    signature: void JS_RunGCInternal(JSRuntime *rt, BOOL remove_weak_objects)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_RunGCInternal
      Src: /src/gpac/src/quickjs/quickjs.c:6376,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6377
      start: 6374
    functionDepth: 12
    functionLinenumber: 6374
    functionLinenumberEnd: 6377
    functionName: JS_RunGC
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 4
    functionsReached:
    - JS_RunGCInternal
    linkageType: ''
    returnType: void
    signature: void JS_RunGC(JSRuntime *rt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:6385,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:6387,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6389
      start: 6382
    functionDepth: 1
    functionLinenumber: 6382
    functionLinenumberEnd: 6389
    functionName: JS_IsLiveObject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsObject
    - JS_VALUE_GET_OBJ
    linkageType: ''
    returnType: BOOL
    signature: BOOL JS_IsLiveObject(JSRuntime *rt, JSValueConst obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - str
    - hp
    argTypes:
    - JSString*
    - JSMemoryUsage_helper*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6414
      start: 6406
    functionDepth: 0
    functionLinenumber: 6406
    functionLinenumberEnd: 6414
    functionName: compute_jsstring_size
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void compute_jsstring_size(JSString *str, JSMemoryUsage_helper *hp)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:6429,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 2
    argNames:
    - b
    - hp
    argTypes:
    - JSFunctionBytecode*
    - JSMemoryUsage_helper*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6453
      start: 6416
    functionDepth: 1
    functionLinenumber: 6416
    functionLinenumberEnd: 6453
    functionName: compute_bytecode_size
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - compute_value_size
    linkageType: ''
    returnType: void
    signature: void compute_bytecode_size(JSFunctionBytecode *b, JSMemoryUsage_helper
      *hp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:6457,1
    - Dst: compute_jsstring_size
      Src: /src/gpac/src/quickjs/quickjs.c:6459,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:6459,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - val
    - hp
    argTypes:
    - JSValueConst
    - JSMemoryUsage_helper*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6465
      start: 6455
    functionDepth: 1
    functionLinenumber: 6455
    functionLinenumberEnd: 6465
    functionName: compute_value_size
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_VALUE_GET_STRING
    - compute_jsstring_size
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: void
    signature: void compute_value_size(JSValueConst val, JSMemoryUsage_helper *hp)
  - BBCount: 70
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:6473,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:6481,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:6482,1
    - Dst: get_shape_size
      Src: /src/gpac/src/quickjs/quickjs.c:6494,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:6496,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:6497,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:6512,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:6524,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:6525,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:6529,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:6530,1
    - Dst: compute_bytecode_size
      Src: /src/gpac/src/quickjs/quickjs.c:6537,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:6549,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:6553,1
    - Dst: get_shape_size
      Src: /src/gpac/src/quickjs/quickjs.c:6562,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:6577,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:6588,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:6609,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:6621,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:6632,1
    - Dst: compute_jsstring_size
      Src: /src/gpac/src/quickjs/quickjs.c:6640,1
    - Dst: compute_jsstring_size
      Src: /src/gpac/src/quickjs/quickjs.c:6641,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:6648,1
    - Dst: get_shape_size
      Src: /src/gpac/src/quickjs/quickjs.c:6717,1
    - Dst: atom_is_free
      Src: /src/gpac/src/quickjs/quickjs.c:6728,1
    - Dst: round
      Src: /src/gpac/src/quickjs/quickjs.c:6733,1
    - Dst: round
      Src: /src/gpac/src/quickjs/quickjs.c:6734,1
    - Dst: round
      Src: /src/gpac/src/quickjs/quickjs.c:6736,1
    - Dst: round
      Src: /src/gpac/src/quickjs/quickjs.c:6740,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 220
    argCount: 2
    argNames:
    - rt
    - s
    argTypes:
    - JSRuntime*
    - JSMemoryUsage*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6747
      start: 6467
    functionDepth: 2
    functionLinenumber: 6467
    functionLinenumberEnd: 6747
    functionName: JS_ComputeMemoryUsage
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_shape_prop
    - compute_bytecode_size
    - compute_value_size
    - compute_jsstring_size
    - round
    - memset
    - get_shape_size
    - atom_is_free
    - list_entry
    - list_for_each
    linkageType: ''
    returnType: void
    signature: void JS_ComputeMemoryUsage(JSRuntime *rt, JSMemoryUsage *s)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6751,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:6766,1
    - Dst: js_malloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6768,1
    - Dst: js_malloc_usable_size_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6770,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6773,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6776,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6780,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:6786,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:6787,1
    - Dst: min_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:6791,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6794,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6796,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6800,1
    - Dst: JS_AtomGetStrRT
      Src: /src/gpac/src/quickjs/quickjs.c:6801,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6805,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6807,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6810,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6813,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6816,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6822,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6827,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6832,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6835,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6838,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6843,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6845,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6849,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6856,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6859,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6861,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6862,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:6869,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 70
    argCount: 3
    argNames:
    - fp
    - s
    - rt
    argTypes:
    - FILE*
    - JSMemoryUsage*
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6872
      start: 6749
    functionDepth: 2
    functionLinenumber: 6749
    functionLinenumberEnd: 6872
    functionName: JS_DumpMemoryUsage
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - min_uint32
    - countof
    - js_malloc_usable_size_rt
    - js_malloc_rt
    - JS_AtomGetStrRT
    - js_free_rt
    - list_entry
    - list_for_each
    - fprintf
    linkageType: ''
    returnType: void
    signature: void JS_DumpMemoryUsage(FILE *fp, const JSMemoryUsage *s, JSRuntime
      *rt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:6876,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6877
      start: 6874
    functionDepth: 1
    functionLinenumber: 6874
    functionLinenumberEnd: 6877
    functionName: JS_GetGlobalObject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 34
    functionsReached:
    - JS_DupValue
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_GetGlobalObject(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:6883,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6887
      start: 6880
    functionDepth: 1
    functionLinenumber: 6880
    functionLinenumberEnd: 6887
    functionName: JS_Throw
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_FreeValue
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_Throw(JSContext *ctx, JSValue obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6897
      start: 6890
    functionDepth: 0
    functionLinenumber: 6890
    functionLinenumberEnd: 6897
    functionName: JS_GetException
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_GetException(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:6901,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6902
      start: 6899
    functionDepth: 1
    functionLinenumber: 6899
    functionLinenumberEnd: 6902
    functionName: JS_HasException
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsUninitialized
    linkageType: ''
    returnType: JS_BOOL
    signature: JS_BOOL JS_HasException(JSContext *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:6911,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:6913,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - DynBuf*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6917
      start: 6904
    functionDepth: 1
    functionLinenumber: 6904
    functionLinenumberEnd: 6917
    functionName: dbuf_put_leb128
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_putc
    linkageType: ''
    returnType: void
    signature: void dbuf_put_leb128(DynBuf *s, uint32_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:6922,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - v1
    argTypes:
    - DynBuf*
    - int32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6923
      start: 6919
    functionDepth: 2
    functionLinenumber: 6919
    functionLinenumberEnd: 6923
    functionName: dbuf_put_sleb128
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_put_leb128
    linkageType: ''
    returnType: void
    signature: void dbuf_put_sleb128(DynBuf *s, int32_t v1)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:6932,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - pval
    - buf
    - buf_end
    argTypes:
    - uint32_t*
    - uint8_t*
    - uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6943
      start: 6925
    functionDepth: 1
    functionLinenumber: 6925
    functionLinenumberEnd: 6943
    functionName: get_leb128
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - unlikely
    linkageType: ''
    returnType: int
    signature: "int get_leb128(uint32_t *pval, const uint8_t *buf,\n                      const
      uint8_t *buf_end)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:6950,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - pval
    - buf
    - buf_end
    argTypes:
    - int32_t*
    - uint8_t*
    - uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6957
      start: 6945
    functionDepth: 2
    functionLinenumber: 6945
    functionLinenumberEnd: 6957
    functionName: get_sleb128
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_leb128
    linkageType: ''
    returnType: int
    signature: "int get_sleb128(int32_t *pval, const uint8_t *buf,\n                       const
      uint8_t *buf_end)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:6975,1
    - Dst: get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:6981,1
    - Dst: get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:6992,1
    - Dst: get_sleb128
      Src: /src/gpac/src/quickjs/quickjs.c:6997,1
    - Dst: get_sleb128
      Src: /src/gpac/src/quickjs/quickjs.c:7007,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 61
    argCount: 4
    argNames:
    - ctx
    - b
    - pc_value
    - pcol_num
    argTypes:
    - JSContext*
    - JSFunctionBytecode*
    - uint32_t
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7025
      start: 6960
    functionDepth: 3
    functionLinenumber: 6960
    functionLinenumberEnd: 7025
    functionName: find_line_num
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_leb128
    - get_sleb128
    linkageType: ''
    returnType: int
    signature: "int find_line_num(JSContext *ctx, JSFunctionBytecode *b,\n                         uint32_t
      pc_value, int *pcol_num)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7036,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7038,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:7039,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:7046,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7054,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/quickjs/quickjs.c:7056,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 3
    argNames:
    - ctx
    - obj
    - prop
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7057
      start: 7029
    functionDepth: 1
    functionLinenumber: 7029
    functionLinenumberEnd: 7057
    functionName: get_prop_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_ToCString
    - JS_VALUE_GET_TAG
    - find_own_property
    linkageType: ''
    returnType: char
    signature: char *get_prop_string(JSContext *ctx, JSValueConst obj, JSAtom prop)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:7074,1
    - Dst: js_dbuf_init
      Src: /src/gpac/src/quickjs/quickjs.c:7077,1
    - Dst: dbuf_printf
      Src: /src/gpac/src/quickjs/quickjs.c:7079,1
    - Dst: dbuf_printf
      Src: /src/gpac/src/quickjs/quickjs.c:7081,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:7082,1
    - Dst: JS_NewString
      Src: /src/gpac/src/quickjs/quickjs.c:7083,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:7084,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:7087,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:7089,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:7089,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:7091,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:7091,1
    - Dst: get_prop_string
      Src: /src/gpac/src/quickjs/quickjs.c:7103,1
    - Dst: dbuf_printf
      Src: /src/gpac/src/quickjs/quickjs.c:7108,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:7109,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7111,1
    - Dst: js_class_has_bytecode
      Src: /src/gpac/src/quickjs/quickjs.c:7112,1
    - Dst: find_line_num
      Src: /src/gpac/src/quickjs/quickjs.c:7119,1
    - Dst: JS_AtomToCString
      Src: /src/gpac/src/quickjs/quickjs.c:7121,1
    - Dst: dbuf_printf
      Src: /src/gpac/src/quickjs/quickjs.c:7122,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:7124,1
    - Dst: dbuf_printf
      Src: /src/gpac/src/quickjs/quickjs.c:7126,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:7127,1
    - Dst: dbuf_printf
      Src: /src/gpac/src/quickjs/quickjs.c:7130,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:7132,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:7134,1
    - Dst: dbuf_error
      Src: /src/gpac/src/quickjs/quickjs.c:7135,1
    - Dst: JS_NewString
      Src: /src/gpac/src/quickjs/quickjs.c:7138,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:7139,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:7140,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 52
    argCount: 6
    argNames:
    - ctx
    - error_obj
    - filename
    - line_num
    - col_num
    - backtrace_flags
    argTypes:
    - JSContext*
    - JSValueConst
    - char*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7142
      start: 7063
    functionDepth: 4
    functionLinenumber: 7063
    functionLinenumberEnd: 7142
    functionName: build_backtrace
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_putc
    - dbuf_printf
    - JS_DefinePropertyValue
    - JS_IsException
    - js_class_has_bytecode
    - dbuf_error
    - js_dbuf_init
    - JS_VALUE_GET_OBJ
    - JS_NewString
    - JS_AtomToCString
    - find_line_num
    - dbuf_free
    - JS_NewInt32
    - JS_IsObject
    - get_prop_string
    - JS_FreeCString
    linkageType: ''
    returnType: void
    signature: "void build_backtrace(JSContext *ctx, JSValueConst error_obj,\n                            const
      char *filename, int line_num, int col_num,\n                            int
      backtrace_flags)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7148,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7150,1
    - Dst: find_own_property1
      Src: /src/gpac/src/quickjs/quickjs.c:7153,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7156
      start: 7145
    functionDepth: 1
    functionLinenumber: 7145
    functionLinenumberEnd: 7156
    functionName: is_backtrace_needed
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    - find_own_property1
    linkageType: ''
    returnType: BOOL
    signature: BOOL is_backtrace_needed(JSContext *ctx, JSValueConst obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:7160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7161
      start: 7158
    functionDepth: 10
    functionLinenumber: 7158
    functionLinenumberEnd: 7161
    functionName: JS_NewError
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_NewObjectClass
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_NewError(JSContext *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: vsnprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7169,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:7170,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7172,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:7172,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:7176,1
    - Dst: JS_NewString
      Src: /src/gpac/src/quickjs/quickjs.c:7177,1
    - Dst: build_backtrace
      Src: /src/gpac/src/quickjs/quickjs.c:7180,1
    - Dst: JS_Throw
      Src: /src/gpac/src/quickjs/quickjs.c:7183,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 5
    argNames:
    - ctx
    - error_num
    - fmt
    - ap
    - add_backtrace
    argTypes:
    - JSContext*
    - JSErrorEnum
    - char*
    - va_list
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7185
      start: 7163
    functionDepth: 9
    functionLinenumber: 7163
    functionLinenumberEnd: 7185
    functionName: JS_ThrowError2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - build_backtrace
    - JS_DefinePropertyValue
    - JS_IsException
    - JS_NewObjectProtoClass
    - unlikely
    - JS_NewString
    - vsnprintf
    - JS_Throw
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_ThrowError2(JSContext *ctx, JSErrorEnum error_num,\n                              const
      char *fmt, va_list ap, BOOL add_backtrace)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetFunctionBytecode
      Src: /src/gpac/src/quickjs/quickjs.c:7197,1
    - Dst: JS_ThrowError2
      Src: /src/gpac/src/quickjs/quickjs.c:7198,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - error_num
    - fmt
    - ap
    argTypes:
    - JSContext*
    - JSErrorEnum
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7199
      start: 7187
    functionDepth: 10
    functionLinenumber: 7187
    functionLinenumberEnd: 7199
    functionName: JS_ThrowError
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetFunctionBytecode
    - JS_ThrowError2
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_ThrowError(JSContext *ctx, JSErrorEnum error_num,\n                             const
      char *fmt, va_list ap)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: format
      Src: /src/gpac/src/quickjs/quickjs.c:7204,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:7210,1
    - Dst: JS_ThrowError
      Src: /src/gpac/src/quickjs/quickjs.c:7211,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:7212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - fmt
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7214
      start: 7204
    functionDepth: 11
    functionLinenumber: 7204
    functionLinenumberEnd: 7214
    functionName: JS_ThrowSyntaxError
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - format
    - va_start
    - va_end
    - JS_ThrowError
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ThrowSyntaxError(JSContext *ctx, const char *fmt, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: format
      Src: /src/gpac/src/quickjs/quickjs.c:7219,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:7225,1
    - Dst: JS_ThrowError
      Src: /src/gpac/src/quickjs/quickjs.c:7226,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:7227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - fmt
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7229
      start: 7219
    functionDepth: 11
    functionLinenumber: 7219
    functionLinenumberEnd: 7229
    functionName: JS_ThrowTypeError
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - format
    - va_start
    - va_end
    - JS_ThrowError
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ThrowTypeError(JSContext *ctx, const char *fmt, ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: format
      Src: /src/gpac/src/quickjs/quickjs.c:7234,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:7240,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:7241,1
    - Dst: JS_ThrowError
      Src: /src/gpac/src/quickjs/quickjs.c:7242,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:7243,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - flags
    - fmt
    argTypes:
    - JSContext*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7248
      start: 7234
    functionDepth: 11
    functionLinenumber: 7234
    functionLinenumberEnd: 7248
    functionName: JS_ThrowTypeErrorOrFalse
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - va_end
    - va_start
    - JS_ThrowError
    - is_strict_mode
    - format
    linkageType: ''
    returnType: int
    signature: int JS_ThrowTypeErrorOrFalse(JSContext *ctx, int flags, const char
      *fmt, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: format
      Src: /src/gpac/src/quickjs/quickjs.c:7254,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:7258,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:7259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - atom
    - fmt
    argTypes:
    - JSContext*
    - JSAtom
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7260
      start: 7254
    functionDepth: 12
    functionLinenumber: 7254
    functionLinenumberEnd: 7260
    functionName: __JS_ThrowTypeErrorAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - format
    - JS_AtomGetStr
    - JS_ThrowTypeError
    linkageType: ''
    returnType: JSValue
    signature: JSValue __JS_ThrowTypeErrorAtom(JSContext *ctx, JSAtom atom, const
      char *fmt, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: format
      Src: /src/gpac/src/quickjs/quickjs.c:7266,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:7270,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:7271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - atom
    - fmt
    argTypes:
    - JSContext*
    - JSAtom
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7272
      start: 7266
    functionDepth: 12
    functionLinenumber: 7266
    functionLinenumberEnd: 7272
    functionName: __JS_ThrowSyntaxErrorAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - format
    - JS_AtomGetStr
    - JS_ThrowSyntaxError
    linkageType: ''
    returnType: JSValue
    signature: JSValue __JS_ThrowSyntaxErrorAtom(JSContext *ctx, JSAtom atom, const
      char *fmt, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ctx
    - ','
    - fmt
    - ','
    - atom
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7277
      start: 7276
    functionDepth: 0
    functionLinenumber: 7276
    functionLinenumberEnd: 7277
    functionName: JS_ThrowTypeErrorAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JS_ThrowTypeErrorAtom(ctx, fmt, atom)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ctx
    - ','
    - fmt
    - ','
    - atom
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7278
      start: 7277
    functionDepth: 0
    functionLinenumber: 7277
    functionLinenumberEnd: 7278
    functionName: JS_ThrowSyntaxErrorAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JS_ThrowSyntaxErrorAtom(ctx, fmt, atom)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:7282,1
    - Dst: JS_ThrowTypeErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:7283,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - flags
    - atom
    argTypes:
    - JSContext*
    - int
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7288
      start: 7279
    functionDepth: 1
    functionLinenumber: 7279
    functionLinenumberEnd: 7288
    functionName: JS_ThrowTypeErrorReadOnly
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorAtom
    - is_strict_mode
    linkageType: ''
    returnType: int
    signature: int JS_ThrowTypeErrorReadOnly(JSContext *ctx, int flags, JSAtom atom)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: format
      Src: /src/gpac/src/quickjs/quickjs.c:7293,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:7299,1
    - Dst: JS_ThrowError
      Src: /src/gpac/src/quickjs/quickjs.c:7300,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:7301,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - fmt
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7303
      start: 7293
    functionDepth: 11
    functionLinenumber: 7293
    functionLinenumberEnd: 7303
    functionName: JS_ThrowReferenceError
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - format
    - va_start
    - va_end
    - JS_ThrowError
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ThrowReferenceError(JSContext *ctx, const char *fmt, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: format
      Src: /src/gpac/src/quickjs/quickjs.c:7308,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:7314,1
    - Dst: JS_ThrowError
      Src: /src/gpac/src/quickjs/quickjs.c:7315,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:7316,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - fmt
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7318
      start: 7308
    functionDepth: 11
    functionLinenumber: 7308
    functionLinenumberEnd: 7318
    functionName: JS_ThrowRangeError
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - format
    - va_start
    - va_end
    - JS_ThrowError
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ThrowRangeError(JSContext *ctx, const char *fmt, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: format
      Src: /src/gpac/src/quickjs/quickjs.c:7323,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:7329,1
    - Dst: JS_ThrowError
      Src: /src/gpac/src/quickjs/quickjs.c:7330,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:7331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - fmt
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7333
      start: 7323
    functionDepth: 11
    functionLinenumber: 7323
    functionLinenumberEnd: 7333
    functionName: JS_ThrowInternalError
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 4
    functionsReached:
    - format
    - va_start
    - va_end
    - JS_ThrowError
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ThrowInternalError(JSContext *ctx, const char *fmt, ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:7340,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7344
      start: 7335
    functionDepth: 12
    functionLinenumber: 7335
    functionLinenumberEnd: 7344
    functionName: JS_ThrowOutOfMemory
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 6
    functionsReached:
    - JS_ThrowInternalError
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ThrowOutOfMemory(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:7348,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7349
      start: 7346
    functionDepth: 12
    functionLinenumber: 7346
    functionLinenumberEnd: 7349
    functionName: JS_ThrowStackOverflow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowInternalError
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ThrowStackOverflow(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:7353,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7354
      start: 7351
    functionDepth: 12
    functionLinenumber: 7351
    functionLinenumberEnd: 7354
    functionName: JS_ThrowTypeErrorNotAnObject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ThrowTypeErrorNotAnObject(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:7358,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7359
      start: 7356
    functionDepth: 12
    functionLinenumber: 7356
    functionLinenumberEnd: 7359
    functionName: JS_ThrowTypeErrorNotASymbol
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ThrowTypeErrorNotASymbol(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowReferenceError
      Src: /src/gpac/src/quickjs/quickjs.c:7364,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:7365,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7366
      start: 7361
    functionDepth: 12
    functionLinenumber: 7361
    functionLinenumberEnd: 7366
    functionName: JS_ThrowReferenceErrorNotDefined
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowReferenceError
    - JS_AtomGetStr
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ThrowReferenceErrorNotDefined(JSContext *ctx, JSAtom name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowReferenceError
      Src: /src/gpac/src/quickjs/quickjs.c:7371,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:7373,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7374
      start: 7368
    functionDepth: 12
    functionLinenumber: 7368
    functionLinenumberEnd: 7374
    functionName: JS_ThrowReferenceErrorUninitialized
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowReferenceError
    - JS_AtomGetStr
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ThrowReferenceErrorUninitialized(JSContext *ctx, JSAtom
      name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowReferenceErrorUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:7388,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - b
    - idx
    - is_ref
    argTypes:
    - JSContext*
    - JSFunctionBytecode*
    - int
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7389
      start: 7376
    functionDepth: 13
    functionLinenumber: 7376
    functionLinenumberEnd: 7389
    functionName: JS_ThrowReferenceErrorUninitialized2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowReferenceErrorUninitialized
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_ThrowReferenceErrorUninitialized2(JSContext *ctx,\n                                                    JSFunctionBytecode
      *b,\n                                                    int idx, BOOL is_ref)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowTypeErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:7396,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - class_id
    argTypes:
    - JSContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7397
      start: 7391
    functionDepth: 1
    functionLinenumber: 7391
    functionLinenumberEnd: 7397
    functionName: JS_ThrowTypeErrorInvalidClass
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorAtom
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ThrowTypeErrorInvalidClass(JSContext *ctx, int class_id)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:7401,1
    - Dst: JS_SetUncatchableException
      Src: /src/gpac/src/quickjs/quickjs.c:7402,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7403
      start: 7399
    functionDepth: 12
    functionLinenumber: 7399
    functionLinenumberEnd: 7403
    functionName: JS_ThrowInterrupted
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_SetUncatchableException
    - JS_ThrowInternalError
    linkageType: ''
    returnType: void
    signature: void JS_ThrowInterrupted(JSContext *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSRuntime*::interrupt_handler
      Src: /src/gpac/src/quickjs/quickjs.c:7410,1
    - Dst: JS_ThrowInterrupted
      Src: /src/gpac/src/quickjs/quickjs.c:7411,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7416
      start: 7405
    functionDepth: 13
    functionLinenumber: 7405
    functionLinenumberEnd: 7416
    functionName: __js_poll_interrupts
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JSRuntime*::interrupt_handler
    - JS_ThrowInterrupted
    linkageType: ''
    returnType: no_inline
    signature: no_inline __js_poll_interrupts(JSContext *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7420,1
    - Dst: __js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:7421,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7425
      start: 7418
    functionDepth: 14
    functionLinenumber: 7418
    functionLinenumberEnd: 7425
    functionName: js_poll_interrupts
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - __js_poll_interrupts
    - unlikely
    linkageType: ''
    returnType: __exception
    signature: __exception js_poll_interrupts(JSContext *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7430,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7432,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7434
      start: 7427
    functionDepth: 1
    functionLinenumber: 7427
    functionLinenumberEnd: 7434
    functionName: JS_SetImmutablePrototype
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: void
    signature: void JS_SetImmutablePrototype(JSContext *ctx, JSValueConst obj)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7446,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7447,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7450,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7453,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7454,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7455,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:7457,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7462,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7465,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7468,1
    - Dst: JSClassExoticMethods*::set_prototype
      Src: /src/gpac/src/quickjs/quickjs.c:7472,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:7474,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7485,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:7487,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7493,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:7495,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:7507,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:7516,1
    - Dst: js_shape_prepare_update
      Src: /src/gpac/src/quickjs/quickjs.c:7519,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:7523,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:7523,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7529,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7529,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 83
    argCount: 4
    argNames:
    - ctx
    - obj
    - proto_val
    - throw_flag
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7534
      start: 7438
    functionDepth: 13
    functionLinenumber: 7438
    functionLinenumberEnd: 7534
    functionName: JS_SetPrototypeInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_shape_prepare_update
    - JS_ThrowTypeErrorNotAnObject
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeError
    - JS_MKPTR
    - JS_FreeValue
    - unlikely
    - JS_VALUE_GET_OBJ
    - JSClassExoticMethods*::set_prototype
    linkageType: ''
    returnType: int
    signature: "int JS_SetPrototypeInternal(JSContext *ctx, JSValueConst obj,\n                                   JSValueConst
      proto_val,\n                                   BOOL throw_flag)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_SetPrototypeInternal
      Src: /src/gpac/src/quickjs/quickjs.c:7539,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - obj
    - proto_val
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7540
      start: 7537
    functionDepth: 14
    functionLinenumber: 7537
    functionLinenumberEnd: 7540
    functionName: JS_SetPrototype
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_SetPrototypeInternal
    linkageType: ''
    returnType: int
    signature: int JS_SetPrototype(JSContext *ctx, JSValueConst obj, JSValueConst
      proto_val)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7545,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7572
      start: 7543
    functionDepth: 1
    functionLinenumber: 7543
    functionLinenumberEnd: 7572
    functionName: JS_GetPrototypePrimitive
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_NORM_TAG
    linkageType: ''
    returnType: JSValueConst
    signature: JSValueConst JS_GetPrototypePrimitive(JSContext *ctx, JSValueConst
      val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7578,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7580,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7581,1
    - Dst: JSClassExoticMethods*::get_prototype
      Src: /src/gpac/src/quickjs/quickjs.c:7584,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:7591,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:7591,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:7593,1
    - Dst: JS_GetPrototypePrimitive
      Src: /src/gpac/src/quickjs/quickjs.c:7593,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7596
      start: 7575
    functionDepth: 2
    functionLinenumber: 7575
    functionLinenumberEnd: 7596
    functionName: JS_GetPrototype
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - JS_MKPTR
    - unlikely
    - JS_VALUE_GET_OBJ
    - JSClassExoticMethods*::get_prototype
    - JS_GetPrototypePrimitive
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_GetPrototype(JSContext *ctx, JSValueConst obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetPrototype
      Src: /src/gpac/src/quickjs/quickjs.c:7601,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:7602,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7604
      start: 7598
    functionDepth: 3
    functionLinenumber: 7598
    functionLinenumberEnd: 7604
    functionName: JS_GetPrototypeFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - JS_GetPrototype
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_GetPrototypeFree(JSContext *ctx, JSValue obj)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:7615,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7617,1
    - Dst: JS_IsInstanceOf
      Src: /src/gpac/src/quickjs/quickjs.c:7620,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7624,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:7626,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7627,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:7628,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:7629,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7633,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7634,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7639,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:7641,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:7641,1
    - Dst: JS_GetPrototypeFree
      Src: /src/gpac/src/quickjs/quickjs.c:7643,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:7644,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:7648,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7652,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:7653,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:7658,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:7659,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:7676,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 60
    argCount: 3
    argNames:
    - ctx
    - val
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7678
      start: 7607
    functionDepth: 15
    functionLinenumber: 7607
    functionLinenumberEnd: 7678
    functionName: JS_OrdinaryIsInstanceOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - JS_IsNull
    - JS_IsFunction
    - JS_IsException
    - JS_ThrowTypeError
    - JS_MKPTR
    - JS_GetPrototypeFree
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_FreeValue
    - js_poll_interrupts
    - JS_IsInstanceOf
    - JS_GetProperty
    linkageType: ''
    returnType: int
    signature: "int JS_OrdinaryIsInstanceOf(JSContext *ctx, JSValueConst val,\n                                   JSValueConst
      obj)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:7685,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:7687,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:7688,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:7690,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:7690,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:7692,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:7693,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:7697,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:7699,1
    - Dst: JS_OrdinaryIsInstanceOf
      Src: /src/gpac/src/quickjs/quickjs.c:7702,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 3
    argNames:
    - ctx
    - val
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7703
      start: 7681
    functionDepth: 16
    functionLinenumber: 7681
    functionLinenumberEnd: 7703
    functionName: JS_IsInstanceOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ToBoolFree
    - JS_IsNull
    - JS_IsFunction
    - JS_IsException
    - JS_ThrowTypeError
    - JS_OrdinaryIsInstanceOf
    - JS_IsUndefined
    - JS_CallFree
    - JS_IsObject
    - JS_GetProperty
    linkageType: ''
    returnType: int
    signature: int JS_IsInstanceOf(JSContext *ctx, JSValueConst val, JSValueConst
      obj)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_shape_prepare_update
      Src: /src/gpac/src/quickjs/quickjs.c:7723,1
    - Dst: js_autoinit_get_realm
      Src: /src/gpac/src/quickjs/quickjs.c:7726,1
    - Dst: js_autoinit_get_id
      Src: /src/gpac/src/quickjs/quickjs.c:7727,1
    - Dst: func
      Src: /src/gpac/src/quickjs/quickjs.c:7730,1
    - Dst: js_autoinit_free
      Src: /src/gpac/src/quickjs/quickjs.c:7731,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:7734,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7737,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:7740,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 5
    argNames:
    - ctx
    - p
    - prop
    - pr
    - prs
    argTypes:
    - JSContext*
    - JSObject*
    - JSAtom
    - JSProperty*
    - JSShapeProperty*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7746
      start: 7715
    functionDepth: 4
    functionLinenumber: 7715
    functionLinenumberEnd: 7746
    functionName: JS_AutoInitProperty
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_shape_prepare_update
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_TAG
    - JS_IsException
    - js_autoinit_free
    - js_autoinit_get_id
    - func
    - js_autoinit_get_realm
    linkageType: ''
    returnType: int
    signature: "int JS_AutoInitProperty(JSContext *ctx, JSObject *p, JSAtom prop,\n
      \                              JSProperty *pr, JSShapeProperty *prs)"
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7757,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7758,1
    - Dst: JS_ThrowTypeErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:7761,1
    - Dst: JS_ThrowTypeErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:7763,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:7768,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:7769,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:7771,1
    - Dst: js_new_string_char
      Src: /src/gpac/src/quickjs/quickjs.c:7773,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:7773,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:7776,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:7782,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:7783,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:7785,1
    - Dst: js_new_string_char
      Src: /src/gpac/src/quickjs/quickjs.c:7787,1
    - Dst: string_rope_get
      Src: /src/gpac/src/quickjs/quickjs.c:7787,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:7790,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7798,1
    - Dst: JS_GetPrototypePrimitive
      Src: /src/gpac/src/quickjs/quickjs.c:7798,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7802,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:7806,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7809,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7811,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:7814,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:7816,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:7817,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7821,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:7821,1
    - Dst: JS_ThrowReferenceErrorUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:7822,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:7823,1
    - Dst: JS_AutoInitProperty
      Src: /src/gpac/src/quickjs/quickjs.c:7826,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:7831,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7834,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:7837,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:7838,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:7841,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:7841,1
    - Dst: JS_AtomIsNumericIndex
      Src: /src/gpac/src/quickjs/quickjs.c:7849,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:7864,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:7864,1
    - Dst: JSClassExoticMethods*::get_property
      Src: /src/gpac/src/quickjs/quickjs.c:7865,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:7866,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:7876,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:7876,1
    - Dst: JSClassExoticMethods*::get_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:7877,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:7878,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:7883,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:7884,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7897,1
    - Dst: JS_ThrowReferenceErrorNotDefined
      Src: /src/gpac/src/quickjs/quickjs.c:7898,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 122
    argCount: 5
    argNames:
    - ctx
    - obj
    - prop
    - this_obj
    - throw_ref_error
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSValueConst
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7902
      start: 7748
    functionDepth: 13
    functionLinenumber: 7748
    functionLinenumberEnd: 7902
    functionName: JS_GetPropertyInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JSClassExoticMethods*::get_own_property
    - JSClassExoticMethods*::get_property
    - JS_ThrowReferenceErrorNotDefined
    - JS_ThrowReferenceErrorUninitialized
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - __JS_AtomToUInt32
    - JS_MKPTR
    - __JS_AtomIsTaggedInt
    - unlikely
    - JS_AutoInitProperty
    - string_get
    - JS_NewInt32
    - js_new_string_char
    - JS_GetPropertyUint32
    - JS_VALUE_GET_STRING
    - JS_CallFree
    - JS_ThrowTypeErrorAtom
    - JS_GetPrototypePrimitive
    - string_rope_get
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - JS_AtomIsNumericIndex
    - JS_VALUE_GET_STRING_ROPE
    - JS_IsUninitialized
    - find_own_property
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_GetPropertyInternal(JSContext *ctx, JSValueConst obj,\n
      \                              JSAtom prop, JSValueConst this_obj,\n                               BOOL
      throw_ref_error)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowTypeErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:7906,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - atom
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7908
      start: 7904
    functionDepth: 1
    functionLinenumber: 7904
    functionLinenumberEnd: 7908
    functionName: JS_ThrowTypeErrorPrivateNotFound
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorAtom
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ThrowTypeErrorPrivateNotFound(JSContext *ctx, JSAtom atom)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7920,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7920,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:7921,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7925,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7925,1
    - Dst: JS_ThrowTypeErrorNotASymbol
      Src: /src/gpac/src/quickjs/quickjs.c:7926,1
    - Dst: js_symbol_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:7930,1
    - Dst: js_symbol_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:7932,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7934,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:7935,1
    - Dst: JS_ThrowTypeErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:7937,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:7941,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7942,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:7944,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 4
    argNames:
    - ctx
    - obj
    - name
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7949
      start: 7912
    functionDepth: 13
    functionLinenumber: 7912
    functionLinenumberEnd: 7949
    functionName: JS_DefinePrivateField
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_ThrowTypeErrorNotASymbol
    - JS_VALUE_GET_TAG
    - JS_FreeValue
    - unlikely
    - JS_VALUE_GET_OBJ
    - js_symbol_to_atom
    - add_property
    - JS_ThrowTypeErrorAtom
    - find_own_property
    linkageType: ''
    returnType: int
    signature: "int JS_DefinePrivateField(JSContext *ctx, JSValueConst obj,\n                                 JSValueConst
      name, JSValue val)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7959,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7959,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:7960,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7962,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7962,1
    - Dst: JS_ThrowTypeErrorNotASymbol
      Src: /src/gpac/src/quickjs/quickjs.c:7963,1
    - Dst: js_symbol_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:7965,1
    - Dst: js_symbol_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:7967,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7969,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:7970,1
    - Dst: JS_ThrowTypeErrorPrivateNotFound
      Src: /src/gpac/src/quickjs/quickjs.c:7972,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:7975,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - ctx
    - obj
    - name
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7976
      start: 7951
    functionDepth: 13
    functionLinenumber: 7951
    functionLinenumberEnd: 7976
    functionName: JS_GetPrivateField
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_ThrowTypeErrorNotASymbol
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - unlikely
    - JS_VALUE_GET_OBJ
    - js_symbol_to_atom
    - JS_ThrowTypeErrorPrivateNotFound
    - find_own_property
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_GetPrivateField(JSContext *ctx, JSValueConst obj,\n                                  JSValueConst
      name)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7986,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7986,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:7987,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7991,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7991,1
    - Dst: JS_ThrowTypeErrorNotASymbol
      Src: /src/gpac/src/quickjs/quickjs.c:7992,1
    - Dst: js_symbol_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:7996,1
    - Dst: js_symbol_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:7998,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8000,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:8001,1
    - Dst: JS_ThrowTypeErrorPrivateNotFound
      Src: /src/gpac/src/quickjs/quickjs.c:8003,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8005,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:8008,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 4
    argNames:
    - ctx
    - obj
    - name
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8010
      start: 7978
    functionDepth: 13
    functionLinenumber: 7978
    functionLinenumberEnd: 8010
    functionName: JS_SetPrivateField
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_ThrowTypeErrorNotASymbol
    - JS_VALUE_GET_TAG
    - JS_FreeValue
    - unlikely
    - JS_VALUE_GET_OBJ
    - js_symbol_to_atom
    - JS_ThrowTypeErrorPrivateNotFound
    - find_own_property
    - set_value
    linkageType: ''
    returnType: int
    signature: "int JS_SetPrivateField(JSContext *ctx, JSValueConst obj,\n                              JSValueConst
      name, JSValue val)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8022,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8022,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:8023,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8026,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:8027,1
    - Dst: JS_NewSymbolFromAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8030,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:8031,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:8033,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8035,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8038,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8040,1
    - Dst: js_symbol_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:8042,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:8044,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8045,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:8046,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8047,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8048,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:8049,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:8052,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8053,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8058,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 38
    argCount: 3
    argNames:
    - ctx
    - obj
    - home_obj
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8061
      start: 8014
    functionDepth: 13
    functionLinenumber: 8014
    functionLinenumberEnd: 8061
    functionName: JS_AddBrand
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_DupValue
    - JS_FreeAtom
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - unlikely
    - JS_VALUE_GET_OBJ
    - add_property
    - js_symbol_to_atom
    - JS_NewSymbolFromAtom
    - find_own_property
    - JS_IsObject
    linkageType: ''
    returnType: int
    signature: int JS_AddBrand(JSContext *ctx, JSValueConst obj, JSValueConst home_obj)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8073,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8073,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8075,1
    - Dst: js_class_has_bytecode
      Src: /src/gpac/src/quickjs/quickjs.c:8076,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:8081,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:8083,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8088,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8088,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8092,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8092,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:8094,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8097,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:8099,1
    - Dst: js_symbol_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:8099,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:8101,1
    - Dst: js_symbol_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:8101,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 3
    argNames:
    - ctx
    - obj
    - func
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8104
      start: 8065
    functionDepth: 13
    functionLinenumber: 8065
    functionLinenumberEnd: 8104
    functionName: JS_CheckBrand
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_VALUE_GET_TAG
    - js_class_has_bytecode
    - JS_ThrowTypeError
    - unlikely
    - JS_VALUE_GET_OBJ
    - js_symbol_to_atom
    - find_own_property
    linkageType: ''
    returnType: int
    signature: int JS_CheckBrand(JSContext *ctx, JSValueConst obj, JSValueConst func)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8113,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8114,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:8115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8119
      start: 8106
    functionDepth: 1
    functionLinenumber: 8106
    functionLinenumberEnd: 8119
    functionName: js_string_obj_get_length
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: uint32_t
    signature: "uint32_t js_string_obj_get_length(JSContext *ctx,\n                                         JSValueConst
      obj)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:8128,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:8129,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:8133,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:8134,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:8135,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - p1
    - p2
    - opaque
    argTypes:
    - void*
    - void*
    - void*
    assertStmts:
    - condition: (atom1_is_integer && atom2_is_integer)
      pos:
        line_end: 8134
        line_start: 8134
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 8143
      start: 8121
    functionDepth: 3
    functionLinenumber: 8121
    functionLinenumberEnd: 8143
    functionName: num_keys_cmp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AtomIsArrayIndex
    - assert
    linkageType: ''
    returnType: int
    signature: int num_keys_cmp(const void *p1, const void *p2, void *opaque)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8150,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:8151,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - tab
    - len
    argTypes:
    - JSContext*
    - JSPropertyEnum*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8153
      start: 8145
    functionDepth: 5
    functionLinenumber: 8145
    functionLinenumberEnd: 8153
    functionName: JS_FreePropertyEnum
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - js_free
    linkageType: ''
    returnType: void
    signature: void JS_FreePropertyEnum(JSContext *ctx, JSPropertyEnum *tab, uint32_t
      len)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:8185,1
    - Dst: JS_AtomGetKind
      Src: /src/gpac/src/quickjs/quickjs.c:8189,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8194,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8197,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:8197,1
    - Dst: JS_ThrowReferenceErrorUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:8198,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:8202,1
    - Dst: js_string_obj_get_length
      Src: /src/gpac/src/quickjs/quickjs.c:8220,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8220,1
    - Dst: JSClassExoticMethods*::get_own_property_names
      Src: /src/gpac/src/quickjs/quickjs.c:8225,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8226,1
    - Dst: JS_AtomGetKind
      Src: /src/gpac/src/quickjs/quickjs.c:8230,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:8237,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:8239,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:8245,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:8269,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:8270,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:8276,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:8276,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:8278,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:8288,1
    - Dst: JS_AtomGetKind
      Src: /src/gpac/src/quickjs/quickjs.c:8292,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:8295,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8303,1
    - Dst: js_string_obj_get_length
      Src: /src/gpac/src/quickjs/quickjs.c:8318,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8318,1
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:8321,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:8323,1
    - Dst: JS_AtomGetKind
      Src: /src/gpac/src/quickjs/quickjs.c:8335,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8342,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:8345,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:8349,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:8350,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:8351,1
    - Dst: rqsort
      Src: /src/gpac/src/quickjs/quickjs.c:8354,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 166
    argCount: 5
    argNames:
    - ctx
    - ptab
    - plen
    - p
    - flags
    argTypes:
    - JSContext*
    - JSPropertyEnum**
    - uint32_t*
    - JSObject*
    - int
    assertStmts:
    - condition: (num_index == num_keys_count)
      pos:
        line_end: 8348
        line_start: 8348
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (str_index == num_keys_count + str_keys_count)
      pos:
        line_end: 8349
        line_start: 8349
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (sym_index == atom_count)
      pos:
        line_end: 8350
        line_start: 8350
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 8360
      start: 8157
    functionDepth: 13
    functionLinenumber: 8157
    functionLinenumberEnd: 8360
    functionName: __exception::JS_GetOwnPropertyNamesInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_shape_prop
    - JS_FreeAtom
    - js_string_obj_get_length
    - __JS_AtomFromUInt32
    - JS_ThrowReferenceErrorUninitialized
    - rqsort
    - JS_GetOwnPropertyInternal
    - JS_MKPTR
    - js_malloc
    - JS_AtomIsArrayIndex
    - unlikely
    - js_free
    - JS_FreePropertyEnum
    - assert
    - JS_AtomGetKind
    - JS_DupAtom
    - JS_ThrowOutOfMemory
    - js_free_desc
    - JS_IsUninitialized
    - max_int
    - JSClassExoticMethods*::get_own_property_names
    linkageType: ''
    returnType: int
    signature: "int __exception JS_GetOwnPropertyNamesInternal(JSContext *ctx,\n                                                      JSPropertyEnum
      **ptab,\n                                                      uint32_t *plen,\n
      \                                                     JSObject *p, int flags)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8365,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:8366,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:8369,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8370,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - ctx
    - ptab
    - plen
    - obj
    - flags
    argTypes:
    - JSContext*
    - JSPropertyEnum**
    - uint32_t*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8371
      start: 8362
    functionDepth: 13
    functionLinenumber: 8362
    functionLinenumberEnd: 8371
    functionName: JS_GetOwnPropertyNames
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_ThrowTypeErrorNotAnObject
    - JS_GetOwnPropertyNamesInternal
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: int
    signature: "int JS_GetOwnPropertyNames(JSContext *ctx, JSPropertyEnum **ptab,\n
      \                          uint32_t *plen, JSValueConst obj, int flags)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:8383,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8390,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8394,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8394,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8396,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8396,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8399,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:8399,1
    - Dst: JS_ThrowReferenceErrorUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:8400,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8403,1
    - Dst: JS_AutoInitProperty
      Src: /src/gpac/src/quickjs/quickjs.c:8406,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8411,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8415,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8416,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:8416,1
    - Dst: JS_ThrowReferenceErrorUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:8417,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:8429,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:8431,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:8438,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8438,1
    - Dst: JSClassExoticMethods*::get_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:8446,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8447,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 67
    argCount: 4
    argNames:
    - ctx
    - desc
    - p
    - prop
    argTypes:
    - JSContext*
    - JSPropertyDescriptor*
    - JSObject*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8452
      start: 8376
    functionDepth: 13
    functionLinenumber: 8376
    functionLinenumberEnd: 8452
    functionName: JS_GetOwnPropertyInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_DupValue
    - JSClassExoticMethods*::get_own_property
    - __JS_AtomToUInt32
    - JS_MKPTR
    - JS_GetPropertyUint32
    - JS_AutoInitProperty
    - unlikely
    - __JS_AtomIsTaggedInt
    - JS_IsUninitialized
    - find_own_property
    - JS_ThrowReferenceErrorUninitialized
    linkageType: ''
    returnType: int
    signature: "int JS_GetOwnPropertyInternal(JSContext *ctx, JSPropertyDescriptor
      *desc,\n                                     JSObject *p, JSAtom prop)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8457,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:8458,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:8461,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8461,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - desc
    - obj
    - prop
    argTypes:
    - JSContext*
    - JSPropertyDescriptor*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8462
      start: 8454
    functionDepth: 14
    functionLinenumber: 8454
    functionLinenumberEnd: 8462
    functionName: JS_GetOwnProperty
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyInternal
    - JS_ThrowTypeErrorNotAnObject
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_OBJ
    linkageType: ''
    returnType: int
    signature: "int JS_GetOwnProperty(JSContext *ctx, JSPropertyDescriptor *desc,\n
      \                     JSValueConst obj, JSAtom prop)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8469,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8469,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8471,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8472,1
    - Dst: JSClassExoticMethods*::is_extensible
      Src: /src/gpac/src/quickjs/quickjs.c:8475,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8479
      start: 8465
    functionDepth: 1
    functionLinenumber: 8465
    functionLinenumberEnd: 8479
    functionName: JS_IsExtensible
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - unlikely
    - JS_VALUE_GET_TAG
    - JSClassExoticMethods*::is_extensible
    linkageType: ''
    returnType: int
    signature: int JS_IsExtensible(JSContext *ctx, JSValueConst obj)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8486,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8486,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8488,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8489,1
    - Dst: array_buffer_is_resizable
      Src: /src/gpac/src/quickjs/quickjs.c:8498,1
    - Dst: JSClassExoticMethods*::prevent_extensions
      Src: /src/gpac/src/quickjs/quickjs.c:8503,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 18
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8509
      start: 8482
    functionDepth: 1
    functionLinenumber: 8482
    functionLinenumberEnd: 8509
    functionName: JS_PreventExtensions
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JSClassExoticMethods*::prevent_extensions
    - JS_VALUE_GET_TAG
    - unlikely
    - JS_VALUE_GET_OBJ
    - array_buffer_is_resizable
    linkageType: ''
    returnType: int
    signature: int JS_PreventExtensions(JSContext *ctx, JSValueConst obj)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8518,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8518,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8520,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8526,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8526,1
    - Dst: JSClassExoticMethods*::has_property
      Src: /src/gpac/src/quickjs/quickjs.c:8527,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8528,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8533,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8533,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:8534,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8535,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8535,1
    - Dst: JS_AtomIsNumericIndex
      Src: /src/gpac/src/quickjs/quickjs.c:8540,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 31
    argCount: 3
    argNames:
    - ctx
    - obj
    - prop
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8552
      start: 8512
    functionDepth: 14
    functionLinenumber: 8512
    functionLinenumberEnd: 8552
    functionName: JS_HasProperty
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyInternal
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - JS_MKPTR
    - JS_FreeValue
    - unlikely
    - JS_VALUE_GET_OBJ
    - JSClassExoticMethods*::has_property
    - JS_AtomIsNumericIndex
    linkageType: ''
    returnType: int
    signature: int JS_HasProperty(JSContext *ctx, JSValueConst obj, JSAtom prop)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:8557,1
    - Dst: js_get_atom_index
      Src: /src/gpac/src/quickjs/quickjs.c:8558,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8559
      start: 8555
    functionDepth: 1
    functionLinenumber: 8555
    functionLinenumberEnd: 8559
    functionName: js_symbol_to_atom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 5
    functionsReached:
    - js_get_atom_index
    - JS_VALUE_GET_PTR
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom js_symbol_to_atom(JSContext *ctx, JSValue val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8566,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:8568,1
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:8570,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:8570,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:8572,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8573,1
    - Dst: js_get_atom_index
      Src: /src/gpac/src/quickjs/quickjs.c:8573,1
    - Dst: JS_ToPropertyKey
      Src: /src/gpac/src/quickjs/quickjs.c:8576,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:8577,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8579,1
    - Dst: js_symbol_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:8580,1
    - Dst: JS_NewAtomStr
      Src: /src/gpac/src/quickjs/quickjs.c:8582,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:8582,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8586
      start: 8562
    functionDepth: 6
    functionLinenumber: 8562
    functionLinenumberEnd: 8586
    functionName: JS_ValueToAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - js_get_atom_index
    - JS_IsException
    - JS_VALUE_GET_STRING
    - js_symbol_to_atom
    - JS_DupAtom
    - JS_NewAtomStr
    - __JS_AtomFromUInt32
    - JS_ToPropertyKey
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom JS_ValueToAtom(JSContext *ctx, JSValueConst val)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:8594,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8594,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8595,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8599,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:8600,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8604,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8605,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8607,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:8608,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8611,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:8612,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8614,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:8615,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8617,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:8618,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8620,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:8621,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8623,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:8624,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8626,1
    - Dst: JS_NewBigInt64
      Src: /src/gpac/src/quickjs/quickjs.c:8627,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8629,1
    - Dst: JS_NewBigUint64
      Src: /src/gpac/src/quickjs/quickjs.c:8630,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8632,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:8633,1
    - Dst: fromfp16
      Src: /src/gpac/src/quickjs/quickjs.c:8633,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8635,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:8636,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8638,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:8639,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:8646,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:8646,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8647,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:8648,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:8648,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8650,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8651,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8652,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:8654,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8655,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 86
    argCount: 3
    argNames:
    - ctx
    - this_obj
    - prop
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8658
      start: 8588
    functionDepth: 12
    functionLinenumber: 8588
    functionLinenumberEnd: 8658
    functionName: JS_GetPropertyValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - JS_NewUint32
    - JS_NewBigUint64
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - unlikely
    - JS_IsUndefined
    - fromfp16
    - JS_ValueToAtom
    - JS_NewInt32
    - JS_GetProperty
    - JS_IsNull
    - likely
    - JS_NewBigInt64
    - JS_VALUE_GET_INT
    - JS_ThrowTypeError
    - JS_FreeValue
    - __JS_NewFloat64
    - JS_VALUE_GET_OBJ
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_GetPropertyValue(JSContext *ctx, JSValueConst this_obj,\n
      \                                  JSValue prop)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:8663,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:8663,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - this_obj
    - idx
    argTypes:
    - JSContext*
    - JSValueConst
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8664
      start: 8660
    functionDepth: 13
    functionLinenumber: 8660
    functionLinenumberEnd: 8664
    functionName: JS_GetPropertyUint32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 19
    functionsReached:
    - JS_GetPropertyValue
    - JS_NewUint32
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_GetPropertyUint32(JSContext *ctx, JSValueConst this_obj,\n
      \                            uint32_t idx)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:8677,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:8679,1
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:8679,1
    - Dst: JS_GetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:8681,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:8681,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8682,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:8682,1
    - Dst: JS_NewAtomInt64
      Src: /src/gpac/src/quickjs/quickjs.c:8686,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:8688,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:8689,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:8691,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8692,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:8692,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8695,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 4
    argNames:
    - ctx
    - obj
    - idx
    - pval
    argTypes:
    - JSContext*
    - JSValueConst
    - int64_t
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8700
      start: 8671
    functionDepth: 15
    functionLinenumber: 8671
    functionLinenumberEnd: 8700
    functionName: JS_TryGetPropertyInt64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - JS_IsException
    - unlikely
    - JS_NewAtomInt64
    - likely
    - JS_HasProperty
    - JS_NewInt32
    - JS_GetPropertyValue
    - __JS_AtomFromUInt32
    - JS_GetProperty
    linkageType: ''
    returnType: int
    signature: int JS_TryGetPropertyInt64(JSContext *ctx, JSValueConst obj, int64_t
      idx, JSValue *pval)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:8709,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:8709,1
    - Dst: JS_NewAtomInt64
      Src: /src/gpac/src/quickjs/quickjs.c:8711,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:8715,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8716,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - ctx
    - obj
    - idx
    argTypes:
    - JSContext*
    - JSValueConst
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8718
      start: 8702
    functionDepth: 13
    functionLinenumber: 8702
    functionLinenumberEnd: 8718
    functionName: JS_GetPropertyInt64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - JS_NewAtomInt64
    - JS_NewInt32
    - JS_GetPropertyValue
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_GetPropertyInt64(JSContext *ctx, JSValueConst obj, int64_t
      idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8725,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:8728,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8729,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - this_obj
    - prop
    argTypes:
    - JSContext*
    - JSValueConst
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8731
      start: 8720
    functionDepth: 8
    functionLinenumber: 8720
    functionLinenumberEnd: 8731
    functionName: JS_GetPropertyStr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 62
    functionsReached:
    - JS_NewAtom
    - JS_FreeAtom
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_GetPropertyStr(JSContext *ctx, JSValueConst this_obj,\n
      \                         const char *prop)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8740,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8742,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8742,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8743,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:8744,1
    - Dst: find_hashed_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:8751,1
    - Dst: js_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:8757,1
    - Dst: js_dup_shape
      Src: /src/gpac/src/quickjs/quickjs.c:8763,1
    - Dst: js_free_shape
      Src: /src/gpac/src/quickjs/quickjs.c:8764,1
    - Dst: js_clone_shape
      Src: /src/gpac/src/quickjs/quickjs.c:8768,1
    - Dst: js_shape_hash_link
      Src: /src/gpac/src/quickjs/quickjs.c:8773,1
    - Dst: js_free_shape
      Src: /src/gpac/src/quickjs/quickjs.c:8774,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:8778,1
    - Dst: add_shape_property
      Src: /src/gpac/src/quickjs/quickjs.c:8779,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 34
    argCount: 4
    argNames:
    - ctx
    - p
    - prop
    - prop_flags
    argTypes:
    - JSContext*
    - JSObject*
    - JSAtom
    - int
    assertStmts:
    - condition: (p->shape->header.ref_count == 1)
      pos:
        line_end: 8777
        line_start: 8777
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 8782
      start: 8735
    functionDepth: 7
    functionLinenumber: 8735
    functionLinenumberEnd: 8782
    functionName: add_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 6
    functionsReached:
    - find_hashed_shape_prop
    - js_shape_hash_link
    - js_realloc
    - __JS_AtomIsTaggedInt
    - unlikely
    - JS_VALUE_GET_OBJ
    - js_dup_shape
    - assert
    - add_shape_property
    - js_clone_shape
    - js_free_shape
    linkageType: ''
    returnType: JSProperty
    signature: "JSProperty *add_property(JSContext *ctx,\n                                JSObject
      *p, JSAtom prop, int prop_flags)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: js_shape_prepare_update
      Src: /src/gpac/src/quickjs/quickjs.c:8794,1
    - Dst: resize_properties
      Src: /src/gpac/src/quickjs/quickjs.c:8801,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:8809,1
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:8809,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:8812,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8819,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8819,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - ctx
    - p
    argTypes:
    - JSContext*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8823
      start: 8786
    functionDepth: 8
    functionLinenumber: 8786
    functionLinenumberEnd: 8823
    functionName: convert_fast_array_to_array
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_shape_prepare_update
    - unlikely
    - JS_VALUE_GET_OBJ
    - add_property
    - resize_properties
    - __JS_AtomFromUInt32
    - js_free
    linkageType: ''
    returnType: no_inline
    signature: "no_inline convert_fast_array_to_array(JSContext *ctx,\n                                                             JSObject
      *p)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: prop_hash_end
      Src: /src/gpac/src/quickjs/quickjs.c:8836,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:8837,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:8842,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:8848,1
    - Dst: js_shape_prepare_update
      Src: /src/gpac/src/quickjs/quickjs.c:8849,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:8854,1
    - Dst: prop_hash_end
      Src: /src/gpac/src/quickjs/quickjs.c:8857,1
    - Dst: free_property
      Src: /src/gpac/src/quickjs/quickjs.c:8862,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8863,1
    - Dst: compact_properties
      Src: /src/gpac/src/quickjs/quickjs.c:8872,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:8883,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8889,1
    - Dst: convert_fast_array_to_array
      Src: /src/gpac/src/quickjs/quickjs.c:8893,1
    - Dst: JSClassExoticMethods*::delete_property
      Src: /src/gpac/src/quickjs/quickjs.c:8903,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8903,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 64
    argCount: 3
    argNames:
    - ctx
    - p
    - atom
    argTypes:
    - JSContext*
    - JSObject*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8909
      start: 8825
    functionDepth: 9
    functionLinenumber: 8825
    functionLinenumberEnd: 8909
    functionName: delete_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_shape_prepare_update
    - get_shape_prop
    - JS_FreeAtom
    - JS_MKPTR
    - JS_FreeValue
    - JS_AtomIsArrayIndex
    - compact_properties
    - likely
    - free_property
    - prop_hash_end
    - convert_fast_array_to_array
    - JSClassExoticMethods*::delete_property
    linkageType: ''
    returnType: int
    signature: int delete_property(JSContext *ctx, JSObject *p, JSAtom atom)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:8915,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8916,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8918,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:8919,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8920,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:8921,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8923,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8926,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:8928,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:8929,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 5
    argNames:
    - ctx
    - setter
    - this_obj
    - val
    - flags
    argTypes:
    - JSContext*
    - JSObject*
    - JSValueConst
    - JSValue
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8934
      start: 8911
    functionDepth: 12
    functionLinenumber: 8911
    functionLinenumberEnd: 8934
    functionName: call_setter
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_ThrowTypeError
    - JS_MKPTR
    - JS_FreeValue
    - JS_IsException
    - likely
    - JS_CallFree
    - is_strict_mode
    linkageType: ''
    returnType: int
    signature: "int call_setter(JSContext *ctx, JSObject *setter,\n                       JSValueConst
      this_obj, JSValue val, int flags)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToArrayLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:8944,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8948,1
    - Dst: JS_ThrowTypeErrorReadOnly
      Src: /src/gpac/src/quickjs/quickjs.c:8949,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:8951,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8955,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:8959,1
    - Dst: JS_ToUint32
      Src: /src/gpac/src/quickjs/quickjs.c:8963,1
    - Dst: JS_NewAtomUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:8976,1
    - Dst: delete_property
      Src: /src/gpac/src/quickjs/quickjs.c:8977,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8978,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8979,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:8991,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:8994,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:9002,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:9005,1
    - Dst: delete_property
      Src: /src/gpac/src/quickjs/quickjs.c:9008,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:9011,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:9019,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:9019,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9020,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:9021,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 57
    argCount: 4
    argNames:
    - ctx
    - p
    - val
    - flags
    argTypes:
    - JSContext*
    - JSObject*
    - JSValue
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9025
      start: 8937
    functionDepth: 12
    functionLinenumber: 8937
    functionLinenumberEnd: 9025
    functionName: set_array_length
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - get_shape_prop
    - JS_ThrowTypeErrorOrFalse
    - JS_FreeValue
    - JS_AtomIsArrayIndex
    - unlikely
    - JS_ToArrayLengthFree
    - likely
    - JS_NewAtomUInt32
    - JS_ThrowTypeErrorReadOnly
    - JS_NewUint32
    - set_value
    - JS_ToUint32
    - delete_property
    linkageType: ''
    returnType: int
    signature: "int set_array_length(JSContext *ctx, JSObject *p, JSValue val,\n                            int
      flags)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:9034,1
    - Dst: js_realloc2
      Src: /src/gpac/src/quickjs/quickjs.c:9035,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - p
    - new_len
    argTypes:
    - JSContext*
    - JSObject*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9042
      start: 9028
    functionDepth: 3
    functionLinenumber: 9028
    functionLinenumberEnd: 9042
    functionName: expand_fast_array
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - max_int
    - js_realloc2
    linkageType: ''
    returnType: int
    signature: int expand_fast_array(JSContext *ctx, JSObject *p, uint32_t new_len)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:9055,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:9055,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:9056,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9058,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:9058,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9059,1
    - Dst: JS_ThrowTypeErrorReadOnly
      Src: /src/gpac/src/quickjs/quickjs.c:9060,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9062,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9065,1
    - Dst: expand_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:9066,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9067,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 4
    argNames:
    - ctx
    - p
    - val
    - flags
    argTypes:
    - JSContext*
    - JSObject*
    - JSValue
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9074
      start: 9046
    functionDepth: 4
    functionLinenumber: 9046
    functionLinenumberEnd: 9074
    functionName: add_fast_array_element
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - expand_fast_array
    - get_shape_prop
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - JS_FreeValue
    - unlikely
    - likely
    - JS_ThrowTypeErrorReadOnly
    - JS_NewInt32
    linkageType: ''
    returnType: int
    signature: "int add_fast_array_element(JSContext *ctx, JSObject *p,\n                                         JSValue
      val, int flags)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:9085,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:9086,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:9087,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9090,1
    - Dst: expand_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:9091,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9092,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - ctx
    - len
    argTypes:
    - JSContext*
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9098
      start: 9079
    functionDepth: 12
    functionLinenumber: 9079
    functionLinenumberEnd: 9098
    functionName: js_allocate_fast_array
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - expand_fast_array
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - JS_ThrowRangeError
    - JS_NewArray
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_allocate_fast_array(JSContext *ctx, int64_t len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:9106,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:9107,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9110,1
    - Dst: expand_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:9111,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9112,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9117,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:9119,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9119,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - len
    - tab
    argTypes:
    - JSContext*
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9122
      start: 9100
    functionDepth: 9
    functionLinenumber: 9100
    functionLinenumberEnd: 9122
    functionName: js_create_array
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - expand_fast_array
    - JS_DupValue
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - JS_NewInt32
    - set_value
    - JS_NewArray
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_create_array(JSContext *ctx, int len, JSValueConst *tab)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:9130,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:9131,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9134,1
    - Dst: expand_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:9135,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9136,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9139,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:9146,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9146,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 3
    argNames:
    - ctx
    - len
    - tab
    argTypes:
    - JSContext*
    - int
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9149
      start: 9124
    functionDepth: 9
    functionLinenumber: 9124
    functionLinenumberEnd: 9149
    functionName: js_create_array_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - expand_fast_array
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - JS_NewInt32
    - set_value
    - JS_NewArray
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_create_array_free(JSContext *ctx, int len, JSValue *tab)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9153,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9154,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - desc
    argTypes:
    - JSContext*
    - JSPropertyDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9156
      start: 9151
    functionDepth: 1
    functionLinenumber: 9151
    functionLinenumberEnd: 9156
    functionName: js_free_desc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_FreeValue
    linkageType: ''
    returnType: void
    signature: void js_free_desc(JSContext *ctx, JSPropertyDescriptor *desc)
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:9173,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:9173,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:9173,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:9175,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9176,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:9177,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9179,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9184,1
    - Dst: JS_ThrowTypeErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:9185,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9188,1
    - Dst: JS_ThrowTypeErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:9189,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9194,1
    - Dst: JS_GetPrototypePrimitive
      Src: /src/gpac/src/quickjs/quickjs.c:9194,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9199,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9200,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9201,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:9207,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:9209,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:9212,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:9215,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:9216,1
    - Dst: set_array_length
      Src: /src/gpac/src/quickjs/quickjs.c:9217,1
    - Dst: call_setter
      Src: /src/gpac/src/quickjs/quickjs.c:9219,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:9226,1
    - Dst: JS_AutoInitProperty
      Src: /src/gpac/src/quickjs/quickjs.c:9230,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9231,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:9243,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9244,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9246,1
    - Dst: JS_SetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:9247,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9247,1
    - Dst: JS_AtomIsNumericIndex
      Src: /src/gpac/src/quickjs/quickjs.c:9256,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9259,1
    - Dst: JS_ToBigInt64Free
      Src: /src/gpac/src/quickjs/quickjs.c:9268,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:9271,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9272,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:9273,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9277,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9288,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:9288,1
    - Dst: JSClassExoticMethods*::set_property
      Src: /src/gpac/src/quickjs/quickjs.c:9289,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9291,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9292,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9297,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:9297,1
    - Dst: JSClassExoticMethods*::get_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:9298,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9300,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9302,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:9308,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9311,1
    - Dst: call_setter
      Src: /src/gpac/src/quickjs/quickjs.c:9312,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9313,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9314,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9317,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:9320,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:9321,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9324,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:9341,1
    - Dst: call_setter
      Src: /src/gpac/src/quickjs/quickjs.c:9344,1
    - Dst: JS_AutoInitProperty
      Src: /src/gpac/src/quickjs/quickjs.c:9347,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9358,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9359,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:9360,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9363,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9364,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:9365,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:9368,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9368,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:9371,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9372,1
    - Dst: add_fast_array_element
      Src: /src/gpac/src/quickjs/quickjs.c:9375,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:9383,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9384,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9385,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:9393,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9395,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9400,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9401,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9402,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:9403,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9405,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9409,1
    - Dst: JS_ThrowTypeErrorReadOnly
      Src: /src/gpac/src/quickjs/quickjs.c:9410,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:9413,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9416,1
    - Dst: JS_CreateProperty
      Src: /src/gpac/src/quickjs/quickjs.c:9420,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9427,1
    CyclomaticComplexity: 74
    EdgeCount: 74
    ICount: 241
    argCount: 6
    argNames:
    - ctx
    - obj
    - prop
    - val
    - this_obj
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSValue
    - JSValueConst
    - int
    assertStmts:
    - condition: (p->class_id == JS_CLASS_ARRAY)
      pos:
        line_end: 9214
        line_start: 9214
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (prop == JS_ATOM_length)
      pos:
        line_end: 9215
        line_start: 9215
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 9431
      start: 9163
    functionDepth: 14
    functionLinenumber: 9163
    functionLinenumberEnd: 9431
    functionName: JS_SetPropertyInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - JS_ToNumberFree
    - JSClassExoticMethods*::get_own_property
    - JS_ThrowTypeErrorOrFalse
    - add_property
    - set_array_length
    - JS_GetOwnPropertyInternal
    - JS_CreateProperty
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - __JS_AtomToUInt32
    - JS_MKPTR
    - add_fast_array_element
    - JS_AutoInitProperty
    - unlikely
    - __JS_AtomIsTaggedInt
    - print_atom
    - JS_IsUndefined
    - JS_ThrowTypeErrorReadOnly
    - JS_NewInt32
    - call_setter
    - JS_ToBigInt64Free
    - assert
    - likely
    - JS_ThrowTypeErrorAtom
    - JSClassExoticMethods*::set_property
    - JS_GetPrototypePrimitive
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - JS_AtomIsNumericIndex
    - JS_DefineProperty
    - JS_SetPropertyValue
    - find_own_property
    - set_value
    linkageType: ''
    returnType: int
    signature: "int JS_SetPropertyInternal(JSContext *ctx, JSValueConst obj,\n                           JSAtom
      prop, JSValue val, JSValueConst this_obj, int flags)"
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:9437,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:9437,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:9438,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9445,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:9446,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9449,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9451,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9454,1
    - Dst: add_fast_array_element
      Src: /src/gpac/src/quickjs/quickjs.c:9459,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:9461,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9464,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:9466,1
    - Dst: JS_ToUint8ClampFree
      Src: /src/gpac/src/quickjs/quickjs.c:9469,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9473,1
    - Dst: JS_ToInt32Free
      Src: /src/gpac/src/quickjs/quickjs.c:9479,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9481,1
    - Dst: JS_ToInt32Free
      Src: /src/gpac/src/quickjs/quickjs.c:9487,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9489,1
    - Dst: JS_ToInt32Free
      Src: /src/gpac/src/quickjs/quickjs.c:9495,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9497,1
    - Dst: JS_ToBigInt64Free
      Src: /src/gpac/src/quickjs/quickjs.c:9506,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9508,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:9514,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9516,1
    - Dst: tofp16
      Src: /src/gpac/src/quickjs/quickjs.c:9518,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:9521,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9523,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:9528,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9530,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:9544,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9545,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9546,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9547,1
    - Dst: JS_SetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:9550,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:9551,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 110
    argCount: 5
    argNames:
    - ctx
    - this_obj
    - prop
    - val
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValue
    - JSValue
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9554
      start: 9434
    functionDepth: 15
    functionLinenumber: 9434
    functionLinenumberEnd: 9554
    functionName: JS_SetPropertyValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ToInt32Free
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - JS_FreeAtom
    - add_fast_array_element
    - JS_ToBigInt64Free
    - JS_ToFloat64Free
    - JS_FreeValue
    - unlikely
    - JS_VALUE_GET_OBJ
    - likely
    - JS_SetPropertyInternal
    - tofp16
    - JS_ValueToAtom
    - set_value
    - JS_ToUint8ClampFree
    linkageType: ''
    returnType: int
    signature: "int JS_SetPropertyValue(JSContext *ctx, JSValueConst this_obj,\n                               JSValue
      prop, JSValue val, int flags)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_SetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:9559,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:9559,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_obj
    - idx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    - uint32_t
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9561
      start: 9556
    functionDepth: 16
    functionLinenumber: 9556
    functionLinenumberEnd: 9561
    functionName: JS_SetPropertyUint32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 24
    functionsReached:
    - JS_SetPropertyValue
    - JS_NewUint32
    linkageType: ''
    returnType: int
    signature: "int JS_SetPropertyUint32(JSContext *ctx, JSValueConst this_obj,\n
      \                        uint32_t idx, JSValue val)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_SetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:9571,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9571,1
    - Dst: JS_NewAtomInt64
      Src: /src/gpac/src/quickjs/quickjs.c:9574,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9576,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:9579,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:9580,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 4
    argNames:
    - ctx
    - this_obj
    - idx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    - int64_t
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9582
      start: 9563
    functionDepth: 16
    functionLinenumber: 9563
    functionLinenumberEnd: 9582
    functionName: JS_SetPropertyInt64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - JS_FreeValue
    - JS_NewAtomInt64
    - JS_SetPropertyValue
    - JS_SetProperty
    - JS_NewInt32
    linkageType: ''
    returnType: int
    signature: "int JS_SetPropertyInt64(JSContext *ctx, JSValueConst this_obj,\n                        int64_t
      idx, JSValue val)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:9589,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9591,1
    - Dst: JS_SetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:9594,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:9595,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_obj
    - prop
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    - char*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9597
      start: 9584
    functionDepth: 15
    functionLinenumber: 9584
    functionLinenumberEnd: 9597
    functionName: JS_SetPropertyStr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 74
    functionsReached:
    - JS_FreeValue
    - JS_NewAtom
    - JS_FreeAtom
    - JS_SetPropertyInternal
    linkageType: ''
    returnType: int
    signature: "int JS_SetPropertyStr(JSContext *ctx, JSValueConst this_obj,\n                      const
      char *prop, JSValue val)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - flags
    - def_flags
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9608
      start: 9603
    functionDepth: 0
    functionLinenumber: 9603
    functionLinenumberEnd: 9608
    functionName: get_prop_flags
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int get_prop_flags(int flags, int def_flags)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:9624,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9625,1
    - Dst: get_prop_flags
      Src: /src/gpac/src/quickjs/quickjs.c:9631,1
    - Dst: add_fast_array_element
      Src: /src/gpac/src/quickjs/quickjs.c:9634,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9635,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:9639,1
    - Dst: convert_fast_array_to_array
      Src: /src/gpac/src/quickjs/quickjs.c:9642,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:9646,1
    - Dst: JS_ToUint32
      Src: /src/gpac/src/quickjs/quickjs.c:9652,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:9654,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9655,1
    - Dst: JS_ThrowTypeErrorReadOnly
      Src: /src/gpac/src/quickjs/quickjs.c:9656,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:9660,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:9660,1
    - Dst: JS_AtomIsNumericIndex
      Src: /src/gpac/src/quickjs/quickjs.c:9665,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:9669,1
    - Dst: JSClassExoticMethods*::define_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:9675,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:9675,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:9678,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:9678,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:9689,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:9698,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9699,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:9703,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9705,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9705,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:9708,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9710,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9710,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9714,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 98
    argCount: 7
    argNames:
    - ctx
    - p
    - prop
    - val
    - getter
    - setter
    - flags
    argTypes:
    - JSContext*
    - JSObject*
    - JSAtom
    - JSValueConst
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9720
      start: 9610
    functionDepth: 12
    functionLinenumber: 9610
    functionLinenumberEnd: 9720
    functionName: JS_CreateProperty
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_shape_prop
    - JS_ThrowTypeErrorOrFalse
    - convert_fast_array_to_array
    - add_property
    - JS_NewUint32
    - JS_DupValue
    - __JS_AtomToUInt32
    - add_fast_array_element
    - JS_MKPTR
    - JS_AtomIsArrayIndex
    - __JS_AtomIsTaggedInt
    - unlikely
    - JSClassExoticMethods*::define_own_property
    - JS_ThrowTypeErrorReadOnly
    - JS_IsFunction
    - JS_ToUint32
    - JS_AtomIsNumericIndex
    - JS_VALUE_GET_OBJ
    - get_prop_flags
    - JS_IsExtensible
    - set_value
    linkageType: ''
    returnType: int
    signature: "int JS_CreateProperty(JSContext *ctx, JSObject *p,\n                             JSAtom
      prop, JSValueConst val,\n                             JSValueConst getter, JSValueConst
      setter,\n                             int flags)"
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 2
    argNames:
    - prop_flags
    - flags
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9750
      start: 9723
    functionDepth: 0
    functionLinenumber: 9723
    functionLinenumberEnd: 9750
    functionName: check_define_prop_flags
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL check_define_prop_flags(int prop_flags, int flags)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:9763,1
    - Dst: js_clone_shape
      Src: /src/gpac/src/quickjs/quickjs.c:9765,1
    - Dst: js_free_shape
      Src: /src/gpac/src/quickjs/quickjs.c:9768,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:9771,1
    - Dst: js_shape_hash_unlink
      Src: /src/gpac/src/quickjs/quickjs.c:9773,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - ctx
    - p
    - pprs
    argTypes:
    - JSContext*
    - JSObject*
    - JSShapeProperty**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9778
      start: 9753
    functionDepth: 7
    functionLinenumber: 9753
    functionLinenumberEnd: 9778
    functionName: js_shape_prepare_update
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 4
    functionsReached:
    - get_shape_prop
    - js_clone_shape
    - js_shape_hash_unlink
    - js_free_shape
    linkageType: ''
    returnType: int
    signature: "int js_shape_prepare_update(JSContext *ctx, JSObject *p,\n                                   JSShapeProperty
      **pprs)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_shape_prepare_update
      Src: /src/gpac/src/quickjs/quickjs.c:9784,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - p
    - pprs
    - flags
    argTypes:
    - JSContext*
    - JSObject*
    - JSShapeProperty**
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9789
      start: 9780
    functionDepth: 8
    functionLinenumber: 9780
    functionLinenumberEnd: 9789
    functionName: js_update_property_flags
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_shape_prepare_update
    linkageType: ''
    returnType: int
    signature: "int js_update_property_flags(JSContext *ctx, JSObject *p,\n                                    JSShapeProperty
      **pprs, int flags)"
  - BBCount: 67
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:9810,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:9811,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9814,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:9817,1
    - Dst: JS_ToArrayLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:9822,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9823,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:9828,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:9830,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:9833,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:9834,1
    - Dst: check_define_prop_flags
      Src: /src/gpac/src/quickjs/quickjs.c:9837,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:9839,1
    - Dst: JS_AutoInitProperty
      Src: /src/gpac/src/quickjs/quickjs.c:9844,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:9854,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9855,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:9859,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9860,1
    - Dst: js_shape_prepare_update
      Src: /src/gpac/src/quickjs/quickjs.c:9866,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:9870,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9872,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9893,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:9893,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9895,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9900,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:9900,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9902,1
    - Dst: js_shape_prepare_update
      Src: /src/gpac/src/quickjs/quickjs.c:9908,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9911,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:9911,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9913,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:9913,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:9921,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:9934,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:9938,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9939,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:9947,1
    - Dst: js_shape_prepare_update
      Src: /src/gpac/src/quickjs/quickjs.c:9949,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9951,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:9952,1
    - Dst: set_array_length
      Src: /src/gpac/src/quickjs/quickjs.c:9960,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9960,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:9971,1
    - Dst: js_update_property_flags
      Src: /src/gpac/src/quickjs/quickjs.c:9972,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9979,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9980,1
    - Dst: js_update_property_flags
      Src: /src/gpac/src/quickjs/quickjs.c:9983,1
    - Dst: js_update_property_flags
      Src: /src/gpac/src/quickjs/quickjs.c:9996,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:10007,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:10008,1
    - Dst: get_prop_flags
      Src: /src/gpac/src/quickjs/quickjs.c:10010,1
    - Dst: convert_fast_array_to_array
      Src: /src/gpac/src/quickjs/quickjs.c:10015,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:10021,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10021,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:10031,1
    - Dst: JS_AtomIsNumericIndex1
      Src: /src/gpac/src/quickjs/quickjs.c:10033,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:10034,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:10036,1
    - Dst: JS_NumberIsInteger
      Src: /src/gpac/src/quickjs/quickjs.c:10038,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10040,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10044,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:10045,1
    - Dst: JS_NumberIsNegativeOrMinusZero
      Src: /src/gpac/src/quickjs/quickjs.c:10047,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10048,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:10050,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:10052,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:10055,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:10059,1
    - Dst: get_prop_flags
      Src: /src/gpac/src/quickjs/quickjs.c:10061,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:10064,1
    - Dst: JS_SetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:10067,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:10067,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10067,1
    - Dst: JS_CreateProperty
      Src: /src/gpac/src/quickjs/quickjs.c:10074,1
    CyclomaticComplexity: 81
    EdgeCount: 81
    ICount: 226
    argCount: 7
    argNames:
    - ctx
    - this_obj
    - prop
    - val
    - getter
    - setter
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSValueConst
    - JSValueConst
    - JSValueConst
    - int
    assertStmts:
    - condition: (prs != NULL)
      pos:
        line_end: 9833
        line_start: 9833
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 10075
      start: 9801
    functionDepth: 16
    functionLinenumber: 9801
    functionLinenumberEnd: 10075
    functionName: JS_DefineProperty
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 14
    functionsReached:
    - get_shape_prop
    - JS_ThrowTypeErrorOrFalse
    - convert_fast_array_to_array
    - free_var_ref
    - JS_NewUint32
    - set_array_length
    - JS_CreateProperty
    - JS_ThrowTypeErrorNotAnObject
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - js_update_property_flags
    - __JS_AtomToUInt32
    - JS_MKPTR
    - JS_AutoInitProperty
    - __JS_AtomIsTaggedInt
    - JS_ToArrayLengthFree
    - JS_IsUndefined
    - JS_NewInt32
    - js_shape_prepare_update
    - JS_NumberIsInteger
    - JS_IsFunction
    - assert
    - JS_NumberIsNegativeOrMinusZero
    - JS_AtomIsNumericIndex1
    - js_same_value
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - get_prop_flags
    - JS_SetPropertyValue
    - check_define_prop_flags
    - find_own_property
    - set_value
    linkageType: ''
    returnType: int
    signature: "int JS_DefineProperty(JSContext *ctx, JSValueConst this_obj,\n                      JSAtom
      prop, JSValueConst val,\n                      JSValueConst getter, JSValueConst
      setter, int flags)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:10084,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10087,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:10089,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:10091,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:10096,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10097,1
    - Dst: JS_DupContext
      Src: /src/gpac/src/quickjs/quickjs.c:10099,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:10100,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:10101,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 6
    argNames:
    - ctx
    - this_obj
    - prop
    - id
    - opaque
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSAutoInitIDEnum
    - void*
    - int
    assertStmts:
    - condition: ((pr->u.init.realm_and_id & 3) == 0)
      pos:
        line_end: 10099
        line_start: 10099
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (id <= 3)
      pos:
        line_end: 10100
        line_start: 10100
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 10105
      start: 10077
    functionDepth: 8
    functionLinenumber: 10077
    functionLinenumberEnd: 10105
    functionName: JS_DefineAutoInitProperty
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupContext
    - JS_VALUE_GET_TAG
    - assert
    - unlikely
    - JS_VALUE_GET_OBJ
    - add_property
    - find_own_property
    - abort
    linkageType: ''
    returnType: int
    signature: "int JS_DefineAutoInitProperty(JSContext *ctx, JSValueConst this_obj,\n
      \                                    JSAtom prop, JSAutoInitIDEnum id,\n                                     void
      *opaque, int flags)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:10112,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 5
    argNames:
    - ctx
    - this_obj
    - prop
    - val
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSValue
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10116
      start: 10108
    functionDepth: 17
    functionLinenumber: 10108
    functionLinenumberEnd: 10116
    functionName: JS_DefinePropertyValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 5
    functionsReached:
    - JS_FreeValue
    - JS_DefineProperty
    linkageType: ''
    returnType: int
    signature: "int JS_DefinePropertyValue(JSContext *ctx, JSValueConst this_obj,\n
      \                          JSAtom prop, JSValue val, int flags)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:10123,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10124,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10125,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10126,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:10129,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:10130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 5
    argNames:
    - ctx
    - this_obj
    - prop
    - val
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValue
    - JSValue
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10132
      start: 10118
    functionDepth: 18
    functionLinenumber: 10118
    functionLinenumberEnd: 10132
    functionName: JS_DefinePropertyValueValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - JS_DefinePropertyValue
    - JS_FreeValue
    - unlikely
    - JS_ValueToAtom
    linkageType: ''
    returnType: int
    signature: "int JS_DefinePropertyValueValue(JSContext *ctx, JSValueConst this_obj,\n
      \                               JSValue prop, JSValue val, int flags)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_DefinePropertyValueValue
      Src: /src/gpac/src/quickjs/quickjs.c:10137,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:10137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ctx
    - this_obj
    - idx
    - val
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - uint32_t
    - JSValue
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10139
      start: 10134
    functionDepth: 19
    functionLinenumber: 10134
    functionLinenumberEnd: 10139
    functionName: JS_DefinePropertyValueUint32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValueValue
    - JS_NewUint32
    linkageType: ''
    returnType: int
    signature: "int JS_DefinePropertyValueUint32(JSContext *ctx, JSValueConst this_obj,\n
      \                                uint32_t idx, JSValue val, int flags)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_DefinePropertyValueValue
      Src: /src/gpac/src/quickjs/quickjs.c:10144,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:10144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ctx
    - this_obj
    - idx
    - val
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - int64_t
    - JSValue
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10146
      start: 10141
    functionDepth: 19
    functionLinenumber: 10141
    functionLinenumberEnd: 10146
    functionName: JS_DefinePropertyValueInt64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValueValue
    - JS_NewInt64
    linkageType: ''
    returnType: int
    signature: "int JS_DefinePropertyValueInt64(JSContext *ctx, JSValueConst this_obj,\n
      \                               int64_t idx, JSValue val, int flags)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:10153,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10155,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:10158,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:10159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - ctx
    - this_obj
    - prop
    - val
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - char*
    - JSValue
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10161
      start: 10148
    functionDepth: 18
    functionLinenumber: 10148
    functionLinenumberEnd: 10161
    functionName: JS_DefinePropertyValueStr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_FreeValue
    - JS_NewAtom
    - JS_FreeAtom
    - JS_DefinePropertyValue
    linkageType: ''
    returnType: int
    signature: "int JS_DefinePropertyValueStr(JSContext *ctx, JSValueConst this_obj,\n
      \                             const char *prop, JSValue val, int flags)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:10169,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10172,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - ctx
    - this_obj
    - prop
    - getter
    - setter
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSValue
    - JSValue
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10175
      start: 10164
    functionDepth: 17
    functionLinenumber: 10164
    functionLinenumberEnd: 10175
    functionName: JS_DefinePropertyGetSet
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_FreeValue
    - JS_DefineProperty
    linkageType: ''
    returnType: int
    signature: "int JS_DefinePropertyGetSet(JSContext *ctx, JSValueConst this_obj,\n
      \                           JSAtom prop, JSValue getter, JSValue setter,\n                            int
      flags)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_DefinePropertyValueValue
      Src: /src/gpac/src/quickjs/quickjs.c:10180,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:10180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ctx
    - this_obj
    - idx
    - val
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - int64_t
    - JSValue
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10183
      start: 10177
    functionDepth: 19
    functionLinenumber: 10177
    functionLinenumberEnd: 10183
    functionName: JS_CreateDataPropertyUint32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValueValue
    - JS_NewInt64
    linkageType: ''
    returnType: int
    signature: "int JS_CreateDataPropertyUint32(JSContext *ctx, JSValueConst this_obj,\n
      \                                      int64_t idx, JSValue val, int flags)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:10194,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10194,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:10200,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:10202,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10204
      start: 10187
    functionDepth: 1
    functionLinenumber: 10187
    functionLinenumberEnd: 10204
    functionName: js_object_has_name
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_OBJ
    - find_own_property
    linkageType: ''
    returnType: BOOL
    signature: BOOL js_object_has_name(JSContext *ctx, JSValueConst obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:10210,1
    - Dst: js_object_has_name
      Src: /src/gpac/src/quickjs/quickjs.c:10211,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:10212,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:10212,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - obj
    - name
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10216
      start: 10206
    functionDepth: 18
    functionLinenumber: 10206
    functionLinenumberEnd: 10216
    functionName: JS_DefineObjectName
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AtomToString
    - JS_IsObject
    - js_object_has_name
    - JS_DefinePropertyValue
    linkageType: ''
    returnType: int
    signature: "int JS_DefineObjectName(JSContext *ctx, JSValueConst obj,\n                               JSAtom
      name, int flags)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:10221,1
    - Dst: js_object_has_name
      Src: /src/gpac/src/quickjs/quickjs.c:10222,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:10225,1
    - Dst: js_get_function_name
      Src: /src/gpac/src/quickjs/quickjs.c:10228,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:10229,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:10230,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:10232,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 4
    argNames:
    - ctx
    - obj
    - str
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10236
      start: 10218
    functionDepth: 18
    functionLinenumber: 10218
    functionLinenumberEnd: 10236
    functionName: JS_DefineObjectNameComputed
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - js_get_function_name
    - JS_DefinePropertyValue
    - JS_IsException
    - js_object_has_name
    - JS_ValueToAtom
    - JS_IsObject
    linkageType: ''
    returnType: int
    signature: "int JS_DefineObjectNameComputed(JSContext *ctx, JSValueConst obj,\n
      \                                      JSValueConst str, int flags)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowSyntaxErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:10243,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - prop
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10244
      start: 10241
    functionDepth: 1
    functionLinenumber: 10241
    functionLinenumberEnd: 10244
    functionName: JS_ThrowSyntaxErrorVarRedeclaration
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowSyntaxErrorAtom
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ThrowSyntaxErrorVarRedeclaration(JSContext *ctx, JSAtom
      prop)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10253,1
    - Dst: find_own_property1
      Src: /src/gpac/src/quickjs/quickjs.c:10254,1
    - Dst: JS_ThrowTypeErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:10269,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10277,1
    - Dst: find_own_property1
      Src: /src/gpac/src/quickjs/quickjs.c:10278,1
    - Dst: JS_ThrowSyntaxErrorVarRedeclaration
      Src: /src/gpac/src/quickjs/quickjs.c:10281,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 31
    argCount: 3
    argNames:
    - ctx
    - prop
    - flags
    argTypes:
    - JSContext*
    - JSAtom
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10285
      start: 10248
    functionDepth: 2
    functionLinenumber: 10248
    functionLinenumberEnd: 10285
    functionName: JS_CheckDefineGlobalVar
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorAtom
    - JS_ThrowSyntaxErrorVarRedeclaration
    - JS_VALUE_GET_OBJ
    - find_own_property1
    linkageType: ''
    returnType: int
    signature: int JS_CheckDefineGlobalVar(JSContext *ctx, JSAtom prop, int flags)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10299,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10304,1
    - Dst: find_own_property1
      Src: /src/gpac/src/quickjs/quickjs.c:10309,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:10314,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10315,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 3
    argNames:
    - ctx
    - prop
    - def_flags
    argTypes:
    - JSContext*
    - JSAtom
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10319
      start: 10290
    functionDepth: 8
    functionLinenumber: 10290
    functionLinenumberEnd: 10319
    functionName: JS_DefineGlobalVar
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - add_property
    - unlikely
    - JS_VALUE_GET_OBJ
    - find_own_property1
    linkageType: ''
    returnType: int
    signature: int JS_DefineGlobalVar(JSContext *ctx, JSAtom prop, int def_flags)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10331,1
    - Dst: find_own_property1
      Src: /src/gpac/src/quickjs/quickjs.c:10332,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:10338,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - prop
    - func
    - def_flags
    argTypes:
    - JSContext*
    - JSAtom
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10342
      start: 10323
    functionDepth: 17
    functionLinenumber: 10323
    functionLinenumberEnd: 10342
    functionName: JS_DefineGlobalFunction
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefineProperty
    - JS_VALUE_GET_OBJ
    - find_own_property1
    linkageType: ''
    returnType: int
    signature: "int JS_DefineGlobalFunction(JSContext *ctx, JSAtom prop,\n                                   JSValueConst
      func, int def_flags)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10352,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:10353,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10356,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:10356,1
    - Dst: JS_ThrowReferenceErrorUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:10357,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10358,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10362,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:10363,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:10365,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10366,1
    - Dst: JS_GetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:10368,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - ctx
    - prop
    - throw_ref_error
    argTypes:
    - JSContext*
    - JSAtom
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10370
      start: 10344
    functionDepth: 14
    functionLinenumber: 10344
    functionLinenumberEnd: 10370
    functionName: JS_GetGlobalVar
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_GetPropertyInternal
    - unlikely
    - JS_VALUE_GET_OBJ
    - likely
    - JS_IsUninitialized
    - find_own_property
    - JS_ThrowReferenceErrorUninitialized
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_GetGlobalVar(JSContext *ctx, JSAtom prop,\n                                      BOOL
      throw_ref_error)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10380,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:10381,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10386,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:10386,1
    - Dst: JS_ThrowReferenceErrorUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:10387,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10390,1
    - Dst: JS_ThrowTypeErrorReadOnly
      Src: /src/gpac/src/quickjs/quickjs.c:10391,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10393,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:10396,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10400,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:10405,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 3
    argNames:
    - ctx
    - prop
    - sp
    argTypes:
    - JSContext*
    - JSAtom
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10407
      start: 10373
    functionDepth: 15
    functionLinenumber: 10373
    functionLinenumberEnd: 10407
    functionName: JS_GetGlobalVarRef
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_IsUninitialized
    - JS_HasProperty
    - JS_AtomToValue
    - JS_ThrowTypeErrorReadOnly
    - find_own_property
    - JS_ThrowReferenceErrorUninitialized
    linkageType: ''
    returnType: int
    signature: int JS_GetGlobalVarRef(JSContext *ctx, JSAtom prop, JSValue *sp)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10421,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:10422,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10426,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:10426,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10427,1
    - Dst: JS_ThrowReferenceErrorUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:10428,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10431,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10432,1
    - Dst: JS_ThrowTypeErrorReadOnly
      Src: /src/gpac/src/quickjs/quickjs.c:10433,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:10436,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10440,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:10441,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:10443,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:10446,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:10451,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10453,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:10456,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10457,1
    - Dst: JS_ThrowReferenceErrorNotDefined
      Src: /src/gpac/src/quickjs/quickjs.c:10458,1
    - Dst: JS_SetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:10461,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 4
    argNames:
    - ctx
    - prop
    - val
    - flag
    argTypes:
    - JSContext*
    - JSAtom
    - JSValue
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10463
      start: 10412
    functionDepth: 15
    functionLinenumber: 10412
    functionLinenumberEnd: 10463
    functionName: JS_SetGlobalVar
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowReferenceErrorNotDefined
    - JS_FreeValue
    - unlikely
    - JS_VALUE_GET_OBJ
    - likely
    - JS_SetPropertyInternal
    - JS_IsUninitialized
    - is_strict_mode
    - JS_HasProperty
    - JS_ThrowTypeErrorReadOnly
    - find_own_property
    - set_value
    - JS_ThrowReferenceErrorUninitialized
    linkageType: ''
    returnType: int
    signature: "int JS_SetGlobalVar(JSContext *ctx, JSAtom prop, JSValue val,\n                                  int
      flag)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10474,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:10475,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:10478,1
    - Dst: JS_DeleteProperty
      Src: /src/gpac/src/quickjs/quickjs.c:10482,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - ctx
    - prop
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10486
      start: 10466
    functionDepth: 15
    functionLinenumber: 10466
    functionLinenumberEnd: 10486
    functionName: JS_DeleteGlobalVar
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DeleteProperty
    - JS_HasProperty
    - JS_VALUE_GET_OBJ
    - find_own_property
    linkageType: ''
    returnType: int
    signature: int JS_DeleteGlobalVar(JSContext *ctx, JSAtom prop)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:10497,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:10498,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10500,1
    - Dst: delete_property
      Src: /src/gpac/src/quickjs/quickjs.c:10501,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10502,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:10506,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:10507,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - obj
    - prop
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10511
      start: 10491
    functionDepth: 12
    functionLinenumber: 10491
    functionLinenumberEnd: 10511
    functionName: JS_DeleteProperty
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - JS_ToObject
    - is_strict_mode
    - delete_property
    linkageType: ''
    returnType: int
    signature: int JS_DeleteProperty(JSContext *ctx, JSValueConst obj, JSAtom prop,
      int flags)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_DeleteProperty
      Src: /src/gpac/src/quickjs/quickjs.c:10520,1
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:10520,1
    - Dst: JS_NewAtomInt64
      Src: /src/gpac/src/quickjs/quickjs.c:10522,1
    - Dst: JS_DeleteProperty
      Src: /src/gpac/src/quickjs/quickjs.c:10525,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:10526,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - obj
    - idx
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - int64_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10528
      start: 10513
    functionDepth: 13
    functionLinenumber: 10513
    functionLinenumberEnd: 10528
    functionName: JS_DeletePropertyInt64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DeleteProperty
    - JS_FreeAtom
    - JS_NewAtomInt64
    - __JS_AtomFromUInt32
    linkageType: ''
    returnType: int
    signature: int JS_DeletePropertyInt64(JSContext *ctx, JSValueConst obj, int64_t
      idx, int flags)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:10533,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10535,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10544
      start: 10530
    functionDepth: 1
    functionLinenumber: 10530
    functionLinenumberEnd: 10544
    functionName: JS_IsFunction
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 45
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: BOOL
    signature: BOOL JS_IsFunction(JSContext *ctx, JSValueConst val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:10549,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10551,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - val
    - func
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSCFunction*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10556
      start: 10546
    functionDepth: 1
    functionLinenumber: 10546
    functionLinenumberEnd: 10556
    functionName: JS_IsCFunction
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: BOOL
    signature: BOOL JS_IsCFunction(JSContext *ctx, JSValueConst val, JSCFunction *func,
      int magic)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:10561,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10563,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10565
      start: 10558
    functionDepth: 1
    functionLinenumber: 10558
    functionLinenumberEnd: 10565
    functionName: JS_IsConstructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: BOOL
    signature: BOOL JS_IsConstructor(JSContext *ctx, JSValueConst val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:10570,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10572,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - func_obj
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10575
      start: 10567
    functionDepth: 1
    functionLinenumber: 10567
    functionLinenumberEnd: 10575
    functionName: JS_SetConstructorBit
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: BOOL
    signature: BOOL JS_SetConstructorBit(JSContext *ctx, JSValueConst func_obj, BOOL
      val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:10580,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10582,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10584
      start: 10577
    functionDepth: 1
    functionLinenumber: 10577
    functionLinenumberEnd: 10584
    functionName: JS_IsError
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: BOOL
    signature: BOOL JS_IsError(JSContext *ctx, JSValueConst val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - flag
    argTypes:
    - JSContext*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10590
      start: 10587
    functionDepth: 0
    functionLinenumber: 10587
    functionLinenumberEnd: 10590
    functionName: JS_SetUncatchableException
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void JS_SetUncatchableException(JSContext *ctx, BOOL flag)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:10595,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10596,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - obj
    - opaque
    argTypes:
    - JSValue
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10599
      start: 10592
    functionDepth: 1
    functionLinenumber: 10592
    functionLinenumberEnd: 10599
    functionName: JS_SetOpaque
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 128
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: void
    signature: void JS_SetOpaque(JSValue obj, void *opaque)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:10605,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10607,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - obj
    - class_id
    argTypes:
    - JSValueConst
    - JSClassID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10611
      start: 10602
    functionDepth: 1
    functionLinenumber: 10602
    functionLinenumberEnd: 10611
    functionName: JS_GetOpaque
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 444
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: void
    signature: void *JS_GetOpaque(JSValueConst obj, JSClassID class_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:10615,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10616,1
    - Dst: JS_ThrowTypeErrorInvalidClass
      Src: /src/gpac/src/quickjs/quickjs.c:10617,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctx
    - obj
    - class_id
    argTypes:
    - JSContext*
    - JSValueConst
    - JSClassID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10620
      start: 10613
    functionDepth: 2
    functionLinenumber: 10613
    functionLinenumberEnd: 10620
    functionName: JS_GetOpaque2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - unlikely
    - JS_ThrowTypeErrorInvalidClass
    linkageType: ''
    returnType: void
    signature: void *JS_GetOpaque2(JSContext *ctx, JSValueConst obj, JSClassID class_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:10625,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10629,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - obj
    - class_id
    argTypes:
    - JSValueConst
    - JSClassID*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10632
      start: 10622
    functionDepth: 1
    functionLinenumber: 10622
    functionLinenumberEnd: 10632
    functionName: JS_GetAnyOpaque
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 20
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: void
    signature: void *JS_GetAnyOpaque(JSValueConst obj, JSClassID *class_id)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:10641,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:10646,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:10647,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:10651,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:10651,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:10666,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:10667,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10668,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:10669,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10671,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:10672,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10674,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:10675,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:10686,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:10687,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:10689,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:10690,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:10691,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:10693,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10694,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10697,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10699,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:10702,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10704,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 67
    argCount: 3
    argNames:
    - ctx
    - val
    - hint
    argTypes:
    - JSContext*
    - JSValue
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10706
      start: 10634
    functionDepth: 12
    functionLinenumber: 10634
    functionLinenumberEnd: 10706
    functionName: JS_ToPrimitiveFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_TAG
    - JS_IsNull
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_IsFunction
    - JS_IsUndefined
    - JS_CallFree
    - JS_AtomToString
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ToPrimitiveFree(JSContext *ctx, JSValue val, int hint)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToPrimitiveFree
      Src: /src/gpac/src/quickjs/quickjs.c:10710,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10710,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - val
    - hint
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10711
      start: 10708
    functionDepth: 13
    functionLinenumber: 10708
    functionLinenumberEnd: 10711
    functionName: JS_ToPrimitive
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_ToPrimitiveFree
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ToPrimitive(JSContext *ctx, JSValueConst val, int hint)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:10716,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10718,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10720
      start: 10713
    functionDepth: 1
    functionLinenumber: 10713
    functionLinenumberEnd: 10720
    functionName: JS_SetIsHTMLDDA
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: void
    signature: void JS_SetIsHTMLDDA(JSContext *ctx, JSValueConst obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:10725,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10727,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10729
      start: 10722
    functionDepth: 1
    functionLinenumber: 10722
    functionLinenumberEnd: 10729
    functionName: JS_IsHTMLDDA
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: BOOL
    signature: BOOL JS_IsHTMLDDA(JSContext *ctx, JSValueConst obj)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:10733,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:10736,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:10740,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:10745,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10746,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:10751,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10752,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:10756,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:10759,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10773,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10778,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10781,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:10786,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:10787,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:10788,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10790,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 45
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10794
      start: 10731
    functionDepth: 1
    functionLinenumber: 10731
    functionLinenumberEnd: 10794
    functionName: JS_ToBoolFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_TAG_IS_FLOAT64
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_SHORT_BIG_INT
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - isnan
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_STRING_ROPE
    - JS_VALUE_GET_FLOAT64
    linkageType: ''
    returnType: int
    signature: int JS_ToBoolFree(JSContext *ctx, JSValue val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:10798,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10798,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10799
      start: 10796
    functionDepth: 2
    functionLinenumber: 10796
    functionLinenumberEnd: 10799
    functionName: JS_ToBool
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 101
    functionsReached:
    - JS_DupValue
    - JS_ToBoolFree
    linkageType: ''
    returnType: int
    signature: int JS_ToBool(JSContext *ctx, JSValueConst val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:10814,1
    - Dst: lre_is_space
      Src: /src/gpac/src/quickjs/quickjs.c:10815,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 1
    argNames:
    - pc
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10821
      start: 10801
    functionDepth: 1
    functionLinenumber: 10801
    functionLinenumberEnd: 10821
    functionName: skip_spaces
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - lre_is_space
    - unicode_from_utf8
    linkageType: ''
    returnType: int
    signature: int skip_spaces(const char *pc)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 8
    argCount: 1
    argNames:
    - c
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10833
      start: 10823
    functionDepth: 0
    functionLinenumber: 10823
    functionLinenumberEnd: 10833
    functionName: to_digit
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int to_digit(int c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - res
    - ','
    - carry_out
    - ','
    - op1
    - ','
    - op2
    - ','
    - carry_in
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10861
      start: 10850
    functionDepth: 0
    functionLinenumber: 10850
    functionLinenumberEnd: 10861
    functionName: ADDC
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ADDC(res, carry_out, op1, op2, carry_in)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clz32
      Src: /src/gpac/src/quickjs/quickjs.c:10866,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - js_limb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10867
      start: 10864
    functionDepth: 1
    functionLinenumber: 10864
    functionLinenumberEnd: 10867
    functionName: js_limb_clz
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - clz32
    linkageType: ''
    returnType: js_limb_t
    signature: js_limb_t js_limb_clz(js_limb_t a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clz64
      Src: /src/gpac/src/quickjs/quickjs.c:10871,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - js_limb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10872
      start: 10869
    functionDepth: 1
    functionLinenumber: 10869
    functionLinenumberEnd: 10872
    functionName: js_limb_clz
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - clz64
    linkageType: ''
    returnType: js_limb_t
    signature: js_limb_t js_limb_clz(js_limb_t a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_limb_clz
      Src: /src/gpac/src/quickjs/quickjs.c:10881,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - a
    argTypes:
    - js_limb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10882
      start: 10876
    functionDepth: 2
    functionLinenumber: 10876
    functionLinenumberEnd: 10882
    functionName: js_limb_safe_clz
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_limb_clz
    linkageType: ''
    returnType: js_limb_t
    signature: js_limb_t js_limb_safe_clz(js_limb_t a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ADDC
      Src: /src/gpac/src/quickjs/quickjs.c:10889,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - res
    - op1
    - op2
    - n
    - carry
    argTypes:
    - js_limb_t*
    - js_limb_t*
    - js_limb_t*
    - js_limb_t
    - js_limb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10892
      start: 10884
    functionDepth: 1
    functionLinenumber: 10884
    functionLinenumberEnd: 10892
    functionName: mp_add
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - ADDC
    linkageType: ''
    returnType: js_limb_t
    signature: "js_limb_t mp_add(js_limb_t *res, const js_limb_t *op1, const js_limb_t
      *op2,\n                     js_limb_t n, js_limb_t carry)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 5
    argNames:
    - res
    - op1
    - op2
    - n
    - carry
    argTypes:
    - js_limb_t*
    - js_limb_t*
    - js_limb_t*
    - int
    - js_limb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10910
      start: 10894
    functionDepth: 0
    functionLinenumber: 10894
    functionLinenumberEnd: 10910
    functionName: mp_sub
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: js_limb_t
    signature: "js_limb_t mp_sub(js_limb_t *res, const js_limb_t *op1, const js_limb_t
      *op2,\n                        int n, js_limb_t carry)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - res
    - op2
    - n
    argTypes:
    - js_limb_t*
    - js_limb_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10925
      start: 10913
    functionDepth: 0
    functionLinenumber: 10913
    functionLinenumberEnd: 10925
    functionName: mp_neg
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: js_limb_t
    signature: js_limb_t mp_neg(js_limb_t *res, const js_limb_t *op2, int n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - tabr
    - taba
    - n
    - b
    - l
    argTypes:
    - js_limb_t*
    - js_limb_t*
    - js_limb_t
    - js_limb_t
    - js_limb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10940
      start: 10928
    functionDepth: 0
    functionLinenumber: 10928
    functionLinenumberEnd: 10940
    functionName: mp_mul1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: js_limb_t
    signature: "js_limb_t mp_mul1(js_limb_t *tabr, const js_limb_t *taba, js_limb_t
      n,\n                      js_limb_t b, js_limb_t l)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - tabr
    - taba
    - n
    - b
    - r
    argTypes:
    - js_limb_t*
    - js_limb_t*
    - js_limb_t
    - js_limb_t
    - js_limb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10953
      start: 10942
    functionDepth: 0
    functionLinenumber: 10942
    functionLinenumberEnd: 10953
    functionName: mp_div1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: js_limb_t
    signature: "js_limb_t mp_div1(js_limb_t *tabr, const js_limb_t *taba, js_limb_t
      n,\n                      js_limb_t b, js_limb_t r)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - tabr
    - taba
    - n
    - b
    argTypes:
    - js_limb_t*
    - js_limb_t*
    - js_limb_t
    - js_limb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10969
      start: 10956
    functionDepth: 0
    functionLinenumber: 10956
    functionLinenumberEnd: 10969
    functionName: mp_add_mul1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: js_limb_t
    signature: "js_limb_t mp_add_mul1(js_limb_t *tabr, const js_limb_t *taba, js_limb_t
      n,\n                          js_limb_t b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mp_mul1
      Src: /src/gpac/src/quickjs/quickjs.c:10979,1
    - Dst: mp_add_mul1
      Src: /src/gpac/src/quickjs/quickjs.c:10981,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - result
    - op1
    - op1_size
    - op2
    - op2_size
    argTypes:
    - js_limb_t*
    - js_limb_t*
    - js_limb_t
    - js_limb_t*
    - js_limb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10984
      start: 10972
    functionDepth: 1
    functionLinenumber: 10972
    functionLinenumberEnd: 10984
    functionName: mp_mul_basecase
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - mp_add_mul1
    - mp_mul1
    linkageType: ''
    returnType: void
    signature: "void mp_mul_basecase(js_limb_t *result,\n                            const
      js_limb_t *op1, js_limb_t op1_size,\n                            const js_limb_t
      *op2, js_limb_t op2_size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - tabr
    - taba
    - n
    - b
    argTypes:
    - js_limb_t*
    - js_limb_t*
    - js_limb_t
    - js_limb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11001
      start: 10988
    functionDepth: 0
    functionLinenumber: 10988
    functionLinenumberEnd: 11001
    functionName: mp_sub_mul1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: js_limb_t
    signature: "js_limb_t mp_sub_mul1(js_limb_t *tabr, const js_limb_t *taba, js_limb_t
      n,\n                          js_limb_t b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - d
    argTypes:
    - js_limb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11010
      start: 11004
    functionDepth: 0
    functionLinenumber: 11004
    functionLinenumberEnd: 11010
    functionName: udiv1norm_init
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: js_limb_t
    signature: js_limb_t udiv1norm_init(js_limb_t d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 5
    argNames:
    - pr
    - a1
    - a0
    - d
    - d_inv
    argTypes:
    - js_limb_t*
    - js_limb_t
    - js_limb_t
    - js_limb_t
    - js_limb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11032
      start: 11014
    functionDepth: 0
    functionLinenumber: 11014
    functionLinenumberEnd: 11032
    functionName: udiv1norm
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: js_limb_t
    signature: "js_limb_t udiv1norm(js_limb_t *pr, js_limb_t a1, js_limb_t a0,\n                                js_limb_t
      d, js_limb_t d_inv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: udiv1norm_init
      Src: /src/gpac/src/quickjs/quickjs.c:11044,1
    - Dst: udiv1norm
      Src: /src/gpac/src/quickjs/quickjs.c:11046,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 5
    argNames:
    - tabr
    - taba
    - n
    - b
    - r
    argTypes:
    - js_limb_t*
    - js_limb_t*
    - js_limb_t
    - js_limb_t
    - js_limb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11057
      start: 11037
    functionDepth: 0
    functionLinenumber: 11037
    functionLinenumberEnd: 11057
    functionName: mp_div1norm
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - udiv1norm
    - udiv1norm_init
    linkageType: ''
    returnType: js_limb_t
    signature: "js_limb_t mp_div1norm(js_limb_t *tabr, const js_limb_t *taba, js_limb_t
      n,\n                          js_limb_t b, js_limb_t r)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: mp_div1norm
      Src: /src/gpac/src/quickjs/quickjs.c:11071,1
    - Dst: udiv1norm_init
      Src: /src/gpac/src/quickjs/quickjs.c:11077,1
    - Dst: mp_sub
      Src: /src/gpac/src/quickjs/quickjs.c:11092,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:11096,1
    - Dst: udiv1norm
      Src: /src/gpac/src/quickjs/quickjs.c:11099,1
    - Dst: mp_sub_mul1
      Src: /src/gpac/src/quickjs/quickjs.c:11106,1
    - Dst: mp_add
      Src: /src/gpac/src/quickjs/quickjs.c:11117,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 51
    argCount: 5
    argNames:
    - tabq
    - taba
    - na
    - tabb
    - nb
    argTypes:
    - js_limb_t*
    - js_limb_t*
    - js_limb_t
    - js_limb_t*
    - js_limb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11128
      start: 11063
    functionDepth: 2
    functionLinenumber: 11063
    functionLinenumberEnd: 11128
    functionName: mp_divnorm
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - udiv1norm
    - mp_add
    - unlikely
    - mp_div1norm
    - mp_sub
    - mp_sub_mul1
    - udiv1norm_init
    linkageType: ''
    returnType: void
    signature: "void mp_divnorm(js_limb_t *tabq, js_limb_t *taba, js_limb_t na,\n
      \                      const js_limb_t *tabb, js_limb_t nb)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - tabr
    - taba
    - n
    - shift
    argTypes:
    - js_limb_t*
    - js_limb_t*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11143
      start: 11131
    functionDepth: 0
    functionLinenumber: 11131
    functionLinenumberEnd: 11143
    functionName: mp_shl
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: js_limb_t
    signature: "js_limb_t mp_shl(js_limb_t *tabr, const js_limb_t *taba, int n,\n
      \                       int shift)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 5
    argNames:
    - tab_r
    - tab
    - n
    - shift
    - high
    argTypes:
    - js_limb_t*
    - js_limb_t*
    - int
    - int
    - js_limb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11160
      start: 11147
    functionDepth: 0
    functionLinenumber: 11147
    functionLinenumberEnd: 11160
    functionName: mp_shr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: js_limb_t
    signature: "js_limb_t mp_shr(js_limb_t *tab_r, const js_limb_t *tab, int n,\n
      \                       int shift, js_limb_t high)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:11166,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:11169,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - ctx
    - len
    argTypes:
    - JSContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11175
      start: 11162
    functionDepth: 12
    functionLinenumber: 11162
    functionLinenumberEnd: 11175
    functionName: js_bigint_new
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc
    - JS_ThrowRangeError
    linkageType: ''
    returnType: JSBigInt
    signature: JSBigInt *js_bigint_new(JSContext *ctx, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - buf
    - a
    argTypes:
    - JSBigIntBuf*
    - js_slimb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11184
      start: 11177
    functionDepth: 0
    functionLinenumber: 11177
    functionLinenumberEnd: 11184
    functionName: js_bigint_set_si
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSBigInt
    signature: JSBigInt *js_bigint_set_si(JSBigIntBuf *buf, js_slimb_t a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_bigint_set_si
      Src: /src/gpac/src/quickjs/quickjs.c:11189,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - buf
    - a
    argTypes:
    - JSBigIntBuf*
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11203
      start: 11186
    functionDepth: 1
    functionLinenumber: 11186
    functionLinenumberEnd: 11203
    functionName: js_bigint_set_si64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_set_si
    linkageType: ''
    returnType: JSBigInt
    signature: JSBigInt *js_bigint_set_si64(JSBigIntBuf *buf, int64_t a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_bigint_set_si
      Src: /src/gpac/src/quickjs/quickjs.c:11208,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:11208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - buf
    - val
    argTypes:
    - JSBigIntBuf*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11209
      start: 11206
    functionDepth: 1
    functionLinenumber: 11206
    functionLinenumberEnd: 11209
    functionName: js_bigint_set_short
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_set_si
    - JS_VALUE_GET_SHORT_BIG_INT
    linkageType: ''
    returnType: JSBigInt
    signature: JSBigInt *js_bigint_set_short(JSBigIntBuf *buf, JSValueConst val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:11215,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:11218,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:11220,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:11223,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - str
    - tab
    - len
    argTypes:
    - JSContext*
    - char*
    - js_limb_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11224
      start: 11211
    functionDepth: 0
    functionLinenumber: 11211
    functionLinenumberEnd: 11224
    functionName: js_bigint_dump1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    linkageType: ''
    returnType: __maybe_unused
    signature: "__maybe_unused js_bigint_dump1(JSContext *ctx, const char *str,\n
      \                                          const js_limb_t *tab, int len)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_bigint_dump1
      Src: /src/gpac/src/quickjs/quickjs.c:11229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - str
    - p
    argTypes:
    - JSContext*
    - char*
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11230
      start: 11226
    functionDepth: 1
    functionLinenumber: 11226
    functionLinenumberEnd: 11230
    functionName: js_bigint_dump
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_dump1
    linkageType: ''
    returnType: __maybe_unused
    signature: "__maybe_unused js_bigint_dump(JSContext *ctx, const char *str,\n                                          const
      JSBigInt *p)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:11235,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - a
    argTypes:
    - JSContext*
    - js_slimb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11240
      start: 11232
    functionDepth: 13
    functionLinenumber: 11232
    functionLinenumberEnd: 11240
    functionName: js_bigint_new_si
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_new
    linkageType: ''
    returnType: JSBigInt
    signature: JSBigInt *js_bigint_new_si(JSContext *ctx, js_slimb_t a)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_bigint_new_si
      Src: /src/gpac/src/quickjs/quickjs.c:11245,1
    - Dst: js_bigint_new_si
      Src: /src/gpac/src/quickjs/quickjs.c:11248,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:11251,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - a
    argTypes:
    - JSContext*
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11259
      start: 11242
    functionDepth: 14
    functionLinenumber: 11242
    functionLinenumberEnd: 11259
    functionName: js_bigint_new_si64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_new_si
    - js_bigint_new
    linkageType: ''
    returnType: JSBigInt
    signature: JSBigInt *js_bigint_new_si64(JSContext *ctx, int64_t a)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_bigint_new_si64
      Src: /src/gpac/src/quickjs/quickjs.c:11264,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:11267,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - ctx
    - a
    argTypes:
    - JSContext*
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11280
      start: 11261
    functionDepth: 15
    functionLinenumber: 11261
    functionLinenumberEnd: 11280
    functionName: js_bigint_new_ui64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_new_si64
    - js_bigint_new
    linkageType: ''
    returnType: JSBigInt
    signature: JSBigInt *js_bigint_new_ui64(JSContext *ctx, uint64_t a)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:11286,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:11291,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - ctx
    - a
    argTypes:
    - JSContext*
    - js_sdlimb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11298
      start: 11282
    functionDepth: 13
    functionLinenumber: 11282
    functionLinenumberEnd: 11298
    functionName: js_bigint_new_di
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_new
    linkageType: ''
    returnType: JSBigInt
    signature: JSBigInt *js_bigint_new_di(JSContext *ctx, js_sdlimb_t a)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:11307,1
    - Dst: js_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:11320,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - a
    - l
    argTypes:
    - JSContext*
    - JSBigInt*
    - int
    assertStmts:
    - condition: (a->header.ref_count == 1)
      pos:
        line_end: 11306
        line_start: 11306
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 11325
      start: 11303
    functionDepth: 3
    functionLinenumber: 11303
    functionLinenumberEnd: 11325
    functionName: js_bigint_normalize1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_realloc
    - assert
    linkageType: ''
    returnType: JSBigInt
    signature: JSBigInt *js_bigint_normalize1(JSContext *ctx, JSBigInt *a, int l)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_bigint_normalize1
      Src: /src/gpac/src/quickjs/quickjs.c:11329,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - a
    argTypes:
    - JSContext*
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11330
      start: 11327
    functionDepth: 4
    functionLinenumber: 11327
    functionLinenumberEnd: 11330
    functionName: js_bigint_normalize
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_normalize1
    linkageType: ''
    returnType: JSBigInt
    signature: JSBigInt *js_bigint_normalize(JSContext *ctx, JSBigInt *a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11336
      start: 11333
    functionDepth: 0
    functionLinenumber: 11333
    functionLinenumberEnd: 11336
    functionName: js_bigint_sign
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int js_bigint_sign(const JSBigInt *a)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11344,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11349,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - a
    argTypes:
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11355
      start: 11338
    functionDepth: 1
    functionLinenumber: 11338
    functionLinenumberEnd: 11355
    functionName: js_bigint_get_si_sat
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_sign
    linkageType: ''
    returnType: js_slimb_t
    signature: js_slimb_t js_bigint_get_si_sat(const JSBigInt *a)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:11365,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:11368,1
    - Dst: js_bigint_normalize
      Src: /src/gpac/src/quickjs/quickjs.c:11376,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - ctx
    - r
    - op1
    argTypes:
    - JSContext*
    - JSBigInt*
    - js_limb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11379
      start: 11358
    functionDepth: 5
    functionLinenumber: 11358
    functionLinenumberEnd: 11379
    functionName: js_bigint_extend
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_normalize
    - js_realloc
    - js_free
    linkageType: ''
    returnType: JSBigInt
    signature: "JSBigInt *js_bigint_extend(JSContext *ctx, JSBigInt *r,\n                                  js_limb_t
      op1)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:11391,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:11392,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:11393,1
    - Dst: ADDC
      Src: /src/gpac/src/quickjs/quickjs.c:11402,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11404,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11405,1
    - Dst: ADDC
      Src: /src/gpac/src/quickjs/quickjs.c:11410,1
    - Dst: ADDC
      Src: /src/gpac/src/quickjs/quickjs.c:11415,1
    - Dst: js_bigint_extend
      Src: /src/gpac/src/quickjs/quickjs.c:11421,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 4
    argNames:
    - ctx
    - a
    - b
    - b_neg
    argTypes:
    - JSContext*
    - JSBigInt*
    - JSBigInt*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11422
      start: 11384
    functionDepth: 13
    functionLinenumber: 11384
    functionLinenumberEnd: 11422
    functionName: js_bigint_add
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_extend
    - ADDC
    - max_int
    - js_bigint_sign
    - min_int
    - js_bigint_new
    linkageType: ''
    returnType: JSBigInt
    signature: "JSBigInt *js_bigint_add(JSContext *ctx, const JSBigInt *a,\n                               const
      JSBigInt *b, int b_neg)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_bigint_set_si
      Src: /src/gpac/src/quickjs/quickjs.c:11429,1
    - Dst: js_bigint_add
      Src: /src/gpac/src/quickjs/quickjs.c:11430,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - a
    argTypes:
    - JSContext*
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11431
      start: 11425
    functionDepth: 14
    functionLinenumber: 11425
    functionLinenumberEnd: 11431
    functionName: js_bigint_neg
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_set_si
    - js_bigint_add
    linkageType: ''
    returnType: JSBigInt
    signature: JSBigInt *js_bigint_neg(JSContext *ctx, const JSBigInt *a)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:11438,1
    - Dst: mp_mul_basecase
      Src: /src/gpac/src/quickjs/quickjs.c:11441,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11444,1
    - Dst: mp_sub
      Src: /src/gpac/src/quickjs/quickjs.c:11445,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11446,1
    - Dst: mp_sub
      Src: /src/gpac/src/quickjs/quickjs.c:11447,1
    - Dst: js_bigint_normalize
      Src: /src/gpac/src/quickjs/quickjs.c:11448,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - ctx
    - a
    - b
    argTypes:
    - JSContext*
    - JSBigInt*
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11449
      start: 11433
    functionDepth: 13
    functionLinenumber: 11433
    functionLinenumberEnd: 11449
    functionName: js_bigint_mul
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - mp_sub
    - mp_mul_basecase
    - js_bigint_normalize
    - js_bigint_sign
    - js_bigint_new
    linkageType: ''
    returnType: JSBigInt
    signature: "JSBigInt *js_bigint_mul(JSContext *ctx, const JSBigInt *a,\n                               const
      JSBigInt *b)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:11461,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11465,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11466,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:11470,1
    - Dst: mp_neg
      Src: /src/gpac/src/quickjs/quickjs.c:11474,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:11476,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:11482,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:11484,1
    - Dst: mp_neg
      Src: /src/gpac/src/quickjs/quickjs.c:11488,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:11490,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:11498,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:11499,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:11502,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:11505,1
    - Dst: js_bigint_new_si
      Src: /src/gpac/src/quickjs/quickjs.c:11509,1
    - Dst: js_limb_clz
      Src: /src/gpac/src/quickjs/quickjs.c:11514,1
    - Dst: mp_shl
      Src: /src/gpac/src/quickjs/quickjs.c:11516,1
    - Dst: mp_shl
      Src: /src/gpac/src/quickjs/quickjs.c:11517,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:11522,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:11524,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:11525,1
    - Dst: mp_divnorm
      Src: /src/gpac/src/quickjs/quickjs.c:11531,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:11532,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:11535,1
    - Dst: mp_shr
      Src: /src/gpac/src/quickjs/quickjs.c:11537,1
    - Dst: mp_neg
      Src: /src/gpac/src/quickjs/quickjs.c:11540,1
    - Dst: js_bigint_normalize1
      Src: /src/gpac/src/quickjs/quickjs.c:11541,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:11544,1
    - Dst: mp_neg
      Src: /src/gpac/src/quickjs/quickjs.c:11547,1
    - Dst: js_bigint_normalize
      Src: /src/gpac/src/quickjs/quickjs.c:11549,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 77
    argCount: 4
    argNames:
    - ctx
    - a
    - b
    - is_rem
    argTypes:
    - JSContext*
    - JSBigInt*
    - JSBigInt*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11552
      start: 11453
    functionDepth: 14
    functionLinenumber: 11453
    functionLinenumberEnd: 11552
    functionName: js_bigint_divrem
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - mp_shl
    - mp_neg
    - js_malloc
    - memcpy
    - js_free
    - mp_shr
    - JS_ThrowRangeError
    - js_bigint_new_si
    - js_bigint_normalize1
    - js_bigint_normalize
    - js_bigint_sign
    - js_limb_clz
    - mp_divnorm
    - js_bigint_new
    linkageType: ''
    returnType: JSBigInt
    signature: "JSBigInt *js_bigint_divrem(JSContext *ctx, const JSBigInt *a,\n                                  const
      JSBigInt *b, BOOL is_rem)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11571,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:11573,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:11602,1
    - Dst: js_bigint_normalize
      Src: /src/gpac/src/quickjs/quickjs.c:11604,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 41
    argCount: 4
    argNames:
    - ctx
    - a
    - b
    - op
    argTypes:
    - JSContext*
    - JSBigInt*
    - JSBigInt*
    - OPCodeEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11605
      start: 11555
    functionDepth: 13
    functionLinenumber: 11555
    functionLinenumberEnd: 11605
    functionName: js_bigint_logic
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_normalize
    - js_bigint_sign
    - abort
    - js_bigint_new
    linkageType: ''
    returnType: JSBigInt
    signature: "JSBigInt *js_bigint_logic(JSContext *ctx, const JSBigInt *a,\n                                 const
      JSBigInt *b, OPCodeEnum op)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:11612,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - a
    argTypes:
    - JSContext*
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11620
      start: 11607
    functionDepth: 13
    functionLinenumber: 11607
    functionLinenumberEnd: 11620
    functionName: js_bigint_not
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_new
    linkageType: ''
    returnType: JSBigInt
    signature: JSBigInt *js_bigint_not(JSContext *ctx, const JSBigInt *a)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: js_bigint_new_si
      Src: /src/gpac/src/quickjs/quickjs.c:11630,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:11633,1
    - Dst: mp_shl
      Src: /src/gpac/src/quickjs/quickjs.c:11643,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11644,1
    - Dst: js_bigint_extend
      Src: /src/gpac/src/quickjs/quickjs.c:11646,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 3
    argNames:
    - ctx
    - a
    - shift1
    argTypes:
    - JSContext*
    - JSBigInt*
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11649
      start: 11622
    functionDepth: 14
    functionLinenumber: 11622
    functionLinenumberEnd: 11649
    functionName: js_bigint_shl
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - mp_shl
    - js_bigint_extend
    - js_bigint_new_si
    - js_bigint_sign
    - js_bigint_new
    linkageType: ''
    returnType: JSBigInt
    signature: "JSBigInt *js_bigint_shl(JSContext *ctx, const JSBigInt *a,\n                               unsigned
      int shift1)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11659,1
    - Dst: js_bigint_new_si
      Src: /src/gpac/src/quickjs/quickjs.c:11661,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:11663,1
    - Dst: mp_shr
      Src: /src/gpac/src/quickjs/quickjs.c:11672,1
    - Dst: js_bigint_normalize
      Src: /src/gpac/src/quickjs/quickjs.c:11673,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 3
    argNames:
    - ctx
    - a
    - shift1
    argTypes:
    - JSContext*
    - JSBigInt*
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11676
      start: 11651
    functionDepth: 14
    functionLinenumber: 11651
    functionLinenumberEnd: 11676
    functionName: js_bigint_shr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_new
    - js_bigint_new_si
    - js_bigint_normalize
    - js_bigint_sign
    - mp_shr
    linkageType: ''
    returnType: JSBigInt
    signature: "JSBigInt *js_bigint_shr(JSContext *ctx, const JSBigInt *a,\n                               unsigned
      int shift1)"
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11685,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:11686,1
    - Dst: js_bigint_new_si
      Src: /src/gpac/src/quickjs/quickjs.c:11691,1
    - Dst: js_bigint_new_si
      Src: /src/gpac/src/quickjs/quickjs.c:11698,1
    - Dst: js_bigint_new_si
      Src: /src/gpac/src/quickjs/quickjs.c:11700,1
    - Dst: js_limb_clz
      Src: /src/gpac/src/quickjs/quickjs.c:11708,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:11720,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:11724,1
    - Dst: clz32
      Src: /src/gpac/src/quickjs/quickjs.c:11735,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:11737,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:11740,1
    - Dst: js_bigint_mul
      Src: /src/gpac/src/quickjs/quickjs.c:11742,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:11745,1
    - Dst: js_bigint_mul
      Src: /src/gpac/src/quickjs/quickjs.c:11748,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:11751,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:11757,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 72
    argCount: 3
    argNames:
    - ctx
    - a
    - b
    argTypes:
    - JSContext*
    - JSBigInt*
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11759
      start: 11678
    functionDepth: 14
    functionLinenumber: 11678
    functionLinenumberEnd: 11759
    functionName: js_bigint_pow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memcpy
    - js_free
    - JS_ThrowRangeError
    - clz32
    - memset
    - js_bigint_new_si
    - js_bigint_mul
    - js_bigint_sign
    - js_limb_clz
    - js_bigint_new
    linkageType: ''
    returnType: JSBigInt
    signature: JSBigInt *js_bigint_pow(JSContext *ctx, const JSBigInt *a, JSBigInt
      *b)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11772,1
    - Dst: clz64
      Src: /src/gpac/src/quickjs/quickjs.c:11809,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 41
    argCount: 3
    argNames:
    - ctx
    - pexp
    - a
    argTypes:
    - JSContext*
    - int*
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11820
      start: 11763
    functionDepth: 1
    functionLinenumber: 11763
    functionLinenumberEnd: 11820
    functionName: js_bigint_get_mant_exp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_sign
    - clz64
    linkageType: ''
    returnType: uint64_t
    signature: "uint64_t js_bigint_get_mant_exp(JSContext *ctx,\n                                       int
      *pexp, const JSBigInt *a)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - n
    argTypes:
    - uint64_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11827
      start: 11823
    functionDepth: 0
    functionLinenumber: 11823
    functionLinenumberEnd: 11827
    functionName: shr_rndn
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint64_t
    signature: uint64_t shr_rndn(uint64_t a, int n)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11841,1
    - Dst: js_bigint_get_mant_exp
      Src: /src/gpac/src/quickjs/quickjs.c:11842,1
    - Dst: shr_rndn
      Src: /src/gpac/src/quickjs/quickjs.c:11849,1
    - Dst: uint64_as_float64
      Src: /src/gpac/src/quickjs/quickjs.c:11857,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - ctx
    - a
    argTypes:
    - JSContext*
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11860
      start: 11831
    functionDepth: 2
    functionLinenumber: 11831
    functionLinenumberEnd: 11860
    functionName: js_bigint_to_float64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - shr_rndn
    - js_bigint_sign
    - uint64_as_float64
    - js_bigint_get_mant_exp
    linkageType: ''
    returnType: double
    signature: double js_bigint_to_float64(JSContext *ctx, const JSBigInt *a)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: float64_as_uint64
      Src: /src/gpac/src/quickjs/quickjs.c:11866,1
    - Dst: js_bigint_new_si
      Src: /src/gpac/src/quickjs/quickjs.c:11883,1
    - Dst: js_bigint_set_si64
      Src: /src/gpac/src/quickjs/quickjs.c:11906,1
    - Dst: js_bigint_shl
      Src: /src/gpac/src/quickjs/quickjs.c:11908,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 3
    argNames:
    - ctx
    - pres
    - a1
    argTypes:
    - JSContext*
    - int*
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11909
      start: 11864
    functionDepth: 15
    functionLinenumber: 11864
    functionLinenumberEnd: 11909
    functionName: js_bigint_from_float64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_shl
    - js_bigint_new_si
    - float64_as_uint64
    - js_bigint_set_si64
    linkageType: ''
    returnType: JSBigInt
    signature: JSBigInt *js_bigint_from_float64(JSContext *ctx, int *pres, double
      a1)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: float64_as_uint64
      Src: /src/gpac/src/quickjs/quickjs.c:11918,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11922,1
    - Dst: js_bigint_get_mant_exp
      Src: /src/gpac/src/quickjs/quickjs.c:11947,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 39
    argCount: 3
    argNames:
    - ctx
    - a
    - b
    argTypes:
    - JSContext*
    - JSBigInt*
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11963
      start: 11912
    functionDepth: 2
    functionLinenumber: 11912
    functionLinenumberEnd: 11963
    functionName: js_bigint_float64_cmp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_sign
    - float64_as_uint64
    - js_bigint_get_mant_exp
    linkageType: ''
    returnType: int
    signature: "int js_bigint_float64_cmp(JSContext *ctx, const JSBigInt *a,\n                                 double
      b)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11970,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11971,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 3
    argNames:
    - ctx
    - a
    - b
    argTypes:
    - JSContext*
    - JSBigInt*
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11995
      start: 11966
    functionDepth: 1
    functionLinenumber: 11966
    functionLinenumberEnd: 11995
    functionName: js_bigint_cmp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_sign
    linkageType: ''
    returnType: int
    signature: "int js_bigint_cmp(JSContext *ctx, const JSBigInt *a,\n                         const
      JSBigInt *b)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:12041,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:12045,1
    - Dst: clz32
      Src: /src/gpac/src/quickjs/quickjs.c:12049,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:12057,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:12058,1
    - Dst: to_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12069,1
    - Dst: mp_mul1
      Src: /src/gpac/src/quickjs/quickjs.c:12080,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:12095,1
    - Dst: to_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12097,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:12098,1
    - Dst: js_bigint_normalize
      Src: /src/gpac/src/quickjs/quickjs.c:12110,1
    - Dst: js_bigint_neg
      Src: /src/gpac/src/quickjs/quickjs.c:12114,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:12115,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 72
    argCount: 3
    argNames:
    - ctx
    - str
    - radix
    argTypes:
    - JSContext*
    - char*
    - int
    assertStmts:
    - condition: (c < radix)
      pos:
        line_end: 12097
        line_start: 12097
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 12119
      start: 12025
    functionDepth: 15
    functionLinenumber: 12025
    functionLinenumberEnd: 12119
    functionName: js_bigint_from_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_neg
    - js_free
    - to_digit
    - assert
    - JS_ThrowRangeError
    - clz32
    - mp_mul1
    - memset
    - js_bigint_normalize
    - max_int
    - strlen
    - js_bigint_new
    linkageType: ''
    returnType: JSBigInt
    signature: "JSBigInt *js_bigint_from_string(JSContext *ctx,\n                                       const
      char *str, int radix)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - q
    - n
    - base
    argTypes:
    - char*
    - int64_t
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12144
      start: 12126
    functionDepth: 0
    functionLinenumber: 12126
    functionLinenumberEnd: 12144
    functionName: js_u64toa
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *js_u64toa(char *q, int64_t n, unsigned int base)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 4
    argNames:
    - q
    - n
    - radix
    - len
    argTypes:
    - char*
    - js_limb_t
    - unsigned int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12167
      start: 12147
    functionDepth: 0
    functionLinenumber: 12147
    functionLinenumberEnd: 12167
    functionName: limb_to_a
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *limb_to_a(char *q, js_limb_t n, unsigned int radix, int len)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:12205,1
    - Dst: i64toa_radix
      Src: /src/gpac/src/quickjs/quickjs.c:12208,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:12208,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:12209,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:12217,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:12217,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:12218,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:12221,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:12224,1
    - Dst: js_bigint_neg
      Src: /src/gpac/src/quickjs/quickjs.c:12226,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:12232,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:12235,1
    - Dst: clz32
      Src: /src/gpac/src/quickjs/quickjs.c:12238,1
    - Dst: js_limb_safe_clz
      Src: /src/gpac/src/quickjs/quickjs.c:12239,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:12244,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:12246,1
    - Dst: js_u64toa
      Src: /src/gpac/src/quickjs/quickjs.c:12264,1
    - Dst: mp_div1
      Src: /src/gpac/src/quickjs/quickjs.c:12268,1
    - Dst: limb_to_a
      Src: /src/gpac/src/quickjs/quickjs.c:12269,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:12292,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:12293,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:12294,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 73
    argCount: 3
    argNames:
    - ctx
    - val
    - radix
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts:
    - condition: (JS_VALUE_GET_TAG(val) == JS_TAG_BIG_INT)
      pos:
        line_end: 12216
        line_start: 12216
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 12297
      start: 12203
    functionDepth: 15
    functionLinenumber: 12203
    functionLinenumberEnd: 12297
    functionName: js_bigint_to_string1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_neg
    - js_u64toa
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_SHORT_BIG_INT
    - JS_VALUE_GET_TAG
    - js_malloc
    - memcpy
    - js_limb_safe_clz
    - assert
    - i64toa_radix
    - js_free
    - mp_div1
    - clz32
    - js_new_string8_len
    - limb_to_a
    - js_bigint_sign
    - js_bigint_new
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bigint_to_string1(JSContext *ctx, JSValueConst val, int
      radix)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:12305,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:12306,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:12309,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - p
    argTypes:
    - JSContext*
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12311
      start: 12301
    functionDepth: 3
    functionLinenumber: 12301
    functionLinenumberEnd: 12311
    functionName: JS_CompactBigInt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - __JS_NewShortBigInt
    - js_free
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_CompactBigInt(JSContext *ctx, JSBigInt *p)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: to_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12393,1
    - Dst: strstart
      Src: /src/gpac/src/quickjs/quickjs.c:12400,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:12409,1
    - Dst: to_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12417,1
    - Dst: to_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12420,1
    - Dst: to_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12424,1
    - Dst: to_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12429,1
    - Dst: to_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12430,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12443,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12445,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12445,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:12456,1
    - Dst: js_malloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:12457,1
    - Dst: js_atod
      Src: /src/gpac/src/quickjs/quickjs.c:12491,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:12494,1
    - Dst: js_bigint_from_string
      Src: /src/gpac/src/quickjs/quickjs.c:12502,1
    - Dst: JS_CompactBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:12507,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:12511,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:12516,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:12524,1
    CyclomaticComplexity: 98
    EdgeCount: 98
    ICount: 173
    argCount: 5
    argNames:
    - ctx
    - str
    - pp
    - radix
    - flags
    argTypes:
    - JSContext*
    - char*
    - char**
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12526
      start: 12333
    functionDepth: 16
    functionLinenumber: 12333
    functionLinenumberEnd: 12526
    functionName: js_atof
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CompactBigInt
    - JS_NewFloat64
    - JS_ThrowOutOfMemory
    - to_digit
    - unlikely
    - js_atod
    - js_malloc_rt
    - strstart
    - js_free_rt
    - abort
    - is_digit
    - js_bigint_from_string
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_atof(JSContext *ctx, const char *str, const char **pp,\n
      \                      int radix, int flags)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:12540,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:12545,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:12546,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:12557,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:12557,1
    - Dst: JS_ToPrimitiveFree
      Src: /src/gpac/src/quickjs/quickjs.c:12563,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:12564,1
    - Dst: JS_ToCStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:12574,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:12575,1
    - Dst: skip_spaces
      Src: /src/gpac/src/quickjs/quickjs.c:12579,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:12581,1
    - Dst: js_atof
      Src: /src/gpac/src/quickjs/quickjs.c:12584,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:12585,1
    - Dst: skip_spaces
      Src: /src/gpac/src/quickjs/quickjs.c:12586,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:12588,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:12593,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:12597,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:12598,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:12600,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 63
    argCount: 3
    argNames:
    - ctx
    - val
    - flag
    argTypes:
    - JSContext*
    - JSValue
    - JSToNumberHintEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12605
      start: 12533
    functionDepth: 17
    functionLinenumber: 12533
    functionLinenumberEnd: 12605
    functionName: JS_ToNumberHintFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - skip_spaces
    - JS_VALUE_GET_INT
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - js_atof
    - JS_ToPrimitiveFree
    - JS_ToCStringLen
    - JS_VALUE_GET_NORM_TAG
    - JS_NewInt32
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_ToNumberHintFree(JSContext *ctx, JSValue val,\n                                   JSToNumberHintEnum
      flag)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToNumberHintFree
      Src: /src/gpac/src/quickjs/quickjs.c:12609,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12610
      start: 12607
    functionDepth: 18
    functionLinenumber: 12607
    functionLinenumberEnd: 12610
    functionName: JS_ToNumberFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ToNumberHintFree
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ToNumberFree(JSContext *ctx, JSValue val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToNumberHintFree
      Src: /src/gpac/src/quickjs/quickjs.c:12614,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12615
      start: 12612
    functionDepth: 18
    functionLinenumber: 12612
    functionLinenumberEnd: 12615
    functionName: JS_ToNumericFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToNumberHintFree
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ToNumericFree(JSContext *ctx, JSValue val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:12619,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:12619,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12620
      start: 12617
    functionDepth: 19
    functionLinenumber: 12617
    functionLinenumberEnd: 12620
    functionName: JS_ToNumeric
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_ToNumericFree
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ToNumeric(JSContext *ctx, JSValueConst val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:12628,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:12629,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:12631,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:12634,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:12637,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:12640,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - double*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12647
      start: 12622
    functionDepth: 19
    functionLinenumber: 12622
    functionLinenumberEnd: 12647
    functionName: __JS_ToFloat64Free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToNumberFree
    - JS_VALUE_GET_INT
    - JS_IsException
    - JS_VALUE_GET_NORM_TAG
    - JS_VALUE_GET_FLOAT64
    - abort
    linkageType: ''
    returnType: __exception
    signature: "__exception __JS_ToFloat64Free(JSContext *ctx, double *pres,\n                                          JSValue
      val)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:12653,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:12655,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:12657,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:12658,1
    - Dst: __JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:12661,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - double*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12663
      start: 12649
    functionDepth: 20
    functionLinenumber: 12649
    functionLinenumberEnd: 12663
    functionName: JS_ToFloat64Free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_TAG_IS_FLOAT64
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - __JS_ToFloat64Free
    - JS_VALUE_GET_FLOAT64
    linkageType: ''
    returnType: int
    signature: int JS_ToFloat64Free(JSContext *ctx, double *pres, JSValue val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:12667,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:12667,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - double*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12668
      start: 12665
    functionDepth: 21
    functionLinenumber: 12665
    functionLinenumberEnd: 12668
    functionName: JS_ToFloat64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 79
    functionsReached:
    - JS_ToFloat64Free
    - JS_DupValue
    linkageType: ''
    returnType: int
    signature: int JS_ToFloat64(JSContext *ctx, double *pres, JSValueConst val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:12672,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:12672,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12673
      start: 12670
    functionDepth: 19
    functionLinenumber: 12670
    functionLinenumberEnd: 12673
    functionName: JS_ToNumber
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_DupValue
    - JS_ToNumberFree
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ToNumber(JSContext *ctx, JSValueConst val)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:12682,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:12688,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:12688,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:12692,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:12693,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:12694,1
    - Dst: trunc
      Src: /src/gpac/src/quickjs/quickjs.c:12697,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:12698,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:12703,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:12704,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12709
      start: 12676
    functionDepth: 19
    functionLinenumber: 12676
    functionLinenumberEnd: 12709
    functionName: JS_ToIntegerFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToNumberFree
    - JS_VALUE_GET_INT
    - JS_NewFloat64
    - JS_IsException
    - isnan
    - JS_VALUE_GET_NORM_TAG
    - JS_VALUE_GET_FLOAT64
    - JS_NewInt32
    - trunc
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused JS_ToIntegerFree(JSContext *ctx, JSValue val)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:12718,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:12724,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:12731,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:12732,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:12745,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:12746,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 37
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12754
      start: 12712
    functionDepth: 19
    functionLinenumber: 12712
    functionLinenumberEnd: 12754
    functionName: JS_ToInt32SatFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToNumberFree
    - JS_VALUE_GET_INT
    - JS_IsException
    - isnan
    - JS_VALUE_GET_NORM_TAG
    - JS_VALUE_GET_FLOAT64
    linkageType: ''
    returnType: int
    signature: int JS_ToInt32SatFree(JSContext *ctx, int *pres, JSValue val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToInt32SatFree
      Src: /src/gpac/src/quickjs/quickjs.c:12758,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:12758,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12759
      start: 12756
    functionDepth: 20
    functionLinenumber: 12756
    functionLinenumberEnd: 12759
    functionName: JS_ToInt32Sat
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_ToInt32SatFree
    linkageType: ''
    returnType: int
    signature: int JS_ToInt32Sat(JSContext *ctx, int *pres, JSValueConst val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToInt32SatFree
      Src: /src/gpac/src/quickjs/quickjs.c:12764,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:12764,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 6
    argNames:
    - ctx
    - pres
    - val
    - min
    - max
    - min_offset
    argTypes:
    - JSContext*
    - int*
    - JSValueConst
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12776
      start: 12761
    functionDepth: 20
    functionLinenumber: 12761
    functionLinenumberEnd: 12776
    functionName: JS_ToInt32Clamp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_ToInt32SatFree
    linkageType: ''
    returnType: int
    signature: "int JS_ToInt32Clamp(JSContext *ctx, int *pres, JSValueConst val,\n
      \                   int min, int max, int min_offset)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:12783,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:12789,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:12796,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:12797,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:12810,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:12811,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 35
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int64_t*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12817
      start: 12778
    functionDepth: 19
    functionLinenumber: 12778
    functionLinenumberEnd: 12817
    functionName: JS_ToInt64SatFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToNumberFree
    - JS_VALUE_GET_INT
    - JS_IsException
    - isnan
    - JS_VALUE_GET_NORM_TAG
    - JS_VALUE_GET_FLOAT64
    linkageType: ''
    returnType: int
    signature: int JS_ToInt64SatFree(JSContext *ctx, int64_t *pres, JSValue val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToInt64SatFree
      Src: /src/gpac/src/quickjs/quickjs.c:12821,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:12821,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int64_t*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12822
      start: 12819
    functionDepth: 20
    functionLinenumber: 12819
    functionLinenumberEnd: 12822
    functionName: JS_ToInt64Sat
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_ToInt64SatFree
    linkageType: ''
    returnType: int
    signature: int JS_ToInt64Sat(JSContext *ctx, int64_t *pres, JSValueConst val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToInt64SatFree
      Src: /src/gpac/src/quickjs/quickjs.c:12827,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:12827,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 6
    argNames:
    - ctx
    - pres
    - val
    - min
    - max
    - neg_offset
    argTypes:
    - JSContext*
    - int64_t*
    - JSValueConst
    - int64_t
    - int64_t
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12837
      start: 12824
    functionDepth: 20
    functionLinenumber: 12824
    functionLinenumberEnd: 12837
    functionName: JS_ToInt64Clamp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_ToInt64SatFree
    linkageType: ''
    returnType: int
    signature: "int JS_ToInt64Clamp(JSContext *ctx, int64_t *pres, JSValueConst val,\n
      \                   int64_t min, int64_t max, int64_t neg_offset)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:12847,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:12853,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:12860,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:12864,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:12881,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:12882,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 39
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int64_t*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12890
      start: 12841
    functionDepth: 19
    functionLinenumber: 12841
    functionLinenumberEnd: 12890
    functionName: JS_ToInt64Free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToNumberFree
    - JS_VALUE_GET_INT
    - JS_IsException
    - likely
    - JS_VALUE_GET_NORM_TAG
    - JS_VALUE_GET_FLOAT64
    linkageType: ''
    returnType: int
    signature: int JS_ToInt64Free(JSContext *ctx, int64_t *pres, JSValue val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToInt64Free
      Src: /src/gpac/src/quickjs/quickjs.c:12894,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:12894,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int64_t*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12895
      start: 12892
    functionDepth: 20
    functionLinenumber: 12892
    functionLinenumberEnd: 12895
    functionName: JS_ToInt64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 21
    functionsReached:
    - JS_DupValue
    - JS_ToInt64Free
    linkageType: ''
    returnType: int
    signature: int JS_ToInt64(JSContext *ctx, int64_t *pres, JSValueConst val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:12899,1
    - Dst: JS_ToBigInt64
      Src: /src/gpac/src/quickjs/quickjs.c:12900,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/quickjs/quickjs.c:12902,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int64_t*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12903
      start: 12897
    functionDepth: 21
    functionLinenumber: 12897
    functionLinenumberEnd: 12903
    functionName: JS_ToInt64Ext
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsBigInt
    - JS_ToInt64
    - JS_ToBigInt64
    linkageType: ''
    returnType: int
    signature: int JS_ToInt64Ext(JSContext *ctx, int64_t *pres, JSValueConst val)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:12912,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:12918,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:12925,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:12929,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:12947,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:12948,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 40
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int32_t*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12956
      start: 12906
    functionDepth: 19
    functionLinenumber: 12906
    functionLinenumberEnd: 12956
    functionName: JS_ToInt32Free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ToNumberFree
    - JS_VALUE_GET_INT
    - JS_IsException
    - likely
    - JS_VALUE_GET_NORM_TAG
    - JS_VALUE_GET_FLOAT64
    linkageType: ''
    returnType: int
    signature: int JS_ToInt32Free(JSContext *ctx, int32_t *pres, JSValue val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToInt32Free
      Src: /src/gpac/src/quickjs/quickjs.c:12960,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:12960,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int32_t*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12961
      start: 12958
    functionDepth: 20
    functionLinenumber: 12958
    functionLinenumberEnd: 12961
    functionName: JS_ToInt32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 138
    functionsReached:
    - JS_DupValue
    - JS_ToInt32Free
    linkageType: ''
    returnType: int
    signature: int JS_ToInt32(JSContext *ctx, int32_t *pres, JSValueConst val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToInt32Free
      Src: /src/gpac/src/quickjs/quickjs.c:12965,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - uint32_t*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12966
      start: 12963
    functionDepth: 20
    functionLinenumber: 12963
    functionLinenumberEnd: 12966
    functionName: JS_ToUint32Free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToInt32Free
    linkageType: ''
    returnType: int
    signature: int JS_ToUint32Free(JSContext *ctx, uint32_t *pres, JSValue val)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:12974,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:12980,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:12981,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:12981,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:12985,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:12986,1
    - Dst: lrint
      Src: /src/gpac/src/quickjs/quickjs.c:12994,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:12999,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:13000,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int32_t*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13008
      start: 12968
    functionDepth: 19
    functionLinenumber: 12968
    functionLinenumberEnd: 13008
    functionName: JS_ToUint8ClampFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ToNumberFree
    - JS_VALUE_GET_INT
    - JS_IsException
    - isnan
    - lrint
    - JS_VALUE_GET_NORM_TAG
    - max_int
    - JS_VALUE_GET_FLOAT64
    - min_int
    linkageType: ''
    returnType: int
    signature: int JS_ToUint8ClampFree(JSContext *ctx, int32_t *pres, JSValue val)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:13015,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:13022,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:13029,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:13031,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:13041,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:13042,1
    - Dst: JS_ToArrayLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:13045,1
    - Dst: JS_ToUint32
      Src: /src/gpac/src/quickjs/quickjs.c:13049,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:13050,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:13053,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:13054,1
    - Dst: JS_ToArrayLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:13057,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:13061,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 52
    argCount: 4
    argNames:
    - ctx
    - plen
    - val
    - is_array_ctor
    argTypes:
    - JSContext*
    - uint32_t*
    - JSValue
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13070
      start: 13010
    functionDepth: 19
    functionLinenumber: 13010
    functionLinenumberEnd: 13070
    functionName: JS_ToArrayLengthFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - JS_TAG_IS_FLOAT64
    - JS_ToNumberFree
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - JS_IsException
    - JS_FreeValue
    - JS_ToArrayLengthFree
    - JS_ThrowRangeError
    - JS_VALUE_GET_FLOAT64
    - JS_ToUint32
    linkageType: ''
    returnType: __exception
    signature: "__exception JS_ToArrayLengthFree(JSContext *ctx, uint32_t *plen,\n
      \                                           JSValue val, BOOL is_array_ctor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: isfinite
      Src: /src/gpac/src/quickjs/quickjs.c:13076,1
    - Dst: floor
      Src: /src/gpac/src/quickjs/quickjs.c:13076,1
    - Dst: fabs
      Src: /src/gpac/src/quickjs/quickjs.c:13077,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13078
      start: 13074
    functionDepth: 0
    functionLinenumber: 13074
    functionLinenumberEnd: 13078
    functionName: is_safe_integer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - isfinite
    - fabs
    - floor
    linkageType: ''
    returnType: BOOL
    signature: BOOL is_safe_integer(double d)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToInt64Sat
      Src: /src/gpac/src/quickjs/quickjs.c:13083,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:13086,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - ctx
    - plen
    - val
    argTypes:
    - JSContext*
    - uint64_t*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13092
      start: 13080
    functionDepth: 21
    functionLinenumber: 13080
    functionLinenumberEnd: 13092
    functionName: JS_ToIndex
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ToInt64Sat
    - JS_ThrowRangeError
    linkageType: ''
    returnType: int
    signature: int JS_ToIndex(JSContext *ctx, uint64_t *plen, JSValueConst val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:13099,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:13100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ctx
    - plen
    - val
    argTypes:
    - JSContext*
    - int64_t*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13102
      start: 13096
    functionDepth: 21
    functionLinenumber: 13096
    functionLinenumberEnd: 13102
    functionName: JS_ToLengthFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - JS_ToInt64Clamp
    linkageType: ''
    returnType: __exception
    signature: "__exception JS_ToLengthFree(JSContext *ctx, int64_t *plen,\n                                       JSValue
      val)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsNumber
      Src: /src/gpac/src/quickjs/quickjs.c:13108,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:13110,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:13110,1
    - Dst: isfinite
      Src: /src/gpac/src/quickjs/quickjs.c:13112,1
    - Dst: floor
      Src: /src/gpac/src/quickjs/quickjs.c:13112,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13113
      start: 13105
    functionDepth: 22
    functionLinenumber: 13105
    functionLinenumberEnd: 13113
    functionName: JS_NumberIsInteger
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_IsNumber
    - isfinite
    - unlikely
    - JS_ToFloat64
    - floor
    linkageType: ''
    returnType: int
    signature: int JS_NumberIsInteger(JSContext *ctx, JSValueConst val)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:13119,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:13124,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:13130,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:13134,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:13137,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:13138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13143
      start: 13115
    functionDepth: 1
    functionLinenumber: 13115
    functionLinenumberEnd: 13143
    functionName: JS_NumberIsNegativeOrMinusZero
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_SHORT_BIG_INT
    - JS_VALUE_GET_NORM_TAG
    - JS_VALUE_GET_FLOAT64
    - js_bigint_sign
    linkageType: ''
    returnType: BOOL
    signature: BOOL JS_NumberIsNegativeOrMinusZero(JSContext *ctx, JSValueConst val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_bigint_to_string1
      Src: /src/gpac/src/quickjs/quickjs.c:13147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13148
      start: 13145
    functionDepth: 16
    functionLinenumber: 13145
    functionLinenumberEnd: 13148
    functionName: js_bigint_to_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_to_string1
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_bigint_to_string(JSContext *ctx, JSValueConst val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_dtoa_max_len
      Src: /src/gpac/src/quickjs/quickjs.c:13157,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:13161,1
    - Dst: js_dtoa
      Src: /src/gpac/src/quickjs/quickjs.c:13169,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:13170,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:13171,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 5
    argNames:
    - ctx
    - d
    - radix
    - n_digits
    - flags
    argTypes:
    - JSContext*
    - double
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13173
      start: 13150
    functionDepth: 5
    functionLinenumber: 13150
    functionLinenumberEnd: 13173
    functionName: js_dtoa2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc
    - js_dtoa
    - js_new_string8_len
    - js_dtoa_max_len
    - js_free
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_dtoa2(JSContext *ctx,\n                        double d,
      int radix, int n_digits, int flags)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:13180,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:13183,1
    - Dst: js_linearize_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:13185,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:13185,1
    - Dst: i32toa
      Src: /src/gpac/src/quickjs/quickjs.c:13189,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:13189,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:13190,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:13194,1
    - Dst: JS_VALUE_GET_BOOL
      Src: /src/gpac/src/quickjs/quickjs.c:13194,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:13197,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:13199,1
    - Dst: JS_ToPrimitive
      Src: /src/gpac/src/quickjs/quickjs.c:13205,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:13206,1
    - Dst: JS_ToStringInternal
      Src: /src/gpac/src/quickjs/quickjs.c:13208,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:13209,1
    - Dst: js_new_string8
      Src: /src/gpac/src/quickjs/quickjs.c:13214,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:13217,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:13219,1
    - Dst: js_dtoa2
      Src: /src/gpac/src/quickjs/quickjs.c:13222,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:13222,1
    - Dst: js_bigint_to_string
      Src: /src/gpac/src/quickjs/quickjs.c:13226,1
    - Dst: js_new_string8
      Src: /src/gpac/src/quickjs/quickjs.c:13228,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 45
    argCount: 3
    argNames:
    - ctx
    - val
    - is_ToPropertyKey
    argTypes:
    - JSContext*
    - JSValueConst
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13230
      start: 13175
    functionDepth: 17
    functionLinenumber: 13175
    functionLinenumberEnd: 13230
    functionName: JS_ToStringInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ToPrimitive
    - JS_DupValue
    - JS_VALUE_GET_INT
    - js_dtoa2
    - JS_ThrowTypeError
    - JS_IsException
    - i32toa
    - JS_ToStringInternal
    - js_linearize_string_rope
    - JS_VALUE_GET_BOOL
    - JS_FreeValue
    - js_bigint_to_string
    - JS_VALUE_GET_NORM_TAG
    - js_new_string8_len
    - js_new_string8
    - JS_VALUE_GET_FLOAT64
    - JS_AtomToString
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ToStringInternal(JSContext *ctx, JSValueConst val, BOOL
      is_ToPropertyKey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringInternal
      Src: /src/gpac/src/quickjs/quickjs.c:13234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13235
      start: 13232
    functionDepth: 18
    functionLinenumber: 13232
    functionLinenumberEnd: 13235
    functionName: JS_ToString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - JS_ToStringInternal
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ToString(JSContext *ctx, JSValueConst val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:13240,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:13241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13243
      start: 13237
    functionDepth: 19
    functionLinenumber: 13237
    functionLinenumberEnd: 13243
    functionName: JS_ToStringFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - JS_ToString
    - JS_FreeValue
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ToStringFree(JSContext *ctx, JSValue val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:13247,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:13247,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:13248,1
    - Dst: JS_InvokeFree
      Src: /src/gpac/src/quickjs/quickjs.c:13249,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13250
      start: 13245
    functionDepth: 20
    functionLinenumber: 13245
    functionLinenumberEnd: 13250
    functionName: JS_ToLocaleStringFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsNull
    - JS_ToStringFree
    - JS_IsUndefined
    - JS_InvokeFree
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ToLocaleStringFree(JSContext *ctx, JSValue val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringInternal
      Src: /src/gpac/src/quickjs/quickjs.c:13254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13255
      start: 13252
    functionDepth: 18
    functionLinenumber: 13252
    functionLinenumberEnd: 13255
    functionName: JS_ToPropertyKey
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ToStringInternal
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ToPropertyKey(JSContext *ctx, JSValueConst val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:13259,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:13261,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:13262,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13263
      start: 13257
    functionDepth: 19
    functionLinenumber: 13257
    functionLinenumberEnd: 13263
    functionName: JS_ToStringCheckObject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToString
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeError
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ToStringCheckObject(JSContext *ctx, JSValueConst val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSPrintValueState*::write_func
      Src: /src/gpac/src/quickjs/quickjs.c:13281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - c
    argTypes:
    - JSPrintValueState*
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13282
      start: 13279
    functionDepth: 0
    functionLinenumber: 13279
    functionLinenumberEnd: 13282
    functionName: js_putc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JSPrintValueState*::write_func
    linkageType: ''
    returnType: void
    signature: void js_putc(JSPrintValueState *s, char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSPrintValueState*::write_func
      Src: /src/gpac/src/quickjs/quickjs.c:13286,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:13286,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - str
    argTypes:
    - JSPrintValueState*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13287
      start: 13284
    functionDepth: 0
    functionLinenumber: 13284
    functionLinenumberEnd: 13287
    functionName: js_puts
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JSPrintValueState*::write_func
    - strlen
    linkageType: ''
    returnType: void
    signature: void js_puts(JSPrintValueState *s, const char *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: format
      Src: /src/gpac/src/quickjs/quickjs.c:13291,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:13298,1
    - Dst: vsnprintf
      Src: /src/gpac/src/quickjs/quickjs.c:13299,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:13300,1
    - Dst: JSPrintValueState*::write_func
      Src: /src/gpac/src/quickjs/quickjs.c:13301,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:13301,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - fmt
    argTypes:
    - JSPrintValueState*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13302
      start: 13291
    functionDepth: 0
    functionLinenumber: 13291
    functionLinenumberEnd: 13302
    functionName: js_printf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - va_end
    - va_start
    - JSPrintValueState*::write_func
    - vsnprintf
    - format
    - strlen
    linkageType: ''
    returnType: void
    signature: void js_printf(JSPrintValueState *s, const char *fmt, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_dtoa
      Src: /src/gpac/src/quickjs/quickjs.c:13309,1
    - Dst: JSPrintValueState*::write_func
      Src: /src/gpac/src/quickjs/quickjs.c:13310,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - d
    argTypes:
    - JSPrintValueState*
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13311
      start: 13304
    functionDepth: 1
    functionLinenumber: 13304
    functionLinenumberEnd: 13311
    functionName: js_print_float64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_dtoa
    - JSPrintValueState*::write_func
    linkageType: ''
    returnType: void
    signature: void js_print_float64(JSPrintValueState *s, double d)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:13315,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:13316,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:13318,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:13319,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - val
    argTypes:
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13324
      start: 13313
    functionDepth: 1
    functionLinenumber: 13313
    functionLinenumberEnd: 13324
    functionName: js_string_get_length
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_PTR
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t js_string_get_length(JSValueConst val)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:13333,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13352,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13353,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13359,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13363,1
    - Dst: is_hi_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:13365,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:13368,1
    - Dst: is_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:13369,1
    - Dst: from_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:13372,1
    - Dst: is_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:13373,1
    - Dst: unicode_to_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:13376,1
    - Dst: JSPrintValueState*::write_func
      Src: /src/gpac/src/quickjs/quickjs.c:13377,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 63
    argCount: 4
    argNames:
    - s
    - p
    - len
    - sep
    argTypes:
    - JSPrintValueState*
    - JSString*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13382
      start: 13327
    functionDepth: 1
    functionLinenumber: 13327
    functionLinenumberEnd: 13382
    functionName: js_print_string1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_printf
    - unicode_to_utf8
    - JSPrintValueState*::write_func
    - is_lo_surrogate
    - string_get
    - js_putc
    - is_hi_surrogate
    - from_surrogate
    linkageType: ''
    returnType: void
    signature: void js_print_string1(JSPrintValueState *s, JSString *p, int len, int
      sep)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:13387,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:13388,1
    - Dst: min_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:13391,1
    - Dst: js_print_string1
      Src: /src/gpac/src/quickjs/quickjs.c:13392,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:13394,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:13395,1
    - Dst: js_print_string_rec
      Src: /src/gpac/src/quickjs/quickjs.c:13396,1
    - Dst: js_print_string_rec
      Src: /src/gpac/src/quickjs/quickjs.c:13397,1
    - Dst: js_string_get_length
      Src: /src/gpac/src/quickjs/quickjs.c:13397,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13399,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:13399,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 4
    argNames:
    - s
    - val
    - sep
    - pos
    argTypes:
    - JSPrintValueState*
    - JSValueConst
    - int
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13401
      start: 13384
    functionDepth: 2
    functionLinenumber: 13384
    functionLinenumberEnd: 13401
    functionName: js_print_string_rec
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_printf
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_STRING
    - min_uint32
    - js_string_get_length
    - js_print_string_rec
    - js_print_string1
    linkageType: ''
    returnType: void
    signature: "void js_print_string_rec(JSPrintValueState *s, JSValueConst val,\n
      \                               int sep, uint32_t pos)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:13406,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:13407,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13408,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13413,1
    - Dst: js_print_string_rec
      Src: /src/gpac/src/quickjs/quickjs.c:13414,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13415,1
    - Dst: js_string_get_length
      Src: /src/gpac/src/quickjs/quickjs.c:13416,1
    - Dst: js_string_get_length
      Src: /src/gpac/src/quickjs/quickjs.c:13417,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13418,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - s
    - val
    argTypes:
    - JSPrintValueState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13420
      start: 13403
    functionDepth: 3
    functionLinenumber: 13403
    functionLinenumberEnd: 13420
    functionName: js_print_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_printf
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_STRING
    - js_string_get_length
    - js_print_string_rec
    - js_putc
    linkageType: ''
    returnType: void
    signature: void js_print_string(JSPrintValueState *s, JSValueConst val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToCStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:13426,1
    - Dst: JSPrintValueState*::write_func
      Src: /src/gpac/src/quickjs/quickjs.c:13428,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:13429,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - val
    argTypes:
    - JSPrintValueState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13431
      start: 13422
    functionDepth: 2
    functionLinenumber: 13422
    functionLinenumberEnd: 13431
    functionName: js_print_raw_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToCStringLen
    - JSPrintValueState*::write_func
    - JS_FreeCString
    linkageType: ''
    returnType: void
    signature: void js_print_raw_string(JSPrintValueState *s, JSValueConst val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:13440,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 9
    argCount: 1
    argNames:
    - p
    argTypes:
    - JSString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13446
      start: 13433
    functionDepth: 1
    functionLinenumber: 13433
    functionLinenumberEnd: 13446
    functionName: is_ascii_ident
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_get
    linkageType: ''
    returnType: BOOL
    signature: BOOL is_ascii_ident(const JSString *p)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:13451,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13452,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:13452,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:13454,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:13456,1
    - Dst: is_ascii_ident
      Src: /src/gpac/src/quickjs/quickjs.c:13459,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13461,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:13461,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13464,1
    - Dst: js_print_string1
      Src: /src/gpac/src/quickjs/quickjs.c:13465,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13466,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - s
    - atom
    argTypes:
    - JSPrintValueState*
    - JSAtom
    assertStmts:
    - condition: (atom < s->rt->atom_size)
      pos:
        line_end: 13455
        line_start: 13455
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 13469
      start: 13448
    functionDepth: 2
    functionLinenumber: 13448
    functionLinenumberEnd: 13469
    functionName: js_print_atom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_printf
    - is_ascii_ident
    - __JS_AtomToUInt32
    - __JS_AtomIsTaggedInt
    - js_puts
    - assert
    - string_get
    - js_putc
    - js_print_string1
    linkageType: ''
    returnType: void
    signature: void js_print_atom(JSPrintValueState *s, JSAtom atom)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:13478,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:13484,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:13486,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:13488,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - p
    argTypes:
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13492
      start: 13472
    functionDepth: 1
    functionLinenumber: 13472
    functionLinenumberEnd: 13492
    functionName: js_print_array_get_length
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_FLOAT64
    - JS_VALUE_GET_NORM_TAG
    - JS_VALUE_GET_INT
    - find_own_property
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t js_print_array_get_length(JSObject *p)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13500,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13503,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - s
    - pcomma_state
    argTypes:
    - JSPrintValueState*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13507
      start: 13494
    functionDepth: 1
    functionLinenumber: 13494
    functionLinenumberEnd: 13507
    functionName: js_print_comma
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_printf
    linkageType: ''
    returnType: void
    signature: void js_print_comma(JSPrintValueState *s, int *pcomma_state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_print_comma
      Src: /src/gpac/src/quickjs/quickjs.c:13512,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13513,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - s
    - pcomma_state
    - n
    argTypes:
    - JSPrintValueState*
    - int*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13514
      start: 13509
    functionDepth: 2
    functionLinenumber: 13509
    functionLinenumberEnd: 13514
    functionName: js_print_more_items
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_printf
    - js_print_comma
    linkageType: ''
    returnType: void
    signature: "void js_print_more_items(JSPrintValueState *s, int *pcomma_state,\n
      \                               uint32_t n)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:13526,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13530,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:13532,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:13537,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:13540,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:13547,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:13548,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13567,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13569,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13572,1
    - Dst: lre_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:13574,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:13575,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13577,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 55
    argCount: 2
    argNames:
    - s
    - p1
    argTypes:
    - JSPrintValueState*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13580
      start: 13517
    functionDepth: 1
    functionLinenumber: 13517
    functionLinenumberEnd: 13580
    functionName: js_print_regexp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_puts
    - countof
    - lre_get_flags
    - string_get
    - js_putc
    linkageType: ''
    returnType: void
    signature: void js_print_regexp(JSPrintValueState *s, JSObject *p1)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: get_prop_string
      Src: /src/gpac/src/quickjs/quickjs.c:13588,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:13588,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:13590,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:13592,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:13593,1
    - Dst: get_prop_string
      Src: /src/gpac/src/quickjs/quickjs.c:13596,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:13596,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:13598,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:13599,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:13601,1
    - Dst: get_prop_string
      Src: /src/gpac/src/quickjs/quickjs.c:13604,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:13604,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13606,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:13610,1
    - Dst: JSPrintValueState*::write_func
      Src: /src/gpac/src/quickjs/quickjs.c:13613,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:13615,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 2
    argNames:
    - s
    - p
    argTypes:
    - JSPrintValueState*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13617
      start: 13583
    functionDepth: 2
    functionLinenumber: 13583
    functionLinenumberEnd: 13617
    functionName: js_print_error
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - js_puts
    - strlen
    - JSPrintValueState*::write_func
    - js_putc
    - get_prop_string
    - JS_FreeCString
    linkageType: ''
    returnType: void
    signature: void js_print_error(JSPrintValueState *s, JSObject *p)
  - BBCount: 52
    BranchProfiles: []
    Callsites:
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13633,1
    - Dst: js_print_array_get_length
      Src: /src/gpac/src/quickjs/quickjs.c:13637,1
    - Dst: min_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:13639,1
    - Dst: js_print_comma
      Src: /src/gpac/src/quickjs/quickjs.c:13641,1
    - Dst: js_print_value
      Src: /src/gpac/src/quickjs/quickjs.c:13642,1
    - Dst: js_print_more_items
      Src: /src/gpac/src/quickjs/quickjs.c:13645,1
    - Dst: js_print_comma
      Src: /src/gpac/src/quickjs/quickjs.c:13648,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13649,1
    - Dst: typed_array_size_log2
      Src: /src/gpac/src/quickjs/quickjs.c:13653,1
    - Dst: js_print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:13657,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13658,1
    - Dst: min_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:13661,1
    - Dst: js_print_comma
      Src: /src/gpac/src/quickjs/quickjs.c:13664,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13688,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13691,1
    - Dst: js_print_float64
      Src: /src/gpac/src/quickjs/quickjs.c:13694,1
    - Dst: fromfp16
      Src: /src/gpac/src/quickjs/quickjs.c:13694,1
    - Dst: js_print_float64
      Src: /src/gpac/src/quickjs/quickjs.c:13697,1
    - Dst: js_print_float64
      Src: /src/gpac/src/quickjs/quickjs.c:13700,1
    - Dst: js_print_more_items
      Src: /src/gpac/src/quickjs/quickjs.c:13705,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13709,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13713,1
    - Dst: get_prop_string
      Src: /src/gpac/src/quickjs/quickjs.c:13714,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:13714,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:13716,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:13718,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:13719,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13721,1
    - Dst: js_print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:13729,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13730,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:13732,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:13733,1
    - Dst: js_print_comma
      Src: /src/gpac/src/quickjs/quickjs.c:13734,1
    - Dst: js_print_value
      Src: /src/gpac/src/quickjs/quickjs.c:13737,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13739,1
    - Dst: js_print_value
      Src: /src/gpac/src/quickjs/quickjs.c:13740,1
    - Dst: js_print_more_items
      Src: /src/gpac/src/quickjs/quickjs.c:13747,1
    - Dst: js_print_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:13749,1
    - Dst: get_date_string
      Src: /src/gpac/src/quickjs/quickjs.c:13753,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:13753,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:13754,1
    - Dst: js_print_raw_string
      Src: /src/gpac/src/quickjs/quickjs.c:13756,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:13757,1
    - Dst: js_print_error
      Src: /src/gpac/src/quickjs/quickjs.c:13760,1
    - Dst: js_print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:13765,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13766,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13768,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:13776,1
    - Dst: js_print_comma
      Src: /src/gpac/src/quickjs/quickjs.c:13784,1
    - Dst: js_print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:13785,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13786,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13791,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13795,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13797,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13799,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13804,1
    - Dst: js_print_value
      Src: /src/gpac/src/quickjs/quickjs.c:13806,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13810,1
    - Dst: js_autoinit_get_realm
      Src: /src/gpac/src/quickjs/quickjs.c:13811,1
    - Dst: js_autoinit_get_id
      Src: /src/gpac/src/quickjs/quickjs.c:13812,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13817,1
    - Dst: js_print_value
      Src: /src/gpac/src/quickjs/quickjs.c:13820,1
    - Dst: js_print_more_items
      Src: /src/gpac/src/quickjs/quickjs.c:13827,1
    - Dst: js_class_has_bytecode
      Src: /src/gpac/src/quickjs/quickjs.c:13829,1
    - Dst: js_print_comma
      Src: /src/gpac/src/quickjs/quickjs.c:13835,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13836,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13839,1
    - Dst: js_print_value
      Src: /src/gpac/src/quickjs/quickjs.c:13840,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13842,1
    - Dst: js_print_comma
      Src: /src/gpac/src/quickjs/quickjs.c:13845,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13846,1
    - Dst: js_print_value
      Src: /src/gpac/src/quickjs/quickjs.c:13847,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:13847,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13853,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13856,1
    CyclomaticComplexity: 72
    EdgeCount: 72
    ICount: 213
    argCount: 2
    argNames:
    - s
    - p
    argTypes:
    - JSPrintValueState*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13858
      start: 13619
    functionDepth: 3
    functionLinenumber: 13619
    functionLinenumberEnd: 13858
    functionName: js_print_object
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_print_regexp
    - get_shape_prop
    - js_print_raw_string
    - js_class_has_bytecode
    - js_print_comma
    - js_puts
    - JS_FreeValueRT
    - list_entry
    - list_for_each
    - JS_FreeCString
    - js_print_value
    - js_print_float64
    - JS_MKPTR
    - js_print_more_items
    - fromfp16
    - get_prop_string
    - typed_array_size_log2
    - js_autoinit_get_id
    - js_print_error
    - js_print_array_get_length
    - js_printf
    - JS_IsException
    - min_uint32
    - get_date_string
    - js_print_atom
    - js_putc
    - js_autoinit_get_realm
    linkageType: ''
    returnType: void
    signature: void js_print_object(JSPrintValueState *s, JSObject *p)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - s
    - p
    argTypes:
    - JSPrintValueState*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13867
      start: 13860
    functionDepth: 0
    functionLinenumber: 13860
    functionLinenumberEnd: 13867
    functionName: js_print_stack_index
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int js_print_stack_index(JSPrintValueState *s, JSObject *p)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:13871,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13876,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:13876,1
    - Dst: JS_VALUE_GET_BOOL
      Src: /src/gpac/src/quickjs/quickjs.c:13879,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:13896,1
    - Dst: js_print_float64
      Src: /src/gpac/src/quickjs/quickjs.c:13899,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:13899,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13902,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:13902,1
    - Dst: js_bigint_to_string
      Src: /src/gpac/src/quickjs/quickjs.c:13906,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:13907,1
    - Dst: js_print_raw_string
      Src: /src/gpac/src/quickjs/quickjs.c:13909,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13910,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:13911,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:13916,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:13918,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13920,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13921,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13924,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13926,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13928,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13931,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13933,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:13939,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13940,1
    - Dst: js_print_string
      Src: /src/gpac/src/quickjs/quickjs.c:13942,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:13947,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:13948,1
    - Dst: js_print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:13949,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13950,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:13955,1
    - Dst: js_print_stack_index
      Src: /src/gpac/src/quickjs/quickjs.c:13957,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13959,1
    - Dst: js_print_object
      Src: /src/gpac/src/quickjs/quickjs.c:13962,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:13962,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13966,1
    - Dst: js_print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:13967,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13969,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13971,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:13977,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:13978,1
    - Dst: js_print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:13979,1
    - Dst: js_get_atom_index
      Src: /src/gpac/src/quickjs/quickjs.c:13979,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13980,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:13984,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13987,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 108
    argCount: 2
    argNames:
    - s
    - val
    argTypes:
    - JSPrintValueState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13990
      start: 13869
    functionDepth: 17
    functionLinenumber: 13869
    functionLinenumberEnd: 13990
    functionName: js_print_value
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_VALUE_GET_SHORT_BIG_INT
    - js_print_raw_string
    - js_puts
    - JS_FreeValueRT
    - js_get_atom_index
    - js_print_float64
    - js_bigint_to_string
    - JS_VALUE_GET_FLOAT64
    - js_print_stack_index
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_BOOL
    - js_print_object
    - js_printf
    - JS_VALUE_GET_INT
    - JS_IsException
    - js_print_string
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_STRING_ROPE
    - JS_VALUE_GET_NORM_TAG
    - js_print_atom
    - js_putc
    - js_bigint_sign
    linkageType: ''
    returnType: void
    signature: void js_print_value(JSPrintValueState *s, JSValueConst val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:13994,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - options
    argTypes:
    - JSPrintValueOptions*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13998
      start: 13992
    functionDepth: 0
    functionLinenumber: 13992
    functionLinenumberEnd: 13998
    functionName: JS_PrintValueSetDefaultOptions
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: void JS_PrintValueSetDefaultOptions(JSPrintValueOptions *options)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_PrintValueSetDefaultOptions
      Src: /src/gpac/src/quickjs/quickjs.c:14008,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:14012,1
    - Dst: js_print_value
      Src: /src/gpac/src/quickjs/quickjs.c:14022,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 6
    argNames:
    - rt
    - ctx
    - write_func
    - write_opaque
    - val
    - options
    argTypes:
    - JSRuntime*
    - JSContext*
    - JSPrintValueWrite*
    - void*
    - JSValueConst
    - JSPrintValueOptions*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14023
      start: 14000
    functionDepth: 18
    functionLinenumber: 14000
    functionLinenumberEnd: 14023
    functionName: JS_PrintValueInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_print_value
    - JS_PrintValueSetDefaultOptions
    - min_int
    linkageType: ''
    returnType: void
    signature: "void JS_PrintValueInternal(JSRuntime *rt, JSContext *ctx,\n                                  JSPrintValueWrite
      *write_func, void *write_opaque,\n                                  JSValueConst
      val, const JSPrintValueOptions *options)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_PrintValueInternal
      Src: /src/gpac/src/quickjs/quickjs.c:14028,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - rt
    - write_func
    - write_opaque
    - val
    - options
    argTypes:
    - JSRuntime*
    - JSPrintValueWrite*
    - void*
    - JSValueConst
    - JSPrintValueOptions*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14029
      start: 14025
    functionDepth: 19
    functionLinenumber: 14025
    functionLinenumberEnd: 14029
    functionName: JS_PrintValueRT
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_PrintValueInternal
    linkageType: ''
    returnType: void
    signature: "void JS_PrintValueRT(JSRuntime *rt, JSPrintValueWrite *write_func,
      void *write_opaque,\n                     JSValueConst val, const JSPrintValueOptions
      *options)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_PrintValueInternal
      Src: /src/gpac/src/quickjs/quickjs.c:14034,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ctx
    - write_func
    - write_opaque
    - val
    - options
    argTypes:
    - JSContext*
    - JSPrintValueWrite*
    - void*
    - JSValueConst
    - JSPrintValueOptions*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14035
      start: 14031
    functionDepth: 19
    functionLinenumber: 14031
    functionLinenumberEnd: 14035
    functionName: JS_PrintValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_PrintValueInternal
    linkageType: ''
    returnType: void
    signature: "void JS_PrintValue(JSContext *ctx, JSPrintValueWrite *write_func,
      void *write_opaque,\n                   JSValueConst val, const JSPrintValueOptions
      *options)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fwrite
      Src: /src/gpac/src/quickjs/quickjs.c:14040,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - opaque
    - buf
    - len
    argTypes:
    - void*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14041
      start: 14037
    functionDepth: 0
    functionLinenumber: 14037
    functionLinenumberEnd: 14041
    functionName: js_dump_value_write
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - fwrite
    linkageType: ''
    returnType: void
    signature: void js_dump_value_write(void *opaque, const char *buf, size_t len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:14046,1
    - Dst: js_print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:14051,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - atom
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14052
      start: 14043
    functionDepth: 3
    functionLinenumber: 14043
    functionLinenumberEnd: 14052
    functionName: print_atom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 4
    functionsReached:
    - memset
    - js_print_atom
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused print_atom(JSContext *ctx, JSAtom atom)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14056,1
    - Dst: JS_PrintValue
      Src: /src/gpac/src/quickjs/quickjs.c:14057,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14058,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - str
    - val
    argTypes:
    - JSContext*
    - char*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14059
      start: 14054
    functionDepth: 20
    functionLinenumber: 14054
    functionLinenumberEnd: 14059
    functionName: JS_DumpValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - JS_PrintValue
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused JS_DumpValue(JSContext *ctx, const char *str, JSValueConst
      val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14063,1
    - Dst: JS_PrintValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:14064,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14065,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - rt
    - str
    - val
    argTypes:
    - JSRuntime*
    - char*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14066
      start: 14061
    functionDepth: 20
    functionLinenumber: 14061
    functionLinenumberEnd: 14066
    functionName: JS_DumpValueRT
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_PrintValueRT
    - printf
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused JS_DumpValueRT(JSRuntime *rt, const char *str, JSValueConst
      val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14070,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14072
      start: 14068
    functionDepth: 0
    functionLinenumber: 14068
    functionLinenumberEnd: 14072
    functionName: JS_DumpObjectHeader
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - printf
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused JS_DumpObjectHeader(JSRuntime *rt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14082,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14086,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14091,1
    - Dst: JS_PrintValueSetDefaultOptions
      Src: /src/gpac/src/quickjs/quickjs.c:14094,1
    - Dst: JS_PrintValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:14098,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:14098,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - rt
    - p
    argTypes:
    - JSRuntime*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14101
      start: 14075
    functionDepth: 20
    functionLinenumber: 14075
    functionLinenumberEnd: 14101
    functionName: JS_DumpObject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_PrintValueRT
    - printf
    - JS_MKPTR
    - JS_PrintValueSetDefaultOptions
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused JS_DumpObject(JSRuntime *rt, JSObject *p)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_DumpObject
      Src: /src/gpac/src/quickjs/quickjs.c:14106,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14108,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14113,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14116,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14119,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14122,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14125,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14128,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14131,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14134,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 2
    argNames:
    - rt
    - p
    argTypes:
    - JSRuntime*
    - JSGCObjectHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14136
      start: 14103
    functionDepth: 21
    functionLinenumber: 14103
    functionLinenumberEnd: 14136
    functionName: JS_DumpGCObject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - printf
    - JS_DumpObject
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused JS_DumpGCObject(JSRuntime *rt, JSGCObjectHeader *p)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_resolve_proxy
      Src: /src/gpac/src/quickjs/quickjs.c:14142,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14144,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:14145,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14150
      start: 14140
    functionDepth: 1
    functionLinenumber: 14140
    functionLinenumberEnd: 14150
    functionName: JS_IsArray
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 16
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    - js_resolve_proxy
    linkageType: ''
    returnType: int
    signature: int JS_IsArray(JSContext *ctx, JSValueConst val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:14154,1
    - Dst: isfinite
      Src: /src/gpac/src/quickjs/quickjs.c:14154,1
    - Dst: fabs
      Src: /src/gpac/src/quickjs/quickjs.c:14154,1
    - Dst: pow
      Src: /src/gpac/src/quickjs/quickjs.c:14158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - double
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14160
      start: 14152
    functionDepth: 1
    functionLinenumber: 14152
    functionLinenumberEnd: 14160
    functionName: js_pow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - pow
    - isfinite
    - unlikely
    - fabs
    linkageType: ''
    returnType: double
    signature: double js_pow(double a, double b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14165,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14168,1
    - Dst: js_bigint_new_si64
      Src: /src/gpac/src/quickjs/quickjs.c:14171,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:14174,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - v
    argTypes:
    - JSContext*
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14177
      start: 14162
    functionDepth: 15
    functionLinenumber: 14162
    functionLinenumberEnd: 14177
    functionName: JS_NewBigInt64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_bigint_new_si64
    - __JS_NewShortBigInt
    - JS_MKPTR
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_NewBigInt64(JSContext *ctx, int64_t v)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14182,1
    - Dst: js_bigint_new_ui64
      Src: /src/gpac/src/quickjs/quickjs.c:14185,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:14188,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - v
    argTypes:
    - JSContext*
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14190
      start: 14179
    functionDepth: 16
    functionLinenumber: 14179
    functionLinenumberEnd: 14190
    functionName: JS_NewBigUint64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_MKPTR
    - js_bigint_new_ui64
    - __JS_NewShortBigInt
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_NewBigUint64(JSContext *ctx, uint64_t v)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToCStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:14199,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14200,1
    - Dst: skip_spaces
      Src: /src/gpac/src/quickjs/quickjs.c:14204,1
    - Dst: JS_NewBigInt64
      Src: /src/gpac/src/quickjs/quickjs.c:14206,1
    - Dst: js_atof
      Src: /src/gpac/src/quickjs/quickjs.c:14209,1
    - Dst: skip_spaces
      Src: /src/gpac/src/quickjs/quickjs.c:14210,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14211,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14213,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:14218,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14220
      start: 14193
    functionDepth: 17
    functionLinenumber: 14193
    functionLinenumberEnd: 14220
    functionName: JS_StringToBigInt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBigInt64
    - skip_spaces
    - JS_IsException
    - JS_FreeValue
    - js_atof
    - JS_ToCStringLen
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_StringToBigInt(JSContext *ctx, JSValue val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_StringToBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14224,1
    - Dst: JS_VALUE_IS_NAN
      Src: /src/gpac/src/quickjs/quickjs.c:14225,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:14226,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14228
      start: 14222
    functionDepth: 18
    functionLinenumber: 14222
    functionLinenumberEnd: 14228
    functionName: JS_StringToBigIntErr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_IS_NAN
    - JS_StringToBigInt
    - JS_ThrowSyntaxError
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_StringToBigIntErr(JSContext *ctx, JSValue val)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14236,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14247,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14247,1
    - Dst: JS_StringToBigIntErr
      Src: /src/gpac/src/quickjs/quickjs.c:14251,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14252,1
    - Dst: JS_ToPrimitiveFree
      Src: /src/gpac/src/quickjs/quickjs.c:14256,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14257,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14262,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:14263,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 37
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14266
      start: 14231
    functionDepth: 19
    functionLinenumber: 14231
    functionLinenumberEnd: 14266
    functionName: JS_ToBigIntFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_INT
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_ToPrimitiveFree
    - JS_VALUE_GET_NORM_TAG
    - __JS_NewShortBigInt
    - JS_StringToBigIntErr
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ToBigIntFree(JSContext *ctx, JSValue val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToBigIntFree
      Src: /src/gpac/src/quickjs/quickjs.c:14270,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:14270,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14271
      start: 14268
    functionDepth: 20
    functionLinenumber: 14268
    functionLinenumberEnd: 14271
    functionName: JS_ToBigInt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_ToBigIntFree
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ToBigInt(JSContext *ctx, JSValueConst val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToBigIntFree
      Src: /src/gpac/src/quickjs/quickjs.c:14278,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14279,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14283,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14284,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:14286,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14293,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int64_t*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14297
      start: 14274
    functionDepth: 20
    functionLinenumber: 14274
    functionLinenumberEnd: 14297
    functionName: JS_ToBigInt64Free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_SHORT_BIG_INT
    - JS_VALUE_GET_TAG
    - JS_IsException
    - JS_FreeValue
    - JS_ToBigIntFree
    linkageType: ''
    returnType: int
    signature: int JS_ToBigInt64Free(JSContext *ctx, int64_t *pres, JSValue val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToBigInt64Free
      Src: /src/gpac/src/quickjs/quickjs.c:14301,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:14301,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int64_t*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14302
      start: 14299
    functionDepth: 21
    functionLinenumber: 14299
    functionLinenumberEnd: 14302
    functionName: JS_ToBigInt64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ToBigInt64Free
    - JS_DupValue
    linkageType: ''
    returnType: int
    signature: int JS_ToBigInt64(JSContext *ctx, int64_t *pres, JSValueConst val)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:14317,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14317,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:14319,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14320,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14322,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14327,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:14338,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:14345,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:14347,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14353,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:14356,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14361,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14366,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14369,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:14372,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14375,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:14378,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:14385,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:14389,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14390,1
    - Dst: js_bigint_set_si
      Src: /src/gpac/src/quickjs/quickjs.c:14397,1
    - Dst: js_bigint_add
      Src: /src/gpac/src/quickjs/quickjs.c:14398,1
    - Dst: js_bigint_neg
      Src: /src/gpac/src/quickjs/quickjs.c:14402,1
    - Dst: js_bigint_not
      Src: /src/gpac/src/quickjs/quickjs.c:14405,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:14408,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14410,1
    - Dst: JS_CompactBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14413,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:14420,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:14433,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:14435,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 129
    argCount: 3
    argNames:
    - ctx
    - sp
    - op
    argTypes:
    - JSContext*
    - JSValue*
    - OPCodeEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14443
      start: 14305
    functionDepth: 19
    functionLinenumber: 14305
    functionLinenumberEnd: 14443
    functionName: js_unary_arith_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_neg
    - JS_VALUE_GET_SHORT_BIG_INT
    - JS_NewInt64
    - JS_TAG_IS_FLOAT64
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_FLOAT64
    - abort
    - JS_VALUE_GET_PTR
    - js_bigint_set_si
    - JS_ToNumericFree
    - JS_VALUE_GET_INT
    - JS_CompactBigInt
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - __JS_NewFloat64
    - js_bigint_not
    - js_bigint_set_short
    - js_bigint_add
    - __JS_NewShortBigInt
    linkageType: ''
    returnType: no_inline
    signature: "no_inline js_unary_arith_slow(JSContext *ctx,\n                                                     JSValue
      *sp,\n                                                     OPCodeEnum op)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:14452,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14453,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:14458,1
    - Dst: js_unary_arith_slow
      Src: /src/gpac/src/quickjs/quickjs.c:14459,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - ctx
    - sp
    - op
    argTypes:
    - JSContext*
    - JSValue*
    - OPCodeEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14460
      start: 14445
    functionDepth: 20
    functionLinenumber: 14445
    functionLinenumberEnd: 14460
    functionName: js_post_inc_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_DupValue
    - JS_ToNumericFree
    - js_unary_arith_slow
    linkageType: ''
    returnType: __exception
    signature: "__exception js_post_inc_slow(JSContext *ctx,\n                                        JSValue
      *sp, OPCodeEnum op)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:14467,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14468,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14470,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14471,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14471,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14472,1
    - Dst: js_bigint_not
      Src: /src/gpac/src/quickjs/quickjs.c:14474,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:14474,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14475,1
    - Dst: JS_CompactBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14478,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:14481,1
    - Dst: JS_ToInt32Free
      Src: /src/gpac/src/quickjs/quickjs.c:14481,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:14483,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14489
      start: 14462
    functionDepth: 20
    functionLinenumber: 14462
    functionLinenumberEnd: 14489
    functionName: js_not_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_SHORT_BIG_INT
    - JS_VALUE_GET_TAG
    - JS_CompactBigInt
    - JS_ToInt32Free
    - JS_IsException
    - JS_FreeValue
    - unlikely
    - js_bigint_not
    - JS_ToNumericFree
    - __JS_NewShortBigInt
    - JS_NewInt32
    linkageType: ''
    returnType: no_inline
    signature: no_inline js_not_slow(JSContext *ctx, JSValue *sp)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14500,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14501,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:14504,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:14505,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14512,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14513,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14527,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14535,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:14540,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:14542,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14543,1
    - Dst: js_bigint_new_di
      Src: /src/gpac/src/quickjs/quickjs.c:14545,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:14548,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:14552,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14553,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14554,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:14557,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14558,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14559,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14562,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14563,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14568,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14569,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:14577,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:14582,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:14586,1
    - Dst: fmod
      Src: /src/gpac/src/quickjs/quickjs.c:14586,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:14593,1
    - Dst: js_pow
      Src: /src/gpac/src/quickjs/quickjs.c:14593,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:14596,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:14598,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14605,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:14606,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:14608,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14609,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:14610,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:14612,1
    - Dst: js_bigint_add
      Src: /src/gpac/src/quickjs/quickjs.c:14615,1
    - Dst: js_bigint_add
      Src: /src/gpac/src/quickjs/quickjs.c:14618,1
    - Dst: js_bigint_mul
      Src: /src/gpac/src/quickjs/quickjs.c:14621,1
    - Dst: js_bigint_divrem
      Src: /src/gpac/src/quickjs/quickjs.c:14624,1
    - Dst: js_bigint_divrem
      Src: /src/gpac/src/quickjs/quickjs.c:14627,1
    - Dst: js_bigint_pow
      Src: /src/gpac/src/quickjs/quickjs.c:14630,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:14633,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14635,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14636,1
    - Dst: JS_CompactBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14639,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:14643,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14644,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:14647,1
    - Dst: fmod
      Src: /src/gpac/src/quickjs/quickjs.c:14661,1
    - Dst: js_pow
      Src: /src/gpac/src/quickjs/quickjs.c:14664,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:14667,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:14669,1
    CyclomaticComplexity: 60
    EdgeCount: 60
    ICount: 173
    argCount: 3
    argNames:
    - ctx
    - sp
    - op
    argTypes:
    - JSContext*
    - JSValue*
    - OPCodeEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14676
      start: 14491
    functionDepth: 21
    functionLinenumber: 14491
    functionLinenumberEnd: 14676
    functionName: js_binary_arith_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_SHORT_BIG_INT
    - JS_NewInt64
    - js_bigint_new_di
    - js_bigint_divrem
    - fmod
    - JS_VALUE_GET_TAG
    - JS_NewFloat64
    - JS_MKPTR
    - js_pow
    - JS_VALUE_GET_FLOAT64
    - abort
    - JS_VALUE_GET_PTR
    - likely
    - JS_ToNumericFree
    - JS_VALUE_GET_INT
    - JS_CompactBigInt
    - JS_IsException
    - JS_FreeValue
    - __JS_NewFloat64
    - JS_ToFloat64Free
    - js_bigint_set_short
    - JS_VALUE_GET_NORM_TAG
    - js_bigint_add
    - js_bigint_pow
    - __JS_NewShortBigInt
    - js_bigint_mul
    linkageType: ''
    returnType: no_inline
    signature: "no_inline js_binary_arith_slow(JSContext *ctx, JSValue *sp,\n                                                      OPCodeEnum
      op)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - tag
    argTypes:
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14681
      start: 14678
    functionDepth: 0
    functionLinenumber: 14678
    functionLinenumberEnd: 14681
    functionName: tag_is_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL tag_is_string(uint32_t tag)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14691,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14692,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:14696,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:14697,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:14698,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14705,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14706,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:14708,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14709,1
    - Dst: js_bigint_new_di
      Src: /src/gpac/src/quickjs/quickjs.c:14711,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:14714,1
    - Dst: JS_ToPrimitiveFree
      Src: /src/gpac/src/quickjs/quickjs.c:14720,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14721,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14722,1
    - Dst: JS_ToPrimitiveFree
      Src: /src/gpac/src/quickjs/quickjs.c:14726,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14727,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14728,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14731,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14732,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:14735,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:14735,1
    - Dst: JS_ConcatString
      Src: /src/gpac/src/quickjs/quickjs.c:14736,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14737,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:14742,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14743,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14744,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:14747,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14748,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14749,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14752,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14753,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14758,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14759,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:14761,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14767,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:14768,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:14770,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14771,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:14772,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:14774,1
    - Dst: js_bigint_add
      Src: /src/gpac/src/quickjs/quickjs.c:14775,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14776,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14777,1
    - Dst: JS_CompactBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14780,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:14784,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14785,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:14788,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:14790,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 99
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14797
      start: 14683
    functionDepth: 21
    functionLinenumber: 14683
    functionLinenumberEnd: 14797
    functionName: js_add_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_SHORT_BIG_INT
    - JS_NewInt64
    - js_bigint_new_di
    - JS_VALUE_GET_TAG
    - JS_ConcatString
    - JS_MKPTR
    - JS_VALUE_GET_FLOAT64
    - JS_VALUE_GET_PTR
    - likely
    - JS_ToNumericFree
    - JS_VALUE_GET_INT
    - JS_CompactBigInt
    - JS_IsException
    - JS_FreeValue
    - __JS_NewFloat64
    - JS_ToPrimitiveFree
    - JS_ToFloat64Free
    - js_bigint_set_short
    - JS_VALUE_GET_NORM_TAG
    - js_bigint_add
    - __JS_NewShortBigInt
    - tag_is_string
    linkageType: ''
    returnType: no_inline
    signature: no_inline js_add_slow(JSContext *ctx, JSValue *sp)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14809,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14810,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14815,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14816,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:14851,1
    - Dst: js_bigint_new_di
      Src: /src/gpac/src/quickjs/quickjs.c:14855,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:14858,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:14863,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14865,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:14868,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14869,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14870,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:14873,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14874,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14875,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14879,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14880,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14886,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:14887,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:14889,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14890,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:14891,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:14893,1
    - Dst: js_bigint_logic
      Src: /src/gpac/src/quickjs/quickjs.c:14898,1
    - Dst: js_bigint_get_si_sat
      Src: /src/gpac/src/quickjs/quickjs.c:14904,1
    - Dst: js_bigint_shl
      Src: /src/gpac/src/quickjs/quickjs.c:14912,1
    - Dst: js_bigint_shr
      Src: /src/gpac/src/quickjs/quickjs.c:14914,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:14918,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14920,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14921,1
    - Dst: JS_CompactBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14924,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:14926,1
    - Dst: JS_ToInt32Free
      Src: /src/gpac/src/quickjs/quickjs.c:14926,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14927,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:14930,1
    - Dst: JS_ToInt32Free
      Src: /src/gpac/src/quickjs/quickjs.c:14930,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:14949,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:14951,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 155
    argCount: 3
    argNames:
    - ctx
    - sp
    - op
    argTypes:
    - JSContext*
    - JSValue*
    - OPCodeEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14958
      start: 14799
    functionDepth: 20
    functionLinenumber: 14799
    functionLinenumberEnd: 14958
    functionName: js_binary_logic_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_SHORT_BIG_INT
    - js_bigint_new_di
    - js_bigint_shr
    - JS_VALUE_GET_TAG
    - JS_MKPTR
    - unlikely
    - js_bigint_shl
    - JS_NewInt32
    - abort
    - js_bigint_get_si_sat
    - JS_VALUE_GET_PTR
    - likely
    - JS_ToNumericFree
    - JS_ToInt32Free
    - JS_CompactBigInt
    - js_bigint_logic
    - JS_IsException
    - JS_FreeValue
    - js_bigint_set_short
    - JS_VALUE_GET_NORM_TAG
    - __JS_NewShortBigInt
    linkageType: ''
    returnType: no_inline
    signature: "no_inline js_binary_logic_slow(JSContext *ctx,\n                                                      JSValue
      *sp,\n                                                      OPCodeEnum op)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14966,1
    - Dst: js_bigint_set_si
      Src: /src/gpac/src/quickjs/quickjs.c:14968,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14968,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:14971,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:14974,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:14977,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - ctx
    - buf1
    - op1
    argTypes:
    - JSContext*
    - JSBigIntBuf*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14980
      start: 14961
    functionDepth: 2
    functionLinenumber: 14961
    functionLinenumberEnd: 14980
    functionName: JS_ToBigIntBuf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - js_bigint_set_si
    - js_bigint_set_short
    - abort
    linkageType: ''
    returnType: JSBigInt
    signature: "JSBigInt *JS_ToBigIntBuf(JSContext *ctx, JSBigIntBuf *buf1,\n                                JSValue
      op1)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14991,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14992,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14998,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15000,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15002,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15004,1
    - Dst: JS_ToBigIntBuf
      Src: /src/gpac/src/quickjs/quickjs.c:15008,1
    - Dst: js_bigint_float64_cmp
      Src: /src/gpac/src/quickjs/quickjs.c:15009,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15009,1
    - Dst: JS_ToBigIntBuf
      Src: /src/gpac/src/quickjs/quickjs.c:15014,1
    - Dst: js_bigint_float64_cmp
      Src: /src/gpac/src/quickjs/quickjs.c:15015,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15015,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15018,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15019,1
    - Dst: JS_ToBigIntBuf
      Src: /src/gpac/src/quickjs/quickjs.c:15023,1
    - Dst: JS_ToBigIntBuf
      Src: /src/gpac/src/quickjs/quickjs.c:15024,1
    - Dst: js_bigint_cmp
      Src: /src/gpac/src/quickjs/quickjs.c:15025,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15027,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15028,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:15048,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 58
    argCount: 4
    argNames:
    - ctx
    - op
    - op1
    - op2
    argTypes:
    - JSContext*
    - OPCodeEnum
    - JSValue
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15051
      start: 14984
    functionDepth: 3
    functionLinenumber: 14984
    functionLinenumberEnd: 15051
    functionName: js_compare_bigint
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToBigIntBuf
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_SHORT_BIG_INT
    - JS_FreeValue
    - js_bigint_float64_cmp
    - JS_VALUE_GET_NORM_TAG
    - js_bigint_cmp
    - JS_VALUE_GET_FLOAT64
    - abort
    linkageType: ''
    returnType: int
    signature: "int js_compare_bigint(JSContext *ctx, OPCodeEnum op,\n                             JSValue
      op1, JSValue op2)"
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15062,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15063,1
    - Dst: JS_ToPrimitiveFree
      Src: /src/gpac/src/quickjs/quickjs.c:15064,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15065,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15066,1
    - Dst: JS_ToPrimitiveFree
      Src: /src/gpac/src/quickjs/quickjs.c:15069,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15070,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15071,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15074,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15075,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15077,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15077,1
    - Dst: js_string_compare
      Src: /src/gpac/src/quickjs/quickjs.c:15079,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:15079,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:15080,1
    - Dst: js_string_rope_compare
      Src: /src/gpac/src/quickjs/quickjs.c:15082,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15099,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15100,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15107,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15109,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15110,1
    - Dst: JS_StringToBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:15111,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15112,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15113,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15116,1
    - Dst: JS_StringToBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:15117,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15118,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15119,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15121,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15122,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:15128,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15129,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15130,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:15133,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15134,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15135,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15140,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15141,1
    - Dst: js_compare_bigint
      Src: /src/gpac/src/quickjs/quickjs.c:15145,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15152,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15154,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15157,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15159,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:15179,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 123
    argCount: 3
    argNames:
    - ctx
    - sp
    - op
    argTypes:
    - JSContext*
    - JSValue*
    - OPCodeEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15185
      start: 15053
    functionDepth: 19
    functionLinenumber: 15053
    functionLinenumberEnd: 15185
    functionName: js_relational_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_string_rope_compare
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - JS_IsException
    - JS_FreeValue
    - js_compare_bigint
    - JS_ToPrimitiveFree
    - JS_VALUE_GET_STRING
    - JS_StringToBigInt
    - JS_VALUE_GET_NORM_TAG
    - JS_NewBool
    - JS_ToNumericFree
    - JS_VALUE_GET_FLOAT64
    - tag_is_string
    - js_string_compare
    linkageType: ''
    returnType: no_inline
    signature: "no_inline js_relational_slow(JSContext *ctx, JSValue *sp,\n                                        OPCodeEnum
      op)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 1
    argNames:
    - tag
    argTypes:
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15192
      start: 15187
    functionDepth: 0
    functionLinenumber: 15187
    functionLinenumberEnd: 15192
    functionName: tag_is_number
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL tag_is_number(uint32_t tag)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15204,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15205,1
    - Dst: tag_is_number
      Src: /src/gpac/src/quickjs/quickjs.c:15206,1
    - Dst: tag_is_number
      Src: /src/gpac/src/quickjs/quickjs.c:15206,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15208,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15208,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15215,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15217,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15220,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15222,1
    - Dst: js_compare_bigint
      Src: /src/gpac/src/quickjs/quickjs.c:15226,1
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:15229,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15233,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15233,1
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:15235,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15236,1
    - Dst: tag_is_number
      Src: /src/gpac/src/quickjs/quickjs.c:15236,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15237,1
    - Dst: tag_is_number
      Src: /src/gpac/src/quickjs/quickjs.c:15237,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15241,1
    - Dst: JS_StringToBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:15242,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15243,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15244,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15247,1
    - Dst: JS_StringToBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:15248,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15249,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15250,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15252,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15253,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:15259,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15260,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15261,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:15264,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15265,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15266,1
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:15270,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:15272,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15272,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:15275,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15275,1
    - Dst: tag_is_number
      Src: /src/gpac/src/quickjs/quickjs.c:15278,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15278,1
    - Dst: tag_is_number
      Src: /src/gpac/src/quickjs/quickjs.c:15280,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15280,1
    - Dst: JS_ToPrimitiveFree
      Src: /src/gpac/src/quickjs/quickjs.c:15281,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15282,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15283,1
    - Dst: JS_ToPrimitiveFree
      Src: /src/gpac/src/quickjs/quickjs.c:15286,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15287,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15288,1
    - Dst: JS_IsHTMLDDA
      Src: /src/gpac/src/quickjs/quickjs.c:15294,1
    - Dst: JS_IsHTMLDDA
      Src: /src/gpac/src/quickjs/quickjs.c:15296,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15302,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15303,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:15306,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 115
    argCount: 3
    argNames:
    - ctx
    - sp
    - is_neq
    argTypes:
    - JSContext*
    - JSValue*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15312
      start: 15194
    functionDepth: 19
    functionLinenumber: 15194
    functionLinenumberEnd: 15312
    functionName: js_eq_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - JS_IsException
    - js_compare_bigint
    - JS_FreeValue
    - JS_ToPrimitiveFree
    - JS_StringToBigInt
    - JS_VALUE_GET_NORM_TAG
    - JS_NewBool
    - JS_ToNumericFree
    - js_strict_eq2
    - JS_IsHTMLDDA
    - JS_VALUE_GET_FLOAT64
    - JS_NewInt32
    - tag_is_string
    - tag_is_number
    linkageType: ''
    returnType: no_inline
    signature: "no_inline js_eq_slow(JSContext *ctx, JSValue *sp,\n                                            BOOL
      is_neq)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:15321,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15322,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15323,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:15326,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15327,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15328,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15331,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15332,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15333,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15334,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:15335,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15336,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15337,1
    - Dst: JS_ToUint32Free
      Src: /src/gpac/src/quickjs/quickjs.c:15341,1
    - Dst: JS_ToUint32Free
      Src: /src/gpac/src/quickjs/quickjs.c:15342,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:15344,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15350
      start: 15314
    functionDepth: 21
    functionLinenumber: 15314
    functionLinenumberEnd: 15350
    functionName: js_shr_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_ToNumericFree
    - JS_ToUint32Free
    - JS_NewUint32
    linkageType: ''
    returnType: no_inline
    signature: no_inline js_shr_slow(JSContext *ctx, JSValue *sp)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15361,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15362,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15368,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15368,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15379,1
    - Dst: js_string_eq
      Src: /src/gpac/src/quickjs/quickjs.c:15382,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:15382,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:15383,1
    - Dst: js_string_rope_compare
      Src: /src/gpac/src/quickjs/quickjs.c:15385,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:15395,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:15396,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:15405,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:15405,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15408,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15410,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15413,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15420,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15422,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15424,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:15430,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:15433,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:15433,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:15434,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:15434,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15458,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:15459,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:15461,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15462,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:15463,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:15465,1
    - Dst: js_bigint_cmp
      Src: /src/gpac/src/quickjs/quickjs.c:15466,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15473,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15474,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 112
    argCount: 4
    argNames:
    - ctx
    - op1
    - op2
    - eq_mode
    argTypes:
    - JSContext*
    - JSValue
    - JSValue
    - JSStrictEqModeEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15477
      start: 15354
    functionDepth: 3
    functionLinenumber: 15354
    functionLinenumberEnd: 15477
    functionName: js_strict_eq2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_string_rope_compare
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - unlikely
    - JS_VALUE_GET_OBJ
    - isnan
    - js_bigint_set_short
    - JS_VALUE_GET_NORM_TAG
    - js_string_eq
    - js_bigint_cmp
    - JS_VALUE_GET_FLOAT64
    - tag_is_string
    linkageType: ''
    returnType: BOOL
    signature: "BOOL js_strict_eq2(JSContext *ctx, JSValue op1, JSValue op2,\n                          JSStrictEqModeEnum
      eq_mode)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:15481,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:15482,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:15482,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - op1
    - op2
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15484
      start: 15479
    functionDepth: 4
    functionLinenumber: 15479
    functionLinenumberEnd: 15484
    functionName: js_strict_eq
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - js_strict_eq2
    linkageType: ''
    returnType: BOOL
    signature: BOOL js_strict_eq(JSContext *ctx, JSValueConst op1, JSValueConst op2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_strict_eq
      Src: /src/gpac/src/quickjs/quickjs.c:15488,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - op1
    - op2
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15489
      start: 15486
    functionDepth: 5
    functionLinenumber: 15486
    functionLinenumberEnd: 15489
    functionName: JS_StrictEq
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_strict_eq
    linkageType: ''
    returnType: BOOL
    signature: BOOL JS_StrictEq(JSContext *ctx, JSValueConst op1, JSValueConst op2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:15493,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:15494,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:15494,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - op1
    - op2
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15496
      start: 15491
    functionDepth: 4
    functionLinenumber: 15491
    functionLinenumberEnd: 15496
    functionName: js_same_value
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_DupValue
    - js_strict_eq2
    linkageType: ''
    returnType: BOOL
    signature: BOOL js_same_value(JSContext *ctx, JSValueConst op1, JSValueConst op2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:15500,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - op1
    - op2
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15501
      start: 15498
    functionDepth: 5
    functionLinenumber: 15498
    functionLinenumberEnd: 15501
    functionName: JS_SameValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_same_value
    linkageType: ''
    returnType: BOOL
    signature: BOOL JS_SameValue(JSContext *ctx, JSValueConst op1, JSValueConst op2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:15505,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:15506,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:15506,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - op1
    - op2
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15508
      start: 15503
    functionDepth: 4
    functionLinenumber: 15503
    functionLinenumberEnd: 15508
    functionName: js_same_value_zero
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - js_strict_eq2
    linkageType: ''
    returnType: BOOL
    signature: BOOL js_same_value_zero(JSContext *ctx, JSValueConst op1, JSValueConst
      op2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_same_value_zero
      Src: /src/gpac/src/quickjs/quickjs.c:15512,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - op1
    - op2
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15513
      start: 15510
    functionDepth: 5
    functionLinenumber: 15510
    functionLinenumberEnd: 15513
    functionName: JS_SameValueZero
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_same_value_zero
    linkageType: ''
    returnType: BOOL
    signature: BOOL JS_SameValueZero(JSContext *ctx, JSValueConst op1, JSValueConst
      op2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:15519,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:15520,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - sp
    - is_neq
    argTypes:
    - JSContext*
    - JSValue*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15522
      start: 15515
    functionDepth: 4
    functionLinenumber: 15515
    functionLinenumberEnd: 15522
    functionName: js_strict_eq_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - js_strict_eq2
    linkageType: ''
    returnType: no_inline
    signature: "no_inline js_strict_eq_slow(JSContext *ctx, JSValue *sp,\n                                       BOOL
      is_neq)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15533,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:15534,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:15537,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:15538,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:15540,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:15541,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15544,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15545,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:15546,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15548
      start: 15524
    functionDepth: 15
    functionLinenumber: 15524
    functionLinenumberEnd: 15548
    functionName: js_operator_in
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeError
    - JS_FreeValue
    - unlikely
    - JS_ValueToAtom
    - JS_HasProperty
    - JS_NewBool
    linkageType: ''
    returnType: __exception
    signature: __exception js_operator_in(JSContext *ctx, JSValue *sp)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15558,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:15559,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:15562,1
    - Dst: JS_CheckBrand
      Src: /src/gpac/src/quickjs/quickjs.c:15564,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:15573,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:15574,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:15576,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:15577,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:15578,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15581,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15582,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:15583,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15585
      start: 15550
    functionDepth: 14
    functionLinenumber: 15550
    functionLinenumberEnd: 15585
    functionName: js_operator_private_in
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeError
    - JS_FreeValue
    - JS_CheckBrand
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_ValueToAtom
    - JS_NewBool
    - find_own_property
    - JS_IsObject
    linkageType: ''
    returnType: __exception
    signature: __exception js_operator_private_in(JSContext *ctx, JSValue *sp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:15593,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15594,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:15597,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:15598,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:15599,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15601,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - ctx
    - obj
    - atom
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15603
      start: 15587
    functionDepth: 2
    functionLinenumber: 15587
    functionLinenumberEnd: 15603
    functionName: js_has_unscopable
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToBoolFree
    - JS_IsException
    - JS_FreeValue
    - JS_IsObject
    - JS_GetProperty
    linkageType: ''
    returnType: __exception
    signature: "__exception js_has_unscopable(JSContext *ctx, JSValueConst obj,\n
      \                                        JSAtom atom)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsInstanceOf
      Src: /src/gpac/src/quickjs/quickjs.c:15612,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15615,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15616,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:15617,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15619
      start: 15605
    functionDepth: 17
    functionLinenumber: 15605
    functionLinenumberEnd: 15619
    functionName: js_operator_instanceof
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - JS_NewBool
    - JS_IsInstanceOf
    linkageType: ''
    returnType: __exception
    signature: __exception js_operator_instanceof(JSContext *ctx, JSValue *sp)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15626,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:15649,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:15650,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:15652,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 44
    argCount: 2
    argNames:
    - ctx
    - op1
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15670
      start: 15621
    functionDepth: 2
    functionLinenumber: 15621
    functionLinenumberEnd: 15670
    functionName: js_operator_typeof
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_NORM_TAG
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_IsFunction
    linkageType: ''
    returnType: __exception
    signature: __exception js_operator_typeof(JSContext *ctx, JSValueConst op1)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:15680,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:15681,1
    - Dst: JS_DeleteProperty
      Src: /src/gpac/src/quickjs/quickjs.c:15683,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:15684,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:15685,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15687,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15688,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:15689,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15691
      start: 15672
    functionDepth: 13
    functionLinenumber: 15672
    functionLinenumberEnd: 15691
    functionName: js_operator_delete
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - JS_FreeValue
    - unlikely
    - JS_DeleteProperty
    - JS_ValueToAtom
    - JS_NewBool
    linkageType: ''
    returnType: __exception
    signature: __exception js_operator_delete(JSContext *ctx, JSValue *sp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetFunctionBytecode
      Src: /src/gpac/src/quickjs/quickjs.c:15699,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:15701,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15704
      start: 15696
    functionDepth: 12
    functionLinenumber: 15696
    functionLinenumberEnd: 15704
    functionName: js_throw_type_error
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetFunctionBytecode
    - JS_ThrowTypeError
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_throw_type_error(JSContext *ctx, JSValueConst this_val,\n
      \                                  int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetFunctionBytecode
      Src: /src/gpac/src/quickjs/quickjs.c:15709,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:15711,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15714
      start: 15706
    functionDepth: 3
    functionLinenumber: 15706
    functionLinenumberEnd: 15714
    functionName: js_function_proto_fileName
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetFunctionBytecode
    - JS_AtomToString
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_function_proto_fileName(JSContext *ctx,\n                                          JSValueConst
      this_val)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetFunctionBytecode
      Src: /src/gpac/src/quickjs/quickjs.c:15719,1
    - Dst: find_line_num
      Src: /src/gpac/src/quickjs/quickjs.c:15722,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:15724,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:15726,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - this_val
    - is_col
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15729
      start: 15716
    functionDepth: 4
    functionLinenumber: 15716
    functionLinenumberEnd: 15729
    functionName: js_function_proto_lineNumber
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetFunctionBytecode
    - JS_NewInt32
    - find_line_num
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_function_proto_lineNumber(JSContext *ctx,\n                                            JSValueConst
      this_val, int is_col)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:15738,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:15740,1
    - Dst: convert_fast_array_to_array
      Src: /src/gpac/src/quickjs/quickjs.c:15742,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:15746,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 7
    argNames:
    - ctx
    - this_obj
    - prop
    - val
    - getter
    - setter
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSValueConst
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15748
      start: 15731
    functionDepth: 17
    functionLinenumber: 15731
    functionLinenumberEnd: 15748
    functionName: js_arguments_define_own_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AtomIsArrayIndex
    - JS_VALUE_GET_OBJ
    - JS_DefineProperty
    - convert_fast_array_to_array
    linkageType: ''
    returnType: int
    signature: "int js_arguments_define_own_property(JSContext *ctx,\n                                            JSValueConst
      this_obj,\n                                            JSAtom prop, JSValueConst
      val,\n                                            JSValueConst getter, JSValueConst
      setter, int flags)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:15761,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15763,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:15765,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:15768,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:15770,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:15772,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:15777,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:15781,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:15787,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:15788,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:15791,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15796,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 3
    argNames:
    - ctx
    - argc
    - argv
    argTypes:
    - JSContext*
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15798
      start: 15754
    functionDepth: 18
    functionLinenumber: 15754
    functionLinenumberEnd: 15798
    functionName: js_build_arguments
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_DefinePropertyValue
    - JS_IsException
    - js_malloc
    - JS_FreeValue
    - JS_NewObjectProtoClass
    - unlikely
    - JS_VALUE_GET_OBJ
    - add_property
    - JS_DefineProperty
    - JS_NewInt32
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_build_arguments(JSContext *ctx, int argc, JSValueConst *argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:15813,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15815,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:15817,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:15820,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:15822,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:15824,1
    - Dst: get_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:15828,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:15831,1
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:15831,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:15833,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:15842,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:15843,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:15848,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:15849,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:15852,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:15853,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15857,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 5
    argNames:
    - ctx
    - argc
    - argv
    - sf
    - arg_count
    argTypes:
    - JSContext*
    - int
    - JSValueConst*
    - JSStackFrame*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15859
      start: 15804
    functionDepth: 20
    functionLinenumber: 15804
    functionLinenumberEnd: 15859
    functionName: js_build_mapped_arguments
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - get_var_ref
    - JS_DefinePropertyValue
    - JS_IsException
    - JS_FreeValue
    - JS_NewObjectProtoClass
    - unlikely
    - JS_VALUE_GET_OBJ
    - add_property
    - free_var_ref
    - JS_DefinePropertyValueUint32
    - JS_NewInt32
    - __JS_AtomFromUInt32
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_build_mapped_arguments(JSContext *ctx, int argc,\n                                         JSValueConst
      *argv,\n                                         JSStackFrame *sf, int arg_count)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15870,1
    - Dst: JS_ToObjectFree
      Src: /src/gpac/src/quickjs/quickjs.c:15872,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:15875,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15877,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:15880,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15881,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:15882,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15883,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:15892,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:15898,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:15904,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:15913,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15915,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15922
      start: 15861
    functionDepth: 9
    functionLinenumber: 15861
    functionLinenumberEnd: 15922
    functionName: build_for_in_iterator
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToObjectFree
    - get_shape_prop
    - JS_VALUE_GET_TAG
    - js_malloc
    - JS_FreeValue
    - JS_IsException
    - JS_NewObjectProtoClass
    - JS_VALUE_GET_OBJ
    - JS_GetOwnPropertyNamesInternal
    - js_free
    linkageType: ''
    returnType: JSValue
    signature: JSValue build_for_in_iterator(JSContext *ctx, JSValue obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: build_for_in_iterator
      Src: /src/gpac/src/quickjs/quickjs.c:15927,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15928,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15931
      start: 15925
    functionDepth: 10
    functionLinenumber: 15925
    functionLinenumberEnd: 15931
    functionName: js_for_in_start
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - build_for_in_iterator
    linkageType: ''
    returnType: __exception
    signature: __exception js_for_in_start(JSContext *ctx, JSValue *sp)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:15943,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:15947,1
    - Dst: JS_GetPrototypeFree
      Src: /src/gpac/src/quickjs/quickjs.c:15949,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:15950,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15952,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:15954,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:15955,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15957,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:15960,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15962,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:15966,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15967,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15971,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:15977,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:15978,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:15988,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 50
    argCount: 2
    argNames:
    - ctx
    - enum_obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15994
      start: 15934
    functionDepth: 18
    functionLinenumber: 15934
    functionLinenumberEnd: 15994
    functionName: js_for_in_prepare_prototype_chain_enum
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_FreePropertyEnum
    - JS_IsNull
    - JS_GetPrototypeFree
    - JS_IsException
    - JS_FreeValue
    - JS_DefinePropertyValue
    - JS_VALUE_GET_OBJ
    - js_poll_interrupts
    - JS_GetOwnPropertyNamesInternal
    linkageType: ''
    returnType: __exception
    signature: "__exception js_for_in_prepare_prototype_chain_enum(JSContext *ctx,\n
      \                                                             JSValueConst enum_obj)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:16009,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16011,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:16018,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:16018,1
    - Dst: js_for_in_prepare_prototype_chain_enum
      Src: /src/gpac/src/quickjs/quickjs.c:16022,1
    - Dst: JS_GetPrototypeFree
      Src: /src/gpac/src/quickjs/quickjs.c:16029,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16030,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:16032,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:16036,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:16039,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16040,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:16044,1
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:16050,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:16059,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16059,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:16065,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:16073,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16073,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:16081,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 74
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16089
      start: 15997
    functionDepth: 19
    functionLinenumber: 15997
    functionLinenumberEnd: 16089
    functionName: js_for_in_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyInternal
    - JS_VALUE_GET_TAG
    - JS_IsNull
    - js_for_in_prepare_prototype_chain_enum
    - JS_GetPrototypeFree
    - JS_IsException
    - JS_FreePropertyEnum
    - JS_DefinePropertyValue
    - JS_VALUE_GET_OBJ
    - JS_IsUndefined
    - js_poll_interrupts
    - __JS_AtomFromUInt32
    - JS_GetOwnPropertyNamesInternal
    - JS_AtomToValue
    linkageType: ''
    returnType: __exception
    signature: __exception js_for_in_next(JSContext *ctx, JSValue *sp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:16096,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16097,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:16099,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16100,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:16101,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - obj
    - method
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16104
      start: 16091
    functionDepth: 13
    functionLinenumber: 16091
    functionLinenumberEnd: 16104
    functionName: JS_GetIterator2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_IsObject
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_GetIterator2(JSContext *ctx, JSValueConst obj,\n                               JSValueConst
      method)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16111,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16112,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:16114,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:16114,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16115,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16116,1
    - Dst: JS_GetIterator2
      Src: /src/gpac/src/quickjs/quickjs.c:16118,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16119,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16120,1
    - Dst: JS_CreateAsyncFromSyncIterator
      Src: /src/gpac/src/quickjs/quickjs.c:16122,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16123,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16127,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16128,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:16131,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16132,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:16133,1
    - Dst: JS_GetIterator2
      Src: /src/gpac/src/quickjs/quickjs.c:16135,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16136,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 3
    argNames:
    - ctx
    - obj
    - is_async
    argTypes:
    - JSContext*
    - JSValueConst
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16138
      start: 16106
    functionDepth: 14
    functionLinenumber: 16106
    functionLinenumberEnd: 16138
    functionName: JS_GetIterator
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsNull
    - JS_IsFunction
    - JS_IsException
    - JS_GetIterator2
    - JS_FreeValue
    - JS_ThrowTypeError
    - JS_IsUndefined
    - JS_CreateAsyncFromSyncIterator
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_GetIterator(JSContext *ctx, JSValueConst obj, BOOL is_async)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:16149,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16150,1
    - Dst: JSCFunctionType::iterator_next
      Src: /src/gpac/src/quickjs/quickjs.c:16162,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:16166,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16167,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:16169,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16170,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:16171,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 6
    argNames:
    - ctx
    - enum_obj
    - method
    - argc
    - argv
    - pdone
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    - JSValueConst*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16179
      start: 16141
    functionDepth: 12
    functionLinenumber: 16141
    functionLinenumberEnd: 16179
    functionName: JS_IteratorNext2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_ThrowTypeError
    - JS_VALUE_GET_OBJ
    - JSCFunctionType::iterator_next
    - JS_IsObject
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_IteratorNext2(JSContext *ctx, JSValueConst enum_obj,\n
      \                               JSValueConst method,\n                                int
      argc, JSValueConst *argv, int *pdone)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_IteratorNext2
      Src: /src/gpac/src/quickjs/quickjs.c:16189,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16190,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:16192,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16196,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16200,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16201,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:16203,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16206,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16208,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16212,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 6
    argNames:
    - ctx
    - enum_obj
    - method
    - argc
    - argv
    - pdone
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    - JSValueConst*
    - BOOL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16215
      start: 16182
    functionDepth: 13
    functionLinenumber: 16182
    functionLinenumberEnd: 16215
    functionName: JS_IteratorNext
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToBoolFree
    - JS_IsException
    - JS_FreeValue
    - JS_IteratorNext2
    - likely
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_IteratorNext(JSContext *ctx, JSValueConst enum_obj,\n                               JSValueConst
      method,\n                               int argc, JSValueConst *argv, BOOL *pdone)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16232,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16233,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:16237,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:16237,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:16240,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16242,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:16244,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:16245,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16249,1
    - Dst: JS_Throw
      Src: /src/gpac/src/quickjs/quickjs.c:16252,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 3
    argNames:
    - ctx
    - enum_obj
    - is_exception_pending
    argTypes:
    - JSContext*
    - JSValueConst
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16255
      start: 16218
    functionDepth: 13
    functionLinenumber: 16218
    functionLinenumberEnd: 16255
    functionName: JS_IteratorClose
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_IsNull
    - JS_IsException
    - JS_FreeValue
    - JS_IsUndefined
    - JS_CallFree
    - JS_Throw
    - JS_IsObject
    - JS_GetProperty
    linkageType: ''
    returnType: int
    signature: "int JS_IteratorClose(JSContext *ctx, JSValueConst enum_obj,\n                            BOOL
      is_exception_pending)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetIterator
      Src: /src/gpac/src/quickjs/quickjs.c:16263,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16264,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16266,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16268,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16269,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - sp
    - is_async
    argTypes:
    - JSContext*
    - JSValue*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16273
      start: 16258
    functionDepth: 15
    functionLinenumber: 16258
    functionLinenumberEnd: 16273
    functionName: js_for_of_start
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_FreeValue
    - JS_GetProperty
    - JS_GetIterator
    linkageType: ''
    returnType: __exception
    signature: "__exception js_for_of_start(JSContext *ctx, JSValue *sp,\n                                       BOOL
      is_async)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:16284,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:16284,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:16285,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16286,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16291,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16296,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:16302,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 3
    argNames:
    - ctx
    - sp
    - offset
    argTypes:
    - JSContext*
    - JSValue*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16304
      start: 16279
    functionDepth: 14
    functionLinenumber: 16279
    functionLinenumberEnd: 16304
    functionName: js_for_of_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IteratorNext
    - JS_IsException
    - JS_FreeValue
    - JS_IsUndefined
    - likely
    - JS_NewBool
    linkageType: ''
    returnType: __exception
    signature: __exception js_for_of_next(JSContext *ctx, JSValue *sp, int offset)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:16314,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16315,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16319
      start: 16306
    functionDepth: 1
    functionLinenumber: 16306
    functionLinenumberEnd: 16319
    functionName: js_for_await_of_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_Call
    linkageType: ''
    returnType: __exception
    signature: __exception js_for_await_of_next(JSContext *ctx, JSValue *sp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16326,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16327,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:16329,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16330,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16331,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - obj
    - pdone
    argTypes:
    - JSContext*
    - JSValueConst
    - BOOL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16338
      start: 16321
    functionDepth: 2
    functionLinenumber: 16321
    functionLinenumberEnd: 16338
    functionName: JS_IteratorGetCompleteValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_ToBoolFree
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_IteratorGetCompleteValue(JSContext *ctx, JSValueConst obj,\n
      \                                          BOOL *pdone)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:16345,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:16346,1
    - Dst: JS_IteratorGetCompleteValue
      Src: /src/gpac/src/quickjs/quickjs.c:16349,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16350,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16352,1
    - Dst: JS_NewCatchOffset
      Src: /src/gpac/src/quickjs/quickjs.c:16355,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:16357,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16359
      start: 16340
    functionDepth: 12
    functionLinenumber: 16340
    functionLinenumberEnd: 16359
    functionName: js_iterator_get_value_done
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_NewCatchOffset
    - JS_IteratorGetCompleteValue
    - JS_NewBool
    - JS_IsObject
    linkageType: ''
    returnType: __exception
    signature: __exception js_iterator_get_value_done(JSContext *ctx, JSValue *sp)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:16366,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16367,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16368,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:16371,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:16375,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:16376,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16378,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - ctx
    - val
    - done
    argTypes:
    - JSContext*
    - JSValue
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16382
      start: 16361
    functionDepth: 18
    functionLinenumber: 16361
    functionLinenumberEnd: 16382
    functionName: js_create_iterator_result
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - JS_IsException
    - JS_FreeValue
    - JS_NewBool
    - JS_NewObject
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_create_iterator_result(JSContext *ctx,\n                                         JSValue
      val,\n                                         BOOL done)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:16394,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16395,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16401
      start: 16391
    functionDepth: 1
    functionLinenumber: 16391
    functionLinenumberEnd: 16401
    functionName: js_is_fast_array
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: BOOL
    signature: BOOL js_is_fast_array(JSContext *ctx, JSValueConst obj)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:16408,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16409,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - obj
    - arrpp
    - countp
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValue**
    - uint32_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16417
      start: 16404
    functionDepth: 1
    functionLinenumber: 16404
    functionLinenumberEnd: 16417
    functionName: js_get_fast_array
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: BOOL
    signature: "BOOL js_get_fast_array(JSContext *ctx, JSValueConst obj,\n                              JSValue
      **arrpp, uint32_t *countp)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:16427,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:16428,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:16432,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16440,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16441,1
    - Dst: JS_IsCFunction
      Src: /src/gpac/src/quickjs/quickjs.c:16444,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16446,1
    - Dst: JS_GetIterator
      Src: /src/gpac/src/quickjs/quickjs.c:16448,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16449,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16451,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16452,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16453,1
    - Dst: JS_IsCFunction
      Src: /src/gpac/src/quickjs/quickjs.c:16459,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:16460,1
    - Dst: js_get_length32
      Src: /src/gpac/src/quickjs/quickjs.c:16462,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:16470,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:16471,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:16478,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16479,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:16485,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:16490,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16491,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16492,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:16496,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16497,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16498,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 59
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16500
      start: 16419
    functionDepth: 20
    functionLinenumber: 16419
    functionLinenumberEnd: 16500
    functionName: js_append_enumerate
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - JS_IteratorNext
    - JS_IsException
    - JS_FreeValue
    - js_get_fast_array
    - JS_IsCFunction
    - JS_GetIterator
    - JS_DefinePropertyValueUint32
    - js_get_length32
    - JS_NewInt32
    - JS_IteratorClose
    - JS_ThrowInternalError
    - JS_GetProperty
    linkageType: ''
    returnType: __exception
    signature: __exception js_append_enumerate(JSContext *ctx, JSValue *sp)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:16517,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:16520,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16521,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16523,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:16534,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:16540,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:16549,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:16555,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16559,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16560,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16563,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:16565,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:16570,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:16573,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 53
    argCount: 5
    argNames:
    - ctx
    - target
    - source
    - excluded
    - setprop
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - JSValueConst
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16575
      start: 16502
    functionDepth: 18
    functionLinenumber: 16502
    functionLinenumberEnd: 16575
    functionName: JS_CopyDataProperties
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyInternal
    - JS_VALUE_GET_TAG
    - JS_FreePropertyEnum
    - JS_DefinePropertyValue
    - JS_IsException
    - JS_VALUE_GET_OBJ
    - js_free_desc
    - JS_SetProperty
    - JS_GetOwnPropertyNamesInternal
    - JS_GetProperty
    linkageType: ''
    returnType: __exception
    signature: "__exception JS_CopyDataProperties(JSContext *ctx,\n                                             JSValueConst
      target,\n                                             JSValueConst source,\n
      \                                            JSValueConst excluded,\n                                             BOOL
      setprop)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16581
      start: 16578
    functionDepth: 0
    functionLinenumber: 16578
    functionLinenumberEnd: 16581
    functionName: JS_GetActiveFunction
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSValueConst
    signature: JSValueConst JS_GetActiveFunction(JSContext *ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:16595,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:16596,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:16603,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:16607,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:16609,1
    - Dst: container_of
      Src: /src/gpac/src/quickjs/quickjs.c:16619,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 4
    argNames:
    - ctx
    - sf
    - var_idx
    - is_arg
    argTypes:
    - JSContext*
    - JSStackFrame*
    - int
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16626
      start: 16583
    functionDepth: 3
    functionLinenumber: 16583
    functionLinenumberEnd: 16626
    functionName: get_var_ref
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - container_of
    - add_gc_object
    - js_malloc
    - list_add_tail
    - list_entry
    - list_for_each
    linkageType: ''
    returnType: JSVarRef
    signature: "JSVarRef *get_var_ref(JSContext *ctx, JSStackFrame *sf,\n                             int
      var_idx, BOOL is_arg)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16637,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:16642,1
    - Dst: get_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:16651,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16664,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 5
    argNames:
    - ctx
    - func_obj
    - b
    - cur_var_refs
    - sf
    argTypes:
    - JSContext*
    - JSValue
    - JSFunctionBytecode*
    - JSVarRef**
    - JSStackFrame*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16666
      start: 16628
    functionDepth: 4
    functionLinenumber: 16628
    functionLinenumberEnd: 16666
    functionName: js_closure2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - get_var_ref
    - JS_VALUE_GET_OBJ
    - js_mallocz
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_closure2(JSContext *ctx, JSValue func_obj,\n                           JSFunctionBytecode
      *b,\n                           JSVarRef **cur_var_refs,\n                           JSStackFrame
      *sf)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:16673,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:16674,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16675,1
    - Dst: set_cycle_flag
      Src: /src/gpac/src/quickjs/quickjs.c:16677,1
    - Dst: set_cycle_flag
      Src: /src/gpac/src/quickjs/quickjs.c:16678,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:16679,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:16680,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16683,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 4
    argNames:
    - ctx
    - p
    - atom
    - opaque
    argTypes:
    - JSContext*
    - JSObject*
    - JSAtom
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16687
      start: 16668
    functionDepth: 18
    functionLinenumber: 16668
    functionLinenumberEnd: 16687
    functionName: js_instantiate_prototype
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_DefinePropertyValue
    - JS_MKPTR
    - JS_IsException
    - JS_FreeValue
    - set_cycle_flag
    - JS_NewObject
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_instantiate_prototype(JSContext *ctx, JSObject *p, JSAtom
      atom, void *opaque)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:16704,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:16705,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16706,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16707,1
    - Dst: js_closure2
      Src: /src/gpac/src/quickjs/quickjs.c:16710,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16711,1
    - Dst: js_function_set_properties
      Src: /src/gpac/src/quickjs/quickjs.c:16718,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:16730,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16731,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:16733,1
    - Dst: JS_SetConstructorBit
      Src: /src/gpac/src/quickjs/quickjs.c:16739,1
    - Dst: JS_DefineAutoInitProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16740,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16747,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 35
    argCount: 4
    argNames:
    - ctx
    - bfunc
    - cur_var_refs
    - sf
    argTypes:
    - JSContext*
    - JSValue
    - JSVarRef**
    - JSStackFrame*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16749
      start: 16696
    functionDepth: 18
    functionLinenumber: 16696
    functionLinenumberEnd: 16749
    functionName: js_closure
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_closure2
    - JS_NewObjectClass
    - JS_VALUE_GET_PTR
    - JS_DefinePropertyValue
    - JS_IsException
    - JS_FreeValue
    - JS_DefineAutoInitProperty
    - JS_SetConstructorBit
    - JS_NewObjectProto
    - js_function_set_properties
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_closure(JSContext *ctx, JSValue bfunc,\n                          JSVarRef
      **cur_var_refs,\n                          JSStackFrame *sf)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:16766,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:16768,1
    - Dst: JS_IsConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:16770,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:16771,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16774,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16775,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:16777,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:16777,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:16778,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:16784,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:16785,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:16787,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16788,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:16791,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:16792,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:16793,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16795,1
    - Dst: js_closure2
      Src: /src/gpac/src/quickjs/quickjs.c:16797,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16799,1
    - Dst: js_method_set_home_object
      Src: /src/gpac/src/quickjs/quickjs.c:16801,1
    - Dst: JS_SetConstructorBit
      Src: /src/gpac/src/quickjs/quickjs.c:16802,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:16804,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:16805,1
    - Dst: JS_DefineObjectNameComputed
      Src: /src/gpac/src/quickjs/quickjs.c:16809,1
    - Dst: JS_DefineObjectName
      Src: /src/gpac/src/quickjs/quickjs.c:16813,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:16819,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:16820,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:16825,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:16826,1
    - Dst: set_cycle_flag
      Src: /src/gpac/src/quickjs/quickjs.c:16828,1
    - Dst: set_cycle_flag
      Src: /src/gpac/src/quickjs/quickjs.c:16829,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16831,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16832,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16838,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16839,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16840,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16841,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16842,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 77
    argCount: 7
    argNames:
    - ctx
    - sp
    - class_name
    - class_flags
    - cur_var_refs
    - sf
    - is_computed_name
    argTypes:
    - JSContext*
    - JSValue*
    - JSAtom
    - int
    - JSVarRef**
    - JSStackFrame*
    - BOOL
    assertStmts:
    - condition: (b->func_kind == JS_FUNC_NORMAL)
      pos:
        line_end: 16791
        line_start: 16791
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 16846
      start: 16753
    functionDepth: 19
    functionLinenumber: 16753
    functionLinenumberEnd: 16846
    functionName: js_op_define_class
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_closure2
    - js_method_set_home_object
    - set_cycle_flag
    - JS_IsConstructor
    - JS_DupValue
    - JS_DefineObjectName
    - JS_NewInt32
    - JS_IsObject
    - JS_GetProperty
    - JS_VALUE_GET_PTR
    - JS_IsNull
    - JS_DefinePropertyValue
    - assert
    - JS_DefineObjectNameComputed
    - JS_NewObjectProto
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_NewObjectProtoClass
    - JS_SetConstructorBit
    linkageType: ''
    returnType: int
    signature: "int js_op_define_class(JSContext *ctx, JSValue *sp,\n                              JSAtom
      class_name, int class_flags,\n                              JSVarRef **cur_var_refs,\n
      \                             JSStackFrame *sf, BOOL is_computed_name)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:16853,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:16854,1
    - Dst: async_func_free
      Src: /src/gpac/src/quickjs/quickjs.c:16857,1
    - Dst: JS_DupValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:16858,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - rt
    - sf
    argTypes:
    - JSRuntime*
    - JSStackFrame*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16863
      start: 16848
    functionDepth: 1
    functionLinenumber: 16848
    functionLinenumberEnd: 16863
    functionName: close_var_refs
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - async_func_free
    - list_entry
    - list_for_each_safe
    - JS_DupValueRT
    linkageType: ''
    returnType: void
    signature: void close_var_refs(JSRuntime *rt, JSStackFrame *sf)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:16872,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:16873,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:16875,1
    - Dst: async_func_free
      Src: /src/gpac/src/quickjs/quickjs.c:16877,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:16878,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - ctx
    - sf
    - var_idx
    argTypes:
    - JSContext*
    - JSStackFrame*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16884
      start: 16865
    functionDepth: 1
    functionLinenumber: 16865
    functionLinenumberEnd: 16884
    functionName: close_lexical_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - async_func_free
    - JS_DupValue
    - list_for_each_safe
    - list_entry
    - list_del
    linkageType: ''
    returnType: void
    signature: void close_lexical_var(JSContext *ctx, JSStackFrame *sf, int var_idx)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16902,1
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:16907,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:16908,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:16923,1
    - Dst: alloca
      Src: /src/gpac/src/quickjs/quickjs.c:16925,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:16941,1
    - Dst: JSCFunctionType::generic
      Src: /src/gpac/src/quickjs/quickjs.c:16950,1
    - Dst: JSCFunctionType::generic_magic
      Src: /src/gpac/src/quickjs/quickjs.c:16963,1
    - Dst: JSCFunctionType::getter
      Src: /src/gpac/src/quickjs/quickjs.c:16967,1
    - Dst: JSCFunctionType::setter
      Src: /src/gpac/src/quickjs/quickjs.c:16970,1
    - Dst: JSCFunctionType::getter_magic
      Src: /src/gpac/src/quickjs/quickjs.c:16973,1
    - Dst: JSCFunctionType::setter_magic
      Src: /src/gpac/src/quickjs/quickjs.c:16976,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:16982,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:16982,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:16986,1
    - Dst: JSCFunctionType::f_f
      Src: /src/gpac/src/quickjs/quickjs.c:16986,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:16993,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:16993,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:16997,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:16997,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:17001,1
    - Dst: JSCFunctionType::f_f_f
      Src: /src/gpac/src/quickjs/quickjs.c:17001,1
    - Dst: JSCFunctionType::iterator_next
      Src: /src/gpac/src/quickjs/quickjs.c:17007,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17009,1
    - Dst: js_create_iterator_result
      Src: /src/gpac/src/quickjs/quickjs.c:17010,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:17015,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 98
    argCount: 6
    argNames:
    - ctx
    - func_obj
    - this_obj
    - argc
    - argv
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17020
      start: 16889
    functionDepth: 22
    functionLinenumber: 16889
    functionLinenumberEnd: 17020
    functionName: js_call_c_function
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JSCFunctionType::generic
    - JSCFunctionType::f_f_f
    - JS_ToFloat64
    - JSCFunctionType::getter
    - JSCFunctionType::generic_magic
    - JS_NewFloat64
    - unlikely
    - JS_ThrowStackOverflow
    - JSCFunctionType::setter
    - JSCFunctionType::getter_magic
    - abort
    - JSCFunctionType::f_f
    - js_create_iterator_result
    - js_check_stack_overflow
    - JS_ThrowTypeError
    - JS_IsException
    - JS_VALUE_GET_OBJ
    - JSCFunctionType::setter_magic
    - JSCFunctionType::iterator_next
    - alloca
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_call_c_function(JSContext *ctx, JSValueConst func_obj,\n
      \                                 JSValueConst this_obj,\n                                  int
      argc, JSValueConst *argv, int flags)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:17031,1
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:17034,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:17035,1
    - Dst: alloca
      Src: /src/gpac/src/quickjs/quickjs.c:17036,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:17045,1
    - Dst: JS_CallConstructor2
      Src: /src/gpac/src/quickjs/quickjs.c:17047,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:17050,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 6
    argNames:
    - ctx
    - func_obj
    - this_obj
    - argc
    - argv
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17053
      start: 17022
    functionDepth: 13
    functionLinenumber: 17022
    functionLinenumberEnd: 17053
    functionName: js_call_bound_function
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_check_stack_overflow
    - js_same_value
    - JS_Call
    - JS_VALUE_GET_OBJ
    - JS_ThrowStackOverflow
    - alloca
    - JS_CallConstructor2
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_call_bound_function(JSContext *ctx, JSValueConst func_obj,\n
      \                                     JSValueConst this_obj,\n                                      int
      argc, JSValueConst *argv, int flags)"
  - BBCount: 104
    BranchProfiles: []
    Callsites:
    - Dst: DEF
      Src: /src/gpac/src/quickjs/quickjs.c:17099,1
    - Dst: def
      Src: /src/gpac/src/quickjs/quickjs.c:17101,1
    - Dst: def
      Src: /src/gpac/src/quickjs/quickjs.c:17103,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:17114,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17116,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:17116,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:17118,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:17122,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:17142,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17143,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:17148,1
    - Dst: call_func
      Src: /src/gpac/src/quickjs/quickjs.c:17150,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17155,1
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:17163,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:17164,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:17174,1
    - Dst: alloca
      Src: /src/gpac/src/quickjs/quickjs.c:17177,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17178,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:17179,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17182,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:17208,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17208,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:17212,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17212,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17216,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17216,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:17229,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:17232,1
    - Dst: get_i8
      Src: /src/gpac/src/quickjs/quickjs.c:17232,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:17236,1
    - Dst: get_i16
      Src: /src/gpac/src/quickjs/quickjs.c:17236,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17240,1
    - Dst: js_closure
      Src: /src/gpac/src/quickjs/quickjs.c:17243,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17243,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17244,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17244,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:17248,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:17252,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17252,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:17265,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:17266,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17269,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:17271,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17272,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17277,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:17289,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17290,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17290,1
    - Dst: js_build_arguments
      Src: /src/gpac/src/quickjs/quickjs.c:17298,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17299,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17299,1
    - Dst: js_build_mapped_arguments
      Src: /src/gpac/src/quickjs/quickjs.c:17303,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:17304,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17305,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17305,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17309,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17312,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17318,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17321,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:17321,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:17325,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17326,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17326,1
    - Dst: js_import_meta
      Src: /src/gpac/src/quickjs/quickjs.c:17330,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17331,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17331,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:17335,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17341,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:17343,1
    - Dst: js_create_array
      Src: /src/gpac/src/quickjs/quickjs.c:17344,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17345,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17345,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17366,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17370,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17371,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17375,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17376,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17377,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17382,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17388,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17395,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17403,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17485,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17485,1
    - Dst: js_closure
      Src: /src/gpac/src/quickjs/quickjs.c:17487,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17488,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17488,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17503,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:17509,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17511,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17511,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17516,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17523,1
    - Dst: JS_CallConstructorInternal
      Src: /src/gpac/src/quickjs/quickjs.c:17527,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17530,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17530,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17533,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17541,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:17545,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17547,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17547,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17552,1
    - Dst: js_create_array_free
      Src: /src/gpac/src/quickjs/quickjs.c:17560,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17562,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17562,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17570,1
    - Dst: js_function_apply
      Src: /src/gpac/src/quickjs/quickjs.c:17574,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17575,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17575,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17577,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17578,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17579,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:17593,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:17594,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:17595,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:17605,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:17607,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:17615,1
    - Dst: JS_GetPrototype
      Src: /src/gpac/src/quickjs/quickjs.c:17617,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17618,1
    - Dst: JS_CallConstructor2
      Src: /src/gpac/src/quickjs/quickjs.c:17620,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17621,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17622,1
    - Dst: JS_CheckBrand
      Src: /src/gpac/src/quickjs/quickjs.c:17629,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:17633,1
    - Dst: JS_AddBrand
      Src: /src/gpac/src/quickjs/quickjs.c:17639,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17641,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17642,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17658,1
    - Dst: JS_ThrowTypeErrorReadOnly
      Src: /src/gpac/src/quickjs/quickjs.c:17662,1
    - Dst: JS_ThrowSyntaxErrorVarRedeclaration
      Src: /src/gpac/src/quickjs/quickjs.c:17665,1
    - Dst: JS_ThrowReferenceErrorUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:17668,1
    - Dst: JS_ThrowReferenceError
      Src: /src/gpac/src/quickjs/quickjs.c:17671,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:17674,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:17676,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17684,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17685,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:17689,1
    - Dst: JS_EvalObject
      Src: /src/gpac/src/quickjs/quickjs.c:17694,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:17697,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17700,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17700,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17703,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17716,1
    - Dst: build_arg_list
      Src: /src/gpac/src/quickjs/quickjs.c:17719,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:17722,1
    - Dst: JS_EvalObject
      Src: /src/gpac/src/quickjs/quickjs.c:17727,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:17730,1
    - Dst: free_arg_list
      Src: /src/gpac/src/quickjs/quickjs.c:17733,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17734,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17734,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17736,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17737,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:17746,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17747,1
    - Dst: js_regexp_set_internal
      Src: /src/gpac/src/quickjs/quickjs.c:17749,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17750,1
    - Dst: JS_GetPrototype
      Src: /src/gpac/src/quickjs/quickjs.c:17760,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17761,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17763,1
    - Dst: js_dynamic_import
      Src: /src/gpac/src/quickjs/quickjs.c:17771,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17772,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17774,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17775,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17784,1
    - Dst: JS_GetGlobalVar
      Src: /src/gpac/src/quickjs/quickjs.c:17788,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17789,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17789,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17799,1
    - Dst: JS_SetGlobalVar
      Src: /src/gpac/src/quickjs/quickjs.c:17803,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17805,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17812,1
    - Dst: JS_CheckDefineGlobalVar
      Src: /src/gpac/src/quickjs/quickjs.c:17816,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17822,1
    - Dst: JS_DefineGlobalVar
      Src: /src/gpac/src/quickjs/quickjs.c:17826,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17832,1
    - Dst: JS_DefineGlobalFunction
      Src: /src/gpac/src/quickjs/quickjs.c:17836,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17838,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17846,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17848,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17855,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:17857,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17864,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:17866,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17866,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17872,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17874,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17881,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:17883,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17890,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:17892,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17892,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17897,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17899,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17901,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17902,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17903,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17904,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17909,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17910,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17911,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17912,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17913,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17914,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17915,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17916,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17921,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17922,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17923,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17924,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17925,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17926,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17927,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17928,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17933,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17934,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17935,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17936,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17942,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17945,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17952,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:17954,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17961,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:17963,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17963,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17969,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17972,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:17972,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:17973,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17976,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17983,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17985,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:17985,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:17986,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:17989,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17996,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17998,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:17998,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:17999,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18002,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18009,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18011,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18017,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18019,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18019,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:18020,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18023,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18030,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18032,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18032,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:18033,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18036,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18043,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18045,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18045,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:18046,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18049,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18056,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18058,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18058,1
    - Dst: JS_ThrowReferenceError
      Src: /src/gpac/src/quickjs/quickjs.c:18059,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18062,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18069,1
    - Dst: close_lexical_var
      Src: /src/gpac/src/quickjs/quickjs.c:18071,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18082,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18083,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:18085,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18086,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18086,1
    - Dst: get_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:18092,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:18096,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:18096,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:18099,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:18103,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18108,1
    - Dst: JS_GetGlobalVarRef
      Src: /src/gpac/src/quickjs/quickjs.c:18112,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18119,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18120,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18120,1
    - Dst: CASE
      Src: /src/gpac/src/quickjs/quickjs.c:18124,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18125,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18126,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18126,1
    - Dst: CASE
      Src: /src/gpac/src/quickjs/quickjs.c:18129,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18131,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18131,1
    - Dst: CASE
      Src: /src/gpac/src/quickjs/quickjs.c:18135,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18141,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18142,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:18144,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18148,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18150,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18150,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18161,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18162,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:18164,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18168,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18170,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18170,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18181,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18182,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:18184,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18190,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18190,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18200,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18201,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:18203,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18209,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18209,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18217,1
    - Dst: JS_NewCatchOffset
      Src: /src/gpac/src/quickjs/quickjs.c:18218,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18226,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:18228,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18237,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18237,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18239,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18240,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:18242,1
    - Dst: js_for_in_start
      Src: /src/gpac/src/quickjs/quickjs.c:18252,1
    - Dst: js_for_in_next
      Src: /src/gpac/src/quickjs/quickjs.c:18257,1
    - Dst: js_for_of_start
      Src: /src/gpac/src/quickjs/quickjs.c:18263,1
    - Dst: js_for_of_next
      Src: /src/gpac/src/quickjs/quickjs.c:18273,1
    - Dst: js_for_await_of_next
      Src: /src/gpac/src/quickjs/quickjs.c:18280,1
    - Dst: js_for_of_start
      Src: /src/gpac/src/quickjs/quickjs.c:18286,1
    - Dst: js_iterator_get_value_done
      Src: /src/gpac/src/quickjs/quickjs.c:18293,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:18298,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:18299,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:18309,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:18311,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18313,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18323,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18324,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18326,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:18327,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18328,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:18340,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18342,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18344,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:18356,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18358,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:18360,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:18360,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:18365,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:18368,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18371,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18373,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:18377,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18387,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18388,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:18390,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:18392,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18418,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18420,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18423,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:18427,1
    CyclomaticComplexity: 190
    EdgeCount: 190
    ICount: 1018
    argCount: 7
    argNames:
    - caller_ctx
    - func_obj
    - this_obj
    - new_target
    - argc
    - argv
    - in_flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - JSValueConst
    - int
    - JSValue*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18435
      start: 17072
    functionDepth: 21
    functionLinenumber: 17072
    functionLinenumberEnd: 18435
    functionName: JS_CallInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_dynamic_import
    - free_var_ref
    - JS_ThrowReferenceErrorUninitialized
    - JS_DupValue
    - JS_IsUndefined
    - js_create_array_free
    - JS_IsNull
    - js_for_await_of_next
    - js_poll_interrupts
    - JS_IteratorClose
    - JS_GetGlobalVarRef
    - JS_VALUE_GET_INT
    - js_iterator_get_value_done
    - close_lexical_var
    - __JS_NewShortBigInt
    - JS_NewObject
    - JS_ThrowReferenceError
    - js_closure
    - js_for_in_next
    - get_i8
    - js_for_in_start
    - JS_CallConstructorInternal
    - init_list_head
    - JS_SetGlobalVar
    - js_function_apply
    - js_for_of_next
    - call_func
    - JS_ThrowTypeErrorReadOnly
    - JS_ThrowStackOverflow
    - JS_NewInt32
    - abort
    - JS_GetProperty
    - JS_VALUE_GET_PTR
    - JS_CheckBrand
    - JS_CheckDefineGlobalVar
    - js_create_array
    - free_arg_list
    - JS_NewBool
    - js_build_arguments
    - alloca
    - set_value
    - JS_ThrowReferenceErrorUninitialized2
    - min_int
    - get_u16
    - build_arg_list
    - JS_DefineGlobalFunction
    - unlikely
    - JS_NewCatchOffset
    - CASE
    - JS_AtomToString
    - JS_EvalObject
    - get_i16
    - JS_NewObjectClass
    - JS_CallInternal
    - likely
    - JS_ToObject
    - JS_CallConstructor2
    - JS_ThrowInternalError
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - JS_IsUninitialized
    - js_regexp_set_internal
    - DEF
    - JS_GetPrototype
    - JS_ToBoolFree
    - JS_ThrowSyntaxErrorVarRedeclaration
    - js_import_meta
    - add_property
    - def
    - get_var_ref
    - JS_VALUE_GET_TAG
    - get_u32
    - JS_MKPTR
    - JS_IsObject
    - JS_AtomToValue
    - JS_GetGlobalVar
    - JS_CallFree
    - JS_AddBrand
    - js_for_of_start
    - JS_NewObjectProto
    - js_check_stack_overflow
    - js_same_value
    - JS_ThrowTypeError
    - JS_IsException
    - JS_Call
    - js_build_mapped_arguments
    - JS_DefineGlobalVar
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_CallInternal(JSContext *caller_ctx, JSValueConst func_obj,\n
      \                              JSValueConst this_obj, JSValueConst new_target,\n
      \                              int argc, JSValue *argv, int in_flags)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - pc
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17094
      start: 17093
    functionDepth: 0
    functionLinenumber: 17093
    functionLinenumberEnd: 17094
    functionName: SWITCH
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SWITCH(pc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - op
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17095
      start: 17094
    functionDepth: 0
    functionLinenumber: 17094
    functionLinenumberEnd: 17095
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CASE(op)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - pc
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17109
      start: 17108
    functionDepth: 0
    functionLinenumber: 17108
    functionLinenumberEnd: 17109
    functionName: SWITCH
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SWITCH(pc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - op
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17110
      start: 17109
    functionDepth: 0
    functionLinenumber: 17109
    functionLinenumberEnd: 17110
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CASE(op)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:17208,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17208,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:17212,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17212,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17216,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17216,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:17229,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:17232,1
    - Dst: get_i8
      Src: /src/gpac/src/quickjs/quickjs.c:17232,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:17236,1
    - Dst: get_i16
      Src: /src/gpac/src/quickjs/quickjs.c:17236,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17240,1
    - Dst: js_closure
      Src: /src/gpac/src/quickjs/quickjs.c:17243,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17243,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17244,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17244,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:17248,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:17252,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17252,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:17265,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:17266,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17269,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:17271,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17272,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17277,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:17289,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17290,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17290,1
    - Dst: js_build_arguments
      Src: /src/gpac/src/quickjs/quickjs.c:17298,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17299,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17299,1
    - Dst: js_build_mapped_arguments
      Src: /src/gpac/src/quickjs/quickjs.c:17303,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:17304,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17305,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17305,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17309,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17312,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17318,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17321,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:17321,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:17325,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17326,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17326,1
    - Dst: js_import_meta
      Src: /src/gpac/src/quickjs/quickjs.c:17330,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17331,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17331,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:17335,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17341,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:17343,1
    - Dst: js_create_array
      Src: /src/gpac/src/quickjs/quickjs.c:17344,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17345,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17345,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17366,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17370,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17371,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17375,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17376,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17377,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17382,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17388,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17395,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17403,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17485,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17485,1
    - Dst: js_closure
      Src: /src/gpac/src/quickjs/quickjs.c:17487,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17488,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17488,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17503,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:17509,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17511,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17511,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17516,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17523,1
    - Dst: JS_CallConstructorInternal
      Src: /src/gpac/src/quickjs/quickjs.c:17527,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17530,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17530,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17533,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17541,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:17545,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17547,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17547,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17552,1
    - Dst: js_create_array_free
      Src: /src/gpac/src/quickjs/quickjs.c:17560,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17562,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17562,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17570,1
    - Dst: js_function_apply
      Src: /src/gpac/src/quickjs/quickjs.c:17574,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17575,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17575,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17577,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17578,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17579,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:17593,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:17594,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:17595,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 314
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17601
      start: 17206
    functionDepth: 22
    functionLinenumber: 17206
    functionLinenumberEnd: 17601
    functionName: SWITCH
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_u16
    - get_i8
    - js_import_meta
    - JS_CallConstructorInternal
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - get_u32
    - js_function_apply
    - JS_MKPTR
    - unlikely
    - JS_IsUndefined
    - js_create_array_free
    - JS_AtomToString
    - JS_NewInt32
    - get_i16
    - abort
    - JS_IsObject
    - JS_AtomToValue
    - JS_CallInternal
    - likely
    - JS_ToObject
    - js_create_array
    - JS_NewObjectProto
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - js_build_mapped_arguments
    - __JS_NewShortBigInt
    - JS_NewObject
    - js_build_arguments
    - js_closure
    - min_int
    linkageType: ''
    returnType: void
    signature: void SWITCH(pc)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:17265,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:17266,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17269,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:17271,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17272,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17277,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17280
      start: 17261
    functionDepth: 1
    functionLinenumber: 17261
    functionLinenumberEnd: 17280
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - JS_IsException
    - likely
    - JS_ToObject
    linkageType: ''
    returnType: void
    signature: void CASE(OP_push_this)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: js_build_arguments
      Src: /src/gpac/src/quickjs/quickjs.c:17298,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17299,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17299,1
    - Dst: js_build_mapped_arguments
      Src: /src/gpac/src/quickjs/quickjs.c:17303,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:17304,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17305,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17305,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17309,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17312,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17318,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17321,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:17321,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:17325,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17326,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17326,1
    - Dst: js_import_meta
      Src: /src/gpac/src/quickjs/quickjs.c:17330,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17331,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17331,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:17335,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17337
      start: 17293
    functionDepth: 21
    functionLinenumber: 17293
    functionLinenumberEnd: 17337
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_DupValue
    - JS_IsException
    - JS_MKPTR
    - js_import_meta
    - unlikely
    - js_build_mapped_arguments
    - js_build_arguments
    - JS_NewObjectProto
    - abort
    - min_int
    linkageType: ''
    returnType: void
    signature: void CASE(OP_special_object)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17341,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:17343,1
    - Dst: js_create_array
      Src: /src/gpac/src/quickjs/quickjs.c:17344,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17345,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17345,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17347
      start: 17339
    functionDepth: 10
    functionLinenumber: 17339
    functionLinenumberEnd: 17347
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - JS_IsException
    - unlikely
    - js_create_array
    - min_int
    linkageType: ''
    returnType: void
    signature: void CASE(OP_rest)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17411
      start: 17406
    functionDepth: 0
    functionLinenumber: 17406
    functionLinenumberEnd: 17411
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CASE(OP_perm3)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17419
      start: 17413
    functionDepth: 0
    functionLinenumber: 17413
    functionLinenumberEnd: 17419
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CASE(OP_rot3l)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17428
      start: 17421
    functionDepth: 0
    functionLinenumber: 17421
    functionLinenumberEnd: 17428
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CASE(OP_rot4l)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17438
      start: 17430
    functionDepth: 0
    functionLinenumber: 17430
    functionLinenumberEnd: 17438
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CASE(OP_rot5l)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17446
      start: 17440
    functionDepth: 0
    functionLinenumber: 17440
    functionLinenumberEnd: 17446
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CASE(OP_rot3r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17454
      start: 17448
    functionDepth: 0
    functionLinenumber: 17448
    functionLinenumberEnd: 17454
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CASE(OP_perm4)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17463
      start: 17456
    functionDepth: 0
    functionLinenumber: 17456
    functionLinenumberEnd: 17463
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CASE(OP_perm5)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17470
      start: 17465
    functionDepth: 0
    functionLinenumber: 17465
    functionLinenumberEnd: 17470
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CASE(OP_swap)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17480
      start: 17472
    functionDepth: 0
    functionLinenumber: 17472
    functionLinenumberEnd: 17480
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CASE(OP_swap2)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17485,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17485,1
    - Dst: js_closure
      Src: /src/gpac/src/quickjs/quickjs.c:17487,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17488,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17488,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17490
      start: 17483
    functionDepth: 19
    functionLinenumber: 17483
    functionLinenumberEnd: 17490
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_DupValue
    - get_u32
    - JS_IsException
    - unlikely
    - js_closure
    linkageType: ''
    returnType: void
    signature: void CASE(OP_fclosure)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17503,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:17509,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17511,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17511,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17516,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17519
      start: 17500
    functionDepth: 22
    functionLinenumber: 17500
    functionLinenumberEnd: 17519
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - JS_IsException
    - JS_CallInternal
    - JS_FreeValue
    - unlikely
    linkageType: ''
    returnType: void
    signature: void CASE(OP_call)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17523,1
    - Dst: JS_CallConstructorInternal
      Src: /src/gpac/src/quickjs/quickjs.c:17527,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17530,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17530,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17533,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17536
      start: 17521
    functionDepth: 1
    functionLinenumber: 17521
    functionLinenumberEnd: 17536
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - JS_IsException
    - JS_FreeValue
    - JS_CallConstructorInternal
    - unlikely
    linkageType: ''
    returnType: void
    signature: void CASE(OP_call_constructor)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17541,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:17545,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17547,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17547,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17552,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17555
      start: 17538
    functionDepth: 22
    functionLinenumber: 17538
    functionLinenumberEnd: 17555
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - JS_IsException
    - JS_CallInternal
    - JS_FreeValue
    - unlikely
    linkageType: ''
    returnType: void
    signature: void CASE(OP_call_method)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17570,1
    - Dst: js_function_apply
      Src: /src/gpac/src/quickjs/quickjs.c:17574,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17575,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17575,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17577,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17578,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17579,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17582
      start: 17567
    functionDepth: 1
    functionLinenumber: 17567
    functionLinenumberEnd: 17582
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - js_function_apply
    - JS_IsException
    - JS_FreeValue
    - unlikely
    linkageType: ''
    returnType: void
    signature: void CASE(OP_apply)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:17593,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:17594,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:17595,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17599
      start: 17587
    functionDepth: 12
    functionLinenumber: 17587
    functionLinenumberEnd: 17599
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_IsObject
    - JS_IsUndefined
    - JS_ThrowTypeError
    linkageType: ''
    returnType: void
    signature: void CASE(OP_return_undef)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:17605,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:17607,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17609
      start: 17604
    functionDepth: 12
    functionLinenumber: 17604
    functionLinenumberEnd: 17609
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_IsUndefined
    - JS_ThrowTypeError
    linkageType: ''
    returnType: void
    signature: void CASE(OP_check_ctor)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:17615,1
    - Dst: JS_GetPrototype
      Src: /src/gpac/src/quickjs/quickjs.c:17617,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17618,1
    - Dst: JS_CallConstructor2
      Src: /src/gpac/src/quickjs/quickjs.c:17620,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17621,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17622,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17625
      start: 17611
    functionDepth: 3
    functionLinenumber: 17611
    functionLinenumberEnd: 17625
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_GetPrototype
    - JS_IsException
    - JS_FreeValue
    - JS_IsUndefined
    - JS_CallConstructor2
    linkageType: ''
    returnType: void
    signature: void CASE(OP_init_ctor)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_CheckBrand
      Src: /src/gpac/src/quickjs/quickjs.c:17629,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:17633,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17636
      start: 17627
    functionDepth: 14
    functionLinenumber: 17627
    functionLinenumberEnd: 17636
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_CheckBrand
    - JS_ThrowTypeError
    linkageType: ''
    returnType: void
    signature: void CASE(OP_check_brand)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17684,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17685,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:17689,1
    - Dst: JS_EvalObject
      Src: /src/gpac/src/quickjs/quickjs.c:17694,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:17697,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17700,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17700,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17703,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17706
      start: 17680
    functionDepth: 22
    functionLinenumber: 17680
    functionLinenumberEnd: 17706
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - js_same_value
    - JS_IsException
    - JS_CallInternal
    - JS_FreeValue
    - unlikely
    - JS_EvalObject
    linkageType: ''
    returnType: void
    signature: void CASE(OP_eval)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17716,1
    - Dst: build_arg_list
      Src: /src/gpac/src/quickjs/quickjs.c:17719,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:17722,1
    - Dst: JS_EvalObject
      Src: /src/gpac/src/quickjs/quickjs.c:17727,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:17730,1
    - Dst: free_arg_list
      Src: /src/gpac/src/quickjs/quickjs.c:17733,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17734,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17734,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17736,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17737,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17740
      start: 17709
    functionDepth: 5
    functionLinenumber: 17709
    functionLinenumberEnd: 17740
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - js_same_value
    - build_arg_list
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - unlikely
    - free_arg_list
    - JS_EvalObject
    linkageType: ''
    returnType: void
    signature: void CASE(OP_apply_eval)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:17746,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17747,1
    - Dst: js_regexp_set_internal
      Src: /src/gpac/src/quickjs/quickjs.c:17749,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17750,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17753
      start: 17743
    functionDepth: 10
    functionLinenumber: 17743
    functionLinenumberEnd: 17753
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_IsException
    - JS_NewObjectClass
    - js_regexp_set_internal
    linkageType: ''
    returnType: void
    signature: void CASE(OP_regexp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetPrototype
      Src: /src/gpac/src/quickjs/quickjs.c:17760,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17761,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17763,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17765
      start: 17756
    functionDepth: 3
    functionLinenumber: 17756
    functionLinenumberEnd: 17765
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_IsException
    - JS_FreeValue
    - JS_GetPrototype
    linkageType: ''
    returnType: void
    signature: void CASE(OP_get_super)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_dynamic_import
      Src: /src/gpac/src/quickjs/quickjs.c:17771,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17772,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17774,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17775,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17778
      start: 17768
    functionDepth: 1
    functionLinenumber: 17768
    functionLinenumberEnd: 17778
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_IsException
    - JS_FreeValue
    - js_dynamic_import
    linkageType: ''
    returnType: void
    signature: void CASE(OP_import)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17784,1
    - Dst: JS_GetGlobalVar
      Src: /src/gpac/src/quickjs/quickjs.c:17788,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17789,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17789,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17792
      start: 17781
    functionDepth: 15
    functionLinenumber: 17781
    functionLinenumberEnd: 17792
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_IsException
    - JS_GetGlobalVar
    - unlikely
    - get_u32
    linkageType: ''
    returnType: void
    signature: void CASE(OP_get_var_undef)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17799,1
    - Dst: JS_SetGlobalVar
      Src: /src/gpac/src/quickjs/quickjs.c:17803,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17805,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17807
      start: 17795
    functionDepth: 16
    functionLinenumber: 17795
    functionLinenumberEnd: 17807
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - unlikely
    - get_u32
    - JS_SetGlobalVar
    linkageType: ''
    returnType: void
    signature: void CASE(OP_put_var)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17812,1
    - Dst: JS_CheckDefineGlobalVar
      Src: /src/gpac/src/quickjs/quickjs.c:17816,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17818
      start: 17810
    functionDepth: 3
    functionLinenumber: 17810
    functionLinenumberEnd: 17818
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_CheckDefineGlobalVar
    - get_u32
    linkageType: ''
    returnType: void
    signature: void CASE(OP_check_define_var)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17822,1
    - Dst: JS_DefineGlobalVar
      Src: /src/gpac/src/quickjs/quickjs.c:17826,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17828
      start: 17820
    functionDepth: 9
    functionLinenumber: 17820
    functionLinenumberEnd: 17828
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_DefineGlobalVar
    - get_u32
    linkageType: ''
    returnType: void
    signature: void CASE(OP_define_var)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:17832,1
    - Dst: JS_DefineGlobalFunction
      Src: /src/gpac/src/quickjs/quickjs.c:17836,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17838,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17840
      start: 17830
    functionDepth: 18
    functionLinenumber: 17830
    functionLinenumberEnd: 17840
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_FreeValue
    - JS_DefineGlobalFunction
    - get_u32
    linkageType: ''
    returnType: void
    signature: void CASE(OP_define_func)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17846,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17848,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17850
      start: 17843
    functionDepth: 1
    functionLinenumber: 17843
    functionLinenumberEnd: 17850
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - JS_DupValue
    linkageType: ''
    returnType: void
    signature: void CASE(OP_get_loc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17855,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:17857,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17859
      start: 17852
    functionDepth: 2
    functionLinenumber: 17852
    functionLinenumberEnd: 17859
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - set_value
    linkageType: ''
    returnType: void
    signature: void CASE(OP_put_loc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17864,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:17866,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17866,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17867
      start: 17861
    functionDepth: 2
    functionLinenumber: 17861
    functionLinenumberEnd: 17867
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - JS_DupValue
    - set_value
    linkageType: ''
    returnType: void
    signature: void CASE(OP_set_loc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17872,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17874,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17876
      start: 17869
    functionDepth: 1
    functionLinenumber: 17869
    functionLinenumberEnd: 17876
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - JS_DupValue
    linkageType: ''
    returnType: void
    signature: void CASE(OP_get_arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17881,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:17883,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17885
      start: 17878
    functionDepth: 2
    functionLinenumber: 17878
    functionLinenumberEnd: 17885
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - set_value
    linkageType: ''
    returnType: void
    signature: void CASE(OP_put_arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17890,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:17892,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17892,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17893
      start: 17887
    functionDepth: 2
    functionLinenumber: 17887
    functionLinenumberEnd: 17893
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - JS_DupValue
    - set_value
    linkageType: ''
    returnType: void
    signature: void CASE(OP_set_arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17942,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17945,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17947
      start: 17939
    functionDepth: 1
    functionLinenumber: 17939
    functionLinenumberEnd: 17947
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - JS_DupValue
    linkageType: ''
    returnType: void
    signature: void CASE(OP_get_var_ref)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17952,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:17954,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17956
      start: 17949
    functionDepth: 2
    functionLinenumber: 17949
    functionLinenumberEnd: 17956
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - set_value
    linkageType: ''
    returnType: void
    signature: void CASE(OP_put_var_ref)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17961,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:17963,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17963,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17964
      start: 17958
    functionDepth: 2
    functionLinenumber: 17958
    functionLinenumberEnd: 17964
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - JS_DupValue
    - set_value
    linkageType: ''
    returnType: void
    signature: void CASE(OP_set_var_ref)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17969,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17972,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:17972,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:17973,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17976,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17978
      start: 17966
    functionDepth: 14
    functionLinenumber: 17966
    functionLinenumberEnd: 17978
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - JS_DupValue
    - unlikely
    - JS_IsUninitialized
    - JS_ThrowReferenceErrorUninitialized2
    linkageType: ''
    returnType: void
    signature: void CASE(OP_get_var_ref_check)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17983,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17985,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:17985,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:17986,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:17989,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17991
      start: 17980
    functionDepth: 14
    functionLinenumber: 17980
    functionLinenumberEnd: 17991
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - unlikely
    - JS_IsUninitialized
    - set_value
    - JS_ThrowReferenceErrorUninitialized2
    linkageType: ''
    returnType: void
    signature: void CASE(OP_put_var_ref_check)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:17996,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17998,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:17998,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:17999,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18002,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18004
      start: 17993
    functionDepth: 14
    functionLinenumber: 17993
    functionLinenumberEnd: 18004
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - unlikely
    - JS_IsUninitialized
    - set_value
    - JS_ThrowReferenceErrorUninitialized2
    linkageType: ''
    returnType: void
    signature: void CASE(OP_put_var_ref_check_init)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18009,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18011,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18012
      start: 18006
    functionDepth: 2
    functionLinenumber: 18006
    functionLinenumberEnd: 18012
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - set_value
    linkageType: ''
    returnType: void
    signature: void CASE(OP_set_loc_uninitialized)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18017,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18019,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18019,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:18020,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18023,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18025
      start: 18014
    functionDepth: 14
    functionLinenumber: 18014
    functionLinenumberEnd: 18025
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - JS_DupValue
    - unlikely
    - JS_IsUninitialized
    - JS_ThrowReferenceErrorUninitialized2
    linkageType: ''
    returnType: void
    signature: void CASE(OP_get_loc_check)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18030,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18032,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18032,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:18033,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18036,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18038
      start: 18027
    functionDepth: 14
    functionLinenumber: 18027
    functionLinenumberEnd: 18038
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - JS_DupValue
    - unlikely
    - JS_IsUninitialized
    - JS_ThrowReferenceErrorUninitialized2
    linkageType: ''
    returnType: void
    signature: void CASE(OP_get_loc_checkthis)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18043,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18045,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18045,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:18046,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18049,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18051
      start: 18040
    functionDepth: 14
    functionLinenumber: 18040
    functionLinenumberEnd: 18051
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - unlikely
    - JS_IsUninitialized
    - set_value
    - JS_ThrowReferenceErrorUninitialized2
    linkageType: ''
    returnType: void
    signature: void CASE(OP_put_loc_check)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18056,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18058,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18058,1
    - Dst: JS_ThrowReferenceError
      Src: /src/gpac/src/quickjs/quickjs.c:18059,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18062,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18064
      start: 18053
    functionDepth: 12
    functionLinenumber: 18053
    functionLinenumberEnd: 18064
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - unlikely
    - JS_IsUninitialized
    - JS_ThrowReferenceError
    - set_value
    linkageType: ''
    returnType: void
    signature: void CASE(OP_put_loc_check_init)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18069,1
    - Dst: close_lexical_var
      Src: /src/gpac/src/quickjs/quickjs.c:18071,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18072
      start: 18066
    functionDepth: 2
    functionLinenumber: 18066
    functionLinenumberEnd: 18072
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - close_lexical_var
    linkageType: ''
    returnType: void
    signature: void CASE(OP_close_loc)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18082,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18083,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:18085,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18086,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18086,1
    - Dst: get_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:18092,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:18096,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:18096,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:18099,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:18103,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18104
      start: 18075
    functionDepth: 10
    functionLinenumber: 18075
    functionLinenumberEnd: 18104
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - get_var_ref
    - get_u32
    - JS_IsException
    - unlikely
    - JS_VALUE_GET_OBJ
    - add_property
    - free_var_ref
    - JS_NewObjectProto
    - JS_AtomToValue
    linkageType: ''
    returnType: void
    signature: void CASE(OP_make_loc_ref)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18108,1
    - Dst: JS_GetGlobalVarRef
      Src: /src/gpac/src/quickjs/quickjs.c:18112,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18115
      start: 18106
    functionDepth: 16
    functionLinenumber: 18106
    functionLinenumberEnd: 18115
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_GetGlobalVarRef
    - get_u32
    linkageType: ''
    returnType: void
    signature: void CASE(OP_make_var_ref)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18119,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18120,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18120,1
    - Dst: CASE
      Src: /src/gpac/src/quickjs/quickjs.c:18124,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18125,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18126,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18126,1
    - Dst: CASE
      Src: /src/gpac/src/quickjs/quickjs.c:18129,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18131,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18131,1
    - Dst: CASE
      Src: /src/gpac/src/quickjs/quickjs.c:18135,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18141,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18142,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:18144,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18148,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18150,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18150,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18161,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18162,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:18164,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18168,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18170,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18170,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18172
      start: 18118
    functionDepth: 15
    functionLinenumber: 18118
    functionLinenumberEnd: 18172
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - get_u16
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - get_u32
    - JS_ToBoolFree
    - unlikely
    - js_poll_interrupts
    - CASE
    linkageType: ''
    returnType: void
    signature: void CASE(OP_goto)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18181,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18182,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:18184,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18190,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18190,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18192
      start: 18175
    functionDepth: 15
    functionLinenumber: 18175
    functionLinenumberEnd: 18192
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_ToBoolFree
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - unlikely
    - js_poll_interrupts
    linkageType: ''
    returnType: void
    signature: void CASE(OP_if_true8)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18200,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18201,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:18203,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18209,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18209,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18211
      start: 18194
    functionDepth: 15
    functionLinenumber: 18194
    functionLinenumberEnd: 18211
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_ToBoolFree
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - unlikely
    - js_poll_interrupts
    linkageType: ''
    returnType: void
    signature: void CASE(OP_if_false8)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18217,1
    - Dst: JS_NewCatchOffset
      Src: /src/gpac/src/quickjs/quickjs.c:18218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18221
      start: 18214
    functionDepth: 1
    functionLinenumber: 18214
    functionLinenumberEnd: 18221
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - get_u32
    - JS_NewCatchOffset
    linkageType: ''
    returnType: void
    signature: void CASE(OP_catch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18226,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:18228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18231
      start: 18223
    functionDepth: 1
    functionLinenumber: 18223
    functionLinenumberEnd: 18231
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_NewInt32
    - get_u32
    linkageType: ''
    returnType: void
    signature: void CASE(OP_gosub)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18237,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18237,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18239,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18240,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:18242,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18247
      start: 18233
    functionDepth: 12
    functionLinenumber: 18233
    functionLinenumberEnd: 18247
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_INT
    - JS_ThrowInternalError
    - unlikely
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: void
    signature: void CASE(OP_ret)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_for_in_start
      Src: /src/gpac/src/quickjs/quickjs.c:18252,1
    - Dst: js_for_in_next
      Src: /src/gpac/src/quickjs/quickjs.c:18257,1
    - Dst: js_for_of_start
      Src: /src/gpac/src/quickjs/quickjs.c:18263,1
    - Dst: js_for_of_next
      Src: /src/gpac/src/quickjs/quickjs.c:18273,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18276
      start: 18250
    functionDepth: 20
    functionLinenumber: 18250
    functionLinenumberEnd: 18276
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_for_in_next
    - js_for_in_start
    - js_for_of_next
    - js_for_of_start
    linkageType: ''
    returnType: void
    signature: void CASE(OP_for_in_start)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_for_await_of_next
      Src: /src/gpac/src/quickjs/quickjs.c:18280,1
    - Dst: js_for_of_start
      Src: /src/gpac/src/quickjs/quickjs.c:18286,1
    - Dst: js_iterator_get_value_done
      Src: /src/gpac/src/quickjs/quickjs.c:18293,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:18298,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:18299,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18301
      start: 18278
    functionDepth: 16
    functionLinenumber: 18278
    functionLinenumberEnd: 18301
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_iterator_get_value_done
    - JS_ThrowTypeError
    - js_for_await_of_next
    - js_for_of_start
    - JS_IsObject
    linkageType: ''
    returnType: void
    signature: void CASE(OP_for_await_of_next)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18323,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18324,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18326,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:18327,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18328,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18332
      start: 18317
    functionDepth: 12
    functionLinenumber: 18317
    functionLinenumberEnd: 18332
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_FreeValue
    - unlikely
    - JS_VALUE_GET_TAG
    - JS_ThrowInternalError
    linkageType: ''
    returnType: void
    signature: void CASE(OP_nip_catch)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:18340,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18342,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18344,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18346
      start: 18335
    functionDepth: 1
    functionLinenumber: 18335
    functionLinenumberEnd: 18346
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_IsException
    - JS_FreeValue
    - JS_Call
    linkageType: ''
    returnType: void
    signature: void CASE(OP_iterator_next)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:18356,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18358,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:18360,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:18360,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:18365,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:18368,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18371,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18373,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:18377,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18379
      start: 18349
    functionDepth: 1
    functionLinenumber: 18349
    functionLinenumberEnd: 18379
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_IsNull
    - JS_IsException
    - JS_FreeValue
    - JS_IsUndefined
    - JS_CallFree
    - JS_NewBool
    - JS_GetProperty
    linkageType: ''
    returnType: void
    signature: void CASE(OP_iterator_call)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18387,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18388,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:18390,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:18392,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18393
      start: 18382
    functionDepth: 2
    functionLinenumber: 18382
    functionLinenumberEnd: 18393
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_ToBoolFree
    - JS_NewBool
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: void
    signature: void CASE(OP_lnot)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - name
    - ','
    - keep
    - ','
    - is_length
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18417
      start: 18396
    functionDepth: 0
    functionLinenumber: 18396
    functionLinenumberEnd: 18417
    functionName: GET_FIELD_INLINE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_FIELD_INLINE(name, keep, is_length)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18475,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:18479,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18479,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:18480,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:18481,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:18484,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18487,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18491,1
    - Dst: JS_SetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:18496,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18498,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18500,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18504
      start: 18466
    functionDepth: 15
    functionLinenumber: 18466
    functionLinenumberEnd: 18504
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_TAG
    - get_u32
    - JS_FreeValue
    - JS_SetPropertyInternal
    - JS_VALUE_GET_OBJ
    - likely
    - unlikely
    - find_own_property
    - set_value
    linkageType: ''
    returnType: void
    signature: void CASE(OP_put_field)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18512,1
    - Dst: JS_NewSymbolFromAtom
      Src: /src/gpac/src/quickjs/quickjs.c:18514,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18515,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18518
      start: 18507
    functionDepth: 7
    functionLinenumber: 18507
    functionLinenumberEnd: 18518
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_IsException
    - JS_NewSymbolFromAtom
    - get_u32
    linkageType: ''
    returnType: void
    signature: void CASE(OP_private_symbol)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetPrivateField
      Src: /src/gpac/src/quickjs/quickjs.c:18524,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18525,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18526,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18529,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18529,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18531
      start: 18521
    functionDepth: 14
    functionLinenumber: 18521
    functionLinenumberEnd: 18531
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_IsException
    - JS_FreeValue
    - unlikely
    - JS_GetPrivateField
    linkageType: ''
    returnType: void
    signature: void CASE(OP_get_private_field)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_SetPrivateField
      Src: /src/gpac/src/quickjs/quickjs.c:18537,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18538,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18539,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18541,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18543
      start: 18534
    functionDepth: 14
    functionLinenumber: 18534
    functionLinenumberEnd: 18543
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_FreeValue
    - JS_SetPrivateField
    - unlikely
    linkageType: ''
    returnType: void
    signature: void CASE(OP_put_private_field)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_DefinePrivateField
      Src: /src/gpac/src/quickjs/quickjs.c:18549,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18550,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18552,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18554
      start: 18546
    functionDepth: 14
    functionLinenumber: 18546
    functionLinenumberEnd: 18554
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_FreeValue
    - unlikely
    - JS_DefinePrivateField
    linkageType: ''
    returnType: void
    signature: void CASE(OP_define_private_field)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18560,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:18563,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18566,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18568
      start: 18557
    functionDepth: 18
    functionLinenumber: 18557
    functionLinenumberEnd: 18568
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - unlikely
    - get_u32
    - JS_DefinePropertyValue
    linkageType: ''
    returnType: void
    signature: void CASE(OP_define_field)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18574,1
    - Dst: JS_DefineObjectName
      Src: /src/gpac/src/quickjs/quickjs.c:18577,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18578,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18580
      start: 18571
    functionDepth: 19
    functionLinenumber: 18571
    functionLinenumberEnd: 18580
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_DefineObjectName
    - unlikely
    - get_u32
    linkageType: ''
    returnType: void
    signature: void CASE(OP_set_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_DefineObjectNameComputed
      Src: /src/gpac/src/quickjs/quickjs.c:18585,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18586,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18588
      start: 18582
    functionDepth: 19
    functionLinenumber: 18582
    functionLinenumberEnd: 18588
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - unlikely
    - JS_DefineObjectNameComputed
    linkageType: ''
    returnType: void
    signature: void CASE(OP_set_name_computed)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:18595,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:18595,1
    - Dst: JS_SetPrototypeInternal
      Src: /src/gpac/src/quickjs/quickjs.c:18596,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18599,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18601
      start: 18590
    functionDepth: 14
    functionLinenumber: 18590
    functionLinenumberEnd: 18601
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_FreeValue
    - JS_IsObject
    - JS_SetPrototypeInternal
    - JS_IsNull
    linkageType: ''
    returnType: void
    signature: void CASE(OP_set_proto)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:18620,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18621,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18625,1
    - Dst: js_method_set_properties
      Src: /src/gpac/src/quickjs/quickjs.c:18649,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:18651,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18654,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:18656,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18657,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18660,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 45
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18662
      start: 18606
    functionDepth: 17
    functionLinenumber: 18606
    functionLinenumberEnd: 18662
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_FreeAtom
    - get_u32
    - js_method_set_properties
    - JS_FreeValue
    - unlikely
    - JS_DefineProperty
    - JS_ValueToAtom
    linkageType: ''
    returnType: void
    signature: void CASE(OP_define_method)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18670,1
    - Dst: js_op_define_class
      Src: /src/gpac/src/quickjs/quickjs.c:18673,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18677
      start: 18665
    functionDepth: 20
    functionLinenumber: 18665
    functionLinenumberEnd: 18677
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_op_define_class
    - get_u32
    linkageType: ''
    returnType: void
    signature: void CASE(OP_define_class)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - name
    - ','
    - keep
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18717
      start: 18680
    functionDepth: 0
    functionLinenumber: 18680
    functionLinenumberEnd: 18717
    functionName: GET_ARRAY_EL_INLINE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GET_ARRAY_EL_INLINE(name, keep)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:18732,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18732,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18733,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:18734,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18735,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18736,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18738,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18740,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18743,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18751,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:18751,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:18751,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:18752,1
    - Dst: JS_ToPropertyKey
      Src: /src/gpac/src/quickjs/quickjs.c:18756,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18757,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18759,1
    - Dst: JS_GetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:18764,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18764,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18765,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18765,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18769
      start: 18726
    functionDepth: 19
    functionLinenumber: 18726
    functionLinenumberEnd: 18769
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_DupValue
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - JS_IsNull
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - unlikely
    - JS_VALUE_GET_OBJ
    - likely
    - JS_IsUndefined
    - JS_GetPropertyValue
    - JS_ToPropertyKey
    linkageType: ''
    returnType: void
    signature: void CASE(OP_get_array_el3)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:18778,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18781,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:18781,1
    - Dst: JS_ThrowReferenceErrorNotDefined
      Src: /src/gpac/src/quickjs/quickjs.c:18782,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:18783,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:18786,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18787,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:18789,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:18792,1
    - Dst: JS_ThrowReferenceErrorNotDefined
      Src: /src/gpac/src/quickjs/quickjs.c:18793,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:18794,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:18799,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:18801,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18802,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18802,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18806
      start: 18772
    functionDepth: 15
    functionLinenumber: 18772
    functionLinenumberEnd: 18806
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_FreeAtom
    - JS_IsException
    - unlikely
    - JS_IsUndefined
    - is_strict_mode
    - JS_ValueToAtom
    - JS_HasProperty
    - JS_ThrowReferenceErrorNotDefined
    - JS_GetProperty
    linkageType: ''
    returnType: void
    signature: void CASE(OP_get_ref_value)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:18814,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18815,1
    - Dst: JS_GetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:18817,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:18818,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18819,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18819,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18821,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18822,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18823,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18826
      start: 18809
    functionDepth: 14
    functionLinenumber: 18809
    functionLinenumberEnd: 18826
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_FreeAtom
    - JS_IsException
    - JS_FreeValue
    - JS_GetPropertyInternal
    - unlikely
    - JS_ValueToAtom
    linkageType: ''
    returnType: void
    signature: void CASE(OP_get_super_value)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:18835,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18835,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18836,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:18837,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18838,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18839,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18841,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18843,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:18846,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:18850,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18850,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18854,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18856,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18858,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:18858,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:18860,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18865,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18867,1
    - Dst: JS_SetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:18872,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18873,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18875,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 44
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18878
      start: 18829
    functionDepth: 16
    functionLinenumber: 18829
    functionLinenumberEnd: 18878
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - get_shape_prop
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - JS_FreeValue
    - unlikely
    - JS_VALUE_GET_OBJ
    - likely
    - JS_SetPropertyValue
    - JS_NewInt32
    - set_value
    linkageType: ''
    returnType: void
    signature: void CASE(OP_put_array_el)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:18886,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18887,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18889,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:18889,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:18890,1
    - Dst: JS_ThrowReferenceErrorNotDefined
      Src: /src/gpac/src/quickjs/quickjs.c:18891,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:18892,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18895,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:18898,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18899,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18900,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:18901,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:18904,1
    - Dst: JS_ThrowReferenceErrorNotDefined
      Src: /src/gpac/src/quickjs/quickjs.c:18905,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:18906,1
    - Dst: JS_SetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:18910,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:18911,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18912,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18913,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18915,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 38
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18917
      start: 18881
    functionDepth: 15
    functionLinenumber: 18881
    functionLinenumberEnd: 18917
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_DupValue
    - JS_FreeAtom
    - JS_FreeValue
    - unlikely
    - JS_SetPropertyInternal
    - JS_IsUndefined
    - is_strict_mode
    - JS_ValueToAtom
    - JS_HasProperty
    - JS_ThrowReferenceErrorNotDefined
    linkageType: ''
    returnType: void
    signature: void CASE(OP_put_ref_value)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18925,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:18926,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:18929,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18930,1
    - Dst: JS_SetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:18932,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:18934,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18935,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18936,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18937,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18941
      start: 18920
    functionDepth: 15
    functionLinenumber: 18920
    functionLinenumberEnd: 18941
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_FreeAtom
    - JS_VALUE_GET_TAG
    - JS_FreeValue
    - JS_SetPropertyInternal
    - unlikely
    - JS_ValueToAtom
    linkageType: ''
    returnType: void
    signature: void CASE(OP_put_super_value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_DefinePropertyValueValue
      Src: /src/gpac/src/quickjs/quickjs.c:18947,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18947,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18950,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18952
      start: 18944
    functionDepth: 19
    functionLinenumber: 18944
    functionLinenumberEnd: 18952
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_DupValue
    - JS_DefinePropertyValueValue
    - unlikely
    linkageType: ''
    returnType: void
    signature: void CASE(OP_define_array_el)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_append_enumerate
      Src: /src/gpac/src/quickjs/quickjs.c:18958,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18960,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18961
      start: 18955
    functionDepth: 21
    functionLinenumber: 18955
    functionLinenumberEnd: 18961
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_FreeValue
    - js_append_enumerate
    linkageType: ''
    returnType: void
    signature: void CASE(OP_append)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_CopyDataProperties
      Src: /src/gpac/src/quickjs/quickjs.c:18974,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18978
      start: 18964
    functionDepth: 19
    functionLinenumber: 18964
    functionLinenumberEnd: 18978
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_CopyDataProperties
    linkageType: ''
    returnType: void
    signature: void CASE(OP_copy_data_properties)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:18985,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18985,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18987,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18987,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18988,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:18990,1
    - Dst: JS_VALUE_IS_BOTH_FLOAT
      Src: /src/gpac/src/quickjs/quickjs.c:18992,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:18993,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:18993,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:18994,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:18996,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:18996,1
    - Dst: JS_ConcatString
      Src: /src/gpac/src/quickjs/quickjs.c:18997,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18999,1
    - Dst: js_add_slow
      Src: /src/gpac/src/quickjs/quickjs.c:19004,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19008
      start: 18981
    functionDepth: 22
    functionLinenumber: 18981
    functionLinenumberEnd: 19008
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_IsString
    - JS_VALUE_GET_INT
    - js_add_slow
    - JS_VALUE_IS_BOTH_INT
    - JS_ConcatString
    - JS_IsException
    - __JS_NewFloat64
    - unlikely
    - JS_VALUE_IS_BOTH_FLOAT
    - likely
    - JS_VALUE_GET_FLOAT64
    - JS_NewInt32
    linkageType: ''
    returnType: void
    signature: void CASE(OP_add)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:19020,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19020,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19022,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19022,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19023,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19025,1
    - Dst: JS_VALUE_IS_BOTH_FLOAT
      Src: /src/gpac/src/quickjs/quickjs.c:19027,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:19028,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19028,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19029,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19031,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19032,1
    - Dst: JS_ConcatStringInPlace
      Src: /src/gpac/src/quickjs/quickjs.c:19035,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:19035,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19036,1
    - Dst: JS_ConcatString
      Src: /src/gpac/src/quickjs/quickjs.c:19038,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:19038,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19039,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:19041,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:19049,1
    - Dst: js_add_slow
      Src: /src/gpac/src/quickjs/quickjs.c:19052,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:19054,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19056
      start: 19010
    functionDepth: 22
    functionLinenumber: 19010
    functionLinenumberEnd: 19056
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_DupValue
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - JS_ConcatStringInPlace
    - JS_VALUE_IS_BOTH_INT
    - JS_ConcatString
    - JS_FreeValue
    - __JS_NewFloat64
    - JS_VALUE_GET_STRING
    - unlikely
    - JS_VALUE_IS_BOTH_FLOAT
    - likely
    - JS_IsException
    - JS_VALUE_GET_FLOAT64
    - JS_NewInt32
    - set_value
    - js_add_slow
    linkageType: ''
    returnType: void
    signature: void CASE(OP_add_loc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:19062,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19062,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19064,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19064,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19065,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19067,1
    - Dst: JS_VALUE_IS_BOTH_FLOAT
      Src: /src/gpac/src/quickjs/quickjs.c:19069,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:19070,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19070,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19071,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19076
      start: 19058
    functionDepth: 1
    functionLinenumber: 19058
    functionLinenumberEnd: 19076
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_INT
    - JS_VALUE_IS_BOTH_INT
    - __JS_NewFloat64
    - unlikely
    - JS_VALUE_IS_BOTH_FLOAT
    - likely
    - JS_VALUE_GET_FLOAT64
    - JS_NewInt32
    linkageType: ''
    returnType: void
    signature: void CASE(OP_sub)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:19083,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19083,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19086,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19087,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19089,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19094,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19098,1
    - Dst: JS_VALUE_IS_BOTH_FLOAT
      Src: /src/gpac/src/quickjs/quickjs.c:19100,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19101,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19101,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:19103,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19108
      start: 19078
    functionDepth: 1
    functionLinenumber: 19078
    functionLinenumberEnd: 19108
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_INT
    - JS_VALUE_IS_BOTH_INT
    - __JS_NewFloat64
    - unlikely
    - JS_VALUE_IS_BOTH_FLOAT
    - likely
    - JS_VALUE_GET_FLOAT64
    - JS_NewInt32
    linkageType: ''
    returnType: void
    signature: void CASE(OP_mul)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:19114,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19114,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19116,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19117,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:19118,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19123
      start: 19110
    functionDepth: 1
    functionLinenumber: 19110
    functionLinenumberEnd: 19123
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_NewFloat64
    - JS_VALUE_GET_INT
    - likely
    - JS_VALUE_IS_BOTH_INT
    linkageType: ''
    returnType: void
    signature: void CASE(OP_div)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:19129,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19129,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19131,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19132,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19135,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19138,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19143
      start: 19125
    functionDepth: 1
    functionLinenumber: 19125
    functionLinenumberEnd: 19143
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_INT
    - JS_VALUE_IS_BOTH_INT
    - unlikely
    - likely
    - JS_NewInt32
    linkageType: ''
    returnType: void
    signature: void CASE(OP_mod)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_binary_arith_slow
      Src: /src/gpac/src/quickjs/quickjs.c:19148,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19157,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19158,1
    - Dst: js_unary_arith_slow
      Src: /src/gpac/src/quickjs/quickjs.c:19161,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19164
      start: 19145
    functionDepth: 22
    functionLinenumber: 19145
    functionLinenumberEnd: 19164
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_TAG_IS_FLOAT64
    - JS_VALUE_GET_TAG
    - js_unary_arith_slow
    - js_binary_arith_slow
    linkageType: ''
    returnType: void
    signature: void CASE(OP_pow)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19171,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19173,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19175,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19179,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19183,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19184,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19185,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:19187,1
    - Dst: js_unary_arith_slow
      Src: /src/gpac/src/quickjs/quickjs.c:19190,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19193
      start: 19166
    functionDepth: 20
    functionLinenumber: 19166
    functionLinenumberEnd: 19193
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_TAG_IS_FLOAT64
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - __JS_NewFloat64
    - unlikely
    - js_unary_arith_slow
    - JS_VALUE_GET_FLOAT64
    - JS_NewInt32
    linkageType: ''
    returnType: void
    signature: void CASE(OP_neg)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19198,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19199,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19200,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19202,1
    - Dst: js_unary_arith_slow
      Src: /src/gpac/src/quickjs/quickjs.c:19206,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19209
      start: 19195
    functionDepth: 20
    functionLinenumber: 19195
    functionLinenumberEnd: 19209
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - unlikely
    - js_unary_arith_slow
    - JS_NewInt32
    linkageType: ''
    returnType: void
    signature: void CASE(OP_inc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19214,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19215,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19216,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19218,1
    - Dst: js_unary_arith_slow
      Src: /src/gpac/src/quickjs/quickjs.c:19222,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19225
      start: 19211
    functionDepth: 20
    functionLinenumber: 19211
    functionLinenumberEnd: 19225
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - unlikely
    - js_unary_arith_slow
    - JS_NewInt32
    linkageType: ''
    returnType: void
    signature: void CASE(OP_dec)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19232,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19233,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19234,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19236,1
    - Dst: js_post_inc_slow
      Src: /src/gpac/src/quickjs/quickjs.c:19240,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19244
      start: 19227
    functionDepth: 21
    functionLinenumber: 19227
    functionLinenumberEnd: 19244
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_post_inc_slow
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - unlikely
    - JS_NewInt32
    linkageType: ''
    returnType: void
    signature: void CASE(OP_post_inc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19251,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19252,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19253,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19255,1
    - Dst: js_post_inc_slow
      Src: /src/gpac/src/quickjs/quickjs.c:19259,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19263
      start: 19246
    functionDepth: 21
    functionLinenumber: 19246
    functionLinenumberEnd: 19263
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_post_inc_slow
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - unlikely
    - JS_NewInt32
    linkageType: ''
    returnType: void
    signature: void CASE(OP_post_dec)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19272,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19273,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19274,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19276,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:19282,1
    - Dst: js_unary_arith_slow
      Src: /src/gpac/src/quickjs/quickjs.c:19283,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:19285,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19287
      start: 19265
    functionDepth: 20
    functionLinenumber: 19265
    functionLinenumberEnd: 19287
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_DupValue
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - unlikely
    - js_unary_arith_slow
    - JS_NewInt32
    - set_value
    linkageType: ''
    returnType: void
    signature: void CASE(OP_inc_loc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19296,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19297,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19298,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19300,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:19306,1
    - Dst: js_unary_arith_slow
      Src: /src/gpac/src/quickjs/quickjs.c:19307,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:19309,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19311
      start: 19289
    functionDepth: 20
    functionLinenumber: 19289
    functionLinenumberEnd: 19311
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_DupValue
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - unlikely
    - js_unary_arith_slow
    - JS_NewInt32
    - set_value
    linkageType: ''
    returnType: void
    signature: void CASE(OP_dec_loc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19316,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19317,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19317,1
    - Dst: js_not_slow
      Src: /src/gpac/src/quickjs/quickjs.c:19320,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19323
      start: 19313
    functionDepth: 21
    functionLinenumber: 19313
    functionLinenumberEnd: 19323
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_NewInt32
    - js_not_slow
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: void
    signature: void CASE(OP_not)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:19330,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19330,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19332,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19333,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19335,1
    - Dst: js_binary_logic_slow
      Src: /src/gpac/src/quickjs/quickjs.c:19339,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19343
      start: 19326
    functionDepth: 21
    functionLinenumber: 19326
    functionLinenumberEnd: 19343
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_INT
    - JS_VALUE_IS_BOTH_INT
    - likely
    - JS_NewInt32
    - js_binary_logic_slow
    linkageType: ''
    returnType: void
    signature: void CASE(OP_shl)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:19349,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19349,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19351,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:19353,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19354,1
    - Dst: js_shr_slow
      Src: /src/gpac/src/quickjs/quickjs.c:19359,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19363
      start: 19345
    functionDepth: 22
    functionLinenumber: 19345
    functionLinenumberEnd: 19363
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_INT
    - JS_VALUE_IS_BOTH_INT
    - js_shr_slow
    - likely
    - JS_NewUint32
    linkageType: ''
    returnType: void
    signature: void CASE(OP_shr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:19369,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19369,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19371,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19373,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19374,1
    - Dst: js_binary_logic_slow
      Src: /src/gpac/src/quickjs/quickjs.c:19378,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19382
      start: 19365
    functionDepth: 21
    functionLinenumber: 19365
    functionLinenumberEnd: 19382
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_INT
    - JS_VALUE_IS_BOTH_INT
    - likely
    - JS_NewInt32
    - js_binary_logic_slow
    linkageType: ''
    returnType: void
    signature: void CASE(OP_sar)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:19388,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19388,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19389,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19390,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19391,1
    - Dst: js_binary_logic_slow
      Src: /src/gpac/src/quickjs/quickjs.c:19395,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19399
      start: 19384
    functionDepth: 21
    functionLinenumber: 19384
    functionLinenumberEnd: 19399
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_INT
    - JS_VALUE_IS_BOTH_INT
    - likely
    - JS_NewInt32
    - js_binary_logic_slow
    linkageType: ''
    returnType: void
    signature: void CASE(OP_and)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:19405,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19405,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19406,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19407,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19408,1
    - Dst: js_binary_logic_slow
      Src: /src/gpac/src/quickjs/quickjs.c:19412,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19416
      start: 19401
    functionDepth: 21
    functionLinenumber: 19401
    functionLinenumberEnd: 19416
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_INT
    - JS_VALUE_IS_BOTH_INT
    - likely
    - JS_NewInt32
    - js_binary_logic_slow
    linkageType: ''
    returnType: void
    signature: void CASE(OP_or)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:19422,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19422,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19423,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19424,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19425,1
    - Dst: js_binary_logic_slow
      Src: /src/gpac/src/quickjs/quickjs.c:19429,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19433
      start: 19418
    functionDepth: 21
    functionLinenumber: 19418
    functionLinenumberEnd: 19433
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_INT
    - JS_VALUE_IS_BOTH_INT
    - likely
    - JS_NewInt32
    - js_binary_logic_slow
    linkageType: ''
    returnType: void
    signature: void CASE(OP_xor)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - opcode
    - ','
    - binary_op
    - ','
    - slow_call
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19453
      start: 19437
    functionDepth: 0
    functionLinenumber: 19437
    functionLinenumberEnd: 19453
    functionName: OP_CMP
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OP_CMP(opcode, binary_op, slow_call)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_operator_in
      Src: /src/gpac/src/quickjs/quickjs.c:19465,1
    - Dst: js_operator_private_in
      Src: /src/gpac/src/quickjs/quickjs.c:19471,1
    - Dst: js_operator_instanceof
      Src: /src/gpac/src/quickjs/quickjs.c:19477,1
    - Dst: js_operator_typeof
      Src: /src/gpac/src/quickjs/quickjs.c:19485,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19486,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:19487,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19488
      start: 19463
    functionDepth: 18
    functionLinenumber: 19463
    functionLinenumberEnd: 19488
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_operator_instanceof
    - js_operator_private_in
    - JS_FreeValue
    - js_operator_typeof
    - js_operator_in
    - JS_AtomToString
    linkageType: ''
    returnType: void
    signature: void CASE(OP_in)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_operator_delete
      Src: /src/gpac/src/quickjs/quickjs.c:19492,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:19500,1
    - Dst: JS_DeleteGlobalVar
      Src: /src/gpac/src/quickjs/quickjs.c:19504,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19505,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:19507,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19508
      start: 19490
    functionDepth: 16
    functionLinenumber: 19490
    functionLinenumberEnd: 19508
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - get_u32
    - JS_DeleteGlobalVar
    - js_operator_delete
    - unlikely
    - JS_NewBool
    linkageType: ''
    returnType: void
    signature: void CASE(OP_delete)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19512,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:19514,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19515,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19517,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19519
      start: 19511
    functionDepth: 1
    functionLinenumber: 19511
    functionLinenumberEnd: 19519
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_IsException
    - JS_ToObject
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: void
    signature: void CASE(OP_to_object)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19523,1
    - Dst: JS_ToPropertyKey
      Src: /src/gpac/src/quickjs/quickjs.c:19530,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19531,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19533,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19536
      start: 19522
    functionDepth: 19
    functionLinenumber: 19522
    functionLinenumberEnd: 19536
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_IsException
    - JS_FreeValue
    - JS_ToPropertyKey
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: void
    signature: void CASE(OP_to_propkey)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19541,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:19542,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19543,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19545,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19547
      start: 19540
    functionDepth: 19
    functionLinenumber: 19540
    functionLinenumberEnd: 19547
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_ToString
    - JS_FreeValue
    - JS_IsException
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: void
    signature: void CASE(OP_to_string)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:19559,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:19560,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:19566,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19567,1
    - Dst: js_has_unscopable
      Src: /src/gpac/src/quickjs/quickjs.c:19571,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19572,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:19580,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19581,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:19584,1
    - Dst: JS_ThrowReferenceErrorNotDefined
      Src: /src/gpac/src/quickjs/quickjs.c:19585,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:19590,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19591,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19591,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:19594,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:19598,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19599,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:19602,1
    - Dst: JS_ThrowReferenceErrorNotDefined
      Src: /src/gpac/src/quickjs/quickjs.c:19603,1
    - Dst: JS_SetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:19607,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19609,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19611,1
    - Dst: JS_DeleteProperty
      Src: /src/gpac/src/quickjs/quickjs.c:19615,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19616,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19618,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:19619,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:19623,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:19628,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19629,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:19634,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19635,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19635,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19645,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 95
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19648
      start: 19550
    functionDepth: 15
    functionLinenumber: 19550
    functionLinenumberEnd: 19648
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - get_u32
    - JS_IsException
    - JS_FreeValue
    - unlikely
    - JS_SetPropertyInternal
    - JS_DeleteProperty
    - is_strict_mode
    - JS_NewBool
    - JS_HasProperty
    - JS_AtomToValue
    - set_value
    - JS_ThrowReferenceErrorNotDefined
    - JS_GetProperty
    - js_has_unscopable
    linkageType: ''
    returnType: void
    signature: void CASE(OP_with_get_var)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19676
      start: 19661
    functionDepth: 0
    functionLinenumber: 19661
    functionLinenumberEnd: 19676
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CASE(OP_return_async)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19679,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19681
      start: 19678
    functionDepth: 1
    functionLinenumber: 19678
    functionLinenumberEnd: 19681
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: void
    signature: void CASE(OP_is_undefined)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19685,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19687
      start: 19684
    functionDepth: 1
    functionLinenumber: 19684
    functionLinenumberEnd: 19687
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: void
    signature: void CASE(OP_is_null)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_operator_typeof
      Src: /src/gpac/src/quickjs/quickjs.c:19693,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19695
      start: 19691
    functionDepth: 3
    functionLinenumber: 19691
    functionLinenumberEnd: 19695
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_operator_typeof
    linkageType: ''
    returnType: void
    signature: void CASE(OP_typeof_is_undefined)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_operator_typeof
      Src: /src/gpac/src/quickjs/quickjs.c:19699,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19701
      start: 19698
    functionDepth: 3
    functionLinenumber: 19698
    functionLinenumberEnd: 19701
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_operator_typeof
    linkageType: ''
    returnType: void
    signature: void CASE(OP_typeof_is_function)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:19775,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ctx
    - func_obj
    - this_obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19777
      start: 19772
    functionDepth: 22
    functionLinenumber: 19772
    functionLinenumberEnd: 19777
    functionName: JS_Call
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 61
    functionsReached:
    - JS_CallInternal
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_Call(JSContext *ctx, JSValueConst func_obj, JSValueConst
      this_obj,\n                int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:19782,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19784,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ctx
    - func_obj
    - this_obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValue
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19786
      start: 19779
    functionDepth: 22
    functionLinenumber: 19779
    functionLinenumberEnd: 19786
    functionName: JS_CallFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 7
    functionsReached:
    - JS_FreeValue
    - JS_CallInternal
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_CallFree(JSContext *ctx, JSValue func_obj, JSValueConst
      this_obj,\n                           int argc, JSValueConst *argv)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19795,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:19797,1
    - Dst: JS_ThrowTypeErrorRevokedProxy
      Src: /src/gpac/src/quickjs/quickjs.c:19818,1
    - Dst: JS_GetFunctionRealm
      Src: /src/gpac/src/quickjs/quickjs.c:19821,1
    - Dst: JS_GetFunctionRealm
      Src: /src/gpac/src/quickjs/quickjs.c:19828,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 2
    argNames:
    - ctx
    - func_obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19836
      start: 19790
    functionDepth: 1
    functionLinenumber: 19790
    functionLinenumberEnd: 19836
    functionName: JS_GetFunctionRealm
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_GetFunctionRealm
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeErrorRevokedProxy
    linkageType: ''
    returnType: JSContext
    signature: JSContext *JS_GetFunctionRealm(JSContext *ctx, JSValueConst func_obj)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:19844,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:19845,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:19847,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19848,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:19850,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19851,1
    - Dst: JS_GetFunctionRealm
      Src: /src/gpac/src/quickjs/quickjs.c:19852,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:19855,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:19858,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19859,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - ctx
    - ctor
    - class_id
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19861
      start: 19838
    functionDepth: 9
    functionLinenumber: 19838
    functionLinenumberEnd: 19861
    functionName: js_create_from_ctor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetFunctionRealm
    - JS_DupValue
    - JS_IsException
    - JS_FreeValue
    - JS_NewObjectProtoClass
    - JS_IsUndefined
    - JS_IsObject
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_create_from_ctor(JSContext *ctx, JSValueConst ctor,\n                                   int
      class_id)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:19872,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19875,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19875,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:19877,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19878,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:19879,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19880,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:19885,1
    - Dst: call_func
      Src: /src/gpac/src/quickjs/quickjs.c:19887,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:19893,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:19897,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19898,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:19900,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19901,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19902,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19903,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19906,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 6
    argNames:
    - ctx
    - func_obj
    - new_target
    - argc
    - argv
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    - JSValue*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19910
      start: 19864
    functionDepth: 22
    functionLinenumber: 19864
    functionLinenumberEnd: 19910
    functionName: JS_CallConstructorInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeError
    - JS_IsException
    - JS_CallInternal
    - JS_FreeValue
    - call_func
    - unlikely
    - JS_VALUE_GET_OBJ
    - js_poll_interrupts
    - js_create_from_ctor
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_CallConstructorInternal(JSContext *ctx,\n                                          JSValueConst
      func_obj,\n                                          JSValueConst new_target,\n
      \                                         int argc, JSValue *argv, int flags)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_CallConstructorInternal
      Src: /src/gpac/src/quickjs/quickjs.c:19916,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ctx
    - func_obj
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19919
      start: 19912
    functionDepth: 23
    functionLinenumber: 19912
    functionLinenumberEnd: 19919
    functionName: JS_CallConstructor2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - JS_CallConstructorInternal
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_CallConstructor2(JSContext *ctx, JSValueConst func_obj,\n
      \                           JSValueConst new_target,\n                            int
      argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_CallConstructorInternal
      Src: /src/gpac/src/quickjs/quickjs.c:19924,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - func_obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19927
      start: 19921
    functionDepth: 23
    functionLinenumber: 19921
    functionLinenumberEnd: 19927
    functionName: JS_CallConstructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CallConstructorInternal
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_CallConstructor(JSContext *ctx, JSValueConst func_obj,\n
      \                          int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:19933,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19934,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:19936,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 5
    argNames:
    - ctx
    - this_val
    - atom
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19937
      start: 19929
    functionDepth: 23
    functionLinenumber: 19929
    functionLinenumberEnd: 19937
    functionName: JS_Invoke
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_GetProperty
    - JS_CallFree
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_Invoke(JSContext *ctx, JSValueConst this_val, JSAtom atom,\n
      \                 int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_Invoke
      Src: /src/gpac/src/quickjs/quickjs.c:19942,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19943,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ctx
    - this_val
    - atom
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValue
    - JSAtom
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19945
      start: 19939
    functionDepth: 24
    functionLinenumber: 19939
    functionLinenumberEnd: 19945
    functionName: JS_InvokeFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_Invoke
    - JS_FreeValue
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_InvokeFree(JSContext *ctx, JSValue this_val, JSAtom atom,\n
      \                            int argc, JSValueConst *argv)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:19958,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:19962,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:19965,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:19966,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:19970,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:19972,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:19972,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:19974,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:19977,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:19978,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:19984,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 34
    argCount: 5
    argNames:
    - ctx
    - func_obj
    - this_obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19992
      start: 19948
    functionDepth: 4
    functionLinenumber: 19948
    functionLinenumberEnd: 19992
    functionName: async_func_init
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - add_gc_object
    - js_malloc
    - JS_VALUE_GET_OBJ
    - js_mallocz
    - max_int
    - init_list_head
    - js_free
    linkageType: ''
    returnType: JSAsyncFunctionState
    signature: "JSAsyncFunctionState *async_func_init(JSContext *ctx,\n                                             JSValueConst
      func_obj, JSValueConst this_obj,\n                                             int
      argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:20001,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:20003,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:20005,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:20008,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:20009,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - rt
    - s
    argTypes:
    - JSRuntime*
    - JSAsyncFunctionState*
    assertStmts:
    - condition: (sf->cur_sp != NULL)
      pos:
        line_end: 20000
        line_start: 20000
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 20010
      start: 19994
    functionDepth: 2
    functionLinenumber: 19994
    functionLinenumberEnd: 20010
    functionName: async_func_free_frame
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - assert
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void async_func_free_frame(JSRuntime *rt, JSAsyncFunctionState *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:20018,1
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:20019,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:20020,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:20023,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:20024,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20027,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:20027,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:20028,1
    - Dst: close_var_refs
      Src: /src/gpac/src/quickjs/quickjs.c:20036,1
    - Dst: async_func_free_frame
      Src: /src/gpac/src/quickjs/quickjs.c:20038,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - JSAsyncFunctionState*
    assertStmts:
    - condition: (!s->is_completed)
      pos:
        line_end: 20017
        line_start: 20017
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 20041
      start: 20012
    functionDepth: 22
    functionLinenumber: 20012
    functionLinenumberEnd: 20041
    functionName: async_func_resume
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_check_stack_overflow
    - JS_MKPTR
    - JS_CallInternal
    - JS_IsException
    - assert
    - close_var_refs
    - JS_IsUndefined
    - async_func_free_frame
    - JS_ThrowStackOverflow
    linkageType: ''
    returnType: JSValue
    signature: JSValue async_func_resume(JSContext *ctx, JSAsyncFunctionState *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: async_func_free_frame
      Src: /src/gpac/src/quickjs/quickjs.c:20048,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:20051,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:20052,1
    - Dst: remove_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:20054,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:20056,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:20058,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - rt
    - s
    argTypes:
    - JSRuntime*
    - JSAsyncFunctionState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20060
      start: 20043
    functionDepth: 3
    functionLinenumber: 20043
    functionLinenumberEnd: 20060
    functionName: __async_func_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - remove_gc_object
    - list_add_tail
    - JS_FreeValueRT
    - async_func_free_frame
    - js_free_rt
    linkageType: ''
    returnType: void
    signature: void __async_func_free(JSRuntime *rt, JSAsyncFunctionState *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:20066,1
    - Dst: list_add
      Src: /src/gpac/src/quickjs/quickjs.c:20067,1
    - Dst: free_zero_refcount
      Src: /src/gpac/src/quickjs/quickjs.c:20069,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - rt
    - s
    argTypes:
    - JSRuntime*
    - JSAsyncFunctionState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20073
      start: 20062
    functionDepth: 10
    functionLinenumber: 20062
    functionLinenumberEnd: 20073
    functionName: async_func_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 4
    functionsReached:
    - list_add
    - free_zero_refcount
    - list_del
    linkageType: ''
    returnType: void
    signature: void async_func_free(JSRuntime *rt, JSAsyncFunctionState *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: async_func_free
      Src: /src/gpac/src/quickjs/quickjs.c:20095,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - rt
    - s
    argTypes:
    - JSRuntime*
    - JSGeneratorData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20099
      start: 20090
    functionDepth: 11
    functionLinenumber: 20090
    functionLinenumberEnd: 20099
    functionName: free_generator_stack_rt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - async_func_free
    linkageType: ''
    returnType: void
    signature: void free_generator_stack_rt(JSRuntime *rt, JSGeneratorData *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:20103,1
    - Dst: free_generator_stack_rt
      Src: /src/gpac/src/quickjs/quickjs.c:20106,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:20107,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20109
      start: 20101
    functionDepth: 12
    functionLinenumber: 20101
    functionLinenumberEnd: 20109
    functionName: js_generator_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - js_free_rt
    - free_generator_stack_rt
    linkageType: ''
    returnType: void
    signature: void js_generator_finalizer(JSRuntime *rt, JSValue obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: free_generator_stack_rt
      Src: /src/gpac/src/quickjs/quickjs.c:20113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - JSGeneratorData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20114
      start: 20111
    functionDepth: 12
    functionLinenumber: 20111
    functionLinenumberEnd: 20114
    functionName: free_generator_stack
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - free_generator_stack_rt
    linkageType: ''
    returnType: void
    signature: void free_generator_stack(JSContext *ctx, JSGeneratorData *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:20119,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:20124,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20125
      start: 20116
    functionDepth: 1
    functionLinenumber: 20116
    functionLinenumberEnd: 20125
    functionName: js_generator_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - mark_func
    linkageType: ''
    returnType: void
    signature: "void js_generator_mark(JSRuntime *rt, JSValueConst val,\n                              JS_MarkFunc
      *mark_func)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:20136,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:20142,1
    - Dst: free_generator_stack
      Src: /src/gpac/src/quickjs/quickjs.c:20150,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:20158,1
    - Dst: JS_Throw
      Src: /src/gpac/src/quickjs/quickjs.c:20161,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:20165,1
    - Dst: async_func_resume
      Src: /src/gpac/src/quickjs/quickjs.c:20171,1
    - Dst: free_generator_stack
      Src: /src/gpac/src/quickjs/quickjs.c:20175,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:20178,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:20178,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20182,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:20200,1
    - Dst: JS_Throw
      Src: /src/gpac/src/quickjs/quickjs.c:20203,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:20203,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:20208,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 71
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - pdone
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - BOOL*
    - int
    assertStmts:
    - condition: (JS_VALUE_GET_TAG(func_ret) == JS_TAG_INT)
      pos:
        line_end: 20177
        line_start: 20177
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 20212
      start: 20132
    functionDepth: 23
    functionLinenumber: 20132
    functionLinenumberEnd: 20212
    functionName: js_generator_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - free_generator_stack
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_INT
    - JS_ThrowTypeError
    - JS_GetOpaque
    - assert
    - JS_Throw
    - JS_NewInt32
    - async_func_resume
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_generator_next(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv,\n                                 BOOL
      *pdone, int magic)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:20222,1
    - Dst: async_func_init
      Src: /src/gpac/src/quickjs/quickjs.c:20226,1
    - Dst: async_func_resume
      Src: /src/gpac/src/quickjs/quickjs.c:20233,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20234,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20236,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:20238,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20239,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:20241,1
    - Dst: free_generator_stack_rt
      Src: /src/gpac/src/quickjs/quickjs.c:20244,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:20245,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 6
    argNames:
    - ctx
    - func_obj
    - this_obj
    - argc
    - argv
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20247
      start: 20214
    functionDepth: 23
    functionLinenumber: 20214
    functionLinenumberEnd: 20247
    functionName: js_generator_function_call
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_FreeValue
    - JS_SetOpaque
    - js_free
    - js_create_from_ctor
    - js_mallocz
    - async_func_init
    - async_func_resume
    - free_generator_stack_rt
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_generator_function_call(JSContext *ctx, JSValueConst func_obj,\n
      \                                         JSValueConst this_obj,\n                                          int
      argc, JSValueConst *argv,\n                                          int flags)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:20253,1
    - Dst: async_func_free
      Src: /src/gpac/src/quickjs/quickjs.c:20256,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20258
      start: 20251
    functionDepth: 11
    functionLinenumber: 20251
    functionLinenumberEnd: 20258
    functionName: js_async_function_resolve_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - async_func_free
    - JS_VALUE_GET_OBJ
    linkageType: ''
    returnType: void
    signature: void js_async_function_resolve_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:20263,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:20266,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20268
      start: 20260
    functionDepth: 1
    functionLinenumber: 20260
    functionLinenumberEnd: 20268
    functionName: js_async_function_resolve_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - mark_func
    linkageType: ''
    returnType: void
    signature: "void js_async_function_resolve_mark(JSRuntime *rt, JSValueConst val,\n
      \                                          JS_MarkFunc *mark_func)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:20279,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20281,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20283,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:20286,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - ctx
    - s
    - resolving_funcs
    argTypes:
    - JSContext*
    - JSAsyncFunctionState*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20291
      start: 20270
    functionDepth: 9
    functionLinenumber: 20270
    functionLinenumberEnd: 20291
    functionName: js_async_function_resolve_create
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_FreeValue
    - JS_NewObjectProtoClass
    - JS_VALUE_GET_OBJ
    linkageType: ''
    returnType: int
    signature: "int js_async_function_resolve_create(JSContext *ctx,\n                                            JSAsyncFunctionState
      *s,\n                                            JSValue *resolving_funcs)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: async_func_resume
      Src: /src/gpac/src/quickjs/quickjs.c:20297,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20299,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:20302,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:20303,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20305,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20306,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:20309,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20311,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20312,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20322,1
    - Dst: js_promise_resolve
      Src: /src/gpac/src/quickjs/quickjs.c:20323,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20325,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20326,1
    - Dst: js_async_function_resolve_create
      Src: /src/gpac/src/quickjs/quickjs.c:20328,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20329,1
    - Dst: perform_promise_then
      Src: /src/gpac/src/quickjs/quickjs.c:20337,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20340,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20342,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 39
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - JSAsyncFunctionState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20346
      start: 20293
    functionDepth: 23
    functionLinenumber: 20293
    functionLinenumberEnd: 20346
    functionName: js_async_function_resume
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - perform_promise_then
    - js_async_function_resolve_create
    - js_promise_resolve
    - JS_GetException
    - async_func_resume
    linkageType: ''
    returnType: void
    signature: void js_async_function_resume(JSContext *ctx, JSAsyncFunctionState
      *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:20354,1
    - Dst: JS_Throw
      Src: /src/gpac/src/quickjs/quickjs.c:20365,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:20365,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:20368,1
    - Dst: js_async_function_resume
      Src: /src/gpac/src/quickjs/quickjs.c:20370,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 6
    argNames:
    - ctx
    - func_obj
    - this_obj
    - argc
    - argv
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20372
      start: 20348
    functionDepth: 24
    functionLinenumber: 20348
    functionLinenumberEnd: 20372
    functionName: js_async_function_resolve_call
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_Throw
    - JS_DupValue
    - js_async_function_resume
    - JS_VALUE_GET_OBJ
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_async_function_resolve_call(JSContext *ctx,\n                                              JSValueConst
      func_obj,\n                                              JSValueConst this_obj,\n
      \                                             int argc, JSValueConst *argv,\n
      \                                             int flags)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: async_func_init
      Src: /src/gpac/src/quickjs/quickjs.c:20381,1
    - Dst: JS_NewPromiseCapability
      Src: /src/gpac/src/quickjs/quickjs.c:20385,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20386,1
    - Dst: async_func_free
      Src: /src/gpac/src/quickjs/quickjs.c:20387,1
    - Dst: js_async_function_resume
      Src: /src/gpac/src/quickjs/quickjs.c:20391,1
    - Dst: async_func_free
      Src: /src/gpac/src/quickjs/quickjs.c:20393,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 6
    argNames:
    - ctx
    - func_obj
    - this_obj
    - argc
    - argv
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20396
      start: 20374
    functionDepth: 24
    functionLinenumber: 20374
    functionLinenumberEnd: 20396
    functionName: js_async_function_call
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - async_func_free
    - JS_IsException
    - JS_NewPromiseCapability
    - js_async_function_resume
    - async_func_init
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_async_function_call(JSContext *ctx, JSValueConst func_obj,\n
      \                                     JSValueConst this_obj,\n                                      int
      argc, JSValueConst *argv, int flags)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:20433,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:20434,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:20435,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:20436,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:20437,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:20438,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:20439,1
    - Dst: async_func_free
      Src: /src/gpac/src/quickjs/quickjs.c:20442,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:20443,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - rt
    - s
    argTypes:
    - JSRuntime*
    - JSAsyncGeneratorData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20444
      start: 20427
    functionDepth: 11
    functionLinenumber: 20427
    functionLinenumberEnd: 20444
    functionName: js_async_generator_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - async_func_free
    - list_for_each_safe
    - JS_FreeValueRT
    - js_free_rt
    - list_entry
    linkageType: ''
    returnType: void
    signature: "void js_async_generator_free(JSRuntime *rt,\n                                    JSAsyncGeneratorData
      *s)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:20448,1
    - Dst: js_async_generator_free
      Src: /src/gpac/src/quickjs/quickjs.c:20451,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20453
      start: 20446
    functionDepth: 12
    functionLinenumber: 20446
    functionLinenumberEnd: 20453
    functionName: js_async_generator_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - js_async_generator_free
    linkageType: ''
    returnType: void
    signature: void js_async_generator_finalizer(JSRuntime *rt, JSValue obj)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:20458,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:20462,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:20463,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:20464,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:20465,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:20466,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:20467,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:20470,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20473
      start: 20455
    functionDepth: 2
    functionLinenumber: 20455
    functionLinenumberEnd: 20473
    functionName: js_async_generator_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - mark_func
    - list_entry
    - list_for_each
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: "void js_async_generator_mark(JSRuntime *rt, JSValueConst val,\n                                    JS_MarkFunc
      *mark_func)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewCFunctionData
      Src: /src/gpac/src/quickjs/quickjs.c:20489,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20491,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20493,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - ctx
    - generator
    - resolving_funcs
    - is_resume_next
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValue*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20499
      start: 20480
    functionDepth: 10
    functionLinenumber: 20480
    functionLinenumberEnd: 20499
    functionName: js_async_generator_resolve_function_create
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewCFunctionData
    - JS_FreeValue
    - JS_IsException
    linkageType: ''
    returnType: int
    signature: "int js_async_generator_resolve_function_create(JSContext *ctx,\n                                                      JSValueConst
      generator,\n                                                      JSValue *resolving_funcs,\n
      \                                                     BOOL is_resume_next)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_promise_resolve
      Src: /src/gpac/src/quickjs/quickjs.c:20508,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20510,1
    - Dst: js_async_generator_resolve_function_create
      Src: /src/gpac/src/quickjs/quickjs.c:20513,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:20513,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20515,1
    - Dst: perform_promise_then
      Src: /src/gpac/src/quickjs/quickjs.c:20523,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20526,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20528,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 3
    argNames:
    - ctx
    - s
    - value
    argTypes:
    - JSContext*
    - JSAsyncGeneratorData*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20534
      start: 20501
    functionDepth: 11
    functionLinenumber: 20501
    functionLinenumberEnd: 20534
    functionName: js_async_generator_await
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_async_generator_resolve_function_create
    - JS_IsException
    - JS_FreeValue
    - JS_MKPTR
    - perform_promise_then
    - js_promise_resolve
    linkageType: ''
    returnType: int
    signature: "int js_async_generator_await(JSContext *ctx,\n                                    JSAsyncGeneratorData
      *s,\n                                    JSValueConst value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:20544,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:20545,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:20546,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20548,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20549,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20550,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20551,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20552,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:20553,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - s
    - result
    - is_reject
    argTypes:
    - JSContext*
    - JSAsyncGeneratorData*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20554
      start: 20536
    functionDepth: 23
    functionLinenumber: 20536
    functionLinenumberEnd: 20554
    functionName: js_async_generator_resolve_or_reject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_FreeValue
    - list_entry
    - list_del
    - js_free
    linkageType: ''
    returnType: void
    signature: "void js_async_generator_resolve_or_reject(JSContext *ctx,\n                                                 JSAsyncGeneratorData
      *s,\n                                                 JSValueConst result,\n
      \                                                int is_reject)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_create_iterator_result
      Src: /src/gpac/src/quickjs/quickjs.c:20562,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:20562,1
    - Dst: js_async_generator_resolve_or_reject
      Src: /src/gpac/src/quickjs/quickjs.c:20564,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20565,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - s
    - value
    - done
    argTypes:
    - JSContext*
    - JSAsyncGeneratorData*
    - JSValueConst
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20566
      start: 20556
    functionDepth: 24
    functionLinenumber: 20556
    functionLinenumberEnd: 20566
    functionName: js_async_generator_resolve
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - JS_DupValue
    - js_create_iterator_result
    - js_async_generator_resolve_or_reject
    linkageType: ''
    returnType: void
    signature: "void js_async_generator_resolve(JSContext *ctx,\n                                       JSAsyncGeneratorData
      *s,\n                                       JSValueConst value,\n                                       BOOL
      done)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_async_generator_resolve_or_reject
      Src: /src/gpac/src/quickjs/quickjs.c:20572,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - s
    - exception
    argTypes:
    - JSContext*
    - JSAsyncGeneratorData*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20573
      start: 20568
    functionDepth: 24
    functionLinenumber: 20568
    functionLinenumberEnd: 20573
    functionName: js_async_generator_reject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_async_generator_resolve_or_reject
    linkageType: ''
    returnType: void
    signature: "void js_async_generator_reject(JSContext *ctx,\n                                       JSAsyncGeneratorData
      *s,\n                                       JSValueConst exception)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: async_func_free
      Src: /src/gpac/src/quickjs/quickjs.c:20580,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - JSAsyncGeneratorData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20583
      start: 20575
    functionDepth: 11
    functionLinenumber: 20575
    functionLinenumberEnd: 20583
    functionName: js_async_generator_complete
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - async_func_free
    linkageType: ''
    returnType: void
    signature: "void js_async_generator_complete(JSContext *ctx,\n                                        JSAsyncGeneratorData
      *s)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_promise_resolve
      Src: /src/gpac/src/quickjs/quickjs.c:20593,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20597,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:20598,1
    - Dst: js_promise_resolve
      Src: /src/gpac/src/quickjs/quickjs.c:20599,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20601,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20602,1
    - Dst: js_async_generator_resolve_function_create
      Src: /src/gpac/src/quickjs/quickjs.c:20605,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:20606,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20609,1
    - Dst: perform_promise_then
      Src: /src/gpac/src/quickjs/quickjs.c:20614,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20617,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20618,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20619,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 3
    argNames:
    - ctx
    - s
    - value
    argTypes:
    - JSContext*
    - JSAsyncGeneratorData*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20621
      start: 20585
    functionDepth: 11
    functionLinenumber: 20585
    functionLinenumberEnd: 20621
    functionName: js_async_generator_completed_return
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_async_generator_resolve_function_create
    - JS_IsException
    - JS_FreeValue
    - JS_MKPTR
    - perform_promise_then
    - js_promise_resolve
    - JS_GetException
    linkageType: ''
    returnType: int
    signature: "int js_async_generator_completed_return(JSContext *ctx,\n                                               JSAsyncGeneratorData
      *s,\n                                               JSValueConst value)"
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: list_empty
      Src: /src/gpac/src/quickjs/quickjs.c:20630,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:20632,1
    - Dst: js_async_generator_complete
      Src: /src/gpac/src/quickjs/quickjs.c:20643,1
    - Dst: js_async_generator_resolve
      Src: /src/gpac/src/quickjs/quickjs.c:20648,1
    - Dst: js_async_generator_completed_return
      Src: /src/gpac/src/quickjs/quickjs.c:20651,1
    - Dst: js_async_generator_reject
      Src: /src/gpac/src/quickjs/quickjs.c:20653,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:20658,1
    - Dst: JS_Throw
      Src: /src/gpac/src/quickjs/quickjs.c:20661,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:20668,1
    - Dst: async_func_resume
      Src: /src/gpac/src/quickjs/quickjs.c:20675,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20677,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:20678,1
    - Dst: js_async_generator_complete
      Src: /src/gpac/src/quickjs/quickjs.c:20679,1
    - Dst: js_async_generator_reject
      Src: /src/gpac/src/quickjs/quickjs.c:20680,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20681,1
    - Dst: js_async_generator_complete
      Src: /src/gpac/src/quickjs/quickjs.c:20684,1
    - Dst: js_async_generator_resolve
      Src: /src/gpac/src/quickjs/quickjs.c:20685,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20686,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:20690,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:20690,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20691,1
    - Dst: js_async_generator_resolve
      Src: /src/gpac/src/quickjs/quickjs.c:20701,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20702,1
    - Dst: js_async_generator_await
      Src: /src/gpac/src/quickjs/quickjs.c:20705,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20706,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:20714,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:20719,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 97
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - JSAsyncGeneratorData*
    assertStmts:
    - condition: (JS_VALUE_GET_TAG(func_ret) == JS_TAG_INT)
      pos:
        line_end: 20689
        line_start: 20689
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 20723
      start: 20623
    functionDepth: 25
    functionLinenumber: 20623
    functionLinenumberEnd: 20723
    functionName: js_async_generator_resume_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_empty
    - JS_DupValue
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - js_async_generator_await
    - JS_IsException
    - JS_FreeValue
    - assert
    - js_async_generator_completed_return
    - js_async_generator_resolve
    - JS_NewInt32
    - js_async_generator_complete
    - JS_Throw
    - list_entry
    - abort
    - js_async_generator_reject
    - JS_GetException
    - async_func_resume
    linkageType: ''
    returnType: void
    signature: "void js_async_generator_resume_next(JSContext *ctx,\n                                           JSAsyncGeneratorData
      *s)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:20731,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:20738,1
    - Dst: js_async_generator_reject
      Src: /src/gpac/src/quickjs/quickjs.c:20742,1
    - Dst: js_async_generator_resolve
      Src: /src/gpac/src/quickjs/quickjs.c:20744,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:20748,1
    - Dst: JS_Throw
      Src: /src/gpac/src/quickjs/quickjs.c:20751,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:20751,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:20754,1
    - Dst: js_async_generator_resume_next
      Src: /src/gpac/src/quickjs/quickjs.c:20756,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 6
    argNames:
    - ctx
    - this_obj
    - argc
    - argv
    - magic
    - func_data
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    - JSValue*
    assertStmts:
    - condition: (s->state == JS_ASYNC_GENERATOR_STATE_EXECUTING)
      pos:
        line_end: 20747
        line_start: 20747
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: "(s->state == JS_ASYNC_GENERATOR_STATE_AWAITING_RETURN ||\n               s->state
        == JS_ASYNC_GENERATOR_STATE_COMPLETED)"
      pos:
        line_end: 20738
        line_start: 20737
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 20759
      start: 20725
    functionDepth: 26
    functionLinenumber: 20725
    functionLinenumberEnd: 20759
    functionName: js_async_generator_resolve_function
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_GetOpaque
    - assert
    - js_async_generator_resolve
    - js_async_generator_resume_next
    - JS_Throw
    - js_async_generator_reject
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_async_generator_resolve_function(JSContext *ctx,\n                                                   JSValueConst
      this_obj,\n                                                   int argc, JSValueConst
      *argv,\n                                                   int magic, JSValue
      *func_data)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:20766,1
    - Dst: JS_NewPromiseCapability
      Src: /src/gpac/src/quickjs/quickjs.c:20770,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20771,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:20775,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:20776,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:20777,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20779,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20780,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20781,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20782,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:20785,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:20789,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:20790,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:20793,1
    - Dst: js_async_generator_resume_next
      Src: /src/gpac/src/quickjs/quickjs.c:20795,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20799,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20800,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20801,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20803
      start: 20762
    functionDepth: 26
    functionLinenumber: 20762
    functionLinenumberEnd: 20803
    functionName: js_async_generator_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_ThrowTypeError
    - JS_GetOpaque
    - JS_IsException
    - JS_Call
    - JS_FreeValue
    - JS_NewPromiseCapability
    - list_add_tail
    - js_mallocz
    - js_async_generator_resume_next
    - JS_GetException
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_async_generator_next(JSContext *ctx, JSValueConst this_val,\n
      \                                      int argc, JSValueConst *argv,\n                                       int
      magic)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:20813,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:20817,1
    - Dst: async_func_init
      Src: /src/gpac/src/quickjs/quickjs.c:20818,1
    - Dst: async_func_resume
      Src: /src/gpac/src/quickjs/quickjs.c:20823,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20824,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20826,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:20828,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20829,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:20831,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:20832,1
    - Dst: js_async_generator_free
      Src: /src/gpac/src/quickjs/quickjs.c:20835,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 6
    argNames:
    - ctx
    - func_obj
    - this_obj
    - argc
    - argv
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20837
      start: 20805
    functionDepth: 23
    functionLinenumber: 20805
    functionLinenumberEnd: 20837
    functionName: js_async_generator_function_call
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_FreeValue
    - JS_SetOpaque
    - JS_VALUE_GET_OBJ
    - js_create_from_ctor
    - js_mallocz
    - js_async_generator_free
    - async_func_init
    - init_list_head
    - async_func_resume
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_async_generator_function_call(JSContext *ctx, JSValueConst
      func_obj,\n                                                JSValueConst this_obj,\n
      \                                               int argc, JSValueConst *argv,\n
      \                                               int flags)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - id
    - ','
    - size
    - ','
    - n_pop
    - ','
    - n_push
    - ','
    - f
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21196
      start: 21195
    functionDepth: 0
    functionLinenumber: 21195
    functionLinenumberEnd: 21196
    functionName: DEF
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEF(id, size, n_pop, n_push, f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - op
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21210
      start: 21207
    functionDepth: 0
    functionLinenumber: 21207
    functionLinenumberEnd: 21210
    functionName: short_opcode_info
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: short_opcode_info(op)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - op
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21212
      start: 21211
    functionDepth: 0
    functionLinenumber: 21211
    functionLinenumberEnd: 21212
    functionName: short_opcode_info
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: short_opcode_info(op)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21220,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21224,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21227,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21228,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:21232,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:21237,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 2
    argNames:
    - s
    - token
    argTypes:
    - JSParseState*
    - JSToken*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21241
      start: 21216
    functionDepth: 5
    functionLinenumber: 21216
    functionLinenumberEnd: 21241
    functionName: free_token
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - JS_FreeAtom
    linkageType: ''
    returnType: void
    signature: void free_token(JSParseState *s, JSToken *token)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:21250,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:21251,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:21258,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:21259,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/quickjs/quickjs.c:21266,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:21267,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:21268,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/quickjs/quickjs.c:21274,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:21275,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:21276,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/quickjs/quickjs.c:21282,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/quickjs/quickjs.c:21283,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:21284,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:21285,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:21286,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:21290,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:21296,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:21298,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 48
    argCount: 2
    argNames:
    - s
    - token
    argTypes:
    - JSParseState*
    - JSToken*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21302
      start: 21243
    functionDepth: 22
    functionLinenumber: 21243
    functionLinenumberEnd: 21302
    functionName: __maybe_unused::dump_token
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - printf
    - JS_ToFloat64
    - JS_AtomGetStr
    - JS_FreeCString
    linkageType: ''
    returnType: void
    signature: "void __maybe_unused dump_token(JSParseState *s,\n                                             const
      JSToken *token)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - pcol_num
    - buf
    - len
    argTypes:
    - int*
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21332
      start: 21314
    functionDepth: 0
    functionLinenumber: 21314
    functionLinenumberEnd: 21332
    functionName: get_line_col
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int get_line_col(int *pcol_num, const uint8_t *buf, size_t len)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: get_line_col
      Src: /src/gpac/src/quickjs/quickjs.c:21338,1
    - Dst: get_line_col
      Src: /src/gpac/src/quickjs/quickjs.c:21346,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 3
    argNames:
    - s
    - pcol_num
    - ptr
    argTypes:
    - GetLineColCache*
    - int*
    - uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21367
      start: 21334
    functionDepth: 1
    functionLinenumber: 21334
    functionLinenumberEnd: 21367
    functionName: get_line_col_cached
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_line_col
    linkageType: ''
    returnType: int
    signature: int get_line_col_cached(GetLineColCache *s, int *pcol_num, const uint8_t
      *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_line_col
      Src: /src/gpac/src/quickjs/quickjs.c:21374,1
    - Dst: JS_ThrowError2
      Src: /src/gpac/src/quickjs/quickjs.c:21375,1
    - Dst: build_backtrace
      Src: /src/gpac/src/quickjs/quickjs.c:21376,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - s
    - ptr
    - fmt
    - ap
    argTypes:
    - JSParseState*
    - uint8_t*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21379
      start: 21370
    functionDepth: 10
    functionLinenumber: 21370
    functionLinenumberEnd: 21379
    functionName: js_parse_error_v
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_line_col
    - build_backtrace
    - JS_ThrowError2
    linkageType: ''
    returnType: int
    signature: int js_parse_error_v(JSParseState *s, const uint8_t *ptr, const char
      *fmt, va_list ap)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: format
      Src: /src/gpac/src/quickjs/quickjs.c:21383,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:21390,1
    - Dst: js_parse_error_v
      Src: /src/gpac/src/quickjs/quickjs.c:21391,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:21392,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - s
    - ptr
    - fmt
    argTypes:
    - JSParseState*
    - uint8_t*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21394
      start: 21383
    functionDepth: 11
    functionLinenumber: 21383
    functionLinenumberEnd: 21394
    functionName: js_parse_error_pos
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - format
    - va_start
    - va_end
    - js_parse_error_v
    linkageType: ''
    returnType: int
    signature: int js_parse_error_pos(JSParseState *s, const uint8_t *ptr, const char
      *fmt, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: format
      Src: /src/gpac/src/quickjs/quickjs.c:21398,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:21405,1
    - Dst: js_parse_error_v
      Src: /src/gpac/src/quickjs/quickjs.c:21406,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:21407,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - fmt
    argTypes:
    - JSParseState*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21409
      start: 21398
    functionDepth: 11
    functionLinenumber: 21398
    functionLinenumberEnd: 21409
    functionName: js_parse_error
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - format
    - va_start
    - va_end
    - js_parse_error_v
    linkageType: ''
    returnType: int
    signature: int js_parse_error(JSParseState *s, const char *fmt, ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:21415,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:21417,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - tok
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21418
      start: 21411
    functionDepth: 12
    functionLinenumber: 21411
    functionLinenumberEnd: 21418
    functionName: js_parse_expect
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_error
    - next_token
    linkageType: ''
    returnType: int
    signature: int js_parse_expect(JSParseState *s, int tok)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:21427,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:21429,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21430
      start: 21420
    functionDepth: 12
    functionLinenumber: 21420
    functionLinenumberEnd: 21430
    functionName: js_parse_expect_semi
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_error
    - next_token
    linkageType: ''
    returnType: int
    signature: int js_parse_expect_semi(JSParseState *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:21435,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:21436,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21438
      start: 21432
    functionDepth: 12
    functionLinenumber: 21432
    functionLinenumberEnd: 21438
    functionName: js_parse_error_reserved_identifier
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_error
    - JS_AtomGetStr
    linkageType: ''
    returnType: int
    signature: int js_parse_error_reserved_identifier(JSParseState *s)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:21447,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:21463,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:21477,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:21479,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:21484,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:21487,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:21488,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:21497,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:21499,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 58
    argCount: 2
    argNames:
    - s
    - p
    argTypes:
    - JSParseState*
    - uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21501
      start: 21440
    functionDepth: 12
    functionLinenumber: 21440
    functionLinenumberEnd: 21501
    functionName: js_parse_template_part
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_error_pos
    - string_buffer_end
    - JS_IsException
    - js_parse_error
    - string_buffer_free
    - string_buffer_putc
    - string_buffer_init
    - unicode_from_utf8
    - string_buffer_putc8
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_template_part(JSParseState *s, const uint8_t *p)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:21514,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:21578,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:21584,1
    - Dst: lre_parse_escape
      Src: /src/gpac/src/quickjs/quickjs.c:21594,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:21598,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:21611,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:21616,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:21619,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:21620,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:21630,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:21634,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:21636,1
    CyclomaticComplexity: 59
    EdgeCount: 59
    ICount: 133
    argCount: 6
    argNames:
    - s
    - sep
    - do_throw
    - p
    - token
    - pp
    argTypes:
    - JSParseState*
    - int
    - BOOL
    - uint8_t*
    - JSToken*
    - uint8_t**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21638
      start: 21503
    functionDepth: 12
    functionLinenumber: 21503
    functionLinenumberEnd: 21638
    functionName: js_parse_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_error_pos
    - string_buffer_end
    - JS_IsException
    - lre_parse_escape
    - js_parse_error
    - string_buffer_free
    - string_buffer_putc
    - string_buffer_init
    - unicode_from_utf8
    linkageType: ''
    returnType: __exception
    signature: "__exception js_parse_string(JSParseState *s, int sep,\n                                       BOOL
      do_throw, const uint8_t *p,\n                                       JSToken
      *token, const uint8_t **pp)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - s
    - atom
    argTypes:
    - JSParseState*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21643
      start: 21640
    functionDepth: 0
    functionLinenumber: 21640
    functionLinenumberEnd: 21643
    functionName: token_is_pseudo_keyword
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL token_is_pseudo_keyword(JSParseState *s, JSAtom atom)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:21657,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:21659,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:21664,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:21679,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:21688,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:21698,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:21701,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:21707,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:21712,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:21721,1
    - Dst: lre_js_is_ident_next
      Src: /src/gpac/src/quickjs/quickjs.c:21727,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:21729,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:21734,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:21735,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:21736,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:21737,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21738,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21739,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:21748,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:21749,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 111
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21751
      start: 21645
    functionDepth: 12
    functionLinenumber: 21645
    functionLinenumberEnd: 21751
    functionName: js_parse_regexp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_error_pos
    - string_buffer_end
    - JS_IsException
    - js_parse_error
    - JS_FreeValue
    - string_buffer_free
    - string_buffer_init
    - unicode_from_utf8
    - string_buffer_putc
    - lre_js_is_ident_next
    - string_buffer_putc8
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_regexp(JSParseState *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:21766,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:21769,1
    - Dst: js_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:21771,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 4
    argNames:
    - ctx
    - pbuf
    - psize
    - static_buf
    argTypes:
    - JSContext*
    - char**
    - size_t*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21778
      start: 21753
    functionDepth: 3
    functionLinenumber: 21753
    functionLinenumberEnd: 21778
    functionName: ident_realloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc
    - memcpy
    - js_realloc
    linkageType: ''
    returnType: __exception
    signature: "__exception ident_realloc(JSContext *ctx, char **pbuf, size_t *psize,\n
      \                                    char *static_buf)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 9
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21807
      start: 21781
    functionDepth: 0
    functionLinenumber: 21781
    functionLinenumberEnd: 21807
    functionName: update_token_ident
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void update_token_ident(JSParseState *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: update_token_ident
      Src: /src/gpac/src/quickjs/quickjs.c:21818,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21820
      start: 21811
    functionDepth: 1
    functionLinenumber: 21811
    functionLinenumberEnd: 21820
    functionName: reparse_ident_token
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - update_token_ident
    linkageType: ''
    returnType: void
    signature: void reparse_ident_token(JSParseState *s)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: unicode_to_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:21843,1
    - Dst: lre_parse_escape
      Src: /src/gpac/src/quickjs/quickjs.c:21847,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:21850,1
    - Dst: lre_js_is_ident_next
      Src: /src/gpac/src/quickjs/quickjs.c:21852,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:21855,1
    - Dst: ident_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:21856,1
    - Dst: JS_NewAtomLen
      Src: /src/gpac/src/quickjs/quickjs.c:21862,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:21864,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:21865,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 40
    argCount: 5
    argNames:
    - s
    - pp
    - pident_has_escape
    - c
    - is_private
    argTypes:
    - JSParseState*
    - uint8_t**
    - BOOL*
    - int
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21868
      start: 21823
    functionDepth: 7
    functionLinenumber: 21823
    functionLinenumberEnd: 21868
    functionName: parse_ident
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - lre_parse_escape
    - unlikely
    - unicode_to_utf8
    - ident_realloc
    - unicode_from_utf8
    - lre_js_is_ident_next
    - JS_NewAtomLen
    - js_free
    linkageType: ''
    returnType: JSAtom
    signature: "JSAtom parse_ident(JSParseState *s, const uint8_t **pp,\n                          BOOL
      *pident_has_escape, int c, BOOL is_private)"
  - BBCount: 162
    BranchProfiles: []
    Callsites:
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:21878,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:21879,1
    - Dst: free_token
      Src: /src/gpac/src/quickjs/quickjs.c:21882,1
    - Dst: js_parse_template_part
      Src: /src/gpac/src/quickjs/quickjs.c:21898,1
    - Dst: js_parse_string
      Src: /src/gpac/src/quickjs/quickjs.c:21904,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:21929,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:21940,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:21961,1
    - Dst: lre_parse_escape
      Src: /src/gpac/src/quickjs/quickjs.c:21984,1
    - Dst: lre_js_is_ident_first
      Src: /src/gpac/src/quickjs/quickjs.c:21985,1
    - Dst: parse_ident
      Src: /src/gpac/src/quickjs/quickjs.c:22015,1
    - Dst: update_token_ident
      Src: /src/gpac/src/quickjs/quickjs.c:22022,1
    - Dst: lre_parse_escape
      Src: /src/gpac/src/quickjs/quickjs.c:22032,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:22034,1
    - Dst: lre_js_is_ident_first
      Src: /src/gpac/src/quickjs/quickjs.c:22036,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:22037,1
    - Dst: parse_ident
      Src: /src/gpac/src/quickjs/quickjs.c:22042,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:22063,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:22064,1
    - Dst: js_atof
      Src: /src/gpac/src/quickjs/quickjs.c:22079,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:22081,1
    - Dst: JS_VALUE_IS_NAN
      Src: /src/gpac/src/quickjs/quickjs.c:22084,1
    - Dst: lre_js_is_ident_next
      Src: /src/gpac/src/quickjs/quickjs.c:22085,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:22085,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:22086,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:22087,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:22279,1
    - Dst: lre_is_space
      Src: /src/gpac/src/quickjs/quickjs.c:22287,1
    - Dst: lre_js_is_ident_first
      Src: /src/gpac/src/quickjs/quickjs.c:22289,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:22293,1
    CyclomaticComplexity: 155
    EdgeCount: 155
    ICount: 505
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22311
      start: 21871
    functionDepth: 17
    functionLinenumber: 21871
    functionLinenumberEnd: 22311
    functionName: next_token
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - free_token
    - js_check_stack_overflow
    - lre_is_space
    - JS_IsException
    - js_parse_error
    - lre_parse_escape
    - update_token_ident
    - js_atof
    - JS_VALUE_IS_NAN
    - js_parse_string
    - JS_FreeValue
    - unicode_from_utf8
    - parse_ident
    - lre_js_is_ident_next
    - lre_js_is_ident_first
    - js_parse_template_part
    - is_digit
    linkageType: ''
    returnType: __exception
    signature: __exception next_token(JSParseState *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: lre_is_id_continue_byte
      Src: /src/gpac/src/quickjs/quickjs.c:22329,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:22332,1
    - Dst: ident_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:22333,1
    - Dst: JS_NewAtomLen
      Src: /src/gpac/src/quickjs/quickjs.c:22339,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:22341,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:22342,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 3
    argNames:
    - s
    - pp
    - c
    argTypes:
    - JSParseState*
    - uint8_t**
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22345
      start: 22315
    functionDepth: 7
    functionLinenumber: 22315
    functionLinenumberEnd: 22345
    functionName: json_parse_ident
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - unlikely
    - ident_realloc
    - lre_is_id_continue_byte
    - JS_NewAtomLen
    - js_free
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom json_parse_ident(JSParseState *s, const uint8_t **pp, int c)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:22354,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:22366,1
    - Dst: from_hex
      Src: /src/gpac/src/quickjs/quickjs.c:22382,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:22384,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:22406,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:22411,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:22413,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:22418,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:22423,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:22428,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:22430,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 101
    argCount: 3
    argNames:
    - s
    - pp
    - sep
    argTypes:
    - JSParseState*
    - uint8_t**
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22432
      start: 22347
    functionDepth: 12
    functionLinenumber: 22347
    functionLinenumberEnd: 22432
    functionName: json_parse_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_error_pos
    - string_buffer_end
    - js_parse_error
    - from_hex
    - string_buffer_free
    - string_buffer_init
    - string_buffer_putc
    - unicode_from_utf8
    linkageType: ''
    returnType: int
    signature: int json_parse_string(JSParseState *s, const uint8_t **pp, int sep)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:22445,1
    - Dst: strstart
      Src: /src/gpac/src/quickjs/quickjs.c:22447,1
    - Dst: strstart
      Src: /src/gpac/src/quickjs/quickjs.c:22456,1
    - Dst: to_digit
      Src: /src/gpac/src/quickjs/quickjs.c:22483,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:22485,1
    - Dst: js_atod
      Src: /src/gpac/src/quickjs/quickjs.c:22487,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:22492,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:22493,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:22496,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:22501,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:22502,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:22503,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:22510,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:22511,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:22512,1
    - Dst: js_atod
      Src: /src/gpac/src/quickjs/quickjs.c:22515,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:22518,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 81
    argCount: 2
    argNames:
    - s
    - pp
    argTypes:
    - JSParseState*
    - uint8_t**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22521
      start: 22434
    functionDepth: 12
    functionLinenumber: 22434
    functionLinenumberEnd: 22521
    functionName: json_parse_number
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_error_pos
    - JS_NewFloat64
    - to_digit
    - js_atod
    - strstart
    - is_digit
    linkageType: ''
    returnType: int
    signature: int json_parse_number(JSParseState *s, const uint8_t **pp)
  - BBCount: 102
    BranchProfiles: []
    Callsites:
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:22529,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:22530,1
    - Dst: free_token
      Src: /src/gpac/src/quickjs/quickjs.c:22533,1
    - Dst: json_parse_string
      Src: /src/gpac/src/quickjs/quickjs.c:22555,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:22587,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:22595,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:22613,1
    - Dst: json_parse_ident
      Src: /src/gpac/src/quickjs/quickjs.c:22646,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:22659,1
    - Dst: json_parse_number
      Src: /src/gpac/src/quickjs/quickjs.c:22670,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:22675,1
    CyclomaticComplexity: 60
    EdgeCount: 60
    ICount: 215
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22691
      start: 22523
    functionDepth: 13
    functionLinenumber: 22523
    functionLinenumberEnd: 22691
    functionName: json_next_token
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - free_token
    - js_check_stack_overflow
    - json_parse_ident
    - js_parse_error
    - json_parse_number
    - json_parse_string
    - unicode_from_utf8
    - is_digit
    linkageType: ''
    returnType: __exception
    signature: __exception json_next_token(JSParseState *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:22701,1
    - Dst: lre_js_is_ident_next
      Src: /src/gpac/src/quickjs/quickjs.c:22702,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - p
    - s
    argTypes:
    - uint8_t*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22703
      start: 22693
    functionDepth: 1
    functionLinenumber: 22693
    functionLinenumberEnd: 22703
    functionName: match_identifier
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - unicode_from_utf8
    - lre_js_is_ident_next
    linkageType: ''
    returnType: int
    signature: int match_identifier(const uint8_t *p, const char *s)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: match_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:22760,1
    - Dst: match_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:22762,1
    - Dst: match_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:22768,1
    - Dst: match_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:22772,1
    - Dst: match_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:22776,1
    - Dst: lre_js_is_ident_first
      Src: /src/gpac/src/quickjs/quickjs.c:22781,1
    - Dst: lre_parse_escape
      Src: /src/gpac/src/quickjs/quickjs.c:22781,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:22787,1
    - Dst: lre_is_space
      Src: /src/gpac/src/quickjs/quickjs.c:22791,1
    - Dst: lre_js_is_ident_first
      Src: /src/gpac/src/quickjs/quickjs.c:22793,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 78
    argCount: 2
    argNames:
    - pp
    - no_line_terminator
    argTypes:
    - uint8_t**
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22799
      start: 22716
    functionDepth: 2
    functionLinenumber: 22716
    functionLinenumberEnd: 22799
    functionName: simple_next_token
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - lre_is_space
    - lre_parse_escape
    - match_identifier
    - unicode_from_utf8
    - lre_js_is_ident_first
    linkageType: ''
    returnType: int
    signature: int simple_next_token(const uint8_t **pp, BOOL no_line_terminator)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: simple_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:22804,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - no_line_terminator
    argTypes:
    - JSParseState*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22805
      start: 22801
    functionDepth: 3
    functionLinenumber: 22801
    functionLinenumberEnd: 22805
    functionName: peek_token
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - simple_next_token
    linkageType: ''
    returnType: int
    signature: int peek_token(JSParseState *s, BOOL no_line_terminator)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:22818,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 21
    argCount: 2
    argNames:
    - pp
    - buf_end
    argTypes:
    - uint8_t**
    - uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22830
      start: 22807
    functionDepth: 1
    functionLinenumber: 22807
    functionLinenumberEnd: 22830
    functionName: skip_shebang
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - unicode_from_utf8
    linkageType: ''
    returnType: void
    signature: void skip_shebang(const uint8_t **pp, const uint8_t *buf_end)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: skip_shebang
      Src: /src/gpac/src/quickjs/quickjs.c:22843,1
    - Dst: simple_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:22844,1
    - Dst: simple_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:22846,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - input
    - input_len
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22853
      start: 22838
    functionDepth: 3
    functionLinenumber: 22838
    functionLinenumberEnd: 22853
    functionName: JS_DetectModule
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 8
    functionsReached:
    - simple_next_token
    - skip_shebang
    linkageType: ''
    returnType: BOOL
    signature: BOOL JS_DetectModule(const char *input, size_t input_len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_error
      Src: /src/gpac/src/quickjs/quickjs.c:22856,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - fd
    argTypes:
    - JSFunctionDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22860
      start: 22855
    functionDepth: 1
    functionLinenumber: 22855
    functionLinenumberEnd: 22860
    functionName: get_prev_opcode
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_error
    linkageType: ''
    returnType: int
    signature: int get_prev_opcode(JSFunctionDef *fd)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: get_prev_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:22863,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22881
      start: 22862
    functionDepth: 2
    functionLinenumber: 22862
    functionLinenumberEnd: 22881
    functionName: js_is_live_code
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_prev_opcode
    linkageType: ''
    returnType: BOOL
    signature: BOOL js_is_live_code(JSParseState *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:22885,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - val
    argTypes:
    - JSParseState*
    - uint8_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22886
      start: 22883
    functionDepth: 1
    functionLinenumber: 22883
    functionLinenumberEnd: 22886
    functionName: emit_u8
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_putc
    linkageType: ''
    returnType: void
    signature: void emit_u8(JSParseState *s, uint8_t val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:22890,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - val
    argTypes:
    - JSParseState*
    - uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22891
      start: 22888
    functionDepth: 1
    functionLinenumber: 22888
    functionLinenumberEnd: 22891
    functionName: emit_u16
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_put_u16
    linkageType: ''
    returnType: void
    signature: void emit_u16(JSParseState *s, uint16_t val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:22895,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - val
    argTypes:
    - JSParseState*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22896
      start: 22893
    functionDepth: 1
    functionLinenumber: 22893
    functionLinenumberEnd: 22896
    functionName: emit_u32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_put_u32
    linkageType: ''
    returnType: void
    signature: void emit_u32(JSParseState *s, uint32_t val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:22903,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:22904,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:22905,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - source_ptr
    argTypes:
    - JSParseState*
    - uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22908
      start: 22898
    functionDepth: 1
    functionLinenumber: 22898
    functionLinenumberEnd: 22908
    functionName: emit_source_pos
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_putc
    - unlikely
    - dbuf_put_u32
    linkageType: ''
    returnType: void
    signature: void emit_source_pos(JSParseState *s, const uint8_t *source_ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:22916,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - val
    argTypes:
    - JSParseState*
    - uint8_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22917
      start: 22910
    functionDepth: 1
    functionLinenumber: 22910
    functionLinenumberEnd: 22917
    functionName: emit_op
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_putc
    linkageType: ''
    returnType: void
    signature: void emit_op(JSParseState *s, uint8_t val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_claim
      Src: /src/gpac/src/quickjs/quickjs.c:22922,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:22924,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:22924,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - name
    argTypes:
    - JSParseState*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22926
      start: 22919
    functionDepth: 2
    functionLinenumber: 22919
    functionLinenumberEnd: 22926
    functionName: emit_atom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupAtom
    - put_u32
    - dbuf_claim
    linkageType: ''
    returnType: void
    signature: void emit_atom(JSParseState *s, JSAtom name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:22932,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:22935,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - s
    - label
    - delta
    argTypes:
    - JSFunctionDef*
    - int
    - int
    assertStmts:
    - condition: (label >= 0 && label < s->label_count)
      pos:
        line_end: 22931
        line_start: 22931
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (ls->ref_count >= 0)
      pos:
        line_end: 22934
        line_start: 22934
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 22937
      start: 22928
    functionDepth: 0
    functionLinenumber: 22928
    functionLinenumberEnd: 22937
    functionName: update_label
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - assert
    linkageType: ''
    returnType: int
    signature: int update_label(JSFunctionDef *s, int label, int delta)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:22944,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - fd
    argTypes:
    - JSFunctionDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22956
      start: 22939
    functionDepth: 5
    functionLinenumber: 22939
    functionLinenumberEnd: 22956
    functionName: new_label_fd
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_resize_array
    linkageType: ''
    returnType: int
    signature: int new_label_fd(JSFunctionDef *fd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: new_label_fd
      Src: /src/gpac/src/quickjs/quickjs.c:22961,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:22962,1
    - Dst: dbuf_set_error
      Src: /src/gpac/src/quickjs/quickjs.c:22963,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22966
      start: 22958
    functionDepth: 6
    functionLinenumber: 22958
    functionLinenumberEnd: 22966
    functionName: new_label
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - new_label_fd
    - dbuf_set_error
    - unlikely
    linkageType: ''
    returnType: int
    signature: int new_label(JSParseState *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:22971,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:22972,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - label
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22974
      start: 22969
    functionDepth: 2
    functionLinenumber: 22969
    functionLinenumberEnd: 22974
    functionName: emit_label_raw
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_u32
    - emit_u8
    linkageType: ''
    returnType: void
    signature: void emit_label_raw(JSParseState *s, int label)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:22980,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:22981,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - s
    - label
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22987
      start: 22977
    functionDepth: 2
    functionLinenumber: 22977
    functionLinenumberEnd: 22987
    functionName: emit_label
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - emit_u32
    linkageType: ''
    returnType: int
    signature: int emit_label(JSParseState *s, int label)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_is_live_code
      Src: /src/gpac/src/quickjs/quickjs.c:22992,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:22994,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:22998,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:22999,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - s
    - opcode
    - label
    argTypes:
    - JSParseState*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23004
      start: 22990
    functionDepth: 7
    functionLinenumber: 22990
    functionLinenumberEnd: 23004
    functionName: emit_goto
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - js_is_live_code
    - emit_u32
    - new_label
    linkageType: ''
    returnType: int
    signature: int emit_goto(JSParseState *s, int opcode, int label)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:23011,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - val
    argTypes:
    - JSParseState*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23016
      start: 23007
    functionDepth: 5
    functionLinenumber: 23007
    functionLinenumberEnd: 23016
    functionName: cpool_add
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_resize_array
    linkageType: ''
    returnType: int
    signature: int cpool_add(JSParseState *s, JSValue val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:23023,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:23026,1
    - Dst: JS_NewAtomStr
      Src: /src/gpac/src/quickjs/quickjs.c:23027,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:23027,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:23028,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:23029,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:23030,1
    - Dst: cpool_add
      Src: /src/gpac/src/quickjs/quickjs.c:23035,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:23035,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:23038,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:23039,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - s
    - val
    - as_atom
    argTypes:
    - JSParseState*
    - JSValueConst
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23041
      start: 23018
    functionDepth: 6
    functionLinenumber: 23018
    functionLinenumberEnd: 23041
    functionName: emit_push_const
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - JS_DupValue
    - emit_u32
    - JS_VALUE_GET_TAG
    - __JS_AtomIsTaggedInt
    - JS_VALUE_GET_STRING
    - cpool_add
    - JS_NewAtomStr
    linkageType: ''
    returnType: __exception
    signature: "__exception emit_push_const(JSParseState *s, JSValueConst val,\n                                       BOOL
      as_atom)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - fd
    - name
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23053
      start: 23045
    functionDepth: 0
    functionLinenumber: 23045
    functionLinenumberEnd: 23053
    functionName: find_arg
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int find_arg(JSContext *ctx, JSFunctionDef *fd, JSAtom name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find_arg
      Src: /src/gpac/src/quickjs/quickjs.c:23062,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - fd
    - name
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23063
      start: 23055
    functionDepth: 1
    functionLinenumber: 23055
    functionLinenumberEnd: 23063
    functionName: find_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - find_arg
    linkageType: ''
    returnType: int
    signature: int find_var(JSContext *ctx, JSFunctionDef *fd, JSAtom name)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - fd
    - name
    - scope_level
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23078
      start: 23066
    functionDepth: 0
    functionLinenumber: 23066
    functionLinenumberEnd: 23078
    functionName: find_var_in_scope
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int find_var_in_scope(JSContext *ctx, JSFunctionDef *fd,\n                             JSAtom
      name, int scope_level)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - fd
    - scope
    - parent_scope
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23091
      start: 23082
    functionDepth: 0
    functionLinenumber: 23082
    functionLinenumberEnd: 23091
    functionName: is_child_scope
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: "BOOL is_child_scope(JSContext *ctx, JSFunctionDef *fd,\n                           int
      scope, int parent_scope)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: is_child_scope
      Src: /src/gpac/src/quickjs/quickjs.c:23101,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - fd
    - name
    - scope_level
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23107
      start: 23094
    functionDepth: 1
    functionLinenumber: 23094
    functionLinenumberEnd: 23107
    functionName: find_var_in_child_scope
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - is_child_scope
    linkageType: ''
    returnType: int
    signature: "int find_var_in_child_scope(JSContext *ctx, JSFunctionDef *fd,\n                                   JSAtom
      name, int scope_level)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - fd
    - name
    argTypes:
    - JSFunctionDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23120
      start: 23110
    functionDepth: 0
    functionLinenumber: 23110
    functionLinenumberEnd: 23120
    functionName: find_global_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSGlobalVar
    signature: JSGlobalVar *find_global_var(JSFunctionDef *fd, JSAtom name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find_global_var
      Src: /src/gpac/src/quickjs/quickjs.c:23124,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - fd
    - name
    argTypes:
    - JSFunctionDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23129
      start: 23122
    functionDepth: 1
    functionLinenumber: 23122
    functionLinenumberEnd: 23129
    functionName: find_lexical_global_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - find_global_var
    linkageType: ''
    returnType: JSGlobalVar
    signature: JSGlobalVar *find_lexical_global_var(JSFunctionDef *fd, JSAtom name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: find_lexical_global_var
      Src: /src/gpac/src/quickjs/quickjs.c:23144,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 11
    argCount: 5
    argNames:
    - ctx
    - fd
    - name
    - scope_idx
    - check_catch_var
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    - int
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23148
      start: 23131
    functionDepth: 2
    functionLinenumber: 23131
    functionLinenumberEnd: 23148
    functionName: find_lexical_decl
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - find_lexical_global_var
    linkageType: ''
    returnType: int
    signature: "int find_lexical_decl(JSContext *ctx, JSFunctionDef *fd, JSAtom name,\n
      \                            int scope_idx, BOOL check_catch_var)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:23160,1
    - Dst: js_realloc2
      Src: /src/gpac/src/quickjs/quickjs.c:23162,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:23165,1
    - Dst: js_realloc2
      Src: /src/gpac/src/quickjs/quickjs.c:23167,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:23178,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:23179,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23183
      start: 23150
    functionDepth: 3
    functionLinenumber: 23150
    functionLinenumberEnd: 23183
    functionName: push_scope
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - memcpy
    - js_realloc2
    - max_int
    - emit_u16
    linkageType: ''
    returnType: int
    signature: int push_scope(JSParseState *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - fd
    - scope
    argTypes:
    - JSFunctionDef*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23194
      start: 23185
    functionDepth: 0
    functionLinenumber: 23185
    functionLinenumberEnd: 23194
    functionName: get_first_lexical_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int get_first_lexical_var(JSFunctionDef *fd, int scope)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:23201,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:23202,1
    - Dst: get_first_lexical_var
      Src: /src/gpac/src/quickjs/quickjs.c:23204,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23206
      start: 23196
    functionDepth: 2
    functionLinenumber: 23196
    functionLinenumberEnd: 23206
    functionName: pop_scope
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - get_first_lexical_var
    - emit_u16
    linkageType: ''
    returnType: void
    signature: void pop_scope(JSParseState *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:23211,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:23212,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - s
    - scope
    - scope_stop
    argTypes:
    - JSParseState*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23215
      start: 23208
    functionDepth: 2
    functionLinenumber: 23208
    functionLinenumberEnd: 23215
    functionName: close_scopes
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - emit_u16
    linkageType: ''
    returnType: void
    signature: void close_scopes(JSParseState *s, int scope, int scope_stop)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:23224,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:23227,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:23231,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:23232,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - fd
    - name
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23235
      start: 23218
    functionDepth: 12
    functionLinenumber: 23218
    functionLinenumberEnd: 23235
    functionName: add_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memset
    - JS_DupAtom
    - JS_ThrowInternalError
    - js_resize_array
    linkageType: ''
    returnType: int
    signature: int add_var(JSContext *ctx, JSFunctionDef *fd, JSAtom name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:23240,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - fd
    - name
    - var_kind
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    - JSVarKindEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23250
      start: 23237
    functionDepth: 13
    functionLinenumber: 23237
    functionLinenumberEnd: 23250
    functionName: add_scope_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - add_var
    linkageType: ''
    returnType: int
    signature: "int add_scope_var(JSContext *ctx, JSFunctionDef *fd, JSAtom name,\n
      \                        JSVarKindEnum var_kind)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:23255,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - fd
    - name
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23262
      start: 23252
    functionDepth: 13
    functionLinenumber: 23252
    functionLinenumberEnd: 23262
    functionName: add_func_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - add_var
    linkageType: ''
    returnType: int
    signature: int add_func_var(JSContext *ctx, JSFunctionDef *fd, JSAtom name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:23267,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - fd
    argTypes:
    - JSContext*
    - JSFunctionDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23271
      start: 23264
    functionDepth: 13
    functionLinenumber: 23264
    functionLinenumberEnd: 23271
    functionName: add_arguments_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - add_var
    linkageType: ''
    returnType: int
    signature: int add_arguments_var(JSContext *ctx, JSFunctionDef *fd)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: find_var_in_scope
      Src: /src/gpac/src/quickjs/quickjs.c:23279,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:23284,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - ctx
    - fd
    argTypes:
    - JSContext*
    - JSFunctionDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23296
      start: 23275
    functionDepth: 13
    functionLinenumber: 23275
    functionLinenumberEnd: 23296
    functionName: add_arguments_arg
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - find_var_in_scope
    - add_var
    linkageType: ''
    returnType: int
    signature: int add_arguments_arg(JSContext *ctx, JSFunctionDef *fd)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:23304,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:23307,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:23311,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:23312,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - fd
    - name
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23315
      start: 23298
    functionDepth: 12
    functionLinenumber: 23298
    functionLinenumberEnd: 23315
    functionName: add_arg
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memset
    - JS_DupAtom
    - JS_ThrowInternalError
    - js_resize_array
    linkageType: ''
    returnType: int
    signature: int add_arg(JSContext *ctx, JSFunctionDef *fd, JSAtom name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:23323,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:23333,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - ctx
    - s
    - name
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23335
      start: 23318
    functionDepth: 5
    functionLinenumber: 23318
    functionLinenumberEnd: 23335
    functionName: add_global_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupAtom
    - js_resize_array
    linkageType: ''
    returnType: JSGlobalVar
    signature: "JSGlobalVar *add_global_var(JSContext *ctx, JSFunctionDef *s,\n                                     JSAtom
      name)"
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: add_scope_var
      Src: /src/gpac/src/quickjs/quickjs.c:23356,1
    - Dst: find_lexical_decl
      Src: /src/gpac/src/quickjs/quickjs.c:23363,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:23381,1
    - Dst: find_arg
      Src: /src/gpac/src/quickjs/quickjs.c:23388,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:23390,1
    - Dst: find_var_in_child_scope
      Src: /src/gpac/src/quickjs/quickjs.c:23393,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:23394,1
    - Dst: find_global_var
      Src: /src/gpac/src/quickjs/quickjs.c:23399,1
    - Dst: is_child_scope
      Src: /src/gpac/src/quickjs/quickjs.c:23400,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:23402,1
    - Dst: add_global_var
      Src: /src/gpac/src/quickjs/quickjs.c:23411,1
    - Dst: add_scope_var
      Src: /src/gpac/src/quickjs/quickjs.c:23425,1
    - Dst: add_scope_var
      Src: /src/gpac/src/quickjs/quickjs.c:23435,1
    - Dst: find_lexical_decl
      Src: /src/gpac/src/quickjs/quickjs.c:23439,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:23443,1
    - Dst: find_global_var
      Src: /src/gpac/src/quickjs/quickjs.c:23447,1
    - Dst: add_global_var
      Src: /src/gpac/src/quickjs/quickjs.c:23452,1
    - Dst: find_var
      Src: /src/gpac/src/quickjs/quickjs.c:23458,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:23461,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:23470,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 98
    argCount: 4
    argNames:
    - s
    - fd
    - name
    - var_def_type
    argTypes:
    - JSParseState*
    - JSFunctionDef*
    - JSAtom
    - JSVarDefEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23473
      start: 23347
    functionDepth: 14
    functionLinenumber: 23347
    functionLinenumberEnd: 23473
    functionName: define_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - find_lexical_decl
    - find_global_var
    - add_global_var
    - js_parse_error
    - is_child_scope
    - find_arg
    - find_var
    - find_var_in_child_scope
    - add_scope_var
    - add_var
    - abort
    linkageType: ''
    returnType: int
    signature: "int define_var(JSParseState *s, JSFunctionDef *fd, JSAtom name,\n
      \                     JSVarDefEnum var_def_type)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: add_scope_var
      Src: /src/gpac/src/quickjs/quickjs.c:23483,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - s
    - fd
    - name
    - var_kind
    - is_static
    argTypes:
    - JSParseState*
    - JSFunctionDef*
    - JSAtom
    - JSVarKindEnum
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23491
      start: 23476
    functionDepth: 14
    functionLinenumber: 23476
    functionLinenumberEnd: 23491
    functionName: add_private_class_field
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - add_scope_var
    linkageType: ''
    returnType: int
    signature: "int add_private_class_field(JSParseState *s, JSFunctionDef *fd,\n
      \                                  JSAtom name, JSVarKindEnum var_kind, BOOL
      is_static)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:23524,1
    - Dst: find_own_property1
      Src: /src/gpac/src/quickjs/quickjs.c:23525,1
    - Dst: js_update_property_flags
      Src: /src/gpac/src/quickjs/quickjs.c:23527,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23533
      start: 23519
    functionDepth: 9
    functionLinenumber: 23519
    functionLinenumberEnd: 23533
    functionName: seal_template_obj
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_update_property_flags
    - JS_VALUE_GET_OBJ
    - find_own_property1
    linkageType: ''
    returnType: int
    signature: int seal_template_obj(JSContext *ctx, JSValueConst obj)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:23547,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:23548,1
    - Dst: emit_push_const
      Src: /src/gpac/src/quickjs/quickjs.c:23551,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:23552,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:23555,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:23556,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:23558,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:23569,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:23570,1
    - Dst: js_parse_string
      Src: /src/gpac/src/quickjs/quickjs.c:23577,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:23580,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:23590,1
    - Dst: js_parse_string
      Src: /src/gpac/src/quickjs/quickjs.c:23592,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:23594,1
    - Dst: emit_push_const
      Src: /src/gpac/src/quickjs/quickjs.c:23596,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:23597,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:23603,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:23604,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:23608,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:23613,1
    - Dst: js_parse_expr
      Src: /src/gpac/src/quickjs/quickjs.c:23615,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:23619,1
    - Dst: free_token
      Src: /src/gpac/src/quickjs/quickjs.c:23622,1
    - Dst: js_parse_template_part
      Src: /src/gpac/src/quickjs/quickjs.c:23626,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:23629,1
    - Dst: seal_template_obj
      Src: /src/gpac/src/quickjs/quickjs.c:23634,1
    - Dst: seal_template_obj
      Src: /src/gpac/src/quickjs/quickjs.c:23635,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:23638,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:23639,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:23642,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 84
    argCount: 3
    argNames:
    - s
    - call
    - argc
    argTypes:
    - JSParseState*
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23643
      start: 23535
    functionDepth: 20
    functionLinenumber: 23535
    functionLinenumberEnd: 23643
    functionName: js_parse_template
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_error
    - js_parse_string
    - js_parse_expect
    - next_token
    - JS_NewArray
    - js_parse_expr
    - JS_DupValue
    - js_parse_template_part
    - emit_u16
    - emit_op
    - JS_DefinePropertyValue
    - JS_VALUE_GET_STRING
    - emit_atom
    - seal_template_obj
    - free_token
    - JS_IsException
    - JS_FreeValue
    - JS_DefinePropertyValueUint32
    - emit_push_const
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_template(JSParseState *s, int call, int *argc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - tok
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23662
      start: 23656
    functionDepth: 0
    functionLinenumber: 23656
    functionLinenumberEnd: 23662
    functionName: token_is_ident
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL token_is_ident(int tok)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:23680,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:23681,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:23682,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:23684,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:23685,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:23695,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:23697,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:23700,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:23701,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:23702,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:23703,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:23711,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:23713,1
    - Dst: token_is_ident
      Src: /src/gpac/src/quickjs/quickjs.c:23722,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:23727,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:23728,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:23739,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:23742,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:23747,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:23750,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:23753,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:23755,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:23757,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:23761,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:23762,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:23770,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:23772,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:23778,1
    CyclomaticComplexity: 67
    EdgeCount: 67
    ICount: 115
    argCount: 5
    argNames:
    - s
    - pname
    - allow_method
    - allow_var
    - allow_private
    argTypes:
    - JSParseState*
    - JSAtom*
    - BOOL
    - BOOL
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23782
      start: 23665
    functionDepth: 18
    functionLinenumber: 23665
    functionLinenumberEnd: 23782
    functionName: __exception::js_parse_property_name
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - token_is_ident
    - js_parse_error
    - token_is_pseudo_keyword
    - JS_DupAtom
    - JS_ValueToAtom
    - js_parse_expect
    - peek_token
    - js_parse_assign_expr
    - next_token
    linkageType: ''
    returnType: int
    signature: "int __exception js_parse_property_name(JSParseState *s,\n                                              JSAtom
      *pname,\n                                              BOOL allow_method, BOOL
      allow_var,\n                                              BOOL allow_private)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - sp
    argTypes:
    - JSParseState*
    - JSParsePos*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23794
      start: 23789
    functionDepth: 0
    functionLinenumber: 23789
    functionLinenumberEnd: 23794
    functionName: js_parse_get_pos
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int js_parse_get_pos(JSParseState *s, JSParsePos *sp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:23800,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - sp
    argTypes:
    - JSParseState*
    - JSParsePos*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23801
      start: 23796
    functionDepth: 18
    functionLinenumber: 23796
    functionLinenumberEnd: 23801
    functionName: js_parse_seek_token
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - next_token
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_seek_token(JSParseState *s, const JSParsePos *sp)
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 1
    argNames:
    - tok
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23824
      start: 23804
    functionDepth: 0
    functionLinenumber: 23804
    functionLinenumberEnd: 23824
    functionName: is_regexp_allowed
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL is_regexp_allowed(int tok)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memchr
      Src: /src/gpac/src/quickjs/quickjs.c:23838,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - p1
    - p2
    argTypes:
    - uint8_t*
    - uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23839
      start: 23830
    functionDepth: 0
    functionLinenumber: 23830
    functionLinenumberEnd: 23839
    functionName: has_lf_in_range
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memchr
    linkageType: ''
    returnType: BOOL
    signature: BOOL has_lf_in_range(const uint8_t *p1, const uint8_t *p2)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_get_pos
      Src: /src/gpac/src/quickjs/quickjs.c:23856,1
    - Dst: free_token
      Src: /src/gpac/src/quickjs/quickjs.c:23879,1
    - Dst: js_parse_template_part
      Src: /src/gpac/src/quickjs/quickjs.c:23883,1
    - Dst: is_regexp_allowed
      Src: /src/gpac/src/quickjs/quickjs.c:23922,1
    - Dst: js_parse_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:23924,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:23933,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:23934,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:23940,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:23946,1
    - Dst: has_lf_in_range
      Src: /src/gpac/src/quickjs/quickjs.c:23948,1
    - Dst: js_parse_seek_token
      Src: /src/gpac/src/quickjs/quickjs.c:23957,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 109
    argCount: 3
    argNames:
    - s
    - pbits
    - no_line_terminator
    argTypes:
    - JSParseState*
    - int*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23960
      start: 23844
    functionDepth: 19
    functionLinenumber: 23844
    functionLinenumberEnd: 23960
    functionName: js_parse_skip_parens_token
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - free_token
    - has_lf_in_range
    - next_token
    - js_parse_seek_token
    - token_is_pseudo_keyword
    - js_parse_regexp
    - js_parse_get_pos
    - is_regexp_allowed
    - js_parse_template_part
    linkageType: ''
    returnType: int
    signature: int js_parse_skip_parens_token(JSParseState *s, int *pbits, BOOL no_line_terminator)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: get_prev_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:23967,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:23972,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:23973,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:23978,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:23979,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:23982,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:23983,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:23984,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:23985,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - s
    - name
    argTypes:
    - JSParseState*
    - JSAtom
    assertStmts:
    - condition: (fd->byte_code.buf[define_class_pos] == OP_define_class)
      pos:
        line_end: 23978
        line_start: 23978
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 23988
      start: 23962
    functionDepth: 5
    functionLinenumber: 23962
    functionLinenumberEnd: 23988
    functionName: set_object_name
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - JS_FreeAtom
    - get_u32
    - assert
    - put_u32
    - JS_DupAtom
    - emit_atom
    - get_prev_opcode
    linkageType: ''
    returnType: void
    signature: void set_object_name(JSParseState *s, JSAtom name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: get_prev_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:23995,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24000,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:24004,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:24005,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts:
    - condition: (fd->byte_code.buf[define_class_pos] == OP_define_class)
      pos:
        line_end: 24004
        line_start: 24004
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 24009
      start: 23990
    functionDepth: 2
    functionLinenumber: 23990
    functionLinenumberEnd: 24009
    functionName: set_object_name_computed
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - assert
    - get_u32
    - get_prev_opcode
    linkageType: ''
    returnType: void
    signature: void set_object_name_computed(JSParseState *s)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24018,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24021,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24028,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:24030,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24032,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24033,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:24034,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24035,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24036,1
    - Dst: js_parse_property_name
      Src: /src/gpac/src/quickjs/quickjs.c:24040,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24046,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24047,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24048,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24049,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24050,1
    - Dst: js_parse_function_decl
      Src: /src/gpac/src/quickjs/quickjs.c:24070,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24074,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24076,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24077,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:24085,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24089,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:24091,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:24093,1
    - Dst: set_object_name_computed
      Src: /src/gpac/src/quickjs/quickjs.c:24096,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24097,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24098,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:24101,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24104,1
    - Dst: set_object_name
      Src: /src/gpac/src/quickjs/quickjs.c:24107,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24108,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24109,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24112,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24117,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:24120,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24124,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 107
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24126
      start: 24011
    functionDepth: 18
    functionLinenumber: 24011
    functionLinenumberEnd: 24126
    functionName: js_parse_object_literal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - JS_FreeAtom
    - set_object_name_computed
    - set_object_name
    - js_parse_error
    - emit_u8
    - js_parse_property_name
    - js_parse_function_decl
    - js_parse_expect
    - js_parse_assign_expr
    - emit_atom
    - next_token
    - emit_u16
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_object_literal(JSParseState *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_postfix_expr
      Src: /src/gpac/src/quickjs/quickjs.c:24150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24151
      start: 24148
    functionDepth: 1
    functionLinenumber: 24148
    functionLinenumberEnd: 24151
    functionName: js_parse_left_hand_side_expr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_postfix_expr
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_left_hand_side_expr(JSParseState *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_new_function_def
      Src: /src/gpac/src/quickjs/quickjs.c:24161,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:24173,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24181,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24183,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24184,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24185,1
    - Dst: emit_class_field_init
      Src: /src/gpac/src/quickjs/quickjs.c:24186,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24190,1
    - Dst: emit_class_field_init
      Src: /src/gpac/src/quickjs/quickjs.c:24191,1
    - Dst: emit_return
      Src: /src/gpac/src/quickjs/quickjs.c:24196,1
    - Dst: cpool_add
      Src: /src/gpac/src/quickjs/quickjs.c:24203,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 37
    argCount: 3
    argNames:
    - s
    - has_super
    - pfd
    argTypes:
    - JSParseState*
    - BOOL
    - JSFunctionDef**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24207
      start: 24153
    functionDepth: 6
    functionLinenumber: 24153
    functionLinenumberEnd: 24207
    functionName: js_parse_class_default_ctor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - js_new_function_def
    - push_scope
    - emit_atom
    - emit_return
    - cpool_add
    - emit_class_field_init
    - emit_u16
    linkageType: ''
    returnType: __exception
    signature: "__exception js_parse_class_default_ctor(JSParseState *s,\n                                                   BOOL
      has_super,\n                                                   JSFunctionDef
      **pfd)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - fd
    - name
    - scope_level
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24223
      start: 24210
    functionDepth: 0
    functionLinenumber: 24210
    functionLinenumberEnd: 24223
    functionName: find_private_class_field
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int find_private_class_field(JSContext *ctx, JSFunctionDef *fd,\n
      \                                   JSAtom name, int scope_level)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24232,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24233,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24234,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24237,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:24238,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24240,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24241,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24242,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24244,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24246,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24247,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:24249,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24251
      start: 24228
    functionDepth: 8
    functionLinenumber: 24228
    functionLinenumberEnd: 24251
    functionName: emit_class_field_init
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - emit_op
    - emit_label
    - emit_atom
    - emit_goto
    - emit_u16
    linkageType: ''
    returnType: void
    signature: void emit_class_field_init(JSParseState *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_atom_concat_str
      Src: /src/gpac/src/quickjs/quickjs.c:24256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24257
      start: 24254
    functionDepth: 8
    functionLinenumber: 24254
    functionLinenumberEnd: 24257
    functionName: get_private_setter_name
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_atom_concat_str
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom get_private_setter_name(JSContext *ctx, JSAtom name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_function_class_fields_init
      Src: /src/gpac/src/quickjs/quickjs.c:24272,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24282,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:24284,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24286,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24287,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24288,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24290,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24291,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24292,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24294,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:24296,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 2
    argNames:
    - s
    - cf
    argTypes:
    - JSParseState*
    - ClassFieldsDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24300
      start: 24267
    functionDepth: 8
    functionLinenumber: 24267
    functionLinenumberEnd: 24300
    functionName: emit_class_init_start
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - emit_goto
    - js_parse_function_class_fields_init
    - emit_label
    - emit_atom
    - emit_u16
    linkageType: ''
    returnType: __exception
    signature: "__exception emit_class_init_start(JSParseState *s,\n                                             ClassFieldsDef
      *cf)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24307,1
    - Dst: cpool_add
      Src: /src/gpac/src/quickjs/quickjs.c:24310,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24312,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:24313,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24314,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - s
    - cf
    argTypes:
    - JSParseState*
    - ClassFieldsDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24315
      start: 24302
    functionDepth: 6
    functionLinenumber: 24302
    functionLinenumberEnd: 24315
    functionName: emit_class_init_end
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - cpool_add
    - emit_u32
    linkageType: ''
    returnType: void
    signature: void emit_class_init_end(JSParseState *s, ClassFieldsDef *cf)
  - BBCount: 93
    BranchProfiles: []
    Callsites:
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24336,1
    - Dst: js_parse_error_reserved_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:24340,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24343,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24344,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:24347,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24355,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:24358,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24362,1
    - Dst: js_parse_left_hand_side_expr
      Src: /src/gpac/src/quickjs/quickjs.c:24364,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24367,1
    - Dst: define_var
      Src: /src/gpac/src/quickjs/quickjs.c:24372,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:24377,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:24381,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24383,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:24385,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24396,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24397,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:24398,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24412,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:24418,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24424,1
    - Dst: emit_class_init_start
      Src: /src/gpac/src/quickjs/quickjs.c:24430,1
    - Dst: js_parse_function_decl2
      Src: /src/gpac/src/quickjs/quickjs.c:24438,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:24445,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24446,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24447,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24448,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24450,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24452,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24453,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24455,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:24457,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24464,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24469,1
    - Dst: js_parse_property_name
      Src: /src/gpac/src/quickjs/quickjs.c:24472,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:24483,1
    - Dst: find_private_class_field
      Src: /src/gpac/src/quickjs/quickjs.c:24492,1
    - Dst: add_private_class_field
      Src: /src/gpac/src/quickjs/quickjs.c:24506,1
    - Dst: js_parse_function_decl2
      Src: /src/gpac/src/quickjs/quickjs.c:24513,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24520,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24522,1
    - Dst: get_private_setter_name
      Src: /src/gpac/src/quickjs/quickjs.c:24527,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24530,1
    - Dst: add_private_class_field
      Src: /src/gpac/src/quickjs/quickjs.c:24531,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24533,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24537,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24539,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24542,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24544,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24545,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:24547,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:24557,1
    - Dst: find_private_class_field
      Src: /src/gpac/src/quickjs/quickjs.c:24562,1
    - Dst: add_private_class_field
      Src: /src/gpac/src/quickjs/quickjs.c:24566,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24569,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24570,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24571,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24572,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24573,1
    - Dst: emit_class_init_start
      Src: /src/gpac/src/quickjs/quickjs.c:24577,1
    - Dst: js_atom_concat_num
      Src: /src/gpac/src/quickjs/quickjs.c:24582,1
    - Dst: define_var
      Src: /src/gpac/src/quickjs/quickjs.c:24585,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24586,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24589,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24590,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24591,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24592,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24595,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24596,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24597,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24600,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24601,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24602,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24604,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24606,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24607,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24608,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24612,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:24614,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24617,1
    - Dst: set_object_name_computed
      Src: /src/gpac/src/quickjs/quickjs.c:24620,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24621,1
    - Dst: set_object_name_computed
      Src: /src/gpac/src/quickjs/quickjs.c:24623,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24624,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24625,1
    - Dst: set_object_name
      Src: /src/gpac/src/quickjs/quickjs.c:24627,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24628,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24629,1
    - Dst: js_parse_expect_semi
      Src: /src/gpac/src/quickjs/quickjs.c:24632,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:24648,1
    - Dst: js_parse_function_decl2
      Src: /src/gpac/src/quickjs/quickjs.c:24659,1
    - Dst: find_private_class_field
      Src: /src/gpac/src/quickjs/quickjs.c:24666,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:24669,1
    - Dst: add_private_class_field
      Src: /src/gpac/src/quickjs/quickjs.c:24672,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24675,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24676,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24677,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24678,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24679,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24680,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24683,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24685,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24686,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:24688,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24692,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24693,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:24698,1
    - Dst: js_parse_class_default_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:24703,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:24707,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:24711,1
    - Dst: js_strndup
      Src: /src/gpac/src/quickjs/quickjs.c:24713,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24720,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24729,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24730,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24731,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24732,1
    - Dst: emit_class_init_start
      Src: /src/gpac/src/quickjs/quickjs.c:24736,1
    - Dst: define_var
      Src: /src/gpac/src/quickjs/quickjs.c:24746,1
    - Dst: emit_class_init_end
      Src: /src/gpac/src/quickjs/quickjs.c:24751,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24753,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24755,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24756,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24757,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24761,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24765,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24766,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24767,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24774,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24775,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24776,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24777,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24783,1
    - Dst: emit_class_init_end
      Src: /src/gpac/src/quickjs/quickjs.c:24784,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24785,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24786,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24787,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:24790,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:24791,1
    - Dst: define_var
      Src: /src/gpac/src/quickjs/quickjs.c:24795,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24797,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24798,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24799,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24805,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:24806,1
    - Dst: add_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:24811,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24818,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24819,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24823,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24824,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24825,1
    CyclomaticComplexity: 156
    EdgeCount: 156
    ICount: 427
    argCount: 3
    argNames:
    - s
    - is_class_expr
    - export_flag
    argTypes:
    - JSParseState*
    - BOOL
    - JSParseExportEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24828
      start: 24318
    functionDepth: 18
    functionLinenumber: 24318
    functionLinenumberEnd: 24828
    functionName: js_parse_class
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - js_strndup
    - js_parse_error
    - js_parse_error_reserved_identifier
    - put_u32
    - js_parse_expect
    - peek_token
    - next_token
    - emit_u32
    - set_object_name_computed
    - define_var
    - add_private_class_field
    - js_parse_class_default_ctor
    - emit_u16
    - emit_op
    - js_free
    - emit_class_init_end
    - set_object_name
    - find_private_class_field
    - emit_u8
    - js_parse_property_name
    - JS_DupAtom
    - emit_class_init_start
    - js_parse_assign_expr
    - emit_atom
    - js_parse_function_decl2
    - js_atom_concat_num
    - add_export_entry
    - js_parse_expect_semi
    - pop_scope
    - get_private_setter_name
    - js_parse_left_hand_side_expr
    - push_scope
    linkageType: ''
    returnType: __exception
    signature: "__exception js_parse_class(JSParseState *s, BOOL is_class_expr,\n
      \                                     JSParseExportEnum export_flag)"
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24835,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:24842,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24847,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24853,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24854,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:24863,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24865,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:24866,1
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:24866,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24872,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24880,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24881,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:24882,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24883,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24884,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24890,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:24891,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24896,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:24898,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24901,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:24904,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:24905,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24907,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24908,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24909,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:24910,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24912,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:24913,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:24914,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24917,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24918,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:24919,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:24920,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24922,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24923,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24924,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24925,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:24930,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24933,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24936,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24940,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24946,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24947,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24948,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24950,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:24953,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 100
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24954
      start: 24830
    functionDepth: 18
    functionLinenumber: 24830
    functionLinenumberEnd: 24954
    functionName: js_parse_array_literal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - emit_goto
    - emit_u32
    - emit_label
    - emit_u8
    - new_label
    - js_parse_assign_expr
    - emit_atom
    - js_parse_expect
    - next_token
    - __JS_AtomFromUInt32
    - emit_u16
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_array_literal(JSParseState *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - s
    - scope_level
    argTypes:
    - JSFunctionDef*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24974
      start: 24957
    functionDepth: 0
    functionLinenumber: 24957
    functionLinenumberEnd: 24974
    functionName: has_with_scope
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL has_with_scope(JSFunctionDef *s, int scope_level)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: get_prev_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:24990,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:24992,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24993,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:24996,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25003,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25007,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25008,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25020,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25022,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25024,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25026,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:25037,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25040,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25041,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25042,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25043,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:25044,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25045,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25049,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25050,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25053,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25054,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25055,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25058,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25061,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25062,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25063,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:25066,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:25071,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25074,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25075,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25076,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25077,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:25078,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 108
    argCount: 8
    argNames:
    - s
    - popcode
    - pscope
    - pname
    - plabel
    - pdepth
    - keep
    - tok
    argTypes:
    - JSParseState*
    - int*
    - int*
    - JSAtom*
    - int*
    - int*
    - BOOL
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25095
      start: 24976
    functionDepth: 12
    functionLinenumber: 24976
    functionLinenumberEnd: 25095
    functionName: get_lvalue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_u16
    - emit_op
    - emit_u32
    - get_u32
    - js_parse_error
    - update_label
    - new_label
    - emit_atom
    - abort
    - emit_u16
    - get_prev_opcode
    linkageType: ''
    returnType: __exception
    signature: "__exception get_lvalue(JSParseState *s, int *popcode, int *pscope,\n
      \                                 JSAtom *pname, int *plabel, int *pdepth, BOOL
      keep,\n                                  int tok)"
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25121,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25124,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25127,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:25130,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25137,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:25138,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25142,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25147,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25150,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25153,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:25156,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25166,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25169,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25172,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:25175,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:25184,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25186,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25187,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25188,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25191,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25192,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25195,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25196,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25197,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25200,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25203,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25206,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:25209,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 95
    argCount: 7
    argNames:
    - s
    - opcode
    - scope
    - name
    - label
    - special
    - is_let
    argTypes:
    - JSParseState*
    - int
    - int
    - JSAtom
    - int
    - PutLValueEnum
    - BOOL
    assertStmts:
    - condition: "(special == PUT_LVALUE_NOKEEP ||\n               special == PUT_LVALUE_NOKEEP_DEPTH)"
      pos:
        line_end: 25184
        line_start: 25183
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 25211
      start: 25108
    functionDepth: 5
    functionLinenumber: 25108
    functionLinenumberEnd: 25211
    functionName: put_lvalue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - JS_FreeAtom
    - emit_u32
    - assert
    - emit_label
    - abort
    - emit_u16
    linkageType: ''
    returnType: void
    signature: "void put_lvalue(JSParseState *s, int opcode, int scope,\n                       JSAtom
      name, int label, PutLValueEnum special,\n                       BOOL is_let)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:25215,1
    - Dst: js_parse_expr
      Src: /src/gpac/src/quickjs/quickjs.c:25217,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:25219,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25222
      start: 25213
    functionDepth: 13
    functionLinenumber: 25213
    functionLinenumberEnd: 25222
    functionName: js_parse_expr_paren
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_expect
    - js_parse_expr
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_expr_paren(JSParseState *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25227,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:25228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - atom
    argTypes:
    - JSParseState*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25229
      start: 25224
    functionDepth: 12
    functionLinenumber: 25224
    functionLinenumberEnd: 25229
    functionName: js_unsupported_keyword
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_error
    - JS_AtomGetStr
    linkageType: ''
    returnType: int
    signature: int js_unsupported_keyword(JSParseState *s, JSAtom atom)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25237,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25241,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25245,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:25261,1
    - Dst: define_var
      Src: /src/gpac/src/quickjs/quickjs.c:25263,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 29
    argCount: 3
    argNames:
    - s
    - name
    - tok
    argTypes:
    - JSParseState*
    - JSAtom
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25266
      start: 25231
    functionDepth: 15
    functionLinenumber: 25231
    functionLinenumberEnd: 25266
    functionName: js_define_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_error
    - abort
    - define_var
    linkageType: ''
    returnType: __exception
    signature: __exception js_define_var(JSParseState *s, JSAtom name, int tok)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25276,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25277,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25278,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25279,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:25280,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:25280,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25281,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:25282,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:25283,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25285,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25286,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:25287,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:25288,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25290,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 2
    argNames:
    - s
    - depth
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25292
      start: 25268
    functionDepth: 8
    functionLinenumber: 25268
    functionLinenumberEnd: 25292
    functionName: js_emit_spread_code
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - emit_u32
    - emit_label
    - emit_u8
    - new_label
    - emit_goto
    - emit_u16
    linkageType: ''
    returnType: void
    signature: void js_emit_spread_code(JSParseState *s, int depth)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25310,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - s
    - name
    argTypes:
    - JSParseState*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25311
      start: 25294
    functionDepth: 12
    functionLinenumber: 25294
    functionLinenumberEnd: 25311
    functionName: js_parse_check_duplicate_parameter
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_error
    linkageType: ''
    returnType: int
    signature: int js_parse_check_duplicate_parameter(JSParseState *s, JSAtom name)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - s
    - tok
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25330
      start: 25318
    functionDepth: 0
    functionLinenumber: 25318
    functionLinenumberEnd: 25330
    functionName: need_var_reference
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL need_var_reference(JSParseState *s, int tok)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25339,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25342,1
    - Dst: js_parse_check_duplicate_parameter
      Src: /src/gpac/src/quickjs/quickjs.c:25343,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25345,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25350,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 17
    argCount: 3
    argNames:
    - s
    - tok
    - is_arg
    argTypes:
    - JSParseState*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25352
      start: 25332
    functionDepth: 18
    functionLinenumber: 25332
    functionLinenumberEnd: 25352
    functionName: js_parse_destructuring_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - js_parse_check_duplicate_parameter
    - js_parse_error
    - JS_DupAtom
    - next_token
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom js_parse_destructuring_var(JSParseState *s, int tok, int is_arg)
  - BBCount: 87
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_skip_parens_token
      Src: /src/gpac/src/quickjs/quickjs.c:25368,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:25372,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:25373,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25378,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25379,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25380,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:25381,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:25382,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:25384,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:25385,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25387,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25391,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25394,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25397,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25398,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:25404,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25407,1
    - Dst: js_parse_destructuring_var
      Src: /src/gpac/src/quickjs/quickjs.c:25410,1
    - Dst: need_var_reference
      Src: /src/gpac/src/quickjs/quickjs.c:25413,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25415,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25416,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25417,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25418,1
    - Dst: js_parse_left_hand_side_expr
      Src: /src/gpac/src/quickjs/quickjs.c:25427,1
    - Dst: get_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:25430,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25435,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25438,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25439,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:25440,1
    - Dst: js_parse_property_name
      Src: /src/gpac/src/quickjs/quickjs.c:25443,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25448,1
    - Dst: js_parse_skip_parens_token
      Src: /src/gpac/src/quickjs/quickjs.c:25451,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25457,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25458,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25459,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25460,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25461,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25464,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25469,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25470,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25471,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25472,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25473,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25476,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25477,1
    - Dst: js_parse_destructuring_element
      Src: /src/gpac/src/quickjs/quickjs.c:25479,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:25484,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25489,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25492,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25493,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25494,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25495,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25498,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25502,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25503,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25504,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25505,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25506,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25509,1
    - Dst: js_parse_destructuring_var
      Src: /src/gpac/src/quickjs/quickjs.c:25512,1
    - Dst: need_var_reference
      Src: /src/gpac/src/quickjs/quickjs.c:25515,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25517,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25518,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25519,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25520,1
    - Dst: js_parse_left_hand_side_expr
      Src: /src/gpac/src/quickjs/quickjs.c:25530,1
    - Dst: get_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:25533,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25541,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25545,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25549,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25550,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25557,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25561,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25565,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25574,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25579,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25580,1
    - Dst: js_parse_check_duplicate_parameter
      Src: /src/gpac/src/quickjs/quickjs.c:25584,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25588,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25593,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25594,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25595,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25596,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25597,1
    - Dst: need_var_reference
      Src: /src/gpac/src/quickjs/quickjs.c:25599,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25602,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25603,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25604,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25605,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25609,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25616,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25617,1
    - Dst: js_define_var
      Src: /src/gpac/src/quickjs/quickjs.c:25622,1
    - Dst: add_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:25625,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25633,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25634,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25635,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:25636,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25637,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25639,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:25640,1
    - Dst: set_object_name
      Src: /src/gpac/src/quickjs/quickjs.c:25643,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:25644,1
    - Dst: put_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:25647,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:25653,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25657,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25659,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25661,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25668,1
    - Dst: push_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:25672,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25675,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25680,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25683,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25688,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:25689,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25690,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25691,1
    - Dst: js_parse_skip_parens_token
      Src: /src/gpac/src/quickjs/quickjs.c:25693,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25697,1
    - Dst: js_emit_spread_code
      Src: /src/gpac/src/quickjs/quickjs.c:25698,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25700,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:25701,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25702,1
    - Dst: js_parse_destructuring_element
      Src: /src/gpac/src/quickjs/quickjs.c:25704,1
    - Dst: js_parse_destructuring_var
      Src: /src/gpac/src/quickjs/quickjs.c:25709,1
    - Dst: js_define_var
      Src: /src/gpac/src/quickjs/quickjs.c:25712,1
    - Dst: need_var_reference
      Src: /src/gpac/src/quickjs/quickjs.c:25714,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25716,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25717,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25718,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25719,1
    - Dst: js_parse_left_hand_side_expr
      Src: /src/gpac/src/quickjs/quickjs.c:25729,1
    - Dst: get_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:25732,1
    - Dst: js_emit_spread_code
      Src: /src/gpac/src/quickjs/quickjs.c:25738,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25740,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:25741,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25742,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25747,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25748,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25749,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:25750,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25751,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25753,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:25754,1
    - Dst: set_object_name
      Src: /src/gpac/src/quickjs/quickjs.c:25757,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:25758,1
    - Dst: put_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:25761,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25768,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:25770,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25775,1
    - Dst: pop_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:25776,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25777,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25780,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:25783,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25784,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:25786,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25788,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:25789,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:25791,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:25792,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25799,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:25803,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25811,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25813,1
    CyclomaticComplexity: 133
    EdgeCount: 133
    ICount: 396
    argCount: 7
    argNames:
    - s
    - tok
    - is_arg
    - hasval
    - has_ellipsis
    - allow_initializer
    - export_flag
    argTypes:
    - JSParseState*
    - int
    - int
    - int
    - int
    - BOOL
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25815
      start: 25356
    functionDepth: 20
    functionLinenumber: 25356
    functionLinenumberEnd: 25815
    functionName: js_parse_destructuring_element
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_FreeAtom
    - js_define_var
    - push_break_entry
    - js_parse_error
    - memset
    - js_parse_expect
    - next_token
    - js_parse_skip_parens_token
    - emit_u32
    - pop_break_entry
    - js_parse_check_duplicate_parameter
    - put_lvalue
    - js_parse_destructuring_var
    - emit_u16
    - emit_op
    - set_object_name
    - emit_label
    - emit_u8
    - js_parse_property_name
    - JS_DupAtom
    - new_label
    - js_parse_assign_expr
    - emit_atom
    - emit_goto
    - JS_ThrowInternalError
    - get_lvalue
    - add_export_entry
    - need_var_reference
    - js_parse_left_hand_side_expr
    - js_parse_destructuring_element
    - js_emit_spread_code
    linkageType: ''
    returnType: int
    signature: "int js_parse_destructuring_element(JSParseState *s, int tok, int is_arg,\n
      \                                       int hasval, int has_ellipsis,\n                                        BOOL
      allow_initializer, BOOL export_flag)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:25829,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25831,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25832,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:25833,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25835,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25836,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:25837,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:25838,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - s
    - poptional_chaining_label
    - drop_count
    argTypes:
    - JSParseState*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25839
      start: 25824
    functionDepth: 8
    functionLinenumber: 25824
    functionLinenumberEnd: 25839
    functionName: optional_chain_test
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - emit_label
    - new_label
    - emit_goto
    linkageType: ''
    returnType: void
    signature: "void optional_chain_test(JSParseState *s, int *poptional_chaining_label,\n
      \                               int drop_count)"
  - BBCount: 153
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:25856,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25857,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25858,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:25858,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:25859,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:25861,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25863,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25864,1
    - Dst: emit_push_const
      Src: /src/gpac/src/quickjs/quickjs.c:25870,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25874,1
    - Dst: js_parse_template
      Src: /src/gpac/src/quickjs/quickjs.c:25878,1
    - Dst: emit_push_const
      Src: /src/gpac/src/quickjs/quickjs.c:25882,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25884,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25898,1
    - Dst: js_parse_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:25900,1
    - Dst: emit_push_const
      Src: /src/gpac/src/quickjs/quickjs.c:25902,1
    - Dst: JSParseState*::ctx::compile_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:25903,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:25905,1
    - Dst: get_line_col
      Src: /src/gpac/src/quickjs/quickjs.c:25908,1
    - Dst: build_backtrace
      Src: /src/gpac/src/quickjs/quickjs.c:25909,1
    - Dst: emit_push_const
      Src: /src/gpac/src/quickjs/quickjs.c:25913,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:25914,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25920,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25921,1
    - Dst: js_parse_expr_paren
      Src: /src/gpac/src/quickjs/quickjs.c:25926,1
    - Dst: js_parse_function_decl
      Src: /src/gpac/src/quickjs/quickjs.c:25930,1
    - Dst: js_parse_class
      Src: /src/gpac/src/quickjs/quickjs.c:25936,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25940,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25942,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25945,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25947,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25948,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25949,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25952,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25954,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25957,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25959,1
    - Dst: js_parse_error_reserved_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:25966,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:25969,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:25970,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25971,1
    - Dst: js_parse_function_decl
      Src: /src/gpac/src/quickjs/quickjs.c:25974,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25979,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25985,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25988,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25989,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25990,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:25994,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25995,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25996,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25997,1
    - Dst: js_parse_object_literal
      Src: /src/gpac/src/quickjs/quickjs.c:26004,1
    - Dst: js_parse_array_literal
      Src: /src/gpac/src/quickjs/quickjs.c:26007,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26012,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26015,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:26017,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26018,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26020,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26021,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26023,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26024,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26025,1
    - Dst: js_parse_postfix_expr
      Src: /src/gpac/src/quickjs/quickjs.c:26027,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:26032,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26033,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26034,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26035,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26042,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26046,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26050,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26051,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26052,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26053,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26054,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26055,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26056,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26057,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26059,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26063,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26066,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:26068,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26069,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26071,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26072,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26074,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:26075,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:26077,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26080,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:26081,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26084,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:26087,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26091,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26095,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26098,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:26100,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26102,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26106,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26117,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26120,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26133,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26144,1
    - Dst: get_prev_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:26149,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26158,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:26163,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26164,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26168,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26169,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26187,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:26192,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26193,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26197,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26198,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26207,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26208,1
    - Dst: has_with_scope
      Src: /src/gpac/src/quickjs/quickjs.c:26221,1
    - Dst: optional_chain_test
      Src: /src/gpac/src/quickjs/quickjs.c:26241,1
    - Dst: js_parse_template
      Src: /src/gpac/src/quickjs/quickjs.c:26249,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26253,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26254,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26255,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26257,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26259,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26260,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26261,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26263,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26270,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:26274,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:26280,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26284,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26285,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26286,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26287,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26292,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:26294,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26298,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:26301,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:26302,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26304,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26305,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26306,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26307,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26309,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:26310,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:26311,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26314,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26315,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:26316,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26317,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26319,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26320,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26321,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26322,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:26325,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26328,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26329,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:26334,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26337,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26340,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:26342,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26350,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26351,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26352,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26355,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26356,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26361,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26362,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26364,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26365,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26366,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26367,1
    - Dst: emit_class_field_init
      Src: /src/gpac/src/quickjs/quickjs.c:26369,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26372,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26373,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26374,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26377,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26378,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26379,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26380,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26385,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:26388,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26394,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26395,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26398,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26399,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26400,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26405,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26406,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26409,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26410,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26411,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26412,1
    - Dst: emit_class_field_init
      Src: /src/gpac/src/quickjs/quickjs.c:26414,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26416,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26417,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26419,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26420,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26428,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:26431,1
    - Dst: get_prev_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:26434,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26435,1
    - Dst: optional_chain_test
      Src: /src/gpac/src/quickjs/quickjs.c:26438,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26440,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26441,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26442,1
    - Dst: token_is_ident
      Src: /src/gpac/src/quickjs/quickjs.c:26444,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26445,1
    - Dst: get_prev_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:26447,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:26450,1
    - Dst: emit_push_const
      Src: /src/gpac/src/quickjs/quickjs.c:26451,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:26452,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26455,1
    - Dst: optional_chain_test
      Src: /src/gpac/src/quickjs/quickjs.c:26458,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26460,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26461,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26464,1
    - Dst: get_prev_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:26470,1
    - Dst: optional_chain_test
      Src: /src/gpac/src/quickjs/quickjs.c:26472,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26474,1
    - Dst: js_parse_expr
      Src: /src/gpac/src/quickjs/quickjs.c:26476,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:26478,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:26480,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26482,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26484,1
    - Dst: emit_label_raw
      Src: /src/gpac/src/quickjs/quickjs.c:26493,1
    - Dst: get_prev_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:26496,1
    CyclomaticComplexity: 172
    EdgeCount: 172
    ICount: 578
    argCount: 2
    argNames:
    - s
    - parse_flags
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26508
      start: 25842
    functionDepth: 21
    functionLinenumber: 25842
    functionLinenumberEnd: 26508
    functionName: js_parse_postfix_expr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - get_u16
    - build_backtrace
    - js_parse_class
    - JS_VALUE_GET_SHORT_BIG_INT
    - JS_FreeAtom
    - js_parse_error
    - has_with_scope
    - js_parse_error_reserved_identifier
    - token_is_pseudo_keyword
    - js_parse_regexp
    - js_parse_expect
    - peek_token
    - next_token
    - emit_class_field_init
    - js_parse_expr
    - emit_u32
    - JS_VALUE_GET_TAG
    - get_u32
    - js_parse_template
    - emit_label_raw
    - optional_chain_test
    - get_line_col
    - JSParseState*::ctx::compile_regexp
    - JS_AtomToValue
    - emit_u16
    - emit_op
    - get_prev_opcode
    - token_is_ident
    - emit_source_pos
    - emit_u8
    - emit_label
    - JS_DupAtom
    - new_label
    - js_parse_assign_expr
    - js_parse_function_decl
    - emit_atom
    - js_parse_expr_paren
    - emit_goto
    - JS_VALUE_GET_INT
    - JS_IsException
    - JS_FreeValue
    - js_parse_array_literal
    - js_parse_object_literal
    - js_parse_postfix_expr
    - emit_push_const
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_postfix_expr(JSParseState *s, int parse_flags)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26516,1
    - Dst: js_parse_unary
      Src: /src/gpac/src/quickjs/quickjs.c:26518,1
    - Dst: get_prev_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:26520,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26527,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26532,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:26534,1
    - Dst: emit_push_const
      Src: /src/gpac/src/quickjs/quickjs.c:26535,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:26536,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:26537,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26540,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:26542,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26543,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26545,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26546,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26547,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26555,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26560,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26563,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:26564,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26565,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26567,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26568,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26569,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26575,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26579,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26585,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26589,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26590,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:26591,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26595,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26596,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 77
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26600
      start: 26510
    functionDepth: 18
    functionLinenumber: 26510
    functionLinenumberEnd: 26600
    functionName: js_parse_delete
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - emit_goto
    - JS_FreeAtom
    - get_u32
    - JS_FreeValue
    - js_parse_error
    - emit_label
    - emit_u8
    - emit_atom
    - js_parse_unary
    - next_token
    - emit_push_const
    - JS_AtomToValue
    - get_prev_opcode
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_delete(JSParseState *s)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26616,1
    - Dst: js_parse_unary
      Src: /src/gpac/src/quickjs/quickjs.c:26618,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:26622,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26623,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:26626,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26627,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26630,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:26633,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26634,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26637,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26638,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:26641,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26652,1
    - Dst: js_parse_unary
      Src: /src/gpac/src/quickjs/quickjs.c:26654,1
    - Dst: get_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:26656,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:26658,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26659,1
    - Dst: put_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:26660,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26667,1
    - Dst: js_parse_unary
      Src: /src/gpac/src/quickjs/quickjs.c:26669,1
    - Dst: get_prev_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:26674,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26677,1
    - Dst: js_parse_delete
      Src: /src/gpac/src/quickjs/quickjs.c:26682,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26688,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26690,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26691,1
    - Dst: js_parse_unary
      Src: /src/gpac/src/quickjs/quickjs.c:26693,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26696,1
    - Dst: js_parse_postfix_expr
      Src: /src/gpac/src/quickjs/quickjs.c:26700,1
    - Dst: get_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:26708,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:26710,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26711,1
    - Dst: put_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:26712,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26714,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:26727,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26731,1
    - Dst: js_parse_unary
      Src: /src/gpac/src/quickjs/quickjs.c:26733,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:26735,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26736,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 116
    argCount: 2
    argNames:
    - s
    - parse_flags
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26740
      start: 26603
    functionDepth: 22
    functionLinenumber: 26603
    functionLinenumberEnd: 26740
    functionName: js_parse_unary
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - emit_op
    - get_lvalue
    - js_parse_postfix_expr
    - JS_ThrowSyntaxError
    - js_parse_error
    - put_lvalue
    - emit_source_pos
    - js_parse_delete
    - js_parse_unary
    - next_token
    - abort
    - get_prev_opcode
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_unary(JSParseState *s, int parse_flags)
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_unary
      Src: /src/gpac/src/quickjs/quickjs.c:26750,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:26753,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:26756,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26757,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26761,1
    - Dst: js_parse_expr_binary
      Src: /src/gpac/src/quickjs/quickjs.c:26763,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:26765,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26768,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26769,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26770,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:26771,1
    - Dst: js_parse_expr_binary
      Src: /src/gpac/src/quickjs/quickjs.c:26774,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:26897,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26899,1
    - Dst: js_parse_expr_binary
      Src: /src/gpac/src/quickjs/quickjs.c:26901,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:26903,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26904,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 160
    argCount: 3
    argNames:
    - s
    - level
    - parse_flags
    argTypes:
    - JSParseState*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26907
      start: 26743
    functionDepth: 23
    functionLinenumber: 26743
    functionLinenumberEnd: 26907
    functionName: js_parse_expr_binary
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - emit_op
    - JS_FreeAtom
    - js_parse_expr_binary
    - emit_source_pos
    - JS_DupAtom
    - peek_token
    - js_parse_unary
    - emit_atom
    - next_token
    - abort
    - emit_u16
    linkageType: ''
    returnType: __exception
    signature: "__exception js_parse_expr_binary(JSParseState *s, int level,\n                                            int
      parse_flags)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_expr_binary
      Src: /src/gpac/src/quickjs/quickjs.c:26916,1
    - Dst: js_parse_logical_and_or
      Src: /src/gpac/src/quickjs/quickjs.c:26919,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:26923,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26926,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26928,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:26929,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26930,1
    - Dst: js_parse_expr_binary
      Src: /src/gpac/src/quickjs/quickjs.c:26933,1
    - Dst: js_parse_logical_and_or
      Src: /src/gpac/src/quickjs/quickjs.c:26936,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26942,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26947,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 32
    argCount: 3
    argNames:
    - s
    - op
    - parse_flags
    argTypes:
    - JSParseState*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26950
      start: 26910
    functionDepth: 24
    functionLinenumber: 26910
    functionLinenumberEnd: 26950
    functionName: js_parse_logical_and_or
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - emit_op
    - js_parse_error
    - js_parse_expr_binary
    - emit_label
    - js_parse_logical_and_or
    - new_label
    - emit_goto
    - next_token
    linkageType: ''
    returnType: __exception
    signature: "__exception js_parse_logical_and_or(JSParseState *s, int op,\n                                               int
      parse_flags)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_logical_and_or
      Src: /src/gpac/src/quickjs/quickjs.c:26956,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:26959,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26961,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26964,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26965,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:26966,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26967,1
    - Dst: js_parse_expr_binary
      Src: /src/gpac/src/quickjs/quickjs.c:26969,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26974,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - s
    - parse_flags
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26977
      start: 26952
    functionDepth: 25
    functionLinenumber: 26952
    functionLinenumberEnd: 26977
    functionName: js_parse_coalesce_expr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - js_parse_expr_binary
    - emit_label
    - js_parse_logical_and_or
    - new_label
    - emit_goto
    - next_token
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_coalesce_expr(JSParseState *s, int parse_flags)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_coalesce_expr
      Src: /src/gpac/src/quickjs/quickjs.c:26984,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26987,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:26989,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:26991,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:26993,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:26996,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26998,1
    - Dst: js_parse_assign_expr2
      Src: /src/gpac/src/quickjs/quickjs.c:27000,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27003,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - s
    - parse_flags
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27006
      start: 26980
    functionDepth: 26
    functionLinenumber: 26980
    functionLinenumberEnd: 27006
    functionName: js_parse_cond_expr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_coalesce_expr
    - js_parse_assign_expr2
    - emit_label
    - js_parse_expect
    - js_parse_assign_expr
    - emit_goto
    - next_token
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_cond_expr(JSParseState *s, int parse_flags)
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27019,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27021,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27022,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27031,1
    - Dst: js_parse_assign_expr2
      Src: /src/gpac/src/quickjs/quickjs.c:27034,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27037,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:27046,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:27047,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27049,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27053,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27054,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27056,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27058,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27059,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27061,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27062,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27063,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27064,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27065,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27066,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27069,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27070,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27071,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27074,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27076,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27077,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27078,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27079,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27081,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27082,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:27083,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27084,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27085,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27089,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27090,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:27091,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27092,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27094,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27095,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27096,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27097,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27098,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27100,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27101,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27103,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27104,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27105,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27106,1
    - Dst: emit_return
      Src: /src/gpac/src/quickjs/quickjs.c:27107,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27110,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27111,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:27112,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27113,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27115,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27116,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27117,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27118,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27119,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27120,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27122,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27123,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:27124,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27125,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27127,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27128,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27130,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27131,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:27132,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27134,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27135,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27136,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27137,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27139,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27140,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27145,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27146,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27147,1
    - Dst: emit_return
      Src: /src/gpac/src/quickjs/quickjs.c:27148,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27149,1
    - Dst: js_parse_skip_parens_token
      Src: /src/gpac/src/quickjs/quickjs.c:27153,1
    - Dst: js_parse_function_decl
      Src: /src/gpac/src/quickjs/quickjs.c:27154,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:27157,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:27163,1
    - Dst: js_parse_get_pos
      Src: /src/gpac/src/quickjs/quickjs.c:27168,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27169,1
    - Dst: js_parse_skip_parens_token
      Src: /src/gpac/src/quickjs/quickjs.c:27172,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:27174,1
    - Dst: js_parse_function_decl
      Src: /src/gpac/src/quickjs/quickjs.c:27175,1
    - Dst: js_parse_seek_token
      Src: /src/gpac/src/quickjs/quickjs.c:27180,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:27184,1
    - Dst: js_parse_function_decl
      Src: /src/gpac/src/quickjs/quickjs.c:27185,1
    - Dst: js_parse_skip_parens_token
      Src: /src/gpac/src/quickjs/quickjs.c:27189,1
    - Dst: js_parse_destructuring_element
      Src: /src/gpac/src/quickjs/quickjs.c:27190,1
    - Dst: js_parse_cond_expr
      Src: /src/gpac/src/quickjs/quickjs.c:27199,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27207,1
    - Dst: get_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:27209,1
    - Dst: js_parse_assign_expr2
      Src: /src/gpac/src/quickjs/quickjs.c:27212,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:27213,1
    - Dst: set_object_name
      Src: /src/gpac/src/quickjs/quickjs.c:27219,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:27228,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27229,1
    - Dst: put_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:27231,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27235,1
    - Dst: get_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:27237,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27241,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27243,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27244,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27246,1
    - Dst: js_parse_assign_expr2
      Src: /src/gpac/src/quickjs/quickjs.c:27248,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:27249,1
    - Dst: set_object_name
      Src: /src/gpac/src/quickjs/quickjs.c:27254,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27259,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27262,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27265,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:27268,1
    - Dst: put_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:27273,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27275,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27277,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27281,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27285,1
    CyclomaticComplexity: 65
    EdgeCount: 65
    ICount: 203
    argCount: 2
    argNames:
    - s
    - parse_flags
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27288
      start: 27009
    functionDepth: 27
    functionLinenumber: 27009
    functionLinenumberEnd: 27288
    functionName: js_parse_assign_expr2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_FreeAtom
    - js_parse_assign_expr2
    - js_parse_error
    - js_parse_cond_expr
    - token_is_pseudo_keyword
    - peek_token
    - next_token
    - js_parse_skip_parens_token
    - emit_return
    - emit_u32
    - put_lvalue
    - js_parse_seek_token
    - abort
    - emit_op
    - set_object_name
    - emit_label
    - emit_u8
    - emit_source_pos
    - new_label
    - js_parse_get_pos
    - emit_goto
    - js_parse_function_decl
    - emit_atom
    - get_lvalue
    - js_parse_destructuring_element
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_assign_expr2(JSParseState *s, int parse_flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_assign_expr2
      Src: /src/gpac/src/quickjs/quickjs.c:27292,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27293
      start: 27290
    functionDepth: 28
    functionLinenumber: 27290
    functionLinenumberEnd: 27293
    functionName: js_parse_assign_expr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 7
    functionsReached:
    - js_parse_assign_expr2
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_assign_expr(JSParseState *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_assign_expr2
      Src: /src/gpac/src/quickjs/quickjs.c:27300,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27313,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27315,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - s
    - parse_flags
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27318
      start: 27296
    functionDepth: 28
    functionLinenumber: 27296
    functionLinenumberEnd: 27318
    functionName: js_parse_expr2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - next_token
    - js_parse_assign_expr2
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_expr2(JSParseState *s, int parse_flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_expr2
      Src: /src/gpac/src/quickjs/quickjs.c:27322,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27323
      start: 27320
    functionDepth: 29
    functionLinenumber: 27320
    functionLinenumberEnd: 27323
    functionName: js_parse_expr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - js_parse_expr2
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_expr(JSParseState *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 6
    argNames:
    - fd
    - be
    - label_name
    - label_break
    - label_cont
    - drop_count
    argTypes:
    - JSFunctionDef*
    - BlockEnv*
    - JSAtom
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27340
      start: 27325
    functionDepth: 0
    functionLinenumber: 27325
    functionLinenumberEnd: 27340
    functionName: push_break_entry
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void push_break_entry(JSFunctionDef *fd, BlockEnv *be,\n                             JSAtom
      label_name,\n                             int label_break, int label_cont,\n
      \                            int drop_count)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fd
    argTypes:
    - JSFunctionDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27347
      start: 27342
    functionDepth: 0
    functionLinenumber: 27342
    functionLinenumberEnd: 27347
    functionName: pop_break_entry
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void pop_break_entry(JSFunctionDef *fd)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: close_scopes
      Src: /src/gpac/src/quickjs/quickjs.c:27357,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27363,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27370,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27375,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27379,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27382,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27383,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27384,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27390,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27392,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27394,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 35
    argCount: 3
    argNames:
    - s
    - name
    - is_cont
    argTypes:
    - JSParseState*
    - JSAtom
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27396
      start: 27349
    functionDepth: 12
    functionLinenumber: 27349
    functionLinenumberEnd: 27396
    functionName: emit_break
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - close_scopes
    - js_parse_error
    - emit_op
    - emit_goto
    linkageType: ''
    returnType: __exception
    signature: __exception emit_break(JSParseState *s, JSAtom name, int is_cont)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27406,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27411,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27419,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27426,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27431,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27432,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27433,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27434,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27436,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27437,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27438,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27439,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27440,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27441,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27442,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27443,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27444,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27445,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27446,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27447,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27449,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27450,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27451,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27455,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27466,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27467,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27468,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27475,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27476,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27477,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27479,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27480,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27482,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27484,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 66
    argCount: 2
    argNames:
    - s
    - hasval
    argTypes:
    - JSParseState*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27486
      start: 27399
    functionDepth: 8
    functionLinenumber: 27399
    functionLinenumberEnd: 27486
    functionName: emit_return
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - emit_op
    - emit_label
    - emit_atom
    - emit_goto
    - emit_u16
    linkageType: ''
    returnType: void
    signature: void emit_return(JSParseState *s, BOOL hasval)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_statement_or_decl
      Src: /src/gpac/src/quickjs/quickjs.c:27499,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27500
      start: 27497
    functionDepth: 1
    functionLinenumber: 27497
    functionLinenumberEnd: 27500
    functionName: js_parse_statement
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_statement_or_decl
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_statement(JSParseState *s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:27504,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:27507,1
    - Dst: js_parse_statement_or_decl
      Src: /src/gpac/src/quickjs/quickjs.c:27509,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:27514,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27516,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27519
      start: 27502
    functionDepth: 18
    functionLinenumber: 27502
    functionLinenumberEnd: 27519
    functionName: js_parse_block
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_statement_or_decl
    - pop_scope
    - js_parse_expect
    - next_token
    - push_scope
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_block(JSParseState *s)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_error_reserved_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:27532,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:27534,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27536,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27539,1
    - Dst: js_define_var
      Src: /src/gpac/src/quickjs/quickjs.c:27541,1
    - Dst: add_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:27544,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27550,1
    - Dst: need_var_reference
      Src: /src/gpac/src/quickjs/quickjs.c:27552,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27557,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27558,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27559,1
    - Dst: get_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:27560,1
    - Dst: js_parse_assign_expr2
      Src: /src/gpac/src/quickjs/quickjs.c:27562,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:27563,1
    - Dst: set_object_name
      Src: /src/gpac/src/quickjs/quickjs.c:27566,1
    - Dst: put_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:27567,1
    - Dst: js_parse_assign_expr2
      Src: /src/gpac/src/quickjs/quickjs.c:27570,1
    - Dst: set_object_name
      Src: /src/gpac/src/quickjs/quickjs.c:27572,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27573,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27575,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27576,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27580,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27585,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27586,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27587,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27588,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:27591,1
    - Dst: js_parse_skip_parens_token
      Src: /src/gpac/src/quickjs/quickjs.c:27595,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27596,1
    - Dst: js_parse_destructuring_element
      Src: /src/gpac/src/quickjs/quickjs.c:27597,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27600,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27605,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:27611,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 83
    argCount: 4
    argNames:
    - s
    - parse_flags
    - tok
    - export_flag
    argTypes:
    - JSParseState*
    - int
    - int
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27613
      start: 27522
    functionDepth: 28
    functionLinenumber: 27522
    functionLinenumberEnd: 27613
    functionName: js_parse_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - get_lvalue
    - JS_FreeAtom
    - js_define_var
    - js_parse_assign_expr2
    - set_object_name
    - add_export_entry
    - js_parse_error
    - put_lvalue
    - js_parse_error_reserved_identifier
    - JS_DupAtom
    - need_var_reference
    - emit_atom
    - js_parse_destructuring_element
    - next_token
    - js_parse_skip_parens_token
    - emit_u16
    linkageType: ''
    returnType: __exception
    signature: "__exception js_parse_var(JSParseState *s, int parse_flags, int tok,\n
      \                                   BOOL export_flag)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:27619,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27620
      start: 27616
    functionDepth: 4
    functionLinenumber: 27616
    functionLinenumberEnd: 27620
    functionName: is_label
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - peek_token
    linkageType: ''
    returnType: BOOL
    signature: BOOL is_label(JSParseState *s)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:27628,1
    - Dst: js_parse_get_pos
      Src: /src/gpac/src/quickjs/quickjs.c:27630,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27633,1
    - Dst: has_lf_in_range
      Src: /src/gpac/src/quickjs/quickjs.c:27651,1
    - Dst: js_parse_seek_token
      Src: /src/gpac/src/quickjs/quickjs.c:27660,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 27
    argCount: 2
    argNames:
    - s
    - decl_mask
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27665
      start: 27623
    functionDepth: 19
    functionLinenumber: 27623
    functionLinenumberEnd: 27665
    functionName: is_let
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - has_lf_in_range
    - js_parse_seek_token
    - token_is_pseudo_keyword
    - js_parse_get_pos
    - next_token
    linkageType: ''
    returnType: int
    signature: int is_let(JSParseState *s, int decl_mask)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:27685,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:27686,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:27687,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:27688,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:27693,1
    - Dst: push_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:27697,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27701,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27704,1
    - Dst: is_let
      Src: /src/gpac/src/quickjs/quickjs.c:27707,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27717,1
    - Dst: js_parse_destructuring_element
      Src: /src/gpac/src/quickjs/quickjs.c:27722,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27726,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:27730,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27731,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:27732,1
    - Dst: js_define_var
      Src: /src/gpac/src/quickjs/quickjs.c:27735,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:27736,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27739,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27741,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27742,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:27744,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:27745,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27746,1
    - Dst: js_parse_skip_parens_token
      Src: /src/gpac/src/quickjs/quickjs.c:27750,1
    - Dst: js_parse_destructuring_element
      Src: /src/gpac/src/quickjs/quickjs.c:27751,1
    - Dst: js_parse_left_hand_side_expr
      Src: /src/gpac/src/quickjs/quickjs.c:27755,1
    - Dst: get_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:27757,1
    - Dst: put_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:27760,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27765,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27768,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27775,1
    - Dst: js_parse_assign_expr2
      Src: /src/gpac/src/quickjs/quickjs.c:27775,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:27776,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27780,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27781,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27782,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:27785,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:27787,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27794,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27799,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27803,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27805,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:27808,1
    - Dst: js_parse_expr
      Src: /src/gpac/src/quickjs/quickjs.c:27811,1
    - Dst: close_scopes
      Src: /src/gpac/src/quickjs/quickjs.c:27816,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27819,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27821,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27824,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27827,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:27829,1
    - Dst: dbuf_claim
      Src: /src/gpac/src/quickjs/quickjs.c:27838,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:27839,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:27840,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27851,1
    - Dst: js_parse_statement
      Src: /src/gpac/src/quickjs/quickjs.c:27852,1
    - Dst: close_scopes
      Src: /src/gpac/src/quickjs/quickjs.c:27855,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27857,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27862,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27864,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27866,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27868,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:27869,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27872,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27875,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27877,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27879,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27882,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27884,1
    - Dst: pop_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:27886,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:27887,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 159
    argCount: 3
    argNames:
    - s
    - label_name
    - is_async
    argTypes:
    - JSParseState*
    - int
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27889
      start: 27669
    functionDepth: 30
    functionLinenumber: 27669
    functionLinenumberEnd: 27889
    functionName: js_parse_for_in_of
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - close_scopes
    - JS_FreeAtom
    - push_break_entry
    - js_define_var
    - js_parse_assign_expr2
    - dbuf_put
    - js_parse_error
    - memset
    - token_is_pseudo_keyword
    - js_parse_expect
    - peek_token
    - next_token
    - js_parse_skip_parens_token
    - js_parse_expr
    - pop_break_entry
    - put_lvalue
    - emit_u16
    - emit_op
    - js_parse_statement
    - dbuf_claim
    - emit_label
    - emit_u8
    - JS_DupAtom
    - new_label
    - js_parse_assign_expr
    - emit_atom
    - emit_goto
    - is_let
    - get_lvalue
    - pop_scope
    - js_parse_left_hand_side_expr
    - js_parse_destructuring_element
    - push_scope
    linkageType: ''
    returnType: __exception
    signature: "__exception js_parse_for_in_of(JSParseState *s, int label_name,\n
      \                                         BOOL is_async)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27894,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27895,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27896,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27898
      start: 27891
    functionDepth: 2
    functionLinenumber: 27891
    functionLinenumberEnd: 27898
    functionName: set_eval_ret_undefined
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - emit_u16
    linkageType: ''
    returnType: void
    signature: void set_eval_ret_undefined(JSParseState *s)
  - BBCount: 157
    BranchProfiles: []
    Callsites:
    - Dst: is_label
      Src: /src/gpac/src/quickjs/quickjs.c:27910,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:27913,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27917,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27922,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:27924,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:27933,1
    - Dst: push_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:27934,1
    - Dst: js_parse_statement_or_decl
      Src: /src/gpac/src/quickjs/quickjs.c:27943,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27945,1
    - Dst: pop_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:27946,1
    - Dst: js_parse_block
      Src: /src/gpac/src/quickjs/quickjs.c:27953,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27960,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27964,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27968,1
    - Dst: js_parse_expr
      Src: /src/gpac/src/quickjs/quickjs.c:27971,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:27973,1
    - Dst: emit_return
      Src: /src/gpac/src/quickjs/quickjs.c:27974,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:27976,1
    - Dst: emit_return
      Src: /src/gpac/src/quickjs/quickjs.c:27977,1
    - Dst: js_parse_expect_semi
      Src: /src/gpac/src/quickjs/quickjs.c:27979,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27987,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27990,1
    - Dst: js_parse_expr
      Src: /src/gpac/src/quickjs/quickjs.c:27993,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:27995,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27996,1
    - Dst: js_parse_expect_semi
      Src: /src/gpac/src/quickjs/quickjs.c:27997,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28005,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28010,1
    - Dst: js_parse_var
      Src: /src/gpac/src/quickjs/quickjs.c:28012,1
    - Dst: js_parse_expect_semi
      Src: /src/gpac/src/quickjs/quickjs.c:28014,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28020,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:28023,1
    - Dst: set_eval_ret_undefined
      Src: /src/gpac/src/quickjs/quickjs.c:28024,1
    - Dst: js_parse_expr_paren
      Src: /src/gpac/src/quickjs/quickjs.c:28025,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28027,1
    - Dst: js_parse_statement_or_decl
      Src: /src/gpac/src/quickjs/quickjs.c:28033,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28037,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28038,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28041,1
    - Dst: js_parse_statement_or_decl
      Src: /src/gpac/src/quickjs/quickjs.c:28042,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28047,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:28048,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28056,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28057,1
    - Dst: push_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:28059,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28062,1
    - Dst: set_eval_ret_undefined
      Src: /src/gpac/src/quickjs/quickjs.c:28065,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28067,1
    - Dst: js_parse_expr_paren
      Src: /src/gpac/src/quickjs/quickjs.c:28068,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28070,1
    - Dst: js_parse_statement
      Src: /src/gpac/src/quickjs/quickjs.c:28072,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28074,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28076,1
    - Dst: pop_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:28078,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28086,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28087,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28088,1
    - Dst: push_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:28090,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28093,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28096,1
    - Dst: set_eval_ret_undefined
      Src: /src/gpac/src/quickjs/quickjs.c:28098,1
    - Dst: js_parse_statement
      Src: /src/gpac/src/quickjs/quickjs.c:28100,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28103,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:28104,1
    - Dst: js_parse_expr_paren
      Src: /src/gpac/src/quickjs/quickjs.c:28106,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28110,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28113,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28115,1
    - Dst: pop_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:28117,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28128,1
    - Dst: set_eval_ret_undefined
      Src: /src/gpac/src/quickjs/quickjs.c:28131,1
    - Dst: js_parse_skip_parens_token
      Src: /src/gpac/src/quickjs/quickjs.c:28135,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28138,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28142,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:28146,1
    - Dst: js_parse_for_in_of
      Src: /src/gpac/src/quickjs/quickjs.c:28151,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:28159,1
    - Dst: is_let
      Src: /src/gpac/src/quickjs/quickjs.c:28163,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28173,1
    - Dst: js_parse_var
      Src: /src/gpac/src/quickjs/quickjs.c:28175,1
    - Dst: js_parse_expr2
      Src: /src/gpac/src/quickjs/quickjs.c:28178,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28180,1
    - Dst: close_scopes
      Src: /src/gpac/src/quickjs/quickjs.c:28184,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:28186,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28189,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28190,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28191,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28192,1
    - Dst: push_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:28194,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28202,1
    - Dst: js_parse_expr
      Src: /src/gpac/src/quickjs/quickjs.c:28203,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28205,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:28207,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28216,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28219,1
    - Dst: js_parse_expr
      Src: /src/gpac/src/quickjs/quickjs.c:28220,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28222,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28224,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:28226,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28230,1
    - Dst: js_parse_statement
      Src: /src/gpac/src/quickjs/quickjs.c:28231,1
    - Dst: close_scopes
      Src: /src/gpac/src/quickjs/quickjs.c:28236,1
    - Dst: dbuf_claim
      Src: /src/gpac/src/quickjs/quickjs.c:28244,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:28245,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:28246,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28256,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28259,1
    - Dst: pop_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:28261,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:28262,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28271,1
    - Dst: emit_break
      Src: /src/gpac/src/quickjs/quickjs.c:28277,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28280,1
    - Dst: js_parse_expect_semi
      Src: /src/gpac/src/quickjs/quickjs.c:28283,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28293,1
    - Dst: set_eval_ret_undefined
      Src: /src/gpac/src/quickjs/quickjs.c:28296,1
    - Dst: js_parse_expr_paren
      Src: /src/gpac/src/quickjs/quickjs.c:28297,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:28300,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28301,1
    - Dst: push_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:28302,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:28305,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28315,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28317,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28321,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28323,1
    - Dst: js_parse_expr
      Src: /src/gpac/src/quickjs/quickjs.c:28324,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:28326,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28328,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28330,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28332,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28333,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28338,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:28340,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28343,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28348,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28355,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:28356,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28361,1
    - Dst: js_parse_statement_or_decl
      Src: /src/gpac/src/quickjs/quickjs.c:28364,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:28368,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:28372,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28376,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28378,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28379,1
    - Dst: pop_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:28381,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:28382,1
    - Dst: set_eval_ret_undefined
      Src: /src/gpac/src/quickjs/quickjs.c:28391,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28392,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28394,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28395,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28396,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28397,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28399,1
    - Dst: push_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:28401,1
    - Dst: js_parse_block
      Src: /src/gpac/src/quickjs/quickjs.c:28405,1
    - Dst: pop_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:28408,1
    - Dst: js_is_live_code
      Src: /src/gpac/src/quickjs/quickjs.c:28410,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28412,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28414,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28415,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28416,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28418,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28422,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:28425,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28426,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28430,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:28432,1
    - Dst: js_parse_destructuring_element
      Src: /src/gpac/src/quickjs/quickjs.c:28437,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28440,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28444,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28445,1
    - Dst: js_define_var
      Src: /src/gpac/src/quickjs/quickjs.c:28446,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28447,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28451,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:28452,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:28453,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:28455,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28459,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:28461,1
    - Dst: push_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:28462,1
    - Dst: js_parse_block
      Src: /src/gpac/src/quickjs/quickjs.c:28466,1
    - Dst: pop_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:28469,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:28470,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:28471,1
    - Dst: js_is_live_code
      Src: /src/gpac/src/quickjs/quickjs.c:28473,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28475,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28478,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28479,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28480,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28481,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28485,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28487,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28488,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28493,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28495,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28496,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28498,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28501,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28505,1
    - Dst: push_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:28508,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:28515,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28518,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:28519,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28520,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:28521,1
    - Dst: set_eval_ret_undefined
      Src: /src/gpac/src/quickjs/quickjs.c:28522,1
    - Dst: js_parse_block
      Src: /src/gpac/src/quickjs/quickjs.c:28525,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28529,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:28530,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28531,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:28532,1
    - Dst: pop_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:28534,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28536,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28537,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28542,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28547,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28552,1
    - Dst: js_parse_expr_paren
      Src: /src/gpac/src/quickjs/quickjs.c:28555,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:28558,1
    - Dst: define_var
      Src: /src/gpac/src/quickjs/quickjs.c:28559,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28563,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28564,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:28565,1
    - Dst: set_eval_ret_undefined
      Src: /src/gpac/src/quickjs/quickjs.c:28567,1
    - Dst: js_parse_statement
      Src: /src/gpac/src/quickjs/quickjs.c:28568,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:28572,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:28579,1
    - Dst: js_parse_error_reserved_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:28584,1
    - Dst: is_let
      Src: /src/gpac/src/quickjs/quickjs.c:28588,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:28597,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:28598,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28601,1
    - Dst: js_parse_function_decl
      Src: /src/gpac/src/quickjs/quickjs.c:28605,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28615,1
    - Dst: js_parse_class
      Src: /src/gpac/src/quickjs/quickjs.c:28618,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28624,1
    - Dst: js_parse_expect_semi
      Src: /src/gpac/src/quickjs/quickjs.c:28626,1
    - Dst: js_unsupported_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:28633,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:28638,1
    - Dst: js_parse_expr
      Src: /src/gpac/src/quickjs/quickjs.c:28639,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28644,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:28645,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28647,1
    - Dst: js_parse_expect_semi
      Src: /src/gpac/src/quickjs/quickjs.c:28649,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28654,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28657,1
    CyclomaticComplexity: 269
    EdgeCount: 269
    ICount: 669
    argCount: 2
    argNames:
    - s
    - decl_mask
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28659
      start: 27900
    functionDepth: 31
    functionLinenumber: 27900
    functionLinenumberEnd: 28659
    functionName: js_parse_statement_or_decl
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - close_scopes
    - js_parse_class
    - JS_FreeAtom
    - push_break_entry
    - dbuf_put
    - js_define_var
    - js_parse_error
    - js_parse_error_reserved_identifier
    - memset
    - token_is_pseudo_keyword
    - put_u32
    - js_parse_expect
    - peek_token
    - next_token
    - js_parse_skip_parens_token
    - emit_return
    - js_parse_expr
    - js_parse_for_in_of
    - emit_break
    - is_label
    - emit_u32
    - pop_break_entry
    - js_parse_var
    - define_var
    - js_parse_block
    - js_is_live_code
    - js_parse_statement
    - emit_op
    - emit_u16
    - js_parse_statement_or_decl
    - dbuf_claim
    - set_eval_ret_undefined
    - emit_label
    - emit_source_pos
    - JS_DupAtom
    - new_label
    - js_parse_expr_paren
    - emit_goto
    - js_parse_function_decl
    - add_var
    - is_let
    - js_parse_expect_semi
    - pop_scope
    - js_parse_expr2
    - js_parse_destructuring_element
    - js_unsupported_keyword
    - push_scope
    linkageType: ''
    returnType: __exception
    signature: "__exception js_parse_statement_or_decl(JSParseState *s,\n                                                  int
      decl_mask)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:28665,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28667,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:28671,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:28681,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28683
      start: 28662
    functionDepth: 5
    functionLinenumber: 28662
    functionLinenumberEnd: 28683
    functionName: js_new_module_def
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_add_tail
    - JS_FreeAtom
    - js_mallocz
    - add_gc_object
    linkageType: ''
    returnType: JSModuleDef
    signature: JSModuleDef *js_new_module_def(JSContext *ctx, JSAtom name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:28692,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:28699,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:28703,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:28704,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:28705,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:28706,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:28707,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:28708,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:28709,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:28710,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - rt
    - m
    - mark_func
    argTypes:
    - JSRuntime*
    - JSModuleDef*
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28711
      start: 28685
    functionDepth: 2
    functionLinenumber: 28685
    functionLinenumberEnd: 28711
    functionName: js_mark_module_def
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - mark_func
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: "void js_mark_module_def(JSRuntime *rt, JSModuleDef *m,\n                               JS_MarkFunc
      *mark_func)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:28717,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:28721,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:28722,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:28724,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:28729,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:28730,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:28731,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:28733,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:28735,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:28739,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:28741,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:28742,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:28744,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:28745,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:28746,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:28747,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:28748,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:28749,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:28750,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:28751,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:28755,1
    - Dst: remove_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:28757,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:28759,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:28761,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 37
    argCount: 2
    argNames:
    - rt
    - m
    argTypes:
    - JSRuntime*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28763
      start: 28713
    functionDepth: 5
    functionLinenumber: 28713
    functionLinenumberEnd: 28763
    functionName: js_free_module_def
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - remove_gc_object
    - JS_FreeAtomRT
    - list_add_tail
    - JS_FreeValueRT
    - free_var_ref
    - js_free_rt
    - list_del
    linkageType: ''
    returnType: void
    signature: void js_free_module_def(JSRuntime *rt, JSModuleDef *m)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:28770,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28776,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - m
    - module_name
    argTypes:
    - JSContext*
    - JSModuleDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28780
      start: 28765
    functionDepth: 5
    functionLinenumber: 28765
    functionLinenumberEnd: 28780
    functionName: add_req_module_entry
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupAtom
    - js_resize_array
    linkageType: ''
    returnType: int
    signature: "int add_req_module_entry(JSContext *ctx, JSModuleDef *m,\n                                JSAtom
      module_name)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - m
    - export_name
    argTypes:
    - JSContext*
    - JSModuleDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28793
      start: 28782
    functionDepth: 0
    functionLinenumber: 28782
    functionLinenumberEnd: 28793
    functionName: find_export_entry
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSExportEntry
    signature: "JSExportEntry *find_export_entry(JSContext *ctx, JSModuleDef *m,\n
      \                                       JSAtom export_name)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: find_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:28802,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28805,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:28806,1
    - Dst: JS_ThrowSyntaxErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28808,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:28813,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:28819,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28820,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28821,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 6
    argNames:
    - ctx
    - s
    - m
    - local_name
    - export_name
    - export_type
    argTypes:
    - JSContext*
    - JSParseState*
    - JSModuleDef*
    - JSAtom
    - JSAtom
    - JSExportTypeEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28824
      start: 28795
    functionDepth: 12
    functionLinenumber: 28795
    functionLinenumberEnd: 28824
    functionName: add_export_entry2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_error
    - js_resize_array
    - find_export_entry
    - memset
    - JS_DupAtom
    - JS_ThrowSyntaxErrorAtom
    - JS_AtomGetStr
    linkageType: ''
    returnType: JSExportEntry
    signature: "JSExportEntry *add_export_entry2(JSContext *ctx,\n                                        JSParseState
      *s, JSModuleDef *m,\n                                       JSAtom local_name,
      JSAtom export_name,\n                                       JSExportTypeEnum
      export_type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: add_export_entry2
      Src: /src/gpac/src/quickjs/quickjs.c:28830,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - s
    - m
    - local_name
    - export_name
    - export_type
    argTypes:
    - JSParseState*
    - JSModuleDef*
    - JSAtom
    - JSAtom
    - JSExportTypeEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28832
      start: 28826
    functionDepth: 13
    functionLinenumber: 28826
    functionLinenumberEnd: 28832
    functionName: add_export_entry
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - add_export_entry2
    linkageType: ''
    returnType: JSExportEntry
    signature: "JSExportEntry *add_export_entry(JSParseState *s, JSModuleDef *m,\n
      \                                      JSAtom local_name, JSAtom export_name,\n
      \                                      JSExportTypeEnum export_type)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:28839,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - m
    - req_module_idx
    argTypes:
    - JSContext*
    - JSModuleDef*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28847
      start: 28834
    functionDepth: 5
    functionLinenumber: 28834
    functionLinenumberEnd: 28847
    functionName: add_star_export_entry
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_resize_array
    linkageType: ''
    returnType: int
    signature: "int add_star_export_entry(JSContext *ctx, JSModuleDef *m,\n                                 int
      req_module_idx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28855,1
    - Dst: js_new_module_def
      Src: /src/gpac/src/quickjs/quickjs.c:28858,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - name_str
    - func
    argTypes:
    - JSContext*
    - char*
    - JSModuleInitFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28863
      start: 28850
    functionDepth: 8
    functionLinenumber: 28850
    functionLinenumberEnd: 28863
    functionName: JS_NewCModule
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 6
    functionsReached:
    - js_new_module_def
    - JS_NewAtom
    linkageType: ''
    returnType: JSModuleDef
    signature: "JSModuleDef *JS_NewCModule(JSContext *ctx, const char *name_str,\n
      \                          JSModuleInitFunc *func)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28869,1
    - Dst: add_export_entry2
      Src: /src/gpac/src/quickjs/quickjs.c:28872,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28874,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - m
    - export_name
    argTypes:
    - JSContext*
    - JSModuleDef*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28879
      start: 28865
    functionDepth: 13
    functionLinenumber: 28865
    functionLinenumberEnd: 28879
    functionName: JS_AddModuleExport
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 6
    functionsReached:
    - JS_NewAtom
    - JS_FreeAtom
    - add_export_entry2
    linkageType: ''
    returnType: int
    signature: int JS_AddModuleExport(JSContext *ctx, JSModuleDef *m, const char *export_name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28886,1
    - Dst: find_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:28889,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28890,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:28893,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:28896,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - m
    - export_name
    - val
    argTypes:
    - JSContext*
    - JSModuleDef*
    - char*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28898
      start: 28881
    functionDepth: 8
    functionLinenumber: 28881
    functionLinenumberEnd: 28898
    functionName: JS_SetModuleExport
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 6
    functionsReached:
    - JS_FreeAtom
    - JS_FreeValue
    - find_export_entry
    - JS_NewAtom
    - set_value
    linkageType: ''
    returnType: int
    signature: "int JS_SetModuleExport(JSContext *ctx, JSModuleDef *m, const char
      *export_name,\n                       JSValue val)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:28902,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ctx
    - m
    - val
    argTypes:
    - JSContext*
    - JSModuleDef*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28904
      start: 28900
    functionDepth: 2
    functionLinenumber: 28900
    functionLinenumberEnd: 28904
    functionName: JS_SetModulePrivateValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - set_value
    linkageType: ''
    returnType: int
    signature: int JS_SetModulePrivateValue(JSContext *ctx, JSModuleDef *m, JSValue
      val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:28908,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28909
      start: 28906
    functionDepth: 1
    functionLinenumber: 28906
    functionLinenumberEnd: 28909
    functionName: JS_GetModulePrivateValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_GetModulePrivateValue(JSContext *ctx, JSModuleDef *m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - rt
    - module_normalize
    - module_loader
    - opaque
    argTypes:
    - JSRuntime*
    - JSModuleNormalizeFunc*
    - JSModuleLoaderFunc*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28920
      start: 28911
    functionDepth: 0
    functionLinenumber: 28911
    functionLinenumberEnd: 28920
    functionName: JS_SetModuleLoaderFunc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void JS_SetModuleLoaderFunc(JSRuntime *rt,\n                            JSModuleNormalizeFunc
      *module_normalize,\n                            JSModuleLoaderFunc *module_loader,
      void *opaque)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 5
    argNames:
    - rt
    - module_normalize
    - module_loader
    - module_check_attrs
    - opaque
    argTypes:
    - JSRuntime*
    - JSModuleNormalizeFunc*
    - JSModuleLoaderFunc2*
    - JSModuleCheckSupportedImportAttributes*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28933
      start: 28922
    functionDepth: 0
    functionLinenumber: 28922
    functionLinenumberEnd: 28933
    functionName: JS_SetModuleLoaderFunc2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void JS_SetModuleLoaderFunc2(JSRuntime *rt,\n                             JSModuleNormalizeFunc
      *module_normalize,\n                             JSModuleLoaderFunc2 *module_loader,\n
      \                            JSModuleCheckSupportedImportAttributes *module_check_attrs,\n
      \                            void *opaque)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: js_strdup
      Src: /src/gpac/src/quickjs/quickjs.c:28947,1
    - Dst: strrchr
      Src: /src/gpac/src/quickjs/quickjs.c:28950,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:28956,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:28957,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:28960,1
    - Dst: strrchr
      Src: /src/gpac/src/quickjs/quickjs.c:28973,1
    - Dst: strcmp
      Src: /src/gpac/src/quickjs/quickjs.c:28978,1
    - Dst: strcmp
      Src: /src/gpac/src/quickjs/quickjs.c:28978,1
    - Dst: pstrcat
      Src: /src/gpac/src/quickjs/quickjs.c:28989,1
    - Dst: pstrcat
      Src: /src/gpac/src/quickjs/quickjs.c:28990,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 40
    argCount: 3
    argNames:
    - ctx
    - base_name
    - name
    argTypes:
    - JSContext*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28993
      start: 28936
    functionDepth: 5
    functionLinenumber: 28936
    functionLinenumberEnd: 28993
    functionName: js_default_module_normalize_name
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - strrchr
    - js_strdup
    - memcpy
    - js_malloc
    - strcmp
    - pstrcat
    - strlen
    linkageType: ''
    returnType: char
    signature: "char *js_default_module_normalize_name(JSContext *ctx,\n                                              const
      char *base_name,\n                                              const char *name)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:29001,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29002,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29007
      start: 28995
    functionDepth: 1
    functionLinenumber: 28995
    functionLinenumberEnd: 29007
    functionName: js_find_loaded_module
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_entry
    - list_for_each
    linkageType: ''
    returnType: JSModuleDef
    signature: JSModuleDef *js_find_loaded_module(JSContext *ctx, JSAtom name)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: js_default_module_normalize_name
      Src: /src/gpac/src/quickjs/quickjs.c:29021,1
    - Dst: JSRuntime*::module_normalize_func
      Src: /src/gpac/src/quickjs/quickjs.c:29023,1
    - Dst: JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:29029,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:29031,1
    - Dst: js_find_loaded_module
      Src: /src/gpac/src/quickjs/quickjs.c:29036,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:29038,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:29039,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:29043,1
    - Dst: JS_ThrowReferenceError
      Src: /src/gpac/src/quickjs/quickjs.c:29048,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:29050,1
    - Dst: JSRuntime*::u::module_loader_func2
      Src: /src/gpac/src/quickjs/quickjs.c:29054,1
    - Dst: JSRuntime*::u::module_loader_func
      Src: /src/gpac/src/quickjs/quickjs.c:29056,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:29058,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 32
    argCount: 4
    argNames:
    - ctx
    - base_cname
    - cname1
    - attributes
    argTypes:
    - JSContext*
    - char*
    - char*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29060
      start: 29010
    functionDepth: 12
    functionLinenumber: 29010
    functionLinenumberEnd: 29060
    functionName: js_host_resolve_imported_module
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_find_loaded_module
    - JSRuntime*::u::module_loader_func
    - JS_FreeAtom
    - js_default_module_normalize_name
    - JSRuntime*::module_normalize_func
    - JS_ThrowReferenceError
    - JS_NewAtom
    - JSRuntime*::u::module_loader_func2
    - js_free
    linkageType: ''
    returnType: JSModuleDef
    signature: "JSModuleDef *js_host_resolve_imported_module(JSContext *ctx,\n                                                    const
      char *base_cname,\n                                                    const
      char *cname1,\n                                                    JSValueConst
      attributes)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_AtomToCString
      Src: /src/gpac/src/quickjs/quickjs.c:29070,1
    - Dst: JS_AtomToCString
      Src: /src/gpac/src/quickjs/quickjs.c:29073,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:29075,1
    - Dst: js_host_resolve_imported_module
      Src: /src/gpac/src/quickjs/quickjs.c:29078,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:29079,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:29080,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 4
    argNames:
    - ctx
    - base_module_name
    - module_name1
    - attributes
    argTypes:
    - JSContext*
    - JSAtom
    - JSAtom
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29082
      start: 29062
    functionDepth: 13
    functionLinenumber: 29062
    functionLinenumberEnd: 29082
    functionName: js_host_resolve_imported_module_atom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AtomToCString
    - js_host_resolve_imported_module
    - JS_FreeCString
    linkageType: ''
    returnType: JSModuleDef
    signature: "JSModuleDef *js_host_resolve_imported_module_atom(JSContext *ctx,\n
      \                                                        JSAtom base_module_name,\n
      \                                                        JSAtom module_name1,\n
      \                                                        JSValueConst attributes)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 3
    argNames:
    - s
    - m
    - name
    argTypes:
    - JSResolveState*
    - JSModuleDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29105
      start: 29095
    functionDepth: 0
    functionLinenumber: 29095
    functionLinenumberEnd: 29105
    functionName: find_resolve_entry
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int find_resolve_entry(JSResolveState *s,\n                              JSModuleDef
      *m, JSAtom name)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:29112,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:29118,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - s
    - m
    - name
    argTypes:
    - JSContext*
    - JSResolveState*
    - JSModuleDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29120
      start: 29107
    functionDepth: 5
    functionLinenumber: 29107
    functionLinenumberEnd: 29120
    functionName: add_resolve_entry
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupAtom
    - js_resize_array
    linkageType: ''
    returnType: int
    signature: "int add_resolve_entry(JSContext *ctx, JSResolveState *s,\n                             JSModuleDef
      *m, JSAtom name)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: find_resolve_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29141,1
    - Dst: add_resolve_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29143,1
    - Dst: find_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29145,1
    - Dst: js_resolve_export1
      Src: /src/gpac/src/quickjs/quickjs.c:29162,1
    - Dst: js_resolve_export1
      Src: /src/gpac/src/quickjs/quickjs.c:29178,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 49
    argCount: 6
    argNames:
    - ctx
    - pmodule
    - pme
    - m
    - export_name
    - s
    argTypes:
    - JSContext*
    - JSModuleDef**
    - JSExportEntry**
    - JSModuleDef*
    - JSAtom
    - JSResolveState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29202
      start: 29130
    functionDepth: 6
    functionLinenumber: 29130
    functionLinenumberEnd: 29202
    functionName: js_resolve_export1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - find_resolve_entry
    - js_resolve_export1
    - add_resolve_entry
    - find_export_entry
    linkageType: ''
    returnType: JSResolveResultEnum
    signature: "JSResolveResultEnum js_resolve_export1(JSContext *ctx,\n                                              JSModuleDef
      **pmodule,\n                                              JSExportEntry **pme,\n
      \                                             JSModuleDef *m,\n                                              JSAtom
      export_name,\n                                              JSResolveState *s)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_resolve_export1
      Src: /src/gpac/src/quickjs/quickjs.c:29221,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:29224,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:29225,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - ctx
    - pmodule
    - pme
    - m
    - export_name
    argTypes:
    - JSContext*
    - JSModuleDef**
    - JSExportEntry**
    - JSModuleDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29228
      start: 29207
    functionDepth: 7
    functionLinenumber: 29207
    functionLinenumberEnd: 29228
    functionName: js_resolve_export
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - js_resolve_export1
    - js_free
    linkageType: ''
    returnType: JSResolveResultEnum
    signature: "JSResolveResultEnum js_resolve_export(JSContext *ctx,\n                                             JSModuleDef
      **pmodule,\n                                             JSExportEntry **pme,\n
      \                                            JSModuleDef *m,\n                                             JSAtom
      export_name)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:29241,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:29242,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:29243,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:29246,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:29247,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:29248,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:29251,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:29252,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:29253,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 4
    argNames:
    - ctx
    - res
    - m
    - export_name
    argTypes:
    - JSContext*
    - JSResolveResultEnum
    - JSModuleDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29256
      start: 29230
    functionDepth: 12
    functionLinenumber: 29230
    functionLinenumberEnd: 29256
    functionName: js_resolve_export_throw_error
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowSyntaxError
    - JS_AtomGetStr
    linkageType: ''
    returnType: void
    signature: "void js_resolve_export_throw_error(JSContext *ctx,\n                                          JSResolveResultEnum
      res,\n                                          JSModuleDef *m, JSAtom export_name)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - s
    - name
    argTypes:
    - GetExportNamesState*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29292
      start: 29284
    functionDepth: 0
    functionLinenumber: 29284
    functionLinenumberEnd: 29292
    functionName: find_exported_name
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int find_exported_name(GetExportNamesState *s, JSAtom name)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:29306,1
    - Dst: find_exported_name
      Src: /src/gpac/src/quickjs/quickjs.c:29315,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:29317,1
    - Dst: get_exported_names
      Src: /src/gpac/src/quickjs/quickjs.c:29337,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 31
    argCount: 4
    argNames:
    - ctx
    - s
    - m
    - from_star
    argTypes:
    - JSContext*
    - GetExportNamesState*
    - JSModuleDef*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29341
      start: 29294
    functionDepth: 5
    functionLinenumber: 29294
    functionLinenumberEnd: 29341
    functionName: get_exported_names
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - find_exported_name
    - js_resize_array
    - get_exported_names
    linkageType: ''
    returnType: __exception
    signature: "__exception get_exported_names(JSContext *ctx,\n                                          GetExportNamesState
      *s,\n                                          JSModuleDef *m, BOOL from_star)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: find_own_property1
      Src: /src/gpac/src/quickjs/quickjs.c:29346,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:29346,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - obj
    - atom
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29347
      start: 29344
    functionDepth: 1
    functionLinenumber: 29344
    functionLinenumberEnd: 29347
    functionName: js_module_ns_has
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - find_own_property1
    linkageType: ''
    returnType: int
    signature: int js_module_ns_has(JSContext *ctx, JSValueConst obj, JSAtom atom)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:29362,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:29363,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:29364,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:29364,1
    - Dst: js_string_compare
      Src: /src/gpac/src/quickjs/quickjs.c:29368,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:29368,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:29369,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:29371,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:29372,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - p1
    - p2
    - opaque
    argTypes:
    - void*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29374
      start: 29353
    functionDepth: 3
    functionLinenumber: 29353
    functionLinenumberEnd: 29374
    functionName: exported_names_cmp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - JS_AtomToString
    - js_string_compare
    linkageType: ''
    returnType: int
    signature: int exported_names_cmp(const void *p1, const void *p2, void *opaque)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_resolve_export
      Src: /src/gpac/src/quickjs/quickjs.c:29385,1
    - Dst: js_resolve_export_throw_error
      Src: /src/gpac/src/quickjs/quickjs.c:29388,1
    - Dst: JS_GetModuleNamespace
      Src: /src/gpac/src/quickjs/quickjs.c:29392,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:29397,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:29401,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - p
    - atom
    - opaque
    argTypes:
    - JSContext*
    - JSObject*
    - JSAtom
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29403
      start: 29376
    functionDepth: 13
    functionLinenumber: 29376
    functionLinenumberEnd: 29403
    functionName: js_module_ns_autoinit
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_resolve_export
    - JS_MKPTR
    - JS_VALUE_GET_OBJ
    - js_resolve_export_throw_error
    - JS_GetModuleNamespace
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_module_ns_autoinit(JSContext *ctx, JSObject *p, JSAtom
      atom,\n                                     void *opaque)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:29413,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:29414,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:29416,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:29418,1
    - Dst: get_exported_names
      Src: /src/gpac/src/quickjs/quickjs.c:29419,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:29420,1
    - Dst: js_resolve_export
      Src: /src/gpac/src/quickjs/quickjs.c:29436,1
    - Dst: js_resolve_export_throw_error
      Src: /src/gpac/src/quickjs/quickjs.c:29441,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:29452,1
    - Dst: rqsort
      Src: /src/gpac/src/quickjs/quickjs.c:29464,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:29473,1
    - Dst: JS_DefineAutoInitProperty
      Src: /src/gpac/src/quickjs/quickjs.c:29485,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:29495,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:29497,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:29498,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:29504,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:29505,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 69
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29507
      start: 29405
    functionDepth: 18
    functionLinenumber: 29405
    functionLinenumberEnd: 29507
    functionName: js_build_module_ns
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - js_resolve_export
    - JS_DefinePropertyValue
    - JS_IsException
    - js_free
    - JS_DefineAutoInitProperty
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - add_property
    - memset
    - JS_AtomToString
    - js_resolve_export_throw_error
    - rqsort
    - get_exported_names
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_build_module_ns(JSContext *ctx, JSModuleDef *m)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:29511,1
    - Dst: js_build_module_ns
      Src: /src/gpac/src/quickjs/quickjs.c:29513,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:29514,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:29518,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29519
      start: 29509
    functionDepth: 19
    functionLinenumber: 29509
    functionLinenumberEnd: 29519
    functionName: JS_GetModuleNamespace
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_build_module_ns
    - JS_IsException
    - JS_DupValue
    - JS_IsUndefined
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_GetModuleNamespace(JSContext *ctx, JSModuleDef *m)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:29532,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:29532,1
    - Dst: js_host_resolve_imported_module_atom
      Src: /src/gpac/src/quickjs/quickjs.c:29539,1
    - Dst: js_resolve_module
      Src: /src/gpac/src/quickjs/quickjs.c:29547,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29551
      start: 29522
    functionDepth: 14
    functionLinenumber: 29522
    functionLinenumberEnd: 29551
    functionName: js_resolve_module
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_resolve_module
    - printf
    - js_host_resolve_imported_module_atom
    - JS_AtomGetStr
    linkageType: ''
    returnType: int
    signature: int js_resolve_module(JSContext *ctx, JSModuleDef *m)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:29556,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:29566,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - is_lexical
    argTypes:
    - JSContext*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29568
      start: 29553
    functionDepth: 3
    functionLinenumber: 29553
    functionLinenumberEnd: 29568
    functionName: js_create_module_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc
    - add_gc_object
    linkageType: ''
    returnType: JSVarRef
    signature: JSVarRef *js_create_module_var(JSContext *ctx, BOOL is_lexical)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:29580,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:29583,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:29585,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:29587,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:29593,1
    - Dst: js_create_module_var
      Src: /src/gpac/src/quickjs/quickjs.c:29604,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:29608,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:29615,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:29618,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29620
      start: 29571
    functionDepth: 9
    functionLinenumber: 29571
    functionLinenumberEnd: 29620
    functionName: js_create_module_bytecode_function
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_PTR
    - printf
    - JS_IsException
    - JS_FreeValue
    - JS_NewObjectProtoClass
    - JS_VALUE_GET_OBJ
    - js_mallocz
    - js_create_module_var
    linkageType: ''
    returnType: int
    signature: int js_create_module_bytecode_function(JSContext *ctx, JSModuleDef
      *m)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: js_create_module_var
      Src: /src/gpac/src/quickjs/quickjs.c:29639,1
    - Dst: js_create_module_bytecode_function
      Src: /src/gpac/src/quickjs/quickjs.c:29646,1
    - Dst: js_create_module_function
      Src: /src/gpac/src/quickjs/quickjs.c:29655,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29660
      start: 29623
    functionDepth: 10
    functionLinenumber: 29623
    functionLinenumberEnd: 29660
    functionName: js_create_module_function
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_create_module_var
    - js_create_module_function
    - js_create_module_bytecode_function
    linkageType: ''
    returnType: int
    signature: int js_create_module_function(JSContext *ctx, JSModuleDef *m)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:29676,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:29677,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:29684,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:29684,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:29694,1
    - Dst: js_inner_module_linking
      Src: /src/gpac/src/quickjs/quickjs.c:29706,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:29709,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:29714,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:29722,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:29722,1
    - Dst: js_resolve_export
      Src: /src/gpac/src/quickjs/quickjs.c:29734,1
    - Dst: js_resolve_export_throw_error
      Src: /src/gpac/src/quickjs/quickjs.c:29736,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:29744,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:29747,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:29747,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:29748,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:29748,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:29749,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:29757,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:29763,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:29764,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:29765,1
    - Dst: JS_GetModuleNamespace
      Src: /src/gpac/src/quickjs/quickjs.c:29771,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:29772,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:29774,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:29776,1
    - Dst: js_resolve_export
      Src: /src/gpac/src/quickjs/quickjs.c:29784,1
    - Dst: js_resolve_export_throw_error
      Src: /src/gpac/src/quickjs/quickjs.c:29787,1
    - Dst: JS_GetModuleNamespace
      Src: /src/gpac/src/quickjs/quickjs.c:29795,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:29796,1
    - Dst: js_create_module_var
      Src: /src/gpac/src/quickjs/quickjs.c:29798,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:29800,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:29803,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:29806,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:29811,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:29817,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:29836,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:29837,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:29839,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:29842,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:29855,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 128
    argCount: 4
    argNames:
    - ctx
    - m
    - pstack_top
    - index
    argTypes:
    - JSContext*
    - JSModuleDef*
    - JSModuleDef**
    - int
    assertStmts:
    - condition: "(m1->status == JS_MODULE_STATUS_LINKING ||\n               m1->status
        == JS_MODULE_STATUS_LINKED ||\n               m1->status == JS_MODULE_STATUS_EVALUATING_ASYNC
        ||\n               m1->status == JS_MODULE_STATUS_EVALUATED)"
      pos:
        line_end: 29711
        line_start: 29708
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (m->dfs_ancestor_index <= m->dfs_index)
      pos:
        line_end: 29841
        line_start: 29841
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (m->status == JS_MODULE_STATUS_UNLINKED)
      pos:
        line_end: 29693
        line_start: 29693
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 29860
      start: 29665
    functionDepth: 23
    functionLinenumber: 29665
    functionLinenumberEnd: 29860
    functionName: js_inner_module_linking
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_check_stack_overflow
    - printf
    - js_resolve_export_throw_error
    - js_resolve_export
    - JS_Call
    - JS_IsException
    - min_int
    - JS_FreeValue
    - assert
    - JS_VALUE_GET_OBJ
    - print_atom
    - JS_ThrowStackOverflow
    - js_create_module_var
    - js_inner_module_linking
    - set_value
    - JS_AtomGetStr
    - JS_GetModuleNamespace
    linkageType: ''
    returnType: int
    signature: "int js_inner_module_linking(JSContext *ctx, JSModuleDef *m,\n                                   JSModuleDef
      **pstack_top, int index)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:29871,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:29871,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:29874,1
    - Dst: js_inner_module_linking
      Src: /src/gpac/src/quickjs/quickjs.c:29879,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:29882,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:29888,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:29889,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts:
    - condition: (m1->status == JS_MODULE_STATUS_LINKING)
      pos:
        line_end: 29881
        line_start: 29881
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: "(m->status == JS_MODULE_STATUS_UNLINKED ||\n           m->status
        == JS_MODULE_STATUS_LINKED ||\n           m->status == JS_MODULE_STATUS_EVALUATING_ASYNC
        ||\n           m->status == JS_MODULE_STATUS_EVALUATED)"
      pos:
        line_end: 29876
        line_start: 29873
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (stack_top == NULL)
      pos:
        line_end: 29887
        line_start: 29887
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: "(m->status == JS_MODULE_STATUS_LINKED ||\n           m->status ==
        JS_MODULE_STATUS_EVALUATING_ASYNC ||\n           m->status == JS_MODULE_STATUS_EVALUATED)"
      pos:
        line_end: 29890
        line_start: 29888
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 29893
      start: 29864
    functionDepth: 24
    functionLinenumber: 29864
    functionLinenumberEnd: 29893
    functionName: js_link_module
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_inner_module_linking
    - printf
    - JS_AtomGetStr
    - assert
    linkageType: ''
    returnType: int
    signature: int js_link_module(JSContext *ctx, JSModuleDef *m)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:29914,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:29916,1
    - Dst: js_class_has_bytecode
      Src: /src/gpac/src/quickjs/quickjs.c:29917,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:29923,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 2
    argNames:
    - ctx
    - n_stack_levels
    argTypes:
    - JSContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29930
      start: 29897
    functionDepth: 2
    functionLinenumber: 29897
    functionLinenumberEnd: 29930
    functionName: JS_GetScriptOrModuleName
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_DupAtom
    - JS_VALUE_GET_TAG
    - js_class_has_bytecode
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom JS_GetScriptOrModuleName(JSContext *ctx, int n_stack_levels)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:29934,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29935
      start: 29932
    functionDepth: 2
    functionLinenumber: 29932
    functionLinenumberEnd: 29935
    functionName: JS_GetModuleName
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupAtom
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom JS_GetModuleName(JSContext *ctx, JSModuleDef *m)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:29942,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:29943,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:29944,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:29948,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29949
      start: 29937
    functionDepth: 10
    functionLinenumber: 29937
    functionLinenumberEnd: 29949
    functionName: JS_GetImportMeta
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_NewObjectProto
    - JS_DupValue
    - JS_IsUndefined
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_GetImportMeta(JSContext *ctx, JSModuleDef *m)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetScriptOrModuleName
      Src: /src/gpac/src/quickjs/quickjs.c:29956,1
    - Dst: js_find_loaded_module
      Src: /src/gpac/src/quickjs/quickjs.c:29962,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:29963,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:29966,1
    - Dst: JS_GetImportMeta
      Src: /src/gpac/src/quickjs/quickjs.c:29969,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29970
      start: 29951
    functionDepth: 12
    functionLinenumber: 29951
    functionLinenumberEnd: 29970
    functionName: js_import_meta
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - js_find_loaded_module
    - JS_FreeAtom
    - JS_ThrowTypeError
    - JS_GetImportMeta
    - JS_GetScriptOrModuleName
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_import_meta(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:29974,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:29974,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29975
      start: 29972
    functionDepth: 1
    functionLinenumber: 29972
    functionLinenumberEnd: 29975
    functionName: JS_NewModuleValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - JS_DupValue
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_NewModuleValue(JSContext *ctx, JSModuleDef *m)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:29989,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:29991,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    - func_data
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29993
      start: 29977
    functionDepth: 23
    functionLinenumber: 29977
    functionLinenumberEnd: 29993
    functionName: js_load_module_rejected
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - JS_Call
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_load_module_rejected(JSContext *ctx, JSValueConst this_val,\n
      \                                      int argc, JSValueConst *argv, int magic,
      JSValue *func_data)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:29999,1
    - Dst: JS_GetModuleNamespace
      Src: /src/gpac/src/quickjs/quickjs.c:30003,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30004,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:30005,1
    - Dst: js_load_module_rejected
      Src: /src/gpac/src/quickjs/quickjs.c:30006,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:30009,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30011,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30012,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    - func_data
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30014
      start: 29995
    functionDepth: 24
    functionLinenumber: 29995
    functionLinenumberEnd: 30014
    functionName: js_load_module_fulfilled
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_PTR
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_GetModuleNamespace
    - JS_GetException
    - js_load_module_rejected
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_load_module_fulfilled(JSContext *ctx, JSValueConst this_val,\n
      \                                       int argc, JSValueConst *argv, int magic,
      JSValue *func_data)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_host_resolve_imported_module
      Src: /src/gpac/src/quickjs/quickjs.c:30026,1
    - Dst: js_resolve_module
      Src: /src/gpac/src/quickjs/quickjs.c:30030,1
    - Dst: js_free_modules
      Src: /src/gpac/src/quickjs/quickjs.c:30031,1
    - Dst: JS_NewModuleValue
      Src: /src/gpac/src/quickjs/quickjs.c:30036,1
    - Dst: JS_EvalFunction
      Src: /src/gpac/src/quickjs/quickjs.c:30037,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30038,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:30040,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:30041,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30043,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30044,1
    - Dst: JS_NewModuleValue
      Src: /src/gpac/src/quickjs/quickjs.c:30048,1
    - Dst: JS_NewCFunctionData
      Src: /src/gpac/src/quickjs/quickjs.c:30052,1
    - Dst: JS_NewCFunctionData
      Src: /src/gpac/src/quickjs/quickjs.c:30053,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30054,1
    - Dst: js_promise_then
      Src: /src/gpac/src/quickjs/quickjs.c:30055,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30056,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30057,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30058,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30059,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 5
    argNames:
    - ctx
    - basename
    - filename
    - resolving_funcs
    - attributes
    argTypes:
    - JSContext*
    - char*
    - char*
    - JSValueConst*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30060
      start: 30016
    functionDepth: 23
    functionLinenumber: 30016
    functionLinenumberEnd: 30060
    functionName: JS_LoadModuleInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_host_resolve_imported_module
    - js_resolve_module
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_EvalFunction
    - JS_NewCFunctionData
    - js_promise_then
    - JS_GetException
    - js_free_modules
    - JS_NewModuleValue
    linkageType: ''
    returnType: void
    signature: "void JS_LoadModuleInternal(JSContext *ctx, const char *basename,\n
      \                                 const char *filename,\n                                  JSValueConst
      *resolving_funcs,\n                                  JSValueConst attributes)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewPromiseCapability
      Src: /src/gpac/src/quickjs/quickjs.c:30069,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30070,1
    - Dst: JS_LoadModuleInternal
      Src: /src/gpac/src/quickjs/quickjs.c:30072,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30074,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30075,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - basename
    - filename
    argTypes:
    - JSContext*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30077
      start: 30064
    functionDepth: 24
    functionLinenumber: 30064
    functionLinenumberEnd: 30077
    functionName: JS_LoadModule
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_FreeValue
    - JS_LoadModuleInternal
    - JS_NewPromiseCapability
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_LoadModule(JSContext *ctx, const char *basename,\n                      const
      char *filename)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:30089,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:30090,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/quickjs/quickjs.c:30093,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/quickjs/quickjs.c:30097,1
    - Dst: JS_LoadModuleInternal
      Src: /src/gpac/src/quickjs/quickjs.c:30101,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:30103,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:30104,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:30107,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:30108,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30110,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30111,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:30112,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 3
    argNames:
    - ctx
    - argc
    - argv
    argTypes:
    - JSContext*
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30114
      start: 30079
    functionDepth: 24
    functionLinenumber: 30079
    functionLinenumberEnd: 30114
    functionName: js_dynamic_import_job
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_LoadModuleInternal
    - JS_ToCString
    - JS_IsString
    - JS_ThrowTypeError
    - JS_Call
    - JS_FreeValue
    - JS_GetException
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_dynamic_import_job(JSContext *ctx,\n                                     int
      argc, JSValueConst *argv)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetScriptOrModuleName
      Src: /src/gpac/src/quickjs/quickjs.c:30123,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:30127,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30128,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30129,1
    - Dst: JS_NewPromiseCapability
      Src: /src/gpac/src/quickjs/quickjs.c:30132,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30133,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30134,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:30139,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30140,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:30143,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:30144,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:30145,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:30148,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30149,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:30151,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:30156,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:30157,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:30160,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:30161,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:30161,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:30166,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30167,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:30169,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30170,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:30171,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:30174,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:30177,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:30181,1
    - Dst: JSContext*::rt::module_check_attrs
      Src: /src/gpac/src/quickjs/quickjs.c:30183,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30186,1
    - Dst: JS_EnqueueJob
      Src: /src/gpac/src/quickjs/quickjs.c:30198,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30200,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30201,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30202,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30203,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30204,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30207,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:30208,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:30209,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30211,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30212,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 88
    argCount: 3
    argNames:
    - ctx
    - specifier
    - options
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30214
      start: 30116
    functionDepth: 23
    functionLinenumber: 30116
    functionLinenumberEnd: 30214
    functionName: js_dynamic_import
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_FreeAtom
    - JS_NewPromiseCapability
    - JS_ToString
    - JSContext*::rt::module_check_attrs
    - JS_GetException
    - JS_IsString
    - JS_IsUndefined
    - JS_IsObject
    - JS_GetProperty
    - JS_AtomToValue
    - JS_FreePropertyEnum
    - JS_DefinePropertyValue
    - JS_EnqueueJob
    - JS_NewObjectProto
    - JS_GetScriptOrModuleName
    - JS_GetOwnPropertyNamesInternal
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_Call
    - JS_VALUE_GET_OBJ
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_dynamic_import(JSContext *ctx, JSValueConst specifier, JSValueConst
      options)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:30219,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30221,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:30223,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30225,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts:
    - condition: (m->cycle_root == m)
      pos:
        line_end: 30220
        line_start: 30220
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 30227
      start: 30216
    functionDepth: 23
    functionLinenumber: 30216
    functionLinenumberEnd: 30227
    functionName: js_set_module_evaluated
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - assert
    - JS_IsUndefined
    - JS_Call
    linkageType: ''
    returnType: void
    signature: void js_set_module_evaluated(JSContext *ctx, JSModuleDef *m)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - exec_list
    - m
    argTypes:
    - ExecModuleList*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30244
      start: 30236
    functionDepth: 0
    functionLinenumber: 30236
    functionLinenumberEnd: 30244
    functionName: find_in_exec_module_list
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL find_in_exec_module_list(ExecModuleList *exec_list, JSModuleDef
      *m)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:30251,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:30252,1
    - Dst: find_in_exec_module_list
      Src: /src/gpac/src/quickjs/quickjs.c:30257,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30259,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30260,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30261,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30262,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:30265,1
    - Dst: gather_available_ancestors
      Src: /src/gpac/src/quickjs/quickjs.c:30270,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 3
    argNames:
    - ctx
    - module
    - exec_list
    argTypes:
    - JSContext*
    - JSModuleDef*
    - ExecModuleList*
    assertStmts:
    - condition: (m->status == JS_MODULE_STATUS_EVALUATING_ASYNC)
      pos:
        line_end: 30258
        line_start: 30258
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (!m->eval_has_exception)
      pos:
        line_end: 30259
        line_start: 30259
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (m->async_evaluation)
      pos:
        line_end: 30260
        line_start: 30260
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (m->pending_async_dependencies > 0)
      pos:
        line_end: 30261
        line_start: 30261
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 30277
      start: 30246
    functionDepth: 13
    functionLinenumber: 30246
    functionLinenumberEnd: 30277
    functionName: gather_available_ancestors
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_check_stack_overflow
    - gather_available_ancestors
    - assert
    - js_resize_array
    - JS_ThrowStackOverflow
    - find_in_exec_module_list
    linkageType: ''
    returnType: int
    signature: "int gather_available_ancestors(JSContext *ctx, JSModuleDef *module,\n
      \                                     ExecModuleList *exec_list)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - p1
    - p2
    - opaque
    argTypes:
    - void*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30285
      start: 30279
    functionDepth: 0
    functionLinenumber: 30279
    functionLinenumberEnd: 30285
    functionName: exec_module_list_cmp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int exec_module_list_cmp(const void *p1, const void *p2, void *opaque)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:30295,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:30295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - str
    - m
    argTypes:
    - JSContext*
    - char*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30296
      start: 30291
    functionDepth: 3
    functionLinenumber: 30291
    functionLinenumberEnd: 30296
    functionName: js_dump_module
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - JS_AtomGetStr
    linkageType: ''
    returnType: void
    signature: void js_dump_module(JSContext *ctx, const char *str, JSModuleDef *m)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:30302,1
    - Dst: js_dump_module
      Src: /src/gpac/src/quickjs/quickjs.c:30307,1
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:30309,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:30310,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30313,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30317,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30318,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30319,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:30322,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:30326,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30328,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:30329,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30331,1
    - Dst: JS_NewModuleValue
      Src: /src/gpac/src/quickjs/quickjs.c:30336,1
    - Dst: js_async_module_execution_rejected
      Src: /src/gpac/src/quickjs/quickjs.c:30337,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30339,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    - func_data
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    - JSValue*
    assertStmts:
    - condition: (module->eval_has_exception)
      pos:
        line_end: 30312
        line_start: 30312
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (module->status == JS_MODULE_STATUS_EVALUATING_ASYNC)
      pos:
        line_end: 30316
        line_start: 30316
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (!module->eval_has_exception)
      pos:
        line_end: 30317
        line_start: 30317
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (module->async_evaluation)
      pos:
        line_end: 30318
        line_start: 30318
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (module->cycle_root == module)
      pos:
        line_end: 30327
        line_start: 30327
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 30342
      start: 30299
    functionDepth: 23
    functionLinenumber: 30299
    functionLinenumberEnd: 30342
    functionName: js_async_module_execution_rejected
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_check_stack_overflow
    - JS_DupValue
    - JS_VALUE_GET_PTR
    - js_dump_module
    - js_async_module_execution_rejected
    - JS_Call
    - JS_FreeValue
    - assert
    - JS_IsUndefined
    - JS_ThrowStackOverflow
    - JS_NewModuleValue
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_async_module_execution_rejected(JSContext *ctx, JSValueConst
      this_val,\n                                                  int argc, JSValueConst
      *argv, int magic, JSValue *func_data)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:30347,1
    - Dst: js_dump_module
      Src: /src/gpac/src/quickjs/quickjs.c:30352,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30355,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30358,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30359,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30360,1
    - Dst: js_set_module_evaluated
      Src: /src/gpac/src/quickjs/quickjs.c:30362,1
    - Dst: gather_available_ancestors
      Src: /src/gpac/src/quickjs/quickjs.c:30368,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:30369,1
    - Dst: rqsort
      Src: /src/gpac/src/quickjs/quickjs.c:30374,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:30380,1
    - Dst: js_dump_module
      Src: /src/gpac/src/quickjs/quickjs.c:30380,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30383,1
    - Dst: js_execute_async_module
      Src: /src/gpac/src/quickjs/quickjs.c:30385,1
    - Dst: js_execute_sync_module
      Src: /src/gpac/src/quickjs/quickjs.c:30388,1
    - Dst: JS_NewModuleValue
      Src: /src/gpac/src/quickjs/quickjs.c:30389,1
    - Dst: js_async_module_execution_rejected
      Src: /src/gpac/src/quickjs/quickjs.c:30390,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30393,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30394,1
    - Dst: js_set_module_evaluated
      Src: /src/gpac/src/quickjs/quickjs.c:30397,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:30401,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 40
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    - func_data
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    - JSValue*
    assertStmts:
    - condition: (!module->eval_has_exception)
      pos:
        line_end: 30358
        line_start: 30358
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (module->async_evaluation)
      pos:
        line_end: 30359
        line_start: 30359
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (m->eval_has_exception)
      pos:
        line_end: 30382
        line_start: 30382
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (module->eval_has_exception)
      pos:
        line_end: 30354
        line_start: 30354
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (module->status == JS_MODULE_STATUS_EVALUATING_ASYNC)
      pos:
        line_end: 30357
        line_start: 30357
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 30403
      start: 30344
    functionDepth: 24
    functionLinenumber: 30344
    functionLinenumberEnd: 30403
    functionName: js_async_module_execution_fulfilled
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewModuleValue
    - JS_VALUE_GET_PTR
    - gather_available_ancestors
    - js_dump_module
    - printf
    - js_async_module_execution_rejected
    - js_execute_sync_module
    - JS_FreeValue
    - assert
    - js_execute_async_module
    - js_set_module_evaluated
    - rqsort
    - js_free
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_async_module_execution_fulfilled(JSContext *ctx, JSValueConst
      this_val,\n                                                   int argc, JSValueConst
      *argv, int magic, JSValue *func_data)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_dump_module
      Src: /src/gpac/src/quickjs/quickjs.c:30410,1
    - Dst: js_async_function_call
      Src: /src/gpac/src/quickjs/quickjs.c:30412,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30413,1
    - Dst: JS_NewModuleValue
      Src: /src/gpac/src/quickjs/quickjs.c:30415,1
    - Dst: JS_NewCFunctionData
      Src: /src/gpac/src/quickjs/quickjs.c:30416,1
    - Dst: JS_NewCFunctionData
      Src: /src/gpac/src/quickjs/quickjs.c:30417,1
    - Dst: js_promise_then
      Src: /src/gpac/src/quickjs/quickjs.c:30418,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30419,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30420,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30421,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30422,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30423,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30425
      start: 30405
    functionDepth: 25
    functionLinenumber: 30405
    functionLinenumberEnd: 30425
    functionName: js_execute_async_module
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_dump_module
    - JS_IsException
    - JS_FreeValue
    - js_async_function_call
    - JS_NewCFunctionData
    - js_promise_then
    - JS_NewModuleValue
    linkageType: ''
    returnType: int
    signature: int js_execute_async_module(JSContext *ctx, JSModuleDef *m)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: js_dump_module
      Src: /src/gpac/src/quickjs/quickjs.c:30432,1
    - Dst: JSModuleDef*::init_func
      Src: /src/gpac/src/quickjs/quickjs.c:30436,1
    - Dst: js_async_function_call
      Src: /src/gpac/src/quickjs/quickjs.c:30442,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30443,1
    - Dst: JS_PromiseState
      Src: /src/gpac/src/quickjs/quickjs.c:30445,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30447,1
    - Dst: JS_PromiseResult
      Src: /src/gpac/src/quickjs/quickjs.c:30449,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30450,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30453,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:30454,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:30456,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 3
    argNames:
    - ctx
    - m
    - pvalue
    argTypes:
    - JSContext*
    - JSModuleDef*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30462
      start: 30428
    functionDepth: 25
    functionLinenumber: 30428
    functionLinenumberEnd: 30462
    functionName: js_execute_sync_module
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_dump_module
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_PromiseState
    - js_async_function_call
    - JSModuleDef*::init_func
    - JS_PromiseResult
    - JS_GetException
    linkageType: ''
    returnType: int
    signature: "int js_execute_sync_module(JSContext *ctx, JSModuleDef *m,\n                                  JSValue
      *pvalue)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: js_dump_module
      Src: /src/gpac/src/quickjs/quickjs.c:30474,1
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:30477,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:30478,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:30479,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:30486,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30497,1
    - Dst: js_inner_module_evaluation
      Src: /src/gpac/src/quickjs/quickjs.c:30511,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30514,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:30518,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30522,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:30525,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:30531,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:30532,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30540,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30545,1
    - Dst: js_execute_async_module
      Src: /src/gpac/src/quickjs/quickjs.c:30549,1
    - Dst: js_execute_sync_module
      Src: /src/gpac/src/quickjs/quickjs.c:30551,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30555,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 84
    argCount: 5
    argNames:
    - ctx
    - m
    - index
    - pstack_top
    - pvalue
    argTypes:
    - JSContext*
    - JSModuleDef*
    - int
    - JSModuleDef**
    - JSValue*
    assertStmts:
    - condition: (m->status == JS_MODULE_STATUS_LINKED)
      pos:
        line_end: 30496
        line_start: 30496
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: "(m1->status == JS_MODULE_STATUS_EVALUATING ||\n               m1->status
        == JS_MODULE_STATUS_EVALUATING_ASYNC ||\n               m1->status == JS_MODULE_STATUS_EVALUATED)"
      pos:
        line_end: 30515
        line_start: 30513
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: "(m1->status == JS_MODULE_STATUS_EVALUATING_ASYNC ||\n                   m1->status
        == JS_MODULE_STATUS_EVALUATED)"
      pos:
        line_end: 30522
        line_start: 30521
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (!m->async_evaluation)
      pos:
        line_end: 30544
        line_start: 30544
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (!m->async_evaluation)
      pos:
        line_end: 30539
        line_start: 30539
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (m->dfs_ancestor_index <= m->dfs_index)
      pos:
        line_end: 30554
        line_start: 30554
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 30574
      start: 30466
    functionDepth: 26
    functionLinenumber: 30466
    functionLinenumberEnd: 30574
    functionName: js_inner_module_evaluation
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_check_stack_overflow
    - JS_DupValue
    - js_dump_module
    - js_execute_sync_module
    - min_int
    - assert
    - js_inner_module_evaluation
    - js_resize_array
    - js_execute_async_module
    - JS_ThrowStackOverflow
    - JS_GetException
    linkageType: ''
    returnType: int
    signature: "int js_inner_module_evaluation(JSContext *ctx, JSModuleDef *m,\n                                      int
      index, JSModuleDef **pstack_top,\n                                      JSValue
      *pvalue)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: js_dump_module
      Src: /src/gpac/src/quickjs/quickjs.c:30584,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30586,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:30594,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:30595,1
    - Dst: JS_NewPromiseCapability
      Src: /src/gpac/src/quickjs/quickjs.c:30596,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30597,1
    - Dst: js_inner_module_evaluation
      Src: /src/gpac/src/quickjs/quickjs.c:30601,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30604,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:30607,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30611,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30612,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30613,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:30614,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30616,1
    - Dst: js_dump_module
      Src: /src/gpac/src/quickjs/quickjs.c:30619,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30621,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30623,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30626,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:30628,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30630,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30632,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:30634,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 40
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts:
    - condition: (!m->eval_has_exception)
      pos:
        line_end: 30622
        line_start: 30622
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (stack_top == NULL)
      pos:
        line_end: 30631
        line_start: 30631
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (m1->status == JS_MODULE_STATUS_EVALUATING)
      pos:
        line_end: 30603
        line_start: 30603
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (m->status == JS_MODULE_STATUS_EVALUATED)
      pos:
        line_end: 30625
        line_start: 30625
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: "(m->status == JS_MODULE_STATUS_LINKED ||\n           m->status ==
        JS_MODULE_STATUS_EVALUATING_ASYNC ||\n           m->status == JS_MODULE_STATUS_EVALUATED)"
      pos:
        line_end: 30587
        line_start: 30585
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (m->status == JS_MODULE_STATUS_EVALUATED)
      pos:
        line_end: 30611
        line_start: 30611
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (m->eval_has_exception)
      pos:
        line_end: 30612
        line_start: 30612
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: "(m->status == JS_MODULE_STATUS_EVALUATING_ASYNC ||\n               m->status
        == JS_MODULE_STATUS_EVALUATED)"
      pos:
        line_end: 30621
        line_start: 30620
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 30635
      start: 30578
    functionDepth: 27
    functionLinenumber: 30578
    functionLinenumberEnd: 30635
    functionName: js_evaluate_module
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - js_dump_module
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - assert
    - JS_NewPromiseCapability
    - JS_IsUndefined
    - js_inner_module_evaluation
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_evaluate_module(JSContext *ctx, JSModuleDef *m)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:30644,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:30646,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30651,1
    - Dst: token_is_ident
      Src: /src/gpac/src/quickjs/quickjs.c:30655,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:30656,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30659,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:30661,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:30663,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30664,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:30668,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:30671,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:30672,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30673,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30674,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:30679,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30681,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:30685,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:30687,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:30688,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30689,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:30692,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:30696,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:30699,1
    - Dst: JSContext*::rt::module_check_attrs
      Src: /src/gpac/src/quickjs/quickjs.c:30701,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:30704,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 57
    argCount: 2
    argNames:
    - s
    - rme
    argTypes:
    - JSParseState*
    - JSReqModuleEntry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30705
      start: 30637
    functionDepth: 18
    functionLinenumber: 30637
    functionLinenumberEnd: 30705
    functionName: js_parse_with_clause
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectProto
    - js_parse_error_pos
    - JS_FreeAtom
    - token_is_ident
    - JS_DupValue
    - JS_DefinePropertyValue
    - JS_IsException
    - js_parse_error
    - JS_IsUndefined
    - JS_ValueToAtom
    - JS_DupAtom
    - JS_HasProperty
    - js_parse_expect
    - next_token
    - JSContext*::rt::module_check_attrs
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_with_clause(JSParseState *s, JSReqModuleEntry
      *rme)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:30713,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:30714,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:30717,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:30720,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30723,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:30726,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30727,1
    - Dst: add_req_module_entry
      Src: /src/gpac/src/quickjs/quickjs.c:30731,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30732,1
    - Dst: js_parse_with_clause
      Src: /src/gpac/src/quickjs/quickjs.c:30736,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 2
    argNames:
    - s
    - m
    argTypes:
    - JSParseState*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30740
      start: 30708
    functionDepth: 19
    functionLinenumber: 30708
    functionLinenumberEnd: 30740
    functionName: js_parse_from_clause
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - js_parse_with_clause
    - js_parse_error
    - token_is_pseudo_keyword
    - JS_ValueToAtom
    - add_req_module_entry
    - next_token
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_from_clause(JSParseState *s, JSModuleDef *m)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:30750,1
    - Dst: js_parse_class
      Src: /src/gpac/src/quickjs/quickjs.c:30755,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:30757,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:30758,1
    - Dst: js_parse_function_decl2
      Src: /src/gpac/src/quickjs/quickjs.c:30759,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:30765,1
    - Dst: token_is_ident
      Src: /src/gpac/src/quickjs/quickjs.c:30772,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:30773,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30776,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:30778,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:30780,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:30781,1
    - Dst: js_string_find_invalid_codepoint
      Src: /src/gpac/src/quickjs/quickjs.c:30784,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:30784,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:30785,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30788,1
    - Dst: token_is_ident
      Src: /src/gpac/src/quickjs/quickjs.c:30792,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:30793,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30796,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:30798,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30800,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30802,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30806,1
    - Dst: add_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:30808,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30810,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30811,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:30816,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:30819,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:30821,1
    - Dst: js_parse_from_clause
      Src: /src/gpac/src/quickjs/quickjs.c:30822,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:30833,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:30835,1
    - Dst: token_is_ident
      Src: /src/gpac/src/quickjs/quickjs.c:30837,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:30838,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30841,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:30842,1
    - Dst: js_parse_from_clause
      Src: /src/gpac/src/quickjs/quickjs.c:30844,1
    - Dst: add_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:30847,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30849,1
    - Dst: js_parse_from_clause
      Src: /src/gpac/src/quickjs/quickjs.c:30854,1
    - Dst: add_star_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:30857,1
    - Dst: js_parse_class
      Src: /src/gpac/src/quickjs/quickjs.c:30863,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:30865,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:30866,1
    - Dst: js_parse_function_decl2
      Src: /src/gpac/src/quickjs/quickjs.c:30867,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:30872,1
    - Dst: set_object_name
      Src: /src/gpac/src/quickjs/quickjs.c:30876,1
    - Dst: define_var
      Src: /src/gpac/src/quickjs/quickjs.c:30881,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:30883,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:30884,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:30885,1
    - Dst: add_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:30887,1
    - Dst: js_parse_var
      Src: /src/gpac/src/quickjs/quickjs.c:30894,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:30896,1
    - Dst: js_parse_expect_semi
      Src: /src/gpac/src/quickjs/quickjs.c:30898,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 139
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30899
      start: 30742
    functionDepth: 29
    functionLinenumber: 30742
    functionLinenumberEnd: 30899
    functionName: js_parse_export
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_class
    - JS_FreeAtom
    - js_parse_error
    - token_is_pseudo_keyword
    - js_parse_expect
    - peek_token
    - next_token
    - add_star_export_entry
    - js_parse_from_clause
    - js_parse_var
    - define_var
    - JS_ValueToAtom
    - emit_u16
    - emit_op
    - token_is_ident
    - set_object_name
    - JS_VALUE_GET_STRING
    - JS_DupAtom
    - js_parse_assign_expr
    - emit_atom
    - js_string_find_invalid_codepoint
    - js_parse_function_decl2
    - add_export_entry
    - js_parse_expect_semi
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_export(JSParseState *s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:30915,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:30920,1
    - Dst: add_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:30924,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:30929,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30935,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 5
    argNames:
    - s
    - m
    - local_name
    - import_name
    - is_star
    argTypes:
    - JSParseState*
    - JSModuleDef*
    - JSAtom
    - JSAtom
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30939
      start: 30907
    functionDepth: 12
    functionLinenumber: 30907
    functionLinenumberEnd: 30939
    functionName: add_import
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_error
    - JS_DupAtom
    - add_closure_var
    - js_resize_array
    linkageType: ''
    returnType: int
    signature: "int add_import(JSParseState *s, JSModuleDef *m,\n                      JSAtom
      local_name, JSAtom import_name, BOOL is_star)"
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:30948,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30953,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:30956,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30957,1
    - Dst: add_req_module_entry
      Src: /src/gpac/src/quickjs/quickjs.c:30960,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30961,1
    - Dst: js_parse_with_clause
      Src: /src/gpac/src/quickjs/quickjs.c:30965,1
    - Dst: js_parse_error_reserved_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:30971,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30974,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:30976,1
    - Dst: add_import
      Src: /src/gpac/src/quickjs/quickjs.c:30978,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30980,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:30984,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:30990,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:30992,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:30993,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:30994,1
    - Dst: token_is_ident
      Src: /src/gpac/src/quickjs/quickjs.c:30996,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:30997,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31000,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:31002,1
    - Dst: add_import
      Src: /src/gpac/src/quickjs/quickjs.c:31004,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31006,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:31008,1
    - Dst: js_string_find_invalid_codepoint
      Src: /src/gpac/src/quickjs/quickjs.c:31015,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:31015,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:31016,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31019,1
    - Dst: token_is_ident
      Src: /src/gpac/src/quickjs/quickjs.c:31024,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:31025,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31028,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:31031,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:31033,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:31034,1
    - Dst: token_is_ident
      Src: /src/gpac/src/quickjs/quickjs.c:31036,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:31037,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31040,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:31041,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:31045,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31047,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31048,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31051,1
    - Dst: add_import
      Src: /src/gpac/src/quickjs/quickjs.c:31053,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31055,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31056,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:31059,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:31062,1
    - Dst: js_parse_from_clause
      Src: /src/gpac/src/quickjs/quickjs.c:31066,1
    - Dst: js_parse_expect_semi
      Src: /src/gpac/src/quickjs/quickjs.c:31073,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 132
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31074
      start: 30941
    functionDepth: 20
    functionLinenumber: 30941
    functionLinenumberEnd: 31074
    functionName: js_parse_import
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - token_is_ident
    - js_string_find_invalid_codepoint
    - js_parse_with_clause
    - add_import
    - js_parse_error
    - JS_VALUE_GET_STRING
    - js_parse_expect_semi
    - js_parse_error_reserved_identifier
    - JS_ValueToAtom
    - JS_DupAtom
    - token_is_pseudo_keyword
    - add_req_module_entry
    - js_parse_expect
    - next_token
    - js_parse_from_clause
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_import(JSParseState *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:31082,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:31083,1
    - Dst: js_parse_function_decl
      Src: /src/gpac/src/quickjs/quickjs.c:31084,1
    - Dst: js_parse_export
      Src: /src/gpac/src/quickjs/quickjs.c:31089,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:31092,1
    - Dst: js_parse_import
      Src: /src/gpac/src/quickjs/quickjs.c:31095,1
    - Dst: js_parse_statement_or_decl
      Src: /src/gpac/src/quickjs/quickjs.c:31098,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 17
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31102
      start: 31076
    functionDepth: 32
    functionLinenumber: 31076
    functionLinenumberEnd: 31102
    functionName: js_parse_source_element
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_statement_or_decl
    - token_is_pseudo_keyword
    - js_parse_function_decl
    - peek_token
    - js_parse_import
    - js_parse_export
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_source_element(JSParseState *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:31114,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:31119,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:31125,1
    - Dst: js_dbuf_bytecode_init
      Src: /src/gpac/src/quickjs/quickjs.c:31134,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:31150,1
    - Dst: JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31158,1
    - Dst: js_dbuf_init
      Src: /src/gpac/src/quickjs/quickjs.c:31162,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 44
    argCount: 7
    argNames:
    - ctx
    - parent
    - is_eval
    - is_func_expr
    - filename
    - source_ptr
    - get_line_col_cache
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - BOOL
    - BOOL
    - char*
    - uint8_t*
    - GetLineColCache*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31167
      start: 31104
    functionDepth: 8
    functionLinenumber: 31104
    functionLinenumberEnd: 31167
    functionName: js_new_function_def
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - list_add_tail
    - js_dbuf_init
    - countof
    - js_dbuf_bytecode_init
    - js_mallocz
    - JS_NewAtom
    - init_list_head
    linkageType: ''
    returnType: JSFunctionDef
    signature: "JSFunctionDef *js_new_function_def(JSContext *ctx,\n                                          JSFunctionDef
      *parent,\n                                          BOOL is_eval,\n                                          BOOL
      is_func_expr,\n                                          const char *filename,\n
      \                                         const uint8_t *source_ptr,\n                                          GetLineColCache
      *get_line_col_cache)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: short_opcode_info
      Src: /src/gpac/src/quickjs/quickjs.c:31181,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:31194,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:31195,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 4
    argNames:
    - rt
    - bc_buf
    - bc_len
    - use_short_opcodes
    argTypes:
    - JSRuntime*
    - uint8_t*
    - int
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31202
      start: 31169
    functionDepth: 5
    functionLinenumber: 31169
    functionLinenumberEnd: 31202
    functionName: free_bytecode_atoms
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - short_opcode_info
    - JS_FreeAtomRT
    - get_u32
    linkageType: ''
    returnType: void
    signature: "void free_bytecode_atoms(JSRuntime *rt,\n                                const
      uint8_t *bc_buf, int bc_len,\n                                BOOL use_short_opcodes)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:31210,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:31212,1
    - Dst: js_free_function_def
      Src: /src/gpac/src/quickjs/quickjs.c:31213,1
    - Dst: free_bytecode_atoms
      Src: /src/gpac/src/quickjs/quickjs.c:31216,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:31218,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:31219,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:31220,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:31221,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31224,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:31226,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31228,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31231,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:31233,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31235,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:31237,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31240,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:31242,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31246,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:31248,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:31251,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31253,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:31254,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:31256,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:31260,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:31262,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 40
    argCount: 2
    argNames:
    - ctx
    - fd
    argTypes:
    - JSContext*
    - JSFunctionDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31263
      start: 31204
    functionDepth: 6
    functionLinenumber: 31204
    functionLinenumberEnd: 31263
    functionName: js_free_function_def
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_FreeAtom
    - free_bytecode_atoms
    - JS_FreeValue
    - list_for_each_safe
    - dbuf_free
    - list_entry
    - js_free_function_def
    - list_del
    - js_free
    linkageType: ''
    returnType: void
    signature: void js_free_function_def(JSContext *ctx, JSFunctionDef *fd)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 6
    argCount: 2
    argNames:
    - p
    - n
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31272
      start: 31266
    functionDepth: 0
    functionLinenumber: 31266
    functionLinenumberEnd: 31272
    functionName: skip_lines
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *skip_lines(const char *p, int n)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: skip_lines
      Src: /src/gpac/src/quickjs/quickjs.c:31276,1
    - Dst: skip_lines
      Src: /src/gpac/src/quickjs/quickjs.c:31279,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31280,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31283,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - source
    - line
    - line1
    argTypes:
    - char*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31288
      start: 31274
    functionDepth: 1
    functionLinenumber: 31274
    functionLinenumberEnd: 31288
    functionName: print_lines
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - skip_lines
    linkageType: ''
    returnType: void
    signature: void print_lines(const char *source, int line, int line1)
  - BBCount: 71
    BranchProfiles: []
    Callsites:
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:31301,1
    - Dst: find_line_num
      Src: /src/gpac/src/quickjs/quickjs.c:31306,1
    - Dst: short_opcode_info
      Src: /src/gpac/src/quickjs/quickjs.c:31313,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:31326,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:31336,1
    - Dst: print_lines
      Src: /src/gpac/src/quickjs/quickjs.c:31354,1
    - Dst: find_line_num
      Src: /src/gpac/src/quickjs/quickjs.c:31364,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:31367,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31371,1
    - Dst: print_lines
      Src: /src/gpac/src/quickjs/quickjs.c:31373,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31379,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31382,1
    - Dst: short_opcode_info
      Src: /src/gpac/src/quickjs/quickjs.c:31387,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31392,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31398,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31401,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31403,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31405,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31409,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31411,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31413,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31417,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31420,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31423,1
    - Dst: get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:31423,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31426,1
    - Dst: get_i8
      Src: /src/gpac/src/quickjs/quickjs.c:31426,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31430,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:31430,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31433,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:31433,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:31433,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31436,1
    - Dst: get_i16
      Src: /src/gpac/src/quickjs/quickjs.c:31436,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31439,1
    - Dst: get_i32
      Src: /src/gpac/src/quickjs/quickjs.c:31439,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31442,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:31442,1
    - Dst: get_i8
      Src: /src/gpac/src/quickjs/quickjs.c:31446,1
    - Dst: get_i16
      Src: /src/gpac/src/quickjs/quickjs.c:31449,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:31453,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31457,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31459,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31461,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:31464,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31466,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31468,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31470,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31471,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:31471,1
    - Dst: get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:31475,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:31479,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31482,1
    - Dst: JS_PrintValue
      Src: /src/gpac/src/quickjs/quickjs.c:31484,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31488,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:31489,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:31489,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31492,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:31493,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:31493,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31494,1
    - Dst: get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:31494,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31497,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:31498,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:31498,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31499,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:31499,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31503,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:31504,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:31504,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:31505,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31507,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31509,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31511,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31513,1
    - Dst: get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:31513,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31515,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:31515,1
    - Dst: get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:31521,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:31524,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31526,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:31528,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:31535,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31537,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:31539,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:31546,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31548,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:31550,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31556,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31561,1
    - Dst: print_lines
      Src: /src/gpac/src/quickjs/quickjs.c:31562,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:31564,1
    CyclomaticComplexity: 78
    EdgeCount: 78
    ICount: 260
    argCount: 15
    argNames:
    - ctx
    - pass
    - tab
    - len
    - args
    - arg_count
    - vars
    - var_count
    - closure_var
    - closure_var_count
    - cpool
    - cpool_count
    - source
    - label_slots
    - b
    argTypes:
    - JSContext*
    - int
    - uint8_t*
    - int
    - JSVarDef*
    - int
    - JSVarDef*
    - int
    - JSClosureVar*
    - int
    - JSValue*
    - uint32_t
    - char*
    - LabelSlot*
    - JSFunctionBytecode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31565
      start: 31290
    functionDepth: 20
    functionLinenumber: 31290
    functionLinenumberEnd: 31565
    functionName: dump_byte_code
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_u16
    - print_lines
    - printf
    - get_i8
    - get_u32
    - short_opcode_info
    - get_u8
    - print_atom
    - JS_PrintValue
    - get_i32
    - js_mallocz
    - find_line_num
    - get_i16
    - js_free
    linkageType: ''
    returnType: void
    signature: "void dump_byte_code(JSContext *ctx, int pass,\n                           const
      uint8_t *tab, int len,\n                           const JSVarDef *args, int
      arg_count,\n                           const JSVarDef *vars, int var_count,\n
      \                          const JSClosureVar *closure_var, int closure_var_count,\n
      \                          const JSValue *cpool, uint32_t cpool_count,\n                           const
      char *source,\n                           const LabelSlot *label_slots, JSFunctionBytecode
      *b)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31577,1
    - Dst: get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:31583,1
    - Dst: get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:31589,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31595,1
    - Dst: get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:31601,1
    - Dst: get_sleb128
      Src: /src/gpac/src/quickjs/quickjs.c:31606,1
    - Dst: get_sleb128
      Src: /src/gpac/src/quickjs/quickjs.c:31616,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31622,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 51
    argCount: 3
    argNames:
    - ctx
    - buf
    - len
    argTypes:
    - JSContext*
    - uint8_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31625
      start: 31567
    functionDepth: 3
    functionLinenumber: 31567
    functionLinenumberEnd: 31625
    functionName: dump_pc2line
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - get_leb128
    - get_sleb128
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused dump_pc2line(JSContext *ctx, const uint8_t *buf, int
      len)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:31635,1
    - Dst: find_line_num
      Src: /src/gpac/src/quickjs/quickjs.c:31636,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31637,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:31640,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31641,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31643,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31645,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31646,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31649,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31651,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:31651,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31654,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31657,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31660,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:31666,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31668,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31669,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31673,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31676,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:31677,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31684,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31685,1
    - Dst: dump_byte_code
      Src: /src/gpac/src/quickjs/quickjs.c:31686,1
    - Dst: dump_pc2line
      Src: /src/gpac/src/quickjs/quickjs.c:31695,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31697,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 42
    argCount: 2
    argNames:
    - ctx
    - b
    argTypes:
    - JSContext*
    - JSFunctionBytecode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31698
      start: 31627
    functionDepth: 21
    functionLinenumber: 31627
    functionLinenumberEnd: 31698
    functionName: js_dump_function_bytecode
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - dump_pc2line
    - dump_byte_code
    - find_line_num
    - JS_AtomGetStr
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused js_dump_function_bytecode(JSContext *ctx, JSFunctionBytecode
      *b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:31711,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:31715,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31726,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 9
    argNames:
    - ctx
    - s
    - is_local
    - is_arg
    - var_idx
    - var_name
    - is_const
    - is_lexical
    - var_kind
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - BOOL
    - BOOL
    - int
    - JSAtom
    - BOOL
    - BOOL
    - JSVarKindEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31728
      start: 31701
    functionDepth: 12
    functionLinenumber: 31701
    functionLinenumberEnd: 31728
    functionName: add_closure_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_DupAtom
    - JS_ThrowInternalError
    - js_resize_array
    linkageType: ''
    returnType: int
    signature: "int add_closure_var(JSContext *ctx, JSFunctionDef *s,\n                           BOOL
      is_local, BOOL is_arg,\n                           int var_idx, JSAtom var_name,\n
      \                          BOOL is_const, BOOL is_lexical,\n                           JSVarKindEnum
      var_kind)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - s
    - var_name
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31740
      start: 31730
    functionDepth: 0
    functionLinenumber: 31730
    functionLinenumberEnd: 31740
    functionName: find_closure_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int find_closure_var(JSContext *ctx, JSFunctionDef *s,\n                            JSAtom
      var_name)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: get_closure_var2
      Src: /src/gpac/src/quickjs/quickjs.c:31754,1
    - Dst: add_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:31767,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 10
    argNames:
    - ctx
    - s
    - fd
    - is_local
    - is_arg
    - var_idx
    - var_name
    - is_const
    - is_lexical
    - var_kind
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSFunctionDef*
    - BOOL
    - BOOL
    - int
    - JSAtom
    - BOOL
    - BOOL
    - JSVarKindEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31769
      start: 31745
    functionDepth: 13
    functionLinenumber: 31745
    functionLinenumberEnd: 31769
    functionName: get_closure_var2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - add_closure_var
    - get_closure_var2
    linkageType: ''
    returnType: int
    signature: "int get_closure_var2(JSContext *ctx, JSFunctionDef *s,\n                            JSFunctionDef
      *fd, BOOL is_local,\n                            BOOL is_arg, int var_idx, JSAtom
      var_name,\n                            BOOL is_const, BOOL is_lexical,\n                            JSVarKindEnum
      var_kind)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_closure_var2
      Src: /src/gpac/src/quickjs/quickjs.c:31777,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - ctx
    - s
    - fd
    - is_arg
    - var_idx
    - var_name
    - is_const
    - is_lexical
    - var_kind
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSFunctionDef*
    - BOOL
    - int
    - JSAtom
    - BOOL
    - BOOL
    - JSVarKindEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31780
      start: 31771
    functionDepth: 14
    functionLinenumber: 31771
    functionLinenumberEnd: 31780
    functionName: get_closure_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_closure_var2
    linkageType: ''
    returnType: int
    signature: "int get_closure_var(JSContext *ctx, JSFunctionDef *s,\n                           JSFunctionDef
      *fd, BOOL is_arg,\n                           int var_idx, JSAtom var_name,\n
      \                          BOOL is_const, BOOL is_lexical,\n                           JSVarKindEnum
      var_kind)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - op
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31788
      start: 31782
    functionDepth: 0
    functionLinenumber: 31782
    functionLinenumberEnd: 31788
    functionName: get_with_scope_opcode
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int get_with_scope_opcode(int op)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 2
    argNames:
    - bc_buf
    - pos
    argTypes:
    - uint8_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31798
      start: 31790
    functionDepth: 0
    functionLinenumber: 31790
    functionLinenumberEnd: 31798
    functionName: can_opt_put_ref_value
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL can_opt_put_ref_value(const uint8_t *bc_buf, int pos)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 2
    argNames:
    - bc_buf
    - pos
    argTypes:
    - uint8_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31808
      start: 31800
    functionDepth: 0
    functionLinenumber: 31800
    functionLinenumberEnd: 31808
    functionName: can_opt_put_global_ref_value
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL can_opt_put_global_ref_value(const uint8_t *bc_buf, int pos)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:31826,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:31827,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31835,1
    - Dst: put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:31846,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 8
    argNames:
    - ctx
    - s
    - bc
    - bc_buf
    - ls
    - pos_next
    - get_op
    - var_idx
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - DynBuf*
    - uint8_t*
    - LabelSlot*
    - int
    - int
    - int
    assertStmts:
    - condition: (bc_buf[pos] == OP_label)
      pos:
        line_end: 31834
        line_start: 31834
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 31852
      start: 31810
    functionDepth: 1
    functionLinenumber: 31810
    functionLinenumberEnd: 31852
    functionName: optimize_scope_make_ref
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_putc
    - put_u16
    - assert
    - dbuf_put_u16
    linkageType: ''
    returnType: int
    signature: "int optimize_scope_make_ref(JSContext *ctx, JSFunctionDef *s,\n                                   DynBuf
      *bc, uint8_t *bc_buf,\n                                   LabelSlot *ls, int
      pos_next,\n                                   int get_op, int var_idx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:31865,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:31866,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31866,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31874,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:31881,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31881,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 7
    argNames:
    - ctx
    - s
    - bc
    - bc_buf
    - ls
    - pos_next
    - var_name
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - DynBuf*
    - uint8_t*
    - LabelSlot*
    - int
    - JSAtom
    assertStmts:
    - condition: (bc_buf[pos] == OP_label)
      pos:
        line_end: 31873
        line_start: 31873
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 31887
      start: 31854
    functionDepth: 2
    functionLinenumber: 31854
    functionLinenumberEnd: 31887
    functionName: optimize_scope_make_global_ref
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_putc
    - dbuf_put_u32
    - assert
    - JS_DupAtom
    - put_u32
    linkageType: ''
    returnType: int
    signature: "int optimize_scope_make_global_ref(JSContext *ctx, JSFunctionDef *s,\n
      \                                         DynBuf *bc, uint8_t *bc_buf,\n                                          LabelSlot
      *ls, int pos_next,\n                                          JSAtom var_name)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:31892,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - fd
    argTypes:
    - JSContext*
    - JSFunctionDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31900
      start: 31889
    functionDepth: 13
    functionLinenumber: 31889
    functionLinenumberEnd: 31900
    functionName: add_var_this
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - add_var
    linkageType: ''
    returnType: int
    signature: int add_var_this(JSContext *ctx, JSFunctionDef *fd)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:31913,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:31919,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:31925,1
    - Dst: add_var_this
      Src: /src/gpac/src/quickjs/quickjs.c:31931,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 3
    argNames:
    - ctx
    - s
    - var_name
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31939
      start: 31902
    functionDepth: 14
    functionLinenumber: 31902
    functionLinenumberEnd: 31939
    functionName: resolve_pseudo_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - add_var_this
    - add_var
    linkageType: ''
    returnType: int
    signature: "int resolve_pseudo_var(JSContext *ctx, JSFunctionDef *s,\n                               JSAtom
      var_name)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:31947,1
    - Dst: get_with_scope_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:31947,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:31948,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31948,1
    - Dst: new_label_fd
      Src: /src/gpac/src/quickjs/quickjs.c:31950,1
    - Dst: dbuf_set_error
      Src: /src/gpac/src/quickjs/quickjs.c:31952,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:31956,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:31957,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:31958,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 7
    argNames:
    - ctx
    - s
    - var_name
    - op
    - bc
    - plabel_done
    - is_with
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    - int
    - DynBuf*
    - int*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31960
      start: 31943
    functionDepth: 6
    functionLinenumber: 31943
    functionLinenumberEnd: 31960
    functionName: var_object_test
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_putc
    - dbuf_set_error
    - dbuf_put_u32
    - get_with_scope_opcode
    - update_label
    - JS_DupAtom
    - new_label_fd
    linkageType: ''
    returnType: void
    signature: "void var_object_test(JSContext *ctx, JSFunctionDef *s,\n                            JSAtom
      var_name, int op, DynBuf *bc,\n                            int *plabel_done,
      BOOL is_with)"
  - BBCount: 83
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:31990,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:31991,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31991,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:31992,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32000,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32001,1
    - Dst: var_object_test
      Src: /src/gpac/src/quickjs/quickjs.c:32002,1
    - Dst: find_var
      Src: /src/gpac/src/quickjs/quickjs.c:32011,1
    - Dst: resolve_pseudo_var
      Src: /src/gpac/src/quickjs/quickjs.c:32015,1
    - Dst: add_arguments_var
      Src: /src/gpac/src/quickjs/quickjs.c:32020,1
    - Dst: add_func_var
      Src: /src/gpac/src/quickjs/quickjs.c:32024,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32033,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32034,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32034,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32035,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32046,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32047,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32048,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32049,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32050,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32050,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32051,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32052,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32052,1
    - Dst: can_opt_put_ref_value
      Src: /src/gpac/src/quickjs/quickjs.c:32054,1
    - Dst: optimize_scope_make_ref
      Src: /src/gpac/src/quickjs/quickjs.c:32065,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32071,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32072,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32072,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32073,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32075,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32076,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32076,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32077,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32082,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32091,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32092,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32099,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32101,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32103,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32106,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32112,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32114,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32117,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32120,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32124,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32131,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32132,1
    - Dst: var_object_test
      Src: /src/gpac/src/quickjs/quickjs.c:32133,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32137,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32138,1
    - Dst: var_object_test
      Src: /src/gpac/src/quickjs/quickjs.c:32139,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32151,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32152,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32152,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32153,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:32161,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32163,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32164,1
    - Dst: var_object_test
      Src: /src/gpac/src/quickjs/quickjs.c:32165,1
    - Dst: find_var
      Src: /src/gpac/src/quickjs/quickjs.c:32175,1
    - Dst: resolve_pseudo_var
      Src: /src/gpac/src/quickjs/quickjs.c:32180,1
    - Dst: add_arguments_var
      Src: /src/gpac/src/quickjs/quickjs.c:32185,1
    - Dst: add_func_var
      Src: /src/gpac/src/quickjs/quickjs.c:32190,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:32198,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32201,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32202,1
    - Dst: var_object_test
      Src: /src/gpac/src/quickjs/quickjs.c:32203,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:32210,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32213,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32214,1
    - Dst: var_object_test
      Src: /src/gpac/src/quickjs/quickjs.c:32215,1
    - Dst: get_closure_var2
      Src: /src/gpac/src/quickjs/quickjs.c:32232,1
    - Dst: get_closure_var2
      Src: /src/gpac/src/quickjs/quickjs.c:32246,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32254,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32255,1
    - Dst: var_object_test
      Src: /src/gpac/src/quickjs/quickjs.c:32256,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:32265,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:32270,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32281,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32282,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32282,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32283,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32290,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32291,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32292,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32293,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32294,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32294,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32295,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32296,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32296,1
    - Dst: can_opt_put_ref_value
      Src: /src/gpac/src/quickjs/quickjs.c:32299,1
    - Dst: optimize_scope_make_ref
      Src: /src/gpac/src/quickjs/quickjs.c:32305,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32311,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32312,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32312,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32313,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32319,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32332,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32334,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32336,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32339,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32343,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32345,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32348,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32351,1
    - Dst: can_opt_put_global_ref_value
      Src: /src/gpac/src/quickjs/quickjs.c:32362,1
    - Dst: optimize_scope_make_global_ref
      Src: /src/gpac/src/quickjs/quickjs.c:32363,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32366,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32367,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32367,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32373,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32374,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32375,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32375,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32380,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32381,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32381,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32384,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32385,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32385,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32388,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32389,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32389,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32394,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32395,1
    CyclomaticComplexity: 128
    EdgeCount: 128
    ICount: 343
    argCount: 9
    argNames:
    - ctx
    - s
    - var_name
    - scope_level
    - op
    - bc
    - bc_buf
    - ls
    - pos_next
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    - int
    - int
    - DynBuf*
    - uint8_t*
    - LabelSlot*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32399
      start: 31963
    functionDepth: 15
    functionLinenumber: 31963
    functionLinenumberEnd: 32399
    functionName: resolve_scope_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_putc
    - optimize_scope_make_ref
    - add_func_var
    - optimize_scope_make_global_ref
    - dbuf_put_u32
    - add_arguments_var
    - can_opt_put_ref_value
    - var_object_test
    - get_closure_var
    - can_opt_put_global_ref_value
    - JS_DupAtom
    - find_var
    - get_closure_var2
    - resolve_pseudo_var
    - dbuf_put_u16
    linkageType: ''
    returnType: int
    signature: "int resolve_scope_var(JSContext *ctx, JSFunctionDef *s,\n                             JSAtom
      var_name, int scope_level, int op,\n                             DynBuf *bc,
      uint8_t *bc_buf,\n                             LabelSlot *ls, int pos_next)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - fd
    - name
    - scope_level
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32414
      start: 32402
    functionDepth: 0
    functionLinenumber: 32402
    functionLinenumberEnd: 32414
    functionName: find_private_class_field_all
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int find_private_class_field_all(JSContext *ctx, JSFunctionDef *fd,\n
      \                                       JSAtom name, int scope_level)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32421,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32423,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32424,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - bc
    - is_ref
    - idx
    argTypes:
    - DynBuf*
    - BOOL
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32425
      start: 32416
    functionDepth: 1
    functionLinenumber: 32416
    functionLinenumberEnd: 32425
    functionName: get_loc_or_ref
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_putc
    - dbuf_put_u16
    linkageType: ''
    returnType: void
    signature: void get_loc_or_ref(DynBuf *bc, BOOL is_ref, int idx)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: find_private_class_field_all
      Src: /src/gpac/src/quickjs/quickjs.c:32439,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:32443,1
    - Dst: get_closure_var2
      Src: /src/gpac/src/quickjs/quickjs.c:32460,1
    - Dst: JS_ThrowSyntaxErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32474,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 43
    argCount: 6
    argNames:
    - ctx
    - pis_ref
    - pvar_kind
    - s
    - var_name
    - scope_level
    argTypes:
    - JSContext*
    - BOOL*
    - int*
    - JSFunctionDef*
    - JSAtom
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32486
      start: 32427
    functionDepth: 15
    functionLinenumber: 32427
    functionLinenumberEnd: 32486
    functionName: resolve_scope_private_field1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - find_private_class_field_all
    - JS_ThrowSyntaxErrorAtom
    - get_closure_var2
    - get_closure_var
    linkageType: ''
    returnType: int
    signature: "int resolve_scope_private_field1(JSContext *ctx,\n                                        BOOL
      *pis_ref, int *pvar_kind,\n                                        JSFunctionDef
      *s,\n                                        JSAtom var_name, int scope_level)"
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: resolve_scope_private_field1
      Src: /src/gpac/src/quickjs/quickjs.c:32496,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:32500,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32507,1
    - Dst: get_loc_or_ref
      Src: /src/gpac/src/quickjs/quickjs.c:32508,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32509,1
    - Dst: get_loc_or_ref
      Src: /src/gpac/src/quickjs/quickjs.c:32512,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32513,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32515,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32520,1
    - Dst: get_loc_or_ref
      Src: /src/gpac/src/quickjs/quickjs.c:32521,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32522,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32523,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32524,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32528,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32529,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32529,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32530,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:32533,1
    - Dst: get_loc_or_ref
      Src: /src/gpac/src/quickjs/quickjs.c:32539,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32540,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32545,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32546,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32546,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32547,1
    - Dst: get_private_setter_name
      Src: /src/gpac/src/quickjs/quickjs.c:32552,1
    - Dst: resolve_scope_private_field1
      Src: /src/gpac/src/quickjs/quickjs.c:32555,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32558,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:32561,1
    - Dst: get_loc_or_ref
      Src: /src/gpac/src/quickjs/quickjs.c:32562,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32563,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32565,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32567,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32568,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32570,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32571,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32572,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:32576,1
    - Dst: get_loc_or_ref
      Src: /src/gpac/src/quickjs/quickjs.c:32580,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32581,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:32584,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 82
    argCount: 6
    argNames:
    - ctx
    - s
    - var_name
    - scope_level
    - op
    - bc
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    - int
    - int
    - DynBuf*
    assertStmts:
    - condition: (var_kind != JS_VAR_NORMAL)
      pos:
        line_end: 32499
        line_start: 32499
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (var_kind == JS_VAR_PRIVATE_SETTER)
      pos:
        line_end: 32560
        line_start: 32560
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 32587
      start: 32489
    functionDepth: 16
    functionLinenumber: 32489
    functionLinenumberEnd: 32587
    functionName: resolve_scope_private_field
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_putc
    - JS_FreeAtom
    - dbuf_put_u32
    - assert
    - get_loc_or_ref
    - get_private_setter_name
    - JS_DupAtom
    - resolve_scope_private_field1
    - abort
    - dbuf_put_u16
    linkageType: ''
    returnType: int
    signature: "int resolve_scope_private_field(JSContext *ctx, JSFunctionDef *s,\n
      \                                      JSAtom var_name, int scope_level, int
      op,\n                                       DynBuf *bc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - s
    - scope_level
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32600
      start: 32589
    functionDepth: 0
    functionLinenumber: 32589
    functionLinenumberEnd: 32600
    functionName: mark_eval_captured_variables
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void mark_eval_captured_variables(JSContext *ctx, JSFunctionDef *s,\n
      \                                        int scope_level)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - vd
    argTypes:
    - JSVarDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32611
      start: 32603
    functionDepth: 0
    functionLinenumber: 32603
    functionLinenumberEnd: 32611
    functionName: is_var_in_arg_scope
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL is_var_in_arg_scope(const JSVarDef *vd)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:32623,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:32627,1
    - Dst: add_var_this
      Src: /src/gpac/src/quickjs/quickjs.c:32635,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:32637,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:32639,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:32641,1
    - Dst: add_arguments_var
      Src: /src/gpac/src/quickjs/quickjs.c:32645,1
    - Dst: add_arguments_arg
      Src: /src/gpac/src/quickjs/quickjs.c:32650,1
    - Dst: add_func_var
      Src: /src/gpac/src/quickjs/quickjs.c:32653,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:32659,1
    - Dst: add_var_this
      Src: /src/gpac/src/quickjs/quickjs.c:32671,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:32673,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:32675,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:32677,1
    - Dst: add_arguments_var
      Src: /src/gpac/src/quickjs/quickjs.c:32682,1
    - Dst: add_func_var
      Src: /src/gpac/src/quickjs/quickjs.c:32687,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:32694,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:32705,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:32716,1
    - Dst: is_var_in_arg_scope
      Src: /src/gpac/src/quickjs/quickjs.c:32725,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:32726,1
    - Dst: get_closure_var2
      Src: /src/gpac/src/quickjs/quickjs.c:32738,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 85
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - JSFunctionDef*
    assertStmts:
    - condition: (s->is_eval || s->closure_var_count == 0)
      pos:
        line_end: 32658
        line_start: 32658
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 32745
      start: 32613
    functionDepth: 15
    functionLinenumber: 32613
    functionLinenumberEnd: 32745
    functionName: add_eval_variables
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - add_var_this
    - add_func_var
    - add_arguments_var
    - add_arguments_arg
    - assert
    - is_var_in_arg_scope
    - get_closure_var
    - get_closure_var2
    - add_var
    linkageType: ''
    returnType: void
    signature: void add_eval_variables(JSContext *ctx, JSFunctionDef *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32756,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - cv
    - vd
    - var_idx
    argTypes:
    - JSContext*
    - JSClosureVar*
    - JSVarDef*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32757
      start: 32747
    functionDepth: 2
    functionLinenumber: 32747
    functionLinenumberEnd: 32757
    functionName: set_closure_from_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupAtom
    linkageType: ''
    returnType: void
    signature: "void set_closure_from_var(JSContext *ctx, JSClosureVar *cv,\n                                 JSVarDef
      *vd, int var_idx)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:32774,1
    - Dst: set_closure_from_var
      Src: /src/gpac/src/quickjs/quickjs.c:32782,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32798,1
    - Dst: set_closure_from_var
      Src: /src/gpac/src/quickjs/quickjs.c:32805,1
    - Dst: is_var_in_arg_scope
      Src: /src/gpac/src/quickjs/quickjs.c:32812,1
    - Dst: set_closure_from_var
      Src: /src/gpac/src/quickjs/quickjs.c:32814,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32827,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 53
    argCount: 4
    argNames:
    - ctx
    - s
    - b
    - scope_idx
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSFunctionBytecode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32830
      start: 32761
    functionDepth: 3
    functionLinenumber: 32761
    functionLinenumberEnd: 32830
    functionName: add_closure_variables
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc
    - set_closure_from_var
    - JS_DupAtom
    - is_var_in_arg_scope
    linkageType: ''
    returnType: __exception
    signature: "__exception add_closure_variables(JSContext *ctx, JSFunctionDef *s,\n
      \                                            JSFunctionBytecode *b, int scope_idx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - op1
    - ','
    - op2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32845
      start: 32844
    functionDepth: 0
    functionLinenumber: 32844
    functionLinenumberEnd: 32845
    functionName: M2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: M2(op1, op2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - op1
    - ','
    - op2
    - ','
    - op3
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32846
      start: 32845
    functionDepth: 0
    functionLinenumber: 32845
    functionLinenumberEnd: 32846
    functionName: M3
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: M3(op1, op2, op3)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - op1
    - ','
    - op2
    - ','
    - op3
    - ','
    - op4
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32847
      start: 32846
    functionDepth: 0
    functionLinenumber: 32846
    functionLinenumberEnd: 32847
    functionName: M4
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: M4(op1, op2, op3, op4)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:32856,1
    - Dst: va_arg
      Src: /src/gpac/src/quickjs/quickjs.c:32859,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32875,1
    - Dst: va_arg
      Src: /src/gpac/src/quickjs/quickjs.c:32899,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32914,1
    - Dst: va_arg
      Src: /src/gpac/src/quickjs/quickjs.c:32915,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32929,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32934,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32935,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32940,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32945,1
    - Dst: get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:32946,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32951,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32952,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32957,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32958,1
    - Dst: get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:32959,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:32968,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 104
    argCount: 2
    argNames:
    - s
    - pos
    argTypes:
    - CodeContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32970
      start: 32848
    functionDepth: 1
    functionLinenumber: 32848
    functionLinenumberEnd: 32970
    functionName: code_match
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - get_u16
    - get_u32
    - va_end
    - va_start
    - get_u8
    - va_arg
    linkageType: ''
    returnType: BOOL
    signature: BOOL code_match(CodeContext *s, int pos, ...)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32980,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32981,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32982,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32983,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32989,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32990,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:32991,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32992,1
    - Dst: new_label_fd
      Src: /src/gpac/src/quickjs/quickjs.c:33000,1
    - Dst: dbuf_set_error
      Src: /src/gpac/src/quickjs/quickjs.c:33002,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33006,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33007,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33008,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:33009,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33032,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33033,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33047,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33048,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33050,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33051,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33051,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33052,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33061,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33062,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33062,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33063,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33068,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33069,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33072,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33073,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33073,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33076,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33079,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33080,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33082,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33083,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33083,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33084,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33087,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33088,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33088,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33092,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33096,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33098,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33099,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:33103,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 105
    argCount: 3
    argNames:
    - ctx
    - s
    - bc
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - DynBuf*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33107
      start: 32972
    functionDepth: 6
    functionLinenumber: 32972
    functionLinenumberEnd: 33107
    functionName: instantiate_hoisted_definitions
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_putc
    - dbuf_set_error
    - JS_FreeAtom
    - dbuf_put_u32
    - update_label
    - JS_DupAtom
    - new_label_fd
    - dbuf_put_u16
    - js_free
    linkageType: ''
    returnType: void
    signature: void instantiate_hoisted_definitions(JSContext *ctx, JSFunctionDef
      *s, DynBuf *bc)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33118,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33121,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:33122,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:33126,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:33130,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33137,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:33138,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33142,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:33143,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33148,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33149,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 5
    argNames:
    - s
    - bc_buf
    - bc_len
    - pos
    - linep
    argTypes:
    - JSFunctionDef*
    - uint8_t*
    - int
    - int
    - int*
    assertStmts:
    - condition: (s->label_slots[label].first_reloc == NULL)
      pos:
        line_end: 33129
        line_start: 33129
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 33157
      start: 33109
    functionDepth: 5
    functionLinenumber: 33109
    functionLinenumberEnd: 33157
    functionName: skip_dead_code
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - printf
    - get_u32
    - assert
    - update_label
    linkageType: ''
    returnType: int
    signature: "int skip_dead_code(JSFunctionDef *s, const uint8_t *bc_buf, int bc_len,\n
      \                         int pos, int *linep)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33171,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - s
    - label
    argTypes:
    - JSFunctionDef*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33180
      start: 33159
    functionDepth: 0
    functionLinenumber: 33159
    functionLinenumberEnd: 33180
    functionName: get_label_pos
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_u32
    linkageType: ''
    returnType: int
    signature: int get_label_pos(JSFunctionDef *s, int label)
  - BBCount: 69
    BranchProfiles: []
    Callsites:
    - Dst: js_dbuf_bytecode_init
      Src: /src/gpac/src/quickjs/quickjs.c:33195,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33214,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33215,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33215,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33216,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33225,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33226,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33226,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33232,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33243,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33249,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33250,1
    - Dst: mark_eval_captured_variables
      Src: /src/gpac/src/quickjs/quickjs.c:33251,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33252,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33253,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33254,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33258,1
    - Dst: mark_eval_captured_variables
      Src: /src/gpac/src/quickjs/quickjs.c:33259,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33260,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33261,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33270,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33271,1
    - Dst: resolve_scope_var
      Src: /src/gpac/src/quickjs/quickjs.c:33272,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33274,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33280,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33281,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33282,1
    - Dst: resolve_scope_var
      Src: /src/gpac/src/quickjs/quickjs.c:33285,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33287,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33296,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33297,1
    - Dst: resolve_scope_private_field
      Src: /src/gpac/src/quickjs/quickjs.c:33298,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33301,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33311,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:33312,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:33314,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:33328,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:33332,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33337,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33338,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:33348,1
    - Dst: M2
      Src: /src/gpac/src/quickjs/quickjs.c:33348,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33349,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33354,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33355,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:33375,1
    - Dst: skip_dead_code
      Src: /src/gpac/src/quickjs/quickjs.c:33376,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33381,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33382,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33393,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:33394,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33402,1
    - Dst: instantiate_hoisted_definitions
      Src: /src/gpac/src/quickjs/quickjs.c:33405,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33415,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33416,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33417,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33418,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33422,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33423,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33436,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33442,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33443,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33456,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:33472,1
    - Dst: M2
      Src: /src/gpac/src/quickjs/quickjs.c:33472,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:33475,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:33479,1
    - Dst: get_label_pos
      Src: /src/gpac/src/quickjs/quickjs.c:33479,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:33482,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:33484,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:33485,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33486,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33487,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33492,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33493,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33510,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33511,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33512,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33516,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:33521,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:33527,1
    - Dst: dbuf_error
      Src: /src/gpac/src/quickjs/quickjs.c:33529,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:33530,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:33541,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:33543,1
    CyclomaticComplexity: 81
    EdgeCount: 81
    ICount: 288
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - JSFunctionDef*
    assertStmts:
    - condition: (label >= 0 && label < s->label_count)
      pos:
        line_end: 33393
        line_start: 33393
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (lab1 >= 0 && lab1 < s->label_count)
      pos:
        line_end: 33474
        line_start: 33474
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (label >= 0 && label < s->label_count)
      pos:
        line_end: 33311
        line_start: 33311
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 33546
      start: 33184
    functionDepth: 17
    functionLinenumber: 33184
    functionLinenumberEnd: 33546
    functionName: resolve_variables
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_putc
    - get_u16
    - JS_FreeAtom
    - dbuf_put
    - update_label
    - js_dbuf_bytecode_init
    - dbuf_put_u16
    - M2
    - resolve_scope_var
    - get_u32
    - skip_dead_code
    - assert
    - JS_DupAtom
    - dbuf_free
    - instantiate_hoisted_definitions
    - mark_eval_captured_variables
    - dbuf_put_u32
    - get_label_pos
    - JS_ThrowOutOfMemory
    - resolve_scope_private_field
    - code_match
    - dbuf_error
    linkageType: ''
    returnType: __exception
    signature: __exception resolve_variables(JSContext *ctx, JSFunctionDef *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - s
    - pc
    - source_pos
    argTypes:
    - JSFunctionDef*
    - uint32_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33561
      start: 33549
    functionDepth: 0
    functionLinenumber: 33549
    functionLinenumberEnd: 33561
    functionName: add_pc2line_info
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void add_pc2line_info(JSFunctionDef *s, uint32_t pc, uint32_t source_pos)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: js_dbuf_init
      Src: /src/gpac/src/quickjs/quickjs.c:33576,1
    - Dst: get_line_col_cached
      Src: /src/gpac/src/quickjs/quickjs.c:33578,1
    - Dst: dbuf_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:33581,1
    - Dst: dbuf_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:33582,1
    - Dst: get_line_col_cached
      Src: /src/gpac/src/quickjs/quickjs.c:33595,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33605,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33609,1
    - Dst: dbuf_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:33610,1
    - Dst: dbuf_put_sleb128
      Src: /src/gpac/src/quickjs/quickjs.c:33611,1
    - Dst: dbuf_put_sleb128
      Src: /src/gpac/src/quickjs/quickjs.c:33613,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSFunctionDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33620
      start: 33569
    functionDepth: 3
    functionLinenumber: 33569
    functionLinenumberEnd: 33620
    functionName: compute_pc2line_info
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_putc
    - get_line_col_cached
    - dbuf_put_leb128
    - js_dbuf_init
    - dbuf_put_sleb128
    linkageType: ''
    returnType: void
    signature: void compute_pc2line_info(JSFunctionDef *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:33625,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - ls
    - addr
    - size
    argTypes:
    - JSContext*
    - LabelSlot*
    - uint32_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33633
      start: 33622
    functionDepth: 3
    functionLinenumber: 33622
    functionLinenumberEnd: 33633
    functionName: add_reloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc
    linkageType: ''
    returnType: RelocEntry
    signature: RelocEntry *add_reloc(JSContext *ctx, LabelSlot *ls, uint32_t addr,
      int size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33644,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33651,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 3
    argNames:
    - s
    - pos
    - label
    argTypes:
    - CodeContext*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33658
      start: 33635
    functionDepth: 0
    functionLinenumber: 33635
    functionLinenumberEnd: 33658
    functionName: code_has_label
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_u32
    linkageType: ''
    returnType: BOOL
    signature: BOOL code_has_label(CodeContext *s, int pos, int label)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:33668,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:33670,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33676,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33682,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:33713,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 4
    argNames:
    - s
    - label0
    - pop
    - pline
    argTypes:
    - JSFunctionDef*
    - int
    - int*
    - int*
    assertStmts:
    - condition: (label >= 0 && label < s->label_count)
      pos:
        line_end: 33669
        line_start: 33669
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 33715
      start: 33663
    functionDepth: 1
    functionLinenumber: 33663
    functionLinenumberEnd: 33715
    functionName: find_jump_target
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - assert
    - update_label
    - get_u32
    linkageType: ''
    returnType: int
    signature: int find_jump_target(JSFunctionDef *s, int label0, int *pop, int *pline)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33721,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33725,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33726,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33730,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33731,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33735,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33736,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - bc_out
    - val
    argTypes:
    - DynBuf*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33737
      start: 33717
    functionDepth: 1
    functionLinenumber: 33717
    functionLinenumberEnd: 33737
    functionName: push_short_int
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_putc
    - dbuf_put_u32
    - dbuf_put_u16
    linkageType: ''
    returnType: void
    signature: void push_short_int(DynBuf *bc_out, int val)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33745,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33748,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33751,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33754,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33757,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33760,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33763,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33766,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33769,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33772,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33779,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33780,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33783,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33784,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33787,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33788,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33793,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33794,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 53
    argCount: 3
    argNames:
    - bc_out
    - op
    - idx
    argTypes:
    - DynBuf*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33795
      start: 33739
    functionDepth: 1
    functionLinenumber: 33739
    functionLinenumberEnd: 33795
    functionName: put_short_code
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_putc
    - dbuf_put_u16
    linkageType: ''
    returnType: void
    signature: void put_short_code(DynBuf *bc_out, int op, int idx)
  - BBCount: 191
    BranchProfiles: []
    Callsites:
    - Dst: js_dbuf_bytecode_init
      Src: /src/gpac/src/quickjs/quickjs.c:33817,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:33821,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:33828,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33837,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33838,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:33839,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33843,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33844,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:33845,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33849,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33850,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:33851,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33857,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33858,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33860,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:33861,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33867,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33868,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33870,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33871,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:33874,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:33875,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33879,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33880,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:33881,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33885,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33886,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:33887,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33890,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33891,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:33892,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33905,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33910,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:33911,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:33913,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33921,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:33924,1
    - Dst: put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33925,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:33928,1
    - Dst: put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:33929,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:33932,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33943,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:33944,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:33946,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:33947,1
    - Dst: skip_dead_code
      Src: /src/gpac/src/quickjs/quickjs.c:33948,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:33951,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:33952,1
    - Dst: skip_dead_code
      Src: /src/gpac/src/quickjs/quickjs.c:33964,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33968,1
    - Dst: find_jump_target
      Src: /src/gpac/src/quickjs/quickjs.c:33973,1
    - Dst: code_has_label
      Src: /src/gpac/src/quickjs/quickjs.c:33974,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:33976,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:33983,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:33984,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33985,1
    - Dst: skip_dead_code
      Src: /src/gpac/src/quickjs/quickjs.c:33986,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33999,1
    - Dst: find_jump_target
      Src: /src/gpac/src/quickjs/quickjs.c:34001,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:34003,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34011,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34016,1
    - Dst: find_jump_target
      Src: /src/gpac/src/quickjs/quickjs.c:34018,1
    - Dst: code_has_label
      Src: /src/gpac/src/quickjs/quickjs.c:34020,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:34021,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34022,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34026,1
    - Dst: code_has_label
      Src: /src/gpac/src/quickjs/quickjs.c:34029,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:34032,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34039,1
    - Dst: skip_dead_code
      Src: /src/gpac/src/quickjs/quickjs.c:34041,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:34043,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34057,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34058,1
    - Dst: add_reloc
      Src: /src/gpac/src/quickjs/quickjs.c:34059,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34066,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34067,1
    - Dst: add_reloc
      Src: /src/gpac/src/quickjs/quickjs.c:34068,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34077,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34078,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34084,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34085,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34090,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34091,1
    - Dst: add_reloc
      Src: /src/gpac/src/quickjs/quickjs.c:34094,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34107,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34108,1
    - Dst: find_jump_target
      Src: /src/gpac/src/quickjs/quickjs.c:34111,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:34113,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34115,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34123,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34124,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34125,1
    - Dst: add_reloc
      Src: /src/gpac/src/quickjs/quickjs.c:34128,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34131,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34138,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34149,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34151,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34152,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34157,1
    - Dst: M2
      Src: /src/gpac/src/quickjs/quickjs.c:34157,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34159,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34160,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34173,1
    - Dst: M2
      Src: /src/gpac/src/quickjs/quickjs.c:34173,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:34189,1
    - Dst: get_i32
      Src: /src/gpac/src/quickjs/quickjs.c:34199,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34201,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34203,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34206,1
    - Dst: push_short_int
      Src: /src/gpac/src/quickjs/quickjs.c:34207,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34213,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34219,1
    - Dst: M2
      Src: /src/gpac/src/quickjs/quickjs.c:34219,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34223,1
    - Dst: push_short_int
      Src: /src/gpac/src/quickjs/quickjs.c:34224,1
    - Dst: get_i32
      Src: /src/gpac/src/quickjs/quickjs.c:34232,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34234,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34236,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34239,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34240,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34241,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34253,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34255,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34256,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34257,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34265,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:34267,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34268,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34269,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34277,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34279,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:34280,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:34287,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34288,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34289,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34299,1
    - Dst: M3
      Src: /src/gpac/src/quickjs/quickjs.c:34299,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34300,1
    - Dst: M3
      Src: /src/gpac/src/quickjs/quickjs.c:34300,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34301,1
    - Dst: M4
      Src: /src/gpac/src/quickjs/quickjs.c:34301,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34310,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34316,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34318,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34319,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34324,1
    - Dst: M2
      Src: /src/gpac/src/quickjs/quickjs.c:34324,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34330,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34332,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34333,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34338,1
    - Dst: M2
      Src: /src/gpac/src/quickjs/quickjs.c:34338,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34340,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34341,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34356,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34358,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34359,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34360,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34372,1
    - Dst: M3
      Src: /src/gpac/src/quickjs/quickjs.c:34372,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34376,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34380,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34386,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:34387,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34403,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34406,1
    - Dst: M2
      Src: /src/gpac/src/quickjs/quickjs.c:34406,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34407,1
    - Dst: M2
      Src: /src/gpac/src/quickjs/quickjs.c:34407,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34409,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34410,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34411,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34418,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34420,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:34423,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34424,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34428,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34429,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34431,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34432,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34439,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34441,1
    - Dst: push_short_int
      Src: /src/gpac/src/quickjs/quickjs.c:34442,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34443,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34444,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34453,1
    - Dst: M3
      Src: /src/gpac/src/quickjs/quickjs.c:34453,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34455,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:34456,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34457,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34458,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34462,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:34463,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34472,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34473,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:34474,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34485,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34486,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34488,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:34489,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34493,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:34494,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34508,1
    - Dst: M3
      Src: /src/gpac/src/quickjs/quickjs.c:34508,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34513,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34518,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34519,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:34520,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34523,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34525,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34526,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34527,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34528,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34532,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34534,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34535,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34536,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34547,1
    - Dst: M4
      Src: /src/gpac/src/quickjs/quickjs.c:34547,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34562,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34563,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:34564,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34568,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34571,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34572,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:34573,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34587,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:34588,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:34595,1
    - Dst: memmove
      Src: /src/gpac/src/quickjs/quickjs.c:34633,1
    - Dst: put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:34661,1
    - Dst: put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34664,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34667,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:34673,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:34676,1
    - Dst: compute_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:34679,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:34680,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:34683,1
    - Dst: dbuf_error
      Src: /src/gpac/src/quickjs/quickjs.c:34686,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:34687,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:34693,1
    CyclomaticComplexity: 262
    EdgeCount: 262
    ICount: 773
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - JSFunctionDef*
    assertStmts:
    - condition: (ls->addr == -1)
      pos:
        line_end: 33912
        line_start: 33912
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (label >= 0 && label < s->label_count)
      pos:
        line_end: 34042
        line_start: 34042
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (diff == (int8_t)diff)
      pos:
        line_end: 33927
        line_start: 33927
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (label >= 0 && label < s->label_count)
      pos:
        line_end: 34112
        line_start: 34112
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (label_slots[i].first_reloc == NULL)
      pos:
        line_end: 34594
        line_start: 34594
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (diff == (int16_t)diff)
      pos:
        line_end: 33923
        line_start: 33923
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (label >= 0 && label < s->label_count)
      pos:
        line_end: 33910
        line_start: 33910
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 34695
      start: 33798
    functionDepth: 13
    functionLinenumber: 33798
    functionLinenumberEnd: 34695
    functionName: resolve_labels
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_putc
    - get_u16
    - put_u8
    - add_pc2line_info
    - JS_FreeAtom
    - M4
    - code_has_label
    - dbuf_put
    - update_label
    - put_u32
    - js_dbuf_bytecode_init
    - dbuf_put_u16
    - push_short_int
    - M2
    - add_reloc
    - get_u32
    - M3
    - put_short_code
    - js_free
    - skip_dead_code
    - memmove
    - assert
    - js_mallocz
    - dbuf_free
    - put_u16
    - dbuf_put_u32
    - compute_pc2line_info
    - code_match
    - dbuf_error
    - JS_ThrowOutOfMemory
    - find_jump_target
    - get_i32
    linkageType: ''
    returnType: __exception
    signature: __exception resolve_labels(JSContext *ctx, JSFunctionDef *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:34714,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:34720,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:34727,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:34731,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:34744,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 6
    argNames:
    - ctx
    - s
    - pos
    - op
    - stack_len
    - catch_pos
    argTypes:
    - JSContext*
    - StackSizeState*
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34749
      start: 34710
    functionDepth: 12
    functionLinenumber: 34710
    functionLinenumberEnd: 34749
    functionName: ss_check
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowInternalError
    - js_resize_array
    linkageType: ''
    returnType: __exception
    signature: "__exception ss_check(JSContext *ctx, StackSizeState *s,\n                                int
      pos, int op, int stack_len, int catch_pos)"
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:34763,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:34770,1
    - Dst: ss_check
      Src: /src/gpac/src/quickjs/quickjs.c:34780,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:34789,1
    - Dst: short_opcode_info
      Src: /src/gpac/src/quickjs/quickjs.c:34792,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:34794,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:34798,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34804,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:34814,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:34821,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34836,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34841,1
    - Dst: ss_check
      Src: /src/gpac/src/quickjs/quickjs.c:34851,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34857,1
    - Dst: ss_check
      Src: /src/gpac/src/quickjs/quickjs.c:34858,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34862,1
    - Dst: ss_check
      Src: /src/gpac/src/quickjs/quickjs.c:34863,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34868,1
    - Dst: ss_check
      Src: /src/gpac/src/quickjs/quickjs.c:34869,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34874,1
    - Dst: ss_check
      Src: /src/gpac/src/quickjs/quickjs.c:34875,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34879,1
    - Dst: ss_check
      Src: /src/gpac/src/quickjs/quickjs.c:34880,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34884,1
    - Dst: ss_check
      Src: /src/gpac/src/quickjs/quickjs.c:34885,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:34923,1
    - Dst: ss_check
      Src: /src/gpac/src/quickjs/quickjs.c:34935,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:34939,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:34940,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:34941,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:34945,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:34946,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:34947,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 192
    argCount: 3
    argNames:
    - ctx
    - fd
    - pstack_size
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34950
      start: 34751
    functionDepth: 13
    functionLinenumber: 34751
    functionLinenumberEnd: 34950
    functionName: compute_stack_size
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_u16
    - printf
    - get_u32
    - js_malloc
    - ss_check
    - short_opcode_info
    - JS_ThrowInternalError
    - js_free
    linkageType: ''
    returnType: __exception
    signature: "__exception compute_stack_size(JSContext *ctx,\n                                          JSFunctionDef
      *fd,\n                                          int *pstack_size)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: add_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:34965,1
    - Dst: find_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:34974,1
    - Dst: JS_ThrowSyntaxErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:34976,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - ctx
    - fd
    argTypes:
    - JSContext*
    - JSFunctionDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34984
      start: 34952
    functionDepth: 13
    functionLinenumber: 34952
    functionLinenumberEnd: 34984
    functionName: add_module_variables
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - find_closure_var
    - add_closure_var
    - JS_ThrowSyntaxErrorAtom
    linkageType: ''
    returnType: int
    signature: int add_module_variables(JSContext *ctx, JSFunctionDef *fd)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: add_eval_variables
      Src: /src/gpac/src/quickjs/quickjs.c:35029,1
    - Dst: add_module_variables
      Src: /src/gpac/src/quickjs/quickjs.c:35033,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:35038,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:35042,1
    - Dst: js_create_function
      Src: /src/gpac/src/quickjs/quickjs.c:35044,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:35045,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:35048,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:35054,1
    - Dst: dump_byte_code
      Src: /src/gpac/src/quickjs/quickjs.c:35055,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:35060,1
    - Dst: resolve_variables
      Src: /src/gpac/src/quickjs/quickjs.c:35064,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:35069,1
    - Dst: dump_byte_code
      Src: /src/gpac/src/quickjs/quickjs.c:35070,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:35075,1
    - Dst: resolve_labels
      Src: /src/gpac/src/quickjs/quickjs.c:35079,1
    - Dst: compute_stack_size
      Src: /src/gpac/src/quickjs/quickjs.c:35082,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:35101,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:35108,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:35109,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:35118,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:35121,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:35124,1
    - Dst: memcpy_no_ub
      Src: /src/gpac/src/quickjs/quickjs.c:35129,1
    - Dst: memcpy_no_ub
      Src: /src/gpac/src/quickjs/quickjs.c:35130,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:35135,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:35136,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:35141,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:35143,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:35149,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:35150,1
    - Dst: js_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:35161,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:35169,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:35174,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:35176,1
    - Dst: JS_DupContext
      Src: /src/gpac/src/quickjs/quickjs.c:35192,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:35194,1
    - Dst: js_dump_function_bytecode
      Src: /src/gpac/src/quickjs/quickjs.c:35198,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:35204,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:35207,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:35208,1
    - Dst: js_free_function_def
      Src: /src/gpac/src/quickjs/quickjs.c:35210,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 161
    argCount: 2
    argNames:
    - ctx
    - fd
    argTypes:
    - JSContext*
    - JSFunctionDef*
    assertStmts:
    - condition: (cpool_idx >= 0)
      pos:
        line_end: 35047
        line_start: 35047
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 35212
      start: 34989
    functionDepth: 22
    functionLinenumber: 34989
    functionLinenumberEnd: 35212
    functionName: js_create_function
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_DupContext
    - printf
    - JS_FreeAtom
    - js_realloc
    - js_dump_function_bytecode
    - dump_byte_code
    - memcpy_no_ub
    - list_entry
    - JS_MKPTR
    - memcpy
    - js_free_function_def
    - js_free
    - resolve_variables
    - add_module_variables
    - list_for_each_safe
    - add_eval_variables
    - assert
    - resolve_labels
    - js_create_function
    - js_mallocz
    - dbuf_free
    - list_del
    - compute_stack_size
    - add_gc_object
    - JS_IsException
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_create_function(JSContext *ctx, JSFunctionDef *fd)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:35221,1
    - Dst: JS_AtomGetStrRT
      Src: /src/gpac/src/quickjs/quickjs.c:35222,1
    - Dst: free_bytecode_atoms
      Src: /src/gpac/src/quickjs/quickjs.c:35226,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:35230,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:35234,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:35238,1
    - Dst: JS_FreeContext
      Src: /src/gpac/src/quickjs/quickjs.c:35241,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:35243,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:35245,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:35246,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:35247,1
    - Dst: remove_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:35250,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:35252,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:35254,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 2
    argNames:
    - rt
    - b
    argTypes:
    - JSRuntime*
    - JSFunctionBytecode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35256
      start: 35214
    functionDepth: 6
    functionLinenumber: 35214
    functionLinenumberEnd: 35256
    functionName: free_function_bytecode
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - remove_gc_object
    - printf
    - JS_FreeAtomRT
    - free_bytecode_atoms
    - JS_FreeContext
    - list_add_tail
    - JS_FreeValueRT
    - JS_AtomGetStrRT
    - js_free_rt
    linkageType: ''
    returnType: void
    signature: void free_function_bytecode(JSRuntime *rt, JSFunctionBytecode *b)
  - BBCount: 50
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_get_pos
      Src: /src/gpac/src/quickjs/quickjs.c:35267,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:35271,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:35274,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:35280,1
    - Dst: strcmp
      Src: /src/gpac/src/quickjs/quickjs.c:35336,1
    - Dst: js_parse_seek_token
      Src: /src/gpac/src/quickjs/quickjs.c:35341,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 72
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35342
      start: 35258
    functionDepth: 19
    functionLinenumber: 35258
    functionLinenumberEnd: 35342
    functionName: js_parse_directives
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - snprintf
    - js_parse_seek_token
    - strcmp
    - js_parse_get_pos
    - next_token
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_directives(JSParseState *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - atom
    argTypes:
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35348
      start: 35345
    functionDepth: 0
    functionLinenumber: 35345
    functionLinenumberEnd: 35348
    functionName: is_strict_future_keyword
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL is_strict_future_keyword(JSAtom atom)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:35358,1
    - Dst: is_strict_future_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:35361,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:35362,1
    - Dst: is_strict_future_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:35368,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:35369,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:35399,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 36
    argCount: 3
    argNames:
    - s
    - fd
    - func_name
    argTypes:
    - JSParseState*
    - JSFunctionDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35400
      start: 35350
    functionDepth: 12
    functionLinenumber: 35350
    functionLinenumberEnd: 35400
    functionName: js_parse_function_check_names
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_error
    - is_strict_future_keyword
    linkageType: ''
    returnType: int
    signature: "int js_parse_function_check_names(JSParseState *s, JSFunctionDef *fd,\n
      \                                        JSAtom func_name)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_new_function_def
      Src: /src/gpac/src/quickjs/quickjs.c:35407,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35427
      start: 35403
    functionDepth: 9
    functionLinenumber: 35403
    functionLinenumberEnd: 35427
    functionName: js_parse_function_class_fields_init
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_new_function_def
    linkageType: ''
    returnType: JSFunctionDef
    signature: JSFunctionDef *js_parse_function_class_fields_init(JSParseState *s)
  - BBCount: 104
    BranchProfiles: []
    Callsites:
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:35453,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:35454,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:35455,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:35459,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:35462,1
    - Dst: js_parse_error_reserved_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:35476,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:35483,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:35484,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:35485,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:35491,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:35495,1
    - Dst: find_global_var
      Src: /src/gpac/src/quickjs/quickjs.c:35501,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:35504,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:35505,1
    - Dst: find_lexical_decl
      Src: /src/gpac/src/quickjs/quickjs.c:35513,1
    - Dst: find_var
      Src: /src/gpac/src/quickjs/quickjs.c:35514,1
    - Dst: find_global_var
      Src: /src/gpac/src/quickjs/quickjs.c:35527,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:35530,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:35531,1
    - Dst: define_var
      Src: /src/gpac/src/quickjs/quickjs.c:35538,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:35543,1
    - Dst: js_new_function_def
      Src: /src/gpac/src/quickjs/quickjs.c:35549,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:35553,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35600,1
    - Dst: emit_class_field_init
      Src: /src/gpac/src/quickjs/quickjs.c:35604,1
    - Dst: js_parse_error_reserved_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:35614,1
    - Dst: add_arg
      Src: /src/gpac/src/quickjs/quickjs.c:35618,1
    - Dst: js_parse_skip_parens_token
      Src: /src/gpac/src/quickjs/quickjs.c:35626,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:35629,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:35632,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:35638,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:35652,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35658,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35659,1
    - Dst: add_arg
      Src: /src/gpac/src/quickjs/quickjs.c:35662,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35663,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35664,1
    - Dst: js_parse_destructuring_element
      Src: /src/gpac/src/quickjs/quickjs.c:35666,1
    - Dst: js_parse_error_reserved_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:35675,1
    - Dst: js_parse_error_reserved_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:35680,1
    - Dst: js_parse_check_duplicate_parameter
      Src: /src/gpac/src/quickjs/quickjs.c:35684,1
    - Dst: define_var
      Src: /src/gpac/src/quickjs/quickjs.c:35686,1
    - Dst: add_arg
      Src: /src/gpac/src/quickjs/quickjs.c:35690,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:35693,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35696,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35697,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35699,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35700,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:35701,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35702,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35704,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35705,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:35714,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:35717,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35718,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35719,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35720,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35721,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35722,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:35723,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35724,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:35725,1
    - Dst: set_object_name
      Src: /src/gpac/src/quickjs/quickjs.c:35727,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35728,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35729,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35730,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:35731,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35732,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:35733,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35734,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35741,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35742,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35743,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:35744,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35745,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:35749,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:35753,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:35758,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:35764,1
    - Dst: find_var
      Src: /src/gpac/src/quickjs/quickjs.c:35781,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:35782,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35785,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:35786,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35787,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35788,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:35789,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35790,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35796,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35797,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:35804,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35810,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:35815,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:35819,1
    - Dst: js_parse_function_check_names
      Src: /src/gpac/src/quickjs/quickjs.c:35823,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:35826,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35830,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35832,1
    - Dst: js_strndup
      Src: /src/gpac/src/quickjs/quickjs.c:35839,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:35848,1
    - Dst: js_parse_directives
      Src: /src/gpac/src/quickjs/quickjs.c:35852,1
    - Dst: js_parse_function_check_names
      Src: /src/gpac/src/quickjs/quickjs.c:35856,1
    - Dst: js_parse_source_element
      Src: /src/gpac/src/quickjs/quickjs.c:35860,1
    - Dst: js_strndup
      Src: /src/gpac/src/quickjs/quickjs.c:35866,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:35871,1
    - Dst: js_is_live_code
      Src: /src/gpac/src/quickjs/quickjs.c:35877,1
    - Dst: emit_return
      Src: /src/gpac/src/quickjs/quickjs.c:35878,1
    - Dst: reparse_ident_token
      Src: /src/gpac/src/quickjs/quickjs.c:35887,1
    - Dst: cpool_add
      Src: /src/gpac/src/quickjs/quickjs.c:35895,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35904,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35905,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35907,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35908,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35912,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35913,1
    - Dst: add_global_var
      Src: /src/gpac/src/quickjs/quickjs.c:35919,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35928,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35929,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:35930,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35931,1
    - Dst: find_var
      Src: /src/gpac/src/quickjs/quickjs.c:35934,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:35936,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35941,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35942,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:35943,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35944,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35950,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:35954,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:35955,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35956,1
    - Dst: define_var
      Src: /src/gpac/src/quickjs/quickjs.c:35960,1
    - Dst: add_global_var
      Src: /src/gpac/src/quickjs/quickjs.c:35978,1
    - Dst: add_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:35983,1
    - Dst: js_free_function_def
      Src: /src/gpac/src/quickjs/quickjs.c:35993,1
    CyclomaticComplexity: 196
    EdgeCount: 196
    ICount: 441
    argCount: 7
    argNames:
    - s
    - func_type
    - func_kind
    - func_name
    - ptr
    - export_flag
    - pfd
    argTypes:
    - JSParseState*
    - JSParseFunctionEnum
    - JSFunctionKindEnum
    - JSAtom
    - uint8_t*
    - JSParseExportEnum
    - JSFunctionDef**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35997
      start: 35431
    functionDepth: 33
    functionLinenumber: 35431
    functionLinenumberEnd: 35997
    functionName: js_parse_function_decl2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_FreeAtom
    - js_strndup
    - add_global_var
    - js_parse_error
    - js_parse_error_reserved_identifier
    - token_is_pseudo_keyword
    - js_parse_expect
    - peek_token
    - next_token
    - js_parse_skip_parens_token
    - emit_class_field_init
    - emit_return
    - js_new_function_def
    - emit_u32
    - js_parse_check_duplicate_parameter
    - reparse_ident_token
    - define_var
    - add_arg
    - js_is_live_code
    - js_parse_source_element
    - js_free_function_def
    - emit_u16
    - find_lexical_decl
    - emit_op
    - find_global_var
    - set_object_name
    - emit_label
    - js_parse_function_check_names
    - JS_DupAtom
    - new_label
    - js_parse_assign_expr
    - emit_atom
    - emit_goto
    - add_var
    - cpool_add
    - js_parse_directives
    - add_export_entry
    - find_var
    - js_parse_destructuring_element
    - push_scope
    linkageType: ''
    returnType: __exception
    signature: "__exception js_parse_function_decl2(JSParseState *s,\n                                               JSParseFunctionEnum
      func_type,\n                                               JSFunctionKindEnum
      func_kind,\n                                               JSAtom func_name,\n
      \                                              const uint8_t *ptr,\n                                               JSParseExportEnum
      export_flag,\n                                               JSFunctionDef **pfd)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_function_decl2
      Src: /src/gpac/src/quickjs/quickjs.c:36005,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - s
    - func_type
    - func_kind
    - func_name
    - ptr
    argTypes:
    - JSParseState*
    - JSParseFunctionEnum
    - JSFunctionKindEnum
    - JSAtom
    - uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36007
      start: 35999
    functionDepth: 34
    functionLinenumber: 35999
    functionLinenumberEnd: 36007
    functionName: js_parse_function_decl
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 5
    functionsReached:
    - js_parse_function_decl2
    linkageType: ''
    returnType: __exception
    signature: "__exception js_parse_function_decl(JSParseState *s,\n                                              JSParseFunctionEnum
      func_type,\n                                              JSFunctionKindEnum
      func_kind,\n                                              JSAtom func_name,\n
      \                                             const uint8_t *ptr)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:36014,1
    - Dst: js_parse_directives
      Src: /src/gpac/src/quickjs/quickjs.c:36017,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:36026,1
    - Dst: js_parse_source_element
      Src: /src/gpac/src/quickjs/quickjs.c:36032,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36041,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36042,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36044,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36045,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36047,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:36048,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36050,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36051,1
    - Dst: emit_return
      Src: /src/gpac/src/quickjs/quickjs.c:36053,1
    - Dst: emit_return
      Src: /src/gpac/src/quickjs/quickjs.c:36055,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36059
      start: 36009
    functionDepth: 33
    functionLinenumber: 36009
    functionLinenumberEnd: 36059
    functionName: js_parse_program
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - js_parse_directives
    - js_parse_source_element
    - emit_atom
    - next_token
    - emit_return
    - add_var
    - emit_u16
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_program(JSParseState *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:36065,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 5
    argNames:
    - ctx
    - s
    - input
    - input_len
    - filename
    argTypes:
    - JSContext*
    - JSParseState*
    - char*
    - size_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36077
      start: 36061
    functionDepth: 0
    functionLinenumber: 36061
    functionLinenumberEnd: 36077
    functionName: js_parse_init
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: "void js_parse_init(JSContext *ctx, JSParseState *s,\n                          const
      char *input, size_t input_len,\n                          const char *filename)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:36086,1
    - Dst: js_closure
      Src: /src/gpac/src/quickjs/quickjs.c:36088,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:36089,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:36092,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:36094,1
    - Dst: js_create_module_function
      Src: /src/gpac/src/quickjs/quickjs.c:36095,1
    - Dst: js_link_module
      Src: /src/gpac/src/quickjs/quickjs.c:36097,1
    - Dst: js_evaluate_module
      Src: /src/gpac/src/quickjs/quickjs.c:36099,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:36100,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:36105,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:36106,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 5
    argNames:
    - ctx
    - fun_obj
    - this_obj
    - var_refs
    - sf
    argTypes:
    - JSContext*
    - JSValue
    - JSValueConst
    - JSVarRef**
    - JSStackFrame*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36109
      start: 36079
    functionDepth: 28
    functionLinenumber: 36079
    functionLinenumberEnd: 36109
    functionName: JS_EvalFunctionInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_TAG
    - js_link_module
    - JS_ThrowTypeError
    - js_evaluate_module
    - JS_FreeValue
    - JS_IsException
    - JS_CallFree
    - js_create_module_function
    - js_closure
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_EvalFunctionInternal(JSContext *ctx, JSValue fun_obj,\n
      \                                      JSValueConst this_obj,\n                                       JSVarRef
      **var_refs, JSStackFrame *sf)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_EvalFunctionInternal
      Src: /src/gpac/src/quickjs/quickjs.c:36113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - fun_obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36114
      start: 36111
    functionDepth: 29
    functionLinenumber: 36111
    functionLinenumberEnd: 36114
    functionName: JS_EvalFunction
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_EvalFunctionInternal
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_EvalFunction(JSContext *ctx, JSValue fun_obj)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_init
      Src: /src/gpac/src/quickjs/quickjs.c:36130,1
    - Dst: skip_shebang
      Src: /src/gpac/src/quickjs/quickjs.c:36131,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:36138,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:36139,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:36139,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:36140,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:36141,1
    - Dst: js_class_has_bytecode
      Src: /src/gpac/src/quickjs/quickjs.c:36141,1
    - Dst: JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:36153,1
    - Dst: js_new_module_def
      Src: /src/gpac/src/quickjs/quickjs.c:36156,1
    - Dst: js_new_function_def
      Src: /src/gpac/src/quickjs/quickjs.c:36162,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:36181,1
    - Dst: add_closure_variables
      Src: /src/gpac/src/quickjs/quickjs.c:36183,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:36194,1
    - Dst: js_parse_program
      Src: /src/gpac/src/quickjs/quickjs.c:36197,1
    - Dst: free_token
      Src: /src/gpac/src/quickjs/quickjs.c:36200,1
    - Dst: js_free_function_def
      Src: /src/gpac/src/quickjs/quickjs.c:36201,1
    - Dst: js_create_function
      Src: /src/gpac/src/quickjs/quickjs.c:36209,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:36210,1
    - Dst: js_resolve_module
      Src: /src/gpac/src/quickjs/quickjs.c:36215,1
    - Dst: JS_NewModuleValue
      Src: /src/gpac/src/quickjs/quickjs.c:36217,1
    - Dst: JS_EvalFunctionInternal
      Src: /src/gpac/src/quickjs/quickjs.c:36222,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:36228,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:36228,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 97
    argCount: 7
    argNames:
    - ctx
    - this_obj
    - input
    - input_len
    - filename
    - flags
    - scope_idx
    argTypes:
    - JSContext*
    - JSValueConst
    - char*
    - size_t
    - char*
    - int
    - int
    assertStmts:
    - condition: (JS_VALUE_GET_TAG(sf->cur_func) == JS_TAG_OBJECT)
      pos:
        line_end: 36138
        line_start: 36138
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (js_class_has_bytecode(p->class_id))
      pos:
        line_end: 36140
        line_start: 36140
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (sf != NULL)
      pos:
        line_end: 36137
        line_start: 36137
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 36230
      start: 36117
    functionDepth: 34
    functionLinenumber: 36117
    functionLinenumberEnd: 36230
    functionName: __JS_EvalInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_resolve_module
    - js_class_has_bytecode
    - js_new_function_def
    - JS_VALUE_GET_TAG
    - JS_MKPTR
    - JS_EvalFunctionInternal
    - js_new_module_def
    - js_free_function_def
    - skip_shebang
    - js_parse_init
    - assert
    - add_closure_variables
    - js_create_function
    - JS_DupAtom
    - JS_NewModuleValue
    - free_token
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - js_parse_program
    - JS_NewAtom
    - push_scope
    linkageType: ''
    returnType: JSValue
    signature: "JSValue __JS_EvalInternal(JSContext *ctx, JSValueConst this_obj,\n
      \                                const char *input, size_t input_len,\n                                 const
      char *filename, int flags, int scope_idx)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:36241,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:36242,1
    - Dst: JSContext*::eval_internal
      Src: /src/gpac/src/quickjs/quickjs.c:36248,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 7
    argNames:
    - ctx
    - this_obj
    - input
    - input_len
    - filename
    - flags
    - scope_idx
    argTypes:
    - JSContext*
    - JSValueConst
    - char*
    - size_t
    - char*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36253
      start: 36233
    functionDepth: 12
    functionLinenumber: 36233
    functionLinenumberEnd: 36253
    functionName: JS_EvalInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JSContext*::eval_internal
    - unlikely
    - JS_ThrowTypeError
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_EvalInternal(JSContext *ctx, JSValueConst this_obj,\n                               const
      char *input, size_t input_len,\n                               const char *filename,
      int flags, int scope_idx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:36262,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:36263,1
    - Dst: JS_ToCStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:36264,1
    - Dst: JS_EvalInternal
      Src: /src/gpac/src/quickjs/quickjs.c:36267,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:36268,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 5
    argNames:
    - ctx
    - this_obj
    - val
    - flags
    - scope_idx
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36271
      start: 36255
    functionDepth: 13
    functionLinenumber: 36255
    functionLinenumberEnd: 36271
    functionName: JS_EvalObject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - JS_IsString
    - JS_DupValue
    - JS_ToCStringLen
    - JS_FreeCString
    - JS_EvalInternal
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_EvalObject(JSContext *ctx, JSValueConst this_obj,\n                             JSValueConst
      val, int flags, int scope_idx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:36281,1
    - Dst: JS_EvalInternal
      Src: /src/gpac/src/quickjs/quickjs.c:36284,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 6
    argNames:
    - ctx
    - this_obj
    - input
    - input_len
    - filename
    - eval_flags
    argTypes:
    - JSContext*
    - JSValueConst
    - char*
    - size_t
    - char*
    - int
    assertStmts:
    - condition: "(eval_type == JS_EVAL_TYPE_GLOBAL ||\n           eval_type == JS_EVAL_TYPE_MODULE)"
      pos:
        line_end: 36281
        line_start: 36280
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 36287
      start: 36273
    functionDepth: 13
    functionLinenumber: 36273
    functionLinenumberEnd: 36287
    functionName: JS_EvalThis
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - assert
    - JS_EvalInternal
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_EvalThis(JSContext *ctx, JSValueConst this_obj,\n                    const
      char *input, size_t input_len,\n                    const char *filename, int
      eval_flags)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_EvalThis
      Src: /src/gpac/src/quickjs/quickjs.c:36292,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ctx
    - input
    - input_len
    - filename
    - eval_flags
    argTypes:
    - JSContext*
    - char*
    - size_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36294
      start: 36289
    functionDepth: 14
    functionLinenumber: 36289
    functionLinenumberEnd: 36294
    functionName: JS_Eval
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 12
    functionsReached:
    - JS_EvalThis
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_Eval(JSContext *ctx, const char *input, size_t input_len,\n
      \               const char *filename, int eval_flags)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:36298,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:36299,1
    - Dst: js_resolve_module
      Src: /src/gpac/src/quickjs/quickjs.c:36300,1
    - Dst: js_free_modules
      Src: /src/gpac/src/quickjs/quickjs.c:36301,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36306
      start: 36296
    functionDepth: 15
    functionLinenumber: 36296
    functionLinenumberEnd: 36306
    functionName: JS_ResolveModule
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_modules
    - JS_VALUE_GET_PTR
    - js_resolve_module
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: int
    signature: int JS_ResolveModule(JSContext *ctx, JSValueConst obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:36327,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSObjectList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36328
      start: 36325
    functionDepth: 0
    functionLinenumber: 36325
    functionLinenumberEnd: 36328
    functionName: js_object_list_init
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: void js_object_list_init(JSObjectList *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p
    - hash_size
    argTypes:
    - JSObject*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36333
      start: 36330
    functionDepth: 0
    functionLinenumber: 36330
    functionLinenumberEnd: 36333
    functionName: js_object_list_get_hash
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t js_object_list_get_hash(JSObject *p, uint32_t hash_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:36341,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:36344,1
    - Dst: js_object_list_get_hash
      Src: /src/gpac/src/quickjs/quickjs.c:36353,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - ctx
    - s
    - new_hash_size
    argTypes:
    - JSContext*
    - JSObjectList*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36358
      start: 36335
    functionDepth: 3
    functionLinenumber: 36335
    functionLinenumberEnd: 36358
    functionName: js_object_list_resize_hash
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc
    - js_object_list_get_hash
    - js_free
    linkageType: ''
    returnType: int
    signature: "int js_object_list_resize_hash(JSContext *ctx, JSObjectList *s,\n
      \                                uint32_t new_hash_size)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:36367,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:36371,1
    - Dst: max_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:36372,1
    - Dst: js_object_list_resize_hash
      Src: /src/gpac/src/quickjs/quickjs.c:36375,1
    - Dst: js_object_list_get_hash
      Src: /src/gpac/src/quickjs/quickjs.c:36379,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - s
    - obj
    argTypes:
    - JSContext*
    - JSObjectList*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36384
      start: 36362
    functionDepth: 5
    functionLinenumber: 36362
    functionLinenumberEnd: 36384
    functionName: js_object_list_add
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_object_list_resize_hash
    - unlikely
    - max_uint32
    - js_resize_array
    - js_object_list_get_hash
    linkageType: ''
    returnType: int
    signature: int js_object_list_add(JSContext *ctx, JSObjectList *s, JSObject *obj)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_object_list_get_hash
      Src: /src/gpac/src/quickjs/quickjs.c:36395,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - s
    - obj
    argTypes:
    - JSContext*
    - JSObjectList*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36404
      start: 36387
    functionDepth: 1
    functionLinenumber: 36387
    functionLinenumberEnd: 36404
    functionName: js_object_list_find
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_object_list_get_hash
    linkageType: ''
    returnType: int
    signature: int js_object_list_find(JSContext *ctx, JSObjectList *s, JSObject *obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:36408,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:36409,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - JSObjectList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36410
      start: 36406
    functionDepth: 3
    functionLinenumber: 36406
    functionLinenumberEnd: 36410
    functionName: js_object_list_end
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free
    linkageType: ''
    returnType: void
    signature: void js_object_list_end(JSContext *ctx, JSObjectList *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36490
      start: 36483
    functionDepth: 0
    functionLinenumber: 36483
    functionLinenumberEnd: 36490
    functionName: is_be
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL is_be(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:36494,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - BCWriterState*
    - uint8_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36495
      start: 36492
    functionDepth: 1
    functionLinenumber: 36492
    functionLinenumberEnd: 36495
    functionName: bc_put_u8
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_putc
    linkageType: ''
    returnType: void
    signature: void bc_put_u8(BCWriterState *s, uint8_t v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: is_be
      Src: /src/gpac/src/quickjs/quickjs.c:36499,1
    - Dst: bswap16
      Src: /src/gpac/src/quickjs/quickjs.c:36500,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36501,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - BCWriterState*
    - uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36502
      start: 36497
    functionDepth: 1
    functionLinenumber: 36497
    functionLinenumberEnd: 36502
    functionName: bc_put_u16
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bswap16
    - is_be
    - dbuf_put_u16
    linkageType: ''
    returnType: void
    signature: void bc_put_u16(BCWriterState *s, uint16_t v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: is_be
      Src: /src/gpac/src/quickjs/quickjs.c:36506,1
    - Dst: bswap32
      Src: /src/gpac/src/quickjs/quickjs.c:36507,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:36508,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - BCWriterState*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36509
      start: 36504
    functionDepth: 1
    functionLinenumber: 36504
    functionLinenumberEnd: 36509
    functionName: bc_put_u32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_put_u32
    - is_be
    - bswap32
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused bc_put_u32(BCWriterState *s, uint32_t v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: is_be
      Src: /src/gpac/src/quickjs/quickjs.c:36513,1
    - Dst: bswap64
      Src: /src/gpac/src/quickjs/quickjs.c:36514,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:36515,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - BCWriterState*
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36516
      start: 36511
    functionDepth: 1
    functionLinenumber: 36511
    functionLinenumberEnd: 36516
    functionName: bc_put_u64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bswap64
    - dbuf_put
    - is_be
    linkageType: ''
    returnType: void
    signature: void bc_put_u64(BCWriterState *s, uint64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36520,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - BCWriterState*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36521
      start: 36518
    functionDepth: 2
    functionLinenumber: 36518
    functionLinenumberEnd: 36521
    functionName: bc_put_leb128
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_put_leb128
    linkageType: ''
    returnType: void
    signature: void bc_put_leb128(BCWriterState *s, uint32_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_put_sleb128
      Src: /src/gpac/src/quickjs/quickjs.c:36525,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - BCWriterState*
    - int32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36526
      start: 36523
    functionDepth: 3
    functionLinenumber: 36523
    functionLinenumberEnd: 36526
    functionName: bc_put_sleb128
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_put_sleb128
    linkageType: ''
    returnType: void
    signature: void bc_put_sleb128(BCWriterState *s, int32_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - pflags
    - pidx
    - val
    - n
    argTypes:
    - uint32_t*
    - int*
    - uint32_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36532
      start: 36528
    functionDepth: 0
    functionLinenumber: 36528
    functionLinenumberEnd: 36532
    functionName: bc_set_flags
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void bc_set_flags(uint32_t *pflags, int *pidx, uint32_t val, int n)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:36538,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:36550,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:36558,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 3
    argNames:
    - s
    - pres
    - atom
    argTypes:
    - BCWriterState*
    - uint32_t*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36572
      start: 36534
    functionDepth: 5
    functionLinenumber: 36534
    functionLinenumberEnd: 36572
    functionName: bc_atom_to_idx
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - __JS_AtomIsTaggedInt
    - js_resize_array
    linkageType: ''
    returnType: int
    signature: int bc_atom_to_idx(BCWriterState *s, uint32_t *pres, JSAtom atom)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:36578,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:36579,1
    - Dst: bc_atom_to_idx
      Src: /src/gpac/src/quickjs/quickjs.c:36581,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36585,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - atom
    argTypes:
    - BCWriterState*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36587
      start: 36574
    functionDepth: 6
    functionLinenumber: 36574
    functionLinenumberEnd: 36587
    functionName: bc_put_atom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_atom_to_idx
    - __JS_AtomIsTaggedInt
    - bc_put_leb128
    - __JS_AtomToUInt32
    linkageType: ''
    returnType: int
    signature: int bc_put_atom(BCWriterState *s, JSAtom atom)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: short_opcode_info
      Src: /src/gpac/src/quickjs/quickjs.c:36596,1
    - Dst: short_opcode_info
      Src: /src/gpac/src/quickjs/quickjs.c:36597,1
    - Dst: put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36606,1
    - Dst: bswap16
      Src: /src/gpac/src/quickjs/quickjs.c:36607,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36607,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:36615,1
    - Dst: bswap32
      Src: /src/gpac/src/quickjs/quickjs.c:36616,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:36616,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:36620,1
    - Dst: bswap32
      Src: /src/gpac/src/quickjs/quickjs.c:36621,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:36621,1
    - Dst: put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36622,1
    - Dst: bswap16
      Src: /src/gpac/src/quickjs/quickjs.c:36623,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36623,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:36627,1
    - Dst: bswap32
      Src: /src/gpac/src/quickjs/quickjs.c:36628,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:36628,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:36629,1
    - Dst: bswap32
      Src: /src/gpac/src/quickjs/quickjs.c:36630,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:36630,1
    - Dst: put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36632,1
    - Dst: bswap16
      Src: /src/gpac/src/quickjs/quickjs.c:36633,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36633,1
    - Dst: put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36637,1
    - Dst: bswap16
      Src: /src/gpac/src/quickjs/quickjs.c:36638,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36638,1
    - Dst: put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36639,1
    - Dst: bswap16
      Src: /src/gpac/src/quickjs/quickjs.c:36640,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36640,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 46
    argCount: 2
    argNames:
    - bc_buf
    - bc_len
    argTypes:
    - uint8_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36647
      start: 36589
    functionDepth: 1
    functionLinenumber: 36589
    functionLinenumberEnd: 36647
    functionName: bc_byte_swap
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_u16
    - get_u32
    - short_opcode_info
    - bswap16
    - put_u32
    - bswap32
    - put_u16
    linkageType: ''
    returnType: void
    signature: void bc_byte_swap(uint8_t *bc_buf, int bc_len)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:36657,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:36660,1
    - Dst: short_opcode_info
      Src: /src/gpac/src/quickjs/quickjs.c:36665,1
    - Dst: short_opcode_info
      Src: /src/gpac/src/quickjs/quickjs.c:36666,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:36672,1
    - Dst: bc_atom_to_idx
      Src: /src/gpac/src/quickjs/quickjs.c:36673,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:36675,1
    - Dst: is_be
      Src: /src/gpac/src/quickjs/quickjs.c:36683,1
    - Dst: bc_byte_swap
      Src: /src/gpac/src/quickjs/quickjs.c:36684,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:36686,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:36688,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:36691,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 3
    argNames:
    - s
    - bc_buf1
    - bc_len
    argTypes:
    - BCWriterState*
    - uint8_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36693
      start: 36649
    functionDepth: 6
    functionLinenumber: 36649
    functionLinenumberEnd: 36693
    functionName: JS_WriteFunctionBytecode
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_atom_to_idx
    - dbuf_put
    - is_be
    - get_u32
    - js_malloc
    - memcpy
    - short_opcode_info
    - put_u32
    - bc_byte_swap
    - js_free
    linkageType: ''
    returnType: int
    signature: "int JS_WriteFunctionBytecode(BCWriterState *s,\n                                    const
      uint8_t *bc_buf1, int bc_len)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36698,1
    - Dst: bc_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36701,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:36703,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - p
    argTypes:
    - BCWriterState*
    - JSString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36705
      start: 36695
    functionDepth: 3
    functionLinenumber: 36695
    functionLinenumberEnd: 36705
    functionName: JS_WriteString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_put_leb128
    - dbuf_put
    - bc_put_u16
    linkageType: ''
    returnType: void
    signature: void JS_WriteString(BCWriterState *s, JSString *p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:36715,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:36717,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:36718,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:36720,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36740,1
    - Dst: bc_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:36744,1
    - Dst: bc_put_u64
      Src: /src/gpac/src/quickjs/quickjs.c:36746,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:36750,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 32
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - BCWriterState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36754
      start: 36707
    functionDepth: 3
    functionLinenumber: 36707
    functionLinenumberEnd: 36754
    functionName: JS_WriteBigInt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_put_u8
    - JS_VALUE_GET_PTR
    - bc_put_leb128
    - JS_VALUE_GET_TAG
    - bc_put_u32
    - bc_put_u64
    - js_bigint_set_short
    linkageType: ''
    returnType: int
    signature: int JS_WriteBigInt(BCWriterState *s, JSValueConst obj)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:36760,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:36764,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:36766,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:36767,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:36768,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:36769,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:36770,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:36771,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:36772,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:36773,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:36774,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:36775,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:36776,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:36777,1
    - Dst: bc_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36778,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:36779,1
    - Dst: bc_put_atom
      Src: /src/gpac/src/quickjs/quickjs.c:36780,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36782,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36783,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36784,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36785,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36786,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36787,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36788,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36791,1
    - Dst: bc_put_atom
      Src: /src/gpac/src/quickjs/quickjs.c:36794,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36795,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36796,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:36798,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:36799,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:36800,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:36801,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:36802,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:36803,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36806,1
    - Dst: bc_put_atom
      Src: /src/gpac/src/quickjs/quickjs.c:36811,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36812,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:36814,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:36815,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:36816,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:36817,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:36818,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:36819,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:36820,1
    - Dst: JS_WriteFunctionBytecode
      Src: /src/gpac/src/quickjs/quickjs.c:36823,1
    - Dst: bc_put_atom
      Src: /src/gpac/src/quickjs/quickjs.c:36827,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36828,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:36829,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36831,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:36832,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36834,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:36839,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 77
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - BCWriterState*
    - JSValueConst
    assertStmts:
    - condition: (idx <= 16)
      pos:
        line_end: 36776
        line_start: 36776
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (idx <= 8)
      pos:
        line_end: 36818
        line_start: 36818
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (idx <= 8)
      pos:
        line_end: 36801
        line_start: 36801
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 36845
      start: 36758
    functionDepth: 7
    functionLinenumber: 36758
    functionLinenumberEnd: 36845
    functionName: JS_WriteFunctionTag
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_put_u8
    - JS_VALUE_GET_PTR
    - bc_put_leb128
    - dbuf_put
    - bc_set_flags
    - bc_put_atom
    - JS_WriteFunctionBytecode
    - assert
    - bc_put_u16
    - JS_WriteObjectRec
    linkageType: ''
    returnType: int
    signature: int JS_WriteFunctionTag(BCWriterState *s, JSValueConst obj)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:36849,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:36852,1
    - Dst: bc_put_atom
      Src: /src/gpac/src/quickjs/quickjs.c:36853,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36855,1
    - Dst: bc_put_atom
      Src: /src/gpac/src/quickjs/quickjs.c:36858,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:36859,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36863,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:36866,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36868,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36870,1
    - Dst: bc_put_atom
      Src: /src/gpac/src/quickjs/quickjs.c:36871,1
    - Dst: bc_put_atom
      Src: /src/gpac/src/quickjs/quickjs.c:36873,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36876,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36879,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36882,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36885,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:36886,1
    - Dst: bc_put_atom
      Src: /src/gpac/src/quickjs/quickjs.c:36887,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36888,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:36891,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:36893,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 40
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - BCWriterState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36898
      start: 36847
    functionDepth: 7
    functionLinenumber: 36847
    functionLinenumberEnd: 36898
    functionName: JS_WriteModule
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_put_u8
    - JS_VALUE_GET_PTR
    - bc_put_leb128
    - bc_put_atom
    - JS_WriteObjectRec
    linkageType: ''
    returnType: int
    signature: int JS_WriteModule(BCWriterState *s, JSValueConst obj)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:36902,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:36911,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:36914,1
    - Dst: js_get_length32
      Src: /src/gpac/src/quickjs/quickjs.c:36917,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36919,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:36921,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:36922,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:36924,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:36925,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:36930,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:36931,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:36933,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:36934,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 38
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - BCWriterState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36941
      start: 36900
    functionDepth: 14
    functionLinenumber: 36900
    functionLinenumberEnd: 36941
    functionName: JS_WriteArray
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_put_u8
    - bc_put_leb128
    - JS_IsException
    - JS_GetPropertyUint32
    - JS_WriteObjectRec
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - js_get_length32
    - JS_GetProperty
    linkageType: ''
    returnType: int
    signature: int JS_WriteArray(BCWriterState *s, JSValueConst obj)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:36945,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:36952,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36957,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:36958,1
    - Dst: JS_AtomIsString
      Src: /src/gpac/src/quickjs/quickjs.c:36961,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:36964,1
    - Dst: bc_put_atom
      Src: /src/gpac/src/quickjs/quickjs.c:36970,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:36971,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - BCWriterState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36980
      start: 36943
    functionDepth: 12
    functionLinenumber: 36943
    functionLinenumberEnd: 36980
    functionName: JS_WriteObjectTag
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_put_u8
    - bc_put_leb128
    - get_shape_prop
    - JS_ThrowTypeError
    - bc_put_atom
    - JS_VALUE_GET_OBJ
    - JS_AtomIsString
    - JS_WriteObjectRec
    linkageType: ''
    returnType: int
    signature: int JS_WriteObjectTag(BCWriterState *s, JSValueConst obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:36984,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:36987,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:36988,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36989,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:36990,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:36991,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:36991,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - BCWriterState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36994
      start: 36982
    functionDepth: 3
    functionLinenumber: 36982
    functionLinenumberEnd: 36994
    functionName: JS_WriteTypedArray
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_put_u8
    - bc_put_leb128
    - JS_MKPTR
    - JS_VALUE_GET_OBJ
    - JS_WriteObjectRec
    linkageType: ''
    returnType: int
    signature: int JS_WriteTypedArray(BCWriterState *s, JSValueConst obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:36998,1
    - Dst: JS_ThrowTypeErrorDetachedArrayBuffer
      Src: /src/gpac/src/quickjs/quickjs.c:37001,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37004,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37005,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37006,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:37007,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - BCWriterState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37009
      start: 36996
    functionDepth: 3
    functionLinenumber: 36996
    functionLinenumberEnd: 37009
    functionName: JS_WriteArrayBuffer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorDetachedArrayBuffer
    - bc_put_u8
    - bc_put_leb128
    - dbuf_put
    - JS_VALUE_GET_OBJ
    linkageType: ''
    returnType: int
    signature: int JS_WriteArrayBuffer(BCWriterState *s, JSValueConst obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:37013,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:37015,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37016,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37017,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37018,1
    - Dst: bc_put_u64
      Src: /src/gpac/src/quickjs/quickjs.c:37019,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:37020,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - BCWriterState*
    - JSValueConst
    assertStmts:
    - condition: (!abuf->detached)
      pos:
        line_end: 37014
        line_start: 37014
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 37026
      start: 37011
    functionDepth: 5
    functionLinenumber: 37011
    functionLinenumberEnd: 37026
    functionName: JS_WriteSharedArrayBuffer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_put_u8
    - bc_put_leb128
    - assert
    - JS_VALUE_GET_OBJ
    - bc_put_u64
    - js_resize_array
    linkageType: ''
    returnType: int
    signature: int JS_WriteSharedArrayBuffer(BCWriterState *s, JSValueConst obj)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:37032,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:37033,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:37037,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37040,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37043,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37046,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:37046,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37049,1
    - Dst: bc_put_sleb128
      Src: /src/gpac/src/quickjs/quickjs.c:37050,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:37050,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37055,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:37056,1
    - Dst: bc_put_u64
      Src: /src/gpac/src/quickjs/quickjs.c:37057,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:37062,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37063,1
    - Dst: JS_WriteString
      Src: /src/gpac/src/quickjs/quickjs.c:37064,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:37070,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:37071,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:37073,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:37074,1
    - Dst: JS_WriteFunctionTag
      Src: /src/gpac/src/quickjs/quickjs.c:37080,1
    - Dst: JS_WriteModule
      Src: /src/gpac/src/quickjs/quickjs.c:37086,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:37091,1
    - Dst: js_object_list_find
      Src: /src/gpac/src/quickjs/quickjs.c:37095,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37097,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37098,1
    - Dst: js_object_list_add
      Src: /src/gpac/src/quickjs/quickjs.c:37101,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:37106,1
    - Dst: JS_WriteArray
      Src: /src/gpac/src/quickjs/quickjs.c:37113,1
    - Dst: JS_WriteObjectTag
      Src: /src/gpac/src/quickjs/quickjs.c:37116,1
    - Dst: JS_WriteArrayBuffer
      Src: /src/gpac/src/quickjs/quickjs.c:37119,1
    - Dst: JS_WriteSharedArrayBuffer
      Src: /src/gpac/src/quickjs/quickjs.c:37124,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37127,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:37128,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37134,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:37135,1
    - Dst: JS_WriteTypedArray
      Src: /src/gpac/src/quickjs/quickjs.c:37140,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:37142,1
    - Dst: JS_WriteBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:37154,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:37159,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 135
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - BCWriterState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37166
      start: 37028
    functionDepth: 19
    functionLinenumber: 37028
    functionLinenumberEnd: 37166
    functionName: JS_WriteObjectRec
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 6
    functionsReached:
    - bc_put_u8
    - bc_put_leb128
    - JS_WriteSharedArrayBuffer
    - bc_put_sleb128
    - JS_WriteObjectRec
    - JS_ToString
    - js_object_list_add
    - JS_WriteArray
    - JS_WriteTypedArray
    - JS_ThrowStackOverflow
    - JS_VALUE_GET_FLOAT64
    - JS_WriteBigInt
    - JS_WriteString
    - JS_WriteArrayBuffer
    - JS_VALUE_GET_STRING
    - js_object_list_find
    - JS_ThrowInternalError
    - js_check_stack_overflow
    - JS_VALUE_GET_INT
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - bc_put_u64
    - JS_WriteObjectTag
    - JS_VALUE_GET_NORM_TAG
    - JS_WriteModule
    - JS_WriteFunctionTag
    linkageType: ''
    returnType: int
    signature: int JS_WriteObjectRec(BCWriterState *s, JSValueConst obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_dbuf_init
      Src: /src/gpac/src/quickjs/quickjs.c:37176,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37177,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37179,1
    - Dst: JS_WriteString
      Src: /src/gpac/src/quickjs/quickjs.c:37182,1
    - Dst: dbuf_claim
      Src: /src/gpac/src/quickjs/quickjs.c:37190,1
    - Dst: memmove
      Src: /src/gpac/src/quickjs/quickjs.c:37192,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:37193,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:37195,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:37199,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCWriterState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37201
      start: 37169
    functionDepth: 4
    functionLinenumber: 37169
    functionLinenumberEnd: 37201
    functionName: JS_WriteObjectAtoms
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_put_u8
    - bc_put_leb128
    - memmove
    - dbuf_claim
    - JS_WriteString
    - memcpy
    - js_dbuf_init
    - dbuf_free
    linkageType: ''
    returnType: int
    signature: int JS_WriteObjectAtoms(BCWriterState *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:37208,1
    - Dst: js_dbuf_init
      Src: /src/gpac/src/quickjs/quickjs.c:37218,1
    - Dst: js_object_list_init
      Src: /src/gpac/src/quickjs/quickjs.c:37219,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:37221,1
    - Dst: JS_WriteObjectAtoms
      Src: /src/gpac/src/quickjs/quickjs.c:37223,1
    - Dst: js_object_list_end
      Src: /src/gpac/src/quickjs/quickjs.c:37225,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:37226,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:37227,1
    - Dst: js_object_list_end
      Src: /src/gpac/src/quickjs/quickjs.c:37235,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:37236,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:37237,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:37238,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 38
    argCount: 6
    argNames:
    - ctx
    - psize
    - obj
    - flags
    - psab_tab
    - psab_tab_len
    argTypes:
    - JSContext*
    - size_t*
    - JSValueConst
    - int
    - uint8_t***
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37245
      start: 37203
    functionDepth: 20
    functionLinenumber: 37203
    functionLinenumberEnd: 37245
    functionName: JS_WriteObject2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_WriteObjectAtoms
    - js_dbuf_init
    - js_object_list_end
    - dbuf_free
    - memset
    - js_object_list_init
    - JS_WriteObjectRec
    - js_free
    linkageType: ''
    returnType: uint8_t
    signature: "uint8_t *JS_WriteObject2(JSContext *ctx, size_t *psize, JSValueConst
      obj,\n                         int flags, uint8_t ***psab_tab, size_t *psab_tab_len)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_WriteObject2
      Src: /src/gpac/src/quickjs/quickjs.c:37250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - psize
    - obj
    - flags
    argTypes:
    - JSContext*
    - size_t*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37251
      start: 37247
    functionDepth: 21
    functionLinenumber: 37247
    functionLinenumberEnd: 37251
    functionName: JS_WriteObject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_WriteObject2
    linkageType: ''
    returnType: uint8_t
    signature: "uint8_t *JS_WriteObject(JSContext *ctx, size_t *psize, JSValueConst
      obj,\n                        int flags)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: format
      Src: /src/gpac/src/quickjs/quickjs.c:37276,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:37285,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:37290,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:37293,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:37298,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:37300,1
    - Dst: vfprintf
      Src: /src/gpac/src/quickjs/quickjs.c:37301,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:37302,1
    - Dst: strchr
      Src: /src/gpac/src/quickjs/quickjs.c:37303,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 2
    argNames:
    - s
    - fmt
    argTypes:
    - BCReaderState*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37305
      start: 37276
    functionDepth: 0
    functionLinenumber: 37276
    functionLinenumberEnd: 37305
    functionName: bc_read_trace
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - va_end
    - va_start
    - format
    - vfprintf
    - strchr
    linkageType: ''
    returnType: void
    signature: void bc_read_trace(BCReaderState *s, const char *fmt, ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:37313,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37316
      start: 37310
    functionDepth: 12
    functionLinenumber: 37310
    functionLinenumberEnd: 37316
    functionName: bc_read_error_end
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowSyntaxError
    linkageType: ''
    returnType: int
    signature: int bc_read_error_end(BCReaderState *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:37320,1
    - Dst: bc_read_error_end
      Src: /src/gpac/src/quickjs/quickjs.c:37322,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - pval
    argTypes:
    - BCReaderState*
    - uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37326
      start: 37318
    functionDepth: 13
    functionLinenumber: 37318
    functionLinenumberEnd: 37326
    functionName: bc_get_u8
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - unlikely
    - bc_read_error_end
    linkageType: ''
    returnType: int
    signature: int bc_get_u8(BCReaderState *s, uint8_t *pval)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:37331,1
    - Dst: bc_read_error_end
      Src: /src/gpac/src/quickjs/quickjs.c:37333,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37335,1
    - Dst: is_be
      Src: /src/gpac/src/quickjs/quickjs.c:37336,1
    - Dst: bswap16
      Src: /src/gpac/src/quickjs/quickjs.c:37337,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - pval
    argTypes:
    - BCReaderState*
    - uint16_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37341
      start: 37328
    functionDepth: 13
    functionLinenumber: 37328
    functionLinenumberEnd: 37341
    functionName: bc_get_u16
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_u16
    - is_be
    - unlikely
    - bswap16
    - bc_read_error_end
    linkageType: ''
    returnType: int
    signature: int bc_get_u16(BCReaderState *s, uint16_t *pval)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:37346,1
    - Dst: bc_read_error_end
      Src: /src/gpac/src/quickjs/quickjs.c:37348,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:37350,1
    - Dst: is_be
      Src: /src/gpac/src/quickjs/quickjs.c:37351,1
    - Dst: bswap32
      Src: /src/gpac/src/quickjs/quickjs.c:37352,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - pval
    argTypes:
    - BCReaderState*
    - uint32_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37356
      start: 37343
    functionDepth: 13
    functionLinenumber: 37343
    functionLinenumberEnd: 37356
    functionName: bc_get_u32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - is_be
    - get_u32
    - unlikely
    - bc_read_error_end
    - bswap32
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused bc_get_u32(BCReaderState *s, uint32_t *pval)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:37361,1
    - Dst: bc_read_error_end
      Src: /src/gpac/src/quickjs/quickjs.c:37363,1
    - Dst: get_u64
      Src: /src/gpac/src/quickjs/quickjs.c:37365,1
    - Dst: is_be
      Src: /src/gpac/src/quickjs/quickjs.c:37366,1
    - Dst: bswap64
      Src: /src/gpac/src/quickjs/quickjs.c:37367,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - pval
    argTypes:
    - BCReaderState*
    - uint64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37371
      start: 37358
    functionDepth: 13
    functionLinenumber: 37358
    functionLinenumberEnd: 37371
    functionName: bc_get_u64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bswap64
    - is_be
    - get_u64
    - unlikely
    - bc_read_error_end
    linkageType: ''
    returnType: int
    signature: int bc_get_u64(BCReaderState *s, uint64_t *pval)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37376,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:37377,1
    - Dst: bc_read_error_end
      Src: /src/gpac/src/quickjs/quickjs.c:37378,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - pval
    argTypes:
    - BCReaderState*
    - uint32_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37381
      start: 37373
    functionDepth: 13
    functionLinenumber: 37373
    functionLinenumberEnd: 37381
    functionName: bc_get_leb128
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_leb128
    - unlikely
    - bc_read_error_end
    linkageType: ''
    returnType: int
    signature: int bc_get_leb128(BCReaderState *s, uint32_t *pval)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_sleb128
      Src: /src/gpac/src/quickjs/quickjs.c:37386,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:37387,1
    - Dst: bc_read_error_end
      Src: /src/gpac/src/quickjs/quickjs.c:37388,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - pval
    argTypes:
    - BCReaderState*
    - int32_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37391
      start: 37383
    functionDepth: 13
    functionLinenumber: 37383
    functionLinenumberEnd: 37391
    functionName: bc_get_sleb128
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_sleb128
    - bc_read_error_end
    - unlikely
    linkageType: ''
    returnType: int
    signature: int bc_get_sleb128(BCReaderState *s, int32_t *pval)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37396,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - pval
    argTypes:
    - BCReaderState*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37397
      start: 37394
    functionDepth: 14
    functionLinenumber: 37394
    functionLinenumberEnd: 37397
    functionName: bc_get_leb128_int
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_get_leb128
    linkageType: ''
    returnType: int
    signature: int bc_get_leb128_int(BCReaderState *s, int *pval)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37402,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - pval
    argTypes:
    - BCReaderState*
    - uint16_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37408
      start: 37399
    functionDepth: 14
    functionLinenumber: 37399
    functionLinenumberEnd: 37408
    functionName: bc_get_leb128_u16
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_get_leb128
    linkageType: ''
    returnType: int
    signature: int bc_get_leb128_u16(BCReaderState *s, uint16_t *pval)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:37413,1
    - Dst: bc_read_error_end
      Src: /src/gpac/src/quickjs/quickjs.c:37414,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:37415,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - s
    - buf
    - buf_len
    argTypes:
    - BCReaderState*
    - uint8_t*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37419
      start: 37410
    functionDepth: 13
    functionLinenumber: 37410
    functionLinenumberEnd: 37419
    functionName: bc_get_buf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memcpy
    - unlikely
    - bc_read_error_end
    linkageType: ''
    returnType: int
    signature: int bc_get_buf(BCReaderState *s, uint8_t *buf, uint32_t buf_len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:37425,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:37428,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:37432,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:37437,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - s
    - patom
    - idx
    argTypes:
    - BCReaderState*
    - JSAtom*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37441
      start: 37421
    functionDepth: 12
    functionLinenumber: 37421
    functionLinenumberEnd: 37441
    functionName: bc_idx_to_atom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowSyntaxError
    - JS_DupAtom
    - __JS_AtomIsTaggedInt
    linkageType: ''
    returnType: int
    signature: int bc_idx_to_atom(BCReaderState *s, JSAtom *patom, uint32_t idx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37446,1
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:37449,1
    - Dst: bc_idx_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37452,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - patom
    argTypes:
    - BCReaderState*
    - JSAtom*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37454
      start: 37443
    functionDepth: 14
    functionLinenumber: 37443
    functionLinenumberEnd: 37454
    functionName: bc_get_atom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - __JS_AtomFromUInt32
    - bc_get_leb128
    - bc_idx_to_atom
    linkageType: ''
    returnType: int
    signature: int bc_get_atom(BCReaderState *s, JSAtom *patom)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37463,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:37468,1
    - Dst: js_alloc_string
      Src: /src/gpac/src/quickjs/quickjs.c:37471,1
    - Dst: bc_read_error_end
      Src: /src/gpac/src/quickjs/quickjs.c:37478,1
    - Dst: js_free_string
      Src: /src/gpac/src/quickjs/quickjs.c:37479,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:37482,1
    - Dst: is_be
      Src: /src/gpac/src/quickjs/quickjs.c:37485,1
    - Dst: bswap16
      Src: /src/gpac/src/quickjs/quickjs.c:37488,1
    - Dst: JS_DumpString
      Src: /src/gpac/src/quickjs/quickjs.c:37494,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:37494,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 33
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37497
      start: 37456
    functionDepth: 14
    functionLinenumber: 37456
    functionLinenumberEnd: 37497
    functionName: JS_ReadString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - is_be
    - memcpy
    - JS_DumpString
    - js_free_string
    - bswap16
    - bc_read_error_end
    - JS_ThrowInternalError
    - bc_get_leb128
    - js_alloc_string
    linkageType: ''
    returnType: JSString
    signature: JSString *JS_ReadString(BCReaderState *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - flags
    - pidx
    - n
    argTypes:
    - uint32_t
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37506
      start: 37499
    functionDepth: 0
    functionLinenumber: 37499
    functionLinenumberEnd: 37506
    functionName: bc_get_flags
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t bc_get_flags(uint32_t flags, int *pidx, int n)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:37518,1
    - Dst: bc_read_error_end
      Src: /src/gpac/src/quickjs/quickjs.c:37519,1
    - Dst: bc_get_buf
      Src: /src/gpac/src/quickjs/quickjs.c:37524,1
    - Dst: is_be
      Src: /src/gpac/src/quickjs/quickjs.c:37529,1
    - Dst: bc_byte_swap
      Src: /src/gpac/src/quickjs/quickjs.c:37530,1
    - Dst: short_opcode_info
      Src: /src/gpac/src/quickjs/quickjs.c:37535,1
    - Dst: short_opcode_info
      Src: /src/gpac/src/quickjs/quickjs.c:37536,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:37542,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:37545,1
    - Dst: bc_idx_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37547,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:37552,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37554,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37554,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:37554,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 44
    argCount: 4
    argNames:
    - s
    - b
    - byte_code_offset
    - bc_len
    argTypes:
    - BCReaderState*
    - JSFunctionBytecode*
    - int
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37564
      start: 37508
    functionDepth: 14
    functionLinenumber: 37508
    functionLinenumberEnd: 37564
    functionName: JS_ReadFunctionBytecode
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - is_be
    - get_u32
    - bc_idx_to_atom
    - bc_read_trace
    - short_opcode_info
    - unlikely
    - print_atom
    - JS_DupAtom
    - put_u32
    - bc_read_error_end
    - bc_byte_swap
    - bc_get_buf
    linkageType: ''
    returnType: int
    signature: "int JS_ReadFunctionBytecode(BCReaderState *s, JSFunctionBytecode *b,\n
      \                                  int byte_code_offset, uint32_t bc_len)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37574,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37576,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37579,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:37580,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:37582,1
    - Dst: bc_get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:37587,1
    - Dst: bc_get_u64
      Src: /src/gpac/src/quickjs/quickjs.c:37590,1
    - Dst: bc_get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37600,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37611,1
    - Dst: JS_CompactBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:37612,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:37614,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 43
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37616
      start: 37566
    functionDepth: 14
    functionLinenumber: 37566
    functionLinenumberEnd: 37616
    functionName: JS_ReadBigInt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_get_u32
    - JS_CompactBigInt
    - bc_read_trace
    - JS_FreeValue
    - bc_get_u8
    - bc_get_u64
    - __JS_NewShortBigInt
    - bc_get_leb128
    - js_bigint_new
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ReadBigInt(BCReaderState *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:37623,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - s
    - p
    argTypes:
    - BCReaderState*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37630
      start: 37620
    functionDepth: 5
    functionLinenumber: 37620
    functionLinenumberEnd: 37630
    functionName: BC_add_object_ref1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_resize_array
    linkageType: ''
    returnType: int
    signature: int BC_add_object_ref1(BCReaderState *s, JSObject *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BC_add_object_ref1
      Src: /src/gpac/src/quickjs/quickjs.c:37634,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:37634,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - BCReaderState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37635
      start: 37632
    functionDepth: 6
    functionLinenumber: 37632
    functionLinenumberEnd: 37635
    functionName: BC_add_object_ref
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - BC_add_object_ref1
    linkageType: ''
    returnType: int
    signature: int BC_add_object_ref(BCReaderState *s, JSValueConst obj)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:37648,1
    - Dst: bc_get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37652,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37655,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37656,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37657,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37658,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37659,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37660,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37661,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37662,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37663,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37664,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37665,1
    - Dst: bc_get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37667,1
    - Dst: bc_get_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37670,1
    - Dst: bc_get_leb128_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37672,1
    - Dst: bc_get_leb128_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37674,1
    - Dst: bc_get_leb128_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37676,1
    - Dst: bc_get_leb128_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37678,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:37680,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:37682,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:37684,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:37686,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:37705,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:37709,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:37721,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:37723,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37726,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37726,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:37726,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37728,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37731,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37735,1
    - Dst: bc_get_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37738,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:37740,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:37742,1
    - Dst: bc_get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37745,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37748,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37749,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37750,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37751,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37753,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37753,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:37753,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37756,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37759,1
    - Dst: bc_get_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37763,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:37765,1
    - Dst: bc_get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37768,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37771,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37772,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37773,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37774,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37775,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37777,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37777,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:37777,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37780,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37783,1
    - Dst: JS_ReadFunctionBytecode
      Src: /src/gpac/src/quickjs/quickjs.c:37784,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37786,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37790,1
    - Dst: bc_get_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37791,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37794,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37794,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:37794,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:37796,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:37799,1
    - Dst: bc_get_buf
      Src: /src/gpac/src/quickjs/quickjs.c:37802,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:37805,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37808,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:37809,1
    - Dst: bc_get_buf
      Src: /src/gpac/src/quickjs/quickjs.c:37812,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37815,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37818,1
    - Dst: JS_ReadObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:37821,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:37822,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37826,1
    - Dst: JS_DupContext
      Src: /src/gpac/src/quickjs/quickjs.c:37828,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:37831,1
    CyclomaticComplexity: 69
    EdgeCount: 69
    ICount: 196
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37833
      start: 37637
    functionDepth: 15
    functionLinenumber: 37637
    functionLinenumberEnd: 37833
    functionName: JS_ReadFunctionTag
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupContext
    - printf
    - memset
    - bc_get_buf
    - bc_get_flags
    - bc_get_atom
    - JS_MKPTR
    - memcpy
    - print_atom
    - bc_get_leb128_int
    - bc_get_leb128_u16
    - js_mallocz
    - JS_ReadFunctionBytecode
    - add_gc_object
    - bc_read_trace
    - JS_IsException
    - JS_FreeValue
    - bc_get_u8
    - bc_get_u16
    - JS_ReadObjectRec
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ReadFunctionTag(BCReaderState *s)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: bc_get_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37844,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37847,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37847,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:37847,1
    - Dst: js_new_module_def
      Src: /src/gpac/src/quickjs/quickjs.c:37849,1
    - Dst: JS_NewModuleValue
      Src: /src/gpac/src/quickjs/quickjs.c:37852,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:37853,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:37857,1
    - Dst: bc_get_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37863,1
    - Dst: JS_ReadObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:37865,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:37866,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:37872,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:37876,1
    - Dst: bc_get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37881,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:37885,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:37888,1
    - Dst: bc_get_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37890,1
    - Dst: bc_get_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37893,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:37898,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:37902,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:37907,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:37912,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:37916,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:37922,1
    - Dst: bc_get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37924,1
    - Dst: bc_get_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37927,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:37929,1
    - Dst: bc_get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37934,1
    - Dst: JS_ReadObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:37938,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:37939,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:37944,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:37944,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 118
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37947
      start: 37835
    functionDepth: 15
    functionLinenumber: 37835
    functionLinenumberEnd: 37947
    functionName: JS_ReadModule
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - bc_get_atom
    - bc_read_trace
    - JS_IsException
    - JS_FreeValue
    - JS_MKPTR
    - bc_get_u8
    - print_atom
    - bc_get_leb128_int
    - js_mallocz
    - JS_ReadObjectRec
    - js_new_module_def
    - JS_NewModuleValue
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ReadModule(BCReaderState *s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:37958,1
    - Dst: BC_add_object_ref
      Src: /src/gpac/src/quickjs/quickjs.c:37959,1
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37961,1
    - Dst: bc_get_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37964,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:37967,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37967,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:37967,1
    - Dst: JS_ReadObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:37969,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:37970,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:37971,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:37974,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:37975,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:37981,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37983
      start: 37949
    functionDepth: 18
    functionLinenumber: 37949
    functionLinenumberEnd: 37983
    functionName: JS_ReadObjectTag
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_get_atom
    - printf
    - JS_FreeAtom
    - bc_read_trace
    - JS_IsException
    - JS_DefinePropertyValue
    - JS_FreeValue
    - BC_add_object_ref
    - print_atom
    - JS_NewObject
    - JS_ReadObjectRec
    - bc_get_leb128
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ReadObjectTag(BCReaderState *s)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:37994,1
    - Dst: BC_add_object_ref
      Src: /src/gpac/src/quickjs/quickjs.c:37995,1
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37998,1
    - Dst: JS_ReadObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38001,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38002,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:38008,1
    - Dst: JS_ReadObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38014,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38015,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:38017,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:38018,1
    - Dst: JS_PreventExtensions
      Src: /src/gpac/src/quickjs/quickjs.c:38022,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38026,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 40
    argCount: 2
    argNames:
    - s
    - tag
    argTypes:
    - BCReaderState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38028
      start: 37985
    functionDepth: 20
    functionLinenumber: 37985
    functionLinenumberEnd: 38028
    functionName: JS_ReadArray
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - JS_IsException
    - JS_FreeValue
    - JS_DefinePropertyValueUint32
    - BC_add_object_ref
    - JS_IsUndefined
    - JS_ReadObjectRec
    - JS_PreventExtensions
    - JS_NewArray
    - bc_get_leb128
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ReadArray(BCReaderState *s, int tag)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: bc_get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38038,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:38041,1
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38042,1
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38044,1
    - Dst: BC_add_object_ref1
      Src: /src/gpac/src/quickjs/quickjs.c:38049,1
    - Dst: JS_ReadObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38051,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38052,1
    - Dst: js_get_array_buffer
      Src: /src/gpac/src/quickjs/quickjs.c:38054,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38055,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:38059,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:38060,1
    - Dst: js_typed_array_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:38061,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38064,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:38067,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38069,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38072,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38073,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38075
      start: 38030
    functionDepth: 14
    functionLinenumber: 38030
    functionLinenumberEnd: 38075
    functionName: JS_ReadTypedArray
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - bc_get_u8
    - JS_VALUE_GET_OBJ
    - JS_NewInt64
    - js_get_array_buffer
    - JS_ReadObjectRec
    - js_typed_array_constructor
    - BC_add_object_ref1
    - bc_get_leb128
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ReadTypedArray(BCReaderState *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38084,1
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38086,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:38089,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:38094,1
    - Dst: bc_read_error_end
      Src: /src/gpac/src/quickjs/quickjs.c:38095,1
    - Dst: js_array_buffer_constructor3
      Src: /src/gpac/src/quickjs/quickjs.c:38099,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38105,1
    - Dst: BC_add_object_ref
      Src: /src/gpac/src/quickjs/quickjs.c:38107,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38112,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38114
      start: 38077
    functionDepth: 14
    functionLinenumber: 38077
    functionLinenumberEnd: 38114
    functionName: JS_ReadArrayBuffer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - unlikely
    - BC_add_object_ref
    - bc_read_error_end
    - js_array_buffer_constructor3
    - bc_get_leb128
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ReadArrayBuffer(BCReaderState *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38125,1
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38127,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:38130,1
    - Dst: bc_get_u64
      Src: /src/gpac/src/quickjs/quickjs.c:38135,1
    - Dst: js_array_buffer_constructor3
      Src: /src/gpac/src/quickjs/quickjs.c:38139,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38144,1
    - Dst: BC_add_object_ref
      Src: /src/gpac/src/quickjs/quickjs.c:38146,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38150,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38152
      start: 38116
    functionDepth: 14
    functionLinenumber: 38116
    functionLinenumberEnd: 38152
    functionName: JS_ReadSharedArrayBuffer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - BC_add_object_ref
    - bc_get_u64
    - js_array_buffer_constructor3
    - bc_get_leb128
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ReadSharedArrayBuffer(BCReaderState *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_ReadObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38159,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38160,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/quickjs/quickjs.c:38162,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:38163,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:38166,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38168,1
    - Dst: BC_add_object_ref
      Src: /src/gpac/src/quickjs/quickjs.c:38170,1
    - Dst: JS_SetObjectData
      Src: /src/gpac/src/quickjs/quickjs.c:38172,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38175,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38176,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38178
      start: 38154
    functionDepth: 12
    functionLinenumber: 38154
    functionLinenumberEnd: 38178
    functionName: JS_ReadDate
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsNumber
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_NewObjectProtoClass
    - BC_add_object_ref
    - JS_ReadObjectRec
    - JS_SetObjectData
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ReadDate(BCReaderState *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_ReadObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38185,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38186,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:38188,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38189,1
    - Dst: BC_add_object_ref
      Src: /src/gpac/src/quickjs/quickjs.c:38191,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38193,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38196,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38197,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38199
      start: 38180
    functionDepth: 7
    functionLinenumber: 38180
    functionLinenumberEnd: 38199
    functionName: JS_ReadObjectValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_FreeValue
    - BC_add_object_ref
    - JS_ToObject
    - JS_ReadObjectRec
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ReadObjectValue(BCReaderState *s)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:38207,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:38208,1
    - Dst: bc_get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38210,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38213,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:38224,1
    - Dst: bc_get_sleb128
      Src: /src/gpac/src/quickjs/quickjs.c:38229,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38231,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:38232,1
    - Dst: bc_get_u64
      Src: /src/gpac/src/quickjs/quickjs.c:38238,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38240,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:38241,1
    - Dst: JS_ReadString
      Src: /src/gpac/src/quickjs/quickjs.c:38247,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:38250,1
    - Dst: JS_ReadFunctionTag
      Src: /src/gpac/src/quickjs/quickjs.c:38256,1
    - Dst: JS_ReadModule
      Src: /src/gpac/src/quickjs/quickjs.c:38261,1
    - Dst: JS_ReadObjectTag
      Src: /src/gpac/src/quickjs/quickjs.c:38264,1
    - Dst: JS_ReadArray
      Src: /src/gpac/src/quickjs/quickjs.c:38268,1
    - Dst: JS_ReadTypedArray
      Src: /src/gpac/src/quickjs/quickjs.c:38271,1
    - Dst: JS_ReadArrayBuffer
      Src: /src/gpac/src/quickjs/quickjs.c:38274,1
    - Dst: JS_ReadSharedArrayBuffer
      Src: /src/gpac/src/quickjs/quickjs.c:38279,1
    - Dst: JS_ReadDate
      Src: /src/gpac/src/quickjs/quickjs.c:38282,1
    - Dst: JS_ReadObjectValue
      Src: /src/gpac/src/quickjs/quickjs.c:38285,1
    - Dst: JS_ReadBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:38288,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:38294,1
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38295,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38297,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:38299,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:38302,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:38302,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:38307,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38310,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 97
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38312
      start: 38201
    functionDepth: 21
    functionLinenumber: 38201
    functionLinenumberEnd: 38312
    functionName: JS_ReadObjectRec
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 7
    functionsReached:
    - JS_ReadModule
    - JS_ReadFunctionTag
    - JS_DupValue
    - JS_ReadArrayBuffer
    - JS_MKPTR
    - JS_ReadArray
    - JS_ReadSharedArrayBuffer
    - JS_ThrowStackOverflow
    - JS_NewInt32
    - JS_ReadObjectValue
    - JS_ReadBigInt
    - bc_get_sleb128
    - bc_get_leb128
    - JS_ReadTypedArray
    - JS_ReadDate
    - JS_ThrowSyntaxError
    - JS_ReadString
    - bc_get_u64
    - JS_ReadObjectTag
    - js_check_stack_overflow
    - bc_read_trace
    - __JS_NewFloat64
    - bc_get_u8
    - JS_NewBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ReadObjectRec(BCReaderState *s)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: bc_get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38321,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:38324,1
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38328,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38331,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:38334,1
    - Dst: JS_ReadString
      Src: /src/gpac/src/quickjs/quickjs.c:38340,1
    - Dst: JS_NewAtomStr
      Src: /src/gpac/src/quickjs/quickjs.c:38343,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38350,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38352
      start: 38314
    functionDepth: 15
    functionLinenumber: 38314
    functionLinenumberEnd: 38352
    functionName: JS_ReadObjectAtoms
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_read_trace
    - JS_ThrowSyntaxError
    - JS_ReadString
    - bc_get_u8
    - js_mallocz
    - JS_NewAtomStr
    - bc_get_leb128
    linkageType: ''
    returnType: int
    signature: int JS_ReadObjectAtoms(BCReaderState *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:38359,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:38361,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:38363,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38364
      start: 38354
    functionDepth: 5
    functionLinenumber: 38354
    functionLinenumberEnd: 38364
    functionName: bc_reader_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - js_free
    linkageType: ''
    returnType: void
    signature: void bc_reader_free(BCReaderState *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:38375,1
    - Dst: JS_ReadObjectAtoms
      Src: /src/gpac/src/quickjs/quickjs.c:38388,1
    - Dst: JS_ReadObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38391,1
    - Dst: bc_reader_free
      Src: /src/gpac/src/quickjs/quickjs.c:38393,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 4
    argNames:
    - ctx
    - buf
    - buf_len
    - flags
    argTypes:
    - JSContext*
    - uint8_t*
    - size_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38395
      start: 38366
    functionDepth: 22
    functionLinenumber: 38366
    functionLinenumberEnd: 38395
    functionName: JS_ReadObject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memset
    - JS_ReadObjectAtoms
    - bc_reader_free
    - JS_ReadObjectRec
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_ReadObject(JSContext *ctx, const uint8_t *buf, size_t buf_len,\n
      \                      int flags)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:38409,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:38409,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:38411,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38413
      start: 38407
    functionDepth: 12
    functionLinenumber: 38407
    functionLinenumberEnd: 38413
    functionName: check_function
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - likely
    - JS_IsFunction
    linkageType: ''
    returnType: int
    signature: int check_function(JSContext *ctx, JSValueConst obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38417,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38418,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38419
      start: 38415
    functionDepth: 1
    functionLinenumber: 38415
    functionLinenumberEnd: 38419
    functionName: check_exception_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_FreeValue
    linkageType: ''
    returnType: int
    signature: int check_exception_free(JSContext *ctx, JSValue obj)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:38428,1
    - Dst: memcmp
      Src: /src/gpac/src/quickjs/quickjs.c:38434,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:38435,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:38437,1
    - Dst: JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:38439,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38442
      start: 38421
    functionDepth: 8
    functionLinenumber: 38421
    functionLinenumberEnd: 38442
    functionName: find_atom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memcmp
    - JS_DupAtom
    - JS_NewAtom
    - abort
    - strlen
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom find_atom(JSContext *ctx, const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectProtoClassAlloc
      Src: /src/gpac/src/quickjs/quickjs.c:38448,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38449,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/quickjs/quickjs.c:38451,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38452,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - proto
    - fields
    - n_fields
    argTypes:
    - JSContext*
    - JSValueConst
    - JSCFunctionListEntry*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38456
      start: 38444
    functionDepth: 9
    functionLinenumber: 38444
    functionLinenumberEnd: 38456
    functionName: JS_NewObjectProtoList
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_FreeValue
    - JS_SetPropertyFunctionList
    - JS_NewObjectProtoClassAlloc
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_NewObjectProtoList(JSContext *ctx, JSValueConst proto,\n
      \                                    const JSCFunctionListEntry *fields, int
      n_fields)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/quickjs/quickjs.c:38466,1
    - Dst: JS_NewAtomString
      Src: /src/gpac/src/quickjs/quickjs.c:38470,1
    - Dst: JS_NewObjectProtoList
      Src: /src/gpac/src/quickjs/quickjs.c:38478,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:38482,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 4
    argNames:
    - ctx
    - p
    - atom
    - opaque
    argTypes:
    - JSContext*
    - JSObject*
    - JSAtom
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38485
      start: 38458
    functionDepth: 11
    functionLinenumber: 38458
    functionLinenumberEnd: 38485
    functionName: JS_InstantiateFunctionListItem2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - abort
    - JS_NewObjectProtoList
    - JS_NewCFunction2
    - JS_NewAtomString
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_InstantiateFunctionListItem2(JSContext *ctx, JSObject *p,\n
      \                                              JSAtom atom, void *opaque)"
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: find_atom
      Src: /src/gpac/src/quickjs/quickjs.c:38497,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:38500,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:38503,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:38506,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:38509,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:38511,1
    - Dst: JS_DefineAutoInitProperty
      Src: /src/gpac/src/quickjs/quickjs.c:38529,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:38540,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/quickjs/quickjs.c:38541,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:38547,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/quickjs/quickjs.c:38548,1
    - Dst: JS_DefinePropertyGetSet
      Src: /src/gpac/src/quickjs/quickjs.c:38552,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:38557,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:38560,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:38563,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:38569,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:38572,1
    - Dst: JS_DefineAutoInitProperty
      Src: /src/gpac/src/quickjs/quickjs.c:38576,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:38580,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:38582,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 77
    argCount: 4
    argNames:
    - ctx
    - obj
    - atom
    - e
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSCFunctionListEntry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38584
      start: 38487
    functionDepth: 18
    functionLinenumber: 38487
    functionLinenumberEnd: 38584
    functionName: JS_InstantiateFunctionListItem
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - JS_NewCFunction2
    - snprintf
    - JS_DefinePropertyValue
    - JS_DefineAutoInitProperty
    - __JS_NewFloat64
    - JS_NewInt64
    - find_atom
    - JS_NewBool
    - JS_DefinePropertyGetSet
    - JS_AtomToValue
    - JS_NewInt32
    - abort
    - JS_GetProperty
    linkageType: ''
    returnType: int
    signature: "int JS_InstantiateFunctionListItem(JSContext *ctx, JSValueConst obj,\n
      \                                         JSAtom atom,\n                                          const
      JSCFunctionListEntry *e)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: find_atom
      Src: /src/gpac/src/quickjs/quickjs.c:38593,1
    - Dst: JS_InstantiateFunctionListItem
      Src: /src/gpac/src/quickjs/quickjs.c:38596,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:38597,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - obj
    - tab
    - len
    argTypes:
    - JSContext*
    - JSValueConst
    - JSCFunctionListEntry*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38602
      start: 38586
    functionDepth: 19
    functionLinenumber: 38586
    functionLinenumberEnd: 38602
    functionName: JS_SetPropertyFunctionList
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 12
    functionsReached:
    - find_atom
    - JS_InstantiateFunctionListItem
    - JS_FreeAtom
    linkageType: ''
    returnType: int
    signature: "int JS_SetPropertyFunctionList(JSContext *ctx, JSValueConst obj,\n
      \                              const JSCFunctionListEntry *tab, int len)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/quickjs/quickjs.c:38609,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - m
    - tab
    - len
    argTypes:
    - JSContext*
    - JSModuleDef*
    - JSCFunctionListEntry*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38613
      start: 38604
    functionDepth: 14
    functionLinenumber: 38604
    functionLinenumberEnd: 38613
    functionName: JS_AddModuleExportList
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AddModuleExport
    linkageType: ''
    returnType: int
    signature: "int JS_AddModuleExportList(JSContext *ctx, JSModuleDef *m,\n                           const
      JSCFunctionListEntry *tab, int len)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/quickjs/quickjs.c:38625,1
    - Dst: JS_NewString
      Src: /src/gpac/src/quickjs/quickjs.c:38629,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:38632,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:38635,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:38638,1
    - Dst: JS_NewObjectProtoList
      Src: /src/gpac/src/quickjs/quickjs.c:38641,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:38645,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/quickjs/quickjs.c:38647,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 4
    argNames:
    - ctx
    - m
    - tab
    - len
    argTypes:
    - JSContext*
    - JSModuleDef*
    - JSCFunctionListEntry*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38651
      start: 38615
    functionDepth: 11
    functionLinenumber: 38615
    functionLinenumberEnd: 38651
    functionName: JS_SetModuleExportList
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectProtoList
    - JS_NewCFunction2
    - __JS_NewFloat64
    - JS_NewString
    - JS_NewInt64
    - JS_SetModuleExport
    - JS_NewInt32
    - abort
    linkageType: ''
    returnType: int
    signature: "int JS_SetModuleExportList(JSContext *ctx, JSModuleDef *m,\n                           const
      JSCFunctionListEntry *tab, int len)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:38659,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:38660,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:38662,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:38663,1
    - Dst: set_cycle_flag
      Src: /src/gpac/src/quickjs/quickjs.c:38666,1
    - Dst: set_cycle_flag
      Src: /src/gpac/src/quickjs/quickjs.c:38667,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 5
    argNames:
    - ctx
    - func_obj
    - proto
    - proto_flags
    - ctor_flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38669
      start: 38654
    functionDepth: 18
    functionLinenumber: 38654
    functionLinenumberEnd: 38669
    functionName: JS_SetConstructor2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - set_cycle_flag
    - JS_DupValue
    - JS_DefinePropertyValue
    linkageType: ''
    returnType: int
    signature: "int JS_SetConstructor2(JSContext *ctx,\n                              JSValueConst
      func_obj,\n                              JSValueConst proto,\n                              int
      proto_flags, int ctor_flags)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_SetConstructor2
      Src: /src/gpac/src/quickjs/quickjs.c:38675,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - func_obj
    - proto
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38677
      start: 38672
    functionDepth: 19
    functionLinenumber: 38672
    functionLinenumberEnd: 38677
    functionName: JS_SetConstructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_SetConstructor2
    linkageType: ''
    returnType: int
    signature: "int JS_SetConstructor(JSContext *ctx, JSValueConst func_obj,\n                      JSValueConst
      proto)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:38705,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:38706,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:38709,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38710,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:38715,1
    - Dst: JS_NewObjectProtoClassAlloc
      Src: /src/gpac/src/quickjs/quickjs.c:38722,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38724,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:38727,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/quickjs/quickjs.c:38729,1
    - Dst: JS_NewCFunction3
      Src: /src/gpac/src/quickjs/quickjs.c:38733,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38735,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/quickjs/quickjs.c:38737,1
    - Dst: JS_DefinePropertyValueStr
      Src: /src/gpac/src/quickjs/quickjs.c:38740,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:38741,1
    - Dst: JS_SetConstructor2
      Src: /src/gpac/src/quickjs/quickjs.c:38745,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38747,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38748,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38751,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38752,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38753,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 53
    argCount: 13
    argNames:
    - ctx
    - class_id
    - name
    - func
    - length
    - cproto
    - magic
    - parent_ctor
    - ctor_fields
    - n_ctor_fields
    - proto_fields
    - n_proto_fields
    - flags
    argTypes:
    - JSContext*
    - int
    - char*
    - JSCFunction*
    - int
    - JSCFunctionEnum
    - int
    - JSValueConst
    - JSCFunctionListEntry*
    - int
    - JSCFunctionListEntry*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38755
      start: 38688
    functionDepth: 20
    functionLinenumber: 38688
    functionLinenumberEnd: 38755
    functionName: JS_NewCConstructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_SetPropertyFunctionList
    - JS_SetConstructor2
    - JS_DefinePropertyValueStr
    - JS_IsException
    - JS_FreeValue
    - JS_IsUndefined
    - JS_NewObjectProtoClassAlloc
    - JS_NewCFunction3
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_NewCConstructor(JSContext *ctx, int class_id, const char
      *name,\n                                  JSCFunction *func, int length, JSCFunctionEnum
      cproto, int magic,\n                                  JSValueConst parent_ctor,\n
      \                                 const JSCFunctionListEntry *ctor_fields, int
      n_ctor_fields,\n                                  const JSCFunctionListEntry
      *proto_fields, int n_proto_fields,\n                                  int flags)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_EvalObject
      Src: /src/gpac/src/quickjs/quickjs.c:38760,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38761
      start: 38757
    functionDepth: 14
    functionLinenumber: 38757
    functionLinenumberEnd: 38761
    functionName: js_global_eval
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_EvalObject
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_global_eval(JSContext *ctx, JSValueConst this_val,\n                              int
      argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:38768,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:38768,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:38770,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:38770,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38771
      start: 38763
    functionDepth: 22
    functionLinenumber: 38763
    functionLinenumberEnd: 38771
    functionName: js_global_isNaN
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - unlikely
    - JS_ToFloat64
    - isnan
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_global_isNaN(JSContext *ctx, JSValueConst this_val,\n                               int
      argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:38777,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:38777,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:38779,1
    - Dst: isfinite
      Src: /src/gpac/src/quickjs/quickjs.c:38779,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38780
      start: 38773
    functionDepth: 22
    functionLinenumber: 38773
    functionLinenumberEnd: 38780
    functionName: js_global_isFinite
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - isfinite
    - unlikely
    - JS_ToFloat64
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_global_isFinite(JSContext *ctx, JSValueConst this_val,\n
      \                                 int argc, JSValueConst *argv)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:38786,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:38793,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:38796,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:38799,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:38803,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:38810,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38811,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:38813,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38814,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:38815,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:38816,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:38816,1
    - Dst: JS_SetObjectData
      Src: /src/gpac/src/quickjs/quickjs.c:38817,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:38817,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38819,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:38823,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:38826,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38828,1
    - Dst: JS_SetObjectData
      Src: /src/gpac/src/quickjs/quickjs.c:38829,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:38829,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 44
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38832
      start: 38784
    functionDepth: 19
    functionLinenumber: 38784
    functionLinenumberEnd: 38832
    functionName: JS_ToObject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 6
    functionsReached:
    - JS_NewObjectClass
    - JS_DupValue
    - JS_ThrowTypeError
    - JS_IsException
    - JS_DefinePropertyValue
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_NORM_TAG
    - JS_ToString
    - JS_NewInt32
    - JS_SetObjectData
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ToObject(JSContext *ctx, JSValueConst val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:38836,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38837,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38839
      start: 38834
    functionDepth: 20
    functionLinenumber: 38834
    functionLinenumberEnd: 38839
    functionName: JS_ToObjectFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_FreeValue
    - JS_ToObject
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ToObjectFree(JSContext *ctx, JSValue val)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:38847,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:38848,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:38855,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:38856,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38857,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:38860,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:38863,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:38864,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38865,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:38868,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:38871,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:38873,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38874,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:38877,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:38878,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38879,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:38882,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:38885,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:38887,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38888,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:38889,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:38889,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:38890,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:38894,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:38896,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38897,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:38898,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:38898,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:38899,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:38905,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38914,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38915,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38916,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 74
    argCount: 3
    argNames:
    - ctx
    - d
    - desc
    argTypes:
    - JSContext*
    - JSPropertyDescriptor*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38918
      start: 38841
    functionDepth: 15
    functionLinenumber: 38841
    functionLinenumberEnd: 38918
    functionName: js_obj_to_desc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_ToBoolFree
    - JS_IsFunction
    - JS_IsException
    - JS_ThrowTypeError
    - JS_FreeValue
    - JS_IsUndefined
    - JS_HasProperty
    - JS_IsObject
    - JS_GetProperty
    linkageType: ''
    returnType: int
    signature: "int js_obj_to_desc(JSContext *ctx, JSPropertyDescriptor *d,\n                          JSValueConst
      desc)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_obj_to_desc
      Src: /src/gpac/src/quickjs/quickjs.c:38927,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:38930,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:38932,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - ctx
    - obj
    - prop
    - desc
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38934
      start: 38920
    functionDepth: 17
    functionLinenumber: 38920
    functionLinenumberEnd: 38934
    functionName: JS_DefinePropertyDesc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_obj_to_desc
    - js_free_desc
    - JS_DefineProperty
    linkageType: ''
    returnType: __exception
    signature: "__exception JS_DefinePropertyDesc(JSContext *ctx, JSValueConst obj,\n
      \                                            JSAtom prop, JSValueConst desc,\n
      \                                            int flags)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:38946,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:38947,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:38951,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38952,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:38954,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:38956,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38959,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:38960,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38961,1
    - Dst: JS_DefinePropertyDesc
      Src: /src/gpac/src/quickjs/quickjs.c:38963,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:38969,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38970,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38971,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 3
    argNames:
    - ctx
    - obj
    - properties
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38973
      start: 38936
    functionDepth: 20
    functionLinenumber: 38936
    functionLinenumberEnd: 38973
    functionName: JS_ObjectDefineProperties
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_FreePropertyEnum
    - JS_DefinePropertyDesc
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - JS_ToObject
    - JS_IsObject
    - JS_GetOwnPropertyNamesInternal
    - JS_GetProperty
    linkageType: ''
    returnType: __exception
    signature: "__exception JS_ObjectDefineProperties(JSContext *ctx,\n                                                 JSValueConst
      obj,\n                                                 JSValueConst properties)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:38979,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:38980,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:38981,1
    - Dst: JS_GetActiveFunction
      Src: /src/gpac/src/quickjs/quickjs.c:38981,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:38982,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:38984,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:38988,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:38991,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38996
      start: 38975
    functionDepth: 20
    functionLinenumber: 38975
    functionLinenumberEnd: 38996
    functionName: js_object_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetActiveFunction
    - JS_VALUE_GET_OBJ
    - JS_IsUndefined
    - js_create_from_ctor
    - JS_VALUE_GET_NORM_TAG
    - JS_ToObject
    - JS_NewObject
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_constructor(JSContext *ctx, JSValueConst new_target,\n
      \                                    int argc, JSValueConst *argv)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:39005,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:39005,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:39006,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:39007,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39008,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:39011,1
    - Dst: JS_ObjectDefineProperties
      Src: /src/gpac/src/quickjs/quickjs.c:39012,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39013,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39018
      start: 38998
    functionDepth: 21
    functionLinenumber: 38998
    functionLinenumberEnd: 39018
    functionName: js_object_create
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsObject
    - JS_IsNull
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_ObjectDefineProperties
    - JS_IsUndefined
    - JS_NewObjectProto
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_create(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:39026,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:39029,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:39030,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:39031,1
    - Dst: JS_GetPrototype
      Src: /src/gpac/src/quickjs/quickjs.c:39033,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39034
      start: 39020
    functionDepth: 13
    functionLinenumber: 39020
    functionLinenumberEnd: 39034
    functionName: js_object_getPrototypeOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_GetPrototype
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_getPrototypeOf(JSContext *ctx, JSValueConst this_val,\n
      \                                       int argc, JSValueConst *argv, int magic)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_SetPrototypeInternal
      Src: /src/gpac/src/quickjs/quickjs.c:39041,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39043,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39044
      start: 39036
    functionDepth: 14
    functionLinenumber: 39036
    functionLinenumberEnd: 39044
    functionName: js_object_setPrototypeOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_SetPrototypeInternal
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_setPrototypeOf(JSContext *ctx, JSValueConst this_val,\n
      \                                       int argc, JSValueConst *argv)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:39058,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:39059,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39060,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:39061,1
    - Dst: JS_DefinePropertyDesc
      Src: /src/gpac/src/quickjs/quickjs.c:39066,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39067,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:39071,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39073,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39075
      start: 39047
    functionDepth: 18
    functionLinenumber: 39047
    functionLinenumberEnd: 39075
    functionName: js_object_defineProperty
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_DupValue
    - JS_FreeAtom
    - JS_VALUE_GET_TAG
    - JS_DefinePropertyDesc
    - unlikely
    - JS_ValueToAtom
    - JS_NewBool
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_defineProperty(JSContext *ctx, JSValueConst this_val,\n
      \                                       int argc, JSValueConst *argv, int magic)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_ObjectDefineProperties
      Src: /src/gpac/src/quickjs/quickjs.c:39083,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39086,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39087
      start: 39077
    functionDepth: 21
    functionLinenumber: 39077
    functionLinenumberEnd: 39087
    functionName: js_object_defineProperties
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_ObjectDefineProperties
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_defineProperties(JSContext *ctx, JSValueConst this_val,\n
      \                                         int argc, JSValueConst *argv)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:39101,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39102,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:39105,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39106,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39109,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:39110,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39111,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:39126,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39127,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39128,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39134
      start: 39090
    functionDepth: 20
    functionLinenumber: 39090
    functionLinenumberEnd: 39134
    functionName: js_object___defineGetter__
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - JS_IsException
    - JS_FreeValue
    - unlikely
    - JS_DefineProperty
    - JS_ToObject
    - JS_ValueToAtom
    - check_function
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object___defineGetter__(JSContext *ctx, JSValueConst this_val,\n
      \                                         int argc, JSValueConst *argv, int
      magic)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:39147,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:39148,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39149,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:39151,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39152,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39156,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:39157,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:39160,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:39161,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:39161,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:39165,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39166,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:39170,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39170,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:39171,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39171,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:39174,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39174,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:39175,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:39176,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:39179,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:39180,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:39181,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:39182,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:39184,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39187,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39188,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:39192,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39193,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39195,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39196,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 54
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39198
      start: 39136
    functionDepth: 20
    functionLinenumber: 39136
    functionLinenumberEnd: 39198
    functionName: js_object_getOwnPropertyDescriptor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyInternal
    - JS_ThrowTypeErrorNotAnObject
    - JS_DupValue
    - JS_FreeAtom
    - JS_VALUE_GET_TAG
    - JS_DefinePropertyValue
    - JS_IsException
    - JS_FreeValue
    - unlikely
    - JS_VALUE_GET_OBJ
    - js_free_desc
    - JS_ToObject
    - JS_ValueToAtom
    - JS_NewBool
    - JS_NewObject
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_getOwnPropertyDescriptor(JSContext *ctx, JSValueConst
      this_val,\n                                                  int argc, JSValueConst
      *argv, int magic)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:39210,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39211,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:39214,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:39215,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:39218,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39219,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:39225,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39226,1
    - Dst: js_object_getOwnPropertyDescriptor
      Src: /src/gpac/src/quickjs/quickjs.c:39230,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39231,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39232,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:39234,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:39235,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:39240,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39241,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:39245,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39246,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39247,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 40
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39249
      start: 39200
    functionDepth: 21
    functionLinenumber: 39200
    functionLinenumberEnd: 39249
    functionName: js_object_getOwnPropertyDescriptors
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_object_getOwnPropertyDescriptor
    - JS_FreePropertyEnum
    - JS_DefinePropertyValue
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - JS_IsUndefined
    - JS_ToObject
    - JS_NewObject
    - JS_GetOwnPropertyNamesInternal
    - JS_AtomToValue
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_getOwnPropertyDescriptors(JSContext *ctx, JSValueConst
      this_val,\n                                                   int argc, JSValueConst
      *argv)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:39261,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39262,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:39264,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:39265,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:39267,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39268,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:39277,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:39282,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:39289,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39290,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:39294,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39295,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:39299,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39300,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:39302,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39303,1
    - Dst: JS_CreateDataPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:39305,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:39307,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39308,1
    - Dst: JS_CreateDataPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:39310,1
    - Dst: JS_CreateDataPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:39314,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39320,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39322,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:39325,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39326,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 79
    argCount: 4
    argNames:
    - ctx
    - obj1
    - flags
    - kind
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39328
      start: 39251
    functionDepth: 20
    functionLinenumber: 39251
    functionLinenumberEnd: 39328
    functionName: JS_GetOwnPropertyNames2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyInternal
    - JS_GetProperty
    - JS_FreePropertyEnum
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - js_free_desc
    - JS_ToObject
    - JS_CreateDataPropertyUint32
    - JS_GetOwnPropertyNamesInternal
    - JS_NewArray
    - JS_AtomToValue
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_GetOwnPropertyNames2(JSContext *ctx, JSValueConst obj1,\n
      \                                      int flags, int kind)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOwnPropertyNames2
      Src: /src/gpac/src/quickjs/quickjs.c:39333,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39335
      start: 39330
    functionDepth: 21
    functionLinenumber: 39330
    functionLinenumberEnd: 39335
    functionName: js_object_getOwnPropertyNames
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyNames2
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_getOwnPropertyNames(JSContext *ctx, JSValueConst
      this_val,\n                                             int argc, JSValueConst
      *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOwnPropertyNames2
      Src: /src/gpac/src/quickjs/quickjs.c:39340,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39342
      start: 39337
    functionDepth: 21
    functionLinenumber: 39337
    functionLinenumberEnd: 39342
    functionName: js_object_getOwnPropertySymbols
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyNames2
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_getOwnPropertySymbols(JSContext *ctx, JSValueConst
      this_val,\n                                             int argc, JSValueConst
      *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOwnPropertyNames2
      Src: /src/gpac/src/quickjs/quickjs.c:39347,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - kind
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39349
      start: 39344
    functionDepth: 21
    functionLinenumber: 39344
    functionLinenumberEnd: 39349
    functionName: js_object_keys
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyNames2
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_keys(JSContext *ctx, JSValueConst this_val,\n                              int
      argc, JSValueConst *argv, int kind)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:39358,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:39360,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:39364,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:39368,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - reflect
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39369
      start: 39351
    functionDepth: 13
    functionLinenumber: 39351
    functionLinenumberEnd: 39369
    functionName: js_object_isExtensible
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_NewBool
    - JS_VALUE_GET_TAG
    - JS_IsExtensible
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_isExtensible(JSContext *ctx, JSValueConst this_val,\n
      \                                     int argc, JSValueConst *argv, int reflect)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:39378,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:39380,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39382,1
    - Dst: JS_PreventExtensions
      Src: /src/gpac/src/quickjs/quickjs.c:39384,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:39388,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:39391,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39392,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - reflect
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39394
      start: 39371
    functionDepth: 13
    functionLinenumber: 39371
    functionLinenumberEnd: 39394
    functionName: js_object_preventExtensions
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeError
    - JS_NewBool
    - JS_PreventExtensions
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_preventExtensions(JSContext *ctx, JSValueConst this_val,\n
      \                                          int argc, JSValueConst *argv, int
      reflect)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39404,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:39405,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:39407,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39408,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39409,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:39412,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:39413,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39414,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39415,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:39419,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39420
      start: 39396
    functionDepth: 20
    functionLinenumber: 39396
    functionLinenumberEnd: 39420
    functionName: js_object_hasOwnProperty
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyInternal
    - JS_FreeAtom
    - JS_IsException
    - JS_FreeValue
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_ToObject
    - JS_ValueToAtom
    - JS_NewBool
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_hasOwnProperty(JSContext *ctx, JSValueConst this_val,\n
      \                                       int argc, JSValueConst *argv)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:39430,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39431,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39433,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:39434,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39435,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:39438,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:39439,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39440,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39441,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:39445,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39446
      start: 39422
    functionDepth: 20
    functionLinenumber: 39422
    functionLinenumberEnd: 39446
    functionName: js_object_hasOwn
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyInternal
    - JS_FreeAtom
    - JS_IsException
    - JS_FreeValue
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_ToObject
    - JS_ValueToAtom
    - JS_NewBool
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_hasOwn(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:39451,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39452
      start: 39448
    functionDepth: 20
    functionLinenumber: 39448
    functionLinenumberEnd: 39452
    functionName: js_object_valueOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToObject
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_valueOf(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv)"
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:39462,1
    - Dst: js_new_string8
      Src: /src/gpac/src/quickjs/quickjs.c:39463,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:39464,1
    - Dst: js_new_string8
      Src: /src/gpac/src/quickjs/quickjs.c:39465,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:39467,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39468,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/quickjs/quickjs.c:39470,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39472,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:39477,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:39480,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:39497,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39498,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39499,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:39501,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39502,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:39503,1
    - Dst: JS_ConcatString3
      Src: /src/gpac/src/quickjs/quickjs.c:39506,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 48
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39507
      start: 39454
    functionDepth: 20
    functionLinenumber: 39454
    functionLinenumberEnd: 39507
    functionName: js_object_toString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsString
    - JS_IsArray
    - JS_IsNull
    - JS_IsFunction
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - JS_IsUndefined
    - JS_ToObject
    - js_new_string8
    - JS_ConcatString3
    - JS_AtomToString
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_toString(JSContext *ctx, JSValueConst this_val,\n
      \                                 int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_Invoke
      Src: /src/gpac/src/quickjs/quickjs.c:39512,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39513
      start: 39509
    functionDepth: 24
    functionLinenumber: 39509
    functionLinenumberEnd: 39513
    functionName: js_object_toLocaleString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_Invoke
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_toLocaleString(JSContext *ctx, JSValueConst this_val,\n
      \                                       int argc, JSValueConst *argv)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:39523,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39524,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:39527,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:39527,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:39528,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39529,1
    - Dst: JS_CopyDataProperties
      Src: /src/gpac/src/quickjs/quickjs.c:39531,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39533,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39538,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39539,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39541
      start: 39515
    functionDepth: 20
    functionLinenumber: 39515
    functionLinenumberEnd: 39541
    functionName: js_object_assign
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CopyDataProperties
    - JS_IsNull
    - JS_IsException
    - JS_FreeValue
    - JS_IsUndefined
    - JS_ToObject
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_assign(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:39552,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39553,1
    - Dst: JS_PreventExtensions
      Src: /src/gpac/src/quickjs/quickjs.c:39555,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:39559,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:39562,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:39564,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:39573,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:39579,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:39582,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:39586,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39587,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:39590,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 36
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - freeze_flag
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39592
      start: 39543
    functionDepth: 17
    functionLinenumber: 39543
    functionLinenumberEnd: 39592
    functionName: js_object_seal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyInternal
    - JS_DupValue
    - JS_FreePropertyEnum
    - JS_ThrowTypeError
    - JS_VALUE_GET_OBJ
    - js_free_desc
    - JS_DefineProperty
    - JS_PreventExtensions
    - JS_IsObject
    - JS_GetOwnPropertyNamesInternal
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_seal(JSContext *ctx, JSValueConst this_val,\n                              int
      argc, JSValueConst *argv, int freeze_flag)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:39603,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:39606,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:39608,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:39615,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:39619,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:39627,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:39632,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:39633,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:39636,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 33
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - is_frozen
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39638
      start: 39594
    functionDepth: 14
    functionLinenumber: 39594
    functionLinenumberEnd: 39638
    functionName: js_object_isSealed
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyInternal
    - JS_FreePropertyEnum
    - JS_VALUE_GET_OBJ
    - js_free_desc
    - JS_NewBool
    - JS_IsExtensible
    - JS_IsObject
    - JS_GetOwnPropertyNamesInternal
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_isSealed(JSContext *ctx, JSValueConst this_val,\n
      \                                 int argc, JSValueConst *argv, int is_frozen)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:39651,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39652,1
    - Dst: JS_GetIterator
      Src: /src/gpac/src/quickjs/quickjs.c:39655,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39656,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:39658,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39659,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:39664,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39665,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:39672,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:39673,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:39676,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39677,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:39679,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39680,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39681,1
    - Dst: JS_DefinePropertyValueValue
      Src: /src/gpac/src/quickjs/quickjs.c:39684,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39687,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39690,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39692,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39693,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:39696,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:39698,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39700,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39701,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39702,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 58
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39704
      start: 39640
    functionDepth: 19
    functionLinenumber: 39640
    functionLinenumberEnd: 39704
    functionName: js_object_fromEntries
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_IteratorNext
    - JS_DefinePropertyValueValue
    - JS_IsException
    - JS_GetPropertyUint32
    - JS_FreeValue
    - JS_IteratorClose
    - JS_GetIterator
    - JS_NewObject
    - JS_IsObject
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_fromEntries(JSContext *ctx, JSValueConst this_val,\n
      \                                    int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:39709,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:39709,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39710
      start: 39706
    functionDepth: 5
    functionLinenumber: 39706
    functionLinenumberEnd: 39710
    functionName: js_object_is
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - js_same_value
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_is(JSContext *ctx, JSValueConst this_val,\n                            int
      argc, JSValueConst *argv)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:39717,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:39718,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:39719,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39720,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:39722,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39723,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:39724,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39725,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:39726,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:39728,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39729,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39730,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:39732,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:39732,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39733,1
    - Dst: JS_IsConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:39734,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39735,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:39736,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 3
    argNames:
    - ctx
    - obj
    - defaultConstructor
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39739
      start: 39712
    functionDepth: 13
    functionLinenumber: 39712
    functionLinenumberEnd: 39739
    functionName: JS_SpeciesConstructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_DupValue
    - JS_IsNull
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_IsUndefined
    - JS_IsConstructor
    - JS_IsObject
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_SpeciesConstructor(JSContext *ctx, JSValueConst obj,\n
      \                                    JSValueConst defaultConstructor)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:39745,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39746,1
    - Dst: JS_GetPrototype
      Src: /src/gpac/src/quickjs/quickjs.c:39748,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39749,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39751
      start: 39741
    functionDepth: 20
    functionLinenumber: 39741
    functionLinenumberEnd: 39751
    functionName: js_object_get___proto__
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_ToObject
    - JS_FreeValue
    - JS_GetPrototype
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_object_get___proto__(JSContext *ctx, JSValueConst this_val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:39756,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:39756,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:39757,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:39758,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:39758,1
    - Dst: JS_SetPrototypeInternal
      Src: /src/gpac/src/quickjs/quickjs.c:39760,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - this_val
    - proto
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39764
      start: 39753
    functionDepth: 14
    functionLinenumber: 39753
    functionLinenumberEnd: 39764
    functionName: js_object_set___proto__
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_IsNull
    - JS_IsUndefined
    - JS_IsObject
    - JS_SetPrototypeInternal
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_set___proto__(JSContext *ctx, JSValueConst this_val,\n
      \                                      JSValueConst proto)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:39774,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:39776,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39777,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39779,1
    - Dst: JS_GetPrototypeFree
      Src: /src/gpac/src/quickjs/quickjs.c:39781,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39782,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:39784,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:39788,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:39788,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:39793,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39796,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39797,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:39798,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39801,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39802,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 33
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39804
      start: 39766
    functionDepth: 20
    functionLinenumber: 39766
    functionLinenumberEnd: 39804
    functionName: js_object_isPrototypeOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_IsNull
    - JS_GetPrototypeFree
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - js_poll_interrupts
    - JS_ToObject
    - JS_NewBool
    - JS_IsObject
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_isPrototypeOf(JSContext *ctx, JSValueConst this_val,\n
      \                                      int argc, JSValueConst *argv)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39814,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:39815,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:39817,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39818,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:39821,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:39821,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:39825,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:39826,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39832,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39833,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39835
      start: 39806
    functionDepth: 20
    functionLinenumber: 39806
    functionLinenumberEnd: 39835
    functionName: js_object_propertyIsEnumerable
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyInternal
    - JS_FreeAtom
    - JS_IsException
    - JS_FreeValue
    - unlikely
    - JS_VALUE_GET_OBJ
    - js_free_desc
    - JS_ToObject
    - JS_ValueToAtom
    - JS_NewBool
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_propertyIsEnumerable(JSContext *ctx, JSValueConst
      this_val,\n                                              int argc, JSValueConst
      *argv)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:39845,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39846,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39848,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:39849,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:39853,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:39853,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39858,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:39861,1
    - Dst: JS_GetPrototypeFree
      Src: /src/gpac/src/quickjs/quickjs.c:39864,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39865,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:39867,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:39872,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39877,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39878,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 38
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - setter
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39880
      start: 39837
    functionDepth: 20
    functionLinenumber: 39837
    functionLinenumberEnd: 39880
    functionName: js_object___lookupGetter__
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyInternal
    - JS_DupValue
    - JS_FreeAtom
    - JS_IsNull
    - JS_GetPrototypeFree
    - JS_IsException
    - JS_FreeValue
    - unlikely
    - JS_VALUE_GET_OBJ
    - js_free_desc
    - js_poll_interrupts
    - JS_ToObject
    - JS_ValueToAtom
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object___lookupGetter__(JSContext *ctx, JSValueConst this_val,\n
      \                                         int argc, JSValueConst *argv, int
      setter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39928
      start: 39924
    functionDepth: 0
    functionLinenumber: 39924
    functionLinenumberEnd: 39928
    functionName: js_function_proto
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_function_proto(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:39939,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:39940,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:39943,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:39945,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:39948,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:39950,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:39955,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:39957,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:39960,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:39962,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:39965,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:39966,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39967,1
    - Dst: JS_EvalObject
      Src: /src/gpac/src/quickjs/quickjs.c:39970,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39971,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39972,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:39974,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:39976,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39977,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:39979,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39981,1
    - Dst: JS_GetFunctionRealm
      Src: /src/gpac/src/quickjs/quickjs.c:39982,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39985,1
    - Dst: JS_SetPrototypeInternal
      Src: /src/gpac/src/quickjs/quickjs.c:39987,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39988,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:39995,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39997,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 63
    argCount: 5
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39999
      start: 39931
    functionDepth: 14
    functionLinenumber: 39931
    functionLinenumberEnd: 39999
    functionName: js_function_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsObject
    - JS_GetFunctionRealm
    - string_buffer_puts8
    - string_buffer_end
    - JS_DupValue
    - JS_IsException
    - JS_FreeValue
    - JS_IsUndefined
    - string_buffer_free
    - string_buffer_init
    - string_buffer_concat_value
    - JS_EvalObject
    - string_buffer_putc8
    - JS_SetPrototypeInternal
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_function_constructor(JSContext *ctx, JSValueConst new_target,\n
      \                                      int argc, JSValueConst *argv, int magic)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40005,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40006,1
    - Dst: JS_ToUint32Free
      Src: /src/gpac/src/quickjs/quickjs.c:40010,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - pres
    - obj
    argTypes:
    - JSContext*
    - uint32_t*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40011
      start: 40001
    functionDepth: 21
    functionLinenumber: 40001
    functionLinenumberEnd: 40011
    functionName: js_get_length32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_IsException
    - JS_GetProperty
    - JS_ToUint32Free
    linkageType: ''
    returnType: __exception
    signature: "__exception js_get_length32(JSContext *ctx, uint32_t *pres,\n                                       JSValueConst
      obj)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40017,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40018,1
    - Dst: JS_ToLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:40022,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - pres
    - obj
    argTypes:
    - JSContext*
    - int64_t*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40023
      start: 40013
    functionDepth: 22
    functionLinenumber: 40013
    functionLinenumberEnd: 40023
    functionName: js_get_length64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_ToLengthFree
    - JS_GetProperty
    linkageType: ''
    returnType: __exception
    signature: "__exception js_get_length64(JSContext *ctx, int64_t *pres,\n                                       JSValueConst
      obj)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40029,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:40031,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctx
    - tab
    - len
    argTypes:
    - JSContext*
    - JSValue*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40032
      start: 40025
    functionDepth: 3
    functionLinenumber: 40025
    functionLinenumberEnd: 40032
    functionName: free_arg_list
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_FreeValue
    - js_free
    linkageType: ''
    returnType: void
    signature: void free_arg_list(JSContext *ctx, JSValue *tab, uint32_t len)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:40043,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:40044,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:40047,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:40051,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:40057,1
    - Dst: max_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:40057,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:40060,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40065,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:40069,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40070,1
    - Dst: free_arg_list
      Src: /src/gpac/src/quickjs/quickjs.c:40071,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 3
    argNames:
    - ctx
    - plen
    - array_arg
    argTypes:
    - JSContext*
    - uint32_t*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40079
      start: 40035
    functionDepth: 23
    functionLinenumber: 40035
    functionLinenumberEnd: 40079
    functionName: build_arg_list
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_DupValue
    - js_get_length64
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeError
    - JS_IsException
    - JS_GetPropertyUint32
    - max_uint32
    - JS_ThrowRangeError
    - JS_VALUE_GET_OBJ
    - js_mallocz
    - free_arg_list
    linkageType: ''
    returnType: JSValue
    signature: "JSValue *build_arg_list(JSContext *ctx, uint32_t *plen,\n                               JSValueConst
      array_arg)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:40090,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:40094,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:40095,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:40096,1
    - Dst: build_arg_list
      Src: /src/gpac/src/quickjs/quickjs.c:40098,1
    - Dst: JS_CallConstructor2
      Src: /src/gpac/src/quickjs/quickjs.c:40102,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:40104,1
    - Dst: free_arg_list
      Src: /src/gpac/src/quickjs/quickjs.c:40106,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40108
      start: 40083
    functionDepth: 24
    functionLinenumber: 40083
    functionLinenumberEnd: 40108
    functionName: js_function_apply
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - JS_VALUE_GET_TAG
    - build_arg_list
    - JS_Call
    - free_arg_list
    - check_function
    - JS_CallConstructor2
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_function_apply(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv, int magic)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:40114,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:40116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40118
      start: 40110
    functionDepth: 23
    functionLinenumber: 40110
    functionLinenumberEnd: 40118
    functionName: js_function_call
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_Call
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_function_call(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:40128,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:40131,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40133,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:40135,1
    - Dst: JS_IsConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:40136,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:40137,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:40138,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40141,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40142,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40145,1
    - Dst: JS_GetOwnProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40150,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:40154,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40156,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40157,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:40159,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:40161,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:40166,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:40167,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:40168,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:40169,1
    - Dst: trunc
      Src: /src/gpac/src/quickjs/quickjs.c:40172,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:40178,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40180,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:40181,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:40184,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40187,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40188,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:40190,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40191,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:40192,1
    - Dst: JS_ConcatString3
      Src: /src/gpac/src/quickjs/quickjs.c:40194,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40195,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:40197,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40201,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 71
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40203
      start: 40120
    functionDepth: 18
    functionLinenumber: 40120
    functionLinenumberEnd: 40203
    functionName: js_function_bind
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsConstructor
    - trunc
    - JS_DupValue
    - JS_IsString
    - JS_VALUE_GET_TAG
    - JS_NewFloat64
    - js_malloc
    - isnan
    - JS_VALUE_GET_FLOAT64
    - JS_NewInt32
    - JS_AtomToString
    - JS_GetProperty
    - JS_GetOwnProperty
    - JS_DefinePropertyValue
    - JS_ConcatString3
    - check_function
    - JS_VALUE_GET_INT
    - JS_IsException
    - JS_FreeValue
    - JS_NewObjectProtoClass
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_NORM_TAG
    - max_int
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_function_bind(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:40211,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:40214,1
    - Dst: js_class_has_bytecode
      Src: /src/gpac/src/quickjs/quickjs.c:40215,1
    - Dst: JS_NewStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:40218,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40242,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:40243,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:40244,1
    - Dst: JS_ConcatString3
      Src: /src/gpac/src/quickjs/quickjs.c:40245,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40247
      start: 40205
    functionDepth: 13
    functionLinenumber: 40205
    functionLinenumberEnd: 40247
    functionName: js_function_toString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_class_has_bytecode
    - JS_VALUE_GET_OBJ
    - JS_IsUndefined
    - JS_NewStringLen
    - JS_ConcatString3
    - check_function
    - JS_AtomToString
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_function_toString(JSContext *ctx, JSValueConst this_val,\n
      \                                   int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_OrdinaryIsInstanceOf
      Src: /src/gpac/src/quickjs/quickjs.c:40253,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:40257,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40258
      start: 40249
    functionDepth: 16
    functionLinenumber: 40249
    functionLinenumberEnd: 40258
    functionName: js_function_hasInstance
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_OrdinaryIsInstanceOf
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_function_hasInstance(JSContext *ctx, JSValueConst this_val,\n
      \                                      int argc, JSValueConst *argv)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetIterator
      Src: /src/gpac/src/quickjs/quickjs.c:40280,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40281,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40283,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40284,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:40286,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40287,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:40290,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40291,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:40295,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40300,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40301,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:40304,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40306,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 38
    argCount: 2
    argNames:
    - ctx
    - items
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40309
      start: 40273
    functionDepth: 20
    functionLinenumber: 40273
    functionLinenumberEnd: 40309
    functionName: iterator_to_array
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IteratorNext
    - JS_DefinePropertyValueInt64
    - JS_IsException
    - JS_FreeValue
    - JS_GetIterator
    - JS_IteratorClose
    - JS_NewArray
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: JSValue iterator_to_array(JSContext *ctx, JSValueConst items)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:40318,1
    - Dst: JS_GetActiveFunction
      Src: /src/gpac/src/quickjs/quickjs.c:40319,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40320,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40321,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:40323,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40327,1
    - Dst: JS_GetFunctionRealm
      Src: /src/gpac/src/quickjs/quickjs.c:40328,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40336,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:40338,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40339,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40340,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:40345,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:40346,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:40347,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40347,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:40349,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:40355,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40356,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40360,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40361,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:40363,1
    - Dst: iterator_to_array
      Src: /src/gpac/src/quickjs/quickjs.c:40370,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40371,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:40373,1
    - Dst: build_backtrace
      Src: /src/gpac/src/quickjs/quickjs.c:40378,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40381,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 57
    argCount: 5
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40383
      start: 40311
    functionDepth: 21
    functionLinenumber: 40311
    functionLinenumberEnd: 40383
    functionName: js_error_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetFunctionRealm
    - JS_DupValue
    - build_backtrace
    - JS_GetActiveFunction
    - JS_DefinePropertyValue
    - JS_IsException
    - JS_FreeValue
    - JS_NewObjectProtoClass
    - unlikely
    - JS_IsUndefined
    - JS_HasProperty
    - JS_ToString
    - JS_IsObject
    - iterator_to_array
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_error_constructor(JSContext *ctx, JSValueConst new_target,\n
      \                                   int argc, JSValueConst *argv, int magic)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:40390,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:40391,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40392,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:40393,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:40394,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:40396,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40397,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40400,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:40401,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:40402,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:40404,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40405,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40406,1
    - Dst: JS_IsEmptyString
      Src: /src/gpac/src/quickjs/quickjs.c:40409,1
    - Dst: JS_IsEmptyString
      Src: /src/gpac/src/quickjs/quickjs.c:40409,1
    - Dst: JS_ConcatString3
      Src: /src/gpac/src/quickjs/quickjs.c:40410,1
    - Dst: JS_ConcatString
      Src: /src/gpac/src/quickjs/quickjs.c:40411,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40412
      start: 40385
    functionDepth: 20
    functionLinenumber: 40385
    functionLinenumberEnd: 40412
    functionName: js_error_toString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_ConcatString
    - JS_IsException
    - JS_FreeValue
    - JS_ToStringFree
    - JS_IsUndefined
    - JS_ConcatString3
    - JS_AtomToString
    - JS_IsObject
    - JS_IsEmptyString
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_error_toString(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:40442,1
    - Dst: JS_IsError
      Src: /src/gpac/src/quickjs/quickjs.c:40442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40443
      start: 40439
    functionDepth: 2
    functionLinenumber: 40439
    functionLinenumberEnd: 40443
    functionName: js_error_isError
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_IsError
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_error_isError(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:40457,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40460,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:40462,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40462,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - errors
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40465
      start: 40452
    functionDepth: 18
    functionLinenumber: 40452
    functionLinenumberEnd: 40465
    functionName: js_aggregate_error_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_DupValue
    - JS_NewObjectProtoClass
    - JS_DefinePropertyValue
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_aggregate_error_constructor(JSContext *ctx,\n                                              JSValueConst
      errors)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:40479,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:40480,1
    - Dst: min_int64
      Src: /src/gpac/src/quickjs/quickjs.c:40503,1
    - Dst: min_int64
      Src: /src/gpac/src/quickjs/quickjs.c:40504,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:40506,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40507,1
    - Dst: min_int64
      Src: /src/gpac/src/quickjs/quickjs.c:40510,1
    - Dst: min_int64
      Src: /src/gpac/src/quickjs/quickjs.c:40511,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:40513,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40514,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:40519,1
    - Dst: JS_SetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:40524,1
    - Dst: JS_DeletePropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:40527,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 53
    argCount: 6
    argNames:
    - ctx
    - obj
    - to_pos
    - from_pos
    - count
    - dir
    argTypes:
    - JSContext*
    - JSValueConst
    - int64_t
    - int64_t
    - int64_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40537
      start: 40469
    functionDepth: 17
    functionLinenumber: 40469
    functionLinenumberEnd: 40537
    functionName: JS_CopySubArray
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_OBJ
    - min_int64
    - JS_SetPropertyInt64
    - JS_TryGetPropertyInt64
    - JS_DeletePropertyInt64
    - set_value
    linkageType: ''
    returnType: int
    signature: "int JS_CopySubArray(JSContext *ctx,\n                           JSValueConst
      obj, int64_t to_pos,\n                           int64_t from_pos, int64_t count,
      int dir)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:40545,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40546,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/quickjs/quickjs.c:40548,1
    - Dst: JS_ToArrayLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:40550,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40550,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40552,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:40552,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:40556,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40556,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40562,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 23
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40564
      start: 40539
    functionDepth: 20
    functionLinenumber: 40539
    functionLinenumberEnd: 40564
    functionName: js_array_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_IsNumber
    - JS_IsException
    - JS_FreeValue
    - JS_SetPropertyUint32
    - JS_ToArrayLengthFree
    - js_create_from_ctor
    - JS_NewUint32
    - JS_SetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_constructor(JSContext *ctx, JSValueConst new_target,\n
      \                                   int argc, JSValueConst *argv)"
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:40587,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:40588,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40595,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40596,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:40598,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:40598,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:40599,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:40600,1
    - Dst: JS_IsConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:40603,1
    - Dst: JS_CallConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:40604,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:40606,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40607,1
    - Dst: JS_GetIterator2
      Src: /src/gpac/src/quickjs/quickjs.c:40609,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40610,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40612,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40613,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:40616,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40617,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:40623,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:40624,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40625,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40627,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:40630,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:40635,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40636,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:40638,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:40640,1
    - Dst: JS_IsConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:40642,1
    - Dst: JS_CallConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:40643,1
    - Dst: js_array_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:40645,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40647,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40648,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:40651,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40652,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:40656,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:40657,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40658,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40660,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:40663,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40668,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:40668,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:40673,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40675,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40678,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40679,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40680,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40681,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 123
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40683
      start: 40566
    functionDepth: 24
    functionLinenumber: 40566
    functionLinenumberEnd: 40683
    functionName: js_array_from
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetPropertyInt64
    - JS_GetIterator2
    - JS_NewInt64
    - JS_IsConstructor
    - JS_CallConstructor
    - JS_NewUint32
    - JS_NewArray
    - JS_IsUndefined
    - JS_NewInt32
    - js_array_constructor
    - JS_GetProperty
    - js_get_length64
    - JS_IsNull
    - JS_IsFunction
    - JS_DefinePropertyValueInt64
    - JS_ToObject
    - check_function
    - JS_IteratorClose
    - JS_IteratorNext
    - JS_ThrowTypeError
    - JS_IsException
    - JS_Call
    - JS_FreeValue
    - JS_SetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_from(JSContext *ctx, JSValueConst this_val,\n                             int
      argc, JSValueConst *argv)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:40691,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:40692,1
    - Dst: JS_CallConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:40693,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:40695,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40697,1
    - Dst: JS_CreateDataPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:40700,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40700,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40705,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:40705,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40707,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40711
      start: 40685
    functionDepth: 24
    functionLinenumber: 40685
    functionLinenumberEnd: 40711
    functionName: js_array_of
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_IsException
    - JS_FreeValue
    - JS_CallConstructor
    - JS_IsConstructor
    - JS_CreateDataPropertyUint32
    - JS_NewUint32
    - JS_SetProperty
    - JS_NewInt32
    - JS_NewArray
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_of(JSContext *ctx, JSValueConst this_val,\n                           int
      argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsArray
      Src: /src/gpac/src/quickjs/quickjs.c:40717,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:40721,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40722
      start: 40713
    functionDepth: 2
    functionLinenumber: 40713
    functionLinenumberEnd: 40722
    functionName: js_array_isArray
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_IsArray
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_isArray(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40727,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40728
      start: 40724
    functionDepth: 1
    functionLinenumber: 40724
    functionLinenumberEnd: 40728
    functionName: js_get_this
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_get_this(JSContext *ctx,\n                           JSValueConst
      this_val)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsArray
      Src: /src/gpac/src/quickjs/quickjs.c:40737,1
    - Dst: js_array_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:40741,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40742,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40743,1
    - Dst: JS_IsConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:40745,1
    - Dst: JS_GetFunctionRealm
      Src: /src/gpac/src/quickjs/quickjs.c:40747,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40749,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:40753,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40754,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:40758,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40759,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40760,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40761,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:40764,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:40767,1
    - Dst: js_array_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:40768,1
    - Dst: JS_CallConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:40770,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40771,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 3
    argNames:
    - ctx
    - obj
    - len_val
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40774
      start: 40730
    functionDepth: 24
    functionLinenumber: 40730
    functionLinenumberEnd: 40774
    functionName: JS_ArraySpeciesCreate
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetFunctionRealm
    - JS_IsArray
    - js_same_value
    - JS_IsNull
    - JS_IsException
    - JS_FreeValue
    - JS_IsUndefined
    - JS_IsConstructor
    - JS_CallConstructor
    - js_array_constructor
    - JS_IsObject
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_ArraySpeciesCreate(JSContext *ctx, JSValueConst obj,\n
      \                                    JSValueConst len_val)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:40787,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40789,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40790,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:40792,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:40793,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/quickjs/quickjs.c:40794,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40795
      start: 40783
    functionDepth: 2
    functionLinenumber: 40783
    functionLinenumberEnd: 40795
    functionName: JS_isConcatSpreadable
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToBoolFree
    - JS_IsArray
    - JS_IsException
    - JS_IsUndefined
    - JS_IsObject
    - JS_GetProperty
    linkageType: ''
    returnType: int
    signature: int JS_isConcatSpreadable(JSContext *ctx, JSValueConst obj)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:40805,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:40806,1
    - Dst: JS_ToInt64Sat
      Src: /src/gpac/src/quickjs/quickjs.c:40809,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:40816,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40817,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:40819,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40825,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40828,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 28
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40830
      start: 40797
    functionDepth: 23
    functionLinenumber: 40797
    functionLinenumberEnd: 40830
    functionName: js_array_at
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - js_get_length64
    - js_get_fast_array
    - JS_FreeValue
    - JS_ToObject
    - JS_TryGetPropertyInt64
    - JS_ToInt64Sat
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_at(JSContext *ctx, JSValueConst this_val,\n                           int
      argc, JSValueConst *argv)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:40842,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:40843,1
    - Dst: JS_ToInt64Sat
      Src: /src/gpac/src/quickjs/quickjs.c:40846,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:40853,1
    - Dst: js_allocate_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:40857,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40858,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:40861,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:40864,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40866,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40867,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40869,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:40872,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40874,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:40876,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40885,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:40885,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40892,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40893,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 57
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40895
      start: 40832
    functionDepth: 23
    functionLinenumber: 40832
    functionLinenumberEnd: 40895
    functionName: js_array_with
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - js_get_length64
    - JS_IsException
    - js_get_fast_array
    - JS_FreeValue
    - js_allocate_fast_array
    - JS_ThrowRangeError
    - JS_VALUE_GET_OBJ
    - JS_NewInt64
    - JS_ToObject
    - JS_TryGetPropertyInt64
    - JS_SetProperty
    - JS_ToInt64Sat
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_with(JSContext *ctx, JSValueConst this_val,\n                             int
      argc, JSValueConst *argv)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:40906,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40907,1
    - Dst: JS_ArraySpeciesCreate
      Src: /src/gpac/src/quickjs/quickjs.c:40910,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:40910,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40911,1
    - Dst: JS_isConcatSpreadable
      Src: /src/gpac/src/quickjs/quickjs.c:40920,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:40924,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:40927,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:40931,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:40935,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:40942,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:40945,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40945,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40951,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:40951,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40954,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40958,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40959,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 61
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40961
      start: 40897
    functionDepth: 25
    functionLinenumber: 40897
    functionLinenumberEnd: 40961
    functionName: js_array_concat
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - js_get_length64
    - JS_ThrowTypeError
    - JS_IsException
    - JS_ArraySpeciesCreate
    - JS_DefinePropertyValueInt64
    - JS_FreeValue
    - JS_isConcatSpreadable
    - JS_NewInt64
    - JS_ToObject
    - JS_TryGetPropertyInt64
    - JS_SetProperty
    - JS_NewInt32
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_concat(JSContext *ctx, JSValueConst this_val,\n                               int
      argc, JSValueConst *argv)"
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40986,1
    - Dst: js_typed_array_get_length_unsafe
      Src: /src/gpac/src/quickjs/quickjs.c:40987,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:40991,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:40992,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:41000,1
    - Dst: JS_ArraySpeciesCreate
      Src: /src/gpac/src/quickjs/quickjs.c:41014,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41014,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41015,1
    - Dst: JS_ArraySpeciesCreate
      Src: /src/gpac/src/quickjs/quickjs.c:41019,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:41019,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41020,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:41025,1
    - Dst: js_typed_array___speciesCreate
      Src: /src/gpac/src/quickjs/quickjs.c:41026,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41027,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:41031,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41032,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41040,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41041,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41045,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41050,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41051,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:41056,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41057,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41058,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:41063,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:41070,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41076,1
    - Dst: JS_SetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:41081,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:41081,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:41086,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41087,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41087,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41093,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41096,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:41104,1
    - Dst: js_typed_array___speciesCreate
      Src: /src/gpac/src/quickjs/quickjs.c:41105,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41106,1
    - Dst: JS_Invoke
      Src: /src/gpac/src/quickjs/quickjs.c:41109,1
    - Dst: check_exception_free
      Src: /src/gpac/src/quickjs/quickjs.c:41110,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41111,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41114,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41117,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41118,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41122,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41123,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41124,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 156
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - special
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41126
      start: 40974
    functionDepth: 25
    functionLinenumber: 40974
    functionLinenumberEnd: 41126
    functionName: js_array_every
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToBoolFree
    - JS_GetPropertyInt64
    - JS_ArraySpeciesCreate
    - JS_NewInt64
    - JS_NewArray
    - JS_DupValue
    - JS_TryGetPropertyInt64
    - JS_NewInt32
    - check_exception_free
    - js_get_length64
    - JS_DefinePropertyValueInt64
    - JS_ToObject
    - js_typed_array___speciesCreate
    - check_function
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_Invoke
    - JS_SetPropertyValue
    - js_typed_array_get_length_unsafe
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_every(JSContext *ctx, JSValueConst this_val,\n                              int
      argc, JSValueConst *argv, int special)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41143,1
    - Dst: js_typed_array_get_length_unsafe
      Src: /src/gpac/src/quickjs/quickjs.c:41144,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:41148,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:41149,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:41154,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41159,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:41163,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41169,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41170,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41174,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41185,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41186,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41190,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41195,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41196,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:41202,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41203,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41204,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41206,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41208,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41212,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41216,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41217,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41218,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 89
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - special
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41220
      start: 41131
    functionDepth: 23
    functionLinenumber: 41131
    functionLinenumberEnd: 41220
    functionName: js_array_reduce
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - js_get_length64
    - JS_GetPropertyInt64
    - check_function
    - JS_ThrowTypeError
    - JS_IsException
    - JS_Call
    - JS_FreeValue
    - JS_NewInt64
    - JS_ToObject
    - JS_TryGetPropertyInt64
    - js_typed_array_get_length_unsafe
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_reduce(JSContext *ctx, JSValueConst this_val,\n                               int
      argc, JSValueConst *argv, int special)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:41228,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:41229,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:41233,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:41234,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:41239,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:41240,1
    - Dst: JS_SetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41246,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41247,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41254,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41256
      start: 41222
    functionDepth: 23
    functionLinenumber: 41222
    functionLinenumberEnd: 41256
    functionName: js_array_fill
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - js_get_length64
    - JS_FreeValue
    - JS_SetPropertyInt64
    - JS_IsUndefined
    - JS_ToObject
    - JS_ToInt64Clamp
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_fill(JSContext *ctx, JSValueConst this_val,\n                             int
      argc, JSValueConst *argv)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:41267,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:41268,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:41275,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:41278,1
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:41280,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41280,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41281,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41289,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41290,1
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:41292,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41292,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41300,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:41301,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41304,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 41
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41306
      start: 41258
    functionDepth: 23
    functionLinenumber: 41258
    functionLinenumberEnd: 41306
    functionName: js_array_includes
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - js_get_length64
    - JS_GetPropertyInt64
    - js_get_fast_array
    - JS_IsException
    - JS_FreeValue
    - JS_ToObject
    - JS_NewBool
    - JS_ToInt64Clamp
    - js_strict_eq2
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_includes(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:41316,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:41317,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:41324,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:41327,1
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:41329,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41329,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41330,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41337,1
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:41341,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41341,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41349,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41350,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41353,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 42
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41355
      start: 41308
    functionDepth: 23
    functionLinenumber: 41308
    functionLinenumberEnd: 41355
    functionName: js_array_indexOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - js_get_length64
    - js_get_fast_array
    - JS_FreeValue
    - JS_NewInt64
    - JS_ToObject
    - JS_TryGetPropertyInt64
    - JS_ToInt64Clamp
    - js_strict_eq2
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_indexOf(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:41364,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:41365,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:41372,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41377,1
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:41381,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41381,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41388,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41389,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41392,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 32
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41394
      start: 41357
    functionDepth: 23
    functionLinenumber: 41357
    functionLinenumberEnd: 41394
    functionName: js_array_lastIndexOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - js_get_length64
    - JS_FreeValue
    - JS_NewInt64
    - JS_ToObject
    - JS_TryGetPropertyInt64
    - JS_ToInt64Clamp
    - js_strict_eq2
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_lastIndexOf(JSContext *ctx, JSValueConst this_val,\n
      \                                   int argc, JSValueConst *argv)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:41414,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:41415,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:41419,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41437,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41438,1
    - Dst: JS_GetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:41440,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41441,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:41446,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41447,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:41449,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41451,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41452,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41455,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41456,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41460,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41461,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41463,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:41465,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41470,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41471,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41472,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 62
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - mode
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41474
      start: 41403
    functionDepth: 23
    functionLinenumber: 41403
    functionLinenumberEnd: 41474
    functionName: js_array_find
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_get_length64
    - JS_ToBoolFree
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_NewInt64
    - JS_ToObject
    - check_function
    - JS_NewInt32
    - JS_GetPropertyValue
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_find(JSContext *ctx, JSValueConst this_val,\n                             int
      argc, JSValueConst *argv, int mode)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:41481,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41482,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41484,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41485,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:41488,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41490,1
    - Dst: js_object_toString
      Src: /src/gpac/src/quickjs/quickjs.c:41491,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:41493,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41495,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41497
      start: 41476
    functionDepth: 23
    functionLinenumber: 41476
    functionLinenumberEnd: 41497
    functionName: js_array_toString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsFunction
    - JS_IsException
    - JS_FreeValue
    - js_object_toString
    - JS_CallFree
    - JS_ToObject
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_toString(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:41508,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:41509,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:41513,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:41514,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41515,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:41517,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:41523,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:41528,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:41530,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:41533,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41534,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:41536,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:41536,1
    - Dst: JS_ToLocaleStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:41538,1
    - Dst: string_buffer_concat_value_free
      Src: /src/gpac/src/quickjs/quickjs.c:41540,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41544,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41545,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:41546,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:41549,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41550,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41552,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 49
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - toLocaleString
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41554
      start: 41499
    functionDepth: 23
    functionLinenumber: 41499
    functionLinenumberEnd: 41554
    functionName: js_array_join
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_concat
    - js_get_length64
    - JS_ToLocaleStringFree
    - string_buffer_end
    - JS_IsNull
    - JS_IsException
    - JS_GetPropertyUint32
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - string_buffer_concat_value_free
    - JS_IsUndefined
    - string_buffer_free
    - JS_ToObject
    - string_buffer_init
    - JS_ToString
    - string_buffer_putc8
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_join(JSContext *ctx, JSValueConst this_val,\n                             int
      argc, JSValueConst *argv, int toLocaleString)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:41564,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:41565,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:41571,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:41572,1
    - Dst: memmove
      Src: /src/gpac/src/quickjs/quickjs.c:41575,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41583,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41584,1
    - Dst: JS_CopySubArray
      Src: /src/gpac/src/quickjs/quickjs.c:41586,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41589,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41590,1
    - Dst: JS_DeletePropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41593,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41597,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41597,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41600,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41604,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41605,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 47
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - shift
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41607
      start: 41556
    functionDepth: 23
    functionLinenumber: 41556
    functionLinenumberEnd: 41607
    functionName: js_array_pop
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_get_length64
    - memmove
    - JS_GetPropertyInt64
    - js_get_fast_array
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - JS_NewInt64
    - JS_ToObject
    - JS_DeletePropertyInt64
    - JS_SetProperty
    - JS_CopySubArray
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_pop(JSContext *ctx, JSValueConst this_val,\n                            int
      argc, JSValueConst *argv, int shift)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:41616,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:41616,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:41617,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:41618,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:41620,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:41622,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:41623,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:41624,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:41628,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:41629,1
    - Dst: expand_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:41630,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41634,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:41635,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:41637,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:41641,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:41642,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:41646,1
    - Dst: JS_CopySubArray
      Src: /src/gpac/src/quickjs/quickjs.c:41651,1
    - Dst: JS_SetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41656,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41657,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41660,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41660,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41663,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41664,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41667,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 48
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - unshift
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41669
      start: 41609
    functionDepth: 23
    functionLinenumber: 41609
    functionLinenumberEnd: 41669
    functionName: js_array_push
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - expand_fast_array
    - JS_DupValue
    - get_shape_prop
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - js_get_length64
    - JS_ThrowTypeError
    - JS_FreeValue
    - unlikely
    - JS_VALUE_GET_OBJ
    - likely
    - JS_SetPropertyInt64
    - JS_NewInt64
    - JS_ToObject
    - JS_SetProperty
    - JS_NewInt32
    - JS_CopySubArray
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_push(JSContext *ctx, JSValueConst this_val,\n                             int
      argc, JSValueConst *argv, int unshift)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:41681,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:41682,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:41686,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41700,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41703,1
    - Dst: JS_SetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41707,1
    - Dst: JS_SetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41711,1
    - Dst: JS_DeletePropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41717,1
    - Dst: JS_DeletePropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41722,1
    - Dst: JS_SetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41724,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41735,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41736,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 61
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41738
      start: 41671
    functionDepth: 23
    functionLinenumber: 41671
    functionLinenumberEnd: 41738
    functionName: js_array_reverse
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_get_length64
    - js_get_fast_array
    - JS_FreeValue
    - JS_SetPropertyInt64
    - JS_ToObject
    - JS_TryGetPropertyInt64
    - JS_DeletePropertyInt64
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_reverse(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:41754,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:41755,1
    - Dst: js_allocate_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:41758,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41759,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:41763,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:41767,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41769,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41773,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41782,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41782,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41790,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41791,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 39
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41793
      start: 41744
    functionDepth: 23
    functionLinenumber: 41744
    functionLinenumberEnd: 41793
    functionName: js_array_toReversed
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - js_get_length64
    - JS_IsException
    - js_get_fast_array
    - JS_FreeValue
    - js_allocate_fast_array
    - JS_VALUE_GET_OBJ
    - JS_NewInt64
    - JS_ToObject
    - JS_TryGetPropertyInt64
    - JS_SetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_toReversed(JSContext *ctx, JSValueConst this_val,\n
      \                                  int argc, JSValueConst *argv)"
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:41805,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:41806,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:41809,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:41822,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:41826,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:41833,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:41834,1
    - Dst: max_int64
      Src: /src/gpac/src/quickjs/quickjs.c:41837,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41839,1
    - Dst: JS_ArraySpeciesCreate
      Src: /src/gpac/src/quickjs/quickjs.c:41840,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41841,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41842,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:41852,1
    - Dst: js_is_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:41853,1
    - Dst: JS_CreateDataPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:41856,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41856,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41862,1
    - Dst: JS_CreateDataPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:41866,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41870,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41870,1
    - Dst: JS_CopySubArray
      Src: /src/gpac/src/quickjs/quickjs.c:41876,1
    - Dst: JS_DeletePropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41882,1
    - Dst: JS_SetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41887,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41887,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41890,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41890,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41893,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41897,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41898,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 97
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - splice
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41900
      start: 41795
    functionDepth: 25
    functionLinenumber: 41795
    functionLinenumberEnd: 41900
    functionName: js_array_slice
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ArraySpeciesCreate
    - JS_NewInt64
    - JS_DupValue
    - js_get_fast_array
    - JS_IsUndefined
    - JS_SetPropertyInt64
    - JS_TryGetPropertyInt64
    - js_is_fast_array
    - js_get_length64
    - max_int64
    - JS_ToObject
    - JS_DeletePropertyInt64
    - JS_CreateDataPropertyUint32
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_ToInt64Clamp
    - JS_SetProperty
    - JS_CopySubArray
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_slice(JSContext *ctx, JSValueConst this_val,\n                              int
      argc, JSValueConst *argv, int splice)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:41915,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:41916,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:41921,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:41928,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:41937,1
    - Dst: js_allocate_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:41941,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41942,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:41948,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:41952,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41954,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41956,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41958,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41961,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41964,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41966,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:41970,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41972,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41972,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41983,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41984,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 74
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts:
    - condition: (pval == last)
      pos:
        line_end: 41969
        line_start: 41969
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 41986
      start: 41902
    functionDepth: 23
    functionLinenumber: 41902
    functionLinenumberEnd: 41986
    functionName: js_array_toSpliced
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - js_get_length64
    - JS_ThrowTypeError
    - JS_IsException
    - js_get_fast_array
    - JS_FreeValue
    - assert
    - js_allocate_fast_array
    - JS_VALUE_GET_OBJ
    - JS_NewInt64
    - JS_ToObject
    - JS_TryGetPropertyInt64
    - JS_ToInt64Clamp
    - JS_SetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_toSpliced(JSContext *ctx, JSValueConst this_val,\n
      \                                 int argc, JSValueConst *argv)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:41994,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:41995,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:41998,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:42001,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:42005,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:42006,1
    - Dst: min_int64
      Src: /src/gpac/src/quickjs/quickjs.c:42010,1
    - Dst: JS_CopySubArray
      Src: /src/gpac/src/quickjs/quickjs.c:42012,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42019,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 26
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42021
      start: 41988
    functionDepth: 23
    functionLinenumber: 41988
    functionLinenumberEnd: 42021
    functionName: js_array_copyWithin
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_get_length64
    - JS_FreeValue
    - JS_IsUndefined
    - min_int64
    - JS_ToObject
    - JS_ToInt64Clamp
    - JS_CopySubArray
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_copyWithin(JSContext *ctx, JSValueConst this_val,\n
      \                                  int argc, JSValueConst *argv)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:42033,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:42034,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42039,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:42044,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42045,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:42046,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42048,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42049,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42051,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42052,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42054,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/quickjs/quickjs.c:42058,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:42062,1
    - Dst: JS_FlattenIntoArray
      Src: /src/gpac/src/quickjs/quickjs.c:42064,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42070,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:42075,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42078,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42086,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 51
    argCount: 8
    argNames:
    - ctx
    - target
    - source
    - sourceLen
    - targetIndex
    - depth
    - mapperFunction
    - thisArg
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int64_t
    - int64_t
    - int
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42088
      start: 42023
    functionDepth: 23
    functionLinenumber: 42023
    functionLinenumberEnd: 42088
    functionName: JS_FlattenIntoArray
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_check_stack_overflow
    - js_get_length64
    - JS_IsArray
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_ThrowTypeError
    - JS_DefinePropertyValueInt64
    - JS_IsUndefined
    - JS_NewInt64
    - JS_FlattenIntoArray
    - JS_TryGetPropertyInt64
    - JS_ThrowStackOverflow
    linkageType: ''
    returnType: int64_t
    signature: "int64_t JS_FlattenIntoArray(JSContext *ctx, JSValueConst target,\n
      \                                  JSValueConst source, int64_t sourceLen,\n
      \                                  int64_t targetIndex, int depth,\n                                   JSValueConst
      mapperFunction,\n                                   JSValueConst thisArg)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:42099,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:42100,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:42111,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:42114,1
    - Dst: JS_ToInt32Sat
      Src: /src/gpac/src/quickjs/quickjs.c:42115,1
    - Dst: JS_ArraySpeciesCreate
      Src: /src/gpac/src/quickjs/quickjs.c:42119,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:42119,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42120,1
    - Dst: JS_FlattenIntoArray
      Src: /src/gpac/src/quickjs/quickjs.c:42122,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42125,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42129,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42130,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 38
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - map
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42132
      start: 42090
    functionDepth: 25
    functionLinenumber: 42090
    functionLinenumberEnd: 42132
    functionName: js_array_flatten
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_get_length64
    - JS_IsException
    - JS_ArraySpeciesCreate
    - JS_FreeValue
    - JS_IsUndefined
    - JS_ToObject
    - JS_FlattenIntoArray
    - check_function
    - JS_NewInt32
    - JS_ToInt32Sat
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_flatten(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv, int map)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: memcmp
      Src: /src/gpac/src/quickjs/quickjs.c:42165,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:42169,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42170,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:42172,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:42173,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:42177,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:42186,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42187,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:42189,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:42192,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42193,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:42195,1
    - Dst: js_string_compare
      Src: /src/gpac/src/quickjs/quickjs.c:42197,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 45
    argCount: 3
    argNames:
    - a
    - b
    - opaque
    argTypes:
    - void*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42208
      start: 42149
    functionDepth: 23
    functionLinenumber: 42149
    functionLinenumberEnd: 42208
    functionName: js_array_cmp_generic
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - memcmp
    - JS_Call
    - JS_IsException
    - JS_ToFloat64Free
    - JS_VALUE_GET_STRING
    - JS_ToString
    - js_string_compare
    linkageType: ''
    returnType: int
    signature: int js_array_cmp_generic(const void *a, const void *b, void *opaque)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:42220,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:42221,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:42225,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:42226,1
    - Dst: js_realloc2
      Src: /src/gpac/src/quickjs/quickjs.c:42235,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42242,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:42247,1
    - Dst: rqsort
      Src: /src/gpac/src/quickjs/quickjs.c:42255,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42262,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:42262,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42264,1
    - Dst: JS_SetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42266,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:42273,1
    - Dst: JS_SetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42275,1
    - Dst: JS_DeletePropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42279,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42286,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42288,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:42288,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:42290,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42292,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 78
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42294
      start: 42210
    functionDepth: 23
    functionLinenumber: 42210
    functionLinenumberEnd: 42294
    functionName: js_array_sort
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_get_length64
    - JS_MKPTR
    - JS_FreeValue
    - js_realloc2
    - JS_IsUndefined
    - JS_SetPropertyInt64
    - JS_ToObject
    - JS_TryGetPropertyInt64
    - JS_DeletePropertyInt64
    - check_function
    - rqsort
    - js_free
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_sort(JSContext *ctx, JSValueConst this_val,\n                             int
      argc, JSValueConst *argv)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:42309,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:42309,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:42311,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:42315,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:42316,1
    - Dst: js_allocate_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:42319,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42320,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:42324,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:42327,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:42329,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42332,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:42340,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42340,1
    - Dst: js_array_sort
      Src: /src/gpac/src/quickjs/quickjs.c:42344,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42345,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42347,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42353,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42354,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 47
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42356
      start: 42300
    functionDepth: 24
    functionLinenumber: 42300
    functionLinenumberEnd: 42356
    functionName: js_array_toSorted
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - js_get_length64
    - JS_ThrowTypeError
    - JS_IsFunction
    - JS_IsException
    - js_get_fast_array
    - JS_FreeValue
    - js_allocate_fast_array
    - JS_VALUE_GET_OBJ
    - JS_IsUndefined
    - JS_NewInt64
    - js_array_sort
    - JS_ToObject
    - JS_TryGetPropertyInt64
    - JS_SetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_toSorted(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:42366,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:42369,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:42370,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42372
      start: 42364
    functionDepth: 2
    functionLinenumber: 42364
    functionLinenumberEnd: 42372
    functionName: js_array_iterator_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - JS_VALUE_GET_OBJ
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void js_array_iterator_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:42377,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:42380,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42382
      start: 42374
    functionDepth: 2
    functionLinenumber: 42374
    functionLinenumberEnd: 42382
    functionName: js_array_iterator_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: "void js_array_iterator_mark(JSRuntime *rt, JSValueConst val,\n                                   JS_MarkFunc
      *mark_func)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:42395,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:42398,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42401,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:42403,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42404,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:42406,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:42412,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42415,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42417,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42419
      start: 42384
    functionDepth: 20
    functionLinenumber: 42384
    functionLinenumberEnd: 42419
    functionName: js_create_array_iterator
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_ToStringCheckObject
    - JS_IsException
    - js_malloc
    - JS_SetOpaque
    - JS_FreeValue
    - JS_ToObject
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_create_array_iterator(JSContext *ctx, JSValueConst this_val,\n
      \                                       int argc, JSValueConst *argv, int magic)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:42430,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:42433,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:42435,1
    - Dst: typed_array_is_oob
      Src: /src/gpac/src/quickjs/quickjs.c:42438,1
    - Dst: JS_ThrowTypeErrorArrayBufferOOB
      Src: /src/gpac/src/quickjs/quickjs.c:42439,1
    - Dst: js_get_length32
      Src: /src/gpac/src/quickjs/quickjs.c:42444,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42452,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:42461,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:42463,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42464,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:42471,1
    - Dst: js_create_array
      Src: /src/gpac/src/quickjs/quickjs.c:42474,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42475,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42476,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 53
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - pdone
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - BOOL*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42480
      start: 42421
    functionDepth: 22
    functionLinenumber: 42421
    functionLinenumberEnd: 42480
    functionName: js_array_iterator_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - typed_array_is_oob
    - JS_IsException
    - JS_FreeValue
    - JS_GetPropertyUint32
    - JS_VALUE_GET_OBJ
    - JS_IsUndefined
    - JS_ThrowTypeErrorArrayBufferOOB
    - JS_NewUint32
    - js_get_length32
    - js_create_array
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_iterator_next(JSContext *ctx, JSValueConst this_val,\n
      \                                     int argc, JSValueConst *argv,\n                                      BOOL
      *pdone, int magic)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:42491,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:42494,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:42495,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:42496,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42498
      start: 42489
    functionDepth: 2
    functionLinenumber: 42489
    functionLinenumberEnd: 42498
    functionName: js_iterator_wrap_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - JS_VALUE_GET_OBJ
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void js_iterator_wrap_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:42503,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:42506,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:42507,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42509
      start: 42500
    functionDepth: 2
    functionLinenumber: 42500
    functionLinenumberEnd: 42509
    functionName: js_iterator_wrap_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: "void js_iterator_wrap_mark(JSRuntime *rt, JSValueConst val,\n                                  JS_MarkFunc
      *mark_func)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:42517,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:42521,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:42523,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42524,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:42526,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:42526,1
    - Dst: JS_IteratorNext2
      Src: /src/gpac/src/quickjs/quickjs.c:42530,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42531,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - pdone
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42534
      start: 42511
    functionDepth: 14
    functionLinenumber: 42511
    functionLinenumberEnd: 42534
    functionName: js_iterator_wrap_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - JS_IteratorNext
    - JS_IsNull
    - JS_IsException
    - JS_FreeValue
    - JS_IteratorNext2
    - JS_IsUndefined
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_iterator_wrap_next(JSContext *ctx, JSValueConst this_val,\n
      \                                    int argc, JSValueConst *argv,\n                                     int
      *pdone, int magic)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:42552,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:42553,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:42554,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:42555,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:42561,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    - func_data
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42563
      start: 42543
    functionDepth: 18
    functionLinenumber: 42543
    functionLinenumberEnd: 42563
    functionName: js_iterator_constructor_getset
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_IsObject
    - JS_DupValue
    - JS_DefinePropertyValue
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_iterator_constructor_getset(JSContext *ctx,\n                                              JSValueConst
      this_val,\n                                              int argc, JSValueConst
      *argv,\n                                              int magic,\n                                              JSValue
      *func_data)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:42570,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:42571,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:42572,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:42575,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:42577,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42578
      start: 42565
    functionDepth: 12
    functionLinenumber: 42565
    functionLinenumberEnd: 42578
    functionName: js_iterator_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - js_create_from_ctor
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeError
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_iterator_constructor(JSContext *ctx, JSValueConst new_target,\n
      \                                      int argc, JSValueConst *argv)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:42588,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:42589,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:42590,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:42592,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42593,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:42595,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:42595,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:42596,1
    - Dst: JS_GetIterator2
      Src: /src/gpac/src/quickjs/quickjs.c:42598,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42599,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42600,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:42605,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42606,1
    - Dst: JS_OrdinaryIsInstanceOf
      Src: /src/gpac/src/quickjs/quickjs.c:42609,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42613,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:42617,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42618,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:42620,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:42625,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42629,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42630,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42631,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 47
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42633
      start: 42580
    functionDepth: 16
    functionLinenumber: 42580
    functionLinenumberEnd: 42633
    functionName: js_iterator_from
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_IsString
    - JS_DupValue
    - JS_IsNull
    - JS_ThrowTypeError
    - JS_IsException
    - JS_GetIterator2
    - JS_FreeValue
    - js_malloc
    - JS_OrdinaryIsInstanceOf
    - JS_SetOpaque
    - JS_IsUndefined
    - JS_IsObject
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_iterator_from(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:42666,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:42667,1
    - Dst: JS_ToNumber
      Src: /src/gpac/src/quickjs/quickjs.c:42677,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42678,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:42681,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42682,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:42685,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42686,1
    - Dst: isfinite
      Src: /src/gpac/src/quickjs/quickjs.c:42689,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42690,1
    - Dst: JS_ToIntegerFree
      Src: /src/gpac/src/quickjs/quickjs.c:42696,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42697,1
    - Dst: JS_ToInt64Free
      Src: /src/gpac/src/quickjs/quickjs.c:42699,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:42711,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:42716,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:42720,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42721,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:42723,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42724,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42725,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:42728,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42730,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42731,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:42735,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:42736,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:42742,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:42745,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:42747,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 89
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42749
      start: 42658
    functionDepth: 22
    functionLinenumber: 42658
    functionLinenumberEnd: 42749
    functionName: js_create_iterator_helper
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - isfinite
    - JS_ThrowRangeError
    - JS_ToFloat64
    - JS_ThrowTypeErrorNotAnObject
    - JS_DupValue
    - js_malloc
    - isnan
    - JS_IsObject
    - abort
    - JS_GetProperty
    - JS_NewObjectClass
    - JS_ToNumber
    - JS_ToIntegerFree
    - JS_ToInt64Free
    - check_function
    - JS_IteratorClose
    - JS_IsException
    - JS_FreeValue
    - JS_SetOpaque
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_create_iterator_helper(JSContext *ctx, JSValueConst this_val,\n
      \                                        int argc, JSValueConst *argv, int magic)"
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:42759,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:42760,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:42764,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:42766,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:42767,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42768,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:42778,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42779,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42783,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:42786,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:42786,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42787,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42788,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42789,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:42791,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:42792,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:42807,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42808,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42812,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:42815,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:42815,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42816,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42817,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42818,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:42821,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:42822,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42823,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42830,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:42840,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42841,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42845,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:42848,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:42848,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42849,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42850,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42851,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42853,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:42864,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42865,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42869,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:42872,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:42872,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42873,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42874,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42875,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:42877,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:42878,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:42891,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42895,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42896,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:42899,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42901,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42902,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 148
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42904
      start: 42751
    functionDepth: 23
    functionLinenumber: 42751
    functionLinenumberEnd: 42904
    functionName: js_iterator_proto_func
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_DupValue
    - JS_IteratorNext
    - JS_ToBoolFree
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - countof
    - JS_NewInt64
    - JS_IteratorClose
    - check_function
    - JS_IsObject
    - abort
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_iterator_proto_func(JSContext *ctx, JSValueConst this_val,\n
      \                                     int argc, JSValueConst *argv, int magic)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:42914,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:42915,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:42919,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:42921,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:42922,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42923,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:42926,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:42929,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42930,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:42933,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:42939,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42940,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42944,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:42948,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:42948,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42949,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42950,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42951,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42953,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42959,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42960,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:42963,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42965,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42966,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42967,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 64
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42969
      start: 42906
    functionDepth: 23
    functionLinenumber: 42906
    functionLinenumberEnd: 42969
    functionName: js_iterator_proto_reduce
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_DupValue
    - JS_IteratorNext
    - JS_ThrowTypeError
    - JS_IsException
    - JS_Call
    - JS_FreeValue
    - countof
    - JS_NewInt64
    - JS_IteratorClose
    - check_function
    - JS_IsObject
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_iterator_proto_reduce(JSContext *ctx, JSValueConst this_val,\n
      \                                       int argc, JSValueConst *argv)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:42979,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:42980,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:42981,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42982,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:42984,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42985,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:42988,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42989,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42993,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:42997,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:42997,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42999,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43002,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43003,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43005
      start: 42971
    functionDepth: 20
    functionLinenumber: 42971
    functionLinenumberEnd: 43005
    functionName: js_iterator_proto_toArray
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_IteratorNext
    - JS_DefinePropertyValueInt64
    - JS_IsException
    - JS_FreeValue
    - JS_NewUint32
    - JS_SetProperty
    - JS_IsObject
    - JS_NewArray
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_iterator_proto_toArray(JSContext *ctx, JSValueConst this_val,\n
      \                                        int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43010,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43011
      start: 43007
    functionDepth: 1
    functionLinenumber: 43007
    functionLinenumberEnd: 43011
    functionName: js_iterator_proto_iterator
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_iterator_proto_iterator(JSContext *ctx, JSValueConst this_val,\n
      \                                         int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:43015,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43016
      start: 43013
    functionDepth: 3
    functionLinenumber: 43013
    functionLinenumberEnd: 43016
    functionName: js_iterator_proto_get_toStringTag
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AtomToString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_iterator_proto_get_toStringTag(JSContext *ctx, JSValueConst
      this_val)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:43022,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:43023,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:43024,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:43025,1
    - Dst: JS_GetOwnProperty
      Src: /src/gpac/src/quickjs/quickjs.c:43026,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:43030,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43030,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:43033,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43033,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - this_val
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43037
      start: 43018
    functionDepth: 18
    functionLinenumber: 43018
    functionLinenumberEnd: 43037
    functionName: js_iterator_proto_set_toStringTag
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_DupValue
    - js_same_value
    - JS_ThrowTypeError
    - JS_DefinePropertyValue
    - JS_SetProperty
    - JS_IsObject
    - JS_GetOwnProperty
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_iterator_proto_set_toStringTag(JSContext *ctx, JSValueConst
      this_val, JSValueConst val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:43043,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:43046,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:43047,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:43048,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:43049,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:43050,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43052
      start: 43041
    functionDepth: 2
    functionLinenumber: 43041
    functionLinenumberEnd: 43052
    functionName: js_iterator_helper_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - JS_VALUE_GET_OBJ
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void js_iterator_helper_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:43057,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:43060,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:43061,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:43062,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:43063,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43065
      start: 43054
    functionDepth: 2
    functionLinenumber: 43054
    functionLinenumberEnd: 43065
    functionName: js_iterator_helper_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: "void js_iterator_helper_mark(JSRuntime *rt, JSValueConst val,\n                                   JS_MarkFunc
      *mark_func)"
  - BBCount: 47
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:43076,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:43080,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43093,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:43095,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43096,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:43101,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43102,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43103,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43106,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43110,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:43116,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43117,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43118,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43129,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:43131,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43132,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:43136,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43137,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43138,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43142,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43146,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:43149,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:43149,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43150,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43151,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43152,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43153,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:43156,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43157,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43161,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43170,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43172,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:43174,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43175,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:43178,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43179,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43180,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43186,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:43189,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:43189,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43190,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43191,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43192,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:43194,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43195,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:43196,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:43199,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43200,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43201,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:43204,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43204,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43205,1
    - Dst: JS_GetIterator2
      Src: /src/gpac/src/quickjs/quickjs.c:43208,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43209,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43210,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43211,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:43219,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:43221,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43222,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:43224,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43225,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43229,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:43229,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:43232,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43233,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43234,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:43240,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43241,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43254,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:43256,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43257,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:43260,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43261,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43262,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43268,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:43271,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:43271,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43272,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43273,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43283,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:43285,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43286,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:43290,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43291,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43292,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:43299,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:43307,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:43316,1
    CyclomaticComplexity: 86
    EdgeCount: 86
    ICount: 263
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - pdone
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43320
      start: 43067
    functionDepth: 23
    functionLinenumber: 43067
    functionLinenumberEnd: 43320
    functionName: js_iterator_helper_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - JS_DupValue
    - JS_IteratorNext
    - JS_ToBoolFree
    - JS_IsNull
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_Call
    - JS_GetIterator2
    - countof
    - JS_NewInt64
    - JS_IsUndefined
    - JS_IteratorClose
    - JS_IsObject
    - abort
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_iterator_helper_next(JSContext *ctx, JSValueConst this_val,\n
      \                                     int argc, JSValueConst *argv,\n                                      int
      *pdone, int magic)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:43422,1
    - Dst: JS_ToNumeric
      Src: /src/gpac/src/quickjs/quickjs.c:43424,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43425,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:43427,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43429,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:43429,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43430,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:43435,1
    - Dst: js_bigint_to_float64
      Src: /src/gpac/src/quickjs/quickjs.c:43437,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43438,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:43439,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43446,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:43447,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43448,1
    - Dst: JS_SetObjectData
      Src: /src/gpac/src/quickjs/quickjs.c:43449,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43454
      start: 43417
    functionDepth: 20
    functionLinenumber: 43417
    functionLinenumberEnd: 43454
    functionName: js_number_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_SHORT_BIG_INT
    - JS_VALUE_GET_TAG
    - JS_NewFloat64
    - JS_IsException
    - js_bigint_to_float64
    - JS_FreeValue
    - JS_IsUndefined
    - JS_NewInt64
    - js_create_from_ctor
    - JS_NewInt32
    - JS_SetObjectData
    - JS_ToNumeric
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_number_constructor(JSContext *ctx, JSValueConst new_target,\n
      \                                    int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToIntegerFree
      Src: /src/gpac/src/quickjs/quickjs.c:43460,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43460,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43461
      start: 43457
    functionDepth: 20
    functionLinenumber: 43457
    functionLinenumberEnd: 43461
    functionName: js_number___toInteger
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_ToIntegerFree
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_number___toInteger(JSContext *ctx, JSValueConst this_val,\n
      \                                    int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:43467,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43467,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43469,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43470
      start: 43463
    functionDepth: 22
    functionLinenumber: 43463
    functionLinenumberEnd: 43470
    functionName: js_number___toLength
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_ToLengthFree
    - JS_NewInt64
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_number___toLength(JSContext *ctx, JSValueConst this_val,\n
      \                                   int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsNumber
      Src: /src/gpac/src/quickjs/quickjs.c:43476,1
    - Dst: js_global_isNaN
      Src: /src/gpac/src/quickjs/quickjs.c:43478,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43479
      start: 43473
    functionDepth: 23
    functionLinenumber: 43473
    functionLinenumberEnd: 43479
    functionName: js_number_isNaN
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_global_isNaN
    - JS_IsNumber
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_number_isNaN(JSContext *ctx, JSValueConst this_val,\n                               int
      argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsNumber
      Src: /src/gpac/src/quickjs/quickjs.c:43484,1
    - Dst: js_global_isFinite
      Src: /src/gpac/src/quickjs/quickjs.c:43486,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43487
      start: 43481
    functionDepth: 23
    functionLinenumber: 43481
    functionLinenumberEnd: 43487
    functionName: js_number_isFinite
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_global_isFinite
    - JS_IsNumber
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_number_isFinite(JSContext *ctx, JSValueConst this_val,\n
      \                                 int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NumberIsInteger
      Src: /src/gpac/src/quickjs/quickjs.c:43493,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:43497,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43498
      start: 43489
    functionDepth: 23
    functionLinenumber: 43489
    functionLinenumberEnd: 43498
    functionName: js_number_isInteger
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NumberIsInteger
    - JS_NewBool
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_number_isInteger(JSContext *ctx, JSValueConst this_val,\n
      \                                  int argc, JSValueConst *argv)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsNumber
      Src: /src/gpac/src/quickjs/quickjs.c:43504,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:43506,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:43506,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:43508,1
    - Dst: is_safe_integer
      Src: /src/gpac/src/quickjs/quickjs.c:43508,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43509
      start: 43500
    functionDepth: 22
    functionLinenumber: 43500
    functionLinenumberEnd: 43509
    functionName: js_number_isSafeInteger
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - is_safe_integer
    - JS_IsNumber
    - unlikely
    - JS_NewBool
    - JS_ToFloat64
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_number_isSafeInteger(JSContext *ctx, JSValueConst this_val,\n
      \                                      int argc, JSValueConst *argv)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsNumber
      Src: /src/gpac/src/quickjs/quickjs.c:43533,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43534,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:43536,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:43537,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/quickjs/quickjs.c:43539,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43540,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:43543,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43544
      start: 43531
    functionDepth: 12
    functionLinenumber: 43531
    functionLinenumberEnd: 43544
    functionName: js_thisNumberValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - JS_IsNumber
    - JS_ThrowTypeError
    - JS_VALUE_GET_OBJ
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_thisNumberValue(JSContext *ctx, JSValueConst this_val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_thisNumberValue
      Src: /src/gpac/src/quickjs/quickjs.c:43549,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43550
      start: 43546
    functionDepth: 13
    functionLinenumber: 43546
    functionLinenumberEnd: 43550
    functionName: js_number_valueOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_thisNumberValue
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_number_valueOf(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToInt32Sat
      Src: /src/gpac/src/quickjs/quickjs.c:43555,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:43558,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43562
      start: 43552
    functionDepth: 21
    functionLinenumber: 43552
    functionLinenumberEnd: 43562
    functionName: js_get_radix
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToInt32Sat
    - JS_ThrowRangeError
    linkageType: ''
    returnType: int
    signature: int js_get_radix(JSContext *ctx, JSValueConst val)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: js_thisNumberValue
      Src: /src/gpac/src/quickjs/quickjs.c:43571,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43572,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43574,1
    - Dst: js_get_radix
      Src: /src/gpac/src/quickjs/quickjs.c:43577,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:43581,1
    - Dst: i64toa_radix
      Src: /src/gpac/src/quickjs/quickjs.c:43584,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:43584,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:43585,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:43587,1
    - Dst: js_dtoa2
      Src: /src/gpac/src/quickjs/quickjs.c:43592,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43594,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43596
      start: 43564
    functionDepth: 22
    functionLinenumber: 43564
    functionLinenumberEnd: 43596
    functionName: js_number_toString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_thisNumberValue
    - js_get_radix
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - js_dtoa2
    - JS_IsException
    - JS_ToFloat64Free
    - JS_FreeValue
    - i64toa_radix
    - JS_IsUndefined
    - js_new_string8_len
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_number_toString(JSContext *ctx, JSValueConst this_val,\n
      \                                 int argc, JSValueConst *argv, int magic)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: js_thisNumberValue
      Src: /src/gpac/src/quickjs/quickjs.c:43605,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43606,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:43608,1
    - Dst: JS_ToInt32Sat
      Src: /src/gpac/src/quickjs/quickjs.c:43610,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:43613,1
    - Dst: fabs
      Src: /src/gpac/src/quickjs/quickjs.c:43614,1
    - Dst: js_dtoa2
      Src: /src/gpac/src/quickjs/quickjs.c:43618,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43619
      start: 43598
    functionDepth: 21
    functionLinenumber: 43598
    functionLinenumberEnd: 43619
    functionName: js_number_toFixed
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_thisNumberValue
    - js_dtoa2
    - JS_IsException
    - JS_ToFloat64Free
    - JS_ThrowRangeError
    - fabs
    - JS_ToInt32Sat
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_number_toFixed(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: js_thisNumberValue
      Src: /src/gpac/src/quickjs/quickjs.c:43628,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43629,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:43631,1
    - Dst: JS_ToInt32Sat
      Src: /src/gpac/src/quickjs/quickjs.c:43633,1
    - Dst: isfinite
      Src: /src/gpac/src/quickjs/quickjs.c:43635,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:43636,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:43636,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43638,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:43643,1
    - Dst: js_dtoa2
      Src: /src/gpac/src/quickjs/quickjs.c:43647,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43648
      start: 43621
    functionDepth: 21
    functionLinenumber: 43621
    functionLinenumberEnd: 43648
    functionName: js_number_toExponential
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_thisNumberValue
    - js_dtoa2
    - JS_IsException
    - JS_ToFloat64Free
    - __JS_NewFloat64
    - isfinite
    - JS_ToStringFree
    - JS_IsUndefined
    - JS_ThrowRangeError
    - JS_ToInt32Sat
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_number_toExponential(JSContext *ctx, JSValueConst this_val,\n
      \                                      int argc, JSValueConst *argv)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: js_thisNumberValue
      Src: /src/gpac/src/quickjs/quickjs.c:43657,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43658,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:43660,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43662,1
    - Dst: JS_ToInt32Sat
      Src: /src/gpac/src/quickjs/quickjs.c:43664,1
    - Dst: isfinite
      Src: /src/gpac/src/quickjs/quickjs.c:43666,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:43668,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:43668,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:43671,1
    - Dst: js_dtoa2
      Src: /src/gpac/src/quickjs/quickjs.c:43672,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43673
      start: 43650
    functionDepth: 21
    functionLinenumber: 43650
    functionLinenumberEnd: 43673
    functionName: js_number_toPrecision
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_thisNumberValue
    - js_dtoa2
    - JS_IsException
    - JS_ToFloat64Free
    - __JS_NewFloat64
    - isfinite
    - JS_ToStringFree
    - JS_IsUndefined
    - JS_ThrowRangeError
    - JS_ToInt32Sat
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_number_toPrecision(JSContext *ctx, JSValueConst this_val,\n
      \                                    int argc, JSValueConst *argv)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToCString
      Src: /src/gpac/src/quickjs/quickjs.c:43691,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/quickjs/quickjs.c:43694,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:43695,1
    - Dst: skip_spaces
      Src: /src/gpac/src/quickjs/quickjs.c:43702,1
    - Dst: js_atof
      Src: /src/gpac/src/quickjs/quickjs.c:43704,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:43706,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43708
      start: 43684
    functionDepth: 21
    functionLinenumber: 43684
    functionLinenumberEnd: 43708
    functionName: js_parseInt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - skip_spaces
    - js_atof
    - JS_ToInt32
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_parseInt(JSContext *ctx, JSValueConst this_val,\n                           int
      argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToCString
      Src: /src/gpac/src/quickjs/quickjs.c:43716,1
    - Dst: skip_spaces
      Src: /src/gpac/src/quickjs/quickjs.c:43720,1
    - Dst: js_atof
      Src: /src/gpac/src/quickjs/quickjs.c:43721,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:43722,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43724
      start: 43710
    functionDepth: 17
    functionLinenumber: 43710
    functionLinenumberEnd: 43724
    functionName: js_parseFloat
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - js_atof
    - skip_spaces
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_parseFloat(JSContext *ctx, JSValueConst this_val,\n                             int
      argc, JSValueConst *argv)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:43731,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/quickjs/quickjs.c:43731,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43732,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:43733,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43734,1
    - Dst: JS_SetObjectData
      Src: /src/gpac/src/quickjs/quickjs.c:43735,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43740
      start: 43727
    functionDepth: 10
    functionLinenumber: 43727
    functionLinenumberEnd: 43740
    functionName: js_boolean_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_IsUndefined
    - js_create_from_ctor
    - JS_ToBool
    - JS_NewBool
    - JS_SetObjectData
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_boolean_constructor(JSContext *ctx, JSValueConst new_target,\n
      \                                    int argc, JSValueConst *argv)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:43744,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43745,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:43747,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:43748,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:43750,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:43754,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43755
      start: 43742
    functionDepth: 12
    functionLinenumber: 43742
    functionLinenumberEnd: 43755
    functionName: js_thisBooleanValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeError
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_thisBooleanValue(JSContext *ctx, JSValueConst this_val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_thisBooleanValue
      Src: /src/gpac/src/quickjs/quickjs.c:43760,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43761,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:43763,1
    - Dst: JS_VALUE_GET_BOOL
      Src: /src/gpac/src/quickjs/quickjs.c:43763,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43765
      start: 43757
    functionDepth: 13
    functionLinenumber: 43757
    functionLinenumberEnd: 43765
    functionName: js_boolean_toString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_AtomToString
    - js_thisBooleanValue
    - JS_VALUE_GET_BOOL
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_boolean_toString(JSContext *ctx, JSValueConst this_val,\n
      \                                  int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_thisBooleanValue
      Src: /src/gpac/src/quickjs/quickjs.c:43770,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43771
      start: 43767
    functionDepth: 13
    functionLinenumber: 43767
    functionLinenumberEnd: 43771
    functionName: js_boolean_valueOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_thisBooleanValue
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_boolean_valueOf(JSContext *ctx, JSValueConst this_val,\n
      \                                 int argc, JSValueConst *argv)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:43789,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:43790,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:43791,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:43792,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:43793,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:43796,1
    - Dst: js_new_string_char
      Src: /src/gpac/src/quickjs/quickjs.c:43798,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 4
    argNames:
    - ctx
    - desc
    - obj
    - prop
    argTypes:
    - JSContext*
    - JSPropertyDescriptor*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43807
      start: 43780
    functionDepth: 6
    functionLinenumber: 43780
    functionLinenumberEnd: 43807
    functionName: js_string_get_own_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_TAG
    - __JS_AtomToUInt32
    - js_new_string_char
    - __JS_AtomIsTaggedInt
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_OBJ
    - string_get
    linkageType: ''
    returnType: int
    signature: "int js_string_get_own_property(JSContext *ctx,\n                                      JSPropertyDescriptor
      *desc,\n                                      JSValueConst obj, JSAtom prop)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:43819,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:43820,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:43821,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:43822,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:43824,1
    - Dst: check_define_prop_flags
      Src: /src/gpac/src/quickjs/quickjs.c:43827,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:43831,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:43833,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:43836,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:43836,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:43838,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:43844,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 34
    argCount: 7
    argNames:
    - ctx
    - this_obj
    - prop
    - val
    - getter
    - setter
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSValueConst
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43847
      start: 43809
    functionDepth: 17
    functionLinenumber: 43809
    functionLinenumberEnd: 43847
    functionName: js_string_define_own_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_TAG
    - __JS_AtomToUInt32
    - JS_ThrowTypeErrorOrFalse
    - __JS_AtomIsTaggedInt
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_OBJ
    - JS_DefineProperty
    - check_define_prop_flags
    - string_get
    linkageType: ''
    returnType: int
    signature: "int js_string_define_own_property(JSContext *ctx,\n                                         JSValueConst
      this_obj,\n                                         JSAtom prop, JSValueConst
      val,\n                                         JSValueConst getter,\n                                         JSValueConst
      setter, int flags)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:43854,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:43855,1
    - Dst: js_string_obj_get_length
      Src: /src/gpac/src/quickjs/quickjs.c:43856,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - obj
    - prop
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43861
      start: 43849
    functionDepth: 2
    functionLinenumber: 43849
    functionLinenumberEnd: 43861
    functionName: js_string_delete_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - __JS_AtomIsTaggedInt
    - js_string_obj_get_length
    - __JS_AtomToUInt32
    linkageType: ''
    returnType: int
    signature: "int js_string_delete_property(JSContext *ctx,\n                                     JSValueConst
      obj, JSAtom prop)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:43874,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43876,1
    - Dst: JS_IsSymbol
      Src: /src/gpac/src/quickjs/quickjs.c:43876,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:43877,1
    - Dst: JS_ConcatString3
      Src: /src/gpac/src/quickjs/quickjs.c:43878,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:43878,1
    - Dst: js_get_atom_index
      Src: /src/gpac/src/quickjs/quickjs.c:43878,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:43880,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43882,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43885,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:43886,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:43888,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43889,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43890,1
    - Dst: JS_SetObjectData
      Src: /src/gpac/src/quickjs/quickjs.c:43892,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:43893,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:43893,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43899
      start: 43869
    functionDepth: 19
    functionLinenumber: 43869
    functionLinenumberEnd: 43899
    functionName: js_string_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_PTR
    - js_get_atom_index
    - JS_DefinePropertyValue
    - JS_IsException
    - JS_FreeValue
    - JS_IsSymbol
    - JS_VALUE_GET_STRING
    - JS_IsUndefined
    - js_create_from_ctor
    - JS_NewInt32
    - JS_ConcatString3
    - JS_ToString
    - JS_AtomToString
    - JS_SetObjectData
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_constructor(JSContext *ctx, JSValueConst new_target,\n
      \                                    int argc, JSValueConst *argv)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:43903,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:43904,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43905,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:43907,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:43908,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:43910,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43911,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:43914,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43915
      start: 43901
    functionDepth: 12
    functionLinenumber: 43901
    functionLinenumberEnd: 43915
    functionName: js_thisStringValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeError
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_thisStringValue(JSContext *ctx, JSValueConst this_val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:43923,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/quickjs/quickjs.c:43927,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:43927,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:43928,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:43932,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43933
      start: 43917
    functionDepth: 21
    functionLinenumber: 43917
    functionLinenumberEnd: 43933
    functionName: js_string_fromCharCode
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_end
    - string_buffer_free
    - JS_ToInt32
    - string_buffer_init
    - string_buffer_putc16
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_fromCharCode(JSContext *ctx, JSValueConst this_val,\n
      \                                     int argc, JSValueConst *argv)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:43944,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:43947,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:43948,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:43952,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:43954,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:43957,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:43960,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:43963,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:43965,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 30
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43967
      start: 43935
    functionDepth: 22
    functionLinenumber: 43935
    functionLinenumberEnd: 43967
    functionName: js_string_fromCodePoint
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_end
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - isnan
    - JS_ThrowRangeError
    - string_buffer_free
    - string_buffer_init
    - JS_ToFloat64
    - string_buffer_putc
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_fromCodePoint(JSContext *ctx, JSValueConst this_val,\n
      \                                      int argc, JSValueConst *argv)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:43977,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:43979,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43980,1
    - Dst: JS_ToObjectFree
      Src: /src/gpac/src/quickjs/quickjs.c:43982,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:43982,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43983,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:43985,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:43989,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43989,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43990,1
    - Dst: string_buffer_concat_value_free
      Src: /src/gpac/src/quickjs/quickjs.c:43992,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:43994,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43998,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43999,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:44000,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44003,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44004,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:44005,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 35
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44007
      start: 43969
    functionDepth: 23
    functionLinenumber: 43969
    functionLinenumberEnd: 44007
    functionName: js_string_raw
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToObjectFree
    - string_buffer_end
    - js_get_length64
    - JS_GetPropertyInt64
    - JS_IsException
    - JS_FreeValue
    - string_buffer_concat_value_free
    - JS_ToStringFree
    - string_buffer_free
    - JS_ToObject
    - string_buffer_init
    - string_buffer_concat_value
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_raw(JSContext *ctx, JSValueConst this_val,\n                             int
      argc, JSValueConst *argv)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToUint32
      Src: /src/gpac/src/quickjs/quickjs.c:44016,1
    - Dst: JS_ToUint32
      Src: /src/gpac/src/quickjs/quickjs.c:44017,1
    - Dst: min_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:44019,1
    - Dst: max_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:44026,1
    - Dst: string_buffer_init2
      Src: /src/gpac/src/quickjs/quickjs.c:44028,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:44031,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:44033,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44034
      start: 44010
    functionDepth: 10
    functionLinenumber: 44010
    functionLinenumberEnd: 44034
    functionName: js_string_codePointRange
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_end
    - max_uint32
    - min_uint32
    - string_buffer_putc
    - JS_ToUint32
    - string_buffer_init2
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_codePointRange(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToInt32
      Src: /src/gpac/src/quickjs/quickjs.c:44041,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:44043,1
    - Dst: lre_is_space
      Src: /src/gpac/src/quickjs/quickjs.c:44043,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44044
      start: 44037
    functionDepth: 21
    functionLinenumber: 44037
    functionLinenumberEnd: 44044
    functionName: js_string___isSpace
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - lre_is_space
    - JS_NewBool
    - JS_ToInt32
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string___isSpace(JSContext *ctx, JSValueConst this_val,\n
      \                                  int argc, JSValueConst *argv)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:44054,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44055,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44057,1
    - Dst: JS_ToInt32Sat
      Src: /src/gpac/src/quickjs/quickjs.c:44058,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44059,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:44065,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:44066,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44068,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44070
      start: 44047
    functionDepth: 21
    functionLinenumber: 44047
    functionLinenumberEnd: 44070
    functionName: js_string_charCodeAt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToStringCheckObject
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - string_get
    - JS_NewInt32
    - JS_ToInt32Sat
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_charCodeAt(JSContext *ctx, JSValueConst this_val,\n
      \                                    int argc, JSValueConst *argv)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:44079,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44080,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44082,1
    - Dst: JS_ToInt32Sat
      Src: /src/gpac/src/quickjs/quickjs.c:44083,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44084,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:44093,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:44095,1
    - Dst: js_new_string_char
      Src: /src/gpac/src/quickjs/quickjs.c:44096,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44098,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - is_at
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44100
      start: 44072
    functionDepth: 21
    functionLinenumber: 44072
    functionLinenumberEnd: 44100
    functionName: js_string_charAt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToStringCheckObject
    - js_new_string_char
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - string_get
    - JS_AtomToString
    - JS_ToInt32Sat
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_charAt(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv, int is_at)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:44109,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44110,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44112,1
    - Dst: JS_ToInt32Sat
      Src: /src/gpac/src/quickjs/quickjs.c:44113,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44114,1
    - Dst: string_getc
      Src: /src/gpac/src/quickjs/quickjs.c:44120,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:44121,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44123,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44125
      start: 44102
    functionDepth: 21
    functionLinenumber: 44102
    functionLinenumberEnd: 44125
    functionName: js_string_codePointAt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToStringCheckObject
    - JS_IsException
    - JS_FreeValue
    - string_getc
    - JS_VALUE_GET_STRING
    - JS_NewInt32
    - JS_ToInt32Sat
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_codePointAt(JSContext *ctx, JSValueConst this_val,\n
      \                                    int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:44136,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44138,1
    - Dst: JS_ConcatString
      Src: /src/gpac/src/quickjs/quickjs.c:44140,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:44140,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44143
      start: 44127
    functionDepth: 20
    functionLinenumber: 44127
    functionLinenumberEnd: 44143
    functionName: js_string_concat
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_ToStringCheckObject
    - JS_DupValue
    - JS_ConcatString
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_concat(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:44149,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:44149,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 5
    argNames:
    - p1
    - p2
    - x1
    - x2
    - len
    argTypes:
    - JSString*
    - JSString*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44153
      start: 44145
    functionDepth: 1
    functionLinenumber: 44145
    functionLinenumberEnd: 44153
    functionName: string_cmp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_get
    linkageType: ''
    returnType: int
    signature: int string_cmp(JSString *p1, JSString *p2, int x1, int x2, int len)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 3
    argNames:
    - p
    - c
    - from
    argTypes:
    - JSString*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44173
      start: 44155
    functionDepth: 0
    functionLinenumber: 44155
    functionLinenumberEnd: 44173
    functionName: string_indexof_char
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int string_indexof_char(JSString *p, int c, int from)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:44181,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:44182,1
    - Dst: string_cmp
      Src: /src/gpac/src/quickjs/quickjs.c:44185,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 3
    argNames:
    - p1
    - p2
    - from
    argTypes:
    - JSString*
    - JSString*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44189
      start: 44175
    functionDepth: 2
    functionLinenumber: 44175
    functionLinenumberEnd: 44189
    functionName: string_indexof
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_indexof_char
    - string_cmp
    - string_get
    linkageType: ''
    returnType: int
    signature: int string_indexof(JSString *p1, JSString *p2, int from)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: string_getc
      Src: /src/gpac/src/quickjs/quickjs.c:44197,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - p
    - index
    - unicode
    argTypes:
    - JSString*
    - int64_t
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44201
      start: 44191
    functionDepth: 2
    functionLinenumber: 44191
    functionLinenumberEnd: 44201
    functionName: string_advance_index
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_getc
    linkageType: ''
    returnType: int64_t
    signature: int64_t string_advance_index(JSString *p, int64_t index, BOOL unicode)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: is_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:44212,1
    - Dst: is_hi_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:44213,1
    - Dst: is_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:44214,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 1
    argNames:
    - p
    argTypes:
    - JSString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44222
      start: 44205
    functionDepth: 1
    functionLinenumber: 44205
    functionLinenumberEnd: 44222
    functionName: js_string_find_invalid_codepoint
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - is_lo_surrogate
    - is_hi_surrogate
    - is_surrogate
    linkageType: ''
    returnType: int
    signature: int js_string_find_invalid_codepoint(JSString *p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:44231,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44232,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44234,1
    - Dst: js_string_find_invalid_codepoint
      Src: /src/gpac/src/quickjs/quickjs.c:44235,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44236,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:44237,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44238
      start: 44224
    functionDepth: 20
    functionLinenumber: 44224
    functionLinenumberEnd: 44238
    functionName: js_string_isWellFormed
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToStringCheckObject
    - js_string_find_invalid_codepoint
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - JS_NewBool
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_isWellFormed(JSContext *ctx, JSValueConst this_val,\n
      \                                     int argc, JSValueConst *argv)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:44247,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44248,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44251,1
    - Dst: js_string_find_invalid_codepoint
      Src: /src/gpac/src/quickjs/quickjs.c:44253,1
    - Dst: js_new_string16_len
      Src: /src/gpac/src/quickjs/quickjs.c:44257,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44258,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44259,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44262,1
    - Dst: is_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:44265,1
    - Dst: is_hi_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:44266,1
    - Dst: is_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:44267,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44275
      start: 44240
    functionDepth: 20
    functionLinenumber: 44240
    functionLinenumberEnd: 44275
    functionName: js_string_toWellFormed
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToStringCheckObject
    - js_string_find_invalid_codepoint
    - JS_IsException
    - js_new_string16_len
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - is_lo_surrogate
    - is_surrogate
    - is_hi_surrogate
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_toWellFormed(JSContext *ctx, JSValueConst this_val,\n
      \                                     int argc, JSValueConst *argv)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:44285,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44286,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:44288,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44289,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44291,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44292,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:44299,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:44301,1
    - Dst: JS_ToInt32Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:44314,1
    - Dst: string_cmp
      Src: /src/gpac/src/quickjs/quickjs.c:44324,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44332,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44333,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:44334,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44337,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44338,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 58
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - lastIndexOf
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44340
      start: 44277
    functionDepth: 22
    functionLinenumber: 44277
    functionLinenumberEnd: 44340
    functionName: js_string_indexOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToStringCheckObject
    - JS_IsException
    - JS_ToInt32Clamp
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - isnan
    - JS_ToFloat64
    - string_cmp
    - JS_ToString
    - JS_NewInt32
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_indexOf(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv, int lastIndexOf)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:44353,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44354,1
    - Dst: js_is_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:44356,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:44359,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:44362,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44363,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44365,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44366,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44370,1
    - Dst: JS_ToInt32Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:44371,1
    - Dst: string_cmp
      Src: /src/gpac/src/quickjs/quickjs.c:44390,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44399,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44400,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:44401,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44404,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44405,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 60
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44407
      start: 44345
    functionDepth: 21
    functionLinenumber: 44345
    functionLinenumberEnd: 44407
    functionName: js_string_includes
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToStringCheckObject
    - JS_ThrowTypeError
    - JS_IsException
    - JS_ToInt32Clamp
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - JS_IsUndefined
    - JS_NewBool
    - string_cmp
    - js_is_regexp
    - JS_ToString
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_includes(JSContext *ctx, JSValueConst this_val,\n
      \                                 int argc, JSValueConst *argv, int magic)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: js_is_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:44414,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44418,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44419,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44421,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:44421,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:44422,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:44425,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44426,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:44428,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44428,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44429,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:44431,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - ctx
    - regexp
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44436
      start: 44409
    functionDepth: 20
    functionLinenumber: 44409
    functionLinenumberEnd: 44436
    functionName: check_regexp_g_flag
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_indexof_char
    - JS_IsNull
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - JS_ToStringFree
    - JS_IsUndefined
    - js_is_regexp
    - JS_GetProperty
    linkageType: ''
    returnType: int
    signature: int check_regexp_g_flag(JSContext *ctx, JSValueConst regexp)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44447,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:44447,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:44448,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44450,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:44450,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44451,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44452,1
    - Dst: check_regexp_g_flag
      Src: /src/gpac/src/quickjs/quickjs.c:44455,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44456,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44460,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:44460,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:44461,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:44464,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44465,1
    - Dst: js_new_string8
      Src: /src/gpac/src/quickjs/quickjs.c:44471,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44472,1
    - Dst: JS_CallConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:44481,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44482,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44483,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44485,1
    - Dst: JS_InvokeFree
      Src: /src/gpac/src/quickjs/quickjs.c:44488,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44489,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 42
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - atom
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44491
      start: 44438
    functionDepth: 25
    functionLinenumber: 44438
    functionLinenumberEnd: 44491
    functionName: js_string_match
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsNull
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_InvokeFree
    - JS_IsUndefined
    - JS_CallFree
    - js_new_string8
    - check_regexp_g_flag
    - JS_CallConstructor
    - JS_ToString
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_match(JSContext *ctx, JSValueConst this_val,\n                               int
      argc, JSValueConst *argv, int atom)"
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:44511,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:44511,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:44512,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44514,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44515,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:44517,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44520,1
    - Dst: js_get_length32
      Src: /src/gpac/src/quickjs/quickjs.c:44521,1
    - Dst: js_get_length32
      Src: /src/gpac/src/quickjs/quickjs.c:44524,1
    - Dst: JS_ToUint32
      Src: /src/gpac/src/quickjs/quickjs.c:44526,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:44532,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:44535,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:44537,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:44539,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:44541,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:44544,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:44546,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:44550,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:44563,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44564,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44566,1
    - Dst: string_buffer_concat_value_free
      Src: /src/gpac/src/quickjs/quickjs.c:44567,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44573,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:44574,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:44577,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44578,1
    - Dst: JS_GetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:44580,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44581,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44583,1
    - Dst: string_buffer_concat_value_free
      Src: /src/gpac/src/quickjs/quickjs.c:44584,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:44590,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:44594,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:44595,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:44597,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 105
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44599
      start: 44493
    functionDepth: 22
    functionLinenumber: 44493
    functionLinenumberEnd: 44599
    functionName: js_string___GetSubstitution
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_indexof_char
    - JS_GetPropertyInt64
    - string_buffer_free
    - string_buffer_init
    - JS_GetPropertyValue
    - JS_IsString
    - string_buffer_concat
    - JS_IsUndefined
    - string_get
    - string_buffer_concat_value
    - JS_VALUE_GET_STRING
    - string_buffer_putc8
    - JS_ToUint32
    - js_sub_string
    - string_buffer_end
    - JS_ThrowTypeError
    - JS_IsException
    - string_buffer_concat_value_free
    - js_get_length32
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string___GetSubstitution(JSContext *ctx, JSValueConst this_val,\n
      \                                          int argc, JSValueConst *argv)"
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44614,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:44614,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:44615,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44621,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:44621,1
    - Dst: check_regexp_g_flag
      Src: /src/gpac/src/quickjs/quickjs.c:44624,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44627,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44628,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44630,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:44630,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:44633,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:44636,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:44638,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44639,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:44641,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44642,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:44644,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:44646,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44647,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44651,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44652,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:44656,1
    - Dst: string_indexof
      Src: /src/gpac/src/quickjs/quickjs.c:44664,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:44668,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44669,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44670,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:44678,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:44680,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:44680,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:44684,1
    - Dst: js_string___GetSubstitution
      Src: /src/gpac/src/quickjs/quickjs.c:44688,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44690,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:44693,1
    - Dst: string_buffer_concat_value_free
      Src: /src/gpac/src/quickjs/quickjs.c:44694,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:44700,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44701,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44702,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44703,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:44704,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:44707,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44708,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44709,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44710,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 96
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - is_replaceAll
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44712
      start: 44601
    functionDepth: 23
    functionLinenumber: 44601
    functionLinenumberEnd: 44712
    functionName: js_string_replace
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_string___GetSubstitution
    - string_buffer_free
    - string_buffer_init
    - JS_ToString
    - string_indexof
    - string_buffer_concat
    - unlikely
    - JS_ToStringFree
    - JS_IsUndefined
    - check_regexp_g_flag
    - JS_NewInt32
    - JS_GetProperty
    - JS_IsNull
    - JS_IsFunction
    - JS_VALUE_GET_STRING
    - JS_CallFree
    - string_buffer_end
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_Call
    - string_buffer_concat_value_free
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_replace(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv,\n                                 int
      is_replaceAll)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44725,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:44725,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:44726,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44732,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:44732,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44734,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44735,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44737,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:44737,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:44740,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:44743,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44744,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:44746,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44747,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44750,1
    - Dst: JS_ToUint32
      Src: /src/gpac/src/quickjs/quickjs.c:44753,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44756,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:44758,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44759,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44761,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44766,1
    - Dst: string_indexof
      Src: /src/gpac/src/quickjs/quickjs.c:44775,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:44778,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44779,1
    - Dst: JS_CreateDataPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:44781,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:44787,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44788,1
    - Dst: JS_CreateDataPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:44790,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44793,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44794,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44798,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44799,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44800,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 90
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44802
      start: 44714
    functionDepth: 23
    functionLinenumber: 44714
    functionLinenumberEnd: 44802
    functionName: js_string_split
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToUint32
    - js_sub_string
    - JS_IsNull
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - JS_IsUndefined
    - JS_CallFree
    - JS_CreateDataPropertyUint32
    - JS_ToString
    - string_indexof
    - JS_NewArray
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_split(JSContext *ctx, JSValueConst this_val,\n                               int
      argc, JSValueConst *argv)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:44811,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44812,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44814,1
    - Dst: JS_ToInt32Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:44815,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44816,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44820,1
    - Dst: JS_ToInt32Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:44821,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44822,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:44833,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44834,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44836
      start: 44804
    functionDepth: 21
    functionLinenumber: 44804
    functionLinenumberEnd: 44836
    functionName: js_string_substring
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_sub_string
    - JS_ToStringCheckObject
    - JS_IsException
    - JS_ToInt32Clamp
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - JS_IsUndefined
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_substring(JSContext *ctx, JSValueConst this_val,\n
      \                                  int argc, JSValueConst *argv)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:44845,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44846,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44848,1
    - Dst: JS_ToInt32Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:44850,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44851,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44855,1
    - Dst: JS_ToInt32Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:44856,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44857,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:44861,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44862,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44864
      start: 44838
    functionDepth: 21
    functionLinenumber: 44838
    functionLinenumberEnd: 44864
    functionName: js_string_substr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_sub_string
    - JS_ToStringCheckObject
    - JS_IsException
    - JS_ToInt32Clamp
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - JS_IsUndefined
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_substr(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:44873,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44874,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44876,1
    - Dst: JS_ToInt32Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:44878,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44879,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44883,1
    - Dst: JS_ToInt32Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:44884,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44885,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:44889,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:44889,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44890,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44892
      start: 44866
    functionDepth: 21
    functionLinenumber: 44866
    functionLinenumberEnd: 44892
    functionName: js_string_slice
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_sub_string
    - JS_ToStringCheckObject
    - JS_IsException
    - JS_ToInt32Clamp
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - JS_IsUndefined
    - max_int
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_slice(JSContext *ctx, JSValueConst this_val,\n                               int
      argc, JSValueConst *argv)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:44902,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44903,1
    - Dst: JS_ToInt32Sat
      Src: /src/gpac/src/quickjs/quickjs.c:44905,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44907,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44911,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:44912,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44913,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44915,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44917,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:44921,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:44926,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:44929,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:44933,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:44938,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:44939,1
    - Dst: string_buffer_fill
      Src: /src/gpac/src/quickjs/quickjs.c:44944,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:44948,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44951,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44952,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:44953,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:44956,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44958,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44960,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 73
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - padEnd
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44963
      start: 44894
    functionDepth: 21
    functionLinenumber: 44894
    functionLinenumberEnd: 44963
    functionName: js_string_pad
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToStringCheckObject
    - string_buffer_concat
    - string_buffer_end
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - JS_ThrowRangeError
    - JS_IsUndefined
    - string_buffer_free
    - string_buffer_init
    - string_get
    - JS_ToString
    - JS_ToInt32Sat
    - min_int
    - string_buffer_fill
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_pad(JSContext *ctx, JSValueConst this_val,\n                             int
      argc, JSValueConst *argv, int padEnd)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:44974,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44975,1
    - Dst: JS_ToInt64Sat
      Src: /src/gpac/src/quickjs/quickjs.c:44977,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:44980,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:44984,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:44990,1
    - Dst: string_buffer_init2
      Src: /src/gpac/src/quickjs/quickjs.c:44993,1
    - Dst: string_buffer_fill
      Src: /src/gpac/src/quickjs/quickjs.c:44996,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:44996,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:44999,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45002,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:45003,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45006,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 39
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45008
      start: 44965
    functionDepth: 21
    functionLinenumber: 44965
    functionLinenumberEnd: 45008
    functionName: js_string_repeat
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToStringCheckObject
    - string_buffer_concat
    - string_buffer_end
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - JS_ThrowRangeError
    - string_get
    - JS_ToInt64Sat
    - string_buffer_fill
    - string_buffer_init2
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_repeat(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:45017,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45018,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45020,1
    - Dst: lre_is_space
      Src: /src/gpac/src/quickjs/quickjs.c:45024,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:45024,1
    - Dst: lre_is_space
      Src: /src/gpac/src/quickjs/quickjs.c:45028,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:45028,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:45031,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45032,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45034
      start: 45010
    functionDepth: 20
    functionLinenumber: 45010
    functionLinenumberEnd: 45034
    functionName: js_string_trim
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - lre_is_space
    - JS_ToStringCheckObject
    - js_sub_string
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - string_get
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_trim(JSContext *ctx, JSValueConst this_val,\n                              int
      argc, JSValueConst *argv, int magic)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: is_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:45047,1
    - Dst: is_hi_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:45049,1
    - Dst: from_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:45050,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - p
    - pidx
    argTypes:
    - JSString*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45059
      start: 45037
    functionDepth: 1
    functionLinenumber: 45037
    functionLinenumberEnd: 45059
    functionName: string_prevc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - is_lo_surrogate
    - is_hi_surrogate
    - from_surrogate
    linkageType: ''
    returnType: int
    signature: int string_prevc(JSString *p, int *pidx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: string_prevc
      Src: /src/gpac/src/quickjs/quickjs.c:45069,1
    - Dst: lre_is_case_ignorable
      Src: /src/gpac/src/quickjs/quickjs.c:45070,1
    - Dst: lre_is_cased
      Src: /src/gpac/src/quickjs/quickjs.c:45073,1
    - Dst: string_getc
      Src: /src/gpac/src/quickjs/quickjs.c:45082,1
    - Dst: lre_is_case_ignorable
      Src: /src/gpac/src/quickjs/quickjs.c:45083,1
    - Dst: lre_is_cased
      Src: /src/gpac/src/quickjs/quickjs.c:45086,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 2
    argNames:
    - p
    - sigma_pos
    argTypes:
    - JSString*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45087
      start: 45061
    functionDepth: 4
    functionLinenumber: 45061
    functionLinenumberEnd: 45087
    functionName: test_final_sigma
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - lre_is_case_ignorable
    - string_getc
    - string_prevc
    - lre_is_cased
    linkageType: ''
    returnType: BOOL
    signature: BOOL test_final_sigma(JSString *p, int sigma_pos)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:45098,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45099,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45101,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:45104,1
    - Dst: string_getc
      Src: /src/gpac/src/quickjs/quickjs.c:45107,1
    - Dst: test_final_sigma
      Src: /src/gpac/src/quickjs/quickjs.c:45108,1
    - Dst: lre_case_conv
      Src: /src/gpac/src/quickjs/quickjs.c:45112,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:45115,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45119,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:45120,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45122,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:45123,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - to_lower
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45125
      start: 45089
    functionDepth: 20
    functionLinenumber: 45089
    functionLinenumberEnd: 45125
    functionName: js_string_toLowerCase
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToStringCheckObject
    - string_buffer_end
    - JS_IsException
    - string_getc
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - test_final_sigma
    - lre_case_conv
    - string_buffer_free
    - string_buffer_init
    - string_buffer_putc
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_toLowerCase(JSContext *ctx, JSValueConst this_val,\n
      \                                    int argc, JSValueConst *argv, int to_lower)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:45137,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45138,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45140,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:45143,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:45143,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45145,1
    - Dst: string_getc
      Src: /src/gpac/src/quickjs/quickjs.c:45149,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45150,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 3
    argNames:
    - ctx
    - pbuf
    - val1
    argTypes:
    - JSContext*
    - uint32_t**
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45156
      start: 45130
    functionDepth: 19
    functionLinenumber: 45130
    functionLinenumberEnd: 45156
    functionName: JS_ToUTF32String
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - js_malloc
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - max_int
    - string_getc
    - JS_ToString
    linkageType: ''
    returnType: int
    signature: int JS_ToUTF32String(JSContext *ctx, uint32_t **pbuf, JSValueConst
      val1)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:45162,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:45165,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:45168,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:45170,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - ctx
    - buf
    - len
    argTypes:
    - JSContext*
    - uint32_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45172
      start: 45158
    functionDepth: 10
    functionLinenumber: 45158
    functionLinenumberEnd: 45172
    functionName: JS_NewUTF32String
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_putc
    - string_buffer_end
    - string_buffer_init
    - string_buffer_free
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_NewUTF32String(JSContext *ctx, const uint32_t *buf, int
      len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToUTF32String
      Src: /src/gpac/src/quickjs/quickjs.c:45181,1
    - Dst: unicode_normalize
      Src: /src/gpac/src/quickjs/quickjs.c:45184,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:45186,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - pout_buf
    - val
    - n_type
    argTypes:
    - JSContext*
    - uint32_t**
    - JSValueConst
    - UnicodeNormalizationEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45191
      start: 45174
    functionDepth: 20
    functionLinenumber: 45174
    functionLinenumberEnd: 45191
    functionName: js_string_normalize1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free
    - JS_ToUTF32String
    - unicode_normalize
    linkageType: ''
    returnType: int
    signature: "int js_string_normalize1(JSContext *ctx, uint32_t **pout_buf,\n                                JSValueConst
      val,\n                                UnicodeNormalizationEnum n_type)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:45203,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45204,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:45207,1
    - Dst: JS_ToCStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:45210,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:45228,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:45229,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45231,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:45234,1
    - Dst: js_string_normalize1
      Src: /src/gpac/src/quickjs/quickjs.c:45237,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45238,1
    - Dst: JS_NewUTF32String
      Src: /src/gpac/src/quickjs/quickjs.c:45241,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:45242,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 45
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45244
      start: 45193
    functionDepth: 21
    functionLinenumber: 45193
    functionLinenumberEnd: 45244
    functionName: js_string_normalize
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToStringCheckObject
    - JS_NewUTF32String
    - JS_IsException
    - JS_FreeValue
    - JS_ThrowRangeError
    - JS_IsUndefined
    - JS_ToCStringLen
    - js_string_normalize1
    - JS_FreeCString
    - js_free
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_normalize(JSContext *ctx, JSValueConst this_val,\n
      \                                  int argc, JSValueConst *argv)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:45251,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 4
    argNames:
    - buf1
    - buf1_len
    - buf2
    - buf2_len
    argTypes:
    - uint32_t*
    - int
    - uint32_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45265
      start: 45247
    functionDepth: 1
    functionLinenumber: 45247
    functionLinenumberEnd: 45265
    functionName: js_UTF32_compare
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - min_int
    linkageType: ''
    returnType: int
    signature: "int js_UTF32_compare(const uint32_t *buf1, int buf1_len,\n                            const
      uint32_t *buf2, int buf2_len)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:45274,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45275,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:45277,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45278,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45279,1
    - Dst: js_string_normalize1
      Src: /src/gpac/src/quickjs/quickjs.c:45282,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45283,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45285,1
    - Dst: js_string_normalize1
      Src: /src/gpac/src/quickjs/quickjs.c:45289,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45290,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:45292,1
    - Dst: js_UTF32_compare
      Src: /src/gpac/src/quickjs/quickjs.c:45295,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:45296,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:45297,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:45298,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45299
      start: 45267
    functionDepth: 21
    functionLinenumber: 45267
    functionLinenumberEnd: 45299
    functionName: js_string_localeCompare
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToStringCheckObject
    - JS_IsException
    - JS_FreeValue
    - js_UTF32_compare
    - js_string_normalize1
    - JS_ToString
    - JS_NewInt32
    - js_free
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_localeCompare(JSContext *ctx, JSValueConst this_val,\n
      \                                      int argc, JSValueConst *argv)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:45307,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45308,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:45310,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45311,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45312,1
    - Dst: js_string_compare
      Src: /src/gpac/src/quickjs/quickjs.c:45315,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45315,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45315,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45316,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45317,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:45318,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45319
      start: 45301
    functionDepth: 20
    functionLinenumber: 45301
    functionLinenumberEnd: 45319
    functionName: js_string_localeCompare
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToStringCheckObject
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - JS_ToString
    - JS_NewInt32
    - js_string_compare
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_localeCompare(JSContext *ctx, JSValueConst this_val,\n
      \                                      int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_thisStringValue
      Src: /src/gpac/src/quickjs/quickjs.c:45326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45327
      start: 45323
    functionDepth: 13
    functionLinenumber: 45323
    functionLinenumberEnd: 45327
    functionName: js_string_toString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_thisStringValue
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_toString(JSContext *ctx, JSValueConst this_val,\n
      \                                 int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:45333,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45334
      start: 45330
    functionDepth: 20
    functionLinenumber: 45330
    functionLinenumberEnd: 45334
    functionName: js_string___toStringCheckObject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToStringCheckObject
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string___toStringCheckObject(JSContext *ctx, JSValueConst
      this_val,\n                                               int argc, JSValueConst
      *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:45339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45340
      start: 45336
    functionDepth: 19
    functionLinenumber: 45336
    functionLinenumberEnd: 45340
    functionName: js_string___toString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToString
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string___toString(JSContext *ctx, JSValueConst this_val,\n
      \                                   int argc, JSValueConst *argv)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:45351,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45352,1
    - Dst: JS_ToInt32Sat
      Src: /src/gpac/src/quickjs/quickjs.c:45354,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45355,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/quickjs/quickjs.c:45358,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45359,1
    - Dst: string_getc
      Src: /src/gpac/src/quickjs/quickjs.c:45363,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45365,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:45366,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45367
      start: 45342
    functionDepth: 21
    functionLinenumber: 45342
    functionLinenumberEnd: 45367
    functionName: js_string___advanceStringIndex
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_FreeValue
    - string_getc
    - JS_VALUE_GET_STRING
    - JS_ToBool
    - JS_ToString
    - JS_NewInt32
    - JS_ToInt32Sat
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string___advanceStringIndex(JSContext *ctx, JSValueConst\n
      \                                             this_val,\n                                              int
      argc, JSValueConst *argv)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:45380,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:45385,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45387,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45390,1
    - Dst: string_getc
      Src: /src/gpac/src/quickjs/quickjs.c:45398,1
    - Dst: js_new_string_char
      Src: /src/gpac/src/quickjs/quickjs.c:45402,1
    - Dst: js_new_string16_len
      Src: /src/gpac/src/quickjs/quickjs.c:45404,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - pdone
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - BOOL*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45406
      start: 45372
    functionDepth: 6
    functionLinenumber: 45372
    functionLinenumberEnd: 45406
    functionName: js_string_iterator_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - js_new_string16_len
    - JS_FreeValue
    - string_getc
    - JS_VALUE_GET_STRING
    - JS_IsUndefined
    - js_new_string_char
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_iterator_next(JSContext *ctx, JSValueConst this_val,\n
      \                                      int argc, JSValueConst *argv,\n                                       BOOL
      *pdone, int magic)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:45438,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45439,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:45441,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:45442,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:45443,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:45449,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:45450,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:45451,1
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:45452,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45453,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45454,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:45455,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45458,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:45460,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:45462,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:45464,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45467,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:45468,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:45471,1
    - Dst: string_buffer_concat_value_free
      Src: /src/gpac/src/quickjs/quickjs.c:45472,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:45473,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:45474,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:45475,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:45476,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45477
      start: 45425
    functionDepth: 20
    functionLinenumber: 45425
    functionLinenumberEnd: 45477
    functionName: js_string_CreateHTML
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToStringCheckObject
    - string_buffer_puts8
    - string_buffer_end
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - string_buffer_concat_value_free
    - string_buffer_free
    - string_buffer_init
    - string_get
    - string_buffer_putc16
    - string_buffer_putc8
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_CreateHTML(JSContext *ctx, JSValueConst this_val,\n
      \                                   int argc, JSValueConst *argv, int magic)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/quickjs/quickjs.c:45558,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:45559,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45560
      start: 45556
    functionDepth: 20
    functionLinenumber: 45556
    functionLinenumberEnd: 45560
    functionName: JS_AddIntrinsicStringNormalize
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_SetPropertyFunctionList
    - countof
    linkageType: ''
    returnType: int
    signature: int JS_AddIntrinsicStringNormalize(JSContext *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fmin
      Src: /src/gpac/src/quickjs/quickjs.c:45574,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - double
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45576
      start: 45565
    functionDepth: 0
    functionLinenumber: 45565
    functionLinenumberEnd: 45576
    functionName: js_fmin
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - fmin
    linkageType: ''
    returnType: double
    signature: double js_fmin(double a, double b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fmax
      Src: /src/gpac/src/quickjs/quickjs.c:45588,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - double
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45590
      start: 45579
    functionDepth: 0
    functionLinenumber: 45579
    functionLinenumberEnd: 45590
    functionName: js_fmax
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - fmax
    linkageType: ''
    returnType: double
    signature: double js_fmax(double a, double b)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:45600,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:45603,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:45605,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:45609,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:45611,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:45613,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:45618,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:45620,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:45622,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:45625,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:45627,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:45632,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:45634,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:45635,1
    - Dst: js_fmax
      Src: /src/gpac/src/quickjs/quickjs.c:45639,1
    - Dst: js_fmin
      Src: /src/gpac/src/quickjs/quickjs.c:45641,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:45646,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 42
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45648
      start: 45592
    functionDepth: 22
    functionLinenumber: 45592
    functionLinenumberEnd: 45648
    functionName: js_math_min_max
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_TAG
    - JS_NewFloat64
    - js_fmin
    - __JS_NewFloat64
    - unlikely
    - isnan
    - JS_ToFloat64
    - max_int
    - JS_NewInt32
    - js_fmax
    - min_int
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_math_min_max(JSContext *ctx, JSValueConst this_val,\n                               int
      argc, JSValueConst *argv, int magic)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:45652,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - a
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45658
      start: 45650
    functionDepth: 0
    functionLinenumber: 45650
    functionLinenumberEnd: 45658
    functionName: js_math_sign
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - isnan
    linkageType: ''
    returnType: double
    signature: double js_math_sign(double a)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - a
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45686
      start: 45660
    functionDepth: 0
    functionLinenumber: 45660
    functionLinenumberEnd: 45686
    functionName: js_math_round
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: double
    signature: double js_math_round(double a)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:45696,1
    - Dst: fabs
      Src: /src/gpac/src/quickjs/quickjs.c:45699,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:45703,1
    - Dst: hypot
      Src: /src/gpac/src/quickjs/quickjs.c:45705,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:45709,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45710
      start: 45688
    functionDepth: 22
    functionLinenumber: 45688
    functionLinenumberEnd: 45710
    functionName: js_math_hypot
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - hypot
    - JS_ToFloat64
    - fabs
    - JS_NewFloat64
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_math_hypot(JSContext *ctx, JSValueConst this_val,\n                             int
      argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fromfp16
      Src: /src/gpac/src/quickjs/quickjs.c:45714,1
    - Dst: tofp16
      Src: /src/gpac/src/quickjs/quickjs.c:45714,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45715
      start: 45712
    functionDepth: 1
    functionLinenumber: 45712
    functionLinenumberEnd: 45715
    functionName: js_math_f16round
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - fromfp16
    - tofp16
    linkageType: ''
    returnType: double
    signature: double js_math_f16round(double a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45720
      start: 45717
    functionDepth: 0
    functionLinenumber: 45717
    functionLinenumberEnd: 45720
    functionName: js_math_fround
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: double
    signature: double js_math_fround(double a)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToUint32
      Src: /src/gpac/src/quickjs/quickjs.c:45728,1
    - Dst: JS_ToUint32
      Src: /src/gpac/src/quickjs/quickjs.c:45730,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:45733,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:45734,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45735
      start: 45722
    functionDepth: 1
    functionLinenumber: 45722
    functionLinenumberEnd: 45735
    functionName: js_math_imul
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memcpy
    - JS_NewInt32
    - JS_ToUint32
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_math_imul(JSContext *ctx, JSValueConst this_val,\n                            int
      argc, JSValueConst *argv)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToUint32
      Src: /src/gpac/src/quickjs/quickjs.c:45742,1
    - Dst: clz32
      Src: /src/gpac/src/quickjs/quickjs.c:45747,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:45748,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45749
      start: 45737
    functionDepth: 1
    functionLinenumber: 45737
    functionLinenumberEnd: 45749
    functionName: js_math_clz32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - clz32
    - JS_NewInt32
    - JS_ToUint32
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_math_clz32(JSContext *ctx, JSValueConst this_val,\n                             int
      argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:45776,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - SumPreciseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45780
      start: 45774
    functionDepth: 0
    functionLinenumber: 45774
    functionLinenumberEnd: 45780
    functionName: sum_precise_init
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: void sum_precise_init(SumPreciseState *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - s
    argTypes:
    - SumPreciseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45797
      start: 45782
    functionDepth: 0
    functionLinenumber: 45782
    functionLinenumberEnd: 45797
    functionName: sum_precise_renorm
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void sum_precise_renorm(SumPreciseState *s)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: float64_as_uint64
      Src: /src/gpac/src/quickjs/quickjs.c:45805,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:45809,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:45824,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:45853,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:45855,1
    - Dst: sum_precise_renorm
      Src: /src/gpac/src/quickjs/quickjs.c:45857,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 48
    argCount: 2
    argNames:
    - s
    - d
    argTypes:
    - SumPreciseState*
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45860
      start: 45799
    functionDepth: 1
    functionLinenumber: 45799
    functionLinenumberEnd: 45860
    functionName: sum_precise_add
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - unlikely
    - likely
    - sum_precise_renorm
    - float64_as_uint64
    - max_int
    linkageType: ''
    returnType: void
    signature: void sum_precise_add(SumPreciseState *s, double d)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: sum_precise_renorm
      Src: /src/gpac/src/quickjs/quickjs.c:45879,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:45885,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:45887,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:45888,1
    - Dst: uint64_as_float64
      Src: /src/gpac/src/quickjs/quickjs.c:45920,1
    - Dst: clz64
      Src: /src/gpac/src/quickjs/quickjs.c:45925,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:45954,1
    - Dst: uint64_as_float64
      Src: /src/gpac/src/quickjs/quickjs.c:45956,1
    - Dst: uint64_as_float64
      Src: /src/gpac/src/quickjs/quickjs.c:45959,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 72
    argCount: 1
    argNames:
    - s
    argTypes:
    - SumPreciseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45961
      start: 45862
    functionDepth: 1
    functionLinenumber: 45862
    functionLinenumberEnd: 45961
    functionName: sum_precise_get_result
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - clz64
    - unlikely
    - sum_precise_renorm
    - uint64_as_float64
    linkageType: ''
    returnType: double
    signature: double sum_precise_get_result(SumPreciseState *s)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetIterator
      Src: /src/gpac/src/quickjs/quickjs.c:45972,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45973,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:45976,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45977,1
    - Dst: sum_precise_init
      Src: /src/gpac/src/quickjs/quickjs.c:45979,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:45981,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45982,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:45986,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:45987,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:45988,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:45990,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45992,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:45993,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:45994,1
    - Dst: sum_precise_add
      Src: /src/gpac/src/quickjs/quickjs.c:45997,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:45999,1
    - Dst: sum_precise_get_result
      Src: /src/gpac/src/quickjs/quickjs.c:45999,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46001,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46002,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 38
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46004
      start: 45963
    functionDepth: 15
    functionLinenumber: 45963
    functionLinenumberEnd: 46004
    functionName: js_math_sumPrecise
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_TAG_IS_FLOAT64
    - sum_precise_get_result
    - JS_IteratorNext
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_INT
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - __JS_NewFloat64
    - sum_precise_add
    - JS_GetIterator
    - JS_VALUE_GET_FLOAT64
    - JS_IteratorClose
    - JS_GetProperty
    - sum_precise_init
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_math_sumPrecise(JSContext *ctx, JSValueConst this_val,\n
      \                                 int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - pstate
    argTypes:
    - uint64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46016
      start: 46007
    functionDepth: 0
    functionLinenumber: 46007
    functionLinenumberEnd: 46016
    functionName: xorshift64star
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint64_t
    signature: uint64_t xorshift64star(uint64_t *pstate)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _ftime
      Src: /src/gpac/src/quickjs/quickjs.c:46027,1
    - Dst: gettimeofday
      Src: /src/gpac/src/quickjs/quickjs.c:46031,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46038
      start: 46023
    functionDepth: 1
    functionLinenumber: 46023
    functionLinenumberEnd: 46038
    functionName: js_random_init
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - gettimeofday
    - _ftime
    linkageType: ''
    returnType: void
    signature: void js_random_init(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xorshift64star
      Src: /src/gpac/src/quickjs/quickjs.c:46046,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:46049,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46050
      start: 46040
    functionDepth: 1
    functionLinenumber: 46040
    functionLinenumberEnd: 46050
    functionName: js_math_random
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - __JS_NewFloat64
    - xorshift64star
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_math_random(JSContext *ctx, JSValueConst this_val,\n                              int
      argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floor
      Src: /src/gpac/src/quickjs/quickjs.c:46053,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46053
      start: 46053
    functionDepth: 0
    functionLinenumber: 46053
    functionLinenumberEnd: 46053
    functionName: const_floor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - floor
    linkageType: ''
    returnType: double
    signature: double const_floor(double x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ceil
      Src: /src/gpac/src/quickjs/quickjs.c:46054,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46054
      start: 46054
    functionDepth: 0
    functionLinenumber: 46054
    functionLinenumberEnd: 46054
    functionName: const_ceil
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - ceil
    linkageType: ''
    returnType: double
    signature: double const_ceil(double x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: log2
      Src: /src/gpac/src/quickjs/quickjs.c:46055,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46055
      start: 46055
    functionDepth: 0
    functionLinenumber: 46055
    functionLinenumberEnd: 46055
    functionName: const_log2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - log2
    linkageType: ''
    returnType: double
    signature: double const_log2(double x)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gmtime
      Src: /src/gpac/src/quickjs/quickjs.c:46158,1
    - Dst: mktime
      Src: /src/gpac/src/quickjs/quickjs.c:46161,1
    - Dst: localtime
      Src: /src/gpac/src/quickjs/quickjs.c:46163,1
    - Dst: mktime
      Src: /src/gpac/src/quickjs/quickjs.c:46166,1
    - Dst: localtime_r
      Src: /src/gpac/src/quickjs/quickjs.c:46173,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 1
    argNames:
    - time
    argTypes:
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46178
      start: 46126
    functionDepth: 0
    functionLinenumber: 46126
    functionLinenumberEnd: 46178
    functionName: getTimezoneOffset
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - mktime
    - gmtime
    - localtime_r
    - localtime
    linkageType: ''
    returnType: int
    signature: int getTimezoneOffset(int64_t time)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:46186,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:46188,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:46189,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:46191,1
    - Dst: getTimezoneOffset
      Src: /src/gpac/src/quickjs/quickjs.c:46191,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46192
      start: 46181
    functionDepth: 22
    functionLinenumber: 46181
    functionLinenumberEnd: 46192
    functionName: js___date_getTimezoneOffset
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - getTimezoneOffset
    - __JS_NewFloat64
    - isnan
    - JS_ToFloat64
    - JS_NewInt32
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js___date_getTimezoneOffset(JSContext *ctx, JSValueConst this_val,\n
      \                                          int argc, JSValueConst *argv)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:46198,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46199,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:46201,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46202,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:46203,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - ctor
    - def_proto
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46206
      start: 46194
    functionDepth: 1
    functionLinenumber: 46194
    functionLinenumberEnd: 46206
    functionName: js_get_prototype_from_ctor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_IsException
    - JS_FreeValue
    - JS_IsObject
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_get_prototype_from_ctor(JSContext *ctx, JSValueConst ctor,\n
      \                                         JSValueConst def_proto)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_get_prototype_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:46213,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46214,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:46216,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46217,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46218,1
    - Dst: JS_SetObjectData
      Src: /src/gpac/src/quickjs/quickjs.c:46219,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:46219,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46221
      start: 46209
    functionDepth: 9
    functionLinenumber: 46209
    functionLinenumberEnd: 46221
    functionName: js___date_create
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_IsException
    - JS_FreeValue
    - JS_NewObjectProtoClass
    - js_get_prototype_from_ctor
    - JS_SetObjectData
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js___date_create(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:46228,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:46231,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:46231,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:46233,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:46233,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46234
      start: 46226
    functionDepth: 1
    functionLinenumber: 46226
    functionLinenumberEnd: 46234
    functionName: js_regexp_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - JS_VALUE_GET_OBJ
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void js_regexp_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46249,1
    - Dst: JS_ToCStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:46250,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:46285,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:46290,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:46296,1
    - Dst: JS_ToCStringLen2
      Src: /src/gpac/src/quickjs/quickjs.c:46299,1
    - Dst: lre_compile
      Src: /src/gpac/src/quickjs/quickjs.c:46302,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:46304,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:46306,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:46310,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:46311,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 64
    argCount: 3
    argNames:
    - ctx
    - pattern
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46313
      start: 46237
    functionDepth: 12
    functionLinenumber: 46237
    functionLinenumberEnd: 46313
    functionName: js_compile_regexp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowSyntaxError
    - JS_IsUndefined
    - JS_ToCStringLen
    - js_new_string8_len
    - JS_ToCStringLen2
    - lre_compile
    - JS_FreeCString
    - js_free
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_compile_regexp(JSContext *ctx, JSValueConst pattern,\n
      \                                JSValueConst flags)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:46324,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:46324,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:46325,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:46326,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46327,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46328,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46329,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:46333,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46335,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46336,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:46338,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:46338,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - obj
    - pattern
    - bc
    argTypes:
    - JSContext*
    - JSValue
    - JSValue
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46341
      start: 46316
    functionDepth: 18
    functionLinenumber: 46316
    functionLinenumberEnd: 46341
    functionName: js_regexp_set_internal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeError
    - JS_DefinePropertyValue
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_NewInt32
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_regexp_set_internal(JSContext *ctx,\n                                      JSValue
      obj,\n                                      JSValue pattern, JSValue bc)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:46345,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:46346,1
    - Dst: JS_ThrowTypeErrorInvalidClass
      Src: /src/gpac/src/quickjs/quickjs.c:46351,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - obj
    - throw_error
    argTypes:
    - JSContext*
    - JSValueConst
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46354
      start: 46343
    functionDepth: 2
    functionLinenumber: 46343
    functionLinenumberEnd: 46354
    functionName: js_get_regexp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeErrorInvalidClass
    linkageType: ''
    returnType: JSRegExp
    signature: JSRegExp *js_get_regexp(JSContext *ctx, JSValueConst obj, BOOL throw_error)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:46361,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:46363,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46364,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46366,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:46367,1
    - Dst: js_get_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:46368,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46369
      start: 46357
    functionDepth: 3
    functionLinenumber: 46357
    functionLinenumberEnd: 46369
    functionName: js_is_regexp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_ToBoolFree
    - js_get_regexp
    - JS_IsException
    - JS_IsUndefined
    - JS_IsObject
    - JS_GetProperty
    linkageType: ''
    returnType: int
    signature: int js_is_regexp(JSContext *ctx, JSValueConst obj)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: js_is_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:46381,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46384,1
    - Dst: JS_GetActiveFunction
      Src: /src/gpac/src/quickjs/quickjs.c:46386,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46387,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:46390,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46391,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:46393,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46394,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:46396,1
    - Dst: js_get_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:46399,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:46402,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:46402,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46403,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:46404,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:46404,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:46405,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46406,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:46410,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:46414,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46415,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46417,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:46418,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46419,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:46422,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:46425,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:46426,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46428,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:46429,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:46432,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46433,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46434,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:46438,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46439,1
    - Dst: js_compile_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:46441,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46442,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46444,1
    - Dst: js_regexp_set_internal
      Src: /src/gpac/src/quickjs/quickjs.c:46446,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46448,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46449,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46450,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 80
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46452
      start: 46371
    functionDepth: 19
    functionLinenumber: 46371
    functionLinenumberEnd: 46452
    functionName: js_regexp_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - js_regexp_set_internal
    - JS_GetActiveFunction
    - js_same_value
    - js_get_regexp
    - JS_IsException
    - JS_FreeValue
    - JS_MKPTR
    - JS_IsUndefined
    - js_create_from_ctor
    - js_compile_regexp
    - js_is_regexp
    - JS_ToString
    - JS_AtomToString
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_regexp_constructor(JSContext *ctx, JSValueConst new_target,\n
      \                                    int argc, JSValueConst *argv)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: js_get_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:46461,1
    - Dst: js_get_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:46466,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46468,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:46469,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:46470,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:46470,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:46471,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:46471,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46474,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:46475,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:46477,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46478,1
    - Dst: js_compile_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:46480,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46481,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46484,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:46484,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46485,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:46485,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46486,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46487,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:46488,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:46489,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:46491,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46493,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46494,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46496
      start: 46454
    functionDepth: 19
    functionLinenumber: 46454
    functionLinenumberEnd: 46496
    functionName: js_regexp_compile
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - js_get_regexp
    - JS_ThrowTypeError
    - JS_MKPTR
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - JS_IsUndefined
    - js_compile_regexp
    - JS_NewInt32
    - JS_ToString
    - JS_AtomToString
    - JS_SetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_regexp_compile(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_get_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:46501,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:46504,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:46504,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46505
      start: 46499
    functionDepth: 3
    functionLinenumber: 46499
    functionLinenumberEnd: 46505
    functionName: js_regexp_get___source
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - JS_DupValue
    - js_get_regexp
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_regexp_get___source(JSContext *ctx, JSValueConst this_val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_get_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:46509,1
    - Dst: lre_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:46514,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:46515,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46516
      start: 46507
    functionDepth: 3
    functionLinenumber: 46507
    functionLinenumberEnd: 46516
    functionName: js_regexp_get___flags
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - lre_get_flags
    - JS_NewInt32
    - js_get_regexp
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_regexp_get___flags(JSContext *ctx, JSValueConst this_val)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:46526,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:46527,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:46529,1
    - Dst: js_get_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:46532,1
    - Dst: js_new_string8
      Src: /src/gpac/src/quickjs/quickjs.c:46540,1
    - Dst: string_buffer_init2
      Src: /src/gpac/src/quickjs/quickjs.c:46542,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:46548,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:46551,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:46558,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:46559,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:46578,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:46580,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:46582,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 54
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46583
      start: 46519
    functionDepth: 13
    functionLinenumber: 46519
    functionLinenumberEnd: 46583
    functionName: js_regexp_get_source
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - string_buffer_end
    - js_same_value
    - JS_VALUE_GET_TAG
    - js_get_regexp
    - js_new_string8
    - string_get
    - string_buffer_putc16
    - string_buffer_init2
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_regexp_get_source(JSContext *ctx, JSValueConst this_val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:46590,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:46591,1
    - Dst: js_get_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:46593,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:46595,1
    - Dst: JS_ThrowTypeErrorInvalidClass
      Src: /src/gpac/src/quickjs/quickjs.c:46598,1
    - Dst: lre_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:46601,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:46602,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - ctx
    - this_val
    - mask
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46603
      start: 46585
    functionDepth: 13
    functionLinenumber: 46585
    functionLinenumberEnd: 46603
    functionName: js_regexp_get_flag
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - js_same_value
    - JS_VALUE_GET_TAG
    - js_get_regexp
    - JS_ThrowTypeErrorInvalidClass
    - lre_get_flags
    - JS_NewBool
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_regexp_get_flag(JSContext *ctx, JSValueConst this_val, int
      mask)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:46623,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:46624,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:46627,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:46627,1
    - Dst: JS_NewStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:46633,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46637
      start: 46607
    functionDepth: 13
    functionLinenumber: 46607
    functionLinenumberEnd: 46637
    functionName: js_regexp_get_flags
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_ToBoolFree
    - JS_VALUE_GET_TAG
    - JS_NewStringLen
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_regexp_get_flags(JSContext *ctx, JSValueConst this_val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:46645,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:46646,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:46648,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:46649,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:46650,1
    - Dst: string_buffer_concat_value_free
      Src: /src/gpac/src/quickjs/quickjs.c:46651,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:46653,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:46654,1
    - Dst: string_buffer_concat_value_free
      Src: /src/gpac/src/quickjs/quickjs.c:46655,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:46657,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:46660,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46662
      start: 46639
    functionDepth: 13
    functionLinenumber: 46639
    functionLinenumberEnd: 46662
    functionName: js_regexp_toString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - string_buffer_end
    - string_buffer_concat_value_free
    - string_buffer_free
    - string_buffer_init
    - JS_IsObject
    - string_buffer_putc8
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_regexp_toString(JSContext *ctx, JSValueConst this_val,\n
      \                                 int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:46667,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - opaque
    - alloca_size
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46668
      start: 46664
    functionDepth: 1
    functionLinenumber: 46664
    functionLinenumberEnd: 46668
    functionName: lre_check_stack_overflow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_check_stack_overflow
    linkageType: ''
    returnType: int
    signature: int lre_check_stack_overflow(void *opaque, size_t alloca_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSRuntime*::interrupt_handler
      Src: /src/gpac/src/quickjs/quickjs.c:46675,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - opaque
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46676
      start: 46670
    functionDepth: 1
    functionLinenumber: 46670
    functionLinenumberEnd: 46676
    functionName: lre_check_timeout
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JSRuntime*::interrupt_handler
    linkageType: ''
    returnType: int
    signature: int lre_check_timeout(void *opaque)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_realloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:46682,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - opaque
    - ptr
    - size
    argTypes:
    - void*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46683
      start: 46678
    functionDepth: 2
    functionLinenumber: 46678
    functionLinenumberEnd: 46683
    functionName: lre_realloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_realloc_rt
    linkageType: ''
    returnType: void
    signature: void *lre_realloc(void *opaque, void *ptr, size_t size)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:46694,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:46695,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:46696,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46697,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46699,1
    - Dst: string_buffer_init2
      Src: /src/gpac/src/quickjs/quickjs.c:46700,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:46702,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:46705,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:46706,1
    - Dst: strchr
      Src: /src/gpac/src/quickjs/quickjs.c:46716,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:46719,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:46721,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:46724,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:46725,1
    - Dst: is_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:46726,1
    - Dst: lre_is_space
      Src: /src/gpac/src/quickjs/quickjs.c:46726,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:46727,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:46728,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:46730,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46733,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:46734,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 49
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46735
      start: 46685
    functionDepth: 19
    functionLinenumber: 46685
    functionLinenumberEnd: 46735
    functionName: js_regexp_escape
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - lre_is_space
    - JS_IsString
    - string_buffer_puts8
    - string_buffer_end
    - snprintf
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - is_surrogate
    - string_get
    - JS_ToString
    - string_buffer_putc16
    - strchr
    - string_buffer_putc8
    - string_buffer_init2
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_regexp_escape(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv)"
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: js_get_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:46740,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:46753,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46754,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:46764,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46765,1
    - Dst: JS_ToLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:46765,1
    - Dst: lre_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:46769,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46773,1
    - Dst: lre_get_capture_count
      Src: /src/gpac/src/quickjs/quickjs.c:46774,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:46776,1
    - Dst: lre_exec
      Src: /src/gpac/src/quickjs/quickjs.c:46785,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:46792,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:46793,1
    - Dst: JS_ThrowInterrupted
      Src: /src/gpac/src/quickjs/quickjs.c:46798,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:46800,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:46807,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:46808,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:46811,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46812,1
    - Dst: lre_get_groupnames
      Src: /src/gpac/src/quickjs/quickjs.c:46815,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:46817,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46818,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:46822,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46823,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:46826,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46827,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:46841,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46849,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:46852,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46853,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:46855,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:46856,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46858,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:46861,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:46862,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46864,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46868,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:46869,1
    - Dst: JS_DefinePropertyValueStr
      Src: /src/gpac/src/quickjs/quickjs.c:46870,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46872,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:46876,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:46884,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46885,1
    - Dst: JS_DefinePropertyValueStr
      Src: /src/gpac/src/quickjs/quickjs.c:46890,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:46891,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46893,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:46898,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:46902,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:46903,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:46908,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:46913,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46918,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:46921,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:46927,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46936,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46937,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46938,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46939,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46940,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:46941,1
    CyclomaticComplexity: 71
    EdgeCount: 71
    ICount: 182
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46943
      start: 46737
    functionDepth: 22
    functionLinenumber: 46737
    functionLinenumberEnd: 46943
    functionName: js_regexp_exec
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - lre_exec
    - js_get_regexp
    - lre_get_groupnames
    - JS_ToLengthFree
    - JS_ToString
    - JS_NewArray
    - JS_DupValue
    - js_malloc
    - JS_DefinePropertyValueUint32
    - JS_IsUndefined
    - JS_NewInt32
    - JS_GetProperty
    - js_free
    - JS_DefinePropertyValue
    - JS_VALUE_GET_STRING
    - lre_get_capture_count
    - JS_NewObjectProto
    - strlen
    - JS_ThrowInternalError
    - js_sub_string
    - JS_DefinePropertyValueStr
    - JS_IsException
    - JS_FreeValue
    - lre_get_flags
    - JS_ThrowInterrupted
    - JS_SetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_regexp_exec(JSContext *ctx, JSValueConst this_val,\n                              int
      argc, JSValueConst *argv)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: js_get_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:46948,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:46962,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:46965,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46966,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46968,1
    - Dst: lre_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:46970,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:46974,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46975,1
    - Dst: JS_ToLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:46975,1
    - Dst: lre_get_capture_count
      Src: /src/gpac/src/quickjs/quickjs.c:46978,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:46980,1
    - Dst: lre_exec
      Src: /src/gpac/src/quickjs/quickjs.c:46991,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:46996,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:46997,1
    - Dst: JS_ThrowInterrupted
      Src: /src/gpac/src/quickjs/quickjs.c:47002,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:47004,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:47014,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47019,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:47020,1
    - Dst: string_getc
      Src: /src/gpac/src/quickjs/quickjs.c:47028,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:47033,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47035,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:47036,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:47037,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47039,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:47040,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:47041,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 88
    argCount: 3
    argNames:
    - ctx
    - this_val
    - arg
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47043
      start: 46946
    functionDepth: 22
    functionLinenumber: 46946
    functionLinenumberEnd: 47043
    functionName: JS_RegExpDelete
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - lre_exec
    - js_get_regexp
    - string_getc
    - JS_ToLengthFree
    - string_buffer_free
    - string_buffer_init
    - JS_ToString
    - string_buffer_concat
    - js_malloc
    - JS_NewInt32
    - JS_GetProperty
    - js_free
    - JS_VALUE_GET_STRING
    - lre_get_capture_count
    - JS_ThrowInternalError
    - string_buffer_end
    - JS_IsException
    - JS_FreeValue
    - lre_get_flags
    - JS_ThrowInterrupted
    - JS_SetProperty
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_RegExpDelete(JSContext *ctx, JSValueConst this_val, JSValueConst
      arg)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47049,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47050,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:47052,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:47053,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47054,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:47056,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:47056,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47057,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:47058,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47062,1
    - Dst: js_regexp_exec
      Src: /src/gpac/src/quickjs/quickjs.c:47063,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - r
    - s
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47064
      start: 47045
    functionDepth: 23
    functionLinenumber: 47045
    functionLinenumberEnd: 47064
    functionName: JS_RegExpExec
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsNull
    - JS_IsFunction
    - JS_IsException
    - JS_FreeValue
    - JS_ThrowTypeError
    - js_regexp_exec
    - JS_CallFree
    - JS_IsObject
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_RegExpExec(JSContext *ctx, JSValueConst r, JSValueConst
      s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_RegExpExec
      Src: /src/gpac/src/quickjs/quickjs.c:47070,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47071
      start: 47067
    functionDepth: 24
    functionLinenumber: 47067
    functionLinenumberEnd: 47071
    functionName: js_regexp___RegExpExec
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_RegExpExec
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_regexp___RegExpExec(JSContext *ctx, JSValueConst this_val,\n
      \                                     int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_RegExpDelete
      Src: /src/gpac/src/quickjs/quickjs.c:47075,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47076
      start: 47072
    functionDepth: 23
    functionLinenumber: 47072
    functionLinenumberEnd: 47076
    functionName: js_regexp___RegExpDelete
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_RegExpDelete
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_regexp___RegExpDelete(JSContext *ctx, JSValueConst this_val,\n
      \                                       int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_RegExpExec
      Src: /src/gpac/src/quickjs/quickjs.c:47085,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47086,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:47088,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47089,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:47090,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47091
      start: 47079
    functionDepth: 24
    functionLinenumber: 47079
    functionLinenumberEnd: 47091
    functionName: js_regexp_test
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_RegExpExec
    - JS_IsNull
    - JS_IsException
    - JS_FreeValue
    - JS_NewBool
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_regexp_test(JSContext *ctx, JSValueConst this_val,\n                              int
      argc, JSValueConst *argv)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:47102,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:47103,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:47109,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47110,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47113,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47114,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:47116,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47117,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:47119,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:47121,1
    - Dst: JS_RegExpExec
      Src: /src/gpac/src/quickjs/quickjs.c:47123,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:47125,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:47126,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47128,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:47128,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:47130,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47131,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47135,1
    - Dst: JS_RegExpExec
      Src: /src/gpac/src/quickjs/quickjs.c:47136,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47137,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:47139,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:47141,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:47141,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47142,1
    - Dst: JS_IsEmptyString
      Src: /src/gpac/src/quickjs/quickjs.c:47144,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:47145,1
    - Dst: JS_ToLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:47149,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47150,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:47152,1
    - Dst: string_advance_index
      Src: /src/gpac/src/quickjs/quickjs.c:47153,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47154,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:47154,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47159,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47163,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47164,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47165,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47169,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47170,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47171,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47172,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 76
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47174
      start: 47093
    functionDepth: 24
    functionLinenumber: 47093
    functionLinenumberEnd: 47174
    functionName: js_regexp_Symbol_match
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_RegExpExec
    - string_indexof_char
    - JS_GetPropertyInt64
    - JS_ToLengthFree
    - JS_NewInt64
    - JS_ToString
    - JS_NewArray
    - JS_ThrowTypeErrorNotAnObject
    - JS_ToStringFree
    - JS_NewInt32
    - JS_IsObject
    - JS_GetProperty
    - JS_IsNull
    - JS_DefinePropertyValueInt64
    - JS_VALUE_GET_STRING
    - JS_IsEmptyString
    - string_advance_index
    - JS_IsException
    - JS_FreeValue
    - JS_SetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_regexp_Symbol_match(JSContext *ctx, JSValueConst this_val,\n
      \                                     int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:47186,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:47189,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:47190,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:47191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47193
      start: 47184
    functionDepth: 2
    functionLinenumber: 47184
    functionLinenumberEnd: 47193
    functionName: js_regexp_string_iterator_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - JS_VALUE_GET_OBJ
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void js_regexp_string_iterator_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:47198,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:47201,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:47202,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47204
      start: 47195
    functionDepth: 2
    functionLinenumber: 47195
    functionLinenumberEnd: 47204
    functionName: js_regexp_string_iterator_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: "void js_regexp_string_iterator_mark(JSRuntime *rt, JSValueConst val,\n
      \                                          JS_MarkFunc *mark_func)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:47216,1
    - Dst: JS_RegExpExec
      Src: /src/gpac/src/quickjs/quickjs.c:47225,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47226,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:47228,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:47233,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:47233,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47234,1
    - Dst: JS_IsEmptyString
      Src: /src/gpac/src/quickjs/quickjs.c:47236,1
    - Dst: JS_ToLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:47238,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47239,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:47241,1
    - Dst: string_advance_index
      Src: /src/gpac/src/quickjs/quickjs.c:47242,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47243,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:47244,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47247,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47254,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47255,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 47
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - pdone
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - BOOL*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47258
      start: 47206
    functionDepth: 24
    functionLinenumber: 47206
    functionLinenumberEnd: 47258
    functionName: js_regexp_string_iterator_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - JS_RegExpExec
    - string_advance_index
    - JS_GetPropertyInt64
    - JS_IsNull
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - JS_ToStringFree
    - JS_ToLengthFree
    - JS_NewInt64
    - JS_SetProperty
    - JS_IsEmptyString
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_regexp_string_iterator_next(JSContext *ctx,\n                                              JSValueConst
      this_val,\n                                              int argc, JSValueConst
      *argv,\n                                              BOOL *pdone, int magic)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:47271,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:47272,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:47279,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47280,1
    - Dst: JS_SpeciesConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:47282,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47283,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:47285,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47285,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47286,1
    - Dst: JS_CallConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:47290,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47291,1
    - Dst: JS_ToLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:47293,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47294,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47296,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:47297,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:47300,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47301,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:47303,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:47308,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:47309,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:47310,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:47311,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:47313,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47315,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47316,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47319,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47320,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47321,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47322,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47323,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 57
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47325
      start: 47260
    functionDepth: 24
    functionLinenumber: 47260
    functionLinenumberEnd: 47325
    functionName: js_regexp_Symbol_matchAll
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_NewObjectClass
    - string_indexof_char
    - JS_IsException
    - js_malloc
    - JS_SetOpaque
    - JS_VALUE_GET_STRING
    - JS_FreeValue
    - JS_ToStringFree
    - JS_ToLengthFree
    - JS_NewInt64
    - JS_CallConstructor
    - JS_SpeciesConstructor
    - JS_ToString
    - JS_IsObject
    - JS_SetProperty
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_regexp_Symbol_matchAll(JSContext *ctx, JSValueConst this_val,\n
      \                                        int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - b
    argTypes:
    - JSContext*
    - ValueBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47344
      start: 47336
    functionDepth: 0
    functionLinenumber: 47336
    functionLinenumberEnd: 47344
    functionName: value_buffer_init
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int value_buffer_init(JSContext *ctx, ValueBuffer *b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47349,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:47351,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - b
    argTypes:
    - ValueBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47354
      start: 47346
    functionDepth: 3
    functionLinenumber: 47346
    functionLinenumberEnd: 47354
    functionName: value_buffer_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - js_free
    linkageType: ''
    returnType: void
    signature: void value_buffer_free(ValueBuffer *b)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: js_realloc2
      Src: /src/gpac/src/quickjs/quickjs.c:47367,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:47369,1
    - Dst: js_realloc2
      Src: /src/gpac/src/quickjs/quickjs.c:47371,1
    - Dst: value_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:47374,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47375,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - b
    - val
    argTypes:
    - ValueBuffer*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47385
      start: 47356
    functionDepth: 4
    functionLinenumber: 47356
    functionLinenumberEnd: 47385
    functionName: value_buffer_append
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - memcpy
    - js_realloc2
    - value_buffer_free
    linkageType: ''
    returnType: int
    signature: int value_buffer_append(ValueBuffer *b, JSValue val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47392,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47393,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:47396,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47397,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47399,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47400,1
    - Dst: JS_IsCFunction
      Src: /src/gpac/src/quickjs/quickjs.c:47403,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47404,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - ctx
    - rx
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47407
      start: 47387
    functionDepth: 5
    functionLinenumber: 47387
    functionLinenumberEnd: 47407
    functionName: js_is_standard_regexp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_same_value
    - JS_IsException
    - JS_FreeValue
    - JS_IsCFunction
    - JS_GetProperty
    linkageType: ''
    returnType: int
    signature: int js_is_standard_regexp(JSContext *ctx, JSValueConst rx)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:47423,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:47424,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:47426,1
    - Dst: value_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:47427,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:47436,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47437,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:47440,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:47442,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:47444,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47445,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:47447,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47450,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47451,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:47453,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47454,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:47456,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:47459,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:47461,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:47462,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47463,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:47463,1
    - Dst: js_is_standard_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:47467,1
    - Dst: JS_RegExpDelete
      Src: /src/gpac/src/quickjs/quickjs.c:47469,1
    - Dst: JS_RegExpExec
      Src: /src/gpac/src/quickjs/quickjs.c:47474,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47475,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:47477,1
    - Dst: value_buffer_append
      Src: /src/gpac/src/quickjs/quickjs.c:47479,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47483,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:47484,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:47484,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47485,1
    - Dst: JS_IsEmptyString
      Src: /src/gpac/src/quickjs/quickjs.c:47487,1
    - Dst: JS_ToLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:47490,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47490,1
    - Dst: string_advance_index
      Src: /src/gpac/src/quickjs/quickjs.c:47492,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47493,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:47493,1
    - Dst: js_get_length32
      Src: /src/gpac/src/quickjs/quickjs.c:47501,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47503,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:47504,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:47504,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47505,1
    - Dst: JS_ToLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:47507,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47507,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47515,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:47516,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47517,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:47519,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:47519,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:47524,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47525,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:47527,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:47528,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47529,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:47532,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47536,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47537,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47538,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:47541,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:47541,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:47543,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:47543,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:47545,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:47546,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:47546,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47551,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:47552,1
    - Dst: js_function_apply
      Src: /src/gpac/src/quickjs/quickjs.c:47552,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:47555,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:47556,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47557,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:47564,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47568,1
    - Dst: js_string___GetSubstitution
      Src: /src/gpac/src/quickjs/quickjs.c:47569,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47570,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47572,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:47575,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:47576,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:47577,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:47580,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:47581,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:47587,1
    - Dst: value_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:47589,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47590,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47591,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47592,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47593,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47594,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47595,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47596,1
    CyclomaticComplexity: 73
    EdgeCount: 73
    ICount: 185
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47598
      start: 47409
    functionDepth: 25
    functionLinenumber: 47409
    functionLinenumberEnd: 47598
    functionName: js_regexp_Symbol_replace
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_get_length32
    - JS_RegExpExec
    - string_indexof_char
    - JS_GetPropertyInt64
    - value_buffer_append
    - js_is_standard_regexp
    - JS_RegExpDelete
    - js_string___GetSubstitution
    - JS_ToLengthFree
    - JS_NewInt64
    - string_buffer_free
    - string_buffer_init
    - JS_ToString
    - JS_NewArray
    - JS_ThrowTypeErrorNotAnObject
    - JS_DupValue
    - string_buffer_concat
    - js_function_apply
    - JS_ToStringFree
    - JS_IsUndefined
    - string_buffer_concat_value
    - JS_NewInt32
    - JS_IsObject
    - value_buffer_free
    - JS_GetProperty
    - value_buffer_init
    - JS_IsNull
    - JS_IsFunction
    - JS_DefinePropertyValueInt64
    - JS_VALUE_GET_STRING
    - JS_ToObject
    - JS_IsEmptyString
    - string_buffer_end
    - string_advance_index
    - JS_IsException
    - JS_FreeValue
    - JS_SetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_regexp_Symbol_replace(JSContext *ctx, JSValueConst this_val,\n
      \                                       int argc, JSValueConst *argv)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:47606,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:47607,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:47612,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47613,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47616,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47617,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:47620,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:47620,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47621,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:47621,1
    - Dst: JS_RegExpExec
      Src: /src/gpac/src/quickjs/quickjs.c:47625,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47626,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47628,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47629,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:47631,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47632,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47634,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47639,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47640,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:47642,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:47643,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47645,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47646,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47651,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47652,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47653,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47654,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 53
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47656
      start: 47600
    functionDepth: 24
    functionLinenumber: 47600
    functionLinenumberEnd: 47656
    functionName: js_regexp_Symbol_search
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_RegExpExec
    - js_same_value
    - JS_IsNull
    - JS_IsException
    - JS_FreeValue
    - JS_ToString
    - JS_NewInt32
    - JS_IsObject
    - JS_SetProperty
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_regexp_Symbol_search(JSContext *ctx, JSValueConst this_val,\n
      \                                      int argc, JSValueConst *argv)"
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:47670,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:47671,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:47678,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47679,1
    - Dst: JS_SpeciesConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:47681,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47682,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:47684,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47684,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47685,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:47687,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:47688,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:47689,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:47690,1
    - Dst: JS_ConcatString3
      Src: /src/gpac/src/quickjs/quickjs.c:47691,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47692,1
    - Dst: JS_CallConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:47697,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47698,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:47700,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47701,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:47704,1
    - Dst: JS_ToUint32
      Src: /src/gpac/src/quickjs/quickjs.c:47707,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:47712,1
    - Dst: JS_RegExpExec
      Src: /src/gpac/src/quickjs/quickjs.c:47716,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47717,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:47719,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47724,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:47724,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47726,1
    - Dst: JS_RegExpExec
      Src: /src/gpac/src/quickjs/quickjs.c:47727,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47728,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:47730,1
    - Dst: string_advance_index
      Src: /src/gpac/src/quickjs/quickjs.c:47731,1
    - Dst: JS_ToLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:47733,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47733,1
    - Dst: string_advance_index
      Src: /src/gpac/src/quickjs/quickjs.c:47738,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:47740,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47741,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:47743,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:47749,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:47752,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47753,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:47755,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:47767,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47768,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:47770,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47774,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47777,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47778,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47779,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47780,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47781,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 138
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47783
      start: 47658
    functionDepth: 24
    functionLinenumber: 47658
    functionLinenumberEnd: 47783
    functionName: js_regexp_Symbol_split
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_RegExpExec
    - string_indexof_char
    - JS_GetPropertyInt64
    - JS_ToLengthFree
    - JS_CallConstructor
    - JS_ToString
    - JS_NewArray
    - JS_ThrowTypeErrorNotAnObject
    - JS_ToStringFree
    - JS_IsUndefined
    - JS_SpeciesConstructor
    - JS_NewInt32
    - JS_IsObject
    - JS_GetProperty
    - js_get_length64
    - JS_IsNull
    - JS_DefinePropertyValueInt64
    - JS_VALUE_GET_STRING
    - JS_ConcatString3
    - JS_ToUint32
    - js_sub_string
    - string_advance_index
    - JS_IsException
    - JS_FreeValue
    - JS_SetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_regexp_Symbol_split(JSContext *ctx, JSValueConst this_val,\n
      \                                      int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47824
      start: 47821
    functionDepth: 0
    functionLinenumber: 47821
    functionLinenumberEnd: 47824
    functionName: JS_AddIntrinsicRegExpCompiler
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void JS_AddIntrinsicRegExpCompiler(JSContext *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_AddIntrinsicRegExpCompiler
      Src: /src/gpac/src/quickjs/quickjs.c:47830,1
    - Dst: JS_NewCConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:47832,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:47835,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:47836,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47838,1
    - Dst: JS_NewObjectProtoList
      Src: /src/gpac/src/quickjs/quickjs.c:47843,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:47845,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47846,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47849
      start: 47826
    functionDepth: 21
    functionLinenumber: 47826
    functionLinenumberEnd: 47849
    functionName: JS_AddIntrinsicRegExp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_NewObjectProtoList
    - JS_AddIntrinsicRegExpCompiler
    - JS_IsException
    - countof
    - JS_NewCConstructor
    linkageType: ''
    returnType: int
    signature: int JS_AddIntrinsicRegExp(JSContext *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:47857,1
    - Dst: json_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:47859,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - tok
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47860
      start: 47853
    functionDepth: 14
    functionLinenumber: 47853
    functionLinenumberEnd: 47860
    functionName: json_parse_expect
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_error
    - json_next_token
    linkageType: ''
    returnType: int
    signature: int json_parse_expect(JSParseState *s, int tok)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: json_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:47874,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:47876,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47877,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:47882,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:47886,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:47888,1
    - Dst: json_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:47891,1
    - Dst: json_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:47893,1
    - Dst: json_parse_value
      Src: /src/gpac/src/quickjs/quickjs.c:47895,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47896,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:47898,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:47901,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:47903,1
    - Dst: json_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:47909,1
    - Dst: json_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:47915,1
    - Dst: json_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:47924,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:47926,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47927,1
    - Dst: json_parse_value
      Src: /src/gpac/src/quickjs/quickjs.c:47932,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47933,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:47935,1
    - Dst: json_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:47940,1
    - Dst: json_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:47947,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:47952,1
    - Dst: json_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:47953,1
    - Dst: json_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:47958,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:47964,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:47970,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:47972,1
    - Dst: json_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:47976,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:47982,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:47984,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47991,1
    CyclomaticComplexity: 70
    EdgeCount: 70
    ICount: 140
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47993
      start: 47862
    functionDepth: 20
    functionLinenumber: 47862
    functionLinenumberEnd: 47993
    functionName: json_parse_value
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_DupValue
    - JS_FreeAtom
    - JS_NewFloat64
    - json_parse_value
    - JS_IsException
    - js_parse_error
    - JS_DefinePropertyValue
    - JS_FreeValue
    - json_parse_expect
    - json_next_token
    - JS_ValueToAtom
    - JS_DupAtom
    - JS_NewBool
    - JS_NewObject
    - JS_DefinePropertyValueUint32
    - JS_NewArray
    linkageType: ''
    returnType: JSValue
    signature: JSValue json_parse_value(JSParseState *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_init
      Src: /src/gpac/src/quickjs/quickjs.c:48001,1
    - Dst: json_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:48003,1
    - Dst: json_parse_value
      Src: /src/gpac/src/quickjs/quickjs.c:48005,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48006,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:48009,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48014,1
    - Dst: free_token
      Src: /src/gpac/src/quickjs/quickjs.c:48015,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 5
    argNames:
    - ctx
    - buf
    - buf_len
    - filename
    - flags
    argTypes:
    - JSContext*
    - char*
    - size_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48017
      start: 47995
    functionDepth: 21
    functionLinenumber: 47995
    functionLinenumberEnd: 48017
    functionName: JS_ParseJSON2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - free_token
    - js_parse_init
    - json_parse_value
    - JS_IsException
    - js_parse_error
    - JS_FreeValue
    - json_next_token
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_ParseJSON2(JSContext *ctx, const char *buf, size_t buf_len,\n
      \                     const char *filename, int flags)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ParseJSON2
      Src: /src/gpac/src/quickjs/quickjs.c:48022,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - buf
    - buf_len
    - filename
    argTypes:
    - JSContext*
    - char*
    - size_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48023
      start: 48019
    functionDepth: 22
    functionLinenumber: 48019
    functionLinenumberEnd: 48023
    functionName: JS_ParseJSON
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ParseJSON2
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_ParseJSON(JSContext *ctx, const char *buf, size_t buf_len,\n
      \                    const char *filename)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:48035,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:48036,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48039,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48040,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:48042,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/quickjs/quickjs.c:48043,1
    - Dst: js_get_length32
      Src: /src/gpac/src/quickjs/quickjs.c:48047,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:48050,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:48050,1
    - Dst: JS_NewAtomUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:48056,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:48060,1
    - Dst: internalize_json_property
      Src: /src/gpac/src/quickjs/quickjs.c:48062,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48063,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:48064,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:48067,1
    - Dst: JS_DeleteProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48068,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:48070,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:48072,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:48077,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:48079,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48080,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:48084,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48085,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48086,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:48089,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48090,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 65
    argCount: 4
    argNames:
    - ctx
    - holder
    - name
    - reviver
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48092
      start: 48025
    functionDepth: 23
    functionLinenumber: 48025
    functionLinenumberEnd: 48092
    functionName: internalize_json_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_FreeAtom
    - JS_DeleteProperty
    - internalize_json_property
    - JS_IsUndefined
    - JS_NewAtomUInt32
    - JS_ThrowStackOverflow
    - JS_IsObject
    - JS_AtomToValue
    - JS_GetProperty
    - JS_FreePropertyEnum
    - JS_DefinePropertyValue
    - JS_DupAtom
    - JS_GetOwnPropertyNamesInternal
    - js_check_stack_overflow
    - JS_IsArray
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - js_get_length32
    linkageType: ''
    returnType: JSValue
    signature: "JSValue internalize_json_property(JSContext *ctx, JSValueConst holder,\n
      \                                        JSAtom name, JSValueConst reviver)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToCStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:48102,1
    - Dst: JS_ParseJSON
      Src: /src/gpac/src/quickjs/quickjs.c:48105,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:48106,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48107,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:48109,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:48111,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48112,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48113,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:48116,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48118,1
    - Dst: internalize_json_property
      Src: /src/gpac/src/quickjs/quickjs.c:48121,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48123,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48126
      start: 48094
    functionDepth: 24
    functionLinenumber: 48094
    functionLinenumberEnd: 48126
    functionName: js_json_parse
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ParseJSON
    - JS_IsFunction
    - JS_IsException
    - JS_FreeValue
    - JS_DefinePropertyValue
    - JS_ToCStringLen
    - JS_NewObject
    - internalize_json_property
    - JS_FreeCString
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_json_parse(JSContext *ctx, JSValueConst this_val,\n                             int
      argc, JSValueConst *argv)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:48145,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48146,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:48148,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:48150,1
    - Dst: string_getc
      Src: /src/gpac/src/quickjs/quickjs.c:48153,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:48173,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:48175,1
    - Dst: is_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:48179,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:48180,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:48181,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:48184,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:48190,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48192,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48195,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 65
    argCount: 3
    argNames:
    - ctx
    - b
    - val1
    argTypes:
    - JSContext*
    - StringBuffer*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48197
      start: 48137
    functionDepth: 20
    functionLinenumber: 48137
    functionLinenumberEnd: 48197
    functionName: JS_ToQuotedString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToStringCheckObject
    - string_buffer_puts8
    - snprintf
    - JS_IsException
    - string_getc
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    - string_buffer_putc
    - is_surrogate
    - string_buffer_putc8
    linkageType: ''
    returnType: int
    signature: int JS_ToQuotedString(JSContext *ctx, StringBuffer *b, JSValueConst
      val1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToQuotedString
      Src: /src/gpac/src/quickjs/quickjs.c:48200,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ctx
    - b
    - val
    argTypes:
    - JSContext*
    - StringBuffer*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48203
      start: 48199
    functionDepth: 21
    functionLinenumber: 48199
    functionLinenumberEnd: 48203
    functionName: JS_ToQuotedStringFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - JS_ToQuotedString
    linkageType: ''
    returnType: int
    signature: int JS_ToQuotedStringFree(JSContext *ctx, StringBuffer *b, JSValue
      val)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:48213,1
    - Dst: JS_IsBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:48213,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48214,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48215,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:48217,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:48218,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48219,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48221,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48224,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:48228,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:48231,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48232,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48234,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:48238,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:48240,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48255,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48259,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 49
    argCount: 5
    argNames:
    - ctx
    - jsc
    - holder
    - val
    - key
    argTypes:
    - JSContext*
    - JSONStringifyContext*
    - JSValueConst
    - JSValue
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48261
      start: 48205
    functionDepth: 23
    functionLinenumber: 48205
    functionLinenumberEnd: 48261
    functionName: js_json_check
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsFunction
    - JS_IsException
    - JS_FreeValue
    - JS_Call
    - JS_IsUndefined
    - JS_CallFree
    - JS_IsBigInt
    - JS_VALUE_GET_NORM_TAG
    - JS_IsObject
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_json_check(JSContext *ctx, JSONStringifyContext *jsc,\n
      \                            JSValueConst holder, JSValue val, JSValueConst
      key)"
  - BBCount: 47
    BranchProfiles: []
    Callsites:
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:48279,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:48280,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:48284,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:48285,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:48288,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48289,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:48293,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48294,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:48300,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:48300,1
    - Dst: js_array_includes
      Src: /src/gpac/src/quickjs/quickjs.c:48303,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48304,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:48306,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:48307,1
    - Dst: JS_ConcatString
      Src: /src/gpac/src/quickjs/quickjs.c:48310,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:48310,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:48310,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48311,1
    - Dst: JS_IsEmptyString
      Src: /src/gpac/src/quickjs/quickjs.c:48313,1
    - Dst: JS_ConcatString3
      Src: /src/gpac/src/quickjs/quickjs.c:48314,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:48314,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48315,1
    - Dst: js_new_string8
      Src: /src/gpac/src/quickjs/quickjs.c:48317,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48318,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:48321,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:48322,1
    - Dst: js_array_push
      Src: /src/gpac/src/quickjs/quickjs.c:48324,1
    - Dst: check_exception_free
      Src: /src/gpac/src/quickjs/quickjs.c:48325,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/quickjs/quickjs.c:48327,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:48331,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:48333,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:48336,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:48337,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:48338,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48339,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:48342,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:48342,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48343,1
    - Dst: js_json_check
      Src: /src/gpac/src/quickjs/quickjs.c:48345,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48346,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48348,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:48350,1
    - Dst: js_json_to_str
      Src: /src/gpac/src/quickjs/quickjs.c:48352,1
    - Dst: JS_IsEmptyString
      Src: /src/gpac/src/quickjs/quickjs.c:48355,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:48356,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:48357,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:48359,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:48361,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:48362,1
    - Dst: js_object_keys
      Src: /src/gpac/src/quickjs/quickjs.c:48364,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48365,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:48367,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:48369,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48372,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:48373,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48374,1
    - Dst: JS_GetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:48376,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:48376,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48377,1
    - Dst: js_json_check
      Src: /src/gpac/src/quickjs/quickjs.c:48379,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48380,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:48382,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:48384,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:48385,1
    - Dst: JS_ToQuotedString
      Src: /src/gpac/src/quickjs/quickjs.c:48386,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48387,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:48390,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:48391,1
    - Dst: js_json_to_str
      Src: /src/gpac/src/quickjs/quickjs.c:48392,1
    - Dst: JS_IsEmptyString
      Src: /src/gpac/src/quickjs/quickjs.c:48397,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:48398,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:48399,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:48401,1
    - Dst: check_exception_free
      Src: /src/gpac/src/quickjs/quickjs.c:48403,1
    - Dst: js_array_pop
      Src: /src/gpac/src/quickjs/quickjs.c:48403,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48405,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48406,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48407,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48408,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48409,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48410,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:48414,1
    - Dst: JS_ToQuotedStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:48417,1
    - Dst: isfinite
      Src: /src/gpac/src/quickjs/quickjs.c:48419,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:48419,1
    - Dst: string_buffer_concat_value_free
      Src: /src/gpac/src/quickjs/quickjs.c:48427,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:48431,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48434,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48439,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48440,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48441,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48442,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48443,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48444,1
    CyclomaticComplexity: 71
    EdgeCount: 71
    ICount: 199
    argCount: 5
    argNames:
    - ctx
    - jsc
    - holder
    - val
    - indent
    argTypes:
    - JSContext*
    - JSONStringifyContext*
    - JSValueConst
    - JSValue
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48446
      start: 48263
    functionDepth: 24
    functionLinenumber: 48263
    functionLinenumberEnd: 48446
    functionName: js_json_to_str
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ToNumberFree
    - JS_ToBoolFree
    - JS_GetPropertyInt64
    - js_json_check
    - js_object_keys
    - isfinite
    - JS_NewInt64
    - JS_GetPropertyValue
    - JS_DupValue
    - JS_ConcatString
    - JS_ToStringFree
    - JS_IsUndefined
    - js_array_pop
    - JS_ThrowStackOverflow
    - string_buffer_concat_value
    - JS_VALUE_GET_FLOAT64
    - JS_IsObject
    - check_exception_free
    - js_get_length64
    - js_json_to_str
    - js_array_includes
    - js_new_string8
    - JS_ConcatString3
    - string_buffer_putc8
    - JS_IsEmptyString
    - js_check_stack_overflow
    - JS_IsArray
    - JS_ToQuotedStringFree
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - string_buffer_concat_value_free
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_NORM_TAG
    - JS_ToQuotedString
    - js_array_push
    - set_value
    linkageType: ''
    returnType: int
    signature: "int js_json_to_str(JSContext *ctx, JSONStringifyContext *jsc,\n                          JSValueConst
      holder, JSValue val,\n                          JSValueConst indent)"
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:48462,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:48466,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:48467,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48468,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:48470,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/quickjs/quickjs.c:48473,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:48478,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48479,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:48481,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:48485,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48486,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:48488,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:48489,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:48492,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48493,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48496,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/quickjs/quickjs.c:48499,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:48500,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48501,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:48503,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48504,1
    - Dst: js_array_includes
      Src: /src/gpac/src/quickjs/quickjs.c:48507,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48509,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48510,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:48513,1
    - Dst: JS_SetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:48514,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48516,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:48521,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:48522,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:48523,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:48525,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:48527,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48529,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48530,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/quickjs/quickjs.c:48534,1
    - Dst: JS_ToInt32Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:48536,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:48538,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:48539,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:48540,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:48541,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:48541,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:48543,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48545,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48546,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:48548,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48549,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:48551,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:48552,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:48554,1
    - Dst: js_json_check
      Src: /src/gpac/src/quickjs/quickjs.c:48556,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48557,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:48559,1
    - Dst: js_json_to_str
      Src: /src/gpac/src/quickjs/quickjs.c:48563,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:48566,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:48572,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48574,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48575,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48576,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48577,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48578,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 135
    argCount: 4
    argNames:
    - ctx
    - obj
    - replacer
    - space0
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48580
      start: 48448
    functionDepth: 25
    functionLinenumber: 48448
    functionLinenumberEnd: 48580
    functionName: JS_JSONStringify
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToNumberFree
    - JS_ToBoolFree
    - JS_GetPropertyInt64
    - JS_IsNumber
    - js_json_check
    - string_buffer_free
    - string_buffer_init
    - JS_NewArray
    - JS_IsString
    - JS_DupValue
    - JS_ToStringFree
    - JS_SetPropertyInt64
    - JS_IsUndefined
    - JS_AtomToString
    - JS_IsObject
    - js_get_length64
    - js_json_to_str
    - JS_IsFunction
    - JS_DefinePropertyValue
    - js_array_includes
    - JS_VALUE_GET_STRING
    - js_new_string8_len
    - js_sub_string
    - string_buffer_end
    - JS_IsArray
    - JS_IsException
    - JS_FreeValue
    - JS_ToInt32Clamp
    - JS_VALUE_GET_OBJ
    - JS_NewObject
    - min_int
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_JSONStringify(JSContext *ctx, JSValueConst obj,\n                         JSValueConst
      replacer, JSValueConst space0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_JSONStringify
      Src: /src/gpac/src/quickjs/quickjs.c:48586,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48587
      start: 48582
    functionDepth: 26
    functionLinenumber: 48582
    functionLinenumberEnd: 48587
    functionName: js_json_stringify
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_JSONStringify
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_json_stringify(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/quickjs/quickjs.c:48602,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:48602,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48603
      start: 48599
    functionDepth: 20
    functionLinenumber: 48599
    functionLinenumberEnd: 48603
    functionName: JS_AddIntrinsicJSON
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_SetPropertyFunctionList
    - countof
    linkageType: ''
    returnType: int
    signature: int JS_AddIntrinsicJSON(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_function_apply
      Src: /src/gpac/src/quickjs/quickjs.c:48610,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:48610,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48611
      start: 48607
    functionDepth: 25
    functionLinenumber: 48607
    functionLinenumberEnd: 48611
    functionName: js_reflect_apply
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - max_int
    - js_function_apply
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_reflect_apply(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:48624,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:48625,1
    - Dst: build_arg_list
      Src: /src/gpac/src/quickjs/quickjs.c:48629,1
    - Dst: JS_CallConstructor2
      Src: /src/gpac/src/quickjs/quickjs.c:48632,1
    - Dst: free_arg_list
      Src: /src/gpac/src/quickjs/quickjs.c:48633,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48635
      start: 48613
    functionDepth: 24
    functionLinenumber: 48613
    functionLinenumberEnd: 48635
    functionName: js_reflect_construct
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - build_arg_list
    - JS_ThrowTypeError
    - JS_IsConstructor
    - free_arg_list
    - JS_CallConstructor2
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_reflect_construct(JSContext *ctx, JSValueConst this_val,\n
      \                                   int argc, JSValueConst *argv)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:48645,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:48646,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:48647,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:48648,1
    - Dst: JS_DeleteProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48650,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:48651,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:48655,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48656
      start: 48637
    functionDepth: 13
    functionLinenumber: 48637
    functionLinenumberEnd: 48656
    functionName: js_reflect_deleteProperty
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_FreeAtom
    - JS_VALUE_GET_TAG
    - unlikely
    - JS_DeleteProperty
    - JS_ValueToAtom
    - JS_NewBool
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_reflect_deleteProperty(JSContext *ctx, JSValueConst this_val,\n
      \                                        int argc, JSValueConst *argv)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:48667,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:48668,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:48673,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:48674,1
    - Dst: JS_GetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:48676,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:48677,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48679
      start: 48658
    functionDepth: 14
    functionLinenumber: 48658
    functionLinenumberEnd: 48679
    functionName: js_reflect_get
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_FreeAtom
    - JS_VALUE_GET_TAG
    - JS_GetPropertyInternal
    - unlikely
    - JS_ValueToAtom
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_reflect_get(JSContext *ctx, JSValueConst this_val,\n                              int
      argc, JSValueConst *argv)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:48690,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:48691,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:48692,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:48693,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48695,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:48696,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:48700,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48701
      start: 48681
    functionDepth: 15
    functionLinenumber: 48681
    functionLinenumberEnd: 48701
    functionName: js_reflect_has
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_FreeAtom
    - JS_VALUE_GET_TAG
    - unlikely
    - JS_ValueToAtom
    - JS_HasProperty
    - JS_NewBool
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_reflect_has(JSContext *ctx, JSValueConst this_val,\n                              int
      argc, JSValueConst *argv)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:48717,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:48718,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:48719,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:48720,1
    - Dst: JS_SetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:48722,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:48723,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:48724,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:48728,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48729
      start: 48703
    functionDepth: 15
    functionLinenumber: 48703
    functionLinenumberEnd: 48729
    functionName: js_reflect_set
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_DupValue
    - JS_FreeAtom
    - JS_VALUE_GET_TAG
    - JS_SetPropertyInternal
    - unlikely
    - JS_ValueToAtom
    - JS_NewBool
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_reflect_set(JSContext *ctx, JSValueConst this_val,\n                              int
      argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_SetPrototypeInternal
      Src: /src/gpac/src/quickjs/quickjs.c:48735,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:48739,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48740
      start: 48731
    functionDepth: 14
    functionLinenumber: 48731
    functionLinenumberEnd: 48740
    functionName: js_reflect_setPrototypeOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_SetPrototypeInternal
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_reflect_setPrototypeOf(JSContext *ctx, JSValueConst this_val,\n
      \                                        int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:48745,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:48746,1
    - Dst: JS_GetOwnPropertyNames2
      Src: /src/gpac/src/quickjs/quickjs.c:48747,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48750
      start: 48742
    functionDepth: 21
    functionLinenumber: 48742
    functionLinenumberEnd: 48750
    functionName: js_reflect_ownKeys
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_GetOwnPropertyNames2
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_reflect_ownKeys(JSContext *ctx, JSValueConst this_val,\n
      \                                 int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:48777,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:48779,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:48780,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:48781,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48783
      start: 48775
    functionDepth: 2
    functionLinenumber: 48775
    functionLinenumberEnd: 48783
    functionName: js_proxy_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - js_free_rt
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void js_proxy_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:48788,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:48790,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:48791,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48793
      start: 48785
    functionDepth: 2
    functionLinenumber: 48785
    functionLinenumberEnd: 48793
    functionName: js_proxy_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: "void js_proxy_mark(JSRuntime *rt, JSValueConst val,\n                          JS_MarkFunc
      *mark_func)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:48797,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48798
      start: 48795
    functionDepth: 12
    functionLinenumber: 48795
    functionLinenumberEnd: 48798
    functionName: JS_ThrowTypeErrorRevokedProxy
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ThrowTypeError
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ThrowTypeErrorRevokedProxy(JSContext *ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:48803,1
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:48807,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:48808,1
    - Dst: JS_ThrowTypeErrorRevokedProxy
      Src: /src/gpac/src/quickjs/quickjs.c:48814,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48817,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48818,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:48820,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - pmethod
    - obj
    - name
    argTypes:
    - JSContext*
    - JSValue*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48824
      start: 48800
    functionDepth: 13
    functionLinenumber: 48800
    functionLinenumberEnd: 48824
    functionName: get_proxy_method
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_check_stack_overflow
    - JS_IsNull
    - JS_GetOpaque
    - JS_IsException
    - JS_ThrowTypeErrorRevokedProxy
    - JS_ThrowStackOverflow
    - JS_GetProperty
    linkageType: ''
    returnType: JSProxyData
    signature: "JSProxyData *get_proxy_method(JSContext *ctx, JSValue *pmethod,\n
      \                                    JSValueConst obj, JSAtom name)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: get_proxy_method
      Src: /src/gpac/src/quickjs/quickjs.c:48832,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:48835,1
    - Dst: JS_GetPrototype
      Src: /src/gpac/src/quickjs/quickjs.c:48836,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:48837,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48838,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:48840,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:48841,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:48844,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48846,1
    - Dst: JS_GetPrototype
      Src: /src/gpac/src/quickjs/quickjs.c:48851,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48852,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48853,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:48856,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48857,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48859,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:48860,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48862,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48865
      start: 48826
    functionDepth: 23
    functionLinenumber: 48826
    functionLinenumberEnd: 48865
    functionName: js_proxy_get_prototype
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetPrototype
    - JS_VALUE_GET_TAG
    - get_proxy_method
    - js_same_value
    - JS_IsException
    - JS_FreeValue
    - JS_ThrowTypeError
    - JS_IsUndefined
    - JS_CallFree
    - JS_IsExtensible
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_proxy_get_prototype(JSContext *ctx, JSValueConst obj)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: get_proxy_method
      Src: /src/gpac/src/quickjs/quickjs.c:48876,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:48879,1
    - Dst: JS_SetPrototypeInternal
      Src: /src/gpac/src/quickjs/quickjs.c:48880,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:48883,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48884,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:48886,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:48889,1
    - Dst: JS_GetPrototype
      Src: /src/gpac/src/quickjs/quickjs.c:48893,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48894,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:48896,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48897,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:48898,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48901,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 3
    argNames:
    - ctx
    - obj
    - proto_val
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48904
      start: 48867
    functionDepth: 23
    functionLinenumber: 48867
    functionLinenumberEnd: 48904
    functionName: js_proxy_set_prototype
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToBoolFree
    - JS_GetPrototype
    - get_proxy_method
    - js_same_value
    - JS_IsException
    - JS_FreeValue
    - JS_ThrowTypeError
    - JS_IsUndefined
    - JS_CallFree
    - JS_IsExtensible
    - JS_SetPrototypeInternal
    linkageType: ''
    returnType: int
    signature: "int js_proxy_set_prototype(JSContext *ctx, JSValueConst obj,\n                                  JSValueConst
      proto_val)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: get_proxy_method
      Src: /src/gpac/src/quickjs/quickjs.c:48913,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:48916,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:48917,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:48918,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48919,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:48921,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:48922,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:48926,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48930
      start: 48906
    functionDepth: 23
    functionLinenumber: 48906
    functionLinenumberEnd: 48930
    functionName: js_proxy_is_extensible
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToBoolFree
    - get_proxy_method
    - JS_ThrowTypeError
    - JS_IsException
    - JS_IsUndefined
    - JS_CallFree
    - JS_IsExtensible
    linkageType: ''
    returnType: int
    signature: int js_proxy_is_extensible(JSContext *ctx, JSValueConst obj)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: get_proxy_method
      Src: /src/gpac/src/quickjs/quickjs.c:48939,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:48942,1
    - Dst: JS_PreventExtensions
      Src: /src/gpac/src/quickjs/quickjs.c:48943,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:48944,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48945,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:48947,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:48949,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:48953,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48958
      start: 48932
    functionDepth: 23
    functionLinenumber: 48932
    functionLinenumberEnd: 48958
    functionName: js_proxy_prevent_extensions
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToBoolFree
    - get_proxy_method
    - JS_ThrowTypeError
    - JS_IsException
    - JS_IsUndefined
    - JS_CallFree
    - JS_IsExtensible
    - JS_PreventExtensions
    linkageType: ''
    returnType: int
    signature: int js_proxy_prevent_extensions(JSContext *ctx, JSValueConst obj)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: get_proxy_method
      Src: /src/gpac/src/quickjs/quickjs.c:48969,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:48972,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48973,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:48974,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48975,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48976,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:48981,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48982,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48983,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:48985,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:48988,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:48989,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:48994,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:48996,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 3
    argNames:
    - ctx
    - obj
    - atom
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49002
      start: 48960
    functionDepth: 23
    functionLinenumber: 48960
    functionLinenumberEnd: 49002
    functionName: js_proxy_has
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyInternal
    - JS_ToBoolFree
    - get_proxy_method
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - JS_IsUndefined
    - JS_CallFree
    - js_free_desc
    - JS_HasProperty
    - JS_AtomToValue
    linkageType: ''
    returnType: int
    signature: int js_proxy_has(JSContext *ctx, JSValueConst obj, JSAtom atom)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: get_proxy_method
      Src: /src/gpac/src/quickjs/quickjs.c:49013,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49017,1
    - Dst: JS_GetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:49018,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:49019,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49020,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49021,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:49027,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49028,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49029,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:49031,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:49031,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49033,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:49038,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49042,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49042,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:49044,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49045,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:49046,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:49049,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 42
    argCount: 4
    argNames:
    - ctx
    - obj
    - atom
    - receiver
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49052
      start: 49004
    functionDepth: 23
    functionLinenumber: 49004
    functionLinenumberEnd: 49052
    functionName: js_proxy_get
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyInternal
    - js_same_value
    - get_proxy_method
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_GetPropertyInternal
    - JS_VALUE_GET_OBJ
    - JS_IsUndefined
    - JS_CallFree
    - js_free_desc
    - JS_AtomToValue
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_proxy_get(JSContext *ctx, JSValueConst obj, JSAtom atom,\n
      \                           JSValueConst receiver)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: get_proxy_method
      Src: /src/gpac/src/quickjs/quickjs.c:49062,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49065,1
    - Dst: JS_SetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:49066,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:49067,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:49070,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49071,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49072,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:49079,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49080,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49081,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:49083,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:49086,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:49086,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:49091,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49094,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:49096,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:49097,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:49100,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:49104,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:49105,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 6
    argNames:
    - ctx
    - obj
    - atom
    - value
    - receiver
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49110
      start: 49054
    functionDepth: 23
    functionLinenumber: 49054
    functionLinenumberEnd: 49110
    functionName: js_proxy_set
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyInternal
    - JS_DupValue
    - JS_ToBoolFree
    - js_same_value
    - get_proxy_method
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_SetPropertyInternal
    - JS_VALUE_GET_OBJ
    - JS_IsUndefined
    - JS_CallFree
    - js_free_desc
    - is_strict_mode
    - JS_AtomToValue
    linkageType: ''
    returnType: int
    signature: "int js_proxy_set(JSContext *ctx, JSValueConst obj, JSAtom atom,\n
      \                       JSValueConst value, JSValueConst receiver, int flags)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:49117,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49118,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:49121,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:49121,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:49125,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:49125,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:49129,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:49129,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:49133,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:49134,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:49138,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:49139,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:49143,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:49144,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 5
    argNames:
    - ctx
    - val
    - getter
    - setter
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49148
      start: 49112
    functionDepth: 18
    functionLinenumber: 49112
    functionLinenumberEnd: 49148
    functionName: js_create_desc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_DefinePropertyValue
    - JS_IsException
    - JS_NewBool
    - JS_NewObject
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_create_desc(JSContext *ctx, JSValueConst val,\n                              JSValueConst
      getter, JSValueConst setter,\n                              int flags)"
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: get_proxy_method
      Src: /src/gpac/src/quickjs/quickjs.c:49160,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:49163,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49164,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:49165,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:49167,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49168,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49169,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:49174,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49175,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49176,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:49178,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49178,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49179,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:49182,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49184,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:49188,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49189,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:49197,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49199,1
    - Dst: js_obj_to_desc
      Src: /src/gpac/src/quickjs/quickjs.c:49202,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49203,1
    - Dst: check_define_prop_flags
      Src: /src/gpac/src/quickjs/quickjs.c:49224,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:49239,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:49241,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:49249,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 89
    argCount: 4
    argNames:
    - ctx
    - pdesc
    - obj
    - prop
    argTypes:
    - JSContext*
    - JSPropertyDescriptor*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49253
      start: 49150
    functionDepth: 23
    functionLinenumber: 49150
    functionLinenumberEnd: 49253
    functionName: js_proxy_get_own_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyInternal
    - get_proxy_method
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - js_obj_to_desc
    - JS_VALUE_GET_OBJ
    - JS_IsUndefined
    - JS_CallFree
    - js_free_desc
    - check_define_prop_flags
    - JS_IsExtensible
    - JS_IsObject
    - JS_AtomToValue
    linkageType: ''
    returnType: int
    signature: "int js_proxy_get_own_property(JSContext *ctx, JSPropertyDescriptor
      *pdesc,\n                                     JSValueConst obj, JSAtom prop)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: get_proxy_method
      Src: /src/gpac/src/quickjs/quickjs.c:49268,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49271,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:49272,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:49274,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49275,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49276,1
    - Dst: js_create_desc
      Src: /src/gpac/src/quickjs/quickjs.c:49279,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49280,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49281,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49282,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:49288,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49289,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49290,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49291,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:49293,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:49296,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:49302,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:49303,1
    - Dst: check_define_prop_flags
      Src: /src/gpac/src/quickjs/quickjs.c:49313,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:49319,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:49323,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:49328,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:49342,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:49344,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:49347,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 81
    argCount: 7
    argNames:
    - ctx
    - obj
    - prop
    - val
    - getter
    - setter
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSValueConst
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49350
      start: 49255
    functionDepth: 23
    functionLinenumber: 49255
    functionLinenumberEnd: 49350
    functionName: js_proxy_define_own_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyInternal
    - JS_ToBoolFree
    - js_same_value
    - get_proxy_method
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - js_create_desc
    - JS_VALUE_GET_OBJ
    - JS_IsUndefined
    - JS_DefineProperty
    - JS_CallFree
    - js_free_desc
    - check_define_prop_flags
    - JS_AtomToValue
    linkageType: ''
    returnType: int
    signature: "int js_proxy_define_own_property(JSContext *ctx, JSValueConst obj,\n
      \                                       JSAtom prop, JSValueConst val,\n                                        JSValueConst
      getter, JSValueConst setter,\n                                        int flags)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: get_proxy_method
      Src: /src/gpac/src/quickjs/quickjs.c:49360,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49363,1
    - Dst: JS_DeleteProperty
      Src: /src/gpac/src/quickjs/quickjs.c:49364,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:49366,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49367,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49368,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:49373,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49374,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49375,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:49377,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:49380,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:49380,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:49386,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:49392,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:49394,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:49397,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 45
    argCount: 3
    argNames:
    - ctx
    - obj
    - atom
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49401
      start: 49352
    functionDepth: 23
    functionLinenumber: 49352
    functionLinenumberEnd: 49401
    functionName: js_proxy_delete_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyInternal
    - JS_ToBoolFree
    - get_proxy_method
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - JS_IsUndefined
    - JS_CallFree
    - JS_DeleteProperty
    - js_free_desc
    - JS_IsExtensible
    - JS_AtomToValue
    linkageType: ''
    returnType: int
    signature: "int js_proxy_delete_property(JSContext *ctx, JSValueConst obj,\n                                    JSAtom
      atom)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - tab
    - n
    - atom
    argTypes:
    - JSPropertyEnum*
    - int
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49412
      start: 49404
    functionDepth: 0
    functionLinenumber: 49404
    functionLinenumberEnd: 49412
    functionName: find_prop_key
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int find_prop_key(const JSPropertyEnum *tab, int n, JSAtom atom)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: get_proxy_method
      Src: /src/gpac/src/quickjs/quickjs.c:49427,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49430,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:49431,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:49432,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:49435,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49436,1
    - Dst: js_get_length32
      Src: /src/gpac/src/quickjs/quickjs.c:49442,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:49445,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:49450,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49451,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:49453,1
    - Dst: JS_IsSymbol
      Src: /src/gpac/src/quickjs/quickjs.c:49453,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49454,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:49455,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:49458,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49459,1
    - Dst: find_prop_key
      Src: /src/gpac/src/quickjs/quickjs.c:49469,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:49470,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:49475,1
    - Dst: JS_ThrowTypeErrorRevokedProxy
      Src: /src/gpac/src/quickjs/quickjs.c:49481,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:49484,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:49484,1
    - Dst: JS_ThrowTypeErrorRevokedProxy
      Src: /src/gpac/src/quickjs/quickjs.c:49489,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:49492,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:49492,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:49497,1
    - Dst: find_prop_key
      Src: /src/gpac/src/quickjs/quickjs.c:49499,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:49501,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:49514,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:49520,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49521,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:49526,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:49527,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49528,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 105
    argCount: 4
    argNames:
    - ctx
    - ptab
    - plen
    - obj
    argTypes:
    - JSContext*
    - JSPropertyEnum**
    - uint32_t*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49530
      start: 49414
    functionDepth: 23
    functionLinenumber: 49414
    functionLinenumberEnd: 49530
    functionName: js_proxy_get_own_property_names
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyInternal
    - JS_IsString
    - get_proxy_method
    - find_prop_key
    - JS_IsUndefined
    - JS_ValueToAtom
    - JS_FreePropertyEnum
    - JS_GetPropertyUint32
    - JS_IsSymbol
    - JS_CallFree
    - js_mallocz
    - JS_GetOwnPropertyNamesInternal
    - JS_ThrowTypeError
    - JS_IsException
    - JS_FreeValue
    - JS_VALUE_GET_OBJ
    - js_free_desc
    - JS_ThrowTypeErrorRevokedProxy
    - JS_IsExtensible
    - js_get_length32
    linkageType: ''
    returnType: int
    signature: "int js_proxy_get_own_property_names(JSContext *ctx,\n                                           JSPropertyEnum
      **ptab,\n                                           uint32_t *plen,\n                                           JSValueConst
      obj)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: get_proxy_method
      Src: /src/gpac/src/quickjs/quickjs.c:49540,1
    - Dst: JS_IsConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:49543,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:49544,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49545,1
    - Dst: JS_CallConstructor2
      Src: /src/gpac/src/quickjs/quickjs.c:49546,1
    - Dst: js_create_array
      Src: /src/gpac/src/quickjs/quickjs.c:49547,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49548,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:49555,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49556,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:49556,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49557,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:49558,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49561,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49562,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 5
    argNames:
    - ctx
    - func_obj
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49564
      start: 49532
    functionDepth: 24
    functionLinenumber: 49532
    functionLinenumberEnd: 49564
    functionName: js_proxy_call_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_VALUE_GET_TAG
    - get_proxy_method
    - JS_ThrowTypeError
    - JS_IsException
    - JS_Call
    - JS_FreeValue
    - JS_IsUndefined
    - JS_IsConstructor
    - js_create_array
    - JS_CallConstructor2
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_proxy_call_constructor(JSContext *ctx, JSValueConst func_obj,\n
      \                                        JSValueConst new_target,\n                                         int
      argc, JSValueConst *argv)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: js_proxy_call_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:49575,1
    - Dst: get_proxy_method
      Src: /src/gpac/src/quickjs/quickjs.c:49577,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49581,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:49582,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49584,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:49585,1
    - Dst: js_create_array
      Src: /src/gpac/src/quickjs/quickjs.c:49586,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49587,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:49594,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49596,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49597,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 6
    argNames:
    - ctx
    - func_obj
    - this_obj
    - argc
    - argv
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49599
      start: 49566
    functionDepth: 25
    functionLinenumber: 49566
    functionLinenumberEnd: 49599
    functionName: js_proxy_call
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_proxy_method
    - JS_ThrowTypeError
    - JS_Call
    - JS_FreeValue
    - JS_IsException
    - JS_IsUndefined
    - js_proxy_call_constructor
    - js_create_array
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_proxy_call(JSContext *ctx, JSValueConst func_obj,\n                             JSValueConst
      this_obj,\n                             int argc, JSValueConst *argv, int flags)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:49612,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:49613,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:49618,1
    - Dst: JS_ThrowTypeErrorRevokedProxy
      Src: /src/gpac/src/quickjs/quickjs.c:49624,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 3
    argNames:
    - ctx
    - pval
    - throw_exception
    argTypes:
    - JSContext*
    - JSValueConst*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49630
      start: 49607
    functionDepth: 13
    functionLinenumber: 49607
    functionLinenumberEnd: 49630
    functionName: js_resolve_proxy
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_ThrowTypeErrorRevokedProxy
    - JS_VALUE_GET_TAG
    - JS_ThrowStackOverflow
    linkageType: ''
    returnType: int
    signature: int js_resolve_proxy(JSContext *ctx, JSValueConst *pval, BOOL throw_exception)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:49655,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:49656,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:49657,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:49659,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49660,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:49662,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49664,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:49667,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:49668,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:49669,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:49671,1
    - Dst: JS_SetConstructorBit
      Src: /src/gpac/src/quickjs/quickjs.c:49672,1
    - Dst: JS_IsConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:49672,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49674
      start: 49646
    functionDepth: 13
    functionLinenumber: 49646
    functionLinenumberEnd: 49674
    functionName: js_proxy_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - JS_IsFunction
    - JS_IsException
    - js_malloc
    - JS_FreeValue
    - JS_NewObjectProtoClass
    - JS_SetOpaque
    - JS_IsConstructor
    - JS_SetConstructorBit
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_proxy_constructor(JSContext *ctx, JSValueConst this_val,\n
      \                                   int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:49680,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49685,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    - func_data
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49689
      start: 49676
    functionDepth: 2
    functionLinenumber: 49676
    functionLinenumberEnd: 49689
    functionName: js_proxy_revoke
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque
    - JS_FreeValue
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_proxy_revoke(JSContext *ctx, JSValueConst this_val,\n                               int
      argc, JSValueConst *argv, int magic,\n                               JSValue
      *func_data)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewCFunctionData
      Src: /src/gpac/src/quickjs/quickjs.c:49694,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - proxy_obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49695
      start: 49691
    functionDepth: 10
    functionLinenumber: 49691
    functionLinenumberEnd: 49695
    functionName: js_proxy_revoke_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewCFunctionData
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_proxy_revoke_constructor(JSContext *ctx,\n                                           JSValueConst
      proxy_obj)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_proxy_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:49702,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49703,1
    - Dst: js_proxy_revoke_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:49705,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49706,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:49708,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49709,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:49712,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:49713,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49716,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49717,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49719
      start: 49697
    functionDepth: 18
    functionLinenumber: 49697
    functionLinenumberEnd: 49719
    functionName: js_proxy_revocable
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - JS_IsException
    - JS_FreeValue
    - js_proxy_constructor
    - JS_NewObject
    - js_proxy_revoke_constructor
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_proxy_revocable(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsRegisteredClass
      Src: /src/gpac/src/quickjs/quickjs.c:49734,1
    - Dst: init_class_range
      Src: /src/gpac/src/quickjs/quickjs.c:49735,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:49736,1
    - Dst: JS_NewCFunction3
      Src: /src/gpac/src/quickjs/quickjs.c:49743,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:49745,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49746,1
    - Dst: JS_SetConstructorBit
      Src: /src/gpac/src/quickjs/quickjs.c:49748,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/quickjs/quickjs.c:49749,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:49750,1
    - Dst: JS_DefinePropertyValueStr
      Src: /src/gpac/src/quickjs/quickjs.c:49752,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49757,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49759
      start: 49729
    functionDepth: 20
    functionLinenumber: 49729
    functionLinenumberEnd: 49759
    functionName: JS_AddIntrinsicProxy
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_IsRegisteredClass
    - JS_SetPropertyFunctionList
    - JS_DefinePropertyValueStr
    - JS_IsException
    - JS_FreeValue
    - countof
    - JS_SetConstructorBit
    - init_class_range
    - JS_NewCFunction3
    linkageType: ''
    returnType: int
    signature: int JS_AddIntrinsicProxy(JSContext *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49769,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:49770,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49771,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:49774,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49775,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:49777,1
    - Dst: JS_NewSymbol
      Src: /src/gpac/src/quickjs/quickjs.c:49779,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49780
      start: 49763
    functionDepth: 19
    functionLinenumber: 49763
    functionLinenumberEnd: 49780
    functionName: js_symbol_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_IsException
    - JS_VALUE_GET_STRING
    - JS_IsUndefined
    - JS_ToString
    - JS_NewSymbol
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_symbol_constructor(JSContext *ctx, JSValueConst new_target,\n
      \                                    int argc, JSValueConst *argv)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:49784,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:49785,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:49787,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:49788,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:49790,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:49791,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:49794,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49795
      start: 49782
    functionDepth: 12
    functionLinenumber: 49782
    functionLinenumberEnd: 49795
    functionName: js_thisSymbolValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_DupValue
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeError
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_thisSymbolValue(JSContext *ctx, JSValueConst this_val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_thisSymbolValue
      Src: /src/gpac/src/quickjs/quickjs.c:49801,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49802,1
    - Dst: js_string_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:49805,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49806,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49808
      start: 49797
    functionDepth: 20
    functionLinenumber: 49797
    functionLinenumberEnd: 49808
    functionName: js_symbol_toString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_thisSymbolValue
    - JS_FreeValue
    - JS_IsException
    - js_string_constructor
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_symbol_toString(JSContext *ctx, JSValueConst this_val,\n
      \                                 int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_thisSymbolValue
      Src: /src/gpac/src/quickjs/quickjs.c:49813,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49814
      start: 49810
    functionDepth: 13
    functionLinenumber: 49810
    functionLinenumberEnd: 49814
    functionName: js_symbol_valueOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_thisSymbolValue
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_symbol_valueOf(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_thisSymbolValue
      Src: /src/gpac/src/quickjs/quickjs.c:49821,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49822,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:49824,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:49828,1
    - Dst: js_get_atom_index
      Src: /src/gpac/src/quickjs/quickjs.c:49828,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49830,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49832
      start: 49816
    functionDepth: 13
    functionLinenumber: 49816
    functionLinenumberEnd: 49832
    functionName: js_symbol_get_description
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_PTR
    - js_get_atom_index
    - JS_IsException
    - JS_FreeValue
    - js_thisSymbolValue
    - JS_AtomToString
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_symbol_get_description(JSContext *ctx, JSValueConst this_val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:49848,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49849,1
    - Dst: JS_NewSymbol
      Src: /src/gpac/src/quickjs/quickjs.c:49851,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:49851,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49852
      start: 49843
    functionDepth: 19
    functionLinenumber: 49843
    functionLinenumberEnd: 49852
    functionName: js_symbol_for
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToString
    - JS_IsException
    - JS_VALUE_GET_STRING
    - JS_NewSymbol
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_symbol_for(JSContext *ctx, JSValueConst this_val,\n                             int
      argc, JSValueConst *argv)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsSymbol
      Src: /src/gpac/src/quickjs/quickjs.c:49859,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:49860,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:49861,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:49864,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:49864,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49865
      start: 49854
    functionDepth: 12
    functionLinenumber: 49854
    functionLinenumberEnd: 49865
    functionName: js_symbol_keyFor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_VALUE_GET_PTR
    - JS_ThrowTypeError
    - JS_MKPTR
    - JS_IsSymbol
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_symbol_keyFor(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:49889,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:49894,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - val
    argTypes:
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49904
      start: 49887
    functionDepth: 1
    functionLinenumber: 49887
    functionLinenumberEnd: 49904
    functionName: js_weakref_is_target
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: BOOL
    signature: BOOL js_weakref_is_target(JSValueConst val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49911,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:49913,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - val
    argTypes:
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49915
      start: 49908
    functionDepth: 1
    functionLinenumber: 49908
    functionLinenumberEnd: 49915
    functionName: js_weakref_is_live
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_PTR
    - JS_IsUndefined
    linkageType: ''
    returnType: BOOL
    signature: BOOL js_weakref_is_live(JSValueConst val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:49920,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:49921,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:49922,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:49929,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:49931,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:49932,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:49933,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:49937,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts:
    - condition: (p->weakref_count >= 1)
      pos:
        line_end: 49921
        line_start: 49921
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (p->hash >= 1)
      pos:
        line_end: 49932
        line_start: 49932
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 49940
      start: 49918
    functionDepth: 2
    functionLinenumber: 49918
    functionLinenumberEnd: 49940
    functionName: js_weakref_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_TAG
    - assert
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_OBJ
    - js_free_rt
    linkageType: ''
    returnType: void
    signature: void js_weakref_free(JSRuntime *rt, JSValue val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:49946,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:49947,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:49949,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:49950,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:49952,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:49955,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49955,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts:
    - condition: (p->hash < JS_ATOM_HASH_MASK - 2)
      pos:
        line_end: 49951
        line_start: 49951
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (JS_IsUndefined(val))
      pos:
        line_end: 49954
        line_start: 49954
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 49962
      start: 49944
    functionDepth: 1
    functionLinenumber: 49944
    functionLinenumberEnd: 49962
    functionName: js_weakref_new
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_STRING
    - assert
    - JS_VALUE_GET_OBJ
    - JS_IsUndefined
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_weakref_new(JSContext *ctx, JSValueConst val)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:49977,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49978,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:49980,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:49983,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:49987,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:49989,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:49992,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:50000,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:50000,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:50004,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50005,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:50007,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:50008,1
    - Dst: JS_GetIterator
      Src: /src/gpac/src/quickjs/quickjs.c:50012,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50013,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:50015,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50016,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:50020,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50021,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:50026,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50027,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50028,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:50036,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:50037,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:50040,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50041,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:50043,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50044,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:50048,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50049,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50051,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50052,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50053,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50056,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50057,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50059,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50060,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50062,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50063,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50064,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:50069,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50071,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50072,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50073,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50074,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 108
    argCount: 5
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50076
      start: 49967
    functionDepth: 23
    functionLinenumber: 49967
    functionLinenumberEnd: 50076
    functionName: js_map_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_add_tail
    - init_list_head
    - JS_ThrowTypeErrorNotAnObject
    - JS_IsUndefined
    - JS_GetIterator
    - JS_IsObject
    - JS_GetProperty
    - JS_IsNull
    - JS_IsFunction
    - JS_GetPropertyUint32
    - js_mallocz
    - JS_IteratorClose
    - JS_IteratorNext
    - JS_ThrowTypeError
    - JS_IsException
    - JS_Call
    - JS_SetOpaque
    - JS_FreeValue
    - js_create_from_ctor
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_map_constructor(JSContext *ctx, JSValueConst new_target,\n
      \                                 int argc, JSValueConst *argv, int magic)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:50081,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:50083,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:50083,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:50084,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - key
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50087
      start: 50079
    functionDepth: 1
    functionLinenumber: 50079
    functionLinenumberEnd: 50087
    functionName: map_normalize_key
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_FLOAT64
    - JS_TAG_IS_FLOAT64
    - JS_NewInt32
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: JSValue
    signature: JSValue map_normalize_key(JSContext *ctx, JSValue key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: map_normalize_key
      Src: /src/gpac/src/quickjs/quickjs.c:50092,1
    - Dst: map_normalize_key
      Src: /src/gpac/src/quickjs/quickjs.c:50094,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - key
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50096
      start: 50089
    functionDepth: 2
    functionLinenumber: 50089
    functionLinenumberEnd: 50096
    functionName: map_normalize_key_const
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - map_normalize_key
    linkageType: ''
    returnType: JSValueConst
    signature: JSValueConst map_normalize_key_const(JSContext *ctx, JSValueConst key)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - hash_bits
    argTypes:
    - uint32_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50106
      start: 50103
    functionDepth: 0
    functionLinenumber: 50103
    functionLinenumberEnd: 50106
    functionName: map_hash32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t map_hash32(uint32_t a, int hash_bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - hash_bits
    argTypes:
    - uint64_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50111
      start: 50108
    functionDepth: 0
    functionLinenumber: 50108
    functionLinenumberEnd: 50111
    functionName: map_hash64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t map_hash64(uint64_t a, int hash_bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: map_hash64
      Src: /src/gpac/src/quickjs/quickjs.c:50116,1
    - Dst: map_hash32
      Src: /src/gpac/src/quickjs/quickjs.c:50118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - hash_bits
    argTypes:
    - uintptr_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50120
      start: 50113
    functionDepth: 1
    functionLinenumber: 50113
    functionLinenumberEnd: 50120
    functionName: map_hash_pointer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - map_hash64
    - map_hash32
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t map_hash_pointer(uintptr_t a, int hash_bits)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:50126,1
    - Dst: map_hash32
      Src: /src/gpac/src/quickjs/quickjs.c:50134,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:50134,1
    - Dst: map_hash32
      Src: /src/gpac/src/quickjs/quickjs.c:50137,1
    - Dst: hash_string
      Src: /src/gpac/src/quickjs/quickjs.c:50137,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:50137,1
    - Dst: map_hash32
      Src: /src/gpac/src/quickjs/quickjs.c:50140,1
    - Dst: hash_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:50140,1
    - Dst: map_hash_pointer
      Src: /src/gpac/src/quickjs/quickjs.c:50144,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:50144,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:50147,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:50150,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:50152,1
    - Dst: map_hash64
      Src: /src/gpac/src/quickjs/quickjs.c:50155,1
    - Dst: float64_as_uint64
      Src: /src/gpac/src/quickjs/quickjs.c:50155,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:50158,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:50161,1
    - Dst: map_hash32
      Src: /src/gpac/src/quickjs/quickjs.c:50171,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 2
    argNames:
    - key
    - hash_bits
    argTypes:
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50179
      start: 50124
    functionDepth: 3
    functionLinenumber: 50124
    functionLinenumberEnd: 50179
    functionName: map_hash_key
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_INT
    - hash_string_rope
    - map_hash32
    - JS_VALUE_GET_STRING
    - map_hash_pointer
    - isnan
    - hash_string
    - map_hash64
    - js_bigint_set_short
    - JS_VALUE_GET_NORM_TAG
    - float64_as_uint64
    - JS_VALUE_GET_FLOAT64
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t map_hash_key(JSValueConst key, int hash_bits)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: map_hash_key
      Src: /src/gpac/src/quickjs/quickjs.c:50186,1
    - Dst: js_weakref_is_live
      Src: /src/gpac/src/quickjs/quickjs.c:50188,1
    - Dst: js_same_value_zero
      Src: /src/gpac/src/quickjs/quickjs.c:50191,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 3
    argNames:
    - ctx
    - s
    - key
    argTypes:
    - JSContext*
    - JSMapState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50196
      start: 50181
    functionDepth: 5
    functionLinenumber: 50181
    functionLinenumberEnd: 50196
    functionName: map_find_record
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_weakref_is_live
    - map_hash_key
    - js_same_value_zero
    linkageType: ''
    returnType: JSMapRecord
    signature: "JSMapRecord *map_find_record(JSContext *ctx, JSMapState *s,\n                                    JSValueConst
      key)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:50206,1
    - Dst: js_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:50208,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:50213,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:50215,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:50216,1
    - Dst: js_weakref_is_live
      Src: /src/gpac/src/quickjs/quickjs.c:50217,1
    - Dst: map_hash_key
      Src: /src/gpac/src/quickjs/quickjs.c:50219,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - JSMapState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50228
      start: 50198
    functionDepth: 4
    functionLinenumber: 50198
    functionLinenumberEnd: 50228
    functionName: map_hash_resize
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_realloc
    - js_weakref_is_live
    - map_hash_key
    - memset
    - list_entry
    - list_for_each
    - min_int
    linkageType: ''
    returnType: void
    signature: void map_hash_resize(JSContext *ctx, JSMapState *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:50236,1
    - Dst: js_weakref_new
      Src: /src/gpac/src/quickjs/quickjs.c:50242,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50244,1
    - Dst: map_hash_key
      Src: /src/gpac/src/quickjs/quickjs.c:50246,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:50249,1
    - Dst: map_hash_resize
      Src: /src/gpac/src/quickjs/quickjs.c:50252,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 3
    argNames:
    - ctx
    - s
    - key
    argTypes:
    - JSContext*
    - JSMapState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50255
      start: 50230
    functionDepth: 5
    functionLinenumber: 50230
    functionLinenumberEnd: 50255
    functionName: map_add_record
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - js_weakref_new
    - js_malloc
    - list_add_tail
    - map_hash_key
    - map_hash_resize
    linkageType: ''
    returnType: JSMapRecord
    signature: "JSMapRecord *map_add_record(JSContext *ctx, JSMapState *s,\n                                   JSValueConst
      key)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: map_add_record
      Src: /src/gpac/src/quickjs/quickjs.c:50261,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - s
    - key
    argTypes:
    - JSContext*
    - JSMapState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50266
      start: 50257
    functionDepth: 6
    functionLinenumber: 50257
    functionLinenumberEnd: 50266
    functionName: set_add_record
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - map_add_record
    linkageType: ''
    returnType: JSMapRecord
    signature: "JSMapRecord *set_add_record(JSContext *ctx, JSMapState *s,\n                                   JSValueConst
      key)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_weakref_free
      Src: /src/gpac/src/quickjs/quickjs.c:50275,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:50277,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:50279,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:50281,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:50282,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 3
    argNames:
    - rt
    - s
    - mr
    argTypes:
    - JSRuntime*
    - JSMapState*
    - JSMapRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50290
      start: 50269
    functionDepth: 3
    functionLinenumber: 50269
    functionLinenumberEnd: 50290
    functionName: map_delete_record_internal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - list_del
    - js_weakref_free
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void map_delete_record_internal(JSRuntime *rt, JSMapState *s, JSMapRecord
      *mr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:50296,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:50297,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:50298,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - rt
    - mr
    argTypes:
    - JSRuntime*
    - JSMapRecord*
    assertStmts:
    - condition: (mr->empty)
      pos:
        line_end: 50295
        line_start: 50295
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 50300
      start: 50292
    functionDepth: 2
    functionLinenumber: 50292
    functionLinenumberEnd: 50300
    functionName: map_decref_record
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - assert
    - list_del
    linkageType: ''
    returnType: void
    signature: void map_decref_record(JSRuntime *rt, JSMapRecord *mr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: container_of
      Src: /src/gpac/src/quickjs/quickjs.c:50304,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:50309,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:50310,1
    - Dst: js_weakref_is_live
      Src: /src/gpac/src/quickjs/quickjs.c:50311,1
    - Dst: map_hash_key
      Src: /src/gpac/src/quickjs/quickjs.c:50314,1
    - Dst: map_delete_record_internal
      Src: /src/gpac/src/quickjs/quickjs.c:50329,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - rt
    - wh
    argTypes:
    - JSRuntime*
    - JSWeakRefHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50332
      start: 50302
    functionDepth: 4
    functionLinenumber: 50302
    functionLinenumberEnd: 50332
    functionName: map_delete_weakrefs
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - container_of
    - js_weakref_is_live
    - list_for_each_safe
    - map_hash_key
    - map_delete_record_internal
    - list_entry
    linkageType: ''
    returnType: void
    signature: void map_delete_weakrefs(JSRuntime *rt, JSWeakRefHeader *wh)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:50337,1
    - Dst: map_normalize_key_const
      Src: /src/gpac/src/quickjs/quickjs.c:50343,1
    - Dst: js_weakref_is_target
      Src: /src/gpac/src/quickjs/quickjs.c:50344,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:50345,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:50350,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50352,1
    - Dst: map_add_record
      Src: /src/gpac/src/quickjs/quickjs.c:50354,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50358,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50359,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50360
      start: 50334
    functionDepth: 12
    functionLinenumber: 50334
    functionLinenumberEnd: 50360
    functionName: js_map_set
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - JS_DupValue
    - map_add_record
    - map_normalize_key_const
    - JS_ThrowTypeError
    - JS_FreeValue
    - js_weakref_is_target
    - map_find_record
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_map_set(JSContext *ctx, JSValueConst this_val,\n                          int
      argc, JSValueConst *argv, int magic)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:50365,1
    - Dst: map_normalize_key_const
      Src: /src/gpac/src/quickjs/quickjs.c:50371,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:50372,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50376,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50377
      start: 50362
    functionDepth: 6
    functionLinenumber: 50362
    functionLinenumberEnd: 50377
    functionName: js_map_get
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - JS_DupValue
    - map_normalize_key_const
    - map_find_record
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_map_get(JSContext *ctx, JSValueConst this_val,\n                          int
      argc, JSValueConst *argv, int magic)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: map_normalize_key_const
      Src: /src/gpac/src/quickjs/quickjs.c:50385,1
    - Dst: map_hash_key
      Src: /src/gpac/src/quickjs/quickjs.c:50387,1
    - Dst: js_weakref_is_live
      Src: /src/gpac/src/quickjs/quickjs.c:50393,1
    - Dst: js_same_value_zero
      Src: /src/gpac/src/quickjs/quickjs.c:50396,1
    - Dst: map_delete_record_internal
      Src: /src/gpac/src/quickjs/quickjs.c:50405,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 3
    argNames:
    - ctx
    - s
    - key
    argTypes:
    - JSContext*
    - JSMapState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50407
      start: 50380
    functionDepth: 5
    functionLinenumber: 50380
    functionLinenumberEnd: 50407
    functionName: map_delete_record
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - map_normalize_key_const
    - js_weakref_is_live
    - map_hash_key
    - map_delete_record_internal
    - js_same_value_zero
    linkageType: ''
    returnType: JSValue
    signature: JSValue map_delete_record(JSContext *ctx, JSMapState *s, JSValueConst
      key)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:50414,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:50421,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:50422,1
    - Dst: map_normalize_key_const
      Src: /src/gpac/src/quickjs/quickjs.c:50423,1
    - Dst: js_weakref_is_target
      Src: /src/gpac/src/quickjs/quickjs.c:50424,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:50425,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:50426,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:50429,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50430,1
    - Dst: map_delete_record
      Src: /src/gpac/src/quickjs/quickjs.c:50432,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50434,1
    - Dst: map_add_record
      Src: /src/gpac/src/quickjs/quickjs.c:50436,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50438,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50443,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50444
      start: 50409
    functionDepth: 23
    functionLinenumber: 50409
    functionLinenumberEnd: 50444
    functionName: js_map_getOrInsert
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - JS_DupValue
    - map_add_record
    - map_normalize_key_const
    - JS_ThrowTypeError
    - JS_IsFunction
    - JS_Call
    - JS_IsException
    - js_weakref_is_target
    - JS_FreeValue
    - map_delete_record
    - map_find_record
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_map_getOrInsert(JSContext *ctx, JSValueConst this_val,\n
      \                                 int argc, JSValueConst *argv, int magic)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:50449,1
    - Dst: map_normalize_key_const
      Src: /src/gpac/src/quickjs/quickjs.c:50455,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:50456,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:50457,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50458
      start: 50446
    functionDepth: 6
    functionLinenumber: 50446
    functionLinenumberEnd: 50458
    functionName: js_map_has
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - JS_NewBool
    - map_normalize_key_const
    - map_find_record
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_map_has(JSContext *ctx, JSValueConst this_val,\n                          int
      argc, JSValueConst *argv, int magic)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:50463,1
    - Dst: map_delete_record
      Src: /src/gpac/src/quickjs/quickjs.c:50466,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50467
      start: 50460
    functionDepth: 6
    functionLinenumber: 50460
    functionLinenumberEnd: 50467
    functionName: js_map_delete
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - map_delete_record
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_map_delete(JSContext *ctx, JSValueConst this_val,\n                             int
      argc, JSValueConst *argv, int magic)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:50472,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:50480,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:50482,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:50483,1
    - Dst: map_delete_record_internal
      Src: /src/gpac/src/quickjs/quickjs.c:50484,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50487
      start: 50469
    functionDepth: 4
    functionLinenumber: 50469
    functionLinenumberEnd: 50487
    functionName: js_map_clear
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - list_for_each_safe
    - memset
    - map_delete_record_internal
    - list_entry
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_map_clear(JSContext *ctx, JSValueConst this_val,\n                            int
      argc, JSValueConst *argv, int magic)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:50491,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:50494,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50495
      start: 50489
    functionDepth: 3
    functionLinenumber: 50489
    functionLinenumberEnd: 50495
    functionName: js_map_get_size
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - JS_NewUint32
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_map_get_size(JSContext *ctx, JSValueConst this_val, int
      magic)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:50500,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:50513,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:50519,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50523,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50527,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:50533,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50534,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50536,1
    - Dst: map_decref_record
      Src: /src/gpac/src/quickjs/quickjs.c:50538,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50539,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50541,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50547
      start: 50497
    functionDepth: 23
    functionLinenumber: 50497
    functionLinenumberEnd: 50547
    functionName: js_map_forEach
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - JS_DupValue
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - map_decref_record
    - check_function
    - list_entry
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_map_forEach(JSContext *ctx, JSValueConst this_val,\n                              int
      argc, JSValueConst *argv, int magic)"
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:50560,1
    - Dst: JS_GetIterator
      Src: /src/gpac/src/quickjs/quickjs.c:50563,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50564,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:50573,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50574,1
    - Dst: js_map_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:50578,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:50580,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50582,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:50587,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:50590,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50591,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:50597,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:50598,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50599,1
    - Dst: js_map_get
      Src: /src/gpac/src/quickjs/quickjs.c:50603,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:50605,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50606,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:50610,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50612,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:50615,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:50616,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50617,1
    - Dst: js_map_set
      Src: /src/gpac/src/quickjs/quickjs.c:50622,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50623,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50625,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50627,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:50628,1
    - Dst: js_array_push
      Src: /src/gpac/src/quickjs/quickjs.c:50634,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50635,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50639,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50640,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:50641,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50642,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50649,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50650,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:50654,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:50656,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50657,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50658,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50659,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50660,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50661,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50662,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 106
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - is_map
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50664
      start: 50549
    functionDepth: 24
    functionLinenumber: 50549
    functionLinenumberEnd: 50664
    functionName: js_object_groupBy
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - JS_NewInt64
    - JS_NewArray
    - JS_DupValue
    - JS_IsUndefined
    - JS_ValueToAtom
    - JS_GetIterator
    - js_map_constructor
    - JS_GetProperty
    - JS_DefinePropertyValue
    - check_function
    - js_map_set
    - JS_NewObjectProto
    - JS_IteratorClose
    - JS_IteratorNext
    - JS_ThrowTypeError
    - JS_IsException
    - JS_Call
    - JS_FreeValue
    - js_map_get
    - js_array_push
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_object_groupBy(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv, int is_map)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:50673,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:50678,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:50679,1
    - Dst: js_weakref_free
      Src: /src/gpac/src/quickjs/quickjs.c:50682,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:50684,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:50685,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:50687,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:50689,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:50691,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:50693,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50695
      start: 50666
    functionDepth: 3
    functionLinenumber: 50666
    functionLinenumberEnd: 50695
    functionName: js_map_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_for_each_safe
    - JS_VALUE_GET_OBJ
    - JS_FreeValueRT
    - js_weakref_free
    - js_free_rt
    - list_entry
    - list_del
    linkageType: ''
    returnType: void
    signature: void js_map_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:50699,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:50706,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:50707,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:50709,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:50710,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50713
      start: 50697
    functionDepth: 2
    functionLinenumber: 50697
    functionLinenumberEnd: 50713
    functionName: js_map_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_entry
    - list_for_each
    - JS_VALUE_GET_OBJ
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: void js_map_mark(JSRuntime *rt, JSValueConst val, JS_MarkFunc *mark_func)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:50728,1
    - Dst: JS_IsLiveObject
      Src: /src/gpac/src/quickjs/quickjs.c:50733,1
    - Dst: map_decref_record
      Src: /src/gpac/src/quickjs/quickjs.c:50734,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:50736,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:50737,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50739
      start: 50723
    functionDepth: 3
    functionLinenumber: 50723
    functionLinenumberEnd: 50739
    functionName: js_map_iterator_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsLiveObject
    - JS_VALUE_GET_OBJ
    - JS_FreeValueRT
    - map_decref_record
    - js_free_rt
    linkageType: ''
    returnType: void
    signature: void js_map_iterator_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:50744,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:50749,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50751
      start: 50741
    functionDepth: 2
    functionLinenumber: 50741
    functionLinenumberEnd: 50751
    functionName: js_map_iterator_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: "void js_map_iterator_mark(JSRuntime *rt, JSValueConst val,\n                                 JS_MarkFunc
      *mark_func)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:50763,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:50766,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50767,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:50769,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50771,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50774,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:50777,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50781
      start: 50753
    functionDepth: 10
    functionLinenumber: 50753
    functionLinenumberEnd: 50781
    functionName: js_create_map_iterator
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_GetOpaque2
    - JS_DupValue
    - JS_IsException
    - js_malloc
    - JS_FreeValue
    - JS_SetOpaque
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_create_map_iterator(JSContext *ctx, JSValueConst this_val,\n
      \                                     int argc, JSValueConst *argv, int magic)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:50792,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:50797,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:50799,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:50800,1
    - Dst: map_decref_record
      Src: /src/gpac/src/quickjs/quickjs.c:50806,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50812,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:50819,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50832,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50841,1
    - Dst: js_create_array
      Src: /src/gpac/src/quickjs/quickjs.c:50843,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 49
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - pdone
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - BOOL*
    - int
    assertStmts:
    - condition: (s != NULL)
      pos:
        line_end: 50799
        line_start: 50799
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 50846
      start: 50783
    functionDepth: 10
    functionLinenumber: 50783
    functionLinenumberEnd: 50846
    functionName: js_map_iterator_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - JS_DupValue
    - JS_GetOpaque
    - JS_FreeValue
    - assert
    - JS_IsUndefined
    - map_decref_record
    - js_create_array
    - list_entry
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_map_iterator_next(JSContext *ctx, JSValueConst this_val,\n
      \                                   int argc, JSValueConst *argv,\n                                    BOOL
      *pdone, int magic)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:50855,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:50862,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50863,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:50865,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:50867,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:50868,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:50878,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:50883,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50884,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:50886,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:50887,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:50890,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:50891,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:50895,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50896,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:50898,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:50899,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:50902,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:50903,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50912,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50913,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 68
    argCount: 5
    argNames:
    - ctx
    - obj
    - psize
    - phas
    - pkeys
    argTypes:
    - JSContext*
    - JSValueConst
    - int64_t*
    - JSValue*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50918
      start: 50848
    functionDepth: 21
    functionLinenumber: 50848
    functionLinenumberEnd: 50918
    functionName: get_set_record
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_GetOpaque
    - JS_ToFloat64Free
    - JS_IsException
    - JS_IsFunction
    - isnan
    - JS_ThrowRangeError
    - JS_IsUndefined
    - JS_FreeValue
    - JS_GetProperty
    linkageType: ''
    returnType: int
    signature: "int get_set_record(JSContext *ctx, JSValueConst obj,\n                          int64_t
      *psize, JSValue *phas, JSValue *pkeys)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:50928,1
    - Dst: js_map_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:50932,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50933,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:50935,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:50939,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:50940,1
    - Dst: set_add_record
      Src: /src/gpac/src/quickjs/quickjs.c:50943,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50948,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50950
      start: 50921
    functionDepth: 24
    functionLinenumber: 50921
    functionLinenumberEnd: 50950
    functionName: js_copy_set
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - set_add_record
    - JS_IsException
    - JS_GetOpaque
    - JS_FreeValue
    - list_entry
    - js_map_constructor
    - list_for_each
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_copy_set(JSContext *ctx, JSValueConst this_val)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:50965,1
    - Dst: get_set_record
      Src: /src/gpac/src/quickjs/quickjs.c:50968,1
    - Dst: js_create_map_iterator
      Src: /src/gpac/src/quickjs/quickjs.c:50971,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50972,1
    - Dst: js_map_iterator_next
      Src: /src/gpac/src/quickjs/quickjs.c:50976,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50977,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:50981,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50982,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:50983,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:50989,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50990,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:50992,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50993,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:50997,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50998,1
    - Dst: map_normalize_key
      Src: /src/gpac/src/quickjs/quickjs.c:51002,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:51003,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51004,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:51006,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51013,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51014,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51015,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51016,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 65
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51018
      start: 50952
    functionDepth: 23
    functionLinenumber: 50952
    functionLinenumberEnd: 51018
    functionName: js_set_isDisjointFrom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - js_create_map_iterator
    - JS_ToBoolFree
    - JS_IteratorNext
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - js_map_iterator_next
    - get_set_record
    - map_find_record
    - map_normalize_key
    - JS_IteratorClose
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_set_isDisjointFrom(JSContext *ctx, JSValueConst this_val,\n
      \                                    int argc, JSValueConst *argv)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:51032,1
    - Dst: get_set_record
      Src: /src/gpac/src/quickjs/quickjs.c:51035,1
    - Dst: js_create_map_iterator
      Src: /src/gpac/src/quickjs/quickjs.c:51040,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51041,1
    - Dst: js_map_iterator_next
      Src: /src/gpac/src/quickjs/quickjs.c:51045,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51046,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:51050,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51051,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:51052,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51060,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51061,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51062,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51063,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 44
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51065
      start: 51020
    functionDepth: 23
    functionLinenumber: 51020
    functionLinenumberEnd: 51065
    functionName: js_set_isSubsetOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - js_create_map_iterator
    - JS_ToBoolFree
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - js_map_iterator_next
    - get_set_record
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_set_isSubsetOf(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:51079,1
    - Dst: get_set_record
      Src: /src/gpac/src/quickjs/quickjs.c:51082,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:51087,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51088,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:51090,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51091,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:51095,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51096,1
    - Dst: map_normalize_key
      Src: /src/gpac/src/quickjs/quickjs.c:51100,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:51101,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51102,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:51104,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51111,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51112,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51113,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51114,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 48
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51116
      start: 51067
    functionDepth: 23
    functionLinenumber: 51067
    functionLinenumberEnd: 51116
    functionName: js_set_isSupersetOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - JS_IteratorNext
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - get_set_record
    - map_find_record
    - map_normalize_key
    - JS_IteratorClose
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_set_isSupersetOf(JSContext *ctx, JSValueConst this_val,\n
      \                                  int argc, JSValueConst *argv)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:51130,1
    - Dst: get_set_record
      Src: /src/gpac/src/quickjs/quickjs.c:51133,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:51136,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51137,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:51139,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51140,1
    - Dst: js_map_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:51142,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51143,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:51145,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:51147,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51148,1
    - Dst: map_normalize_key
      Src: /src/gpac/src/quickjs/quickjs.c:51152,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:51153,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51154,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:51155,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51156,1
    - Dst: set_add_record
      Src: /src/gpac/src/quickjs/quickjs.c:51158,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51159,1
    - Dst: js_create_map_iterator
      Src: /src/gpac/src/quickjs/quickjs.c:51165,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51166,1
    - Dst: js_map_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:51168,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51169,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:51171,1
    - Dst: js_map_iterator_next
      Src: /src/gpac/src/quickjs/quickjs.c:51173,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51174,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:51178,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:51179,1
    - Dst: map_normalize_key
      Src: /src/gpac/src/quickjs/quickjs.c:51181,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:51182,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51183,1
    - Dst: set_add_record
      Src: /src/gpac/src/quickjs/quickjs.c:51185,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51186,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51191,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51199,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51202,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51203,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51204,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51205,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 96
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51207
      start: 51118
    functionDepth: 24
    functionLinenumber: 51118
    functionLinenumberEnd: 51207
    functionName: js_set_intersection
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - set_add_record
    - js_create_map_iterator
    - JS_IteratorNext
    - JS_ToBoolFree
    - JS_Call
    - JS_IsException
    - JS_GetOpaque
    - JS_FreeValue
    - js_map_iterator_next
    - get_set_record
    - map_find_record
    - map_normalize_key
    - js_map_constructor
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_set_intersection(JSContext *ctx, JSValueConst this_val,\n
      \                                  int argc, JSValueConst *argv)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:51221,1
    - Dst: get_set_record
      Src: /src/gpac/src/quickjs/quickjs.c:51224,1
    - Dst: js_copy_set
      Src: /src/gpac/src/quickjs/quickjs.c:51227,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51228,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:51230,1
    - Dst: js_create_map_iterator
      Src: /src/gpac/src/quickjs/quickjs.c:51233,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51234,1
    - Dst: js_map_iterator_next
      Src: /src/gpac/src/quickjs/quickjs.c:51237,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51238,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:51242,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:51243,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51245,1
    - Dst: map_delete_record
      Src: /src/gpac/src/quickjs/quickjs.c:51249,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51251,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:51254,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51255,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:51257,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51258,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:51261,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51262,1
    - Dst: map_delete_record
      Src: /src/gpac/src/quickjs/quickjs.c:51266,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51267,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51272,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51275,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51276,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51277,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51278,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 72
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51280
      start: 51209
    functionDepth: 25
    functionLinenumber: 51209
    functionLinenumberEnd: 51280
    functionName: js_set_difference
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - js_create_map_iterator
    - JS_ToBoolFree
    - JS_IteratorNext
    - JS_Call
    - JS_IsException
    - js_copy_set
    - JS_GetOpaque
    - js_map_iterator_next
    - JS_FreeValue
    - map_delete_record
    - get_set_record
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_set_difference(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:51292,1
    - Dst: get_set_record
      Src: /src/gpac/src/quickjs/quickjs.c:51295,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51297,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:51301,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51302,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:51304,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51305,1
    - Dst: js_copy_set
      Src: /src/gpac/src/quickjs/quickjs.c:51307,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51308,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:51310,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:51312,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51313,1
    - Dst: map_normalize_key
      Src: /src/gpac/src/quickjs/quickjs.c:51325,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:51326,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:51327,1
    - Dst: map_delete_record
      Src: /src/gpac/src/quickjs/quickjs.c:51329,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51330,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51332,1
    - Dst: set_add_record
      Src: /src/gpac/src/quickjs/quickjs.c:51334,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51335,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51342,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51345,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51346,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51347,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 58
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51349
      start: 51282
    functionDepth: 25
    functionLinenumber: 51282
    functionLinenumberEnd: 51349
    functionName: js_set_symmetricDifference
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - set_add_record
    - JS_IteratorNext
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - js_copy_set
    - JS_GetOpaque
    - map_delete_record
    - get_set_record
    - map_find_record
    - map_normalize_key
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_set_symmetricDifference(JSContext *ctx, JSValueConst this_val,\n
      \                                         int argc, JSValueConst *argv)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:51359,1
    - Dst: get_set_record
      Src: /src/gpac/src/quickjs/quickjs.c:51362,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51364,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:51368,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51369,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:51371,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51372,1
    - Dst: js_copy_set
      Src: /src/gpac/src/quickjs/quickjs.c:51375,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51376,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:51380,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51381,1
    - Dst: js_map_set
      Src: /src/gpac/src/quickjs/quickjs.c:51385,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51386,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51387,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51389,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51393,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51396,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51397,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51398,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 47
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51400
      start: 51351
    functionDepth: 25
    functionLinenumber: 51351
    functionLinenumberEnd: 51400
    functionName: js_set_union
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - JS_IteratorNext
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - js_copy_set
    - get_set_record
    - js_map_set
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_set_union(JSContext *ctx, JSValueConst this_val,\n                            int
      argc, JSValueConst *argv)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:51502,1
    - Dst: JS_NewCConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:51505,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:51508,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51511,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51513,1
    - Dst: JS_NewObjectProtoList
      Src: /src/gpac/src/quickjs/quickjs.c:51518,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51521,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51525
      start: 51494
    functionDepth: 21
    functionLinenumber: 51494
    functionLinenumberEnd: 51525
    functionName: JS_AddIntrinsicMapSet
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_NewObjectProtoList
    - JS_IsException
    - JS_FreeValue
    - countof
    - JS_NewCConstructor
    - JS_AtomGetStr
    linkageType: ''
    returnType: int
    signature: int JS_AddIntrinsicMapSet(JSContext *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:51567,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - promise
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51571
      start: 51565
    functionDepth: 2
    functionLinenumber: 51565
    functionLinenumberEnd: 51571
    functionName: JS_PromiseState
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_GetOpaque
    linkageType: ''
    returnType: JSPromiseStateEnum
    signature: JSPromiseStateEnum JS_PromiseState(JSContext *ctx, JSValue promise)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:51575,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:51578,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - promise
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51579
      start: 51573
    functionDepth: 2
    functionLinenumber: 51573
    functionLinenumberEnd: 51579
    functionName: JS_PromiseResult
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_GetOpaque
    - JS_DupValue
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_PromiseResult(JSContext *ctx, JSValue promise)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:51587,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:51588,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:51589,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:51590,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - rd
    argTypes:
    - JSRuntime*
    - JSPromiseReactionData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51591
      start: 51584
    functionDepth: 2
    functionLinenumber: 51584
    functionLinenumberEnd: 51591
    functionName: promise_reaction_data_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: "void promise_reaction_data_free(JSRuntime *rt,\n                                       JSPromiseReactionData
      *rd)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:51600,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/quickjs/quickjs.c:51602,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:51605,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:51608,1
    - Dst: JS_Throw
      Src: /src/gpac/src/quickjs/quickjs.c:51610,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:51610,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:51612,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:51615,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51617,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:51619,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:51624,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:51625,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51630,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 3
    argNames:
    - ctx
    - argc
    - argv
    argTypes:
    - JSContext*
    - int
    - JSValueConst*
    assertStmts:
    - condition: (argc == 5)
      pos:
        line_end: 51599
        line_start: 51599
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 51633
      start: 51593
    functionDepth: 23
    functionLinenumber: 51593
    functionLinenumberEnd: 51633
    functionName: promise_reaction_job
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - printf
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - assert
    - JS_IsUndefined
    - JS_ToBool
    - JS_Throw
    - JS_GetException
    linkageType: ''
    returnType: JSValue
    signature: "JSValue promise_reaction_job(JSContext *ctx, int argc,\n                                    JSValueConst
      *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - rt
    - cb
    - opaque
    argTypes:
    - JSRuntime*
    - JSHostPromiseRejectionTracker*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51641
      start: 51635
    functionDepth: 0
    functionLinenumber: 51635
    functionLinenumberEnd: 51641
    functionName: JS_SetHostPromiseRejectionTracker
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void JS_SetHostPromiseRejectionTracker(JSRuntime *rt,\n                                       JSHostPromiseRejectionTracker
      *cb,\n                                       void *opaque)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:51646,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:51653,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:51653,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:51656,1
    - Dst: JSRuntime*::host_promise_rejection_tracker
      Src: /src/gpac/src/quickjs/quickjs.c:51661,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:51666,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:51667,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:51671,1
    - Dst: JS_EnqueueJob
      Src: /src/gpac/src/quickjs/quickjs.c:51673,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:51674,1
    - Dst: promise_reaction_data_free
      Src: /src/gpac/src/quickjs/quickjs.c:51675,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:51678,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:51679,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:51680,1
    - Dst: promise_reaction_data_free
      Src: /src/gpac/src/quickjs/quickjs.c:51681,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 4
    argNames:
    - ctx
    - promise
    - value
    - is_reject
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51683
      start: 51643
    functionDepth: 4
    functionLinenumber: 51643
    functionLinenumberEnd: 51683
    functionName: fulfill_or_reject_promise
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JSRuntime*::host_promise_rejection_tracker
    - promise_reaction_data_free
    - JS_DupValue
    - printf
    - JS_GetOpaque
    - list_for_each_safe
    - JS_NewBool
    - JS_EnqueueJob
    - list_entry
    - set_value
    - list_del
    linkageType: ''
    returnType: void
    signature: "void fulfill_or_reject_promise(JSContext *ctx, JSValueConst promise,\n
      \                                     JSValueConst value, BOOL is_reject)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fulfill_or_reject_promise
      Src: /src/gpac/src/quickjs/quickjs.c:51688,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - promise
    - value
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51689
      start: 51685
    functionDepth: 5
    functionLinenumber: 51685
    functionLinenumberEnd: 51689
    functionName: reject_promise
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - fulfill_or_reject_promise
    linkageType: ''
    returnType: void
    signature: "void reject_promise(JSContext *ctx, JSValueConst promise,\n                           JSValueConst
      value)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:51698,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:51700,1
    - Dst: js_create_resolving_functions
      Src: /src/gpac/src/quickjs/quickjs.c:51704,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:51706,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51707,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:51708,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:51709,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51710,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51712,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51713,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - argc
    - argv
    argTypes:
    - JSContext*
    - int
    - JSValueConst*
    assertStmts:
    - condition: (argc == 3)
      pos:
        line_end: 51699
        line_start: 51699
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 51715
      start: 51691
    functionDepth: 23
    functionLinenumber: 51691
    functionLinenumberEnd: 51715
    functionName: js_promise_resolve_thenable_job
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - js_create_resolving_functions
    - JS_Call
    - JS_IsException
    - JS_FreeValue
    - assert
    - JS_GetException
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_promise_resolve_thenable_job(JSContext *ctx,\n                                               int
      argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:51721,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - rt
    - sr
    argTypes:
    - JSRuntime*
    - JSPromiseFunctionDataResolved*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51723
      start: 51717
    functionDepth: 2
    functionLinenumber: 51717
    functionLinenumberEnd: 51723
    functionName: js_promise_resolve_function_free_resolved
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    linkageType: ''
    returnType: void
    signature: "void js_promise_resolve_function_free_resolved(JSRuntime *rt,\n                                                      JSPromiseFunctionDataResolved
      *sr)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:51735,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:51742,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51744,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:51746,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51748,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51752,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:51758,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:51759,1
    - Dst: js_function_set_properties
      Src: /src/gpac/src/quickjs/quickjs.c:51760,1
    - Dst: js_promise_resolve_function_free_resolved
      Src: /src/gpac/src/quickjs/quickjs.c:51763,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 3
    argNames:
    - ctx
    - resolving_funcs
    - promise
    argTypes:
    - JSContext*
    - JSValue*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51765
      start: 51725
    functionDepth: 9
    functionLinenumber: 51725
    functionLinenumberEnd: 51765
    functionName: js_create_resolving_functions
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_DupValue
    - js_promise_resolve_function_free_resolved
    - js_malloc
    - JS_FreeValue
    - JS_IsException
    - JS_NewObjectProtoClass
    - JS_SetOpaque
    - js_function_set_properties
    linkageType: ''
    returnType: int
    signature: "int js_create_resolving_functions(JSContext *ctx,\n                                         JSValue
      *resolving_funcs,\n                                         JSValueConst promise)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:51769,1
    - Dst: js_promise_resolve_function_free_resolved
      Src: /src/gpac/src/quickjs/quickjs.c:51771,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:51772,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:51773,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51775
      start: 51767
    functionDepth: 3
    functionLinenumber: 51767
    functionLinenumberEnd: 51775
    functionName: js_promise_resolve_function_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - js_promise_resolve_function_free_resolved
    - JS_VALUE_GET_OBJ
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void js_promise_resolve_function_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:51780,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:51782,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51784
      start: 51777
    functionDepth: 2
    functionLinenumber: 51777
    functionLinenumberEnd: 51784
    functionName: js_promise_resolve_function_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_MarkValue
    linkageType: ''
    returnType: void
    signature: "void js_promise_resolve_function_mark(JSRuntime *rt, JSValueConst
      val,\n                                             JS_MarkFunc *mark_func)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:51792,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:51808,1
    - Dst: JS_DumpValue
      Src: /src/gpac/src/quickjs/quickjs.c:51809,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:51810,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:51812,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:51814,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:51815,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:51818,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51819,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:51822,1
    - Dst: reject_promise
      Src: /src/gpac/src/quickjs/quickjs.c:51823,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51824,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:51825,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51826,1
    - Dst: fulfill_or_reject_promise
      Src: /src/gpac/src/quickjs/quickjs.c:51828,1
    - Dst: JS_EnqueueJob
      Src: /src/gpac/src/quickjs/quickjs.c:51833,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51834,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 6
    argNames:
    - ctx
    - func_obj
    - this_val
    - argc
    - argv
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51837
      start: 51786
    functionDepth: 21
    functionLinenumber: 51786
    functionLinenumberEnd: 51837
    functionName: js_promise_resolve_function_call
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - js_same_value
    - JS_DumpValue
    - JS_ThrowTypeError
    - JS_IsException
    - reject_promise
    - JS_FreeValue
    - JS_IsFunction
    - JS_VALUE_GET_OBJ
    - fulfill_or_reject_promise
    - JS_EnqueueJob
    - JS_IsObject
    - JS_GetException
    - JS_GetProperty
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_promise_resolve_function_call(JSContext *ctx,\n                                                JSValueConst
      func_obj,\n                                                JSValueConst this_val,\n
      \                                               int argc, JSValueConst *argv,